From a0fcfb123e76fe09f7b465a403df89e25b90bff0 Mon Sep 17 00:00:00 2001 From: Jan Koester Date: Tue, 22 Dec 2020 18:00:37 +0100 Subject: [PATCH] replace grub against own implemention --- CMakeLists.txt | 4 +- kernel/CMakeLists.txt | 3 +- kernel/src/CMakeLists.txt | 2 +- kernel/src/api/cgroup.cpp | 1 - kernel/src/api/cgroup.h | 1 - kernel/src/arch/arch.cpp | 7 +- thirdparty/grub-2.04/ABOUT-NLS | 1282 - thirdparty/grub-2.04/AUTHORS | 23 - thirdparty/grub-2.04/BUGS | 7 - thirdparty/grub-2.04/COPYING | 674 - thirdparty/grub-2.04/ChangeLog | 7820 --- thirdparty/grub-2.04/ChangeLog-2015 | 55487 ---------------- thirdparty/grub-2.04/INSTALL | 296 - thirdparty/grub-2.04/Makefile.am | 487 - thirdparty/grub-2.04/Makefile.in | 13373 ---- thirdparty/grub-2.04/Makefile.util.am | 1596 - thirdparty/grub-2.04/Makefile.util.def | 1367 - thirdparty/grub-2.04/Makefile.utilgcry.def | 31 - thirdparty/grub-2.04/NEWS | 721 - thirdparty/grub-2.04/README | 20 - thirdparty/grub-2.04/THANKS | 38 - thirdparty/grub-2.04/TODO | 9 - thirdparty/grub-2.04/acinclude.m4 | 477 - thirdparty/grub-2.04/aclocal.m4 | 1817 - thirdparty/grub-2.04/asm-tests/arm.S | 20 - thirdparty/grub-2.04/asm-tests/i386-pc.S | 18 - thirdparty/grub-2.04/asm-tests/i386.S | 4 - thirdparty/grub-2.04/asm-tests/mips.S | 11 - thirdparty/grub-2.04/asm-tests/powerpc.S | 8 - thirdparty/grub-2.04/asm-tests/sparc64.S | 9 - thirdparty/grub-2.04/autogen.sh | 103 - thirdparty/grub-2.04/build-aux/compile | 347 - thirdparty/grub-2.04/build-aux/config.guess | 1506 - thirdparty/grub-2.04/build-aux/config.rpath | 684 - thirdparty/grub-2.04/build-aux/config.sub | 1793 - thirdparty/grub-2.04/build-aux/depcomp | 791 - .../grub-2.04/build-aux/gitlog-to-changelog | 499 - thirdparty/grub-2.04/build-aux/install-sh | 518 - thirdparty/grub-2.04/build-aux/mdate-sh | 228 - thirdparty/grub-2.04/build-aux/missing | 215 - thirdparty/grub-2.04/build-aux/test-driver | 148 - thirdparty/grub-2.04/build-aux/texinfo.tex | 11672 ---- thirdparty/grub-2.04/conf/Makefile.common | 138 - thirdparty/grub-2.04/conf/Makefile.extra-dist | 139 - .../grub-2.04/conf/i386-cygwin-img-ld.sc | 53 - thirdparty/grub-2.04/config-util.h.in | 1578 - thirdparty/grub-2.04/config.h.in | 67 - thirdparty/grub-2.04/configure | 37058 ----------- thirdparty/grub-2.04/configure.ac | 2107 - thirdparty/grub-2.04/coreboot.cfg | 3 - thirdparty/grub-2.04/docs/Makefile.am | 9 - thirdparty/grub-2.04/docs/Makefile.in | 1750 - thirdparty/grub-2.04/docs/autoiso.cfg | 244 - thirdparty/grub-2.04/docs/fdl.texi | 452 - .../grub-2.04/docs/font_char_metrics.png | Bin 16443 -> 0 bytes .../grub-2.04/docs/font_char_metrics.txt | 1 - thirdparty/grub-2.04/docs/grub-dev.info | 2656 - thirdparty/grub-2.04/docs/grub-dev.texi | 2105 - thirdparty/grub-2.04/docs/grub.cfg | 76 - thirdparty/grub-2.04/docs/grub.info | 7651 --- thirdparty/grub-2.04/docs/grub.texi | 6765 -- .../grub-2.04/docs/man/grub-bios-setup.h2m | 6 - .../grub-2.04/docs/man/grub-editenv.h2m | 5 - thirdparty/grub-2.04/docs/man/grub-emu.h2m | 6 - thirdparty/grub-2.04/docs/man/grub-file.h2m | 2 - thirdparty/grub-2.04/docs/man/grub-fstest.h2m | 4 - .../grub-2.04/docs/man/grub-glue-efi.h2m | 4 - .../grub-2.04/docs/man/grub-install.h2m | 6 - .../grub-2.04/docs/man/grub-kbdcomp.h2m | 10 - .../grub-2.04/docs/man/grub-macbless.h2m | 4 - .../grub-2.04/docs/man/grub-macho2img.h2m | 4 - .../grub-2.04/docs/man/grub-menulst2cfg.h2m | 4 - .../grub-2.04/docs/man/grub-mkconfig.h2m | 4 - thirdparty/grub-2.04/docs/man/grub-mkfont.h2m | 4 - .../grub-2.04/docs/man/grub-mkimage.h2m | 6 - .../grub-2.04/docs/man/grub-mklayout.h2m | 10 - .../grub-2.04/docs/man/grub-mknetdir.h2m | 4 - .../docs/man/grub-mkpasswd-pbkdf2.h2m | 4 - .../grub-2.04/docs/man/grub-mkrelpath.h2m | 4 - .../grub-2.04/docs/man/grub-mkrescue.h2m | 4 - .../grub-2.04/docs/man/grub-mkstandalone.h2m | 4 - thirdparty/grub-2.04/docs/man/grub-mount.h2m | 2 - .../grub-2.04/docs/man/grub-ofpathname.h2m | 4 - thirdparty/grub-2.04/docs/man/grub-pe2elf.h2m | 4 - thirdparty/grub-2.04/docs/man/grub-probe.h2m | 4 - thirdparty/grub-2.04/docs/man/grub-reboot.h2m | 5 - .../grub-2.04/docs/man/grub-render-label.h2m | 3 - .../grub-2.04/docs/man/grub-script-check.h2m | 4 - .../grub-2.04/docs/man/grub-set-default.h2m | 5 - .../grub-2.04/docs/man/grub-sparc64-setup.h2m | 6 - .../grub-2.04/docs/man/grub-syslinux2cfg.h2m | 4 - thirdparty/grub-2.04/docs/mdate-sh | 205 - thirdparty/grub-2.04/docs/osdetect.cfg | 331 - thirdparty/grub-2.04/docs/stamp-1 | 4 - thirdparty/grub-2.04/docs/stamp-vti | 4 - thirdparty/grub-2.04/docs/texinfo.tex | 8959 --- thirdparty/grub-2.04/docs/version-dev.texi | 4 - thirdparty/grub-2.04/docs/version.texi | 4 - thirdparty/grub-2.04/geninit.sh | 69 - thirdparty/grub-2.04/gentpl.py | 908 - thirdparty/grub-2.04/grub-core/Makefile.am | 500 - .../grub-2.04/grub-core/Makefile.core.am | 23386 ------- .../grub-2.04/grub-core/Makefile.core.def | 2505 - .../grub-2.04/grub-core/Makefile.gcry.def | 157 - thirdparty/grub-2.04/grub-core/Makefile.in | 46767 ------------- .../grub-core/boot/decompressor/minilib.c | 93 - .../grub-core/boot/decompressor/none.c | 42 - .../grub-core/boot/decompressor/xz.c | 60 - .../grub-2.04/grub-core/boot/i386/pc/boot.S | 542 - .../grub-2.04/grub-core/boot/i386/pc/cdboot.S | 173 - .../grub-core/boot/i386/pc/diskboot.S | 378 - .../grub-core/boot/i386/pc/lnxboot.S | 295 - .../grub-core/boot/i386/pc/lzma_decode.S | 614 - .../grub-core/boot/i386/pc/pxeboot.S | 42 - .../grub-core/boot/i386/pc/startup_raw.S | 369 - .../grub-2.04/grub-core/boot/i386/qemu/boot.S | 74 - .../grub-core/boot/mips/loongson/fuloong2f.S | 2 - .../grub-core/boot/mips/loongson/fwstart.S | 756 - .../grub-core/boot/mips/startup_raw.S | 300 - .../grub-core/boot/powerpc/bootinfo.txt.in | 73 - .../grub-core/boot/powerpc/grub.chrp.in | 172 - .../grub-core/boot/sparc64/ieee1275/boot.S | 262 - .../boot/sparc64/ieee1275/diskboot.S | 145 - thirdparty/grub-2.04/grub-core/bus/bonito.c | 176 - thirdparty/grub-2.04/grub-core/bus/cs5536.c | 381 - thirdparty/grub-2.04/grub-core/bus/emu/pci.c | 78 - thirdparty/grub-2.04/grub-core/bus/fdt.c | 256 - .../grub-core/bus/i386/ieee1275/pci.c | 42 - thirdparty/grub-2.04/grub-core/bus/pci.c | 173 - .../grub-2.04/grub-core/bus/spi/rk3288_spi.c | 103 - .../grub-2.04/grub-core/bus/usb/ehci-fdt.c | 45 - .../grub-2.04/grub-core/bus/usb/ehci-pci.c | 208 - thirdparty/grub-2.04/grub-core/bus/usb/ehci.c | 1839 - thirdparty/grub-2.04/grub-core/bus/usb/ohci.c | 1468 - .../grub-core/bus/usb/serial/common.c | 139 - .../grub-2.04/grub-core/bus/usb/serial/ftdi.c | 218 - .../grub-core/bus/usb/serial/pl2303.c | 231 - .../grub-core/bus/usb/serial/usbdebug_late.c | 93 - thirdparty/grub-2.04/grub-core/bus/usb/uhci.c | 871 - thirdparty/grub-2.04/grub-core/bus/usb/usb.c | 337 - .../grub-2.04/grub-core/bus/usb/usbhub.c | 756 - .../grub-2.04/grub-core/bus/usb/usbtrans.c | 462 - .../grub-2.04/grub-core/commands/acpi.c | 790 - .../grub-2.04/grub-core/commands/acpihalt.c | 454 - .../grub-2.04/grub-core/commands/arc/lsdev.c | 57 - .../grub-2.04/grub-core/commands/blocklist.c | 160 - .../grub-2.04/grub-core/commands/boot.c | 195 - .../grub-2.04/grub-core/commands/boottime.c | 65 - .../grub-2.04/grub-core/commands/cacheinfo.c | 62 - thirdparty/grub-2.04/grub-core/commands/cat.c | 170 - thirdparty/grub-2.04/grub-core/commands/cmp.c | 119 - .../grub-2.04/grub-core/commands/configfile.c | 98 - .../grub-2.04/grub-core/commands/date.c | 148 - .../grub-2.04/grub-core/commands/echo.c | 141 - .../grub-core/commands/efi/efifwsetup.c | 90 - .../grub-core/commands/efi/fixvideo.c | 114 - .../grub-core/commands/efi/loadbios.c | 222 - .../grub-2.04/grub-core/commands/efi/lsefi.c | 155 - .../grub-core/commands/efi/lsefimmap.c | 160 - .../grub-core/commands/efi/lsefisystab.c | 121 - .../grub-2.04/grub-core/commands/efi/lssal.c | 169 - .../grub-core/commands/efi/shim_lock.c | 142 - .../grub-2.04/grub-core/commands/efi/tpm.c | 333 - .../grub-2.04/grub-core/commands/eval.c | 71 - .../grub-2.04/grub-core/commands/extcmd.c | 118 - .../grub-2.04/grub-core/commands/file.c | 692 - .../grub-2.04/grub-core/commands/file32.c | 5 - .../grub-2.04/grub-core/commands/file64.c | 5 - .../grub-2.04/grub-core/commands/fileXX.c | 74 - .../grub-2.04/grub-core/commands/gptsync.c | 266 - .../grub-2.04/grub-core/commands/halt.c | 47 - .../grub-2.04/grub-core/commands/hashsum.c | 325 - .../grub-2.04/grub-core/commands/hdparm.c | 447 - .../grub-2.04/grub-core/commands/help.c | 153 - .../grub-2.04/grub-core/commands/hexdump.c | 133 - .../grub-core/commands/i386/cmosdump.c | 64 - .../grub-core/commands/i386/cmostest.c | 124 - .../commands/i386/coreboot/cb_timestamps.c | 126 - .../grub-core/commands/i386/coreboot/cbls.c | 143 - .../grub-2.04/grub-core/commands/i386/cpuid.c | 125 - .../grub-core/commands/i386/pc/drivemap.c | 428 - .../commands/i386/pc/drivemap_int13h.S | 124 - .../grub-core/commands/i386/pc/halt.c | 126 - .../grub-core/commands/i386/pc/lsapm.c | 115 - .../grub-core/commands/i386/pc/play.c | 197 - .../grub-core/commands/i386/pc/sendkey.c | 387 - .../grub-2.04/grub-core/commands/i386/rdmsr.c | 102 - .../grub-2.04/grub-core/commands/i386/wrmsr.c | 93 - .../grub-core/commands/ieee1275/suspend.c | 51 - .../grub-2.04/grub-core/commands/iorw.c | 155 - .../grub-2.04/grub-core/commands/keylayouts.c | 307 - .../grub-2.04/grub-core/commands/keystatus.c | 113 - .../grub-2.04/grub-core/commands/legacycfg.c | 893 - .../grub-2.04/grub-core/commands/loadenv.c | 470 - thirdparty/grub-2.04/grub-core/commands/ls.c | 302 - .../grub-2.04/grub-core/commands/lsacpi.c | 314 - .../grub-2.04/grub-core/commands/lsmmap.c | 85 - .../grub-2.04/grub-core/commands/lspci.c | 238 - .../grub-2.04/grub-core/commands/macbless.c | 235 - .../grub-2.04/grub-core/commands/memrw.c | 157 - .../grub-2.04/grub-core/commands/menuentry.c | 337 - .../grub-2.04/grub-core/commands/minicmd.c | 224 - .../grub-core/commands/mips/loongson/lsspd.c | 103 - .../grub-2.04/grub-core/commands/nativedisk.c | 332 - .../grub-2.04/grub-core/commands/parttool.c | 351 - .../grub-2.04/grub-core/commands/password.c | 93 - .../grub-core/commands/password_pbkdf2.c | 209 - .../grub-2.04/grub-core/commands/pcidump.c | 175 - thirdparty/grub-2.04/grub-core/commands/pgp.c | 1018 - .../grub-2.04/grub-core/commands/probe.c | 172 - .../grub-2.04/grub-core/commands/read.c | 92 - .../grub-2.04/grub-core/commands/reboot.c | 46 - .../grub-2.04/grub-core/commands/regexp.c | 168 - .../grub-2.04/grub-core/commands/search.c | 337 - .../grub-core/commands/search_file.c | 5 - .../grub-core/commands/search_label.c | 5 - .../grub-core/commands/search_uuid.c | 5 - .../grub-core/commands/search_wrap.c | 220 - .../grub-2.04/grub-core/commands/setpci.c | 341 - .../grub-2.04/grub-core/commands/sleep.c | 117 - .../grub-core/commands/syslinuxcfg.c | 217 - .../grub-2.04/grub-core/commands/terminal.c | 285 - .../grub-2.04/grub-core/commands/test.c | 455 - .../grub-2.04/grub-core/commands/testload.c | 170 - .../grub-2.04/grub-core/commands/testspeed.c | 115 - .../grub-2.04/grub-core/commands/time.c | 68 - thirdparty/grub-2.04/grub-core/commands/tpm.c | 102 - thirdparty/grub-2.04/grub-core/commands/tr.c | 126 - .../grub-2.04/grub-core/commands/true.c | 61 - .../grub-2.04/grub-core/commands/usbtest.c | 227 - .../grub-2.04/grub-core/commands/verifiers.c | 228 - .../grub-2.04/grub-core/commands/videoinfo.c | 262 - .../grub-2.04/grub-core/commands/videotest.c | 241 - .../grub-2.04/grub-core/commands/wildcard.c | 626 - .../grub-2.04/grub-core/commands/xen/lsxen.c | 90 - .../grub-2.04/grub-core/commands/xnu_uuid.c | 119 - .../grub-2.04/grub-core/disk/AFSplitter.c | 92 - thirdparty/grub-2.04/grub-core/disk/ahci.c | 1163 - .../grub-2.04/grub-core/disk/arc/arcdisk.c | 325 - thirdparty/grub-2.04/grub-core/disk/ata.c | 683 - .../grub-2.04/grub-core/disk/cryptodisk.c | 1154 - .../grub-2.04/grub-core/disk/diskfilter.c | 1350 - .../grub-2.04/grub-core/disk/dmraid_nvidia.c | 196 - .../grub-2.04/grub-core/disk/efi/efidisk.c | 902 - thirdparty/grub-2.04/grub-core/disk/geli.c | 595 - thirdparty/grub-2.04/grub-core/disk/host.c | 103 - .../grub-core/disk/i386/pc/biosdisk.c | 688 - .../grub-2.04/grub-core/disk/ieee1275/nand.c | 242 - .../grub-core/disk/ieee1275/obdisk.c | 1076 - .../grub-core/disk/ieee1275/ofdisk.c | 741 - thirdparty/grub-2.04/grub-core/disk/ldm.c | 1052 - .../grub-2.04/grub-core/disk/loopback.c | 248 - thirdparty/grub-2.04/grub-core/disk/luks.c | 485 - thirdparty/grub-2.04/grub-core/disk/lvm.c | 795 - .../grub-2.04/grub-core/disk/mdraid1x_linux.c | 233 - .../grub-2.04/grub-core/disk/mdraid_linux.c | 298 - .../grub-core/disk/mdraid_linux_be.c | 2 - thirdparty/grub-2.04/grub-core/disk/memdisk.c | 116 - thirdparty/grub-2.04/grub-core/disk/pata.c | 550 - .../grub-2.04/grub-core/disk/raid5_recover.c | 76 - .../grub-2.04/grub-core/disk/raid6_recover.c | 218 - thirdparty/grub-2.04/grub-core/disk/scsi.c | 766 - .../grub-core/disk/uboot/ubootdisk.c | 307 - thirdparty/grub-2.04/grub-core/disk/usbms.c | 660 - .../grub-2.04/grub-core/disk/xen/xendisk.c | 485 - .../grub-core/efiemu/i386/coredetect.c | 27 - .../grub-core/efiemu/i386/loadcore32.c | 121 - .../grub-core/efiemu/i386/loadcore64.c | 133 - .../grub-core/efiemu/i386/nocfgtables.c | 30 - .../grub-core/efiemu/i386/pc/cfgtables.c | 76 - .../grub-2.04/grub-core/efiemu/loadcore.c | 387 - .../grub-2.04/grub-core/efiemu/loadcore32.c | 22 - .../grub-2.04/grub-core/efiemu/loadcore64.c | 22 - .../grub-core/efiemu/loadcore_common.c | 196 - thirdparty/grub-2.04/grub-core/efiemu/main.c | 328 - thirdparty/grub-2.04/grub-core/efiemu/mm.c | 677 - .../grub-2.04/grub-core/efiemu/pnvram.c | 268 - .../grub-2.04/grub-core/efiemu/prepare.c | 169 - .../grub-2.04/grub-core/efiemu/prepare32.c | 22 - .../grub-2.04/grub-core/efiemu/prepare64.c | 22 - .../grub-core/efiemu/runtime/config.h | 36 - .../grub-core/efiemu/runtime/efiemu.S | 159 - .../grub-core/efiemu/runtime/efiemu.c | 636 - .../grub-2.04/grub-core/efiemu/symbols.c | 272 - thirdparty/grub-2.04/grub-core/font/font.c | 1601 - .../grub-2.04/grub-core/font/font_cmd.c | 92 - thirdparty/grub-2.04/grub-core/fs/affs.c | 711 - thirdparty/grub-2.04/grub-core/fs/afs.c | 3 - thirdparty/grub-2.04/grub-core/fs/archelp.c | 301 - thirdparty/grub-2.04/grub-core/fs/bfs.c | 1117 - thirdparty/grub-2.04/grub-core/fs/btrfs.c | 2196 - thirdparty/grub-2.04/grub-core/fs/cbfs.c | 402 - thirdparty/grub-2.04/grub-core/fs/cpio.c | 61 - thirdparty/grub-2.04/grub-core/fs/cpio_be.c | 61 - .../grub-2.04/grub-core/fs/cpio_common.c | 253 - thirdparty/grub-2.04/grub-core/fs/exfat.c | 2 - thirdparty/grub-2.04/grub-core/fs/ext2.c | 1098 - thirdparty/grub-2.04/grub-core/fs/f2fs.c | 1328 - thirdparty/grub-2.04/grub-core/fs/fat.c | 1268 - thirdparty/grub-2.04/grub-core/fs/fshelp.c | 429 - thirdparty/grub-2.04/grub-core/fs/hfs.c | 1443 - thirdparty/grub-2.04/grub-core/fs/hfsplus.c | 1127 - .../grub-2.04/grub-core/fs/hfspluscomp.c | 317 - thirdparty/grub-2.04/grub-core/fs/iso9660.c | 1125 - thirdparty/grub-2.04/grub-core/fs/jfs.c | 962 - thirdparty/grub-2.04/grub-core/fs/minix.c | 742 - thirdparty/grub-2.04/grub-core/fs/minix2.c | 2 - thirdparty/grub-2.04/grub-core/fs/minix2_be.c | 3 - thirdparty/grub-2.04/grub-core/fs/minix3.c | 2 - thirdparty/grub-2.04/grub-core/fs/minix3_be.c | 3 - thirdparty/grub-2.04/grub-core/fs/minix_be.c | 2 - thirdparty/grub-2.04/grub-core/fs/newc.c | 73 - thirdparty/grub-2.04/grub-core/fs/nilfs2.c | 1223 - thirdparty/grub-2.04/grub-core/fs/ntfs.c | 1237 - thirdparty/grub-2.04/grub-core/fs/ntfscomp.c | 443 - thirdparty/grub-2.04/grub-core/fs/odc.c | 61 - thirdparty/grub-2.04/grub-core/fs/proc.c | 203 - thirdparty/grub-2.04/grub-core/fs/reiserfs.c | 1427 - thirdparty/grub-2.04/grub-core/fs/romfs.c | 484 - thirdparty/grub-2.04/grub-core/fs/sfs.c | 765 - thirdparty/grub-2.04/grub-core/fs/squash4.c | 1019 - thirdparty/grub-2.04/grub-core/fs/tar.c | 345 - thirdparty/grub-2.04/grub-core/fs/udf.c | 1370 - thirdparty/grub-2.04/grub-core/fs/ufs.c | 918 - thirdparty/grub-2.04/grub-core/fs/ufs2.c | 3 - thirdparty/grub-2.04/grub-core/fs/ufs_be.c | 2 - thirdparty/grub-2.04/grub-core/fs/xfs.c | 1162 - thirdparty/grub-2.04/grub-core/fs/zfs/zfs.c | 4378 -- .../grub-2.04/grub-core/fs/zfs/zfs_fletcher.c | 84 - .../grub-2.04/grub-core/fs/zfs/zfs_lz4.c | 285 - .../grub-2.04/grub-core/fs/zfs/zfs_lzjb.c | 93 - .../grub-2.04/grub-core/fs/zfs/zfs_sha256.c | 143 - .../grub-2.04/grub-core/fs/zfs/zfscrypt.c | 486 - .../grub-2.04/grub-core/fs/zfs/zfsinfo.c | 441 - thirdparty/grub-2.04/grub-core/gdb/cstub.c | 366 - thirdparty/grub-2.04/grub-core/gdb/gdb.c | 100 - thirdparty/grub-2.04/grub-core/gdb/i386/idt.c | 78 - .../grub-2.04/grub-core/gdb/i386/machdep.S | 245 - .../grub-2.04/grub-core/gdb/i386/signal.c | 53 - thirdparty/grub-2.04/grub-core/gdb_grub.in | 85 - thirdparty/grub-2.04/grub-core/genemuinit.sh | 72 - .../grub-2.04/grub-core/genemuinitheader.sh | 52 - thirdparty/grub-2.04/grub-core/genmod.sh.in | 103 - thirdparty/grub-2.04/grub-core/genmoddep.awk | 102 - .../grub-2.04/grub-core/gensyminfo.sh.in | 37 - thirdparty/grub-2.04/grub-core/gensymlist.sh | 73 - .../grub-2.04/grub-core/gentrigtables.c | 57 - .../grub-2.04/grub-core/gettext/gettext.c | 542 - thirdparty/grub-2.04/grub-core/gfxmenu/font.c | 116 - .../grub-2.04/grub-core/gfxmenu/gfxmenu.c | 150 - .../grub-2.04/grub-core/gfxmenu/gui_box.c | 428 - .../grub-2.04/grub-core/gfxmenu/gui_canvas.c | 278 - .../grub-core/gfxmenu/gui_circular_progress.c | 331 - .../grub-2.04/grub-core/gfxmenu/gui_image.c | 267 - .../grub-2.04/grub-core/gfxmenu/gui_label.c | 273 - .../grub-2.04/grub-core/gfxmenu/gui_list.c | 953 - .../grub-core/gfxmenu/gui_progress_bar.c | 454 - .../grub-core/gfxmenu/gui_string_util.c | 206 - .../grub-2.04/grub-core/gfxmenu/gui_util.c | 101 - .../grub-core/gfxmenu/icon_manager.c | 257 - .../grub-core/gfxmenu/theme_loader.c | 828 - thirdparty/grub-2.04/grub-core/gfxmenu/view.c | 647 - .../grub-2.04/grub-core/gfxmenu/widget-box.c | 360 - thirdparty/grub-2.04/grub-core/gmodule.pl.in | 30 - thirdparty/grub-2.04/grub-core/hello/hello.c | 51 - .../grub-2.04/grub-core/hook/datehook.c | 110 - thirdparty/grub-2.04/grub-core/io/bufio.c | 214 - thirdparty/grub-2.04/grub-core/io/gzio.c | 1408 - thirdparty/grub-2.04/grub-core/io/lzopio.c | 550 - thirdparty/grub-2.04/grub-core/io/offset.c | 112 - thirdparty/grub-2.04/grub-core/io/xzio.c | 346 - thirdparty/grub-2.04/grub-core/kern/acpi.c | 119 - .../grub-2.04/grub-core/kern/arm/cache.S | 123 - .../grub-2.04/grub-core/kern/arm/cache.c | 308 - .../grub-core/kern/arm/cache_armv6.S | 72 - .../grub-core/kern/arm/cache_armv7.S | 138 - .../grub-core/kern/arm/compiler-rt.S | 86 - .../grub-core/kern/arm/coreboot/cbtable.c | 40 - .../grub-core/kern/arm/coreboot/coreboot.S | 44 - .../grub-core/kern/arm/coreboot/dma.c | 59 - .../grub-core/kern/arm/coreboot/init.c | 151 - .../grub-core/kern/arm/coreboot/timer.c | 101 - thirdparty/grub-2.04/grub-core/kern/arm/dl.c | 280 - .../grub-2.04/grub-core/kern/arm/dl_helper.c | 245 - .../grub-2.04/grub-core/kern/arm/efi/init.c | 74 - .../grub-core/kern/arm/efi/startup.S | 36 - .../grub-2.04/grub-core/kern/arm/startup.S | 177 - .../grub-2.04/grub-core/kern/arm/uboot/init.c | 70 - .../grub-core/kern/arm/uboot/uboot.S | 73 - .../grub-2.04/grub-core/kern/arm64/cache.c | 63 - .../grub-core/kern/arm64/cache_flush.S | 55 - .../grub-2.04/grub-core/kern/arm64/dl.c | 193 - .../grub-core/kern/arm64/dl_helper.c | 134 - .../grub-2.04/grub-core/kern/arm64/efi/init.c | 60 - .../grub-core/kern/arm64/efi/startup.S | 39 - thirdparty/grub-2.04/grub-core/kern/command.c | 87 - .../grub-2.04/grub-core/kern/compiler-rt.c | 464 - .../grub-core/kern/coreboot/cbtable.c | 72 - .../grub-2.04/grub-core/kern/coreboot/mmap.c | 100 - thirdparty/grub-2.04/grub-core/kern/corecmd.c | 189 - thirdparty/grub-2.04/grub-core/kern/device.c | 191 - thirdparty/grub-2.04/grub-core/kern/disk.c | 544 - .../grub-2.04/grub-core/kern/disk_common.c | 65 - thirdparty/grub-2.04/grub-core/kern/dl.c | 816 - .../grub-2.04/grub-core/kern/efi/acpi.c | 59 - thirdparty/grub-2.04/grub-core/kern/efi/efi.c | 949 - thirdparty/grub-2.04/grub-core/kern/efi/fdt.c | 43 - .../grub-2.04/grub-core/kern/efi/init.c | 84 - thirdparty/grub-2.04/grub-core/kern/efi/mm.c | 666 - thirdparty/grub-2.04/grub-core/kern/elf.c | 212 - thirdparty/grub-2.04/grub-core/kern/elfXX.c | 207 - .../grub-core/kern/emu/argp_common.c | 41 - .../grub-2.04/grub-core/kern/emu/cache.c | 35 - .../grub-2.04/grub-core/kern/emu/cache_s.S | 15 - .../grub-2.04/grub-core/kern/emu/full.c | 69 - .../grub-2.04/grub-core/kern/emu/hostdisk.c | 686 - .../grub-2.04/grub-core/kern/emu/hostfs.c | 200 - .../grub-2.04/grub-core/kern/emu/lite.c | 47 - .../grub-2.04/grub-core/kern/emu/main.c | 286 - .../grub-2.04/grub-core/kern/emu/misc.c | 204 - thirdparty/grub-2.04/grub-core/kern/emu/mm.c | 64 - .../grub-2.04/grub-core/kern/emu/time.c | 46 - thirdparty/grub-2.04/grub-core/kern/env.c | 238 - thirdparty/grub-2.04/grub-core/kern/err.c | 122 - thirdparty/grub-2.04/grub-core/kern/file.c | 218 - thirdparty/grub-2.04/grub-core/kern/fs.c | 251 - .../grub-core/kern/generic/millisleep.c | 39 - .../grub-core/kern/generic/rtc_get_time_ms.c | 38 - .../grub-core/kern/i386/coreboot/cbtable.c | 44 - .../grub-core/kern/i386/coreboot/init.c | 143 - .../grub-core/kern/i386/coreboot/startup.S | 63 - thirdparty/grub-2.04/grub-core/kern/i386/dl.c | 81 - .../grub-2.04/grub-core/kern/i386/efi/init.c | 44 - .../grub-core/kern/i386/efi/startup.S | 36 - .../grub-2.04/grub-core/kern/i386/efi/tsc.c | 40 - .../grub-core/kern/i386/ieee1275/startup.S | 41 - .../grub-2.04/grub-core/kern/i386/int.S | 134 - .../grub-core/kern/i386/multiboot_mmap.c | 73 - .../grub-2.04/grub-core/kern/i386/pc/acpi.c | 83 - .../grub-2.04/grub-core/kern/i386/pc/init.c | 271 - .../grub-2.04/grub-core/kern/i386/pc/mmap.c | 193 - .../grub-core/kern/i386/pc/startup.S | 217 - .../grub-2.04/grub-core/kern/i386/qemu/init.c | 276 - .../grub-2.04/grub-core/kern/i386/qemu/mmap.c | 107 - .../grub-core/kern/i386/qemu/startup.S | 75 - .../grub-2.04/grub-core/kern/i386/realmode.S | 281 - .../grub-2.04/grub-core/kern/i386/tsc.c | 78 - .../grub-2.04/grub-core/kern/i386/tsc_pit.c | 84 - .../grub-core/kern/i386/tsc_pmtimer.c | 88 - .../grub-core/kern/i386/xen/hypercall.S | 43 - .../grub-2.04/grub-core/kern/i386/xen/pvh.c | 369 - .../grub-core/kern/i386/xen/startup.S | 38 - .../grub-core/kern/i386/xen/startup_pvh.S | 81 - .../grub-2.04/grub-core/kern/i386/xen/tsc.c | 40 - .../grub-2.04/grub-core/kern/ia64/cache.c | 35 - thirdparty/grub-2.04/grub-core/kern/ia64/dl.c | 145 - .../grub-2.04/grub-core/kern/ia64/dl_helper.c | 241 - .../grub-2.04/grub-core/kern/ia64/efi/init.c | 75 - .../grub-core/kern/ia64/efi/startup.S | 44 - .../grub-2.04/grub-core/kern/ieee1275/cmain.c | 220 - .../grub-core/kern/ieee1275/ieee1275.c | 809 - .../grub-2.04/grub-core/kern/ieee1275/init.c | 322 - .../grub-2.04/grub-core/kern/ieee1275/mmap.c | 83 - .../grub-core/kern/ieee1275/openfw.c | 593 - thirdparty/grub-2.04/grub-core/kern/list.c | 55 - thirdparty/grub-2.04/grub-core/kern/main.c | 312 - .../grub-2.04/grub-core/kern/mips/arc/init.c | 463 - .../grub-2.04/grub-core/kern/mips/cache.S | 68 - .../grub-core/kern/mips/cache_flush.S | 54 - thirdparty/grub-2.04/grub-core/kern/mips/dl.c | 274 - .../grub-2.04/grub-core/kern/mips/init.c | 38 - .../grub-core/kern/mips/loongson/init.c | 320 - .../grub-core/kern/mips/qemu_mips/init.c | 105 - .../grub-2.04/grub-core/kern/mips/startup.S | 126 - thirdparty/grub-2.04/grub-core/kern/misc.c | 1153 - thirdparty/grub-2.04/grub-core/kern/mm.c | 624 - thirdparty/grub-2.04/grub-core/kern/parser.c | 275 - .../grub-2.04/grub-core/kern/partition.c | 276 - .../grub-2.04/grub-core/kern/powerpc/cache.S | 26 - .../grub-core/kern/powerpc/cache_flush.S | 43 - .../grub-core/kern/powerpc/compiler-rt.S | 130 - .../grub-2.04/grub-core/kern/powerpc/dl.c | 169 - .../grub-core/kern/powerpc/ieee1275/startup.S | 67 - .../grub-2.04/grub-core/kern/rescue_parser.c | 84 - .../grub-2.04/grub-core/kern/rescue_reader.c | 98 - .../grub-2.04/grub-core/kern/riscv/cache.c | 63 - .../grub-core/kern/riscv/cache_flush.S | 44 - .../grub-2.04/grub-core/kern/riscv/dl.c | 340 - .../grub-2.04/grub-core/kern/riscv/efi/init.c | 76 - .../grub-core/kern/riscv/efi/startup.S | 48 - .../grub-2.04/grub-core/kern/sparc64/cache.S | 41 - .../grub-2.04/grub-core/kern/sparc64/dl.c | 186 - .../grub-core/kern/sparc64/ieee1275/crt0.S | 104 - .../kern/sparc64/ieee1275/ieee1275.c | 147 - thirdparty/grub-2.04/grub-core/kern/term.c | 130 - thirdparty/grub-2.04/grub-core/kern/time.c | 37 - .../grub-2.04/grub-core/kern/uboot/hw.c | 112 - .../grub-2.04/grub-core/kern/uboot/init.c | 172 - .../grub-2.04/grub-core/kern/uboot/uboot.c | 307 - .../grub-2.04/grub-core/kern/vga_init.c | 128 - .../grub-2.04/grub-core/kern/x86_64/dl.c | 116 - .../grub-core/kern/x86_64/efi/callwrap.S | 129 - .../grub-core/kern/x86_64/efi/startup.S | 35 - .../grub-core/kern/x86_64/xen/hypercall.S | 53 - .../grub-core/kern/x86_64/xen/startup.S | 39 - .../grub-2.04/grub-core/kern/xen/init.c | 601 - thirdparty/grub-2.04/grub-core/lib/LzFind.c | 777 - thirdparty/grub-2.04/grub-core/lib/LzmaDec.c | 1037 - thirdparty/grub-2.04/grub-core/lib/LzmaEnc.c | 2244 - thirdparty/grub-2.04/grub-core/lib/adler32.c | 102 - .../grub-2.04/grub-core/lib/arc/datetime.c | 48 - thirdparty/grub-2.04/grub-core/lib/arg.c | 463 - .../grub-2.04/grub-core/lib/arm/setjmp.S | 53 - .../grub-2.04/grub-core/lib/arm64/setjmp.S | 56 - .../grub-2.04/grub-core/lib/backtrace.c | 70 - thirdparty/grub-2.04/grub-core/lib/cmdline.c | 109 - .../grub-2.04/grub-core/lib/cmos_datetime.c | 194 - thirdparty/grub-2.04/grub-core/lib/crc.c | 76 - thirdparty/grub-2.04/grub-core/lib/crc64.c | 114 - thirdparty/grub-2.04/grub-core/lib/crypto.c | 493 - thirdparty/grub-2.04/grub-core/lib/disk.c | 161 - thirdparty/grub-2.04/grub-core/lib/division.c | 74 - .../grub-2.04/grub-core/lib/dummy/datetime.c | 40 - .../grub-2.04/grub-core/lib/dummy/halt.c | 32 - .../grub-2.04/grub-core/lib/dummy/reboot.c | 32 - .../grub-2.04/grub-core/lib/efi/datetime.c | 82 - thirdparty/grub-2.04/grub-core/lib/efi/halt.c | 40 - .../grub-2.04/grub-core/lib/efi/relocator.c | 119 - thirdparty/grub-2.04/grub-core/lib/emu/halt.c | 25 - thirdparty/grub-2.04/grub-core/lib/envblk.c | 297 - .../grub-2.04/grub-core/lib/fake_module.c | 4 - thirdparty/grub-2.04/grub-core/lib/fdt.c | 531 - thirdparty/grub-2.04/grub-core/lib/getline.c | 92 - .../lib/gnulib-patches/fix-null-deref.patch | 13 - .../lib/gnulib-patches/fix-width.patch | 217 - .../lib/gnulib-patches/no-abort.patch | 26 - .../grub-core/lib/gnulib/Makefile.am | 2214 - .../grub-core/lib/gnulib/Makefile.in | 3069 - .../grub-core/lib/gnulib/_Noreturn.h | 14 - .../grub-2.04/grub-core/lib/gnulib/alloca.c | 478 - .../grub-core/lib/gnulib/alloca.in.h | 65 - .../grub-core/lib/gnulib/arg-nonnull.h | 26 - .../grub-2.04/grub-core/lib/gnulib/argp-ba.c | 34 - .../grub-core/lib/gnulib/argp-eexst.c | 30 - .../grub-core/lib/gnulib/argp-fmtstream.c | 488 - .../grub-core/lib/gnulib/argp-fmtstream.h | 310 - .../grub-core/lib/gnulib/argp-fs-xinl.c | 46 - .../grub-core/lib/gnulib/argp-help.c | 1911 - .../grub-core/lib/gnulib/argp-namefrob.h | 157 - .../grub-core/lib/gnulib/argp-parse.c | 957 - .../grub-2.04/grub-core/lib/gnulib/argp-pin.c | 33 - .../grub-2.04/grub-core/lib/gnulib/argp-pv.c | 33 - .../grub-2.04/grub-core/lib/gnulib/argp-pvh.c | 30 - .../grub-core/lib/gnulib/argp-xinl.c | 46 - .../grub-2.04/grub-core/lib/gnulib/argp.h | 631 - .../grub-core/lib/gnulib/asnprintf.c | 34 - .../grub-2.04/grub-core/lib/gnulib/assure.h | 37 - .../grub-core/lib/gnulib/basename-lgpl.c | 75 - .../grub-2.04/grub-core/lib/gnulib/btowc.c | 39 - .../grub-2.04/grub-core/lib/gnulib/c++defs.h | 316 - .../grub-2.04/grub-core/lib/gnulib/cdefs.h | 514 - .../grub-core/lib/gnulib/chdir-long.c | 264 - .../grub-core/lib/gnulib/chdir-long.h | 30 - .../grub-2.04/grub-core/lib/gnulib/cloexec.c | 83 - .../grub-2.04/grub-core/lib/gnulib/cloexec.h | 38 - .../grub-2.04/grub-core/lib/gnulib/close.c | 71 - .../grub-core/lib/gnulib/dirent.in.h | 267 - .../grub-2.04/grub-core/lib/gnulib/dirfd.c | 98 - .../grub-core/lib/gnulib/dirname-lgpl.c | 86 - .../grub-2.04/grub-core/lib/gnulib/dirname.h | 54 - .../grub-2.04/grub-core/lib/gnulib/dosname.h | 52 - .../grub-core/lib/gnulib/dup-safer-flag.c | 38 - .../grub-core/lib/gnulib/dup-safer.c | 34 - .../grub-2.04/grub-core/lib/gnulib/dup2.c | 235 - .../grub-2.04/grub-core/lib/gnulib/errno.in.h | 279 - .../grub-2.04/grub-core/lib/gnulib/error.c | 411 - .../grub-2.04/grub-core/lib/gnulib/error.h | 75 - .../grub-2.04/grub-core/lib/gnulib/exitfail.c | 24 - .../grub-2.04/grub-core/lib/gnulib/exitfail.h | 18 - .../grub-2.04/grub-core/lib/gnulib/fchdir.c | 208 - .../grub-2.04/grub-core/lib/gnulib/fcntl.c | 626 - .../grub-2.04/grub-core/lib/gnulib/fcntl.in.h | 366 - .../grub-2.04/grub-core/lib/gnulib/fd-hook.c | 116 - .../grub-2.04/grub-core/lib/gnulib/fd-hook.h | 119 - .../grub-core/lib/gnulib/fd-safer-flag.c | 52 - .../grub-2.04/grub-core/lib/gnulib/fd-safer.c | 49 - .../grub-2.04/grub-core/lib/gnulib/filename.h | 54 - .../grub-core/lib/gnulib/filenamecat-lgpl.c | 87 - .../grub-core/lib/gnulib/filenamecat.h | 27 - .../grub-core/lib/gnulib/flexmember.h | 45 - .../grub-2.04/grub-core/lib/gnulib/float+.h | 147 - .../grub-2.04/grub-core/lib/gnulib/float.c | 33 - .../grub-2.04/grub-core/lib/gnulib/float.in.h | 188 - .../grub-2.04/grub-core/lib/gnulib/fnmatch.c | 356 - .../grub-core/lib/gnulib/fnmatch.in.h | 110 - .../grub-core/lib/gnulib/fnmatch_loop.c | 1217 - .../grub-2.04/grub-core/lib/gnulib/fstat.c | 90 - .../grub-core/lib/gnulib/getcwd-lgpl.c | 126 - .../grub-2.04/grub-core/lib/gnulib/getdelim.c | 147 - .../grub-core/lib/gnulib/getdtablesize.c | 124 - .../grub-2.04/grub-core/lib/gnulib/getline.c | 27 - .../grub-core/lib/gnulib/getopt-cdefs.in.h | 67 - .../grub-core/lib/gnulib/getopt-core.h | 96 - .../grub-core/lib/gnulib/getopt-ext.h | 77 - .../grub-core/lib/gnulib/getopt-pfx-core.h | 59 - .../grub-core/lib/gnulib/getopt-pfx-ext.h | 71 - .../grub-2.04/grub-core/lib/gnulib/getopt.c | 811 - .../grub-core/lib/gnulib/getopt.in.h | 61 - .../grub-2.04/grub-core/lib/gnulib/getopt1.c | 159 - .../grub-core/lib/gnulib/getopt_int.h | 118 - .../grub-core/lib/gnulib/getprogname.c | 255 - .../grub-core/lib/gnulib/getprogname.h | 40 - .../grub-2.04/grub-core/lib/gnulib/gettext.h | 294 - .../grub-core/lib/gnulib/glthread/lock.c | 1221 - .../grub-core/lib/gnulib/glthread/lock.h | 988 - .../grub-core/lib/gnulib/glthread/threadlib.c | 73 - .../grub-core/lib/gnulib/hard-locale.c | 72 - .../grub-core/lib/gnulib/hard-locale.h | 25 - .../grub-2.04/grub-core/lib/gnulib/intprops.h | 455 - .../grub-2.04/grub-core/lib/gnulib/itold.c | 28 - .../grub-core/lib/gnulib/langinfo.in.h | 222 - .../grub-core/lib/gnulib/libc-config.h | 174 - .../grub-core/lib/gnulib/limits.in.h | 104 - .../grub-core/lib/gnulib/localcharset.c | 996 - .../grub-core/lib/gnulib/localcharset.h | 134 - .../grub-core/lib/gnulib/locale.in.h | 272 - .../grub-core/lib/gnulib/localeconv.c | 103 - .../grub-2.04/grub-core/lib/gnulib/malloc.c | 56 - .../grub-2.04/grub-core/lib/gnulib/malloca.c | 105 - .../grub-2.04/grub-core/lib/gnulib/malloca.h | 127 - .../grub-2.04/grub-core/lib/gnulib/mbrtowc.c | 458 - .../grub-2.04/grub-core/lib/gnulib/mbsinit.c | 73 - .../grub-core/lib/gnulib/mbsrtowcs-impl.h | 122 - .../grub-core/lib/gnulib/mbsrtowcs-state.c | 37 - .../grub-core/lib/gnulib/mbsrtowcs.c | 32 - .../grub-2.04/grub-core/lib/gnulib/mbswidth.c | 208 - .../grub-2.04/grub-core/lib/gnulib/mbswidth.h | 64 - .../grub-core/lib/gnulib/mbtowc-impl.h | 44 - .../grub-2.04/grub-core/lib/gnulib/mbtowc.c | 26 - .../grub-2.04/grub-core/lib/gnulib/memchr.c | 172 - .../grub-core/lib/gnulib/memchr.valgrind | 14 - .../grub-2.04/grub-core/lib/gnulib/mempcpy.c | 28 - .../grub-2.04/grub-core/lib/gnulib/memrchr.c | 161 - .../grub-core/lib/gnulib/msvc-inval.c | 129 - .../grub-core/lib/gnulib/msvc-inval.h | 222 - .../grub-core/lib/gnulib/msvc-nothrow.c | 51 - .../grub-core/lib/gnulib/msvc-nothrow.h | 43 - .../grub-core/lib/gnulib/nl_langinfo.c | 366 - .../grub-2.04/grub-core/lib/gnulib/open.c | 208 - .../grub-core/lib/gnulib/openat-die.c | 62 - .../grub-core/lib/gnulib/openat-priv.h | 64 - .../grub-core/lib/gnulib/openat-proc.c | 134 - .../grub-2.04/grub-core/lib/gnulib/openat.c | 314 - .../grub-2.04/grub-core/lib/gnulib/openat.h | 123 - .../grub-2.04/grub-core/lib/gnulib/pathmax.h | 83 - .../grub-core/lib/gnulib/pipe-safer.c | 56 - .../grub-core/lib/gnulib/printf-args.c | 187 - .../grub-core/lib/gnulib/printf-args.h | 158 - .../grub-core/lib/gnulib/printf-parse.c | 638 - .../grub-core/lib/gnulib/printf-parse.h | 193 - .../grub-2.04/grub-core/lib/gnulib/progname.c | 92 - .../grub-2.04/grub-core/lib/gnulib/progname.h | 62 - .../grub-core/lib/gnulib/rawmemchr.c | 136 - .../grub-core/lib/gnulib/rawmemchr.valgrind | 12 - .../grub-2.04/grub-core/lib/gnulib/realloc.c | 79 - .../grub-2.04/grub-core/lib/gnulib/regcomp.c | 3934 -- .../grub-2.04/grub-core/lib/gnulib/regex.c | 81 - .../grub-2.04/grub-core/lib/gnulib/regex.h | 658 - .../grub-core/lib/gnulib/regex_internal.c | 1746 - .../grub-core/lib/gnulib/regex_internal.h | 874 - .../grub-2.04/grub-core/lib/gnulib/regexec.c | 4334 -- .../grub-2.04/grub-core/lib/gnulib/save-cwd.c | 97 - .../grub-2.04/grub-core/lib/gnulib/save-cwd.h | 34 - .../grub-2.04/grub-core/lib/gnulib/size_max.h | 30 - .../grub-2.04/grub-core/lib/gnulib/sleep.c | 76 - .../grub-core/lib/gnulib/stat-time.c | 3 - .../grub-core/lib/gnulib/stat-time.h | 252 - .../grub-2.04/grub-core/lib/gnulib/stat-w32.c | 425 - .../grub-2.04/grub-core/lib/gnulib/stat-w32.h | 37 - .../grub-2.04/grub-core/lib/gnulib/stat.c | 429 - .../grub-core/lib/gnulib/stdalign.in.h | 121 - .../grub-core/lib/gnulib/stdbool.in.h | 132 - .../grub-core/lib/gnulib/stddef.in.h | 114 - .../grub-core/lib/gnulib/stdint.in.h | 726 - .../grub-2.04/grub-core/lib/gnulib/stdio.in.h | 1377 - .../grub-core/lib/gnulib/stdlib.in.h | 1013 - .../grub-core/lib/gnulib/strcasecmp.c | 62 - .../grub-core/lib/gnulib/strchrnul.c | 142 - .../grub-core/lib/gnulib/strchrnul.valgrind | 12 - .../grub-2.04/grub-core/lib/gnulib/strdup.c | 54 - .../grub-2.04/grub-core/lib/gnulib/streq.h | 176 - .../grub-core/lib/gnulib/strerror-override.c | 302 - .../grub-core/lib/gnulib/strerror-override.h | 56 - .../grub-2.04/grub-core/lib/gnulib/strerror.c | 71 - .../grub-core/lib/gnulib/string.in.h | 1063 - .../grub-core/lib/gnulib/strings.in.h | 122 - .../grub-core/lib/gnulib/stripslash.c | 45 - .../grub-core/lib/gnulib/strncasecmp.c | 62 - .../grub-2.04/grub-core/lib/gnulib/strndup.c | 36 - .../grub-2.04/grub-core/lib/gnulib/strnlen.c | 30 - .../grub-2.04/grub-core/lib/gnulib/strnlen1.c | 35 - .../grub-2.04/grub-core/lib/gnulib/strnlen1.h | 40 - .../grub-core/lib/gnulib/sys_stat.in.h | 816 - .../grub-core/lib/gnulib/sys_types.in.h | 106 - .../grub-core/lib/gnulib/sysexits.in.h | 72 - .../grub-2.04/grub-core/lib/gnulib/time.in.h | 350 - .../grub-2.04/grub-core/lib/gnulib/unistd--.h | 32 - .../grub-core/lib/gnulib/unistd-safer.h | 31 - .../grub-2.04/grub-core/lib/gnulib/unistd.c | 4 - .../grub-core/lib/gnulib/unistd.in.h | 1668 - .../grub-core/lib/gnulib/unitypes.in.h | 46 - .../grub-core/lib/gnulib/uniwidth.in.h | 72 - .../grub-core/lib/gnulib/uniwidth/cjk.h | 37 - .../grub-core/lib/gnulib/uniwidth/width.c | 468 - .../grub-core/lib/gnulib/vasnprintf.c | 5621 -- .../grub-core/lib/gnulib/vasnprintf.h | 79 - .../grub-2.04/grub-core/lib/gnulib/verify.h | 285 - .../grub-core/lib/gnulib/vsnprintf.c | 70 - .../grub-core/lib/gnulib/warn-on-use.h | 131 - .../grub-2.04/grub-core/lib/gnulib/wchar.in.h | 1072 - .../grub-2.04/grub-core/lib/gnulib/wcrtomb.c | 53 - .../grub-2.04/grub-core/lib/gnulib/wctype-h.c | 4 - .../grub-core/lib/gnulib/wctype.in.h | 533 - .../grub-2.04/grub-core/lib/gnulib/wcwidth.c | 73 - .../grub-core/lib/gnulib/xalloc-oversized.h | 60 - .../grub-2.04/grub-core/lib/gnulib/xsize.c | 3 - .../grub-2.04/grub-core/lib/gnulib/xsize.h | 117 - thirdparty/grub-2.04/grub-core/lib/hexdump.c | 85 - .../grub-2.04/grub-core/lib/i386/backtrace.c | 66 - .../grub-2.04/grub-core/lib/i386/halt.c | 82 - .../grub-2.04/grub-core/lib/i386/pc/biosnum.c | 47 - .../grub-core/lib/i386/pc/vesa_modes_table.c | 127 - .../grub-2.04/grub-core/lib/i386/random.c | 103 - .../grub-2.04/grub-core/lib/i386/reboot.c | 64 - .../grub-core/lib/i386/reboot_trampoline.S | 34 - .../grub-2.04/grub-core/lib/i386/relocator.c | 216 - .../grub-core/lib/i386/relocator16.S | 329 - .../grub-core/lib/i386/relocator32.S | 134 - .../grub-core/lib/i386/relocator64.S | 186 - .../grub-core/lib/i386/relocator_asm.S | 80 - .../grub-core/lib/i386/relocator_common.S | 113 - .../grub-core/lib/i386/relocator_common_c.c | 109 - .../grub-2.04/grub-core/lib/i386/setjmp.S | 59 - .../grub-core/lib/i386/xen/relocator.S | 165 - .../grub-2.04/grub-core/lib/ia64/longjmp.S | 162 - .../grub-2.04/grub-core/lib/ia64/setjmp.S | 177 - .../grub-2.04/grub-core/lib/ieee1275/cmos.c | 77 - .../grub-core/lib/ieee1275/datetime.c | 156 - .../grub-2.04/grub-core/lib/ieee1275/halt.c | 33 - .../grub-2.04/grub-core/lib/ieee1275/reboot.c | 27 - .../grub-core/lib/ieee1275/relocator.c | 114 - .../grub-2.04/grub-core/lib/legacy_parse.c | 875 - .../lib/libgcrypt-grub/cipher/ChangeLog | 4357 -- .../lib/libgcrypt-grub/cipher/arcfour.c | 143 - .../lib/libgcrypt-grub/cipher/bithelp.h | 57 - .../lib/libgcrypt-grub/cipher/blowfish.c | 592 - .../lib/libgcrypt-grub/cipher/bufhelp.h | 435 - .../lib/libgcrypt-grub/cipher/camellia-glue.c | 211 - .../lib/libgcrypt-grub/cipher/camellia.c | 1463 - .../lib/libgcrypt-grub/cipher/camellia.h | 94 - .../lib/libgcrypt-grub/cipher/cast5.c | 590 - .../lib/libgcrypt-grub/cipher/cipher.h | 2 - .../grub-core/lib/libgcrypt-grub/cipher/crc.c | 826 - .../lib/libgcrypt-grub/cipher/crypto.lst | 45 - .../grub-core/lib/libgcrypt-grub/cipher/des.c | 929 - .../grub-core/lib/libgcrypt-grub/cipher/dsa.c | 292 - .../lib/libgcrypt-grub/cipher/g10lib.h | 1 - .../lib/libgcrypt-grub/cipher/hash-common.h | 36 - .../lib/libgcrypt-grub/cipher/idea.c | 322 - .../lib/libgcrypt-grub/cipher/init.c | 91 - .../grub-core/lib/libgcrypt-grub/cipher/md4.c | 344 - .../grub-core/lib/libgcrypt-grub/cipher/md5.c | 372 - .../lib/libgcrypt-grub/cipher/memory.h | 1 - .../lib/libgcrypt-grub/cipher/rfc2268.c | 285 - .../libgcrypt-grub/cipher/rijndael-tables.h | 1689 - .../lib/libgcrypt-grub/cipher/rijndael.c | 1478 - .../grub-core/lib/libgcrypt-grub/cipher/rmd.h | 39 - .../lib/libgcrypt-grub/cipher/rmd160.c | 565 - .../grub-core/lib/libgcrypt-grub/cipher/rsa.c | 395 - .../lib/libgcrypt-grub/cipher/seed.c | 461 - .../lib/libgcrypt-grub/cipher/serpent.c | 903 - .../lib/libgcrypt-grub/cipher/sha1.c | 419 - .../lib/libgcrypt-grub/cipher/sha256.c | 463 - .../lib/libgcrypt-grub/cipher/sha512.c | 525 - .../lib/libgcrypt-grub/cipher/tiger.c | 944 - .../lib/libgcrypt-grub/cipher/twofish.c | 1001 - .../lib/libgcrypt-grub/cipher/types.h | 2 - .../lib/libgcrypt-grub/cipher/whirlpool.c | 1422 - .../lib/libgcrypt-grub/mpi/generic/Manifest | 29 - .../lib/libgcrypt-grub/mpi/generic/distfiles | 11 - .../libgcrypt-grub/mpi/generic/mpi-asm-defs.h | 10 - .../libgcrypt-grub/mpi/generic/mpih-add1.c | 65 - .../libgcrypt-grub/mpi/generic/mpih-lshift.c | 68 - .../libgcrypt-grub/mpi/generic/mpih-mul1.c | 62 - .../libgcrypt-grub/mpi/generic/mpih-mul2.c | 68 - .../libgcrypt-grub/mpi/generic/mpih-mul3.c | 68 - .../libgcrypt-grub/mpi/generic/mpih-rshift.c | 67 - .../libgcrypt-grub/mpi/generic/mpih-sub1.c | 66 - .../libgcrypt-grub/mpi/generic/udiv-w-sdiv.c | 133 - .../lib/libgcrypt-grub/mpi/longlong.h | 1615 - .../lib/libgcrypt-grub/mpi/mpi-add.c | 237 - .../lib/libgcrypt-grub/mpi/mpi-asm-defs.h | 10 - .../lib/libgcrypt-grub/mpi/mpi-bit.c | 366 - .../lib/libgcrypt-grub/mpi/mpi-cmp.c | 109 - .../lib/libgcrypt-grub/mpi/mpi-div.c | 357 - .../lib/libgcrypt-grub/mpi/mpi-gcd.c | 53 - .../lib/libgcrypt-grub/mpi/mpi-inline.c | 37 - .../lib/libgcrypt-grub/mpi/mpi-inline.h | 163 - .../lib/libgcrypt-grub/mpi/mpi-internal.h | 279 - .../lib/libgcrypt-grub/mpi/mpi-inv.c | 269 - .../lib/libgcrypt-grub/mpi/mpi-mod.c | 186 - .../lib/libgcrypt-grub/mpi/mpi-mpow.c | 225 - .../lib/libgcrypt-grub/mpi/mpi-mul.c | 214 - .../lib/libgcrypt-grub/mpi/mpi-pow.c | 340 - .../lib/libgcrypt-grub/mpi/mpicoder.c | 752 - .../lib/libgcrypt-grub/mpi/mpih-add1.c | 65 - .../lib/libgcrypt-grub/mpi/mpih-div.c | 536 - .../lib/libgcrypt-grub/mpi/mpih-lshift.c | 68 - .../lib/libgcrypt-grub/mpi/mpih-mul.c | 530 - .../lib/libgcrypt-grub/mpi/mpih-mul1.c | 62 - .../lib/libgcrypt-grub/mpi/mpih-mul2.c | 68 - .../lib/libgcrypt-grub/mpi/mpih-mul3.c | 68 - .../lib/libgcrypt-grub/mpi/mpih-rshift.c | 67 - .../lib/libgcrypt-grub/mpi/mpih-sub1.c | 66 - .../lib/libgcrypt-grub/mpi/mpiutil.c | 435 - .../grub-core/lib/libgcrypt-grub/src/ath.h | 147 - .../lib/libgcrypt-grub/src/cipher-proto.h | 124 - .../grub-core/lib/libgcrypt-grub/src/cipher.h | 182 - .../grub-core/lib/libgcrypt-grub/src/g10lib.h | 302 - .../lib/libgcrypt-grub/src/gcrypt-module.h | 0 .../lib/libgcrypt-grub/src/hmac256.h | 36 - .../grub-core/lib/libgcrypt-grub/src/mpi.h | 266 - .../grub-core/lib/libgcrypt-grub/src/secmem.h | 39 - .../grub-core/lib/libgcrypt-grub/src/stdmem.h | 32 - .../grub-core/lib/libgcrypt-grub/src/types.h | 128 - .../lib/libgcrypt-grub/src/visibility.h | 1 - .../grub-core/lib/libgcrypt/cipher/ChangeLog | 3990 -- .../lib/libgcrypt/cipher/ChangeLog-2011 | 4247 -- .../lib/libgcrypt/cipher/Makefile.am | 83 - .../grub-core/lib/libgcrypt/cipher/Manifest | 73 - .../grub-core/lib/libgcrypt/cipher/ac.c | 3301 - .../grub-core/lib/libgcrypt/cipher/arcfour.c | 155 - .../grub-core/lib/libgcrypt/cipher/bithelp.h | 54 - .../grub-core/lib/libgcrypt/cipher/blowfish.c | 605 - .../grub-core/lib/libgcrypt/cipher/bufhelp.h | 432 - .../lib/libgcrypt/cipher/camellia-glue.c | 253 - .../grub-core/lib/libgcrypt/cipher/camellia.c | 1461 - .../grub-core/lib/libgcrypt/cipher/camellia.h | 81 - .../grub-core/lib/libgcrypt/cipher/cast5.c | 620 - .../grub-core/lib/libgcrypt/cipher/cipher.c | 2217 - .../grub-core/lib/libgcrypt/cipher/crc.c | 793 - .../grub-core/lib/libgcrypt/cipher/des.c | 1196 - .../grub-core/lib/libgcrypt/cipher/dsa.c | 1193 - .../grub-core/lib/libgcrypt/cipher/ecc.c | 1793 - .../grub-core/lib/libgcrypt/cipher/elgamal.c | 845 - .../lib/libgcrypt/cipher/hash-common.c | 93 - .../lib/libgcrypt/cipher/hash-common.h | 33 - .../lib/libgcrypt/cipher/hmac-tests.c | 732 - .../grub-core/lib/libgcrypt/cipher/idea.c | 378 - .../grub-core/lib/libgcrypt/cipher/kdf.c | 278 - .../grub-core/lib/libgcrypt/cipher/md.c | 1383 - .../grub-core/lib/libgcrypt/cipher/md4.c | 327 - .../grub-core/lib/libgcrypt/cipher/md5.c | 355 - .../grub-core/lib/libgcrypt/cipher/primegen.c | 1861 - .../grub-core/lib/libgcrypt/cipher/pubkey.c | 4212 -- .../grub-core/lib/libgcrypt/cipher/rfc2268.c | 344 - .../lib/libgcrypt/cipher/rijndael-tables.h | 1686 - .../grub-core/lib/libgcrypt/cipher/rijndael.c | 2092 - .../grub-core/lib/libgcrypt/cipher/rmd.h | 36 - .../grub-core/lib/libgcrypt/cipher/rmd160.c | 572 - .../grub-core/lib/libgcrypt/cipher/rsa.c | 1390 - .../grub-core/lib/libgcrypt/cipher/seed.c | 478 - .../grub-core/lib/libgcrypt/cipher/serpent.c | 953 - .../grub-core/lib/libgcrypt/cipher/sha1.c | 477 - .../grub-core/lib/libgcrypt/cipher/sha256.c | 554 - .../grub-core/lib/libgcrypt/cipher/sha512.c | 629 - .../lib/libgcrypt/cipher/test-getrusage.c | 105 - .../grub-core/lib/libgcrypt/cipher/tiger.c | 911 - .../grub-core/lib/libgcrypt/cipher/twofish.c | 1040 - .../lib/libgcrypt/cipher/whirlpool.c | 1405 - .../lib/libgcrypt/mpi/ChangeLog-2011 | 822 - .../grub-core/lib/libgcrypt/mpi/Makefile.am | 177 - .../grub-core/lib/libgcrypt/mpi/Manifest | 41 - .../grub-core/lib/libgcrypt/mpi/alpha/README | 53 - .../lib/libgcrypt/mpi/alpha/distfiles | 11 - .../lib/libgcrypt/mpi/alpha/mpih-add1.S | 124 - .../lib/libgcrypt/mpi/alpha/mpih-lshift.S | 122 - .../lib/libgcrypt/mpi/alpha/mpih-mul1.S | 90 - .../lib/libgcrypt/mpi/alpha/mpih-mul2.S | 97 - .../lib/libgcrypt/mpi/alpha/mpih-mul3.S | 95 - .../lib/libgcrypt/mpi/alpha/mpih-rshift.S | 118 - .../lib/libgcrypt/mpi/alpha/mpih-sub1.S | 124 - .../lib/libgcrypt/mpi/alpha/udiv-qrnnd.S | 159 - .../lib/libgcrypt/mpi/amd64/distfiles | 8 - .../lib/libgcrypt/mpi/amd64/mpi-asm-defs.h | 4 - .../lib/libgcrypt/mpi/amd64/mpih-add1.S | 63 - .../lib/libgcrypt/mpi/amd64/mpih-lshift.S | 77 - .../lib/libgcrypt/mpi/amd64/mpih-mul1.S | 65 - .../lib/libgcrypt/mpi/amd64/mpih-mul2.S | 107 - .../lib/libgcrypt/mpi/amd64/mpih-mul3.S | 66 - .../lib/libgcrypt/mpi/amd64/mpih-rshift.S | 80 - .../lib/libgcrypt/mpi/amd64/mpih-sub1.S | 61 - .../grub-core/lib/libgcrypt/mpi/config.links | 360 - .../grub-core/lib/libgcrypt/mpi/ec.c | 721 - .../lib/libgcrypt/mpi/generic/Manifest | 29 - .../lib/libgcrypt/mpi/generic/distfiles | 11 - .../lib/libgcrypt/mpi/generic/mpi-asm-defs.h | 10 - .../lib/libgcrypt/mpi/generic/mpih-add1.c | 65 - .../lib/libgcrypt/mpi/generic/mpih-lshift.c | 68 - .../lib/libgcrypt/mpi/generic/mpih-mul1.c | 62 - .../lib/libgcrypt/mpi/generic/mpih-mul2.c | 68 - .../lib/libgcrypt/mpi/generic/mpih-mul3.c | 68 - .../lib/libgcrypt/mpi/generic/mpih-rshift.c | 67 - .../lib/libgcrypt/mpi/generic/mpih-sub1.c | 66 - .../lib/libgcrypt/mpi/generic/udiv-w-sdiv.c | 133 - .../grub-core/lib/libgcrypt/mpi/hppa/README | 84 - .../lib/libgcrypt/mpi/hppa/distfiles | 7 - .../lib/libgcrypt/mpi/hppa/mpih-add1.S | 70 - .../lib/libgcrypt/mpi/hppa/mpih-lshift.S | 77 - .../lib/libgcrypt/mpi/hppa/mpih-rshift.S | 73 - .../lib/libgcrypt/mpi/hppa/mpih-sub1.S | 78 - .../lib/libgcrypt/mpi/hppa/udiv-qrnnd.S | 297 - .../grub-core/lib/libgcrypt/mpi/i386/Manifest | 28 - .../lib/libgcrypt/mpi/i386/distfiles | 10 - .../lib/libgcrypt/mpi/i386/mpih-add1.S | 116 - .../lib/libgcrypt/mpi/i386/mpih-lshift.S | 94 - .../lib/libgcrypt/mpi/i386/mpih-mul1.S | 84 - .../lib/libgcrypt/mpi/i386/mpih-mul2.S | 86 - .../lib/libgcrypt/mpi/i386/mpih-mul3.S | 86 - .../lib/libgcrypt/mpi/i386/mpih-rshift.S | 97 - .../lib/libgcrypt/mpi/i386/mpih-sub1.S | 117 - .../grub-core/lib/libgcrypt/mpi/i386/syntax.h | 68 - .../grub-core/lib/libgcrypt/mpi/i586/Manifest | 27 - .../grub-core/lib/libgcrypt/mpi/i586/README | 26 - .../lib/libgcrypt/mpi/i586/distfiles | 10 - .../lib/libgcrypt/mpi/i586/mpih-add1.S | 135 - .../lib/libgcrypt/mpi/i586/mpih-lshift.S | 229 - .../lib/libgcrypt/mpi/i586/mpih-mul1.S | 89 - .../lib/libgcrypt/mpi/i586/mpih-mul2.S | 93 - .../lib/libgcrypt/mpi/i586/mpih-mul3.S | 93 - .../lib/libgcrypt/mpi/i586/mpih-rshift.S | 228 - .../lib/libgcrypt/mpi/i586/mpih-sub1.S | 142 - .../grub-core/lib/libgcrypt/mpi/longlong.h | 1613 - .../grub-core/lib/libgcrypt/mpi/m68k/Manifest | 25 - .../lib/libgcrypt/mpi/m68k/distfiles | 9 - .../lib/libgcrypt/mpi/m68k/mc68020/Manifest | 23 - .../lib/libgcrypt/mpi/m68k/mc68020/distfiles | 4 - .../libgcrypt/mpi/m68k/mc68020/mpih-mul1.S | 104 - .../libgcrypt/mpi/m68k/mc68020/mpih-mul2.S | 94 - .../libgcrypt/mpi/m68k/mc68020/mpih-mul3.S | 97 - .../lib/libgcrypt/mpi/m68k/mpih-add1.S | 92 - .../lib/libgcrypt/mpi/m68k/mpih-lshift.S | 164 - .../lib/libgcrypt/mpi/m68k/mpih-rshift.S | 162 - .../lib/libgcrypt/mpi/m68k/mpih-sub1.S | 91 - .../grub-core/lib/libgcrypt/mpi/m68k/syntax.h | 185 - .../lib/libgcrypt/mpi/mips3/Manifest | 28 - .../grub-core/lib/libgcrypt/mpi/mips3/README | 23 - .../lib/libgcrypt/mpi/mips3/distfiles | 11 - .../lib/libgcrypt/mpi/mips3/mpi-asm-defs.h | 10 - .../lib/libgcrypt/mpi/mips3/mpih-add1.S | 124 - .../lib/libgcrypt/mpi/mips3/mpih-lshift.S | 97 - .../lib/libgcrypt/mpi/mips3/mpih-mul1.S | 89 - .../lib/libgcrypt/mpi/mips3/mpih-mul2.S | 101 - .../lib/libgcrypt/mpi/mips3/mpih-mul3.S | 101 - .../lib/libgcrypt/mpi/mips3/mpih-rshift.S | 95 - .../lib/libgcrypt/mpi/mips3/mpih-sub1.S | 125 - .../grub-core/lib/libgcrypt/mpi/mpi-add.c | 235 - .../grub-core/lib/libgcrypt/mpi/mpi-bit.c | 364 - .../grub-core/lib/libgcrypt/mpi/mpi-cmp.c | 107 - .../grub-core/lib/libgcrypt/mpi/mpi-div.c | 355 - .../grub-core/lib/libgcrypt/mpi/mpi-gcd.c | 51 - .../grub-core/lib/libgcrypt/mpi/mpi-inline.c | 35 - .../grub-core/lib/libgcrypt/mpi/mpi-inline.h | 161 - .../lib/libgcrypt/mpi/mpi-internal.h | 277 - .../grub-core/lib/libgcrypt/mpi/mpi-inv.c | 267 - .../grub-core/lib/libgcrypt/mpi/mpi-mod.c | 184 - .../grub-core/lib/libgcrypt/mpi/mpi-mpow.c | 223 - .../grub-core/lib/libgcrypt/mpi/mpi-mul.c | 212 - .../grub-core/lib/libgcrypt/mpi/mpi-pow.c | 338 - .../grub-core/lib/libgcrypt/mpi/mpi-scan.c | 130 - .../grub-core/lib/libgcrypt/mpi/mpicoder.c | 750 - .../grub-core/lib/libgcrypt/mpi/mpih-div.c | 534 - .../grub-core/lib/libgcrypt/mpi/mpih-mul.c | 528 - .../grub-core/lib/libgcrypt/mpi/mpiutil.c | 460 - .../lib/libgcrypt/mpi/pa7100/Manifest | 22 - .../lib/libgcrypt/mpi/pa7100/distfiles | 4 - .../lib/libgcrypt/mpi/pa7100/mpih-lshift.S | 96 - .../lib/libgcrypt/mpi/pa7100/mpih-rshift.S | 92 - .../lib/libgcrypt/mpi/pentium4/README | 115 - .../lib/libgcrypt/mpi/pentium4/distfiles | 3 - .../lib/libgcrypt/mpi/pentium4/mmx/distfiles | 2 - .../libgcrypt/mpi/pentium4/mmx/mpih-lshift.S | 457 - .../libgcrypt/mpi/pentium4/mmx/mpih-rshift.S | 453 - .../lib/libgcrypt/mpi/pentium4/sse2/distfiles | 5 - .../libgcrypt/mpi/pentium4/sse2/mpih-add1.S | 91 - .../libgcrypt/mpi/pentium4/sse2/mpih-mul1.S | 96 - .../libgcrypt/mpi/pentium4/sse2/mpih-mul2.S | 136 - .../libgcrypt/mpi/pentium4/sse2/mpih-mul3.S | 127 - .../libgcrypt/mpi/pentium4/sse2/mpih-sub1.S | 112 - .../lib/libgcrypt/mpi/power/Manifest | 27 - .../lib/libgcrypt/mpi/power/distfiles | 8 - .../lib/libgcrypt/mpi/power/mpih-add1.S | 87 - .../lib/libgcrypt/mpi/power/mpih-lshift.S | 64 - .../lib/libgcrypt/mpi/power/mpih-mul1.S | 115 - .../lib/libgcrypt/mpi/power/mpih-mul2.S | 130 - .../lib/libgcrypt/mpi/power/mpih-mul3.S | 135 - .../lib/libgcrypt/mpi/power/mpih-rshift.S | 64 - .../lib/libgcrypt/mpi/power/mpih-sub1.S | 88 - .../lib/libgcrypt/mpi/powerpc32/Manifest | 28 - .../lib/libgcrypt/mpi/powerpc32/distfiles | 10 - .../lib/libgcrypt/mpi/powerpc32/mpih-add1.S | 136 - .../lib/libgcrypt/mpi/powerpc32/mpih-lshift.S | 198 - .../lib/libgcrypt/mpi/powerpc32/mpih-mul1.S | 120 - .../lib/libgcrypt/mpi/powerpc32/mpih-mul2.S | 127 - .../lib/libgcrypt/mpi/powerpc32/mpih-mul3.S | 130 - .../lib/libgcrypt/mpi/powerpc32/mpih-rshift.S | 131 - .../lib/libgcrypt/mpi/powerpc32/mpih-sub1.S | 133 - .../lib/libgcrypt/mpi/powerpc32/syntax.h | 75 - .../lib/libgcrypt/mpi/powerpc64/distfiles | 0 .../lib/libgcrypt/mpi/sparc32/Manifest | 24 - .../lib/libgcrypt/mpi/sparc32/distfiles | 6 - .../lib/libgcrypt/mpi/sparc32/mpih-add1.S | 239 - .../lib/libgcrypt/mpi/sparc32/mpih-lshift.S | 97 - .../lib/libgcrypt/mpi/sparc32/mpih-rshift.S | 93 - .../lib/libgcrypt/mpi/sparc32/udiv.S | 195 - .../lib/libgcrypt/mpi/sparc32v8/Manifest | 23 - .../lib/libgcrypt/mpi/sparc32v8/distfiles | 5 - .../lib/libgcrypt/mpi/sparc32v8/mpih-mul1.S | 109 - .../lib/libgcrypt/mpi/sparc32v8/mpih-mul2.S | 132 - .../lib/libgcrypt/mpi/sparc32v8/mpih-mul3.S | 67 - .../lib/libgcrypt/mpi/supersparc/Manifest | 21 - .../lib/libgcrypt/mpi/supersparc/distfiles | 3 - .../lib/libgcrypt/mpi/supersparc/udiv.S | 118 - .../lib/libgcrypt/src/ChangeLog-2011 | 2335 - .../grub-core/lib/libgcrypt/src/Makefile.am | 143 - .../grub-core/lib/libgcrypt/src/Manifest | 58 - .../grub-core/lib/libgcrypt/src/ath.c | 344 - .../grub-core/lib/libgcrypt/src/ath.h | 147 - .../lib/libgcrypt/src/cipher-proto.h | 124 - .../grub-core/lib/libgcrypt/src/cipher.h | 182 - .../grub-core/lib/libgcrypt/src/dumpsexp.c | 766 - .../grub-core/lib/libgcrypt/src/fips.c | 860 - .../grub-core/lib/libgcrypt/src/g10lib.h | 302 - .../lib/libgcrypt/src/gcrypt-module.h | 240 - .../grub-core/lib/libgcrypt/src/gcrypt.h.in | 1760 - .../grub-core/lib/libgcrypt/src/gcryptrnd.c | 680 - .../grub-core/lib/libgcrypt/src/getrandom.c | 326 - .../grub-core/lib/libgcrypt/src/global.c | 1123 - .../grub-core/lib/libgcrypt/src/hmac256.c | 793 - .../grub-core/lib/libgcrypt/src/hmac256.h | 36 - .../grub-core/lib/libgcrypt/src/hwfeatures.c | 192 - .../lib/libgcrypt/src/libgcrypt-config.in | 189 - .../grub-core/lib/libgcrypt/src/libgcrypt.def | 239 - .../grub-core/lib/libgcrypt/src/libgcrypt.m4 | 123 - .../lib/libgcrypt/src/libgcrypt.vers | 111 - .../grub-core/lib/libgcrypt/src/misc.c | 298 - .../lib/libgcrypt/src/missing-string.c | 54 - .../grub-core/lib/libgcrypt/src/module.c | 212 - .../grub-core/lib/libgcrypt/src/mpi.h | 266 - .../grub-core/lib/libgcrypt/src/secmem.c | 696 - .../grub-core/lib/libgcrypt/src/secmem.h | 39 - .../grub-core/lib/libgcrypt/src/sexp.c | 2045 - .../grub-core/lib/libgcrypt/src/stdmem.c | 242 - .../grub-core/lib/libgcrypt/src/stdmem.h | 32 - .../grub-core/lib/libgcrypt/src/types.h | 128 - .../lib/libgcrypt/src/versioninfo.rc.in | 51 - .../grub-core/lib/libgcrypt/src/visibility.c | 1486 - .../grub-core/lib/libgcrypt/src/visibility.h | 807 - .../lib/libgcrypt_wrap/cipher_wrap.h | 77 - .../grub-core/lib/libgcrypt_wrap/mem.c | 133 - .../grub-2.04/grub-core/lib/minilzo/lzoconf.h | 446 - .../grub-2.04/grub-core/lib/minilzo/lzodefs.h | 1852 - .../grub-2.04/grub-core/lib/minilzo/minilzo.c | 4562 -- .../grub-2.04/grub-core/lib/minilzo/minilzo.h | 109 - .../grub-2.04/grub-core/lib/mips/arc/reboot.c | 35 - .../grub-core/lib/mips/loongson/reboot.c | 64 - .../grub-core/lib/mips/qemu_mips/reboot.c | 27 - .../grub-2.04/grub-core/lib/mips/relocator.c | 149 - .../grub-core/lib/mips/relocator_asm.S | 61 - .../grub-2.04/grub-core/lib/mips/setjmp.S | 71 - thirdparty/grub-2.04/grub-core/lib/pbkdf2.c | 109 - .../grub-core/lib/posix_wrap/assert.h | 33 - .../grub-core/lib/posix_wrap/ctype.h | 108 - .../grub-core/lib/posix_wrap/errno.h | 29 - .../grub-core/lib/posix_wrap/inttypes.h | 1 - .../grub-core/lib/posix_wrap/langinfo.h | 38 - .../grub-core/lib/posix_wrap/limits.h | 41 - .../grub-core/lib/posix_wrap/localcharset.h | 28 - .../grub-core/lib/posix_wrap/locale.h | 3 - .../grub-core/lib/posix_wrap/stdint.h | 1 - .../grub-core/lib/posix_wrap/stdio.h | 43 - .../grub-core/lib/posix_wrap/stdlib.h | 55 - .../grub-core/lib/posix_wrap/string.h | 92 - .../grub-core/lib/posix_wrap/sys/types.h | 65 - .../grub-core/lib/posix_wrap/unistd.h | 1 - .../grub-core/lib/posix_wrap/wchar.h | 119 - .../grub-core/lib/posix_wrap/wctype.h | 110 - .../grub-core/lib/powerpc/relocator.c | 142 - .../grub-core/lib/powerpc/relocator_asm.S | 60 - .../grub-2.04/grub-core/lib/powerpc/setjmp.S | 89 - .../grub-2.04/grub-core/lib/priority_queue.c | 163 - thirdparty/grub-2.04/grub-core/lib/progress.c | 145 - thirdparty/grub-2.04/grub-core/lib/random.c | 120 - .../grub-2.04/grub-core/lib/reed_solomon.c | 494 - .../grub-2.04/grub-core/lib/relocator.c | 1657 - .../grub-2.04/grub-core/lib/riscv/setjmp.S | 84 - thirdparty/grub-2.04/grub-core/lib/setjmp.S | 22 - .../grub-2.04/grub-core/lib/sparc64/setjmp.S | 54 - .../grub-2.04/grub-core/lib/syslinux_parse.c | 1551 - .../grub-2.04/grub-core/lib/uboot/reboot.c | 31 - .../grub-core/lib/x86_64/efi/relocator.c | 80 - .../grub-core/lib/x86_64/relocator_asm.S | 85 - .../grub-2.04/grub-core/lib/x86_64/setjmp.S | 68 - .../grub-core/lib/x86_64/xen/relocator.S | 133 - .../grub-2.04/grub-core/lib/xen/datetime.c | 40 - thirdparty/grub-2.04/grub-core/lib/xen/halt.c | 32 - .../grub-2.04/grub-core/lib/xen/reboot.c | 32 - .../grub-2.04/grub-core/lib/xen/relocator.c | 137 - .../grub-2.04/grub-core/lib/xzembed/xz.h | 188 - .../grub-core/lib/xzembed/xz_config.h | 152 - .../grub-core/lib/xzembed/xz_dec_bcj.c | 578 - .../grub-core/lib/xzembed/xz_dec_lzma2.c | 1188 - .../grub-core/lib/xzembed/xz_dec_stream.c | 1042 - .../grub-core/lib/xzembed/xz_lzma2.h | 236 - .../grub-core/lib/xzembed/xz_private.h | 96 - .../grub-core/lib/xzembed/xz_stream.h | 53 - .../grub-2.04/grub-core/lib/zstd/bitstream.h | 458 - .../grub-2.04/grub-core/lib/zstd/compiler.h | 133 - thirdparty/grub-2.04/grub-core/lib/zstd/cpu.h | 215 - .../grub-2.04/grub-core/lib/zstd/debug.c | 44 - .../grub-2.04/grub-core/lib/zstd/debug.h | 123 - .../grub-core/lib/zstd/entropy_common.c | 236 - .../grub-core/lib/zstd/error_private.c | 48 - .../grub-core/lib/zstd/error_private.h | 76 - thirdparty/grub-2.04/grub-core/lib/zstd/fse.h | 708 - .../grub-core/lib/zstd/fse_decompress.c | 309 - thirdparty/grub-2.04/grub-core/lib/zstd/huf.h | 334 - .../grub-core/lib/zstd/huf_decompress.c | 1096 - thirdparty/grub-2.04/grub-core/lib/zstd/mem.h | 374 - .../grub-2.04/grub-core/lib/zstd/module.c | 21 - .../grub-2.04/grub-core/lib/zstd/xxhash.c | 876 - .../grub-2.04/grub-core/lib/zstd/xxhash.h | 305 - .../grub-2.04/grub-core/lib/zstd/zstd.h | 1516 - .../grub-core/lib/zstd/zstd_common.c | 81 - .../grub-core/lib/zstd/zstd_decompress.c | 3108 - .../grub-core/lib/zstd/zstd_errors.h | 92 - .../grub-core/lib/zstd/zstd_internal.h | 257 - thirdparty/grub-2.04/grub-core/loader/aout.c | 62 - .../grub-2.04/grub-core/loader/arm/linux.c | 509 - .../grub-2.04/grub-core/loader/arm64/linux.c | 393 - .../grub-core/loader/arm64/xen_boot.c | 527 - .../grub-core/loader/efi/appleloader.c | 242 - .../grub-core/loader/efi/chainloader.c | 428 - .../grub-2.04/grub-core/loader/efi/fdt.c | 175 - .../grub-2.04/grub-core/loader/i386/bsd.c | 2184 - .../grub-2.04/grub-core/loader/i386/bsd32.c | 6 - .../grub-2.04/grub-core/loader/i386/bsd64.c | 6 - .../grub-2.04/grub-core/loader/i386/bsdXX.c | 679 - .../grub-core/loader/i386/bsd_pagetable.c | 92 - .../loader/i386/coreboot/chainloader.c | 517 - .../grub-2.04/grub-core/loader/i386/linux.c | 1135 - .../grub-core/loader/i386/multiboot_mbi.c | 757 - .../grub-core/loader/i386/pc/chainloader.c | 310 - .../grub-core/loader/i386/pc/freedos.c | 190 - .../grub-core/loader/i386/pc/linux.c | 490 - .../grub-core/loader/i386/pc/ntldr.c | 162 - .../grub-core/loader/i386/pc/plan9.c | 607 - .../grub-core/loader/i386/pc/pxechainloader.c | 168 - .../grub-core/loader/i386/pc/truecrypt.c | 233 - .../grub-2.04/grub-core/loader/i386/xen.c | 978 - .../grub-core/loader/i386/xen_file.c | 117 - .../grub-core/loader/i386/xen_file32.c | 7 - .../grub-core/loader/i386/xen_file64.c | 7 - .../grub-core/loader/i386/xen_fileXX.c | 395 - .../grub-2.04/grub-core/loader/i386/xnu.c | 1166 - .../grub-core/loader/ia64/efi/linux.c | 607 - thirdparty/grub-2.04/grub-core/loader/linux.c | 302 - thirdparty/grub-2.04/grub-core/loader/lzss.c | 56 - thirdparty/grub-2.04/grub-core/loader/macho.c | 205 - .../grub-2.04/grub-core/loader/macho32.c | 22 - .../grub-2.04/grub-core/loader/macho64.c | 22 - .../grub-2.04/grub-core/loader/machoXX.c | 384 - .../grub-2.04/grub-core/loader/mips/linux.c | 511 - .../grub-2.04/grub-core/loader/multiboot.c | 469 - .../grub-core/loader/multiboot_elfxx.c | 298 - .../grub-core/loader/multiboot_mbi2.c | 1118 - .../grub-core/loader/powerpc/ieee1275/linux.c | 393 - .../grub-2.04/grub-core/loader/riscv/linux.c | 59 - .../grub-core/loader/sparc64/ieee1275/linux.c | 521 - thirdparty/grub-2.04/grub-core/loader/xnu.c | 1533 - .../grub-2.04/grub-core/loader/xnu_resume.c | 188 - .../grub-2.04/grub-core/mmap/efi/mmap.c | 318 - .../grub-2.04/grub-core/mmap/i386/mmap.c | 113 - .../grub-2.04/grub-core/mmap/i386/pc/mmap.c | 211 - .../grub-core/mmap/i386/pc/mmap_helper.S | 163 - .../grub-2.04/grub-core/mmap/i386/uppermem.c | 98 - .../grub-2.04/grub-core/mmap/mips/uppermem.c | 72 - thirdparty/grub-2.04/grub-core/mmap/mmap.c | 551 - thirdparty/grub-2.04/grub-core/modinfo.sh.in | 40 - thirdparty/grub-2.04/grub-core/net/arp.c | 189 - thirdparty/grub-2.04/grub-core/net/bootp.c | 889 - thirdparty/grub-2.04/grub-core/net/dns.c | 778 - .../grub-core/net/drivers/efi/efinet.c | 404 - .../grub-core/net/drivers/emu/emunet.c | 116 - .../grub-core/net/drivers/i386/pc/pxe.c | 419 - .../grub-core/net/drivers/ieee1275/ofnet.c | 565 - .../grub-core/net/drivers/uboot/ubootnet.c | 161 - thirdparty/grub-2.04/grub-core/net/ethernet.c | 171 - thirdparty/grub-2.04/grub-core/net/http.c | 562 - thirdparty/grub-2.04/grub-core/net/icmp.c | 112 - thirdparty/grub-2.04/grub-core/net/icmp6.c | 679 - thirdparty/grub-2.04/grub-core/net/ip.c | 739 - thirdparty/grub-2.04/grub-core/net/net.c | 1815 - thirdparty/grub-2.04/grub-core/net/netbuff.c | 133 - thirdparty/grub-2.04/grub-core/net/tcp.c | 1020 - thirdparty/grub-2.04/grub-core/net/tftp.c | 504 - thirdparty/grub-2.04/grub-core/net/udp.c | 211 - thirdparty/grub-2.04/grub-core/normal/auth.c | 278 - .../grub-2.04/grub-core/normal/autofs.c | 148 - .../grub-2.04/grub-core/normal/charset.c | 1306 - .../grub-2.04/grub-core/normal/cmdline.c | 681 - thirdparty/grub-2.04/grub-core/normal/color.c | 145 - .../grub-2.04/grub-core/normal/completion.c | 527 - .../grub-2.04/grub-core/normal/context.c | 214 - .../grub-2.04/grub-core/normal/crypto.c | 163 - .../grub-2.04/grub-core/normal/datetime.c | 109 - .../grub-2.04/grub-core/normal/dyncmd.c | 210 - thirdparty/grub-2.04/grub-core/normal/main.c | 569 - thirdparty/grub-2.04/grub-core/normal/menu.c | 913 - .../grub-2.04/grub-core/normal/menu_entry.c | 1451 - .../grub-2.04/grub-core/normal/menu_text.c | 602 - thirdparty/grub-2.04/grub-core/normal/misc.c | 194 - thirdparty/grub-2.04/grub-core/normal/term.c | 1098 - .../grub-2.04/grub-core/osdep/apple/getroot.c | 109 - .../grub-core/osdep/apple/hostdisk.c | 95 - .../grub-2.04/grub-core/osdep/aros/config.c | 94 - .../grub-2.04/grub-core/osdep/aros/getroot.c | 228 - .../grub-2.04/grub-core/osdep/aros/hostdisk.c | 617 - .../grub-2.04/grub-core/osdep/aros/relpath.c | 75 - .../grub-core/osdep/basic/compress.c | 21 - .../grub-2.04/grub-core/osdep/basic/emunet.c | 50 - .../grub-2.04/grub-core/osdep/basic/getroot.c | 82 - .../grub-core/osdep/basic/hostdisk.c | 58 - .../grub-2.04/grub-core/osdep/basic/init.c | 38 - .../grub-core/osdep/basic/no_platform.c | 46 - .../grub-2.04/grub-core/osdep/basic/ofpath.c | 29 - .../grub-core/osdep/basic/platform.c | 32 - .../grub-2.04/grub-core/osdep/basic/random.c | 43 - .../grub-2.04/grub-core/osdep/blocklist.c | 7 - .../grub-2.04/grub-core/osdep/bsd/getroot.c | 204 - .../grub-2.04/grub-core/osdep/bsd/hostdisk.c | 130 - .../grub-2.04/grub-core/osdep/compress.c | 5 - thirdparty/grub-2.04/grub-core/osdep/config.c | 7 - .../grub-2.04/grub-core/osdep/cputime.c | 5 - .../grub-core/osdep/devmapper/getroot.c | 347 - .../grub-core/osdep/devmapper/hostdisk.c | 230 - thirdparty/grub-2.04/grub-core/osdep/dl.c | 5 - .../grub-2.04/grub-core/osdep/emuconsole.c | 5 - thirdparty/grub-2.04/grub-core/osdep/emunet.c | 5 - thirdparty/grub-2.04/grub-core/osdep/exec.c | 3 - .../grub-core/osdep/freebsd/getroot.c | 364 - .../grub-core/osdep/freebsd/hostdisk.c | 128 - .../grub-core/osdep/generic/blocklist.c | 132 - .../grub-2.04/grub-core/osdep/getroot.c | 22 - .../grub-2.04/grub-core/osdep/haiku/getroot.c | 105 - .../grub-core/osdep/haiku/hostdisk.c | 69 - .../grub-2.04/grub-core/osdep/hostdisk.c | 22 - .../grub-2.04/grub-core/osdep/hurd/getroot.c | 247 - .../grub-2.04/grub-core/osdep/hurd/hostdisk.c | 146 - thirdparty/grub-2.04/grub-core/osdep/init.c | 5 - .../grub-core/osdep/linux/blocklist.c | 136 - .../grub-2.04/grub-core/osdep/linux/emunet.c | 74 - .../grub-2.04/grub-core/osdep/linux/getroot.c | 1151 - .../grub-core/osdep/linux/hostdisk.c | 462 - .../grub-2.04/grub-core/osdep/linux/ofpath.c | 769 - .../grub-core/osdep/linux/platform.c | 156 - thirdparty/grub-2.04/grub-core/osdep/ofpath.c | 5 - .../grub-2.04/grub-core/osdep/password.c | 5 - .../grub-2.04/grub-core/osdep/platform.c | 9 - .../grub-2.04/grub-core/osdep/platform_unix.c | 3 - thirdparty/grub-2.04/grub-core/osdep/random.c | 10 - .../grub-2.04/grub-core/osdep/relpath.c | 7 - thirdparty/grub-2.04/grub-core/osdep/sleep.c | 5 - .../grub-2.04/grub-core/osdep/sun/getroot.c | 126 - .../grub-2.04/grub-core/osdep/sun/hostdisk.c | 73 - .../grub-2.04/grub-core/osdep/unix/compress.c | 41 - .../grub-2.04/grub-core/osdep/unix/config.c | 139 - .../grub-2.04/grub-core/osdep/unix/cputime.c | 22 - .../grub-2.04/grub-core/osdep/unix/dl.c | 61 - .../grub-core/osdep/unix/emuconsole.c | 184 - .../grub-2.04/grub-core/osdep/unix/exec.c | 245 - .../grub-2.04/grub-core/osdep/unix/getroot.c | 787 - .../grub-2.04/grub-core/osdep/unix/hostdisk.c | 316 - .../grub-2.04/grub-core/osdep/unix/password.c | 75 - .../grub-2.04/grub-core/osdep/unix/platform.c | 241 - .../grub-2.04/grub-core/osdep/unix/random.c | 48 - .../grub-2.04/grub-core/osdep/unix/relpath.c | 151 - .../grub-2.04/grub-core/osdep/unix/sleep.c | 30 - .../grub-core/osdep/windows/blocklist.c | 118 - .../grub-core/osdep/windows/config.c | 57 - .../grub-core/osdep/windows/cputime.c | 19 - .../grub-2.04/grub-core/osdep/windows/dl.c | 59 - .../grub-core/osdep/windows/emuconsole.c | 308 - .../grub-core/osdep/windows/getroot.c | 355 - .../grub-core/osdep/windows/hostdisk.c | 689 - .../grub-2.04/grub-core/osdep/windows/init.c | 190 - .../grub-core/osdep/windows/password.c | 51 - .../grub-core/osdep/windows/platform.c | 426 - .../grub-core/osdep/windows/random.c | 55 - .../grub-core/osdep/windows/relpath.c | 96 - .../grub-2.04/grub-core/osdep/windows/sleep.c | 31 - .../grub-2.04/grub-core/partmap/acorn.c | 154 - .../grub-2.04/grub-core/partmap/amiga.c | 183 - .../grub-2.04/grub-core/partmap/apple.c | 199 - .../grub-2.04/grub-core/partmap/bsdlabel.c | 271 - thirdparty/grub-2.04/grub-core/partmap/dfly.c | 132 - thirdparty/grub-2.04/grub-core/partmap/dvh.c | 127 - thirdparty/grub-2.04/grub-core/partmap/gpt.c | 231 - .../grub-2.04/grub-core/partmap/msdos.c | 431 - thirdparty/grub-2.04/grub-core/partmap/plan.c | 120 - thirdparty/grub-2.04/grub-core/partmap/sun.c | 154 - .../grub-2.04/grub-core/partmap/sunpc.c | 151 - .../grub-2.04/grub-core/parttool/msdospart.c | 162 - thirdparty/grub-2.04/grub-core/script/argv.c | 153 - .../grub-2.04/grub-core/script/execute.c | 1187 - .../grub-2.04/grub-core/script/function.c | 113 - thirdparty/grub-2.04/grub-core/script/lexer.c | 341 - thirdparty/grub-2.04/grub-core/script/main.c | 98 - .../grub-2.04/grub-core/script/parser.y | 355 - .../grub-2.04/grub-core/script/script.c | 396 - thirdparty/grub-2.04/grub-core/script/yylex.l | 393 - .../grub-2.04/grub-core/term/arc/console.c | 209 - .../grub-2.04/grub-core/term/arc/serial.c | 147 - .../grub-2.04/grub-core/term/arm/cros.c | 125 - .../grub-2.04/grub-core/term/arm/cros_ec.c | 238 - .../grub-2.04/grub-core/term/arm/pl050.c | 189 - .../grub-2.04/grub-core/term/at_keyboard.c | 332 - .../grub-2.04/grub-core/term/efi/console.c | 384 - .../grub-2.04/grub-core/term/efi/serial.c | 195 - thirdparty/grub-2.04/grub-core/term/gfxterm.c | 1151 - .../grub-core/term/gfxterm_background.c | 190 - .../grub-core/term/i386/coreboot/cbmemc.c | 147 - .../grub-core/term/i386/pc/console.c | 310 - .../grub-core/term/i386/pc/mda_text.c | 13 - .../grub-core/term/i386/pc/vga_text.c | 288 - .../grub-core/term/ieee1275/console.c | 267 - .../grub-2.04/grub-core/term/ieee1275/escc.c | 319 - .../grub-core/term/ieee1275/serial.c | 287 - thirdparty/grub-2.04/grub-core/term/morse.c | 133 - thirdparty/grub-2.04/grub-core/term/ns8250.c | 318 - thirdparty/grub-2.04/grub-core/term/ps2.c | 387 - thirdparty/grub-2.04/grub-core/term/serial.c | 463 - .../grub-2.04/grub-core/term/spkmodem.c | 141 - .../grub-2.04/grub-core/term/terminfo.c | 793 - thirdparty/grub-2.04/grub-core/term/tparm.c | 767 - .../grub-2.04/grub-core/term/uboot/console.c | 132 - .../grub-2.04/grub-core/term/usb_keyboard.c | 471 - .../grub-2.04/grub-core/term/xen/console.c | 122 - .../grub-core/tests/boot/kbsd.init-i386.S | 107 - .../grub-core/tests/boot/kbsd.init-x86_64.S | 94 - .../grub-core/tests/boot/kbsd.spec.txt | 3 - .../grub-core/tests/boot/kernel-8086.S | 50 - .../grub-core/tests/boot/kernel-i386.S | 72 - .../grub-core/tests/boot/kfreebsd-aout.cfg | 4 - .../grub-core/tests/boot/kfreebsd.cfg | 8 - .../grub-core/tests/boot/kfreebsd.init-i386.S | 109 - .../tests/boot/kfreebsd.init-x86_64.S | 90 - .../grub-core/tests/boot/knetbsd.cfg | 5 - .../grub-core/tests/boot/kopenbsd.cfg | 5 - .../grub-core/tests/boot/kopenbsdlabel.txt | 3 - .../grub-core/tests/boot/linux-ppc.cfg | 5 - .../grub-2.04/grub-core/tests/boot/linux.cfg | 5 - .../grub-core/tests/boot/linux.init-i386.S | 61 - .../grub-core/tests/boot/linux.init-mips.S | 61 - .../grub-core/tests/boot/linux.init-ppc.S | 61 - .../grub-core/tests/boot/linux.init-x86_64.S | 60 - .../grub-core/tests/boot/linux16.cfg | 5 - .../grub-core/tests/boot/multiboot.cfg | 4 - .../grub-core/tests/boot/multiboot2.cfg | 4 - .../grub-2.04/grub-core/tests/boot/ntldr.cfg | 4 - .../grub-core/tests/boot/pc-chainloader.cfg | 4 - .../grub-core/tests/boot/qemu-shutdown-x86.S | 17 - .../grub-2.04/grub-core/tests/bswap_test.c | 121 - .../grub-2.04/grub-core/tests/checksums.h | 129 - .../grub-core/tests/cmdline_cat_test.c | 125 - .../grub-2.04/grub-core/tests/cmp_test.c | 190 - .../grub-2.04/grub-core/tests/ctz_test.c | 111 - .../grub-2.04/grub-core/tests/div_test.c | 189 - .../grub-core/tests/example_functional_test.c | 38 - .../grub-2.04/grub-core/tests/fake_input.c | 75 - .../grub-2.04/grub-core/tests/gfxterm_menu.c | 180 - .../grub-core/tests/legacy_password_test.c | 68 - .../grub-core/tests/lib/functional_test.c | 105 - .../grub-2.04/grub-core/tests/lib/test.c | 239 - .../grub-2.04/grub-core/tests/mul_test.c | 73 - .../grub-2.04/grub-core/tests/pbkdf2_test.c | 97 - .../grub-2.04/grub-core/tests/setjmp_test.c | 80 - .../grub-2.04/grub-core/tests/shift_test.c | 157 - .../grub-core/tests/signature_test.c | 170 - .../grub-2.04/grub-core/tests/signatures.h | 211 - .../grub-2.04/grub-core/tests/sleep_test.c | 52 - .../grub-2.04/grub-core/tests/strtoull_test.c | 63 - .../grub-2.04/grub-core/tests/test_blockarg.c | 55 - .../grub-core/tests/video_checksum.c | 813 - .../grub-core/tests/videotest_checksum.c | 80 - .../grub-2.04/grub-core/tests/xnu_uuid_test.c | 58 - thirdparty/grub-2.04/grub-core/unidata.c | 1538 - thirdparty/grub-2.04/grub-core/video/bitmap.c | 231 - .../grub-2.04/grub-core/video/bitmap_scale.c | 515 - thirdparty/grub-2.04/grub-core/video/bochs.c | 439 - .../grub-2.04/grub-core/video/capture.c | 140 - thirdparty/grub-2.04/grub-core/video/cirrus.c | 520 - thirdparty/grub-2.04/grub-core/video/colors.c | 333 - .../grub-2.04/grub-core/video/coreboot/cbfb.c | 190 - .../grub-2.04/grub-core/video/efi_gop.c | 626 - .../grub-2.04/grub-core/video/efi_uga.c | 368 - .../grub-2.04/grub-core/video/emu/sdl.c | 252 - .../grub-2.04/grub-core/video/fb/fbblit.c | 2227 - .../grub-2.04/grub-core/video/fb/fbfill.c | 208 - .../grub-2.04/grub-core/video/fb/fbutil.c | 151 - .../grub-2.04/grub-core/video/fb/video_fb.c | 1683 - .../grub-2.04/grub-core/video/i386/pc/vbe.c | 1250 - .../grub-2.04/grub-core/video/i386/pc/vga.c | 404 - .../grub-2.04/grub-core/video/ieee1275.c | 370 - .../grub-core/video/radeon_fuloong2e.c | 239 - .../grub-core/video/radeon_yeeloong3a.c | 237 - .../grub-2.04/grub-core/video/readers/jpeg.c | 853 - .../grub-2.04/grub-core/video/readers/png.c | 1157 - .../grub-2.04/grub-core/video/readers/tga.c | 511 - .../grub-2.04/grub-core/video/sis315_init.c | 158 - .../grub-2.04/grub-core/video/sis315pro.c | 459 - thirdparty/grub-2.04/grub-core/video/sm712.c | 818 - .../grub-2.04/grub-core/video/sm712_init.c | 14 - thirdparty/grub-2.04/grub-core/video/video.c | 763 - .../grub-2.04/include/grub/acorn_filecore.h | 53 - thirdparty/grub-2.04/include/grub/acpi.h | 247 - thirdparty/grub-2.04/include/grub/aout.h | 129 - thirdparty/grub-2.04/include/grub/arc/arc.h | 284 - .../grub-2.04/include/grub/arc/console.h | 31 - thirdparty/grub-2.04/include/grub/archelp.h | 63 - .../include/grub/arm/coreboot/console.h | 29 - .../include/grub/arm/coreboot/kernel.h | 44 - .../grub-2.04/include/grub/arm/cros_ec.h | 21 - .../grub-2.04/include/grub/arm/efi/memory.h | 6 - thirdparty/grub-2.04/include/grub/arm/linux.h | 67 - thirdparty/grub-2.04/include/grub/arm/reloc.h | 51 - .../grub-2.04/include/grub/arm/setjmp.h | 27 - .../grub-2.04/include/grub/arm/startup.h | 16 - .../grub-2.04/include/grub/arm/system.h | 18 - thirdparty/grub-2.04/include/grub/arm/time.h | 29 - thirdparty/grub-2.04/include/grub/arm/types.h | 34 - .../grub-2.04/include/grub/arm/uboot/kernel.h | 32 - .../grub-2.04/include/grub/arm64/efi/memory.h | 6 - .../grub-2.04/include/grub/arm64/linux.h | 44 - .../grub-2.04/include/grub/arm64/reloc.h | 41 - .../grub-2.04/include/grub/arm64/setjmp.h | 27 - .../grub-2.04/include/grub/arm64/time.h | 29 - .../grub-2.04/include/grub/arm64/types.h | 34 - .../grub-2.04/include/grub/at_keyboard.h | 40 - thirdparty/grub-2.04/include/grub/ata.h | 225 - thirdparty/grub-2.04/include/grub/auth.h | 37 - thirdparty/grub-2.04/include/grub/autoefi.h | 64 - thirdparty/grub-2.04/include/grub/backtrace.h | 26 - thirdparty/grub-2.04/include/grub/bitmap.h | 87 - .../grub-2.04/include/grub/bitmap_scale.h | 85 - thirdparty/grub-2.04/include/grub/boottime.h | 0 thirdparty/grub-2.04/include/grub/bsdlabel.h | 106 - thirdparty/grub-2.04/include/grub/btrfs.h | 71 - thirdparty/grub-2.04/include/grub/bufio.h | 30 - thirdparty/grub-2.04/include/grub/cache.h | 56 - thirdparty/grub-2.04/include/grub/cbfs_core.h | 178 - thirdparty/grub-2.04/include/grub/charset.h | 323 - thirdparty/grub-2.04/include/grub/cmos.h | 128 - thirdparty/grub-2.04/include/grub/color.h | 30 - thirdparty/grub-2.04/include/grub/command.h | 129 - .../grub-2.04/include/grub/compiler-rt-emu.h | 260 - .../grub-2.04/include/grub/compiler-rt.h | 213 - thirdparty/grub-2.04/include/grub/compiler.h | 51 - .../grub-2.04/include/grub/coreboot/lbio.h | 114 - thirdparty/grub-2.04/include/grub/crypto.h | 423 - .../grub-2.04/include/grub/cryptodisk.h | 159 - thirdparty/grub-2.04/include/grub/cs5536.h | 198 - thirdparty/grub-2.04/include/grub/datetime.h | 133 - .../grub-2.04/include/grub/decompressor.h | 34 - thirdparty/grub-2.04/include/grub/deflate.h | 30 - thirdparty/grub-2.04/include/grub/device.h | 43 - thirdparty/grub-2.04/include/grub/disk.h | 262 - .../grub-2.04/include/grub/diskfilter.h | 218 - thirdparty/grub-2.04/include/grub/dl.h | 309 - thirdparty/grub-2.04/include/grub/dma.h | 44 - thirdparty/grub-2.04/include/grub/efi/api.h | 1761 - .../grub-2.04/include/grub/efi/console.h | 31 - .../include/grub/efi/console_control.h | 57 - thirdparty/grub-2.04/include/grub/efi/disk.h | 33 - thirdparty/grub-2.04/include/grub/efi/edid.h | 54 - thirdparty/grub-2.04/include/grub/efi/efi.h | 121 - .../grub-2.04/include/grub/efi/fdtload.h | 32 - .../include/grub/efi/graphics_output.h | 114 - .../grub-2.04/include/grub/efi/memory.h | 38 - thirdparty/grub-2.04/include/grub/efi/pci.h | 319 - thirdparty/grub-2.04/include/grub/efi/pe32.h | 334 - thirdparty/grub-2.04/include/grub/efi/tpm.h | 198 - .../grub-2.04/include/grub/efi/uga_draw.h | 76 - .../grub-2.04/include/grub/efiemu/efiemu.h | 286 - .../grub-2.04/include/grub/efiemu/runtime.h | 37 - thirdparty/grub-2.04/include/grub/elf.h | 2587 - thirdparty/grub-2.04/include/grub/elfload.h | 82 - .../grub-2.04/include/grub/emu/config.h | 48 - .../grub-2.04/include/grub/emu/console.h | 28 - thirdparty/grub-2.04/include/grub/emu/exec.h | 42 - .../grub-2.04/include/grub/emu/getroot.h | 104 - .../grub-2.04/include/grub/emu/hostdisk.h | 98 - .../grub-2.04/include/grub/emu/hostfile.h | 68 - thirdparty/grub-2.04/include/grub/emu/misc.h | 74 - thirdparty/grub-2.04/include/grub/emu/net.h | 37 - thirdparty/grub-2.04/include/grub/env.h | 72 - .../grub-2.04/include/grub/env_private.h | 46 - thirdparty/grub-2.04/include/grub/err.h | 97 - thirdparty/grub-2.04/include/grub/exfat.h | 53 - thirdparty/grub-2.04/include/grub/extcmd.h | 79 - thirdparty/grub-2.04/include/grub/fat.h | 77 - thirdparty/grub-2.04/include/grub/fbblit.h | 36 - thirdparty/grub-2.04/include/grub/fbfill.h | 59 - thirdparty/grub-2.04/include/grub/fbutil.h | 59 - thirdparty/grub-2.04/include/grub/fdt.h | 147 - thirdparty/grub-2.04/include/grub/fdtbus.h | 89 - thirdparty/grub-2.04/include/grub/file.h | 242 - thirdparty/grub-2.04/include/grub/fileid.h | 29 - thirdparty/grub-2.04/include/grub/font.h | 153 - .../grub-2.04/include/grub/fontformat.h | 38 - thirdparty/grub-2.04/include/grub/fs.h | 131 - thirdparty/grub-2.04/include/grub/fshelp.h | 91 - .../grub-2.04/include/grub/gcry/types.h | 37 - .../grub-2.04/include/grub/gcrypt/g10lib.h | 302 - .../grub-2.04/include/grub/gcrypt/gcrypt.h | 1746 - .../grub-2.04/include/grub/gcrypt/gpg-error.h | 32 - thirdparty/grub-2.04/include/grub/gdb.h | 39 - .../grub-2.04/include/grub/gfxmenu_model.h | 1 - .../grub-2.04/include/grub/gfxmenu_view.h | 124 - thirdparty/grub-2.04/include/grub/gfxterm.h | 51 - .../grub-2.04/include/grub/gfxwidgets.h | 50 - .../grub-2.04/include/grub/gpt_partition.h | 87 - thirdparty/grub-2.04/include/grub/gui.h | 282 - .../grub-2.04/include/grub/gui_string_util.h | 33 - thirdparty/grub-2.04/include/grub/hfs.h | 72 - thirdparty/grub-2.04/include/grub/hfsplus.h | 257 - thirdparty/grub-2.04/include/grub/i18n.h | 68 - .../grub-2.04/include/grub/i386/at_keyboard.h | 25 - thirdparty/grub-2.04/include/grub/i386/bsd.h | 128 - thirdparty/grub-2.04/include/grub/i386/cmos.h | 30 - .../include/grub/i386/coreboot/boot.h | 1 - .../include/grub/i386/coreboot/console.h | 32 - .../include/grub/i386/coreboot/kernel.h | 0 .../include/grub/i386/coreboot/memory.h | 54 - .../include/grub/i386/coreboot/serial.h | 24 - .../include/grub/i386/coreboot/time.h | 1 - .../grub-2.04/include/grub/i386/cpuid.h | 85 - .../grub-2.04/include/grub/i386/efi/kernel.h | 0 .../grub-2.04/include/grub/i386/efi/memory.h | 6 - .../grub-2.04/include/grub/i386/efi/serial.h | 1 - .../grub-2.04/include/grub/i386/efiemu.h | 33 - .../grub-2.04/include/grub/i386/floppy.h | 36 - .../include/grub/i386/freebsd_linker.h | 74 - .../include/grub/i386/freebsd_reboot.h | 77 - thirdparty/grub-2.04/include/grub/i386/gdb.h | 78 - .../include/grub/i386/ieee1275/ieee1275.h | 1 - .../include/grub/i386/ieee1275/kernel.h | 0 .../include/grub/i386/ieee1275/memory.h | 1 - .../include/grub/i386/ieee1275/serial.h | 1 - thirdparty/grub-2.04/include/grub/i386/io.h | 72 - .../grub-2.04/include/grub/i386/linux.h | 330 - .../grub-2.04/include/grub/i386/macho.h | 32 - .../grub-2.04/include/grub/i386/memory.h | 80 - .../grub-2.04/include/grub/i386/memory_raw.h | 58 - .../grub-2.04/include/grub/i386/multiboot.h | 58 - .../include/grub/i386/multiboot/boot.h | 1 - .../include/grub/i386/multiboot/console.h | 1 - .../include/grub/i386/multiboot/kernel.h | 1 - .../include/grub/i386/multiboot/memory.h | 1 - .../include/grub/i386/multiboot/serial.h | 1 - .../include/grub/i386/multiboot/time.h | 1 - .../include/grub/i386/netbsd_bootinfo.h | 156 - .../include/grub/i386/netbsd_reboot.h | 81 - .../include/grub/i386/openbsd_bootarg.h | 93 - .../include/grub/i386/openbsd_reboot.h | 79 - .../grub-2.04/include/grub/i386/pc/apm.h | 48 - .../grub-2.04/include/grub/i386/pc/biosdisk.h | 109 - .../grub-2.04/include/grub/i386/pc/biosnum.h | 6 - .../grub-2.04/include/grub/i386/pc/boot.h | 73 - .../include/grub/i386/pc/chainloader.h | 27 - .../grub-2.04/include/grub/i386/pc/console.h | 36 - .../grub-2.04/include/grub/i386/pc/int.h | 33 - .../include/grub/i386/pc/int_types.h | 59 - .../grub-2.04/include/grub/i386/pc/kernel.h | 41 - .../grub-2.04/include/grub/i386/pc/memory.h | 63 - .../grub-2.04/include/grub/i386/pc/pxe.h | 292 - .../grub-2.04/include/grub/i386/pc/time.h | 24 - .../grub-2.04/include/grub/i386/pc/vbe.h | 232 - .../include/grub/i386/pc/vesa_modes_table.h | 19 - thirdparty/grub-2.04/include/grub/i386/pci.h | 105 - thirdparty/grub-2.04/include/grub/i386/pit.h | 103 - .../grub-2.04/include/grub/i386/pmtimer.h | 37 - .../grub-2.04/include/grub/i386/qemu/boot.h | 25 - .../include/grub/i386/qemu/console.h | 1 - .../grub-2.04/include/grub/i386/qemu/kernel.h | 35 - .../grub-2.04/include/grub/i386/qemu/memory.h | 1 - .../grub-2.04/include/grub/i386/qemu/serial.h | 1 - .../grub-2.04/include/grub/i386/qemu/time.h | 1 - .../grub-2.04/include/grub/i386/rdmsr.h | 37 - .../grub-2.04/include/grub/i386/reboot.h | 28 - .../grub-2.04/include/grub/i386/relocator.h | 100 - .../include/grub/i386/relocator_private.h | 1 - .../grub-2.04/include/grub/i386/setjmp.h | 29 - thirdparty/grub-2.04/include/grub/i386/time.h | 29 - thirdparty/grub-2.04/include/grub/i386/tsc.h | 70 - .../grub-2.04/include/grub/i386/types.h | 33 - .../grub-2.04/include/grub/i386/wrmsr.h | 35 - .../include/grub/i386/xen/hypercall.h | 88 - .../grub-2.04/include/grub/i386/xen/kernel.h | 0 .../grub-2.04/include/grub/i386/xen/memory.h | 0 .../include/grub/i386/xen_pvh/boot.h | 1 - .../include/grub/i386/xen_pvh/console.h | 1 - .../grub-2.04/include/grub/i386/xen_pvh/int.h | 1 - .../include/grub/i386/xen_pvh/kernel.h | 30 - .../include/grub/i386/xen_pvh/memory.h | 1 - .../include/grub/i386/xen_pvh/time.h | 1 - thirdparty/grub-2.04/include/grub/i386/xnu.h | 149 - .../grub-2.04/include/grub/ia64/efi/memory.h | 6 - .../grub-2.04/include/grub/ia64/efi/time.h | 23 - .../grub-2.04/include/grub/ia64/kernel.h | 25 - .../grub-2.04/include/grub/ia64/reloc.h | 44 - .../grub-2.04/include/grub/ia64/setjmp.h | 28 - thirdparty/grub-2.04/include/grub/ia64/time.h | 28 - .../grub-2.04/include/grub/ia64/types.h | 32 - .../grub-2.04/include/grub/icon_manager.h | 41 - .../grub-2.04/include/grub/ieee1275/console.h | 34 - .../include/grub/ieee1275/ieee1275.h | 266 - .../grub-2.04/include/grub/ieee1275/obdisk.h | 25 - .../grub-2.04/include/grub/ieee1275/ofdisk.h | 25 - thirdparty/grub-2.04/include/grub/kernel.h | 131 - .../grub-2.04/include/grub/keyboard_layouts.h | 150 - .../grub-2.04/include/grub/legacy_parse.h | 32 - .../grub-2.04/include/grub/lib/LzFind.h | 130 - .../grub-2.04/include/grub/lib/LzHash.h | 77 - .../grub-2.04/include/grub/lib/LzmaDec.h | 246 - .../grub-2.04/include/grub/lib/LzmaEnc.h | 95 - .../grub-2.04/include/grub/lib/LzmaTypes.h | 151 - thirdparty/grub-2.04/include/grub/lib/arg.h | 79 - .../grub-2.04/include/grub/lib/cmdline.h | 32 - thirdparty/grub-2.04/include/grub/lib/crc.h | 25 - .../grub-2.04/include/grub/lib/envblk.h | 56 - .../grub-2.04/include/grub/lib/hexdump.h | 25 - .../grub-2.04/include/grub/libpciaccess.h | 26 - thirdparty/grub-2.04/include/grub/linux.h | 24 - thirdparty/grub-2.04/include/grub/list.h | 88 - thirdparty/grub-2.04/include/grub/loader.h | 78 - thirdparty/grub-2.04/include/grub/lvm.h | 90 - thirdparty/grub-2.04/include/grub/macho.h | 166 - thirdparty/grub-2.04/include/grub/machoload.h | 89 - thirdparty/grub-2.04/include/grub/memory.h | 87 - thirdparty/grub-2.04/include/grub/menu.h | 106 - .../grub-2.04/include/grub/menu_viewer.h | 48 - .../grub-2.04/include/grub/mips/arc/kernel.h | 2 - .../grub-2.04/include/grub/mips/arc/memory.h | 46 - .../grub-2.04/include/grub/mips/arc/time.h | 0 thirdparty/grub-2.04/include/grub/mips/asm.h | 18 - .../grub-2.04/include/grub/mips/at_keyboard.h | 1 - thirdparty/grub-2.04/include/grub/mips/cmos.h | 1 - thirdparty/grub-2.04/include/grub/mips/io.h | 62 - .../grub-2.04/include/grub/mips/kernel.h | 24 - .../grub-2.04/include/grub/mips/loongson.h | 86 - .../include/grub/mips/loongson/at_keyboard.h | 27 - .../include/grub/mips/loongson/cmos.h | 30 - .../grub-2.04/include/grub/mips/loongson/ec.h | 45 - .../include/grub/mips/loongson/kernel.h | 36 - .../include/grub/mips/loongson/memory.h | 51 - .../include/grub/mips/loongson/pci.h | 110 - .../include/grub/mips/loongson/serial.h | 33 - .../include/grub/mips/loongson/time.h | 27 - .../grub-2.04/include/grub/mips/memory.h | 60 - thirdparty/grub-2.04/include/grub/mips/mips.h | 30 - .../grub-2.04/include/grub/mips/multiboot.h | 31 - thirdparty/grub-2.04/include/grub/mips/pci.h | 1 - .../include/grub/mips/qemu_mips/at_keyboard.h | 25 - .../include/grub/mips/qemu_mips/cmos.h | 30 - .../include/grub/mips/qemu_mips/console.h | 25 - .../include/grub/mips/qemu_mips/kernel.h | 30 - .../include/grub/mips/qemu_mips/loader.h | 0 .../include/grub/mips/qemu_mips/memory.h | 50 - .../include/grub/mips/qemu_mips/serial.h | 24 - .../include/grub/mips/qemu_mips/time.h | 25 - .../grub-2.04/include/grub/mips/relocator.h | 38 - .../grub-2.04/include/grub/mips/setjmp.h | 27 - thirdparty/grub-2.04/include/grub/mips/time.h | 37 - .../grub-2.04/include/grub/mips/types.h | 38 - thirdparty/grub-2.04/include/grub/misc.h | 466 - thirdparty/grub-2.04/include/grub/mm.h | 77 - .../grub-2.04/include/grub/mm_private.h | 64 - .../grub-2.04/include/grub/module_verifier.h | 20 - .../grub-2.04/include/grub/msdos_partition.h | 127 - thirdparty/grub-2.04/include/grub/multiboot.h | 112 - .../grub-2.04/include/grub/multiboot2.h | 104 - .../grub-2.04/include/grub/multiboot_loader.h | 28 - thirdparty/grub-2.04/include/grub/net.h | 579 - thirdparty/grub-2.04/include/grub/net/arp.h | 32 - .../grub-2.04/include/grub/net/ethernet.h | 41 - thirdparty/grub-2.04/include/grub/net/ip.h | 98 - .../grub-2.04/include/grub/net/netbuff.h | 31 - thirdparty/grub-2.04/include/grub/net/tcp.h | 85 - thirdparty/grub-2.04/include/grub/net/udp.h | 51 - thirdparty/grub-2.04/include/grub/normal.h | 177 - thirdparty/grub-2.04/include/grub/ns8250.h | 80 - thirdparty/grub-2.04/include/grub/ntfs.h | 198 - thirdparty/grub-2.04/include/grub/offsets.h | 168 - .../grub-2.04/include/grub/osdep/hostfile.h | 7 - .../include/grub/osdep/hostfile_aros.h | 113 - .../include/grub/osdep/hostfile_unix.h | 112 - .../include/grub/osdep/hostfile_windows.h | 85 - thirdparty/grub-2.04/include/grub/parser.h | 96 - thirdparty/grub-2.04/include/grub/partition.h | 138 - thirdparty/grub-2.04/include/grub/parttool.h | 58 - thirdparty/grub-2.04/include/grub/pci.h | 152 - thirdparty/grub-2.04/include/grub/pciutils.h | 103 - .../include/grub/powerpc/ieee1275/ieee1275.h | 28 - .../grub-2.04/include/grub/powerpc/kernel.h | 22 - .../grub-2.04/include/grub/powerpc/memory.h | 47 - .../include/grub/powerpc/relocator.h | 37 - .../grub-2.04/include/grub/powerpc/setjmp.h | 27 - .../grub-2.04/include/grub/powerpc/time.h | 28 - .../grub-2.04/include/grub/powerpc/types.h | 32 - .../grub-2.04/include/grub/priority_queue.h | 44 - thirdparty/grub-2.04/include/grub/procfs.h | 51 - thirdparty/grub-2.04/include/grub/ps2.h | 43 - thirdparty/grub-2.04/include/grub/pubkey.h | 38 - thirdparty/grub-2.04/include/grub/random.h | 33 - thirdparty/grub-2.04/include/grub/reader.h | 29 - .../grub-2.04/include/grub/reed_solomon.h | 30 - thirdparty/grub-2.04/include/grub/relocator.h | 59 - .../include/grub/relocator_private.h | 113 - .../include/grub/riscv32/efi/memory.h | 6 - .../grub-2.04/include/grub/riscv32/linux.h | 41 - .../grub-2.04/include/grub/riscv32/setjmp.h | 27 - .../grub-2.04/include/grub/riscv32/time.h | 28 - .../grub-2.04/include/grub/riscv32/types.h | 34 - .../include/grub/riscv64/efi/memory.h | 6 - .../grub-2.04/include/grub/riscv64/linux.h | 43 - .../grub-2.04/include/grub/riscv64/setjmp.h | 27 - .../grub-2.04/include/grub/riscv64/time.h | 28 - .../grub-2.04/include/grub/riscv64/types.h | 34 - thirdparty/grub-2.04/include/grub/script_sh.h | 413 - thirdparty/grub-2.04/include/grub/scsi.h | 111 - thirdparty/grub-2.04/include/grub/scsicmd.h | 206 - thirdparty/grub-2.04/include/grub/sdl.h | 24 - thirdparty/grub-2.04/include/grub/search.h | 29 - thirdparty/grub-2.04/include/grub/serial.h | 205 - thirdparty/grub-2.04/include/grub/setjmp.h | 42 - thirdparty/grub-2.04/include/grub/smbus.h | 70 - .../include/grub/sparc64/ieee1275/boot.h | 62 - .../include/grub/sparc64/ieee1275/ieee1275.h | 50 - .../include/grub/sparc64/ieee1275/kernel.h | 31 - .../grub-2.04/include/grub/sparc64/setjmp.h | 29 - .../grub-2.04/include/grub/sparc64/time.h | 28 - .../grub-2.04/include/grub/sparc64/types.h | 32 - thirdparty/grub-2.04/include/grub/speaker.h | 47 - thirdparty/grub-2.04/include/grub/symbol.h | 72 - .../grub-2.04/include/grub/syslinux_parse.h | 37 - thirdparty/grub-2.04/include/grub/term.h | 465 - thirdparty/grub-2.04/include/grub/terminfo.h | 87 - thirdparty/grub-2.04/include/grub/test.h | 125 - thirdparty/grub-2.04/include/grub/time.h | 46 - thirdparty/grub-2.04/include/grub/tparm.h | 26 - thirdparty/grub-2.04/include/grub/tpm.h | 82 - thirdparty/grub-2.04/include/grub/trig.h | 44 - thirdparty/grub-2.04/include/grub/types.h | 322 - .../grub-2.04/include/grub/uboot/api_public.h | 181 - .../grub-2.04/include/grub/uboot/console.h | 29 - .../grub-2.04/include/grub/uboot/disk.h | 43 - .../grub-2.04/include/grub/uboot/image.h | 175 - .../grub-2.04/include/grub/uboot/uboot.h | 87 - thirdparty/grub-2.04/include/grub/udf.h | 30 - thirdparty/grub-2.04/include/grub/unicode.h | 360 - thirdparty/grub-2.04/include/grub/usb.h | 329 - thirdparty/grub-2.04/include/grub/usbdesc.h | 134 - thirdparty/grub-2.04/include/grub/usbserial.h | 39 - thirdparty/grub-2.04/include/grub/usbtrans.h | 155 - .../grub-2.04/include/grub/util/install.h | 268 - .../grub-2.04/include/grub/util/libnvpair.h | 38 - .../grub-2.04/include/grub/util/libzfs.h | 47 - thirdparty/grub-2.04/include/grub/util/misc.h | 52 - .../grub-2.04/include/grub/util/mkimage.h | 186 - .../grub-2.04/include/grub/util/ofpath.h | 6 - .../grub-2.04/include/grub/util/resolve.h | 36 - .../grub-2.04/include/grub/util/windows.h | 33 - thirdparty/grub-2.04/include/grub/verify.h | 84 - thirdparty/grub-2.04/include/grub/vga.h | 129 - thirdparty/grub-2.04/include/grub/vgaregs.h | 307 - thirdparty/grub-2.04/include/grub/video.h | 704 - thirdparty/grub-2.04/include/grub/video_fb.h | 151 - .../include/grub/x86_64/at_keyboard.h | 1 - .../grub-2.04/include/grub/x86_64/efi/boot.h | 0 .../include/grub/x86_64/efi/kernel.h | 0 .../include/grub/x86_64/efi/loader.h | 26 - .../include/grub/x86_64/efi/memory.h | 10 - .../include/grub/x86_64/efi/serial.h | 1 - thirdparty/grub-2.04/include/grub/x86_64/io.h | 19 - .../grub-2.04/include/grub/x86_64/linux.h | 19 - .../grub-2.04/include/grub/x86_64/macho.h | 1 - .../grub-2.04/include/grub/x86_64/memory.h | 1 - .../grub-2.04/include/grub/x86_64/multiboot.h | 1 - .../grub-2.04/include/grub/x86_64/pci.h | 19 - .../grub-2.04/include/grub/x86_64/relocator.h | 1 - .../grub-2.04/include/grub/x86_64/setjmp.h | 27 - .../grub-2.04/include/grub/x86_64/time.h | 29 - .../grub-2.04/include/grub/x86_64/types.h | 41 - .../include/grub/x86_64/xen/hypercall.h | 36 - .../grub-2.04/include/grub/x86_64/xnu.h | 1 - thirdparty/grub-2.04/include/grub/xen.h | 105 - .../grub-2.04/include/grub/xen/relocator.h | 46 - thirdparty/grub-2.04/include/grub/xen_file.h | 57 - thirdparty/grub-2.04/include/grub/xnu.h | 119 - thirdparty/grub-2.04/include/grub/zfs/dmu.h | 164 - .../grub-2.04/include/grub/zfs/dmu_objset.h | 43 - thirdparty/grub-2.04/include/grub/zfs/dnode.h | 74 - .../grub-2.04/include/grub/zfs/dsl_dataset.h | 52 - .../grub-2.04/include/grub/zfs/dsl_dir.h | 50 - .../grub-2.04/include/grub/zfs/sa_impl.h | 37 - thirdparty/grub-2.04/include/grub/zfs/spa.h | 328 - .../include/grub/zfs/uberblock_impl.h | 60 - .../grub-2.04/include/grub/zfs/vdev_impl.h | 69 - .../grub-2.04/include/grub/zfs/zap_impl.h | 109 - .../grub-2.04/include/grub/zfs/zap_leaf.h | 104 - thirdparty/grub-2.04/include/grub/zfs/zfs.h | 158 - .../grub-2.04/include/grub/zfs/zfs_acl.h | 59 - .../grub-2.04/include/grub/zfs/zfs_znode.h | 70 - thirdparty/grub-2.04/include/grub/zfs/zil.h | 56 - thirdparty/grub-2.04/include/grub/zfs/zio.h | 95 - .../grub-2.04/include/grub/zfs/zio_checksum.h | 33 - thirdparty/grub-2.04/include/multiboot.h | 274 - thirdparty/grub-2.04/include/multiboot2.h | 416 - .../include/xen/arch-x86/xen-x86_32.h | 169 - .../include/xen/arch-x86/xen-x86_64.h | 202 - .../grub-2.04/include/xen/arch-x86/xen.h | 280 - thirdparty/grub-2.04/include/xen/elfnote.h | 281 - .../grub-2.04/include/xen/event_channel.h | 381 - .../grub-2.04/include/xen/grant_table.h | 662 - thirdparty/grub-2.04/include/xen/hvm/hvm_op.h | 296 - thirdparty/grub-2.04/include/xen/hvm/params.h | 284 - .../grub-2.04/include/xen/hvm/start_info.h | 98 - thirdparty/grub-2.04/include/xen/io/blkif.h | 608 - thirdparty/grub-2.04/include/xen/io/console.h | 51 - .../grub-2.04/include/xen/io/protocols.h | 40 - thirdparty/grub-2.04/include/xen/io/ring.h | 312 - thirdparty/grub-2.04/include/xen/io/xenbus.h | 80 - thirdparty/grub-2.04/include/xen/io/xs_wire.h | 138 - thirdparty/grub-2.04/include/xen/memory.h | 665 - thirdparty/grub-2.04/include/xen/physdev.h | 387 - thirdparty/grub-2.04/include/xen/sched.h | 174 - thirdparty/grub-2.04/include/xen/trace.h | 339 - thirdparty/grub-2.04/include/xen/xen-compat.h | 44 - thirdparty/grub-2.04/include/xen/xen.h | 998 - thirdparty/grub-2.04/linguas.sh | 20 - thirdparty/grub-2.04/m4/00gnulib.m4 | 46 - thirdparty/grub-2.04/m4/__inline.m4 | 22 - thirdparty/grub-2.04/m4/absolute-header.m4 | 102 - thirdparty/grub-2.04/m4/alloca.m4 | 121 - thirdparty/grub-2.04/m4/argp.m4 | 62 - thirdparty/grub-2.04/m4/btowc.m4 | 120 - thirdparty/grub-2.04/m4/builtin-expect.m4 | 49 - thirdparty/grub-2.04/m4/chdir-long.m4 | 30 - thirdparty/grub-2.04/m4/close.m4 | 35 - thirdparty/grub-2.04/m4/codeset.m4 | 24 - thirdparty/grub-2.04/m4/dirent_h.m4 | 64 - thirdparty/grub-2.04/m4/dirfd.m4 | 86 - thirdparty/grub-2.04/m4/dirname.m4 | 19 - thirdparty/grub-2.04/m4/double-slash-root.m4 | 38 - thirdparty/grub-2.04/m4/dup2.m4 | 117 - thirdparty/grub-2.04/m4/eealloc.m4 | 31 - thirdparty/grub-2.04/m4/errno_h.m4 | 133 - thirdparty/grub-2.04/m4/error.m4 | 27 - thirdparty/grub-2.04/m4/exponentd.m4 | 116 - thirdparty/grub-2.04/m4/extensions.m4 | 189 - thirdparty/grub-2.04/m4/extern-inline.m4 | 114 - thirdparty/grub-2.04/m4/fchdir.m4 | 65 - thirdparty/grub-2.04/m4/fcntl-o.m4 | 139 - thirdparty/grub-2.04/m4/fcntl.m4 | 126 - thirdparty/grub-2.04/m4/fcntl_h.m4 | 50 - thirdparty/grub-2.04/m4/filenamecat.m4 | 16 - thirdparty/grub-2.04/m4/flexmember.m4 | 46 - thirdparty/grub-2.04/m4/float_h.m4 | 108 - thirdparty/grub-2.04/m4/fnmatch.m4 | 147 - thirdparty/grub-2.04/m4/fnmatch_h.m4 | 75 - thirdparty/grub-2.04/m4/fstat.m4 | 39 - thirdparty/grub-2.04/m4/getcwd.m4 | 162 - thirdparty/grub-2.04/m4/getdelim.m4 | 90 - thirdparty/grub-2.04/m4/getdtablesize.m4 | 60 - thirdparty/grub-2.04/m4/getline.m4 | 99 - thirdparty/grub-2.04/m4/getopt.m4 | 379 - thirdparty/grub-2.04/m4/getprogname.m4 | 43 - thirdparty/grub-2.04/m4/gettext.m4 | 401 - thirdparty/grub-2.04/m4/glibc2.m4 | 31 - thirdparty/grub-2.04/m4/glibc21.m4 | 34 - thirdparty/grub-2.04/m4/gnulib-cache.m4 | 81 - thirdparty/grub-2.04/m4/gnulib-common.m4 | 394 - thirdparty/grub-2.04/m4/gnulib-comp.m4 | 1004 - thirdparty/grub-2.04/m4/gnulib-tool.m4 | 57 - thirdparty/grub-2.04/m4/host-cpu-c-abi.m4 | 644 - thirdparty/grub-2.04/m4/iconv.m4 | 268 - thirdparty/grub-2.04/m4/include_next.m4 | 224 - thirdparty/grub-2.04/m4/intdiv0.m4 | 87 - thirdparty/grub-2.04/m4/intl.m4 | 272 - thirdparty/grub-2.04/m4/intldir.m4 | 19 - thirdparty/grub-2.04/m4/intlmacosx.m4 | 56 - thirdparty/grub-2.04/m4/intmax.m4 | 36 - thirdparty/grub-2.04/m4/intmax_t.m4 | 67 - thirdparty/grub-2.04/m4/inttypes-pri.m4 | 42 - thirdparty/grub-2.04/m4/inttypes_h.m4 | 29 - thirdparty/grub-2.04/m4/langinfo_h.m4 | 120 - thirdparty/grub-2.04/m4/largefile.m4 | 161 - thirdparty/grub-2.04/m4/lcmessage.m4 | 35 - thirdparty/grub-2.04/m4/lib-ld.m4 | 168 - thirdparty/grub-2.04/m4/lib-link.m4 | 774 - thirdparty/grub-2.04/m4/lib-prefix.m4 | 249 - thirdparty/grub-2.04/m4/libunistring-base.m4 | 141 - thirdparty/grub-2.04/m4/limits-h.m4 | 43 - thirdparty/grub-2.04/m4/localcharset.m4 | 11 - thirdparty/grub-2.04/m4/locale-fr.m4 | 257 - thirdparty/grub-2.04/m4/locale-ja.m4 | 145 - thirdparty/grub-2.04/m4/locale-zh.m4 | 139 - thirdparty/grub-2.04/m4/locale_h.m4 | 127 - thirdparty/grub-2.04/m4/localeconv.m4 | 22 - thirdparty/grub-2.04/m4/lock.m4 | 47 - thirdparty/grub-2.04/m4/longlong.m4 | 113 - thirdparty/grub-2.04/m4/lstat.m4 | 79 - thirdparty/grub-2.04/m4/malloc.m4 | 101 - thirdparty/grub-2.04/m4/malloca.m4 | 15 - thirdparty/grub-2.04/m4/math_h.m4 | 366 - thirdparty/grub-2.04/m4/mbrtowc.m4 | 672 - thirdparty/grub-2.04/m4/mbsinit.m4 | 51 - thirdparty/grub-2.04/m4/mbsrtowcs.m4 | 155 - thirdparty/grub-2.04/m4/mbstate_t.m4 | 41 - thirdparty/grub-2.04/m4/mbswidth.m4 | 46 - thirdparty/grub-2.04/m4/mbtowc.m4 | 19 - thirdparty/grub-2.04/m4/memchr.m4 | 99 - thirdparty/grub-2.04/m4/mempcpy.m4 | 26 - thirdparty/grub-2.04/m4/memrchr.m4 | 23 - thirdparty/grub-2.04/m4/mmap-anon.m4 | 55 - thirdparty/grub-2.04/m4/mode_t.m4 | 26 - thirdparty/grub-2.04/m4/msvc-inval.m4 | 19 - thirdparty/grub-2.04/m4/msvc-nothrow.m4 | 10 - thirdparty/grub-2.04/m4/multiarch.m4 | 62 - thirdparty/grub-2.04/m4/nl_langinfo.m4 | 53 - thirdparty/grub-2.04/m4/nls.m4 | 32 - thirdparty/grub-2.04/m4/nocrash.m4 | 131 - thirdparty/grub-2.04/m4/off_t.m4 | 18 - thirdparty/grub-2.04/m4/open-cloexec.m4 | 21 - thirdparty/grub-2.04/m4/open.m4 | 95 - thirdparty/grub-2.04/m4/openat.m4 | 38 - thirdparty/grub-2.04/m4/pathmax.m4 | 42 - thirdparty/grub-2.04/m4/po.m4 | 453 - thirdparty/grub-2.04/m4/printf-posix.m4 | 48 - thirdparty/grub-2.04/m4/printf.m4 | 1632 - thirdparty/grub-2.04/m4/progtest.m4 | 91 - .../grub-2.04/m4/pthread_rwlock_rdlock.m4 | 165 - thirdparty/grub-2.04/m4/rawmemchr.m4 | 20 - thirdparty/grub-2.04/m4/realloc.m4 | 79 - thirdparty/grub-2.04/m4/regex.m4 | 311 - thirdparty/grub-2.04/m4/save-cwd.m4 | 11 - thirdparty/grub-2.04/m4/size_max.m4 | 75 - thirdparty/grub-2.04/m4/sleep.m4 | 64 - thirdparty/grub-2.04/m4/ssize_t.m4 | 23 - thirdparty/grub-2.04/m4/stat-time.m4 | 83 - thirdparty/grub-2.04/m4/stat.m4 | 74 - thirdparty/grub-2.04/m4/stdalign.m4 | 57 - thirdparty/grub-2.04/m4/stdbool.m4 | 108 - thirdparty/grub-2.04/m4/stddef_h.m4 | 72 - thirdparty/grub-2.04/m4/stdint.m4 | 544 - thirdparty/grub-2.04/m4/stdint_h.m4 | 27 - thirdparty/grub-2.04/m4/stdio_h.m4 | 225 - thirdparty/grub-2.04/m4/stdlib_h.m4 | 127 - thirdparty/grub-2.04/m4/strcase.m4 | 45 - thirdparty/grub-2.04/m4/strchrnul.m4 | 50 - thirdparty/grub-2.04/m4/strdup.m4 | 36 - thirdparty/grub-2.04/m4/strerror.m4 | 98 - thirdparty/grub-2.04/m4/string_h.m4 | 122 - thirdparty/grub-2.04/m4/strings_h.m4 | 52 - thirdparty/grub-2.04/m4/strndup.m4 | 58 - thirdparty/grub-2.04/m4/strnlen.m4 | 30 - thirdparty/grub-2.04/m4/sys_socket_h.m4 | 176 - thirdparty/grub-2.04/m4/sys_stat_h.m4 | 100 - thirdparty/grub-2.04/m4/sys_types_h.m4 | 60 - thirdparty/grub-2.04/m4/sysexits.m4 | 44 - thirdparty/grub-2.04/m4/threadlib.m4 | 473 - thirdparty/grub-2.04/m4/time_h.m4 | 144 - thirdparty/grub-2.04/m4/uintmax_t.m4 | 30 - thirdparty/grub-2.04/m4/unistd-safer.m4 | 10 - thirdparty/grub-2.04/m4/unistd_h.m4 | 197 - thirdparty/grub-2.04/m4/vasnprintf.m4 | 291 - thirdparty/grub-2.04/m4/visibility.m4 | 77 - thirdparty/grub-2.04/m4/vsnprintf.m4 | 62 - thirdparty/grub-2.04/m4/warn-on-use.m4 | 51 - thirdparty/grub-2.04/m4/wchar_h.m4 | 240 - thirdparty/grub-2.04/m4/wchar_t.m4 | 24 - thirdparty/grub-2.04/m4/wcrtomb.m4 | 114 - thirdparty/grub-2.04/m4/wctype_h.m4 | 212 - thirdparty/grub-2.04/m4/wcwidth.m4 | 123 - thirdparty/grub-2.04/m4/wint_t.m4 | 74 - thirdparty/grub-2.04/m4/xsize.m4 | 12 - thirdparty/grub-2.04/po/LINGUAS | 1 - thirdparty/grub-2.04/po/Makefile.in.in | 454 - thirdparty/grub-2.04/po/Makevars | 60 - thirdparty/grub-2.04/po/POTFILES.in | 1464 - thirdparty/grub-2.04/po/Rules-piglatin | 41 - thirdparty/grub-2.04/po/Rules-quot | 47 - thirdparty/grub-2.04/po/Rules-swiss | 7 - thirdparty/grub-2.04/po/ast.gmo | Bin 125170 -> 0 bytes thirdparty/grub-2.04/po/ast.po | 6916 -- thirdparty/grub-2.04/po/boldquot.sed | 10 - thirdparty/grub-2.04/po/ca.gmo | Bin 124490 -> 0 bytes thirdparty/grub-2.04/po/ca.po | 7303 -- thirdparty/grub-2.04/po/da.gmo | Bin 115974 -> 0 bytes thirdparty/grub-2.04/po/da.po | 7026 -- thirdparty/grub-2.04/po/de.gmo | Bin 125389 -> 0 bytes thirdparty/grub-2.04/po/de.po | 6657 -- thirdparty/grub-2.04/po/de@hebrew.gmo | Bin 188625 -> 0 bytes thirdparty/grub-2.04/po/de@hebrew.po | 6652 -- thirdparty/grub-2.04/po/de_CH.gmo | Bin 125396 -> 0 bytes thirdparty/grub-2.04/po/de_CH.po | 6657 -- thirdparty/grub-2.04/po/en@arabic.gmo | Bin 156178 -> 0 bytes thirdparty/grub-2.04/po/en@arabic.po | 6579 -- thirdparty/grub-2.04/po/en@boldquot.header | 25 - thirdparty/grub-2.04/po/en@cyrillic.gmo | Bin 147274 -> 0 bytes thirdparty/grub-2.04/po/en@cyrillic.po | 6578 -- thirdparty/grub-2.04/po/en@greek.gmo | Bin 147271 -> 0 bytes thirdparty/grub-2.04/po/en@greek.po | 6578 -- thirdparty/grub-2.04/po/en@hebrew.gmo | Bin 169046 -> 0 bytes thirdparty/grub-2.04/po/en@hebrew.po | 6579 -- thirdparty/grub-2.04/po/en@piglatin.gmo | Bin 130402 -> 0 bytes thirdparty/grub-2.04/po/en@piglatin.header | 4 - thirdparty/grub-2.04/po/en@piglatin.po | 6726 -- thirdparty/grub-2.04/po/en@quot.gmo | Bin 115158 -> 0 bytes thirdparty/grub-2.04/po/en@quot.header | 22 - thirdparty/grub-2.04/po/en@quot.po | 6600 -- thirdparty/grub-2.04/po/eo.gmo | Bin 43102 -> 0 bytes thirdparty/grub-2.04/po/eo.po | 6590 -- thirdparty/grub-2.04/po/es.gmo | Bin 128251 -> 0 bytes thirdparty/grub-2.04/po/es.po | 7158 -- thirdparty/grub-2.04/po/exclude.pot | 7497 --- thirdparty/grub-2.04/po/fi.gmo | Bin 121954 -> 0 bytes thirdparty/grub-2.04/po/fi.po | 7365 -- thirdparty/grub-2.04/po/fr.gmo | Bin 131767 -> 0 bytes thirdparty/grub-2.04/po/fr.po | 7173 -- thirdparty/grub-2.04/po/gl.gmo | Bin 100957 -> 0 bytes thirdparty/grub-2.04/po/gl.po | 7046 -- thirdparty/grub-2.04/po/grub.pot | 6408 -- thirdparty/grub-2.04/po/hr.gmo | Bin 122158 -> 0 bytes thirdparty/grub-2.04/po/hr.po | 6885 -- thirdparty/grub-2.04/po/hu.gmo | Bin 125545 -> 0 bytes thirdparty/grub-2.04/po/hu.po | 7106 -- thirdparty/grub-2.04/po/id.gmo | Bin 28233 -> 0 bytes thirdparty/grub-2.04/po/id.po | 7475 --- thirdparty/grub-2.04/po/insert-header.sin | 23 - thirdparty/grub-2.04/po/it.gmo | Bin 122744 -> 0 bytes thirdparty/grub-2.04/po/it.po | 6683 -- thirdparty/grub-2.04/po/ja.gmo | Bin 22140 -> 0 bytes thirdparty/grub-2.04/po/ja.po | 6930 -- thirdparty/grub-2.04/po/ko.gmo | Bin 19698 -> 0 bytes thirdparty/grub-2.04/po/ko.po | 6824 -- thirdparty/grub-2.04/po/lt.gmo | Bin 98246 -> 0 bytes thirdparty/grub-2.04/po/lt.po | 6815 -- thirdparty/grub-2.04/po/nb.gmo | Bin 120117 -> 0 bytes thirdparty/grub-2.04/po/nb.po | 6890 -- thirdparty/grub-2.04/po/nl.gmo | Bin 120556 -> 0 bytes thirdparty/grub-2.04/po/nl.po | 7591 --- thirdparty/grub-2.04/po/pa.gmo | Bin 60190 -> 0 bytes thirdparty/grub-2.04/po/pa.po | 6637 -- thirdparty/grub-2.04/po/piglatin.sed | 21 - thirdparty/grub-2.04/po/pl.gmo | Bin 125159 -> 0 bytes thirdparty/grub-2.04/po/pl.po | 6651 -- thirdparty/grub-2.04/po/pt.gmo | Bin 123717 -> 0 bytes thirdparty/grub-2.04/po/pt.po | 6636 -- thirdparty/grub-2.04/po/pt_BR.gmo | Bin 82223 -> 0 bytes thirdparty/grub-2.04/po/pt_BR.po | 6940 -- thirdparty/grub-2.04/po/quot.sed | 6 - thirdparty/grub-2.04/po/remove-potcdate.sin | 19 - thirdparty/grub-2.04/po/ro.gmo | Bin 5328 -> 0 bytes thirdparty/grub-2.04/po/ro.po | 6422 -- thirdparty/grub-2.04/po/ru.gmo | Bin 161186 -> 0 bytes thirdparty/grub-2.04/po/ru.po | 7531 --- thirdparty/grub-2.04/po/sl.gmo | Bin 91780 -> 0 bytes thirdparty/grub-2.04/po/sl.po | 7144 -- thirdparty/grub-2.04/po/sr.gmo | Bin 154841 -> 0 bytes thirdparty/grub-2.04/po/sr.po | 6912 -- thirdparty/grub-2.04/po/stamp-po | 1 - thirdparty/grub-2.04/po/sv.gmo | Bin 120421 -> 0 bytes thirdparty/grub-2.04/po/sv.po | 6886 -- thirdparty/grub-2.04/po/swiss.sed | 7 - thirdparty/grub-2.04/po/tr.gmo | Bin 80617 -> 0 bytes thirdparty/grub-2.04/po/tr.po | 6762 -- thirdparty/grub-2.04/po/uk.gmo | Bin 167350 -> 0 bytes thirdparty/grub-2.04/po/uk.po | 7109 -- thirdparty/grub-2.04/po/vi.gmo | Bin 132868 -> 0 bytes thirdparty/grub-2.04/po/vi.po | 7071 -- thirdparty/grub-2.04/po/zh_CN.gmo | Bin 84929 -> 0 bytes thirdparty/grub-2.04/po/zh_CN.po | 7408 --- thirdparty/grub-2.04/po/zh_TW.gmo | Bin 29789 -> 0 bytes thirdparty/grub-2.04/po/zh_TW.po | 6812 -- thirdparty/grub-2.04/stamp-h.in | 1 - thirdparty/grub-2.04/tests/ahci_test.in | 53 - thirdparty/grub-2.04/tests/btrfs_test.in | 25 - thirdparty/grub-2.04/tests/cdboot_test.in | 39 - thirdparty/grub-2.04/tests/cmp_unit_test.c | 226 - .../grub-2.04/tests/core_compress_test.in | 36 - thirdparty/grub-2.04/tests/cpio_test.in | 16 - thirdparty/grub-2.04/tests/date_unit_test.c | 76 - .../tests/dfly-mbr-mbexample.dfly.img.gz | Bin 124 -> 0 bytes .../tests/dfly-mbr-mbexample.mbr.img.gz | Bin 41 -> 0 bytes thirdparty/grub-2.04/tests/ehci_test.in | 51 - .../tests/example_grub_script_test.in | 3 - .../grub-2.04/tests/example_scripted_test.in | 4 - .../grub-2.04/tests/example_unit_test.c | 38 - thirdparty/grub-2.04/tests/exfat_test.in | 18 - thirdparty/grub-2.04/tests/ext234_test.in | 33 - thirdparty/grub-2.04/tests/f2fs_test.in | 19 - thirdparty/grub-2.04/tests/fat_test.in | 22 - thirdparty/grub-2.04/tests/fddboot_test.in | 51 - thirdparty/grub-2.04/tests/file_filter/file | 1 - .../grub-2.04/tests/file_filter/file.gz | Bin 33 -> 0 bytes .../grub-2.04/tests/file_filter/file.gz.sig | Bin 96 -> 0 bytes .../grub-2.04/tests/file_filter/file.lzop | Bin 67 -> 0 bytes .../grub-2.04/tests/file_filter/file.lzop.sig | Bin 96 -> 0 bytes .../grub-2.04/tests/file_filter/file.xz | Bin 72 -> 0 bytes .../grub-2.04/tests/file_filter/file.xz.sig | Bin 96 -> 0 bytes thirdparty/grub-2.04/tests/file_filter/keys | Bin 994 -> 0 bytes .../grub-2.04/tests/file_filter/keys.pub | Bin 990 -> 0 bytes .../grub-2.04/tests/file_filter/test.cfg | 6 - .../grub-2.04/tests/file_filter_test.in | 76 - .../grub-2.04/tests/gettext_strings_test.in | 20 - thirdparty/grub-2.04/tests/grub_cmd_date.in | 29 - thirdparty/grub-2.04/tests/grub_cmd_echo.in | 41 - thirdparty/grub-2.04/tests/grub_cmd_regexp.in | 42 - .../grub-2.04/tests/grub_cmd_set_date.in | 35 - thirdparty/grub-2.04/tests/grub_cmd_sleep.in | 25 - thirdparty/grub-2.04/tests/grub_cmd_test.in | 67 - thirdparty/grub-2.04/tests/grub_cmd_tr.in | 62 - thirdparty/grub-2.04/tests/grub_func_test.in | 21 - .../grub-2.04/tests/grub_script_blanklines.in | 15 - .../grub-2.04/tests/grub_script_blockarg.in | 41 - .../grub-2.04/tests/grub_script_break.in | 86 - .../grub-2.04/tests/grub_script_comments.in | 28 - .../grub-2.04/tests/grub_script_continue.in | 86 - .../grub-2.04/tests/grub_script_dollar.in | 6 - .../grub-2.04/tests/grub_script_echo1.in | 183 - .../tests/grub_script_echo_keywords.in | 3 - .../tests/grub_script_escape_comma.in | 18 - .../grub-2.04/tests/grub_script_eval.in | 6 - .../grub-2.04/tests/grub_script_expansion.in | 43 - .../tests/grub_script_final_semicolon.in | 11 - .../grub-2.04/tests/grub_script_for1.in | 27 - .../grub-2.04/tests/grub_script_functions.in | 147 - .../grub-2.04/tests/grub_script_gettext.in | 69 - thirdparty/grub-2.04/tests/grub_script_if.in | 31 - .../tests/grub_script_leading_whitespace.in | 4 - .../tests/grub_script_no_commands.in | 21 - thirdparty/grub-2.04/tests/grub_script_not.in | 62 - .../grub-2.04/tests/grub_script_return.in | 134 - .../grub-2.04/tests/grub_script_setparams.in | 59 - .../grub-2.04/tests/grub_script_shift.in | 85 - .../grub-2.04/tests/grub_script_strcmp.in | 22 - .../grub-2.04/tests/grub_script_test.in | 15 - .../grub-2.04/tests/grub_script_vars1.in | 34 - .../grub-2.04/tests/grub_script_while1.in | 32 - thirdparty/grub-2.04/tests/gzcompress_test.in | 29 - thirdparty/grub-2.04/tests/hddboot_test.in | 37 - thirdparty/grub-2.04/tests/help_test.in | 16 - thirdparty/grub-2.04/tests/hfs_test.in | 23 - thirdparty/grub-2.04/tests/hfsplus_test.in | 20 - thirdparty/grub-2.04/tests/iso9660_test.in | 15 - thirdparty/grub-2.04/tests/jfs_test.in | 18 - thirdparty/grub-2.04/tests/lib/unit_test.c | 42 - .../grub-2.04/tests/lzocompress_test.in | 29 - thirdparty/grub-2.04/tests/minixfs_test.in | 35 - thirdparty/grub-2.04/tests/netboot_test.in | 45 - thirdparty/grub-2.04/tests/nilfs2_test.in | 18 - thirdparty/grub-2.04/tests/ntfs_test.in | 24 - thirdparty/grub-2.04/tests/ohci_test.in | 51 - thirdparty/grub-2.04/tests/partmap_test.in | 489 - thirdparty/grub-2.04/tests/pata_test.in | 55 - thirdparty/grub-2.04/tests/printf_unit_test.c | 78 - .../tests/priority_queue_unit_test.cc | 105 - thirdparty/grub-2.04/tests/pseries_test.in | 37 - thirdparty/grub-2.04/tests/reiserfs_test.in | 20 - thirdparty/grub-2.04/tests/romfs_test.in | 10 - thirdparty/grub-2.04/tests/squashfs_test.in | 12 - .../syslinux/ubuntu10.04/isolinux/adtxt.cfg | 0 .../syslinux/ubuntu10.04/isolinux/dtmenu.cfg | 52 - .../ubuntu10.04/isolinux/exithelp.cfg | 3 - .../syslinux/ubuntu10.04/isolinux/gfxboot.cfg | 12 - .../ubuntu10.04/isolinux/isolinux.cfg | 6 - .../syslinux/ubuntu10.04/isolinux/menu.cfg | 23 - .../syslinux/ubuntu10.04/isolinux/po4a.cfg | 3 - .../syslinux/ubuntu10.04/isolinux/prompt.cfg | 16 - .../syslinux/ubuntu10.04/isolinux/rqtxt.cfg | 4 - .../syslinux/ubuntu10.04/isolinux/stdmenu.cfg | 15 - .../syslinux/ubuntu10.04/isolinux/txt.cfg | 19 - .../tests/syslinux/ubuntu10.04_grub.cfg.in | 236 - thirdparty/grub-2.04/tests/syslinux_test.in | 16 - thirdparty/grub-2.04/tests/tar_test.in | 10 - thirdparty/grub-2.04/tests/test_sha512sum.in | 36 - thirdparty/grub-2.04/tests/test_unset.in | 10 - thirdparty/grub-2.04/tests/udf_test.in | 19 - thirdparty/grub-2.04/tests/uhci_test.in | 51 - .../grub-2.04/tests/util/grub-fs-tester.in | 1572 - .../grub-2.04/tests/util/grub-shell-tester.in | 106 - thirdparty/grub-2.04/tests/util/grub-shell.in | 517 - thirdparty/grub-2.04/tests/xfs_test.in | 20 - thirdparty/grub-2.04/tests/xzcompress_test.in | 29 - thirdparty/grub-2.04/tests/zfs_test.in | 27 - .../themes/starfield/COPYING.CC-BY-SA-3.0 | 65 - thirdparty/grub-2.04/themes/starfield/README | 36 - .../grub-2.04/themes/starfield/blob_w.png | Bin 836 -> 0 bytes .../themes/starfield/boot_menu_c.png | Bin 178 -> 0 bytes .../themes/starfield/boot_menu_e.png | Bin 193 -> 0 bytes .../themes/starfield/boot_menu_n.png | Bin 103 -> 0 bytes .../themes/starfield/boot_menu_ne.png | Bin 193 -> 0 bytes .../themes/starfield/boot_menu_nw.png | Bin 184 -> 0 bytes .../themes/starfield/boot_menu_s.png | Bin 102 -> 0 bytes .../themes/starfield/boot_menu_se.png | Bin 198 -> 0 bytes .../themes/starfield/boot_menu_sw.png | Bin 196 -> 0 bytes .../themes/starfield/boot_menu_w.png | Bin 96 -> 0 bytes .../grub-2.04/themes/starfield/slider_c.png | Bin 197 -> 0 bytes .../grub-2.04/themes/starfield/slider_n.png | Bin 265 -> 0 bytes .../grub-2.04/themes/starfield/slider_s.png | Bin 269 -> 0 bytes .../themes/starfield/src/blob_nw.xcf | Bin 2666 -> 0 bytes .../themes/starfield/src/bootmenu/center.xcf | Bin 649 -> 0 bytes .../themes/starfield/src/bootmenu/corner.xcf | Bin 783 -> 0 bytes .../themes/starfield/src/bootmenu/side.xcf | Bin 659 -> 0 bytes .../themes/starfield/src/slider_c.xcf | Bin 693 -> 0 bytes .../themes/starfield/src/slider_n.xcf | Bin 845 -> 0 bytes .../themes/starfield/src/slider_s.xcf | Bin 863 -> 0 bytes .../starfield/src/terminalbox/center.xcf | Bin 649 -> 0 bytes .../starfield/src/terminalbox/corner.xcf | Bin 725 -> 0 bytes .../themes/starfield/src/terminalbox/side.xcf | Bin 824 -> 0 bytes .../grub-2.04/themes/starfield/starfield.png | Bin 1897028 -> 0 bytes .../themes/starfield/terminal_box_c.png | Bin 178 -> 0 bytes .../themes/starfield/terminal_box_e.png | Bin 94 -> 0 bytes .../themes/starfield/terminal_box_n.png | Bin 194 -> 0 bytes .../themes/starfield/terminal_box_ne.png | Bin 128 -> 0 bytes .../themes/starfield/terminal_box_nw.png | Bin 210 -> 0 bytes .../themes/starfield/terminal_box_s.png | Bin 101 -> 0 bytes .../themes/starfield/terminal_box_se.png | Bin 126 -> 0 bytes .../themes/starfield/terminal_box_sw.png | Bin 123 -> 0 bytes .../themes/starfield/terminal_box_w.png | Bin 97 -> 0 bytes .../grub-2.04/themes/starfield/theme.txt | 79 - .../grub-2.04/unicode/ArabicShaping.txt | 378 - .../grub-2.04/unicode/BidiMirroring.txt | 597 - thirdparty/grub-2.04/unicode/COPYING | 9 - thirdparty/grub-2.04/unicode/UnicodeData.txt | 23697 ------- .../util/bash-completion.d/Makefile.am | 13 - .../util/bash-completion.d/Makefile.in | 1443 - .../bash-completion.d/grub-completion.bash.in | 495 - thirdparty/grub-2.04/util/bin2h.c | 64 - thirdparty/grub-2.04/util/config.c | 121 - thirdparty/grub-2.04/util/editenv.c | 66 - thirdparty/grub-2.04/util/garbage-gen.c | 67 - thirdparty/grub-2.04/util/getroot.c | 482 - thirdparty/grub-2.04/util/glue-efi.c | 143 - thirdparty/grub-2.04/util/grub-editenv.c | 299 - thirdparty/grub-2.04/util/grub-file.c | 106 - thirdparty/grub-2.04/util/grub-fstest.c | 776 - thirdparty/grub-2.04/util/grub-gen-asciih.c | 256 - .../grub-2.04/util/grub-gen-widthspec.c | 153 - thirdparty/grub-2.04/util/grub-glue-efi.c | 125 - .../grub-2.04/util/grub-install-common.c | 999 - thirdparty/grub-2.04/util/grub-install.c | 1964 - thirdparty/grub-2.04/util/grub-kbdcomp.in | 77 - thirdparty/grub-2.04/util/grub-macbless.c | 205 - thirdparty/grub-2.04/util/grub-macho2img.c | 120 - thirdparty/grub-2.04/util/grub-menulst2cfg.c | 135 - thirdparty/grub-2.04/util/grub-mkconfig.in | 295 - .../grub-2.04/util/grub-mkconfig_lib.in | 371 - thirdparty/grub-2.04/util/grub-mkfont.c | 1287 - thirdparty/grub-2.04/util/grub-mkimage.c | 332 - thirdparty/grub-2.04/util/grub-mkimage32.c | 26 - thirdparty/grub-2.04/util/grub-mkimage64.c | 26 - thirdparty/grub-2.04/util/grub-mkimagexx.c | 2450 - thirdparty/grub-2.04/util/grub-mklayout.c | 529 - thirdparty/grub-2.04/util/grub-mknetdir.c | 224 - .../grub-2.04/util/grub-mkpasswd-pbkdf2.c | 210 - thirdparty/grub-2.04/util/grub-mkrelpath.c | 105 - thirdparty/grub-2.04/util/grub-mkrescue.c | 996 - thirdparty/grub-2.04/util/grub-mkstandalone.c | 361 - .../grub-2.04/util/grub-module-verifier.c | 234 - .../grub-2.04/util/grub-module-verifier32.c | 2 - .../grub-2.04/util/grub-module-verifier64.c | 2 - .../grub-2.04/util/grub-module-verifierXX.c | 439 - thirdparty/grub-2.04/util/grub-mount.c | 620 - thirdparty/grub-2.04/util/grub-pe2elf.c | 575 - thirdparty/grub-2.04/util/grub-probe.c | 931 - thirdparty/grub-2.04/util/grub-reboot.in | 160 - thirdparty/grub-2.04/util/grub-render-label.c | 193 - thirdparty/grub-2.04/util/grub-script-check.c | 218 - thirdparty/grub-2.04/util/grub-set-default.in | 137 - thirdparty/grub-2.04/util/grub-setup.c | 333 - thirdparty/grub-2.04/util/grub-syslinux2cfg.c | 246 - thirdparty/grub-2.04/util/grub.d/00_header.in | 356 - thirdparty/grub-2.04/util/grub.d/10_hurd.in | 180 - .../grub-2.04/util/grub.d/10_illumos.in | 53 - .../grub-2.04/util/grub.d/10_kfreebsd.in | 244 - thirdparty/grub-2.04/util/grub.d/10_linux.in | 294 - thirdparty/grub-2.04/util/grub.d/10_netbsd.in | 186 - .../grub-2.04/util/grub.d/10_windows.in | 100 - thirdparty/grub-2.04/util/grub.d/10_xnu.in | 98 - .../grub-2.04/util/grub.d/20_linux_xen.in | 327 - .../grub-2.04/util/grub.d/30_os-prober.in | 335 - thirdparty/grub-2.04/util/grub.d/40_custom.in | 5 - thirdparty/grub-2.04/util/grub.d/41_custom.in | 9 - thirdparty/grub-2.04/util/grub.d/README | 11 - .../grub-2.04/util/i386/efi/grub-dumpdevtree | 22 - .../grub-2.04/util/ieee1275/grub-ofpathname.c | 56 - thirdparty/grub-2.04/util/import_gcry.py | 659 - thirdparty/grub-2.04/util/import_gcrypth.sed | 18 - thirdparty/grub-2.04/util/import_unicode.py | 193 - thirdparty/grub-2.04/util/misc.c | 225 - thirdparty/grub-2.04/util/mkimage.c | 1760 - thirdparty/grub-2.04/util/probe.c | 172 - thirdparty/grub-2.04/util/render-label.c | 215 - thirdparty/grub-2.04/util/resolve.c | 287 - thirdparty/grub-2.04/util/setup.c | 874 - thirdparty/grub-2.04/util/setup_bios.c | 2 - thirdparty/grub-2.04/util/setup_sparc.c | 2 - thirdparty/grub-2.04/util/spkmodem-recv.c | 115 - 2331 files changed, 12 insertions(+), 1081345 deletions(-) delete mode 100644 kernel/src/api/cgroup.cpp delete mode 100644 kernel/src/api/cgroup.h delete mode 100644 thirdparty/grub-2.04/ABOUT-NLS delete mode 100644 thirdparty/grub-2.04/AUTHORS delete mode 100644 thirdparty/grub-2.04/BUGS delete mode 100644 thirdparty/grub-2.04/COPYING delete mode 100644 thirdparty/grub-2.04/ChangeLog delete mode 100644 thirdparty/grub-2.04/ChangeLog-2015 delete mode 100644 thirdparty/grub-2.04/INSTALL delete mode 100644 thirdparty/grub-2.04/Makefile.am delete mode 100644 thirdparty/grub-2.04/Makefile.in delete mode 100644 thirdparty/grub-2.04/Makefile.util.am delete mode 100644 thirdparty/grub-2.04/Makefile.util.def delete mode 100644 thirdparty/grub-2.04/Makefile.utilgcry.def delete mode 100644 thirdparty/grub-2.04/NEWS delete mode 100644 thirdparty/grub-2.04/README delete mode 100644 thirdparty/grub-2.04/THANKS delete mode 100644 thirdparty/grub-2.04/TODO delete mode 100644 thirdparty/grub-2.04/acinclude.m4 delete mode 100644 thirdparty/grub-2.04/aclocal.m4 delete mode 100644 thirdparty/grub-2.04/asm-tests/arm.S delete mode 100644 thirdparty/grub-2.04/asm-tests/i386-pc.S delete mode 100644 thirdparty/grub-2.04/asm-tests/i386.S delete mode 100644 thirdparty/grub-2.04/asm-tests/mips.S delete mode 100644 thirdparty/grub-2.04/asm-tests/powerpc.S delete mode 100644 thirdparty/grub-2.04/asm-tests/sparc64.S delete mode 100755 thirdparty/grub-2.04/autogen.sh delete mode 100755 thirdparty/grub-2.04/build-aux/compile delete mode 100755 thirdparty/grub-2.04/build-aux/config.guess delete mode 100755 thirdparty/grub-2.04/build-aux/config.rpath delete mode 100755 thirdparty/grub-2.04/build-aux/config.sub delete mode 100755 thirdparty/grub-2.04/build-aux/depcomp delete mode 100755 thirdparty/grub-2.04/build-aux/gitlog-to-changelog delete mode 100755 thirdparty/grub-2.04/build-aux/install-sh delete mode 100755 thirdparty/grub-2.04/build-aux/mdate-sh delete mode 100755 thirdparty/grub-2.04/build-aux/missing delete mode 100755 thirdparty/grub-2.04/build-aux/test-driver delete mode 100644 thirdparty/grub-2.04/build-aux/texinfo.tex delete mode 100644 thirdparty/grub-2.04/conf/Makefile.common delete mode 100644 thirdparty/grub-2.04/conf/Makefile.extra-dist delete mode 100644 thirdparty/grub-2.04/conf/i386-cygwin-img-ld.sc delete mode 100644 thirdparty/grub-2.04/config-util.h.in delete mode 100644 thirdparty/grub-2.04/config.h.in delete mode 100755 thirdparty/grub-2.04/configure delete mode 100644 thirdparty/grub-2.04/configure.ac delete mode 100644 thirdparty/grub-2.04/coreboot.cfg delete mode 100644 thirdparty/grub-2.04/docs/Makefile.am delete mode 100644 thirdparty/grub-2.04/docs/Makefile.in delete mode 100644 thirdparty/grub-2.04/docs/autoiso.cfg delete mode 100644 thirdparty/grub-2.04/docs/fdl.texi delete mode 100644 thirdparty/grub-2.04/docs/font_char_metrics.png delete mode 100644 thirdparty/grub-2.04/docs/font_char_metrics.txt delete mode 100644 thirdparty/grub-2.04/docs/grub-dev.info delete mode 100644 thirdparty/grub-2.04/docs/grub-dev.texi delete mode 100644 thirdparty/grub-2.04/docs/grub.cfg delete mode 100644 thirdparty/grub-2.04/docs/grub.info delete mode 100644 thirdparty/grub-2.04/docs/grub.texi delete mode 100644 thirdparty/grub-2.04/docs/man/grub-bios-setup.h2m delete mode 100644 thirdparty/grub-2.04/docs/man/grub-editenv.h2m delete mode 100644 thirdparty/grub-2.04/docs/man/grub-emu.h2m delete mode 100644 thirdparty/grub-2.04/docs/man/grub-file.h2m delete mode 100644 thirdparty/grub-2.04/docs/man/grub-fstest.h2m delete mode 100644 thirdparty/grub-2.04/docs/man/grub-glue-efi.h2m delete mode 100644 thirdparty/grub-2.04/docs/man/grub-install.h2m delete mode 100644 thirdparty/grub-2.04/docs/man/grub-kbdcomp.h2m delete mode 100644 thirdparty/grub-2.04/docs/man/grub-macbless.h2m delete mode 100644 thirdparty/grub-2.04/docs/man/grub-macho2img.h2m delete mode 100644 thirdparty/grub-2.04/docs/man/grub-menulst2cfg.h2m delete mode 100644 thirdparty/grub-2.04/docs/man/grub-mkconfig.h2m delete mode 100644 thirdparty/grub-2.04/docs/man/grub-mkfont.h2m delete mode 100644 thirdparty/grub-2.04/docs/man/grub-mkimage.h2m delete mode 100644 thirdparty/grub-2.04/docs/man/grub-mklayout.h2m delete mode 100644 thirdparty/grub-2.04/docs/man/grub-mknetdir.h2m delete mode 100644 thirdparty/grub-2.04/docs/man/grub-mkpasswd-pbkdf2.h2m delete mode 100644 thirdparty/grub-2.04/docs/man/grub-mkrelpath.h2m delete mode 100644 thirdparty/grub-2.04/docs/man/grub-mkrescue.h2m delete mode 100644 thirdparty/grub-2.04/docs/man/grub-mkstandalone.h2m delete mode 100644 thirdparty/grub-2.04/docs/man/grub-mount.h2m delete mode 100644 thirdparty/grub-2.04/docs/man/grub-ofpathname.h2m delete mode 100644 thirdparty/grub-2.04/docs/man/grub-pe2elf.h2m delete mode 100644 thirdparty/grub-2.04/docs/man/grub-probe.h2m delete mode 100644 thirdparty/grub-2.04/docs/man/grub-reboot.h2m delete mode 100644 thirdparty/grub-2.04/docs/man/grub-render-label.h2m delete mode 100644 thirdparty/grub-2.04/docs/man/grub-script-check.h2m delete mode 100644 thirdparty/grub-2.04/docs/man/grub-set-default.h2m delete mode 100644 thirdparty/grub-2.04/docs/man/grub-sparc64-setup.h2m delete mode 100644 thirdparty/grub-2.04/docs/man/grub-syslinux2cfg.h2m delete mode 100644 thirdparty/grub-2.04/docs/mdate-sh delete mode 100644 thirdparty/grub-2.04/docs/osdetect.cfg delete mode 100644 thirdparty/grub-2.04/docs/stamp-1 delete mode 100644 thirdparty/grub-2.04/docs/stamp-vti delete mode 100644 thirdparty/grub-2.04/docs/texinfo.tex delete mode 100644 thirdparty/grub-2.04/docs/version-dev.texi delete mode 100644 thirdparty/grub-2.04/docs/version.texi delete mode 100644 thirdparty/grub-2.04/geninit.sh delete mode 100644 thirdparty/grub-2.04/gentpl.py delete mode 100644 thirdparty/grub-2.04/grub-core/Makefile.am delete mode 100644 thirdparty/grub-2.04/grub-core/Makefile.core.am delete mode 100644 thirdparty/grub-2.04/grub-core/Makefile.core.def delete mode 100644 thirdparty/grub-2.04/grub-core/Makefile.gcry.def delete mode 100644 thirdparty/grub-2.04/grub-core/Makefile.in delete mode 100644 thirdparty/grub-2.04/grub-core/boot/decompressor/minilib.c delete mode 100644 thirdparty/grub-2.04/grub-core/boot/decompressor/none.c delete mode 100644 thirdparty/grub-2.04/grub-core/boot/decompressor/xz.c delete mode 100644 thirdparty/grub-2.04/grub-core/boot/i386/pc/boot.S delete mode 100644 thirdparty/grub-2.04/grub-core/boot/i386/pc/cdboot.S delete mode 100644 thirdparty/grub-2.04/grub-core/boot/i386/pc/diskboot.S delete mode 100644 thirdparty/grub-2.04/grub-core/boot/i386/pc/lnxboot.S delete mode 100644 thirdparty/grub-2.04/grub-core/boot/i386/pc/lzma_decode.S delete mode 100644 thirdparty/grub-2.04/grub-core/boot/i386/pc/pxeboot.S delete mode 100644 thirdparty/grub-2.04/grub-core/boot/i386/pc/startup_raw.S delete mode 100644 thirdparty/grub-2.04/grub-core/boot/i386/qemu/boot.S delete mode 100644 thirdparty/grub-2.04/grub-core/boot/mips/loongson/fuloong2f.S delete mode 100644 thirdparty/grub-2.04/grub-core/boot/mips/loongson/fwstart.S delete mode 100644 thirdparty/grub-2.04/grub-core/boot/mips/startup_raw.S delete mode 100644 thirdparty/grub-2.04/grub-core/boot/powerpc/bootinfo.txt.in delete mode 100644 thirdparty/grub-2.04/grub-core/boot/powerpc/grub.chrp.in delete mode 100644 thirdparty/grub-2.04/grub-core/boot/sparc64/ieee1275/boot.S delete mode 100644 thirdparty/grub-2.04/grub-core/boot/sparc64/ieee1275/diskboot.S delete mode 100644 thirdparty/grub-2.04/grub-core/bus/bonito.c delete mode 100644 thirdparty/grub-2.04/grub-core/bus/cs5536.c delete mode 100644 thirdparty/grub-2.04/grub-core/bus/emu/pci.c delete mode 100644 thirdparty/grub-2.04/grub-core/bus/fdt.c delete mode 100644 thirdparty/grub-2.04/grub-core/bus/i386/ieee1275/pci.c delete mode 100644 thirdparty/grub-2.04/grub-core/bus/pci.c delete mode 100644 thirdparty/grub-2.04/grub-core/bus/spi/rk3288_spi.c delete mode 100644 thirdparty/grub-2.04/grub-core/bus/usb/ehci-fdt.c delete mode 100644 thirdparty/grub-2.04/grub-core/bus/usb/ehci-pci.c delete mode 100644 thirdparty/grub-2.04/grub-core/bus/usb/ehci.c delete mode 100644 thirdparty/grub-2.04/grub-core/bus/usb/ohci.c delete mode 100644 thirdparty/grub-2.04/grub-core/bus/usb/serial/common.c delete mode 100644 thirdparty/grub-2.04/grub-core/bus/usb/serial/ftdi.c delete mode 100644 thirdparty/grub-2.04/grub-core/bus/usb/serial/pl2303.c delete mode 100644 thirdparty/grub-2.04/grub-core/bus/usb/serial/usbdebug_late.c delete mode 100644 thirdparty/grub-2.04/grub-core/bus/usb/uhci.c delete mode 100644 thirdparty/grub-2.04/grub-core/bus/usb/usb.c delete mode 100644 thirdparty/grub-2.04/grub-core/bus/usb/usbhub.c delete mode 100644 thirdparty/grub-2.04/grub-core/bus/usb/usbtrans.c delete mode 100644 thirdparty/grub-2.04/grub-core/commands/acpi.c delete mode 100644 thirdparty/grub-2.04/grub-core/commands/acpihalt.c delete mode 100644 thirdparty/grub-2.04/grub-core/commands/arc/lsdev.c delete mode 100644 thirdparty/grub-2.04/grub-core/commands/blocklist.c delete mode 100644 thirdparty/grub-2.04/grub-core/commands/boot.c delete mode 100644 thirdparty/grub-2.04/grub-core/commands/boottime.c delete mode 100644 thirdparty/grub-2.04/grub-core/commands/cacheinfo.c delete mode 100644 thirdparty/grub-2.04/grub-core/commands/cat.c delete mode 100644 thirdparty/grub-2.04/grub-core/commands/cmp.c delete mode 100644 thirdparty/grub-2.04/grub-core/commands/configfile.c delete mode 100644 thirdparty/grub-2.04/grub-core/commands/date.c delete mode 100644 thirdparty/grub-2.04/grub-core/commands/echo.c delete mode 100644 thirdparty/grub-2.04/grub-core/commands/efi/efifwsetup.c delete mode 100644 thirdparty/grub-2.04/grub-core/commands/efi/fixvideo.c delete mode 100644 thirdparty/grub-2.04/grub-core/commands/efi/loadbios.c delete mode 100644 thirdparty/grub-2.04/grub-core/commands/efi/lsefi.c delete mode 100644 thirdparty/grub-2.04/grub-core/commands/efi/lsefimmap.c delete mode 100644 thirdparty/grub-2.04/grub-core/commands/efi/lsefisystab.c delete mode 100644 thirdparty/grub-2.04/grub-core/commands/efi/lssal.c delete mode 100644 thirdparty/grub-2.04/grub-core/commands/efi/shim_lock.c delete mode 100644 thirdparty/grub-2.04/grub-core/commands/efi/tpm.c delete mode 100644 thirdparty/grub-2.04/grub-core/commands/eval.c delete mode 100644 thirdparty/grub-2.04/grub-core/commands/extcmd.c delete mode 100644 thirdparty/grub-2.04/grub-core/commands/file.c delete mode 100644 thirdparty/grub-2.04/grub-core/commands/file32.c delete mode 100644 thirdparty/grub-2.04/grub-core/commands/file64.c delete mode 100644 thirdparty/grub-2.04/grub-core/commands/fileXX.c delete mode 100644 thirdparty/grub-2.04/grub-core/commands/gptsync.c delete mode 100644 thirdparty/grub-2.04/grub-core/commands/halt.c delete mode 100644 thirdparty/grub-2.04/grub-core/commands/hashsum.c delete mode 100644 thirdparty/grub-2.04/grub-core/commands/hdparm.c delete mode 100644 thirdparty/grub-2.04/grub-core/commands/help.c delete mode 100644 thirdparty/grub-2.04/grub-core/commands/hexdump.c delete mode 100644 thirdparty/grub-2.04/grub-core/commands/i386/cmosdump.c delete mode 100644 thirdparty/grub-2.04/grub-core/commands/i386/cmostest.c delete mode 100644 thirdparty/grub-2.04/grub-core/commands/i386/coreboot/cb_timestamps.c delete mode 100644 thirdparty/grub-2.04/grub-core/commands/i386/coreboot/cbls.c delete mode 100644 thirdparty/grub-2.04/grub-core/commands/i386/cpuid.c delete mode 100644 thirdparty/grub-2.04/grub-core/commands/i386/pc/drivemap.c delete mode 100644 thirdparty/grub-2.04/grub-core/commands/i386/pc/drivemap_int13h.S delete mode 100644 thirdparty/grub-2.04/grub-core/commands/i386/pc/halt.c delete mode 100644 thirdparty/grub-2.04/grub-core/commands/i386/pc/lsapm.c delete mode 100644 thirdparty/grub-2.04/grub-core/commands/i386/pc/play.c delete mode 100644 thirdparty/grub-2.04/grub-core/commands/i386/pc/sendkey.c delete mode 100644 thirdparty/grub-2.04/grub-core/commands/i386/rdmsr.c delete mode 100644 thirdparty/grub-2.04/grub-core/commands/i386/wrmsr.c delete mode 100644 thirdparty/grub-2.04/grub-core/commands/ieee1275/suspend.c delete mode 100644 thirdparty/grub-2.04/grub-core/commands/iorw.c delete mode 100644 thirdparty/grub-2.04/grub-core/commands/keylayouts.c delete mode 100644 thirdparty/grub-2.04/grub-core/commands/keystatus.c delete mode 100644 thirdparty/grub-2.04/grub-core/commands/legacycfg.c delete mode 100644 thirdparty/grub-2.04/grub-core/commands/loadenv.c delete mode 100644 thirdparty/grub-2.04/grub-core/commands/ls.c delete mode 100644 thirdparty/grub-2.04/grub-core/commands/lsacpi.c delete mode 100644 thirdparty/grub-2.04/grub-core/commands/lsmmap.c delete mode 100644 thirdparty/grub-2.04/grub-core/commands/lspci.c delete mode 100644 thirdparty/grub-2.04/grub-core/commands/macbless.c delete mode 100644 thirdparty/grub-2.04/grub-core/commands/memrw.c delete mode 100644 thirdparty/grub-2.04/grub-core/commands/menuentry.c delete mode 100644 thirdparty/grub-2.04/grub-core/commands/minicmd.c delete mode 100644 thirdparty/grub-2.04/grub-core/commands/mips/loongson/lsspd.c delete mode 100644 thirdparty/grub-2.04/grub-core/commands/nativedisk.c delete mode 100644 thirdparty/grub-2.04/grub-core/commands/parttool.c delete mode 100644 thirdparty/grub-2.04/grub-core/commands/password.c delete mode 100644 thirdparty/grub-2.04/grub-core/commands/password_pbkdf2.c delete mode 100644 thirdparty/grub-2.04/grub-core/commands/pcidump.c delete mode 100644 thirdparty/grub-2.04/grub-core/commands/pgp.c delete mode 100644 thirdparty/grub-2.04/grub-core/commands/probe.c delete mode 100644 thirdparty/grub-2.04/grub-core/commands/read.c delete mode 100644 thirdparty/grub-2.04/grub-core/commands/reboot.c delete mode 100644 thirdparty/grub-2.04/grub-core/commands/regexp.c delete mode 100644 thirdparty/grub-2.04/grub-core/commands/search.c delete mode 100644 thirdparty/grub-2.04/grub-core/commands/search_file.c delete mode 100644 thirdparty/grub-2.04/grub-core/commands/search_label.c delete mode 100644 thirdparty/grub-2.04/grub-core/commands/search_uuid.c delete mode 100644 thirdparty/grub-2.04/grub-core/commands/search_wrap.c delete mode 100644 thirdparty/grub-2.04/grub-core/commands/setpci.c delete mode 100644 thirdparty/grub-2.04/grub-core/commands/sleep.c delete mode 100644 thirdparty/grub-2.04/grub-core/commands/syslinuxcfg.c delete mode 100644 thirdparty/grub-2.04/grub-core/commands/terminal.c delete mode 100644 thirdparty/grub-2.04/grub-core/commands/test.c delete mode 100644 thirdparty/grub-2.04/grub-core/commands/testload.c delete mode 100644 thirdparty/grub-2.04/grub-core/commands/testspeed.c delete mode 100644 thirdparty/grub-2.04/grub-core/commands/time.c delete mode 100644 thirdparty/grub-2.04/grub-core/commands/tpm.c delete mode 100644 thirdparty/grub-2.04/grub-core/commands/tr.c delete mode 100644 thirdparty/grub-2.04/grub-core/commands/true.c delete mode 100644 thirdparty/grub-2.04/grub-core/commands/usbtest.c delete mode 100644 thirdparty/grub-2.04/grub-core/commands/verifiers.c delete mode 100644 thirdparty/grub-2.04/grub-core/commands/videoinfo.c delete mode 100644 thirdparty/grub-2.04/grub-core/commands/videotest.c delete mode 100644 thirdparty/grub-2.04/grub-core/commands/wildcard.c delete mode 100644 thirdparty/grub-2.04/grub-core/commands/xen/lsxen.c delete mode 100644 thirdparty/grub-2.04/grub-core/commands/xnu_uuid.c delete mode 100644 thirdparty/grub-2.04/grub-core/disk/AFSplitter.c delete mode 100644 thirdparty/grub-2.04/grub-core/disk/ahci.c delete mode 100644 thirdparty/grub-2.04/grub-core/disk/arc/arcdisk.c delete mode 100644 thirdparty/grub-2.04/grub-core/disk/ata.c delete mode 100644 thirdparty/grub-2.04/grub-core/disk/cryptodisk.c delete mode 100644 thirdparty/grub-2.04/grub-core/disk/diskfilter.c delete mode 100644 thirdparty/grub-2.04/grub-core/disk/dmraid_nvidia.c delete mode 100644 thirdparty/grub-2.04/grub-core/disk/efi/efidisk.c delete mode 100644 thirdparty/grub-2.04/grub-core/disk/geli.c delete mode 100644 thirdparty/grub-2.04/grub-core/disk/host.c delete mode 100644 thirdparty/grub-2.04/grub-core/disk/i386/pc/biosdisk.c delete mode 100644 thirdparty/grub-2.04/grub-core/disk/ieee1275/nand.c delete mode 100644 thirdparty/grub-2.04/grub-core/disk/ieee1275/obdisk.c delete mode 100644 thirdparty/grub-2.04/grub-core/disk/ieee1275/ofdisk.c delete mode 100644 thirdparty/grub-2.04/grub-core/disk/ldm.c delete mode 100644 thirdparty/grub-2.04/grub-core/disk/loopback.c delete mode 100644 thirdparty/grub-2.04/grub-core/disk/luks.c delete mode 100644 thirdparty/grub-2.04/grub-core/disk/lvm.c delete mode 100644 thirdparty/grub-2.04/grub-core/disk/mdraid1x_linux.c delete mode 100644 thirdparty/grub-2.04/grub-core/disk/mdraid_linux.c delete mode 100644 thirdparty/grub-2.04/grub-core/disk/mdraid_linux_be.c delete mode 100644 thirdparty/grub-2.04/grub-core/disk/memdisk.c delete mode 100644 thirdparty/grub-2.04/grub-core/disk/pata.c delete mode 100644 thirdparty/grub-2.04/grub-core/disk/raid5_recover.c delete mode 100644 thirdparty/grub-2.04/grub-core/disk/raid6_recover.c delete mode 100644 thirdparty/grub-2.04/grub-core/disk/scsi.c delete mode 100644 thirdparty/grub-2.04/grub-core/disk/uboot/ubootdisk.c delete mode 100644 thirdparty/grub-2.04/grub-core/disk/usbms.c delete mode 100644 thirdparty/grub-2.04/grub-core/disk/xen/xendisk.c delete mode 100644 thirdparty/grub-2.04/grub-core/efiemu/i386/coredetect.c delete mode 100644 thirdparty/grub-2.04/grub-core/efiemu/i386/loadcore32.c delete mode 100644 thirdparty/grub-2.04/grub-core/efiemu/i386/loadcore64.c delete mode 100644 thirdparty/grub-2.04/grub-core/efiemu/i386/nocfgtables.c delete mode 100644 thirdparty/grub-2.04/grub-core/efiemu/i386/pc/cfgtables.c delete mode 100644 thirdparty/grub-2.04/grub-core/efiemu/loadcore.c delete mode 100644 thirdparty/grub-2.04/grub-core/efiemu/loadcore32.c delete mode 100644 thirdparty/grub-2.04/grub-core/efiemu/loadcore64.c delete mode 100644 thirdparty/grub-2.04/grub-core/efiemu/loadcore_common.c delete mode 100644 thirdparty/grub-2.04/grub-core/efiemu/main.c delete mode 100644 thirdparty/grub-2.04/grub-core/efiemu/mm.c delete mode 100644 thirdparty/grub-2.04/grub-core/efiemu/pnvram.c delete mode 100644 thirdparty/grub-2.04/grub-core/efiemu/prepare.c delete mode 100644 thirdparty/grub-2.04/grub-core/efiemu/prepare32.c delete mode 100644 thirdparty/grub-2.04/grub-core/efiemu/prepare64.c delete mode 100644 thirdparty/grub-2.04/grub-core/efiemu/runtime/config.h delete mode 100644 thirdparty/grub-2.04/grub-core/efiemu/runtime/efiemu.S delete mode 100644 thirdparty/grub-2.04/grub-core/efiemu/runtime/efiemu.c delete mode 100644 thirdparty/grub-2.04/grub-core/efiemu/symbols.c delete mode 100644 thirdparty/grub-2.04/grub-core/font/font.c delete mode 100644 thirdparty/grub-2.04/grub-core/font/font_cmd.c delete mode 100644 thirdparty/grub-2.04/grub-core/fs/affs.c delete mode 100644 thirdparty/grub-2.04/grub-core/fs/afs.c delete mode 100644 thirdparty/grub-2.04/grub-core/fs/archelp.c delete mode 100644 thirdparty/grub-2.04/grub-core/fs/bfs.c delete mode 100644 thirdparty/grub-2.04/grub-core/fs/btrfs.c delete mode 100644 thirdparty/grub-2.04/grub-core/fs/cbfs.c delete mode 100644 thirdparty/grub-2.04/grub-core/fs/cpio.c delete mode 100644 thirdparty/grub-2.04/grub-core/fs/cpio_be.c delete mode 100644 thirdparty/grub-2.04/grub-core/fs/cpio_common.c delete mode 100644 thirdparty/grub-2.04/grub-core/fs/exfat.c delete mode 100644 thirdparty/grub-2.04/grub-core/fs/ext2.c delete mode 100644 thirdparty/grub-2.04/grub-core/fs/f2fs.c delete mode 100644 thirdparty/grub-2.04/grub-core/fs/fat.c delete mode 100644 thirdparty/grub-2.04/grub-core/fs/fshelp.c delete mode 100644 thirdparty/grub-2.04/grub-core/fs/hfs.c delete mode 100644 thirdparty/grub-2.04/grub-core/fs/hfsplus.c delete mode 100644 thirdparty/grub-2.04/grub-core/fs/hfspluscomp.c delete mode 100644 thirdparty/grub-2.04/grub-core/fs/iso9660.c delete mode 100644 thirdparty/grub-2.04/grub-core/fs/jfs.c delete mode 100644 thirdparty/grub-2.04/grub-core/fs/minix.c delete mode 100644 thirdparty/grub-2.04/grub-core/fs/minix2.c delete mode 100644 thirdparty/grub-2.04/grub-core/fs/minix2_be.c delete mode 100644 thirdparty/grub-2.04/grub-core/fs/minix3.c delete mode 100644 thirdparty/grub-2.04/grub-core/fs/minix3_be.c delete mode 100644 thirdparty/grub-2.04/grub-core/fs/minix_be.c delete mode 100644 thirdparty/grub-2.04/grub-core/fs/newc.c delete mode 100644 thirdparty/grub-2.04/grub-core/fs/nilfs2.c delete mode 100644 thirdparty/grub-2.04/grub-core/fs/ntfs.c delete mode 100644 thirdparty/grub-2.04/grub-core/fs/ntfscomp.c delete mode 100644 thirdparty/grub-2.04/grub-core/fs/odc.c delete mode 100644 thirdparty/grub-2.04/grub-core/fs/proc.c delete mode 100644 thirdparty/grub-2.04/grub-core/fs/reiserfs.c delete mode 100644 thirdparty/grub-2.04/grub-core/fs/romfs.c delete mode 100644 thirdparty/grub-2.04/grub-core/fs/sfs.c delete mode 100644 thirdparty/grub-2.04/grub-core/fs/squash4.c delete mode 100644 thirdparty/grub-2.04/grub-core/fs/tar.c delete mode 100644 thirdparty/grub-2.04/grub-core/fs/udf.c delete mode 100644 thirdparty/grub-2.04/grub-core/fs/ufs.c delete mode 100644 thirdparty/grub-2.04/grub-core/fs/ufs2.c delete mode 100644 thirdparty/grub-2.04/grub-core/fs/ufs_be.c delete mode 100644 thirdparty/grub-2.04/grub-core/fs/xfs.c delete mode 100644 thirdparty/grub-2.04/grub-core/fs/zfs/zfs.c delete mode 100644 thirdparty/grub-2.04/grub-core/fs/zfs/zfs_fletcher.c delete mode 100644 thirdparty/grub-2.04/grub-core/fs/zfs/zfs_lz4.c delete mode 100644 thirdparty/grub-2.04/grub-core/fs/zfs/zfs_lzjb.c delete mode 100644 thirdparty/grub-2.04/grub-core/fs/zfs/zfs_sha256.c delete mode 100644 thirdparty/grub-2.04/grub-core/fs/zfs/zfscrypt.c delete mode 100644 thirdparty/grub-2.04/grub-core/fs/zfs/zfsinfo.c delete mode 100644 thirdparty/grub-2.04/grub-core/gdb/cstub.c delete mode 100644 thirdparty/grub-2.04/grub-core/gdb/gdb.c delete mode 100644 thirdparty/grub-2.04/grub-core/gdb/i386/idt.c delete mode 100644 thirdparty/grub-2.04/grub-core/gdb/i386/machdep.S delete mode 100644 thirdparty/grub-2.04/grub-core/gdb/i386/signal.c delete mode 100644 thirdparty/grub-2.04/grub-core/gdb_grub.in delete mode 100644 thirdparty/grub-2.04/grub-core/genemuinit.sh delete mode 100644 thirdparty/grub-2.04/grub-core/genemuinitheader.sh delete mode 100644 thirdparty/grub-2.04/grub-core/genmod.sh.in delete mode 100644 thirdparty/grub-2.04/grub-core/genmoddep.awk delete mode 100644 thirdparty/grub-2.04/grub-core/gensyminfo.sh.in delete mode 100644 thirdparty/grub-2.04/grub-core/gensymlist.sh delete mode 100644 thirdparty/grub-2.04/grub-core/gentrigtables.c delete mode 100644 thirdparty/grub-2.04/grub-core/gettext/gettext.c delete mode 100644 thirdparty/grub-2.04/grub-core/gfxmenu/font.c delete mode 100644 thirdparty/grub-2.04/grub-core/gfxmenu/gfxmenu.c delete mode 100644 thirdparty/grub-2.04/grub-core/gfxmenu/gui_box.c delete mode 100644 thirdparty/grub-2.04/grub-core/gfxmenu/gui_canvas.c delete mode 100644 thirdparty/grub-2.04/grub-core/gfxmenu/gui_circular_progress.c delete mode 100644 thirdparty/grub-2.04/grub-core/gfxmenu/gui_image.c delete mode 100644 thirdparty/grub-2.04/grub-core/gfxmenu/gui_label.c delete mode 100644 thirdparty/grub-2.04/grub-core/gfxmenu/gui_list.c delete mode 100644 thirdparty/grub-2.04/grub-core/gfxmenu/gui_progress_bar.c delete mode 100644 thirdparty/grub-2.04/grub-core/gfxmenu/gui_string_util.c delete mode 100644 thirdparty/grub-2.04/grub-core/gfxmenu/gui_util.c delete mode 100644 thirdparty/grub-2.04/grub-core/gfxmenu/icon_manager.c delete mode 100644 thirdparty/grub-2.04/grub-core/gfxmenu/theme_loader.c delete mode 100644 thirdparty/grub-2.04/grub-core/gfxmenu/view.c delete mode 100644 thirdparty/grub-2.04/grub-core/gfxmenu/widget-box.c delete mode 100644 thirdparty/grub-2.04/grub-core/gmodule.pl.in delete mode 100644 thirdparty/grub-2.04/grub-core/hello/hello.c delete mode 100644 thirdparty/grub-2.04/grub-core/hook/datehook.c delete mode 100644 thirdparty/grub-2.04/grub-core/io/bufio.c delete mode 100644 thirdparty/grub-2.04/grub-core/io/gzio.c delete mode 100644 thirdparty/grub-2.04/grub-core/io/lzopio.c delete mode 100644 thirdparty/grub-2.04/grub-core/io/offset.c delete mode 100644 thirdparty/grub-2.04/grub-core/io/xzio.c delete mode 100644 thirdparty/grub-2.04/grub-core/kern/acpi.c delete mode 100644 thirdparty/grub-2.04/grub-core/kern/arm/cache.S delete mode 100644 thirdparty/grub-2.04/grub-core/kern/arm/cache.c delete mode 100644 thirdparty/grub-2.04/grub-core/kern/arm/cache_armv6.S delete mode 100644 thirdparty/grub-2.04/grub-core/kern/arm/cache_armv7.S delete mode 100644 thirdparty/grub-2.04/grub-core/kern/arm/compiler-rt.S delete mode 100644 thirdparty/grub-2.04/grub-core/kern/arm/coreboot/cbtable.c delete mode 100644 thirdparty/grub-2.04/grub-core/kern/arm/coreboot/coreboot.S delete mode 100644 thirdparty/grub-2.04/grub-core/kern/arm/coreboot/dma.c delete mode 100644 thirdparty/grub-2.04/grub-core/kern/arm/coreboot/init.c delete mode 100644 thirdparty/grub-2.04/grub-core/kern/arm/coreboot/timer.c delete mode 100644 thirdparty/grub-2.04/grub-core/kern/arm/dl.c delete mode 100644 thirdparty/grub-2.04/grub-core/kern/arm/dl_helper.c delete mode 100644 thirdparty/grub-2.04/grub-core/kern/arm/efi/init.c delete mode 100644 thirdparty/grub-2.04/grub-core/kern/arm/efi/startup.S delete mode 100644 thirdparty/grub-2.04/grub-core/kern/arm/startup.S delete mode 100644 thirdparty/grub-2.04/grub-core/kern/arm/uboot/init.c delete mode 100644 thirdparty/grub-2.04/grub-core/kern/arm/uboot/uboot.S delete mode 100644 thirdparty/grub-2.04/grub-core/kern/arm64/cache.c delete mode 100644 thirdparty/grub-2.04/grub-core/kern/arm64/cache_flush.S delete mode 100644 thirdparty/grub-2.04/grub-core/kern/arm64/dl.c delete mode 100644 thirdparty/grub-2.04/grub-core/kern/arm64/dl_helper.c delete mode 100644 thirdparty/grub-2.04/grub-core/kern/arm64/efi/init.c delete mode 100644 thirdparty/grub-2.04/grub-core/kern/arm64/efi/startup.S delete mode 100644 thirdparty/grub-2.04/grub-core/kern/command.c delete mode 100644 thirdparty/grub-2.04/grub-core/kern/compiler-rt.c delete mode 100644 thirdparty/grub-2.04/grub-core/kern/coreboot/cbtable.c delete mode 100644 thirdparty/grub-2.04/grub-core/kern/coreboot/mmap.c delete mode 100644 thirdparty/grub-2.04/grub-core/kern/corecmd.c delete mode 100644 thirdparty/grub-2.04/grub-core/kern/device.c delete mode 100644 thirdparty/grub-2.04/grub-core/kern/disk.c delete mode 100644 thirdparty/grub-2.04/grub-core/kern/disk_common.c delete mode 100644 thirdparty/grub-2.04/grub-core/kern/dl.c delete mode 100644 thirdparty/grub-2.04/grub-core/kern/efi/acpi.c delete mode 100644 thirdparty/grub-2.04/grub-core/kern/efi/efi.c delete mode 100644 thirdparty/grub-2.04/grub-core/kern/efi/fdt.c delete mode 100644 thirdparty/grub-2.04/grub-core/kern/efi/init.c delete mode 100644 thirdparty/grub-2.04/grub-core/kern/efi/mm.c delete mode 100644 thirdparty/grub-2.04/grub-core/kern/elf.c delete mode 100644 thirdparty/grub-2.04/grub-core/kern/elfXX.c delete mode 100644 thirdparty/grub-2.04/grub-core/kern/emu/argp_common.c delete mode 100644 thirdparty/grub-2.04/grub-core/kern/emu/cache.c delete mode 100644 thirdparty/grub-2.04/grub-core/kern/emu/cache_s.S delete mode 100644 thirdparty/grub-2.04/grub-core/kern/emu/full.c delete mode 100644 thirdparty/grub-2.04/grub-core/kern/emu/hostdisk.c delete mode 100644 thirdparty/grub-2.04/grub-core/kern/emu/hostfs.c delete mode 100644 thirdparty/grub-2.04/grub-core/kern/emu/lite.c delete mode 100644 thirdparty/grub-2.04/grub-core/kern/emu/main.c delete mode 100644 thirdparty/grub-2.04/grub-core/kern/emu/misc.c delete mode 100644 thirdparty/grub-2.04/grub-core/kern/emu/mm.c delete mode 100644 thirdparty/grub-2.04/grub-core/kern/emu/time.c delete mode 100644 thirdparty/grub-2.04/grub-core/kern/env.c delete mode 100644 thirdparty/grub-2.04/grub-core/kern/err.c delete mode 100644 thirdparty/grub-2.04/grub-core/kern/file.c delete mode 100644 thirdparty/grub-2.04/grub-core/kern/fs.c delete mode 100644 thirdparty/grub-2.04/grub-core/kern/generic/millisleep.c delete mode 100644 thirdparty/grub-2.04/grub-core/kern/generic/rtc_get_time_ms.c delete mode 100644 thirdparty/grub-2.04/grub-core/kern/i386/coreboot/cbtable.c delete mode 100644 thirdparty/grub-2.04/grub-core/kern/i386/coreboot/init.c delete mode 100644 thirdparty/grub-2.04/grub-core/kern/i386/coreboot/startup.S delete mode 100644 thirdparty/grub-2.04/grub-core/kern/i386/dl.c delete mode 100644 thirdparty/grub-2.04/grub-core/kern/i386/efi/init.c delete mode 100644 thirdparty/grub-2.04/grub-core/kern/i386/efi/startup.S delete mode 100644 thirdparty/grub-2.04/grub-core/kern/i386/efi/tsc.c delete mode 100644 thirdparty/grub-2.04/grub-core/kern/i386/ieee1275/startup.S delete mode 100644 thirdparty/grub-2.04/grub-core/kern/i386/int.S delete mode 100644 thirdparty/grub-2.04/grub-core/kern/i386/multiboot_mmap.c delete mode 100644 thirdparty/grub-2.04/grub-core/kern/i386/pc/acpi.c delete mode 100644 thirdparty/grub-2.04/grub-core/kern/i386/pc/init.c delete mode 100644 thirdparty/grub-2.04/grub-core/kern/i386/pc/mmap.c delete mode 100644 thirdparty/grub-2.04/grub-core/kern/i386/pc/startup.S delete mode 100644 thirdparty/grub-2.04/grub-core/kern/i386/qemu/init.c delete mode 100644 thirdparty/grub-2.04/grub-core/kern/i386/qemu/mmap.c delete mode 100644 thirdparty/grub-2.04/grub-core/kern/i386/qemu/startup.S delete mode 100644 thirdparty/grub-2.04/grub-core/kern/i386/realmode.S delete mode 100644 thirdparty/grub-2.04/grub-core/kern/i386/tsc.c delete mode 100644 thirdparty/grub-2.04/grub-core/kern/i386/tsc_pit.c delete mode 100644 thirdparty/grub-2.04/grub-core/kern/i386/tsc_pmtimer.c delete mode 100644 thirdparty/grub-2.04/grub-core/kern/i386/xen/hypercall.S delete mode 100644 thirdparty/grub-2.04/grub-core/kern/i386/xen/pvh.c delete mode 100644 thirdparty/grub-2.04/grub-core/kern/i386/xen/startup.S delete mode 100644 thirdparty/grub-2.04/grub-core/kern/i386/xen/startup_pvh.S delete mode 100644 thirdparty/grub-2.04/grub-core/kern/i386/xen/tsc.c delete mode 100644 thirdparty/grub-2.04/grub-core/kern/ia64/cache.c delete mode 100644 thirdparty/grub-2.04/grub-core/kern/ia64/dl.c delete mode 100644 thirdparty/grub-2.04/grub-core/kern/ia64/dl_helper.c delete mode 100644 thirdparty/grub-2.04/grub-core/kern/ia64/efi/init.c delete mode 100644 thirdparty/grub-2.04/grub-core/kern/ia64/efi/startup.S delete mode 100644 thirdparty/grub-2.04/grub-core/kern/ieee1275/cmain.c delete mode 100644 thirdparty/grub-2.04/grub-core/kern/ieee1275/ieee1275.c delete mode 100644 thirdparty/grub-2.04/grub-core/kern/ieee1275/init.c delete mode 100644 thirdparty/grub-2.04/grub-core/kern/ieee1275/mmap.c delete mode 100644 thirdparty/grub-2.04/grub-core/kern/ieee1275/openfw.c delete mode 100644 thirdparty/grub-2.04/grub-core/kern/list.c delete mode 100644 thirdparty/grub-2.04/grub-core/kern/main.c delete mode 100644 thirdparty/grub-2.04/grub-core/kern/mips/arc/init.c delete mode 100644 thirdparty/grub-2.04/grub-core/kern/mips/cache.S delete mode 100644 thirdparty/grub-2.04/grub-core/kern/mips/cache_flush.S delete mode 100644 thirdparty/grub-2.04/grub-core/kern/mips/dl.c delete mode 100644 thirdparty/grub-2.04/grub-core/kern/mips/init.c delete mode 100644 thirdparty/grub-2.04/grub-core/kern/mips/loongson/init.c delete mode 100644 thirdparty/grub-2.04/grub-core/kern/mips/qemu_mips/init.c delete mode 100644 thirdparty/grub-2.04/grub-core/kern/mips/startup.S delete mode 100644 thirdparty/grub-2.04/grub-core/kern/misc.c delete mode 100644 thirdparty/grub-2.04/grub-core/kern/mm.c delete mode 100644 thirdparty/grub-2.04/grub-core/kern/parser.c delete mode 100644 thirdparty/grub-2.04/grub-core/kern/partition.c delete mode 100644 thirdparty/grub-2.04/grub-core/kern/powerpc/cache.S delete mode 100644 thirdparty/grub-2.04/grub-core/kern/powerpc/cache_flush.S delete mode 100644 thirdparty/grub-2.04/grub-core/kern/powerpc/compiler-rt.S delete mode 100644 thirdparty/grub-2.04/grub-core/kern/powerpc/dl.c delete mode 100644 thirdparty/grub-2.04/grub-core/kern/powerpc/ieee1275/startup.S delete mode 100644 thirdparty/grub-2.04/grub-core/kern/rescue_parser.c delete mode 100644 thirdparty/grub-2.04/grub-core/kern/rescue_reader.c delete mode 100644 thirdparty/grub-2.04/grub-core/kern/riscv/cache.c delete mode 100644 thirdparty/grub-2.04/grub-core/kern/riscv/cache_flush.S delete mode 100644 thirdparty/grub-2.04/grub-core/kern/riscv/dl.c delete mode 100644 thirdparty/grub-2.04/grub-core/kern/riscv/efi/init.c delete mode 100644 thirdparty/grub-2.04/grub-core/kern/riscv/efi/startup.S delete mode 100644 thirdparty/grub-2.04/grub-core/kern/sparc64/cache.S delete mode 100644 thirdparty/grub-2.04/grub-core/kern/sparc64/dl.c delete mode 100644 thirdparty/grub-2.04/grub-core/kern/sparc64/ieee1275/crt0.S delete mode 100644 thirdparty/grub-2.04/grub-core/kern/sparc64/ieee1275/ieee1275.c delete mode 100644 thirdparty/grub-2.04/grub-core/kern/term.c delete mode 100644 thirdparty/grub-2.04/grub-core/kern/time.c delete mode 100644 thirdparty/grub-2.04/grub-core/kern/uboot/hw.c delete mode 100644 thirdparty/grub-2.04/grub-core/kern/uboot/init.c delete mode 100644 thirdparty/grub-2.04/grub-core/kern/uboot/uboot.c delete mode 100644 thirdparty/grub-2.04/grub-core/kern/vga_init.c delete mode 100644 thirdparty/grub-2.04/grub-core/kern/x86_64/dl.c delete mode 100644 thirdparty/grub-2.04/grub-core/kern/x86_64/efi/callwrap.S delete mode 100644 thirdparty/grub-2.04/grub-core/kern/x86_64/efi/startup.S delete mode 100644 thirdparty/grub-2.04/grub-core/kern/x86_64/xen/hypercall.S delete mode 100644 thirdparty/grub-2.04/grub-core/kern/x86_64/xen/startup.S delete mode 100644 thirdparty/grub-2.04/grub-core/kern/xen/init.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/LzFind.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/LzmaDec.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/LzmaEnc.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/adler32.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/arc/datetime.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/arg.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/arm/setjmp.S delete mode 100644 thirdparty/grub-2.04/grub-core/lib/arm64/setjmp.S delete mode 100644 thirdparty/grub-2.04/grub-core/lib/backtrace.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/cmdline.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/cmos_datetime.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/crc.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/crc64.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/crypto.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/disk.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/division.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/dummy/datetime.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/dummy/halt.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/dummy/reboot.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/efi/datetime.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/efi/halt.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/efi/relocator.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/emu/halt.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/envblk.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/fake_module.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/fdt.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/getline.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib-patches/fix-null-deref.patch delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib-patches/fix-width.patch delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib-patches/no-abort.patch delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/Makefile.am delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/Makefile.in delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/_Noreturn.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/alloca.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/alloca.in.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/arg-nonnull.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/argp-ba.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/argp-eexst.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/argp-fmtstream.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/argp-fmtstream.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/argp-fs-xinl.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/argp-help.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/argp-namefrob.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/argp-parse.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/argp-pin.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/argp-pv.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/argp-pvh.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/argp-xinl.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/argp.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/asnprintf.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/assure.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/basename-lgpl.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/btowc.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/c++defs.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/cdefs.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/chdir-long.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/chdir-long.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/cloexec.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/cloexec.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/close.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/dirent.in.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/dirfd.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/dirname-lgpl.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/dirname.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/dosname.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/dup-safer-flag.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/dup-safer.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/dup2.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/errno.in.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/error.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/error.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/exitfail.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/exitfail.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/fchdir.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/fcntl.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/fcntl.in.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/fd-hook.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/fd-hook.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/fd-safer-flag.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/fd-safer.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/filename.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/filenamecat-lgpl.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/filenamecat.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/flexmember.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/float+.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/float.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/float.in.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/fnmatch.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/fnmatch.in.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/fnmatch_loop.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/fstat.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/getcwd-lgpl.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/getdelim.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/getdtablesize.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/getline.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/getopt-cdefs.in.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/getopt-core.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/getopt-ext.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/getopt-pfx-core.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/getopt-pfx-ext.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/getopt.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/getopt.in.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/getopt1.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/getopt_int.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/getprogname.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/getprogname.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/gettext.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/glthread/lock.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/glthread/lock.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/glthread/threadlib.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/hard-locale.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/hard-locale.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/intprops.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/itold.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/langinfo.in.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/libc-config.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/limits.in.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/localcharset.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/localcharset.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/locale.in.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/localeconv.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/malloc.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/malloca.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/malloca.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/mbrtowc.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/mbsinit.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/mbsrtowcs-impl.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/mbsrtowcs-state.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/mbsrtowcs.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/mbswidth.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/mbswidth.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/mbtowc-impl.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/mbtowc.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/memchr.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/memchr.valgrind delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/mempcpy.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/memrchr.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/msvc-inval.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/msvc-inval.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/msvc-nothrow.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/msvc-nothrow.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/nl_langinfo.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/open.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/openat-die.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/openat-priv.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/openat-proc.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/openat.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/openat.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/pathmax.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/pipe-safer.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/printf-args.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/printf-args.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/printf-parse.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/printf-parse.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/progname.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/progname.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/rawmemchr.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/rawmemchr.valgrind delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/realloc.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/regcomp.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/regex.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/regex.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/regex_internal.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/regex_internal.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/regexec.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/save-cwd.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/save-cwd.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/size_max.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/sleep.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/stat-time.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/stat-time.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/stat-w32.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/stat-w32.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/stat.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/stdalign.in.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/stdbool.in.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/stddef.in.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/stdint.in.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/stdio.in.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/stdlib.in.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/strcasecmp.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/strchrnul.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/strchrnul.valgrind delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/strdup.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/streq.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/strerror-override.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/strerror-override.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/strerror.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/string.in.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/strings.in.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/stripslash.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/strncasecmp.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/strndup.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/strnlen.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/strnlen1.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/strnlen1.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/sys_stat.in.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/sys_types.in.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/sysexits.in.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/time.in.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/unistd--.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/unistd-safer.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/unistd.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/unistd.in.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/unitypes.in.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/uniwidth.in.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/uniwidth/cjk.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/uniwidth/width.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/vasnprintf.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/vasnprintf.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/verify.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/vsnprintf.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/warn-on-use.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/wchar.in.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/wcrtomb.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/wctype-h.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/wctype.in.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/wcwidth.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/xalloc-oversized.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/xsize.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/gnulib/xsize.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/hexdump.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/i386/backtrace.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/i386/halt.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/i386/pc/biosnum.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/i386/pc/vesa_modes_table.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/i386/random.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/i386/reboot.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/i386/reboot_trampoline.S delete mode 100644 thirdparty/grub-2.04/grub-core/lib/i386/relocator.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/i386/relocator16.S delete mode 100644 thirdparty/grub-2.04/grub-core/lib/i386/relocator32.S delete mode 100644 thirdparty/grub-2.04/grub-core/lib/i386/relocator64.S delete mode 100644 thirdparty/grub-2.04/grub-core/lib/i386/relocator_asm.S delete mode 100644 thirdparty/grub-2.04/grub-core/lib/i386/relocator_common.S delete mode 100644 thirdparty/grub-2.04/grub-core/lib/i386/relocator_common_c.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/i386/setjmp.S delete mode 100644 thirdparty/grub-2.04/grub-core/lib/i386/xen/relocator.S delete mode 100644 thirdparty/grub-2.04/grub-core/lib/ia64/longjmp.S delete mode 100644 thirdparty/grub-2.04/grub-core/lib/ia64/setjmp.S delete mode 100644 thirdparty/grub-2.04/grub-core/lib/ieee1275/cmos.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/ieee1275/datetime.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/ieee1275/halt.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/ieee1275/reboot.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/ieee1275/relocator.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/legacy_parse.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/ChangeLog delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/arcfour.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/bithelp.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/blowfish.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/bufhelp.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/camellia-glue.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/camellia.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/camellia.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/cast5.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/cipher.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/crc.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/crypto.lst delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/des.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/dsa.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/g10lib.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/hash-common.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/idea.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/init.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/md4.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/md5.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/memory.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/rfc2268.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/rijndael-tables.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/rijndael.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/rmd.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/rmd160.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/rsa.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/seed.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/serpent.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/sha1.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/sha256.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/sha512.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/tiger.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/twofish.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/types.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/whirlpool.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/generic/Manifest delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/generic/distfiles delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/generic/mpi-asm-defs.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/generic/mpih-add1.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/generic/mpih-lshift.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/generic/mpih-mul1.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/generic/mpih-mul2.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/generic/mpih-mul3.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/generic/mpih-rshift.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/generic/mpih-sub1.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/generic/udiv-w-sdiv.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/longlong.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/mpi-add.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/mpi-asm-defs.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/mpi-bit.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/mpi-cmp.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/mpi-div.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/mpi-gcd.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/mpi-inline.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/mpi-inline.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/mpi-internal.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/mpi-inv.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/mpi-mod.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/mpi-mpow.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/mpi-mul.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/mpi-pow.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/mpicoder.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/mpih-add1.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/mpih-div.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/mpih-lshift.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/mpih-mul.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/mpih-mul1.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/mpih-mul2.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/mpih-mul3.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/mpih-rshift.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/mpih-sub1.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/mpiutil.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/src/ath.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/src/cipher-proto.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/src/cipher.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/src/g10lib.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/src/gcrypt-module.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/src/hmac256.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/src/mpi.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/src/secmem.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/src/stdmem.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/src/types.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/src/visibility.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/cipher/ChangeLog delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/cipher/ChangeLog-2011 delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/cipher/Makefile.am delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/cipher/Manifest delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/cipher/ac.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/cipher/arcfour.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/cipher/bithelp.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/cipher/blowfish.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/cipher/bufhelp.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/cipher/camellia-glue.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/cipher/camellia.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/cipher/camellia.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/cipher/cast5.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/cipher/cipher.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/cipher/crc.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/cipher/des.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/cipher/dsa.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/cipher/ecc.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/cipher/elgamal.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/cipher/hash-common.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/cipher/hash-common.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/cipher/hmac-tests.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/cipher/idea.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/cipher/kdf.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/cipher/md.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/cipher/md4.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/cipher/md5.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/cipher/primegen.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/cipher/pubkey.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/cipher/rfc2268.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/cipher/rijndael-tables.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/cipher/rijndael.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/cipher/rmd.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/cipher/rmd160.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/cipher/rsa.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/cipher/seed.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/cipher/serpent.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/cipher/sha1.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/cipher/sha256.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/cipher/sha512.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/cipher/test-getrusage.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/cipher/tiger.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/cipher/twofish.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/cipher/whirlpool.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/ChangeLog-2011 delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/Makefile.am delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/Manifest delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/alpha/README delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/alpha/distfiles delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/alpha/mpih-add1.S delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/alpha/mpih-lshift.S delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/alpha/mpih-mul1.S delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/alpha/mpih-mul2.S delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/alpha/mpih-mul3.S delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/alpha/mpih-rshift.S delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/alpha/mpih-sub1.S delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/alpha/udiv-qrnnd.S delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/amd64/distfiles delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/amd64/mpi-asm-defs.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/amd64/mpih-add1.S delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/amd64/mpih-lshift.S delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/amd64/mpih-mul1.S delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/amd64/mpih-mul2.S delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/amd64/mpih-mul3.S delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/amd64/mpih-rshift.S delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/amd64/mpih-sub1.S delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/config.links delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/ec.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/generic/Manifest delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/generic/distfiles delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/generic/mpi-asm-defs.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/generic/mpih-add1.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/generic/mpih-lshift.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/generic/mpih-mul1.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/generic/mpih-mul2.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/generic/mpih-mul3.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/generic/mpih-rshift.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/generic/mpih-sub1.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/generic/udiv-w-sdiv.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/hppa/README delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/hppa/distfiles delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/hppa/mpih-add1.S delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/hppa/mpih-lshift.S delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/hppa/mpih-rshift.S delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/hppa/mpih-sub1.S delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/hppa/udiv-qrnnd.S delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/i386/Manifest delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/i386/distfiles delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/i386/mpih-add1.S delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/i386/mpih-lshift.S delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/i386/mpih-mul1.S delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/i386/mpih-mul2.S delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/i386/mpih-mul3.S delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/i386/mpih-rshift.S delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/i386/mpih-sub1.S delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/i386/syntax.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/i586/Manifest delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/i586/README delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/i586/distfiles delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/i586/mpih-add1.S delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/i586/mpih-lshift.S delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/i586/mpih-mul1.S delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/i586/mpih-mul2.S delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/i586/mpih-mul3.S delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/i586/mpih-rshift.S delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/i586/mpih-sub1.S delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/longlong.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/m68k/Manifest delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/m68k/distfiles delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/m68k/mc68020/Manifest delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/m68k/mc68020/distfiles delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/m68k/mc68020/mpih-mul1.S delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/m68k/mc68020/mpih-mul2.S delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/m68k/mc68020/mpih-mul3.S delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/m68k/mpih-add1.S delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/m68k/mpih-lshift.S delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/m68k/mpih-rshift.S delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/m68k/mpih-sub1.S delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/m68k/syntax.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/mips3/Manifest delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/mips3/README delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/mips3/distfiles delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/mips3/mpi-asm-defs.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/mips3/mpih-add1.S delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/mips3/mpih-lshift.S delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/mips3/mpih-mul1.S delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/mips3/mpih-mul2.S delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/mips3/mpih-mul3.S delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/mips3/mpih-rshift.S delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/mips3/mpih-sub1.S delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/mpi-add.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/mpi-bit.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/mpi-cmp.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/mpi-div.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/mpi-gcd.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/mpi-inline.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/mpi-inline.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/mpi-internal.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/mpi-inv.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/mpi-mod.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/mpi-mpow.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/mpi-mul.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/mpi-pow.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/mpi-scan.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/mpicoder.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/mpih-div.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/mpih-mul.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/mpiutil.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/pa7100/Manifest delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/pa7100/distfiles delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/pa7100/mpih-lshift.S delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/pa7100/mpih-rshift.S delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/pentium4/README delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/pentium4/distfiles delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/pentium4/mmx/distfiles delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/pentium4/mmx/mpih-lshift.S delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/pentium4/mmx/mpih-rshift.S delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/pentium4/sse2/distfiles delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/pentium4/sse2/mpih-add1.S delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/pentium4/sse2/mpih-mul1.S delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/pentium4/sse2/mpih-mul2.S delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/pentium4/sse2/mpih-mul3.S delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/pentium4/sse2/mpih-sub1.S delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/power/Manifest delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/power/distfiles delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/power/mpih-add1.S delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/power/mpih-lshift.S delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/power/mpih-mul1.S delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/power/mpih-mul2.S delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/power/mpih-mul3.S delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/power/mpih-rshift.S delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/power/mpih-sub1.S delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/powerpc32/Manifest delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/powerpc32/distfiles delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/powerpc32/mpih-add1.S delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/powerpc32/mpih-lshift.S delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/powerpc32/mpih-mul1.S delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/powerpc32/mpih-mul2.S delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/powerpc32/mpih-mul3.S delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/powerpc32/mpih-rshift.S delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/powerpc32/mpih-sub1.S delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/powerpc32/syntax.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/powerpc64/distfiles delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/sparc32/Manifest delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/sparc32/distfiles delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/sparc32/mpih-add1.S delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/sparc32/mpih-lshift.S delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/sparc32/mpih-rshift.S delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/sparc32/udiv.S delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/sparc32v8/Manifest delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/sparc32v8/distfiles delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/sparc32v8/mpih-mul1.S delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/sparc32v8/mpih-mul2.S delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/sparc32v8/mpih-mul3.S delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/supersparc/Manifest delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/supersparc/distfiles delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/mpi/supersparc/udiv.S delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/src/ChangeLog-2011 delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/src/Makefile.am delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/src/Manifest delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/src/ath.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/src/ath.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/src/cipher-proto.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/src/cipher.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/src/dumpsexp.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/src/fips.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/src/g10lib.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/src/gcrypt-module.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/src/gcrypt.h.in delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/src/gcryptrnd.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/src/getrandom.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/src/global.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/src/hmac256.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/src/hmac256.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/src/hwfeatures.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/src/libgcrypt-config.in delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/src/libgcrypt.def delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/src/libgcrypt.m4 delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/src/libgcrypt.vers delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/src/misc.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/src/missing-string.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/src/module.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/src/mpi.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/src/secmem.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/src/secmem.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/src/sexp.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/src/stdmem.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/src/stdmem.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/src/types.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/src/versioninfo.rc.in delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/src/visibility.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt/src/visibility.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt_wrap/cipher_wrap.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/libgcrypt_wrap/mem.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/minilzo/lzoconf.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/minilzo/lzodefs.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/minilzo/minilzo.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/minilzo/minilzo.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/mips/arc/reboot.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/mips/loongson/reboot.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/mips/qemu_mips/reboot.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/mips/relocator.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/mips/relocator_asm.S delete mode 100644 thirdparty/grub-2.04/grub-core/lib/mips/setjmp.S delete mode 100644 thirdparty/grub-2.04/grub-core/lib/pbkdf2.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/posix_wrap/assert.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/posix_wrap/ctype.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/posix_wrap/errno.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/posix_wrap/inttypes.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/posix_wrap/langinfo.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/posix_wrap/limits.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/posix_wrap/localcharset.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/posix_wrap/locale.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/posix_wrap/stdint.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/posix_wrap/stdio.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/posix_wrap/stdlib.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/posix_wrap/string.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/posix_wrap/sys/types.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/posix_wrap/unistd.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/posix_wrap/wchar.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/posix_wrap/wctype.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/powerpc/relocator.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/powerpc/relocator_asm.S delete mode 100644 thirdparty/grub-2.04/grub-core/lib/powerpc/setjmp.S delete mode 100644 thirdparty/grub-2.04/grub-core/lib/priority_queue.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/progress.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/random.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/reed_solomon.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/relocator.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/riscv/setjmp.S delete mode 100644 thirdparty/grub-2.04/grub-core/lib/setjmp.S delete mode 100644 thirdparty/grub-2.04/grub-core/lib/sparc64/setjmp.S delete mode 100644 thirdparty/grub-2.04/grub-core/lib/syslinux_parse.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/uboot/reboot.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/x86_64/efi/relocator.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/x86_64/relocator_asm.S delete mode 100644 thirdparty/grub-2.04/grub-core/lib/x86_64/setjmp.S delete mode 100644 thirdparty/grub-2.04/grub-core/lib/x86_64/xen/relocator.S delete mode 100644 thirdparty/grub-2.04/grub-core/lib/xen/datetime.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/xen/halt.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/xen/reboot.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/xen/relocator.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/xzembed/xz.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/xzembed/xz_config.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/xzembed/xz_dec_bcj.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/xzembed/xz_dec_lzma2.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/xzembed/xz_dec_stream.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/xzembed/xz_lzma2.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/xzembed/xz_private.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/xzembed/xz_stream.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/zstd/bitstream.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/zstd/compiler.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/zstd/cpu.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/zstd/debug.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/zstd/debug.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/zstd/entropy_common.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/zstd/error_private.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/zstd/error_private.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/zstd/fse.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/zstd/fse_decompress.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/zstd/huf.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/zstd/huf_decompress.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/zstd/mem.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/zstd/module.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/zstd/xxhash.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/zstd/xxhash.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/zstd/zstd.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/zstd/zstd_common.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/zstd/zstd_decompress.c delete mode 100644 thirdparty/grub-2.04/grub-core/lib/zstd/zstd_errors.h delete mode 100644 thirdparty/grub-2.04/grub-core/lib/zstd/zstd_internal.h delete mode 100644 thirdparty/grub-2.04/grub-core/loader/aout.c delete mode 100644 thirdparty/grub-2.04/grub-core/loader/arm/linux.c delete mode 100644 thirdparty/grub-2.04/grub-core/loader/arm64/linux.c delete mode 100644 thirdparty/grub-2.04/grub-core/loader/arm64/xen_boot.c delete mode 100644 thirdparty/grub-2.04/grub-core/loader/efi/appleloader.c delete mode 100644 thirdparty/grub-2.04/grub-core/loader/efi/chainloader.c delete mode 100644 thirdparty/grub-2.04/grub-core/loader/efi/fdt.c delete mode 100644 thirdparty/grub-2.04/grub-core/loader/i386/bsd.c delete mode 100644 thirdparty/grub-2.04/grub-core/loader/i386/bsd32.c delete mode 100644 thirdparty/grub-2.04/grub-core/loader/i386/bsd64.c delete mode 100644 thirdparty/grub-2.04/grub-core/loader/i386/bsdXX.c delete mode 100644 thirdparty/grub-2.04/grub-core/loader/i386/bsd_pagetable.c delete mode 100644 thirdparty/grub-2.04/grub-core/loader/i386/coreboot/chainloader.c delete mode 100644 thirdparty/grub-2.04/grub-core/loader/i386/linux.c delete mode 100644 thirdparty/grub-2.04/grub-core/loader/i386/multiboot_mbi.c delete mode 100644 thirdparty/grub-2.04/grub-core/loader/i386/pc/chainloader.c delete mode 100644 thirdparty/grub-2.04/grub-core/loader/i386/pc/freedos.c delete mode 100644 thirdparty/grub-2.04/grub-core/loader/i386/pc/linux.c delete mode 100644 thirdparty/grub-2.04/grub-core/loader/i386/pc/ntldr.c delete mode 100644 thirdparty/grub-2.04/grub-core/loader/i386/pc/plan9.c delete mode 100644 thirdparty/grub-2.04/grub-core/loader/i386/pc/pxechainloader.c delete mode 100644 thirdparty/grub-2.04/grub-core/loader/i386/pc/truecrypt.c delete mode 100644 thirdparty/grub-2.04/grub-core/loader/i386/xen.c delete mode 100644 thirdparty/grub-2.04/grub-core/loader/i386/xen_file.c delete mode 100644 thirdparty/grub-2.04/grub-core/loader/i386/xen_file32.c delete mode 100644 thirdparty/grub-2.04/grub-core/loader/i386/xen_file64.c delete mode 100644 thirdparty/grub-2.04/grub-core/loader/i386/xen_fileXX.c delete mode 100644 thirdparty/grub-2.04/grub-core/loader/i386/xnu.c delete mode 100644 thirdparty/grub-2.04/grub-core/loader/ia64/efi/linux.c delete mode 100644 thirdparty/grub-2.04/grub-core/loader/linux.c delete mode 100644 thirdparty/grub-2.04/grub-core/loader/lzss.c delete mode 100644 thirdparty/grub-2.04/grub-core/loader/macho.c delete mode 100644 thirdparty/grub-2.04/grub-core/loader/macho32.c delete mode 100644 thirdparty/grub-2.04/grub-core/loader/macho64.c delete mode 100644 thirdparty/grub-2.04/grub-core/loader/machoXX.c delete mode 100644 thirdparty/grub-2.04/grub-core/loader/mips/linux.c delete mode 100644 thirdparty/grub-2.04/grub-core/loader/multiboot.c delete mode 100644 thirdparty/grub-2.04/grub-core/loader/multiboot_elfxx.c delete mode 100644 thirdparty/grub-2.04/grub-core/loader/multiboot_mbi2.c delete mode 100644 thirdparty/grub-2.04/grub-core/loader/powerpc/ieee1275/linux.c delete mode 100644 thirdparty/grub-2.04/grub-core/loader/riscv/linux.c delete mode 100644 thirdparty/grub-2.04/grub-core/loader/sparc64/ieee1275/linux.c delete mode 100644 thirdparty/grub-2.04/grub-core/loader/xnu.c delete mode 100644 thirdparty/grub-2.04/grub-core/loader/xnu_resume.c delete mode 100644 thirdparty/grub-2.04/grub-core/mmap/efi/mmap.c delete mode 100644 thirdparty/grub-2.04/grub-core/mmap/i386/mmap.c delete mode 100644 thirdparty/grub-2.04/grub-core/mmap/i386/pc/mmap.c delete mode 100644 thirdparty/grub-2.04/grub-core/mmap/i386/pc/mmap_helper.S delete mode 100644 thirdparty/grub-2.04/grub-core/mmap/i386/uppermem.c delete mode 100644 thirdparty/grub-2.04/grub-core/mmap/mips/uppermem.c delete mode 100644 thirdparty/grub-2.04/grub-core/mmap/mmap.c delete mode 100644 thirdparty/grub-2.04/grub-core/modinfo.sh.in delete mode 100644 thirdparty/grub-2.04/grub-core/net/arp.c delete mode 100644 thirdparty/grub-2.04/grub-core/net/bootp.c delete mode 100644 thirdparty/grub-2.04/grub-core/net/dns.c delete mode 100644 thirdparty/grub-2.04/grub-core/net/drivers/efi/efinet.c delete mode 100644 thirdparty/grub-2.04/grub-core/net/drivers/emu/emunet.c delete mode 100644 thirdparty/grub-2.04/grub-core/net/drivers/i386/pc/pxe.c delete mode 100644 thirdparty/grub-2.04/grub-core/net/drivers/ieee1275/ofnet.c delete mode 100644 thirdparty/grub-2.04/grub-core/net/drivers/uboot/ubootnet.c delete mode 100644 thirdparty/grub-2.04/grub-core/net/ethernet.c delete mode 100644 thirdparty/grub-2.04/grub-core/net/http.c delete mode 100644 thirdparty/grub-2.04/grub-core/net/icmp.c delete mode 100644 thirdparty/grub-2.04/grub-core/net/icmp6.c delete mode 100644 thirdparty/grub-2.04/grub-core/net/ip.c delete mode 100644 thirdparty/grub-2.04/grub-core/net/net.c delete mode 100644 thirdparty/grub-2.04/grub-core/net/netbuff.c delete mode 100644 thirdparty/grub-2.04/grub-core/net/tcp.c delete mode 100644 thirdparty/grub-2.04/grub-core/net/tftp.c delete mode 100644 thirdparty/grub-2.04/grub-core/net/udp.c delete mode 100644 thirdparty/grub-2.04/grub-core/normal/auth.c delete mode 100644 thirdparty/grub-2.04/grub-core/normal/autofs.c delete mode 100644 thirdparty/grub-2.04/grub-core/normal/charset.c delete mode 100644 thirdparty/grub-2.04/grub-core/normal/cmdline.c delete mode 100644 thirdparty/grub-2.04/grub-core/normal/color.c delete mode 100644 thirdparty/grub-2.04/grub-core/normal/completion.c delete mode 100644 thirdparty/grub-2.04/grub-core/normal/context.c delete mode 100644 thirdparty/grub-2.04/grub-core/normal/crypto.c delete mode 100644 thirdparty/grub-2.04/grub-core/normal/datetime.c delete mode 100644 thirdparty/grub-2.04/grub-core/normal/dyncmd.c delete mode 100644 thirdparty/grub-2.04/grub-core/normal/main.c delete mode 100644 thirdparty/grub-2.04/grub-core/normal/menu.c delete mode 100644 thirdparty/grub-2.04/grub-core/normal/menu_entry.c delete mode 100644 thirdparty/grub-2.04/grub-core/normal/menu_text.c delete mode 100644 thirdparty/grub-2.04/grub-core/normal/misc.c delete mode 100644 thirdparty/grub-2.04/grub-core/normal/term.c delete mode 100644 thirdparty/grub-2.04/grub-core/osdep/apple/getroot.c delete mode 100644 thirdparty/grub-2.04/grub-core/osdep/apple/hostdisk.c delete mode 100644 thirdparty/grub-2.04/grub-core/osdep/aros/config.c delete mode 100644 thirdparty/grub-2.04/grub-core/osdep/aros/getroot.c delete mode 100644 thirdparty/grub-2.04/grub-core/osdep/aros/hostdisk.c delete mode 100644 thirdparty/grub-2.04/grub-core/osdep/aros/relpath.c delete mode 100644 thirdparty/grub-2.04/grub-core/osdep/basic/compress.c delete mode 100644 thirdparty/grub-2.04/grub-core/osdep/basic/emunet.c delete mode 100644 thirdparty/grub-2.04/grub-core/osdep/basic/getroot.c delete mode 100644 thirdparty/grub-2.04/grub-core/osdep/basic/hostdisk.c delete mode 100644 thirdparty/grub-2.04/grub-core/osdep/basic/init.c delete mode 100644 thirdparty/grub-2.04/grub-core/osdep/basic/no_platform.c delete mode 100644 thirdparty/grub-2.04/grub-core/osdep/basic/ofpath.c delete mode 100644 thirdparty/grub-2.04/grub-core/osdep/basic/platform.c delete mode 100644 thirdparty/grub-2.04/grub-core/osdep/basic/random.c delete mode 100644 thirdparty/grub-2.04/grub-core/osdep/blocklist.c delete mode 100644 thirdparty/grub-2.04/grub-core/osdep/bsd/getroot.c delete mode 100644 thirdparty/grub-2.04/grub-core/osdep/bsd/hostdisk.c delete mode 100644 thirdparty/grub-2.04/grub-core/osdep/compress.c delete mode 100644 thirdparty/grub-2.04/grub-core/osdep/config.c delete mode 100644 thirdparty/grub-2.04/grub-core/osdep/cputime.c delete mode 100644 thirdparty/grub-2.04/grub-core/osdep/devmapper/getroot.c delete mode 100644 thirdparty/grub-2.04/grub-core/osdep/devmapper/hostdisk.c delete mode 100644 thirdparty/grub-2.04/grub-core/osdep/dl.c delete mode 100644 thirdparty/grub-2.04/grub-core/osdep/emuconsole.c delete mode 100644 thirdparty/grub-2.04/grub-core/osdep/emunet.c delete mode 100644 thirdparty/grub-2.04/grub-core/osdep/exec.c delete mode 100644 thirdparty/grub-2.04/grub-core/osdep/freebsd/getroot.c delete mode 100644 thirdparty/grub-2.04/grub-core/osdep/freebsd/hostdisk.c delete mode 100644 thirdparty/grub-2.04/grub-core/osdep/generic/blocklist.c delete mode 100644 thirdparty/grub-2.04/grub-core/osdep/getroot.c delete mode 100644 thirdparty/grub-2.04/grub-core/osdep/haiku/getroot.c delete mode 100644 thirdparty/grub-2.04/grub-core/osdep/haiku/hostdisk.c delete mode 100644 thirdparty/grub-2.04/grub-core/osdep/hostdisk.c delete mode 100644 thirdparty/grub-2.04/grub-core/osdep/hurd/getroot.c delete mode 100644 thirdparty/grub-2.04/grub-core/osdep/hurd/hostdisk.c delete mode 100644 thirdparty/grub-2.04/grub-core/osdep/init.c delete mode 100644 thirdparty/grub-2.04/grub-core/osdep/linux/blocklist.c delete mode 100644 thirdparty/grub-2.04/grub-core/osdep/linux/emunet.c delete mode 100644 thirdparty/grub-2.04/grub-core/osdep/linux/getroot.c delete mode 100644 thirdparty/grub-2.04/grub-core/osdep/linux/hostdisk.c delete mode 100644 thirdparty/grub-2.04/grub-core/osdep/linux/ofpath.c delete mode 100644 thirdparty/grub-2.04/grub-core/osdep/linux/platform.c delete mode 100644 thirdparty/grub-2.04/grub-core/osdep/ofpath.c delete mode 100644 thirdparty/grub-2.04/grub-core/osdep/password.c delete mode 100644 thirdparty/grub-2.04/grub-core/osdep/platform.c delete mode 100644 thirdparty/grub-2.04/grub-core/osdep/platform_unix.c delete mode 100644 thirdparty/grub-2.04/grub-core/osdep/random.c delete mode 100644 thirdparty/grub-2.04/grub-core/osdep/relpath.c delete mode 100644 thirdparty/grub-2.04/grub-core/osdep/sleep.c delete mode 100644 thirdparty/grub-2.04/grub-core/osdep/sun/getroot.c delete mode 100644 thirdparty/grub-2.04/grub-core/osdep/sun/hostdisk.c delete mode 100644 thirdparty/grub-2.04/grub-core/osdep/unix/compress.c delete mode 100644 thirdparty/grub-2.04/grub-core/osdep/unix/config.c delete mode 100644 thirdparty/grub-2.04/grub-core/osdep/unix/cputime.c delete mode 100644 thirdparty/grub-2.04/grub-core/osdep/unix/dl.c delete mode 100644 thirdparty/grub-2.04/grub-core/osdep/unix/emuconsole.c delete mode 100644 thirdparty/grub-2.04/grub-core/osdep/unix/exec.c delete mode 100644 thirdparty/grub-2.04/grub-core/osdep/unix/getroot.c delete mode 100644 thirdparty/grub-2.04/grub-core/osdep/unix/hostdisk.c delete mode 100644 thirdparty/grub-2.04/grub-core/osdep/unix/password.c delete mode 100644 thirdparty/grub-2.04/grub-core/osdep/unix/platform.c delete mode 100644 thirdparty/grub-2.04/grub-core/osdep/unix/random.c delete mode 100644 thirdparty/grub-2.04/grub-core/osdep/unix/relpath.c delete mode 100644 thirdparty/grub-2.04/grub-core/osdep/unix/sleep.c delete mode 100644 thirdparty/grub-2.04/grub-core/osdep/windows/blocklist.c delete mode 100644 thirdparty/grub-2.04/grub-core/osdep/windows/config.c delete mode 100644 thirdparty/grub-2.04/grub-core/osdep/windows/cputime.c delete mode 100644 thirdparty/grub-2.04/grub-core/osdep/windows/dl.c delete mode 100644 thirdparty/grub-2.04/grub-core/osdep/windows/emuconsole.c delete mode 100644 thirdparty/grub-2.04/grub-core/osdep/windows/getroot.c delete mode 100644 thirdparty/grub-2.04/grub-core/osdep/windows/hostdisk.c delete mode 100644 thirdparty/grub-2.04/grub-core/osdep/windows/init.c delete mode 100644 thirdparty/grub-2.04/grub-core/osdep/windows/password.c delete mode 100644 thirdparty/grub-2.04/grub-core/osdep/windows/platform.c delete mode 100644 thirdparty/grub-2.04/grub-core/osdep/windows/random.c delete mode 100644 thirdparty/grub-2.04/grub-core/osdep/windows/relpath.c delete mode 100644 thirdparty/grub-2.04/grub-core/osdep/windows/sleep.c delete mode 100644 thirdparty/grub-2.04/grub-core/partmap/acorn.c delete mode 100644 thirdparty/grub-2.04/grub-core/partmap/amiga.c delete mode 100644 thirdparty/grub-2.04/grub-core/partmap/apple.c delete mode 100644 thirdparty/grub-2.04/grub-core/partmap/bsdlabel.c delete mode 100644 thirdparty/grub-2.04/grub-core/partmap/dfly.c delete mode 100644 thirdparty/grub-2.04/grub-core/partmap/dvh.c delete mode 100644 thirdparty/grub-2.04/grub-core/partmap/gpt.c delete mode 100644 thirdparty/grub-2.04/grub-core/partmap/msdos.c delete mode 100644 thirdparty/grub-2.04/grub-core/partmap/plan.c delete mode 100644 thirdparty/grub-2.04/grub-core/partmap/sun.c delete mode 100644 thirdparty/grub-2.04/grub-core/partmap/sunpc.c delete mode 100644 thirdparty/grub-2.04/grub-core/parttool/msdospart.c delete mode 100644 thirdparty/grub-2.04/grub-core/script/argv.c delete mode 100644 thirdparty/grub-2.04/grub-core/script/execute.c delete mode 100644 thirdparty/grub-2.04/grub-core/script/function.c delete mode 100644 thirdparty/grub-2.04/grub-core/script/lexer.c delete mode 100644 thirdparty/grub-2.04/grub-core/script/main.c delete mode 100644 thirdparty/grub-2.04/grub-core/script/parser.y delete mode 100644 thirdparty/grub-2.04/grub-core/script/script.c delete mode 100644 thirdparty/grub-2.04/grub-core/script/yylex.l delete mode 100644 thirdparty/grub-2.04/grub-core/term/arc/console.c delete mode 100644 thirdparty/grub-2.04/grub-core/term/arc/serial.c delete mode 100644 thirdparty/grub-2.04/grub-core/term/arm/cros.c delete mode 100644 thirdparty/grub-2.04/grub-core/term/arm/cros_ec.c delete mode 100644 thirdparty/grub-2.04/grub-core/term/arm/pl050.c delete mode 100644 thirdparty/grub-2.04/grub-core/term/at_keyboard.c delete mode 100644 thirdparty/grub-2.04/grub-core/term/efi/console.c delete mode 100644 thirdparty/grub-2.04/grub-core/term/efi/serial.c delete mode 100644 thirdparty/grub-2.04/grub-core/term/gfxterm.c delete mode 100644 thirdparty/grub-2.04/grub-core/term/gfxterm_background.c delete mode 100644 thirdparty/grub-2.04/grub-core/term/i386/coreboot/cbmemc.c delete mode 100644 thirdparty/grub-2.04/grub-core/term/i386/pc/console.c delete mode 100644 thirdparty/grub-2.04/grub-core/term/i386/pc/mda_text.c delete mode 100644 thirdparty/grub-2.04/grub-core/term/i386/pc/vga_text.c delete mode 100644 thirdparty/grub-2.04/grub-core/term/ieee1275/console.c delete mode 100644 thirdparty/grub-2.04/grub-core/term/ieee1275/escc.c delete mode 100644 thirdparty/grub-2.04/grub-core/term/ieee1275/serial.c delete mode 100644 thirdparty/grub-2.04/grub-core/term/morse.c delete mode 100644 thirdparty/grub-2.04/grub-core/term/ns8250.c delete mode 100644 thirdparty/grub-2.04/grub-core/term/ps2.c delete mode 100644 thirdparty/grub-2.04/grub-core/term/serial.c delete mode 100644 thirdparty/grub-2.04/grub-core/term/spkmodem.c delete mode 100644 thirdparty/grub-2.04/grub-core/term/terminfo.c delete mode 100644 thirdparty/grub-2.04/grub-core/term/tparm.c delete mode 100644 thirdparty/grub-2.04/grub-core/term/uboot/console.c delete mode 100644 thirdparty/grub-2.04/grub-core/term/usb_keyboard.c delete mode 100644 thirdparty/grub-2.04/grub-core/term/xen/console.c delete mode 100644 thirdparty/grub-2.04/grub-core/tests/boot/kbsd.init-i386.S delete mode 100644 thirdparty/grub-2.04/grub-core/tests/boot/kbsd.init-x86_64.S delete mode 100644 thirdparty/grub-2.04/grub-core/tests/boot/kbsd.spec.txt delete mode 100644 thirdparty/grub-2.04/grub-core/tests/boot/kernel-8086.S delete mode 100644 thirdparty/grub-2.04/grub-core/tests/boot/kernel-i386.S delete mode 100644 thirdparty/grub-2.04/grub-core/tests/boot/kfreebsd-aout.cfg delete mode 100644 thirdparty/grub-2.04/grub-core/tests/boot/kfreebsd.cfg delete mode 100644 thirdparty/grub-2.04/grub-core/tests/boot/kfreebsd.init-i386.S delete mode 100644 thirdparty/grub-2.04/grub-core/tests/boot/kfreebsd.init-x86_64.S delete mode 100644 thirdparty/grub-2.04/grub-core/tests/boot/knetbsd.cfg delete mode 100644 thirdparty/grub-2.04/grub-core/tests/boot/kopenbsd.cfg delete mode 100644 thirdparty/grub-2.04/grub-core/tests/boot/kopenbsdlabel.txt delete mode 100644 thirdparty/grub-2.04/grub-core/tests/boot/linux-ppc.cfg delete mode 100644 thirdparty/grub-2.04/grub-core/tests/boot/linux.cfg delete mode 100644 thirdparty/grub-2.04/grub-core/tests/boot/linux.init-i386.S delete mode 100644 thirdparty/grub-2.04/grub-core/tests/boot/linux.init-mips.S delete mode 100644 thirdparty/grub-2.04/grub-core/tests/boot/linux.init-ppc.S delete mode 100644 thirdparty/grub-2.04/grub-core/tests/boot/linux.init-x86_64.S delete mode 100644 thirdparty/grub-2.04/grub-core/tests/boot/linux16.cfg delete mode 100644 thirdparty/grub-2.04/grub-core/tests/boot/multiboot.cfg delete mode 100644 thirdparty/grub-2.04/grub-core/tests/boot/multiboot2.cfg delete mode 100644 thirdparty/grub-2.04/grub-core/tests/boot/ntldr.cfg delete mode 100644 thirdparty/grub-2.04/grub-core/tests/boot/pc-chainloader.cfg delete mode 100644 thirdparty/grub-2.04/grub-core/tests/boot/qemu-shutdown-x86.S delete mode 100644 thirdparty/grub-2.04/grub-core/tests/bswap_test.c delete mode 100644 thirdparty/grub-2.04/grub-core/tests/checksums.h delete mode 100644 thirdparty/grub-2.04/grub-core/tests/cmdline_cat_test.c delete mode 100644 thirdparty/grub-2.04/grub-core/tests/cmp_test.c delete mode 100644 thirdparty/grub-2.04/grub-core/tests/ctz_test.c delete mode 100644 thirdparty/grub-2.04/grub-core/tests/div_test.c delete mode 100644 thirdparty/grub-2.04/grub-core/tests/example_functional_test.c delete mode 100644 thirdparty/grub-2.04/grub-core/tests/fake_input.c delete mode 100644 thirdparty/grub-2.04/grub-core/tests/gfxterm_menu.c delete mode 100644 thirdparty/grub-2.04/grub-core/tests/legacy_password_test.c delete mode 100644 thirdparty/grub-2.04/grub-core/tests/lib/functional_test.c delete mode 100644 thirdparty/grub-2.04/grub-core/tests/lib/test.c delete mode 100644 thirdparty/grub-2.04/grub-core/tests/mul_test.c delete mode 100644 thirdparty/grub-2.04/grub-core/tests/pbkdf2_test.c delete mode 100644 thirdparty/grub-2.04/grub-core/tests/setjmp_test.c delete mode 100644 thirdparty/grub-2.04/grub-core/tests/shift_test.c delete mode 100644 thirdparty/grub-2.04/grub-core/tests/signature_test.c delete mode 100644 thirdparty/grub-2.04/grub-core/tests/signatures.h delete mode 100644 thirdparty/grub-2.04/grub-core/tests/sleep_test.c delete mode 100644 thirdparty/grub-2.04/grub-core/tests/strtoull_test.c delete mode 100644 thirdparty/grub-2.04/grub-core/tests/test_blockarg.c delete mode 100644 thirdparty/grub-2.04/grub-core/tests/video_checksum.c delete mode 100644 thirdparty/grub-2.04/grub-core/tests/videotest_checksum.c delete mode 100644 thirdparty/grub-2.04/grub-core/tests/xnu_uuid_test.c delete mode 100644 thirdparty/grub-2.04/grub-core/unidata.c delete mode 100644 thirdparty/grub-2.04/grub-core/video/bitmap.c delete mode 100644 thirdparty/grub-2.04/grub-core/video/bitmap_scale.c delete mode 100644 thirdparty/grub-2.04/grub-core/video/bochs.c delete mode 100644 thirdparty/grub-2.04/grub-core/video/capture.c delete mode 100644 thirdparty/grub-2.04/grub-core/video/cirrus.c delete mode 100644 thirdparty/grub-2.04/grub-core/video/colors.c delete mode 100644 thirdparty/grub-2.04/grub-core/video/coreboot/cbfb.c delete mode 100644 thirdparty/grub-2.04/grub-core/video/efi_gop.c delete mode 100644 thirdparty/grub-2.04/grub-core/video/efi_uga.c delete mode 100644 thirdparty/grub-2.04/grub-core/video/emu/sdl.c delete mode 100644 thirdparty/grub-2.04/grub-core/video/fb/fbblit.c delete mode 100644 thirdparty/grub-2.04/grub-core/video/fb/fbfill.c delete mode 100644 thirdparty/grub-2.04/grub-core/video/fb/fbutil.c delete mode 100644 thirdparty/grub-2.04/grub-core/video/fb/video_fb.c delete mode 100644 thirdparty/grub-2.04/grub-core/video/i386/pc/vbe.c delete mode 100644 thirdparty/grub-2.04/grub-core/video/i386/pc/vga.c delete mode 100644 thirdparty/grub-2.04/grub-core/video/ieee1275.c delete mode 100644 thirdparty/grub-2.04/grub-core/video/radeon_fuloong2e.c delete mode 100644 thirdparty/grub-2.04/grub-core/video/radeon_yeeloong3a.c delete mode 100644 thirdparty/grub-2.04/grub-core/video/readers/jpeg.c delete mode 100644 thirdparty/grub-2.04/grub-core/video/readers/png.c delete mode 100644 thirdparty/grub-2.04/grub-core/video/readers/tga.c delete mode 100644 thirdparty/grub-2.04/grub-core/video/sis315_init.c delete mode 100644 thirdparty/grub-2.04/grub-core/video/sis315pro.c delete mode 100644 thirdparty/grub-2.04/grub-core/video/sm712.c delete mode 100644 thirdparty/grub-2.04/grub-core/video/sm712_init.c delete mode 100644 thirdparty/grub-2.04/grub-core/video/video.c delete mode 100644 thirdparty/grub-2.04/include/grub/acorn_filecore.h delete mode 100644 thirdparty/grub-2.04/include/grub/acpi.h delete mode 100644 thirdparty/grub-2.04/include/grub/aout.h delete mode 100644 thirdparty/grub-2.04/include/grub/arc/arc.h delete mode 100644 thirdparty/grub-2.04/include/grub/arc/console.h delete mode 100644 thirdparty/grub-2.04/include/grub/archelp.h delete mode 100644 thirdparty/grub-2.04/include/grub/arm/coreboot/console.h delete mode 100644 thirdparty/grub-2.04/include/grub/arm/coreboot/kernel.h delete mode 100644 thirdparty/grub-2.04/include/grub/arm/cros_ec.h delete mode 100644 thirdparty/grub-2.04/include/grub/arm/efi/memory.h delete mode 100644 thirdparty/grub-2.04/include/grub/arm/linux.h delete mode 100644 thirdparty/grub-2.04/include/grub/arm/reloc.h delete mode 100644 thirdparty/grub-2.04/include/grub/arm/setjmp.h delete mode 100644 thirdparty/grub-2.04/include/grub/arm/startup.h delete mode 100644 thirdparty/grub-2.04/include/grub/arm/system.h delete mode 100644 thirdparty/grub-2.04/include/grub/arm/time.h delete mode 100644 thirdparty/grub-2.04/include/grub/arm/types.h delete mode 100644 thirdparty/grub-2.04/include/grub/arm/uboot/kernel.h delete mode 100644 thirdparty/grub-2.04/include/grub/arm64/efi/memory.h delete mode 100644 thirdparty/grub-2.04/include/grub/arm64/linux.h delete mode 100644 thirdparty/grub-2.04/include/grub/arm64/reloc.h delete mode 100644 thirdparty/grub-2.04/include/grub/arm64/setjmp.h delete mode 100644 thirdparty/grub-2.04/include/grub/arm64/time.h delete mode 100644 thirdparty/grub-2.04/include/grub/arm64/types.h delete mode 100644 thirdparty/grub-2.04/include/grub/at_keyboard.h delete mode 100644 thirdparty/grub-2.04/include/grub/ata.h delete mode 100644 thirdparty/grub-2.04/include/grub/auth.h delete mode 100644 thirdparty/grub-2.04/include/grub/autoefi.h delete mode 100644 thirdparty/grub-2.04/include/grub/backtrace.h delete mode 100644 thirdparty/grub-2.04/include/grub/bitmap.h delete mode 100644 thirdparty/grub-2.04/include/grub/bitmap_scale.h delete mode 100644 thirdparty/grub-2.04/include/grub/boottime.h delete mode 100644 thirdparty/grub-2.04/include/grub/bsdlabel.h delete mode 100644 thirdparty/grub-2.04/include/grub/btrfs.h delete mode 100644 thirdparty/grub-2.04/include/grub/bufio.h delete mode 100644 thirdparty/grub-2.04/include/grub/cache.h delete mode 100644 thirdparty/grub-2.04/include/grub/cbfs_core.h delete mode 100644 thirdparty/grub-2.04/include/grub/charset.h delete mode 100644 thirdparty/grub-2.04/include/grub/cmos.h delete mode 100644 thirdparty/grub-2.04/include/grub/color.h delete mode 100644 thirdparty/grub-2.04/include/grub/command.h delete mode 100644 thirdparty/grub-2.04/include/grub/compiler-rt-emu.h delete mode 100644 thirdparty/grub-2.04/include/grub/compiler-rt.h delete mode 100644 thirdparty/grub-2.04/include/grub/compiler.h delete mode 100644 thirdparty/grub-2.04/include/grub/coreboot/lbio.h delete mode 100644 thirdparty/grub-2.04/include/grub/crypto.h delete mode 100644 thirdparty/grub-2.04/include/grub/cryptodisk.h delete mode 100644 thirdparty/grub-2.04/include/grub/cs5536.h delete mode 100644 thirdparty/grub-2.04/include/grub/datetime.h delete mode 100644 thirdparty/grub-2.04/include/grub/decompressor.h delete mode 100644 thirdparty/grub-2.04/include/grub/deflate.h delete mode 100644 thirdparty/grub-2.04/include/grub/device.h delete mode 100644 thirdparty/grub-2.04/include/grub/disk.h delete mode 100644 thirdparty/grub-2.04/include/grub/diskfilter.h delete mode 100644 thirdparty/grub-2.04/include/grub/dl.h delete mode 100644 thirdparty/grub-2.04/include/grub/dma.h delete mode 100644 thirdparty/grub-2.04/include/grub/efi/api.h delete mode 100644 thirdparty/grub-2.04/include/grub/efi/console.h delete mode 100644 thirdparty/grub-2.04/include/grub/efi/console_control.h delete mode 100644 thirdparty/grub-2.04/include/grub/efi/disk.h delete mode 100644 thirdparty/grub-2.04/include/grub/efi/edid.h delete mode 100644 thirdparty/grub-2.04/include/grub/efi/efi.h delete mode 100644 thirdparty/grub-2.04/include/grub/efi/fdtload.h delete mode 100644 thirdparty/grub-2.04/include/grub/efi/graphics_output.h delete mode 100644 thirdparty/grub-2.04/include/grub/efi/memory.h delete mode 100644 thirdparty/grub-2.04/include/grub/efi/pci.h delete mode 100644 thirdparty/grub-2.04/include/grub/efi/pe32.h delete mode 100644 thirdparty/grub-2.04/include/grub/efi/tpm.h delete mode 100644 thirdparty/grub-2.04/include/grub/efi/uga_draw.h delete mode 100644 thirdparty/grub-2.04/include/grub/efiemu/efiemu.h delete mode 100644 thirdparty/grub-2.04/include/grub/efiemu/runtime.h delete mode 100644 thirdparty/grub-2.04/include/grub/elf.h delete mode 100644 thirdparty/grub-2.04/include/grub/elfload.h delete mode 100644 thirdparty/grub-2.04/include/grub/emu/config.h delete mode 100644 thirdparty/grub-2.04/include/grub/emu/console.h delete mode 100644 thirdparty/grub-2.04/include/grub/emu/exec.h delete mode 100644 thirdparty/grub-2.04/include/grub/emu/getroot.h delete mode 100644 thirdparty/grub-2.04/include/grub/emu/hostdisk.h delete mode 100644 thirdparty/grub-2.04/include/grub/emu/hostfile.h delete mode 100644 thirdparty/grub-2.04/include/grub/emu/misc.h delete mode 100644 thirdparty/grub-2.04/include/grub/emu/net.h delete mode 100644 thirdparty/grub-2.04/include/grub/env.h delete mode 100644 thirdparty/grub-2.04/include/grub/env_private.h delete mode 100644 thirdparty/grub-2.04/include/grub/err.h delete mode 100644 thirdparty/grub-2.04/include/grub/exfat.h delete mode 100644 thirdparty/grub-2.04/include/grub/extcmd.h delete mode 100644 thirdparty/grub-2.04/include/grub/fat.h delete mode 100644 thirdparty/grub-2.04/include/grub/fbblit.h delete mode 100644 thirdparty/grub-2.04/include/grub/fbfill.h delete mode 100644 thirdparty/grub-2.04/include/grub/fbutil.h delete mode 100644 thirdparty/grub-2.04/include/grub/fdt.h delete mode 100644 thirdparty/grub-2.04/include/grub/fdtbus.h delete mode 100644 thirdparty/grub-2.04/include/grub/file.h delete mode 100644 thirdparty/grub-2.04/include/grub/fileid.h delete mode 100644 thirdparty/grub-2.04/include/grub/font.h delete mode 100644 thirdparty/grub-2.04/include/grub/fontformat.h delete mode 100644 thirdparty/grub-2.04/include/grub/fs.h delete mode 100644 thirdparty/grub-2.04/include/grub/fshelp.h delete mode 100644 thirdparty/grub-2.04/include/grub/gcry/types.h delete mode 100644 thirdparty/grub-2.04/include/grub/gcrypt/g10lib.h delete mode 100644 thirdparty/grub-2.04/include/grub/gcrypt/gcrypt.h delete mode 100644 thirdparty/grub-2.04/include/grub/gcrypt/gpg-error.h delete mode 100644 thirdparty/grub-2.04/include/grub/gdb.h delete mode 100644 thirdparty/grub-2.04/include/grub/gfxmenu_model.h delete mode 100644 thirdparty/grub-2.04/include/grub/gfxmenu_view.h delete mode 100644 thirdparty/grub-2.04/include/grub/gfxterm.h delete mode 100644 thirdparty/grub-2.04/include/grub/gfxwidgets.h delete mode 100644 thirdparty/grub-2.04/include/grub/gpt_partition.h delete mode 100644 thirdparty/grub-2.04/include/grub/gui.h delete mode 100644 thirdparty/grub-2.04/include/grub/gui_string_util.h delete mode 100644 thirdparty/grub-2.04/include/grub/hfs.h delete mode 100644 thirdparty/grub-2.04/include/grub/hfsplus.h delete mode 100644 thirdparty/grub-2.04/include/grub/i18n.h delete mode 100644 thirdparty/grub-2.04/include/grub/i386/at_keyboard.h delete mode 100644 thirdparty/grub-2.04/include/grub/i386/bsd.h delete mode 100644 thirdparty/grub-2.04/include/grub/i386/cmos.h delete mode 100644 thirdparty/grub-2.04/include/grub/i386/coreboot/boot.h delete mode 100644 thirdparty/grub-2.04/include/grub/i386/coreboot/console.h delete mode 100644 thirdparty/grub-2.04/include/grub/i386/coreboot/kernel.h delete mode 100644 thirdparty/grub-2.04/include/grub/i386/coreboot/memory.h delete mode 100644 thirdparty/grub-2.04/include/grub/i386/coreboot/serial.h delete mode 100644 thirdparty/grub-2.04/include/grub/i386/coreboot/time.h delete mode 100644 thirdparty/grub-2.04/include/grub/i386/cpuid.h delete mode 100644 thirdparty/grub-2.04/include/grub/i386/efi/kernel.h delete mode 100644 thirdparty/grub-2.04/include/grub/i386/efi/memory.h delete mode 100644 thirdparty/grub-2.04/include/grub/i386/efi/serial.h delete mode 100644 thirdparty/grub-2.04/include/grub/i386/efiemu.h delete mode 100644 thirdparty/grub-2.04/include/grub/i386/floppy.h delete mode 100644 thirdparty/grub-2.04/include/grub/i386/freebsd_linker.h delete mode 100644 thirdparty/grub-2.04/include/grub/i386/freebsd_reboot.h delete mode 100644 thirdparty/grub-2.04/include/grub/i386/gdb.h delete mode 100644 thirdparty/grub-2.04/include/grub/i386/ieee1275/ieee1275.h delete mode 100644 thirdparty/grub-2.04/include/grub/i386/ieee1275/kernel.h delete mode 100644 thirdparty/grub-2.04/include/grub/i386/ieee1275/memory.h delete mode 100644 thirdparty/grub-2.04/include/grub/i386/ieee1275/serial.h delete mode 100644 thirdparty/grub-2.04/include/grub/i386/io.h delete mode 100644 thirdparty/grub-2.04/include/grub/i386/linux.h delete mode 100644 thirdparty/grub-2.04/include/grub/i386/macho.h delete mode 100644 thirdparty/grub-2.04/include/grub/i386/memory.h delete mode 100644 thirdparty/grub-2.04/include/grub/i386/memory_raw.h delete mode 100644 thirdparty/grub-2.04/include/grub/i386/multiboot.h delete mode 100644 thirdparty/grub-2.04/include/grub/i386/multiboot/boot.h delete mode 100644 thirdparty/grub-2.04/include/grub/i386/multiboot/console.h delete mode 100644 thirdparty/grub-2.04/include/grub/i386/multiboot/kernel.h delete mode 100644 thirdparty/grub-2.04/include/grub/i386/multiboot/memory.h delete mode 100644 thirdparty/grub-2.04/include/grub/i386/multiboot/serial.h delete mode 100644 thirdparty/grub-2.04/include/grub/i386/multiboot/time.h delete mode 100644 thirdparty/grub-2.04/include/grub/i386/netbsd_bootinfo.h delete mode 100644 thirdparty/grub-2.04/include/grub/i386/netbsd_reboot.h delete mode 100644 thirdparty/grub-2.04/include/grub/i386/openbsd_bootarg.h delete mode 100644 thirdparty/grub-2.04/include/grub/i386/openbsd_reboot.h delete mode 100644 thirdparty/grub-2.04/include/grub/i386/pc/apm.h delete mode 100644 thirdparty/grub-2.04/include/grub/i386/pc/biosdisk.h delete mode 100644 thirdparty/grub-2.04/include/grub/i386/pc/biosnum.h delete mode 100644 thirdparty/grub-2.04/include/grub/i386/pc/boot.h delete mode 100644 thirdparty/grub-2.04/include/grub/i386/pc/chainloader.h delete mode 100644 thirdparty/grub-2.04/include/grub/i386/pc/console.h delete mode 100644 thirdparty/grub-2.04/include/grub/i386/pc/int.h delete mode 100644 thirdparty/grub-2.04/include/grub/i386/pc/int_types.h delete mode 100644 thirdparty/grub-2.04/include/grub/i386/pc/kernel.h delete mode 100644 thirdparty/grub-2.04/include/grub/i386/pc/memory.h delete mode 100644 thirdparty/grub-2.04/include/grub/i386/pc/pxe.h delete mode 100644 thirdparty/grub-2.04/include/grub/i386/pc/time.h delete mode 100644 thirdparty/grub-2.04/include/grub/i386/pc/vbe.h delete mode 100644 thirdparty/grub-2.04/include/grub/i386/pc/vesa_modes_table.h delete mode 100644 thirdparty/grub-2.04/include/grub/i386/pci.h delete mode 100644 thirdparty/grub-2.04/include/grub/i386/pit.h delete mode 100644 thirdparty/grub-2.04/include/grub/i386/pmtimer.h delete mode 100644 thirdparty/grub-2.04/include/grub/i386/qemu/boot.h delete mode 100644 thirdparty/grub-2.04/include/grub/i386/qemu/console.h delete mode 100644 thirdparty/grub-2.04/include/grub/i386/qemu/kernel.h delete mode 100644 thirdparty/grub-2.04/include/grub/i386/qemu/memory.h delete mode 100644 thirdparty/grub-2.04/include/grub/i386/qemu/serial.h delete mode 100644 thirdparty/grub-2.04/include/grub/i386/qemu/time.h delete mode 100644 thirdparty/grub-2.04/include/grub/i386/rdmsr.h delete mode 100644 thirdparty/grub-2.04/include/grub/i386/reboot.h delete mode 100644 thirdparty/grub-2.04/include/grub/i386/relocator.h delete mode 100644 thirdparty/grub-2.04/include/grub/i386/relocator_private.h delete mode 100644 thirdparty/grub-2.04/include/grub/i386/setjmp.h delete mode 100644 thirdparty/grub-2.04/include/grub/i386/time.h delete mode 100644 thirdparty/grub-2.04/include/grub/i386/tsc.h delete mode 100644 thirdparty/grub-2.04/include/grub/i386/types.h delete mode 100644 thirdparty/grub-2.04/include/grub/i386/wrmsr.h delete mode 100644 thirdparty/grub-2.04/include/grub/i386/xen/hypercall.h delete mode 100644 thirdparty/grub-2.04/include/grub/i386/xen/kernel.h delete mode 100644 thirdparty/grub-2.04/include/grub/i386/xen/memory.h delete mode 100644 thirdparty/grub-2.04/include/grub/i386/xen_pvh/boot.h delete mode 100644 thirdparty/grub-2.04/include/grub/i386/xen_pvh/console.h delete mode 100644 thirdparty/grub-2.04/include/grub/i386/xen_pvh/int.h delete mode 100644 thirdparty/grub-2.04/include/grub/i386/xen_pvh/kernel.h delete mode 100644 thirdparty/grub-2.04/include/grub/i386/xen_pvh/memory.h delete mode 100644 thirdparty/grub-2.04/include/grub/i386/xen_pvh/time.h delete mode 100644 thirdparty/grub-2.04/include/grub/i386/xnu.h delete mode 100644 thirdparty/grub-2.04/include/grub/ia64/efi/memory.h delete mode 100644 thirdparty/grub-2.04/include/grub/ia64/efi/time.h delete mode 100644 thirdparty/grub-2.04/include/grub/ia64/kernel.h delete mode 100644 thirdparty/grub-2.04/include/grub/ia64/reloc.h delete mode 100644 thirdparty/grub-2.04/include/grub/ia64/setjmp.h delete mode 100644 thirdparty/grub-2.04/include/grub/ia64/time.h delete mode 100644 thirdparty/grub-2.04/include/grub/ia64/types.h delete mode 100644 thirdparty/grub-2.04/include/grub/icon_manager.h delete mode 100644 thirdparty/grub-2.04/include/grub/ieee1275/console.h delete mode 100644 thirdparty/grub-2.04/include/grub/ieee1275/ieee1275.h delete mode 100644 thirdparty/grub-2.04/include/grub/ieee1275/obdisk.h delete mode 100644 thirdparty/grub-2.04/include/grub/ieee1275/ofdisk.h delete mode 100644 thirdparty/grub-2.04/include/grub/kernel.h delete mode 100644 thirdparty/grub-2.04/include/grub/keyboard_layouts.h delete mode 100644 thirdparty/grub-2.04/include/grub/legacy_parse.h delete mode 100644 thirdparty/grub-2.04/include/grub/lib/LzFind.h delete mode 100644 thirdparty/grub-2.04/include/grub/lib/LzHash.h delete mode 100644 thirdparty/grub-2.04/include/grub/lib/LzmaDec.h delete mode 100644 thirdparty/grub-2.04/include/grub/lib/LzmaEnc.h delete mode 100644 thirdparty/grub-2.04/include/grub/lib/LzmaTypes.h delete mode 100644 thirdparty/grub-2.04/include/grub/lib/arg.h delete mode 100644 thirdparty/grub-2.04/include/grub/lib/cmdline.h delete mode 100644 thirdparty/grub-2.04/include/grub/lib/crc.h delete mode 100644 thirdparty/grub-2.04/include/grub/lib/envblk.h delete mode 100644 thirdparty/grub-2.04/include/grub/lib/hexdump.h delete mode 100644 thirdparty/grub-2.04/include/grub/libpciaccess.h delete mode 100644 thirdparty/grub-2.04/include/grub/linux.h delete mode 100644 thirdparty/grub-2.04/include/grub/list.h delete mode 100644 thirdparty/grub-2.04/include/grub/loader.h delete mode 100644 thirdparty/grub-2.04/include/grub/lvm.h delete mode 100644 thirdparty/grub-2.04/include/grub/macho.h delete mode 100644 thirdparty/grub-2.04/include/grub/machoload.h delete mode 100644 thirdparty/grub-2.04/include/grub/memory.h delete mode 100644 thirdparty/grub-2.04/include/grub/menu.h delete mode 100644 thirdparty/grub-2.04/include/grub/menu_viewer.h delete mode 100644 thirdparty/grub-2.04/include/grub/mips/arc/kernel.h delete mode 100644 thirdparty/grub-2.04/include/grub/mips/arc/memory.h delete mode 100644 thirdparty/grub-2.04/include/grub/mips/arc/time.h delete mode 100644 thirdparty/grub-2.04/include/grub/mips/asm.h delete mode 100644 thirdparty/grub-2.04/include/grub/mips/at_keyboard.h delete mode 100644 thirdparty/grub-2.04/include/grub/mips/cmos.h delete mode 100644 thirdparty/grub-2.04/include/grub/mips/io.h delete mode 100644 thirdparty/grub-2.04/include/grub/mips/kernel.h delete mode 100644 thirdparty/grub-2.04/include/grub/mips/loongson.h delete mode 100644 thirdparty/grub-2.04/include/grub/mips/loongson/at_keyboard.h delete mode 100644 thirdparty/grub-2.04/include/grub/mips/loongson/cmos.h delete mode 100644 thirdparty/grub-2.04/include/grub/mips/loongson/ec.h delete mode 100644 thirdparty/grub-2.04/include/grub/mips/loongson/kernel.h delete mode 100644 thirdparty/grub-2.04/include/grub/mips/loongson/memory.h delete mode 100644 thirdparty/grub-2.04/include/grub/mips/loongson/pci.h delete mode 100644 thirdparty/grub-2.04/include/grub/mips/loongson/serial.h delete mode 100644 thirdparty/grub-2.04/include/grub/mips/loongson/time.h delete mode 100644 thirdparty/grub-2.04/include/grub/mips/memory.h delete mode 100644 thirdparty/grub-2.04/include/grub/mips/mips.h delete mode 100644 thirdparty/grub-2.04/include/grub/mips/multiboot.h delete mode 100644 thirdparty/grub-2.04/include/grub/mips/pci.h delete mode 100644 thirdparty/grub-2.04/include/grub/mips/qemu_mips/at_keyboard.h delete mode 100644 thirdparty/grub-2.04/include/grub/mips/qemu_mips/cmos.h delete mode 100644 thirdparty/grub-2.04/include/grub/mips/qemu_mips/console.h delete mode 100644 thirdparty/grub-2.04/include/grub/mips/qemu_mips/kernel.h delete mode 100644 thirdparty/grub-2.04/include/grub/mips/qemu_mips/loader.h delete mode 100644 thirdparty/grub-2.04/include/grub/mips/qemu_mips/memory.h delete mode 100644 thirdparty/grub-2.04/include/grub/mips/qemu_mips/serial.h delete mode 100644 thirdparty/grub-2.04/include/grub/mips/qemu_mips/time.h delete mode 100644 thirdparty/grub-2.04/include/grub/mips/relocator.h delete mode 100644 thirdparty/grub-2.04/include/grub/mips/setjmp.h delete mode 100644 thirdparty/grub-2.04/include/grub/mips/time.h delete mode 100644 thirdparty/grub-2.04/include/grub/mips/types.h delete mode 100644 thirdparty/grub-2.04/include/grub/misc.h delete mode 100644 thirdparty/grub-2.04/include/grub/mm.h delete mode 100644 thirdparty/grub-2.04/include/grub/mm_private.h delete mode 100644 thirdparty/grub-2.04/include/grub/module_verifier.h delete mode 100644 thirdparty/grub-2.04/include/grub/msdos_partition.h delete mode 100644 thirdparty/grub-2.04/include/grub/multiboot.h delete mode 100644 thirdparty/grub-2.04/include/grub/multiboot2.h delete mode 100644 thirdparty/grub-2.04/include/grub/multiboot_loader.h delete mode 100644 thirdparty/grub-2.04/include/grub/net.h delete mode 100644 thirdparty/grub-2.04/include/grub/net/arp.h delete mode 100644 thirdparty/grub-2.04/include/grub/net/ethernet.h delete mode 100644 thirdparty/grub-2.04/include/grub/net/ip.h delete mode 100644 thirdparty/grub-2.04/include/grub/net/netbuff.h delete mode 100644 thirdparty/grub-2.04/include/grub/net/tcp.h delete mode 100644 thirdparty/grub-2.04/include/grub/net/udp.h delete mode 100644 thirdparty/grub-2.04/include/grub/normal.h delete mode 100644 thirdparty/grub-2.04/include/grub/ns8250.h delete mode 100644 thirdparty/grub-2.04/include/grub/ntfs.h delete mode 100644 thirdparty/grub-2.04/include/grub/offsets.h delete mode 100644 thirdparty/grub-2.04/include/grub/osdep/hostfile.h delete mode 100644 thirdparty/grub-2.04/include/grub/osdep/hostfile_aros.h delete mode 100644 thirdparty/grub-2.04/include/grub/osdep/hostfile_unix.h delete mode 100644 thirdparty/grub-2.04/include/grub/osdep/hostfile_windows.h delete mode 100644 thirdparty/grub-2.04/include/grub/parser.h delete mode 100644 thirdparty/grub-2.04/include/grub/partition.h delete mode 100644 thirdparty/grub-2.04/include/grub/parttool.h delete mode 100644 thirdparty/grub-2.04/include/grub/pci.h delete mode 100644 thirdparty/grub-2.04/include/grub/pciutils.h delete mode 100644 thirdparty/grub-2.04/include/grub/powerpc/ieee1275/ieee1275.h delete mode 100644 thirdparty/grub-2.04/include/grub/powerpc/kernel.h delete mode 100644 thirdparty/grub-2.04/include/grub/powerpc/memory.h delete mode 100644 thirdparty/grub-2.04/include/grub/powerpc/relocator.h delete mode 100644 thirdparty/grub-2.04/include/grub/powerpc/setjmp.h delete mode 100644 thirdparty/grub-2.04/include/grub/powerpc/time.h delete mode 100644 thirdparty/grub-2.04/include/grub/powerpc/types.h delete mode 100644 thirdparty/grub-2.04/include/grub/priority_queue.h delete mode 100644 thirdparty/grub-2.04/include/grub/procfs.h delete mode 100644 thirdparty/grub-2.04/include/grub/ps2.h delete mode 100644 thirdparty/grub-2.04/include/grub/pubkey.h delete mode 100644 thirdparty/grub-2.04/include/grub/random.h delete mode 100644 thirdparty/grub-2.04/include/grub/reader.h delete mode 100644 thirdparty/grub-2.04/include/grub/reed_solomon.h delete mode 100644 thirdparty/grub-2.04/include/grub/relocator.h delete mode 100644 thirdparty/grub-2.04/include/grub/relocator_private.h delete mode 100644 thirdparty/grub-2.04/include/grub/riscv32/efi/memory.h delete mode 100644 thirdparty/grub-2.04/include/grub/riscv32/linux.h delete mode 100644 thirdparty/grub-2.04/include/grub/riscv32/setjmp.h delete mode 100644 thirdparty/grub-2.04/include/grub/riscv32/time.h delete mode 100644 thirdparty/grub-2.04/include/grub/riscv32/types.h delete mode 100644 thirdparty/grub-2.04/include/grub/riscv64/efi/memory.h delete mode 100644 thirdparty/grub-2.04/include/grub/riscv64/linux.h delete mode 100644 thirdparty/grub-2.04/include/grub/riscv64/setjmp.h delete mode 100644 thirdparty/grub-2.04/include/grub/riscv64/time.h delete mode 100644 thirdparty/grub-2.04/include/grub/riscv64/types.h delete mode 100644 thirdparty/grub-2.04/include/grub/script_sh.h delete mode 100644 thirdparty/grub-2.04/include/grub/scsi.h delete mode 100644 thirdparty/grub-2.04/include/grub/scsicmd.h delete mode 100644 thirdparty/grub-2.04/include/grub/sdl.h delete mode 100644 thirdparty/grub-2.04/include/grub/search.h delete mode 100644 thirdparty/grub-2.04/include/grub/serial.h delete mode 100644 thirdparty/grub-2.04/include/grub/setjmp.h delete mode 100644 thirdparty/grub-2.04/include/grub/smbus.h delete mode 100644 thirdparty/grub-2.04/include/grub/sparc64/ieee1275/boot.h delete mode 100644 thirdparty/grub-2.04/include/grub/sparc64/ieee1275/ieee1275.h delete mode 100644 thirdparty/grub-2.04/include/grub/sparc64/ieee1275/kernel.h delete mode 100644 thirdparty/grub-2.04/include/grub/sparc64/setjmp.h delete mode 100644 thirdparty/grub-2.04/include/grub/sparc64/time.h delete mode 100644 thirdparty/grub-2.04/include/grub/sparc64/types.h delete mode 100644 thirdparty/grub-2.04/include/grub/speaker.h delete mode 100644 thirdparty/grub-2.04/include/grub/symbol.h delete mode 100644 thirdparty/grub-2.04/include/grub/syslinux_parse.h delete mode 100644 thirdparty/grub-2.04/include/grub/term.h delete mode 100644 thirdparty/grub-2.04/include/grub/terminfo.h delete mode 100644 thirdparty/grub-2.04/include/grub/test.h delete mode 100644 thirdparty/grub-2.04/include/grub/time.h delete mode 100644 thirdparty/grub-2.04/include/grub/tparm.h delete mode 100644 thirdparty/grub-2.04/include/grub/tpm.h delete mode 100644 thirdparty/grub-2.04/include/grub/trig.h delete mode 100644 thirdparty/grub-2.04/include/grub/types.h delete mode 100644 thirdparty/grub-2.04/include/grub/uboot/api_public.h delete mode 100644 thirdparty/grub-2.04/include/grub/uboot/console.h delete mode 100644 thirdparty/grub-2.04/include/grub/uboot/disk.h delete mode 100644 thirdparty/grub-2.04/include/grub/uboot/image.h delete mode 100644 thirdparty/grub-2.04/include/grub/uboot/uboot.h delete mode 100644 thirdparty/grub-2.04/include/grub/udf.h delete mode 100644 thirdparty/grub-2.04/include/grub/unicode.h delete mode 100644 thirdparty/grub-2.04/include/grub/usb.h delete mode 100644 thirdparty/grub-2.04/include/grub/usbdesc.h delete mode 100644 thirdparty/grub-2.04/include/grub/usbserial.h delete mode 100644 thirdparty/grub-2.04/include/grub/usbtrans.h delete mode 100644 thirdparty/grub-2.04/include/grub/util/install.h delete mode 100644 thirdparty/grub-2.04/include/grub/util/libnvpair.h delete mode 100644 thirdparty/grub-2.04/include/grub/util/libzfs.h delete mode 100644 thirdparty/grub-2.04/include/grub/util/misc.h delete mode 100644 thirdparty/grub-2.04/include/grub/util/mkimage.h delete mode 100644 thirdparty/grub-2.04/include/grub/util/ofpath.h delete mode 100644 thirdparty/grub-2.04/include/grub/util/resolve.h delete mode 100644 thirdparty/grub-2.04/include/grub/util/windows.h delete mode 100644 thirdparty/grub-2.04/include/grub/verify.h delete mode 100644 thirdparty/grub-2.04/include/grub/vga.h delete mode 100644 thirdparty/grub-2.04/include/grub/vgaregs.h delete mode 100644 thirdparty/grub-2.04/include/grub/video.h delete mode 100644 thirdparty/grub-2.04/include/grub/video_fb.h delete mode 100644 thirdparty/grub-2.04/include/grub/x86_64/at_keyboard.h delete mode 100644 thirdparty/grub-2.04/include/grub/x86_64/efi/boot.h delete mode 100644 thirdparty/grub-2.04/include/grub/x86_64/efi/kernel.h delete mode 100644 thirdparty/grub-2.04/include/grub/x86_64/efi/loader.h delete mode 100644 thirdparty/grub-2.04/include/grub/x86_64/efi/memory.h delete mode 100644 thirdparty/grub-2.04/include/grub/x86_64/efi/serial.h delete mode 100644 thirdparty/grub-2.04/include/grub/x86_64/io.h delete mode 100644 thirdparty/grub-2.04/include/grub/x86_64/linux.h delete mode 100644 thirdparty/grub-2.04/include/grub/x86_64/macho.h delete mode 100644 thirdparty/grub-2.04/include/grub/x86_64/memory.h delete mode 100644 thirdparty/grub-2.04/include/grub/x86_64/multiboot.h delete mode 100644 thirdparty/grub-2.04/include/grub/x86_64/pci.h delete mode 100644 thirdparty/grub-2.04/include/grub/x86_64/relocator.h delete mode 100644 thirdparty/grub-2.04/include/grub/x86_64/setjmp.h delete mode 100644 thirdparty/grub-2.04/include/grub/x86_64/time.h delete mode 100644 thirdparty/grub-2.04/include/grub/x86_64/types.h delete mode 100644 thirdparty/grub-2.04/include/grub/x86_64/xen/hypercall.h delete mode 100644 thirdparty/grub-2.04/include/grub/x86_64/xnu.h delete mode 100644 thirdparty/grub-2.04/include/grub/xen.h delete mode 100644 thirdparty/grub-2.04/include/grub/xen/relocator.h delete mode 100644 thirdparty/grub-2.04/include/grub/xen_file.h delete mode 100644 thirdparty/grub-2.04/include/grub/xnu.h delete mode 100644 thirdparty/grub-2.04/include/grub/zfs/dmu.h delete mode 100644 thirdparty/grub-2.04/include/grub/zfs/dmu_objset.h delete mode 100644 thirdparty/grub-2.04/include/grub/zfs/dnode.h delete mode 100644 thirdparty/grub-2.04/include/grub/zfs/dsl_dataset.h delete mode 100644 thirdparty/grub-2.04/include/grub/zfs/dsl_dir.h delete mode 100644 thirdparty/grub-2.04/include/grub/zfs/sa_impl.h delete mode 100644 thirdparty/grub-2.04/include/grub/zfs/spa.h delete mode 100644 thirdparty/grub-2.04/include/grub/zfs/uberblock_impl.h delete mode 100644 thirdparty/grub-2.04/include/grub/zfs/vdev_impl.h delete mode 100644 thirdparty/grub-2.04/include/grub/zfs/zap_impl.h delete mode 100644 thirdparty/grub-2.04/include/grub/zfs/zap_leaf.h delete mode 100644 thirdparty/grub-2.04/include/grub/zfs/zfs.h delete mode 100644 thirdparty/grub-2.04/include/grub/zfs/zfs_acl.h delete mode 100644 thirdparty/grub-2.04/include/grub/zfs/zfs_znode.h delete mode 100644 thirdparty/grub-2.04/include/grub/zfs/zil.h delete mode 100644 thirdparty/grub-2.04/include/grub/zfs/zio.h delete mode 100644 thirdparty/grub-2.04/include/grub/zfs/zio_checksum.h delete mode 100644 thirdparty/grub-2.04/include/multiboot.h delete mode 100644 thirdparty/grub-2.04/include/multiboot2.h delete mode 100644 thirdparty/grub-2.04/include/xen/arch-x86/xen-x86_32.h delete mode 100644 thirdparty/grub-2.04/include/xen/arch-x86/xen-x86_64.h delete mode 100644 thirdparty/grub-2.04/include/xen/arch-x86/xen.h delete mode 100644 thirdparty/grub-2.04/include/xen/elfnote.h delete mode 100644 thirdparty/grub-2.04/include/xen/event_channel.h delete mode 100644 thirdparty/grub-2.04/include/xen/grant_table.h delete mode 100644 thirdparty/grub-2.04/include/xen/hvm/hvm_op.h delete mode 100644 thirdparty/grub-2.04/include/xen/hvm/params.h delete mode 100644 thirdparty/grub-2.04/include/xen/hvm/start_info.h delete mode 100644 thirdparty/grub-2.04/include/xen/io/blkif.h delete mode 100644 thirdparty/grub-2.04/include/xen/io/console.h delete mode 100644 thirdparty/grub-2.04/include/xen/io/protocols.h delete mode 100644 thirdparty/grub-2.04/include/xen/io/ring.h delete mode 100644 thirdparty/grub-2.04/include/xen/io/xenbus.h delete mode 100644 thirdparty/grub-2.04/include/xen/io/xs_wire.h delete mode 100644 thirdparty/grub-2.04/include/xen/memory.h delete mode 100644 thirdparty/grub-2.04/include/xen/physdev.h delete mode 100644 thirdparty/grub-2.04/include/xen/sched.h delete mode 100644 thirdparty/grub-2.04/include/xen/trace.h delete mode 100644 thirdparty/grub-2.04/include/xen/xen-compat.h delete mode 100644 thirdparty/grub-2.04/include/xen/xen.h delete mode 100755 thirdparty/grub-2.04/linguas.sh delete mode 100644 thirdparty/grub-2.04/m4/00gnulib.m4 delete mode 100644 thirdparty/grub-2.04/m4/__inline.m4 delete mode 100644 thirdparty/grub-2.04/m4/absolute-header.m4 delete mode 100644 thirdparty/grub-2.04/m4/alloca.m4 delete mode 100644 thirdparty/grub-2.04/m4/argp.m4 delete mode 100644 thirdparty/grub-2.04/m4/btowc.m4 delete mode 100644 thirdparty/grub-2.04/m4/builtin-expect.m4 delete mode 100644 thirdparty/grub-2.04/m4/chdir-long.m4 delete mode 100644 thirdparty/grub-2.04/m4/close.m4 delete mode 100644 thirdparty/grub-2.04/m4/codeset.m4 delete mode 100644 thirdparty/grub-2.04/m4/dirent_h.m4 delete mode 100644 thirdparty/grub-2.04/m4/dirfd.m4 delete mode 100644 thirdparty/grub-2.04/m4/dirname.m4 delete mode 100644 thirdparty/grub-2.04/m4/double-slash-root.m4 delete mode 100644 thirdparty/grub-2.04/m4/dup2.m4 delete mode 100644 thirdparty/grub-2.04/m4/eealloc.m4 delete mode 100644 thirdparty/grub-2.04/m4/errno_h.m4 delete mode 100644 thirdparty/grub-2.04/m4/error.m4 delete mode 100644 thirdparty/grub-2.04/m4/exponentd.m4 delete mode 100644 thirdparty/grub-2.04/m4/extensions.m4 delete mode 100644 thirdparty/grub-2.04/m4/extern-inline.m4 delete mode 100644 thirdparty/grub-2.04/m4/fchdir.m4 delete mode 100644 thirdparty/grub-2.04/m4/fcntl-o.m4 delete mode 100644 thirdparty/grub-2.04/m4/fcntl.m4 delete mode 100644 thirdparty/grub-2.04/m4/fcntl_h.m4 delete mode 100644 thirdparty/grub-2.04/m4/filenamecat.m4 delete mode 100644 thirdparty/grub-2.04/m4/flexmember.m4 delete mode 100644 thirdparty/grub-2.04/m4/float_h.m4 delete mode 100644 thirdparty/grub-2.04/m4/fnmatch.m4 delete mode 100644 thirdparty/grub-2.04/m4/fnmatch_h.m4 delete mode 100644 thirdparty/grub-2.04/m4/fstat.m4 delete mode 100644 thirdparty/grub-2.04/m4/getcwd.m4 delete mode 100644 thirdparty/grub-2.04/m4/getdelim.m4 delete mode 100644 thirdparty/grub-2.04/m4/getdtablesize.m4 delete mode 100644 thirdparty/grub-2.04/m4/getline.m4 delete mode 100644 thirdparty/grub-2.04/m4/getopt.m4 delete mode 100644 thirdparty/grub-2.04/m4/getprogname.m4 delete mode 100644 thirdparty/grub-2.04/m4/gettext.m4 delete mode 100644 thirdparty/grub-2.04/m4/glibc2.m4 delete mode 100644 thirdparty/grub-2.04/m4/glibc21.m4 delete mode 100644 thirdparty/grub-2.04/m4/gnulib-cache.m4 delete mode 100644 thirdparty/grub-2.04/m4/gnulib-common.m4 delete mode 100644 thirdparty/grub-2.04/m4/gnulib-comp.m4 delete mode 100644 thirdparty/grub-2.04/m4/gnulib-tool.m4 delete mode 100644 thirdparty/grub-2.04/m4/host-cpu-c-abi.m4 delete mode 100644 thirdparty/grub-2.04/m4/iconv.m4 delete mode 100644 thirdparty/grub-2.04/m4/include_next.m4 delete mode 100644 thirdparty/grub-2.04/m4/intdiv0.m4 delete mode 100644 thirdparty/grub-2.04/m4/intl.m4 delete mode 100644 thirdparty/grub-2.04/m4/intldir.m4 delete mode 100644 thirdparty/grub-2.04/m4/intlmacosx.m4 delete mode 100644 thirdparty/grub-2.04/m4/intmax.m4 delete mode 100644 thirdparty/grub-2.04/m4/intmax_t.m4 delete mode 100644 thirdparty/grub-2.04/m4/inttypes-pri.m4 delete mode 100644 thirdparty/grub-2.04/m4/inttypes_h.m4 delete mode 100644 thirdparty/grub-2.04/m4/langinfo_h.m4 delete mode 100644 thirdparty/grub-2.04/m4/largefile.m4 delete mode 100644 thirdparty/grub-2.04/m4/lcmessage.m4 delete mode 100644 thirdparty/grub-2.04/m4/lib-ld.m4 delete mode 100644 thirdparty/grub-2.04/m4/lib-link.m4 delete mode 100644 thirdparty/grub-2.04/m4/lib-prefix.m4 delete mode 100644 thirdparty/grub-2.04/m4/libunistring-base.m4 delete mode 100644 thirdparty/grub-2.04/m4/limits-h.m4 delete mode 100644 thirdparty/grub-2.04/m4/localcharset.m4 delete mode 100644 thirdparty/grub-2.04/m4/locale-fr.m4 delete mode 100644 thirdparty/grub-2.04/m4/locale-ja.m4 delete mode 100644 thirdparty/grub-2.04/m4/locale-zh.m4 delete mode 100644 thirdparty/grub-2.04/m4/locale_h.m4 delete mode 100644 thirdparty/grub-2.04/m4/localeconv.m4 delete mode 100644 thirdparty/grub-2.04/m4/lock.m4 delete mode 100644 thirdparty/grub-2.04/m4/longlong.m4 delete mode 100644 thirdparty/grub-2.04/m4/lstat.m4 delete mode 100644 thirdparty/grub-2.04/m4/malloc.m4 delete mode 100644 thirdparty/grub-2.04/m4/malloca.m4 delete mode 100644 thirdparty/grub-2.04/m4/math_h.m4 delete mode 100644 thirdparty/grub-2.04/m4/mbrtowc.m4 delete mode 100644 thirdparty/grub-2.04/m4/mbsinit.m4 delete mode 100644 thirdparty/grub-2.04/m4/mbsrtowcs.m4 delete mode 100644 thirdparty/grub-2.04/m4/mbstate_t.m4 delete mode 100644 thirdparty/grub-2.04/m4/mbswidth.m4 delete mode 100644 thirdparty/grub-2.04/m4/mbtowc.m4 delete mode 100644 thirdparty/grub-2.04/m4/memchr.m4 delete mode 100644 thirdparty/grub-2.04/m4/mempcpy.m4 delete mode 100644 thirdparty/grub-2.04/m4/memrchr.m4 delete mode 100644 thirdparty/grub-2.04/m4/mmap-anon.m4 delete mode 100644 thirdparty/grub-2.04/m4/mode_t.m4 delete mode 100644 thirdparty/grub-2.04/m4/msvc-inval.m4 delete mode 100644 thirdparty/grub-2.04/m4/msvc-nothrow.m4 delete mode 100644 thirdparty/grub-2.04/m4/multiarch.m4 delete mode 100644 thirdparty/grub-2.04/m4/nl_langinfo.m4 delete mode 100644 thirdparty/grub-2.04/m4/nls.m4 delete mode 100644 thirdparty/grub-2.04/m4/nocrash.m4 delete mode 100644 thirdparty/grub-2.04/m4/off_t.m4 delete mode 100644 thirdparty/grub-2.04/m4/open-cloexec.m4 delete mode 100644 thirdparty/grub-2.04/m4/open.m4 delete mode 100644 thirdparty/grub-2.04/m4/openat.m4 delete mode 100644 thirdparty/grub-2.04/m4/pathmax.m4 delete mode 100644 thirdparty/grub-2.04/m4/po.m4 delete mode 100644 thirdparty/grub-2.04/m4/printf-posix.m4 delete mode 100644 thirdparty/grub-2.04/m4/printf.m4 delete mode 100644 thirdparty/grub-2.04/m4/progtest.m4 delete mode 100644 thirdparty/grub-2.04/m4/pthread_rwlock_rdlock.m4 delete mode 100644 thirdparty/grub-2.04/m4/rawmemchr.m4 delete mode 100644 thirdparty/grub-2.04/m4/realloc.m4 delete mode 100644 thirdparty/grub-2.04/m4/regex.m4 delete mode 100644 thirdparty/grub-2.04/m4/save-cwd.m4 delete mode 100644 thirdparty/grub-2.04/m4/size_max.m4 delete mode 100644 thirdparty/grub-2.04/m4/sleep.m4 delete mode 100644 thirdparty/grub-2.04/m4/ssize_t.m4 delete mode 100644 thirdparty/grub-2.04/m4/stat-time.m4 delete mode 100644 thirdparty/grub-2.04/m4/stat.m4 delete mode 100644 thirdparty/grub-2.04/m4/stdalign.m4 delete mode 100644 thirdparty/grub-2.04/m4/stdbool.m4 delete mode 100644 thirdparty/grub-2.04/m4/stddef_h.m4 delete mode 100644 thirdparty/grub-2.04/m4/stdint.m4 delete mode 100644 thirdparty/grub-2.04/m4/stdint_h.m4 delete mode 100644 thirdparty/grub-2.04/m4/stdio_h.m4 delete mode 100644 thirdparty/grub-2.04/m4/stdlib_h.m4 delete mode 100644 thirdparty/grub-2.04/m4/strcase.m4 delete mode 100644 thirdparty/grub-2.04/m4/strchrnul.m4 delete mode 100644 thirdparty/grub-2.04/m4/strdup.m4 delete mode 100644 thirdparty/grub-2.04/m4/strerror.m4 delete mode 100644 thirdparty/grub-2.04/m4/string_h.m4 delete mode 100644 thirdparty/grub-2.04/m4/strings_h.m4 delete mode 100644 thirdparty/grub-2.04/m4/strndup.m4 delete mode 100644 thirdparty/grub-2.04/m4/strnlen.m4 delete mode 100644 thirdparty/grub-2.04/m4/sys_socket_h.m4 delete mode 100644 thirdparty/grub-2.04/m4/sys_stat_h.m4 delete mode 100644 thirdparty/grub-2.04/m4/sys_types_h.m4 delete mode 100644 thirdparty/grub-2.04/m4/sysexits.m4 delete mode 100644 thirdparty/grub-2.04/m4/threadlib.m4 delete mode 100644 thirdparty/grub-2.04/m4/time_h.m4 delete mode 100644 thirdparty/grub-2.04/m4/uintmax_t.m4 delete mode 100644 thirdparty/grub-2.04/m4/unistd-safer.m4 delete mode 100644 thirdparty/grub-2.04/m4/unistd_h.m4 delete mode 100644 thirdparty/grub-2.04/m4/vasnprintf.m4 delete mode 100644 thirdparty/grub-2.04/m4/visibility.m4 delete mode 100644 thirdparty/grub-2.04/m4/vsnprintf.m4 delete mode 100644 thirdparty/grub-2.04/m4/warn-on-use.m4 delete mode 100644 thirdparty/grub-2.04/m4/wchar_h.m4 delete mode 100644 thirdparty/grub-2.04/m4/wchar_t.m4 delete mode 100644 thirdparty/grub-2.04/m4/wcrtomb.m4 delete mode 100644 thirdparty/grub-2.04/m4/wctype_h.m4 delete mode 100644 thirdparty/grub-2.04/m4/wcwidth.m4 delete mode 100644 thirdparty/grub-2.04/m4/wint_t.m4 delete mode 100644 thirdparty/grub-2.04/m4/xsize.m4 delete mode 100644 thirdparty/grub-2.04/po/LINGUAS delete mode 100644 thirdparty/grub-2.04/po/Makefile.in.in delete mode 100644 thirdparty/grub-2.04/po/Makevars delete mode 100644 thirdparty/grub-2.04/po/POTFILES.in delete mode 100644 thirdparty/grub-2.04/po/Rules-piglatin delete mode 100644 thirdparty/grub-2.04/po/Rules-quot delete mode 100644 thirdparty/grub-2.04/po/Rules-swiss delete mode 100644 thirdparty/grub-2.04/po/ast.gmo delete mode 100644 thirdparty/grub-2.04/po/ast.po delete mode 100644 thirdparty/grub-2.04/po/boldquot.sed delete mode 100644 thirdparty/grub-2.04/po/ca.gmo delete mode 100644 thirdparty/grub-2.04/po/ca.po delete mode 100644 thirdparty/grub-2.04/po/da.gmo delete mode 100644 thirdparty/grub-2.04/po/da.po delete mode 100644 thirdparty/grub-2.04/po/de.gmo delete mode 100644 thirdparty/grub-2.04/po/de.po delete mode 100644 thirdparty/grub-2.04/po/de@hebrew.gmo delete mode 100644 thirdparty/grub-2.04/po/de@hebrew.po delete mode 100644 thirdparty/grub-2.04/po/de_CH.gmo delete mode 100644 thirdparty/grub-2.04/po/de_CH.po delete mode 100644 thirdparty/grub-2.04/po/en@arabic.gmo delete mode 100644 thirdparty/grub-2.04/po/en@arabic.po delete mode 100644 thirdparty/grub-2.04/po/en@boldquot.header delete mode 100644 thirdparty/grub-2.04/po/en@cyrillic.gmo delete mode 100644 thirdparty/grub-2.04/po/en@cyrillic.po delete mode 100644 thirdparty/grub-2.04/po/en@greek.gmo delete mode 100644 thirdparty/grub-2.04/po/en@greek.po delete mode 100644 thirdparty/grub-2.04/po/en@hebrew.gmo delete mode 100644 thirdparty/grub-2.04/po/en@hebrew.po delete mode 100644 thirdparty/grub-2.04/po/en@piglatin.gmo delete mode 100644 thirdparty/grub-2.04/po/en@piglatin.header delete mode 100644 thirdparty/grub-2.04/po/en@piglatin.po delete mode 100644 thirdparty/grub-2.04/po/en@quot.gmo delete mode 100644 thirdparty/grub-2.04/po/en@quot.header delete mode 100644 thirdparty/grub-2.04/po/en@quot.po delete mode 100644 thirdparty/grub-2.04/po/eo.gmo delete mode 100644 thirdparty/grub-2.04/po/eo.po delete mode 100644 thirdparty/grub-2.04/po/es.gmo delete mode 100644 thirdparty/grub-2.04/po/es.po delete mode 100644 thirdparty/grub-2.04/po/exclude.pot delete mode 100644 thirdparty/grub-2.04/po/fi.gmo delete mode 100644 thirdparty/grub-2.04/po/fi.po delete mode 100644 thirdparty/grub-2.04/po/fr.gmo delete mode 100644 thirdparty/grub-2.04/po/fr.po delete mode 100644 thirdparty/grub-2.04/po/gl.gmo delete mode 100644 thirdparty/grub-2.04/po/gl.po delete mode 100644 thirdparty/grub-2.04/po/grub.pot delete mode 100644 thirdparty/grub-2.04/po/hr.gmo delete mode 100644 thirdparty/grub-2.04/po/hr.po delete mode 100644 thirdparty/grub-2.04/po/hu.gmo delete mode 100644 thirdparty/grub-2.04/po/hu.po delete mode 100644 thirdparty/grub-2.04/po/id.gmo delete mode 100644 thirdparty/grub-2.04/po/id.po delete mode 100644 thirdparty/grub-2.04/po/insert-header.sin delete mode 100644 thirdparty/grub-2.04/po/it.gmo delete mode 100644 thirdparty/grub-2.04/po/it.po delete mode 100644 thirdparty/grub-2.04/po/ja.gmo delete mode 100644 thirdparty/grub-2.04/po/ja.po delete mode 100644 thirdparty/grub-2.04/po/ko.gmo delete mode 100644 thirdparty/grub-2.04/po/ko.po delete mode 100644 thirdparty/grub-2.04/po/lt.gmo delete mode 100644 thirdparty/grub-2.04/po/lt.po delete mode 100644 thirdparty/grub-2.04/po/nb.gmo delete mode 100644 thirdparty/grub-2.04/po/nb.po delete mode 100644 thirdparty/grub-2.04/po/nl.gmo delete mode 100644 thirdparty/grub-2.04/po/nl.po delete mode 100644 thirdparty/grub-2.04/po/pa.gmo delete mode 100644 thirdparty/grub-2.04/po/pa.po delete mode 100644 thirdparty/grub-2.04/po/piglatin.sed delete mode 100644 thirdparty/grub-2.04/po/pl.gmo delete mode 100644 thirdparty/grub-2.04/po/pl.po delete mode 100644 thirdparty/grub-2.04/po/pt.gmo delete mode 100644 thirdparty/grub-2.04/po/pt.po delete mode 100644 thirdparty/grub-2.04/po/pt_BR.gmo delete mode 100644 thirdparty/grub-2.04/po/pt_BR.po delete mode 100644 thirdparty/grub-2.04/po/quot.sed delete mode 100644 thirdparty/grub-2.04/po/remove-potcdate.sin delete mode 100644 thirdparty/grub-2.04/po/ro.gmo delete mode 100644 thirdparty/grub-2.04/po/ro.po delete mode 100644 thirdparty/grub-2.04/po/ru.gmo delete mode 100644 thirdparty/grub-2.04/po/ru.po delete mode 100644 thirdparty/grub-2.04/po/sl.gmo delete mode 100644 thirdparty/grub-2.04/po/sl.po delete mode 100644 thirdparty/grub-2.04/po/sr.gmo delete mode 100644 thirdparty/grub-2.04/po/sr.po delete mode 100644 thirdparty/grub-2.04/po/stamp-po delete mode 100644 thirdparty/grub-2.04/po/sv.gmo delete mode 100644 thirdparty/grub-2.04/po/sv.po delete mode 100644 thirdparty/grub-2.04/po/swiss.sed delete mode 100644 thirdparty/grub-2.04/po/tr.gmo delete mode 100644 thirdparty/grub-2.04/po/tr.po delete mode 100644 thirdparty/grub-2.04/po/uk.gmo delete mode 100644 thirdparty/grub-2.04/po/uk.po delete mode 100644 thirdparty/grub-2.04/po/vi.gmo delete mode 100644 thirdparty/grub-2.04/po/vi.po delete mode 100644 thirdparty/grub-2.04/po/zh_CN.gmo delete mode 100644 thirdparty/grub-2.04/po/zh_CN.po delete mode 100644 thirdparty/grub-2.04/po/zh_TW.gmo delete mode 100644 thirdparty/grub-2.04/po/zh_TW.po delete mode 100644 thirdparty/grub-2.04/stamp-h.in delete mode 100644 thirdparty/grub-2.04/tests/ahci_test.in delete mode 100644 thirdparty/grub-2.04/tests/btrfs_test.in delete mode 100644 thirdparty/grub-2.04/tests/cdboot_test.in delete mode 100644 thirdparty/grub-2.04/tests/cmp_unit_test.c delete mode 100644 thirdparty/grub-2.04/tests/core_compress_test.in delete mode 100644 thirdparty/grub-2.04/tests/cpio_test.in delete mode 100644 thirdparty/grub-2.04/tests/date_unit_test.c delete mode 100644 thirdparty/grub-2.04/tests/dfly-mbr-mbexample.dfly.img.gz delete mode 100644 thirdparty/grub-2.04/tests/dfly-mbr-mbexample.mbr.img.gz delete mode 100644 thirdparty/grub-2.04/tests/ehci_test.in delete mode 100644 thirdparty/grub-2.04/tests/example_grub_script_test.in delete mode 100644 thirdparty/grub-2.04/tests/example_scripted_test.in delete mode 100644 thirdparty/grub-2.04/tests/example_unit_test.c delete mode 100644 thirdparty/grub-2.04/tests/exfat_test.in delete mode 100644 thirdparty/grub-2.04/tests/ext234_test.in delete mode 100644 thirdparty/grub-2.04/tests/f2fs_test.in delete mode 100644 thirdparty/grub-2.04/tests/fat_test.in delete mode 100644 thirdparty/grub-2.04/tests/fddboot_test.in delete mode 100644 thirdparty/grub-2.04/tests/file_filter/file delete mode 100644 thirdparty/grub-2.04/tests/file_filter/file.gz delete mode 100644 thirdparty/grub-2.04/tests/file_filter/file.gz.sig delete mode 100644 thirdparty/grub-2.04/tests/file_filter/file.lzop delete mode 100644 thirdparty/grub-2.04/tests/file_filter/file.lzop.sig delete mode 100644 thirdparty/grub-2.04/tests/file_filter/file.xz delete mode 100644 thirdparty/grub-2.04/tests/file_filter/file.xz.sig delete mode 100644 thirdparty/grub-2.04/tests/file_filter/keys delete mode 100644 thirdparty/grub-2.04/tests/file_filter/keys.pub delete mode 100644 thirdparty/grub-2.04/tests/file_filter/test.cfg delete mode 100644 thirdparty/grub-2.04/tests/file_filter_test.in delete mode 100644 thirdparty/grub-2.04/tests/gettext_strings_test.in delete mode 100644 thirdparty/grub-2.04/tests/grub_cmd_date.in delete mode 100644 thirdparty/grub-2.04/tests/grub_cmd_echo.in delete mode 100644 thirdparty/grub-2.04/tests/grub_cmd_regexp.in delete mode 100644 thirdparty/grub-2.04/tests/grub_cmd_set_date.in delete mode 100644 thirdparty/grub-2.04/tests/grub_cmd_sleep.in delete mode 100644 thirdparty/grub-2.04/tests/grub_cmd_test.in delete mode 100644 thirdparty/grub-2.04/tests/grub_cmd_tr.in delete mode 100644 thirdparty/grub-2.04/tests/grub_func_test.in delete mode 100644 thirdparty/grub-2.04/tests/grub_script_blanklines.in delete mode 100644 thirdparty/grub-2.04/tests/grub_script_blockarg.in delete mode 100644 thirdparty/grub-2.04/tests/grub_script_break.in delete mode 100644 thirdparty/grub-2.04/tests/grub_script_comments.in delete mode 100644 thirdparty/grub-2.04/tests/grub_script_continue.in delete mode 100644 thirdparty/grub-2.04/tests/grub_script_dollar.in delete mode 100644 thirdparty/grub-2.04/tests/grub_script_echo1.in delete mode 100644 thirdparty/grub-2.04/tests/grub_script_echo_keywords.in delete mode 100644 thirdparty/grub-2.04/tests/grub_script_escape_comma.in delete mode 100644 thirdparty/grub-2.04/tests/grub_script_eval.in delete mode 100644 thirdparty/grub-2.04/tests/grub_script_expansion.in delete mode 100644 thirdparty/grub-2.04/tests/grub_script_final_semicolon.in delete mode 100644 thirdparty/grub-2.04/tests/grub_script_for1.in delete mode 100644 thirdparty/grub-2.04/tests/grub_script_functions.in delete mode 100644 thirdparty/grub-2.04/tests/grub_script_gettext.in delete mode 100644 thirdparty/grub-2.04/tests/grub_script_if.in delete mode 100644 thirdparty/grub-2.04/tests/grub_script_leading_whitespace.in delete mode 100644 thirdparty/grub-2.04/tests/grub_script_no_commands.in delete mode 100644 thirdparty/grub-2.04/tests/grub_script_not.in delete mode 100644 thirdparty/grub-2.04/tests/grub_script_return.in delete mode 100644 thirdparty/grub-2.04/tests/grub_script_setparams.in delete mode 100644 thirdparty/grub-2.04/tests/grub_script_shift.in delete mode 100644 thirdparty/grub-2.04/tests/grub_script_strcmp.in delete mode 100644 thirdparty/grub-2.04/tests/grub_script_test.in delete mode 100644 thirdparty/grub-2.04/tests/grub_script_vars1.in delete mode 100644 thirdparty/grub-2.04/tests/grub_script_while1.in delete mode 100644 thirdparty/grub-2.04/tests/gzcompress_test.in delete mode 100644 thirdparty/grub-2.04/tests/hddboot_test.in delete mode 100644 thirdparty/grub-2.04/tests/help_test.in delete mode 100644 thirdparty/grub-2.04/tests/hfs_test.in delete mode 100644 thirdparty/grub-2.04/tests/hfsplus_test.in delete mode 100644 thirdparty/grub-2.04/tests/iso9660_test.in delete mode 100644 thirdparty/grub-2.04/tests/jfs_test.in delete mode 100644 thirdparty/grub-2.04/tests/lib/unit_test.c delete mode 100644 thirdparty/grub-2.04/tests/lzocompress_test.in delete mode 100644 thirdparty/grub-2.04/tests/minixfs_test.in delete mode 100644 thirdparty/grub-2.04/tests/netboot_test.in delete mode 100644 thirdparty/grub-2.04/tests/nilfs2_test.in delete mode 100644 thirdparty/grub-2.04/tests/ntfs_test.in delete mode 100644 thirdparty/grub-2.04/tests/ohci_test.in delete mode 100644 thirdparty/grub-2.04/tests/partmap_test.in delete mode 100644 thirdparty/grub-2.04/tests/pata_test.in delete mode 100644 thirdparty/grub-2.04/tests/printf_unit_test.c delete mode 100644 thirdparty/grub-2.04/tests/priority_queue_unit_test.cc delete mode 100644 thirdparty/grub-2.04/tests/pseries_test.in delete mode 100644 thirdparty/grub-2.04/tests/reiserfs_test.in delete mode 100644 thirdparty/grub-2.04/tests/romfs_test.in delete mode 100644 thirdparty/grub-2.04/tests/squashfs_test.in delete mode 100644 thirdparty/grub-2.04/tests/syslinux/ubuntu10.04/isolinux/adtxt.cfg delete mode 100644 thirdparty/grub-2.04/tests/syslinux/ubuntu10.04/isolinux/dtmenu.cfg delete mode 100644 thirdparty/grub-2.04/tests/syslinux/ubuntu10.04/isolinux/exithelp.cfg delete mode 100644 thirdparty/grub-2.04/tests/syslinux/ubuntu10.04/isolinux/gfxboot.cfg delete mode 100644 thirdparty/grub-2.04/tests/syslinux/ubuntu10.04/isolinux/isolinux.cfg delete mode 100644 thirdparty/grub-2.04/tests/syslinux/ubuntu10.04/isolinux/menu.cfg delete mode 100644 thirdparty/grub-2.04/tests/syslinux/ubuntu10.04/isolinux/po4a.cfg delete mode 100644 thirdparty/grub-2.04/tests/syslinux/ubuntu10.04/isolinux/prompt.cfg delete mode 100644 thirdparty/grub-2.04/tests/syslinux/ubuntu10.04/isolinux/rqtxt.cfg delete mode 100644 thirdparty/grub-2.04/tests/syslinux/ubuntu10.04/isolinux/stdmenu.cfg delete mode 100644 thirdparty/grub-2.04/tests/syslinux/ubuntu10.04/isolinux/txt.cfg delete mode 100644 thirdparty/grub-2.04/tests/syslinux/ubuntu10.04_grub.cfg.in delete mode 100644 thirdparty/grub-2.04/tests/syslinux_test.in delete mode 100644 thirdparty/grub-2.04/tests/tar_test.in delete mode 100644 thirdparty/grub-2.04/tests/test_sha512sum.in delete mode 100644 thirdparty/grub-2.04/tests/test_unset.in delete mode 100644 thirdparty/grub-2.04/tests/udf_test.in delete mode 100644 thirdparty/grub-2.04/tests/uhci_test.in delete mode 100644 thirdparty/grub-2.04/tests/util/grub-fs-tester.in delete mode 100644 thirdparty/grub-2.04/tests/util/grub-shell-tester.in delete mode 100644 thirdparty/grub-2.04/tests/util/grub-shell.in delete mode 100644 thirdparty/grub-2.04/tests/xfs_test.in delete mode 100644 thirdparty/grub-2.04/tests/xzcompress_test.in delete mode 100644 thirdparty/grub-2.04/tests/zfs_test.in delete mode 100644 thirdparty/grub-2.04/themes/starfield/COPYING.CC-BY-SA-3.0 delete mode 100644 thirdparty/grub-2.04/themes/starfield/README delete mode 100644 thirdparty/grub-2.04/themes/starfield/blob_w.png delete mode 100644 thirdparty/grub-2.04/themes/starfield/boot_menu_c.png delete mode 100644 thirdparty/grub-2.04/themes/starfield/boot_menu_e.png delete mode 100644 thirdparty/grub-2.04/themes/starfield/boot_menu_n.png delete mode 100644 thirdparty/grub-2.04/themes/starfield/boot_menu_ne.png delete mode 100644 thirdparty/grub-2.04/themes/starfield/boot_menu_nw.png delete mode 100644 thirdparty/grub-2.04/themes/starfield/boot_menu_s.png delete mode 100644 thirdparty/grub-2.04/themes/starfield/boot_menu_se.png delete mode 100644 thirdparty/grub-2.04/themes/starfield/boot_menu_sw.png delete mode 100644 thirdparty/grub-2.04/themes/starfield/boot_menu_w.png delete mode 100644 thirdparty/grub-2.04/themes/starfield/slider_c.png delete mode 100644 thirdparty/grub-2.04/themes/starfield/slider_n.png delete mode 100644 thirdparty/grub-2.04/themes/starfield/slider_s.png delete mode 100644 thirdparty/grub-2.04/themes/starfield/src/blob_nw.xcf delete mode 100644 thirdparty/grub-2.04/themes/starfield/src/bootmenu/center.xcf delete mode 100644 thirdparty/grub-2.04/themes/starfield/src/bootmenu/corner.xcf delete mode 100644 thirdparty/grub-2.04/themes/starfield/src/bootmenu/side.xcf delete mode 100644 thirdparty/grub-2.04/themes/starfield/src/slider_c.xcf delete mode 100644 thirdparty/grub-2.04/themes/starfield/src/slider_n.xcf delete mode 100644 thirdparty/grub-2.04/themes/starfield/src/slider_s.xcf delete mode 100644 thirdparty/grub-2.04/themes/starfield/src/terminalbox/center.xcf delete mode 100644 thirdparty/grub-2.04/themes/starfield/src/terminalbox/corner.xcf delete mode 100644 thirdparty/grub-2.04/themes/starfield/src/terminalbox/side.xcf delete mode 100644 thirdparty/grub-2.04/themes/starfield/starfield.png delete mode 100644 thirdparty/grub-2.04/themes/starfield/terminal_box_c.png delete mode 100644 thirdparty/grub-2.04/themes/starfield/terminal_box_e.png delete mode 100644 thirdparty/grub-2.04/themes/starfield/terminal_box_n.png delete mode 100644 thirdparty/grub-2.04/themes/starfield/terminal_box_ne.png delete mode 100644 thirdparty/grub-2.04/themes/starfield/terminal_box_nw.png delete mode 100644 thirdparty/grub-2.04/themes/starfield/terminal_box_s.png delete mode 100644 thirdparty/grub-2.04/themes/starfield/terminal_box_se.png delete mode 100644 thirdparty/grub-2.04/themes/starfield/terminal_box_sw.png delete mode 100644 thirdparty/grub-2.04/themes/starfield/terminal_box_w.png delete mode 100644 thirdparty/grub-2.04/themes/starfield/theme.txt delete mode 100644 thirdparty/grub-2.04/unicode/ArabicShaping.txt delete mode 100644 thirdparty/grub-2.04/unicode/BidiMirroring.txt delete mode 100644 thirdparty/grub-2.04/unicode/COPYING delete mode 100644 thirdparty/grub-2.04/unicode/UnicodeData.txt delete mode 100644 thirdparty/grub-2.04/util/bash-completion.d/Makefile.am delete mode 100644 thirdparty/grub-2.04/util/bash-completion.d/Makefile.in delete mode 100644 thirdparty/grub-2.04/util/bash-completion.d/grub-completion.bash.in delete mode 100644 thirdparty/grub-2.04/util/bin2h.c delete mode 100644 thirdparty/grub-2.04/util/config.c delete mode 100644 thirdparty/grub-2.04/util/editenv.c delete mode 100644 thirdparty/grub-2.04/util/garbage-gen.c delete mode 100644 thirdparty/grub-2.04/util/getroot.c delete mode 100644 thirdparty/grub-2.04/util/glue-efi.c delete mode 100644 thirdparty/grub-2.04/util/grub-editenv.c delete mode 100644 thirdparty/grub-2.04/util/grub-file.c delete mode 100644 thirdparty/grub-2.04/util/grub-fstest.c delete mode 100644 thirdparty/grub-2.04/util/grub-gen-asciih.c delete mode 100644 thirdparty/grub-2.04/util/grub-gen-widthspec.c delete mode 100644 thirdparty/grub-2.04/util/grub-glue-efi.c delete mode 100644 thirdparty/grub-2.04/util/grub-install-common.c delete mode 100644 thirdparty/grub-2.04/util/grub-install.c delete mode 100644 thirdparty/grub-2.04/util/grub-kbdcomp.in delete mode 100644 thirdparty/grub-2.04/util/grub-macbless.c delete mode 100644 thirdparty/grub-2.04/util/grub-macho2img.c delete mode 100644 thirdparty/grub-2.04/util/grub-menulst2cfg.c delete mode 100644 thirdparty/grub-2.04/util/grub-mkconfig.in delete mode 100644 thirdparty/grub-2.04/util/grub-mkconfig_lib.in delete mode 100644 thirdparty/grub-2.04/util/grub-mkfont.c delete mode 100644 thirdparty/grub-2.04/util/grub-mkimage.c delete mode 100644 thirdparty/grub-2.04/util/grub-mkimage32.c delete mode 100644 thirdparty/grub-2.04/util/grub-mkimage64.c delete mode 100644 thirdparty/grub-2.04/util/grub-mkimagexx.c delete mode 100644 thirdparty/grub-2.04/util/grub-mklayout.c delete mode 100644 thirdparty/grub-2.04/util/grub-mknetdir.c delete mode 100644 thirdparty/grub-2.04/util/grub-mkpasswd-pbkdf2.c delete mode 100644 thirdparty/grub-2.04/util/grub-mkrelpath.c delete mode 100644 thirdparty/grub-2.04/util/grub-mkrescue.c delete mode 100644 thirdparty/grub-2.04/util/grub-mkstandalone.c delete mode 100644 thirdparty/grub-2.04/util/grub-module-verifier.c delete mode 100644 thirdparty/grub-2.04/util/grub-module-verifier32.c delete mode 100644 thirdparty/grub-2.04/util/grub-module-verifier64.c delete mode 100644 thirdparty/grub-2.04/util/grub-module-verifierXX.c delete mode 100644 thirdparty/grub-2.04/util/grub-mount.c delete mode 100644 thirdparty/grub-2.04/util/grub-pe2elf.c delete mode 100644 thirdparty/grub-2.04/util/grub-probe.c delete mode 100644 thirdparty/grub-2.04/util/grub-reboot.in delete mode 100644 thirdparty/grub-2.04/util/grub-render-label.c delete mode 100644 thirdparty/grub-2.04/util/grub-script-check.c delete mode 100644 thirdparty/grub-2.04/util/grub-set-default.in delete mode 100644 thirdparty/grub-2.04/util/grub-setup.c delete mode 100644 thirdparty/grub-2.04/util/grub-syslinux2cfg.c delete mode 100644 thirdparty/grub-2.04/util/grub.d/00_header.in delete mode 100644 thirdparty/grub-2.04/util/grub.d/10_hurd.in delete mode 100644 thirdparty/grub-2.04/util/grub.d/10_illumos.in delete mode 100644 thirdparty/grub-2.04/util/grub.d/10_kfreebsd.in delete mode 100644 thirdparty/grub-2.04/util/grub.d/10_linux.in delete mode 100644 thirdparty/grub-2.04/util/grub.d/10_netbsd.in delete mode 100644 thirdparty/grub-2.04/util/grub.d/10_windows.in delete mode 100644 thirdparty/grub-2.04/util/grub.d/10_xnu.in delete mode 100644 thirdparty/grub-2.04/util/grub.d/20_linux_xen.in delete mode 100644 thirdparty/grub-2.04/util/grub.d/30_os-prober.in delete mode 100644 thirdparty/grub-2.04/util/grub.d/40_custom.in delete mode 100644 thirdparty/grub-2.04/util/grub.d/41_custom.in delete mode 100644 thirdparty/grub-2.04/util/grub.d/README delete mode 100644 thirdparty/grub-2.04/util/i386/efi/grub-dumpdevtree delete mode 100644 thirdparty/grub-2.04/util/ieee1275/grub-ofpathname.c delete mode 100644 thirdparty/grub-2.04/util/import_gcry.py delete mode 100644 thirdparty/grub-2.04/util/import_gcrypth.sed delete mode 100644 thirdparty/grub-2.04/util/import_unicode.py delete mode 100644 thirdparty/grub-2.04/util/misc.c delete mode 100644 thirdparty/grub-2.04/util/mkimage.c delete mode 100644 thirdparty/grub-2.04/util/probe.c delete mode 100644 thirdparty/grub-2.04/util/render-label.c delete mode 100644 thirdparty/grub-2.04/util/resolve.c delete mode 100644 thirdparty/grub-2.04/util/setup.c delete mode 100644 thirdparty/grub-2.04/util/setup_bios.c delete mode 100644 thirdparty/grub-2.04/util/setup_sparc.c delete mode 100644 thirdparty/grub-2.04/util/spkmodem-recv.c diff --git a/CMakeLists.txt b/CMakeLists.txt index 8d1c8b69c..b49eba66b 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1 +1,3 @@ - +project(fenriros) +cmake_minimum_required(VERSION 3.16) +add_subdirectory(kernel) diff --git a/kernel/CMakeLists.txt b/kernel/CMakeLists.txt index 8d1c8b69c..04e1adbb2 100644 --- a/kernel/CMakeLists.txt +++ b/kernel/CMakeLists.txt @@ -1 +1,2 @@ - +project(feos-kernel) +add_subdirectory(src) diff --git a/kernel/src/CMakeLists.txt b/kernel/src/CMakeLists.txt index 8d1c8b69c..fac840f4c 100644 --- a/kernel/src/CMakeLists.txt +++ b/kernel/src/CMakeLists.txt @@ -1 +1 @@ - +add_subdirectory(arch) diff --git a/kernel/src/api/cgroup.cpp b/kernel/src/api/cgroup.cpp deleted file mode 100644 index 8d1c8b69c..000000000 --- a/kernel/src/api/cgroup.cpp +++ /dev/null @@ -1 +0,0 @@ - diff --git a/kernel/src/api/cgroup.h b/kernel/src/api/cgroup.h deleted file mode 100644 index 8d1c8b69c..000000000 --- a/kernel/src/api/cgroup.h +++ /dev/null @@ -1 +0,0 @@ - diff --git a/kernel/src/arch/arch.cpp b/kernel/src/arch/arch.cpp index 8d1c8b69c..fcef33e75 100644 --- a/kernel/src/arch/arch.cpp +++ b/kernel/src/arch/arch.cpp @@ -1 +1,6 @@ - +namespace fenriros { + class Arch { + Arch(); + ~Arch(); + } +} diff --git a/thirdparty/grub-2.04/ABOUT-NLS b/thirdparty/grub-2.04/ABOUT-NLS deleted file mode 100644 index b1de1b683..000000000 --- a/thirdparty/grub-2.04/ABOUT-NLS +++ /dev/null @@ -1,1282 +0,0 @@ -1 Notes on the Free Translation Project -*************************************** - -Free software is going international! The Free Translation Project is -a way to get maintainers of free software, translators, and users all -together, so that free software will gradually become able to speak many -languages. A few packages already provide translations for their -messages. - - If you found this `ABOUT-NLS' file inside a distribution, you may -assume that the distributed package does use GNU `gettext' internally, -itself available at your nearest GNU archive site. But you do _not_ -need to install GNU `gettext' prior to configuring, installing or using -this package with messages translated. - - Installers will find here some useful hints. These notes also -explain how users should proceed for getting the programs to use the -available translations. They tell how people wanting to contribute and -work on translations can contact the appropriate team. - -1.1 INSTALL Matters -=================== - -Some packages are "localizable" when properly installed; the programs -they contain can be made to speak your own native language. Most such -packages use GNU `gettext'. Other packages have their own ways to -internationalization, predating GNU `gettext'. - - By default, this package will be installed to allow translation of -messages. It will automatically detect whether the system already -provides the GNU `gettext' functions. Installers may use special -options at configuration time for changing the default behaviour. The -command: - - ./configure --disable-nls - -will _totally_ disable translation of messages. - - When you already have GNU `gettext' installed on your system and run -configure without an option for your new package, `configure' will -probably detect the previously built and installed `libintl' library -and will decide to use it. If not, you may have to to use the -`--with-libintl-prefix' option to tell `configure' where to look for it. - - Internationalized packages usually have many `po/LL.po' files, where -LL gives an ISO 639 two-letter code identifying the language. Unless -translations have been forbidden at `configure' time by using the -`--disable-nls' switch, all available translations are installed -together with the package. However, the environment variable `LINGUAS' -may be set, prior to configuration, to limit the installed set. -`LINGUAS' should then contain a space separated list of two-letter -codes, stating which languages are allowed. - -1.2 Using This Package -====================== - -As a user, if your language has been installed for this package, you -only have to set the `LANG' environment variable to the appropriate -`LL_CC' combination. If you happen to have the `LC_ALL' or some other -`LC_xxx' environment variables set, you should unset them before -setting `LANG', otherwise the setting of `LANG' will not have the -desired effect. Here `LL' is an ISO 639 two-letter language code, and -`CC' is an ISO 3166 two-letter country code. For example, let's -suppose that you speak German and live in Germany. At the shell -prompt, merely execute `setenv LANG de_DE' (in `csh'), -`export LANG; LANG=de_DE' (in `sh') or `export LANG=de_DE' (in `bash'). -This can be done from your `.login' or `.profile' file, once and for -all. - - You might think that the country code specification is redundant. -But in fact, some languages have dialects in different countries. For -example, `de_AT' is used for Austria, and `pt_BR' for Brazil. The -country code serves to distinguish the dialects. - - The locale naming convention of `LL_CC', with `LL' denoting the -language and `CC' denoting the country, is the one use on systems based -on GNU libc. On other systems, some variations of this scheme are -used, such as `LL' or `LL_CC.ENCODING'. You can get the list of -locales supported by your system for your language by running the -command `locale -a | grep '^LL''. - - Not all programs have translations for all languages. By default, an -English message is shown in place of a nonexistent translation. If you -understand other languages, you can set up a priority list of languages. -This is done through a different environment variable, called -`LANGUAGE'. GNU `gettext' gives preference to `LANGUAGE' over `LANG' -for the purpose of message handling, but you still need to have `LANG' -set to the primary language; this is required by other parts of the -system libraries. For example, some Swedish users who would rather -read translations in German than English for when Swedish is not -available, set `LANGUAGE' to `sv:de' while leaving `LANG' to `sv_SE'. - - Special advice for Norwegian users: The language code for Norwegian -bokma*l changed from `no' to `nb' recently (in 2003). During the -transition period, while some message catalogs for this language are -installed under `nb' and some older ones under `no', it's recommended -for Norwegian users to set `LANGUAGE' to `nb:no' so that both newer and -older translations are used. - - In the `LANGUAGE' environment variable, but not in the `LANG' -environment variable, `LL_CC' combinations can be abbreviated as `LL' -to denote the language's main dialect. For example, `de' is equivalent -to `de_DE' (German as spoken in Germany), and `pt' to `pt_PT' -(Portuguese as spoken in Portugal) in this context. - -1.3 Translating Teams -===================== - -For the Free Translation Project to be a success, we need interested -people who like their own language and write it well, and who are also -able to synergize with other translators speaking the same language. -Each translation team has its own mailing list. The up-to-date list of -teams can be found at the Free Translation Project's homepage, -`http://translationproject.org/', in the "Teams" area. - - If you'd like to volunteer to _work_ at translating messages, you -should become a member of the translating team for your own language. -The subscribing address is _not_ the same as the list itself, it has -`-request' appended. For example, speakers of Swedish can send a -message to `sv-request@li.org', having this message body: - - subscribe - - Keep in mind that team members are expected to participate -_actively_ in translations, or at solving translational difficulties, -rather than merely lurking around. If your team does not exist yet and -you want to start one, or if you are unsure about what to do or how to -get started, please write to `coordinator@translationproject.org' to -reach the coordinator for all translator teams. - - The English team is special. It works at improving and uniformizing -the terminology in use. Proven linguistic skills are praised more than -programming skills, here. - -1.4 Available Packages -====================== - -Languages are not equally supported in all packages. The following -matrix shows the current state of internationalization, as of June -2010. The matrix shows, in regard of each package, for which languages -PO files have been submitted to translation coordination, with a -translation percentage of at least 50%. - - Ready PO files af am an ar as ast az be be@latin bg bn_IN bs ca - +--------------------------------------------------+ - a2ps | [] [] | - aegis | | - ant-phone | | - anubis | | - aspell | [] [] | - bash | | - bfd | | - bibshelf | [] | - binutils | | - bison | | - bison-runtime | [] | - bluez-pin | [] [] | - bombono-dvd | | - buzztard | | - cflow | | - clisp | | - coreutils | [] [] | - cpio | | - cppi | | - cpplib | [] | - cryptsetup | | - dfarc | | - dialog | [] [] | - dico | | - diffutils | [] | - dink | | - doodle | | - e2fsprogs | [] | - enscript | [] | - exif | | - fetchmail | [] | - findutils | [] | - flex | [] | - freedink | | - gas | | - gawk | [] [] | - gcal | [] | - gcc | | - gettext-examples | [] [] [] [] | - gettext-runtime | [] [] | - gettext-tools | [] [] | - gip | [] | - gjay | | - gliv | [] | - glunarclock | [] [] | - gnubiff | | - gnucash | [] | - gnuedu | | - gnulib | | - gnunet | | - gnunet-gtk | | - gnutls | | - gold | | - gpe-aerial | | - gpe-beam | | - gpe-bluetooth | | - gpe-calendar | | - gpe-clock | [] | - gpe-conf | | - gpe-contacts | | - gpe-edit | | - gpe-filemanager | | - gpe-go | | - gpe-login | | - gpe-ownerinfo | [] | - gpe-package | | - gpe-sketchbook | | - gpe-su | [] | - gpe-taskmanager | [] | - gpe-timesheet | [] | - gpe-today | [] | - gpe-todo | | - gphoto2 | | - gprof | [] | - gpsdrive | | - gramadoir | | - grep | | - grub | [] [] | - gsasl | | - gss | | - gst-plugins-bad | [] | - gst-plugins-base | [] | - gst-plugins-good | [] | - gst-plugins-ugly | [] | - gstreamer | [] [] [] | - gtick | | - gtkam | [] | - gtkorphan | [] | - gtkspell | [] [] [] | - gutenprint | | - hello | [] | - help2man | | - hylafax | | - idutils | | - indent | [] [] | - iso_15924 | | - iso_3166 | [] [] [] [] [] [] [] | - iso_3166_2 | | - iso_4217 | | - iso_639 | [] [] [] [] | - iso_639_3 | | - jwhois | | - kbd | | - keytouch | [] | - keytouch-editor | | - keytouch-keyboa... | [] | - klavaro | [] | - latrine | | - ld | [] | - leafpad | [] [] | - libc | [] [] | - libexif | () | - libextractor | | - libgnutls | | - libgpewidget | | - libgpg-error | | - libgphoto2 | | - libgphoto2_port | | - libgsasl | | - libiconv | [] | - libidn | | - lifelines | | - liferea | [] [] | - lilypond | | - linkdr | [] | - lordsawar | | - lprng | | - lynx | [] | - m4 | | - mailfromd | | - mailutils | | - make | | - man-db | | - man-db-manpages | | - minicom | | - mkisofs | | - myserver | | - nano | [] [] | - opcodes | | - parted | | - pies | | - popt | | - psmisc | | - pspp | [] | - pwdutils | | - radius | [] | - recode | [] [] | - rosegarden | | - rpm | | - rush | | - sarg | | - screem | | - scrollkeeper | [] [] [] | - sed | [] [] | - sharutils | [] [] | - shishi | | - skencil | | - solfege | | - solfege-manual | | - soundtracker | | - sp | | - sysstat | | - tar | [] | - texinfo | | - tin | | - unicode-han-tra... | | - unicode-transla... | | - util-linux-ng | [] | - vice | | - vmm | | - vorbis-tools | | - wastesedge | | - wdiff | | - wget | [] [] | - wyslij-po | | - xchat | [] [] [] [] | - xdg-user-dirs | [] [] [] [] [] [] [] [] [] | - xkeyboard-config | [] [] | - +--------------------------------------------------+ - af am an ar as ast az be be@latin bg bn_IN bs ca - 6 0 1 2 3 19 1 10 3 28 3 1 38 - - crh cs da de el en en_GB en_ZA eo es et eu fa - +-------------------------------------------------+ - a2ps | [] [] [] [] [] [] [] | - aegis | [] [] [] | - ant-phone | [] () | - anubis | [] [] | - aspell | [] [] [] [] [] | - bash | [] [] [] | - bfd | [] | - bibshelf | [] [] [] | - binutils | [] | - bison | [] [] | - bison-runtime | [] [] [] [] | - bluez-pin | [] [] [] [] [] [] | - bombono-dvd | [] | - buzztard | [] [] [] | - cflow | [] [] | - clisp | [] [] [] [] | - coreutils | [] [] [] [] | - cpio | | - cppi | | - cpplib | [] [] [] | - cryptsetup | [] | - dfarc | [] [] [] | - dialog | [] [] [] [] [] | - dico | | - diffutils | [] [] [] [] [] [] | - dink | [] [] [] | - doodle | [] | - e2fsprogs | [] [] [] | - enscript | [] [] [] | - exif | () [] [] | - fetchmail | [] [] () [] [] [] | - findutils | [] [] [] | - flex | [] [] | - freedink | [] [] [] | - gas | [] | - gawk | [] [] [] | - gcal | [] | - gcc | [] [] | - gettext-examples | [] [] [] [] | - gettext-runtime | [] [] [] [] | - gettext-tools | [] [] [] | - gip | [] [] [] [] | - gjay | [] | - gliv | [] [] [] | - glunarclock | [] [] | - gnubiff | () | - gnucash | [] () () () () | - gnuedu | [] [] | - gnulib | [] [] | - gnunet | | - gnunet-gtk | [] | - gnutls | [] [] | - gold | [] | - gpe-aerial | [] [] [] [] | - gpe-beam | [] [] [] [] | - gpe-bluetooth | [] [] | - gpe-calendar | [] | - gpe-clock | [] [] [] [] | - gpe-conf | [] [] [] | - gpe-contacts | [] [] [] | - gpe-edit | [] [] | - gpe-filemanager | [] [] [] | - gpe-go | [] [] [] [] | - gpe-login | [] [] | - gpe-ownerinfo | [] [] [] [] | - gpe-package | [] [] [] | - gpe-sketchbook | [] [] [] [] | - gpe-su | [] [] [] [] | - gpe-taskmanager | [] [] [] [] | - gpe-timesheet | [] [] [] [] | - gpe-today | [] [] [] [] | - gpe-todo | [] [] [] | - gphoto2 | [] [] () [] [] [] | - gprof | [] [] [] | - gpsdrive | [] [] [] | - gramadoir | [] [] [] | - grep | [] | - grub | [] [] | - gsasl | [] | - gss | | - gst-plugins-bad | [] [] [] [] [] | - gst-plugins-base | [] [] [] [] [] | - gst-plugins-good | [] [] [] [] [] [] | - gst-plugins-ugly | [] [] [] [] [] [] | - gstreamer | [] [] [] [] [] | - gtick | [] () [] | - gtkam | [] [] () [] [] | - gtkorphan | [] [] [] [] | - gtkspell | [] [] [] [] [] [] [] | - gutenprint | [] [] [] | - hello | [] [] [] [] | - help2man | [] | - hylafax | [] [] | - idutils | [] [] | - indent | [] [] [] [] [] [] [] | - iso_15924 | [] () [] [] | - iso_3166 | [] [] [] [] () [] [] [] () | - iso_3166_2 | () | - iso_4217 | [] [] [] () [] [] | - iso_639 | [] [] [] [] () [] [] | - iso_639_3 | [] | - jwhois | [] | - kbd | [] [] [] [] [] | - keytouch | [] [] | - keytouch-editor | [] [] | - keytouch-keyboa... | [] | - klavaro | [] [] [] [] | - latrine | [] () | - ld | [] [] | - leafpad | [] [] [] [] [] [] | - libc | [] [] [] [] | - libexif | [] [] () | - libextractor | | - libgnutls | [] | - libgpewidget | [] [] | - libgpg-error | [] [] | - libgphoto2 | [] () | - libgphoto2_port | [] () [] | - libgsasl | | - libiconv | [] [] [] [] [] | - libidn | [] [] [] | - lifelines | [] () | - liferea | [] [] [] [] [] | - lilypond | [] [] [] | - linkdr | [] [] [] | - lordsawar | [] | - lprng | | - lynx | [] [] [] [] | - m4 | [] [] [] [] | - mailfromd | | - mailutils | [] | - make | [] [] [] | - man-db | | - man-db-manpages | | - minicom | [] [] [] [] | - mkisofs | | - myserver | | - nano | [] [] [] | - opcodes | [] [] | - parted | [] [] | - pies | | - popt | [] [] [] [] [] | - psmisc | [] [] [] | - pspp | [] | - pwdutils | [] | - radius | [] | - recode | [] [] [] [] [] [] | - rosegarden | () () () | - rpm | [] [] [] | - rush | | - sarg | | - screem | | - scrollkeeper | [] [] [] [] [] | - sed | [] [] [] [] [] [] | - sharutils | [] [] [] [] | - shishi | | - skencil | [] () [] | - solfege | [] [] [] | - solfege-manual | [] [] | - soundtracker | [] [] [] | - sp | [] | - sysstat | [] [] [] | - tar | [] [] [] [] | - texinfo | [] [] [] | - tin | [] [] | - unicode-han-tra... | | - unicode-transla... | | - util-linux-ng | [] [] [] [] | - vice | () () | - vmm | [] | - vorbis-tools | [] [] | - wastesedge | [] | - wdiff | [] [] | - wget | [] [] [] | - wyslij-po | | - xchat | [] [] [] [] [] | - xdg-user-dirs | [] [] [] [] [] [] [] [] [] | - xkeyboard-config | [] [] [] [] [] [] | - +-------------------------------------------------+ - crh cs da de el en en_GB en_ZA eo es et eu fa - 5 64 105 117 18 1 8 0 28 89 18 19 0 - - fi fr ga gl gu he hi hr hu hy id is it ja ka kn - +----------------------------------------------------+ - a2ps | [] [] [] [] | - aegis | [] [] | - ant-phone | [] [] | - anubis | [] [] [] [] | - aspell | [] [] [] [] | - bash | [] [] [] [] | - bfd | [] [] [] | - bibshelf | [] [] [] [] [] | - binutils | [] [] [] | - bison | [] [] [] [] | - bison-runtime | [] [] [] [] [] [] | - bluez-pin | [] [] [] [] [] [] [] [] | - bombono-dvd | [] | - buzztard | [] | - cflow | [] [] [] | - clisp | [] | - coreutils | [] [] [] [] [] | - cpio | [] [] [] [] | - cppi | [] [] | - cpplib | [] [] [] | - cryptsetup | [] [] [] | - dfarc | [] [] [] | - dialog | [] [] [] [] [] [] [] | - dico | | - diffutils | [] [] [] [] [] [] [] [] [] | - dink | [] | - doodle | [] [] | - e2fsprogs | [] [] | - enscript | [] [] [] [] | - exif | [] [] [] [] [] [] | - fetchmail | [] [] [] [] | - findutils | [] [] [] [] [] [] | - flex | [] [] [] | - freedink | [] [] [] | - gas | [] [] | - gawk | [] [] [] [] () [] | - gcal | [] | - gcc | [] | - gettext-examples | [] [] [] [] [] [] [] | - gettext-runtime | [] [] [] [] [] [] | - gettext-tools | [] [] [] [] | - gip | [] [] [] [] [] [] | - gjay | [] | - gliv | [] () | - glunarclock | [] [] [] [] | - gnubiff | () [] () | - gnucash | () () () () () [] | - gnuedu | [] [] | - gnulib | [] [] [] [] [] [] | - gnunet | | - gnunet-gtk | [] | - gnutls | [] [] | - gold | [] [] | - gpe-aerial | [] [] [] | - gpe-beam | [] [] [] [] | - gpe-bluetooth | [] [] [] [] | - gpe-calendar | [] [] | - gpe-clock | [] [] [] [] [] | - gpe-conf | [] [] [] [] | - gpe-contacts | [] [] [] [] | - gpe-edit | [] [] [] | - gpe-filemanager | [] [] [] [] | - gpe-go | [] [] [] [] [] | - gpe-login | [] [] [] | - gpe-ownerinfo | [] [] [] [] [] | - gpe-package | [] [] [] | - gpe-sketchbook | [] [] [] [] | - gpe-su | [] [] [] [] [] [] | - gpe-taskmanager | [] [] [] [] [] | - gpe-timesheet | [] [] [] [] [] | - gpe-today | [] [] [] [] [] [] [] | - gpe-todo | [] [] [] | - gphoto2 | [] [] [] [] [] [] | - gprof | [] [] [] [] | - gpsdrive | [] [] [] | - gramadoir | [] [] [] | - grep | [] [] | - grub | [] [] [] [] | - gsasl | [] [] [] [] [] | - gss | [] [] [] [] [] | - gst-plugins-bad | [] [] [] [] [] [] | - gst-plugins-base | [] [] [] [] [] [] | - gst-plugins-good | [] [] [] [] [] [] | - gst-plugins-ugly | [] [] [] [] [] [] | - gstreamer | [] [] [] [] [] | - gtick | [] [] [] [] [] | - gtkam | [] [] [] [] [] | - gtkorphan | [] [] [] | - gtkspell | [] [] [] [] [] [] [] [] [] | - gutenprint | [] [] [] [] | - hello | [] [] [] | - help2man | [] [] | - hylafax | [] | - idutils | [] [] [] [] [] [] | - indent | [] [] [] [] [] [] [] [] | - iso_15924 | [] () [] [] | - iso_3166 | [] () [] [] [] [] [] [] [] [] [] [] | - iso_3166_2 | () [] [] [] | - iso_4217 | [] () [] [] [] [] | - iso_639 | [] () [] [] [] [] [] [] [] | - iso_639_3 | () [] [] | - jwhois | [] [] [] [] [] | - kbd | [] [] | - keytouch | [] [] [] [] [] [] | - keytouch-editor | [] [] [] [] [] | - keytouch-keyboa... | [] [] [] [] [] | - klavaro | [] [] | - latrine | [] [] [] | - ld | [] [] [] [] | - leafpad | [] [] [] [] [] [] [] () | - libc | [] [] [] [] [] | - libexif | [] | - libextractor | | - libgnutls | [] [] | - libgpewidget | [] [] [] [] | - libgpg-error | [] [] | - libgphoto2 | [] [] [] | - libgphoto2_port | [] [] [] | - libgsasl | [] [] [] [] [] | - libiconv | [] [] [] [] [] [] | - libidn | [] [] [] [] | - lifelines | () | - liferea | [] [] [] [] | - lilypond | [] [] | - linkdr | [] [] [] [] [] | - lordsawar | | - lprng | [] | - lynx | [] [] [] [] [] | - m4 | [] [] [] [] [] [] | - mailfromd | | - mailutils | [] [] | - make | [] [] [] [] [] [] [] [] [] | - man-db | [] [] | - man-db-manpages | [] | - minicom | [] [] [] [] [] | - mkisofs | [] [] [] [] | - myserver | | - nano | [] [] [] [] [] [] | - opcodes | [] [] [] [] | - parted | [] [] [] [] | - pies | | - popt | [] [] [] [] [] [] [] [] [] | - psmisc | [] [] [] | - pspp | | - pwdutils | [] [] | - radius | [] [] | - recode | [] [] [] [] [] [] [] [] | - rosegarden | () () () () () | - rpm | [] [] | - rush | | - sarg | [] | - screem | [] [] | - scrollkeeper | [] [] [] [] | - sed | [] [] [] [] [] [] [] [] | - sharutils | [] [] [] [] [] [] [] | - shishi | [] | - skencil | [] | - solfege | [] [] [] [] | - solfege-manual | [] [] | - soundtracker | [] [] | - sp | [] () | - sysstat | [] [] [] [] [] | - tar | [] [] [] [] [] [] [] | - texinfo | [] [] [] [] | - tin | [] | - unicode-han-tra... | | - unicode-transla... | [] [] | - util-linux-ng | [] [] [] [] [] [] | - vice | () () () | - vmm | [] | - vorbis-tools | [] | - wastesedge | () () | - wdiff | [] | - wget | [] [] [] [] [] [] [] [] | - wyslij-po | [] [] [] | - xchat | [] [] [] [] [] [] [] [] [] | - xdg-user-dirs | [] [] [] [] [] [] [] [] [] [] [] [] [] | - xkeyboard-config | [] [] [] [] [] | - +----------------------------------------------------+ - fi fr ga gl gu he hi hr hu hy id is it ja ka kn - 105 121 53 20 4 8 3 5 53 2 120 5 84 67 0 4 - - ko ku ky lg lt lv mk ml mn mr ms mt nb nds ne - +-----------------------------------------------+ - a2ps | [] | - aegis | | - ant-phone | | - anubis | [] [] | - aspell | [] | - bash | | - bfd | | - bibshelf | [] [] | - binutils | | - bison | [] | - bison-runtime | [] [] [] [] [] | - bluez-pin | [] [] [] [] [] | - bombono-dvd | | - buzztard | | - cflow | | - clisp | | - coreutils | [] | - cpio | | - cppi | | - cpplib | | - cryptsetup | | - dfarc | [] | - dialog | [] [] [] [] [] | - dico | | - diffutils | [] [] | - dink | | - doodle | | - e2fsprogs | | - enscript | | - exif | [] | - fetchmail | | - findutils | | - flex | | - freedink | [] | - gas | | - gawk | | - gcal | | - gcc | | - gettext-examples | [] [] [] [] | - gettext-runtime | [] | - gettext-tools | [] | - gip | [] [] | - gjay | | - gliv | | - glunarclock | [] | - gnubiff | | - gnucash | () () () () | - gnuedu | | - gnulib | | - gnunet | | - gnunet-gtk | | - gnutls | [] | - gold | | - gpe-aerial | [] | - gpe-beam | [] | - gpe-bluetooth | [] [] | - gpe-calendar | [] | - gpe-clock | [] [] [] [] [] | - gpe-conf | [] [] | - gpe-contacts | [] [] | - gpe-edit | [] | - gpe-filemanager | [] [] | - gpe-go | [] [] [] | - gpe-login | [] | - gpe-ownerinfo | [] [] | - gpe-package | [] [] | - gpe-sketchbook | [] [] | - gpe-su | [] [] [] [] [] [] | - gpe-taskmanager | [] [] [] [] [] [] | - gpe-timesheet | [] [] | - gpe-today | [] [] [] [] | - gpe-todo | [] [] | - gphoto2 | | - gprof | [] | - gpsdrive | | - gramadoir | | - grep | | - grub | | - gsasl | | - gss | | - gst-plugins-bad | [] [] [] [] | - gst-plugins-base | [] [] | - gst-plugins-good | [] [] | - gst-plugins-ugly | [] [] [] [] [] | - gstreamer | | - gtick | | - gtkam | [] | - gtkorphan | [] [] | - gtkspell | [] [] [] [] [] [] [] | - gutenprint | | - hello | [] [] [] | - help2man | | - hylafax | | - idutils | | - indent | | - iso_15924 | [] [] | - iso_3166 | [] [] () [] [] [] [] [] | - iso_3166_2 | | - iso_4217 | [] [] | - iso_639 | [] [] | - iso_639_3 | [] | - jwhois | [] | - kbd | | - keytouch | [] | - keytouch-editor | [] | - keytouch-keyboa... | [] | - klavaro | [] | - latrine | [] | - ld | | - leafpad | [] [] [] | - libc | [] | - libexif | | - libextractor | | - libgnutls | [] | - libgpewidget | [] [] | - libgpg-error | | - libgphoto2 | | - libgphoto2_port | | - libgsasl | | - libiconv | | - libidn | | - lifelines | | - liferea | | - lilypond | | - linkdr | | - lordsawar | | - lprng | | - lynx | | - m4 | | - mailfromd | | - mailutils | | - make | [] | - man-db | | - man-db-manpages | | - minicom | [] | - mkisofs | | - myserver | | - nano | [] [] | - opcodes | | - parted | | - pies | | - popt | [] [] [] | - psmisc | | - pspp | | - pwdutils | | - radius | | - recode | | - rosegarden | | - rpm | | - rush | | - sarg | | - screem | | - scrollkeeper | [] [] | - sed | | - sharutils | | - shishi | | - skencil | | - solfege | [] | - solfege-manual | | - soundtracker | | - sp | | - sysstat | [] | - tar | [] | - texinfo | [] | - tin | | - unicode-han-tra... | | - unicode-transla... | | - util-linux-ng | | - vice | | - vmm | | - vorbis-tools | | - wastesedge | | - wdiff | | - wget | [] | - wyslij-po | | - xchat | [] [] [] | - xdg-user-dirs | [] [] [] [] [] [] [] [] | - xkeyboard-config | [] [] [] | - +-----------------------------------------------+ - ko ku ky lg lt lv mk ml mn mr ms mt nb nds ne - 20 5 10 1 13 48 4 2 2 4 24 10 20 3 1 - - nl nn or pa pl ps pt pt_BR ro ru rw sk sl sq sr - +---------------------------------------------------+ - a2ps | [] [] [] [] [] [] [] [] | - aegis | [] [] [] | - ant-phone | [] [] | - anubis | [] [] [] | - aspell | [] [] [] [] [] | - bash | [] [] | - bfd | [] | - bibshelf | [] [] | - binutils | [] [] | - bison | [] [] [] | - bison-runtime | [] [] [] [] [] [] [] | - bluez-pin | [] [] [] [] [] [] [] [] | - bombono-dvd | [] () | - buzztard | [] [] | - cflow | [] | - clisp | [] [] | - coreutils | [] [] [] [] [] [] | - cpio | [] [] [] | - cppi | [] | - cpplib | [] | - cryptsetup | [] | - dfarc | [] | - dialog | [] [] [] [] | - dico | [] | - diffutils | [] [] [] [] [] [] | - dink | () | - doodle | [] [] | - e2fsprogs | [] [] | - enscript | [] [] [] [] [] | - exif | [] [] [] () [] | - fetchmail | [] [] [] [] | - findutils | [] [] [] [] [] | - flex | [] [] [] [] [] | - freedink | [] [] | - gas | | - gawk | [] [] [] [] | - gcal | | - gcc | [] | - gettext-examples | [] [] [] [] [] [] [] [] | - gettext-runtime | [] [] [] [] [] [] [] [] [] | - gettext-tools | [] [] [] [] [] [] | - gip | [] [] [] [] [] | - gjay | | - gliv | [] [] [] [] [] [] | - glunarclock | [] [] [] [] [] | - gnubiff | [] () | - gnucash | [] () () () | - gnuedu | [] | - gnulib | [] [] [] [] | - gnunet | | - gnunet-gtk | | - gnutls | [] [] | - gold | | - gpe-aerial | [] [] [] [] [] [] [] | - gpe-beam | [] [] [] [] [] [] [] | - gpe-bluetooth | [] [] | - gpe-calendar | [] [] [] [] | - gpe-clock | [] [] [] [] [] [] [] [] | - gpe-conf | [] [] [] [] [] [] [] | - gpe-contacts | [] [] [] [] [] | - gpe-edit | [] [] [] | - gpe-filemanager | [] [] [] | - gpe-go | [] [] [] [] [] [] [] [] | - gpe-login | [] [] | - gpe-ownerinfo | [] [] [] [] [] [] [] [] | - gpe-package | [] [] | - gpe-sketchbook | [] [] [] [] [] [] [] | - gpe-su | [] [] [] [] [] [] [] [] | - gpe-taskmanager | [] [] [] [] [] [] [] [] | - gpe-timesheet | [] [] [] [] [] [] [] [] | - gpe-today | [] [] [] [] [] [] [] [] | - gpe-todo | [] [] [] [] [] | - gphoto2 | [] [] [] [] [] [] [] [] | - gprof | [] [] [] | - gpsdrive | [] [] | - gramadoir | [] [] | - grep | [] [] [] [] | - grub | [] [] [] | - gsasl | [] [] [] [] | - gss | [] [] [] | - gst-plugins-bad | [] [] [] [] [] [] | - gst-plugins-base | [] [] [] [] [] | - gst-plugins-good | [] [] [] [] [] | - gst-plugins-ugly | [] [] [] [] [] [] | - gstreamer | [] [] [] [] [] | - gtick | [] [] [] | - gtkam | [] [] [] [] [] [] | - gtkorphan | [] | - gtkspell | [] [] [] [] [] [] [] [] [] [] | - gutenprint | [] [] | - hello | [] [] [] [] | - help2man | [] [] | - hylafax | [] | - idutils | [] [] [] [] [] | - indent | [] [] [] [] [] [] [] | - iso_15924 | [] [] [] [] | - iso_3166 | [] [] [] [] [] () [] [] [] [] [] [] [] [] | - iso_3166_2 | [] [] [] | - iso_4217 | [] [] [] [] [] [] [] [] | - iso_639 | [] [] [] [] [] [] [] [] [] | - iso_639_3 | [] [] | - jwhois | [] [] [] [] | - kbd | [] [] [] | - keytouch | [] [] [] | - keytouch-editor | [] [] [] | - keytouch-keyboa... | [] [] [] | - klavaro | [] [] | - latrine | [] [] | - ld | | - leafpad | [] [] [] [] [] [] [] [] [] | - libc | [] [] [] [] | - libexif | [] [] () [] | - libextractor | | - libgnutls | [] [] | - libgpewidget | [] [] [] | - libgpg-error | [] [] | - libgphoto2 | [] [] | - libgphoto2_port | [] [] [] [] [] | - libgsasl | [] [] [] [] [] | - libiconv | [] [] [] [] [] | - libidn | [] [] | - lifelines | [] [] | - liferea | [] [] [] [] [] () () [] | - lilypond | [] | - linkdr | [] [] [] | - lordsawar | | - lprng | [] | - lynx | [] [] [] | - m4 | [] [] [] [] [] | - mailfromd | [] | - mailutils | [] | - make | [] [] [] [] | - man-db | [] [] [] | - man-db-manpages | [] [] [] | - minicom | [] [] [] [] | - mkisofs | [] [] [] | - myserver | | - nano | [] [] [] [] | - opcodes | [] [] | - parted | [] [] [] [] | - pies | [] | - popt | [] [] [] [] | - psmisc | [] [] [] | - pspp | [] [] | - pwdutils | [] | - radius | [] [] [] | - recode | [] [] [] [] [] [] [] [] | - rosegarden | () () | - rpm | [] [] [] | - rush | [] [] | - sarg | | - screem | | - scrollkeeper | [] [] [] [] [] [] [] [] | - sed | [] [] [] [] [] [] [] [] [] | - sharutils | [] [] [] [] | - shishi | [] | - skencil | [] [] | - solfege | [] [] [] [] | - solfege-manual | [] [] [] | - soundtracker | [] | - sp | | - sysstat | [] [] [] [] | - tar | [] [] [] [] | - texinfo | [] [] [] [] | - tin | [] | - unicode-han-tra... | | - unicode-transla... | | - util-linux-ng | [] [] [] [] [] | - vice | [] | - vmm | [] | - vorbis-tools | [] [] | - wastesedge | [] | - wdiff | [] [] | - wget | [] [] [] [] [] [] [] | - wyslij-po | [] [] [] | - xchat | [] [] [] [] [] [] [] [] [] | - xdg-user-dirs | [] [] [] [] [] [] [] [] [] [] [] [] [] [] | - xkeyboard-config | [] [] [] | - +---------------------------------------------------+ - nl nn or pa pl ps pt pt_BR ro ru rw sk sl sq sr - 135 10 4 7 105 1 29 62 47 91 3 54 46 9 37 - - sv sw ta te tg th tr uk vi wa zh_CN zh_HK zh_TW - +---------------------------------------------------+ - a2ps | [] [] [] [] [] | 27 - aegis | [] | 9 - ant-phone | [] [] [] [] | 9 - anubis | [] [] [] [] | 15 - aspell | [] [] [] | 20 - bash | [] [] [] | 12 - bfd | [] | 6 - bibshelf | [] [] [] | 16 - binutils | [] [] | 8 - bison | [] [] | 12 - bison-runtime | [] [] [] [] [] [] | 29 - bluez-pin | [] [] [] [] [] [] [] [] | 37 - bombono-dvd | [] | 4 - buzztard | [] | 7 - cflow | [] [] [] | 9 - clisp | | 10 - coreutils | [] [] [] [] | 22 - cpio | [] [] [] [] [] [] | 13 - cppi | [] [] | 5 - cpplib | [] [] [] [] [] [] | 14 - cryptsetup | [] [] | 7 - dfarc | [] | 9 - dialog | [] [] [] [] [] [] [] | 30 - dico | [] | 2 - diffutils | [] [] [] [] [] [] | 30 - dink | | 4 - doodle | [] [] | 7 - e2fsprogs | [] [] [] | 11 - enscript | [] [] [] [] | 17 - exif | [] [] [] | 16 - fetchmail | [] [] [] | 17 - findutils | [] [] [] [] [] | 20 - flex | [] [] [] [] | 15 - freedink | [] | 10 - gas | [] | 4 - gawk | [] [] [] [] | 18 - gcal | [] [] | 5 - gcc | [] [] [] | 7 - gettext-examples | [] [] [] [] [] [] [] | 34 - gettext-runtime | [] [] [] [] [] [] [] | 29 - gettext-tools | [] [] [] [] [] [] | 22 - gip | [] [] [] [] | 22 - gjay | [] | 3 - gliv | [] [] [] | 14 - glunarclock | [] [] [] [] [] | 19 - gnubiff | [] [] | 4 - gnucash | () [] () [] () | 10 - gnuedu | [] [] | 7 - gnulib | [] [] [] [] | 16 - gnunet | [] | 1 - gnunet-gtk | [] [] [] | 5 - gnutls | [] [] [] | 10 - gold | [] | 4 - gpe-aerial | [] [] [] | 18 - gpe-beam | [] [] [] | 19 - gpe-bluetooth | [] [] [] | 13 - gpe-calendar | [] [] [] [] | 12 - gpe-clock | [] [] [] [] [] | 28 - gpe-conf | [] [] [] [] | 20 - gpe-contacts | [] [] [] | 17 - gpe-edit | [] [] [] | 12 - gpe-filemanager | [] [] [] [] | 16 - gpe-go | [] [] [] [] [] | 25 - gpe-login | [] [] [] | 11 - gpe-ownerinfo | [] [] [] [] [] | 25 - gpe-package | [] [] [] | 13 - gpe-sketchbook | [] [] [] | 20 - gpe-su | [] [] [] [] [] | 30 - gpe-taskmanager | [] [] [] [] [] | 29 - gpe-timesheet | [] [] [] [] [] | 25 - gpe-today | [] [] [] [] [] [] | 30 - gpe-todo | [] [] [] [] | 17 - gphoto2 | [] [] [] [] [] | 24 - gprof | [] [] [] | 15 - gpsdrive | [] [] [] | 11 - gramadoir | [] [] [] | 11 - grep | [] [] [] | 10 - grub | [] [] [] | 14 - gsasl | [] [] [] [] | 14 - gss | [] [] [] | 11 - gst-plugins-bad | [] [] [] [] | 26 - gst-plugins-base | [] [] [] [] [] | 24 - gst-plugins-good | [] [] [] [] | 24 - gst-plugins-ugly | [] [] [] [] [] | 29 - gstreamer | [] [] [] [] | 22 - gtick | [] [] [] | 13 - gtkam | [] [] [] | 20 - gtkorphan | [] [] [] | 14 - gtkspell | [] [] [] [] [] [] [] [] [] | 45 - gutenprint | [] | 10 - hello | [] [] [] [] [] [] | 21 - help2man | [] [] | 7 - hylafax | [] | 5 - idutils | [] [] [] [] | 17 - indent | [] [] [] [] [] [] | 30 - iso_15924 | () [] () [] [] | 16 - iso_3166 | [] [] () [] [] () [] [] [] () | 53 - iso_3166_2 | () [] () [] | 9 - iso_4217 | [] () [] [] () [] [] | 26 - iso_639 | [] [] [] () [] () [] [] [] [] | 38 - iso_639_3 | [] () | 8 - jwhois | [] [] [] [] [] | 16 - kbd | [] [] [] [] [] | 15 - keytouch | [] [] [] | 16 - keytouch-editor | [] [] [] | 14 - keytouch-keyboa... | [] [] [] | 14 - klavaro | [] | 11 - latrine | [] [] [] | 10 - ld | [] [] [] [] | 11 - leafpad | [] [] [] [] [] [] | 33 - libc | [] [] [] [] [] | 21 - libexif | [] () | 7 - libextractor | [] | 1 - libgnutls | [] [] [] | 9 - libgpewidget | [] [] [] | 14 - libgpg-error | [] [] [] | 9 - libgphoto2 | [] [] | 8 - libgphoto2_port | [] [] [] [] | 14 - libgsasl | [] [] [] | 13 - libiconv | [] [] [] [] | 21 - libidn | () [] [] | 11 - lifelines | [] | 4 - liferea | [] [] [] | 21 - lilypond | [] | 7 - linkdr | [] [] [] [] [] | 17 - lordsawar | | 1 - lprng | [] | 3 - lynx | [] [] [] [] | 17 - m4 | [] [] [] [] | 19 - mailfromd | [] [] | 3 - mailutils | [] | 5 - make | [] [] [] [] | 21 - man-db | [] [] [] | 8 - man-db-manpages | | 4 - minicom | [] [] | 16 - mkisofs | [] [] | 9 - myserver | | 0 - nano | [] [] [] [] | 21 - opcodes | [] [] [] | 11 - parted | [] [] [] [] [] | 15 - pies | [] [] | 3 - popt | [] [] [] [] [] [] | 27 - psmisc | [] [] | 11 - pspp | | 4 - pwdutils | [] [] | 6 - radius | [] [] | 9 - recode | [] [] [] [] | 28 - rosegarden | () | 0 - rpm | [] [] [] | 11 - rush | [] [] | 4 - sarg | | 1 - screem | [] | 3 - scrollkeeper | [] [] [] [] [] | 27 - sed | [] [] [] [] [] | 30 - sharutils | [] [] [] [] [] | 22 - shishi | [] | 3 - skencil | [] [] | 7 - solfege | [] [] [] [] | 16 - solfege-manual | [] | 8 - soundtracker | [] [] [] | 9 - sp | [] | 3 - sysstat | [] [] | 15 - tar | [] [] [] [] [] [] | 23 - texinfo | [] [] [] [] [] | 17 - tin | | 4 - unicode-han-tra... | | 0 - unicode-transla... | | 2 - util-linux-ng | [] [] [] [] | 20 - vice | () () | 1 - vmm | [] | 4 - vorbis-tools | [] | 6 - wastesedge | | 2 - wdiff | [] [] | 7 - wget | [] [] [] [] [] | 26 - wyslij-po | [] [] | 8 - xchat | [] [] [] [] [] [] | 36 - xdg-user-dirs | [] [] [] [] [] [] [] [] [] [] | 63 - xkeyboard-config | [] [] [] | 22 - +---------------------------------------------------+ - 85 teams sv sw ta te tg th tr uk vi wa zh_CN zh_HK zh_TW - 178 domains 119 1 3 3 0 10 65 51 155 17 98 7 41 2618 - - Some counters in the preceding matrix are higher than the number of -visible blocks let us expect. This is because a few extra PO files are -used for implementing regional variants of languages, or language -dialects. - - For a PO file in the matrix above to be effective, the package to -which it applies should also have been internationalized and -distributed as such by its maintainer. There might be an observable -lag between the mere existence a PO file and its wide availability in a -distribution. - - If June 2010 seems to be old, you may fetch a more recent copy of -this `ABOUT-NLS' file on most GNU archive sites. The most up-to-date -matrix with full percentage details can be found at -`http://translationproject.org/extra/matrix.html'. - -1.5 Using `gettext' in new packages -=================================== - -If you are writing a freely available program and want to -internationalize it you are welcome to use GNU `gettext' in your -package. Of course you have to respect the GNU Library General Public -License which covers the use of the GNU `gettext' library. This means -in particular that even non-free programs can use `libintl' as a shared -library, whereas only free software can use `libintl' as a static -library or use modified versions of `libintl'. - - Once the sources are changed appropriately and the setup can handle -the use of `gettext' the only thing missing are the translations. The -Free Translation Project is also available for packages which are not -developed inside the GNU project. Therefore the information given above -applies also for every other Free Software Project. Contact -`coordinator@translationproject.org' to make the `.pot' files available -to the translation teams. - diff --git a/thirdparty/grub-2.04/AUTHORS b/thirdparty/grub-2.04/AUTHORS deleted file mode 100644 index 8de5c4d30..000000000 --- a/thirdparty/grub-2.04/AUTHORS +++ /dev/null @@ -1,23 +0,0 @@ -The following authors assigned copyright on their work to the Free -Software Foundation: - -Yoshinori K. Okuji designed and implemented the initial version. - -Jeroen Dekkers added initrd support, Multiboot support, and fixed bugs -in ext2fs. - -Marco Gerards added ext2fs support, grub-emu, a new command-line -engine, and fixed many bugs. - -Omniflux added terminfo and serial support. - -Vincent Pelletier added Sparc64 support. - -Hollis Blanchard implemented many parts of PowerPC support. - -Tomas Ebenlendr added the command chainloader into the normal mode, -fixed some bugs. - -Guillem Jover merged architecture-independent ELF support code. - -Vesa Jaaskelainen added VBE support. diff --git a/thirdparty/grub-2.04/BUGS b/thirdparty/grub-2.04/BUGS deleted file mode 100644 index 46faa6452..000000000 --- a/thirdparty/grub-2.04/BUGS +++ /dev/null @@ -1,7 +0,0 @@ -GRUB team is aware of following problems: - - Currently search and assembling multidevice abstractions scans - all the devices which can be slow. - - Cache isn't used correctly for video which results in slowness. - -While these are bugs their solution has a potential of breaking more and more -seriously. So it was decided for 1.99 that they aren't fixed. diff --git a/thirdparty/grub-2.04/COPYING b/thirdparty/grub-2.04/COPYING deleted file mode 100644 index 94a9ed024..000000000 --- a/thirdparty/grub-2.04/COPYING +++ /dev/null @@ -1,674 +0,0 @@ - GNU GENERAL PUBLIC LICENSE - Version 3, 29 June 2007 - - Copyright (C) 2007 Free Software Foundation, Inc. - Everyone is permitted to copy and distribute verbatim copies - of this license document, but changing it is not allowed. - - Preamble - - The GNU General Public License is a free, copyleft license for -software and other kinds of works. - - The licenses for most software and other practical works are designed -to take away your freedom to share and change the works. By contrast, -the GNU General Public License is intended to guarantee your freedom to -share and change all versions of a program--to make sure it remains free -software for all its users. We, the Free Software Foundation, use the -GNU General Public License for most of our software; it applies also to -any other work released this way by its authors. You can apply it to -your programs, too. - - When we speak of free software, we are referring to freedom, not -price. Our General Public Licenses are designed to make sure that you -have the freedom to distribute copies of free software (and charge for -them if you wish), that you receive source code or can get it if you -want it, that you can change the software or use pieces of it in new -free programs, and that you know you can do these things. - - To protect your rights, we need to prevent others from denying you -these rights or asking you to surrender the rights. Therefore, you have -certain responsibilities if you distribute copies of the software, or if -you modify it: responsibilities to respect the freedom of others. - - For example, if you distribute copies of such a program, whether -gratis or for a fee, you must pass on to the recipients the same -freedoms that you received. You must make sure that they, too, receive -or can get the source code. And you must show them these terms so they -know their rights. - - Developers that use the GNU GPL protect your rights with two steps: -(1) assert copyright on the software, and (2) offer you this License -giving you legal permission to copy, distribute and/or modify it. - - For the developers' and authors' protection, the GPL clearly explains -that there is no warranty for this free software. For both users' and -authors' sake, the GPL requires that modified versions be marked as -changed, so that their problems will not be attributed erroneously to -authors of previous versions. - - Some devices are designed to deny users access to install or run -modified versions of the software inside them, although the manufacturer -can do so. This is fundamentally incompatible with the aim of -protecting users' freedom to change the software. The systematic -pattern of such abuse occurs in the area of products for individuals to -use, which is precisely where it is most unacceptable. Therefore, we -have designed this version of the GPL to prohibit the practice for those -products. If such problems arise substantially in other domains, we -stand ready to extend this provision to those domains in future versions -of the GPL, as needed to protect the freedom of users. - - Finally, every program is threatened constantly by software patents. -States should not allow patents to restrict development and use of -software on general-purpose computers, but in those that do, we wish to -avoid the special danger that patents applied to a free program could -make it effectively proprietary. To prevent this, the GPL assures that -patents cannot be used to render the program non-free. - - The precise terms and conditions for copying, distribution and -modification follow. - - TERMS AND CONDITIONS - - 0. Definitions. - - "This License" refers to version 3 of the GNU General Public License. - - "Copyright" also means copyright-like laws that apply to other kinds of -works, such as semiconductor masks. - - "The Program" refers to any copyrightable work licensed under this -License. Each licensee is addressed as "you". "Licensees" and -"recipients" may be individuals or organizations. - - To "modify" a work means to copy from or adapt all or part of the work -in a fashion requiring copyright permission, other than the making of an -exact copy. The resulting work is called a "modified version" of the -earlier work or a work "based on" the earlier work. - - A "covered work" means either the unmodified Program or a work based -on the Program. - - To "propagate" a work means to do anything with it that, without -permission, would make you directly or secondarily liable for -infringement under applicable copyright law, except executing it on a -computer or modifying a private copy. Propagation includes copying, -distribution (with or without modification), making available to the -public, and in some countries other activities as well. - - To "convey" a work means any kind of propagation that enables other -parties to make or receive copies. Mere interaction with a user through -a computer network, with no transfer of a copy, is not conveying. - - An interactive user interface displays "Appropriate Legal Notices" -to the extent that it includes a convenient and prominently visible -feature that (1) displays an appropriate copyright notice, and (2) -tells the user that there is no warranty for the work (except to the -extent that warranties are provided), that licensees may convey the -work under this License, and how to view a copy of this License. If -the interface presents a list of user commands or options, such as a -menu, a prominent item in the list meets this criterion. - - 1. Source Code. - - The "source code" for a work means the preferred form of the work -for making modifications to it. "Object code" means any non-source -form of a work. - - A "Standard Interface" means an interface that either is an official -standard defined by a recognized standards body, or, in the case of -interfaces specified for a particular programming language, one that -is widely used among developers working in that language. - - The "System Libraries" of an executable work include anything, other -than the work as a whole, that (a) is included in the normal form of -packaging a Major Component, but which is not part of that Major -Component, and (b) serves only to enable use of the work with that -Major Component, or to implement a Standard Interface for which an -implementation is available to the public in source code form. A -"Major Component", in this context, means a major essential component -(kernel, window system, and so on) of the specific operating system -(if any) on which the executable work runs, or a compiler used to -produce the work, or an object code interpreter used to run it. - - The "Corresponding Source" for a work in object code form means all -the source code needed to generate, install, and (for an executable -work) run the object code and to modify the work, including scripts to -control those activities. However, it does not include the work's -System Libraries, or general-purpose tools or generally available free -programs which are used unmodified in performing those activities but -which are not part of the work. For example, Corresponding Source -includes interface definition files associated with source files for -the work, and the source code for shared libraries and dynamically -linked subprograms that the work is specifically designed to require, -such as by intimate data communication or control flow between those -subprograms and other parts of the work. - - The Corresponding Source need not include anything that users -can regenerate automatically from other parts of the Corresponding -Source. - - The Corresponding Source for a work in source code form is that -same work. - - 2. Basic Permissions. - - All rights granted under this License are granted for the term of -copyright on the Program, and are irrevocable provided the stated -conditions are met. This License explicitly affirms your unlimited -permission to run the unmodified Program. The output from running a -covered work is covered by this License only if the output, given its -content, constitutes a covered work. This License acknowledges your -rights of fair use or other equivalent, as provided by copyright law. - - You may make, run and propagate covered works that you do not -convey, without conditions so long as your license otherwise remains -in force. You may convey covered works to others for the sole purpose -of having them make modifications exclusively for you, or provide you -with facilities for running those works, provided that you comply with -the terms of this License in conveying all material for which you do -not control copyright. Those thus making or running the covered works -for you must do so exclusively on your behalf, under your direction -and control, on terms that prohibit them from making any copies of -your copyrighted material outside their relationship with you. - - Conveying under any other circumstances is permitted solely under -the conditions stated below. Sublicensing is not allowed; section 10 -makes it unnecessary. - - 3. Protecting Users' Legal Rights From Anti-Circumvention Law. - - No covered work shall be deemed part of an effective technological -measure under any applicable law fulfilling obligations under article -11 of the WIPO copyright treaty adopted on 20 December 1996, or -similar laws prohibiting or restricting circumvention of such -measures. - - When you convey a covered work, you waive any legal power to forbid -circumvention of technological measures to the extent such circumvention -is effected by exercising rights under this License with respect to -the covered work, and you disclaim any intention to limit operation or -modification of the work as a means of enforcing, against the work's -users, your or third parties' legal rights to forbid circumvention of -technological measures. - - 4. Conveying Verbatim Copies. - - You may convey verbatim copies of the Program's source code as you -receive it, in any medium, provided that you conspicuously and -appropriately publish on each copy an appropriate copyright notice; -keep intact all notices stating that this License and any -non-permissive terms added in accord with section 7 apply to the code; -keep intact all notices of the absence of any warranty; and give all -recipients a copy of this License along with the Program. - - You may charge any price or no price for each copy that you convey, -and you may offer support or warranty protection for a fee. - - 5. Conveying Modified Source Versions. - - You may convey a work based on the Program, or the modifications to -produce it from the Program, in the form of source code under the -terms of section 4, provided that you also meet all of these conditions: - - a) The work must carry prominent notices stating that you modified - it, and giving a relevant date. - - b) The work must carry prominent notices stating that it is - released under this License and any conditions added under section - 7. This requirement modifies the requirement in section 4 to - "keep intact all notices". - - c) You must license the entire work, as a whole, under this - License to anyone who comes into possession of a copy. This - License will therefore apply, along with any applicable section 7 - additional terms, to the whole of the work, and all its parts, - regardless of how they are packaged. This License gives no - permission to license the work in any other way, but it does not - invalidate such permission if you have separately received it. - - d) If the work has interactive user interfaces, each must display - Appropriate Legal Notices; however, if the Program has interactive - interfaces that do not display Appropriate Legal Notices, your - work need not make them do so. - - A compilation of a covered work with other separate and independent -works, which are not by their nature extensions of the covered work, -and which are not combined with it such as to form a larger program, -in or on a volume of a storage or distribution medium, is called an -"aggregate" if the compilation and its resulting copyright are not -used to limit the access or legal rights of the compilation's users -beyond what the individual works permit. Inclusion of a covered work -in an aggregate does not cause this License to apply to the other -parts of the aggregate. - - 6. Conveying Non-Source Forms. - - You may convey a covered work in object code form under the terms -of sections 4 and 5, provided that you also convey the -machine-readable Corresponding Source under the terms of this License, -in one of these ways: - - a) Convey the object code in, or embodied in, a physical product - (including a physical distribution medium), accompanied by the - Corresponding Source fixed on a durable physical medium - customarily used for software interchange. - - b) Convey the object code in, or embodied in, a physical product - (including a physical distribution medium), accompanied by a - written offer, valid for at least three years and valid for as - long as you offer spare parts or customer support for that product - model, to give anyone who possesses the object code either (1) a - copy of the Corresponding Source for all the software in the - product that is covered by this License, on a durable physical - medium customarily used for software interchange, for a price no - more than your reasonable cost of physically performing this - conveying of source, or (2) access to copy the - Corresponding Source from a network server at no charge. - - c) Convey individual copies of the object code with a copy of the - written offer to provide the Corresponding Source. This - alternative is allowed only occasionally and noncommercially, and - only if you received the object code with such an offer, in accord - with subsection 6b. - - d) Convey the object code by offering access from a designated - place (gratis or for a charge), and offer equivalent access to the - Corresponding Source in the same way through the same place at no - further charge. You need not require recipients to copy the - Corresponding Source along with the object code. If the place to - copy the object code is a network server, the Corresponding Source - may be on a different server (operated by you or a third party) - that supports equivalent copying facilities, provided you maintain - clear directions next to the object code saying where to find the - Corresponding Source. Regardless of what server hosts the - Corresponding Source, you remain obligated to ensure that it is - available for as long as needed to satisfy these requirements. - - e) Convey the object code using peer-to-peer transmission, provided - you inform other peers where the object code and Corresponding - Source of the work are being offered to the general public at no - charge under subsection 6d. - - A separable portion of the object code, whose source code is excluded -from the Corresponding Source as a System Library, need not be -included in conveying the object code work. - - A "User Product" is either (1) a "consumer product", which means any -tangible personal property which is normally used for personal, family, -or household purposes, or (2) anything designed or sold for incorporation -into a dwelling. In determining whether a product is a consumer product, -doubtful cases shall be resolved in favor of coverage. For a particular -product received by a particular user, "normally used" refers to a -typical or common use of that class of product, regardless of the status -of the particular user or of the way in which the particular user -actually uses, or expects or is expected to use, the product. A product -is a consumer product regardless of whether the product has substantial -commercial, industrial or non-consumer uses, unless such uses represent -the only significant mode of use of the product. - - "Installation Information" for a User Product means any methods, -procedures, authorization keys, or other information required to install -and execute modified versions of a covered work in that User Product from -a modified version of its Corresponding Source. The information must -suffice to ensure that the continued functioning of the modified object -code is in no case prevented or interfered with solely because -modification has been made. - - If you convey an object code work under this section in, or with, or -specifically for use in, a User Product, and the conveying occurs as -part of a transaction in which the right of possession and use of the -User Product is transferred to the recipient in perpetuity or for a -fixed term (regardless of how the transaction is characterized), the -Corresponding Source conveyed under this section must be accompanied -by the Installation Information. But this requirement does not apply -if neither you nor any third party retains the ability to install -modified object code on the User Product (for example, the work has -been installed in ROM). - - The requirement to provide Installation Information does not include a -requirement to continue to provide support service, warranty, or updates -for a work that has been modified or installed by the recipient, or for -the User Product in which it has been modified or installed. Access to a -network may be denied when the modification itself materially and -adversely affects the operation of the network or violates the rules and -protocols for communication across the network. - - Corresponding Source conveyed, and Installation Information provided, -in accord with this section must be in a format that is publicly -documented (and with an implementation available to the public in -source code form), and must require no special password or key for -unpacking, reading or copying. - - 7. Additional Terms. - - "Additional permissions" are terms that supplement the terms of this -License by making exceptions from one or more of its conditions. -Additional permissions that are applicable to the entire Program shall -be treated as though they were included in this License, to the extent -that they are valid under applicable law. If additional permissions -apply only to part of the Program, that part may be used separately -under those permissions, but the entire Program remains governed by -this License without regard to the additional permissions. - - When you convey a copy of a covered work, you may at your option -remove any additional permissions from that copy, or from any part of -it. (Additional permissions may be written to require their own -removal in certain cases when you modify the work.) You may place -additional permissions on material, added by you to a covered work, -for which you have or can give appropriate copyright permission. - - Notwithstanding any other provision of this License, for material you -add to a covered work, you may (if authorized by the copyright holders of -that material) supplement the terms of this License with terms: - - a) Disclaiming warranty or limiting liability differently from the - terms of sections 15 and 16 of this License; or - - b) Requiring preservation of specified reasonable legal notices or - author attributions in that material or in the Appropriate Legal - Notices displayed by works containing it; or - - c) Prohibiting misrepresentation of the origin of that material, or - requiring that modified versions of such material be marked in - reasonable ways as different from the original version; or - - d) Limiting the use for publicity purposes of names of licensors or - authors of the material; or - - e) Declining to grant rights under trademark law for use of some - trade names, trademarks, or service marks; or - - f) Requiring indemnification of licensors and authors of that - material by anyone who conveys the material (or modified versions of - it) with contractual assumptions of liability to the recipient, for - any liability that these contractual assumptions directly impose on - those licensors and authors. - - All other non-permissive additional terms are considered "further -restrictions" within the meaning of section 10. If the Program as you -received it, or any part of it, contains a notice stating that it is -governed by this License along with a term that is a further -restriction, you may remove that term. If a license document contains -a further restriction but permits relicensing or conveying under this -License, you may add to a covered work material governed by the terms -of that license document, provided that the further restriction does -not survive such relicensing or conveying. - - If you add terms to a covered work in accord with this section, you -must place, in the relevant source files, a statement of the -additional terms that apply to those files, or a notice indicating -where to find the applicable terms. - - Additional terms, permissive or non-permissive, may be stated in the -form of a separately written license, or stated as exceptions; -the above requirements apply either way. - - 8. Termination. - - You may not propagate or modify a covered work except as expressly -provided under this License. Any attempt otherwise to propagate or -modify it is void, and will automatically terminate your rights under -this License (including any patent licenses granted under the third -paragraph of section 11). - - However, if you cease all violation of this License, then your -license from a particular copyright holder is reinstated (a) -provisionally, unless and until the copyright holder explicitly and -finally terminates your license, and (b) permanently, if the copyright -holder fails to notify you of the violation by some reasonable means -prior to 60 days after the cessation. - - Moreover, your license from a particular copyright holder is -reinstated permanently if the copyright holder notifies you of the -violation by some reasonable means, this is the first time you have -received notice of violation of this License (for any work) from that -copyright holder, and you cure the violation prior to 30 days after -your receipt of the notice. - - Termination of your rights under this section does not terminate the -licenses of parties who have received copies or rights from you under -this License. If your rights have been terminated and not permanently -reinstated, you do not qualify to receive new licenses for the same -material under section 10. - - 9. Acceptance Not Required for Having Copies. - - You are not required to accept this License in order to receive or -run a copy of the Program. Ancillary propagation of a covered work -occurring solely as a consequence of using peer-to-peer transmission -to receive a copy likewise does not require acceptance. However, -nothing other than this License grants you permission to propagate or -modify any covered work. These actions infringe copyright if you do -not accept this License. Therefore, by modifying or propagating a -covered work, you indicate your acceptance of this License to do so. - - 10. Automatic Licensing of Downstream Recipients. - - Each time you convey a covered work, the recipient automatically -receives a license from the original licensors, to run, modify and -propagate that work, subject to this License. You are not responsible -for enforcing compliance by third parties with this License. - - An "entity transaction" is a transaction transferring control of an -organization, or substantially all assets of one, or subdividing an -organization, or merging organizations. If propagation of a covered -work results from an entity transaction, each party to that -transaction who receives a copy of the work also receives whatever -licenses to the work the party's predecessor in interest had or could -give under the previous paragraph, plus a right to possession of the -Corresponding Source of the work from the predecessor in interest, if -the predecessor has it or can get it with reasonable efforts. - - You may not impose any further restrictions on the exercise of the -rights granted or affirmed under this License. For example, you may -not impose a license fee, royalty, or other charge for exercise of -rights granted under this License, and you may not initiate litigation -(including a cross-claim or counterclaim in a lawsuit) alleging that -any patent claim is infringed by making, using, selling, offering for -sale, or importing the Program or any portion of it. - - 11. Patents. - - A "contributor" is a copyright holder who authorizes use under this -License of the Program or a work on which the Program is based. The -work thus licensed is called the contributor's "contributor version". - - A contributor's "essential patent claims" are all patent claims -owned or controlled by the contributor, whether already acquired or -hereafter acquired, that would be infringed by some manner, permitted -by this License, of making, using, or selling its contributor version, -but do not include claims that would be infringed only as a -consequence of further modification of the contributor version. For -purposes of this definition, "control" includes the right to grant -patent sublicenses in a manner consistent with the requirements of -this License. - - Each contributor grants you a non-exclusive, worldwide, royalty-free -patent license under the contributor's essential patent claims, to -make, use, sell, offer for sale, import and otherwise run, modify and -propagate the contents of its contributor version. - - In the following three paragraphs, a "patent license" is any express -agreement or commitment, however denominated, not to enforce a patent -(such as an express permission to practice a patent or covenant not to -sue for patent infringement). To "grant" such a patent license to a -party means to make such an agreement or commitment not to enforce a -patent against the party. - - If you convey a covered work, knowingly relying on a patent license, -and the Corresponding Source of the work is not available for anyone -to copy, free of charge and under the terms of this License, through a -publicly available network server or other readily accessible means, -then you must either (1) cause the Corresponding Source to be so -available, or (2) arrange to deprive yourself of the benefit of the -patent license for this particular work, or (3) arrange, in a manner -consistent with the requirements of this License, to extend the patent -license to downstream recipients. "Knowingly relying" means you have -actual knowledge that, but for the patent license, your conveying the -covered work in a country, or your recipient's use of the covered work -in a country, would infringe one or more identifiable patents in that -country that you have reason to believe are valid. - - If, pursuant to or in connection with a single transaction or -arrangement, you convey, or propagate by procuring conveyance of, a -covered work, and grant a patent license to some of the parties -receiving the covered work authorizing them to use, propagate, modify -or convey a specific copy of the covered work, then the patent license -you grant is automatically extended to all recipients of the covered -work and works based on it. - - A patent license is "discriminatory" if it does not include within -the scope of its coverage, prohibits the exercise of, or is -conditioned on the non-exercise of one or more of the rights that are -specifically granted under this License. You may not convey a covered -work if you are a party to an arrangement with a third party that is -in the business of distributing software, under which you make payment -to the third party based on the extent of your activity of conveying -the work, and under which the third party grants, to any of the -parties who would receive the covered work from you, a discriminatory -patent license (a) in connection with copies of the covered work -conveyed by you (or copies made from those copies), or (b) primarily -for and in connection with specific products or compilations that -contain the covered work, unless you entered into that arrangement, -or that patent license was granted, prior to 28 March 2007. - - Nothing in this License shall be construed as excluding or limiting -any implied license or other defenses to infringement that may -otherwise be available to you under applicable patent law. - - 12. No Surrender of Others' Freedom. - - If conditions are imposed on you (whether by court order, agreement or -otherwise) that contradict the conditions of this License, they do not -excuse you from the conditions of this License. If you cannot convey a -covered work so as to satisfy simultaneously your obligations under this -License and any other pertinent obligations, then as a consequence you may -not convey it at all. For example, if you agree to terms that obligate you -to collect a royalty for further conveying from those to whom you convey -the Program, the only way you could satisfy both those terms and this -License would be to refrain entirely from conveying the Program. - - 13. Use with the GNU Affero General Public License. - - Notwithstanding any other provision of this License, you have -permission to link or combine any covered work with a work licensed -under version 3 of the GNU Affero General Public License into a single -combined work, and to convey the resulting work. The terms of this -License will continue to apply to the part which is the covered work, -but the special requirements of the GNU Affero General Public License, -section 13, concerning interaction through a network will apply to the -combination as such. - - 14. Revised Versions of this License. - - The Free Software Foundation may publish revised and/or new versions of -the GNU General Public License from time to time. Such new versions will -be similar in spirit to the present version, but may differ in detail to -address new problems or concerns. - - Each version is given a distinguishing version number. If the -Program specifies that a certain numbered version of the GNU General -Public License "or any later version" applies to it, you have the -option of following the terms and conditions either of that numbered -version or of any later version published by the Free Software -Foundation. If the Program does not specify a version number of the -GNU General Public License, you may choose any version ever published -by the Free Software Foundation. - - If the Program specifies that a proxy can decide which future -versions of the GNU General Public License can be used, that proxy's -public statement of acceptance of a version permanently authorizes you -to choose that version for the Program. - - Later license versions may give you additional or different -permissions. However, no additional obligations are imposed on any -author or copyright holder as a result of your choosing to follow a -later version. - - 15. Disclaimer of Warranty. - - THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY -APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT -HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY -OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, -THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR -PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM -IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF -ALL NECESSARY SERVICING, REPAIR OR CORRECTION. - - 16. Limitation of Liability. - - IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING -WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS -THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY -GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE -USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF -DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD -PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), -EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF -SUCH DAMAGES. - - 17. Interpretation of Sections 15 and 16. - - If the disclaimer of warranty and limitation of liability provided -above cannot be given local legal effect according to their terms, -reviewing courts shall apply local law that most closely approximates -an absolute waiver of all civil liability in connection with the -Program, unless a warranty or assumption of liability accompanies a -copy of the Program in return for a fee. - - END OF TERMS AND CONDITIONS - - How to Apply These Terms to Your New Programs - - If you develop a new program, and you want it to be of the greatest -possible use to the public, the best way to achieve this is to make it -free software which everyone can redistribute and change under these terms. - - To do so, attach the following notices to the program. It is safest -to attach them to the start of each source file to most effectively -state the exclusion of warranty; and each file should have at least -the "copyright" line and a pointer to where the full notice is found. - - - Copyright (C) - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . - -Also add information on how to contact you by electronic and paper mail. - - If the program does terminal interaction, make it output a short -notice like this when it starts in an interactive mode: - - Copyright (C) - This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'. - This is free software, and you are welcome to redistribute it - under certain conditions; type `show c' for details. - -The hypothetical commands `show w' and `show c' should show the appropriate -parts of the General Public License. Of course, your program's commands -might be different; for a GUI interface, you would use an "about box". - - You should also get your employer (if you work as a programmer) or school, -if any, to sign a "copyright disclaimer" for the program, if necessary. -For more information on this, and how to apply and follow the GNU GPL, see -. - - The GNU General Public License does not permit incorporating your program -into proprietary programs. If your program is a subroutine library, you -may consider it more useful to permit linking proprietary applications with -the library. If this is what you want to do, use the GNU Lesser General -Public License instead of this License. But first, please read -. diff --git a/thirdparty/grub-2.04/ChangeLog b/thirdparty/grub-2.04/ChangeLog deleted file mode 100644 index ba904781f..000000000 --- a/thirdparty/grub-2.04/ChangeLog +++ /dev/null @@ -1,7820 +0,0 @@ -2019-07-04 Daniel Kiper - - Release 2.04 - -2019-06-24 Thomas Schmitt - - docs: Document workaround for grub-mkrescue with older MacBooks - Add a description of the workaround for firmware of older MacBooks - which stalls with a grub-mkrescue ISO image for x86_64-efi target - on an USB stick. - - Reviewed-by: Daniel Kiper - -2019-06-24 Eric Snowberg - - docs: Bootstrap changes required for older distros - Some older distros do not contain gettext 0.18. Document the workaround - to use the bootstrap utility on these systems. - - Reviewed-by: Daniel Kiper - -2019-06-07 Leif Lindholm - - ia64: build fix in cache.h - Add IA64 to the architectures excluding a declaration for - grub_arch_sync_dma_caches(). - - IA64 does not include any of the source files that require the function, - but was overlooked for d8901e3ba115 ("cache: Fix compilation for ppc, - sparc and arm64"). - - Add it to the list of excluding architectures in order to not get - missing symbol errors when running grub-mkimage. - - Reported-by: Alexander Graf - Tested-by: John Paul Adrian Glaubitz - Reviewed-by: Daniel Kiper - -2019-06-07 Vladimir 'phcoder' Serbinenko - - hostfs: #undef open and close. - Unlike in case of disks in this case it's just a single place, so it's easier - to just #undef - - Reviewed-by: Daniel Kiper - -2019-06-03 John Paul Adrian Glaubitz - - f2fs: Disable gcc9 -Waddress-of-packed-member - Disable the -Wadress-of-packaed-member diagnostic for the grub_f2fs_label - function since the result is found to be false postive. - - A pointer to the 'volume_name' member of 'struct grub_f2fs_superblock' is - guaranteed to be aligned as the offset of 'volume_name' within the struct - is dividable by the natural alignment on both 32- and 64-bit targets. - - grub-core/fs/f2fs.c: In function ‘grub_f2fs_label’: - grub-core/fs/f2fs.c:1253:60: error: taking address of packed member of ‘struct grub_f2fs_superblock’ may result in an unaligned pointer value [-Werror=address-of-packed-member] - 1253 | *label = (char *) grub_f2fs_utf16_to_utf8 (data->sblock.volume_name); - | ~~~~~~~~~~~~^~~~~~~~~~~~ - cc1: all warnings being treated as errors - - Reported-by: Neil MacLeod - Tested-by: Neil MacLeod - Reviewed-by: Daniel Kiper - -2019-05-20 Vincent Legoll - - grub-mkrescue: Fix error message about the wrong command having failed: mformat instead of mcopy - Reviewed-by: Daniel Kiper - -2019-05-20 Mathieu Trudel-Lapierre - - video: skip 'text' gfxpayload if not supported, to fallback to default - On UEFI, 'text' gfxpayload is not supported, but we still reach parse_modespec() - with it, which will obviously fail. Fortunately, whatever gfxpayload is set, - we still still have the 'auto' default to fall back to. Allow getting to this - fallback by not trying to parse 'text' as a modespec. - - This is because 'text' correctly doesn't parse as a modespec, and ought to have - been ignored before we got to that point, just like it is immediately picked if - we're running on a system where 'text' is a supported video mode. - - Bug: https://savannah.gnu.org/bugs/index.php?56217 - - Reviewed-by: Daniel Kiper - -2019-05-20 Ovidiu Panait - - grub-mkconfig: Use -c instead of --printf for stat - "--printf" only works with the stat variant provided by coreutils. - - With busybox, stat will fail with the following error: - stat: unrecognized option '--printf=%T' - - Usage: stat [OPTIONS] FILE... - - Reviewed-by: Daniel Kiper - -2019-05-20 Michael Chang - - f2fs: Fix gcc9 error -Werror=maybe-uninitialized - The function grub_get_node_path() could return uninitialized offset with - level == 0 if the block is greater than direct_index + 2 * direct_blks + - 2 * indirect_blks + dindirect_blks. The uninitialized offset is then used - by function grub_f2fs_get_block() because level == 0 is valid and - meaningful return to be processed. - - The fix is to set level = -1 as return value by grub_get_node_path() to - signify an error that the input block cannot be handled. Any caller - should therefore check level is negative or not before processing the - output. - - Reported-by: Neil MacLeod - Tested-by: Neil MacLeod - Reviewed-by: Daniel Kiper - -2019-05-06 Alexander Graf - - arm: Align section alignment with manual relocation offset code - The arm relocation code has a manual special case for EFI binaries to - add the natural alignment to its own relocation awareness. - - Since commit a51f953f4ee87 ("mkimage: Align efi sections on 4k - boundary") we changed that alignment from 0x400 to 0x1000 bytes. Reflect - the change in that branch that we forgot as well. - - This fixes running 32bit arm grub efi binaries for me again. - - Fixes: a51f953f4ee87 ("mkimage: Align efi sections on 4k boundary") - Reported-by: Heinrich Schuchardt - Reported-by: Steve McIntyre - Reviewed-by: Daniel Kiper - Tested-by: Julien ROBIN - Reviewed-by: Leif Lindholm - Tested-by: Leif Lindholm - Reviewed-by: Daniel Kiper - -2019-05-06 Alexander Graf - - arm: Move trampolines into code section - When creating T32->A32 transition jumps, the relocation code in grub - will generate trampolines. These trampolines live in the .data section - of our PE binary which means they are not marked as executable. - - This misbehavior was unmasked by commit a51f953f4ee87 ("mkimage: Align - efi sections on 4k boundary") which made the X/NX boundary more obvious - because everything became page aligned. - - To put things into proper order, let's move the arm trampolines into the - .text section instead. That way everyone knows they are executable. - - Fixes: a51f953f4ee87 ("mkimage: Align efi sections on 4k boundary") - Reported-by: Julien ROBIN - Reported-by: Leif Lindholm - Tested-by: Julien ROBIN - Reviewed-by: Leif Lindholm - Tested-by: Leif Lindholm - Reviewed-by: Daniel Kiper - -2019-04-23 Michael Chang - - efi: Fix gcc9 error -Waddress-of-packed-member - The address of fp->path_name could be unaligned since seeking into the - device path buffer for a given node could end in byte boundary. - - The fix is allocating aligned buffer by grub_malloc for holding the - UTF16 string copied from fp->path_name, and after using that buffer as - argument for grub_utf16_to_utf8 to convert it to UTF8 string. - - [ 255s] ../../grub-core/kern/efi/efi.c: In function 'grub_efi_get_filename': - [ 255s] ../../grub-core/kern/efi/efi.c:410:60: error: taking address of packed member of 'struct grub_efi_file_path_device_path' may result in an unaligned pointer value [-Werror=address-of-packed-member] - [ 255s] 410 | p = (char *) grub_utf16_to_utf8 ((unsigned char *) p, fp->path_name, len); - [ 255s] | ~~^~~~~~~~~~~ - [ 255s] ../../grub-core/kern/efi/efi.c: In function 'grub_efi_print_device_path': - [ 255s] ../../grub-core/kern/efi/efi.c:900:33: error: taking address of packed member of 'struct grub_efi_file_path_device_path' may result in an unaligned pointer value [-Werror=address-of-packed-member] - [ 255s] 900 | *grub_utf16_to_utf8 (buf, fp->path_name, - [ 255s] | ~~^~~~~~~~~~~ - - Reviewed-by: Daniel Kiper - -2019-04-23 Michael Chang - - chainloader: Fix gcc9 error -Waddress-of-packed-member - The address of fp->path_name could be unaligned since seeking into the - device path buffer for a given node could end in byte boundary. - - The fix is using aligned buffer allocated by grub_malloc for receiving - the converted UTF16 string by grub_utf8_to_utf16 and also the processing - after. The resulting string then gets copied to fp->path_name. - - [ 243s] ../../grub-core/loader/efi/chainloader.c: In function 'copy_file_path': - [ 243s] ../../grub-core/loader/efi/chainloader.c:136:32: error: taking address of packed member of 'struct grub_efi_file_path_device_path' may result in an unaligned pointer value [-Werror=address-of-packed-member] - [ 243s] 136 | size = grub_utf8_to_utf16 (fp->path_name, len * GRUB_MAX_UTF16_PER_UTF8, - [ 243s] | ~~^~~~~~~~~~~ - [ 243s] ../../grub-core/loader/efi/chainloader.c:138:12: error: taking address of packed member of 'struct grub_efi_file_path_device_path' may result in an unaligned pointer value [-Werror=address-of-packed-member] - [ 243s] 138 | for (p = fp->path_name; p < fp->path_name + size; p++) - [ 243s] | ^~ - - Reviewed-by: Daniel Kiper - -2019-04-23 Michael Chang - - usbtest: Disable gcc9 -Waddress-of-packed-member - Disable the -Wadress-of-packaed-member diagnostic for the - grub_usb_get_string function since the result is false postive. The - descstrp->str is found to be aligned in the buffer allocated for 'struct - grub_usb_desc_str'. - - [ 229s] ../../grub-core/commands/usbtest.c: In function 'grub_usb_get_string': - [ 229s] ../../grub-core/commands/usbtest.c:104:58: error: taking address of packed member of 'struct grub_usb_desc_str' may result in an unaligned pointer value [-Werror=address-of-packed-member] - [ 229s] 104 | *grub_utf16_to_utf8 ((grub_uint8_t *) *string, descstrp->str, - [ 229s] | ~~~~~~~~^~~~~ - - Reviewed-by: Daniel Kiper - -2019-04-23 Michael Chang - - acpi: Fix gcc9 error -Waddress-of-packed-member - Simply adds the missing packed attribute to 'struct grub_acpi_madt'. - - [ 233s] ../../grub-core/commands/lsacpi.c: In function 'disp_acpi_xsdt_table': - [ 233s] ../../grub-core/commands/lsacpi.c:201:27: error: converting a packed 'struct grub_acpi_table_header' pointer (alignment 1) to a 'struct grub_acpi_madt' pointer (alignment 4) may result in an unaligned pointer value [-Werror=address-of-packed-member] - [ 233s] 201 | disp_madt_table ((struct grub_acpi_madt *) t); - [ 233s] | ^~~~~~~~~~~~~~ - [ 233s] In file included from ../../grub-core/commands/lsacpi.c:23: - [ 233s] ../../include/grub/acpi.h:50:8: note: defined here - [ 233s] 50 | struct grub_acpi_table_header - [ 233s] | ^~~~~~~~~~~~~~~~~~~~~~ - [ 233s] ../../include/grub/acpi.h:90:8: note: defined here - [ 233s] 90 | struct grub_acpi_madt - [ 233s] | ^~~~~~~~~~~~~~ - [ 233s] ../../grub-core/commands/lsacpi.c: In function 'disp_acpi_rsdt_table': - [ 233s] ../../grub-core/commands/lsacpi.c:225:27: error: converting a packed 'struct grub_acpi_table_header' pointer (alignment 1) to a 'struct grub_acpi_madt' pointer (alignment 4) may result in an unaligned pointer value [-Werror=address-of-packed-member] - [ 233s] 225 | disp_madt_table ((struct grub_acpi_madt *) t); - [ 233s] | ^~~~~~~~~~~~~~ - [ 233s] In file included from ../../grub-core/commands/lsacpi.c:23: - [ 233s] ../../include/grub/acpi.h:50:8: note: defined here - [ 233s] 50 | struct grub_acpi_table_header - [ 233s] | ^~~~~~~~~~~~~~~~~~~~~~ - [ 233s] ../../include/grub/acpi.h:90:8: note: defined here - [ 233s] 90 | struct grub_acpi_madt - [ 233s] | ^~~~~~~~~~~~~~ - - Reviewed-by: Daniel Kiper - -2019-04-23 Michael Chang - - hfsplus: Fix gcc9 error with -Waddress-of-packed-member - The catkey->name could be unaligned since the address of 'void* record' - is calculated as offset in bytes to a malloc buffer. - - The fix is using aligned buffer allocated by grub_malloc for holding - the UTF16 string copied from catkey->name. And use that buffer as - argument for grub_utf16_to_utf8 to convert to UTF8 strings. - - In addition, using a new copy of buffer rather than catkey->name itself - for processing the endianess conversion, we can also get rid of the hunk - restoring byte order of catkey->name to what it was previously. - - [ 59s] ../grub-core/fs/hfsplus.c: In function 'list_nodes': - [ 59s] ../grub-core/fs/hfsplus.c:738:57: error: taking address of packed member of 'struct grub_hfsplus_catkey' may result in an unaligned pointer value [-Werror=address-of-packed-member] - [ 59s] 738 | *grub_utf16_to_utf8 ((grub_uint8_t *) filename, catkey->name, - [ 59s] | ~~~~~~^~~~~~ - [ 59s] ../grub-core/fs/hfsplus.c: In function 'grub_hfsplus_label': - [ 59s] ../grub-core/fs/hfsplus.c:1019:57: error: taking address of packed member of 'struct grub_hfsplus_catkey' may result in an unaligned pointer value [-Werror=address-of-packed-member] - [ 59s] 1019 | *grub_utf16_to_utf8 ((grub_uint8_t *) (*label), catkey->name, - [ 59s] | ~~~~~~^~~~~~ - - Reviewed-by: Daniel Kiper - -2019-04-23 Michael Chang - - hfs: Fix gcc9 error -Waddress-of-packed-member - Simply adds the missing packed attribute to 'struct grub_hfs_extent'. - - [ 83s] ../grub-core/fs/hfs.c: In function 'grub_hfs_iterate_records': - [ 83s] ../grub-core/fs/hfs.c:699:9: error: taking address of packed member of 'struct grub_hfs_sblock' may result in an unaligned pointer value [-Werror=address-of-packed-member] - [ 83s] 699 | ? (&data->sblock.catalog_recs) - [ 83s] | ~^~~~~~~~~~~~~~~~~~~~~~~~~~~ - [ 83s] ../grub-core/fs/hfs.c:700:9: error: taking address of packed member of 'struct grub_hfs_sblock' may result in an unaligned pointer value [-Werror=address-of-packed-member] - [ 83s] 700 | : (&data->sblock.extent_recs)); - [ 83s] | ~^~~~~~~~~~~~~~~~~~~~~~~~~~ - - Reviewed-by: Daniel Kiper - -2019-04-23 Michael Chang - - jfs: Disable gcc9 -Waddress-of-packed-member - Disable the -Wadress-of-packaed-member diagnostic for the - grub_jfs_getent function since the result is found to be false postive. - - The leaf is read into memory as continous chunks in size of 32 bytes and - the pointer to its base is aligned, which also guarentee its member - leaf->namepart is aligned. - - [ 60s] ../grub-core/fs/jfs.c: In function 'grub_jfs_getent': - [ 60s] ../grub-core/fs/jfs.c:557:44: error: taking address of packed member of 'struct grub_jfs_leaf_dirent' may result in an unaligned pointer value [-Werror=address-of-packed-member] - [ 60s] 557 | le_to_cpu16_copy (filename + strpos, leaf->namepart, len < diro->data->namecomponentlen ? len - [ 60s] | ~~~~^~~~~~~~~~ - [ 60s] ../grub-core/fs/jfs.c:570:48: error: taking address of packed member of 'struct grub_jfs_leaf_next_dirent' may result in an unaligned pointer value [-Werror=address-of-packed-member] - [ 60s] 570 | le_to_cpu16_copy (filename + strpos, next_leaf->namepart, len < 15 ? len : 15); - [ 60s] | ~~~~~~~~~^~~~~~~~~~ - [ 60s] cc1: all warnings being treated as errors - - Reviewed-by: Daniel Kiper - -2019-04-23 Michael Chang - - cpio: Disable gcc9 -Waddress-of-packed-member - Disable the -Wadress-of-packaed-member diagnostic for the - grub_cpio_find_file function since the result is found to be false - postive. Any pointers to member of the 'struct head hd' is aligned even - if the structure is packed without paddings. - - [ 59s] In file included from ../grub-core/fs/cpio.c:51: - [ 59s] ../grub-core/fs/cpio_common.c: In function 'grub_cpio_find_file': - [ 59s] ../grub-core/fs/cpio_common.c:58:31: error: taking address of packed member of 'struct head' may result in an unaligned pointer value [-Werror=address-of-packed-member] - [ 59s] 58 | data->size = read_number (hd.filesize, ARRAY_SIZE (hd.filesize)); - [ 59s] | ~~^~~~~~~~~ - [ 59s] ../grub-core/fs/cpio_common.c:60:29: error: taking address of packed member of 'struct head' may result in an unaligned pointer value [-Werror=address-of-packed-member] - [ 59s] 60 | *mtime = read_number (hd.mtime, ARRAY_SIZE (hd.mtime)); - [ 59s] | ~~^~~~~~ - [ 59s] ../grub-core/fs/cpio_common.c:61:28: error: taking address of packed member of 'struct head' may result in an unaligned pointer value [-Werror=address-of-packed-member] - [ 59s] 61 | modeval = read_number (hd.mode, ARRAY_SIZE (hd.mode)); - [ 59s] | ~~^~~~~ - [ 59s] ../grub-core/fs/cpio_common.c:62:29: error: taking address of packed member of 'struct head' may result in an unaligned pointer value [-Werror=address-of-packed-member] - [ 59s] 62 | namesize = read_number (hd.namesize, ARRAY_SIZE (hd.namesize)); - [ 59s] | ~~^~~~~~~~~ - [ 59s] In file included from ../grub-core/fs/cpio_be.c:51: - [ 59s] ../grub-core/fs/cpio_common.c: In function 'grub_cpio_find_file': - [ 59s] ../grub-core/fs/cpio_common.c:58:31: error: taking address of packed member of 'struct head' may result in an unaligned pointer value [-Werror=address-of-packed-member] - [ 59s] 58 | data->size = read_number (hd.filesize, ARRAY_SIZE (hd.filesize)); - [ 59s] | ~~^~~~~~~~~ - [ 59s] ../grub-core/fs/cpio_common.c:60:29: error: taking address of packed member of 'struct head' may result in an unaligned pointer value [-Werror=address-of-packed-member] - [ 59s] 60 | *mtime = read_number (hd.mtime, ARRAY_SIZE (hd.mtime)); - [ 59s] | ~~^~~~~~ - [ 59s] ../grub-core/fs/cpio_common.c:61:28: error: taking address of packed member of 'struct head' may result in an unaligned pointer value [-Werror=address-of-packed-member] - [ 59s] 61 | modeval = read_number (hd.mode, ARRAY_SIZE (hd.mode)); - [ 59s] | ~~^~~~~ - [ 59s] ../grub-core/fs/cpio_common.c:62:29: error: taking address of packed member of 'struct head' may result in an unaligned pointer value [-Werror=address-of-packed-member] - [ 59s] 62 | namesize = read_number (hd.namesize, ARRAY_SIZE (hd.namesize)); - [ 59s] | ~~^~~~~~~~~ - - Reviewed-by: Daniel Kiper - -2019-04-23 Heinrich Schuchardt - - efi: Avoid NULL dereference if FilePath is NULL - The UEFI specification allows LoadImage() to be called with a memory - location only and without a device path. In this case FilePath will not be - set in the EFI_LOADED_IMAGE_PROTOCOL. - - So in function grub_efi_get_filename() the device path argument may be - NULL. As we cannot determine the device path in this case just return NULL - from the function. - - Reviewed-by: Leif Lindholm - Reviewed-by: Daniel Kiper - -2019-04-23 Daniel Kiper - - x86/msr: Fix build with older GCC versions - Some older GCC versions produce following error when x86 MSR modules are build: - - In file included from commands/i386/rdmsr.c:29:0: - ../include/grub/i386/rdmsr.h:27:29: error: no previous prototype for ‘grub_msr_read’ [-Werror=missing-prototypes] - extern inline grub_uint64_t grub_msr_read (grub_uint32_t msr_id) - ^ - cc1: all warnings being treated as errors - - This happens due to lack of support for a such usage of extern keyword - in older GCCs. Additionally, this usage is not consistent with the rest - of codebase. So, replace it with static keyword. - - Additionally, fix incorrect coding style. - - Reported-by: Eric Snowberg - Reported-by: adrian15 - Reviewed-by: Vladimir 'phcoder' Serbinenko - Reviewed-by: Eric Snowberg - Tested-by: adrian15 - -2019-04-09 Vladimir Serbinenko - - Release 2.04~rc1 - -2019-04-09 Vladimir Serbinenko - - Change fs functions to add fs_ prefix - This avoid conflict with gnulib - - Reviewed-by: Daniel Kiper - -2019-04-08 Vladimir Serbinenko - - A workaround for clang problem assembling startup_raw.S - Reviewed-by: Daniel Kiper - -2019-04-04 Eric Snowberg - - ieee1275: NULL pointer dereference in grub_ieee1275_encode_devname() - Function grub_strndup() may return NULL, this is called from - function grub_ieee1275_get_devname() which is then called from - function grub_ieee1275_encode_devname() to set device. The device - variable could then be used with a NULL pointer. - - Reviewed-by: Colin Watson - Reviewed-by: Daniel Kiper - -2019-04-02 Daniel Kiper - - docs/grub-dev: Change comments rules - Current comments forms are annoying, so, some of them are disallowed - starting from now. New rules are more flexible and mostly aligned - with, e.g., Linux kernel comments rules. - - Reviewed-by: Vladimir Serbinenko - -2019-04-02 Andrew Jeddeloh - - loader/i386/linux: Calculate the setup_header length - Previously the setup_header length was just assumed to be the size of the - linux_kernel_params struct. The linux x86 32-bit boot protocol says that the - end of the linux_i386_kernel_header is at 0x202 + the byte value at 0x201 in - the linux_i386_kernel_header. So, calculate the size of the header using the - end of the linux_i386_kernel_header, rather than assume it is the size of the - linux_kernel_params struct. - - Additionally, add some required members to the linux_kernel_params - struct and align the content of linux_i386_kernel_header struct with - it. New members naming was taken directly from Linux kernel source. - - linux_kernel_params and linux_i386_kernel_header structs require more - cleanup. However, this is not urgent, so, let's do this after release. - Just in case... - - Reviewed-by: Vladimir Serbinenko - Reviewed-by: Ross Philipson - -2019-04-02 Eric Snowberg - - efidisk: NULL pointer dereference in grub_efidisk_get_device_name() - Function grub_efi_find_last_device_path() may return NULL when called - from grub_efidisk_get_device_name(). - - Reviewed-by: Daniel Kiper - -2019-04-02 Eric Snowberg - - efidisk: NULL pointer dereference in is_child() - Function grub_efi_find_last_device() path may return NULL when called - from is_child(). - - Reviewed-by: Daniel Kiper - -2019-04-02 Eric Snowberg - - efidisk: Write to NULL pointer ldp - Function grub_efi_find_last_device_path() may return constant NULL when - called from find_parent_device(). - - Reviewed-by: Daniel Kiper - -2019-04-02 Vladimir Serbinenko - - clang: Pair -Qn with -Qunused-arguments. - When assembling module wirh clang -Qn ends up on command line but later ignored - To avoid it breaking the compile, add -Qunused-arguments. - - Reviewed-by: Daniel Kiper - -2019-03-28 John Paul Adrian Glaubitz - - ieee1275: Fix path reference in comment of sparc64 boot loader code - Reviewed-by: Daniel Kiper - -2019-03-28 John Paul Adrian Glaubitz - - ieee1275: Include a.out header in assembly of sparc64 boot loader - Recent versions of binutils dropped support for the a.out and COFF - formats on sparc64 targets. Since the boot loader on sparc64 is - supposed to be an a.out binary and the a.out header entries are - rather simple to calculate in our case, we just write the header - ourselves instead of relying on external tools to do that. - - Reviewed-by: Daniel Kiper - -2019-03-26 Vladimir Serbinenko - - Propagate GNU_PRINTF from gnulib vfprintf - gnulib now replaces vfprintf and hence its format becomes GNU_PRINTF format - - This also fixes matching definitions to always use GNU format - - Reviewed-by: Daniel Kiper - -2019-03-26 Vladimir Serbinenko - - efi/tpm.c: Add missing casts - Without those casts we get a warning about implicit conversion of pointer - to integer. - -2019-03-26 Vladimir Serbinenko - - POTFILES: Don't include gnulib in grub.pot - They're translated as a separate project, so we - don't want to submit them again. - - Reviewed-by: Daniel Kiper - -2019-03-26 Vladimir Serbinenko - - configure.ac: Use nostdlib when checking for nostdinc - With clang nostdinc behaviour is influenced by nostdlib. Since we - always add nostdlib, add it in test as well - - Reviewed-by: Daniel Kiper - -2019-03-25 Vladimir Serbinenko - - efi/tpm.h: Fix hash_log_extend_event definition. - I didn't check the spec but pointer to address doesn't make much sense - and doesn't match the code. - - Rename grub_disk members - Otherwise it horribly clashes with gnulib when it's - replacing open/write/read/close - - grub-mkimagexx: Fix RISCV error message - Outputting a raw pointer doesn't match the format and is - also useless. Output offset instead. - - kern/emu/misc.c: Don't include config-util.h when running as GRUB_BUILD - - Support R_PPC_PLTREL24 - It's emitted by clang 7. It's the same as R_PPC_REL24. - -2019-03-20 Daniel Kiper - - sparc: Enable __clzsi2() and __clzdi2() - This patch is similiar to commit e795b9011 (RISC-V: Add libgcc helpers - for clz) but for SPARC target. - - Reviewed-by: Ross Philipson - -2019-03-20 Daniel Kiper - - mips: Enable __clzsi2() - This patch is similiar to commit e795b9011 (RISC-V: Add libgcc helpers - for clz) but for MIPS target. - - Reviewed-by: Ross Philipson - -2019-03-20 Daniel Kiper - - verifiers: MIPS fallout cleanup - MIPS fallout cleanup after commit 4d4a8c96e (verifiers: Add possibility - to verify kernel and modules command lines). - - Reviewed-by: Ross Philipson - -2019-03-20 Daniel Kiper - - verifiers: PowerPC fallout cleanup - PowerPC fallout cleanup after commit 4d4a8c96e (verifiers: Add possibility - to verify kernel and modules command lines) and ca0a4f689 (verifiers: File - type for fine-grained signature-verification controlling). - - Reviewed-by: Ross Philipson - -2019-03-20 Daniel Kiper - - verifiers: IA-64 fallout cleanup - IA-64 fallout cleanup after commit 4d4a8c96e (verifiers: Add possibility - to verify kernel and modules command lines). - - Reviewed-by: Ross Philipson - -2019-03-20 Colin Watson - - posix_wrap: Flesh out posix_wrap/limits.h a little more - In addition to what was already there, Gnulib's needs SCHAR_MIN, - SCHAR_MAX, SHRT_MIN, INT_MIN, LONG_MIN, and LONG_MAX. Fixes build on CentOS 7. - - Reported-by: "Chen, Farrah" - Reviewed-by: Daniel Kiper - -2019-03-19 Marek Marczykowski-Górecki - - xen: Look for Xen notes in section headers too - Mirror behaviour of ELF loader in libxc: first look for Xen notes in - PT_NOTE segment, then in SHT_NOTE section and only then fallback to - a section with __xen_guest name. This fixes loading PV kernels that - Xen note have outside of PT_NOTE. While this may be result of a buggy - linker script, loading such kernel directly works fine, so make it work - with GRUB too. Specifically, this applies to binaries built from Unikraft. - - Reviewed-by: Daniel Kiper - -2019-03-19 Colin Watson - - getroot: Save/restore CWD more reliably on Unix - Various GRUB utilities fail if the current directory doesn't exist, - because grub_find_device() chdirs to a different directory and then - fails when trying to chdir back. Gnulib's save-cwd module uses fchdir() - instead when it can, avoiding this category of problem. - - Fixes Debian bug #918700. - - Reviewed-by: Daniel Kiper - -2019-03-12 Andrei Borzenkov - - net/dhcp: Add explicit net_dhcp command - Mostly for cosmetic reasons, we add a "net_dhcp" command, which is (at the - moment) identical to the existing "net_bootp" command. Both actually trigger - a DHCP handshake now, and both should be able to deal with pure BOOTP servers. - We could think about dropping the DHCP options from the initial DISCOVER packet - when the user issues the net_bootp command, but it's unclear whether this is - really useful, as both protocols should be able to coexist. - - Reviewed-by: Daniel Kiper - -2019-03-12 Andrei Borzenkov - - net/dhcp: Actually send out DHCPv4 DISCOVER and REQUEST messages - Even though we were parsing some DHCP options sent by the server, so far - we are only using the BOOTP 2-way handshake, even when talking to a DHCP - server. - - Change this by actually sending out DHCP DISCOVER packets instead of the - generic (mostly empty) BOOTP BOOTREQUEST packets. - - A pure BOOTP server would ignore the extra DHCP options in the DISCOVER - packet and would just reply with a BOOTREPLY packet, which we also - handle in the code. - - Reviewed-by: Daniel Kiper - -2019-03-12 Andrei Borzenkov - - net/dhcp: Allow receiving DHCP OFFER and ACK packets - In respone to a BOOTREQUEST packet a BOOTP server would answer with a BOOTREPLY - packet, which ends the conversation for good. DHCP uses a 4-way handshake, - where the initial server respone is an OFFER, which has to be answered with - REQUEST by the client again, only to be completed by an ACKNOWLEDGE packet - from the server. - - Teach the grub_net_process_dhcp() function to deal with OFFER packets, - and treat ACK packets the same es BOOTREPLY packets. - - Reviewed-by: Daniel Kiper - -2019-03-12 Andrei Borzenkov - - net/dhcp: Use DHCP options for name and bootfile - The BOOTP RFC describes the boot file name and the server name as being part - of the integral BOOTP data structure, with some limits on the size of them. - DHCP extends this by allowing them to be separate DHCP options, which is more - flexible. - - Teach the code dealing with those fields to check for those DHCP options first - and use this information, if provided. We fall back to using the BOOTP - information if those options are not used. - - Reviewed-by: Daniel Kiper - -2019-03-12 Andrei Borzenkov - - net/dhcp: Introduce per-interface timeout - Currently we have a global timeout for all network cards in the BOOTP/DHCP - discovery process. - - Make this timeout a per-interface one, so better accommodate the upcoming - 4-way DHCP handshake and to also cover the lease time limit a DHCP offer - will come with. - - Reviewed-by: Daniel Kiper - -2019-03-12 Andrei Borzenkov - - net/dhcp: Make grub_net_process_dhcp() take an interface - Change the interface of the function dealing with incoming BOOTP packets - to take an interface instead of a card, to allow more fine per-interface - state (timeout, handshake state) later on. - - Use the opportunity to clean up the code a bit. - - Reviewed-by: Daniel Kiper - -2019-03-12 Andrei Borzenkov - - net/dhcp: Refactor DHCP packet transmission into separate function - In contrast to BOOTP, DHCP uses a 4-way handshake, so requires to send - packets more often. - - Refactor the generation and sending of the BOOTREQUEST packet into - a separate function, so that future code can more easily reuse this. - - Reviewed-by: Daniel Kiper - -2019-03-12 Andrei Borzenkov - - net/dhcp: Allow overloading legacy bootfile and name field - DHCP specifies a special dummy option OVERLOAD, to allow DHCP options to - spill over into the (legacy) BOOTFILE and SNAME fields. - - Parse and handle this option properly. - - Reviewed-by: Daniel Kiper - -2019-03-12 Andrei Borzenkov - - net/dhcp: Replace parse_dhcp_vendor() with find_dhcp_option() - For proper DHCP support we will need to parse DHCP options from a packet - more often and at various places. - - Refactor the option parsing into a new function, which will scan a packet to - find *a particular* option field. Use that new function in places where we - were dealing with DHCP options before. - - Reviewed-by: Daniel Kiper - -2019-03-12 Andrei Borzenkov - - net/dhcp: Remove dead code - The comment is right, the "giaddr" fields holds the IP address of the BOOTP - relay, not a general purpose router address. Just remove the commented code, - archeologists can find it in the git history. - - Reviewed-by: Daniel Kiper - -2019-03-12 Jesús Diéguez Fernández - - msr: Add new MSR modules (rdmsr/wrmsr) - In order to be able to read from and write to model-specific registers, - two new modules are added. They are i386 specific, as the cpuid module. - - rdmsr module registers the command rdmsr that allows reading from a MSR. - wrmsr module registers the command wrmsr that allows writing to a MSR. - - wrmsr module is disabled if UEFI secure boot is enabled. - - Please note that on SMP systems, interacting with a MSR that has a scope - per hardware thread, implies that the value only applies to the - particular cpu/core/thread that ran the command. - - Also, if you specify a reserved or unimplemented MSR address, it will - cause a general protection exception (which is not currently being - handled) and the system will reboot. - - Reviewed-by: Daniel Kiper - -2019-03-12 Jesús Diéguez Fernández - - asm: Replace "__asm__ __volatile__" with "asm volatile" - In order to maintain the coding style consistency, it was requested to - replace the methods that use "__asm__ __volatile__" with "asm volatile". - - Reviewed-by: Daniel Kiper - -2019-03-12 Eric Snowberg - - sparc64: Add bios boot partition support - Add BIOS Boot Partition support for sparc64 platforms. This will work a - little different than x86. With GPT, both the OBP "load" and "boot" commands - are partition aware and neither command can see the partition table. Therefore - the entire boot-loader is stored within the BIOS Boot Partition and nothing - is stored within the bootstrap code area of MBR. - - To use it, the end user will issue the boot command with the path pointing to - the BIOS Boot Partition. - - For example with the disk below: - - Model: Unknown (unknown) - Disk /dev/nvme1n1: 1600GB - Sector size (logical/physical): 512B/512B - Partition Table: gpt - - Number Start End Size File system Name Flags - 1 1049kB 1075MB 1074MB ext3 - 2 1075MB 1076MB 1049kB bios_grub - 3 1076MB 1600GB 1599GB lvm - - To boot grub2 from OBP, you would use: - - boot /pci@302/pci@1/pci@0/pci@13/nvme@0/disk@1:b - - Reviewed-by: Daniel Kiper - -2019-03-12 Eric Snowberg - - ieee1275: obdisk driver - Add a new disk driver called obdisk for IEEE1275 platforms. Currently - the only platform using this disk driver is SPARC, however other IEEE1275 - platforms could start using it if they so choose. While the functionality - within the current IEEE1275 ofdisk driver may be suitable for PPC and x86, it - presented too many problems on SPARC hardware. - - Within the old ofdisk, there is not a way to determine the true canonical - name for the disk. Within Open Boot, the same disk can have multiple names - but all reference the same disk. For example the same disk can be referenced - by its SAS WWN, using this form: - - /pci@302/pci@2/pci@0/pci@17/LSI,sas@0/disk@w5000cca02f037d6d,0 - - It can also be referenced by its PHY identifier using this form: - - /pci@302/pci@2/pci@0/pci@17/LSI,sas@0/disk@p0 - - It can also be referenced by its Target identifier using this form: - - /pci@302/pci@2/pci@0/pci@17/LSI,sas@0/disk@0 - - Also, when the LUN=0, it is legal to omit the ,0 from the device name. So with - the disk above, before taking into account the device aliases, there are 6 ways - to reference the same disk. - - Then it is possible to have 0 .. n device aliases all representing the same disk. - Within this new driver the true canonical name is determined using the the - IEEE1275 encode-unit and decode-unit commands when address_cells == 4. This - will determine the true single canonical name for the device so multiple ihandles - are not opened for the same device. This is what frequently happens with the old - ofdisk driver. With some devices when they are opened multiple times it causes - the entire system to hang. - - Another problem solved with this driver is devices that do not have a device - alias can be booted and used within GRUB. Within the old ofdisk, this was not - possible, unless it was the original boot device. All devices behind a SAS - or SCSI parent can be found. Within the old ofdisk, finding these disks - relied on there being an alias defined. The alias requirement is not - necessary with this new driver. It can also find devices behind a parent - after they have been hot-plugged. This is something that is not possible - with the old ofdisk driver. - - The old ofdisk driver also incorrectly assumes that the device pointing to by a - device alias is in its true canonical form. This assumption is never made with - this new driver. - - Another issue solved with this driver is that it properly caches the ihandle - for all open devices. The old ofdisk tries to do this by caching the last - opened ihandle. However this does not work properly because the layer above - does not use a consistent device name for the same disk when calling into the - driver. This is because the upper layer uses the bootpath value returned within - /chosen, other times it uses the device alias, and other times it uses the - value within grub.cfg. It does not have a way to figure out that these devices - are the same disk. This is not a problem with this new driver. - - Due to the way GRUB repeatedly opens and closes the same disk. Caching the - ihandle is important on SPARC. Without caching, some SAS devices can take - 15 - 20 minutes to get to the GRUB menu. This ihandle caching is not possible - without correctly having the canonical disk name. - - When available, this driver also tries to use the deblocker #blocks and - a way of determining the disk size. - - Finally and probably most importantly, this new driver is also capable of - seeing all partitions on a GPT disk. With the old driver, the GPT - partition table can not be read and only the first partition on the disk - can be seen. - - Reviewed-by: Daniel Kiper - -2019-03-12 Paul Menzel - - Makefile: Allow to set file systems modules for default_payload.elf - By default all file system modules are added to the GRUB coreboot - payload `default_payload.elf`. This makes the image quite big, - especially as often not all modules are needed. - - Introduce the variable `FS_PAYLOAD_MODULES`, which can be used to - explicitly set file systems modules to be added. - - $ make default_payload.elf - test -f default_payload.elf && rm default_payload.elf || true - pkgdatadir=. ./grub-mkstandalone --grub-mkimage=./grub-mkimage -O i386-coreboot -o default_payload.elf --modules='ahci pata ehci uhci ohci usb_keyboard usbms part_msdos ext2 fat at_keyboard part_gpt usbserial_usbdebug cbfs' --install-modules='ls linux search configfile normal cbtime cbls memrw iorw minicmd lsmmap lspci halt reboot hexdump pcidump regexp setpci lsacpi chain test serial multiboot cbmemc linux16 gzio echo help syslinuxcfg xnu affs afs bfs btrfs cbfs cpio cpio_be exfat ext2 f2fs fat hfs hfsplus iso9660 jfs minix minix2 minix2_be minix3 minix3_be minix_be newc nilfs2 ntfs odc procfs reiserfs romfs sfs squash4 tar udf ufs1 ufs1_be ufs2 xfs zfs password_pbkdf2 ' --fonts= --themes= --locales= -d grub-core/ /boot/grub/grub.cfg=./coreboot.cfg - $ ls -l default_payload.elf - -rw-rw---- 1 joey joey 1199568 Mar 6 13:58 default_payload.elf - - $ make default_payload.elf FS_PAYLOAD_MODULES="" # ext2 already in `--modules` - test -f default_payload.elf && rm default_payload.elf || true - pkgdatadir=. ./grub-mkstandalone --grub-mkimage=./grub-mkimage -O i386-coreboot -o default_payload.elf --modules='ahci pata ehci uhci ohci usb_keyboard usbms part_msdos ext2 fat at_keyboard part_gpt usbserial_usbdebug cbfs' --install-modules='ls linux search configfile normal cbtime cbls memrw iorw minicmd lsmmap lspci halt reboot hexdump pcidump regexp setpci lsacpi chain test serial multiboot cbmemc linux16 gzio echo help syslinuxcfg xnu password_pbkdf2 ' --fonts= --themes= --locales= -d grub-core/ /boot/grub/grub.cfg=./coreboot.cfg - $ ls -l default_payload.elf - -rw-rw---- 1 joey joey 832976 Mar 7 12:13 default_payload.elf - - So, the resulting payload size is around 370 kB smaller. (Adding it to - the CBFS, it will be compressed, so the effective size difference will - be smaller.) - - Reviewed-by: Daniel Kiper - -2019-03-07 Vladimir Serbinenko - - windows/platform.c: Fix compilation errors - -2019-03-05 Colin Watson - - gnulib: Upgrade Gnulib and switch to bootstrap tool - Upgrade Gnulib files to 20190105. - - It's much easier to maintain GRUB's use of portability support files - from Gnulib when the process is automatic and driven by a single - configuration file, rather than by maintainers occasionally running - gnulib-tool and committing the result. Removing these - automatically-copied files from revision control also removes the - temptation to hack the output in ways that are difficult for future - maintainers to follow. Gnulib includes a "bootstrap" program which is - designed for this. - - The canonical way to bootstrap GRUB from revision control is now - "./bootstrap", but "./autogen.sh" is still useful if you just want to - generate the GRUB-specific parts of the build system. - - GRUB now requires Autoconf >= 2.63 and Automake >= 1.11, in line with - Gnulib. - - Gnulib source code is now placed in grub-core/lib/gnulib/ (which should - not be edited directly), and GRUB's patches are in - grub-core/lib/gnulib-patches/. I've added a few notes to the developer - manual on how to maintain this. - - Reviewed-by: Daniel Kiper - -2019-03-05 Colin Watson - - syslinux: Fix syslinux_test in out-of-tree builds - syslinux_parse simplifies some filenames by removing things like ".." - segments, but the tests assumed that @abs_top_srcdir@ would be - untouched, which is not true in the case of out-of-tree builds where - @abs_top_srcdir@ may contain ".." segments. - - Performing the substitution requires some awkwardness in Makefile.am due - to details of how config.status works. - - Reviewed-by: Daniel Kiper - -2019-03-05 Colin Watson - - util: Detect more I/O errors - Many of GRUB's utilities don't check anywhere near all the possible - write errors. For example, if grub-install runs out of space when - copying a file, it won't notice. There were missing checks for the - return values of write, fflush, fsync, and close (or the equivalents on - other OSes), all of which must be checked. - - I tried to be consistent with the existing logging practices of the - various hostdisk implementations, but they weren't entirely consistent - to start with so I used my judgement. The result at least looks - reasonable on GNU/Linux when I provoke a write error: - - Installing for x86_64-efi platform. - grub-install: error: cannot copy `/usr/lib/grub/x86_64-efi-signed/grubx64.efi.signed' to `/boot/efi/EFI/debian/grubx64.efi': No space left on device. - - There are more missing checks in other utilities, but this should fix - the most critical ones. - - Fixes Debian bug #922741. - - Reviewed-by: Steve McIntyre <93sam@debian.org> - Reviewed-by: Daniel Kiper - -2019-03-05 James Clarke - - osdep/freebsd: Fix partition calculation for EBR entries - For EBR partitions, "start" is the relative starting sector of the EBR - header itself, whereas "offset" is the relative starting byte of the - partition's contents, excluding the EBR header and any padding. Thus we - must use "offset", and divide by the sector size to convert to sectors. - - Fixes Debian bug #923253. - - Reviewed-by: Colin Watson - Reviewed-by: Daniel Kiper - -2019-02-26 Steve McIntyre <93sam@debian.org> - - grub-install: Check for arm-efi as a default target - Much like on x86, we can work out if the system is running on top of EFI - firmware. If so, return "arm-efi". If not, fall back to "arm-uboot" as - previously. - - Split out the code to (maybe) load the efivar module and check for - /sys/firmware/efi into a common helper routine is_efi_system(). - - Reviewed-by: Leif Lindholm - Reviewed-by: Daniel Kiper - -2019-02-26 Daniel Kiper - - Revert "grub-install: Check for arm-efi as a default target" - This reverts commit 082fd84d525f8d6602f892160b77c0a948308a78. - - Incorrect version of the patch was pushed into the git repo. - - Reported-by: Leif Lindholm - -2019-02-25 Alexander Graf - - travis: Add Travis CI config file - There is a really convenient service for open source project from Travis - CI: They allow for free CI testing using their infrastructure. - - GRUB has had issues with broken builds for various targets for a long time - already. The main reason is a lack of CI to just do smoke tests on whether - all targets still at least compile. - - This patch adds a Travis config file which builds (almost) all currently - available targets. - - On top of that, this Travis config also runs a small execution test on the - x86_64-efi target. - - All of this config file can easily be extended further on. It probably - makes sense to do something similar to the u-boot test infrastructure - that communicates with the payload properly. Going forward, we also will - want to do more QEMU runtime checks for other targets. - - Currently, with this config alone, I already see about half of the available - targets as broken. So it's definitely desperately needed :). - - Reviewed-by: Daniel Kiper - -2019-02-25 Steve McIntyre <93sam@debian.org> - - grub-install: Check for arm-efi as a default target - Much like on x86, we can work out if the system is running on top - of EFI firmware. If so, return "arm-efi". If not, fall back to - "arm-uboot" as previously. - - Heavily inspired by the existing code for x86. - - Reviewed-by: Leif Lindholm - Reviewed-by: Daniel Kiper - -2019-02-25 Leif Lindholm - - arm64/efi: Fix grub_efi_get_ram_base() - grub_efi_get_ram_base() looks for the lowest available RAM address by - traversing the memory map, comparing lowest address found so far. - Due to a brain glitch, that "so far" was initialized to GRUB_UINT_MAX - - completely preventing boot on systems without RAM below 4GB. - - Change the initial value to GRUB_EFI_MAX_USABLE_ADDRESS, as originally - intended. - - Reported-by: Steve McIntyre <93sam@debian.org> - Tested-by: Steve McIntyre <93sam@debian.org> - Reviewed-by: Daniel Kiper - -2019-02-25 Paul Menzel - - normal/menu: Do not treat error values as key presses - Some terminals, like `grub-core/term/at_keyboard.c`, return `-1` in case - they are not ready yet. - - if (! KEYBOARD_ISREADY (grub_inb (KEYBOARD_REG_STATUS))) - return -1; - - Currently, that is treated as a key press, and the menu time-out is - cancelled/cleared. This is unwanted, as the boot is stopped and the user - manually has to select a menu entry. Therefore, adapt the condition to - require the key value also to be greater than 0. - - `GRUB_TERM_NO_KEY` is defined as 0, so the condition could be collapsed - to greater or equal than (≥) 0, but the compiler will probably do that - for us anyway, so keep the cases separate for clarity. - - This is tested with coreboot, the GRUB default payload, and the - configuration file `grub.cfg` below. - - For GRUB: - - $ ./autogen.sh - $ ./configure --with-platform=coreboot - $ make -j`nproc` - $ make default_payload.elf - - For coreboot: - - $ more grub.cfg - serial --unit 0 --speed 115200 - set timeout=5 - - menuentry 'halt' { - halt - } - $ build/cbfstool build/coreboot.rom add-payload \ - -f /dev/shm/grub/default_payload.elf -n fallback/payload -c lzma - $ build/cbfstool build/coreboot.rom add -f grub.cfg -n etc/grub.cfg -t raw - $ qemu-system-x86_64 --version - QEMU emulator version 3.1.0 (Debian 1:3.1+dfsg-2+b1) - Copyright (c) 2003-2018 Fabrice Bellard and the QEMU Project developers - $ qemu-system-x86_64 -M pc -bios build/coreboot.rom -serial stdio -nic none - - Currently, the time-out is cancelled/cleared. With the commit, it is not. - With a small GRUB payload, this the problem is also reproducible on the - ASRock E350M1. - - Link: http://lists.gnu.org/archive/html/grub-devel/2019-01/msg00037.html - - Reviewed-by: Daniel Kiper - -2019-02-25 Alexander Graf - - fdt: Treat device tree file type like ACPI - We now have signature check logic in grub which allows us to treat - files differently depending on their file type. - - Treat a loaded device tree like an overlayed ACPI table. - Both describe hardware, so I suppose their threat level is the same. - - Reviewed-by: Daniel Kiper - Reviewed-by: Alistair Francis - -2019-02-25 Alexander Graf - - RISC-V: Add to build system - This patch adds support for RISC-V to the grub build system. With this - patch, I can successfully build grub on RISC-V as a UEFI application. - - Reviewed-by: Alistair Francis - Reviewed-by: Bin Meng - Tested-by: Bin Meng - Reviewed-by: Daniel Kiper - -2019-02-25 Alexander Graf - - RISC-V: Add libgcc helpers for clz - Gcc may decide it wants to call helper functions to execute clz. Provide - them in our own copy of libgcc. - - Reviewed-by: Daniel Kiper - -2019-02-25 Alexander Graf - - RISC-V: Add auxiliary files - To support a new architecture we need to provide a few helper functions - for memory, cache, timer, etc support. - - This patch adds the remainders of those. Some bits are still disabled, - as I couldn't guarantee that we're always running on models / in modes - where the respective hardware is available. - - Reviewed-by: Alistair Francis - Reviewed-by: Daniel Kiper - -2019-02-25 Alexander Graf - - RISC-V: Add awareness for RISC-V reloations - This patch adds awareness of RISC-V relocations throughout the grub tools - as well as dynamic linkage and elf->PE relocation conversion support. - - Reviewed-by: Alistair Francis - Reviewed-by: Daniel Kiper - -2019-02-25 Alexander Graf - - RISC-V: Add Linux load logic - We currently only support to run grub on RISC-V as UEFI payload. Ideally, - we also only want to support running Linux underneath as UEFI payload. - - Prepare that with some Linux boot stub code. Once the arm64 target is - generalized, we can hook into that one and gain boot functionality. - - Reviewed-by: Alistair Francis - Reviewed-by: Daniel Kiper - -2019-02-25 Alexander Graf - - RISC-V: Add early startup code - On entry, we need to save the system table pointer as well as our image - handle. Add an early startup file that saves them and then brings us - into our main function. - - Reviewed-by: Alistair Francis - Reviewed-by: Bin Meng - Tested-by: Bin Meng - Reviewed-by: Daniel Kiper - -2019-02-25 Alexander Graf - - RISC-V: Add setjmp implementation - This patch adds a 32/64 capable setjmp implementation for RISC-V. - - Reviewed-by: Alistair Francis - Reviewed-by: Bin Meng - Tested-by: Bin Meng - Reviewed-by: Daniel Kiper - -2019-02-25 Alexander Graf - - elf.h: Add RISC-V definitions - The RISC-V ABI document outlines ELF header structure and relocation - information. Pull the respective magic numbers into our elf header - so we can make use of them. - - Reviewed-by: Alistair Francis - Reviewed-by: Bin Meng - Tested-by: Bin Meng - Reviewed-by: Daniel Kiper - -2019-02-25 Alexander Graf - - PE: Add RISC-V definitions - The PE format defines magic numbers as well as relocation identifiers for - RISC-V. Add them to our include file, so we can make use of them. - - Reviewed-by: Leif Lindholm - Reviewed-by: Alistair Francis - Reviewed-by: Bin Meng - Tested-by: Bin Meng - Reviewed-by: Daniel Kiper - -2019-02-25 Alexander Graf - - efi: Rename armxx to arch - Some architectures want to boot Linux as plain UEFI binary. Today that - really only encompasses ARM and AArch64, but going forward more - architectures may adopt that model. - - So rename our internal API accordingly. - - Acked-by: Leif Lindholm - Reviewed-by: Alistair Francis - Reviewed-by: Bin Meng - Tested-by: Bin Meng - Reviewed-by: Daniel Kiper - -2019-02-06 Alexander Graf - - mkimage: Clarify file alignment in efi case - There are a few spots in the PE generation code for EFI binaries that uses - the section alignment rather than file alignment, even though the alignment - is really only file bound. - - Replace those cases with the file alignment constant instead. - - Reported-by: Daniel Kiper - Reviewed-by: Daniel Kiper - Tested-by: Julien ROBIN - -2019-02-06 Alexander Graf - - mkimage: Align efi sections on 4k boundary - There is UEFI firmware popping up in the wild now that implements stricter - permission checks using NX and write protect page table entry bits. - - This means that firmware now may fail to load binaries if its individual - sections are not page aligned, as otherwise it can not ensure permission - boundaries. - - So let's bump all efi section alignments up to 4k (EFI page size). That way - we will stay compatible going forward. - - Unfortunately our internals can't deal very well with a mismatch of alignment - between the virtual and file offsets, so we have to also pad our target - binary a bit. - - Reviewed-by: Daniel Kiper - Tested-by: Julien ROBIN - -2019-02-06 Alexander Graf - - mkimage: Use EFI32_HEADER_SIZE define in arm-efi case - The efi-arm case was defining its own header size calculation, even though it's - 100% identical to the common EFI32_HEADER_SIZE definition. - - So let's clean it up to use the common define. - - Reviewed-by: Daniel Kiper - Tested-by: Julien ROBIN - -2019-02-06 Guillaume GARDET - - arm: Move initrd upper to leave more space for kernel - This patch allows to have bigger kernels. If the kernel grows, then it will - overwrite the initrd when it is extracted. - - Acked-by: Alexander Graf - Reviewed-by: Daniel Kiper - -2019-01-23 Leif Lindholm - - linux, efi, arm*, fdt: Break FDT extra allocation space out into a #define - A certain amount of dynamic space is required for the handover from - GRUB/Linux-EFI-stub. This entails things like initrd addresses, - address-cells entries and associated strings. - - But move this into a proper centralised #define rather than live-code - it in the loader. - - Reviewed-by: Daniel Kiper - -2019-01-22 Cristian Ciocaltea - - uboot: Add the missing disk write operation support - uboot_disk_write() is currently lacking the write support - to storage devices because, historically, those devices did not - implement block_write() in U-Boot. - - The solution has been tested using a patched U-Boot loading - and booting GRUB in a QEMU vexpress-a9 environment. - The disk write operations were triggered with GRUB's save_env - command. - - Reviewed-by: Daniel Kiper - -2019-01-21 Max Tottenham - - tpm: Fix bug in GRUB2 TPM module - The value of tpm_handle changes between successive calls to grub_tpm_handle_find(), - as instead of simply copying the stored pointer we end up taking the address of - said pointer when using the cached value of grub_tpm_handle. - - This causes grub_efi_open_protocol() to return a nullptr in grub_tpm2_execute() - and grub_tpm2_log_event(). Said nullptr goes unchecked and - efi_call_5(tpm->hash_log_extend_event,...) ends up jumping to 0x0, Qemu crashes - once video ROM is reached at 0xb0000. - - This patch seems to do the trick of fixing that bug, but we should also ensure - that all calls to grub_efi_open_protocol() are checked so that we don't start - executing low memory. - - Reviewed-by: Matthew Garrett - Reviewed-by: Daniel Kiper - -2019-01-14 Colin Watson - - pgp: Fix emu build and tests after pgp module renaming - Commit b07feb8746c3bb845e3f0d33d37c0bded704d14d (verifiers: Rename - verify module to pgp module) renamed the "verify" module to "pgp", but - the GRUB_MOD_INIT and GRUB_MOD_FINI macros were left as "verify", which - broke the emu target build; and file_filter_test still referred to the - now non-existent "verify" module. Fix both of these. - - Reviewed-by: Daniel Kiper - -2019-01-14 Peter Große - - grub-mkconfig/20_linux_xen: Support multiple early initrd images - Add support for multiple, shared, early initrd images. These early - images will be loaded in the order declared, and all will be loaded - before the initrd image. - - While many classes of data can be provided by early images, the - immediate use case would be for distributions to provide CPU - microcode to mitigate the Meltdown and Spectre vulnerabilities. - - Xen has also support to load microcode updates provided as additional - modules by the bootloader. - - There are two environment variables provided for declaring the early - images. - - * GRUB_EARLY_INITRD_LINUX_STOCK is for the distribution declare - images that are provided by the distribution or installed packages. - If undeclared, this will default to a set of common microcode image - names. - - * GRUB_EARLY_INITRD_LINUX_CUSTOM is for user created images. User - images will be loaded after the stock images. - - These separate configurations allow the distribution and user to - declare different image sets without clobbering each other. - - This also makes a minor update to ensure that UUID partition labels - stay disabled when no initrd image is found, even if early images are - present. - - This is basically a copy of a698240d "grub-mkconfig/10_linux: Support - multiple early initrd images" by Matthew S. Turnbull. - - Reviewed-by: Daniel Kiper - -2019-01-14 Heinrich Schuchardt - - grub-core/loader/efi/fdt.c: Do not copy random memory - We should not try to copy any memory area which is outside of the original - fdt. If this extra memory is controlled by a hypervisor this might end - with a crash. - - Reviewed-by: Leif Lindholm - Reviewed-by: Daniel Kiper - -2018-12-12 Matthew Garrett - - verifiers: Add TPM documentation - Describe the behaviour of GRUB when the TPM module is in use. - - Reviewed-by: Daniel Kiper - -2018-12-12 Matthew Garrett - - verifiers: Core TPM support - Add support for performing basic TPM measurements. Right now this only - supports extending PCRs statically and only on UEFI. In future we might - want to have some sort of mechanism for choosing which events get logged - to which PCRs, but this seems like a good default policy and we can wait - to see whether anyone has a use case before adding more complexity. - - Reviewed-by: Daniel Kiper - -2018-12-12 Matthew Garrett - - verifiers: Verify commands executed by grub - Pass all commands executed by GRUB to the verifiers layer. Most verifiers will - ignore this, but some (such as the TPM verifier) want to be able to measure and - log each command executed in order to ensure that the boot state is as expected. - - Reviewed-by: Daniel Kiper - -2018-12-12 Juergen Gross - - xen_pvh: Add support to configure - Support platform i386/xen_pvh in configure. - - Reviewed-by: Daniel Kiper - Tested-by: Hans van Kranenburg - -2018-12-12 Juergen Gross - - xen_pvh: Support grub-install for xen_pvh - Add xen_pvh support to grub-install. - - Reviewed-by: Daniel Kiper - Tested-by: Hans van Kranenburg - -2018-12-12 Juergen Gross - - xen_pvh: Support building a standalone image - Support mkimage for xen_pvh. - - Reviewed-by: Daniel Kiper - Tested-by: Hans van Kranenburg - -2018-12-12 Juergen Gross - - xen: Use elfnote defines instead of plain numbers - In order to avoid using plain integers for the ELF notes use the - available Xen include instead. - - Reviewed-by: Daniel Kiper - Tested-by: Hans van Kranenburg - -2018-12-12 Hans van Kranenburg - - grub-module-verifier: Ignore all_video for xen_pvh - This solves the build failing with "Error: no symbol table and no - .moddeps section" - - Also see: - - 6371e9c10433578bb236a8284ddb9ce9e201eb59 - - https://savannah.gnu.org/bugs/?49012 - - Reviewed-by: Daniel Kiper - Tested-by: Hans van Kranenburg - -2018-12-12 Juergen Gross - - xen_pvh: Add build runes for grub-core - Add the modifications to the build system needed to build a xen_pvh - grub. - - Reviewed-by: Daniel Kiper - Tested-by: Hans van Kranenburg - -2018-12-12 Juergen Gross - - xen: Init memory regions for PVH - Add all usable memory regions to grub memory management and add the - needed mmap iterate code, which will be used by grub core (e.g. - grub-core/lib/relocator.c or grub-core/mmap/mmap.c). - - As we are running in 32-bit mode don't add memory above 4GB. - - Reviewed-by: Daniel Kiper - Tested-by: Hans van Kranenburg - -2018-12-12 Juergen Gross - - xen: Setup Xen specific data for PVH - Initialize the needed Xen specific data. This is: - - - the Xen start of day page containing the console and Xenstore ring - page PFN and event channel - - the grant table - - the shared info page - - Write back the possibly modified memory map to the hypervisor in case - the guest is reading it from there again. - - Set the RSDP address for the guest from the start_info page passed - as boot parameter. - - Reviewed-by: Daniel Kiper - Reviewed-by: Roger Pau Monné - Tested-by: Hans van Kranenburg - -2018-12-12 Juergen Gross - - xen: Get memory map from hypervisor for PVH - Retrieve the memory map from the hypervisor and normalize it to contain - no overlapping entries and to be sorted by address. - - Reviewed-by: Daniel Kiper - Tested-by: Hans van Kranenburg - -2018-12-12 Juergen Gross - - xen: Setup hypercall page for PVH - Add the needed code to setup the hypercall page for calling into the - Xen hypervisor. - - Import the XEN_HVM_DEBUGCONS_IOPORT define from Xen unstable into - include/xen/arch-x86/xen.h - - Reviewed-by: Roger Pau Monné - Reviewed-by: Daniel Kiper - Tested-by: Hans van Kranenburg - -2018-12-12 Juergen Gross - - xen: Add PVH boot entry code - Add the code for the Xen PVH mode boot entry. - - Reviewed-by: Daniel Kiper - Tested-by: Hans van Kranenburg - -2018-12-12 Juergen Gross - - xen: Add basic hooks for PVH in current code - Add the hooks to current code needed for Xen PVH. They will be filled - with code later when the related functionality is being added. - - loader/i386/linux.c needs to include machine/kernel.h now as it needs - to get GRUB_KERNEL_USE_RSDP_ADDR from there. This in turn requires to - add an empty kernel.h header for some i386 platforms (efi, coreboot, - ieee1275, xen) and for x86_64 efi. - - Reviewed-by: Daniel Kiper - Tested-by: Hans van Kranenburg - -2018-12-12 Juergen Gross - - xen: Add PVH specific defines to offset.h - include/grub/offsets.h needs some defines for Xen PVH mode. - - Add them. While at it line up the values in the surrounding lines to - start at the same column. - - Reviewed-by: Daniel Kiper - Tested-by: Hans van Kranenburg - -2018-12-12 Juergen Gross - - xen: Modify grub_xen_ptr2mfn() for Xen PVH - grub_xen_ptr2mfn() returns the machine frame number for a given pointer - value. For Xen-PVH guests this is just the PFN. Add the PVH specific - variant. - - Reviewed-by: Daniel Kiper - Tested-by: Hans van Kranenburg - -2018-12-12 Juergen Gross - - xen: Rearrange xen/init.c to prepare it for Xen PVH mode - Rearrange grub-core/kern/xen/init.c to prepare adding PVH mode support - to it. This includes putting some code under #ifdef GRUB_MACHINE_XEN - as it will not be used when running as PVH. - - Reviewed-by: Daniel Kiper - Tested-by: Hans van Kranenburg - -2018-12-12 Juergen Gross - - xen: Add some dummy headers for PVH mode - With Xen PVH mode adding a new machine type the machine related headers - need to be present for the build to succeed. Most of the headers just - need to include the related common i386 headers. Add those to the tree. - - Note that xen_pvh/int.h needs to include pc/int_types.h instead of - pc/int.h in order to avoid the definition of grub_bios_interrupt(). - - xen_pvh/memory.h needs to include coreboot/memory.h (like some other - /memory.h do as well) as this contains just the needed stubs. - - Reviewed-by: Daniel Kiper - Tested-by: Hans van Kranenburg - -2018-12-12 Juergen Gross - - xen: Prepare common code for Xen PVH support - Some common code needs to be special cased for Xen PVH mode. This hits - mostly Xen PV mode specific areas. - - Split include/grub/i386/pc/int_types.h off from - include/grub/i386/pc/int.h to support including this file later from - xen_pvh code without the grub_bios_interrupt definition. - - Move definition of struct grub_e820_mmap_entry from - grub-core/mmap/i386/pc/mmap.c to include/grub/i386/memory.h in order - to make it usable from xen_pvh code. - - Reviewed-by: Daniel Kiper - Tested-by: Hans van Kranenburg - -2018-12-12 Juergen Gross - - xen: Carve out grant tab initialization into dedicated function - Initialize the grant tab in a dedicated function. This will enable - using it for PVH guests, too. - - Call the new function from grub_machine_init() as this will later - be common between Xen PV and Xen PVH mode. - - Reviewed-by: Daniel Kiper - Tested-by: Hans van Kranenburg - -2018-12-12 Juergen Gross - - loader/linux: Support passing RSDP address via boot params - Xen PVH guests will have the RSDP at an arbitrary address. Support that - by passing the RSDP address via the boot parameters to Linux. - - Reviewed-by: Daniel Kiper - Tested-by: Hans van Kranenburg - -2018-12-12 Juergen Gross - - xen: Add some Xen headers - In order to support grub2 in Xen PVH environment some additional Xen - headers are needed as grub2 will be started in PVH mode requiring to - use several HVM hypercalls and structures. - - Add the needed headers from Xen 4.10 being the first Xen version with - full (not only experimental) PVH guest support. - - Reviewed-by: Daniel Kiper - Tested-by: Hans van Kranenburg - -2018-12-07 Daniel Kiper - - verifiers: ARM Xen fallout cleanup - ARM Xen fallout cleanup after commit ca0a4f689 (verifiers: File type for - fine-grained signature-verification controlling). - - Reviewed-by: Ross Philipson - -2018-12-07 Daniel Kiper - - verifiers: Xen fallout cleanup - Xen fallout cleanup after commit ca0a4f689 (verifiers: File type for - fine-grained signature-verification controlling). - - Reviewed-by: Ross Philipson - -2018-11-28 Eric Snowberg - - ofnet: Fix build regression in grub_ieee1275_parse_bootpath() - The grub_ieee1275_parse_bootpath() function (commit a661a32, ofnet: Initialize - structs in bootpath parser) introduces a build regression on SPARC: - - cc1: warnings being treated as errors - net/drivers/ieee1275/ofnet.c: In function 'grub_ieee1275_parse_bootpath': - net/drivers/ieee1275/ofnet.c:156: error: missing initializer - net/drivers/ieee1275/ofnet.c:156: error: (near initialization for 'client_addr.type') - net/drivers/ieee1275/ofnet.c:156: error: missing initializer - net/drivers/ieee1275/ofnet.c:156: error: (near initialization for 'gateway_addr.type') - net/drivers/ieee1275/ofnet.c:156: error: missing initializer - net/drivers/ieee1275/ofnet.c:156: error: (near initialization for 'subnet_mask.type') - net/drivers/ieee1275/ofnet.c:157: error: missing initializer - net/drivers/ieee1275/ofnet.c:157: error: (near initialization for 'hw_addr.type') - make[3]: *** [net/drivers/ieee1275/ofnet_module-ofnet.o] Error 1 - - Initialize the entire structure. - - More info can be found here: - http://lists.gnu.org/archive/html/grub-devel/2018-03/msg00034.html - - Reviewed-by: Daniel Kiper - -2018-11-26 Nick Terrell - - btrfs: Add zstd support to grub btrfs - - Adds zstd support to the btrfs module. - - Adds a test case for btrfs zstd support. - - Changes top_srcdir to srcdir in the btrfs module's lzo include - following comments from Daniel Kiper about the zstd include. - - Tested on Ubuntu-18.04 with a btrfs /boot partition with and without zstd - compression. A test case was also added to the test suite that fails before - the patch, and passes after. - - Reviewed-by: Daniel Kiper - -2018-11-26 Nick Terrell - - zstd: Import upstream zstd-1.3.6 - - Import zstd-1.3.6 from upstream - - Add zstd's module.c file - - Add the zstd module to Makefile.core.def - - Import zstd-1.3.6 from upstream [1]. Only the files need for decompression - are imported. I used the latest zstd release, which includes patches [2] to - build cleanly in GRUB. - - I included the script used to import zstd-1.3.6 below at the bottom of the - commit message. - - Upstream zstd commit hash: 4fa456d7f12f8b27bd3b2f5dfd4f46898cb31c24 - Upstream zstd commit name: Merge pull request #1354 from facebook/dev - - Zstd requires some posix headers, which it gets from posix_wrap. - This can be checked by inspecting the .Po files generated by automake, - which contain the header dependencies. After building run the command - `cat grub-core/lib/zstd/.deps-core/*.Po` to see the dependencies [3]. - The only OS dependencies are: - - - stddef.h, which is already a dependency in posix_wrap, and used for size_t - by lzo and xz. - - stdarg.h, which comes from the grub/misc.h header, and we don't use in zstd. - - All the types like uint64_t are typedefed to grub_uint64_t under the hood. - The only exception is size_t, which comes from stddef.h. This is already the - case for lzo and xz. I don't think there are any cross-compilation concerns, - because cross-compilers provide their own system headers (and it would already - be broken). - - [1] https://github.com/facebook/zstd/releases/tag/v1.3.6 - [2] https://github.com/facebook/zstd/pull/1344 - [3] https://gist.github.com/terrelln/7a16b92f5a1b3aecf980f944b4a966c4 - - ``` - - curl -L -O https://github.com/facebook/zstd/releases/download/v1.3.6/zstd-1.3.6.tar.gz - curl -L -O https://github.com/facebook/zstd/releases/download/v1.3.6/zstd-1.3.6.tar.gz.sha256 - sha256sum --check zstd-1.3.6.tar.gz.sha256 - tar xzf zstd-1.3.6.tar.gz - - SRC_LIB="zstd-1.3.6/lib" - DST_LIB="grub-core/lib/zstd" - rm -rf $DST_LIB - mkdir -p $DST_LIB - cp $SRC_LIB/zstd.h $DST_LIB/ - cp $SRC_LIB/common/*.[hc] $DST_LIB/ - cp $SRC_LIB/decompress/*.[hc] $DST_LIB/ - rm $DST_LIB/{pool.[hc],threading.[hc]} - rm -rf zstd-1.3.6* - echo SUCCESS! - ``` - - Reviewed-by: Daniel Kiper - -2018-11-21 Michael Chang - - verifiers: fix double close on pgp's sig file descriptor - An error emerged as when I was testing the verifiers branch, so instead - of putting it in pgp prefix, the verifiers is used to reflect what the - patch is based on. - - While running verify_detached, grub aborts with error. - - verify_detached /@/.snapshots/1/snapshot/boot/grub/grub.cfg - /@/.snapshots/1/snapshot/boot/grub/grub.cfg.sig - - alloc magic is broken at 0x7beea660: 0 - Aborted. Press any key to exit. - - The error is caused by sig file descriptor been closed twice, first time - in grub_verify_signature() to which it is passed as parameter. Second in - grub_cmd_verify_signature() or in whichever opens the sig file - descriptor. The second close is not consider as bug to me either, as in - common rule of what opens a file has to close it to avoid file - descriptor leakage. - - After all the design of grub_verify_signature() makes it difficult to keep - a good trace on opened file descriptor from it's caller. Let's refine - the application interface to accept file path rather than descriptor, in - this way the caller doesn't have to care about closing the descriptor by - delegating it to grub_verify_signature() with full tracing to opened - file descriptor by itself. - - Also making it clear that sig descriptor is not referenced in error - returning path of grub_verify_signature_init(), so it can be closed - directly by it's caller. This also makes delegating it to - grub_pubkey_close() infeasible to help in relieving file descriptor - leakage as it has to depend on uncertainty of ctxt fields in error - returning path. - - Reviewed-by: Daniel Kiper - -2018-11-21 Lee Jones - - generic/blocklist: Fix implicit declaration of function grub_file_filter_disable_compression() - grub_file_filter_disable_compression() no longer exists. - - Reviewed-by: Daniel Kiper - -2018-11-21 Lee Jones - - arm64/xen: Fix too few arguments to function grub_create_loader_cmdline() - Without this fix, building xen_boot.c omits: - - loader/arm64/xen_boot.c: In function ‘xen_boot_binary_load’: - loader/arm64/xen_boot.c:370:7: error: too few arguments to function ‘grub_create_loader_cmdline’ - grub_create_loader_cmdline (argc - 1, argv + 1, binary->cmdline, - ^~~~~~~~~~~~~~~~~~~~~~~~~~ - In file included from loader/arm64/xen_boot.c:36:0: - ../include/grub/lib/cmdline.h:29:12: note: declared here - grub_err_t grub_create_loader_cmdline (int argc, char *argv[], char *buf, - - Reviewed-by: Julien Grall - Reviewed-by: Daniel Kiper - -2018-11-16 Leif Lindholm - - arm-uboot, ia64, sparc64: Fix up grub_file_open() calls - The verifiers framework changed the grub_file_open() interface, breaking all - non-x86 linux loaders. Add file types to the grub_file_open() calls to make - them build again. - - Reviewed-by: Daniel Kiper - -2018-11-16 Leif Lindholm - - arm64/efi: Fix breakage caused by verifiers - - add variable "err" (used but not defined), - - add GRUB_FILE_TYPE_LINUX_KERNEL to grub_file_open() call. - - Reviewed-by: Daniel Kiper - -2018-11-16 Leif Lindholm - - grub-core/loader/efi/fdt.c: Fixup grub_file_open() call - The verifiers framework changed the API of grub_file_open(), but did not - fix up all users. Add the file type GRUB_FILE_TYPE_DEVICE_TREE_IMAGE - to the "devicetree" command handler call. - - Reviewed-by: Daniel Kiper - -2018-11-16 Leif Lindholm - - include/grub/file.h: Add device tree file type - The API change of grub_file_open() for adding verifiers did not include - a type for device tree blobs. Add GRUB_FILE_TYPE_DEVICE_TREE_IMAGE to - the grub_file_type enum. - - Reviewed-by: Daniel Kiper - -2018-11-16 Leif Lindholm - - include/grub/verify.h: Add include guard - verify.h was added without include guards. This means compiling anything - including both include/grub/verify.h and include/grub/lib/cmdline.h fails - (at least grub-core/loader/arm64/linux.c. - - Add the necessary include guard. - - Reviewed-by: Daniel Kiper - -2018-11-16 Matthew Daley - - mkimage: Pad DTBs to target-specific pointer size - Device tree (DTB) lengths are being padded to a multiple of 4 bytes - rather than the target-specific pointer size. This causes objects - following OBJ_TYPE_DTB objects to be incorrectly parsed during GRUB - execution on arm64. - - Fix by using ALIGN_ADDR(), not ALIGN_UP(). - - Signed-by-off: Matthew Daley - Reviewed-by: Daniel Kiper - -2018-11-09 Colin Watson - - Cope with / being on a ZFS root dataset - If / is on the root dataset in a ZFS pool, then ${bootfs} will be set to - "/" (whereas if it is on a non-root dataset, there will be no trailing - slash). Passing "root=ZFS=${rpool}/" will fail to boot, but - "root=ZFS=${rpool}" works fine, so strip the trailing slash. - - Fixes: https://savannah.gnu.org/bugs/?52746 - - Tested-by: Fejes József - Reviewed-by: Daniel Kiper - -2018-11-09 Paul Menzel - - unix/platform: Initialize variable to fix grub-install on UEFI system - On a UEFI system, were no boot entry *grub* is present, currently, - `grub-install` fails with an error. - - $ efibootmgr - BootCurrent: 0000 - Timeout: 0 seconds - BootOrder: 0001,0006,0003,0004,0005 - Boot0001 Diskette Drive - Boot0003* USB Storage Device - Boot0004* CD/DVD/CD-RW Drive - Boot0005 Onboard NIC - Boot0006* WDC WD2500AAKX-75U6AA0 - $ sudo grub-install /dev/sda - Installing for x86_64-efi platform. - grub-install: error: efibootmgr failed to register the boot entry: Unknown error 22020. - - The error code is always different, and the error message (incorrectly) - points to efibootmgr. - - But, the error is in GRUB’s function - `grub_install_remove_efi_entries_by_distributor()`, where the variable - `rc` for the return value, is uninitialized and never set, when no boot - entry for the distributor is found. - - The content of that uninitialized variable is then returned as the error - code of efibootmgr. - - Set the variable to 0, so that success is returned, when no entry needs - to be deleted. - - Tested on Dell OptiPlex 7010 with firmware A28. - - $ sudo ./grub-install /dev/sda - Installing for x86_64-efi platform. - Installation finished. No error reported. - - [1]: https://github.com/rhboot/efibootmgr/issues/100 - - Reviewed-by: Daniel Kiper - -2018-11-09 Daniel Kiper - - efi: Add EFI shim lock verifier - This module provides shim lock verification for various kernels - if UEFI secure boot is enabled on a machine. - - It is recommended to put this module into GRUB2 standalone image - (avoid putting iorw and memrw modules into it; they are disallowed - if UEFI secure boot is enabled). However, it is also possible to use - it as a normal module. Though such configurations are more fragile - and less secure due to various limitations. - - If the module is loaded and UEFI secure boot is enabled then: - - module itself cannot be unloaded (persistent module), - - the iorw and memrw modules cannot be loaded, - - if the iorw and memrw modules are loaded then - machine boot is disabled, - - GRUB2 defers modules and ACPI tables verification to - other verifiers. - - Reviewed-by: Ross Philipson - -2018-11-09 Daniel Kiper - - dl: Add support for persistent modules - This type of modules cannot be unloaded. This is useful if a given - functionality, e.g. UEFI secure boot shim signature verification, should - not be disabled if it was enabled at some point in time. Somebody may - say that we can use standalone GRUB2 here. That is true. However, the - code is not so big nor complicated hence it make sense to support - modularized configs too. - - Reviewed-by: Ross Philipson - -2018-11-09 Vladimir Serbinenko - - verifiers: Add the documentation - Reviewed-by: Ross Philipson - -2018-11-09 Daniel Kiper - - verifiers: Rename verify module to pgp module - Just for clarity. No functional change. - - Reviewed-by: Ross Philipson - -2018-11-09 Daniel Kiper - - verifiers: Add possibility to defer verification to other verifiers - This way if a verifier requires verification of a given file it can defer task - to another verifier (another authority) if it is not able to do it itself. E.g. - shim_lock verifier, posted as a subsequent patch, is able to verify only PE - files. This means that it is not able to verify any of GRUB2 modules which have - to be trusted on UEFI systems with secure boot enabled. So, it can defer - verification to other verifier, e.g. PGP one. - - I silently assume that other verifiers are trusted and will do good job for us. - Or at least they will not do any harm. - - Reviewed-by: Ross Philipson - -2018-11-09 Vladimir Serbinenko - - verifiers: Add possibility to verify kernel and modules command lines - Reviewed-by: Ross Philipson - -2018-11-09 Vladimir Serbinenko - - verifiers: Framework core - Verifiers framework provides core file verification functionality which - can be used by various security mechanisms, e.g., UEFI secure boot, TPM, - PGP signature verification, etc. - - The patch contains PGP code changes and probably they should be extracted - to separate patch for the sake of clarity. - - Reviewed-by: Ross Philipson - -2018-11-09 Vladimir Serbinenko - - verifiers: File type for fine-grained signature-verification controlling - Let's provide file type info to the I/O layer. This way verifiers - framework and its users will be able to differentiate files and verify - only required ones. - - This is preparatory patch. - - Reviewed-by: Ross Philipson - -2018-11-09 Daniel Kiper - - bufio: Use grub_size_t instead of plain int for size - Reviewed-by: Ross Philipson - -2018-10-31 Goffredo Baroncelli - - btrfs: Add RAID 6 recovery for a btrfs filesystem - Add the RAID 6 recovery, in order to use a RAID 6 filesystem even if some - disks (up to two) are missing. This code use the md RAID 6 code already - present in grub. - - Reviewed-by: Daniel Kiper - -2018-10-31 Goffredo Baroncelli - - btrfs: Make more generic the code for RAID 6 rebuilding - The original code which handles the recovery of a RAID 6 disks array - assumes that all reads are multiple of 1 << GRUB_DISK_SECTOR_BITS and it - assumes that all the I/O is done via the struct grub_diskfilter_segment. - This is not true for the btrfs code. In order to reuse the native - grub_raid6_recover() code, it is modified to not call - grub_diskfilter_read_node() directly, but to call an handler passed - as an argument. - - Reviewed-by: Daniel Kiper - -2018-10-31 Goffredo Baroncelli - - btrfs: Add support for recovery for a RAID 5 btrfs profiles - Add support for recovery for a RAID 5 btrfs profile. In addition - it is added some code as preparatory work for RAID 6 recovery code. - - Reviewed-by: Daniel Kiper - -2018-10-31 Goffredo Baroncelli - - btrfs: Refactor the code that read from disk - Move the code in charge to read the data from disk into a separate - function. This helps to separate the error handling logic (which - depends on the different raid profiles) from the read from disk - logic. Refactoring this code increases the general readability too. - - This is a preparatory patch, to help the adding of the RAID 5/6 recovery code. - - Reviewed-by: Daniel Kiper - -2018-10-31 Goffredo Baroncelli - - btrfs: Move logging code in grub_btrfs_read_logical() - A portion of the logging code is moved outside of internal for(;;). The part - that is left inside is the one which depends on the internal for(;;) index. - - This is a preparatory patch. The next one will refactor the code inside - the for(;;) into an another function. - - Reviewed-by: Daniel Kiper - -2018-10-31 Goffredo Baroncelli - - btrfs: Avoid a rescan for a device which was already not found - Currently read from missing device triggers rescan. However, it is never - recorded that the device is missing. So, each read of a missing device - triggers rescan again and again. This behavior causes a lot of unneeded - rescans leading to huge slowdowns. - - This patch fixes above mentioned issue. Information about missing devices - is stored in the data->devices_attached[] array as NULL value in dev - member. Rescan is triggered only if no information is found for a given - device. This means that only first time read triggers rescan. - - The patch drops premature return. This way data->devices_attached[] is - filled even when a given device is missing. - - Reviewed-by: Daniel Kiper - -2018-10-31 Goffredo Baroncelli - - btrfs: Move the error logging from find_device() to its caller - The caller knows better if this error is fatal or not, i.e. another disk is - available or not. - - This is a preparatory patch. - - Reviewed-by: Daniel Kiper - -2018-10-31 Goffredo Baroncelli - - btrfs: Add helper to check the btrfs header - This helper is used in a few places to help the debugging. As - conservative approach the error is only logged. - This does not impact the error handling. - - Reviewed-by: Daniel Kiper - -2018-10-31 Goffredo Baroncelli - - btrfs: Add support for reading a filesystem with a RAID 5 or RAID 6 profile - Reviewed-by: Daniel Kiper - -2018-09-27 Michael Chang - - msdos: Fix overflow in converting partition start and length into 512B blocks - When booting from NVME SSD with 4k sector size, it fails with the message. - - error: attempt to read or write outside of partition. - - This patch fixes the problem by fixing overflow in converting partition start - and length into 512B blocks. - - Reviewed-by: Daniel Kiper - -2018-09-27 Mihai Moldovan - - osdep/linux: Convert partition start to disk sector length - When reading data off a disk, sector values are based on the disk sector - length. - - Within grub_util_fd_open_device(), the start of the partition was taken - directly from grub's partition information structure, which uses the - internal sector length (currently 512b), but never transformed to the - disk's sector length. - - Subsequent calculations were all wrong for devices that have a diverging - sector length and the functions eventually skipped to the wrong stream - location, reading invalid data. - - Reviewed-by: Daniel Kiper - -2018-09-27 Adam Williamson - - python: Use AM_PATH_PYTHON to determine interpreter for gentpl.py - gentpl.py is python2/3-agnostic, but there's no way to cause it - to be run with any interpreter other than 'python', it's just - hard-coded into Makefile.common that way. Adjust that to use - AM_PATH_PYTHON (provided by automake) to find an interpreter - and run gentpl.py with that instead. This makes grub buildable - when `python` does not exist (but rather `python3` or `python2` - or `python2.7`, etc.) Minimum version is set to 2.6 as this is - the first version with `__future__.print_function` available. - - Note, AM_PATH_PYTHON respects the PYTHON environment variable - and will treat its value as the *only* candidate for a valid - interpreter if it is set - when PYTHON is set, AM_PATH_PYTHON - will not try to find any alternative interpreter, it will only - check whether the interpreter set as the value of PYTHON meets - the requirements and use it if so or fail if not. This means - that when using grub's `autogen.sh`, as it too uses the value - of the PYTHON environment variable (and if it is not set, just - sets it to 'python') you cannot rely on AM_PATH_PYTHON - interpreter discovery. If your desired Python interpreter is - not just 'python', you must set the PYTHON environment variable, - e.g. 'PYTHON=/usr/local/bin/python3 ./autogen.sh'. The specified - interpreter will then be used both by autogen.sh itself and by - the autotools-driven build scripts. - - Reviewed-by: Daniel Kiper - -2018-09-27 Colin Watson - - build: Use pkg-config to find FreeType - pkg-config is apparently preferred over freetype-config these days (see - the BUGS section of freetype-config(1)). pkg-config support was added - to FreeType in version 2.1.5, which was released in 2003, so it should - comfortably be available everywhere by now. - - We no longer need to explicitly substitute FREETYPE_CFLAGS and - FREETYPE_LIBS, since PKG_CHECK_MODULES does that automatically. - - Fixes Debian bug #887721. - - Reported-by: Hugh McMaster - Reviewed-by: Daniel Kiper - -2018-09-27 Colin Watson - - build: Capitalise *freetype_* variables - Using FREETYPE_CFLAGS and FREETYPE_LIBS is more in line with the naming - scheme used by pkg-config macros. - - Reviewed-by: Daniel Kiper - -2018-09-13 Julian Andres Klode - - ofnet: Initialize structs in bootpath parser - Code later on checks if variables inside the struct are - 0 to see if they have been set, like if there were addresses - in the bootpath. - - The variables were not initialized however, so the check - might succeed with uninitialized data, and a new interface - with random addresses and the same name is added. This causes - $net_default_mac to point to the random one, so, for example, - using that variable to load per-mac config files fails. - - Bug-Ubuntu: https://bugs.launchpad.net/bugs/1785859 - - Reviewed-by: Daniel Kiper - -2018-09-13 dann frazier - - grub-reboot: Warn when "for the next boot only" promise cannot be kept - The "for the next boot only" property of grub-reboot is dependent upon - GRUB being able to clear the next_entry variable in the environment - block. However, GRUB cannot write to devices using the diskfilter - and lvm abstractions. - - Ref: https://lists.gnu.org/archive/html/grub-devel/2009-12/msg00276.html - Ref: https://bugs.launchpad.net/bugs/788298 - - Reviewed-by: Daniel Kiper - -2018-09-13 Cao jin - - relocator16: Comments update - Reviewed-by: Daniel Kiper - -2018-09-13 Paul Menzel - - ahci: Increase time-out from 10 s to 32 s - This is a cryptographically signed message in MIME format. - - Date: Thu, 9 Aug 2018 07:27:35 +0200 - - Currently, the GRUB payload for coreboot does not detect the Western - Digital hard disk WDC WD20EARS-60M AB51 connected to the ASRock E350M1, - as that takes over ten seconds to spin up. - - ``` - disk/ahci.c:533: port 0, err: 0 - disk/ahci.c:539: port 0, err: 0 - disk/ahci.c:543: port 0, err: 0 - disk/ahci.c:549: port 0, offset: 120, tfd:80, CMD: 6016 - disk/ahci.c:552: port 0, err: 0 - disk/ahci.c:563: port 0, offset: 120, tfd:80, CMD: 6016 - disk/ahci.c:566: port: 0, err: 0 - disk/ahci.c:593: port 0 is busy - disk/ahci.c:621: cleaning up failed devs - ``` - - GRUB detects the drive, when either unloading the module *ahci*, and - then loading it again, or when doing a warm reset. - - As the ten second time-out is too short, increase it to 32 seconds, - used by SeaBIOS. which detects the drive successfully. - - The AHCI driver in libpayload uses 30 seconds, and that time-out was - added in commit 354066e1 (libpayload: ahci: Increase timeout for - signature reading) with the description below. - - > We can't read the drives signature before it's ready, i.e. spun up. - > So set the timeout to the standard 30s. Also put a notice on the - > console, so the user knows why the signature reading failed. - - Reviewed-by: Daniel Kiper - -2018-09-13 Cao jin - - linux16: Code cleanup - 1. move relocator related code more close to each other - 2. use variable "len" since it has correct assignment, and keep coding - style with upper code - - Reviewed-by: Daniel Kiper - -2018-09-13 Colin Watson - - tests: Fix qemu options for UHCI test - qemu 2.12 removed the -usbdevice option. Use a more modern spelling - instead, in line with other USB-related tests. - - Reviewed-by: Daniel Kiper - -2018-09-13 Colin Watson - - tests: Disable sercon in SeaBIOS - SeaBIOS 1.11.0 added support for VGA emulation over a serial port, which - interferes with grub-shell. Turn it off. - - Reviewed-by: Daniel Kiper - -2018-09-12 Peter Jones - - grub-module-verifier: Report the filename or modname in errors - Make it so that when grub-module-verifier complains of an issue, it tells you - which module the issue was with. - - Reviewed-by: Daniel Kiper - -2018-09-12 Peter Jones - - configure: Fix an 8 year old typo - Reviewed-by: Daniel Kiper - -2018-09-12 Leif Lindholm - - loader/multiboot_mbi2: Use central copy of grub_efi_find_mmap_size() - Delete local copy of function to determine required buffer size for the - UEFI memory map, use helper in kern/efi/mm.c. - - Reviewed-by: Daniel Kiper - -2018-09-12 Leif Lindholm - - loader/ia64/linux: Use central copy of grub_efi_find_mmap_size() - Delete local copy of function to determine required buffer size for the - UEFI memory map, use helper in kern/efi/mm.c. - - Reviewed-by: Daniel Kiper - -2018-09-12 Leif Lindholm - - loader/i386/linux: Use central copy of grub_efi_find_mmap_size() - Delete local copy of function to determine required buffer size for the - UEFI memory map, use helper in kern/efi/mm.c. - - Reviewed-by: Daniel Kiper - -2018-07-25 Leif Lindholm - - i386: Don't include lib/i386/reset.c in EFI builds - Commit 0ba90a7f0178 ("efi: Move grub_reboot() into kernel") broke - the build on i386-efi - genmoddep.awk bails out with message - grub_reboot in reboot is duplicated in kernel - This is because both lib/i386/reset.c and kern/efi/efi.c now provide - this function. - - Rather than explicitly list each i386 platform variant in - Makefile.core.def, include the contents of lib/i386/reset.c only when - GRUB_MACHINE_EFI is not set. - - Reviewed-by: Daniel Kiper - -2018-07-25 Leif Lindholm - - efi: Restrict arm/arm64 linux loader initrd placement - The 32-bit arm Linux kernel is built as a zImage, which self-decompresses - down to near start of RAM. In order for an initrd/initramfs to be - accessible, it needs to be placed within the first ~768MB of RAM. - The initrd loader built into the kernel EFI stub restricts this down to - 512MB for simplicity - so enable the same restriction in grub. - - For arm64, the requirement is within a 1GB aligned 32GB window also - covering the (runtime) kernel image. Since the EFI stub loader itself - will attempt to relocate to near start of RAM, force initrd to be loaded - completely within the first 32GB of RAM. - - Reviewed-by: Daniel Kiper - -2018-07-25 Leif Lindholm - - arm: Delete unused efi support from loader/arm - The 32-bit arm efi port now shares the 64-bit linux loader, so delete - the now unused bits from the 32-bit linux loader. - - This in turn leaves the grub-core/kern/arm/efi/misc.c unused, so - delete that too. - - Reviewed-by: Daniel Kiper - -2018-07-25 Leif Lindholm - - arm/efi: Switch to arm64 linux loader - The arm64 and arm linux kernel EFI-stub support presents pretty much - identical interfaces, so the same linux loader source can be used for - both architectures. - - Switch 32-bit ARM UEFI platforms over to the existing EFI-stub aware - loader initially developed for arm64. - - This *WILL* stop non-efistub Linux kernels from booting on arm-efi. - - Reviewed-by: Daniel Kiper - -2018-07-25 Leif Lindholm - - arm64/linux/loader: Rename functions and macros and move to common headers - In preparation for using the linux loader for 32-bit and 64-bit platforms, - rename grub_arm64*/GRUB_ARM64* to grub_armxx*/GRUB_ARMXX*. - - Move prototypes for now-common functions to efi/efi.h. - - Reviewed-by: Daniel Kiper - -2018-07-25 Leif Lindholm - - efi: Add grub_efi_get_ram_base() function for arm64 - Since ARM platforms do not have a common memory map, add a helper - function that finds the lowest address region with the EFI_MEMORY_WB - attribute set in the UEFI memory map. - - Required for the arm64 efi linux loader to restrict the initrd - location to where it will be accessible by the kernel at runtime. - - Reviewed-by: Daniel Kiper - -2018-07-25 Leif Lindholm - - efi: Add central copy of grub_efi_find_mmap_size - There are several implementations of this function in the tree. - Add a central version in grub-core/efi/mm.c. - - Reviewed-by: Daniel Kiper - -2018-07-25 Arindam Nath - - i386/linux: Add support for ext_lfb_base - The EFI Graphics Output Protocol can return a 64-bit - linear frame buffer address in some firmware/BIOS - implementations. We currently only store the lower - 32-bits in the lfb_base. This will eventually be - passed to Linux kernel and the efifb driver will - incorrectly interpret the framebuffer address as - 32-bit address. - - The Linux kernel has already added support to handle - 64-bit linear framebuffer address in the efifb driver - since quite some time now. - - This patch adds the support for 64-bit linear frame - buffer address in GRUB to address the above mentioned - scenario. - - Reviewed-by: Daniel Kiper - -2018-07-11 Leif Lindholm - - commands/file: Use definitions from arm64/linux.h - Clean up code for matching IS_ARM64 slightly by making use of struct - linux_arm64_kernel_header and GRUB_LINUX_ARM64_MAGIC_SIGNATURE. - - Reviewed-by: Daniel Kiper - -2018-07-11 Leif Lindholm - - commands/file: Use definitions from arm/linux.h - Clean up code for matching IS_ARM slightly by making use of struct - linux_arm_kernel_header and GRUB_LINUX_ARM_MAGIC_SIGNATURE. - - Reviewed-by: Daniel Kiper - -2018-07-11 Hans de Goede - - efi/console: Fix the "enter" key not working on x86 tablets - Most 8" or 7" x86 Windows 10 tablets come with volume up/down buttons and - a power-button. In their UEFI these are almost always mapped to arrow - up/down and enter. - - Pressing the volume buttons (sometimes by accident) will stop the - menu countdown, but the power-button / "enter" key was not being recognized - as enter, so the user would be stuck at the grub menu. - - The problem is that these tablets send scan_code 13 or 0x0d for the - power-button, which officialy maps to the F3 key. They also set - unicode_char to 0x0d. - - This commit recognizes the special case of both scan_code and unicode_char - being set to 0x0d and treats this as an enter key press. - - This fixes things getting stuck at the grub-menu and allows the user - to choice a grub-menu entry using the buttons on the tablet. - - Reviewed-by: Daniel Kiper - -2018-07-11 Cao jin - - grub-setup: Debug message cleanup - Variable "root" is initialized after root device probing and is null in - current place, so, drop it. - - Reviewed-by: Daniel Kiper - -2018-07-02 Denis 'GNUtoo' Carikli - - multiboot_elfxx.c: Fix compilation by fixing undeclared variable - Without that fix we have: - In file included from ../../include/grub/command.h:25:0, - from ../../grub-core/loader/multiboot.c:30: - ../../grub-core/loader/multiboot_elfxx.c: In function 'grub_multiboot_load_elf64': - ../../grub-core/loader/multiboot_elfxx.c:130:28: error: 'relocatable' undeclared (first use in this function) - "load_base_addr=0x%x\n", relocatable, - - This happens due to mistake in the commit 14ec665 - (mbi: Use per segment a separate relocator chunk). - - So, let's fix it. - -2018-06-23 Leif Lindholm - - efi/fdt: Set address/size cells to 2 for empty tree - When booting an arm* system on UEFI with an empty device tree (currently - only when hardware description comes from ACPI), we don't currently set - default to 1 cell (32 bits). - - Set both of these properties, to 2 cells (64 bits), to resolve issues - with kexec on some platforms. - - This change corresponds with linux kernel commit ae8a442dfdc4 - ("efi/libstub/arm*: Set default address and size cells values for an empty dtb") - and ensures booting through grub does not behave differently from booting - the stub loader directly. - - See also https://patchwork.kernel.org/patch/9561201/ - - Reviewed-by: Daniel Kiper - -2018-06-23 Leif Lindholm - - fdt: Move prop_entry_size to fdt.h - To be able to resuse the prop_entry_size macro, move it to - and rename it grub_fdt_prop_entry_size. - - Reviewed-by: Daniel Kiper - -2018-06-23 Will Thompson - - grub-fs-tester: Fix losetup race - If something else on the system is using loopback devices, then the - device that's free at the call to `losetup -f` may not be free in the - following call to try to use it. Instead, find and use the first free - loopback device in a single call to losetup. - - Reviewed-by: Daniel Kiper - -2018-06-23 Alexander Boettcher - - mbi: Use per segment a separate relocator chunk - Instead of setting up a all comprising relocator chunk for all segments, - use per segment a separate relocator chunk. - - Currently, if the ELF is non-relocatable, a single relocator chunk will - comprise memory (between the segments) which gets overridden by the relst() - invocation of the movers code in grub_relocator16/32/64_boot(). - - The overridden memory may contain reserved ranges like VGA memory or ACPI - tables, which may lead to crashes or at least to strange boot behaviour. - - Reviewed-by: Daniel Kiper - -2018-06-05 Daniel Kiper - - templates: Add missing "]" - Commit 51be337 (templates: Update grub script template files) - lacked one "]", so, add it. - - Reported-by: Philip - -2018-05-29 Daniel Kiper - - xfs: Accept filesystem with sparse inodes - The sparse inode metadata format became a mkfs.xfs default in - xfsprogs-4.16.0, and such filesystems are now rejected by grub as - containing an incompatible feature. - - In essence, this feature allows xfs to allocate inodes into fragmented - freespace. (Without this feature, if xfs could not allocate contiguous - space for 64 new inodes, inode creation would fail.) - - In practice, the disk format change is restricted to the inode btree, - which as far as I can tell is not used by grub. If all you're doing - today is parsing a directory, reading an inode number, and converting - that inode number to a disk location, then ignoring this feature - should be fine, so I've added it to XFS_SB_FEAT_INCOMPAT_SUPPORTED - - I did some brief testing of this patch by hacking up the regression - tests to completely fragment freespace on the test xfs filesystem, and - then write a large-ish number of inodes to consume any existing - contiguous 64-inode chunk. This way any files the grub tests add and - traverse would be in such a fragmented inode allocation. Tests passed, - but I'm not sure how to cleanly integrate that into the test harness. - - Reviewed-by: Daniel Kiper - Tested-by: Chris Murphy - -2018-05-29 Oleg Solovyov - - grub-probe: Don't skip /dev/mapper/dm-* devices - This patch ensures that grub-probe will find the root device placed in - /dev/mapper/dm-[0-9]+-.* e.g. device named /dev/mapper/dm-0-luks will be - found and grub.cfg will be updated properly, enabling the system to boot. - - Reviewed-by: Daniel Kiper - -2018-05-08 Michael Chang - - bufio: Round up block size to power of 2 - Rounding up the bufio->block_size to meet power of 2 to facilitate next_buf - calculation in grub_bufio_read(). - - Reviewed-by: Daniel Kiper - -2018-04-23 Nicholas Vinson - - templates: Update grub script template files - Update grub-mkconfig.in and 10_linux.in to support grub-probe's new - partuuid target. Update grub.texi documentation. The following table - shows how GRUB_DISABLE_LINUX_UUID, GRUB_DISABLE_LINUX_PARTUUID, and - initramfs detection interact: - - Initramfs GRUB_DISABLE_LINUX_PARTUUID GRUB_DISABLE_LINUX_UUID Linux Root - detected Set Set ID Method - - false false false part UUID - false false true part UUID - false true false dev name - false true true dev name - true false false fs UUID - true false true part UUID - true true false fs UUID - true true true dev name - - Note: GRUB_DISABLE_LINUX_PARTUUID and GRUB_DISABLE_LINUX_UUID equate to - 'false' when unset or set to any value other than 'true'. - GRUB_DISABLE_LINUX_PARTUUID defaults to 'true'. - - Reviewed-by: Daniel Kiper - -2018-04-23 Nicholas Vinson - - grub-probe: Add PARTUUID detection support - Add PARTUUID detection support grub-probe for MBR and GPT partition schemes. - - Reviewed-by: Daniel Kiper - -2018-04-23 Nicholas Vinson - - disk: Update grub_gpt_partentry - Rename grub_gpt_part_type to grub_gpt_part_guid and update grub_gpt_partentry - to use this type for both the partition type GUID string and the partition GUID - string entries. This change ensures that the two GUID fields are handled more - consistently and helps to simplify the changes needed to add Linux partition - GUID support. - - Reviewed-by: Daniel Kiper - -2018-04-23 Nicholas Vinson - - grub-probe: Centralize GUID prints - Define print_gpt_guid(), so there is a central function for printing - GUID strings. This change is a precursor for later patches which rely - on this logic. - - Reviewed-by: Daniel Kiper - -2018-04-23 Olaf Hering - - grub-install: Locale depends on nls - With --disable-nls no locales exist. - - Avoid runtime error by moving code that copies locales into its own - function. Return early in case nls was disabled. That way the compiler - will throw away unreachable code, no need to put preprocessor - conditionals everywhere to avoid warnings about unused code. - - Fix memleak by freeing srcf and dstf. - Convert tabs to spaces in moved code. - - Reviewed-by: Daniel Kiper - -2018-04-23 Cao jin - - diskboot: Trivial correction on stale comments - diskboot.img now is loaded at 0x8000 and is jumped to with 0:0x8000. - - Reviewed-by: Daniel Kiper - -2018-04-10 Jaegeuk Kim - - fs: Add F2FS support - "F2FS (Flash-Friendly File System) is flash-friendly file system which was merged - into Linux kernel v3.8 in 2013. - - The motive for F2FS was to build a file system that from the start, takes into - account the characteristics of NAND flash memory-based storage devices (such as - solid-state disks, eMMC, and SD cards). - - F2FS was designed on a basis of a log-structured file system approach, which - remedies some known issues of the older log structured file systems, such as - the snowball effect of wandering trees and high cleaning overhead. In addition, - since a NAND-based storage device shows different characteristics according to - its internal geometry or flash memory management scheme (such as the Flash - Translation Layer or FTL), it supports various parameters not only for - configuring on-disk layout, but also for selecting allocation and cleaning - algorithm.", quote by https://en.wikipedia.org/wiki/F2FS. - - The source codes for F2FS are available from: - - http://git.kernel.org/cgit/linux/kernel/git/jaegeuk/f2fs.git - http://git.kernel.org/cgit/linux/kernel/git/jaegeuk/f2fs-tools.git - - This patch has been integrated in OpenMandriva Lx 3. - https://www.openmandriva.org/ - - Reviewed-by: Daniel Kiper - -2018-04-04 Michael Chang - - Fix packed-not-aligned error on GCC 8 - When building with GCC 8, there are several errors regarding packed-not-aligned. - - ./include/grub/gpt_partition.h:79:1: error: alignment 1 of ‘struct grub_gpt_partentry’ is less than 8 [-Werror=packed-not-aligned] - - This patch fixes the build error by cleaning up the ambiguity of placing - aligned structure in a packed one. In "struct grub_btrfs_time" and "struct - grub_gpt_part_type", the aligned attribute seems to be superfluous, and also - has to be packed, to ensure the structure is bit-to-bit mapped to the format - laid on disk. I think we could blame to copy and paste error here for the - mistake. In "struct efi_variable", we have to use grub_efi_packed_guid_t, as - the name suggests. :) - - Tested-by: Michael Chang - Tested-by: Paul Menzel - Reviewed-by: Daniel Kiper - -2018-04-04 mike.travis@hpe.com - - efi/uga: Fix PCIe LER when GRUB2 accesses non-enabled MMIO data from VGA - A GPU inserted into a PCIe I/O slot disappears during system startup. - The problem centers around GRUB and a specific VGA init function in - efi_uga.c. This causes an LER (Link Error Recorvery) because the MMIO - memory has not been enabled before attempting access. - - The fix is to add the same coding used in other VGA drivers, specifically - to add a check to insure that it is indeed a VGA controller. And then - enable the MMIO address space with the specific bits. - - Reviewed-by: Daniel Kiper - -2018-03-26 Eric Snowberg - - ieee1275: NULL pointer dereference in grub_machine_get_bootlocation() - Read from NULL pointer canon in function grub_machine_get_bootlocation(). - Function grub_ieee1275_canonicalise_devname() may return NULL. - - Reviewed-by: Daniel Kiper - -2018-03-14 Eric Snowberg - - ieee1275: split up grub_machine_get_bootlocation - Split up some of the functionality in grub_machine_get_bootlocation into - grub_ieee1275_get_boot_dev. This will allow for code reuse in a follow on - patch. - - Reviewed-by: Daniel Kiper - -2018-03-14 C. Masloch - - chainloader: patch in BPB's sectors_per_track and num_heads - These fields must reflect the ROM-BIOS's geometry for CHS-based - loaders to correctly load their next stage. Most loaders do not - query the ROM-BIOS (Int13.08), relying on the BPB fields to hold - the correct values already. - - Tested with lDebug booted in qemu via grub2's - FreeDOS direct loading support, refer to - https://bitbucket.org/ecm/ldosboot + https://bitbucket.org/ecm/ldebug - (For this test, lDebug's iniload.asm must be assembled with - -D_QUERY_GEOMETRY=0 to leave the BPB values provided by grub.) - - Reviewed-by: Daniel Kiper - -2018-03-14 Matthew S. Turnbull - - grub-mkconfig/10_linux: Support multiple early initrd images - Add support for multiple, shared, early initrd images. These early - images will be loaded in the order declared, and all will be loaded - before the initrd image. - - While many classes of data can be provided by early images, the - immediate use case would be for distributions to provide CPU - microcode to mitigate the Meltdown and Spectre vulnerabilities. - - There are two environment variables provided for declaring the early - images. - - * GRUB_EARLY_INITRD_LINUX_STOCK is for the distribution declare - images that are provided by the distribution or installed packages. - If undeclared, this will default to a set of common microcode image - names. - - * GRUB_EARLY_INITRD_LINUX_CUSTOM is for user created images. User - images will be loaded after the stock images. - - These separate configurations allow the distribution and user to - declare different image sets without clobbering each other. - - This also makes a minor update to ensure that UUID partition labels - stay disabled when no initrd image is found, even if early images are - present. - - This is a continuation of a previous patch published by Christian - Hesse in 2016: - http://lists.gnu.org/archive/html/grub-devel/2016-02/msg00025.html - - Down stream Gentoo bug: - https://bugs.gentoo.org/645088 - - Reviewed-by: Daniel Kiper - -2018-03-07 Eric Snowberg - - mkimage: fix build regression in grub_mkimage_load_image - The grub_mkimage_load_image function (commit 7542af6, mkimage: refactor a bunch - of section data into a struct.) introduces a build regression on SPARC: - - cc1: warnings being treated as errors - In file included from util/grub-mkimage32.c:23: - util/grub-mkimagexx.c: In function 'grub_mkimage_load_image32': - util/grub-mkimagexx.c:1968: error: missing initializer - util/grub-mkimagexx.c:1968: error: (near initialization for 'smd.sections') - make[2]: *** [util/grub_mkimage-grub-mkimage32.o] Error 1 - - Initialize the entire section_metadata structure. - - Reviewed-by: Daniel Kiper - -2018-03-05 dann frazier - - Revert "Keep the native terminal active when enabling gfxterm" - This can cause an issue where GRUB is trying to display both a text and - graphical menu on the display at the same time, resulting in a flickering - effect when e.g. scrolling quickly through a menu (LP: #1752767). - - Revert for now while we look for a better solution for the original issue. - - This reverts commit 52ef7b23f528ce844716661d586497a177e80d5b. - - Reviewed-by: Daniel Kiper - -2018-03-05 Eric Snowberg - - sparc64: #blocks64 disk node method - Return the 64bit number of blocks of storage associated with the device or - instance. Where a "block" is a unit of storage consisting of the number of - bytes returned by the package's "block-size" method. If the size cannot be - determined, or if the number of blocks exceeds the range return -1. - - Reviewed-by: Daniel Kiper - -2018-03-05 Eric Snowberg - - sparc64: #blocks disk node method - Return the number of blocks of storage associated with the device or - instance. Where a "block" is a unit of storage consisting of the number - of bytes returned by the package's "block-size" method. If the size cannot - be determined, the #blocks method returns the maximum unsigned integer - (which, because of Open Firmware's assumption of two's complement arithmetic, - is equivalent to the signed number -1). If the number of blocks exceeds - the range of an unsigned number, return 0 to alert the caller to try - the #blocks64 command. - - Reviewed-by: Daniel Kiper - -2018-03-05 Eric Snowberg - - ieee1275: block-size deblocker support method - IEEE Std 1275-1994 Standard for Boot (Initialization Configuration) - Firmware: Core Requirements and Practices - - 3.8.3 deblocker support package - - Any package that uses the "deblocker" support package must define - the following method, which the deblocker uses as a low-level - interface to the device - - block-size ( -- block-len ) Return "granularity" for accesses to this - device. - - Reviewed-by: Daniel Kiper - -2018-03-05 Daniel Kiper - - ieee1275: no-data-command bus specific method - IEEE 1275-1994 Standard for Boot (Initialization Configuration) - Firmware: Core Requirements and Practices - - E.3.2.2 Bus-specific methods for bus nodes - - A package implementing the scsi-2 device type shall implement the - following bus-specific method: - - no-data-command ( cmd-addr -- error? ) - Executes a simple SCSI command, automatically retrying under - certain conditions. cmd-addr is the address of a 6-byte command buffer - containing an SCSI command that does not have a data transfer phase. - Executes the command, retrying indefinitely with the same retry criteria - as retry-command. - - error? is nonzero if an error occurred, zero otherwise. - NOTE no-data-command is a convenience function. It provides - no capabilities that are not present in retry-command, but for - those commands that meet its restrictions, it is easier to use. - - Reviewed-by: Daniel Kiper - -2018-03-05 Eric Snowberg - - ieee1275: set-address bus specific method - IEEE 1275-1994 Standard for Boot (Initialization Configuration) - Firmware: Core Requirements and Practices - E.3.2.2 Bus-specific methods for bus nodes - - A package implementing the scsi-2 device type shall implement the - following bus-specific method: - - set-address ( unit# target# -- ) - Sets the SCSI target number (0x0..0xf) and unit number (0..7) to which - subsequent commands apply. - - This function is for devices with #address-cells == 2 - - Reviewed-by: Daniel Kiper - -2018-03-05 Eric Snowberg - - ieee1275: encode-unit command for 4 addr cell devs - Convert physical address to text unit-string. - - Convert phys.lo ... phys-high, the numerical representation, to unit-string, - the text string representation of a physical address within the address - space defined by this device node. The number of cells in the list - phys.lo ... phys.hi is determined by the value of the #address-cells property - of this node. - - This function is for devices with #address-cells == 4 - - Reviewed-by: Daniel Kiper - -2018-03-05 Eric Snowberg - - ieee1275: decode-unit command for 4 addr cell devs - decode-unit ( addr len -- phys.lo ... phys.hi ) - - Convert text unit-string to physical address. - - Convert unit-string, the text string representation, to phys.lo ... phys.hi, - the numerical representation of a physical address within the address space - defined by this device node. The number of cells in the list - phys.lo ... phys.hi is determined by the value of the #address-cells - property of this node. - - This function is for devices with #address-cells == 4 - - Reviewed-by: Daniel Kiper - -2018-03-05 Eric Snowberg - - sparc64: Limit nvme of_path_of_nvme to just SPARC - Limit NVMe of_path_of_nvme to just SPARC hardware for now. It has been - found that non-Open Firmware hardware platforms can some how access - this function. - - Reviewed-by: Daniel Kiper - -2018-03-05 John Paul Adrian Glaubitz - - ieee1275: Fix crash in of_path_of_nvme when of_path is empty - The of_path_of_nvme function (commit 2391d57, ieee1275: add nvme - support within ofpath) introduced a functional regression: - - On systems which are not based on Open Firmware but have at - least one NVME device, find_obppath will return NULL and thus - trying to append the disk name to of_path will result in a - crash. - - The proper behavior of of_path_of_nvme is, however, to just - return NULL in such cases, like other users of find_obppath, - such as of_path_of_scsi. - - Reviewed-by: Eric Snowberg - Reviewed-by: Daniel Kiper - -2018-03-05 Peter Jones - - .mod files: Strip annobin annotations and .eh_frame, and their relocations - This way debuginfo built from the .module will still include this - information, but the final result won't have the data we don't actually - need in the modules, either on-disk, loaded at runtime, or in prebuilt - images. - - Reviewed-by: Daniel Kiper - -2018-03-05 Peter Jones - - mkimage: avoid copying relocations for sections that won't be copied. - Some versions of gcc include a plugin called "annobin", and in some - build systems this is enabled by default. This plugin creates special - ELF note sections to track which ABI-breaking features are used by a - binary, as well as a series of relocations to annotate where. - - If grub is compiled with this feature, then when grub-mkimage translates - the binary to another file format which does not strongly associate - relocation data with sections (i.e. when platform is *-efi), these - relocations appear to be against the .text section rather than the - original note section. When the binary is loaded by the PE runtime - loader, hilarity ensues. - - This issue is not necessarily limited to the annobin, but could arise - any time there are relocations in sections that are not represented in - grub-mkimage's output. - - This patch seeks to avoid this issue by only including relocations that - refer to sections which will be included in the final binary. - - As an aside, this should also obviate the need to avoid -funwind-tables, - -fasynchronous-unwind-tables, and any sections similar to .eh_frame in - the future. I've tested it on x86-64-efi with the following gcc command - line options (as recorded by -grecord-gcc-flags), but I still need to - test the result on some other platforms that have been problematic in - the past (especially ARM Aarch64) before I feel comfortable making - changes to the configure.ac bits: - - GNU C11 7.2.1 20180116 (Red Hat 7.2.1-7) -mno-mmx -mno-sse -mno-sse2 -mno-sse3 -mno-3dnow -msoft-float -mno-stack-arg-probe -mcmodel=large -mno-red-zone -m64 -mtune=generic -march=x86-64 -g3 -Os -freg-struct-return -fno-stack-protector -ffreestanding -funwind-tables -fasynchronous-unwind-tables -fno-strict-aliasing -fstack-clash-protection -fno-ident -fplugin=annobin - - Reviewed-by: Daniel Kiper - -2018-03-05 Peter Jones - - mkimage: refactor a bunch of section data into a struct. - This basically moves a bunch of the section information we pass around a - lot into a struct, and passes a pointer to a single one of those - instead. - - This shouldn't change the binary file output or the "grub-mkimage -v" - output in any way. - - Reviewed-by: Daniel Kiper - -2018-03-05 Peter Jones - - mkimage: make locate_sections() set up vaddresses as well. - This puts both kinds of address initialization at the same place, and also lets - us iterate through the section list one time fewer. - - Reviewed-by: Daniel Kiper - -2018-03-05 Peter Jones - - mkimage: rename a couple of things to be less confusing later. - This renames some things: - - - the "strtab" and "strtab_section" in relocate_symbols are changed to "symtab" - instead, so as to be less confusing when "strtab" is moved to a struct in a - later patch. - - - The places where we pass section_vaddresses to functions are changed to also - be called section_vaddresses"inside those functions, so I get less confused - when I put addresses and vaddresses in a struct in a later patch. - - Reviewed-by: Daniel Kiper - -2018-03-05 Peter Jones - - mkimage: make it easier to run syntax checkers on grub-mkimagexx.c - This makes it so you can treat grub-mkimagexx.c as a file you can build - directly, so syntax checkers like vim's "syntastic" plugin, which uses - "gcc -x c -fsyntax-only" to build it, will work. - - One still has to do whatever setup is required to make it pick the right - include dirs, which -W options we use, etc., but this makes it so you - can do the checking on the file you're editing, rather than on a - different file. - - Reviewed-by: Daniel Kiper - -2018-03-05 Peter Jones - - aout.h: Fix missing include. - grub_aout_load() has a grub_file_t parameter, and depending on what order - includes land in, it's sometimes not defined. This patch explicitly adds - file.h to aout.h so that it will always be defined. - - Reviewed-by: Daniel Kiper - -2018-02-26 Joakim Bech - - ieee1275: fix build regression in of_path_of_nvme - The of_path_of_nvme function (commit 2391d57, ieee1275: add nvme - support within ofpath) introduced a build regression: - grub-core/osdep/linux/ofpath.c:365:21: error: comparison between pointer - and zero character constant [-Werror=pointer-compare] - if ((digit_string != '\0') && (*part_end == 'p')) - - Update digit_string to compare against the char instead of the pointer. - - Reviewed-by: Daniel Kiper - -2018-02-23 Leif Lindholm - - arm: make linux.h safe to include for non-native builds - (for machine arm/efi) and - (for machine arm/coreboot) will not always - resolve (and will likely not be valid to) if pulled in when building - non-native commands, such as host tools or the "file" command. - So explicitly include them with their expanded pathnames. - - Reviewed-by: Daniel Kiper - -2018-02-23 Leif Lindholm - - arm: switch linux loader to linux_arm_kernel_header struct - Use kernel header struct and magic definition to align (and coexist) with - i386/arm64 ports. - - Reviewed-by: Daniel Kiper - -2018-02-23 Leif Lindholm - - arm64: align linux kernel magic macro naming with i386 - Change GRUB_ARM64_LINUX_MAGIC to GRUB_LINUX_ARM64_MAGIC_SIGNATURE. - - Reviewed-by: Daniel Kiper - -2018-02-23 Leif Lindholm - - arm64: align linux kernel header struct naming with i386 - Rename struct grub_arm64_linux_kernel_header -> linux_arm64_kernel_header. - - Reviewed-by: Daniel Kiper - -2018-02-23 Leif Lindholm - - i386: make struct linux_kernel_header architecture specific - struct linux_kernel_header -> struct linux_i386_kernel_header - - Reviewed-by: Daniel Kiper - -2018-02-23 Leif Lindholm - - make GRUB_LINUX_MAGIC_SIGNATURE architecture-specific - Rename GRUB_LINUX_MAGIC_SIGNATURE GRUB_LINUX_I386_MAGIC_SIGNATURE, - to be usable in code that supports more than one image type. - - Reviewed-by: Daniel Kiper - -2018-02-23 Leif Lindholm - - Make arch-specific linux.h include guards architecture unique - Replace uses of GRUB_LINUX_MACHINE_HEADER and GRUB_LINUX_CPU_HEADER - with GRUB__LINUX_HEADER include guards to prevent issues when - including more than one of them. - - Reviewed-by: Daniel Kiper - -2018-02-23 Leif Lindholm - - arm64/efi: move EFI_PAGE definitions to efi/memory.h - The EFI page definitions and macros are generic and should not be confined - to arm64 headers - so move to efi/memory.h. - Also add EFI_PAGE_SIZE macro. - - Update loader sources to reflect new header location. - - Reviewed-by: Daniel Kiper - -2018-02-23 Colin Watson - - libgcrypt: Import replacement CRC operations - The CRC implementation imported from libgcrypt 1.5.3 is arguably - non-free, due to being encumbered by the restrictive Internet Society - licence on RFCs (see e.g. https://wiki.debian.org/NonFreeIETFDocuments). - Fortunately, libgcrypt has since replaced it with a version that is both - reportedly better-optimised and doesn't suffer from this encumbrance. - - The ideal solution would be to update to a new version of libgcrypt, and - I spent some time trying to do that. However, util/import_gcry.py - requires complex modifications to cope with the new version, and I - stalled part-way through; furthermore, GRUB's libgcrypt tree already - contains some backports of upstream changes. Rather than allowing the - perfect to be the enemy of the good, I think it's best to backport this - single change to at least sort out the licensing situation. Doing so - won't make things any harder for a future wholesale upgrade. - - This commit is mostly a straightforward backport of - https://git.gnupg.org/cgi-bin/gitweb.cgi?p=libgcrypt.git;a=commitdiff;h=06e122baa3321483a47bbf82fd2a4540becfa0c9, - but I also imported bufhelp.h from libgcrypt 1.7.0 (newer versions - required further changes elsewhere). - - I've tested that "hashsum -h crc32" still produces correct output for a - variety of files on both i386-pc and x86_64-emu targets. - - Reviewed-by: Daniel Kiper - -2018-02-23 Eric Snowberg - - ieee1275: add nvme support within ofpath - Add NVMe support within ofpath. - - The Open Firmware text representation for a NVMe device contains the - Namespace ID. An invalid namespace ID is one whose value is zero or whose - value is greater than the value reported by the Number of Namespaces (NN) - field in the Identify Controller data structure. At the moment only a - single Namespace is supported, therefore the value is currently hard coded - to one. - - Reviewed-by: Daniel Kiper - -2018-02-23 Daniel Kiper - - chainloader: Fix wrong break condition (must be AND not, OR) - The definition of bpb's num_total_sectors_16 and num_total_sectors_32 - is that either the 16-bit field is non-zero and is used (in which case - eg mkfs.fat sets the 32-bit field to zero), or it is zero and the - 32-bit field is used. Therefore, a BPB is invalid only if *both* - fields are zero; having one field as zero and the other as non-zero is - the case to be expected. (Indeed, according to Microsoft's specification - one of the fields *must* be zero, and the other non-zero.) - - This affects all users of grub_chainloader_patch_bpb which are in - chainloader.c, freedos.c, and ntldr.c - - Some descriptions of the semantics of these two fields: - - https://www.win.tue.nl/~aeb/linux/fs/fat/fat-1.html - - The old 2-byte fields "total number of sectors" and "number of - sectors per FAT" are now zero; this information is now found in - the new 4-byte fields. - - (Here given in the FAT32 EBPB section but the total sectors 16/32 bit - fields semantic is true of FAT12 and FAT16 too.) - - https://wiki.osdev.org/FAT#BPB_.28BIOS_Parameter_Block.29 - - 19 | 2 | The total sectors in the logical volume. If this value is 0, - it means there are more than 65535 sectors in the volume, and the actual - count is stored in "Large Sectors (bytes 32-35). - - 32 | 4 | Large amount of sector on media. This field is set if there - are more than 65535 sectors in the volume. - - (Doesn't specify what the "large" field is set to when unused, but as - mentioned mkfs.fat sets it to zero then.) - - https://technet.microsoft.com/en-us/library/cc976796.aspx - - 0x13 | WORD | 0x0000 | - Small Sectors . The number of sectors on the volume represented in 16 - bits (< 65,536). For volumes larger than 65,536 sectors, this field - has a value of zero and the Large Sectors field is used instead. - - 0x20 | DWORD | 0x01F03E00 | - Large Sectors . If the value of the Small Sectors field is zero, this - field contains the total number of sectors in the FAT16 volume. If the - value of the Small Sectors field is not zero, the value of this field - is zero. - - https://staff.washington.edu/dittrich/misc/fatgen103.pdf page 10 - - BPB_TotSec16 | 19 | 2 | - This field is the old 16-bit total count of sectors on the volume. - This count includes the count of all sectors in all four regions of the - volume. This field can be 0; if it is 0, then BPB_TotSec32 must be - non-zero. For FAT32 volumes, this field must be 0. For FAT12 and - FAT16 volumes, this field contains the sector count, and - BPB_TotSec32 is 0 if the total sector count “fits†(is less than - 0x10000). - - BPB_TotSec32 | 32 | 4 | - This field is the new 32-bit total count of sectors on the volume. - This count includes the count of all sectors in all four regions of the - volume. This field can be 0; if it is 0, then BPB_TotSec16 must be - non-zero. For FAT32 volumes, this field must be non-zero. For - FAT12/FAT16 volumes, this field contains the sector count if - BPB_TotSec16 is 0 (count is greater than or equal to 0x10000). - - (This specifies that an unused BPB_TotSec32 field is set to zero.) - - By the way fix offsets in include/grub/fat.h. - - Tested with lDebug booted in qemu via grub2's - FreeDOS direct loading support, refer to - https://bitbucket.org/ecm/ldosboot + https://bitbucket.org/ecm/ldebug - - Reviewed-by: Daniel Kiper - -2018-02-23 H.J. Lu - - x86-64: Treat R_X86_64_PLT32 as R_X86_64_PC32 - Starting from binutils commit bd7ab16b4537788ad53521c45469a1bdae84ad4a: - - https://sourceware.org/git/?p=binutils-gdb.git;a=commit;h=bd7ab16b4537788ad53521c45469a1bdae84ad4a - - x86-64 assembler generates R_X86_64_PLT32, instead of R_X86_64_PC32, for - 32-bit PC-relative branches. Grub2 should treat R_X86_64_PLT32 as - R_X86_64_PC32. - - Reviewed-by: Daniel Kiper - -2018-02-14 Steve McIntyre - - Make grub-install check for errors from efibootmgr - Code is currently ignoring errors from efibootmgr, giving users - clearly bogus output like: - - Setting up grub-efi-amd64 (2.02~beta3-4) ... - Installing for x86_64-efi platform. - Could not delete variable: No space left on device - Could not prepare Boot variable: No space left on device - Installation finished. No error reported. - - and then potentially unbootable systems. If efibootmgr fails, grub-install - should know that and report it! - - We've been using similar patch in Debian now for some time, with no ill effects. - - Reviewed-by: Daniel Kiper - -2018-02-14 Eric Snowberg - - sparc64: fix OF path names for sun4v systems - Fix the Open Firmware (OF) path property for sun4v SPARC systems. - These platforms do not have a /sas/ within their path. Over time - different OF addressing schemes have been supported. There - is no generic addressing scheme that works across every HBA. - - It looks that this functionality will not work if you try to cross-install - SPARC GRUB2 binary using e.g. x86 grub-install. By default it should work. - However, we will also have other issues here, like lack of access to OF - firmware/paths, which make such configs unusable anyway. So, let's leave - this patch as is for time being. If somebody cares then he/she should fix - the issue(s) at some point. - - Reviewed-by: Daniel Kiper - -2018-02-14 Eric Snowberg - - sparc64: Add blocklist GPT support for SPARC - Add block-list GPT support for SPARC. The OBP "load" and "boot" methods - are partition aware and neither command can see the partition table. Also - neither command can address the entire physical disk. When the install - happens, grub generates the block-list entries based on the beginning of the - physical disk, not the beginning of the partition. This patch fixes the - block-list entries so they match what OBP expects during boot for a GPT disk. - - T5 and above now supports GPT as well as VTOC. - - This patch has been tested on T5-2 and newer SPARC systems. - - Reviewed-by: Daniel Kiper - -2018-01-29 Stefan Fritsch - - ahci: Improve error handling - Check the error bits in the interrupt status register. According to the - AHCI 1.2 spec, "Interrupt sources that are disabled (‘0’) are still - reflected in the status registers.", so this should work even though - grub uses polling - - This fixes the following problem on a Fujitsu E744 laptop: - - Sometimes there is a very long delay (up to several minutes) when - booting from hard disk. It seems accessing the DVD drive (which has no - disk inserted) sometimes fails with some errors, which leads to each - access being stalled until the 20s timeout triggers. This seems to - happen when grub is trying to read filesystem/partition data. - - The problem is that the command_issue bit that is checked in the loop is - only reset if the "HBA receives a FIS which clears the BSY, DRQ, and ERR - bits for the command", but the ERR bit is never cleared. Therefore - command_issue is never reset and grub waits for the timeout. - - The relevant bit in our case is the Task File Error Status (TFES), which - is equivalent to the ERR bit 0 in tfd. But this patch also checks - the other error bits except for the "Interface non-fatal error status" - bit. - - Reviewed-by: Daniel Kiper - -2018-01-29 dann frazier - - Keep the native terminal active when enabling gfxterm - grub-mkconfig will set GRUB_TERMINAL_OUTPUT to "gfxterm" unless the user - has overridden it. On EFI systems, this will stop output from going to the - default "console" terminal. When the EFI fw console is configured to output to - both serial and video, this will cause GRUB to only display on video - while - continuing to accept input from both video and serial. - - Instead of switching from "console" to "gfxterm", let's output to both. - - Reviewed-by: Daniel Kiper - -2017-12-06 Julien Grall - - arm64/xen: Add missing #address-cells and #size-cells properties - The properties #address-cells and #size-cells are used to know the - number of cells for ranges provided by "regs". If they don't exist, the - value are resp. 2 and 1. - - Currently, when multiboot nodes are created it is assumed that #address-cells - and #size-cells are exactly 2. However, they are never set by GRUB and - will result to later failure when the device-tree is generated by GRUB - or contain different values. - - To prevent this failure, create the both properties in the chosen nodes. - - Reviewed-by: Daniel Kiper - -2017-12-06 Jordan Glover - - grub-mkconfig: Fix detecting .sig files as system images - grub-mkconfig detects detached RSA signatures for kernel images used for - signature checking as valid images and adds them to grub.cfg as separate - menu entries. This patch adds .sig extension to common blacklist. - - Reviewed-by: Daniel Kiper - -2017-12-06 Eric Snowberg - - ieee1275: Fix segfault in grub-ofpathname - Reviewed-by: Daniel Kiper - -2017-11-28 Eric Snowberg - - grub-install: Fix memory leak - Reviewed-by: Daniel Kiper - -2017-11-24 Eric Snowberg - - ls: prevent double open - Prevent a double open. This can cause problems with some ieee1275 - devices, causing the system to hang. The double open can occur - as follows: - - grub_ls_list_files (char *dirname, int longlist, int all, int human) - dev = grub_device_open (device_name); - dev remains open while: - grub_normal_print_device_info (device_name); - dev = grub_device_open (name); - - Reviewed-by: Daniel Kiper - -2017-10-06 David E. Box - - tsc: Change default tsc calibration method to pmtimer on EFI systems - On efi systems, make pmtimer based tsc calibration the default over the - pit. This prevents Grub from hanging on Intel SoC systems that power gate - the pit. - - Reviewed-by: Daniel Kiper - -2017-09-07 Alexander Graf - - efi: Free malloc regions on exit - When we exit grub, we don't free all the memory that we allocated earlier - for our heap region. This can cause problems with setups where you try - to descend the boot order using "exit" entries, such as PXE -> HD boot - scenarios. - - Reviewed-by: Daniel Kiper - -2017-09-07 Alexander Graf - - efi: Move grub_reboot() into kernel - The reboot function calls machine_fini() and then reboots the system. - Currently it lives in lib/ which means it gets compiled into the - reboot module which lives on the heap. - - In a following patch, I want to free the heap on machine_fini() - though, so we would free the memory that the code is running in. That - obviously breaks with smarter UEFI implementations. - - So this patch moves it into the core. That way we ensure that all - code running after machine_fini() in the UEFI case is running from - memory that got allocated (and gets deallocated) by the UEFI core. - - Reviewed-by: Daniel Kiper - -2017-09-07 Konrad Rzeszutek Wilk - - Use grub-file to figure out whether multiboot2 should be used for Xen.gz - The multiboot2 is much more preferable than multiboot. Especiall - if booting under EFI where multiboot does not have the functionality - to pass ImageHandler. - - Reviewed-by: Daniel Kiper - -2017-09-07 Konrad Rzeszutek Wilk - - Fix util/grub.d/20_linux_xen.in: Add xen_boot command support for aarch64 - Commit d33045ce7ffcb7c1e4a60c14d5ca64b36e3c5abe introduced - the support for this, but it does not work under x86 (as it stops - 20_linux_xen from running). - - The 20_linux_xen is run under a shell and any exits from within it: - - (For example on x86): - + /usr/bin/grub2-file --is-arm64-efi /boot/xen-4.9.0.gz - [root@tst063 grub]# echo $? - 1 - - will result in 20_linux_xen exiting without continuing - and also causing grub2-mkconfig to stop processing. - - As in: - - [root@tst063 grub]# ./grub-mkconfig | tail - Generating grub configuration file ... - Found linux image: /boot/vmlinuz-4.13.0-0.rc5.git1.1.fc27.x86_64 - Found initrd image: /boot/initramfs-4.13.0-0.rc5.git1.1.fc27.x86_64.img - Found linux image: /boot/vmlinuz-0-rescue-ec082ee24aea41b9b16aca52a6d10cc2 - Found initrd image: /boot/initramfs-0-rescue-ec082ee24aea41b9b16aca52a6d10cc2.img - echo 'Loading Linux 0-rescue-ec082ee24aea41b9b16aca52a6d10cc2 ...' - linux /vmlinuz-0-rescue-ec082ee24aea41b9b16aca52a6d10cc2 root=/dev/mapper/fedora_tst063-root ro single - echo 'Loading initial ramdisk ...' - initrd /initramfs-0-rescue-ec082ee24aea41b9b16aca52a6d10cc2.img - } - } - - ### END /usr/local/etc/grub.d/10_linux ### - - ### BEGIN /usr/local/etc/grub.d/20_linux_xen ### - - root@tst063 grub]# - - And no more. - - This patch wraps the invocation of grub-file to be a in subshell - and to process the return value in a conditional. That fixes - the issue. - - RH-BZ 1486002: grub2-mkconfig does not work if xen.gz is installed. - - CC: Fu Wei - Reviewed-by: Daniel Kiper - -2017-09-07 Vladimir Serbinenko - - Fix compilation for x86_64-efi. - -2017-09-05 Vladimir Serbinenko - - Add a file missing in multiboot2 commit. - -2017-08-30 Vladimir Serbinenko - - gzio: fix unaligned access - - grub-fs-tester: Fix bashism - -2017-08-30 Vladimir Serbinenko - - Regenerate checksum.h with newer unifont. - Old link is broken. New unifont is - http://ftp.de.debian.org/debian/pool/main/u/unifont/xfonts-unifont_9.0.06-2_all.deb - - printf_unit_test: Disable Wformat-truncation on GCC >= 7 - We intentionally pass NULL as argument to format, hence disable the warning. - - qemu, coreboot, multiboot: Change linking address to 0x9000. - It's common for distros to use a defective ld which links at 0x9000. Instead - of fighting it, just move link target to 0x9000. - -2017-08-30 Stefan Fritsch - - Implement checksum verification for gunzip - This implements the crc32 check for the gzip format. Support for zlib's - adler checksum is not included, yet. - -2017-08-30 Vladimir Serbinenko - - xfs: Don't attempt to iterate over empty directory. - Reported by: Tuomas Tynkkynen - -2017-08-30 Patrick Steinhardt - - unix exec: avoid atexit handlers when child exits - The `grub_util_exec_redirect_all` helper function can be used to - spawn an executable and redirect its output to some files. After calling - `fork()`, the parent will wait for the child to terminate with - `waitpid()` while the child prepares its file descriptors, environment - and finally calls `execvp()`. If something in the children's setup - fails, it will stop by calling `exit(127)`. - - Calling `exit()` will cause any function registered via `atexit()` to be - executed, which is usually the wrong thing to do in a child. And - actually, one can easily observe faulty behaviour on musl-based systems - without modprobe(8) installed: executing `grub-install --help` will call - `grub_util_exec_redirect_all` with "modprobe", which obviously fails if - modprobe(8) is not installed. Due to the child now exiting and invoking - the `atexit()` handlers, it will clean up some data structures of the - parent and cause it to be deadlocked in the `waitpid()` syscall. - - The issue can easily be fixed by calling `_exit(127)` instead, which is - especially designed to be called when the atexit-handlers should not be - executed. - -2017-08-30 Vladimir Serbinenko - - arc: Do not create spurious variable grub_arc_memory_type_t. - -2017-08-14 Xuan Guo - - Set have_exec to y on cygwin so we have grub_mkrescue. - -2017-08-14 Vladimir Serbinenko - - enforcing fixup - - multiboot fixup - - linux fixup - - yylex: Explicilty cast fprintf to void. - It's needed to avoid warning on recent GCC. - - genmoddep: Check that no modules provide the same symbol. - The semantics of 2 modules providing the same symbol are undefined. So - ensure that it doesn't happen. - - Fix symbols appearing in several modules in linux*. - If same symbol is provided by 2 modules its semantics are undefined. - Avoid this by depending rather than double-including files. - -2017-08-14 Vladimir Serbinenko - - multiboot: disentangle multiboot and multiboot2. - Previously we had multiboot and multiboot2 declaring the same symbols. - This can potentially lead to aliasing and strange behaviours when e.g. - module instead of module2 is used with multiboot2. - - Bug: #51137 - -2017-08-14 Vladimir Serbinenko - - hdparm: Depend on hexdump rather than having a second copy of hexdump. - - grub.texi: Fix typo - Reported by: Ori Avtalion - -2017-08-07 Pete Batard - - io: add a GRUB_GZ prefix to gzio specific defines - * This is done to avoid a conflict with a PACKED define in the EDK2 - - core: use GRUB_TERM_ definitions when handling term characters - * Also use hex value for GRUB_TERM_ESC as '\e' is not in the C standard and is not understood by some compilers - -2017-08-07 Leif Lindholm - - efi: change heap allocation type to GRUB_EFI_LOADER_CODE - With upcoming changes to EDK2, allocations of type EFI_LOADER_DATA may - not return regions with execute ability. Since modules are loaded onto - the heap, change the heap allocation type to GRUB_EFI_LOADER_CODE in - order to permit execution on systems with this feature enabled. - - Closes: 50420 - -2017-08-07 Leif Lindholm - - arm64 linux loader: improve type portability - In preparation for turning this into a common loader for 32-bit and 64-bit - platforms, ensure the code will compile cleanly for either. - -2017-08-07 Leif Lindholm - - efi: Add GRUB_PE32_MAGIC definition - Add a generic GRUB_PE32_MAGIC definition for the PE 'MZ' tag and delete - the existing one in arm64/linux.h. - - Update arm64 Linux loader to use this new definition. - -2017-08-07 Leif Lindholm - - efi: move fdt helper library - There is nothing ARM64 (or even ARM) specific about the efi fdt helper - library, which is used for locating or overriding a firmware-provided - devicetree in a UEFI system - so move it to loader/efi for reuse. - - Move the fdtload.h include file to grub/efi and update path to - efi/fdtload.h in source code referring to it. - -2017-08-07 Vladimir Serbinenko - - Remove grub_efi_allocate_pages. - grub_efi_allocate_pages Essentially does 2 unrelated things: - * Allocate at fixed address. - * Allocate at any address. - - To switch between 2 different functions it uses address == 0 as magic - value which is wrong as 0 is a perfectly valid fixed adress to allocate at. - -2017-08-07 Leif Lindholm - - efi: refactor grub_efi_allocate_pages - Expose a new function, grub_efi_allocate_pages_real(), making it possible - to specify allocation type and memory type as supported by the UEFI - AllocatePages boot service. - - Make grub_efi_allocate_pages() a consumer of the new function, - maintaining its old functionality. - - Also delete some left-around #if 1/#else blocks in the affected - functions. - -2017-08-07 Vladimir Serbinenko - - Fail if xorriso failed. - If xorriso failed most likely we didn't generate a meaningful image. - - mkrescue: Check xorriso presence before doing anything else. - mkrescue can't do anything useful without xorriso, so abort early if it's - not available. - -2017-08-07 Pali Rohár - - * grub-core/fs/udf.c: Add support for UUID - Use same algorithm as in libblkid from util-linux v2.30. - - 1. Take first 16 bytes from UTF-8 encoded string of VolumeSetIdentifier - 2. If all bytes are hexadecimal digits, convert to lowercase and use as UUID - 3. If first 8 bytes are not all hexadecimal digits, convert those 8 bytes - to their hexadecimal representation, resulting in 16 bytes for UUID - 4. Otherwise, compose UUID from two parts: - 1. part: converted first 8 bytes (which are hexadecimal digits) to lowercase - 2. part: encoded following 4 bytes to their hexadecimal representation (16 bytes) - - So UUID would always have 16 hexadecimal digits in lowercase variant. - - According to UDF specification, first 16 Unicode characters of - VolumeSetIdentifier should be unique value and first 8 should be - hexadecimal characters. - - In most cases all 16 characters are hexadecimal, but e.g. MS Windows - format.exe set only first 8 as hexadecimal and remaining as fixed - (non-unique) which violates specification. - -2017-08-07 Pali Rohár - - udf: Fix reading label, lvd.ident is dstring - UDF dstring has stored length in the last byte of buffer. Therefore last - byte is not part of recorded characters. And empty string in dstring is - encoded as empty buffer, including first byte (compression id). - -2017-08-07 Pete Batard - - zfs: remove size_t typedef and use grub_size_t instead - * Prevents some toolchains from issuing a warning on size_t redef. - -2017-08-03 Rob Clark - - Fix a segfault in lsefi - when protocols_per_handle returns error, we can't use the pointers we - passed to it, and that includes trusting num_protocols. - - Reviewed-by: Daniel Kiper - -2017-07-10 Vladimir Serbinenko - - fdt: silence clang warning. - -2017-07-09 Vladimir Serbinenko - - arm-efi: Fix compilation - -2017-07-09 AppChecker - - crypto: Fix use after free. - Reported by: AppChecker - Transformed to patch by: Satish Govindarajan - -2017-07-09 Vladimir Serbinenko - - ehci: Fix compilation on i386 - -2017-07-09 phcoder - - cache: Fix compilation for ppc, sparc and arm64 - - ehci: Fix compilation for amd64 - -2017-06-29 Eric Biggers - - Allow GRUB to mount ext2/3/4 filesystems that have the encryption feature. - On such a filesystem, inodes may have EXT4_ENCRYPT_FLAG set. - For a regular file, this means its contents are encrypted; for a - directory, this means the filenames in its directory entries are - encrypted; and for a symlink, this means its target is encrypted. Since - GRUB cannot decrypt encrypted contents or filenames, just issue an error - if it would need to do so. This is sufficient to allow unencrypted boot - files to co-exist with encrypted files elsewhere on the filesystem. - - (Note that encrypted regular files and symlinks will not normally be - encountered outside an encrypted directory; however, it's possible via - hard links, so they still need to be handled.) - - Tested by booting from an ext4 /boot partition on which I had run - 'tune2fs -O encrypt'. I also verified that the expected error messages - are printed when trying to access encrypted directories, files, and - symlinks from the GRUB command line. Also ran 'sudo ./grub-fs-tester - ext4_encrypt'; note that this requires e2fsprogs v1.43+ and Linux v4.1+. - -2017-05-29 Eric Snowberg - - sparc64: Don't use devspec to determine the OBP path - Don't use devspec to determine the OBP path on SPARC hardware. Within all - versions of Linux on SPARC, the devspec returns one of three values: - "none", "vnet-port", or "vdisk". Unlike on PPC, none of these values - are useful in determining the OBP path. - - Before this patch grub-ofpathname always returned the wrong value - for a virtual disk. For example: - - % grub-ofpathname /dev/vdiskc2 - vdisk/disk@2:b - - After this patch it now returns the correct value: - - % grub-ofpathname /dev/vdiskc2 - /virtual-devices@100/channel-devices@200/disk@2:b - - Orabug: 24459765 - - Reviewed-by: Daniel Kiper - -2017-05-18 Fu Wei - - arm64: Update the introduction of Xen boot commands in docs/grub.texi - delete: xen_linux, xen_initrd, xen_xsm - add: xen_module - - This update bases on - commit 0edd750e50698854068358ea53528100a9192902 - Author: Vladimir Serbinenko - Date: Fri Jan 22 10:18:47 2016 +0100 - - xen_boot: Remove obsolete module type distinctions. - - Also bases on the module loading mechanism of Xen code: - 488c2a8 docs/arm64: clarify the documention for loading XSM support - 67831c4 docs/arm64: update the documentation for loading XSM support - ca32012 xen/arm64: check XSM Magic from the second unknown module. - - Reviewed-by: Julien Grall - Reviewed-by: Daniel Kiper - -2017-05-18 Fu Wei - - util/grub.d/20_linux_xen.in: Add xen_boot command support for aarch64 - This patch adds the support of xen_boot command for aarch64: - xen_hypervisor - xen_module - These two commands are only for aarch64, since it has its own protocol and - commands to boot xen hypervisor and Dom0, but not multiboot. - - For other architectures, they are still using multiboot and module - commands. - - Reviewed-by: Daniel Kiper - -2017-05-18 Fu Wei - - arm64: Add "--nounzip" option support in xen_module command - This patch adds "--nounzip" option support in order to - be compatible with the module command of multiboot on other architecture, - by this way we can simplify grub-mkconfig support code. - - This patch also allow us to use zip compressed module(like Linux kernel - for Dom0). - - Reviewed-by: Daniel Kiper - -2017-05-18 Julien Grall - - arm64/xen_boot: Fix Xen boot using GRUB2 on AARCH64 - Xen is currently crashing because of malformed compatible property for - the boot module. This is because the property string is not - null-terminated as requested by the ePAR spec. - - Tested-by: Fu Wei - Reviewed-by: Daniel Kiper - -2017-05-18 Eric Snowberg - - sparc64: Close cdboot ihandle - The ihandle is left open with a cd-core image. This will cause a delay - booting grub from a virtual cdrom in a LDOM. It will also cause problems - as Linux boots, since it expects the ihandle to be closed during init. - - Orabug: 25911275 - - Reviewed-by: Daniel Kiper - -2017-05-09 Vladimir Serbinenko - - at_keyboard: Fix falco chromebook case. - EC is slow, so we need few delays for it to toggle the bits correctly. - - Command to enable clock and keyboard were not sent. - -2017-05-09 Julius Werner - - coreboot: Changed cbmemc to support updated console format from coreboot. - -2017-05-09 Vladimir Serbinenko - - Missing parts of previous commit - - arm_coreboot: Add Chromebook keyboard driver. - - rk3288_spi: Add SPI driver - - fdtbus: Add ability to send/receive messages on parent busses. - - Fix bug on FDT nodes with compatible property - -2017-05-08 Vladimir Serbinenko - - arm_coreboot: Support EHCI. - - ehci: Split core code from PCI part. - On ARM often EHCI is present without PCI and just declared in device - tree. So splitcore from PCI part. - - arm_coreboot: Support DMA. - This is needed to support USB and some other busses. - - arm_coreboot: Support loading linux images. - - arm_coreboot: Support grub-mkstandalone. - - arm_coreboot: Support keyboard for vexpress. - - at_keyboard: Split protocol from controller code. - On vexpress controller is different but protocol is the same, so reuse the - code. - - arm-coreboot: Export FDT routines. - We need to use them from modules as well. - - arm-coreboot: Support for vexpress timer. - - Add support for device-tree-based drivers. - - arm-coreboot: Start new port. - - Rename uboot/datetime to dummy/datetime. - It's just a stub and is not UBoot-specific. - - Rename uboot/halt.c to dummy/halt.c. - It's not U-Boot specific and it's a stub. - - coreboot: Split parts that are platform-independent. - We currently assume that coreboot is always i386, it's no longer the case, - so split i386-coreboot parts from generic coreboot code. - - Refactor arm-uboot code to make it genereic. - arm-coreboot startup code can be very similar to arm-uboot but current code has - U-Boot specific references. So split U-Boot part from generic part. - - mkimage: Pass layout to mkimage_generate_elfXX rather than some fields. - This allows easier extension of this function without having too long of - arguments list. - -2017-05-03 Paulo Flabiano Smorigo - - Add Virtual LAN support. - This patch adds support for virtual LAN (VLAN) tagging. VLAN tagging allows - multiple VLANs in a bridged network to share the same physical network link - but maintain isolation: - - http://en.wikipedia.org/wiki/IEEE_802.1Q - - * grub-core/net/ethernet.c: Add check, get, and set vlan tag id. - * grub-core/net/drivers/ieee1275/ofnet.c: Get vlan tag id from bootargs. - * grub-core/net/arp.c: Add check. - * grub-core/net/ip.c: Likewise. - * include/grub/net/arp.h: Add vlantag attribute. - * include/grub/net/ip.h: Likewise. - -2017-05-03 Vladimir Serbinenko - - strtoull: Fix behaviour on chars between '9' and 'a'. - Reported by: Aaron Miller - - Add strtoull test. - - Fix shebang for termux. - Termux doesn't have a /bin/sh. So we needto use $SHELL. - Keep /bin/sh as much as possible. - - Add termux path to dict. - - po: Use @SHELL@ rather than /bin/sh. - /bin/sh might not exist. - - Use $(SHELL) rather than /bin/sh. - /bin/sh doesn't exist under termux. - - Support lseek64. - Android doesn't have 64-bit off_t, so use off64_t instead. - - Don't retrieve fstime when it's not useful. - - support busybox date. - Busybox date doesn't understand weekdays in -d input, - so strip them beforehand. - - fs-tester: make sh-compatible - - Remove bashisms from tests. - Those tests don't actually need bash. Just use common shebang. - - Bump version to 2.03 - -2017-04-25 Vladimir Serbinenko - - Increase version to 2.02. - -2017-04-12 Vladimir Serbinenko - - Fix remaining cases of gcc 7 fallthrough warning. - They are all intended, so just add the relevant comment. - -2017-04-04 Andrei Borzenkov - - Add gnulib-fix-gcc7-fallthrough.diff - As long as the code is not upstream, add it as explicit patch for the - case of gnulib refresh. - -2017-04-04 Andrei Borzenkov - - i386, x86_64, ppc: fix switch fallthrough cases with GCC7 - In util/getroot and efidisk slightly modify exitsing comment to mostly - retain it but still make GCC7 compliant with respect to fall through - annotation. - - In grub-core/lib/xzembed/xz_dec_lzma2.c it adds same comments as - upstream. - - In grub-core/tests/setjmp_tets.c declare functions as "noreturn" to - suppress GCC7 warning. - - In grub-core/gnulib/regexec.c use new __attribute__, because existing - annotation is not recognized by GCC7 parser (which requires that comment - immediately precedes case statement). - - Otherwise add FALLTHROUGH comment. - - Closes: 50598 - -2017-04-04 Andrei Borzenkov - - btrfs: avoid "used uninitialized" error with GCC7 - sblock was local and so considered new variable on every loop - iteration. - - Closes: 50597 - -2017-04-02 Andrei Borzenkov - - acpi: add missing efi_call wrapper to acpi command - Fixed loading of ACPI tables on EFI (side effect was apparent memory - corruption ranging from unpredictable behavior to system reset). - - Reported by Nando Eva - -2017-03-15 Vladimir Serbinenko - - Increment version to GRUB 2.02~rc2. - - Use core2duo for bootcheck test on 64-bit EFI. - Obviously pentium2 can't run efi64. - -2017-03-14 Andrei Borzenkov - - efi: skip iPXE block device. - iPXE adds Simple File System Protocol to loaded image handle, as side - effect it also adds Block IO protocol (according to comments, to work - around some bugs in EDK2). GRUB assumes that every device with Block IO - is disk and skips network initialization entirely. But iPXE Block IO - implementation is just a stub which always fails for every operation - so cannot be used. Attempt to detect and skip such devices. - - We are using media ID which iPXE sets to "iPXE" and block IO size in - hope that no real device would announce 1B block ... - - Closes: 50518 - -2017-03-05 phcoder - - xen: Fix wrong register in relocator. - This fixes chainloading of some GRUB variants. - -2017-02-27 Vladimir Serbinenko - - video_fb: Fix blue collor if using unoptimized blitter. - when unmapping the color what matters is the mode of source, not target. - - legacy_initrd: Strip any additional arguments to initrd. - -2017-02-26 Andrei Borzenkov - - grub-fs-tester: improve squash4 tests - 1. Make sure files are not multiple of block size. This will ensure tail packing - for squash4 and may also trigger more codes paths in other filesystems. - - 2. Call mksquashfs with -always-use-fragments to force tail packing. - -2017-02-25 Andrei Borzenkov - - efi: strip off final NULL from File Path in grub_efi_get_filename - UEFI 2.6 9.3.6.4 File Path Media Device Path says that Path Name is - "A NULL-terminated Path string including directory and file names". - - Strip final NULL from Path Name in each File Path node when constructing - full path. To be on safe side, strip all of them. - - Fixes failure chainloading grub from grub, when loaded grub truncates - image path and does not find its grub.cfg. - - https://bugzilla.opensuse.org/show_bug.cgi?id=1026344 - - This was triggered by commit ce95549cc54b5d6f494608a7c390dba3aab4fba7; - before it we built Path Name without trailing NULL, and apparently all - other bootloaders use single File Path node, thus not exposing this bug. - -2017-02-24 Andrei Borzenkov - - squash4: fix handling of fragments and sparse files - 1. Do not assume block list and fragment are mutually exclusive. Squash - can pack file tail as fragment (unless -no-fragments is specified); so - check read offset and read either from block list or from fragments as - appropriate. - - 2. Support sparse files with zero blocks. - - 3. Fix fragment read - frag.offset is absolute fragment position, - not offset relative to ino.chunk. - - Reported and tested by Carlo Caione - -2017-02-22 Vladimir Serbinenko - - Whitelist sparc64-ieee1275 as having no video modules. - ieee1275_fb is not built on sparc64 due to virtual address issues. - -2017-02-12 Andrei Borzenkov - - script: fix double free in lexer - yylex_destroy() already frees scanner. - - Found by: Coverity scan. - CID: 176636 - -2017-02-07 Vladimir Serbinenko - - xen: Fix parsing of XZ kernel. - In case of xz, the uncompressed size is appended to xz data which confuses - our xz decompressor. Trim it. - -2017-02-07 Vladimir Serbinenko - - xen: Fix handling of GRUB chainloading. - In case of GRUB we put remapper after domain pages and not at 0x0. - In this case we use max_addr to put remapper. Unfortunately we increment - max_addr as well in this case resulting in virt mapping mapping page - at old max_addr and trying to boot using new max_addr. - - Closes 46014. - -2017-02-04 Vladimir Serbinenko - - linguas: Don't skip ko.po. - Translation project doesn't require copyright disclaimers. They're independant - from us. They're responsible for their copyright story. - -2017-02-03 Vladimir Serbinenko - - Fix truncated checksum.h. - - Regenerate checksums.h - Screenshots contain version, so we need new checksums. - - Release 2.02-rc1. - - Fix mingw compilation. - -2017-02-03 Daniel Kahn Gillmor - - documentation: Clarify documentation for special environment variable "default". - The current documentation for the special environment variable - "default" is confusing and unclear. This patch attempts to clean it - up. - - In particular, the current documentation refers to the "number or - title", but then in the example it gives, the menu entries and - submenus all have numbers *in* their title; furthermore, there is no - example given about how to choose the number, or any indication about - whether counting is zero-indexed or 1-indexed. - - Having a cleaner example and presenting all variants (numeric, title, - and id) should make it clearer to the user. - -2017-02-03 Vladimir Serbinenko - - Avoid causing kernel oops in nilfs2 test. - 1024-byte and 2048-byte blocks don't really work with some kernels, skip - them as we don't want any oops'es. - - btrfs: Shorten label by one character. - mkfs.btrfs imposes a slightly lower limit than would be possible in btrfs. - -2017-02-02 Vladimir Serbinenko - - grub-fs-tester: Fix mkudffs invocation. - With current invocation order of arguments is wrong and path is hardcoded. - - grub-fs-tester: Fix fat test. - mkfs.vfat ignores -S when invoked on a disk, including loopback device, - so do an mkfs on underlying image. - -2017-02-02 Daniel Kiper - - i386/relocator: Align stack in grub_relocator64_efi relocator - Unified Extensible Firmware Interface Specification, Version 2.6, - section 2.3.4, x64 Platforms, boot services, says among others: - The stack must be 16-byte aligned. So, do it. Otherwise OS may - boot only by chance as it happens right now. - -2017-02-02 Vladimir Serbinenko - - i386-ieee1275: Add missing bootcheck target. - - bootcheck-linux-i386: Use -cpu pentium2. - Most modern kernels are compiled for i686, so use -cpu pentium2 - to avoid spurious failures. - - Use -fPIC with arm64 with clang. - Currently it doesn't work either way but with -fPIC it should work once - clang bug is fixed. - - INSTALL: Fix mention of thumb-clang. - - Fix thumb compilation with clang. - According to EABI only STT_FUNC has convention of lowest bit indicating - execution mode. R_THM_{JUMP,CALL}* relocations are assumed to be pointing - to thumb mode unless they use STT_FUNC. - -2017-02-01 Vladimir Serbinenko - - Add missing strtoull_test.c - It was forgotten in my local directory. - - arm64: Add support for GOT and PCREL32 relocations. - - mkimage: Fix memory leak. - - arm/arm64: Fix improper use of start address. - It was used instead of loading address of current section or of entire buffer. - - ia64: Fix iterator for relocation entries. - Don't assume relocation entry size and use sh_entsize properly. - - arm: Fix trampoline generation. - We used the wrong pointer in this case. It worked only by accident. - - Fix bootcheck-related files compilation. - We need -static as otherwise linker will set interpreter field and ld.so - is not available on our initrd's. - Strip all sections we don't need on binary tests. - -2017-01-31 Vladimir Serbinenko - - Regenerate checksum.h. - Screenshots checked. - Using unifont from http://ftp.us.debian.org/debian/pool/main/u/unifont/xfonts-unifont_7.0.06-1_all.deb. - - grub-mkfont: Remove leftover debug statement. - - charset: Trim away RLM and LRM. - They are not visible but would otherwise end up as [LRM] or [RLM] squares - with some fonts. - - gfxterm: Fix clearing of cursor. - If ascent is bigger than height - 2, then we draw over character box but then - to clear cursor we only draw over character box. So trim ascent if necessarry. - - ia64: Add support for R_IA64_GPREL64I. - Recent GCC generates those relocations, so we need to support them. - -2017-01-30 Vladimir Serbinenko - - grub-module-verifier: Add mips to all_video whitelist. - On MIPS video is compiled-in. So all_video is empty. Whitelist it. - - Fix -nopie/-nopie check. - We don't use lgcc_s but missing lgcc_s or another library cause test to fail. - So use -nostdlib. - We need to use -Werror to avoid warning-generated case to be accepted. - Clang uses -nopie rather than -no-pie. Check both and use whichever one works. - Additionally android clang passes -pie to the linker even though it doesn't - define __PIE__. So if compilation without no-pie logic fails add -nopie/-no-pie - even if __PIE__ is not defined. - - grub-module-verifier: Ignore all_video emptiness on xen. - It's intentional that it's empty when no video modules - are available. - -2017-01-28 Vladimir Serbinenko - - Support arm clang 3.8 amd later. - clang 3.8 and later doesn't support -mllvm -use-arm-movt=0 - whereas older clang doesn't know -mno-movt. So use - -mno-movt whenever possible and fallback to mllvm variant. - -2017-01-27 Carlo Caione - - exfat: Support files over 4GiB - file size in grub_fat_data was 32-bit on exfat. - -2017-01-27 Vladimir Serbinenko - - Ensure that grub_reboot doesn't return on emu. - Use grub_fatal if longjmp fails. - - grub_reboot is marked as noreturn so return would cause - a crash. - -2017-01-27 Vladimir Serbinenko - - grub-shell: skip font copying when no font is available. - - Don't use -mlong-calls on arm. - We don't really need it and it's flaky and creates - bogus symbols with clang. - - configure: Disable movw/movt with clang. - Those relocations are not compatible with PE and also - not compatible with custom uboot relocator. - Disable them. - - grub-fs-tester: Delete directory once we're done. - - grub-fs-tester: Accomodate for slower systems. - fstime can be more different with xz squashfs. - Allow difference up to 3 seconds. - This code is ugly now but rewriting it now is not on the - table. - - grub-fs-tester: Accomodate for testing in proot containers. - proot creates hidden files with .proot prefix and name - derived from real file name. So decrease file name length - and path depth. For some reason depth 85 also results in - undeleteable directory, so use 84 instead of 85. - -2017-01-24 Andrei Borzenkov - - osdep/linux: handle autofs entries in /proc/self/mountinfo - These entries have placeholder for device name and so are useless for our - purpose. grub failed with something like - - grub-install: error: failed to get canonical path of `systemd-1'. - - When we see autofs entry, record it (to keep parent-child relationship) but - continue to look for real mount. If it is found, we process it as usual. If - only autofs entry exists, attempt to trigger mount by opening mount point - and retry. Mount point itself is then kept open to avoid timeout. - - Recent systemd is by default using automount for /boot/efi so this should - become more popular problem on EFI systems. - - Closes: 49942 - -2017-01-08 Andrei Borzenkov - - linux: fix "vga=XX deprecated" warning for text mode - Arguments were in reverse order which resulted in - - text is deprecated. Use set gfxpayload=vga=0 before linux command instead. - -2016-12-22 Andrei Borzenkov - - configure: fix check for sys/sysmacros.h under glibc 2.25+ - glibc 2.25 still includes sys/sysmacros.h in sys/types.h but also emits - deprecation warning. So test for sys/types.h succeeds in configure but later - compilation fails because we use -Werror by default. - - While this is fixed in current autoconf GIT, we really cannot force everyone - to use bleeding edge (that is not even released right now). So run test under - -Werror as well to force proper detection. - - This should have no impact on autoconf 2.70+ as AC_HEADER_MAJOR in this version - simply checks for header existence. - - Reported and tested by Khem Raj - -2016-12-22 Michael Chang - - Fix fwpath in efi netboot - The path returned by grub_efi_net_config has already been stripped for the - directory part extracted from cached bootp packet. We should just return the - result to avoild it be stripped again. - - It fixed the problem that grub.efi as NBP image always looking for grub.cfg and - platform directory in upper folder rather than current one it gets loaded while - $prefix is empty. The behavior is inconsistent with other architecture and how - we would expect empty $prefix going to be in general. - - The only exception to the general rule of empty $prefix is that when loaded - from platform directory itself, the platform part is stripped thus upper folder - is used for looking up files. It meets the case for how grub-mknetdir lay out - the files under tftp root directory, but also hide away this issue to be - identified as it appears to be just works. - - Also fix possible memory leak by moving grub_efi_get_filename() call after - grub_efi_net_config(). - -2016-12-15 Andrei Borzenkov - - efi: properly terminate filepath with NULL in chainloader - EFI File Path Media Device Path is defined as NULL terminated string; - but chainloader built file paths without final NULL. This caused error - with Secure Boot and Linux Foundation PreLoader on Acer with InsydeH20 BIOS. - Apparently firmware failed verification with EFI_INVALID_PARAMETER which is - considered fatal error by PreLoader. - - Reported and tested by Giovanni Santini - -2016-12-14 Magnus Granberg - - configure: add check for -no-pie if the compiler default to -fPIE - When Grub is compile with gcc 6.1 that have --enable-defult-pie set. - It fail with. - -ffreestanding -m32 -Wl,-melf_i386 -Wl,--build-id=none -nostdlib -Wl,-N -Wl,-r,-d - - o trig.module trig_module-trigtables.o - grep 'MARKER' gcry_whirlpool.marker.new > gcry_whirlpool.marker; rm -f - gcry_whirlpool.marker.new - /usr/lib/gcc/x86_64-pc-linux-gnu/6.1.0/../../../../x86_64-pc-linux-gnu/bin/ld: -r and - - shared may not be used together - collect2: error: ld returned 1 exit status - Makefile:26993: recipe for target 'trig.module' failed - - Check that compiler supports -no-pie and add it to linker flags. - -2016-12-14 Stanislav Kholmanskikh - - ofnet: implement the receive buffer - get_card_packet() from ofnet.c allocates a netbuff based on the device's MTU: - - nb = grub_netbuff_alloc (dev->mtu + 64 + 2); - - In the case when the MTU is large, and the received packet is - relatively small, this leads to allocation of significantly more memory, - than it's required. An example could be transmission of TFTP packets - with 0x400 blksize via a network card with 0x10000 MTU. - - This patch implements a per-card receive buffer in a way similar to efinet.c, - and makes get_card_packet() allocate a netbuff of the received data size. - - Reviewed-by: Daniel Kiper - -2016-12-14 Stanislav Kholmanskikh - - ofnet: move the allocation of the transmit buffer into a function - In the current code search_net_devices() uses the "alloc-mem" command - from the IEEE1275 User Interface for allocation of the transmit buffer - for the case when GRUB_IEEE1275_FLAG_VIRT_TO_REAL_BROKEN is set. - - I don't have hardware where this flag is set to verify if this - workaround is still needed. However, further changes to ofnet will - require to execute this workaround one more time. Therefore, to - avoid possible duplication of code I'm moving this piece of - code into a function. - - Reviewed-by: Daniel Kiper - -2016-11-24 Alexander Graf - - efi: Move fdt helper into own file - We only support FDT files with EFI on arm and arm64 systems, not - on x86. So move the helper that finds a prepopulated FDT UUID - into its own file and only build it for architectures where it - also gets called. - - Reviewed-by: Daniel Kiper - -2016-11-22 Andrei Borzenkov - - NEWS updates - -2016-11-22 Andrei Borzenkov - - bootp: export next server IP as environment variable - Network boot autoconfiguration sets default server to next server IP - (siaddr) from BOOTP/DHCP reply, but manual configuration using net_bootp - exports only server name. Unfortunately semantic of server name is not - clearly defined. BOOTP RFC 951 defines it only for client request, and - DHCP RFC 1541 only mentions it, without any implied usage. It looks like - this field is mostly empty in server replies. - - Export next server IP as net__next_server variable. This allows - grub configuration script to set $root/$prefix based on information obtained - by net_bootp. - - Reported and tested by: Nikunj A Dadhania - Cc: nikunj@linux.vnet.ibm.com - - v2: change variable name to net__next_server as discussed on the list - -2016-11-22 Aaro Koskinen - - configure.ac: don't require build time grub-mkfont on powerpc-ieee1275 - Don't require build time grub-mkfont on powerpc-ieee1275. - -2016-11-14 Dirk Mueller - - grub-mknetdir: Add support for ARM64 EFI - -2016-11-12 Joonas Lahtinen - - .gitignore: Add grub-core/build-grub-module-verifier - -2016-11-10 Alexander Graf - - arm efi: Use fdt from firmware when available - If EFI is nice enough to pass us an FDT using configuration tables on 32bit - ARM, we should really try and make use of it. - - Reviewed-by: Daniel Kiper - -2016-11-10 Alexander Graf - - arm64: Move firmware fdt search into global function - Searching for a device tree that EFI passes to us via configuration tables - is nothing architecture specific. Move it into generic code. - - Reviewed-by: Daniel Kiper - -2016-11-05 Corey Hickey - - fix detection of non-LUKS CRYPT - grub_util_get_dm_abstraction() does a string comparison of insufficient - length. When using a UUID such as "CRYPT-PLAIN-sda6_crypt", the function - returns GRUB_DEV_ABSTRACTION_LUKS. - - This results in the error: - ./grub-probe: error: disk `cryptouuid/sda6_crypt' not found. - - This appears to be a copy/paste error introduced in: - a10e7a5a8918bea6e2632055129fa9b516fe965a - - The bug was (apparently) latent until revealed by: - 3bca85b4184f74995a7cc2791e432173fde26d34 - -2016-10-27 Juergen Gross - - xen: add capability to load p2m list outside of kernel mapping - Modern pvops linux kernels support a p2m list not covered by the - kernel mapping. This capability is flagged by an elf-note specifying - the virtual address the kernel is expecting the p2m list to be mapped - to. - - In case the elf-note is set by the kernel don't place the p2m list - into the kernel mapping, but map it to the given address. This will - allow to support domains with larger memory, as the kernel mapping is - limited to 2GB and a domain with huge memory in the TB range will have - a p2m list larger than this. - - Reviewed-by: Daniel Kiper - -2016-10-27 Juergen Gross - - xen: modify page table construction - Modify the page table construction to allow multiple virtual regions - to be mapped. This is done as preparation for removing the p2m list - from the initial kernel mapping in order to support huge pv domains. - - This allows a cleaner approach for mapping the relocator page by - using this capability. - - The interface to the assembler level of the relocator has to be changed - in order to be able to process multiple page table areas. - - Reviewed-by: Daniel Kiper - -2016-10-27 Juergen Gross - - xen: add capability to load initrd outside of initial mapping - Modern pvops linux kernels support an initrd not covered by the initial - mapping. This capability is flagged by an elf-note. - - In case the elf-note is set by the kernel don't place the initrd into - the initial mapping. This will allow to load larger initrds and/or - support domains with larger memory, as the initial mapping is limited - to 2GB and it is containing the p2m list. - - Reviewed-by: Daniel Kiper - -2016-10-27 Juergen Gross - - xen: factor out allocation of page tables into separate function - Do the allocation of page tables in a separate function. This will - allow to do the allocation at different times of the boot preparations - depending on the features the kernel is supporting. - - Reviewed-by: Daniel Kiper - -2016-10-27 Juergen Gross - - xen: factor out allocation of special pages into separate function - Do the allocation of special pages (start info, console and xenbus - ring buffers) in a separate function. This will allow to do the - allocation at different times of the boot preparations depending on - the features the kernel is supporting. - - Reviewed-by: Daniel Kiper - -2016-10-27 Juergen Gross - - xen: factor out p2m list allocation into separate function - Do the p2m list allocation of the to be loaded kernel in a separate - function. This will allow doing the p2m list allocation at different - times of the boot preparations depending on the features the kernel - is supporting. - - While at this remove superfluous setting of first_p2m_pfn and - nr_p2m_frames as those are needed only in case of the p2m list not - being mapped by the initial kernel mapping. - - Reviewed-by: Daniel Kiper - -2016-10-27 Juergen Gross - - xen: synchronize xen header - Get actual version of include/xen/xen.h from the Xen repository in - order to be able to use constants defined there. - - Reviewed-by: Daniel Kiper - -2016-10-27 Juergen Gross - - xen: add elfnote.h to avoid using numbers instead of constants - Various features and parameters of a pv-kernel are specified via - elf notes in the kernel image. Those notes are part of the interface - between the Xen hypervisor and the kernel. - - Instead of using num,bers in the code when interpreting the elf notes - make use of the header supplied by Xen for that purpose. - - Reviewed-by: Daniel Kiper - -2016-10-27 Juergen Gross - - xen: reduce number of global variables in xen loader - The loader for xen paravirtualized environment is using lots of global - variables. Reduce the number by making them either local or by putting - them into a single state structure. - - Reviewed-by: Daniel Kiper - -2016-10-27 Juergen Gross - - xen: avoid memleaks on error - When loading a Xen pv-kernel avoid memory leaks in case of errors. - - Reviewed-by: Daniel Kiper - -2016-10-27 Juergen Gross - - xen: make xen loader callable multiple times - The loader for xen paravirtualized environment isn't callable multiple - times as it won't free any memory in case of failure. - - Call grub_relocator_unload() as other modules do it before allocating - a new relocator or when unloading the module. - - Reviewed-by: Daniel Kiper - -2016-10-27 Daniel Kiper - - multiboot2: Add support for relocatable images - Currently multiboot2 protocol loads image exactly at address specified in - ELF or multiboot2 header. This solution works quite well on legacy BIOS - platforms. It is possible because memory regions are placed at predictable - addresses (though I was not able to find any spec which says that it is - strong requirement, so, it looks that it is just a goodwill of hardware - designers). However, EFI platforms are more volatile. Even if required - memory regions live at specific addresses then they are sometimes simply - not free (e.g. used by boot/runtime services on Dell PowerEdge R820 and - OVMF). This means that you are not able to just set up final image - destination on build time. You have to provide method to relocate image - contents to real load address which is usually different than load address - specified in ELF and multiboot2 headers. - - This patch provides all needed machinery to do self relocation in image code. - First of all GRUB2 reads min_addr (min. load addr), max_addr (max. load addr), - align (required image alignment), preference (it says which memory regions are - preferred by image, e.g. none, low, high) from multiboot_header_tag_relocatable - header tag contained in binary (at this stage load addresses from multiboot2 - and/or ELF headers are ignored). Later loader tries to fulfill request (not only - that one) and if it succeeds then it informs image about real load address via - multiboot_tag_load_base_addr tag. At this stage GRUB2 role is finished. Starting - from now executable must cope with relocations itself using whole static and - dynamic knowledge provided by boot loader. - - This patch does not provide functionality which could do relocations using - ELF relocation data. However, I was asked by Konrad Rzeszutek Wilk and Vladimir - 'phcoder' Serbinenko to investigate that thing. It looks that relevant machinery - could be added to existing code (including this patch) without huge effort. - Additionally, ELF relocation could live in parallel with self relocation provided - by this patch. However, during research I realized that first of all we should - establish the details how ELF relocatable image should look like and how it should - be build. At least to build proper test/example files. - - So, this patch just provides support for self relocatable images. If ELF file - with relocs is loaded then GRUB2 complains loudly and ignores it. Support for - such files will be added later. - - This patch was tested with Xen image which uses that functionality. However, this Xen - feature is still under development and new patchset will be released in about 2-3 weeks. - - Reviewed-by: Vladimir Serbinenko - -2016-10-27 Daniel Kiper - - multiboot2: Do not pass memory maps to image if EFI boot services are enabled - If image requested EFI boot services then skip multiboot2 memory maps. - Main reason for not providing maps is because they will likely be - invalid. We do a few allocations after filling them, e.g. for relocator - needs. Usually we do not care as we would have finished boot services. - If we keep boot services then it is easier/safer to not provide maps. - However, if image needs memory maps and they are not provided by bootloader - then it should get itself just before ExitBootServices() call. - - Reviewed-by: Konrad Rzeszutek Wilk - Reviewed-by: Vladimir Serbinenko - -2016-10-27 Daniel Kiper - - multiboot2: Add tags used to pass ImageHandle to loaded image - Add tags used to pass ImageHandle to loaded image if requested. - It is used by at least ExitBootServices() function. - - Reviewed-by: Konrad Rzeszutek Wilk - Reviewed-by: Vladimir Serbinenko - -2016-10-27 Daniel Kiper - - i386/relocator: Add grub_relocator64_efi relocator - Add grub_relocator64_efi relocator. It will be used on EFI 64-bit platforms - when multiboot2 compatible image requests MULTIBOOT_TAG_TYPE_EFI_BS. Relocator - will set lower parts of %rax and %rbx accordingly to multiboot2 specification. - On the other hand processor mode, just before jumping into loaded image, will - be set accordingly to Unified Extensible Firmware Interface Specification, - Version 2.4 Errata B, section 2.3.4, x64 Platforms, boot services. This way - loaded image will be able to use EFI boot services without any issues. - - Reviewed-by: Konrad Rzeszutek Wilk - Reviewed-by: Vladimir Serbinenko - -2016-10-18 Sakar Arora - - net/ip: Fix limit_time calculation in freeing old fragments - limit_time underflows when current time is less than 90000ms. - This causes packet fragments received during this time, i.e., - till 90000ms pass since timer init, to be rejected. - - Hence, set it to 0 if its less than 90000. - -2016-09-28 Andrei Borzenkov - - asm-tests/i386-pc: Check that movl is 5 bytes. - LLVM 3.9 now emits short form of jump instructions, but it is still using - 32 bit addresses for some movl instructions. Fortunately it was caught early: - - clang ... boot/i386/pc/boot.S - clang -cc1as: fatal error: error in backend: invalid .org offset '440' (at offset '441') - - Add additional check to catch it during configure run and force -no-integrated-as. - - Closes: 49200 - - More details in - https://lists.gnu.org/archive/html/grub-devel/2015-02/msg00099.html - https://llvm.org/bugs/show_bug.cgi?id=22662 - -2016-08-13 Pete Batard - - Add missing va_end() to xasprintf() in grub-emu. - -2016-07-27 Andrei Borzenkov - - at_keyboard: fix numpad "0" and "." mapping - Reported for set 1 by fgndevelop . Apparently - set 2 was reversed too. - -2016-07-26 Andrei Borzenkov - - dns: fix buffer overflow for data->addresses in recv_hook - We may get more than one response before exiting out of loop in - grub_net_dns_lookup, but buffer was allocated for the first response only, - so storing answers from subsequent replies wrote past allocated size. - We never really use more than the very first address during lookup so there - is little point in collecting all of them. Just quit early if we already have - some reply. - - Code needs serious redesign to actually collect multiple answers - and select the best fit according to requested type (IPv4 or IPv6). - - Reported and tested by Michael Chang - -2016-07-26 Andrei Borzenkov - - xfs: accept filesystem with meta_uuid - XFS V5 stores UUID in metadata and compares them with superblock UUID. - To allow changing of user-visible UUID it stores original value in new - superblock field (meta_uuid) and sets incompatible flag to indicate that - new field must be used to verify metadata. Our driver currently does not - check metadata UUID so simply accept such filesystem. - - Reported-By: Marcos Mello - Reviewd by Jan Kara - -2016-05-03 Andrei Borzenkov - - net: translate pxe prefix to tftp when checking for self-load - Commit ba218c1 missed legacy pxe and pxe: prefixes which are - translated to tftp, so comparison failed. - -2016-04-30 Andrei Borzenkov - - net: reset net->stall in grub_net_seek_real - If we open new connection, we need to reset stall indication, otherwise - nothing will ever be polled (low level code rely on this field being - zero when establishing connection). - -2016-04-30 Stefan Fritsch - - http: reset EOF indication in http_seek - Otherwise next read will stop polling too early due to stale EOF - indicator, returning incomplete data to caller. - -2016-04-24 Mike Gilbert - - build: Use AC_HEADER_MAJOR to find device macros - Depending on the OS/libc, device macros are defined in different - headers. This change ensures we include the right one. - - sys/types.h - BSD - sys/mkdev.h - Sun - sys/sysmacros.h - glibc (Linux) - - glibc currently pulls sys/sysmacros.h into sys/types.h, but this may - change in a future release. - - https://sourceware.org/ml/libc-alpha/2015-11/msg00253.html - -2016-04-09 Michael Chang - - http: fix superfluous null line in range request header - At least the apache sever is very unhappy with that extra null line and will - take more than ten seconds in responding to each range request, which slows - down a lot the entire http file transfer process or even time out. - -2016-03-22 Andrei Borzenkov - - configure: set -fno-pie together with -fno-PIE - OpenBSD 5.9 apparently defaults to -fpie. We use -fno-PIE when appropriate - already, but that is not enough - it does not turn off -fpie. - - Actually check for -fPIE is not precise enough. __PIE__ is set for both - -fpie and -fPIE but with different values. As far as I can tell, both - options were introduced at the same time, so both should always be supported. - - This fixes compilation on OpenBSD 5.9 which otherwise created insanely big - lzma_decompress.img. - - Reported, suggested and tested by: Jiri B - -2016-03-20 Andrei Borzenkov - - bootp: check that interface is not NULL in configure_by_dhcp_ack - grub_net_add_addr may fail with OOM and we use returned interface - later without any checks. - -2016-03-19 Andrei Borzenkov - - bootp: fix memory leak in grub_cmd_dhcpopt - -2016-03-15 Aaron Luft - - Remove the variable oldname which is attempting to free stack space. - Historically this variable hold previous value of filename that - had to be freed if allocated previously. Currently this branch - is entered only if filename was not allocated previously so it - became redundant. It did not cause real problems because grub_free - was not called, but code is confusing and causes compilation error - in some cases. - -2016-03-13 Andrei Borzenkov - - Makefile.util.def: add $LIBINTL to grub-macbless flags - Fixes compilation on OpenBSD 5.9. - - Reported by Jiri B - -2016-03-11 Robert Marshall - - Failed config now returns exit code (#1252311) - Grub would notify the user if the new config was invalid, however, it - did not exit properly with exit code 1. Added the proper exit code. - - Resolves: rhbz#1252311 - -2016-03-11 Michael Chang - - xen_file: Fix invalid payload size - -2016-03-10 Vladimir Serbinenko - - multiboot2: Remove useless GRUB_PACKED - Reported by: Daniel Kiper - -2016-03-06 Andrei Borzenkov - - 20_linux_xen: fix test for GRUB_DEVICE - Same fix as in 082bc9f. - -2016-03-06 Mike Gilbert - - 10_linux: Fix grouping of tests for GRUB_DEVICE - Commit 7290bb562 causes GRUB_DISABLE_LINUX_UUID to be ignored due to - mixing of || and && operators. Add some parens to help with that. - -2016-02-28 Andrei Borzenkov - - NEWS update - -2016-02-28 Vladimir Serbinenko - - Release 2.02~beta3 - - grub_arch_sync_dma_caches: Accept volatile address - -2016-02-27 Leif Lindholm - - efidisk: Respect block_io_protocol buffer alignment - Returned from the OpenProtocol operation, the grub_efi_block_io_media - structure contains the io_align field, specifying the minimum alignment - required for buffers used in any data transfers with the device. - - Make grub_efidisk_readwrite() allocate a temporary buffer, aligned to - this boundary, if the buffer passed to it does not already meet the - requirements. - - Also sanity check the io_align field in grub_efidisk_open() for - power-of-two-ness and bail if invalid. - -2016-02-27 Vladimir Serbinenko - - usbtrans: Fix memory coherence and use-after-free. - - ehci: Fix memory coherence - This is a no-op on x86 but necessarry on ARM and may be necessarry on MIPS. - - arm-uboot: Make self-relocatable to allow loading at any address - - Allow _start == 0 with relocatable images - -2016-02-27 Vladimir Serbinenko - - Provide __bss_start and _end symbols in grub-mkimage. - For this ensure that all bss sections are merged. - - We need this to correctly prelink non-PE relocatable images. - -2016-02-27 Vladimir Serbinenko - - Encapsulate image layout into a separate structure. - Currently we pass around a lot of pointer. Instead put all relevant data - into one structure. - - mkimagexx: Split PE and generic part for relocations. - As a preparation for U-Boot relocations, split emitting PE-relocations - from parsing source ELF-relocations. - - mkimage.c: Split into separate files. - util/grub-mkimagexx.c is included in a special way into mkimage.c. - Interoperation between defines makes this very tricky. Instead - just have a clean interface and compile util/grub-mkimage*.c separately - from mkimage.c - - bsd: Ensure that kernel is loaded before loading module. - kernel_type may be set to the type of failed kernel. This patching-up is - easier than to reflow kernel loading routines. - - cat: Don't switch terminal mode when there is nothing to highlight. - This just pollutes serial console. - - Use console rather than serial_efi0 on arm64-efi in tests - -2016-02-27 Andrei Borzenkov - - efidisk: fix misplaced parenthesis in b00e4c2 - -2016-02-26 Andrei Borzenkov - - efidisk: prevent errors from diskfilter scan of removable drives - Map EFI_NO_MEDIA to GRUB_ERR_OUT_OF_RANGE that is ignored by diskfilter. This - actually matches pretty close (we obviously attempt to read outside of media) - and avoids adding more error codes. - - This affects only internally initiated scans. If read/write from removable is - explicitly requested, we still return an error and text explanation is more - clear for user than generic error. - - Reported and tested by Andreas Loew - -2016-02-26 Vladimir Serbinenko - - Regenerate checksums - - Makefile: Don't delete default_payload.elf if it doesn't exist. - -2016-02-25 Josef Bacik - - net: fix ipv6 routing - ipv6 routing in grub2 is broken, we cannot talk to anything outside our local - network or anything that doesn't route in our global namespace. This patch - fixes this by doing a couple of things - - 1) Read the router information off of the router advertisement. If we have a - router lifetime we need to take the source address and create a route from it. - - 2) Changes the routing stuff slightly to allow you to specify a gateway _and_ an - interface. Since the router advertisements come in on the link local address we - need to associate it with the global address on the card. So when we are - processing the router advertisement, either use the SLAAC interface we create - and add the route to that interface, or loop through the global addresses we - currently have on our interface and associate it with one of those addresses. - We need to have a special case here for the default route so that it gets used, - we do this by setting the masksize to 0 to mean it encompasses all networks. - The routing code will automatically select the best route so if there is a - closer match we will use that. - - With this patch I can now talk to ipv6 addresses outside of my local network. - Thanks, - -2016-02-24 Vladimir Serbinenko - - ieee1275: fix signed comparison - -2016-02-23 Andrei Borzenkov - - search: actually skip floppy with --no-floppy - grub_device_iterate() ignores device when iterator returns 1, not 0. - - Reported by Carlos E. R. - -2016-02-23 Andrei Borzenkov - - multiboot2: zero reserved field in memory map - Documentation says, bootloader should set reserved field to zero. - - Reported by Wink Saville - -2016-02-22 Vladimir Serbinenko - - Improve EHCI logging - Add dprintf's on common error paths and remove some entries which are too - noisy. - - usb_keyboard: Remove useless include - This prevents non-PCI machines from having USB. - - Refresh before abort - This ensures that abort message is actually visible to the user. - -2016-02-22 Eric Snowberg - - ieee1275: prevent buffer over-read - Prevent buffer over-read in grub_machine_mmap_iterate. This was - causing phys_base from being calculated properly. This then - caused the wrong value to be placed in ramdisk_image within - struct linux_hdrs. Which prevented the ramdisk from loading on - boot. - - Newer SPARC systems contain more than 8 available memory entries. - - For example on a T5-8 with 2TB of memory, the memory layout could - look like this: - - T5-8 Memory - reg 00000000 30000000 0000003f b0000000 - 00000800 00000000 00000040 00000000 - 00001000 00000000 00000040 00000000 - 00001800 00000000 00000040 00000000 - 00002000 00000000 00000040 00000000 - 00002800 00000000 00000040 00000000 - 00003000 00000000 00000040 00000000 - 00003800 00000000 00000040 00000000 - available 00003800 00000000 0000003f ffcae000 - 00003000 00000000 00000040 00000000 - 00002800 00000000 00000040 00000000 - 00002000 00000000 00000040 00000000 - 00001800 00000000 00000040 00000000 - 00001000 00000000 00000040 00000000 - 00000800 00000000 00000040 00000000 - 00000000 70000000 0000003f 70000000 - 00000000 6eef8000 00000000 00002000 - 00000000 30400000 00000000 3eaf6000 - name memory - -2016-02-22 Thomas Huth - - menu_entry: Disable cursor during update_screen() - When running grub in a VGA console of a KVM pseries guest on PowerPC, - you can see the cursor sweeping over the whole line when entering a - character in editor mode. This is visible because grub always refreshes - the whole line when entering a character in editor mode, and drawing - characters is quite a slow operation with the firmware used for the - powerpc pseries guests (SLOF). - To avoid this ugliness, the cursor should be disabled when refreshing - the screen contents during update_screen(). - -2016-02-17 Vladimir Serbinenko - - default_payload.elf: Always rebuild and remove before build. - It's difficult to know all dependencies. Since it's manual and cheap - target anyway, simply always rebuild it. - - default_payload.elf: Include password_pbkdf2. - Withoout this module we may end up in a system where no password is - accepted. - - default_payload.elf: Add modules from $(EXTRA_PAYLOAD_MODULES). - This allows coreboot building system to add extra modules depending - on user config. - - mm: Avoid integer overflow. - - Remove -Wno-maybe-uninitialized as it may not be present. - - Fix warnings when compiling with -O3 - -2016-02-14 Vladimir Serbinenko - - Add wbinvd around bios call. - Via C3 has problems with cache coherency when transitioning between the modes, - so flush it around bios calls. - -2016-02-12 Eric Snowberg - - OBP available region contains grub. Start at grub_phys_end. - This prevents a problem where grub was being overwritten since - grub_phys_start does not start at a zero offset within the memory - map. - -2016-02-12 Andreas Freimuth - - Add Thinkpad T410s button cmos address. - -2016-02-12 Vladimir Serbinenko - - TODO: Remove obsolete link - -2016-02-12 Toomas Soome - - lz4: Fix pointer overflow - -2016-02-12 Vladimir Serbinenko - - grub-shell: Update 32-bit OVMF binary name. - -2016-02-12 Daniel Kiper - - relocator: Fix integer underflow. - -2016-02-12 Vladimir Serbinenko - - Change -v to -V for version of shell utils. - - xnu: Add new kernel path to autoconfig. - - arm64: Use cpu timer for timekeeping. - - powerpc: Trim header in tests. - - default_payload: Include syslinuxcfg, all filesystems and xnu. - - xnu: Supply random seed. - Now we're able to load kernels up to El Capitan. - - Add RNG module. - - yylex: use grub_fatal for exit. - lexer calls yylex_fatal on fatal internal errors. yylex_fatal itself is - declared as noreturn and calls exit. Returning from noreturn function has - unpredictable consequences. - - printf: Fix and test %% behaviour in presence of subsequenbt args. - - Split pmtimer wait and tsc measurement from pmtimer tsc calibration. - - Make grub_cpu_is_tsc_supported generally available. - - Make grub_acpi_find_fadt accessible generically - - Make unaligned types public. - This simplifies code which has to handle those types. - - Fix emu compilation error on arm. - -2016-02-11 Vladimir Serbinenko - - xnu: Include relocated EFI in heap size. - - xnu: supply ramsize to the kernel. - Without this info recent kernels crash as they allocate no heap. - -2016-02-03 Andrei Borzenkov - - support modules without symbol table - all_video module does not have any code or data and exists solely for - .moddeps section to pull in dependencies. This makes all symbols unneeded. - - While in current binutils (last released version as of this commit is 2.26) - ``strip --strip-unneeded'' unintentionally adds section symbols for each - existing section, this behavior was considered a bug and changed in commit - 14f2c699ddca1e2f706342dffc59a6c7e23e844c to completely strip symbol table - in this case. - - Older binutils (verified with 2.17) and some other toolchains (at least - elftoolchain r3223M), both used in FreeBSD, remove symbol table in all_video - as well. - - Relax run-time check and do not return error for modules without symbol table. - Add additional checks to module verifier to make sure such modules - - a) have non-empty .moddeps section. Without either externally visible symbols - or .moddeps modules are completely useless and should not be built. - - b) do not have any relocations. - - Closes: 46986 - - v2: add run-time check for empty symbol table if relocations are present as - suggested by Vladimir. - -2016-02-01 Andrei Borzenkov - - 10_linux: avoid multi-device root= kernel argument - If root filesystem is multidev btrfs, do not attempt to pass all devices as - kernel root= argument. This results in splitting command line in GRUB due to - embedded newline and even if we managed to quote it, kernel does not know how - to interpret it anyway. Multidev btrfs requires user space device scanning, - so passing single device would not work too. - - This still respects user settings GRUB_DISABLE_LINUX_UUID. Not sure what we - should do in this case. - - Closes: 45709 - -2016-01-22 Vladimir Serbinenko - - Error out if mtools invocation fails. - - arm64: Add support for relocations needed for linaro gcc - - efiemu: Fix compilation failure - - Document cpuid -p - -2016-01-22 Robert Elliott - - efiemu: Handle persistent RAM and unknown possible future additions. - -2016-01-22 Vladimir Serbinenko - - Document expr1 expr2 syntax for test command - -2016-01-22 Michael Chang - - Restore terminal settings on grub-emu exit. - -2016-01-22 Vladimir Serbinenko - - xen_boot: Remove obsolete module type distinctions. - - arm: Ignore qemu clock bug - - i386-ieee1275: Increase maximum heap size to accomodate highres graphi tests - -2016-01-20 Colin Watson - - Remove pragmas related to -Wunreachable-code - -Wunreachable-code has been a no-op since GCC 4.5; GRUB hasn't been - compiled with it since 2012; and GCC 6 produces "error: - '-Wunreachable-code' is not an option that controls warnings" for these. - - Fixes Debian bug #812047. - -2016-01-16 Colin Watson - - loader/bsd: Fix signed/unsigned comparison - - ahci, ehci: Fix typos - -2016-01-16 Andrei Borzenkov - - grub-probe: fix memory leak - Found by: Coverity scan. - CID: 73783 - -2016-01-16 Andrei Borzenkov - - tftp: fix memory leaks in open - If protocol open fails, file is immediately freed, so data was leaked. - - Found by: Coverity scan. - CID: 96659 - -2016-01-16 Andrei Borzenkov - - tcp: fix memory leaks - Found by: Coverity scan. - CID: 96639, 96647 - - net: fix memory leaks - Found by: Coverity scan. - CID: 96638, 96648 - - legacycfg: fix memory leaks and add NULL check - Memory leaks found by Coverity scan. - CID: 96642, 96645 - -2016-01-15 Andrei Borzenkov - - loader: Unintended sign extension - CID: 96707, 96699, 96693, 96691, 96711, 96709, 96708, 96703, 96702, - 96700, 96698, 96696, 96695, 96692, 96710, 96705 - -2016-01-12 Andrei Borzenkov - - script: fix memory leak - Found by: Coverity scan. - CID: 96637 - - normal: fix memory leak - Found by: Coverity scan. - CID: 96641, 96670, 96667 - - xnu: fix memory leak - Found by: Coverity scan. - CID: 96663 - - truecrypt: fix memory leak - Found by: Coverity scan. - CID: 156611 - - gfxmenu: fix memory leak - Found by: Coverity scan. - CID: 96657 - - efiemu: fix memory leak - Found by: Coverity scan. - CID: 156610 - - efidisk: fix memory leak - Found by: Coverity scan. - CID: 96644 - - verify: fix memory leak - Found by: Coverity scan. - CID: 96643 - - password_pbkdf2: fix memory leak - Found by: Coverity scan. - CID: 96656 - - parttool: fix memory leak - Found by: Coverity scan. - CID: 96652 - -2016-01-12 Andrei Borzenkov - - nativedisk: fix memory leak - Based on Coverity scan. - CID: 96660 - - Extended to also cover other error return places. - -2016-01-12 Andrei Borzenkov - - acpi: fix memory leak - Found by: Coverity scan. - CID: 96673 - -2016-01-10 Andrei Borzenkov - - grub-install: include ehci in list of native modules - This matches behavior of "nativedisk" command. - - Reported and tested by Smith Henry - -2016-01-10 Andrei Borzenkov - - grub-mkimage: remove redundant NULL check - Found by: Coverity scan. - CID: 73737 - -2016-01-10 Andrei Borzenkov - - net: remove dead and redundant code - server cannot be NULL at this point (we return error earlier if it is). - Also structure is zalloc'ed, so no need to explicitly initialize - members to 0. - - Found by: Coverity scan. - CID: 73837 - -2016-01-10 Andrei Borzenkov - - hostdisk: fix device detection - Condition was apparently reversed so GRUB assumed all devices were - files. This later made it skip BLKFLSBUF ioctl on Linux which caused - various page cache coherency issues. Observed were - - - failure to validate blocklist install (read content did not match - just written) - - - failure to detect Linux MD on disk after online hot addition - (GRUB got stale superblock) - - Closes: 46691 - -2016-01-09 Andrei Borzenkov - - setup: fix NULL pointer dereference - Check return value of grub_guess_root_devices - - Found by: Coverity scan. - CID: 73638, 73751 - -2016-01-09 Andrei Borzenkov - - mkimage: fix unintended sign extension - Found by: Coverity scan. - CID: 73691, 73717 - -2016-01-09 Andrei Borzenkov - - util/getroot: delete dead code - is_part cannot be non-zero at this point. - - Found by: Coveruty scan. - CID: 73838 - -2016-01-09 Andrei Borzenkov - - loader/multiboot: fix unintended sign extension - Found by: Coveruty scan. - CID: 73700, 73763 - - kern/elf: fix unintended sign extension - Found by: Coverity scan. - CID: 73729, 73735, 73758, 73760 - -2016-01-09 Andrei Borzenkov - - xfs: fix possible inode corruption in directory scan - grub_xfs_iterate_dir did not restore first character after inline - name when match was found. Dependning on XFS format this character - could be inode number and we could return to the same node later in - find_file if processing cycled symlinks. - - CID: 86724 - -2016-01-09 Andrei Borzenkov - - rescue_parser: restructure code to avoid Coverity false positive - If line contains single word, line and argv[0] are aliases, so - no NULL dereference is possible, but Coverity does not know it. - Change code to avoid ambiguity and also remove redundant call to - grub_strchr. - - CID: 86725 - -2016-01-09 Andrei Borzenkov - - grub-mklayout: check subscript bounds - Found by: Coverity scan. - CID: 73686 - - grub-probe: fix memory leak - Found by: Coverity scan. - CID: 73783 - - gfxmenu: fix memory leak - Found by: Coverity scan. - CID: 73766 - -2016-01-09 Andrei Borzenkov - - util/setup: fix grub_util_path_list leak - Add helper grub_util_free_path_list and use it where appropriate. - - Found by: Coverity scan. - CID: 73727 - -2016-01-09 Andrei Borzenkov - - setup: fix memory leak - Found by: Coverity scan. - CID: 73680, 73715 - - efiemu: check return value of grub_efiemu_write_value - Found by: Coverity scan. - CID: 73590 - - efiemu: change code to avoid Coverity false positive - CID: 73623 - - efiemu: fix unintended sign extension - Found by: Coverity scan. - CID: 73883, 73637 - - hfs: fix memory leak - Found by: Coverity scan. - CID: 156531 - - grub-module-verifier: fix unintended sign extension - Found by: Coverity scan. - CID: 156533, 156532 - -2016-01-08 Vladimir Serbinenko - - Tests: Support arm-efi - -2016-01-07 Vladimir Serbinenko - - arm64/setjmp: Add missing move for arg1 == 0 case. - - grub-shell: Support arm64-efi - -2016-01-07 Mark Salter - - arm-efi: Reduce timer event frequency by 10 - Timer event to keep grub msec counter was running at 1000HZ. This was too - fast for UEFI timer driver and resulted in a 10x slowdown in grub time - versus wallclock. Reduce the timer event frequency and increase tick - increment accordingly to keep better time. - -2016-01-07 Vladimir Serbinenko - - x86_64-efi: Automatically add -bios OVMF.fd to qemu in tests. - - Allow GRUB_QEMU_OPTS to override machine. - - arm64: Disable tests that need native drivers. - - Disable NetBSD bootcheck on EFI until it supports ACPI on EFI. - - grub-shell: Use new cbfstool syntax. - - grub-shell: On i386-ieee1275 don't try to switch to console. - console goes to serial as well, so this doesn't stop garbage from going - to serial. But it creates garbage itself. - - hddboot_test: reenable on OVMF - OVMF now supports booting from disks. - - iee1275/datetime: Fix off-by-1 error. - -2016-01-07 Vladimir Serbinenko - - Adjust bootcheck tests for multiboot/coreboot/qemu to match real support. - coreboot has ACPI while 2 others don't. *BSD need ACPI and have trouble - without it. Don't even attempt to boot *BSD on multiboot or qemu targets. - - On coreboot boot all *BSD except 32-bit NetBSD which apparently does some - early BIOS calls. - -2016-01-05 Vladimir Serbinenko - - minixfs_test: Check if mkfs.minixfs supports -B option. - - Add memdisk support to grub-emu. - Use it to add custom files, so that tests which need them work. - - Move file loading functions to grub-emu. - So that we can use it in grub-emu as well as utils. - - Disable progress indicator in grub-shell. - This disables progress indicator for tests. This in turn fixes test - flakiness as they ended up timing-dependent. - - Update checksums - -2016-01-02 Andrei Borzenkov - - acpihalt: add GRUB_ACPI_OPCODE_CREATE_DWORD_FIELD (0x8a) - Fixes ACPI halt on ASUSTeK P8B75-V, - Bios: American Megatrends v: 0414 date: 04/24/2012 - - Reported-By: Goh Lip - -2016-01-02 Andrei Borzenkov - - acpihalt: fix GRUB_DSDT_TEST compilation - -2016-01-01 Andrei Borzenkov - - Add missing BUILD_EXEEXT - -2015-12-31 Vladimir Serbinenko - - configure.ac: Reorder efiemu check to after link format check. - efiemu is supposed to be disabled when compiling through exe format. - Unfortunately format was determined only after efiemu check. Reorder to fix the - problem - -2015-12-31 Andrey Borzenkov - - remove temporary .bin files (kernel and modules) - - add dejavu built fonts to cleanfiles - -2015-12-31 Andrei Borzenkov - - Add grub-module-verifier files to EXTRA_DIST - -2015-12-31 Vladimir Serbinenko - - configure: Add -fno-unwind-tables if supported. - Unwind tables are useless for us bt consume space if present. Ensure that they - are not. - - module-verifier: allow limited-range relocations on sparc64. - clang as incomplete mcmodel=large support. As we don't currently need full - mcmodel=large support for sparc64, relax those checks. - - Disable build-time module check on emu. - On emu some checks can be laxer like check for relocation range. Additionally - module loading in emu is rarely used. So skip this check rather than making - it laxer for all platforms. In ideal we may want to have slightly different - check for emu but for now this is good enough. - - configure: Fix grub_cv_cc_fno_unwind_tables check. - Check tries -fno-dwarf2-cfi-asm but adds -fno-asynchronous-unwind-tables - to TARGET_CFLAGS. Fix this. - - Add -mno-stack-arg-probe on mingw. - This argument disables generation of calls to __chkstk_ms. Those calls are - useless on GRUB as function is dummy. Yet they increase module size and - use limited-range relocations which may not work under some memory layouts. - We currently don't use such layouts on concerned platforms but lt's correct - this. - - Strip .ARM.exidx - This section is generated by clang and is useful only for debugging. - It contains exotic relocations, so strip them to avoid them interferring - with module loading. - - module-verifier: Check range-limited relative relocations. - Check that they point to the same module, so will end up in the same - chunk of memory. - - xen/relocator: Use local symbol to ensure that code is relocation-free. - - backtrace: Fix register call syntax - - Verify modules on build-time rather than failing in runtime. - - sparc64: Fix assembly to let compiler to fill in memory references. - This fixes the use of not fully relocatable (they assume that variables are - under 4G limit in virtual memory) references. - -2015-12-30 Andrey Borzenkov - - 30_os-prober: derive --class from os-prober generated label - Currently only Windows gets distinguished icons, everything else is displayed - using the same generic one. Add additional --class based on os-prober returned - label, which usually is expected to match primary distribution name. - - Also use it for Windows as well - chainloader prober may actually return - different strings (Windows, MS-DOS, Windows9xME). - -2015-12-30 Vladimir Serbinenko - - backtrace: Remove assembly assumption that grub_backtrace_pointer is under 4G - -2015-12-30 Andrei Borzenkov - - menu: fix line count calculation for long lines - It gave one extra screen line if length was exactly equal to screen - width. - - Reported by Michael Chang. - Also-By: Michael Chang - -2015-12-29 Vladimir Serbinenko - - grub-mkrescue: Delete temporary file - Reported by: Thomas Schmitt - - grub-mount: Fix oath parsing. - Brackets detection was copied from somewhere else and makes no sense in case - of grub-mount and prevents user from accessing and files with ) in them. - - exfat: Fix stream extension flag parsing. - -2015-12-26 Andrei Borzenkov - - devmapper: check for valid device abstraction in get_grub_dev - This was lost when code was refactored. Patch restores previous behavior. - - It is still not clear whether this is the right one. Due to the way we - detect DM abstraction, partitions on DM are skipped, we fall through to - generic detection which ends up in assuming parent device is BIOS disk. - - It is useful to install GRUB on VM disk from the host. But it also means - that GRUB will mistakenly allow install on real system as well. - - For now let's fix regression; future behavior needs to be discussed. - - Closes: 45163 - -2015-12-19 Andrei Borzenkov - - windows: correct LBA in generated EFI HDD media paths - GRUB keeps partition offset and size in units of 512B sectors. Media paths - are defined in terms of LBA which are presumed to match HDD sector size. - - This is probably cosmetic (EFI requires that partition is searched by GUID) - and still incorrect if GPT was created using different logical block size. - But current code is obviously wrong and new has better chances to be correct. - -2015-12-17 Robert Elliott - - lsefimmap: support persistent memory and other UEFI 2.5 features - This should accompany - 76ce1de740 Translate UEFI persistent memory type - - 1. Add a string for the EfiPersistentMemory type 14 that was - added in UEFI 2.5. - - 2. Decode the memory attributes that were added in UEFI 2.5: - * NV (non-volatile) - * MORE_RELIABLE (higher reliable, e.g., mirrored memory in a system - with partial memory mirroring) - * RO (read-only) - - 3. Use proper IEC binary units (KiB, MiB, etc.) for power-of-two - values rather than misusing SI power-of-ten units (KB, MB, etc.) - - 4. The lsmmap command only decodes memory ranges sizes up to GiB scale - units. Persistent memory ranges will reach into the TiB scale. - Since 64-bit size field supports TiB, PiB, and EiB, decode all of - them for completeness. - - 5. In the lsefimmap command, rewrite the print statements to - * avoid rounding - * avoid a big nested if/else tree. - - For example: In the sixth entry below, the value of 309MB implies - 316416KB but is really reporting 316436KB. - - Widen the size column to 6 digits to accommodate typical cases. - The worst case value would require 14 digits; if that happens, - let the columns get out of sync. - - Old format: - Type Physical start - end #Pages Size Attributes - conv-mem 0000000000000000-0000000000092fff 00000093 588KB UC WC WT WB - reserved 0000000000093000-0000000000093fff 00000001 4KB UC WC WT WB - conv-mem 0000000000094000-000000000009ffff 0000000c 48KB UC WC WT WB - conv-mem 0000000000100000-000000000fffffff 0000ff00 255MB UC WC WT WB - BS-code 0000000010000000-0000000010048fff 00000049 292KB UC WC WT WB - conv-mem 0000000010049000-000000002354dfff 00013505 309MB UC WC WT WB - ldr-data 000000002354e000-000000003ecfffff 0001b7b2 439MB UC WC WT WB - BS-data 000000003ed00000-000000003ed7ffff 00000080 512KB UC WC WT WB - conv-mem 000000003ed80000-000000006af5ffff 0002c1e0 705MB UC WC WT WB - reserved 000000006af60000-000000006b55ffff 00000600 6MB UC WC WT WB - BS-data 000000006b560000-000000006b560fff 00000001 4KB UC WC WT WB - RT-data 000000006b561000-000000006b5e1fff 00000081 516KB RT UC WC WT WB - BS-data 000000006b5e2000-000000006ecfafff 00003719 55MB UC WC WT WB - BS-code 000000006ecfb000-000000006ecfbfff 00000001 4KB UC WC WT WB - conv-mem 000000006ecfc000-00000000711fafff 000024ff 36MB UC WC WT WB - BS-data 00000000711fb000-000000007128dfff 00000093 588KB UC WC WT WB - Unk 0d 0000000880000000-0000000e7fffffff 00600000 24GB UC WC WT WB NV - reserved 0000001680000000-0000001c7fffffff 00600000 24GB UC WC WT WB NV - - New format: - Type Physical start - end #Pages Size Attributes - conv-mem 0000000000000000-0000000000092fff 00000093 588KiB UC WC WT WB - reserved 0000000000093000-0000000000093fff 00000001 4KiB UC WC WT WB - conv-mem 0000000000094000-000000000009ffff 0000000c 48KiB UC WC WT WB - conv-mem 0000000000100000-000000000fffffff 0000ff00 255MiB UC WC WT WB - BS-code 0000000010000000-0000000010048fff 00000049 292KiB UC WC WT WB - conv-mem 0000000010049000-000000002354dfff 00013505 316436KiB UC WC WT WB - ldr-data 000000002354e000-000000003ecfffff 0001b7b2 450248KiB UC WC WT WB - BS-data 000000003ed00000-000000003ed7ffff 00000080 512KiB UC WC WT WB - conv-mem 000000003ed80000-000000006af5ffff 0002c1e0 722816KiB UC WC WT WB - reserved 000000006af60000-000000006b55ffff 00000600 6MiB UC WC WT WB - BS-data 000000006b560000-000000006b560fff 00000001 4KiB UC WC WT WB - RT-data 000000006b561000-000000006b5e1fff 00000081 516KiB RT UC WC WT WB - BS-data 000000006b5e2000-000000006ecfafff 00003719 56420KiB UC WC WT WB - BS-code 000000006ecfb000-000000006ecfbfff 00000001 4KiB UC WC WT WB - conv-mem 000000006ecfc000-0000000071222fff 00002527 38044KiB UC WC WT WB - BS-data 0000000071223000-00000000712ddfff 000000bb 748KiB UC WC WT WB - persist 0000000880000000-0000000e7fffffff 00600000 24GiB UC WC WT WB NV - reserved 0000001680000000-0000001c7fffffff 00600000 24GiB UC WC WT WB NV - -2015-12-16 Andrei Borzenkov - - kernel: print and reset grub_errno after each embedded config line - Otherwise it causes subsequent file open to fail, because grub_file_open - misinterprets set grub_errno for grub_file_get_device_name failure. - - Closes: 46540 - -2015-12-16 Andrei Borzenkov - - Erase backspaced character in grub_username_get - It probably does not work across linefeed, but hopefully user names are not - that long (and nobody is using terminal that small). - -2015-12-16 Hector Marco-Gisbert - - Fix security issue when reading username and password - This patch fixes two integer underflows at: - * grub-core/lib/crypto.c - * grub-core/normal/auth.c - - CVE-2015-8370 - - Also-By: Andrey Borzenkov - -2015-12-15 Andrei Borzenkov - - NEWS: more additions - Also-By: Robert Elliott - -2015-12-15 Robert Elliott - - Translate UEFI persistent memory type - Define - * GRUB_EFI_PERSISTENT_MEMORY (UEFI memory map type 14) per UEFI 2.5 - * GRUB_MEMORY_PERSISTENT (E820 type 7) per ACPI 3.0 - * GRUB_MEMORY_PERSISTENT_LEGACY (E820 unofficial type 12) per ACPI 3.0 - - and translate GRUB_EFI_PERSISTENT_MEMORY to GRUB_MEMORY_PERSISTENT in - grub_efi_mmap_iterate(). - - Includes - * adding the E820 names to lsmmap - * handling the E820 types in make_efi_memtype() - - Suggested-by: Vladimir 'φ-coder/phcoder' Serbinenko - Suggested-by: Andrei Borzenkov - -2015-12-14 Vladimir Serbinenko - - Document bootlocation discovery limitations and xen platform limitations - -2015-12-07 Josef Bacik - - tcp: ack when we get an OOO/lost packet - While adding tcp window scaling support I was finding that I'd get some packet - loss or reordering when transferring from large distances and grub would just - timeout. This is because we weren't ack'ing when we got our OOO packet, so the - sender didn't know it needed to retransmit anything, so eventually it would fill - the window and stop transmitting, and we'd time out. Fix this by ACK'ing when - we don't find our next sequence numbered packet. With this fix I no longer time - out. Thanks, - -2015-12-01 Michael Chang - - i386: fix TSC calibration using PIT - Condition was accidentally reversed, so PIT calibration always failed - when PIT was present and always succeeded when PIT was missing, but in - the latter case resulted in absurdly fast clock. - - Reported and tested by Vitaly Kuznetsov - -2015-11-28 Andrei Borzenkov - - Do not include generated gnulib headers in tarball - gnulib files are already handled by recursive make distdir invocation. - Including all generated headers (after make completed) causes build - failure if target system is different (different compile version etc). - -2015-11-27 Andrei Borzenkov - - Replace numbers with grub_memory_type_t enums - -2015-11-27 Andrei Borzenkov - - configure: fix macports flex version detection - Macports add extra information after version itself: - - $flex --version - flex 2.5.35 Apple(flex-31) - - We require at least felx 2.5.35 so do not need to care about prehistoric - "flex version n.n.n"; just use second field always. - - Reported by Peter Cheung - -2015-11-27 Vladimir Serbinenko - - tsc: Use alternative delay sources whenever appropriate. - PIT isn't available on some of new hardware including Hyper-V. So - use pmtimer for calibration. Moreover pmtimer calibration is faster, so - use it on coreboor where booting time is important. - - Based on patch by Michael Chang. - -2015-11-26 Andrei Borzenkov - - efi: really mark memory of unknown type as reserved - 9be4c45dbe3c877d1f4856e99ee15133c6cd2261 added switch case between - fall through cases, causing all memory regions of unknown type to be - marked as available. - - Move default case into its own block and add explicit FALLTHROUGH - annotation. - - Reported by Elliott, Robert (Persistent Memory) - -2015-11-24 Josef Bacik - - net: reset nb->data per dns record lookup loop - We were resetting nb->data every time we tried a new server, but we need to do - it every time we try for a different record, otherwise we don't end up falling - back to the A record properly. Thanks, - -2015-11-18 Andrei Borzenkov - - unix: do not close stdin in grub_passwd_get - This makes it impossible to read from stdin without controlling tty: - - 10:/mnt # echo -e passwd\\npasswd | setsid ./grub-mkpasswd-pbkdf2 - Enter password: - Reenter password: ./grub-mkpasswd-pbkdf2: error: failure to read password. - 10:/mnt - -2015-11-17 Andrei Borzenkov - - lsefisystab: add missing comma after 7994077 - -2015-11-14 Pavel Bludov - - Add some UUIDs found in the hardware - -2015-11-13 Konstantin Vlasov - - gfxterm: fix calculation of terminal-top and terminal-height - They used screen width, not height. - -2015-11-12 Paulo Flabiano Smorigo - - ofdisk: add sas disks to the device list - -2015-11-12 Vladimir Serbinenko - - multiboot: Don't rely on particular ordering of options. - - multiboot_mbi: Fix handling of --quirk-bad-kludge. - -2015-11-12 Fu Wei - - xen_boot: Remove useless file_name_index variable. - - Document ARM64 xen commands - -2015-11-11 Vladimir Serbinenko - - asm-tests/i386-pc: Check that near jumps are 2 bytes. - We already check that jump over 300 bytes gap is 3 bytes in code16-mode. - Some clang versions generate 3-byte opcode for short jumps which makes - boot.img blow over 512-byte limit. Enforce -no-integrated-as in such cases - -2015-11-11 Paulo Flabiano Smorigo - - ofdisk: add a comment about vscsi method - -2015-11-09 Vladimir Serbinenko - - fdt.mod: Move license tag to the right file. - -2015-11-09 Fu Wei - - fdt.mod: Add missing license tag. - -2015-11-09 Vladimir Serbinenko - - kern/elf: Ignore cast-align warnings - -2015-11-09 Vladimir Serbinenko - - cbfs: Fix corner case and compilation with recdent gcc - Accept the header to touch the jump address at 0xfffffff0. - - Fix compilation for 64-bit EFI with recent GCC. - -2015-11-08 Vladimir Serbinenko - - fstester: Enforce LC_ALL=C - - Adapt build-system to use imported xen headers. - - Import xen headers directly into GRUB - - cbfs: Check for ptr range sanity. - Triaged by Andrei and enhanced with suggestions by Aaron Durbin - Also-By: Andrei Borzenkov - - Remove reliance C.UTF-8 - - genmoddep.awk: Add a test that we have no circular dependencies - - Makefile.core.def: Break circular dependency on arm64. - - autogen: Use cp instead of ln -s. - libgcrypt-grub shouldn't be modified directly anyway. With this patch - tarball without contrib can be unpacked on FAT and stay usable for - out-of-tree compile on full POSIX FS (compile on FAT not tested). - -2015-11-07 Andrei Borzenkov - - partmap_test: check that parted is available - Skip test if parted is unavailable instead of returning false failure. - -2015-11-07 grub-devel@iam.tj - - cryptodisk: teach grub_cryptodisk_insert() about partitions (bug #45889) - It is not possible to configure encrypted containers on multiple partitions of - the same disk; after the first one all subsequent fail with - - disk/cryptodisk.c:978: already mounted as crypto0 - - Store partition offset in cryptomount descriptor to distinguish between them. - -2015-11-07 Andrey Borzenkov - - doc: document config_directory and config_file variables - -2015-11-07 Andrei Borzenkov - - unix/getroot: remove unused MAJOR definition - We use major() everywhere, these definitions just add to confusion. - - Add comments to code for commit d313218 - -2015-11-07 Andrei Borzenkov - - devmapper/getroot: use makedev instead of direct shift - Fixes device detection with large number of devices. - - Reported by Tim Wallberg - -2015-11-06 Andrei Borzenkov - - mkimage: zero fill alignment space - This did not cause real problem but is good for reproducible builds. I hit - it with recent bootinfoscript that displays embedded config; I was puzzled - by random garbage at the end. - - Prezero memory buffer used to assemble core.img. This makes individual - memset redundant. Also ensure buffer is filled with zeroes in several other - places. - - Also remove redundant zeroing code where we fill in the whole memory block - anyway. - -2015-11-06 Vladimir Serbinenko - - configure.ac: Explicitly add -mno-sse3 on x86. - - README: Remove dead link to the wiki - -2015-10-29 Andrei Borzenkov - - NEWS: mention powerpc64le support - -2015-10-29 Ignat Korchagin - - tcp: Fix uninited mac address when accepting connection. - -2015-10-29 Fu Wei - - arm64: Add support for xen boot protocol. - -2015-10-29 Vladimir Serbinenko - - arm64: Move FDT functions to separate module - -2015-10-27 Andrei Borzenkov - - efi: fix warnings with recent GCC - ../../grub-core/term/efi/console.c:128:32: error: suggest parentheses around '&&' within '||' [-Werror=parentheses] - if (key.unicode_char >= 0x20 && key.unicode_char <= 0x7f - -2015-10-26 Eric Snowberg - - ofdisk: Fix devpath freeing logic. - -2015-10-26 Paulo Flabiano Smorigo - - Implement cross-endian ELF load for powerpc - -2015-10-25 Peter Jones - - Use EFI_SIMPLE_TEXT_INPUT_EX to support key combinations. - -2015-10-14 Andrei Borzenkov - - configure: find options to force endian on MIPS - -2015-10-14 Andrei Borzenkov - - configure: force o32 ABI on MIPS - GRUB code expects O32 or N32. N32 is less tested than O32, so we prefer to - compile with O32. Some systems (e.g. GNU Guix) default to using newer - n64 or n32 ABI. Try to find suitable options to force o32. - - For GCC this is simply -mabi=32. While clang supports this option as well, - o32 ABI is valid for MIPS target and n32/64 ABI are valid for MIPS64 target - only, so use "-target mips/mipsel -mabi=32". - - Reported-By: Mark H Weaver - Also-By: Mark H Weaver - -2015-10-12 Andrei Borzenkov - - net: avoid closing NULL socket in DNS lookup - Refactor code so that we do not store NULL pointers in array - of in-flight DNS servers. - - Reported-By: Josef Bacik - -2015-10-11 Andrei Borzenkov - - install: --compress argument is not optional - Fixes crash if argument is not specified. Also use `|' to separate choices - in list of compression methods to align it with --core-compress. - -2015-10-11 Vladimir Serbinenko - - mips: Make setjmp code N32-compliant. - - mips: Make the assembly-code N32-compatible. - There are no $t4 or $t5 in N32 but there are $a4 and $a5. - -2015-10-10 Andrei Borzenkov - - progress: avoid NULL dereference for net files - From original patch by dann frazier : - - grub_net_fs_open() saves off a copy of the file structure it gets passed and - uses it to create a bufio structure. It then overwrites the passed in file - structure with this new bufio structure. Since file->name doesn't get set - until we return back to grub_file_open(), it means that only the bufio - structure gets a valid file->name. The "real" file's name is left - uninitialized. This leads to a crash when the progress module hook is called - on it. - - grub_net_fs_open() already saved copy of file name as ->net->name, so change - progress module to use it. - - Also, grub_file_open may leave file->name as NULL if grub_strdup fails. Check - for it. - - Also-By: dann frazier - -2015-10-10 Andrei Borzenkov - - file: ignore host disk in blocklist check - It cannot work anyway because host disk cannot be read. This fixes hostfs access - on native Windows build where filenames start with '\' or do not have initial - separator at all (d:\foo). - - Issue was observed when running grub-fstest on Windows. On UNIX image name is - canonicalized to always start with `/' so this was not noticed. - - This has side effect of allowing relative path names on host, but this already - was the case with `ls' command, so it just extends it to all commands. - - Reported-By: Arch Stack - Also-By: Arch Stack - -2015-10-09 Vladimir Serbinenko - - mips/dl: Handle addend in RELA entries. - - gfxmenu/model: Delete empty file. - -2015-10-09 Alexander Bluhm - - ufs: Fix parameters to grub_memset. - len = 0 made simply no sense. Fix parameters to be in line with read. - -2015-10-07 Stanislav Kholmanskikh - - ofnet: Do not set SUFFIX for sun4v network devices - sun4v vnet devices do not implement the support of duplex and speed - instance attributes. An attempt to open such a device with - the attributes will fail: - - ok select net:speed=auto,duplex=auto - Unknown key 'speed' - Unknown key 'duplex' - Manual Configuration: Host IP, boot server and filename must be specified - WARNING: /virtual-devices@100/channel-devices@200/network@0: Can't open OBP standard TFTP package - - Can't open device - ok - - Therefore, let's not set SUFFIX for such devices. - -2015-10-07 Eric Snowberg - - sparc64 - use correct drive name within grub_util_sparc_setup - Incorrect drive name was being passed into grub_util_sparc_setup, - causing the grub-install to fail. - -2015-09-13 Andrei Borzenkov - - cryptodisk: strip parenthesis from backing device name - Otherwise subsequent disk open fails. - - Reported-By: Klemens Nanni - -2015-08-22 Felix Zielcke - - disk/ldm, partmap/msdos.c: fix spelling error - -2015-08-13 Andrei Borzenkov - - net: do not try to load protocol module via itself - Otherwise we get infinite recursion. - - Closes: 45729 - -2015-08-09 Josef Bacik - - efinet: handle get_status() on buggy firmware properly - The EFI spec indicates that get_status() should return the address of the buffer - we passed into transmit to indicate the the buffer was transmitted. However we - have boxes where the firmware returns some arbitrary address instead, which - makes grub think that we've not sent anything. So since we have the SNP stuff - opened in exclusive mode just assume any non-NULL txbuf means that our transmit - occurred properly. This makes grub able to do its networking stuff properly on - our broken firmware. Thanks, - - cc: Peter Jones - -2015-08-09 Andrei Borzenkov - - linguas.sh: fix error when removing non-existing autogenerated files - -2015-07-28 Vladimir Serbinenko - - ahci: Ensure that bus mastering is set. - Fixes ahci_test failing on several platforms. - -2015-07-27 Vladimir Serbinenko - - archelp: Never pass NULL as mtime. - Moves complexity from fs code (NULL check) to common code (passing non-NULL). - - HFS: Convert to fshelp. - HFS doesn't handle "." and ".." properly. Convert it to fshelp to reuse the - logic. - - FAT: Convert to fshelp. - exFAT doesn't handle "." and ".." correctly, convert it to fshelp to - reuse the same logic. - - BFS: Convert to fshelp. - BFS doesn't handle ".." correctly, so convert it to fshelp to reuse the logic. - - fshelp: Add handling of "." and ".." and grub_fshelp_find_file_lookup. - Recent tests have discovered that many of our filesystems have flawed - handling of "." and "..". Rather than attempting to fix it in filesystems - themselves, make the common code fshelp aware of "." and ".." and handle - them in this layer. Add grub_fshelp_find_file_lookup for easy conversion - of BFS, HFS and exFAT which have the same problem and don't use fshelp. - - Switch procfs to use archelp. - This fixes handling of "." and "..". - - grub-install: Use a+ in fopen rather than r+. - r+ does not create a file if none exists. - - Add transform_data as a variant of data with substitutions. - This fixrs name mismatch for grub.chrp with - transform_program_name='s,grub,grub2,g' - -2015-07-24 Ignat Korchagin - - efi: fix GetVariable return status check in 81ca24a - GetVariable should return EFI_BUFFER_TOO_SMALL if given buffer of size - zero; commit incorrectly checked for EFI_SUCCESS. - -2015-07-24 Vladimir Serbinenko - - zfs_test: Skip dotdot in volume root test. - Given special semantics of ZFS it's far from clear what the expected - result is. Just skip it for now - - xfs_test: Test both crc and non-crc filesystems. - - xfs: Fix handling of symlink with crc-enabled filesystem. - - reiserfs: Fix handling of first entry in the directory. - Fixes garbage being added to "." filename. - -2015-07-23 Ignat Korchagin - - efi: fix memory leak in variable handling - -2015-07-23 Vladimir Serbinenko - - exclude.pot: Add missing blacklisted strings. - - archelp: Fix handling of dot and dotdot at the end of the name. - Fixes cpio_test and tar_test. - - arm-emu: Add __aeabi_memcpy* and __aeabi_memclr* symbols. - Fixes compilation with clang. - -2015-07-22 Vladimir Serbinenko - - fwstart: Fix loading of address of read_spd_fail. - - fwstart: Add missing argument to p2align. - Resulting binary is unchanged as it happens we were already aligned - by chance. - -2015-07-22 Vladimir Serbinenko - - fwstart: Replace blt with bltz. - blt A, $zero, B and bltz A, B are equivalent but clang recognizes only - later, so use it. - - Resulting binary is unchanged. - -2015-07-22 Vladimir Serbinenko - - Remove mips_attributes. - mips_attributes was introduced to work around clang problems with - -msoft-float. Those problems are now fixed and moreover .gnu_attributes - itself is unportable and creates problem with clang. - - Revert "mips: Fix soft-float handling." - - This partially reverts commit 6a4ecd276ed39f66be0ad6ff0f8ff67598098605. - -2015-07-22 Vladimir Serbinenko - - ARM: provide __aeabi_memclr* and __aeabi_memcpy* symbols - Fixes compilation with recent clang. - - diskfilter: Make name a const char to fix compilation error. - - dmraid_nvidia: Set a name to usable value to avoid null dereference. - Reported by: Andrei Borzenkov - - configure.ac: Handle powerpc64le compiler - Also-by: Paulo Flabiano Smorigo - -2015-07-20 Bernhard Übelacker - - loader/linux: Make trailer initrd entry aligned again. - Regression from commit: - loader/linux: do not pad initrd with zeroes at the end - a8c473288d3f0a5e17a903a5121dea1a695dda3b - - Wimboot fails since the change above because it expects the "trailer" - initrd element on an aligned address. - This issue shows only when newc_name is used and the last initrd - entry has a not aligned size. - -2015-07-16 Vladimir Serbinenko - - XFS: Fix wrong alignment treatment. - - grub_ext2_read_block: Fix return type on error. - -2015-07-05 Andrei Borzenkov - - use TARGET_LDFLAGS in grub_PROG_OBJCOPY_ABSOLUTE - That's what Makefile will use and it is required if unusual flags - must be passed to linker (e.g. to build ppc32 code on ppc64le with clang). - -2015-06-26 Michael Chang - - Fix missing byte order conversion in get_btrfs_fs_prefix function - Since btrfs on-disk format uses little-endian, the searched item types - (ROOT_REF, INODE_REF) need converting the byte order in order to - function properly on big-endian systems. - -2015-06-26 Andrei Borzenkov - - chainloader: fix resoource leak - Found by: Coverity scan. - CID: 96651 - - loader/bsd: fix memory leak - Found by: Coverity scan. - CID: 96662, 96665 - -2015-06-20 Andrei Borzenkov - - loader/bsd: free memory leaks - Found by: Coverity scan. - CID: 96671, 96658, 96653 - - search_wrap: fix memory leak - Found by: Coverity scan. - CID: 96675 - - password_pbkdf2: fix memory leak - Found by: Coverity scan. - CID: 96676 - - normal: fix memory leak - Found by: Coverity scan. - CID: 96677 - - efi/serial: fix memory leak - Found by: Coverity scan. - CID: 96678 - - ohci: fix memory leak - Found by: Coverity scan. - CID: 96679 - - loader/bsd: free memory leaks - Found by: Coverity scan. - CID: 96682 - - multiboot: fix memory leak - Found by: Coverity scan. - CID: 96684 - - normal: fix memory leak - Found by: Coverity scan. - CID: 96685 - - loader/bsd: fix memory leak - Found by: Coverity scan. - CID: 96686 - - reed_solomon: fix memory leak - Found by: Coverity scan. - CID: 96688 - - usb: fix use after free - Found by: Coverity scan. - CID: 96704 - - xnu: fix use after free - Found by: Coverity scan. - CID: 96706 - - disk/scsi: fix use after free - Found by: Coverity scan. - CID: 96713 - - efi/chainloader: fix use after free - Found by: Coverity scan. - CID: 96714 - - search: fix use after free - Found by: Coverity scan. - CID: 96715 - - NEWS: emu libusb support removed - -2015-06-19 Andrei Borzenkov - - grub-probe: fix memory leak in probe (ofpath) - Found by: Coverity scan. - CID: 73772 - -2015-06-19 Andrei Borzenkov - - grub-probe: restructure code to make static analysis easier - Current code in probe() could not be verified to not contain memory leaks. - Restructure code and ensure grub_device_close is always called at the end of - loop. - - Calms down Coverity scan. - CID: 73739 - -2015-06-19 Andrei Borzenkov - - zfs: fix memory leak - Found by: Coverity scan. - CID: 73647 - - xfs: silence Coverity overflow warning - inode size cannot really overflow integer, but Coverity does not know it. - CID: 96602 - - zfs: memory leak - Found by Coverity scan. - CID: 96603 - - unix/getroot: memory leak - Found by Coverity scan. - CID: 96605 - - unix/relpath: memory leak - Found by Coverity scan. - CID: 96606 - -2015-06-19 Andrei Borzenkov - - syslinux_parse: assorted issues found by Coverity - 1. Remove unneeded NULL check - CID: 96607 - - 2. Do not allocate storage for initrd, copy it directly from input - buffer. Avoids memory leak in failure path. - CID: 96604 - - 3. Unchecked error return from print() - CID: 96601, 73595 - -2015-06-19 Andrei Borzenkov - - syslinux_parse: make print_escaped actually stop before `to' - The only current user is mboot.c32 which unfortunately is not covered - by regression tests. - -2015-06-18 Andrei Borzenkov - - fat: fix handling of "." and ".." directory entries - Emulate dot and dotdot in root directory. For other directories do not - add separator between name and extension for these two special entries. - - Closes: 45335 - -2015-06-18 Andrei Borzenkov - - tests: regression tests for "." and ".." directory entries - -2015-06-16 Andrei Borzenkov - - efinet: enable hardware filters when opening interface - Exclusive open on SNP will close all existing protocol instances which - may disable all receive filters on interface. Reinstall them after we - opened protocol exclusively. - - Also follow UEFI specification recommendation and stop interfaces when - closing them: - - Unexpected system errors, reboots and hangs can occur if an OS is loaded - and the network devices are not Shutdown() and Stopped(). - - Also by: Mark Salter - Closes: 45204 - -2015-06-16 Andrei Borzenkov - - NEWS: mention libgcc removal - -2015-06-15 Paulo Flabiano Smorigo - - Add flag for powerpc ieee1275 to avoid unneeded optimizations - -2015-06-12 Mark Salter - - Fix exit to EFI firmware - The current code for EFI grub_exit() calls grub_efi_fini() before - returning to firmware. In the case of ARM, this leaves a timer - event running which could lead to a firmware crash. This patch - changes this so that grub_machine_fini() is called with a NORETURN - flag. This allows machine-specific shutdown to happen as well - as the shutdown done by grub_efi_fini(). - -2015-06-12 Paul Menzel - - disk/ahci.c: Use defines `GRUB_AHCI_HBA_PORT_CMD_SPIN_UP` and `GRUB_AHCI_HBA_PORT_CMD_POWER_ON` - Instead of hard coding `2` and `4` use the macros defined already at the - top of the file. As a consequence, wrap the now too long line. - -2015-06-12 Andrei Borzenkov - - NEWS: XFS v5 support - -2015-06-12 Jan Kara - - xfs: V5 filesystem format support - Add support for new XFS on disk format. We have to handle optional - filetype fields in directory entries, additional CRC, LSN, UUID entries - in some structures, etc. - - xfs: Add helpers for inode size - Add helpers to return size of XFS inode on disk and when loaded in - memory. - -2015-06-04 Toomas Soome - - multiboot_header_tag_module_align fix to confirm multiboot specification - -2015-06-02 Leif Lindholm - - configure.ac: clean up arm64 soft-float handling - Fix compilation with gcc 5.1 (avoid internal compiler error), by - replacing explicit -march +nofp+nosimd options with -mgeneral-regs-only. - - This also enables the removal of some further conditional build flag - setting. - -2015-06-01 dann frazier - - arm64/setjmp: Add missing license macro - Including the setjmp module in an arm64-efi image will cause it to - immediately exit with an "incompatible license" error. - - The source file includes a GPLv3+ boilerplate, so fix this by declaring a - GPLv3+ license using the GRUB_MOD_LICENSE macro. - -2015-05-31 Paul Menzel - - disk/ahci.c: Add port number to port debug messages - Currently, some messages cannot be mapped to the port they belong to as - the port number is missing from the output. So add `port: n` to the - debug messages. - -2015-05-30 Andrei Borzenkov - - Clarify use of superusers variable and menu entry access - superusers controls both CLI and editing. Also explicitly mention that - empty superusers disables them. - - "Access to menuentry" is a bit vague - change to "execute menuentry" - to make it obvious, what access is granted. - -2015-05-30 Paul Menzel - - Correct spelling of *scheduled* - Run the command below - - $ git grep -l schedulded | xargs sed -i 's/schedulded/scheduled/g' - - and revert the change in `ChangeLog-2015`. - - Including "miscellaneous" spelling fix noted by richardvoigt@gmail.com - -2015-05-30 Toomas Soome - - zfs extensible_dataset and large_blocks feature support - large blocks basically use extensible dataset feature, or to be exact, - setting recordsize above 128k will trigger large_block feature to be - enabled and storing such blocks is using feature extensible dataset. so - the extensible dataset is prerequisite. - - Changes implement read support extensible dataset… instead of fixed DMU - types they dont specify type, making it possible to use fat zap objects - from bonus area. - -2015-05-27 Vladimir Serbinenko - - multiboot1: never place modules in low memory. - While in theory permitted by the spec, modules rarely fit in low memory - anyway and not every kernel is able to handle modules in low memory anyway. - At least VMWare is known not to be able to handle modules at arbitrary - locations. - -2015-05-24 Paul Menzel - - disk/ahci: Use defines `GRUB_ATA_STATUS_BUSY` and `GRUB_ATA_STATUS_DRQ` - Instead of hard coding `0x88` use the macros defined in `disk/ata.h`. - -2015-05-19 Paul Menzel - - cb_timestamps.c: Add new time stamp descriptions - Add the descriptions of the “coreâ€, that means no vendorcode or payload, - coreboot time stamps added up to coreboot commit a7d92441 (timestamps: - You can never have enough of them!) [1]. - - Running `coreboot_boottime` in the GRUB command line interface now shows - descriptions for all time stamps again on the ASRock E350M1. - - [1] http://review.coreboot.org/9608 - -2015-05-17 Andrei Borzenkov - - bootp: ignore gateway_ip (relay) field. - From RFC1542: - - The 'giaddr' field is rather poorly named. It exists to facilitate - the transfer of BOOTREQUEST messages from a client, through BOOTP - relay agents, to servers on different networks than the client. - Similarly, it facilitates the delivery of BOOTREPLY messages from the - servers, through BOOTP relay agents, back to the client. In no case - does it represent a general IP router to be used by the client. A - BOOTP client MUST set the 'giaddr' field to zero (0.0.0.0) in all - BOOTREQUEST messages it generates. - - A BOOTP client MUST NOT interpret the 'giaddr' field of a BOOTREPLY - message to be the IP address of an IP router. A BOOTP client SHOULD - completely ignore the contents of the 'giaddr' field in BOOTREPLY - messages. - - Leave code ifdef'd out for the time being in case we see regression. - - Suggested by: Rink Springer - Closes: 43396 - -2015-05-17 Andrei Borzenkov - - hostdisk: fix crash with NULL device.map - grub-macbless calls grub_util_biosdisk_init with NULL device.map. - -2015-05-14 Andrei Borzenkov - - zfs: fix integer truncation in zap_lookup - Size after shift could exceed 16 bits; use grub_unit32_t for result. - - Reported and tested by: Kostya Berger - Closes: 44448 - -2015-05-13 Andrei Borzenkov - - remove extra newlines in grub_util_* strings - grub_util_{info,warn,error} already add trailing newlines, so remove - them from format strings. Also trailing full stops are already added. - -2015-05-12 Jan Kara - - xfs: Convert inode numbers to cpu endianity immediately after reading - Currently XFS driver converted inode numbers to native endianity only - when using them to compute inode position. Although this works, it is - somewhat confusing. So convert inode numbers when reading them from disk - structures as every other field. - -2015-05-11 Jan Kara - - xfs: Fix termination loop for directory iteration - Directory iteration used wrong position (sizeof wrong structure) for - termination of iteration inside a directory block. Luckily the position - ended up being wrong by just 1 byte and directory entries are larger so - things worked out fine in practice. But fix the problem anyway. - -2015-05-08 Andrei Borzenkov - - acpi: do not skip BIOS scan if EBDA length is zero - EBDA layout is not standardized so we cannot assume first two bytes - are length. Neither is it required by ACPI standard. HP 8710W is known - to contain zeroes here. - - Closes: 45002 - -2015-05-07 Andrei Borzenkov - - Add asm-tests to tarball - -2015-05-07 Vladimir Serbinenko - - util/grub-mkrescue: Fix compilation - -2015-05-07 Andrei Borzenkov - - efinet: open Simple Network Protocol exclusively - EDK2 network stack is based on Managed Network Protocol which is layered - on top of Simple Management Protocol and does background polling. This - polling races with grub for received (and probably trasmitted) packets - which causes either serious slowdown or complete failure to load files. - - Open SNP device exclusively. This destroys all child MNP instances and - stops background polling. - - Exclusive open cannot be done when enumerating cards, as it would destroy - PXE information we need to autoconfigure interface; and it cannot be done - during autoconfiguration as we need to do it for non-PXE boot as well. So - move SNP open to card ->open method and add matching ->close to clean up. - - Based on patch from Mark Salter - - Also-By: Mark Salter - Closes: 41731 - -2015-05-07 Andrei Borzenkov - - efinet: skip virtual IPv4 and IPv6 devices when enumerating cards - EDK2 PXE driver creates two child devices - IPv4 and IPv6 - with - bound SNP instance. This means we get three cards for every physical - adapter when enumerating. Not only is this confusing, this may result - in grub ignoring packets that come in via the "wrong" card. - - Example of device hierarchy is - - Ctrl[91] PciRoot(0x0)/Pci(0x3,0x0) - Ctrl[95] PciRoot(0x0)/Pci(0x3,0x0)/MAC(525400123456,0x1) - Ctrl[B4] PciRoot(0x0)/Pci(0x3,0x0)/MAC(525400123456,0x1)/IPv4(0.0.0.0) - Ctrl[BC] PciRoot(0x0)/Pci(0x3,0x0)/MAC(525400123456,0x1)/IPv6(0000:0000:0000:0000:0000:0000:0000:0000) - - Skip PXE created virtual devices when enumerating cards. Make sure to - find real card when applying initial autoconfiguration during PXE boot, - this information is associated with one of child devices. - -2015-05-07 Andrei Borzenkov - - efidisk: move device path helpers in core for efinet - - convert to, not from, CPU byte order in DNS receive function - -2015-05-07 Andrei Borzenkov - - loader/linux: do not pad initrd with zeroes at the end - Syslinux memdisk is using initrd image and needs to know uncompressed - size in advance. For gzip uncompressed size is at the end of compressed - stream. Grub padded each input file to 4 bytes at the end, which means - syslinux got wrong size. - - Linux initramfs loader apparently does not care about trailing alignment. - So change code to align beginning of each file instead which atomatically - gives us the correct size for single file. - - Reported-By: David Shaw - -2015-05-07 Daniel Kiper - - i386/relocator: Remove unused extern grub_relocator64_rip_addr - -2015-05-07 Vladimir Serbinenko - - grub-install-common: Increase buf size to 8192 as modinfo.sh is bigger. - -2015-05-07 Vladimir Serbinenko - - grub-mkrescue: Recognize -output as an alias of --output. - This helps us to be in line with xorriso -as mkisofs. - - Suggested by: Thomas Schmitt - -2015-05-07 Vladimir Serbinenko - - linux.c: Ensure that initrd is page-aligned. - - Revert parts accidentally committed 2 commits ago. - -2015-05-07 Fu Wei - - fdt.h: Add grub_fdt_set_reg64 macro - - arm64: Export useful functions from linux.c - -2015-05-04 Andrei Borzenkov - - Revert "efinet: memory leak on module removal" - This reverts commits 47b2bee3ef0ea60fc3f5bfc37f3784e559385297 - and 8d3c4544ffdd0289a4b0bdeb0cdc6355f801a4b3. It is not safe - to free allocated cards, dangling pointers main remain. Such - cleanup requires more changes in net core. - - efinet: cannot free const char * pointer - - efinet: memory leak on module removal - -2015-05-03 Andrei Borzenkov - - zfs: add missing NULL check and fix incorrect buffer overwrite - grub_memset should zero out padding after data end. It is not clear - why it is needed at all - ZFS block is at least 512 bytes and power - of two, so it is always multiple of 16 bytes. This grub_memset - apparently never did anything. - -2015-05-03 Toomas Soome - - zfs: com.delphix:embedded_data feature support - - zfs: com.delphix:hole_birth feature support - In the past birth was always zero for holes. This feature started - to make use of birth for holes as well, so change code to test for - valid DVA address instead. - -2015-04-29 Andrei Borzenkov - - grub-mkconfig: use $pkgdatadir in scripts - Otherwise scripts will source wrong grub-mkconfig_lib. - -2015-04-24 Vladimir Serbinenko - - Remove -V in grub-mkrescue.c - It clashhes with -V which is alias to -volid. - -2015-04-13 Toomas Soome - - getroot: include sys/mkdev.h for makedev - Solaris (like) systems need to include sys/mkdev.h for makedev() function. - -2015-04-13 Toomas Soome - - core/partmap: rename 'sun' to avoid clash with predefined symbol - the symbol “sun†is defined macro in solaris derived systems, from - gcc -dM -E: - - and therefore can not be used as name. - -2015-04-12 Paul Menzel - - docs/grub.texi: Fix spelling of cbfstool - -2015-04-06 Andrei Borzenkov - - core: avoid NULL derefrence in grub_divmod64s - It can be called with NULL for third argument. grub_divmod32* for - now are called only from within wrappers, so skip check. - - Reported-By: Michael Zimmermann - -2015-03-28 Andrei Borzenkov - - do not emit cryptomount without crypto UUID - -2015-03-28 Sarah Newman - - grub-core/loader/i386/xen.c: Initialized initrd_ctx so we don't free a random pointer from the stack. - -2015-03-27 Andrei Borzenkov - - net: trivial grub_cpu_to_XX_compile_time cleanup - -2015-03-27 Lunar - - syslinux: Support {vesa,}menu.c32. - -2015-03-27 Steve McIntyre - - Recognize EFI platform even in case of mismatch between Linux and EFI. - Some x86 systems might be capable of running a 64-bit Linux kernel but - only use a 32-bit EFI (e.g. Intel Bay Trail systems). It's useful for - grub-install to be able to recognise such systems, to set the default - x86 platform correctly. - - To allow grub-install to know the size of the firmware rather than - just the size of the kernel, there is now an extra EFI sysfs file to - describe the underlying firmware. Read that if possible, otherwise - fall back to the kernel type as before. - -2015-03-27 Michael Zimmermann - - Add missing initializers to silence suprious warnings. - -2015-03-27 Leif Lindholm - - dl_helper: Cleanup - Use the new thumb_get_instruction_word/thumb_set_instruction_word - helpers throughout. - - Style cleanup (missing spaces). - - Move Thumb MOVW/MOVT handlers into Thumb relocation section of file. - -2015-03-27 Martin Wilck - - efinet: Check for immediate completition. - This both speeds GRUB up and workarounds unexpected EFI behaviour. - -2015-03-27 Vladimir Serbinenko - - Make Makefile.util.def independent of platform. - -2015-03-27 Daniel Kahn Gillmor - - util/mkimage: Use stable timestamp when generating binaries. - -2015-03-27 Vladimir Serbinenko - - modinfo.sh.in: Add missing config variables. - - Makefile.core.def: Remove obsolete LDADD_KERNEL - - arp, icmp: Fix handling in case of oversized or invalid packets. - This restrict ARP handling to MAC and IP addresses but in practice we need - only this case anyway and other cases are very rar if exist at all. It makes - code much simpler and less error-prone. - -2015-03-23 Colin Watson - - hostfs: Drop unnecessary feature test macros - _BSD_SOURCE was added to allow the use of DT_DIR, but that was removed - in e768b77068a0b030a07576852bd0f121c9a077eb. While adding - _DEFAULT_SOURCE as well works around problems with current glibc, - neither is in fact needed nowadays. - -2015-03-20 Vladimir Serbinenko - - compiler-rt-emu: Add missing file. - - emunet: Fix init error checking. - Otherwise emunet doesn't expose any cards. - - fddboot_test: Add -no-pad to xorriso. - - grub-mkrescue: pass all unrecognized options unchanged to xorriso. - - cacheinfo: Add missing license information. - -2015-03-19 Andrei Borzenkov - - grub-fs-tester: add LVM RAID1 support - LVM miscalculates bitmap size with small extent, so start with 16K as - for other RAID types. - - Until version 2.02.103 LVM counts metadata segments twice when checking - available space, reduce segment count by one to account for this bug. - -2015-03-19 Andrei Borzenkov - - core: add LVM RAID1 support - Closes 44534. - -2015-03-16 Andrei Borzenkov - - grub-fs-tester: explicitly set segment type for LVM mirror - LVM mirror defaults to RAID1 today and can be different on different - systems as set in lvm.conf. - -2015-03-15 Andrei Borzenkov - - grub-fs-tester: better estimation of filesystem time for LVM/RAID - Write activity with LVM/RAID can happen after filesystem is unmounted. - In my testing modification time of loop files was 15 - 20 seconds - after unmount. So use time as close to unmount as possible as - reference instead. - -2015-03-06 Vladimir Serbinenko - - hfsplus: Fix potential access to uninited memory on invalid FS - -2015-03-06 Jon McCune - - autogen.sh: Allow overriding the python to be used by setting $PYTHON. - Some installations have several python versions installed. Allow user - to choose which one to use by setting $PYTHON. - -2015-03-05 Andrei Borzenkov - - update gnulib/argp-help.c to fix garbage in grub-mknetdir --help output - argp_help attempts to translate empty string, which results in printing - meta information about translation, like in - - bor@opensuse:~/build/grub> grub2-mknetdir --help - ИÑпользование: grub2-mknetdir [ПÐРÐМЕТР…] - Project-Id-Version: grub 2.02-pre2 - Report-Msgid-Bugs-To: bug-grub@gnu.org - ... - - Update gnulib/argp-help.c to the current version which fixes this - (commit b9bfe78424b871f5b92e5ee9e7d21ef951a6801d). - -2015-03-05 Andrey Borzenkov - - update m4/extern-inline.m4 to upstream version to fix compilation on FreeBSD - In file included from util/grub-mkimage.c:54:0: - ./grub-core/gnulib/argp.h:627:49: error: '__sbistype' is static but - used in inline function '_option_is_short' which is not static - [-Werror] cc1: all warnings being treated as errors gmake[2]: *** - [util/grub_mkimage-grub-mkimage.o] Error 1 - - Update m4/extern-inline.m4 to current upstream gnulib version that - contains fix for this (commit b9bfe78424b871f5b92e5ee9e7d21ef951a6801d). - - Reported-By: Beeblebrox - -2015-03-04 Vladimir Serbinenko - - syslinux_parse: Fix the case of unknown localboot. - Reported by: Jordan Uggla - - configure.ac: Fix the name of pciaccess header. - - Fix canonicalize_file_name clash. - canonicalize_file_name clashed with gnulib function. Additionally - it was declared in 2 places: emu/misc.h and util/misc.h. Added - grub_ prefix and removed second declaration. - -2015-03-03 Vladimir Serbinenko - - Remove emu libusb support. - It's disabled by default and has been broken for a long time. - As nobody is interested in fixing and maintaining it, remove it. - - configure.ac: Remove unused COND_clang - - Remove libgcc dependency. - libgcc for boot environment isn't always present and compatible. - libgcc is often absent if endianness or bit-size at boot is different - from running OS. - libgcc may use optimised opcodes that aren't available on boot time. - So instead of relying on libgcc shipped with the compiler, supply - the functions in GRUB directly. - Tests are present to ensure that those replacement functions behave the - way compiler expects them to. - - types.h: Use __builtin_bswap* with clang. - clang pretends to be GCC 4.2 but we use __builtin_bswap* only with GCC 4.3+. - clang support __builtin_bswap*, so use it. - - configure.ac: Set $CPPFLAGS when checking for no_app_regs. - Fixes compilation for sparc64 with clang. - - Don't continue to query block-size if disk doesn't have it. - Stops poluting screen with a lot of "block-size: exception -21". - -2015-02-28 Andrei Borzenkov - - grub-probe: free temporary variable - -2015-02-28 Vladimir Serbinenko - - exclude.pot: Add new technical strings - - grub-probe: Mark a "[default=]" for translation. - - grub-shell: Add missing --locale-directory. - Fixes the language tests is no make install was done. - - ntfs_test: Skip is setfattr is unavailable. - -2015-02-26 Vladimir Serbinenko - - emu/cache: Change declaration of __clear_cache to match builtin declaration. - Fixes compile of arm64-emu. - - arm/dl: Fix handling of nonstandard relocation sizes - - gzio: Optimize by removing division. - - raid6: Optimize by removing division. - - dmraid_nvidia: Fix division by 0 and missing byte-swap. - - crypto: restrict cipher block size to power of 2. - All current ciphers have blocks which are power of 2 and it's - unlikely to change. Other block length would be tricky to handle anyway. - This restriction allows avoiding extra divisions. - - jpeg: Optimise by replacing division with shifts. - - png: Optimize by avoiding divisions. - - Add missing lib/division.c - - fbblit: Optimize by replacing division with additions and shifts. - - bitmap_scale: Optimize by moving division out of the loop. - - minilzo: Skip parts tha we don't need. - -2015-02-23 Vladimir Serbinenko - - mips: Fix soft-float handling. - Add -msoft-float alongside clang arguments to specify ABI. - Specify ABI in asm files explicitly. - This trigers asm warning due to gcc failing to propagate -msoft-float - but it's tolerable. - - Add missing grub_ prefix in memcpy invocation - - Allow clang compilation for thumb with -mthumb-interwork. - clang already uses -mthumb-interwork behaviour even thout it doesn't - support the option. - - arm64: Fix compilation failure. - Don't supply +nosimd to asm files. - Otherwise +nosimd coming from flags forbids some of instructions - used in cache_flush. - - Supply signed division to fix ARM compilation. - Previously we supplied only unsigned divisions on platforms that need software - division. - Yet compiler may itself use a signed division. A typical example would be a - difference between 2 pointers which involves division by object size. - -2015-02-22 Vladimir Serbinenko - - acpi: Fix unused function warning. - - configure.ac: Add ia64-specific way to disable floats. - - i386/tsc: Fix unused function warning on xen. - -2015-02-22 Vladimir Serbinenko - - Experimental support for clang for sparc64. - Automatically discover command line options to make clang and - gcc behave in same way. - - Tested with qemu. - -2015-02-22 Vladimir Serbinenko - - Discover which option provides soft-float on configure stage. - Deals with clang needing other arguments to stop issuing floating - instructions than gcc. - -2015-02-21 Vladimir Serbinenko - - mips: Switch to more portable .org - Binary is unchanged. - - sparc64: Switch to more portable .org. - Binaries are unchanged. - - kernel-8086: Switch to more portable .org. - - Relax requirements on asm for non-BIOS i386 platforms. - These platforms don't have a hard limit on size of resulting code16 - code, so we don't care if assembly is bigger than necessarry. - - qemu: Switch to more portable .org - Binary is checked identical. - - qemu: Fix GateA20 enabling. - GateA20 code was inactive due to address error. - - qemu: Fix compilation - - Remove realmode.S from coreboot and qemu. - It's not used there. - - Remove obsolete ADDR32 and DATA32 checks. - - i386: Remove needless ADDR32 prefixes when address is known and fixed. - Shaves off 6 bytes in lzma_decompress.img. - - i386-pc/boot: Explicitly mark kernel_address[_high] as local. - Otherwise apple asm might try to make accesses relocatable. - - Change dot assignmnet to more portable .org. - Binary is unchanged (verified) - - i386: Move from explicit ADDR32/DATA32 prefixes to instruction suffixes. - Is more portable. - Binary is unchanged (verified). - - Test which flags make our asm compile. - Previously we relied on assumption that clang always needs -no-integrated-as - but it's not always true. - - INSTALL: clarify that clang support is experimental - - zfs/mzap_lookup: Fix argument types - - wildcard: Mark unused argument as such. - - ofdisk: Exclude floppies from scanning. - It causes similar hang as CD on at least the qemu. - - configure: Add -msoft-float to CCASFLAGS - Otherwise mismatch between API flags triggers linker failure - - mips/startup_raw: Use more portable .asciz - - Provide __aeabi_mem{cpy,set} - Fixes ARM compilation - - div_test: Don't try to divide by zero - - INSTALL: Fix names of host flags to match actual behaviour - - Strip .MIPS.abiflags which causes compile failure - -2015-02-20 Vladimir Serbinenko - - configure: Move adding of include options to the very end to avoid subshell. - - configure: Add missing comma. - -2015-02-16 Vladimir Serbinenko - - ext2: Ignore INCOMPAT_MMP. - It's not really incompatible as long as driver never writes to FS. - - ext2: Support META_BG. - This fixes bug that system would become unbootable after ext* - online resize if no resize_inode was created at ext* format time. - -2015-02-16 Andrei Borzenkov - - tests: remove hardcoded paths from syslinux_test - abs_top_srcdir appeared in Autoconf 2.52f. Minimal grub requirement - is 2.60 so we should be good here. - - build-sys: add syslinux test files to tarball - -2015-02-16 Vladimir Serbinenko - - Add test for syslinux converter - -2015-02-16 Vladimir Serbinenko - - Don't remove initrd= parameter. - Based on simplified patch by Lunar. - - Reported by: Lunar - -2015-02-16 Vladimir Serbinenko - - syslinux_parse: Always output comments even if no entries are found. - -2015-02-15 Andrei Borzenkov - - diskfilter_make_raid: more memory leaks in failure path - -2015-02-14 Vladimir Serbinenko - - disk/lvm: Use zalloc to ensure that segments are initialised to sane value. - Reported by: EmanueL Czirai. - -2015-02-14 Daniel Kiper - - multiboot2: Fix information request tag size calculation - -2015-02-14 Andrei Borzenkov - - diskfilter: fix double free of lv names for mdraid - Avoid micro-optimization in grub_diskfilter_make_raid and make sure - name and fullname are independent strings. This avoids need to special - case it everywhere else. - - Also fix memory leak in failure case in grub_diskfilter_make_raid. - - Closes: 41582 - -2015-02-14 Andrei Borzenkov - - diskfilter: fix crash in validate_lv for mdraid arrays - Commit 750f4bacd3262376ced3f837d8dc78f834ca233a put LV validation before - actual vg assignment. Make grub_diskfilter_make_raid to assign ->vg as - happens in other cases for consistency. Also clean up redundant code and add - explicit NULL lv->vg check in validate_lv. - - Also fix segment validation in validate_lv; it became obvious when crash - was fixed. - - Closes: 44199 - -2015-02-12 Jiri Slaby - - util: mkimage, fix gcc5 build failure - gcc5 reports: - ../util/mkimage.c: In function 'grub_install_get_image_target': - ../util/mkimage.c:954:5: error: loop exit may only be reached after undefined behavior [-Werror=aggressive-loop-optimizations] - && j < ARRAY_SIZE (image_targets[i].names); j++) - ^ - ../util/mkimage.c:953:39: note: possible undefined statement is here - for (j = 0; image_targets[i].names[j] - ^ - - Well, let's move the index 'j' test before accesing the array to: - 1) make the loop obvious - 2) make gcc happy - -2015-02-03 Leif Lindholm - - arm: implement additional relocations generated by gcc 4.9 at -O3 - GCC 4.9 also generates R_ARM_THM_MOVW_ABS_NC and R_ARM_THM_MOVT_ABS, - as an alternative to ABS32. - -2015-01-30 Andrei Borzenkov - - setup: fix blocklist size calculation - Found by: Coverity scan. - - grub-fstest: fix descriptor leak - Found by: Coverity scan. - -2015-01-30 Andrei Borzenkov - - net/pxe: fix error condition - Test return value of grub_netbuff_reserve(), buf itself cannot be - NULL here. - - Found by: Coverity scan. - -2015-01-30 Andrei Borzenkov - - grub-mkimage: fix potential NULL pointer dereference - Move fatal check whether symtab_section is NULL before first reference. - - Found by: Coverity scan. - -2015-01-30 Andrei Borzenkov - - net/ip: check result of grub_netbuff_push - Found by: Coverity scan. - - tests: add test command file tests - This requires access to files in both host and grub image, so - implementing as separate test unit instead of script test was - more easy. - - test: consistently use TMPDIR and same name pattern for temp files - - test: fix previous commit - we need to return from subexpression - ( ... ) was processed recursively, we need to return from it. Revert - this change. - - test: do not stop after first file test or closing bracket - Closes: 44115 - -2015-01-28 Leif Lindholm - - configure.ac: don't use -msoft-float for arm64 - aarch64 toolchains do not support the -msoft-float option added by - commit 3661261f. Insted, for arm64 use -march=armv8-a+nofp+nosimd. - - Reported-by: Ryan Harkin - -2015-01-28 Andrei Borzenkov - - script/execute.c: fix memory leak. - Make sure to continue loop over array after failure to free - allocated strings. - - Found by: Coverity scan. - -2015-01-28 Andrei Borzenkov - - syslinux_parse: fix memory leak. - Found by: Coverity scan. - -2015-01-27 Andrei Borzenkov - - Change quotes to match overall style in NEWS - - loader/xnu: fix memory leak. - Foound by: Coverity scan. - - util/grub-probe: fix memory leaks. - Found by: Coverity scan. - - fs/hfsplus: fix memory leak. - Found by: Coverity scan. - - fs/zfs/zfscrypt.c: fix indentation. - - fs/zfs/zfscrypt.c: fix memory leaks. - Found by: Coverity scan. - - commands/parttool: fix memory leak. - Found by: Coverity scan. - - fs/zfs/zfs.c: fix memory leak. - Found by: Coverity scan. - - linux/ofpath: fix descriptor leak - Found by: Coverity scan - - linux/hostdisk: use strncpy instead of strlcpy - strlcpy is not available on Linux as part of standard libraries. - It probably is not worth extra configure checks espicially as we - need to handle missing function anyway. - -2015-01-27 Vladimir Serbinenko - - Document intentional fallthroughs. - Found by: Coverity scan. - - linux/ofpath: Fix error handling. - Found by: Coverity Scan. - - linux/hostdisk: Limit strcpy size to buffer size. - Found by: Coverity scan. - - fs/zfscrypt: Add missing explicit cast. - Found by: Coverity scan. - - fs/zfs: Fix error handling. - Found by: Coverity Scan. - -2015-01-27 Vladimir Serbinenko - - fs/{cbfs,cpio}: Remove useless check if mode is NULL. - Callers already ensure that it's not null. - - Found by: Coverity Scan. - -2015-01-27 Vladimir Serbinenko - - commands/acpi: Use ALIGN_UP rather than manual expression. - Improves readability and hopefully automatic scanning. - - Found by: Coverity Scan. - -2015-01-26 Andrei Borzenkov - - util/setup: fix memory leak. - Found by: Coverity scan. - - util/mkimage: fix memory leaks. - Found by: Coverity scan. - - util/grub-mount: fix descriptor leak. - Found by: Coverity scan. - - util/grub-mkstandalone: fix memory leak. - Found by: Coverity scan. - - util/grub-install: rearrange code to avoid memory leak. - Found by: Coverity scan. - - linux/getroot: fix memory leak. - Found by: Coverity scan. - - util/install: fix memory leak. - Found by: Coverity scan. - - util/setup: fix memory leak. - Found by: Coverity scan. - - linux/ofpath: fix various memory leaks. - Found by: Coverity scan. - - linux/getroot: fix descriptor leak. - Found by: Coverity scan. - -2015-01-26 Vladimir Serbinenko - - util/misc.c: Check ftello return value. - Found by: Coverity scan. - - grub-macbless: Fix resource leak. - Found by: Coverity scan. - - grub-install: Fix memory leak. - Found by: Coverity scan. - - grub-install-common: Fix sizeof usage. - Found by: Coverity scan. - - util/getroot: Add missing grub_disk_close. - Found by: Coverity scan. - - vbe: Fix incorrect register usage. - Found by: Coverity scan. - - unix/password: Fix file descriptor leak. - Found by: Coverity scan. - - linux/getroot: Fix error handling. - Found by: Coverity scan. - - linux/blocklist: Fix memory leak. - Found by: Coverity scan. - - devmapper/getroot: Fix memory leak. - Found by: Coverity scan. - - normal/misc: Close device on all pathes. - Found by: Coverity scan. - - normal/main: Fix error handling. - Found by: Coverity scan. - - xnu: Add missing error check. - Found by: Coveriy scan. - - plan9: Add missing grub_device_close. - Found by: Coverity scan. - - multiboot: Simplify to avoid confusing assignment. - Found by: Coverity scan. - - bsd: Add missing null-pointer check. - Found by: Coverity scan. - - lib/syslinux_parse: Add missing error check. - Found by: Coverity scan. - - lib/syslinux_parse: Fix memory leak. - Found by: Coveriy scan. - - lib/syslinux_parse: Add missing alloc check. - Found by: Coverity scan. - - i386/pc/mmap: Fix memset size. - Found by: Coverity scan. - - gfxmenu/theme_loader: Add missing allos error check. - Found by: Coverity scan. - - gfxmenu/icon_manager: Fix null pointer dereference. - Found by: Coverity scan. - - fs/ufs: Add missing error check. - Found by: Coverity scan. - - configure.ac: Always add -D_FILE_OFFSET_BITS=64. - -2015-01-25 Vladimir Serbinenko - - fs/sfs: Fix error check and add sanity check. - Found by: Coverity scan. - - fs/reiserfs: Fix sector count overflow. - Found by: Coverity scan. - - fs/ntfs: Add sizes sanity checks. - Found by: Coverity scan. - - fs/ntfs: Add missing free. - Found by: Coverity scan. - -2015-01-25 Vladimir Serbinenko - - fs/minix: Fix sector promotion to 64-bit. - While on it make GRUB_MINIX_ZONE2SECT into function. - - Found by: Coverity scan - -2015-01-25 Vladimir Serbinenko - - grub_iso9660_read: Explicitly check read_node return value. - Not really needed as grub_errno is already checked but is nicer. - - Found by: Coverity scan. - -2015-01-25 Andrei Borzenkov - - commands/fileXX: Fix remaining memory leak. - Found by: Coverity Scan. - -2015-01-25 Vladimir Serbinenko - - fs/hfs: Add pointer sanity checks. - Found by: Coverity scan. - - fs/hfs/hfs_open: Check that mount succeeded. - Found by: Coverity scan. - - fs/fat: Fix codepath to properly free on error. - Found by: Coverity scan. - - fs/cpio_common: Add a sanity check on namesize. - Found by: Coverity scan. - - fs/cbfs: Add missing free. - Found by: Coverity scan. - -2015-01-24 Vladimir Serbinenko - - font: Add missing free. - Found by: Coverity Scan. - - biosdisk: Add missing cast. - Found by: Coverity scan. - - disk/geli: Add missing free. - Found by: Coverity scan. - - disk/geli: Add missing seek success check. - Found by: Coverity scan. - - disk/diskfilter: Add missing lv presence check. - Found by: Coverity scan. - - disk/cryptodisk: Add missing error check. - Found by: Coverity scan. - -2015-01-24 Vladimir Serbinenko - - disk/ahci: Fix device_map_range argument. - Argument is not used on x86, hence it's gone unnoticed. - - Found by: Coverity scan. - -2015-01-24 Vladimir Serbinenko - - disk/AFsplitter: check argument validity before doing any allocs. - This avoids possible memory leaks. - - Found by: Coverity scan. - -2015-01-24 Vladimir Serbinenko - - commands/wildcard: Add missing free. - Found by: Coverity scan. - - commands/verify: Fix sha1 context zeroing-out. - Current code doesn't zero-out context completely. It's a minor issue - really as sha1 init already takes care of initing the context. - - commands/tr: Simplify and fix missing parameter test. - Found by: Coverity scan - - commands/syslinux: Add missing free. - Found by: Coverity scan. - - commands/parttool: Add missing device close. - Found by: Coverity scan. - - commands/nativedisk: Add missing device_close. - Found by: Coverity scan. - -2015-01-24 Vladimir Serbinenko - - commands/macbless: Handle device opening errors correctly. - Wrong variable was checked for errors. - - Found by: Coverity scan. - -2015-01-24 Vladimir Serbinenko - - commands/macbless: Fix potential overflow. - Is a minor concern as no such FS would be created under normal circumstances - and failure was benign. - - Found by: Coverity scan. - -2015-01-24 Vladimir Serbinenko - - commands/macbless: Remove incorrect grub_free. - Found by: Coverity Scan - - commands/legacycfg: Fix resource leaks. - - zfs: Fix disk-matching logic. - Reported by: Tim Chase - - commands/hdparm: Add missing grub_disk_close. - Found by: Coverity scan. - - gptsync: Add missing device_close. - Found by: Coverity scan - - commands/fileXX: Fix memory leak. - Found by: Coverity Scan. - -2015-01-24 Vladimir Serbinenko - - commands/file: Change the confusing loop stop condition. - Old condition was used to zero-out header variable on exit of the loop. - This is correct but confusing. Replace with in-loop logic. - - Found by: Coverity Scan. - -2015-01-24 Vladimir Serbinenko - - commands/acpi: Use ALIGN_UP rather than manual expression. - Improves readability and hopefully automatic scanning. - - Found by: Coverity Scan. - -2015-01-24 Vladimir Serbinenko - - uhci: Fix null pointer dereference. - Found by: Coverity scan. - - Always add -msoft-float to avoid compiler generating float arithmetics. - -2015-01-24 Vladimir Serbinenko - - Generate empty ChangeLog if no .git is available. - When making dist from a git snapshot without repo available make dist would - fail to find ChangeLog. Generate empty ChangeLog if no ChangeLog is already - present and repo is not available. - - Reported by: Andrei Borzenkov - -2015-01-24 Vladimir Serbinenko - - Makefile.am: Fix Changelog cutoff address. - gitlog-to-changelog Doesn't generate entries for cutoff day, only - for days after the cutoff date, adjust by one to compensate. - - efidisk: Return the determined root disk even if partition is unknown. - - util/grub-mkrescue.c: Always include part_msdos and part_gpt on EFI. - When booted from stick, EFI would use GPT partition and our root - device detection algortihm depends on GRUB's ability to see the same - partitions. Hence include msdos and gpt partmap modules on EFI even when - they're not needed to access root filesystem. - - conf/Makefile.common: Remove unused {LD,C}FLAGS_CPU. - - Autogenerate ChangeLog from git changelog. - Old ChangeLog is moved to ChangeLog-2015. For all changes starting from - this one ChangeLog will be generated from gitlog only on explicit make - invocation and make dist. - -2015-01-23 Vladimir Serbinenko - - * tests/file_filter/file: Really add missing file. - -2015-01-23 Andrei Borzenkov - - Mention platform "none" in NEWS - -2015-01-23 Andrey Borzenkov - - accept also hdX as alias to native Xen disk name - To be compatible with legacy pv-grub, sort disks by increasing order of handle - value. This allows reusing legacy pv-grub menu.lst which is using hdX names. - - Suggested-By: Michael Chang - Closes: 44026 diff --git a/thirdparty/grub-2.04/ChangeLog-2015 b/thirdparty/grub-2.04/ChangeLog-2015 deleted file mode 100644 index 869f6bfb8..000000000 --- a/thirdparty/grub-2.04/ChangeLog-2015 +++ /dev/null @@ -1,55487 +0,0 @@ -2015-01-23 Vladimir Serbinenko - - * tests/file_filter/file: Really add missing file. - -2015-01-23 Andrei Borzenkov - - * grub-core/disk/xen/xendisk.c: Accept hdX as disk names on Xen to - allow legacy menu.lst processing. - -2015-01-22 Felix Janda - - Remove direct _llseek code and require long filesystem libc. - -2015-01-20 Vladimir Serbinenko - - Remove potential division by 0 in gfxmenu. - -2015-01-20 Vladimir Serbinenko - - * grub-core/normal/menu_text.c (grub_menu_init_page): Avoid - returning 0 geometry to avoid divisions by 0. - -2015-01-20 Vladimir Serbinenko - - * grub-core/osdep/unix/cputime.c (grub_util_get_cpu_time_ms): Cache - sc_clk_tck and check it for sanity. - -2015-01-20 Vladimir Serbinenko - - * grub-core/kern/efi/mm.c (grub_efi_get_memory_map): Never return a - descriptor_size==0 to avoid potential divisions by zero. - -2015-01-20 Vladimir Serbinenko - - * grub-core/osdep/haiku/getroot.c (grub_util_find_partition_start_os): - Avoid division by zero. - -2015-01-20 Vladimir Serbinenko - - * grub-core/kern/generic/rtc_get_time_ms.c (grub_rtc_get_time_ms): Avoid - division by zero. - -2015-01-20 Vladimir Serbinenko - - * grub-core/loader/i386/xnu.c (guessfsb): Avoid division by 0. - -2015-01-20 Vladimir Serbinenko - - * grub-core/kern/i386/tsc.c (calibrate_tsc): Ensure that - no division by 0 occurs. - -2015-01-20 Vladimir Serbinenko - - * include/grub/misc.h (grub_div_roundup): Remove as it's unused. - -2015-01-20 Vladimir Serbinenko - - * grub-core/term/gfxterm.c: Avoid division by zero. - -2015-01-20 Vladimir Serbinenko - - Avoid division by zero in serial. - - * grub-core/term/serial.c (grub_cmd_serial): Ensure speed is not 0. - * grub-core/term/ns8250.c (serial_get_divisor): Exit if speed is 0. - -2015-01-20 Vladimir Serbinenko - - * grub-core/video/readers/jpeg.c: Avoid sivision by zero. - -2015-01-20 Vladimir Serbinenko - - * grub-core/disk/diskfilter.c: Validate volumes to avoid division - by zero. - -2015-01-20 Vladimir Serbinenko - - * include/grub/term.h: Avoid returining 0-sized terminal - as it may lead to division by zero. - -2015-01-20 Vladimir Serbinenko - - * grub-core/fs/zfs.c: Avoid divisions by zero. - -2015-01-20 Vladimir Serbinenko - - * grub-core/fs/btrfs.c: Avoid divisions by zero. - -2015-01-20 Vladimir Serbinenko - - * grub-core/lib/pbkdf2.c (grub_crypto_pbkdf2): Check that hash len is not 0. - -2015-01-20 Vladimir Serbinenko - - * grub-core/osdep/linux/blocklist.c (grub_install_get_blocklist): Check - blocksize validity. - -2015-01-20 Vladimir Serbinenko - - * grub-core/disk/i386/pc/biosdisk.c: Check disk size sanity. - -2015-01-20 Vladimir Serbinenko - - * grub-core/disk/ieee1275/nand.c (grub_nand_open): Check block size - validity. - -2015-01-20 Vladimir Serbinenko - - * grub-core/disk/dmraid_nvidia.c (grub_dmraid_nv_detect): Do not - divide by zero. - -2015-01-20 Vladimir Serbinenko - - * grub-core/fs/hfs.c (grub_hfs_mount): Additional filesystem - sanity checks. - -2015-01-20 Vladimir Serbinenko - - * grub-core/fs/minix.c: Additional filesystem - sanity checks. - -2015-01-20 Vladimir Serbinenko - - * grub-core/fs/ext2.c (grub_ext2_mount): Additional - checks for superblock validity. - -2015-01-20 Vladimir Serbinenko - - * grub-core/fs/ufs.c (grub_ufs_mount): Check - that sblock.ino_per_group is not 0. - -2015-01-20 Vladimir Serbinenko - - Reject NILFS2 superblocks with over 1GiB blocks. - - * grub-core/fs/nilfs2.c (grub_nilfs2_valid_sb): Check that - block size is <= 1GiB. - -2015-01-20 Vladimir Serbinenko - - * grub-core/disk/ata.c (grub_ata_setaddress): Check that geometry - is sane when using CHS addressing. - -2015-01-20 Vladimir Serbinenko - - * grub-core/disk/AFSplitter.c (AF_merge): Check that mdlen is not 0. - -2015-01-20 Vladimir Serbinenko - - * grub-core/commands/i386/pc/play.c (grub_cmd_play): Avoid - division by zero. - -2015-01-20 Vladimir Serbinenko - - * grub-core/bus/usb/usbtrans.c (grub_usb_bulk_maxpacket): Avoid - potentially returning 0. - -2015-01-20 Vladimir Serbinenko - - * grub-core/fs/minix.c (grub_minix_read_file): Avoid reading past - the end of file. - -2015-01-20 Vladimir Serbinenko - - * grub-core/fs/fshelp.c (grub_fshelp_read_file): Don't attempt to read - past the end of file. - -2015-01-20 Vladimir Serbinenko - - * grub-core/script/lexer.c (grub_script_lexer_yywrap): Update len - synchronously with line. - -2015-01-20 Vladimir Serbinenko - - Replace explicit sizeof divisions by ARRAY_SIZE. - -2015-01-19 Kris Moore - - * grub-core/disk/geli.c: Support GELI v6 and v7. - -2014-12-09 Andrei Borzenkov - - * grub-core/term/serial.c (grub_cmd_serial): Fix --rtscts - option processing. - -2014-12-07 David Kozub - - * grub-core/kern/arm/misc.S: fix unaligned 64bit local variable - in __aeabi_uidivmod - Fixes Savannah bug #43632. - -2014-12-07 Peter Nelson - - * grub-core/fs/ext2.c (grub_ext2_read_block): Support large sparse - chunks. - -2014-12-07 Andrei Borzenkov - - * util/grub-mkconfig_lib.in (version_test_gt): Remove redundant - non-portable '-n' echo option. - * util/grub.d/10_kfreebsd.in: Change how list is built to avoid - non-portable 'echo -n. - * util/grub.d/10_linux.in: Likewise (closes 43668). - * util/grub.d/20_linux_xen.in: Likewise. - * util/grub.d/30_os-prober.in: Print spaces directly to avoid - non-portable 'echo -n'. - -2014-12-07 Curtis Larsen - - * grub-core/net/tcp.c (grub_net_recv_tcp_packet): Fix double - free when multiple empty segments were received (closes 42765). - -2014-12-05 Andrei Borzenkov - - * tests/util/grub-shell.in: Support --files also for netboot. - * tests/file_filter_test.in: New file with file filters tests. - * Makefile.util.def: Add file_filter_test. - * conf/Makefile.extra-dist: ... and here. - * tests/file_filter/file.gz: Test file for file_filter_test. - * tests/file_filter/file.gz.sig: Likewise. - * tests/file_filter/file.lzop: Likewise. - * tests/file_filter/file.lzop.sig: Likewise. - * tests/file_filter/file.xz: Likewise. - * tests/file_filter/file.xz.sig: Likewise. - * tests/file_filter/keys: Likewise. - * tests/file_filter/keys.pub: Likewise. - * tests/file_filter/test.cfg: Likewise. - * grub-core/commands/verify.c: Fix memory corruption doing - signature check for network files (closes 43601). - -2014-12-01 Andrei Borzenkov - - * grub-core/loader/i386/xen_fileXX.c (grub_xen_get_infoXX): Fix - memory leak (CID 73645, 73782). - * grub-core/fs/zfs/zfsinfo.c (print_vdev_info): Fix memory leak - (CID 73635). - -2014-11-30 Andrei Borzenkov - - * grub-core/lib/syslinux_parse.c (free_menu): Do not free - inline array (CID 73610). - -2014-11-28 Andrei Borzenkov - - * grub-core/io/lzopio.c (test_header): Fix double free (CID 73665) - * grub-core/disk/geli.c (configure_ciphers): Fix memory leaks - (Coverity CID 73813, 73710) - * grub-core/disk/luks.c (configure_ciphers): Fix memory leaks - and use after free (Coverity CID 73813, 73710, 73730) - * grub-core/disk/luks.c (luks_recover_key): Fix memory leak (Coverity - CID 73854) - * util/grub-install-common.c (grub_install_get_target): Check return - value of grub_util_fd_read (Coverity CID 73819). - * util/grub-mkstandalone.c (add_tar_file): Fix out of bound access - to hd.magic (Coverity CID 73587, 73888, bug 43690). - -2014-11-20 Andrei Borzenkov - - * tests/util/grub-fs-tester.in: Consistently print output - of grub ls if test fails. - -2014-11-07 Leif Lindholm - - * grub-core/kern/efi/init.c: check value of *path before - dereferencing. - -2014-11-03 Michael Chang - - * grub-core/net/icmp6.c (grub_net_recv_icmp6_packet): Fix size - of neighbor solicitation packet in grub_netbuff_pull. - -2014-10-14 Andrei Borzenkov - - * grub-core/loader/arm/linux.c: Use full initializer for initrd_ctx to - avoid fatal warnings with older gcc (probably before 4.7). - * grub-core/loader/arm64/linux.c: Likewise. - * grub-core/loader/i386/linux.c: Likewise. - * grub-core/loader/i386/pc/linux.c: Likewise. - * grub-core/loader/ia64/efi/linux.c: Likewise. - * grub-core/loader/mips/linux.c: Likewise. - * grub-core/loader/powerpc/ieee1275/linux.c: Likewise. - * grub-core/loader/sparc64/ieee1275/linux.c: Likewise. - -2014-09-25 Colin Watson - - Fix in-tree --platform=none - - * configure.ac: Only remove include/grub/cpu and - include/grub/machine in the --platform=none case, not all of - include/grub. - -2014-09-23 Colin Watson - - Add a new "none" platform that only builds utilities - - * configure.ac: Add "none" platform. Default to it for unsupported - CPUs rather than stopping with a fatal error. Don't downgrade - x86_64-none to i386. Define COND_real_platform Automake conditional - if the platform is anything other than "none". Don't do any include - directory linking for "none". - * Makefile.am: Skip building grub-core and all bootcheck targets if - !COND_real_platform. - * include/grub/time.h: Don't include if GRUB_UTIL - is defined. - -2014-09-22 Andrei Borzenkov - - Use grub_cpu_to_XXX_compile_time for constants. - -2014-09-21 Valentin Dornauer - - The AML parser implements only a small subset of possible AML - opcodes. On the Fujitsu Lifebook E744 this and another bug in - the parser (incorrect handling of TermArg data types) would lead - to the laptop not turning off (_S5 not found). - - * grub-core/commands/acpihalt.c: Support OpAlias in the AML parser; - in skip_ext_op(), handle some Type2Opcodes more correctly (TermArgs - aren't always simply strings!); Add function to skip TermArgs - * include/grub/acpi.h: Add new opcodes - -2014-09-21 Vladimir Serbinenko - - * grub-core/normal/main.c: Don't drop to rescue console in - case of password-protected prompt and no menu entries. - -2014-09-21 Vladimir Serbinenko - - * grub-core/commands/keylayouts.c: Ignore unknown keys. - -2014-09-21 Vladimir Serbinenko - - * grub-core/gmodule.pl.in: Accept newer binutils which output - empty column rather than 0x0. - -2014-09-21 Michael Chang - - * grub-core/osdep/unix/config.c: Remove extraneous comma. - -2014-09-21 Peter Jones - - * grub-core/loader/arm/linux.c: Initialized initrd_ctx so - we don't free a random pointer from the stack. - * grub-core/loader/arm64/linux.c: Likewise. - * grub-core/loader/i386/linux.c: Likewise. - * grub-core/loader/i386/pc/linux.c: Likewise. - * grub-core/loader/ia64/efi/linux.c: Likewise. - * grub-core/loader/mips/linux.c: Likewise. - * grub-core/loader/powerpc/ieee1275/linux.c: Likewise. - * grub-core/loader/sparc64/ieee1275/linux.c: Likewise. - -2014-09-15 Khem Raj - - * grub-core/kern/emu/hostfs.c: use _DEFAULT_SOURCE in addition to - _BSD_SOURCE to avoid warnings under glibc 2.20+. - -2014-09-08 Michael Chang - - * grub-core/fs/btrfs.c (grub_btrfs_extent_read): Fix extent size - check; comparing &data->extent against addresses in the region it - points to is unpredictable. - -2014-09-07 Colin Watson - - Support grub-emu on x32 (ILP32 but with x86-64 instruction set) - - * configure.ac: Remove -m64 from checks for -mcmodel=large and - -mno-red-zone. These are always either unnecessary (x86_64-emu) or - already in TARGET_CFLAGS at this point, and they produce incorrect - results when building for x32. - * grub-core/kern/x86_64/dl.c (grub_arch_dl_relocate_symbols): Cast - pointers to Elf64_Xword via grub_addr_t, in order to work on x32. - * include/grub/x86_64/types.h (GRUB_TARGET_SIZEOF_VOID_P, - GRUB_TARGET_SIZEOF_LONG): Define to 4 on x32. - -2014-09-07 Colin Watson - - * configure.ac: Remove several unnecessary semicolons. - -2014-08-25 Colin Watson - - * grub-core/kern/mips/arc/init.c (grub_machine_get_bootlocation): - Initialise pend to pacify GCC. - -2014-08-14 Andrey Borzenkov - - * util/grub-mkconfig.in: Fix typo (gettext_print instead of - gettext_printf). - -2014-08-13 Vladimir Serbinenko - - * grub-core/term/at_keyboard.c: Retry probing keyboard if - scancode setup failed. - -2014-08-10 Vladimir Serbinenko - - * grub-core/kern/disk_common.c: Clump disk size to 1EiB. - -2014-08-10 Vladimir Serbinenko - - * grub-core/disk/i386/pc/biosdisk.c (grub_biosdisk_rw): Add - safety to avoid triggerring VirtualBox bug. - -2014-08-10 Vladimir Serbinenko - - * grub-core/fs/cbfs.c: Don't probe disks of unknow size. - - Fixes hang on virtualbox. - -2014-07-08 Colin Watson - - * util/grub.d/10_hurd.in: Make kernel list progression not fail on - kernels whose paths contain regex metacharacters. - * util/grub.d/10_kfreebsd.in: Likewise. - * util/grub.d/10_linux.in: Likewise. - * util/grub.d/20_linux_xen.in: Likewise. - - Reported by: Heimo Stranner. - -2014-06-26 Colin Watson - - * docs/grub-dev.texi (Finding your way around): The build system no - longer uses AutoGen directly. - -2014-06-21 Роман Пехов - - * grub-core/commands/loadenv.c (check_blocklists): Fix overlap check. - -2014-06-21 Glenn Washburn - - * util/grub-install.c: Fix handling of --disk-module. - -2014-06-21 Stephane Rochoy - - * grub-core/loader/i386/bsd.c (grub_netbsd_boot): Pass pointer to - EFI system table. - -2014-06-21 Stephane Rochoy - - * grub-core/commands/efi/lsefisystab.c (grub_cmd_lsefisystab): Show - EFI system table physical address. - -2014-06-21 Trevor Woerner - - * util/grub-gen-asciih.c (add_glyph): Fix uninitialised variable. - -2014-06-21 Vladimir Serbinenko - - * grub-core/commands/verify.c (grub_pubkey_open): Trust procfs. - -2014-06-21 Vladimir Serbinenko - - * grub-core/commands/verify.c (grub_pubkey_open): Fix memdisk - check. - -2014-04-20 Vladimir Serbinenko - - * grub-core/kern/misc.c (__bzero): Don't compile in GRUB_UTIL. - - Reported by: Yves Blusseau . - -2014-04-20 Piotr Krysiuk - - * grub-core/lib/i386/relocator.c: Allow loading old kernels by placing - GDT in conventional memory. - -2014-04-10 Colin Watson - - * util/grub.d/30_os-prober.in: Tolerate devices with no filesystem - UUID. Other parts of grub-mkconfig tolerate these, they were - previously allowed here up to commit - 55e706c918922def17f5012c23cfe88c4c645208, and they can arise in - practice when the system has active LVM snapshots. - Fixes Ubuntu bug #1287436. - -2014-04-10 Colin Watson - - * grub-core/disk/lvm.c (grub_lvm_detect): Search for - "logical_volumes" block a little more accurately. - -2014-04-06 Vladimir Serbinenko - - * grub-core/lib/syslinux_parse.c: Fix timeout quoting. - -2014-04-04 Vladimir Serbinenko - - * include/grub/libgcc.h: Remove ctzsi2 and ctzdi2. They're no longer - pulled from libgcc. - -2014-04-04 Vladimir Serbinenko - - Replace few instances of memcmp/memcpy in the code that should be - grub_memcmp/grub_memcpy. - -2014-04-03 Vladimir Serbinenko - - * grub-core/osdep/linux/getroot.c (grub_util_part_to_disk): Support NVMe - device names. - -2014-03-31 Thomas Falcon - - btrfs: fix get_root key comparison failures due to endianness - - * grub-core/fs/btrfs.c (get_root): Convert - GRUB_BTRFS_ROOT_VOL_OBJECTID to little-endian. - -2014-03-31 Colin Watson - - Fix partmap, cryptodisk, and abstraction handling in grub-mkconfig. - - Commit 588744d0dc655177d5883bdcb8f72ff5160109ed caused grub-mkconfig - no longer to be forgiving of trailing spaces on grub-probe output - lines, which among other things means that util/grub.d/10_linux.in - no longer detects LVM. To fix this, make grub-probe's output - delimiting more consistent. As a bonus, this improves the coverage - of the -0 option. - - Fixes Debian bug #735935. - - * grub-core/disk/cryptodisk.c - (grub_util_cryptodisk_get_abstraction): Add a user-data argument. - * grub-core/disk/diskfilter.c (grub_diskfilter_get_partmap): - Likewise. - * include/grub/cryptodisk.h (grub_util_cryptodisk_get_abstraction): - Update prototype. - * include/grub/diskfilter.h (grub_diskfilter_get_partmap): Likewise. - * util/grub-install.c (push_partmap_module, push_cryptodisk_module, - probe_mods): Adjust for extra user-data arguments. - * util/grub-probe.c (do_print, probe_partmap, probe_cryptodisk_uuid, - probe_abstraction): Use configured delimiter. Update callers. - -2014-03-31 Colin Watson - - * util/grub-probe,c (options): Make -0 work again (broken by - conversion to argp). - (main): Simplify logic. - -2014-03-26 Vladimir Serbinenko - - * grub-core/lib/relocator.c: Fix the case when end of leftover is used. - -2014-03-26 Fu Wei - - * grub-core/loader/arm64/linux.c: Remove redundant "0x". - -2014-02-28 Vladimir Serbinenko - - * include/grub/i386/openbsd_bootarg.h: Add addr and frequency fields. - * grub-core/loader/i386/bsd.c (grub_cmd_openbsd): Fill addr field. - - Suggested by: Markus Müller. - -2014-02-28 Vladimir Serbinenko - - * grub-core/kern/i386/pc/mmap.c: Fallback to EISA memory map - if E820 failed to return any regions. - -2014-02-28 Vladimir Serbinenko - - * grub-core/mmap/i386/uppermem.c (lower_hook) [COREBOOT]: Ignore low - tables for low memory calculations. - -2014-02-28 Vladimir Serbinenko - - * grub-core/loader/i386/multiboot_mbi.c (grub_multiboot_make_mbi): Limit - location to 640K. - -2014-02-28 Vladimir Serbinenko - - * grub-core/kern/i386/coreboot/mmap.c: Filter out 0xa0000-0x100000 - region. - -2014-02-20 Vladimir Serbinenko - - * grub-core/disk/ahci.c: Ignore NPORTS field and rely on PI - exclusively. - -2014-02-04 Paulo Flabiano Smorigo - - Add bootpath parser for open firmware. - - It enables net boot even when there is no bootp/dhcp server. - - * grub-core/net/drivers/ieee1275/ofnet.c: Add grub_ieee1275_parse_bootpath - and call it at grub_ieee1275_net_config_real. - * grub-core/kern/ieee1275/init.c: Add bootpath to - grub_ieee1275_net_config. - * include/grub/ieee1275/ieee1275.h: Likewise. - - -2014-02-04 Paulo Flabiano Smorigo - - Add grub_env_set_net_property function. - - * grub-core/net/bootp.c: Remove set_env_limn_ro. - * grub-core/net/net.c: Add grub_env_set_net_property. - * include/grub/net.h: Likewise. - -2014-02-03 Vladimir Serbinenko - - * util/grub-mkrescue.c: Build fix for argp.h with older gcc. - -2014-02-03 Vladimir Serbinenko - - * util/grub-mkfont.c: Build fix for argp.h with older gcc. - -2014-01-29 Vladimir Serbinenko - - * grub-core/disk/ahci.c: Increase timeout. Some SSDs take up to - 7 seconds to recover if last poweroff was bad. - -2014-01-29 Vladimir Serbinenko - - * grub-core/disk/ahci.c: Properly handle transactions with no - transferred data. - -2014-01-29 Vladimir Serbinenko - - * grub-core/disk/ahci.c: Add safety cleanups. - -2014-01-29 Vladimir Serbinenko - - * grub-core/disk/ahci.c: Allocate and clean space for all possible 32 - slots to avoid pointing to uninited area. - -2014-01-29 Vladimir Serbinenko - - * grub-core/disk/ahci.c: Do not enable I/O decoding and keep - enabling busmaster for the end. - -2014-01-29 Vladimir Serbinenko - - * util/grub-mkfont.c: Downgrade warnings about unhandled features - to debug. - -2014-01-29 Vladimir Serbinenko - - * grub-core/term/at_keyboard.c: Tolerate missing keyboard. - -2014-01-29 Paulo Flabiano Smorigo - - * .gitignore: add missing files and .exe variants. - -2014-01-26 Mike Gilbert - - grub-install: support for partitioned partx loop devices. - - * grub-core/osdep/linux/getroot.c (grub_util_part_to_disk): Detect - /dev/loopX as being the parent of /dev/loopXpY. - -2014-01-26 Vladimir Serbinenko - - * grub-core/term/serial.c (grub_serial_register): Fix invalid free. - Ensure that pointers are inited to NULL and that pointers are not - accessed after free. - -2014-01-25 Andrey Borzenkov - - * include/grub/crypto.h: Replace __attribute__ ((format (printf)) with - __attribute__ ((format (__printf__)) to fix compilation under MinGW-w64. - * include/grub/emu/misc.h: ... and here. - * include/grub/err.h: ... and here. - * util/import_gcry.py: ... and here (in files g10lib.h). - -2014-01-25 Andrey Borzenkov - - * util/grub-mkimage.c: Make prefix argument mandatory. - -2014-01-24 Vladimir Serbinenko - - Fix several translatable strings. - - Suggested by: D. Prévot. - -2014-01-24 Vladimir Serbinenko - - * util/grub-install.c: List available targets. - -2014-01-23 Colin Watson - - * util/grub-install.c (write_to_disk): Add an info message. - -2014-01-21 Andrey Borzenkov - - * Makefile.am: Allow adding extra files to generated Windows ZIP - archive by setting GRUB_WINDOWS_EXTRA_DIST. - -2014-01-21 Andrey Borzenkov - - * configure.ac: Look for DejaVuSans also in /usr/share/fonts/truetype. - Show detected font path in summary. - -2014-01-21 Paulo Flabiano Smorigo - - * grub-core/net/arp.c (grub_net_arp_send_request): Increase network try - interval gradually. - * grub-core/net/icmp6.c (grub_net_icmp6_send_request): Likewise. - * grub-core/net/net.c (grub_net_fs_read_real): Likewise. - * grub-core/net/tftp.c (tftp_open): Likewise. - * include/grub/net.h (GRUB_NET_INTERVAL_ADDITION): New define. - -2014-01-21 Paulo Flabiano Smorigo - - * grub-core/net/net.c (receive_packets): Change stop condition to avoid - infinite loops. - - In net/net.c there is a while (1) that only exits if there is a stop - condition and more then 10 packages or if there is no package received. - - If GRUB is idle and enter in this loop, the only condition to leave is - if it doesn't have incoming packages. In a network with heavy traffic - this never happens. - -2014-01-19 Colin Watson - - * grub-core/osdep/freebsd/hostdisk.c (grub_util_fd_open): Ignore - EPERM when modifying kern.geom.debugflags. It is only a problem for - such things as installing GRUB to the MBR, in which case there'll be - an error later anyway, not for opening files during tests. - -2014-01-18 Andrey Borzenkov - - * grub-core/Makefile.am: Build grub_emu_init.[ch] from MODULE_FILES - instead of MOD_FILES. - * grub-core/genemuinit.sh: Simplify stripping of suffix so it works - both with and without .exe. - * grub-core/genemuinitheader.sh: Same. - -2014-01-18 Vladimir Serbinenko - - * util/grub-install.c: Fix a typo. - -2014-01-18 Vladimir Serbinenko - - * grub-core/normal/main.c (read_config_file): Buffer config file. - Reduces boot time. - -2014-01-18 Andrey Borzenkov - - * acinclude.m4 (grub_CHECK_LINK_DIR): Check that we can also remove - symbolic link to directory. It fails in Msys shell on Windows 2003. - -2014-01-18 Vladimir Serbinenko - - * Makefile.am (default_payload.elf): Add modules - multiboot cbmemc linux16 gzio echo help. - -2014-01-18 Mike Gilbert - - * Makefile.util.def: Link grub-ofpathname with zfs libs. - -2014-01-18 Vladimir Serbinenko - - * grub-core/commands/macbless.c: Rename FILE and DIR to avoid - conflicts. - - Reported by: Andrey Borzenkov. - -2014-01-18 Andrey Borzenkov - - * include/grub/misc.h: Move macros for compiler features to ... - * include/grub/compiler.h: ... new file. - * include/grub/list.h: Include instead of . - * grub-core/commands/fileXX.c: Include . - * grub-core/efiemu/prepare.c: Include . - * grub-core/loader/i386/xen_file.c: Include . - * grub-core/loader/i386/xen_fileXX.c: Include . - * grub-core/video/capture.c: Include . - * include/grub/command.h: Include . - * include/grub/dl.h: Include . - * include/grub/procfs.h: Include . - -2014-01-18 Andrey Borzenkov - - * configure.ac: Add support for BUILD_EXEEXT and use it ... - * Makefile.am: ... here. - * Makefile.util.def: ... and here. - * grub-core/Makefile.am: ... and here. - -2014-01-18 Andrey Borzenkov - - * include/grub/osdep/hostfile_windows.h: Use _W64 instead of - FILE_OFFSET_BITS to differentiate between native MinGW and Mingw W64. - -2014-01-18 Vladimir Serbinenko - - * grub-core/term/terminfo.c: Recognize keys F1-F12. - -2014-01-18 Andrey Borzenkov - - * configure.ac: Add support for BUILD_LDFLAGS. - * Makefile.am: Use BUILD_LDFLAGS for build time programs here ... - * grub-core/Makefile.am: ... and here. - * INSTALL: Mention BUILD_LDFLAGS. - -2014-01-18 Vladimir Serbinenko - - * util/grub-mount.c: Extend GCC warning workaround to grub-mount. - -2014-01-18 Vladimir Serbinenko - - * grub-core/kern/efi/efi.c: Ensure that the result starts with / - and has no //. - -2014-01-18 Vladimir Serbinenko - - * NEWS: Add few missing entries. - -2014-01-17 Colin Watson - - * util/grub.d/00_header.in (make_timeout): Use && rather than test - -a. - * util/grub.d/10_windows.in: Likewise. - * util/grub.d/10_netbsd.in (netbsd_load_fs_module): Use || rather - than test -o. - * util/grub.d/30_os-prober.in: Use && rather than test -a, and || - rather than test -o. - -2014-01-17 Colin Watson - - * grub-core/osdep/freebsd/hostdisk.c (grub_util_fd_open): Remove - redundant preprocessor conditional. - -2014-01-08 Colin Watson - - * Makefile.util.def (grub-macbless): Change mansection to 8. - -2014-01-07 Leif Lindholm - - * grub-core/loader/arm64/linux.c: correctly set device path end length. - -2014-01-07 Andrey Borzenkov - - * util/grub-install.c: Use bootaa64.efi instead of bootaarch64.efi on - arm64 to comply with EFI specification. Also use grubaa64.efi for - consistency. - * util/grub-mkrescue.c: Change to use bootaa64.efi too. - -2014-01-07 Andrey Borzenkov - - * include/grub/osdep/hostfile_windows.h: Do not redefine fseeko/ftello - on MinGW-64 when compiling for 32 bits. - -2013-12-30 Andrey Borzenkov - - * grub-core/Makefile.core.def: strip .eh_frame section for arm64-efi. - -2013-12-30 Vladimir Serbinenko - - * NEWS: Add few missing entries. Correct existing ones. - -2013-12-28 Vladimir Serbinenko - - Don't abort() on unavailable coreboot tables if not running on coreboot. - -2013-12-28 Andrey Borzenkov - - * grub-core/kern/emu/misc.c: Remove unused error.h; fixes compilation - on mingw. - -2013-12-28 Colin Watson - - * NEWS: The cmosclean command in fact dates back to 1.99. Remove - mention of it from 2.02. - -2013-12-27 Vladimir Serbinenko - - * grub-core/kern/arm/cache_armv6.S: Remove .arch directive. - - As these functions are used on pre-ARMv6 CPUs as well we don't want - to make assembler assume that architecture is higher than default one. - -2013-12-27 Colin Watson - - * NEWS: First draft of 2.02 entry. - -2013-12-27 Colin Watson - - * INSTALL (Cross-compiling the GRUB): Fix some spelling mistakes. - * docs/grub.texi (Getting the source code): Likewise. - -2013-12-25 Andrey Borzenkov - - * grub-core/osdep/windows/platform.c (get_platform): Fix EFI - detection. - -2013-12-24 Vladimir Serbinenko - - * configure.ac: Set version to 2.02~beta2. - -2013-12-24 Vladimir Serbinenko - - * grub-core/disk/efi/efidisk.c (name_devices): Skip Apple ghosts. - -2013-12-24 Andrey Borzenkov - - * util/grub-probe.c: Improve help message and simplify list handling. - -2013-12-24 Vladimir Serbinenko - - Fix buffer overflow in grub_efi_print_device_path. - -2013-12-24 Vladimir Serbinenko - - Show SATA device path. - -2013-12-24 Vladimir Serbinenko - - Revert grub-file usage in grub-mkconfig. - -2013-12-24 Vladimir Serbinenko - - Make newly-created files other than grub.cfg world-readable. - -2013-12-24 Andrey Borzenkov - - * util/grub.d/00_header.in: Improve compatibility with old config. - -2013-12-24 Vladimir Serbinenko - - Make rijndael.c respect aliasing rules. - - Trivial backport of dfb4673da8ee52d95e0a62c9f49ca8599943f22e. - -2013-12-24 Vladimir Serbinenko - - Make grub_util_device_is_mapped_stat available in grub-emu core. - -2013-12-24 Vladimir Serbinenko - - Add -Qn to TARGET_CFLAGS if it's supported. - Fixes compilation on cygwin. - - Reported by: Andrey Borzenkov. - Suggested by: Andrey Borzenkov. - -2013-12-24 Vladimir Serbinenko - - Save TARGET_CC version in modinfo.sh. - - Suggested by: Andrey Borzenkov. - -2013-12-24 Vladimir Serbinenko - - Make grub_util_devmapper_part_to_disk and grub_util_find_partition_start - follow the same algorithm to avoid method mismatch. Don't assume - DMRAID- UUID to mean full disk but instead check that mapping is linear. - -2013-12-24 Vladimir Serbinenko - - Declare GRUB_EFI_VENDOR_APPLE_GUID. - -2013-12-24 Vladimir Serbinenko - - Dump type and vendor specific data when printing device path. - -2013-12-23 Colin Watson - - Update some documentation to refer to Git rather than Bazaar. - - * docs/grub.texi (Obtaining and Building GRUB): Refer to Git rather - than Bazaar. - * po/README: Likewise. Fix spelling mistake. - -2013-12-23 Colin Watson - - Don't distribute config.h. - - * Makefile.am (platform_HEADERS): Move to ... - (nodist_platform_HEADERS): ... here. Fixes gettext_strings_test - failure when building from a distributed tarball. - -2013-12-23 Colin Watson - - * configure.ac: Fix spelling. - * grub-core/commands/parttool.c: Fix grammar. - * grub-core/disk/ldm.c: Use consistent capitalisation for "LDM - Embedding Partition". - -2013-12-23 Vladimir Serbinenko - - ARM64 support for grub-mkrescue. - -2013-12-23 Vladimir Serbinenko - - Install modinfo.sh to keep build information around. - -2013-12-23 Vladimir Serbinenko - - * grub-core/modinfo.sh.in: Add build config information. - -2013-12-23 Vladimir Serbinenko - - ARM64 grub-file and grub-mkconfig support. - -2013-12-23 Vladimir Serbinenko - - Remove leftover options defines. - -2013-12-23 Vladimir Serbinenko - - * include/grub/arm64/linux.h: Remove leftovers. Add missing prefixes. - -2013-12-23 Vladimir Serbinenko - - * grub-core/loader/arm64/linux.c: Add missing bracket. - -2013-12-23 Vladimir Serbinenko - - Add arm64-efi recognition to grub-file. - -2013-12-23 Vladimir Serbinenko - - Fix ia64-efi recognition in grub-file. - -2013-12-23 Vladimir Serbinenko - - Recognize raspberry pi kernel in grub-file. - -2013-12-23 Vladimir Serbinenko - - Enable cache on ARM U-Boot port. - - Without it the port is reidiculously slow. - -2013-12-23 Vladimir Serbinenko - - Fix ARM cache maintainance. - - More code was converted from ASM to C for easier handling. - -2013-12-22 Vladimir Serbinenko - - * grub-core/kern/arm/cache.c (grub_arm_disable_caches_mmu): Use v6 - algorithm on v5. - - Suggested by: Leif Lindholm. - -2013-12-22 Andrey Borzenkov - - * util/grub-mkconfig.in: Fix Xen platform conditions. - -2013-12-22 Andrey Borzenkov - - * util/grub-mkrescue.c: Split single help message string in several - strings used in previous shell version. - -2013-12-22 Leif Lindholm - - Add arm64 Linux loader. - -2013-12-22 Leif Lindholm - - Add grub_fdt_create_empty_tree() and grub_fdt_set_prop64(). - -2013-12-22 Vladimir Serbinenko - - Add module loading and parsing boot time checkpoints. - -2013-12-22 Vladimir Serbinenko - - * grub-core/loader/arm/linux.c: Pass arguments through on ATAG - platforms. - -2013-12-22 Lars Wendler - - * util/grub-mkconfig.in: Skip non-executable files. - -2013-12-22 Vladimir Serbinenko - - Workaround buggy timer in raspberry pie by using our own timer - implementation. - -2013-12-22 Vladimir Serbinenko - - * include/grub/arm/uboot/kernel.h (GRUB_KERNEL_MACHINE_HEAP_SIZE): - Increase to 16 MiB to allow loading the whole memdisk. - -2013-12-22 Vladimir Serbinenko - - Fix ARM Linux Loader on non-FDT platforms. - -2013-12-21 Vladimir Serbinenko - - * configure.ac: Choose link format based on host_os on emu. - -2013-12-21 Vladimir Serbinenko - - * grub-core/osdep/unix/getroot.c: Non-unix build fix. - -2013-12-21 Vladimir Serbinenko - - * grub-core/kern/emu/main.c: Build fix for emu. - -2013-12-21 Vladimir Serbinenko - - Build fixes for argp.h with older gcc. - -2013-12-21 Vladimir Serbinenko - - * util/grub-glue-efi.c: Use "universal binary" rather "fat binary" - in strings. - - Suggested by: David Prévot. - -2013-12-21 Vladimir Serbinenko - - * include/grub/crypto.h (grub_crypto_xor): Fix cast-align warning. - -2013-12-21 Vladimir Serbinenko - - Enable -Wformat=2 if it's supported. - -2013-12-21 Vladimir Serbinenko - - * configure.ac: Add -Wmissing-include-dirs -Wmissing-prototypes - -Wmissing-declarations if supported. - -2013-12-21 Vladimir Serbinenko - - * grub-core/commands/macbless.c (grub_mac_bless_inode): Pass inode as - u32 as both HFS and HFS+ have 32-bit inodes. - -2013-12-21 Vladimir Serbinenko - - * include/grub/misc.h (grub_strtol): Fix overflow. - -2013-12-21 Vladimir Serbinenko - - * include/grub/term.h (grub_unicode_estimate_width): Use grub_size_t - as return type in both conditionals. - -2013-12-21 Vladimir Serbinenko - - * include/grub/video.h (grub_video_rgba_color_rgb): Fix prototype - to use uint8_t for color. - -2013-12-21 Vladimir Serbinenko - - * util/misc.c (grub_util_get_image_size): Check for overflow. - -2013-12-21 Vladimir Serbinenko - - * grub-core/disk/raid6_recover.c (grub_raid_block_mulx): Use grub_size_t - for size. - -2013-12-21 Vladimir Serbinenko - - * grub-core/disk/lvm.c: Use grub_size_t for sizes and grub_ssize_t - for pointer difference. - -2013-12-21 Vladimir Serbinenko - - * util/import_gcry.py: Skip sample keys. - -2013-12-21 Vladimir Serbinenko - - * util/misc.c (grub_qsort_strcmp): Don't discard const attribute. - -2013-12-21 Vladimir Serbinenko - - * configure.ac: Remove duplicate warning arguments. - -2013-12-21 Vladimir Serbinenko - - Add missing static qualifiers. - -2013-12-21 Vladimir Serbinenko - - Add missing includes. - -2013-12-21 Vladimir Serbinenko - - Inline printf templates when possible to enable format checking. - -2013-12-21 Vladimir Serbinenko - - * include/grub/crypto.h: Don't discard const attribute. - -2013-12-21 Vladimir Serbinenko - - * grub-core/net/bootp.c (grub_cmd_dhcpopt): Use snprintf where it - was intended. - -2013-12-21 Vladimir Serbinenko - - * grub-core/lib/crypto.c: Don't discard const attribute. - -2013-12-21 Vladimir Serbinenko - - * grub-core/lib/disk.c: Fix potential overflow. - -2013-12-21 Vladimir Serbinenko - - * grub-core/lib/arg.c: Don't discard const attribute. - -2013-12-21 Vladimir Serbinenko - - * grub-core/kern/dl.c: Don't discard const attribute. - -2013-12-21 Vladimir Serbinenko - - * grub-core/kern/disk.c: Fix potential overflow. - -2013-12-21 Vladimir Serbinenko - - * conf/Makefile.common: Don't include non-existing directory - grub-core/lib/libgcrypt-grub/include. - -2013-12-21 Vladimir Serbinenko - - Clarify several translatable messages. - -2013-12-21 David Prévot - - Correct some translatable strings. - -2013-12-21 Colin Watson - - * util/grub-mkrescue.c: Rephrase mkrescue description. - -2013-12-21 Vladimir Serbinenko -2013-12-21 Colin Watson - - Clarify several translatable messages. - -2013-12-20 Colin Watson - - Be more verbose about some configure failures. - -2013-12-20 Colin Watson - - Fix various build problems on GNU/Hurd. - - * grub-core/osdep/unix/getroot.c (strip_extra_slashes): Move inside - !defined (__GNU__). - (xgetcwd): Likewise. - * include/grub/emu/hostdisk.h (grub_util_hurd_get_disk_info) - [__GNU__]: Add prototype. - * util/getroot.c (grub_util_biosdisk_get_grub_dev) [__GNU__]: Format - long int using %ld rather than %d. - -2013-12-18 Vladimir Serbinenko - - * util/grub-install.c: Inform user about install platform. - -2013-12-18 Vladimir Serbinenko - - * configure.ac: Set version to 2.02~beta1. - -2013-12-18 Allen Pais -2013-12-18 Bob Picco - - * grub-core/boot/sparc64/ieee1275/boot.S: Fix order of fields. - -2013-12-18 Vladimir Serbinenko - - Make grub_zlib_decompress handle incomplete chunks. - - Fixes squash4. - -2013-12-18 Vladimir Serbinenko - - * grub-core/Makefile.am: Don't attempt to export grub_bios_interrupt - on i386-multiboot. - -2013-12-18 AleÅ¡ Nesrsta - - * grub-core/disk/usbms.c: Retry on unknown errors. - Reuse the same tag on retries. - -2013-12-18 AleÅ¡ Nesrsta - - * grub-core/bus/usb/ehci.c: Fix handling of newborn transfers. - - Avoid confusing them with already completed transfers. - -2013-12-18 Vladimir Serbinenko - - Remove xen VFB. - - Due to XEN bug it prevents Linux boot. Remove it at least, until - workaround is found. - -2013-12-18 Vladimir Serbinenko - - * po/exclude.pot: Add 2 missing excludes. - -2013-12-18 Vladimir Serbinenko - - Add missing license section in macbless.mod and macho.mod. - -2013-12-18 Vladimir Serbinenko - - Allow compilation without thumb-interwork as long as no thumb is - involved or only thumb2 is used. - -2013-12-18 Vladimir Serbinenko - - * INSTALL: Update comment as to why sparc64 clang isn't usable. - -2013-12-18 Vladimir Serbinenko - - Add __attribute__ ((sysv_abi)) only if it's really needed. - - Some compilers don't support it. - -2013-12-18 Vladimir Serbinenko - - * grub-core/lib/syslinux_parse.c: Declare timeout unsigned. - -2013-12-18 Vladimir Serbinenko - - Remove -Wold-style-definition. - - Not very useful and interaction of it with regexp depends on GCC - version. - -2013-12-18 Vladimir Serbinenko - - Make grub_util_get_windows_path_real static. - -2013-12-18 Vladimir Serbinenko - - * grub-core/commands/fileXX.c: Silence cast-align. - * grub-core/loader/i386/xen_fileXX.c: Likewise. - -2013-12-18 Vladimir Serbinenko - - * include/grub/efi/api.h (GRUB_EFI_ERROR_CODE): Use explicit cast - rather than LL suffix. - -2013-12-18 Vladimir Serbinenko - - * include/grub/efi/api.h (PRIxGRUB_EFI_UINTN_T): Remove leftover. - -2013-12-18 Vladimir Serbinenko - - * grub-core/loader/arm/linux.c: Use common initrd functions. - -2013-12-18 Vladimir Serbinenko - - Decrease number of strings to translate. - -2013-12-18 Vladimir Serbinenko - - * grub-core/kern/arm/dl.c: Remove unnecessarry execution mode check. - -2013-12-18 Vladimir Serbinenko - - Mark strings for translation and add remaining ones to exclude list. - -2013-12-18 Vladimir Serbinenko - - * util/grub-file.c (main): Fix sizeof usage. - -2013-12-18 Vladimir Serbinenko - - Silence spurious warning. - -2013-12-18 Vladimir Serbinenko - - Remove check_nt_hiberfil as it's been superseeded by file command. - -2013-12-17 Vladimir Serbinenko - - * docs/osdetect.cfg: Add isolinux config to detected OSes. - -2013-12-17 Vladimir Serbinenko - - Implement syslinux parser. - -2013-12-17 Vladimir Serbinenko - - * grub-core/commands/legacycfg.c: Use 32-bit Linux protocol on non-BIOS. - -2013-12-17 Vladimir Serbinenko - - Support cpuid --pae. - -2013-12-17 Vladimir Serbinenko - - Use AT keyboard on Yeeloong 3A. - -2013-12-17 Vladimir Serbinenko - - Add Yeeloong 3A reboot and halt. - -2013-12-17 Vladimir Serbinenko - - Add Radeon Yeeloong 3A support. - -2013-12-17 Vladimir Serbinenko - - Add bonito 3A support. - -2013-12-17 Vladimir Serbinenko - - * grub-core/loader/machoXX.c: Fix compilation on non-i386. - -2013-12-17 Vladimir Serbinenko - - * grub-core/loader/i386/xen_fileXX.c: Silence cast-align. - -2013-12-17 Vladimir Serbinenko - - * grub-core/loader/macho.c: Fix compilation on non-i386. - -2013-12-17 Vladimir Serbinenko - - Add missing format_arg attribute to check that printf with translated - messages has proper arguments. - -2013-12-17 Vladimir Serbinenko - - Use grub_xasprintf to format translated error messages containing - 64-bit quantity. - -2013-12-17 Jon McCune - - Fix double-free introduced by commit 33d02a42d64cf06cada1c389 - -2013-12-17 Vladimir Serbinenko - - Unify message for unsupported relocation. - -2013-12-17 Vladimir Serbinenko - - Mark miscompile error for translation. - -2013-12-17 Vladimir Serbinenko - - Use %I64 and not %ll when using OS printf if compiling for windows. - -2013-12-17 Vladimir Serbinenko - - Update Mac code to match new register_efi prototype. - -2013-12-17 Vladimir Serbinenko - - Implement better integration with Mac firmware. - -2013-12-17 Vladimir Serbinenko - - * grub-core/loader/multiboot_mbi2.c: Implement special value for - load_addr. - -2013-12-17 Vladimir Serbinenko - - Include serial module in default_payload.elf. - -2013-12-17 Vladimir Serbinenko - - Add explicit thumb interwork bx in asm files. - - Shouldn't matter for armv >= 5 but let's be safe. - -2013-12-17 Vladimir Serbinenko - - Implement Truecrypt ISO loader. - -2013-12-17 Vladimir Serbinenko - - * grub-core/lib/arg.c: Ensure at least a single space between commands. - -2013-12-17 Vladimir Serbinenko - - Implement grub_file tool and use it to implement generating of config - in separate root. - -2013-12-17 Vladimir Serbinenko - - Change to v1 xen grants. - -2013-12-17 Vladimir Serbinenko - - * grub-core/lib/i386/xen/relocator.S: Fix hypercall ABI violation. - - GRUB relied on %ebx being preserved across hypercall which isn't true. - -2013-12-17 Vladimir Serbinenko - - * grub-core/lib/x86_64/xen/relocator.S: Fix hypercall ABI violation. - - GRUB relied on %rdi being preserved across hypercall which isn't true. - -2013-12-17 Vladimir Serbinenko - - Implement XEN VFB support. - -2013-12-17 Vladimir Serbinenko - - Remove grub_bios_interrupt on coreboot. - - It's not used currently and cannot be used safely currently. - -2013-12-16 Vladimir Serbinenko - - Update exclude.pot and mark few strings for translation. - -2013-12-16 Vladimir Serbinenko - - * util/grub-mkrescue.c: Fix incorrect file usage in fallback code. - - Reported by: Jon McCune - -2013-12-16 Andrey Borzenkov - - * grub-core/osdep/linux/platform.c (grub_install_get_default_x86_platform): - Add verbose information which firmware directories were tried. - -2013-12-16 Andrey Borzenkov - - * grub-core/osdep/unix/exec.c (grub_util_exec_redirect_all): New - function to optionally redirect all three standard descriptors. - Redefine grub_util_exec, grub_util_exec_redirect and - grub_util_exec_redirect_null to use it. - * include/grub/emu/exec.h: Define it. - * include/grub/osdep/exec_unix.h: Delete, it is unused. - * grub-core/osdep/linux/platform.c (grub_install_get_default_x86_platform): - Use grub_util_exec_redirect_all to redirect error to NULL. - -2013-12-16 Vladimir Serbinenko - - * grub-core/tests/sleep_test.c: Silence spurious warning. - -2013-12-16 Vladimir Serbinenko - - Make grub_xen_hypercall on i386 cdecl rather than stdcall to avoid - linker trying to "fixup" the code. - -2013-12-16 Vladimir Serbinenko - - * grub-core/kern/x86_64/xen/startup.S: Align stack. - -2013-12-16 Vladimir Serbinenko - - Add support for converting PE+ to Elf64. - -2013-12-16 Vladimir Serbinenko - - * grub-core/commands/minicmd.c (grub_mini_cmd_dump): Handle LLP case. - -2013-12-16 Vladimir Serbinenko - - Remove practice of assigning random const pointers to device id. - - This is not required as cache code already checks driver id as well. - -2013-12-16 Vladimir Serbinenko - - * include/grub/x86_64/types.h: Define sizeof (long) as 4 when compiling - with mingw. - -2013-12-16 Vladimir Serbinenko - - * include/grub/efi/api.h: Don't use call wrappers when compiled with - mingw or cygwin as API already matches. - -2013-12-16 Vladimir Serbinenko - - * grub-core/lib/posix_wrap/errno.h: Undefine errno before redefining. - -2013-12-16 Vladimir Serbinenko - - * include/grub/efi/api.h: Define (u)intn_t based on pointer size and - not on long. - -2013-12-16 Vladimir Serbinenko - - Handle X86_64_PC64 relocation. - - Those are generated by some cygwin compilers. - -2013-12-16 Vladimir Serbinenko - - Determine the need for mingw-related stubs at compile time rather than - using not very significant $target_os. - -2013-12-16 Vladimir Serbinenko - - * grub-core/genmod.sh.in: Strip before converting to ELF as strip - may not work with ELF. - -2013-12-16 Vladimir Serbinenko - - Use unix functions for temporary files and special files on cygwin. - -2013-12-16 Vladimir Serbinenko - - Define functions explicitly rather than using --defsym in tests - whenever possible. Respect locality in remaining cases. - -2013-12-16 Vladimir Serbinenko - - * grub-core/genmoddep.awk: Remove explicit getline < /dev/stdin. - -2013-12-15 Andrey Borzenkov - - * grub-core/osdep/windows/platform.c (grub_install_register_efi): Handle - unlikely errors when getting EFI variables and make exhaustive search - for all BootNNNN variables to find matching one. - -2013-12-15 Ian Campbell - - * grub-core/kern/uboot/init.c: Fix units of uboot timer. - -2013-12-15 Vladimir Serbinenko - - New functional test for sleep function. - - This test allows to check sleep without qemu. Keep qemu version as - well as functional test won't notice if all clocks are going too fast - or too slow. - -2013-12-15 Vladimir Serbinenko - - Add explicit sysv_abi on amd64 asm routines. - -2013-12-15 Vladimir Serbinenko - - * grub-core/commands/efi/lsefisystab.c: Use %lld to show - num_table_entries. - -2013-12-15 Vladimir Serbinenko - - * include/grub/test.h: Use gnu_printf rather than printf on GRUB - functions. - -2013-12-15 Vladimir Serbinenko - - * grub-core/loader/i386/linux.c: Use grub_addr_t rather than long when - appropriate. - -2013-12-15 Vladimir Serbinenko - - * grub-core/loader/i386/linux.c: Use %p rather than %lx for pointers. - -2013-12-15 Vladimir Serbinenko - - * grub-core/kern/elfXX.c: Use grub_addr_t rather than long when - appropriate. - -2013-12-15 Vladimir Serbinenko - - * grub-core/disk/loopback.c: Use sequential IDs rather than pointer. - - In case of quick removal of loopback and adding another one it may - get same ID, confusing the cache system. - -2013-12-15 Vladimir Serbinenko - - * grub-core/commands/acpi.c: Use grub_addr_t rather than long when - appropriate. - -2013-12-15 Vladimir Serbinenko - - * grub-core/kern/i386/coreboot/cbtable.c: Use char * arithmetic rather - than converting to long. - -2013-12-15 Vladimir Serbinenko - - * grub-core/disk/cryptodisk.c: Rename "n" to "last_cryptodisk_id". - -2013-12-15 Vladimir Serbinenko - - * util/grub-mkimagexx.c (relocate_addresses): Display offset rather - than almost useless pointer. - -2013-12-15 Vladimir Serbinenko - - Add gcc_struct to all packed structures when compiling with mingw. - - Just "packed" doesn't always pack the way we expect. - -2013-12-14 Vladimir Serbinenko - - * include/grub/i386/coreboot/lbio.h: Add missing attribute (packed). - -2013-12-14 Vladimir Serbinenko - - * util/grub-pe2elf.c: Fix handling of .bss. - -2013-12-14 Vladimir Serbinenko - - Implement windows flavour of EFI install routines. - -2013-12-14 Vladimir Serbinenko - - * conf/Makefile.extra-dist: Adjust path to conf/i386-cygwin-img-ld.sc. - -2013-12-14 Vladimir Serbinenko - - Change grub_install_register_efi interface to pass GRUB device. - - This allows grub_install_register_efi to request partition info - directly. - -2013-12-14 Vladimir Serbinenko - - Workaround cygwin bug when using \\?\Volume{GUID} syntax. - -2013-12-14 Vladimir Serbinenko - - Do not use TCHAR string functions as they are not available on cygwin. - -2013-12-14 Vladimir Serbinenko - - Workaround windows bug when querying EFI system partition parameters. - -2013-12-14 Vladimir Serbinenko - - * grub-core/kern/i386/qemu/init.c (resource): Decrease struct size - by using bitfields. - -2013-12-14 Vladimir Serbinenko - - * grub-core/boot/i386/qemu/boot.S: Add missing EXT_C. - -2013-12-14 Vladimir Serbinenko - - Make i386-* other than i386-pc compileable under cygwin. - -2013-12-14 Vladimir Serbinenko - - Fix definition of grub_efi_hard_drive_device_path. Take care that - existing code would work even if by some reason bogus definition is - used by EFI implementations. - -2013-12-14 Vladimir Serbinenko - - * grub-core/osdep/windows/hostdisk.c: Fix cygwin compilation. - -2013-12-14 Vladimir Serbinenko - - * grub-core/osdep/windows/blocklist.c: Add missing cast in printf - invocation. - -2013-12-14 Vladimir Serbinenko - - * util/config.c: Remove trailing newline from distributor in simple - parsing. - -2013-12-14 Vladimir Serbinenko - - * include/grub/efi/api.h: Rename protocol and interface to avoid - conflict. - -2013-12-14 Vladimir Serbinenko - - * .gitignore: add .exe variants. add missing files. remove few outdated - entries. - -2013-12-14 Vladimir Serbinenko - - * grub-core/osdep/exec.c: Use unix version on cygwin. - -2013-12-13 Vladimir Serbinenko - - Implement multiboot2 EFI BS specification. - -2013-12-11 Vladimir Serbinenko - - * grub-core/normal/charset.c: Fix premature line wrap and crash. - Crash happened only in some cases like a string starting at the - half of the screen of same length. - -2013-12-11 Vladimir Serbinenko - - * include/grub/efiemu/efiemu.h: Sync configuration table declaration - with EFI counterpart. - -2013-12-11 Vladimir Serbinenko - - Propagate the EFI commits to x86-efi specific parts. - -2013-12-11 Vladimir Serbinenko - - * grub-core/commands/efi/lssal.c: Fix terminating condition. - -2013-12-11 Vladimir Serbinenko - - Introduce grub_efi_packed_guid and use it where alignment is not - guaranteed. - -2013-12-11 Vladimir Serbinenko - - * include/grub/efi/api.h (grub_efi_device_path): Define length as - unaligned u16 rather than u8[2]. - -2013-12-11 Vladimir Serbinenko - - * grub-core/kern/ia64/dl.c (grub_arch_dl_relocate_symbols): Add checks - for relocation range. - -2013-12-11 Vladimir Serbinenko - - * grub-core/kern/ia64/dl.c (grub_arch_dl_relocate_symbols): Handle - non-function pcrel21b relocation. It happens with .text.unlikely - section. - -2013-12-10 Leif Lindholm - - * make MAX_USABLE_ADDRESS platform-specific - * grub-core/kern/efi/mm.c: add Vladimir's new BYTES_TO_PAGES_DOWN macro. - -2013-12-10 Leif Lindholm - - * grub-core/lib/fdt.c: change memcpy => grub_memcpy - -2013-12-09 Jon McCune - - * Add --no-rs-codes flag to optionally disable reed-solomon codes - in grub-install and grub-bios-setup for x86 BIOS targets. - -2013-12-09 Vladimir Serbinenko - - Add missing compile and link options for sparc64-emu. - -2013-12-09 Vladimir Serbinenko - - Implement sparc64 trampolines (needed for sparc64-emu). - -2013-12-09 Vladimir Serbinenko - - * grub-core/kern/sparc64/dl.c (grub_arch_dl_relocate_symbols): Check - range of R_SPARC_HI22. - Implement R_SPARC_LM22. - -2013-12-09 Vladimir Serbinenko - - * grub-core/kern/powerpc/dl_helper.c (grub_arch_dl_get_tramp_got_size): - Do not explicitly check for symbol table as it's already checked in - platform-independent layer. - -2013-12-09 Vladimir Serbinenko - - * grub-core/kern/emu/cache.c [__ia64__]: Use our cache cleaning routine - on ia64 as __clear_cache is a dummy on ia64. - -2013-12-09 Vladimir Serbinenko - - * grub-core/kern/ia64/dl_helper.c (grub_ia64_dl_get_tramp_got_size): - Do not explicitly check for symbol table as it's already checked in - platform-independent layer. - -2013-12-09 Colin Watson - - * util/grub-mkconfig.in: Add missing newline to output. - -2013-12-08 Vladimir Serbinenko - - * grub-core/kern/ia64/efi/init.c (grub_arch_sync_caches): Move to ... - * grub-core/kern/ia64/cache.c (grub_arch_sync_caches): ... here. - -2013-12-08 Vladimir Serbinenko - - * grub-core/kern/emu/main.c: Silence missing prototypes to allow emu - compilation with GCC <= 4.2. - * grub-core/kern/emu/argp_common.c: Likewise. - -2013-12-08 Vladimir Serbinenko - - * include/grub/kernel.h [__sparc__]: Restrict sparc64-ieee1275 to - right platform rather than leaking to sparc64-emu. - -2013-12-08 Vladimir Serbinenko - - * grub-core/osdep/windows/emuconsole.c: Remove unsigned comparison >= 0. - But ensure that the variables in question are indeed unsigned. - -2013-12-08 Vladimir Serbinenko - - * grub-core/kern/emu/lite.c: Add missing include of ../ia64/dl_helper.c. - -2013-12-08 Vladimir Serbinenko - - Remove grub_memalign on emu. - -2013-12-08 Vladimir Serbinenko - - * grub-core/kern/ia64/efi/init.c: Fix alignment code so it doesn't - truncate incomplete lines but instead flushes them. - -2013-12-08 Vladimir Serbinenko - - Move OS-dependent mprotect for module loading to grub-core/osdep/*/dl.c - and implement windows variant. - -2013-12-08 Vladimir Serbinenko - - Fix mips-emu compilation. - -2013-12-08 Vladimir Serbinenko - - * configure.ac: Check for freetype library usability. - -2013-12-08 Vladimir Serbinenko - - Make arm-emu work. - -2013-12-07 Vladimir Serbinenko - - * util/grub-mkfont.c: Replace stpcpy with grub_stpcpy. - -2013-12-07 Andrey Borzenkov - - * docs/grub.texi (Environment): Update color_normal and color_highlight - defaults (light-gray instead of white). - -2013-12-07 Andrey Borzenkov - - * grub-core/normal/main.c (INIT): Set default color to light-gray - to match GRUB_TERM_DEFAULT_NORMAL_COLOR (i.e. rescue mode), Linux - and apparently BIOS defaults. - -2013-12-07 Vladimir Serbinenko - - Transform -C option to grub-mkstandalone to --core-compress available - in all grub-install flavours. - -2013-12-07 Vladimir Serbinenko - - Merge GRUBFS and GRUB_FS variables. - -2013-12-07 Andrey Borzenkov - - Revert commit 69ca97c820, it caused failures when using OS device name - in grub-install. Instead just strip off parenthesis in grub-install - if (hdX) was passed. - -2013-12-07 Andrey Borzenkov - - * util/grub-install.c (push_partmap_module): Add helper to convert - partmap names to module names and use it in probe_mods(). Fixes - failure to find partmap modules in diskfilter case. - -2013-12-07 Vladimir Serbinenko - - * configure.ac: Make unifont mandatory on coreboot. - -2013-12-07 Vladimir Serbinenko - - * configure.ac: Skip unifont 6.3 pcf and bdf. - -2013-12-07 Vladimir Serbinenko - - * Makefile.am: Remove partial font files if generation failed. - -2013-12-07 Andrey Borzenkov - - * util/misc.c (grub_qsort_strcmp): Add qsort helper function to sort - strings. - * include/grub/util/misc.h: Define it ... - * util/grub-install.c (device_map_check_duplicates): ... and use it. - -2013-12-07 Andrey Borzenkov - - * util/grub.d/30_os-prober.in: Fix use of grub-probe instead of - ${grub_probe}. - -2013-12-06 Vladimir Serbinenko - - Don't add -mlong-calls when compiling with clang. - -2013-12-06 Vladimir Serbinenko - - * configure.ac: Fix a typo. - -2013-12-06 Vladimir Serbinenko - - Revamp relocation handling. - - Move more code to common dl.c. Add missing veneers for arm and arm64. - Decreases kernel size by 70 bytes on i386-pc (40-50 compressed) - -2013-12-05 Vladimir Serbinenko - - * util/grub-mkimagexx.c: Fix reloc section generation for ia64. - -2013-12-05 Mike Gilbert - - * INSTALL: Raise minimum python version to 2.6. - * gentpl.py: Use python3-style print function. - -2013-12-05 Vladimir Serbinenko - - * util/grub-install.c: Mention Boot* variable. - -2013-12-05 Colin Watson - - * grub-core/osdep/linux/hostdisk.c - (grub_util_find_partition_start_os): Initialise start to avoid - spurious compiler warning. - -2013-12-05 Colin Watson - - On Linux, read partition start offsets from sysfs if possible, to - cope with block device drivers that don't implement HDIO_GETGEO. - Fixes Ubuntu bug #1237519. - - * grub-core/osdep/linux/hostdisk.c (sysfs_partition_path): New - function. - (sysfs_partition_start): Likewise. - (grub_util_find_partition_start_os): Try sysfs_partition_start - before HDIO_GETGEO. - -2013-12-05 Leif Lindholm - - * grub-core/kern/fdt.c: Update struct size when adding node. - -2013-12-05 Vladimir Serbinenko - - Handle unaligned .bss on sparc64. - - Current code improperly assumes that both __bss_start and _end are - aligned to 8-bytes. Eliminating this assumption and explicitly align - modules. - -2013-12-04 Vladimir Serbinenko - - * grub-core/boot/sparc64/ieee1275/boot.S [CDBOOT]: Move scratchpad - so it doesn't land in the middle of loaded image. - -2013-12-04 Vladimir Serbinenko - - * configure.ac: Move all warning options that may be absent in - gcc >= 3.1 to optional. - - Note: while this allows to compile with older GCC, official requirements - remain the same and no support for older GCC. - -2013-12-04 Colin Watson - - Copying the themes directory in grub-shell isn't - parallel-test-friendly and breaks on the second test when the source - directory is read-only (as in "make distcheck"). Instead, add a - hidden --themes-directory option to grub-mkrescue et al, and use it - in grub-shell. - -2013-12-04 Vladimir Serbinenko - - * conf/Makefile.common (CFLAGS_GNULIB): Remove -Wno-old-style-definition - as it's no longer necessarry. - -2013-12-04 Vladimir Serbinenko - - * configure.ac: Allow compilation with older GCC for ARM. - -2013-12-04 Vladimir Serbinenko - - * configure.ac: Add -no-integrated-as if {addme|ame} isn't supported. - * INSTALL: Note that GRUBwas successfully compiled with clang 3.2 for - ppc. - -2013-12-04 Vladimir Serbinenko - - * grub-core/kern/emu/main.c: Ignore missing prototype for main. - -2013-12-04 Vladimir Serbinenko - - Pass font config to config.h and not by TARGET_CFLAGS as adding - arguments doesn't work if TARGET_CFLAGS is specified on command - line. - -2013-12-04 Vladimir Serbinenko - - * configure.ac: Add -Wvla if compiler supports it. - -2013-12-04 Vladimir Serbinenko - - * grub-core/osdep/windows/emuconsole.c (grub_console_putchar): - Remove variable length arrays. - * grub-core/term/efi/console.c (grub_console_putchar): Likewise. - -2013-12-04 Vladimir Serbinenko - - * grub-core/kern/i386/qemu/init.c: Remove variable length arrays. - -2013-12-04 Vladimir Serbinenko - - * include/grub/types.h: Declare all byteswaps as inline functions - except compile-time ones. - - Solves variable shadowing in constructions like - cpu_to_le (le_to_cpu(x) + 1). - -2013-12-04 Vladimir Serbinenko - - * grub-core/kern/efi/efi.c: Remove variable length arrays. - -2013-12-04 Vladimir Serbinenko - - * grub-core/kern/uboot/init.c (uboot_timer_ms): Fix overflow after 71 - minutes. - -2013-12-04 Vladimir Serbinenko - - * grub-core/disk/ieee1275/ofdisk.c: Remove variable length arrays. - * grub-core/net/drivers/ieee1275/ofnet.c: Likewise. - -2013-12-03 Colin Watson - - * grub-core/Makefile.core.def (setjmp): Distribute - lib/arm64/setjmp.S. - -2013-12-03 Colin Watson - - Add a new timeout_style environment variable and a corresponding - GRUB_TIMEOUT_STYLE configuration key for grub-mkconfig. This - controls hidden-timeout handling more simply than the previous - arrangements, and pressing any hotkeys associated with menu entries - during the hidden timeout will now boot the corresponding menu entry - immediately. - - GRUB_HIDDEN_TIMEOUT= + GRUB_TIMEOUT= now - generates a warning, and if it shows the menu it will do so as if - the second timeout were not present. Other combinations are - translated into reasonable equivalents. - - Based loosely on work by Franz Hsieh. Fixes Ubuntu bug #1178618. - -2013-12-02 Vladimir Serbinenko - - * util/config.c: Add missing pointer adjustment. - Reported by: qwertial - -2013-11-30 Andrey Borzenkov - - * grub-core/kern/arm64/dl_helper.c: Include grub/arm64/reloc.h - directly, not via `cpu' link, to fix libgrub.pp generation. - -2013-11-30 Leif Lindholm - - New port arm64-efi. - -2013-11-30 Andrey Borzenkov - - * docs/grub.texi (sleep): Document exit codes. - -2013-11-30 Vladimir Serbinenko - - Ensure that -mno-unaligned-access or some equivalent option is used. - -2013-11-30 Vladimir Serbinenko - - * grub-core/lib/libgcrypt/mpi/longlong.h: Fix compilation error with - -march=armv3. - -2013-11-30 Vladimir Serbinenko - - Remove leftover GRUB_IA64_DL_TRAMP_SIZE. - -2013-11-29 Colin Watson - - * docs/grub-dev.texi (Font Metrics): Exclude @image command from DVI - builds, since we don't have an EPS version of font_char_metrics.png. - Add leading dot to image extension per the Texinfo documentation. - -2013-11-29 Colin Watson - - * util/grub-gen-asciih.c: Include FT_SYNTHESIS_H rather than - , fixing build with FreeType 2.5.1. - * util/grub-gen-widthspec.c: Likewise. - * util/grub-mkfont.c: Likewise. - -2013-11-29 Andrey Borzenkov - - * util/grub-setup.c (main): Move parsing of (hdX) syntax to ... - * util/setup.c (SETUP): ... here. Fixes regression: grub-install - failed to install on (hdX). - * util/grub-setup.c (get_device_name): Remove, not needed after - above change. - -2013-11-29 Vladimir Serbinenko - - * grub-core/kern/emu/hostfs.c (is_dir): Remove variable length arrays. - -2013-11-29 Vladimir Serbinenko - - * util/grub-fstest.c: Remove variable length arrays. - -2013-11-29 Vladimir Serbinenko - - * grub-core/osdep/linux/ofpath.c: Check return value of read. - -2013-11-29 Vladimir Serbinenko - - * util/mkimage.c (grub_install_generate_image): Use grub_crypto_hash for - computing crc32 rather than handling with md fundtions directly. - -2013-11-29 Vladimir Serbinenko - - * util/mkimage.c (grub_install_generate_image): Use grub_crypto_hash for - checking fwstart.img rather than md fundtions directly. - -2013-11-29 Vladimir Serbinenko - - * util/grub-mkrescue.c (main): Check that fread succeeded. - -2013-11-29 Vladimir Serbinenko - - * conf/Makefile.common: Remove -mexplicit-relocs and - -DUSE_ASCII_FALLBACK on yeeloong. - - -DUSE_ASCII_FALLBACK is already added by font snippets. - -mexplicit-relocs isn't needed is compiler/assemblera are - configured properly. - If they're not we shouldn't attempt to fix it by ourselves. - Binary compare between before and after shows no difference. - -2013-11-29 Vladimir Serbinenko - - * grub-core/Makefile.core.def: Remove libgnulib.a and use its - sources in dependencies directly. - - This was the only instance of "library" in core config. A bug was - reported that -fno-stack-protector wasn't passed to it. Instead of - figuring out why it failed just remove this construction used - needlessly. - -2013-11-29 Vladimir Serbinenko - - * grub-core/osdep/unix/password.c (grub_password_get): Check that - fgets succeeded. - -2013-11-27 Francesco Lavra - - * docs/grub.texi (ls): Fix command description in case of a device name - passed as argument. - -2013-11-27 Vladimir Serbinenko - - Eliminate variable length arrays in grub_vsnprintf_real. - - A bit tricky because this function has to continue to work without - heap for short strings. Fixing prealloc to 32 arguments is reasonable - but make all stack references use 32-bit offset rather than 8-bit one. - So split va_args preparsing to separate function and put the prealloc - into the caller. - -2013-11-27 Vladimir Serbinenko - - Introduce grub_util_file_sync and use it instead of fsync(fileno(f)). - Fixes build for windows. - -2013-11-27 Vladimir Serbinenko - - * gentpl.py: Don't generate platform-dependent conditionals for - platform-independent targets. - -2013-11-27 Colin Watson - - * grub-core/osdep/unix/exec.c (grub_util_exec_redirect): Remove - references to mdadm from otherwise generic code. - (grub_util_exec_pipe): Likewise. - (grub_util_exec_pipe_stderr): Likewise. - * grub-core/osdep/unix/getroot.c (grub_util_pull_lvm_by_command): - This function calls vgs, not mdadm; adjust variable names - accordingly. - -2013-11-27 Colin Watson - - Generate Makefile.*.am directly from gentpl.py, eliminating the use - of Autogen. The Autogen definitions files remain intact as they - offer a useful abstraction. - -2013-11-27 Colin Watson - - Add grub_util_disable_fd_syncs call to turn grub_util_fd_sync calls - into no-ops, and use it in programs that copy files but do not need - to take special care to sync writes (grub-mknetdir, grub-rescue, - grub-mkstandalone). - -2013-11-26 Colin Watson - - * tests/util/grub-fs-tester.in: Execute xorriso from $PATH rather - than hardcoding /usr/local/bin/xorriso. - -2013-11-26 Vladimir Serbinenko - - Add PCI command activation to all PCI drivers as required for coreboot - and maybe some other firmwares. - -2013-11-26 Vladimir Serbinenko - - * grub-core/Makefile.am: Reduce gratuituous differences between Apple - and non-Apple variants of efiemu compile. - -2013-11-25 Andrey Borzenkov - - * configure.ac: Add explicit check for linking format of - efiemu64; save it as EFIEMU64_LINK_FORMAT. - * grub-core/Makefile.am: Use EFIEMU64_LINK_FORMAT instead of - hardcoding linking format. - -2013-11-25 Vladimir Serbinenko - - * util/grub-mknetdir.c: Look for platform directories under pkglibdir - and not pkgdatadir. - -2013-11-25 Colin Watson -2013-11-25 Vladimir Serbinenko - - Add a --locale-directory option to grub-install and related tools. - - * include/grub/util/install.h (GRUB_INSTALL_OPTIONS): Add - --locale-directory option. - (enum grub_install_options): Add - GRUB_INSTALL_OPTIONS_LOCALE_DIRECTORY. - * util/grub-install-common.c (grub_install_help_filter): Handle - GRUB_INSTALL_OPTIONS_LOCALE_DIRECTORY. - (grub_install_parse): Likewise. - (get_localedir): New function to check for a user-provided option - before trying grub_util_get_localedir. - (copy_locales): Use get_localedir rather than - grub_util_get_localedir. Handle differing locale directory layouts. - (grub_install_copy_files): Likewise. - -2013-11-25 Vladimir Serbinenko - - * grub-core/osdep/unix/platform.c (get_ofpathname): Trim ending newline. - Don't rely on PATH_MAX. - -2013-11-25 Vladimir Serbinenko - - * grub-core/genmoddep.awk: Use more portable && rather than and. - -2013-11-24 Vladimir Serbinenko - - * grub-core/kern/i386/pc/startup.S [__APPLE__]: Create _edata by placing - an object after data. While it doesn't seem right solution, it - works well enough and OSX isn't main compilation platform. - -2013-11-24 Vladimir Serbinenko - - * gentpl.py: Add -ed2016 in order to make objconv accept our binary. - While it doesn't seem right solution, it works well enough and - OSX isn't main compilation platform. - -2013-11-24 Vladimir Serbinenko - - * configure.ac: Add -static to LDFLAGS when using apple linker to - prevent it from pulling in dynamic linker. - -2013-11-24 Vladimir Serbinenko - - Apple assembly doesn't handle symbol arithmetic well. So define an - offset symbol in boot.S and use it. - -2013-11-24 Vladimir Serbinenko - - Apple assembly doesn't handle symbol arithmetic well. So instead - of getting addres of kernel_sector + 4 define kernel_sector_high. - It also makes code more readable. - -2013-11-24 Vladimir Serbinenko - - With Apple assembly in .macro environvemnt you have to use $$ instead - of $. So introduce new preprocessor macro MACRO_DOLLAR(x) which expands - to $$x on Apple and to $x on everything else. - -2013-11-24 Vladimir Serbinenko - - * grub-core/Makefile.am: Use correct TARGET_OBJCONV rather than - OBJCONV. - -2013-11-24 Vladimir Serbinenko - - * grub-core/gdb/i386/machdep.S: Use xorl %eax, %eax on both Apple - and non-Apple. This instruction is shorter and faster, - so no reason not to use it on both. - -2013-11-24 Vladimir Serbinenko - - * grub-core/lib/reed_solomon.c: Use section _text, _text rather than - .text when compiling for Apple. - -2013-11-24 Vladimir Serbinenko - - * grub-core/term/arc/console.c: Add missing cast to silence warning. - -2013-11-24 Vladimir Serbinenko - - * grub-core/boot/i386/pc/boot.S: Fix floppy probe. Due to missing - %dx restore the probe worked on non-existant drive. Reorganize the - code a little bit to free 2 bytes necessary for push/pop. - -2013-11-23 Vladimir Serbinenko - - * grub-core/kern/mips/arc/init.c (grub_machine_get_bootlocation): - Add missing cast to silence warning. - -2013-11-23 Keshav Padram Amburay - - * util/grub-install.c (update_nvram): Support --no-nvram flag - for EFI targets. - -2013-11-23 Vladimir Serbinenko - - * INSTALL: Add note about sparc64/ia64 with clang (unsupported). - -2013-11-23 Vladimir Serbinenko - - * util/garbage-gen.c: Add missing include of sys/time.h. - -2013-11-23 Vladimir Serbinenko - - Don't add -mflush-func if it's not supported by compiler. - -2013-11-23 Vladimir Serbinenko - - Move common BIOS/coreboot memory map declarations to - include/grub/i386/memory_raw.h and eliminate duplicate declarations. - -2013-11-22 Andrey Borzenkov - - * Makefile.am: Add util/garbage-gen.c to EXTRA_DIST. - -2013-11-22 Vladimir Serbinenko - - * INSTALL: Document why older clang versions aren't appropriate. - -2013-11-22 Vladimir Serbinenko - - * INSTALL: Document about clang for mips. - -2013-11-22 Vladimir Serbinenko - - * grub-core/lib/libgcrypt/mpi/longlong.h: Use C version with mips - clang. - -2013-11-22 Vladimir Serbinenko - - Add *-xen to the list of grub-install-common platforms. - -2013-11-22 Vladimir Serbinenko - - * configure.ac: Do not enforce -mcmodel=large. It's not necessarry with - 3 last commits. - -2013-11-22 Vladimir Serbinenko - - * grub-core/kern/xen/init.c: Do not map more pages than we can address. - -2013-11-22 Vladimir Serbinenko - - * grub-core/kern/efi/mm.c: Limit allocations to 2GiB when not compiling - with -mcmodel=large. - -2013-11-22 Vladimir Serbinenko - - * grub-core/kern/x86_64/dl.c (grub_arch_dl_relocate_symbols): Add - range-checking for 32-bit quantities. - -2013-11-22 Vladimir Serbinenko - - * configure.ac: Compile with -fPIC when compiling with clang on - mips. - -2013-11-22 Vladimir Serbinenko - - * configure.ac: Add -no-integrated-as on mips(el) to TARGET_CCASFLAGS - when compiling with clang. - -2013-11-22 Vladimir Serbinenko - - clang emits calls to abort () under some unknown conditions. - Export abort () when compiling with clang. - -2013-11-22 Vladimir Serbinenko - - * docs/grub-dev.texi: Document stack and heap sizes. - -2013-11-22 Vladimir Serbinenko - - * include/grub/i386/pc/memory.h: Decrease - GRUB_MEMORY_MACHINE_SCRATCH_SIZE and increase - GRUB_MEMORY_MACHINE_PROT_STACK_SIZE. - The binary doesn't change (checked). It's more to better reflect actual - usage. - -2013-11-22 Vladimir Serbinenko - - * grub-core/disk/i386/pc/biosdisk.c (grub_biosdisk_open): Ensure - at compile time that enough of scratch size is available. - -2013-11-22 Vladimir Serbinenko - - * grub-core/kern/x86_64/efi/callwrap.S: Fix stack alignment. - Previously we misaligned stack by 8 in startup.S and compensated - for it in callwrap.S. According to ABI docs (EFI and sysv amd64) - right behaviour is to align stack in startup.S and keep it aligned - in callwrap.S. startup.S part was committed few commits before. This - takes care of callwrap.S. - Reported by: Gary Lin. - -2013-11-22 Vladimir Serbinenko - - * grub-core/boot/mips/startup_raw.S: Handle the case of gap between - .data and .bss. May happen if compiler and assembly use different - alignment. - -2013-11-22 Vladimir Serbinenko - - On MIPS handle got16 relocations to local symbols in an ABI-compliant - way. - -2013-11-22 Vladimir Serbinenko - - Add support for a new magic symbol _gp_disp on mips to handle PIC - binaries. - -2013-11-22 Vladimir Serbinenko - - Use $t9 for indirect calls from asm to C as PIC ABI requires. - -2013-11-22 Vladimir Serbinenko - - Remove -march=mips3 from TARGET_CCASFLAGS as it creates linking problem - when rest of GRUB is compiled for hisher stepping. Instead use - .set mips3/.set mips1 around cache and sync opcodes. - -2013-11-21 Vladimir Serbinenko - - Unify GOT/trampoline handling between PPC, MIPS and IA64 as they - do essentially the same thing, do it in similar way. - -2013-11-21 Colin Watson - - * util/grub-mkrescue.c (main): If a source directory is not - specified, read platform-specific files from subdirectories of - pkglibdir, not pkgdatadir. - -2013-11-21 Colin Watson - - * grub-core/normal/progress.c: Remove unused file. - -2013-11-20 Vladimir Serbinenko - - * grub-core/lib/crypto.c (grub_crypto_hash): Remove variable length - array. - -2013-11-20 Vladimir Serbinenko - - * util/grub-mkconfig.in: Say explicit "grub configuration" rather - than grub.cfg. - -2013-11-20 Vladimir Serbinenko - - * coreboot.cfg: Add missing file. - -2013-11-19 Vladimir Serbinenko - - * Makefile.am: Allow STRIP to be empty when creating windowszip. - -2013-11-19 Axel Kellermann - - * util/grub.d/30_os-prober.in: Add GRUB_OS_PROBER_SKIP_LIST to - selectively skipping systems. - -2013-11-19 Colin Watson - - * Makefile.util.def (grub-mkimage): Add - grub-core/osdep/aros/config.c to extra_dist. - * conf/Makefile.extra-dist (EXTRA_DIST): Add docs/autoiso.cfg, - docs/osdetect.cfg, grub-core/gnulib-fix-null-deref.diff, - grub-core/gnulib-fix-width.diff, grub-core/gnulib-no-abort.diff, and - grub-core/gnulib-no-gets.diff. - -2013-11-19 Vladimir Serbinenko - - Add automated filesystem checking based on scripts I've used now for - quite some time locally. Most of the test require root so they are - skipped when run without necessarry privelegies. - -2013-11-19 Colin Watson - - * util/grub-install.c (main): Adjust info messages to match - installed paths of grub-bios-setup and grub-sparc64-setup. - -2013-11-19 Colin Watson - - * util/grub-install-common.c (copy_locales): Consistently use - grub_util_get_localedir () rather than LOCALEDIR. - (grub_install_copy_files): Likewise. - -2013-11-19 Josh Triplett - - * grub-core/kern/x86_64/efi/startup.S (_start): Align the stack to a - 16-byte boundary, as required by the x86-64 ABI, before calling - grub_main. In some cases, GCC emits code that assumes this - alignment, which crashes if not aligned. The EFI firmware is also - entitled to assume that stack alignment without checking. - -2013-11-18 Josh Triplett - - * grub-core/mmap/efi/mmap.c (grub_mmap_register): Round up/down to - 4k page boundaries as expected by firmware rather than 1k - boundaries. - (grub_mmap_malign_and_register): Likewise. - -2013-11-18 Vladimir Serbinenko - - * tests/grub_func_test.in: Decrease RAM size to 512M. With less - fragmentation 512M is enough. - -2013-11-18 Vladimir Serbinenko - - * grub-core/kern/mm.c (grub_real_malloc): Decrease cut-off of moving the - pointer to 32K. This is the size of cache element which is the most - common allocation >1K. This way the pointer is always around blocks - of 32K and so we keep performance while decreasing fragmentation. - -2013-11-18 Vladimir Serbinenko - - * grub-core/kern/mm.c (grub_real_malloc): Don't update the pointer to - current memory when allocating large chunks. This significantly - decreases memory fragmentation. - -2013-11-18 Colin Watson - - * tests/gzcompress_test.in: Skip if gzip is not installed (unlikely, - but for symmetry). - * tests/lzocompress_test.in: Skip if lzop is not installed. - * tests/xzcompress_test.in: Skip if xz is not installed. - -2013-11-18 Colin Watson - - * util/grub-mkrescue.c (main): Fix typo. - -2013-11-18 Vladimir Serbinenko - - * grub-core/kern/mips/qemu_mips/init.c (grub_machine_init): Update - clock frequency to 200 MHz, - -2013-11-18 Vladimir Serbinenko - - * tests/util/grub-shell.in: Increase console size to 1024x1024. - -2013-11-18 Vladimir Serbinenko - - * Makefile.am (default_payload.elf): Add pata to loaded modules. - Load config file from (cbfsdisk)/etc/grub.cfg. - -2013-11-18 Vladimir Serbinenko - - * util/grub-install-common.c (grub_install_copy_files): Fix module - destination directory. - -2013-11-18 Colin Watson - - * tests/util/grub-shell.in: Don't fail on emu platform if po/*.gmo - files have not been built. - -2013-11-18 Colin Watson - - * grub-core/osdep/unix/hostdisk.c (grub_util_make_temporary_file): - Handle errors from mkstemp. - (grub_util_make_temporary_dir): Handle errors from mkdtemp. - -2013-11-18 Vladimir Serbinenko - - * tests/util/grub-shell.in: Use -cdrom and don't force cdrom - on primary master on pseries. - -2013-11-18 Vladimir Serbinenko - - * grub-core/tests/videotest_checksum.c: Don't reload unifont if it's - already loaded. This saves memory needed for tests, - -2013-11-18 Vladimir Serbinenko - - * util/grub-mkrescue.c (main): Fix a typo to make yeeloong part - work again. - -2013-11-18 Vladimir Serbinenko - - * grub-core/term/terminfo.c (grub_cmd_terminfo): Fix a typo to make -g - work again. - -2013-11-18 Vladimir Serbinenko - - * tests/util/grub-shell.in: For powerpc tests put the CD-ROM as primary - master since with some combinations of qemu and firmware only primary - IDE channel is available. - -2013-11-18 Vladimir Serbinenko - - * grub-core/tests/gfxterm_menu.c: Skip high-resolution tests on - low-memory platforms where we don't have enough memory for them. - * grub-core/tests/videotest_checksum.c: Likewise. - -2013-11-18 Vladimir Serbinenko - - * grub-core/tests/cmdline_cat_test.c: Don't reload unifont if it's - already loaded. This saves memory needed for tests, - -2013-11-18 Vladimir Serbinenko - - Fix handling of install lists. - -2013-11-18 Vladimir Serbinenko - - * grub-core/lib/sparc64/setjmp.S: Force spilling of current window. - -2013-11-18 Vladimir Serbinenko - - On i386-ieee1275 we run in paged mode. So we need to explicitly map - the devices before accessing them. - -2013-11-18 Vladimir Serbinenko - - * grub-core/lib/relocator.c (grub_mm_check_real): Accept const char * - as file argument. - -2013-11-18 Vladimir Serbinenko - - * grub-core/normal/cmdline.c (grub_cmdline_get): Plug memory leak. - -2013-11-18 Vladimir Serbinenko - - * grub-core/kern/file.c (grub_file_open): Free file->name on failure. - (grub_file_close): Free file->name. - -2013-11-18 Vladimir Serbinenko - - * grub-core/commands/verify.c (free_pk): Plug memory leak. - (grub_load_public_key): Likewise. - (grub_verify_signature_real): Likewise. - (grub_cmd_verify_signature): Likewise. - -2013-11-18 Vladimir Serbinenko - - * grub-core/commands/legacycfg.c (grub_legacy_check_md5_password): Plug - memory leak. - -2013-11-18 Vladimir Serbinenko - - * grub-core/lib/powerpc/setjmp.S (grub_setjmp): Save r31. - (grub_longjmp): Restore r31. - * include/grub/powerpc/setjmp.h (grub_jmp_buf): Reserve space for r31. - -2013-11-18 Vladimir Serbinenko - - * util/grub-mkrescue.c (make_image_fwdisk_abs): Insert all partmap - modules to be in line with make_image_abs. - -2013-11-18 Vladimir Serbinenko - - * include/grub/mips/setjmp.h (grub_jmp_buf): Fix buffer size. - - setjmp.S uses 12 entries but buffer is declared with only 11 entries. - -2013-11-17 Ian Campbell - - * grub-core/disk/uboot/ubootdisk.c: Include SCSI disks. - -2013-11-17 Vladimir Serbinenko - - * tests/grub_func_test.in: Increase memory reservation as on EFI we need - to leave some memory to firmware. - -2013-11-17 Vladimir Serbinenko - - * grub-core/tests/cmdline_cat_test.c (cmdline_cat_test): Ignore errors - of loading gfxterm as gfxterm is embed in kernel on some platforms. - * grub-core/tests/gfxterm_menu.c (gfxterm_menu): Likewise. - Load gfxmenu. - -2013-11-17 Vladimir Serbinenko - - * tests/core_compress_test.in: Use full arguments as grub-mkimage-extra - now needs full arguments. - -2013-11-17 Vladimir Serbinenko - - * util/grub-mkrescue.c (main): Add trailing \n in - .disk_label.contentDetails to be in line with previous shell script. - -2013-11-17 Vladimir Serbinenko - - * util/grub-mkrescue.c (main): Use right source file for bootinfo.txt. - -2013-11-17 Vladimir Serbinenko - - * util/grub-install-common.c (grub_install_parse): Recognize - --compress=none like shell script did. - -2013-11-17 Vladimir Serbinenko - - * include/grub/misc.h: Replace check for __sparc64__ with one for - __sparc__ as __sparc64__ isn't actually defined. - -2013-11-17 Vladimir Serbinenko - - * tests/util/grub-shell.in: Use escc-ch-b on powerpc. This is missing - counterpart of fixing the naming of escc ports. - -2013-11-17 Vladimir Serbinenko - - * util/grub-install-common.c (platforms): Fix the order of entries and - remove useless field val. - -2013-11-16 Vladimir Serbinenko - - * util/grub-install.c: Add new option --no-bootsector to skip - installing of bootsector. Accept --grub-setup=/bin/true as - backwards-compatible synonym. - -2013-11-16 Andrey Borzenkov - - * util/grub-install.c (device_map_check_duplicates): Fix incorrect - order of qsort arguments (number of elements vs. element size). - -2013-11-16 Vladimir Serbinenko - - Rewrite grub-install, grub-mkrescue, grub-mkstandalone and grub-mknetdir - the function of these files exceeds what can be sanely handled in shell - in posix-comaptible way. Also writing it in C extends the functionality - to non-UNIX-like OS and minimal environments. - -2013-11-16 Vladimir Serbinenko - - * grub-core/kern/arm/cache.S: Don't switch back to ARM mode when - compiling to thumb2. - * grub-core/kern/arm/cache_armv7.S: Likewise. - * grub-core/lib/arm/setjmp.S: Likewise. - -2013-11-16 Leif Lindholm - - * grub-core/kern/arm/uboot/startup.S: delete superflouous save of r8 - in grub_uboot_syscall - -2013-11-16 Vladimir Serbinenko - - Decrease stack usage in lexer. - - We have only 92K of stack and using over 4K per frame is wasteful - - * grub-core/script/yylex.l (yyalloc), (yyfree), (yyrealloc): Declare - as macros so that compiler would remove useless structure on stack. - Better solution would be to fix flex not to put this structure on - the stack but flex is external program. - -2013-11-16 Vladimir Serbinenko - - Decrease stack usage in signature verification. - - We have only 92K of stack and using over 4K per frame is wasteful - - * grub-core/commands/verify.c (grub_load_public_key): Allocate on heap - rather than stack. - (grub_verify_signature_real): Likewise. - -2013-11-16 Vladimir Serbinenko - - Decrease stack usage in mdraid 0.9x. - - We have only 92K of stack and using over 4K per frame is wasteful - - * grub-core/disk/mdraid_linux.c (grub_mdraid_detect): Allocate on heap - rather than stack. - -2013-11-16 Vladimir Serbinenko - - Decrease stack usage in BtrFS. - - We have only 92K of stack and using over 4K per frame is wasteful - - * grub-core/fs/btrfs.c (grub_btrfs_lzo_decompress): Allocate on heap - rather than stack. - -2013-11-16 Vladimir Serbinenko - - Decrease stack usage in JFS. - - We have only 92K of stack and using over 4K per frame is wasteful - - * grub-core/fs/jfs.c (getblk): Allocate on heap rather than on - stack. Note: this function is recursive. - (grub_jfs_read_inode): Read only part we care about. - -2013-11-16 Leif Lindholm - - * grub-core/kern/arm/uboot/startup.S: fix grub_uboot_syscall va_arg - handling - -2013-11-16 Andrey Borzenkov - - * configure.ac: Restore -nostdlib for libgcc symbols tests. - -2013-11-16 Andrey Borzenkov - - * docs/grub.texi (Environment): Document cmdpath. - -2013-11-16 Andrey Borzenkov - - * grub-core/kern/mips/arc/init.c (grub_machine_get_bootlocation): - Remove "unused" attribute from arguments, they are used. - -2013-11-15 Colin Watson - - * .gitignore: Only ignore grub-mk* at the top level. - -2013-11-15 Colin Watson - - * util/grub-reboot.in (usage): Fix a typo. - -2013-11-15 Vladimir Serbinenko - - Replace libgcc version of ctz with our own. - - On upcoming arm64 port libgcc ctz* are not usable in standalone - environment. Since we need ctz* for this case and implementation is - in C we may as well use it on all concerned platforms. - -2013-11-14 Vladimir Serbinenko - - * configure.ac: Probe for linking format rather than guessing it based - on target_os. - -2013-11-14 Vladimir Serbinenko - - * grub-core/disk/xen/xendisk.c (grub_xendisk_fini): Set state to - "1" prior to handoff. - - Reported by: M A Young. - -2013-11-14 Vladimir Serbinenko - - * grub-core/kern/xen/init.c (grub_xenstore_write_file): Don't add - \0 to all files. - - Reported by: M A Young. - -2013-11-14 Vladimir Serbinenko - - * grub-core/osdep/bsd/hostdisk.c (grub_util_get_fd_size_os): Fix - compilation on NetBSD. - -2013-11-14 Vladimir Serbinenko - - * acinclude.m4: Don't add -P on initial nm test. - - Note: even though this patch postdates Andrey's it bears 14 Nov as - date due to timezone difference. - -2013-11-15 Andrey Borzenkov - - * grub-core/Makefile.core.def (signature_test): Add missing - tests/signatures.h. - -2013-11-14 Colin Watson - - * util/grub-install_header: Set localedir here, since this file is - where it's used. - * util/grub-install.in: Remove setting of localedir. - * util/grub-mkrescue.in: Likewise. - -2013-11-14 Vladimir Serbinenko - - * Makefile.am (default_payload.elf): Add uhci, ohci and usb_keyboard. - -2013-11-14 Vladimir Serbinenko - - * configure.ac: Move nm checks to the end. - Call grub_PROG_NM_WORKS. - * acinclude.m4: New check grub_PROG_NM_WORKS. - Use $TARGET_CFLAGS -c when compiling test binary. - -2013-11-14 Colin Watson - - * util/getroot.c (grub_util_biosdisk_get_grub_dev) [__GNU__]: Remove - unused variables. - -2013-11-14 Matthew Garrett - - * grub-core/kern/main.c (grub_set_prefix_and_root): Set variable - cmdpath to firmware directory. - -2013-11-14 Vladimir Serbinenko - - * grub-core/kern/efi/efi.c (grub_efi_get_filename): Reset the pointer - at the start of second iteration. - -2013-11-14 Vladimir Serbinenko - - * grub-core/Makefile.am (efiemu64.o): Explicitly set link format. - -2013-11-14 Vladimir Serbinenko - - * Makefile.am (default_payload.elf): New target for easier coreboot - build. - -2013-11-14 Vladimir Serbinenko - - * grub-core/kern/arm/cache_armv6.S: Remove special handling for - clang (not necessarry with -no-integrated-as). - * include/grub/symbol.h [__arm__]: Likewise. - -2013-11-14 Vladimir Serbinenko - - * configure.ac: Use -no-integrated-as on arm with clang. - * INSTALL: Mention ARM compilation with clang. - -2013-11-14 Vladimir Serbinenko - - * conf/Makefile.common (CCASFLAGS_PLATFORM) [COND_arm]: Add - -mthumb-interwork. - -2013-11-14 Colin Watson - - * grub-core/fs/ext2.c (grub_ext2_read_block): Factor out common - code for indirect block handling. - - Saves 185 bytes on compressed image. - -2013-11-13 Paulo Flabiano Smorigo - - Fix make clean. - - * Makefile.am: Remove build-grub-* in make clean. - -2013-11-13 Paulo Flabiano Smorigo - - New files to gitignore. - - * .gitignore: Add build-grub-gen-asciih, build-grub-gen-widthspec, - build-grub-mkfont, and grub-emu-lite. Remove .bzrignore. - -2013-11-13 Leif Lindholm - - * grub-core/kern/arm/misc.S: Make thumb2-compatible. - -2013-11-13 Leif Lindholm - - * .gitignore: fix rules for .dep* and add *.a post git migration - -2013-11-13 Colin Watson - - * configure.ac (AM_INIT_AUTOMAKE): Require at least version 1.10.1, - to match INSTALL. - -2013-11-13 Colin Watson - - * grub-core/kern/misc.c: Don't redirect divisions in the - GRUB_UTIL case. - * include/grub/misc.h: Likewise. - -2013-11-13 Colin Watson - - * grub-core/osdep/unix/emuconsole.c (put): Pacify the compiler on - systems that require checking the return value of write. - -2013-11-13 Colin Watson - - * util/grub-install.in (efi_quiet): Fix inverted logic: make - efibootmgr quiet when --debug is not used, rather than when it is. - -2013-11-13 Colin Watson - - * gentpl.py (define_macro_for_platform_dependencies): Remove - first (and thus unused) of two definitions for this function. - (platform_dependencies): Likewise. - -2013-11-13 Colin Watson - - * acinclude.m4 (grub_apple_cc): Remove; since the removal of nested - functions, we only need to check this for the target, not the host. - * configure.ac (grub_apple_cc): Likewise. - -2013-11-13 Vladimir Serbinenko - - * grub-core/kern/arm/cache.c (probe_caches): Move asm part to ... - * grub-core/kern/arm/cache_armv6.S: ... here. This allows this - asm to stay in arm even if surrounding is thumb. - -2013-11-13 Vladimir Serbinenko - - * grub-core/kern/arm/misc.S: Add __muldi3 and __aeabi_lmul. Those - helper functions are needed for thumb. - -2013-11-13 Vladimir Serbinenko - - * grub-core/disk/diskfilter.c (grub_diskfilter_make_raid): Make - level / 3 division explicitly unsigned. Saves few bytes. - -2013-11-13 Vladimir Serbinenko - - * grub-core/fs/zfs/zfs.c (ZAP_LEAF_NUMCHUNKS): Use unsigned arithmetics. - -2013-11-13 Vladimir Serbinenko - - * grub-core/normal/datetime.c (grub_get_weekday): Use if rather than - division. - -2013-11-13 Vladimir Serbinenko - - * grub-core/kern/uboot/init.c: Move grub_uboot_machine_type and - grub_uboot_boot_data to asm part. - -2013-11-13 Vladimir Serbinenko - - * grub-core/kern/arm/uboot/startup.S: Remove = by replacing with - literal load. - (grub_uboot_syscall): Save/restore r9 and align stack. - -2013-11-13 Vladimir Serbinenko - - * grub-core/kern/arm/cache.S: Replace = with explicit litteral load. - -2013-11-13 Vladimir Serbinenko - - * include/grub/symbol.h (END) [__arm__]: New macros. Replace all .end - occurencies with END. - -2013-11-13 Colin Watson - - * util/grub-editenv.c (help_filter, argp): Document how to delete - the whole environment block. - Reported by Dan Jacobson. Fixes Debian bug #726265. - -2013-11-13 Colin Watson - - * docs/grub.texi (Internationalisation, Supported kernels): Fix - sectioning. - -2013-11-13 Josh Triplett - - * grub-core/normal/term.c (grub_set_more): Use bool logic rather than - increment/decrement. - -2013-11-13 Vladimir Serbinenko - - * grub-core/kern/arm/cache_armv6.S [__clang__]: Don't add .armv6 when - compiling with clang. - -2013-11-13 Vladimir Serbinenko - - * grub-core/kern/arm/uboot/startup.S: Use .org rather than assigning - ".". - -2013-11-13 Vladimir Serbinenko - - Redirect all divisions to grub_divmod64. - -2013-11-12 Vladimir Serbinenko - - * grub-core/term/tparm.c (tparam_internal): Use unsigned divisions. - -2013-11-12 Vladimir Serbinenko - - Add missing includes of loader.h. - -2013-11-12 Vladimir Serbinenko - - * configure.ac: Allow disabling themes. - -2013-11-12 Lukas Schwaighofer - - * util/grub.d/20_linux_xen.in: Don't decompress initrd. - -2013-11-12 Vladimir Serbinenko - - * grub-core/term/at_keyboard.c: Don't poll non-functional AT controller - until it becomes operational. - -2013-11-12 Vladimir Serbinenko - - * grub-core/Makefile.core.def (legacy_password_test): Disable - on platforms where no legacycfg is compiled. - * grub-core/tests/lib/functional_test.c: Tolerate failure to - load legacy_password_test. - -2013-11-12 Vladimir Serbinenko - - * grub-core/loader/i386/bsd.c: Remove variable length arrays. - -2013-11-12 Vladimir Serbinenko - - * grub-core/efiemu/prepare.c: Remove variable length arrays. - -2013-11-12 Vladimir Serbinenko - - * grub-core/osdep/windows/hostdisk.c (grub_util_fd_strerror): Silence - strict-aliasing warning. - (fsync): Silence cast warning. - -2013-11-12 Vladimir Serbinenko - - * grub-core/commands/verify.c: Remove variable length arrays. - Load gcry_dsa/gcry_rsa automatically. - -2013-11-12 Vladimir Serbinenko - - * grub-core/tests/signature_test.c: New test. - -2013-11-12 Vladimir Serbinenko - - * grub-core/disk/cryptodisk.c (luks_script_get): Adapt to new procfs - API. - -2013-11-12 Vladimir Serbinenko - - * grub-core/tests/legacy_password_test.c (vectors): Make static. - * grub-core/tests/pbkdf2_test.c (vectors): Likewise. - -2013-11-12 Vladimir Serbinenko - - * grub-core/tests/setjmp_test.c: Reset counter to 0 before starting. - -2013-11-12 Vladimir Serbinenko - - * grub-core/fs/proc.c: Allow \0 in proc files. - -2013-11-12 Vladimir Serbinenko - - * grub-core/tests/xnu_uuid_test.c: Fix assert message. - -2013-11-12 Vladimir Serbinenko - - * grub-core/tests/xnu_uuid_test.c: Fix copyright year. - -2013-11-12 Vladimir Serbinenko - - * grub-core/fs/ext2.c: Remove variable length arrays. - -2013-11-12 Vladimir Serbinenko - - * grub-core/lib/crypto.c (grub_crypto_cbc_decrypt): Remove variable - length arrays. - -2013-11-12 Vladimir Serbinenko - - * grub-core/disk/AFSplitter.c: Remove variable length arrays. - * grub-core/disk/cryptodisk.c: Likewise. - * grub-core/disk/geli.c: Likewise. - * grub-core/disk/luks.c: Likewise. - -2013-11-12 Vladimir Serbinenko - - * grub-core/tests/legacy_password_test.c: New test. - * grub-core/commands/legacycfg.c: Remove variable length arrays. - -2013-11-12 Vladimir Serbinenko - - * grub-core/lib/pbkdf2.c: Remove variable length arrays. - -2013-11-12 Vladimir Serbinenko - - * grub-core/tests/pbkdf2_test.c: New test. - -2013-11-12 Vladimir Serbinenko - - * grub-core/lib/xzembed/xz_dec_stream.c: Remove variable length arrays. - -2013-11-12 Vladimir Serbinenko - - * grub-core/io/lzopio.c: Remove variable length arrays. - -2013-11-12 Vladimir Serbinenko - - * include/grub/crypto.h: Add maximums on hash size and cipher block - size. - -2013-11-12 Vladimir Serbinenko - - * grub-core/commands/xnu_uuid.c: Remove variable length arrays. - -2013-11-12 Vladimir Serbinenko - - * grub-core/tests/xnu_uuid_test.c: New test. - -2013-11-12 Vladimir Serbinenko - - * grub-core/commands/hashsum.c: Remove unneeded memset (zalloc already - covers it). - -2013-11-12 Vladimir Serbinenko - - * grub-core/commands/hashsum.c: Remove variable length arrays. - -2013-11-11 Vladimir Serbinenko - - * grub-core/tests/gfxterm_menu.c (gfxterm_menu): Handle out-of-memory - condition. - * tests/grub_func_test.in: Increase memory allocation. - -2013-11-11 Vladimir Serbinenko - - * grub-core/osdep/unix/getroot.c [HAVE_STRUCT_STATFS_F_FSTYPENAME - && HAVE_STRUCT_STATFS_F_MNTFROMNAME]: Include sys/param.h and - sys/mount.h. - -2013-11-11 Vladimir Serbinenko - - * grub-core/osdep/apple/hostdisk.c (grub_util_get_fd_size): Rename to .. - (grub_util_get_fd_size_os): ...this. - (grub_hostdisk_flush_initial_buffer): New empty function. - -2013-11-11 Vladimir Serbinenko - - * grub-core/gensyminfo.sh.in: Handle the case of portable output - without --defined-only. - -2013-11-11 Vladimir Serbinenko - - * grub-core/lib/i386/relocator_common.S [__APPLE__ && __x86_64__]: Use - rip-relative addressing in prologue. - -2013-11-11 Vladimir Serbinenko - - * include/grub/misc.h [__APPLE__]: Do not add regparm(0) on x86_64. - * grub-core/kern/misc.c (__bzero) [__APPLE__]: New function. - -2013-11-11 Vladimir Serbinenko - - * util/getroot.c (grub_util_biosdisk_get_grub_dev) [__APPLE__]: - Add missing semicolon. - -2013-11-11 Vladimir Serbinenko - - * util/grub-macho2img.c: Use plain fopen rather than grub_util_fopen. - -2013-11-11 Vladimir Serbinenko - - * configure.ac: Check for lzma.h for enabling liblzma and allow - manual disabling. - -2013-11-11 Vladimir Serbinenko - - Add missing includes of loader.h. - -2013-11-11 Fam Zheng - - * util/grub.d/30_os-prober.in: Add minix entry. - -2013-11-10 Vladimir Serbinenko - - * grub-core/loader/i386/coreboot/chainloader.c (load_segment): Use - right buffer for temporary load. - -2013-11-10 Vladimir Serbinenko - - * grub-core/loader/i386/coreboot/chainloader.c: Support tianocore. - -2013-11-10 Vladimir Serbinenko - - * grub-core/loader/i386/coreboot/chainloader.c: Support lzma-compressed - payload. - -2013-11-10 Vladimir Serbinenko - - * include/grub/lib/LzmaDec.h: Fix to include LzmaTypes.h and - not Types.h. - * grub-core/lib/LzmaDec.c: Fix prologue to make it compileable in GRUB - environment. - (LzmaDec_InitDicAndState): Make static. - -2013-11-10 Vladimir Serbinenko - - * util/grub-mkimagexx.c (generate_elf): Fix module address on coreboot. - -2013-11-10 Vladimir Serbinenko - - * grub-core/term/ieee1275/escc.c (GRUB_MOD_INIT): Fix order of channels. - - Reported by: Aaro Koskinen - -2013-11-10 Vladimir Serbinenko - - * docs/grub-dev.texi: Replace bzr references with git ones. - -2013-11-10 Andrey Borzenkov - - * docs/grub.texi (Simple configuration): Remove reference to - grub-reboot from saved default entry description - grub-default - does not use it anymore. - -2013-11-10 Vladimir Serbinenko - - * configure.ac: Make efiemu test cflags match the cflags efiemu is - compiled with. - -2013-11-10 Andrey Borzenkov - - * docs/grub.texi (Simple configuration): Document GRUB_DISABLE_SUBMENU. - -2013-11-10 Vladimir Serbinenko - - Fix grub_machine_fini bitrot. - - Reported by: Glenn Washburn. - -2013-11-10 Vladimir Serbinenko - - * configure.ac: Remove leftover -fnested-funcions -Wl,-allow_execute. - -2013-11-10 Vladimir Serbinenko - - * grub-core/Makefile.am (efiemu): Remove leftover -DAPPLE_CC and - -DELF. - * grub-core/efiemu/runtime/config.h: Use __i386__ and __x86_64__ - instead of ELF*. - -2013-11-10 Vladimir Serbinenko - - * configure.ac: Restore CFLAGS to TARGET_CFLAGS before external tests. - Add -march=core2 when testing compile of efiemu64. - - Thanks Andrey Borzenkov for spotting this. - -2013-11-09 Vladimir Serbinenko - - Add new ports: i386-xen and x86_64-xen. This allows running GRUB in - XEN PV environment and load kernels. - -2013-11-09 Vladimir Serbinenko - - * grub-core/loader/i386/multiboot_mbi.c: Handle space in command line. - * grub-core/loader/multiboot_mbi2.c: Likewise. - -2013-11-09 Vladimir Serbinenko - - * grub-core/lib/cmdline.c (grub_loader_cmdline_size): Fix empty cmdline - handling. - -2013-11-09 Vladimir Serbinenko - - * grub-core/commands/i386/cmostest.c: Add new command "cmosset". - - Tested by: Denis 'GNUtoo' Carikli. - -2013-11-08 Vladimir Serbinenko - - * grub-core/normal/datetime.c (grub_get_weekday): Use unsigned types. - -2013-11-08 Vladimir Serbinenko - - * grub-core/gfxmenu/gui_circular_progress.c (parse_angle): - Use to get rounded angle rather than truncated. - -2013-11-08 Vladimir Serbinenko - - * grub-core/term/serial.c: Add option for enabling/disabling - RTS/CTS flow control. - -2013-11-08 Vladimir Serbinenko - - * grub-core/lib/libgcrypt/cipher/idea.c (mul_inv): Remove signed - divisions. - -2013-11-08 Vladimir Serbinenko - - * grub-core/lib/libgcrypt/mpi/mpih-div.c (_gcry_mpih_divrem): - Use grub_fatal rather than divide by zero. - * grub-core/lib/libgcrypt/mpi/mpi-pow.c (gcry_mpi_powm): Likewise. - -2013-11-08 Vladimir Serbinenko - - * include/grub/gui.h (grub_fixed_sfs_divide): Round rather than - truncate. - (grub_fixed_fsf_divide): Likewise. - -2013-11-08 Vladimir Serbinenko - - * grub-core/gfxmenu/gui_list.c (draw_scrollbar): Avoid - division by-zero and senseless negative divisions. - -2013-11-08 Vladimir Serbinenko - - * grub-core/gfxmenu/gui_circular_progress.c (circprog_paint): Avoid - division by-zero and senseless negative divisions. - (circprog_set_property): Don't accept negative num_ticks. - -2013-11-08 Vladimir Serbinenko - - * grub-core/gfxmenu/gui_progress_bar.c (draw_pixmap_bar): Avoid - division by-zero and senseless negative divisions. - -2013-11-08 Vladimir Serbinenko - - * configure.ac: Use elf_*_fbsd on kfreebsd. - -2013-11-08 Vladimir Serbinenko - - * grub-core/tests/div_test.c: New test. - -2013-11-08 Vladimir Testov - - * grub-core/gfxmenu/gui_box.c: Updated to work with area status. - * grub-core/gfxmenu/gui_canvas.c: Likewise. - * grub-core/gfxmenu/view.c: Likewise. - * grub-core/video/fb/video_fb.c: Introduce new functions: - grub_video_set_area_status, grub_video_get_area_status, - grub_video_set_region, grub_video_get_region. - * grub-core/video/bochs.c: Likewise. - * grub-core/video/capture.c: Likewise. - * grub-core/video/video.c: Likewise. - * grub-core/video/cirrus.c: Likewise. - * grub-core/video/efi_gop.c: Likewise. - * grub-core/video/efi_uga.c: Likewise. - * grub-core/video/emu/sdl.c: Likewise. - * grub-core/video/radeon_fuloong2e.c: Likewise. - * grub-core/video/sis315pro.c: Likewise. - * grub-core/video/sm712.c: Likewise. - * grub-core/video/i386/pc/vbe.c: Likewise. - * grub-core/video/i386/pc/vga.c: Likewise. - * grub-core/video/ieee1275.c: Likewise. - * grub-core/video/i386/coreboot/cbfb.c: Likewise. - * include/grub/video.h: Likewise. - * include/grub/video_fb.h: Likewise. - * include/grub/fbfill.h: Updated render_target structure. - grub_video_rect_t viewport, region, area - int area_offset_x, area_offset_y, area_enabled - * include/grub/gui.h: New helper function - grub_video_bounds_inside_region. - * docs/grub-dev.texi: Added information about new functions. - -2013-11-08 Vladimir Serbinenko - - * grub-core/kern/mm.c (grub_real_malloc): Use AND rather than MOD - for alignment. - -2013-11-08 Vladimir Serbinenko - - * grub-core/lib/reed_solomon.c (grub_reed_solomon_recover): Add - missing attribute. - * grub-core/gdb/cstub.c (grub_gdb_trap): Likewise. - -2013-11-08 Vladimir Serbinenko - - * grub-core/kern/misc.c (grub_divmod64): Don't fallback to - simple division on arm and ia64. - -2013-11-08 Vladimir Serbinenko - - * grub-core/kern/arm/misc.S (__aeabi_unwind_cpp_pr0): Add dummy to - link with libgcc. - -2013-11-08 Vladimir Serbinenko - - * include/grub/symbol.h (FUNCTION), (VARIABLE): Fix precedence logic. - -2013-11-08 Vladimir Serbinenko - - * include/grub/symbol.h (FUNCTION), (VARIABLE) [__arm__]: Use % as - prefix symbol, not @. - -2013-11-08 Vladimir Serbinenko - - * INSTALL: Add note about older gcc and clang. - -2013-11-08 Vladimir Serbinenko - - * tests/util/grub-shell.in: Boot as hdd on ppc by default. - -2013-11-08 Vladimir Serbinenko - - * grub-core/loader/multiboot_mbi2.c (grub_multiboot_add_module): Fix - NULL pointer dereference. - -2013-11-07 Vladimir Serbinenko - - * grub-core/Makefile.am: Do not include libgcc.h when compiling with - clang. - -2013-11-07 Vladimir Serbinenko - - * grub-core/kern/powerpc/dl.c: Add missing pragma to silence cast-align - warnings. - -2013-11-07 Vladimir Serbinenko - - * grub-core/net/net.c (grub_net_route_unregister): Remove unused - function. - * grub-core/loader/i386/xnu.c (hextoval): Likewise. - * grub-core/disk/geli.c (ascii2hex): Likewise. - -2013-11-07 Vladimir Serbinenko - - * configure.ac: Run linker tests without -Werror. - Define TARGET_LDFLAGS_STATIC_LIBGCC and TARGET_LIBGCC. - Change all occurences of -static-libgcc resp -lgcc to - TARGET_LDFLAGS_STATIC_LIBGCC resp TARGET_LIBGCC. - -2013-11-07 Vladimir Serbinenko - - * configure.ac: Don't add -no-itegrated-as on clang on non-x86. - -2013-11-07 Vladimir Serbinenko - - Allow compiling with clang (not really supported though). - - * conf/Makefile.common (CFLAGS_PLATFORM): Don't add -mrtd -mregparm=3 - unconditionally. - * configure.ac: Add -no-integrated-as when using clangfor asm files. - Add -mrtd -mregparm=3 on i386 when not using clang. - * grub-core/kern/misc.c (grub_memset): Add volatile when on clang. - -2013-11-07 Vladimir Serbinenko - - * grub-core/kern/ieee1275/cmain.c: Add explicit attribute on asm - bindings. - * grub-core/lib/reed_solomon.c: Likewise. - * include/grub/i386/gdb.h: Likewise. - * include/grub/i386/pc/int.h: Likewise. - * include/grub/i386/pc/pxe.h: Likewise. - * include/grub/ieee1275/ieee1275.h: Likewise. - -2013-11-07 Vladimir Serbinenko - - Import libgcrypt 1.5.3. - -2013-11-07 Vladimir Serbinenko - - * configure.ac: Don't add -Wcast-align on x86. - -2013-11-07 Vladimir Serbinenko - - * configure.ac: Add -freg-struct-return on all platforms that - support it. - -2013-11-07 Vladimir Serbinenko - - * acinclude.m4: Use -Werror on parameter tests. - * configure.ac: Likewise. - -2013-11-07 Vladimir Serbinenko - - * acinclude.m4: Add missing TARGET_CCASFLAGS on asm tests. - -2013-11-07 Vladimir Serbinenko - - * configure.ac: Check that -malign-loops works rather than assuming that - either -falign-loops or -malign-loops work. - -2013-11-07 Vladimir Serbinenko - - * configure.ac: Remove -fnested-functions. We don't need it anymore. - -2013-11-07 Vladimir Serbinenko - - * configure.ac: Prevent cflags leaking to subsequent tests by always - resetting cflags to target_cflags in target tests. - -2013-11-07 Vladimir Serbinenko - - * grub-core/kern/parser.c (grub_parser_split_cmdline): Remove nested - function. - -2013-11-07 Vladimir Serbinenko - - * grub-core/kern/misc.c (grub_vsnprintf_real): Remove nested functions. - -2013-11-07 Vladimir Serbinenko - - * grub-core/lib/arg.c (grub_arg_parse): Remove nested function. - -2013-11-07 Vladimir Serbinenko - - * grub-core/normal/cmdline.c (grub_cmdline_get): - Remove nested functions. - -2013-11-07 Vladimir Serbinenko - - * tests/test_sha512sum.in: Make it work on emu. - -2013-11-07 Vladimir Serbinenko - - * grub-core/normal/charset.c (bidi_line_wrap): Eliminate nested - functions. - (grub_bidi_line_logical_to_visual): Likewise. - -2013-11-07 Vladimir Serbinenko - - Remove vestiges of -Wunsafe-loop-optimisations. - - * conf/Makefile.common (CFLAGS_GNULIB): Remove - -Wno-unsafe-loop-optimisations. - * grub-core/commands/legacycfg.c: Remove -Wunsafe-loop-optimisations - pragma. - * grub-core/io/gzio.c: Likewise. - * grub-core/script/parser.y: Likewise. - * grub-core/script/yylex.l: Likewise. - * util/grub-mkfont.c: Likewise. - -2013-11-07 Vladimir Serbinenko - - * util/grub-mkfont.c (process_cursive): Remove nested function. - -2013-11-07 Vladimir Serbinenko - - * include/grub/misc.h (grub_dprintf): Use unnamed vararg. - (grub_boot_time): Likewise. - -2013-11-07 Vladimir Serbinenko - - * include/grub/symbol.h (FUNCTION): Use @function rather than - "function". - (VARIABLE): Likewise. - -2013-11-07 Vladimir Serbinenko - - * grub-core/net/bootp.c (OFFSET_OF): Explicitly cast to grub_size_t. - -2013-11-07 Vladimir Serbinenko - - * grub-core/net/bootp.c (set_env_limn_ro): Make pointer const. - (parse_dhcp_vendor): Likewise. - -2013-11-07 Vladimir Serbinenko - - * util/grub-mkimagexx.c (relocate_symbols): Remove unneeded brackets. - -2013-11-07 Vladimir Serbinenko - - * grub-core/gettext/gettext.c (main_context), (secondary_context): - Define after defining type and not before. - -2013-11-07 Vladimir Serbinenko - - * grub-core/fs/zfs/zfscrypt.c (grub_ccm_decrypt): Return right error - type. - (grub_gcm_decrypt): Likewise. - (algo_decrypt): Likewise. - (grub_zfs_decrypt_real): Transform error type. - -2013-11-07 Vladimir Serbinenko - - * grub-core/disk/geli.c (geli_rekey): Fix error return type. - -2013-11-07 Vladimir Serbinenko - - * grub-core/disk/usbms.c (grub_usbms_cbi_cmd): Fix error type. - (grub_usbms_cbi_reset): Likewise. - (grub_usbms_bo_reset): Likewise. - (grub_usbms_reset): Likewise. - (grub_usbms_attach): Likewise. - (grub_usbms_transfer_cbi): Likewise. - -2013-11-07 Vladimir Serbinenko - - * grub-core/io/lzopio.c (test_header): Simplify code and remove useless - "checksum = checksum;". - -2013-11-07 Vladimir Serbinenko - - * grub-core/fs/reiserfs.c (grub_reiserfs_iterate_dir): Fix type of - entry_type. - -2013-11-07 Vladimir Serbinenko - - * grub-core/commands/legacycfg.c (grub_cmd_legacy_kernel): Fix - BIOS disk check. - -2013-11-07 Vladimir Serbinenko - - * grub-core/bus/usb/ehci.c (grub_ehci_restore_hw): Return right enum - type. - (grub_ehci_fini_hw): Likewise. - * grub-core/bus/usb/usbhub.c (grub_usb_add_hub): Likewise. - -2013-11-07 Vladimir Serbinenko - - * include/grub/usb.h (grub_usb_controller_dev): Make portstatus - return grub_usb_err_t for cosistency. All users updated. - -2013-11-07 Vladimir Serbinenko - - * util/mkimage.c (SzAlloc): Use attribute unused rather than dubious - assigning to itself. - -2013-11-05 Gustavo Luiz Duarte -2013-11-05 Paulo Flabiano Smorigo - - Issue separate DNS queries for ipv4 and ipv6 - - Adding multiple questions on a single DNS query is not supportted by - most DNS servers. This patch issues two separate DNS queries - sequentially for ipv4 and then for ipv6. - - Fixes: https://savannah.gnu.org/bugs/?39710 - - * grub-core/net/bootp.c (parse_dhcp_vendor): Add DNS option. - * grub-core/net/dns.c (grub_dns_qtype_id): New enum. - * (grub_net_dns_lookup): Now using separated dns packages. - * (grub_cmd_nslookup): Add error condition. - * (grub_cmd_list_dns): Print DNS option. - * (grub_cmd_add_dns): Add four parameters: --only-ipv4, --only-ipv6, - --prefer-ipv4, and --prefer-ipv6. - * include/grub/net.h (grub_dns_option_t): New enum. - * (grub_net_network_level_address): option added. - -2013-11-05 Vladimir Testov - - * grub-core/video/fb/video_fb.c: Merge two blit functions - into one. - -2013-11-05 Vladimir Serbinenko - - * grub-core/term/terminfo.c: Add sequences for home and end. - -2013-11-05 Vladimir Serbinenko - - * grub-core/lib/legacy_parse.c: Fix handling of hercules and add - graphics console. - -2013-11-05 Vladimir Serbinenko - - * grub-core/video/i386/pc/vga.c: Fix double bufferring and - add mode 0x12. - -2013-11-04 Vladimir Serbinenko - - * docs/grub.texi (Vendor power-on keys): Add XPS M1330M based on old - e-mail by Per Öberg. - -2013-11-04 Vladimir Serbinenko - - * grub-core/commands/i386/nthibr.c (GRUB_MOD_INIT): Fix typo in command - name. - -2013-11-04 Andrey Borzenkov - - * configure.ac: Explicitly disable emusdl, emuusb and emupci on non- - emu platforms. - * grub-core/Makefile.core.def: Enable emupci and emuucb only for emu. - -2013-11-04 Vladimir Serbinenko - - * docs/grub.texi: Document usage of menuentry id. - -2013-11-04 Vladimir Serbinenko - - * docs/grub.texi: Add few mentions about EFI, debug and videoinfo. - -2013-11-04 Peter Lustig - - * grub-core/commands/i386/nthibr.c: New command. - -2013-11-04 Vladimir Serbinenko - - * grub-core/tests/video_checksum.c: Add 2560x1440 mode to testing. - -2013-11-04 Vladimir Serbinenko - - * include/grub/term.h (grub_term_coordinate): Extend to 16-bit per - coordinate. - -2013-11-04 Vladimir Serbinenko - - Support GRUB_DISABLE_SUBMENU config. - - Inspired by patch from Prarit Bhargava. - -2013-11-03 Vladimir Serbinenko - - * docs/grub.texi: Mention RSA support. - -2013-11-03 Vladimir Serbinenko - - * grub-core/commands/verify.c: Add RSA support. - -2013-11-03 Vladimir Serbinenko - - * grub-core/disk/ahci.c (grub_ahci_pciinit): Detect ATAPI devices. - * grub-core/disk/ata.c (grub_ata_identify): Use atapi_identify if - device is known to be ATAPI. - -2013-11-03 Mike Frysinger - - * configure.ac: Don't add target-prefix. - -2013-11-03 Vladimir Serbinenko - - * grub-core/commands/loadenv.c (grub_cmd_save_env): Remove unset - variables. - -2013-11-03 Vladimir Serbinenko - - * grub-core/gettext/gettext.c (grub_gettext_init_ext): Ignore errors - if language is English. - -2013-11-03 Vladimir Serbinenko - - * grub-core/osdep/linux/getroot.c: Fix cast-align problems. - -2013-11-02 Vladimir Serbinenko - - * configure.ac: Don't add -m32/-m64 on emu. - -2013-11-02 neil - - * grub-core/osdep/linux/blocklist.c: Include linux/types.h for some - broken linux headers. - -2013-11-02 Vladimir Serbinenko - - * util/grub.d/30_os-prober.in: Add unhiding of partition if on msdos. - -2013-11-02 Vladimir Serbinenko - - * grub-core/lib/reed_solomon.c (grub_reed_solomon_recover): Don't do - Reed-Solomon recovery if more than half of redundancy info is 0. - -2013-11-02 Vladimir Serbinenko - - * util/grub-mount.c: Handle symlinks to directories. - -2013-11-02 Vladimir Serbinenko - - * grub-core/fs/fshelp.c (find_file): Save ctx->next when calling - find_file recursively for symlink. - -2013-11-02 Vladimir Serbinenko - - * tests/util/grub-shell.in: Copy themes. - -2013-11-02 Vladimir Serbinenko - - * util/grub-mkimagexx.c (locate_sections): Reject mislinked images. - -2013-11-02 Vladimir Serbinenko - - * configure.ac: Use 0x8000 for address instead of 8000. - -2013-11-02 Vladimir Serbinenko - - * grub-core/loader/sparc64/ieee1275/linux.c (get_physbase): Fix - signature. - -2013-11-02 Vladimir Serbinenko - - * grub-core/disk/efi/efidisk.c (grub_efidisk_readwrite): Remove unused - variable. - -2013-11-02 Vladimir Serbinenko - - * configure.ac (TARGET_CFLAGS): Add -march=i386 on i386. - -2013-11-02 Vladimir Serbinenko - - * grub-core/fs/hfspluscomp.c (hfsplus_read_compressed_real): Call - file_progress_read_hook. - * grub-core/fs/ntfscomp.c (hfsplus_read_compressed_real): Likewise. - -2013-11-02 Vladimir Serbinenko - - * conf/Makefile.common (CFLAGS_PLATFORM): Remove poisoning of float - and double. - -2013-11-01 Vladimir Serbinenko - - * grub-core/fs/tar.c (grub_cpio_read): Add read_hook. - -2013-11-01 Vladimir Serbinenko - - Rewrite blocklist functions in order to get progress when - reading large extents and decrease amount of blocklist hook calls. - -2013-11-01 Vladimir Serbinenko - - * grub-core/term/serial.c (options), (grub_cmd_serial): Fix handling - of SI suffixes. - -2013-11-01 Vladimir Serbinenko - - Support --base-clock for serial command to handle weird cards with - non-standard base clock. - -2013-11-01 Vladimir Serbinenko - - * grub-core/fs/ext2.c (grub_ext2_read_symlink): Use memcpy rather - strncpy. - * grub-core/fs/jfs.c (grub_jfs_lookup_symlink): Likewise. - * grub-core/kern/misc.c (grub_strncpy): Move from here ... - * include/grub/misc.h (grub_strncpy): ... to here. Make inline. - * grub-core/net/net.c (grub_net_addr_to_str): Use COMPILE_TIME_ASSERT - + strcpy rather than strncpy. - -2013-11-01 Vladimir Serbinenko - - * grub-core/fs/zfs/zfs.c (nvpair_name): Use correct type for size. - (check_pool_label): Likewise. Fixes overflow. - (nvlist_find_value): Fix comparison. - -2013-11-01 Vladimir Serbinenko - - * include/grub/misc.h (grub_strcat): Removed. All users changed to - more appropriate functions. - -2013-11-01 Vladimir Serbinenko - - * grub-core/kern/efi/efi.c (grub_efi_get_filename): Avoid inefficient - realloc. - -2013-11-01 Vladimir Serbinenko - - * util/grub-mkrescue.in: Do not use UUID search on EFI. - -2013-11-01 Vladimir Serbinenko - - * grub-core/kern/dl.c: Unify section-finding algorithm. Saves 30 bytes - on core size. - -2013-10-30 Vladimir Serbinenko - - * grub-core/kern/mm.c (grub_realloc): Don't copy more data than we have. - -2013-10-30 Vladimir Serbinenko - - * grub-core/io/gzio.c (huft_build): Use zalloc for safety. - (initialize_tables): reset tl and td to NULL after freeing. - -2013-10-28 Vladimir Serbinenko - - * grub-core/loader/multiboot_mbi2.c: Implement network tag. - -2013-10-28 Vladimir Serbinenko - - * grub-core/loader/multiboot_mbi2.c: Add EFI memory map to the list - of supported tags. - -2013-10-28 Vladimir Serbinenko - - * grub-core/loader/multiboot_mbi2.c: Implement EFI memory map. - -2013-10-28 Vladimir Serbinenko - - * grub-core/loader/multiboot.c: Add support for multiboot kernels - quirks. - -2013-10-28 Vladimir Serbinenko - - * grub-core/loader/i386/linux.c (allocate_pages): Allocate at least - a page in protected space. - -2013-10-28 Vladimir Serbinenko - - * grub-core/loader/multiboot.c (grub_cmd_module): Don't attempt to - allocate space for zero-sized modules. - -2013-10-28 Vladimir Serbinenko - - * grub-core/loader/xnu_resume.c (grub_xnu_resume): Reject empty images. - -2013-10-28 Francesco Lavra - - * grub-core/lib/fdt.c: Fix miscellaneous bugs. - -2013-10-28 Vladimir Serbinenko - - * grub-core/lib/progress.c (grub_file_progress_hook_real): Add missing - safeguards. Fixes a crash with i386/pc/console.c. - -2013-10-28 Vladimir Serbinenko - - * include/grub/emu/hostdisk.h: Add proper declaration for grub_host_init - and grub_hostfs_init. - -2013-10-28 Vladimir Serbinenko - - * grub-core/kern/emu/hostdisk.c (grub_util_check_file_presence): Use - windows method on other platforms without good stat as well. - -2013-10-28 Vladimir Serbinenko - - * grub-core/osdep/linux/getroot.c: Add new btrfs defines. - -2013-10-28 Vladimir Serbinenko - - Make / in btrfs refer to real root, not the default volume. - Modify mkrelpath to work even if device is mounted with subvolid option. - -2013-10-28 Andrey Borzenkov - - * Makefile.util.def: Add grub-core/kern/disk_common.c to library - extra_dist. - * grub-core/Makefile.core.def: Add kern/disk_common.c to disk module - extra_dist. - -2013-10-27 Vladimir Serbinenko - - * util/grub-mkfont.c (main): Show error message when FT_Set_Pixel_Sizes - fails. - -2013-10-27 BVK Chaitanya - - * docs/autoiso.cfg: New file. - -2013-10-27 Vladimir Serbinenko - - * configure.ac: Remove leftover COND_BUILD_GRUB_MKFONT and - COND_GRUB_PE2ELF conditions. - -2013-10-27 Vladimir Serbinenko - - * grub-core/loader/i386/bsd.c (grub_cmd_openbsd): Accept "sd", "cd", - "vnd", "rd" and "fd" disks. - -2013-10-27 Vladimir Serbinenko - - Move grub_disk_write out of kernel into disk.mod. - -2013-10-27 Vladimir Serbinenko - - * grub-core/kern/misc.c (grub_vsnprintf_real): Unify int and wchar - handling. - -2013-10-27 Vladimir Serbinenko - - * grub-core/kern/misc.c (grub_abort): Make static - -2013-10-27 Vladimir Serbinenko - - * grub-core/kern/misc.c (grub_vsnprintf_real): Don't attempt to - transform invalid unicode codepoints. - -2013-10-27 Vladimir Serbinenko - - * grub-core/kern/misc.c (grub_vsnprintf_real): Remove needless explicit - \0 checking. - -2013-10-27 Vladimir Serbinenko - - * grub-core/lib/legacy_parse.c: Add support for "nd" disk. - -2013-10-26 Vladimir Serbinenko - - Consolidate cpuid code. - -2013-10-26 Vladimir Serbinenko - - Move cpuid code to cpuid.h and TSC code to tsc.c. - -2013-10-26 Grégoire Sutre - - * util/grub.d/00_header.in: Don't use LANG if it's not set. - -2013-10-26 Grégoire Sutre - - * util/grub-mkconfig.in: Replace $0 with $self. - * util/grub-reboot.in: Likewise. - * util/grub-set-default.in: Likewise. - -2013-10-26 BVK Chaitanya - - * docs/osdetect.cfg: New file. - -2013-10-26 BVK Chaitanya - - * tests/util/grub-shell.in: Add new --debug option. - -2013-10-26 BVK Chaitanya - - * tests/test_unset.in: New test. - -2013-10-26 BVK Chaitanya - - * tests/test_sha512sum.in: New test. - -2013-10-26 Vladimir Serbinenko - - * grub-core/fs/iso9660.c: Replace strncat with memcpy. - * include/grub/misc.h: Remove strncat. - * grub-core/lib/posix_wrap/string.h: Likewise. - -2013-10-26 Vladimir Serbinenko - - * grub-core/net/tftp.c: Retransmit ack when rereceiving old packet. - Try to handle more than 0xFFFF packets. - Reported by: Bernhard Übelacker . - He also spotted few overflows in first version of this patch. - -2013-10-26 Vladimir Serbinenko - - * tests/date_unit_test.c: New test. - -2013-10-26 Vladimir Serbinenko - - * grub-core/normal/datetime.c (grub_unixtime2datetime): Fix mishandling - of first three years after start of validity of unixtime. - -2013-10-26 Vladimir Serbinenko - - * grub-core/normal/menu_entry.c (get_logical_num_lines): Use unsigned - division as the one making more sense. - (update_screen): Likewise. - (complete): Likewise. - -2013-10-25 Vladimir Serbinenko - - * grub-core/normal/menu_entry.c (complete): Make sure that width is >0. - -2013-10-25 Vladimir Serbinenko - - Make char and string width grub_size_t rather than grub_ssize_t. - -2013-10-25 Vladimir Serbinenko - - * grub-core/normal/cmdline.c (grub_history_get): Make argument into - unsigned. - (grub_history_replace): Likewise. - -2013-10-25 Vladimir Serbinenko - - * grub-core/disk/raid6_recover.c: Use unsigned arithmetics when - appropriate. - -2013-10-25 Vladimir Serbinenko - - * grub-core/video/bitmap_scale.c: Use unsigned arithmetics when - appropriate. - -2013-10-25 Vladimir Serbinenko - - * grub-core/video/fb/fbblit.c: Use (255 ^ x) rather than (255 - x). - Use unsigned divisions rather than signed variants. - -2013-10-25 Vladimir Serbinenko - - * grub-core/video/readers/png.c (grub_png_convert_image): Use - unsigned arithmetics. - Add missing break. - -2013-10-25 Vladimir Serbinenko - - * grub-core/video/readers/jpeg.c: Use unsigned where appropriate. - -2013-10-25 Vladimir Serbinenko - - * grub-core/fs/zfs/zfs.c (xor_out): Use unsigned modular arithmetics - rather than signed one. - (recovery): Likewise. - -2013-10-25 Vladimir Serbinenko - - * grub-core/net/dns.c (hash): Use unsigned arithmetic. - -2013-10-25 Vladimir Serbinenko - - * grub-core/io/gzio.c (test_zlib_header): Use undigned modulo rather - than signed. - -2013-10-25 Jon McCune - - * docs/grub.texi: Cleanup security documentation around signatures. - -2013-10-25 Vladimir Serbinenko - - * grub-core/fs/ext2.c (EXT2_BLOCK_SIZE): Make unsigned. - -2013-10-25 Vladimir Serbinenko - - * grub-core/commands/gptsync.c (lba_to_chs): Use proper types rather - than int. - -2013-10-25 Vladimir Serbinenko - - * conf/Makefile.common (CPPFLAGS_KERNEL): Add -DGRUB_KERNEL=1. - * include/grub/dl.h (GRUB_MOD_INIT), (GRUB_MOD_FINI): Define - functions when compiling for kernel. - -2013-10-25 Vladimir Serbinenko - - * grub-core/lib/progress.c (grub_file_progress_hook_real): Cast to - unsigned long long when using %llu. - -2013-10-25 Vladimir Serbinenko - - * grub-core/lib/progress.c (grub_file_progress_hook_real): Refresh - terminal after updating progress. - -2013-10-25 Vladimir Serbinenko - - * grub-core/boot/i386/pc/startup_raw.S (grub_gate_a20): Remove - argument. We don't disable Gate A20 in this code. - -2013-10-25 Vladimir Serbinenko - - * grub-core/boot/i386/qemu/boot.S: Ensure that A20 is enabled. - Conceptually based on change in branch "vbe-on-coreboot". - -2013-10-24 Robert Millan - - * grub-core/video/i386/pc/vbe.c (grub_video_vbe_setup): Replace - numeric constants with their symbolic equivalent. - Taken from branch "vbe-on-coreboot". - -2013-10-22 Vladimir Serbinenko - - * docs/grub.texi: Fix ordering and use pxref rather than xref. - -2013-10-22 Vladimir Serbinenko - - * grub-core/lib/progress.c (grub_file_progress_hook_real): Use - divmod64 for offset division. - -2013-10-22 Paulo Flabiano Smorigo - - Rename .bzrignore to .gitignore. Add "*.o" rule. - - * .bzrignore: Renamed to... - * .gitignore: ...this. - -2013-10-22 Paulo Flabiano Smorigo - - Add new progress module that displays the load progress of files. - - * grub-core/lib/progress.c: New file. - * grub-core/Makefile.core.def (progress): New module. - * grub-core/kern/file.c (grub_file_open): File name added. - * (grub_file_read): Progress hook added. - * grub-core/fs/cbfs.c (grub_cbfs_read): Likewise. - * grub-core/fs/cpio_common.c (grub_cpio_read): Likewise. - * grub-core/net/net.c (grub_net_fs_read_real): Likewise. - * include/grub/file.h (struct grub_file): Add progress module members. - * include/grub/term.h (struct grub_term_output): Likewise. - * grub-core/osdep/unix/emuconsole.c (grub_console_term_output): - Terminal velocity added. - * grub-core/osdep/windows/emuconsole.c (grub_console_term_output): Likewise. - * grub-core/term/arc/console.c (grub_console_term_output): Likewise. - * grub-core/term/efi/console.c (grub_console_term_output): Likewise. - * grub-core/term/gfxterm.c (grub_video_term): Likewise. - * grub-core/term/i386/coreboot/cbmemc.c (grub_cbmemc_term_output): Likewise. - * grub-core/term/i386/pc/console.c (grub_console_term_output): Likewise. - * grub-core/term/i386/pc/vga_text.c (grub_vga_text_term): Likewise. - * grub-core/term/ieee1275/console.c (grub_console_term_output): Likewise. - * grub-core/term/morse.c (grub_audio_term_output): Likewise. - * grub-core/term/serial.c (grub_serial_term_output): Likewise. - * grub-core/term/spkmodem.c (grub_spkmodem_term_output): Likewise. - * grub-core/term/uboot/console.c (uboot_console_term_output): Likewise. - -2013-10-22 Vladimir Serbinenko - - Verify signatures of signatures unless --skip-sig is specified. - -2013-10-21 Vladimir Serbinenko - - * grub-core/kern/misc.c (grub_vsnprintf_real): Remove needless explicit - \0 checking. - - Saves 70 bytes on compressed image. - -2013-10-21 Vladimir Serbinenko - - * grub-core/kern/misc.c (grub_strtoull): Remove needless *ptr != 0 - check. - - Saves 10 bytes on compressed image. - -2013-10-21 Vladimir Serbinenko - - * grub-core/kern/misc.c (grub_isprint): Move to ... - * include/grub/misc.h (grub_isprint): ... here. Make inline. - - Saves 20 bytes on compressed image due to remving exporting. - -2013-10-21 Vladimir Serbinenko - - * grub-core/fs/ntfs.c (grub_ntfs_mount): Remove redundant check. - - Saves 5 bytes on compressed image. - -2013-10-21 Vladimir Serbinenko - - * grub-core/fs/ntfs.c: Move common UTF-16 handling to a separate - function get_utf8. - - Saves 379 bytes on compressed image. - -2013-10-21 Vladimir Serbinenko - - * grub-core/fs/ntfs.c: Handle 48-bit MFT no. - -2013-10-21 Vladimir Serbinenko - - * grub-core/fs/ntfs.c (read_run_data): Rewrite using bitfields. - - Saves 40 bytes on compressed image. - -2013-10-21 Vladimir Serbinenko - - * grub-core/fs/ntfs.c (grub_ntfs_iterate_dir): Use grub_uint8_t for - mask rather than 64-bit type. - - Saves 20 bytes on compressed image. - -2013-10-21 Vladimir Serbinenko - - * grub-core/fs/ntfs.c (read_data): Move code for compressed data to ... - * grub-core/fs/ntfscomp.c (ntfscomp): ... here. - - Saves 273 bytes on compressed image. - -2013-10-20 Vladimir Serbinenko - - * grub-core/kern/disk.c (grub_disk_write): Use malloc/free instead of - variable length arrays. - - Saves 50 bytes on compressed image. - -2013-10-20 Vladimir Serbinenko - - * grub-core/loader/i386/bsd.c: Remove variable length arrays. - -2013-10-20 Vladimir Serbinenko - - * grub-core/fs/ufs.c: Remove variable length arrays. - -2013-10-20 Vladimir Serbinenko - - * grub-core/fs/ntfs.c: Add comment about fixed allocation size. - -2013-10-20 Vladimir Serbinenko - - * grub-core/fs/zfs.c: Remove variable length arrays. - Reduces zfs.mod by 160 bytes (208 compressed). - -2013-10-20 Vladimir Serbinenko - - * grub-core/fs/zfs/zfs.c (check_pool_label): Fix memory leak. - -2013-10-20 Vladimir Serbinenko - - * grub-core/net/arp.c: Remove variable length arrays. - * grub-core/net/bootp.c: Likewise. - * grub-core/net/dns.c: Likewise. - * grub-core/net/icmp6.c: Likewise. - * grub-core/net/net.c: Likewise. - -2013-10-20 Vladimir Serbinenko - - * grub-core/fs/ntfs.c: Remove variable length arrays. - Increases ntfs.mod by 64 bytes (but decreases by 3 when - compressed). - -2013-10-20 Vladimir Serbinenko - - * grub-core/fs/hfs.c: Remove variable length arrays. - Reduces hfs.mod by 8 bytes (52 compressed). - -2013-10-20 Vladimir Serbinenko - - * grub-core/fs/udf.c: Remove variable length arrays. - Increases udf.mod by 128 bytes (but decreases by 13 when - compressed). - -2013-10-20 Vladimir Serbinenko - - * grub-core/fs/iso9660.c: Remove variable length arrays. - Increases iso9660.mod by 200 bytes (but decreases by 79 when - compressed). - -2013-10-20 Vladimir Serbinenko - - * grub-core/fs/nilfs2.c: Remove variable length arrays. - Increases nilfs2.mod by 24 bytes (but decreases by 115 when - compressed). - -2013-10-20 Vladimir Serbinenko - - * grub-core/fs/xfs.c: Remove variable length arrays. - Reduces xfs.mod by 40 bytes (43 compressed). - -2013-10-20 Vladimir Serbinenko - - * grub-core/fs/fshelp.c: Remove variable length arrays. - Reduces fshelp.mod by 116 bytes (23 compressed). - -2013-10-20 Vladimir Serbinenko - - * grub-core/normal/completion.c: Remove variable length arrays. - * grub-core/normal/menu_entry.c: Likewise. - - Reduces normal.mod by 496 bytes. - -2013-10-20 Vladimir Serbinenko - - * grub-core/fs/minix.c: Remove variable length arrays. Reduces jfs.mod - by 356 bytes (158 compressed). - -2013-10-20 Vladimir Serbinenko - - * grub-core/fs/jfs.c: Remove variable length arrays. Reduces jfs.mod - by 364 bytes (169 compressed). - -2013-10-20 Vladimir Serbinenko - - * grub-core/fs/bfs.c: Remove variable length arrays. Reduces afs.mod and - bfs.mod size by 556 resp 740 bytes (288 resp 334 compressed). - * include/grub/types.h (grub_unaligned_uint64_t): New type. - -2013-10-19 Vladimir Serbinenko - - Lift 255x255 erminal sie restriction to 65535x65535. Also change from - bitmasks to small structures of size chosen to fit in registers. - -2013-10-19 Vladimir Serbinenko - - * conf/Makefile.common: Use -freg-struct-return on i386. This - decreases code size and improves performance. - -2013-10-19 Vladimir Serbinenko - - * grub-core/osdep/unix/exec.c: Fix compilation error on emu. - -2013-10-19 Vladimir Serbinenko - - * grub-core/kern/misc.c (grub_vsnprintf_real): Fix formatting of - "(null)" string. - Simplify expressions to save around 256 bytes in kernel.img. - * tests/printf_unit_test.c (printf_test): Add "(null)" tests. - -2013-10-19 Vladimir Serbinenko - - * grub-core/tests/video_checksum.c (grub_video_capture_write_bmp): - Use GRUB_UTIL_FD_O_* rather than O_*. - -2013-10-19 Vladimir Serbinenko - - Add haiku-specific functions. - -2013-10-19 Vladimir Serbinenko - - * grub-core/kern/emu/hostdisk.c: Remove few leftover includes. - -2013-10-19 Vladimir Serbinenko - - Move stat () and device mode checking into OS-dependent files as - long as performance doesn't suffer. - -2013-10-19 Vladimir Serbinenko - - Split make_system_path_relative_to_its_root into separate file - relpath.c from getroot.c as it's common between unix and haiku - but otherwise haiku doesn't use any functions from unix getroot.c. - -2013-10-19 Vladimir Serbinenko - - * grub-core/osdep/aros/hostdisk.c (grub_util_is_directory): - New function. - (grub_util_is_special_file): Likewise. - -2013-10-19 Vladimir Serbinenko - - * grub-core/osdep/unix/getroot.c: Move exec functions to ... - * osdep/unix/exec.c: ... here. Add few additional exec_* variants. - -2013-10-19 Vladimir Serbinenko - - * grub-core/lib/libgcrypt_wrap/cipher_wrap.h: Define size_t to - grub_size_t. This fixes the case when size_t mismatches grub_size_t. - -2013-10-19 Vladimir Serbinenko - - * util/grub-mkimagexx.c (make_reloc_section): Fix memory leak. - (load_image): Likewise. - -2013-10-19 Vladimir Serbinenko - - * util/grub-render-label.c: Move backend part to ... - * util/render-label.c: ... here. - -2013-10-18 Vladimir Serbinenko - - * grub-core/osdep/random.c: Use unix/random.c on haiku. Haiku uses - yarrow (by B. Schneier et al) for its /dev/urandom (similar to FreeBSD). - -2013-10-18 Vladimir Serbinenko - - * grub-core/osdep/generic/blocklist.c: Add missing include to string.h. - -2013-10-18 Vladimir Serbinenko - - * grub-core/disk/efi/efidisk.c (grub_efidisk_get_device_name): Handle - CD-ROM in case when it's declared as having subpartitions. - -2013-10-18 Vladimir Serbinenko - - Don't add -lm on haiku. - - * configure.ac: Define BUILD_LIBM to -lm on most platforms - and empty on haiku. - * grub-core/Makefile.am (gentrigtables): Use $(BUILD_LIBM) rather than - -lm. - -2013-10-18 Vladimir Serbinenko - - * configure.ac: Use -melf_*_haiku as target on haiku. - -2013-10-18 Vladimir Serbinenko - - * Makefile.util.def: Add util/setup.c to extra_dist. - -2013-10-18 Vladimir Serbinenko - - * grub-core/kern/i386/pc/mmap.c (grub_machine_mmap_iterate): Pass - unknown types through. - -2013-10-18 Vladimir Serbinenko - - * grub-core/osdep/unix/getroot.c (grub_util_check_block_device): Remove. - (grub_util_check_char_device): Likewise. - * include/grub/emu/getroot.h: Likewise. - -2013-10-18 Vladimir Serbinenko - - * grub-core/lib/libgcrypt_wrap/cipher_wrap.h: Use define for defining - memset rather than inline static function. - -2013-10-18 Vladimir Serbinenko - - * grub-core/lib/xzembed/xz_config.h: Enable all bcj filters when - not doing embedded decompressor. - -2013-10-18 Vladimir Serbinenko - - * grub-core/disk/ldm.c: Rename variables and arguments to prevent - shadowing. - * grub-core/kern/disk.c: Likewise. - * grub-core/kern/misc.c: Likewise. - * include/grub/parser.h: Likewise. - * include/grub/script_sh.h: Likewise. - * include/grub/zfs/zfs.h: Likewise. - -2013-10-18 Vladimir Serbinenko - - * grub-core/disk/luks.c (configure_ciphers): Fix spurious warning. - -2013-10-18 Vladimir Serbinenko - - * grub-core/fs/zfs/zfs_lz4.c: Check that __INTEL_COMPILER is - defined before trying to use it. - -2013-10-18 Vladimir Serbinenko - - * grub-core/fs/affs.c (grub_affs_create_node): Fix uninited value - warning. - -2013-10-18 Vladimir Serbinenko - - * include/grub/dl.h: Remove double declaration of GRUB_MOD_DEP. - Use __unused__ rather than __used__ on gcc < 3.2. - -2013-10-18 Vladimir Serbinenko - - * include/grub/setjmp.h: Define RETURNS_TWICE. Keep it empty for - gcc < 4.0. - * include/grub/*/setjmp.h: USe RETURNS_TWICE. - -2013-10-18 Vladimir Serbinenko - - * grub-core/disk/dmraid_nvidia.c: Fix potentially uninited "layout". - -2013-10-18 Vladimir Serbinenko - - * include/grub/misc.h: Don't use warn_unused_result on gcc < 3.4. - * include/grub/emu/misc.h: Likewise. - -2013-10-18 Vladimir Serbinenko - - * grub-core/term/i386/pc/vga_text.c: Remove extra declaration of - cur_color. - -2013-10-18 Vladimir Testov - - * grub-core/tests/checksums.h: Regenerated due to progress bar - get_minimal_size changes. - -2013-10-17 BVK Chaitanya - - Added `tr' command support. - - * grub-core/commands/tr.c: New file. - * grub-core/Makefile.core.def: Build rules for new module. - - * tests/grub_cmd_tr.in: New test. - * Makefile.util.def: Build rules for new test. - -2013-10-17 Vladimir Testov - - * grub-core/gfxmenu/gui_progress_bar.c: Sanity checks added. - -2013-10-17 Vladimir Testov - - * grub-core/gfxmenu/gui_progress_bar.c: New option ``highlight_overlay`` - * docs/gurb.texi: Likewise. - -2013-10-17 Vladimir Testov - - * grub-core/gfxmenu/gui_progress_bar.c (draw_pixmap_bar): Fixed bug. - Pixmap highlighted section with east and west slices was displayed - incorrectly due to negative width of the central slice. - -2013-10-17 Vladimir Testov - - * docs/grub.texi: Graphical options information update. - Removed outdated. Updated current. Inserted missed. - -2013-10-17 Vladimir Serbinenko - - * docs/grub.texi: Mention few new platform-specific commands. - -2013-10-17 Vladimir Serbinenko - - * grub-core/script/yylex.l: Fix LSQBR2 and RSQBR2. It's not - currently used so this doesn't really have any effect. - Reported by: Douglas Ray - -2013-10-17 Vladimir Serbinenko - - * autogen.sh: Don't set LC_CTYPE as it doesn't create problem for - compilation but prevents gcc from displaying messages in non-Latin - alphabets. - * conf/Makefile.common: Likewise. - -2013-10-16 Hiroyuki YAMAMORI - - Handle Japanese special keys. - Reported by: Hiroyuki YAMAMORI. - Codes supplied by: Hiroyuki YAMAMORI. - -2013-10-16 Vladimir Testov - - * grub-core/gfxmenu/gui_list.c: Scrollbar sanity checks added. - -2013-10-16 Vladimir Testov - - * grub-core/gfxmenu/gui_list.c: New option `item_pixmap_style`. - * docs/grub.texi: Likewise. - -2013-10-16 Vladimir Serbinenko - - * grub-core/osdep/unix/hostdisk.c (grub_util_fd_read): Return correct - value in case of incomplete read. - (grub_util_fd_write): Likewise. - -2013-10-15 Vladimir Serbinenko - - * util/editenv.c (grub_util_create_envblk_file): Use grub_util_rename. - -2013-10-15 Vladimir Serbinenko - - * util/grub-editenv.c (create_envblk_file): More from here ... - * util/editenv.c (grub_util_create_envblk_file): ... to here. - -2013-10-15 Vladimir Serbinenko - - * grub-core/osdep/unix/getroot.c (grub_guess_root_devices): - canonicalize file name before doing the rest. - -2013-10-15 Vladimir Serbinenko - - * include/grub/osdep/hostfile_windows.h: Add missing ftello for - mingw32. - -2013-10-15 Vladimir Serbinenko - - Define grub_util_is_directory/regular/special_file and - use OS-dependent versions rather than to rely on stat(). - -2013-10-15 Vladimir Serbinenko - - * util/grub-mkimage.c: Move backend part to ... - * util/mkimage.c: ... here. - -2013-10-15 Vladimir Serbinenko - - Allow compilation with mingw64 albeit with warnings due to lack of - %llx/%llu. - - * grub-core/gnulib/msvc-inval.c: Use __cdecl rather than cdecl. - * grub-core/lib/posix_wrap/wchar.h: Define wint_t. - * grub-core/lib/posix_wrap/wctype.h: Define wctype_t. - * include/grub/osdep/hostfile_windows.h: Don't define fseeko/ftello - on mingw64. - * include/grub/types.h: Allow sizeof (long) != sizeof (void *). - -2013-10-15 Vladimir Serbinenko - - Remove leftover references to some of the system headers. - -2013-10-15 Vladimir Serbinenko - - * grub-core/disk/geli.c (grub_util_get_geli_uuid): Close handle after - read. - -2013-10-15 Vladimir Serbinenko - - * grub-core/disk/cryptodisk.c: Use grub_util_fd_strerror instead - of strerror. - -2013-10-15 Vladimir Serbinenko - - Split out blocklist retrieving from setup.c to - grub-core/osdep/blocklist.c and add windows implementation since - generic version doesn't work on NTFS on Windows due to aggressive - unflushable cache. - -2013-10-15 Vladimir Serbinenko - - Split grub-setup.c into frontend (grub-setup.c) and backend (setup.c) - files. - -2013-10-15 Vladimir Serbinenko - - * grub-core/osdep/windows/hostdisk.c (grub_util_fd_strerror): - Cut tailing newline. Remove arbitrary limitation. Always use - grub_util_tchar_to_utf8. - -2013-10-15 Vladimir Serbinenko - - * grub-core/kern/misc.c (grub_vsnprintf_real): Handle %% properly. - * tests/printf_unit_test.c (printf_test): Add %% tests. - Reported by: Paulo Flabiano Smorigo. - -2013-10-15 Vladimir Serbinenko - - * grub-core/osdep/windows/hostdisk.c (fsync) [__MINGW32__]: Really - implement fsync. - -2013-10-15 Vladimir Serbinenko - - * configure.ac: Check for nvlist_lookup_string in nvpair since we - use nvlist_lookup_string and don't use nvlist_print. - -2013-10-15 Vladimir Serbinenko - - Add wrappers around rename, unlink, mkdir, opendir, readdir and - closedir to handle filename charset translation. - -2013-10-15 Vladimir Serbinenko - - * include/grub/emu/hostdisk.h: Move file operations to - * include/grub/emu/hostfile.h: ... here. - -2013-10-15 Vladimir Serbinenko - - * grub-core/osdep/windows/hostdisk.c (canonicalize_file_name): Handle - unicode path. - -2013-10-15 Vladimir Serbinenko - - * grub-core/tests/checksums.h: Regenerate due to swiss.sed change. - -2013-10-15 Vladimir Serbinenko - - Move cpu time retrieval to separate grub_util_get_cpu_time_ms - and remove export.h. - -2013-10-15 Vladimir Serbinenko - - * grub-core/kern/emu/error.c: Removed. - * grub-core/Makefile.core.def (kernel): Don't add error.c and progname.c - explicitly as it's already in libgnu.a. - -2013-10-15 Vladimir Serbinenko - - * grub-core/osdep/windows/emuconsole.c: Add missing config.h and - config-util.h include. - -2013-10-15 Vladimir Serbinenko - - Split emunet into platform-dependent and GRUB-binding parts. Keep - platform-dependent part in kernel for easy access to OS functions. - -2013-10-15 Vladimir Serbinenko - - * grub-core/tests/video_checksum.c: Use grub_util_fd_* rather than - open/read/write. - -2013-10-14 Vladimir Serbinenko - - * grub-core/osdep/windows/emuconsole.c: New file. - -2013-10-14 Andrey Borzenkov - - * conf/Makefile.extra-dist: Add osdep/*/init.c - -2013-10-14 Vladimir Serbinenko - - * Makefile.am: Use TARGET_OBJCOPY when doing objcopy for target. - -2013-10-14 Vladimir Serbinenko - - * util/grub-probe.c (probe): Separate different drives in hint-str - by spaces and not newlines. - * util/grub-mkconfig_lib.in: Handle multidevice filesystem. - -2013-10-14 Andrey Borzenkov - - * grub-core/disk/efi/efidisk.c (grub_efidisk_get_device_name): - Handle CD-ROMs. - -2013-10-14 Vladimir Serbinenko - - Pass-through unknown E820 types. It required reorganisation of mmap - module. - -2013-10-14 Andrey Borzenkov - - * Makefile.util.def: Add osdep/init.c to grub-mount files. - -2013-10-14 Vladimir Serbinenko - - Make grub_util_fd_seek match behaviour of other grub_util_fd_* and - fseeko. - -2013-10-14 qwertial - - * grub-core/gdb_grub.in: Fix overflow and wrong field. - -2013-10-14 Jon McCune - - * docs/grub.texi: Document new signatures possibility. - -2013-10-14 Vladimir Serbinenko - - Define GRUB_UTIL_FD_O_* and always use them with grub_util_fd_open. - -2013-10-14 Vladimir Serbinenko - - * include/grub/osdep/hostfile_windows.h (grub_util_utf8_to_tchar): Add - missing prototype. - (grub_util_tchar_to_utf8): Likewise. - -2013-10-14 Vladimir Serbinenko - - * grub-core/Makefile.core.def: Add osdep/init.c on emu. - * grub-core/kern/emu/main.c: Add missing include. - * grub-core/osdep/basic/init.c (grub_util_host_init) [!GRUB_UTIL]: - Don't call grub_util_init_nls. - * grub-core/osdep/windows/init.c (grub_util_host_init) [!GRUB_UTIL]: - Likewise. - -2013-10-13 Vladimir Serbinenko - - * util/misc.c (grub_util_get_image_size): Use FILE functions rather than - stat. - -2013-10-13 Vladimir Serbinenko - - * util/grub-editenv.c: Remove leftover set_program_name and init_nls. - -2013-10-13 Vladimir Serbinenko - - * include/grub/misc.h: Use gnu_printf only on gcc 4.4 or later. - -2013-10-13 Vladimir Serbinenko - - Add a wrapper for fopen. On unix-like systems just pass-through. On - windows use unicode version. - -2013-10-13 Vladimir Serbinenko - - Move set_program_name and init_nls to host_init. On windows - fix in this fuction console and argument charset as well. - -2013-10-12 Andrey Borzenkov - - Fix inconsistent use of GRUB_CRYPTODISK_ENABLE and - GRUB_ENABLE_CRYPTODISK. - - * util/grub-install.in: Rename all GRUB_CRYPTODISK_ENABLE to - GRUB_ENABLE_CRYPTODISK. - * util/grub-mkconfig_lib.in: Likewise. - -2013-10-12 Christian Cier-Zniewski - - * docs/grub.texi (Vendor power-on keys): Add Dell Latitude E4300. - -2013-10-12 Melki Christian - - * grub-core/term/at_keyboard.c [DEBUG_AT_KEYBOARD]: Fix compilation - error when enabling debug. - -2013-10-12 Ilya Bakulin - - * configure.ac: Use -melf_*_obsd on openbsd. - -2013-10-12 Vladimir Serbinenko - - * grub-core/kern/arm/dl_helper.c: Use more proper %p for pointer. - -2013-10-12 Vladimir Serbinenko - - * include/grub/misc.h: Use gnu_printf rather than printf as format - template since our functions are independent of libc. - -2013-10-11 Vladimir Serbinenko - - * util/grub-setup.c (setup): Move copying of partition table as - futher up as possible to avoid possible overwrite by floppy routines. - -2013-10-11 Vladimir Serbinenko - - * grub-core/fs/fat.c: Fix handling of exfat contiguous files. - -2013-10-10 Vladimir Testov - - * grub-core/gfxmenu/gui_list.c: New option `scrollbar_thumb_overlay`. - * docs/grub.texi: Likewise. - -2013-10-10 Vladimir Serbinenko - - * util/getroot.c (make_device_name): Remove dos_part and bsd_part as - it's mostly unused. Move vestiges to the callers. - -2013-10-10 Vladimir Serbinenko - - * util/grub-mkpasswd-pbkdf2.c: Remove temporary buffers for hex - version of salt and hash. Use grub_snprintf rather than snprintf. - -2013-10-10 Vladimir Serbinenko - - * docs/grub.texi: Fix problem with braces. - -2013-10-10 Vladimir Serbinenko - - * conf/Makefile.extra-dist: Fix extra-dist list. - * grub-core/Makefile.core.def: Likewise. - -2013-10-10 Vladimir Serbinenko - - * docs/grub.texi: Document disk names used on Windows and AROS. - -2013-10-10 Vladimir Serbinenko - - * grub-core/osdep/aros/getroot.c: Change to //: prefix as discussed - with AROS devs. - * grub-core/osdep/aros/hostdisk.c: Likewise. - -2013-10-10 Vladimir Serbinenko - - Avoid including hostfile.h when not necessarry as it pulls - in OS-specific headers which may redefine generic names - like "far". - -2013-10-09 Vladimir Testov - - * grub-core/gfxmenu/gui_list.c: New options for scrollbar padding: - scrollbar_left_pad, scrollbar_right_pad, scrollbar_top_pad, - scrollbar_bottom_pad - * docs/grub.texi: Likewise. - -2013-10-09 Vladimir Testov - - * grub-core/gfxmenu/gui_list.c (list_destroy): Fixed memory leak. - -2013-10-09 Vladimir Serbinenko - - Move OS-dependent file definitions to include/grub/osdep/hostfile*.h. - -2013-10-09 Vladimir Serbinenko - - * include/grub/emu/hostdisk.h (grub_hostdisk_linux_find_partition): - Removed. - * grub-core/osdep/linux/hostdisk.c (grub_hostdisk_linux_find_partition): - Made static. - -2013-10-09 Vladimir Serbinenko - - * include/grub/emu/getroot.h (grub_util_find_hurd_root_device): Remove - leftover. - -2013-10-09 Vladimir Serbinenko - - Move OS-specific driver configuration to grub_util_fd_open. This - moves OS-dependent parts from kern/emu/hostdisk.c to - grub-core/osdep/*/hostdisk.c. - -2013-10-09 Vladimir Serbinenko - - * util/grub-mkimage.c (generate_image): Use size_t instead of - grub_size_t. - * util/grub-mkimagexx.c (locate_sections): Likewise. - (load_image): Likewise. - -2013-10-09 Vladimir Serbinenko - - * util/misc.c (grub_util_write_image_at): Don't use PRIxGRUB_SIZE for - size_t. - (grub_util_write_image): Likewise. - -2013-10-08 Vladimir Serbinenko - - * grub-core/osdep/basic/random.c: New file. Abort on an attempt to - get random when no RNG is available. - * grub-core/osdep/random.c: Use basic/random.c on OS out of whitelist. - -2013-10-08 Vladimir Serbinenko - - * include/grub/util/lvm.h: Removed. - -2013-10-08 Vladimir Serbinenko - - * grub-core/kern/emu/misc.c (fsync) [__MINGW32__]: Move to ... - * grub-core/osdep/windows/hostdisk.c (fsync) [__MINGW32__]: ... here. - -2013-10-08 Vladimir Serbinenko - - * grub-core/osdep/windows/sleep.c: Add missing config.h. - -2013-10-08 Vladimir Serbinenko - - * grub-core/kern/emu/misc.c (grub_get_rtc): Remove (it's a leftover). - -2013-10-08 Vladimir Serbinenko - - * grub-core/net/drivers/emu/emunet.c: Move to .. - * grub-core/osdep/linux/emunet.c: ..here. - -2013-10-08 Vladimir Serbinenko - - * util/ieee1275/ofpath.c: Move to ... - * grub-core/osdep/linux/ofpath.c: ..here, split stub into ... - * grub-core/osdep/basic/ofpath.c: ..here. - -2013-10-08 Vladimir Serbinenko - - Move password-querying (util-version) routines to grub-core/osdep. - -2013-10-08 Vladimir Serbinenko - - Move sleep routines to grub-core/osdep. - -2013-10-08 Vladimir Serbinenko - - Move OS-dependent files to grub-core/osdep and document it. - -2013-10-08 Vladimir Serbinenko - - * grub-core/kern/emu/misc.c (canonicalize_file_name): Move to ... - * grub-core/kern/emu/hostdisk_*.c (canonicalize_file_name): ... here. - -2013-10-08 Vladimir Serbinenko - - * grub-core/kern/arm/misc.S: Remove leftover ARM and THUMB. - -2013-10-08 Vladimir Serbinenko - - * util/misc.c: Remove leftover inclusion of malloc.h. - -2013-10-08 Vladimir Serbinenko - - * include/grub/setjmp.h: Remove leftover GRUBOF. - -2013-10-08 Vladimir Serbinenko - - * util/raid.c: Fold into ... - * util/getroot_linux.c: ... here. Make all functions static. - -2013-10-08 Vladimir Serbinenko - - * grub-core/fs/zfs/zfs_lz4.c: Switch from ad-hoc endiannes and width - macros to GRUB ones. - -2013-10-08 Vladimir Testov - - * grub-core/gfxmenu/gui_list.c (draw_scrollbar): Fixed rare - occasional bug. If there are too many boot entries or too low - scrollbar height then we need to use another formula to calculate - the position and size of the scrollbar thumb. - -2013-10-08 Vladimir Serbinenko - - * util/random_unix.c: Add NetBSD, Solaris and Mac OS X to verified list. - -2013-10-08 Vladimir Testov - - * grub-core/gfxmenu/gui_list.c: New option `scrollbar-slice`. - * docs/grub.texi: Likewise. - -2013-10-08 Vladimir Testov - - * grub-core/gfxmenu/gui_list.c: Draw the scrollbar in a separate - viewport. - -2013-10-08 Vladimir Testov - - * grub-core/gfxmenu/gui_list.c (list_get_minimal_size): Corrected - minimal width calculations. - -2013-10-07 Vladimir Serbinenko - - * docs/grub.texi: Update note on colors on emu console. - -2013-10-07 Vladimir Serbinenko - - * grub-core/fs/ufs.c (grub_ufs_get_file_block): Give GRUB_ERR_BAD_FS - for quadruple indirect rather than GRUB_ERR_NOT_IMPLEMENTED_YET as - it's FS and not GRUB limitation. - -2013-10-07 Vladimir Serbinenko - - * grub-core/kern/arm/efi/startup.S: Remove thumb leftover. - -2013-10-07 Vladimir Serbinenko - - * grub-core/kern/arm/efi/init.c: Rewrite timer fucntion. - -2013-10-04 Samuel Thibault - - * util/grub.d/10_hurd.in: Use `version_find_latest` to sort gnumach - kernels by version order. - -2013-10-04 Vladimir Serbinenko - - * util/random_unix.c: Add kFreeBSD to the list of secure RNG. - -2013-10-04 Vladimir Serbinenko - - Add AROS hostdisk and getroot routines. - -2013-10-04 Vladimir Serbinenko - - Make cryptodisk and diskfilter probe data retrievable programmatically - and not just printable. - -2013-10-04 Vladimir Serbinenko - - Split random retrieving code into separate files. - -2013-10-03 Vladimir Serbinenko - - * grub-core/kern/arm/dl.c (do_relocations): Accept and ignore - R_ARM_V4BX. - -2013-10-03 Vladimir Serbinenko - - * grub-core/tests/video_checksum.c: Increase robustness to out of memory - condition. - * grub-core/tests/fake_input.c: Likewise. - * grub-core/tests/cmdline_cat_test.c: Likewise. - -2013-10-03 Vladimir Serbinenko - - * grub-core/video/capture.c: Do not do finalization when .fini - is called as there is explicit capture_end. - -2013-10-03 Vladimir Serbinenko - - * grub-core/term/gfxterm.c: Add flag "functional" to skip input when - changing windows to avoid crash. - -2013-10-03 Vladimir Serbinenko - - * grub-core/kern/arm/cache.c: Add v5 write-through cache support. - -2013-10-03 Vladimir Serbinenko - - * po/exclude.pot: Add several strings to exclude. - -2013-10-03 Vladimir Serbinenko - - * tests/gettext_strings_test.in: Add getroot_*.c to exclude list. - -2013-10-03 Vladimir Serbinenko - - * autogen.sh: Add ./util/grub-gen-widthspec.c and - ./util/grub-gen-asciih.c to exclude list. - -2013-10-03 Vladimir Serbinenko - - * grub-core/gfxmenu/theme_loader.c (theme_set_string): Fix memory leak - and don't mark error strings for translation. - -2013-10-03 Vladimir Serbinenko - - * grub-core/disk/uboot/ubootdisk.c (uboot_disk_open): Use grub_error - properly in case of missing block size. - -2013-10-03 Vladimir Serbinenko - - * grub-core/lib/arm/setjmp.S: Add missing license section. - -2013-10-03 Vladimir Serbinenko - - * po/swiss.sed: Add replacement for key names and for term computer. - -2013-10-02 Vladimir Testov - - * grub-core/gfxmenu/theme_loader.c: New global options for the - theme background image handling. desktop-image-scale-method, - desktop-image-h-align, desktop-image-v-align. - * grub-core/gfxmenu/view.c: Likewise. - * include/gfxmenu_view.h: Likewise. - * include/bitmap_scale.h: Proportional scale functions introduced. - * grub-core/video/bitmap_scale.c: Likewise. Verification checks are - put in a separate functions. GRUB_ERR_BUG is set for grub_error in - cases of unexpected input variables for scale functions. - * docs/grub.texi: Updated documentation for new options. - -2013-10-02 Vladimir Serbinenko - - * grub-core/video/readers/png.c: Support narrow (4-/2-/1-bpp) PNG. - -2013-10-01 Vladimir Testov - - * grub-core/tests/checksums.h: Corrected due to changes in - bilinear interpolation function. - -2013-10-01 Vladimir Testov - - * grub-core/video/bitmap_scale.c (scale_bilinear): Increased precision - to eliminate artefacts in bilinear interpolation. - -2013-09-28 Vladimir Serbinenko - - * grub-core/video/readers/tga.c: Support paletted tga. - -2013-09-28 Vladimir Serbinenko - - * grub-core/video/readers/jpeg.c (grub_jpeg_decode_data): Remove - incorrect cbcr setting when in color mode. - -2013-09-28 Vladimir Serbinenko - - * grub-core/video/readers/png.c: Support paletted images and clean up - greyscale support. - -2013-09-28 Vladimir Serbinenko - - * grub-core/term/terminfo.c (grub_terminfo_readkey): Fix - usage of wrong table which resulted in mishandling of 4-byte - sequences. - -2013-09-28 Vladimir Serbinenko - - * grub-core/term/terminfo.c: Add Home and End key sequences. - -2013-09-27 Vladimir Serbinenko - - * grub-core/video/readers/png.c (grub_png_decode_image_header): - Fix formula for computing total number of bytes. - -2013-09-27 Vladimir Serbinenko - - * grub-core/video/readers/tga.c: Reorganize to separate RLE and - image processing, fix big-endian and support grayscale. - -2013-09-27 Vladimir Serbinenko - - * grub-core/video/fb/video_fb.c (grub_video_fb_create_render_target): - Correctly will with maximum transparency when using index color. - -2013-09-27 Vladimir Serbinenko - - * grub-core/video/readers/png.c: Support grayscale - -2013-09-27 Vladimir Serbinenko - - * grub-core/video/readers/jpeg.c: Support grayscale. - -2013-09-26 Jon McCune - - * grub-core/commands/loadenv.c: Support skipping signature check - and variable names filtering. - -2013-09-24 Vladimir Serbinenko - - * grub-core/kern/emu/hostdisk_unix.c: Declare AROS as non-unix. - * grub-core/kern/emu/hostfs.c: Likewise. - * util/getroot_unix.c: Likewise. - -2013-09-24 Vladimir Serbinenko - - * include/grub/emu/hostdisk.h (GRUB_FD_STAT_IS_FUNTIONAL): New define. - Migrate all explicit defines to this new one. - -2013-09-24 Vladimir Serbinenko - - * grub-core/kern/emu/hostdisk.c (grub_util_biosdisk_open): Use - grub_util_fd_strerror when using grub_util_fd_*. - (grub_util_fd_open_device): Likewise. - (grub_util_biosdisk_read): Likewise. - (grub_util_biosdisk_write): Likewise. - * grub-core/kern/emu/hostdisk_unix.c (grub_util_fd_open): New function. - (grub_util_fd_strerror): Likewise. - (grub_util_fd_sync): Likewise. - (grub_util_fd_close): Likewise. - * grub-core/kern/emu/hostdisk_windows.c (grub_util_fd_sync): Likewise. - (grub_util_fd_close): Likewise. - (grub_util_fd_strerror): Likewise. - * include/grub/emu/hostdisk.h (grub_util_fd_close): Make into real - function proto rather than macro. - (grub_util_fd_sync): Likewise. - (grub_util_fd_open): Likewise. - (grub_util_fd_strerror): New proto. - -2013-09-24 Vladimir Serbinenko - - * util/getroot.c (grub_util_biosdisk_is_present): Don't do stat on - platforms on which it doesn't work. - -2013-09-24 Vladimir Serbinenko - - * grub-core/kern/emu/hostdisk.c (grub_util_biosdisk_open): Move struct - stat immediately to where it's used. - -2013-09-24 Vladimir Serbinenko - - * util/getroot.c (grub_util_check_block_device): Move to ... - * util/getroot_unix.c (grub_util_check_block_device): ... here. - * util/getroot.c (grub_util_check_char_device): Move to ... - * util/getroot_unix.c (grub_util_check_char_device): ... here. - -2013-09-24 Vladimir Serbinenko - - * grub-core/kern/emu/hostdisk.c (grub_util_biosdisk_close): Fix - disk closing logic. - -2013-09-24 Andrey Borzenkov - - * docs/grub.texi (Simple configuration): Document GRUB_ENABLE_CRYPTODISK. - -2013-09-24 Andrey Borzenkov - - * docs/grub.texi (File name syntax): Document ZFS filenames - (/volume@snapshot/...). - -2013-09-23 Vladimir Serbinenko - - * grub-core/kern/emu/hostdisk_windows.c (grub_util_get_windows_path): - Always return full path. Fixes a problem with mkrelpath. - -2013-09-23 Paulo Flabiano Smorigo - - * util/grub-install.in: Add GPT PReP support. - * util/grub-probe.c (probe): Support GPT partition type. - (main): Support -t gpt_parttype. - -2013-09-23 AleÅ¡ Nesrsta - - * grub-core/bus/usb/ehci.c: SMI disabled in all cases - -2013-09-23 Massimo Maggi - - * grub-core/fs/zfs/zfs.c (check_pool_label): Check nvlist. - -2013-09-23 Tim Hardeck - - * util/grub.d/10_hurd.in: Filter out character for the class. - * util/grub.d/10_kfreebsd.in: Likewise. - * util/grub.d/10_linux.in: Likewise. - * util/grub.d/20_linux_xen.in: Likewise. - -2013-09-23 Melki Christian - - * grub-core/bus/usb/usbhub.c (poll_nonroot_hub): Fix the type of - "changed". - -2013-09-23 Josh Triplett - - * grub-core/boot/i386/pc/lnxboot.S: Re-add support for recording the - boot partition. - -2013-09-23 Vladimir Serbinenko - - * Makefile.util.def (libgrubmods.a): Remove CFLAGS_POSIX as this lib - doesn't use posix_wrap. Keep literal -fno-builtin however. - -2013-09-23 Vladimir Serbinenko - - * conf/Makefile.common (CPPFLAGS_LIBFDT): Remove leftover. - -2013-09-23 Vladimir Serbinenko -2013-09-23 neil - - * configure.ac: Do not enable -Wmissing-noreturn as its - usefulness is limited and creates problems on some OS notably with - code generated by bison. - -2013-09-23 Vladimir Serbinenko -2013-09-23 neil - - * configure.ac: Do not explicitly enable -Waddress as it's not - supported by all gcc and when it is, it's already enabled by -Wall. - -2013-09-23 Vladimir Serbinenko - - * grub-core/video/efi_gop.c (grub_video_gop_setup): Fix a typo which - desactivated use of EDID at all. - -2013-09-23 Vladimir Serbinenko -2013-09-23 neil - - * grub-core/loader/multiboot.c (grub_multiboot_set_console): Always use - video if no text is available. - -2013-09-23 Vladimir Serbinenko -2013-09-23 neil - - * configure.ac: Substitute TARGET_RANLIB. - -2013-09-23 Vladimir Serbinenko -2013-09-23 neil - - * grub-core/genmod.sh.in: Remove ./ from TARGET_OBJ2ELF. Add quotes. - - Based on patches from AROS. - -2013-09-23 Vladimir Serbinenko -2013-09-23 neil - - * grub-core/Makefile.am: Override STRIP and RANLIB. - * configure.ac: compute TARGET_RANLIB. - * INSTALL: Document TARGET_RANLIB - - Based on patches from AROS. - -2013-09-23 Vladimir Serbinenko - - * util/getroot.c (grub_util_biosdisk_get_grub_dev): Do not assume - that floppies are unpartitioned. - -2013-09-23 Vladimir Serbinenko - - * util/getroot_unix.c [__MINGW32__ || __CYGWIN__]: - Define dummy grub_util_pull_lvm_by_command to decrease number of #if's. - -2013-09-23 Vladimir Serbinenko - - * grub-core/lib/posix_wrap/sys/types.h: Use OpenBSD approach: it's - less nice but more portable. - * grub-core/lib/posix_wrap/wchar.h: Likewise. - -2013-09-23 Vladimir Serbinenko - - * include/grub/cryptodisk.h (grub_cryptodisk): Use grub_util_fd_t - for cheat_fd. - * grub-core/disk/cryptodisk.c (grub_cryptodisk_open): Use grub_util_* - functions. - (grub_cryptodisk_cheat_insert): Likewise. - (grub_cryptodisk_close): Likewise. - -2013-09-23 Vladimir Serbinenko - - * include/grub/emu/misc.h: Remove leftover cygwin definitions. - Use windows path for DEFAULT_DIRECTORY. - -2013-09-23 Vladimir Serbinenko - - * include/grub/i386/setjmp.h: Remove useless #if MINGW where original - difference was likely just gcc version, not anything mingw-related. - -2013-09-23 Vladimir Serbinenko - - Use Winapi on both cygwin and mingw32 to share more code between both. - -2013-09-22 Andrey Borzenkov - - * util/grub-install.in: Add --grub-editenv option. - * util/grub-install_header (grub_compress_file): Explicitly check for - plain file to avoid cp error. - -2013-09-22 Andrey Borzenkov - - * docs/grub.texi (Device syntax): Document new LVM UUID based device - names; fix LVM driver name (lvm, not lv). - * util/grub-probe.c (probe_abstraction): Support lvmid/xxx device - names. - -2013-09-22 Vladimir Serbinenko - - * grub-core/kern/emu/hostdisk.c: Disentagle into a series of OS-specific - files rather than one file with loads of #if's. - * util/getroot.c: Likewise. - -2013-09-22 Vladimir Serbinenko - - * grub-core/lib/posix_wrap/sys/types.h: Use stddef on *BSD. - -2013-09-22 Vladimir Serbinenko - - * util/grub-mkpasswd-pbkdf2.c (grub_get_random): Add windows and - GNU/Hurd to the list of checked PRNG. - -2013-09-22 Vladimir Serbinenko - - * configure.ac: On FreeBSD use -melf_*_fbsd format. - -2013-09-21 Ales Nesrsta - - * grub-core/bus/usb/ehci.c: Corrected EHCI QH handling (async./sync.) - -2013-09-20 Vladimir Serbinenko - - * grub-core/disk/diskfilter.c: Handle non-md UUIDs. - * grub-core/disk/lvm.c: Add LVM UUIDs. - * util/getroot.c: Use LVM UUIDs whenever possible. - -2013-09-19 Andrey Borzenkov - - * docs/grub.texi (Networking commands): Add documentation for - network related commands. - -2013-09-19 Vladimir Serbinenko - - * util/getroot.c (grub_util_open_dm): Check major rather than the name - to determine if device is handled by devmapper. - (convert_system_partition_to_system_disk): Likewise. - (get_dm_uuid): Don't check explicitly if device is mapped, it's - already done in grub_util_open_dm. - -2013-09-19 Leif Lindholm - - * kern/arm/cache.S: Correct access to ilinesz/dlinesz variables. - Clean up stack manipulation (sync_caches_armv*) - -2013-09-19 Vladimir Serbinenko - - * util/lvm.c: Remove since unused. Remove remaining references. - -2013-09-19 Vladimir Serbinenko - - Handle the case of partitioned LVM properly. - - * grub-core/kern/emu/hostdisk.c (grub_util_get_dm_node_linear_info): - Stop on meeting LVM, mpath or DMRAID. - (grub_hostdisk_os_dev_to_grub_drive): Canonicalize os device. - (read_device_map): Likewise. - * util/getroot.c (convert_system_partition_to_system_disk): Assume that - device is full disk rather than erroring out on LVM and similar cases. - -2013-09-18 Vladimir Serbinenko - - * util/grub-mkconfig_lib.in: Keep supplied pkgdatadir if any. - -2013-09-18 Vladimir Serbinenko - - * grub-core/kern/mm.c (grub_mm_init_region): Skip regions less than - 4K before the end. - Reported by: Leif Lindholm - -2013-09-18 Pawel Wojtalczyk -2013-09-18 Vladimir Serbinenko - - * grub-core/term/efi/console.c (grub_console_getkey): Accept VT100-style - codes. - -2013-09-18 Colin Watson - - * grub-core/disk/efi/efidisk.c (grub_efidisk_get_device_name_iter): - Remove no-longer-true __attribute__ ((unused)) on disk parameter. - -2013-09-18 Douglas Ray - - * util/grub-mkpasswd-pbkdf2.c (grub_get_random): Declare OpenBSD PRNG - as secure. - -2013-09-18 AleÅ¡ Nesrsta - - * docs/grub.texi: Fix broken link. - -2013-09-18 Melki Christian - - * grub-core/bus/usb/usb.c (grub_usb_device_initialize): Add condition - to break endless loop. - -2013-08-23 Vladimir Serbinenko - - * util/grub-fstest.c: Fix several printf formats. - * util/grub-mkimage.c: Likewise. - * util/grub-mkimagexx.c: Likewise. - * util/grub-script-check.c: Likewise. - -2013-08-23 Vladimir Serbinenko - - * grub-core/lib/xzembed/xz_dec_lzma2.c: Make -Wattributes not cause - error. - -2013-08-23 Vladimir Serbinenko - - * config.h.in [GRUB_BUILD]: Explicitly undefine ENABLE_NLS. - -2013-08-23 Vladimir Serbinenko - - * util/getroot.c (grub_find_device): Use cygwin_conv_path ratherthan - removed in current versions cygwin_conv_*. - -2013-08-23 Vladimir Serbinenko - - * configure.ac: Disable efiemu runtime on cygwin. - -2013-08-23 Vladimir Serbinenko - - * conf/Makefile.extra-dist: Add missing util/grub-gen-asciih.c, - util/grub-gen-widthspec.c and util/grub-pe2elf.c. - -2013-08-22 Vladimir Serbinenko - - * util/grub-mkpasswd-pbkdf2.c (grub_password_get): Remove extraneous - error message. - -2013-08-22 Vladimir Serbinenko - - * grub-core/lib/crypto.c (grub_password_get) [GRUB_UTIL]: Add - windows variant. - * util/grub-mkpasswd-pbkdf2.c: Add windows flavour for retrieving random - data. - -2013-08-22 Vladimir Serbinenko - - * configure.ac: Add -Wl,-melf_i386 and -Wl,-melf_x86_64 systematically - when on x86 and not cygwin. - * conf/Makefile.common: Remove unsystematic -Wl,-melf_i386 and - -Wl,-melf_x86_64. - -2013-08-22 Vladimir Serbinenko - - * configure.ac: Set CPP to build one when checkoing for freetype for - build. - -2013-08-22 Vladimir Serbinenko - - * util/grub-mkfont.c [!GRUB_BUILD]: Define my_argp_state. - [!GRUB_BUILD]: Remove has_argument. - -2013-08-22 Vladimir Serbinenko - - * util/ieee1275/ofpath.c (grub_util_devname_to_ofpath) [_WIN32]: - Replace with a dummy. - -2013-08-22 Vladimir Serbinenko - - * configure.ac: Don't change host_os from mingw to cygwin. - -2013-08-22 Vladimir Serbinenko - - * configure.ac: Change target_os from windows to cygwin. - -2013-08-22 Vladimir Serbinenko - - Handle grub-pe2elf and grub-mkfont for cases when build != host. - - * Makefile.am (build-grub-mkfont): Don't include gnulib. - (build-grub-gen-asciih): Likewise. - (build-grub-gen-widthspec): Likewise. - * Makefile.util.def (grub-pe2elf): Remove. - * config.h.in [GRUB_BUILD]: Use build rather than host constants. - * configure.ac: Separate tests for build. - Move ./build-grub-pe2elf to grub-core. - Fix typo. - * grub-core/Makefile.am (build-grub-pe2elf): New target. - * grub-core/kern/emu/misc.c (xasprintf): Don't compile if GRUB_BUILD is - defined. - * include/grub/types.h [GRUB_BUILD]: Use build rather than host - constants. - * util/grub-mkfont.c [GRUB_BUILD]: Simplify not to rely on argp. - * util/grub-pe2elf.c: Simplify not to rely on getopt. - * util/misc.c (program_name) [GRUB_BUILD]: Define to static string. - -2013-08-22 Vladimir Serbinenko - - * grub-core/kern/emu/hostdisk.c (grub_util_get_fd_size): Adapt for - mingw32 as well based on grub_util_get_disk_size. - * util/misc.c (grub_util_get_disk_size): Removed. all users switched to - grub_util_get_fd_size. - (sync): Removed. - (fsync): Moved to ... - * grub-core/kern/emu/misc.c (fsync): ... here. - -2013-08-22 Vladimir Serbinenko - - * include/grub/mm.h (grub_extend_alloc): Remove. - * grub-core/loader/i386/pc/plan9.c: Use own version of - grub_extend_alloc with appropriate types. - -2013-08-22 Vladimir Serbinenko - - * conf/Makefile.common (CFLAGS_GCRY): Add -Wno-redundant-decls. - -2013-08-22 Vladimir Serbinenko - - * util/getroot.c: Include sys/wait.h only when we need waitpid. - -2013-08-22 Vladimir Serbinenko - - Fix dependencies on cygwin. - - * gentpl.py: Support variable dependencies. Add $TARGET_OBJ2ELF to - dependencies when used and defined. - * grub-core/Makefile.core.def (regexp): Add dependency on libgnulib.a. - -2013-08-22 Vladimir Serbinenko - - * include/grub/zfs/spa.h (zio_cksum): Add explicit members for mac. - * grub-core/fs/zfs/zfs.c (zio_read): Don't use casts to retrieve mac. - -2013-08-22 Vladimir Serbinenko - - * grub-core/kern/emu/mm.c (grub_memalign): Don't define if there is no - implementation available to cause compile-time rather than runtime - error. - -2013-08-22 Vladimir Serbinenko - - * util/grub-fstest.c: Don't check for symlinks on windows. - -2013-08-22 Vladimir Serbinenko - - * INSTALL: Mention unavailability of man pages when cross-compiling. - -2013-08-22 Vladimir Serbinenko - - * include/grub/crypto.h: Don't declare gcry_log_bug, gcry_log_printf - and gcry_log_bug. - * grub-core/lib/libgcrypt_wrap/mem.c: Include g10lib.h - -2013-08-21 Vladimir Serbinenko - - * INSTALL: Document cross-compilation. - * acinclude.m4: Determine whether nm support -P and --defined-only. - * configure.ac: Add TARGET_ to all variables pertaining to target - that don't have it yet. - * gentpl.py: Likewise. - * grub-core/Makefile.am: Likewise. - * grub-core/genmod.sh.in: Likewise. - * grub-core/gensyminfo.sh.in: Handle OpenBSD and other non-GNU nm - as well. - -2013-08-21 Ilya Bakulin - - * configure.ac: Remove -Wempty-body. It's not essential and needs - recent gcc. - -2013-08-21 Ilya Bakulin - - * grub-core/kern/emu/hostdisk.c: Add conditionals for OpenBSD. - * util/getroot.c: Likewise. - -2013-08-21 Vladimir Serbinenko - - * grub-core/disk/ahci.c: Add needed explicit cast. - * grub-core/lib/backtrace.c: Likewise. - * grub-core/net/ip.c: Likewise. - * grub-core/net/tcp.c: Likewise. - * grub-core/net/udp.c: Likewise. - -2013-08-21 Vladimir Serbinenko - - * grub-core/lib/posix_wrap/wchar.h: Fix typo. - -2013-08-21 Vladimir Serbinenko - - * util/import_gcry.py: Add final newline in visibility.h. - -2013-08-21 Vladimir Serbinenko - - * conf/Makefile.common: Fix typo. - -2013-08-21 Vladimir Serbinenko - - * Makefile.util.def (grub-mkfont): Add missing libgnu.a. - -2013-08-21 Vladimir Serbinenko - - * Makefile.am (widthspec.h): Fix typo. - * util/grub-gen-widthspec.c: Likewise. - -2013-08-21 Vladimir Serbinenko - - Move ascii.h and widthspec.h generation to a separate build-time-only - tool. - -2013-08-16 Grégoire Sutre - - * grub-core/loader/i386/bsd.c (grub_netbsd_add_boot_disk_and_wedge): - Always fill bootdisk info and improve check for NetBSD disklabel. - -2013-08-16 Vladimir Serbinenko - - * conf/Makefile.extra-dist: Add util/bin2h.c. - Reported by: floppym. - -2013-08-16 Vladimir Serbinenko - - * configure.ac: Make unifont mandatory for powerpc-ieee1275. - -2013-08-16 Vladimir Serbinenko - - * configure.ac: Disable unifont and starfield if no freetype was found. - -2013-08-16 Vladimir Serbinenko - - * grub-core/lib/posix_wrap/wchar.h: Fix wchar_t and mbstate_t conflict - on NetBSD and OpenBSD. - -2013-08-15 Vladimir Testov - - * grub-core/gfxmenu/gui_list.c: Baseline misplacement fixed. - -2013-08-15 Vladimir Testov - - * grub-core/gfxmenu/gui_list.c: The number of color mappings is - reduced. Inheritant options are processed during the theme loading. - -2013-08-15 Vladimir Testov - - * grub-core/gfxmenu/gui_list.c: Minimal width fixed. - -2013-08-14 Avik Sil - - * grub-core/net/tftp.c: Send tftp ack packet before closing the socket. - -2013-08-14 Avik Sil - - * grub-core/net/drivers/ieee1275/ofnet.c: Get proper mac address when - using qemu. - -2013-08-14 Paulo Flabiano Smorigo - - * .bzrignore: Add bootinfo.txt, grub.chrp, gnulib/float.h, and - remove-potcdate.sed. - -2013-08-14 Andrey Borzenkov - - * grub-core/disk/i386/pc/biosdisk.c (grub_biosdisk_iterate): Remove - unused attribute from pull argument. - -2013-08-14 Andrey Borzenkov - - * util/getroot.c (grub_util_is_imsm): Fix descriptor and - memory leak. - -2013-08-14 Andrey Borzenkov - - * util/getroot.c (pull_lvm_by_command): add --separator option - to vgs call to disable padding of output to 10 characters. - -2013-08-14 Vladimir Serbinenko - - * grub-core/kern/emu/misc.c (grub_device_mapper_supported): Move from - here ... - * grub-core/kern/emu/hostdisk.c (grub_device_mapper_supported): ... to - here. - -2013-08-14 Vladimir Serbinenko - - * include/grub/i386/pc/biosdisk.h (grub_biosdisk_drp): Fix device_path - length. - -2013-08-14 Vladimir Serbinenko - - Fix handling of build-time grub-bin2h and grub-mkfont when doing - full Canadian cross. Tested with build=x86_64, host=arm, - target=ppc-ieee1275. - -2013-08-14 Vladimir Serbinenko - - * configure.ac: Error if no $BUILD_CC could be found. - Reported by: DevHC. - -2013-08-14 Vladimir Serbinenko - - * grub-core/kern/i386/coreboot/init.c: Fix compilation on - i386-multiboot. - -2013-08-14 Vladimir Serbinenko - - * grub-core/kern/vga_init.c: Fix compilation on qemu-mips. - * grub-core/kern/mips/qemu_mips/init.c: Likewise. - -2013-08-13 Colin Watson - - * util/getroot.c (grub_util_biosdisk_get_grub_dev): Zero out - grub_errno in the case where we handle GRUB_ERR_UNKNOWN_DEVICE by - falling back to the partition device, otherwise a later call to this - function may fail spuriously. - Reported by Axel Beckert. Fixes Debian bug #708614. - -2013-08-12 Grégoire Sutre - - * autogen.sh: Replace find -not by the POSIX-compliant find !. - -2013-08-12 Grégoire Sutre - - Prevent shadowing of stdlib's devname(3) on BSD. - - * grub-core/disk/cryptodisk.c (grub_cmd_cryptomount): Rename devname - and devlast to diskname and disklast, respectively. - -2013-08-11 Colin Watson - - * util/grub-mkconfig.in: Fix detection of Emacs autosave files. - -2013-08-08 Vladimir Testov - - * docs/grub.texi: Introduce terminal window position options: - terminal-left: terminal window's left position - terminal-top: terminal window's top position - terminal-width: terminal window's width - terminal-height: terminal window's height - terminal-border: terminal window's border width - * grub-core/gfxmenu/theme-loader.c: Likewise. - * include/grub/gfxmenu_view.h: Likewise. - * po/exlude.pot: Likewise. - * grub-core/gfxmenu/view.c: Likewise. - Also updated minimal window size. - Also terminal_sanity_check function has been introduced. - * grub-core/tests/checksums.h: Update (terminal window height - is adjusted now for low resolution screen) - -2013-08-02 Vladimir Serbinenko - - * grub-core/tests/checksums.h: Update (1-pixel difference in marker - position). - -2013-08-02 Vladimir Serbinenko - - * po/exclude.pot: Add few recent exceptions. - -2013-08-02 Vladimir Serbinenko - - * tests/grub_func_test.in: Add unicode.pf2. - -2013-08-02 Vladimir Serbinenko - - * grub-core/term/gfxterm.c (grub_virtual_screen_setup): Start with - standard rather than noral color, in line with other terminals. - -2013-08-02 Vladimir Serbinenko - - * grub-core/partmap/dfly.c: Simplify dprintfs for easier gettext - analysis. - -2013-08-02 Vladimir Serbinenko - - * grub-core/loader/arm/linux.c: Change printf to dprintf. - -2013-08-02 Vladimir Serbinenko - - * grub-core/fs/zfs/zfs.c (check_feature): Cleanup and remove - inappropriate printf. - -2013-07-25 Andrey Borzenkov - - * .bzrignore: Remove grub-core/lib/dtc-grub, - grub-core/Makefile.libfdt.def - * conf/Makefile.extra-dist: Remove grub-core/Makefile.libfdt.def. - -2013-07-25 Vladimir Serbinenko - - * include/grub/video.h (grub_video_register): Keep double-linked as - well as single-linked invariants. - Reported by: qwertial. - -2013-07-25 Vladimir Serbinenko - - * grub-core/commands/nativedisk.c (get_uuid): Handle - GRUB_DISK_DEVICE_UBOOTDISK_ID. - -2013-07-25 Vladimir Testov - - * grub-core/gfxmenu/widget-box.c: Fixed draw function. Now it takes - maximum of NW, N, NE heights instead of N's height and maximum of - NW, W, SW widths instead of W's width. (So the box will be always - correctly drawn) - -2013-07-20 Grégoire Sutre - - * grub-core/partmap/bsdlabel.c (netopenbsdlabel_partition_map_iterate): - Fix misuse of variable count. - -2013-07-18 Leif Lindholm -2013-07-18 Francesco Lavra -2013-07-18 Vladimir Serbinenko - - New ports to arm-uboot and arm-efi. - Mostly by Leif Lindholm with some additions from - Francesco Lavra and cleanup by Vladimir Serbinenko. - -2013-07-16 Vladimir Serbinenko - - * grub-core/loader/multiboot_elfxx.c: Check eip after v2p translation - and not before. - Reported by: Leon Drugi. - -2013-07-16 Vladimir Serbinenko - - * grub-core/kern/powerpc/ieee1275/startup.S: Handle unaligned bss. - Reported by: Paulo Flabiano Smorigo. - -2013-07-14 Vladimir Testov - - * grub-core/gfxmenu/gui_list.c: USe viewport when drawing strings. - -2013-07-14 Vladimir Testov - - * grub-core/gfxmenu/gui_list.c: Fix height calculation. - -2013-07-14 Vladimir Serbinenko - - * grub-core/fs/zfs/zfs.c: Stylistic fixes. - -2013-07-14 Vladimir Serbinenko - - * grub-core/fs/zfs/zfs.c: Run emacs indent on file. - -2013-07-14 Andrey Borzenkov - - * grub-core/net/bootp.c: Export net_* variables. - * grub-core/net/net.c: Likewise. - -2013-07-14 Vladimir Serbinenko - - * grub-core/fs/zfs/zfs.c: Remove brackets around return value. - -2013-07-14 Vladimir Serbinenko - - * grub-core/fs/zfs/zfs_lz4.c: Add missing packed attribute. - -2013-07-14 Vladimir Serbinenko - - * grub-core/fs/zfs/zfs.c (nvlist_next_nvpair): Fix improper cast. - -2013-07-14 Vladimir Serbinenko - - * grub-core/fs/zfs/zfs_lz4.c: Remove restrict keyword. - -2013-07-14 Massimo Maggi - - * grub-core/fs/zfs/zfs.c (nvlist_next_nvpair): Error is encode_size - <= 0. - -2013-07-14 Massimo Maggi - - * grub-core/fs/zfs/zfs.c: Split nvpair iterators into separate - functions. - -2013-07-14 Massimo Maggi - - * grub-core/fs/zfs/zfs_lz4.c: New file. - * grub-core/fs/zfs/zfs.c: Tie up lz4 decompression. - -2013-07-14 Massimo Maggi - - * grub-core/fs/zfs/zfs.c: Check for feature compatibility. - -2013-07-14 Massimo Maggi - - * grub-core/fs/zfs/zfs.c (uberblock_verify): Accept version 5000. - (check_pool_label): Likewise. - * include/grub/zfs/zfs.h: Rewrite SPA_VERSION_* macros. - -2013-07-14 Massimo Maggi - - * grub-core/fs/zfs/zfsinfo.c (print_vdev_info): Fix RAIDZ reporting. - -2013-07-13 Andrey Borzenkov - - * docs/grub.texi (Commands): Document postition parameters - for menuentry command. - -2013-07-13 Andrey Borzenkov - - * util/grub-mknetdir.in: Remove stray line from help output. - -2013-07-11 Vladimir Serbinenko - - Remove early sm712 init as there is no reason for it (the "watchdog" - effect was due to wrong GPIO map). - -2013-07-11 Vladimir Serbinenko - - * grub-core/commands/pcidump.c: Remove static variables. - -2013-07-11 Vladimir Serbinenko - - * grub-core/commands/sleep.c: Refresh screen before sleeping. - -2013-07-11 Vladimir Serbinenko - - * configure.ac: Move delimiter after the infos. - -2013-07-11 Vladimir Serbinenko - - * grub-core/bus/usb/usbhub.c: Fix recheck logic. - -2013-07-11 Vladimir Serbinenko - - * util/grub-mkfont.c (write_font_ascii_bitmap): Fix handling of glyphs - not filling whole 8x16 space. - -2013-07-11 Vladimir Serbinenko - - * grub-core/normal/charset.c (bidi_line_wrap): Fix spurios warning. - -2013-07-11 Vladimir Serbinenko - - * configure.ac: Indicate which liblzma is used if any. - -2013-06-21 Paul Wise -2013-06-21 Craig Sanders - - * util/grub-reboot.in: Document submenu usage. - -2013-06-25 Colin Watson - - * .bzrignore: Update with a number of new test-related files. - -2013-06-25 Colin Watson - - * util/grub-script-check.c: Fail on scripts containing no - commands, to guard against corrupted grub-mkconfig setups that - produce no useful output. - * tests/grub_script_no_commands.in: New test. - * Makefile.util.def (grub_script_no_commands): Add. - Reported by Hans Putter. Fixes Debian bug #713886. - -2013-06-16 Andrey Borzenkov - - * grub-core/disk/diskfilter.c: Forgot to remove comment - from previous commit. - -2013-06-16 Andrey Borzenkov - - * grub-core/term/gfxterm.c (grub_virtual_screen_setup): Use - grub_term_normal_color, do not hardcode GRUB_TERM_DEFAULT_NORMAL_COLOR. - -2013-06-16 Andrey Borzenkov - - * conf/Makefile.extra-dist: Add grub-core/fs/cpio_common.c. - -2013-06-16 Andrey Borzenkov - - * grub-core/disk/diskfilter.c (scan_devices): Iteratively - rescan diskfilter devices until nothing new is found. - -2013-06-16 Vladimir Serbinenko - - Fix casts when compiling coreboot-specific code for 64-bit EFI. - -2013-06-16 Vladimir Serbinenko - - Don't try to detect cbfs on *-emu. - -2013-06-16 Vladimir Serbinenko - - * grub-core/term/gfxterm.c: USe right background color when scrolling. - -2013-06-16 Vladimir Serbinenko - - Add support for processed coreboot payload chainloading. - -2013-06-16 Vladimir Serbinenko - - Enable coreboot information commands even when not loaded as - coreboot payload (e.g. when loaded from SeaBIOS-as-payload). - -2013-06-15 Vladimir Serbinenko - - Support for cbfs. Also factor out the part which is common - for all archives to a separate module. This splits tar from cpio - as they are very different but keeps cpio, cpio_be, odc and newc - together since they're very similar. - -2013-06-15 David Michael - - * configure.ac (FREETYPE): Change AC_CHECK_PROGS to AC_CHECK_TOOLS. - (freetype_cflags,freetype_libs): Change freetype-config to $FREETYPE. - -2013-06-15 Vladimir Serbinenko - - * tests/grub_script_eval.in: Really add the eval test. - -2013-06-14 Vladimir Serbinenko - - Move flavour-specific parts out of common cpio.c file and - rename remaining to cpio_common.c - -2013-06-07 Andrey Borzenkov - - * grub-core/script/execute.c (grub_script_execute_sourcecode): Split - off new function grub_script_execute_new_scope. Change callers to use - either of them as appropriate. - * grub-core/commands/eval.c: New command eval. - * docs/grub.texi (Commands): Document it. - -2013-06-07 Andrey Borzenkov - - * grub-core/kern/corecmd.c (grub_core_cmd_set): Use grub_env_get - to fetch values when listing. - -2013-06-07 Andrey Borzenkov - - Fix make dist on non-pc. - -2013-06-07 Francesco Lavra - - * grub-core/kern/corecmd.c (grub_core_cmd_ls): Fix handling of paths - without a device name. - -2013-06-07 Vladimir Serbinenko - - Remove enable_executable_check as it's not needed anymore. - Reported by: dougray. - -2013-06-07 Vladimir Serbinenko - - * grub-core/disk/diskfilter.c (insert_array): Fix order to discover - ambigouos RAID before discovering RAIDs on top of it. - Reported by: bodom. - -2013-06-07 Vladimir Serbinenko - - Fix typo (failback vs fallback). - -2013-05-31 Andrey Borzenkov - - * util/grub.d/30_os-prober.in: Add support for probing EFI - System Partition (as of os-prober 1.58). - -2013-05-31 Vladimir Serbinenko - - * configure.ac: Add yet another path to unifont. For parabola. - -2013-05-30 Josh Triplett - - * grub-core/normal/cmdline.c (grub_cmdline_get): Fix Ctrl-u - handling to copy the killed characters to the kill buffer as - UCS4 stored as grub_uint32_t rather than as 8-bit characters - stored as char. Eliminates UCS4 truncation and corruption - observed when killing characters with Ctrl-u and yanking them - back with Ctrl-y. - -2013-05-30 Vladimir Serbinenko - - Detach optional parts of gfxterm and integrate in with coreboot init. - -2013-05-30 Vladimir Serbinenko - - Move blit and fill dispatcher to appropriate files to decrease export - and relocation overhead. - -2013-05-30 Vladimir Serbinenko - - * grub-core/font/font.c, include/grub/font.h: Inline simple font - functions. - -2013-05-30 Vladimir Serbinenko - - * grub-core/Makefile.am: Fix compilation problem with some - automake versions. - -2013-05-30 Vladimir Serbinenko - - * configure.ac: Add Ubuntu path to unifont and report unifont path used. - -2013-05-30 Vladimir Serbinenko - - * Makefile.am, conf/Makefile.common: Fix compilation problem with some - automake versions. - -2013-05-30 Vladimir Serbinenko - - * grub-core/commands/acpihalt.c: Fix handling of DSDT in presence of - SSDT. - -2013-05-15 RadosÅ‚aw Szymczyszyn - - * grub-core/partmap/dfly.c: New partition map. - -2013-05-15 Vladimir Serbinenko - - * grub-core/kern/corecmd.c (grub_core_cmd_ls): Fix empty path - checking. - Reported by: Francesco Lavra. - -2013-05-14 Andrey Borzenkov - - * gentpl.py: Replace EXTRA_DIST with dist_noinst_DATA or - dist__DATA. EXTRA_DIST is ignored by automake inside - false conditions. - * conf/Makefile.common: define dist_grubconf_DATA - -2013-05-14 Vladimir Serbinenko - - Progressively skip menu elements on small terminals rather - than crashing. - -2013-05-14 Vladimir Serbinenko - - * grub-core/normal/cmdline.c (grub_cmdline_get): Fix off-by-one error - to avoid losing last column. - -2013-05-14 Vladimir Serbinenko - - * po/exclude.pot: Add missing string "%C". - -2013-05-14 Vladimir Serbinenko - - * tests/util/grub-shell.in: Remove the temporary directory on grub-emu - after the test. - -2013-05-11 Vladimir Serbinenko - - * util/grub-install.in: Gettextize "Not found" message. - -2013-05-11 Vladimir Serbinenko - - Fix distfiles list. - Reported by: Andrey Borzenkov - -2013-05-11 Paulo Flabiano Smorigo - - * grub-core/net/bootp.c (grub_cmd_bootp): Check if there is any card - present. - * include/grub/err.h (grub_err_t): New enum value GRUB_ERR_NET_NO_CARD. - -2013-05-11 Vladimir Serbinenko - - * grub-core/tests/setjmp_test.c: Ignore missing noreturn. - -2013-05-11 Vladimir Serbinenko - - * grub-core/fs/hfspluscomp.c (grub_hfsplus_compress_attr): Add packed - attribute since structure is not necessarily aligned. - -2013-05-11 Andrey Borzenkov - - * docs/grub.texi (Device syntax): Clarify description of network - drives. - -2013-05-10 Vladimir Serbinenko - - Redirect xasprintf to grub_xvasprintf rather than having #ifdef's - for vasprintf presence. - -2013-05-10 Vladimir Serbinenko - - * util/grub-install.in: Handle efibootmgr presence check. - Reported by: Leif Lindholm. - -2013-05-10 Vladimir Serbinenko - - * grub-core/commands/testspeed.c: Reuse formatting string to decrease - new strings to translate. - -2013-05-10 Vladimir Serbinenko - - * util/grub-mkrescue.in: Replace `STR' with `STRING' to avoid adding - yet another string (pun intended) to translate. - -2013-05-10 Vladimir Serbinenko - - * po/POTFILES-shell.in: Autogenerate it. - -2013-05-10 Vladimir Serbinenko - - * grub-core/net/net.c (grub_net_open_real): Autoload network modules. - -2013-05-10 Vladimir Serbinenko - - * grub-core/term/terminfo.c: Rename ANSI_C0 to ANSI_CSI to avoid - misnomer. - -2013-05-08 Andrey Borzenkov - - * docs/grub.texi (Network): Add description of net_default_interface, - net_default_ip and net_default_mac. Rewrite variables description - to emphasize that they are per-interface. - -2013-05-08 Vladimir Serbinenko - - New test: cmdline and cat. - -2013-05-08 Vladimir Serbinenko - - * grub-core/commands/cat.c: Show UTF-8 characters. - -2013-05-08 Vladimir Serbinenko - - * conf/Makefile.common: Poison float and double on non-emu. - -2013-05-08 Vladimir Serbinenko - - * configure.ac: Don't disable extended registers on emu. - -2013-05-07 Vladimir Serbinenko - - * configure.ac: Don't use extended registers on x86_64. - Reported by: Peter Jones. - -2013-05-07 Vladimir Serbinenko - - * grub-core/term/efi/console.c: Fix compile error. - -2013-05-07 Vladimir Serbinenko - - Compressed HFS+ support. - -2013-05-07 Vladimir Serbinenko - - * grub-core/commands/videoinfo.c: Use "paletted" rather than "packed - pixel". - -2013-05-07 Vladimir Serbinenko - - Menu color test. - -2013-05-07 Vladimir Serbinenko - - * grub-core/tests/setjmp_test.c: New test. - -2013-05-07 Vladimir Serbinenko - - New variables 'net_default_*' to determine MAC/IP of default interface. - -2013-05-07 Vladimir Serbinenko - - * tests/gettext_strings_test.in: A test to check for strings not - marked for translation. - -2013-05-07 Vladimir Serbinenko - - * autogen.sh: Exclude unused libgcrypt files from translation. - -2013-05-07 Vladimir Serbinenko - - Simplify few strings. - -2013-05-07 Vladimir Serbinenko - - Mark few forgotten strings for translation. - -2013-05-07 Vladimir Serbinenko - - * grub-core/loader/linux.c: Use grub_dprintf for debug statements - rather than printf. - -2013-05-07 Vladimir Serbinenko - - * grub-core/video/readers/jpeg.c: Use grub_dprintf for debug statements - rather than printf. - * grub-core/video/readers/tga.c: Likewise. - -2013-05-07 Vladimir Serbinenko - - * tests/priority_queue_unit_test.cc: New test. - -2013-05-07 Vladimir Serbinenko - - * grub-core/font/font.c: Use grub_dprintf for debug statements rather - than printf. - -2013-05-06 Andrey Borzenkov - - Reimplement grub-reboot to not depend on saved_entry. Use next_entry - variable for one time boot menu entry. - -2013-05-05 Bean - - * grub-core/commands/testspeed.c: New command testspeed. - -2013-05-05 Vladimir Serbinenko - - Factor-out human-size printing. - -2013-05-04 Vladimir Serbinenko - - Agglomerate more mallocs to speed-up gfxterm. - -2013-05-04 Vladimir Serbinenko - - Speed-up gfxterm by slightly agglomerating mallocs. - -2013-05-04 Vladimir Serbinenko - - More video checks. - -2013-05-04 Vladimir Serbinenko - - Speed-up gfxterm by saving intermediate results in index+alpha - format. - -2013-05-04 Vladimir Serbinenko - - * grub-core/tests/lib/functional_test.c: Don't stop on first failed - test. - -2013-05-04 Vladimir Serbinenko - - * grub-core/normal/menu_text.c (menu_clear_timeout): Clear second - line of timeout as it may contain the rest of long line. - -2013-05-04 Vladimir Serbinenko - - * grub-core/normal/main.c: Fix freed memory dereference. - -2013-05-04 Vladimir Serbinenko - - Fix several memory leaks. - -2013-05-04 Vladimir Serbinenko - - * grub-core/normal/menu.c (run_menu): Fix timeout reference point. - -2013-05-04 Vladimir Serbinenko - - * grub-core/gettext/gettext.c: Try $lang.gmo as well. - -2013-05-04 Vladimir Serbinenko - - Fix test -a and -o precedence. - Reported by: adrian15. - -2013-05-04 Vladimir Serbinenko - - * grub-core/font/font.c (grub_font_construct_glyph): Fix memory leak. - -2013-05-03 Andrey Borzenkov - - Rename grub-core/tests/checksums.c into grub-core/tests/checksums.h - and add it as source to functional_test module. - -2013-05-03 Vladimir Serbinenko - - * grub-core/tests/video_checksum.c: Don't set GENERATE_MODE. - -2013-05-03 Vladimir Serbinenko - - New series of tests for gfxterm and gfxmenu. - -2013-05-03 Vladimir Serbinenko - - * grub-core/gfxmenu/gfxmenu.c (grub_gfxmenu_try): Allow specifying - the theme path relative to $prefix/themes. - -2013-05-03 Vladimir Serbinenko - - * grub-core/video/fb/fbblit.c (grub_video_fbblit_blend_BGR888_RGBA8888): - Fix order bug. - (grub_video_fbblit_blend_RGB888_RGBA8888): Likewise. - -2013-05-03 Vladimir Serbinenko - - * include/grub/gui.h (grub_gfxmenu_timeout_unregister): Free cb - descriptor. - -2013-05-03 Vladimir Serbinenko - - * grub-core/gfxmenu/view.c (grub_gfxmenu_view_new): Clear - grub_gfxmenu_timeout_notifications. - (grub_gfxmenu_view_destroy): Likewise. - -2013-05-03 Vladimir Serbinenko - - * grub-core/normal/term.c (print_ucs4_real): Fix startwidth in dry run. - -2013-05-02 Vladimir Serbinenko - - Several fixes to ieee1275 and big-endian video. - -2013-05-02 Vladimir Serbinenko - - Add missing exports on mips. - -2013-05-02 Vladimir Serbinenko - - * grub-core/tests/videotest_checksum.c (videotest_checksum): Error out - if no unifont is found. - Restore original keyboard. - -2013-05-02 Vladimir Serbinenko - - * grub-core/loader/i386/linux.c (grub_linux_setup_video): Add - GRUB_VIDEO_ADAPTER_CAPTURE: to handled drived ids. - -2013-05-02 Vladimir Serbinenko - - First automated video test (running videotest and comparing results) - -2013-05-02 Vladimir Serbinenko - - * grub-core/commands/videotest.c: Reduce flickering and draw 6 squares - instead of 2 to have full RGB/CMY test pattern. - -2013-04-30 Vladimir Serbinenko - - Add few more tests. - -2013-04-30 Vladimir Serbinenko - - * include/grub/arc/arc.h: Account for missing "other" peripheral on - ARCS. All users updated. - -2013-04-30 Vladimir Serbinenko - - * grub-core/kern/mips/loongson/init.c: Support halt for loongson 2E. - -2013-04-30 Vladimir Serbinenko - - * grub-core/partmap/amiga.c: Fix size of checksummed block. - -2013-04-29 Vladimir Serbinenko - - * configure.ac: Use -mcmodel=large on x86_64-emu as well. - Reported by: qwertial. - -2013-04-29 Vladimir Testov - - * grub-core/gfxmenu/circular_progress.c: Set start_angle in degrees - with syntax "XXX deg"/"XXX °". - -2013-04-29 Vladimir Serbinenko - - Make PCI init in i386-qemu port more robust. - -2013-04-29 Vladimir Testov - - * grub-core/gfxmenu/gui_list.c: Refresh first_shown_entry value when - cached view is reused. - * grub-core/gfxmenu/view.c: Call the refresh procedure for all - open boot menus. - -2013-04-29 Vladimir Serbinenko - - Unify more code in grub-install_header. - -2013-04-29 Vladimir Serbinenko - - Add few new tests. - -2013-04-29 Vladimir Serbinenko - - Enforce disabling of firmware disk drivers when native drivers kick in. - -2013-04-29 Vladimir Serbinenko - - * grub-core/commands/nativedisk.c: Customize the list of modules on - platform. Don't try to search for disks already using native drivers. - -2013-04-29 Vladimir Serbinenko - - * grub-core/bus/usb/uhci.c: Fix DMA handling and enable on all PCI - platforms. - -2013-04-29 Vladimir Serbinenko - - * grub-core/script/execute.c (grub_script_arglist_to_argv): Fix - handling of variables containing backslash. - -2013-04-29 Vladimir Serbinenko - - * include/grub/list.h (FOR_LIST_ELEMENTS_SAFE):Fix a NULL pointer - dereference. - Reported by: qwertial. - -2013-04-29 Vladimir Serbinenko - - * grub-core/kern/mips/arc/init.c: Fix prefix detection. - -2013-04-29 Vladimir Serbinenko - - * grub-core/lib/arg.c (grub_arg_show_help): Fix a NULL pointer - dereference. - Reported by: qwertial. - -2013-04-28 Vladimir Serbinenko - - * docs/grub.texi: Add a comment about usefullness of nativedisk. - -2013-04-28 Vladimir Serbinenko - - * grub-core/commands/nativedisk.c: Ignore unknown filesystem error. - -2013-04-28 Vladimir Serbinenko - - New command `nativedisk'. - -2013-04-28 Vladimir Serbinenko - - * grub-core/io/lzopio.c: Use GRUB_PROPERLY_ALIGNED_ARRAY. - * grub-core/loader/i386/bsd.c: Likewise. - -2013-04-28 Vladimir Serbinenko - - * grub-core/disk/ahci.c: Fix compilation for amd64 (format warnings). - -2013-04-28 Vladimir Serbinenko - - * include/grub/efi/api.h (GRUB_EFI_DEVICE_PATH_LENGTH): Use - grub_get_unaligned16 rather than shifts. - -2013-04-28 Vladimir Serbinenko - - * grub-core/kern/file.c: Use const char * rather than casting to - non-const. - -2013-04-28 Vladimir Serbinenko - - * grub-core/commands/probe.c: Add missing grub_device_close. - -2013-04-28 Vladimir Serbinenko - - * INSTALL: Document linguas.sh. - -2013-04-28 Vladimir Serbinenko - - Remove POTFILES.in and regenerate it in autogen.sh. - -2013-04-28 Vladimir Serbinenko - - Move --directory/--override-directorry to grub-install_header and unify. - -2013-04-28 Vladimir Serbinenko - - * grub-core/term/morse.c: Macroify dih and dah. - -2013-04-27 Paulo Flabiano Smorigo - - * include/grub/macho.h: Set GRUB_MACHO_FAT_EFI_MAGIC as unsigned. - -2013-04-27 Vladimir Serbinenko - - * grub-core/term/ns8250.c: Systematically probe ports by writing - to SR before using them. - -2013-04-27 Paulo Flabiano Smorigo - - * util/ieee1275/ofpath.c (of_path_of_scsi): Fix path output for sas - disks. - (check_sas): Get sas_adress info. - -2013-04-27 Vladimir Serbinenko - - * grub-core/disk/ahci.c (grub_ahci_pciinit): Fix handling of empty - ports. - -2013-04-27 Leon Drugi - - * grub-core/loader/multiboot_mbi2.c (grub_multiboot_load): Fix cast in - BSS clearing. - -2013-04-27 Vladimir Serbinenko - - Core compression test. - -2013-04-27 Vladimir Serbinenko - - Implement grub_machine_get_bootlocation for ARC. - -2013-04-27 Vladimir Serbinenko - - Improve AHCI detection and command issuing. - -2013-04-26 Vladimir Serbinenko - - Fix pseries test. - -2013-04-26 Vladimir Serbinenko - - Make 'make check' work on emu. - -2013-04-26 Vladimir Serbinenko - - Replace libcurses with our own vt100 handling for the ease of testing - and decreasing prerequisites. - -2013-04-26 Vladimir Serbinenko - - * grub-core/Makefile.core.def: Fix grub-emu and grub-emu-lite sources. - -2013-04-26 Vladimir Serbinenko - - * util/getroot.c (exec_pipe): Put proper #if's so that its users don't - compile when not needed. - -2013-04-26 Vladimir Serbinenko - - * tests/pseries_test.in: New test. - -2013-04-26 Vladimir Serbinenko - - Add test to check that different boot mediums work. - -2013-04-26 Vladimir Serbinenko - - * util/grub-mkrescue.in: Rename i386-ieee1275 core image due to - ofw limited ISO support. - -2013-04-26 Vladimir Serbinenko - - * configure.ac: Fix loongson conditional. - -2013-04-25 Vladimir Serbinenko - - Enable mipsel-arc. - -2013-04-25 Vladimir Serbinenko - - Add serial on ARC platform. - -2013-04-25 Vladimir Serbinenko - - * grub-core/boot/powerpc/bootinfo.txt.in: Missing update from previous - commit. - -2013-04-25 Vladimir Serbinenko - - * tests/partmap_test.in: Add missing double semicolon. - -2013-04-25 Vladimir Serbinenko - - * util/grub-mkrescue.in: Fix loongson filename. - -2013-04-25 Vladimir Serbinenko - - * util/grub-mkrescue.in: Move all files that don't have a location - set in stone under /boot/grub. Use ISO hard links rather than copies - to save some space. - -2013-04-24 Vladimir Serbinenko - - * grub-core/term/ieee1275/console.c (grub_console_dimensions): Ignore - bogus SLOF values. - -2013-04-24 Vladimir Serbinenko - - Make check work on mips-arc. - -2013-04-24 Vladimir Serbinenko - - * util/grub-mkrescue.in: Alias sashARCS as sash. - -2013-04-24 Vladimir Serbinenko - - * grub-core/term/arc/console.c: Assume that console is 80x24 vt100 if - it's serial. - -2013-04-24 Vladimir Serbinenko - - * util/grub-install.in: Fix target fo qemu_mips. - Fix extension on EFI. - -2013-04-24 Vladimir Serbinenko - - * grub-core/normal/menu_text.c (print_entry): Put an asterisk - in front of chosen entry to mark it even if highlighting is lost. - -2013-04-24 Vladimir Serbinenko - - * grub-core/loader/i386/linux.c (grub_linux_boot): Default to - gfxpayload=keep if cbfb is active. - -2013-04-24 Vladimir Serbinenko - - * grub-core/disk/ata.c (grub_ata_real_open): Use grub_error properly. - -2013-04-24 Vladimir Serbinenko - - Add missing video ids to coreboot and ieee1275 video. - -2013-04-24 Vladimir Serbinenko - - * util/grub-mkrescue.in: Add mips-arc support. - -2013-04-24 Vladimir Serbinenko - - * grub-core/kern/dl.c (grub_dl_resolve_symbols): Handle malloc failure. - -2013-04-24 Vladimir Serbinenko - - Move mips-arc link address. Previous link address was chosen - in belief that RAM on SGI platforms grows down while in fact it - grows up from an unusual base. - -2013-04-21 Vladimir Serbinenko - - * grub-core/disk/arc/arcdisk.c (grub_arcdisk_iterate_iter): - Fix a type which prevented CD-ROM and floppy boot. - -2013-04-21 Vladimir Serbinenko - - Support coreboot framebuffer. - - * grub-core/video/i386/coreboot/cbfb.c: New file. - -2013-04-20 Vladimir Serbinenko - - * grub-core/kern/mm.c (grub_mm_init_region): Fix condition for - detecting too small regions. - -2013-04-20 Vladimir Serbinenko - - * grub-core/Makefile.core.def (legacycfg): Enable on EFI. - -2013-04-20 Vladimir Serbinenko - - * grub-core/lib/efi/relocator.c (grub_relocator_firmware_alloc_region): - Remove dprintf. - * grub-core/lib/relocator.c (malloc_in_range): Likewise. - -2013-04-19 Vladimir Serbinenko - - * grub-core/kern/ieee1275/init.c (grub_claim_heap): Improve handling - of GRUB_IEEE1275_FLAG_FORCE_CLAIM. - * grub-core/loader/powerpc/ieee1275/linux.c - (grub_linux_claimmap_iterate): Handle GRUB_IEEE1275_FLAG_FORCE_CLAIM. - -2013-04-19 Vladimir Serbinenko - - * grub-core/kern/ieee1275/cmain.c (grub_ieee1275_find_options): - Look for /boot-rom as well as /rom/boot-rom. - -2013-04-19 Vladimir Serbinenko - - * grub-core/commands/videotest.c (grub_cmd_videotest): Fix error - handling when creating text_layer failed. - * grub-core/video/video.c (grub_video_create_render_target): - Set result to 0 on error. - (grub_video_delete_render_target): Do not dereference NULL. - -2013-04-19 Vladimir Serbinenko - - * grub-core/kern/elfXX.c (grub_elfXX_load): Handle - GRUB_ELF_LOAD_FLAGS_30BITS and GRUB_ELF_LOAD_FLAGS_62BITS. - * grub-core/loader/powerpc/ieee1275/linux.c (grub_linux_load32), - (grub_linux_load64): Mask out 2 high bits. - -2013-04-19 Andrey Borzenkov - - * util/grub.d/30_os-prober.in: Add onstr to linux entries in one - more place. - -2013-04-19 Vladimir Serbinenko - - Add support for pseries and other bootinfo machines to grub-mkrescue. - - Tested by: Paulo Flabiano Smorigo. - -2013-04-17 Vladimir Serbinenko - - * util/grub-mkrescue.in: Add GPT for EFI boot. - -2013-04-17 Vladimir Serbinenko - - * grub-core/disk/efi/efidisk.c: Detect floppies by ACPI ID. - It improves performance in qemu. - -2013-04-17 Vladimir Serbinenko - - * build-aux/snippet: Add missing gnulib files. - -2013-04-16 Andrey Borzenkov - - * grub-core/disk/efi/efidisk.c: Really limit transfer chunk size. - -2013-04-16 Andrey Borzenkov - - * autogen.sh: Use "-f" in addition for "-h" when checking file presence. - -2013-04-15 Vladimir Serbinenko -2013-04-15 Peter Jones - - * grub-core/disk/efi/efidisk.c: Limit disk read or write chunk to 0x500 - sectors. - Based on patch by Peter Jones. - -2013-04-15 Vladimir Serbinenko - - Fix DMRAID partition handling. - -2013-04-15 Vladimir Serbinenko - - * tests/grub_cmd_date.in: Skip on sparc64. - -2013-04-15 Vladimir Serbinenko - - * tests/grub_script_expansion.in: Use fixed-string grep to skip over - firmware error messages. - -2013-04-15 Vladimir Serbinenko - - * grub-core/kern/ieee1275/openfw.c (grub_ieee1275_devalias_next): Make - source and destination differ. - -2013-04-15 Vladimir Serbinenko - - * grub-core/disk/ieee1275/ofdisk.c: Fix CD-ROM and boot device - detection. - -2013-04-14 Vladimir Serbinenko - - * grub-core/lib/posix_wrap/sys/types.h: Make WORDS_BIGENDIAN definition - match config-util.h to avoid warnings and increase compatibility. - -2013-04-14 Szymon Janc -2013-04-14 Vladimir Serbinenko - - Add option to compress files on install/image creation. - -2013-04-14 Vladimir Serbinenko - - * docs/grub-dev.texi: Rearrange menu to match the section order. - Reported by: Bryan Hundven. - -2013-04-14 Vladimir Serbinenko - - * grub-core/loader/i386/linux.c: Remove useless leftover pointer. - -2013-04-14 Vladimir Serbinenko - - Move GRUB out of system area when using xorriso 1.2.9 or later. - -2013-04-14 Vladimir Serbinenko - - * tests/grub_cmd_date.in: Add missing exit 1. - -2013-04-14 Vladimir Serbinenko - - * tests/partmap_test.in: Skip on sparc64. - -2013-04-14 Vladimir Serbinenko - - Support grub-shell on sparc64. - -2013-04-14 Vladimir Serbinenko - - Support mkrescue on sparc64. - -2013-04-14 Vladimir Serbinenko - - Allow IEEE1275 ports on path even if it wasn't detected automatically. - Needed on OpenBIOS due to incomplete device tree. - -2013-04-14 Vladimir Serbinenko - - * grub-core/disk/ieee1275/ofdisk.c: Iterate over bootpath even if it - would be otherwise excluded. - -2013-04-14 Vladimir Serbinenko - - * grub-core/kern/ieee1275/cmain.c (grub_ieee1275_find_options): - Inline name defines used only once. - -2013-04-13 Vladimir Serbinenko - - Fix memory leaks in ofnet. - Reported by: Francesco Lavra. - -2013-04-12 Vladimir Serbinenko - - * docs/man/grub-glue-efi.h2m: Add missing file. - -2013-04-12 Vladimir Serbinenko - - * util/grub-mkrescue.in: Fix wrong architecture for ppc dir. - -2013-04-12 Vladimir Serbinenko - - Better support Apple Intel Macs on CD. - -2013-04-12 Vladimir Serbinenko - - Replace stpcpy with grub_stpcpy in tools. - -2013-04-12 Vladimir Serbinenko - - Handle Japanese special keys. - Reported by: Hiroyuki YAMAMORI. - Codes supplied by: Hiroyuki YAMAMORI. - -2013-04-12 Vladimir Serbinenko - - * util/grub-mkimage.c: Document memdisk implying --prefix. - -2013-04-12 Vladimir Serbinenko - - * grub-core/bus/usb/ehci.c (grub_ehci_fini_hw): Ignore errors, not - much we can do about it anyway. - -2013-04-12 AleÅ¡ Nesrsta - - Fix handling of split transfers. - -2013-04-12 Vladimir Serbinenko - - * grub-core/net/http.c: Fix bad free. - -2013-04-12 Vladimir Serbinenko - - * grub-core/net/drivers/ieee1275/ofnet.c: Don't attempt to send more - than buffer size. - -2013-04-12 Vladimir Serbinenko - - Disable partmap check on i386-ieee1275 due to openfirmware issues. - -2013-04-12 Vladimir Serbinenko - - * tests/util/grub-shell.in: Fix it on powerpc. - -2013-04-12 Vladimir Serbinenko - - Turn off QEMU ACPI-way since new releases don't have shutdown port - anymore. - -2013-04-12 Vladimir Serbinenko - - * docs/grub.texi: Update coreboot status info. - -2013-04-12 Vladimir Serbinenko - - * tests/grub_cmd_date.in: New test for datetime. - -2013-04-12 Vladimir Serbinenko - - * tests/partmap_test.in: Fix missing qemudisk setting. - -2013-04-11 Vladimir Serbinenko - - Support i386-ieee1275 grub-mkrescue and make check on it. - -2013-04-11 Vladimir Serbinenko - - Merge powerpc grub-mkrescue flavour with common. Use xorriso HFS+ - feature for it. - -2013-04-11 Vladimir Serbinenko - - * docs/grub.texi: Fix description of GRUB_CMDLINE_XEN and - GRUB_CMDLINE_XEN_DEFAULT. - Reported by: Marc Warne (GigaTux) - -2013-04-11 Vladimir Serbinenko - - Import new gnulib. - -2013-04-11 Vladimir Serbinenko - - Use ACPI shutdown intests as traditional port was removed. - -2013-04-11 Andrey Borzenkov - - * util/grub.d/30_os-prober.in: Add onstr to entries for visual - distinction. - -2013-04-11 Vladimir Serbinenko - - Fix missing PVs if they don't contain "interesting" LV. Closes #38677. - Fix few warining messages and leaks while on it. - -2013-04-09 Andrey Borzenkov - - * autogen.sh: Use "-h", not "-f", to test for existence of symbolic - links under grub-core/lib/libgcrypt-grub/mpi. - -2013-04-08 Vladimir Serbinenko - - Fix ia64-efi image generation on big-endian machines. Deduplicate - some code while on it. - Reported by: Leif Lindholm. - -2013-04-08 Andrey Borzenkov - - * grub-core/Makefile.core.def: Add kern/elfXX.c to elf module - as extra_dist. - -2013-04-08 Andrey Borzenkov - - * grub-core/term/i386/pc/console.c: Fix cursor moving algorithm. - -2013-04-08 Bryan Hundven - - * docs/grub-dev.texi: Move @itemize after @subsection to satisfy - texinfo-5.1. - -2013-04-08 Vladimir Serbinenko - - * grub-core/normal/term.c: Few more fixes for menu entry editor - rendering. - Reported by: Andrey Borzenkov - -2013-04-07 Vladimir Serbinenko - - * grub-core/normal/term.c: Few more fixes for menu entry editor - rendering. - Reported by: Andrey Borzenkov - -2013-04-06 Andrey Borzenkov - - * conf/Makefile.extra-dist (EXTRA_DIST): Add - grub-core/lib/libgcrypt/src/gcrypt.h.in and util/import_gcrypth.sed. - -2013-04-06 Andrey Borzenkov - - * util/grub-install_header: Use @PACKAGE@.mo in message catalog name - instead of hardcoding grub.mo. - -2013-04-05 Fedora Ninjas - - * util/grub.d/30_os-prober.in: Support btrrfs linux-prober extensions. - -2013-04-05 Vladimir Serbinenko - - Use GRUB_PROPERLY_ALIGNED_ARRAY in grub-core/disk/cryptodisk.c and - grub-core/disk/geli.c. - -2013-04-05 Vladimir Serbinenko - - * util/grub-mkfont.c: Prefer enum to #define. - -2013-04-05 Vladimir Serbinenko - - * grub-core/commands/acpi.c: Use sizeof rather than hardcoding the size. - -2013-04-05 Vladimir Serbinenko - - Replace 8 with GRUB_CHAR_BIT in several places when appropriate. - -2013-04-05 Vladimir Serbinenko - - Add new defines GRUB_RSDP_SIGNATURE_SIZE and GRUB_RSDP_SIGNATURE. - -2013-04-05 Vladimir Serbinenko - - * grub-core/commands/verify.c: Use GRUB_CHAR_BIT. - -2013-04-05 Vladimir Serbinenko - - * include/grub/bsdlabel.h: Use enums. - -2013-04-05 Vladimir Serbinenko - - Move GRUB_CHAR_BIT to types.h. - -2013-04-04 Andrey Borzenkov - - * docs/grub.texi: Document more user commands. - -2013-04-04 Andrey Borzenkov - - * docs/grub.texi: Document menuentry --id option. - -2013-04-04 Francesco Lavra - - * util/grub-mkimage.c: Introduce new define EFI32_HEADER_SIZE. - -2013-04-04 Vladimir Serbinenko - - Unify file copying setup across different install scripts. Add - options for performing partial install. - -2013-04-04 Vladimir Serbinenko -2013-04-04 Peter Jones - - * grub-core/disk/efi/efidisk.c: Handle partitions on non-512B disks. - -2013-04-04 Vladimir Serbinenko - - Use TSC as a possible time source on i386-ieee1275. - -2013-04-04 Vladimir Serbinenko - - * grub-core/bus/usb/usbtrans.c (grub_usb_bulk_readwrite_packetize): - Init err. - -2013-04-04 Vladimir Serbinenko - - * util/grub-setup.c (setup): Handle some corner cases. - -2013-04-04 Vladimir Serbinenko - - * grub-core/lib/posix_wrap/locale.h [GRUB_UTIL]: Include host locale.h. - -2013-04-03 Vladimir Serbinenko - - * grub-core/commands/verify.c: Save verified file to avoid it being - tampered with after verification was done. - -2013-04-03 Vladimir Serbinenko - - * grub-core/term/i386/pc/console.c (grub_console_getwh): Decrease - reported width by one to compensate for curesor algorithm problem. - -2013-04-03 Vladimir Serbinenko - - Fix screen corruption in menu entry editor and simplify the code - flow while on it. - -2013-04-03 Andrey Borzenkov - - * util/grub-mount.c (fuse_init): Return error if fuse_main - failed. - -2013-04-03 Francesco Lavra - - * include/grub/elf.h: Add missing ARM relocation codes and fix - existing ones. - -2013-04-03 Vladimir Testov - - * grub-core/gfxmenu/gui_progress_bar.c: Handle padding sizes. - -2013-04-03 Vladimir Testov -2013-04-03 Vladimir Serbinenko - - * grub-core/gfxmenu/gui_circular_progress.c: Take both width and height - into account when calculating radius. - -2013-04-03 Vladimir Testov - - * grub-core/gfxmenu/view.c: Fix off-by-one error. - -2013-04-03 Vladimir Testov - - * grub-core/gfxmenu/gui_circular_progress.c: Fix off-by-one error. - -2013-04-01 RadosÅ‚aw Szymczyszyn - - * grub-core/partmap/apple.c (apple_partition_map_iterate): Add - missing closing bracket. - -2013-04-01 RadosÅ‚aw Szymczyszyn - - * INSTALL: Mention xorriso requirement. - -2013-03-31 Andrey Borzenkov - - * grub-core/commands/verify.c: Fix hash algorithms values for - the first three hashes - they start with 1, not with 0. - -2013-03-26 Vladimir Serbinenko - - * grub-core/kern/efi/mm.c (grub_efi_finish_boot_services): - Try terminating EFI services several times due to quirks in some - implementations. - -2013-03-26 Colin Watson - - * grub-core/commands/acpihalt.c (skip_ext_op): Add support for - skipping Event, Device, Processor, PowerRes, ThermalZone, and - BankField extended opcodes. - (get_sleep_type): Add minimal scope handling (just enough to - handle setting the scope to the root path). - (grub_acpi_halt): Parse any SSDTs as well as the DSDT. - * include/grub/acpi.h: Add enumeration values for Event, Device, - Processor, PowerRes, ThermalZone, and BankField extended opcodes. - -2013-03-26 Vladimir Testov - - * grub-core/gfxmenu/font.c (grub_font_get_string_width): Fix - memory leak. - -2013-03-25 Vladimir Serbinenko - - * grub-core/disk/ahci.c: Give more time for AHCI request. - -2013-03-25 Vladimir Serbinenko - - * grub-core/normal/menu.c: Wait if there were errors shown at "boot" - command. - -2013-03-25 Vladimir Serbinenko - - Replace the region at 0 from coreboot tables to available in BSD - memory map. - -2013-03-24 Vladimir Serbinenko - - * util/grub.d/20_linux_xen.in: Automatically add no-real-mode edd=off on - non-BIOS platforms. - -2013-03-24 Vladimir Serbinenko - - * grub-core/Makefile.core.def (vga): Disable on coreboot and multiboot - platforms. - -2013-03-24 Vladimir Serbinenko - - * util/grub-mkconfig_lib.in (prepare_grub_to_access_device): Fix - handling of multi-device filesystems. - -2013-03-24 Vladimir Serbinenko - - * grub-core/Makefile.core.def (vbe): Disable on coreboot and multiboot - platforms. - -2013-03-24 Vladimir Serbinenko - - Add new 'proc' filesystem framework and put luks_script into it. - -2013-03-23 Vladimir Serbinenko - - * grub-core/term/at_keyboard.c: Increase robustness on coreboot - and qemu. - -2013-03-22 Vladimir Serbinenko - - * grub-core/fs/zfs/zfs.c: Fix incorrect handling of special volumes. - -2013-03-22 Vladimir Serbinenko - - Add ability to generate newc additions on runtime. - -2013-03-22 Vladimir Serbinenko - - * grub-core/commands/i386/coreboot/cbls.c: Fix typos and wrong - description. - -2013-03-21 Vladimir Serbinenko - - * po/POTFILES.in: Regenerate. - -2013-03-20 Vladimir Serbinenko - - * grub-core/commands/verify.c (hashes): Add several hashes - from the spec. - -2013-03-20 Vladimir Serbinenko - - Slight improve in USB-related boot-time checkpoints. - -2013-03-20 Vladimir Serbinenko - - * grub-core/commands/boottime.c: Fix copyright header. - -2013-03-20 Vladimir Serbinenko - - New commands cbmemc, lscoreboot, coreboot_boottime to inspect - coreboot tables content. Support for cbmemc. - -2013-03-20 Vladimir Serbinenko - - Fix a conflict between ports structures with 2 controllers of - same kind. - -2013-03-20 Vladimir Serbinenko - - * include/grub/boottime.h: Add missing file. - -2013-03-19 Vladimir Serbinenko - - Initialize USB ports in parallel to speed-up boot. - -2013-03-19 Vladimir Serbinenko - - Fix USB devices not being detected when requested - due to delayed attach. - -2013-03-19 Vladimir Serbinenko - - Implement boot time analysis framework. - -2013-03-19 Vladimir Serbinenko - - Remove get_endpoint_descriptor and change all functions needing - descriptor to just receive it as argument rather than endpoint - address. - -2013-03-19 AleÅ¡ Nesrsta - - Better estimate the maximum USB transfer size. - -2013-03-17 Vladimir Serbinenko - - Resend a packet if we got the wrong buffer in status. - -2013-03-10 Vladimir Serbinenko - - * grub-core/loader/i386/bsdXX.c (grub_openbsd_find_ramdisk): Use - multiplication rather than division. - -2013-03-10 Vladimir Serbinenko - - * grub-core/lib/arg.c (grub_arg_list_alloc): Use shifts rather - than divisions. - -2013-03-10 Vladimir Serbinenko - - * grub-core/commands/verify.c (grub_verify_signature): Use unsigned - operations to have intended shifts and not divisions. - -2013-03-10 Vladimir Serbinenko - - * grub-core/loader/i386/pc/plan9.c (fill_disk): Fix types to use - intended shifts rather than division. - -2013-03-10 Vladimir Serbinenko - - * include/grub/datetime.h (grub_datetime2unixtime): Fix unixtime - computation for some years before epoch. Avode confusing division - while on it. - -2013-03-10 Vladimir Serbinenko - - * grub-core/video/i386/pc/vbe.c - (grub_video_vbe_print_adapter_specific_info): Replace division by - shifts. - -2013-03-10 Vladimir Serbinenko - - Adjust types in gdb module to have intended unsigned shifts rather than - signed divisions. - -2013-03-10 Vladimir Serbinenko - - * grub-core/fs/hfs.c (grub_hfs_read_file): Avoid divmod64 since the - maximum size is 4G - 1 on hfs - -2013-03-10 Vladimir Serbinenko - - Avoid costly 64-bit division in grub_get_time_ms on most platforms. - -2013-03-10 Vladimir Serbinenko - - * grub-core/fs/fshelp.c (grub_fshelp_log2blksize): Remove now unused - function. - -2013-03-07 Andrey Borzenkov - - * grub-core/fs/iso9660.c (add_part): Remove always_inline attribute - causing gcc error with gcc 4.7.1. - -2013-03-07 Nickolai Zeldovich - - * grub-core/commands/acpi.c (grub_acpi_create_ebda): Don't - dereference null pointer. While the code is technically correct, gcc - may eliminate a null check if pointer is already dereferenced. - -2013-03-07 Nickolai Zeldovich - - * grub-core/normal/crypto.c (read_crypto_list): Fix incorrect - OOM check. - * grub-core/normal/term.c (read_terminal_list): Likewise. - -2013-03-07 Vladimir Serbinenko - - Lift up core size limits on some platforms. Fix potential memory - corruption with big core on small memory systems. Document remaining - limits. - -2013-03-05 Vladimir Serbinenko - - * grub-core/term/terminfo.c (grub_terminfo_cls): Issue an explicit - gotoxy to 0,0. - -2013-03-03 Vladimir Serbinenko - - Remove all trampoline support. Add -Wtrampolines when - present. Remove symbols used for trampolines to make - link fail if trampolines are present. - -2013-03-03 Vladimir Serbinenko - - * grub-core/script/execute.c (grub_script_arglist_to_argv): Move - append out of its parent. - -2013-03-03 Vladimir Serbinenko - - * grub-core/commands/regexp.c (set_matches): Move setvar out of its - parent. - -2013-03-03 Vladimir Serbinenko - - * grub-core/kern/env.c, include/grub/env.h: Change iterator through - all vars to a macro. All users updated. - -2013-03-03 Vladimir Serbinenko - - * grub-core/disk/ieee1275/nand.c: Fix compilation on - i386-ieee1275. - -2013-03-02 Vladimir Serbinenko - - * include/grub/cmos.h: Handle high CMOS addresses on sparc64. - -2013-03-02 Vladimir Serbinenko - - * include/grub/mips/loongson/cmos.h: Fix high CMOS addresses. - -2013-03-02 Vladimir Serbinenko - - Move to more hookless approach in IEEE1275 devices handling. - -2013-03-02 Vladimir Serbinenko - - * grub-core/kern/term.c (grub_term_normal_color), - (grub_term_highlight_color): Add back lost defaults. - -2013-03-02 Vladimir Serbinenko - - Make elfload not use hooks. Opt for flags and iterators instead. - -2013-03-02 Vladimir Serbinenko - - * grub-core/lib/ia64/longjmp.S: Fix the name of longjmp function. - * grub-core/lib/ia64/setjmp.S: Fix the name of setjmp function. - -2013-03-02 Vladimir Serbinenko - - * grub-core/script/execute.c (gettext_append): Remove nested functions. - -2013-03-02 Vladimir Serbinenko - - * grub-core/normal/charset.c (grub_bidi_logical_to_visual): Add - hook pass-through parameter. All users updated and unnested. - -2013-03-02 Vladimir Serbinenko - - * grub-core/commands/loadenv.c (grub_cmd_list_env): Move print_var - out of its parent. - -2013-03-02 Vladimir Serbinenko - - * grub-core/fs/hfs.c: Remove nested functions. - -2013-03-01 Vladimir Serbinenko - - * grub-core/fs/hfsplus.c (grub_hfsplus_btree_iterate_node): Pass - the context through. - (grub_hfsplus_iterate_dir): Move nested function out of its parent. - -2013-03-01 Vladimir Serbinenko - - * util/grub-editenv.c (list_variables): Move print_var out of its - parent. - -2013-03-01 Vladimir Serbinenko - - * grub-core/kern/emu/hostdisk.c (read_device_map): Remove nested - function. - -2013-03-01 Vladimir Serbinenko - - * grub-core/gentrigtables.c: Make tables const. - -2013-03-01 Vladimir Serbinenko - - Remove nested functions from videoinfo iterators. - -2013-03-01 Vladimir Serbinenko - - * grub-core/loader/i386/pc/linux.c (grub_cmd_linux): Fix compilation - for 64-bit platforms. - -2013-03-01 Vladimir Serbinenko - - * grub-core/disk/efi/efidisk.c: Transform iterate_child_devices into - a FOR_CHILDREN macro. - -2013-03-01 Vladimir Serbinenko - - * grub-core/kern/main.c (grub_set_prefix_and_root): Strip trailing - platform from firmware path. - -2013-02-28 Vladimir Serbinenko - - Enable linux16 on non-BIOS systems for i.a. memtest. - - * grub-core/loader/i386/pc/linux.c (grub_cmd_linux): Handle hole at 0 - correctly. - * grub-core/Makefile.core.def (linux16): Enable on all x86 flavours. - -2013-02-28 Vladimir Serbinenko - - * grub-core/kern/i386/coreboot/mmap.c (grub_linuxbios_table_iterate): - Fix end of table condition. - -2013-02-28 Vladimir Serbinenko - - * grub-core/lib/arg.c (grub_arg_show_help): Move showargs - out of its parent. - -2013-02-28 Vladimir Serbinenko - - * grub-core/fs/jfs.c: Remove nested functions. - -2013-02-28 Vladimir Serbinenko - - * grub-core/fs/minix.c: Remove nested functions. - -2013-02-28 Vladimir Serbinenko - - * grub-core/fs/iso9660.c: Remove nested functions. - -2013-02-28 Vladimir Serbinenko - - * grub-core/commands/parttool.c (grub_cmd_parttool): Move show_help out - of parent function. - -2013-02-28 Vladimir Serbinenko - - * util/grub-fstest.c: Remove nested functions. - -2013-02-27 Vladimir Serbinenko - - * grub-core/loader/machoXX.c: Remove nested functions. - -2013-02-27 Colin Watson - - Remove nested functions from disk and file read hooks. - - * include/grub/disk.h (grub_disk_read_hook_t): New type. - (struct grub_disk): Add read_hook_data member. - * include/grub/file.h (struct grub_file): Likewise. - * include/grub/fshelp.h (grub_fshelp_read_file): Add read_hook_data - argument. - - Update all callers. - -2012-02-27 Andrey Borzenkov - - * grub-core/partmap/msdos.c (grub_partition_msdos_iterate): - Fix off by one error in enumerating extended partitions. - -2013-02-26 Andrey Borzenkov - - * grub-core/disk/efi/efidisk.c(grub_efidisk_get_device_name): Fix - memory leak if device name is not found. - -2013-02-25 Andrey Borzenkov - - * grub-core/normal/menu_entry.c (update_screen): remove - unused variable `off' which caused scroll down arrow to be always shown. - -2013-02-25 Andrey Borzenkov - - * grub-core/normal/menu_entry.c (insert_string): fix off by one - access to unallocated memory. - -2013-02-25 Andrey Borzenkov - - * Makefile.util.def: Add partmap/msdos.c to common library. - * include/grub/msdos_partition.h: Add GRUB_PC_PARTITION_TYPE_LDM - * grub-core/disk/ldm.c: Check for existence of - GRUB_PC_PARTITION_TYPE_LDM. - -2013-02-25 Vladimir Serbinenko - - * grub-core/normal/misc.c (grub_normal_print_device_info): Use KiB to display - sizes and display sector size. - -2013-02-24 Vladimir Serbinenko - - Implement new command cmosdump. - -2013-02-19 Paulo Flabiano Smorigo - - Support Openfirmware disks with non-512B sectors. - - * grub-core/disk/ieee1275/ofdisk.c (grub_ofdisk_open): Get the block - size of the disk. - * (grub_ofdisk_get_block_size): New function. - * (grub_ofdisk_prepare): Use the correct block size. - * (grub_ofdisk_read): Likewise. - * (grub_ofdisk_write): Likewise. - * include/grub/ieee1275/ofdisk.h (grub_ofdisk_get_block_size): - New proto. - -2013-02-06 Vladimir Serbinenko - - * grub-core/commands/lsacpi.c: Fix types on 64-bit platform. - -2013-02-04 Vladimir Serbinenko - - * grub-core/disk/cryptodisk.c (grub_cryptodisk_scan_device): Don't stop - on first error. - -2013-02-01 Vladimir Serbinenko - - * grub-core/fs/fshelp.c (find_file): Set oldnode to zero after - freeing it. - -2013-02-01 Vladimir Serbinenko - - Implement USBDebug (full USB stack variant). - -2013-02-01 Vladimir Serbinenko - - * grub-core/commands/lsacpi.c: Show more info. Hide some boring parts - unless they have unexpected values. - -2013-02-01 Vladimir Serbinenko - - * grub-core/bus/usb/usb.c (grub_usb_device_attach): Add missing - grub_print_error. - -2013-02-01 Vladimir Serbinenko - - * grub-core/bus/usb/serial/common.c (grub_usbserial_attach): Fix missing - zero-out of port structure. - -2013-01-30 Vladimir Serbinenko - - * grub-core/fs/xfs.c (grub_xfs_read_block): Fix computation in presence - of extended attributes. - -2013-01-27 Andrey Borzenkov - - * util/grub-install.in: change misleading comment about - device.map creation - -2013-01-27 Vladimir Serbinenko - - * grub-core/normal/menu_text.c (grub_menu_init_page): Fix behaviour - when menu highlight color isn't set. - -2013-01-27 C. Masloch - - Improve FreeDOS direct loading support compatibility. - - * include/grub/i386/relocator.h (grub_relocator16_state): - New member ebp. - * grub-core/lib/i386/relocator.c (grub_relocator16_ebp): New extern - variable. - (grub_relocator16_boot): Handle %ebp. - * grub-core/lib/i386/relocator16.S: Likewise. - * grub-core/loader/i386/pc/freedos.c: - Load BPB to pass kernel which partition to load from. - Check that kernel file is not too large. - Set register dl to BIOS unit number as well. - -2013-01-22 Colin Watson - - * util/grub-reboot.in (usage): Document the need for - GRUB_DEFAULT=saved. - * util/grub-set-default.in (usage): Likewise. - Reported by: Brian Candler. Fixes Ubuntu bug #1102925. - -2013-01-21 Vladimir Serbinenko - - * grub-core/lib/libgcrypt_wrap/cipher_wrap.h: Include sys/types.h rather - than defining WORDS_BIGENDIAN manually. - -2013-01-21 Vladimir Serbinenko - - * include/grub/kernel.h (FOR_MODULES): Adjust to preserve alignment - invariants. - -2013-01-21 Colin Watson - - * grub-core/font/font.c (blit_comb: do_blit): Make static instead of - nested. - (blit_comb: add_device_width): Likewise. - -2013-01-21 Colin Watson - - Remove nested functions from USB iterators. - - * include/grub/usb.h (grub_usb_iterate_hook_t): New type. - (grub_usb_controller_iterate_hook_t): Likewise. - (grub_usb_iterate): Add hook_data argument. - (grub_usb_controller_iterate): Likewise. - (struct grub_usb_controller_dev.iterate): Likewise. - - Update all implementations and callers. - -2013-01-21 Vladimir Serbinenko - - * grub-core/normal/term.c (print_ucs4_terminal): Don't output right - margin when not needed. - -2013-01-21 Vladimir Serbinenko - - Make color variables global instead of it being per-terminal. - -2013-01-21 Vladimir Serbinenko - - * grub-core/commands/ls.c (grub_ls_print_devices): Add missing - asterisk. - -2013-01-21 Colin Watson - - Fix powerpc and sparc64 build failures caused by un-nesting memory - map iterators. - -2013-01-21 Colin Watson - - * grub-core/disk/arc/arcdisk.c (grub_arcdisk_iterate): Fix - parameter declarations. - -2013-01-21 Vladimir Serbinenko - - * grub-core/commands/lsmmap.c: Fix unused variable on emu. - -2013-01-21 Vladimir Serbinenko - - Improve spkmomdem reliability by adding a separator between bytes. - -2013-01-21 Colin Watson - - * grub-core/partmap/msdos.c (embed_signatures): Add the signature of - an Acer registration utility with several sightings in the wild. - Reported by: Rickard Westman. Fixes Ubuntu bug #987022. - -2013-01-21 Colin Watson - - Remove nested functions from filesystem directory iterators. - - * include/grub/fs.h (grub_fs_dir_hook_t): New type. - (struct grub_fs.dir): Add hook_data argument. - - Update all implementations and callers. - -2013-01-21 Colin Watson - - * docs/grub.texi (Multi-boot manual config): Fix typo for - "recommended". - -2013-01-20 Leif Lindholm - - * util/grub-mkimage.c (main): Postpone freeing arguments.output - until after its use in generate_image. - -2013-01-20 Colin Watson - - * grub-core/loader/i386/linux.c (grub_cmd_initrd): Don't add the - initrd size to addr_min, since the initrd will be allocated after - this address. - -2013-01-20 Andrey Borzenkov - - * conf/Makefile.common: Fix autogen rules to pass definition - files on stdin; Makefile.util.am needs Makefile.utilgcry.def - -2013-01-20 Leif Lindholm - - * include/grub/elf.h: Update ARM definitions based on binutils. - -2013-01-20 AleÅ¡ Nesrsta - - Split long USB transfers into short ones. - -2013-01-20 Andrey Borzenkov - - * docs/grub.texi (Simple configuration): Clarify GRUB_HIDDEN_TIMEOUT - is interrupted by ESC. - -2013-01-20 Vladimir Serbinenko - - * util/grub-script-check.c (main): Uniform the error message. - -2013-01-20 Colin Watson - - Remove nested functions from ELF iterators. - -2013-01-20 Colin Watson - - Remove nested functions from device iterators. - - * include/grub/arc/arc.h (grub_arc_iterate_devs_hook_t): New type. - (grub_arc_iterate_devs): Add hook_data argument. - * include/grub/ata.h (grub_ata_dev_iterate_hook_t): New type. - (struct grub_ata_dev.iterate): Add hook_data argument. - * include/grub/device.h (grub_device_iterate_hook_t): New type. - (grub_device_iterate): Add hook_data argument. - * include/grub/disk.h (grub_disk_dev_iterate_hook_t): New type. - (struct grub_disk_dev.iterate): Add hook_data argument. - (grub_disk_dev_iterate): Likewise. - * include/grub/gpt_partition.h (grub_gpt_partition_map_iterate): - Likewise. - * include/grub/msdos_partition.h (grub_partition_msdos_iterate): - Likewise. - * include/grub/partition.h (grub_partition_iterate_hook_t): New - type. - (struct grub_partition_map.iterate): Add hook_data argument. - (grub_partition_iterate): Likewise. - * include/grub/scsi.h (grub_scsi_dev_iterate_hook_t): New type. - (struct grub_scsi_dev.iterate): Add hook_data argument. - - Update all callers. - -2013-01-20 Colin Watson - - Fix typos for "developer" and "development". - -2013-01-18 Vladimir Serbinenko - - Add license header to spkmodem-recv.c. - -2013-01-17 Vladimir Serbinenko - - Rewrite spkmodem to use PIT for timing. Double the speed. - -2013-01-16 Vladimir Serbinenko - - Add new command pcidump. - -2013-01-16 Vladimir Serbinenko - - New terminal outputs using serial: morse and spkmodem. - -2013-01-16 Vladimir Serbinenko - - Improve bidi handling in entry editor. - -2013-01-16 Vladimir Serbinenko - - * grub-core/script/lexer.c (grub_script_lexer_init): Rename getline - argument to prevent name collision. - -2013-01-15 Colin Watson - - Remove nested functions from script reading and parsing. - - * grub-core/kern/parser.c (grub_parser_split_cmdline): Add - getline_data argument, passed to getline. - * grub-core/kern/rescue_parser.c (grub_rescue_parse_line): Add - getline_data argument, passed to grub_parser_split_cmdline. - * grub-core/script/lexer.c (grub_script_lexer_yywrap): Pass - lexerstate->getline_data to lexerstate->getline. - (grub_script_lexer_init): Add getline_data argument, saved in - lexerstate->getline_data. - * grub-core/script/main.c (grub_normal_parse_line): Add getline_data - argument, passed to grub_script_parse. - * grub-core/script/script.c (grub_script_parse): Add getline_data - argument, passed to grub_script_lexer_init. - * include/grub/parser.h (grub_parser_split_cmdline): Update - prototype. Update all callers to pass appropriate getline data. - (struct grub_parser.parse_line): Likewise. - (grub_rescue_parse_line): Likewise. - * include/grub/reader.h (grub_reader_getline_t): Add void * - argument. - * include/grub/script_sh.h (struct grub_lexer_param): Add - getline_data member. - (grub_script_parse): Update prototype. Update all callers to pass - appropriate getline data. - (grub_script_lexer_init): Likewise. - (grub_normal_parse_line): Likewise. - - * grub-core/commands/legacycfg.c (legacy_file_getline): Add unused - data argument. - * grub-core/kern/parser.c (grub_parser_execute: getline): Make - static instead of nested. Rename to ... - (grub_parser_execute_getline): ... this. - * grub-core/kern/rescue_reader.c (grub_rescue_read_line): Add unused - data argument. - * grub-core/normal/main.c (read_config_file: getline): Make static - instead of nested. Rename to ... - (read_config_file_getline): ... this. - (grub_normal_read_line): Add unused data argument. - * grub-core/script/execute.c (grub_script_execute_sourcecode: - getline): Make static instead of nested. Rename to ... - (grub_script_execute_sourcecode_getline): ... this. - * util/grub-script-check.c (main: get_config_line): Make static - instead of nested. - -2013-01-15 Colin Watson - - Remove nested functions from memory map iterators. - - * grub-core/efiemu/mm.c (grub_efiemu_mmap_iterate): Add hook_data - argument, passed to hook. - * grub-core/kern/i386/coreboot/mmap.c - (grub_linuxbios_table_iterate): Likewise. - (grub_machine_mmap_iterate: iterate_linuxbios_table): Make static - instead of nested. - (grub_machine_mmap_iterate): Add hook_data argument. - * grub-core/kern/i386/multiboot_mmap.c (grub_machine_mmap_iterate): - Add hook_data argument, passed to hook. - * grub-core/kern/i386/pc/mmap.c (grub_machine_mmap_iterate): - Likewise. - * grub-core/kern/i386/qemu/mmap.c (grub_machine_mmap_iterate): - Likewise. - * grub-core/kern/ieee1275/mmap.c (grub_machine_mmap_iterate): - Likewise. - * grub-core/kern/mips/arc/init.c (grub_machine_mmap_iterate): - Likewise. - * grub-core/kern/mips/loongson/init.c (grub_machine_mmap_iterate): - Likewise. - * grub-core/kern/mips/qemu_mips/init.c (grub_machine_mmap_iterate): - Likewise. - * grub-core/mmap/efi/mmap.c (grub_efi_mmap_iterate): Likewise. - (grub_machine_mmap_iterate): Likewise. - * grub-core/mmap/mmap.c (grub_mmap_iterate): Likewise. - * include/grub/efiemu/efiemu.h (grub_efiemu_mmap_iterate): Update - prototype. - * include/grub/memory.h (grub_memory_hook_t): Add data argument. - Remove NESTED_FUNC_ATTR from here and from all users. - (grub_mmap_iterate): Update prototype. - (grub_efi_mmap_iterate): Update prototype. Update all callers to - pass appropriate hook data. - (grub_machine_mmap_iterate): Likewise. - - * grub-core/commands/acpi.c (grub_acpi_create_ebda: find_hook): Make - static instead of nested. - * grub-core/commands/lsmmap.c (grub_cmd_lsmmap: hook): Likewise. - Rename to ... - (lsmmap_hook): ... this. - * grub-core/efiemu/mm.c (grub_efiemu_mmap_init: bounds_hook): - Likewise. - (grub_efiemu_mmap_fill: fill_hook): Likewise. - * grub-core/kern/i386/coreboot/init.c (grub_machine_init: - heap_init): Likewise. - * grub-core/kern/i386/pc/init.c (grub_machine_init: hook): Likewise. - Rename to ... - (mmap_iterate_hook): ... this. - * grub-core/kern/ieee1275/init.c (grub_claim_heap: heap_init): - Likewise. - * grub-core/lib/ieee1275/relocator.c - (grub_relocator_firmware_get_max_events: count): Likewise. - (grub_relocator_firmware_fill_events: fill): Likewise. Rename - to ... - (grub_relocator_firmware_fill_events_iter): ... this. - * grub-core/lib/relocator.c (grub_relocator_alloc_chunk_align: - hook): Likewise. Rename to ... - (grub_relocator_alloc_chunk_align_iter): ... this. - * grub-core/loader/i386/bsd.c (generate_e820_mmap: hook): Likewise. - Rename to ... - (generate_e820_mmap_iter): ... this. - * grub-core/loader/i386/linux.c (find_mmap_size: hook): Likewise. - Rename to ... - (count_hook): ... this. - (grub_linux_boot: hook): Likewise. Rename to ... - (grub_linux_boot_mmap_find): ... this. - (grub_linux_boot: hook_fill): Likewise. Rename to ... - (grub_linux_boot_mmap_fill): ... this. - * grub-core/loader/i386/multiboot_mbi.c (grub_fill_multiboot_mmap: - hook): Likewise. Rename to ... - (grub_fill_multiboot_mmap_iter): ... this. - * grub-core/loader/multiboot.c (grub_get_multiboot_mmap_count: - hook): Likewise. Rename to ... - (count_hook): ... this. - * grub-core/loader/multiboot_mbi2.c (grub_fill_multiboot_mmap: - hook): Likewise. Rename to ... - (grub_fill_multiboot_mmap_iter): ... this. - * grub-core/loader/powerpc/ieee1275/linux.c - (grub_linux_claimmap_iterate: alloc_mem): Likewise. - * grub-core/loader/sparc64/ieee1275/linux.c (alloc_phys: choose): - Likewise. Rename to ... - (alloc_phys_choose): ... this. - (determine_phys_base: get_physbase): Likewise. - * grub-core/mmap/i386/mmap.c (grub_mmap_malign_and_register: - find_hook): Likewise. - * grub-core/mmap/i386/pc/mmap.c (preboot: fill_hook): Likewise. - (malloc_hook: count_hook): Likewise. - * grub-core/mmap/i386/uppermem.c (grub_mmap_get_lower: hook): - Likewise. Rename to ... - (lower_hook): ... this. - (grub_mmap_get_upper: hook): Likewise. Rename to ... - (upper_hook): ... this. - (grub_mmap_get_post64: hook): Likewise. Rename to ... - (post64_hook): ... this. - * grub-core/mmap/mips/uppermem.c (grub_mmap_get_lower: hook): - Likewise. Rename to ... - (lower_hook): ... this. - (grub_mmap_get_upper: hook): Likewise. Rename to ... - (upper_hook): ... this. - * grub-core/mmap/mmap.c (grub_mmap_iterate: count_hook): Likewise. - (grub_mmap_iterate: fill_hook): Likewise. - (fill_mask): Pass addr and mask within a single struct. - (grub_cmd_badram: hook): Make static instead of nested. Rename - to ... - (badram_iter): ... this. - (grub_cmd_cutmem: hook): Likewise. Rename to ... - (cutmem_iter): ... this. - -2013-01-13 Vladimir Serbinenko - - * grub-core/kern/emu/hostdisk.c (read_device_map): Explicitly - delimit path in strings using quotes. - * util/getroot.c (grub_guess_root_devices): Likewise. - (grub_make_system_path_relative_to_its_root): Likewise. - * util/grub-probe.c (probe): Likewise. - * util/ieee1275/ofpath.c (find_obppath): Likewise. - (xrealpath): Likewise. - -2013-01-13 Vladimir Serbinenko - - Fix compilation with older compilers. - - * grub-core/Makefile.core.def (mpi): Add mpi-inline.c. - * grub-core/lib/libgcrypt_wrap/cipher_wrap.h: Remove redundant - declarations. - * grub-core/lib/posix_wrap/string.h: Include sys/types.h. - * grub-core/lib/posix_wrap/sys/types.h: Add common types. - * grub-core/lib/xzembed/xz_dec_lzma2.c (dict_put): Replace byte - identifier with b. - * grub-core/lib/xzembed/xz_dec_stream.c (dec_vli): Likewise. - * include/grub/crypto.h: Add type defines. - * util/import_gcrypth.sed: Remove duplicate type defines. - -2013-01-13 Vladimir Serbinenko - - New command list_trusted. - - * grub-core/commands/verify.c (grub_cmd_list): New function. - -2013-01-13 Colin Watson - - * util/grub-mkimage.c (generate_image): Fix "size of public key" - info message. - -2013-01-13 Colin Watson - - Remove nested functions from PCI iterators. - - * grub-core/bus/pci.c (grub_pci_iterate): Add hook_data argument, - passed to hook. Update all callers to pass appropriate hook data. - * grub-core/bus/emu/pci.c (grub_pci_iterate): Likewise. - * include/grub/pci.h (grub_pci_iteratefunc_t): Add data argument. - Remove NESTED_FUNC_ATTR from here and from all users. - (grub_pci_iterate): Update prototype. - * grub-core/bus/cs5536.c (grub_cs5536_find: hook): Make static - instead of nested. Rename to ... - (grub_cs5536_find_iter): ... this. - * grub-core/kern/efi/mm.c (stop_broadcom: find_card): Likewise. - * grub-core/kern/mips/loongson/init.c (init_pci: set_card): - Likewise. - * grub-core/kern/vga_init.c (grub_qemu_init_cirrus: find_card): - Likewise. - * grub-core/video/bochs.c (grub_video_bochs_setup: find_card): - Likewise. - * grub-core/video/cirrus.c (grub_video_cirrus_setup: find_card): - Likewise. - * grub-core/video/efi_uga.c (find_framebuf: find_card): Likewise. - * grub-core/video/radeon_fuloong2e.c - (grub_video_radeon_fuloong2e_setup: find_card): Likewise. - * grub-core/video/sis315pro.c (grub_video_sis315pro_setup: - find_card): Likewise. - * grub-core/video/sm712.c (grub_video_sm712_setup: find_card): - Likewise. - -2013-01-12 Vladimir Serbinenko - - * grub-core/commands/verify.c: Mark messages for translating. - -2013-01-12 Vladimir Serbinenko - - * grub-core/lib/libgcrypt_wrap/mem.c (gcry_x*alloc): Make out of memory - fatal. - -2013-01-12 Vladimir Serbinenko - - * grub-core/lib/libgcrypt_wrap/mem.c (_gcry_log_bug): Make gcrypt bugs - fatal. - -2013-01-12 Vladimir Serbinenko - - * autogen.sh: Do not try to delete nonexistant files. - * util/import_gcrypth.sed: Add some missing header removals. - -2013-01-12 Colin Watson - - Clean up dangling references to grub-setup. - Fixes Ubuntu bug #1082045. - - * docs/grub.texi (Images): Refer generally to grub-install rather - than directly to grub-setup. - (Installing GRUB using grub-install): Remove direct reference to - grub-setup. - (Device map) Likewise. - (Invoking grub-install): Likewise. - * docs/man/grub-install.h2m (SEE ALSO): Likewise. - * docs/man/grub-mkimage.h2m (SEE ALSO): Likewise. - * util/grub-install.in (usage): Likewise. - - * util/bash-completion.d/grub-completion.bash.in (_grub_setup): - Apply to grub-bios-setup and grub-sparc64-setup rather than to - grub-setup. - * configure.ac: Remove grub_setup output variable. - - * docs/man/grub-bios-setup.h2m (NAME): Change name from grub-setup - to grub-bios-setup. - * docs/man/grub-sparc64-setup.h2m (NAME): Change name from - grub-setup to grub-sparc64-setup. - -2013-01-11 Vladimir Serbinenko - - Import gcrypt public-key cryptography and implement signature checking. - -2013-01-10 Vladimir Serbinenko - - * grub-core/fs/ntfs.c: Ue more appropriate types. - * grub-core/fs/ntfscomp.c: Likewise. - * include/grub/ntfs.h: Likewise. - -2013-01-10 Vladimir Serbinenko - - Support Apple FAT binaries on non-Apple platforms. - - * include/grub/macho.h (GRUB_MACHO_FAT_EFI_MAGIC): New define. - * include/grub/i386/macho.h (GRUB_MACHO_CPUTYPE_IS_HOST_CURRENT): - Likewise. - * grub-core/loader/efi/chainloader.c (grub_cmd_chainloader): Parse - Apple FAT binaries. - -2013-01-10 Vladimir Serbinenko - - * grub-core/kern/disk.c (grub_disk_write): Fix sector number on 4K - sector devices. - -2013-01-07 Colin Watson - - * grub-core/io/bufio.c (grub_bufio_open): Use grub_zalloc instead of - explicitly zeroing elements. - * grub-core/io/gzio.c (grub_gzio_open): Likewise. - * grub-core/io/lzopio.c (grub_lzopio_open): Remove explicit zeroing - of elements in a structure already allocated using grub_zalloc. - * grub-core/io/xzio.c (grub_xzio_open): Likewise. - -2013-01-07 Colin Watson - - * docs/grub.texi (grub_cpu): New subsection. - (grub_platform): Likewise. - -2013-01-07 Vladimir Serbinenko - - * grub-core/fs/minix.c (grub_minix_read_file): Simplify arithmetics. - -2013-01-05 Vladimir Serbinenko - - * grub-core/fs/ext2.c (grub_ext2_read_block): Use shifts rather than - divisions. - -2013-01-05 Vladimir Serbinenko - - * grub-core/fs/ntfs.c: Eliminate useless divisions in favor of shifts. - * grub-core/fs/ntfscomp.c: Likewise. - * include/grub/ntfs.h (grub_ntfs_data): Replace spc with log_spc. - (grub_ntfs_comp): Likewise. - -2013-01-05 Vladimir Serbinenko - - * grub-core/fs/nilfs2.c (-grub_nilfs2_palloc_groups_per_desc_block): - Rename to ... - (grub_nilfs2_palloc_log_groups_per_desc_block): ... this. Return log - of groups_per_block. All users updated. - -2013-01-05 Vladimir Serbinenko - - * grub-core/disk/diskfilter.c (grub_diskfilter_write): Call - grub_error properly. - * grub-core/disk/ieee1275/nand.c (grub_nand_write): Likewise. - * grub-core/disk/loopback.c (grub_loopback_write): Likewise. - -2013-01-03 Vladimir Serbinenko - - * util/grub.d/10_kfreebsd.in: Correct the patch to zpool.cache as it's - always in /boot/zfs. - Reported by: Yuta Satoh. - -2013-01-03 Yuta Satoh - - * util/grub.d/10_kfreebsd.in: Fix improper references to grub-probe by - ${grub_probe} - -2013-01-03 Vladimir Serbinenko - - * configure.ac: Extend -Wno-trampolines to host. - -2013-01-03 Vladimir Serbinenko - - * grub-core/fs/iso9660.c (grub_iso9660_susp_iterate): Avoid hang if - entry->len = 0. - -2013-01-03 Colin Watson - - * docs/grub.texi (Invoking grub-mkrelpath): New section. - (Invoking grub-script-check): Likewise. - -2013-01-03 Colin Watson - - * docs/grub.texi (Invoking grub-mount): New section. - Reported by: Filipus Klutiero. Fixes Debian bug #666427. - -2013-01-02 Colin Watson - - * grub-core/tests/lib/test.c (grub_test_run): Return non-zero on - test failures, so that a failing unit test correctly causes 'make - check' to fail. - -2013-01-02 Colin Watson - - Fix failing printf test. - - * grub-core/kern/misc.c (grub_vsnprintf_real): Parse '-', '.', and - '$' in the correct order when collecting type information. - -2013-01-02 Colin Watson - - * docs/grub.texi (configfile): Explain environment variable - handling. - (source): New section. - Reported by: Arbiel Perlacremaz. Fixes Savannah bug #35564. - -2012-12-31 Colin Watson - - Remove several trivially-unnecessary uses of nested functions. - - * grub-core/commands/i386/pc/sendkey.c - (grub_cmd_sendkey: find_key_code, find_ascii_code): Make static - instead of nested. - * grub-core/commands/legacycfg.c (legacy_file: getline): Likewise. - Rename to ... - (legacy_file_getline): ... this. - * grub-core/commands/loadenv.c (grub_cmd_load_env: set_var): - Likewise. - * grub-core/kern/corecmd.c (grub_core_cmd_set: print_env): Likewise. - * grub-core/kern/fs.c (grub_fs_probe: dummy_func): Likewise. Rename - to ... - (probe_dummy_iter): ... this. - * grub-core/kern/i386/coreboot/mmap.c - (grub_linuxbios_table_iterate: check_signature): Likewise. - * grub-core/kern/parser.c (grub_parser_split_cmdline: - check_varstate): Likewise. Mark inline. - * grub-core/lib/arg.c (find_short: fnd_short): Likewise. Pass - an additional parameter. - (find_long: fnd_long): Likewise. Pass two additional parameters. - * grub-core/lib/crc.c (init_crc32c_table: reflect): Likewise. - * grub-core/lib/crc64.c (init_crc64_table: reflect): Likewise. - * grub-core/lib/ieee1275/cmos.c (grub_cmos_find_port: hook): - Likewise. Rename to ... - (grub_cmos_find_port_iter): ... this. - * grub-core/lib/ieee1275/datetime.c (find_rtc: hook): Likewise. - Rename to ... - (find_rtc_iter): ... this. - - * grub-core/normal/menu_entry.c (run): Fold nested editor_getsource - function directly into the function body, since it is only called - once. - -2012-12-30 Colin Watson - - * grub-core/bus/usb/ehci.c (grub_ehci_pci_iter): Remove incorrect - __attribute__ ((unused)). - * grub-core/video/bochs.c (find_card): Likewise. - * grub-core/video/cirrus.c (find_card): Likewise. - * grub-core/video/radeon_fuloong2e.c (find_card): Likewise. - * grub-core/video/sis315pro.c (find_card): Likewise. - * grub-core/video/sm712.c (find_card): Likewise. - -2012-12-28 Colin Watson - - * util/grub-mkconfig.in: Accept GRUB_TERMINAL_OUTPUT=vga_text. - Fixes Savannah bug #37821. - -2012-12-28 Colin Watson - - Apply program name transformations at build-time rather than at - run-time. Fixes Debian bug #696465. - - * acinclude.m4 (grub_TRANSFORM): New macro. - * configure.ac: Create output variables with transformed names for - most programs. - * util/bash-completion.d/grub-completion.bash.in: Use - pre-transformed variables for program names. - * util/grub-install.in: Likewise. - * util/grub-kbdcomp.in: Likewise. - * util/grub-mkconfig.in: Likewise. - * util/grub-mkconfig_lib.in: Likewise. - * util/grub-mknetdir.in: Likewise. - * util/grub-mkrescue.in: Likewise. - * util/grub-mkstandalone.in: Likewise. - * util/grub-reboot.in: Likewise. - * util/grub-set-default.in: Likewise. - * util/powerpc/ieee1275/grub-mkrescue.in: Likewise. - * tests/util/grub-shell-tester.in: Remove unused assignment. - * tests/util/grub-shell.in: Likewise. - * util/grub.d/00_header.in: Likewise. - -2012-12-28 Colin Watson - - Backport gnulib fixes for C11. Fixes Savannah bug #37738. - - * grub-core/gnulib/stdio.in.h (gets): Warn on use only if - HAVE_RAW_DECL_GETS. - * m4/stdio_h.m4 (gl_STDIO_H): Check for gets. - -2012-12-11 Vladimir Serbinenko - - * util/grub.d/20_linux_xen.in: Addmissing assignment to machine. - Reported by: Eriks Latosheks . - -2012-12-10 Vladimir Serbinenko - - * docs/grub.texi (Network): Update instructions on generating netboot - image. - -2012-12-10 Vladimir Serbinenko - - * grub-core/disk/cryptodisk.c (grub_cmd_cryptomount): Strip brackets - around device name if necessarry. - -2012-12-10 Paulo Flabiano Smorigo - - * util/grub-install.in: Follow the symbolic link parameter added - to the file command. - -2012-12-10 Andrey Borzenkov - - * util/grub-install.in: Remove stale TODO. - -2012-12-10 Paulo Flabiano Smorigo - - * grub-core/kern/ieee1275/init.c (grub_machine_get_bootlocation): Use - dynamic allocation for the bootpath buffer. - -2012-12-10 Dr. Tilmann Bubeck - - * grub-core/gfxmenu/view.c (init_terminal): Avoid making terminal - window too small. - -2012-12-10 Vladimir Serbinenko - - * grub-core/term/gfxterm.c (grub_virtual_screen_setup): Get font as - argument rather than font name. All users updated. - (grub_gfxterm_set_window): Likewise. - -2012-12-10 Vladimir Testov - - * util/grub-mkfont.c (argp_parser): Fix a typo which prevented --asce - from working. - -2012-12-10 Vladimir Serbinenko - - * util/getroot.c (convert_system_partition_to_system_disk): Support - nbd disks. - -2012-12-10 Vladimir Serbinenko - - * grub-core/fs/ufs.c (grub_ufs_dir): Stop if direntlen is 0 to avoid - infinite loop on corrupted FS. - -2012-12-08 Vladimir Serbinenko - - Fix big-endian mtime. - - * grub-core/fs/ufs.c (grub_ufs_inode): Split improperly attached - together sec and usec. - (grub_ufs_dir): Use correct byteswapping for UFS time. - -2012-12-08 Vladimir Serbinenko - - Support big-endian UFS1. - - * Makefile.util.def (libgrubmods): Add ufs_be.c - * grub-core/Makefile.core.def (ufs1_be): New module. - * grub-core/fs/ufs_be.c: New file. - * grub-core/fs/ufs.c: Declare grub_ufs_to_le* and use them throughout - the file. - -2012-11-28 Leif Lindholm - - * include/grub/types.h: Fix functionality unaffecting typo in - GRUB_TARGET_WORDSIZE conditional macro. - -2012-11-28 Paulo Flabiano Smorigo - - * grub-core/net/bootp.c (parse_dhcp_vendor): Fix double increment. - -2012-10-28 Grégoire Sutre - - * util/grub.d/10_netbsd.in: Fix tab indentation and make sure - that /netbsd appears first (when it exists). - -2012-10-12 Christoph Junghans - - * grub-core/Makefile.am (moddep.lst): Use $(AWK) rather than awk. - Fixes Savannah bug #37558. - -2012-10-12 Colin Watson - - * grub-core/commands/configfile.c (GRUB_MOD_INIT): Correct - description of extract_entries_configfile. - -2012-10-05 Colin Watson - - * grub-core/loader/i386/linux.c (allocate_pages): Fix spelling of - preferred_address. - (grub_cmd_linux): Likewise. - * grub-core/net/icmp6.c (struct prefix_option): Fix spelling of - preferred_lifetime. Update all users. - -2012-09-26 Colin Watson - - * Makefile.util.def (grub-mknetdir): Move to $prefix/bin. - Reported by: Daniel Kahn Gillmor. Fixes Debian bug #688799. - -2012-09-26 Colin Watson - - * util/grub-mkconfig_lib.in (is_path_readable_by_grub): Redirect - errors from grub-probe to /dev/null, not stdout. - -2012-09-26 Vladimir Serbinenko - - * grub-core/fs/affs.c (grub_affs_mount): Support AFFS bootblock in - sector 1. - -2012-09-24 Colin Watson - - * util/grub-install.in: Make the error message if $source_dir - doesn't exist more useful. - -2012-09-22 Colin Watson - - Fix grub-emu build on FreeBSD. - - * Makefile.util.def (grub-mount): Add LIBGEOM to ldadd. - * grub-core/net/drivers/emu/emunet.c: Only include Linux-specific - headers on Linux. - (GRUB_MOD_INIT): Return immediately on non-Linux platforms; this - implementation is currently Linux-specific. - * util/getroot.c (exec_pipe): Define only on Linux or when either - libzfs or libnvpair is unavailable. - (find_root_devices_from_poolname): Remove unused path variable. - -2012-09-19 Colin Watson - - * grub-core/partmap/msdos.c (pc_partition_map_embed): Revert - incorrect off-by-one fix from 2011-02-12. A 62-sector core image - should fit before end == 63. - -2012-09-19 Colin Watson - - * util/grub-setup.c (write_rootdev): Remove unused core_img - parameter. Update all callers. - (setup): Define core_sectors only if GRUB_SETUP_BIOS, to appease - 'gcc -Wunused-but-set-variable'. Remove unnecessary nested #ifdef - GRUB_SETUP_BIOS. - -2012-09-18 Vladimir Serbinenko - - * util/grub-mkconfig_lib.in (grub_tab): New variable. - (grub_add_tab): New function. - * util/grub.d/10_hurd.in: Replace \t with $grub_tab orgrub_add_tab. - * util/grub.d/10_illumos.in: Likewise. - * util/grub.d/10_kfreebsd.in: Likewise. - * util/grub.d/10_linux.in: Likewise. - * util/grub.d/10_netbsd.in: Likewise. - * util/grub.d/10_windows.in: Likewise. - * util/grub.d/10_xnu.in: Likewise. - * util/grub.d/20_linux_xen.in: Likewise. - * util/grub.d/30_os-prober.in: Likewise. - -2012-09-18 Vladimir Serbinenko - - * grub-core/kern/ieee1275/cmain.c (grub_ieee1275_find_options): Set - GRUB_IEEE1275_FLAG_CURSORONOFF_ANSI_BROKEN on mac. - * grub-core/term/ieee1275/console.c (grub_console_init_lately): Use - ieee1275-nocursor if GRUB_IEEE1275_FLAG_CURSORONOFF_ANSI_BROKEN is set. - * grub-core/term/terminfo.c (grub_terminfo_set_current): Add new type - ieee1275-nocursor. - * include/grub/ieee1275/ieee1275.h (grub_ieee1275_flag): New value - GRUB_IEEE1275_FLAG_CURSORONOFF_ANSI_BROKEN. - -2012-09-18 Vladimir Serbinenko - - * grub-core/loader/i386/linux.c (grub_cmd_linux): Fix incorrect - le-conversion. - Reported by: BURETTE, Bernard. - -2012-09-17 Colin Watson - - * util/grub-mkconfig_lib.in (grub_quote): Remove outdated sentence - from comment. - -2012-09-14 Colin Watson - - * grub-core/term/terminfo.c: Only fix up powerpc key repeat on - IEEE1275 machines. Fixes powerpc-emu compilation. - * include/grub/terminfo.h: Likewise. - -2012-09-12 Vladimir Serbinenko - - * include/grub/efi/api.h (grub_efi_runtime_services): Make vendor_guid - a const pointer. - * grub-core/efiemu/runtime/efiemu.c (efiemu_memcpy): Make from a - const pointer. - (efiemu_set_variable): Make vendor_guid a const pointer. - -2012-09-12 Vladimir Serbinenko - - Don't require grub-mkconfig_lib to generate manpages for programs. - - * gentpl.py (manpage): Additional argument adddeps. Add adddeps to - dependencies, don't add grub-mkconfig_lib. - (program): Pass empty adddeps. - (script): Pass grub-mkconfig_lib as adddeps. - -2012-09-11 Vladimir Serbinenko - - * grub-core/disk/diskfilter.c (free_array) [GRUB_UTIL]: Fix memory leak. - * util/getroot.c (grub_find_device): Likewise. - (get_mdadm_uuid): Likewise. - (grub_util_is_imsm): Likewise. - (grub_util_pull_device): Likewise. - * util/grub-probe.c (probe): Likewise. - -2012-09-10 Benoit Gschwind - - * grub-core/loader/efi/appleloader.c (devpath_8): New var. - (devs): Add devpath_8. - -2012-09-08 Peter Jones - - * grub-core/Makefile.core.def (efifwsetup): New module. - * grub-core/commands/efi/efifwsetup.c: New file. - * grub-core/kern/efi/efi.c (grub_efi_set_variable): New function - * include/grub/efi/api.h (GRUB_EFI_OS_INDICATIONS_BOOT_TO_FW_UI): - New define. - * include/grub/efi/efi.h (grub_efi_set_variable): New proto. - -2012-09-05 Jiri Slaby - - * configure.ac: Add SuSe path. - -2012-09-05 Colin Watson - - * NEWS: Fix typo. - -2012-09-05 Colin Watson - - * util/import_gcry.py: Sort cipher_files, to make build system - generation more deterministic. - -2012-09-05 Vladimir Serbinenko - - * grub-core/disk/ieee1275/ofdisk.c (scan): Check function return value. - * grub-core/lib/ieee1275/datetime.c (grub_get_datetime): Likewise. - (grub_set_datetime): Likewise. - -2012-09-05 Vladimir Serbinenko - - * grub-core/script/yylex.l: Ignore unused-function and sign-compare - warnings. - -2012-09-05 Vladimir Serbinenko - - * grub-core/partmap/dvh.c (grub_dvh_is_valid): Add missing byteswap. - -2012-09-05 Vladimir Serbinenko - - * grub-core/fs/xfs.c (grub_xfs_read_block): Make keys a const pointer. - -2012-09-04 Colin Watson - - * Makefile.am (EXTRA_DIST): Add linguas.sh. It's only strictly - required for checkouts from bzr, but it may be useful for users or - distributors wishing to update translations against a tarball - distribution, and it can be helpful for the tarball to be a superset - of what's in bzr. - -2012-09-04 Colin Watson - - * Makefile.am (EXTRA_DIST): Add - grub-core/tests/boot/linux.init-mips.S, - grub-core/tests/boot/linux.init-ppc.S, and - grub-core/tests/boot/linux-ppc.cfg. - -2012-09-04 Colin Watson - - * grub-core/mmap/mips/loongson: Remove empty directory. - -2012-09-04 Colin Watson - - * docs/man/grub-mkdevicemap.h2m: Remove, since grub-mkdevicemap is - gone. - -2012-09-04 Colin Watson - - * .bzrignore: Add grub-bios-setup, grub-ofpathname, and - grub-sparc64-setup. - -2012-08-05 Grégoire Sutre - - * configure.ac: Strengthen the test for working -nostdinc -isystem. - -2012-07-31 Grégoire Sutre - - * po/POTFILES.in: Regenerated. - -2012-07-31 Grégoire Sutre - - * docs/grub.texi: Note that NetBSD/i386 is Multiboot-compliant. - (NetBSD): New subsection. - -2012-07-22 Ales Nesrsta - - * grub-core/bus/usb/ehci.c: PCI iter. - added PCI bus master setting. - * grub-core/bus/usb/ohci.c: PCI iter. - added PCI bus master setting. - -2012-07-22 Vladimir Serbinenko - - * util/grub-mkconfig_lib.in (grub_quote): Remove extra layer of escape. - * util/grub.d/10_hurd.in: Add missing quoting. - * util/grub.d/10_illumos.in: Likewise. - * util/grub.d/10_kfreebsd.in: Likewise. - * util/grub.d/10_linux.in: Likewise. - * util/grub.d/20_linux_xen.in: Likewise. - -2012-07-22 Vladimir Serbinenko - - New command `lsefi'. - - * grub-core/Makefile.core.def (lsefi): New module. - * grub-core/commands/efi/lsefi.c: New file. - * include/grub/efi/api.h: Add more GUIDs. - -2012-07-22 Vladimir Serbinenko - - * grub-core/loader/i386/bsd.c (grub_bsd_elf32_size_hook): Fix mask. - (grub_bsd_elf32_hook): Likewise. - (grub_bsd_elf64_size_hook): Likewise. - (grub_bsd_elf64_hook): Likewise. - (grub_bsd_load_elf): Likewise. - -2012-07-22 Vladimir Serbinenko - - * grub-core/lib/xzembed/xz_dec_stream.c (hash_validate): Fix behaviour - if hash function is unavailable. - (dec_stream_header): Likewise. - -2012-07-22 Vladimir Serbinenko - - * grub-core/normal/autofs.c (autoload_fs_module): Save and restore - filter state. - -2012-07-22 Vladimir Serbinenko - - Fix coreboot compilation. - - * grub-core/term/i386/pc/vga_text.c (grub_vga_text_init): Rename to ... - (grub_vga_text_init_real): ... this. - (grub_vga_text_fini): Rename to ... - (grub_vga_text_fini_real): ... this. - -2012-07-07 Vladimir Serbinenko - - * grub-core/Makefile.am: Fix path to boot/i386/pc/startup_raw.S. - -2012-07-02 Vladimir Serbinenko - - * grub-core/lib/legacy_parse.c: Support clear and testload. - -2012-07-02 Vladimir Serbinenko - - * grub-core/term/efi/serial.c: Support 1.5 stop bits. - -2012-07-02 Vladimir Serbinenko - - * grub-core/fs/ext2.c: Experimental support for 64-bit. - -2012-07-02 Vladimir Serbinenko - - * grub-core/net/tftp.c (ack): Fix endianness problem. - (tftp_receive): Likewise. - Reported by: Michael Davidsaver. - -2012-07-02 Vladimir Serbinenko - - * gentpl.py: Make mans depend on grub-mkconfig_lib. - -2012-07-02 Vladimir Serbinenko - - * include/grub/list.h (FOR_LIST_ELEMENTS_SAFE): New macro. - * include/grub/command.h (FOR_COMMANDS_SAFE): Likewise. - * grub-core/commands/help.c (grub_cmd_help): Use FOR_COMMANDS_SAFE. - -2012-07-02 Vladimir Serbinenko - - * grub-core/loader/i386/linux.c (find_efi_mmap_size): Don't decrease - efi_mmap_size. - Reported by: Stuart Hayes. - -2012-06-28 Vladimir Serbinenko - - Add monochrome text support (mda_text, aka `hercules' in grub-legacy). - - * grub-core/Makefile.core.def (mda_text): New module. - * grub-core/lib/legacy_parse.c (grub_legacy_parse): Support `hercules'. - * grub-core/term/i386/vga_common.c (grub_console_cur_color): Moved to .. - * grub-core/term/i386/pc/vga_text.c (cur_color): ... here - * grub-core/term/i386/pc/console.c (grub_console_cur_color): ... and - here. - * grub-core/term/i386/vga_common.c (grub_console_getwh): Moved to .. - * grub-core/term/i386/pc/vga_text.c (grub_console_getwh): ... here - * grub-core/term/i386/pc/console.c (grub_console_getwh): ... and - here. - * grub-core/term/i386/vga_common.c (grub_console_setcolorstate): Moved - to .. - * grub-core/term/i386/pc/vga_text.c (grub_console_setcolorstate): - ... here - * grub-core/term/i386/pc/console.c (grub_console_setcolorstate): ... and - here. - * grub-core/term/i386/vga_common.c: Removed. - * include/grub/i386/vga_common.h: Likewise. - * include/grub/vga.h (grub_vga_cr_bw_write): New function. - (grub_vga_cr_bw_read): Likewise. - * include/grub/vgaregs.h (GRUB_VGA_IO_CR_BW_INDEX): New enum value. - (GRUB_VGA_IO_CR_BW_DATA): Likewise. - * grub-core/term/i386/pc/vga_text.c [MODE_MDA]: Call - grub_vga_cr_bw_read/grub_vga_cr_bw_write instead of - grub_vga_cr_read/grub_vga_cr_write. - (grub_vga_text_setcolorstate) [MODE_MDA]: Ignore color. - -2012-06-27 Vladimir Serbinenko - - * configure.ac: Bump version to 2.00. - * grub-core/normal/main.c (features): Add feature_200_final. - -2012-06-27 Vladimir Serbinenko -2012-06-27 Jordan Uggla - - * NEWS: Fix unclarity and language mistakes. - -2012-06-27 Vladimir Serbinenko - - * grub-core/loader/i386/linux.c (find_efi_mmap_size): Increase - additional size to 3 pages. - Reported by: Stuart Hayes. - -2012-06-27 Vladimir Serbinenko - - * NEWS: Add 2.00 entry. - -2012-06-27 Vladimir Serbinenko - - * grub-core/commands/wildcard.c (check_file): Fix bad logic. - put explicit "/" for empty path. - (wildcard_expand): Improve dprintf. - -2012-06-27 Vladimir Serbinenko - - * grub-core/fs/fshelp.c (grub_fshelp_find_file): Don't free oldnode if - it's equal to currnode. This can happen with "" symlink. - -2012-06-27 Yves Blusseau - - * util/grub-mkconfig_lib.in: Fix print messages replacing builtin - echo shell command by printf command. - -2012-06-26 Vladimir Serbinenko - - * grub-core/term/arc/console.c (grub_console_init_output): Add one since - the value returned by firmware is the maximal position, not diumension. - (grub_terminfo_output_state): Use a more sane fallback. - -2012-06-26 Vladimir Serbinenko - - * grub-core/term/terminfo.c (print_terminfo): Print terminal dimensions. - -2012-06-26 Vladimir Serbinenko - - * grub-core/kern/mips/arc/init.c (grub_machine_init): Set clock - frequency to 150 MHz. - -2012-06-26 Vladimir Serbinenko - - Apple fixes. - - * grub-core/lib/i386/relocator16.S: Use correct __APPLE__ and not - __APPLE_ - * grub-core/lib/i386/relocator_common.S [__APPLE__]: Fix gdtdesc - definition. - * grub-core/lib/i386/relocator64.S [__APPLE__]: Assemble jmp manually. - -2012-06-26 Vladimir Serbinenko - - Handle slash in HFS label. - - * grub-core/fs/hfs.c (macroman_to_utf8): New argument slash_translate. - (grub_hfs_dir): Tanslate slash. - (grub_hfs_label): Don't translate slash. - -2012-06-26 Vladimir Serbinenko - - * grub-core/commands/ls.c (grub_ls_list_devices): Disable - network protocol listing since it introduces problematic dependency on - net module. - -2012-06-26 Vladimir Serbinenko - - * util/grub-mkimage.c (generate_image): Add Yeeloong verified hash. - -2012-06-26 Vladimir Serbinenko - - Init video early on yeeloong to avoid being rebooted by watchdog. - - * grub-core/Makefile.am (gensm712): New target. - (sm712_start.S): Likewise. - (boot/mips/loongson/fwstart.S): Depend on sm712_start.S - * grub-core/boot/mips/loongson/fwstart.S [!FULOONG2F]: Init SM712. - * grub-core/video/sm712.c [GENINIT]: Generate compact init procedure - description. - * include/grub/vga.h: Move registry definitions to... - * include/grub/vgaregs.h: ... here. - -2012-06-26 Vladimir Serbinenko - - * grub-core/boot/decompressor/minilib.c (grub_memcmp): Fix the compare - signedness. - -2012-06-25 Vladimir Serbinenko - - * util/grub-install.in: Fix dvhtool invocation. Add arc to the list of - platforms with firmware disk drivers in the core. - -2012-06-25 Vladimir Serbinenko - - * grub-core/disk/diskfilter.c (scan_disk) [GRUB_UTIL]: Put more - informative verbose message. - (read_lv): Handle 64-bit segment size. - -2012-06-25 Vladimir Serbinenko - - * grub-core/disk/lvm.c (grub_lvm_getvalue): Handle 64-bit values. - -2012-06-25 Vladimir Serbinenko - - * grub-core/fs/fat.c (grub_fat_iterate_dir_next): Don't stop on a space - character but still remove trainling spaces. - (grub_fat_label): Ignore archive flag. - -2012-06-25 Vladimir Serbinenko - - * grub-core/loader/i386/linux.c (grub_cmd_initrd): Avoid unnecessarry - cast between linux_kernel_header and linux_kernel_params. - -2012-06-25 Vladimir Serbinenko - - * include/grub/diskfilter.h (grub_raid5_recover_func_t): Use proper - type for size. - (grub_raid6_recover_func_t): Likewise. - * grub-core/disk/raid5_recover.c (grub_raid5_recover): Likewise. - * grub-core/disk/raid6_recover.c (grub_raid6_recover): Likewise. - -2012-06-25 Vladimir Serbinenko - - * util/grub-mkimage.c (generate_image): Add Fuloong2F verified hash. - -2012-06-25 Grégoire Sutre - - Fix overflow. - - * grub-core/kern/emu/hostdisk.c (grub_util_get_fd_size) - [__NetBSD__]: Add explicit cast before bitshift. - -2012-06-23 Vladimir Serbinenko - - * configure.ac: Bump to 2.00~rc1. - -2012-06-23 Vladimir Serbinenko - - * grub-core/boot/mips/loongson/fwstart.S: Add missing setting of high - half of $a0. - -2012-06-23 Vladimir Serbinenko -2012-06-23 Jordan Uggla - - * docs/grub.texi: Fix search syntax. - (Multi-boot manual config): Put msdos rather than GPT example. - Grammar corrections. - -2012-06-23 Vladimir Serbinenko - - * docs/grub.texi (Multi-boot manual config): Use --set. Improve remark. - -2012-06-22 Vladimir Serbinenko - - * grub-core/kern/mm.c (grub_free): Fix agglomerating of free regions. - -2012-06-22 Vladimir Serbinenko - - * grub-core/kern/mm.c (get_header_from_pointer): Put a more informative - message on double free. Put the value of magic in case of mismatch. - -2012-06-22 Vladimir Serbinenko - - Speed-up video on yeeloong. - - * grub-core/video/sm712.c (framebuffer): Remove render_target and - add cached_ptr. - (grub_video_sm712_video_fini): Unmap cached_ptr. - (grub_video_sm712_setup): Use cache address and grub_video_fb_setup. - (grub_video_sm712_set_active_render_target): Removed. - (grub_video_adapter): Use grub_video_fb_set_active_render_target. - (grub_video_sm712_swap_buffers): Call grub_video_fb_swap_buffers and - sync caches. - -2012-06-22 Vladimir Serbinenko - - Avoid flushing the same line multiple times on loongson. - - * grub-core/kern/mips/cache.S [GRUB_MACHINE_MIPS_LOONGSON]: - Step in 32 bytes and not 1 byte. - * grub-core/kern/mips/cache_flush.S [GRUB_MACHINE_MIPS_LOONGSON]: - Likewise. - -2012-06-22 Vladimir Serbinenko - - * util/getroot.c (grub_find_root_devices_from_mountinfo): Handle btrfs - subvolumes. - -2012-06-22 Vladimir Serbinenko - - Implement flow control for http. - - * grub-core/net/http.c (parse_line): Handle response 206. - (http_receive): Stall if too many packets are in the queue. - (http_establish): Fix range header. - (http_seek): Fix double free. - (http_close): Likewise. - (http_packets_pulled): New function. - (grub_http_protocol): Set http_seek - * grub-core/net/tcp.c (grub_net_tcp_socket): New field `i_stall'. - (ack_real): Set window depending on i_stall. - (grub_net_send_tcp_packet): Likewise. - (grub_net_tcp_stall): New function. - (grub_net_tcp_unstall): Likewise. - * include/grub/net/tcp.h (grub_net_tcp_stall): New proto. - (grub_net_tcp_unstall): Likewise. - -2012-06-22 Vladimir Serbinenko - - * grub-core/net/tftp.c: Decrease stall to 50 packets. - -2012-06-22 Vladimir Serbinenko - - * grub-core/net/net.c (grub_net_fs_open): Free resources on failed open. - -2012-06-22 Vladimir Serbinenko - - * tests/util/grub-shell.in: Fix a typo. - -2012-06-22 Vladimir Serbinenko - - Implement flow control for tftp. - - * grub-core/net/net.c (receive_packets): Decrease the stop to 10 - packets but stop only if stop condition is satisfied. - (grub_net_fs_read_real): Call packets_pulled after real read. Use - `stall' instead of `eof' as stop condition. - * grub-core/net/http.c (parse_line): Set `stall' on EOF. - (http_err): Likewise. - * grub-core/net/tftp.c (ack): Replace the first argument with data - instead of socket. - (tftp_receive): Stall if too many packets are in wait queue. - (tftp_packets_pulled): New function. - (grub_tftp_protocol): Set packets_pulled. - * include/grub/net.h (grub_net_packets): New field count. - (grub_net_put_packet): Increment count. - (grub_net_remove_packet): Likewise. - (grub_net_app_protocol): New field `packets_pulled'. - (grub_net): New field `stall'. - -2012-06-22 Vladimir Serbinenko - - * grub-core/net/net.c (receive_packets): Stop after 100 packets to let - sync part to handle them. - -2012-06-21 Vladimir Serbinenko - - * grub-core/kern/main.c (grub_set_prefix_and_root): Fix memory leak. - * grub-core/net/drivers/ieee1275/ofnet.c - (grub_ieee1275_net_config_real): Likewise. - -2012-06-21 Vladimir Serbinenko - - * grub-core/net/bootp.c (grub_net_configure_by_dhcp_ack): Don't create - the direct route for server/gateway. - -2012-06-21 Vladimir Serbinenko - - * grub-core/net/bootp.c (grub_net_configure_by_dhcp_ack): Prefer - IP address to server name since we may not hame the DNS. - -2012-06-21 Vladimir Serbinenko - - * grub-core/net/dns.c (grub_cmd_nslookup): Init addresses to 0 to avoid - freeing random buffer on failure. - * grub-core/net/net.c (grub_net_resolve_address): Likewise. - -2012-06-21 Vladimir Serbinenko - - * grub-core/net/bootp.c (grub_cmd_bootp): Fix packet allocation size. - -2012-06-21 Vladimir Serbinenko - - * grub-core/net/drivers/emu/emunet.c (get_card_packet): Allocate the - reserved bytes. - * grub-core/net/drivers/i386/pc/pxe.c (grub_pxe_recv): Likewise. - * grub-core/net/drivers/ieee1275/ofnet.c (get_card_packet): Likewise. - Handle malloc error correctly. - -2012-06-21 Vladimir Serbinenko - - * grub-core/script/execute.c (grub_script_arglist_to_argv): Escape - blocks. - -2012-06-21 Vladimir Serbinenko - - * grub-core/disk/ieee1275/ofdisk.c (grub_ofdisk_iterate): Fix double - increment. - -2012-06-20 Vladimir Serbinenko - - * grub-core/net/dns.c (grub_cmd_nslookup): Use configured DNS servers if - none is explicitly specified. - -2012-06-20 Vladimir Serbinenko - - * grub-core/net/dns.c (grub_net_add_dns_server): Don't erase old servers - while reallocating. - -2012-06-20 Vladimir Serbinenko - - Respect netmask from bootp/dhcp. - - * grub-core/net/bootp.c (parse_dhcp_vendor): Parse mask. - (grub_net_configure_by_dhcp_ack): Use mask and grub_net_add_ipv4_local. - * grub-core/net/net.c (grub_net_add_addr): Split creating local route - into ... - (grub_net_add_ipv4_local): ... this. - (grub_cmd_addaddr): Use grub_net_add_ipv4_local. - * include/grub/net.h (GRUB_NET_BOOTP_NETMASK): New enum value. - (grub_net_add_ipv4_local): New proto. - -2012-06-20 Vladimir Serbinenko - - * grub-core/loader/i386/linux.c (grub_linux_boot): Setup video before - determining EFI memory map size. - -2012-06-20 Vladimir Serbinenko - - * grub-core/disk/ieee1275/ofdisk.c (grub_ofdisk_iterate): Escape commas. - -2012-06-20 Vladimir Serbinenko - - * grub-core/kern/main.c (grub_set_prefix_and_root): Skip escaped commas - when looking for partition separator. - -2012-06-20 Vladimir Serbinenko - - * grub-core/kern/ieee1275/openfw.c (grub_ieee1275_encode_devname): - Escape commas. - -2012-06-20 Vladimir Serbinenko - - Restructure FAT driver to avoid hook in label reading as it hits a - GCC bug. - - * include/grub/err.h (grub_err_t): New enum value GRUB_ERR_EOF. - * grub-core/fs/fat.c (grub_fat_iterate_context): New struct. - (grub_fat_iterate_dir): Split into ... - (grub_fat_iterate_init): ... this, ... - (grub_fat_iterate_fini): ... this, ... - (grub_fat_iterate_dir_next): ... and this. All users updated. - -2012-06-20 Vladimir Serbinenko - - * include/grub/ieee1275/ieee1275.h (grub_ieee1275_flag): New enum value - GRUB_IEEE1275_FLAG_BROKEN_REPEAT. - * grub-core/kern/ieee1275/cmain.c (grub_ieee1275_find_options): Set - GRUB_IEEE1275_FLAG_BROKEN_REPEAT on PowerBook3,3. - * include/grub/terminfo.h (grub_terminfo_input_state) [__powerpc__]: - New fields last_key and last_key_time. - * grub-core/term/terminfo.c (grub_terminfo_getkey): Transform - extended key-esc into extended key-extended key. - -2012-06-19 Vladimir Serbinenko - - Avoid unnecessary memcpy of whole video buffer. - - * grub-core/video/fb/video_fb.c (dirty): New struct. - (framebuffer): Add members current_dirty and previous_dirty. - (dirty): New function. - (grub_video_fb_fill_rect): Update dirty. - (common_blitter): Likewise. - (grub_video_fb_scroll): Likewise. - (doublebuf_blit_update_screen): Copy only dirty part. - (doublebuf_pageflipping_update_screen): Likewise. - (grub_video_fb_doublebuf_blit_init): Init dirty. - (doublebuf_pageflipping_init): Likewise. - (grub_video_fb_setup): Likewise. - -2012-06-19 Vladimir Serbinenko - - * grub-core/net/drivers/ieee1275/ofnet.c (search_net_devices): Decrease - poll rate. - -2012-06-19 Vladimir Serbinenko - - Fix wildcard regexp dot and other special characters handling. - Reported by: Robert Mabee. - - * grub-core/commands/wildcard.c (isregexop): Add "|+{}[]?". - (make_regex): Escape "|+{}[]". Transform '?' to '.?'. - (split_path): Trigger expansion on '?'. - (unescape): New function. - (wildcard_expand): Unescape parts copied without globbing. - * grub-core/script/execute.c (wildcard_escape): Escape '?'. - (grub_script_arglist_to_argv): Don't unescape expansions. - -2012-06-19 Vladimir Serbinenko - - * include/grub/net.h (grub_net_card): New member txbufsize. - * include/grub/ieee1275/ieee1275.h (grub_ieee1275_flag): New enum values - GRUB_IEEE1275_FLAG_NO_OFNET_SUFFIX and - GRUB_IEEE1275_FLAG_VIRT_TO_REAL_BROKEN. - * grub-core/net/drivers/efi/efinet.c (grub_efinet_findcards): Use - txbufsize. - * grub-core/kern/ieee1275/cmain.c (grub_ieee1275_find_options): Use - compatible property to check for macs. Set - GRUB_IEEE1275_FLAG_NO_OFNET_SUFFIX and - GRUB_IEEE1275_FLAG_VIRT_TO_REAL_BROKEN on macs. - * grub-core/net/drivers/ieee1275/ofnet.c (card_open): Don't add suffix - if GRUB_IEEE1275_FLAG_NO_OFNET_SUFFIX is set. - (send_card_buffer): Use txbuf. - (grub_ofnet_findcards): Allocate txbuf. Simplify code flow and move - nested function out of the parent while on it. - -2012-06-19 Vladimir Serbinenko - - * grub-core/net/drivers/ieee1275/ofnet.c (get_card_packet): Fix packet - presence check. - (grub_ieee1275_net_config_real): Fix config pointer. - -2012-06-19 Vladimir Serbinenko - - * grub-core/kern/ieee1275/openfw.c (grub_ieee1275_parse_args): Extend - filename parsing to non-block devices. - -2012-06-19 Vladimir Serbinenko - - * grub-core/kern/device.c (grub_device_open): Remove dead code. - -2012-06-18 Vladimir Serbinenko - - * include/grub/elf.h: Rename R_PPC to GRUB_R_PPC to avoid collisions. - All users updated. - -2012-06-18 Vladimir Serbinenko - - * util/grub-mkconfig_lib.in (prepare_grub_to_access_device): Generate - UUID search command even if hints probing failed. - -2012-06-18 Vladimir Serbinenko - - * po/POTFILES.in: Regenerated. - -2012-06-17 Vladimir Serbinenko - - Speed-up video on fuloong. - - * grub-core/bus/bonito.c (grub_pci_device_map_range_cached): - New function. - (grub_pci_device_unmap_range): Handle non-cached address. - * grub-core/video/sis315pro.c (framebuffer): Remove render_target and - add direct_ptr. - (grub_video_sis315pro_video_fini): Unmap direct_ptr. - (grub_video_sis315pro_setup): Use cache address and grub_video_fb_setup. - (grub_video_sis315pro_set_active_render_target): Removed. - (grub_video_sis315pro_get_info_and_fini): Use uncached address. - (grub_video_adapter): Use grub_video_fb_set_active_render_target. - (grub_video_sis315pro_swap_buffers): Call grub_video_fb_swap_buffers and - sync caches. - * include/grub/mips/loongson/pci.h (grub_pci_device_map_range_cached): - New proto. - -2012-06-16 Vladimir Serbinenko - - * docs/grub.texi (Multi-boot manual config): New section. - -2012-06-15 Vladimir Serbinenko - - Avoid slow read-back from VRAM. - - * include/grub/video_fb.h (grub_video_fb_doublebuf_update_screen_t): - Move from here ... - * grub-core/video/fb/video_fb.c - (grub_video_fb_doublebuf_update_screen_t): ... here. Remove arguments. - * grub-core/video/fb/video_fb.c (framebuf_t): New type. - (front_target): Remove front_target. Add pages. - (grub_video_fb_init): Skip setting front_pages. - (grub_video_fb_fini): Likewise. - (doublebuf_blit_update_screen): Use pages. - (grub_video_fb_doublebuf_blit_init): Likewise. - (doublebuf_pageflipping_init): Allocate offscreen buffer. - (doublebuf_pageflipping_update_screen): Use offscreen buffer. - (grub_video_fb_setup): Prefer doublebuffing. - -2012-06-15 Vladimir Serbinenko - - * grub-core/normal/main.c (GRUB_MOD_INIT): Ignore errors when loading - gzio. - -2012-06-15 Vladimir Serbinenko - - Add loongson tests. - - * tests/util/grub-shell.in: Handle loongson. - * tests/partmap_test.in: Add loongson to the list of platform using ATA - drivers. - * grub-core/tests/boot/linux.init-mips.S (SHUTDOWN_MAGIC3) [REBOOT]: - Reboot instead of shutdown if REBOOT is defined. - -2012-06-15 Vladimir Serbinenko - - * grub-core/lib/mips/loongson/reboot.c (grub_reboot): Use 32-bit - sized ports since unlike on real hardware qemu supports only 32-bit - regs. - -2012-06-15 Vladimir Serbinenko - - * Makefile.util.def (grub-mkrescue): Enable on loongson. - * util/grub-mkrescue.in: Handle loongson. - -2012-06-14 Vladimir Serbinenko - - * util/getroot.c (convert_system_partition_to_system_disk) [__APPLE__]: - Set is_part appropriately. - (grub_util_biosdisk_get_grub_dev): Use is_part rather than comparing - names. Canonicalize partition without full disk. - -2012-06-13 Vladimir Serbinenko - - Revert usb-quiesce since it's wrong. - - * grub-core/disk/ieee1275/ofdisk.c (quiesce): Removed. - (grub_ofdisk_init): Don't do quiesce. - -2012-06-13 Vladimir Serbinenko - - * grub-core/kern/ieee1275/cmain.c (grub_ieee1275_find_options): Apply - PowerMac workaround to Xserves as well. - Information supplied by: Benjamin Herrenschmidt. - -2012-06-13 Vladimir Serbinenko - - Don't assume that beginning address is also the entry point on ppc. - - * grub-core/loader/powerpc/ieee1275/linux.c (linux_entry): New variable. - (grub_linux_boot): Use linux_entry. - (grub_linux_load32): Fill linux_entry. Fix setting linux_addr. - (grub_linux_load64): Likewise. - -2012-06-13 Vladimir Serbinenko - - * util/grub-install.in: Fix cross-disk check on non-PreP machines. - -2012-06-13 Vladimir Serbinenko - - * grub-core/term/ieee1275/console.c (grub_console_fini): Don't - needlessly lose the console. - -2012-06-13 Vladimir Serbinenko - - * grub-core/normal/dyncmd.c (read_command_list): Don't access freed - space. - -2012-06-11 Vladimir Serbinenko - - Remove non-functional EFI grub_get_rtc. Put a better fatal message - than current grub_get_rtc() not implemented when booted with - coreboot without TSC. - - * grub-core/Makefile.am: Exclude efi/time.h from kernel headers. - Add machine/time.h to kernel headers on loongson. - * grub-core/Makefile.core.def (kernel): Remove - kern/generic/rtc_get_time_ms.c on qemu-multiboot-coreboot. - * grub-core/kern/efi/efi.c (grub_rtc_get_time_ms): Removed. - (grub_get_rtc): Likewise. - * grub-core/kern/generic/rtc_get_time_ms.c: Include grub/machine/time.h. - * grub-core/kern/i386/coreboot/init.c (grub_get_rtc): Removed. - * grub-core/kern/i386/pc/init.c: Include grub/machine/init.h. - * grub-core/kern/i386/tsc.c (grub_tsc_init) - [!GRUB_MACHINE_PCBIOS && !GRUB_MACHINE_IEEE1275]: Call grub_fatal - rather than installing known non-working time source. - * grub-core/kern/ieee1275/init.c (grub_get_rtc): Removed. - * grub-core/kern/mips/loongson/init.c: Include grub/machine/time.h. - * include/grub/time.h: Don't include machine/time.h. - * include/grub/efi/time.h: Removed. - * include/grub/i386/efi/time.h: Likewise. - * include/grub/i386/ieee1275/time.h: Likewise. - * include/grub/powerpc/ieee1275/time.h: Likewise. - * include/grub/sparc64/ieee1275/time.h: Likewise. - * include/grub/x86_64/efi/time.h: Likewise. - -2012-06-11 Vladimir Serbinenko - - Remove dot on i and j when combining with above diacritics. - - * include/grub/unicode.h (GRUB_UNICODE_DOTLESS_LOWERCASE_I): New enum - value. - (GRUB_UNICODE_DOTLESS_LOWERCASE_J): Likewise. - * grub-core/font/font.c (grub_font_construct_dry_run): Replace i and j - with dotless variants when any combining above is present. - -2012-06-09 Vladimir Serbinenko - - * tests/grub_script_expansion.in: Explicitly tell grep that we handle - text and not binary. - -2012-06-09 Vladimir Serbinenko - - Stop polling as soon as we have the packet we were waiting for. - - * include/grub/net.h (grub_net_poll_cards): New argument stop_condition. - All users updated. - * grub-core/net/arp.c (have_pending): New var. - (pending_req): Likewise. - (grub_net_arp_send_request): Fill pending_req and use have_pending as - stop indicator. - (grub_net_arp_receive): Set have_pending. - * grub-core/net/dns.c (recv_data): New field stop. - (recv_hook): Set stop. - (grub_net_dns_lookup): Init stop and use as stop condition. - * grub-core/net/http.c (http_establish): Use headers_recv as stop - condition. - * grub-core/net/net.c (grub_net_poll_cards): New argument - stop_condition. Stop when it goes true. - * grub-core/net/tcp.c (grub_net_tcp_open): Use `established' as stop - indicator. - * grub-core/net/tftp.c (tftp_open): Use `have_oack' as stop indicator. - -2012-06-09 Vladimir Serbinenko - - Keep TX and RX buffers on EFI rather than always allocate new ones. - - * include/grub/net.h (grub_net_card_driver): Allow driver to modify - card. All users updated. - (grub_net_card): New members txbuf, rcvbuf, rcvbufsize and txbusy. - * grub-core/net/drivers/efi/efinet.c (send_card_buffer): Reuse buffer. - (get_card_packet): Likewise. - (grub_efinet_findcards): Init new fields. - -2012-06-09 Vladimir Serbinenko - - * grub-core/term/ieee1275/serial.c (do_real_config): Fix cast to fix - compilation error on sparc64. - -2012-06-09 Vladimir Serbinenko - - Use ITC on IA64 rather than broken routine based on daytime. - - * grub-core/kern/efi/efi.c (grub_rtc_get_time_ms) [__ia64__]: Remove on - ia64. - (grub_get_rtc) [__ia64__]: Likewise. - * grub-core/kern/ia64/efi/init.c (divisor): New variable. - (get_itc): New function. - (grub_rtc_get_time_ms): Likewise. - (grub_machine_init): Calibrate ITC. - * include/grub/efi/time.h (grub_get_rtc), (GRUB_TICKS_PER_SECOND): - Keep only on non-ia64. Don't export since it's broken and used only - if TSC is unavailable. - -2012-06-09 Vladimir Serbinenko - - * grub-core/disk/efi/efidisk.c (find_parent_device): Return the parent - even if it's used. - (name_devices): Replace #if 0 with #ifdef DEBUG_NAMES. - Skip if parent is unused. - -2012-06-08 Vladimir Serbinenko - - * tests/partmap_test.in: Skip on ppc due to serious firmware bug. - -2012-06-08 Vladimir Serbinenko - - Fix wildcard escaping. - - * grub-core/commands/wildcard.c (wildcard_escape): Moved from here ... - * grub-core/script/execute.c (wildcard_escape): .. to here. - Don't escape dot. - * grub-core/commands/wildcard.c (wildcard_unescape): Moved from here ... - * grub-core/script/execute.c (wildcard_unescape): .. to here. - Don't escape dot. - * grub-core/script/execute.c (gettext_append): Always escape. - (grub_script_arglist_to_argv): Always handle escaping/unescaping. - * grub-core/script/yylex.l: Don't cut away the escaping. - * tests/grub_script_echo1.in: Add tests with wildcard. - -2012-06-08 Vladimir Serbinenko - - * grub-core/bus/usb/serial/ftdi.c (real_config): Handle 1.5 stop bits. - (ftdi_hw_configure): Likewise. - * grub-core/bus/usb/serial/pl2303.c (GRUB_PL2303_STOP_BITS_1_5): New - define. - (real_config): Handle 1.5 stop bits. - (pl2303_hw_configure): Likewise. - -2012-06-08 Vladimir Serbinenko - - * Makefile.am: Add ppc linux bootcheck. - * grub-core/tests/boot/linux-ppc.cfg: New file. - * grub-core/tests/boot/linux.init-ppc.S: Likewise. - -2012-06-08 Vladimir Serbinenko - - * tests/grub_script_expansion.in: Skip network protocols. - -2012-06-08 Vladimir Serbinenko - - * tests/util/grub-shell.in: Use escc-ch-a port on ppc. - -2012-06-08 Vladimir Serbinenko - - * util/powerpc/ieee1275/grub-mkrescue.in: Handle (and ignore) - --rom-directory. - Add -graft-points. - -2012-06-08 Vladimir Serbinenko - - ESCC serial driver for conducting sautomated tests in qemu. - Not tested on real hardware. - - * include/grub/serial.h (grub_serial_port): New field escc_desc. - * grub-core/term/ieee1275/escc.c: New file. - * grub-core/Makefile.core.def (escc): New module. - -2012-06-08 Vladimir Serbinenko - - * grub-core/term/ieee1275/serial.c (do_real_config): Set handle to - invalid on error. - (serial_hw_fetch): Don't read invalid handle. - (serial_hw_put): Don't write into invalid handle. - -2012-06-08 Vladimir Serbinenko - - Add a 1.5 stop bits value. - - * grub-core/term/serial.c (grub_cmd_serial): Handle 1.5. - * include/grub/serial.h (grub_serial_stop_bits_t): Add - GRUB_SERIAL_STOP_BITS_1_5. - -2012-06-08 Vladimir Serbinenko - - * grub-core/commands/wildcard.c (wildcard_expand): Set default return - value rather than let it uninited. - -2012-06-07 Vladimir Serbinenko - - * grub-core/commands/wildcard.c (+check_file): New function. - (wildcard_expand): Don't expand to non-existing files, expand with - suffix and not attempt to expand if not needed. - -2012-06-07 Vladimir Serbinenko - - * grub-core/disk/efi/efidisk.c (name_devices): Don't make disks - out of partitions containing other partitions. - -2012-06-07 Vladimir Serbinenko - - Pass PCIINFO on BIOS to OpenBSD since otherwise it fails to boot - on some qemu versions with GRUB. - - * include/grub/i386/openbsd_bootarg.h (OPENBSD_BOOTARG_PCIBIOS): New - define. - (grub_openbsd_bootarg_pcibios): New struct. - * grub-core/loader/i386/bsd.c (grub_openbsd_boot) [GRUB_MACHINE_PCBIOS]: - Add PCIINFO. - -2012-06-07 Vladimir Serbinenko - - * tests/util/grub-shell.in: Trim firmware output on EFI. - -2012-06-07 Vladimir Serbinenko - - * grub-core/Makefile.core.def (vga_text): Disable on muliboot - and coreboot since it's already in kernel. - -2012-06-07 Vladimir Serbinenko - - * util/getroot.c (grub_util_get_dm_node_linear_info): Moved from here... - * grub-core/kern/emu/hostdisk.c (grub_util_get_dm_node_linear_info): - to here. New return value start. All users updated. - Recursively scan linear mappings. - * include/grub/emu/hostdisk.h (grub_util_get_dm_node_linear_info): New - proto. - * grub-core/kern/emu/hostdisk.c (grub_hostdisk_find_partition_start): - Use grub_util_get_dm_node_linear_info. - * util/getroot.c (convert_system_partition_to_system_disk): Use - grub_util_info rather than grub_dprintf. - (grub_util_biosdisk_get_grub_dev): Add a new grub_util_info. - -2012-06-07 Vladimir Serbinenko - - Move handling of GRUB_QEMU_OPTS to grub-shell so that make check works. - - * Makefile.am: Remove GRUB_QEMU_OPTS handling. - * tests/util/grub-shell.in: Add GRUB_QEMU_OPTS handling. - -2012-06-07 Vladimir Serbinenko - - * include/grub/types.h (grub_set_unaligned64): New function. - * util/grub-setup.c (write_rootdev): Use unaligned access functions. - (setup): Likewise. - -2012-06-06 Vladimir Serbinenko - - * grub-core/disk/ieee1275/ofdisk.c (quiesce): New function. - (grub_ofdisk_fini): Quiesce USB devices. - -2012-06-06 Vladimir Serbinenko - - * grub-core/loader/powerpc/ieee1275/linux.c (grub_linux_boot): Sync - caches. - -2012-06-06 Vladimir Serbinenko - - * util/grub-fstest.c (cmd_crc): Use grub_get_unaligned32 for safety. - -2012-06-06 Vladimir Serbinenko - - * grub-core/disk/pata.c (grub_pata_pio_read) - [GRUB_MACHINE_MIPS_QEMU_MIPS]: Don't byteswap even on mipseb. - (grub_pata_pio_write) [GRUB_MACHINE_MIPS_QEMU_MIPS]: Likewise. - -2012-06-06 Vladimir Serbinenko - - Extend automated tests to qemu-mips. - - * Makefile.am: reorganise tests and enable qemu-mips. - * configure.ac (COND_mipseb), (COND_mipsel): New conditions. - * grub-core/tests/boot/linux.init-mips.S: New file. - * tests/partmap_test.in: Handle ata0 disks. - * tests/util/grub-shell.in: Handle qemu-mips. Make defaults work on - non-pc i386. - -2012-06-06 Vladimir Serbinenko - - * Makefile.util.def (grub-mkrescue) Anable on mips_qemu_mips and - ia64. - * util/grub-mkrescue.in: Handle qemu-mips and ia64. Add missing - quotes while on it. - -2012-06-06 Vladimir Serbinenko - - * grub-core/kern/mips/qemu_mips/init.c (grub_exit): Implement. - (grub_halt): Likewise. - * grub-core/lib/mips/qemu_mips/reboot.c (grub_reboot): Likewise. - -2012-06-06 Vladimir Serbinenko - - * grub-core/term/serial.c (grub_serial_register) - [GRUB_MACHINE_MIPS_QEMU_MIPS]: Don't autostart console in order to bring - the behaviour in line with x86 platforms. - -2012-06-06 Vladimir Serbinenko - - * grub-core/commands/hdparm.c (le16_to_char): Always byte-swap strings. - (grub_ata_strncpy): Likewise. - (grub_ata_identify): Add missing byteswaps. - -2012-06-06 Vladimir Serbinenko - - * grub-core/term/i386/pc/vga_text.c (screen_write_char): Add missing - byte-swap. - (screen_read_char): Likewise. - (grub_vga_text_cls): Likewise. - -2012-06-06 Vladimir Serbinenko - - * grub-core/loader/efi/chainloader.c (copy_file_path): Handle non-ASCII - filenames. - (make_file_path): Likewise. - -2012-06-06 Vladimir Serbinenko - - * grub-core/disk/ieee1275/ofdisk.c (scan): Support vscsi on IBM - machines. - Tested by: Paulo Flabiano Smorigo. - Crucial information about API supplied by: Coleen . - Reviewed by: Coleen . - -2012-06-05 Vladimir Serbinenko - - * util/grub-mkimage.c: Disable -Wcast-align. - -2012-06-05 Vladimir Serbinenko - - * grub-core/genmod.sh.in: Enable objconv errors 2030, 2050 and 2031 - as they are fatal. - -2012-06-05 Vladimir Serbinenko - - * grub-core/Makefile.am (rs_decoder.S): Add missing -ffreestanding. - -2012-06-05 Vladimir Serbinenko - - * util/grub-probe.c (escape_of_path): Fix double free. - -2012-06-05 Vladimir Serbinenko - - * grub-core/commands/videoinfo.c (hook): Show pitch. - -2012-06-05 Vladimir Serbinenko - - * util/grub.d/20_linux_xen.in: Skip xen-syms. - -2012-06-05 Vladimir Serbinenko - - * util/grub-probe.c (escape_of_path): Don't add ieee1275/. - (probe): Add ieee1275 to OFW devices. - -2012-06-04 Vladimir Serbinenko - - * util/ieee1275/ofpath.c (of_path_of_scsi): Fix wrong format specifier. - -2012-06-04 Vladimir Serbinenko - - Handle IBM OFW path. - - * util/ieee1275/ofpath.c (find_obppath): Use devspec if obppath isn't - available. - (of_path_of_scsi): Handle vdevice. - -2012-06-03 Vladimir Serbinenko - - * grub-core/mmap/i386/pc/mmap.c (malloc_hook): - Allocate in multiples of 16 to avoid adding a few bytes free region the - windows bugs upon. - -2012-06-03 Vladimir Serbinenko - - * grub-core/commands/i386/pc/drivemap.c (install_int13_handler): - Allocate in multiples of 16 to avoid adding a few bytes free region the - windows bugs upon. - * grub-core/mmap/i386/pc/mmap.c (malloc_hook): Likewise. - -2012-06-02 Vladimir Serbinenko - - * grub-core/video/efi_gop.c (grub_video_gop_setup): Reject invalid - resolutions. - * grub-core/video/i386/pc/vbe.c (grub_vbe_get_preferred_mode): Likewise. - * grub-core/video/video.c (grub_video_edid_preferred_mode): Likewise. - -2012-06-02 Isao Shimizu - - * util/ieee1275/ofpath.c (check_sas): Fix sas path. - -2012-06-02 Vladimir Serbinenko - - * grub-core/normal/menu_entry.c (print_line): Fix off-by-one error which - resulted in \\ at the end of the line. - -2012-06-02 Vladimir Serbinenko - - * grub-core/kern/parser.c (grub_parser_state_transitions): Handle \t. - (grub_parser_cmdline_state): Likewise. - (grub_parser_split_cmdline): Likewise. - -2012-06-02 Vladimir Serbinenko - - * util/getroot.c (grub_guess_root_devices): Don't canonicalise - /dev/root and /dev/dm-*. - -2012-06-02 Vladimir Serbinenko - - * grub-core/normal/menu_entry.c (update_screen): Fix loop condition to - fix partially stale display. - -2012-06-02 Vladimir Serbinenko - - * grub-core/normal/menu_entry.c (backward_char): Use right line for - substraction. - -2012-06-02 Vladimir Serbinenko - - * grub-core/kern/emu/hostdisk.c (grub_util_biosdisk_write) [__linux__]: - Fix MBR remapping workaround. - (grub_util_biosdisk_read) [__linux__]: Likewise. - -2012-06-01 Vladimir Serbinenko - - * util/grub-install.in: Check for ieee1275 and not ieee1276. - -2012-05-31 Vladimir Serbinenko - - * configure.ac: Bump to beta6. - -2012-05-31 Christer Weinigel - - * grub-core/normal/main.c (grub_file_getline): Fix off-by-one error. - -2012-05-31 Vladimir Serbinenko - - * grub-core/loader/i386/linux.c (grub_linux_boot): Use right version. - (grub_cmd_linux): Likewise. - -2012-05-31 Christer Weinigel - - Fix EHCI low-speed. - - * grub-core/bus/usb/ehci.c (GRUB_EHCI_MULT_ONE): Fix the value. - (GRUB_EHCI_MULT_TWO): Likewise. - (GRUB_EHCI_MULT_THREE): Likewise. - (GRUB_EHCI_CMASK_MASK): New enum value. - (GRUB_EHCI_SMASK_MASK): Likewise. - (GRUB_EHCI_CMASK_OFF): Likewise. - (GRUB_EHCI_SMASK_OFF): Likewise. - (grub_ehci_pci_iter): Enable periodic schedule. - (grub_ehci_parse_notrun): Likewise. - (grub_ehci_restore_hw): Likewise. - (grub_ehci_setup_qh): Set flags for low speed transfers. - (grub_ehci_find_qh): Use periodic list for low speed. - (grub_ehci_setup_transfer): Check periodic queue as well. - (grub_ehci_check_transfer): Likewise. - (grub_ehci_cancel_transfer): Cancel periodic transfer. - -2012-05-31 Paulo Flabiano Smorigo - - * util/grub-install.in: Write core.elf in PReP even if the --no-nvram - parameter is used. - -2012-05-31 Peter Jones - - * include/grub/i386/linux.h (linux_kernel_params): Add v206. - * grub-core/loader/i386/linux.c (grub_linux_boot): Use v206. - (grub_cmd_linux) [__x86_64__]: Validate grub_efi_system_table. - -2012-05-31 Vladimir Serbinenko - - * grub-core/loader/i386/linux.c (grub_linux_boot): Fix overflow and - uninited variable. Allocate at least setup_sects. - -2012-05-30 Vladimir Serbinenko - - Fix handling of EFI with big memory maps. - - * grub-core/loader/i386/linux.c (GRUB_LINUX_CL_OFFSET): Removed. - (real_mode_mem): Likewise. - (real_mode_target): Likewise. - (real_mode_pages): Likewise. - (prot_mode_pages): Likewise. - (linux_params): New var. - (linux_cmdline): Likewise. - (free_pages): Don't set real mode variables. - (allocate_pages): Don't allocate real mode memory. - (grub_e820_add_region): Remove the limit. - (grub_linux_boot): Allocate and copy real mode memory. - (grub_linux_unload): Free linux_cmdline. - (grub_cmd_linux): Use temporary storage for parameters. - (grub_cmd_initrd): Likewise. - * include/grub/i386/linux.h (GRUB_E820_MAX_ENTRY): Removed. - (linux_kernel_params): Make it 1K big. - -2012-05-30 Vladimir Serbinenko - - * Makefile.util.def: Remove -Wno-format. - * grub-core/Makefile.core.def: Likewise. - -2012-05-30 Vladimir Serbinenko - - * tests/cmp_unit_test.c: Add missing failure message. - * tests/example_unit_test.c: Likewise. - * tests/printf_unit_test.c: Likewise. - -2012-05-30 Vladimir Serbinenko - - * grub-core/commands/gptsync.c (grub_cmd_gptsync): Propagate the - relaxation of protective MBR requirements. - -2012-05-29 Vladimir Serbinenko - - * configure.ac: Add condition for COND_HOST_XNU. - * Makefile.util.def (10_xnu): New script. - * util/grub.d/10_xnu.in: New file, extracted from 30_os_prober.in. - -2012-05-29 Vladimir Serbinenko - - * grub-core/kern/i386/pc/startup.S [__APPLE__]: Add a workaround for - objconv bug. - -2012-05-29 Vladimir Serbinenko - - * grub-core/gdb/i386/machdep.S: Make usable with Apple assembler. - Binary on other platforms stays identical. - -2012-05-28 Vladimir Serbinenko - - * configure.ac: Remove APPLE_CC and add -Wl,-allow_stack_execute on - Apple. - -2012-05-28 Vladimir Serbinenko - - * gentpl.py: Ignore error 2022 in objconv since it's irrelevant for us. - -2012-05-28 Vladimir Serbinenko - - * grub-core/lib/posix_wrap/sys/types.h [__APPLE__]: Include stddef - rather than defining size_t ourselves to avoid conflict. - -2012-05-28 Vladimir Serbinenko - - * grub-core/fs/hfs.c (grub_hfs_dir): Use memset instead of - initialisation to avoid __bzero reference. - -2012-05-28 Vladimir Serbinenko - - * grub-core/boot/i386/pc/startup_raw.S [__APPLE__]: Add Apple assembly - version. - * grub-core/commands/i386/pc/drivemap_int13h.S [__APPLE__]: Likewise. - * grub-core/kern/i386/pc/startup.S [__APPLE__]: Likewise. - * grub-core/lib/i386/relocator16.S [__APPLE__]: Likewise. - * grub-core/lib/i386/relocator_common.S [__APPLE__]: Likewise. - * grub-core/mmap/i386/pc/mmap_helper.S [__APPLE__]: Likewise. - -2012-05-28 Vladimir Serbinenko - - * grub-core/efiemu/runtime/efiemu.c: Replace APPLE_CC with __APPLE__. - * grub-core/kern/misc.c: Likewise. - * grub-core/loader/i386/xnu.c: Likewise. - * include/grub/i386/tsc.h: Likewise. - * include/grub/symbol.h: Likewise. - -2012-05-28 Vladimir Serbinenko - - * include/grub/list.h (grub_bad_type_cast_real): Remove return. - * include/grub/misc.h (ATTRIBUTE_ERROR): Make into noreturn attribute - on older compiler. - -2012-05-28 Vladimir Serbinenko - - * util/getroot.c (grub_util_biosdisk_get_grub_dev) [__APPLE__]: - Implement Apple flavour. - (convert_system_partition_to_system_disk) [__APPLE__]: Likewise. - -2012-05-28 Vladimir Serbinenko - - * include/grub/misc.h (memcmp) [__APPLE__]: Mark as regparm 0. - (memmove) [__APPLE__]: Likewise. - (memcpy) [__APPLE__]: Likewise. - (memset) [__APPLE__]: Likewise. - * grub-core/kern/misc.c (memcmp) [__APPLE__]: Likewise. - (memmove) [__APPLE__]: Likewise. - (memcpy) [__APPLE__]: Likewise. - (memset) [__APPLE__]: Likewise. - -2012-05-28 Vladimir Serbinenko - - * grub-core/genmod.sh.in: Fix a bug in Apple part which caused - dependency discard. - -2012-05-27 Vladimir Serbinenko - - * grub-core/normal/main.c (read_config_file): Provide config_file and - config_directory. - * util/grub.d/41_custom.in: Use config_directoy when available. - -2012-05-27 Vladimir Serbinenko - - * grub-core/fs/bfs.c (iterate_in_b_tree): Add missing NESTED_FUNC_ATTR. - (grub_bfs_dir): Likewise. - -2012-05-27 Peter Jones - - The old code gives arguments to a printf function which can't work - correctly, and the compiler complains. - - * grub-core/tests/example_functional_test.c (example_test): Add - missing text. - * grub-core/tests/lib/test.c (add_failure): Rewrite. - * include/grub/test.h (grub_test_assert_helper): New declaration. - (grub_test_assert): Use grub_test_assert_helper. - -2012-05-27 Vladimir Serbinenko - - * grub-core/Makefile.core.def (example_functional_test): Rename to ... - (exfctest): ... this to avoid overlong filenames. - All users updated. - -2012-05-27 Vladimir Serbinenko - - Handle "." and ".." on squashfs. - - * grub-core/fs/squash4.c (grub_fshelp_node): New field stsize. - Make inode numbers into stack. - (grub_squash_read_symlink): Use stack. - (grub_squash_iterate_dir): Use stack. Create "." and ".." nodes. - (make_root_node): Fill stack. - (grub_squash_open): Use stack. - -2012-05-27 Vladimir Serbinenko - - * grub-core/kern/emu/hostdisk.c (open_device): Set dest->dev to 0 after - freeing. - -2012-05-27 Vladimir Serbinenko - - * util/grub-mkconfig_lib.in (print_option_help): Properly redirect - stderr on test calls. - -2012-05-27 Vladimir Serbinenko - - * grub-core/fs/jfs.c (grub_jfs_find_file): Handle "." and "..". - -2012-05-27 Vladimir Serbinenko - - * grub-core/fs/ntfs.c (list_file): Set mtime to correct value. - -2012-05-27 Vladimir Serbinenko - - * grub-core/fs/iso9660.c (grub_iso9660_iterate_dir): Don't skip "." and - "..". - -2012-05-27 Vladimir Serbinenko - - * grub-core/fs/hfsplus.c (grub_hfsplus_catfile): New field parentid. - (grub_hfsplus_iterate_dir): Add "." and "..". - -2012-05-27 Vladimir Serbinenko - - * grub-core/fs/cpio.c (canonicalize): Handle "..". - (grub_cpio_find_file) [MODE_USTAR]: Handle hardlinks. - -2012-05-27 Vladimir Serbinenko - - * grub-core/fs/btrfs.c (GRUB_BTRFS_ITEM_TYPE_INODE_REF): New enum value. - (find_path): Handle "." and "..". - -2012-05-27 Vladimir Serbinenko - - * grub-core/fs/affs.c (grub_affs_file): New field hardlink. - (GRUB_AFFS_FILETYPE_HARDLINK): New enum value. - (grub_affs_iterate_dir): Handle hardlinks. - -2012-05-26 Matthew Garrett - - * grub-core/term/efi/console.c (grub_efi_console_init): Set text mode. - (grub_efi_console_fini): Likewise. - * grub-core/video/efi_gop.c (framebuffer): New field offscreen. - (grub_video_gop_fill_mode_info): Rename to ... - (grub_video_gop_fill_real_mode_info): ... this. - (grub_video_gop_fill_mode_info): New function. - (grub_video_gop_setup): Setup double framebuffer. - (grub_video_gop_get_info_and_fini): Use original framebuffer. - Free offscreen. - (grub_video_gop_swap_buffers): Copy framebuffer. - (grub_video_gop_fini): Free offscreen buffer. - * include/grub/efi/graphics_output.h (grub_efi_gop_blt_operation_t): - New enum. - (grub_efi_gop_blt_pixel): New struct. - -2012-05-26 Vladimir Serbinenko - - * gentpl.py: Remove error disabling for objconv. - -2012-05-26 Vladimir Serbinenko - - * configure.ac: Remove -Wunitialized as it's not available on older - compilers. - -2012-05-26 Vladimir Serbinenko - - Fix extent overflow comparator. - - * grub-core/fs/hfsplus.c (grub_hfsplus_extkey_internal): Add type. - (grub_hfsplus_read_block): Set type. - (grub_hfsplus_cmp_extkey): Compare type. - -2012-05-25 Vladimir Serbinenko - - * util/grub-fstest.c (cmd_cmp): Fix stat'ing of wrong file. - -2012-05-24 Vladimir Serbinenko - - * grub-core/fs/hfsplus.c (grub_hfsplus_label): Use found ptr rather - than 0. - -2012-05-24 Vladimir Serbinenko - - * Makefile.am (starfield_DATA): Add dejavu_bold_14.pf2. - (dejavu_bold_14.pf2): New target. - -2012-05-24 Vladimir Serbinenko - - * configure.ac: Fix djvu font detection. - -2012-05-23 Vladimir Serbinenko - - * grub-core/normal/misc.c (grub_normal_print_device_info): Dsiplay - ext* instead of ext2. - -2012-05-23 Vladimir Serbinenko - - * grub-core/normal/term.c (read_terminal_list): Terminate the terminal - name with \0. - -2012-05-22 Jordan Uggla - - * docs/grub-dev.texi: Remove dot from .png. - -2012-05-22 Vladimir Serbinenko - - * grub-core/partmap/gpt.c (grub_gpt_partition_map_iterate): Accept - protective entry in any slot. - * grub-core/partmap/msdos.c (grub_partition_msdos_iterate): Reject - if protective entry is found in any slot. - - Protective entry in non-first slot make no sense but is a widespread - brain damage. - -2012-05-22 Vladimir Serbinenko - - * grub-core/fs/squash4.c (grub_squash_read_data): Add missing byte-swap. - -2012-05-22 Vladimir Serbinenko - - * grub-core/fs/reiserfs.c (grub_reiserfs_iterate_dir): Fix size byteswap - with old reiserfs. - (grub_reiserfs_open): Don't free root. - -2012-05-22 Vladimir Serbinenko - - * grub-core/fs/fshelp.c (grub_fshelp_find_file): Set currnode to 0 - after freeing for safety. - -2012-05-21 Vladimir Serbinenko - - * grub-core/commands/sleep.c (do_print): Add missing grub_refresh. - Reported by: Jordan Uggla. - -2012-05-21 Jordan Uggla - - * docs/grub.texi Fix documentation of GRUB_HIDDEN_TIMOUNT to match the - actual implementation. Specifically, clarify that the grub menu will - be displayed for GRUB_TIMOUT seconds after the hidden timeout has - passed. - -2012-05-21 Benjamin Herrenschmidt - - * grub-core/kern/powerpc/dl.c (trampoline_template): Use r12 instead - of r0. - -2012-05-21 Vladimir Serbinenko - - Remove unjustified hard dependency of normal.mod on gfxterm. - - * include/grub/term.h (grub_term_output): New member fullscreen. - * include/grub/gfxterm.h (grub_gfxterm_fullscreen): Removed. - * grub-core/term/gfxterm.c (grub_gfxterm_fullscreen): Make static. - (grub_gfxterm): Set .fullscreen. - * grub-core/normal/menu.c (menu_init): Use fullscreen. - * grub-core/gfxmenu/gfxmenu.c (GRUB_MOD_INIT): Likewise. - -2012-05-21 Vladimir Serbinenko - - * docs/grub.texi (Internationalisation/Filesystems): Add precisions - mentioning possible problems with non-ASCII (non-compliant) ISOs. - Mention case-insensitive AFFS, SFS and JFS. - -2012-05-21 Vladimir Serbinenko - - * grub-core/fs/affs.c (grub_affs_mtime): Add missing grub_dl_ref. - -2012-05-21 Vladimir Serbinenko - - * grub-core/kern/fs.c (grub_fs_probe): Handle GRUB_ERR_OUT_OF_RANGE as - a bad FS. - -2012-05-18 Vladimir Serbinenko - - * grub-core/fs/iso9660.c (grub_iso9660_iterate_dir): Mark plain - ISO9660 names as case-insensitive, lowercase it and remove trailing dot. - -2012-05-17 Vladimir Serbinenko - - * grub-core/fs/jfs.c (grub_jfs_data): New field caseins. - (grub_jfs_mount): Fill caseins. - (grub_jfs_find_file): Respect caseins. - -2012-05-17 Vladimir Serbinenko - - * grub-core/fs/iso9660.c (grub_iso9660_iterate_dir): Don't strrchr - through UTF-16. - -2012-05-17 Vladimir Serbinenko - - * grub-core/fs/fat.c (grub_fat_find_dir): Fix error message. - New argument origpath. All users updated. - -2012-05-15 Vladimir Serbinenko - - * grub-core/fs/ntfs.c (read_data): Prevent overflow. - (read_attr): Ensure that we read start of possibly compressed block. - -2012-05-15 Vladimir Serbinenko - - * include/grub/ntfs.h (grub_ntfs_comp_table_element): New struct. - (grub_ntfs_comp): Use grub_ntfs_comp_table_element for comp_table. - All users updated. - -2012-05-14 Vladimir Serbinenko - - * Makefile.am (starfield_DATA): Replace dejavu.pf2 with dejavu_10.pf2, - dejavu_12.pf2, dejavu_14.pf2 and dejavu_16.pf2. - (dejavu.pf2): Replace with ... - (dejavu_10.pf2), (dejavu_12.pf2), (dejavu_14.pf2), (dejavu_16.pf2): - this. - -2012-05-14 Vladimir Serbinenko - - * util/grub.d/20_linux_xen.in: Add missing line. - -2012-05-14 Vladimir Serbinenko - - * include/grub/charset.h (GRUB_UTF16_UPPER_SURROGATE): Fix mask sizes. - (GRUB_UTF16_LOWER_SURROGATE): Likewise. - (grub_utf16_to_utf8): Likewise. - -2012-05-13 Vladimir Serbinenko - - * grub-core/disk/ieee1275/ofdisk.c (scan): Don't scan device tree if - GRUB_IEEE1275_FLAG_NO_TREE_SCANNING_FOR_DISKS is set. - * grub-core/kern/ieee1275/cmain.c (grub_ieee1275_find_options): Set - GRUB_IEEE1275_FLAG_NO_TREE_SCANNING_FOR_DISKS on IBM hardware. - * include/grub/ieee1275/ieee1275.h (grub_ieee1275_flag): New enum value - GRUB_IEEE1275_FLAG_NO_TREE_SCANNING_FOR_DISKS. - -2012-05-13 Vladimir Serbinenko - - * grub-core/kern/fs.c (grub_fs_probe): Handle GRUB_ERR_OUT_OF_RANGE as - a bad FS. - -2012-05-13 Vladimir Serbinenko - - * grub-core/fs/udf.c (read_string): Bail out on size=0. - (grub_udf_read_symlink): Handle read_string failure. - -2012-05-12 Vladimir Serbinenko - - * grub-core/kern/emu/hostdisk.c (read_device_map): Improve TRANSLATORS - comment. - -2012-05-12 Vladimir Serbinenko - - Fix handling of UDF symlinks. - - * grub-core/fs/udf.c (read_string): New argument outbuf. - All users updated. - (grub_ufs_read_symlink): Rename to ... - (grub_udf_read_symlink): ... this. All users updated. - Handle symlinks with more than one component. - -2012-05-12 Vladimir Serbinenko - - * grub-core/fs/affs.c (grub_affs_read_symlink): Fix handling of long - symlinks. Replace leading colon with a slash. - -2012-05-12 Vladimir Serbinenko - - * grub-core/fs/jfs.c (grub_jfs_find_file): Handle multiple slashes in - filename. - -2012-05-12 Vladimir Serbinenko - - * grub-core/fs/bfs.c (find_in_b_tree) [MODE_AFS]: Fix handling of exact - match in inner node. - -2012-05-12 Vladimir Serbinenko - - * grub-core/fs/bfs.c (mount): Improve filesystem detection reliability. - * grub-core/fs/ext2.c (grub_ext2_mount): Likewise. - * grub-core/fs/hfs.c (grub_hfs_mount): Likewise. - * grub-core/fs/hfsplus.c (grub_hfsplus_mount): Likewise. - * grub-core/fs/jfs.c (grub_jfs_mount): Likewise. - * grub-core/fs/minix.c (grub_minix_mount): Likewise. - * grub-core/fs/ntfs.c (grub_ntfs_mount): Likewise. - * grub-core/fs/romfs.c (grub_romfs_mount): Likewise. - * grub-core/fs/xfs.c (grub_xfs_mount): Likewise. - -2012-05-11 Vladimir Serbinenko - - Use grub-probe and not cmp to check that disk is empty. - - * util/grub-install.in: Use grub-probe for zero-check. - * util/grub-probe.c (PRINT_ZERO_CHECK): New enum value. - (probe): Handle PRINT_ZERO_CHECK. - (argp_parser): Handle -t zero_check. - -2012-05-11 Vladimir Serbinenko - - Flush block cache on adding disk to device map. - - * grub-core/kern/emu/hostdisk.c (flush_initial_buffer): New function. - (grub_hostdisk_os_dev_to_grub_drive): Call flush_initial_buffer on - adding. - (read_device_map): Likewise. - (open_device): Flush on opening. - -2012-05-10 Vladimir Serbinenko - - * grub-core/fs/cpio.c (grub_cpio_find_file): Handle prefix. - (handle_symlink): Fix off-by-one error. - Canonicalize the target. - (grub_cpio_dir): Canonicalize the name. - Fix memory leak. - Set directory. - (grub_cpio_open): Canonicalize the name. - -2012-05-10 Vladimir Serbinenko - - * grub-core/fs/iso9660.c (grub_iso9660_iterate_dir): Fix symlink - handling. - -2012-05-10 Vladimir Serbinenko - - * grub-core/fs/ufs.c (grub_ufs_find_file): Fix handling of double slash. - * grub-core/fs/minix.c (grub_minix_find_file): Likewise. - -2012-05-10 Vladimir Serbinenko - - * util/grub-menulst2cfg.c (main): Check return value of fwrite. - * util/grub-mklayout.c (write_file): Likewise. New argument fname. - All users updated. - -2012-05-10 Vladimir Serbinenko - - * util/grub.d/20_linux_xen.in: Update initrd list based on 10_linux.in - counterpart. - -2012-05-10 Vladimir Serbinenko - - Fix UFS1 big file support. - - * grub-core/fs/ufs.c (INODE): Removed. - (INODE_SIZE): Always use 64-bit byte-swap since size field is always - 64-bit. - (INODE_MODE): Simplify. - (grub_ufs_inode): Use uint64_t for size and not int64_t. - (grub_ufs_lookup_symlink): Don't use INODE. - -2012-05-09 Vladimir Serbinenko - - Fix minixfs with non-power-of-two blocks since it's supported by minix. - - * grub-core/fs/minix.c (GRUB_MINIX_ZONESZ): Use block_size. - (grub_minix_data): Replace log_block_size with block_size. - (grub_minix_read_file): Use block_size but avoid 64-bit division. - (grub_minix_mount): Fill block_size. - -2012-05-09 Vladimir Serbinenko - - * configure.ac: Bump to beta5. - -2012-05-09 Vladimir Serbinenko - - Fix wrapped HFS+ handling. - - * grub-core/fs/fshelp.c (grub_fshelp_read_file): New argument - blocks_start. All users updated. - * grub-core/fs/hfsplus.c (grub_hfsplus_read_block): Don't add - wrapping offset. - (grub_hfsplus_read_file): Pass embedding offset to fshelp_read_file. - -2012-05-09 Vladimir Serbinenko - - Fix long symlinks on reiserfs. - - * grub-core/fs/reiserfs.c (grub_fshelp_node): New field size. - (grub_reiserfs_read_symlink): Use grub_reiserfs_read_real. - (grub_reiserfs_iterate_dir): Save size for non-directories. - (grub_reiserfs_open): Don't reread stat block as we already know the - size. - (grub_reiserfs_read): Split into... - (grub_reiserfs_read_real): ... and ... - (grub_reiserfs_read): ...this. - -2012-05-09 Vladimir Serbinenko - - Fix non-indexed JFS. - - * grub-core/fs/jfs.c (grub_jfs_sblock): New field flags. - (grub_jfs_data): New field namecomponentlen. - (grub_jfs_mount): Fill namecomponentlen. - (grub_jfs_getent): Use namecomponentlen rather than hardcoded 11. - -2012-05-08 Vladimir Serbinenko - - * grub-core/script/yylex.l: Ugly fix for "\\\n ". - * tests/grub_script_echo1.in: Add tests. - -2012-05-08 Vladimir Serbinenko - - * util/grub-install.in: Ignore empty devicetree directory. - -2012-05-08 Bean - - * grub-core/net/ip.c (reassemble): Make asm_buffer into asm_netbuff. - All users updated. - (free_rsm): Free header as well. - (free_old_fragments): Fix memory leak. - * grub-core/net/netbuff.c (grub_netbuff_free): Make return void. - * grub-core/net/tftp.c (tftp_receive): Fix memory leak. - (destroy_pq): Likewise. - * include/grub/net/netbuff.h (grub_netbuff_free): Make return void. - -2012-05-08 Vladimir Serbinenko - - * grub-core/commands/hashsum.c (grub_cmd_hashsum): Align space for - resulting hash as a precaution. - -2012-05-08 Vladimir Serbinenko - - * grub-core/net/bootp.c (set_env_limn_ro): Replace reserved ':' with - '_' in variable names. - * grub-core/net/net.c (grub_net_network_level_interface_register): - Likewise. - -2012-05-08 Vladimir Serbinenko - - Fix AFFS with non-512B blocks. - - * grub-core/fs/affs.c (grub_affs_rblock): Make type uint32_t. - (AFFS_MAX_LOG_BLOCK_SIZE): New definition. - (grub_affs_data): Replace blocksize with log_blocksize. - (grub_affs_read_block): Fix non-512B blocks. - (grub_affs_read_symlink): Likewise. - (grub_affs_iterate_dir): Likewise. Fix freeing corruption. - (grub_affs_read): Fix non-512B blocks. - (grub_affs_label): Likewise. - (grub_affs_mtime): Likewise. - (grub_affs_mount): Fix block detection routine. - -2012-05-08 Vladimir Serbinenko - - Add filesystem mtime to AFFS. - - * grub-core/fs/affs.c (grub_affs_file): Make type unsigned. - (aftime2ctime): New function. - (grub_affs_dir): Use aftime2ctime. - (grub_affs_label): Fix return value. - (grub_affs_mtime): New function. - (grub_affs_fs): Add mtime. - -2012-05-07 Vladimir Serbinenko - - * grub-core/fs/affs.c (grub_affs_read_symlink): Convert latin1 into - UTF-8. - -2012-05-07 Vladimir Serbinenko - - * grub-core/fs/sfs.c (grub_sfs_read_symlink): Convert latin1 into - UTF-8. - -2012-05-07 Vladimir Serbinenko - - * grub-core/fs/affs.c (grub_affs_iterate_dir): Mark as case insensitive. - -2012-05-07 Vladimir Serbinenko - - * grub-core/fs/sfs.c (grub_sfs_rblock): New fields createtime and - flags. - (FLAGS_CASE_SENSITIVE): New enum value. - (cache_entry): New struct. - (grub_fshelp_node): Add fields cache_off, next_extent, cache_allocated, - cache_size and cache. - (grub_sfs_data): Remove blocksize. All users switched to log_blocksize. - Add log_blocksize and fshelp_flags. - (grub_sfs_read_extent): Handle non-512 blocks. - (grub_sfs_read_block): Add cаche and handle non-512 blocks. - (grub_sfs_read_file): Handle non-512 blocks. - (grub_sfs_mount): Handle non-512 blocks. Fill log_blocksize and - fshelp_flags. - (grub_sfs_read_symlink): Handle non-512 blocks. - (grub_sfs_iterate_dir): Init new fields. Mark as case-insensitive. - (grub_sfs_dir): Free cache. - (grub_sfs_close): Likewise. - -2012-05-06 Vladimir Serbinenko - - * grub-core/fs/bfs.c (read_bfs_file): Fix overflow with over 2TiB - filesystems. - -2012-05-06 Vladimir Serbinenko - - * grub-core/fs/affs.c (grub_affs_read_block): Fix theoretical overflow. - -2012-05-06 Vladimir Serbinenko - - * grub-core/commands/ls.c (grub_ls_list_files): Fix overflow. - -2012-05-06 Vladimir Serbinenko - - * grub-core/fs/sfs.c (grub_fshelp_node): Fix types. - (grub_sfs_read_extent): Likewise. - (grub_sfs_read_block): Likewise. - (grub_sfs_mount): Likewise. - (grub_sfs_iterate_dir): Likewise. - (grub_sfs_read_symlink): Use strncpy instead of strcpy. - (grub_sfs_read): Remove unnecessarry and wrong temporary variable. - -2012-05-04 Vladimir Serbinenko - - Fix errors on compressed NTFS with 512B clusters. - - * include/grub/ntfs.h (grub_ntfscomp_func_t): Use appropriately sized - types. - * grub-core/fs/ntfs.c (grub_ntfs_read): Return correct -1 on error and - not 0. - * grub-core/fs/ntfscomp.c (read_block): Use appropriately-sized types. - Relax check for inline extents. - (ntfscomp): Return correct -1 on error and not 0. - -2012-05-04 Vladimir Serbinenko - - * util/grub-install.in: Fix handling of prefix containing spaces. - -2012-05-04 Vladimir Serbinenko - - * grub-core/fs/squash4.c (grub_squash_inode): Fix offset field. - (grub_squash_read_data): Fix offset byte-swapping. - -2012-05-04 Vladimir Serbinenko - - * grub-core/kern/misc.c (grub_strcmp): Use unsigned comparison as - per common usage and preffered in several parts of code. - (grub_memcmp): Likewise. - (grub_strncmp): Likewise. - * include/grub/misc.h (grub_strcasecmp): Likewise. - (grub_strncasecmp): Likewise. - * Makefile.util.def (cmp_test): New test. - (grub_script_strcmp): Likewise. - * tests/cmp_unit_test.c: New file. - * tests/grub_script_strcmp.in: Likewise. - * grub-core/fs/hfsplus.c (grub_hfsplus_cmp_catkey): Add a comment. - -2012-05-04 Vladimir Serbinenko - - * include/grub/pci.h: Move enums into no-asm part. - -2012-05-04 Vladimir Serbinenko - - * grub-core/fs/bfs.c (bfs_strcmp) [MODE_AFS]: Use signed comparison. - -2012-05-04 Samuel Thibault - - * util/getroot.c (find_hurd_root_device): Try to make error message - and comments to translators clearer. - -2012-05-04 Vladimir Serbinenko - - * grub-core/commands/menuentry.c: Fix typo in TRANSLATORS comments. - -2012-05-04 Vladimir Serbinenko - - * grub-core/kern/fs.c (grub_fs_probe) [GRUB_UTIL]: Add workaround for - btrfs. - -2012-05-04 Vladimir Serbinenko - - * docs/grub.cfg: Update. - -2012-05-04 Vladimir Serbinenko - - * docs/grub.texi (PXE): Remove not present variables. - -2012-05-04 Vladimir Serbinenko - - * grub-core/net/net.c (defserver_set_env): New function. - (defserver_get_env): Likewise. - (GRUB_MOD_INIT): Register net_default_server and pxe_default_server. - -2012-05-03 Vladimir Serbinenko - - * grub-core/kern/emu/hostdisk.c (read_device_map): Skip invalid Fedora - entries. - -2012-05-03 Vladimir Serbinenko - - * grub-core/commands/menuentry.c: Add TRANSLATORS comments. - * grub-core/kern/emu/hostdisk.c: Likewise. - -2012-05-03 Samuel Thibault - - Handle hurd userspace partitions. - - * util/getroot.c (find_hurd_root_device): New function. - (grub_guess_root_devices): Use find_hurd_root_device on Hurd. - -2012-05-03 Vladimir Serbinenko - - * util/getroot.c (convert_system_partition_to_system_disk); Add etherd - names. - Reported by: Bastian Blank. - -2012-05-03 Vladimir Serbinenko - - * grub-core/fs/btrfs.c (grub_btrfs_lzo_decompress): Fix offset when - crossing page boundary. - -2012-05-03 Vladimir Serbinenko - - Fix B-tree search in BFS, especially in presence of non-ASCII - characters. - - * grub-core/fs/bfs.c (bfs_strcmp): New function. - (find_in_b_tree): Use standard bsearch + btree algorithm. - -2012-05-03 Vladimir Serbinenko - - * util/grub-fstest.c (cmd_cmp): Avoid comparing devices, pipes - and so on. - -2012-05-03 Matthew Garrett -2012-05-03 Vladimir Serbinenko - - Suspend broadcom cards in order to stop their DMA. - - * grub-core/Makefile.am (KERNEL_HEADER_FILES): Add pci.h on x86 EFI. - * grub-core/Makefile.core.def (kernel): Add pci.c on x86 EFI. - (pci): Don't build on x86 EFI. - * grub-core/bus/pci.c (grub_pci_find_capability): New function. - * grub-core/kern/efi/mm.c (stop_broadcom) [__i386__ || __x86_64__]: - New function. - (grub_efi_finish_boot_services) [__i386__ || __x86_64__]: Call - stop_broadcom if running on EFI. - * include/grub/pci.h (GRUB_PCI_CLASS_NETWORK): New enum value. - (GRUB_PCI_CAP_POWER_MANAGEMENT): Likewise. - (GRUB_PCI_VENDOR_BROADCOM): Likewise. - (grub_pci_find_capability): New proto. - -2012-05-03 Vladimir Serbinenko - - * docs/grub.texi: Remove dot from the extension as it apparently - doesn't work with some makeinfo versions. - -2012-05-03 Vladimir Serbinenko - - * po/Makefile.in.in: Make msgfmt output in little-endian in accordance - with GRUB expectance. - -2012-05-03 Vladimir Serbinenko - - * util/grub-fstest.c (cmd_cmp): Compare directories recursively. - -2012-05-03 Vladimir Serbinenko - - * grub-core/fs/reiserfs.c (grub_reiserfs_iterate_dir): Put a trailing - zero after directory block since last entry may be not 0-terminated if - it ends on block boundary. Use continue instead of if spanning whole - loop. - -2012-05-03 Vladimir Serbinenko - - Support 4K sectors UDF inline files. - - * grub-core/fs/udf.c (grub_udf_file_entry): Don't specify padding size. - (grub_udf_extended_file_entry): Likewise. - (grub_fshelp_node): Name the anonymous union. Put block at the end. - All users updated. - (get_fshelp_size): New function. - (grub_udf_read_icb): Read whole block. - (grub_udf_iterate_dir): Likewise. - (grub_udf_dir): Likewise. - (grub_udf_open): Likewise. - -2012-05-03 Vladimir Serbinenko - - * grub-core/fs/ufs.c (grub_ufs_get_file_block): Support triple indirect. - -2012-05-03 Vladimir Serbinenko - - * grub-core/fs/ufs.c (grub_ufs_lookup_symlink): Use proper check for - inline symlinks in addition to workaround. - -2012-05-03 Vladimir Serbinenko - - * grub-core/fs/xfs.c (grub_xfs_iterate_dir): Handle read_inode errors. - -2012-05-03 Vladimir Serbinenko - - * grub-core/fs/xfs.c (GRUB_XFS_EXTENT_BLOCK): Fix bitmask. - -2012-05-03 Vladimir Serbinenko - - * grub-core/fs/zfs/zfs.c (nvlist_find_value): Fix return value. - -2012-05-02 Vladimir Serbinenko - - Fix reiserfs big seek times. - - * grub-core/fs/reiserfs.c (grub_reiserfs_get_item): New argument - exact. All users updated. - (grub_reiserfs_read): Use nearest btree search for seeking. - Fix return value on error. - -2012-05-02 Vladimir Serbinenko - - * grub-core/commands/legacycfg.c (legacy_file): Default to restricted - entries. - * grub-core/commands/menuentry.c (grub_cmd_menuentry): Likewise. - * docs/grub.texi: Update menuentry description. - -2012-05-02 Vladimir Serbinenko - - * util/grub-setup.c (setup): Remove duplicate call to embed. Fixes - crash when embedding onto filesystem. - -2012-05-02 Vladimir Serbinenko - - * util/getroot.c (find_root_devices_from_poolname): Handle spaces in the - name. - -2012-05-01 Vladimir Serbinenko - - * grub-core/net/ip.c (handle_dgram): Fix undeclared variable. - -2012-05-01 Vladimir Serbinenko - - * grub-core/normal/autofs.c (read_fs_list): Revert accidental wrong - commit. - -2012-05-01 Vladimir Serbinenko -2012-05-01 Bean - - * grub-core/net/ip.c (handle_dgram): Fix DHCP mac comparison. - -2012-05-01 Vladimir Serbinenko - - * grub-core/kern/file.c (grub_file_read): Read nothing if len = 0. - Special behaviour for len = 0 to read whole file isn't used anywhere and - can cause buffer ovewrflows in several places. - -2012-05-01 Vladimir Serbinenko - - * grub-core/normal/autofs.c (read_fs_list): Fix memory leak. - -2012-05-01 Vladimir Serbinenko - - Handle RAIDZ on non-512B sectors. - - * grub-core/fs/zfs/zfs.c (grub_zfs_device_desc): New member - max_children_ashift. - (fill_vdev_info_real): Fill max_children_ashift. - (read_device): Use max_children_ashift. - -2012-05-01 Vladimir Serbinenko - - * grub-core/fs/fshelp.c (grub_fshelp_find_file): Fix memory leak. - -2012-05-01 Vladimir Serbinenko - - * grub-core/kern/emu/hostdisk.c (read_device_map): Reject non-standard - disk names. - * docs/grub.texi: Update device.map parts. - -2012-05-01 Vladimir Serbinenko - - Don't scan into non-diskfilter devices having diskfilter names. - - * grub-core/disk/diskfilter.c (is_valid_diskfilter_name): New function. - (scan_disk): New argument accept_diskfilter. Fix recursion depth - handling. - (scan_disk_hook): New function. - -2012-04-29 Bean - - * grub-core/net/drivers/efi/efinet.c (get_card_packet): Fix buffer - allocation. - -2012-04-29 Mads Kiilerich (tiny) - - * configure.ac: Detect starfield theme font path - /usr/share/fonts/dejavu/DejaVuSans.ttf for Fedora. - -2012-04-26 Vladimir Serbinenko - - * grub-core/term/ieee1275/console.c (grub_console_dimensions): Use 80x24 - geometry on serial consoles. - -2012-04-26 Vladimir Serbinenko - - * grub-core/term/terminfo.c (grub_terminfo_readkey): Increase timeout - because of network consoles. - -2012-04-26 Vladimir Serbinenko - - * grub-core/term/terminfo.c (grub_terminfo_getkey): Fix incorrect queue - handling. - -2012-04-26 Vladimir Serbinenko - - * grub-core/disk/diskfilter.c (read_segment): Fix the case when disknr - falls on Q syndrom. - -2012-04-26 Vladimir Serbinenko - - * grub-core/fs/nilfs2.c (grub_nilfs2_palloc_entry_offset_log): - Fix argument to grub_nilfs2_palloc_bitmap_block_offset. - -2012-04-25 Vladimir Serbinenko - - * grub-core/fs/squash4.c (lzo_decompress): Set grub_errno on error. - Allocate at lest 8192 for temporary buffer as required for lzo. - -2012-04-25 Vladimir Serbinenko - - * grub-core/fs/fat.c (grub_fat_mount): Don't add logical_sector_bits - to cluster_bits, since it's already added in. - (grub_fat_read_data): Likewise. - -2012-04-25 Vladimir Serbinenko - - * grub-core/fs/ntfs.c (grub_ntfs_mount): Support 256-byte sectors, - as long as cluster size is multiple of 512 bytes. - -2012-04-23 Vladimir Serbinenko - - * util/grub-mkrescue.in: Fix locale directory. - -2012-04-23 Vladimir Serbinenko - - * grub-core/kern/emu/hostdisk.c (map): Make static. - -2012-04-23 Bean - - * util/grub-fstest.c (fstest): Add missing break. - -2012-04-22 Samuel Thibault - - Fix hurd build. - - * grub-core/kern/emu/hostdisk.c (grub_util_get_fd_size) [__GNU__]: Do - not define nr variable. - * util/getroot.c [__GNU__] (strip_extra_slashes, xgetcwd, exec_pipe, - find_root_devices_from_poolname, find_root_devices_from_libzfs, - grub_find_device): Do not define. - -2012-04-21 Vladimir Serbinenko - - Fix kfreebsd compile and behaviour. - - * grub-core/kern/emu/hostdisk.c (grub_util_follow_gpart_up): Fix - format-security. - * util/getroot.c: Fix wait.h include. - (grub_guess_root_devices): Error if grub_find_device fails. - (grub_util_get_geom_abstraction): Fix shadowing and format-security. - (grub_util_get_dev_abstraction): Likewise. - (grub_util_pull_device): Likewise. - (grub_util_get_grub_dev): Likewise. - * util/lvm.c (grub_util_lvm_isvolume): Likewise. - -2012-04-21 Vladimir Serbinenko - - Fix and unify wholedisk detection. - - * util/getroot.c (convert_system_partition_to_system_disk): New argument - is_part. All users updated. - (device_is_wholedisk): Removed. - (grub_util_biosdisk_get_grub_dev): Use is_part. - -2012-04-18 Vladimir Serbinenko - - * grub-core/kern/emu/hostdisk.c (grub_util_biosdisk_write): Fix opening - mode. - -2012-04-18 Vladimir Serbinenko - - * configure.ac: Bump to beta4. - -2012-04-18 Vladimir Serbinenko - - * grub-core/commands/search_wrap.c (grub_cmd_search): Handle old - --fs-uuid --set UUID syntax. - -2012-04-18 Vladimir Serbinenko - - * grub-core/kern/emu/hostdisk.c (grub_util_biosdisk_write): Fix message - disunification. - -2012-04-18 Vladimir Serbinenko - - * conf/Makefile.common (LDFLAGS_PLATFORM): Use explicit -Wl. - -2012-04-18 Mads Kiilerich - - * grub-mkconfig_lib.in: Ignore *.rpmnew and *.rpmsave. - -2012-04-18 Mike Gilbert - - * util/grub.d/10_linux.in: Fix detection of genkernel initramfs. - -2012-04-18 Bean - - * grub-core/disk/ata.c (grub_ata_strncpy): Put terminating zero at right - place. - -2012-04-18 Vladimir Serbinenko - - * grub-core/kern/emu/hostdisk.c (open_device): New argument max. All - users updated. - (grub_util_biosdisk_read): Handle Linux partitions not exactly - corresponding to GRUB partitions. - (grub_util_biosdisk_write): Likewise. - -2012-04-18 Vladimir Serbinenko - - Scan mdraid before LVM. - - * include/grub/diskfilter.h (grub_diskfilter_register): Renamed to .. - (grub_diskfilter_register_front): ... this. - (grub_diskfilter_register_back): New function. - All users of grub_diskfilter_register updated. - -2012-04-18 Vladimir Serbinenko - - * util/grub-install.in: Fix an automatic target detection bug. - -2012-04-18 Vladimir Serbinenko - - * util/grub-install.in: New option --efi-directory. - -2012-04-17 Vladimir Serbinenko - - * grub-core/loader/i386/linux.c (allocate_pages): Overwrite low memory - boot services if we have no other choice. - -2012-04-14 Vladimir Serbinenko - - * util/grub-mknetdir.in: Rename --override-directory to --directory and - document it. - * tests/util/grub-shell.in: Update to --directory. - -2012-04-13 Vladimir Serbinenko - - * grub-core/fs/zfs/zfs.c: Disable -Wstrict-aliasing. - -2012-04-13 Vladimir Serbinenko - - * grub-core/fs/minix.c (grub_minix_data): Fix ino type. - (grub_minix_read_file): Likewise. - (grub_minix_read_inode): Likewise. - (grub_minix_find_file): Likewise. - (grub_minix_dir): Likewise. - -2012-04-13 Vladimir Serbinenko - - * util/grub-setup.c (setup): Fix partition handling and blocklist - check. - -2012-04-13 Vladimir Serbinenko - - * grub-core/lib/relocator.c (grub_relocator_alloc_chunk_align): Remove - redundant buggy overlap check. - -2012-04-11 Vladimir Serbinenko - - * tests/util/grub-shell.in: Set pkgdatadir when calling grub-mkrescue - and grub-mknetdir. - -2012-04-11 Vladimir Serbinenko - - * grub-core/loader/i386/linux.c (grub_cmd_linux): Avoid accessing - kh.loadflags on pre-2.00 kernels. - -2012-04-11 Vladimir Serbinenko - - Terminate UNDI and PXE before launching the payload to avoid problems - with DMA. - - * grub-core/commands/boot.c (grub_loader_noreturn): Rename to ... - (grub_loader_flags): ... this. All users updated. - (grub_loader_boot): Check for GRUB_LOADER_FLAG_NORETURN. - * grub-core/loader/i386/pc/pxechainloader.c (grub_cmd_pxechain): Mark - loader as GRUB_LOADER_FLAG_PXE_NOT_UNLOAD. - * grub-core/net/drivers/i386/pc/pxe.c (grub_pxe_shutdown): New - function. - (grub_pxe_restore): Likewise. - (fini_hnd): New var. - (GRUB_MOD_INIT): Register shutdown hook. - (GRUB_MOD_FINI): Shutdown and unregister shutdown hook. - * include/grub/loader.h (GRUB_LOADER_FLAG_NORETURN): New const. - (GRUB_LOADER_FLAG_PXE_NOT_UNLOAD): Likewise. - (grub_loader_set): Rename second argument to flags. - -2012-04-07 Vladimir Serbinenko - - * grub-core/normal/charset.c (grub_ucs4_to_utf8): Return number of - written bytes. - (grub_get_num_of_utf8_bytes): New function. - (grub_ucs4_to_utf8_alloc): Use grub_get_num_of_utf8_bytes. - * grub-core/normal/menu_entry.c (run): Convert entry to UTF-8 before - executing it. - * include/grub/charset.h (grub_get_num_of_utf8_bytes): New proto. - (grub_ucs4_to_utf8): Change return type. - -2012-04-07 Vladimir Serbinenko - - * grub-core/commands/usbtest.c (usb_print_str): Silence spurious - warning. - * grub-core/fs/bfs.c (hop_level): Likewise. - * grub-core/net/bootp.c (grub_cmd_bootp): Likewise. - -2012-04-07 Vladimir Serbinenko - - * grub-core/lib/adler32.c: Recode due to license unclearness. - -2012-04-07 Vladimir Serbinenko - - * grub-core/io/lzopio.c (read_block_header): Fix incorrect byte swapping - (test_header): Likewise. - -2012-04-07 Vladimir Serbinenko - - Fix --help formatting. - - * util/grub-mkconfig_lib.in (print_option_help): New function. - (grub_fmt): Likewise. - * util/grub-install.in: Use print_option_help and grub_fmt. - * util/grub-kbdcomp.in: Likewise. - * util/grub-mkconfig.in: Likewise. - * util/grub-mknetdir.in: Likewise. - * util/grub-mkrescue.in: Likewise. - * util/grub-mkstandalone.in: Likewise. - * util/grub-reboot.in: Likewise. - * util/grub-set-default.in: Likewise. - * util/powerpc/ieee1275/grub-mkrescue.in: Likewise. - -2012-04-07 Vladimir Serbinenko - - * linguas.sh: Remove autogenerated *.po. - -2012-04-04 Vladimir Serbinenko - - * po/README: Move language fetcing to ... - * linguas.sh: ... here. - * po/README: Point to linguas.sh. - -2012-04-04 Vladimir Serbinenko - - * po/README: Exclude ko.po due to disclaimer problems. - -2012-04-04 Vladimir Serbinenko - - * grub-core/gettext/gettext.c (grub_gettext_pread): Fix the case when - len = 0. - (grub_gettext_translate_real): Handle 0th string. - (grub_gettext_translate): Ensure that "" isn't translated. - -2012-04-04 Vladimir Serbinenko - - * grub-core/disk/diskfilter.c (grub_diskfilter_memberlist): Add - TRANSLATORS comment. - (grub_diskfilter_print_partmap): Propagate changing of error into - warning. - -2012-04-04 Vladimir Serbinenko - - * include/grub/diskfilter.h (grub_diskfilter_vg): Increase extent_size - to uint64_t to prevent overflow. - (grub_diskfilter_lv): Increase start_extent and extent_count - to uint64_t to prevent overflow. - -2012-04-01 Vladimir Serbinenko - - * configure.ac: Increase version. - -2012-04-01 Vladimir Serbinenko - - Introduce en@cyrillic en@hebrew en@arabic and en@greek. - - * po/Rules-translit: New file. - * po/arabic.sed: Likewise. - * po/cyrillic.sed: Likewise. - * po/greek.sed: Likewise. - * po/hebrew.sed: Likewise. - * po/README: Add en@cyrillic en@hebrew en@arabic and en@greek. - * po/Makefile.in.in: Add extra_dist4. - -2012-04-01 Vladimir Serbinenko - - Handle big-endian minixfs (fixes minixfs tests on bigendian). - - * grub-core/fs/minix.c: Replace le with minix. Add necessary defines, - modify names. Introduce MODE_BIGENDIAN. - * grub-core/fs/minix_be.c: New file. - * grub-core/fs/minix2_be.c: Likewise - * grub-core/fs/minix3_be.c: Likewise. - * Makefile.util.def (libgrubmods): Add minix_be, minix2_be and - minix3_be. - * grub-core/Makefile.core.def (minix_be): New module. - (minix2_be): Likewise. - (minix3_be): Likewise. - -2012-04-01 Felix - - * grub-core/loader/efi/appleloader.c (devpath_7): New var. - (devs): Add MBP 2011. - -2012-04-01 Vladimir Serbinenko - - * grub-core/font/font.c (blit_comb): Handle dagesh somewhat. - -2012-04-01 Vladimir Serbinenko - - * grub-core/normal/cmdline.c (print_completion): New field - prompt_len. - (grub_cmdline_get): Handle width properly. - -2012-04-01 Vladimir Serbinenko - - * grub-core/commands/lsacpi.c (options): Add missing terminator. - -2012-03-31 Vladimir Serbinenko - - * include/grub/datetime.h (grub_datetime2unixtime): Fix handling of days - after 29th of February. - -2012-03-31 Vladimir Serbinenko - - Fix exfat endianness handling. - - * grub-core/fs/fat.c (grub_fat_data): Make fat_sector 32-bit. - (grub_fat_mount) [MODE_EXFAT]: Fix bpb.num_reserved_sectors byte-swap. - (grub_fat_iterate_dir) [MODE_EXFAT]: Fix attr byte-swap. - Byte-swap utf16 when necessary. - (grub_fat_label) [MODE_EXFAT]: Byte-swap utf16 when necessary. - -2012-03-31 Anton Blanchard -2012-03-31 Vladimir Serbinenko - - Fix btrfs endianness handling. - - * grub-core/fs/btrfs.c (key_cmp): Use grub_le_to_cpu for clarity. - (lower_bound): Make root uint64_t. Use root in le. - (grub_btrfs_read_logical): Fix template key init. Fix address byteswap. - (find_path): Fix template key init. - (grub_btrfs_dir): Fix mtime byteswap. - * include/grub/types.h (grub_cpu_to_le64_compile_time): New macro. - -2012-03-31 Vladimir Serbinenko - - * grub-core/fs/btrfs.c (grub_btrfs_read_logical): New argument - recursion_depth. Break infinite resursions. All users updated. - -2012-03-31 Vladimir Serbinenko - - * util/getroot.c (convert_system_partition_to_system_disk): Fix use - after free. - Reported by: Peter Jones. - -2012-03-31 Anton Blanchard - - * grub-core/fs/iso9660.c (grub_iso9660_iterate_dir): Do not byteswap - 8 bit values. - -2012-03-28 Vladimir Serbinenko - - * util/grub-install.in: Fix nvram call for PreP. - -2012-03-28 Vladimir Serbinenko - - * grub-core/disk/diskfilter.c (grub_diskfilter_memberlist): Degrade - the error when some elements are missing into a warning. - -2012-03-28 Vladimir Serbinenko - - * grub-core/normal/charset.c (bidi_line_wrap): Fix out-of-range swap. - -2012-03-28 Colin Watson - - * docs/grub.texi (Invoking grub-probe): New section. - Reported by: Filipus Klutiero. Fixes Debian bug #666031. - -2012-03-27 Vladimir Serbinenko - - Fix tab and wide character handling in editor and menu. - - * grub-core/normal/charset.c (grub_unicode_aglomerate_comb): Don't - agglomerate control characters with combining marks. - (bidi_line_wrap): Allow break on tab. - (grub_unicode_get_comb_start): New function. - * grub-core/normal/menu_entry.c: Restructure to handle wide characters - and tab correctly. - * grub-core/normal/menu_text.c (print_entry): Replace \n, \r, \b and \e - with a space. - * grub-core/normal/term.c (print_ucs4_terminal): New argument - fixed_tab_size. All users updated. - * include/grub/term.h (GRUB_TERM_TAB_WIDTH): New const. - (grub_term_getcharwidth): Handle \t. - * include/grub/unicode.h (grub_unicode_glyph_dup): Fix allocation - and copy. - -2012-03-26 Vladimir Serbinenko - - Handle big-endian mdraid. - - * Makefile.util.def (libgrubkern): Add mdraid_linux_be.c. - * grub-core/Makefile.core.def (mdraid09_be): New module. - * grub-core/disk/mdraid_linux.c: Use grub_md_to_cpu* and grub_cpu_to_md* - rather than grub_le_to_cpu* and grub_cpu_to_le*. - * grub-core/disk/mdraid_linux_be.c: New file. - -2012-03-26 Vladimir Serbinenko - - * grub-core/gettext/gettext.c (GRUB_MOD_INIT): Handle errors. - -2012-03-19 Vladimir Serbinenko - - * util/getroot.c (grub_make_system_path_relative_to_its_root): Fix - missing quotes which caused confusion among translators. - -2012-03-19 Vladimir Serbinenko - - * util/grub-mkconfig_lib.in: Fix typo. - -2012-03-19 Vladimir Serbinenko - - * grub-core/script/argv.c (grub_script_argv_split_append): Skip leading - spaces. - * tests/grub_script_leading_whitespace.in: New file. - * Makefile.util.def (grub_script_leading_whitespace): New test. - -2012-03-19 Vladimir Serbinenko - - * grub-core/kern/dl.c (grub_dl_add): Make global in order for gdb_grub - to work. - -2012-03-19 Vladimir Serbinenko - - * grub-core/fs/jfs.c (grub_jfs_label): Use first label if second one - starts with control character. - -2012-03-19 Vladimir Serbinenko - - * grub-core/gdb/cstub.c (grub_gdb_inbuf): Increase the size to avoid - overflow. - (grub_gdb_outbuf): Likewise. - -2012-03-19 Vladimir Serbinenko - - * grub-core/commands/menuentry.c (grub_normal_add_menu_entry): Add - zero terminator. Fixes a crash. - -2012-03-11 Vladimir Serbinenko - - * grub-core/loader/i386/linux.c (allocate_pages): Don't allocate - beyond 4 GiB. - (grub_cmd_linux): Use GRUB_LINUX_BZIMAGE_ADDR for non-relocatable - images independently of preffered adderss field. - -2012-03-11 Vladimir Serbinenko - - * grub-core/commands/i386/pc/play.c: Improve TRANSLATORS comments. - * grub-core/commands/regexp.c: Likewise. - * grub-core/loader/i386/linux.c: Likewise. - * grub-core/partmap/msdos.c: Likewise. - * grub-core/script/execute.c: Likewise. - * grub-core/term/gfxterm.c: Likewise. - -2012-03-11 Vladimir Serbinenko - - Add variable parsing in $"..." and fix several mismatches with bash. - - * Makefile.util.def (grub_script_gettext): New test. - * grub-core/script/execute.c (parse_string): New function. - (gettext_append): Likewise. - (grub_script_arglist_to_argv): Use gettext_append. - * grub-core/script/yylex.l: Fix slash and newline handling in $"...". - * tests/grub_script_gettext.in: New file. - -2012-03-11 Vladimir Serbinenko - - Fix handling of leading spaces in scripts. - - * grub-core/normal/cmdline.c (grub_cmdline_get): Don't strip leading - spaces. - * grub-core/normal/main.c (grub_file_getline): Remove all preprocessing - other than skipping \r. All users updated. - * tests/grub_script_echo1.in: Add space-related tests. - * util/grub-menulst2cfg.c (main): Remove useless space skipping. - -2012-03-11 Vladimir Serbinenko - - * grub-core/commands/cat.c (grub_cmd_cat): Fix termination key check. - -2012-03-10 Vladimir Serbinenko - - * configure.ac: Bump up the version to beta2. - -2012-03-10 Vladimir Serbinenko - - Fix gettext reload bugs (e.g. inability to disable gettext - once enabled). - - * grub-core/gettext/gettext.c: Encapsulate all static variables in - main_context and secondary_context. All functions updated. - (grub_gettext_translate): Rename to ... - (grub_gettext_translate_real): ... this. Return NULL on failed - translate. - (grub_gettext_translate): Handle secondary context. - (grub_gettext_delete_list): Close file and zero-out the context. - (grub_mofile_open): Don't call grub_gettext_delete_list. - Don't close file. - (grub_gettext_init_ext): Call grub_gettext_init_ext. Skip loading - if locale="" to avoid pointless error message. - (grub_gettext_env_write_lang): Update lang even if load fails. - Handle secondary context. - (grub_gettext_reread_prefix): New function. - (read_main): Likewise. - (read_secondary): Likewise. - (GRUB_MOD_INIT): Handle secondary context. Hook and export variables. - (GRUB_MOD_FINI): Handle secondary context. Don't close file. - * grub-core/normal/main.c (read_lists): Call grub_gettext_reread_prefix. - * include/grub/normal.h (grub_gettext_reread_prefix): New proto. - -2012-03-10 Vladimir Serbinenko - - * configure.ac: Decrease warning level to avoid spurious warnings and - to be able to compile with GCC 4.2. - * Makefile.util.def: Remove -Wno-error=logical-op. - -2012-03-10 William Bittner - - * util/import_unicode.py: Add missing brackets around string for - python 3 support. - -2012-03-10 Vladimir Serbinenko - - Fix efi chainloader on network root. - - * grub-core/loader/efi/chainloader.c (grub_cmd_chainloader): Handle - network devices. - * grub-core/net/drivers/efi/efinet.c (grub_efinet_get_device_handle): - New function. - -2012-03-10 Vladimir Serbinenko - - * grub-core/gfxmenu/gui_progress_bar.c (grub_gui_progress_bar): Remove - unused show_text member. - * docs/grub.texi: Document "text" property. - -2012-03-10 Vladimir Serbinenko - - * grub-core/loader/efi/chainloader.c (grub_cmd_chainloader): Fix format - in dprintf. - -2012-03-10 Vladimir Serbinenko - - Fix IMSM handling on Fedora. - - * util/getroot.c (grub_util_is_imsm): New function. - (grub_util_get_dev_abstraction): Treat IMSM as simple device, not RAID. - -2012-03-10 Vladimir Serbinenko - - * Makefile.am: Strip gold section. - * conf/Makefile.common: Likewise. - * gentpl.py: Likewise. - * grub-core/Makefile.core.def: Likewise. - * grub-core/genmod.sh.in: Likewise. - -2012-03-10 Vladimir Serbinenko - - * util/grub.d/10_linux.in: Use stat if grub-probe on root fails. - * util/grub.d/20_linux_xen.in: Likewise. - Based on Debian patch. - -2012-03-10 Vladimir Serbinenko - - * util/grub.d/10_linux.in: Fix syntax error resulting in - Richard Laager's patch. - * util/grub.d/20_linux_xen.in: Propagate Richard Laager's patch. - -2012-03-10 Vladimir Serbinenko - - * tests/partmap_test.in: Replace qemu-img usage with dd to decrease - dependencies. - -2012-03-10 Richard Laager - - * util/grub.d/10_linux.in: Fix ZFS root passing. - -2012-03-10 Vladimir Serbinenko - - * grub-core/commands/videoinfo.c: Add TRANSLATORS comments. - * grub-core/commands/xnu_uuid.c: Likewise. - * grub-core/loader/efi/appleloader.c: Likewise. - * grub-core/script/execute.c: Likewise. - * grub-core/script/main.c: Likewise. - * util/grub-mkfont.c: Likewise. - -2012-03-10 Vladimir Serbinenko - - * util/grub-mkfont.c (options): Use more appropriate "select" that - "set" for face index. - -2012-03-10 Vladimir Serbinenko - - * util/grub-editenv.c (options): Gettextize command summaries. - -2012-03-10 Vladimir Serbinenko - - * grub-core/loader/efi/chainloader.c (grub_cmd_chainloader): Use - "out of memory" error messagge. - -2012-03-10 Vladimir Serbinenko - - * grub-core/disk/diskfilter.c (grub_diskfilter_memberlist): Add scanning - of diskfilter for diskfilter on diskfilter support. - -2012-03-10 Vladimir Serbinenko - - * util/getroot.c (exec_pipe): Ensure that the child is not localised. - -2012-03-10 Vladimir Serbinenko - - * util/grub-install.in: Check for themes/starfield/theme.txt and not - themes/starfield. - -2012-03-10 Vladimir Serbinenko - - * grub-core/gnulib/regcomp.c (regerror): Fix out-of-range array lookup. - -2012-03-10 Vladimir Serbinenko - - * grub-core/gdb/i386/idt.c (grub_gdb_breakpoint): Remove old debug code. - -2012-03-10 Vladimir Serbinenko - - * grub-core/commands/hashsum.c (grub_cmd_hashsum): Remove dot at the end - of error message. - -2012-03-09 Vladimir Serbinenko - - * util/grub-install.in: Fix install non-PreP IEEE1275 install. - -2012-03-09 Vladimir Serbinenko - - * grub-core/commands/i386/pc/sendkey.c (GRUB_MOD_INIT): Fix confusing - message. - * util/grub-install.in: Fix and gettextize error message. - -2012-03-08 Vladimir Serbinenko - - * util/grub-fstest.c (options): Replace N with NUM and S with STRING. - Gettextize. - * util/grub-mount.c (options): Likewise. - -2012-03-08 Vladimir Serbinenko - - * grub-core/commands/probe.c (options): Replace VAR with VARNAME and - gettextize. - * grub-core/commands/search_wrap.c (options): Likewise. - -2012-03-08 Vladimir Serbinenko - - * grub-core/normal/charset.c (bidi_line_wrap): Fix a spurious warning. - -2012-03-08 Vladimir Serbinenko - - * grub-core/boot/i386/pc/startup_raw.S (multiboot_trampoline): Fix - size calculation. - * grub-core/kern/i386/realmode.S (realidt): Assume default BIOS IDT if - none is known. - -2012-03-08 Vladimir Serbinenko - - * grub-core/net/net.c (grub_net_addr_to_str): Don't translate - "temporary" since it's used in identifier and is limited in space. - -2012-03-08 Vladimir Serbinenko - - * po/POTFILES.in: Regenerate. Include *.h since they contain - translatable strings as well. - -2012-03-08 Vladimir Serbinenko - - * grub-core/disk/mdraid1x_linux.c (grub_mdraid_detect): Add missing - byte-swap on big-endian. - Reported by: Lennart Sorensen - -2012-03-07 Vladimir Serbinenko - - * grub-core/loader/i386/linux.c (prot_init_space): New variable. - (allocate_pages): Improve dprintf. - (grub_cmd_linux): Fill prot_init_space. Fix improper usage of - code32_start. Fill code32_start and kernel_alignment in params. - (grub_cmd_initrd): Use prot_init_space. - -2012-03-06 Vladimir Serbinenko - - * util/grub-mkstandalone.in: Propagate grub-mkimage.c change. - -2012-03-06 Vladimir Serbinenko - - * util/grub-install.in: Add missing dot at the end of sentence. - -2012-03-06 Vladimir Serbinenko - - * grub-core/commands/videoinfo.c: Add TRANSLATORS comments. - * grub-core/commands/videotest.c: Likewise. - * grub-core/loader/i386/linux.c: Likewise. - -2012-03-06 Vladimir Serbinenko - - * grub-core/commands/acpi.c (options): Fix a dot in the middle of the - sentence. - Reported by: Milo Casagrande. - -2012-03-06 Vladimir Serbinenko - - * grub-core/commands/acpi.c: Add TRANSLATORS comments. - * grub-core/commands/gptsync.c: Likewise. - * grub-core/commands/hashsum.c: Likewise. - * grub-core/commands/i386/pc/sendkey.c: Likewise. - * grub-core/commands/legacycfg.c: Likewise. - * grub-core/io/gzio.c: Likewise. - * grub-core/net/net.c: Likewise. - * grub-core/term/gfxterm.c: Likewise. - * grub-core/term/terminfo.c: Likewise. - * grub-core/tests/test_blockarg.c: Likewise. - * grub-core/video/video.c: Likewise. - * util/grub-install.in: Likewise. - * util/grub-mkfont.c: Likewise. - -2012-03-06 Vladimir Serbinenko - - * util/grub-mkimage.c (help_filter): Add missing capitalisation. - -2012-03-06 Vladimir Serbinenko - - * grub-core/commands/search_wrap.c (options): Fix a typo. - Reported by: David Prévot. - -2012-03-06 Vladimir Serbinenko - - * util/grub-kbdcomp.in: Change "layout" to "keyboard layout" in - description. - -2012-03-06 Vladimir Serbinenko - - * util/grub-script-check.c (main): Fix a syntax error message which was - unclear. - -2012-03-06 Vladimir Serbinenko - - * util/grub-mkrescue.in (usage): Fix ROM capitalisation. - -2012-03-06 Vladimir Serbinenko - - * grub-core/commands/search_wrap.c (options): Fix wrong copy-paste in - messages. - -2012-03-06 Vladimir Serbinenko - - * util/grub-fstest.c (options): Remove OPTION_ARG_OPTIONAL from options - without argument. - * util/grub-mount.c (options): Likewise. - -2012-03-05 Vladimir Serbinenko - - * util/grub-mkimage.c (generate_image): Unify diskboot.img size message. - -2012-03-05 Vladimir Serbinenko - - * grub-core/net/http.c: Add TRANSLATORS comments. - * grub-core/normal/cmdline.c: Likewise. - * grub-core/normal/misc.c: Likewise. - * grub-core/partmap/msdos.c: Likewise. - * grub-core/parttool/msdospart.c: Likewise. - * grub-core/script/execute.c: Likewise. - * grub-core/script/main.c: Likewise. - * grub-core/term/terminfo.c: Likewise. - * grub-core/video/bitmap.c: Likewise. - * util/grub-install.in: Likewise. - * util/grub-mkimage.c: Likewise. - * util/grub-mklayout.c: Likewise. - * util/grub-setup.c: Likewise. - -2012-03-05 Vladimir Serbinenko - - * util/grub-mount.c (fuse_init): Unify cryptomount and loopback messages - with similar messages in grub-fstest. - -2012-03-05 Vladimir Serbinenko - - * util/grub-install.in: Unify "option requires an argument" message - with similar messages in other files. - * util/grub-mkconfig.in: Likewise. - -2012-03-05 Vladimir Serbinenko - - * util/grub-set-default.in: Replace printf with gettext_printf (the - string in in question is already translated from grub-reboot) - -2012-03-05 Vladimir Serbinenko - - * configure.ac: Bump up the version to beta1. - -2012-03-04 Vladimir Serbinenko - - * grub-core/loader/i386/linux.c (allocate_pages): Fix handling of the - case when min_align = 0. - -2012-03-04 Vladimir Serbinenko - - * grub-core/normal/charset.c (bidi_line_wrap): Fix a spurious warning - and fix a case when line_start overflows. - -2012-03-04 Vladimir Serbinenko - - * util/grub-reboot.in (usage): Mention id posibility. - * util/grub-set-default.in (usage): Likewise. - -2012-03-04 Vladimir Serbinenko - - * include/grub/misc.h (ALIGN_UP_OVERHEAD): New define. - * grub-core/loader/i386/linux.c (grub_cmd_initrd): Align initrds at 4. - * grub-core/loader/i386/pc/linux.c (grub_cmd_initrd): Likewise. - * grub-core/loader/ia64/efi/linux.c (grub_cmd_initrd): Likewise. - * grub-core/loader/mips/linux.c (grub_cmd_initrd): Likewise. - * grub-core/loader/powerpc/ieee1275/linux.c (grub_cmd_initrd): Likewise. - * grub-core/loader/sparc64/ieee1275/linux.c (grub_cmd_initrd): Likewise. - -2012-03-04 Vladimir Serbinenko - - * grub-core/commands/menuentry.c (options): Remove - GRUB_ARG_OPTION_REPEATABLE. - Reported by: Andreas Vogel - -2012-03-04 Andreas Vogel - - * grub-core/normal/main.c (grub_normal_free_menu): Fix memory leak. - -2012-03-04 Hideki EIRAKU - - * grub-core/normal/menu_entry.c (kill_line): Fix a crash and off-by-one - error. - -2012-03-04 Vladimir Serbinenko - - Use sort -V by the idea of Georgi Georgiev. - - * util/grub-mkconfig_lib.in (version_sort): New function. - (version_test_numeric): Use version_sort. - -2012-03-04 Vladimir Serbinenko - - Use submenus in grub-mkconfig. - - * util/grub-mkconfig.in: Define GRUB_ACTUAL_DEFAULT. - * util/grub-mkconfig_lib.in (grub_quote): New function. - (gettext_printf): Use gettext and not gettext_quoted to fix several - messages. - * util/grub.d/10_hurd.in: Use submenus. - * util/grub.d/10_kfreebsd.in: Likewise. - * util/grub.d/10_linux.in: Likewise. - * util/grub.d/10_netbsd.in: Likewise. - * util/grub.d/20_linux_xen.in: Likewise. - * util/grub.d/30_os-prober.in: Likewise. - * util/grub.d/10_illumos.in: Add missing quoting. - * util/grub.d/10_windows.in: Likewise. - -2012-03-04 Vladimir Serbinenko - - Fix menu title instability bug. - - * grub-core/commands/menuentry.c (options): New option --id. - (grub_normal_add_menu_entry): New argument id. All users updated. - (grub_cmd_menuentry): Handle --id. - (grub_menu_init): Accept unknown arguments. - * grub-core/normal/main.c (features): Add feature_menuentry_id and - feature_menuentry_options. - * grub-core/normal/menu.c (grub_menu_execute_entry): Use id for - saved_entry. - (get_entry_number): Match with id as well. - * include/grub/menu.h (grub_menu_entry): New member id. - * util/grub-mkconfig_lib.in (grub_get_device_id): New function. - * util/grub.d/00_header.in: Define menuentry_id_option. - * util/grub.d/10_hurd.in: Define id. - * util/grub.d/10_illumos.in: Likewise. - * util/grub.d/10_kfreebsd.in: Likewise. - * util/grub.d/10_linux.in: Likewise. - * util/grub.d/10_netbsd.in: Likewise. - * util/grub.d/10_windows.in: Likewise. - * util/grub.d/20_linux_xen.in: Likewise. - * util/grub.d/30_os-prober.in: Likewise. - -2012-03-04 Vladimir Serbinenko - - * grub-core/script/execute.c (grub_script_return): Replace ambiguous - "scope" with "body". - -2012-03-03 Vladimir Serbinenko - - * include/grub/i386/linux.h (linux_kernel_header): Fix init_size type. - * grub-core/loader/i386/linux.c (grub_cmd_linux): Differentiate between - prot_size and prot_file_size. - -2012-03-03 Vladimir Serbinenko - - * grub-core/disk/diskfilter.c (is_lv_readable): New argument "easily". - All users updated. If easily=1 require raid-5/-6 to be full. - (is_node_readable): Likewise. - (scan_devices): Scan incomplete but readable LVs at the end. - (grub_diskfilter_memberlist): Pull missing devices. - (insert_array): Skip scanning until device is complete or scan is - done otherwise. - * grub-core/disk/mdraid1x_linux.c (grub_mdraid_detect): Fix wrong - check. - * include/grub/diskfilter.h (grub_diskfilter_lv): New member scanned. - * util/raid.c (grub_util_raid_getmembers): Handle "removed" disks. - -2012-03-03 Matthew Garrett -2012-03-03 Vladimir Serbinenko - - Avoid EFI boot services when loading Linux. - - * grub-core/lib/i386/relocator.c (grub_relocator32_boot): New argument - avoid_efi_bootservices. All users updated. - * grub-core/lib/relocator.c (grub_relocator_alloc_chunk_align): New - argument avoid_efi_bootservices. All users updated. - Use grub_efi_mmap_iterate on EFI, grub_mmap_iterate if available. - * grub-core/loader/i386/linux.c (allocate_pages): New arguments - align, min_align, relocatable, prefered_address. All users updated. - Allocate avoiding boot services if kernel is relocatable. - (grub_cmd_linux): Check if kernel is relocatable. - * grub-core/mmap/efi/mmap.c (grub_machine_mmap_iterate): Move most to .. - (grub_efi_mmap_iterate): ... here. New argument avoid_efi_boot_services. - Skip GRUB_EFI_BOOT_SERVICES_DATA and GRUB_EFI_BOOT_SERVICES_CODE if - avoid_efi_boot_services. - (grub_machine_mmap_iterate): Wrap grub_efi_mmap_iterate. - * include/grub/i386/linux.h (linux_kernel_header): Update to 2.10. - (linux_kernel_params): Likewise. - -2012-03-03 Matthew Garrett -2012-03-03 Vladimir Serbinenko - - Use EDID on EFI. - - * grub-core/kern/efi/efi.c (grub_efi_get_variable): New argument - datasize_out. - * grub-core/video/efi_gop.c (check_protocol): Check that GOP has usable - modes. Set gop_handle. - (grub_video_gop_get_edid): New function. - (grub_gop_get_preferred_mode): Likewise. - (grub_video_gop_setup): Use grub_gop_get_preferred_mode. - (grub_video_efi_gop_adapter): Set .get_edid. - * include/grub/efi/edid.h: New file. - * include/grub/efi/efi.h (grub_efi_get_variable): Update proto. - -2012-03-03 Vladimir Serbinenko - - * util/grub-install.in: Load efivars unconditionally. - -2012-03-03 Vladimir Serbinenko - - * po/Rules-piglatin: Change suffix from .po-update-en to - .po-update-en-piglatin. - -2012-03-03 Vladimir Serbinenko - - Add a pig farm. - - * po/piglatin.sed: New file. - * po/en@piglatin.header: Likewise. - * po/Rules-piglatin: Likewise. - * po/README: Add en@piglatin to autogenerated languages. - -2012-03-03 Vladimir Serbinenko - - * grub-core/commands/date.c (GRUB_MOD_INIT): Remove non-uniform - "Command for ...". - * grub-core/commands/hdparm.c (options): Use "Display" rather than - "Check" since we don't check anything. - * grub-core/commands/i386/cpuid.c (options): Clarify that long mode - is 64-bit one. - * grub-core/commands/search_wrap.c (options): Clarify the conditions. - * grub-core/disk/geli.c (grub_md_sha256_real): Fix typo. - (grub_md_sha512_real): Likewise. - -2012-03-03 Vladimir Serbinenko - - * grub-core/commands/gptsync.c: Fix typographic quoting. - * grub-core/commands/ieee1275/suspend.c: Likewise. - * grub-core/commands/parttool.c: Likewise. - * grub-core/commands/search_wrap.c: Likewise. - * grub-core/commands/videoinfo.c: Likewise. - * grub-core/gfxmenu/gui_label.c: Likewise. - * grub-core/hello/hello.c: Likewise. - * grub-core/kern/emu/main.c: Likewise. - * grub-core/net/net.c: Likewise. - * grub-core/normal/menu.c: Likewise. - * grub-core/normal/menu_text.c: Likewise. - * grub-core/normal/misc.c: Likewise. - * util/grub-editenv.c: Likewise. - * util/grub-install.in: Likewise. - * util/grub-kbdcomp.in: Likewise. - * util/grub-mkconfig.in: Likewise. - * util/grub-mknetdir.in: Likewise. - * util/grub-mkrescue.in: Likewise. - * util/grub-mkstandalone.in: Likewise. - * util/grub-reboot.in: Likewise. - * util/grub-set-default.in: Likewise. - * util/grub-setup.c: Likewise. - * util/powerpc/ieee1275/grub-mkrescue.in: Likewise. - -2012-03-02 Vladimir Serbinenko - - * grub-core/commands/acpihalt.c: Add TRANSLATORS comments. - * grub-core/commands/keystatus.c: Likewise. - * grub-core/commands/loadenv.c: Likewise. - * grub-core/commands/probe.c: Likewise. - * grub-core/commands/regexp.c: Likewise. - * grub-core/commands/true.c: Likewise. - * grub-core/commands/videoinfo.c: Likewise. - * grub-core/disk/cryptodisk.c: Likewise. - * grub-core/disk/ldm.c: Likewise. - * grub-core/disk/loopback.c: Likewise. - * grub-core/disk/luks.c: Likewise. - * grub-core/fs/zfs/zfsinfo.c: Likewise. - * grub-core/kern/disk.c: Likewise. - * grub-core/kern/emu/hostdisk.c: Likewise. - -2012-03-02 Vladimir Serbinenko - - * grub-core/fs/zfs/zfsinfo.c (print_vdev_info): Add TRANSLATORS comment. - * util/grub-install.in: Add missing quote in the comment. - -2012-03-02 Vladimir Serbinenko - - * grub-core/commands/i386/pc/drivemap.c: Add TRANSLATORS comments. - * grub-core/commands/lsmmap.c: Likewise. - * grub-core/commands/minicmd.c: Likewise. - * grub-core/commands/mips/loongson/lsspd.c: Likewise. - * grub-core/commands/regexp.c: Likewise. - * grub-core/gdb/gdb.c: Likewise. - * grub-core/term/gfxterm.c: Likewise. - * util/grub-mkconfig.in: Likewise. - * util/grub-mkfont.c: Likewise. - * util/grub-mklayout.c: Likewise. - * util/grub-mknetdir.in: Likewise. - * util/grub-mkrescue.in: Likewise. - * util/grub.d/30_os-prober.in: Likewise. - -2012-03-02 Vladimir Serbinenko - - * grub-core/commands/videoinfo.c (hook): Replace "Direct" - with "Direct color" and "Packed" with "Packed pixel". - (grub_cmd_videoinfo): Simplify legend. - -2012-03-02 Vladimir Serbinenko - - * util/getroot.c (grub_make_system_path_relative_to_its_root): Fix - absolutely unclear error message. - -2012-03-02 Vladimir Serbinenko - - * util/grub-mkstandalone.in: Remove confusing leftover print. - -2012-03-02 Vladimir Serbinenko - - * grub-core/fs/zfs/zfsinfo.c (print_vdev_info): Add TRANSLATORS - comments. - * grub-core/gdb/gdb.c (grub_cmd_gdbstub): Likewise. - (GRUB_MOD_INIT): Likewise. - * grub-core/loader/i386/linux.c (grub_cmd_linux): Clarify that it's - VGA mode. - * grub-core/net/net.c (grub_net_route_address): Add TRANSLATORS - comments. - * util/grub-install.in (usage): Likewise. - Spell ID in whole letters. - Add missing ending dot. - Quote variables. - * util/grub-reboot.in: Fix capitalisation. - * util/grub-set-default.in: Likewise. - -2012-03-02 Vladimir Serbinenko - - * util/getroot.c (strip_extra_slashes) [CYGWIN]: #ifdef-out. - (exec_pipe) [CYGWIN || MINGW32]: Likewise. - (find_root_devices_from_poolname) [CYGWIN || MINGW32]: Likewise. - (find_root_devices_from_libzfs) [CYGWIN || MINGW32]: Likewise. - Disable -Werror for -Wdeprecated-declarations. - (grub_guess_root_devices) [CYGWIN || MINGW32]: #ifdef-out. - (get_dm_uuid) [!HAVE_DEVICE_MAPPER]: Likewise. - (grub_util_get_dm_abstraction) [! __linux__]: #ifdef-out. - (grub_util_get_grub_dev): Make luks handling dependent on - HAVE_DEVICE_MAPPER and not __linux__. - (get_win32_path): Fix format security. - (grub_find_zpool_from_dir) [CYGWIN || MINGW32]: #ifdef-out. - (grub_make_system_path_relative_to_its_root) [CYGWIN || MINGW32]: - Don't try grub_find_zpool_from_dir. - (grub_make_system_path_relative_to_its_root) [!__linux__]: - #ifdef-out paresdir. - -2012-03-02 Vladimir Serbinenko - - * util/grub-pe2elf.c (usage): Add missing noreturn. - (write_section_data): Rename name to shname to avoid shadowing. - (write_symbol_table): Rename name to symname to avoid shadowing. - Fix write_reloc_section call. - -2012-03-02 Vladimir Serbinenko - - * grub-core/boot/i386/pc/startup_raw.S: Move decompressor_end to .bss - to ensure that it's after the last byte of .text. - -2012-03-02 Vladimir Serbinenko - - * util/ieee1275/ofpath.c (my_isdigit): New function. - (trailing_digits): Use my_isdigit. - (strip_trailing_digits): Likewise. - -2012-03-02 Vladimir Serbinenko - - * util/resolve.c (read_dep_list): Use grub_isspace instead of isspace. - * grub-core/kern/emu/hostdisk.c (read_device_map): Likewise. - -2012-03-02 Vladimir Serbinenko - - * grub-core/kern/i386/pc/startup.S: Define __start. - -2012-03-02 Vladimir Serbinenko - - * gentpl.py (kernel): Remove the use of TARGET_OBJ2ELF after strip since - strip already transforms he format. - -2012-03-02 Vladimir Serbinenko - - * conf/i386-pc-cygwin-img-ld.sc: Define also _edata and __edata. - -2012-02-29 Vladimir Serbinenko - - * util/grub-install.in: Add missing gettext init. - * util/grub-kbdcomp.in: Likewise. - * util/grub-mkconfig.in: Likewise. - * util/grub-mknetdir.in: Likewise. - * util/grub-mkrescue.in: Likewise. - * util/grub-mkstandalone.in: Likewise. - * util/grub-reboot.in: Likewise. - * util/grub-set-default.in: Likewise. - * util/grub.d/00_header.in: Likewise. - * util/grub.d/10_hurd.in: Likewise. - * util/grub.d/10_windows.in: Likewise. - * util/grub.d/30_os-prober.in: Likewise. - * util/powerpc/ieee1275/grub-mkrescue.in: Likewise. - -2012-02-29 Vladimir Serbinenko - - * po/Rules-swiss: Fix header comment. - -2012-02-29 Andreas Vogel - - * grub-core/kern/misc.c (grub_xvasprintf): Fix an exit path which - resulted in leak of arguments. - -2012-02-29 Vladimir Serbinenko - - * grub-core/boot/i386/pc/startup_raw.S: Use separate - reed_solomon_size const definition instead of computing it since - Apple assembler doesn't support the later. - -2012-02-29 Vladimir Serbinenko - - * gentpl.py (kernel): Rewrite Apple part. - -2012-02-29 Vladimir Serbinenko - - * include/grub/kernel.h (FOR_MODULES): Check module magic. - -2012-02-29 Vladimir Serbinenko - - * util/grub-mkimagexx.c (locate_sections): Support non-standard - ELF section gap. - (load_image): Likewise. - -2012-02-29 Vladimir Serbinenko - - * configure.ac: Fix a typo in previous commit. - -2012-02-29 Vladimir Serbinenko - - Don't add -Wl,-N on Apple platform. - - * configure.ac (TARGET_LDFLAGS_OLDMAGIC): New subst. - * conf/Makefile.common: Use TARGET_LDFLAGS_OLDMAGIC instead of -Wl,-N - -2012-02-29 Vladimir Serbinenko - - * grub-core/Makefile.core.def (lzma_decompress): Use - TARGET_IMG_BASE_LDOPT rather than hardcoding -Wl,-Ttext. - -2012-02-29 Vladimir Serbinenko - - * grub-core/genmod.sh.in: Rewrite the Apple part. - -2012-02-29 Vladimir Serbinenko - - * grub-core/loader/machoXX.c (grub_macho_load): Fix signed vs unsigned - comparison. - -2012-02-29 Vladimir Serbinenko - - * acinclude.m4 (grub_CHECK_PIC): New test. - * configure.ac: Add -fno-PIC to TARGET_CFLAGS if -fPIC is default. - -2012-02-29 Vladimir Serbinenko - - * include/grub/libgcc.h (__STDC_VERSION__): Define if it's not yet so - to avoid the warning. - -2012-02-29 Vladimir Serbinenko - - * grub-core/boot/i386/pc/diskboot.S (firstlist): Rename to ... - (LOCAL(firstlist)): ... this. Move it before the firstlist and not - after. All users updated. - -2012-02-29 Vladimir Serbinenko - - Use the common size routine in hostfs so we can read disks as well. - - * grub-core/kern/emu/hostdisk.c (grub_util_get_fd_sectors): Rename to .. - (grub_util_get_fd_size): ... this. Return size in bytes. - All users updated. - * grub-core/kern/emu/hostfs.c (grub_hostfs_open): Use - grub_util_get_fd_size. - -2012-02-29 Vladimir Serbinenko - - * grub-core/kern/emu/hostdisk.c (grub_util_get_fd_sectors) [__APPLE__]: - Add blocksize retrieval. - -2012-02-29 Vladimir Serbinenko - - * configure.ac: Restore CFLAGS after efiemu check. - -2012-02-29 Vladimir Serbinenko - - * configure.ac: Move -fnested-functions to CPPFLAGS to workaround - Apple bug. - -2012-02-29 Vladimir Serbinenko - - * grub-core/Makefile.am (MACHO2IMG): Add missing variable. - -2012-02-29 Vladimir Serbinenko - - * grub-core/commands/i386/pc/halt.c (grub_halt): Add noreturn attribute. - (grub_cmd_halt): Likewise. - -2012-02-29 Vladimir Serbinenko - - * grub-core/lib/i386/relocator16.S: Declare LOCAL(relocator16_end) - for local arithmetics. - Break %sp init into 2 instructions. - Add 0 byte at the end. - -2012-02-29 Vladimir Serbinenko - - * grub-core/disk/diskfilter.c (read_segment): Initialise err - before loops. - -2012-02-29 Vladimir Serbinenko - - * grub-core/lib/xzembed/xz_dec_stream.c (hash_validate): Use void * - for context. - -2012-02-29 Vladimir Serbinenko - - * grub-core/disk/ldm.c (make_vg): Init part.name. - (grub_ldm_detect): Silence spurious warning. - (grub_util_is_ldm): Likewise. - -2012-02-29 Vladimir Serbinenko - - * grub-core/loader/i386/xnu.c (grub_xnu_boot): Init fsbfreq to - sane value to avoid a spurious warning. - -2012-02-29 Vladimir Serbinenko - - * include/grub/dl.h: Switch from APPLE_CC to __APPLE__. - (GRUB_MOD_LICENSE) [ASM_FILE]: Make into macro. All users updated. - -2012-02-29 Vladimir Serbinenko - - * include/grub/symbol.h (EXT_C) [!ASM_FILE]: Redefine with strings. - * grub-core/lib/i386/backtrace.c (grub_backtrace): Use EXT_C. - -2012-02-29 Vladimir Serbinenko - - * grub-core/gdb/i386/machdep.S: Use VARIABLE and EXT_C instead of - hardcoding the relevant info. - -2012-02-29 Vladimir Serbinenko - - * grub-core/gnulib/argp-fmtstream.c (__argp_get_display_len): Add - missing const qualifiers. - * grub-core/gnulib/argp-fmtstream.h (__argp_get_display_len): Likewise. - -2012-02-29 Vladimir Serbinenko - - * util/getroot.c [__APPLE__]: Add missing includes. - (grub_util_biosdisk_is_floppy): Fix usage of undefined variable. - -2012-02-29 Vladimir Serbinenko - - * util/grub-mkimage.c (generate_image): Silence spurious warning. - -2012-02-29 Vladimir Serbinenko - - * util/ieee1275/ofpath.c: Rename devname to sys_devname everywhere to - avoid conflicts. - -2012-02-29 Vladimir Serbinenko - - * util/ieee1275/grub-ofpathname.c: Add missing config.h include. - -2012-02-29 Vladimir Serbinenko - - * util/grub-setup.c (setup) [!__linux__]: Add missing file declaration - and grub_file_close call. - -2012-02-29 Vladimir Serbinenko - - Add LZSS Mach-O support (needed for new xnu kernelcache). - - * grub-core/Makefile.core.def (xnu): Add file lzss.c - * grub-core/loader/lzss.c: New file. - * grub-core/loader/xnu.c (grub_xnu_load_driver): Close binaryfile - on Mach-O open failure. - * grub-core/loader/macho.c (grub_macho_close): Free uncompressedXX. - Don't free cmdsXX in uncompressedXX is set. - (grub_macho_file): Init new fields. - New argument is_64bit. All users updated. - Handle compressed. Error out if no suitable architecture is found. - Don't close file. - (grub_macho_open): New argument is_64bit. All users updated. - * grub-core/loader/macho32.c: Add defines for new fields. - * grub-core/loader/macho64.c: Likewise. - * grub-core/loader/machoXX.c (grub_macho_contains_macho): Make static. - (grub_macho_parse): Handle compressed. - Defer actual processing if compressed. - (grub_macho_cmds_iterate): Decompress if compressed. New argument - "filename". All users updated. - (grub_macho_size): New argument "filename". All users updated. - (grub_macho_get_entry_point): Likewise. - (grub_macho_load): Handle compressed. - * include/grub/macho.h (grub_macho_lzss_header): New struct. - (GRUB_MACHO_LZSS_OFFSET): New define. - (grub_decompress_lzss): New proto. - * include/grub/machoload.h (grub_macho_file): New fields to handle - compressed. - (grub_macho_contains_macho64): Remove proto. - (grub_macho_contains_macho32): Likewise. - * util/grub.d/30_os-prober.in: Use kernel cache if available. - -2012-02-29 Vladimir Serbinenko - - * grub-core/disk/pata.c (grub_pata_readwrite): Fix ATAPI protocol error. - -2012-02-28 Vladimir Serbinenko - - Fix make dist. - - * Makefile.am (starfield_theme_files): New var. - (starfield_DATA): Use starfield_theme_files. - (EXTRA_DIST): Add starfield_theme_files. Add starfield source files. - Add bootcheck-related files. - * conf/Makefile.extra-dist (EXTRA_DIST): Add several missing files. - * docs/Makefile.am (EXTRA_DIST): Add font_char_metrics.png - and font_char_metrics.txt. - * grub-core/Makefile.core.def (kernel): Update extra_dist. - (setjmp): Add lib/ia64/longjmp.S. - * po/Makefile.in.in (DISTFILES): Add POTFILES-shell.in and grub.d.sed. - * po/POTFILES.in: Regenerate. - * po/Rules-swiss: use DISTFILES.common.extra2 and not - DISTFILES.common.extra1. - * util/devicemap.c: Removed. - * grub-core/lib/i386/relocator_backward.S: Likewise. - * util/import_gcry.py: Remove unused files. Add extra_dist for - ChangeLog. - -2012-02-28 Vladimir Serbinenko - - * grub-core/gettext/gettext.c (grub_mofile_open): Call - grub_gettext_delete_list before changing grub_gettext_max to avoid - running out of array bounds. - -2012-02-28 Vladimir Serbinenko - - * grub-core/term/i386/pc/vga_text.c: Add GRUB_MACHINE_MULTIBOOT to - grub_vga_text_init/grub_vga_text_fini. - -2012-02-28 Vladimir Serbinenko - - * grub-core/loader/i386/xnu.c (grub_xnu_boot): Fix format specification. - -2012-02-27 Vladimir Serbinenko - - * configure.ac: Bump to 2.00~beta0. - -2012-02-27 Vladimir Serbinenko - - * util/getroot.c (grub_find_root_devices_from_btrfs): Add - missing initialisation. - -2012-02-27 Vladimir Serbinenko - - * grub-core/partmap/msdos.c (message_warn): Clarify messages. - -2012-02-27 Vladimir Serbinenko - - Support v2 xnu boot arguments. - - * grub-core/loader/i386/xnu.c (grub_cpu_xnu_fill_devicetree): - New argument fsbfreq_out. - (grub_xnu_set_video): Receive an argument grub_xnu_boot_params_common. - (grub_xnu_boot): Support v2 arguments. Disable PIC so that APIC can - be used. - * grub-core/loader/machoXX.c (grub_macho_load): New argument - darwin_version. - * grub-core/loader/xnu.c (grub_xnu_darwin_version): New variable. - * include/grub/i386/xnu.h (grub_xnu_boot_params_common): New struct. - (grub_xnu_boot_params): Rename to ... - (grub_xnu_boot_params_v1): ...this. Use grub_xnu_boot_params_common. - (grub_xnu_boot_params_v2): New struct. - -2012-02-27 Vladimir Serbinenko - - * grub-core/efiemu/prepare.c (grub_efiemu_crc): Add missing - zeroing of CRC field before computing CRC. - -2012-02-27 Vladimir Serbinenko - - * grub-core/lib/relocator.c (malloc_in_range): Fix memory leak. - Change order of allocations to decrease fragmentation. - -2012-02-27 Vladimir Serbinenko - - * Makefile.util.def (grub-ofpathname): Enable on all platforms. - -2012-02-27 Colin Watson - - Use write-combining MTRR to speed up video with buggy BIOSes. - - * grub-core/video/i386/pc/vbe.c (framebuffer): New member mtrr. - (cpuid): New define. - (rdmsr): Likewise. - (wrmsr): Likewise. - (mtrr_base): Likewise. - (mtrr_mask): Likewise. - (grub_vbe_enable_mtrr_entry): New function. - (grub_vbe_enable_mtrr): Likewise. - (grub_vbe_disable_mtrr): Likewise. - (grub_vbe_bios_set_display_start): Disable mtrr when handing the - control off to BIOS. - (grub_video_vbe_init): Fill mtrr. - (grub_video_vbe_fini): Disable mtrr. - (grub_video_vbe_get_info_and_fini): Likewise. - (grub_video_vbe_setup): Enable mtrr. - -2012-02-27 Colin Watson - - * include/grub/partition.h (grub_partition_map): Change prototype of - embed to take a maximum value for nsectors. - * include/grub/emu/hostdisk.h (grub_util_ldm_embed): Likewise. - * include/grub/fs.h (grub_fs): Likewise. - * grub-core/partmap/msdos.c (embed_signatures): New array. - (pc_partition_map_embed): Check for and avoid sectors matching any - of the signatures in embed_signatures, up to max_nsectors. - * grub-core/partmap/gpt.c (gpt_partition_map_embed): Restrict - returned sector map to max_nsectors. - * grub-core/disk/ldm.c (grub_util_ldm_embed): Likewise. - * grub-core/fs/btrfs.c (grub_btrfs_embed): Likewise. - * grub-core/fs/zfs/zfs.c (grub_zfs_embed): Likewise. - * util/grub-setup.c (setup): Allow for the embedding area being - split into multiple blocklists. Tell dest_partmap->embed the - maximum number of sectors we care about. - -2012-02-27 Vladimir Serbinenko - - * include/grub/fs.h (grub_fs) [GRUB_UTIL]: Add blocklist_install field. - Specify blocklist_install and reserver_first_sector for all fs. - * util/grub-setup.c (setup): Use FIBMAP/FIEMAP on Linux. Check resulting - blocklists. - -2012-02-27 Vladimir Serbinenko - - * util/grub-install.in: Clarify strings. - Fix source dir check. - -2012-02-27 Richard Laager - - * util/getroot.c (grub_find_root_devices_from_mountinfo): Handle - "zfs" and "fuse.zfs" as synonyms. - -2012-02-27 Vladimir Serbinenko - - * configure.ac: Put platform and target_cpu substitutions back since - they are used for directories. - -2012-02-27 Richard Laager -2012-02-27 Vladimir Serbinenko - - * util/grub.d/10_linux.in: Add ZFS-related arguments. - * util/grub.d/20_linux_xen.in: Likewise. - -2012-02-27 Richard Laager - - * util/getroot.c (find_root_devices_from_poolname): Handle vdevs - with full paths. - -2012-02-27 Richard Laager - - * util/getroot.c (grub_find_root_devices_from_mountinfo): Add missing - unescape. - -2012-02-27 Vladimir Serbinenko - - Don't use insecure popen in getroot. - - * util/getroot.c (get_mdadm_uuid): Move pipe logic to ... - (exec_pipe): ... here. - (find_root_devices_from_poolname): Use exec_pipe. - -2012-02-27 Vladimir Serbinenko - - Remove platform and target_cpu replacement. - - * configure.ac: Remove platform and target_cpu substitutions. - * tests/util/grub-shell.in: Use modinfo. - * util/powerpc/ieee1275/grub-mkrescue.in: Specify powerpc-ieee1275 - explicitly. - -2012-02-27 Vladimir Serbinenko - - Autodetect platform in grub-install but allow override. - - * util/grub-install.in: Autodetect platform. Support --target and - --directory. Read platform from modinfo.sh. - -2012-02-27 Vladimir Serbinenko - - Support btrfs multi-volume probe. - - * util/getroot.c (btrfs_ioctl_dev_info_args) [__linux__]: New struct. - (btrfs_ioctl_fs_info_args) [__linux__]: Likewise. - (BTRFS_IOC_DEV_INFO) [__linux__]: New define. - (BTRFS_IOC_FS_INFO) [__linux__]: Likewise. - (grub_find_root_devices_from_btrfs) [__linux__]: New function. - (grub_find_root_devices_from_mountinfo) [__linux__]: Use - grub_find_root_devices_from_btrfs if on btrfs. - -2012-02-27 Vladimir Serbinenko - - Remove any awareness of *.c util files about target. - - * Makefile.util.def (grub-setup): Split to ... - (grub-bios-setup): ... and this. - (grub-sparc64-setup): ... and this. - * configure.ac: Don't add machine_CPPFLAGS into HOST_CPPFLAGS. - * docs/man/grub-setup.h2m: Split into ... - * docs/man/grub-sparc64-setup.h2m: ... this. - * docs/man/grub-bios-setup.h2m: ... and this. - * include/grub/dl.h (grub_dl) [GRUB_UTIL]: Remove struct. - * include/grub/elf.h (Elf_*) [GRUB_UTIL]: Remove types. - (GRUB_TARGET_WORDSIZE) [GRUB_UTIL]: Remove. - (grub_target_addr_t): Remove. - (grub_target_size_t): Remove. - (grub_target_ssize_t): Remove. - * util/grub-install.in: Use new grub-*-setup. - * util/grub-mkimagexx.c (Elf_Word): New define. - (Elf_Half): Likewise. - (Elf_Section): Likewise. - (ELF_ST_TYPE): Likewise. - * util/grub-setup.c: Switch from GRUB_MACHINE_SPARC64 to - GRUB_SETUP_SPARC64 and from GRUB_MACHINE_PCBIOS to GRUB_SETUP_BIOS. - -2012-02-27 Vladimir Serbinenko - - Replace grub_target_addr with more appropriate types. - - * grub-core/commands/efi/fixvideo.c (scan_card): Replace - grub_target_addr with grub_addr. - * grub-core/commands/iorw.c (grub_cmd_read): Replace - grub_target_addr with grub_port. - (grub_cmd_write): Likewise. - * grub-core/commands/memrw.c (grub_cmd_read): Replace - grub_target_addr with grub_addr. - (grub_cmd_write): Likewise. - * grub-core/video/efi_uga.c (find_line_len): Likewise. - -2012-02-27 Vladimir Serbinenko - - * include/grub/efi/api.h (grub_efi_runtime_services): Add missing - const qualifier for vendor_guid. - -2012-02-27 Vladimir Serbinenko - - * grub-core/efiemu/runtime/efiemu.c (efiemu_get_variable): Add missing - const qualifier. - (efiemu_memequal): Likewise. - (find_variable): Likewise. - -2012-02-27 Vladimir Serbinenko - - Fix missing console prototype on qemu-mips. - - * include/grub/mips/qemu_mips/console.h: New file. - -2012-02-27 Matthew Garrett -2012-02-27 Vladimir Serbinenko - - * grub-core/kern/efi/efi.c (grub_efi_get_variable): Add new function. - * include/grub/efi/efi.h: Likewise. - * include/grub/efi/api.h: Add guid for EFI-specified variables. - * include/grub/charset.h (GRUB_MAX_UTF16_PER_UTF8): New definition. - * grub-core/normal/charset.c (grub_utf8_process): Move from here ... - * include/grub/charset.h (grub_utf8_process): ... to here. Inline. - * grub-core/normal/charset.c (grub_utf8_to_utf16): Move from here ... - * include/grub/charset.h (grub_utf8_to_utf16): ... to here. Inline. - -2012-02-27 Matthew Garrett - - * include/grub/efi/pci.h: New file to define EFI PCI protocols. - -2012-02-27 Vladimir Serbinenko - - * grub-core/disk/diskfilter.c (grub_diskfilter_iterate): Fix off-by-one - error. - -2012-02-27 Vladimir Serbinenko - - * configure.ac: Remove inappropriate use of program_transform_name - on grubdir and bootdir but allow explicit specification of those - variables. - -2012-02-27 Vladimir Serbinenko - - * util/grub-mknetdir.in (grub_prefix): Removed. - (subdir): Use @bootdirname@ and @grubdirname@. - -2012-02-27 Vladimir Serbinenko - - Replace PACKAGE_TARNAME with PACKAGE in pkglibdir and pkgdatadir. - -2012-02-27 Vladimir Serbinenko - - * po/POTFILES.in: Regenerated. - -2012-02-27 Vladimir Serbinenko - - Remove improper use of program_transform_name on pkglibrootdir. - - * configure.ac (pkglibrootdir): Removed. - (grub-mkimage): Replace PKGLIBROOTDIR with PKGLIBDIR. - * util/grub-mkimage.c: Likewise. - -2012-02-27 Vladimir Serbinenko - - * grub-core/normal/menu_text.c (grub_print_message_indented_real): Fix a - warning. - -2012-02-27 Vladimir Serbinenko - - * util/grub-install.in: Use file identifier if no UUID is available - or user explicitly prompted for it. - -2012-02-27 Navdeep Parhar - - * grub-core/loader/i386/bsd.c (freebsd_zfsguid): New variable. - (freebsd_get_zfs): New function. - (grub_freebsd_boot): Pass zfs UUID. - (grub_cmd_freebsd): Set zfs UUID. - -2012-02-27 Vladimir Serbinenko - - * conf/Makefile.common (platformdir): Base on pkglibdir and not - pkglibrootdir. - -2012-02-27 Mike Gilbert - - Add configure flag to control libzfs integration. - - * configure.ac: Add AC_ARG_ENABLE(libzfs ...) and associated logic. - -2012-02-26 Vladimir Serbinenko - - * grub-core/disk/diskfilter.c (insert_array): Choose the smallest - device. - * grub-core/disk/mdraid_linux.c (grub_mdraid_detect): Reject too - small devices. - -2012-02-26 Vladimir Serbinenko - - Remove grub_{modname}_init and grub_{modname}_fini. They should never - be used directly if it's really a module and GRUB_MOD_INIT shouldn't - be used on non-modules. - - * grub-core/commands/boot.c (GRUB_MOD_INIT) [LOONGSON || QEMU_MIPS]: - Rename to grub_boot_init. - (GRUB_MOD_FINI) [LOONGSON || QEMU_MIPS]: Rename to grub_boot_fini. - * grub-core/commands/keylayouts.c (GRUB_MOD_INIT) - [LOONGSON || QEMU_MIPS]: Rename to grub_keylayouts_init. - (GRUB_MOD_FINI) [LOONGSON || QEMU_MIPS]: Rename to grub_keylayouts_fini. - * grub-core/font/font_cmd.c (GRUB_MOD_INIT) - [LOONGSON || QEMU_MIPS]: Rename to grub_font_init. - (GRUB_MOD_FINI) [LOONGSON || QEMU_MIPS]: Rename to grub_font_fini. - * grub-core/kern/mips/loongson/init.c: Replace explicit protos with - includes. - (grub_machine_init): Remove empty inits. - * grub-core/kern/mips/qemu_mips/init.c: Replace explicit protos with - includes. - (grub_machine_init): Remove empty inits. - * grub-core/term/arc/console.c: Remove explicit proto. - * grub-core/term/at_keyboard.c (GRUB_MOD_INIT) - [LOONGSON || QEMU_MIPS]: Rename to grub_at_keyboard_init. - (GRUB_MOD_FINI) [LOONGSON || QEMU_MIPS]: Rename to - grub_at_keyboard_fini. - * grub-core/term/gfxterm.c (GRUB_MOD_INIT) - [LOONGSON || QEMU_MIPS]: Rename to grub_gfxterm_init. - (GRUB_MOD_FINI) [LOONGSON || QEMU_MIPS]: Rename to - grub_gfxterm_fini. - * grub-core/term/i386/pc/vga_text.c (GRUB_MOD_INIT) - [LOONGSON || QEMU_MIPS]: Rename to grub_vgatext_init. - (GRUB_MOD_FINI) [LOONGSON || QEMU_MIPS]: Rename to - grub_vgatext_fini. - * grub-core/term/ieee1275/console.c: Remove explicit proto. - * grub-core/term/serial.c (GRUB_MOD_INIT) - [LOONGSON || QEMU_MIPS]: Rename to grub_serial_init. - (GRUB_MOD_FINI) [LOONGSON || QEMU_MIPS]: Rename to - grub_serial_fini. - * grub-core/term/terminfo.c (GRUB_MOD_INIT) - [LOONGSON || QEMU_MIPS]: Rename to grub_terminfo_init. - (GRUB_MOD_FINI) [LOONGSON || QEMU_MIPS]: Rename to - grub_terminfo_fini. - * grub-core/video/bitmap.c (GRUB_MOD_INIT): Removed. - (GRUB_MOD_FINI): Likewise. - * grub-core/video/radeon_fuloong2e.c (GRUB_MOD_INIT) - [LOONGSON]: Rename to grub_video_radeon_fuloong2e_init. - (GRUB_MOD_FINI) [LOONGSON]: Rename to - grub_video_radeon_fuloong2e_fini. - * grub-core/video/sis315pro.c (GRUB_MOD_INIT) - [LOONGSON]: Rename to grub_video_sis315pro_init. - (GRUB_MOD_FINI) [LOONGSON]: Rename to - grub_video_sis315pro_fini. - * grub-core/video/sm712.c (GRUB_MOD_INIT) - [LOONGSON]: Rename to grub_video_sm712_init. - (GRUB_MOD_FINI) [LOONGSON]: Rename to - grub_video_sm712_fini. - * include/grub/at_keyboard.h (grub_at_keyboard_init): New proto. - (grub_at_keyboard_fini): Likewise. - * include/grub/dl.h (GRUB_MOD_INIT) [!GRUB_UTIL && !EMU]: - Don't declare grub_{modname}_init. - (GRUB_MOD_INIT) [!GRUB_UTIL && !EMU]: Don't declare grub_{modname}_fini. - * include/grub/keyboard_layouts.h (grub_keylayouts_init) [!EMU]: - New proto. - (grub_keylayouts_fini) [!EMU]: Likewise. - * include/grub/serial.h (grub_serial_init) [!EMU]: - New proto. - (grub_serial_fini) [!EMU]: Likewise. - * include/grub/terminfo.h (grub_terminfo_init) [!EMU]: - New proto. - (grub_terminfo_fini) [!EMU]: Likewise. - * include/grub/video.h (grub_font_init) [!EMU]: - New proto. - (grub_font_fini) [!EMU]: Likewise. - (grub_gfxterm_init) [!EMU]: Likewise. - (grub_gfxterm_fini) [!EMU]: Likewise. - (grub_video_sm712_init) [!EMU]: Likewise. - (grub_video_sm712_fini) [!EMU]: Likewise. - (grub_video_sis315pro_init) [!EMU]: Likewise. - (grub_video_sis315pro_fini) [!EMU]: Likewise. - (grub_video_radeon_fuloong2e_init) [!EMU]: Likewise. - (grub_video_radeon_fuloong2e_fini) [!EMU]: Likewise. - -2012-02-26 Vladimir Serbinenko - - Make nand a prefix for nand devices. - - * grub-core/disk/ieee1275/nand.c (grub_nand_open): Use prefix nand. - -2012-02-26 Vladimir Serbinenko - - * grub-core/kern/misc.c (grub_stpcpy): Move from here ... - * include/grub/misc.h (grub_stpcpy): ... to here. Inlined. - -2012-02-26 Vladimir Serbinenko - - * include/grub/env.h (grub_env_find): Remove prototype. - * grub-core/kern/env.c (grub_env_find): Make static. - (grub_env_set): Remove useless set. - -2012-02-26 Vladimir Serbinenko - - * grub-core/kern/i386/realmode.S: Remove useless align. - -2012-02-26 Vladimir Serbinenko - - * include/grub/dl.h (grub_dl_load_file): Don't export. - -2012-02-26 Vladimir Serbinenko - - * grub-core/disk/diskfilter.c (grub_diskfilter_open): Remove useless - grub_dprintf. - -2012-02-26 Vladimir Serbinenko - - * grub-core/disk/dmraid_nvidia.c (grub_dmraid_nv_detect): Remove useless - grub_errors. - * grub-core/disk/mdraid1x_linux.c (grub_mdraid_detect): Simplify by - not reloading whole superblock but only the part which is really needed. - Remove useless grub_errors. - * grub-core/disk/mdraid_linux.c (grub_mdraid_detect): Remove useless - grub_errors. - -2012-02-26 Vladimir Serbinenko - - Don't export grub_get_rtc. - - * include/grub/i386/pc/time.h (grub_get_rtc): Don't export. - * grub-core/commands/i386/pc/play.c (play): Use grub_get_time_ms. - -2012-02-26 Vladimir Serbinenko - - * grub-core/genmod.sh.in: Add -R .note.GNU-stack to strip. - -2012-02-26 Vladimir Serbinenko - - * grub-core/disk/diskfilter.c (insert_array): Remove scanner_name - argument since it can be deduced from diskfilter. All users updated. - -2012-02-26 Vladimir Serbinenko - - Remove prio_list. - - * include/grub/list.h (grub_prio_list): Removed. - (GRUB_PRIO_LIST_PRIO_MASK): Removed. All users switched to - GRUB_COMMAND_PRIO_MASK. - (GRUB_PRIO_LIST_FLAG_ACTIVE): Removed. All users switched to - GRUB_COMMAND_FLAG_ACTIVE. - (grub_prio_list_insert): Removed. - (grub_prio_list_remove): Likewise. - (GRUB_AS_PRIO_LIST): Likewise. - (GRUB_AS_PRIO_LIST_P): Likewise. - * include/grub/command.h (GRUB_COMMAND_PRIO_MASK): New define. - (GRUB_COMMAND_FLAG_ACTIVE): Likewise. - * grub-core/kern/list.c (grub_prio_list_insert): Remove. - * grub-core/kern/command.c (grub_register_command_prio): Inline - the prio_list code. - (grub_unregister_command): Likewise. - -2012-02-26 Vladimir Serbinenko - - Fix interrupt mixup from previous commit. - - * include/grub/i386/pc/int.h (grub_i386_idt): New struct. - (grub_realidt): New var. - * grub-core/lib/i386/relocator16.S (grub_relocator16_idt): New variable - Load idt. - * grub-core/lib/i386/relocator.c (grub_relocator16_idt): - New declaration. - (grub_relocator16_boot): Set grub_relocator16_idt. - * grub-core/kern/i386/realmode.S (realidt): Renamed to ... - (LOCAL(realidt)): ... this. - * grub-core/boot/i386/pc/startup_raw.S: Pass pointer to realidt in eax. - * grub-core/kern/i386/pc/startup.S: Save pointer to realidt. - (grub_realidt): New variable. - -2012-02-26 Vladimir Serbinenko - - * grub-core/lib/i386/backtrace.c (grub_cmd_backtrace): Move from ... - * grub-core/lib/backtrace.c (grub_cmd_backtrace): ... to here. - * grub-core/lib/i386/backtrace.c (GRUB_MOD_INIT): Move from ... - * grub-core/lib/backtrace.c (GRUB_MOD_INIT): ... to here. - Gettextize. - * grub-core/lib/i386/backtrace.c (GRUB_MOD_FINI): Move from ... - * grub-core/lib/backtrace.c (GRUB_MOD_FINI): ... to here. - * po/POTFILES.in: Regenerate. - -2012-02-26 Vladimir Serbinenko - - * grub-core/commands/probe.c (grub_cmd_probe): Gettextise UUID and label - errors. - -2012-02-26 Vladimir Serbinenko - - * grub-core/gnulib/argp-fmtstream.c (__argp_get_display_len): Stop on - \0. - (add_length): Likewise. - -2012-02-26 Vladimir Serbinenko -2012-02-26 Lubomir Kundrak - - GDB serial and backtrace support. - - * grub-core/kern/i386/realmode.S (real_to_prot): Reload IDT. - (prot_to_real): Likewise. - * grub-core/kern/i386/int.S (grub_bios_interrupt): Remove IDT reload. - * grub-core/Makefile.core.def (backtrace): New module. - (gdb): Likewise. - * grub-core/gdb/cstub.c: New file. - * grub-core/gdb/gdb.c: Likewise. - * grub-core/gdb/i386/idt.c: Likewise. - * grub-core/gdb/i386/machdep.S: Likewise. - * grub-core/gdb/i386/signal.c: Likewise. - * grub-core/lib/i386/backtrace.c: Likewise. - * grub-core/lib/backtrace.c: Likewise. - * include/grub/backtrace.h: Likewise. - * include/grub/gdb.h: Likewise. - * include/grub/i386/gdb.h: Likewise. - -2012-02-26 Vladimir Serbinenko - - * grub-core/gnulib/argp-fmtstream.c (__argp_get_display_len): - New function. - (add_length): Likewise. - (__argp_fmtstream_update): Handle strings with non-ASCII chars. - * grub-core/gnulib/argp-fmtstream.h (__argp_get_display_len): New - proto. - * grub-core/gnulib/argp-help.c (argp_args_usage): Use - __argp_get_display_len. - -2012-02-26 Vladimir Serbinenko - - $"..." support in scripts. - - * grub-core/script/execute.c (grub_script_arglist_to_argv): Handle - GRUB_SCRIPT_ARG_TYPE_GETTEXT. - * grub-core/script/yylex.l: Likewise. - * include/grub/script_sh.h (GRUB_SCRIPT_ARG_TYPE_GETTEXT): New enum - value. - -2012-02-26 Vladimir Serbinenko - - * gentpl.py: Remove obsolete pkglib_DATA handling. - -2012-02-26 Vladimir Serbinenko - - Don't transform PACKAGE_TARNAME following a discussion on autoconf - mailing list. - - * util/grub-install.in: Don't transform PACKAGE_TARNAME. - * util/grub-kbdcomp.in: Likewise. - * util/grub-mkconfig.in: Likewise. - * util/grub-mkconfig_lib.in: Likewise. - * util/grub-mknetdir.in: Likewise. - * util/grub-mkrescue.in: Likewise. - * util/grub-mkstandalone.in: Likewise. - * util/grub-reboot.in: Likewise. - * util/grub-set-default.in: Likewise. - * util/powerpc/ieee1275/grub-mkrescue.in: Likewise. - -2012-02-26 Vladimir Serbinenko - - Remove GRUB_PREFIX. - - * util/grub-mkconfig.in: Remove GRUB_PREFIX. - * util/grub.d/00_header.in: Compute prefix in the only place it's still - used for backward compatibility. - -2012-02-26 Vladimir Serbinenko - - Add new all_video module. - - * grub-core/Makefile.am (moddep.lst): Make dependent on video.lst. - * grub-core/Makefile.core.def (all_video): New module. - * grub-core/genmoddep.awk: Generate dependency of all_video from - video.lst. - * grub-core/lib/fake_module.c: New file. - * grub-core/normal/main.c (features): Add feature_all_video_module. - * util/grub.d/00_header.in: Define locale_dir based on $prefix and - don't do explicit search again. - insmod all_video in load_video if available. - -2012-02-26 Vladimir Serbinenko - - Another round of string clarification and adding TRANSLATORS comments. - -2012-02-26 Vladimir Serbinenko - - * util/grub-mknetdir.in: Remove erroneous reference to install_device. - -2012-02-26 Vladimir Serbinenko - - * grub-core/normal/charset.c (grub_utf8_to_ucs4_alloc): Fix return type - to grub_ssize_t. - * grub-core/normal/main.c (grub_normal_init_page): Fix msg_len type. - * include/grub/charset.h (grub_utf8_to_ucs4_alloc): Fix prototype. - -2012-02-26 Vladimir Serbinenko - - * grub-core/normal/menu_text.c (grub_print_message_indented_real): Add - trailing newline implicitly. All users updated. - -2012-02-26 Vladimir Serbinenko - - Implement serial on IEEE1275 and EFI. - - * docs/grub.texi (Platform-specific limitations): Fix the columen video - on emu. Mention arc and emu as the only platforms without serial - support. - * grub-core/Makefile.core.def (serial): Enable on all terminfomodule and - ieee1275 platforms. - * grub-core/term/efi/serial.c: New file. - * grub-core/term/ieee1275/serial.c: Likewise. - * grub-core/term/serial.c (grub_serial_find): Disable direct port - specification if no ns8250 driver is available. - (grub_cmd_serial): Likewise. - (GRUB_MOD_INIT) [GRUB_MACHINE_IEEE1275]: Init ofserial. - (GRUB_MOD_INIT) [GRUB_MACHINE_EFI]: Init efiserial. - * include/grub/efi/api.h (GRUB_EFI_SERIAL_IO_GUID): New define. - (grub_efi_parity_type_t): New type. - (grub_efi_stop_bits_t): Likewise. - (grub_efi_serial_io_interface): New struct. - * include/grub/serial.h (grub_serial_port): Make 'broken' field - available for all interfaces. - Add EFI and IEEE1275 fields. - (grub_ofserial_init): New proto. - (grub_efiserial_init): Likeiwse. - * util/grub.d/00_header.in: Don't check for the presence of serial - module. - -2012-02-26 Vladimir Serbinenko - - * grub-core/disk/ieee1275/ofdisk.c (scan): Fix improper use of device - name as if it was an alias. - -2012-02-25 Vladimir Serbinenko - - * grub-core/commands/lsacpi.c (options): Fix typo. - -2012-02-25 Vladimir Serbinenko - - Convert grub-emu to argp. - - * grub-core/Makefile.core.def (kernel): Add kern/emu/argp_common.c on - emu. - * util/argp_common.c: Rename to ... - * grub-core/kern/emu/argp_common.c: ... this. All users updated. - Add missing includes. - * grub-core/kern/emu/main.c: Convert to argp. - * po/POTFILES.in: Regenerate. - * util/grub-install.in (usage): Make first letter lowcase in messages - for uniformity. - * util/grub-setup.c (options): Likewise. - -2012-02-24 Vladimir Serbinenko - - * grub-core/gfxmenu/gui_progress_bar.c (progress_bar_set_property): - Put back accidently commented-out code. - -2012-02-24 Vladimir Serbinenko - - * grub-core/fs/hfsplus.c (grub_hfsplus_btree_iterate_node): Add btree - loop check using Brent algorithm. - (grub_hfsplus_btree_search): Likewise. - -2012-02-24 Vladimir Serbinenko - - * util/grub-install.in: Fix usage of wrong device for PreP install. - -2012-02-24 Vladimir Serbinenko - - * conf/Makefile.common (CFLAGS_GNULIB): Add - -Wno-unsafe-loop-optimizations. - * configure.ac: Remove -Wmissing-declarations and -Wmissing-prototypes - on tools. - * grub-core/commands/legacycfg.c: Add pragma to skip - -Wunsafe-loop-optimizations. - (check_password_md5_real): Fix loop counter type. - * grub-core/commands/testload.c (grub_cmd_testload): Fix over the EOF - reading. - * grub-core/disk/ldm.c (grub_util_get_ldm): Fix logic error. - * grub-core/fs/zfs/zfs_sha256.c (zio_checksum_SHA256): Add safety - loop condition. - * grub-core/io/gzio.c: Add pragma to skip -Wunsafe-loop-optimizations. - * grub-core/lib/LzmaEnc.c (GetOptimum): Avoid possible infinite loop. - * grub-core/net/net.c (grub_net_route_address): Add safety loop - condition. - * grub-core/normal/charset.c (bidi_line_wrap): Likewise. - * grub-core/normal/cmdline.c (grub_set_history): Fix loop types and - avoid possible infinite loops. - * grub-core/script/parser.y: Add pragma to skip -Wmissing-declarations - and -Wunsafe-loop-optimizations. - * grub-core/script/yylex.l: Likewise. - * util/grub-mkfont.c: Add pragma to skip -Wunsafe-loop-optimizations. - (print_glyphs): Avoid infinite loops. - * util/grub-mkimage.c (compress_kernel_xz): Fix format security. - -2012-02-24 Grégoire Sutre - - * grub-core/commands/lsacpi.c (disp_acpi_xsdt_table): Fix loop condition - to avoid infinite loop. - (disp_acpi_rsdt_table): Likewise. - -2012-02-24 Vladimir Serbinenko - - * grub-core/font/font.c (grub_font_load): Add support for default - path for fonts ($prefix/fonts). - * grub-core/kern/corecmd.c (grub_core_cmd_insmod): Unify condition - for checking if string is a path. - * grub-core/normal/main.c (features): Add feature_default_font_path. - * util/grub-mkconfig.in: Skip mangling of GRUB_FONT into GRUB_FONT_PATH. - * util/grub.d/00_header.in: Use default directory if possible. - * util/grub-install.in: Install unicode.pf2. - -2012-02-24 Vladimir Serbinenko - - * po/README: Add de_CH and en@quot to po/LINGUAS generation command. - * po/Rules-swiss: New file. - * po/swiss.sed: Likewise. - -2012-02-23 Vladimir Serbinenko - - * grub-core/fs/btrfs.c (find_device): Fix typos. - * grub-core/fs/zfs/zfs.c (read_device): Likewise. - * util/grub-mkrelpath.c (argp_parser): Likewise. - Reported by: Yuri Chornoivan. - -2012-02-23 Dalet Omega - - * grub-core/gfxmenu/gui_label.c (label_set_property): Add template - for usual informative messages. - -2012-02-23 Dalet Omega - - Starfield theme. - - * Makefile.am: Define starfield_DATA and dejavu.pf2 generation. - * conf/Makefile.common: Define starfielddir. - * configure.ac: Configure starfield. - * themes/starfield/COPYING.CC-BY-SA-3.0: New file. - * themes/starfield/README: Likewise. - * themes/starfield/blob_w.png: Likewise. - * themes/starfield/boot_menu_c.png: Likewise. - * themes/starfield/boot_menu_e.png: Likewise. - * themes/starfield/boot_menu_n.png: Likewise. - * themes/starfield/boot_menu_ne.png: Likewise. - * themes/starfield/boot_menu_nw.png: Likewise. - * themes/starfield/boot_menu_s.png: Likewise. - * themes/starfield/boot_menu_se.png: Likewise. - * themes/starfield/boot_menu_sw.png: Likewise. - * themes/starfield/boot_menu_w.png: Likewise. - * themes/starfield/slider_c.png: Likewise. - * themes/starfield/slider_n.png: Likewise. - * themes/starfield/slider_s.png: Likewise. - * themes/starfield/src/blob_nw.xcf: Likewise. - * themes/starfield/src/bootmenu/: Likewise. - * themes/starfield/src/bootmenu/center.xcf: Likewise. - * themes/starfield/src/bootmenu/corner.xcf: Likewise. - * themes/starfield/src/bootmenu/side.xcf: Likewise. - * themes/starfield/src/slider_c.xcf: Likewise. - * themes/starfield/src/slider_n.xcf: Likewise. - * themes/starfield/src/slider_s.xcf: Likewise. - * themes/starfield/src/terminalbox/: Likewise. - * themes/starfield/src/terminalbox/center.xcf: Likewise. - * themes/starfield/src/terminalbox/corner.xcf: Likewise. - * themes/starfield/src/terminalbox/side.xcf: Likewise. - * themes/starfield/starfield.png: Likewise. - * themes/starfield/terminal_box_c.png: Likewise. - * themes/starfield/terminal_box_e.png: Likewise. - * themes/starfield/terminal_box_n.png: Likewise. - * themes/starfield/terminal_box_ne.png: Likewise. - * themes/starfield/terminal_box_nw.png: Likewise. - * themes/starfield/terminal_box_s.png: Likewise. - * themes/starfield/terminal_box_se.png: Likewise. - * themes/starfield/terminal_box_sw.png: Likewise. - * themes/starfield/terminal_box_w.png: Likewise. - * themes/starfield/theme.txt: Likewise. - -2012-02-23 Vladimir Serbinenko - - * util/grub.d/00_header.in: Add missing export theme. - -2012-02-22 Vladimir Serbinenko - - * util/ieee1275/ofpath.c: Remove include of malloc.h since stdlib is - already included. - Reported by: Eren D. - -2012-02-22 Vladimir Serbinenko - - * conf/Makefile.common (grubdatadir): Removed. - (Makefile.am): Move eveything grubdata to pkgdata. - -2012-02-22 Vladimir Serbinenko - - * grub-core/commands/acpihalt.c (get_sleep_type): - Remove unused variable. - -2012-02-22 Vladimir Serbinenko - - * include/grub/acpi.h (GRUB_ASCII_OPCODE): Add - GRUB_ACPI_OPCODE_STRING_CONST, GRUB_ACPI_OPCODE_BUFFER, - GRUB_ACPI_OPCODE_CREATE_WORD_FIELD - and GRUB_ACPI_OPCODE_CREATE_BYTE_FIELD. - * grub-core/commands/acpihalt.c [GRUB_DSDT_TEST]: Replace include of - i18n with gettext no-op. - (skip_data_ref_object): Support GRUB_ACPI_OPCODE_BUFFER and - GRUB_ACPI_OPCODE_STRING_CONST. - (get_sleep_type): Support GRUB_ACPI_OPCODE_CREATE_WORD_FIELD and - GRUB_ACPI_OPCODE_CREATE_BYTE_FIELD. Add handling of unknown opcodes. - -2012-02-22 Vladimir Serbinenko - - * po/POTFILES.in: Regenerate. - -2012-02-22 Vladimir Serbinenko - - * Makefile.util.def (libgrubmods.a): Add -Wno-error=logical-op - -Wno-error=missing-noreturn. - -2012-02-22 Vladimir Serbinenko - - * grub-core/fs/affs.c (grub_affs_read_block): Avoid <= in loop - condition to avoid possibly infinite loops. - * grub-core/lib/pbkdf2.c (grub_crypto_pbkdf2): Likewise. - * grub-core/lib/xzembed/xz_dec_bcj.c (bcj_powerpc): Likewise. - -2012-02-22 Vladimir Serbinenko - - * grub-core/normal/charset.c (bidi_line_wrap): Avoid <= in loop - condition to avoid possibly infinite loops. - -2012-02-22 Vladimir Serbinenko - - * grub-core/kern/emu/hostdisk.c (read_device_map): Add missing noreturn - on show_error. - -2012-02-22 Vladimir Serbinenko - - * grub-core/kern/disk.c (grub_disk_write): Add missing const qualifier. - -2012-02-22 Vladimir Serbinenko - - * grub-core/kern/corecmd.c (grub_core_cmd_ls): Add missing var init. - -2012-02-22 Vladimir Serbinenko - - * util/bin2h.c (usage): Add missing attribute noreturn. - -2012-02-22 Vladimir Serbinenko - - * grub-core/commands/testload.c (grub_cmd_testload): Fix overflow - if the size isn't divisible by 512. - -2012-02-22 Vladimir Serbinenko - - Make list_push and list_remove functions rather than inline functions - to decrease size and avoid aliasing violations. - - * include/grub/list.h (grub_list_push): Move to ... - * grub-core/kern/list.c (grub_list_push): ... here. Don't inline. - * include/grub/list.h (grub_list_remove): Move to ... - * grub-core/kern/list.c (grub_list_remove): ... here. Don't inline. - -2012-02-22 Vladimir Serbinenko - - * configure.ac: Disable for now -Wstack-protector, -Wunreachable-code - and -Wunused-result. - -2012-02-21 Vladimir Serbinenko - - * grub-core/net/net.c (grub_cmd_deladdr): Fix index. - Reported by: Seth Goldberg - -2012-02-21 Vladimir Serbinenko - - * configure.ac: Add -fno-builtin-gettext on host if NLS is disabled. - -2012-02-19 Samuel Thibault - - * util/grub-mkconfig.in (GRUB_CMDLINE_GNUMACH): Export variable. - * util/grub.d/10_hurd.in: Include GRUB_CMDLINE_GNUMACH in gnumach - command line. - * docs/grub.texi (Simple configuration): Document - GRUB_CMDLINE_GNUMACH. - -2012-02-18 Vladimir Serbinenko - - * conf/Makefile.common (platform_SCRIPTS): New variable. - (platform_PROGRAMS): Likewise. - * gentpl.py: Mark *,module and *.image for install. - * grub-core/gdb_grub.in: Add a notice of expected environment. - * grub-core/Makefile.core.def (gdb_grub): Mark for install. - (gmodule.pl): Likewise. - -2012-02-18 Vladimir Serbinenko - - Replace grub_checkkey with grub_getkey_noblock. - - * grub-core/kern/term.c (grub_checkkey): Replaced with ... - (grub_getkey_noblock): ... this. All users updated. - -2012-02-18 Vladimir Serbinenko - - * grub-core/kern/emu/console.c: Move to ... - * grub-core/term/emu/console.c: ...here. - (grub_ncurses_getkey): Fix return value if no key is detected. - -2012-02-12 Vladimir Serbinenko - - * include/grub/test.h (grub_unit_test_init): Add missing prototype. - (grub_unit_test_fini): Likewise. - * tests/lib/unit_test.c (main): Remove extra nested external prototype. - -2012-02-12 Vladimir Serbinenko - - * include/grub/test.h (GRUB_UNIT_TEST) - -2012-02-12 Vladimir Serbinenko - - * grub-core/script/execute.c (grub_script_break): Clarify logic. - Better error handling. - (grub_script_return): Likewise. - * grub-core/script/lexer.c (grub_script_lexer_yywrap): Likewise. - -2012-02-12 Vladimir Serbinenko - - * grub-core/lib/libgcrypt_wrap/cipher_wrap.h (__GNU_LIBRARY__): Avoid - rimplicit redifinition. - -2012-02-12 Vladimir Serbinenko - - * docs/grub.texi (Internationalisation): Detail (lack of) collation in - GRUB. - -2012-02-12 Vladimir Serbinenko - - * grub-core/normal/cmdline.c (grub_cmdline_get): Don't gettext prompt. - * grub-core/normal/main.c (grub_normal_read_line_real): Gettext - prompt here. - -2012-02-12 Vladimir Serbinenko - - * grub-core/fs/zfs/zfs.c (zfs_fetch_nvlist): Mark unknown member here - as GRUB_ERR_BUG. Don't malloc if no device is available. - -2012-02-12 Vladimir Serbinenko - - * grub-core/term/terminfo.c (grub_terminfo_output_unregister): - Mark calling with invalid term as GRUB_ERR_BUG. - -2012-02-12 Vladimir Serbinenko - - * grub-core/net/tftp.c (tftp_receive): Silently discard too short - packets rather than raising an error. - -2012-02-12 Vladimir Serbinenko - - * grub-core/loader/xnu.c (grub_xnu_writetree_toheap_real): Avoid set - in if. - -2012-02-12 Vladimir Serbinenko - - * grub-core/loader/efi/appleloader.c (grub_cmd_appleloader): Move - diagnostic to dprintf. - * grub-core/loader/i386/pc/linux.c (grub_cmd_linux): Likewise. - -2012-02-12 Vladimir Serbinenko - - * grub-core/kern/corecmd.c (grub_core_cmd_ls): Handle error in parsing - device name. - -2012-02-12 Vladimir Serbinenko - - * grub-core/fs/ntfs.c (locate_attr): Avoid set in if. - (grub_ntfs_iterate_dir): Likewise. - -2012-02-12 Vladimir Serbinenko - - Efiemu stylistic fixes and gettext. - - * grub-core/efiemu/i386/loadcore32.c - (grub_arch_efiemu_relocate_symbols32): Avoid set in if. - * grub-core/efiemu/i386/loadcore64.c - (grub_arch_efiemu_relocate_symbols64): Likewise. - * grub-core/efiemu/i386/pc/cfgtables.c - (grub_machine_efiemu_init_tables): Likewise. - * grub-core/efiemu/loadcore.c (grub_efiemu_resolve_symbols): Likewise. - (grub_efiemu_loadcore_initXX): Add a filename argument. - All users updated. - Improved error message. - * grub-core/efiemu/loadcore_common.c (grub_efiemu_loadcore_init): - Add a filename argument. - All users updated. - * grub-core/efiemu/symbols.c (grub_efiemu_set_virtual_address_map): - Reclassify double relocation as GRUB_ERR_BUG. - -2012-02-12 Vladimir Serbinenko - - * grub-core/commands/i386/pc/play.c (grub_cmd_play): Improve error - handling. - -2012-02-12 Vladimir Serbinenko - - * grub-core/commands/hdparm.c (grub_cmd_hdparm): Allow running - on partition. - -2012-02-12 Vladimir Serbinenko - - * include/grub/misc.h (grub_error_save): Fix cleaning grub_errno. - -2012-02-12 Vladimir Serbinenko - - Improve string. Gettextize. - -2012-02-11 Vladimir Serbinenko - - * configure.ac: Remove -Winline altogether and -Wmissing-prototypes on - utils. - * util/import_gcry.py: Add -Wno-strict-aliasing on checked modules. - -2012-02-11 Vladimir Serbinenko - - * grub-core/disk/diskfilter.c (grub_diskfilter_print_partmap) - [GRUB_UTIL]: New function. - (insert_array) [GRUB_UTIL]: Store partmaps. - * include/grub/diskfilter.h (grub_diskfilter_pv) [GRUB_UTIL]: New member - partmaps. - (grub_diskfilter_print_partmap) [GRUB_UTIL]: New proto. - * util/grub-probe.c (probe_partmap): Call grub_diskfilter_print_partmap. - (probe_abstraction): Print diskfilter and not raid. - Reported by: Lennart Sorensen - -2012-02-11 Vladimir Serbinenko - - * util/grub-mkimage.c (generate_image): Explicitly init decompress_size. - * util/grub-mkimagexx.c (MASK3): New define. - (add_value_to_slot_20b): Use MASK3. - (add_value_to_slot_21): Likewise. - (relocate_addresses): Fix format specification. - (load_image): Explicitly init symtab_section. - -2012-02-11 Vladimir Serbinenko - - * util/getroot.c (grub_find_root_devices_from_mountinfo): Fix types. - (grub_util_biosdisk_get_grub_dev): Fix format specification. - -2012-02-11 Vladimir Serbinenko - - * grub-core/kern/emu/full.c (grub_arch_dl_get_tramp_got_size): Enable - on powerpc. - Reported by: Lennart Sorensen - -2012-02-11 Vladimir Serbinenko - - * gentpl.py: Add missing license header. - * docs/grub.texi: Update copyright year. - -2012-02-10 Grégoire Sutre - - Source grub-mkconfig_lib from the build directory at build time. - Suggested by: Vladimir Serbinenko. - - * gentpl.py (manpage): Set pkgdatadir to $(builddir) on help2man call. - * util/grub-install.in: Define pkgdatadir if not already set, and source - grub-mkconfig_lib from there. - * util/grub-kbdcomp.in: Likewise. - * util/grub-mkconfig.in: Likewise. - * util/grub-mknetdir.in: Likewise. - * util/grub-mkrescue.in: Likewise. - * util/grub-mkstandalone.in: Likewise. - * util/grub-reboot.in: Likewise. - * util/grub-set-default.in: Likewise. - * util/powerpc/ieee1275/grub-mkrescue.in: Likewise. - -2012-02-10 Vladimir Serbinenko - - Increase warning level. - - * conf/Makefile.common (CFLAGS_GNULIB): Add -Wno-redundant-decls - -Wno-unreachable-code -Wno-conversion -Wno-old-style-definition. - * configure.ac (HOST_CFLAGS): Add bunch of -W arguments. - (TARGET_CFLAGS): Likewise. - (HOST_CFLAGS): Add -Werror unless --disable-werror is activated. - * grub-core/Makefile.core.def (decompressor_xz): Add - -Wno-unreachable-code. - (normal): Add -Wno-redundant-decls. - (xzio): Add -Wno-unreachable-code. - (lzopio): Add -Wno-redundant-decls -Wno-error. - * grub-core/commands/acpi.c: Add exception to -Wcast-align. - * grub-core/commands/lsacpi.c: Add exception to -Wcast-align. - * grub-core/gensymlist.sh: Add exception to -Wmissing-format-attribute. - * grub-core/kern/dl.c: Add exception to -Wcast-align. - * grub-core/kern/efi/efi.c (grub_efi_modules_addr): Likewise. - * grub-core/kern/i386/coreboot/init.c: Add exception to - -Wsuggest-attribute=noreturn. - * grub-core/kern/ia64/dl.c: Add exception to -Wcast-align. - * grub-core/kern/ia64/dl_helper.c: Likewise. - * grub-core/kern/mips/dl.c: Likewise. - * grub-core/kern/sparc64/dl.c: Likewise. - * grub-core/lib/LzmaEnc.c: Add exception to -Wshadow. - * grub-core/lib/libgcrypt_wrap/cipher_wrap.h (memcpy): Likewise. - (memcmp): Likewise. - * grub-core/lib/pbkdf2.c: Add exception to -Wunreachable-code. - * grub-core/loader/ia64/efi/linux.c: Add exception to -Wcast-align. - * grub-core/loader/mips/linux.c: Likewise. - * grub-core/loader/multiboot_elfxx.c: Likewise. - * grub-core/script/parser.y: Add exception to -Wunreachable-code. - * grub-core/video/sm712.c: Add exception to -Wcast-align. - * util/import_gcry.py: Add -Wno-cast-align to modules checked by hand. - * grub-core/font/font.c (grub_font_loader_init): Add explicit cast and - fixme. - * grub-core/fs/iso9660.c (grub_iso9660_iterate_dir): Likewise. - * grub-core/kern/i386/multiboot_mmap.c (grub_machine_mmap_init): - Fix prototype. - -2012-02-10 Vladimir Serbinenko - - * grub-core/lib/i386/relocator16.S: Fix incorrect use of absolute - address. - -2012-02-10 Vladimir Serbinenko - - * grub-core/commands/legacycfg.c (grub_cmd_legacy_kernel): - Avoid improper use of strings. - (grub_cmd_legacy_initrdnounzip): Likewise. - -2012-02-10 Vladimir Serbinenko - - * include/grub/emu/misc.h (grub_util_warn): Add missing format - attribute. - (grub_util_info): Likewise. - (grub_util_error): Likewise. - -2012-02-10 Vladimir Serbinenko - - * util/grub-mount.c (fuse_init): Avoid improper use of strings. - * util/grub-fstest.c (fstest): Likewise. - -2012-02-10 Vladimir Serbinenko - - * grub-core/disk/geli.c (grub_md_sha256_real): Respect format security. - (grub_md_sha512_real): Likewise. - (grub_util_get_geli_uuid): Likewise. - * grub-core/kern/emu/hostdisk.c (grub_util_get_fd_sectors): Likewise. - (grub_util_biosdisk_open): Fix format specification. - Respect format security. - * grub-core/kern/emu/misc.c (xmalloc): Respect format security. - (xrealloc): Likewise. - (xasprintf): Likewise. - -2012-02-10 Vladimir Serbinenko - - * util/import_gcry.py: Include grub/crypto.h in init.c. - -2012-02-10 Vladimir Serbinenko - - * util/grub-mkimage.c (compress_kernel_lzma): Respect format security. - (generate_image): Make prefix a const char *. - Fix format specifications. Respect format security. - Avoid void * arithmetics. - Avoid shadowing. - (argp_parser): Remove unused variable. Respect format security. - * util/grub-mkimagexx.c (relocate_symbols): Avoid shadowing. - (count_funcs) [!MKIMAGE_ELF64]: #if-out. - (count_funcs): Remove unused variable. - (relocate_addresses): Fix format specification. - Disable x86-64 with elf32. Remove unused variables. - (add_fixup_entry): Avoid shadowing. - (make_reloc_section): Fix format specification. - Use assert. - (locate_sections): Fix format specifications. - (load_image): Avoid shadowing. - -2012-02-10 Vladimir Serbinenko - - * util/grub-setup.c (setup): Remove unused variable. Avoid shadowing. - Fix format specifications. Respect format security. - Don't translate already translated grub_errmsg. - (argp_parser): Remove unused variable - -2012-02-10 Vladimir Serbinenko - - * util/grub-mkrelpath.c (argp_parser): Remove unused variable. - -2012-02-10 Vladimir Serbinenko - - * util/grub-mkpasswd-pbkdf2.c (argp_parser): Remove unused variable. - (main): Likewise. Use xmalloc. Respect format security. - -2012-02-10 Vladimir Serbinenko - - * util/grub-mklayout.c (console_grub_equivalence): Make "layout" - a const char *. - (argp_parser): Remove unused variable. - -2012-02-10 Vladimir Serbinenko - - * util/grub-mkfont.c (grub_font_info): Make name a const char *. - (add_pixel): Make static. - (add_font): Likewise. - (write_string_section): Make name and str a const char *. - (write_be16_section): Make name a const char *. - (print_glyphs): Make static. - (write_font_ascii_bitmap): Likewise. - (write_font_width_spec): Likewise. - (write_font_pf2): Likewise. - (argp_parser): Remove unused variable. - Respect format security. - (main): Avoid shadowing. Respect format security. - -2012-02-10 Vladimir Serbinenko - - * util/grub-editenv.c (argp_parser): Make static. - (create_envblk_file): Use xmalloc. - (open_envblk_file): Likewise. - Resepect format security. - (set_variables): Respect format security. - -2012-02-10 Vladimir Serbinenko - - * util/getroot.c (grub_find_device): Respect format security. - (get_mdadm_uuid): Remove unused variable. - (grub_util_pull_device): Dont call gettext on already translated - grub_errmsg. - (find_system_device): Remove unused variable. - (grub_util_get_grub_dev): Likewise. - (grub_make_system_path_relative_to_its_root): Respect format security. - -2012-02-10 Vladimir Serbinenko - - * util/grub-fstest.c (execute_command): Make first argument - a const char *. - (read_file): Avoid shadowing. - Reuse underlying error message if device open fails. - (cmd_cmp): Respect format security. - (root): Make const char *. - (fstest): Remove args argument and use global copy. - Respect format security. - (argp_parser): Make static. - (main): Make default_root const char *. - -2012-02-10 Vladimir Serbinenko - - * util/grub-mount.c (root): Make const char *. - (execute_command): Make first argument a const char *. - (fuse_init): Respect format security. - (argp_parser): Make static. Remove unused variable. - (main): Make default_root a const char *. - Respect format security. - -2012-02-10 Vladimir Serbinenko - - * util/grub-probe.c (probe): Don't call gettext on already translated - grub_errmsg. - Remove unused variables. - (argp_parser): Remove unused variable. - -2012-02-10 Vladimir Serbinenko - - * util/grub-script-check.c (argp_parser): Remove unused variable. - (main): Rename read to curread to avoid shadowing. - -2012-02-10 Vladimir Serbinenko - - * util/misc.c (grub_util_write_image_at): Fix format specification. - (grub_util_write_image): Likewise. - (grub_script_execute_argument_to_string): Removed (unused). - (grub_script_execute_menuentry): Likewise. - (grub_putchar): Likewise. - -2012-02-10 Vladimir Serbinenko - - * include/grub/symbol.h (EXT_C) [GRUB_UTIL]: Removed. - (FUNCTION) [GRUB_UTIL]: Likewise. - (VARIABLE) [GRUB_UTIL]: Likewise. - -2012-02-10 Vladimir Serbinenko - - * include/grub/misc.h: Avoid evaluationg NEED_ENABLE_EXECUTE_STACK and - NEED_REGISTER_FRAME_INFO in GRUB_UTIL. - -2012-02-10 Vladimir Serbinenko - - * grub-core/partmap/bsdlabel.c (iterate_real): Fix freeing of static - buffer. - -2012-02-10 Vladimir Serbinenko - - * grub-core/lib/LzmaEnc.c (LzmaEnc_FastPosInit): Made static. - (LzmaEnc_SaveState): Removed (unused). - (LzmaEnc_RestoreState): Likewise. - (LzmaEnc_InitPriceTables): Made static. - (LzmaEnc_Construct): Likewise. - (LzmaEnc_FreeLits): Likewise. - (LzmaEnc_Destruct): Likewise. - (LzmaEnc_Init): Likewise. - (LzmaEnc_InitPrices): Likewise. - (LzmaEnc_Finish): Likewise. - (LzmaEnc_PrepareForLzma2): Removed (unused). - (LzmaEnc_MemPrepare): Likewise. - (LzmaEnc_GetNumAvailableBytes): Likewise. - (LzmaEnc_GetCurBuf): Likewise. - (LzmaEnc_CodeOneMemBlock): Likewise. - -2012-02-10 Vladimir Serbinenko - - * grub-core/disk/ldm.c (grub_util_get_ldm): Remove unused variables. - (grub_util_ldm_embed): Likewise. - -2012-02-10 Vladimir Serbinenko - - * util/grub-editenv.c (print_var): Rename name to varname to - avoid shadowing. - (main): Rename index to curindex to avoid shadowing. - Make filename a const char *. - -2012-02-10 Vladimir Serbinenko - - * grub-core/script/lexer.c (grub_script_lexer_init): Rename getline - to arg_getline to avoid shadowing. - -2012-02-10 Vladimir Serbinenko - - * grub-core/partmap/gpt.c (gpt_partition_map_embed): Rename disk to - disk_ to avoid shadowing. - -2012-02-10 Vladimir Serbinenko - - * grub-core/lib/LzFind.c (MatchFinder_GetIndexByte): Rename index to - curindex to avoid shadowing. - Make static. - (MatchFinder_GetNumAvailableBytes): Make static. - -2012-02-10 Vladimir Serbinenko - - * grub-core/fs/squash4.c (direct_read): Rename read to curread to - avoid shadowing. - -2012-02-10 Vladimir Serbinenko - - * grub-core/disk/cryptodisk.c (grub_cryptodisk_endecrypt): Rename - argument from encrypt to do_encrypt to avoid shadowing. - -2012-02-09 Vladimir Serbinenko - - * grub-core/loader/multiboot_elfxx.c (grub_multiboot_load_elf): Fix - incorrect nesting of #if's. - -2012-02-09 Vladimir Serbinenko - - * grub-core/commands/lsacpi.c (disp_acpi_xsdt_table): #if'-out the - checks which are always false on some platforms. - (grub_cmd_lsacpi): Likewise. - * grub-core/kern/misc.c (grub_strtoul): Likewise. - * grub-core/loader/multiboot.c (grub_multiboot_set_video_mode): - Likewise. - -2012-02-09 Vladimir Serbinenko - - * grub-core/disk/diskfilter.c (read_segment): Renome unreachable code. - * grub-core/net/ip.c (grub_net_recv_ip4_packets): Likewise. - -2012-02-09 Vladimir Serbinenko - - * grub-core/gnulib/regex.h (re_pattern_buffer): Declare buffer as - re_dfa_t to avoid breaking alignment invariants. - * grub-core/gnulib/regex_internal.h (re_dfa_t): Moved to ... - * grub-core/gnulib/regex.h (re_dfa_t): ... here. - -2012-02-09 Vladimir Serbinenko - - * grub-core/loader/i386/xnu.c (grub_xnu_boot): Fix printf. - * grub-core/loader/ia64/efi/linux.c (grub_cmd_fpswa): Likewise. - -2012-02-09 Vladimir Serbinenko - - * grub-core/kern/i386/qemu/mmap.c (grub_machine_mmap_init): - Fix declaration. - -2012-02-09 Vladimir Serbinenko - - * grub-core/bus/usb/ehci.c (grub_ehci_ehcc_read32): Restructure to - conserve alignment invariants. - (grub_ehci_ehcc_read16): Likewise. - (grub_ehci_oper_read32): Likewise. - (grub_ehci_oper_write32): Likewise. - (grub_ehci_pci_iter) [!GRUB_HAVE_UNALIGNED_ACCESS]: Check alignment. - Conserve alignment invariants. - -2012-02-09 Vladimir Serbinenko - - * grub-core/kern/emu/full.c (grub_emu_post_init): Remove raid reinit. - * include/grub/disk.h [GRUB_MACHINE_EMU]: Remove now useless LVM/RAID - declarations. - -2012-02-09 Vladimir Serbinenko - - * grub-core/kern/emu/hostfs.c (grub_hostfs_close): - Remove unused variable. - -2012-02-09 Vladimir Serbinenko - - * grub-core/efiemu/loadcore_common.c (grub_efiemu_loadcore_load): - Remove set in if. - -2012-02-09 Vladimir Serbinenko - - * include/grub/net.h: Remove double declarations. - -2012-02-09 Vladimir Serbinenko - - Remove "payload" command in ia64 Linux loader since I couldn't - find any evidence of it being used for anything. - Replace "relocate" command with an environment variable - - * grub-core/loader/ia64/efi/linux.c (ia64_boot_param): Remove extra - fields. - (ia64_boot_payload): Removed. - (last_payload): Likewise. - (RELOCATE_OFF): Likewise. - (RELOCATE_ON): Likewise. - (RELOCATE_FORCE): Likewise. - (relocate): Likewise. - (free_pages): Don't free payloads. - (grub_load_elf64): Use common error messages. - Use "linux_relocate" variable. - Increase the space after boot_params. - (grub_cmd_payload): Removed. - (grub_cmd_relocate): Likewise. - (grub_cmd_fpswa): Improve messages. - (cmd_payload): Removed. - (cmd_relocate): Likewise. - (GRUB_MOD_INIT): Don't register "payload" and "relocate". - (GRUB_MOD_FINI): Don't unregister "payload" and "relocate". - -2012-02-09 Vladimir Serbinenko - - Convert UHCI to DMA framework. - - * grub-core/bus/usb/uhci.c (grub_uhci): Add chunk and phys members. - (grub_uhci_pci_iter): Fill new members - (grub_alloc_td): Use P2V and V2P functions. - (grub_free_queue): Likewise. - (grub_alloc_qh): Likewise. - (grub_uhci_setup_transfer): Likewise. - (grub_uhci_check_transfer): Likewise. - -2012-02-09 Vladimir Serbinenko - - * grub-core/video/colors.c (grub_video_parse_color): Fix error message. - Remove assignment in if while on it. - -2012-02-09 Vladimir Serbinenko - - * util/grub-mkstandalone.in: Fix modules directory. - -2012-02-09 Vladimir Serbinenko - - * util/grub-mkimage.c (image_targets): Set default_compression to lzma - on i386-pc target. - (argp_parser): Accept "auto" as compression specification. - -2012-02-09 Vladimir Serbinenko - - Fix `help' with unloaded modules. - - * include/grub/normal.h (grub_dyncmd_get_cmd): New proto. - * grub-core/normal/dyncmd.c (grub_dyncmd_get_cmd): New function. - (grub_dyncmd_dispatcher): Small stylistic fix. - * grub-core/commands/help.c (grub_cmd_help): Load missing modules when - explicit help is requested. - -2012-02-09 Vladimir Serbinenko - - * grub-core/fs/cpio.c (grub_cpio_dir): Fix a bug with multiple listing. - Explicitly init restart while on it. - -2012-02-09 Vladimir Serbinenko - - * grub-core/lib/posix_wrap/wchar.h (mbrtowc): Set pwc to zero to avoid - uninited variable. - -2012-02-08 Vladimir Serbinenko - - * util/grub-mknetdir.in: Use . rather than source for POSIX - compatibility. - -2012-02-08 Vladimir Serbinenko - - * util/grub-probe.c (main): Fix trailing space in compatibility hint. - -2012-02-08 Vladimir Serbinenko - - * grub-core/kern/partition.c (grub_partition_get_name): Fix uninited - variable. - -2012-02-08 Vladimir Serbinenko - - * grub-core/commands/hdparm.c (grub_cmd_hdparm): Accept device name - without quotes. - -2012-02-08 Vladimir Serbinenko - - * grub-core/net/net.c (GRUB_MOD_INIT): Don't register netfs. - -2012-02-08 Vladimir Serbinenko - - * grub-core/kern/partition.c (grub_partition_get_name): Fix reverse - iteration of partitions. - -2012-02-08 Vladimir Serbinenko - - Improve gettext support. Stylistic fixes and error handling fixes while - on it. - -2012-02-07 Vladimir Serbinenko - - * grub-core/lib/i386/relocator16.S: Revert moving A20 code into PM - part. Instead setup the correct stack in RM. - * grub-core/lib/i386/relocator.c (grub_relocator16_boot): Reserve place - for stack. - * include/grub/i386/relocator_private.h: New file. - -2012-02-05 Vladimir Serbinenko - - * grub-core/commands/minicmd.c (GRUB_MOD_INIT): Add missing SIZE - argument. - * util/grub-fstest.c (options): Add missing DEVICE part. - -2012-02-05 Vladimir Serbinenko - - Clarify and unify messages. - - * grub-core/commands/hashsum.c (options): Unify messages. - * grub-core/commands/keystatus.c (GRUB_MOD_INIT): Don't mark a - literal-only message as translatable. - * grub-core/commands/lsacpi.c (GRUB_MOD_INIT): Likewise. - * grub-core/loader/ia64/efi/linux.c (GRUB_MOD_INIT): Likewise. - * grub-core/commands/legacycfg.c (GRUB_MOD_INIT): Add quoting around - commands. - * grub-core/commands/menuentry.c (options): Clarify that it's a keyboard - key, not the key used to unlock. Clarify what it's used for. - * grub-core/kern/emu/hostdisk.c (read_device_map): Unify error message. - * grub-core/loader/xnu.c (grub_xnu_load_driver): Remove erroneous colon. - * grub-core/script/main.c (GRUB_MOD_INIT): Clarify [n] to be [NUM]. - * util/grub-editenv.c (options): Unify "verbose" message. - * util/grub-fstest.c (read_file): Unify error message. - (fstest): Add quotes around commands. - (options): Unify "verbose" message. - * util/grub-install.in: Add quotes around variable name. - * util/grub-kbdcomp.in: Unify error message. - * util/grub-mkfont.c (main): Likewise. - * util/grub-mkrescue.in: Likewise. - * util/grub-mklayout.c (options): Unify "verbose" message. - * util/grub-mkstandalone.in: Unify help and verbose messages. - * util/grub-mount.c (options): Unify "verbose" message. - * util/grub-probe.c (options): Likewise. - * util/grub-script-check.c (options): Likewise. - * util/grub-setup.c (setup): Unify no-terminator message. - (options): Use DEVICE and not DEV. - Unify "verbose" message. - * util/ieee1275/ofpath.c (xrealpath): Unify error message. - -2012-02-05 Vladimir Serbinenko - - Improve and unify messages. - - * grub-core/kern/emu/hostdisk.c (grub_util_get_fd_sectors): Add argument - name. All users updated. - Print filename in error. - (read_device_map): Print filename in error. - * util/getroot.c (grub_guess_root_devices): Print filename in error. - (grub_util_get_os_disk): Likewise. - (grub_util_biosdisk_get_grub_dev): Likewise. - (grub_util_check_block_device): Likewise. - (grub_util_check_char_device): Likewise. - (grub_make_system_path_relative_to_its_root): Likewise. - * util/grub-editenv.c (create_envblk_file): Likewise. - (open_envblk_file): Likewise. - (write_envblk): Likewise. - * util/grub-fstest.c (cmd_cp): Likewise. - (cmd_cat): Likewise. - (cmd_cmp): Likewise. - * util/grub-menulst2cfg.c (main): Likewise. - * util/grub-mkfont.c (write_font_ascii_bitmap): Likewise. - (write_font_width_spec): Likewise. - (write_font_pf2): Likewise. - * util/grub-mkimage.c (generate_image): New argument outname. - All users updated. - Remove unreacheable message. - (options): Unify messages. - (help_filter): Likewise. - * util/grub-mklayout.c (usage): Removed (unused). - (main): Print filename in error. - * util/grub-mkrescue.in: Fix wrong quoting. - * util/grub-setup.c (setup): Print filename in error. - * util/ieee1275/ofpath.c (vendor_is_ATA): Likewise. - (check_sas): Likewise. - * util/misc.c (grub_util_get_fp_size): Removed. - (grub_util_get_image_size): Print filename in error. - (grub_util_read_at): Removed. - (grub_util_read_image): Print filename in error. - (grub_util_load_image): Likewise. - (grub_util_write_image_at): New argument filename. All users updated. - Print filename in error. - (grub_util_write_image): New argument filename. All users updated. - Print filename in error. - * util/raid.c (grub_util_raid_getmembers): Print filename in error. - * util/resolve.c (grub_util_resolve_dependencies): Likewise. - -2012-02-05 Vladimir Serbinenko - - * grub-core/Makefile.core.def (pxechain): New module. - * grub-core/loader/i386/pc/pxechainloader.c: New file. - * grub-core/net/drivers/i386/pc/pxe.c (grub_pxe_get_cached): New - function. - (grub_pc_net_config_real): Use grub_pxe_get_cached. - * include/grub/i386/pc/pxe.h (grub_pxe_get_cached): New proto. - -2012-02-05 Vladimir Serbinenko - - * grub-core/kern/err.c (GRUB_MAX_ERRMSG): Move to ... - * include/grub/err.h (GRUB_MAX_ERRMSG): ... here. - * include/grub/err.h (grub_error_saved): New struct. - (grub_errmsg): Make array size explicit. - * include/grub/misc.h (grub_error_save): New function. - (grub_error_load): Likewise. - * grub-core/kern/err.c (grub_error_stack_items): Use grub_error_saved. - (grub_error_push): Update `errno' member name. - (grub_error_pop): Likewise - * grub-core/net/tftp.c (tftp_data): New member save_err. - (tftp_receive): Save error. - (tftp_open): Restore error. - -2012-02-05 Vladimir Serbinenko - - * grub-core/lib/i386/relocator16.S (grub_relocator16_start): Move switch - to real mode down to execute A20-related code in protected mode as - intended. - -2012-02-05 Grégoire Sutre - - * grub-core/disk/diskfilter.c (grub_diskfilter_make_raid): Return - NULL when the argument `level' has an unexpected value. - -2012-02-04 Vladimir Serbinenko - - Move platform-dependent files from $prefix to $prefix/$platform. - - * config.h.in (GRUB_TARGET_CPU): New definition. - (GRUB_PLATFORM): Likewise. - * configure.ac: Define GRUB_TARGET_CPU and GRUB_PLATFORM. - * grub-core/commands/parttool.c (grub_cmd_parttool): Update dir. - * grub-core/efiemu/main.c (grub_efiemu_autocore): Likewise. - * grub-core/kern/dl.c (grub_dl_load): Likewise. - * grub-core/normal/autofs.c (read_fs_list): Likewise. - * grub-core/normal/crypto.c (read_crypto_list): Likewise. - * grub-core/normal/dyncmd.c (read_command_list): Likewise. - * grub-core/normal/term.c (read_terminal_list): Likewise. - * grub-core/gettext/gettext.c (grub_mofile_open_lang): Use - $prefix/locale. - (grub_gettext_init_ext): Likewise. - * grub-core/normal/main.c (GRUB_MOD_INIT): Define grub_cpu and - grub_platform. - * util/grub-install.in: Update directories. - * util/grub-mknetdir.in: Likewise. - * util/grub-mkrescue.in: Likewise. - -2012-02-04 Vladimir Serbinenko - - * grub-core/kern/ieee1275/openfw.c (grub_claimmap): Change to - grub_error framework. All users updated. - -2012-02-04 Vladimir Serbinenko - - * grub-core/gettext/gettext.c: Mostly rewritten to avoid using - lists (by always binsearching), improve caching (cache strings - used for binsearch, not only results), improve - maintainability (by using more structured binary search) and correct - error handling. - -2012-02-04 Vladimir Serbinenko - - * grub-core/script/execute.c (grub_script_return): Fix warning. - -2012-02-04 Vladimir Serbinenko - - * grub-core/script/execute.c (grub_script_return): Fix potential - NULL-dereference. - Reported by: Jim Meyering. - -2012-02-03 Vladimir Serbinenko - - * po/POTFILES.in: Regenerate. - * util/grub-install.in: Gettextize the strings missed in first pass. - -2012-02-03 Vladimir Serbinenko - - * Makefile.util.def (grub-mkdevicemap): Removed. - * include/grub/emu/hostdisk.h (grub_util_get_os_disk): New proto. - * include/grub/util/deviceiter.h: Removed. - * util/deviceiter.c: Likewise. - * util/getroot.c (grub_util_get_os_disk): New function. - * util/grub-install.in: Remove grub-mkdevicemap. Use -t disk as - replacement for EFI. - * util/grub-mkdevicemap.c: Removed. - * util/grub-probe.c (probe): Handle PRINT_DISK. - (argp_parser): Handle -t disk. - -2012-02-03 Vladimir Serbinenko - - * util/grub-mkfont.c: Migrate to argp. - * util/grub-mklayout.c: Likewise. - * util/grub-mkpasswd-pbkdf2.c: Likewise. - * util/grub-mkrelpath.c: Likewise. - * util/grub-probe.c: Likewise. - * util/grub-script-check.c: Likewise. - -2012-02-03 Vladimir Serbinenko - - * util/grub-reboot.in: Add missing datarootdir. - Add missing newline. - * util/grub-set-default.in: Add missing datarootdir. - * util/powerpc/ieee1275/grub-mkrescue.in: Add missing newline. - * util/grub-mkrescue.in: Likewise. - -2012-02-03 Vladimir Serbinenko - - * util/grub.d/30_os-prober.in: Fix TRANSLATORS comment. - -2012-02-03 Vladimir Serbinenko - - * util/grub-kbdcomp.in: Add decent help and gettextize. - * docs/man/grub-kbdcomp.h2m: New file. - -2012-02-03 Vladimir Serbinenko - - Migrate grub-mkimage.c to argp. - - * Makefile.util.def (grub-mkimage): Add util/argp_common.c. - (grub-setup): Likewise. - * util/grub-setup.c (print_version): Move to ... - * util/argp_common.c (print_version): ... here. - * util/grub-setup.c (argp_program_version_hook): Move to ... - * util/argp_common.c (argp_program_version_hook): ... here. - * util/grub-setup.c (argp_parser): Add exit (1) on fatal error for - safety. - * util/grub-mkimage.c (main): Migrate to argp. - -2012-02-03 Vladimir Serbinenko - - * util/grub-mkrescue.in: Use same message as - util/powerpc/ieee1275/grub-mkrescue.in with %s in place of command - for better translations. - -2012-02-03 Vladimir Serbinenko - - * util/powerpc/ieee1275/grub-mkrescue.in: Gettextize. Unify the command - options with generic grub-mkrescue.in with the goal of future - merge. - -2012-02-03 Vladimir Serbinenko - - * grub-core/kern/mm.c: Add missing include of i18n.h - * grub-core/lib/relocator.c: Likewise. - -2012-02-03 Vladimir Serbinenko - - * grub-core/loader/ia64/efi/linux.c (find_mmap_size): Replace fatal with - error. - (allocate_pages): Check return value. - Replace fatal with error. - (grub_linux_boot): Replace printf with dprintf. - Check find_mmap_size return value. - Replace fatal with error. - Don't call grub_machine_fini. - (grub_load_elf64): Replace printf with dprintf. - (grub_cmd_linux): Likewise. - (grub_cmd_initrd): Likewise. - (grub_cmd_payload): Likewise. - -2012-02-03 Vladimir Serbinenko - - * grub-core/loader/i386/xnu.c (grub_cmd_devprop_load): Fix error - message. - * grub-core/video/radeon_fuloong2e.c - (grub_video_radeon_fuloong2e_setup): Likewise. - * grub-core/video/sis315pro.c (grub_video_sis315pro_setup): Likewise. - * grub-core/video/video.c (grub_video_set_mode): Don't override - standard out of memory message. - -2012-02-03 Grégoire Sutre - - NetBSD disk wedge support. - - * grub-core/kern/emu/hostdisk.c (grub_hostdisk_find_partition_start) - [__NetBSD__]: Handle NetBSD disk wedges. - * util/getroot.c (convert_system_partition_to_system_disk) - [__NetBSD__]: Likewise. - -2012-02-03 Mark Wooding - - * util/grub-mkconfig.in: Use umask rather than chmod to create - grub.cfg.new to avoid insecure grub.cfg. - -2012-02-03 Vladimir Serbinenko - - * grub-core/commands/ls.c: Gettextize. - * grub-core/commands/setpci.c: Likewise. - * grub-core/commands/videotest.c: Likewise. - * grub-core/disk/geli.c: Likewise. - * grub-core/kern/mm.c: Likewise. - * grub-core/lib/relocator.c: Likewise. - * grub-core/loader/efi/appleloader.c: Likewise. - * grub-core/loader/i386/xnu.c: Likewise. - * grub-core/loader/ia64/efi/linux.c: Likewise. - * grub-core/loader/xnu.c: Likewise. - * grub-core/net/dns.c: Likewise. - * grub-core/net/net.c: Likewise. - * grub-core/script/lexer.c: Likewise. - * grub-core/script/parser.y: Likewise. - * grub-core/script/yylex.l: Likewise. - * util/getroot.c: Likewise. - * util/grub-setup.c: Likewise. - -2012-02-03 Vladimir Serbinenko - - * grub-core/fs/reiserfs.c (grub_reiserfs_get_item): Use proper error - number. - -2012-02-03 Vladimir Serbinenko - - * grub-core/disk/ldm.c (grub_util_ldm_embed): Correct error message. - -2012-02-03 Vladimir Serbinenko - - * grub-core/commands/search_file.c (SEARCH_TARGET): Remove obsolete - macro. - * grub-core/commands/search_label.c (SEARCH_TARGET): Likewise. - * grub-core/commands/search_uuid.c (SEARCH_TARGET): Likewise. - -2012-02-03 Vladimir Serbinenko - - * util/grub-mkstandalone.in: Fix help messages. Gettextize. - * util/grub-install.in: Gettextize. - * util/grub-mkconfig.in: Likewise. - * util/grub-mkconfig_lib.in: Replace gettext with echo -n and not echo - if not available. - (grub_warn): Gettextize. - * util/grub-mknetdir.in: Gettextize. - * util/grub-mkrescue.in: Likewise. - * util/grub-mkstandalone.in: Likewise. - * util/grub-reboot.in: Likewise. - * util/grub-set-default.in: Likewise. - * util/grub.d/00_header.in: Likewise. - * util/grub.d/10_hurd.in: Likewise. - * util/grub.d/10_kfreebsd.in: Likewise. - * util/grub.d/10_linux.in: Likewise. - * util/grub.d/10_netbsd.in: Likewise. - * util/grub.d/10_windows.in: Likewise. - * util/grub.d/20_linux_xen.in: Likewise. - * util/grub.d/30_os-prober.in: Likewise. - * po/POTFILES-shell.in: Regenerate. - -2012-02-03 Richard Laager - - * util/grub-mkimage.c (main): Fix format-security warning. - * util/grub-mkrelpath.c (main): Likewise. - * util/grub-probe.c (main): Likewise. - -2012-02-03 Richard Laager - - * util/grub-probe.c (probe): Don't crash on canonicalize_file_name - failure. - Put back lost PRINT_DRIVE. - -2012-02-03 Richard Laager - - * util/getroot.c (find_root_devices_from_libzfs): Fix compilation error. - (grub_guess_root_devices): Replace strlen with sizeof. - Avoid crash. - (find_root_devices_from_poolname): Remove unused variable. - Handle raidzN. - -2012-02-03 Vladimir Serbinenko - - Support install on multi-device filesystems. - - * include/grub/emu/getroot.h (grub_guess_root_device): Renamed to ... - (grub_guess_root_devices): ...this. Return char **. All users updated. - * include/grub/emu/misc.h (grub_find_root_device_from_mountinfo): - Removed. - * util/getroot.c (find_root_device_from_libzfs): Moved pool logic to ... - (find_root_devices_from_poolname): ... here. - (grub_find_root_devices_from_mountinfo): Return char **. Make static. - Support zfs-fuse. - (grub_guess_root_device): Rename to ... - (grub_guess_root_devices): ... this. Return char **. All users updated. - * util/grub-install.in: Handle multi-device filesystems. - * util/grub-probe.c (probe). Make device_names a char **. Add delim - argument. All users updated. - Handle multi-device filesystems. - Use 'delim' as separator. - Remove device check to allow filesystems on file. - (main): Support -0 argument. Handle multi-device. - * util/grub-setup.c (setup): Remove root argument. Handle multi-device. - Fix a cross-device check while on it. - (arguments): Remove root_dev. - (argp_parser): Remove -r. - (main): Remove root_dev. - -2012-02-01 Vladimir Serbinenko - - * grub-core/fs/zfs/zfscrypt.c: Add link to documentation. - -2012-02-01 Vladimir Serbinenko - - * grub-core/commands/videotest.c (grub_cmd_videotest): Fix subset - symbol. - Reported by: NODA, Kai . - -2012-02-01 Vladimir Serbinenko - - Fix ehci on amd64. - - * grub-core/bus/usb/usbhub.c (grub_usb_hub_add_dev): Use %p to print - pointers. - * grub-core/bus/usb/ehci.c (grub_ehci_pci_iter): Likewise. - (grub_ehci_setup_qh): Likewise. - (grub_ehci_find_qh): Likewise. - (grub_ehci_transaction): Likewise. - (grub_ehci_setup_transfer): Likewise. - (grub_ehci_check_transfer): Likewise. - (grub_ehci_portstatus): Likewise. - (grub_ehci_detect_dev): Likewise. - (grub_ehci_transfer_controller_data): New field td_last_phys. - (grub_ehci_setup_transfer): Fill td_last_phys. - (grub_ehci_check_transfer): Use td_last_phys. - -2012-02-01 Seth Goldberg - - * grub-core/normal/context.c (grub_env_extractor_close): Don't crash - if no submenu is present. - -2012-02-01 AleÅ¡ Nesrsta - - CBI support. - - * include/grub/usb.h (grub_usbms_protocol_t): New values - GRUB_USBMS_PROTOCOL_CB and GRUB_USBMS_PROTOCOL_CBI. - * grub-core/disk/usbms.c (GRUB_USBMS_CBI_CMD_SIZE): New define. - (GRUB_USBMS_CBI_ADSC_REQ): Likewise. - (grub_usbms_dev): Add subclass, protocol and intrpt. - Remove in_maxsz and out_maxsz. - (grub_usbms_reset): Rename to ... - (grub_usbms_bo_reset): .. this. - (grub_usbms_cbi_cmd): New function. - (grub_usbms_cbi_reset): Likewise. - (grub_usbms_reset): Likewise. - (grub_usbms_attach): Recognize cbi. Same subclass and protocol. - (grub_usbms_transfer): Rename to ... - (grub_usbms_transfer_bo): ... this. - (grub_usbms_transfer_cbi): Likewise. - (grub_usbms_transfer): Likewise. - -2012-02-01 AleÅ¡ Nesrsta -2012-02-01 Vladimir Serbinenko - - EHCI support. All of the credit goes to AleÅ¡ Nesrsta. I've just added - the support for the CS5536 modification thereos and few bugfixes. - - * grub-core/Makefile.core.def (ehci): New module. - * grub-core/bus/usb/ehci.c: New file. - * grub-core/bus/usb/usbhub.c (grub_usb_hub_add_dev): New arguments - port and hubaddr. All users updated. - Save port and hubaddr into dev structure. - * include/grub/cs5536.h (GRUB_CS5536_MSR_USB_BASE_SMI_ENABLE): New - define. - * include/grub/pci.h (grub_dma_phys2virt): New function. - (grub_dma_virt2phys): Likewise. - * include/grub/usb.h (grub_usb_device): New members port and hubaddr. - -2012-01-31 Vladimir Serbinenko - - * grub-core/fs/fat.c (grub_fat_mount) [!MODE_EXFAT]: Remove fstype - check as some mkfs implementations omit it. - -2012-01-31 Vladimir Serbinenko - - * docs/grub.texi (Unicode): Mention identifier and space limitations. - -2012-01-31 Vladimir Serbinenko - - * grub-core/fs/jfs.c (grub_jfs_sblock): Make volname a char array. - Add new member volname2. - (grub_jfs_label): Use volname2 if available. - -2012-01-31 Vladimir Serbinenko - - * grub-core/fs/nilfs2.c (grub_nilfs2_super_block): Expand volume_name - over last_mounted as seen in image generated by mkfs.nilfs2. - (grub_nilfs2_label): Use sizeof for the size of s_volume_name. - -2012-01-31 Vladimir Serbinenko - - * grub-core/fs/fat.c (grub_fat_dir_entry) [MODE_EXFAT]: Expand label - to 15 UTF-16 characters as seen in FS generated by mkexfatfs. - (grub_fat_label) [MODE_EXFAT]: Use macros for size. - -2012-01-31 Vladimir Serbinenko - - * grub-core/fs/romfs.c (grub_romfs_mount): Fix a bug with labels going - over the sector. - -2012-01-31 Vladimir Serbinenko - - * grub-core/fs/zfs/zfs.c (get_filesystem_dnode): Support space in - subvolume name (by removing a bogus and useless check). - -2012-01-31 Vladimir Serbinenko - - * grub-core/fs/ext2.c (grub_ext2_label): Fix field size. Change to - sizeof while on it. - -2012-01-30 Vladimir Serbinenko - - * grub-core/disk/scsi.c (grub_scsi_read_capacity): Renamed to ... - (grub_scsi_read_capacity10): ... this. - (grub_scsi_read_capacity16): New function. - (grub_scsi_open): Use read_capacity16 if read_capacity10 returned - 0xffffffff. - Fix off-by-one error. - * include/grub/scsi.h (grub_scsi): Rename size to last_block and make it - 64-bit unsigned. - * include/grub/scsicmd.h (grub_scsi_read_capacity): Rename to ... - (grub_scsi_read_capacity10): ... this. - (grub_scsi_read_capacity_data): Rename to ... - (grub_scsi_read_capacity10_data): ... this. Rename size to last_block. - (grub_scsi_read_capacity16): New struct. - (grub_scsi_read_capacity16_data): Likewise. - (grub_scsi_cmd_t): Rename grub_scsi_cmd_read_capacity to - grub_scsi_cmd_read_capacity10. - New command grub_scsi_cmd_read_capacity16. - -2012-01-30 Vladimir Serbinenko - - SCSI >2TiB support. - - * grub-core/disk/scsi.c (grub_scsi_read16): New function. - (grub_scsi_write16): Likewise. - (grub_scsi_read): Use read16 when necessary. - (grub_scsi_write): Likewise. - * include/grub/scsicmd.h (grub_scsi_read16): New struct. - (grub_scsi_write16): Likewise. - (grub_scsi_cmd_t): Add READ16 and WRITE16. - -2012-01-30 Vladimir Serbinenko - - SCSI write support (for usbms mainly). - - * grub-core/disk/scsi.c (grub_scsi_write10): Uncomment. Make buffer - a const pointer. - (grub_scsi_write): Implement. - * include/grub/scsi.h (grub_scsi_dev): Make write buffer a const pointer - -2012-01-30 Vladimir Serbinenko - - * grub-core/io/lzopio.c (uncompress_block): Fix use of incorrect - variable. - -2012-01-29 Vladimir Serbinenko - - * grub-core/lib/posix_wrap/string.h (memchr): New function. - -2012-01-29 Vladimir Serbinenko - - * po/POTFILES.in: Regenerate. - -2012-01-29 Vladimir Serbinenko - - * grub-core/lib/posix_wrap/assert.h (assert_real): Replace grub_fatal - with grub_printf to avoid unnecessary fatal failure. - -2012-01-29 Vladimir Serbinenko - - * grub-core/lib/posix_wrap/limits.h (SHRT_MAX): New define. - (INT_MAX): Likewise. - * grub-core/lib/posix_wrap/stdio.h (snprintf): New function. - * grub-core/lib/posix_wrap/stdlib.h (abs): Likewise. - * grub-core/lib/posix_wrap/string.h (memcmp): Likewise. - (strcpy): Likewise. - (strstr): Likewise. - (strchr): Likewise. - (strncpy): Likewise. - (strcat): Likewise. - (strncat): Likewise. - (strcoll): Likewise. - * include/grub/types.h (GRUB_SHRT_MAX): New define. - (GRUB_INT_MAX): Likewise. - -2012-01-29 Vladimir Serbinenko - - * grub-core/gnulib/regcomp.c (regerror): Don't use abort on - unexpected error. - (optimize_utf8): Likewise. - * grub-core/lib/posix_wrap/stdlib.h (abort): Removed. - -2012-01-29 Vladimir Serbinenko - - * grub-core/boot/i386/pc/lnxboot.S: Use - GRUB_DECOMPRESSOR_MAX_DECOMPRESSOR_SIZE. - * grub-core/boot/i386/pc/startup_raw.S: Ensure about boot_dev - location. - * include/grub/offsets.h (GRUB_DECOMPRESSOR_I386_PC_BOOT_DEVICE): New - definition. - (GRUB_DECOMPRESSOR_I386_PC_MAX_DECOMPRESSOR_SIZE): Likewise. - -2012-01-29 Vladimir Serbinenko - - * util/getroot.c (grub_util_get_dm_node_linear_info): Fix memory leak. - * grub-core/disk/cryptodisk.c (cryptodisk_cleanup): Disable for - now to avoid double free. - * grub-core/kern/emu/hostdisk.c (grub_util_biosdisk_dev): Rename to - hostdisk. - * include/grub/disk.h (grub_disk_dev_id): New id HOSTDISK. - * util/grub-probe.c (escape_of_path): Always return a new copy. - (print_full_name): Escape path. - (probe): Don't call grub_util_devname_to_ofpath on NULL. - Fix hints on abstractions. - -2012-01-29 Vladimir Serbinenko - - * util/grub-mkconfig_lib.in (prepare_grub_to_access_device): - Don't add "root" line if no compatibility hont is available. - Suggested by: Seth Goldberg. - -2012-01-29 Vladimir Serbinenko - - * include/grub/ata.h (grub_ata): Add a new element maxbuffer. - * grub-core/disk/ata.c (grub_ata_readwrite): Limit to ata->maxbuffer. - * grub-core/disk/pata.c (grub_pata_open): Set ata->maxbuffer. - * grub-core/disk/ahci.c (grub_ahci_open): Likewise. - -2012-01-29 Vladimir Serbinenko - - * include/grub/zfs/dnode.h (DN_MIN_INDBLKSHIFT): Removed. - -2012-01-29 Vladimir Serbinenko - - * util/grub-pe2elf.c (ehdr): Make static. - (shdr): Likewise. - (num_sections): Likewise. - (offset): Likewise. - -2012-01-29 Vladimir Serbinenko - - Eliminate ofpath limits and possible overflows. - - * util/ieee1275/ofpath.c (grub_util_info) [STANDALONE]: New function. - (OF_PATH_MAX): Removed. - (MAX_DISK_CAT): New const. - (find_obppath): Use allocated rather than preallocated buffer. - Return result. Argument of_path removed. All users updated. - Add missing fdstat. - (xrealpath): New function. - (block_device_get_sysfs_path_and_link): Remove sysfs argument. - Allocate rather than use preallocated buffer. All users updated. - (__of_path_common): Use allocated rather than preallocatecd buffer. - Return result. Argument of_path removed. All users updated. - (vendor_is_ATA): Read only needed part form the file. - (check_sas): Allocate depending on contents rather than fixed. - (main) [STANDALONE]: Handle NULL result. - -2012-01-29 Vladimir Serbinenko - - * grub-core/normal/completion.c (iterate_dev): Close the disk. - -2012-01-29 Vladimir Serbinenko - - Cryptodisk write support. - - * grub-core/disk/cryptodisk.c (grub_crypto_pcbc_encrypt): New function. - (grub_cryptodisk_decrypt): Moved logic to ... - (grub_cryptodisk_endecrypt): ...this. New argument "encrypt". - (grub_cryptodisk_write): Implement. - * grub-core/kern/emu/hostdisk.c (nwrite): Rename to ... - (grub_util_fd_write): ... this. Make global. - * include/grub/emu/hostdisk.h (grub_util_fd_write): New proto. - -2012-01-29 Vladimir Serbinenko - - * include/grub/list.h (grub_list_remove): Don't crash if element is - removed twice. - -2012-01-29 Vladimir Serbinenko - - Rename ofconsole to console. - - * grub-core/commands/terminal.c (handle_command): Handle ofconsole - as sysnonym to console. - * grub-core/term/ieee1275/ofconsole.c: Renamed to .. - * grub-core/term/ieee1275/console.c: ... this. All users updated. - Rename grub_ofconsole_ to grub_console_. All users updated - (grub_console_term_output): Rename "ofconsole" to "console". - * grub-core/term/terminfo.c (grub_cmd_terminfo): Handle "ofconsole" - as "console". - -2012-01-29 Vladimir Serbinenko - - * grub-core/loader/i386/pc/plan9.c (grub_cmd_plan9): Remove PXE - handling. - * include/grub/disk.h (grub_disk_dev_id): Remove obsolete - GRUB_DISK_DEVICE_UUID_ID, GRUB_DISK_DEVICE_PXE_ID and - GRUB_DISK_DEVICE_FILE_ID. - -2012-01-29 Vladimir Serbinenko - - * grub-core/kern/partition.c (grub_partition_get_name): Simplify logic - and improve performance. - -2012-01-29 Vladimir Serbinenko - - * grub-core/kern/ieee1275/openfw.c (grub_ieee1275_encode_devname): Fix - missing ieee1275/ prefix on whole disk. - -2012-01-29 Vladimir Serbinenko - - * include/grub/powerpc/ieee1275/util/biosdisk.h: Remove. - * include/grub/powerpc/ieee1275/biosdisk.h: Likewise. - -2012-01-29 Vladimir Serbinenko - - * grub-core/fs/cpio.c (handle_symlink): Fix a bug. - -2012-01-29 Vladimir Serbinenko - - Merge common RAID and LVM logic to an abstract diskfilter. - Add LDM support using the same framework. - - * Makefile.util.def (libgrubkern): Add grub-core/disk/ldm.c, - grub-core/disk/diskfilter.c and grub-core/partmap/gpt.c. - (libgrubmods): Remove grub-core/disk/raid.c and - grub-core/partmap/gpt.c. - * grub-core/Makefile.core.def (ldm): New module. - (raid): Renamed to diskfilter. All users updated. - * grub-core/disk/raid.c: Moved to ... - * grub-core/disk/diskfilter.c: ... here. - * grub-core/disk/diskfilter.c: Rename grub_raid_ to grub_diskfilter_. - (lv_num): New var. - (find_array): Renamed to ... - (find_lv): ... this. Support multi-LV. Skip nameless LVs - (grub_is_array_readable): Renamed to ... - (grub_is_lv_readable): ... this. Support multinode hierarchy. - (insert_array): New argument id. - (is_node_readable): New function. - (scan_device): Rename to ... - (scan_disk): .. this. Restrict to one disk. - (scan_devices): New function. - (grub_diskfilter_iterate): Support multi-LV. - Skip invisible and nameless LVs. - (grub_diskfilter_memberlist): Support multi-LV. - (grub_diskfilter_read_node): New function. - (grub_raid_read): Most of logic moved to ... - (read_segment): ... here - (read_lv): New function. - (grub_diskfilter_get_vg_by_uuid): New function. - (grub_diskfilter_make_raid): Likewise. - * grub-core/disk/ldm.c: New file. - * grub-core/disk/lvm.c (vg_list): Removed. - (lv_count): Likewise. - (scan_depth): Likewise. - (is_lv_readable): Likewise. - (grub_lvm_getvalue): Advance pointer past the number. - (find_lv): Removed. - (do_lvm_scan): Refactored into ... - (grub_lvm_detect): ... this. Support raid. - (grub_lvm_iterate): Removed. - (grub_lvm_memberlist): Likewise. - (grub_lvm_open): Likewise. - (grub_lvm_close): Likewise. - (read_lv): Likewise. - (read_node): Likewise. - (is_node_readable): Likewise. - (is_lv_readable): Likewise. - (grub_lvm_read): Likewise. - (grub_lvm_write): Likewise. - (grub_lvm_dev): Use diskfilter - (GRUB_MOD_INIT): Likewise. - (GRUB_MOD_FINI): Likewise. - * grub-core/disk/dmraid_nvidia.c (grub_dmraid_nv_detect): Use - new interface. - * grub-core/disk/mdraid1x_linux.c (grub_mdraid_detect): Likewise. - * grub-core/disk/mdraid_linux.c (grub_mdraid_detect): Likewise. - * grub-core/disk/raid5_recover.c (grub_raid5_recover): Use - grub_diskfilter_read_node. - Fix a bug with xor. - * grub-core/disk/raid6_recover.c (grub_raid6_recover): Use - grub_diskfilter_read_node. - Support GRUB_RAID_LAYOUT_MUL_FROM_POS. - * grub-core/kern/disk.c (grub_disk_dev_list): Make global. - (grub_disk_dev_iterate): Move from here... - * include/grub/disk.h (grub_disk_dev_iterate): ... to here. Inlined. - * grub-core/kern/emu/hostdisk.c (grub_hostdisk_find_partition_start): - Make global. - (grub_hostdisk_find_partition_start): Likewise. - (grub_hostdisk_os_dev_to_grub_drive): New function. - (grub_util_biosdisk_get_osdev): Check that disk is biosdisk. - * grub-core/kern/emu/hostdisk.c (make_device_name): Move to ... - * util/getroot.c (make_device_name): ... here. - * grub-core/kern/emu/hostdisk.c (grub_util_get_dm_node_linear_info): - Move to ... - * util/getroot.c (grub_util_get_dm_node_linear_info): ...here. - * grub-core/kern/emu/hostdisk.c - (convert_system_partition_to_system_disk): Move to ... - * util/getroot.c (convert_system_partition_to_system_disk): ...here. - * grub-core/kern/emu/hostdisk.c (device_is_wholedisk): Move to ... - * util/getroot.c (device_is_wholedisk): ... here. - * grub-core/kern/emu/hostdisk.c (find_system_device): Move to ... - * util/getroot.c (find_system_device): ... here. - * grub-core/kern/emu/hostdisk.c (grub_util_biosdisk_is_present): - Move to ... - * util/getroot.c (grub_util_biosdisk_is_present): ...here. - * grub-core/kern/emu/hostdisk.c (grub_util_biosdisk_get_grub_dev): - Move to ... - * util/getroot.c (grub_util_biosdisk_get_grub_dev): ... here. - Handle LDM. - * grub-core/kern/emu/hostdisk.c (grub_util_biosdisk_is_floppy): - Move to ... - * util/getroot.c (grub_util_biosdisk_is_floppy): ... here. - * grub-core/partmap/gpt.c (grub_gpt_partition_map_iterate): Made global. - * include/grub/disk.h (grub_disk_dev_id): Replaced RAID and LVM with - DISKFILTER. - * include/grub/raid.h: Renamed to ... - * include/grub/diskfilter.h: ... this. - * include/grub/diskfilter.h: Rename grub_raid_* to grub_diskfilter_* - (GRUB_RAID_LAYOUT_*): Make into array. - (GRUB_RAID_LAYOUT_MUL_FROM_POS): New value. - (grub_diskfilter_vg): New struct. - (grub_diskfilter_pv_id): Likewise. - (grub_raid_member): Removed. - (grub_raid_array): Likewise. - (grub_diskfilter_pv): New struct. - (grub_diskfilter_lv): Likewise. - (grub_diskfilter_segment): Likewise. - (grub_diskfilter_node): Likewise. - (grub_diskfilter_get_vg_by_uuid): New proto. - (grub_raid_register): Inline. - (grub_diskfilter_unregister): Likewise. - (grub_diskfilter_make_raid): New proto. - (grub_diskfilter_vg_register): Likewise. - (grub_diskfilter_read_node): Likewise. - (grub_diskfilter_get_pv_from_disk) [GRUB_UTIL]: Likewise. - * include/grub/emu/hostdisk.h (grub_util_get_ldm): New proto. - (grub_util_is_ldm): Likewise. - (grub_util_ldm_embed) [GRUB_UTIL]: Likewise. - (grub_hostdisk_find_partition_start): Likewise. - (grub_hostdisk_os_dev_to_grub_drive): Likewise. - * include/grub/gpt_partition.h (GRUB_GPT_PARTITION_TYPE_LDM): - New definition. - (grub_gpt_partition_map_iterate): New proto. - * include/grub/lvm.h (grub_lvm_vg): Removed. - (grub_lvm_pv): Likewise. - (grub_lvm_lv): Likewise. - (grub_lvm_segment): Likewise. - (grub_lvm_node): Likewise. - * util/getroot.c [...] - * util/grub-probe.c (probe_raid_level): Handle diskfilter. - (probe_abstraction): Likewise. - * util/grub-setup.c (setup): Remove must_embed. Support LDM. - (main): Remove dead logic. - -2012-01-28 Vladimir Serbinenko - - Simplify root device discover and don't fail when trying to open - incorrect devices. - - * grub-core/disk/efi/efidisk.c (get_diskname_from_path_real): New - function. - (get_diskname_from_path): Likewise. - (grub_efidisk_get_device_name): Use get_diskname_from_path instead - of iterating. - -2012-01-27 Vladimir Serbinenko - - * grub-core/Makefile.core.def (setpci): Enable on all PCI platforms. - -2012-01-27 Vladimir Serbinenko - - * grub-core/fs/zfs/zfs.c (nvlist_find_value): Check that we don't go - pastthe end. - -2012-01-27 Vladimir Serbinenko - - * util/grub-install.in: Add missing \. - Reported by: gentoofan - -2012-01-26 Vladimir Serbinenko - - * grub-core/fs/squash4.c (xz_decompress): Fix return value. - (direct_read): Use correct compressed size. - (grub_squash_read_data): Likewise. - -2012-01-26 Vladimir Serbinenko - - * docs/grub.texi (Platform limitations): New section. - (Platform-specific operations): Likewise. - * docs/grub-dev.texi (Porting): Likewise. - -2012-01-25 Vladimir Serbinenko - - IEEE1275 disk write support. - - * grub-core/kern/ieee1275/ieee1275.c (grub_ieee1275_write): Make buffer - const void *. - * include/grub/ieee1275/ieee1275.h (grub_ieee1275_write): Likewise. - * grub-core/disk/ieee1275/ofdisk.c (grub_ofdisk_read): Move open - and seek loginc to ... - (grub_ofdisk_prepare): ... here. - (grub_ofdisk_write): Implement. - -2012-01-25 Vladimir Serbinenko - - ARC disk write support. - - * grub-core/disk/arc/arcdisk.c (handle_writable): New var. - (reopen): New argument writable. All users updated. - Handle required access mode. - (grub_arcdisk_write): Implement. - * include/grub/arc/arc.h (grub_arc_file_access): New enum. - (grub_arc_firmware_vector): Make buffer to write a const buffer. - -2012-01-25 Vladimir Serbinenko - - * grub-core/fs/btrfs.c (grub_btrfs_device): New field size. - (read_sblock): Don't attempt to read superblocks outside the disk size. - -2012-01-25 Vladimir Serbinenko - - * grub-core/fs/nilfs2.c (grub_nilfs2_load_sb): Use device size from - first superblock to find the second one when possible. - -2012-01-25 Vladimir Serbinenko - - * util/grub-install.in: Fix an ARC bug. - Print a warning if no platform-specific setup is available. - -2012-01-24 Vladimir Serbinenko - - Use static allocation rather than scratch pointer in reed_solomon. - It decreases its size significantly and avoids a variable in .text. - - * grub-core/lib/reed_solomon.c (scratch): Removed. - (chosenstat): New const or static array. - (sigma): Likewise. - (errpot): Likewise. - (errpos): Likewise. - (sy): Likewise. - (mstat): Likewise. - (errvals): Likewise. - (eqstat): Likewise. - (pol_evaluate): Replace x with log_x argument. All users updated. - (syndroms): Removed. - (gauss_solve): Use statically allocated arrays. - (rs_recover): Likewise. - Calculate syndroms directly. - (decode_block): Use statically allocated arrays. - (grub_reed_solomon_add_redundancy) [TEST]: Fix -DTEST compilation. - (main) [TEST]: Allow -DTEST -DSTANDALONE. - -2012-01-24 Vladimir Serbinenko - - Eliminate fixed limit on reed solomon decoder length. - - * grub-core/boot/i386/pc/lnxboot.S: Scan for multiboot signature - rather than hardcoding the address. - * grub-core/boot/i386/pc/startup_raw.S: Add new data field - no_reed_solomon_length. - Move gate_a20 to no-reed-solomon part. - Don't force a particular size of no reed-solomon part. - * include/grub/offsets.h (GRUB_KERNEL_I386_PC_NO_REED_SOLOMON_PART): - Removed. - (GRUB_KERNEL_I386_PC_NO_REED_SOLOMON_LENGTH): New define. - * util/grub-setup.c (setup): Read no_rs_length from the image itself. - -2012-01-24 Vladimir Serbinenko - - * grub-core/commands/wildcard.c (match_files): Handle filenames - without explicit device. - (wildcard_expand): Don't add explicit device if not already present. - * tests/grub_script_echo1.in: Add a new expansion test. - -2012-01-24 Vladimir Serbinenko - - Replace single-linked with double-linked lists. It results in more - compact and more efficient code. - - * grub-core/kern/list.c (grub_list_push): Moved from here ... - * include/grub/list.h (grub_list_push): ... to here. Set prev. - (grub_list_remove): Moved from here ... - * include/grub/list.h (grub_list_remove): ... here. Use and set prev. - (grub_prio_list_insert): Set prev. - * include/grub/list.h (grub_list): Add prev. All users updated. - -2012-01-24 Vladimir Serbinenko - - Handle newer autotools. Add some missing quotes while on it. - - * Makefile.am (pkglib_DATA): Remove update-grub_lib. - (pkglib_DATA): Move grub-mkconfig_lib from here ... - (pkgdata_DATA): ... here. - * Makefile.util.def (update-grub_lib): Removed. - * conf/Makefile.common (pkglib_DATA): Removed. - (pkglib_SCRIPTS): Likewise. - (pkgdata_DATA): New variable. - * tests/util/grub-shell-tester.in: Replace pkglib with pkgdata where - needed. - Add missing quotes. - Remove unused variable while on it. - * tests/util/grub-shell.in: Likewise. - * util/grub-install.in: Likewise. - * util/grub-mkconfig.in: Likewise. - * util/grub-mknetdir.in: Likewise. - * util/grub-mkrescue.in: Likewise. - * util/grub-mkstandalone.in: Likewise. - * util/grub.d/00_header.in: Likewise. - * util/grub.d/10_hurd.in: Likewise. - * util/grub.d/10_illumos.in: Likewise. - * util/grub.d/10_kfreebsd.in: Likewise. - * util/grub.d/10_linux.in: Likewise. - * util/grub.d/10_netbsd.in: Likewise. - * util/grub.d/10_windows.in: Likewise. - * util/grub.d/20_linux_xen.in: Likewise. - * util/grub.d/30_os-prober.in: Likewise. - * util/update-grub_lib.in: Removed. - -2012-01-24 Seth Goldberg - - * grub-core/net/drivers/i386/pc/pxe.c (grub_pxe_recv): Relax checks as - a workaround for intel problem. - -2012-01-23 Paulo de Rezende Pinatti -2012-01-23 Vladimir Serbinenko -2012-01-23 pfsmorigo - - * util/grub-install.in: Support dd'in into PreP partition. - * util/grub-probe.c (probe): Support discovering partition type. - (main): Support -t msdos_parttype. - -2012-01-23 Vladimir Serbinenko - - * grub-core/normal/crypto.c (grub_crypto_autoload): Prevent - infinite recursion using counter. - * grub-core/lib/xzembed/xz_dec_stream.c (xz_dec_init): Defer s->crc32 - init to skip it if the magic check fails. - (dec_stream_header): Init s->crc32. - -2012-01-22 Vladimir Serbinenko -2012-01-22 Zachary Bedell -2012-01-22 Richard Laager - - * grub-core/fs/zfs/zfs.c (uberblock_verify): New parameter size. - All users updated. - (find_bestub): Determine correct size. - (fill_vdev_info_real): Fill ashift. New argument. All users updated. - (scan_disk): Align the size down. - Call check pool before find_bestub to have ashift. - -2012-01-22 Vladimir Serbinenko - - * grub-core/lib/relocator.c (malloc_in_range): Remove couple of - dprintf in no-malloc zone. - -2012-01-22 Mario Limonciello - - * configure.ac: Add back in test for limits.h. - -2012-01-20 Vladimir Serbinenko - - Support 4K-sector NTFS. - - * include/grub/ntfs.h (GRUB_NTFS_MAX_MFT): Increase to 8. - (grub_ntfs_data): Remove blocksize. - * grub-core/fs/ntfs.c (fixup): Fix size comparison. - Remove data argument. All users updated. - -2012-01-20 Vladimir Serbinenko - - * grub-core/kern/mips/arc/init.c (grub_total_modules_size): Mark as - being in .text to avoid dprel references. - * include/grub/mips/loongson/kernel.h (grub_arch_machine): Likewise. - * include/grub/mips/loongson/memory.h (grub_arch_memsize): Likewise. - (grub_arch_highmemsize): Likewise. - * include/grub/mips/loongson/time.h (grub_arch_busclock): Likewise. - * include/grub/mips/qemu_mips/memory.h (grub_arch_memsize): Likewise. - * include/grub/mips/time.h (grub_arch_cpuclock): Likewise. - -2012-01-18 Vladimir Serbinenko - - Support powerpc with GCC that defines __PPC__ but not __powerpc__. - - * config.h.in (__powerpc__) [__PPC__ && !__powerpc__]: New definition. - * grub-core/lib/setjmp.S: Treat __PPC__ as equivalent to __powerpc__. - -2012-01-18 Vladimir Serbinenko - - * include/grub/datetime.h (grub_get_datetime_cmos): Don't define in - GRUB_UTIL. - (grub_set_datetime_cmos): Likewise. - -2012-01-18 Vladimir Serbinenko - - Make XZ compression parameters dependent on target and not host CPU. - - * configure.ac: Define GRUB_TARGET_CPU_XYZ series. - * grub-core/lib/xzembed/xz_config.h: Use GRUB_TARGET_CPU_XYZ. - -2012-01-18 Vladimir Serbinenko - - * grub-core/kern/powerpc/dl.c (grub_arch_dl_get_tramp_got_size): Remove - set but not used variable. - -2012-01-14 Vladimir Serbinenko - - * grub-core/fs/reiserfs.c (grub_reiserfs_uuid): Reject 0-uuid as - created when no uuid support is compiled into mkfs.reiser. - -2012-01-14 Vladimir Serbinenko - - * grub-core/fs/hfs.c (macroman_to_utf8): Convert / to :. - (utf8_to_macroman): Do the opposite. - * grub-core/fs/hfsplus.c (grub_hfsplus_iterate_dir): Convert / to :. - -2012-01-14 Vladimir Serbinenko - - * configure.ac: Refise build qemu_mips w/o unifont. - -2012-01-14 Vladimir Serbinenko - - Eliminate grub_min/grub_max prone to overflow usage. - - * grub-core/bus/usb/usbhub.c (grub_usb_add_hub): Eliminate grub_min. - (poll_nonroot_hub): Likewise. - * grub-core/fs/affs.c (grub_affs_iterate_dir): Likewise. - (grub_affs_label): Likewise. - * grub-core/fs/btrfs.c (grub_btrfs_lzo_decompress): Likewise. - * grub-core/fs/hfs.c (grub_hfs_dir): Likewise. - (grub_hfs_label): Likewise. - * grub-core/fs/hfsplus.c (grub_hfsplus_cmp_catkey): Likewise. - * grub-core/fs/zfs/zfs.c (MIN): Remove. - (zap_leaf_array_equal): Use grub_size. Remove MIN. - (zap_leaf_array_get): Likewise. - (dnode_get_path): Likewise. - * grub-core/io/lzopio.c (grub_lzopio_read): Eliminate grub_min. - * grub-core/io/xzio.c (grub_xzio_read): Likewise. - * grub-core/script/execute.c (grub_script_break): Likewise. - * grub-core/script/lexer.c (grub_script_lexer_record): Eliminate - grub_max. - * grub-core/script/yylex.l (grub_lexer_yyrealloc): Likewise. - * include/grub/misc.h (grub_min): Removed. - (grub_max): Likewise. - -2012-01-14 Samuel Thibault - - * grub-core/fs/ext2.c (grub_ext2_iterate_dir): Ignore entries with - direct.inode = 0. - -2012-01-14 Vladimir Serbinenko - - * grub-core/lib/posix_wrap/wctype.h (CHARCLASS_NAME_MAX): New define. - -2012-01-14 Vladimir Serbinenko - - * include/grub/datetime.h (grub_datetime2unixtime): Fix offset. - -2012-01-14 Vladimir Serbinenko - - * grub-core/lib/posix_wrap/stdlib.h (MB_CUR_MAX): Moved from here ... - * grub-core/lib/posix_wrap/wchar.h (MB_CUR_MAX): ... here. Value fixed. - -2012-01-14 Vladimir Serbinenko - - * grub-core/fs/fshelp.c (grub_fshelp_find_file): Use grub_strcasecmp - rather than a hack for grub_strncasemap. - -2012-01-14 Vladimir Serbinenko - - Support multiple initrds - Note: part of this was accidently committed in r3739. - - * grub-core/loader/i386/linux.c (grub_cmd_initrd): Support multiple - initrd. - * grub-core/loader/i386/pc/linux.c (grub_cmd_initrd): Likewise. - * grub-core/loader/ia64/efi/linux.c (grub_cmd_initrd): Likewise. - * grub-core/loader/mips/linux.c (grub_cmd_initrd): Likewise. - * grub-core/loader/powerpc/ieee1275/linux.c (grub_cmd_initrd): Likewise. - * grub-core/loader/sparc64/ieee1275/linux.c (grub_cmd_initrd): Likewise. - -2012-01-14 Vladimir Serbinenko - - * grub-core/disk/dmraid_nvidia.c (grub_dmraid_nv_detect): Skip - disks with unknown size. - * grub-core/disk/raid.c (scan_devices): Allow disks with unknown sizes. - -2012-01-14 Vladimir Serbinenko - - Remove defines pertaining to arbitrary limits not affecting GRUB - anymore. - - * grub-core/fs/ext2.c (EXT2_PATH_MAX): Removed. - (EXT2_MAX_SYMLINKCNT): Likewise. - * grub-core/fs/nilfs2.c (NILFS_BTREE_LEVEL_MAX): Likewise. - * grub-core/net/tftp.c (TFTP_MAX_PACKET): Likewise. - * include/grub/i386/pc/pxe.h (GRUB_PXE_MIN_BLKSIZE): Likewise. - (GRUB_PXE_MAX_BLKSIZE): Likewise. - * include/grub/normal.h (GRUB_MAX_CMDLINE): Likewise. - * include/grub/zfs/dnode.h (DN_MAX_INDBLKSHIFT): Likewise. - (DN_MAX_OBJECT_SHIFT): Likewise. - (DN_MAX_OFFSET_SHIFT): Likewise. - (DN_MAX_OBJECT): Likewise. - (DNODES_PER_LEVEL_SHIFT): Likewise. - * include/grub/zfs/spa.h (SPA_MAXBLOCKSHIFT): Likewise. - (SPA_MAXBLOCKSIZE): Likewise. - (SPA_BLOCKSIZES): Likewise. - * include/grub/zfs/zap_impl.h (MZAP_MAX_BLKSHIFT): Likewise. - (MZAP_MAX_BLKSZ): Likewise. - -2012-01-14 Vladimir Serbinenko - - * grub-core/fs/zfs/zfs.c (grub_zfs_read): Remove useless alloc and - handle NULL appropriately. - Remove MIN. - -2012-01-13 Vladimir Serbinenko - - Fix efiemu. - - * grub-core/efiemu/runtime/efiemu.c: explicitly include right - cpu/types.h. - (efiemu_set_virtual_address_map): Remove UINT_TO_PTR. - * configure.ac: Fix efiemu check. - -2012-01-13 Vladimir Serbinenko - - * util/grub.d/30_os-prober.in: Fix occurence of grub-probe instead of - grub_probe. - Reported by: adamwill - -2012-01-12 Seth Goldberg - - * grub-core/lib/arg.c (grub_arg_parse): Fix NULL pointer dereference. - -2012-01-12 Vladimir Serbinenko - - Fix handling of wide characters in gfxterm. - - * grub-core/term/gfxterm.c (grub_colored_char): Remove width and index. - (clear_char): Likewise. - (paint_char): Skip code == NULL chars. - (grub_gfxterm_putchar): Set code = NULL on "shadowed" positions. - -2012-01-12 Vladimir Serbinenko - - * grub-core/normal/charset.c: Move comment to right place. - -2012-01-11 Vladimir Serbinenko - - * grub-core/fs/affs.c (grub_affs_bblock): Revert flags. - (GRUB_AFFS_FLAG_FFS): Put back where it was. - (grub_affs_mount): Revert the correct version checking. - -2012-01-11 Vladimir Serbinenko - - * docs/grub.texi (Unicode): Mention several other unsupported features. - -2011-12-26 Vladimir Serbinenko - - * grub-core/fs/squash4.c (squash_mount): Mark endian conversion in - case statements as compile-time one. - (direct_read): Prevent spurious warnings. - (grub_squash_read_data): Likewise. - -2011-12-26 Vladimir Serbinenko - - Various squash4 fixes and LZO and XZ support. - - * Makefile.util.def (libgrubmods.a): Add xzembed directory to cppflags. - Add xzembed source files. - * grub-core/Makefile.core.def (squash4): Add xzembed and minilzo flags. - * grub-core/fs/squash4.c (grub_squash_super): New field compression. - (grub_squash_inode): New subtype long_dir. - (SQUASH_TYPE_LONG_DIR): New inode type. - (COMPRESSION): New enum. - (XZBUFSIZ): New const. - (grub_squash_data): New fields blksz, decompress, xzdec, xzbuf. - (read_chunk): Use data->decompress. - (zlib_decompress): New function. - (lzo_decompress): Likewise. - (xz_decompress): Likewise. - (squash_mount): Set new data fields. - (grub_squash_iterate_dir): Handle long dir. - (squash_unmount): Free xzdec and xzbuf. - (grub_squash_open): Check ino type. - (direct_read): Stylistic fixes. Use data->decompress. - (grub_squash_read_data): Likewise. - * grub-core/io/gzio.c (grub_gzio): Remove disk_input. - (get_byte): Likewise. - (grub_zlib_disk_read): Removed. - * grub-core/lib/posix_wrap/sys/types.h (ssize_t): New type. - (GRUB_POSIX_BOOL_DEFINED): New define. - * grub-core/lib/posix_wrap/unistd.h: Include sys/types.h. - * grub-core/lib/xzembed/xz.h: Addmissing includes. - [!GRUB_POSIX_BOOL_DEFINED]: Define bool. - * include/grub/deflate.h (grub_zlib_disk_read): Removed. - -2011-12-26 Vladimir Serbinenko - - Don't override more informative errors. - - * grub-core/commands/acpi.c (grub_cmd_acpi): Don't override errors. - * grub-core/font/font.c (open_section): Likewise. - * grub-core/loader/i386/bsd.c (grub_bsd_load_aout): New argument - filename. Don't override errors. - (grub_cmd_openbsd_ramdisk): Don't override errors. - * grub-core/loader/i386/linux.c (grub_cmd_linux): Likewise. - (grub_cmd_initrd): Likewise. - * grub-core/loader/i386/pc/linux.c (grub_cmd_linux): Likewise. - (grub_cmd_initrd): Likewise. - * grub-core/loader/ia64/efi/linux.c (grub_load_elf64): Likewise. - (grub_cmd_linux): Likewise. - (grub_cmd_initrd): Likewise. - (grub_cmd_payload): Likewise. - * grub-core/loader/mips/linux.c (grub_cmd_initrd): Likewise. - * grub-core/loader/multiboot.c (grub_cmd_multiboot): Likewise. - (grub_cmd_module): Likewise. - * grub-core/loader/powerpc/ieee1275/linux.c (grub_cmd_initrd): Likewise. - * grub-core/loader/sparc64/ieee1275/linux.c (grub_cmd_initrd): Likewise. - * grub-core/loader/xnu.c (grub_xnu_load_driver): Likewise. - (grub_cmd_xnu_mkext): Likewise. - (grub_cmd_xnu_ramdisk): Likewise. - (grub_xnu_check_os_bundle_required): Likewise. - (grub_xnu_load_kext_from_dir): Likewise. - (grub_cmd_xnu_kextdir): Likewise. - * grub-core/loader/xnu_resume.c (grub_xnu_resume): Likewise. - -2011-12-25 Vladimir Serbinenko - - * grub-core/fs/minix.c (grub_minix_mount) [MODE_MINIX3]: Treat 0xffff - as 1024 in block size field. Found on one of my test images. - Small optimisation while on it. - -2011-12-25 Vladimir Serbinenko - - * docs/grub.texi (Filesystems): Mention SFS as Latin1 filesystem. - * grub-core/fs/sfs.c (grub_sfs_mount): Fix a memory leak while on it. - (grub_sfs_iterate_dir): Convert Latin1 to UTF8. Stylistic and - performance fixes while on it. - (grub_sfs_close): Fix memory leak while on it. - (grub_sfs_label): Convert Latin1 to UTF-8. - -2011-12-25 Vladimir Serbinenko - - * grub-core/fs/hfs.c (grub_hfs_dir): Cap keylen to actually available - space to avoid overflows. - (grub_hfs_label): Convert from macroman to UTF-8. - -2011-12-25 Vladimir Serbinenko - - * grub-core/fs/affs.c (grub_affs_label): Interpret label as latin1. - -2011-12-25 Vladimir Serbinenko - - * grub-core/normal/menu.c (menu_init): Don't stop menu init at gfxterm. - -2011-12-25 Vladimir Serbinenko - - * unicode: Import Unicode 6.0 data. - -2011-12-25 Vladimir Serbinenko - - * grub-core/term/gfxterm.c (grub_gfxterm_putchar): Don't set values - outside of range. - -2011-12-25 Vladimir Serbinenko - - Avoid cutting in the middle of UTF-8 character. - - * include/grub/charset.h (grub_getend): New function. - * grub-core/script/function.c (grub_script_function_find): Use - grub_getend. - * grub-core/normal/completion.c (add_completion): Likewise. - -2011-12-25 Vladimir Serbinenko - - * grub-core/normal/charset.c (grub_ucs4_to_utf8): Small stylistic fix. - (grub_bidi_line_logical_to_visual): Skip tags. They are deprecated. - * include/grub/unicode.h (GRUB_UNICODE_TAG_START): New enum value. - (GRUB_UNICODE_TAG_END): Likewise. - (GRUB_UNICODE_LAST_VALID): Likewise. - -2011-12-25 Vladimir Serbinenko - - * include/grub/unicode.h (grub_unicode_compact_range): Replace end with - len and make it smaller. All users updated. - * util/import_unicode.py: Put length and not end character. - Check length. - -2011-12-25 Vladimir Serbinenko - - Make better Unicode-compliant and unify some UTF-8 code pathes. - - * grub-core/normal/charset.c (grub_utf8_to_utf16): Don't eat possibly - valid character. - (grub_is_valid_utf8): Use grub_utf8_process. - Check resulting code range. - (grub_utf8_to_ucs4): Use grub_utf8_process. - * include/grub/charset.h (grub_utf16_to_utf8): Don't eat up a possibly - valid character. - -2011-12-25 Vladimir Serbinenko - - * grub-core/io/bufio.c (grub_bufio_read): Fix handling of corner cases. - -2011-12-25 Vladimir Serbinenko - - * docs/grub.texi (Filesystems): Mention AFS. - -2011-12-25 Vladimir Serbinenko - - * docs/grub.texi (Filesystems): Clarify restrictions. - (Regexp): Mention non-Unicode regexp behaviour. - (Other): Mention non-Unicode matching behaviour. - -2011-12-24 Vladimir Serbinenko - - Make HFS implementation use MacRoman. - - * grub-core/fs/hfs.c (MAX_UTF8_PER_MAC_ROMAN): New define. - (macroman): New const array. - (macroman_to_utf8): New function. - (utf8_to_macroman): Likewise. - (grub_hfs_find_dir): Use utf8_to_macroman. - (grub_hfs_dir): Use macroman_to_utf8. - Set case_insensitive. - -2011-12-24 Vladimir Serbinenko - - * docs/grub.texi (Filesystems): Add IEEE1275 full-path example. - -2011-12-24 Vladimir Serbinenko - - Integrate hints into autogeneration scripts. - - * docs/grub.texi (Filesystems): Add a hostdisk example. - * Makefile.util.def (grub-mkdevicemap): Remove ofpath. - (grub-probe): Add ofpath. - * gentpl.py: Remove group nosparc64. - * grub-core/commands/search.c (cache_entry): New struct. - (cache): New var. - (FUNC_NAME): Use and save cache. Fix handling of trailing comma. - * grub-core/commands/search_wrap.c (options): Add platform-specific - hint options. - (grub_cmd_search): Handle platform-specific hints. - (GRUB_MOD_INIT): Declare grub_cmd_search as accept_dash. - * grub-core/kern/emu/hostdisk.c (map): New field device_map. - (grub_util_biosdisk_data): Likewise. - (grub_util_biosdisk_open): Set device_map. - (read_device_map): Handle "" as indication of no map. - Set device_map. - (find_system_device): Add hostdisk/ prefix for autogenerated entries. - (grub_util_biosdisk_get_compatibility_hint): New function. - * grub-core/normal/main.c (features): Add feature_platform_search_hint. - * include/grub/emu/hostdisk.h - (grub_util_biosdisk_get_compatibility_hint): New proto. - * util/grub-install.in: Don't call grub-mkdevicemap. - Add platform-specific hint to load.cfg. - * util/grub-mkconfig.in: Don't call grub-mkdevicemap. - * util/grub-mkconfig_lib.in (prepare_grub_to_access_device): Add - hints. Set root preliminary to compatibility hint, not to OS name. - * util/grub-probe.c (PRINT_*): Add hints. - (print): Make static. - (escape_of_path): New function. - (guess_bios_drive): Likewise. - (guess_efi_drive): Likewise. - (guess_baremetal_drive): Likewise. - (print_full_name): Likewise. - (probe): Handle hints. - (main): Likewise. - * util/ieee1275/devicemap.c: Removed. - * util/ieee1275/ofpath.c (find_obppath): Allow to fail. All users - updated. - (grub_util_devname_to_ofpath): Return NULL on failure. - - * grub-core/kern/emu/hostdisk.c (grub_util_biosdisk_get_grub_dev): Fix - resource leak. - * util/getroot.c (grub_util_pull_device): Fix memory leak. - - * po/POTFILES.in: Regenerated. - - Allow purely long options - - * grub-core/lib/arg.c (SHORT_ARG_HELP): Removed. - (SHORT_ARG_USAGE): Likewise. - (grub_arg_show_help): Compare opt with help_options. - (parse_option): Receive opt as argument. If makes big simplificatons. - All users updated - -2011-12-24 Vladimir Serbinenko - - * grub-core/lib/libgcrypt_wrap/cipher_wrap.h (WORDS_BIGENDIAN): - Restructure to avoid warning. - -2011-12-24 Vladimir Serbinenko - - * util/grub-install.in: Account for possible escaped comma in device - name. - -2011-12-24 Vladimir Serbinenko - - * util/ieee1275/ofpath.c (of_path_of_ide): Fix address for secondary - channel. - -2011-12-24 Vladimir Serbinenko - - * grub-core/kern/ieee1275/openfw.c (grub_devalias_iterate): Fix - allocation and zero-setting. - (grub_ieee1275_get_devname): Check that alias is complete. - -2011-12-24 Vladimir Serbinenko - - * grub-core/kern/disk.c (grub_disk_read): Fix hook calling for - unaligned segments. - -2011-12-24 Vladimir Serbinenko - - * grub-core/disk/ieee1275/ofdisk.c (grub_ofdisk_iterate): Add ieee1275/ - prefix. - (grub_ofdisk_open): Check and discard ieee1275 prefix. - * grub-core/kern/ieee1275/openfw.c (grub_ieee1275_encode_devname): - Add ieee1275 prefix. - -2011-12-23 Vladimir Serbinenko - - * docs/grub.texi (Filesystems): Update. - -2011-12-23 Vladimir Serbinenko - - Support odc, newc and bigendian cpio formats. - - * Makefile.util.def (libgrubmods): Add odc.c, newc.c and cpio_be.c. - * grub-core/Makefile.core.def (newc): New module. - (odc): Likewise. - (cpio_be): Likewise. - * grub-core/fs/cpio.c (ALIGN_CPIO): New macro. - (MAGIC): Likewise. - (MAGIC2): Likewise. - (head) [MODE_ODC]: Adapt for the format. - (head) [MODE_NEWC]: Likewise. - (head) [!MODE_*]: Write fields of interest as arrays. - (MAGIC_USTAR): Removed. - (read_number) [MODE_NEWC]: Change to hex. - (read_number) [!MODE_*]: Parse binary arrays. - (grub_cpio_find_file): Factor out the code for better structure and - always use read_number. - (grub_cpio_mount): Use MAGIC and MAGIC2. - (grub_cpio_dir): Exit on first hook non-0 return. - (grub_cpio_fs) [MODE_ODC]: Set name to odc. - (grub_cpio_fs) [MODE_NEWC]: Set name to newc. - (GRUB_MOD_INIT) [MODE_ODC]: Set name to odc. - (GRUB_MOD_INIT) [MODE_NEWC]: Set name to newc. - (GRUB_MOD_FINI) [MODE_ODC]: Set name to odc. - (GRUB_MOD_FINI) [MODE_NEWC]: Set name to newc. - * grub-core/fs/newc.c: New file. - * grub-core/fs/odc.c: Likewise. - * grub-core/fs/cpio_be.c: Likewise. - -2011-12-23 Vladimir Serbinenko - - Fix handling of tar numbers occupying the whole field. - - * grub-core/fs/cpio.c (read_number): New function. - (grub_cpio_find_file): Use read_number instead of strtoull. - -2011-12-23 Vladimir Serbinenko - - * grub-core/fs/cpio.c (grub_cpio_find_file): Fix handling of names - occupying the whole field size. - -2011-12-23 Lukas Anzinger - - * util/grub-mkconfig_lib.in (version_test_gt): Fix variable names. - -2011-12-23 Vladimir Serbinenko - - * grub-core/net/net.c (grub_cmd_delroute): Add missing out condition. - -2011-12-23 Seth Goldberg - - * grub-core/Makefile.core.def (lzma_decompress): Add missing - TARGET_IMG_LDFLAGS. - -2011-12-23 Vladimir Serbinenko - - * util/getroot.c (ESCAPED_PATH_MAX): New define. - (mountinfo_entry): Increase the field size to take escaping into - account. - (find_root_device_from_libzfs): Add one byte to size of strings for - security. - -2011-12-23 Vladimir Serbinenko - - * grub-core/lib/reed_solomon.c (grub_reed_solomon_add_redundancy): Add - an assert. - * util/grub-setup.c (setup): Likewise. - -2011-12-23 Vladimir Serbinenko - - * grub-core/boot/i386/pc/startup_raw.S: Add missing argument for - _LzmaDecodeA. - -2011-12-22 Vladimir Serbinenko - - * docs/grub.texi (Internationalisation): New section. - -2011-12-22 Vladimir Serbinenko - - * docs/grub.texi (Loopback booting): New section. - -2011-12-22 Keshav P R - - * util/grub-mkstandalone.in: Fix minor typo errors. - -2011-12-20 Vladimir Serbinenko - - IPv6, TCP, HTTP, ICMP and DNS support. Several cleanups and bugfixes. - - * grub-core/Makefile.core.def (net): Add net/dns.c, net/tcp.c, - net/icmp.c and net/icmp6.c. - (http): New module. - (priority_queue): Likewise. - * grub-core/io/bufio.c: Rewritten. - * grub-core/lib/legacy_parse.c (legacy_command): New argument type - TYPE_WITH_CONFIGFILE_OPTION. - (legacy_commands): Add bootp and dhcp. - (is_option): Handle TYPE_WITH_CONFIGFILE_OPTION. - (grub_legacy_parse): Likewise. - * grub-core/lib/priority_queue.c: New file. - * grub-core/net/arp.c: Add missing license header. - (arp_find_entry): Removed. - (arp_find_entry): Likewise. - (grub_net_arp_resolve): Rename to ... - (grub_net_arp_send_request): ...this. - (grub_net_arp_receive): New card argument. - * grub-core/net/bootp.c (parse_dhcp_vendor): Clean up. - Set router and DNS server. - (grub_net_configure_by_dhcp_ack): Handle routing information. - (grub_cmd_bootp): Set checksum. - (grub_bootp_init): Remove net_dhcp. - * grub-core/net/dns.c: New file. - * grub-core/net/drivers/efi/efinet.c (send_card_buffer): Wait for - completion. - (get_card_packet): Handle allocation. - (grub_efinet_findcards): Set mtu. - * grub-core/net/drivers/emu/emunet.c: Add missing license header. - (get_card_packet): Handle allocation. - (emucard): Set mtu. - * grub-core/net/drivers/i386/pc/pxe.c (grub_pxe_recv): Handle allocation - (GRUB_MOD_INIT): Set mtu. - * grub-core/net/drivers/ieee1275/ofnet.c (grub_ofnetcard_data): Remove - mtu. - (get_card_packet): Handle allocation. - (grub_ofnet_findcards): Set mtu. - * grub-core/net/ethernet.c (send_ethernet_packet): Add compile time - assert. - (grub_net_recv_ethernet_packet): Handle IPv6. - * grub-core/net/http.c: New file. - * grub-core/net/icmp.c: Likewise. - * grub-core/net/icmp6.c: Likewise. - * grub-core/net/ip.c (ip6addr): New type. - (ip6hdr): Likewise. - (reassemble): Likewise. - (cmp): New function. - (reassembles): New variable. - (grub_net_ip_chksum): Handle 0xffff sum and unaligned buffers. - (id): New variable. - (send_fragmented): New function. - (grub_net_send_ip_packet): Rename to ... - (grub_net_send_ip4_packet): ... this. Send fragmented if needed. - Handle non-UDP. - (grub_net_recv_ip_packets): Rename to ... - (handle_dgram): ... this. Check checksum. Handle non-UDP. - (free_rsm): New function. - (free_old_fragments): Likewise. - (grub_net_recv_ip4_packets): New function. - (grub_net_send_ip6_packet): Likewise. - (grub_net_send_ip_packet): Likewise. - (grub_net_recv_ip6_packets): Likewise. - (grub_net_recv_ip_packets): Likewise. - * grub-core/net/net.c (grub_net_link_layer_entry): New struct. - (LINK_LAYER_CACHE_SIZE): New const. - (link_layer_find_entry): New function. - (grub_net_link_layer_add_address): Likewise. - (grub_net_link_layer_resolve_check): Likewise. - (grub_net_link_layer_resolve): Likewise. - (grub_net_ipv6_get_slaac): Likewise. - (grub_net_ipv6_get_link_local): Likewise. - (grub_cmd_ipv6_autoconf): Likewise. - (parse_ip): Handle one number representation. - (parse_ip6): New functoion. - (match_net): Handle IPv6. - (grub_net_resolve_address): Handle IPv6 and DNS. - (grub_net_resolve_net_address): Handle IPv6. - (route_cmp): New function. - (grub_net_route_address): Find best route. - (grub_net_addr_to_str): Handle IPv6. - (grub_net_addr_cmp): New function. - (grub_net_add_addr): Register local route. - (print_net_address): Handle net address. - (grub_net_poll_cards): Retransmit TCP. - (grub_net_poll_cards_idle_real): Likewise. - (have_ahead): New function. - (grub_net_seek_real): Use underlying seek. - (GRUB_MOD_INIT): Register net_ipv6_autoconf and init dns. - * grub-core/net/tcp.c: New file. - * grub-core/net/tftp.c (tftp_data): Add priority_queue. - (cmp): New function. - (ack): Likewise. - (tftp_receive): Handle unordered input. - (destroy_pq): New function. - (tftp_close): Close pq. - * grub-core/net/udp.c: Put missing license header. - (grub_net_udp_socket): New function. - (udp_socket_register): Likewise. - (grub_net_udp_close): Likewise. - (grub_net_recv_udp_packet): Check checksum. - * include/grub/efi/api.h (grub_efi_simple_network): Add status. - * include/grub/misc.h (grub_memchr): New function. - * include/grub/net.h (GRUB_NET_*_SIZE): New enum. - (grub_net_card_driver): Return buf in recv. - (grub_net_slaac_mac_list): New struct. - (grub_network_level_protocol_id): Add ipv6. - (grub_net_network_level_addr): Likewise. - (grub_net_network_level_net_addr): Likewise. - (grub_net_app_protocol): Add seek. - (grub_net_socket): Removed. - (grub_net_sockets): Likewise. - (grub_net_socket_register): Likewise. - (grub_net_socket_unregister): Likewise. - (FOR_NET_SOCKETS): Likewise. - (grub_net_add_addr): Add const. - (GRUB_NET_BOOTP_*): New enum. - (grub_net_addr_cmp): New proto. - (GRUB_NET_MAX_STR_ADDR_LEN): Take IPV6 into account. - (GRUB_NET_MAX_STR_HWADDR_LEN): New define. - (grub_net_hwaddr_to_str): NEw proto. - (FOR_NET_NETWORK_LEVEL_INTERFACES): New macro. - (FOR_NET_NETWORK_LEVEL_INTERFACES_SAFE): Handle NULL. - (grub_dns_init): New proto. - (grub_dns_fini): Likewise. - (grub_net_tcp_retransmit): Likewise. - (grub_net_link_layer_add_address): Likewise. - (grub_net_link_layer_resolve_check): Likewise. - (grub_net_link_layer_resolve): Likewise. - (grub_net_dns_lookup): Likewise. - (grub_net_add_dns_server): Likewise. - (grub_net_remove_dns_server): Likewise. - (GRUB_NET_TRIES): New const. - (GRUB_NET_INTERVAL): Likewise. - * include/grub/net/arp.h: Mostly rewritten. - * include/grub/net/ethernet.h (grub_net_ethertype_t): New enum. - * include/grub/net/ip.h: Mostly rewritten. - * include/grub/net/netbuff.h: Indent. - * include/grub/net/tcp.h: New file. - * include/grub/net/udp.h: Mostly rewritten. - * include/grub/priority_queue.h: New file. - * include/grub/types.h (PRIdGRUB_SSIZE): New define. - (grub_swap_bytes64_compile_time): Likewise. - (grub_cpu_to_be16_compile_time): Likewise. - (grub_cpu_to_be32_compile_time): Likewise. - (grub_cpu_to_be64_compile_time): Likewise. - (grub_be_to_cpu64_compile_time): Likewise. - -2011-12-16 Vladimir Serbinenko - - * grub-core/commands/i386/pc/drivemap.c (int13slot): Replace - UINT_TO_PTR with cast. - -2011-12-15 Vladimir Serbinenko - - * util/import_gcry.py: Skip _gcry_rmd160_mixblock and serpent_test. We - don't use them. - -2011-12-15 Vladimir Serbinenko - - * util/import_gcry.py: Don't add include camellia.h to camellia.c. It's - already there. - -2011-12-15 Vladimir Serbinenko - - * util/grub-mkimage.c (generate_image): Clean multiboot header to avoid - confusing ipxe. - -2011-12-15 Vladimir Serbinenko - - * grub-core/lib/libgcrypt/cipher/md4.c (transform) [WORDS_BIGENDIAN]: - Add missing const attribute. - * grub-core/lib/libgcrypt/cipher/md5.c (transform) [WORDS_BIGENDIAN]: - Likewise. - * grub-core/lib/libgcrypt/cipher/rmd160.c (transform) [WORDS_BIGENDIAN]: - Likewise. - -2011-12-15 Vladimir Serbinenko - - * grub-core/lib/libgcrypt/cipher/serpent.c (serpent_key_prepare): Fix - misaligned access. - (serpent_setkey): Likewise. - (serpent_encrypt_internal): Likewise. - (serpent_decrypt_internal): Likewise. - (serpent_encrypt): Don't put an alignment-increasing cast. - (serpent_decrypt): Likewise. - (serpent_test): Likewise. - -2011-12-15 Vladimir Serbinenko - - * grub-core/loader/multiboot.c (grub_cmd_module): Fix target address. - -2011-12-15 Vladimir Serbinenko - - Replace UINT_TO_PTR and PTR_TO_UINT with explicit grub_addr_t casts. - - * include/grub/types.h (UINT_TO_PTR): Removed. All users switched to - grub_addr_t casts. - (PTR_TO_UINT64): Likewise. - (PTR_TO_UINT32): Likewise. - -2011-12-15 Vladimir Serbinenko - - * util/grub-mkimage.c (generate_image): Decrease the higher limit - because of stack. - * util/grub-setup.c (setup): Don't add redundancy past the higher load - limit. - -2011-12-15 Vladimir Serbinenko - - * grub-core/gfxmenu/gui_label.c (label_paint): Handle the case - text_width > available width a bit more gracefully. - -2011-12-15 Vladimir Serbinenko - - * grub-core/loader/i386/bsdXX.c (grub_freebsd_load_elfmodule): Fix - current address calculation. - -2011-12-15 Vladimir Serbinenko - - * grub-core/lib/reed_solomon.c (decode_block): Allocate on heap and not - stack. - (encode_block): Likewise. - -2011-12-15 Vladimir Serbinenko - - * grub-core/boot/i386/pc/startup_raw.S: Clear direction flag for - certainety. - -2011-12-15 Vladimir Serbinenko - - * grub-core/boot/i386/pc/startup_raw.S: Move realmode routines to - non-RS part to avoid RS messing with GDT. - * include/grub/offsets.h (GRUB_KERNEL_I386_PC_NO_REED_SOLOMON_PART): - Increase to suit in realmode routines. - -2011-12-15 Vladimir Serbinenko - - * grub-core/kern/i386/realmode.S: Increase alignment. - * grub-core/boot/i386/pc/startup_raw.S: Likewise. - -2011-12-14 Vladimir Serbinenko - - * grub-core/lib/reed_solomon.c (init_powx): Set gf_powx_inv[0] just to - be deterministic. - (syndroms): Compute 0 syndrom. - (rs_recover): Use 0 syndrom. - -2011-12-14 Vladimir Serbinenko - - * include/grub/kernel.h (FOR_MODULES): Make it a bit faster. - -2011-12-14 Vladimir Serbinenko - - * include/grub/types.h (GRUB_PROPERLY_ALIGNED_ARRAY): Add missing - brackets. - -2011-12-14 Vladimir Serbinenko - - * grub-core/gfxmenu/widget-box.c (get_left_pad): Take corners into - account. - (get_top_pad): Likewise. - (get_right_pad): Likewise. - (get_bottom_pad): Likewise. - -2011-12-14 Vladimir Serbinenko - - * grub-core/gfxmenu/gui_list.c (draw_menu): Don't use assignment in if. - -2011-12-14 Vladimir Serbinenko - - * include/grub/efi/api.h (grub_efi_memory_descriptor): Add packed - attribute as the structure isn't guaranteed to be properly aligned. - (grub_efi_pci_device_path): Likewise. - (grub_efi_pccard_device_path): Likewise. - (grub_efi_memory_mapped_device_path): Likewise. Additionaly explicitly - specify the size of `memory_type'. - (grub_efi_vendor_device_path): Likewise. - (grub_efi_controller_device_path): Likewise. - (grub_efi_acpi_device_path): Likewise. - (grub_efi_expanded_acpi_device_path): Likewise. - (grub_efi_atapi_device_path): Likewise. - (grub_efi_scsi_device_path): Likewise. - (grub_efi_fibre_channel_device_path): Likewise. - (grub_efi_1394_device_path): Likewise. - (grub_efi_usb_device_path): Likewise. - (grub_efi_usb_class_device_path): Likewise. - (grub_efi_i2o_device_path): Likewise. - (grub_efi_mac_address_device_path): Likewise. - (grub_efi_ipv4_device_path): Likewise. - (grub_efi_ipv6_device_path): Likewise. - (grub_efi_infiniband_device_path): Likewise. - (grub_efi_uart_device_path): Likewise. - (grub_efi_vendor_messaging_device_path): Likewise. - (grub_efi_hard_drive_device_path): Likewise. - (grub_efi_cdrom_device_path): Likewise. - (grub_efi_vendor_media_device_path): Likewise. - (grub_efi_file_path_device_path): Likewise. - (grub_efi_protocol_device_path): Likewise. - (grub_efi_piwg_device_path): Likewise. - (grub_efi_bios_device_path): Likewise. - -2011-12-14 Vladimir Serbinenko - - * include/grub/charset.h (grub_utf16_to_utf8): Make src a const pointer. - (grub_ucs4_to_utf8_alloc): Likewise. - (grub_ucs4_to_utf8): Likewise. - * grub-core/normal/charset.c (grub_ucs4_to_utf8): Likewise. - (grub_ucs4_to_utf8_alloc): Likewise. - -2011-12-14 Vladimir Serbinenko - - AFFS never uses unicode. - - * include/grub/charset.h (GRUB_MAX_UTF8_PER_LATIN1): New const. - (grub_latin1_to_utf8): New inline function. - * grub-core/fs/affs.c (grub_affs_iterate_dir): Convert latin1 to UTF8. - -2011-12-13 Vladimir Serbinenko - - * grub-core/fs/romfs.c (grub_romfs_mount): Fix pointer comparison - overflow. - -2011-12-13 Vladimir Serbinenko - - * grub-core/fs/squash4.c (grub_squash_inode): Fix field sizes. - (grub_squash_dirent_header): Likewise. - (read_chunk): Don't double swap. - (grub_squash_iterate_dir): Fix swap sizes. - -2011-12-13 Vladimir Serbinenko - - * grub-core/fs/jfs.c (grub_jfs_getent): Handle UTF16 endianness. - -2011-12-13 Vladimir Serbinenko - - * grub-core/fs/hfs.c (grub_hfs_find_node): Handle unaligned keys. - (grub_hfs_iterate_dir): Likewise. - -2011-12-13 Vladimir Serbinenko - - Fix video on platforms where unaligned access is forbidden. - Make several optimisations while on it. - - * grub-core/video/fb/fbblit.c (grub_video_fbblit_replace_directN): - Optimise and use GRUB_VIDEO_FB_ADVANCE_POINTER. - (grub_video_fbblit_replace_32bit_1bit): Likewise. - (grub_video_fbblit_replace_24bit_1bit) [!GRUB_HAVE_UNALIGNED_ACCESS]: - Disable. - (grub_video_fbblit_replace_16bit_1bit): - Optimise and use GRUB_VIDEO_FB_ADVANCE_POINTER. - (grub_video_fbblit_replace_8bit_1bit): Likewise. - (grub_video_fbblit_replace_BGRX8888_RGBX8888): Likewise. - (grub_video_fbblit_replace_BGRX8888_RGB888): Likewise. - (grub_video_fbblit_replace_BGR888_RGBX8888): Likewise. - (grub_video_fbblit_replace_BGR888_RGBX8888): Likewise. - (grub_video_fbblit_replace_BGR888_RGB888): Likewise. - (grub_video_fbblit_replace_RGBX8888_RGB88): Likewise. - (grub_video_fbblit_replace_RGB888_RGBX888): Likewise. - (grub_video_fbblit_replace_RGB888_RGBX8888): Likewise. - (grub_video_fbblit_replace_index_RGBX8888): Likewise. - (grub_video_fbblit_replace_index_RGB888): Likewise. - (grub_video_fbblit_blend_BGRA8888_RGBA8888): Likewise. - (grub_video_fbblit_blend_BGR888_RGBA8888): Likewise. - (grub_video_fbblit_blend_RGBA8888_RGBA8888): Likewise. - (grub_video_fbblit_blend_RGB888_RGBA8888): Likewise. - (grub_video_fbblit_blend_index_RGBA8888): Likewise. - (grub_video_fbblit_blend_XXXA8888_1bit): Likewise. - (grub_video_fbblit_blend_XXX888_1bit) [!GRUB_HAVE_UNALIGNED_ACCESS]: - Disable. - (grub_video_fbblit_blend_XXX565_1bit): - Optimise and use GRUB_VIDEO_FB_ADVANCE_POINTER. - * grub-core/video/fb/fbfill.c (grub_video_fbfill_direct32): Likewise. - * grub-core/video/fb/fbutil.c (grub_video_fb_get_video_ptr): Return - void *. - * grub-core/video/fb/video_fb.c (common_blitter) - [!GRUB_HAVE_UNALIGNED_ACCESS]: Skip disabled blitters. - (grub_video_fb_create_render_target_from_pointer) - [!GRUB_HAVE_UNALIGNED_ACCESS]: Check alignment. - * include/grub/fbutil.h (grub_video_fb_get_video_ptr): Return void *. - * include/grub/i386/types.h (GRUB_HAVE_UNALIGNED_ACCESS): New - definition. - * include/grub/x86_64/types.h (GRUB_HAVE_UNALIGNED_ACCESS): Likewise. - -2011-12-13 Vladimir Serbinenko - - * grub-core/kern/sparc64/dl.c (grub_arch_dl_relocate_symbols): Support - HH22 and HM10 relocations. - -2011-12-13 Vladimir Serbinenko - - * grub-core/kern/misc.c (grub_vsnprintf_real): Fix fmt2 parsing. - -2011-12-13 Vladimir Serbinenko - - * grub-core/commands/videotest.c (grub_cmd_videotest): Check that - allocation succeeded. - -2011-12-13 Vladimir Serbinenko - - * grub-core/fs/iso9660.c (grub_iso9660_convert_string): Make first - argument a u8 pointer. All users updated. - Handle unaligned buffers. - -2011-12-13 Vladimir Serbinenko - - * grub-core/fs/iso9660.c (grub_iso9660_iterate_dir): Force inlining of - add_part to workaround compiler bug. - -2011-12-13 Vladimir Serbinenko - - * include/grub/kernel.h (FOR_MODULES): Preserve alignment invariants. - -2011-12-13 Vladimir Serbinenko - - * grub-core/loader/multiboot_mbi2.c (grub_multiboot_add_elfsyms): - Reserve alignment invariants. - (grub_multiboot_load): Likewise. - (retrieve_video_parameters): Likewise. - (grub_multiboot_make_mbi): Likewise. - -2011-12-13 Vladimir Serbinenko - - * grub-core/loader/i386/xnu.c (grub_xnu_devprop_remove_property): Fix - incorrect pointer. - -2011-12-13 Vladimir Serbinenko - - * grub-core/disk/pata.c (grub_pata_pio_read): Handle unaligned buffer. - (grub_pata_pio_write): Likewise. - -2011-12-13 Vladimir Serbinenko - - Add noreturn attributes and remove unreachable code. - - * grub-core/bus/cs5536.c (grub_cs5536_smbus_wait): Remove unreachable - code. - * grub-core/commands/halt.c (grub_cmd_halt): Remove unreachable - code. Mark as noreturn. - * grub-core/commands/minicmd.c (grub_mini_cmd_exit): Likewise. - * grub-core/commands/reboot.c (grub_cmd_reboot): Likewise. - * grub-core/disk/efi/efidisk.c (grub_efidisk_get_device_name): Remove - unreachable code. - * grub-core/kern/main.c (grub_main): Mark as noreturn. - * grub-core/kern/rescue_reader.c (grub_rescue_run): Likewise. - * grub-core/lib/posix_wrap/stdlib.h (abort): Likewise. - * grub-core/normal/menu.c (run_menu): Remove unreachable code. - * include/grub/kernel.h (grub_main): Mark as noreturn. - * include/grub/reader.h (grub_rescue_run): Likewise. - -2011-12-13 Vladimir Serbinenko - - * include/grub/i386/qemu/memory.h (grub_machine_mmap_init): Remove - redundant declaration. - -2011-12-13 Vladimir Serbinenko - - * include/grub/net.h (grub_net_network_level_interfaces): Remove - redundant declaration. - (FOR_NET_NETWORK_LEVEL_INTERFACES): Move to appropriate place. - -2011-12-13 Vladimir Serbinenko - - * grub-core/commands/hdparm.c (le16_to_char): Make src and dest uint16 * - to ensure alignment. - (grub_hdparm_print_identify): Make argument uint16 * to ensure - alignment. Ensure tmp alignment. - (grub_cmd_hdparm): Ensure buf alignment. - * grub-core/disk/ata.c (grub_ata_strncpy): Make src and dest uint16 * - to ensure alignment. - (grub_ata_dumpinfo): Ensure text alignment. - (grub_atapi_identify): Preserve alignment invariant. - (grub_ata_identify): Likewise. Use grub_get_unaligned32 when necessary. - -2011-12-13 Vladimir Serbinenko - - * include/grub/emu/misc.h (xasprintf): Add missing format attribute. - * include/grub/mips/kernel.h (grub_halt): Remove redundant declaration. - * include/grub/mips/qemu_mips/kernel.h (grub_halt): Likewise. - * include/grub/misc.h (grub_reboot) - [GRUB_MACHINE_EMU || GRUB_MACHINE_QEMU_MIPS]: Export. - (grub_halt) [__mips__]: Likewise. - -2011-12-13 Vladimir Serbinenko - - * include/grub/efi/memory.h (grub_machine_mmap_iterate): - Remove redundant declaration. - (grub_mmap_get_post64): Likewise. - (grub_mmap_get_upper): Likewise. - (grub_mmap_get_lower): Likewise. - -2011-12-13 Vladimir Serbinenko - - * grub-core/partmap/dvh.c (grub_dvh_is_valid): Make argument - uint32_t * to ensure alignment. - (dvh_partition_map_iterate): Make `block' a union to ensure alignment. - -2011-12-13 Vladimir Serbinenko - - * grub-core/partmap/sunpc.c (grub_sun_is_valid): Make argument - uint16_t * to ensure alignment. - (sun_pc_partition_map_iterate): Make `block' a union to ensure - alignment. - -2011-12-13 Vladimir Serbinenko - - * grub-core/partmap/sun.c (grub_sun_is_valid): Make argument uint16_t * - to ensure alignment. - (sun_partition_map_iterate): Make `block' a union to ensure alignment. - -2011-12-13 Vladimir Serbinenko - - * grub-core/fs/ntfs.c (u16at): Make into inline function. - Handle unaligned pointers. - (u32at): Likewise. - (u64at): Likewise. - (fixup): Use byte access instead of v16at. - (find_attr): Fix imporper usage of v32at. - (read_data): Likewise. - (list_file): Handle byte-swapping and unaligned strings. - (grub_ntfs_label): Likewise. - -2011-12-13 Vladimir Serbinenko - - * grub-core/fs/udf.c (grub_udf_partmap): Add packed attribute - as it's not necessarily aligned. - -2011-12-13 Vladimir Serbinenko - - * grub-core/kern/mips/qemu_mips/init.c (grub_at_keyboard_init): Remove - redundant declaration. - (grub_serial_init): Likewise. - (grub_terminfo_init): Likewise. - -2011-12-13 Vladimir Serbinenko - - * grub-core/fs/zfs/zfs.c (DVA_OFFSET_TO_PHYS_SECTOR): Make into inline - function. - (ZAP_HASH_IDX): Likewise. - (ZAP_LEAF_HASH_SHIFT): Likewise. - (ZAP_LEAF_HASH_NUMENTRIES): Likewise. - (LEAF_HASH): Likewise. - (ZAP_LEAF_NUMCHUNKS): Likewise. - (ZAP_LEAF_CHUNK): Likewise. Changed pointer arithmetic to preserve - alignment invariants. Return pointer. All users updated. - (ZAP_LEAF_ENTRY): Make into inline function. - (NBBY): Removed. - (xor): LIkewise. - (xor_out): Use grub_crypto_xor. - (dnode_get_path): Use grub_get_unaligned. - (nvlist_find_value): Likewise. - (grub_zfs_nvlist_lookup_uint64): Likewise. - (grub_zfs_nvlist_lookup_string): Likewise. - (get_nvlist_size): Likewise. - (grub_zfs_open): Likewise. - (fill_fs_info): Likewise. - (grub_zfs_dir): Likewise. - * include/grub/zfs/zap_leaf.h (zap_leaf_phys): Adapt to preserve - alignment invariants. - * include/grub/zfs/zio.h (zio_eck_t): Mark as packed as it's not - necessarily aligned. - -2011-12-13 Vladimir Serbinenko - - * grub-core/net/netbuff.c (grub_netbuff_alloc): Ensure proper alignment. - -2011-12-13 Vladimir Serbinenko - - * grub-core/disk/mdraid_linux.c (grub_mdraid_detect): Change pointer - arithmetic to conserve alignment invariants. - -2011-12-13 Vladimir Serbinenko - - * include/grub/efiemu/efiemu.h (grub_efiemu_get_memory_map): Remove - redundant declaration. - (grub_efiemu_mm_obtain_request): Likewise. - (grub_efiemu_prepare): Likewise. - -2011-12-13 Vladimir Serbinenko - - * include/grub/list.h: Explicitly cast return of grub_bad_type_cast - to match types. - -2011-12-13 Vladimir Serbinenko - - * grub-core/fs/hfsplus.c (grub_hfsplus_btree_recoffset): Handle the - case of aunaligned recptr. - (grub_hfsplus_read_block): Declare extoverflow as key to ensure - alignment. - (grub_hfsplus_btree_search): Handle unaligned index. - -2011-12-13 Vladimir Serbinenko - - * grub-core/fs/xfs.c (grub_xfs_iterate_dir): Use grub_get_unaligned16 - to get freetag and skip. - -2011-12-13 Vladimir Serbinenko - - * grub-core/fs/nilfs2.c (grub_nilfs2_btree_node): Add zero-size keys - array. - (grub_nilfs2_btree_node_dkeys): Ensure return pointer alignment. - (grub_nilfs2_btree_lookup): Ensure buffer alignment. - -2011-12-13 Vladimir Serbinenko - - * grub-core/fs/romfs.c (grub_romfs_iterate_dir): Properly align - name for checksum and fix allocation algorithm. - -2011-12-13 Vladimir Serbinenko - - * include/grub/types.h (grub_properly_aligned_t): New type. - (GRUB_PROPERLY_ALIGNED_ARRAY): New macro. - (grub_get_unaligned16): Add explicit casts. - (grub_get_unaligned32): Likewise. - (grub_get_unaligned64): Likewise. - (grub_set_unaligned16): New function. - (grub_set_unaligned32): Likewise. - -2011-12-13 Vladimir Serbinenko - - * grub-core/normal/datetime.c (grub_weekday_names): Make const. - -2011-12-13 Vladimir Serbinenko - - * grub-core/fs/udf.c (read_string): Macroify GRUB_MAX_UTF8_PER_UTF16. - * grub-core/fs/jfs.c (grub_jfs_diropen): Likewise. - * grub-core/fs/fat.c (grub_fat_iterate_dir): Likewise. - -2011-12-13 Vladimir Serbinenko - - * grub-core/term/at_keyboard.c (set_scancodes): Fix preprocessor - conditionals. - -2011-12-13 Vladimir Serbinenko - - * grub-core/kern/emu/main.c (main): Add missing const qualifier. - * grub-core/loader/efi/appleloader.c (devdata): Likewise. - -2011-12-13 Vladimir Serbinenko - - Unify and improve RAID and crypto xor. - - * grub-core/disk/raid.c (grub_raid_block_xor): Removed. All users - changed to grub_crypto_xor - * grub-core/lib/crypto.c (grub_crypto_xor): Moved from here ... - * include/grub/crypto.h (grub_crypto_xor): ... here. Inlined. - Use bigger types when possible. - -2011-12-13 Vladimir Serbinenko - - * grub-core/disk/raid.c (scan_devices): Fix condition. - -2011-12-13 Vladimir Serbinenko - - * grub-core/net/drivers/ieee1275/ofnet.c (bootp_response_properties): - Make name a const ptr. - -2011-12-13 Vladimir Serbinenko - - * grub-core/kern/ieee1275/ieee1275.c (grub_ieee1275_finddevice): Make - first argument a const pointer. - * grub-core/kern/ieee1275/openfw.c (grub_children_iterate): Likewise. - * include/grub/ieee1275/ieee1275.h (grub_ieee1275_finddevice): Update - proto. - (grub_children_iterate): Likewise. - (grub_machine_mmap_iterate): Remove redundant declaration. - -2011-12-13 Vladimir Serbinenko - - * grub-core/commands/acpi.c (grub_acpi_create_ebda) [!x86]: Disable. - (grub_cmd_acpi) [!x86]: Disable EBDA. - -2011-12-13 Vladimir Serbinenko - - Enable UTF8 in gnulib regexp. - - * config.h.in (RE_ENABLE_I18N) [!GRUB_UTIL]: New define. - * grub-core/lib/posix_wrap/ctype.h (islower): Use grub_islower. - (isupper): Use grub_isupper. - (isascii): New inline function. - * grub-core/lib/posix_wrap/wchar.h: Replace dummy with real contents. - * grub-core/lib/posix_wrap/wctype.h: Likewise. - * grub-core/normal/charset.c (grub_utf8_process): New function. - (grub_utf8_to_utf16): Use grub_utf8_process. - (grub_encode_utf8_character): New function. - (grub_ucs4_to_utf8): Use grub_encode_utf8_character. - * include/grub/charset.h (grub_utf8_process): New declaration. - (grub_encode_utf8_character): Likewise. - * include/grub/misc.h (grub_islower): New inline function. - (grub_isupper): Likewise. - (grub_strchrsub): Moved down to fix the definitions. - -2011-12-13 Vladimir Serbinenko - - * grub-core/bus/usb/ohci.c (grub_ohci_check_transfer): Add an unsigned - specification. - -2011-12-13 Vladimir Serbinenko - - * include/grub/loader.h (grub_loader_register_preboot_hook): - Use struct preboot * and not void * for handle. All users updated. - (grub_loader_unregister_preboot_hook): Likewise. - -2011-12-12 Vladimir Serbinenko - - * include/grub/charset.h (GRUB_MAX_UTF8_PER_UTF16): New const. - * grub-core/fs/hfsplus.c (grub_hfsplus_catkey_internal): Change to - UTF-16-BE. All users updated. - (grub_hfsplus_cmp_catkey): Fix unicode handling. - (grub_hfsplus_iterate_dir): Likewise. - (grub_hfsplus_label): Likewise. - -2011-12-12 Vladimir Serbinenko - - * grub-core/disk/ahci.c (grub_ahci_pciinit): Fix compat condition. - -2011-11-30 Vladimir Serbinenko - - Add missing const qualifiers. - - * grub-core/commands/i386/pc/sendkey.c (keysym): Add missing const. - * grub-core/commands/lspci.c (grub_pci_classname): Likewise. - * grub-core/commands/menuentry.c (hotkey_aliases): Likewise. - * grub-core/disk/lvm.c (grub_lvm_getvalue): Likewise. - (grub_lvm_check_flag): Likewise. - * grub-core/efiemu/i386/coredetect.c - (grub_efiemu_get_default_core_name): Likewise - * grub-core/efiemu/main.c (grub_efiemu_autocore): Likewise. - * grub-core/fs/hfsplus.c (grub_hfsplus_catkey_internal): Likewise. - * grub-core/fs/ntfs.c (fixup): Likewise. - * grub-core/fs/xfs.c (grub_xfs_iterate_dir): Likewise. - * grub-core/fs/zfs/zfs.c (decomp_entry): Likewise. - (fzap_lookup): Likewise. - (zap_lookup): Likewise. - * grub-core/gnulib/regcomp.c (init_dfa): Likewise. - * grub-core/lib/legacy_parse.c (check_option): Likewise. - * grub-core/lib/posix_wrap/langinfo.h (nl_langinfo): Likewise. - * grub-core/loader/i386/bsd.c (grub_bsd_add_meta): Likewise. - (grub_freebsd_add_meta_module): Likewise. - (grub_cmd_freebsd_module): Likewise. - * grub-core/loader/i386/xnu.c (tbl_alias): Likewise. - * grub-core/loader/xnu.c (grub_xnu_register_memory): Likewise. - (grub_xnu_writetree_get_size): Likewise. - (grub_xnu_writetree_toheap_real): Likewise. - (grub_xnu_find_key): Likewise. - (grub_xnu_create_key): Likewise. - (grub_xnu_create_value): Likewise. - (grub_xnu_register_memory): Likewise. - (grub_xnu_check_os_bundle_required): Likewise. - (grub_xnu_scan_dir_for_kexts): Likewise. - (grub_xnu_load_kext_from_dir): Likewise. - * grub-core/normal/color.c (color_list): Likewise. - * grub-core/normal/completion.c (current_word): Likewise. - * grub-core/normal/menu_entry.c (insert_string): Likewise. - * grub-core/term/serial.c (grub_serial_find): Likewise. - * grub-core/term/tparm.c (grub_terminfo_tparm): Likewise. - * include/grub/efiemu/efiemu.h (grub_efiemu_get_default_core_name): - Likewise. - * include/grub/i386/bsd.h (grub_bsd_add_meta): Likewise. - (grub_freebsd_add_meta_module): Likewise. - * include/grub/lib/arg.h (grub_arg_option): Likewise. - * include/grub/net.h (grub_net_card_driver): Likewise. - (grub_net_card): Likewise. - (grub_net_app_protocol): Likewise. - * include/grub/parttool.h (grub_parttool_argdesc): Likewise. - * include/grub/serial.h (grub_serial_find): Likewise. - * include/grub/tparm.h (grub_terminfo_tparm): Likewise. - * include/grub/xnu.h (grub_xnu_create_key): Likewise. - (grub_xnu_create_value): Likewise. - (grub_xnu_find_key): Likewise. - (grub_xnu_scan_dir_for_kexts): Likewise. - (grub_xnu_load_kext_from_dir): Likewise. - - * include/grub/zfs/zio_checksum.h (zio_checksum_t): Moved from here ... - * grub-core/fs/zfs/zfs.c (zio_checksum_t): ...here. - * include/grub/zfs/zio_checksum.h (zio_checksum_info): - Moved from here ... - * grub-core/fs/zfs/zfs.c (zio_checksum_info): ... here. Added missing const. - -2011-11-28 Colin Watson - - * util/getroot.c (find_root_device_from_libzfs): Use xasprintf. - -2011-11-27 Vladimir Serbinenko - - * grub-core/fs/zfs/zfs.c (recovery): Fix spelling. - (read_device): Fix size calculation. - -2011-11-25 Robert Millan - - * util/getroot.c [HAVE_LIMITS_H]: Include `'. - (find_root_device_from_libzfs): Add zpool output parser to be used - as fallback when libzfs isn't available. - -2011-11-25 Seth Goldberg - - * po/Makefile.in.in: Add missing escape-continuation. - -2011-11-25 Vladimir Serbinenko - - * grub-core/fs/cpio.c (grub_cpio_dir): Handle subdirs correctly. - -2011-11-16 Vladimir Serbinenko - - * grub-core/kern/dl.c (grub_dl_load_segments): Fix alignment handling. - -2011-11-16 Vladimir Serbinenko - - * grub-core/kern/dl.c (grub_dl_unload): Fix freeing segments. - -2011-11-16 Vladimir Serbinenko - - * grub-core/kern/x86_64/efi/callwrap.S: Fix the comment. - -2011-11-14 Vladimir Serbinenko - - * grub-core/lib/adler32.c: Add missing license specification. - * grub-core/lib/crc64.c: Likewise. - * grub-core/loader/i386/pc/plan9.c: Likewise. - * grub-core/partmap/plan.c: Likewise. - -2011-11-13 Lubomir Kundrak - - Add facility to debug GRUB with gdb under qemu. - - * grub-core/gdb_grub.in: New file. - * grub-core/gmodule.pl.in: Likewise. - * grub-core/Makefile.core.def (gmodule.pl): New script. - (gdb_grub): Likewise. - -2011-11-13 Vladimir Serbinenko - - * util/grub-mount.c (argp_parser): Accept relative pathes. - * util/grub-fstest.c (argp_parser): Likewise. - -2011-11-13 Vladimir Serbinenko - - Plan9 support. - - * Makefile.util.def (libgrubmods): Add - grub-core/partmap/plan.c. - * docs/grub.texi: Notice Plan9 support. - * grub-core/Makefile.core.def (plan9): New module. - (part_plan): Likewise. - * grub-core/loader/i386/pc/plan9.c: New file. - * grub-core/partmap/plan.c: Likewise. - * include/grub/msdos_partition.h (GRUB_PC_PARTITION_TYPE_PLAN9): New - define. - (GRUB_PC_PARTITION_TYPE_LINUX_SWAP): Likewise. - * include/grub/mm.h (grub_extend_alloc): New inline function. - -2011-11-13 Vladimir Serbinenko - - Make Reed-Solomon faster by using power of generator representation of - GF(256)*. - - * grub-core/lib/reed_solomon.c (grub_uint16_t) [TEST]: Removed. - (gf_double_t): Likewise. - (gf_invert): Removed. - (gf_powx): New array. - (gf_powx_inv): Likewise. - (scratch): Move higher. - (gf_reduce): Removed. - (gf_mul): Use powx. - (gf_invert): Likewise. - (init_inverts): Replaced with ... - (init_powx): ...this. All users updated. - (pol_evaluate): Replace multiplications with additions. - (rs_encode): Likewise. - (gauss_eliminate): Call gf_invert. - (grub_reed_solomon_add_redundancy): Call init_powx. - (grub_reed_solomon_recover): Call init_powx unconditionally. - -2011-11-12 Vladimir Serbinenko - - * grub-core/partmap/gpt.c (gpt_partition_map_embed): Fix spelling. - -2011-11-12 Vladimir Serbinenko - - * grub-core/partmap/gpt.c (gpt_partition_map_embed): Restore - disk->partiton for safety. - -2011-11-12 Vladimir Serbinenko - - * grub-core/kern/emu/hostdisk.c (grub_util_biosdisk_get_grub_dev): - Fix a memory leak. - (grub_util_biosdisk_get_grub_dev): Add a useful debug info. - -2011-11-12 Vladimir Serbinenko - - * grub-core/kern/emu/hostdisk.c (find_system_device): Fix a memory leak. - -2011-11-12 Vladimir Serbinenko - - * include/grub/lvm.h (grub_lvm_pv): Correct start type. - -2011-11-12 Vladimir Serbinenko - - Fix spaces handling in proc/self/mountinfo. - - * util/getroot.c (unescape): New function. - (grub_find_root_device_from_mountinfo): Use unescape. - -2011-11-12 Vladimir Serbinenko - - Support ZFS embedding. - - * grub-core/fs/zfs/zfs.c (grub_zfs_embed): New function. - (grub_zfs_fs): Register grub_zfs_embed. - -2011-11-12 Vladimir Serbinenko - - Fix MIPS compilation. - - * grub-core/boot/mips/startup_raw.S: Use GRUB_DECOMPRESSOR_* - * include/grub/offsets.h: Rename decompressor fields from - GRUB_KERNEL_* to GRUB_DECOMPRESSOR_*. - * util/grub-mkimage.c (image_targets): Use new names. - -2011-11-12 Vladimir Serbinenko - - Defer multiboot device parsing until we're in compressed part. - - * grub-core/boot/i386/pc/lnxboot.S: Remove setting dos_part and - bsd_part. setdevice has fallen into disuse. - * grub-core/boot/i386/pc/startup_raw.S (dos_part): Removed. - (bsd_part): Likewise. - (boot_dev): New variable. - (multiboot_trampoline): Don't parse multiboot device. - Pass multiboot device in %edx. - * grub-core/disk/i386/pc/biosdisk.c (GRUB_MOD_INIT): Parse - grub_boot_device. - * grub-core/kern/i386/pc/init.c (grub_machine_get_bootlocation): - Likewise. - * grub-core/kern/i386/pc/startup.S: Save edx. - (grub_boot_drive): Removed. - (grub_install_dos_part): Likewise. - (grub_install_bsd_part): Likewise. - (grub_boot_device): New variable. - * include/grub/i386/pc/kernel.h (grub_install_dos_part): Removed. - (grub_install_bsd_part): Likewise. - (grub_boot_drive): Likewise. - (grub_boot_device): New variable. - * include/grub/offsets.h (GRUB_KERNEL_I386_PC_INSTALL_DOS_PART): - Removed. - (GRUB_KERNEL_I386_PC_INSTALL_BSD_PART): Likewise. - (GRUB_KERNEL_I386_PC_REED_SOLOMON_REDUNDANCY): Moved lower. - (GRUB_KERNEL_MACHINE_INSTALL_BSD_PART): Removed. - (GRUB_KERNEL_MACHINE_INSTALL_DOS_PART): Likewise. - * util/grub-install.in: Remove redundant condition. - -2011-11-12 Vladimir Serbinenko - - Fix bug introduced by previous commit. - - * grub-core/boot/i386/pc/startup_raw.S: Compute RS start correctly. - -2011-11-12 Vladimir Serbinenko - - Use decompressors framework on i386-pc. It increases core size - by 46 bytes but improves compatibility and maintainability. - - * grub-core/Makefile.core.def (lzma_decompress): New image. - (kernel): Add i386_pc_ldflags. - * grub-core/kern/i386/pc/startup.S: Move intial part to .. - * grub-core/boot/i386/pc/startup_raw.S: ... here. Pass pointers - to real_to_prot, prot_to_real and device info. - * include/grub/offsets.h: Renamed decompressor offsets. - * util/grub-mkimage.c (grub_compression_t): New cmpression lzma. - (image_target_desc): Remove raw_size and rename decompressor fields. - (compress_kernel): Handle lzma. - (generate_image): Handle decompressors on i386-pc. - -2011-11-12 Vladimir Serbinenko - - * configure.ac: Add -fno-asynchronous-unwind-tables. - -2011-11-12 Vladimir Serbinenko - - Move assembly code to C by using intwrap. It increases core size - by 88 bytes but improves compatibility and maintainability. - - * grub-core/kern/i386/pc/startup.S (grub_console_putchar): Moved to ... - * grub-core/term/i386/pc/console.c (grub_console_putchar_real): - ... here. Translated to C. - * grub-core/kern/i386/pc/startup.S (grub_console_getkey): Moved to ... - * grub-core/term/i386/pc/console.c (grub_console_getkey): - ... here. Translated to C. - * grub-core/kern/i386/pc/startup.S (grub_console_getxy): Moved to ... - * grub-core/term/i386/pc/console.c (grub_console_getxy): - ... here. Translated to C. - * grub-core/kern/i386/pc/startup.S (grub_console_gotoxy): Moved to ... - * grub-core/term/i386/pc/console.c (grub_console_gotoxy): - ... here. Translated to C. - * grub-core/kern/i386/pc/startup.S (grub_console_cls): Moved to ... - * grub-core/term/i386/pc/console.c (grub_console_cls): - ... here. Translated to C. - * grub-core/kern/i386/pc/startup.S (grub_console_setcursor): Moved to .. - * grub-core/term/i386/pc/console.c (grub_console_setcursor): - ... here. Translated to C. - * grub-core/kern/i386/pc/startup.S (grub_get_rtc): Moved to .. - * grub-core/kern/i386/pc/init.c (grub_get_rtc): ... here. - Translated to C. - * grub-core/term/i386/pc/console.c (int10_9): New function. - (grub_console_putchar): Likewise. - * include/grub/i386/pc/console.h: Removed the not anymore shared - functions. - -2011-11-12 Vladimir Serbinenko - - Move grub_chainloader_real_boot out of the kernel. - - * grub-core/Makefile.am: Remove machine/loader.h. - * grub-core/kern/i386/pc/startup.S (grub_chainloader_real_boot): - Removed. - * grub-core/lib/i386/relocator.c (grub_relocator16_esi): New extern - variable. - (grub_relocator16_keep_a20_enabled): Likewise. - (grub_relocator16_boot): Fill new variables. - * grub-core/lib/i386/relocator16.S: Add gate a20 handling. - * grub-core/loader/i386/pc/chainloader.c (grub_chainloader_boot): Use - relocator. - (grub_chainloader_unload): Likewise. - (grub_chainloader_cmd): Likewise. - * include/grub/i386/pc/loader.h: Removed. - * include/grub/i386/relocator.h (grub_relocator16_state): Add a20 - and esi. All initialisers updated. - -2011-11-12 Vladimir Serbinenko -2011-11-12 Colin Watson - - * Makefile.util.def (grub-mount): New util. - * .bzrignore: Add grub-mount. - * configure.ac: Check for fuse and enable grub-mount if available. - * docs/man/grub-mount.h2m: New file. - * util/grub-mount.c: Likewise. - -2011-11-11 Vladimir Serbinenko - - * grub-core/commands/efi/fixvideo.c: Gettextize. - * grub-core/commands/hashsum.c: Likewise. - * grub-core/commands/i386/cmostest.c: Likewise. - * grub-core/commands/i386/pc/drivemap.c: Likewise. - * grub-core/commands/i386/pc/lsapm.c: Likewise. - * grub-core/commands/i386/pc/sendkey.c: Likewise. - * grub-core/commands/lsmmap.c: Likewise. - * grub-core/commands/menuentry.c: Likewise. - * grub-core/commands/mips/loongson/lsspd.c: Likewise. - * grub-core/commands/setpci.c: Likewise. - * grub-core/loader/i386/bsd.c: Likewise. - * grub-core/loader/i386/linux.c: Likewise. - * util/getroot.c: Likewise. - * util/grub-editenv.c: Likewise. - * util/grub-fstest.c: Likewise. - * util/grub-mkfont.c: Likewise. - * util/grub-mkimage.c: Likewise. - * util/grub-mkpasswd-pbkdf2.c: Likewise. - * util/grub-pe2elf.c: Likewise. - * util/grub-probe.c: Likewise. - * util/grub-setup.c: Likewise. - * util/ieee1275/ofpath.c: Likewise. - * util/misc.c: Likewise. - * util/raid.c: Likewise. - -2011-11-11 Robert Millan - - * util/getroot.c (grub_util_get_geom_abstraction): Remove - __attribute__((unused)) from `os_dev', which *is* being used. - -2011-11-11 Vladimir Serbinenko - - * include/grub/dl.h (GRUB_ARCH_DL_TRAMP_SIZE) [__ia64__]: Add back - forgotten define. - (GRUB_ARCH_DL_GOT_ALIGN) [__ia64__]: Redefine in terms of - GRUB_IA64_DL_GOT_ALIGN. - (GRUB_ARCH_DL_TRAMP_ALIGN) [__ia64__]: Redefine in terms of - GRUB_IA64_DL_TRAMP_ALIGN. - -2011-11-11 Vladimir Serbinenko - - Replace grub_fatal with normal errors in i386 linux loader. - - * grub-core/loader/i386/linux.c (find_efi_mmap_size): Return 0 on error. - (allocate_pages): Check find_efi_mmap_size return value. - (grub_e820_add_region): Return error. - (grub_linux_boot): Check mmap return value. - -2011-11-11 Vladimir Serbinenko - - * grub-core/commands/acpihalt.c: Gettextized. - * grub-core/commands/cacheinfo.c: Likewise. - * grub-core/commands/cmp.c: Likewise. - * grub-core/commands/efi/loadbios.c: Likewise. - * grub-core/commands/gptsync.c: Likewise. - * grub-core/commands/ieee1275/suspend.c: Likewise. - * grub-core/commands/legacycfg.c: Likewise. - * grub-core/commands/memrw.c: Likewise. - * grub-core/commands/minicmd.c: Likewise. - * grub-core/commands/parttool.c: Likewise. - * grub-core/commands/time.c: Likewise. - * grub-core/commands/videoinfo.c: Likewise. - * grub-core/disk/geli.c: Likewise. - * grub-core/disk/i386/pc/biosdisk.c: Likewise. - * grub-core/disk/luks.c: Likewise. - * grub-core/disk/lvm.c: Likewise. - * grub-core/font/font_cmd.c: Likewise. - * grub-core/fs/zfs/zfscrypt.c: Likewise. - * grub-core/fs/zfs/zfsinfo.c: Likewise. - * grub-core/gfxmenu/view.c: Likewise. - * grub-core/kern/emu/hostdisk.c: Likewise. - * grub-core/kern/emu/main.c: Likewise. - * grub-core/kern/emu/misc.c: Likewise. - * grub-core/kern/emu/mm.c: Likewise. - * grub-core/kern/mips/arc/init.c: Likewise. - * grub-core/kern/mips/loongson/init.c: Likewise. - * grub-core/kern/partition.c: Likewise. - * grub-core/lib/i386/halt.c: Likewise. - * grub-core/lib/mips/arc/reboot.c: Likewise. - * grub-core/lib/mips/loongson/reboot.c: Likewise. - * grub-core/loader/i386/pc/chainloader.c: Likewise. - * grub-core/loader/i386/xnu.c: Likewise. - * grub-core/loader/multiboot.c: Likewise. - * grub-core/net/bootp.c: Likewise. - * grub-core/net/net.c: Likewise. - * grub-core/normal/term.c: Likewise. - * grub-core/partmap/bsdlabel.c: Likewise. - * grub-core/parttool/msdospart.c: Likewise. - * grub-core/term/gfxterm.c: Likewise. - * grub-core/term/terminfo.c: Likewise. - * grub-core/video/i386/pc/vbe.c: Likewise. - * util/grub-menulst2cfg.c: Likewise. - * util/grub-mkdevicemap.c: Likewise. - * util/grub-mklayout.c: Likewise. - * util/grub-mkrelpath.c: Likewise. - * util/grub-script-check.c: Likewise. - * util/ieee1275/grub-ofpathname.c: Likewise. - * util/resolve.c: Likewise. - -2011-11-11 Vladimir Serbinenko - - Support %1$d syntax. - - * tests/printf_unit_test.c: New file. - * Makefile.util.def (printf_test): New test. - * grub-core/kern/misc.c (grub_vsnprintf_real): Support %1$d syntax. - -2011-11-11 Vladimir Serbinenko - - * grub-core/hook/datehook.c (grub_read_hook_datetime): Small stylistic - fix. - -2011-11-11 Vladimir Serbinenko - - * grub-core/efiemu/mm.c (grub_efiemu_mmap_fill): Change printf into - dprintf. - * grub-core/font/font.c (grub_font_load): Likewise. - -2011-11-11 Vladimir Serbinenko - - * util/grub-macho2img.c: Add comment concerning gettext. - * grub-core/lib/legacy_parse.c: Likewise. - -2011-11-11 Vladimir Serbinenko - - * grub-core/kern/misc.c (grub_vprintf): Add missing va_end. - (grub_xvasprintf): Likewise. - -2011-11-11 Vladimir Serbinenko - - Add const keyword to grub_env_get and gettextize week days. - - * grub-core/hook/datehook.c (grub_datetime_names): Make const. - (grub_read_hook_datetime): Return const char *. - * grub-core/kern/env.c (grub_env_get): Return const char *. All users - updated. - * grub-core/normal/datetime.c (grub_weekday_names): Make const. - Mark for gettext. - (grub_get_weekday_name): Return const char *. Call gettext. - * grub-core/script/argv.c (grub_script_argv_append): Receive const - char * and len as the argument. All users updated. - (grub_script_argv_split_append): Receive const char *. - * include/grub/datetime.h (grub_get_weekday_name): Update proto. - * include/grub/env.h (grub_env_get): Likewise. - (grub_env_read_hook_t): Return const char *. - * include/grub/script_sh.h (grub_script_argv_append): Update proto. - (grub_script_argv_split_append): Likewise. - -2011-11-11 Vladimir Serbinenko - - * grub-core/normal/main.c (grub_normal_execute): Remove leftover call. - -2011-11-11 Vladimir Serbinenko - - * grub-core/kern/misc.c (grub_strstr): Moved from here ... - * include/grub/misc.h (grub_strstr): ... here. Make static and inline. - -2011-11-11 Vladimir Serbinenko - - * include/grub/ieee1275/ieee1275.h (grub_ieee1275_set_property): - Fix prototype. - -2011-11-11 Vladimir Serbinenko - - Fix mips compilation. - - * grub-core/lib/xzembed/xz_dec_stream.c (xz_dec): Restrict hash_id to - normal decoder. - (hashes): Use in embed decoder as well (for sizes). - (dec_stream_header): Fix embed decompressor logic. - (dec_stream_footer): Likewise. - -2011-11-11 Vladimir Serbinenko - - * grub-core/kern/x86_64/dl.c (grub_arch_dl_relocate_symbols): Issue - an error and not a fatal on unrecognised relocation types. - -2011-11-11 Vladimir Serbinenko - - * grub-core/kern/ieee1275/openfw.c (grub_ieee1275_parse_args): - Issue error rather than printf on unknown arguments. - -2011-11-11 Vladimir Serbinenko - - * grub-core/kern/ieee1275/ieee1275.c (grub_ieee1275_set_property): - Make buf a const. - -2011-11-11 Vladimir Serbinenko - - * grub-core/fs/zfs/zfscrypt.c (GRUB_MOD_INIT), (GRUB_MOD_FINI): - Fix module name. - -2011-11-11 Vladimir Serbinenko - - * grub-core/fs/ntfs.c (grub_ntfs_read_symlink): Stylistic fix. Remove - leftover debug printf. - -2011-11-11 Vladimir Serbinenko - - * grub-core/fs/btrfs.c (grub_btrfs_embed): Spelling fix. - -2011-11-11 Vladimir Serbinenko - - * grub-core/efiemu/main.c (grub_efiemu_register_configuration_table): - A stylistic fix. - -2011-11-11 Vladimir Serbinenko - - * grub-core/commands/probe.c (grub_cmd_probe): Fix error message. - -2011-11-10 Shea Levy - - Allow all modules to perform serial IO - - * grub-core/term-serial.c (grub_serial_find): Remove static qualifier - * include/grub/serial.h (grub_serial_port_configure): New inline - function. - (grub_serial_port_fetch): Likewise. - (grub_serial_port_put): Likewise. - (grub_serial_port_fini): Likewise. - (grub_serial_find): New proto. - -2011-11-10 Vladimir Serbinenko - - Put symlink at the end of the node and fix a potential - memory corruption. - - * grub-core/fs/iso9660.c (grub_fshelp_node): New field have_symlink. - Make symlink into an array. - (set_rockridge): Set have_symlink and alloc_dirents. - (grub_iso9660_read_symlink): Use new layout. - (grub_iso9660_iterate_dir): Fix memory corruption. - Use new layout. - (grub_iso9660_dir): Set have_symlink. - (grub_iso9660_open): Likewise. - -2011-11-10 Vladimir Serbinenko - - Remove local keyword. - - * util/grub-mkconfig_lib.in (version_test_numeric): Remove local. - (version_test_gt): Likewise. - (version_find_latest): Likewise. - (gettext_printf): Likewise. - * util/grub.d/10_windows.in (get_os_name_from_boot_ini): Likewise. - -2011-11-10 Vladimir Serbinenko - - * grub-core/fs/zfs/zfs.c (zfs_mount): Fix spurious warning. - -2011-11-10 Vladimir Serbinenko - - Fix ZFS memory and resource leaks. - - * grub-core/fs/zfs/zfs.c (fill_vdev_info_real): New paramter inserted. - All users updated. - Free type on exit. - (fill_vdev_info): New parameter inserted. All users updated. - (check_pool_label): Likewise. - (scan_disk): Likewise. - (scan_devices): Close non-inserted disks. - (fzap_iterate): Free l. - (unmount_device): Free children descripto memory. - -2011-11-10 Vladimir Serbinenko - - * grub-core/fs/iso9660.c (grub_iso9660_iterate_dir): Fix grub_strncat - argument (access out of bounds). - -2011-11-10 Vladimir Serbinenko - - * grub-core/fs/btrfs.c (grub_btrfs_read_logical): Fix RAID10 logic for - >= 6 drives. - -2011-11-10 Vladimir Serbinenko - - * include/grub/i386/netbsd_bootinfo.h (grub_netbsd_btinfo_bootwedge): - Fix declaration. - -2011-11-09 Vladimir Serbinenko - - Fix several memory leaks. - - * grub-core/fs/btrfs.c (grub_btrfs_dir): Fix memory leak. - * grub-core/fs/cpio.c (grub_cpio_find_file): Likewise. - (grub_cpio_dir): Likewise. - * grub-core/fs/fat.c (grub_fat_label): Likewise. - * grub-core/fs/jfs.c (grub_jfs_label): Likewise. - * grub-core/fs/romfs.c (grub_romfs_close): Likewise. - (grub_romfs_label): Likewise. - * grub-core/fs/squash4.c (squash_mount): Use zalloc for safety. - (squash_unmount): New function. - (grub_squash_dir): Fix memory leak. - (grub_squash_open): Likewise. - (grub_squash_read): Likewise. - (grub_squash_mtime): Likewise. - * grub-core/fs/xfs.c (grub_xfs_open): Likewise. - * grub-core/fs/zfs/zfs.c (check_pool_label): Likewise. - * util/grub-fstest.c (fstest): Likewise. - -2011-11-09 Vladimir Serbinenko - - * include/grub/misc.h (grub_strncat): Fix the order of conditionals to - avoid accessing beyond the array. - -2011-11-09 Vladimir Serbinenko - - * configure.ac: Add missing -mXX to TARGET_CPPFLAGS. - -2011-11-09 Vladimir Serbinenko - - Several AFFS fixes. - - * grub-core/fs/affs.c (grub_affs_bblock): Replace flags with version. - (GRUB_AFFS_FLAG_FFS): Removed. - (GRUB_AFFS_SYMLINK_SIZE): Likewise. - (GRUB_AFFS_FILETYPE_DIR): Make positive and unsigned. - (GRUB_AFFS_FILETYPE_DIR), (GRUB_AFFS_FILETYPE_REG): Fix a mix-up. - (grub_fshelp_node): Make block 32-bit. - Add block_cache and last_block_cache. - (grub_affs_read_block): Fill and use block cache. - (grub_affs_read_file): Removed. - (grub_affs_mount): Zero-fill node. Fix version check. Don't reread - boot block. - (grub_affs_read_symlink): Fix symlink size. Add a \0 at the end for - safety. - (grub_affs_iterate_dir): Use more appropriate types. Zero-fill allocated - space. - (grub_affs_close): Free block cache. - (grub_affs_read): Use grub_fshelp_read_file directly. - -2011-11-08 Vladimir Serbinenko - - * grub-core/fs/zfs/zfs.c (read_dva): Issue an error if read failed - with no error set. - -2011-11-08 Vladimir Serbinenko - - * grub-core/lib/LzmaEnc.c (LzmaEnc_CodeOneBlock): Remove set but not - used variable. - * grub-core/kern/ia64/dl_helper.c (grub_ia64_dl_get_tramp_got_size): - Likewise. - -2011-11-08 Vladimir Serbinenko - - Fix potential problem with calling zfs_to_cpu and cpu_to_be in a row. - - * grub-core/fs/zfs/zfscrypt.c (grub_zfs_decrypt_real): Use explicit - byteswap when needed. - -2011-11-08 Vladimir Serbinenko - - Fix FreeBSD compilation. - - * grub-core/disk/geli.c (GRUB_MD_SHA256) [GRUB_UTIL]: Redefine in a way - to avoid circular dependency. - (GRUB_MD_SHA512) [GRUB_UTIL]: Likewise. - * util/getroot.c (grub_util_follow_gpart_up): Move from here... - * grub-core/kern/emu/hostdisk.c (+grub_util_follow_gpart_up): ... here. - -2011-11-08 Vladimir Serbinenko - - Fix ZFS crypto error types. - - * grub-core/fs/zfs/zfscrypt.c (grub_ccm_decrypt): Fix return type. - (grub_gcm_decrypt): Likewise. - (grub_zfs_load_key_real): Fix error code type. Handle possible error - from PBKDF2. - -2011-11-08 Vladimir Serbinenko - - Illumos support. - - * Makefile.util.def (10_illumos): New script. - * configure.ac: Set COND_HOST_ILLUMOS. - * grub-core/kern/emu/hostdisk.c (grub_util_get_fd_sectors) [__sun__]: - Support Illumos calls. - (find_partition_start) [__sun__]: Likewise. - (convert_system_partition_to_system_disk) [__sun__]: Likewise. - (device_is_wholedisk) [__sun__]: Handle Illumos naming scheme. - (grub_util_biosdisk_get_grub_dev) [__sun__]: Handle Illumos. - * util/getroot.c (find_root_device_from_libzfs) [__sun__]: Return raw - device. - * util/grub-probe.c (probe) [__sun__]: Do character check. - * util/grub.d/10_illumos.in: New file. - -2011-11-08 Vladimir Serbinenko - - Support escaped commas in hostdisk. - - * grub-core/kern/emu/hostdisk.c (unescape_cmp): New function. - (find_grub_drive): Use unescape_cmp. - (make_device_name): Escape commas. - -2011-11-08 Vladimir Serbinenko - - * util/grub.d/10_kfreebsd.in: Use ${grub_mkrelpath} not grub-mkrelpath. - -2011-11-08 Vladimir Serbinenko - - * grub-core/fs/zfs/zfs.c (zap_iterate): Remove set but not used - variable. - -2011-11-08 Vladimir Serbinenko - - Support trampoline jumps on powerpc. - - * grub-core/kern/dl.c (grub_dl_load_segments) [__powerpc__]: Follow - __ia64__ path. - (grub_dl_load_segments): Set mod->sz. - (grub_dl_flush_cache): Flush whole space occupied by module, not just - segments. - * grub-core/kern/ia64/dl.c (nopm): Make const while on it. - (jump): Likewise. - * grub-core/kern/powerpc/dl.c (grub_arch_dl_get_tramp_got_size): New - function. - (trampoline): New struct. - (trampoline_template): New const. - (grub_arch_dl_relocate_symbols): Create trampolines on overflow. - * include/grub/dl.h (grub_dl): Add sz element. - [__powerpc__]: Follow __ia64__. - (GRUB_ARCH_DL_TRAMP_ALIGN): Define on ppc. - (GRUB_ARCH_DL_GOT_ALIGN): Likewise. - (GRUB_ARCH_DL_TRAMP_SIZE): Likewise. - (grub_arch_dl_get_tramp_got_size) [__powerpc__]: New proto. - -2011-11-06 Vladimir Serbinenko - - ZFS crypto support. - - * Makefile.util.def (libgrubmods): Add grub-core/fs/zfs/zfscrypt.c. - * grub-core/Makefile.core.def (zfscrypt): New module. - * grub-core/fs/zfs/zfs.c (subvolume): New structure. - (grub_zfs_data): Replace mdn with subvol. Put case_insensitivity inside - it. All users updated. - (grub_zfs_decrypt): New var. - (grub_zfs_load_key): Likewise. - (zio_checksum_functions): Add SHA256+MAC. - (zio_checksum_verify): Handle incomplete comparison due to MAC. - (zio_read): Handle encrypted blocks. - (zap_verify): Remove incorrect check. - (fzap_iterate): Handle non-standard fzap. - (zap_iterate): Likewise. - (zap_iterate_u64): New function. - (dnode_get_fullpath): Load keys. - * grub-core/fs/zfs/zfscrypt.c: New file. - * grub-core/lib/crypto.c (grub_crypto_cipher_close): Removed. - (grub_crypto_ecb_encrypt): Make input const. - * include/grub/crypto.h (grub_crypto_cipher_close): Inline. - (grub_crypto_ecb_encrypt): Make input const. - (GRUB_CIPHER_AES): New macro. - * include/grub/zfs/dmu.h (dmu_object_type): Add DMU_OT_DSL_KEYCHAIN. - * include/grub/zfs/dsl_dir.h (dsl_dir_phys): Add keychain. - * include/grub/zfs/spa.h (grub_zfs_endian): Moved from here ... - * include/grub/zfs/zfs.h (grub_zfs_endian): ... here. Added GURB_ZFS_ - prefix. All users updated. - (grub_zfs_add_key): New proto. - (grub_zfs_decrypt): Likewise. - (grub_zfs_load_key): Likewise. - * include/grub/zfs/zio.h (zio_checksum): Add SHA256+MAC. - * util/grub-fstest.c (options): Add -K option. - (argp_parser): Likewise. - -2011-11-05 Vladimir Serbinenko - - Support zle compression on ZFS. - - * grub-core/fs/zfs/zfs.c (zle_decompress): New function. - (decomp_table): Add zle. - * include/grub/zfs/zio.h (zio_compress): Add zle. - -2011-11-05 Vladimir Serbinenko - - Support BtrFS embedding. - - * grub-core/fs/btrfs.c (grub_btrfs_embed) [GRUB_UTIL]: New function. - (grub_btrfs_fs) [GRUB_UTIL]: Set embed. - * include/grub/fs.h (grub_fs) [GRUB_UTIL]: New field embed. - * util/grub-setup.c (setup): Use fs embedding if available. - Add additional sanity check. - -2011-11-05 Vladimir Serbinenko - - * util/grub-install.in: Fix condition for config_opt. - -2011-11-04 Vladimir Serbinenko - - Support third redundancy strip on raidz3. - - * grub-core/fs/zfs/zfs.c (recovery): Add Gauss for general case. - Return error on singularity. All users updated. - (read_device): Don't stop on 3rd failure on raidz3. - -2011-11-04 Vladimir Serbinenko - - Support case-insensitive ZFS subvolumes. - - * grub-core/fs/zfs/zfs.c (mzap_lookup): New parameter case_insensitive. - All users updated. - (zap_hash): Likewise. - (name_cmp): New function. - (zap_leaf_array_equal): New parameter case_insensitive. - All users updated. - (zap_leaf_lookup): Likewise. - (fzap_lookup): Likewise. - (zap_lookup): Likewise. - (dnode_get_path): New parameter case_insensitive. Retrieve case - sensitiviness of a volume. All users updated. - (dnode_get_fullpath): New parameter case_insensitive. - All users updated. - (grub_zfs_dir): Set info.case_insensitiveness. - -2011-11-04 Vladimir Serbinenko - - Support second redundancy strip on raidz(2,3). - - * grub-core/fs/zfs/zfs.c (powx): New array. - (powx_inv): Likewise. - (poly): New const. - (xor_out): New function. - (gf_mul): Likewise. - (recovery): Likewise. - (read_device): Use second redundancy strip. - -2011-11-04 Vladimir Serbinenko - - Use a power of generator representation of GF(256) multiplication group - to save space time and complexity. - - * grub-core/disk/raid6_recover.c (raid6_table1): Removed. - (raid6_table2): Likewise. - (powx): New array. - (powx_inv): Likewise. - (poly): New const. - (grub_raid_block_mul): Replace with ... - (grub_raid_block_mulx): ...this. - (grub_raid6_init_table): Rewritten. - (grub_raid6_recover): Use power of generator representation. - -2011-11-04 Vladimir Serbinenko - - * grub-core/disk/raid6_recover.c (grub_raid6_recover): Get start_sector - for the right device. - -2011-11-04 Vladimir Serbinenko - - * include/grub/kernel.h (grub_module_header): Make type into uint32 as - expected by grub-mkimage and it's more clear since there is no implicit - padding. - -2011-11-04 Vladimir Serbinenko - - * grub-core/disk/raid.c (scan_devices): Don't derference NULL on whole - disk. - * grub-core/disk/lvm.c (do_lvm_scan): Likewise. - -2011-11-03 Philipp Matthias Hahn - - * util/grub-mkrescue.in: Fix handling xorriso option. - -2011-11-03 Vladimir Serbinenko - - * grub-core/gettext/gettext.c (grub_gettext_init_ext): Exit if local is - NULL. - -2011-11-03 crocket - - * util/grub.d/10_linux.in: Add Slackware initrd naming. - -2011-11-03 Vladimir Serbinenko - - XZ CRC64 and SHA256 support. - - * Makefile.util.def (libgrubmods): Add crc64.c. - * grub-core/Makefile.core.def (crc64): New module. - * grub-core/lib/crc64.c: New file. - * grub-core/lib/xzembed/xz_dec_stream.c (xz_dec_hash) - [!GRUB_EMBED_DECOMPRESSOR]: Rename crc32_context to hash_context. - Fix the type. - (MAX_HASH_SIZE): New define. - (xz_dec) [!GRUB_EMBED_DECOMPRESSOR]: Add generic hash fields. - (dec_block) [!GRUB_EMBED_DECOMPRESSOR]: Handle non-crc32 hashes. - (index_update) [!GRUB_EMBED_DECOMPRESSOR]: Likewise. - (dec_index) [!GRUB_EMBED_DECOMPRESSOR]: Likewise. - (crc32_validate) [!GRUB_EMBED_DECOMPRESSOR]: Rename to ... - (hash_validate) [!GRUB_EMBED_DECOMPRESSOR]: ... this. - Handle non-crc32 hashes. - (hashes) [!GRUB_EMBED_DECOMPRESSOR]: New variable. - (dec_stream_header): Handle non-crc32 hashes. - (dec_stream_footer): Likewise. - (dec_block_header): Likewise. - (dec_main): Likewise. - (xz_dec_init): Likewise. - (xz_dec_reset): Likewise. - (xz_dec_end): Likewise. - * util/import_gcry.py: Add CRC64 line. - -2011-11-03 Vladimir Serbinenko - - * grub-core/fs/ufs.c (grub_ufs_mtime) [MODE_UFS2]: Check mtime field - as well. - -2011-11-03 Vladimir Serbinenko - - Make reiserfs label retrieval similar to other *_label functions. - - * grub-core/fs/reiserfs.c (grub_reiserfs_superblock): New field label. - (REISERFS_MAX_LABEL_LENGTH): Removed. - (REISERFS_LABEL_OFFSET): Likewise. - (grub_reiserfs_label): Rewritten. - -2011-11-03 Vladimir Serbinenko - - * grub-core/fs/nilfs2.c (grub_nilfs2_mtime): Use correct superblock - field. - -2011-11-03 Vladimir Serbinenko - - * grub-core/fs/zfs/zfs.c (read_device): Support raidz3. - -2011-11-02 Vladimir Serbinenko - - * grub-core/fs/zfs/zfs.c (read_device): Add ability to sustain a single - drive failure on both raidz and raidz2. - -2011-11-02 Vladimir Serbinenko - - Fix RAIDZ(2) for >= 5 devices. - - * grub-core/fs/zfs/zfs.c (read_device): Fix length formula. Remove - asize argument. All users updated. - -2011-11-01 Vladimir Serbinenko - - Fix RAIDZ(2). - - * grub-core/fs/zfs/zfs.c (grub_zfs_device_desc): New member ashift. - (fill_vdev_info_real): Set ashift. - (read_device): Rewrite RAIDZ part based on reverse engineering. - -2011-10-31 Vladimir Serbinenko - - * grub-core/fs/btrfs.c (grub_btrfs_extent_read): Add sanity check and - don't report potentially unavialiable fields in debug output. - (find_path): Fix double-free and memory leak. - -2011-10-31 Vladimir Serbinenko - - Read label on UFS1. - - * grub-core/fs/ufs.c (grub_ufs_label): Remove MODE_UFS2 condition. - (grub_ufs_fs): Always set .label. - -2011-10-31 Vladimir Serbinenko - - Use shifts in UFS. - - * grub-core/fs/ufs.c (UFS_LOG_BLKSZ): New macro. - (grub_ufs_data): New field log2_blksz. - (grub_ufs_read_file): Use shifts. - (grub_ufs_mount): Check block size and logarithm it. - -2011-10-31 Vladimir Serbinenko - - * grub-core/fs/ufs.c (grub_ufs_lookup_symlink): Fix handling of - long symlinks. - -2011-10-30 Vladimir Serbinenko - - Handle symlinks and long names on tar and cpio. - - * grub-core/fs/cpio.c (ATTR_TYPE): New definition. - (ATTR_FILE): Likewise. - (ATTR_DIR): Likewise. - (ATTR_LNK): Likewise. - (grub_cpio_data) [MODE_USTAR]: New fields linkname and linkname_alloc. - (grub_cpio_find_file): Fill mode, handle linkname field as well as - L and K entries. - (grub_cpio_mount): Zero-fill data. - (handle_symlink): New function. - (grub_cpio_dir): Handle symlinks. - (grub_cpio_open): Likewise. - (grub_cpio_close) [MODE_USTAR]: Free linkname. - -2011-10-30 Vladimir Serbinenko - - Fix iso9660 filename limitations and fix memory leaks. - - * grub-core/fs/iso9660.c (set_rockridge): Free sua at the end. - (grub_iso9660_iterate_dir): Fix slash handling in symlinks. - -2011-10-30 Vladimir Serbinenko - - Fix JFS file name length limitations. - - * grub-core/fs/jfs.c (grub_jfs_inode): Fix in-place symlink length. - (grub_jfs_diropen): Fix maximum filename length. - (grub_jfs_getent): Fix filename length. - (grub_jfs_lookup_symlink): Fix size checks. - -2011-10-30 Vladimir Serbinenko - - * grub-core/loader/mips/linux.c (loongson_machtypes): Fix fuloong type - string. - -2011-10-30 Vladimir Serbinenko - - Leverage BFS implementation to read AFS. - - * Makefile.util.def (libgrubmods): Add afs.c. - * grub-core/Makefile.core.def (afs): New module - * grub-core/fs/afs.c: New file. - * grub-core/fs/bfs.c [MODE_AFS]: Adapt for AFS. - -2011-10-30 Vladimir Serbinenko - - * grub-core/fs/bfs.c: Macroify and add some necessary sanity checks. - -2011-10-30 Vladimir Serbinenko - - * grub-core/fs/bfs.c: Run indent. - -2011-10-30 Vladimir Serbinenko - - BFS implementation based on the specification. - - * grub-core/fs/bfs.c: New file. - * Makefile.util.def (libgrubmods): Add bfs.c. - * grub-core/Makefile.core.def (bfs): New module. - -2011-10-30 Vladimir Serbinenko - - * util/grub-fstest.c (cmd_cp): Clarify error message. - (cmd_cmp): Likewise. - -2011-10-30 Yves Blusseau - - * po/POTFILES.in: Regenerate because of the removal of afs, afs_be, befs - and befs_be. - -2011-10-29 Vladimir Serbinenko - - Remove afs and befs because of copyright problem. - - * grub-core/fs/afs.c: Removed. - * grub-core/fs/afs_be.c: Removed. - * grub-core/fs/befs.c: Removed. - * grub-core/fs/befs_be.c: Removed. - * Makefile.util.def (libgrubkern): Remove afs, afs_be, befs and befs_be. - * grub-core/Makefile.core.def (afs): Removed. - (afs_be): Likewise. - (befs): Likewise. - (befs_be): Likewise. - -2011-10-28 Vladimir Serbinenko - - Prefer rockridge over Joliet. - - * grub-core/fs/iso9660.c (grub_iso9660_mount): Move rockridge detection - to ... - (set_rockridge): ... here. - (grub_iso9660_mount): Check rockridge on the primary label when - discovering. Ignore Joliet if Rockridge is present. - -2011-10-28 Vladimir Serbinenko - - Use shifts in nilfs2. - - * grub-core/fs/nilfs2.c (LOG_INODE_SIZE): New definition. - (LOG_NILFS_DAT_ENTRY_SIZE): Likewise. - (grub_nilfs2_palloc_entries_per_group): Replace with ... - (grub_nilfs2_log_palloc_entries_per_group): ... this. - (grub_nilfs2_palloc_group): Use shifts and bitmasks. - (grub_nilfs2_entries_per_block): Replaced with ... - (grub_nilfs2_log_entries_per_block_log): ... this. - (grub_nilfs2_blocks_per_group): Replaced with ... - (grub_nilfs2_blocks_per_group_log): ... this. - (grub_nilfs2_blocks_per_desc_block): Replaced with ... - (grub_nilfs2_blocks_per_desc_block_log): ... this. - (grub_nilfs2_palloc_desc_block_offset): Replaced with ... - (grub_nilfs2_palloc_desc_block_offset_log): ... this. - (grub_nilfs2_palloc_entry_offset): Replaced ... - (grub_nilfs2_palloc_entry_offset_log): ... this. Use shifts. - (grub_nilfs2_dat_translate): Use shifts. - (grub_nilfs2_read_inode): Likewise. - (GRUB_MOD_INIT): Ensure that logs are correct. - -2011-10-28 Vladimir Serbinenko - - Use shifts in minix filesystem. - - * grub-core/fs/minix.c (GRUB_MINIX_ZONESZ): Use log_block_size. - (GRUB_MINIX_ZONE2SECT): Likewise. - (grub_minix_data): Replace block_size with log_block_size. - (grub_minix_read_file): Use shifts. - (grub_minix_mount): Check block size and take a logarithm. - -2011-10-28 Vladimir Serbinenko - - Use shifts in squash4. - - * grub-core/fs/squash4.c (grub_squash_data): New field log2_blksz. - (squash_mount): Check block size and take logarithm. - (direct_read): Use shifts. - -2011-10-28 Vladimir Serbinenko - - Correct befs block counting logic. - - * grub-core/fs/afs.c (GRUB_AFS_BLOCKS_PER_DI_RUN): Replaced with... - (GRUB_AFS_LOG_BLOCKS_PER_DI_RUN): ... this. - (GRUB_AFS_BLOCKRUN_LOG_SIZE): New definition. - (grub_afs_read_inode): Use block_shift. - (RANGE_SHIFT): New definition. - (grub_afs_read_block): Account for RANGE_SHIFT, emit errors on - unexpected conditions, use shifts and appropriate types. - (GRUB_MOD_INIT): Check the value of GRUB_AFS_BLOCKRUN_LOG_SIZE. - -2011-10-28 Vladimir Serbinenko - - * grub-core/disk/raid.c (scan_devices): Check partition. - * grub-core/disk/lvm.c (do_lvm_scan): Likewise. - -2011-10-27 Vladimir Serbinenko - - Support BFS (befs) UUID. - - * grub-core/fs/afs.c (grub_afs_inode): Make small_data zero-size. - (grub_afs_small_data_element_header): New struct. - (grub_afs_read_inode): Read complete inode. Fix ino type while on it. - (grub_afs_read_attribute) [MODE_BFS]: New function. - (grub_afs_iterate_dir): Allocate for complete inode. - (grub_afs_mount): Likewise. - (grub_afs_uuid) [MODE_BFS]: New function. - (grub_afs_fs) [MODE_BFS]: Add .uuid. - -2011-10-27 Vladimir Serbinenko - - * grub-core/fs/zfs/zfs.c (read_device): Silence spurious warning. - (zfs_unmount): Fix memory leak. - -2011-10-26 Vladimir Serbinenko - - Support NTFS reparse points. - - * grub-core/fs/ntfs.c (list_file): Set symlink type when appropriate. - (symlink_descriptor): New struct. - (grub_ntfs_read_symlink): New function. - (grub_ntfs_iterate_dir): Use grub_ntfs_read_symlink. - (grub_ntfs_open): Likewise. - -2011-10-26 Vladimir Serbinenko - - * include/grub/ntfs.h: Add GRUB_NTFS_ prefix. All users updated. - -2011-10-26 Vladimir Serbinenko - - fstest xnu_uuid subcommand. - - * grub-core/commands/xnu_uuid.c (libgrubkrn): Add - grub-core/commands/xnu_uuid.c. - * util/grub-fstest.c (CMD_XNU_UUID): New enum value. - (fstest): Handle xnu_uuid. - (options): Document xnu_uuid. - (argp_parser): Parse xnu_uuid. - -2011-10-26 Vladimir Serbinenko - - * grub-core/commands/xnu_uuid.c (grub_cmd_xnu_uuid): Support - -l argument. Add newline at the end if printing. - (GRUB_MOD_INIT): Document -l. - -2011-10-26 Vladimir Serbinenko - - * grub-core/fs/nilfs2.c (grub_nilfs2_uuid): Add missing field length. - -2011-10-26 Vladimir Serbinenko - - ZFS multi-device and version 33 support. - - * Makefile.util.def (libgrubkern): Add grub-core/fs/zfs/zfsinfo.c. - * grub-core/fs/zfs/zfs.c (grub_zfs_device_desc): New struct. - (grub_zfs_data): Add multidev-ice-related fields. - (zio_checksum_verify): Zero-pad printed values. Print checksum name. - (dva_get_offset): Make dva const. - (zfs_fetch_nvlist): New function. - (fill_vdev_info_real): Likewise. - (fill_vdev_info): Likewise. - (check_pool_label): Likewise. - (scan_disk): Likewise. - (scan_devices): Likewise. - (read_device): Likewise. - (read_dva): Likewise. - (zio_read_gang): Use read_dva. - (zio_read_data): Likewise. - (zap_leaf_lookup): Add missing endian conversion. - (zap_verify): Add missing endian conversion. All users updated. - (fzap_lookup): Likewise. - (fzap_iterate): Likewise. - (dnode_get_path): Handle SA bonus. - (nvlist_find_value): Make input const. All users updated. - (unmount_device): New function. - (zfs_unmount): Use unmount_device. - (zfs_mount): Use scan_disk. - (zfs_mtime): New function. - (grub_zfs_open): Handle system attributes. - (fill_fs_info): Likewise. - (grub_zfs_dir): Likewise. - (grub_zfs_fs): Add mtime. - * grub-core/fs/zfs/zfsinfo.c (print_vdev_info): Add missing return. - * include/grub/zfs/sa_impl.h (SA_TYPE_OFFSET): New definition. - (SA_MTIME_OFFSET): Likewise. - (SA_SYMLINK_OFFSET): Likewise. - * include/grub/zfs/zfs.h (SPA_VERSION): Increase to 33. - * util/grub-fstest.c (CMD_ZFSINFO): New enum value. - (fstest): Support zfsinfo. - (argp_parser): Likewise. - -2011-10-26 Vladimir Serbinenko - - * include/grub/datetime.h (grub_datetime2unixtime): Fix off-by-one - error. - -2011-10-26 Vladimir Serbinenko - - ZFS fixes. - - * grub-core/fs/zfs/zfs.c (fzap_iterate): Fix handling of indexes - sharing the same block. Iterate over correct number of indices. - (dnode_get_path): Handle symlinks correctly. - -2011-10-25 Vladimir Serbinenko - - * grub-core/fs/jfs.c (grub_jfs_sblock): Fix offset to volname. - -2011-10-25 Vladimir Serbinenko - - Read label on HFS+. - - * grub-core/fs/hfsplus.c (grub_hfsplus_cmp_catkey_id): New function. - (grub_hfsplus_btree_search): Fix types. - (grub_hfsplus_label): Implement. - -2011-10-25 Vladimir Serbinenko - - * grub-core/fs/ntfs.c (grub_ntfs_uuid): Fix a memory leak. - -2011-10-25 Vladimir Serbinenko - - * grub-core/fs/fat.c (grub_fat_uuid): Make uppercase to match Linux. - -2011-10-25 Vladimir Serbinenko - - Fix symlink handling on iso9660. - - * grub-core/fs/iso9660.c (grub_fshelp_node): Remove dir_off. Add symlink - All users updated. - (grub_iso9660_susp_iterate): Accept zero-size iterate. - (grub_iso9660_read_symlink): Moved most of code ... - (grub_iso9660_iterate_dir): ... here. Fill node->symlink. - -2011-10-25 Vladimir Serbinenko - - * grub-core/loader/i386/bsd.c (grub_netbsd_add_boot_disk_and_wedge): - Use union to avoid breaking strict-aliasing rules. - -2011-10-25 Vladimir Serbinenko - - Support multi-extent iso files. - - * grub-core/fs/iso9660.c (grub_iso9660_data): Remove first_sector. - Add node. - (grub_fshelp_node): Revamp. All users updated. - (FLAG_*): New enum. - (read_node): New function. - (grub_iso9660_susp_iterate): Use read_node. Receive a node as argument. - All users updated. - (grub_iso9660_mount): Don't attempt to read sua when there is none. - (get_node_size): New function. - (grub_iso9660_iterate_dir): Use read_node. Agglomerate multi-extent - entries. - Fix memory leak on . and .. - (grub_iso9660_read): Use read_node. - (grub_iso9660_close): Free node. - -2011-10-25 Vladimir Serbinenko - - Fix tar 4G limit and handle paths containing dot. - - * grub-core/fs/cpio.c (grub_cpio_data): Use grub_off_t for offsets. - (canonicalize): New function. - (grub_cpio_find_file): Use canonicalize. Store offs in - grub_disk_addr_t. - (grub_cpio_dir): Use grub_disk_addr_t. - (grub_cpio_open): Likewise. - -2011-10-25 Vladimir Serbinenko - - Fix handling of uncompressed blocks on squashfs and break 4G limit. - - * grub-core/fs/squash4.c (grub_squash_super): Add block_size. Remove - unused flags. - (grub_squash_inode): Add long_file and block_size. - (grub_squash_cache_inode): New struct. - (grub_squash_dirent): Make types into enum. - (SQUASH_TYPE_LONG_REGULAR): New type. - (grub_squash_frag_desc): Add field size. - (SQUASH_BLOCK_FLAGS): New enum. - (grub_squash_data): Use grub_squash_cache_inode. - (grub_fshelp_node): Make ino_chunk 64-bit. - (read_chunk): Minor argument change. All users updated. - (squash_mount): Use correct le_to_cpu. - (grub_squash_open): Handle LONG_REGULAR. - (direct_read): New function. - (grub_squash_read_data): Handle blocks correctly. - -2011-10-25 Vladimir Serbinenko - - * grub-core/kern/disk.c (grub_disk_read_small): Fix memory leak. - -2011-10-25 Vladimir Serbinenko - - * grub-core/fs/romfs.c (grub_romfs_open): Add missing return. - -2011-10-24 Vladimir Serbinenko - - Fix 2G limit on ZFS. - - * grub-core/fs/zfs/zfs.c (zio_checksum_verify): Use more appropriate - types. - (uberblock_verify): Likewise. - (dmu_read): Likewise. - (grub_zfs_read): Likewise. Remove invalid cast. - -2011-10-24 Vladimir Serbinenko - - * grub-core/fs/jfs.c (grub_jfs_blkno): Use more appropriate types. - (grub_jfs_blkno): Fix incorrect shift. - (grub_jfs_read_file): Use more appropriate types. - -2011-10-24 Vladimir Serbinenko - - Support triple indirect on minix2 and minix3. - - * grub-core/fs/minix.c (grub_minix_inode) [MODE_MINIX2 || MODE_MINIX3]: - Declare triple_indir_zone. - (grub_minix_get_file_block) [MODE_MINIX2 || MODE_MINIX3]: Handle triple - indirect. - -2011-10-24 Vladimir Serbinenko - - Minix FS fixes. - - * grub-core/fs/minix.c (GRUB_MINIX_INODE_SIZE): Size is always 32-bit. - (grub_minix_inode) [!MODE_MINIX2 && !MODE_MINIX3]: Make size 32-bit. - Rename ctime to mtime. All users updated. - (grub_minix_get_file_block): Fix types and double indirect computations. - -2011-10-23 Vladimir Serbinenko - - * grub-core/fs/fat.c (grub_fat_label) [MODE_EXFAT]: Set *label to 0 - if no label is found. - (grub_fat_iterate_dir): Fix file size type. - (grub_fat_iterate_dir): Likewise. - -2011-10-23 Vladimir Serbinenko - - * grub-core/lib/reed_solomon.c (gf_invert): Declare as const and - save some space. - * include/grub/offsets.h (GRUB_KERNEL_I386_PC_RAW_SIZE): Decrease. - (GRUB_KERNEL_I386_PC_NO_REED_SOLOMON_PART): Likewise. - -2011-10-23 Vladimir Serbinenko - - * util/import_gcry.py: Automatically fix camellia.c and camellia.h. - -2011-10-23 Vladimir Serbinenko - - * util/import_gcry.py: Accept space between # and include. - -2011-10-23 Vladimir Serbinenko - - * grub-core/lib/setjmp.S [__ia64__]: Include ./ia64/longjmp.S. - -2011-10-23 Vladimir Serbinenko - - Fine grainely disable warnings on lexer. Remove Wno-error on it. - - * grub-core/Makefile.core.def (normal): Remove -Wno-error. - * grub-core/script/lexer.c: Declare yytext_ptr to avoid having - yylex_strncpy. - * grub-core/script/yylex.l: Add fine-grained #pragma. - -2011-10-23 Vladimir Serbinenko - - * grub-core/lib/posix_wrap/string.h (memcpy) [GRUB_UTIL]: - New inline function. - * grub-core/lib/libgcrypt_wrap/cipher_wrap.h (memcpy) [GRUB_UTIL]: - Likewise. - (memset) [GRUB_UTIL]: Likewise. - (memcmp) [GRUB_UTIL]: Likewise. - -2011-10-23 Vladimir Serbinenko - - * include/grub/misc.h (grub_memcpy): Declare grub_memcpy with static - inline function rather than a define. - -2011-10-23 Vladimir Serbinenko - - * util/grub-setup.c: Add missing include. - -2011-10-23 Vladimir Serbinenko - - * util/ieee1275/grub-ofpathname.c: Add missing include. - -2011-10-23 Vladimir Serbinenko - - * grub-core/kern/i386/pc/startup.S (grub_exit): Add missing zeroing-out. - * grub-core/lib/i386/reboot_trampoline.S (grub_reboot_start): - Likewise. - -2011-10-23 Vladimir Serbinenko - - * grub-core/io/lzopio.c (test_header): Fix incorrect memcmp instead of - grub_memcmp usage. - -2011-10-23 Vladimir Serbinenko - - * util/grub-install.in: Add datarootdir as per automake manual - suggestion. - * util/grub-mknetdir.in: Likewise. - -2011-10-23 Vladimir Serbinenko - - * util/grub.d/10_hurd.in: Add datarootdir as per automake manual - suggestion. - * util/grub.d/10_kfreebsd.in: Likewise. - * util/grub.d/10_linux.in: Likewise. - * util/grub.d/10_netbsd.in: Likewise. - * util/grub.d/10_windows.in: Likewise. - * util/grub.d/20_linux_xen.in: Likewise. - -2011-10-20 Vladimir Serbinenko - - Remove redundant grub_kernel_image_size. - - * grub-core/kern/i386/coreboot/init.c (grub_machine_init): Use - _edata and _start. - * grub-core/kern/i386/coreboot/startup.S: Move multiboot header after - the small code. It moves it only by few bytes but simplifies the code. - * grub-core/kern/i386/pc/init.c (grub_machine_init): Use _edata and - _start. - * grub-core/kern/i386/pc/startup.S: Use _edata and _start. - (grub_kernel_image_size): Removed. - * grub-core/kern/i386/qemu/startup.S: Use _edata and _start. - (grub_kernel_image_size): Removed. - [APPLE_CC]: Remove apple compiler support. i386-qemu port can't be - compiled with Apple toolchain. - * grub-core/kern/sparc64/ieee1275/crt0.S: Remove leftover fields. - * include/grub/i386/pc/kernel.h (grub_kernel_image_size): Removed. - * include/grub/i386/qemu/kernel.h (grub_kernel_image_size): Removed. - (grub_total_module_size): Likewise. - * include/grub/offsets.h (GRUB_KERNEL_I386_PC_KERNEL_IMAGE_SIZE): - Removed. - (GRUB_KERNEL_I386_PC_COMPRESSED_SIZE): Put it lower. - (GRUB_KERNEL_I386_PC_INSTALL_DOS_PART): Likewise. - (GRUB_KERNEL_I386_PC_INSTALL_BSD_PART): Likewise. - (GRUB_KERNEL_I386_PC_REED_SOLOMON_REDUNDANCY): Likewise. - (GRUB_KERNEL_I386_QEMU_KERNEL_IMAGE_SIZE): Removed. - (GRUB_KERNEL_SPARC64_IEEE1275_KERNEL_IMAGE_SIZE): Likewise. - (GRUB_KERNEL_SPARC64_IEEE1275_COMPRESSED_SIZE): Likewise. - * include/grub/sparc64/ieee1275/kernel.h (grub_kernel_image_size): - Removed. - (grub_total_module_size): Removed. - * util/grub-mkimage.c (image_target_desc): Remove image_size. - (image_targets): Likewise. - Set .compressed_size to no field on sparc. - (generate_image): Remove kernel_image_size handling. - -2011-10-19 Szymon Janc - - * grub-core/bus/usb/uhci.c (grub_uhci_setup_transfer): Fix possible - NULL pointer dereference. - -2011-10-19 Vladimir Serbinenko - - Removed unused GRUB_BOOT_VERSION. Check for kernel version is better - done with a dedicated section. - - * grub-core/boot/sparc64/ieee1275/boot.S: Remove GRUB_BOOT_VERSION. - Ensure the correct position of boot_path. - * grub-core/kern/i386/efi/startup.S: Remove GRUB_BOOT_VERSION. - * grub-core/kern/i386/pc/startup.S: Likewise. Ensure correct position of - other fields. - * grub-core/kern/x86_64/efi/startup.S: Remove GRUB_BOOT_VERSION. - * include/grub/boot.h: Removed. All references removed. - * include/grub/sparc64/ieee1275/boot.h (GRUB_BOOT_MACHINE_VER_MAJ): - Removed. - (GRUB_BOOT_MACHINE_BOOT_DEVPATH): Make it lower. - -2011-10-19 Vladimir Serbinenko - - * util/grub-install.in: Declare IEEE1275 as able to find out the disk - name. - -2011-10-19 Vladimir Serbinenko - - * grub-core/kern/main.c (grub_set_prefix_and_root): Init prefix. - -2011-10-19 Vladimir Serbinenko - - * grub-core/kern/ieee1275/openfw.c (grub_ieee1275_encode_devname): - Don't add the bogus brackets. - -2011-10-19 Vladimir Serbinenko - - ExFAT support. - - * Makefile.util.def (libgrubmods.a): Add grub-core/fs/exfat.c. - * grub-core/Makefile.core.def (exfat): New module. - * grub-core/fs/exfat.c: New file. - * grub-core/fs/fat.c (GRUB_FAT_DIR_ENTRY_SIZE): Removed. - (GRUB_FAT_ATTR_*): Make into an enum. - (GRUB_FAT_ATTR_LONG_NAME) [MODE_EXFAT]: Removed. - (GRUB_FAT_ATTR_VALID) [MODE_EXFAT]: Remove GRUB_FAT_ATTR_VOLUME_ID. - (GRUB_FAT_ATTR_VOLUME_ID) [MODE_EXFAT]: Removed. - (GRUB_FAT_MAXFILE): Removed. - (grub_exfat_bpb) [MODE_EXFAT]: New struct. - (grub_current_fat_bpb_t): New type. - (grub_fat_dir_entry) [MODE_EXFAT]: New struct. - (grub_fat_dir_node) [MODE_EXFAT]: New struct. - (grub_fat_dir_node_t): New type. - (grub_fat_data) [MODE_EXFAT]: Remove root_sector and num_root_sectors. - (fat_log2) [MODE_EXFAT]: Removed. - (grub_fat_mount): Use grub_current_fat_bpb_t. Add some sanity checks. - (grub_fat_mount) [MODE_EXFAT]: Handle ExFAT. - (grub_fat_iterate_dir) [MODE_EXFAT]: New function. - (grub_fat_find_dir) [MODE_EXFAT]: Handle ExFAT. - (grub_fat_label) [MODE_EXFAT]: New function. - (grub_fat_fs) [MODE_EXFAT]: Set name to "exfat" and - reserved_first_sector to 0. - -2011-10-19 Vladimir Serbinenko - - Move grub_reboot out of the kernel. - - * grub-core/Makefile.core.def (reboot): Add platform-specific files. - * grub-core/kern/efi/efi.c (grub_reboot): Moved to ... - * grub-core/lib/efi/reboot.c: ... here. - * grub-core/kern/i386/efi/startup.S: Remove including of realmode.S. - * grub-core/kern/i386/ieee1275/startup.S: Likewise. - * grub-core/kern/i386/pc/startup.S (grub_exit): Inline cold_reboot. - * grub-core/kern/i386/realmode.S (grub_reboot): Moved to... - * grub-core/lib/i386/reboot_trampoline.S: ... here. - * grub-core/kern/ieee1275/openfw.c (grub_reboot): Moved to... - * grub-core/lib/ieee1275/reboot.c: ... here. - * grub-core/kern/mips/arc/init.c (grub_reboot): Moved to... - * grub-core/lib/mips/arc/reboot.c: ... here. - * grub-core/kern/mips/loongson/init.c (grub_reboot): Moved to... - * grub-core/lib/mips/loongson/reboot.c: ...here. - * grub-core/kern/mips/qemu_mips/init.c (grub_reboot): Moved to... - * grub-core/lib/mips/qemu_mips/reboot.c: ... here. - * include/grub/emu/misc.h (grub_reboot): New function declaration. - * include/grub/i386/reboot.h: New file. - * include/grub/mips/loongson/ec.h: Fix includes. - * include/grub/mips/qemu_mips/kernel.h (grub_reboot): Removed. - * include/grub/misc.h (grub_reboot): Don't mark as kernel function. - * grub-core/lib/i386/reboot.c: New file. - -2011-10-18 Vladimir Serbinenko - - Make grub_prefix into module to fix the arbitrary limit and save - some space. - - * grub-core/kern/emu/main.c (grub_prefix): Removed. - * grub-core/kern/i386/coreboot/startup.S (grub_prefix): Likewise. - * grub-core/kern/i386/efi/startup.S (grub_prefix): Likewise. - * grub-core/kern/i386/ieee1275/startup.S (grub_prefix): Likewise. - * grub-core/kern/i386/pc/startup.S (grub_prefix): Likewise. - * grub-core/kern/i386/qemu/startup.S (grub_prefix): Likewise. - * grub-core/kern/ia64/efi/startup.S (grub_prefix): Likewise. - * grub-core/kern/mips/startup.S (grub_prefix): Likewise. - * grub-core/kern/powerpc/ieee1275/startup.S (grub_prefix): Likewise. - * grub-core/kern/sparc64/ieee1275/crt0.S (grub_prefix): Likewise. - * grub-core/kern/x86_64/efi/startup.S (grub_prefix): Likewise. - * include/grub/ia64/efi/kernel.h: Removed. - * include/grub/kernel.h: New module type OBJ_TYPE_PREFIX. - (grub_prefix): Removed. - * include/grub/offsets.h (GRUB_KERNEL_I386_PC_PREFIX): Removed. - (GRUB_KERNEL_I386_PC_PREFIX_END): Likewise. - (GRUB_KERNEL_I386_QEMU_PREFIX): Likewise. - (GRUB_KERNEL_I386_QEMU_PREFIX_END): Likewise. - (GRUB_KERNEL_SPARC64_IEEE1275_PREFIX): Likewise. - (GRUB_KERNEL_SPARC64_IEEE1275_PREFIX_END): Likewise. - (GRUB_KERNEL_POWERPC_IEEE1275_PREFIX): Likewise. - (GRUB_KERNEL_POWERPC_IEEE1275_PREFIX_END): Likewise. - (GRUB_KERNEL_MIPS_LOONGSON_PREFIX): Likewise. - (GRUB_KERNEL_MIPS_LOONGSON_PREFIX_END): Likewise. - (GRUB_KERNEL_MIPS_QEMU_MIPS_PREFIX): Likewise. - (GRUB_KERNEL_MIPS_QEMU_MIPS_PREFIX_END): Likewise. - (GRUB_KERNEL_MIPS_ARC_PREFIX): Likewise. - (GRUB_KERNEL_MIPS_ARC_PREFIX_END): Likewise. - (GRUB_KERNEL_I386_EFI_PREFIX): Likewise. - (GRUB_KERNEL_I386_EFI_PREFIX_END): Likewise. - (GRUB_KERNEL_IA64_EFI_PREFIX): Likewise. - (GRUB_KERNEL_IA64_EFI_PREFIX_END): Likewise. - (GRUB_KERNEL_X86_64_EFI_PREFIX): Likewise. - (GRUB_KERNEL_X86_64_EFI_PREFIX_END): Likewise. - (GRUB_KERNEL_I386_COREBOOT_PREFIX): Likewise. - (GRUB_KERNEL_I386_COREBOOT_PREFIX_END): Likewise. - (GRUB_KERNEL_I386_MULTIBOOT_PREFIX): Likewise. - (GRUB_KERNEL_I386_MULTIBOOT_PREFIX_END): Likewise. - (GRUB_KERNEL_I386_IEEE1275_PREFIX): Likewise. - (GRUB_KERNEL_I386_IEEE1275_PREFIX_END): Likewise. - (GRUB_KERNEL_MACHINE_PREFIX): Likewise. - (GRUB_KERNEL_MACHINE_PREFIX_END): Likewise. - * grub-core/kern/main.c (grub_set_prefix_and_root): Retrieve grub_prefix - from module. - * util/grub-mkimage.c (image_target_desc): Removed prefix and - prefix_end. - (image_targets): Likewise. - (generate_image): Put prefix as a module. - -2011-10-16 Vladimir Serbinenko - - Replace grub_module_iterate with FOR_MODULES. - - * grub-core/disk/memdisk.c (GRUB_MOD_INIT): Switched to new interface. - * grub-core/kern/efi/efi.c (grub_arch_modules_addr): Renamed to... - (grub_efi_modules_addr): ...this. - * grub-core/kern/efi/init.c (grub_modbase): New variable. - (grub_efi_init): Set grub_modbase. - * grub-core/kern/emu/main.c (grub_arch_modules_addr): Removed. - (grub_modbase): New variable. - * grub-core/kern/i386/coreboot/init.c (grub_arch_modules_addr): Removed. - (grub_modbase): New variable. - (grub_machine_init): Set grub_modbase. - * grub-core/kern/i386/pc/init.c (grub_arch_modules_addr): Removed. - (grub_modbase): New variable. - (grub_machine_init): Set grub_modbase. - * grub-core/kern/ieee1275/init.c (grub_arch_modules_addr): Removed. - (grub_modbase): New variable. - (grub_machine_init): Set grub_modbase. - * grub-core/kern/main.c (grub_module_iterate): Remove. - (grub_modules_get_end): Use grub_modbase. - (grub_load_modules): Use FOR_MODULES. - (grub_load_config): Likewise. - * grub-core/kern/mips/arc/init.c (grub_arch_modules_addr): Removed. - (grub_modbase): New variable. - (grub_machine_init): Set grub_modbase. - * grub-core/kern/mips/loongson/init.c (grub_arch_modules_addr): Removed. - (grub_modbase): New variable. - (grub_machine_init): Set grub_modbase. - * grub-core/kern/mips/qemu_mips/init.c (grub_arch_modules_addr): - Removed. - (grub_modbase): New variable. - (grub_machine_init): Set grub_modbase. - * include/grub/efi/efi.h (grub_efi_modules_addr): New declaration. - * include/grub/kernel.h (grub_arch_modules_addr): Removed. - (grub_module_iterate): Likewise. - (grub_modbase): New variable declaration. - (FOR_MODULES): New macro. - -2011-10-16 Vladimir Serbinenko - - * configure.ac: Check for __ctzdi2 and __ctzsi2. - * include/grub/libgcc.h: Include __ctzdi2 and __ctzsi2 if present. - -2011-10-16 Vladimir Serbinenko - - Fix few obvious type discrepancies. - - * grub-core/fs/affs.c (grub_affs_read_file): Use grub_off_t for offset. - * grub-core/fs/afs.c (grub_afs_read_file): Likewise. - * grub-core/fs/fshelp.c (grub_fshelp_find_file): Remove leftover - variable. - * grub-core/fs/hfs.c (grub_hfs_read_file): Use grub_off_t for offset - and connected types. - * grub-core/fs/nilfs2.c (grub_nilfs2_read_file): Use grub_off_t for - offset. - (grub_nilfs2_iterate_dir): Use grub_off_t for fpos. - * grub-core/fs/sfs.c (grub_sfs_read_file): Use grub_off_t for offset. - * grub-core/fs/ufs.c (grub_ufs_read_file): Use grub_off_t for offset - and connected types. - -2011-10-16 Vladimir Serbinenko - - Fix python 3.x incompatibilities. - - * gentpl.py: Put brackets around print strings. - * util/import_gcry.py: Open explicitly as utf-8. - Use in instead of has_key. - -2011-10-16 Vladimir Serbinenko - - * grub-core/fs/xfs.c (grub_xfs_inode): New field fork_offset. - (GRUB_XFS_INO_AGBITS): Make into inline function. - (GRUB_XFS_INO_INOINAG): Likewise. - (GRUB_XFS_INO_AG): Likewise. - (GRUB_XFS_FSB_TO_BLOCK): Likewise. - (GRUB_XFS_EXTENT_OFFSET): Likewise. - (GRUB_XFS_EXTENT_BLOCK): Likewise. - (GRUB_XFS_EXTENT_SIZE): Likewise. - (GRUB_XFS_ROUND_TO_DIRENT): Likewise. - (GRUB_XFS_NEXT_DIRENT): Likewise. - (grub_xfs_read_block): Rewrite the btree parsing. Fixes invalid BMAP. - (grub_xfs_read_file): Fix offset type. - -2011-10-15 Robert Millan - - * util/getroot.c (grub_util_get_grub_dev): Fix OS selection #ifdefs. - -2011-10-15 Robert Millan - - Fix build problem on FreeBSD and GNU/kFreeBSD. - - * util/getroot.c [__FreeBSD_kernel__]: Include `'. - -2011-10-14 Vladimir Serbinenko - - Fix overflow with >2GiB file on HFS+. >4GiB wasn't tested. - - * grub-core/fs/hfsplus.c (grub_hfsplus_btree): Use more appropriate - types. - (grub_hfsplus_btree_recoffset): Likewise. - (grub_hfsplus_btree_recptr): Likewise. - (grub_hfsplus_find_block): Likewise. - (grub_hfsplus_btree_search): Likewise. - (grub_hfsplus_read_block): Likewise. - (grub_hfsplus_read_file): Likewise. - (grub_hfsplus_mount): Likewise. - (grub_hfsplus_btree_iterate_node): Likewise. - (grub_hfsplus_btree_search): Likewise. - (grub_hfsplus_iterate_dir): Likewise. - (grub_hfsplus_read): A small code simplification. - -2011-10-14 Vladimir Serbinenko - - * grub-core/kern/emu/hostdisk.c - (convert_system_partition_to_system_disk): Don't assume that children - of mapper nodes are mapper nodes. - -2011-10-14 Vladimir Serbinenko - - * grub-core/lib/posix_wrap/ctype.h (isxdigit): Use grub_isxdigit. - * include/grub/misc.h (grub_isxdigit): New function. - * grub-core/video/colors.c (my_isxdigit): Removed. All users - switched to grub_isxdigit. - * grub-core/term/serial.c (grub_serial_find): Fix in case of port - number starting with a letter. - -2011-10-09 Robert Millan - - LVM support for FreeBSD and GNU/kFreeBSD. - - * util/lvm.c (grub_util_lvm_isvolume): Enable on FreeBSD and - GNU/kFreeBSD. - (LVM_DEV_MAPPER_STRING): Move from here ... - * include/grub/util/lvm.h (LVM_DEV_MAPPER_STRING): ... to here. - * util/getroot.c: Include `'. - (grub_util_get_dev_abstraction): Enable - grub_util_biosdisk_is_present() on FreeBSD and GNU/kFreeBSD. - Check for LVM abstraction on FreeBSD and GNU/kFreeBSD. - (grub_util_get_grub_dev): Replace "/dev/mapper/" with - `LVM_DEV_MAPPER_STRING'. Enable LVM and mdRAID only on platforms that - support it. - * util/grub-setup.c (main): Check for LVM also on FreeBSD and - GNU/kFreeBSD. - * util/grub.d/10_kfreebsd.in: Load `geom_linux_lvm' kernel module - when LVM abstraction is required for ${GRUB_DEVICE}. - -2011-10-06 Szymon Janc - - Add support for LZO compression in GRUB: - - import of minilzo library, - - LZO decompression for btrfs, - - lzop files decompression. - - * grub-core/io/lzopio.c: New file. - * grub-core/lib/adler32.c: Likewise. - * grub-core/lib/minilzo/lzoconf.h: Likewise. - * grub-core/lib/minilzo/lzodefs.h: Likewise. - * grub-core/lib/minilzo/minilzo.c: Likewise. - * grub-core/lib/minilzo/minilzo.h: Likewise. - * Makefile.util.def (libgrubmods.a): Add grub-core/io/lzopio.c, - grub-core/lib/adler32.c, grub-core/io/lzopio.c, - grub-core/lib/minilzo/minilzo.c to common. - * Makefile.util.def (libgrubmods.a): Add flags required by minilzo to - cflags in cppflags. - * grub-core/Makefile.core.def (btrfs): Likewise. - * grub-core/Makefile.core.def (lzopio): New module. - (adler32): Likewise. - * grub-core/fs/btrfs.c: Include minilzo.h. - (GRUB_BTRFS_COMPRESSION_LZO): New define. - (GRUB_BTRFS_LZO_BLOCK_SIZE): Likewise. - (GRUB_BTRFS_LZO_BLOCK_MAX_CSIZE): Likewise. - (grub_btrfs_lzo_decompress): New function. - (grub_btrfs_extent_read): Add support for LZO compression type. - * include/grub/types.h (GRUB_UCHAR_MAX): New define. - (GRUB_USHRT_MAX): Likewise. - (GRUB_UINT_MAX): Likewise. - * grub-core/lib/posix_wrap/limits.h (USHRT_MAX): Likewise. - (UINT_MAX): Likewise. - (CHAR_BIT): Likewise. - * grub-core/lib/posix_wrap/sys/types.h (ULONG_MAX): Moved to - grub-core/lib/posix_wrap/limits.h - (UCHAR_MAX): Likewise. - * include/grub/file.h (grub_file_filter_id): New compression filter - GRUB_FILE_FILTER_LZOPIO. - * include/grub/file.h (grub_file_filter_id): Set - GRUB_FILE_FILTER_LZOPIO as GRUB_FILE_FILTER_COMPRESSION_LAST. - * include/grub/types.h (grub_get_unaligned16): New function. - (grub_get_unaligned32): Likewise. - (grub_get_unaligned64): Likewise. - * util/import_gcry.py (cryptolist): Add adler32. - -2011-10-05 Vladimir Serbinenko - - * grub-core/Makefile.core.def: Eliminate rarely used emu_condition. This - in perspective decreases the complexity of build system and fixes - compilation right now. - -2011-10-01 Ales Nesrsta - - * grub-core/bus/usb/uhci.c: Changes made by Rock Cui - thanks! - (fixed problem related to using UHCI with coreboot). - -2011-08-25 BVK Chaitanya - - * gentpl.py: Use Autogen macros so that the output template file - (Makefile.tpl) size is reduced. - -2011-09-29 Mads Kiilerich - - * grub-core/Makefile.core.def (kernel): Add kern/i386/int.S to - extra_dist. - -2011-09-29 Mario Limonciello - - * util/misc.c (grub_util_get_disk_size) [__MINGW32__]: Strip trailing - slashes on PHYSICALDRIVE%d paths when making Windows CreateFile calls. - -2011-09-29 Mario Limonciello - - * grub-core/kern/emu/misc.c (canonicalize_file_name) [__MINGW32__]: Use - _fullpath. - -2011-09-29 Mario Limonciello - - Remove extra declaration of sleep for mingw32. - - * util/misc.c (sleep) [__MINGW32__]: Removed. - * include/grub/util/misc.h (sleep) [__MINGW32__]: Likewise. - -2011-09-28 Grégoire Sutre - - * include/grub/bsdlabel.h (grub_partition_bsd_disk_label): Add fields - type and packname. - * include/grub/i386/netbsd_bootinfo.h (NETBSD_BTINFO_BOOTDISK): - Resurrected. - (NETBSD_BTINFO_BOOTWEDGE): New definition. - (grub_netbsd_btinfo_bootwedge): New struct. - * grub-core/loader/i386/bsd.c (grub_netbsd_add_boot_disk_and_wedge): - New function. - (grub_cmd_netbsd): Call grub_netbsd_add_boot_disk_and_wedge. - -2011-09-28 Thomas Haller - - * grub-core/loader/multiboot_elfxx.c (Elf_Shdr): Set according to - loader. - -2011-09-28 Andreas Born - - Fix incorrect identifiers in bash-completion. - - * util/bash-completion.d/grub-completion.bash.in - (_grub_mkpasswd-pbkdf2): Rename to ... - (_grub_mkpasswd_pbkdf2): ... this. All users updated. - (_grub_script-check): Rename to ... - (_grub_script_check): ... this. All users updated. - -2011-09-28 Vladimir Serbinenko - - * grub-core/kern/emu/hostdisk.c (grub_util_biosdisk_is_floppy): - Return 0 if disk isn't biosdisk. - -2011-09-17 Grégoire Sutre - - * Makefile.util.def (grub-mkrelpath): Add LIBUTIL for getrawpartition(3) - on NetBSD. - * Makefile.util.def (grub-fstest): Likewise. - -2011-09-17 Grégoire Sutre - - * grub-core/kern/emu/hostdisk.c (grub_util_get_fd_sectors) [__NetBSD__]: - Get sector size from disk label. - -2011-09-05 Colin Watson - - * util/grub-mkconfig_lib.in (grub_file_is_not_garbage): Return 1 for - */README* as well as README*. - Reported by: Axel Beckert. - -2011-08-23 Vladimir Serbinenko - - * grub-core/kern/mips/loongson/init.c (grub_machine_init): Handle the - case of less than 256 MiB of RAM. - -2011-08-23 Vladimir Serbinenko - - * grub-core/commands/wildcard.c (make_regex): Handle @. - -2011-08-23 Vladimir Serbinenko - - * util/grub-install.in: Move cryptodisk logic to appropriate place. - -2011-08-21 Szymon Janc - - * acinclude.m4: Use AC_LANG_PROGRAM macro to generate source code for - AC_LANG_CONFTEST macros. - -2011-08-20 Szymon Janc - - Add grub-fstest option to uncompress data for commands. - - * util/grub-fstest.c (uncompress): New var. - (options): New option -u. - -2011-08-20 Szymon Janc - - * grub-core/loader/i386/linux.c (grub_linux_setup_video): Add - GRUB_VIDEO_DRIVER_RADEON_FULOONG2E to switch case statement. - -2011-08-20 Szymon Janc - - * grub-core/io/gzio.c (grub_gzio_open): Always return original io if - file type was not recognized correctly (not gzip or corrupted). - -2011-08-19 Vladimir Serbinenko - - * grub-core/kern/mips/loongson/init.c (grub_reboot): Reboot Fuloong. - * include/grub/cs5536.h (GRUB_CS5536_MSR_DIVIL_RESET): New definition. - -2011-08-19 Vladimir Serbinenko - - * grub-core/Makefile.core.def (kernel): Add video/radeon_fuloong2e.c on - loongson. - * grub-core/kern/mips/loongson/init.c (grub_machine_init): Init - video_radeon_fuloong2e. - * grub-core/video/radeon_fuloong2e.c: New file. - * include/grub/video.h (grub_video_id_t): Add new ID - GRUB_VIDEO_DRIVER_RADEON_FULOONG2E. - -2011-08-19 Vladimir Serbinenko - - * include/grub/mips/loongson.h (GRUB_CPU_LOONGSON_COP0_PRID): New - define. - * grub-core/kern/mips/loongson/init.c (grub_machine_init): Check - that PRID matches the detected subplatform and reset the subplatform - if it doesn't. - -2011-08-19 Vladimir Serbinenko - - * grub-core/kern/misc.c (grub_vprintf): Fix a bug on malloc failure. - -2011-08-19 Vladimir Serbinenko - - Fix PCI iterating on functions >= 4. - - * grub-core/bus/pci.c (grub_pci_iterate): Remove useless ghost skipping. - * include/grub/mips/loongson/pci.h (GRUB_LOONGSON_OHCI_GHOST_FUNCTION): - Removed. - (GRUB_LOONGSON_EHCI_GHOST_FUNCTION): Likewise. - (grub_pci_read): Fix bitmask. - (grub_pci_read_word): Likewise. - (grub_pci_read_byte): Likewise. - (grub_pci_write): Likewise. - (grub_pci_write_word): Likewise. - (grub_pci_write_byte): Likewise. - -2011-08-19 Vladimir Serbinenko - - * configure.ac: Don't impose march=loongson2f on loongson platform. (It - can still be specified in TARGET_CFLAGS) - -2011-08-19 Vladimir Serbinenko - - Rename Fuloong into Fuloong 2F. Add new ID for Fuloong2E. - - * grub-core/Makefile.core.def (fwstart_fuloong): Rename fwstart_fuloong - into fwstart_fuloong2f. Use boot/mips/loongson/fuloong2f.S. - * grub-core/boot/mips/loongson/fuloong.S: Rename to ... - * grub-core/boot/mips/loongson/fuloong2f.S: ... this. - (FULOONG): Rename to ... - (FULOONG2F): ... this. All users updated. - * grub-core/boot/mips/startup_raw.S (machtype_fuloong_str): Rename to - (machtype_fuloong2f_str): ... this. - (machtype_fuloong2e_str): New string. - Check for machtype_fuloong2e_str. - * grub-core/loader/mips/linux.c (loongson_machtypes) - [GRUB_MACHINE_MIPS_LOONGSON]: Add GRUB_ARCH_MACHINE_FULOONG2E. - * grub-core/term/serial.c (loongson_defserial) - [GRUB_MACHINE_MIPS_LOONGSON]: New array. - (grub_serial_register) [GRUB_MACHINE_MIPS_LOONGSON]: Use - loongson_defserial. - * include/grub/mips/loongson/kernel.h (GRUB_ARCH_MACHINE_FULOONG): - Rename to ... - (GRUB_ARCH_MACHINE_FULOONG2F): ... this. - (GRUB_ARCH_MACHINE_FULOONG2E): New const. - * util/grub-mkimage.c (image_target_desc): Rename IMAGE_FULOONG_FLASH - to IMAGE_FULOONG2F_FLASH. All users updated. - (image_targets): Rename images. - * util/grub-mkstandalone.in: Accept fuloong2f and fuloong2e. - -2011-08-19 Szymon Janc - - Make enable of disk cache statistics code configurable. - - * configure.ac: --enable-cache-stats added. - * config.h.in (DISK_CACHE_STATS): New define. - * grub-core/Makefile.core.def (cacheinfo): New command. - * include/grub/disk.h(grub_disk_cache_get_performance): New function. - * grub-core/commands/cacheinfo.c: New file. - * grub-core/commands/minicmd.c (grub_rescue_cmd_info): Updated and - moved to cacheinfo.c. - * grub-core/kern/disk.c: Use DISK_CACHE_STATS to disable disk cache - debug code. - * include/grub/disk.h: Likewise. - -2011-08-19 Szymon Janc - - * Makefile.am (AUTOMAKE_OPTIONS): = Added -Wno-portability flag. - * grub-core/Makefile.am: Likewise. - -2011-08-16 Vladimir Serbinenko - - * grub-core/kern/emu/hostdisk.c (grub_util_biosdisk_iterate): Skip with - non-zero pull. - -2011-08-16 Vladimir Serbinenko - - * grub-core/fs/jfs.c (grub_jfs_read_file): New parameter ino. - All users updated. - (grub_jfs_lookup_symlink): Use correct starting inode. - -2011-08-16 Vladimir Serbinenko - - * util/grub-setup.c (main): Add missing gcry initialisation. - -2011-08-16 Vladimir Serbinenko - - Don't accept text modes on EFI when booting Linux. - - * grub-core/loader/i386/linux.c (ACCEPTS_PURE_TEXT): New define. - (grub_linux_boot) [!ACCEPTS_PURE_TEXT]: Restrict to graphics modes. - -2011-08-15 Mario Limonciello -2011-08-15 Colin Watson - - * util/grub-probe.c (probe): Canonicalise the path argument, fixing - use of "/path/.." as in grub-install for EFI as well as handling - symlinks correctly. - Fixes Debian bug #637768. - -2011-08-15 Colin Watson - - * util/grub-probe.c: Remove duplicate #include. - -2011-08-10 Robert Millan - - Detect LSI MegaRAID SAS (`mfi') devices on GNU/kFreeBSD. - - * util/deviceiter.c [__FreeBSD_kernel__] (get_mfi_disk_name): New - function. - [__FreeBSD_kernel__] (grub_util_iterate_devices): Scan for mfi - (/dev/mfid[0-9]+) devices using get_mfi_disk_name(). - -2011-08-03 Robert Millan - - * include/grub/zfs/zap_leaf.h (typedef union zap_leaf_chunk): Mark - la_array as packed. - Reported by: Zachary Bedell - -2011-07-26 Colin Watson - - * configure.ac: The Loongson port requires grub-mkfont due to its - use of -DUSE_ASCII_FAILBACK. Raise an error if it is not going to - be built. - -2011-07-26 Colin Watson - - * util/grub-install.in: Don't source grub-mkconfig_lib until after - processing arguments (otherwise help2man fails when GRUB has not yet - been installed). - -2011-07-25 Vladimir Serbinenko - - New script grub-mkstandalone. - - * Makefile.util.def (grub-mkstandalone): New script. - * docs/man/grub-mkstandalone.h2m: New file. - * util/grub-mkstandalone.in: Likewise. - -2011-07-25 Vladimir Serbinenko - - Support ATA disks with 4K sectors. - - * include/grub/ata.h (grub_ata): New member log_sector_size. - * grub-core/disk/ata.c (grub_ata_dumpinfo): Show sector size. - (grub_ata_identify): Read sector size. - (grub_ata_readwrite): Use log_sector_size rather than hardcoded value. - -2011-07-25 Vladimir Serbinenko - - * util/grub-install.in: Don't use uhci outside of x86. - -2011-07-25 Vladimir Serbinenko - - * util/grub-mkrescue.in: Add missing quotes. - -2011-07-25 Vladimir Serbinenko - - * grub-core/normal/menu.c (grub_menu_execute_entry): Fix NULL - dereference. - -2011-07-23 Vladimir Serbinenko - - * grub-core/disk/pata.c (grub_pata_readwrite): Add missing wait. - -2011-07-23 Vladimir Serbinenko - - * include/grub/video.h: add missing EXPORT_FUND on - grub_video_edid_checksum and grub_video_edid_preferred_mode. - -2011-07-23 Vladimir Serbinenko - - * include/grub/mips/kernel.h: Fix define conflict. - -2011-07-23 Vladimir Serbinenko - - * grub-core/kern/mips/cache_flush.S [GRUB_MACHINE_MIPS_LOONGSON]: Flush - all four ways. - -2011-07-21 Colin Watson - - Preferred resolution detection for VBE. - - * grub-core/video/video.c (grub_video_edid_checksum): New function. - (grub_video_edid_preferred_mode): Likewise. Try EDID followed by - the Flat Panel extension, in line with the X.org VESA driver. - * grub-core/video/i386/pc/vbe.c (grub_vbe_bios_get_flat_panel_info): - New function. - (grub_vbe_bios_get_ddc_capabilities): Likewise. - (grub_vbe_bios_read_edid): Likewise. - (grub_vbe_get_preferred_mode): Likewise. - (grub_video_vbe_setup): When the mode is "auto", try to get the - preferred mode from VBE, and use the largest mode that is no larger - than the preferred mode (some BIOSes expose a preferred mode that is - not in their mode list!). If this fails, fall back to 640x480 as a - safe conservative choice. - (grub_video_vbe_get_edid): New function. - (grub_video_vbe_adapter): Add get_edid. - * include/grub/video.h (struct grub_vbe_edid_info): New structure. - (struct grub_video_adapter): Add get_edid. - (grub_video_edid_checksum): Add prototype. - (grub_video_edid_preferred_mode): Likewise. - * include/grub/i386/pc/vbe.h (struct grub_vbe_flat_panel_info): New - structure. - - * grub-core/commands/videoinfo.c (print_edid): New function. - (grub_cmd_videoinfo): Print EDID if available. - - * util/grub.d/00_header.in (GRUB_GFXMODE): Default to "auto". This - is more appropriate on a wider range of platforms than 640x480. - * docs/grub.texi (Simple configuration): Update GRUB_GFXMODE - documentation. - -2011-07-10 Vladimir Serbinenko - - * util/grub-install.in: Recognize ESP mounted at /boot/EFI. - -2011-07-10 Vladimir Serbinenko - - * po/POTFILES.in: Regenerate. - -2011-07-10 Vladimir Serbinenko - - * grub-core/disk/efi/efidisk.c (grub_efidisk_get_device_name): Fix - incorrect memory usage. - -2011-07-10 Vladimir Serbinenko - - * util/grub-install.in: Source grub-mkconfig_lib. - -2011-07-08 Vladimir Serbinenko - - Remove getroot.c from core on emu platform. - - * grub-core/Makefile.core.def (kernel): Remove kern/emu/getroot.c and - kern/emu/raid.c. - * grub-core/kern/emu/main.c (main): Don't try to guess root device. It's - useless. - * grub-core/kern/emu/misc.c (get_win32_path): Moved from here... - * util/getroot.c (get_win32_path): ... here. - * grub-core/kern/emu/misc.c (fini_libzfs): Moved from here... - * util/getroot.c (fini_libzfs): ... here. - * grub-core/kern/emu/misc.c (grub_get_libzfs_handle): Moved from here... - * util/getroot.c (grub_get_libzfs_handle): ... here. - * grub-core/kern/emu/misc.c (grub_find_zpool_from_dir): - Moved from here... - * util/getroot.c (grub_find_zpool_from_dir): ... here. - * grub-core/kern/emu/misc.c - (grub_make_system_path_relative_to_its_root): Moved from here... - * util/getroot.c (grub_make_system_path_relative_to_its_root): ... here. - * grub-core/kern/emu/getroot.c: Moved from here ... - * util/getroot.c: ... here. All users updated. - * grub-core/kern/emu/raid.c: Moved from here ... - * util/raid.c: ... here. All users updated. - -2011-07-08 Vladimir Serbinenko - - * po/POTFILES.in: Regenerate. - -2011-07-07 Vladimir Serbinenko - - Fix compilation on GNU/Linux. - - * grub-core/kern/emu/getroot.c (grub_util_pull_device) [!FreeBSD]: - Disable geli. - (grub_util_get_grub_dev) [!FreeBSD]: Likewise. - (grub_util_pull_device) [HAVE_DEVICE_MAPPER]: Fix const and func name. - * grub-core/disk/cryptodisk.c (grub_cryptodisk_open): Fix proto. - -2011-07-07 Vladimir Serbinenko -2011-07-07 Michael Gorven -2011-07-07 Clemens Fruhwirth - - LUKS and GELI support. - - * Makefile.util.def (libgrubkern.a): Add grub-core/lib/crypto.c, - grub-core/disk/luks.c, grub-core/disk/geli.c, - grub-core/disk/cryptodisk.c, grub-core/disk/AFSplitter.c, - grub-core/lib/pbkdf2.c, grub-core/commands/extcmd.c, - grub-core/lib/arg.c. - (libgrubmods.a): Remove gcrypts cflags and cppflags. - Remove grub-core/commands/extcmd.c, grub-core/lib/arg.c, - grub-core/lib/crypto.c, grub-core/lib/libgcrypt-grub/cipher/sha512.c, - grub-core/lib/libgcrypt-grub/cipher/crc.c and grub-core/lib/pbkdf2.c. - (grub-bin2h): Add libgcry.a. - (grub-mkimage): Likewise. - (grub-mkrelpath): Likewise. - (grub-script-check): Likewise. - (grub-editenv): Likewise. - (grub-mkpasswd-pbkdf2): Likewise. - (grub-pe2elf): Likewise. - (grub-fstest): Likewise. - (grub-mkfont): Likewise. - (grub-mkdevicemap): Likewise. - (grub-probe): Likewise. - (grub-ofpath): Likewise. - (grub-mklayout): Likewise. - (example_unit_test): Likewise. - (grub-menulst2cfg): Likewise. - * autogen.sh (UTIL_DEFS): Add Makefile.utilgcry.def. - * grub-core/Makefile.core.def (cryptodisk): New module. - (luks): Likewise. - (geli): Likewise. - * grub-core/disk/AFSplitter.c: New file. - * grub-core/disk/cryptodisk.c: Likewise. - * grub-core/disk/geli.c: Likewise. - * grub-core/disk/luks.c: Likewise. - * grub-core/kern/emu/getroot.c (get_dm_uuid): New function based on - grub_util_is_lvm. - (grub_util_get_dm_abstraction): New function. - (grub_util_follow_gpart_up): Likewise. - (grub_util_get_geom_abstraction): Likewise. - (grub_util_get_dev_abstraction): Use new functions. - (grub_util_pull_device): Pull GELI and LUKS. - (grub_util_get_grub_dev): Handle LUKS and GELI. - * grub-core/kern/emu/hostdisk.c (grub_util_get_fd_sectors): New function. - (grub_util_biosdisk_open): Use grub_util_get_fd_sectors. - (follow_geom_up): Removed. - (grub_util_fd_seek): New function. - (open_device): Use grub_util_fd_seek. - (nread): Rename to .. - (grub_util_fd_read): ... this. All users updated. - * grub-core/lib/crypto.c (grub_crypto_ecb_decrypt): A better prototype. - (grub_crypto_cbc_decrypt): Likewise. - (grub_crypto_hmac_write): Likewise. - (grub_crypto_hmac_buffer): Likewise. - (grub_password_get): Extend to util. - * include/grub/crypto.h (gcry_cipher_spec) [GRUB_UTIL]: - New member modname. - (gcry_md_spec) [GRUB_UTIL]: Likewise. - * include/grub/cryptodisk.h: New file. - * include/grub/disk.h (grub_disk_dev_id): Rename LUKS to CRYPTODISK. - * include/grub/emu/getroot.h (grub_dev_abstraction_types): Add - LUKS and GELI. - (grub_util_follow_gpart_up): New proto. - * include/grub/emu/hostdisk.h (grub_util_fd_seek): Likewise. - (grub_util_fd_read): Likewise. - (grub_cryptodisk_cheat_mount): Likewise. - (grub_util_cryptodisk_print_uuid): Likewise. - (grub_util_get_fd_sectors): Likewise. - * util/grub-fstest.c (mount_crypt): New var. - (fstest): Mount crypto if requested. - (options): New option -C. - (argp_parser): Parse -C. - (main): Init and fini gcry. - * util/grub-install.in: Support cryptodisk install. - * util/grub-mkconfig.in: Export GRUB_ENABLE_CRYPTODISK. - * util/grub-mkconfig_lib.in (is_path_readable_by_grub): Support - cryptodisk. - (prepare_grub_to_access_device): Likewise. - * util/grub-mkpasswd-pbkdf2.c (main): Use grub_password_get. - * util/grub-probe.c (probe_partmap): Support cryptodisk UUID probe. - (probe_cryptodisk_uuid): New function. - (probe_abstraction): Likewise. - (probe): Use new functions. - * util/import_gcry.py: Create Makefile.utilgcry.def. - Add modname member. - -2011-07-07 Vladimir Serbinenko - - Lazy device scanning. - - * Makefile.util.def (libgrubkern.a): Add grub-core/kern/emu/raid.c. - (grub-setup): Remove util/raid.c. - * grub-core/Makefile.core.def (kernel): Add kern/emu/raid.c on emu. - * grub-core/disk/lvm.c (scan_depth): New variable. - (grub_lvm_iterate): Rescan if necessary. - (find_lv): New function based on grub_lvm_open. - (grub_lvm_open): Use find_lv. Rescan on error. - (is_node_readable): New function. - (is_lv_readable): Likewise. - (grub_lvm_scan_device): Skip already found disks. - (do_lvm_scan): New function. Move grub_lvm_scan_device inside of it. - Stop if searched device is found and readable. - * grub-core/disk/raid.c (inscnt): New variable. - (scan_depth): Likewise. - (scan_devices): New function based on grub_raid_register. Abort if - looked for device is found. - (grub_raid_iterate): Rescan if needed. - (find_array): NEw function based on -grub_raid_open. - (grub_raid_open): Use find_array and rescan. - (insert_array): Set became_readable_at. - * grub-core/kern/disk.c (grub_disk_dev_iterate): Iterate though "pull. - * grub-core/kern/emu/getroot.c (grub_util_open_dm) [HAVE_DEVICE_MAPPER]: - New function. - (grub_util_is_lvm) [HAVE_DEVICE_MAPPER]: Use grub_util_open_dm. - (grub_util_pull_device): New function. - (grub_util_get_grub_dev): Call grub_util_pull_device. - * util/raid.c: Moved to .. - * grub-core/kern/emu/raid.c: ... here. - (grub_util_raid_getmembers): New parameter "bootable". - All users updated. Support 1.x. - * include/grub/ata.h (grub_ata_dev): Change iterate prototype. - All users updated. - * include/grub/disk.h (grub_disk_pull_t): New enum. - (grub_disk_dev): Change iterate prototype. - All users updated. - * include/grub/emu/getroot.h (grub_util_raid_getmembers) [__linux__]: - New proto. - * include/grub/emu/hostdisk.h (grub_util_pull_device): Likewise. - * include/grub/lvm.h (grub_lvm_lv): New members fullname and compatname. - * include/grub/raid.h (grub_raid_array): New member became_readable_at. - * include/grub/scsi.h (grub_scsi_dev): Change iterate prototype. - All users updated. - * include/grub/util/raid.h: Removed. - -2011-07-06 Vladimir Serbinenko - - * po/POTFILES.in: Regenerate. - -2011-07-06 Vladimir Serbinenko - - Unify sparc init with other ieee1275. - - * grub-core/Makefile.core.def (kernel): Use kern/ieee1275/init.c - instead of kern/sparc64/ieee1275/init.c. - * grub-core/kern/ieee1275/cmain.c (grub_ieee1275_find_options) - [__sparc__]: Set GRUB_IEEE1275_FLAG_NO_PARTITION_0. - * grub-core/kern/ieee1275/init.c [__sparc__]: Include - grub/machine/kernel.h. - (grub_ieee1275_original_stack) [__sparc__]: New variable. - (grub_claim_heap) [__sparc__]: Use sparc version. - (grub_machine_init): Moved args parsing to - (grub_parse_cmdline): ...this. - * grub-core/kern/sparc64/ieee1275/init.c: Removed. - * include/grub/offsets.h (GRUB_KERNEL_SPARC64_IEEE1275_MOD_GAP): - New definition. - (GRUB_KERNEL_SPARC64_IEEE1275_MOD_ALIGN): Likewise. - - Move BOOTP to separate file. - - * grub-core/Makefile.core.def (net): Add net/bootp.c. - * grub-core/net/net.c: Move all BOOTP functions to - * grub-core/net/bootp.c: ... here. - - Use frame interface on PXE. - - * grub-core/Makefile.core.def (pxecmd): Removed. - (pxe): Use net/drivers/i386/pc/pxe.c rather than net/i386/pc/pxe.c. - * grub-core/commands/i386/pc/pxecmd.c: Removed. - * grub-core/i386/pc/pxe.c: Moved from here ... - * grub-core/net/i386/pc/pxe.c: ... here. Rewritten. - * grub-core/net/net.c (grub_net_open_real): Handle old pxe syntax. - * include/grub/i386/pc/pxe.h (grub_pxe_unload): Removed. - - EFI network support. - - * grub-core/Makefile.core.def (efinet): New module. - * grub-core/disk/efi/efidisk.c (compare_device_paths): Moved from - here... - * grub-core/kern/efi/efi.c (grub_efi_compare_device_paths): ... here. - All users updated. - * grub-core/kern/efi/init.c (grub_efi_net_config): New variable. - (grub_machine_get_bootlocation): Call grub_efi_net_config if needed. - * grub-core/kern/x86_64/efi/callwrap.S (efi_wrap_7): New function. - * grub-core/net/drivers/efi/efinet.c: New file. - * include/grub/efi/efi.h (grub_efi_compare_device_paths): New proto. - (grub_efi_net_config): New extern var. - - Various cleanups and bugfixes. - - * grub-core/disk/efi/efidisk.c (grub_efidisk_open): Fix off-by-one - error. - (grub_efidisk_get_device_name): Unify similar codepaths. Accept whole - disk declared as partition. - * grub-core/disk/ieee1275/ofdisk.c (grub_ofdisk_open): Fix memory - leak on failure. - * grub-core/kern/dl.c (grub_dl_load_file): Fix memory leak. - * grub-core/kern/mm.c (grub_debug_malloc): Don't use unsupported %zx. - (grub_debug_zalloc): Likewise. - (grub_debug_realloc): Likewise. - (grub_debug_memalign): Likewise. - * grub-core/net/arp.c (grub_net_arp_receive): IPv4 is 4-byte wide. - Check that target is IPv4. - * grub-core/net/drivers/ieee1275/ofnet.c (grub_ofnet_findcards): Use - local-mac-address as fallback. - * grub-core/net/ethernet.c (grub_net_recv_ethernet_packet): Prevent - memory leak. - * grub-core/net/ip.c (ipchksum): Rename to ... - (grub_net_ip_chksum): ... this. All users updated. - (grub_net_recv_ip_packets): Special handling for DHCP. - * util/grub-mkimage.c (generate_image): Zero-out aout header. - - Unify prefix handling - - * grub-core/kern/efi/init.c (grub_efi_set_prefix): Revamped into ... - (grub_machine_get_bootlocation): ... this. - * grub-core/kern/emu/main.c (grub_machine_set_prefix): Revamped into ... - (grub_machine_get_bootlocation): ... this. - (grub_prefix): New variable. - (prefix): Removed. - (root_dev): New variable. - (dir): Likewise. - (main): Use new variables. - * grub-core/kern/i386/coreboot/init.c (grub_machine_set_prefix): - Revamped into ... - (grub_machine_get_bootlocation): ... this. - * grub-core/kern/i386/efi/init.c (grub_machine_set_prefix): Removed. - * grub-core/kern/i386/pc/init.c (make_install_device): Revamped into ... - (grub_machine_get_bootlocation): ... this. - (grub_machine_set_prefix): Removed. - * grub-core/kern/ia64/efi/init.c (grub_machine_set_prefix): Removed. - * grub-core/kern/ieee1275/init.c (grub_machine_set_prefix): - Revamped into ... - (grub_machine_get_bootlocation): ... this. - * grub-core/kern/main.c (grub_set_root_dev): Revamped into ... - (grub_set_prefix_and_root): ... this. All users updated. - * grub-core/kern/mips/init.c (grub_machine_set_prefix): - Revamped into ... - (grub_machine_get_bootlocation): ... this. - * include/grub/kernel.h (grub_machine_set_prefix): Removed. - (grub_machine_get_bootlocation): New proto. - * include/grub/i386/pc/kernel.h (grub_pc_net_config): New var. - - Less intrusive and more reliable seek on network implementation. - - * grub-core/kern/file.c (grub_file_net_seek): Removed. - (grub_file_seek): Don't call grub_file_net_seek. - * grub-core/net/net.c (grub_net_fs_read): Renamed to ... - (grub_net_fs_read_real): .. this. - (grub_net_seek_real): Use net->offset. - (grub_net_fs_read): Seek if necessary. - - Unify IEEE1275 netwotk config with the other platforms. - - * grub-core/kern/ieee1275/init.c (grub_ieee1275_net_config): - New variable. - (grub_machine_get_bootlocation): Support network. - * grub-core/kern/ieee1275/openfw.c (grub_ieee1275_parse_args): - Support type and device parsing. - (grub_ieee1275_get_device_type): New function. - * grub-core/net/drivers/ieee1275/ofnet.c (grub_getbootp_real): Revamped - into ... - (grub_ieee1275_net_config_real): ... this. - (grub_ofnet_probecards): Removed. - * grub-core/Makefile.am (KERNEL_HEADER_FILES): Remove ofnet.h. - * include/grub/ieee1275/ofnet.h: Removed. - * include/grub/ieee1275/ieee1275.h (grub_ieee1275_net_config): NEw - extern var. - (grub_ieee1275_get_device_type): New function. - - Unify network device closing across platforms and make more robust. - - * grub-core/kern/ieee1275/init.c (grub_machine_fini): Don't call - grub_grubnet_fini. - * grub-core/net/ethernet.c (send_ethernet_packet): Open card if it isn't - already. - * grub-core/net/net.c (grub_net_network_level_interface_register): - Update num_ifaces. - (grub_net_card_unregister): Close all interfaces. - (receive_packets): Don't poll if no iterfaces are registered. - Open if necessary. - (grub_net_fini_hw): New function. - (grub_net_restore_hw): Likewise. - (fini_hnd): New variable. - (GRUB_MOD_INIT): Register preboot hook. - (GRUB_MOD_FINI): Run and unregister preboot hook. - - Poll network cards when idle. - - * grub-core/kern/term.c (grub_net_poll_cards_idle): New variable. - (grub_checkkey): Call grub_net_poll_cards_idle if it's not NULL. - * grub-core/net/net.c (receive_packets): Save last poll time. - (grub_net_poll_cards_idle_real): New function. - (GRUB_MOD_INIT): Register grub_net_poll_cards_idle. - (GRUB_MOD_FINI): Unregister grub_net_poll_cards_idle. - * include/grub/kernel.h (grub_poll_cards_idle): New extern variable. - - Rename ofnet interfaces. - - * grub-core/net/drivers/ieee1275/ofnet.c (find_alias): New function. - (grub_ofnet_findcards): Use ofnet_%s names. - - * util/grub-mknetdir.in: Support for EFI and IEEE1275. - - Cleanup socket opening. - - * grub-core/net/net.c (grub_net_fs_open): Rewritten. - (grub_net_fs_close): Likewise. - (grub_net_fs_read_real): Use eof member. - * include/grub/net/udp.h (+grub_net_udp_open): New proto. - (+grub_net_udp_close): New inline function. - - * include/grub/net/tftp.h: Moved to the top of ... - * grub-core/net/tftp.c: ... here. - * include/grub/net/ip.h: Moved mostly to the top of ... - * grub-core/net/ip.c: ... here. - * include/grub/net/ethernet.h: Moved mostly to the top of ... - * grub-core/net/ethernet.c: ... here. - - * grub-core/kern/device.c (grub_device_close): Free device->net->server. - - * grub-core/commands/probe.c (grub_cmd_probe): Use protocol name for - FS name. - - * include/grub/net/ip.h (ipv4_ini): Removed. - (ipv4_fini): Likewise. - - * include/grub/net/ip.h (grub_net_recv_ip_packets): New proto. - (grub_net_send_ip_packets): Likewise. - -2011-07-05 Vladimir Serbinenko - - * grub-core/kern/i386/qemu/mmap.c (grub_machine_mmap_init): Use new - grub_read_cmos prototype. - -2011-07-05 Vladimir Serbinenko - - VGA text support in qemu-mips - - * grub-core/Makefile.core.def (kernel): Add term/i386/pc/vga_text.c, - term/i386/vga_common.c and kern/vga_init.c on qemu-mips. - * grub-core/kern/mips/qemu_mips/init.c (grub_machine_init): Init vga - text. - * grub-core/kern/i386/qemu/init.c: Renamed to ... - * grub-core/kern/vga_init.c: ... this. - * grub-core/kern/vga_init.c (VGA_ADDR) [__mips__]: Adjust. - (grub_qemu_init_cirrus) [__mips__]: Skip PCI and adjust the I/O base. - * grub-core/term/i386/pc/vga_text.c (VGA_TEXT_SCREEN) [__mips__]: - Adjust. - * include/grub/vga.h [GRUB_MACHINE_MIPS_QEMU_MIPS]: Declare - GRUB_MACHINE_PCI_IO_BASE. - -2011-07-05 Vladimir Serbinenko - - MIPS qemu flash support. - - * grub-core/boot/mips/startup_raw.S [GRUB_MACHINE_MIPS_QEMU_MIPS]: Check - magic. - * grub-core/kern/mips/qemu_mips/init.c (probe_mem): New function. - (grub_machine_init): Probe memory if its size isn't known. - * util/grub-mkimage.c (image_targets): Add flash targets. - (generate_image): Handle flash targets. - -2011-07-05 Vladimir Serbinenko - - MIPS qemu at_keyboard support. - - * gentpl.py (videoinkernel): Add qemu-mips. - * grub-core/Makefile.am (KERNEL_HEADER_FILES): Add necessary headers. - * grub-core/Makefile.core.def (kernel): Add at_keyboard and layout. - * grub-core/kern/mips/qemu_mips/init.c (grub_machine_init): Init new - modules. - * grub-core/term/at_keyboard.c (grub_keyboard_controller_init) - [GRUB_MACHINE_MIPS_QEMU_MIPS]: Don't consider original set. - * grub-core/term/serial.c (grub_serial_register) - [GRUB_MACHINE_MIPS_QEMU_MIPS]: Make com0 explicitly active. - -2011-07-05 Vladimir Serbinenko - - CMOS support on sparc. - - * gentpl.py (cmos): Add powerpc and sparc. - * grub-core/Makefile.core.def (datetime): Add lib/ieee1275/cmos.c on - powerpc and sparc. - * grub-core/lib/cmos_datetime.c (grub_get_datetime) - [__powerpc__ || __sparc__]: Rename to grub_get_datetime_cmos. - (grub_set_datetime) [__powerpc__ || __sparc__]: Likewise to - grub_set_datetime_cmos. - * grub-core/lib/ieee1275/cmos.c: New file. - * grub-core/lib/ieee1275/datetime.c (no_ieee1275_rtc): New vaiable. - (find_rtc): Set no_ieee1275_rtc on error. - (grub_get_datetime): Call grub_get_datetime_cmos on error. - (grub_set_datetime): Call grub_set_datetime_cmos on error. - * include/grub/cmos.h (grub_cmos_read): Return grub_err_t since it may - fail. Move value to argument. All users updated - (grub_cmos_write): Likewise. - (grub_cmos_read) [__powerpc__ || __sparc__]: Rewritten. - (grub_cmos_write) [__powerpc__ || __sparc__]: Likewise. - * include/grub/datetime.h [__powerpc__ || __sparc__]: Declare - grub_get_datetime_cmos and grub_set_datetime_cmos. - -2011-07-02 Grégoire Sutre - - * util/grub-mkconfig.in: Use @PACKAGE@ instead of hardcoded name when - sourcing grub-mkconfig_lib. - * util/update-grub_lib.in: Likewise. - * util/grub.d/00_header.in: Likewise. - * util/grub.d/10_hurd.in: Likewise. - * util/grub.d/10_kfreebsd.in: Likewise. - * util/grub.d/10_linux.in: Likewise. - * util/grub.d/10_netbsd.in: Likewise. - * util/grub.d/10_windows.in: Likewise. - * util/grub.d/20_linux_xen.in: Likewise. - * util/grub.d/30_os-prober.in: Likewise. - -2011-06-28 Colin Watson - - * grub-core/term/gfxterm.c (grub_virtual_screen_setup): Use - default_bg_color rather than black. - (grub_gfxterm_fullscreen): Likewise. - (grub_gfxterm_background_color_cmd): Save new background color in - default_bg_color. - -2011-06-27 Vladimir Serbinenko - - * grub-core/Makefile.core.def (chain): Fix coreboot filename. - -2011-06-27 Vladimir Serbinenko - - * grub-core/disk/pata.c (grub_pata_initialize) [QEMU_MIPS]: Fix a - mismerge. - -2011-06-27 Vladimir Serbinenko - - Chainloading on coreboot support. - - * grub-core/Makefile.core.def (chain): Add coreboot. - * grub-core/loader/i386/coreboot/chainloader.c: New file. - -2011-06-27 Vladimir Serbinenko - - * grub-core/loader/i386/bsd.c (grub_bsd_load): Handle relocator failure - if it happens. - -2011-06-27 Vladimir Serbinenko - - Implement time command. - - * grub-core/Makefile.core.def (time): New module. - * grub-core/commands/time.c: New file. - * grub-core/script/parser.y: Remove "time" keyword. - * grub-core/script/yylex.l: Likewise. - -2011-06-27 Vladimir Serbinenko - - * include/grub/loader.h (grub_loader_unregister_preboot_hook): Export. - -2011-06-27 Vladimir Serbinenko - - * grub-core/lib/relocator.c (malloc_in_range): Fix a memory corruption - when handling leftovers. - -2011-06-27 Vladimir Serbinenko - - * util/ieee1275/grub-ofpathname.c (main): Handle --help and --version - so that help2man doesn't fail. - -2011-06-27 Vladimir Serbinenko - - * grub-core/net/drivers/ieee1275/ofnet.c (send_card_buffer) Use right - type in pointers on sparc64. - (get_card_packet): Likewise. - -2011-06-27 Colin Watson - - * grub-core/commands/videoinfo.c (hook): Indicate current video mode - with `*'. - (grub_cmd_videoinfo): Fetch current video mode. - -2011-06-27 Vladimir Serbinenko - - * grub-core/disk/scsi.c (grub_scsi_read): Limit SCSI reads to 32K - because of underlying system restrictions. - -2011-06-27 Vladimir Serbinenko - - * util/grub-mkrescue.in: Rename "ata" to "pata" and add ahci when - necessary. - -2011-06-27 Vladimir Serbinenko - - Coreboot video support. - - * grub-core/Makefile.core.def (vga): Extend to coreboot and multiboot. - (vbe): Likewise. - * grub-core/kern/i386/coreboot/startup.S: Include int.S. - * grub-core/kern/i386/pc/startup.S (grub_bios_interrupt): Moved from - here ... - * grub-core/kern/i386/int.S: ... here. - * grub-core/video/i386/pc/vbe.c: Updated includes. - * grub-core/video/i386/pc/vga.c: Likewise. - * include/grub/i386/coreboot/memory.h - (GRUB_MEMORY_MACHINE_SCRATCH_ADDR): New definition. - (GRUB_MEMORY_MACHINE_SCRATCH_SEG): Likewise. - (GRUB_MEMORY_MACHINE_SCRATCH_SIZE): Likewise. - * include/grub/i386/pc/int.h (GRUB_CPU_INT_FLAGS_DEFAULT) [!PCBIOS]: - Disable interrupts. - * include/grub/i386/pc/vga.h: Removed. All users updated. - -2011-06-27 Vladimir Serbinenko - - * grub-core/disk/ahci.c (grub_ahci_readwrite_real): Use proper - definitions for dprintf. - * grub-core/disk/pata.c (grub_pata_readwrite): Likewise. - -2011-06-27 Vladimir Serbinenko - - * grub-core/net/drivers/ieee1275/ofnet.c (send_card_buffer): Fix - prototype. - (get_card_packet): Likewise. - -2011-06-26 Yves Blusseau - - Display the path of the file when file is not found - - * grub-core/fs/fat.c: Display the filename when file is not found. - * grub-core/fs/fshelp.c: Likewise. - * grub-core/fs/hfs.c: Likewise. - * grub-core/fs/jfs.c: Likewise. - * grub-core/fs/minix.c: Likewise. - * grub-core/fs/ufs.c: Likewise. - * grub-core/fs/btrfs.c: Likewise. - * grub-core/commands/i386/pc/play.c: Likewise. - -2011-06-26 Szymon Janc - - * grub-core/commands/cmp.c (grub_cmd_cmp): Remove unnecessary NULL - pointer checks before calling grub_free(). - * grub-core/commands/wildcard.c (match_devices): Likewise. - * grub-core/commands/wildcard.c (match_files): Likewise. - * grub-core/fs/cpio.c (grub_cpio_dir): Likewise. - * grub-core/fs/cpio.c (grub_cpio_open): Likewise. - * grub-core/fs/udf.c (grub_udf_read_block): Likewise. - * grub-core/fs/xfs.c (grub_xfs_read_block): Likewise. - * grub-core/loader/efi/chainloader.c (grub_cmd_chainloader): Likewise. - * grub-core/normal/cmdline.c (grub_cmdline_get): Likewise. - * grub-core/script/yylex.l (grub_lexer_unput): Likewise. - * grub-core/video/readers/jpeg.c (grub_video_reader_jpeg): Likewise. - * grub-core/video/readers/png.c (grub_png_output_byte): Likewise. - -2011-06-25 Patrick - - * grub-core/kern/main.c (grub_load_normal_mode): Correct the comment. - -2011-06-25 Vladimir Serbinenko - - * grub-core/net/i386/pc/pxe.c (grub_pxe_recv): Fix declaration. - (grub_pxe_send): Likewise. - (GRUB_MOD_INIT): Fix types. - -2011-06-24 Szymon Janc - - * grub-core/io/xzio.c: Fix code style issues - -2011-06-24 Vladimir Serbinenko -2011-06-24 Manoel Rebelo Abranches - - Network infrastructure. - The ARP protocol was made by Paulo Pinatti - - * include/grub/net/arp.h: New file. - * include/grub/net/device.h: Likewise. - * include/grub/net/ethernet.h: Likewise. - * include/grub/net/ip.h: Likewise. - * include/grub/net/netbuff.h: Likewise. - * include/grub/net/tftp.h: Likewise. - * include/grub/net/udp.h: Likewise. - * include/grub/ieee1275/ofnet.h: Likewise. - * include/grub/emu/export.h: Likewise. - * include/grub/net.h: Likewise. - * grub-core/net/arp.c: Likewise. - * grub-core/net/ethernet.c: Likewise. - * grub-core/net/ip.c: Likewise. - * grub-core/net/udp.c: Likewise. - * grub-core/net/tftp.c: Likewise. - * grub-core/net/netbuff.c: Likewise. - * grub-core/net/net.c: Likewise. - * grub-core/net/drivers/emu/emunet.c: Likewise. - * grub-core/net/drivers/ieee1275/ofnet.c: Likewise. - * grub-core/Makefile.am (KERNEL_HEADER_FILES): Add net.h, ofnet.h and - export.h. - * grub-core/Makefile.core.def (net): New module. - (tftp): Likewise. - (ofnet): Likewise. - (emunet): Likewise. - * grub-core/commands/ls.c (grub_ls_list_devices) [!GRUB_UTIL]: List - network protocols. - * grub-core/kern/device.c (grub_net_open) : New variable. - (grub_device_open): Handle network device. - (grub_device_close): Likewise. - * grub-core/kern/file.c (grub_file_net_seek) : New variable. - (grub_grubnet_fini): Likewise. - (grub_file_seek): Seek in network device. - * grub-core/kern/fs.c (grub_fs_probe): Handle network devices. - * grub-core/kern/ieee1275/init.c (grub_machine_set_prefix): Handle - network root. - (grub_machine_fini): Call grub_grubnet_fini. - * grub-core/kern/ieee1275/openfw.c (grub_ieee1275_parse_args): Handle - network. - (grub_ieee1275_get_aliasdevname): New function. - * grub-core/loader/i386/multiboot_mbi.c (grub_multiboot_get_mbi_size): - Add unofficial Solaris network info. - (grub_multiboot_make_mbi): Likewise. - * grub-core/fs/i386/pc/pxe.c: Moved from here ... - * grub-core/net/i386/pc/pxe.c: ...here. Adapted for new design. - * include/grub/device.h (grub_fs): Removed. - * include/grub/err.h (grub_err_t): Add network-related values. - * include/grub/i386/pc/pxe.h: Removed bootp parts. - * include/grub/ieee1275/ieee1275.h (grub_ofnetcard_data): New struct. - (grub_ieee1275_get_aliasdevname): New proto. - * include/grub/net.h: Rewritten. - -2011-06-24 Vladimir Serbinenko - - * grub-core/disk/raid.c (insert_array): Ensure uniqueness of readable - names. - -2011-06-24 Vladimir Serbinenko - - * grub-core/commands/wildcard.c (match_files): Add a useful dprintf. - (wildcard_expand): Don't stop on nonregexp parts after regexp ones since - it truncates the output. - Reported by: Ximin Luo. - -2011-06-24 Vladimir Serbinenko - - * grub-core/fs/iso9660.c (grub_iso9660_iterate_dir): Skip . and .. - -2011-06-24 Vladimir Serbinenko - - * util/grub-mkconfig_lib.in (prepare_grub_to_access_device): Load - partmap before abstraction. - -2011-06-24 Alexander Kurtz - - * util/grub-mkconfig_lib.in: Add missing quotes. - -2011-06-24 Vladimir Serbinenko - - * grub-core/kern/emu/getroot.c (grub_guess_root_device): Revert to - old method if mountinfo would return /dev/root and /dev/root doesn't - exist. - -2011-06-24 Vladimir Serbinenko - - ZFS zlib support - - * grub-core/fs/zfs/zfs.c (zlib_decompress): New function. - (decomp_table): Add zlib entries. - (zio_read): USe 8 bits for compression function rather than 3. - * include/grub/zfs/zio.h (zio_compress): Add zlib values. - -2011-06-24 Vladimir Serbinenko - - * grub-core/disk/ahci.c: Add missing license statements. - * grub-core/fs/romfs.c: Likewise. - * grub-core/lib/ia64/setjmp.S: Likewise. - * grub-core/loader/i386/pc/freedos.c: Likewise. - * grub-core/loader/ia64/efi/linux.c: Likewise. - * grub-core/video/colors.c: Likewise. - * include/grub/dl.h (GRUB_MOD_DEP): New macro. - -2011-06-23 Vladimir Serbinenko - - AHCI support. - - * grub-core/Makefile.core.def (ata_pthru): Removed. - (ahci): New module. - (pata): Likewise. - * grub-core/bus/usb/ohci.c (GRUB_MOD_FINI): Unregister preboot hook - on unload. - * grub-core/commands/hdparm.c (grub_hdparm_do_ata_cmd): Use ATA - readwrite. - (grub_hdparm_do_check_powermode_cmd): Likewise. - (grub_hdparm_do_smart_cmd): Likewise. - (grub_hdparm_set_val_cmd): Likewise. - (grub_cmd_hdparm): Likewise. Check thta we have an ATA device. - * grub-core/disk/ahci.c: New file. - * grub-core/disk/ata.c: Factor out the low-level part into ... - * grub-core/disk/pata.c: ... here. - * grub-core/disk/ata_pthru.c: Contents moved to ... - * grub-core/disk/pata.c: ... here. - * grub-core/disk/scsi.c (grub_scsi_names): New array. - (grub_scsi_iterate): Use grub_scsi_names. - (grub_scsi_open): Likewise. - * grub-core/kern/disk.c (grub_disk_ata_pass_through): Removed. - * include/grub/ata.h (grub_ata_commands): Add DMA commands. - (grub_ata_regs_t): New struct. - (grub_disk_ata_pass_through_parms): Likewise. - (grub_ata_device): Renamed to ... - (grub_ata): ... this. - (grub_ata_dev): New struct. - Removed all low-level inline functions. - * include/grub/scsi.h: Add PATA and AHCI subsystems. - (grub_scsi_dev): Removed 'name' and 'id'. Added 'id' parameter to - iterate hooks and open. All users updated. - * util/grub-install.in: Handle AHCI disk module. - -2011-06-23 Szymon Janc - - Add support for DRI and RSTn markers in JPEG files. - - * grub-core/video/readers/jpeg.c (JPEG_MARKER_DRI): New define. - (JPEG_MARKER_RST0): Likewise. - (JPEG_MARKER_RST1): Likewise. - (JPEG_MARKER_RST2): Likewise. - (JPEG_MARKER_RST3): Likewise. - (JPEG_MARKER_RST4): Likewise. - (JPEG_MARKER_RST5): Likewise. - (JPEG_MARKER_RST6): Likewise. - (JPEG_MARKER_RST7): Likewise. - (grub_jpeg_data): New fields dri, r1, bitmap_ptr. - (grub_jpeg_decode_dri): New function. - (grub_jpeg_decode_sos): Move image data related part into - grub_jpeg_decode_data function. - (grub_jpeg_decode_data): New function. - (grub_jpeg_reset): New function. - (grub_jpeg_decode_jpeg): Handle new markers. - -2011-06-23 Vladimir Serbinenko - - * util/ieee1275/ofpath.c (check_sas): Close fd. - (main): Free of_path. - Reported by: David Volgyes . - -2011-06-23 Vladimir Serbinenko - - * util/grub-mkpasswd-pbkdf2.c (main): Don't double-close. - Reported by: David Volgyes . - -2011-06-23 Vladimir Serbinenko - - * grub-core/kern/emu/hostdisk.c (grub_util_biosdisk_is_floppy): Close - file after stat. - Reported by: David Volgyes . - -2011-06-23 Vladimir Serbinenko - - * util/raid.c (grub_util_raid_getmembers): Close fd before returning. - - Reported by: David Volgyes . - -2011-06-23 Vladimir Serbinenko - - * grub-core/lib/reed_solomon.c (rs_recover) [STANDALONE]: - Prevent memory leak. - -2011-06-23 Vladimir Serbinenko - - * grub-core/lib/reed_solomon.c (rs_recover): Prevent memory leak. - (main): Close file. - Reported by: David Volgyes . - -2011-06-23 Vladimir Serbinenko - - * grub-core/loader/i386/xnu.c (grub_cpu_xnu_fill_devprop): Don't attempt - to continue if allocation is failed. - - Reported by: David Volgyes . - -2011-06-23 David Volgyes - - * grub-core/bus/usb/ohci.c (grub_ohci_pci_iter): Avoid NULL-pointer - dereference. - -2011-06-23 Vladimir Serbinenko - - Fix spurious warning. - - * grub-core/partmap/acorn.c (grub_acorn_boot_block): Make a union. - (acorn_partition_map_find): Use .bin member. - -2011-06-23 Vladimir Serbinenko - - * grub-core/kern/emu/getroot.c (grub_guess_root_device): Don't accept - /dev/root as a valid device. - -2011-06-23 Jim Meyering - - Avoid NULL deref in grub_device_open. - - * grub-core/kern/device.c (grub_device_open): Don't dereference - a NULL pointer upon failed grub_env_get. - -2011-06-23 Vladimir Serbinenko - - Support non-512B sectors and agglomerate reads. - - * Makefile.util.def (libgrubmods.a): Add grub-core/commands/testload.c. - * grub-core/disk/efi/efidisk.c (grub_efidisk_data): Remove disk_io. - (disk_io_guid): Removed. - (make_devices): Locate solely by BlockIO. - (grub_efidisk_open): Fill log_sector_size and total_sectors. - (grub_efidisk_read): Use read_blocks. - (grub_efidisk_write): Use write_blocks. - * grub-core/disk/i386/pc/biosdisk.c (grub_biosdisk_open): Fill - log_sector_size. - (get_safe_sectors): Handle non-512B sectors. - (grub_biosdisk_read): Remove special CDROM handling. Handle non-512B - sectors. - (grub_biosdisk_write): Handle non-512B sectors. - * grub-core/disk/scsi.c (grub_scsi_open): Fill log_sector_size. - (grub_scsi_read): Remove special non-512B block handling (now handled - one level up). - * grub-core/kern/disk.c (grub_disk_open): Fill default log_sector_size - and do sanity checks. - (grub_disk_adjust_range): Handle non-512B sectors. - (transform_sector): New function. - (grub_disk_read_small): Likewise. - (grub_disk_read): Rewritten. - (grub_disk_write): Handle non-512B sectors. - * grub-core/kern/emu/hostdisk.c (grub_util_biosdisk_open): Fill - log_sector_size. - (open_device): Use log_sector_size. - (grub_util_biosdisk_read): Likewise. - (grub_util_biosdisk_write): Likewise. - * grub-core/partmap/msdos.c (grub_partition_msdos_iterate): Handle - non-512B sectors. - (pc_partition_map_embed): Likewise. - * include/grub/disk.h (grub_disk): New field log_sector_size. - (GRUB_DISK_CACHE_SIZE): Redefined from GRUB_DISK_CACHE_BITS. - (GRUB_DISK_CACHE_BITS): Increased to 6. - * util/grub-fstest.c (fstest): New command testload. - (argp_parser): Likewise. - -2011-06-16 Robert Millan - - Detect `ataraid' devices on GNU/kFreeBSD. Fix for ATA devices using - `ata' driver on kernel of FreeBSD 9. - - * util/deviceiter.c [__FreeBSD_kernel__] (get_ada_disk_name) - (get_ataraid_disk_name): New functions. - [__FreeBSD_kernel__] (grub_util_iterate_devices): Scan for ataraid - (/dev/ar[0-9]+) and ada (/dev/ada[0-9]+) devices using - get_ataraid_disk_name() and get_ada_disk_name(). - -2011-06-13 Colin Watson - - * docs/man/grub-mklayout.h2m (DESCRIPTION): Add a reference to the - input format. - -2011-05-29 Colin Watson - - * docs/grub.texi (Obtaining and Building GRUB): Substitute - `ftp.gnu.org' for `alpha.gnu.org'. - -2011-05-27 Colin Watson - - * grub-core/kern/emu/hostdisk.c (linux_find_partition): Handle - partitions under /dev/disk/by-id/. - -2011-05-27 Colin Watson - - * grub-core/kern/emu/hostdisk.c (linux_find_partition): Give up - after ten consecutive open failures. Scanning all the way up to - 10000 is excessive and can cause serious performance problems in - some configurations. - Fixes Ubuntu bug #787461. - -2011-05-21 Vladimir Serbinenko - - * grub-core/disk/arc/arcdisk.c (reopen): Close old handle before - opening new one. - -2011-05-21 Colin Watson -2011-05-21 Vladimir Serbinenko - - Don't stat devices unless we have to. - - * grub-core/kern/emu/getroot.c (grub_find_device): Recognize - dir == /dev/mapper. - (grub_guess_root_device): Use already known os_dev if possible. - * grub-core/kern/emu/hostdisk.c - (convert_system_partition_to_system_disk): Scan only in /dev/mapper - if device is known to be a dm one. - -2011-05-20 Colin Watson - - * util/grub-mkconfig.in: Export GRUB_CMDLINE_LINUX_XEN_REPLACE and - GRUB_CMDLINE_LINUX_XEN_REPLACE_DEFAULT. - Reported by: Pawel Tecza. - -2011-05-19 Vladimir Serbinenko - - * grub-core/Makefile.core.def (lsacpi): Fix ia64 mismerge. - (lsefisystab): Likewise. - (lssal): Likewise. - (lsefimmap): Likewise. - (hdparm): Enable on qemu-mips. - (setjmp): Add ia64 nodist. - (serial): Simplify tags. - -2011-05-18 Colin Watson - - * Makefile.util.def (grub-ofpathname): Install manual page. - -2011-05-18 Colin Watson - - * grub-core/fs/squash4.c: Add missing GRUB_MOD_LICENSE. - -2011-05-18 Colin Watson - - * .bzrignore: Add grub-core/modinfo.sh and a number of test files. - -2011-05-18 Vladimir Serbinenko - - * grub-core/bus/usb/usbhub.c (poll_nonroot_hub): Downgrade a printf - into dprintf. - -2011-05-18 Vladimir Serbinenko - - Use full 64-bit division. - - * grub-core/kern/misc.c (grub_divmod64_full): Renamed to ... - (grub_divmod64): ... this. - * include/grub/misc.h (grub_divmod64): Removed. All users switch to full - version. - -2011-05-18 Colin Watson - - * util/grub-mkrescue.in: Use portable `.' rather than non-portable - `source'. - -2011-05-18 Colin Watson - - * grub-core/genmod.sh.in: Use 'set -e' rather than '#! /bin/sh -e', - to avoid accidents when debugging with 'sh -x'. - * grub-core/gensyminfo.sh.in: Likewise. - * tests/example_scripted_test.in: Likewise. - * tests/grub_cmd_regexp.in: Likewise. - * tests/grub_script_blanklines.in: Likewise. - * tests/grub_script_dollar.in: Likewise. - * tests/grub_script_expansion.in: Likewise. - * tests/grub_script_final_semicolon.in: Likewise. - * tests/partmap_test.in: Likewise. - * tests/util/grub-shell-tester.in: Likewise. - * tests/util/grub-shell.in: Likewise. - -2011-05-18 Colin Watson - - Move gfxmenu color handling to video, so that gfxterm can use it - too. - - * grub-core/gfxmenu/named_colors.c: Move to ... - * grub-core/video/colors.c: ... here. Rename - grub_gui_get_named_color to grub_video_get_named_color. - * grub-core/gfxmenu/gui_string_util.c (my_isxdigit): Move to ... - * grub-core/video/colors.c (my_isxdigit): ... here. - * grub-core/gfxmenu/gui_string_util.c (parse_hex_color_component): - Move to ... - * grub-core/video/colors.c (parse_hex_color_component): ... here. - * grub-core/gfxmenu/gui_string_util.c (grub_gui_parse_color): Move - to ... - * grub-core/video/colors.c (grub_video_parse_color): ... here. - - * include/grub/gui.h (grub_gui_color_t): Move to ... - * include/grub/video.h (grub_video_rgba_color_t): ... here. - * include/grub/gui.h (grub_gui_color_rgb): Move to ... - * include/grub/video.h (grub_video_rgba_color_rgb): ... here. - * include/grub/gui.h (grub_gui_map_color): Move to ... - * include/grub/video.h (grub_video_map_rgba_color): ... here. - * include/grub/gui_string_util.h (grub_gui_get_named_color): Move - to ... - * include/grub/video.h (grub_video_get_named_color): ... here. - * include/grub/gui_string_util.h (grub_gui_parse_color): Move to ... - * include/grub/video.h (grub_video_parse_color): ... here. - - * grub-core/Makefile.core.def (kernel) [videoinkernel]: Add - video/colors.c. - (gfxmenu): Remove gfxmenu/named_colors.c. - (video) [videomodules]: Add video/colors.c. - - Add a background_color command. - - * grub-core/term/gfxterm.c (grub_gfxterm_background_color_cmd): New - function. - (GRUB_MOD_INIT): Register background_color command. - (GRUB_MOD_FINI): Unregister background_color command. - (redraw_screen_rect): Allow blend/replace of text layer to be - controlled independently from whether there is a background bitmap. - (grub_gfxterm_background_image_cmd): Change blend_text_bg when - changing bitmap. - -2011-05-18 Vladimir Serbinenko - - Patch BPB in ntldr and chainloader --bpb. - - * grub-core/fs/fat.c: Include grub/fat.h. - (grub_fat_bpb): Moved to ... - * include/grub/fat.h (grub_fat_bpb): ... here. New file. - * grub-core/loader/i386/pc/chainloader.c: Include grub/fat.h and - grub/ntfs.h. - * include/grub/i386/pc/chainloader.h (grub_chainloader_flags_t): - Moved from here... - * grub-core/loader/i386/pc/chainloader.c (grub_chainloader_flags_t): ... - here. - * grub-core/loader/i386/pc/chainloader.c (grub_chainloader_patch_bpb): - New function. - (grub_chainloader_cmd): Patch BPB if --bpb is given. - (GRUB_MOD_INIT): Show --bpb. - * grub-core/loader/i386/pc/ntldr.c (grub_cmd_ntldr): Patch BPB. - * grub-core/normal/main.c (features): New variable. - (GRUB_MOD_INIT): Set feature_* variables. - * include/grub/i386/pc/chainloader.h (grub_chainloader_patch_bpb): New - proto. - * include/grub/ntfs.h (grub_ntfs_bpb): New field bios_drive. - -2011-05-18 Vladimir Serbinenko - - * grub-core/Makefile.core.def (ieee1275_fb): Use enable=powerpc_ieee1275 - for cleanness. - -2011-05-18 Vladimir Serbinenko - - FreeDOS direct loading support. - - * docs/grub.texi (Supported OS): Add FreeDOS. - * grub-core/Makefile.core.def (freedos): New module. - * grub-core/lib/i386/relocator.c (grub_relocator16_ebx): New extern - variable. - (grub_relocator16_boot): Handle %ebx. - * grub-core/lib/i386/relocator16.S: Likewise. - * grub-core/loader/i386/pc/freedos.c: New file. - -2011-05-18 Vladimir Serbinenko - - Long Linux command line support. - - * grub-core/loader/i386/linux.c (GRUB_LINUX_CL_END_OFFSET): Removed. - (maximal_cmdline_size): New variable. - (allocate_pages): Use maximal_cmdline_size. - (grub_cmd_linux): Set and use maximal_cmdline_size. - * grub-core/loader/i386/pc/linux.c (GRUB_LINUX_CL_END_OFFSET): Removed. - (allocate_pages): Use maximal_cmdline_size. - (grub_cmd_linux): Set and use maximal_cmdline_size. - * include/grub/i386/linux.h (GRUB_LINUX_SETUP_MOVE_SIZE): Removed. - (linux_kernel_header): Add fields kernel_alignment, relocatable, pad - and cmdline_size. - -2011-05-18 Vladimir Serbinenko -2011-05-18 Colin Watson - - Improve devmapper support - - * grub-core/kern/emu/getroot.c (grub_util_is_dmraid): Removed. - (grub_util_is_lvm): New function. - (grub_util_get_dev_abstraction): Assume dmraid if not lvm rather - than lvm if not dmraid. - Handle mapped md nodes. - * grub-core/kern/emu/hostdisk.c (device_is_mapped): Rename to ... - (grub_util_device_is_mapped): ... this. Make always available. All users - updated. - (grub_util_get_dm_node_linear_info) [HAVE_DEVICE_MAPPER]: New function. - (convert_system_partition_to_system_disk): Handle lvm, mpath and - dmraid nodes. - * include/grub/emu/misc.h (grub_util_device_is_mapped): New proto. - -2011-05-18 Vladimir Serbinenko - - Unify grub-mkrescue (except powerpc) and grrub-mknetdir across platforms - - * grub-core/Makefile.am (platform_DATA): Add modinfo.sh. - * grub-core/modinfo.sh.in: New file. - * grub-core/Makefile.core.def (modinfo.sh): New script. - * util/grub-mknetdir.in: Use modinfo.sh. - * util/grub-mkrescue.in: Likewise. - -2011-05-17 Vladimir Serbinenko - - * grub-core/kern/ia64/dl_helper.c (grub_ia64_dl_get_tramp_got_size): - Fix potential usage of Elf32 instead of Elf64 when compiling on - 32-bit architecture. Add endianness macros while on it. - -2011-05-17 Vladimir Serbinenko - - Use mipsel- rather than mips- in directories involving mipsel ports to - allow both endiannesses coexist. - - * configure.ac: proparate target_cpu=mipsel rather than resetting to - mips. All conditions adjusted. - * tests/util/grub-shell-tester.in: Remove gratuitious target_cpu - variable. - * util/grub-install.in: Adjust conditions to take renaming into account. - * util/grub-mkimage.c (image_targets): Likewise. New target - mips-qemu_mips-elf for bigendian mips. - -2011-05-17 Vladimir Serbinenko - - Avoid unnecessary copying on MIPS. - - * grub-core/boot/decompressor/none.c (grub_decompress_core): Exit - early if src == dest. - * util/grub-mkimage.c (generate_image): Arange for src == dest if - compression is none. - -2011-05-17 Vladimir Serbinenko - - Reduce memory footprint on SGI by putting modules before the kernel - as opposed to after. - - * grub-core/Makefile.core.def (kernel): Increase linking address. - (none_decompress): Likewise. - (xz_decompress): Likewise. - * grub-core/boot/mips/startup_raw.S: Use prewritten uncompression - address. - * grub-core/kern/mips/arc/init.c (grub_machine_init): Handle memory - layout change. - (grub_arch_modules_addr): New function. - * grub-core/kern/mips/init.c (grub_arch_modules_addr): Moved from here... - * grub-core/kern/mips/loongson/init.c (grub_arch_modules_addr): .. here - * grub-core/kern/mips/qemu_mips/init.c (grub_arch_modules_addr): ... and - here. - * grub-core/kern/mips/startup.S (total_size): Rename to ... - (grub_total_modules_size): ... this. Make global. - [GRUB_MACHINE_ARC]: Don't attempt to move modules out of the bss. - * include/grub/offsets.h (GRUB_KERNEL_MIPS_LOONGSON_UNCOMPRESSED_ADDR): - New definition. - (GRUB_KERNEL_MIPS_QEMU_MIPS_UNCOMPRESSED_ADDR): Likewise. - (GRUB_KERNEL_MIPS_ARC_UNCOMPRESSED_ADDR): Likewise. - (GRUB_KERNEL_MACHINE_UNCOMPRESSED_ADDR): Likewise. - (GRUB_KERNEL_MIPS_ARC_LINK_ADDR): Increased. - * util/grub-mkimage.c (image_target_desc): New flag - PLATFORM_FLAGS_MODULES_BEFORE_KERNEL. - (image_targets): Set PLATFORM_FLAGS_MODULES_BEFORE_KERNEL on mips-arc. - (generate_image): Handle images with modules before kernel. - -2011-05-17 Vladimir Serbinenko - - Prevent potential loss of memory map by overwrite on qemu-mips. - - * grub-core/boot/mips/startup_raw.S [GRUB_MACHINE_MIPS_QEMU_MIPS]: - Save ram size in $s4. - * grub-core/kern/mips/qemu_mips/init.c (RAMSIZE): Removed. - All users changed to grub_arch_memsize. - * grub-core/kern/mips/startup.S (grub_arch_machine): Restrict to - Loongson. - [GRUB_MACHINE_MIPS_QEMU_MIPS]: Save grub_arch_memsize. - * grub-core/loader/mips/linux.c (grub_linux_boot): Pass memory size. - * include/grub/mips/qemu_mips/memory.h (grub_arch_memsize): New - external variable. - -2011-05-17 Colin Watson - - * .bzrignore: Remove grub-dumpbios. - -2011-05-17 Colin Watson - - * util/grub.d/20_linux_xen.in: Honour GRUB_CMDLINE_LINUX_XEN_REPLACE - and GRUB_CMDLINE_LINUX_XEN_REPLACE_DEFAULT, which replace - GRUB_CMDLINE_LINUX and GRUB_CMDLINE_LINUX_DEFAULT (complementing the - existing options which append). - * docs/grub.texi (Simple configuration): Document new options. - Reported by: Ian Jackson. Fixes Debian bug #617538. - -2011-05-17 Colin Watson - - * util/grub-fstest.c (cmd_cat): New function. - (fstest): Handle CMD_CAT. - (options): Add cat. - (argp_parser): Handle cat. - -2011-05-17 Colin Watson - - * Makefile.util.def (grub-bin2h): Don't install. - * docs/man/grub-bin2h.h2m: Remove. - -2011-05-17 Vladimir Serbinenko - - * grub-core/kern/mips/startup.S (grub_arch_cpuclock): Move to the right - place. - -2011-05-17 Vladimir Serbinenko - - Reenable qemu-mips port. - - * configure.ac: Handle --target=qemu-mips and --target=qemu_mips. - Fix small arc bug while on it. - * gentpl.py: Handle qemu_mips. - * grub-core/Makefile.am: Likewise. - * grub-core/Makefile.core.def: Likewise. - * grub-core/disk/ata.c [GRUB_MACHINE_MIPS_QEMU_MIPS]: Remove - inappropriate includes. - (grub_ata_pciinit) [GRUB_MACHINE_MIPS_QEMU_MIPS]: Removed. - (grub_ata_initialize): [GRUB_MACHINE_MIPS_QEMU_MIPS]: Rewritten. - * grub-core/kern/main.c (grub_modules_get_end) - [GRUB_MACHINE_MIPS_QEMU_MIPS]: Enable. - * grub-core/kern/mips/qemu-mips: Moved to .. - * grub-core/kern/mips/qemu_mips: ... this. - * grub-core/kern/mips/qemu_mips/init.c (grub_get_rtc): Removed. - (grub_machine_init): Call terminfo_init and serial_init. - * grub-core/kern/mips/startup.S: Change MIPS_LOONGSON to MACHINE. - * grub-core/loader/mips/linux.c (params) [GRUB_MACHINE_MIPS_QEMU_MIPS]: - New variable. - (grub_linux_boot) [GRUB_MACHINE_MIPS_QEMU_MIPS]: Handle the qemu-mips - parameter passing. - (grub_linux_unload) [GRUB_MACHINE_MIPS_QEMU_MIPS]: Free params. - (grub_cmd_linux) [GRUB_MACHINE_MIPS_QEMU_MIPS]: Handle params. - (grub_cmd_initrd) [GRUB_MACHINE_MIPS_QEMU_MIPS]: Likewise. - * include/grub/mips/qemu_mips/cmos.h: New file. - * include/grub/mips/qemu-mips/kernel.h: Don't include cpu/kernel.h. - * include/grub/mips/qemu-mips/memory.h (grub_machine_mmap_iterate): - Removed. - * include/grub/mips/qemu-mips/serial.h (GRUB_MACHINE_SERIAL_PORTS): - Use correct mips-style address. - * include/grub/mips/qemu-mips/time.h: Include cpu/time.h. - (GRUB_TICKS_PER_SECOND): Removed. - (grub_get_rtc): Likewise. - (grub_cpu_idle): Likewise. - * include/grub/offsets.h (GRUB_KERNEL_MIPS_QEMU_MIPS_LINK_ADDR): - New definition. - (GRUB_KERNEL_MIPS_QEMU_MIPS_LINK_ALIGN): Likewise. - (GRUB_KERNEL_MIPS_QEMU_MIPS_COMPRESSED_SIZE): Likewise. - (GRUB_KERNEL_MIPS_QEMU_MIPS_UNCOMPRESSED_SIZE): Likewise. - (GRUB_KERNEL_MIPS_QEMU_MIPS_TOTAL_MODULE_SIZE): Likewise. - (GRUB_KERNEL_MIPS_QEMU_MIPS_PREFIX): Likewise. - (GRUB_KERNEL_MIPS_QEMU_MIPS_PREFIX_END): Likewise. - (GRUB_KERNEL_MIPS_QEMU_MIPS_MOD_ALIGN): Likewise. - * util/grub-mkimage.c (image_targets): Add mipsel-qemu_mips-elf. - -2011-05-17 Vladimir Serbinenko - - SGI ARCS port. - - * Makefile.util.def (libgrubmods.a): Add dvh.c. - * conf/Makefile.common (CCASFLAGS_PLATFORM): Add -mips3 on all mips - platforms. - * configure.ac: New target mips-arc. - * gentpl.py: Likewise. - * grub-core/Makefile.am: Likewise. - * grub-core/Makefile.core.def: Likewise. - (xz_decompress): Remove -D GRUB_MACHINE_LINK_ADDR. - (none_decompress): Likewise. - (lsdev): New module. - (datetime): Use lib/arc/datetime.c on ARC. - (part_dvh): New module. - * grub-core/commands/arc/lsdev.c: New file. - * grub-core/disk/arc/arcdisk.c: Likewise. - * grub-core/kern/mips/arc/init.c: Likewise. - * grub-core/kern/mips/cache_flush.S: Don't flush non 4-byte - aligned addresses. - * grub-core/kern/mips/dl.c (grub_arch_dl_check_header): Fix bigendian - support. - (grub_arch_dl_relocate_symbols): Likewise. - * grub-core/kern/mips/loongson/init.c (grub_get_rtc): Moved from here... - * grub-core/kern/mips/init.c (grub_get_rtc): ... here. - * grub-core/kern/mips/startup.S (grub_arch_cpuclock): Have on all - platforms. - * grub-core/lib/arc/datetime.c: New file. - * grub-core/loader/mips/linux.c: Always include time.h. Don't include - pci.h on non-loongson. - (envp_off) [!GRUB_MACHINE_MIPS_LOONGSON]: Remove. - (grub_linux_boot): Set unused registers to 0. - (grub_cmd_linux) [!GRUB_MACHINE_MIPS_LOONGSON]: Remove envp. - * grub-core/mmap/mips/loongson/uppermem.c: Moved from here ... - * grub-core/mmap/mips/uppermem.c: ...here. - * grub-core/partmap/dvh.c: New file. - * grub-core/term/arc/console.c: Likewise. - * grub-core/term/terminfo.c (ANSI_C0_STR): New const. - (grub_terminfo_set_current): Add terminal "arc". - (grub_terminfo_readkey): Support ARC sequences. - * include/grub/arc/arc.h: New file. - * include/grub/arc/console.h: Likewise. - * include/grub/disk.h (grub_disk_dev_id): Add - GRUB_DISK_DEVICE_ARCDISK_ID. - * include/grub/mips/arc/kernel.h: New file. - * include/grub/mips/arc/memory.h: Likewise. - * include/grub/mips/arc/time.h: Likewise. - * include/grub/mips/loongson/kernel.h (grub_halt): Moved from here ... - * include/grub/mips/kernel.h (grub_halt): ... here. - * include/grub/mips/loongson.h (GRUB_CPU_REGISTER_WRAP): Moved from - here... - * include/grub/mips/mips.h (GRUB_CPU_REGISTER_WRAP): ... here. - (GRUB_CPU_LOONGSON_COP0_TIMER_COUNT): Moved from here ... - * include/grub/mips/mips.h (GRUB_CPU_LOONGSON_COP0_TIMER_COUNT): .. here - * include/grub/mips/loongson/kernel.h (grub_reboot): Removed redundant - proto. - * include/grub/mips/loongson/memory.h (GRUB_ARCH_LOWMEMVSTART): Moved - from here ... - * include/grub/mips/memory.h (GRUB_ARCH_LOWMEMVSTART): ... here. - (GRUB_ARCH_LOWMEMPSTART): Moved from here ... - * include/grub/mips/memory.h (GRUB_ARCH_LOWMEMPSTART): ... here. - (GRUB_ARCH_LOWMEMMAXSIZE): Moved from here ... - * include/grub/mips/memory.h (GRUB_ARCH_LOWMEMMAXSIZE): ... here. - (GRUB_ARCH_HIGHMEMPSTART): Moved from here ... - * include/grub/mips/memory.h (GRUB_ARCH_HIGHMEMPSTART): ... here. - (grub_phys_addr_t): Moved from here ... - * include/grub/mips/memory.h (grub_phys_addr_t): ... here. - (grub_vtop): Moved from here ... - * include/grub/mips/memory.h (grub_vtop): ... here. - (grub_map_memory): Moved from here ... - * include/grub/mips/memory.h (grub_map_memory): ... here. - (grub_unmap_memory): Moved from here ... - * include/grub/mips/memory.h (grub_unmap_memory): ... here. - (grub_machine_mmap_iterate): Moved from here ... - * include/grub/mips/memory.h (grub_machine_mmap_iterate): ... here. - (grub_mmap_get_lower): Moved from here ... - * include/grub/mips/memory.h (grub_mmap_get_lower): ... here. - (grub_mmap_get_upper): Moved from here ... - * include/grub/mips/memory.h (grub_mmap_get_upper): ... here. - * include/grub/mips/loongson/time.h (grub_arch_cpuclock): Moved from - here ... - * include/grub/mips/time.h (grub_arch_cpuclock): ... here. - * include/grub/mips/loongson/time.h (grub_get_rtc): Moved from - here ... - * include/grub/mips/time.h (grub_get_rtc): ... here. - * include/grub/mips/loongson/time.h (grub_arch_cpuclock): Moved from - here ... - * include/grub/mips/time.h (grub_arch_cpuclock): ... here. - * include/grub/mips/loongson/time.h (grub_cpu_idle): Moved from - here ... - * include/grub/mips/time.h (grub_cpu_idle): ... here. - * include/grub/offsets.h (GRUB_KERNEL_MIPS_ARC_LINK_ADDR): New - definition. - (GRUB_KERNEL_MIPS_ARC_LINK_ALIGN): Likewise. - (GRUB_KERNEL_MIPS_ARC_COMPRESSED_SIZE): Likewise. - (GRUB_KERNEL_MIPS_ARC_UNCOMPRESSED_SIZE): Likewise. - (GRUB_KERNEL_MIPS_ARC_TOTAL_MODULE_SIZE): Likewise. - (GRUB_KERNEL_MIPS_ARC_PREFIX): Likewise. - (GRUB_KERNEL_MIPS_ARC_PREFIX_END): Likewise. - (GRUB_KERNEL_MIPS_ARC_MOD_ALIGN): Likewise. - (GRUB_MACHINE_LINK_ADDR): Likewise. - * include/grub/terminfo.h (GRUB_TERMINFO_READKEY_MAX_LEN): Increased - to 6. - * util/grub-install.in: Run dvhtool on ARC. - * util/grub-mkimage.c (image_targets): Add mips-arc. - (generate_image): Handle ECOFF output for mips-arc. - -2011-05-16 Vladimir Serbinenko - - * grub-core/bus/pci.c (grub_memalign_dma32): Always allocate in 64-byte - blocks. - -2011-05-16 Vladimir Serbinenko - - * grub-core/bus/usb/usbhub.c (attach_root_port): Wait 10ms - after enabling port. - -2011-05-16 Vladimir Serbinenko - - Skip incorrect USB devices. - - * grub-core/bus/usb/usb.c (grub_usb_device_initialize): Fail if - configcnt == 0. - * include/grub/usb.h (grub_usb_err_t): New enum value - GRUB_USB_ERR_BADDEVICE. - -2011-05-16 Vladimir Serbinenko - - Fuloong video init support. - - * include/grub/vga.h (grub_vga_write_arx): inb monochrome address as - well. - (grub_vga_read_arx): New function. - * grub-core/video/sis315pro.c (GRUB_SIS315PRO_MMIO_SPACE): New - definition. - (framebuffer): New members io, mmioptr and mmiobase. - (read_sis_cmd): New function. - (write_sis_cmd): Likewise. - (grub_video_sis315pro_setup): Do the initialisation. Use 640x480 - rather than 640x400. - * grub-core/video/sis315_init.c: New file. - -2011-05-15 Vladimir Serbinenko - - * grub-core/bus/cs5536.c: Don't include grub/machine/kernel.h on - non-loongson. - * grub-core/kern/mips/dl.c (grub_arch_dl_init_linker): Fix argument - to grub_dl_register_symbol. - -2011-05-15 Vladimir Serbinenko - - Fix compilation errors. - - * grub-core/term/ns8250.c (serial_get_divisor): Declare 'port' as - potentially unused. - * grub-core/loader/i386/linux.c (grub_linux_setup_video): - Handle GRUB_VIDEO_DRIVER_SIS315PRO. - * grub-core/bus/cs5536.c (grub_cs5536_init_geode): Restrict DIVIL init - to loongson machines. - -2011-05-15 Vladimir Serbinenko - - Several FS mtime support. - - * grub-core/fs/affs.c (grub_affs_time): New struct. - (grub_affs_file): New field mtime. - (grub_fshelp_node): Changed 'block' and 'parent' to more appropriate - type. Removed 'size'. New field 'di'. All users updated. - (grub_affs_mount): Simplify checsum checking. - (grub_affs_iterate_dir): New helper grub_affs_create_node. - (grub_affs_dir): Handle mtime. - * grub-core/fs/cpio.c (grub_cpio_find_file): Handle mtime. - (grub_cpio_dir): Likewise. - * grub-core/fs/hfs.c (grub_hfs_dirrec): New fields 'ctime' and 'mtime'. - (grub_hfs_filerec): New field mtime. - (grub_hfs_dir): Handle mtime. - (grub_hfs_mtime): New function. - (grub_hfs_fs): Register grub_hfs_mtime. - * grub-core/fs/iso9660.c (grub_iso9660_date2): New struct. - (grub_iso9660_dir): New field mtime. - (grub_fshelp_node): New field dirent. - (iso9660_to_unixtime): New function. - (iso9660_to_unixtime2): Likewise. - (grub_iso9660_read_symlink): Use node->dirent. - (grub_iso9660_iterate_dir): Likewise. - (grub_iso9660_dir): Set mtime. - (grub_iso9660_mtime): New function. - (grub_iso9660_fs): Register grub_iso9660_mtime. - * grub-core/fs/jfs.c (grub_jfs_time): New struct. - (grub_jfs_inode): New fields atime, ctime and mtime. - (grub_jfs_dir): Set mtime. - * grub-core/fs/minix.c (grub_minix_dir): Likewise. - * grub-core/fs/ntfs.c (list_file): Set mtime. - (grub_ntfs_dir): Likewise. - * grub-core/fs/reiserfs.c (grub_fshelp_node): New field 'mtime'. - (grub_reiserfs_iterate_dir): Set mtime. - (grub_reiserfs_dir): Likewise. - * grub-core/fs/sfs.c (grub_sfs_obj): New field mtime. - (grub_fshelp_node): Likewise. - (grub_sfs_iterate_dir): Set mtime. - (grub_sfs_dir): Likewise. - * grub-core/fs/udf.c (grub_udf_dir): Set mtime. - * grub-core/fs/xfs.c (grub_xfs_time): New struct. - (grub_xfs_inode): New fields atime, mtime, ctime. - (grub_xfs_dir): Set mtime. - * include/grub/datetime.h (grub_datetime2unixtime): New function. - * include/grub/hfs.h (grub_hfs_sblock): New fields ctime and mtime. - * include/grub/ntfs.h (grub_fshelp_node): New field mtime. - - Support UDF symlinks. - - * grub-core/fs/udf.c (grub_udf_iterate_dir): Handle symlinks. - (grub_ufs_read_symlink): New function. All users updated. - - Check amiga partmap checksum. - - * grub-core/partmap/amiga.c (grub_amiga_rdsk): Pad to 128 bytes. - (grub_amiga_partition): Likewise. - (amiga_partition_map_checksum): New function. - (amiga_partition_map_iterate): Check checksum. - -2011-05-15 Vladimir Serbinenko - - ROMFS support. - - * Makefile.util.def (libgrubmods.a): Add romfs. - * grub-core/Makefile.core.def (romfs): New module. - * grub-core/fs/romfs.c: New file. - -2011-05-15 Vladimir Serbinenko - - Squashfs v4 support. - - * Makefile.util.def (libgrubmods.a): Add squash4. - * grub-core/Makefile.core.def (squash4): New module. - * grub-core/fs/squash4.c: New file. - * grub-core/io/gzio.c (grub_gzio): New members disk_input_off, - disk_input_start, disk_input. - (get_byte): Handle disk_input. - (grub_zlib_disk_read): New function. - * include/grub/deflate.h (grub_zlib_disk_read): New proto. - -2011-05-15 Vladimir Serbinenko -2011-05-15 Feiran Zheng - - * Makefile.util.def (libgrubmods.a): Add minix3. - * grub-core/Makefile.core.def (minix3): New module. - * grub-core/fs/minix.c (GRUB_MINIX_MAGIC) [MODE_MINIX3]: New value. - (GRUB_MINIX_BSIZE): Removed. - (GRUB_MINIX_INODE_DIR_BLOCKS): New definition. All users updated. - (grub_minix_ino_t): New type. - (grub_minix_le_to_cpu_ino): New macro. - (GRUB_MINIX_ZONE2SECT): New definition. All users updated. - (grub_minix_sblock) [MODE_MINIX3]: Change for minix3. - (grub_minix_data): New field block_size. - (grub_minix_read_file): Handle 64-bit correctly. - * grub-core/fs/minix3.c: New file. - -2011-05-15 Tristan Gingold -2011-05-15 Robert Millan -2011-05-15 Vladimir Serbinenko - - IA64 support. - - * Makefile.util.def (libgrubmods.a): Add grub-core/kern/ia64/dl_helper.c - * configure.ac: Add ia64-efi target. - Probe for __ia64_trampoline, __udivsi3, __umoddi3, __udivdi3, - __divsi3, __modsi3, __umodsi3, __moddi3 and __divdi3 symbols. - * gentpl.py: Add ia64_efi platform. - Rename x86_efi to efi and Add ia64-efi. All users updated. - * grub-core/Makefile.am: Set KERNEL_HEADER_FILES for ia64-efi. - * grub-core/Makefile.core.def (kernel.img): Add compile flags for ia64. - Remove kern/generic/rtc_get_time_ms.c on EFI. - Add kern/ia64/efi/startup.S, kern/ia64/efi/init.c, kern/ia64/dl.c, - kern/ia64/dl_helper.c on ia64-efi. - Add kern/emu/cache.c on emu. - (linux): Use on loader/ia64/efi/linux.c on ia64. - * grub-core/gensymlist.sh (grub_register_exported_symbols): Check - whether symbol is a function. - * grub-core/kern/dl.c [GRUB_MACHINE_EMU]: Include sys/mman.h. - (grub_symbol): New field 'isfunc'. - (grub_dl_resolve_symbol): Return whole symbol rather than just address. - (grub_dl_register_symbol): New argument 'isfunc'. All users updated. - (grub_dl_load_segments): Place all sections into the same region. - [__ia64__]: Create trampolines and got. - [GRUB_MACHINE_EMU]: Call mprotect. - (grub_dl_resolve_symbols): Resolve symbol type as well. - [__ia64__]: Create function descriptors. - * grub-core/kern/efi/efi.c (grub_get_rtc): Renamed to ... - (grub_rtc_get_time_ms): ... this. Expressions simplified. - (grub_get_rtc): New function. - * grub-core/kern/emu/cache.c [__ia64__]: New file. - * grub-core/kern/emu/cache.S: Renamed to ... - * grub-core/kern/emu/cache_s.S: ... this. - [__ia64__]: Add a nop. - * grub-core/kern/emu/full.c (grub_arch_dl_get_tramp_got_size) - [__ia64__]: New function. - * grub-core/kern/emu/lite.c [__ia64__]: Include ../ia64/dl.c. - * grub-core/kern/ia64/dl.c: New file. - * grub-core/kern/ia64/dl_helper.c: Likewise. - * grub-core/kern/ia64/efi/init.c: New file. - * grub-core/kern/ia64/efi/startup.S: Likewise. - * grub-core/lib/efi/halt.c [__ia64__]: Don't try acpi. - * grub-core/lib/ia64/longjmp.S: New file (from glibc). - * grub-core/lib/ia64/setjmp.S: Likewise (from glibc). - * grub-core/lib/setjmp.S [__ia64__]: Include ./ia64/setjmp.S. - * grub-core/loader/ia64/efi/linux.c: New file. - * include/grub/dl.h (GRUB_MOD_NAME): Redefined using C rather than asm. - (GRUB_MOD_DEP): Likewise. - (grub_dl) [__ia64__]: New fields got and tramp. - (grub_dl): New field 'base'. - (grub_dl_register_symbol): New argument isfunc. All users updated. - (GRUB_IA64_DL_TRAMP_ALIGN): New definition. - (GRUB_IA64_DL_TRAMP_SIZE): Likewise. - (GRUB_IA64_DL_GOT_ALIGN): Likewise. - (grub_ia64_dl_get_tramp_got_size): New proto. - (GRUB_ARCH_DL_TRAMP_ALIGN) [__ia64__]: Likewise - (GRUB_ARCH_DL_GOT_ALIGN) [__ia64__]: Likewise - (grub_arch_dl_get_tramp_got_size) [__ia64__]: Likewise - * include/grub/efi/api.h: Skip call wrappers on ia64. - * include/grub/efi/pe32.h (GRUB_PE32_MACHINE_IA64): New definition. - * include/grub/efi/time.h (GRUB_TICKS_PER_SECOND): Change to 1000. - * include/grub/elf.h (ELF_ST_INFO): New definition. - * include/grub/ia64/efi/kernel.h: New file. - * include/grub/ia64/efi/memory.h: Likewise. - * include/grub/ia64/efi/time.h: Likewise. - * include/grub/ia64/kernel.h: Likewise. - * include/grub/ia64/setjmp.h: Likewise (from glibc). - * include/grub/ia64/time.h: New file. - * include/grub/ia64/types.h: Likewise. - * include/grub/libgcc.h (__udivsi3, __umodsi3, __umoddi3, __udivdi3, - __moddi3, __divdi3, __divsi3, __modsi3, __ia64_trampoline): - New protos. - * include/grub/offsets.h (GRUB_KERNEL_IA64_EFI_PREFIX): New definition. - (GRUB_KERNEL_IA64_EFI_PREFIX_END): Likewise. - * include/grub/types.h (PRIxGRUB_ADDR): Likewise. - * util/grub-mkimage.c (image_target_desc): New field pe_target. - All users updated. - (EFI64_HEADER_SIZE): New definition. All users updated. - (image_targets): Add ia64-efi. - * util/grub-mkimagexx.c (relocate_symbols): New arguments jumpers and - jumpers_addr. All users updated. - Create function descriptors. - (count_funcs): New function. - (unaligned_uint32): New struct. - (MASK20): New definition. - (MASK19): Likewise. - (MASKF21): Likewise. - (add_value_to_slot_20b): New function. - (add_value_to_slot_21_real): Likewise. - (add_value_to_slot_21): Likewise. - (ia64_kernel_trampoline): New struct. - (nopm): New variable. - (jump): Likewise. - (make_trampoline): New function. - (relocate_addresses): Handle ia64. - (make_reloc_section): Likewise. - (load_image): Likewise. - -2011-05-15 Vladimir Serbinenko - - * grub-core/fs/btrfs.c (grub_btrfs_read_logical): Silence spurious - warning. Move variables before code while on it. - -2011-05-15 Vladimir Serbinenko - - Fuloong support. - - * configure.ac: Rename yeeloong platform to loongson. All users updated. - * grub-core/Makefile.core.def (fwstart_fuloong): New image. - * grub-core/boot/mips/loongson/fuloong.S: New file. - * grub-core/boot/mips/loongson/fwstart.S: Wait for CS5536 to come up. - Explicitly init CS5536. - [FULOONG]: Don't use serial until CS5536 is available. - Set GPIO based on dumps. - (serial_hw_init) [FULOONG]: Handle CS5536 parts. - [FULOONG]: Handle GPIO and memory controller differences. - Parse machine type in $a2. - * grub-core/boot/mips/startup_raw.S: Determine and save the - architecture. - * grub-core/bus/cs5536.c (gpiodump): Move to fwstart.S. - (grub_cs5536_init_geode): Remove gpio part. Conditionalise DIVIL - init on architecture type. - * grub-core/kern/mips/loongson/init.c (grub_machine_init): Init - SIS315E. Don't init at_keyboard on fuloong. - (grub_halt): Support Fuloong. - * grub-core/kern/mips/startup.S [LOONGSON]: Save $s7. - * grub-core/loader/mips/linux.c (LOONGSON_MACHTYPE): Removed. - (loongson_machtypes): New array. - (grub_cmd_linux) [GRUB_MACHINE_MIPS_LOONGSON]: Pass the right machine - type. - * grub-core/term/ns8250.c (serial_get_divisor): New parameter port and - config. All users updated. Handle CS5536 serial. - * grub-core/term/serial.c (grub_serial_register): Conditionalise - default port on machine type. Register serial as inactive. - * grub-core/video/sis315pro.c: New file. - * include/grub/cs5536.h (GRUB_CS5536_MSR_MAILBOX_CONFIG_ENABLED): New - definition. - (GRUB_CS5536_MSR_MAILBOX_CONFIG): Likewise. - (GRUB_CS5536_MSR_DIVIL_LEG_IO_UART1_COM1): Likewise. - (GRUB_CS5536_MSR_DIVIL_LEG_IO_UART2_COM3): Likewise. - (GRUB_CS5536_MSR_DIVIL_UART1_CONF): Likewise. - (GRUB_CS5536_MSR_DIVIL_UART2_CONF): Likewise. - * include/grub/mips/loongson.h (GRUB_CPU_LOONGSON_SHUTDOWN_GPIO): Rename - to ... - (GRUB_CPU_YEELOONG_SHUTDOWN_GPIO): ... this. - * include/grub/mips/loongson/kernel.h (GRUB_ARCH_MACHINE_YEELOONG): New - definition. - (GRUB_ARCH_MACHINE_FULOONG): Likewise. - (grub_arch_machine): New extern var. - * include/grub/mips/loongson/serial.h - (GRUB_MACHINE_SERIAL_DIVISOR_115200): Renamed to ... - (GRUB_MACHINE_SERIAL_PORT0_DIVISOR_115200): ... this. - (GRUB_MACHINE_SERIAL_PORT): Renamed to ... - (GRUB_MACHINE_SERIAL_PORT0): ... this. - (GRUB_MACHINE_SERIAL_PORT2_DIVISOR_115200): New definition. - (GRUB_MACHINE_SERIAL_PORT1): Likewise. - (GRUB_MACHINE_SERIAL_PORT2): Likewise. - (GRUB_MACHINE_SERIAL_PORTS): Include ports 1 and 2. - * include/grub/term.h (grub_term_register_input_inactive): New inline - function. - (grub_term_register_output_inactive): Likewise. - * include/grub/video.h (grub_video_driver_id): New value - GRUB_VIDEO_DRIVER_SIS315PRO. - * util/grub-mkimage.c (image_target_desc): Rename name to dirname. - New field "names". All users updated. - New field value IMAGE_FULOONG_FLASH. - (generate_image): USe separate fwstart hashes for yeeloong and fuloong. - -2011-05-14 Jordan Uggla - - * docs/grub.texi (Invoking grub-install): Fix additional outdated claims - and add some clarification. - -2011-05-14 Vladimir Serbinenko - - * util/grub.d/10_linux.in: Autoload gzio since it's needed on some - platforms if kernel is compressed. - -2011-05-14 Vladimir Serbinenko - - * grub-core/kern/mm.c (grub_memalign): Disable auto-unloadding of - unused modules since currently referrence counter isn't reliable and - there isn't much memory to recover there anyway. - -2011-05-14 Vladimir Serbinenko - - * grub-core/kern/dl.c (grub_dl_load_file): Decrease ref counter - rather than resetting it to allow modules to reference themselves - in init. - -2011-05-14 Vladimir Serbinenko - - * grub-core/kern/dl.c (grub_dl_unload): Don't decrease reference - counter on dependencies since grub_dl_unref already handles this. - -2011-05-14 Vladimir Serbinenko - - * grub-core/font/font_cmd.c (loadfont_command): Set grub_errno - on error if not already done. - -2011-05-14 Vladimir Serbinenko - - Fix few potential memory misusage. - - * grub-core/font/font.c (load_font_index): Don't free char_index to - avoid double free. - (grub_font_load): Zero-fill font at alloc for safety. - Close file on error. - (free_font): Free bmp_idx. - -2011-05-14 Vladimir Serbinenko - - * docs/grub.texi (Installation): Fix several outdated claims. - -2011-05-14 Vladimir Serbinenko - - Handle module_license on windows. - - * util/grub-pe2elf.c (MODLICENSE_SECTION): New definition. All following - sections shifted. - (insert_string): Make argument const char * instead of char *. - (write_section_data): Handle long section names. - Handle module_license. - -2011-05-14 Vladimir Serbinenko - - * grub-core/commands/menuentry.c (grub_cmd_menuentry): Correctly - handle class-free menuentries. - (grub_normal_add_menu_entry): Add a check to be sure. - -2011-05-14 Vladimir Serbinenko - - * grub-core/term/at_keyboard.c (set1_e0_mapping): Fix swap between - PgUp and PgDown. - -2011-05-13 Vladimir Serbinenko - - * configure.ac: Bump version to 1.99. - -2011-05-13 Vladimir Serbinenko - - Give ATA device a bit more time on first try in order to allow disks - to spin up. - - * grub-core/disk/ata.c (grub_atapi_identify): Use GRUB_ATA_TOUT_DEV_INIT - if dev->present is 1. Reset dev->present on failure. - (grub_ata_device_initialize): Set dev->present to 1. - * include/grub/ata.h (GRUB_ATA_TOUT_DEV_INIT): New value. - (grub_ata_device): New member 'present'. - -2011-05-13 Vladimir Serbinenko - - * util/grub-mkimage.c (generate_image): Update hash. - -2011-05-13 Vladimir Serbinenko - - Flush caches on DMA memory. - - * grub-core/kern/mips/cache.S (grub_arch_sync_dma_caches): New function. - * grub-core/bus/pci.c (grub_memalign_dma32): Flush caches. - (grub_dma_free): Likewise. - * include/grub/cache.h (grub_arch_sync_dma_caches): New declaration. - -2011-05-13 Vladimir Serbinenko - - * grub-core/boot/mips/yeeloong/fwstart.S: Add explicit set mips3 - to avoid asm treating ld and sd as macros. - -2011-05-13 Vladimir Serbinenko - - * grub-core/boot/mips/startup_raw.S: Flush cache after loading - decompressor. - -2011-05-13 Vladimir Serbinenko - - * grub-core/boot/mips/startup_raw.S: Use jalr rather than bal to call - grub_decompress_core since later would fail if grub_decompress_core - is too far. - -2011-05-13 Vladimir Serbinenko - - * grub-core/kern/mips/dl.c (grub_arch_dl_relocate_symbols): Handle - R_MIPS_JALR since it's used by newer compiler. - -2011-05-10 Vladimir Serbinenko - - * util/grub.d/10_linux.in: Correctly handle the Linux in root. - -2011-05-09 Vladimir Serbinenko - - * grub-core/loader/efi/chainloader.c (grub_chainloader_unload): Set - file_path to 0 for surety. - (grub_chainloader_boot): Set exit_data to NULL. - Unset the loader once done. - (grub_cmd_chainloader): Fix confusing error message if file is empty. - -2011-05-09 Vladimir Serbinenko - - * grub-core/term/at_keyboard.c (fetch_key): Make a printf on - unknown key into a dprintf. - -2011-05-09 Vladimir Serbinenko - - * grub-core/kern/emu/hostdisk.c (linux_find_partition): Don't abort - on first non-existant partition. - -2011-05-09 Vladimir Serbinenko - - * grub-core/kern/emu/hostdisk.c (open_device): Set data->fd to -1 if - openning fails. - Reported by: Mark Korenberg. - -2011-05-09 Vladimir Serbinenko - - * grub-core/kern/emu/hostdisk.c (linux_find_partition): Prevent possible - overflow. - -2011-05-09 Vladimir Serbinenko - - * util/grub-mkimage.c (main): Explicitely flush and sync the output - before closing to ensure that it will be readable by grub-setup. - -2011-05-05 Vladimir Serbinenko - - * grub-core/loader/efi/appleloader.c (MAKE_PIWG_PATH): New macro. - (devpath_1): Use MAKE_PIWG_PATH. - (devpath_2): Likewise. - (devpath_3): Likewise. - (devpath_4): Likewise. - (devpath_5): Likewise. - (devpath_6): Likewise. - - The appleldr.mod was checked that to be binary identical to previous - version. - -2011-05-05 Zach - - Support 2010 Macbooks. - - * grub-core/loader/efi/appleloader.c (devpath_6): New variable. - (devs): Add devpath_6. - -2011-05-05 Vladimir Serbinenko - - * util/grub-mkpasswd-pbkdf2.c (main): Use /dev/urandom and not - /dev/random. /dev/urandom is good enough for our purposes (salting). - -2011-05-05 Vladimir Serbinenko - - * util/grub-mkrescue.in (process_input_dir): Include efiemu??.o. - -2011-05-05 Vladimir Serbinenko - - * grub-core/lib/legacy_parse.c (grub_legacy_parse): Correctly handle - hexadecimal. - -2011-05-05 Vladimir Serbinenko - - * grub-core/efiemu/main.c (grub_efiemu_load_file): Return grub_errno - and not 0 on failure. - -2011-05-03 Colin Watson - - * grub-core/fs/i386/pc/pxe.c (grub_pxefs_dir): Return - GRUB_ERR_BAD_FS rather than GRUB_ERR_IO if the disk is not a pxe - disk; otherwise grub_fs_probe will not fall back to the next - filesystem. - (grub_pxefs_open): Likewise, for consistency. - Reported and tested by: Ezekiel Grave. - -2011-05-03 Colin Watson - - * tests/partmap_test.in: Don't hardcode path to parted. - Reported by: Peter Hjalmarsson. Fixes Savannah bug #33150. - -2011-05-01 Colin Watson - - * docs/grub.texi (GRUB only offers a rescue shell): Suggest the use - of `ls' to find out which devices are available. - -2011-04-25 Vladimir Serbinenko - - * grub-core/loader/i386/linux.c (grub_linux_boot): Supply target rather - than source address for efi mmap buffer. - -2011-04-25 Vladimir Serbinenko - - * grub-core/partmap/amiga.c (amiga_partition_map_iterate): Fix a - wrong action on non-detecting the magic. - -2011-04-25 Vladimir Serbinenko - - * grub-core/gnulib/regex.c: Remove GRUB_MOD_LICENSE since it's - already supplied by another part of the module (fixes compilation on - FreeBSD). - -2011-04-25 Vladimir Serbinenko - - * grub-core/disk/mdraid_linux.c (grub_mdraid_detect): Make mdraid UUID - match the one used by mdadm. - -2011-04-21 Colin Watson - - * po/README: Add instructions for creating po/LINGUAS. - -2011-04-21 Colin Watson - - Add "SEE ALSO" sections to most man pages. Fixes Debian bug - #551428. - - * docs/man/grub-editenv.h2m (SEE ALSO): New section. - * docs/man/grub-emu.h2m (SEE ALSO): Likewise. - * docs/man/grub-fstest.h2m (SEE ALSO): Likewise. - * docs/man/grub-install.h2m (SEE ALSO): Likewise. - * docs/man/grub-macho2img.h2m (SEE ALSO): Likewise. - * docs/man/grub-menulst2cfg.h2m (SEE ALSO): Likewise. - * docs/man/grub-mkconfig.h2m (SEE ALSO): Likewise. - * docs/man/grub-mkdevicemap.h2m (SEE ALSO): Likewise. - * docs/man/grub-mkfont.h2m (SEE ALSO): Likewise. - * docs/man/grub-mkimage.h2m (SEE ALSO): Likewise. - * docs/man/grub-mklayout.h2m (SEE ALSO): Likewise. - * docs/man/grub-mknetdir.h2m (SEE ALSO): Likewise. - * docs/man/grub-mkpasswd-pbkdf2.h2m (SEE ALSO): Likewise. - * docs/man/grub-mkrelpath.h2m (SEE ALSO): Likewise. - * docs/man/grub-mkrescue.h2m (SEE ALSO): Likewise. - * docs/man/grub-ofpathname.h2m (SEE ALSO): Likewise. - * docs/man/grub-pe2elf.h2m (SEE ALSO): Likewise. - * docs/man/grub-probe.h2m (SEE ALSO): Likewise. - * docs/man/grub-reboot.h2m (SEE ALSO): Likewise. - * docs/man/grub-script-check.h2m (SEE ALSO): Likewise. - * docs/man/grub-set-default.h2m (SEE ALSO): Likewise. - * docs/man/grub-setup.h2m (SEE ALSO): Likewise. - -2011-04-21 Colin Watson - - * grub-core/kern/emu/getroot.c - (grub_find_root_device_from_mountinfo): Remove non-virtual-device - test that was incorrectly reintroduced in r3214. - Reported by: Ian Dall. Fixes Savannah bug #33133. - -2011-04-21 Colin Watson - - Fix stack pointer handling in 16-bit relocator. - - * grub-core/lib/i386/relocator16.S (grub_relocator16_start): Move - grub_relocator16_sp to %esp rather than %ss, and zero-extend it. - Fixes Ubuntu bug #683904. - -2011-04-20 Vladimir Serbinenko - - * configure.ac: Bump version to 1.99~rc2. - -2011-04-20 Vladimir Serbinenko - - * include/grub/dl.h [ASM_FILE]: Adapt for assembly. - * grub-core/lib/i386/setjmp.S: Add missing GRUB_MOD_LICENSE. - * grub-core/lib/x86_64/setjmp.S: Likewise. - * grub-core/lib/mips/setjmp.S: Likewise. - * grub-core/lib/powerpc/setjmp.S: Likewise. - * grub-core/lib/sparc64/setjmp.S: Likewise. - -2011-04-20 Vladimir Serbinenko - - * grub-core/lib/efi/datetime.c: Add missing GRUB_MOD_LICENSE. - * grub-core/lib/efi/datetime.c: Likewise. - -2011-04-19 Vladimir Serbinenko - - * grub-core/kern/emu/hostdisk.c (grub_util_biosdisk_flush): - New function. - (grub_util_biosdisk_close): Use grub_util_biosdisk_flush. - * include/grub/emu/hostdisk.h (grub_util_biosdisk_flush): New proto. - * util/grub-setup.c (setup): Use grub_util_biosdisk_flush. - -2011-04-19 Vladimir Serbinenko - - * grub-core/term/gfxterm.c (grub_gfxterm_fullscreen): Preserve previous - bitmap. - (grub_gfxterm_term_init): Likewise. - -2011-04-19 Vladimir Serbinenko - - Take into account the decorations the computing menu entry width. - - * grub-core/gfxmenu/widget-box.c (get_border_width): New function. - (grub_gfxmenu_create_box): Register get_border_width. - * grub-core/gfxmenu/gui_list.c (draw_menu): Use get_border_width - if available. - * include/grub/gfxwidgets.h (grub_gfxmenu_box): New member - get_border_width. - -2011-04-18 Endres Puschner - - * grub-core/gfxmenu/icon_manager.c (grub_gfxmenu_icon_manager_get_icon): - Don't skip first class. - -2011-04-18 Vladimir Serbinenko - - * grub-core/fs/btrfs.c (grub_btrfs_read_logical): Support huge - chunks. - * include/grub/err.h (grub_err_t): New enum value GRUB_ERR_BUG. - -2011-04-18 Vladimir Serbinenko - - Complete 64-bit division support. - - * grub-core/kern/misc.c (grub_divmod64): Rename to ... - (grub_divmod64_full): ... this. Support 64-bit divisor and reminder. - * include/grub/misc.h (grub_divmod64): Rename to ... - (grub_divmod64_full): ... this. - (grub_divmod64): New inline function. - -2011-04-18 Vladimir Serbinenko - - * util/grub-mkimage.c (generate_image): Add forgotten comma. - -2011-04-18 Vladimir Serbinenko - - * util/grub-mkimage.c (generate_image): Update fwstart.img hash after - performing the necessary test. - -2011-04-17 Vladimir Serbinenko - - * Makefile.am (multiboot.elf): Add -Wl,--build-id=none. - (kfreebsd.elf): Likewise. - (pc-chainloader.elf): Likewise. - (ntldr.elf): Likewise. - -2011-04-17 Vladimir Serbinenko - - Identify RAID by its UUID rather than (guessed) name. - - * grub-core/disk/raid.c (ascii2hex): New function. - (grub_raid_open): Accept mduuid/%s specification. - * grub-core/kern/emu/getroot.c (get_mdadm_name): Revamped into ... - (get_mdadm_uuid): ... this. - (grub_util_get_grub_dev): Use mduuid/%s if UUID is available. - -2011-04-16 Vladimir Serbinenko - - * grub-core/gfxmenu/gui_image.c (rescale_image): Don't attempt to scale - to negative size. - -2011-04-13 Colin Watson - - * util/grub.d/10_linux.in: Add rootflags=subvol= if / is on a - btrfs subvolume. - * util/grub.d/20_linux_xen.in: Likewise. - -2011-04-13 Colin Watson - - Rewrite /proc/self/mountinfo handling to cope with bind-mounts and - move-mounts appearing out of order. Fixes Ubuntu bug #738345. - - * grub-core/kern/emu/getroot.c (find_root_device_from_mountinfo): - Build a list of relevant visible mounts using the mnt_id and - parent_mnt_id fields, and then scan that list at the end. - -2011-04-12 Colin Watson - - * docs/grub.texi (normal): New section. - (normal_exit): New section. - (Embedded configuration): Add reference to normal. - (GRUB only offers a rescue shell): Likewise. - * docs/grub-dev.texi (Error Handling): Fix typo. - -2011-04-12 Colin Watson - - * NEWS: Drop obsolete entry about probe-only btrfs support. - -2011-04-12 Colin Watson - - * util/import_gcry.py: Fix typo. - -2011-04-11 Vladimir Serbinenko - - * NEWS: Add btrfs support. - -2011-04-11 Vladimir Serbinenko -2011-04-11 Colin Watson - - BtrFS support. Written by me (Vladimir) with important bugfixes and - even more important testing by Colin. - - * Makefile.util.def (libgrubmods.a): Add crc.c and gzio.c - * grub-core/Makefile.core.def (btrfs): Add crc.c. - * grub-core/fs/btrfs.c: Stub replaced with real implementation. - * grub-core/io/gzio.c (grub_gzio): New fields mem_input_size, - mem_input_off and mem_input. All users updated to accept in-RAM input. - (gzio_seek): New function. - (test_zlib_header): Likewise. - (grub_gzio_read): Likewise. - (grub_zlib_decompress): Likewise. - * grub-core/kern/emu/getroot.c (grub_find_root_device_from_mountinfo): - Accept partial and non-virtual mounts. - (grub_guess_root_device): Do rescanning after device_from_mountinfo to - avoid receiving /dev/dm-X as device. - * grub-core/kern/emu/misc.c (grub_make_system_path_relative_to_its_root): - Handle bind and partial mounts. - * grub-core/lib/crc.c: New file. - * include/grub/deflate.h: Likewise. - * include/grub/emu/misc.h (grub_find_root_device_from_mountinfo): New - proto. - * include/grub/lib/crc.h: New file. - -2011-04-11 Vladimir Serbinenko - - Implement automatic module license checking according to new GNU - guidelines. - - * grub-core/kern/dl.c (grub_dl_check_license): New function. - (grub_dl_load_core): Use grub_dl_check_license. - * include/grub/dl.h (GRUB_MOD_SECTION): New macro. - (GRUB_MOD_LICENSE): Likewise. - (GRUB_MOD_DUAL_LICENSE): Likewise. - All modules updated. - -2011-04-11 Colin Watson - - * grub-core/fs/btrfs.c (grub_btrfs_fs) [GRUB_UTIL]: Set - reserved_first_sector to 1. btrfs reserves plenty of space for boot - loaders. - Reported by: Gene Cumm. Fixes Ubuntu bug #757446. - -2011-04-11 Vladimir Serbinenko - - * util/grub-fstest.c (cmd_cmp): Check that sizes match. - -2011-04-11 Vladimir Serbinenko - - * util/grub-fstest.c (read_file): Report GRUB error if file opening - failed. - -2011-04-11 Vladimir Serbinenko - - * grub-core/kern/file.c (grub_file_open): Don't take into account the - parenthesis in the middle of the filename. - -2011-04-10 Vladimir Serbinenko - - * grub-core/loader/mips/linux.c (grub_cmd_initrd): Use correct limits - rather than trying to put initrd way too high. - Reported by: Ryan Lortie - -2011-04-10 Vladimir Serbinenko - - * grub-core/boot/mips/yeeloong/fwstart.S (no_cs5536): Put back - improperly removed string. - -2011-04-10 Vladimir Serbinenko - - * grub-core/kern/emu/hostdisk.c (grub_util_biosdisk_data): New member - is_disk. - (grub_util_biosdisk_open): Don't apply ioctl on non-disk devices. - (open_device) Likewise. - (grub_util_biosdisk_close): Likewise. - Reported by: Mark Korenberg. - -2011-04-10 Alexander Kurtz - - * util/grub-mkconfig_lib.in: Add missing quotes. - -2011-04-10 Colin Watson - - * grub-core/gnulib/argp-parse.c (__argp_input): Don't crash if pstate - is NULL. - -2011-04-10 Vladimir Serbinenko - - Dynamically count the number of lines for the lower banner. - - * grub-core/normal/menu_entry.c (per_term_screen): New member - num_entries. - (print_down): Use num_entries. - (update_screen): Likewise. - (grub_menu_entry_run): Set num_entries. - * grub-core/normal/menu_text.c (menu_viewer_data): New member - num_entries. - (grub_print_message_indented): Move real part to ... - (grub_print_message_indented_real): ... here. Additional argument - dry_run. - (draw_border): Additional argument num_entries. - (print_message): Additional argument dry_run. - (print_entries): Receive menu viewer data. - (grub_menu_init_page): New argment num_entries. - (menu_text_set_chosen_entry): Use num_entries. - (grub_menu_try_text): Likewise. - * grub-core/normal/term.c (print_ucs4_terminal): New argument dry_run. - All users updated. - (grub_ucs4_count_lines): New function. - * include/grub/term.h (grub_term_cursor_x): Moved from here .. - * grub-core/normal/menu_text.c (grub_term_cursor_x): ... to here. - * include/grub/term.h (GRUB_TERM_MESSAGE_HEIGHT): Removed. - (grub_term_border_height): Likewise. - (grub_term_num_entries): Likewise. - -2011-04-10 Vladimir Serbinenko - - * grub-core/boot/mips/yeeloong/fwstart.S: Fix address to error message. - Remove now unused string. - -2011-04-09 Colin Watson - - * docs/grub-dev.texi (Finding your way around): Update for 1.99 - build system. - (Getting started): GRUB is developed in Bazaar now, not Subversion. - - (Comment): Fix typo. - (Getting started): General copy-editing. - (Typical Development Experience): Likewise. - (Error Handling): Likewise. - (Video API): Likewise. - -2011-04-09 Colin Watson - - * docs/grub-dev.texi: Replace MoinMoin syntax with Texinfo syntax - throughout. - -2011-04-08 Vladimir Serbinenko - - * util/grub-mkimage.c (main): Handle special naming of yeeloong - directory. - -2011-04-08 Colin Watson - - * docs/grub-dev.texi: Fix spelling of "developer" throughout. - * grub-core/fs/i386/pc/pxe.c (parse_dhcp_vendor): Fix spelling of - "development". - -2011-04-08 Vladimir Serbinenko - - * grub-core/normal/menu_entry.c (run): Use grub_memcpy rather than - grub_strcpy since the lines aren't necessarily 0-terminated. - -2011-04-08 Vladimir Serbinenko - - * grub-core/lib/legacy_parse.c (legacy_commands): Find doesn't set - root on legacy. - -2011-04-08 Vladimir Serbinenko - - * grub-core/commands/probe.c (options): Argument to set isn't optional. - (GRUB_MOD_INIT): DEVICE isn't optional. - -2011-04-08 Vladimir Serbinenko - - * grub-core/normal/term.c (print_ucs4_terminal): Don't try to put the - word on new line if it's too long anyway. Fixes a hang. - -2011-04-08 Vladimir Serbinenko - - * include/grub/util/raid.h (grub_util_raid_getmembers): Make argument - const. - * util/grub-setup.c (main): Reuse md device name if available. - * util/raid.c (grub_util_raid_getmembers): Receive device name and - not GRUB name as argument. - Based on patch by: Florian Wagner . - -2011-04-08 Vladimir Serbinenko - - * grub-core/loader/i386/multiboot_mbi.c (grub_multiboot_make_mbi): - Place mbi on low memory for better compatibility. - -2011-04-08 Vladimir Serbinenko - - * include/grub/efiemu/efiemu.h: Use grub_memory_hook_t type. - -2011-04-08 Vladimir Serbinenko -2011-04-08 Colin Watson - - * autogen.sh: Ensure that collate and ctype locale is C. - * conf/Makefile.common: Likewise. - -2011-04-08 Vladimir Serbinenko - - * grub-core/normal/menu.c: Add missing include. - -2011-04-08 Vladimir Serbinenko - - * grub-core/disk/raid.c [GRUB_UTIL]: Add missing include. - -2011-04-08 Martin Zuther - - * util/grub-mkconfig.in: Ignore emacsen backup. - -2011-04-08 Vladimir Serbinenko - - * grub-core/kern/emu/hostdisk.c (open_device): Sync on close and not - on open. - (grub_util_biosdisk_close): Likewise. - -2011-04-08 Vladimir Serbinenko - - * grub-core/kern/emu/getroot.c (grub_util_get_grub_dev): Add missing - const attribute and use grub_isdigit. - -2011-04-06 Andrey - - * grub-core/video/fb/video_fb.c (grub_video_fb_setup): Silence older - gcc warning. - -2011-04-06 Vladimir Serbinenko - - * grub-core/lib/relocator.c (grub_relocator_alloc_chunk_align): Add few - useful grub_dprintf's. - -2011-04-06 Vladimir Serbinenko - - * include/grub/fs.h (grub_dirhook_info): Use unsigned for 1-bit fields. - -2011-04-06 Vladimir Serbinenko - - * util/grub.d/00_header.in: Don't use LANG unless unifont is available. - -2011-04-06 Vladimir Serbinenko - - Output errors if theme loading failed. - - * grub-core/gfxmenu/gfxmenu.c (grub_gfxmenu_try): Move the call to - grub_gfxterm_fullscreen on error paths to ... - * grub-core/normal/menu.c (menu_init): ...here. Wait after showing - theme loading error. - -2011-04-06 Vladimir Serbinenko - - * include/grub/offsets.h (GRUB_KERNEL_I386_PC_RAW_SIZE): Let a bit more - space for older compilers. - (GRUB_KERNEL_I386_PC_NO_REED_SOLOMON_PART): Likewise. - -2011-04-06 Vladimir Serbinenko - - * grub-core/disk/mdraid1x_linux.c (grub_mdraid_detect): Detect spares - and report them as not RAID members since they are useless for GRUB. - * grub-core/disk/mdraid_linux.c (grub_mdraid_detect): Likewise. - -2011-04-02 Vladimir Serbinenko - - Increase LVM implementation robustness in order not to crash on - configurations like pvmove. Previously code assumed that in some places - only lvs or only pvs are used whereas it seems that they are used - interchangeably. - - * grub-core/disk/lvm.c (read_node): New function. - (read_lv): Use read_node. - (grub_lvm_scan_device): Use only first mirror on pvmove'd lvs. - Match volumes only at the end when all lvs are found. Take both - pvs (first) and lvs (second) into account. - * include/grub/lvm.h (grub_lvm_segment): Merge fields stripe_* and - mirror_* into node_*. All users updated. - (grub_lvm_stripe): Merge this ... - (grub_lvm_mirror): ... and this ... - (grub_lvm_node): ... into this. All users updated. - -2011-04-02 Vladimir Serbinenko - - * grub-core/disk/lvm.c (grub_lvm_scan_device): Print errors on the end - of function to allow further scanning for LVMs. - -2011-04-02 Vladimir Serbinenko - - * grub-core/kern/emu/hostdisk.c (grub_util_biosdisk_read): Don't close - on failed seek as it breaks open fd reusage. - -2011-04-02 Vladimir Serbinenko - - * util/grub-install.in: Add a recommendation to use --recheck before - reporting bugs. - -2011-04-02 Vladimir Serbinenko - - * docs/grub.texi (Vendor power-on buttons): Explain how the numbers - are obtained. - -2011-04-02 Vladimir Serbinenko - - GRUB developper manual based on existing Internals section and - contributions by the various authors with active copyright assignment. - - * docs/Makefile.am (info_TEXINFOS): Add grub-dev.texi. - * docs/font_char_metrics.png: New file. - * docs/font_char_metrics.txt: Likewise. - * docs/grub-dev.texi: Likewise. - * docs/grub.texi (Internals): Move from here ... - * docs/grub-dev.texi: ... here. - -2011-04-01 Colin Watson - - Store the loopback device as data on loopback grub_disk structures, - rather than the file it points to. This fixes use of freed memory - if an existing loopback device is replaced. - - * grub-core/disk/loopback.c (grub_loopback_open): Store dev in - disk->data, not dev->file. - (grub_loopback_read): Adjust file assignment to match. - Fixes Ubuntu bug #742967. - -2011-04-01 Colin Watson - - * grub-core/disk/loopback.c (grub_cmd_loopback): Fix a memory leak - when replacing an existing device. - -2011-04-01 Vladimir Serbinenko - - Fix incorrect types in jfs.c. This enables >2TiB disks and fixes some - memory corruptions. - - * grub-core/fs/jfs.c (struct grub_jfs_diropen): Interpret bytes as - unsigned. - (grub_jfs_lookup_symlink): Make ino a grub_uint32_t rather than int. - (grub_jfs_blkno): Use 64-bit quantities for block sectors. - (grub_jfs_read_inode): Likewise. - (grub_jfs_opendir): Likewise. Remove now useless casts. - (grub_jfs_getent): Likewise. - Make ino a grub_uint32_t rather than int. - (grub_jfs_mount): Ensure that blksize and log2_blksize are consistent. - (grub_jfs_read_file): Use 64-bit quantities when necessary. Replace - division and module with bit operations. - (grub_jfs_find_file): Make ino a grub_uint32_t. - (grub_jfs_lookup_symlink): Likewise. Use 64-bit quantities - -2011-04-01 Colin Watson - - * grub-core/normal/menu_entry.c (run): Quieten uninitialised - warning. (This was in fact always initialised before use, but GCC - wasn't smart enough to prove that.) - * grub-core/script/lexer.c (grub_script_lexer_yywrap): Likewise. - -2011-03-31 Vladimir Serbinenko - - * grub-core/kern/x86_64/efi/callwrap.S (efi_wrap_0): Preserve 16-byte - stack alignment. - (efi_wrap_1): Likewise. - (efi_wrap_2): Likewise. - (efi_wrap_3): Likewise. - (efi_wrap_4): Likewise. - (efi_wrap_5): Likewise. - (efi_wrap_6): Likewise. - (efi_wrap_10): Likewise. - Based on information by: Red Hat/Peter Jones. - -2011-03-31 Colin Watson - - * grub-core/mmap/efi/mmap.c (grub_mmap_unregister): Remove - set-but-not-used variable. - -2011-03-31 Colin Watson - - * docs/grub.texi (Simple configuration): Be more explicit about - GRUB_DEFAULT, and add an example. - Reported by: Leslie Rhorer. - -2011-03-30 Colin Watson - - * docs/grub.texi (Commands): Link to "GRUB only offers a rescue - shell". - -2011-03-30 Alexey Shvetsov - - * util/grub.d/10_linux.in: Add gentoo-specific config filename. - * util/grub.d/20_linux_xen.in: Likewise. - -2011-03-30 Vladimir Serbinenko - - * util/grub.d/10_linux.in: Try alternative config filenames where - we parse config file. - * util/grub.d/20_linux_xen.in: Likewise. - -2011-03-30 Alexey Shvetsov - - * util/grub.d/10_linux.in: Add gentoo-specific Linux and initrd names. - * util/grub.d/20_linux_xen.in: Likewise. - -2011-03-30 Vladimir Serbinenko - - * grub-core/disk/raid.c (insert_array): Add few potentially - useful grub_util_info. - (grub_raid_register): Likewise. - -2011-03-30 Vladimir Serbinenko - - * grub-core/kern/emu/getroot.c (grub_util_get_grub_dev) [__linux__]: - Preserve partition number in mdadm code path. - -2011-03-30 Vladimir Serbinenko - - * grub-core/kern/emu/hostdisk.c (grub_util_biosdisk_get_grub_dev): Add - few potentially useful grub_util_info. - -2011-03-30 Vladimir Serbinenko - - * grub-core/disk/lvm.c (grub_lvm_scan_device): Remove spurious \n. - -2011-03-30 Colin Watson - - * docs/grub.texi (default): Use @example rather than nested - itemized lists to avoid breaking gendocs. - -2011-03-30 Colin Watson - - * docs/grub.texi (Future): Update. - -2011-03-30 Colin Watson - - * docs/grub.texi (Environment): New chapter. - (Changes from GRUB Legacy): Link to "Environment block" section for - details of limitations. - (Simple configuration): Likewise. Link to documentation of gfxmode - and gfxpayload variables from GRUB_GFXMODE and GRUB_GFXPAYLOAD - respectively. - (Shell-like scripting): Note that normal variables are stored in the - environment. - (gettext): Link to documentation of lang and locale_dir. - (list_env): New section. - (load_env): New section. - (save_env): New section. - - (Reporting bugs): Fix typo. - -2011-03-30 Vladimir Serbinenko - - * docs/grub.texi: Correctly use "terminal_input" and not "terminal" in - the example. - -2011-03-30 Vladimir Serbinenko - - * grub-core/term/at_keyboard.c (set_scancodes) - [!GRUB_MACHINE_MIPS_YEELOONG && !GRUB_MACHINE_QEMU]: Use scancode set 1. - -2011-03-30 Colin Watson - - * docs/grub.texi (Menu-specific commands): Remove some semantics - that were true in GRUB Legacy but not in GRUB 2. - (submenu): New section. - (false): New section. - (read): New section. - (true): New section. - -2011-03-30 Colin Watson - - * docs/grub.texi (Changes from GRUB Legacy): Minor proofreading. - -2011-03-30 Colin Watson - - * docs/grub.texi (Simple configuration): Explain some of the - current limitations of grub-mkconfig. - Reported by: Leslie Rhorer. - -2011-03-29 Vladimir Serbinenko - - Old macs search for boot.efi rather than for bootia32.efi. - - * util/grub-install.in: Copy bootia32.efi to boot.efi. - * util/grub-mkrescue.in: Likewise. - Suggested by: Peter Jones. - -2011-03-29 Vladimir Serbinenko - - * util/grub.d/20_linux_xen.in: Accept old-style xen kernels. - -2011-03-29 Vladimir Serbinenko - - * include/grub/lvm.h (grub_lvm_lv): New field 'visible'. - (grub_lvm_segment): New fields 'type', 'mirror_count' and 'mirrors'. - (grub_lvm_mirror): New struct. - * grub-core/disk/lvm.c (grub_lvm_checkvalue): Commented out. - (grub_lvm_iterate): Iterate only visible volumes. - (grub_lvm_read): Factor out to .. - (read_lv): ... this. Support mirrors. - (grub_lvm_read): New wrapper function. - (grub_lvm_scan_device): Parse mirrors. Skip everything that isn't - stripped or mirrored. - -2011-03-29 Vladimir Serbinenko - - * util/grub.d/10_linux.in: Skip vmlinux-* on x86 platforms. - -2011-03-29 Colin Watson - - * docs/grub.texi (loopback): New section. - -2011-03-29 Colin Watson - - * grub-core/disk/loopback.c (GRUB_MOD_INIT): Stop documenting - removed -p option. - -2011-03-29 Colin Watson - - * docs/grub.texi (BIOS installation): New section, partly based on - previous text in other sections. - (Installing GRUB using grub-install): Replace BIOS discussion with a - cross-reference. - (Images): Likewise. - -2011-03-29 Vladimir Serbinenko - - * grub-core/kern/emu/hostdisk.c (find_partition_start) - [HAVE_DIOCGDINFO]: Add safety checks. - -2011-03-29 Vladimir Serbinenko - - * util/grub.d/10_kfreebsd.in: Allow ufs.ko to be missing as it's - per default compiled in kernel and prior to 8.0 isn't shipped at all. - -2011-03-29 Colin Watson - - * grub-core/disk/mdraid1x_linux.c (grub_mdraid_detect): If - real_sb->size is zero (e.g. RAID-0), get the disk size from - real_sb->data_size instead. - Fixes Ubuntu bug #743136. - -2011-03-29 Vladimir Serbinenko - - * grub-core/normal/misc.c (grub_normal_print_device_info): Use correct - printf clauses for printing size and start. - -2011-03-29 Vladimir Serbinenko - - * grub-core/fs/ext2.c (grub_ext2_read_inode): Fix an overflow. - Reported and tested by: Timothy Nikkel. - -2011-03-29 Vladimir Serbinenko - - * grub-core/term/gfxterm.c (dirty_region_add): Move core part to ... - (dirty_region_add_real): ... this. - (dirty_region_add): Don't discard margin refresh when performing - scheduled repaint. - -2011-03-29 Vladimir Serbinenko - - * grub-core/lib/relocator.c (allocate_regstart) - [!DEBUG_RELOCATOR_NOMEM_DPRINTF]: Avoid grub_dprintf since not all - terminals are capabple of malloc-free operation. - (allocate_inreg) [!DEBUG_RELOCATOR_NOMEM_DPRINTF]: Likewise. - (malloc_in_range) [!DEBUG_RELOCATOR_NOMEM_DPRINTF]: Likewise. - -2011-03-29 Mario Limonciello - - * util/grub-setup.c: Copy the partition table zone if floppy support - is disabled, even if no partition table is found. - - Otherwise, the BIOS on Dell Latitude E series laptops will freeze - during POST if an invalid partition table is contained in the PBR - of the active partition when GRUB is installed to a partition. - -2011-03-28 Colin Watson - - * grub-core/disk/mdraid1x_linux.c (grub_mdraid_detect): Remove stale - comment. - -2011-03-28 Colin Watson - - * grub-core/disk/raid.c (grub_raid_register): Adjust debug message - to be specific about what kind of RAID device we're scanning for. - -2011-03-26 Seth Goldberg - - * grub-core/kern/emu/getroot.c (find_root_device_from_libzfs): Don't - return freed string. - -2011-03-26 Vladimir Serbinenko - - * grub-core/fs/iso9660.c (grub_iso9660_label): Rtrim the label. - -2011-03-26 Vladimir Serbinenko - - Use libgeom on FreeBSD to detect partitions. - - * Makefile.util.def (grub-mkimage): Add LIBGEOM to ldadd. - (grub-mkrelpath): Likewise. - (grub-script-check): Likewise. - (grub-editenv): Likewise. - (grub-mkpasswd-pbkdf2): Likewise. - (grub-fstest): Likewise. - (grub-mkfont): Likewise. - (grub-mkdevicemap): Likewise. - (grub-probe): Likewise. - (grub-setup): Likewise. - (grub-ofpathname): Likewise. - (grub-mklayout): Likewise. - (example_unit_test): Likewise. - (grub-menulst2cfg): Likewise. - * grub-core/Makefile.core.def (grub-emu): Likewise. - (grub-emu-lite): Likewise. - * configure.ac: Check for -lgeom on FreeBSD and set LIBGEOM. - * grub-core/kern/emu/hostdisk.c [FreeBSD]: Include libgeom.h. Don't - define HAVE_DIOCGDINFO. - (follow_geom_up) [FreeBSD]: New function. - (find_partition_start) [FreeBSD]: Rewritten using follow_geom_up. - (convert_system_partition_to_system_disk) [FreeBSD]: Likewise. - (grub_util_biosdisk_get_grub_dev) [FreeBSD]: Use FreeBSD path - unconditionally of HAVE_DIOCGDINFO. - -2011-03-26 Vladimir Serbinenko - - Fix FreeBSD compilation problem. - - * grub-core/kern/emu/hostdisk.c (MAJOR) [FreeBSD]: New definition. - (FLOPPY_MAJOR) [FreeBSD]: Likewise. - -2011-03-24 Colin Watson - - * grub-core/video/fb/video_fb.c (grub_video_fb_get_info_and_fini): - Switch back to page zero before loading a kernel, since some kernel - drivers expect that. - Thanks to: Felix Kuehling. - -2011-03-24 Vladimir Serbinenko - - * grub-core/lib/relocator.c (grub_relocator_alloc_chunk_addr) - [DEBUG_RELOCATOR]: Reuse grub_mm_check. - (grub_relocator_alloc_chunk_align) [DEBUG_RELOCATOR]: Likewise. - -2011-03-24 Vladimir Serbinenko - - * include/grub/mm.h (GRUB_MM_CHECK): Rename to ... - (grub_mm_check): ... this. MAke a function-like macro and use GRUB_FILE. - -2011-03-24 Vladimir Serbinenko - - * grub-core/lib/relocator.c (allocate_inreg): Avoid dprintf unless - DEBUG_RELOCATOR is defined since gfxterm can't cope with output when - malloc is disabled. - -2011-03-24 Vladimir Serbinenko - - * grub-core/loader/i386/bsdXX.c (grub_freebsd_load_elfmodule): Account - for modules headers when counting the needed allocation size. - -2011-03-23 Vladimir Serbinenko - - * grub-core/term/gfxterm.c (calculate_normal_character_width): Return 8 - if no ASCII character is found to prevent crash. - -2011-03-23 Alexander Kurtz - - * grub-core/video/bitmap.c (match_extension): Ignore case. - -2011-03-23 Vladimir Serbinenko - - * grub-core/normal/menu_entry.c (init_line): Fix off-by-one error. - -2011-03-23 Vladimir Serbinenko - - * grub-core/script/parser.y: Declare "time" as valid argument. - -2011-03-23 Peter Jones - - Fix incorrect assert failure reporting. - - * grub-core/tests/example_functional_test.c (example_test): Add - a failure comment. - * grub-core/tests/lib/test.c (add_failure): Renamed to ... - (failure_start): ...this. Check that malloc succeeded. - Don't call xvasprintf. Return failure struct. - (failure_append_vtext): New function. - (failure_append_text): Likewise. - (add_failure): Likewise. - (grub_test_assert_helper): Likewise. - * include/grub/test.h (grub_test_assert_helper): New declaration. - (grub_test_assert): Macro rewritten. - -2011-03-23 Vladimir Serbinenko - - * grub-core/normal/main.c (GRUB_MOD_INIT): Export pager variable. - -2011-03-23 Vladimir Serbinenko - - * grub-core/lib/i386/pc/biosnum.c: Add missing include. - -2011-03-23 Vladimir Serbinenko - - * grub-core/disk/usbms.c (grub_usbms_reset): Transform USB-style error - into GRUB-style one. - -2011-03-23 Vladimir Serbinenko - - * grub-core/bus/usb/usbtrans.c (grub_usb_control_msg): Return usb-style - error and not grub_errno. - * grub-core/bus/usb/usbhub.c (grub_usb_add_hub): Likewise. - -2011-03-23 Vladimir Serbinenko - - * grub-core/bus/usb/uhci.c (grub_uhci_detect_dev): Return - GRUB_USB_SPEED_NONE in case of failure and not the error code. - -2011-03-23 Vladimir Serbinenko - - * grub-core/efiemu/i386/pc/cfgtables.c - (grub_machine_efiemu_init_tables): Make declaration a prototype. - * grub-core/loader/xnu.c (grub_xnu_lock): Likewise. - (grub_xnu_unlock): Likewise. - * grub-core/normal/cmdline.c (grub_cmdline_get/cl_set_pos_all): Likewise. - -2011-03-23 Vladimir Serbinenko - - * grub-core/bus/usb/usb.c (attach_hooks): Make static. - * grub-core/bus/usb/usbhub.c (hubs): Likewise. - * grub-core/commands/hashsum.c (aliases): Likewise. - * grub-core/commands/setpci.c (pci_registers): Likewise. - * grub-core/disk/usbms.c (attach_hook): Likewise. - * grub-core/fs/zfs/zfs.c (decomp_table): Likewise. - (zio_checksum_table): Likewise. - * grub-core/gettext/gettext.c (grub_gettext_msg_list): Likewise. - * grub-core/gfxmenu/gfxmenu.c (cached_view): Likewise. - * grub-core/lib/legacy_parse.c (legacy_commands): Likewise. - * grub-core/lib/relocator.c (leftovers): Likewise. - (extra_blocks): Likewise. - * grub-core/loader/i386/bsd.c (relocator): Likewise. - * grub-core/loader/i386/multiboot_mbi.c (modules): Likewise. - (modules_last): Likewise. - * grub-core/loader/i386/xnu.c (table_aliases): Likewise. - (devices): Likewise. - * grub-core/loader/multiboot_mbi2.c (modules): Likewise. - (modules_last): Likewise. - * grub-core/normal/auth.c (users): Likewise. - * grub-core/normal/context.c (initial_menu): Likewise. - (current_menu): Likewise. - * grub-core/normal/crypto.c (crypto_specs): Likewise. - * grub-core/term/serial.c (grub_serial_ports): Likewise. - (grub_serial_terminfo_input_template): Likewise. - (grub_serial_terminfo_output_template): Likewise. - (grub_serial_terminfo_input): Likewise. - (grub_serial_terminfo_output): Likewise. - (registered): Likewise. - * grub-core/term/usb_keyboard.c (attach_hook): Likewise. - -2011-03-23 Vladimir Serbinenko - - * grub-core/video/bochs.c (grub_video_bochs_setup): Use - grub_video_mode_type_t. - * grub-core/video/cirrus.c (grub_video_cirrus_setup): Likewise. - * grub-core/video/i386/pc/vbe.c (grub_video_vbe_setup): Likewise. - * grub-core/video/i386/pc/vga.c (grub_video_vga_setup): Likewise. - -2011-03-23 Vladimir Serbinenko - - * util/grub-install.in: Correct the x86-64 name as x86_64. - -2011-03-11 Colin Watson - - * grub-core/boot/i386/pc/lnxboot.S (real_code_2): Ensure that the - initial chunk read from the kernel always includes GRUB's multiboot - header, which is now outside the first sector. - -2011-03-09 Colin Watson - - * grub-core/loader/i386/linux.c (find_efi_mmap_size): Page-align - cached mmap_size, so that this works correctly when called multiple - times. - Reported by: Daniel Kahn Gillmor. Should fix Debian bug #616638. - -2011-03-09 Colin Watson - - * docs/grub.texi (Simple configuration): Tidy up formatting. - -2011-03-07 Szymon Janc - - * grub-core/fs/zfs/zfs.c (zap_leaf_lookup): - Set-but-not-used variable removed. - -2011-02-12 Vladimir Serbinenko - - Workaround yet another IEEE1275 bug. - - * include/grub/ieee1275/ieee1275.h (grub_ieee1275_flag): New enum value - GRUB_IEEE1275_FLAG_BROKEN_ADDRESS_CELLS. - * grub-core/kern/ieee1275/mmap.c (grub_machine_mmap_iterate): Ignore - adress_cells and size:cells if GRUB_IEEE1275_FLAG_BROKEN_ADDRESS_CELLS - is set. - * grub-core/kern/ieee1275/cmain.c (grub_ieee1275_find_options): Set - GRUB_IEEE1275_FLAG_BROKEN_ADDRESS_CELLS on powermacs. - -2011-02-12 Vladimir Serbinenko - - * grub-core/partmap/msdos.c (pc_partition_map_embed): Fix off by one - error. - -2011-02-11 Colin Watson - - * util/grub.d/20_linux_xen.in: Bail out early if linux_list is - empty, since in that case we can only generate either nothing or a - syntactically invalid configuration file. - Reported by: Michal Suchanek. Fixes Debian bug #612898. - -2011-02-09 Colin Watson - - * docs/grub.texi (Kernel): Add reference to grub-mkrescue. - (Making a GRUB bootable CD-ROM): Likewise. - (Invoking grub-mkrescue): New section. - Reported by: Yann Dirson. Fixes Debian bug #612585. - -2011-02-09 Colin Watson - - * util/grub-install.in: Remove unnecessary brackets from tr - arguments. - * util/grub.d/10_hurd.in: Likewise. - * util/grub.d/10_kfreebsd.in: Likewise. - * util/grub.d/10_linux.in: Likewise. - * util/grub.d/20_linux_xen.in: Likewise. - Reported by: Jamie Heilman. Fixes Debian bug #612564. - -2011-02-08 Colin Watson - - * include/grub/file.h (not_easly_seekable): Rename to ... - (not_easily_seekable): ... this. Update all users. - -2011-01-28 Colin Watson - - * docs/grub.texi (Making a GRUB bootable CD-ROM): Update to describe - grub-mkrescue. - -2011-01-24 Vladimir Serbinenko - - * util/grub-mkimage.c (generate_image): Refuse to create the images - bigger than the actual flash (512K) in Loongson machines. 512K is also - the biggest chip supported by them. - -2011-01-22 Vladimir Serbinenko - - * grub-core/kern/emu/getroot.c: Include config-util.h explicitly. - -2011-01-22 Anthony DeRobertis - - * grub-core/disk/mdraid1x_linux.c (grub_mdraid_detect): Check - super_offset field. - -2011-01-22 Vladimir Serbinenko - - * util/grub-install.in: Ignore install device on platforms - where it doesn't make sense. Always use UUIDs except on pc, efi and - sparc64. - Reported by: Daniel Kahn Gillmor. - -2011-01-22 Vladimir Serbinenko - - * grub-core/bus/bonito.c (write_bases): Fix direction of the shift. - -2011-01-22 Vladimir Serbinenko - - * grub-core/partmap/bsdlabel.c: Include grub/emu/misc.h and not grub/util/misc.h. - (iterate_real): Don't rely on partition being non-NULL. - -2011-01-22 Vladimir Serbinenko - - * grub-core/script/argv.c (round_up_exp): unsigned is 32-bit on all - supported platforms. Put a compile time assert for this rather than - generate a warning with 32-bit shift. - -2011-01-22 Vladimir Serbinenko - - * grub-core/disk/scsi.c (grub_scsi_read): Fix binary and check and make - logical expression more readable. - -2011-01-22 Vladimir Serbinenko - - * grub-core/disk/raid.c (insert_array): Ensure uniqueness of p->number - even if some elements have a name. - Reported by: Alexander GQ Gerasiov. - -2011-01-22 Colin Watson - - * util/grub-mkconfig_lib.in (is_path_readable_by_grub): Consider a - path unreadable if `grub-probe -t abstraction' fails, for example if - memberlist fails on an LVM volume group. - Reported by: Darius Jahandarie. - -2011-01-22 Colin Watson - - * docs/grub.texi (Simple configuration): Document - GRUB_PRELOAD_MODULES. - -2011-01-17 Colin Watson - - * .bzrignore: Remove nonexistent grub-pbkdf2. - -2011-01-16 Vladimir Serbinenko - - * configure.ac: Bump version to 1.99~rc1. - -2011-01-15 Vladimir Serbinenko - - * util/grub-mkimage.c (generate_image): Check fwstart.img checksum - for safety. - -2011-01-14 Vladimir Serbinenko - - * grub-core/kern/mips/yeeloong/init.c (grub_machine_init): Init boot - module. - -2011-01-14 Vladimir Serbinenko - - * grub-core/Makefile.core.def (fwstart): Add lost LDFLAGS. - -2011-01-13 Vladimir Serbinenko - - * grub-core/fs/zfs/zfsinfo.c (grub_cmd_zfs_bootfs): Quote bootpath and - diskdevid. - -2011-01-13 Vladimir Serbinenko - - Fix compilation on cygwin. - - * conf/Makefile.common (STRIPFLAGS_KERNEL): Add -F elf32-i386 and - -R .drectve on cygwin. - * conf/i386-pc-cygwin-img-ld.sc: Merge rdata and pdata into data. - * configure.ac: Use $(top_builddir) in TARGET_OBJ2ELF. - (COND_CYGWIN): New condition. - * grub-core/Makefile.am (%.mod): Set TARGET_OBJ2ELF. - * grub-core/genmod.sh.in: Use ${TARGET_OBJ2ELF} and - not @TARGET_OBJ2ELF@. - * util/grub-pe2elf.c (write_symbol_table): Use pe_symtab->type and not - type to determine whether aux is to be used. - -2011-01-12 Vladimir Serbinenko - - * util/ieee1275/ofpath.c (grub_util_devname_to_ofpath): Use the - realpath'ed device string. - Handle floppy (somewhat). - Issue error in unknown case rather than garbage. - Reported by: Axel Beckert. - -2011-01-12 Vladimir Serbinenko - - * util/grub.d/00_header.in (load_video): Handle the case when no video - drivers available. - Thanks to: Axel Beckert. - -2011-01-12 Vladimir Serbinenko - - * util/grub-mkfont.c (write_font_pf2): Use appropriate type for data - variable. Fixes problem on big endian platforms. - -2011-01-12 Vladimir Serbinenko - - * grub-core/Makefile.core.def (ieee1275_fb): Disable on sparc. - It doesn't work well there. - -2011-01-12 Vladimir Serbinenko - - * grub-core/normal/context.c (grub_env_context_close): Silence spurious - warning. - * grub-core/normal/menu.c (grub_menu_execute_entry): Likewise. - * grub-core/partmap/msdos.c (pc_partition_map_embed): Use unsigned - counter. - -2011-01-12 Vladimir Serbinenko - - Use alias->path rather than buggy "canon". - - * grub-core/disk/ieee1275/ofdisk.c (ofdisk_hash_add_real): New function. - (ofdisk_hash_add): New argument curcan. All users updated. - -2011-01-11 Colin Watson - - * configure.ac: Fall back to `true' if `makeinfo' does not exist. - -2011-01-11 Vladimir Serbinenko - - * grub-core/loader/powerpc/ieee1275/linux.c (grub_linux_load32): Apply - loadmask before doing any calculations. Use correct type for offset. - (grub_linux_load64): Likewise. - -2011-01-11 Colin Watson - - * util/grub-mklayout.c (console_grub_equivalences_shift): Terminate - with NULL. - (console_grub_equivalences_unshift): Likewise. - Reported by: Daniel Dehennin. - -2011-01-11 Vladimir Serbinenko - - * grub-core/fs/i386/pc/pxe.c (set_mac_env): Export variable. - (set_env_limn_ro): Likewise. - (GRUB_MOD_INIT): Likewise. - * grub-core/hook/datehook.c (GRUB_MOD_INIT): Likewise. Change to - ARRAY_SIZE while on it. - (GRUB_MOD_FINI): Change to ARRAY_SIZE. - * grub-core/normal/context.c (grub_env_export): Move from here ... - * grub-core/kern/env.c (grub_env_export): ... here. - * grub-core/normal/context.c (grub_cmd_export): Skip exporting root and - prefix. - * grub-core/kern/main.c (grub_main): Export root and prefix. - * include/grub/env.h (grub_env_export): Export. - Reported by: Seth Goldberg. - -2011-01-11 Vladimir Serbinenko - - * grub-core/loader/i386/multiboot_mbi.c (grub_multiboot_make_mbi): - Take into account space used by ELF sections and multiboot palette. - Reported by: Grégoire Sutre. - -2011-01-11 Vladimir Serbinenko - - * BUGS: New file. - -2011-01-10 Vladimir Serbinenko - - Pass more appropriate video id to Linux. - - * grub-core/loader/i386/linux.c (grub_linux_setup_video): Use - grub_video_get_driver_id and variable gfxpayloadforcelfb to - fill have_vga. - (grub_linux_boot): Rely on grub_linux_setup_video to fill have_vga and - shift params->lfb_size. - * include/grub/i386/linux.h: Make an enume out of have_vga values. - -2011-01-10 Vladimir Serbinenko - - * util/grub-menulst2cfg.c: Add missing include of misc.h. - -2011-01-10 Vladimir Serbinenko - - * grub-core/fs/zfs/zfsinfo.c (grub_cmd_zfs_bootfs): Use comma as - separator and pass bootpath/devid even if only one of them is available. - Reported by: Seth Goldberg. - -2011-01-10 Vladimir Serbinenko - - Don't use post-4G memory on EFI even if 64-bit since some non-compliant - implementations bug on them. - - * grub-core/kern/efi/mm.c (grub_efi_allocate_pages): Skip post-4G - memory. - (filter_memory_map): Likewise. - -2011-01-10 Vladimir Serbinenko - - * util/grub-kbdcomp.in: Add missing prefix and exec_prefix variables. - Reported by: nebuchadnezzar. - -2011-01-10 Vladimir Serbinenko - - * util/grub-kbdcomp.in: Add missing transform and bindir variables. - Reported by: nebuchadnezzar. - -2011-01-10 Vladimir Serbinenko - - Submenu default support. - - * grub-core/normal/menu.c (grub_menu_execute_entry): New parameter - auto_boot. All users updated. - Declared static. - Handle chosen and default with submenus. - (grub_menu_execute_with_fallback): Declared static. - Don't notify failure if autobooted. Upper level does it. - (menuentry_eq): New function. - (get_entry_number): Use menuentry_eq. - (show_menu): New parameter "autobooted". All users updated. - (grub_show_menu): Likewise. - * include/grub/normal.h (grub_show_menu): Likewise. - * include/grub/menu.h (grub_menu_execute_entry): Removed. - (grub_menu_execute_with_fallback): Likewise. - -2011-01-10 Vladimir Serbinenko - - * util/grub-mklayout.c (usage): Update help text. - -2011-01-10 Vladimir Serbinenko - - * grub-core/commands/legacycfg.c (legacy_file): Trim the line. - -2011-01-10 Vladimir Serbinenko - - * util/grub-menulst2cfg.c (main): Trim the line. - -2011-01-10 Vladimir Serbinenko - - * grub-core/kern/i386/pc/init.c (grub_get_conv_memsize): Removed. - (grub_machine_init): Don't check amount of low memory as reportedly - INT 12h can be broken and if low memory is too low we wouldn't have - gotten into grub_machine_init anyway. - -2011-01-10 Vladimir Serbinenko - - * grub-core/kern/i386/pc/mmap.c (grub_get_conv_memsize): New function. - (grub_machine_mmap_iterate): Take low memory into account - -2011-01-10 Vladimir Serbinenko - - * grub-core/fs/btrfs.c (grub_btrfs_mount): Transform out of range into - badfs. - Reported by: TiCPU. - -2011-01-10 Vladimir Serbinenko - - * grub-core/disk/raid.c (insert_array): Display RAID name in duplicate - members errors. - -2011-01-09 Grégoire Sutre - - * util/grub.d/10_netbsd.in (netbsd_load_fs_module): New function. - (netbsd_entry): Use netbsd_load_fs_module() to load filesystem module. - -2011-01-09 Grégoire Sutre - - * util/grub-mkconfig_lib.in (prepare_grub_to_access_device): Handle - openbsd and netbsd types being in part_bsd module. - -2011-01-08 Vladimir Serbinenko - - * config.h.in (_LARGEFILE_SOURCE): Add missing define. - (_FILE_OFFSET_BITS): Likewise. - Reported by: Seth Goldberg. - -2011-01-08 Grégoire Sutre - - * configure.ac: Check for libdevmapper header. - -2011-01-08 Vladimir Serbinenko - - * grub-core/fs/zfs/zfs.c (dmu_read): Use void * for some pointers to - avoid aliasing. - (fzap_lookup): Likewise. - (dnode_get): Likewise. - (make_mdn): Likewise. - (zfs_mount): Likewise. - (fzap_iterate): Use temporary pointer to avoid aliasing. - (grub_zfs_read): Likewise. - * grub-core/loader/i386/xnu.c (grub_xnu_boot): Likewise. - * grub-core/loader/xnu.c (grub_cmd_xnu_kernel): Use void * for some - pointers to avoid aliasing. - (grub_cmd_xnu_kernel64): Likewise. - (grub_xnu_load_driver): Likewise. - -2011-01-08 Vladimir Serbinenko - - * grub-core/commands/terminal.c (grub_cmd_terminal_input): Silence - aliasing warning. - (grub_cmd_terminal_output): Likewise. - Reported and tested by: Grégoire Sutre. - -2011-01-08 Vladimir Serbinenko - - * grub-core/term/at_keyboard.c (grub_keyboard_getkey): Silence spurious - warning. - Reported and tested by: Grégoire Sutre. - -2011-01-08 Vladimir Serbinenko - - * configure.ac: Do CPU substitution even if it's specified explicitly. - Reported and tested by: Alain Greppin. - -2011-01-08 Vladimir Serbinenko - - * grub-core/Makefile.am (rs_decoder.S): Force compilation with -Os. - Reported and tested by: Alain Greppin. - -2011-01-08 Vladimir Serbinenko - - Satisfy some bison versions need for inttypes.h. - - * grub-core/lib/posix_wrap/inttypes.h: New file. - * grub-core/lib/posix_wrap/sys/types.h (int8_t): New type. - (int16_t): Likewise. - (int32_t): Likewise. - (int64_t): Likewise. - Reported and tested by: Alain Greppin. - -2011-01-08 Vladimir Serbinenko - - * grub-core/loader/i386/bsdXX.c (grub_netbsd_load_elf_meta): - Silence spurious warning. - Reported and tested by: Alain Greppin. - -2011-01-07 Szymon Janc - - * docs/grub.texi (Support automatic decompression): Update with xz - decompression support. - -2011-01-07 Szymon Janc - - Improve loaders' kernel command line handling. - - * grub-core/lib/cmdline.c: New file. - * include/grub/lib/cmdline.h: Likewise. - * grub-core/loader/i386/linux.c (grub_cmd_linux): Use - grub_create_loader_cmdline to create kernel command line. - * grub-core/loader/i386/pc/linux.c (grub_cmd_linux): Likewise. - * grub-core/loader/powerpc/ieee1275/linux.c (grub_cmd_linux): Likewise. - * grub-core/loader/sparc64/ieee1275/linux.c (grub_cmd_linux): Likewise. - * grub-core/Makefile.core.def (linux16): Add lib/cmdline.c on i386_pc. - (linux): Add lib/cmdline.c on common. - -2011-01-07 Vladimir Serbinenko - - * grub-core/fs/xfs.c (grub_xfs_iterate_dir): Take into account that - inopos might be unaligned. - -2011-01-07 Vladimir Serbinenko - - * grub-core/disk/mdraid1x_linux.c (grub_mdraid_detect): Add missing - endian transformations. - * grub-core/disk/mdraid_linux.c (grub_mdraid_detect): Likewise. - Based on report by: Doug Nazar. - -2011-01-07 Doug Nazar - - * grub-core/disk/raid5_recover.c (grub_raid5_recover): Add missing - array->members[i].start_sector. - * grub-core/disk/raid6_recover.c (grub_raid6_recover): Likewise. - -2011-01-07 Vladimir Serbinenko - - * util/grub-setup.c (setup): Handle NetBSD and OpenBSD disklabels. - Reported and tested by: Grégoire Sutre. - -2011-01-06 Colin Watson - - * tests/util/grub-shell.in: Set serial terminfo type to `dumb', to - avoid causing test failures by clearing the screen. - -2011-01-06 Colin Watson - - * grub-core/kern/emu/getroot.c (find_root_device_from_mountinfo): - Fix prefix check to handle the case where dir ends with a slash - (most significantly, "/" itself). - Reported by: Michael Vogt. - -2011-01-05 Vladimir Serbinenko - - Run terminfo_cls on initing terminfo output to clear the screen and - move the cursor to (0,0). - - * grub-core/term/ieee1275/ofconsole.c (grub_ofconsole_init_output): - Call grub_terminfo_output_init. - * grub-core/term/serial.c (grub_serial_term_output): Set .init. - * grub-core/term/terminfo.c (grub_terminfo_output_init): New function. - * include/grub/terminfo.h (grub_terminfo_output_init): New declaration. - -2011-01-05 Vladimir Serbinenko - - * util/grub-install.in: Determine ofpathname, nvsetenv and efibootmgr - only when needed. - -2011-01-05 Vladimir Serbinenko - - * grub-core/term/terminfo.c (grub_terminfo_readkey): Handle keys with - CTRL. - -2011-01-05 Vladimir Serbinenko - - The E820 type 5 is BADRAM, not EXEC_CODE. - - * grub-core/loader/i386/bsd.c (GRUB_E820_EXEC_CODE): Removed. - (GRUB_E820_BADRAM): New define. - * grub-core/loader/i386/linux.c (grub_linux_boot): Translate code - into reserved. Propagate BADRAM. - * grub-core/loader/i386/bsd.c (GRUB_E820_EXEC_CODE): Removed. - (GRUB_E820_BADRAM): New define. - -2011-01-04 Vladimir Serbinenko - - * grub-core/lib/efi/relocator.c (grub_relocator_firmware_fill_events): - Ignore the memory post-4G. - (grub_relocator_firmware_alloc_region): Additional debug statement. - -2011-01-04 Vladimir Serbinenko - - * grub-core/kern/emu/getroot.c (grub_util_get_grub_dev): Check md/%s - names. - Reported by: David Pravec. - -2011-01-04 Vladimir Serbinenko - - * grub-core/disk/i386/pc/biosdisk.c (GRUB_MOD_INIT): Workaround buggy - BIOSes. - -2011-01-04 Vladimir Serbinenko - - * grub-core/lib/reed_solomon.c (grub_reed_solomon_add_redundancy): - Prevent overflow. - (grub_reed_solomon_recover): Likewise. - -2011-01-04 Vladimir Serbinenko - - * grub-core/lib/reed_solomon.c (main) [TEST]: Reactivate normal test. - -2011-01-04 Vladimir Serbinenko - - * grub-core/lib/reed_solomon.c (scratch) [! STANDALONE]: Remove leftover - variable. - -2011-01-04 Colin Watson - - * grub-core/commands/legacycfg.c (GRUB_MOD_INIT): Fix typo in - descriptions of extract_legacy_entries_source and - extract_legacy_entries_configfile. - Reported by: Seung Soo, Ha. - -2011-01-03 Colin Watson - - * grub-core/bus/pci.c (grub_pci_iterate): Skip remaining functions - on devices that do not implement function 0. - -2011-01-03 Dave Vasilevsky - - * grub-core/fs/hfsplus.c: Make parent unsigned. - (grub_hfsplus_cmp_catkey): Don't compare using subtraction, it - overflows. - (grub_hfsplus_cmp_extkey): Likewise - -2011-01-03 Vladimir Serbinenko - - * util/grub-install.in: Correctly use bootloader_id and not - GRUB_DISTRIBUTOR on efibootmgr line. - -2011-01-03 Vladimir Serbinenko - - * util/grub-mkfont.c (main): Report errors in FT_New_Face. - -2010-12-31 Ian Campbell - - * util/grub.d/20_linux_xen.in (linux_entry): Correctly capitalize - Xen and reorder menu item wording to make it clearer that this entry - will launch Xen. Print separate messages when loading Xen and - Linux. - -2010-12-31 Vladimir Serbinenko - - * grub-core/partmap/amiga.c (GRUB_AMIGA_PART_MAGIC): New define. - (amiga_partition_map_iterate): Check "PART" magic to avoid a very long - loop in case of incorrect amiga partmap. - -2010-12-31 Vladimir Serbinenko - - * grub-core/partmap/amiga.c (GRUB_AMIGA_RDSK_MAGIC): New define. - (amiga_partition_map_iterate): Use grub_memcmp instead of grub_strcmp. - Reported by:EHeM. - -2010-12-31 Vladimir Serbinenko - - * grub-core/loader/i386/bsdXX.c (grub_openbsd_find_ramdisk): Silence - spurious warning. - Reported by: crocket - -2010-12-27 Vladimir Serbinenko - - * grub-core/loader/xnu.c (grub_cmd_xnu_kernel) [! GRUB_MACHINE_EFI]: - Preload EFIemu. - (grub_cmd_xnu_kernel64) [! GRUB_MACHINE_EFI]: Likewise. - -2010-12-27 Vladimir Serbinenko - - * grub-core/loader/xnu.c (grub_cmd_xnu_kext): Abort if no kernel - is loaded - (grub_cmd_xnu_kextdir): Likewise. - (grub_cmd_xnu_splash): Likewise. - -2010-12-27 Vladimir Serbinenko - - Avoid using Reed-Solomon with 0 redundancy. - - * grub-core/kern/i386/pc/startup.S: Remove 0-data check. - * grub-core/lib/reed_solomon.c (decode_block): Do not proceed on 0 data - or 0 redundancy. - (grub_reed_solomon_add_redundancy): Do not proceed with 0 redundancy. - (grub_reed_solomon_recover): Likewise. - -2010-12-27 Vladimir Serbinenko - - Don't use disk subsystem in freebsd_boot. - - * grub-core/loader/i386/bsd.c (freebsd_bootdev): New variable. - (freebsd_biosdev): Likewise. - (grub_freebsd_boot): Use freebsd_bootdev and freebsd_biosdev. - (grub_cmd_freebsd): Set freebsd_bootdev and freebsd_biosdev. - -2010-12-26 Vladimir Serbinenko - - Handling of files of unknown size is currently limited. They can't be - used e.g. for initrd or modules. Moreover gzip handling of not - easily seekable files is buggy. Disable unknown file size for now. May - be inefficient but works. - - * grub-core/io/gzio.c (test_header): Always retrieve the file size. - * grub-core/io/xzio.c (grub_xzio_open): Likewise. - -2010-12-25 Mirko Parthey - - * grub-core/boot/i386/pc/boot.S: Fix %es:%bx pointing to nowhere on - floppy probe. - -2010-12-25 Jeroen Dekkers - - * grub-core/disk/raid.c (insert_array): Don't add spurious members. - -2010-12-25 Shea Levy - - * grub-core/genmod.sh.in: Use @OBJCOPY@ rather than objcopy. - -2010-12-25 Vladimir Serbinenko - - * util/grub.d/30_os-prober.in: Don't emit drivemap directive for - Windows Server 2008. - Reported by: Devin Giddings. - -2010-12-25 Vladimir Serbinenko - - * grub-core/commands/acpihalt.c (grub_acpi_halt): Sleep for 1.5 before - writing an error message because of async power management. - * grub-core/kern/mips/yeeloong/init.c (grub_halt): Likewise. - (grub_reboot): Likewise. - -2010-12-23 Jordan Uggla - - * tests/util/grub-shell.in: Suppress "ACPI shutdown failed" error to - keep unit tests from failing when they shouldn't. - -2010-12-21 Colin Watson - - * include/grub/offsets.h (GRUB_KERNEL_I386_PC_RAW_SIZE): The - previous patch increased the size of the RS code by 20 bytes (at - least with gcc-4.4), so increase this by 20 bytes to match. - (GRUB_KERNEL_I386_PC_NO_REED_SOLOMON_PART): Likewise. - -2010-12-21 Colin Watson - - * grub-core/lib/reed_solomon.c (gauss_solve): Fix size of standalone - scratch area. Make sure to initialise chosen in standalone mode as - well as non-standalone. - Reported by: Robert Hooker and Andy Whitcroft. - Tested by: Andy Whitcroft. - -2010-12-21 Colin Watson - - * grub-core/commands/echo.c (grub_cmd_echo): Make UTF-8-clean by - constructing a new unescaped string and passing it to grub_xputs in - one go, rather than passing characters to grub_printf one at a time. - -2010-12-21 Colin Watson - - * grub-core/fs/udf.c (read_string): Pacify GCC warning by - initialising utf16. - -2010-12-21 Colin Watson - - * util/grub-mkconfig_lib.in (gettext_quoted): Add clarifying - comment. Add an extra layer of quotation, requiring the output of - this function to be used in a printf format string. - (gettext_printf): New function. - * util/grub.d/10_hurd.in: Use gettext_printf where appropriate. - Extract translatable strings from here-documents and use a temporary - variable instead, so that xgettext can find them. - * util/grub.d/10_kfreebsd.in: Likewise. - * util/grub.d/10_linux.in: Likewise. - * util/grub.d/20_linux_xen.in: Likewise. - - * po/grub.d.sed: New file. - * po/Makefile.in.in ($(DOMAIN).pot-update): Extract gettext_printf - arguments. Set c-format flags on all strings extracted from - util/grub.d/ (xgettext refuses to include these itself for strings - it extracted from a shell file, but these really are c-format). - -2010-12-20 Vladimir Serbinenko - - * grub-core/loader/i386/multiboot_mbi.c (grub_multiboot_add_module): - Avoid next pointing to nowhere. - -2010-12-19 Vladimir Serbinenko - - * grub-core/fs/affs.c (grub_affs_mount): Read data->bblock.rootblock - rather than assuming than rootblock is exactly in the middle. - (grub_affs_label): Likewise. - -2010-12-19 Vladimir Serbinenko - - * grub-core/fs/affs.c (grub_affs_fs) [GRUB_UTIL]: Explicitly set - reserved_first_sector to 0. - * grub-core/fs/cpio.c (grub_cpio_fs) [GRUB_UTIL]: Likewise. - * grub-core/fs/sfs.c (grub_sfs_fs) [GRUB_UTIL]: Likewise. - * grub-core/fs/xfs.c (grub_xfs_fs) [GRUB_UTIL]: Likewise. - -2010-12-19 Vladimir Serbinenko - - Fix handling of UTF-16 UDF labels. - - * grub-core/fs/udf.c (grub_udf_iterate_dir): Move string-parsing part - (read_string): .. here. - (grub_udf_label): Use read_string. - -2010-12-19 BVK Chaitanya - - * grub-core/normal/menu_entry.c (run): Execute commands from menu - editor under argument scope. - Reported by: Jordan Uggla - -2010-12-18 Vladimir Serbinenko - - * util/grub-mkfont.c (main): Handle errors from FT_Set_Pixel_Sizes. - -2010-12-18 Colin Watson - - * grub-core/normal/term.c (print_more): Make \r or \n scroll one - line, and other keys scroll an entire page (previous handling was - for \r and \n to scroll a page and other keys to scroll two lines). - -2010-12-18 Vladimir Serbinenko - - * grub-core/loader/i386/multiboot_mbi.c (grub_multiboot_make_mbi): - Set ptrdest to correct get_physical_target_address rather than - incorrect get_virtual_current_address. - -2010-12-18 kashyap garimella - - * grub-core/loader/i386/multiboot_mbi.c (grub_multiboot_load): Use - correct cat to grub_uint8_t * rather than grub_uint32_t *. - -2010-12-10 Colin Watson - - * .bzrignore: Ignore grub-core/rs_decoder.S. - -2010-12-10 Colin Watson - - * grub-core/gettext/gettext.c (grub_gettext_init_ext): Factor out - .mo/.mo.gz opening sequence to ... - (grub_mofile_open_lang): ... here. - (grub_gettext_init_ext): If opening ll_CC fails, try ll. - * util/grub.d/00_header.in (grub_lang): Include country part of - locale. - Reported by: Mario Limonciello. - -2010-12-09 Robert Millan - - * NEWS: Document addition of ZFS support. - -2010-12-04 Colin Watson - - * grub-core/kern/i386/pc/startup.S (grub_console_getkey): Use `>> 1' - rather than `/ 2', as the latter requires -Wa,--divide which would - require bumping our minimum binutils version. - -2010-12-03 BVK Chaitanya - - * util/grub-script-check.c (main): Print script line number on - error. - -2010-12-01 Robert Millan - - * grub-core/fs/zfs/zfs.c: New file. - * grub-core/fs/zfs/zfs_fletcher.c: Likewise. - * grub-core/fs/zfs/zfs_lzjb.c: Likewise. - * grub-core/fs/zfs/zfs_sha256.c: Likewise. - * grub-core/fs/zfs/zfsinfo.c: Likewise. - - * include/grub/zfs/dmu.h: Likewise. - * include/grub/zfs/dmu_objset.h: Likewise. - * include/grub/zfs/dnode.h: Likewise. - * include/grub/zfs/dsl_dataset.h: Likewise. - * include/grub/zfs/dsl_dir.h: Likewise. - * include/grub/zfs/sa_impl.h: Likewise. - * include/grub/zfs/spa.h: Likewise. - * include/grub/zfs/uberblock_impl.h: Likewise. - * include/grub/zfs/vdev_impl.h: Likewise. - * include/grub/zfs/zap_impl.h: Likewise. - * include/grub/zfs/zap_leaf.h: Likewise. - * include/grub/zfs/zfs.h: Likewise. - * include/grub/zfs/zfs_acl.h: Likewise. - * include/grub/zfs/zfs_znode.h: Likewise. - * include/grub/zfs/zil.h: Likewise. - * include/grub/zfs/zio.h: Likewise. - * include/grub/zfs/zio_checksum.h: Likewise. - - * Makefile.util.def: Build ZFS into libgrubmods. - * grub-core/Makefile.core.def: Build zfs.mod. - -2010-11-30 Szymon Janc - - * grub-core/commands/regexp.c (grub_cmd_regexp): Remove unused - variable. - * grub-core/commands/wildcard.c (match_files): Likewise. - -2010-11-30 Robert Millan - - * grub-core/loader/i386/bsd.c - (grub_cmd_freebsd_loadenv, grub_cmd_freebsd_module_elf): Check - whether kernel is loaded using grub_loader_is_loaded(), rather - than `kernel_type', which may still be `KERNEL_TYPE_NONE' under - certain error conditions. - -2010-11-30 Robert Millan - - * grub-core/commands/echo.c: Include `'. - (grub_cmd_echo): Call grub_refresh() after printing a message. - -2010-11-26 Vladimir Serbinenko - - Avoid using tricks for initialising endian variables. - - * grub-core/partmap/gpt.c (grub_gpt_partition_type_bios_boot): - Make const. - (GRUB_MOD_INIT): Don't byte-swap. - * include/grub/gpt_partition.h (GRUB_GPT_PARTITION_TYPE_BIOS_BOOT): - Use grub_cpu_to_le16_compile_time and grub_cpu_to_le32_compile_time. - * include/grub/types.h (grub_swap_bytes16_compile_time): New macro. - (grub_swap_bytes32_compile_time): Likewise. - (grub_cpu_to_le32_compile_time): Likewise. - (grub_cpu_to_le16_compile_time): Likewise. - -2010-11-26 Vladimir Serbinenko - - * util/grub-setup.c (setup): Stop recommending --force. People who - understand the dangers of blocklists are able to find this option - anyway and the ones who don't shouldn't use it anyway. - -2010-11-26 Robert Millan - - * grub-core/term/i386/pc/vga_text.c (VGA_TEXT_SCREEN): Beautify. - Update all users. - -2010-11-26 Colin Watson - - Fix LVM-on-RAID probing. - - * util/grub-probe.c (probe): Remember which disk was detected as - RAID (perhaps an LVM physical volume). Use that disk's raidname - rather than that of the top-level disk. - -2010-11-25 BVK Chaitanya - - Fix cmdline argument quotes for setparams command of menuentry - definitions. - - * grub-core/commands/menuentry.c (setparams_prefix): Use single - quotes for arguments. - * grub-core/lib/legacy_parse.c (grub_legacy_escape): Use - grub_strchrsub function instead. - - * include/grub/misc.h (grub_strchrsub): New function. - -2010-11-24 Colin Watson - - * util/deviceiter.c (grub_util_iterate_devices): Save a bit of - effort by skipping "." and ".." entries up-front. - Suggested by: Michael Lazarev. - -2010-11-24 Colin Watson - - * grub-core/Makefile.core.def (xz_decompress): Move -lgcc from - ldflags to ldadd, to fix link line ordering. - (none_decompress): Likewise. - -2010-11-24 Colin Watson - - * grub-core/Makefile.core.def (kernel): Add kern/emu/cache.S for emu - platforms. - (grub-emu-lite): Remove kern/emu/cache.S. - -2010-11-23 Colin Watson - - * util/deviceiter.c (compare_devices): If the by-id link for a - device couldn't be resolved, fall back to sorting by the by-id link - rather than segfaulting. - Reported and tested by: Daniel Mierswa. - -2010-11-23 Colin Watson - - * Makefile.util.def (grub-menulst2cfg): List libraries in ldadd, not - ldflags, to fix link line ordering. - -2010-11-23 Colin Watson - - * grub-core/Makefile.am (gentrigtables): Put -lm after $<; some - linkers are picky about this. - -2010-11-23 Colin Watson - - * grub-core/Makefile.am (command.lst): Adjust sed expression - ordering so that extended and priority commands aren't treated as - ordinary commands. - -2010-11-23 Colin Watson - - * include/grub/gpt_partition.h (GRUB_GPT_PARTITION_TYPE_BIOS_BOOT): - Remove byte-swapping function calls, which are not valid in - structure initialisers. - * grub-core/partmap/gpt.c (grub_gpt_partition_type_bios_boot): Make - non-const. - (GRUB_MOD_INIT): Byte-swap data1, data2, and data3 fields of - grub_gpt_partition_type_bios_boot. - -2010-11-22 Colin Watson - - Fix test program build on GNU/kFreeBSD. - - * Makefile.util.def (example_unit_test): Add `$(LIBZFS) - $(LIBNVPAIR)' library dependencies. - -2010-11-22 Colin Watson - - * util/grub-install.in: Fix parsing of --grub-mkrelpath= option. - -2010-11-22 Colin Watson - - * util/grub-install.in: Remove excessive quoting that broke - installations to RAID devices. - -2010-11-19 Vladimir Serbinenko - - * grub-core/loader/i386/linux.c (grub_cmd_linux): Pass correctly the - bootloader version instead of 0. - -2010-11-19 Vladimir Serbinenko - - * grub-core/disk/mdraid1x_linux.c (grub_mdraid_detect): Fix spurious - warning. - -2010-11-19 Vladimir Serbinenko - - * grub-core/disk/mdraid1x_linux.c (grub_mdraid_detect): Don't try to - retrieve the metadat sector if size isn't known. - * grub-core/disk/mdraid_linux.c (grub_mdraid_detect): Likewise. - -2010-11-18 Robert Millan - - * grub-core/fs/btrfs.c (grub_btrfs_mount): Replace grub_strncmp() - with grub_memcmp(). - -2010-11-18 Vladimir Serbinenko - - * grub-core/normal/menu_entry.c (print_up): Fix displacement of up - arrow. - Reported by: Jordan Uggla. - -2010-11-16 Vladimir Serbinenko - - Make better UTF compliant. - - * grub-core/normal/charset.c (grub_utf8_to_utf16): Handle 6- and 7-byte - sequences as incorrect. - (grub_is_valid_utf8): Likewise. - (grub_utf8_to_ucs4): Likewise. - (grub_ucs4_to_utf8): Handle codepoints outside of BMP. - (grub_ucs4_to_utf8_alloc): Likewise. - * include/grub/charset.h (grub_utf16_to_utf8): Likewise. - -2010-11-16 Vladimir Serbinenko - - Make legacy_source behave like source. - - * grub-core/commands/legacycfg.c (legacy_file): Don't call - grub_show_menu. - (grub_cmd_legacy_source): Call grub_show_menu if needed. - -2010-11-16 Colin Watson - - * conf/Makefile.common (CFLAGS_GNULIB): Add -Wno-unused-parameter. - (-Wunused implies -Wunused-parameter, but not vice versa). - -2010-11-16 Colin Watson - - * configure.ac: Make error messages less confusing by testing for - -Wtrampolines rather than -Wno-trampolines (since -Wno-* is always - accepted, but produces a diagnostic if something else is wrong). - -2010-11-15 Vladimir Serbinenko - - * grub-core/term/at_keyboard.c (grub_keyboard_controller_read) - [GRUB_MACHINE_MIPS_YEELOONG || GRUB_MACHINE_QEMU]: ifdef-ed out - (now unused). - (grub_keyboard_controller_init) - [GRUB_MACHINE_MIPS_YEELOONG || GRUB_MACHINE_QEMU]: Don't attempt to - read the initial state since controller isn't inited yet. - -2010-11-15 Vladimir Serbinenko - - * grub-core/lib/relocator.c (malloc_in_range): Take into account that - allocate_regbeg may need to create new chunk header. - -2010-11-14 Vladimir Serbinenko - - Fix quoting in legacy parser. - - * grub-core/lib/legacy_parse.c (grub_legacy_escape): Correctly handle - single quotes. - (grub_legacy_parse): Likewise. - Reported by: Jordan Uggla. - Tested by: Jordan Uggla. - -2010-11-14 Vladimir Serbinenko - - Don't add -lgcc on i386 and x86_64. - - * configure.ac (LIBS): Don't add -lgcc on i386 and x86_64. - * conf/Makefile.common (LDADD_KERNEL): Likewise. - * grub-core/Makefile.core.def (kernel): Use LDADD_KERNEL. - -2010-11-14 Vladimir Serbinenko - - * configure.ac: Add -Wno-trampolines when supported. - -2010-11-14 Modestas Vainius - - * grub-core/kern/emu/getroot.c (grub_util_is_dmraid): Recognise ddf1_ - fakeraid. - -2010-11-14 Giuseppe Caizzone - - Add generic logical block size support for UDF. - - * grub-core/fs/udf.c (GRUB_UDF_LOG2_BLKSIZE): Removed. - (GRUB_UDF_BLKSZ): Removed. - (struct grub_udf_data): New field "lbshift" to hold the logical block - size of the file system in log2 format. All users updated. - (sblocklist): Change type to unsigned. - (grub_udf_mount): Change type of "sblklist" to unsigned. - Move AVDP search before VRS recognition, because the latter requires - knowledge of the logical block size, which is detected during the - former. - Detect and validate logical block size during AVDP search, adding - support for block sizes 512, 1024 and 4096. - Make VRS recognition independent of block size. - -2010-11-14 Giuseppe Caizzone - - Properly handle deleted files on UDF. - - * grub-core/fs/udf.c (grub_udf_iterate_dir): Skip directory entries - whose "characteristics" field has the bit GRUB_UDF_FID_CHAR_DELETED - set. - -2010-11-14 Giuseppe Caizzone - - Support reading files larger than 2 GiB. - - * grub-core/fs/udf.c (grub_udf_iterate_dir): Change type of variable - "offset" to grub_off_t. - (grub_udf_read_file): Likewise for parameter "pos". - -2010-11-14 Vladimir Serbinenko - - * docs/grub.texi (Changes from GRUB Legacy): Note when save_env is - unavailable. - (Simple configuration): Refer to Changes from GRUB Legacy about - save_env availability. - -2010-11-14 Vladimir Serbinenko - - * util/grub-install.in: Ignore empty partition table detection - instead of trying to include part_ module. - -2010-11-14 Vladimir Serbinenko - - * grub-core/disk/lvm.c (GRUB_MOD_FINI): Reset the vg_list. Fixes - LVM on RAID support. - -2010-11-14 Vladimir Serbinenko - - Properly define WORDS_BIGENDIAN in wrapped environments. - - * grub-core/lib/libgcrypt_wrap/cipher_wrap.h (WORDS_BIGENDIAN): New - definition. - * grub-core/lib/posix_wrap/sys/types.h (WORDS_BIGENDIAN): Likewise. - - Reported by: Manoel Rebelo Abranches. - Tested by: Manoel Rebelo Abranches. - -2010-11-13 Vladimir Serbinenko - - * util/grub-mkconfig.in: Fix quoting. - -2010-11-13 Vladimir Serbinenko - - Support big ext2 files. - - * grub-core/fs/ext2.c (grub_ext2_inode): Rename dir_acl to size_high. - (grub_ext2_read_block): Support triple indirect blocks. - (grub_ext2_read_file): Use 64-bit types and read size_high. - (grub_ext2_open): Read size_high. - Reported by: Ximin Luo. - Tested by: Manoel Rebelo Abranches. - -2010-11-13 Vladimir Serbinenko - - * util/grub-install.in: Handle filenames containing spaces. - Reported by: Jordan Uggla. - Tested by: Jordan Uggla. - -2010-11-13 Vladimir Serbinenko - - * util/grub-mkconfig.in (grub_script_check): New variable. - Use grub_script_check instead of grub-script-check. - Reported by: Barry Jackson. - -2010-11-13 Vladimir Serbinenko - - * docs/grub.texi (menu): Correct the order. - Reported by: D. Hugh Redelmeier. - -2010-11-12 Vladimir Serbinenko - - * grub-core/kern/i386/pc/startup.S (multiboot_trampoline): Add missing - jump. - -2010-11-08 Manoel Rebelo Abranches - - * include/grub/elfload.h (grub_elf32_size): New parameter. - All users updated. - Return maximum segments alignment. - (grub_elf64_size): Likewise. - * kern/elf.c (grub_elf32_size): New parameter. All users updated. - Return maximum segments alignment. - (grub_elf64_size): Likewise. - * grub-core/loader/powerpc/ieee1275/linux.c: - (grub_linux_claimmap_iterate): New function. Uses the - "available" property in the "memory" node for memory allocation - for kernel in the PowerPC loader. - (grub_linux_load32): Correctly find linux entry point offset. - (grub_linux_load64): Likewise. - -2010-11-07 Robert Millan - - On mips-yeeloong, build with -march=loongson2f when this flag is - available (GCC >= 4.4). - * conf/Makefile.common [COND_mips_yeeloong] (CFLAGS_PLATFORM): Remove - `-march=mips3'. - * configure.ac: For mips-yeeloong, add -march=loongson2f if available, - or otherwise add -march=mips3. - -2010-11-07 BVK Chaitanya - - Suppress shell expansion on echo '*' and echo "*" like cases. - Reported by: Jordan Uggla. - - * grub-core/script/execute.c (grub_script_arglist_to_argv): Escape - string arguments before shell expansion. - * tests/grub_cmd_echo.in: New testcases. - -2010-11-07 Robert Millan - - * conf/mips-qemu-mips.rmk: Remove stale file from previous - transition. - -2010-11-07 Vladimir Serbinenko - - * grub-core/kern/emu/hostdisk.c - (convert_system_partition_to_system_disk): Handle devices like "sdaa1". - -2010-11-06 Vladimir Serbinenko - - * include/grub/emu/misc.h: Don't include grub/util/libzfs.h. - * include/grub/emu/misc.h (grub_get_libzfs_handle): Move from here ... - * include/grub/util/libzfs.h (grub_get_libzfs_handle): ... here. - -2010-11-06 Vladimir Serbinenko - - * grub-core/fs/ntfs.c (grub_ntfs_uuid): Make uppercase. - -2010-11-06 Vladimir Serbinenko - - * util/grub-install.in: Replace useless recomendation to pass - --modules with a recomendation to report a bug. - -2010-11-06 Vladimir Serbinenko - - Properly register serial terminfo. - Reported by: Jordan Uggla - - * grub-core/term/serial.c (grub_serial_terminfo_input_template): New - const. - (grub_serial_terminfo_output_template): Likewise. - (grub_cmd_serial): Register "serial" with terminfo. - (GRUB_MOD_INIT(serial)): Fill grub_serial_terminfo_input and - grub_serial_terminfo_output. - -2010-11-05 Robert Millan - - * util/grub-mkconfig.in: Remove gfxterm.mod probe (no longer - needed). - -2010-11-05 Robert Millan - - On Yeeloong, pass machine type information to Linux. - - * grub-core/loader/mips/linux.c [GRUB_MACHINE_MIPS_YEELOONG] - (LOONGSON_MACHTYPE): New macro, set to - "machtype=lemote-yeeloong-2f-8.9inches". - [LOONGSON_MACHTYPE] (grub_cmd_linux): Pass LOONGSON_MACHTYPE as - additional argument to Linux. - -2010-11-04 Robert Millan - - * util/deviceiter.c (grub_util_iterate_devices): Increase SCSI - limit to 48 (to cope with Sun Fire X4500), and IDE limit to 96 - (its SATA disks are detected as slaveless IDE master drives on - kFreeBSD). - Reported by Carsten Aulbert. - -2010-11-02 Colin Watson - - * util/bin2h.c (main): Fix spelling error in generated output. - -2010-11-01 Grégoire Sutre - - * grub-core/partmap/bsdlabel.c (iterate_real): Fix an integer overflow. - -2010-11-01 Vladimir Serbinenko - - * grub-core/loader/i386/linux.c (grub_cmd_linux): Autoload vbe.mod if - vga= option is supplied. - -2010-11-01 Vladimir Serbinenko - - * util/grub.d/10_hurd.in: Don't call savedefault on recovery entries. - * util/grub.d/10_kfreebsd.in: Likewise. - * util/grub.d/10_linux.in: Likewise. - * util/grub.d/20_linux_xen.in: Likewise. - -2010-11-01 Vladimir Serbinenko - - * grub-core/lib/arg.c (grub_arg_parse): Avoid interpreting direct - argument as an argument to no-argument option. - -2010-11-01 Vladimir Serbinenko - - * util/grub.d/10_linux.in: Add missing load_video with explicit - GRUB_GFXPAYLOAD_LINUX. - -2010-11-01 Vladimir Serbinenko - - * Makefile.am (libgrub.pp): Propagate the libgrub.a split. - -2010-11-01 Vladimir Serbinenko - - * grub-core/disk/mdraid1x_linux.c (grub_mdraid_detect): Do not put - elements with invlid index. - * grub-core/disk/mdraid_linux.c (grub_mdraid_detect): Likewise. - * grub-core/disk/raid.c (insert_array): Automatically reallocate - members. - * include/grub/raid.h (grub_raid_member): New struct. - (grub_raid_array): Transform devices and start_sector into usage of - grub_raid_member. All users updated - (allocated_devs): New member. - -2010-11-01 Vladimir Serbinenko - - * docs/man/grub-set-default.h2m: Clarify that only saved default entry - is modified - -2010-10-29 BVK Chaitanya - - NetBSD build fix for getline function conflict from gnulib. - - * Makefile.util.def (libgrubkern.a): New library for grub kernel - components that depend on gnulib headers. - (libgrubmods.a): Renamed from earlier libgrub.a. - * conf/Makefile.common: Remove gnulib from *_LIBRARY flags. - -2010-10-26 Vladimir Serbinenko - - * util/grub-setup.c (setup): Refuse to do a cross-disk embeddingless - install rather than creating a broken install. - -2010-10-26 Vladimir Serbinenko - - * util/grub-setup.c (argp): Remove misleading example of installing to - a partition. - -2010-10-26 Vladimir Serbinenko - - * util/grub-setup.c (setup): Clarify the error message. - -2010-10-26 Vladimir Serbinenko - - * include/grub/types.h (grub_target_off_t): Removed no longer used type. - -2010-10-23 Vladimir Serbinenko - - * grub-core/kern/emu/misc.c - (grub_make_system_path_relative_to_its_root) - [HAVE_LIBZFS && HAVE_LIBNVPAIR]: Fix mountpoint return on ZFS. - -2010-10-23 Vladimir Serbinenko - - * grub-core/kern/emu/misc.c - (grub_make_system_path_relative_to_its_root): Revert r2882. - -2010-10-22 Vladimir Serbinenko - - * grub-core/lib/relocator.c (grub_relocator_subchunk): Remove now - useless field head. All users updated. - (free_subchunk): Correct handling of IN_REGION subchunk. - -2010-10-22 Colin Watson - - * docs/grub.texi (Installing GRUB using grub-install): Proofread. - (Supported kernels): Likewise. - -2010-10-18 Grégoire Sutre - - Make mktemp invocations portable. - - * grub-core/genmod.sh.in: Use mktemp with an explicit template, and - exit if mktemp fails. - * tests/grub_script_blockarg.in: Likewise. - * tests/partmap_test.in: Likewise. - * tests/util/grub-shell-tester.in: Likewise. - * tests/util/grub-shell.in: Likewise. - * util/powerpc/ieee1275/grub-mkrescue.in: Likewise. - * Makefile.am: Likewise, and chain shell commands with `&&' - instead of ';'. - * util/grub-mkrescue.in: Use the same explicit template as above, and - exit if mktemp fails. - -2010-10-18 BVK Chaitanya - - * util/grub.d/10_linux.in: Fix built-in initramfs image mode for - Linux kernel, reported by Dennis Schridde. - -2010-10-17 Szymon Janc - - * grub-core/normal/auth.c (grub_auth_check_authentication): - Set-but-not-used variable removed. - -2010-10-17 Vladimir Serbinenko - - * docs/grub.texi (GNU/Linux): Document APM unavailability with - 32-bit linux protocol. - -2010-10-17 Vladimir Serbinenko - - * grub-core/kern/i386/pc/startup.S (grub_console_setcursor): Check - cursor shape for sanity. - -2010-10-17 Vladimir Serbinenko - - * docs/grub.texi (Installation): Document buggy BIOS install. - -2010-10-17 Vladimir Serbinenko - - * docs/grub.texi (Installation): Indent. - -2010-10-17 Vladimir Serbinenko - - * util/grub-setup.c (setup): New parameter allow_floppy. - (arguments): New member allow_floppy. - (argp_parser): Handle --allow-floppy. - (main): Pass allow_floppy. - * util/grub-install.in: New option --allow-floppy passed though to - grub-setup. - -2010-10-17 Vladimir Serbinenko - - * util/grub-install.in: Handle partitionless disks. - -2010-10-17 Vladimir Serbinenko - - * util/grub-setup.c (setup): Don't clean blocklists before readability - verfification. - -2010-10-16 Vladimir Serbinenko - - * docs/grub.texi (Installation): Document embedding zone. Remove - obsolete grub-install example. - -2010-10-16 Szymon Janc - - * grub-core/commands/legacycfg.c (grub_cmd_legacy_kernel): - Set-but-not-used variable ifdef'ed. - * grub-core/lib/legacy_parse.c (grub_legacy_parse): Likewise. - * grub-core/bus/usb/ohci.c (grub_ohci_pci_iter): Set-but-not-used - variable removed. - * grub-core/disk/lvm.c (grub_lvm_scan_device): Likewise. - * grub-core/fs/jfs.c (grub_jfs_find_file): Likewise. - * grub-core/fs/minix.c (grub_minix_dir): Likewise. - * grub-core/fs/sfs.c (grub_sfs_read_extent): Likewise. - * grub-core/fs/ufs.c (grub_ufs_dir): Likewise. - * grub-core/gfxmenu/gui_list.c (grub_gui_list_new): Likewise. - * grub-core/gfxmenu/view.c (redraw_menu_visit): Likewise. - * grub-core/gfxmenu/widget-box.c (draw): Likewise. - * grub-core/lib/relocator.c (malloc_in_range): Likewise. - * grub-core/loader/i386/bsdXX.c (grub_netbsd_load_elf_meta): Likewise. - * grub-core/loader/i386/bsd_pagetable.c (fill_bsd64_pagetable): - Likewise. - -2010-10-16 Vladimir Serbinenko - - * grub-core/commands/acpihalt.c (skip_ext_op): Skip index field op. - * include/grub/acpi.h (GRUB_ACPI_EXTOPCODE_INDEX_FIELD_OP): New - enum value. - -2010-10-16 Vladimir Serbinenko - - * grub-core/commands/acpihalt.c (get_sleep_type): Accept \_S5_ as - synonym to _S5_. Needed for some DSDTs. - -2010-10-16 Vladimir Serbinenko - - Userspace ACPI parser debugging. - - * grub-core/commands/acpihalt.c [GRUB_DSDT_TEST]: Include userspace - headers and add relevant defines. Don't include standard headers. - (main) [GRUB_DSDT_TEST]: New function. - * include/grub/acpi.h [GRUB_DSDT_TEST]: Don't include standard headers. - Don't declare functions. - -2010-10-16 Vladimir Serbinenko - - Remove dead grub_efi_mm_fini. - - * grub-core/kern/efi/mm.c (allocated_page): Removed. - (ALLOCATED_PAGES_SIZE): Likewise. - (MAX_ALLOCATED_PAGES): Likewise. - (allocated_pages): Likewise. - (grub_efi_allocate_pages): Don't record allocated pages. - (grub_efi_free_pages): Likewise. - (grub_efi_mm_init): Likewise. - (grub_efi_mm_fini): Removed. - -2010-10-16 Vladimir Serbinenko - - * grub-core/kern/efi/mm.c (BYTES_TO_PAGES): Round up instead of down. - (grub_efi_mm_init): Take into account the memory map size increase. - -2010-10-16 Vladimir Serbinenko - - * grub-core/term/ns8250.c (do_real_config): Set port->broken to 0. - (serial_hw_put): Wait based on real time rather than port reads. Don't - roken ports. - * include/grub/serial.h (grub_serial_port): New field broken. - -2010-10-16 Robert Millan - - * grub-core/kern/emu/misc.c - (grub_make_system_path_relative_to_its_root): Fix premature return - when processing non-root ZFS filesystems. - Reported by Sergio Talens-Oliag. - -2010-10-15 Robert Millan - - * util/grub.d/10_linux.in (list): Expand "vmlinu[zx]" instances to - guarantee compressed ones are processed first. - -2010-10-14 Vladimir Serbinenko - - * grub-core/efiemu/main.c (grub_efiemu_prepare): Handle errors from - grub_efiemu_autocore. - -2010-10-14 Vladimir Serbinenko - - * grub-core/kern/i386/pc/startup.S (bypass_table): Use 0x1b explicitly - rather than 0x1b. - (grub_console_getkey): Use correct jae opcode rather than ja. - -2010-10-12 Robert Millan - - * util/grub-mkconfig.in: Merge `GRUB_DISABLE_LINUX_RECOVERY' and - `GRUB_DISABLE_NETBSD_RECOVERY' into a single `GRUB_DISABLE_RECOVERY' - variable. All references updated. - - * util/grub.d/10_kfreebsd.in: Support recovery boot entries. - -2010-10-08 Vladimir Serbinenko - - Correctly distinguish mdraid flavours. - - * grub-core/disk/raid.c (grub_raid_getname) [GRUB_UTIL]: New function. - (insert_array): New argument raid. - * include/grub/disk.h (grub_disk_dev) [GRUB_UTIL]: New member raidname. - * include/grub/raid.h (grub_raid_array) [GRUB_UTIL]: New member driver. - * util/grub-probe.c (probe): PRint raidname instead of plainly "mdraid". - -2010-10-09 Vladimir Serbinenko - - * grub-core/kern/i386/pc/startup.S (grub_console_getkey): Fix incorrect - handling of special keys. - -2010-10-02 AleÅ¡ Nesrsta - - * include/grub/scsi.h (grub_make_scsi_id): Fix incorrect usgae of - GRUB_SCSI_ID_BUS_SHIFT instead of GRUB_SCSI_ID_LUN_SHIFT. - -2010-10-02 AleÅ¡ Nesrsta - - * grub-core/bus/usb/ohci.c (GRUB_OHCI_TDS): Increase. - * grub-core/bus/usb/uhci.c (N_TD): New definition. All previous implicit - users updated. - * grub-core/bus/usb/usbtrans.c (grub_usb_bulk_setup_readwrite): - Use right endpoint when querying descriptor. - -2010-10-01 Vladimir Serbinenko - - Clear out 0x80 color bit on EFI. - Tested by: decoder - Reported by: decoder and meta tech. - - * grub-core/term/efi/console.c (grub_console_standard_color): Removed. - (grub_console_setcolorstate): Clear out 0x80 bit. - Use GRUB_TERM_DEFAULT_STANDARD_COLOR. - (grub_console_output): Use GRUB_TERM_DEFAULT_NORMAL_COLOR. - Use GRUB_TERM_DEFAULT_HIGHLIGHT_COLOR. - -2010-10-01 Vladimir Serbinenko - - * grub-core/loader/i386/linux.c (DEFAULT_VIDEO_MODE) [GRUB_MACHINE_EFI]: - Set to "auto". - -2010-09-30 Vladimir Serbinenko - - * grub-core/gettext/gettext.c (grub_gettext_init_ext): Avoid using - mo_file after freeing. - -2010-09-30 Vladimir Serbinenko - - * grub-core/normal/term.c (read_terminal_list): Free in a right order. - -2010-09-30 Vladimir Serbinenko - - * grub-core/script/execute.c (grub_script_execute_sourcecode): Set - flags. - -2010-09-30 Vladimir Serbinenko - - * util/grub-setup.c (main) [GRUB_MACHINE_IEEE1275]: Propagate argp - usage. - -2010-09-30 Vladimir Serbinenko - - Put terminfo into core on ieee1275 and yeeloong (needed for console). - - * gentpl.py: New groups terminfoinkernel and terminfomodule. - * grub-core/Makefile.am (KERNEL_HEADER_FILES): Include extcmd.h, arg.h - and terminfo.h when needed. - * grub-core/Makefile.core.def (kernel): Include term/terminfo.c, - term/tparm.c, commands/extcmd.c, lib/arg.c on terminfokernel. - (terminfo): Enable only on terminfokernel. - (extcmd): Likewise. - * include/grub/extcmd.h: Add missing EXPORT_FUNC. - * include/grub/lib/arg.h: Likewise. - * grub-core/term/ieee1275/ofconsole.c (grub_ofconsole_dimensions): Fix - incorrect usage of ->. - -2010-09-29 Vladimir Serbinenko - - * grub-core/loader/multiboot_mbi2.c (grub_multiboot_make_mbi] - [GRUB_MACHINE_EFI && __i386__]: Fix typo. - -2010-09-29 Vladimir Serbinenko - - Fix coreboot compilation. - - * grub-core/loader/i386/multiboot_mbi.c (grub_multiboot_get_mbi_size): - Take VBE info into account even if only text is supported. - (fill_vbe_info): Take into account the case when only VGA text - is supported. - * include/grub/multiboot.h (GRUB_MACHINE_HAS_VBE): Set to zero - on coreboot, multiboot and qemu. - -2010-09-29 Vladimir Serbinenko - - * grub-core/lib/relocator.c (malloc_in_range): Trim too verbose - debug messages. - (grub_relocator_prepare_relocs): Set movers_chunk.srcv. - -2010-09-29 Vladimir Serbinenko - - * grub-core/loader/i386/bsd.c (grub_cmd_netbsd): Provide default serial - parameters. - -2010-09-29 Vladimir Serbinenko - - * grub-core/lib/arg.c (grub_arg_parse): Fix treating of all commands as - if they were BSD-style. - -2010-09-29 Vladimir Serbinenko - - * grub-core/boot/i386/pc/lnxboot.S: Replace - GRUB_KERNEL_I386_PC_MULTIBOOT_SIGNATURE with - GRUB_KERNEL_I386_PC_NO_REED_SOLOMON_PART. - -2010-09-29 Vladimir Serbinenko - - Write embedding zone using Reed-Solomon. - - * Makefile.util.def (grub-setup): Add grub-core/lib/reed_solomon.c. - * grub-core/Makefile.am (rs_decoder.S): New target. - (kern/i386/pc/startup.S): Depend on rs_decoder.S. - * grub-core/kern/i386/pc/startup.S (reed_solomon_redundancy): New field. - (multiboot): Move to RS part. - (post_reed_solomon): New label. - (grub_boot_drive): Move to non-RS part since it's modified in memory - on boot. - Include rs_decoder.S. - * grub-core/lib/reed_solomon.c: New file. - * include/grub/offsets.h (GRUB_KERNEL_I386_PC_REED_SOLOMON_REDUNDANCY): - New definition. - (GRUB_KERNEL_I386_PC_MULTIBOOT_SIGNATURE): Removed. - (GRUB_KERNEL_I386_PC_RAW_SIZE): Updated. - (GRUB_KERNEL_I386_PC_NO_REED_SOLOMON_PART): New definition. - * include/grub/partition.h (grub_partition_map): Change prototype of - embed to allow returning additional sectors. - * include/grub/reed_solomon.h: New file. - * util/grub-setup.c (setup): Handle Reed-Solomon. - -2010-09-28 Colin Watson - - * grub-core/loader/multiboot_mbi2.c (grub_multiboot_make_mbi): Fix - i386 and x86-64 definedness tests. - -2010-09-27 Yves Blusseau - - Fix generation of kernel_syms.lst - - * grub-core/Makefile.am (kernel_syms.lst): Fix value and position of - ASM_PREFIX - -2010-09-26 Robert Millan - - Support degraded ZFS arrays in "grub-probe -t device" resolution. - - * grub-core/kern/emu/getroot.c (find_root_device_from_libzfs): When - the pool is an array of devices, iterate through it and return the - first device that passes a stat() test (instead of blindly returning - the first one). - -2010-09-26 Robert Millan - - Build fixes for GNU/kFreeBSD. - - * Makefile.util.def: Add `$(LIBZFS) $(LIBNVPAIR)' library dependencies - to programs that require ZFS conversion. - * grub-core/kern/emu/hostdisk.c (grub_util_biosdisk_is_floppy): Support - kernels that don't have FLOPPY_MAJOR. - -2010-09-25 BVK Chaitanya - - * grub-core/kern/emu/full.c (grub_emu_post_init): Fix typo. - -2010-09-25 BVK Chaitanya - - Fix grub-emu build. - - * grub-core/kern/emu/main.c: Remove #include . - * grub-core/kern/emu/full.c: Split grub_mdraid_{init,fini} into - mdraid09 and mdraid1x. - -2010-09-24 Colin Watson - - Re-enable grub-extras. - - * autogen.sh: Create symlinks to ${GRUB_CONTRIB} if necessary to - avoid confusing Automake. Run autogen only twice, once for the top - level and once for grub-core. Add Makefile.util.def and - Makefile.core.def from extra modules to the appropriate autogen - invocations. If Makefile.common exists in an extra module, include - it in both Makefile.util.am and grub-core/Makefile.core.am; - similarly, include any Makefile.util.common file in Makefile.util.am - and any Makefile.core.common file in grub-core/Makefile.core.am. - * conf/Makefile.common ($(top_srcdir)/grub-core/Makefile.core.am): - Depend on $(top_srcdir)/grub-core/Makefile.gcry.def. - ($(top_srcdir)/grub-core/Makefile.gcry.def): Remove. - * grub-core/Makefile.am: Remove inclusion of Makefile.gcry.am. - - * gentpl.py (gvar_add): Turn GVARS into a set. - (global_variable_initializers): Sort global variables on output. - (vars_init): New function. - (first_time): Likewise. - (library): Ensure that non-global variable initialisations are - emitted before the first time we emit code for a library block. - Append to variables rather than setting them. Only emit - noinst_LIBRARIES, BUILT_SOURCES, and CLEANFILES the first time for - each conditional path. - (program): installdir() emits an Autogen macro, so must be passed to - var_add rather than gvar_add. - (data): Likewise. - (script): Likewise. - (rules): New function, centralising handling for different target - types. Set up Guile association lists for first_time and vars_init, - and send most output to a diversion so that variable initialisations - can be emitted first. - (module_rules): Use new rules function. - (kernel_rules): Likewise. - (image_rules): Likewise. - (library_rules): Likewise. - (program_rules): Likewise. - (script_rules): Likewise. - (data_rules): Likewise. - - * configure.ac: Add AC_PROG_LN_S, for the benefit of ntldr-img. - - * .bzrignore: Add contrib and grub-core/contrib. Remove - grub-core/Makefile.gcry.am. - -2010-09-24 Yves Blusseau - - * grub-core/lib/LzFind.c: Add missing include. - * grub-core/lib/LzmaEnc.c: Likewise. - * grub-core/script/lexer.c: Likewise. - * grub-core/script/yylex.l: Likewise. - * util/grub-macho2img.c: Likewise. - * util/grub-menulst2cfg.c: Likewise. - * util/grub-mklayout.c: Likewise. - * util/grub-mkpasswd-pbkdf2.c - * util/grub-mkrelpath.c: Likewise. - * util/resolve.c: Likewise. - -2010-09-24 BVK Chaitanya - - * Makefile.util.def (example_unit_test): Add - grub-core/gnulib/libgnu.a. - -2010-09-23 Grégoire Sutre - - * grub-core/commands/acpihalt.c (get_sleep_type): Initialize prev. - -2010-09-23 Vladimir Serbinenko - - Support xz compression on yeeloong. - - * Makefile.util.def (grub-mkimage): Add $(LIBLZMA). - * configure.ac: Check for LZMA. - * grub-core/Makefile.core.def (xz_decompress): New target. - (none_decompress): Likewise. - * grub-core/boot/decompressor/minilib.c: New file. - * grub-core/boot/decompressor/none.c: Likewise. - * grub-core/boot/decompressor/xz.c: Likewise. - * grub-core/kern/mips/cache.S: Change to noreorder nomacro. - * grub-core/kern/mips/cache_flush.S: Likewise. - * grub-core/kern/i386/pc/lzma_decode.S: Remove dead code. - * grub-core/kern/mips/startup.S: Move first stage to ... - * grub-core/boot/mips/startup_raw.S: ...here. Change to noreorder - nomacro. - * grub-core/kern/mips/startup.S: Change to noreorder nomacro. - * grub-core/lib/mips/relocator_asm.S: Change to noreorder nomacro. - * grub-core/lib/xzembed/xz_dec_bcj.c [GRUB_EMBED_DECOMPRESSOR]: - Allocate statically. - * grub-core/lib/xzembed/xz_dec_lzma2.c [GRUB_EMBED_DECOMPRESSOR]: - Allocate statically or use scratch. Don't check CRC32. - * grub-core/lib/xzembed/xz_dec_stream.c [GRUB_EMBED_DECOMPRESSOR]: - Allocate statically. Don't check CRC32. - * include/grub/decompressor.h: New file. - * include/grub/offsets.h (GRUB_KERNEL_MIPS_YEELOONG_RAW_SIZE): - Removed. - (GRUB_KERNEL_MIPS_YEELOONG_UNCOMPRESSED_SIZE): New field. - (GRUB_KERNEL_MIPS_YEELOONG_TOTAL_MODULE_SIZE): Adjusted. - (GRUB_KERNEL_MIPS_YEELOONG_PREFIX): Likewise. - (GRUB_KERNEL_MIPS_YEELOONG_PREFIX_END): Likewise. - (GRUB_KERNEL_MACHINE_UNCOMPRESSED_SIZE): New define. - * util/grub-mkimage.c (grub_compression_t): New type. - (PLATFORM_FLAGS_DECOMPRESSORS): New flag. - (image_target_desc): New field default_compression. - (image_targets): Adjust yeeloong targets. - (compress_kernel_xz) [HAVE_LIBLZMA]: New function. - (compress_kernel): New parameter comp. - (generate_image): Likewise. Handle new compression case. - (options): New option --compression - (help): Likewise. - (main): Handle new option. - -2010-09-22 Grégoire Sutre - - * grub-core/kern/emu/hostdisk.c [__NetBSD__]: Define FLOPPY_MAJOR. - -2010-09-22 Colin Watson - - * grub-core/loader/multiboot_mbi2.c (grub_multiboot_make_mbi): Fix - typo in __i386__ conditional. - -2010-09-22 Vladimir Serbinenko - - * grub-core/loader/multiboot_mbi2.c (GRUB_MACHINE_EFI): Add missing - include. - -2010-09-22 Vladimir Serbinenko - - Implement EFI and ACPI multiboot2 extensions. - - * grub-core/loader/multiboot_mbi2.c (grub_multiboot_load): Declare - new tags as supported. - (acpiv2_size): New function. - (grub_multiboot_get_mbi_size): Take new tags into account. - (grub_multiboot_make_mbi): Add new tags. - * include/grub/multiboot.h (GRUB_MACHINE_HAS_ACPI): New definition. - -2010-09-21 AleÅ¡ Nesrsta - - * grub-core/bus/usb/serial/common.c (grub_usbserial_attach): - Added missing configuration of USB device. - -2010-09-21 Colin Watson - - * grub-core/normal/menu_entry.c (run): Make sure we always return - a value. - -2010-09-21 Colin Watson - - * grub-core/commands/efi/lsefimmap.c (grub_cmd_lsefimmap): - NumberOfPages is UINT64 according to the UEFI specification, not - UINTN. Fix printf format. - -2010-09-21 Colin Watson - - * grub-core/bus/usb/usbhub.c (poll_nonroot_hub): Change type of - `err' to grub_usb_err_t. - Reported and tested by: KESHAV P.R. - -2010-09-21 Colin Watson - - * grub-core/disk/efi/efidisk.c (grub_efidisk_get_device_name): Make - tpart non-const, so that we can assign to it. (Since this is a - typedef, the constness refers to the pointer rather than what it - points to.) - -2010-09-21 Colin Watson - - * conf/Makefile.common (CPPFLAGS_GNULIB): Add - $(top_srcdir)/grub-core/gnulib as well as - $(top_builddir)/grub-core/gnulib. - Reported by: KESHAV P.R. - -2010-09-21 Colin Watson - - * util/grub-install.in: Fix the bootloader ID option to be - consistently --bootloader-id, not --bootloader_id. - Reported by: KESHAV P.R. - -2010-09-21 Colin Watson - - * grub-core/commands/hashsum.c (GRUB_MOD_INIT): Make "Compute or - check hash checksum." consistently translatable. - -2010-09-21 Yves Blusseau - - * conf/Makefile.common (CPPFLAGS_GNULIB): Replace $(top_srcdir) with - $(top_builddir). - -2010-09-21 Colin Watson - - * grub-core/commands/hashsum.c (aliases): Add sha1sum alias. - (GRUB_MOD_INIT): Register sha1sum command. - (GRUB_MOD_FINI): Unregister sha1sum command. - -2010-09-21 Yves Blusseau - - Keep boot and grub directory names in sync with utils scripts - - * configure.ac: Define GRUB_BOOT_DIR_NAME and GRUB_DIR_NAME macros. - * config.h.in: Add previous macros. - * include/grub/emu/misc.h (DEFAULT_DIRECTORY): Use previous macros. - * util/grub-install.in: Use $bootdir and $grubdir variables. - -2010-09-21 Colin Watson - - * grub-core/kern/emu/hostdisk.c (find_system_device): Only try to - convert partition names to disk names if the new `convert' parameter - is set. - (grub_util_biosdisk_get_grub_dev): If opening the disk device - returns GRUB_ERR_UNKNOWN_DEVICE, treat the partition device as a - disk in its own right. This can happen with Xen disk images. - -2010-09-21 Yves Blusseau - - * util/grub-editenv.c: Update strings to avoid warnings when generating - grub.pot file. - * util/grub-setup.c: Likewise. - -2010-09-21 Vladimir Serbinenko - - * configure.ac: Change version to 1.99~beta0. - -2010-09-21 Vladimir Serbinenko - - * grub-core/loader/i386/multiboot_mbi.c (grub_fill_multiboot_mmap): - Add BADRAM. - * grub-core/loader/multiboot_mbi2.c (grub_fill_multiboot_mmap): - Likewise. - * include/multiboot.h: Resynced with specification. - * include/multiboot2.h: Likewise. - -2010-09-21 Colin Watson - - Fix po directory handling. - - * configure.ac: Create po/Makefile.in rather than po/Makefile. - * grub-core/gnulib/Makefile.am: Import gettext module. - * m4/gnulib-cache.m4: Likewise. - * m4/gnulib-comp.m4: Likewise. - * m4/gettext.m4: New file, from gnulib. - * m4/glibc2.m4: Likewise. - * m4/iconv.m4: Likewise. - * m4/intdiv0.m4: Likewise. - * m4/intl.m4: Likewise. - * m4/intldir.m4: Likewise. - * m4/intlmacosx.m4: Likewise. - * m4/intmax.m4: Likewise. - * m4/inttypes-pri.m4: Likewise. - * m4/lcmessage.m4: Likewise. - * m4/lib-ld.m4: Likewise. - * m4/lib-link.m4: Likewise. - * m4/lib-prefix.m4: Likewise. - * m4/lock.m4: Likewise. - * m4/nls.m4: Likewise. - * m4/po.m4: Likewise. - * m4/printf-posix.m4: Likewise. - * m4/progtest.m4: Likewise. - * m4/threadlib.m4: Likewise. - * m4/uintmax_t.m4: Likewise. - * m4/visibility.m4: Likewise. - * po/Makefile.am: Remove. - * po/Makefile.in.in: New file, from gettext. - ($(DOMAIN).pot-update): Support POTFILES-shell. - * po/Makevars: New file. - * po/POTFILES-shell: Rename to ... - * po/POTFILES-shell.in: ... this. Update. - * po/POTFILES: Rename to ... - * po/POTFILES.in: ... this. Update. - * po/Rules-quot: New file, from gettext. - * po/boldquot.sed: Likewise. - * po/en@boldquot.header: Likewise. - * po/en@quot.header: Likewise. - * po/insert-header.sin: Likewise. - * po/quot.sed: Likewise. - * po/remove-potcdate.sin: Likewise. - -2010-09-20 Vladimir Serbinenko - - * util/grub.d/10_kfreebsd.in (kfreebsd_entry): Use UUID when possible. - -2010-09-20 Vladimir Serbinenko - - * util/grub.d/20_linux_xen.in: Use submenus. - -2010-09-20 Vladimir Serbinenko - - Support submenus. - - * grub-core/commands/menuentry.c (grub_normal_add_menu_entry): New - parameter submenu. All users updated. - * grub-core/normal/main.c (free_menu): Rename to ... - (grub_normal_free_menu): ... this. Made global. - * grub-core/normal/menu.c (grub_menu_execute_entry): Open new context - if requested. - * grub-core/normal/menu_entry.c (screen): New field submenu. - (make_screen): Set submenu. - (run): Open new context if requested. - * include/grub/menu.h (grub_menu_entry): New field submenu. - * include/grub/normal.h (grub_normal_free_menu): New proto. - -2010-09-20 Vladimir Serbinenko - - Menu entries extractor. - - * grub-core/commands/configfile.c (grub_cmd_source): Implement extractor - variants. - (GRUB_MOD_INIT): Register new variants. - (GRUB_MOD_FINI): Unregister new variants. - * grub-core/commands/legacycfg.c (grub_cmd_legacy_configfile): Merge - into grub_cmd_legacy_source. - (grub_cmd_legacy_source): Implement extractor variants. - (GRUB_MOD_INIT): Register new variants. - (GRUB_MOD_FINI): Unregister new variants. - * grub-core/commands/menuentry.c (grub_menu_init): Declare menuentry - as an extractor. - * grub-core/commands/search_wrap.c (GRUB_MOD_INIT): Declare - search as an extractor. - * grub-core/commands/test.c (GRUB_MOD_INIT): Declare - test as an extractor. - * grub-core/kern/corecmd.c (grub_register_core_commands): Declare set - as an extractor. - * grub-core/normal/context.c (grub_env_context_open): Reorganised. - (grub_env_new_context): New function. - (grub_env_context_open): Likewise. - (grub_env_extractor_open): Likewise. - (grub_env_extractor_close): Likewise. - * grub-core/script/execute.c (grub_script_execute_cmdline): Handle - grub_extractor_level. - * include/grub/command.h (GRUB_COMMAND_FLAG_EXTRACTOR): New flag. - * include/grub/env.h (grub_env_extractor_open): New proto. - (grub_env_extractor_close): Likewise. - * include/grub/normal.h (grub_extractor_level): New external variable. - -2010-09-20 Vladimir Serbinenko - - Make cutmem accept a region specification. - Suggested by: Samuel Thibault - - * grub-core/mmap/mmap.c (parsemem): New function. - (grub_cmd_cutmem): Handle new arguments. - -2010-09-20 Vladimir Serbinenko - - New command cutmem. - - * grub-core/mmap/mmap.c (grub_cmd_cutmem): New function. - (GRUB_MOD_INIT): Register new command. - (GRUB_MOD_FINI): Unregister new command. - -2010-09-20 Vladimir Serbinenko - - Support some annoying BSD and Minix subpartitions. - - * Makefile.util.def (libgrub.a): Add grub-core/partmap/bsdlabel.c. - * grub-core/disk/efi/efidisk.c (grub_efidisk_get_device_name): - Properly handle concatenation. - * grub-core/kern/device.c (grub_device_iterate): Likewise. - * grub-core/normal/completion.c (iterate_partition): Likewise. - * grub-core/kern/disk.c (grub_disk_open): Make disk->name not - contain partition. All users updated. - * grub-core/partmap/bsdlabel.c (grub_netbsdlabel_partition_map): New - struct. - (grub_openbsdlabel_partition_map): Likewise. - (bsdlabel_partition_map_iterate): Rename to .. - (iterate_real): ... this. New arguments sector, freebsd and pmap. - (bsdlabel_partition_map_iterate): New function. - (netopenbsdlabel_partition_map_iterate): Likewise. - (netbsdlabel_partition_map_iterate): Likewise. - (openbsdlabel_partition_map_iterate): Likewise. - (GRUB_MOD_INIT): Register new partmaps. - (GRUB_MOD_FINI): Unregister new partmaps. - * grub-core/partmap/msdos.c (pc_partition_map_iterate): Rename to ... - (grub_partition_msdos_iterate): ... this. All users updated. - Don't support embedding other than in a minix partition. - * include/grub/msdos_partition.h (grub_partition_msdos_iterate): New - proto. - * include/grub/partition.h (grub_partition): New field msdostype. - * util/grub-install.in: Handle openbsd and netbsd types being in - part_bsd module. - -2010-09-20 Vladimir Serbinenko - - Split mdraid.mod into mdraid09.mod and mdraid1x.mod. - - * Makefile.util.def (libgrub.a): Add grub-core/disk/mdraid1x_linux.c. - * grub-core/Makefile.core.def (mdraid): Renamed to ... - (mdraid09): ... this. - (mdraid1x): New module. - * grub-core/disk/mdraid_linux.c: Move 1.x parts ... - * grub-core/disk/mdraid1x_linux.c: ...here. All users updated. - -2010-09-20 Vladimir Serbinenko - - * grub-core/kern/emu/misc.c (asprintf): Use vsnprintf instead of - vsprintf. - -2010-09-20 Colin Watson - - * grub-core/commands/efi/lsefimmap.c: Correct header. - * NEWS: Update. - -2010-09-20 Colin Watson - - * util/grub-editenv.c (argp_parser): Don't pass translated strings - as printf format strings; the translations might contain '%' which - could cause a crash. - (main): Likewise. - * util/grub-fstest.c (argp_parser): Likewise. - * util/grub-setup.c (argp_parser): Likewise. - (main): Likewise. - -2010-09-20 Vladimir Serbinenko - - Use argp in grub-fstest. - - * util/grub-fstest.c: Don't include getopt.h. - Include argp.h. - (root): New variable. - (args_count): Likewise. - (nparm): Likewise. - (num_disks): Likewise. - (images): Likewise. - (cmd): Likewise. - (debug_str): Likewise. - (args): Likewise. - (options): Transformed to argp. - (usage): Removed. - (main): Split argument parsing into ... - (argp_parser): ... this. Changed to argp format. - (argp): New variable. - (main): Use argp_parse. - -2010-09-20 Tristan Gingold -2010-09-20 Robert Millan -2010-09-20 Vladimir Serbinenko - - * grub-core/commands/efi/lsefimmap.c: New file. - * grub-core/Makefile.core.def (lsefimmap): New module. - * include/grub/efi/api.h (PRIxGRUB_EFI_UINTN_T): New definition. - -2010-09-20 Vladimir Serbinenko - - Pause the execution (10s max) if any errors are displayed so the user - has a chance to see them. - - * grub-core/kern/err.c (grub_err_printed_errors): New variable. - (grub_print_error): Increment grub_err_printed_errors. - * grub-core/normal/menu.c (grub_menu_execute_entry): Pause the - execution if any errors were displayed. - (show_menu): Remove old code for pause. - * grub-core/normal/menu_entry.c (run): Likewise. - * grub-core/normal/term.c (grub_normal_char_counter): Removed. All - users updated. - (grub_normal_get_char_counter): Likewise. - * include/grub/err.h (grub_err_printed_errors): New external variable. - * include/grub/normal.h (grub_normal_get_char_counter): Removed. - -2010-09-20 Vladimir Serbinenko - - Support multiboot VBE info. - - * grub-core/loader/i386/multiboot_mbi.c (grub_multiboot_get_mbi_size): - Take VBE info into account. - (fill_vbe_info) [GRUB_MACHINE_HAS_VBE]: New function. - (retrieve_video_parameters) [GRUB_MACHINE_HAS_VBE]: - Call fill_vbe_info when appropriate. - (grub_multiboot_make_mbi): Account for the size occupied by VBE info. - * grub-core/loader/multiboot_mbi2.c (grub_multiboot_load): Declare tags - as supported. - (grub_multiboot_get_mbi_size): Take new tags into account. - (fill_vbe_tag) [GRUB_MACHINE_HAS_VBE]: New function. - (retrieve_video_parameters) [GRUB_MACHINE_HAS_VBE]: - Call fill_vbe_tag when appropriate. - (grub_multiboot_make_mbi): Properly align tags. - * grub-core/video/i386/pc/vbe.c (grub_vbe_bios_get_pm_interface): New - function. - * include/grub/i386/pc/vbe.h (grub_vbe_bios_get_pm_interface): New - proto. - * include/grub/multiboot.h (GRUB_MACHINE_HAS_VBE): New definition. - -2010-09-20 Vladimir Serbinenko - - Suport manual terminal geometry specification. - - * grub-core/term/ieee1275/ofconsole.c (grub_ofconsole_dimensions): - Save state in grub_ofconsole_terminfo_output. - (grub_ofconsole_term): Use grub_terminfo_getwh. - (grub_ofconsole_getwh): Removed. - * grub-core/term/serial.c (grub_serial_getwh): Removed. - (grub_serial_term): Use grub_terminfo_getwh. - * grub-core/term/terminfo.c (grub_terminfo_getwh): New function. - (options): New struct. - (OPTION_*): New enum. - (grub_cmd_terminfo): Transform into extcmd and handle new parameters. - * include/grub/terminfo.h (grub_terminfo_output_state): New fields - width and height. - (grub_terminfo_getwh): New proto. - * grub-core/lib/legacy_parse.c (grub_legacy_parse): Handle --lines. - -2010-09-20 Vladimir Serbinenko - - Handle legacy "terminal" command. - - * grub-core/lib/legacy_parse.c (legacy_command): New flags FLAG_TITLE - and FLAG_TERMINAL. - (legacy_commands): Add terminal and title. - (grub_legacy_parse): Handle terminal. Simplify title handling. - -2010-09-20 Vladimir Serbinenko - - * grub-core/lib/arg.c (grub_arg_show_help): Correctly handle - parameters overflow. - -2010-09-20 Colin Watson - - * .bzrignore: Add grub-core/gnulib/sys, widthspec.bin, and - widthspec.h. - - * docs/grub.texi (Shell-like scripting): Document `!'. - (Network): Simplify using new i386-pc-pxe format. Mention - grub-mknetdir. - - * NEWS: Update. - -2010-09-20 Colin Watson - - * Makefile.am (SUBDIRS): Restore "."; it's important to force - ordering, so that e.g. ascii.h is built before grub-core/font/font.c - when needed. - -2010-09-20 Colin Watson - - * grub-core/commands/efi/lsefisystab.c: Correct header. - * grub-core/commands/efi/lssal.c: Likewise. - * grub-core/commands/testload.c: Likewise. - -2010-09-20 Colin Watson - - * util/grub-mkrescue.in: Add explicit root argument to --set to - prevent the UUID being interpreted as an argument to --set (matches - previous change to prepare_grub_to_access_device). - -2010-09-20 Colin Watson - - * kern/emu/hostdisk.c: Include and - on FreeBSD. Define HAVE_DIOCGDINFO on NetBSD and FreeBSD to reduce - the verbosity of later #ifs. - (find_partition_start): Define this function on FreeBSD too. - (device_is_wholedisk) [__FreeBSD__ || __FreeBSD_kernel__]: New - function. - (grub_util_biosdisk_get_grub_dev): Use partition-start-sector logic - on FreeBSD. - -2010-09-20 Yves Blusseau - - * util/grub-editenv.c: Use argp instead of getopt. - -2010-09-20 Yves Blusseau - - * util/grub-setup.c: Use argp instead of getopt. - -2010-09-20 Yves Blusseau - - Use gnulib-tool to create gnulib source files. - - * Add gnulib files generated by gnulib-tool in build-aux, m4 and - grub-core/gnulib directories - * .bzignore: Add **/.deps and autogenerated gnulib files - * configure.ac: Assign auxiliary directory to build-aux, add invocation - of gnulib macros, add grub-core/gnulib/Makefile - * Makefile.am: Add gnulib directory in SUBDIRS (removing unnecessary .), - include m4 directory to aclocal. - * Makefile.util.def: Remove direct compilation of gnulib source files - and use the new grub-core/gnulib/libgnu.a. - * build-aux/config.rpath: move config.rpath from top directory to - build-aux - * conf/Makefile.common: Remove the macro _GL_UNUSED already defined - in gnulib headers - * conf/Makefile.extra-dist: Add m4/gnulib-cache.m4 - * grub-core/Makefile.core.def: Remove unnecessary extra_dist - * grub-core/lib/posix_wrap/localcharset.h (locale_charset): Update - header. - * grub-core/lib/posix_wrap/langinfo.h (nl_langinfo): Return static - string. - -2010-09-20 Yves Blusseau - - * .bzrignore: Add grub-kbdcomp, grub-menulst2cfg, *.marker, - grub-core/genmod.sh and grub-core/gensyminfo.sh - -2010-09-20 BVK Chaitanya - - Add a test for echo command options. - - * tests/grub_cmd_echo.in: New test. - * Makefile.util.def: Rules for new test. - -2010-09-20 Szymon Janc - - Remove crc.mod and move crc command to hashsum.mod. - Remove lib/crc.c - users updated to use gcrypt implementation. - - * grub-core/commands/crc.c: Removed. - * grub-core/Makefile.core.def (crc): Module removed. - * grub-core/commands/hashsum.c (aliases[]): Add crc alias. - * grub-core/commands/hashsum.c (GRUB_MOD_INIT): Register crc command. - * grub-core/commands/hashsum.c (GRUB_MOD_FINI): Unregister crc command. - * grub-core/lib/crc.c: Removed. - * include/grub/lib/crc.h: Removed. - * Makefile.util.def (crc): Remove lib/crc.c - * grub-core/Makefile.core.def (libgrub.a): Remove grub-core/lib/crc.c. - * util/grub-fstest.c (cmd_crd): Use libgcrypt crc implementation. - * Makefile.util.def (libgrub.a): Add grub-core/lib/libgcrypt-grub/cipher/crc.c. - * Makefile.util.def (grub-fstest): Add CFLAGS_GCRY to cflags. - * Makefile.util.def (grub-fstest): Add CPPFLAGS_GCRY to cppflags. - * grub-core/efiemu/prepare.c (grub_efiemu_crc): Use libgcrypt crc implementation. - -2010-09-20 Vladimir Serbinenko - - * grub-core/boot/i386/pc/boot.S: Ignore %dl if it's not in a sane range. - -2010-09-19 Vladimir Serbinenko - - Split config.h for util and core. - - * acinclude.m4 (HAVE_ASM_USCORE): Transformed into a variable. - (ADDR32): Likewise. - (DATA32): Likewise. - (BSS_START_SYMBOL): Likewise. - (END_SYMBOL): Likewise. - (NEED_ENABLE_EXECUTE_STACK): Likewise. All users updated. - (grub_I386_ASM_ABSOLUTE_WITHOUT_ASTERISK): Removed. - * config.h.in: New file. - * configure.ac: Use config-util.h as config define file. - Rename MACHINE into GRUB_MACHINE. All users updated. - (NEED_REGISTER_FRAME_INFO): Transformed into a variable. All users - updated. - (NESTED_FUNC_ATTR): Likewise. - Substitue new variables. - (COND_HAVE_ASM_USCORE): New conditional. - * grub-core/Makefile.am (ASM_PREFIX): New variable. - (kernel_syms.lst): Use ASM_PREFIX. - * grub-core/kern/emu/console.c: Include config-util.h. - * grub-core/kern/emu/misc.c: Likewise. - * grub-core/kern/emu/mm.c: Likewise. - * include/grub/emu/misc.h: Likewise. - * include/grub/libgcc.h: Likewise. - -2010-09-19 Vladimir Serbinenko - - * grub-core/term/efi/console.c (efi_codes): Fix GRUB_TERM_KEY_* - constants usage. - * grub-core/kern/emu/console.c (grub_ncurses_getkey): - Fix GRUB_TERM_KEY_* constants usage. - * grub-core/kern/emu/misc.c (asprintf): Fix vasprintf usage. - -2010-09-19 Vladimir Serbinenko - - * grub-core/bus/usb/ohci.c (grub_ohci_cancel_transfer): Use %p to - print pointer. - * grub-core/bus/usb/uhci.c: Remove empty define. - (grub_uhci_check_transfer): Add missing cast. - * grub-core/bus/usb/usbhub.c (poll_nonroot_hub): Use %p to - print pointer. - * grub-core/term/usb_keyboard.c (grub_usb_keyboard_getkey): Use - PRIuGRUB_SIZE. - * include/grub/types.h (PRIuGRUB_SIZE): New definition. - -2010-09-19 Vladimir Serbinenko - - * grub-core/Makefile.core.def (legacycfg): Add - lib/i386/pc/vesa_modes_table.c on emu. - -2010-09-19 BVK Chaitanya - - Reduce number of temporary files generated by build system. - - * grub-core/gencmdlist.sh: Removed. - * grub-core/genfslist.sh: Removed. - * grub-core/genhandlerlist.sh: Removed. - * grub-core/genmodsrc.sh: Removed. - * grub-core/genpartmaplist.sh: Removed. - * grub-core/genparttoollist.sh: Removed. - * grub-core/gentermiinallist.sh: Removed. - * grub-core/genvideolist.sh: Removed. - - * grub-core/genmod.sh.in: New file. - * grub-core/gensyminfo.sh.in: New file. - - * conf/Makefile.common (CPPFLAGS_*_LIST): New marker flags. - * conf/Makefile.extra-dist: Update with new files. - * gentpl.py: Remove rules related to unnecessary temporary files. - * grub-core/Makefile.am (syminfo.lst): New replacement for def-* - and und-* files. - * grub-core/Makefile.core.def: New rules for gensyminfo.sh and - genmod.sh scripts. - * grub-core/bus/usb/uhci.c: Remove empty #define. - * grub-core/genmoddep.awk: Updated with new syminfo format. - * util/bash-completion.d/Makefile.am: Add config.log to - CLEANFILES. - -2010-09-19 Yves Blusseau - - * Makefile.util.def: Add forgotten $(LIBINTL) library. - -2010-09-19 BVK Chaitanya - - * util/grub-mkconfig.in: Check the config script for syntax errors - before saving. - -2010-09-19 Colin Watson -2010-09-19 Vladimir Serbinenko - - * Makefile.util.def (grub-install): Use util/grub-install.in on all - platforms. - * util/grub-install.in: Add EFI and IEEE1275 support. - * util/i386/efi/grub-install.in: Removed. - * util/ieee1275/grub-install.in: Likewise. - -2010-09-19 Vladimir Serbinenko - - * grub-core/commands/i386/cmostest.c (+parse_args): New function. - (grub_cmd_cmosclean): Likewise. - (GRUB_MOD_INIT): Register command cmosclean. - * util/grub-mkconfig.in: Export GRUB_BUTTON_CMOS_CLEAN. - * util/grub.d/00_header.in: Handle GRUB_BUTTON_CMOS_CLEAN. - -2010-09-18 Carles Pina i Estany -2010-09-18 AleÅ¡ Nesrsta -2010-09-18 Vladimir Serbinenko - - Add keyboard layouts support. - - * Makefile.util.def (grub-mklayout): New file. - (grub-kbdcomp): New script. - * grub-core/Makefile.am (KERNEL_HEADER_FILES) [COND_mips_yeeloong]: - Add keyboard_layouts.h. - * grub-core/Makefile.core.def (kernel): Add commands/keylayouts.c and - commands/boot.c on yeeloong. - (keylayouts): New module. - * grub-core/bus/usb/ohci.c - * grub-core/bus/usb/uhci.c - * grub-core/bus/usb/usbhub.c (rescan): New variable. - (grub_usb_add_hub): Poll interrupt pipe for device handling. - (attach_root_port): Likewise. - (poll_nonroot_hub): Likewise. - (grub_usb_poll_devices): Likewise. - (detach_device): Close transfer. - * grub-core/bus/usb/usbtrans.c (grub_usb_execute_and_wait_transfer): New - function. - (grub_usb_bulk_setup_readwrite): Likewise. - (grub_usb_bulk_finish_readwrite): Likewise. - * grub-core/commands/keylayouts.c: New file. - * grub-core/commands/keystatus.c (grub_getkeystatus): New function. - * grub-core/commands/menuentry.c (hotkey_aliases): All several new - aliases. - * grub-core/term/at_keyboard.c: Restructured to use keylayouts and - support scancode 2. - * grub-core/term/usb_keyboard.c: Restructured to use keylayouts. - * include/grub/keyboard_layouts.h: New file. - * util/grub-mklayout.c: New file. - * util/grub-kbdcomp.in: Likewise. - -2010-09-18 Vladimir Serbinenko - - Unify memory types. - - * grub-core/Makefile.am (KERNEL_HEADER_FILES): Include memory.h. - * grub-core/commands/lsmmap.c (grub_cmd_lsmmap): Output user-readable - types. - * grub-core/kern/i386/multiboot_mmap.c (grub_lower_mem): Removed. - (grub_upper_mem): Likewise. - * grub-core/kern/ieee1275/init.c (grub_upper_mem): Likewise. - * include/grub/memory.h (grub_memory_type_t): New enum. - All users updated. - -2010-09-18 Vladimir Serbinenko - - * grub-core/Makefile.core.def (lsapm): New module. - * grub-core/commands/i386/pc/lsapm.c: New file. - * grub-core/loader/i386/multiboot_mbi.c (make_mbi) [GRUB_MACHINE_PCBIOS]: Pass APM info. - * grub-core/loader/multiboot_mbi2.c (make_mbi) [GRUB_MACHINE_PCBIOS]: - Likewise. - * include/grub/i386/pc/apm.h: New file. - * include/multiboot.h (multiboot_apm_info): New struct. - -2010-09-18 Vladimir Serbinenko - - GRUB-legacy configuration file support. - - * Makefile.util.def (grub-menulst2cfg): New util. - * docs/man/grub-menulst2cfg.h2m: New file. - * grub-core/Makefile.core.def (legacycfg): New module. - * grub-core/commands/legacycfg.c: New file. - * grub-core/commands/menuentry.c (append_menu_entry): Rename to ... - (grub_normal_add_menu_entry): ... this. - * grub-core/commands/password.c (grub_cmd_password): Split main part to ... - (grub_normal_set_password): ...this. - * grub-core/commands/videoinfo.c (grub_cmd_videoinfo): Support MODE. - * grub-core/loader/i386/linux.c (linux_vesafb_res): Move to .., - * grub-core/lib/i386/pc/vesa_modes_table.c: ... here. - * grub-core/lib/legacy_parse.c: New file. - * grub-core/normal/auth.c (grub_cmd_authenticate): New command. - * include/grub/i386/pc/vesa_modes_table.h: New file. - * include/grub/legacy_parse.h: Likewise. - * include/grub/normal.h (grub_normal_add_menu_entry): New proto. - * util/grub-menulst2cfg.c: New file. - -2010-09-17 Colin Watson - - * grub-core/kern/emu/hostdisk.c - (convert_system_partition_to_system_disk): Initialise node. - -2010-09-17 Colin Watson - - * grub-core/kern/emu/hostdisk.c - (convert_system_partition_to_system_disk): Fix devmapper memory pool - leak. - Reported and based on patch by: Modestas Vainius. - -2010-09-17 Colin Watson - - Fix DM-RAID probing with recent versions of device-mapper udev - rules. - - * grub-core/kern/emu/hostdisk.c (read_device_map): Don't - canonicalise device paths under /dev/mapper/. - (convert_system_partition_to_system_disk): Compare the - uncanonicalised path to /dev/mapper/ rather than the canonicalised - path, since device nodes under /dev/mapper/ are often symlinks. - -2010-09-17 Yves Blusseau - - * .bzrignore: *.d removed (old rule), add *.image and symlist.h. - -2010-09-16 Yves Blusseau - - * configure.ac: Avoid some annoying error messages if freetype-config - program is not found. - -2010-09-16 Colin Watson - - Support RAID on virtio devices, and others. - - * grub-core/kern/emu/getroot.c [__MINGW32__] (find_root_device): - Rename to ... - [__MINGW32__] (grub_find_device): ... this. - [! __MINGW32__ && ! __CYGWIN__] (find_root_device): Rename to ... - [! __MINGW32__ && ! __CYGWIN__] (grub_find_device): ... this. Use a - reasonable default if dir is NULL. - [! __MINGW32__ && __CYGWIN__] (find_cygwin_root_device): Rename to - ... - [! __MINGW32__ && __CYGWIN__] (grub_find_device): ... this. - (grub_guess_root_device): Update callers. - * include/grub/emu/getroot.h (grub_find_device): Add prototype. - - * util/raid.c (grub_util_getdiskname): Remove. - (grub_util_raid_getmembers): Use grub_find_device rather than - grub_util_getdiskname. - -2010-09-16 Colin Watson - - * docs/grub.texi (serial): Remove obsolete comment about GRUB - needing to be compiled with serial support. - (ls): Indicate that multiple files are accepted. - * grub-core/commands/ls.c (GRUB_MOD_INIT): Update help text to - indicate that multiple files are accepted. - -2010-09-16 Colin Watson - - * .bzrignore: Add *.1, *.8, grub-shell, grub-shell-tester, - libgrub_a_init.c, and util/bash-completion.d/grub. - -2010-09-15 Vladimir Serbinenko - - * util/grub-setup.c (setup): Fix incorrect container semantics. - -2010-09-15 Vladimir Serbinenko - - * grub-core/commands/parttool.c (grub_cmd_parttool): Fix a variable - misusage. - Reported by: J. Nick Terry - -2010-09-15 Vladimir Serbinenko - - Move embedding routines to partmap sources files. - - * grub-core/partmap/gpt.c (grub_gpt_partition_type_bios_boot) - [GRUB_UTIL]: New variable. - (gpt_partition_map_iterate): Set part.parent. - (gpt_partition_map_embed) [GRUB_UTIL]: New function. - (grub_gpt_partition_map) [GRUB_UTIL]: Set .embed. - * grub-core/partmap/msdos.c (pc_partition_map_embed) [GRUB_UTIL]: - New function. - (grub_msdos_partition_map) [GRUB_UTIL]: Set .embed. - * include/grub/partition.h (grub_embed_type_t) [GRUB_UTIL]: New type. - (grub_partition_map) [GRUB_UTIL]: New field embed. - * util/grub-setup.c (grub_gpt_partition_type_bios_boot): Removed. - (setup): Use ->embed. - -2010-09-15 Vladimir Serbinenko - - * grub-core/kern/emu/hostdisk.c (grub_util_biosdisk_is_floppy): New - function. - * include/grub/emu/hostdisk.h (grub_util_biosdisk_is_floppy): New proto. - * util/grub-setup.c (setup): Use grub_util_biosdisk_is_floppy. - -2010-09-15 Yves Blusseau - - Add function to get completions from usage. - - * util/bash-completion.d/grub-completion.bash.in: Add function to get - completions from usage. Use LC_ALL=C to get options properly. - -2010-09-15 Vladimir Serbinenko - - * grub-core/gnulib/basename-lgpl.c: Imported. - * grub-core/gnulib/basename.c: Likewise. - * grub-core/gnulib/dirname-lgpl.c: Likewise. - * grub-core/gnulib/dirname.c: Likewise. - * grub-core/gnulib/dirname.h: Likewise. - * grub-core/gnulib/stripslash.c: Likewise. - -2010-09-15 Vladimir Serbinenko - - * grub-core/gnulib/error.c: Resynced. - * grub-core/gnulib/getopt.c: Likewise. - * grub-core/gnulib/getopt_int.h: Likewise. - * grub-core/gnulib/regex.h: Likewise. - * grub-core/gnulib/regex_internal.c: Likewise. - * grub-core/gnulib/regex_internal.h: Likewise. - -2010-09-15 Szymon Janc - - * grub-core/lib/xzembed/xz_dec_stream.c (dec_main): Fix index and block - CRC calculations and validity checks. - * grub-core/lib/xzembed/xz_dec_stream.c (dec_index): Fix index CRC - calculations. - -2010-09-15 Szymon Janc - - * grub-core/lib/xzembed/xz_dec_stream.c (xz_dec_end): Fix memory leak. - -2010-09-14 Vladimir Serbinenko - - Fix incorrect echo options handling. - Reported by: Yves Blusseau. - - * include/grub/command.h (grub_command_flags_t): New flags - GRUB_COMMAND_ACCEPT_DASH and GRUB_COMMAND_OPTIONS_AT_START. - * grub-core/lib/arg.c (grub_arg_parse): Handle new flags. - * grub-core/commands/echo.c (GRUB_MOD_INIT): Use new flags. - -2010-09-14 Vladimir Serbinenko - - * include/grub/command.h (GRUB_COMMAND_FLAG_CMDLINE): Removed. All - users updated. - (GRUB_COMMAND_FLAG_MENU): Likewise. - (GRUB_COMMAND_FLAG_BOTH): Likewise. - (GRUB_COMMAND_FLAG_TITLE): Removed. - (GRUB_COMMAND_FLAG_NO_ECHO): Likewise. - (GRUB_COMMAND_FLAG_EXTCMD): Moved into enum. - (GRUB_COMMAND_FLAG_DYNCMD): Likewise. - (GRUB_COMMAND_FLAG_BLOCKS): Likewise. - (grub_command_flags_t): New enum. All users updated. - -2010-09-14 Seth Goldberg - - Fix solaris compilation. - - * grub-core/Makefile.core.def (kernel): Include gnulib/error.c on emu. - (grub-emu): Add LIBZFS and LIBNVPAIR to ldadd. - (grub-emu-list): Likewise. - -2010-09-14 Vladimir Serbinenko - - Remove deprecated root command. - - * grub-core/commands/minicmd.c (grub_mini_cmd_root): Removed. All users - updated. - -2010-09-14 Vladimir Serbinenko - - * util/i386/pc/grub-setup.c: Merge this ... - * util/sparc64/ieee1275/grub-setup.c: ... and this ... - * util/grub-setup.c: ... into this. - * include/grub/sparc64/ieee1275/boot.h (grub_boot_blocklist) [ASM_FILE]: - New struct. - -2010-09-14 Vladimir Serbinenko - - * grub-core/fs/ext2.c (grub_ext2_open): Use return error value when - possible. - -2010-09-14 Vladimir Serbinenko - - * grub-core/partmap/sun.c (sun_partition_map_iterate): Don't needlesly - allocate p. - -2010-09-14 Vladimir Serbinenko - - * util/grub-mkconfig_lib.in (prepare_grub_to_access_device): Add - explicit root argument to set to prevent UUID to be interpreted as - argument to set. - -2010-09-14 Vladimir Serbinenko - - * grub-core/kern/sparc64/ieee1275/crt0.S: Align stack. - -2010-09-14 Vladimir Serbinenko - - Don't export grub_gate_a20. - - * grub-core/kern/i386/pc/init.c: Remove leftovers. - * grub-core/kern/i386/pc/startup.S (FUNCTION(grub_gate_a20)): Rename - to ... - (grub_gate_a20): ... this. All users updated. - * include/grub/i386/pc/init.h: Removed. All users updated. - -2010-09-14 Vladimir Serbinenko - - Create euro.pf2 which supports most European languages. - - * Makefile.am (grubdata_DATA): Add euro.pf2. - (euro.pf2): New target. - (CLEANFILES): Add euro.pf2. - -2010-09-14 Vladimir Serbinenko - - * configure.ac: Disable emu-usb by default to prevent inadvertent - device takeover. - -2010-09-13 Vladimir Serbinenko - - Disable usbserial on grub-emu since our libusb code isn't good enough - yet. - - * grub-core/Makefile.core.def (usbserial_common): Disable on emu. - (usbserial_pl2303): Likewise. - (usbserial_ftdi): Likewise. - -2010-09-13 Vladimir Serbinenko - - * include/grub/disk.h (grub_disk): Remove has_partitions. - All users updated. - * disk/loopback.c (grub_loopback): Remove has_partitions. - All users updated. - (options): Remove partitions. All users updated. - * util/grub-fstest.c (fstest): Don't pass "-p" to loopback. - * util/i386/pc/grub-setup.c (setup): copy partition table only when - actual partition table is found. - -2010-09-13 Vladimir Serbinenko - - Remove readability checks (too many false negatives). - - * util/grub-install.in: Remove readability checks. - * util/grub-mkconfig.in: Likewise. - * util/grub.d/10_hurd.in: Likewise. - * util/grub.d/10_kfreebsd.in: Likewise. - * util/grub.d/10_linux.in: Likewise. - * util/grub-mkconfig_lib.in (is_path_readable_by_grub): Revert to old - way. - -2010-09-13 Vladimir Serbinenko - - Enable acpi shutdown on all ACPI platforms. - - * grub-core/Makefile.core.def (halt): Inlude commands/acpihalt.c - on coreboo, multiboot and EFI. - * grub-core/commands/acpihalt.c (get_sleep_type): Add missing casts. - (grub_acpi_halt): Likewise. - * grub-core/commands/i386/pc/halt.c (grub_halt): Call grub_acpi_halt. - (grub_cmd_halt): Don't call grub_acpi_halt directly. - * grub-core/lib/efi/halt.c (grub_halt): Call grub_acpi_halt. - * grub-core/lib/i386/halt.c (grub_halt) - [GRUB_MACHINE_COREBOOT || GRUB_MACHINE_MULTIBOOT]: Likewise. - -2010-09-13 Vladimir Serbinenko - - * grub-core/commands/iorw.c (grub_cmd_read): Declare buf in smallest - context. - -2010-09-13 Vladimir Serbinenko - - * grub-core/video/efi_gop.c: Fix over-80-chars line. - * grub-core/video/efi_uga.c: Likewise. - -2010-09-13 Vladimir Serbinenko - - Filter devaliases and never open same device twice. - - * grub-core/disk/ieee1275/ofdisk.c (last_devpath): New variable. - (last_ihandle): Likewise. - (ofdisk_hash_ent): New member shortest. - (ofdisk_hash_add): Add canonical path too. - (scan): New function. - (grub_ofdisk_iterate): Iterate over hashed entries. - (compute_dev_path): Don't add :0. - (grub_ofdisk_open): Don't really open the disk. - (grub_ofdisk_close): Avoid closing unrelated disk. - (grub_ofdisk_read): Implement reopen logic. - * grub-core/kern/ieee1275/openfw.c (grub_ieee1275_canonicalise_devname): - New function. - * include/grub/ieee1275/ieee1275.h (grub_ieee1275_canonicalise_devname): - New proto. - -2010-09-13 Vladimir Serbinenko - - Fix sparc64. - - * configure.ac (GRUB_KERNEL_MACHINE_LINK_ADDR): Removed. - * grub-core/Makefile.core.def (kernel): Make ldflags just use the - right address. Add sparc64_ieee1275_ldflags. - * grub-core/loader/sparc64/ieee1275/linux.c: Remove leftover include. - * util/grub-mkimagexx.c (locate_sections): Correct grub_host_to_target32 - to grub_host_to_target_addr - (load_image): Likewise. - -2010-09-13 Vladimir Serbinenko - - * grub-core/normal/completion.c (complete_file): Handle device - containing slash. - Fix based on patch by Doug Nazar. - -2010-09-13 Vladimir Serbinenko - - grub-mknetdir script. - - * Makefile.util.def (grub-mknetdir): New module. - * tests/util/grub-shell.in: Support boot=net - * util/grub-mknetdir.in: New file. - -2010-09-13 Vladimir Serbinenko - - videoinfo on non-vbe. - - * grub-core/Makefile.core.def (vbeinfo): Removed. - (vbetest): Removed. - (videoinfo): New module. - * grub-core/commands/i386/pc/vbeinfo.c: Removed. - * grub-core/commands/i386/pc/vbetest.c: Removed. - * grub-core/commands/videoinfo.c: New file. - * grub-core/commands/videotest.c (grub_cmd_videotest): Support mode - specification. - (grub_cmd_videotest) [GRUB_MACHINE_PCBIOS]: Load vbe.mod when invoked - as vbetest. - (GRUB_MOD_INIT) [GRUB_MACHINE_PCBIOS]: New command vbetest. - (GRUB_MOD_FINI) [GRUB_MACHINE_PCBIOS]: Unregister vbetest. - * grub-core/video/efi_gop.c (grub_video_gop_fill_mode_info): Fill - mode_number. New parameter mode. All users updated. - (grub_video_gop_iterate): New function. - (grub_video_efi_gop): New member iterate. - * grub-core/video/i386/pc/vbe.c (framebuffer): Removed leftover fields. - (grub_vbe_set_video_mode): Remove setting useless fields. - (vbe2videoinfo): New function. - (grub_video_vbe_iterate): Likewise. - (grub_video_vbe_setup): Use vbe2videoinfo. - (grub_video_vbe_print_adapter_specific_info): New function. - (grub_video_vbe_adapter): New fields iterate and - print_adapter_specific_info. - * include/grub/video.h (GRUB_VIDEO_MODE_*): Transform into enum. - All users updated. - (grub_video_mode_info): New field mode_number. - (grub_video_adapter): New fields iterate and - print_adapter_specific_info. - -2010-09-13 Tristan Gingold -2010-09-13 Robert Millan -2010-09-13 Vladimir Serbinenko - - * grub-core/commands/efi/lsefisystab.c: New file. - * grub-core/commands/efi/lssal.c: Likewise. - * grub-core/Makefile.core.def (lsacpi): New module. - (lsefisystab): Likewise. - * include/grub/efi/api.h (GRUB_EFI_SAL_TABLE_GUID): New definition. - (GRUB_EFI_HCDP_TABLE_GUID): Likewise. - (grub_efi_sal_system_table): New struct. - (grub_efi_sal_system_table_entrypoint_descriptor): Likewise. - (grub_efi_sal_system_table_memory_descriptor): Likewise. - (grub_efi_sal_system_table_platform_features): Likewise. - (grub_efi_sal_system_table_translation_register_descriptor): Likewise. - (grub_efi_sal_system_table_purge_translation_coherence): Likewise. - (grub_efi_sal_system_table_ap_wakeup): Likewise. - * include/grub/types.h (PRIuGRUB_UINT64_T): New definition. - -2010-09-13 Vladimir Serbinenko - - Support explicit user claim that a device is BIOS-visible. - - * grub-core/kern/emu/getroot.c (grub_util_get_dev_abstraction): - Return GRUB_DEV_ABSTRACTION_NONE if device is in device.map. - * grub-core/kern/emu/hostdisk.c - (convert_system_partition_to_system_disk): Support mdX. - (find_system_device): New parameter add. All users updated. - (grub_util_biosdisk_is_present): New function. - * include/grub/emu/hostdisk.h (grub_util_biosdisk_is_present): New - proto. - -2010-09-13 Vladimir Serbinenko - - Search hints support. - - * commands/search.c (FUNC_NAME): New arguments hints and nhints. - All users updated. - -2010-09-13 Yves Blusseau - - Bash completion script for util commands - - * Makefile.am: Add util/bash-completion.d directory - * configure.ac: Likewise. - * util/bash-completion.d/Makefile.am: New file. - * util/bash-completion.d/grub-completion.bash.in: Likewise. - -2010-09-12 Vladimir Serbinenko - - * grub-core/normal/term.c (put_glyphs_terminal): Correct sign. - (print_backlog): set backlog_ucs4 and backlog_glyphs. - Reported by: Yves Blusseau. - -2010-09-12 Vladimir Serbinenko - - * grub-core/normal/misc.c (grub_normal_print_device_info): Show - partition size and offset. - -2010-09-12 Vladimir Serbinenko - - * grub-core/commands/wildcard.c (make_regex): Escape brackets. - -2010-09-12 Vladimir Serbinenko - - * grub-core/commands/ls.c (grub_cmd_ls): Accept multiple files. - -2010-09-12 Vladimir Serbinenko - - * grub-core/kern/misc.c (grub_vprintf): Use va_copy when necessary. - (grub_xvasprintf): Likewise. - -2010-09-12 Vladimir Serbinenko - - * grub-core/kern/emu/main.c (main): Call hostfs_init only after init_all. - -2010-09-12 Vladimir Serbinenko - - * grub-core/commands/menuentry.c (append_menu_entry): Don't rely on - args ending with NULL. - -2010-09-12 Vladimir Serbinenko - - * grub-core/lib/xzembed/xz_dec_stream.c (xz_dec_reset): Preserve context - pointer. - -2010-09-11 Szymon Janc - - * grub-core/commands/lsacpi.c (grub_cmd_lsacpi): Fix prototype. - -2010-09-11 Vladimir Serbinenko - - Shutdown using ACPI. - - * grub-core/Makefile.core.def (halt): Add commands/acpihalt.c on i386-pc. - * grub-core/commands/acpihalt.c: New file. - * grub-core/commands/i386/pc/halt.c (grub_cmd_halt): Call grub_acpi_halt. - * include/grub/acpi.h (grub_acpi_fadt): New member pm1a. - (grub_acpi_halt): New proto. - (GRUB_ACPI_SLP_EN): New const. - (GRUB_ACPI_SLP_TYP_OFFSET): Likewise. - (GRUB_ACPI_OPCODE_*): New enum. - (GRUB_ACPI_EXTOPCODE_*): Likewise. - -2010-09-11 Tristan Gingold -2010-09-11 Robert Millan -2010-09-11 Vladimir Serbinenko - - * commands/lsacpi.c: New file. - * grub-core/Makefile.core.def (lsacpi): New module. - * include/grub/acpi.h (GRUB_ACPI_FADT_SIGNATURE): New definition. - (GRUB_ACPI_MADT_SIGNATURE): Likewise. - (grub_acpi_madt_entry_header): New struct. - (grub_acpi_madt): Likewise. - (grub_acpi_madt_entry_interrupt_override): Likewise. - (grub_acpi_madt_entry_sapic): Likewise. - (grub_acpi_madt_entry_lsapic): Likewise. - (grub_acpi_madt_entry_platform_int_source): Likewise. - * include/grub/types.h (PRIxGRUB_UINT32_T): New definition. - (PRIuGRUB_UINT32_T): Likewise. - (PRIxGRUB_UINT64_T): Likewise. - -2010-09-11 Vladimir Serbinenko - - Implement loading palette on ieee1275_fb. - - * grub-core/video/ieee1275.c (stdout_ihandle): New variable. - (have_setcolors): Likewise. - (grub_video_ieee1275_init): Fill stdout_ihandle and have_setcolors. - (grub_video_ieee1275_setup): Use grub_video_ieee1275_set_palette. - (grub_video_ieee1275_set_palette): Implement. - -2010-09-11 Vladimir Serbinenko -2010-09-11 Colin Watson - - * util/grub-install.in (grub_partition): New variable. - Set prefix_drive on EFI and PC to (,$grub_partition) as last resort. - * util/i386/pc/grub-setup.c (setup): Don't touch prefix. - Fixes a bug reported by Yves Blusseau. - -2010-09-11 Vladimir Serbinenko - - Fix emu on mipsel. - - * conf/Makefile.common (CFLAGS_PLATFORM): Add -mflush-func - =grub_cpu_flush_cache on all mips and not only yeeloong. - * configure.ac (COND_mips): New conditional. - * grub-core/Makefile.am (KERNEL_HEADER_FILES): Add libgcc on all - platforms. - * grub-core/kern/emu/cache.S (__mips__): Use _flush_cache. - * grub-core/kern/emu/full.c (grub_arch_dl_init_linker) - [GRUB_LINKER_HAVE_INIT]: New function. - (grub_emu_post_init): Likewise. - * grub-core/kern/emu/lite.c (grub_emu_post_init): Likewise. - * grub-core/kern/emu/main.c: Use grub_emu_post_init. - * include/grub/cache.h (_mips): Include mips/cache.h. - * include/grub/disk.h [GRUB_UTIL || GRUB_MACHINE_EMU]: Add missing - LVM and RAID prototypes. - * include/grub/emu/misc.h (grub_emu_post_init): New proto. - * include/grub/mips/time.h (grub_cpu_idle) [GRUB_MACHINE_EMU]: New - function. - -2010-09-10 Colin Watson - - * util/grub-install.in: Don't try to verify core.img until after - running grub-mkimage to create it. - -2010-09-10 Robert Millan - - * util/grub.d/10_hurd.in: Add misc readability checks. - * util/grub.d/10_kfreebsd.in: Likewise. - * util/grub.d/10_linux.in: Likewise. - -2010-09-10 Colin Watson - - * util/grub-install.in: ${imgext} won't be defined here until the - install branch is merged. For the meantime, only verify core.img on - i386-pc and sparc64-ieee1275 platforms. - -2010-09-10 Robert Millan - - Solaris support in grub_find_zpool_from_dir(). Thanks - Seth Goldberg for referring to getextmntent() facility. - - * configure.ac: Check for getextmntent(), `sys/mnttab.h' and - `sys/mkdev.h'. - * grub-core/kern/emu/misc.c [HAVE_SYS_MNTTAB_H]: Include - `'. - [HAVE_SYS_MKDEV_H]: Include `'. - [HAVE_GETEXTMNTENT] (grub_find_zpool_from_dir): Add getextmntent() - method for finding zpool name. - -2010-09-10 Colin Watson - - grub-fstest needs the host and hostfs modules while other utilities - actively require those modules to be absent, so grub-fstest needs - its own initialisation and finalisation code. - - * Makefile.am (grub_fstest.pp): New target. - (grub_fstest_init.lst): Likewise. - (grub_fstest_init.c): Likewise. - * Makefile.util.def (grub-fstest): Add grub_fstest_init.c. - -2010-09-10 Robert Millan - - * configure.ac: Check for `struct statfs.f_fstypename' and - `struct statfs.f_mntfromname'. - - * grub-core/kern/emu/misc.c (grub_find_zpool_from_dir): Conditionalize - kFreeBSD-specific code. - -2010-09-10 Robert Millan - - * util/grub.d/10_kfreebsd.in: Fix ${kfreebsd_device} initialization - on ZFS. Now non-main filesystems are supported as / too. - -2010-09-09 Colin Watson - - * Makefile.util.def (libgrub.a): Move grub-core/kern/emu/hostfs.c - and grub-core/disk/host.c to ... - (grub-fstest): ... here. Having the host disk implementation - present confuses grub-probe and other utility programs. - - * util/grub-mkconfig.in: Only verify readability of grub.cfg.new - when writing to a file, not when writing to stdout. - -2010-09-09 BVK Chaitanya - - * tests/partmap_test.in: New test for partitions. - * Makefile.util.def: Rules for new test. - -2010-09-09 Robert Millan - - * util/grub-probe.c (probe): Fix a pair of unhandled error - conditions. - -2010-09-09 Robert Millan - - Basic Btrfs support (detection and UUID). - - * grub-core/fs/btrfs.c: New file. - * Makefile.util.def (library): Register btrfs.c. - * grub-core/Makefile.core.def: Likewise. - -2010-09-08 Robert Millan - - * util/grub-mkconfig_lib.in (is_path_readable_by_grub): Improve - with (optional) parameters to specify device and relative path. - * util/grub-install.in: Use is_path_readable_by_grub() to - verify readability of a few critical files. - * util/grub-mkconfig.in: Use is_path_readable_by_grub() to - verify readability of grub.cfg.new. - -2010-09-08 Vladimir Serbinenko - - Split minix.mod into minix.mod and minix2.mod. - - * Makefile.util.def (libgrub.a): Add grub-core/fs/minix2.c. - * grub-core/Makefile.core.def (minix2): New module. - * grub-core/fs/minix.c: Use definitions instead of runtime version - checking. - * grub-core/fs/minix2.c: New file. - -2010-09-08 Yves Blusseau - - Add new --boot-directory option to replace --root-directory - - * util/grub-install.in: Add new --boot-directory option - * util/grub-reboot.in: Likewise. - * util/grub-set-default.in: Likewise. - -2010-09-08 Yves Blusseau - - * util/grub-mkconfig.in: Use new variable. - -2010-09-08 Yves Blusseau - - * configure.ac: Define some useful variables. - -2010-09-08 Vladimir Serbinenko - - * grub-core/kern/ieee1275/cmain.c (grub_ieee1275_find_options): Set - GRUB_IEEE1275_FLAG_HAS_CURSORONOFF when appropriate. - * grub-core/term/ieee1275/ofconsole.c (grub_ofconsole_setcursor): - Use terminfo and don't use cursor-on/cursor-off unless it's known - to work. - * include/grub/ieee1275/ieee1275.h (grub_ieee1275_flag): New element - GRUB_IEEE1275_FLAG_HAS_CURSORONOFF. - -2010-09-08 Colin Watson - - * grub-core/kern/efi/init.c (grub_efi_set_prefix): If the prefix - starts with "(,", fill the drive containing the loaded image in - between those two characters, but expect that a full partition - specification including partition map names will follow. - -2010-09-08 Robert Millan - - * configure.ac: Remove `--enable-grub-fstest' option. - * Makefile.util.def (grub-fstest): Remove COND_GRUB_FSTEST condition. - - * util/grub-mkconfig_lib.in (is_path_readable_by_grub): Use - `grub-fstest' instead of `grub-probe' for readability verification. - * util/grub-probe.c (probe): Remove readability verification kludge. - -2010-09-08 Robert Millan - - * util/grub-mkconfig.in: Pass `--device ${GRUB_DEVICE}' when - initializing `GRUB_FS'. - -2010-09-08 BVK Chaitanya - - Not command (!) support to GRUB script. - - * tests/grub_script_not.in: New test. - * Makefile.util.def: Rules for new test. - - * grub-core/script/execute.c (grub_script_execute_cmdline): Handle - ! command as a special case. - * grub-core/script/yylex.l (GRUB_PARSER_TOKEN_NOT): Removed. - -2010-09-07 BVK Chaitanya - - * grub-core/commands/wildcard.c (wildcard_expand): Fix wrong - grub_free. - -2010-09-07 BVK Chaitanya - - * docs/grub.texi (Shell-like scripting): Fix @dots to @dots{}. - -2010-09-07 BVK Chaitanya - - * docs/grub.texi (Shell-like scripting): Documentation for break, - continue, shift and return commands. - -2010-09-06 Vladimir Serbinenko - - Rename CD-ROM to cd on BIOS. - - * grub-core/disk/i386/pc/biosdisk.c (grub_biosdisk_get_drive): Recognise - "cd". - (grub_biosdisk_call_hook): Call with "cd" instead of arbitrary hdX. - -2010-09-05 Vladimir Serbinenko - - * grub-core/kern/emu/main.c (main): Reinit LVM and RAID. - * util/grub-probe.c (main): Likewise. - * util/i386/pc/grub-setup.c (main): Likewise. - * util/sparc64/ieee1275/grub-setup.c (main): Likewise. - Reported and debugged by: alexxy - -2010-09-05 Vladimir Serbinenko - - * grub-core/disk/lvm.c (grub_lvm_scan_device) [GRUB_UTIL]: Output more - diagnostic info. - -2010-09-05 Jo Shields - - * util/grub.d/30_os-prober.in: Add missing classes. - -2010-09-05 Vladimir Serbinenko - - * docs/grub.texi (Theme file format): Document new position format. - -2010-09-05 Vladimir Serbinenko - - * docs/grub.texi (Theme file format): Replace Box_slice_names.png with - a table. Use @code instead of @verbatim. - -2010-09-05 Colin D Bennett - - Gfxmenu documentation. - - * docs/grub.texi (Theme file format): New chapter. - -2010-09-05 Szymon Janc - - * grub-core/Makefile.core.def (xzio): New module. - * grub-core/io/xzio.c: New file. - * grub-core/lib/xzembed/xz.h: New file (from xembed). - * grub-core/lib/xzembed/xz_config.h: Likewise. - * grub-core/lib/xzembed/xz_dec_bcj.c: Likewise. - * grub-core/lib/xzembed/xz_dec_lzma2.c: Likewise. - * grub-core/lib/xzembed/xz_dec_stream.c: Likewise. - * grub-core/lib/xzembed/xz_lzma2.h: Likewise. - * grub-core/lib/xzembed/xz_private.h: Likewise. - * grub-core/lib/xzembed/xz_stream.h: Likewise. - * include/grub/file.h (grub_file_filter_id): New compression filter - GRUB_FILE_FILTER_XZIO. - -2010-09-05 Vladimir Serbinenko - - * include/grub/file.h (GRUB_FILE_SIZE_UNKNOWN): New definition. - * grub-core/disk/loopback.c (grub_loopback_open): Handle unknown file - size. - -2010-09-05 Vladimir Serbinenko - - * include/grub/err.h (grub_err_t): Replace GRUB_ERR_BAD_GZIP_DATA with - GRUB_ERR_BAD_COMPRESSED_DATA. All users updated. - -2010-09-05 Vladimir Serbinenko - - Uncompressed checksum support. - - * grub-core/commands/hashsum.c (options): Add option --uncompress. - (check_list): New parameter uncompress. - (grub_cmd_hashsum): Handle --uncompress. - -2010-09-05 Vladimir Serbinenko - - Reintroduce testload. - - * grub-core/commands/minicmd.c (grub_rescue_cmd_testload) [0]: Moved - from here ... - * grub-core/commands/testload.c (grub_cmd_testload): ... here. - (GRUB_MOD_INIT): New function. - (GRUB_MOD_FINI): Likewise. - * grub-core/Makefile.core.def (testload): New module. - -2010-09-05 Szymon Janc - - * grub-core/lib/posix_wrap/sys/types.h (bool): Transform into an enum. - (uint8_t): New type. - (uint16_t): Likewise. - (uint32_t): Likewise. - (uint64_t): Likewise. - -2010-09-05 Szymon Janc - - * include/grub/crypto.h (GRUB_MD_CRC32): New definition. - -2010-09-05 Vladimir Serbinenko - - * grub-core/io/gzio.c (grub_gzio_open): Removed "transparent" parameter. - Made static. - (grub_gzfile_open): Removed. All users updated. - (GRUB_MOD_INIT): New function. - (GRUB_MOD_FINI): Likewise. - * grub-core/kern/file.c (grub_file_filters_all): New variable. - (grub_file_filters_enabled): Likewise. - (grub_file_open): Handle filters. - * grub-core/loader/i386/bsd.c (GRUB_MOD_INIT): Load gzio. - * grub-core/normal/main.c (GRUB_MOD_INIT): Likewise. - * include/grub/file.h (grub_file_filter_id_t): New type. - (grub_file_filter_t): Likewise. - (grub_file_filters_all): New extern variable. - (grub_file_filters_enabled): Likewise. - (grub_file_filter_register): New inline function. - (grub_file_filter_unregister): Likewise. - (grub_file_filter_disable): Likewise. - (grub_file_filter_disable_compression): Likewise. - * include/grub/gzio.h: Removed. - -2010-09-04 BVK Chaitanya - - Filename expansion support for wildcards in GRUB script. - - * tests/grub_script_expansion.in: New test. - * Makefile.util.def: Rule for new test. - - * grub-core/commands/wildcard.c: New file, implements filename - expansion support for GRUB script. - * grub-core/Makefile.core.def: Rule update for regexp.mod. - * grub-core/script/argv.c: Cosmetic changes. - * grub-core/script/execute.c (grub_script_arglist_to_argv): - Refactored to perform wildcard expansion on arguments. - * include/grub/script_sh.h (grub_script_wildcard_translator): New - struct. - - * tests/util/grub-shell.in: Fix quoting for read input. - -2010-09-04 BVK Chaitanya - - Support for updating environment variables with matched substrings - of regexp. - - * tests/grub_cmd_regexp.in: New test. - * Makefile.util.def: Rule for new test. - - * grub-core/commands/regexp.c: New option -s to update environment - variables with regexp matches. - -2010-09-04 Szymon Janc - - * include/grub/file.h (grub_file): New member not_easly_seekable. - (grub_file_seekable): New inline function. - * grub-core/io/gzio.c (test_header): Don't test end magic if file isn't - easily seekable. - (grub_gzio_open): Set not_easly_seekable. - * grub-core/fs/i386/pc/pxe.c (grub_pxefs_open): Set not_easily_seekable. - * grub-core/io/bufio.c (grub_bufio_open): Propagate not_easily_seekable. - -2010-09-04 BVK Chaitanya - - Support for options to appear multiple times on cmdline. - - * include/grub/lib/arg.h (grub_arg_list_alloc): New prototype. - * grub-core/commands/extcmd.c: Support for repeatable option. - * grub-core/lib/arg.c (grub_arg_list_alloc): New function for - repeatable option support. - - Refactor menuentry into a regular command. - - * grub-core/commands/menuentry.c: New file, menuentry command - implementation. - * grub-core/Makefile.core.def: Rule update for normal.mod. - * grub-core/normal/main.c: Moved menuentry creation to - grub-core/commands/menuentry.c. - * grub-core/normal/menu.c (grub_menu_execute_entry): Removed. - (grub_menu_execute_entry_real): Removed. - * grub-core/script/execute.c (grub_script_execute_sourcecode): New - function. - (grub_script_execute_menuentry): Removed. - * grub-core/script/parser.y (menuentry): Removed. - * grub-core/script/script.c (grub_script_create_cmdmenu): Removed. - * grub-core/script/yylex.l (menuentry): Removed. - * include/grub/menu.h (grub_menu_init): New prototype. - (grub_menu_fini): New prototype. - * include/grub/normal.h (grub_normal_add_menu_entry): Removed. - * include/grub/script_sh.h (grub_script_cmd_menuentry): Removed. - (grub_script_execute_sourcecode): New prototype. - -2010-09-04 BVK Chaitanya - - "return" command for GRUB script functions. - - * tests/grub_script_return.in: New test. - * Makefile.util.def: Rules for new test. - - * grub-core/script/execute.c (grub_script_return): New function. - * grub-core/script/main.c: Register/unregister return commaond. - * include/grub/script_sh.h (grub_script_return): New prototype. - -2010-09-04 BVK Chaitanya - - "setparams" command to update positional parameters. - - * tests/grub_script_setparams.in: New test. - * Makefile.util.def: Rules for new test. - - * grub-core/script/argv.c (grub_script_argv_make): New function. - * grub-core/script/execute.c (replace_scope): New function. - (grub_script_setparams): New function. - * grub-core/script/lexer.c: Remove unused variables. - * grub-core/script/main.c: Register/unregister setparams command. - * include/grub/script_sh.h (grub_script_argv_make): New prototype. - (grub_script_setparams): New prototype. - -2010-09-04 BVK Chaitanya - - * grub-core/normal/completion.c (grub_normal_do_completion): Fix - grub_free order. - -2010-09-04 BVK Chaitanya - - Support for passing block of commands as an argument to extcmds. - - * Makefile.util.def: Rules for new test. - * tests/grub_script_blockarg.in: New test. - * grub-core/tests/test_blockarg.c: New file, block argument - command used in the test. - - * include/grub/extcmd.h (grub_extcmd_context): New struct. - (grub_register_extcmd_prio): New function prototype. - (grub_extcmd_dispatcher): New function prototype. - * include/grub/command.h (GRUB_COMMAND_FLAG_BLOCKS): New command - type. - * include/grub/script_sh.h (struct grub_script): New members - `children', `next_siblings' and `refcnt' for block arguments and - reference counting. - (GRUB_SCRIPT_ARG_TYPE_BLOCK): New argument type. - (grub_script_arg): New member `script' for block argument. - (grub_script_argv): New member `script' for block argument. - (grub_parser_param): New member `scripts' for block argument. - (grub_script_mem_free): New extern function prototype. - (grub_script_ref): New function prototype. - (grub_script_unref): New function prototype. - - * grub-core/normal/dyncmd.c (grub_dyncmd_dispatcher): Moved to - extcmd form to support block arguments. - * grub-core/script/argv.c: Block arguments support. - * grub-core/script/execute.c: Likewise. - * grub-core/script/lexer.c: Likewise. - * grub-core/script/main.c: Likewise. - * grub-core/script/script.c: Likewise. - * grub-core/script/parser.y: Likewise. New `block' and `block0' - non-terminals. - - * grub-core/commands/acpi.c: Update extcmd implementations with - grub_extcmd_context_t. - * grub-core/commands/cat.c: Likewise. - * grub-core/commands/echo.c: Likewise. - * grub-core/commands/extcmd.c: Likewise. - * grub-core/commands/hashsum.c: Likewise. - * grub-core/commands/hdparm.c: Likewise. - * grub-core/commands/help.c: Likewise. - * grub-core/commands/hexdump.c: Likewise. - * grub-core/commands/i386/cpuid.c: Likewise. - * grub-core/commands/i386/pc/drivemap.c: Likewise. - * grub-core/commands/i386/pc/halt.c: Likewise. - * grub-core/commands/i386/pc/sendkey.c: Likewise. - * grub-core/commands/iorw.c: Likewise. - * grub-core/commands/keystatus.c: Likewise. - * grub-core/commands/loadenv.c: Likewise. - * grub-core/commands/ls.c: Likewise. - * grub-core/commands/lspci.c: Likewise. - * grub-core/commands/memrw.c: Likewise. - * grub-core/commands/probe.c: Likewise. - * grub-core/commands/search_wrap.c: Likewise. - * grub-core/commands/setpci.c: Likewise. - * grub-core/commands/sleep.c: Likewise. - * grub-core/disk/loopback.c: Likewise. - * grub-core/hello/hello.c: Likewise. - * grub-core/loader/i386/bsd.c: Likewise. - * grub-core/loader/xnu.c: Likewise. - * grub-core/term/gfxterm.c: Likewise. - * grub-core/term/serial.c: Likewise. - * grub-core/tests/lib/functional_test.c: Likewise. - -2010-09-04 BVK Chaitanya - - Multi-line quoted strings support. - - * grub-core/script/lexer.c (append_newline): Removed. - (grub_script_lexer_yywrap): Refactored. - (grub_script_lexer_init): Refactored. - * grub-core/script/yylex.l (yywrap): New function. - (grub_lexer_resplit): New function. - (grub_lexer_unput): New function. - * include/grub/script_sh.h (grub_lexer_param): New members, unput - and resplit. - * tests/grub_script_echo1.in: Added few more testcases. - -2010-09-04 Vladimir Serbinenko - - * grub-core/kern/misc.c: Don't add abort alias in utils. - Reported by: echoline. - -2010-09-03 BVK Chaitanya - - Add missing files into "make dist" tarball for other platforms. - - * gentpl.py (script): Use dist_noinst_DATA instead of EXTRA_DIST. - * conf/Makefile.common (dist_noinst_DATA): New variable. - * conf/Makefile.extra-dist: Added missing make dist files. - * grub-core/Makefile.core.def: Likewise. - -2010-09-03 Vladimir Serbinenko - - Compress grub_prefix. - - * grub-core/boot/i386/pc/lnxboot.S: Use - GRUB_KERNEL_I386_PC_MULTIBOOT_SIGNATURE. - * grub-core/kern/i386/pc/startup.S: Move grub_prefix to compressed part. - * include/grub/offsets.h: Rename GRUB_MACHINE_DATA_END to - GRUB_MACHINE_PREFIX_END. All users updated. - (GRUB_KERNEL_I386_PC_PREFIX): Set to GRUB_KERNEL_I386_PC_RAW_SIZE. - (GRUB_KERNEL_I386_PC_PREFIX_END): Set to GRUB_KERNEL_I386_PC_PREFIX - + 0x40. - (GRUB_KERNEL_I386_PC_RAW_SIZE): Decrease. - * util/grub-mkimage.c (image_target_desc): Change data_end to - prefix_end. All users updated. - -2010-09-03 Vladimir Serbinenko - - * grub-core/loader/i386/bsd.c (grub_freebsd_boot): Set %ebp to sane - value. - (grub_openbsd_boot): Likewise. - (grub_netbsd_boot): Likewise. - * grub-core/loader/i386/xnu.c (grub_xnu_boot_resume): Likewise. - (grub_xnu_boot): Likewise. - -2010-09-02 Vladimir Serbinenko - - * configure.ac: Clean LIBS variable after tests. - -2010-09-02 Colin Watson - - * INSTALL: Document that libdevmapper needs to be 1.02.34 or later. - -2010-09-02 Vladimir Serbinenko - - * configure.ac: Check for dm_log_with_errno_init in libdevmapper and - echo if libdevmapper will be used. - -2010-09-02 Ian Turner - - * grub-core/fs/i386/pc/pxe.c (grub_pxefs_read): Keep the blocksize - constant for the same file. - -2010-09-02 Vladimir Serbinenko - - * grub-core/kern/i386/multiboot_mmap.c: Remove leftover include. - -2010-09-02 Colin Watson - - * .bzrignore: Add *.pp, **/.dirstamp, grub-core/*.module, and - grub-core/*.pp. - -2010-09-02 Colin Watson - - Zero %ebp and %edi when entering Linux's 32-bit entry point, as - required by the boot protocol. - - * include/grub/i386/relocator.h (struct grub_relocator32_state): Add - ebp and edi members. - * grub-core/lib/i386/relocator.c (grub_relocator_boot): Handle - state.ebp and state.edi. - * grub-core/lib/i386/relocator32.S (grub_relocator32_start): Set - %ebp and %edi according to grub_relocator32_ebp and - grub_relocator32_edi respectively. - * grub-core/loader/i386/linux.c (grub_linux_boot): Zero state.ebp - and state.edi. - -2010-09-02 Vladimir Serbinenko - - Add i386-pc-pxe image target. - - * util/grub-mkimage.c (image_target_desc): New enum value - IMAGE_I386_PC_PXE. - (image_targets): New target i386-pc-pxe. - (generate_image): Handle i386-pc-pxe image. - -2010-09-02 Vladimir Serbinenko - - Fix grub_pxe_scan. - - * grub-core/fs/i386/pc/pxe.c (grub_pxe_pxenv): Put correct type bangpxe. - (grub_pxe_scan): Fix types and pxe_rm_entry computation. - All users updated. - * include/grub/i386/pc/pxe.h (grub_pxe_bangpxe): New struct. - (grub_pxe_pxenv): Correct type. - -2010-09-01 Colin Watson - - * NEWS: Document most of the important changes since 1.98. - -2010-09-01 Colin Watson - - * util/grub-mkrescue.in (usage): Tidy up usage output (and hence - generated manual page) a little. - -2010-09-01 Colin Watson - - * docs/grub.texi: Add myself as an author. - -2010-09-01 Vladimir Serbinenko - - * Makefile.util.def (libgrub.a): Add missing sunpc. - Reported by: Seth Goldberg. - -2010-08-30 Vladimir Serbinenko - - Interrupt wrapping and code simplifications. - - * Makefile.util.def (grub-mkrescue): Use x86 tg instead of - x86_noieee1275 which are functionaly equivalent in this case. - (grub-install): Make source on each platform explicit. Enable on - all noemu. - * gentpl.py (x86_efi_pc): Removed group. - (x86_noefi): Likewise. - (i386_noefi): Likewise. - (x86_noieee1275): Likewise. - (i386_noieee1275): Likewise. - (i386_noefi_noieee1275): Likewise. - (i386_pc_qemu_coreboot): Likewise. - (i386_coreboot_multiboot): Likewise. - (i386_pc_coreboot_multiboot_qemu): Likewise. - (x86_noefi_mips): Likewise. - (noieee1275): Likewise. - (ieee1275_mips): Likewise. - (noemu_noieee1275): Likewise. - (cmos): New group. - (usb): Likewise. - (videoinkernel): Likewise. - (videomodules): Likewise. - * grub-core/Makefile.am (KERNEL_HEADER_FILES): Remove - include/grub/elf.h, include/grub/elfload.h, include/grub/net.h, - include/grub/reader.h, include/grub/symbol.h, include/grub/types.h, - include/grub/loader.h, include/grub/msdos_partition.h, - include/grub/machine/biosdisk.h, include/grub/machine/boot.h, - include/grub/machine/console.h, include/grub/machine/vga.h, - include/grub/machine/vbe.h, include/grub/machine/init.h, - include/grub/machine/kernel.h, include/grub/cpu/time.h, - include/grub/cpu/types.h, include/grub/gzio.h and include/grub/menu.h - (KERNEL_HEADER_FILES) [i386-pc]: Add include/grub/machine/int.h. - (KERNEL_HEADER_FILES) [i386-ieee1275]: Add include/grub/i386/pit.h - * grub-core/Makefile.core.def (kernel): Explicit the source for - startup. Explicit the platforms using kern/generic/rtc_get_time_ms.c. - Split ieee1275_mips. Remove kern/i386/halt.c. Remove kern/i386/misc.S. - Enable kern/i386/pit.c on all x86. Remove kern/i386/ieee1275/init.c. - Use videoinkernel tag. - (usb): Enable on all usb. - (usbserial_common): Likewise. - (usbserial_pl2303): Likewise. - (usbserial_ftdi): Likewise. - (uhci): Enable on all x86. - (ohci): Enable on all pci. - (cmostest): Enable on all CMOS. - (acpi): Include commands/acpi.c on all platforms. - (halt): Add relevant lib/*/halt.c. - (hdparm): Enable on all pci. - (lspci): Likewise. - (usbtest): Enable on all usb. - (ata): Enable on all pci. - (ata_pthru): Likewise. - (usbms): Enable on all usb. - (usb_keyboard): Likewise. - (font): Use tag videomodules. - (bufio): Likewise. - (datetime): Use tag cmos. Enable on all noemu. - (mmap): Use tags common and x86. - (gfxterm): Use tag videomodules. - (bitmap): Likewise. - (bitmap_scale): Likewise. - (video_fb): Likewise. - (video): Likewise. - * grub-core/bus/usb/ohci.c (grub_ohci_td): Make link_td a pointer and - adjust padding accordingly. All users updated. - (grub_ohci_transaction): Fix bad format specification. - (GRUB_MOD_INIT): Add asserts for struct size. - * grub-core/bus/usb/uhci.c (grub_uhci_pci_iter): Add explicit casts. - (grub_alloc_td): Likewise. - (grub_free_queue): Likewise. - (grub_uhci_transfer): Likewise. - (grub_uhci_transaction): Fix bad format specification. - * grub-core/bus/usb/usbtrans.c (grub_usb_control_msg): Likewise. - (grub_usb_bulk_readwrite): Likewise. - * grub-core/kern/i386/misc.S (grub_stop): Moved from here ... - * grub-core/commands/i386/pc/halt.c (stop): ...here. Transformed into C. - Made static. - * grub-core/lib/i386/halt.c (stop): ... and here. Transformed into C. - Made static. - * grub-core/kern/i386/pc/startup.S (grub_halt): Moved from here ... - * grub-core/commands/i386/pc/halt.c (grub_halt): ...here. - Transformed into C. - * grub-core/kern/i386/pc/startup.S (grub_biosdisk_rw_int13_extensions): - Moved from here ... - * grub-core/disk/i386/pc/biosdisk.c (grub_biosdisk_rw_int13_extensions): - ... here. Transformed into C. Made static. - * grub-core/kern/i386/pc/startup.S (grub_biosdisk_rw_standard): - Moved from here ... - * grub-core/disk/i386/pc/biosdisk.c (grub_biosdisk_rw_standard): - ... here. Transformed into C. Made static. - * grub-core/kern/i386/pc/startup.S - (grub_biosdisk_check_int13_extensions): Moved from here ... - * grub-core/disk/i386/pc/biosdisk.c - (grub_biosdisk_check_int13_extensions): ... here. Transformed into C. - Made static. - * grub-core/kern/i386/pc/startup.S - (grub_biosdisk_get_cdinfo_int13_extensions): Moved from here ... - * grub-core/disk/i386/pc/biosdisk.c - (grub_biosdisk_get_cdinfo_int13_extensions): ... here. - Transformed into C. Made static. - * grub-core/kern/i386/pc/startup.S - (grub_biosdisk_get_diskinfo_int13_extensions): Moved from here ... - * grub-core/disk/i386/pc/biosdisk.c - (grub_biosdisk_get_diskinfo_int13_extensions): ... here. - Transformed into C. Made static. - * grub-core/kern/i386/pc/startup.S - (grub_biosdisk_get_diskinfo_standard): Moved from here ... - * grub-core/disk/i386/pc/biosdisk.c - (grub_biosdisk_get_diskinfo_standard): ... here. - Transformed into C. Made static. - * grub-core/kern/i386/pc/startup.S - (grub_biosdisk_get_num_floppies): Moved from here ... - * grub-core/disk/i386/pc/biosdisk.c - (grub_biosdisk_get_num_floppies): ... here. - Transformed into C. Made static. - * grub-core/disk/i386/pc/biosdisk.c (grub_biosdisk_get_diskinfo_real): - New function. - * grub-core/kern/i386/pc/startup.S (grub_pxe_scan): Moved from here ... - * grub-core/fs/i386/pc/pxe.c (grub_pxe_scan): ... here. - Transformed into C. Made static. - * grub-core/kern/i386/pc/startup.S (grub_rm_entry): Moved from here ... - * grub-core/fs/i386/pc/pxe.c (grub_rm_entry): ... here. - Transformed into C. Made static. - * grub-core/kern/i386/ieee1275/init.c: Removed. - * grub-core/kern/i386/misc.S: Likewise. - * grub-core/kern/i386/pc/startup.S (grub_get_memsize): - Splitted from here ... - * grub-core/kern/i386/pc/init.c (grub_get_conv_memsize): ... here. - Transformed into C. Made static. All users updated. - * grub-core/kern/i386/pc/mmap.c (grub_get_ext_memsize): ... and here. - Transformed into C. Made static. All users updated. - * grub-core/kern/i386/pc/startup.S (grub_get_eisa_mmap): - Moved from here... - * grub-core/kern/i386/pc/mmap.c (grub_get_eisa_mmap): ... here. - Transformed into C. Made static. All users updated. - * grub-core/kern/i386/pc/startup.S (grub_get_mmap_entry): - Moved from here... - * grub-core/kern/i386/pc/mmap.c (grub_get_mmap_entry): ... here. - Transformed into C. Made static. All users updated. - * grub-core/kern/i386/pc/startup.S (grub_stop_floppy): - Removed (replaced by C version). - * grub-core/kern/i386/pc/startup.S (grub_vga_set_mode): - Moved from here... - * grub-core/video/i386/pc/vga.c (grub_vga_set_mode): ...here. - Transformed into C. Made static. - * grub-core/kern/i386/pc/startup.S (grub_vbe_bios_get_controller_info): - Moved from here... - * grub-core/video/i386/pc/vbe.c (grub_vbe_bios_get_controller_info): - ... here. Transformed into C. - * grub-core/kern/i386/pc/startup.S (grub_vbe_bios_get_mode_info): - Moved from here... - * grub-core/video/i386/pc/vbe.c (grub_vbe_bios_get_mode_info): - ... here. Transformed into C. - * grub-core/kern/i386/pc/startup.S (grub_vbe_bios_set_mode): - Moved from here... - * grub-core/video/i386/pc/vbe.c (grub_vbe_bios_set_mode): - ... here. Transformed into C. Made static. - * grub-core/kern/i386/pc/startup.S (grub_vbe_bios_get_mode): - Moved from here... - * grub-core/video/i386/pc/vbe.c (grub_vbe_bios_get_mode): - ... here. Transformed into C. - * grub-core/kern/i386/pc/startup.S - (grub_vbe_bios_getset_dac_palette_width):Moved from here... - * grub-core/video/i386/pc/vbe.c - (grub_vbe_bios_getset_dac_palette_width):... here. Transformed into C. - * grub-core/kern/i386/pc/startup.S (grub_vbe_bios_set_memory_window): - Moved from here... - * grub-core/video/i386/pc/vbe.c (grub_vbe_bios_set_memory_window): - ... here. Transformed into C. - * grub-core/kern/i386/pc/startup.S (grub_vbe_bios_get_memory_window): - Moved from here... - * grub-core/video/i386/pc/vbe.c (grub_vbe_bios_get_memory_window): - ... here. Transformed into C. - * grub-core/kern/i386/pc/startup.S (grub_vbe_bios_set_scanline_length): - Moved from here... - * grub-core/video/i386/pc/vbe.c (grub_vbe_bios_set_scanline_length): - ... here. Transformed into C. - * grub-core/kern/i386/pc/startup.S (grub_vbe_bios_get_scanline_length): - Moved from here... - * grub-core/video/i386/pc/vbe.c (grub_vbe_bios_get_scanline_length): - ... here. Transformed into C. - * grub-core/kern/i386/pc/startup.S (grub_vbe_bios_set_display_start): - Moved from here... - * grub-core/video/i386/pc/vbe.c (grub_vbe_bios_set_display_start): - ... here. Transformed into C. Made static. - * grub-core/kern/i386/pc/startup.S (grub_vbe_bios_get_display_start): - Moved from here... - * grub-core/video/i386/pc/vbe.c (grub_vbe_bios_get_display_start): - ... here. Transformed into C. Made static. - * grub-core/kern/i386/pc/startup.S (grub_vbe_bios_set_palette_data): - Moved from here... - * grub-core/video/i386/pc/vbe.c (grub_vbe_bios_set_palette_data): - ... here. Transformed into C. Made static. - * grub-core/kern/i386/pc/startup.S (grub_pxe_call): Receive - pxe_rm_entry as third argument. - (grub_bios_interrupt): New function. - * grub-core/kern/i386/qemu/mmap.c: Remove useless include. - * grub-core/kern/i386/qemu/startup.S (codestart): Do cli;hlt instead - of calling grub_stop. - * grub-core/kern/efi/efi.c (grub_halt): Moved from here ... - * grub-core/lib/efi/halt.c (grub_halt): ...here. - * grub-core/kern/emu/main.c (grub_halt): Moved from here ... - * grub-core/lib/emu/halt.c (grub_halt): ... here. - * grub-core/lib/i386/halt.c: Moved from here ... - * grub-core/lib/i386/halt.c: ... here. - * grub-core/kern/ieee1275/openfw.c (grub_halt): Moved from here ... - * grub-core/lib/ieee1275/halt.c (grub_halt): ... here. - * grub-core/loader/i386/pc/linux.c (grub_linux16_boot): Call - grub_stop_floppy. - * grub-core/loader/i386/xnu.c (guessfsb) [IEEE1275]: Enable. - * include/grub/i386/coreboot/init.h: Removed. - * include/grub/i386/multiboot/init.h: Likewise. - * include/grub/i386/pc/biosdisk.h: Removed all function prototypes. - * include/grub/i386/pc/init.h: Likewise except grub_gate_a20. - * include/grub/i386/pc/int.h: New file. - * include/grub/i386/pc/pxe.h (GRUB_PXE_SIGNATURE): New definition. - (grub_pxe_scan): Removed. - (grub_pxe_call): Update prototype. - * include/grub/i386/pc/vbe.h: Removed EXPORT_FUNC and useless - prototypes. - * include/grub/i386/pc/vga.h (grub_vga_set_mode): Removed. - * include/grub/i386/qemu/init.h: Removed. - * include/grub/mips/yeeloong/kernel.h (grub_reboot): Add missing - noreturn. - (grub_halt): Likewise. - * include/grub/misc.h (grub_halt): Removed EXPORT_FUNC. - (grub_reboot): Likewise. - * grub-core/kern/i386/coreboot/init.c (grub_stop_floppy): Moved from here... - * include/grub/i386/floppy.h (grub_stop_floppy): ...here. Inlined. - * grub-core/kern/i386/pc/startup.S (grub_hard_stop): Removed. - -2010-08-30 Robert Millan - - * NEWS: Document addition of ZFS support in `grub-install' and - `grub-mkconfig'. - -2010-08-30 BVK Chaitanya - - * conf/Makefile.common (CPPFLAGS_DEFAULT): Remove leading / from - dprintf output. - -2010-08-30 Vladimir Serbinenko - - Remove leftover embedding of font objects. - - * include/grub/kernel.h (OBJ_TYPE_FONT): Removed. - * util/grub-install.in (font): Removed. - * util/grub-mkimage.c (generate_image): Remove font support. All users - updated. - -2010-08-30 Vladimir Serbinenko - - Remove leftover embedding of font objects. - - * include/grub/kernel.h (OBJ_TYPE_FONT): Removed. - * util/grub-install.in (font): Removed. - * util/grub-mkimage.c (generate_image): Remove font support. All users - updated. - -2010-08-30 Vladimir Serbinenko - - * docs/grub.texi (Network): Fix reference to pxe_blksize. - Reported by: Ian Turner - -2010-08-30 Vladimir Serbinenko - - * grub-core/normal/menu.c (grub_wait_after_message): Add a 10 second - timeout to avoid indefinite boot stalling. - -2010-08-30 Vladimir Serbinenko - - * grub-core/normal/color.c (grub_env_write_color_normal): Fix a warning. - (grub_env_write_color_highlight): Likewise. - -2010-08-30 Vladimir Serbinenko - - * grub-core/normal/term.c (print_more): Return to normal and not - to standard state after printing "---MORE---". - -2010-08-30 Vladimir Serbinenko - - * grub-core/term/i386/vga_common.c (grub_console_setcolorstate): - Mask out the bit 0x80 since it has other meaning that specifiing color. - -2010-08-29 Vladimir Serbinenko - - New relocator. Allows for more kernel support and more straightforward - loader writing. - - * Makefile.am (BOOTTARGET): New variable. - (QEMU32): Likewise. - (linux.init.x86_64): New target. - (linux.init.i386): Likewise. - (multiboot.elf): Likewise. - (kfreebsd.elf): Likewise. - (kfreebsd.aout): Likewise. - (pc-chainloader.elf): Likewise. - (pc-chainloader.bin): Likewise. - (ntldr.elf): Likewise. - (ntldr.bin): Likewise. - (multiboot2.elf): Likewise. - (kfreebsd.init.x86_64): Likewise. - (kfreebsd.init.i386): Likewise. - (knetbsd.init.i386): Likewise. - (kopenbsd.init.i386): Likewise. - (knetbsd.init.x86_64): Likewise. - (kopenbsd.init.x86_64): Likewise. - (linux-initramfs.i386): Likewise. - (linux-initramfs.x86_64): Likewise. - (kfreebsd-mfsroot.i386.img): Likewise. - (knetbsd.image.i386): Likewise. - (kopenbsd.image.i386): Likewise. - (kopenbsd.image.x86_64): Likewise. - (knetbsd.miniroot-image.i386.img): Likewise. - (kfreebsd-mfsroot.x86_64.img): Likewise. - (knetbsd.image.x86_64): Likewise. - (knetbsd.miniroot-image.x86_64.img): Likewise. - (kfreebsd-mfsroot.i386.gz): Likewise. - (bootcheck-kfreebsd-i386): Likewise. - (kfreebsd-mfsroot.x86_64.gz): Likewise. - (bootcheck-kfreebsd-x86_64): Likewise. - (knetbsd.miniroot-image.i386.gz): Likewise. - (bootcheck-knetbsd-i386): Likewise. - (bootcheck-kopenbsd-i386): Likewise. - (bootcheck-kopenbsd-x86_64): Likewise. - (knetbsd.miniroot-image.x86_64.gz): Likewise. - (bootcheck-knetbsd-x86_64): Likewise. - (bootcheck-linux-i386): Likewise. - (bootcheck-linux-x86_64): Likewise. - (bootcheck-linux16-i386): Likewise. - (bootcheck-linux16-x86_64): Likewise. - (bootcheck-multiboot): Likewise. - (bootcheck-multiboot2): Likewise. - (bootcheck-kfreebsd-aout): Likewise. - (bootcheck-pc-chainloader): Likewise. - (bootcheck-ntldr): Likewise. - (CLEANFILES): Add new targets. - (BOOTCHECKS): New variable. - (.PHONY): Add bootchecks. - (SUCCESSFUL_BOOT_STRING): New variable. - (BOOTCHECK_TIMEOUT): Likewise. - (bootcheck): New target - * Makefile.util.def (grub-mkrescue): Enable on i386-multiboot. - * configure.ac: Correct efiemu excuse. - * docs/grub.texi (Supported kernels): New chapter. - * grub-core/Makefile.am (KERNEL_HEADER_FILES): Add - include/grub/mm_private.h. Simplify inclusion of - include/grub/boot.h, include/grub/loader.h - and include/grub/msdos_partition.h - (KERNEL_HEADER_FILES) [i386_coreboot]: - Remove include/grub/machine/loader.h. Add include/grub/i386/pit.h. - (KERNEL_HEADER_FILES) [i386_multiboot]: Likewise. - (KERNEL_HEADER_FILES) [i386_qemu]: Likewise. - (KERNEL_HEADER_FILES) [i386_ieee1275]: Remove - include/grub/machine/loader.h. - (KERNEL_HEADER_FILES) [x86_64-efi]: Likewise. - * grub-core/Makefile.core.def (kernel): Remove kern/i386/loader.S from - extra_dist. - (pci.mod): Enable on i386-multiboot. - (acpi.mod): Enable on i386-multiboot and i386-coreboot. - (efiemu.mod): Enable on i386-coreboot, i386-ieee1275, i386-multiboot and - i386-qemu. - (relocator.mod): Rewritten. - (aout.mod): Enable on all x86. - (bsd.mod): Likewise. - (ntldr.mod): New module. - (linux.mod): Use loader/i386/linux.c on all x86. - (xnu.mod): Enable on all x86. - (vga_text.mod): disable on EFI and QEMU. - * grub-core/efiemu/i386/coredetect.c: Remove useless include. - * grub-core/efiemu/i386/pc/cfgtables.c: Likewise. - * grub-core/efiemu/loadcore.c: Likewise. - * grub-core/efiemu/main.c: Likewise. - (grub_efiemu_exit_boot_services): Removed. - (grub_efiemu_finish_boot_services): Likewise. - * grub-core/efiemu/mm.c (grub_efiemu_finish_boot_services): New - function. - * grub-core/efiemu/i386/nocfgtables.c: New file. - * grub-core/kern/dl.c (grub_dl_unload_all): Removed. - * grub-core/kern/efi/efi.c (grub_efi_exit_boot_services): Removed. - (grub_efi_finish_boot_services): Moved from here ... - * grub-core/kern/efi/mm.c (grub_efi_finish_boot_services): ...here. - Fille finish memory map and related data. - (finish_mmap_buf): New variable. - (grub_efi_uintn_t finish_mmap_size): Likewise. - (grub_efi_uintn_t finish_key): Likewise. - (grub_efi_uintn_t finish_desc_size): Likewise. - (grub_efi_uint32_t finish_desc_version): Likewise. - (grub_efi_is_finished): Likewise. - (grub_efi_get_memory_map): Use saved memory map if EFI is already - finished. - * grub-core/kern/elf.c (grub_elf32_phdr_iterate): Make global. - (grub_elf64_phdr_iterate): Likewise. - * grub-core/kern/i386/coreboot/init.c (grub_os_area_addr): Removed. - (grub_os_area_size): Likewise. - (grub_machine_init): Don't reserve os area. - * grub-core/kern/i386/coreboot/startup.S: Don't include loader.S. - * grub-core/kern/i386/ieee1275/startup.S: Likewise. - * grub-core/kern/i386/loader.S: Removed. - * grub-core/kern/i386/pc/init.c (grub_os_area_addr): Removed. - (grub_os_area_size): Likewise. - (grub_machine_init): Don't reserve os area. - * grub-core/kern/i386/pc/startup.S (grub_chainloader_real_boot): - Don't call grub_dl_unload_all. - Don't include loader.S. - * grub-core/kern/i386/qemu/mmap.c (grub_machine_mmap_iterate): - Declare the memory after _end as available. - * grub-core/kern/mm.c (GRUB_MM_FREE_MAGIC): Moved from here... - * include/grub/mm_private.h (GRUB_MM_FREE_MAGIC): ... here. - (GRUB_MM_ALLOC_MAGIC): Moved from here... - * include/grub/mm_private.h (GRUB_MM_ALLOC_MAGIC): ... here. - * grub-core/kern/mm.c (grub_mm_header): Moved from here... - * include/grub/mm_private.h (grub_mm_header): ... here. - * grub-core/kern/mm.c (GRUB_MM_ALIGN): Moved from here... - * include/grub/mm_private.h (GRUB_MM_ALIGN): ... here. - * grub-core/kern/mm.c (grub_mm_region): Moved from here ... - (grub_mm_region): ..here. Removed addr. Added pre_size. - All users updated. - * grub-core/kern/mm.c (base): Renamed to ... - (grub_mm_base): ... this. Made global. - (grub_real_malloc): Alloc from end of region. - (grub_memalign): Don't attempt to malloc if grub_mm_base is NULL. - * grub-core/kern/powerpc/cache.S (grub_arch_sync_caches): Move to ... - * grub-core/kern/powerpc/cache_flush.S: ... here. - * grub-core/lib/efi/relocator.c: New file. - * grub-core/lib/i386/relocator.c: Rewritten. - * grub-core/lib/i386/relocator16.S: New file. - * grub-core/lib/i386/relocator32.S: Likewise. - * grub-core/lib/i386/relocator64.S: Likewise. - * grub-core/lib/i386/relocator_asm.S: Rewritten. - * grub-core/lib/i386/relocator_common.S: New file. - * grub-core/lib/ieee1275/relocator.c: Likewise. - * grub-core/lib/mips/relocator.c: Rewritten. - * grub-core/lib/mips/relocator_asm.S: Renamed variables and minor - stylistic adjustments. - * grub-core/lib/powerpc/relocator.c: New file. - * grub-core/lib/powerpc/relocator_asm.S: Likewise. - * grub-core/lib/relocator.c: Rewritten. - * grub-core/lib/x86_64/relocator_asm.S: New file. - * grub-core/loader/aout.c (grub_aout_load): Make load_addr a void *. - * grub-core/loader/i386/bsd.c (NETBSD_DEFAULT_VIDEO_MODE): New const. - (bsd_tag): New struct. - (tags): New variable. - (tags_last): Likewise. - (netbsd_module): New struct. - (netbsd_mods): New variable. - (netbsd_mods_last): Likewise. - (openbsd_opts): New parameter "serial". - (OPENBSD_SERIAL_ARG): New definition. - (netbsd_opts): New parameter "serial". - (NETBSD_SERIAL_ARG): New definition. - (grub_freebsd_add_meta): Reorganised into ... - (grub_bsd_add_meta): ...this. All users updated. - (grub_freebsd_add_mmap): Reorganised into ... - (generate_e820_mmap): ...this... - (grub_bsd_add_mmap): ...and this. All users updated. - (grub_freebsd_list_modules): Use tags. - (grub_netbsd_add_meta_module): New function. - (grub_netbsd_list_modules): Likewise. - (grub_freebsd_boot): Use relocator and finish EFI. - (grub_openbsd_boot): Likewise. - (grub_netbsd_setup_video): New function. - (grub_netbsd_add_modules): Likewise. - (grub_netbsd_boot): Use grub_netbsd_add_modules, relocator, netbsd_tags - and finish EFI. - (grub_bsd_unload): Unload tags. - (grub_bsd_load_aout): Use relocator. - (grub_bsd_elf32_size_hook): New function. - (grub_bsd_elf32_hook): Use relocator. - (grub_bsd_elf64_size_hook): New function. - (grub_bsd_elf64_hook): Use relocator. - (grub_bsd_load_elf): Use relocator and call grub_openbsd_find_ramdisk. - (grub_bsd_load): Zero-out openbsd_ramdisk. - (grub_bsd_load): Use relocator. - (grub_cmd_openbsd): Support serial. - (grub_cmd_netbsd): Support modules. - (grub_cmd_freebsd_module): Use relocator. - (grub_netbsd_module_load): New function. - (grub_cmd_netbsd_module): Likewise. - (grub_cmd_openbsd_ramdisk): Likewise. - (GRUB_MOD_INIT): Register knetbsd_module, knetbsd_module_elf and - kopenbsd_ramdisk. - (GRUB_MOD_FINI): Unregister new commands. - * grub-core/loader/i386/bsdXX.c (load): Remove useless checks. - (grub_freebsd_load_elfmodule_obj): Use relocator. - (grub_freebsd_load_elfmodule): Likewise. - (grub_freebsd_load_elf_meta): Likewise. - (grub_netbsd_load_elf_meta): New function. - (grub_openbsd_find_ramdisk): Likewise. - * grub-core/loader/i386/bsd_helper.S: Removed. - * grub-core/loader/i386/bsd_pagetable.c: Support relocator. - * grub-core/loader/i386/bsd_trampoline.S: Removed. - * grub-core/loader/i386/efi/linux.c: Likewise. - * grub-core/loader/i386/ieee1275/linux.c: Likewise. - * grub-core/loader/i386/linux.c (HAS_VGA_TEXT): New const. - (DEFAULT_VIDEO_MODE): Likewise. - (real_mode_target): New variable. - (prot_mode_target): Likewise. - (initrd_mem_target): Likewise. - (relocator): Likewise. - (efi_mmap_buf): Likewise. - (efi_mmap_size): Likewise. - (find_efi_mmap_size): Moved from grub-core/loader/i386/efi/linux.c. - (free_pages): Use relocator. - (allocate_pages): Account for efi_mmap and use relocator. Return error. - (grub_linux_setup_video): Return error. - (grub_linux_trampoline_start): Removed. - (grub_linux_trampoline_end): Likewise. - (grub_linux_boot): Use relocator and DEFAULT_VIDEO_MODE. Pass console - andd video parameters depending on firmware. - [GRUB_MACHINE_IEEE1275]: Pass OFW parameters. - [GRUB_MACHINE_EFI]: Pass EFI parameters. - (grub_cmd_linux) [GRUB_MACHINE_EFI]: Likewise. - (grub_cmd_initrd): Use relocator. - * grub-core/loader/i386/linux_trampoline.S: Removed. - * grub-core/loader/i386/multiboot_mbi.c (elf_sec_num): New variable. - (elf_sec_entsize): Likewise. - (elf_sec_shstrndx): Likewise. - (elf_sections): Likewise. - (grub_multiboot_load): Use relocator. - (grub_multiboot_get_mbi_size): Account for sections. - (grub_multiboot_make_mbi): Use relocator and support sections. - (grub_multiboot_add_elfsyms): New function. - (grub_multiboot_free_mbi): Free sections. - * grub-core/loader/i386/pc/linux.c (relocator): New variable. - (grub_linux_real_target): Likewise. - (grub_linux_real_chunk): Likewise. - (grub_linux16_prot_size): Likewise. - (grub_linux16_boot): Use relocator. - (grub_linux_unload): Unload relocator. - (grub_cmd_linux): Use relocator. - (grub_cmd_initrd): Likewise. - * grub-core/loader/i386/pc/ntldr.c: New file. - * grub-core/loader/i386/xnu.c (guessfsb) [GRUB_MACHINE_IEEE1275]: - Don't try to guess CPU frequency. - (grub_xnu_set_video): Stretch bitmap. - (grub_xnu_boot): Use relocator. - * grub-core/loader/mips/linux.c (grub_linux_boot): Use relocator. - (grub_linux_unload): Free relocator. - (grub_linux_load32): Use relocator. - (grub_linux_load64): Likewise. - (grub_cmd_initrd): Likewise. - * grub-core/loader/multiboot.c (grub_multiboot_boot): Use relocator. - (grub_multiboot_unload): Unload relocator. - (grub_cmd_multiboot): Use relocator. - (grub_cmd_module): Likewise. - * grub-core/loader/multiboot_elfxx.c (grub_multiboot_load_elfXX): - Use relocator and support sections. - * grub-core/loader/multiboot_mbi2.c(elf_sec_num): New variable. - (elf_sec_entsize): Likewise. - (elf_sec_shstrndx): Likewise. - (elf_sections): Likewise. - (grub_multiboot_load): Use relocator. - (grub_multiboot_get_mbi_size): Account for sections. - (grub_multiboot_make_mbi): Use relocator and support sections. - (grub_multiboot_add_elfsyms): New function. - * grub-core/loader/powerpc/ieee1275/linux.c: Remove useless include. - * grub-core/loader/sparc64/ieee1275/linux.c: Likewise. - * grub-core/loader/xnu.c (grub_xnu_heap_malloc): Use relocator. - Prototype changed. All users updated. - (grub_xnu_align_heap): Simplified. - (grub_xnu_writetree_toheap): Likewise. - (grub_xnu_unload): Unload relocator. - (grub_cmd_xnu_kernel): Use relocator. - (grub_cmd_xnu_kernel64): Likewise. - (grub_xnu_register_memory): Simplified. - * grub-core/loader/xnu_resume.c (grub_xnu_resume): Use relocator. - * grub-core/term/efi/console.c (grub_console_putchar): Abort if - EFI is finished. - (grub_console_checkkey): Likewise. - (grub_console_getkey): Likewise. - (grub_console_getwh): Likewise. - (grub_console_getxy): Likewise. - (grub_console_gotoxy): Likewise. - (grub_console_cls): Likewise. - (grub_console_setcolorstate): Likewise. - (grub_console_setcursor): Likewise. - * grub-core/term/ns8250.c (grub_ns8250_hw_get_port): New function. - * grub-core/tests/boot/kbsd.init-i386.S: New file. - * grub-core/tests/boot/kbsd.init-x86_64.S: Likewise. - * grub-core/tests/boot/kbsd.spec.txt: Likewise. - * grub-core/tests/boot/kernel-8086.S: Likewise. - * grub-core/tests/boot/kernel-i386.S: Likewise. - * grub-core/tests/boot/kfreebsd-aout.cfg: Likewise. - * grub-core/tests/boot/kfreebsd.cfg: Likewise. - * grub-core/tests/boot/kfreebsd.init-i386.S: Likewise. - * grub-core/tests/boot/kfreebsd.init-x86_64.S: Likewise. - * grub-core/tests/boot/knetbsd.cfg: Likewise. - * grub-core/tests/boot/kopenbsd.cfg: Likewise. - * grub-core/tests/boot/kopenbsdlabel.txt: Likewise. - * grub-core/tests/boot/linux.cfg: Likewise. - * grub-core/tests/boot/linux.init-i386.S: Likewise. - * grub-core/tests/boot/linux.init-x86_64.S: Likewise. - * grub-core/tests/boot/linux16.cfg: Likewise. - * grub-core/tests/boot/multiboot.cfg: Likewise. - * grub-core/tests/boot/multiboot2.cfg: Likewise. - * grub-core/tests/boot/ntldr.cfg: Likewise. - * grub-core/tests/boot/pc-chainloader.cfg: Likewise. - * include/grub/aout.h (grub_aout_load): Make load_addr a void *. - * include/grub/autoefi.h (grub_autoefi_finish_boot_services): - New definition. - * include/grub/dl.h (grub_dl_unload_all): Removed. - * include/grub/efi/efi.h (grub_efi_exit_boot_services): Likewise. - (grub_efi_finish_boot_services): Change prototype. - (grub_efi_is_finished): New variable. - * include/grub/efiemu/efiemu.h (grub_efiemu_finish_boot_services): - Changed prototype. - (grub_efiemu_finish_boot_services): Removed. - (grub_machine_efiemu_init_tables): New prototype. - * include/grub/elfload.h (grub_elf32_phdr_iterate): Likewise. - (grub_elf64_phdr_iterate): Likewise. - * include/grub/i386/bsd.h: Include relocator.h. - (freebsd_tag_header): New struct. - (grub_openbsd_bios_mmap): Removed. - (grub_unix_real_boot): Removed. - (grub_freebsd_load_elfmodule32): Changed prototype. - (grub_freebsd_load_elfmodule_obj64): Likewise. - (grub_freebsd_load_elf_meta32): Likewise. - (grub_freebsd_load_elf_meta64): Likewise. - (grub_freebsd_add_meta): Removed. - (grub_netbsd_load_elf_meta32): New prototype. - (grub_netbsd_load_elf_meta64): Likewise. - (grub_bsd_add_meta): Likewise. - (grub_openbsd_ramdisk_descriptor): New struct. - (grub_openbsd_find_ramdisk32): New prototype. - (grub_openbsd_find_ramdisk64): Likewise. - * include/grub/i386/coreboot/loader.h: Removed. - * include/grub/i386/efi/loader.h: Likewise. - * include/grub/i386/ieee1275/loader.h: Likewise. - * include/grub/i386/linux.h (linux_kernel_header): Change void * - to grub_uint32_t. - * include/grub/i386/loader.h: Removed. - * include/grub/i386/memory.h (GRUB_MEMORY_CPU_CR4_PAE_ON): Correct the - value. - (GRUB_MEMORY_CPU_CR4_PSE_ON): New definition. - (grub_phys_addr_t): New type. - (grub_vtop): New inline function. - (grub_map_memory): Likewise. - (grub_unmap_memory): Likewise. - * include/grub/i386/multiboot/loader.h: Removed. - * include/grub/i386/netbsd_bootinfo.h (NETBSD_BTINFO_BOOTDISK): Removed. - (NETBSD_BTINFO_CONSOLE): New definition. - (NETBSD_BTINFO_SYMTAB): Likewise. - (NETBSD_BTINFO_MODULES): Likewise. - (NETBSD_BTINFO_FRAMEBUF): Likewise. - (grub_netbsd_bootinfo): New struct. - (grub_netbsd_btinfo_common): Use explicit bitsize. - (grub_netbsd_btinfo_mmap_entry): Removed. - (GRUB_NETBSD_MAX_BOOTPATH_LEN): New definition. - (grub_netbsd_btinfo_bootdisk): New struct. - (grub_netbsd_btinfo_symtab): Likewise. - (grub_netbsd_btinfo_serial): Likewise. - (grub_netbsd_btinfo_modules): Likewise. - (grub_netbsd_btinfo_framebuf): Likewise. - (GRUB_NETBSD_MAX_ROOTDEVICE_LEN): New definition. - * include/grub/i386/openbsd_bootarg.h (OPENBSD_BOOTARG_CONSOLE): - Likewise. - (grub_openbsd_bootargs): Use explicit bitsize. - (grub_openbsd_bootarg_console): New struct. - (GRUB_OPENBSD_COM_MAJOR): New definition. - (GRUB_OPENBSD_VGA_MAJOR): Likewise. - * include/grub/i386/pc/efiemu.h: Removed. - * include/grub/i386/pc/loader.h: Don't include cpu/loader.h. - * include/grub/i386/qemu/loader.h: Removed. - * include/grub/i386/relocator.h: Rewritten. - * include/grub/i386/xnu.h (grub_xnu_heap_will_be_at): Removed. - * include/grub/mips/memory.h: New file. - * include/grub/mips/multiboot.h: Rewritten. - * include/grub/mips/relocator.h: Rewritten. - * include/grub/mips/yeeloong/memory.h (grub_phys_addr_t): New type. - (grub_vtop): New function. - (grub_map_memory): Likewise. - (grub_unmap_memory): Likewise. - * include/grub/misc.h (ALIGN_DOWN): New definition. - * include/grub/mm.h (grub_mm_check_real): New proto. - (GRUB_MM_CHECK): New definition. - * include/grub/mm_private.h: New file. - * include/grub/multiboot.h (grub_multiboot_relocator): New variable. - (grub_multiboot_get_mbi_size): Removed. - (grub_multiboot_make_mbi): Change prottype. - (grub_multiboot_set_accepts_video): New proto. - (grub_multiboot_add_elfsyms): Likewise. - (grub_multiboot_payload_eip): New variable. - * include/grub/ns8250.h (grub_ns8250_hw_get_port) [!ASM_FILE]: - New prototype. - * include/grub/offsets.h (GRUB_KERNEL_I386_MULTIBOOT_PREFIX): - New definition. - (GRUB_KERNEL_I386_MULTIBOOT_DATA_END): Likewise. - (GRUB_KERNEL_I386_MULTIBOOT_MOD_ALIGN): Likewise. - * include/grub/powerpc/ieee1275/loader.h: Removed. - * include/grub/powerpc/memory.h: New file. - * include/grub/powerpc/relocator.h: Likewise. - * include/grub/relocator.h: Likewise. - * include/grub/relocator_private.h: Likewise. - * include/grub/sparc64/ieee1275/loader.h: Removed. - * include/grub/x86_64/memory.h: New file. - * include/grub/xnu.h (grub_xnu_writetree_toheap): Changed prototype. - (grub_xnu_heap_malloc): Likewise. - (grub_xnu_heap_real_start): Removed. - (grub_xnu_heap_start): Likewise. - (grub_xnu_relocator): New variable. - (grub_xnu_heap_target_start): Likewise. - * tests/util/grub-shell.in: Support non-pc. - * util/grub-mkimage.c (image_targets): Fix multiboot target. - -2010-08-29 Vladimir Serbinenko - - * grub-core/normal/charset.c (grub_utf8_to_ucs4_alloc): Avoid deadloop - on malloc error. - (grub_bidi_logical_to_visual): Check that malloc succeded. - * grub-core/normal/term.c (grub_puts_terminal): Fix fallback to dumb - puts. - (grub_xputs_normal): Likewise. - -2010-08-29 Vladimir Serbinenko - - * grub-core/Makefile.core.def (kernel): Add kern/mips/cache_flush.S to - extra_dist. - -2010-08-29 Vladimir Serbinenko - - * grub-core/efiemu/runtime/efiemu.sh: Removed. - -2010-08-29 Vladimir Serbinenko - - * Makefile.util.def (grub-ofpathname): Add missing ldadd. - -2010-08-29 Vladimir Serbinenko - - * grub-core/kern/misc.c (grub_real_dprintf): Always refresh after - dprintf. - -2010-08-29 BVK Chaitanya - - * Makefile.util.def: Use ldadd instead of ldflags for libraries. - -2010-08-28 Vladimir Serbinenko - - * grub-core/normal/term.c (print_more): Fix a memory leak. - (grub_puts_terminal): Revert to dumb puts if memory allocation fails. - (grub_xputs_normal): Likewise. - -2010-08-28 Vladimir Serbinenko - - * grub-core/script/lexer.c (grub_script_lexer_init): Don't look before - the begining of the string - -2010-08-28 Vladimir Serbinenko - - * grub-core/script/script.c (grub_script_parse): Free parsed on - failure. - -2010-08-28 Vladimir Serbinenko - - * grub-core/normal/completion.c (grub_normal_do_completion): Free argv - on failure. - -2010-08-28 Vladimir Serbinenko - - * grub-core/normal/cmdline.c (grub_cmdline_get): Free cl_terms on - return. - -2010-08-28 Vladimir Serbinenko - - * grub-core/term/gfxterm.c (grub_gfxterm_term_fini): Free the text buffer. - (scroll_up): Fix a memory leak. - -2010-08-28 Vladimir Serbinenko - - * grub-core/fs/nilfs2.c (grub_nilfs2_load_sb): Handle grub_disk_read - errors. - -2010-08-27 Vladimir Serbinenko - - Handle USB pendrives exposed as floppies. - - * grub-core/boot/i386/pc/boot.S: Check LBA even on what appears to be - floppy. - * grub-core/disk/i386/pc/biosdisk.c (grub_biosdisk_open): Likewise. - Check for partitions on all devices. - -2010-08-25 Vladimir Serbinenko - - * grub-core/term/ieee1275/ofconsole.c (put): Correct prototype. - (readkey): Likewise. - -2010-08-25 BVK Chaitanya - - Multiple variable names support to "export" command. - - * normal/context.c (grub_cmd_export): "export" command supports - multiple variable names. - -2010-08-23 Samuel Thibault - - * util/grub.d/30_os-prober.in: Fix conversion from grub-probe - --target=drive output to Mach device name. - -2010-08-23 BVK Chaitanya - - New Automake based build system for GRUB. - - * ABOUT-NLS: New file. - * Makefile.am: New file. GRUB host utils' rules that doesn't fit - in Makefile.util.def file. - * Makefile.util.def: New file. Autogen build definitions file for - GRUB host utils. - * conf/Makefile.common: New file. Common variables for GRUB host - utils and target modules. - * conf/Makefile.extra-dist: New file. Extra files for make dist. - * docs/Makefile.am: New file. Automake file for docs. - * gentpl.py: New file. Python script to generate Autogen - template. - * grub-core/Makefile.am: New file. GRUB target modules' rules - that doesn't fit in Makefile.core.def file. - * grub-core/Makefile.core.def: New file. Autogen build - definitions file for GRUB target modules. - * grub-core/lib/setjmp.S: New file. Wrapper for target_cpu - specific setjmp.S file. - * po/Makefile.am: New file. - - * .bzrignore: New ignores. - * INSTALL: New requirements, without Ruby. - * acinclude.m4: Use TARGET_IMG_BASE_LDOPT variable instead. - * autogen.sh: Updated to invoke autogen as necessary. - * configure.ac: Separate *FLAGS with HOST_ and TARGET_ prefixes, - and defines for Automake conditionals. - * geninit.sh: Refactoring. - - * include/grub/dl.h: Allow build rules to define GRUB_MOD_* if - necessary. - * include/grub/emu/getroot.h (grub_make_system_path_relative_to_its_root): - New prototype. - - * include/grub/test.h: Fix functional test modules' naming. - * grub-core/tests/example_functional_test.c: Fix test module name. - - * util/misc.c: Hosted versions' of grub functions for libgrub.a - * tests/lib/unit_test.c: Remove hosted versions of grub functions. - * util/grub-editenv.c: Likewise. - * util/grub-fstest.c: Likewise. - * util/grub-mkdevicemap.c: Likewise. - * util/grub-mkfont.c: Likewise. - * util/grub-mkimage.c: Likewise. - * util/grub-mkpasswd-pbkdf2.c: Likewise. - * util/grub-probe.c: Likewise. - * util/grub-script-check.c: Likewise. - * util/i386/pc/grub-setup.c: Likewise. - * util/sparc64/ieee1275/grub-setup.c: Likewise. - - * tests/util/grub-shell.in: Fix override directory path. - * util/grub-mkrescue.in: Replace @pkglib_DATA@ with files. - * util/import_gcry.py: Create Makefile.gcry.def file instead. - - * util/lvm.c: Update #includes. - * util/raid.c: Likewise. - * util/resolve.c: Likewise. - * grub-core/bus/emu/pci.c: Likewise. - * grub-core/lib/posix_wrap/stdlib.h: Likewise. - * grub-core/lib/posix_wrap/string.h: Likewise. - * grub-core/kern/emu/main.c: Likewise. - - * grub-core/gensymlist.sh: New file. Script for generating kernel - symbols file. - * grub-core/genmoddep.awk: Support new kernel_syms.lst format. - - * grub-core/gentrigtables.c: Fix unused variable warnings. - - * Makefile.in: Removed. - * conf/any-emu.rmk: Removed. - * conf/common.rmk: Removed. - * conf/i386-coreboot.rmk: Removed. - * conf/i386-efi.rmk: Removed. - * conf/i386-ieee1275.rmk: Removed. - * conf/i386-multiboot.rmk: Removed. - * conf/i386-pc.rmk: Removed. - * conf/i386-qemu.rmk: Removed. - * conf/i386.rmk: Removed. - * conf/mips-yeeloong.rmk: Removed. - * conf/mips.rmk: Removed. - * conf/powerpc-ieee1275.rmk: Removed. - * conf/sparc64-ieee1275.rmk: Removed. - * conf/tests.rmk: Removed. - * conf/x86-efi.rmk: Removed. - * conf/x86_64-efi.rmk: Removed. - * gendistlist.sh: Removed. - * geninitheader.sh: Removed. - * genkernsyms.sh.in: Removed. - * genmk.rb: Removed. - * gensymlist.sh.in: Removed. - * mkinstalldirs: Removed. - * boot: Moved ... - * grub-core/boot: ... to here. - * bus: Moved ... - * grub-core/bus: ... to here. - * commands: Moved ... - * grub-core/commands: ... to here. - * disk: Moved ... - * grub-core/disk: ... to here. - * efiemu: Moved ... - * grub-core/efiemu: ... to here. - * font: Moved ... - * grub-core/font: ... to here. - * fs: Moved ... - * grub-core/fs: ... to here. - * gencmdlist.sh: Moved ... - * grub-core/gencmdlist.sh: ... to here. - * genemuinit.sh: Moved ... - * grub-core/genemuinit.sh: ... to here. - * genemuinitheader.sh: Moved ... - * grub-core/genemuinitheader.sh: ... to here. - * genfslist.sh: Moved ... - * grub-core/genfslist.sh: ... to here. - * genhandlerlist.sh: Moved ... - * grub-core/genhandlerlist.sh: ... to here. - * genmoddep.awk: Moved ... - * grub-core/genmoddep.awk: ... to here. - * genmodsrc.sh: Moved ... - * grub-core/genmodsrc.sh: ... to here. - * genpartmaplist.sh: Moved ... - * grub-core/genpartmaplist.sh: ... to here. - * genparttoollist.sh: Moved ... - * grub-core/genparttoollist.sh: ... to here. - * genterminallist.sh: Moved ... - * grub-core/genterminallist.sh: ... to here. - * gentrigtables.c: Moved ... - * grub-core/gentrigtables.c: ... to here. - * genvideolist.sh: Moved ... - * grub-core/genvideolist.sh: ... to here. - * gettext: Moved ... - * grub-core/gettext: ... to here. - * gfxmenu: Moved ... - * grub-core/gfxmenu: ... to here. - * gnulib: Moved ... - * grub-core/gnulib: ... to here. - * hello: Moved ... - * grub-core/hello: ... to here. - * hook: Moved ... - * grub-core/hook: ... to here. - * io: Moved ... - * grub-core/io: ... to here. - * kern: Moved ... - * grub-core/kern: ... to here. - * lib: Moved ... - * grub-core/lib: ... to here. - * loader: Moved ... - * grub-core/loader: ... to here. - * mmap: Moved ... - * grub-core/mmap: ... to here. - * normal: Moved ... - * grub-core/normal: ... to here. - * partmap: Moved ... - * grub-core/partmap: ... to here. - * parttool: Moved ... - * grub-core/parttool: ... to here. - * script: Moved ... - * grub-core/script: ... to here. - * term: Moved ... - * grub-core/term: ... to here - * tests/example_functional_test.c: Moved ... - * grub-core/tests/example_functional_test.c: ... to here. - * tests/lib/functional_test.c: Moved ... - * grub-core/tests/lib/functional_test.c: ... to here. - * tests/lib/test.c: Moved ... - * grub-core/tests/lib/test.c: ... to here. - * video: Moved ... - * grub-core/video: ... to here. - -2010-08-23 BVK Chaitanya - - Replace --enable-grub-emu-modules with grub-emu-lite. - - * kern/emu/cache.S: New file. Wrapper for $target_cpu specific - cache.S. - - * include/grub/emu/misc.h (grub_emu_init): New prototype. - * kern/emu/full.c: New file. For grub-emu specific initialization. - * kern/emu/lite.c: New file. For grub-emu-lite initialization. - * kern/emu/main.c: Call initialization function grub_emu_init. - - * Makefile.in: Include grub-emu-lite in install. - * commands/parttool.c: Use grub_no_autoload to differentiate - between grub-emu and grub-emu-lite. - * include/grub/misc.h: New variable grub_no_autoload. - - * conf/any-emu.rmk: New rules for grub-emu-lite. - * configure.ac: Remove --enable-grub-emu-modules. - * genmk.rb: Cleanup unnecessary rules. - * include/grub/dl.h: Remove GRUB_NO_MODULES macro. - - * normal/main.c: Don't load list files on grub-emu-lite. - * util/misc.c (grub_arch_sync_caches): Removed. - -2010-08-23 Colin Watson - - * kern/mips/startup.S (grub_prefix): Update comment to refer to - grub-mkimage rather than grub-mkelfimage. - * kern/powerpc/ieee1275/startup.S (grub_prefix): Likewise. - -2010-08-22 Vladimir Serbinenko - - * term/at_keyboard.c (grub_at_keyboard_getkey_noblock): Don't discard - a key after CapsLock or NumLock. It's just a qemu bug. - -2010-08-21 Vladimir Serbinenko - - * include/grub/usb.h (grub_usb_device): Add 'data' field back. It's - needed by libusb wrapper. - -2010-08-21 Samuel Thibault - - * docs/grub.texi (GNU/Hurd): Document booting GNU/Hurd. - -2010-08-21 Vladimir Serbinenko - - * loader/multiboot.c (grub_cmd_module): Don't unzip module if - --nounzip is passed. - -2010-08-20 Vladimir Serbinenko - - USB hotunplugging and USB serial support. - - * bus/usb/ohci.c (grub_ohci_transfer): Fill *actual and respect timeout. - * bus/usb/uhci.c (grub_free_queue): Compute *actual. - (grub_uhci_transfer): Respect timeout and set *actual. - * bus/usb/usb.c (grub_usb_device_initialize): Correctly skip fields of - non-standard length. - (grub_usb_device_attach): Autoload modules. - (GRUB_MOD_INIT): Set grub_term_poll_usb. - (GRUB_MOD_FINI): Unset grub_term_poll_usb. - * bus/usb/usbhub.c (grub_usb_hub): Replace speed with devices. All - users updated. - (grub_usb_add_hub): Fill nports and children. - (attach_root_port): Receive hub instead of controller. - All users updated. Fill hub->devices. - (grub_usb_root_hub): Allocate hub->devices. - (detach_device): New function. - (poll_nonroot_hub): Fill children and detach devices. - * bus/usb/usbtrans.c (grub_usb_bulk_readwrite): Accept timeout and - actual arguments. All users updated. - (grub_usb_bulk_read_extended): New function. - * bus/usb/serial/common.c: New file. - * bus/usb/serial/ftdi.c: Likewise. - * bus/usb/serial/pl2303.c: Likewise. - * commands/terminal.c (handle_command): Support wildcard. - * commands/usbtest.c: Output "Unknown" instead of empty string. - * conf/any-emu.rmk (pkglib_MODULES): Add usbserial_common.mod. - (usbserial_common_mod_SOURCES): New variable. - (usbserial_common_mod_CFLAGS): Likewise. - (usbserial_common_mod_LDFLAGS): Likewise. - (pkglib_MODULES): Add usbserial_pl2303.mod. - (usbserial_pl2303_mod_SOURCES): New variable. - (usbserial_pl2303_mod_CFLAGS): Likewise. - (usbserial_pl2303_mod_LDFLAGS): Likewise. - (pkglib_MODULES): Add usbserial_ftdi.mod. - (usbserial_ftdi_mod_SOURCES): New variable. - (usbserial_ftdi_mod_CFLAGS): Likewise. - (usbserial_ftdi_mod_LDFLAGS): Likewise. - (pkglib_MODULES): Add serial.mod. - (serial_mod_SOURCES): New variable. - (serial_mod_CFLAGS): Likewise. - (serial_mod_LDFLAGS): Likewise. - * conf/i386-pc.rmk: Likewise. - * conf/mips-yeeloong.rmk: Likewise. - * conf/i386.rmk (serial_mod_SOURCES): Add term/ns8250.c. - * conf/mips-yeeloong.rmk (kernel_img_SOURCES): Likewise. - * disk/usbms.c (first_available_slot): New variable. - (grub_usbms_attach): Don't reuse free slots due to potential cache - problems. - * include/grub/serial.h: Moved to .. - * include/grub/ns8250.h: ...this. - * include/grub/serial.h: New file. - * include/grub/term.h (grub_term_poll_usb): New variable. - * include/grub/terminfo.h (grub_terminfo_input_state): Pass term to - readkey. All users updated. - (grub_terminfo_output_state): Pass term to put. - * include/grub/usb.h (GRUB_USB_REQTYPE): New enum. - (grub_usb_controller_dev): Add timeout and actual arguments to - transfer. All users updated. - (grub_usb_interface): New field detach_data. - (grub_usb_device): New fields children and nports. - (grub_usb_ep_type_t): New type. - (grub_usb_get_ep_type): New function. - (grub_usb_bulk_read_extended): Likewise. - * include/grub/usbdesc.h (grub_usb_desc): New type. - * include/grub/usbserial.h: New file. - * include/grub/usbtrans.h (grub_usb_transaction): New field preceding. - * kern/term.c (grub_term_poll_usb): New variable. - (grub_getkey): Call grub_term_poll_usb if set. - (grub_checkkey): Likewise. - (grub_getkeystatus): Likewise. - * term/serial.c: Moved controller-specific parts to ... - * term/ns8250.c: ... here. - * term/serial.c: Mostly rewritten. - * term/usb_keyboard.c: Reorganised to use GET_REPORT only on attaching - according to spec. - -2010-08-20 Robert Millan - - Make kFreeBSD code more generic to support ext2fs as root, ufs as - a separate module and maybe other interesting combinations. - - * util/grub.d/10_kfreebsd.in (load_kfreebsd_module): New function. - (kfreebsd_entry): Use load_kfreebsd_module() to load modules. - (kfreebsd_entry): Add generic filesystem module load routine. - Map GRUB `ext2' to kFreeBSD `ext2fs'. - -2010-08-20 Colin Watson - - * commands/i386/pc/sendkey.c (keysym_table): Rename "numlock" to - "numcenter" (I misunderstood the purpose of this entry). - * docs/grub.texi (sendkey): Likewise. - -2010-08-20 Colin Watson - - * commands/i386/pc/sendkey.c (options): Remove "keep" from all - status flag options; simply omitting the option is equivalent and - simpler. Rename "wait" to "pause". Rename "sysreq" to "sysrq". - (keysym_table): Rename "num5numlock" to "numlock". - (grub_cmd_sendkey): Reinitialise `andmask' and `ormask', so that we - can uniformly say that only the last of multiple `sendkey' - invocations has any effect. - * docs/grub.texi (sendkey): New section. - -2010-08-19 Colin Watson - - * commands/i386/pc/sendkey.c (options): Fix three typos. - -2010-08-19 Vladimir Serbinenko - - Implement sendkey support. - - * commands/i386/pc/sendkey.c: New file. - * conf/i386-pc.rmk (pkglib_MODULES): Add sendkey.mod. - (sendkey_mod_SOURCES): New variable. - (sendkey_mod_CFLAGS): Likewise. - (sendkey_mod_LDFLAGS): Likewise. - -2010-08-18 Colin Watson - - * configure.ac: Move AM_INIT_AUTOMAKE after AC_CANONICAL_TARGET to - fix warnings from Autoconf. - -2010-08-18 Colin Watson - - * acinclude.m4 (grub_ASM_USCORE): Use a more accurate grep pattern, - to avoid false positives with some assemblers that output things - like "someprefix_func" as part of their output. - -2010-08-15 Robert Millan - - * kern/emu/misc.c (grub_get_libzfs_handle): Handle libzfs_init() - errors. - * kern/emu/getroot.c (find_root_device_from_libzfs): Handle - grub_get_libzfs_handle() errors. - -2010-08-14 Robert Millan - - * kern/emu/misc.c (grub_find_zpool_from_dir): Abort function if - filesystem is not ZFS. - -2010-08-12 BVK Chaitanya - - Fix for misspelled color names defaulting to black/black (bug - reported by Doug Nazar) - - * include/grub/normal.h (grub_parse_color_name_pair): Add return - status to prototype. - * normal/color.c (grub_parse_color_name_pair): Return failure - status. - (grub_env_write_color_normal): Ignore bad color names. - (grub_env_write_color_highlight): Likewise. - * normal/main.c (GRUB_MOD_INIT): Set default color names. - -2010-08-12 BVK Chaitanya - - "shift" command support to GRUB script. - - * include/grub/script_sh.h (grub_script_shift): New prototype. - * script/execute.c (grub_script_shift): New function. - * script/main.c (grub_script_init): Register shift command. - (grub_script_fini): Unregister shift command. - * util/grub-script-check.c (grub_script_cmd_shift): New function. - - * tests/grub_script_shift.in: New testcase. - * conf/tests.rmk: Rules for new testcase. - -2010-08-12 BVK Chaitanya - - "continue" command support to GRUB script. - - * script/execute.c (grub_script_execute_cmdwhile): Continue support. - (grub_script_break): Continue support. - * script/main.c (grub_script_init): Register continue command. - (grub_script_fini): Unregister continue command. - - * tests/grub_script_continue.in: New testcase. - * conf/tests.rmk: Rules for new testcase. - -2010-08-12 BVK Chaitanya - - "break" command support to GRUB script. - - * conf/common.rmk: Rule updates to grub-script-check. - * include/grub/misc.h (grub_min): New function. - * include/grub/script_sh.h (grub_script_init): New prototype. - (grub_script_fini): New prototype. - (grub_script_break): New prototype. - * script/main.c (grub_script_init): New function. - (grub_script_fini): New function. - * script/execute.c (grub_script_break): New function. - * normal/main.c: Calls to grub_script_{init,fini}. - * util/grub-script-check.c (grub_script_break): New function. - - * tests/grub_script_break.in: New testcase. - * conf/tests.rmk: Rules for new test case. - -2010-08-12 BVK Chaitanya - - Function parameters support to GRUB script. - - * script/yylex.l (VARIABLE): Regular expression update. - * script/function.c (grub_script_function_call): Moved ... - * script/execute.c (grub_script_function_call): ... to here. - (grub_script_execute_arglist_to_argv): Removed. - (grub_script_arglist_to_argv): New function. - * script/argv.c: New file. - (grub_script_argv_free): New function. - (grub_script_argv_next): Likewise. - (grub_script_argv_append): Likewise. - (grub_script_argv_split_append): Likewise. - * include/grub/script_sh.h (grub_script_argv): New struct. - (grub_script_argv_free): New function. - (grub_script_argv_next): Likewise. - (grub_script_argv_append): Likewise. - (grub_script_argv_split_append): Likewise. - - * conf/common.rmk (normal.mod): New source script/argv.c. - - * tests/grub_script_echo1.in: More tests. - * tests/grub_script_vars1.in: Likewise. - * tests/grub_script_functions.in: New test case. - * conf/tests.rmk: Rules for new testcase. - -2010-08-12 BVK Chaitanya - - Remove grub_script_cmdblock struct. - - * include/grub/script_sh.h: Remove grub_script_cmdblock. - * script/parser.y: Likewise. - * script/execute.c: Rename cmdblock suffix to cmdlist. - * script/script.c: Likewise. - * util/grub-script-check.c: Likewise. - -2010-08-11 Yves Blusseau - - * .bzrignore: add grub-macho2img - -2010-08-11 Vladimir Serbinenko - - * kern/i386/qemu/init.c (grub_qemu_init_cirrus): Fix compilation error. - -2010-08-11 Vladimir Serbinenko - - Remove the dump of sm712 initialisation sequence. - - * include/grub/pci.h (GRUB_PCI_CLASS_SUBCLASS_VGA): New const. - * include/grub/vga.h (GRUB_VGA_IO_ARX_READ): New register. - (GRUB_VGA_IO_MISC_WRITE): Likewise. - (GRUB_VGA_CR_*): Added many registers. - (GRUB_VGA_SR_*): Likewise. - (GRUB_VGA_GR_*): Likewise. - (grub_vga_write_arx): New function. - (grub_video_hw_config): New struct. - (grub_vga_set_geometry): New function. - * kern/i386/qemu/init.c (load_palette): Use grub_vga_write_arx and - GRUB_PCI_CLASS_SUBCLASS_VGA. - * video/cirrus.c (grub_video_cirrus_setup): Use grub_vga_set_geometry. - * video/sm712.c (grub_sm712_write_reg): New function - (grub_sm712_read_reg): Likewise. - (grub_sm712_sr_write): Likewise. - (grub_sm712_gr_write): Likewise. - (grub_sm712_cr_write): Likewise. - (grub_sm712_write_arx): Likewise. - (grub_sm712_cr_shadow_write): Likewise. - (grub_sm712_write_dda_lookup): Likewise. - (grub_video_sm712_setup): Initialise the video rather then - blindly replay the dump. - (main) [TEST]: Add a routine to be able to compile as standalone for - tests. - * video/sm712_init.c (sm712_init): Removed. - (sm712_sr_seq1): New array. - (sm712_sr_seq2): Likewise. - -2010-08-10 Vladimir Serbinenko - - * include/grub/vga.h: Add missing grub/pci.h include. - -2010-08-10 Yves Blusseau - - * util/grub-macho2img.c (main): fix typo - -2010-08-10 Vladimir Serbinenko - - * include/grub/vga.h (grub_vga_gr_write): Add GRUB_MACHINE_PCI_IO_BASE. - (grub_vga_gr_read): Likewise. - (grub_vga_cr_write): Likewise. - (grub_vga_cr_read): Likewise. - (grub_vga_sr_write): Likewise. - (grub_vga_sr_read): Likewise. - (grub_vga_palette_read): Likewise. - (grub_vga_palette_write): Likewise. - * video/sm712.c (GRUB_SM712_REG_BASE): New definition. - (grub_sm712_sr_read): New function. - (grub_video_sm712_setup): Use grub_vga_sr_write and grub_sm712_sr_read. - * video/sm712_init.c (sm712_init): Substract GRUB_MACHINE_PCI_IO_BASE. - -2010-08-09 Robert Millan - - * kern/emu/misc.c (grub_make_system_path_relative_to_its_root): Filter - out unused variables on non-ZFS build. - -2010-08-08 Robert Millan - - Fix path generation for sub-filesystems in ZFS. - - * kern/emu/misc.c (grub_make_system_path_relative_to_its_root): Add - missing slash. - -2010-08-08 Robert Millan - - * util/grub-fstest.c (read_file, cmd_cmp): Improve error message. - -2010-08-08 Robert Millan - - * util/grub.d/10_kfreebsd.in: When files required for ZFS do not - exist, issue a proper error message (rely on `ls' for translated - strings). - -2010-08-08 Robert Millan - - Fix grub-probe invocation. - - * util/grub.d/10_kfreebsd.in: s/label/fs_label/g. - -2010-08-04 Robert Millan - - * configure.ac: Remove checks for getfsstat() and getmntany(). - Add checks for `' and `'. - * kern/emu/misc.c [HAVE_GETMNTANY]: Remove `'. - [HAVE_SYS_PARAM_H]: Include `'. - [HAVE_SYS_MOUNT_H]: Include `'. - [HAVE_LIBZFS && HAVE_LIBNVPAIR] (find_mount_point_from_dir): Remove - function. - (grub_find_zpool_from_dir): Use statfs() instead of indirect matching - via find_mount_point_from_dir() and getfsstat() / getmntany(). - -2010-08-04 Robert Millan - - * include/grub/emu/misc.h (grub_find_mount_point_from_dir) - (grub_find_zpool_from_mount_point): Merge into ... - (grub_find_zpool_from_dir): ... this. - * kern/emu/misc.c: Likewise. - - * kern/emu/misc.c - (grub_make_system_path_relative_to_its_root): Replace - grub_find_mount_point_from_dir() / grub_find_zpool_from_mount_point() - with grub_find_zpool_from_dir(). - * kern/emu/getroot.c (find_root_device_from_libzfs): Likewise. - -2010-08-04 Robert Millan - - Support OpenSolaris in ZFS device resolution. - - * configure.ac: Check for getmntany(). - * kern/emu/misc.c [HAVE_GETMNTANY]: Include `'. - [HAVE_GETMNTANY] (grub_find_zpool_from_mount_point): Add OpenSolaris - support. - -2010-08-03 Robert Millan - - Fix grub-emu build. - - * include/grub/util/misc.h: Move `' to ... - * include/grub/emu/misc.h: ... here. - - * include/grub/util/misc.h (grub_get_libzfs_handle): Move function ... - * include/grub/emu/misc.h (grub_get_libzfs_handle): ... here. - - * util/misc.c: Remove `'. - [HAVE_LIBZFS] (libzfs_handle, fini_libzfs) - (grub_get_libzfs_handle): Move to ... - * kern/emu/misc.c [HAVE_LIBZFS] (__libzfs_handle, fini_libzfs) - (grub_get_libzfs_handle): ... here. - -2010-08-03 BVK Chaitanya - - * script/execute.c (grub_script_execute_cmdline): Check for NULL - as command name case. - -2010-08-02 Colin Watson - - * disk/raid.c (insert_array): Select unique numbers for named arrays - as well, for use as keys in the disk cache. - -2010-08-01 Robert Millan - - * util/grub.d/10_kfreebsd.in: Initialize ${kfreebsd_device} as the - kFreeBSD device name, except on ZFS where the filesystem label is - used. - (kfreebsd_entry): On ZFS root, load `opensolaris.ko', `zfs.ko' and - `/boot/zfs/zpool.cache'. - Set mountfrom kernel variable using ${kfreebsd_device}. - -2010-08-01 Robert Millan - - Make it even harder to use uninitialized `libzfs_handle' (and - make the interface a bit simpler). - - * include/grub/util/misc.h (grub_util_init_libzfs) - (libzfs_handle): Remove. - (grub_get_libzfs_handle): New prototype. - - * util/misc.c [HAVE_LIBZFS] (libzfs_handle): Add `static' - attribute. - (grub_util_init_libzfs): Remove. - (grub_get_libzfs_handle): New function. - - * kern/emu/getroot.c (find_root_device_from_libzfs): Use - grub_get_libzfs_handle() to obtain a libzfs handle instead of - accessing `libzfs_handle' directly. - -2010-08-01 Robert Millan - - * include/grub/emu/misc.h (grub_find_mount_point_from_dir) - (grub_find_zpool_from_mount_point): New function prototypes. - - * kern/emu/getroot.c [HAVE_GETFSSTAT]: Move `' to ... - * kern/emu/misc.c [HAVE_GETFSSTAT]: ... here. - - * kern/emu/getroot.c (find_mount_point_from_dir): Move to ... - * kern/emu/misc.c (grub_find_mount_point_from_dir): ... this. Remove - `static' attribute. - - * kern/emu/getroot.c (find_root_device_from_libzfs): Split code for - finding zpool from mount point into ... - * kern/emu/misc.c (grub_find_zpool_from_mount_point): ... this. - - * kern/emu/misc.c (grub_make_system_path_relative_to_its_root): When - requested path is part of a ZFS pool, use - grub_find_zpool_from_mount_point() to detect its filesystem name, - and generate a path with `/fsname@path' syntax. - -2010-08-01 Colin Watson - - * include/grub/util/libzfs.h (libzfs_init): Set argument list to - (void) rather than () so that this is a proper prototype. - -2010-08-01 Vladimir Serbinenko - - * lib/arg.c (grub_arg_show_help): Add the necessary spacing. - -2010-08-01 Vladimir Serbinenko - - * kern/emu/getroot.c (find_mount_point_from_dir): Compile only if - [HAVE_LIBZFS && HAVE_LIBNVPAIR] - -2010-08-01 Colin Watson - - * util/grub-mkrescue.in: Remove ${efi_dir} after building efi.img. - -2010-08-01 Colin Watson - - * script/yylex.l (NAME): Remove [:digit:], redundant with [:alnum:]. - -2010-08-01 Colin Watson - - * docs/grub.texi (Simple configuration): Document GRUB_CMDLINE_XEN - and GRUB_CMDLINE_XEN_DEFAULT. Recommend setting - GRUB_GFXPAYLOAD_LINUX=text rather than unsetting it in order to - disable gfxpayload. - (Shell-like scripting): Add real content. - (Serial terminal): Suggest `terminal_input serial; terminal_output - serial' rather than putting the two commands on separate lines, - since console input will be inoperative after the first command. - (menuentry): Document --class, --users, and --hotkey options. - (terminfo): Describe what `visually-ordered UTF-8' means (thanks, - Vladimir Serbinenko). - -2010-08-01 Vladimir Serbinenko -2010-08-01 Colin Watson - - * kern/misc.c (grub_memset): Optimise to reduce cache stalls. - -2010-08-01 Robert Millan - - * include/grub/emu/misc.h (grub_find_mount_point_from_dir) - (grub_find_zpool_from_mount_point): New function prototypes. - - * kern/emu/getroot.c [HAVE_GETFSSTAT]: Move `' to ... - * kern/emu/misc.c [HAVE_GETFSSTAT]: ... here. - - * kern/emu/getroot.c (find_mount_point_from_dir): Move to ... - * kern/emu/misc.c (grub_find_mount_point_from_dir): ... this. Remove - `static' attribute. - - * kern/emu/getroot.c (find_root_device_from_libzfs): Split code for - finding zpool from mount point into ... - * kern/emu/misc.c (grub_find_zpool_from_mount_point): ... this. - - * kern/emu/misc.c (grub_make_system_path_relative_to_its_root): When - requested path is part of a ZFS pool, use - grub_find_zpool_from_mount_point() to detect its filesystem name, - and generate a path with `/fsname@path' syntax. - -2010-08-01 Robert Millan - - Prevent accidental use of uninitialized libzfs_handle. - - * util/grub-probe.c (main): Move grub_util_init_libzfs() call to ... - * kern/emu/getroot.c (find_root_device_from_libzfs): ... here. - * util/misc.c (grub_util_init_libzfs): Make this function idempotent. - -2010-08-01 Colin Watson - - * util/grub.d/20_linux_xen.in: Don't use UUID for LVM root (matching - util/grub.d/10_linux.in). Fixes Debian bug #591093. - -2010-08-01 Robert Millan - - * kern/emu/getroot.c: Include `'. - -2010-07-31 Robert Millan - - * util/grub.d/10_kfreebsd.in: Make module handling more generic. - -2010-07-31 Robert Millan - - * kern/emu/misc.c: Add missing license header. - -2010-07-31 Robert Millan - - * configure.ac: Check for `libzfs.h' and `libnvpair.h'. - - * include/grub/util/libnvpair.h: Include `'. - [HAVE_LIBNVPAIR_H]: Include `' instead of - declaring libnvpair prototypes ourselves. - * include/grub/util/libzfs.h: Include `'. - [HAVE_LIBZFS_H]: Include `' instead of - declaring libzfs prototypes ourselves. - - (libzfs_handle): Moved to ... - * include/grub/util/misc.h (libzfs_handle): ... here. - Include `'. - -2010-07-30 Robert Millan - - * include/grub/emu/misc.h: Add missing license header. - -2010-07-30 Robert Millan - - Enable `grub-probe -t device' resolution on ZFS. - - * configure.ac: Check for getfsstat(), libzfs and libnvpair. - * include/grub/util/libnvpair.h: New file. - * include/grub/util/libzfs.h: New file. - - * kern/emu/getroot.c: Include `' and `'. - [HAVE_LIBZFS && HAVE_LIBNVPAIR]: Include `' and - `'. - [HAVE_GETFSSTAT]: Include `'. - - (find_mount_point_from_dir): New static function. - [HAVE_LIBZFS && HAVE_LIBNVPAIR] (find_root_device_from_libzfs): New - function. - [HAVE_LIBZFS && HAVE_LIBNVPAIR] (grub_guess_root_device): Use - find_root_device_from_libzfs() before ressorting to find_root_device(). - - * include/grub/util/misc.h (grub_util_init_libzfs): New function - prototype. - * util/misc.c: Include `'. - (grub_util_init_libzfs): New function. - [HAVE_LIBZFS] (libzfs_handle): New global variable. - [HAVE_LIBZFS] (fini_libzfs): New static function. - (grub_util_init_libzfs): New function. - * util/grub-probe.c (main): Call grub_util_init_libzfs(). - -2010-07-30 Robert Millan - - * include/grub/emu/misc.h (grub_make_system_path_relative_to_its_root) - (xmalloc, xrealloc, xstrdup, xasprintf): Add - `warn_unused_result' attribute. - * include/grub/misc.h (grub_strdup, grub_strndup, grub_strlen) - (grub_xasprintf, grub_xvasprintf): Likewise. - * include/grub/emu/misc.h (xasprintf): Remove duplicate prototype. - -2010-07-29 Robert Millan - - * util/grub-probe.c (PRINT_FS_LABEL): New enum value. - (probe): Handle `PRINT_FS_LABEL'. - (main): Handle `-t fs_label'. - -2010-07-29 Robert Millan - - * configure.ac: Remove grub-mkisofs checks. - -2010-07-28 Vladimir Serbinenko - - * util/ieee1275/grub-install.in: Don't use empty grub_device. - Reported by: Lennart Sorensen. - -2010-07-20 Vladimir Serbinenko - - * util/grub.d/00_header.in: Remove compatibility with terminal.mod - prior to terminal_input/terminal_output separation. It's been over 1.5 - years and those versions weren't widely deployed. - -2010-07-22 Colin Watson - - * disk/raid.c (insert_array): Don't count named arrays when looking - for unused array numbers. - Reported and tested by: Michael Guntsche. - -2010-07-20 Colin Watson - - * bus/usb/emu/usb.c (grub_usb_poll_devices): Add a dummy - implementation of this so that grub-emu links again, with a note - that this should support hotplugging in the future. - -2010-07-20 Colin Watson - - * kern/emu/getroot.c (grub_util_get_grub_dev): Use xasprintf. - -2010-07-20 Colin Watson - - * disk/loopback.c (grub_cmd_loopback): Don't leak a grub_file_t - handle on failure. - (grub_loopback_close): Remove empty function. - (grub_loopback_dev): Remove close method. - -2010-07-20 Colin Watson - - Disable EFI cursor when the EFI console becomes inactive. - - * term/efi/console.c (grub_efi_console_init): New function. - (grub_efi_console_fini): New function. - (grub_console_term_output): Register init and fini methods. - -2010-07-20 Vladimir Serbinenko - - * tests/util/grub-shell-tester.in: Remove bashism and declare as - sh script. - -2010-07-20 Vladimir Serbinenko - - * disk/loopback.c (grub_loopback): Replace filename with file. - (delete_loopback): Handle new semantics. - (grub_cmd_loopback): Likewise. - (grub_loopback_iterate): Likewise. - (grub_loopback_close): Likewise. - -2010-07-20 Vladimir Serbinenko - - * util/i386/efi/grub-install.in: Revert to platform-specific behaviour - with -p "". - Reported by: Tito Keitel. - -2010-07-20 Vladimir Serbinenko - - * docs/grub.texi (Naming convention): Document new naming convention. - -2010-07-20 Vadim Solomin -2010-07-20 Colin Watson - - Generate device.map in something closer to the old ordering. - - * util/deviceiter.c (struct device): New declaration. - (compare_file_names): Rename to ... - (compare_devices): ... this. Sort by kernel name in preference to - the stable by-id name, but keep the latter as a fallback comparison. - Update header comment. - (grub_util_iterate_devices) [__linux__]: Construct and sort an array - of `struct device' rather than of plain file names. - -2010-07-20 Thomas Frauendorfer - - * lib/i386/relocator_asm.S [! __x86_64__]: Don't try to disable amd64 - on i386. - -2010-07-20 Vladimir Serbinenko - - * commands/acpi.c (setup_common_tables): Use sizeof instead of - hardcoding size. - (setv1table): Likewise. - -2010-07-20 Colin Watson - - * disk/raid.c (insert_array): Use md/%s to name mdadm 1.x devices, - removing the homehost if present. - * kern/emu/getroot.c (get_mdadm_name) [__linux__]: New function. - (grub_util_get_grub_dev): Use md/%s to name mdadm 1.x devices, - removing the homehost if present. - (grub_util_get_grub_dev) [__linux__]: Get the array name from mdadm - if possible. - * util/i386/pc/grub-setup.c (main): Handle md/* devices. - - * disk/dmraid_nvidia.c (grub_dmraid_nv_detect): Add start_sector - parameter. Set its pointer target to 0. - * disk/mdraid_linux.c (grub_mdraid_detect): Add start_sector - parameter. Set its pointer target to 0 for 0.9 metadata, or to the - `data_offset' value from the superblock for 1.x metadata. - * disk/raid.c (grub_raid_read): Offset reads by the start sector of - data on the device. - (insert_array): Record the start sector of data on the device. - (grub_raid_register): Pass start_sector parameters to - grub_raid_list->detect and insert_array. - * include/grub/raid.h (struct grub_raid_array): Add start_sector - member. - (struct grub_raid): Add start_sector parameter to `detect'. - - * disk/mdraid_linux.c (struct grub_raid_super_1x): Remove - __attribute__ ((packed)), leaving a comment. - (grub_mdraid_detect): Split out 0.9 and 1.x detection to ... - (grub_mdraid_detect_09): ... here and ... - (grub_mdraid_detect_1x): ... here. - -2010-07-20 Peter Henn - - * disk/mdraid_linux.c (grub_mdraid_detect): Fix calculation of 1.x - chunk size and disk size, which are already given as sector counts - as distinct from the 0.90 units. Fetch the correct device number - from the role table instead of using the table index. - -2010-07-20 Felix Zielcke - - * disk/dmraid_nvidia.c (grub_dmraid_nv_detect): Set array->name to NULL. - * disk/mdraid_linux.c (grub_raid_super_1x): New structure. - (WriteMostly1): New macro. - Set array->name to NULL for metadata format 0.90. Add support for - metadata 1.x. Fix some comments. - * disk/raid.c (): Add support for name based RAID arrays. Fix a - few comments. - * util/getroot.c (grub_util_get_grub_dev): Add support for - /dev/md/name style devices. - -2010-07-20 Colin Watson - - * .bzrignore: Ignore 20_linux_xen. - -2010-07-17 Colin Watson - - * util/import_unicode.py: Remove unnecessary imports. - -2010-07-17 AleÅ¡ Nesrsta - - Hotplugging and USB hub support. - - * bus/usb/ohci.c (grub_ohci_td): Add convenience fields. - (grub_ohci): Likewise. - (GRUB_OHCI_REG_CONTROL_BULK_ENABLE): New definition. - (GRUB_OHCI_REG_CONTROL_CONTROL_ENABLE): Likewise. - (GRUB_OHCI_RESET_CONNECT_CHANGE): Likewise. - (GRUB_OHCI_CTRL_EDS): Likewise. - (GRUB_OHCI_BULK_EDS): Likewise. - (GRUB_OHCI_TDS): Likewise. - (GRUB_OHCI_ED_ADDR_MASK): Likewise. - (grub_ohci_ed_phys2virt): New function. - (grub_ohci_virt_to_phys): Likewise. - (grub_ohci_td_phys2virt): Likewise. - (grub_ohci_td_virt2phys): Likewise. - (grub_ohci_pci_iter): Allocate memory and don't wait for stable - attachment. - (grub_ohci_find_ed): New function. - (grub_ohci_alloc_td): Likewise. - (grub_ohci_free_td): Likewise. - (grub_ohci_free_tds): Likewise. - (grub_ohci_transfer): Use previously allocated memory. - (grub_ohci_portstatus): Reset status changed bit. - (grub_ohci_detect_dev): Supply status changed. - (grub_ohci_fini_hw): Free memory. - (grub_ohci_restore_hw): Reallocate memory. - * bus/usb/uhci.c (grub_uhci_portstatus): Don't reset on disable. - Reset status change. - (grub_uhci_detect_dev): Supply status_change. - * bus/usb/usb.c (attach_hooks): New var. - (grub_usb_device_attach): New function. - (grub_usb_register_attach_hook_class): Likewise. - (grub_usb_unregister_attach_hook_class): Likewise. - * bus/usb/usbhub.c (grub_usb_hub_add_dev): Handle errors correctly. - (grub_usb_add_hub): Reset connection changed bit. - (attach_root_port): New function. - (grub_usb_root_hub): Likewise. - (poll_nonroot_hub): Likewise. - (grub_usb_poll_devices): Likewise. - * commands/usbtest.c (grub_cmd_usbtest): Poll devices before listing. - * disk/usbms.c (grub_usbms_open): Use device hooks. - (grub_usbms_iterate) :Poll devices. - (grub_usbms_finddevs): Split into ... - (grub_usbms_attach): ... this ... - (grub_usbms_attach): ... and this. - * include/grub/usb.h (grub_usb_controller_dev): Supply status_changed - in detect_dev. - (grub_usb_interface): New fields attached and detach_hook. - (grub_usb_attach_hook_class): New type. - (grub_usb_attach_desc): New struct. - (grub_usb_register_attach_hook_class): New function. - (grub_usb_unregister_attach_hook_class): Likewise. - (grub_usb_poll_devices): Likewise. - (grub_usb_device_attach): Likewise. - * include/grub/usbtrans.h (GRUB_USB_HUB_FEATURE_C_CONNECTED): New const. - (GRUB_USB_HUB_STATUS_C_CONNECTED): Likewise. - -2010-07-17 Vladimir Serbinenko - - * include/grub/bsdlabel.h (GRUB_PC_PARTITION_BSD_LABEL_WHOLE_DISK_PARTITION): New definition. - * partmap/bsdlabel.c (bsdlabel_partition_map_iterate): Use FreeBSD - delta determination style. Works with most NetBSD partitions too. - -2010-07-17 Vladimir Serbinenko - - * kern/partition.c [GRUB_UTIL]: Add missing util/misc.h inclusion. - * partmap/bsdlabel.c [GRUB_UTIL]: Likewise. - -2010-07-17 Vladimir Serbinenko - - * disk/scsi.c (grub_scsi_open): Fix incorrect pointer dereference. - -2010-07-14 Anton Blanchard - - * loader/powerpc/ieee1275/linux.c (grub_cmd_linux): Do not reject - ET_DYN files. - -2010-07-14 Grégoire Sutre - - * Makefile.in: Use the substituted @USE_NLS@ instead of ENABLE_NLS. - -2010-07-14 Grégoire Sutre - - * kern/partition.c (grub_partition_check_containment): New function to - check that a partition is physically contained in a parent. Since - offsets are relative (and non-negative), this reduces to checking that - the partition ends before its parent. - (grub_partition_map_probe): Discard out-of-range sub-partitions. - (grub_partition_iterate): Likewise. - * include/grub/partition.h (grub_partition_map): Slightly more detailed - comments. - * partmap/bsdlabel.c (bsdlabel_partition_map_iterate): Discard - partitions that start before their parent, and add debug printfs. - -2010-07-13 Colin Watson - - * Makefile.in (.SUFFIX): Spell correctly, as ... - (.SUFFIXES): ... this. Fixes bug where `make foo' (where foo is a - bare module name without `.mod', e.g. `test') tried to invoke a - Modula-2 compiler. - -2010-07-13 Colin Watson - - * README: Point to the Info manual. - -2010-07-13 Jiro SEKIBA - - * fs/nilfs2.c: fix macro NILFS_2ND_SUPER_BLOCK to calculate - 2nd superblock position from partition size. - -2010-07-10 Colin Watson - - * Makefile.in (MAINTAINER_CLEANFILES): Remove - unicode/UnicodeData.txt, unicode/BidiMirroring.txt, and - unicode/ArabicShaping.txt again; these are inputs to autogen.sh, not - outputs. - -2010-07-10 Vladimir Serbinenko - - Restructure SCSI .id handling. - Reported and tested by: AleÅ¡ Nesrsta. - - * disk/ata.c (grub_atapi_close): Removed. All users updated. - (grub_atapi_dev): Changed .name to "ata". New field .id. - * disk/usbms.c (grub_usbms_close): Removed. All users updated. - (grub_usbms_dev): New field .id. - * disk/scsi.c (grub_scsi_iterate): Generate name. - (grub_scsi_open): Parse name. - * include/grub/scsi.h (grub_make_scsi_id): New function. - (grub_scsi_dev): Change iterate and open to number instead of naming - busses. All users updated. - (grub_scsi): Remove name. Add .bus. - -2010-07-10 Vladimir Serbinenko - - * commands/help.c (grub_cmd_help): Fix a typo. - -2010-07-10 Vladimir Serbinenko - - * normal/term.c (put_glyphs_terminal): Fix state->num_lines counting. - Reported and tested by: Colin Watson. - -2010-07-10 Vladimir Serbinenko - - * util/grub-mkrescue.in: Don't use tar GNU-ism since it's not necessary - in this context. - -2010-07-07 Vladimir Serbinenko - - * tests/util/grub-shell.in: Remove bashisms and declare as sh script. - -2010-07-07 Colin Watson - - * term/gfxterm.c (grub_gfxterm_background_image_cmd): Fix - indentation. - -2010-07-06 Colin Watson - - * conf/common.rmk (grub_probe_SOURCES): Add disk/raid5_recover.c - and disk/raid6_recover.c. - * conf/i386-pc.rmk (grub_setup_SOURCES): Likewise. - * conf/sparc64-ieee1275.rmk (grub_setup_SOURCES): Likewise. - -2010-07-06 Colin Watson - - * term/gfxterm.c (repaint_schedulded): Rename to ... - (repaint_scheduled): ... this. Update all callers. - (repaint_was_schedulded): Rename to ... - (repaint_was_scheduled): ... this. Update all callers. - -2010-07-06 Colin Watson - - * util/deviceiter.c (grub_util_iterate_devices): Skip MD devices, - which we expect to be handled by upper layers. - -2010-07-06 BVK Chaitanya - - * bus/usb/usbhub.c: #include time.h header. - -2010-07-06 Colin Watson - - * fs/reiserfs.c (grub_reiserfs_iterate_dir): Zero out first byte of - entry_name also for entries without stat blocks (e.g. ".."); fixes - corruption of the first entry in a directory. - -2010-07-06 Colin Watson - - * util/grub.d/00_header.in: Process GRUB_THEME and GRUB_BACKGROUND - after setting gfxterm as the active terminal. GRUB_BACKGROUND - doesn't work otherwise. - -2010-07-05 Colin Watson - - * docs/grub.texi (Features): Update list of supported file systems. - (GNU/Linux): Update for GRUB 2. - (Serial terminal): Remove mention of --disable-serial, which was a - GRUB Legacy configure option. Update instructions to use - `terminal_input' and `terminal_output' rather than `terminal'. - (Vendor power-on keys): Copy-edit. Add cross-references to `Simple - configuration' and `Installing GRUB using grub-install'. - (Menu entry editor): Update for GRUB 2. - (terminfo): Add vt100-color, ieee1275, and dumb terminal types. - Document new -a, -u, and -v options. - (initrd): New section. - (initrd16): New section. - (linux): New section. - (linux16): New section. - (search): The `var' argument to `--set' is optional. - (GRUB only offers a rescue shell): Go into a little more detail on - drive ordering. - -2010-07-05 Colin Watson - - * Makefile.in: Set LINGUAS to empty if ENABLE_NLS is undefined. - -2010-07-05 Colin Watson - - * Makefile.in (MAINTAINER_CLEANFILES): Add unicode/UnicodeData.txt, - unicode/BidiMirroring.txt, unicode/ArabicShaping.txt, and unidata.c. - -2010-07-05 Colin Watson - - * util/i386/pc/grub-setup.c (setup): Rename prefix to - install_prefix, in line with install_dos_part and install_bsd_part. - Add new prefix variable, which is copied to install_prefix after - comparing core.img in memory with the one read from disk in the - no-embedding case, and use that rather than overwriting - install_prefix immediately when installing to a partition. - Fixes Debian bug #586621; based on patches by Matt Kraai and M. Vefa - Bicakci. - -2010-07-04 Grégoire Sutre - - * configure.ac: Avoid == in test command, it's not portable. - * util/grub.d/30_os-prober.in: Likewise. - -2010-07-04 Colin Watson - - * kern/emu/getroot.c [__GNU__]: Include for munmap. - -2010-07-04 Grégoire Sutre - - * util/i386/pc/grub-setup.c (setup): Do not embed when there are - multiple (top-level) partmaps. - -2010-07-02 Vladimir Serbinenko - - * util/i386/efi/grub-install.in: Don't use empty grub_device. - Reported by: Tino Keitel. - -2010-07-02 Vladimir Serbinenko - - Bidi and diacritics support. - - * Makefile.in (widthspec.bin): New target. - (widthspec.h): Likewise. - (TARGET_CFLAGS): Add -DHAVE_UNIFONT_WIDTHSPEC=1 if font was available. - * autogen.sh: Generate unidata.c. - * commands/cat.c (grub_cmd_cat): Don't use grub_putchar. - * commands/ls.c (grub_ls_list_devices): Likewise. - (grub_ls_list_files): Likewise. - * commands/minicmd.c (grub_mini_cmd_cat): Likewise. - (grub_mini_cmd_lsmod): Likewise. - * commands/read.c: Likewise. - * kern/corecmd.c (grub_core_cmd_ls): Likewise. - * kern/rescue_reader.c (grub_rescue_read_line): Likewise. - * lib/arg.c (grub_arg_show_help): Likewise. - * lib/crypto.c (grub_password_get): Likewise. - * normal/auth.c (grub_username_get): Likewise. - * normal/misc.c (grub_normal_print_device_info): Likewise. - * commands/help.c (grub_cmd_help): Use grub_unicode_aglomerate_comb. - * conf/common.rmk (grub_mkfont_SOURCES): Add unidata.c. - (gfxmenu_mod_SOURCES): Add gfxmenu/font.c. - (normal/charset.c_DEPENDENCIES): New variable. - (normal_mod_SOURCES): Add normal/charset.c and unidata.c. - (pkglib_MODULES): Remove charset.mod. - (charset_mod_SOURCES): Removed. - (charset_mod_CFLAGS): Likewise. - (charset_mod_LDFLAGS): Likewise. - (pkglib_MODULES) [ieee1275]: Remove terminfo.mod. - * conf/powerpc-ieee1275.rmk (kernel_img_SOURCES): Add term/terminfo.c - and term/tparm.c. - * conf/sparc64-ieee1275.rmk (kernel_img_SOURCES): Likewise. - * conf/i386-ieee1275.rmk (kernel_img_SOURCES): Likewise. - (kernel_img_HEADERS): Add terminfo.h. - * font/font.c (ascii_glyph_lookup): Return NULL on failure. - Fill ->font. Reverse ascii bitmaps. - (grub_font_get_xheight): New function. - * font/font.c (grub_font_get_string_width): Moved from here ... - * gfxmenu/font.c (grub_font_get_string_width): ... here. - * font/font.c (grub_font_draw_string): Moved from here ... - * gfxmenu/font.c (grub_font_draw_string): ... here. - * font/font.c (grub_font_dup_glyph): New function. - (grub_font_blit_glyph): Likewise. - (grub_font_blit_glyph_mirror): Likewise. - (blit_comb): Likewise. - (grub_font_construct_dry_run): Likewise. - (grub_font_get_constructed_device_width): Likewise. - (grub_font_construct_glyph): Likewise. - * include/grub/charset.h (grub_ucs4_to_utf8): New proto. - * include/grub/misc.h (grub_utf8_to_ucs4): Moved from here ... - * include/grub/charset.h (grub_utf8_to_ucs4): ... here. - * include/grub/font.h (GRUB_FONT_CODE_CHAR_MASK): New constant. - (GRUB_FONT_CODE_RIGHT_JOINED): Likewise. - (GRUB_FONT_CODE_LEFT_JOINED): Likewise. - (grub_font_get_xheight): New proto. - (grub_font_get_constructed_device_width): Likewise. - (grub_font_construct_glyph): Likewise. - * include/grub/font.h (grub_font_get_string_width): Moved from here ... - * include/grub/gfxmenu_view.h (grub_font_get_string_width): ... here. - * include/grub/font.h (grub_font_draw_string): Moved from here ... - * include/grub/gfxmenu_view.h (grub_font_draw_string): ... here. - * include/grub/i386/vga_common.h (grub_console_putchar): Moved from here.. - * include/grub/i386/pc/console.h (grub_console_putchar): ... here. - * include/grub/i386/vga_common.h (grub_console_real_putchar): Removed. - (grub_console_getcharwidth): Likewise. - * include/grub/misc.h (grub_xputs): New proto. - (grub_puts): Inlined. - * include/grub/normal.h (grub_print_ucs4): Add margin specification. - (grub_normal_get_line_counter): Removed. - (grub_install_newline_hook): Likewise. - (grub_normal_get_char_counter): New proto. - (grub_normal_reset_more): Likewise. - (grub_xputs_normal): Likewise. - * include/grub/powerpc/ieee1275/console.h: Removed. - * include/grub/sparc64/ieee1275/console.h: Likewise. - * include/grub/term.h (GRUB_TERM_CODE_TYPE_MASK): New definition. - (GRUB_TERM_CODE_TYPE_ASCII): Likewise. - (GRUB_TERM_CODE_TYPE_CP437): Likewise. - (GRUB_TERM_CODE_TYPE_UTF8_LOGICAL): Likewise. - (GRUB_TERM_CODE_TYPE_UTF8_VISUAL): Likewise. - (GRUB_TERM_CODE_TYPE_VISUAL_GLYPHS): Likewise. - (grub_term_input): Pass reference to self. All users updated. - (grub_term_output): Pass grub_unicode_glyph to putchar and getcharwidth. - Pass reference to self. New fields normal_color, highlight_color and - data. All users updated. - (grub_putchar): Removed. - (grub_putcode): Remove EXPORT_FUNC since it's not in kernel anymore. - (grub_unicode_estimate_width): New function. - (grub_term_getcharwidth): Add defaults. - (GRUB_TERM_DEFAULT_NORMAL_COLOR): New definition. - (GRUB_TERM_DEFAULT_HIGHLIGHT_COLOR): Likewise. - (GRUB_TERM_DEFAULT_STANDARD_COLOR): Likewise. - (grub_cls): Remove EXPORT_FUNC. - (grub_setcolorstate): Inline. - (grub_newline_hook): Removed. - * include/grub/terminfo.h: Rewritten. All users updated. - * include/grub/unicode.h: New file. - * include/grub/video.h (grub_video_signed_rect): New type. - * kern/emu/console.c (grub_console_highlight_color): Removed. - (grub_console_normal_color): Likewise. - (grub_console_standard_color): Made static. - (grub_ncurses_putchar): Remove mapping. - (grub_ncurses_getcharwidth): Removed. - (grub_ncurses_term_output): Declare as GRUB_TERM_CODE_TYPE_ASCII. - (grub_ncurses_setcolor): Removed. - (grub_ncurses_getcolor): Likewise. - * kern/i386/pc/startup.S (grub_console_real_putchar): Renamed to ... - (grub_console_putchar): ... this. - (grub_console_putchar): Handle argument difference. - * kern/ieee1275/init.c (grub_machine_init): Split console_init into - console_init_early and console_init_lately. - * kern/sparc64/ieee1275/init.c (grub_machine_init): Likewise. - * kern/misc.c (grub_puts): Removed. - (grub_vprintf): Store UTF-8 string instead of outputting it directly. - (grub_vsnprintf_real): Remove str = NULL support. - * kern/misc.c (grub_utf8_to_ucs4): Move from here ... - * normal/charset.c (grub_utf8_to_ucs4): ... here. - * kern/term.c (grub_putcode): Renamed to ... - (grub_putcode_dumb): ... this. Pass grub_unicode_glyph instead of code. - (grub_putchar): Removed. - (grub_xputs_dumb): New function. - (grub_xputs): New variable. - * lib/charset.c: Move from here ... - * normal/charset.c: ... to here. - (grub_ucs4_to_utf8): New function. - (grub_ucs4_to_utf8_alloc): Use grub_ucs4_to_utf8. - (join_types): New variable. - (unpack_join): New function. - (bidi_types): New variable. - (unpack_bidi): New function. - (get_bidi_type): Likewise. - (get_join_type): Likewise. - (is_mirrored): Likewise. - (grub_unicode_get_comb_type): Likewise. - (grub_unicode_estimate_width) [HAVE_UNIFONT_WIDTHSPEC]: Likewise. - (is_type_after): Likewise. - (grub_unicode_aglomerate_comb): Likewise. - (bidi_line_wrap): Likewise. - (grub_bidi_line_logical_to_visual): Likewise. - (grub_bidi_logical_to_visual): Likewise. - (grub_unicode_mirror_code): Likewise. - (grub_unicode_shape_code): Likewise. - * normal/cmdline.c (grub_cmdline_get): Reset more counter. - Don't use grub_putchar. - * normal/main.c (grub_normal_init_page): Use grub_putcode. - (grub_normal_reader_init): Likewise. - (grub_xputs_saved): New variable. - (GRUB_MOD_INIT): Set grub_xputs. - (GRUB_MOD_FINI): Restore grub_xputs. - * normal/menu.c (grub_wait_after_message): Don't use grub_putchar. - (menu_init): Avoid printing gfxmenu error. - (show_menu): Use grub_normal_get_char_counter. - * normal/menu_entry.c (update_screen): Fix out-of-array. - (complete): Avoid NULL dereferencing. - * grub_menu_entry_run (grub_menu_entry_run): Don't use putchar. - * normal/menu_text.c (print_spaces): Removed. - (grub_print_ucs4): Likewise. - (grub_print_message_indented): Use grub_print_ucs4. - (print_message): Use grub_putcode. - (print_entry): Hanlde diacritics. - * normal/term.c (term_state): New type. - (grub_more_lines): Removed. - (term_states): New variable. - (grub_normal_line_counter): Renamed to .. - (grub_normal_char_counter): ...this. All users updated. - (grub_normal_get_line_counter): Renamed to ... - (grub_normal_get_char_counter): ... this. - (grub_normal_reset_more): New function. - (process_newline): Removed. - (print_more): New function. - (grub_install_newline_hook): Removed. - (map_code): New function. - (grub_puts_terminal): Use grub_print_ucs4. - (putglyph): New function. - (putcode_real): Likewise. - (grub_putcode): Use putcode_real. - (get_maxwidth): New function. - (get_startwidth): Likewise. - (print_ucs4_terminal): Likewise. - (find_term_state): Likewise. - (put_glyphs_terminal): Likewise. - (print_backlog): Likewise. - (print_ucs4_real): Likewise. - (grub_print_ucs4): Likewise. - (grub_xputs_normal): Likewise. - * term/efi/console.c (grub_console_putchar): Output diacritics. - (grub_console_getcharwidth): Removed. - (grub_console_term_output): Declare as GRUB_TERM_CODE_TYPE_UCS4_VISUAL. - * term/gfxterm.c (clear_char): Free chars. - (scroll_up): Avoid leaking memory. - (grub_gfxterm_putchar): Support diacritics. - (grub_video_term): Declare as GRUB_TERM_CODE_TYPE_UCS4_VISUAL. - * term/i386/pc/console.c (grub_console_term_output): Declare as - GRUB_TERM_CODE_TYPE_VGA. - * term/i386/pc/vga.c (grub_vga_term): Declare as - GRUB_TERM_CODE_TYPE_VISUAL_GLYPHS. - * term/i386/pc/vga_text.c (grub_vga_text_term): Declare as - GRUB_TERM_CODE_TYPE_VGA. - * term/i386/vga_common.c (map_char): Removed. - (grub_console_putchar): Likewise. - (grub_console_getcharwidth): Likewise. - * term/ieee1275/ofconsole.c: Simplify using terminfo. - (colors): Reordered to match terminfo. - (grub_ofconsole_normal_color): Removed. - (grub_ofconsole_writeesc): Likewise. - (grub_ofconsole_highlight_color): Likewise. - (grub_ofconsole_getcharwidth): Likewise. - (grub_ofconsole_setcolorstate): Likewise. - (grub_ofconsole_setcolor): Likewise. - (grub_ofconsole_getcolor): Likewise. - (grub_ofconsole_readkey): Renamed to ... - (readkey): ... this. Remove escape sequence handling. Return -1 on no - key. - (grub_ofconsole_checkkey): Removed. - (grub_ofconsole_getkey): Likewise. - (grub_ofconsole_getxy): Likewise. - (grub_ofconsole_gotoxy): Likewise. - (grub_ofconsole_cls): Likewise. - (grub_ofconsole_refresh): Likewise. - (grub_ofconsole_terminfo_input): New struct. - (grub_ofconsole_terminfo_output): Likewise. - (grub_ofconsole_term_input): Use terminfo. - (grub_ofconsole_term_output): Likewise. - (grub_console_init): Split into ... - (grub_console_init_early): ...this and ... - (grub_console_init_lately): ...this. Use terminfo. - (grub_ofconsole_putchar): Renamed to ... - (put): ... this. Remove mapping. - (grub_ofconsole_term_output): Declare as GRUB_TERM_CODE_TYPE_ASCII. - * term/serial.c: Simplify using terminfo. - (xpos): Removed. - (ypos): Likewise. - (keep_track): Likewise. - (registered): Likewise. - (input_buf): Likewise. - (npending): Likewise. - (serial_translate_key_sequence): Likewise. - (fill_input_buf): Likewise. - (grub_serial_checkkey): Likewise. - (grub_serial_getkey): Likewise. - (grub_serial_getxy): Likewise. - (grub_serial_gotoxy): Likewise. - (grub_serial_putchar): Likewise. - (grub_serial_cls): Likewise. - (grub_serial_setcolorstate): Likewise. - (grub_serial_setcursor): Likewise. - (serial_hw_init): Use serial_hw_fetch. - (grub_serial_terminfo_input): New variable. - (grub_serial_terminfo_output): Likewise. - (grub_serial_term_input): Use terminfo. - (grub_serial_term_output): Likewise. - * term/terminfo.c (putstr): Use put. - (grub_terminfo_all_free): New function - (grub_terminfo_set_current): New types vt100-color, ieee1275 and dumb. - (grub_terminfo_output_register): New function. - (grub_terminfo_output_unregister): Likewise. - (grub_terminfo_getxy): Likewise. - (grub_terminfo_readkey): Likewise. - (grub_terminfo_checkkey): Likewise. - (grub_terminfo_getkey): Likewise. - (grub_terminfo_input_init): Likewise. - (print_terminfo): Likewise. - (grub_cmd_terminfo): Handle encoding. - (grub_terminfo_gotoxy): Track position. - (grub_terminfo_cls): Likewise. - (grub_terminfo_putchar): Likewise. - (grub_terminfo_setcolorstate): Handle colors - (grub_terminfo_cursor_on): This ... - (grub_terminfo_cursor_off): ... and this merged into ... - (grub_terminfo_setcursor): ... this. - * term/tparm.c (grub_terminfo_tparm): Avoid NULL dereferencing. - * unicode/ArabicShaping.txt: New file (imported from Unicode). - * unicode/BidiMirroring.txt: Likewise. - * unicode/UnicodeData.txt: Likewise. - * unicode/COPYING: Likewise. - * util/grub-editenv.c (grub_putchar): Removed. - (grub_xputs_real): New function. - (grub_xputs): New variable. - * util/grub-fstest.c (grub_putchar): Removed. - (grub_xputs_real): New function. - (grub_xputs): New variable. - * util/grub-mkdevicemap.c (grub_putchar): Removed. - (grub_xputs_real): New function. - (grub_xputs): New variable. - * util/grub-probe.c (grub_putchar): Removed. - (grub_xputs_real): New function. - (grub_xputs): New variable. - * util/grub-script-check.c (grub_putchar): Removed. - (grub_xputs_real): New function. - (grub_xputs): New variable. - * util/i386/pc/grub-setup.c (grub_putchar): Removed. - (grub_xputs_real): New function. - (grub_xputs): New variable. - * util/import_unicode.py: New file. - * util/grub-mkfont.c (ft_errmsgs): New array. - (grub_glyph_info): Make bitmap a pointer. - (file_formats): New type WIDTH_SPEC. - (grub_font_info): New members glyphs_unsorted, glyphs_sorted, num_glyphs. - (options): Add width-spec. - (help): Likewise. - (add_char): Renamed to ... - (add_glyph): ... this. - (add_glyph): Use index. Show freetype errors. Cut blank space at borders. - (glyph_replace): New type. - (subst_rightjoin), (subst_leftjoin), (subst_medijoin): New variables. - (add_char): New function. - (add_subst): Likewise. - (process_cursive): Likewise. - (add_font): Handle GSUB. - (write_font_width_spec): New function. - (main): Sort glyphs. - * commands/minicmd.c (grub_mini_cmd_clear): Moved from here ... - * normal/main.c (grub_mini_cmd_clear): ..here. All users updated. - * kern/term.c (grub_cls): Moved from here... - * normal/term.c (grub_cls): ... here. - -2010-07-02 Colin Watson - - * include/grub/types.h: Define the C99-style PRIxGRUB_SIZE macro, - suitable for using within the format argument of printf when - converting grub_size_t. - * disk/usbms.c (grub_usbms_transfer): Use PRIxGRUB_SIZE rather than - "x" to convert grub_size_t arguments. - -2010-07-02 Vladimir Serbinenko - - * gfxmenu/gui_list.c (draw_menu): Use viewport to simplify code and fix - too long captions. - (list_get_minimal_size): Take selection box into account. - -2010-07-02 Vladimir Serbinenko - - * font/font.c (grub_font_get_glyph_with_fallback): Avoid dereferencing - NULL font. - -2010-07-02 Colin Watson - - * util/deviceiter.c (grub_util_iterate_devices): Skip device-mapper - devices when iterating over /dev/disk/by-id; they will be handled - later if appropriate, which they aren't always (e.g. LVM). - -2010-07-02 Colin Watson - - * include/grub/misc.h (grub_reboot): Declare as noreturn. - * kern/efi/efi.c (grub_reboot): Don't return, even if reset_system - fails. - (grub_halt): Likewise. - * kern/ieee1275/openfw.c (grub_reboot): Don't return, even if - reset-all fails. - (grub_halt): Don't return, even if all of shut-down, power-off, and - poweroff fail. - -2010-07-02 Colin Watson - - * kern/efi/init.c (grub_efi_init): set_watchdog_timer takes four - arguments, not three. - -2010-07-02 Colin Watson - - * util/grub-mkconfig_lib.in (uses_abstraction): New function. - * util/grub.d/10_linux.in: Use it to check for LVM, so that - LVM-on-RAID is handled correctly. - -2010-07-02 Colin Watson - - * docs/grub.texi (Changes from GRUB Legacy): New section. - (Future): Fix typo. - -2010-07-02 Colin Watson - - * util/grub-mkconfig_lib.in (grub_file_is_not_garbage): Sometimes - grub.d/README accidentally ends up executable for one reason or - another. Ignore it. - -2010-07-02 Vladimir Serbinenko - - * partmap/gpt.c (MAX_SECTOR_LOG): New definition. - (gpt_partition_map_iterate): Support non-512B sectors. - -2010-07-02 Vladimir Serbinenko - - * kern/efi/init.c (grub_efi_init): Disable watchdog. - Tested by: Seth Goldberg. - -2010-07-02 Vladimir Serbinenko - - * loader/multiboot.c (grub_multiboot_boot) [GRUB_USE_MULTIBOOT2]: - Properly align mbi. - Reported by: Seth Goldberg. - -2010-07-01 Vladimir Serbinenko - - * util/grub-mkrescue.in: Avoid module duplication. - -2010-07-01 Sean Finney - - * util/grub.d/10_linux.in: Don't use UUID for LVM root. - -2010-07-01 Sean Finney - - * disk/lvm.c (grub_lvm_scan_device): Skip snapshots. - -2010-07-01 Vladimir Serbinenko - - * disk/lvm.c (grub_lvm_checkvalue): New function. - (grub_lvm_check_flag): Likewise. - -2010-07-01 Robert Millan - - * kern/emu/hostdisk.c (convert_system_partition_to_system_disk): - Support 'p' as partition separator on kernel of FreeBSD (used - with GPT labels). - (grub_util_biosdisk_get_grub_dev): Likewise. - -2010-07-01 Vladimir Serbinenko - - Yeeloong firmware port. - - * boot/mips/yeeloong/fwstart.S: New file. - * bus/cs5536.c (gpiodump): New const. - (set_io_space): New function. - (set_iod): Likewise. - (set_p2d): Likewise. - (grub_cs5536_init_geode): Likewise. - * commands/mips/yeeloong/lsspd.c: New file. - * conf/mips-qemu-mips.rmk (pkglib_MODULES): Add serial.mod. - (serial_mod_SOURCES): New variable. - (serial_mod_CFLAGS): Likewise. - (serial_mod_LDFLAGS): Likewise. - * conf/mips-yeeloong.rmk (kernel_img_SOURCES): Add term/serial.c, - term/terminfo.c and term/tparm.c. - (pkglib_IMAGES): Add fwstart.img. - (fwstart_img_SOURCES): New variable. - (fwstart_img_CFLAGS): Likewise. - (fwstart_img_ASFLAGS): Likewise. - (fwstart_img_LDFLAGS): Likewise. - (fwstart_img_FORMAT): Likewise. - (pkglib_MODULES): Add lsspd.mod. - (lsspd_mod_SOURCES): New variable. - (lsspd_mod_CFLAGS): Likewise. - (lsspd_mod_LDFLAGS): Likewise. - (pkglib_MODULES): Add halt.mod. - (halt_mod_SOURCES): New variable. - (halt_mod_CFLAGS): Likewise. - (halt_mod_LDFLAGS): Likewise. - * conf/mips.rmk (pkglib_MODULES): Remove serial.mod. - (serial_mod_SOURCES): Removed. - (serial_mod_CFLAGS): Likewise. - (serial_mod_LDFLAGS): Likewise. - * disk/ata.c (check_device): New function. - (grub_ata_device_initialize): Use check_device. - (grub_ata_iterate): Recheck devices. - (grub_ata_open): Likewise. - (grub_atapi_iterate): Likewise. - (grub_atapi_open): Likewise. - * include/grub/ata.h (GRUB_ATA_CH0_PORT1): New macro. - (GRUB_ATA_CH1_PORT1): Likewise. - (GRUB_ATA_CH0_PORT2): Likewise. - (GRUB_ATA_CH1_PORT2): Likewise. - * include/grub/mips/loongson.h: New file. - * include/grub/mips/yeeloong/ec.h: Likewise. - * include/grub/mips/yeeloong/serial.h (GRUB_MACHINE_SERIAL_PORT): New definition. - (GRUB_MACHINE_SERIAL_DIVISOR_115200): Likewise. - (GRUB_MACHINE_SERIAL_PORTS) [ASM_FILE]: Remove. - * include/grub/misc.h (grub_halt): Declare as noreturn. - * include/grub/serial.h (UART_ENABLE_FIFO): Renamed to ... - (UART_ENABLE_FIFO_TRIGGER14): ... this. All users updated. - (UART_ENABLE_FIFO_TRIGGER1): New definition. - (UART_ENABLE_DTRRTS): Likewise. - (UART_ENABLE_MODEM): Removed. - (UART_ENABLE_OUT2): New const. - * include/grub/term.h (grub_term_register_input_active): New function. - (grub_term_register_output_active): Likewise. - * kern/mips/startup.S [GRUB_MACHINE_MIPS_YEELOONG]: Handle 0xffffffff - argument. - * kern/mips/yeeloong/init.c (grub_get_rtc): Macroify. - (init_pci): New function. - (grub_machine_init): Execute platform init when firmware. Init serial. - (grub_halt): Implement. - (grub_exit): Likewise. - (grub_reboot): Likewise. - * term/serial.c (serial_hw_init): Update macros. - [GRUB_MACHINE_MIPS_YEELOONG]: Init on startup. - * util/grub-mkimage.c (image_target_desc): New id IMAGE_YEELOONG_FLASH. - (image_targets): New target mipsel-yeeloong-flash. - (generate_image): Support IMAGE_YEELOONG_FLASH. - * video/sm712.c (GRUB_SM712_TOTAL_MEMORY_SPACE): New definition. - (grub_video_sm712_setup): Init card. - (grub_video_sm712_set_palette): Removed. - * video/sm712_init.c: New file. - -2010-06-30 Colin Watson - - * Makefile.in (install-local): Temporarily prepend $(builddir) to - PATH when running help2man and then run it on the unadorned - executable names, rather than passing $(builddir)/* paths to - help2man. This avoids the build directory ending up in generated - manual pages. - -2010-06-29 Colin Watson - - * util/grub-mkconfig.in: Use 'set -e' rather than '#! /bin/sh -e', - to avoid accidents when debugging with 'sh -x'. - * util/grub-mkrescue.in: Likewise. - * util/grub.d/00_header.in: Likewise. - * util/grub.d/10_hurd.in: Likewise. - * util/grub.d/10_kfreebsd.in: Likewise. - * util/grub.d/10_linux.in: Likewise. - * util/grub.d/10_netbsd.in: Likewise. - * util/grub.d/10_windows.in: Likewise. - * util/grub.d/20_linux_xen.in: Likewise. - * util/grub.d/30_os-prober.in: Likewise. - * util/powerpc/ieee1275/grub-mkrescue.in: Likewise. - -2010-06-29 Colin Watson - - * commands/cat.c (grub_cmd_cat): Fix buffer overrun if '\r' is the - last character in the buffer. - Reported by: Vladimir Serbinenko. - -2010-06-29 Robert Millan - - * docs/grub.texi (Simple configuration): Document ${GRUB_BADRAM}. - (Command-line and menu entry commands): Document `badram' command. - -2010-06-28 Robert Millan - - * util/grub-mkconfig.in: Export `GRUB_BADRAM' variable. - * util/grub.d/00_header.in: When `GRUB_BADRAM' is set, issue badram - command using ${GRUB_BADRAM} as parameter. - -2010-06-28 Colin Watson - - * docs/grub.texi (Device map): New section. - (Themes): New section (stub). - * Makefile.in (docs/grub.info): The info documentation now builds - without errors. Make sure it stays that way. - -2010-06-28 Vladimir Serbinenko - - Use normal parser for menu entries. - Reported by: Thomas Frauendorfer - - * include/grub/parser.h (grub_parser_execute): Don't export. - * normal/menu.c (grub_menu_execute_entry_real): New function. - (grub_menu_execute_entry): Use grub_menu_execute_entry_real. - -2010-06-28 Colin Watson - - * docs/grub.texi (Embedded configuration): New section (replacing - old "Preset Menu" stub). - (Images): New section. - (configfile): Note that any menu entries defined in `file' are shown - immediately. - -2010-06-28 Josh Triplett - - * mmap/i386/pc/mmap_helper.S: Set CF on return. - -2010-06-28 Colin Watson - - * util/grub-install.in: Add --debug-image= option. - -2010-06-28 Colin Watson - - Change grub-mkdevicemap to emit /dev/disk/by-id/ names where - possible on Linux. - - * util/deviceiter.c (check_device): Rename to ... - (check_device_readable_unique): ... this. Update all callers. - Maintain and check a list of which devices (by canonicalized name) - have already been seen. - (clear_seen_devices): New function. - (compare_file_names) [__linux__]: New function. - (grub_util_iterate_devices): Clear the list of seen devices on exit - and (just in case) on entry. - (grub_util_iterate_devices) [__linux__]: Iterate over non-partition - devices in /dev/disk/by-id/, in sorted order. Remove DM-RAID - seen-devices list, superseded by general code in check_device. - -2010-06-28 Colin Watson - - * commands/cat.c (options): New variable. - (grub_cmd_cat): Parse options. If the --dos option is given, print - DOS-style "\r\n" line endings as simple newlines (Debian bug - #586358). - (GRUB_MOD_INIT): Use extcmd. - (GRUB_MOD_FINI): Likewise. - * docs/grub.texi (cat): Document --dos. - -2010-06-28 Vladimir Serbinenko - - XEN with Linux grub-mkconfig support. - - * conf/common.rmk (grub-mkconfig_SCRIPTS) [linux]: Add 20_linux_xen. - * util/grub-mkconfig.in: Export GRUB_CMDLINE_XEN and - GRUB_CMDLINE_XEN_DEFAULT. - * util/grub.d/20_linux_xen.in: New file. - -2010-06-28 Vladimir Serbinenko - - Initialise VGA video on qemu ourselves. - - * boot/i386/qemu/boot.S: Don't call 0xc000. - * conf/i386-qemu.rmk (kern/i386/qemu/init.c_DEPENDENCIES): New variable. - (kernel_img_SOURCES): Add kern/i386/qemu/init.c and bus/pci.c. - (kernel_img_HEADERS): Add pci.h. - * conf/i386.rmk (pkglib_MODULES) [qemu]: Remove pci.mod. - * configure.ac: Force unifont on qemu and yeeloong. - * include/grub/i386/qemu/kernel.h (grub_qemu_init_cirrus): New proto. - (grub_vga_palette_write): Use correct register. - * kern/i386/coreboot/init.c (grub_machine_init) [GRUB_MACHINE_QEMU]: - Call grub_qemu_init_cirrus. - * kern/i386/qemu/init.c: New file. - * term/i386/pc/vga_text.c (inc_y): Never read outside the screen. - - * commands/videotest.c (grub_cmd_videotest): Handle double buffering. - -2010-06-26 Pavel Roskin - - * util/grub.d/10_linux.in: Add support for initrd images on Fedora - 13. - -2010-06-26 Colin Watson - - * docs/grub.texi (Simple configuration): Explain that - GRUB_DISABLE_LINUX_RECOVERY and GRUB_DISABLE_NETBSD_RECOVERY must be - set to `true' to disable their respective recovery entries, not - merely set. - -2010-06-26 Colin Watson - - Make the `source' command slightly faster. - - * normal/main.c (grub_normal_execute): Don't re-read list files when - nested. - -2010-06-23 Colin Watson - - * loader/i386/multiboot_mbi.c (retrieve_video_parameters): Set red - field position and mask size to red fields from mode_info, not - green. - * loader/multiboot_mbi2.c (retrieve_video_parameters): Likewise. - Remove redundant tag->common.framebuffer_type assignment. - Reported by: Seth Goldberg. - -2010-06-23 Colin Watson - - Sync up other versions of the Linux loader with Robert Millan's - change of 2010-01-09, "Make loader output a bit more user-friendly". - - * loader/i386/efi/linux.c (grub_linux_boot): Move debug info to - grub_dprintf(). - (grub_cmd_linux): Likewise. - (grub_cmd_initrd): Likewise. - * loader/i386/ieee1275/linux.c (grub_cmd_linux): Likewise. - * loader/i386/pc/linux.c (grub_cmd_linux): Likewise. - -2010-06-21 Colin Watson - - * kern/efi/mm.c (grub_efi_mm_init): Handle systems with memory maps - larger than MEMORY_MAP_SIZE. - -2010-06-21 BVK Chaitanya - - Fix parallel build. - - * conf/common.rmk: Add grub_script.tab.h as a grub-script-check - dependency. - * script/parser.y: #include grub_script.tab.h header. - -2010-06-20 Vladimir Serbinenko - - Support >3GiB and <16MiB RAM in i386-qemu. - - * kern/i386/qemu/mmap.c (QEMU_CMOS_MEMSIZE2_HIGH): New const. - (QEMU_CMOS_MEMSIZE2_LOW): Likewise. - (grub_lower_mem): Removed. - (grub_upper_mem): Likewise. - (mem_size): Made static. - (above_4g): New variable. - (grub_machine_mmap_init): Detect small mem_size and above_4g. - (grub_machine_mmap_iterate): Order in ascending order and add above_4g - support. - -2010-06-20 Vladimir Serbinenko - - Cirrus 5446 and Bochs video cards support. - - * conf/i386.rmk (pkglib_MODULES): Add video_cirrus.mod and - video_bochs.mod - (video_cirrus_mod_SOURCES): New variable. - (video_cirrus_mod_CFLAGS): Likewise. - (video_cirrus_mod_LDFLAGS): Likewise. - (video_bochs_mod_SOURCES): Likewise. - (video_bochs_mod_CFLAGS): Likewise. - (video_bochs_mod_LDFLAGS): Likewise. - * include/grub/vga.h: New file. - * include/grub/video_fb.h (grub_video_fb_doublebuf_blit_init): Removed. - (grub_video_fb_set_page_t): New type. - (grub_video_fb_setup): New prototype. - (grub_video_fb_swap_buffers): Likewise. - (grub_video_fb_get_info_and_fini): Likewise. - * term/i386/pc/vga_text.c (CRTC_ADDR_PORT): Moved to include/grub/vga.h. - (CRTC_DATA_PORT): Likewise. - (CRTC_CURSOR): Likewise. - (CRTC_CURSOR_ADDR_HIGH): Likewise. - (CRTC_CURSOR_ADDR_LOW): Likewise. - (CRTC_CURSOR_DISABLE): Likewise. - (update_cursor): Use grub_vga_cr_write. - (grub_vga_text_setcursor): Likewise. - * video/bochs.c: New file. - * video/fb/video_fb.c (render_target): Moved into framebuffer variable. - (palette): Likewise. - (palette_size): Likewise. - (framebuffer): New variable. - (grub_video_fb_init): Use 'framebuffer'. - (grub_video_fb_fini): Likewise. - (grub_video_fb_get_info): Likewise. - (grub_video_fb_get_palette): Likewise. - (grub_video_fb_set_palette): Likewise. - (grub_video_fb_set_viewport): Likewise. - (grub_video_fb_get_viewport): Likewise. - (grub_video_fb_map_color): Likewise. - (grub_video_fb_map_rgb): Likewise. - (grub_video_fb_map_rgba): Likewise. - (grub_video_fb_unmap_color): Likewise. - (grub_video_fb_unmap_color_int): Likewise. - (grub_video_fb_fill_rect): Likewise. - (grub_video_fb_blit_bitmap): Likewise. - (grub_video_fb_blit_render_target): Likewise. - (grub_video_fb_scroll): Likewise. - (grub_video_fb_create_render_target): Likewise. - (grub_video_fb_doublebuf_blit_init): Likewise. - (grub_video_fb_set_active_render_target): Handle doublebuffering. - (doublebuf_pageflipping_update_screen): New function. - (doublebuf_pageflipping_init): Likewise. - (grub_video_fb_setup): Likewise. - (grub_video_fb_swap_buffers): Likewise. - (grub_video_fb_get_info_and_fini): Likewise. - * video/i386/pc/vbe.c (framebuffer): Remove all doublebuffering fields. - All users updated. - (doublebuf_pageflipping_commit): Restructured into ... - (doublebuf_pageflipping_set_page): ... this. - (doublebuf_pageflipping_update_screen): Removed. - (doublebuf_pageflipping_init): Likewise. - (double_buffering_init): Likewise. - (grub_video_vbe_setup): Use grub_video_fb_setup. - (grub_video_vbe_swap_buffers): Removed. - (grub_video_vbe_set_active_render_target): Likewise. - (grub_video_vbe_get_active_render_target): Likewise. - (grub_video_vbe_get_info_and_fini): Use grub_video_fb_get_info_and_fini. - (grub_video_vbe_adapter): Use grub_video_fb_swap_buffers, - grub_video_fb_set_active_render_target and - grub_video_fb_get_active_render_target. - * video/i386/pc/vga.c (SEQUENCER_ADDR_PORT): Move to include/grub/vga.h. - (SEQUENCER_DATA_PORT): Likewise. - (MAP_MASK_REGISTER): Likewise. - (CRTC_ADDR_PORT): Likewise. - (CRTC_DATA_PORT): Likewise. - (START_ADDR_HIGH_REGISTER): Likewise. - (START_ADDR_LOW_REGISTER): Likewise. - (GRAPHICS_ADDR_PORT): Likewise. - (GRAPHICS_DATA_PORT): Likewise. - (READ_MAP_REGISTER): Likewise. - (INPUT_STATUS1_REGISTER): Likewise. - (INPUT_STATUS1_VERTR_BIT): Likewise. - (get_map_mask): Use grub_vga_sr_read. - (set_map_mask): Use grub_vga_sr_write. - (set_read_map): Use grub_vga_gr_write. - (set_start_address): Use grub_vga_cr_write. - * video/sm712.c (framebuffer): Remove leftover fields. - -2010-06-20 Colin Watson - - * util/grub-mkconfig.in: Capitalise and export GRUB_PREFIX. Stop - setting GRUB_VIDEO_BACKEND. Make it available as a user override - instead. Replace the gfxterm backend check with a check that - ${GRUB_PREFIX}/video.lst is non-empty. - * util/grub.d/00_header.in: Use GRUB_PREFIX rather than computing it - again. - (load_video): New generated function. Call it before loading - gfxterm rather than loading ${GRUB_VIDEO_BACKEND}. - * util/grub.d/10_linux.in (linux_entry): Call load_video. - * util/grub.d/30_os-prober.in (osx_entry): Likewise. - * docs/grub.texi (Simple configuration): Document - GRUB_VIDEO_BACKEND. - -2010-06-20 Vladimir Serbinenko - - Use video functions in linux and xnu loaders. - - * conf/i386-pc.rmk (xnu_mod_SOURCES): Remove loader/i386/pc/xnu.c. - * conf/x86-efi.rmk (xnu_mod_SOURCES): Remove loader/i386/efi/xnu.c. - * include/grub/i386/xnu.h (grub_xnu_set_video): Removed. - * loader/i386/efi/linux.c (grub_linux_setup_video): Copied from - loader/i386/pc/linux.c. - (grub_linux_boot): Resynced with loader/i386/pc/linux.c. - (find_line_len): Removed. - (find_framebuf): Likewise. - (grub_cmd_linux): Declare grub_linux_boot as possibly returning. - * loader/i386/efi/xnu.c: Removed. - * loader/i386/pc/xnu.c: Moved from here... - * loader/i386/xnu.c: ...here. - - Enable priorities in video drivers. - - * include/grub/video.h (grub_video_adapter_prio_t): New type. - (grub_video_adapter): New field prio. - (grub_video_register): Respect prio when inserting. - * video/efi_gop.c (grub_video_gop_adapter): Add prio. - * video/efi_uga.c (grub_video_uga_adapter): Likewise. - * video/emu/sdl.c (grub_video_sdl_adapter): Likewise. - * video/i386/pc/vbe.c (grub_video_vbe_adapter): Likewise. - * video/i386/pc/vga.c (grub_video_vga_adapter): Likewise. - * video/ieee1275.c (grub_video_ieee1275_adapter): Likewise. - * video/sm712.c (grub_video_sm712_adapter): Likewise. - - Fix SDL driver ID. - - * include/grub/video.h (grub_video_driver_id_t): New value - GRUB_VIDEO_DRIVER_SDL. - * video/emu/sdl.c (grub_video_sdl_adapter): Add id. - -2010-06-17 Colin Watson - - * util/i386/pc/grub-setup.c (usage): Pass an extra `program_name' - argument to printf. - * util/sparc64/ieee1275/grub-setup.c (usage): Likewise. - -2010-06-17 Colin Watson - - * util/i386/pc/grub-setup.c (usage): Fix syntax error. - * util/sparc64/ieee1275/grub-setup.c (usage): Likewise. - -2010-06-17 Colin Watson - - * util/i386/pc/grub-setup.c (usage): Warn against running grub-setup - directly, and recommend grub-install instead. - * util/sparc64/ieee1275/grub-setup.c (usage): Likewise. - -2010-06-17 Colin Watson - - Fix i386-pc prefix handling with nested partitions (Debian bug - #585068). Note that the case where the core image is booted using - multiboot and relocated from its original location still requires - more work. - - * kern/i386/pc/init.c (make_install_device): If the prefix starts - with "(,", fill the boot drive in between those two characters, but - expect that a full partition specification including partition map - names will follow. - * util/i386/pc/grub-setup.c (setup): Unless an explicit prefix was - specified, write a prefix without the drive name but including a - full partition specification. - -2010-06-16 Colin Watson - - * util/grub-mkconfig.in: Ignore non-option arguments, for - compatibility with older versions (before 2010-06-12) which did the - same. In particular, this makes it easier to ship an update-grub - wrapper which is compatible with that used with GRUB Legacy (Debian - bug #586056). - -2010-06-14 Grégoire Sutre - - * Makefile.in (install-local): Use $$file.h2m instead of $$dest.h2m - for manual page generation. - -2010-06-14 Grégoire Sutre - - * po/POTFILES: Remove leftover commands/handler.c. - -2010-06-14 Colin Watson - - * util/grub-mkconfig.in: Remove vestige of old argument parsing that - left this script non-functional. - -2010-06-14 Colin Watson - - * docs/man/grub-emu.h2m: New file. - -2010-06-13 Colin Watson - - * docs/grub.texi (Commands): Document reduced command set in rescue - mode. - (cpuid): New section. - -2010-06-13 Grégoire Sutre - - * kern/emu/hostdisk.c (grub_util_biosdisk_get_grub_dev): Use the - new partition naming style. - * util/grub-install.in: Adapt sed subtitutions in grub-probe calls. - -2010-06-12 BVK Chaitanya - - Add "-o grub.iso" like cmdline options support. - - * util/grub-install.in: Improve cmdline option parsing. - * util/grub-mkconfig.in: Likewise. - * util/grub-mkrescue.in: Likewise. - * util/grub-reboot.in: Likewise. - * util/grub-set-default.in: Likewise. - * util/i386/efi/grub-install.in: Likewise. - * util/ieee1275/grub-install.in: Likewise. - * util/powerpc/ieee1275/grub-mkrescue.in: Likewise. - -2010-06-12 Colin Watson - - * .bzrignore: Ignore 41_custom. - -2010-06-12 Thomas Schmitt - - * util/grub-mkrescue.in: Pass unrecognized options to xorriso. - -2010-06-12 Colin Watson - - Avoid false positives in fs.lst, partmap.lst, and video.lst due to - prototype declarations. - - * genmk.rb (PModule::rule): Define GRUB_LST_GENERATOR when - generating fs, partmap, and video lists. - * include/grub/fs.h (grub_fs_register): Omit prototype if - GRUB_LST_GENERATOR is defined. - * include/grub/partition.h (grub_partition_map_register): Likewise. - * include/grub/video.h (grub_video_register): Likewise. - -2010-06-12 Javier Martín - - * include/grub/types.h: Check for GRUB_CPU_SIZEOF_LONG when appropriate. - -2010-06-12 Thomas Schmitt - - * util/grub-mkrescue.in: Support --xorriso argument. - -2010-06-12 Vladimir Serbinenko - - * util/grub-mkrescue.in: Use -graft-points instead of -pathspecs. - Suggested by: Thomas Schmitt. - -2010-06-12 Vladimir Serbinenko - - * util/grub-mkrescue.in: Add --sort-weight arguments to xorriso. - Suggested by: Thomas Schmitt. - -2010-06-12 Vladimir Serbinenko - - custom.cfg support. - - * conf/common.rmk (grub-mkconfig_SCRIPTS): Add 41_custom. - * util/grub.d/41_custom.in: New file. - -2010-06-12 Colin Watson - - * util/grub-mkrescue.in (make_image): Remove sh module, which has - been merged back into normal. - -2010-06-11 Colin Watson - - * include/grub/efi/uga_draw.h (GRUB_EFI_UGA_GLT_MAX): Rename to ... - (GRUB_EFI_UGA_BLT_MAX): ... this (typo fix). - -2010-06-11 Colin Watson - - * Makefile.in (install-local): Include $(srcdir)/docs/man/$$dest.h2m - when generating manual pages. - * docs/man/grub-bin2h.h2m: New file. - * docs/man/grub-editenv.h2m: New file. - * docs/man/grub-fstest.h2m: New file. - * docs/man/grub-install.h2m: New file. - * docs/man/grub-macho2img.h2m: New file. - * docs/man/grub-mkconfig.h2m: New file. - * docs/man/grub-mkdevicemap.h2m: New file. - * docs/man/grub-mkfont.h2m: New file. - * docs/man/grub-mkimage.h2m: New file. - * docs/man/grub-mkpasswd-pbkdf2.h2m: New file. - * docs/man/grub-mkrelpath.h2m: New file. - * docs/man/grub-mkrescue.h2m: New file. - * docs/man/grub-ofpathname.h2m: New file. - * docs/man/grub-pe2elf.h2m: New file. - * docs/man/grub-probe.h2m: New file. - * docs/man/grub-reboot.h2m: New file. - * docs/man/grub-script-check.h2m: New file. - * docs/man/grub-set-default.h2m: New file. - * docs/man/grub-setup.h2m: New file. - -2010-06-10 Vladimir Serbinenko - - Use FOR_* macros instead of *_iterate whenever possible. - - * commands/handler.c: Removed. - * commands/help.c (grub_cmd_help): Use FOR_COMMANDS. - * commands/minicmd.c (grub_mini_cmd_lsmod): Use FOR_DL_MODULES. - * conf/any-emu.rmk (kernel_img_SOURCES): Remove kern/handler.c. - * conf/common.rmk (script/lexer.c_DEPENDENCIES): Add grub_script.yy.h. - (grub_probe_SOURCES): Remove kern/parser.c. - (util/grub-script-check.c_DEPENDENCIES): Removed. - (grub_script_check_SOURCES): Remove kern/handler.c, kern/parser.c - and grub_script_check_init.c. - (grub_script_check_init.lst): Removed. - (grub_script_check_init.h): Likewise. - (grub_script_check_init.c): Likewise. - (pkglib_MODULES): Remove handler.mod and sh.mod. - (handler_mod_SOURCES): Removed. - (handler_mod_CFLAGS): Likewise. - (handler_mod_LDFLAGS): Likewise. - (normal_mod_SOURCES): Remove normal/handler.c. - Add script/main.c, script/script.c, script/execute.c, - script/function.c, script/lexer.c, grub_script.tab.c - and grub_script.yy.c. - * conf/i386-coreboot.rmk (kernel_img_SOURCES): Remove kern/handler.c. - * conf/i386-ieee1275.rmk (kernel_img_SOURCES): Likewise. - * conf/i386-pc.rmk (kernel_img_SOURCES): Likewise. - (grub_setup_SOURCES): Remove kern/parser.c. - * conf/i386-qemu.rmk (kernel_img_SOURCES): Remove kern/handler.c. - * conf/mips-qemu-mips.rmk (kernel_img_SOURCES): Likewise. - * conf/mips-yeeloong.rmk (kernel_img_SOURCES): Likewise. - * conf/powerpc-ieee1275.rmk (kernel_img_SOURCES): Likewise. - * conf/sparc64-ieee1275.rmk (kernel_img_SOURCES): Likewise. - (grub_setup_SOURCES): Remove kern/parser.c. - * conf/x86-efi.rmk (kernel_img_SOURCES): Remove kern/handler.c. - * gettext/gettext.c (grub_gettext_delete_list): Don't use grub_list_pop. - * include/grub/command.h (grub_command_iterate): Removed. - (FOR_COMMANDS): New macro. - * include/grub/dl.h (grub_dl): New member next. - (grub_dl_iterate): Removed. - (grub_dl_head): New variable declaration. - (FOR_DL_MODULES): New macro. - * include/grub/fs.h: Include list.h. - (grub_fs): Make next first element. - (grub_fs_list): New variable declaration. - (grub_fs_register): Make inline. - (grub_fs_unregister): Likewise. - (grub_fs_iterate): Removed. - (FOR_FILESYSTEMS): New macro. - * include/grub/handler.h: Removed. - * include/grub/list.h (grub_list_hook_t): Removed. - (grub_list_test_t): Likewise. - (grub_list_pop): Likewise. - (grub_list_iterate): Likewise. - (grub_list_insert): Likewise. - (FOR_LIST_ELEMENTS): New macro. - * include/grub/parser.h (grub_parser_class): Removed. - (grub_parser_register): Likewise. - (grub_parser_unregister): Likewise. - (grub_parser_get_current): Likewise. - (grub_parser_set_current): Likewise. - (grub_register_rescue_parser): Likewise. - (grub_rescue_parse_line): New function. - * include/grub/partition.h (FOR_PARTITION_MAPS): Use FOR_LIST_ELEMENTS. - * include/grub/script_sh.h (grub_script_function_list): New variable - declaration. - (FOR_SCRIPT_FUNCTIONS): New macro. - (grub_script_function_iterate): Removed. - (grub_normal_parse_line): New prototype. - * include/grub/term.h (FOR_ACTIVE_TERM_INPUTS): Use FOR_LIST_ELEMENTS. - (FOR_DISABLED_TERM_INPUTS): Likewise. - (FOR_ACTIVE_TERM_OUTPUTS): Likewise. - (FOR_DISABLED_TERM_OUTPUTS): Likewise. - * include/grub/video.h (grub_video_adapter): Move 'next' to first - element. - (grub_video_register): Inline. - (grub_video_unregister): Likewise. - (grub_video_adapter_list): New variable declaration. - (grub_video_iterate): Removed. - (FOR_VIDEO_ADAPTERS): New macro. - * kern/dl.c (grub_dl_list): Removed. All users updated. - (grub_dl_iterate): Removed. - * kern/fs.c (grub_fs_list): Make global. - (grub_fs_register): Removed. - (grub_fs_unregister): Likewise. - (grub_fs_iterate): Likewise. - * kern/handler.c: Removed. - * kern/list.c (grub_list_pop): Removed. - (grub_list_iterate): Likewise. - (grub_list_insert): Likewise. - (grub_named_list_find): Use FOR_LIST_ELEMENTS. - (grub_prio_list_insert): Don't use grub_list_insert. - * kern/main.c (grub_register_rescue_parser): Don't call - grub_register_rescue_parser. - * kern/parser.c (grub_parser_class): Removed. - (grub_parser_execute): Use grub_rescue_parse_line. - * kern/rescue_parser.c (grub_rescue_parse_line): Make global. - (grub_rescue_parser): Removed. - (grub_register_rescue_parser): Likewise. - * kern/rescue_reader.c (grub_rescue_run): Use grub_rescue_parse_line. - * normal/auth.c (is_authenticated): Use FOR_LIST_ELEMENTS. - (grub_auth_check_authentication): Likewise. - * normal/completion.c (iterate_command): Removed. - (grub_normal_do_completion): Use FOR_COMMANDS. - * normal/handler.c: Removed. - * normal/main.c (read_config_file): Remove parser changing. - (grub_normal_execute): Don't call read_handler_list. - (grub_normal_read_line_real): Statically allocate prompt. - (grub_cmdline_run): Use grub_normal_parse_line. - (GRUB_MOD_FINI): Don't call free_handler_list. - * normal/menu_entry.c (run): Likewise. - * script/function.c (grub_script_function_list): Make global. - (grub_script_function_iterate): Removed. - * script/main.c (grub_normal_parse_line): Make global. - (grub_sh_parser): Removed. - (GRUB_MOD_INIT): Likewise. - (GRUB_MOD_FINI): Likewise. - * tests/lib/functional_test.c (grub_functional_test): Use - FOR_LIST_ELEMENTS. - * tests/lib/test.c (free_failures): Don't use grub_list_pop. - (grub_test_run): Use FOR_LIST_ELEMENTS. - * tests/lib/unit_test.c (main): Likewise. - * util/deviceiter.c (grub_util_iterate_devices): Don't use - grub_list_pop. - * util/grub-fstest.c (grub_term_input_class): Removed. - (grub_term_output_class): Likewise. - * util/grub-probe.c: Likewise. - * util/i386/pc/grub-setup.c: Likewise. - * util/sparc64/ieee1275/grub-setup.c: Likewise. - * util/grub-script-check.c (main): Don't call grub_init_all and - grub_fini_all. - * video/video.c (grub_video_adapter_list): Make global. - (grub_video_register): Removed. - (grub_video_unregister): Likewise. - (grub_video_iterate): Likewise. - -2010-06-09 Vladimir Serbinenko - - * docs/grub.texi (Vendor power-on button): Add Asus EeePC 1005PE as - reported by Henrique Ferreiro. - -2010-06-09 Robert Millan - - * util/grub.d/10_linux.in: Prefer compressed images over non-compressed - ones, when both are available. - -2010-06-08 Grégoire Sutre - - Make --version uniform and avoid hard-coded program name. - - * util/grub-mkimage.c (main): Use `program_name' instead of - hard-coded string. - * util/i386/pc/grub-setup.c (main): Likewise. - * util/sparc64/ieee1275/grub-setup.c (parse_options): Likewise. - * util/grub-install.in: Save the basename of $0 in $self, and use the - latter in informational messages. Use the same format for --version - as the binary programs. - * util/grub-mkconfig.in: Likewise. - * util/grub-mkrescue.in: Likewise. - * util/grub-reboot.in: Likewise. - * util/grub-set-default.in: Likewise. - * util/i386/efi/grub-install.in: Likewise. - * util/ieee1275/grub-install.in: Likewise. - * util/powerpc/ieee1275/grub-mkrescue.in: Likewise. - -2010-06-08 Grégoire Sutre - - * util/i386/pc/grub-setup.c (setup): Use absolute offsets for start of - embedding area. Use <= instead of == when checking for non-emptiness. - -2010-06-08 Grégoire Sutre - - * configure.ac: Add `.' to the directories searched for unifont. - -2010-06-08 Colin Watson - - * .bzrignore: Add ascii.bitmaps, ascii.h, grub_script.yy.c, and - grub_script.yy.h. - -2010-06-08 Colin Watson - - * docs/grub.texi (History): Expand to cover GRUB 2. - (Serial terminal): Refer to `terminal_input' and `terminal_output' - commands, not `terminal'. - (serial): Likewise. - (terminal_input): New section. - (terminal_output): New section. - (uppermem): New section (stub). - (Obtaining and Building GRUB): Refer to Bazaar, not Subversion. - -2010-06-08 Colin Watson - - * docs/grub.texi (Security): Menu entries are unrestricted by - default, not restricted to superusers as I had previously thought. - Reword to account for this. - -2010-06-07 Colin Watson - - * kern/emu/misc.c (device_mapper_null_log): New function. - (grub_device_mapper_supported): New function. - * include/grub/emu/misc.h (grub_device_mapper_supported): Add - prototype. - * kern/emu/hostdisk.c (find_partition_start): Check whether - device-mapper is supported before trying to use it. - * util/deviceiter.c (grub_util_iterate_devices): Likewise. - -2010-06-07 Colin Watson - - * docs/grub.texi (Naming convention): Use GRUB 2 syntax. - (File name syntax): Likewise. - (help): --all is no longer supported in GRUB 2. Be more precise - about pattern matching. - -2010-06-07 Colin Watson - - * normal/completion.c (grub_normal_do_completion): When completing - arguments to "set" and the current word contains an equals sign, - skip to after the equals sign before starting completion. - -2010-06-07 Colin Watson - - * fs/i386/pc/pxe.c (grub_pxe_open): Fix parsing of gateway_ip. - -2010-06-07 Colin Watson - - * docs/grub.texi (Network): New section. - (Device syntax): The network device is called `(pxe)' in GRUB 2, not - `(nd)' as in GRUB Legacy. - (pxe_unload): New section. - -2010-06-07 Colin Watson - - * docs/grub.texi (Troubleshooting): `echo' is not usually available - in the rescue shell, so recommend using `set' instead. Thanks, - Jordan Uggla. - -2010-06-07 Colin Watson - - * docs/grub.texi (Filesystem): Refer to `search' instead of `find'. - (password): New section. - (password_pbkdf2): New section. - (search): New section. - (Security): New section. - (Troubleshooting): New section, currently very incomplete. - (Invoking grub-mkpasswd-pbkdf2): New section. - (Internals): New section, currently very incomplete. - -2010-06-07 Colin Watson - - * util/grub.d/00_header.in: Add some more quoting (of - "${prev_saved_entry}" and "${boot_once}") needed to make savedefault - work again. - Reported by: Mario 'BitKoenig' Holbe (Debian bug #584812). - -2010-06-07 Colin Watson - - * util/grub-mkpasswd-pbkdf2.c (main): Rename top-level `c' variable - to `count', fixing variable shadowing that broke the -c option. - -2010-06-05 Colin Watson - - * util/grub.d/00_header.in: Quote values assigned to `saved_entry', - in case they contain spaces. - -2010-06-04 Colin Watson - - * util/grub-mkconfig_lib.in (prepare_grub_to_access_device): Prepend - "part_" to partmap module names, in line with grub-install. - Reported by: JindÅ™ich MakoviÄka (Debian bug #584426). - -2010-06-04 Colin Watson - - * util/grub-mkimage.c: Make target-related error messages slightly - more helpful; -O talks about "format". Explicitly point to the use - of -O if no target is specified. - Reported by: Didier Raboud (Debian bug #584415). - -2010-06-03 Colin Watson - - * INSTALL: Document several build requirements for optional features - (libdevmapper, ncurses, libusb, SDL, FreeType, GNU Unifont). - -2010-06-02 Grégoire Sutre - - * kern/emu/hostdisk.c (convert_system_partition_to_system_disk) - [__NetBSD__]: Handle all device names matching /dev/r[a-z]+[0-9][a-z]. - (find_partition_start) [__NetBSD__]: Correct error messages for NetBSD. - -2010-06-02 Colin Watson - - * docs/grub.texi (Simple configuration): Fix copy-and-paste typo. - Thanks to Jordan Uggla for spotting this. - -2010-06-02 AleÅ¡ Nesrsta - - Finally make USB usable. - - * bus/usb/ohci.c (grub_ohci_reg_t): Add missing values. - (GRUB_OHCI_RHUB_PORT_POWER_MASK): New macro. - (GRUB_OHCI_RHUB_PORT_ALL_POWERED): Likewise. - (GRUB_OHCI_REG_FRAME_INTERVAL_FSMPS_MASK): Likewise. - (GRUB_OHCI_REG_FRAME_INTERVAL_FSMPS_SHIFT): Likewise. - (GRUB_OHCI_REG_FRAME_INTERVAL_FI_SHIFT): Likewise. - (GRUB_OHCI_FSMPS): Likewise. - (GRUB_OHCI_PERIODIC_START): Likewise. - (GRUB_OHCI_FRAME_INTERVAL): Likewise. - (GRUB_OHCI_SET_PORT_ENABLE): Likewise. - (GRUB_OHCI_CLEAR_PORT_ENABLE): Likewise. - (GRUB_OHCI_SET_PORT_RESET): Likewise. - (GRUB_OHCI_SET_PORT_RESET_STATUS_CHANGE): Likewise. - * bus/usb/ohci.c (grub_ohci_pci_iter): Various important fixups. - (grub_ohci_transaction): Likewise. - (grub_ohci_transfer): Improve condition detection algorithms. - Handle toggle property. Program the transactions correctly. - Improve error handling. Various important fixups. - (grub_ohci_portstatus): Put register writes in right order. - * bus/usb/uhci.c (grub_free_queue): Compute last_trans. - (grub_uhci_transfer): Don't show "failed" message on success. - * bus/usb/usb.c (grub_usb_set_configuration): Zero-fill whole "toggle" - array. - (grub_usb_device_initialize): Read first 8 bytes of descriptor to - determine its size. - * bus/usb/usbtrans.c (grub_usb_control_msg): Use descdev.maxsize0 even - before initialization is completed. Use IN direction for empty - transfers. Use last_trans and compute toggle. - * include/grub/usbtrans.h (grub_usb_transfer): New field last_trans. - (GRUB_USB_FEATURE_ENDP_HALT): Correct the value. - (GRUB_USB_FEATURE_DEV_REMOTE_WU): Likewise. - (GRUB_USB_FEATURE_TEST_MODE): Likewise. - * include/grub/usb.h (grub_usb_err_t): New value GRUB_USB_ERR_UNRECOVERABLE. - (grub_usb_device): Increase toggle to 256. - (grub_usbms_subclass_t): New values GRUB_USBMS_SUBCLASS_RBC, - GRUB_USBMS_SUBCLASS_MMC2, GRUB_USBMS_SUBCLASS_UFI and - GRUB_USBMS_SUBCLASS_SFF8070. - * include/grub/scsicmd.h (grub_scsi_test_unit_ready): New structure. - (grub_scsi_inquiry): New member page and alloc_length. - (grub_scsi_request_sense): New structure. - (grub_scsi_request_sense_data): Likewise. - (grub_scsi_read_capacity): New fields logical_block_addr, PMI and - control. - * disk/scsi.c (grub_scsi_request_sense): New function. - (grub_scsi_test_unit_ready): Likewise. - (grub_scsi_inquiry): Fill new fields. - (grub_scsi_read_capacity): Likewise. - (grub_scsi_read10): Add request sense at the end. - (grub_scsi_read12): Likewise. - (grub_scsi_write10): Likewise. - (grub_scsi_write12): Likewise. - (grub_scsi_open): Add Test Unit Ready. - * disk/usbms.c (grub_usbms_finddevs): Check configcnt. - Support additional subclasses. Con't clear halt yet. Activate the - proper config. Calculate LUNs correctly. - (grub_usbms_transfer): Various important fixups. - -2010-06-02 Vladimir Serbinenko - - * bus/pci.c (grub_pci_iterate) [GRUB_MACHINE_MIPS_YEELOONG]: Skip ghosts. - * bus/usb/ohci.c (grub_ohci_portstatus): Handle R/WC correctly. - (grub_ohci_fini_hw): New function. - (grub_ohci_restore_hw): Likewise. - (GRUB_MOD_INIT(ohci)): Register preboot hook. - (GRUB_MOD_FINI(ohci)): Shutdown OHCI. - * term/usb_keyboard.c: Remove include of grub/machine/console.h. - -2010-06-02 Vladimir Serbinenko - - Dedicated DMA allocations. - - * bus/pci.c (grub_memalign_dma32): New function - (grub_dma_free): Likewise. - (grub_dma_get_virt): Likewise. - (grub_dma_get_phys): Likewise. - * bus/usb/ohci.c (grub_ohci): New members hcca_addr and hcca_chunk. - (grub_ohci_pci_iter): Use dma32_alloc. - (grub_ohci_transfer): Likewise. - * bus/usb/usbtrans.c (grub_usb_control_msg): Likewise. - (grub_usb_bulk_readwrite): Likewise. - * include/grub/pci.h: Add declarations. - -2010-06-02 Vladimir Serbinenko - - CS5536 support. - - * bus/cs5536.c: New file. - * bus/usb/ohci.c (grub_ohci_pci_iter): Check for CS5536. - * conf/i386.rmk (pkglib_MODULES): Add cs5536.mod. - (cs5536_mod_SOURCES): New variable. - (cs5536_mod_CFLAGS): Likewise. - (cs5536_mod_LDFLAGS): Likewise. - * conf/mips-yeeloong.rmk (kernel_img_HEADERS): Add cs5536.h and - machine/pci.h. - (kernel_img_SOURCES): Add bus/cs5536.c. - (pkglib_MODULES): Add usb.mod, usbtest.mod, ohci.mod, usbms.mod and - usb_keyboard.mod. - (usb_mod_SOURCES): New variable. - (usb_mod_CFLAGS): New variable. - (usb_mod_LDFLAGS): New variable. - (usbtest_mod_SOURCES): New variable. - (usbtest_mod_CFLAGS): New variable. - (usbtest_mod_LDFLAGS): New variable. - (ohci_mod_SOURCES): New variable. - (ohci_mod_CFLAGS): New variable. - (ohci_mod_LDFLAGS): New variable. - (usbms_mod_SOURCES): New variable. - (usbms_mod_CFLAGS): New variable. - (usbms_mod_LDFLAGS): New variable. - (usb_keyboard_mod_SOURCES): New variable. - (usb_keyboard_mod_CFLAGS): New variable. - (usb_keyboard_mod_LDFLAGS): New variable. - * include/grub/smbus.h: New file. - * include/grub/cs5536.h: New file. - -2010-06-02 Colin Watson - - * util/grub.d/00_header.in: Add safety check to make sure that - ${locale_dir} exists before trying to probe it. - -2010-06-02 Colin Watson - - * docs/grub.texi (SCO UnixWare): Remove, at Vladimir's request and - per the GNU Coding Standards; this is now too obscure to be worth - documenting. - (QNX): Likewise. - (chainloader): Remove cross-reference to `SCO UnixWare'. - -2010-06-02 Colin Watson - - * docs/grub.texi (Chain-loading): New section. - (DOS/Windows): New section, borrowed from GRUB Legacy with details - adjusted for GRUB 2. - (SCO UnixWare): Likewise. - (QNX): Likewise. - (chainloader): Add reference to `Block list syntax'. - (drivemap): New section. - (parttool): New section. - -2010-06-02 Colin Watson - - * docs/grub.texi (GNU GRUB manual): Remove reference to `Invoking - the grub shell'. - (Installation): Add reference to `Making a GRUB bootable CD-ROM'. - (Installing GRUB using grub-install): Remove reference to the grub - shell; mention `grub-mkimage' and `grub-setup' instead. - (Invoking grub-install): Likewise. - (Interface): Add reference to `Menu entry editor'. - (serial): Remove `--device' option. - -2010-06-02 Colin Watson - - * docs/grub.texi (Configuration): New section, documenting - configuration file generation using grub-mkconfig. I've left a slot - for documenting the full shell scripting format but have not yet - started on writing that up. - (Invoking grub-mkconfig): New section. - -2010-06-02 Colin Watson - - * docs/grub.texi (direntry): Remove grub-terminfo reference. - (GNU GRUB manual): Likewise. - (General commands): Update description of `terminfo' for GRUB 2. - -2010-06-02 Colin Watson - - * commands/gptsync.c (grub_cmd_gptsync): Fix typos. - (GRUB_MOD_INIT): Fix capitalisation. - * docs/grub.texi (Command-line and menu entry commands): Document - gettext and gptsync commands. - -2010-06-02 Colin Watson - - * conf/any-emu.rmk (kernel_img_SOURCES) [!x86]: Include - kern/$(target_cpu)/cache.S even if TARGET_NO_MODULES = yes. - -2010-06-01 Colin Watson - - Add btrfs probing support, currently only in the single-device case. - - * kern/emu/getroot.c (find_root_device_from_mountinfo): New - function. - (grub_guess_root_device): Call find_root_device_from_mountinfo - before looking in /dev. - -2010-05-31 Vladimir Serbinenko - - * disk/i386/pc/biosdisk.c (grub_biosdisk_open): Use - GRUB_DISK_SIZE_UNKNOWN. - * disk/ieee1275/ofdisk.c (grub_ofdisk_open): Likewise. - -2010-05-31 Jiro SEKIBA - - * include/grub/disk.h (GRUB_DISK_SIZE_UNKNOWN): New macro. - * fs/nilfs.c: Support 2nd super block in case 1st one is accidently - corrupted or not synced properly. - -2010-05-31 Vladimir Serbinenko - - * normal/main.c (grub_normal_add_menu_entry): Avoid going out of args. - Reported by: Seth Goldberg. - -2010-05-31 Vladimir Serbinenko - - * loader/multiboot_mbi2.c (grub_multiboot_make_mbi): Fix incorrect - addition of dest. - Reported by: Seth Goldberg. - -2010-05-31 Vladimir Serbinenko - - * commands/setpci.c (grub_setpci_iter): Fix an incorrect function check. - Reported by: Seth Goldberg. - -2010-05-31 Vladimir Serbinenko - - * loader/multiboot_elfxx.c (grub_multiboot_load_elfXX) [__mips]: Check - 64-bit address as signed on MIPS. - -2010-05-28 Colin Watson - - * configure.ac: AC_PROG_LEX sets LEX to ":" if lex is missing, not - to the empty string. - -2010-05-28 BVK Chaitanya - - Fix grub-emu issues on NetBSD, with gcc 4.1.3. - - * conf/any-emu.rmk: Remove unnecessary COMMON_CFLAGS. - * include/grub/emu/misc.h (canonicalize_file_name): New Prototype. - * kern/misc.c (__enable_execute_stack): Disable on - GRUB_MACHINE_EMU. - -2010-05-28 Colin Watson - - Make grub-probe work with symbolic links under /dev/mapper as well - as with real block devices. The Linux world seems to be (at best) - in transition here, and GRUB shouldn't get caught in the middle. - - * kern/emu/getroot.c (find_root_device): Follow symbolic links under - /dev/mapper. - -2010-05-27 Colin Watson - - * util/grub-script-check.c (main): Ensure defined behaviour on empty - input files (in which case exit zero). - -2010-05-27 Colin Watson - - * kern/emu/misc.c (canonicalize_file_name): realpath can still - return NULL for various reasons even if it has a maximum-length - buffer: for example, there might be a symlink loop, or the path - might exceed PATH_MAX. If this happens, return NULL. - -2010-05-27 Robert Millan - - * util/grub-mkconfig_lib.in (prepare_grub_to_access_device): Insert - partmap module to handle cross-partmap setups. - Reported by Orestes Mas. Gràcies! - -2010-05-27 Colin Watson - - * util/grub-mkrescue.in: Initialise override_dir rather than - assuming that it's unset or empty in the environment. - -2010-05-26 Grégoire Sutre - - * kern/emu/hostdisk.c (find_partition_start) [__NetBSD__]: Renamed - variable index into p_index to suppress a warning with -Wshadow. - -2010-05-25 BVK Chaitanya - - * INSTALL: Added flex >= 2.5.35 requirement. - -2010-05-23 Vladimir Serbinenko - - * commands/usbtest.c (grub_usb_get_string): Properly support UTF-16. - -2010-05-23 Vladimir Serbinenko - - cmostest support. - - * commands/i386/cmostest.c: New file. - * conf/i386-coreboot.rmk (pkglib_MODULES): Add cmostest.mod. - (cmostest_mod_SOURCES): New variable. - (cmostest_mod_CFLAGS): Likewise. - (cmostest_mod_LDFLAGS): Likewise. - * conf/i386-pc.rmk: Likewise. - * docs/grub.texi (Vendor power-on keys): New section. - * util/grub-mkconfig.in: export GRUB_DEFAULT_BUTTON, - GRUB_HIDDEN_TIMEOUT_BUTTON, GRUB_TIMEOUT_BUTTON - and GRUB_BUTTON_CMOS_ADDRESS. - * util/grub.d/00_header.in: Handle powering-on by separate button. - -2010-05-23 Vladimir Serbinenko - - * gfxmenu/gui_list.c (draw_menu): Don't add scrollbar width to padding. - Removed drawing_scrollbar argument. All users updated - Fixes #29792. - Reported by Jo Shields - -2010-05-23 Vladimir Serbinenko - - * gfxmenu/view.c (grub_gfxmenu_draw_terminal_box): Apply only to current - buffer since gfxterm handles double repaint. - -2010-05-23 Vladimir Serbinenko - - * gfxmenu/gfxmenu.c (grub_gfxmenu_try): Change viewport on both buffers. - * term/gfxterm.c (real_scroll): Likewise. - -2010-05-21 Vladimir Serbinenko - - * kern/i386/pc/mmap.c (grub_machine_mmap_iterate): Zero-fill entry - before calling BIOS. - -2010-05-21 Vladimir Serbinenko - - * include/grub/i18n.h: Always enable grub_gettext. - -2010-05-21 Vladimir Serbinenko - - * kern/i386/pc/init.c (make_install_device): Fix a leftover usage of old - partition naming style. - -2010-05-21 Colin Watson - - * util/grub-mkconfig.in: Fix handling of -o so that it works when - not the first option. - -2010-05-20 Colin Watson - - * util/grub-mkrelpath.c (usage): Remove excess apostrophe. - -2010-05-20 Colin Watson - - * util/misc.c: Move inclusion of to ... - * kern/emu/misc.c: ... here. Needed for canonicalize_file_name. - -2010-05-20 Grégoire Sutre - - * kern/emu/hostdisk.c (grub_util_biosdisk_get_grub_dev) [__NetBSD__]: - Fix merge error in NetBSD code. - (find_partition_start) [__NetBSD__]: Likewise. - -2010-05-19 BVK Chaitanya - - Fix grub-mkrescue usage unit testing. - - * tests/util/grub-shell.in: Use --grub-mkimage with grub-mkrescue. - -2010-05-18 Christian Franke - - * util/grub.d/10_windows.in: Use path names instead of - drive letters to prevent warning from Cygwin 1.7. - Add drivemap command to menuentry if needed. - -2010-05-18 Justus Winter <4winter@informatik.uni-hamburg.de> - - * util/grub.d/10_hurd.in: Include all gnumach* kernels, not only - gnumach and gnumach.gz. - -2010-05-18 Vladimir Serbinenko - - * include/grub/i18n.h (gettext): Inline instead of using #define. - (grub_gettext): Likewise. - (_): Likewise. - -2010-05-18 Vladimir Serbinenko - - * Makefile.in (CPPFLAGS): Replace -DGRUB_LIBDIR with - -DGRUB_PKGLIBROOTDIR= and prepend @PACKAGE_TARNAME@. All users updated. - * util/grub-mkimage.c (image_targets): Add i386-multiboot. - (main): Add a slash after pkglibdirroot. - -2010-05-18 Vladimir Serbinenko - - * util/grub-install.in: Add missing "in" keyword. - -2010-05-18 Vladimir Serbinenko - - * util/grub-mkrescue.in: Remove -O i386-pc duplication. - Reported by: Seth Goldberg. - -2010-05-18 Vladimir Serbinenko - - * po/POTFILES: Rename util/grub-mkrawimage.c to util/grub-mkimage.c. - -2010-05-18 Colin Watson - - * configure.ac: Check for Linux device-mapper support. - - * util/hostdisk.c (device_is_mapped): New function. - (find_partition_start): New function, partly broken out from - linux_find_partition and grub_util_biosdisk_get_grub_dev but with - device-mapper support added. - (linux_find_partition): Use find_partition_start. - (convert_system_partition_to_system_disk): Add `st' argument. - Support Linux /dev/mapper/* devices if device-mapper support is - available; only DM-RAID devices are understood at present. - (find_system_device): Add `st' argument. Pass it to - convert_system_partition_to_system_disk. - (grub_util_biosdisk_get_grub_dev): Pass stat result to - find_system_device and convert_system_partition_to_system_disk. Use - find_partition_start. - - * conf/common.rmk (grub_mkdevicemap_SOURCES): Add kern/env.c, - kern/err.c, kern/list.c, kern/misc.c, and kern/emu/mm.c. - * util/deviceiter.c [__linux__]: Define MINOR. - (grub_util_iterate_devices): Add support for DM-RAID disk devices. - * util/mkdevicemap.c (grub_putchar): New function. - (grub_getkey): New function. - (grub_refresh): New function. - (main): Set debug=all if -v -v is used. - -2010-05-18 Colin Watson - - Fix build with non-GNU libcs. - - * util/misc.c (canonicalize_file_name): Move to ... - * kern/emu/misc.c (canonicalize_file_name): ... here. Needed by - grub_make_system_path_relative_to_its_root. - -2010-05-18 Colin Watson - - * util/grub-mkrescue.in: Sync up with grub-install in terms of how - we handle finding grub-mkimage. Default to finding grub-mkimage in - ${bindir} with program_transform_name applied, and provide a - --grub-mkimage option to override this. - -2010-05-17 Vladimir Serbinenko - - Remove grub-mkisofs. - - * conf/common.rmk (bin_UTILITIES): Remove grub-mkisofs. - (grub_mkisofs_SOURCES): Removed. - (grub_mkisofs_CFLAGS): Removed. - * util/mkisofs/defaults.h: Removed. - * util/mkisofs/eltorito.c: Likewise. - * util/mkisofs/exclude.h: Likewise. - * util/mkisofs/hash.c: Likewise. - * util/mkisofs/include/: Likewise. - * util/mkisofs/include/fctldefs.h: Likewise. - * util/mkisofs/include/mconfig.h: Likewise. - * util/mkisofs/include/prototyp.h: Likewise. - * util/mkisofs/include/statdefs.h: Likewise. - * util/mkisofs/iso9660.h: Likewise. - * util/mkisofs/joliet.c: Likewise. - * util/mkisofs/match.c: Likewise. - * util/mkisofs/match.h: Likewise. - * util/mkisofs/mkisofs.c: Likewise. - * util/mkisofs/mkisofs.h: Likewise. - * util/mkisofs/msdos_partition.h: Likewise. - * util/mkisofs/multi.c: Likewise. - * util/mkisofs/name.c: Likewise. - * util/mkisofs/rock.c: Likewise. - * util/mkisofs/tree.c: Likewise. - * util/mkisofs/write.c: Likewise. - -2010-05-17 Vladimir Serbinenko - - Unify grub-mkimage accross platforms. - - * Makefile.in (CPPFLAGS): Set GRUB_LIBDIR to $(libdir). - * conf/common.rmk (bin_UTILITIES): Removed grub-mkelfimage. - (grub_mkelfimage_SOURCES): Removed. - (util/elf/grub-mkimage.c_DEPENDENCIES): Renamed to .. - (util/grub-mkimage.c_DEPENDENCIES): .. this. - (bin_UTILITIES): Add grub-mkimage. - (grub_mkimage_SOURCES): New variable. - (kernel_img_HEADERS): Remove machine/kernel.h. - * conf/i386-pc.rmk (pkglib_IMAGES): Remove kernel.img. - (pkglib_PROGRAMS): Add kernel.img. - (kernel_img_HEADERS): Add machine/kernel.h. - (kernel_img_FORMAT): Removed. - (bin_UTILITIES): Remove grub-mkimage. - (grub_mkimage_SOURCES): Removed. - (grub_mkimage_CFLAGS): Likewise. - (util/grub-mkrawimage.c_DEPENDENCIES): Likewise. - * conf/i386-qemu.rmk (pkglib_IMAGES): Remove kernel.img. - (pkglib_PROGRAMS): Add kernel.img. - (bin_UTILITIES): Remove grub-mkimage. - (grub_mkimage_SOURCES): Removed. - (grub_mkimage_CFLAGS): Likewise. - (util/grub-mkrawimage.c_DEPENDENCIES): Likewise. - * conf/mips-qemu-mips.rmk (pkglib_IMAGES): Remove kernel.img. - (pkglib_PROGRAMS): Add kernel.img. - * conf/mips-yeeloong.rmk (pkglib_IMAGES): Remove kernel.img. - (pkglib_PROGRAMS): Add kernel.img. - * conf/mips.rmk (bin_UTILITIES): Remove grub-mkimage. - (grub_mkimage_SOURCES): Removed. - (grub_mkimage_CFLAGS): Likewise. - (util/grub-mkrawimage.c_DEPENDENCIES): Likewise. - * conf/sparc64-ieee1275.rmk (pkglib_IMAGES): Remove kernel.img. - (pkglib_PROGRAMS): Add kernel.img. - (bin_UTILITIES): Remove grub-mkimage. - (grub_mkimage_SOURCES): Removed. - (grub_mkimage_CFLAGS): Likewise. - (util/grub-mkrawimage.c_DEPENDENCIES): Likewise. - * conf/x86-efi.rmk (bin_UTILITIES): Remove grub-mkimage. - (grub_mkimage_SOURCES): Removed. - (grub_mkimage_CFLAGS): Likewise. - (util/grub-mkrawimage.c_DEPENDENCIES): Likewise. - * configure.ac (machine_CFLAGS): Add "-DMACHINE". - * include/grub/efi/pe32.h (grub_pe32_optional_header): Split into ... - (grub_pe32_optional_header): ... this. - (grub_pe64_optional_header): ... and this. All users updated. - (GRUB_PE32_PE32_MAGIC): Split into .. - (GRUB_PE32_PE32_MAGIC): .. this. - (GRUB_PE32_PE64_MAGIC): .. and this. - (GRUB_PE32_SIGNATURE_SIZE): New definition. - * include/grub/elf.h (PT_GNU_STACK): New definition. - * include/grub/i386/coreboot/kernel.h: Merged into include/grub/offsets.h. All users updated. - * include/grub/i386/efi/kernel.h: Likewise. - * include/grub/i386/kernel.h: Likewise. - * include/grub/i386/pc/kernel.h: Likewise. - * include/grub/i386/qemu/boot.h: Likewise. - * include/grub/mips/kernel.h: Likewise. - * include/grub/mips/qemu-mips/kernel.h: Likewise. - * include/grub/powerpc/ieee1275/kernel.h: Likewise. - * include/grub/powerpc/kernel.h: Likewise. - * include/grub/sparc64/ieee1275/boot.h: Likewise. - * include/grub/sparc64/ieee1275/kernel.h: Likewise. - * include/grub/sparc64/kernel.h: Likewise. - * include/grub/x86_64/efi/kernel.h: Likewise. - * include/grub/x86_64/kernel.h: Likewise. - * include/grub/offsets.h: New file. - * include/grub/kernel.h (grub_module_info): Split into ... - (grub_module_info32): ... this. - (grub_module_info64): ... and this. - * include/grub/i386/pc/boot.h (GRUB_BOOT_MACHINE_KERNEL_SEG): Moved from here ... - * include/grub/offsets.h (GRUB_BOOT_I386_PC_KERNEL_SEG): ... here. - (grub_boot_blocklist): Moved from here ... - * include/grub/offsets.h (grub_pc_bios_boot_blocklist): ... here. - * include/grub/i386/pc/memory.h (GRUB_MEMORY_MACHINE_UPPER): Moved from here. - * include/grub/offsets.h (GRUB_MEMORY_I386_PC_UPPER): .. here. - * include/grub/types.h (grub_target_to_host16): Removed. - (grub_target_to_host32): Likewise. - (grub_target_to_host64): Likewise. - (grub_host_to_target16): Likewise. - (grub_host_to_target32): Likewise. - (grub_host_to_target64): Likewise. - (grub_host_to_target_addr): Likewise. - - Support grub-mkrescue for efi, coreboot and qemu. - - * conf/x86-efi.rmk (bin_SCRIPTS): Add grub-mkrescue. - * kern/efi/init.c (grub_efi_set_prefix): Handle baked in prefix. - * util/elf/grub-mkimage.c: Merged into util/grub-mkimage.c. - * util/grub-mkrawimage.c: Moved from here ... - * util/grub-mkimage.c: ... here. All users updated. - (ALIGN_ADDR): Use image_target. - (TARGET_NO_FIELD): New const. - (image_target_desc): New type. - (image_targets): New array. - (grub_target_to_host64): Use image_target. - (grub_target_to_host32): Likewise. - (grub_target_to_host16): Likewise. - (grub_host_to_target64): Likewise. - (grub_host_to_target32): Likewise. - (grub_host_to_target16): Likewise. - (grub_host_to_target_addr): Likewise. - (generate_image): Handle multiimage. - (main): Require -O parameter. All users updated. - * util/grub-mkimagexx.c: New file. Based on util/grub-mkrawimage.c and - util/efi/grub-mkimage.c - * util/grub-mkrescue.in: Handle coreboot, efi and qemu. - New option --rom-directory. - Use xorriso. - * util/i386/efi/grub-mkimage.c: Removed. - * util/i386/pc/grub-setup.c (grub_target_to_host16): New definition. - (grub_target_to_host32): Likewise. - (grub_target_to_host64): Likewise. - (grub_host_to_target16): Likewise. - (grub_host_to_target32): Likewise. - (grub_host_to_target64): Likewise. - * util/sparc64/ieee1275/grub-setup.c (grub_target_to_host16): New definition. - (grub_target_to_host32): Likewise. - (grub_target_to_host64): Likewise. - (grub_host_to_target16): Likewise. - (grub_host_to_target32): Likewise. - (grub_host_to_target64): Likewise. - -2010-05-17 BVK Chaitanya - - Source tree is reorganized for emu build. - - * include/grub/util/console.h: Move from here... - * include/grub/emu/console.h: ...to here. - * include/grub/util/getroot.h: Move from here... - * include/grub/emu/getroot.h: ...to here. - * include/grub/util/hostdisk.h: Move from here... - * include/grub/emu/hostdisk.h: ...to here. - * util/console.c: Move from here... - * kern/emu/console.c: ...to here. - * util/getroot.c: Move from here... - * kern/emu/getroot.c: ...to here. - * util/grub-emu.c: Move from here... - * kern/emu/main.c: ...to here. - * util/hostdisk.c: Move from here... - * kern/emu/hostdisk.c: ...to here. - * util/hostfs.c: Move from here... - * kern/emu/hostfs.c: ...to here. - * util/mm.c: Move from here... - * kern/emu/mm.c: ...to here. - * util/pci.c: Move from here... - * bus/emu/pci.c: ...to here. - * util/sdl.c: Move from here... - * video/emu/sdl.c: ...to here. - * util/time.c: Move from here... - * kern/emu/time.c: ...to here. - * util/usb.c: Move from here... - * bus/usb/emu/usb.c: ...to here. - - * include/grub/emu/misc.h: New header for grub-emu functions. - * kern/emu/misc.c: grub-emu functions separated from util/misc.c - - * conf/any-emu.rmk: Rule updates for above renames. - * conf/common.rmk: Likewise. - * conf/i386-pc.rmk: Likewise. - * conf/i386-qemu.rmk: Likewise. - * conf/mips.rmk: Likewise. - * conf/sparc64-ieee1275.rmk: Likewise. - * conf/x86-efi.rmk: Likewise. - - * disk/lvm.h: #include updates for above renames. - * util/grub-mkrelpath.c: Likewise. - * util/grub-probe.c: Likewise. - * util/i386/pc/grub-setup.c: Likewise. - * util/sparc64/ieee1275/grub-setup.c: Likewise. - * kern/emu/console.c: Likewise. - * kern/emu/getroot.c: Likewise. - * kern/emu/hostdisk.c: Likewise. - * kern/emu/main.c: Likewise. (was grub-emu.c earlier) - - * include/grub/dl.h: Remove grub_dl_{ref,unref}. - * include/grub/util/misc.h: Move grub-emu functions to emu/misc.h. - * kern/dl.c: Handle null mod in grub_dl_{ref,unref}. - * util/misc.c: Remove grub-emu functions. - -2010-05-13 Vladimir Serbinenko - - Fix gfxmenu crash. - Reported by: Thorsten Grützmacher. - - * gfxmenu/gui_circular_progress.c (circprog_destroy): Unregister - timeout hook. - (circprog_set_property): Register and unregister timeout hook. - * gfxmenu/gui_label.c (grub_gui_label): New fields template and value. - (label_destroy): Free template. and unregister hook. - (label_set_state): New function. - (label_set_property): Handle templates and hooks. - * gfxmenu/gui_progress_bar.c (progress_bar_destroy): Unregister - timeout hook. - (progress_bar_set_property): Register and unregister timeout hook. - * gfxmenu/view.c (TIMEOUT_COMPONENT_ID): Move from here ... - * include/grub/gui.h (GRUB_GFXMENU_TIMEOUT_COMPONENT_ID): ...to here - * gfxmenu/view.c (grub_gfxmenu_timeout_notifications): New variable. - (update_timeout_visit): Removed. - (update_timeouts): New function. - (redraw_timeouts): Likewise. - (grub_gfxmenu_print_timeout): Use update_timeouts and redraw_timeouts. - (grub_gfxmenu_clear_timeout): Likewise. - * include/grub/gui.h (grub_gfxmenu_set_state_t): New type. - (grub_gfxmenu_timeout_notify): Likewise. - (grub_gfxmenu_timeout_notifications): New external variable. - (grub_gfxmenu_timeout_register): New function. - (grub_gfxmenu_timeout_unregister): Likewise. - -2010-05-09 Vladimir Serbinenko - - Transform (broken) vga terminal into (working) vga video driver. - - * conf/i386-pc.rmk (vga_mod_SOURCES): Change term/i386/pc/vga.c to - video/i386/pc/vga.c. - * include/grub/video.h (grub_video_driver_id): - Add GRUB_VIDEO_DRIVER_VGA. - * term/i386/pc/vga.c: Renamed to ... - * video/i386/pc/vga.c: ...this - (DEBUG_VGA): Removed. - (CHAR_WIDTH): Likewise. - (CHAR_HEIGHT): Likewise. - (TEXT_WIDTH): Likewise. - (TEXT_HEIGHT): Likewise. - (DEFAULT_FG_COLOR): Likewise. - (DEFAULT_BG_COLOR): Likewise. - (colored_char): Likewise. - (xpos): Likewise. - (ypos): Likewise. - (cursor_state): Likewise. - (fg_color): Likewise. - (bg_color): Likewise. - (text_buf): Likewise. - (page): Likewise. - (font): Likewise. - (framebuffer): New variable. - (set_read_map): Disabled. - (setup): New variable. - (is_target): Likewise. - (grub_vga_mod_init): Likewise. - (grub_vga_mod_fini): Likewise. - (check_vga_mem): Likewise. - (write_char): Likewise. - (write_cursor): Likewise. - (scroll_up): Likewise. - (grub_vga_putchar): Likewise. - (grub_vga_getcharwidth): Likewise. - (grub_vga_getwh): Likewise. - (grub_vga_getxy): Likewise. - (grub_vga_gotoxy): Likewise. - (grub_vga_cls): Likewise. - (grub_vga_setcolorstate): Likewise. - (grub_vga_setcursor): Likewise. - (grub_video_vga_init): New function. - (grub_video_vga_setup): Likewise. - (grub_video_vga_fini): Likewise. - (update_target): Likewise. - (grub_video_vga_blit_bitmap): Likewise. - (grub_video_vga_blit_render_target): Likewise. - (grub_video_vga_set_active_render_target): Likewise. - (grub_video_vga_get_active_render_target): Likewise. - (grub_video_vga_swap_buffers): Likewise. - (grub_video_vga_set_palette): Likewise. - (grub_video_vga_get_info_and_fini): Likewise. - (grub_vga_term): Removed. - (grub_video_vga_adapter): New variable. - (GRUB_MOD_INIT): Register a video driver instead of terminal. - (GRUB_MOD_FINI): Unrefister a video driver instead of terminal. - -2010-05-05 Vladimir Serbinenko - - * video/readers/jpeg.c: Indented. - -2010-05-05 Vladimir Serbinenko - - Various jpeg cleanups. - - * video/readers/jpeg.c (grub_jpeg_get_huff_code): Use ARRAY_SIZE. - (grub_jpeg_decode_quan_table): Use sizeof. - (grub_jpeg_decode_du): Use ARRAY_SIZE. - -2010-05-05 Peter Hurley (tiny change) - - * video/readers/jpeg.c (grub_jpeg_decode_huff_table): Loop over all - tables. Ignore non-last ac bit. - (grub_jpeg_decode_quan_table): Likewise. - -2010-05-05 Vladimir Serbinenko - - * include/grub/ieee1275/ieee1275.h (grub_ieee1275_flag): New value - GRUB_IEEE1275_FLAG_NO_PRE1_5M_CLAIM. - * kern/ieee1275/cmain.c (grub_ieee1275_find_options): Set - GRUB_IEEE1275_FLAG_NO_PRE1_5M_CLAIM on qemu. - * kern/ieee1275/init.c (grub_claim_heap): Don0t allocate below - 1.5MiB if GRUB_IEEE1275_FLAG_NO_PRE1_5M_CLAIM is set. - -2010-05-05 Vladimir Serbinenko - - * term/ieee1275/ofconsole.c (grub_ofconsole_getkey): Fix off-by-one - error. - -2010-05-05 Vladimir Serbinenko - - * term/ieee1275/ofconsole.c (grub_ofconsole_readkey): Support C0 code. - -2010-05-03 Vladimir Serbinenko - - * commands/parttool.c (grub_cmd_parttool): Fix #if !GRUB_NO_MODULES - condition. - -2010-05-03 Vladimir Serbinenko - - * kern/mm.c (grub_real_malloc): Put magic and size assignment in common - part. - -2010-05-03 Vladimir Serbinenko - - * kern/mm.c (grub_mm_init_region): Check for region size after aligning - pointers. - -2010-05-03 Vladimir Serbinenko - - * kern/mm.c (grub_real_malloc): Fix size calculation when extra == 0. - -2010-05-01 Christian Franke - - * util/grub-mkconfig_lib.in (make_system_path_relative_to_its_root): - Remove broken Cygwin path conversion. - * util/misc.c: [__CYGWIN__] Add include and define. - [__CYGWIN__] (get_win32_path): Copy function from getroot.c, modify - for Cygwin 1.7. - (make_system_path_relative_to_its_root): Simplify loop, replace early - return by break. - [__CYGWIN__] Add conversion to win32 path. - Include "/" case in trailing slash removal. - -2010-05-01 Vladimir Serbinenko - - * kern/main.c (grub_load_config): Fix copy-pasted comment. - Reported by: Seth Goldberg - -2010-05-01 Vladimir Serbinenko - - * commands/help.c (grub_cmd_help): Fix a typo. - Reported by: Seth Goldberg - -2010-05-01 Vladimir Serbinenko - - * commands/hashsum.c (GRUB_MOD_INIT): Remove duplication of command - name and add N_. - * commands/i386/pc/drivemap.c (GRUB_MOD_INIT): Likewise. - * commands/iorw.c (GRUB_MOD_INIT): Likewise. - * commands/password_pbkdf2.c (GRUB_MOD_INIT): Likewise. - * commands/regexp.c (GRUB_MOD_INIT): Likewise. - * commands/setpci.c (GRUB_MOD_INIT): Likewise. - * commands/terminal.c (GRUB_MOD_INIT): Likewise. - * efiemu/main.c (GRUB_MOD_INIT): Likewise. - * font/font_cmd.c (GRUB_MOD_INIT): Likewise. - * kern/corecmd.c (GRUB_MOD_INIT): Likewise. - * mmap/mmap.c (GRUB_MOD_INIT): Likewise. - * normal/context.c (GRUB_MOD_INIT): Likewise. - * normal/main.c (GRUB_MOD_INIT): Likewise. - * term/gfxterm.c (GRUB_MOD_INIT): Likewise. - * term/serial.c (GRUB_MOD_INIT): Likewise. - * term/terminfo.c (GRUB_MOD_INIT): Likewise. - -2010-05-01 Vladimir Serbinenko - - * kern/mm.c (grub_real_malloc): Satisfy alignment requirement when - extra == 0. - -2010-05-01 Vladimir Serbinenko - - * commands/iorw.c: New file. - * conf/i386.rmk (pkglib_MODULES): Add iorw.mod. - (iorw_mod_SOURCES): New variable. - (iorw_mod_CFLAGS): Likewise. - (iorw_mod_LDFLAGS): Likewise. - -2010-05-01 Vladimir Serbinenko - - Hotkey support - - * include/grub/menu.h (grub_menu_entry): New field 'hotkey'. - * normal/main.c (hotkey_aliases): New variable. - (grub_normal_add_menu_entry): Parse "--hotkey". - * normal/menu_text.c (run_menu): Handle hotkeys. - -2010-05-01 Vladimir Serbinenko - - * kern/i386/coreboot/init.c (grub_machine_init): Call - grub_machine_mmap_init on qemu. - -2010-05-01 Vladimir Serbinenko - - * boot/i386/qemu/boot.S: Add a missing .code16. - -2010-05-01 Vladimir Serbinenko - - Use LBIO on coreboot. - - * conf/i386-coreboot.rmk (kernel_img_SOURCES): Change - kern/i386/multiboot_mmap.c to kern/i386/coreboot/mmap.c. - * include/grub/i386/coreboot/memory.h (GRUB_LINUXBIOS_MEMBER_LINK): - New declaration. - * kern/i386/coreboot/init.c (grub_machine_init): Don't call - grub_machine_mmap_init on coreboot. - * kern/i386/coreboot/mmap.c (grub_linuxbios_table_iterate): Handle - GRUB_LINUXBIOS_MEMBER_LINK. - (grub_machine_mmap_iterate): Fix declaration. - * kern/i386/coreboot/startup.S: Don't save mbi location on coreboot. - -2010-05-01 Vladimir Serbinenko - - Split coreboot and multiboot ports. - - * conf/i386-multiboot.rmk: New file. - * configure.ac: Add multiboot port. - * include/grub/i386/multiboot/boot.h: New file. - * include/grub/i386/multiboot/console.h: Likewise. - * include/grub/i386/multiboot/init.h: Likewise. - * include/grub/i386/multiboot/kernel.h: Likewise. - * include/grub/i386/multiboot/loader.h: Likewise. - * include/grub/i386/multiboot/memory.h: Likewise. - * include/grub/i386/multiboot/serial.h: Likewise. - * include/grub/i386/multiboot/time.h: Likewise. - * include/grub/multiboot.h: Add GRUB_MACHINE_MULTIBOOT to ifdef. - * loader/multiboot.c: Likewise. - * loader/multiboot_mbi2.c: Likewise. - * util/grub-mkrescue.in: Generate multiboot rescue. - -2010-05-01 Vladimir Serbinenko - - * kern/parser.c (grub_parser_execute): Cope with read-only config. - -2010-05-01 Vladimir Serbinenko - - Merge handling of input and output terminals. Fix a hang. - - * commands/terminal.c (abstract_terminal): New struct. - (handle_command): New function. Based on grub_cmd_terminal_input. - (grub_cmd_terminal_input): Use handle_command. - (grub_cmd_terminal_output): Use handle_command. - -2010-05-01 BVK Chaitanya - - Fix comment handling. - - * tests/grub_script_comments.in: New testcase. - * conf/tests.rmk: Rules for new testcase. - * script/yylex.l: Updated flex rules. - -2010-04-28 Samuel Thibault - - * docs/grub.texi (play): Document that zero pitches produce rests. - * commands/i386/pc/play.c (grub_cmd_play): Call 'grub_file_open' only - if argc is 1. - -2010-04-27 Vladimir Serbinenko - - * conf/x86-efi.rmk (linux_mod_SOURCES): Write explicitly to avoid - autogen issues. - -2010-04-26 Christian Franke - - * include/grub/util/getroot.h (grub_get_prefix): Remove prototype. - * util/getroot.c [__CYGWIN__] (get_win32_path): Remove function. - (grub_get_prefix): Remove function. - * util/grub-emu.c (main): Replace grub_get_prefix () call by - make_system_path_relative_to_its_root (). - * util/sparc64/ieee1275/grub-setup.c (main): Likewise. - -2010-04-24 Christian Franke - - * Makefile.in (TARGET_LDFLAGS): Add -static-libgcc. - (kernel_img_LDFLAGS): Remove -static-libgcc. - -2010-04-24 Christian Franke - - * configure.ac: Do not CHECK_BSS_START_SYMBOL - and CHECK_END_SYMBOL if grub-emu is built. - Unset TARGET_OBJ2ELF if grub-emu is built - without module support. - -2010-04-24 Jiro SEKIBA - - Nilfs2 support. - - * conf/common.rmk (grub_probe_SOURCES): Add fs/nilfs2.c. - (grub_fstest_SOURCES): Likewise. - (pkglib_MODULES): Add nilfs2.mod. - (nilfs2_mod_SOURCES): New variable. - (nilfs2_mod_CFLAGS): Likewise. - (nilfs2_mod_LDFLAGS): Likewise. - * conf/i386-pc.rmk (grub_setup_SOURCES): Add fs/nilfs2.c. - * conf/sparc64-ieee1275.rmk (grub_setup_SOURCES): Add fs/nilfs2.c. - * fs/nilfs2.c: New file. - -2010-04-21 Vladimir Serbinenko - - * configure.ac: Refuse to compile for x86_64-efi is mcmodel=large - is not supported. - -2010-04-19 Grégoire Sutre - - Add grub-mkconfig support for NetBSD. - - * util/grub.d/10_netbsd.in: grub-mkconfig helper script for NetBSD. - * util/grub-mkconfig.in: export new NetBSD specific variables. - * po/POTFILES-shell: added 10_netbsd.in. - * util/grub-mkconfig_lib.in: check for gettext binary, default to echo. - -2010-04-19 BVK Chaitanya - - Fix emu build with grub-emu-pci and grub-emu-modules. - - * include/grub/util/misc.h: Export grub_util_{info,error,warn} - functions. - * include/grub/libpciaccess.h: New file. - * conf/any-emu.rmk: Update kernel headers for emu build. - -2010-04-19 Vladimir Serbinenko - - * fs/udf.c (grub_udf_iterate_dir): Silence a spurious warning. - -2010-04-19 Vladimir Serbinenko - - * fs/udf.c (grub_udf_iterate_dir): Decode the Unicode filenames. - -2010-04-18 Vladimir Serbinenko - - * boot/sparc64/ieee1275/boot.S: Various size-reducing changes. - Retrieve chosen/bootpath if bootpath isn't hardcoded. - * conf/sparc64-ieee1275.rmk (grub_setup_SOURCES): Add - util/ieee1275/ofpath.c. - * util/sparc64/ieee1275/grub-ofpathname.c: Renamed to ... - * util/ieee1275/grub-ofpathname.c: ... this. All users updated - * include/grub/sparc64/ieee1275/boot.h - (GRUB_BOOT_MACHINE_KERNEL_SECTOR): Renamed to ... - (GRUB_BOOT_MACHINE_KERNEL_BYTE): ...this. Moved 8 bytes lower. - * util/hostdisk.c (grub_util_biosdisk_get_osdev): New function. - * util/ieee1275/ofpath.c (grub_util_devname_to_ofpath): Make argument - const char *. - * util/sparc64/ieee1275/grub-setup.c (compute_dest_ofpath): Removed. - (setup): Use KERNEL_BYTE instead of KERNEL_SECTOR. - Use grub_util_devname_to_ofpath. Zero-fill boot_devpath on same disk - install. - -2010-04-18 Grégoire Sutre - - * util/grub-mkconfig.in: Corrected two == equality tests. - Set grub_prefix as in grub-install for NetBSD and OpenBSD. - * configure.ac: All definitions and uses of TARGET_IMG_LDFLAGS_AC now - expect a number appended to it. - * acinclude.m4 (grub_PROG_OBJCOPY_ABSOLUTE): ${TARGET_IMG_LDFLAGS_AC} - expects a number appended to it. - -2010-04-18 Vladimir Serbinenko - - * po/POTFILES: Renamed multiboot_loader.c to multiboot.c - -2010-04-18 Vladimir Serbinenko - - * util/hostdisk.c (make_device_name): Change to new partition naming. - -2010-04-17 Vladimir Serbinenko - - * disk/lvm.c (grub_lvm_memberlist): Issue an error if pv->disk = 0. - -2010-04-17 Christian Franke - - * Makefile.in: Add missing localedir setting. - -2010-04-14 Colin Watson - - Restore TEXTDOMAINDIR correction from r1889, lost apparently by - mistake in r2156. Noticed by Anthony Fok. - - * util/grub.d/10_kfreebsd.in (TEXTDOMAINDIR): Set to lowercased - @localedir@. - * util/grub.d/10_linux.in (TEXTDOMAINDIR): Likewise. - -2010-04-14 BVK Chaitanya - - Fix a spurious, uninitialized variable warning. - - * loader/i386/bsdXX.c (grub_freebsd_load_elfmodule_obj): - Initialize variable, shdr. - (grub_freebsd_load_elfmodule): Likewise. - (grub_freebsd_load_elf_meta): Likewise. - -2010-04-13 BVK Chaitanya - - Fix for escaped dollar in double quoted strings. - - * script/yylex.l: Updated flex rules. - * conf/tests.rmk: Rule for new testcase. - * tests/grub_script_dollar.in: New testcase. - -2010-04-13 Carles Pina i Estany -2010-04-13 Colin Watson - - Enclose all translated strings in grub.cfg in single quotes, and - escape them appropriately (Ubuntu bug #552921). - - * util/grub-mkconfig_lib.in (gettext_quoted): New function. - * util/grub.d/10_hurd.in: Use it. - * util/grub.d/10_kfreebsd.in (kfreebsd_entry): Likewise. - * util/grub.d/10_linux.in (linux_entry): Likewise. - -2010-04-11 Vladimir Serbinenko - - Fix cygwin compilation. - - * configure.ac: Define NEED_REGISTER_FRAME_INFO. - * include/grub/misc.h (__register_frame_info) - [NEED_REGISTER_FRAME_INFO && !UTIL]: New export. - (__deregister_frame_info) [NEED_REGISTER_FRAME_INFO && !UTIL]: Likewise. - * kern/misc.c (__register_frame_info) - [NEED_REGISTER_FRAME_INFO && !UTIL]: New empty function. - (__deregister_frame_info) [NEED_REGISTER_FRAME_INFO && !UTIL]: Likewise. - -2010-04-11 Vladimir Serbinenko - - * configure.ac: Respect grub_cv_asm_uscore when defining dummy symbols. - -2010-04-11 Vladimir Serbinenko - - Unify libgcc processing. - - * Makefile.in (kernel_img_LDFLAGS): New variable. - * conf/common.rmk (kernel_img_HEADERS): Add libgcc.h. - * conf/i386-coreboot.rmk (kernel_img_LDFLAGS): Append instead of - overwriting. - * conf/i386-ieee1275.rmk (kernel_img_LDFLAGS): Likewise. - * conf/i386-pc.rmk (kernel_img_LDFLAGS): Likewise. - * conf/i386-qemu.rmk (kernel_img_LDFLAGS): Likewise. - * conf/x86-efi.rmk (kernel_img_LDFLAGS): Likewise. - * conf/mips-qemu-mips.rmk (kernel_img_LDFLAGS): Append instead of - overwriting. Remove -lgcc and -static-libgcc - * conf/mips-yeeloong.rmk (kernel_img_LDFLAGS): Likewise. - * conf/mips.rmk (kernel_img_HEADERS): Remove cpu/libgcc.h - * conf/powerpc-ieee1275.rmk (kernel_img_HEADERS): Remove cpu/libgcc.h - (kernel_img_LDFLAGS): Append instead of overwriting. - Remove -lgcc and -static-libgcc - * conf/sparc64-ieee1275.rmk: Likewise. - * include/grub/powerpc/libgcc.h: Move to ... - * include/grub/libgcc.h: .. this. - * include/grub/libgcc.h: Don't export most of the function on x86. - (__bswapsi2): New export. - (__bswapdi2): Likewise. - * include/grub/mips/libgcc.h: Removed. - * include/grub/sparc64/libgcc.h: Likewise. - -2010-04-10 Vladimir Serbinenko - - * util/hostdisk.c (grub_util_biosdisk_get_grub_dev): Remove - disk_info_msg (conflicts with gettexting into languages with cases). - -2010-04-10 Grégoire Sutre - - Add grub-probe support for NetBSD. - - * util/getroot.c (find_root_device): Convert block device to - character device on NetBSD. - * util/probe.c (probe): Require character device on NetBSD. - * util/hostdisk.c: NetBSD specific headers. - (configure_device_driver): new function to tune device driver - parameters (currently only for NetBSD floppy driver). - (grub_util_biosdisk_open): NetBSD specific code (get disk size - via disklabel ioctl). - (open_device): call configure_device_driver on NetBSD. - (convert_system_partition_to_system_disk): NetBSD specific code. - (device_is_wholedisk): Likewise. - (grub_util_biosdisk_get_grub_dev): Likewise. - (make_device_name): Fixed a typo in bsd_part_str. - * configure.ac: check for opendisk() and getrawpartition() on - NetBSD and set LIBUTIL. - * Makefile.in: add LIBUTIL to LIBS. - -2010-04-10 BVK Chaitanya - - Documentation fix. - - * util/grub-script-check.c: Better help message. - -2010-04-10 BVK Chaitanya - - Fix FreeBSD build. - - * configure.ac: Flex version check. - * conf/common.rmk: Add -Wno-error to sh.mod. - * script/yylex.l: Remove all #pragma. - -2010-04-10 Vladimir Serbinenko - - * include/grub/util/misc.h (canonicalise_file_name): Add missing - prototype. - Reported by: Seth Goldberg. - -2010-04-10 Vladimir Serbinenko - - * loader/multiboot.c (GRUB_MOD_INIT) [GRUB_USE_MULTIBOOT2]: - Rename "module" to "module2". - Reported by: Seth Goldberg. - -2010-04-10 Vladimir Serbinenko - - * include/grub/efi/memory.h (grub_machine_mmap_iterate): Remove - EXPORT_FUNC. - Reported by: Seth Goldberg. - -2010-04-10 Vladimir Serbinenko - - * lib/posix_wrap/locale.h: Add missing file. - Reported by: Seth Goldberg. - -2010-04-10 Vladimir Serbinenko - - grub-emu module load support. - - * Makefile.in (TARGET_NO_MODULES): New variable. All users of - NO_DYNAMIC_MODULES switched to this. - (TARGET_CFLAGS): Add -DGRUB_TARGET_NO_MODULES=1 if applicable. - (CFLAGS): Likewise. - * conf/any-emu.rmk: Generate symlist. - (kernel_img_HEADERS): Add util/datetime.h. - (kernel_img_HEADERS) [sdl]: Add sdl.h. - (kernel_img_HEADERS) [libusb]: Add libusb.h. - (kernel_img_SOURCES) [TARGET_NO_MODULES = no && !x86]: Add - kern/$(target_cpu)/cache.S. - * configure.ac (grub-emu-modules): New option. - * genmk.rb: Handle multiple source lists. - * include/grub/sdl.h: New file. - * include/grub/libusb.h: Likewise. - * util/grub-emu.c (main): Hanle (host) root. - * util/hostdisk.c (grub_util_biosdisk_get_grub_dev): Error with - GRUB_ERR_UNKNOWN_DEVICE. - * util/misc.c: Move mm functions to ... - * util/mm.c: ... here. All users updated. - -2010-04-09 Vladimir Serbinenko - - * Makefile.in (RMKFILES): Search in srcdir and not current directory. - (MAINTAINER_CLEANFILES): Don't add $(srcdir) to MKFILES. Add few - missing files. - (maintainer-clean): Remove libgcrypt-grub. - -2010-04-09 Vladimir Serbinenko - - * term/efi/console.c (grub_console_checkkey): Macroify key contants. - -2010-04-09 EFI Coder - - * normal/menu_text.c (print_message): Clean up the message and show - the Fn information when on EFI - * term/efi/console.c (grub_console_checkkey): Add F4 support. - -2010-04-09 Vladimir Serbinenko - - * normal/autofs.c (read_fs_list): New parameter 'prefix'. - All users updated. - * normal/crypto.c (read_crypto_list): Likewise. - * normal/dyncmd.c (read_command_list): Likewise. - * normal/term.c (read_terminal_list): Likewise. - * normal/main.c (read_lists): Use explicit prefix. - (read_lists_hook): Use read_lists. - (grub_normal_execute): Likewise. - -2010-04-09 Vladimir Serbinenko - - * util/grub-mkrescue.in: Fix incorrect path in coreboot part. - Reported by: Thomas Schmitt. - Add -no-emul-boot to grub-mkisofs parameters. - -2010-04-09 Vladimir Serbinenko - - * font/font.c: Indented. - -2010-04-09 BVK Chaitanya - - Elif support to GRUB script (by Deepak Vankadaru). - - * tests/grub_script_if.in: New testcase. - * conf/tests.rmk: Rule for new testcase. - * script/parser.y: Grammar rules for elif. - -2010-04-09 BVK Chaitanya - - While and until loops support to GRUB script. - - * include/grub/script_sh.h (grub_script_cmdwhile): New struct. - (grub_script_create_cmdwhile): New function prototype. - (grub_script_execute_cmdwhile): New function prototype. - * script/execute.c (grub_script_execute_cmdwhile): New function. - * script/parser.y (command): New commands. - (whilecmd): New grammar rule. - (untilcmd): New grammar rule. - * script/script.c (grub_script_create_cmdwhile): New function. - * util/grub-script-check.c (grub_script_execute_cmdwhile): New - function. - - * tests/grub_script_while1.in: New testcase. - * conf/tests.rmk: Rule for new testcase. - -2010-04-09 Vladimir Serbinenko - - * util/grub.d/00_header.in: Add few missing quotes. Recognise *.jpeg - as *.jpg. - -2010-04-09 Mario Vazquez - - GRUB_BACKGROUND support. - - * util/grub-mkconfig.in: Export GRUB_BACKGROUND. - * util/grub.d/00_header.in: Parse GRUB_BACKGROUND. - -2010-04-09 Vladimir Serbinenko - - Load fonts and modules for gfxmenu in grub-mkconfig. - Idea by: Mario Vazquez - - * util/grub.d/00_header.in: Load pf2 and image modules. - -2010-04-09 Vladimir Serbinenko - - grub-mkconfig multiple terminal support. - - * util/grub-mkconfig.in: Handle multiple terminals correctly. - * util/grub.d/00_header.in: Likewise. - -2010-04-09 Vladimir Serbinenko - - * Makefile.in: Specify files explicitly instead of using $< and $@ since - we use cd $(srcdir). - -2010-04-08 Colin Watson - - * util/grub.d/10_linux.in: Only use the first word of - GRUB_DISTRIBUTOR for --class, to avoid problems if somebody puts - spaces in GRUB_DISTRIBUTOR. - * util/grub.d/10_kfreebsd.in: Likewise. - * util/grub.d/10_hurd.in: Likewise. - -2010-04-06 BVK Chaitanya - - Fix unit testing framework for Qemu 0.12. - - * tests/util/grub-shell.in: Remove -serial stdio option. - -2010-04-06 Vladimir Serbinenko - - POSIX header file wrappers. - - * lib/posix_wrap/assert.h: New file. Wrapper for its POSIX - equivalents. - * lib/posix_wrap/ctype.h: Likewise. - * lib/posix_wrap/errno.h: Likewise. - * lib/posix_wrap/langinfo.h: Likewise. - * lib/posix_wrap/limits.h: Likewise. - * lib/posix_wrap/localcharset.h: Likewise. - * lib/posix_wrap/stdint.h: Likewise. - * lib/posix_wrap/stdio.h: Likewise. - * lib/posix_wrap/stdlib.h: Likewise. - * lib/posix_wrap/string.h: Likewise. - * lib/posix_wrap/sys/types.h: Likewise. - * lib/posix_wrap/unistd.h: Likewise. - * lib/posix_wrap/wchar.h: Likewise. - * lib/posix_wrap/wctype.h: Likewise. - * conf/common.rmk (grub_script.yy.c): Remove #include elimination. - (grub_script.yy.h): Likewise. - * script/yylex.l: Remove POSIX emulation #defines. - * Makefile.in (POSIX_CFLAGS): New variable. - (GNULIB_UTIL_CFLAGS): Likewise. - - Regexp support. - - * conf/common.rmk (pkglib_MODULES): Add regexp.mod. - (regexp_mod_SOURCES): New variable. - (regexp_mod_CFLAGS): Likewise. - (regexp_mod_LDFLAGS): Likewise. - * commands/regexp.c: New file. - * gnulib/regcomp.c: New file. Imported from gnulib. - * gnulib/regex.c: Likewise. - * gnulib/regex_internal.c: Likewise. - * gnulib/regex_internal.h: Likewise. - * gnulib/regexec.c: Likewise. - * gnulib/regex.h: Likewise. - -2010-04-05 Vladimir Serbinenko - - * loader/i386/multiboot_mbi.c (grub_multiboot_load): Correctly report - unsupported video mode types. - -2010-04-05 Vladimir Serbinenko - - * kern/i386/pc/startup.S (grub_getrtsecs): Removed (dead code). - -2010-04-05 Vladimir Serbinenko - - * include/grub/i386/pc/init.h (grub_get_mmap_entry): Don't export. - * conf/i386-pc.rmk (kernel_img_HEADERS): Remove machine/init.h. - -2010-04-04 Vladimir Serbinenko - - Remove unused grub_vga_get_font. - - * kern/i386/pc/startup.S (grub_vga_get_font): Removed. - * include/grub/i386/pc/vga.h (grub_vga_get_font): Likewise. - -2010-04-03 Grégoire Sutre - - * kern/misc.c: Disable the __enable_execute_stack hack for utilities. - * include/grub/misc.h: Likewise. - -2010-04-03 Grégoire Sutre - - * util/grub-install.in: Add `|| exit 1' to all grub-probe calls - for which failure is fatal. - -2010-04-03 Grégoire Sutre - - * util/grub-install.in: Use mkdir -p to create grub directory. - * util/i386/efi/grub-install.in: Likewise. - * util/ieee1275/grub-install.in: Likewise. - -2010-04-03 Grégoire Sutre - - * Makefile.in (LEX): new variable. - -2010-04-03 Grégoire Sutre - - * util/i386/efi/grub-dumpdevtree: replaced the non-portable `==' by - `=' and added double quotes on operands of this equality test. - -2010-04-03 Vladimir Serbinenko - - * Makefile.in (uninstall): Remove a leftover debug echo. - Reported by: Grégoire Sutre - -2010-04-03 Vladimir Serbinenko - - MIPS multiboot2 support. - - * conf/mips.rmk (pkglib_MODULES): Add multiboot2.mod. - (multiboot2_mod_SOURCES): New variable. - (multiboot2_mod_CFLAGS): Likewise. - (multiboot2_mod_LDFLAGS): Likewise. - (multiboot2_mod_ASFLAGS): Likewise. - * include/grub/i386/multiboot.h (MULTIBOOT_INITIAL_STATE): New - definition. - (MULTIBOOT_ENTRY_REGISTER): Likewise. - (MULTIBOOT_MBI_REGISTER): Likewise. - (MULTIBOOT_ARCHITECTURE_CURRENT): Likewise. - (MULTIBOOT_ELF32_MACHINE): Likewise. - (MULTIBOOT_ELF64_MACHINE): Likewise. - * include/grub/mips/multiboot.h: New file. - * include/grub/video.h (grub_video_driver_id): New type - GRUB_VIDEO_DRIVER_SM712. - (grub_video_get_info_and_fini): Export. - (grub_video_get_palette): Likewise. - (grub_video_get_driver_id): Likewise. - * include/multiboot2.h: Resynced with spec. - * loader/i386/multiboot.c: Moved from here ... - * loader/multiboot.c: ... here. All users updated. - (grub_multiboot_boot): Use platform-specific macros. - * loader/i386/multiboot_elfxx.c: Moved from here ... - * loader/multiboot_elfxx.c: ... here. All users updated. - (E_MACHINE): Use MULTIBOOT_ELF32_MACHINE and MULTIBOOT_ELF64_MACHINE. - * loader/i386/multiboot_mbi2.c (grub_multiboot_load): Check arcitecture. - * video/sm712.c (grub_video_sm712_adapter): Add missing id field. - -2010-04-02 Vladimir Serbinenko - - Import gnulib argp module. - - * gnulib/argp-ba.c: New file. - * gnulib/argp-eexst.c: Likewise. - * gnulib/argp-fmtstream.c: Likewise. - * gnulib/argp-fmtstream.h: Likewise. - * gnulib/argp-fs-xinl.c: Likewise. - * gnulib/argp-help.c: Likewise. - * gnulib/argp-namefrob.h: Likewise. - * gnulib/argp-parse.c: Likewise. - * gnulib/argp-pin.c: Likewise. - * gnulib/argp-pv.c: Likewise. - * gnulib/argp-pvh.c: Likewise. - * gnulib/argp-version-etc.c: Likewise. - * gnulib/argp-version-etc.h: Likewise. - * gnulib/argp-xinl.c: Likewise. - * gnulib/argp.h: Likewise. - -2010-03-31 Vladimir Serbinenko - - * kern/device.c (grub_device_iterate): Clear errors after failed - opening device. - -2010-03-31 Vladimir Serbinenko - - * kern/ieee1275/openfw.c (grub_children_iterate): Skip device itself if - returned by firmware. - -2010-03-30 Vladimir Serbinenko - - * loader/i386/multiboot_mbi2.c (retrieve_video_parameters): Fix - compilation on coreboot and qemu - -2010-03-28 Vladimir Serbinenko - - * include/multiboot2.h: Resync with spec. - -2010-03-28 Vladimir Serbinenko - - Multiboot2 tag support - - * conf/i386.rmk (multiboot2_mod_SOURCES): Replace - loader/i386/multiboot_mbi.c with loader/i386/multiboot_mbi2.c. - Remove loader/multiboot_loader.c. - * include/grub/i386/multiboot.h (grub_multiboot_real_boot): Removed. - (grub_multiboot2_real_boot): Likewise. - * include/grub/multiboot.h (grub_multiboot_set_accepts_video): Removed. - (grub_get_multiboot_mmap_count): New proto. - (grub_fill_multiboot_mmap): Likewise. - (grub_multiboot_set_video_mode): Likewise. - (grub_multiboot_set_console): Likewise. - (grub_multiboot_load): Likewise. - (grub_multiboot_load_elf): Likewise. - (GRUB_MULTIBOOT_CONSOLE_EGA_TEXT): New definition. - (GRUB_MULTIBOOT_CONSOLE_FRAMEBUFFER): Likewise. - * include/multiboot.h: Resynced with specification. - * include/multiboot2.h: Resynced with specification. - * loader/i386/multiboot_mbi.c (DEFAULT_VIDEO_MODE): Moved from here... - * loader/i386/multiboot.c (DEFAULT_VIDEO_MODE): ... here. - * loader/i386/multiboot_mbi.c (HAS_VGA_TEXT): Moved from here .. - * include/grub/multiboot.h (GRUB_MACHINE_HAS_VGA_TEXT): ... here. All - users updated. - * loader/i386/multiboot_mbi.c (accepts_video): Moved from here... - * loader/i386/multiboot.c (accepts_video): ... here. All users updated. - * loader/i386/multiboot_mbi.c (grub_multiboot_set_accepts_video): - Removed. - * loader/i386/multiboot_mbi.c (grub_get_multiboot_mmap_len): - Moved from here... - * loader/i386/multiboot.c (grub_get_multiboot_mmap_len): ... here. - * loader/i386/multiboot_mbi.c (grub_fill_multiboot_mmap): - Moved from here... - * loader/i386/multiboot.c (grub_fill_multiboot_mmap): ... here. - * loader/i386/multiboot_mbi.c (set_video_mode): Moved from here... - * loader/i386/multiboot.c (grub_multiboot_set_video_mode): ... here. - All users updated. - * loader/i386/multiboot_mbi2.c: New file. - -2010-03-27 Vladimir Serbinenko - - Resync with gnulib. - - * Makefile.in (GNULIB_CFLAGS): New variable. - * conf/common.rmk (grub_mkisofs_CFLAGS): Add GNULIB_CFLAGS. - (grub_script_check_CFLAGS): New variable. - * gnulib/alloca.h: Resync with gnulib. - * gnulib/error.c: Likewise. - * gnulib/error.h: Likewise. - * gnulib/fnmatch.c: Likewise. - * gnulib/fnmatch_loop.c: Likewise. - * gnulib/getdelim.c: Likewise. - * gnulib/getline.c: Likewise. - * gnulib/getopt.c: Likewise. - * gnulib/getopt1.c: Likewise. - * gnulib/getopt_int.h: Likewise. - * gnulib/gettext.h: Likewise. - * gnulib/progname.c: Likewise. - * gnulib/progname.h: Likewise. - -2010-03-27 Grégoire Sutre - - Fix a build failure (-Wundef -Werror) when ENABLE_NLS is not defined, - which is the case with --disabled-nls. - - * include/grub/i18n.h: Use (defined(ENABLE_NLS) - && ENABLE_NLS) instead of ENABLE_NLS in all #if preprocessor macros. - * util/misc.c: Likewise. - * util/mkisofs/mkisofs.c: Likewise. - * util/mkisofs/mkisofs.h: Likewise. - -2010-03-27 Vladimir Serbinenko - - Simplify Apple CC support. - - * commands/i386/pc/drivemap_int13h.S: Use LOCAL when possible. - Add 0 byte at the end not to have a symbol with empty target. - * mmap/i386/pc/mmap_helper.S: Likewise. - * genmk.rb: Ignore errors 2030 and 2050. - * kern/i386/pc/startup.S: Use LOCAL when possible. - -2010-03-26 BVK Chaitanya - - Testcase and the fix for final semicolon on cmdline. - - * tests/grub_script_final_semicolon.in: New testcase. - * conf/tests.rmk: Rules for the new testcase. - * script/parser.y: Grammar fix. - -2010-03-26 BVK Chaitanya - - Blank lines testcase for GRUB script. - - * tests/grub_script_blanklines.in: New testcase. - * conf/tests.rmk: Rules for the new testcase. - -2010-03-26 Vladimir Serbinenko - - Don't use __FILE__. - - * genmk.rb: Add -DGRUB_FILE to all C targets. - * fs/reiserfs.c: Replace __FILE__ with GRUB_FILE. - * include/grub/list.h: Likewise. - * include/grub/misc.h: Likewise. - * include/grub/mm.h: Likewise. - * include/grub/test.h: Likewise. - * kern/mm.c: Likewise. - * lib/libgcrypt_wrap/cipher_wrap.h: Likewise. - -2010-03-26 Vladimir Serbinenko - - Sunpc partitions support. - - * conf/common.rmk (grub_probe_SOURCES): Add partmap/sunpc.c. - (grub_fstest_SOURCES): Likewise. - (pkglib_MODULES): Add part_sunpc.mod. - (part_sunpc_mod_SOURCES): New variable. - (part_sunpc_mod_CFLAGS): Likewise. - (part_sunpc_mod_LDFLAGS): Likewise. - * conf/i386-pc.rmk (grub_setup_SOURCES): Add partmap/sunpc.c. - * partmap/sunpc.c: New file. - -2010-03-26 BVK Chaitanya - - For loop support to GRUB script. - - * include/grub/script_sh.h (grub_script_cmdfor): New struct. - (grub_script_create_cmdfor): New function prototype. - (grub_script_execute_cmdfor): New function prototype. - * script/execute.c (grub_script_execute_cmdfor): New function. - * script/parser.y (command): New for command. - (forcmd): New grammar rule. - * script/script.c (grub_script_create_cmdfor): New function. - * util/grub-script-check.c (grub_script_execute_cmdfor): New - function. - * tests/grub_script_for1.in: New testcase. - * conf/tests.rmk: Rules for new testcase. - -2010-03-26 Vladimir Serbinenko - - Nested partitions - - * commands/blocklist.c (grub_cmd_blocklist): Don't check whether - 'partition' is NULL, grub_partition_get_start already does that. - * commands/loadenv.c (check_blocklists): Likewise. - (write_blocklists): Likewise. - * conf/common.rmk (grub_probe_SOURCES): Add partmap/bsdlabel.c. - (grub_fstest_SOURCES): Likewise. - (pkglib_MODULES): Add part_bsd.mod. - (part_bsd_mod_SOURCES): New variable. - (part_bsd_mod_CFLAGS): Likewise. - (part_bsd_mod_LDFLAGS): Likewise. - * conf/i386-pc.rmk (grub_setup_SOURCES): Add partmap/bsdlabel.c. - (grub_emu_SOURCES): Likewise. - * conf/sparc64-ieee1275.rmk (grub_emu_SOURCES): Likewise. - * include/grub/bsdlabel.h: New file. - * include/grub/partition.h (grub_partition_map): Remove 'probe' and - 'get_name'. - (grub_partition): Add 'parent' and 'number'. Remove 'data'. - (grub_partition_map_list): New variable. - (grub_partition_map_register): Inline. - (grub_partition_map_unregister): Likewise. - (FOR_PARTITION_MAPS): New macro. - (grub_partition_map_iterate): Removed. - (grub_partition_get_start): Handle nested partitions. - * include/grub/msdos_partition.h: Remove bsd-related entries. - (grub_pc_partition): Remove. - * kern/disk.c (grub_disk_close): Free partition data. - (grub_disk_adjust_range): Handle nested partitions. - * kern/partition.c (grub_partition_map_probe): New function. - (grub_partition_probe): Parse name to number, handle subpartitions. - (get_partmap): New function. - (grub_partition_iterate): Handle subpartitions. - (grub_partition_get_name): Likewise. - * loader/i386/pc/bsd.c (grub_bsd_get_device): Likewise. - * loader/i386/multiboot.c (grub_multiboot_get_bootdev): Likewise. - * loader/i386/pc/chainloader.c (grub_chainloader_cmd): Likewise. - * partmap/acorn.c (acorn_partition_map_iterate): Don't force raw access. - Set 'number'. - (acorn_partition_map_probe): Remove. - (acorn_partition_map_get_name): Likewise. - * partmap/amiga.c (amiga_partition_map_iterate): Don't force raw access. - Set 'number'. - Set 'index' to 0 since there can be only one partition entry per sector. - (amiga_partition_map_probe): Remove. - (amiga_partition_map_get_name): Likewise. - * partmap/apple.c (apple_partition_map_iterate): Don't force raw access. - Set 'number'. - Set 'offset' and 'index' to real positions of partitions. - (apple_partition_map_probe): Remove. - (apple_partition_map_get_name): Likewise. - * partmap/bsdlabel.c: New file. - * partmap/gpt.c (gpt_partition_map_iterate): Don't force raw access. - Set 'number'. - Allocate 'data' so it can be correctly freed. - Set 'index' to offset inside sector. - (gpt_partition_map_probe): Remove. - (gpt_partition_map_get_name): Likewise. - * partmap/msdos.c (grub_partition_parse): Remove. - (pc_partition_map_iterate): Don't force raw access. - Set 'number'. - Make 'ext_offset' a local variable. - (pc_partition_map_probe): Remove. - (pc_partition_map_get_name): Remove. - * partmap/sun.c (sun_partition_map_iterate): Don't force raw access. - Set 'number'. - (sun_partition_map_probe): Remove. - (sun_partition_map_get_name): Likewise. - * parttool/msdospart.c (grub_pcpart_boot): Handle nested partitions. - (grub_pcpart_type): Likewise. - * util/hostdisk.c (open_device): Handle new numbering scheme. - (grub_util_biosdisk_get_grub_dev): Handle nested partitions. - * util/i386/pc/grub-setup.c (setup): Handle new numbering scheme. - * util/grub-probe.c (probe_partmap): Handle nested paritions. - * util/grub-install.in: Insert all subpartition modules. - * util/ieee1275/grub-install.in: Likewise. - -2010-03-24 Adrian Glaubitz - - * kern/dl.c (grub_dl_resolve_symbols): Improve error message - grammar. - -2010-03-24 Colin Watson - - * .bzrignore: Add grub-bin2h, grub-reboot, and grub-set-default. - -2010-03-21 Colin Watson - - * util/grub-install.in: Copy .mo files from @datadir@/locale, to - match where 'make install' puts them. - * util/i386/efi/grub-install.in: Likewise. - -2010-03-19 Colin Watson - - * .bzrignore: Add gentrigtables, grub-script-check, - grub_script_check_init.c, grub_script_check_init.h, and - trigtables.c. - -2010-03-18 Vladimir Serbinenko - - * kern/parser.c: Indented. - -2010-03-17 Vladimir Serbinenko - - * term/i386/pc/vesafb.c: Removed (orphaned, deprecated and broken). - -2010-03-17 Vladimir Serbinenko - - * video/fb/fbblit.c (grub_video_fbblit_blend_XXXA8888_1bit): Handle - alpha_mask_size == 0 case. - -2010-03-14 BVK Chaitanya - - GRUB shell lexer and parser improvements. - - * conf/any-emu.rmk: Build rule updates. - * conf/common.rmk: Likewise. - * conf/i386-coreboot.rmk: Likewise. - * conf/i386-efi.rmk: Likewise. - * conf/i386-ieee1275.rmk: Likewise. - * conf/i386-pc.rmk: Likewise. - * conf/powerpc-ieee1275.rmk: Likewise. - * conf/x86_64-efi.rmk: Likewise. - - * configure.ac: Configure check for flex. - - * include/grub/script_sh.h (grub_script_arg_type_t): More argument - types. - (grub_lexer_param): Struct member updates. - (grub_parser_param): Likewise. - (GRUB_LEXER_TOKEN_MAX): Maximum token size. - (GRUB_LEXER_RECORD_INCREMENT): Memory increments' size. - (grub_script_lexer_init): Prototype update. - (grub_script_lexer_record_start): Likewise. - (grub_script_lexer_record_stop): Likewise. - (grub_script_lexer_yywrap): New function prototype. - (grub_script_lexer_fini): Likewise. - (grub_script_execute_argument_to_string): Removed by... - (grub_script_execute_argument_to_argv): ...better version. - - * script/execute.c (ROUND_UPTO): New macro. - (grub_script_execute_cmdline): Out of memory fixes. - (grub_script_execute_menuentry): Likewise. - (grub_script_execute_argument_to_string): Removed. Update all - users by... - (grub_script_execute_argument_to_argv): ...better version. - * script/function.c (grub_script_function_create): Use - grub_script_execute_argument_to_argv instead of - grub_script_execute_argument_to_string. - - * script/lexer.c (check_varstate): Removed. - (check_textstate): Removed. - (grub_script_lexer_record_start): Likewise. - (grub_script_lexer_record_stop): Likewise. - (recordchar): Replaced with... - (grub_script_lexer_record): ...new function. - (nextchar): Removed. - (grub_script_lexer_init): Rewritten. - (grub_script_yylex): Rewritten. - (append_newline): New function. - (grub_script_lexer_yywrap): New function. - (grub_script_lexer_fini): New function. - (grub_script_yyerror): Sets error flag. - - * script/yylex.l: New file. - (grub_lexer_yyfree): Wrapper for flex yyffre. - (grub_lexer_yyalloc): Likewise. - (grub_lexer_yyrealloc): Likewise. - * script/parser.y: Refactored. - - * script/script.c (grub_script_arg_add): Out of memory fixes. - (grub_script_add_arglist): Likewise. - (grub_script_create_cmdline): Likewise. - (grub_script_create_cmdmenu): Likewise. - (grub_script_add_cmd): Likewise. - (grub_script_parse): Use grub_script_lexer_fini to deallocated. - * util/grub-script-check.c (grub_script_execute_menuentry): Remove - unnecessary code. - - * tests/grub_script_echo1.in: New testcase. - * tests/grub_script_vars1.in: New testcase. - * tests/grub_script_echo_keywords.in: New testcase. - -2010-03-14 Vladimir Serbinenko - - Remove some redundancy in build system. - - * Makefile.in (TARGET_CFLAGS): Add -ffreestanding. - (TARGET_ASFLAGS): Add -nostdinc -fno-builtin. - (TARGET_LDFLAGS): Add -nostdlib. - (TARGET_IMG_LDFLAGS): Likewise. - * commands/lsmmap.c (grub_cmd_lsmmap) [GRUB_MACHINE_EMU]: Don't do - anything since mmap isn't available. - * conf/any-emu.rmk (kernel_img_SOURCES): Remove commands/boot.c. - Add util/time.c. - (pkglib_MODULES): Remove reboot.mod. - (reboot_mod_SOURCES): Removed. - (reboot_mod_CFLAGS): Likewise. - (reboot_mod_LDFLAGS): Likewise. - * conf/common.rmk (script/lexer.c_DEPENDENCIES): New variable. - (MOSTLYCLEANFILES): Add symlist.c kernel_syms.lst. - (DEFSYMFILES): Add kernel_syms.lst. - (kernel_img_HEADERS): Add common headers. - (symlist.c): New target. - (kernel_syms.lst): Likewise. - (pkglib_MODULES): Add memdisk.mod. - (memdisk_mod_SOURCES): New variable. - (memdisk_mod_CFLAGS): Likewise. - (memdisk_mod_LDFLAGS): Likewise. - (pkglib_MODULES): Add reboot.mod. - (reboot_mod_SOURCES): New variable. - (reboot_mod_CFLAGS): Likewise. - (reboot_mod_LDFLAGS): Likewise. - (pkglib_MODULES): Add date.mod. - (date_mod_SOURCES): New variable. - (date_mod_CFLAGS): Likewise. - (date_mod_LDFLAGS): Likewise. - (pkglib_MODULES): Add datehook.mod. - (datehook_mod_SOURCES): New variable. - (datehook_mod_CFLAGS): Likewise. - (datehook_mod_LDFLAGS): Likewise. - (pkglib_MODULES): Add lsmmap.mod. - (lsmmap_mod_SOURCES): New variable. - (lsmmap_mod_CFLAGS): Likewise. - (lsmmap_mod_LDFLAGS): Likewise. - (pkglib_MODULES): Add boot.mod. - (boot_mod_SOURCES): New variable. - (boot_mod_CFLAGS): Likewise. - (boot_mod_LDFLAGS): Likewise. - * conf/i386-coreboot.rmk: Removed redundant parts. - * conf/i386-ieee1275.rmk: Likewise. - * conf/i386-pc.rmk: Likewise. - * conf/mips-yeeloong.rmk: Likewise. - * conf/mips.rmk: Likewise. - * conf/powerpc-ieee1275.rmk: Likewise. - * conf/sparc64-ieee1275.rmk: Likewise. - * conf/x86_64-efi.rmk: Likewise. - * conf/i386-coreboot.rmk: Moved qemu parts .. - * conf/i386-qemu.rmk: ... here - * conf/i386-efi.rmk: Moved common parts to... - * conf/x86-efi.rmk: ... here. - * conf/i386.rmk: Added modules common to all x86 variants. - * configure.ac: Add -m32/-m64 to TARGET_ASFLAGS. - * disk/memdisk.c: Remove grub/machine/kernel.h. - * gensymlist.sh.in: Include symbol.h. - * hook/datehook.c: Correct module name. - * include/grub/datetime.h (grub_get_datetime) [GRUB_MACHINE_EMU]: Export. - (grub_set_datetime) [GRUB_MACHINE_EMU]: Likewise. - * include/grub/i386/efi/serial.h: New file. - * include/grub/x86_64/efi/serial.h: Likewise. - * util/time.c: Likewise. - * video/ieee1275.c (grub_video_ieee1275_setup): Handle 64-bit void *. - -2010-03-14 Colin King -2010-03-14 Colin Watson - - Shrink the pre-partition-table part of boot.img by eight bytes. - - * boot/i386/pc/boot.S (ERR): New macro. - (chs_mode): Use ERR. - (geometry_error): Likewise. - (hd_probe_error): Remove. This is only used once, so we wrwite - it inline instead. - (read_error): Instead of printing read_error_string, just set up - %si and fall through to ... - (error_message): ... this new function, also used by ERR. - -2010-03-14 Colin Watson - - Speed up consecutive hostdisk operations on the same device. - - * util/hostdisk.c (struct grub_util_biosdisk_data): New structure. - (grub_util_biosdisk_open): Initialise disk->data. - (struct linux_partition_cache): New structure. - (linux_find_partition): Cache partition start positions; these are - expensive to compute on every read and write. - (open_device): Cache open file descriptor in disk->data, so that we - don't have to reopen it and flush the buffer cache for consecutive - operations on the same device. - (grub_util_biosdisk_close): New function. - (grub_util_biosdisk_dev): Set `close' member. - - * conf/common.rmk (grub_probe_SOURCES): Add kern/list.c. - * conf/i386-efi.rmk (grub_setup_SOURCES): Likewise. - * conf/i386-pc.rmk (grub_setup_SOURCES): Likewise. - * conf/sparc64-ieee1275.rmk (grub_setup_SOURCES): Likewise. - * conf/x86_64-efi.rmk (grub_setup_SOURCES): Likewise. - -2010-03-14 Vladimir Serbinenko - - Compile parts of grub-emu as modules. - - * Makefile.in (TARGET_CPPFLAGS) [emu]: Remove -nostdinc -isystem. - (pkglib_DATA) [emu]: Remove moddep.lst command.lst fs.lst - partmap.lst parttool.lst handler.lst video.lst crypto.lst terminal.lst. - (all-local): Add $(GRUB_EMU). - (install-local): Install $(GRUB_EMU). - (uninstall): Uninstall $(GRUB_EMU). - * commands/parttool.c: Replace GRUB_UTIL with GRUB_NO_MODULES. - * kern/dl.c: Likewise. - * commands/sleep.c: Not include machine/time.h. - * conf/any-emu.rmk (COMMON_LDFLAGS): New variable. - (COMMON_CFLAGS): Likewise. - (sbin_UTILITIES): Remove grub-emu. - (grub_emu_SOURCES): Removed. - (kernel_img_RELOCATABLE): New variable. - (pkglib_PROGRAMS): Add kernel.img. - (kernel_img_SOURCES): New variable - (kernel_img_CFLAGS): Likewise. - (kernel_img_LDFLAGS): Likewise. - (TARGET_NO_STRIP): Likewise. - (TARGET_NO_DYNAMIC_MODULES): Likewise. - (pkglib_MODULES): Add progname.mod, hostfs.mod, host.mod, reboot.mod, - halt.mod, cpuid.mod, usb.mod, sdl.mod and pci.mod. - (grub-emu): New target. - (GRUB_EMU): New variable. - * configure.ac: Whitelist -emu as possible x86_64 architecture. - * efiemu/main.c: Replace GRUB_UTIL with GRUB_MACHINE_EMU. - * loader/xnu.c: Likewise. - * include/grub/pci.h: Likewise. - * genemuinit.sh: New file. - * genemuinitheader.sh: Likewise. - * genmk.rb: Don't strip if TARGET_NO_STRIP is yes. - Support TARGET_NO_DYNAMIC_MODULES. - * include/grub/dl.h (GRUB_NO_MODULES): New variable. - * commands/search.c: Fix GRUB_MOD_INIT and GRUB_MOD_FINI arguments. - * disk/loopback.c: Likewise. - * font/font_cmd.c: Likewise. - * partmap/acorn.c: Likewise. - * partmap/amiga.c: Likewise. - * partmap/apple.c: Likewise. - * partmap/gpt.c: Likewise. - * partmap/msdos.c: Likewise. - * partmap/sun.c: Likewise. - * parttool/msdospart.c: Likewise. - * term/gfxterm.c: Likewise. - * video/bitmap.c: Likewise. - * video/readers/jpeg.c: Likewise. - * video/readers/png.c: Likewise. - * video/readers/tga.c: Likewise. - * video/video.c: Likewise. - * util/grub-emu.c (read_command_list): Removed. - (main): Don't call util_init_nls. - * util/misc.c (grub_err_printf) [!GRUB_UTIL]: Removed. - (grub_util_init_nls) [!GRUB_UTIL]: Likewise. - -2010-03-14 Vladimir Serbinenko - - * conf/powerpc-ieee1275.rmk (pkglib_MODULES): Add datetime.mod, - date.mod, datehook.mod. - (datetime_mod_SOURCES): New variable. - (datetime_mod_CFLAGS): Likewise. - (datetime_mod_LDFLAGS): Likewise. - (date_mod_SOURCES): Likewise. - (date_mod_CFLAGS): Likewise. - (date_mod_LDFLAGS): Likewise. - (datehook_mod_SOURCES): Likewise. - (datehook_mod_CFLAGS): Likewise. - (datehook_mod_LDFLAGS): Likewise. - * conf/sparc64-ieee1275.rmk: Likewise. - * lib/ieee1275/datetime.c: New file. - -2010-03-14 Vladimir Serbinenko - - * conf/powerpc-ieee1275.rmk (pkglib_MODULES): Add ieee1275_fb.mod. - (ieee1275_fb_mod_SOURCES): New variable. - (ieee1275_fb_mod_CFLAGS): Likewise. - (ieee1275_fb_mod_LDFLAGS): Likewise. - * include/grub/ieee1275/ieee1275.h (grub_ieee1275_devices_iterate): - New proto. - * kern/ieee1275/init.c (HEAP_MAX_SIZE): Increased. - (HEAP_MAX_ADDR): Likewise. - * kern/ieee1275/openfw.c (grub_children_iterate): Don't skip empty - type. - Correct stop condition. - (grub_ieee1275_devices_iterate): New function. - * video/ieee1275.c: New file. - -2010-03-14 Vladimir Serbinenko - - Merge sparc grub-mkimage into generic grub-mkimage and a.out support. - - * boot/sparc64/ieee1275/boot.S (boot_continue): Use SCRATCH_PAD_BOOT - as scratch. - * boot/sparc64/ieee1275/diskboot.S (after_info_block): Use - SCRATCH_PAD_DISKBOOT as scratch. - (bootit): Pass Openfirmware pointer in %o4. - * conf/sparc64-ieee1275.rmk (kernel_img_LDFLAGS): Link at 0x4400 instead - of 0x200000. - (grub_mkimage_SOURCES): Replace util/sparc64/ieee1275/grub-mkimage.c - with util/grub-mkrawimage.c. - * configure.ac: Handle GRUB_MACHINE_SPARC64 and GRUB_MACHINE_MIPS. - * include/grub/aout.h (AOUT_MID_SUN): New definition. - (grub_aout_get_type) [GRUB_UTIL]: Removed. - (grub_aout_load) [GRUB_UTIL]: Likewise. - * include/grub/kernel.h (grub_modules_get_end): New proto. - * include/grub/sparc64/ieee1275/boot.h (SCRATCH_PAD): Removed. - (SCRATCH_PAD_BOOT): New definition. - (SCRATCH_PAD_DISKBOOT): Likewise. - (GRUB_BOOT_MACHINE_IMAGE_ADDRESS): Set to 0x4400. - * include/grub/sparc64/ieee1275/ieee1275.h - (grub_ieee1275_original_stack): New variable - * include/grub/sparc64/ieee1275/kernel.h (GRUB_KERNEL_MACHINE_RAW_SIZE): - New definition - (GRUB_KERNEL_MACHINE_STACK_SIZE): Likewise. - (GRUB_PLATFORM_IMAGE_FORMATS): Likewise. - (GRUB_PLATFORM_IMAGE_DEFAULT_FORMAT): Likewise. - (GRUB_PLATFORM_IMAGE_DEFAULT): Likewise. - (GRUB_PLATFORM_IMAGE_RAW): Likewise. - (GRUB_PLATFORM_IMAGE_AOUT): Likewise. - (grub_platform_image_format_t): New type. - * kern/mips/yeeloong/init.c (grub_modules_get_end): Move from here ... - * kern/main.c (grub_modules_get_end) - [GRUB_MACHINE_MIPS_YEELOONG || GRUB_MACHINE_SPARC64]: ... here. - * kern/sparc64/ieee1275/crt0.S: Store firmware entry point in %o0. - (codestart): Switch stacks. - * kern/sparc64/ieee1275/init.c (grub_ieee1275_original_stack): New - variable. - (grub_heap_init): Use grub_modules_get_end. - * loader/sparc64/ieee1275/linux.c (grub_linux_boot): Restore original - stack. - * util/grub-mkrawimage.c (generate_image): Support sparc64. - (main): Likewise. - * util/sparc64/ieee1275/grub-mkimage.c: Removed. - -2010-03-14 Thorsten Glaser - - * util/grub-mkrescue.in: Base ISO UUID on UTC. - -2010-03-08 Matt Kraai - - * util/i386/pc/grub-setup.c (setup): Fix a grammatical error (Debian - bug #559005). - -2010-03-07 Vladimir Serbinenko - - * genmoddep.awk: Output all missing symbols and not only first. - -2010-03-06 Vladimir Serbinenko - - * NEWS: Put the date of 1.98 release. - -2010-03-06 Vladimir Serbinenko - - * configure.ac: Update CPPFLAGS and not CFLAGS when checking for - ft2build.h. - -2010-03-06 Vladimir Serbinenko - - * normal/cmdline.c (grub_cmdline_get): Fix gabled line after - completition in the middle of string. - -2010-03-06 Vladimir Serbinenko - - * util/grub-mkrescue.in: Use mktemp with explicit template. - -2010-03-06 Vladimir Serbinenko - - * loader/i386/bsd.c (grub_bsd_get_device): Fix a memory leak. - -2010-03-06 Vladimir Serbinenko - - * loader/i386/multiboot_mbi.c (grub_multiboot_set_bootdev): Free the - right pointer. - -2010-03-05 Vladimir Serbinenko - - Fix FreeBSD compilation. - - * Makefile.in (TARGET_CPPFLAGS): Remove -nostdinc -isystem. - * configure.ac: Add -nostdinc -isystem to TARGET_CPPFLAGS if it works. - -2010-03-05 Vladimir Serbinenko - - * util/import_gcry.py: Add autogenerated files to MAINTAINER_CLEANFILES. - -2010-03-04 Vladimir Serbinenko - - * gettext/gettext.c (grub_gettext_init_ext): Fix a memory leak. - -2010-03-04 Vladimir Serbinenko - - * disk/scsi.c (grub_scsi_iterate): Fix a memory leak. - -2010-03-04 Robert Millan - - Support relative image path in theme file. - - * gfxmenu/gui_image.c (grub_gui_image): New member theme_dir. - (image_set_property): Handle theme_dir and relative path. - -2010-03-04 Vladimir Serbinenko - - * configure.ac: Alias amd64 to x86_64. - -2010-03-04 Vladimir Serbinenko - - * NEWS: mention multiboot on EFI. - -2010-03-04 Vladimir Serbinenko - - * kern/main.c (grub_load_modules): Handle errors from init functions of - embeded modules. - -2010-03-04 Vladimir Serbinenko - - * normal/autofs.c (autoload_fs_module): Handle errors. - -2010-03-04 Vladimir Serbinenko - - Disable linux.mod on qemu-mips since it's not functional and leads - to compilation failure. - - * conf/mips.rmk (pkglib_MODULES): Remove linux.mod. - * conf/mips-yeeloong.rmk (pkglib_MODULES): Add linux.mod. - * conf/mips.rmk (linux_mod_SOURCES): Move from here ... - * conf/mips-yeeloong.rmk (linux_mod_SOURCES): ... here - * conf/mips.rmk (linux_mod_CFLAGS): Move from here ... - * conf/mips-yeeloong.rmk (linux_mod_CFLAGS): ... here - * conf/mips.rmk (linux_mod_ASFLAGS): Move from here ... - * conf/mips-yeeloong.rmk (linux_mod_ASFLAGS): ... here - * conf/mips.rmk (linux_mod_LDFLAGS): Move from here ... - * conf/mips-yeeloong.rmk (linux_mod_LDFLAGS): ... here - Reported by: BVK Chaitanya - -2010-03-04 Jordan Uggla - - * INSTALL: Add gettext as a dependency and add qemu to a new section - "Prerequisites for make-check". - -2010-03-04 Christian Franke - - * util/grub-pe2elf.c: Add missing include "progname.h". - -2010-03-04 Vladimir Serbinenko - - * normal/crypto.c (read_crypto_list): Fix a typo. - Reported by: Seth Goldberg. - -2010-03-04 Vladimir Serbinenko - - * Makefile.in (DISTCLEANFILES): Add stamp-h1. - Reported by: Seth Goldberg. - -2010-03-04 Vladimir Serbinenko - - * Makefile.in (CLEANFILES) [FONT_SOURCE && grub_mkfont]: Add - ascii.bitmaps. - -2010-03-04 Vladimir Serbinenko - - * genmk.rb: Remove terminal*.lst in make clean. - Reported by: Seth Goldberg. - -2010-03-04 Vladimir Serbinenko - - * util/i386/efi/grub-install.in: Copy gettext files. - -2010-03-01 Vladimir Serbinenko - - * fs/ext2.c (grub_ext2_read_block): Fix an integer overflow. - -2010-03-01 Vladimir Serbinenko - - Wait for user entry basing on presence of output rather than on errors. - - * include/grub/normal.h (grub_normal_get_line_counter): New proto. - (grub_install_newline_hook): Likewise. - * normal/main.c (GRUB_MOD_INIT): Call grub_install_newline_hook. - * normal/menu.c (show_menu): Check line_counter to determine presence - of output. - * normal/term.c (grub_normal_line_counter): New variable. - (grub_normal_get_line_counter): New function. - (grub_install_newline_hook): Likewise. - -2010-03-01 Vladimir Serbinenko - - * commands/cat.c (grub_cmd_cat): Propagate grub_gzfile_open error. - -2010-03-01 Vladimir Serbinenko - - * configure.ac: Update version to 1.98. - -2010-02-26 Vladimir Serbinenko - - * util/grub.d/10_linux.in (linux_entry): Don't default to - gfxpayload=keep if Linux doesn't support video handover. - -2010-02-25 Vladimir Serbinenko - - Don't compile video modules on yeeloong since video subsystem is part - of kernel. - - * conf/common.rmk (pkglib_MODULES) [yeeloong]: Remove video.mod, - video_fb.mod, bitmap.mod, font.mod, gfxterm.mod and bufio.mod - * conf/mips-yeeloong.rmk (kernel_img_HEADERS): Add bitmap.h, - video.h, gfxterm.h, font.h, bitmap_scale.h and bufio.h. - * conf/mips.rmk (kernel_img_HEADERS): Add values instead of overwriting. - * include/grub/bitmap.h: Add EXPORT_FUNC and EXPORT_VAR. - * include/grub/bitmap_scale.h: Likewise. - * include/grub/bufio.h: Likewise. - * include/grub/font.h: Likewise. - * include/grub/gfxterm.h: Likewise. - * include/grub/video.h: Likewise. - * include/grub/vbe.h: Don't include video_fb.h. - * video/i386/pc/vbe.c: Include video_fb.h. - * commands/i386/pc/vbetest.c: Include video.h. - -2010-02-25 Jordan Uggla - - * util/grub-mkconfig.in (GRUB_SAVEDEFAULT): Export new variable. - * util/grub-mkconfig_lib.in (save_default_entry): Only save a new - default entry if GRUB_SAVEDEFAULT=true. This allows using - GRUB_DEFAULT=saved on its own to let grub-reboot work, without - saving a new default on every boot. - -2010-02-24 Vladimir Serbinenko - - * normal/crypto.c (read_crypto_list): Fix a memory leak. - * normal/term.c (read_terminal_list): Likewise. - * normal/main.c (grub_normal_init_page): Likewise. - (grub_normal_read_line_real): Likewise. - -2010-02-24 Vladimir Serbinenko - - * loader/i386/multiboot_mbi.c (grub_multiboot_set_bootdev): Fix a - memory leak. - Reported by: Seth Goldberg. - -2010-02-24 Joey Korkames - - * term/ieee1275/ofconsole.c (grub_ofconsole_readkey): Remove - duplicate declaration of `start'. - -2010-02-20 Vladimir Serbinenko - - * fs/iso9660.c (grub_iso9660_iterate_dir): Strip version from joliet - filename. - Reported by: Georgy Buranov - -2010-02-20 Carles Pina i Estany - - * util/grub-mkrawimage.c (usage): Change string formatting to - improve gettext. - -2010-02-20 Manoel Rebelo Abranches - - * term/ieee1275/ofconsole.c (grub_ofconsole_readkey): Add delete and - backspace keys. - -2010-02-20 Vladimir Serbinenko - - * video/fb/video_fb.c (grub_video_fb_scroll): Fix a pixel size bug. - Reported by: Michael Suchanek. - -2010-02-18 Samuel Thibault - - * util/grub-mkconfig.in: Export GRUB_INIT_TUNE. - * util/grub.d/00_header.in: Handle GRUB_INIT_TUNE. - -2010-02-16 Vladimir Serbinenko - - Remove any reference to non-free fonts. - - * commands/videotest.c (grub_cmd_videotest): Use unifont by default. - * docs/gfxmenu-theme-example.txt: Removed. It's both outdated and - uses non-free components. - * font/font.c (grub_font_get_name): Remove example name. - * gfxmenu/gui_label.c (grub_gui_label_new): Use unifont by default. - * gfxmenu/gui_list.c (grub_gui_list_new): Likewise. - * gfxmenu/gui_progress_bar.c (grub_gui_progress_bar_new): Likewise. - * gfxmenu/view.c (grub_gfxmenu_view_new): Likewise. - -2010-02-16 Georgy Buranov - - * disk/efi/efidisk.c (grub_efidisk_get_device_name): Fix a typo. - -2010-02-15 Vladimir Serbinenko - - * term/serial.c (serial_get_divisor) [GRUB_MACHINE_MIPS_YEELOONG]: - Double divisor. - (serial_hw_init) [GRUB_MACHINE_MIPS_YEELOONG]: Don't enable advanced - features. - (GRUB_MOD_INIT) [GRUB_MACHINE_MIPS_YEELOONG]: Default to 115200. - -2010-02-15 Vladimir Serbinenko - - * gensymlist.sh.in: Use TARGET_CC instead of CC. - -2010-02-14 Samuel Thibault - - * commands/i386/pc/play.c (GRUB_MOD_INIT(play)): Fix help. - * docs/grub.texi (Command-line and menu entry commands): Document play - command. - -2010-02-14 Samuel Thibault - - * commands/i386/pc/play.c (grub_cmd_play): If grub_file_open fails, - parse arguments as inline tempo and notes. Move code for playing notes - to... - (play): ... new function. - -2010-02-14 Samuel Thibault - - * commands/i386/pc/play.c (T_REST, T_FINE, struct note, beep_on): Use - grub_uint16_t instead of short. - (grub_cmd_play): Use grub_uint32_t instead of int, convert data from - disk from little endian to cpu endianness. - -2010-02-07 Samuel Thibault - - * commands/i386/pc/play.c (BASE_TEMPO): Set to 60 * - GRUB_TICKS_PER_SECOND instead of 120. - -2010-02-14 Vladimir Serbinenko - - * term/ieee1275/ofconsole.c (grub_ofconsole_readkey): Wait for possible - escape sequence after \e. - -2010-02-14 Vladimir Serbinenko - - * term/ieee1275/ofconsole.c (grub_ofconsole_putchar): Don't output - non-ASCII characters. - -2010-02-14 Vladimir Serbinenko - - * util/grub-mkconfig_lib.in (prepare_grub_to_access_device): Enclose - set root in single quotes to prevent \, from being unescaped. - -2010-02-14 Vladimir Serbinenko - - Prevent unknown commands from stopping menuentry execution. - - * script/execute.c (grub_script_execute_cmdline): Print error after - unknown command. - -2010-02-14 Vladimir Serbinenko - - * fs/i386/pc/pxe.c (GRUB_MOD_INIT): Fix typo. - Reported by: Pavel Pisa. - -2010-02-13 Vladimir Serbinenko - - * io/gzio.c (grub_gzio_open): Use grub_zalloc. - -2010-02-13 Vladimir Serbinenko - - Merge grub_ieee1275_map_physical into grub_map and rename to - grub_ieee1275_map - - * include/grub/ieee1275/ieee1275.h (grub_ieee1275_map): New proto. - * include/grub/sparc64/ieee1275/ieee1275.h (grub_ieee1275_map_physical): - Remove. - * kern/ieee1275/openfw.c (grub_map): Rename to ... - (grub_ieee1275_map): ... this. All users updated. Add phys_lo when - necessary. - * kern/sparc64/ieee1275/ieee1275.c (grub_ieee1275_map_physical): Remove. - -2010-02-13 Vladimir Serbinenko - - * disk/ieee1275/ofdisk.c (grub_ofdisk_open): Check device type before - opening and not after. - -2010-02-13 Vladimir Serbinenko - - * term/ieee1275/ofconsole.c (grub_ofconsole_readkey): Macroify - constants. - -2010-02-13 Vladimir Serbinenko - - * loader/sparc64/ieee1275/linux.c (align_addr): Remove. - (alloc_phys): Use ALIGN_UP instead of align_addr. - -2010-02-13 Vladimir Serbinenko - - * loader/sparc64/ieee1275/linux.c (alloc_phys): Correct bounds checking. - -2010-02-13 Vladimir Serbinenko - - * kern/sparc64/ieee1275/crt0.S (codestart): Move modules backwards. - -2010-02-13 Vladimir Serbinenko - - * disk/ieee1275/ofdisk.c (grub_ofdisk_read): Remove excessively - verbose dprintf. - -2010-02-13 Vladimir Serbinenko - - Fix over-4GiB seek on sparc64. - - * include/grub/ieee1275/ieee1275.h (grub_ieee1275_seek): - Replace pos_i and pos_lo with pos. All users updated. - * include/grub/powerpc/ieee1275/ieee1275.h (GRUB_IEEE1275_CELL_SIZEOF): - New constant. - * include/grub/sparc64/ieee1275/ieee1275.h (GRUB_IEEE1275_CELL_SIZEOF): - Likewise. - * kern/ieee1275/ieee1275.c (grub_ieee1275_seek): Split pos into pos_hi - and pos_lo. - -2010-02-13 Vladimir Serbinenko - - * util/grub-mkrawimage.c (main): Call set_program_name. - -2010-02-13 Vladimir Serbinenko - - Properly align 64-bit targets. - - * util/grub-mkrawimage.c (ALIGN_ADDR): New macro. - (generate_image): Use ALIGN_ADDR. - -2010-02-13 Vladimir Serbinenko - - Properly create cross-endian images. - - * include/grub/types.h (grub_host_to_target_addr): New macro - * util/grub-mkrawimage.c (generate_image): Add missing host_to_target. - -2010-02-13 Vladimir Serbinenko - - * util/grub-mkrawimage.c (generate_image): Add forgotten ALIGN_UP. - -2010-02-10 Vladimir Serbinenko - - Pass SIMPLE framebuffer size in bytes and not 64K blocks. - - * loader/i386/efi/linux.c (grub_linux_setup_video): Don't divide by 64K. - * loader/i386/linux.c (grub_linux_setup_video): Likewise. - (grub_linux_boot): Divide by 64K when on VESA. - -2010-02-10 Vladimir Serbinenko - - Support GRUB_GFXPAYLOAD_LINUX. - - * util/grub-mkconfig.in: Export GRUB_GFXPAYLOAD_LINUX. - * util/grub.d/10_linux.in (linux_entry): Handle GRUB_GFXPAYLOAD_LINUX. - -2010-02-10 Vladimir Serbinenko - - * script/execute.c (grub_script_execute_cmdline): Use grub_print_error - to show messages instead of discarding them. - Process errors after executing command and not before. Keep old method - too as precaution. - -2010-02-09 Vladimir Serbinenko - - * configure.ac: Check for ft2build.h. - -2010-02-07 Vladimir Serbinenko - - * kern/ieee1275/openfw.c (grub_halt): Try executing "poweroff". - -2010-02-07 Vladimir Serbinenko - - * genkernsyms.sh.in: Use TARGET_CC. - -2010-02-07 Colin Watson - - * NEWS: Update. - -2010-02-07 Vladimir Serbinenko - - * include/grub/multiboot2.h: Remove leftover file. - * include/grub/normal.h [GRUB_UTIL]: Remove leftover declarations. - * include/grub/partition.h [GRUB_UTIL]: Likewise. - -2010-02-07 Yves Blusseau - - * gnulib/getdelim.c: add missing header (type ssize_t must be defined). - -2010-02-07 Vladimir Serbinenko - - Fix warnings in grub-emu when compiling with maximum warning options. - - * util/grub-emu.c (ENABLE_RELOCATABLE): New definition. - (grub_arch_modules_addr): Return 0 and not NULL. - * util/misc.c (ENABLE_RELOCATABLE): New definition. - (xstrdup): Use newstr instead of dup. - * util/hostdisk.c (grub_util_biosdisk_get_grub_dev): Rename one instance - of disk to dsk to avoid shadowing. - (find_free_slot): Fix prototype. - * util/getroot.c (grub_util_is_dmraid): Make static. - * include/grub/time.h (grub_get_rtc) [GRUB_MACHINE_EMU || GRUB_UTIL]: - Add missing prototype. - * util/sdl.c (grub_video_sdl_set_viewport): Remove. - -2010-02-07 Vladimir Serbinenko - - * loader/i386/linux.c (grub_linux_setup_video): Handle error - appropriately. - -2010-02-07 Vladimir Serbinenko - - * fs/reiserfs.c (grub_reiserfs_read): Use #if 0 instead of commenting - code out. - -2010-02-07 Vladimir Serbinenko - - * include/grub/cache.h (grub_arch_sync_caches) [i386 || x86_64]: Inline. - * kern/i386/coreboot/init.c (grub_arch_sync_caches): Remove. - * kern/i386/efi/init.c (grub_arch_sync_caches): Likewise. - * kern/i386/ieee1275/init.c (grub_arch_sync_caches): Likewise. - * kern/i386/pc/init.c (grub_arch_sync_caches): Likewise. - * util/misc.c (grub_arch_sync_caches) [i386 || x86_64]: Likewise. - -2010-02-07 Vladimir Serbinenko - - * include/grub/err.h (grub_err_printf): Don't export. - -2010-02-07 Vladimir Serbinenko - - * include/grub/dl.h (grub_dl_register_symbol): Don't export. - -2010-02-07 Vladimir Serbinenko - - * include/grub/i18n.h (grub_gettext_dummy): Removed. - * kern/misc.c (grub_gettext_dummy): Make static. - -2010-02-06 Vladimir Serbinenko - - * kern/misc.c (grub_utf8_to_ucs4): Don't eat valid characters preceeded - by non-valid ones. - * kern/term.c (grub_putchar): Likewise. - -2010-02-06 Vladimir Serbinenko - - * partmap/sun.c (sun_partition_map_iterate): Restructure flow to fix - buggy hook call and memory leak. - -2010-02-06 Vladimir Serbinenko - - * commands/ls.c (grub_ls_list_files): Free pathname on exit. - -2010-02-06 Vladimir Serbinenko - - * fs/fat.c (grub_fat_iterate_dir): Free unibuf at exit. - -2010-02-06 Vladimir Serbinenko - - * loader/i386/pc/xnu.c (grub_xnu_set_video): Add const qualifier to - modevar. - Return grub_errno on allocation error. - -2010-02-06 Vladimir Serbinenko - - * disk/ieee1275/ofdisk.c (grub_ofdisk_read): Correct error handling. - -2010-02-06 Yves Blusseau - - * conf/common.rmk (grub_script_check_SOURCES): add missing dependencies. - (grub_mkpasswd_pbkdf2_SOURCES): Likewise. - -2010-02-06 Vladimir Serbinenko - - * fs/i386/pc/pxe.c (grub_pxefs_dir): Return with failure on - non-pxe disk. - (grub_pxefs_open): Likewise. - -2010-02-06 Robert Millan - - * util/grub.d/10_hurd.in: Add --class information to menuentries. - * util/grub.d/10_kfreebsd.in: Likewise. - * util/grub.d/10_linux.in: Likewise. - -2010-02-06 Colin D Bennett - - * conf/common.rmk (pkglib_MODULES): Add gfxmenu.mod. - (gfxmenu_mod_SOURCES): New variable. - (gfxmenu_mod_CFLAGS): Likewise. - (gfxmenu_mod_LDFLAGS): Likewise. - * include/grub/term.h (grub_term_set_current_output): Declare - argument as const. - * docs/gfxmenu-theme-example.txt: New file. - * gfxmenu/gfxmenu.c: Likewise. - * gfxmenu/gui_box.c: Likewise. - * gfxmenu/gui_canvas.c: Likewise. - * gfxmenu/gui_circular_progress.c: Likewise. - * gfxmenu/gui_image.c: Likewise. - * gfxmenu/gui_label.c: Likewise. - * gfxmenu/gui_list.c: Likewise. - * gfxmenu/gui_progress_bar.c: Likewise. - * gfxmenu/gui_string_util.c: Likewise. - * gfxmenu/gui_util.c: Likewise. - * gfxmenu/icon_manager.c: Likewise. - * gfxmenu/model.c: Likewise. - * gfxmenu/named_colors.c: Likewise. - * gfxmenu/theme_loader.c: Likewise. - * gfxmenu/view.c: Likewise. - * gfxmenu/widget-box.c: Likewise. - * include/grub/gfxmenu_model.h: Likewise. - * include/grub/gfxmenu_view.h: Likewise. - * include/grub/gfxwidgets.h: Likewise. - * include/grub/gui.h: Likewise. - * include/grub/gui_string_util.h: Likewise. - * include/grub/icon_manager.h: Likewise. - -2010-02-06 Vladimir Serbinenko - - Agglomerate scrolling in gfxterm. - - * term/gfxterm.c (grub_virtual_screen): New member 'total_screen'. - (grub_virtual_screen_setup): Initialise 'total_screen'. - (write_char): Split to ... - (paint_char): ... this ... - (write_char): ... and this. - (paint_char): Handle delayed scrolling. - (draw_cursor): Likewise. - (scroll_up): Split to ... - (real_scroll): ... this ... - (scroll_up): ... and this. - (real_scroll): Handle multi-line scroll and draw below-the-bottom - characters. - (grub_gfxterm_refresh): Call real_scroll. - -2010-02-06 Colin D Bennett - - * include/grub/misc.h (grub_iscntrl): New inline function. - (grub_isalnum): Likewise. - (grub_strtol): Likewise. - -2010-02-06 Colin D Bennett - - * normal/menu_text.c (get_entry_number): Move from here ... - * normal/menu.c (get_entry_number): ... moved here. - * include/grub/menu.h (grub_menu_get_default_entry_index): - New prototype. - * normal/menu.c (grub_menu_get_default_entry_index): New function. - * normal/menu_text.c (run_menu): Use grub_menu_get_default_entry_index. - * include/grub/menu_viewer.h (grub_menu_viewer_init): New prototype. - (grub_menu_viewer_should_return): Likewise. - * normal/main.c (GRUB_MOD_INIT (normal)): Call grub_menu_viewer_init. - * normal/menu_text.c (run_menu): Enable menu switching. - * normal/menu_viewer.c (should_return): New variable. - (menu_viewer_changed): Likewise. - (grub_menu_viewer_show_menu): Handle menu viewer changes. - (grub_menu_viewer_should_return): New function. - (menuviewer_write_hook): Likewise. - (grub_menu_viewer_init): Likewise. - -2010-02-06 Colin D Bennet -2010-02-06 Vladimir Serbinenko - - Support for gfxterm in a window. - - * include/grub/gfxterm.h: New file. - * include/grub/video.h (struct grub_video_rect): New declaration. - (grub_video_rect_t): Likewise. - * term/gfxterm.c (struct grub_gfxterm_window): New type. - (refcount): New variable. - (render_target): Likewise. - (window): Likewise. - (repaint_callback): Likewise. - (grub_virtual_screen_setup): Use 'render_target'. - (init_window): New function. - (grub_gfxterm_init_window): Likewise. - (grub_gfxterm_init): Check reference counter. - Use init_window. - (destroy_window): New function. - (grub_gfxterm_destroy_window): Likewise. - (grub_gfxterm_fini): Check reference counter. - Use destroy_window. - (redraw_screen_rect): Restore viewport. - Use 'render_target' and 'window'. - Call 'repaint_callback'. - (write_char): Use 'render_target'. - (draw_cursor): Likewise. - (scroll_up): Restore viewport. - Use 'render_target' and 'window'. - Call 'repaint_callback'. - (grub_gfxterm_cls): Likewise. - (grub_gfxterm_refresh): Use 'window'. - (grub_gfxterm_set_repaint_callback): New function. - (grub_gfxterm_background_image_cmd): Use 'window'. - (grub_gfxterm_get_term): New function. - (GRUB_MOD_INIT(term_gfxterm)): Set 'refcount' to 0. - -2010-02-06 Colin D Bennett - - Bitmap scaling support. - - * conf/common.rmk (pkglib_MODULES): Add bitmap_scale.mod. - (bitmap_scale_mod_SOURCES): New variable. - (bitmap_scale_mod_CFLAGS): Likewise. - (bitmap_scale_mod_LDFLAGS): Likewise. - * include/grub/bitmap_scale.h: New file. - * term/gfxterm.c (BACKGROUND_CMD_ARGINDEX_MODE): New definiton. - (background_image_cmd_options): New variable. - (grub_gfxterm_background_image_cmd): Support bitmap stretching. - (cmd): Rename and change type to ... - (background_image_cmd_handle): ... this. All users updated. - (GRUB_MOD_INIT(term_gfxterm)): Make background_image extended command. - * video/bitmap_scale.c: New file. - -2010-02-06 Vladimir Serbinenko - - SDL support. - - * Makefile.in (LIBSDL): New variable. - (enable_grub_emu_sdl): Likewise. - * conf/i386-pc.rmk (grub_emu_SOURCES): Add video files. - (grub_emu_SOURCES) [enable_grub_emu_sdl]: Add util/sdl.c. - (grub_emu_LDFLAGS) [enable_grub_emu_sdl]: Add $(LIBSDL). - * configure.ac: Detect SDL availability and add --enable-grub-emu-sdl - * util/sdl.c: New file. - -2010-02-06 Colin D Bennett -2010-02-06 Vladimir Serbinenko - - Double buffering support. - - * commands/i386/pc/videotest.c (grub_cmd_videotest): Swap doublebuffers. - * include/grub/video.h: Update comment. - * include/grub/video_fb.h (grub_video_fb_doublebuf_update_screen_t): - New type. - (grub_video_fb_doublebuf_blit_init): New prototype. - * term/gfxterm.c (scroll_up): Support double buffering. - (grub_gfxterm_refresh): Likewise. - * video/fb/video_fb.c (doublebuf_blit_update_screen): New function. - (grub_video_fb_doublebuf_blit_init): Likewise. - * video/i386/pc/vbe.c (framebuffer): Remove 'render_target'. Add - 'front_target', 'back_target', 'offscreen_buffer', 'page_size', - 'displayed_page', 'render_page' and 'update_screen'. - (grub_video_vbe_fini): Free offscreen buffer. - (doublebuf_pageflipping_commit): New function. - (doublebuf_pageflipping_update_screen): Likewise. - (doublebuf_pageflipping_init): Likewise. - (double_buffering_init): Likewise. - (grub_video_vbe_setup): Enable doublebuffering. - (grub_video_vbe_swap_buffers): Implement. - (grub_video_vbe_set_active_render_target): Handle double buffering. - (grub_video_vbe_get_active_render_target): Likewise. - (grub_video_vbe_get_info_and_fini): Likewise. Free offscreen_buffer. - (grub_video_vbe_adapter): Use grub_video_vbe_get_active_render_target. - (grub_video_vbe_enable_double_buffering): Likewise. - (grub_video_vbe_swap_buffers): Use update_screen. - (grub_video_set_mode): Use double buffering. - -2010-02-06 Robert Millan - - * maintainance/gentrigtables.py: Remove. - * lib/trig.c: Likewise. - - * gentrigtables.c: New file. C rewrite of gentrigtables.py. - - * conf/common.rmk (trig_mod_SOURCES): Replace `lib/trig.c' with - `trigtables.c'. - (trigtables.c): New rule. - (gentrigtables): Likewise. - (DISTCLEANFILES): Add `trigtables.c' and `gentrigtables'. - -2010-02-06 Robert Millan - - * maintainance/gentrigtables.py: Avoid duplicate hardcoding of - integer constants. - -2010-02-06 Colin D Bennet - - Trigonometry support. - - * include/grub/trig.h: New file. - * lib/trig.c: Likewise. - * maintainance/gentrigtables.py: Likewise. - * conf/common.rmk (pkglib_MODULES): Add trig.mod. - (trig_mod_SOURCES): New variable. - (trig_mod_CFLAGS): Likewise. - (trig_mod_LDFLAGS): Likewise. - -2010-02-06 Vladimir Serbinenko - - * kern/ieee1275/openfw.c (grub_ieee1275_encode_devname): Support whole - disk devices. - -2010-02-06 Vladimir Serbinenko - - * kern/ieee1275/openfw.c (grub_devalias_iterate): Stop iterating on - error. - -2010-02-03 Vladimir Serbinenko - - * util/hostdisk.c (open_device): Don't use partition device when reading - before the partition. - (grub_util_biosdisk_read): Don't read from partition and before the - partition in single operation. - (grub_util_biosdisk_write): Don't write to partition and before the - partition in single operation. - -2010-02-03 Torsten Landschoff - - * kern/disk.c (grub_disk_read): Fix offset computation when reading - last sectors. - -2010-02-03 Vladimir Serbinenko - - * disk/i386/pc/biosdisk.c (grub_biosdisk_read): Handle non-2048 aligned - CDROM reads. - (grub_biosdisk_write): Refuse to write to CDROM. - -2010-01-31 Vladimir Serbinenko - - * disk/ieee1275/ofdisk.c (grub_ofdisk_iterate): Fix off-by-one error. - -2010-01-31 Vladimir Serbinenko - - * font/font.c (find_glyph): Check that bmp_idx is available before - using it. - (grub_font_get_string_width): Never call grub_font_get_glyph_internal - with (font == NULL). - -2010-01-28 Christian Schmitt - - * util/ieee1275/grub-install.in: Fix nvsetenv arguments. - -2010-01-28 BVK Chaitanya - - * include/grub/script_sh.h (sourcecode): Add const qualifier. - * util/grub-script-check.c (getline): Fix empty lines case. - -2010-01-28 Robert Millan - - * Makefile.in (check): Exit with fail status when one of the tests - fails. - * tests/example_functional_test.c (example_test): Fix reversed assert. - * tests/example_unit_test.c (example_test): Likewise. - -2010-01-28 Colin Watson - - * util/grub.d/10_linux.in: This script does not use any of the - contents of gettext.sh, only the external command `gettext', so stop - sourcing it. (Moreover, gettext.sh isn't necessarily installed in - the same prefix as GRUB.) - * util/grub.d/10_kfreebsd.in: Likewise. - -2010-01-27 Vladimir Serbinenko - - * normal/cmdline.c (grub_cmdline_get): Fix completion in the middle - of the line. - -2010-01-27 Vladimir Serbinenko - - * kern/disk.c (grub_disk_read): Fix offset computation when reading - last sectors. - -2010-01-27 Vladimir Serbinenko - - * commands/hashsum.c (hash_file): Avoid possible stack overflow by - having a 4KiB and not 32KiB buffer size. - -2010-01-27 Robert Millan - - * util/hostfs.c: Include `'. - (grub_hostfs_read): Handle errors from fseeko() and fread(). - -2010-01-27 Robert Millan - - * kern/disk.c (grub_disk_read): Fix bug that would cause infinite - loop when using read hooks on files whose size isn't sector-aligned. - -2010-01-27 Robert Millan - - Remove unused parameter. - - * fs/iso9660.c (struct grub_iso9660_data): Remove `length' parameter. - (grub_iso9660_open): Remove initialization of `data->length'. - -2010-01-27 Robert Millan - - * util/grub-fstest.c (fstest): Rewrite allocation, fixing a few - memleak conditions. - -2010-01-27 Carles Pina i Estany - - * util/lvm.c: New macro LVM_DEV_MAPPER_STRING. - (grub_util_lvm_isvolume): Use LVM_DEV_MAPPER_STRING. - -2010-01-26 Carles Pina i Estany - - * util/bin2h.c (usage): Fix warning (space after backslash). - -2010-01-26 Carles Pina i Estany - - * font/font.c: Include `grub/fontformat.h. - Remove font file format constants. - (grub_font_load): Use the new macros. - * include/grub/fontformat.h: New file. - * util/grub-mkfont.c: Include `grub/fontformat.c'. - (write_font_pf2): Use the new macros. - -2010-01-26 Robert Millan - - * util/bin2h.c (usage): Make --help actually explain what `grub-bin2h' - does. - -2010-01-26 Robert Millan - - * include/grub/i386/pc/boot.h (GRUB_BOOT_MACHINE_PXE_DL): New macro. - - * boot/i386/pc/pxeboot.S: Include `'. - (_start): Macroify `0x7F'. - - * kern/i386/pc/init.c: Include `'. - (make_install_device): Use "(pxe)" as fallback prefix when booting - via PXE. - -2010-01-26 Vladimir Serbinenko - - * configure.ac: Reset LIBS after check for libgcc symbols. - -2010-01-25 Colin Watson - - * util/hostdisk.c (open_device): Add trailing newline to debug - message. - -2010-01-25 Grégoire Sutre - - * configure.ac: Check for `limits.h'. - * util/misc.c: Include `' (for PATH_MAX). - -2010-01-24 Robert Millan - - * loader/mips/linux.c (grub_cmd_linux, grub_cmd_initrd): Don't - capitalize error strings. - -2010-01-24 Samuel Thibault - - * util/grub.d/10_hurd.in: Add a recovery mode. - -2010-01-23 Vladimir Serbinenko - - * configure.ac: Check for libgcc symbols with -nostdlib. - -2010-01-23 BVK Chaitanya - - * acinclude.m4: Quote underquoted AC_DEFUN parameters. - -2010-01-22 Vladimir Serbinenko - - * term/ieee1275/ofconsole.c (grub_ofconsole_setcolorstate): Allocate on - stack since heap may be unavailable at that point. - (grub_ofconsole_gotoxy): Likewise. - -2010-01-22 Vladimir Serbinenko - - * configure.ac: Check for _restgpr_14_x. - * include/grub/powerpc/libgcc.h [HAVE__RESTGPR_14_X]: Add _restgpr_*_x - and _savegpr_* prototypes. - -2010-01-22 Robert Millan - - Use generic grub_reboot() for i386-efi. - - * kern/efi/efi.c [__i386__] (grub_reboot): Remove. - * kern/i386/efi/startup.S: Include `"../realmode.S"'. - * kern/i386/realmode.S: Include `'. - -2010-01-22 Vladimir Serbinenko - - * kern/ieee1275/init.c (grub_machine_set_prefix): Don't check for - presence of "prefix" variable as it breaks when normal.mod is - embedded. - -2010-01-21 Vladimir Serbinenko - - * term/ieee1275/ofconsole.c (grub_ofconsole_dimensions): Allocate on - stack since heap is unavailable at that point. - -2010-01-21 Vladimir Serbinenko - - * include/grub/i386/bsd.h (FREEBSD_N_BIOS_GEOM): Removed. - (grub_freebsd_bootinfo): Rewritten. - * loader/i386/bsd.c (grub_freebsd_boot): Use new grub_freebsd_bootinfo. - -2010-01-21 Vladimir Serbinenko - - * util/misc.c (make_system_path_relative_to_its_root): Fix typo. - -2010-01-21 Robert Millan - - * po/POTFILES: Remove mkisofs-related files. They have their own TLP - domain now. - -2010-01-20 Felix Zielcke - - * util/misc.c (make_system_path_relative_to_its_root): Change the work - around for handling "/" to the correct fix. Fix a memory leak. Use - xstrdup instead of strdup. - -2010-01-20 Vladimir Serbinenko - - * conf/mips.rmk (kernel_img_HEADERS): Add env_private.h - -2010-01-20 Vladimir Serbinenko - - Optimise glyph lookup by Basic Multilingual Plane lookup array. - - * font/font.c (struct grub_font): New member 'bmp_idx'. - (font_init): Initialise 'bmp_idx'. - (load_font_index): Fill 'bmp_idx'. - (find_glyph): Make inline. Use bmp_idx for BMP characters. - -2010-01-20 Vladimir Serbinenko - - * video/fb/video_fb.c (grub_video_fb_scroll): Optimise by avoiding - unnecessary calls. - -2010-01-20 Vladimir Serbinenko - - Move context handling out of the kernel. - - * conf/any-emu.rmk (grub_emu_SOURCES): Add normal/context.c. - * conf/common.rmk (normal_mod_SOURCES): Add normal/context.c. - * conf/i386-coreboot.rmk (kernel_img_HEADERS): Add env_private.h. - * conf/i386-efi.rmk: Likewise. - * conf/i386-ieee1275.rmk: Likewise. - * conf/i386-pc.rmk: Likewise. - * conf/powerpc-ieee1275.rmk: Likewise. - * conf/sparc64-ieee1275.rmk: Likewise. - * conf/x86_64-efi.rmk: Likewise. - * include/grub/env.h: Include grub/menu.h. - (grub_env_var_type): Removed. - (grub_env_var): Replaced field 'type' with 'global'. - (grub_env_find): New prototype. - (grub_env_context_open): Remove EXPORT_FUNC. - (grub_env_context_close): Likewise. - (grub_env_export): Likewise. - (grub_env_set_data_slot): Removed. - (grub_env_get_data_slot): Likewise. - (grub_env_unset_data_slot): Likewise. - (grub_env_unset_menu): New prototype. - (grub_env_set_menu): Likewise. - (grub_env_get_menu): Likewise. - * include/grub/env_private.h: New file. - * include/grub/normal.h (grub_context_init): New prototype. - (grub_context_fini): Likewise. - * kern/corecmd.c (grub_core_cmd_export): Moved from here ... - * normal/context.c (grub_cmd_export): ... to here. - * kern/env.c: Include env_private.h. - (HASHSZ): Moved to include/grub/env_private.h. - (grub_env_context): Likewise. - (grub_env_sorted_var): Likewise. - (current_context): Renamed from this ... - (grub_current_context): ...to this. 'static' removed. All users updated. - (grub_env_find): Removed 'static'. - (grub_env_context_open): Moved to normal/context.c. - (grub_env_context_close): Likewise. - (grub_env_export): Likewise. - (mangle_data_slot_name): Removed. - (grub_env_set_data_slot): Likewise. - (grub_env_get_data_slot): Likewise. - (grub_env_unset_data_slot): Likewise. - * kern/main.c (grub_set_root_dev): Don't export root. - It will be done later. - (grub_main): Don't export prefix. - It will be done later. - * normal/context.c: New file. - * normal/main.c (free_menu): Use grub_env_unset_menu. - (grub_normal_add_menu_entry): Use grub_env_get_menu. - (read_config_file): Use grub_env_get_menu and grub_env_set_menu. - (GRUB_MOD_INIT(normal)): Call grub_context_init. - (GRUB_MOD_FINI(normal)): Call grub_context_fini. - -2010-01-20 Vladimir Serbinenko - - setpci support. - - * commands/setpci.c: New file. - * conf/i386.rmk (pkglib_MODULES): Add setpci.mod. - (setpci_mod_SOURCES): New variable. - (setpci_mod_CFLAGS): Likewise. - (setpci_mod_LDFLAGS): Likewise. - -2010-01-20 Vladimir Serbinenko - - Byte-addressable PCI configuration space. - - * bus/pci.c (grub_pci_make_address): Use byte address instead of - dword address. - (grub_pci_iterate): Use macroses GRUB_PCI_REG_PCI_ID and - GRUB_PCI_REG_CACHELINE. - * bus/usb/ohci.c (grub_ohci_pci_iter): Use macroses - GRUB_PCI_REG_CLASS and GRUB_PCI_REG_ADDRESS_REG0. - * bus/usb/uhci.c (grub_ohci_pci_iter): Use macroses - GRUB_PCI_REG_CLASS and GRUB_PCI_REG_ADDRESS_REG4. - * commands/efi/fixvideo.c (scan_card): Use macros GRUB_PCI_REG_CLASS. - * commands/efi/loadbios.c (enable_rom_area): Pass byte-address to - grub_pci_make_address. - (lock_rom_area): Likewise. - * commands/lspci.c (grub_lspci_iter): Use macroses - GRUB_PCI_REG_CLASS and GRUB_PCI_REG_ADDRESSES. Handle byte-addressing - of grub_pci_make_address. - * disk/ata.c (grub_ata_pciinit): Likewise. - * include/grub/pci.h (GRUB_PCI_REG_PCI_ID): New macro. - (GRUB_PCI_REG_VENDOR): Likewise. - (GRUB_PCI_REG_DEVICE): Likewise. - (GRUB_PCI_REG_COMMAND): Likewise. - (GRUB_PCI_REG_STATUS): Likewise. - (GRUB_PCI_REG_REVISION): Likewise. - (GRUB_PCI_REG_CLASS): Likewise. - (GRUB_PCI_REG_CACHELINE): Likewise. - (GRUB_PCI_REG_LAT_TIMER): Likewise. - (GRUB_PCI_REG_HEADER_TYPE): Likewise. - (GRUB_PCI_REG_BIST): Likewise. - (GRUB_PCI_REG_ADDRESSES): Likewise. - (GRUB_PCI_REG_ADDRESS_REG): Likewise. - (GRUB_PCI_REG_ADDRESS_REG): Likewise. - (GRUB_PCI_REG_ADDRESS_REG): Likewise. - (GRUB_PCI_REG_ADDRESS_REG): Likewise. - (GRUB_PCI_REG_ADDRESS_REG): Likewise. - (GRUB_PCI_REG_ADDRESS_REG): Likewise. - (GRUB_PCI_REG_CIS_POINTER): Likewise. - (GRUB_PCI_REG_SUBVENDOR): Likewise. - (GRUB_PCI_REG_SUBSYSTEM): Likewise. - (GRUB_PCI_REG_ROM_ADDRESS): Likewise. - (GRUB_PCI_REG_CAP_POINTER): Likewise. - (GRUB_PCI_REG_IRQ_LINE): Likewise. - (GRUB_PCI_REG_IRQ_PIN): Likewise. - (GRUB_PCI_REG_MIN_GNT): Likewise. - (GRUB_PCI_REG_MAX_LAT): Likewise. - * loader/i386/efi/linux.c (find_framebuf): Use GRUB_PCI_REG_CLASS. - * loader/i386/efi/xnu.c (find_framebuf): Likewise. - * video/efi_uga.c (find_framebuf): Likewise. - * video/sm712.c (grub_video_sm712_setup): Likewise. - * util/pci.c (grub_pci_make_address): Use byte-addressed configuration - space. - -2010-01-20 Robert Millan - - * util/grub.d/10_linux.in (linux_entry): Set gfxpayload=keep when it - can be reliably determined to be supported. - -2010-01-20 Robert Millan - - * loader/i386/linux.c (grub_cmd_linux): If `vga=' was used, write down - that VESA is supported. - (grub_linux_boot): Use generic framebuffer unless VESA is known to be - supported. - -2010-01-20 Vladimir Serbinenko - - * conf/common.rmk (font/font.c_DEPENDENCIES): Condition on FONT_SOURCE. - -2010-01-20 Robert Millan - - * util/misc.c (make_system_path_relative_to_its_root): Work around - special-casing of "/", as previous incarnation of this routine did. - -2010-01-20 Vladimir Serbinenko - - Fix any-emu compilation. - - * conf/any-emu.rmk (bin_UTILITIES): Add grub-bin2h. - * grub_bin2h_SOURCES: New variable. - -2010-01-20 Robert Millan - - * util/grub.d/00_header.in: Fix stupid mistake from last commit. - -2010-01-20 Robert Millan - - * util/grub.d/00_header.in: Fix handling of locale_dir. - -2010-01-20 Vladimir Serbinenko - - * configure.ac: Add /usr/share/fonts/unifont/unifont.pcf.gz - as possible unifont location (Gentoo). - Reported by: Alexander Brüning - -2010-01-20 Vladimir Serbinenko - - Don't try to generate lists for kernel.img. - - * conf/i386-efi.rmk (pkglib_PROGRAMS): New variable. - (pkglib_MODULES): Remove kernel.img. - (kernel_img_EXPORTS): Removed. - (kernel_img_RELOCATABLE): New variable. - * conf/x86_64-efi.rmk: Likewise. - * genmk.rb: Remove *_EXPORTS support and add *_RELOCATABLE support. - -2010-01-20 Vladimir Serbinenko - - * include/grub/misc.h (grub_sprintf): Removed. All users switched to - grub_xasprintf or grub_snprintf. - (grub_vsprintf): Likewise. - (grub_snprintf): New proto. - (grub_vsnprintf): Likewise. - (grub_xasprintf): Likewise. - (grub_xvasprintf): Likewise. - * kern/misc.c (grub_vprintf): Use grub_vsnprintf_real. - (grub_sprintf): Removed. - (grub_vsnprintf): New function. - (grub_snprintf): Likewise. - (grub_xvasprintf): Likewise. - (grub_xasprintf): Likewise. - (grub_vsprintf): Renamed to ... - (grub_vsnprintf_real): ...this. New argument max_len. - -2010-01-20 BVK Chaitanya - - * include/grub/script_sh.h (sourcecode): Remove const qualifier to - fix grub-script-check warning. - -2010-01-20 Vladimir Serbinenko - - * include/grub/font.h (grub_font_load): Fix prototype. - -2010-01-20 Vladimir Serbinenko - - * conf/mips.rmk (kernel_img_HEADERS) [yeeloong]: Add pci.h. - -2010-01-20 Vladimir Serbinenko - - * include/grub/x86_64/at_keyboard.h: New file. - -2010-01-20 Vladimir Serbinenko - - * loader/mips/linux.c: Include missing grub/i18n.h. - -2009-12-20 Robert Millan - - * normal/menu.c (notify_execution_failure): Clarify error message. - -2009-12-20 Robert Millan - - * commands/loadenv.c (check_blocklists): Use `grub_err_t' as - return value (and revert all return statements). Update users. - -2010-01-20 Dan Merillat - - * kern/device.c (grub_device_iterate): Allocate new part_ent - structure based on sizeof (*p) rather than sizeof (p->next), to - account for structure padding. - - * util/grub-probe.c (probe_raid_level): Return -1 immediately if - disk is NULL, which might happen for LVM physical volumes with no - LVM signature. - -2009-12-20 Robert Millan - - * loader/mips/linux.c (grub_cmd_initrd) - (GRUB_MOD_INIT(linux)): Adjust and gettextize a few strings. - -2009-12-20 Robert Millan - - * kern/mips/yeeloong/init.c (grub_video_sm712_init) - (grub_video_video_init, grub_video_bitmap_init) - (grub_font_manager_init, grub_term_gfxterm_init) - (grub_at_keyboard_init): New extern declarations. - (grub_machine_init): Initialize gfxterm and at_keyboard. - - * kern/main.c (grub_main): Revert grub_printf delay kludge. - - * util/grub-install.in: Revert embed of `at_keyboard.mod' and - `gfxterm.mod' into core image. - - * conf/mips.rmk (pkglib_IMAGES, kernel_img_SOURCES) - (kernel_img_CFLAGS, kernel_img_ASFLAGS, kernel_img_LDFLAGS) - (kernel_img_FORMAT): Copy to ... - - * conf/mips-qemu-mips.rmk (pkglib_IMAGES, kernel_img_SOURCES) - (kernel_img_CFLAGS, kernel_img_ASFLAGS, kernel_img_LDFLAGS) - (kernel_img_FORMAT): ... here, and ... - - * conf/mips-yeeloong.rmk (pkglib_IMAGES, kernel_img_SOURCES) - (kernel_img_CFLAGS, kernel_img_ASFLAGS, kernel_img_LDFLAGS) - (kernel_img_FORMAT): ... here. - - (kernel_img_SOURCES): Add files necessary for output (gfxterm) - and input (at_keyboard) terminals in kernel. - (kernel_img_CFLAGS): Add `-DUSE_ASCII_FAILBACK'. - - (pkglib_MODULES): Remove `pci.mod'. - (pci_mod_SOURCES, pci_mod_CFLAGS, pci_mod_LDFLAGS) - (sm712_mod_SOURCES, sm712_mod_CFLAGS, sm712_mod_LDFLAGS) - (at_keyboard_mod_SOURCES, at_keyboard_mod_CFLAGS) - (at_keyboard_mod_LDFLAGS): Remove variables. - -2010-01-11 Felix Zielcke - - * po/POTFILES: Replace `term/i386/pc/serial.c' with `term/serial.c'. - -2009-12-10 Robert Millan - - * include/grub/mips/libgcc.h: Only export symbols for functions - that libgcc provides. - -2009-12-02 Vladimir Serbinenko - - MIPS support. - - * bus/bonito.c: New file. - * bus/pci.c (grub_pci_iterate): Use GRUB_PCI_NUM_BUS and - GRUB_PCI_NUM_DEVICES. - * term/i386/pc/serial.c: Move to ... - * term/serial.c: ... here. All users updated. - * util/i386/pc/grub-mkimage.c: Move to ... - * util/grub-mkrawimage.c: ... here. All users updated. - * term/i386/pc/at_keyboard.c: Move to ... - * term/at_keyboard.c: ... here. All users updated. - * conf/mips-qemu-mips.rmk: New file. - * conf/mips-yeeloong.rmk: Likewise. - * conf/mips.rmk: Likewise. - * configure.ac: New platforms mipsel-yeeloong, mips-qemu-mips and - mipsel-qemu-mips. - * disk/ata.c (grub_ata_device_initialize): Add GRUB_MACHINE_PCI_IO_BASE - to port addresses. - (grub_ata_pciinit): Support CS5536. - * font/font.c (grub_font_load): Use grub_file_t instead of filename. - * font/font_cmd.c (loadfont_command): Open file before passing it to - grub_font_load. - (pseudo_file_read): New function. - (pseudo_file_close): Likewise. - (pseudo_fs): New structure. - (load_font_module): New function. - (GRUB_MOD_INIT(font_manager)): Load embedded font. - * fs/cpio.c (grub_cpio_open): Handle partial matches correctly. - * genmk.rb: Strip .rel.dyn, .reginfo, .note and .comment. - * genmoddep.awk: Ignore __gnu_local_gp. It's defined by linker. - * include/grub/i386/at_keyboard.h: Split into ... - * include/grub/at_keyboard.h: ... this ... - * include/grub/i386/at_keyboard.h: ... and this. - * include/grub/dl.h (grub_arch_dl_init_linker) [_mips && !GRUB_UTIL]: - New prototype. - * include/grub/elfload.h (grub_elf32_size): New parameter. All users - updated. - (grub_elf64_size): Likewise. - * include/grub/font.h (grub_font_load): Use grub_file_t instead of - filename. - * include/grub/i386/io.h (grub_port_t): New type. All users updated. - * include/grub/i386/coreboot/serial.h: Rewritten. - * include/grub/i386/ieee1275/serial.h: Include - grub/i386/coreboot/serial.h instead of grub/i386/pc/serial.h. - * include/grub/i386/pc/serial.h: Moved from here ... - * include/grub/serial.h: ... to here. All users updated. - * include/grub/i386/pci.h (GRUB_MACHINE_PCI_IO_BASE): New definition. - (GRUB_PCI_NUM_BUS): Likewise. - (GRUB_PCI_NUM_DEVICES): Likewise. - (grub_pci_device_map_range): Add missing volatile keyword. - * include/grub/kernel.h (OBJ_TYPE_FONT): New enum value. - * include/grub/mips/at_keyboard.h: New file. - * include/grub/mips/cache.h: Likewise. - * include/grub/mips/io.h: Likewise. - * include/grub/mips/kernel.h: Likewise. - * include/grub/mips/libgcc.h: Likewise. - * include/grub/mips/pci.h: Likewise. - * include/grub/mips/qemu-mips/boot.h: Likewise. - * include/grub/mips/qemu-mips/kernel.h: Likewise. - * include/grub/mips/qemu-mips/loader.h: Likewise. - * include/grub/mips/qemu-mips/memory.h: Likewise. - * include/grub/mips/qemu-mips/serial.h: Likewise. - * include/grub/mips/qemu-mips/time.h: Likewise. - * include/grub/mips/relocator.h: Likewise. - * include/grub/mips/time.h: Likewise. - * include/grub/mips/types.h: Likewise. - * include/grub/mips/yeeloong/at_keyboard.h: Likewise. - * include/grub/mips/yeeloong/boot.h: Likewise. - * include/grub/mips/yeeloong/kernel.h: Likewise. - * include/grub/mips/yeeloong/loader.h: Likewise. - * include/grub/mips/yeeloong/memory.h: Likewise. - * include/grub/mips/yeeloong/pci.h: Likewise. - * include/grub/mips/yeeloong/serial.h: Likewise. - * include/grub/mips/yeeloong/time.h: Likewise. - * kern/dl.c (grub_dl_resolve_symbols): Handle STT_OBJECT correctly. - * kern/elf.c (grub_elf32_size): New parameter. All users - updated. - (grub_elf64_size): Likewise. - * kern/main.c (grub_main): Call grub_arch_dl_init_linker if necessary. - Load modules before saying "Welcome to GRUB!". - Call grub_refresh after saying "Welcome to GRUB!". - * kern/mips/cache.S: New file. - * kern/mips/cache_flush.S: Likewise. - * kern/mips/dl.c: Likewise. - * kern/mips/init.c: Likewise. - * kern/mips/qemu-mips/init.c: Likewise. - * kern/mips/startup.S: Likewise. - * kern/mips/yeeloong/init.c: Likewise. - * kern/term.c (grub_putcode): Handle NULL terminal. - (grub_getcharwidth): Likewise. - (grub_getkey): Likewise. - (grub_checkkey): Likewise. - (grub_getkeystatus): Likewise. - (grub_getxy): Likewise. - (grub_getwh): Likewise. - (grub_gotoxy): Likewise. - (grub_cls): Likewise. - (grub_setcolorstate): Likewise. - (grub_setcolor): Likewise. - (grub_getcolor): Likewise. - (grub_refresh): Likewise. - * lib/mips/relocator.c (JUMP_SIZEOF): Fix incorrect value. - (write_jump): Add hatch nop. - * lib/mips/relocator_asm.S: Use kern/mips/cache_flush.S. - * lib/mips/setjmp.S: New file. - * loader/mips/linux.c: Likewise. - * term/i386/pc/at_keyboard.c: Move from here ... - * term/at_keyboard.c: ... to here. - * term/i386/pc/serial.c: Moved from here ... - * term/serial.c: ... to here. All users updated. - (TEXT_HEIGHT): Set to 24 to fit linux terminal. - (serial_hw_io_addr): Use GRUB_MACHINE_SERIAL_PORTS. - (serial_translate_key_sequence): Avoid deadlock. - (grub_serial_getkey): Handle backspace. - (grub_serial_putchar): Fix newline handling. - * util/i386/pc/grub-mkimage.c: Move from here ... - * util/grub-mkrawimage.c: ... to here. All users updated. - (generate_image): New parameters 'font_path' and 'format'. - Support embedding font. - Use grub_host_to_target* instead of grub_cpu_to_le*. - (generate_image) [GRUB_MACHINE_MIPS]: Support ELF encapsulation. - (options) [GRUB_PLATFORM_IMAGE_DEFAULT]: New option "--format". - (options): New option "--font". - (usage): Likewise. - (main) [GRUB_PLATFORM_IMAGE_DEFAULT]: Handle "--format". - (main): Handle "--font". - * term/gfxterm.c (grub_virtual_screen): New member bg_color_display. - (grub_virtual_screen_setup): Set bg_color_display. - (redraw_screen_rect): Use bg_color_display instead of incorrect - bg_color. - (grub_gfxterm_cls): Likewise. - * util/elf/grub-mkimage.c (load_modules): New parameter 'config_path'. - Support embedding config file. - (add_segments): Likewise. - (options): New option "--config". - (main): Handle "--config". - * video/sm712.c: New file. - -2010-01-18 Robert Millan - - Fix parallel builds. - - * conf/common.rmk (font/font.c_DEPENDENCIES): New variable (makes - font.c depend on ascii.h). - -2010-01-12 Carles Pina i Estany - - * Makefile.in (DUSE_ASCII_FAILBACK): New macro. - -2010-01-11 Carles Pina i Estany - - * font/font.c (GENERATE_ASCII): Change the name to USE_ASCII_FAILBACK. - By default: disabled. - * Makefile.in (ascii.h): Remove the non-needed grub/bin2h size - parameter. - -2010-01-10 Carles Pina i Estany - - * font/font.c: Update copyright years. - * util/grub-mkfont.c (write_font_ascii_bitmap): Change comment format. - -2010-01-10 Carles Pina i Estany - - * font/font.c: Include `ascii.h'. - (ASCII_BITMAP_SIZE): New macro. - (ascii_font_glyph): Define. - (ascii_glyph_lookup): New function. - (grub_font_get_string_width): Change comment. If glyph not found, use - ascii_glyph_lookup. - (grub_font_get_glyph_with_fallback): If glyph not available returns - ascii_glyph_lookup. - * util/grub-mkfont.c (file_formats): New enum. - (options): Add `ascii-bitmaps' new option. - (usage): Add `asii-bitmaps' new option. - (write_font_ascii_bitmap): New function. - (write_font): Rename to ... - (write_font_p2): ... this. Remove print_glyphs call. - (main): Use file_format. Implement code for ranges if ascii-bitmaps is - used. Call print_glyphs. - * Makefile.in (pkgdata_DATA): Add `ascii.h'. - -2010-01-14 Robert Millan - - * conf/common.rmk (bin_UTILITIES): Add `grub-bin2h'. - (grub_bin2h_SOURCES): New variable. - * util/bin2h.c: New file. - -2010-01-20 Vladimir Serbinenko - - * include/multiboot.h: Resynced with spec. - * include/multiboot2.h: Likewise. - * loader/i386/multiboot_mbi.c (grub_fill_multiboot_mmap): Handle - GRUB_MACHINE_MEMORY_ACPI_RECLAIMABLE and GRUB_MACHINE_MEMORY_NVS. - -2010-01-18 Robert Millan - - * include/grub/term.h (grub_term_register_input, - grub_term_register_output): Check return of terminal init() - routines, and abort if errors are raised. - - * commands/terminal.c: Update copyright year. - -2010-01-18 Robert Millan - - * commands/terminal.c (grub_cmd_terminal_input) - (grub_cmd_terminal_output): Check return of terminal init() - routines, and abort if errors are raised. - -2010-01-18 Vladimir Serbinenko - - * include/grub/i386/bsd.h: Fix include pathes. - -2010-01-18 Vladimir Serbinenko - - Add missing *BSD copyright headers. - - * include/grub/aout.h: Add BSD licence. - * include/grub/i386/bsd.h: Parts under different licences moved to ... - * include/grub/i386/freebsd_linker.h: ... here, - * include/grub/i386/freebsd_reboot.h: ... here, - * include/grub/i386/netbsd_bootinfo.h: ... here, - * include/grub/i386/netbsd_reboot.h: ... here, - * include/grub/i386/openbsd_bootarg.h: ... here, - * include/grub/i386/openbsd_reboot.h: ... and here. Added appropriate - licence to each file. - -2010-01-18 Robert Millan - - * acinclude.m4: Remove `nop' assembly instruction; it's not - implemented by all architectures. - -2010-01-18 Robert Millan - - * loader/i386/efi/linux.c (grub_cmd_linux): Stop pretending we're - ELILO. This is no longer necessary. - -2010-01-18 BVK Chaitanya - - Added new tool, grub-scrit-check to verify grub.cfg syntax. - - * util/grub-script-check.c: grub-script-check tool. - * conf/common.rmk: Make rules for grub-script-check. - -2010-01-18 Robert Millan - - Fix annoying UI bug in rescue mode. Thanks to Tristan Gingold for - spotting it back in 2008. Shame on me for forgetting he did. - - * kern/rescue_reader.c (grub_rescue_run): Skip zero-length lines. - -2010-01-18 Robert Millan - - * include/grub/i386/linux.h (GRUB_VIDEO_TYPE_TEXT): Rename to ... - (GRUB_VIDEO_LINUX_TYPE_TEXT): ... this. Update all users. - (GRUB_VIDEO_TYPE_VLFB): Rename to ... - (GRUB_VIDEO_LINUX_TYPE_VESA): ... this. Update all users. - (GRUB_VIDEO_TYPE_EFI): Rename to ... - (GRUB_VIDEO_LINUX_TYPE_SIMPLE): ... this. Update all users. - -2010-01-17 Robert Millan - - * include/grub/test.h: Add license header. - * tests/example_functional_test.c: Likewise. - * tests/example_unit_test.c: Likewise. - * tests/lib/functional_test.c: Likewise. - * tests/lib/test.c: Likewise. - * tests/lib/unit_test.c: Likewise. - -2010-01-17 Vladimir Serbinenko - - Use flag-based instead of hook-based video mode selection and "auto" - keyword. - - * include/grub/video.h (grub_video_adapter): Changed 'setup' member. - (grub_video_set_mode): Changed prototype. All users updated. - (grub_video_check_mode_flag): New inline function. - * video/video.c (parse_modespec): New function. - (grub_video_set_mode): Parse flags and keywords. - -2010-01-17 Carles Pina i Estany - - * util/misc.c (grub_util_info): Fix the order of the parameters in a - fprintf call. - -2010-01-16 Grégoire Sutre - - * genmk.rb (class SCRIPT): Replace option -i of sed by a pipe. - -2010-01-16 Carles Pina i Estany - - * util/grub-editenv.c (usage): Use `program_name' instead of hardcoded - string. - * util/grub-emu.c (usage): Likewise. - * util/grub-mkpasswd-pbkdf2.c (usage): Likewise. - * util/i386/efi/grub-mkimage.c (usage): Likewise. - * util/i386/pc/grub-mkimage.c (usage): Likewise. - * util/i386/pc/grub-setup.c (usage): Likewise. - -2010-01-16 Carles Pina i Estany - - * util/misc.c (grub_util_warn): Gettextizze, print full stop after - the message. - (grub_util_info): Likewise. - (grub_util_error): Likewise. - * util/elf/grub-mkimage.c: Fix capitalisation, quotes, full stops - and/or new lines in `grub_util_warna', `grub_util_info', - `grub_util_error' calls. - * util/getroot.c: Likewise. - * util/grub-editenv.c: Likewise. - * util/grub-emu.c: Likewise. - * util/grub-fstest.c: Likewise. - * util/grub-mkdevicemap.c: Likewise. - * util/grub-mkfont.c: Likewise. - * util/grub-mkpasswd-pbkdf2.c: Likewise. - * util/grub-mkrelpath.c: Likewise. - * util/grub-pe2elf.c: Likewise. - * util/grub-probe.c: Likewise. - * util/hostdisk.c: Likewise. - * util/i386/efi/grub-mkimage.c: Likewise. - * util/i386/pc/grub-mkimage.c: Likewise. - * util/i386/pc/grub-setup.c: Likewise. - * util/ieee1275/ofpath.c: Likewise. - * util/mkisofs/eltorito.c: Likewise. - * util/mkisofs/rock.c: Likewise. - * util/mkisofs/write.c: Likewise. - * util/raid.c: Likewise. - * util/sparc64/ieee1275/grub-mkimage.c: Likewise. - * util/sparc64/ieee1275/grub-setup.c: Likewise. - -2010-01-15 Vladimir Serbinenko - - Enable multiboot on non-pc. - - * conf/i386-coreboot.rmk, conf/i386-pc.rmk (pkglib_MODULES): Move - multiboot.mod and multiboot2.mod to ... - * conf/i386.rmk (pkglib_MODULES): ... here. - * conf/i386-coreboot.rmk, conf/i386-pc.rmk (multiboot_mod_SOURCES): - Moved to ... - * conf/i386.rmk (multiboot_mod_SOURCES): .. here. - * conf/i386-coreboot.rmk, conf/i386-pc.rmk (multiboot_mod_CFLAGS): - Moved to ... - * conf/i386.rmk (multiboot_mod_CFLAGS): .. here. - * conf/i386-coreboot.rmk, conf/i386-pc.rmk (multiboot_mod_ASFLAGS): - Moved to ... - * conf/i386.rmk (multiboot_mod_ASFLAGS): .. here. - * conf/i386-coreboot.rmk, conf/i386-pc.rmk (multiboot_mod_LDFLAGS): - Moved to ... - * conf/i386.rmk (multiboot_mod_LDFLAGS): .. here. - * conf/x86_64-efi.rmk (pkglib_MODULES): Remove ata.mod and - relocator.mod. - (ata_mod_SOURCES): Removed. - (ata_mod_CFLAGS): Likewise. - (ata_mod_LDFLAGS): Likewise. - (relocator_mod_SOURCES): Removed. - (relocator_mod_CFLAGS): Likewise. - (relocator_mod_ASFLAGS): Likewise. - (relocator_mod_LDFLAGS): Likewise. - Include i386.mk. - * include/grub/x86_64/multiboot.h: New file. - * loader/i386/multiboot.c (grub_multiboot_boot) [GRUB_MACHINE_EFI]: - Terminate EFI. - -2010-01-15 Vladimir Serbinenko - - Video multiboot support. - - * include/grub/multiboot.h (grub_multiboot_set_accepts_video): - New prototype. - * include/multiboot.h: Resynced with multiboot specification. - * include/multiboot2.h: Likewise. - * loader/i386/multiboot.c (UNSUPPORTED_FLAGS): Support video flags. - (grub_multiboot): Parse MULTIBOOT_VIDEO_MODE fields. - * loader/i386/multiboot_mbi.c (DEFAULT_VIDEO_MODE): New constant. - (HAS_VGA_TEXT): Likewise. - (accepts_video): New variable. - (grub_multiboot_set_accepts_video): New function. - (grub_multiboot_get_mbi_size): Account for video structures. - (set_video_mode): New function. - (retrieve_video_parameters): Likewise. - (grub_multiboot_make_mbi): Fill video fields. - -2010-01-15 Vladimir Serbinenko - - Video driver ids. - - * include/grub/video.h (grub_video_driver_id): New type. - (grub_video_adapter): New member 'id'. All users updated. - (grub_video_get_driver_id): New proto. - * video/video.c (grub_video_get_driver_id): New function. - -2010-01-14 Carles Pina i Estany - - * util/grub.d/30_os-prober.in: Use `set var=val' rather than plain - `var=val'. - -2010-01-14 Carles Pina i Estany - - * normal/cmdline.c (print_completion): Gettextizze. - -2001-01-14 Carles Pina i Estany - - * loader/i386/pc/chainloader.c: Include `'. - -2010-01-14 Carles Pina i Estany - - * gettext/gettext.c (grub_gettext_translate): Push and pop - grub_errno. - (grub_gettext_delete_list): Change comment style. - * kern/err.c (grub_error): Gettextizze. - (grub_fatal): Gettextizze. - -2010-01-14 Robert Millan - - * include/grub/i386/loader.h (grub_linux16_boot): Renamed to ... - (grub_linux16_real_boot): ... this. - * kern/i386/loader.S: Likewise. - * loader/i386/pc/linux.c: Include `' and `'. - (grub_linux16_boot): New function. Switches to text mode and calls - grub_linux16_real_boot(). - - * loader/i386/bsd.c: Include `'. - (grub_freebsd_boot, grub_openbsd_boot, grub_netbsd_boot): Switch to - text mode before calling grub_unix_real_boot(). - - * loader/i386/multiboot.c: Include `'. - (grub_multiboot_boot): Switch to text mode before calling - grub_relocator32_boot(). - - * loader/i386/pc/chainloader.c: Include `'. - (grub_chainloader_boot): Switch to text mode before calling - grub_chainloader_real_boot(). - -2010-01-05 Jordan Uggla -2010-01-05 Colin Watson - - * util/grub-reboot.in: Make sure prev_saved_entry always gets a - non-empty value. - -2010-01-05 Jordan Uggla -2010-01-05 Colin Watson - - * util/grub.d/00_header.in: Define a "savedefault" function for use - in menu entries. - * util/grub-mkconfig_lib.in (save_default_entry): Use it. - -2010-01-05 Jordan Uggla -2010-01-05 Colin Watson - - * util/grub-mkconfig_lib.in (save_default_entry): Only set - saved_entry if boot_once is unset. - * util/grub.d/00_header.in: Set boot_once to "true" if there was a - previous saved entry (i.e. grub-reboot). - -2009-12-08 Colin Watson - - * util/grub.d/30_os-prober.in: Call save_default_entry for hurd. - -2009-12-08 Colin Watson - - * util/grub.d/00_header.in: Use `set var=val' rather than plain - `var=val'. - * util/grub-mkconfig_lib.in (save_default_entry): Likewise. - -2009-12-08 Colin Watson - - * util/grub-reboot.in: Fix --version output. - * util/grub-set-default.in: Likewise. - -2009-12-08 Colin Watson - - * util/grub.d/00_header.in: Silently ignore zero-sized environment - blocks. - -2009-12-08 Colin Watson - - * util/grub.d/00_header.in: Quote the value assigned to `default', - in case it contains spaces. - -2009-12-08 Colin Watson - - * util/grub.d/30_os-prober.in: Fix merge error that moved a - `save_default_entry' call from the macosx case to the linux case. - -2009-10-25 Vladimir Serbinenko -2009-10-25 Colin Watson - - * normal/menu.c (grub_menu_execute_entry): Save selected entry title - in `chosen' environment variable. - * normal/menu_text.c (get_entry_number): Check if the variable - matches the title of a menu entry. - (run_menu): Pass menu to get_entry_number. - - * util/grub-reboot.in: New file. - * util/grub-set-default.in: New file. - * conf/common.rmk (grub-reboot): New utility. - (grub-set-default): New utility. - - * util/grub-mkconfig_lib.in (save_default_entry): New function. - * util/grub.d/00_header.in: If GRUB_DEFAULT is `saved', set - default to `${saved_entry}'. If `${prev_saved_entry}' is non-empty, - move it to `saved_entry' for the next boot. Load environment on - initialisation. - * util/grub.d/10_kfreebsd.in: Call save_default_entry. - * util/grub.d/10_hurd.in: Likewise. - * util/grub.d/10_linux.in (linux_entry): Likewise. - * util/grub.d/10_windows.in: Likewise. - * util/grub.d/30_os-prober.in: Likewise. - - * util/grub-install.in: Create environment block. - * util/i386/efi/grub-install.in: Likewise. - * util/ieee1275/grub-install.in: Likewise. - * util/sparc64/ieee1275/grub-install.in: Likewise. - -2010-01-14 BVK Chaitanya - - Unit testing framework for GRUB. - - * Makefile.in: Test framework build rules for 'make check'. - * conf/tests.rmk: Build rules for individual tests and framework. - - * include/grub/test.h: Header file for whitebox tests. - * tests/lib/functional_test.c: Framework support for whitebox - functional tests. - * tests/lib/test.c: Common whitebox testing code for unit and - functional tests. - * tests/lib/unit_test.c: Framework support for whitebox unit - tests. - - * tests/util/grub-shell-tester.in: Support utility for grub-script - tests. - * tests/util/grub-shell.in: Utility to execute grub-script - commands in a Qemu instance. - - * tests/example_functional_test.c: Example whitebox functional - test. - * tests/example_grub_script_test.in: Example grub-script test. - * tests/example_scripted_test.in: Example scripted test. - * tests/example_unit_test.c: Example whitebox unit test. - -2010-01-14 Vladimir Serbinenko - - * conf/i386-coreboot.rmk (multiboot_mod_SOURCES): - Add loader/i386/multiboot_mbi.c. - (multiboot2_mod_SOURCES): Likewise. - * conf/i386-pc.rmk (multiboot_mod_SOURCES): Likewise. - (multiboot2_mod_SOURCES): Likewise. - * include/grub/multiboot.h (grub_multiboot_get_mbi_size): New proto. - (grub_multiboot_make_mbi): Likewise. - (grub_multiboot_free_mbi): Likewise. - (grub_multiboot_init_mbi): Likewise. - (grub_multiboot_add_module): Likewise. - (grub_multiboot_set_bootdev): Likewise. - * loader/i386/multiboot.c (mbi): Removed. - (mbi_dest): Likewise. - (alloc_mbi): New variable. - (grub_multiboot_payload_size): Removed. All users updated. - (grub_multiboot_pure_size): New variable. - (grub_multiboot_boot): Use grub_multiboot_make_mbi. - (grub_multiboot_unload): Use grub_multiboot_free_mbi. - (grub_get_multiboot_mmap_len): Moved to loader/i386/multiboot_mbi.c. - (grub_fill_multiboot_mmap): Likewise. - (grub_multiboot_get_bootdev): Likewise. - (grub_multiboot): Use multiboot_mbi functions. - * loader/i386/multiboot_mbi.c: New file. - -2010-01-13 Vladimir Serbinenko - - * kern/efi/init.c (grub_efi_fini): Don't call grub_efi_mm_fini as - it would result in module crash. - -2010-01-13 Vladimir Serbinenko - - * term/ieee1275/ofconsole.c (grub_ofconsole_putchar): Handle '\r'. - (grub_ofconsole_getwh): Split to ... - (grub_ofconsole_getwh): ... this. - (grub_ofconsole_dimensions): ...and this. - (grub_ofconsole_init_output): Call grub_ofconsole_dimensions. - -2010-01-13 Robert Millan - - * util/mkisofs/rock.c (generate_rock_ridge_attributes): Fix a typo. - -2010-01-12 Vladimir Serbinenko - - * loader/i386/pc/multiboot2.c: Removed stalled file. - -2010-01-12 Vladimir Serbinenko - - * util/grub-mkpasswd-pbkdf2.c (main): Use grub_util_init_nls. - Reported by: Grégoire Sutre - -2010-01-11 Robert Millan - - * util/misc.c (canonicalize_file_name): New function. - (make_system_path_relative_to_its_root): Use canonicalize_file_name() - instead of realpath(). - -2010-01-11 Colin Watson - - * util/grub-install.in (usage): Clarify meaning of --root-directory, - and make it clearer that it's optional. Based on confusion - witnessed on IRC. - -2010-01-10 Vladimir Serbinenko - - * term/i386/pc/vga_text.c (inc_y): Fix off-by-one error which resulted - in premature implicit newline. - -2010-01-10 Vladimir Serbinenko - - * normal/cmdline.c (grub_cmdline_get): Fix off-by-one error - which resulted in garbled command line at the end of screen. - -2010-01-10 Robert Millan - - * loader/i386/ieee1275/linux.c (grub_linux_boot): Rework video position - initialization with similar approach as with other Linux loaders. - -2010-01-10 Robert Millan - - Fix i386-ieee1275 build. - - * loader/i386/ieee1275/linux.c (grub_linux_boot): Use grub_term_width() - and grub_term_height() for video_{width,height} initialization. - -2010-01-10 Robert Millan - - Fix grub-emu build. - - * conf/any-emu.rmk (grub_emu_SOURCES): Remove `kern/reader.c'. - -2010-01-07 Vladimir Serbinenko -2010-01-09 Robert Millan - - Support for multiple terminals. - - * Makefile.in (pkglib_DATA): terminal.lst. - (terminal.lst): New target. - * commands/handler.c (grub_cmd_handler): Don't handle terminals. - (GRUB_MOD_INIT(handler)): Likewise. - (GRUB_MOD_FINI(handler)): Likewise. - * commands/help.c (grub_cmd_help): Handle multiple terminals. - * commands/keystatus.c (grub_cmd_keystatus): Likewise. - * commands/sleep.c (do_print): Use grub_term_restore_pos. - (grub_cmd_sleep): Use grub_term_save_pos. - * commands/terminal.c: New file. - * conf/any-emu.rmk (grub_emu_SOURCES): Add normal/term.c - commands/terminal.c and lib/charset.c. - * conf/common.rmk (normal_mod_SOURCES): Add normal/term.c. - (pkglib_MODULES): Add terminal.mod. - (terminal_mod_SOURCES): New variable. - (terminal_mod_CFLAGS): Likewise. - (terminal_mod_LDFLAGS): Likewise. - * genhandlerlist.sh: Don't handle terminals. - * genmk.rb: Generate terminal-*.lst. - * genterminallist.sh: New file. - * include/grub/charset.h (grub_ucs4_to_utf8_alloc): New proto. - (grub_is_valid_utf8): Likewise. - (grub_utf8_to_ucs4_alloc): Likewise. - * include/grub/menu_viewer.h (grub_menu_viewer): Rewritten. - (grub_menu_register_viewer): Changed argument. - (grub_menu_try_text): New proto. - (grub_gfxmenu_try_hook): New declaration. - * include/grub/normal.h (grub_normal_exit_level): New declaration. - (grub_menu_init_page): Additional argument term. - (grub_normal_init_page): Likewise. - (grub_cmdline_get): Arguments simplified. - (grub_utf8_to_ucs4_alloc): Removed. - (grub_print_ucs4): Additional argument term. - (grub_getstringwidth): Likewise. - (grub_print_message_indented): Likewise. - (grub_menu_text_register_instances): New proto. - (grub_show_menu): Likewise. - (read_terminal_list): Likewise. - (grub_set_more): Likewise. - * include/grub/parser.h: Include handler.h. - * include/grub/reader.h: Rewritten. - * include/grub/term.h (GRUB_TERM_NEED_INIT): Removed. - (GRUB_TERM_WIDTH): Changed to function. - (GRUB_TERM_HEIGHT): Likewise. - (GRUB_TERM_BORDER_WIDTH): Likewise. - (GRUB_TERM_BORDER_HEIGHT): Likewise. - (GRUB_TERM_NUM_ENTRIES): Likewise. - (GRUB_TERM_ENTRY_WIDTH): Likewise. - (GRUB_TERM_CURSOR_X): Likewise. - (grub_term_input_class): Likewise. - (grub_term_output_class): Likewise. - (grub_term_outputs_disabled): New declaration. - (grub_term_inputs_disabled): Likewise. - (grub_term_outputs): Likewise. - (grub_term_inputs): Likewise. - (grub_term_register_input): Rewritten. - (grub_term_register_output): Likewise. - (grub_term_unregister_input): Likewise. - (grub_term_unregister_output): Likewise. - (FOR_ACTIVE_TERM_INPUTS): New macro. - (FOR_DISABLED_TERM_INPUTS): Likewise. - (FOR_ACTIVE_TERM_OUTPUTS): Likewise. - (FOR_DISABLED_TERM_OUTPUTS): Likewise. - * include/grub/terminfo.h: Add oterm argument to all protypes. - * kern/main.c (grub_main): Don't call grub_register_rescue_reader. - Use grub_rescue_run. - * kern/misc.c (grub_utf8_to_ucs4): Put '?' for invalid characters. - All users updated. - * kern/reader.c: Removed. All users updated. - * kern/rescue_reader.c (grub_rescue_init): Removed. - (grub_rescue_reader): Likewise. - (grub_register_rescue_reader): Likewise. - (grub_rescue_run): New function based on kern/reader.c. - * kern/term.c: Adapted for multiterm. - * lib/charset.c (grub_ucs4_to_utf8_alloc): New function. - (grub_is_valid_utf8): Likewise. - (grub_utf8_to_ucs4_alloc): Moved from normal/menu_text.c. - * loader/i386/efi/linux.c (grub_cmd_linux): Retrieve parameters of - right terminal. - * loader/i386/linux.c (grub_linux_boot): Likewise. - * normal/auth.c (grub_username_get): New function. - (grub_auth_check_authentication): Use grub_username_get. - * normal/cmdline.c: Changed to UCS4. Adapted for multiterm. - * normal/color.c: Adapt for multiterm. - * normal/main.c (read_config_file): Don't use grub_reader_loop. - (grub_normal_init_page): Additional argument term. - (read_lists): Call read_terminal_lists. - (grub_enter_normal_mode): Call grub_cmdline_run. - Handle grub_normal_exit_level. - (grub_cmd_normal): Make reentrant. - (grub_cmd_normal_exit): New function. - (grub_normal_reader_init): Additional argument nested. Handle multiterm. - * normal/menu.c: Adapt for multiterm. - * normal/menu_entry.c: Likewise. - * normal/menu_text.c: Likewise. - * normal/menu_viewer.c: Removed. All users updated. - * normal/term.c: New file. - * util/console.c: Change order of includes to workaround a bug in - ncurses headers. - * term/terminfo.c: New argument oterm on all exported functions. - All users updated. - * util/grub-editenv.c (grub_term_input_class): Removed. - (grub_term_output_class): Likewise. - -2010-01-09 Robert Millan - - Make loader output a bit more user-friendly. - - * util/grub.d/10_hurd.in: Print message indicating that GNU Mach - is being loaded. Likewise for the Hurd. - - * util/grub.d/10_kfreebsd.in (kfreebsd_entry): Print message indicating - that kernel of FreeBSD ${version} is being loaded. - - * loader/i386/linux.c (grub_cmd_linux): Move debug info to - grub_dprintf(). - (grub_cmd_initrd): Likewise. - * util/grub.d/10_linux.in (linux_entry): Print message indicating - that Linux ${version} is being loaded. Likewise for initrd. - -2010-01-09 Carles Pina i Estany - - * gettext/gettext.c (GRUB_MOD_INIT): Gettextizze. - -2010-01-08 Carles Pina i Estany - - * loader/efi/appleloader.c: Include `'. - (GRUB_MOD_INIT): Gettextizze. - * loader/efi/chainloader.c: Include `'. - (GRUB_MOD_INIT): Gettextizze. - * loader/i386/efi/linux.c: Include `'. - (grub_cmd_linux): Capitalise Linux. - (GRUB_MOD_INIT): Gettextizze. - * loader/i386/ieee1275/linux.c: Include `'. - (grub_cmd_linux): Capitalise Linux. - (GRUB_MOD_INIT): Gettextizze. - * loader/i386/linux.c: Include `'. - (grub_cmd_linux): Capitalise Linux. - (GRUB_MOD_INIT): Gettextizze. - * loader/i386/pc/chainloader.c: Include `'. - (GRUB_MOD_INIT): Gettextizze. - * loader/i386/pc/linux.c: Include `'. - (grub_cmd_linux): Capitalise Linux. - (GRUB_MOD_INIT): Gettextizze. - * loader/i386/xnu.c: Include `'. - (grub_cpu_xnu_init): Gettextizze. - * loader/multiboot_loader.c: Include `'. - (GRUB_MOD_INIT): Gettextizze. - * loader/powerpc/ieee1275/linux.c: Include `'. - (GRUB_MOD_INIT): Gettextizze. - * loader/sparc64/ieee1275/linux.c: Include `'. - (grub_linux_load64): Capitalise Linux. - (GRUB_MOD_INIT): Gettextizze. - * loader/xnu.c: Include `'. - (GRUB_MOD_INIT): Gettextizze. - * po/POTFILES: Add `loader/efi/appleloader.c', - `loader/efi/chainloader.c', `loader/i386/efi/linux.c', - `loader/i386/ieee1275/linux.c', `loader/i386/linux.c', - `loader/i386/pc/chainloader.c', `loader/i386/pc/linux.c', - `loader/i386/xnu.c', `loader/multiboot_loader.c', - `loader/powerpc/ieee1275/linux.c', `loader/sparc64/ieee1275/linux.c' - and `loader/xnu.c'. - -2010-01-08 Robert Millan - - * src/mkisofs.c: Remove `ifdef linux' portability kludge. - -2010-01-08 Robert Millan - - * util/mkisofs/defaults.h (APPID_DEFAULT): Redefine using PACKAGE_NAME. - (SYSTEM_ID_DEFAULT): Set to "GNU" unconditionally. - * util/mkisofs/mkisofs.c (main): Readjust --version output. - -2010-01-07 Robert Millan - - Reset Multiboot 2 support. New loader implements the draft in - /branches/multiboot2 and shares as much code as possible with the - production Multiboot 1 implementation. - - * loader/ieee1275/multiboot2.c: Remove file. Update all users. - * loader/multiboot2.c: Likewise. - * loader/i386/multiboot_helper.S: Likewise. - * include/multiboot2.h: Replace with latest version from the draft - in /branches/multiboot2. - - * conf/i386-coreboot.rmk (multiboot_mod_SOURCES): Remove - `loader/i386/multiboot_helper.S', `loader/i386/pc/multiboot2.c' - and `loader/multiboot2.c'. - (pkglib_MODULES): Add `multiboot2.mod'. - (multiboot2_mod_SOURCES): New variable. - (multiboot2_mod_LDFLAGS): Likewise. - (multiboot2_mod_CFLAGS): Likewise. Define `GRUB_USE_MULTIBOOT2'. - - * conf/i386-pc.rmk: Likewise. - - * conf/powerpc-ieee1275.rmk (pkglib_MODULES): Remove `multiboot.mod'. - (multiboot_mod_SOURCES): Remove variable. - (multiboot_mod_LDFLAGS): Likewise. - (multiboot_mod_CFLAGS): Likewise. - - * include/grub/multiboot.h [GRUB_USE_MULTIBOOT2]: Include - `' instead of `'. - [GRUB_USE_MULTIBOOT2] (MULTIBOOT_BOOTLOADER_MAGIC) - (MULTIBOOT_HEADER_MAGIC): New macros. - - * loader/multiboot_loader.c (module_version_status): Remove variable. - (find_multi_boot2_header): Remove function. - (grub_cmd_multiboot_loader): Remove Multiboot 2 / Multiboot 1 selection - logic. Always check for the Multiboot version we're compiling for. - (grub_cmd_module_loader): Likewise. - [GRUB_USE_MULTIBOOT2] (GRUB_MOD_INIT(multiboot)): Register `multiboot2' - command instead of `multiboot'. - -2010-01-07 Robert Millan - - * include/multiboot.h (MULTIBOOT_UNSUPPORTED): Moved from here ... - * loader/i386/multiboot.c (UNSUPPORTED_FLAGS): ... to here. Update - all users. - -2010-01-07 Robert Millan -2010-01-07 Vladimir Serbinenko - - Fix breakage introduced with previous commit. - - * normal/dyncmd.c (read_command_list): Avoid unregistering kernel - commands. - * normal/handler.c (read_handler_list): Revert part of previous commit - affecting this file. - * normal/main.c (read_lists): Move read_handler_list() call back to ... - (grub_normal_execute): ... here. - -2010-01-07 Robert Millan - - Merge prefix-redefinition-fix branch. - - * normal/autofs.c (read_fs_list): Make function capable of being - run multiple times, gracefuly replacing the previous data - structures. - * normal/dyncmd.c (read_command_list): Likewise. - * normal/handler.c (read_handler_list): Likewise. - * normal/main.c (read_lists): New function. Calls all the - list reading functions. - (grub_normal_execute): Use read_lists() instead of calling all - list reading functions explicitly. Register read_lists() as a - variable hook attached to ${prefix}. - -2010-01-07 Vladimir Serbinenko - - Merge crypto branch. - - * Makefile.in (pkglib_DATA): Add crypto.lst. - (crypto.lst): New target. - * commands/hashsum.c: New file. - * commands/password.c (check_password): Use grub_crypto_memcmp. - * commands/password_pbkdf2.c: New file. - * commands/xnu_uuid.c: Remove MD5. Use GRUB_MD_MD5. - * conf/any-emu.rmk (grub_emu_SOURCES): Add lib/crypto.c, - normal/crypto.c and lib/libgcrypt-grub/cipher/md5.c. - (grub_emu_CFLAGS): Add -Wno-missing-field-initializers -Wno-error - -I$(srcdir)/lib/libgcrypt_wrap. - * conf/common.rmk (normal_mod_SOURCES): Add normal/crypto.c. - (pkglib_MODULES): Add crypto.mod, hashsum.mod, pbkdf2.mod and - password_pbkdf2.mod. - (crypto_mod_SOURCES): New variable. - (crypto_mod_CFLAGS): Likewise. - (crypto_mod_LDFLAGS): Likewise. - (hashsum_mod_SOURCES): New variable. - (hashsum_mod_CFLAGS): Likewise. - (hashsum_mod_LDFLAGS): Likewise. - (pbkdf2_mod_SOURCES): New variable. - (pbkdf2_mod_CFLAGS): Likewise. - (pbkdf2_mod_LDFLAGS): Likewise. - (password_pbkdf2_mod_SOURCES): New variable. - (password_pbkdf2_mod_CFLAGS): Likewise. - (password_pbkdf2_mod_LDFLAGS): Likewise. - (bin_UTILITIES): Add grub-mkpasswd-pbkdf2. - (grub_mkpasswd_pbkdf2_SOURCES): New variable. - (grub_mkpasswd_pbkdf2_CFLAGS): Likewise. - Include conf/gcry.rmk. - * include/grub/auth.h: Rewritten. - * include/grub/crypto.h: New file. - * include/grub/disk.h (grub_disk_dev_id): Add GRUB_DISK_DEVICE_LUKS_ID. - * include/grub/normal.h (read_crypto_list): New prototype. - * lib/crypto.c: New file. - * lib/libgcrypt_wrap/cipher_wrap.h: Likewise. - * lib/pbkdf2.c: Likewise. - * normal/auth.c (grub_auth_strcmp): Removed. - (grub_iswordseparator): Likewise. - (grub_auth_strword): Likewise. - (is_authenticated): Use grub_strword. - (grub_auth_check_authentication): Use grub_strcmp, grub_password_get - and grub_strword. Pass entered password to authentication callback. - * normal/crypto.c: New file. - * normal/main.c: Call read_crypto_list. - * util/grub-mkpasswd-pbkdf2.c: New file. - * util/import_gcry.py: Generate crypto.lst. Add hash blocklen. - -2010-01-06 Vladimir Serbinenko - - Fix descent and ascent calculation. - - * util/grub-mkfont.c (grub_font_info): New fields 'asce' and 'max_y'. - (options): New option "asce". - (usage): Likewise. - (add_char): Ignore invalid glyphs for descent calculation. - Calculate ascent from actual content. - (print_glyphs): Use 'asce'. - (write_font): Likewise. Allow ascent override. - (main): Handle "asce" option. - -2010-01-06 Carles Pina i Estany - - * kern/err.c: Include `'. - (grub_print_error): Add full stop. Gettextizze. - * loader/i386/bsd.c (grub_netbsd_boot): Change grub_error description. - (grub_bsd_load_elf): Capitalise ELF. - (grub_cmd_freebsd_loadenv): Add `s' in error string. - (grub_cmd_freebsd_module): Likewise. - (grub_cmd_freebsd_module_elf): Likewise. - * loader/i386/bsdXX.c (SUFFIX): Capitalise ELF. - -2010-01-06 Carles Pina i Estany - - * commands/search.c (GRUB_MOD_INIT): Use HELP_MESSAGE. - * commands/search_file.c (HELP_MESSAGE): New macro. - * commands/search_label.c (HELP_MESSAGE): Likewise. - * commands/search_uuid.c (HELP_MESSAGE): Likewise. - * po/POTFILES: Add `commands/search_file.c', - `commands/search_label.c', `commands_uuid.c'. Remove duplicate - `commands/search.c'. - -2010-01-05 Robert Millan - - * config.rpath: Update from Gnulib. - -2010-01-05 Yves Blusseau - - * commands/acpi.c (grub_acpi_create_ebda): fix incorrect message. - -2010-01-05 Yves Blusseau - - * util/sparc64/ieee1275/grub-mkimage.c (main): Typo fix. - -2010-01-05 Colin Watson - - * util/mkisofs/write.c (padblock_write): Switch size and nmemb - arguments to fread so that we get a return value in bytes, rather - than something that will normally be rounded down to 0. - Adjust error handling to avoid producing garbage when size_t is not - the same size as long long. - -2010-01-05 Colin Watson - - * util/mkisofs/write.c (padblock_write): Check return value of - fread. - -2010-01-05 Robert Millan - - Remove grub-mkfloppy. Images produced by grub-mkrescue are valid - floppy images now. - - * util/i386/pc/grub-mkfloppy.in: Remove. Update all users. - -2010-01-04 Robert Millan - - * disk/i386/pc/biosdisk.c (grub_biosdisk_rw): Use ALIGN_UP macro - instead of manual alignment. - * kern/disk.c (grub_disk_read): Remove grub_dprintf call (excessively - verbose). Avoid attempts to read past end of the device - (grub_disk_adjust_range() guarantees that we can read `size' bytes, - but GRUB_DISK_CACHE_SIZE may exceed that). - -2010-01-04 Robert Millan - - * commands/crc.c (grub_cmd_crc): Abort on read errors. - * fs/iso9660.c (grub_iso9660_read): Check for read error and pass - it to upper layer. - -2010-01-04 Vladimir Serbinenko - - * include/grub/efi/api.h (GRUB_EFI_PIWG_DEVICE_PATH_SUBTYPE): - New constant. - (grub_efi_piwg_device_path): New structure - (grub_efi_piwg_device_path_t): New type. - * loader/efi/appleloader.c (piwg_full_device_path): New structure. - (devpath_1): Transform to a structure. All users updated. - (devpath_2): Likewise. - (devpath_3): Likewise. - (devpath_4): Likewise. - (devpath_5): Likewise. - -2010-01-04 Vladimir Serbinenko - - * loader/efi/appleloader.c: Restored. Update all users. - -2010-01-03 Robert Millan - - * boot/i386/pc/diskboot.S: Fix inaccurate comment. - - * util/i386/pc/grub-setup.c: Include `'. - (struct boot_blocklist): Move from here ... - * include/grub/i386/pc/boot.h [ASM_FILE] - (struct grub_boot_blocklist): ... to here. Update all users. - (setup): Only initialize `start' member of `first_block' - structure. Add assert() calls to verify the other members. - - * util/i386/pc/grub-mkimage.c: Include `'. - (generate_image): Fix broken blocklist length initialization. - Add assert() call to verify blocklist `segment' field. - -2010-01-03 Robert Millan - - * loader/efi/appleloader.c: Remove. Update all users. - -2010-01-03 Robert Millan - - * boot/i386/pc/boot.S: Update copyright year. - * boot/i386/pc/cdboot.S: Likewise. - * boot/i386/pc/diskboot.S: Likewise. - * boot/i386/pc/lnxboot.S: Likewise. - * boot/i386/pc/pxeboot.S: Likewise. - * bus/pci.c: Likewise. - * commands/cmp.c: Likewise. - * commands/help.c: Likewise. - * commands/hexdump.c: Likewise. - * commands/i386/pc/halt.c: Likewise. - * commands/i386/pc/play.c: Likewise. - * commands/i386/pc/vbeinfo.c: Likewise. - * commands/ls.c: Likewise. - * commands/test.c: Likewise. - * disk/dmraid_nvidia.c: Likewise. - * disk/i386/pc/biosdisk.c: Likewise. - * disk/ieee1275/nand.c: Likewise. - * disk/ieee1275/ofdisk.c: Likewise. - * disk/lvm.c: Likewise. - * disk/raid.c: Likewise. - * disk/raid6_recover.c: Likewise. - * disk/scsi.c: Likewise. - * fs/affs.c: Likewise. - * fs/cpio.c: Likewise. - * fs/ext2.c: Likewise. - * fs/hfs.c: Likewise. - * fs/iso9660.c: Likewise. - * fs/ntfs.c: Likewise. - * fs/sfs.c: Likewise. - * fs/udf.c: Likewise. - * fs/ufs.c: Likewise. - * fs/xfs.c: Likewise. - * gencmdlist.sh: Likewise. - * genmk.rb: Likewise. - * include/grub/disk.h: Likewise. - * include/grub/efi/api.h: Likewise. - * include/grub/efi/efi.h: Likewise. - * include/grub/efi/pe32.h: Likewise. - * include/grub/elf.h: Likewise. - * include/grub/fs.h: Likewise. - * include/grub/i386/at_keyboard.h: Likewise. - * include/grub/i386/pc/memory.h: Likewise. - * include/grub/i386/pc/vbe.h: Likewise. - * include/grub/i386/pci.h: Likewise. - * include/grub/i386/tsc.h: Likewise. - * include/grub/ieee1275/ieee1275.h: Likewise. - * include/grub/ntfs.h: Likewise. - * include/grub/sparc64/ieee1275/ieee1275.h: Likewise. - * include/grub/sparc64/libgcc.h: Likewise. - * include/grub/symbol.h: Likewise. - * include/grub/types.h: Likewise. - * include/multiboot2.h: Likewise. - * io/gzio.c: Likewise. - * kern/device.c: Likewise. - * kern/disk.c: Likewise. - * kern/efi/efi.c: Likewise. - * kern/efi/mm.c: Likewise. - * kern/elf.c: Likewise. - * kern/file.c: Likewise. - * kern/i386/dl.c: Likewise. - * kern/i386/pc/init.c: Likewise. - * kern/i386/pc/startup.S: Likewise. - * kern/ieee1275/ieee1275.c: Likewise. - * kern/ieee1275/init.c: Likewise. - * kern/main.c: Likewise. - * kern/mm.c: Likewise. - * kern/powerpc/dl.c: Likewise. - * kern/sparc64/dl.c: Likewise. - * kern/x86_64/dl.c: Likewise. - * lib/hexdump.c: Likewise. - * loader/efi/appleloader.c: Likewise. - * loader/i386/ieee1275/linux.c: Likewise. - * loader/i386/pc/chainloader.c: Likewise. - * loader/i386/pc/linux.c: Likewise. - * loader/i386/pc/multiboot2.c: Likewise. - * loader/ieee1275/multiboot2.c: Likewise. - * loader/multiboot2.c: Likewise. - * loader/multiboot_loader.c: Likewise. - * loader/powerpc/ieee1275/linux.c: Likewise. - * normal/completion.c: Likewise. - * normal/menu_entry.c: Likewise. - * partmap/apple.c: Likewise. - * util/grub.d/10_hurd.in: Likewise. - * util/hostfs.c: Likewise. - * video/readers/png.c: Likewise. - -2010-01-03 Colin Watson - - * include/grub/misc.h (GNUC_PREREQ): New macro. - (ATTRIBUTE_ERROR): New macro. - * include/grub/list.h (grub_bad_type_cast_real): Use - ATTRIBUTE_ERROR. - -2010-01-03 Carles Pina i Estany - - * normal/menu_text.c (print_message): Change messages. - -2010-01-03 Carles Pina i Estany - - * normal/menu_entry.c (store_completion): Gettextizze. - -2010-01-03 Carles Pina i Estany - - * kern/env.c (grub_env_unset): Set the variable to "" if has hooks. - -2010-01-03 Carles Pina i Estany - - * po/POTFILES: Sort correctly. - -2010-01-03 Carles Pina i Estany - - * commands/acpi.c (GRUB_MOD_INIT): Capitalise some words from help. - * commands/efi/loadbios.c (GRUB_MOD_INIT): Capitalise BIOS. - * commands/i386/pc/drivemap.c (GRUB_MOD_INIT): Remove space. Add - full stop. - * commands/loadenv.c (GRUB_MOD_INIT): Remove command name from - summary. Gettextizze the strings. - * commands/probe.c (grub_cmd_probe): Capitalise UUID and FS. - * commands/xnu_uuid.c (GRUB_MOD_INIT): Capitalise XNU. - * disk/loopback.c (grub_arg_options): Capitalise first letter. Add - full stop. - (GRUB_MOD_INIT): Remove command name from summary. - * hello/hello.c (GRUD_MOT_INIT): Add missing full stop. Improve the - summary. - * loader/i386/bsd.c (grub_arg_option): Capitalise CDROM. - * term/i386/pc/serial.c (options): Add full stops. - (GRUB_MOD_INIT): Remove command name from the summary. - -2010-01-03 Carles Pina i Estany - - * commands/acpi.c: Gettextizze help strings and/or options. Include - `grub/i18n.h' if needed. - * commands/blocklist.c: Likewise. - * commands/boot.c: Likewise. - * commands/cat.c: Likewise. - * commands/cmp.c: Likewise. - * commands/configfile.c: Likewise. - * commands/crc.c: Likewise. - * commands/date.c: Likewise. - * commands/echo.c: Likewise. - * commands/efi/fixvideo.c: Likewise. - * commands/efi/loadbios.c: Likewise. - * commands/gptsync.c: Likewise. - * commands/halt.c: Likewise. - * commands/handler.c: Likewise. - * commands/hdparm.c: Likewise. - * commands/hexdump.c: Likewise. - * commands/i386/cpuid.c: Likewise. - * commands/i386/pc/drivemap.c: Likewise. - * commands/i386/pc/halt.c: Likewise. - * commands/i386/pc/pxecmd.c: Likewise. - * commands/i386/pc/vbeinfo.c: Likewise. - * commands/i386/pc/vbetest.c: Likewise. - * commands/ieee1275/suspend.c: Likewise. - * commands/keystatus.c: Likewise. - * commands/loadenv.c: Likewise. - * commands/ls.c: Likewise. - * commands/lsmmap.c: Likewise. - * commands/lspci.c: Likewise. - * commands/memrw.c: Likewise. - * commands/minicmd.c: Likewise. - * commands/parttool.c: Likewise. - * commands/password.c: Likewise. - * commands/probe.c: Likewise. - * commands/read.c: Likewise. - * commands/reboot.c: Likewise. - * commands/search.c: Likewise. - * commands/sleep.c: Likewise. - * commands/test.c: Likewise. - * commands/true.c: Likewise. - * commands/usbtest.c: Likewise. - * commands/videotest.c: Likewise. - * commands/xnu_uuid.c: Likewise. - * disk/loopback.c: Likewise. - * hello/hello.c: Likewise. - * loader/i386/bsd.c: Likewise. - * term/i386/pc/serial.c: Likewise. - * po/POTFILES: Add new files. - -2010-01-02 Colin Watson - - * term/i386/pc/at_keyboard.c - (keyboard_controller_wait_untill_ready): Rename to ... - (keyboard_controller_wait_until_ready): ... this. Update all users. - -2010-01-01 Carles Pina i Estany - - * commands/help.c: Include `grub/mm.h' and `grub/normal.h'. - (grub_cmd_help): Print the cmd->name before the cmd->summary. Cut the - string using string width. - * normal/menu_text.c (grub_print_message_indented): Use - grub_print_spaces and not print_spaces. - (print_timeout): Likewise. - (print_spaces): Move to... - * include/grub/term.h: ... here. Change the name to grub_print_spaces. - -2010-01-01 Robert Millan - - Import from Gnulib. - - * gnulib/getdelim.c: New file. - * gnulib/getline.c: Likewise. - -2009-12-31 BVK Chaitanya - - * include/grub/list.h (grub_assert_fail): Removed. - (grub_bad_type_cast_real): New function. - (grub_bad_type_cast): New macro. - (GRUB_AS_LIST): Use grub_bad_type_cast. - (GRUB_AS_LIST_P): Likewise. - (GRUB_AS_NAMED_LIST): Likewise. - (GRUB_AS_NAMED_LIST_P): Likewise. - (GRUB_AS_PRIO_LIST): Likewise. - (GRUB_AS_PRIO_LIST_P): Likewise. - * include/grub/handler.h (GRUB_AS_HANDLER): Likewise. - -2009-12-29 Vladimir Serbinenko - - * loader/sparc64/ieee1275/linux.c (GRUB_MOD_INIT (linux)): - Fix syntax error. - -2009-12-29 Robert Millan - - * configure.ac: Check for TARGET_CFLAGS initialization before we - initialize it ourselves (sigh). - Move a few modifications to TARGET_CFLAGS to be unconditional - (extra warning flags, loop alignment, i386 CPU extensions, GCC 4.4 - eh_frame) - - * gettext/gettext.c (grub_gettext_delete_list): Add `void' argument. - * term/i386/pc/at_keyboard.c - (keyboard_controller_wait_untill_ready): Likewise. - (keyboard_controller_led): Rename `led_status' paramter to avoid - name conflict. - -2009-12-28 Carles Pina i Estany - - * normal/misc.c (grub_normal_print_device_info): Add spaces and double - quotes. - -2009-12-27 Vladimir Serbinenko - - * kern/parser.c (grub_parser_split_cmdline): Don't dereference NULL. - -2009-12-27 Vladimir Serbinenko - - * normal/menu_text.c (grub_print_message_indented): Prevent - past-the-end-of-array dereference. - -2009-12-27 Vladimir Serbinenko - - * video/readers/jpeg.c (GRUB_MOD_FINI (grub_cmd_jpegtest)): Rename to .. - (GRUB_MOD_FINI (video_reader_jpeg)): ...this - -2009-12-27 Carles Pina i Estany - - * normal/cmdline.c (grub_cmdline_get): Print a space after prompt. - * normal/main.c (grub_normal_read_line): Remove a space from the - default prompt. - -2009-12-27 Carles Pina i Estany - - * loader/i386/efi/linux.c (GRUB_MOD_INIT): Improve command summary. - * loader/i386/ieee1275/linux.c (GRUB_MOD_INIT): Likewise. - * loader/i386/linux.c (GRUB_MOD_INIT): Likewise. - * loader/i386/pc/linux.c (GRUB_MOD_INIT): Likewise. - * loader/powerpc/ieee1275/linux.c (GRUB_MOD_INIT): Likewise. - * loader/sparc64/ieee1275/linux.c (GRUB_MOD_INIT): Likewise. - * loader/xnu.c (GRUB_MOD_INIT): Likewise. - -2009-12-26 Carles Pina i Estany - - * video/readers/jpeg.c (cmd): Declare. - (grub_cmd_jpegtest): Use `grub_command_t' type. - (GRUB_MOD_INIT): Fix arguments passed to `grub_register_command'. - Assign to `cmd'. - (GRUB_MOD_FINI): Use `cmd' to unregister. - * video/readers/png.c (cmd): Declare. - (grub_cmd_pngtest): Use `grub_command_t' type. - (GRUB_MOD_INIT): Fix arguments passed to `grub_register_command'. - Assign to `cmd'. - (GRUB_MOD_FINI): Use `cmd' to unregister. - * video/readers/tga.c (cmd): Declare. - (grub_cmd_tgatest): Use `grub_command_t' type. - (GRUB_MOD_INIT): Fix arguments passed to `grub_register_command'. - Assign to `cmd'. - (GRUB_MOD_FINI): Use `cmd' to unregister. - -2009-12-26 Carles Pina i Estany - - * efiemu/main.c (GRUB_MOD_INIT): Fix capitalizations and/or full - stops. - * kern/corecmd.c (grub_register_core_commands): Likewise. - * loader/efi/chainloader.c (GRUB_MOD_INIT): Likewise. - * loader/i386/bsd.c (GRUB_MOD_INIT): Likewise. - * loader/i386/efi/linux.c (GRUB_MOD_INIT): Likewise. - * loader/i386/ieee1275/linux.c (GRUB_MOD_INIT): Likewise. - * loader/i386/linux.c (GRUB_MOD_INIT): Likewise. - * loader/i386/pc/chainloader.c (GRUB_MOD_INIT): Likewise. - * loader/i386/pc/linux.c (GRUB_MOD_INIT): Likewise. - * loader/multiboot_loader.c (GRUB_MOD_INIT): Likewise. - * loader/powerpc/ieee1275/linux.c (GRUB_MOD_INIT): Likewise. - * loader/sparc64/ieee1275/linux.c (GRUB_MOD_INIT): Likewise. - * loader/xnu.c (GRUB_MOD_INIT): Likewise. - * mmap/mmap.c (GRUB_MOD_INIT): Likewise. - * normal/handler.c (insert_handler): Likewise. - * normal/main.c (GRUB_MOD_INIT): Likewise. - * term/gfxterm.c (GRUB_MOD_INIT): Likewise. - -2009-12-26 Carles Pina i Estany - - * commands/help.c (grub_cmd_help): Print the command name before the - summary. - (GRUB_MOD_INIT): Remove command name from the summary. - * kern/command.c (GRUB_MOD_INIT): If summary is null assign an empty - string as summary. - * lib/arg.c (find_long): Print the command name before the summary. - * commands/acpi.c (GRUB_MOD_INIT): Remove command name from the - summary. - * commands/blocklist.c (GRUB_MOD_INIT): Likewise. - * commands/cat.c (GRUB_MOD_INIT): Likewise. - * commands/cmp.c (GRUB_MOD_INIT): Likewise. - * commands/configfile.c (GRUB_MOD_INIT): Likewise. - * commands/crc.c (GRUB_MOD_INIT): Likewise. - * commands/date.c (GRUB_MOD_INIT): Likewise. - * commands/echo.c (GRUB_MOD_INIT): Likewise. - * commands/efi/loadbios.c (GRUB_MOD_INIT): Likewise. - * commands/gptsync.c (GRUB_MOD_INIT): Likewise. - * commands/handler.c (GRUB_MOD_INIT): Likewise. - * commands/hdparm.c (GRUB_MOD_INIT): Likewise. - * commands/hexdump.c (GRUB_MOD_INIT): Likewise. - * commands/i386/cpuid.c (GRUB_MOD_INIT): Likewise. - * commands/i386/pc/halt.c (GRUB_MOD_INIT): Likewise. - * commands/i386/pc/play.c (GRUB_MOD_INIT): Likewise. - * commands/i386/pc/pxecmd.c (GRUB_MOD_INIT): Likewise. - * commands/keystatus.c (GRUB_MOD_INIT): Likewise. - * commands/loadenv.c (GRUB_MOD_INIT): Likewise. - * commands/ls.c (GRUB_MOD_INIT): Likewise. - * commands/lspci.c (GRUB_MOD_INIT): Likewise. - * commands/memrw.c (GRUB_MOD_INIT): Likewise. - * commands/minicmd.c (GRUB_MOD_INIT): Likewise. - * commands/parttool.c (GRUB_MOD_INIT): Likewise. - * commands/password.c (GRUB_MOD_INIT): Likewise. - * commands/probe.c (GRUB_MOD_INIT): Likewise. - * commands/read.c (GRUB_MOD_INIT): Likewise. - * commands/search.c (GRUB_MOD_INIT): Likewise. - * commands/sleep.c (GRUB_MOD_INIT): Likewise. - * commands/test.c (GRUB_MOD_INIT): Likewise. - * commands/xnu_uuid.c (GRUB_MOD_INIT): Likewise. - * efiemu/main.c (GRUB_MOD_INIT): Likewise. - * font/font_cmd.c (GRUB_MOD_INIT): Likewise. - * gettext/gettext.c (GRUB_MOD_INIT): Likewise. - * kern/corecmd.c (GRUB_MOD_INIT): Likewise. - * lib/arg.c (GRUB_MOD_INIT): Likewise. - * loader/efi/appleloader.c (GRUB_MOD_INIT): Likewise. - * loader/i386/bsd.c (GRUB_MOD_INIT): Likewise. - * loader/xnu.c (GRUB_MOD_INIT): Likewise. - * mmap/mmap.c (GRUB_MOD_INIT): Likewise. - * term/terminfo.c (GRUB_MOD_INIT): Likewise. - * video/readers/jpeg.c (GRUB_MOD_INIT): Likewise. - * video/readers/png.c (GRUB_MOD_INIT): Likewise. - * video/readers/tga.c (GRUB_MOD_INIT): Likewise. - -2009-12-25 Vladimir Serbinenko - - Use search command for preliminar UUID search. - - * commands/search.c: Split into ... - * commands/search_wrap.c: ...this - * commands/search.c: ...and this. - * commands/search_file.c: New file. - * commands/search_label.c: New file. - * commands/search_uuid.c: New file. - * conf/any-emu.rmk (grub_emu_SOURCES): Remove commands/search.c. - Add commands/search_wrap.c, commands/search_file.c, - commands/search_label.c and commands/search_uuid.c. - * conf/common.rmk (pkglib_MODULES): Remove fs_uuid.mod and fs_file.mod. - (search_mod_SOURCES): Set to commands/search_wrap.c. - (pkglib_MODULES): Add search_fs_file.mod, search_fs_uuid.mod and - search_label.mod. - (search_fs_file_mod_SOURCES): New variable. - (search_fs_file_mod_CFLAGS): Likewise. - (search_fs_file_mod_LDFLAGS): Likewise. - (search_label_mod_SOURCES): Likewise. - (search_label_mod_CFLAGS): Likewise. - (search_label_mod_LDFLAGS): Likewise. - (search_fs_uuid_mod_SOURCES): New variable. - (search_fs_uuid_mod_CFLAGS): Likewise. - (search_fs_uuid_mod_LDFLAGS): Likewise. - (fs_file_mod_SOURCES): Removed. - (fs_file_mod_CFLAGS): Likewise. - (fs_file_mod_LDFLAGS): Likewise. - (fs_uuid_mod_SOURCES): Removed. - (fs_uuid_mod_CFLAGS): Likewise. - (fs_uuid_mod_LDFLAGS): Likewise. - * conf/sparc64-ieee1275.rmk (grub_install_SOURCES): - Set to util/grub-install.in. - * disk/fs_file.c: Removed. - * disk/fs_uuid.c: Likewise. - * include/grub/search.h: New file. - * util/grub-install.in: Handle sparc64. - Create and use load.cfg. - * util/sparc64/ieee1275/grub-install.in: Removed. - -2009-12-25 Vladimir Serbinenko - - * kern/i386/pc/startup.S (grub_biosdisk_get_diskinfo_int13_extensions): - Ignore return status if CF is cleared. - (grub_biosdisk_get_diskinfo_standard): Likewise. - -2009-12-25 Robert Millan - - * term/i386/pc/at_keyboard.c - (keyboard_controller_wait_untill_ready): New function. - (grub_keyboard_controller_write, grub_keyboard_controller_read) - (keyboard_controller_led): Use keyboard_controller_wait_untill_ready() - for keyboard polling, rather than duplicate the same loop. This - saves a few bytes in code size. - -2009-12-25 Vladimir Serbinenko - - Support for (pxe[:server[:gateway]]) syntax and - use environment variable for PXE. - - * commands/i386/pc/pxecmd.c (options): Removed. - (print_ip): Removed. - (grub_cmd_pxe): Removed - (grub_cmd_pxe_unload): New function. - * fs/i386/pc/pxe.c (grub_pxe_disk_data): New structure. - (grub_pxe_your_ip): Made static. - (grub_pxe_default_server_ip): Likewise. - (grub_pxe_default_gateway_ip): Likewise. - (grub_pxe_blksize): Likewise. - (parse_ip): New function. - (grub_pxe_open): Support server and gateway specification. - (grub_pxe_close): Free disk->data. - (grub_pxefs_open): Use disk->data. - (grub_pxefs_read): Likewise. - (grub_env_write_readonly): New function. - (set_mac_env): Likewise. - (set_env_limn_ro): Likewise. - (parse_dhcp_vendor): Likewise. - (grub_pxe_detect): Set the environment variables. - (set_ip_env): New function. - (write_ip_env): Likewise. - (grub_env_write_pxe_default_server): Likewise. - (grub_env_write_pxe_default_gateway): Likewise. - (grub_env_write_pxe_blocksize): Likewise. - (GRUB_MOD_INIT(pxe)): Set environment variables. - * include/grub/i386/pc/pxe.h (grub_pxe_mac_addr): Rename to ... - (grub_pxe_mac_addr_t): ... this. All users updated. - (grub_pxe_your_ip): Removed. - (grub_pxe_server_ip): Likewise. - (grub_pxe_gateway_ip): Likewise. - (grub_pxe_blksize): Likewise. - -2009-12-25 Carles Pina i Estany - - * commands/help.c: Include `'. - (grub_cmd_help): Gettextizze. - (GRUB_MOD_INIT): Likewise. - * commands/i386/pc/play.c: Include `'. - (GRUB_MOD_INIT): Gettextizze. - * commands/search.c: Include `'. - (options): Gettextizze. - (GRUB_MOD_INIT): Gettextizze. - * lib/arg.c: Include `'. - (help_options): Gettextizze. - (find_long): Likewise. - (grub_arg_show_help): Likewise. - * normal/dyncmd.c: Include `'. - (read_command_list): Gettextizze. - * po/POTFILES: Add `commands/i386/pc/play.c', `commands/search.c', - `commands/help.c', `lib/arg.c' and `normal/dyncmd.c'. - -2009-12-25 Robert Millan - - * include/grub/i386/at_keyboard.h (NUM_LOCK, SCROLL_LOCK): New macros. - * term/i386/pc/at_keyboard.c (KEYBOARD_STATUS_NUM_LOCK) - (KEYBOARD_LED_SCROLL, KEYBOARD_LED_NUM, KEYBOARD_LED_CAPS): New macros. - (led_status): New variable. - (keyboard_controller_led): New function. - (grub_at_keyboard_getkey_noblock): Handle num lock and scroll lock, - update led status for caps lock, num lock and scroll lock. - -2009-12-25 Felix Zielcke - - * util/hostdisk.c (open_device): Fix a comment. - -2009-12-24 Robert Millan - - * util/grub-install.in (host_os): New variable. - * util/i386/efi/grub-install.in (host_os): Likewise. - -2009-12-24 Robert Millan - - * util/mkisofs/write.c (padblock_write): Abort when given an - excedingly large embed image, instead of silently truncating it. - -2009-12-24 Robert Millan - - * include/multiboot.h: Indentation fixes. - -2009-12-24 Robert Millan - - * include/multiboot.h (struct multiboot_aout_symbol_table) - (struct multiboot_elf_section_header_table): New structure - declarations (stolen from GRUB Legacy). - (struct multiboot_info): Replace opaque `syms' with a.out and ELF - table information. - - (multiboot_aout_symbol_table_t, multiboot_elf_section_header_table_t) - (multiboot_info_t, multiboot_memory_map_t, multiboot_module_t): New - type aliases. - -2009-12-24 Robert Millan - - * include/multiboot.h: Make comments src2texi-friendly. - -2009-12-24 Robert Millan - - For consistency with [multiboot]/docs/boot.S. - - * include/multiboot.h (MULTIBOOT_MAGIC): Rename from this ... - (MULTIBOOT_HEADER_MAGIC): ... to this. Update all users. - (MULTIBOOT_MAGIC2): Rename from this ... - (MULTIBOOT_BOOTLOADER_MAGIC): ... to this. Update all users. - -2009-12-24 Robert Millan - - * include/multiboot.h: Remove `'. - (multiboot_uint16_t, multiboot_uint32_t, multiboot_uint64_t): New - types. Update all users. - -2009-12-25 Carles Pina i Estany - - * commands/efi/loadbios.c: Capitalize acronyms, replace `could not' by - `couldn't' and `can not' by `cannot'. - * commands/i386/pc/drivemap.c: Likewise. - * disk/ata.c: Likewise. - * disk/ieee1275/nand.c: Likewise. - * fs/affs.c: Likewise. - * fs/fat.c: Likewise. - * fs/hfs.c: Likewise. - * fs/hfsplus.c: Likewise. - * fs/iso9660.c: Likewise. - * fs/jfs.c: Likewise. - * fs/minix.c: Likewise. - * fs/reiserfs.c: Likewise. - * fs/sfs.c: Likewise. - * fs/udf.c: Likewise. - * fs/ufs.c: Likewise. - * fs/xfs.c: Likewise. - * loader/powerpc/ieee1275/linux.c: Likewise. - * loader/sparc64/ieee1275/linux.c: Likewise. - * util/grub-probe.c: Likewise. - * util/misc.c: Likewise. - -2009-12-24 Carles Pina i Estany - - * bus/usb/usbhub.c: Fix capitalization, fullstop and newlines in - grub_errno calls. - * commands/acpi.c: Likewise. - * commands/blocklist.c: Likewise. - * commands/efi/loadbios.c: Likewise. - * commands/i386/pc/drivemap.c: Likewise. - * commands/loadenv.c: Likewise. - * commands/memrw.c: Likewise. - * commands/password.c: Likewise. - * commands/videotest.c: Likewise. - * disk/ata.c: Likewise. - * disk/ata_pthru.c: Likewise. - * disk/dmraid_nvidia.c: Likewise. - * disk/ieee1275/nand.c: Likewise. - * disk/ieee1275/ofdisk.c: Likewise. - * disk/loopback.c: Likewise. - * disk/lvm.c: Likewise. - * disk/mdraid_linux.c: Likewise. - * disk/raid.c: Likewise. - * disk/raid6_recover.c: Likewise. - * disk/scsi.c: Likewise. - * efiemu/main.c: Likewise. - * efiemu/mm.c: Likewise. - * efiemu/pnvram.c: Likewise. - * efiemu/symbols.c: Likewise. - * font/font.c: Likewise. - * fs/cpio.c: Likewise. - * fs/hfsplus.c: Likewise. - * fs/iso9660.c: Likewise. - * fs/jfs.c: Likewise. - * fs/minix.c: Likewise. - * fs/ntfs.c: Likewise. - * fs/ntfscomp.c: Likewise. - * fs/reiserfs.c: Likewise. - * fs/ufs.c: Likewise. - * fs/xfs.c: Likewise. - * gettext/gettext.c: Likewise. - * include/grub/auth.h: Likewise. - * kern/elf.c: Likewise. - * kern/file.c: Likewise. - * kern/ieee1275/init.c: Likewise. - * kern/ieee1275/mmap.c: Likewise. - * kern/ieee1275/openfw.c: Likewise. - * kern/powerpc/dl.c: Likewise. - * kern/sparc64/dl.c: Likewise. - * lib/arg.c: Likewise. - * loader/i386/bsd.c: Likewise. - * loader/i386/bsdXX.c: Likewise. - * loader/i386/efi/linux.c: Likewise. - * loader/i386/efi/xnu.c: Likewise. - * loader/i386/ieee1275/linux.c: Likewise. - * loader/i386/linux.c: Likewise. - * loader/i386/multiboot.c: Likewise. - * loader/i386/pc/linux.c: Likewise. - * loader/i386/pc/multiboot2.c: Likewise. - * loader/i386/xnu.c: Likewise. - * loader/ieee1275/multiboot2.c: Likewise. - * loader/macho.c: Likewise. - * loader/machoXX.c: Likewise. - * loader/multiboot2.c: Likewise. - * loader/multiboot_loader.c: Likewise. - * loader/powerpc/ieee1275/linux.c: Likewise. - * loader/sparc64/ieee1275/linux.c: Likewise. - * loader/xnu.c: Likewise. - * loader/xnu_resume.c: Likewise. - * mmap/i386/pc/mmap.c: Likewise. - * normal/menu_viewer.c: Likewise. - * partmap/acorn.c: Likewise. - * partmap/amiga.c: Likewise. - * partmap/apple.c: Likewise. - * script/lexer.c: Likewise. - * term/gfxterm.c: Likewise. - * term/i386/pc/serial.c: Likewise. - * term/i386/pc/vga.c: Likewise. - * term/ieee1275/ofconsole.c: Likewise. - * term/terminfo.c: Likewise. - * video/bitmap.c: Likewise. - * video/efi_gop.c: Likewise. - * video/efi_uga.c: Likewise. - * video/fb/video_fb.c: Likewise. - * video/i386/pc/vbe.c: Likewise. - * video/readers/tga.c: Likewise. - * video/video.c: Likewise. - -2009-12-23 Felix Zielcke - - * commands/i386/pc/drivemap.c: Remove all trailing whitespace. - * commands/lspci.c: Likewise. - * commands/probe.c: Likewise. - * commands/xnu_uuid.c: Likewise. - * conf/i386-coreboot.rmk: Likewise. - * conf/i386-efi.rmk: Likewise. - * conf/i386-ieee1275.rmk: Likewise. - * conf/i386-pc.rmk: Likewise. - * conf/powerpc-ieee1275.rmk: Likewise. - * conf/sparc64-ieee1275.rmk: Likewise. - * conf/x86_64-efi.rmk: Likewise. - * fs/i386/pc/pxe.c: Likewise. - * gettext/gettext.c: Likewise. - * include/grub/efi/graphics_output.h: Likewise. - * include/grub/i386/pc/memory.h: Likewise. - * kern/env.c: Likewise. - * kern/i386/qemu/startup.S: Likewise. - * lib/i386/pc/biosnum.c: Likewise. - * lib/i386/relocator.c: Likewise. - * lib/i386/relocator_asm.S: Likewise. - * lib/relocator.c: Likewise. - * loader/i386/bsd.c: Likewise. - * loader/i386/multiboot.c: Likewise. - * loader/i386/pc/chainloader.c: Likewise. - * loader/i386/xnu.c: Likewise. - * loader/xnu.c: Likewise. - * normal/main.c: Likewise. - * normal/menu_text.c: Likewise. - * util/getroot.c: Likewise. - * util/grub-mkconfig_lib.in: Likewise. - * util/grub.d/00_header.in: Likewise. - * util/i386/pc/grub-mkimage.c: Likewise. - * util/mkisofs/eltorito.c: Likewise. - * util/mkisofs/exclude.h: Likewise. - * util/mkisofs/hash.c: Likewise. - * util/mkisofs/iso9660.h: Likewise. - * util/mkisofs/joliet.c: Likewise. - * util/mkisofs/mkisofs.c: Likewise. - * util/mkisofs/mkisofs.h: Likewise. - * util/mkisofs/multi.c: Likewise. - * util/mkisofs/name.c: Likewise. - * util/mkisofs/rock.c: Likewise. - * util/mkisofs/tree.c: Likewise. - * util/mkisofs/write.c: Likewise. - * video/efi_gop.c: Likewise. - -2009-12-23 Vladimir Serbinenko - - * video/efi_gop.c (grub_video_gop_get_bitmask): Fix off-by-one in mask - size counting. - -2009-12-22 Felix Zielcke - - * util/grub-mkrescue.in (pkglib_DATA): Set to @pkglib_DATA@. - * genmk.rb (class SCRIPT): Modify the target file instead of source. - -2009-12-22 Vladimir Serbinenko - - * commands/memrw.c (grub_cmd_write): Support for mask parameter. - (GRUB_MOD_INIT(memrw)): Update help line. - -2009-12-22 Vladimir Serbinenko - - * commands/memrw.c (cmd_read_byte, cmd_read_word, cmd_read_dword): - Use grub_extcmd_t. All users updated. - (options): New variable. - (grub_cmd_read): Restructure for readability. Support "-v" option. - (grub_cmd_write): Restructure for readability. - -2009-12-22 Felix Zielcke - - * genmk.rb (class SCRIPT): Prepend #{src} path with $(srcdir). - -2009-12-22 Felix Zielcke - - * genmk.rb (class SCRIPT): Use sed to substitute @pkglib_DATA@ - with the actual contents of the correspondending make variable. - * util/grub-mkrescue.in (pkglib_DATA): New variable. - (process_input_dir): Copy all $pkglib_DATA files instead of explicitly - specifying `*.lst' and `efiemu??.o' - -2009-12-22 Felix Zielcke - - * util/grub.d/30_os-prober.in (osx_entry): Add round brackets - after function name. - Noticed by Rene Engelhard . - -2009-12-22 Vladimir Serbinenko - - * commands/lspci.c (grub_pci_classes): Add "USB Controller". - (options): New variable. - (iospace): Likewise. - (grub_lspci_iter): List IO spaces if "-i" was given. - (grub_cmd_lspci): Parse options. - (GRUB_MOD_INIT(lspci)): Use extcmd. - (GRUB_MOD_FINI(lspci)): Likewise. - -2009-12-22 Felix Zielcke - - * util/grub.d/30_os-prober.in (osx_entry): Remove non POSIX compliant - `function' keyword. - Patch by Tony Mancill . - -2009-12-22 Vladimir Serbinenko - - * bus/usb/uhci.c (grub_uhci_transfer): Set a limit transaction time. - (grub_uhci_portstatus): Likewise. - (grub_uhci_portstatus): Add necessary delay. - * bus/usb/usbhub.c (grub_usb_hub_add_dev): Fix loop-break condition. - -2009-12-21 Carles Pina i Estany - - * commands/acpi.c (options): Fix capitalizations and/or full stops. - (GRUB_MOD_INIT): Likewise. - * commands/boot.c (GRUB_MOD_INIT): Likewise. - * commands/cmp.c (grub_cmd_cmp): Improve the help message. - * commands/echo.c (options): Fix capitalizations and/or full stops. - * commands/efi/loadbios.c (enable_rom_area): Likewise. - (enable_rom_area): Likewise. - (GRUB_MOD_INIT): Likewise. - * commands/gptsync.c (GRUB_MOD_INIT): Likewise. - * commands/halt.c (GRUB_MOD_INIT): Improve the help message. - * commands/handler.c (GRUB_MOD_INIT): Likewise. - * commands/hdparm.c (options): Fix capitalizations and/or full stops. - * commands/hexdump.c (options): Likewise. - * commands/i386/cpuid.c (options): Likewise. - (GRUB_MOD_INIT): Likewise. - * commands/i386/pc/drivemap.c (options): Likewise. - (GRUB_MOD_INIT): Likewise. - * commands/i386/pc/halt (options): Likewise. - (GRUB_MOD_INIT): Likewise. - * commands/i386/pc/play.c (GRUB_MOD_INIT): Likewise. - * commands/i386/pc/pxecmd.c (options): Likewise. - * commands/i386/pc/vbetest.c (GRUB_MOD_INIT): Likewise. - * commands/ieee1275/suspend.c (GRUB_MOD_INIT): Likewise. - * commands/keystatus.c (options): Likewise. - (GRUB_MOD_INIT): Likewise. - * commands/loadenv.c (options): Likewise. - * commands/ls.c (options): Likewise. - * commands/lspci.c (GRUB_MOD_INIT): Likewise. - * commands/memrw.c (GRUB_MOD_INIT): Likewise. - * commands/minicmd.c (GRUB_MOD_INIT): Likewise. - * commands/parttool.c (helpmsg): Likewise. - * commands/probe.c (options): Likewise. - * commands/read.c (GRUB_MOD_INIT): Likewise. - * commands/reboot.c (GRUB_MOD_INIT): Likewise. - * commands/search.c (options): Likewise. - * commands/sleep.c (options): Likewise. - * commands/test.c (GRUB_MOD_INIT): Likewise. - * commands/true.c (GRUB_MOD_INIT): Likewise. - * commands/usbtest.c (GRUB_MOD_INIT): Likewise. - * commands/videotest.c (GRUB_MOD_INIT): Likewise. - * lib/arg.c (help_options): Likewise. - * Makefile.in ($(srcdir)/po/$(PACKAGE).pot): Pass -ctranslate to - `$(XGETTEXT)'. - * po/POTFILES: Add `commands/loadenv.c'. - -2009-12-21 Felix Zielcke - - * util/grub-mkrescue.in (process_input_dir): Copy `*.lst' files - instead of specifying them explicit. - -2009-12-21 Robert Millan - - * NEWS: Add grub-probe support for GNU/Hurd. - -2009-12-21 Robert Millan - - * NEWS: gettext was added after 1.97. - -2009-12-21 Robert Millan - - * util/mkisofs/msdos_partition.h: New file (based on - include/grub/msdos_partition.h). - * util/mkisofs/mkisofs.c (use_protective_msdos_label): New variable. - (OPTION_PROTECTIVE_MSDOS_LABEL): New macro. - (ld_options, main): Recognize --protective-msdos-label. - * util/mkisofs/mkisofs.h (use_protective_msdos_label): New declaration. - * util/mkisofs/write.c: Include `"msdos_partition.h"'. - (padblock_write): If `use_protective_msdos_label' is set, patch a - protective DOS-style label in the output image. - - * util/grub-mkrescue.in: Use --protective-msdos-label. - -2009-12-21 Robert Millan - - * util/grub-mkrescue.in: Do not zero-pad image for BIOS-based disk - boot. - -2009-12-21 Robert Millan - - * util/mkisofs/mkisofs.c (use_embedded_boot, boot_image_embed): New - variables. - (ld_options, main): Recognize `--embedded-boot'. - * util/mkisofs/mkisofs.h (use_embedded_boot, boot_image_embed): New - declarations. - * util/mkisofs/write.c (PADBLOCK_SIZE): New variable. - (padblock_size): Use `PADBLOCK_SIZE' instead of hardcoding 16. - (padblock_write): Likewise. Rewrite to support embedded boot image. - - * util/grub-mkrescue.in: When building i386-pc images, embed core.img - for BIOS-based disk boot instead of only ElTorito. - -2009-12-21 Robert Millan - - * util/grub-mkrescue.in: Remove `configfile' and `sh' from i386-pc - build (not needed for bootstrap). - -2009-12-21 Robert Millan - - * util/grub-mkrescue.in: Remove `memdisk', `tar' and `search' modules - from i386-pc build (not needed for bootstrap). - Rewrite a pair of strings. - -2009-12-21 Robert Millan - - * normal/main.c (grub_normal_reader_init): Set left margin back to 3. - -2009-12-21 Vladimir Serbinenko - - * video/i386/pc/vbe.c (grub_video_vbe_fini): Set 'last_set_mode'. - -2009-12-21 Andreas Born - - * kern/env.c (grub_env_context_open): Mark exported variable for - reexport. - -2009-12-21 Andreas Born - - * kern/env.c (grub_env_export): Create nonexistent variables before - exporting. - -2009-12-20 Carles Pina i Estany - - * include/grub/auth.h: Include `'. - (GRUB_GET_PASSWORD): Gettextizze string. - * include/grub/normal.h (STANDARD_MARGIN): New macro, moved from - menu_text.c. - (grub_utf8_to_ucs4_alloc): Fix indentation. - (grub_print_ucs4): Likewise. - (grub_getstringwidth): Likewise. - (print_message_indented): New declaration. - * normal/auth.c: Include `'. - (grub_auth_check_authentication): Gettexttize string. - * normal/cmdline.c: Include `'. - (grub_cmdline_get): Gettextizze. - * normal/color.c: Include `'. - (grub_parse_color_name_pair): Gettexttize strings. - * normal/main.c (grub_normal_reader_init): Cleanup gettexttized - string (use `print_message_indented'). - * normal/menu_text.c (STANDARD_MARGIN): Moved from here to - `include/grub/normal.h'. - (print_message_indented): Renamed to ... - (grub_print_message_indented): ... this. Remove `static' qualifer (now - used in normal/main.c). - (print_message): Use `grub_print_message_indented' instead of - `print_message_indented'. - (print_timeout): Likewise. - * normal/misc.c: Include `' and `'. - (grub_normal_print_device_info): Gettexttize strings. - * po/POTFILES: Add `auth.c', `color.c' and `misc.c'. - -2009-12-20 Vladimir Serbinenko - - * kern/parser.c (grub_parser_split_cmdline): Fix incorrect counting - of arguments. Return number of tokens and not arguments. All users - updated. - -2009-12-20 Vladimir Serbinenko - - * util/i386/pc/grub-setup.c (setup): Don't install on non-GPT, - non-MSDOS paritions. - -2009-12-19 Vladimir Serbinenko - - * include/grub/types.h (UNUSED): Removed since it conflicts with - NetBSD headers. All users changed to direct __attribute__ ((unused)). - Reported by Grégoire Sutre. - -2009-12-19 Carles Pina i Estany - - * include/grub/normal.h (grub_utf8_to_ucs4): New declaration. - (grub_print_ucs4_alloc): Likewise. - (grub_getstringwidth): Likewise. - * normal/main.c (grub_normal_init_page): Gettextize version string. - * normal/menu_text.c (grub_utf8_to_ucs4_alloc): New definition. - (getstringwidth): Renamed to ... - (grub_getstringwidth): ... this. Remove `static' qualifier (now used - in normal/main.c). Use `grub_utf8_to_ucs4_alloc'. - (grub_print_ucs4): Remove `static' qualifer (now used in - normal/main.c). - * po/POTFILES: Add normal/main.c. - -2009-12-19 Carles Pina i Estany - - * normal/menu_text.c (STANDARD_MARGIN): New macro. - (print_message_indented): Add `margin_left' and `margin_right' - parameters. - (print_message): Update `print_message_indented' calls. Adds '\n' to the - strings. - (print_timeout): Use `print_message_indented' to print the message. - Deletes `second_stage' parameter. - (run_menu): Update `print_timeout' calls. - -2009-12-18 Vladimir Serbinenko - - Fix console palette on OpenFirmware. - - * term/ieee1275/ofconsole.c (MAX): Removed. - (colors): Redone based on VGA palette. - (grub_ofconsole_setcolor): Discard brightness bit since only 8 - colors are supported. - (grub_ofconsole_init_output): Use ARRAY_SIZE instead of hardcoded size. - -2009-12-18 Vladimir Serbinenko - - Fix potential EfiEmu double prepare. - - * efiemu/main.c (prepared): New variable - (grub_efiemu_unload): Set prepare to '0'. - (grub_efiemu_prepare): Return if already prepared. Set prepared. - - set_virtual_address_map support. - - * include/grub/efi/efi.h (grub_efi_set_virtual_address_map): New - prototype. - * include/grub/efiemu/efiemu.h (grub_efiemu_write_sym_markers): New - prototype. - (grub_efiemu_crc32): Likewise. - (grub_efiemu_crc64): Likewise. - (grub_efiemu_set_virtual_address_map): Likewise. - * include/grub/autoefi.h (grub_autoefi_exit_boot_services): - New definition. - (grub_autoefi_set_virtual_address_map): Likewise. - * kern/efi/efi.c (grub_efi_set_virtual_address_map): New function. - * loader/i386/xnu.c (grub_xnu_boot): Call set_virtual_address_map. - Restructure flow to accomodate it. - * efiemu/prepare.c (grub_efiemu_prepare): Support set_virtual_address_map. - (grub_efiemu_crc): Recompute CRC32. - * efiemu/runtime/efiemu.c (ptv_relocated): Renamed to ... - (efiemu_ptv_relocated): ... this. Made global. All users updated. - * efiemu/symbols.c (relocated_handle): New variable. - (grub_efiemu_free_syms): Free relocated_handle. - (grub_efiemu_alloc_syms): Allocate relocated_handle. - (grub_efiemu_write_sym_markers): New function. - (grub_efiemu_set_virtual_address_map): Likewise. - - Newer XNU parameters. - - * include/grub/i386/xnu.h (GRUB_XNU_BOOTARGS_VERMINOR): Change to 5. - * include/grub/xnu.h (grub_xnu_extheader): Add nameaddr and namesize. - (grub_xnu_fill_devicetree): New prototype. - (grub_xnu_heap_real_start): New variable. - * loader/xnu.c (get_name_ptr): New function. - (grub_xnu_load_driver): Fill namelen and name. - - 64-bit xnu support. - - * conf/i386-efi.rmk (xnu_mod_SOURCES): Add 'loader/macho32.c' - and 'loader/macho64.c'. - * conf/i386-pc.rmk: Likewise. - * conf/x86_64-efi.rmk: Likewise. - * include/grub/i386/macho.h (grub_macho_thread64): New structure. - * include/grub/xnu.h (grub_xnu_is_64bit): New variable. - * include/grub/macho.h (grub_macho_segment64): New structure. - * include/grub/machoload.h (grub_macho32_size): Renamed from ... - (grub_macho_size32): ... to this. - (grub_macho32_get_entry_point): Renamed from ... - (grub_macho_get_entry_point32): ... to this. - (grub_macho_contains_macho64): New prototype. - (grub_macho_size64): Likewise. - (grub_macho_get_entry_point64): Likewise. - (grub_macho32_load): Renamed from ... - (grub_macho_load32): ... to this. - (grub_macho32_filesize): Renamed from ... - (grub_macho_filesize32): ... to this. - (grub_macho32_readfile): Renamed from ... - (grub_macho_readfile32): ... to this. - (grub_macho_filesize64): New prototype. - (grub_macho_readfile64): Likewise. - (grub_macho_parse32): Likewise. - (grub_macho_parse64): Likewise. - * loader/macho.c: Split into ... - * loader/machoXX.c: ... and this. Replace 32 with XX. - * loader/macho32.c: New file. - * loader/macho64.c: Likewise. - * loader/xnu.c (grub_xnu_is_64bit): New variable. - (grub_cmd_xnu_kernel): Make 32-bit only. - (grub_cmd_xnu_kernel64): New function. - (grub_xnu_load_driver): Support Mach-O 64. - (grub_cmd_xnu_mkext): Likewise. - * util/grub.d/30_os-prober.in (osx_entry): New function. - Generate entries for 64-bit boot too. - - Eliminate ad-hoc tree format in XNU and EfiEmu. - - * efiemu/main.c (grub_efiemu_prepare): Update comment. - * efiemu/pnvram.c: Rewritten to use environment variables. - All users updated. - - Inline utf16_to_utf8. - - * kern/misc.c (grub_utf16_to_utf8): Move from here ... - * include/grub/charset.h (grub_utf16_to_utf8): ... to here. Inlined. - All users updated. - * include/grub/misc.h (grub_utf16_to_utf8): Removed. - - * bus/usb/usb.c (grub_usb_get_string): Move from here ... - * commands/usbtest.c (grub_usb_get_string): ... move here. - (usb_print_str): Fix error handling. - * include/grub/usb.h (grub_usb_get_string): Remove. - - UTF-8 to UTF-16 transformation. - - * conf/common.rmk (pkglib_MODULES): Add charset.mod - (charset_mod_SOURCES): New variable. - (charset_mod_CFLAGS): Likewise. - (charset_mod_LDFLAGS): Likewise. - * include/grub/utf.h: New file. - * lib/utf.c: New file. (Based on grub_utf8_to_ucs4 from kern/misc.c) - - Support for device properties. - - * include/grub/i386/xnu.h (grub_xnu_devprop_header): New structure. - (grub_xnu_devprop_device_header): Likewise. - (grub_xnu_devprop_device_descriptor): Likewise. - (grub_xnu_devprop_add_device): New prototype. - (grub_xnu_devprop_remove_device): Likewise. - (grub_xnu_devprop_remove_property): Likewise. - (grub_xnu_devprop_add_property_utf8): Likewise. - (grub_xnu_devprop_add_property_utf16): Likewise. - (grub_cpu_xnu_init): Likewise. - (grub_cpu_xnu_fini): Likewise. - (grub_cpu_xnu_unload): Likewise. - * loader/i386/xnu.c (grub_xnu_devprop_device_descriptor): New structure. - (property_descriptor): Likewise. - (devices): New variable. - (grub_xnu_devprop_remove_property): New function. - (grub_xnu_devprop_add_device): Likewise. - (grub_xnu_devprop_remove_device): Likewise. - (grub_xnu_devprop_add_property): Likewise. - (grub_xnu_devprop_add_property_utf8): Likewise. - (grub_xnu_devprop_add_property_utf16): Likewise. - (hextoval): Likewise. - (grub_cpu_xnu_fill_devprop): Likewise. - (grub_cmd_devprop_load): Likewise. - (grub_xnu_boot): Call grub_cpu_xnu_fill_devprop, - grub_xnu_fill_devicetree, grub_xnu_fill_devicetree - (cmd_devprop_load): New variable. - (grub_cpu_xnu_init): New function. - (grub_cpu_xnu_fini): Likewise. - * loader/i386/xnu.c (grub_xnu_unload): Call grub_cpu_xnu_unload. - * loader/xnu.c (grub_xnu_parse_devtree): Remove. - (grub_cmd_xnu_devtree): Likewise. - (hextoval): New function. - (unescape): Likewise. - (grub_xnu_fill_devicetree): Likewise. - - * util/grub.d/30_os-prober.in: Load devprop.bin. Don't load devtree.txt. - * util/i386/efi/grub-dumpdevtree: Generate devprop.bin. - -2009-12-18 Vladimir Serbinenko - - Workaround for broken ATI VBE. - - * video/i386/pc/vbe.c (last_set_mode): New variable. - (grub_vbe_set_video_mode): Set 'last_set_mode'. - (grub_vbe_get_video_mode): Use 'last_set_mode' if get_mode fails. - (grub_video_vbe_setup): Don't check for reserved flag. - -2009-12-17 Felix Zielcke - - * gendistlist.sh: Use POSIX compliant `!' instead of `-not' in - the `find' command. - -2009-12-16 Vladimir Serbinenko - - UUID support for HFS. - - * fs/hfs.c (grub_hfs_uuid): New function. - (grub_hfs_fs): New value .uuid. - * include/grub/hfs.h (grub_hfs_sblock): New field 'num_serial'. - -2009-12-14 Felix Zielcke - - Fix a segfault with parsing unknown long options. - - * util/grub-mkrelpath.c (options): Zero terminate it. - -2009-12-13 Carles Pina i Estany - - * include/grub/misc.h (grub_puts): New declaration. - (grub_puts_): Likewise. - * kern/misc.c (grub_puts): New definition. - (grub_puts_): Likewise. - -2009-12-13 Robert Millan - - * util/grub-probe.c (probe): Improve error message. - -2009-12-13 Robert Millan - - * loader/i386/multiboot_elfxx.c - (CONCAT(grub_multiboot_load_elf, XX)): Fix `grub_multiboot_payload_eip' - initialization. - -2009-12-13 Vladimir Serbinenko - - Relocator framework - - * loader/i386/xnu_helper.S: Removed. All users updated. - * conf/i386.rmk (pkglib_MODULES): Add relocator.mod. - (relocator_mod_SOURCES): New variable. - (relocator_mod_CFLAGS): Likewise. - (relocator_mod_LDFLAGS): Likewise. - (relocator_mod_ASFLAGS): Likewise. - * conf/x86_64.rmk: Likewise. - * include/grub/i386/multiboot.h (grub_multiboot_payload_orig): Removed. - (grub_multiboot_payload_entry_offset): Likewise. - (grub_multiboot_forward_relocator): Likewise. - (grub_multiboot_forward_relocator_end): Likewise. - (grub_multiboot_backward_relocator): Likewise. - (grub_multiboot_backward_relocator_end): Likewise. - (grub_multiboot_payload_eip): New variable. - (grub_multiboot_payload_orig): Likewise. - * include/grub/i386/pc/memory.h: Include grub/i386/memory.h. - (GRUB_MEMORY_MACHINE_CR0_PE_ON): Move from here ... - * include/grub/i386/memory.h - (GRUB_MEMORY_CPU_CR0_PE_ON): ... to here - (GRUB_MEMORY_CPU_CR4_PAE_ON): New definition. - (GRUB_MEMORY_CPU_CR0_PAGING_ON): Likewise. - (GRUB_MEMORY_CPU_AMD64_MSR): Likewise. - (GRUB_MEMORY_CPU_AMD64_MSR_ON): Likewise. - * include/grub/i386/relocator.h: New file. - * include/grub/x86_64/relocator.h: Likewise. - * include/grub/i386/xnu.h: Include grub/cpu/relocator.h. - (XNU_RELOCATOR): New macro. - (grub_xnu_launcher_start): Remove. - (grub_xnu_launcher_end): Likewise. - * include/grub/xnu.h (grub_xnu_boot_resume): New prototype. - (grub_xnu_heap_real_start): Remove. - (grub_xnu_heap_start): Change to void *. All users updated. - * kern/i386/realmode.S (real_to_prot): Use GRUB_MEMORY_CPU_CR0_PE_ON. - * lib/i386/relocator.c: New file. - * lib/i386/relocator_asm.S: Likewise. - * lib/i386/relocator_backward.S: Likewise. - * lib/mips/relocator.c: Likewise. - * lib/mips/relocator_asm.S: Likewise. - * lib/relocator.c: Likewise. - * loader/i386/multiboot.c: Include grub/i386/relocator.h. - (entry): Removed. - (playground): Likewise. - (grub_multiboot_payload_orig): New variable. - (grub_multiboot_payload_dest): Likewise. - (grub_multiboot_payload_size): Likewise. - (grub_multiboot_payload_eip): Likewise. - (grub_multiboot_payload_esp): Likewise. - (grub_multiboot_boot): Use grub_relocator32_boot. - (grub_multiboot_unload): Free relocators. - (grub_multiboot): Setup stack. Use relocators. - * loader/i386/multiboot_elfxx.c: Include grub/i386/relocator.h. - (grub_multiboot_load_elfXX): Use relocators. - * loader/i386/multiboot_helper.S (grub_multiboot_payload_orig): Removed. - (grub_multiboot_payload_size): Likewise. - (grub_multiboot_payload_dest): Likewise. - (grub_multiboot_payload_entry_offset): Likewise. - (grub_multiboot_forward_relocator): Likewise. - (grub_multiboot_backward_relocator): Likewise. - (grub_multiboot_real_boot): Likewise. - * loader/i386/xnu.c (grub_xnu_heap_will_be_at): New variable. - (grub_xnu_entry_point): Likewise. - (grub_xnu_arg1): Likewise. - (grub_xnu_stack): Likewise. - (grub_xnu_launch): Removed. - (grub_xnu_boot_resume): New function. - (grub_xnu_boot): Use relocators. - * loader/i386/xnu_helper.S: Removed. - * loader/xnu.c (grub_xnu_heap_start): New variable. - (grub_xnu_heap_size): Likewise. - (grub_xnu_heap_malloc): Use relocators. - * loader/xnu_resume.c (grub_xnu_resume): Use relocators. - -2009-12-13 Vladimir Serbinenko - - * kern/i386/pc/startup.S (multiboot_entry): Setup stack before calling - anything. - -2009-12-13 Carles Pina i Estany - - * script/execute.c (grub_script_execute_cmdline): Set grub_errno to - GRUB_ERR_NONE before calling grub_env_set. - -2009-12-12 Robert Millan - - * gendistlist.sh (EXTRA_DISTFILES): Add `genvideolist.sh'. - * genmk.rb (video): New variable. - (CLEANFILES, VIDEOFILES): Add #{video}. - (#{video}): New target rule. - * genvideolist.sh: New file. - * Makefile.in (pkglib_DATA): Add video.lst. - (video.lst): New target rule. - * util/grub-mkconfig.in: Initialize ${GRUB_VIDEO_BACKEND} using - `video.lst'. - * util/grub.d/30_os-prober.in: Replace `vbe' with - ${GRUB_VIDEO_BACKEND}. - -2009-12-11 Robert Millan - - * THANKS: Add David Miller. - -2009-12-11 Vladimir Serbinenko - - libpciaccess support. - - * Makefile.in (LIBPCIACCESS): New variable. - (enable_grub_emu_pci): Likewise. - * conf/any-emu.rmk (grub_emu_SOURCES) [enable_grub_emu_pci]: Add - util/pci.c and commands/lspci.c. - (grub_emu_LDFLAGS) [enable_grub_emu_pci]: Add $(LIBPCIACCESS). - * configure.ac (grub-emu-pci): New option. - * include/grub/i386/pci.h (grub_pci_device_map_range): New function. - (grub_pci_device_unmap_range): Likewise. - * include/grub/pci.h [GRUB_UTIL]: Include grub/pciutils.h. - (grub_pci_device) [!GRUB_UTIL]: New structure. All users updated. - (grub_pci_address_t) [!GRUB_UTIL]: New type. - (grub_pci_device_t) [!GRUB_UTIL]: Likewise. - (grub_pci_get_bus) [!GRUB_UTIL]: New function. - (grub_pci_get_device) [!GRUB_UTIL]: Likewise. - (grub_pci_get_function) [!GRUB_UTIL]: Likewise. - * include/grub/pciutils.h: New file. - * util/pci.c: Likewise. - -2009-12-11 Felix Zielcke - - * util/misc.c: Don't include twice. - -2009-12-10 Felix Zielcke - - * disk/i386/pc/biosdisk.c (grub_biosdisk_open): Show the disk - name in an error message. - (grub_biosdisk_rw): Likewise. - -2009-12-10 Vladimir Serbinenko - - Eliminate NTFS 4Gib barrier. - - * fs/ntfs.c (read_attr): Use grub_disk_addr_t and grub_size_t. - (read_run_data): Likewise. - (grub_ntfs_read_run_list): Likewise. - (grub_ntfs_read_block): Likewise. - (grub_ntfs_iterate_dir): Likewise. - (read_mft): Likewise. - (read_data): Likewise. - Use COM_LOG_LEN. - * fs/ntfscomp.c (read_block): Cast ctx->target_vcn & 0xF to unsigned - to avoid 64-bit division - * include/grub/ntfs.h (COM_LOG_LEN): New definition. - (grub_ntfs_rlst): Use grub_disk_addr_t. - -2009-12-10 Vladimir Serbinenko - - Eliminate grub-fstest 4Gib barrier. - - * util/grub-fstest.c (skip, leng): Use grub_disk_addr_t. - (read_file): Fix error reporting. - -2009-12-10 Vladimir Serbinenko - - Eliminate hexdump 4Gib barrier. - - * commands/hexdump.c (grub_cmd_hexdump): Use grub_disk_addr_t. - * lib/arg.c (grub_arg_parse): Use grub_strtoull. - -2009-12-10 Vladimir Serbinenko - - * kern/device.c (grub_device_iterate): Ignore errors during first scan. - Fixes amarsh bug. - -2009-12-09 Bruce Dubbs - - Remove miscellaneous files in distclean target. - - * Makefile.in: Remove docs/{grub.info,version.texi,stamp-vti} - -2009-12-09 Colin Watson - - * util/grub-mkconfig_lib.in: Don't set grub_probe or grub_mkrelpath - if they're already set. This resolves the conflict between my - grub-install change on 2009-10-06 and Felix' change on 2009-11-11, - fixing the --grub-probe option again. - * util/sparc64/ieee1275/grub-install.in: Revert the last piece of my - change on 2009-10-06, so that we now once again source - `${libdir}/grub/grub-mkconfig_lib' after options have been parsed. - -2009-12-08 Robert Millan - - * conf/common.rmk [sparc64-ieee1275] (grub_mkdevicemap_SOURCES): Use - `util/ieee1275/ofpath.c' and `util/ieee1275/devicemap.c' instead of - `util/devicemap.c'. - -2009-12-08 Carles Pina i Estany - - * include/grub/misc.h (grub_printf_): New declaration. - * kern/misc.c (grub_printf_): New definition. - * normal/main.c (grub_normal_reader_init): Use `grub_printf_' and `N_' - instead of `grub_printf' and `_'. - * normal/menu_entry.c (store_completion): Likewise. - (run): Likewise. - (grub_menu_entry_run): Likewise. - * normal/menu_text.c (grub_wait_after_message): Likewise. - (notify_booting): Likewise. - (notify_fallback): Likewise. - (notify_execution_failure): Likewise. - -2009-12-07 Colin Watson - - * configure.ac: Check for vasprintf. - * util/misc.c (asprintf): Move allocation from here ... - (vasprintf): ... to here. New function. - (xasprintf): New function. - * include/grub/util/misc.h (vasprintf, xasprintf): Add - prototypes. - * util/getroot.c (grub_util_get_grub_dev): Use xasprintf. - * util/grub-mkfont.c (write_font): Likewise. - * util/grub-probe.c (probe): Likewise. - * util/hostdisk.c (make_device_name): Likewise. - -2009-12-06 David S. Miller - - * disk/ieee1275/ofdisk.c (grub_ofdisk_iterate): Recognize - anything even prefixed with 'cdrom' as a cdrom. - -2009-12-06 Felix Zielcke - - * util/misc.c (make_system_path_relative_to_its_root): Correctly cope with - mount points. - -2009-12-05 Carles Pina i Estany - - * gettext/gettext.c: Include `'. Define grub_gettext_msg, - grub_gettext_msg_list. - (grub_gettext_gettranslation_from_position): Return const char * - and not char *. - (grub_gettext_translate): Add the translated strings into a list, - returns from the list if existing there. - (grub_gettext_init_ext): Add \n at the end of grub_dprintf string. - (grub_gettext_delete_list): Delete the list. - (grub_gettext_env_write_lang): Call grub_gettext_delete_list when - lang environment variable is changed. - (GRUB_MOD_FINI): Call grub_gettext_delete_list. - -2009-12-05 Vladimir Serbinenko - - Rename kernel.mod to kernel.img. - - * conf/i386-efi.rmk (pkglib_MODULES): Change kernel.mod to kernel.img. - (kernel_mod_EXPORTS): Rename to ... - (kernel_img_EXPORTS): ... this. - (kernel_mod_SOURCES): Rename to ... - (kernel_img_SOURCES): ... this. - (kernel_mod_HEADERS): Rename to ... - (kernel_img_HEADERS): ... this. All users updated. - (kernel_mod_CFLAGS): Rename to ... - (kernel_img_CFLAGS): ... this. - (kernel_mod_ASFLAGS): Rename to ... - (kernel_img_ASFLAGS): ... this. - (kernel_mod_LDFLAGS): Rename to ... - (kernel_img_LDFLAGS): ... this. - * conf/x86_64-efi.rmk: Likewise. - * util/i386/efi/grub-mkimage.c (read_kernel_module): Rename to ... - (read_kernel_image): ... this. All users updated. - (read_kernel_image): Read "kernel.img" instead of "kernel.mod". - -2009-12-05 Carles Pina i Estany - - * normal/menu_text.c (grub_color_menu_high): Gettexttize string. - (print_spaces): New function. - (grub_print_ucs4): New function. - (getstringwidth): New function. - (print_message_indented): New function. - (print_message): Gettexttize strings using print_message_indented. - (run_menu): Replaces grub_printf by print_spaces and dynamic terminal - width. - (get_entry_number): Gettextize and uses dynamic terminal width. - (notify_booting, notify_fallback, notify_execution_failure): - Gettextize. - * normal/menu_entry.c (store_completion): Cleanup the gettextized - string. - (run): Likewise. - (grub_menu_entry_run): Likewise. - * PO/POTFILES: Add normal/menu_entry.c. - -2009-12-05 Vladimir Serbinenko - - * configure.ac (TARGET_ASFLAGS): Add "-D". - -2009-12-05 Carles Pina i Estany - - * util/grub-install.in: Install gettext .mo files. - * util/grub-mkrescue.in (process_input_dir): Copy gettext .mo files. - -2009-12-05 Carles Pina i Estany - - * gettext/gettext.c (grub_gettext_init_ext): Replace grub_printf with - grub_dprintf. - -2009-12-05 Robert Millan - - * kern/ieee1275/openfw.c (grub_reboot): Disable for i386. The - non-firmware-dependant one in realmode.S takes precedence. - -2009-12-04 Robert Millan - - * commands/halt.c: Replace misc arch-specific headers with - `'. - * commands/reboot.c: Likewise. - * commands/i386/pc/halt.c: Replace `' with - `'. - * conf/i386-coreboot.rmk (kernel_img_HEADERS): Remove `cpu/reboot.h'. - (halt_mod_SOURCES): Move `kern/i386/halt.c' from here ... - (kernel_img_SOURCES): ... to here. - - * include/grub/efi/efi.h (grub_reboot, grub_halt): Remove prototypes. - * include/grub/i386/pc/init.h: Likewise. - * include/grub/powerpc/ieee1275/kernel.h: Likewise. - * include/grub/sparc64/ieee1275/kernel.h: Likewise. - - * include/grub/misc.h (grub_reboot, grub_halt): New prototypes. - - * include/grub/i386/halt.h: Remove. - * include/grub/i386/reboot.h: Likewise. - - * kern/i386/halt.c: Remove `'. - -2009-12-03 David S. Miller - - * conf/sparc64-ieee1275.rmk (grub_mkimage_SOURCES, - grub_setup_SOURCES, grub_ofpathname_SOURCES): Add gnulib/progname.c - * util/sparc64/ieee1275/grub-mkimage.c: Include and - "progname.h" - * util/sparc64/ieee1275/grub-ofpathname.c: Likewise. - * util/sparc64/ieee1275/grub-setup.c: Likewise. - (usage): Add missing comma in printf. - -2009-12-02 Robert Millan - - Use the same reboot approach on i386 coreboot and qemu as we do on - BIOS. - - * conf/i386-coreboot.rmk (kernel_img_HEADERS): Add `cpu/reboot.h'. - (reboot_mod_SOURCES): Remove `kern/i386/reboot.c'. - * kern/i386/reboot.c: Remove. - * include/grub/i386/reboot.h (grub_reboot): Export function. - * kern/i386/pc/startup.S (grub_reboot): Move from here ... - * kern/i386/realmode.S (grub_reboot): ... to here. Jump to - 0xf000:0xfff0 instead of 0xffff:0x0000. - [!GRUB_MACHINE_PCBIOS] (prot_to_real): Do not restore interrupts. - * kern/i386/qemu/startup.S: Include `"../realmode.S"'. - -2009-11-30 Robert Millan - - Fix $srcdir != $objdir build. - - * Makefile.in (po/%.po): Rewrite as ... - ($(foreach lang, $(LINGUAS), $(srcdir)/po/$(lang).po)): ... this. - -2009-11-29 Samuel Thibault - - Fix GNU/Hurd grub-install crash. - * util/grub-probe.c (probe): Try to access `path' only when it is not - NULL. - -2009-11-28 Vladimir Serbinenko - - Correct module naming. - - * video/efi_uga.c (GRUB_MOD_INIT(efi_fb)): Renamed from this ... - (GRUB_MOD_INIT(efi_uga)): ... to this - (GRUB_MOD_FINI(efi_fb)): Renamed from this ... - (GRUB_MOD_FINI(efi_uga)): ... to this - * video/efi_gop.c (GRUB_MOD_INIT(efi_fb)): Renamed from this ... - (GRUB_MOD_INIT(efi_gop)): ... to this - (GRUB_MOD_FINI(efi_fb)): Renamed from this ... - (GRUB_MOD_FINI(efi_gop)): ... to this - -2009-11-28 Robert Millan - - * util/mkisofs/mkisofs.c (ld_options): Mark all `arg' strings as - translatable. - (usage): Translate `arg' strings using gettext(). - Thanks to Jordi Mallach for the suggestion. - -2009-11-28 Vladimir Serbinenko - - GOP support. Based on patch from Bean - (http://lists.gnu.org/archive/html/grub-devel/2009-08/msg00384.html) - - * video/efi_gop.c: New file. - * include/grub/efi/graphics_output.h: Likewise. - * conf/i386-efi.rmk (pkglib_MODULES): Add `efi_gop.mod'. - (efi_fb_mod_SOURCES, efi_fb_mod_CFLAGS, efi_fb_mod_LDFLAGS): New - variables. - * conf/x86_64-efi.rmk: Likewise. - -2009-11-28 Vladimir Serbinenko - - Rename efi_fb to efi_uga. - - * conf/i386-efi.rmk (pkglib_MODULES): Rename 'efi_fb.mod' to - 'efi_uga.mod'. - (efi_fb_mod_SOURCES): Rename this ... - (efi_uga_mod_SOURCES): ... to this. - (efi_fb_mod_CFLAGS): Rename this ... - (efi_uga_mod_CFLAGS): ... to this. - (efi_fb_mod_LDFLAGS): Rename this ... - (efi_uga_mod_LDFLAGS): ... to this. - * conf/x86_64-efi.rmk (pkglib_MODULES): Rename 'efi_fb.mod' to - 'efi_uga.mod'. - (efi_fb_mod_SOURCES): Rename this ... - (efi_uga_mod_SOURCES): ... to this. - (efi_fb_mod_CFLAGS): Rename this ... - (efi_uga_mod_CFLAGS): ... to this. - (efi_fb_mod_LDFLAGS): Rename this ... - (efi_uga_mod_LDFLAGS): ... to this. - * video/efi_fb.c: Move this ... - * video/efi_uga.c: ... to this. Change prefix to 'grub_video_uga_'. - -2009-11-27 Robert Millan - - * po/README: New file. Explain our PO file workflow. - -2009-11-27 Robert Millan - - * po/ChangeLog: Remove. Move relevant entries back to ... - * ChangeLog: ... here. - * po/ca.po: Remove (now handled by TLP). - * po/id.po: Likewise. - * po/zh_CN.po: Likewise. - * Makefile.in (LINGUAS): Initialize in a way that supports - empty set. - -2009-11-27 Robert Millan - - * Makefile.in (LINGUAS): Rewrite by scanning po/ directory instead of - reliing on po/LINGUAS. - ($(foreach lang, $(LINGUAS), $(srcdir)/po/$(lang).po)): Rewrite as ... - (po/%.po): ... this. - -2009-11-26 Felix Zielcke - - * util/i386/efi/grub-mkimage.c: Include "progname.h". - (main): Use `program_name' instead of nonexistent `progname'. - -2009-11-26 Felix Zielcke - - * conf/i386-efi.rmk (grub_mkimage_SOURCES): Add `gnulib/progname.c'. - * conf/x86_64-efi.rmk (grub_mkimage_SOURCES): Likewise. - -2009-11-26 Robert Millan - - * conf/i386-coreboot.rmk: Cleanup stale filenames from my previous - commit. - * conf/i386-efi.rmk: Likewise. - * conf/i386-ieee1275.rmk: Likewise. - * conf/powerpc-ieee1275.rmk: Likewise. - * conf/sparc64-ieee1275.rmk: Likewise. - * conf/x86_64-efi.rmk: Likewise. - -2009-11-26 Felix Zielcke - - * conf/any-emu.rmk (grub_emu_SOURCES): Add `gnulib/progname.c'. - -2009-11-26 Felix Zielcke - - * conf/any-emu.rmk (grub_mkfont_SOURCES): Add `gnulib/progname.c'. - -2009-11-26 Robert Millan - - * conf/common.rmk (sbin_UTILITIES): Add `grub-mkdevicemap'. - (grub_mkdevicemap_SOURCES): New variable. - (grub_probe_SOURCES, grub_fstest_SOURCES, grub_mkfont_SOURCES) - (grub_mkrelpath_SOURCES, grub_editenv_SOURCES) - (grub_pe2elf_SOURCES): Add `gnulib/progname.c'. - * conf/i386-coreboot.rmk (sbin_UTILITIES): Remove `grub-mkdevicemap'. - (grub_mkdevicemap_SOURCES): Remove. - * conf/i386-efi.rmk: Likewise. - * conf/i386-ieee1275.rmk: Likewise. - * conf/i386-pc.rmk: Likewise. - * conf/powerpc-ieee1275.rmk: Likewise. - * conf/sparc64-ieee1275.rmk: Likewise. - * conf/x86_64-efi.rmk: Likewise. - * util/elf/grub-mkimage.c: Include `' and `"progname.h"'. - (usage): Fix strings to use `program_name'. - (main): Initialize gettext. - * util/grub-editenv.c: Likewise. - * util/grub-emu.c: Likewise. - * util/grub-fstest.c: Likewise. - * util/grub-mkdevicemap.c: Likewise. - * util/grub-mkfont.c: Likewise. - * util/grub-mkrelpath.c: Likewise. - * util/grub-pe2elf.c: Likewise. - * util/grub-probe.c: Likewise. - * util/sparc64/ieee1275/grub-mkimage.c: Likewise. - * util/sparc64/ieee1275/grub-ofpathname.c: Likewise. - * util/sparc64/ieee1275/grub-setup.c: Likewise. - - * util/misc.c: Include `"progname.h"'. - (progname): Remove variable. - (grub_util_warn, grub_util_info, grub_util_error): Use `program_name'. - -2009-11-25 Felix Zielcke - - * util/grub.d/10_linux.in (linux_entry): Quote the arguments to - printf and print a newline after the menuentry header line. - * util/grub.d/10_kfreebsd.in (kfreebsd_entry): Likewise. - -2009-11-25 Felix Zielcke - - autoconf >= 2.60 support $(localedir). - - * INSTALL: Note that autoconf 2.60 is required. - * configure.ac (AC_PREREQ): Bump to 2.60. - * util/grub.d/10_kfreebsd.in (TEXTDOMAINDIR): Set to lowercased @localedir@. - * util/grub.d/10_linux.in (TEXTDOMAINDIR): Likewise. - -2009-11-25 Yves Blusseau - - * configure.ac: move the call to AM_GNU_GETTEXT to avoid warnings when - aclocal is run. - -2009-11-25 Robert Millan - - * normal/main.c (grub_normal_read_line): Fix off-by-one - buffer overflow. - -2009-11-25 Robert Millan - - * normal/main.c (grub_normal_execute): Replace "parser.sh" with - "parser.grub" in grub_command_execute() call. - -2009-11-24 Carles Pina i Estany - - * conf/i386-coreboot.rmk (kernel_img_HEADERS): Add i18n.h. - * conf/i386-efi.rmk: Likewise. - * conf/i386-ieee1275.rmk: Likewise. - * conf/i386-pc.rmk: Likewise. - * conf/powerpc-ieee1275.rmk: Likewise. - * conf/sparc64-ieee1275.rmk: Likewise. - * conf/x86_64-efi.rmk: Likewise. - * gettext/gettex.c: Include . - * include/grub/misc.h (grub_gettext_dummy, grub_gettext): Move from - here ... - * include/grub/i18n.h: ... to here - * include/grub/i18n.h: ... to here. - * kern/misc.c: Include - (grub_gettext_dummy): Move above user. - -2009-11-24 Felix Zielcke - - * util/Makefile.in (install-local): Convert a `for' into a normal - shell expansion. - -2009-11-24 Robert Millan - - * autogen.sh: Add automake call. - * config.guess: Remove. - * config.sub: Likewise. - * install-sh: Likewise. - -2009-11-24 Felix Zielcke - - * util/Makefile.in (install-local): Fix the use of $lang shell variable. - -2009-11-24 Felix Zielcke - - * util/Makefile.in (install-local): Convert a make `$(foreach)' - function to a normal shell `for'. - -2009-11-24 Felix Zielcke - - * conf/i386-coreboot.rmk (grub_mkimage_SOURCES): Add `gnulib/progname.c'. - -2009-11-24 Felix Zielcke - - * util/grub-mkrelpath.c: New file. - * conf/common.rmk (bin_UTILITIES): Add grub-mkrelpath. - (grub_mkrelpath_SOURCES): New variable. - * include/grub/util/misc.h: New function prototype. - * util/misc.c (make_system_path_relative_to_its_root): New function. - - * util/grub-mkconfig_lib.in (bindir): New variable. - (grub_mkrelpath): Likewise. - (make_system_path_relative_to_its_root): Use grub-mkrelpath. - - * util/probe.c (probe): Make the file path relative to its root. - Change a info message to use the GRUB path. Enable again the - check if we can read the file with GRUB facilities. - - * util/i386/pc/grub-setup.c (setup): Make core.img path relative - to its root. - -2009-11-24 Felix Zielcke - - * Makefile.in: Don't include GRUB_CONTRIB makefiles with emu - platform. - -2009-11-24 Felix Zielcke - - * util/getroot.c (grub_util_get_dev_abstraction): Properly use - strncmp(). - -2009-11-24 Felix Zielcke - - * 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-23 Carles Pina i Estany - - * conf/common.rmk: Add grub-gettext_lib target and updates - lib_DATA and CLEANFILES. Adds gettext.mod SOURCES, CFLAGS, - LDFLAGS. - * gettext/gettext.c: New file. (Reads mo files). - * include/grub/file.h (grub_file_pread): New prototype. - * include/grub/i18n.h (_): New prototype. - * include/grub/misc.h (grub_gettext_dummy, grub_gettext): New - prototypes. - * kern/misc.c (grub_gettext_dummy): New function. - * normal/menu_text.c: Include . - * normal/menu_text.c (print_timeout): Gettexttize string. - * normal/menu_text.c (print_message): Gettexttize string. - * po/POTFILES: Add `normal/menu_text.c'. - * po/ca.po: Add new translations. - * util/grub.d/00_header.in: Define locale_dir and lang. insmod - gettext module and defines locale_dir and lang in grub.cfg. - * NEWS: Add gettext support. - -2009-11-23 Robert Millan - - * util/hostdisk.c: Include `'. - (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 Robert Millan - - * script/sh/execute.c: Move from here ... - * script/execute.c: ... to here. Update all users. - * script/sh/function.c: Move from here ... - * script/function.c: ... to here. Update all users. - * script/sh/lexer.c: Move from here ... - * script/lexer.c: ... to here. Update all users. - * script/sh/main.c: Move from here ... - * script/main.c: ... to here. Update all users. - * script/sh/parser.y: Move from here ... - * script/parser.y: ... to here. Update all users. - * script/sh/script.c: Move from here ... - * script/script.c: ... to here. Update all users. - -2009-11-23 Robert Millan - - * 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 `'. - * 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_EMU] (GRUB_TICKS_PER_SECOND): New macro. - * util/misc.c: Remove `' and - `'. - - * 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 Robert Millan - - * include/grub/parser.h (grub_parser_register): Document need - of `name' parameter. - * normal/main.c (grub_normal_read_line): Simplify prompt string. - * script/sh/main.c (grub_sh_parser, GRUB_MOD_INIT(sh)): Rename - "sh" to "grub". - -2009-11-23 Robert Millan - - * 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 Robert Millan - - Based on patch from Bean - (http://lists.gnu.org/archive/html/grub-devel/2009-08/msg00384.html) - - * video/efi_fb.c: New file. - * conf/i386-efi.rmk (pkglib_MODULES): Add `efi_fb.mod'. - (efi_fb_mod_SOURCES, efi_fb_mod_CFLAGS, efi_fb_mod_LDFLAGS): New - variables. - * conf/x86_64-efi.rmk: Likewise. - -2009-11-22 Robert Millan - - * util/i386/pc/grub-mkimage.c: Ungettextize grub_util_info() strings. - * util/i386/pc/grub-setup.c: Likewise. - -2009-11-21 Samuel Thibault - - * util/getroot.c [__GNU__]: Include , , and - - [__GNU__] (grub_guess_root_device): Call file_name_lookup and - file_get_storage_info to implement grub_guess_root_device. - -2009-11-21 Felix Zielcke - - * Makefile.in (target): Use make's builtin $(shell) function - instead of calling directly $(SHELL) to create the locale directories, - inside the $(foreach) function. - -2009-11-21 Felix Zielcke - - * util/grub-mkrescue.in: Print an error and usage if output option - has not been given. - -2009-11-21 Felix Zielcke - - Patch from Loïc Minier . - * util/grub.d/30_os-prober.in: Cope with Linux entries where - root and /boot are on different devices. - -2009-11-21 Robert Millan - - Fix build for srcdir != objdir. - - * Makefile.in (po/$(PACKAGE).pot): Rename to ... - ($(srcdir)/po/$(PACKAGE).pot): ... this. Run $(XGETTEXT) from - $(srcdir). - ($(foreach lang, $(LINGUAS), po/$(lang).po)): Rename to ... - ($(foreach lang, $(LINGUAS), $(srcdir)/po/$(lang).po): ... this. Use $^ - reference for input. - -2009-11-21 Robert Millan - - * 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 Carles Pina i Estany -2009-11-21 Robert Millan - - * 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-20 Felix Zielcke - - * configure.ac (UNIFONT_BDF): Rename to ... - (FONT_SOURCE): ... this. Update all users. - -2009-11-20 Felix Zielcke - - * configure.ac: Add `/usr/share/fonts/X11/misc/unifont.pcf.gz' - to the list of unifont files to look for. - -2009-11-19 Robert Millan - - Patch from Joe Auricchio - * commands/minicmd.c (grub_mini_cmd_clear): New function. - (GRUB_MOD_INIT(minicmd)): Register grub_mini_cmd_clear(). - (GRUB_MOD_FINI(minicmd)): Unregister grub_mini_cmd_clear(). - -2009-11-19 Felix Zielcke - - * Makefile.in (install-local): Add a missing backslash. - -2009-11-19 Felix Zielcke - - * include/grub/x86_64/io.h: New file. - -2009-11-19 Robert Millan - - * conf/i386-pc.rmk (grub_setup_SOURCES): Add `gnulib/progname.c'. - * util/i386/pc/grub-setup.c: Include `'. - 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-19 Robert Millan - - * 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/mkisofs.h: Include `'. - Include `'. - (_): New macro. - - * util/mkisofs/eltorito.c: Gettexttize. - * util/mkisofs/joliet.c: Likewise. - * util/mkisofs/mkisofs.c: 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 Robert Millan - - * 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 Robert Millan - - * util/mkisofs/match.c: Rewrite from scratch, using a linked list - instead of static allocation. - * util/mkisofs/match.h: Likewise. - -2009-11-18 Robert Millan - - * po/POTFILES-shell: New file. List `util/grub.d/10_kfreebsd.in' - and `util/grub.d/10_linux.in'. - * Makefile.in (po/$(PACKAGE).pot): Process `po/POTFILES-shell' for - translatable Shell files. - -2009-11-18 Robert Millan - - * Makefile.in ($(srcdir)/aclocal.m4): New target. - -2009-11-17 Robert Millan - - * 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 Robert Millan - - * Makefile.in (XGETTEXT, MSGMERGE, MSGFMT): New variables. - (po/$(PACKAGE).pot): Replace `xgettext' with `$(XGETTEXT)'. - (po/*.po): Replace `msgmerge' with `$(MSGMERGE)'. - (po/%.mo): Replace `msgfmt' with `$(MSGFMT)'. - (LINGUAS): Auto-generate using `po/LINGUAS'. - * po/LINGUAS: New file. - -2009-11-17 Robert Millan - - * 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 Robert Millan - - * 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 Robert Millan - - * conf/common.rmk (grub_mkisofs_CFLAGS): Move `-I$(srcdir)/gnulib' - from here ... - * Makefile.in (CPPFLAGS): ... to here. - -2009-11-16 Robert Millan - - * aclocal.m4: Move from here ... - * acinclude.m4: ... to here. - * autogen.sh: Add call to `aclocal'. - * configure.ac: Add AM_INIT_AUTOMAKE() after AC_INIT() call. - -2009-11-16 Robert Millan - - * Makefile.in (CLEANFILES): Add `po/*.mo'. - (LINGUAS): New variable. - (all-local): Add `$(foreach lang, $(LINGUAS), po/$(lang).mo)'. - (install-local): Install MO files. - (po/$(PACKAGE).pot, po/*.po, po/%.mo): New rules. - * include/grub/i18n.h: New file. - * po/POTFILES: New file. - * po/ca.po: New file. - * util/grub.d/10_linux.in (bindir): New variable. - Add gettext initialization. - (linux_entry): Make menuentry output translatable. - * util/i386/pc/grub-mkimage.c: Include `'. - (usage): Make --help output translatable. - (main): Initialize gettext. - -2009-11-17 Robert Millan - - * import_gcry.py: New file (written by Vladimir with minor - adjustments). - * autogen.sh: Use import_gcry.py to auto-generate GRUB-ified - ciphers. - * INSTALL: Document that Python is required for bootstrap. - -2009-11-17 Robert Millan - - Import ciphers from libgcrypt 1.4.4. - - * lib/libgcrypt/cipher/ChangeLog - * lib/libgcrypt/cipher/ac.c - * lib/libgcrypt/cipher/arcfour.c - * lib/libgcrypt/cipher/bithelp.h - * lib/libgcrypt/cipher/blowfish.c - * lib/libgcrypt/cipher/camellia-glue.c - * lib/libgcrypt/cipher/camellia.c - * lib/libgcrypt/cipher/camellia.h - * lib/libgcrypt/cipher/cast5.c - * lib/libgcrypt/cipher/cipher.c - * lib/libgcrypt/cipher/crc.c - * lib/libgcrypt/cipher/des.c - * lib/libgcrypt/cipher/dsa.c - * lib/libgcrypt/cipher/ecc.c - * lib/libgcrypt/cipher/elgamal.c - * lib/libgcrypt/cipher/hash-common.c - * lib/libgcrypt/cipher/hash-common.h - * lib/libgcrypt/cipher/hmac-tests.c - * lib/libgcrypt/cipher/md.c - * lib/libgcrypt/cipher/md4.c - * lib/libgcrypt/cipher/md5.c - * lib/libgcrypt/cipher/primegen.c - * lib/libgcrypt/cipher/pubkey.c - * lib/libgcrypt/cipher/rfc2268.c - * lib/libgcrypt/cipher/rijndael-tables.h - * lib/libgcrypt/cipher/rijndael.c - * lib/libgcrypt/cipher/rmd.h - * lib/libgcrypt/cipher/rmd160.c - * lib/libgcrypt/cipher/rsa.c - * lib/libgcrypt/cipher/seed.c - * lib/libgcrypt/cipher/serpent.c - * lib/libgcrypt/cipher/sha1.c - * lib/libgcrypt/cipher/sha256.c - * lib/libgcrypt/cipher/sha512.c - * lib/libgcrypt/cipher/tiger.c - * lib/libgcrypt/cipher/twofish.c - * lib/libgcrypt/cipher/whirlpool.c - -2009-11-16 Robert Millan - - 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 Felix Zielcke - - * util/mkisofs/name.c (iso9660_file_length): Use isascii macro - instead of relying that char is signed. - -2009-11-16 Vladimir Serbinenko - - * fs/i386/pc/pxe.c (grub_pxefs_open): Correctly handle PXE choosing - blocksize different from specified. - (grub_pxefs_read): Likewise. - -2009-11-16 Felix Zielcke - - Enable ata.mod on x86_64-efi, i386-efi and i386-ieee1275. - - * disk/ata.c (grub_ata_dumpinfo): Add a cast. - (grub_ata_readwrite): Likewise. Update 2 format strings. - (grub_atapi_read): Likewise. - - * conf/i386-coreboot.rmk (pkglib_MODULES): Move `ata.mod' from here ... - * conf/i386.rmk (pkglib_MODULES): ... to here ... - * conf/x86_64-efi.rmk (pkglib_MODULES): ... and here. - * conf/i386-coreboot.rmk (ata_mod_SOURCES, ata_mod_CFLAGS) - (ata_mod_LDFLAGS): Move from here ... - * conf/i386.rmk: ... to here ... - * conf/x86_64-efi.rmk: ... and here. - * conf/i386-pc.rmk (pkglib_MODULES): Remove `ata.mod' - (ata_mod_SOURCES, ata_mod_CFLAGS, ata_mod_LDFLAGS): Remove. - -2009-11-16 Robert Millan - - Relicense multiboot.h, with RMS' blessing. - - * include/multiboot.h: Change to X11 license. - -2009-11-15 Robert Millan - - 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 Felix Zielcke - - * Makefile.in (TARGET_CPPFLAGS): Replace `-isystem=$(srcdir)/include' - with `-nostdinc -isystem $(shell $(TARGET_CC) -print-file-name=include)'. - -2009-11-14 Robert Millan - - Fix help2man generation for mkisofs. - - * util/mkisofs/mkisofs.c (ld_options): Recognize --help. - (usage): Send output to stdout (rather than stderr). - -2009-11-14 Robert Millan - - * 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-13 Robert Millan - - * include/grub/multiboot.h (struct grub_multiboot_header): Move - from here ... - * include/multiboot.h (struct multiboot_header): ... to here. Update - all users. - * include/grub/multiboot.h (struct grub_multiboot_info): Move - from here ... - * include/multiboot.h (struct multiboot_info): ... to here. Update - all users. - * include/grub/multiboot.h (struct grub_multiboot_mmap_entry): Move - from here ... - * include/multiboot.h (struct multiboot_mmap_entry): ... to here. - Update all users. - * include/grub/multiboot.h (struct grub_mod_list): Move - from here ... - * include/multiboot.h (struct multiboot_mod_list): ... to here. - Update all users. - -2009-11-13 Robert Millan - - * include/multiboot2.h (multiboot_word): Rename from this ... - (multiboot2_word): ... to this. Update all users. - (multiboot_header): Rename from this ... - (multiboot2_header): ... to this. Update all users. - (multiboot_tag_header): Rename from this ... - (multiboot2_tag_header): ... to this. Update all users. - (multiboot_tag_start): Rename from this ... - (multiboot2_tag_start): ... to this. Update all users. - (multiboot_tag_name): Rename from this ... - (multiboot2_tag_name): ... to this. Update all users. - (multiboot_tag_module): Rename from this ... - (multiboot2_tag_module): ... to this. Update all users. - (multiboot_tag_memory): Rename from this ... - (multiboot2_tag_memory): ... to this. Update all users. - (multiboot_tag_unused): Rename from this ... - (multiboot2_tag_unused): ... to this. Update all users. - (multiboot_tag_end): Rename from this ... - (multiboot2_tag_end): ... to this. Update all users. - -2009-11-13 Robert Millan - - Disable Multiboot2 in i386-ieee1275. It didn't actually work, and on - this platform we should support Multiboot1 first. - - * conf/i386-ieee1275.rmk (pkglib_MODULES): Remove `multiboot.mod'. - (multiboot_mod_SOURCES, multiboot_mod_CFLAGS) - (multiboot_mod_LDFLAGS, multiboot_mod_ASFLAGS): Remove. - -2009-11-12 Robert Millan - - * 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 Robert Millan - - * util/i386/pc/grub-install.in: Move from here ... - * util/grub-install.in: ... to here. Update all users. - -2009-11-11 Colin Watson - - * util/powerpc/ieee1275/grub-mkrescue.in: Fix --version output. - -2009-11-11 Robert Millan - - Support for El Torito without floppy emulation. - - * util/mkisofs/eltorito.c: Include `'. - (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 Felix Zielcke - - 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 Robert Millan - - 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 `'. - (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-09 Felix Zielcke - - * util/mkisofs/mkisofs.c (ld_options): Fix a spelling mistake. - -2009-11-09 Robert Millan - - * 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 `'. Replace all - instances of `u_char' with `uint8_t'. - - * util/mkisofs/mkisofs.h: Include `'. - [!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 Robert Millan - - * gnulib/fnmatch_loop.c (EXT): Fix warning (signed and unsigned type in - conditional expression). - -2009-11-09 Robert Millan - - Import from Gnulib. - - * gnulib/fnmatch.c: New file. - * gnulib/fnmatch.h: Likewise. - * gnulib/fnmatch_loop.c: Likewise. - * gnulib/getopt.c: Likewise. - * gnulib/getopt.h: Likewise. - * gnulib/getopt1.c: Likewise. - * gnulib/getopt_int.h: Likewise. - * gnulib/gettext.h: Likewise. - -2009-11-09 Robert Millan - - * normal/dyncmd.c (read_command_list): Replace `0' with `NULL'. - * normal/handler.c (read_handler_list): Likewise. - -2009-11-09 Robert Millan - - Misc cleanup. - - * kern/command.c (grub_register_command_prio): Use - grub_zalloc() instead of explicitly zeroing data. - * kern/list.c: Include `'. - (grub_named_list_find): Replace `0' with `NULL'. - * normal/autofs.c (struct grub_fs_module_list): Remove ad-hoc type. - (fs_module_list): Change type to `grub_named_list_t'. Update all - users. - * normal/dyncmd.c (read_command_list): Add space between function - call and parenthesis. - * normal/handler.c (read_handler_list): Likewise. - -2009-11-09 Robert Millan - - * normal/auth.c (punishment_delay): Moved from here ... - (grub_auth_strcmp): ... to here (inside function). - -2009-11-09 Robert Millan - - * include/grub/list.h (struct grub_named_list): Remove `const' - qualifier from `name'. - (struct grub_prio_list): Likewise. - -2009-11-09 Robert Millan - - * normal/auth.c: Include `'. - (grub_auth_strcmp): Replace `strcmp' with `grub_strcmp'. - -2009-11-09 Robert Millan - - * normal/auth.c (punishment_delay): New variable. - (grub_auth_strcmp): Rewrite using grub_get_time_ms (). - (grub_auth_check_authentication): Punish failed login attempts with - an incremental (2^N) delay. - -2009-11-09 Robert Millan - - * conf/common.rmk (grub_mkisofs_CFLAGS): Prefix include - path with $(srcdir). - -2009-11-09 Vladimir Serbinenko - - * normal/auth.c (grub_auth_strcmp): Fixed incorrect variable usage. - -2009-11-09 Robert Millan - - * util/i386/coreboot/grub-mkrescue.in: New file. - * conf/i386-coreboot.rmk (bin_SCRIPTS, grub_mkrescue_SOURCES): New - variables. - - * conf/common.rmk (bin_UTILITIES): Add `grub-mkisofs'. - (grub_mkisofs_SOURCES, grub_mkisofs_CFLAGS): New variables. - * configure.ac: Add header and function checks to satisfy grub-mkisofs - requirements. - * util/mkisofs/defaults.h: New file. - * util/mkisofs/eltorito.c: Likewise. - * util/mkisofs/exclude.h: Likewise. - * util/mkisofs/fnmatch.c: Likewise. - * util/mkisofs/getopt.c: Likewise. - * util/mkisofs/getopt1.c: Likewise. - * util/mkisofs/hash.c: Likewise. - * util/mkisofs/include/fctldefs.h: Likewise. - * util/mkisofs/include/mconfig.h: Likewise. - * util/mkisofs/include/prototyp.h: Likewise. - * util/mkisofs/include/statdefs.h: Likewise. - * util/mkisofs/iso9660.h: Likewise. - * util/mkisofs/joliet.c: Likewise. - * util/mkisofs/match.c: Likewise. - * util/mkisofs/match.h: Likewise. - * util/mkisofs/mkisofs.c: Likewise. - * util/mkisofs/mkisofs.h: Likewise. - * util/mkisofs/multi.c: Likewise. - * util/mkisofs/name.c: Likewise. - * util/mkisofs/rock.c: Likewise. - * util/mkisofs/tree.c: Likewise. - * util/mkisofs/write.c: Likewise. - -2009-11-09 Vladimir Serbinenko - - * normal/auth.c (grub_auth_strcmp): Fix bug which resulted in function - being insecure. - -2009-11-08 Robert Millan - - * util/i386/pc/grub-mkrescue.in: Fix miss-identification as - `grub-mkimage' (and use $0 when possible). - -2009-11-08 Robert Millan - - * kern/i386/multiboot_mmap.c (grub_machine_mmap_init): Improve - error message for excessively large memory map. - -2009-11-08 Robert Millan - - * autogen.sh: Use `sh gendistlist.sh' to avoid reliing on - executable bit. - -2009-11-08 Robert Millan - - * kern/i386/multiboot_mmap.c (grub_machine_mmap_init): Improve error - message for coreboot users. - -2009-11-07 Robert Millan - - Fix build with GNU gold. - - * conf/i386-pc.rmk (boot_img_LDFLAGS, pxeboot_img_LDFLAGS) - (diskboot_img_LDFLAGS, lnxboot_img_LDFLAGS) - (cdboot_img_LDFLAGS): Prepend `0x' qualifier to hexadecimal - link addresses. - * aclocal.m4: Likewise. - -2009-11-04 Felix Zielcke - - * configure.ac (AC_PREREQ): Bump to 2.59d. - * INSTALL: Make it more clear when Autoconf and Ruby are - needed and when to run `./autogen.sh'. - -2009-11-03 Samuel Thibault - - * util/grub.d/30_os-prober.in: Restore default behavior for unsupported - OSes. - -2009-11-02 Samuel Thibault - - * util/grub.d/30_os-prober.in: Add GNU/Hurd support - -2009-11-02 Samuel Thibault - - * util/grub.d/10_hurd.in: Drop /dev/ prefix from root device path before - giving it to GNU Mach. - -2009-11-02 Samuel Thibault - - * util/hostdisk.c (grub_util_biosdisk_get_grub_dev): Subtract 1 from - GNU partition number to get internal GRUB partition number. - -2009-11-02 Samuel Thibault - - * util/grub.d/10_hurd.in: Call prepare_grub_to_access_device - ${GRUB_DEVICE_BOOT} before loading /boot kernel. - -2009-11-01 Robert Millan - - Based on patch from BVK Chaitanya - * kern/misc.c (grub_strchr, grub_strrchr): Fix to handle c == '\0' - case. - -2009-11-01 Felix Zielcke - - * Makefile.in (TARGET_CPPFLAGS): Add `-I$(srcdir)/include'. - -2009-10-30 Robert Millan - - Fix build problem. - - * Makefile.in (TARGET_CPPFLAGS): Replace `-nostdinc' with - `-isystem=$(srcdir)/include'. - -2009-10-30 Robert Millan - - * util/i386/pc/grub-install.in: Remove hint that device.map should be - checked (grub-install doesn't currently rely on it). - -2009-10-29 Robert Millan - - Revert SVN r2660. - - * conf/common.rmk (script/sh/lexer.c_DEPENDENCIES): Moved from here ... - * conf/i386-coreboot.rmk (script/sh/lexer.c_DEPENDENCIES): ... to here. - * conf/i386-efi.rmk (script/sh/lexer.c_DEPENDENCIES): ... and here. - * conf/i386-ieee1275.rmk: Likewise. - * conf/i386-pc.rmk: Likewise. - * conf/powerpc-ieee1275.rmk: Likewise. - * conf/sparc64-ieee1275.rmk: Likewise. - * conf/x86_64-efi.rmk: Likewise. - -2009-10-28 Robert Millan - - * Makefile.in (TARGET_CPPFLAGS): Add `-nostdinc'. - -2009-10-28 Robert Millan - - * include/grub/misc.h: Stop checking for APPLE_CC. - -2009-10-28 Robert Millan - - * kern/i386/coreboot/init.c (grub_exit): Reimplement in a way that - doesn't cause an infinite call loop. - -2009-10-28 Felix Zielcke - - * commands/acpi.c (grub_cmd_acpi): Fix the out of memory error - strings. - -2009-10-26 Robert Millan - - * autogen.sh: Support addition of external modules via `GRUB_CONTRIB' - variable. - * Makefile.in: Likewise. - -2009-10-26 Robert Millan - - * gendistlist.sh: Simplify .svn check. Skip .bzr as well. - -2009-10-26 Robert Millan - - * Makefile.in (RMKFILES): Rewrite using $(wildcard). - -2009-10-26 Robert Millan - - * disk/scsi.c: Remove `' (not needed). - -2009-10-26 Robert Millan - - * gensymlist.sh.in (COMPILE_TIME_ASSERT): Copy macro declaration - from here ... - * include/grub/misc.h (COMPILE_TIME_ASSERT): ... to here. - -2009-10-26 Robert Millan - - * Makefile.in (docs/grub.info): Use make syntax to ignore errors - in $(MAKEINFO) invocation. This makes it clear in output that - errors are being ignored. - -2009-10-26 Robert Millan - - * conf/i386-coreboot.rmk (script/sh/lexer.c_DEPENDENCIES): Moved - from here ... - * conf/common.rmk (script/sh/lexer.c_DEPENDENCIES): ... to here. - * conf/i386-efi.rmk (script/sh/lexer.c_DEPENDENCIES): Remove. - * conf/i386-ieee1275.rmk: Likewise. - * conf/i386-pc.rmk: Likewise. - * conf/powerpc-ieee1275.rmk: Likewise. - * conf/sparc64-ieee1275.rmk: Likewise. - * conf/x86_64-efi.rmk: Likewise. - -2009-10-26 Colin Watson - - * util/grub-editenv.c (main): If only a command is given, use - DEFAULT_DIRECTORY "/" GRUB_ENVBLK_DEFCFG as a default file name. - (usage): FILENAME is now optional and has a default. - -2009-10-26 Colin Watson - - Improve grub-mkconfig performance when there are several menu - entries on a single filesystem. - - * util/grub.d/10_linux.in (linux_entry): Cache the output of - prepare_grub_to_access_device. - * util/grub.d/10_kfreebsd.in (kfreebsd_entry): Likewise. - * util/grub.d/30_os-prober.in: Likewise. - -2009-10-26 Robert Millan - - * util/grub.d/10_freebsd.in: Remove. - * util/grub.d/10_kfreebsd.in: New file (based on 10_linux.in). - * configure.ac: Set host_kernel=kfreebsd for FreeBSD and GNU/kFreeBSD. - -2009-10-26 Robert Millan - - * docs/grub.cfg: Fix example usage of *BSD loaders. - -2009-10-25 Robert Millan - - * util/i386/pc/grub-setup.c (setup): Add missing parameter to - grub_util_error() call. - -2009-10-25 Robert Millan - - * include/grub/fs.h [GRUB_UTIL] (struct grub_fs): Add - `reserved_first_sector' member. - * fs/ext2.c [GRUB_UTIL] (grub_ext2_fs): Initialize - `reserved_first_sector' to 1. - * fs/fat.c [GRUB_UTIL] (grub_fat_fs): Likewise. - * fs/ntfs.c [GRUB_UTIL] (grub_ntfs_fs): Likewise. - * fs/hfsplus.c [GRUB_UTIL] (grub_hfsplus_fs): Likewise. - * util/i386/pc/grub-setup.c (setup): Add safety check that probes for - filesystems which begin at first sector. - (options): New option --skip-fs-probe. - (main): Handle --skip-fs-probe and pass it to setup(). - -2009-10-25 Robert Millan - - * include/grub/misc.h: Fix wrong evaluation of APPLE_CC. - (memset): Fix function prototype. - -2009-10-25 Robert Millan -2009-10-25 Vasily Averin - - * fs/ext2.c (grub_ext2_iterate_dir): Avoid infinite loop when - `dirent.direntlen == 0'. - -2009-10-25 Robert Millan - - * fs/cpio.c [MODE_USTAR]: Initialize `tar' module instead of - `cpio'. - [! MODE_USTAR]: Initialize `cpio' module instead of `tar'. - -2009-10-25 Robert Millan - - * configure.ac: Check for `__ashldi3', `__ashrdi3', `__lshrdi3', - `__trampoline_setup' and `__ucmpdi2'. - * include/grub/powerpc/libgcc.h: Only export symbols for functions - that libgcc provides. - -2009-10-25 Robert Millan - - * include/grub/powerpc/libgcc.h (memset): Remove function prototype. - * include/grub/sparc64/libgcc.h (memset): Likewise. - * include/grub/misc.h (memset, memcmp): New function prototypes. - -2009-10-25 Robert Millan - - * fs/cpio.c [MODE_USTAR]: Finish `tar' module instead of - `cpio'. - [! MODE_USTAR]: Finish `cpio' module instead of `tar'. - -2009-10-25 Robert Millan - - Patch from Samuel Thibault - * docs/grub.cfg: Compensate for recent change in multiboot - loader (since 2009-08-14 it won't pass filename to payload). - * util/grub.d/10_hurd.in: Likewise. - -2009-10-21 Felix Zielcke - - * config.guess: Update to latest version from config git - repository. - * config.sub: Likewise. - -2009-10-20 Robert Millan - - Fix build on sparc64. - - * configure.ac: Perform checks for libgcc symbols before - adding `-nostdlib' to LDFLAGS. - -2009-10-16 Vladimir Serbinenko - - Let user specify OpenBSD root device. - - * loader/i386/bsd.c (openbsd_root): New variable. - (openbsd_opts): New option 'root'. - (OPENBSD_ROOT_ARG): New macro. - (grub_openbsd_boot): Use 'openbsd_root'. - (grub_cmd_openbsd): Fill 'openbsd_root'. - -2009-10-16 Robert Millan - - * NEWS: Misc adjustments. - -2009-10-16 Vladimir Serbinenko - - * NEWS: Mentioned XNU, ACPI, gptsync, password and parttool. - -2009-10-16 Robert Millan - - * configure.ac: Bump version to 1.97. - -2009-10-16 Colin Watson - - * configure.ac (TARGET_CFLAGS): Add -mno-mmx -mno-sse -mno-sse2 - -mno-3dnow on x86 architectures. Some toolchains enable these - features by default, but they rely on registers that aren't enabled - in GRUB. Thanks to Vladimir Serbinenko for the suggestion. - -2009-10-15 Robert Millan - - Make entry text a bit more readable. - - * util/grub.d/10_linux.in: Add `with' before `Linux'. - -2009-10-15 Vladimir Serbinenko - - * loader/i386/pc/xnu.c (grub_xnu_set_video): Fix loading splash image. - -2009-10-15 Vladimir Serbinenko - - * commands/xnu_uuid.c (grub_cmd_xnu_uuid): Remove duplicated bitwise - operations. - -2009-10-15 Vladimir Serbinenko - - * configure.ac: Add missing dollar. - -2009-10-15 Vladimir Serbinenko - - Revert 2009-06-10 Pavel Roskin - - * configure.ac: Put checks for __bswapsi2 and __bswapdi2. - * include/grub/powerpc/libgcc.h: Don't use weak attribute for all - exports. - * include/grub/sparc64/libgcc.h: Likewise. Use - preprocessor conditionals. - -2009-10-14 Robert Millan - - * conf/common.rmk (grub-dumpbios): Remove rule. - (sbin_SCRIPTS, CLEANFILES): Remove `grub-dumpbios'. - * util/grub-dumpbios.in: Remove file. - -2009-10-14 Robert Millan - - Refer to kernel of FreeBSD "kFreeBSD" to avoid confusion between - the Operating System (FreeBSD) and its kernel (kernel of FreeBSD). - - * loader/i386/bsd.c (grub_freebsd_boot): Read kernel environment - from "kFreeBSD" namespace (rather than "FreeBSD"). Update all - users. - - (GRUB_MOD_INIT (bsd)): Rename "freebsd" command to "kfreebsd", - "openbsd" to "kopenbsd", "netbsd" to "knetbsd", "freebsd_loadenv" - to "kfreebsd_loadenv", "freebsd_module" to "kfreebsd_module", - and "freebsd_module_elf" to "kfreebsd_module_elf". Update all - users. - -2009-10-12 Robert Millan - - * term/tparm.c: Switch to GPLv3. - -2009-10-09 Robert Millan - - * include/grub/i386/cpuid.h: Add header protection. - -2009-10-09 Robert Millan - - Fail gracefuly when attempting to load 64-bit kFreeBSD on IA32 CPU. - - * include/grub/i386/cpuid.h: New file. - * commands/i386/cpuid.c: Include `'. - (has_longmode): Rename to ... - (grub_cpuid_has_longmode): ... this. Update all users. Remove - `static' attribute. - * loader/i386/bsd.c: Include `'. - (grub_bsd_load_elf): Fail if load of 64-bit kernel was requested - on a CPU that doesn't implement AMD64 instruction set. - -2009-10-06 Colin Watson - - * Makefile.in (docs/stamp-vti): Depend on configure.ac as well, so - that version.texi is rebuilt on version number changes. - -2009-10-06 Colin Watson - - * Makefile.in: Don't set info_INFOS unless makeinfo was found. - Fixes bug #27602. - -2009-10-06 Colin Watson - - * util/i386/pc/grub-install.in: Source - ${libdir}/grub/grub-mkconfig_lib before option processing, in order - that the --grub-probe option will work. - * util/sparc64/ieee1275/grub-install.in: Likewise. - -2009-10-05 Robert Millan - - * configure.ac: Bump version to 1.97~beta4. - -2009-10-03 Robert Millan - - Resync grub-mkdevicemap in x86_64-efi. - - * conf/x86_64-efi.rmk (sbin_UTILITIES): Enable `grub-mkdevicemap'. - (grub_mkdevicemap_SOURCES): Add missing `util/deviceiter.c' and - `util/devicemap.c'. - -2009-10-01 Colin Watson - - * util/grub-editenv.c (create_envblk_file): Write new block with a - .new suffix and then rename it into place, to ensure atomic - creation. - -2009-09-28 Robert Millan - - Do not automatically install headers. - - * Makefile.in (include_DATA): Remove. Update all users. - -2009-09-26 Robert Millan - - * conf/common.rmk (pkglib_MODULES): Remove `lua.mod'. - (lua_mod_SOURCES, lua_mod_CFLAGS, lua_mod_LDFLAGS): Remove. - - * util/osdetect.lua: Remove. - * script/lua/lauxlib.c: Likewise. - * script/lua/ldebug.c: Likewise. - * script/lua/grub_main.c: Likewise. - * script/lua/lauxlib.h: Likewise. - * script/lua/ldebug.h: Likewise. - * script/lua/ltablib.c: Likewise. - * script/lua/liolib.c: Likewise. - * script/lua/lstrlib.c: Likewise. - * script/lua/lualib.h: Likewise. - * script/lua/ldo.c: Likewise. - * script/lua/ldump.c: Likewise. - * script/lua/ldo.h: Likewise. - * script/lua/loslib.c: Likewise. - * script/lua/lundump.c: Likewise. - * script/lua/grub_lib.c: Likewise. - * script/lua/ldblib.c: Likewise. - * script/lua/lundump.h: Likewise. - * script/lua/lmem.c: Likewise. - * script/lua/grub_lib.h: Likewise. - * script/lua/lmathlib.c: Likewise. - * script/lua/lstate.c: Likewise. - * script/lua/ltm.c: Likewise. - * script/lua/lvm.c: Likewise. - * script/lua/lmem.h: Likewise. - * script/lua/lstate.h: Likewise. - * script/lua/ltm.h: Likewise. - * script/lua/ltable.c: Likewise. - * script/lua/lvm.h: Likewise. - * script/lua/llex.c: Likewise. - * script/lua/lgc.c: Likewise. - * script/lua/grub_lua.h: Likewise. - * script/lua/loadlib.c: Likewise. - * script/lua/lfunc.c: Likewise. - * script/lua/lopcodes.c: Likewise. - * script/lua/lparser.c: Likewise. - * script/lua/ltable.h: Likewise. - * script/lua/llex.h: Likewise. - * script/lua/lgc.h: Likewise. - * script/lua/lfunc.h: Likewise. - * script/lua/lbaselib.c: Likewise. - * script/lua/lopcodes.h: Likewise. - * script/lua/lparser.h: Likewise. - * script/lua/lzio.c: Likewise. - * script/lua/linit.c: Likewise. - * script/lua/lobject.c: Likewise. - * script/lua/llimits.h: Likewise. - * script/lua/lstring.c: Likewise. - * script/lua/lzio.h: Likewise. - * script/lua/lapi.c: Likewise. - * script/lua/lcode.c: Likewise. - * script/lua/lua.h: Likewise. - * script/lua/lobject.h: Likewise. - * script/lua/lstring.h: Likewise. - * script/lua/lapi.h: Likewise. - * script/lua/lcode.h: Likewise. - * script/lua/luaconf.h: Likewise. - -2009-09-26 Colin Watson - - * docs/grub.texi (Command-line and menu entry commands): Document - date and echo commands. - -2009-09-24 Pavel Roskin - - * include/grub/kernel.h (struct grub_module_header): Remove - `grub_module_header_types'. Make `type' unsigned. Make `size' - 32-bit on all platforms. - * util/elf/grub-mkimage.c (load_modules): Treat `type' as an - 8-bit field. Use grub_host_to_target32() for `size'. - * util/i386/efi/grub-mkimage.c (make_mods_section): Likewise. - * util/i386/pc/grub-mkimage.c (generate_image): Likewise. - * util/sparc64/ieee1275/grub-mkimage.c (generate_image): Likewise. - -2009-09-24 Robert Millan - - Fix "lost keypress" bug in at_keyboard. - - * term/i386/pc/at_keyboard.c (grub_at_keyboard_checkkey): New function. - Checks for readyness of input buffer (without flushing it). - (grub_at_keyboard_term): Use grub_at_keyboard_checkkey() rather - than grub_at_keyboard_getkey_noblock() for `checkkey' struct member. - -2009-09-24 Robert Millan - - * util/i386/pc/grub-mkimage.c (generate_image): Enclose BIOS-specific - size check within GRUB_MACHINE_PCBIOS section. - -2009-09-24 Robert Millan - - * include/grub/i386/at_keyboard.h (KEYBOARD_ISREADY): Negate - return value. - * term/i386/pc/at_keyboard.c (grub_keyboard_getkey): Negate - KEYBOARD_ISREADY check. - (grub_at_keyboard_checkkey): Rename to ... - (grub_at_keyboard_getkey_noblock): ... this. Update all users. - Remove gratuitous cast. - -2009-09-23 Colin Watson - - * configure.ac: Call AC_PROG_MKDIR_P. - * Makefile.in (docs/stamp-vti): Create docs directory. Create - version.texi in $(builddir) rather than $(srcdir). - (docs/grub.info): Create docs directory. Prepend $(builddir)/docs - to makeinfo's @include search path. - -2009-09-23 Felix Zielcke - - * util/grub-mkconfig_lib.in (grub_file_is_not_garbage): Cope with `*.dpkg-*' - -2009-09-23 Felix Zielcke - - * util/grub-mkconfig_lib.in (grub_file_is_not_garbage): Add support - for `*.dpkg-new'. - -2009-09-21 Colin Watson - - Build info documentation. Some code borrowed from Automake. - - * configure.ac: Check for makeinfo. - * Makefile.in (MAKEINFO, INFOS, info_INFOS): New variables. - (MAINTAINER_CLEANFILES): Add $(INFOS), docs/stamp-vti, and - docs/version.texi. - (MOSTLYCLEANFILES): Add vti.tmp. - (docs/version.texi, docs/stamp-vti): Update automatically. - (docs/grub.info): Build info documentation. Use --force and ignore - errors for now. - (all-local): Add $(INFOS). - (install-local): Install info files. - (uninstall): Uninstall info files. - * docs/version.texi: Remove from revision control. This file is - automatically generated on build now. - * gendistlist.sh: Add `*.info'. - -2009-09-21 Felix Zielcke - - * kern/term.c: Fix indentation. - -2009-09-21 Felix Zielcke - - * util/hostdisk.c: Fix a comment. - -2009-09-20 Robert Millan - - Fix regression introduced in r2539. - - * term/usb_keyboard.c (USB_HID_DEVICE_TO_HOST): Change from 0x61 - to 0xA1. - -2009-09-19 Colin Watson - - * util/grub.d/30_os-prober.in: Don't throw away stderr from - os-prober. Under normal operation, it does not print anything to - stderr; if it does, we need to debug it, and throwing away stderr - makes that excessively difficult. - -2009-09-16 Vladimir Serbinenko - - * mmap/mmap.c (grub_cmd_badram): Fix off-by-one error. - -2009-09-16 Robert Millan - - * aclocal.m4 (AC_LANG_PROGRAM): New macro. Overrides stock - AC_LANG_PROGRAM from autoconf. - (grub_ASM_USCORE, grub_PROG_OBJCOPY_ABSOLUTE): Add missing - prototypes (fixes warning). - - * configure.ac: Add `-Werror' to TARGET_CFLAGS unless - `--disable-werror' was used. - -2009-09-16 Robert Millan - - * partmap/msdos.c (pc_partition_map_iterate): Fix possible use of - uninitialized `lastaddr'. - -2009-09-15 Vladimir Serbinenko - - * partmap/msdos.c (pc_partition_map_iterate): Detect and break loops. - -2009-09-14 Colin Watson - - * commands/test.c (get_fileinfo): Return immediately if - grub_fs_probe fails. - -2009-09-14 José Martínez - - * commands/acpi.c (grub_cmd_acpi): Fix loading ACPI tables from file. - -2009-09-14 Colin Watson - - * util/grub.d/30_os-prober.in: Cope with Windows 7 in os-prober - output. - -2009-09-13 Robert Millan - - * configure.ac: Remove --enable-grub-pe2elf. Only build - grub-pe2elf when needed by the build system itself. - * conf/common.rmk: Remove $(enable_grub_pe2elf) check. - -2009-09-12 Robert Millan - - * configure.ac: Bump version to 1.97~beta3. - * docs/version.texi: Likewise. - -2009-09-12 Robert Millan - - * video/i386/pc/vbe.c (grub_vbe_get_video_mode_info): Move packed - mode special handling (grub_vbe_bios_set_dac_palette_width() call) - from here ... - * loader/i386/linux.c [GRUB_MACHINE_PCBIOS] - (grub_linux_setup_video): ... to here (with some adjustments). - -2009-09-12 Robert Millan - - Fix memory corruption issue (spotted by Colin Watson). - - * kern/i386/pc/startup.S (grub_vbe_bios_getset_dac_palette): Fix bug - causing returned size to be stored in an incorrect memory location. - Fix use of uninitialized value when storing the returned size. - -2009-09-12 Yves Blusseau - - Change clean rules to properly remove files - - * genmk.rb: add new clean rules - * Makefile.in (clean): add the new targets - (mostlyclean): likewise - -2009-09-11 Colin Watson - - * include/grub/ntfs.h (struct grub_fshelp_node): Change `size' - to grub_uint64_t. - * fs/ntfs.c (init_file): Understand 64-bit sizes for - non-resident files. - -2009-09-11 Colin Watson - - * configure.ac: Don't look for help2man when cross-compiling. Fixes - part of bug #27349. - -2009-09-10 Felix Zielcke - - * util/grub-mkconfig.in: Make the created config mode 400 and - print a warning if it fails. - -2009-09-10 Robert Millan - - * util/grub.d/40_custom.in: Ask user to type custom entries below - comment, rather than below 'exec tail' line. - -2009-09-10 Colin Watson - - * util/grub.d/40_custom.in: Make sure that the explanatory text is - visible in grub.cfg. - -2009-09-10 Colin Watson - - * util/grub.d/40_custom.in: Make it a little clearer how to use this - file. - -2009-09-10 Felix Zielcke - - * docs/grub.cfg: Add an example menu entry for memtest86+. - -2009-09-09 Felix Zielcke - - * config.guess: Update to latest version from config git. - * config.sub: Likewise. - -2009-09-08 Colin Watson - - * script/sh/execute.c (grub_script_execute_cmdline): Set "?" in - unknown-command case. Fixes bug #27320. - -2009-09-08 Felix Zielcke - - * kern/rescue_parser.c (grub_rescue_parse_line): Only suggest to try - `help' if the command exists. - -2009-09-06 Robert Millan - - * INSTALL: Require GCC 4.1.3 or later. - -2009-09-06 Yves Blusseau - - * Makefile.in (RMKFILES): add i386-qemu.rmk - (MAINTAINER_CLEANFILES): add $(srcdir)/DISTLIST $(srcdir)/config.h.in - $(srcdir)/stamp-h.in - -2009-09-05 Robert Millan - - * util/grub-probe.c (probe): Comment out buggy codepath, which - was unexpectedly enabled by Colin Watson's 2009-09-02 fix. This - should be re-enabled after 1.97. - -2009-09-05 Felix Zielcke - - * gendistlist.sh: Add `grub-dumpdevtree' and `*.lua' to the list - find searches for. - -2009-09-04 Vladimir Serbinenko - - * loader/i386/xnu.c (grub_cpu_xnu_fill_devicetree): Remove - unnecessary calls to grub_error. - -2009-09-04 Colin Watson - - * NEWS: Mention `keystatus' and Unicode fonts. - -2009-09-04 Robert Millan - - * configure.ac: Bump version to 1.97~beta2. - * docs/version.texi: Likewise. - -2009-09-03 Colin Watson - - * configure.ac: By default, GCC 4.4 generates .eh_frame sections - containing unwind information in some cases where it previously did - not. Use -fno-dwarf2-cfi-asm if available to restore the old - behaviour. See http://patchwork.kernel.org/patch/8555/ for related - discussion. - -2009-09-02 Yves BLUSSEAU - - Embedding loadenv module into grub-emu - - * conf/i386-pc.rmk (grub_emu_SOURCES): add lib/envblk.c and - commands/loadenv.c - * conf/i386-coreboot.rmk (grub_emu_SOURCES): Likewise - * conf/i386-efi.rmk (grub_emu_SOURCES): Likewise - * conf/i386-ieee1275.rmk (grub_emu_SOURCES): Likewise - * conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Likewise - * conf/sparc64-ieee1275.rmk (grub_emu_SOURCES): Likewise - * conf/x86_64-efi.rmk (grub_emu_SOURCES): Likewise - -2009-09-03 Magnus Granberg - - * aclocal.m4: Add grub_CHECK_PIE. It check if the compiler - include -fPIE in the default specs. - * configure.ac: Check if pie_possible is yes and add -fno-PIE - to TARGET_CFLAGS. - -2009-09-03 Felix Zielcke - - * INSTALL: Note that GNU Bison 2.3 or later is required. - -2009-09-03 Colin Watson - - * kern/i386/pc/startup.S: Fix typo. - -2009-09-02 Vladimir Serbinenko - - * efiemu/loadcore.c (SUFFIX (grub_efiemu_loadcore_load)): Fix style - according to GCS. - -2009-09-02 Colin Watson - - * docs/grub.texi (Naming convention): Describe one-based partition - numbering. - (Device syntax): Likewise. - (File name syntax): Likewise. - (Block list syntax): Likewise. - (Making a GRUB bootable CD-ROM): Talk about grub.cfg rather than - menu.lst. - (File name syntax): Likewise. - (Command-line and menu entry commands): Document acpi, blocklist, - crc, export, insmod, keystatus, ls, set, and unset commands. - -2009-09-02 Colin Watson - - * commands/keystatus.c (GRUB_MOD_INIT (keystatus)): Adjust summary - to avoid implying that only one of --shift, --ctrl, or --alt may be - used. - -2009-09-02 Colin Watson - - * util/grub-probe.c (probe): Test st.st_mode using S_ISREG macro - rather than comparing against S_IFREG, which will almost never work. - -2009-09-01 Vladimir Serbinenko - - * commands/loadenv.c (check_blocklists): Fix off-by-one error. - (write_blocklists): Likewise. - -2009-09-01 Colin Watson - - * script/lua/grub_lua.h (fputs): Supply a format string as the first - argument to grub_printf. - -2009-09-01 Felix Zielcke - - * genmk.rb: Add quotes around $(TARGET_OBJ2ELF) to cope with - non GNU test. - -2009-08-30 Vladimir Serbinenko - - * kern/file.c (grub_file_read): Spelling fix - -2009-08-30 Vladimir Serbinenko - - * loader/i386/bsdXX.c (SUFFIX (grub_freebsd_load_elfmodule)): Fix - loading of headers in some cases. - -2009-08-30 Robert Millan - - * configure.ac: Bump version to 1.97~beta1. - * docs/version.texi: Likewise. - -2009-08-29 Vladimir Serbinenko - - * include/grub/i386/xnu.h: Add license header. - include grub/err.h explicitly. - -2009-08-29 Robert Millan - - * util/grub.d/10_freebsd.in: Detect `ufs1' and `ufs2' and map them - to `ufs' in the vfs.root.mountfrom kernel parameter. - -2009-08-29 Robert Millan - - * term/i386/pc/serial.c: Include `'. - - [GRUB_MACHINE_PCBIOS] (serial_hw_io_addr): Macroify initialization - value (0x0400 -> GRUB_MEMORY_MACHINE_BIOS_DATA_AREA_ADDR). - - [! GRUB_MACHINE_PCBIOS] (GRUB_SERIAL_PORT_NUM): Calculate using - `ARRAY_SIZE' macro. - -2009-08-28 Vladimir Serbinenko - - * kern/file.c (grub_file_read): Check offset. - * fs/hfs.c (grub_hfs_read_file): Remove unnecessary offset check. - * fs/jfs.c (grub_jfs_read_file): Likewise. - * fs/ntfs.c (grub_ntfs_read): Likewise. - * fs/reiserfs.c (grub_reiserfs_read): Likewise. - * fs/minix.c (grub_minix_read_file): Correct offset check. - * fs/ufs.c (grub_ufs_read_file): Likewise. - -2009-08-28 Colin Watson - - * term/i386/pc/console.c (bios_data_area): Cast - GRUB_MEMORY_MACHINE_BIOS_DATA_AREA_ADDR explicitly. - -2009-08-28 Vladimir Serbinenko - - 1-bit optimised blitters. - - * include/grub/fbblit.h (grub_video_fbblit_replace_32bit_1bit): New - prototype. - (grub_video_fbblit_replace_24bit_1bit): Likewise. - (grub_video_fbblit_replace_16bit_1bit): Likewise. - (grub_video_fbblit_replace_8bit_1bit): Likewise. - (grub_video_fbblit_blend_XXXA8888_1bit): Likewise. - (grub_video_fbblit_blend_XXX888_1bit): Likewise. - (grub_video_fbblit_blend_XXX565_1bit): Likewise. - * video/fb/fbblit.c (grub_video_fbblit_replace_32bit_1bit): New - function. - (grub_video_fbblit_replace_24bit_1bit): Likewise. - (grub_video_fbblit_replace_16bit_1bit): Likewise. - (grub_video_fbblit_replace_8bit_1bit): Likewise. - (grub_video_fbblit_blend_XXXA8888_1bit): Likewise. - (grub_video_fbblit_blend_XXX888_1bit): Likewise. - (grub_video_fbblit_blend_XXX565_1bit): Likewise. - * video/fb/video_fb.c (common_blitter): Use 1-bit optimised blitters - when possible. - * video/video.c (grub_video_get_blit_format): Return - GRUB_VIDEO_BLIT_FORMAT_1BIT_PACKED if bpp = 1. - -2009-08-28 Colin Watson - - * normal/cmdline.c (grub_cmdline_get): Supply a format string as - the first argument to grub_printf. - -2009-08-28 Colin Watson -2009-08-28 Robert Millan - - Add `getkeystatus' terminal method. Add a new `keystatus' command - to query it. - - * include/grub/term.h (GRUB_TERM_STATUS_SHIFT, - GRUB_TERM_STATUS_CTRL, GRUB_TERM_STATUS_ALT): Definitions for - modifier key bitmasks. - (struct grub_term_input): Add `getkeystatus' member. - (grub_getkeystatus): Add prototype. - * kern/term.c (grub_getkeystatus): New function. - - * include/grub/i386/pc/memory.h - (GRUB_MEMORY_MACHINE_BIOS_DATA_AREA_ADDR): New macro. - (struct grub_machine_bios_data_area): Define necessary parts of BIOS - Data Area layout. - * term/i386/pc/console.c (grub_console_getkeystatus): New function. - (grub_console_term_input): Set `getkeystatus' member. - * term/usb_keyboard.c (grub_usb_hid): Macroify HID protocol - constants. - (grub_usb_keyboard_getreport): Likewise. - (grub_usb_keyboard_checkkey): Likewise. - (grub_usb_keyboard_getkeystatus): New function. - (grub_usb_keyboard_term): Set `getkeystatus' member. - - * commands/keystatus.c: New file. - * conf/common.rmk (pkglib_MODULES): Add keystatus.mod. - (keystatus_mod_SOURCES): New variable. - (keystatus_mod_CFLAGS): Likewise. - (keystatus_mod_LDFLAGS): Likewise. - * conf/i386-coreboot.rmk (grub_emu_SOURCES): Add - commands/keystatus.c. - * conf/i386-efi.rmk (grub_emu_SOURCES): Likewise. - * conf/i386-ieee1275.rmk (grub_emu_SOURCES): Likewise. - * conf/i386-pc.rmk (grub_emu_SOURCES): Likewise. - * conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Likewise. - * conf/sparc64-ieee1275.rmk (grub_emu_SOURCES): Likewise. - * conf/x86_64-efi.rmk (grub_emu_SOURCES): Likewise. - -2009-08-28 Vladimir Serbinenko - - Split befs.mod and afs.mod into *_be.mod and *.mod - - * conf/common.rmk (grub_probe_SOURCES): Add afs_be.c and befs_be.c. - (grub_fstest_SOURCES): Likewise. - (pkglib_MODULES): Add afs_be.mod and befs_be.mod. - (afs_be_mod_SOURCES): New variable. - (afs_be_mod_CFLAGS): Likewise. - (afs_be_mod_LDFLAGS): Likewise. - (befs_be_mod_SOURCES): Likewise. - (befs_be_mod_CFLAGS): Likewise. - (befs_be_mod_LDFLAGS): Likewise. - * conf/i386-coreboot.rmk (grub_emu_SOURCES): Add afs_be.c and befs_be.c. - * conf/i386-efi.rmk (grub_emu_SOURCES): Likewise. - * conf/i386-ieee1275.rmk (grub_emu_SOURCES): Likewise. - * conf/i386-pc.rmk (grub_setup_SOURCES): Likewise. - (grub_emu_SOURCES): Likewise. - * conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Likewise. - * conf/sparc64-ieee1275.rmk (grub_emu_SOURCES): Likewise. - * conf/x86_64-efi.rmk (grub_emu_SOURCES): Likewise. - * fs/afs_be.c: New file. - * fs/befs_be.c: New file. - * fs/afs.c (GRUB_AFS_FSNAME_SUFFIX): New definition. - (GRUB_AFS_FSNAME): Use GRUB_AFS_FSNAME_SUFFIX. - (U16): Replaced with ... - (grub_afs_to_cpu16): ...this. All users updated. - (U32): Replaced with ... - (grub_afs_to_cpu32): ...this. All users updated. - (U64): Replaced with ... - (grub_afs_to_cpu64): ...this. All users updated. - (GRUB_AFS_BO_LITTLE_ENDIAN): Remove. - (GRUB_AFS_BO_BIG_ENDIAN): Likewise. - (grub_afs_validate_sblock): Check only one endianness. - (GRUB_MOD_INIT (befs)) [MODE_BIGENDIAN && MODE_BFS]: Rename to .. - (GRUB_MOD_INIT (befs_be)) [MODE_BIGENDIAN && MODE_BFS]: ... this. - (GRUB_MOD_INIT (afs)) [MODE_BIGENDIAN && !MODE_BFS]: Rename to .. - (GRUB_MOD_INIT (afs_be)) [MODE_BIGENDIAN && !MODE_BFS]: ... this. - (GRUB_MOD_FINI (befs)) [MODE_BIGENDIAN && MODE_BFS]: Rename to .. - (GRUB_MOD_FINI (befs_be)) [MODE_BIGENDIAN && MODE_BFS]: ... this. - (GRUB_MOD_FINI (afs)) [MODE_BIGENDIAN && !MODE_BFS]: Rename to .. - (GRUB_MOD_FINI (afs_be)) [MODE_BIGENDIAN && !MODE_BFS]: ... this. - -2009-08-26 Bean - - * fs/xfs.c (GRUB_XFS_INO_INOINAG): Replace 1L with 1LL to support - 64-bit number. - (GRUB_XFS_FSB_TO_BLOCK): Likewise. - (grub_xfs_inode_block): Change return type to grub_uint64_t. - (grub_xfs_read_inode): Change type of block to grub_uint64_t. - -2009-08-25 Vladimir Serbinenko - - NetBSD memory map support. - - * include/grub/i386/bsd.h (NETBSD_BTINFO_MEMMAP): New definition. - (grub_netbsd_btinfo_mmap_header): New structure. - (grub_netbsd_btinfo_mmap_entry): Likewise. - * loader/i386/bsd.c (grub_netbsd_boot): Pass memory map. - -2009-08-25 Vladimir Serbinenko - - Enable bsd.mod on coreboot. - - * conf/i386-coreboot.rmk (pkglib_MODULES): Add bsd.mod. - (bsd_mod_SOURCES): New variable. - (bsd_mod_CFLAGS): Likewise. - (bsd_mod_LDFLAGS): Likewise. - (bsd_mod_ASFLAGS): Likewise. - * loader/i386/bsd.c [!GRUB_MACHINE_PCBIOS]: Fix includes. - (grub_bsd_get_device) [!GRUB_MACHINE_PCBIOS]: Set *biosdev to 0xff. - -2009-08-25 Vladimir Serbinenko - - Cleanup NetBSD root support. - - * loader/i386/bsd.c (grub_netbsd_boot): Remove call to - grub_bsd_get_device. - Fix typo. - -2009-08-25 Felix Zielcke - - * util/grub.d/00_header.in: Move check for the video backend of - gfxterm from here ... - * util/grub-mkconfig.in: ... to here. Enable gfxterm if there's - a suitable video backend. - -2009-08-25 Vladimir Serbinenko - - Fix breakage in grub-setup. - - * util/i386/pc/grub-setup.c (setup): Use "part_msdos" instead of - "msdos_partition_map". - -2009-08-25 Vladimir Serbinenko - - Fix breakage in normal/auth.c. - - * normal/auth.c (grub_iswordseparator): New function. - -2009-08-25 Vladimir Serbinenko - - Authentication support. - - * commands/password.c: New file. - * conf/common.rmk (pkglib_MODULES): Add password.mod. - (password_mod_SOURCES): New variable. - (password_mod_CFLAGS): Likewise. - (password_mod_LDFLAGS): Likewise. - (normal_mod_SOURCES): Add normal/auth.c. - * conf/i386-coreboot.rmk (grub_emu_SOURCES): Add commands/password.c and - normal/auth.c. - * conf/i386-efi.rmk (grub_emu_SOURCES): Likewise. - * conf/i386-ieee1275.rmk (grub_emu_SOURCES): Likewise. - * conf/i386-pc.rmk (grub_emu_SOURCES): Likewise. - * conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Likewise. - * conf/sparc64-ieee1275.rmk (grub_emu_SOURCES): Likewise. - * conf/x86_64-efi.rmk (grub_emu_SOURCES): Likewise. - * include/grub/auth.h: New file. - * include/grub/err.h (grub_err_t): New enum value - GRUB_ERR_ACCESS_DENIED. - * include/grub/menu.h (grub_menu_entry): New fields 'restricted' and - 'users'. - * include/grub/normal.h (grub_cmdline_get): New argument 'history'. - * normal/cmdline.c (grub_cmdline_get): New argument 'history'. All - users updated. - * normal/auth.c: New file. - * normal/main.c (grub_normal_add_menu_entry): Handle --users option. - (grub_cmdline_run): Don't allow to go to command line without - authentication. - * normal/menu.c (grub_menu_execute_entry): Handle restricted entries. - * normal/menu_entry.c (grub_menu_entry_run): Don't allow editing - menuentry without superuser rights. - * normal/menu_viewer.c (grub_menu_viewer_show_menu): Don't exit if - user isn't a superuser. - -2009-08-24 Vladimir Serbinenko - - Save space by inlining misc.c functions. - - * kern/misc.c (grub_iswordseparator): Made static. - * kern/misc.c (grub_strcat): Moved from here ... - * include/grub/misc.h (grub_strcat): ... here. Inlined. - * kern/misc.c (grub_strncat): Moved from here ... - * include/grub/misc.h (grub_strncat): ... here. Inlined. - * kern/misc.c (grub_strcasecmp): Moved from here ... - * include/grub/misc.h (grub_strcasecmp): ... here. Inlined. - * kern/misc.c (grub_strncasecmp): Moved from here ... - * include/grub/misc.h (grub_strncasecmp): ... here. Inlined. - * kern/misc.c (grub_isalpha): Moved from here ... - * include/grub/misc.h (grub_isalpha): ... here. Inlined. - * kern/misc.c (grub_isdigit): Moved from here ... - * include/grub/misc.h (grub_isdigit): ... here. Inlined. - * kern/misc.c (grub_isgraph): Moved from here ... - * include/grub/misc.h (grub_isgraph): ... here. Inlined. - * kern/misc.c (grub_tolower): Moved from here ... - * include/grub/misc.h (grub_tolower): ... here. Inlined. - -2009-08-24 Vladimir Serbinenko - - * script/sh/function.c (grub_script_function_find): Cut error message - not to flood terminal. - * script/sh/lexer.c (grub_script_yylex): Remove command line length - limit. - * script/sh/script.c (grub_script_arg_add): Duplicate string. - -2009-08-24 Colin Watson - - * term/usb_keyboard.c (grub_usb_keyboard_getreport): Make - `report' grub_uint8_t *. - (grub_usb_keyboard_checkkey): Make `data' elements grub_uint8_t. - Use a 50-millisecond timeout rather than just repeating - grub_usb_keyboard_getreport 50 times. - (grub_usb_keyboard_getkey): Make `data' elements grub_uint8_t. - -2009-08-24 Vladimir Serbinenko - - Rename *_partition_map to part_* - - * partmap/acorn.c (grub_acorn_partition_map): Set name to 'part_acorn'. - * partmap/amiga.c (grub_amiga_partition_map): Set name to 'part_amiga'. - * partmap/apple.c (grub_apple_partition_map): Set name to 'part_apple'. - * partmap/gpt.c (grub_gpt_partition_map): Set name to 'part_gpt'. - All users updated. - * partmap/msdos.c (grub_msdos_partition_map): Set name to 'part_msdos'. - All users updated. - * partmap/sun.c (grub_sun_partition_map): Set name to 'part_sun'. - * util/grub-probe.c (probe_partmap): Don't transform partition name - to get module name. - -2009-08-24 Vladimir Serbinenko - - Fix OpenBSD and NetBSD support. - - * include/grub/i386/bsd.h (GRUB_BSD_TEMP_BUFFER): Change to resolve - memory address conflict. - (OPENBSD_MMAP_ACPI): New definition. - (OPENBSD_MMAP_NVS): Likewise. - * loader/i386/bsd.c (grub_openbsd_boot): Support OPENBSD_MMAP_ACPI - and OPENBSD_MMAP_NVS. - Add memory map terminator - Explicit cast when calling grub_unix_real_boot. - (grub_netbsd_boot): Explicit cast when calling grub_unix_real_boot. - -2009-08-24 Vladimir Serbinenko - - Let user specify NetBSD root device. - - * loader/i386/bsd.c (netbsd_root): New variable. - (netbsd_opts): New option 'root'. - (NETBSD_ROOT_ARG): New macro. - (grub_netbsd_boot): Use 'netbsd_root'. - (grub_bsd_unload): Free 'netbsd_root'. - (grub_cmd_netbsd): Fill 'netbsd_root'. - -2009-08-24 Vladimir Serbinenko - - Support for 64-bit NetBSD. - - * loader/i386/bsd.c (grub_bsd_load_elf): Apply correct mask to entry - point when booting non-FreeBSD. - -2009-08-24 Vladimir Serbinenko - - Support --no-smp and --no-acpi for NetBSD. - - * include/grub/i386/bsd.h (NETBSD_AB_NOSMP): New definition. - (NETBSD_AB_NOACPI): Likewise. - * loader/i386/bsd.c (netbsd_opts): New entries no-smp and no-acpi. - (netbsd_flags): Add NETBSD_AB_NOSMP, NETBSD_AB_NOACPI. - -2009-08-23 Vladimir Serbinenko - - * fs/hfsplus.c (grub_hfsplus_mount): Don't ignore grub_hfsplus_read_file - errors. - (grub_hfsplus_btree_iterate_node): Don't ignore grub_hfsplus_read_file - errors. Call grub_error when needed. - -2009-08-23 Vladimir Serbinenko - - * commands/search.c (search_fs): Try searching without autoload first. - * util/grub-mkconfig_lib.in (prepare_grub_to_access_device): Load - filesystem module explicitly for faster booting. - -2009-08-23 Colin Watson - - * util/grub-mkconfig.in: Export GRUB_DISABLE_OS_PROBER. - -2009-08-23 Colin Watson - - * util/grub.d/30_os-prober.in: Disable os-prober if - `GRUB_DISABLE_OS_PROBER' was set to true. - -2009-08-23 Robert Millan - - * partmap/pc.c: Rename to ... - * partmap/msdos.c: ... this. Update all users. - (grub_pc_partition_map): Rename to ... - (grub_msdos_partition_map): ... this. Update all users. - - * parttool/pcpart.c: Rename to ... - * parttool/msdospart.c: ... this. Update all users. - - * include/grub/pc_partition.h: Rename to ... - * include/grub/msdos_partition.h: ... this. Update all users. - (grub_pc_partition_bsd_entry): Rename to ... - (grub_msdos_partition_bsd_entry): ... this. Update all users. - (grub_pc_partition_disk_label): Rename to ... - (grub_msdos_partition_disk_label): ... this. Update all users. - (grub_pc_partition_entry): Rename to ... - (grub_msdos_partition_entry): ... this. Update all users. - (grub_pc_partition_mbr): Rename to ... - (grub_msdos_partition_mbr): ... this. Update all users. - (grub_pc_partition): Rename to ... - (grub_msdos_partition): ... this. Update all users. - (grub_pc_partition_is_empty): Rename to ... - (grub_msdos_partition_is_empty): ... this. Update all users. - (grub_pc_partition_is_extended): Rename to ... - (grub_msdos_partition_is_extended): ... this. Update all users. - (grub_pc_partition_is_bsd): Rename to ... - (grub_msdos_partition_is_bsd): ... this. Update all users. - - * conf/common.rmk (amiga_mod_SOURCES, amiga_mod_CFLAGS) - (amiga_mod_LDFLAGS, apple_mod_SOURCES, apple_mod_CFLAGS) - (apple_mod_LDFLAGS, msdos_mod_SOURCES, msdos_mod_CFLAGS) - (msdos_mod_LDFLAGS, sun_mod_SOURCES, sun_mod_CFLAGS) - (sun_mod_LDFLAGS, acorn_mod_SOURCES, acorn_mod_CFLAGS) - (acorn_mod_LDFLAGS, gpt_mod_SOURCES, gpt_mod_CFLAGS) - (gpt_mod_LDFLAGS): Rename to ... - (part_amiga_mod_SOURCES, part_amiga_mod_CFLAGS, part_amiga_mod_LDFLAGS) - (part_apple_mod_SOURCES, part_apple_mod_CFLAGS, part_apple_mod_LDFLAGS) - (part_msdos_mod_SOURCES, part_msdos_mod_CFLAGS, part_msdos_mod_LDFLAGS) - (part_sun_mod_SOURCES, part_sun_mod_CFLAGS, part_sun_mod_LDFLAGS) - (part_acorn_mod_SOURCES, part_acorn_mod_CFLAGS, part_acorn_mod_LDFLAGS) - (part_gpt_mod_SOURCES, part_gpt_mod_CFLAGS) - (part_gpt_mod_LDFLAGS): ... this. - (pkglib_MODULES): Prefix partition modules with `part_'. Rename - `pcpart.mod' to `msdospart.mod'. - (pcpart_mod_SOURCES, pcpart_mod_CFLAGS, pcpart_mod_LDFLAGS): Rename - to ... - (msdospart_mod_SOURCES, msdospart_mod_CFLAGS) - (msdospart_mod_LDFLAGS): ... this. - -2009-08-23 Vladimir Serbinenko - - * loader/i386/bsd.c (freebsd_opts): Rewritten to use extcmd. - (openbsd_opts): Likewise. - (netbsd_opts): Likewise. - (freebsd_flags): Added 0 terminator. - (openbsd_flags): Likewise. - (netbsd_flags): Likewise. - (grub_bsd_parse_flags): Rewritten to use extcmd. All users updated. - (grub_cmd_freebsd): Transformed into extended command. - (grub_cmd_openbsd): Likewise. - (grub_cmd_netbsd): Likewise. - (cmd_freebsd): Changed type to grub_extcmd_t. - (cmd_openbsd): Likewise. - (cmd_netbsd): Likewise. - (GRUB_MOD_INIT (bsd)): Register grub_cmd_freebsd, grub_cmd_netbsd and - grub_cmd_openbsd as extended commands. - (GRUB_MOD_FINI (bsd)): Use grub_unregister_extcmd for cmd_freebsd, - cmd_netbsd and cmd_openbsd - -2009-08-22 Vladimir Serbinenko - - * commands/xnu_uuid.c (transform): Use grub_memcpy instead of memcpy. - -2009-08-21 Pavel Roskin - - * Makefile.in (install-local): When checking if a file is in the - build directory, use "test -e" to detect symlinks. - - * Makefile.in (install-local): Remove all files in - $(DESTDIR)$(pkglibdir) before installing new files there. - -2009-08-18 Felix Zielcke - - * util/powerpc/ieee1275/grub-mkrescue.in (grub_mkimage): Use - grub-mkelfimage. - -2009-08-18 Felix Zielcke - - * util/grub-mkconfig.in: Don't use gfxterm by default if not - explicitly specified by the user. - -2009-08-18 Pavel Roskin - - * include/grub/fbfill.h (struct grub_video_fbrender_target): Use - grub_uint8_t pointer for data. - * include/grub/fbutil.h (struct grub_video_fbblit_info): - Likewise. - * video/fb/fbutil.c: Remove unnecessary casts. - -2009-08-17 Michal Suchanek - - VBE cleanup. - - * video/i386/pc/vbe.c (vbe_mode_in_use): Removed (duplicate). - (grub_vbe_set_video_mode): Save active mode info - only after setting the mode. - (grub_video_vbe_setup): Call 'grub_vbe_set_video_mode' with NULL as - second argument. - -2009-08-17 Michal Suchanek - - Rename variables for clarity. - - * video/i386/pc/vbe.c (active_mode_info): Renamed to ... - (active_vbe_mode_info): ... this. All users updated. - (framebuffer): Rename 'active_mode' to 'active_vbe_mode'. - All users updated. - (initial_mode): Rename to ... - (initial_vbe_mode): ... this. All users updated. - (mode_in_use): Rename to .. - (vbe_mode_in_use): ... this. All users updated. - (mode_list): Rename to .. - (vbe_mode_list): ... this. All users updated. - (grub_vbe_set_video_mode): Rename 'mode' to 'vbe_mode', 'mode_info' to - 'vbe_mode_info' and 'old_mode' to 'old_vbe_mode'. - (grub_video_vbe_init): Rename 'rm_mode_list' to 'rm_vbe_mode_list' and - 'mode_list_size' to 'vbe_mode_list_size'. - (grub_video_vbe_setup): Rename 'mode_info' to 'vbe_mode_info', - 'best_mode_info' to 'best_vbe_mode_info' and - 'best_mode' to 'best_vbe_mode' - -2009-08-17 Michal Suchanek - - Remove duplicate grub_video_fb_get_video_ptr. - - * include/grub/fbutil.h (get_data_ptr): Rename to ... - (grub_video_fb_get_video_ptr): ... this. - * include/grub/video_fb.h (grub_video_fb_get_video_ptr): Removed. - * video/fb/fbutil.c: Add comment about addressing. - (get_data_ptr): Rename to ... - (grub_video_fb_get_video_ptr): ... this. All users updated. - * video/fb/video_fb.c (grub_video_fb_get_video_ptr): Remove. - -2009-08-17 Robert Millan - - * fs/fat.c (grub_fat_read_data): Remove `#if 0' braces around the - grub_dprintf() that was just added. - -2009-08-17 Robert Millan - - * loader/i386/linux.c (GRUB_ASSUME_LINUX_HAS_FB_SUPPORT) - (DEFAULT_VIDEO_MODE): Remove macros. - (grub_linux_boot): Remove assumption that Linux has FB support, - and use "text" as default video mode. - -2009-08-15 Vladimir Serbinenko - - * fs/affs.c (grub_affs_read_symlink): Change leftover grub_printf into - grub_dprintf. - * fs/fat.c (grub_fat_read_data): Likewise. - -2009-08-14 Vladimir Serbinenko - - * loader/i386/multiboot.c (grub_multiboot): Don't pass filename to - payload. - (grub_module): Likewise. - -2009-08-14 Vladimir Serbinenko - - * loader/i386/multiboot.c (grub_multiboot_unload): Don't free mbi and - mbi->cmdline but free playground. - -2009-08-14 Vladimir Serbinenko - - Handle group offset on UFS1. - - * fs/ufs.c (grub_ufs_sblock): New field 'cylg_mask'. - (grub_ufs_read_inode) [!MODE_UFS2]: handle cylg_offset and cylg_mask. - -2009-08-14 Vladimir Serbinenko - - Split ufs.mod into ufs1.mod and ufs2.mod. - - * conf/common.rmk (grub_probe_SOURCES): Add fs/ufs2.c. - (grub_fstest_SOURCES): Likewise. - (pkglib_MODULES): Remove ufs.mod. Add ufs1.mod and ufs2.mod. - (ufs_mod_SOURCES): Remove. - (ufs_mod_CFLAGS): Likewise. - (ufs_mod_LDFLAGS): Likewise. - (ufs1_mod_SOURCES): New variable. - (ufs1_mod_CFLAGS): Likewise. - (ufs1_mod_LDFLAGS): Likewise. - (ufs2_mod_SOURCES): New variable. - (ufs2_mod_CFLAGS): Likewise. - (ufs2_mod_LDFLAGS): Likewise. - * conf/i386-coreboot.rmk (grub_emu_SOURCES): Add fs/ufs2.c. - * conf/i386-efi.rmk (util/i386/efi/grub-mkimage.c_DEPENDENCIES): - Likewise. - (grub_emu_SOURCES): Likewise. - * conf/i386-ieee1275.rmk (grub_emu_SOURCES): Likewise. - * conf/i386-pc.rmk (grub_emu_SOURCES): Likewise. - (grub_setup_SOURCES): Likewise. - * conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Likewise. - * conf/sparc64.rmk (grub_emu_SOURCES): Likewise. - (grub_setup_SOURCES): Likewise. - * conf/x86_64-efi.rmk (util/i386/efi/grub-mkimage.c_DEPENDENCIES): - Likewise. - * fs/ufs2.c: New file. - * fs/ufs.c: Separate UFS1 from UFS2 by using preprocessor. - -2009-08-14 Vladimir Serbinenko - - Framebuffer split. - - * commands/i386/pc/vbetest.c (grub_cmd_vbetest): Restore video - subsystem at the end. - * conf/common.rmk (pkglib_MODULES): Add video_fb.mod. - (video_fb_mod_SOURCES): New variable. - (video_fb_mod_CFLAGS): Likewise. - (video_fb_mod_LDFLAGS): Likewise. - * conf/i386-pc.rmk (vbe_mod_SOURCES): Remove video/i386/pc/vbeblit.c, - video/i386/pc/vbefill.c and video/i386/pc/vbeutil.c. - * video/i386/pc/vbeblit.c: Moved from here ... - * video/fb/fbblit.c: ..here. Replaced 'vbe' with 'fb'. - * video/i386/pc/vbefill.c: Moved from here ... - * video/fb/fbfill.c: ..here. Replaced 'vbe' with 'fb'. - * video/i386/pc/vbeutil.c: Moved from here ... - * video/fb/fbutil.c: ..here. Replaced 'vbe' with 'fb'. - * include/grub/i386/pc/vbeblit.h: Moved from here ... - * include/grub/fbblit.h: ... here. Replaced 'vbe' with 'fb'. - * include/grub/i386/pc/vbefill.h: Moved from here ... - * include/grub/fbfill.h: ... here. Replaced 'vbe' with 'fb'. - * include/grub/i386/pc/vbeutil.h: Moved from here ... - * include/grub/fbutil.h: ... here. Replaced 'vbe' with 'fb'. - * include/grub/i386/pc/vbe.h: Moved framebuffer part ... - * include/grub/video_fb.h: ... here. Replaced 'vbe' with 'fb'. - * include/grub/video.h (GRUB_VIDEO_RENDER_TARGET_FRONT_BUFFER): Removed. - (GRUB_VIDEO_RENDER_TARGET_BACK_BUFFER): Likewise. - (grub_video_adapter): Added 'get_info_and_fini'. - (grub_video_get_info_and_fini): New prototype. - (grub_video_set_mode): make modestring const char *. - * loader/i386/linux.c (grub_linux_setup_video): Use - grub_video_get_info_and_fini. - (grub_linux_boot): Move modesetting just before booting. - * loader/i386/pc/xnu.c (grub_xnu_set_video): Use - grub_video_get_info_and_fini. - * video/i386/pc/vbe.c: Moved framebuffer part ... - * video/fb/video_fb.c: ... here. Replaced 'vbe' with 'fb'. - * video/i386/pc/vbe.c (grub_vbe_set_video_mode): Use - grub_video_fbstd_colors and grub_video_fb_set_palette. - (grub_video_vbe_init): Clear 'framebuffer' variable and use - grub_video_fb_init. - (grub_video_vbe_fini): Use grub_video_fb_fini. - (grub_video_vbe_setup): Use framebuffer.render_target instead of - render_target and use grub_video_fb_set_active_render_target and - grub_video_fb_set_palette. - (grub_video_vbe_set_palette): Use grub_video_fb_set_palette. - (grub_video_vbe_set_viewport): Use grub_video_fb_set_viewport. - (grub_video_vbe_adapter): Use framebuffer. - * video/video.c (grub_video_get_info_and_fini): New function. - (grub_video_set_mode): Make modestring const char *. - (GRUB_MOD_INIT(video_video)): Don't set variables to 0 since these - values are already initialised. - -2009-08-14 Pavel Roskin - - * boot/i386/pc/cdboot.S: Use LOCAL for local labels. Eliminate - ABS and APPLE_CC. - * boot/i386/pc/diskboot.S: Likewise. - * boot/i386/pc/lnxboot.S: Likewise. Hardcode the number of code - sectors allow compilation on MacOSX. - * conf/i386-pc.rmk: Enable unconditional compilation of - lnxboot.img. - -2009-08-13 Colin Watson - - * util/grub-mkconfig.in: Export GRUB_HIDDEN_TIMEOUT. - * util/grub.d/00_header.in: Enter interruptible sleep if - GRUB_HIDDEN_TIMEOUT is set. - -2009-08-13 Yves Blusseau - - * include/grub/symbol.h: Add the LOCAL macro. - * boot/i386/pc/boot.S: Use the LOCAL macro for all labels - starting with "L_". - -2009-08-13 Pavel Roskin - - * boot/i386/pc/boot.S: Remove ABS macro, it's not required by - any modern compilers we support. - - * boot/i386/pc/boot.S: Remove all code dependent on APPLE_CC. - Use local labels starting with "L_" so that Apple assembler - knows they are local. - -2009-08-10 Robert Millan - - * include/grub/i386/bsd.h (KERNEL_TYPE_NONE, KERNEL_TYPE_FREEBSD) - (KERNEL_TYPE_OPENBSD, KERNEL_TYPE_NETBSD): Convert to ... - (bsd_kernel_types): ... this enum. - - * loader/i386/bsd.c (grub_cmd_freebsd_loadenv, grub_cmd_freebsd_module) - (grub_cmd_freebsd_module_elf): Abort with "You need to load the - kernel first." when `kernel_type' is set to KERNEL_TYPE_NONE. - - (grub_bsd_load_aout, grub_bsd_load, grub_cmd_freebsd_loadenv) - (grub_cmd_freebsd_module, grub_cmd_freebsd_module_elf) - (GRUB_MOD_INIT (bsd)): Fix capitalization in a few error - messages. - -2009-08-08 Robert Millan - - * util/grub-dumpdevtree: Moved from here ... - * util/i386/efi/grub-dumpdevtree: ... to here. - (hexify): New function. Converts a string to its hex version. - Generate hex versions of "efi" and "device-properties" by calling - hexify() on the ASCII strings rather than by hardcoding numbers. - -2009-08-08 Robert Millan - - * fs/jfs.c: Update copyright year. - -2009-08-08 Felix Zielcke - - * util/grub.d/00_header.in: Fix a comment. - * util/grub.d/10_linux.in: Likewise. - * util/grub.d/10_windows.in: Likewise. - * util/grub.d/10_hurd.in: Likewise. - -2009-08-08 Felix Zielcke - - * util/grub-mkconfig.in: Allow the user to specify the used font - with GRUB_FONT. - -2009-08-08 Pavel Roskin - - * include/grub/powerpc/libgcc.h: Export __ashrdi3() if - available, xfs.mod needs it now. - - * util/grub-mkconfig_lib.in (version_test_numeric): Don't use - the "g" modifier in sed when the intention is to strip something - once. This fixes comparison of kernels with multiple dashes. - - * util/grub-mkconfig.in: Define datarootdir, datadir may depend - on it. Add missing space before closing bracket. Fix - misleading formatting. - -2009-08-07 Robert Millan - - * docs/grub.texi: Major overhaul. Remove all sections that are - specific to GRUB Legacy, or mostly composed of Legacy-specific - information. - -2009-08-07 Robert Millan - - * docs/version.texi: New file. Provides version information for - grub.texi. - -2009-08-07 Robert Millan - - * docs/grub.texi: Update CVS information to SVN. - Replace outdated "GRUB 2 will include" phrase with "GRUB 2 includes". - -2009-08-07 Felix Zielcke - - * util/grub-mkconfig.in: Remove a wrong `fi'. - -2009-08-07 Felix Zielcke - - * fs/uuid.c (grub_jfs_superblock): New fields unused2 and uuid. - (grub_jfs_uuid): New function. - (grub_jfs_fs): Set uuid field to grub_jfs_uuid. - -2009-08-07 Felix Zielcke - - * util/grub-mkconfig_lib.in (font_path): Move the functionality - of it to ... - * util/grub-mkconfig.in: ... here. Prefer unicode.pf2 and - unifont.pf2 over ascii.pf2. Export LANG=C in case ascii.pf2 gets used. - -2009-08-07 Robert Millan - - * util/grub.d/10_linux.in (test_numeric): Moved from here ... - * util/grub-mkconfig_lib.in (version_test_numeric): ... to here. - Update all users. - - * util/grub.d/10_linux.in (test_gt): Strip any basename prefix, - not just "vmlinu[zx]". - Moved from here ... - * util/grub-mkconfig_lib.in (version_test_gt): ... to here. Update - all users. - - * util/grub.d/10_linux.in (find_latest): Moved from here ... - * util/grub-mkconfig_lib.in (version_find_latest): ... to here. Update - all users. - -2009-08-07 Robert Millan - - * util/grub.d/10_freebsd.in: Use an absolute device path for - `vfs.root.mountfrom'. Set `vfs.root.mountfrom.options=rw'. - -2009-08-06 Felix Zielcke - - * util/grub-mkconfig_lib.in (prepare_grub_to_access_device): Fix - handling of multiple abstraction modules. - -2009-08-04 Robert Millan - - Fix a bug resulting in black screen when loading Linux using a - packed video mode. - - * kern/i386/pc/startup.S (grub_vbe_bios_getset_dac_palette_width): New - function. - - * include/grub/i386/pc/vbe.h (GRUB_VBE_CAPABILITY_DACWIDTH): New macro. - (grub_vbe_bios_getset_dac_palette_width): New function. - (grub_vbe_bios_get_dac_palette_width) - (grub_vbe_bios_set_dac_palette_width): New macros (act as wrappers for - grub_vbe_bios_getset_dac_palette_width()). - - * video/i386/pc/vbe.c (grub_vbe_probe): Use `GRUB_VBE_STATUS_OK' to - check for return status. - (grub_vbe_get_video_mode_info): When getting information for a packed - mode (<= 8 bpp), obtain DAC palette width using - grub_vbe_bios_getset_dac_palette_width(), and use that for initializing - {red,green,blue}_mark_size. - -2009-08-04 Felix Zielcke - - * commands/search.c (options): Fix help output to match actual code. - -2009-08-02 Vladimir Serbinenko - - * commands/hexdump.c (grub_cmd_hexdump): Use grub_disk_read instead - of homegrown code. - -2009-08-01 Vladimir Serbinenko - - * util/hostfs.c (grub_hostfs_dir): Don't use DT_DIR: It doesn't work - on XFS or ReiserFS. - -2009-08-01 Vladimir Serbinenko - - Support Apple partition map with sector size different from 512 bytes. - - * partmap/apple.c (grub_apple_header): New field 'blocksize'. - (apple_partition_map_iterate): Respect 'aheader.blocksize' - and 'apart.partmap_size'. - -2009-08-01 Vladimir Serbinenko -2009-08-01 Robert Millan - - Fix cpuid command. - - * commands/i386/cpuid.c (options): New variable. - (grub_cmd_cpuid): Return real error. - (GRUB_MOD_INIT(cpuid)): Declare options. - -2009-07-31 Vladimir Serbinenko - - * partmap/pc.c (pc_partition_map_iterate): Check that boot flags are - valid. - -2009-07-31 Bean - - * fs/xfs.c (grub_xfs_sblock): Change unused5 field to log2_sect and - log2_inode. - (grub_fshelp_node): Move inode field to the end. - (grub_xfs_data): Remove inode field. - (grub_xfs_inode_block): Calculate inode size using sblock. - (grub_xfs_inode_offset): Likewise. - (grub_xfs_read_inode): Calculate inode size using sblock. - (grub_xfs_read_block): Replace XFS_INODE_EXTENTS with nrec. - (grub_xfs_iterate_dir): Calculate inode size using sblock. - (grub_xfs_mount): Use grub_zalloc instead of grub_malloc. Realloc data - to match inode size. - (grub_xfs_dir): goto mount_fail when mount fails, as data->diropen is - not accessible when data is null. - (grub_xfs_open): Likewise. - -2009-07-31 Bean - - * disk/lvm.c (grub_lvm_scan_device): Ignore extra copy of metadata. - Don't change pv->disk if it's already set. - - * disk/raid.c (grub_raid_scan_device): Merge this function into ... - (grub_raid_register): ... here. - (grub_raid_rescan): Removed. - - * include/grub/raid.h (grub_raid_rescan): Removed. - - * util/grub-fstest.c: Remove include file . - (fstest): Replace grub_raid_rescan with module fini function followed - by init function. - - * util/grub-probe.c: Add include file . - (probe_raid_level): New function. - (probe): Detect abstraction by walking the disk device, support two - level of abstraction (LVM on RAID) when detecting partition map. - -2009-07-31 Pavel Roskin - - * disk/raid5_recover.c (grub_raid5_recover): Revert conversion - to grub_zalloc(), it was erroneous. - Reported by Bean - -2009-07-30 Vladimir Serbinenko - - * util/i386/pc/grub-setup.c (setup): Check that no partition is in - embedding zone, not only the first one. - -2009-07-29 Joe Auricchio - - * term/gfxterm.c (clear_char): New function. - (grub_virtual_screen_setup): Use clear_char. - (scroll_up): Likewise. - (grub_virtual_screen_cls): Likewise. - -2009-07-29 Felix Zielcke - - * util/deviceiter.c (get_acceleraid_disk_name): New static - function. - (grub_util_iterate_devices): Handle Accelraid devices. - * util/hostdisk.c (convert_system_partition_to_system_disk): Likewise. - -2009-07-28 Robert Millan - - * loader/i386/linux.c (grub_cmd_linux): Use ',' rather than ';' as - separator for the suggested gfxpayload string (';' collides with the - parser and needs escaping). - -2009-07-28 Vladimir Serbinenko - - * loader/i386/multiboot_helper.S (grub_multiboot_backward_relocator): - Clear direction flag before jumping to OS. - (grub_multiboot2_real_boot): Likewise. - -2009-07-28 Felix Zielcke - - * util/i386/pc/grub-install: Fix parsing of --disk-module - option. - -2009-07-28 Felix Zielcke - - * util/i386/pc/grub-setup.c (setup): Fix 2 incorrect checks - when embedding. - -2009-07-26 Felix Zielcke - - * util/grub-mkconfig.in (package_version): New variable. - Use it do display the version. - -2009-07-25 Felix Zielcke - - * kern/file.c (grub_file_open): Revert to previous check with - grub_errno. - -2009-07-25 Vladimir Serbinenko - - * commands/probe.c (GRUB_MOD_INIT (probe)): Remove "[--target=target]" - from help line. It's out of sync with code. - -2009-07-25 Vladimir Serbinenko - - * kern/parser.c (grub_parser_execute): Fix a bug causing truncated - entries on failed boot. - -2009-07-25 Felix Zielcke - - * kern/file.c (grub_file_open): Fix an error check. - -2009-07-24 Vladimir Serbinenko - - * util/i386/pc/grub-setup.c (setup): Fix segmentation fault when - partition map couldn't be identified. - -2009-07-23 Pavel Roskin - - * commands/xnu_uuid.c (transform): Use GRUB_CPU_WORDS_BIGENDIAN - instead of WORDS_BIGENDIAN. Use grub_le_to_cpu32(), so that the - case of little endian words becomes just an optimization. - Respect const modifier. - (md5_final): Use code that doesn't depend on endianness. - - * include/grub/misc.h (ALIGN_UP): Cast align to the type of addr - to avoid loss of upper bits if align is unsigned and shorter - than addr. - -2009-07-21 Vladimir Serbinenko - - UUID support for UFS - - * fs/ufs.c (grub_ufs_sblock): Add uuidhi and uuidlow. - (grub_ufs_uuid): New function. - (grub_ufs_fs): add .uuid - -2009-07-21 Pavel Roskin - - * kern/dl.c (grub_dl_check_header): Make static. - -2009-07-21 Felix Zielcke - - * util/grub.d/30_os-prober.in: Remove unused CHAINROOT. Don't - add drivemap for Vista. It breaks Windows 7. - -2009-07-21 Vladimir Serbinenko - - * fs/ufs.c (grub_ufs_sblock): Fix offset of mtime2 which was off by - 128 bytes - -2009-07-20 Vladimir Serbinenko - - Add BFS support - - * conf/common.rmk (grub_probe_SOURCES): Add fs/befs.c. - (grub_fstest_SOURCES): Likewise. - (pkglib_MODULES): Add befs.mod. - (befs_mod_SOURCES): New variable. - (befs_mod_CFLAGS): Likewise. - (befs_mod_LDFLAGS): Likewise. - * conf/i386-coreboot.rmk (grub_emu_SOURCES): Likewise. - * conf/i386-efi.rmk (grub_emu_SOURCES): Likewise. - * conf/i386-ieee1275.rmk (grub_emu_SOURCES): Likewise. - * conf/i386-pc.rmk (grub_emu_SOURCES): Likewise. - (grub_setup_SOURCES): Likewise. - * conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Likewise. - * conf/sparc64-ieee1275.rmk (grub_emu_SOURCES): Likewise. - (grub_setup_SOURCES): Likewise. - * fs/befs.c: New file. - * fs/afs.c (GRUB_AFS_FSNAME): New declaration. - (GRUB_AFS_SBLOCK_SECTOR): Likewise. - (GRUB_AFS_SBLOCK_MAGIC1) [MODE_BFS]: New conditional declaration. - (GRUB_AFS_BTREE_MAGIC) [MODE_BFS]: Likewise - (B_KEY_INDEX_ALIGN): New declaration. - (B_KEY_INDEX_OFFSET): Use B_KEY_INDEX_ALIGN. - (grub_afs_bnode) [MODE_BFS]: Make key_count and key_size 16-bit - (grub_afs_btree) [MODE_BFS]: New conditional declaration. - (grub_afs_sblock) [MODE_BFS]: Remove link_count. - (grub_afs_validate_sblock) [MODE_BFS]: Support BFS - (grub_afs_mount) [MODE_BFS]: Likewise. - (grub_afs_dir) [MODE_BFS]: Divide mtime by 65536 and not 1000000. - (grub_afs_fs): Use GRUB_AFS_FSNAME - (GRUB_MOD_INIT (afs)) [MODE_BFS]: Rename to ... - (GRUB_MOD_INIT (befs)) [MODE_BFS]: ... this - (GRUB_MOD_FINI (afs)) [MODE_BFS]: Rename to ... - (GRUB_MOD_FINI (befs)) [MODE_BFS]: ... this - -2009-07-19 Yves BLUSSEAU - - * util/getroot.c (find_root_device): Add support for MacOSX. - * util/hostdisk.c: Likewise. - -2009-07-20 Vladimir Serbinenko - - * font/font.c (find_glyph): Check whether a font is present to avoid - segmentation fault. - -2009-07-20 Joe Auricchio - - * term/gfxterm.c (grub_virtual_screen_setup): Clear virtual_screen. - -2009-07-20 Pavel Roskin - - * configure.ac: Trim excessively wordy excuses. - -2009-07-20 Vladimir Serbinenko - - Add symlink, mtime and label support to AtheFS. - - * fs/afs.c (grub_afs_sblock): Declare `name' as char. - (grub_afs_iterate_dir): Handle symlinks. - (grub_afs_open): Use grub_afs_read_symlink. - (grub_afs_dir): Likewise. - Pass mtime. - (grub_afs_label): New function. - (grub_afs_fs): Add grub_afs_label. - (grub_afs_read_symlink): New function. - -2009-07-20 Vladimir Serbinenko - - Fix AtheFS support. - - * fs/afs.c: Fix comments style. - (grub_afs_blockrun): Declare as packed. - (grub_afs_datastream): Likewise. - (grub_afs_bnode): Likewise. - (grub_afs_btree): Likewise. - (grub_afs_sblock): Likewise. - Declare `name' as char. - (grub_afs_inode): Declare as packed. - Change void *vnode to grub_uint32_t unused. - (grub_afs_iterate_dir): Check that key_size is positive. - (grub_afs_mount): Don't read superblock twice. - (grub_afs_dir): Don't free node in case of error, - grub_fshelp_find_file already handles this. - (grub_afs_open): Likewise. - -2009-07-19 Pavel Roskin - - * Makefile.in: Remove LIBLZO and enable_lzo. - * conf/i386-pc.rmk: Remove lzo support. - * configure.ac: Remove checks for lzo, don't define ENABLE_LZMA. - * include/grub/i386/pc/kernel.h: Define ENABLE_LZMA. Remove lzo - support. - * kern/i386/pc/lzo1x.S: Remove. - * kern/i386/pc/startup.S: Remove lzo support. - * util/i386/pc/grub-mkimage.c: Likewise. - -2009-07-19 Vladimir Serbinenko - - * disk/usbms.c (grub_usbms_transfer): Fix double semicolon. - * fs/xfs.c (grub_xfs_dir): Likewise. - * fs/afs.c (grub_afs_dir): Likewise. - * fs/iso9660.c (grub_iso9660_iterate_dir): Likewise. - (grub_iso9660_open): Likewise. - * fs/jfs.c (grub_jfs_open): Likewise. - * fs/ext2.c (grub_ext2_dir): Likewise. - * include/grub/macho.h (grub_macho_fat_arch): Likewise. - * script/sh/lexer.c (grub_script_yylex): Likewise. - -2009-07-16 Pavel Roskin - - * configure.ac: Never add "-c" to CFLAGS. - - * configure.ac: Fix incorrect comparison for grub_cv_cc_efiemu. - - * configure.ac: Fix wrong use of grub_cv_cc_no_red_zone where - grub_cv_cc_efiemu should be used. - - * configure.ac: Typo fixes. - - * kern/mm.c (grub_zalloc): New function. - (grub_debug_zalloc): Likewise. - * include/grub/mm.h: Declare grub_zalloc() and - grub_debug_zalloc(). - * util/misc.c (grub_zalloc): New function. - * bus/usb/uhci.c (grub_uhci_pci_iter): Use grub_zalloc() - instead of grub_malloc(), remove unneeded initializations. - * bus/usb/usbhub.c (grub_usb_hub_add_dev): Likewise. - * commands/extcmd.c (grub_extcmd_dispatcher): Likewise. - * commands/parttool.c (grub_cmd_parttool): Likewise. - * disk/i386/pc/biosdisk.c (grub_biosdisk_open): Likewise. - * disk/raid5_recover.c (grub_raid5_recover): Likewise. - * disk/raid6_recover.c (grub_raid6_recover): Likewise. - * disk/usbms.c (grub_usbms_finddevs): Likewise. - * efiemu/mm.c (grub_efiemu_request_memalign): Likewise. - * efiemu/pnvram.c (grub_efiemu_pnvram): Likewise. - (grub_cmd_efiemu_pnvram): Likewise. - * fs/i386/pc/pxe.c (grub_pxefs_open): Likewise. - * fs/iso9660.c (grub_iso9660_mount): Likewise. - (grub_iso9660_iterate_dir): Likewise. - * fs/jfs.c (grub_jfs_opendir): Likewise. - * fs/ntfs.c (list_file): Likewise. - (grub_ntfs_mount): Likewise. - * kern/disk.c (grub_disk_open): Likewise. - * kern/dl.c (grub_dl_load_core): Likewise. - * kern/elf.c (grub_elf_file): Likewise. - * kern/env.c (grub_env_context_open): Likewise. - (grub_env_set): Likewise. - (grub_env_set_data_slot): Likewise. - * kern/file.c (grub_file_open): Likewise. - * kern/fs.c (grub_fs_blocklist_open): Likewise. - * loader/i386/multiboot.c (grub_module): Likewise. - * loader/xnu.c (grub_xnu_create_key): Likewise. - (grub_xnu_create_value): Likewise. - * normal/main.c (grub_normal_add_menu_entry): Likewise. - (read_config_file): Likewise. - * normal/menu_entry.c (make_screen): Likewise. - * partmap/sun.c (sun_partition_map_iterate): Likewise. - * script/sh/lexer.c (grub_script_lexer_init): Likewise. - * script/sh/script.c (grub_script_parse): Likewise. - * video/bitmap.c (grub_video_bitmap_create): Likewise. - * video/readers/jpeg.c (grub_video_reader_jpeg): Likewise. - * video/readers/png.c (grub_png_output_byte): Likewise. - (grub_video_reader_png): Likewise. - -2009-07-16 Vladimir Serbinenko - - Enable all targets that can be built by default - - * configure.ac: enable efiemu runtime, grub-emu, grub-emu-usb, - grub-mkfont and grub-fstest if they can be built - -2009-07-16 Vladimir Serbinenko - - Fix hang and segmentation fault in grub-emu-usb - - * disk/scsi.c (grub_scsi_open): return err and not grub_errno - * util/usb.c (grub_libusb_devices): likewise - (grub_libusb_init): rename to ... - (GRUB_MOD_INIT (libusb)):...this - (grub_libusb_fini): rename to .. - (GRUB_MOD_FINI (libusb)):...this - * disk/usbms.c (grub_usbms_transfer): fix retry logic - * include/grub/disk.h (grub_raid_init): removed, it's useless - (grub_raid_fini): likewise - (grub_lvm_init): likewise - (grub_lvm_fini): likewise - * util/grub-emu.c (main): don't call grub_libusb_init, it's done - by grub_init_all - -2009-07-16 Vladimir Serbinenko - - Fix libusb - - * Makefile.in (LIBUSB): new macro - * genmk.rb (Utility/print_tail): new method - (Utility/rule): use intermediary variable #{prefix}_OBJECTS - (top level): call util.print_tail at the end. - -2009-07-16 Vladimir Serbinenko - - Make FreeBSD accept zpool.cache - - * loader/i386/bsd.c (grub_freebsd_add_meta_module): spoof filename if - type is /boot/zfs/zpool.cache - -2009-07-16 Vladimir Serbinenko - - Fix 64-bit efiemu - - * include/grub/efiemu/efiemu.h (grub_efiemu_configuration_table64_t): - correct wrong typedef - * efiemu/prepare.c (SUFFIX (grub_efiemu_prepare)): minor style fixes - -2009-07-15 Pavel Roskin - - * include/grub/disk.h (struct grub_disk_dev): Use enum for id. - * kern/disk.c (struct grub_disk_cache): Likewise. - - * commands/probe.c (options): Typo fix. - - * include/grub/i386/pc/boot.h (GRUB_BOOT_MACHINE_BPB_END): - Increase to 0x5a to accommodate FAT32. Adjust other offsets - accordingly. - Original patch by Yves Blusseau - - * boot/i386/pc/boot.S (general_error_string): Add DOS newline at - the end of "Error" to make the message more readable. - - * boot/i386/pc/boot.S (kernel_segment): Remove. - (copy_buffer): Use GRUB_BOOT_MACHINE_KERNEL_ADDR in segment 0 - for destination. - - * boot/i386/pc/boot.S (boot_version): Remove. - * include/grub/i386/pc/boot.h (GRUB_BOOT_MACHINE_VER_MAJ): - Remove. - - * include/grub/i386/pc/boot.h: Sort all offsets. - (GRUB_BOOT_MACHINE_KERNEL_ADDRESS): Remove, it's unused. - (GRUB_BOOT_MACHINE_KERNEL_SEGMENT): Likewise. - * boot/i386/pc/boot.S: Assert location of every offset listed in - include/grub/i386/pc/boot.h. - -2009-07-13 Pavel Roskin - - * include/grub/i386/coreboot/machine.h: Rename - GRUB_MACHINE_LINUXBIOS to GRUB_MACHINE_COREBOOT. - * loader/multiboot_loader.c (grub_cmd_multiboot_loader): Allow - multiboot 1 for GRUB_MACHINE_COREBOOT and GRUB_MACHINE_QEMU. - - * kern/dl.c: Force native word size to suppress warnings when - compiling grub-emu. - - * kern/device.c (grub_device_iterate): Change struct part_ent to - hold the name, not a pointer to it. Use one grub_malloc() per - partition, not two. Free partition_name if grub_malloc() fails. - Set ents to NULL only before grub_partition_iterate() is called. - -2009-07-11 Bean - - * kern/ieee1275/openfw.c (grub_children_iterate): Fix size of - childname. - -2009-07-10 Bean -2009-07-10 Robert Millan - - * kern/ieee1275/openfw.c (grub_children_iterate) - (grub_devalias_iterate): Fix size evaluation for property or path - strings, which was broken since r2132. - -2009-07-07 Pavel Roskin - - * commands/search.c (search_file): Merge into ... - (search_fs): ... this. Accept search type as argument. - (grub_cmd_search): Pass search type to search_fs(). - - * include/grub/util/console.h: New file. - * util/console.c: Use it instead of grub/machine/console.h. - * util/grub-emu.c: Likewise. - - * lib/arg.c (find_long_option): Remove. - (find_long): Add `len' argument, make `s' const char *. - (grub_arg_parse): Parse long options in place, not in a - temporary buffer. - -2009-07-06 Pavel Roskin - - * commands/search.c (search_fs): Fix potential NULL pointer - dereference. - - * commands/search.c (search_fs): Replace QUID macro with quid_fn - function pointer. - -2009-07-06 Daniel Mierswa - - * commands/search.c (search_fs): Use grub_strcasecmp() for UUID - comparison. - -2009-07-05 Pavel Roskin - - * include/grub/i386/linux.h (struct linux_kernel_params): - Restore padding3, it's still needed. - - * util/grub.d/10_freebsd.in: Fix spelling of `device.hints' on - FreeBSD. - * util/osdetect.lua: Likewise. - -2009-07-05 Bean - - * conf/common.rmk (lua_mode_SOURCES): Add script/lua/lstrlib.c. - - * script/lua/grub_lib.c (grub_lua_run): Check input parameter. - (grub_lua_getenv): Likewise. - (grub_lua_setenv): Likewise. - (save_errno): New function. - (push_result): Likewise. - (grub_lua_enum_device): Likewise. - (grub_lua_enum_file): Likewise. - (grub_lua_file_open): Likewise. - (grub_lua_file_close): Likewise. - (grub_lua_file_seek): Likewise. - (grub_lua_file_read): Likewise. - (grub_lua_file_getline): Likewise. - (grub_lua_file_getsize): Likewise. - (grub_lua_file_getpos): Likewise. - (grub_lua_file_eof): Likewise. - (grub_lua_file_exist): Likewise. - (grub_lua_add_menu): Likewise. - - * script/lua/grub_lua.h (isupper): New inline function. - (islower): Likewise. - (ispunct): Likewise. - (isxdigit): Likewise. - (strcspn): Change to normal function. - (strpbkr): New function declaration. - (memchr): Likewise. - - * script/lua/grub_main.c (scan_str): New function. - (strcspn): Likewise. - (strpbrk): Likewise. - (memchr): Likewise. - - * script/lua/linit.c (lualibs): Enable the string library. - - * util/osdetect.lua: New file. - -2009-07-04 Robert Millan - - * include/grub/i386/linux.h (struct linux_kernel_params): Add - `capabilities' member. - -2009-07-02 Pavel Roskin - - * genparttoollist.sh: Add missing newline at the end. - -2009-07-01 Pavel Roskin - - * kern/x86_64/efi/callwrap.S: Add missing newline at the end. - - * util/hostdisk.c (open_device): Remove `const' from - `sysctl_size', as sysctlbyname() can change it (in this case it - doesn't actually happen). - - * include/grub/types.h: Define GRUB_LONG_MAX and GRUB_LONG_MIN - using signed long int constants. - - * util/hostdisk.c (grub_util_biosdisk_get_grub_dev): Make `p' - constant to avoid a warning on FreeBSD. - - * util/hostdisk.c (device_is_wholedisk): Compile only on systems - where it's needed. - - * Makefile.in: Install include/grub/machine symlink. - - * Makefile.in: When installing symlinks, use "cp -fR", which - works on FreeBSD and MacOSX. - From Yves Blusseau - - * kern/dl.c (grub_dl_resolve_symbol): Make static. - * include/grub/dl.h: Remove grub_dl_resolve_symbol(). - - * util/misc.c: Move grub_reboot() and grub_halt() ... - * util/grub-emu.c: ... here. Make main_env static. - * include/grub/util/misc.h: Remove main_env. - - * kern/mm.c: Use correct format to print size_t. - - * include/grub/elf.h: Define Elf_Sword and Elf_Xword. - * kern/i386/dl.c: Use ELF symbols without "32" or "64". - * kern/powerpc/dl.c: Likewise. - * kern/sparc64/dl.c: Likewise. - * kern/x86_64/dl.c: Likewise. - -2009-07-01 Robert Millan - - Fix grub-emu build on sparc64-ieee1275. - - * conf/sparc64-ieee1275.rmk (grub_emu_SOURCES): Synchronize with ... - * conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): ... this. - -2009-07-01 Robert Millan - - * util/misc.c: Include `' and `'. - (grub_reboot, grub_halt): New functions. - - * util/i386/pc/misc.c: Delete. Update all users. - * util/sparc64/ieee1275/misc.c: Likewise. - * util/powerpc/ieee1275/misc.c: Likewise. - -2009-07-01 Robert Millan - - * conf/i386.rmk (setjmp_mod_SOURCES) - (setjmp_mod_ASFLAGS, setjmp_mod_LDFLAGS): Move to ... - * conf/common.rmk (setjmp_mod_SOURCES) - (setjmp_mod_ASFLAGS, setjmp_mod_LDFLAGS): ... here, and modify - to use $(target_cpu). - * conf/x86_64-efi.rmk (setjmp_mod_SOURCES) - (setjmp_mod_ASFLAGS, setjmp_mod_LDFLAGS): Remove. - * conf/powerpc-ieee1275.rmk: Likewise. - * conf/sparc64-ieee1275.rmk: Likewise. - - * conf/i386-pc.rmk (kernel_img_SOURCES): Use - $(target_cpu) for kern/$(target_cpu)/dl.c. - * conf/i386-efi.rmk: Likewise. - * conf/i386-ieee1275.rmk: Likewise. - * conf/x86_64-efi.rmk: Likewise. - * conf/i386-coreboot.rmk: Likewise. - * conf/powerpc-ieee1275.rmk (kernel_img_SOURCES): Use - $(target_cpu) for kern/$(target_cpu)/dl.c and for - kern/$(target_cpu)/cache.S. - * conf/sparc64-ieee1275.rmk: Likewise. - -2009-07-01 Robert Millan - - * include/grub/i386/linux.h (linux_kernel_params): Change `mmap_size' - type to `grub_uint8_t', and adjust `padding9' accordingly. - -2009-06-29 Robert Millan - - * include/grub/i386/linux.h (GRUB_VIDEO_TYPE_TEXT): New macro. - - * loader/i386/linux.c [__i386__] (grub_linux_boot): Simplify inline - assembly in final jump, using register constraints. - - (grub_linux_boot): For text mode, initialize `have_vga' using - GRUB_VIDEO_TYPE_TEXT rather than 0 (this changes its value to 1). - - Initialize `video_cursor_x' and `video_cursor_y' as late as possible, - right before the final jump. - - Set `video_mode' to 0x3. - - Document initialization of `video_page', `video_mode' and - `video_ega_bx'. - -2009-06-29 Robert Millan - - * include/grub/i386/linux.h (GRUB_LINUX_FLAG_QUIET): New macro. - * loader/i386/linux.c (grub_cmd_linux): Recognize "quiet" option, - and set GRUB_LINUX_FLAG_QUIET appropriately. - -2009-06-29 Robert Millan - - Fix build on Debian / sparc. - - * configure.ac: Recognize `sparc' target_cpu (as sparc64). - -2009-06-28 Pavel Roskin - - * kern/i386/qemu/mmap.c (grub_machine_mmap_iterate): Use cast to - fix a warning. - - * util/grub.d/10_linux.in: Match SUSE style initrd names. - -2009-06-27 Robert Millan - - * loader/i386/linux.c (grub_linux_boot): Fix uninitialized use of - `err'. - -2009-06-27 Robert Millan - - Revert r2338. - - * loader/i386/linux.c (grub_cmd_linux): Don't call grub_error when - file can't be opened. grub_file_open() is already supposed to set - grub_errno / grub_errmsg appropriately. - * loader/i386/pc/linux.c (grub_cmd_linux): Likewise. - -2009-06-27 Pavel Roskin -2009-06-27 Robert Millan - - * include/grub/dl.h: Include grub/elf.h. - (struct grub_dl): Add symtab field. - * kern/dl.c [GRUB_MACHINE_QEMU]: Define - GRUB_MODULES_MACHINE_READONLY. - (grub_dl_resolve_symbols): Populate mod->symtab, making a copy - of the header for read-only modules. - (grub_dl_unload): Free mod->symtab for read-only modules. - * kern/i386/dl.c: Use mod->symtab. - * kern/powerpc/dl.c: Likewise. - * kern/sparc64/dl.c: Likewise. - * kern/x86_64/dl.c: Likewise. - - * conf/i386-qemu.rmk: New file. - * kern/i386/qemu/startup.S: Likewise. - * kern/i386/qemu/mmap.c: Likewise. - * boot/i386/qemu/boot.S: Likewise. - * include/grub/i386/qemu/time.h: Likewise. - * include/grub/i386/qemu/serial.h: Likewise. - * include/grub/i386/qemu/kernel.h: Likewise. - * include/grub/i386/qemu/console.h: Likewise. - * include/grub/i386/qemu/boot.h: Likewise. - * include/grub/i386/qemu/init.h: Likewise. - * include/grub/i386/qemu/machine.h: Likewise. - * include/grub/i386/qemu/loader.h: Likewise. - * include/grub/i386/qemu/memory.h: Likewise. - - * conf/i386-coreboot.rmk (GRUB_BOOT_MACHINE_LINK_ADDR) - (GRUB_KERNEL_MACHINE_LINK_ADDR): New variables. - [qemu] (pkglib_IMAGES): Add `boot.img'. - [qemu] (boot_img_SOURCES, boot_img_ASFLAGS, boot_img_LDFLAGS) - [qemu] (boot_img_FORMAT): New variables. - [qemu] (bin_UTILITIES): Add `grub-mkimage'. - [qemu] (grub_mkimage_SOURCES, grub_mkimage_CFLAGS): New variables. - [qemu] (kernel_img_SOURCES, kernel_img_HEADERS, kernel_img_CFLAGS) - [qemu] (kernel_img_ASFLAGS, kernel_img_LDFLAGS) - [qemu] (kernel_img_FORMAT): New variables. - - * configure.ac: Recognise `i386-qemu'. - - * util/i386/pc/grub-mkimage.c (compress_kernel): Add dummy variant - (for no compression). - [GRUB_MACHINE_QEMU] (generate_image): Misc adjustments to produce - a valid i386 ROM image. Make `GRUB_KERNEL_MACHINE_COMPRESSED_SIZE', - `GRUB_KERNEL_MACHINE_INSTALL_DOS_PART' and - `GRUB_KERNEL_MACHINE_INSTALL_BSD_PART' optional features (with - ifdefs). - -2009-06-27 Pavel Roskin - - * efiemu/prepare.c: Eliminate TYPE macro, it makes code hard to - read. - * efiemu/prepare32.c: Likewise. - * efiemu/prepare64.c: Likewise. - -2009-06-26 Pavel Roskin - - * include/grub/types.h: Define GRUB_TARGET_WORDSIZE. - * include/grub/elf.h: Define symbols without "32" or "64" based - on GRUB_TARGET_WORDSIZE. - * include/grub/multiboot2.h: Use GRUB_TARGET_WORDSIZE. - * efiemu/loadcore32.c: Redefine GRUB_TARGET_WORDSIZE, remove own - ELF definitions. - * efiemu/loadcore64.c: Likewise. - * loader/i386/bsd32.c: Likewise. - * loader/i386/bsd64.c: Likewise. - * kern/dl.c: Remove own ELF definitions. - * util/i386/efi/grub-mkimage.c: Likewise. - -2009-06-23 Robert Millan - - * kern/i386/pc/startup.S (real_to_prot): Access `gdtdesc' using - segment 0x0 unconditionally, because the reference generated by - GAS is an absolute address. - -2009-06-22 Robert Millan - - * include/grub/i386/kernel.h: Include `'. - [! GRUB_MACHINE_IEEE1275]: Set `GRUB_MOD_ALIGN' to 0x1. - -2009-06-22 Robert Millan - - * commands/search.c (grub_cmd_search): Macroify hardcoded args[] - indexes. Check for -f explicitly. - (search_file): Improve error message. - (GRUB_MOD_INIT(search)): Add missing `-n' to help output. - -2009-06-22 Robert Millan - - * conf/i386-pc.rmk (GRUB_MEMORY_MACHINE_LINK_ADDR): Rename to ... - (GRUB_KERNEL_MACHINE_LINK_ADDR): ... this. Update all users. - -2009-06-22 Robert Millan - - * conf/i386-pc.rmk (kernel_img_SOURCES): Add `kern/i386/misc.S'. - * conf/i386-ieee1275.rmk: Likewise. - * conf/i386-coreboot.rmk: Likewise. - - * kern/i386/pc/startup.S (grub_stop): Remove function. - * kern/i386/ieee1275/startup.S: Likewise. - * kern/i386/coreboot/startup.S: Likewise. - * kern/i386/misc.S (grub_stop): New function. - -2009-06-22 Robert Millan - - * kern/i386/pc/startup.S (real_to_prot): Move from here ... - * kern/i386/realmode.S (real_to_prot): ... to here. - -2009-06-22 Robert Millan - - * conf/i386-ieee1275.rmk (pkglib_PROGRAMS): Replace `kernel.elf' - with `kernel.img'. - (kernel_elf_SOURCES): Rename to ... - (kernel_img_SOURCES): ... this. - (kernel_elf_HEADERS): Rename to ... - (kernel_img_HEADERS): ... this. Update all users. - (kernel_elf_ASFLAGS): Rename to ... - (kernel_img_ASFLAGS): ... this. - (kernel_elf_CFLAGS): Rename to ... - (kernel_img_CFLAGS): ... this. - (kernel_elf_LDFLAGS): Rename to ... - (kernel_img_LDFLAGS): ... this. - * conf/i386-coreboot.rmk: Likewise. - * conf/powerpc-ieee1275.rmk: Likewise. - - * util/elf/grub-mkimage.c (add_segments): Replace "kernel.elf" - with "kernel.img". - -2009-06-21 Pavel Roskin - - * loader/powerpc/ieee1275/linux.c (offset_phdr): Fix prototypes - to match nested functions. - * loader/sparc64/ieee1275/linux.c: Likewise. - - * conf/i386-ieee1275.rmk: Define kernel_elf_ASFLAGS. - -2009-06-21 Robert Millan - - * configure.ac: Enable `END_SYMBOL' / `BSS_START_SYMBOL' test on - all i386 platforms. - -2009-06-21 Robert Millan - - Fix asm file handling on ELF, and remove workarounds. - - * genmk.rb (class Programs): Detect assembly files, and set ASFLAGS - and -DASM_FILE=1 appropriately (copied from `class Images' stanza). - * kern/i386/ieee1275/startup.S (ASM_FILE): Remove macro. - * kern/i386/coreboot/startup.S (ASM_FILE): Likewise. - -2009-06-21 Vladimir Serbinenko - - Load BSD ELF modules - - * conf/i386-pc.rmk (bsd_mod_SOURCES): Add loader/i386/bsd32.c - and loader/i386/bsd64.c - * include/grub/i386/bsd.h (FREEBSD_MODTYPE_MODULE): Remove - (FREEBSD_MODTYPE_ELF_MODULE): New definition - (FREEBSD_MODTYPE_ELF_MODULE_OBJ): Likewise - (grub_freebsd_load_elfmodule32): New declaration - (grub_freebsd_load_elfmoduleobj64): Likewise - (grub_freebsd_load_elf_meta32): Likewise - (grub_freebsd_load_elf_meta64): Likewise - (grub_freebsd_add_meta): Likewise - (grub_freebsd_add_meta_module): Likewise - * loader/i386/bsd.c (grub_freebsd_add_meta): Make global - (grub_freebsd_add_meta_module): Likewise and move module-specific - parts to grub_cmd_freebsd and grub_cmd_freebsd_module - (grub_cmd_freebsd): Add elf-kernel specific parts - based on grub_freebsd_add_meta_module - (grub_cmd_freebsd_module): Add type parsing moved from - grub_freebsd_add_meta_module - (grub_cmd_freebsd_module_elf): New function - (cmd_freebsd_module_elf): New variable - (GRUB_MOD_INIT): Register freebsd_module_elf - * loader/i386/bsd32.c: New file - * loader/i386/bsd64.c: Likewise - * loader/i386/bsdXX.c: Likewise - * kern/elf.c (grub_elf32_load): Let hook decide which pheaders to load - (grub_elf64_load): Likewise - * include/grub/elfload.h (grub_elf32_load_hook_t): New parameter do_load - All users updated - (grub_elf64_load_hook_t): Likewise - -2009-06-21 Colin Watson - - * util/grub-mkconfig.in (GRUB_DISABLE_LINUX_RECOVERY): Export - variable. - * util/grub.d/10_linux.in: If GRUB_DISABLE_LINUX_RECOVERY is true, - don't write a menu entry for recovery mode. - -2009-06-20 Robert Millan - - * util/i386/pc/grub-mkimage.c (main): Oops, free `output' only - after it's no longer needed. - -2009-06-20 Robert Millan - - * include/grub/i386/loader.h (grub_linux_prot_size) - (grub_linux_tmp_addr, grub_linux_real_addr) - (grub_linux_is_bzimage, grub_linux16_boot): Declare only on - GRUB_MACHINE_PCBIOS. - * util/i386/pc/grub-mkimage.c (compress_kernel): Move - common grub_util_info() call to ... - (generate_image): ... here. - Fix use of uninitialized memory, comparison of signed with - unsigned integers and memory leak. - Remove bogus module address message. - -2009-06-20 Vladimir Serbinenko - - * disk/mdraid_linux.c (GRUB_MOD_FINI): use grub_raid_unregister and not - grub_raid_register - * disk/dmraid_nvidia.c (GRUB_MOD_FINI): likewise - -2009-06-19 Pavel Roskin - - * configure.ac: Remove stray AC_MSG_CHECKING. - -2009-06-19 Vladimir Serbinenko - - * disk/scsi.c (grub_scsi_open): use continue instead of big if - -2009-06-18 Pavel Roskin - - * conf/common.rmk: Add fs_file.mod. - * disk/fs_file.c: New file. - * include/grub/disk.h (enum grub_disk_dev_id): Add - GRUB_DISK_DEVICE_FILE_ID. - -2009-06-18 Vladimir Serbinenko - - Fix build with Apple's toolchain. Part 2 - - * aclocal.m4 (grub_PROG_TARGET_CC): add missing prototype for main and - a fake start - -2009-06-18 Vladimir Serbinenko - - Fix build with Apple's toolchain. Part 1 - - * commands/i386/pc/drivemap_int13h.S: use assembly-time constants - for long calls - * configure.ac: remove a leftover AC_MSG_RESULT - (CFLAGS): don't add -Wl,--defsym,___main=0x8100 when building with - Apple's toolchain - -2009-06-18 Vladimir Serbinenko - - Fix warnings - - * fs/ntfscomp.c (decomp_get16): initialize c1 and c2 - (decomp_block): initialize ch - use grub_memcpy instead of memcpy - -2009-06-17 Pavel Roskin - - * include/grub/i386/coreboot/console.h: Don't use the i386-pc - version, use declarations needed to use vga_text as the startup - console. - - * conf/i386-coreboot.rmk (kernel_elf_SOURCES): Remove - term/i386/pc/at_keyboard.c, it doesn't need to be compiled into - the kernel. - * kern/i386/coreboot/init.c: Don't call grub_at_keyboard_init() - and grub_at_keyboard_fini(), it's done on module load and - unload. - -2009-06-17 Felix Zielcke - - * loader/i386/linux.c (grub_cmd_linux): Set grub_error if the - file can't be found. - * loader/i386/pc/linux.c (grub_cmd_linux): Likewise. - -2009-06-17 Vladimir Serbinenko - - Fix newline handling - - * include/grub/script_sh.h (grub_lexer_param): new field was_newline - * script/sh/lexer.c (grub_script_lexer_init): initialize was_newline - (grub_script_yylex): don't segfault on unterminated script - newline terminates command and variable - -2009-06-17 Vladimir Serbinenko - - avoid double grub_adjust_range call. Bug reported by David Simner - - * kern/disk.c (grub_disk_write): change to raw disk access before - calling disk_read - -2009-06-17 Colin Watson - - * util/elf/grub-mkimage.c (usage): Prefix each option line with two - spaces, for the benefit of help2man. - * util/i386/efi/grub-mkimage.c (usage): Likewise. - -2009-06-16 Pavel Roskin - - * kern/i386/halt.c: Include grub/machine/init.h. - * kern/i386/reboot.c: Include grub/cpu/reboot.h. - -2009-06-16 Felix Zielcke - - * util/grub.d/30_os-prober.in: Use ${root} in the generated - drivemap menuentry. - -2009-06-16 James Jarvis - - * commands/help.c GRUB_MOD_INIT(echo): Fix the help output of - `echo' command. - -2009-06-16 Pavel Roskin - - * boot/i386/pc/boot.S: Remove root_drive. Assert offset of - boot_drive_check by using GRUB_BOOT_MACHINE_DRIVE_CHECK. Don't - save %dx, we only need %dl and we never change it. - * boot/i386/pc/cdboot.S: Don't set the root drive. - * boot/i386/pc/pxeboot.S: Likewise. - * include/grub/i386/pc/boot.h: Remove - GRUB_BOOT_MACHINE_ROOT_DRIVE, adjust - GRUB_BOOT_MACHINE_DRIVE_CHECK. - * include/grub/i386/pc/kernel.h: Remove grub_root_drive. - * kern/i386/pc/init.c (make_install_device): Remove references - to grub_root_drive. - * kern/i386/pc/startup.S: Likewise. - * util/i386/pc/grub-setup.c (setup): Don't set root_drive. - -2009-06-16 Vladimir Serbinenko - - xnu_uuid command - - * commands/xnu_uuid.c: new file - * conf/common.rmk (pkglib_MODULES): add xnu_uuid.mod - (xnu_uuid_mod_SOURCES): new variable - (xnu_uuid_mod_CFLAGS): likewise - (xnu_uuid_mod_LDFLAGS): likewise - * conf/i386-coreboot.rmk (grub_emu_SOURCES): add commands/probe.c - * conf/i386-ieee1275.rmk: likewise - * conf/i386-pc.rmk: likewise - * conf/powerpc-ieee1275.rmk: likewise - * conf/sparc64-ieee1275.rmk: likewise - * util/grub.d/30_os-prober.in: use UUID for Mac OS X/Darwin - -2009-06-16 Pavel Roskin - - * configure.ac: Avoid '==' in test command, it's not portable. - -2009-06-16 Vladimir Serbinenko - - Probe command - - * commands/probe.c: new file - * conf/common.rmk (pkglib_MODULES): add probe.mod - (probe_mod_SOURCES): new variable - (probe_mod_CFLAGS): likewise - (probe_mod_LDFLAGS): likewise - * conf/i386-coreboot.rmk (grub_emu_SOURCES): add commands/probe.c - * conf/i386-ieee1275.rmk: likewise - * conf/i386-pc.rmk: likewise - * conf/powerpc-ieee1275.rmk: likewise - * conf/sparc64-ieee1275.rmk: likewise - -2009-06-15 Vladimir Serbinenko - - Fix handling of string like \"hello\" and "a - b" - - * script/sh/lexer.c (check_textstate): accept GRUB_PARSER_STATE_ESC - (grub_script_yylex): fix parsing of quoting, escaping and newline - -2009-06-13 Vladimir Serbinenko - - * loader/i386/multiboot.c (grub_multiboot_get_bootdev): fix partition - handling - -2009-06-13 Jun Inoue - - * util/grub-mkconfig.in: Fix parsing of --output option. - -2009-06-12 Pavel Roskin - - * Makefile.in (pkgdata_SRCDIR): Remove. genmodsrc.sh and - genmk.rb don't need to be generated or installed. - -2009-06-12 Vladimir Serbinenko - - * commands/i386/pc/drivemap_int13h.S: add more comments - -2009-06-11 Pavel Roskin - - * Makefile.in (uninstall): Uninstall manuals. - - * Makefile.in: Rename lib_DATA to lib_SCRIPTS, move it from - PKGLIB to SCRIPTS. This fixes installation of grub-mkconfig_lib - and update-grub_lib in two places. - * conf/common.rmk: Rename lib_DATA to lib_SCRIPTS. - - * disk/usbms.c (grub_usbms_transfer): Initialize `err' to fix - a compiler warning. - - * loader/i386/bsd.c (grub_freebsd_boot): Rename `entry' to - `entry_lo' to fix variable shadowing. - -2009-06-11 Christian Franke - - * kern/misc.c (__enable_execute_stack): Add missing return type - to prevent gcc warning. - -2009-06-11 Felix Zielcke - - * conf/i386-ieee1275.rmk (COMMON_LDFLAGS): Remove `-static -lgcc'. - -2009-06-11 Pavel Roskin - - * Makefile.in: Don't rely on any scripts being executable. - Always use $(SHELL) to run shell scripts. - - * configure.ac: Always define ___main if using -nostdlib. This - fixes tests on Cygwin. - -2009-06-11 Giuseppe Caizzone - - UDF fix - - * fs/udf.c (grub_udf_read_block): handle the fact that ad->length - is in bytes and not in blocks - -2009-06-11 Pavel Roskin - - * kern/i386/halt.c (grub_halt): Make `i' unsigned to fix a - warning. - -2009-06-11 Felix Zielcke - - * util/grub.d/30_os-prober.in: Fix a comment. Source - ${libdir}/grub/grub-mkconfig_lib. Use prepare_grub_to_access_device - to set the root device. Place drivemap command in the generated - chain entry. - -2009-06-11 Pavel Roskin - - * configure.ac: Remove host_m32. Issues with 64-bit utilities - have long been resolved. - -2009-06-11 Colin Watson - - * util/grub.d/10_linux.in: Capitalise "Linux". - - * util/grub-pe2elf.c (usage): Fix references to grub-editenv. - -2009-06-11 Pavel Roskin - - * kern/efi/efi.c (grub_exit): Add infinite loop at the end to - fix a gcc warning and ensure that the function won't ever exit. - - * kern/i386/ieee1275/init.c: Add missing prototype for - grub_stop_floppy(). - - * loader/ieee1275/multiboot2.c [__i386__]: Include - grub/cpu/multiboot.h. - - * term/i386/pc/serial.c (serial_translate_key_sequence): Avoid - casts to short - they are not portable and cause warnings. Fix - use of uninitialized values in input_buf. Use ARRAY_SIZE. - -2009-06-11 Vladimir Serbinenko - - Drivemap fixes - - * commands/i386/pc/drivemap.c (grub_get_root_biosnumber_drivemap): - new function - (grub_get_root_biosnumber_saved): new variable - (GRUB_MOD_INIT): register grub_get_root_biosnumber_drivemap - (GRUB_MOD_FINI): unregister grub_get_root_biosnumber_drivemap - * commands/i386/pc/drivemap_int13h.S (grub_drivemap_handler): restore - %dx after the call if necessary - * conf/common.rmk (pkglib_MODULES): remove boot.mod - (boot_mod_SOURCES): remove - (boot_mod_CFLAGS): remove - (boot_mod_LDFLAGS): remove - * conf/i386-coreboot.rmk (pkglib_MODULES): add boot.mod - (boot_mod_SOURCES): new variable - (boot_mod_CFLAGS): likewise - (boot_mod_LDFLAGS): likewise - * conf/i386-efi.rmk: likewise - * conf/i386-ieee1275.rmk: likewise - * conf/i386-pc.rmk: likewise - * conf/powerpc-ieee1275.rmk: likewise - * conf/sparc64-ieee1275.rmk: likewise - * conf/x86_64-efi.rmk: likewise - * include/grub/i386/pc/biosnum.h: new file - * lib/i386/pc/biosnum.c: likewise - * loader/i386/bsd.c (grub_bsd_get_device): use grub_get_root_biosnumber - * loader/i386/multiboot.c (grub_multiboot_get_bootdev): likewise - * loader/i386/pc/chainloader.c (grub_chainloader_cmd): likewise - -2009-06-10 Pavel Roskin - - * io/gzio.c (test_header): Don't reuse one buffer for all data. - Use separate variables. Read only the file size at the end, but - not the checksum that we don't use. - - * kern/file.c (grub_file_read): Use void pointer for the buffer. - Adjust all callers. - - * kern/ieee1275/openfw.c: Remove libc includes. - * kern/ieee1275/cmain.c: Likewise. - * include/grub/ieee1275/ieee1275.h: Likewise. - - * kern/i386/coreboot/init.c: Include grub/cpu/tsc.h to fix - compiler warnings. - -2009-06-10 Felix Zielcke - - * Makefile.in: Remove all trailing whitespace. - * conf/i386-pc.rmk: Likewise. - * conf/powerpc-ieee1275.rmk: Likewise. - * conf/sparc64-ieee1275.rmk: Likewise. - * docs/grub.texi: Likewise. - * docs/texinfo.tex: Likewise. - * disk/fs_uuid.c: Likewise. - * disk/lvm.c: Likewise. - * disk/scsi.c: Likewise. - * disk/ata.c: Likewise. - * disk/ieee1275/ofdisk.c: Likewise. - * disk/i386/pc/biosdisk.c: Likewise. - * disk/host.c: Likewise. - * disk/raid.c: Likewise. - * disk/efi/efidisk.c: Likewise. - * disk/usbms.c: Likewise. - * disk/memdisk.c: Likewise. - * disk/loopback.c: Likewise. - * kern/powerpc/dl.c: Likewise. - * kern/device.c: Likewise. - * kern/dl.c: Likewise. - * kern/sparc64/dl.c: Likewise. - * kern/ieee1275/ieee1275.c: Likewise. - * kern/term.c: Likewise. - * kern/fs.c: Likewise. - * kern/i386/dl.c: Likewise. - * kern/i386/pc/startup.S: Likewise. - * kern/i386/pc/init.c: Likewise. - * kern/i386/pc/mmap.c: Likewise. - * kern/i386/pc/lzo1x.S: Likewise. - * kern/i386/ieee1275/init.c: Likewise. - * kern/i386/realmode.S: Likewise. - * kern/i386/tsc.c: Likewise. - * kern/partition.c: Likewise. - * kern/corecmd.c: Likewise. - * kern/file.c: Likewise. - * kern/efi/efi.c: Likewise. - * kern/efi/init.c: Likewise. - * kern/efi/mm.c: Likewise. - * kern/main.c: Likewise. - * kern/err.c: Likewise. - * kern/env.c: Likewise. - * kern/disk.c: Likewise. - * kern/generic/millisleep.c: Likewise. - * kern/generic/rtc_get_time_ms.c: Likewise. - * kern/misc.c: Likewise. - * kern/parser.c: Likewise. - * genmk.rb: Likewise. - * configure.ac: Likewise. - * boot/i386/pc/diskboot.S: Likewise. - * boot/i386/pc/pxeboot.S: Likewise. - * boot/i386/pc/boot.S: Likewise. - * boot/i386/pc/lnxboot.S: Likewise. - * boot/i386/pc/cdboot.S: Likewise. - * parttool/pcpart.c: Likewise. - * video/readers/tga.c: Likewise. - * video/video.c: Likewise. - * video/bitmap.c: Likewise. - * lib/envblk.c: Likewise. - * lib/i386/setjmp.S: Likewise. - * fs/xfs.c: Likewise. - * fs/afs.c: Likewise. - * fs/fat.c: Likewise. - * fs/ntfs.c: Likewise. - * fs/udf.c: Likewise. - * fs/affs.c: Likewise. - * fs/iso9660.c: Likewise. - * fs/hfs.c: Likewise. - * fs/fshelp.c: Likewise. - * fs/ext2.c: Likewise. - * fs/jfs.c: Likewise. - * fs/reiserfs.c: Likewise. - * fs/hfsplus.c: Likewise. - * fs/minix.c: Likewise. - * fs/cpio.c: Likewise. - * fs/sfs.c: Likewise. - * fs/ufs.c: Likewise. - * efiemu/prepare.c: Likewise. - * efiemu/loadcore_common.c: Likewise. - * efiemu/runtime/efiemu.sh: Likewise. - * efiemu/runtime/efiemu.S: Likewise. - * efiemu/runtime/efiemu.c: Likewise. - * efiemu/pnvram.c: Likewise. - * efiemu/main.c: Likewise. - * efiemu/i386/pc/cfgtables.c: Likewise. - * efiemu/i386/loadcore64.c: Likewise. - * efiemu/i386/loadcore32.c: Likewise. - * efiemu/loadcore.c: Likewise. - * efiemu/symbols.c: Likewise. - * efiemu/mm.c: Likewise. - * include/grub/autoefi.h: Likewise. - * include/grub/datetime.h: Likewise. - * include/grub/term.h: Likewise. - * include/grub/hfs.h: Likewise. - * include/grub/lvm.h: Likewise. - * include/grub/i386/tsc.h: Likewise. - * include/grub/i386/linux.h: Likewise. - * include/grub/i386/xnu.h: Likewise. - * include/grub/i386/efiemu.h: Likewise. - * include/grub/i386/pc/biosdisk.h: Likewise. - * include/grub/i386/pc/memory.h: Likewise. - * include/grub/i386/pc/vbe.h: Likewise. - * include/grub/parttool.h: Likewise. - * include/grub/video.h: Likewise. - * include/grub/memory.h: Likewise. - * include/grub/fs.h: Likewise. - * include/grub/partition.h: Likewise. - * include/grub/xnu.h: Likewise. - * include/grub/efi/api.h: Likewise. - * include/grub/efi/pe32.h: Likewise. - * include/grub/efi/memory.h: Likewise. - * include/grub/multiboot.h: Likewise. - * include/grub/usbdesc.h: Likewise. - * include/grub/multiboot2.h: Likewise. - * include/grub/acpi.h: Likewise. - * include/grub/efiemu/efiemu.h: Likewise. - * include/grub/disk.h: Likewise. - * include/grub/ieee1275/ieee1275.h: Likewise. - * include/grub/net.h: Likewise. - * include/grub/machoload.h: Likewise. - * include/grub/macho.h: Likewise. - * include/multiboot.h: Likewise. - * genmoddep.awk: Likewise. - * normal/main.c: Likewise. - * normal/menu_entry.c: Likewise. - * normal/menu_viewer.c: Likewise. - * normal/completion.c: Likewise. - * normal/cmdline.c: Likewise. - * normal/misc.c: Likewise. - * normal/datetime.c: Likewise. - * bus/usb/usbtrans.c: Likewise. - * bus/usb/ohci.c: Likewise. - * bus/usb/uhci.c: Likewise. - * bus/usb/usb.c: Likewise. - * mmap/efi/mmap.c: Likewise. - * mmap/i386/pc/mmap_helper.S: Likewise. - * mmap/i386/pc/mmap.c: Likewise. - * mmap/i386/mmap.c: Likewise. - * mmap/i386/uppermem.c: Likewise. - * mmap/mmap.c: Likewise. - * commands/acpi.c: Likewise. - * commands/echo.c: Likewise. - * commands/blocklist.c: Likewise. - * commands/loadenv.c: Likewise. - * commands/usbtest.c: Likewise. - * commands/boot.c: Likewise. - * commands/parttool.c: Likewise. - * commands/search.c: Likewise. - * commands/cat.c: Likewise. - * commands/i386/pc/play.c: Likewise. - * commands/i386/pc/drivemap.c: Likewise. - * commands/i386/pc/vbeinfo.c: Likewise. - * commands/i386/pc/acpi.c: Likewise. - * commands/i386/pc/vbetest.c: Likewise. - * commands/ls.c: Likewise. - * commands/cmp.c: Likewise. - * commands/test.c: Likewise. - * commands/efi/acpi.c: Likewise. - * commands/gptsync.c: Likewise. - * commands/help.c: Likewise. - * partmap/amiga.c: Likewise. - * partmap/apple.c: Likewise. - * partmap/acorn.c: Likewise. - * partmap/pc.c: Likewise. - * partmap/sun.c: Likewise. - * partmap/gpt.c: Likewise. - * script/sh/lexer.c: Likewise. - * script/sh/function.c: Likewise. - * font/font.c: Likewise. - * font/font_cmd.c: Likewise. - * loader/powerpc/ieee1275/linux.c: Likewise. - * loader/efi/chainloader.c: Likewise. - * loader/multiboot_loader.c: Likewise. - * loader/macho.c: Likewise. - * loader/i386/multiboot.c: Likewise. - * loader/i386/linux.c: Likewise. - * loader/i386/pc/linux.c: Likewise. - * loader/i386/pc/multiboot2.c: Likewise. - * loader/i386/pc/chainloader.c: Likewise. - * loader/i386/pc/xnu.c: Likewise. - * loader/i386/bsd_trampoline.S: Likewise. - * loader/i386/efi/linux.c: Likewise. - * loader/i386/multiboot_elfxx.c: Likewise. - * loader/i386/bsd_helper.S: Likewise. - * loader/i386/bsd.c: Likewise. - * loader/i386/linux_trampoline.S: Likewise. - * loader/i386/xnu_helper.S: Likewise. - * loader/i386/xnu.c: Likewise. - * loader/i386/bsd_pagetable.c: Likewise. - * loader/i386/multiboot_helper.S: Likewise. - * loader/xnu.c: Likewise. - * loader/xnu_resume.c: Likewise. - * io/gzio.c: Likewise. - * term/efi/console.c: Likewise. - * term/terminfo.c: Likewise. - * term/ieee1275/ofconsole.c: Likewise. - * term/i386/pc/serial.c: Likewise. - * term/i386/pc/vesafb.c: Likewise. - * term/i386/pc/vga.c: Likewise. - * term/usb_keyboard.c: Likewise. - * term/gfxterm.c: Likewise. - * aclocal.m4: Likewise. - * util/lvm.c: Likewise. - * util/grub.d/30_os-prober.in: Likewise. - * util/grub.d/10_hurd.in: Likewise. - * util/console.c: Likewise. - * util/grub-macho2img.c: Likewise. - * util/grub-probe.c: Likewise. - * util/hostfs.c: Likewise. - * util/i386/pc/grub-mkimage.c: Likewise. - * util/i386/pc/grub-setup.c: Likewise. - * util/i386/efi/grub-mkimage.c: Likewise. - * util/grub-mkconfig.in: Likewise. - * util/raid.c: Likewise. - * util/resolve.c: Likewise. - * util/grub-mkdevicemap.c: Likewise. - * util/grub-emu.c: Likewise. - * util/getroot.c: Likewise. - * util/hostdisk.c: Likewise. - * util/usb.c: Likewise. - * util/grub-editenv.c: Likewise. - * util/misc.c: Likewise. - -2009-06-10 Felix Zielcke - - * gendistlist.sh (EXTRA_DISTFILES): Add `genhandlerlist.sh' and - `genparttoollist.sh'. - (DISTDIRS): Add `efiemu', `mmap', `parttool' and `script'. - Add `*.sh' to the list find searches for and change `mdate.sh' - to `mdate-sh'. - -2009-06-10 Pavel Roskin - - * include/grub/multiboot2.h: Provide compatibility defines for - multiboot2.h. - * include/multiboot2.h: Include stdint.h only if needed, using - angle brackets. - * loader/i386/pc/multiboot2.c: Include multiboot2.h after - grub/multiboot2.h. - * loader/ieee1275/multiboot2.c: Likewise. - * loader/multiboot2.c: Likewise. - * loader/multiboot_loader.c: Likewise. - - * configure.ac: Use -nostdlib when probing for the target. It - should not be required to have libc for the target. - - * configure.ac: Remove checks for __bswapsi2 and __bswapdi2, - they fail without libc headers for the target. - * include/grub/powerpc/libgcc.h: Use weak attribute for all - exports. - * include/grub/sparc64/libgcc.h: Likewise. Don't use - preprocessor conditionals. - - * conf/common.rmk: Compile tar.mod from tar.c, not cpio.c. The - build system doesn't need to be aware of the tar.c internals. - -2009-06-09 Michel Hermier - - * fs/i386/pc/pxe.c (grub_pxefs_read): Fix returned values. - -2009-06-09 Robert Millan - - * util/deviceiter.c (grub_util_iterate_devices): Increase number of - disk limit to 26 for IDE, Virtio, Xen and SCSI. - -2009-06-09 Felix Zielcke - - * util/i386/pc/grub-install.in: Change the error message if UUIDs - aren't available if ata.mod gets used. - -2009-06-09 Oliver Henshaw - - * bus/usb/ohci.c (grub_ohci_pci_iter): Link struct only after - initialising controller. - * bus/usb/uhci.c (grub_uhci_pci_iter): Likewise. - -2009-06-08 Felix Zielcke - - * util/i386/pc/grub-install.in: Add a parameter --disk-module - to choose between ata and biosdisk module on i386-pc. - -2009-06-08 Oliver Henshaw - - * bus/usb/ohci.c (grub_ohci_pci_iter): Define the Class, - Subclass and Programming Interface fields in terms of the 3 byte - Class Code register. - * bus/usb/uhci.c (grub_uhci_pci_iter): Likewise. - - * bus/usb/ohci.c (grub_ohci_pci_iter): Check that programming - interface is OHCI. Add grub_dprintf for symmetry with - bus/usb/uhci.c. - * bus/usb/uhci.c (grub_uhci_pci_iter): Check that programming - interface is UHCI. Add interf variable for programming - interface. Print interface with class/subclass. - - * bus/usb/ohci.c: Set interf with correct field. - - * bus/usb/uhci.c: Remove unneeded doubled lines. - * bus/usb/ohci.c: Likewise. Change interf to grub_uint32_t. - Remove whitespace inside comment. - -2009-06-08 Robert Millan - - * loader/i386/linux.c (grub_cmd_linux): When processing `vga=', use - as fallback an equivalent option without depth. - -2009-06-08 Vladimir Serbinenko - - Not fail if unable to retrieve C/H/S on LBA disks - - * disk/i386/pc/biosdisk.c (grub_biosdisk_open): behave gracefully - if unable to retrieve C/H/S on LBA disks - -2009-06-08 Pavel Roskin - - * fs/hfs.c (grub_hfs_find_dir): Use union to avoid a warning - about aliasing. - -2009-06-08 Felix Zielcke - - * Makefile.in (uninstall): Remove all $lib_DATA files. - -2009-06-08 Vladimir Serbinenko - - Bugfix: install on partitionless device - - * util/hostdisk.c (grub_util_biosdisk_get_grub_dev): check if os_dev - is a whole disk - -2009-06-08 Felix Zielcke - - * Makefile.in (uninstall): Remove all $include_DATA files. - -2009-06-08 Felix Zielcke - - * commands/true.c: New file. Implement the true and false commands. - * conf/common.rmk.c (pkglib_MODULES): Add `true.mod'. - (true_mod_SOURCES): New variable. - (true_mod_CFLAGS): Likewise. - (true_mod_LDFLAGS): Likewise. - -2009-06-05 Colin D Bennett - - Optimized font character lookup using binary search instead of linear - search. Fonts now are required to have the character index ordered by - code point. - - * font/font.c (load_font_index): Verify that fonts have ordered - character indices. - (find_glyph): Use binary search instead of linear search to find a - character in a font. - -2009-06-05 Michael Scherer - - * fs/hfsplus.c (grub_hfsplus_mount): Determine if the filesystem - uses case sensitive btree. - (grub_hfsplus_iterate_dir): Use GRUB_FSHELP_CASE_INSENSITIVE - only for case insensitive filesystems. - -2009-06-05 Vladimir Serbinenko - - * conf/i386-pc.rmk (efiemu_mod_CFLAGS): remove -Werror -Wall - * conf/common.rmk (search_mod_CFLAGS): likewise - -2009-06-04 Vladimir Serbinenko - - * kern/i386/pc/startup.S [APPLE_CC]: block of nops to - compensate a compiler bug - -2009-06-04 Vladimir Serbinenko - - * include/grub/term.h (GRUB_TERM_BACKSPACE): explicitly define as 8 - instead of '\b' - -2009-06-04 Vladimir Serbinenko - - Definitions for creating asm symbols with Apple's CC - - * include/grub/symbol.h [APPLE_CC] (FUNCTION): new macro - [APPLE_CC] (VARIABLE): likewise - -2009-06-04 Vladimir Serbinenko - - Disable lnxboot.img when compiled - with Apple's CC - - * conf/i386-pc.rmk (pkglib_IMAGES): remove lnxboot.img - pkglib_IMAGES [! TARGET_APPLE_CC] (pkglib_IMAGES): add lnxboot.img - * boot/i386/pc/lnxboot.S [APPLE_CC]: define an #error - [! APPLE_CC] (CODE_LENG): skip - [! APPLE_CC] (setup_sects): likewise - [! APPLE_CC]: skip filling - -2009-06-04 Vladimir Serbinenko - - Address in trampolines based on 32-bit registers when compiled - with Apple's CC - - * loader/i386/xnu_helper.S [APPLE_CC]: use 32-bit registers - for addresses - * loader/i386/linux_trampoline.S [APPLE_CC]: likewise - -2009-06-04 Vladimir Serbinenko - - Avoid aliases when compiling with Apple's CC for PCBIOS machine - - * kern/misc.c [APPLE_CC] (memcpy): new function - [APPLE_CC] (memmove): likewise - [APPLE_CC && !GRUB_UTIL] (grub_err_printf): likewise - (memcpy): define alias conditionally on !APPLE_CC - (memset): likewise - (abort): likewise - * include/grub/misc.h (memove): don't define when both GRUB_UTIL and - APPLE_CC are defined - * include/grub/list.h [APPLE_CC] (grub_assert_fail): new function - (grub_assert_fail): make prototype conditional - -2009-06-04 Vladimir Serbinenko - - Use grub-macho2img when compiling with Apple's CC for PCBIOS machine - - * conf/common.rmk (bin_UTILITIES): add (on false on condition) - grub-macho2img - (CLEANFILES): add grub-macho2img - (grub_macho2img_SOURCES): new variable - * kern/i386/pc/startup.S (bss_start): new variable - (bss_end): likewise - * genmk.rb: use grub-macho2img for *.img when compiled with Apple's CC - * util/grub-macho2img.c: new file - -2009-06-04 Vladimir Serbinenko - - Use objconv when compiling with Apple's CC - - * conf/i386-pc.rmk (efiemu32.o): use OBJCONV if defined - (efiemu64.o): likewise - (efiemu64_c.o): omit -mcmodel=large and add -DAPPLE_CC=1 - when compiling with Apple's CC - (efiemu64_s.o): likewise - * configure.ac: check for objconv when compiling with Apple's CC - * genmk.rb: use objconv for modules when compiled with Apple's CC - -2009-06-04 Vladimir Serbinenko - - Define segment as well as section when compiling with - Apple's CC - - * efiemu/runtime/efiemu.c (PHYSICAL_ATTRIBUTE): new definition - (efiemu_set_virtual_address_map): declare with PHYSICAL_ATTRIBUTE - (efiemu_convert_pointer): likewise - (efiemu_set_virtual_address_map): likewise - (efiemu_convert_pointer): likewise - (efiemu_getcrc32): likewise - (init_crc32_table): likewise - (reflect): likewise - * include/grub/dl.h (GRUB_MOD_NAME): define segment with Apple's CC - (GRUB_MOD_DEP): likewise - -2009-06-04 Vladimir Serbinenko - - Allow a compilation without -mcmodel=large - - * kern/efi/mm.c (grub_efi_allocate_pages): don't allocate >4GiB - when compiled without -mcmodel=large - (filter_memory_map): remove memory post 4 GiB when compiled - without -mcmodel=large - * configure.ac: fail gracefully and add -DMCMODEL_SMALL=1 to - TARGET_CFLAGS when -mcmodel=large isn't supported - -2009-06-04 Vladimir Serbinenko - - Remove nested functions in efiemu core - - * efiemu/runtime/efiemu.c (reflect): make static instead of nested - -2009-06-04 Vladimir Serbinenko - - Avoid clobbering %ebx/%rbx in inline assembly with Apple's CC - - * efiemu/runtime/efiemu.c (write_cmos): use %cl instead of %bl as - temporary storage - * include/grub/i386/tsc.h (grub_get_tsc): restore %rbx/%ebx when - using Apple's CC - (grub_cpu_is_tsc_supported): likewise - * loader/i386/xnu.c (guessfsb): restore %rbx/%ebx in inline assembly - -2009-06-04 Vladimir Serbinenko - - Absolute addressing through constant with Apple's cc - - * kern/i386/pc/startup.S: Define necessary constants - and address through it when using ABS with Apple's CC - * boot/i386/pc/diskboot.S: likewise - * boot/i386/pc/boot.S: likewise - * boot/i386/pc/lnxboot.S: likewise - * boot/i386/pc/cdboot.S: likewise - * mmap/i386/pc/mmap_helper.S: likewise - * commands/i386/pc/drivemap_int13h.S: likewise - -2009-06-04 Vladimir Serbinenko - - Check if compiler is apple cc - - * Makefile.in (ASFLAGS): new variable - (TARGET_ASFLAGS): likewise - (TARGET_MODULE_FORMAT): likewise - (TARGET_APPLE_CC): likewise - (OBJCONV): likewise - (TARGET_IMG_CFLAGS): likewise - (TARGET_CPPFLAGS): add includedir - * configure.ac: call grub_apple_cc and grub_apple_target_cc - (TARGET_IMG_LDFLAGS): Add -Wl,-Ttext,. All users updated - Check for linker script only if compiler isn't Apple's CC - (TARGET_MODULE_FORMAT): set - (TARGET_APPLE_CC): likewise - (TARGET_ASFLAGS): likewise - (ASFLAGS): likewise - Check for objcopy only if compiler isn't Apple's CC - Check for BSS symbol only if compiler isn't Apple's CC - * genmk.rb: adapt nm options if we use Apple's utils - * aclocal.m4 (grub_apple_cc): new test - (grub_apple_target_cc): likewise - -2009-06-04 Vladimir Serbinenko - - Simplify sed expressions and improve awk - - * Makefile.in (install-local): simplify sed expression - * gencmdlist.sh: likewise - * genmoddep.awk: avoid adding module as a dependency of itself - -2009-06-04 Vladimir Serbinenko - - Add missing start symbols - - * boot/i386/pc/boot.S: add start - * boot/i386/pc/pxeboot.S: likewise - -2009-06-04 Vladimir Serbinenko - - Fix wrong assumptions with grub-mkimage on EFI - - * i386/efi/grub-mkimage.c (read_kernel_module): don't write prefix here - (relocate_addresses): consider both r_addend and value at offset - (make_mods_section): zerofill modinfo and header - (convert_elf): write prefix here - -2009-06-04 Vladimir Serbinenko - - Use .asciz instead of .string - - * i386/pc/diskboot.S: use .asciz instead of .string - * i386/pc/boot.S: likewise - * include/grub/dl.h (GRUB_MOD_DEP): likewise - (GRUB_MOD_NAME): likewise - -2009-06-04 Vladimir Serbinenko - - gfxpayload support - - * commands/videotest.c (grub_cmd_videotest): use grub_video_set_mode - * include/grub/video.h (GRUB_VIDEO_MODE_TYPE_PURE_TEXT): new definition - (grub_video_setup): remove - (grub_video_set_mode): new prototype - * loader/i386/linux.c (DEFAULT_VIDEO_MODE): new definition - (vid_mode): remove - (linux_vesafb_res): compile only on PCBIOS - (grub_linux_boot): support gfxpayload - * loader/i386/pc/xnu.c (video_hook): new function - (grub_xnu_set_video): support gfxpayload - * term/gfxterm.c (DEFAULT_VIDEO_WIDTH): removed - (DEFAULT_VIDEO_HEIGHT): likewise - (DEFAULT_VIDEO_FLAGS): likewise - (DEFAULT_VIDEO_MODE): new definition - (video_hook): new function - (grub_gfxterm_init): use grub_video_set_mode - * util/grub.d/30_os-prober.in: remove explicit modesetting before - loading xnu - * video/video.c (grub_video_setup): removed - (grub_video_set_mode): new function based on grub_gfxterm_init and - grub_video_setup - -2009-06-04 Vladimir Serbinenko - - Avoid calling biosdisk in drivemap - - * commands/i386/pc/drivemap.c (parse_biosdisk): remove - (revparse_biosdisk): likewise - (list_mappings): derive name from id directly - (grub_cmd_drivemap): use tryparse_diskstring - -2009-06-04 Vladimir Serbinenko - - Script fixes - - * include/grub/script_sh.h (grub_script_cmdline): remove cmdline - (grub_lexer_param): add tokenonhold - (grub_script_create_cmdline): remove cmdline. All callers updated - (grub_script_function_create): make functionname - grub_script_arg. All callers updated - (grub_script_execute_argument_to_string): new prototype - * kern/parser.c (state_transitions): reorder - (grub_parser_cmdline_state): fix a bug and make more compact - * script/sh/execute.c (grub_script_execute_argument_to_string): - make global - (grub_script_execute_cmdline): use new format - * script/sh/function.c (grub_script_function_create): make functionname - grub_script_arg. All callers updated - * script/sh/lexer.c (grub_script_lexer_init): initialize tokenonhold - (grub_script_yylex): remove - (grub_script_yylex2): renamed to ... - (grub_script_yylex): ...renamed - parse the expressions like a${b}c - * script/sh/parser.y (GRUB_PARSER_TOKEN_ARG): new typed terminal - (GRUB_PARSER_TOKEN_VAR): remove - (GRUB_PARSER_TOKEN_NAME): likewise - ("if"): declare as typeless - ("while"): likewise - ("function"): likewise - ("else"): likewise - ("then"): likewise - ("fi"): likewise - (text): remove - (argument): likewise - (script): accept empty scripts and make exit on error - (arguments): use GRUB_PARSER_TOKEN_ARG - (function): likewise - (command): move error handling to script - (menuentry): move grub_script_lexer_ref before - * script/sh/script.c (grub_script_create_cmdline): remove cmdline - argument. All callers updated - -2009-06-04 Robert Millan - - Prevent GRUB from probing floppies during boot. - - * conf/common.rmk (search_mod_CFLAGS): Use `-Werror -Wall'. - * commands/search.c (options): Add --no-floppy. - (search_fs, search_file, grub_cmd_search): Support --no-floppy. - * util/grub-mkconfig_lib.in (prepare_grub_to_access_device): Use - --no-floppy when searching for UUIDs. - -2009-06-04 Robert Millan - - Simplify the code duplication in commands/search.c. - - * commands/search.c (search_label, search_fs_uuid): Merge into ... - (search_fs): ... this. Update all users. - -2009-06-03 Felix Zielcke - - * util/grub-mkconfig.in (update_grub_dir): Rename to grub_mkconfig_dir. - -2009-05-28 Pavel Roskin - - * Makefile.in: Don't use "cp -d", it doesn't work on FreeBSD. - Remove the original symlink explicitly. - - * fs/hfs.c (grub_hfs_find_dir): Skip sequences of slashes, not - just one slash. That's how grub_fshelp_find_file() does it. - -2009-05-26 Pavel Roskin - - * genmk.rb: Avoid shadowing variable `s', rename the outer `s' - to `str'. - - * util/getroot.c (grub_util_get_dev_abstraction): Mark os_dev as - possibly unused. - -2009-05-25 Christian Franke - - * disk/ata.c (grub_ata_wait_not_busy): Add debug output of status - register. - (grub_atapi_identify): Add wait after drive select. - (grub_ata_identify): Do more strict status register check before - calling grub_atapi_identify (). Suppress error message if status - register is 0x00 after command failure. Add status register - check after PIO read to avoid bogus identify due to stuck DRQ. - Thanks to Pavel Roskin for testing. - (grub_device_initialize): Remove unsafe status register check. - Thanks to 'phcoder' for problem report and patch. - Prevent sign extension in debug message. - -2009-05-23 Colin D Bennett - - Cleaned up `include/grub/normal.h'. Grouped prototypes by - definition file, and functions defined in `normal/menu.c' have had - their prototypes moved to `include/grub/menu.h' for consistency. - - * include/grub/menu.h (grub_menu_execute_callback): Added; moved - from normal.h. - (grub_menu_get_entry): Likewise. - (grub_menu_get_timeout): Likewise. - (grub_menu_set_timeout): Likewise. - (grub_menu_execute_entry): Likewise. - (grub_menu_execute_with_fallback): Likewise. - (grub_menu_entry_run): Likewise. - - * include/grub/normal.h: Re-ordered and grouped function - prototypes by file that the function is defined in. - (grub_menu_execute_callback): Removed; moved to menu.h. - (grub_menu_get_entry): Likewise. - (grub_menu_get_timeout): Likewise. - (grub_menu_set_timeout): Likewise. - (grub_menu_execute_entry): Likewise. - (grub_menu_execute_with_fallback): Likewise. - (grub_menu_entry_run): Likewise. - (grub_menu_addentry): Renamed from this ... - (grub_normal_add_menu_entry): ... to this. - - * normal/main.c (grub_menu_addentry): Renamed from this ... - (grub_normal_add_menu_entry): ... to this. - - * script/sh/execute.c (grub_script_execute_menuentry): Update - reference to renamed grub_menu_addentry function. - -2009-05-23 Felix Zielcke - - * commands/i386/pc/drivemap.c (MODNAME): Remove. Update all users. - -2009-05-22 Pavel Roskin - - * aclocal.m4 (grub_I386_CHECK_REGPARM_BUG): Remove. - * configure.ac: Don't call grub_I386_CHECK_REGPARM_BUG. Define - NESTED_FUNC_ATTR using AH_BOTTOM. Use regparm(1) only when - compiling for the i386 targets, but not for the utilities. - - * include/grub/i386/pc/kernel.h (grub_boot_drive): Change type - to grub_uint8_t. - (grub_root_drive): Likewise. - * kern/i386/pc/startup.S (grub_boot_drive): Change size to byte, - remove alignment. - (grub_root_drive): Change size to byte. - (grub_start_addr): Remove. - (grub_end_addr): Likewise. - (grub_apm_bios_info): Likewise. - -2009-05-21 Felix Zielcke - - * normal/i386: Remove. - * normal/powerpc: Likewise. - * normal/sparc64: Likewise. - * normal/x86_64: Likewise. - -2009-05-19 Vladimir Serbinenko - - * conf/x86_64-efi.rmk (linux_mod_ASFLAGS): Add missing variable - * loader/i386/linux_trampoline.S: Fix indentation - * loader/i386/xnu_helper.S: Likewise - -2009-05-18 Colin D Bennett - - Display error messages when parsing a Lua statement fails. - Previously, executing a syntactically invalid statement like - ")foo" or "bar;" would silently fail. - - * script/lua/grub_main.c (handle_lua_error): New function. - (grub_lua_parse_line): Improved reporting of Lua parser and - execution errors. - -2009-05-17 Vladimir Serbinenko - - Remove -Werror which causes build to fail on some systems - - * conf/i386-pc.rmk (xnu_mod_CFLAGS): Remove -Werror -Wall - * conf/i386-efi.rmk (xnu_mod_CFLAGS): Likewise - * conf/x86_64-efi.rmk (xnu_mod_CFLAGS): Likewise - -2009-05-17 Vladimir Serbinenko - - trampoline for linux on 64-bit platform - - * conf/x86_64-efi.rmk (linux_mod_SOURCES): added - loader/i386/efi/linux_trampoline.S - * include/grub/x86_64/efi/loader.h (grub_linux_real_boot): removed - declaration - * kern/x86_64/efi/startup.S (grub_linux_real_boot): moved from - here - * loader/i386/linux_trampoline.S: moved here - * loader/i386/efi/linux.c (allocate_pages): reserve space for - trampoline - (jumpvector): removed - (grub_linux_trampoline_start): new declaration - (grub_linux_trampoline_end): likewise - (grub_linux_boot): use trampoline when on 64-bit platform - * loader/i386/linux.c: likewise - -2009-05-16 Pavel Roskin - - * script/lua/grub_lib.c (grub_lua_getenv): Make name and value - const to avoid a warning. - (grub_lua_setenv): Likewise. - * script/lua/grub_main.c (grub_lua_parse_line): Use size_t for - lmsg to fix a warning. - -2009-05-16 Felix Zielcke - - * conf/i386.rmk (setjmp_mod_CFLAGS): Rename to ... - (setjmp_mod_ASFLAGS): ... this. Set to $(COMMON_ASFLAGS). - * conf/x86_64-efi.rmk (setjmp_mod_CFLAGS): Rename to ... - (setjmp_mod_ASFLAGS): ... this. Set to $(COMMON_ASFLAGS). - * conf/powerpc-ieee1275.rmk (setjmp_mod_CFLAGS): Rename to ... - (setjmp_mod_ASFLAGS): ... this. Set to $(COMMON_ASFLAGS). - * conf/sparc64-ieee1275.rmk (setjmp_mod_CFLAGS): Rename to ... - (setjmp_mod_ASFLAGS): ... this. Set to $(COMMON_ASFLAGS). - -2009-05-16 Felix Zielcke - - * util/grub-mkconfig.in: Export GRUB_TERMINAL_INPUT. - -2009-05-16 Bean - - * conf/common.rmk (pkglib_MODULES): Add lua.mod. - (lua_mod_SOURCES): New variable. - (lua_mod_CFLAGS): Likewise. - (lua_mod_LDFLAGS): Likewise. - - * conf/i386.rmk (pkglib_MODULES): Add setjmp.mod. - (setjmp_mod_SOURCES): New variable. - (setjmp_mod_CFLAGS): Likewise. - (setjmp_LDFLAGS): Likewise. - - * conf/x86_64-efi.rmk (pkglib_MODULES): Add setjmp.mod. - (setjmp_mod_SOURCES): New variable. - (setjmp_mod_CFLAGS): Likewise. - (setjmp_LDFLAGS): Likewise. - - * conf/powerpc-ieee1275.rmk (pkglib_MODULES): Add setjmp.mod. - (setjmp_mod_SOURCES): New variable. - (setjmp_mod_CFLAGS): Likewise. - (setjmp_LDFLAGS): Likewise. - - * conf/sparc64-ieee1275.rmk (pkglib_MODULES): Add setjmp.mod. - (setjmp_mod_SOURCES): New variable. - (setjmp_mod_CFLAGS): Likewise. - (setjmp_LDFLAGS): Likewise. - - * normal/i386/setjmp.S: Moved from here ... - * lib/i386/setjmp.S: ... Moved here - * normal/x86_64/setjmp.S: Moved from here ... - * lib/x86_64/setjmp.S: ... Moved here - * normal/powerpc/setjmp.S: Moved from here ... - * lib/powerpc/setjmp.S: ... Moved here - * normal/sparc64/setjmp.S: Moved from here ... - * lib/sparc64/setjmp.S: ... Moved here - - * include/grub/i386/setjmp.h (grub_setjmp): Don't use attribute - returns_twice in mingw. - - * script/lua/grub_lib.c: New file. - * script/lua/grub_lib.h: Likewise. - * script/lua/grub_lua.h: Likewise. - * script/lua/grub_main.c: Likewise. - * script/lua/lapi.c: Likewise. - * script/lua/lapi.h: Likewise. - * script/lua/lauxlib.c: Likewise. - * script/lua/lauxlib.h: Likewise. - * script/lua/lbaselib.c: Likewise. - * script/lua/lcode.c: Likewise. - * script/lua/lcode.h: Likewise. - * script/lua/ldblib.c: Likewise. - * script/lua/ldebug.c: Likewise. - * script/lua/ldebug.h: Likewise. - * script/lua/ldo.c: Likewise. - * script/lua/ldo.h: Likewise. - * script/lua/ldump.c: Likewise. - * script/lua/lfunc.c: Likewise. - * script/lua/lfunc.h: Likewise. - * script/lua/lgc.c: Likewise. - * script/lua/lgc.h: Likewise. - * script/lua/linit.c: Likewise. - * script/lua/liolib.c: Likewise. - * script/lua/llex.c: Likewise. - * script/lua/llex.h: Likewise. - * script/lua/llimits.h: Likewise. - * script/lua/lmathlib.c: Likewise. - * script/lua/lmem.c: Likewise. - * script/lua/lmem.h: Likewise. - * script/lua/loadlib.c: Likewise. - * script/lua/lobject.c: Likewise. - * script/lua/lobject.h: Likewise. - * script/lua/lopcodes.c: Likewise. - * script/lua/lopcodes.h: Likewise. - * script/lua/loslib.c: Likewise. - * script/lua/lparser.c: Likewise. - * script/lua/lparser.h: Likewise. - * script/lua/lstate.c: Likewise. - * script/lua/lstate.h: Likewise. - * script/lua/lstring.c: Likewise. - * script/lua/lstring.h: Likewise. - * script/lua/lstrlib.c: Likewise. - * script/lua/ltable.c: Likewise. - * script/lua/ltable.h: Likewise. - * script/lua/ltablib.c: Likewise. - * script/lua/ltm.c: Likewise. - * script/lua/ltm.h: Likewise. - * script/lua/lua.h: Likewise. - * script/lua/luaconf.h: Likewise. - * script/lua/lualib.h: Likewise. - * script/lua/lundump.c: Likewise. - * script/lua/lundump.h: Likewise. - * script/lua/lvm.c: Likewise. - * script/lua/lvm.h: Likewise. - * script/lua/lzio.c: Likewise. - * script/lua/lzio.h: Likewise. - -2009-05-16 Bean - - * include/grub/kernel.h (grub_module_header_types): Add type - OBJ_TYPE_CONFIG. - - * kern/main.c (grub_load_config): New function. - (grub_main): Call grub_load_config to read boot config. - - * grub-mkimage (generate_image): New parameter config_path. - (options): New option --config. - (main): Parse --config option, and pass it to generate_image. - -2009-05-14 Christian Franke - - * commands/i386/pc/drivemap_int13h.S: Add missing EXT_C for symbols. - This fixes build on Cygwin. - -2009-05-14 Pavel Roskin - - * commands/i386/pc/drivemap_int13h.S: Eliminate unconditional - jump. This saves two bytes, so the typical case of 2 swapped - drives would fit 32 bytes. - -2009-05-13 Pavel Roskin - - * loader/i386/multiboot.c (grub_multiboot): Cast mmap_addr to - grub_uint32_t to avoid a warning. - - * loader/i386/linux.c (allocate_pages): When assigning - real_mode_mem, cast through grub_size_t to fix a warning. The - code already makes sure that the value would fit a pointer. - (grub_linux_setup_video): Cast render_target->data to - grub_size_t to fix a warning. - -2009-05-13 Javier Martín - - * commands/i386/pc/drivemap.c: New file - implement drivemap - command. - * commands/i386/pc/drivemap_int13h.S: New file - int13 handler. - * conf/i386-pc.rmk: Add drivemap.c and drivemap_int13h.S. - -2009-05-13 Pavel Roskin - - * util/i386/pc/grub-setup.c (setup): Remove unused variable - embedding_area_exists. - -2009-05-13 Robert Millan - - * util/i386/pc/grub-setup.c (setup): Restructure code flow to make - it easier to understand / work with. - Improve warning messages for cases where there's no embedding area, - or when it is too small (or core.img too large). - -2009-05-13 Pavel Roskin - - * loader/i386/pc/multiboot2.c: Add necessary includes for - grub_multiboot2_real_boot(). - - * fs/iso9660.c (grub_iso9660_iterate_dir): The file mode in the - PX record is always little-endian. We only need the lower 2 - bytes of the mode. - - * fs/cpio.c: Use the same name "struct head" for tar and cpio to - facilitate code reuse. - (grub_cpio_mount): Use "struct head", not a char buffer. This - fixes a warning reported by gcc 4.4. - - * kernel/disk.c (grub_disk_read): Use void pointer for the - buffer. - (grub_disk_write): Use const void pointer for the buffer. - Adjust all callers. Remove unnecessary casts. - -2009-05-10 Robert Millan - - * util/i386/pc/grub-install.in: Update copyright year. - -2009-05-09 Vladimir Serbinenko - - gptsync - - * commands/gptsync.c: new file - * conf/common.rmk (pkglib_MODULES): add gptsync.mod - (gptsync_mod_SOURCES): new variable - (gptsync_mod_CFLAGS): likewise - (gptsync_mod_LDFLAGS): likewise - * include/grub/pc_partition.h (GRUB_PC_PARTITION_TYPE_NTFS): - new definition - (GRUB_PC_PARTITION_TYPE_HFS): likewise - * conf/i386-coreboot.rmk (grub_emu_SOURCES): add commands/gptsync.c - * conf/i386-ieee1275.rmk: likewise - * conf/i386-pc.rmk: likewise - * conf/powerpc-ieee1275.rmk: likewise - -2009-05-09 Vladimir Serbinenko - - Fixed grub-emu - - * kern/dl.c (grub_dl_ref): omit when compiling grub-emu - (grub_dl_ref): likewise - -2009-05-08 Robert Millan - - * util/i386/pc/grub-setup.c (setup): Factorize find_usable_region(), - split in two functions (one for msdos and one for gpt). - -2009-05-08 Pavel Roskin - - * disk/raid.c (grub_raid_block_xor): Make buf2 constant, it's - not modified. - - * disk/raid6_recover.c (grub_raid6_recover): Fix warnings about - uninitialized err[0] and err[1]. Rename them to bad1 and bad2. - Initialize them with -1. Add sanity check for bad1. Eliminate - nerr variable. - -2009-05-08 David S. Miller - - * util/sparc64/ieee1275/grub-ofpathname.c (main): Set progname. - -2009-05-06 Robert Millan - - * util/i386/pc/grub-setup.c (setup): Fix check for embed region - existence. - -2009-05-05 Felix Zielcke - - * conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Add - `kern/rescue_reader.c', `kern/rescue_parser.c' and `normal/autofs.c'. - -2009-05-05 David S. Miller - - * util/sparc64/ieee1275/grub-install.in: Fix sed arg quoting. - -2009-05-05 Pavel Roskin - - * include/grub/dl.h [GRUB_UTIL]: Provide inline implementations - of grub_dl_ref() and grub_dl_unref(). - * commands/parttool.c: Remove preprocessor conditionals around - grub_dl_ref() and grub_dl_unref(). - * fs/affs.c: Likewise. - * fs/afs.c: Likewise. - * fs/cpio.c: Likewise. - * fs/ext2.c: Likewise. - * fs/fat.c: Likewise. - * fs/hfs.c: Likewise. - * fs/hfsplus.c: Likewise. - * fs/iso9660.c: Likewise. - * fs/jfs.c: Likewise. - * fs/minix.c: Likewise. - * fs/ntfs.c: Likewise. - * fs/reiserfs.c: Likewise. - * fs/sfs.c: Likewise. - * fs/udf.c: Likewise. - * fs/ufs.c: Likewise. - * fs/xfs.c: Likewise. - * include/grub/dl.h: Likewise. - * loader/xnu.c: Likewise. - -2009-05-04 Pavel Roskin - - * commands/acpi.c: Remove unused variable my_mod. - * partmap/amiga.c: Likewise. - * partmap/apple.c: Likewise. - * partmap/gpt.c: Likewise. - * partmap/pc.c: Likewise. - * partmap/sun.c: Likewise. - * term/gfxterm.c: Likewise. - * term/i386/pc/vesafb.c: Likewise. - * term/i386/pc/vga.c: Likewise. - -2009-05-04 David S. Miller - - * kern/ieee1275/openfw.c (grub_children_iterate): Fix string - pointer args to grub_ieee1275_get_property(). - - * conf/sparc64-ieee1275.rmk: Fix build due to missing '\'. - - * disk/ieee1275/ofdisk.c (grub_ofdisk_iterate): Bypass cdrom - devices, and do not traverse down under controller nodes. - - * disk/ieee1275/ofdisk.c (compute_dev_path): New. - (grub_ofdisk_open): Use it to un-escape "," characters. - * kern/disk.c (find_part_sep): New. - (grub_disk_open): Use it to find the first non-escaped ',' - character in the disk name. - * util/ieee1275/devicemap.c (escape_of_path): New. - (grub_util_emit_devicemap_entry): Use it. - * util/sparc64/ieee1275/grub-install.in: Update script to - strip partition specifiers properly by not triggering on - '\' escaped ',' characters. - -2009-05-04 Robert Millan - - * include/grub/i386/linux.h (GRUB_LINUX_VID_MODE_VESA_START): Set - to 0x300. - * loader/i386/linux.c (vga_modes, linux_vesafb_res): Add a few - resolutions. - (linux_vesafb_modes): Add a lot of additional modes to the list (based - on documentation from Wikipedia). - -2009-05-04 Pavel Roskin - - * disk/ata.c: Spelling fixes. - * disk/raid.c: Likewise. - * disk/usbms.c: Likewise. - * disk/dmraid_nvidia.c: Likewise. - * kern/ieee1275/openfw.c: Likewise. - * kern/ieee1275/init.c: Likewise. - * kern/ieee1275/cmain.c: Likewise. - * boot/i386/pc/cdboot.S: Likewise. - * video/readers/png.c: Likewise. - * video/i386/pc/vbe.c: Likewise. - * fs/udf.c: Likewise. - * fs/hfs.c: Likewise. - * fs/reiserfs.c: Likewise. - * efiemu/runtime/efiemu.c: Likewise. - * efiemu/main.c: Likewise. - * efiemu/mm.c: Likewise. - * include/grub/elf.h: Likewise. - * include/grub/xnu.h: Likewise. - * include/grub/usbdesc.h: Likewise. - * include/grub/usb.h: Likewise. - * include/grub/script_sh.h: Likewise. - * include/grub/lib/LzmaEnc.h: Likewise. - * include/grub/efiemu/efiemu.h: Likewise. - * include/grub/command.h: Likewise. - * normal/menu.c: Likewise. - * normal/main.c: Likewise. - * normal/datetime.c: Likewise. - * bus/usb/uhci.c: Likewise. - * mmap/i386/uppermem.c: Likewise. - * mmap/mmap.c: Likewise. - * commands/acpi.c: Likewise. - * commands/test.c: Likewise. - * partmap/apple.c: Likewise. - * font/font.c: Likewise. - * loader/sparc64/ieee1275/linux.c: Likewise. - * loader/macho.c: Likewise. - * loader/i386/bsd_trampoline.S: Likewise. - * loader/i386/bsd.c: Likewise. - * loader/xnu.c: Likewise. - * term/i386/pc/vesafb.c: Likewise. - * term/usb_keyboard.c: Likewise. - * util/resolve.c: Likewise. - * util/getroot.c: Likewise. - -2009-05-04 Felix Zielcke - - * conf/i386-pc.rmk (libpkg_DATA): Rename to pkglib_DATA. - -2009-05-04 Robert Millan - - * loader/i386/linux.c [GRUB_MACHINE_PCBIOS] (grub_cmd_linux): Fix - build error. - -2009-05-04 Robert Millan - - * loader/i386/linux.c (grub_cmd_linux): Make "vga=" compatibility - parameter only available on BIOS. - -2009-05-04 Vladimir Serbinenko - - Removed wrong semicolon in declaration - - * grub/misc.h (grub_dprintf): remove semicolon - -2009-05-04 Robert Millan - - * loader/i386/linux.c (GRUB_ASSUME_LINUX_HAS_FB_SUPPORT): New macro. - (grub_linux_boot): Don't check for `linux_vesafb_modes' bounds (this - is done by grub_cmd_linux() now). - [! GRUB_ASSUME_LINUX_HAS_FB_SUPPORT]: If "vga=" parameter wasn't set, - restore video to text mode. - (grub_cmd_linux): Default `vid_mode' initialization to 0, which - indicates lack of "vga=" parameter. "vga=0" is mapped to - `GRUB_LINUX_VID_MODE_NORMAL'. - -2009-05-04 Felix Zielcke - - * conf/i386-efi.rmk (grub_emu_SOURCES): Remove `normal/execute.c', - `normal/lexer.c', `kern/rescue.c', `normal/function.c', `normal/misc.c' - and `normal/script.c'. Add `kern/rescue_reader.c', - `kern/rescue_parser.c', `script/sh/main.c', `script/sh/execute.c', - `script/sh/function.c', `script/sh/lexer.c', `script/sh/script.c' and - `grub_script.tab.c'. - - * conf/i386-ieee1275.rmk (grub_emu_SOURCES): Likewise. - * conf/x86_64-efi.rmk (grub_emu_SOURCES): Likewise. - * conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Likewise. - * conf/i386-coreboot.rmk (grub_emu_SOURCES): Likewise. - * conf/sparc64-ieee1275.rmk (grub_emu_SOURCES): Likewise. - - * Makefile.in: Remove duplicated 2008 in Copyright line. - -2009-05-04 Robert Millan - - * util/misc.c (grub_util_warn): New function. Emits a warning - unconditionally. - * include/grub/util/misc.h (grub_util_warn): New declaration. - - * util/i386/pc/grub-install.in: Understand --force and pass it down - to grub-setup. - - * util/i386/pc/grub-setup.c (main): Understand --force and pass it - down to setup(). - (setup): Improve error messages and add warnings when requested to - install in odd layouts. Refuse to install using blocklists unless - --force was set. - -2009-05-04 martin f. krafft - - * disk/raid.c (grub_raid_scan_device): Improve debug message. - -2009-05-04 Vladimir Serbinenko - - Updated copyright year - - * fs/hfsplus.c: updated copyright year - -2009-05-04 Vladimir Serbinenko - - HFS+ UUID - - * fs/hfsplus.c (grub_hfsplus_volheader): added num_serial field - in the space previously used by unused3 - (grub_hfsplus_uuid): new function - (grub_hfsplus_fs): added uuid field - -2009-05-03 Pavel Roskin - - * disk/ata.c: Don't cast mod to void in GRUB_MOD_INIT to - suppress warnings. It's no longer needed. - * disk/host.c: Likewise. - * disk/ata_pthru.c: Likewise. - * disk/loopback.c: Likewise. - * hook/datehook.c: Likewise. - * parttool/pcpart.c: Likewise. - * fs/i386/pc/pxe.c: Likewise. - * fs/ntfscomp.c: Likewise. - * efiemu/main.c: Likewise. - * mmap/mmap.c: Likewise. - * commands/crc.c: Likewise. - * commands/hexdump.c: Likewise. - * commands/hdparm.c: Likewise. - * commands/acpi.c: Likewise. - * commands/echo.c: Likewise. - * commands/minicmd.c: Likewise. - * commands/blocklist.c: Likewise. - * commands/memrw.c: Likewise. - * commands/loadenv.c: Likewise. - * commands/usbtest.c: Likewise. - * commands/lsmmap.c: Likewise. - * commands/boot.c: Likewise. - * commands/parttool.c: Likewise. - * commands/configfile.c: Likewise. - * commands/search.c: Likewise. - * commands/ieee1275/suspend.c: Likewise. - * commands/cat.c: Likewise. - * commands/i386/pc/pxecmd.c: Likewise. - * commands/i386/pc/play.c: Likewise. - * commands/i386/pc/halt.c: Likewise. - * commands/i386/pc/vbeinfo.c: Likewise. - * commands/i386/pc/vbetest.c: Likewise. - * commands/lspci.c: Likewise. - * commands/date.c: Likewise. - * commands/handler.c: Likewise. - * commands/ls.c: Likewise. - * commands/test.c: Likewise. - * commands/cmp.c: Likewise. - * commands/efi/loadbios.c: Likewise. - * commands/efi/fixvideo.c: Likewise. - * commands/halt.c: Likewise. - * commands/help.c: Likewise. - * commands/reboot.c: Likewise. - * hello/hello.c: Likewise. - * script/sh/main.c: Likewise. - * loader/xnu.c: Likewise. - * term/terminfo.c: Likewise. - * term/i386/pc/serial.c: Likewise. - * term/usb_keyboard.c: Likewise. - -2009-05-03 David S. Miller - - * normal/menu.c: Include grub/parser.h - -2009-05-03 Pavel Roskin - - * mmap/efi/mmap.c (grub_mmap_malign_and_register): Return void*, - not char*. - * mmap/i386/mmap.c (grub_mmap_malign_and_register): Likewise. - Suggested by Javier Martín - - * util/i386/pc/grub-mkrescue.in: Allow for the case when - efiemu??.o doesn't exist. - * util/i386/pc/grub-install.in: Likewise. Use "cp -f" for - copying. - -2009-05-03 Bean Vladimir Serbinenko - - FreeBSD 64-bit support - - * conf/i386-pc.rmk (bsd_mod_SOURCES): add loader/i386/bsd_helper.S - and loader/i386/bsd_trampoline.S - (bsd_mod_ASFLAGS): new variable - * include/grub/i386/bsd.h (FREEBSD_MODINFOMD_SMAP): new definition - (FREEBSD_MODTYPE_KERNEL64): likewise - (grub_bsd64_trampoline_start): likewise - (grub_bsd64_trampoline_end): likewise - (grub_bsd64_trampoline_selfjump): likewise - (grub_bsd64_trampoline_gdt): likewise - * include/grub/i386/loader.h (grub_unix_real_boot): moved from here ... - * include/grub/i386/bsd.h (grub_unix_real_boot): ... moved here - * kern/i386/loader.S (grub_unix_real_boot): moved from here ... - * loader/i386/bsd_helper.S (grub_unix_real_boot): moved here - * include/grub/gpt_partition.h (grub_gpt_partentry): Corrected the type - of "attrib" member - * loader/i386/bsd_pagetable.c: new file - * loader/i386/bsd_trampoline.S: likewise - * loader/i386/bsd.c (ALIGN_QWORD): new macro - (ALIGN_VAR): likewise - (entry_hi): new variable - (kern_end_mdofs): likewise - (is_64bit): likewise - (grub_freebsd_add_meta): use ALIGN_VAR - (grub_e820_mmap): new declaration - (grub_freebsd_add_mmap): new function - (grub_freebsd_add_meta_module): support 64 bit kernels - (grub_freebsd_list_modules): use ALIGN_VAR - (gdt_descriptor): new declaration - (grub_freebsd_boot): support 64 bit kernels - (grub_bsd_elf64_hook): new function - (grub_bsd_load_elf): support elf64 - -2009-05-03 Bean - - * script/sh/execute.c (grub_script_execute_cmdif): Reset grub_errno - after we get the result of if statement. - -2009-05-03 Bean - - * Makefile.in (enable_efiemu): New variable. - - * conf/i386-pc.rmk: Only compile efiemu runtimes when enable_efiemu is - set. - (efiemu32.o): Use macro $< for source file, add $(srcdir) to include - path. - (efi64_c.o): Use macro $< for source file, add $(srcdir) to include - path, add -mno-red-zone option. - (efiemu64_s.o): Likewise. - (efiemu64.o): Use macro $^ for source file. - - * configure.ac (--enable-efiemu): New option. - -2009-05-03 Vladimir Serbinenko - - xnu support - - * conf/i386-efi.rmk (kernel_mod_HEADERS): added i386/pit.h - (pkglib_MODULES): add xnu.mod - (xnu_mod_SOURCES): new variable - (xnu_mod_CFLAGS): likewise - (xnu_mod_LDFLAGS): likewise - (xnu_mod_ASFLAGS): likewise - * conf/i386-pc.rmk: likewise - * conf/x86_64-efi.rmk: likewise - * include/grub/efi/efi.h (grub_efi_finish_boot_services): - new declaration - * include/grub/i386/macho.h: new file - * include/grub/i386/xnu.h: likewise - * include/grub/macho.h: likewise - * include/grub/machoload.h: likewise - * include/grub/x86_64/macho.h: likewise - * include/grub/x86_64/xnu.h: likewise - * include/grub/xnu.h: likewise - * kern/efi/efi.c (grub_efi_finish_boot_services): new function - * kern/efi/mm.c (MAX_HEAP_SIZE): increase - * loader/i386/efi/xnu.c: new file - * loader/i386/pc/xnu.c: likewise - * loader/i386/xnu.c: likewise - * loader/i386/xnu_helper.S: likewise - * loader/macho.c: likewise - * loader/xnu.c: likewise - * loader/xnu_resume.c: likewise - * util/grub-dumpdevtree: likewise - * include/grub/i386/pit.h: include grub/err.h - (grub_pit_wait): export - * util/grub.d/30_os-prober.in: support Darwin/Mac OS X - -2009-05-02 Vladimir Serbinenko - - Efiemu - - * conf/i386-pc.rmk: new modules efiemu, efiemu_acpi, efiemu_pnvram, - _linux_efi, linux_efi. - new files in grub-emu - new targets efiemu32.o and efiemu64.o - * loader/linux_normal_efiemu.c: likewise - * loader/i386/efi/linux.c: added preliminary efiemu support - * util/i386/pc/grub-install.in: add efiemu??.o to the list of - files to copy - * include/grub/autoefi.h: new file - * include/grub/i386/efiemu.h: likewise - * include/grub/i386/pc/efiemu.h: likewise - * include/grub/efi/api.h: add LL suffix when necessary - new definitions relating to tables - * include/grub/efiemu/efiemu.h: new file - * include/grub/efiemu/runtime.h: likewise - * efiemu/prepare.c: likewise - * efiemu/loadcore_common.c: likewise - * efiemu/loadcore64.c: likewise - * efiemu/runtime/efiemu.sh: likewise - * efiemu/runtime/efiemu.S: likewise - * efiemu/runtime/efiemu.c: likewise - * efiemu/runtime/config.h: likewise - * efiemu/prepare32.c: likewise - * efiemu/main.c: likewise - * efiemu/modules/pnvram.c: likewise - * efiemu/modules/i386: likewise - * efiemu/modules/i386/pc: likewise - * efiemu/modules/acpi.c: likewise - * efiemu/i386/pc/cfgtables.c: likewise - * efiemu/i386/loadcore64.c: likewise - * efiemu/i386/loadcore32.c: likewise - * efiemu/prepare64.c: likewise - * efiemu/loadcore.c: likewise - * efiemu/symbols.c: likewise - * efiemu/mm.c: likewise - * efiemu/loadcore32.c: likewise - -2009-05-02 Vladimir Serbinenko - - ACPI spoofing - - * commands/acpi.c: new file - * commands/i386/pc/acpi.c: likewise - * commands/efi/acpi.c: likewise - * include/grub/acpi.h: likewise - * conf/i386-pc.rmk (pkglib_MODULES): added acpi.mod - (acpi_mod_SOURCES): new variable - (acpi_mod_CFLAGS): likewise - (acpi_mod_LDFLAGS): likewise - * conf/i386-efi.rmk: likewise - * conf/x86_64-efi.rmk: likewise - -2009-05-02 Vladimir Serbinenko - - Missing part from mmap patch - - * mmap/efi/mmap.c (grub_machine_mmap_unregister): renamed to - (grub_mmap_unregister) - (grub_mmap_free_and_unregister): use grub_mmap_register - -2009-05-02 Vladimir Serbinenko - - Mmap services - - * loader/i386/efi/linux.c (grub_linux_boot): use grub_mmap_iterate - * loader/i386/linux.c (find_mmap_size): likewise - (allocate_pages): likewise - * loader/i386/multiboot.c (grub_get_multiboot_mmap_len): likewise - (grub_fill_multiboot_mmap): likewise - (grub_multiboot): use grub_mmap_get_lower and grub_mmap_get_upper - * loader/i386/pc/linux.c (grub_cmd_linux): use grub_mmap_get_lower - * include/grub/i386/bsd.h (OPENBSD_MMAP_AVAILABLE): new definition - (OPENBSD_MMAP_RESERVED): likewise - * include/grub/i386/pc/memory.h: include grub/memory.h - (grub_lower_mem): removed - (grub_upper_mem): likewise - (GRUB_MACHINE_MEMORY_ACPI): new definition - (GRUB_MACHINE_MEMORY_NVS): likewise - (GRUB_MACHINE_MEMORY_MAX_TYPE): likewise - (GRUB_MACHINE_MEMORY_HOLE): likewise - (grub_machine_mmap_register): likewise - (grub_machine_mmap_unregister): likewise - (grub_machine_get_upper): likewise - (grub_machine_get_lower): likewise - (grub_machine_get_post64): likewise - * include/grub/i386/efi/memory.h: new file - * include/grub/x86_64/efi/memory.h: likewise - * include/grub/efi/memory.h: likewise - * conf/i386-pc.rmk (pkglib_MODULES): added mmap.mod - (mmap_mod_SOURCES): new variable - (mmap_mod_LDFLAGS): likewise - (mmap_mod_ASFLAGS): likewise - * conf/i386-coreboot.rmk: likewise - * conf/i386-ieee1275.rmk: likewise - * conf/i386-efi.rmk: likewise - * conf/x86_64-efi.rmk: likewise - * include/grub/types.h (UINT_TO_PTR): new macro - (PTR_TO_UINT32): likewise - (PTR_TO_UINT64): likewise - * include/grub/memory.h: new file - * mmap/i386/pc/mmap.c: likewise - * mmap/i386/pc/mmap_helper.S: likewise - * mmap/i386/uppermem.c: likewise - * mmap/mmap.c: likewise - * mmap/efi/mmap.c: likewise - * kern/i386/coreboot/init.c (grub_machine_init): don't use - grub_upper_mem - * kern/i386/pc/init.c (grub_lower_mem): removed variable - (grub_upper_mem): likewise - (grub_machine_init): don't use grub_upper_mem, - make grub_lower_mem local - * loader/i386/bsd.c (grub_openbsd_boot): use grub_mmap_get_lower, - grub_mmap_iterate and grub_mmap_get_upper - (grub_netbsd_boot): use grub_mmap_get_lower and grub_mmap_get_upper - -2009-05-02 Bean - - * conf/common.rmk (grub_script.tab.c): Change normal/parser.y to - script/sh/parser.y. - (pkglib_MODULES): Add normal.mod and sh.mod. - (normal_SOURCES): New variable. - (normal_mod_CFLAGS): Likewise. - (normal_mod_LDFLAGS): Likewise. - (sh_mod_SOURCES): Likewise. - (sh_mod_CFLAGS): Likewise. - (sh_mod_LDFLAGS): Likewise. - - * conf/i386-pc.rmk (normal/lexer.c_DEPENDENCIES): Changed to - script/sh/lexer.c_DEPENDENCIES. - (kernel_img_SOURCES): Remove kern/rescue.c, and kern/reader.c, - kern/rescue_reader.c and kern/rescue_parser.c. - (kernel_img_HEADERS): Remove rescue.h, add reader.h. - (grub_emu_SOURCES): Change source files. - (pkglib_MODULES): Remove normal.mod. - (normal_SOURCES): Removed. - (normal_mod_CFLAGS): Likewise. - (normal_mod_LDFLAGS): Likewise. - * conf/i386-coreboot.rmk: Likewise. - * conf/i386-efi.rmk: Likewise. - * conf/i386-ieee1276.rmk: Likewise. - * conf/powerpc-ieee1275.rmk: Likewise. - * conf/sparc64-ieee1275.rmk: Likewise. - * conf/x86_64-efi.rmk: Likewise. - - * include/grub/command.h (grub_command_execute): New inline function. - - * include/grub/menu.h (grub_menu_entry): Removed commands field. - - * include/grub/normal.h: Remove . - (grub_fs_module_list): Moved to normal/autofs.c. - (grub_exit_env): Removed. - (grub_command_execute): Likewise. - (grub_normal_menu_addentry): Renamed to grub_menu_addentry, removed - parameter script. - (read_command_list): New function declaration. - (read_fs_list): Likewise. - - * include/parser.h: Include . - (grub_parser_split_cmdline): Change type of getline parameter. - (grub_parser): New structure. - (grub_parser_class): New variable. - (grub_parser_execute): New function declaration. - (grub_register_rescue_parser): Likewise. - (grub_parser_register): New inline function. - (grub_parser_unregister): Likewise. - (grub_parser_get_current): Likewise. - (grub_parser_set_current): Likewise. - - * include/grub/reader.h: New file. - * kern/reader.c: Likewise. - * kern/rescue_parser.c: Likewise. - * kern/rescue_reader.c: Likewise. - * normal/autofs.c: Likewise. - * normal/dyncmd.c: Likewise. - - * include/grub/rescue.h: Removed. - * normal/command.h: Likewise. - - * include/grub/script.h: Moved to ... - * include/grub/script_sh.h: ... Moved here. - * normal/execute.c: Moved to ... - * script/sh/execute.c: ... Moved here. - * normal/function.c: Moved to ... - * script/sh/function.c: ... Moved here. - * normal/lexer.c: Moved to ... - * script/sh/lexer.c: ... Moved here. - * normal/parser.y: Moved to ... - * script/sh/parser.y: ... Moved here. - * normal/script.c: Moved to ... - * script/sh/script.c: ... Moved here. - - * normal/main.c: Remove and , include - . - (grub_exit_env): Removed. - (fs_module_list): Moved to normal/autofs.c. - (grub_file_getline): Don't handle comment here. - (free_menu): Skip removed field entry->commands. - (grub_normal_menu_addentry): Removed as grub_menu_entry, removed - script parameter. - (read_config_file): Removed nested parameter, change getline function. - (grub_enter_normal_mode): Removed. - (grub_dyncmd_dispatcher): Moved to normal/dyncmd.c. - (read_command_list): Likewise. - (autoload_fs_module): Moved to normal/autofs.c. - (read_fs_list): Likewise. - (reader_nested): New variable. - (grub_normal_execute): Run parser.sh to switch to sh parser. - (grub_cmd_rescue): Removed. - (cmd_normal): Removed. - (grub_cmd_normal): Unregister itself at the beginning. Don't register - rescue command. - (grub_cmdline_run): New function. - (grub_normal_reader_init): Likewise. - (grub_normal_read_line): Likewise. - (grub_env_write_pager): Likewise. - (cmdline): New variable. - (grub_normal_reader): Likewise. - (GRUB_MOD_INIT): Register normal reader and set as current, register - pager hook, register normal command with grub_register_command_prio, - so that it won't show up in command.lst. - (GRUB_MOD_FINI): Unregister normal reader, unhook pager, clear - grub_fs_autoload_hook. - - * normal/menu.c: Remove , add . - (grub_menu_execute_entry): Replace grub_script_execute with - grub_parser_execute, change parameter to grub_command_execute. - - * normal/menu_text.c: Remove . - - * normal/menu_entry.c: Remove , add - and . - (run): Change editor_getline to use new parser interface. Change - parameter to grub_command_execute. - - * kern/main.c: Remove , include , - and . - (grub_load_normal_mode): Execute normal command. - (grub_main): Call grub_register_core_commands, - grub_register_rescue_parser and grub_register_rescue_reader, use - grub_reader_loop to enter input loop. - - * kern/parser.c (grub_parser_split_cmdline): Change type of - getline parameter. - (grub_parser_class): New variable. - (grub_parser_execute): New function. - - * loader/i386/multiboot.c: Remove . - * loader/multiboot2.c: Likewise. - * loader/sparc64/ieee1275/linux.c: Likewise. - - * util/grub-emu.c (read_command_list): New dummy function. - -2009-05-02 Robert Millan - - * util/deviceiter.c (grub_util_iterate_devices): Increase max drive - count to 16 for CCISS and IDA. - -2009-05-02 Robert Millan - - * normal/menu_text.c (grub_wait_after_message): Print a newline - after waiting for user input. - - * loader/i386/linux.c: Include `'. - (grub_cmd_linux): Improve the error message about `ask' mode, by - waiting for user input so it's not missed (we can do this, since - user requested interaction). - -2009-05-02 Vladimir Serbinenko - - Added missing lst to grub-mkrescue - - * util/i386/pc/grub-mkrescue.in: added ${input_dir}/handler.lst - and ${input_dir}/parttool.lst - -2009-04-30 David S. Miller - - * util/hostdisk.c (device_is_wholedisk): New function. - (grub_util_biosdisk_get_grub_dev): Shortcut when hdg.start is - zero only if device_is_wholedisk() returns true. - - * util/hostdisk.c (convert_system_partition_to_system_disk): - Handle virtual disk devices named /dev/vdiskX as found on sparc - and powerpc. - - * kern/sparc64/ieee1275/init.c (grub_machine_set_prefix): If - lettered partition specifier is found, convert to numbered. - -2009-04-29 David S. Miller - - * include/grub/powerpc/ieee1275/memory.h: Include ieee1275.h. - * include/grub/sparc64/ieee1275/memory.h: Likewise. - - * normal/command.c: Add missing newline at end of file. - - * commands/lsmmap.c (grub_cmd_lsmmap): Add casts to avoid printf - warnings. - * kern/ieee1275/openfw.c (grub_claimmap): Likewise. - * disk/ieee1275/ofdisk.c (grub_ofdisk_open, grub_ofdisk_close, - grub_ofdisk_read): Likewise, and deal similarly with the fact that - ihandles have a 32-bit type but need to be stored in a "void *". - -2009-04-28 Pavel Roskin - - * disk/fs_uuid.c (grub_fs_uuid_open): Use parent->data for dev, - not disk. Adjust all dependencies. - (grub_fs_uuid_close): Use grub_device_close(), not - grub_disk_close(). - - * disk/fs_uuid.c (grub_fs_uuid_open): Allocate memory to copy - parent's partition, don't copy it by reference, as it gets freed - on close. - -2009-04-27 Vladimir Serbinenko - - Preboot hooks support - - * commands/boot.c (struct grub_preboot_t): new declaration - (preboots_head): new variable - (preboots_tail): likewise - (grub_loader_register_preboot_hook): new function - (grub_loader_unregister_preboot_hook): likewise - (grub_loader_set): launch preboot hooks - * include/grub/loader.h (grub_loader_preboot_hook_prio_t): new type - (grub_loader_register_preboot_hook): new declaration - (grub_loader_unregister_preboot_hook): likewise - -2009-04-27 Vladimir Serbinenko - - Warning fix - - * disk/scsi.c (grub_scsi_open): added missing cast when - calling grub_dprintf - -2009-04-26 Vladimir Serbinenko - - Bug and warning fixes - - * include/grub/i386/pc/init.h (grub_stop_floppy): added missing - declaration - * commands/test.c (test_parse): fixed bug with file tests and corrected - declaration of find_file - -2009-04-26 Pavel Roskin - - * Makefile.in: Don't install empty manual pages if help2man is - missing. Use help2man option for output, not shell redirection. - -2009-04-26 David S. Miller - - * util/grub-mkdevicemap.c (make_device_map): Add missing - NESTED_FUNC_ATTR to process_device(). - -2009-04-25 Vladimir Serbinenko - - Test command - - * commands/test.c: rewritten to use bash-like test - -2009-04-25 Vladimir Serbinenko - - Parttool autoloading and improvements - - * Makefile.in (pkglib_DATA): add parttool.lst - (parttool.lst): new target - * genmk.rb: generate parttool-* - (CLEANFILES): add #{parttool} - (PARTTOOLFILES): new variable - * genparttoollist.sh: new file - * parttool/pcpart.c (grub_pcpart_boot): more feedback - (grub_pcpart_type): likewise - * commands/parttool.c (helpmsg): new variable - (grub_cmd_parttool): output help if not enough arguments are supplied - autoload modules - (GRUB_MOD_INIT(parttool)): use helpmsg - -2009-04-24 David S. Miller - - Avoiding opening same device multiple times in device iterator. - - * kern/device.c: (grub_device_iterate): Define struct part_ent, - and use it to build a list of partitions in iterate_disk() and - iterate_partition(). - - * disk/fs_uuid.c (grub_fs_uuid_close): Call grub_disk_close() - on disk->data. - - * disk/ieee1275/nand.c (grub_nand_iterate): Return - grub_devalias_iterate() result instead of unconditional 0. - * disk/ieee1275/ofdisk.c (grub_ofdisk_iterate): Likewise. - Also, capture hook return value, either directly or via - grub_children_iterate(), and propagate to caller. - * include/grub/ieee1275/ieee1275.h (grub_devalias_iterate, - grub_children_iterate): Return value is now 'int' instead of - 'grub_err_t'. - * kern/ieee1275/openfw.c (grub_children_iterate): Fix to behave - like a proper iterator, stopping when hooks return non-zero. - (grub_devalias_iterate): Likewise. - -2009-04-23 David S. Miller - - * kern/sparc64/ieee1275/openfw.c: Unused, delete. - -2009-04-22 David S. Miller - - * kern/ieee1275/mmap.c (grub_machine_mmap_iterate): If size_cells - is larger than address_cells, use that value for address_cells too. - - * include/grub/ieee1275/ieee1275.h (IEEE1275_MAX_PROP_LEN, - IEEE1275_MAX_PATH_LEN): Define. - * kern/ieee1275/openfw.c (grub_children_iterate): Dynamically - allocate 'childtype', 'childpath', 'childname', and 'fullname'. - (grub_devalias_iterate): Dynamically allocate 'aliasname' and - 'devtype'. Explicitly NULL terminate devalias expansion. - - * util/sparc64/ieee1275/misc.c: New file. - * util/sparc64/ieee1275/grub-setup.c: New file. - * util/sparc64/ieee1275/grub-ofpathname.c: New file. - * util/sparc64/ieee1275/grub-mkimage.c: New file. - * util/sparc64/ieee1275/grub-install.in: New file. - * util/ieee1275/ofpath.c: New file. - * util/ieee1275/devicemap.c: New file. - * util/devicemap.c: New file. - * util/deviceiter.c: New file. - * kern/sparc64/ieee1275/init.c: New file. - * include/grub/util/ofpath.h: New file. - * include/grub/util/deviceiter.h: New file. - * util/grub-mkdevicemap.c: Include deviceiter.h. - Implement using grub_util_emit_devicemap_entry and - grub_util_iterate_devices. - * conf/i386-corebook.rmk: Build util/deviceiter.c and - util/devicemap.c into grub-mkdevicemap - * conf/i386-efi.rmk: Likewise. - * conf/i386-ieee1275.rmk: Likewise. - * conf/i386-pc.rmk: Likewise. - * conf/powerpc-ieee1275.rmk: Likewise. - * conf/sparc64-ieee1275.rmk: Add rules to build boot block - images and installation utilities. Build kernel as image - instead of as elf binary. Use common rules as much as possible. - -2009-04-19 Vladimir Serbinenko - - Correct GPT definition - - * include/grub/gpt_partition.h (grub_gpt_partentry): Corrected the type - of "attrib" member - -2009-04-19 Felix Zielcke - - * INSTALL: Replace `autogen.sh' with `./autogen.sh'. - -2009-04-19 David S. Miller - - * loader/sparc64/ieee1275/linux.c: Include grub/command.h - (grub_rescue_cmd_linux): Rename to... - (grub_cmd_linux): and fix prototype. - (grub_rescue_cmd_initrd): Rename to... - (grub_cmd_initrd): and fix prototype. - (cmd_linux, cmd_initrd): New. - (GRUB_MOD_INIT(linux)): Use grub_register_command(). - (GRUB_MOD_FINI(linux): Use grub_unregister_command(). - -2009-04-17 Pavel Roskin - - * bus/usb/ohci.c (grub_ohci_transaction): Fix incorrect printf - format. - (grub_ohci_transfer): Likewise. - - * bus/usb/usbtrans.c (grub_usb_control_msg): Warning fix. - - * loader/multiboot_loader.c (grub_cmd_multiboot_loader): Fix - return without a value. Fix inconsistent indentation. - - * fs/i386/pc/pxe.c (grub_pxefs_dir): Fix function prototype to - match struct grub_fs. - - * disk/ata.c (grub_ata_pciinit): Use NESTED_FUNC_ATTR. - * bus/usb/ohci.c (grub_ohci_pci_iter): Likewise. - * bus/usb/uhci.c (grub_uhci_pci_iter): Likewise. - * commands/lspci.c (grub_lspci_iter): Likewise. - -2009-04-16 Bean - - * commands/efi/loadbios.c (grub_cmd_fakebios): Add missing return - value. - -2009-04-15 Pavel Roskin - - * include/grub/types.h: Rename ULONG_MAX to GRUB_ULONG_MAX and - LONG_MAX to GRUB_LONG_MAX. Introduce GRUB_LONG_MIN. Update all - users of ULONG_MAX, LONG_MAX and LONG_MIN to use the new - definitions. - -2009-04-15 Felix Zielcke - - * disk/lvm.c (grub_lvm_scan_device): Add `LVM' to the error messages, - that no multiple data or metadata areas are supported and `Unknown - metadata header'. - -2009-04-15 Vladimir Serbinenko - - Move loader out of the kernel - - * kern/loader.c: moved to ... - * commands/boot.c: ... moved here - * commands/minicmd.c (grub_mini_cmd_boot): moved to ... - * commands/boot.c (grub_cmd_boot): moved here. All users updated - * include/grub/kernel.h (grub_machine_fini): export - * include/grub/loader.h (grub_loader_is_loaded): update declaration - (grub_loader_set): likewise - (grub_loader_unset): likewise - (grub_loader_boot): likewise - * conf/common.rmk: new module boot.mod - (pkglib_MODULES): add boot.mod - * conf/i386-coreboot.rmk (kernel_elf_SOURCES): remove kern/loader.c - (grub_emu_SOURCES): likewise - * conf/i386-efi.rmk (kernel_elf_SOURCES): likewise - (grub_emu_SOURCES): likewise - * conf/i386-ieee1275.rmk (kernel_elf_SOURCES): likewise - (grub_emu_SOURCES): likewise - * conf/i386-pc.rmk (kernel_elf_SOURCES): likewise - (grub_emu_SOURCES): likewise - * conf/powerpc-ieee1275.rmk (kernel_elf_SOURCES): likewise - (grub_emu_SOURCES): likewise - * conf/sparc64-ieee1275.rmk (kernel_elf_SOURCES): likewise - (grub_emu_SOURCES): likewise - * conf/x86_64-efi.rmk (kernel_elf_SOURCES): likewise - (grub_emu_SOURCES): likewise - -2009-04-15 Vladimir Serbinenko - - use grub_lltoa instead of grub_itoa and grub_ltoa for all purposes - - * kern/misc.c (grub_itoa): Removed function - (grub_ltoa): likewise - (grub_vsprintf): use grub_lltoa - -2009-04-15 Vladimir Serbinenko - - Restore grub-emu - - * conf/i386-pc.rmk (grub_emu_SOURCES): add normal/handler.c - * conf/i386-coreboot.rmk: likewise - * conf/i386-ieee1275.rmk: likewise - * conf/powerpc-ieee1275.rmk: likewise - -2009-04-15 Felix Zielcke - - * INSTALL: Add that `./autogen.sh' needs to be run before - `./configure.'. - -2009-04-14 Bean - - * Makefile.in (pkglib_DATA): Add handler.lst. - (handler.lst): New rule. - - * conf/i386-pc.rmk (normal_mod_SOURCES): Add normal/handler.c. - * conf/i386-coreboot.rmk: Likewise. - * conf/i386-ieee1275.rmk: Likewise. - * conf/i386-efi.rmk: Likewise. - * conf/x86_64-efi.rmk: Likewise. - * conf/powerpc-ieee1275.rmk: Likewise. - * conf/sparc64-ieee1275.rmk: Likewise. - - * genhandlerlist.sh: New file. - - * genmk.rb: Add rules to generate handler.lst. - - * include/grub/normal.h (grub_file_getline): New function definition. - (read_handler_list): Likewise. - (free_handler_list): Likewise. - - * include/grub/term.h (grub_term_register_input): Add name parameter - for auto generation of handler.lst. - (grub_term_register_output): Likewise. - - * normal/handler.c: New file. - - * normal/main.c (get_line): Renamed to grub_file_getline. - (read_config_file): Use the newly renamed grub_file_getline. - (read_command_list): Likewise. - (read_fs_list): Likewise. - (grub_normal_execute): Call read_handler_list to parse handler.lst. - (GRUB_MOD_FINI): Call free_handler_list to free handler list. - - * term/efi/console.c (grub_console_init): Add name parameter for auto - generation of handler.lst. - * term/gfxterm.c: Likewise. - * term/i386/pc/at_keyboard.c: Likewise. - * term/i386/pc/console.c: Likewise. - * term/i386/pc/serial.c: Likewise. - * term/i386/pc/vesafb.c: Likewise. - * term/i386/pc/vga.c: Likewise. - * term/i386/pc/vga_text.c: Likewise. - * term/ieee1275/ofconsole.c: Likewise. - * term/usb_keyboard.c: Likewise. - -2009-04-14 Bean - - * util/grub-pe2elf.c (write_symbol_table): Terminate short name symbol - properly with null character. - -2009-04-14 Felix Zielcke - - * configure: Remove. - * config.h.in: Likewise. - * stamp-h.in: Likewise. - * DISTLIST: Likewise. - * conf/common.mk: Likewise. - * conf/i386-coreboot.mk: Likewise. - * conf/i386-efi.mk: Likewise. - * conf/i386-ieee1275.mk: Likewise. - * conf/i386.mk: Likewise. - * conf/i386-pc.mk: Likewise. - * conf/powerpc-ieee1275.mk: Likewise. - * conf/sparc64-ieee1275.mk: Likewise. - * conf/x86_64-efi.mk: Likewise. - - * INSTALL: Remove the sentence that Ruby and autoconf are only required if you - develop on GRUB. - -2009-04-14 John Stanley - David S. Miller - - * util/hostdisk.c (make_device_name): Fix buffer length - calculations. - -2009-04-14 Felix Zielcke - - * util/hostdisk.c [__FreeBSD__ || __FreeBSD_kernel__]: Include - and . - (open_device) [__FreeBSD__ || __FreeBSD_kernel_]: Use sysctlgetbyname() - to add 0x10 to `kern.geom.debugflags' if it's not already set, before - opening the device and reset them afterwards. - -2009-04-13 Pavel Roskin - - * conf/common.rmk (grub_fstest_SOURCES): Add normal/datetime.c. - Reported by John Stanley - -2009-04-13 Robert Millan - - * util/grub.d/10_freebsd.in: Detect Debian GNU/kFreeBSD and use - that name for menuentries when appropriate. - -2009-04-13 Felix Zielcke - - * util/grub.d/10_freebsd.in: Add a missing `fi'. - -2009-04-13 Robert Millan - - * loader/i386/linux.c (grub_cmd_linux): Don't pass `vga=ask' parameter - to Linux, simply abort telling the user it's no longer supported. - -2009-04-13 Felix Zielcke - - * util/grub.d/10_freebsd.in: Don't exit if /boot/devices.hints - doesn't exist. Check also for /boot/kernel/kernel.gz. Print - `freebsd_loadenv' only when devices.hints exist. - -2009-04-13 Pavel Roskin - - * term/usb_keyboard.c (grub_usb_keyboard_getkey): Warning fixes. - -2009-04-13 Felix Zielcke - - * util/i386/pc/grub-install.in (install_drive): Remove the BSD - partition number. - (grub_drive): Likewise. - -2009-04-13 David S. Miller - - * kern/sparc64/ieee1275/ieee1275.c: New file. - * include/grub/sparc64/ieee1275/ieee1275.h (IEEE1275_MAP_WRITE, - IEEE1275_MAP_READ, IEEE1275_MAP_EXEC, IEEE1275_MAP_LOCKED, - IEEE1275_MAP_CACHED, IEEE1275_MAP_SE, IEEE1275_MAP_GLOBAL, - IEEE1275_MAP_IE, IEEE1275_MAP_DEFAULT): Define. - (grub_ieee1275_map_physical, grub_ieee1275_claim_vaddr, - grub_ieee1275_alloc_physmem): Declare new exported functions. - - * include/grub/sparc64/ieee1275/loader.h: New file. - * include/grub/sparc64/ieee1275/memory.h: Likewise. - * include/grub/sparc64/kernel.h: Likewise. - * loader/sparc64/ieee1275/linux.c: Likewise. - - * conf/common.rmk (grub_probe_SOURCES): Add Sun partition module. - (grub_fstest_SOURCES): Likewise. - - * util/hostdisk.c (make_device_name): Do not make any assumptions - about the length of drive names. - - * kern/dl.c (grub_dl_load_file): Close file immediately when - we are done using it. - -2009-04-12 David S. Miller - - * kern/misc.c (grub_ltoa): Fix cast when handling negative - values. Noticed by Pavel Roskin. - - * configure.ac: Check for __bswapsi2 and__bswapdi2 using - target compiler. - - * genmk.rb: Add more flexible image type specification, also - pass --strip-unneeded to objcopy. - * conf/i386-pc.rmk: Use *_FORMAT. - * conf/i386-pc.mk: Rebuilt. - - * disk/ieee1275/ofdisk.c (struct ofdisk_hash_ent): New struct. - (OFDISK_HASH_SZ): Define. - (ofdisk_hash): New hash table. - (ofdisk_hash_fn, ofdisk_hash_find, ofdisk_hash_add): New functions. - (grub_ofdisk_open): Use ofdisk_hash_ent address as disk->id - instead of device phandle which is not unique. - - * kern/sparc64/ieee1275/init.c: Delete, replace with... - * kern/sparc64/ieee1275/crt0.S: assembler implementation. - * include/grub/sparc64/ieee1275/kernel.h: Declare grub_prefix[]. - (GRUB_MOD_ALIGN, GRUB_MOD_GAP, GRUB_KERNEL_MACHINE_TOTAL_MODULE_SIZE, - GRUB_KERNEL_MACHINE_KERNEL_IMAGE_SIZE, - GRUB_KERNEL_MACHINE_COMPRESSED_SIZE, GRUB_KERNEL_MACHINE_PREFIX, - GRUB_KERNEL_MACHINE_DATA_END): Define. - (grub_kernel_image_size, grub_total_module_size): Declare. - -2009-04-12 Pavel Roskin - - * configure.ac: Change the logic when we check for target tools. - Do it when the target is specified and it's different from the - specified value of the host. - -2009-04-11 Felix Zielcke - - * util/hostdisk.c [__FreeBSD_kernel__]: Include sys/disk.h. - (grub_util_biosdisk_open) [__FreeBSD_kernel__]: Add support for - GNU/kFreeBSD. Check if a device is a character device. Use - DIOCGMEDIASIZE to get the size. - (convert_system_partition_to_system_disk) [__FreeBSD_kernel__]: Add - support for GNU/kFreeBSD. - (grub_util_biosdisk_get_grub_dev) [__FreeBSD_kernel__]: Check if OS_DEV - is a character device instead of a block device. Add support for - FreeBSD device names. - - * util/getroot.c (find_root_device) [__FreeBSD_kernel__]: Check if ENT - is a character device instead of a block device. - - * util/grub-probe.c (probe) [__FreeBSD_kernel__]: Check if DEVICE_NAME - is a character device instead of a block device. - -2009-04-11 Andrey Shuvikov - - * util/hostdisk.c [__FreeBSD__]: Include sys/disk.h. - (grub_util_biosdisk_open) [__FreeBSD__]: Add support for - FreeBSD. Check if a device is a character device. Use - DIOCGMEDIASIZE to get the size. - (convert_system_partition_to_system_disk) [__FreeBSD__]: Add - support for FreeBSD. - (grub_util_biosdisk_get_grub_dev) [__FreeBSD__]: Check if OS_DEV - is a character device instead of a block device. Add support for - FreeBSD device names. - - * util/getroot.c (find_root_device) [__FreeBSD__]: Check if ENT is - a character device instead of a block device. - (grub_util_check_char_device): New function. - - * util/grub-probe.c (probe) [__FreeBSD__]: Check if DEVICE_NAME is - a character device instead of a block device. - - * include/grub/util/getroot.h (grub_util_check_char_device): New - prototype. - -2009-04-11 David S. Miller - - * conf/sparc64-ieee1275.rmk (kernel_img_LDFLAGS): Link with - static libgcc. - * configure.ac: Check for __bswapsi2 and __bswapdi2 presence. - * include/grub/sparc64/libgcc.h (__bswapsi2): Export libgcc - function, if present. - (__bswapdi2): Likewise. - - * include/grub/sparc64/ieee1275/boot.h: New file. - * boot/sparc64/ieee1275/boot.S: Likewise. - * boot/sparc64/ieee1275/diskboot.S: Likewise. - - * kern/misc.c (grub_ltoa): New function. - (grub_vsprintf): Use it to format 'long' integers. - -2009-04-10 David S. Miller - - * disk/ieee1275/nand.c (grub_nand_open): All ieee1275 call arg - slots are of type grub_ieee1275_cell_t. - (grub_nand_read): Likewise. - * kern/ieee1275/ieee1275.c (IEEE1275_PHANDLE_INVALID, - IEEE1275_IHANDLE_INVALID): Use grub_ieee1275_cell_t since these - macros are used to compare values in arg/ret block of the call. - (grub_ieee1275_finddevice, grub_ieee1275_get_property, - grub_ieee1275_next_property, grub_ieee1275_get_property_length, - grub_ieee1275_instance_to_package, grub_ieee1275_package_to_path, - grub_ieee1275_instance_to_path, grub_ieee1275_write, - grub_ieee1275_read, grub_ieee1275_seek, grub_ieee1275_peer, - grub_ieee1275_child, grub_ieee1275_parent, grub_ieee1275_open, - grub_ieee1275_close, grub_ieee1275_set_property, - grub_ieee1275_set_color): All ieee1275 call arg slots are of type - grub_ieee1275_cell_t. - * kern/ieee1275/openfw.c (grub_map): Likewise. - * include/grub/ieee1275/ieee1275.h (grub_ieee1275_ihandle_t, - grub_ieee1275_phandle_t): Define as grub_unit32_t type. - - * kern/ieee1275/init.c (grub_machine_init): Make 'actual' grub_ssize_t. - * kern/ieee1275/openfw.c (grub_children_iterate): Likewise. - (grub_devalias_iterate): Likewise. - -2009-04-10 Vladimir Serbinenko - - UFS improvements - - * fs/ufs.c (INODE_NBLOCKS): new definition - (struct grub_ufs_dirent): added fields for non-BSD dirents - (grub_ufs_get_file_block): fixed double indirect handling - (grub_ufs_lookup_symlink): use more robust way to determine whether - symlink is inline - (grub_ufs_find_file): support for non-BSD dirents - (grub_ufs_dir): support for non-BSD dirents - -2009-04-10 Bean - - * include/grub/efi/api.h (grub_efi_configuration_table): Add packed - attribute, otherwise the size would be wrong for i386 platform. - - * include/grub/pci.h (grub_pci_read_word): New inline function. - (grub_pci_read_byte): Likewise. - (grub_pci_write): Likewise. - (grub_pci_write_word): Likewise. - (grub_pci_write_byte): Likewise. - - * include/grub/pci.h (grub_pci_iteratefunc_t): Add NESTED_FUNC_ATTR. - - * loader/i386/efi/linux.c (fake_bios_data): Moved to loadbios module. - (find_framebuf): Scan pci to locate the frame buffer address. - - * commands/efi/fixvideo.c: New file. - - * commands/efi/loadbios.c: Likewise. - - * commands/memrw.c: Likewise. - - * util/grub-dumpbios.in: Likewise. - - * conf/common.rmk (grub-dumpbios): New utility. - (pkglib_MODULES): New module memrw.mod. - (memrw_mod_SOURCE): New macro. - (memrw_mod_CFLAGS): Likewise. - (memrw_mod_LDFLAGS): Likewise. - - * conf/i386-efi.rmk (pkglib_MODULES): New module loadbios.mod and - fixvideo.mod. - (loadbios_mod_SOURCE): New macro. - (loadbios_mod_CFLAGS): Likewise. - (loadbios_mod_LDFLAGS): Likewise. - (fixvideo_mod_SOURCE): Likewise. - (fixvideo_mod_CFLAGS): Likewise. - (fixvideo_mod_LDFLAGS): Likewise. - - * conf/x86_64.rmk (pkglib_MODULES): New module loadbios.mod and - fixvideo.mod. - (loadbios_mod_SOURCE): New macro. - (loadbios_mod_CFLAGS): Likewise. - (loadbios_mod_LDFLAGS): Likewise. - (fixvideo_mod_SOURCE): Likewise. - (fixvideo_mod_CFLAGS): Likewise. - (fixvideo_mod_LDFLAGS): Likewise. - -2009-04-08 Felix Zielcke - - * disk/lvm.c (grub_lvm_scan_device): Add a missing NULL check. - -2009-04-07 David S. Miller - - * kern/sparc64/dl.c (grub_arch_dl_relocate_symbols): Add - support for R_SPARC_OLO10 relocations. Fix compile warning for - R_SPARC_WDISP30 case. - * kern/sparc64/cache.S: Fix grub_arch_sync_caches implementation. - -2009-04-06 Pavel Roskin - - * include/grub/misc.h (ARRAY_SIZE): New macro. - * include/grub/i386/linux.h (GRUB_LINUX_VID_MODE_VESA_START): - New macro. - * loader/i386/linux.c (allocate_pages): Use free_pages(). - (grub_linux_unload): Don't use free_pages(). - (grub_linux_boot): Prevent accessing linux_vesafb_modes with a - wrong index. Treat all other modes as text modes. - (grub_cmd_linux): Initialize vid_mode unconditionally to - GRUB_LINUX_VID_MODE_NORMAL. Recognize and support "vga=ask". - - * commands/help.c (print_command_help): Use cmd->prio, not - cmd->flags to check for GRUB_PRIO_LIST_FLAG_ACTIVE. - -2009-04-06 Vladimir Serbinenko - - Parttool - - * parttool/pcpart.c: new file - * commands/parttool.c: likewise - * conf/common.rmk (pkglib_MODULES): Added parttool.mod and pcpart.mod - (parttool_mod_SOURCES): new variable - (parttool_mod_CFLAGS): likewise - (parttool_mod_LDFLAGS): likewise - (pcpart_mod_SOURCES): likewise - (pcpart_mod_CFLAGS): likewise - (pcpart_mod_LDFLAGS): likewise - * conf/i386-coreboot.rmk (grub_emu_SOURCES): added commands/parttool.c - and parttool/pcpart.c - * conf/i386-efi.rmk: likewise - * conf/i386-ieee1275.rmk: likewise - * conf/i386-pc.rmk: likewise - * conf/powerpc-ieee1275.rmk: likewise - * conf/sparc64-ieee1275.rmk: likewise - * conf/x86_64-ieee1275.rmk: likewise - -2009-04-05 Vladimir Serbinenko - - Support for mtime and further expandability of dir command - - * include/grub/lib/datetime.h: moved to ... - * include/grub/datetime.h: ... moved here and added - declaration of grub_unixtime2datetime. All users updated - * include/grub/fs.h: new syntax for dir and mtime functions in - struct grub_fs - * include/grub/fshelp.h: new declarations of GRUB_FSHELP_TYPE_MASK - and GRUB_FSHELP_FLAGS_MASK - * commands/ls.c (grub_ls_list_files): Write mtime in long format - * fs/ext2.c (grub_ext2_dir): use new dir syntax and supply mtime - (grub_ext2_mtime): new function - * fs/hfsplus.c (grub_hfsplus_dir): use new dir syntax and supply mtime - (grub_hfsplus_mtime): new function - * fs/ufs.c (GRUB_UFS_ATTR_TYPE): new definition - (GRUB_UFS_ATTR_FILE): likewise - (GRUB_UFS_ATTR_LNK): likewise - (struct grub_ufs_sblock): new fields mtime - (grub_ufs_read_inode): new parameter to read inode to a separate buffer - all users updated - (grub_ufs_dir): mtime support - (grub_ufs_mtime): new function - * fs/affs.c (grub_affs_dir): use new dir syntax - * fs/afs.c (grub_afs_dir): likewise - * fs/cpio.c (grub_cpio_dir): likewise - * fs/fat.c (grub_fat_find_dir): likewise - * fs/hfs.c (grub_hfs_dir): likewise - * fs/iso9660.c (grub_iso9660_dir): likewise - * fs/jfs.c (grub_jfs_dir): likewise - * fs/minix.c (grub_minix_dir): likewise - * fs/ntfs.c (grub_ntfs_dir): likewise - * fs/reiserfs.c (grub_reiserfs_dir): likewise - * fs/sfs.c (grub_sfs_dir): likewise - * fs/xfs.c (grub_xfs_dir): likewise - * util/hostfs.c (grub_hostfs_dir): likewise - * lib/datetime.c: moved to ... - * normal/datetime.c: ... moved here - (grub_unixtime2datetime): new function - * kern/rescue.c (grub_rescue_print_files): use new dir syntax - * normal/completion.c (iterate_dir): use new dir syntax - * normal/misc.c (grub_normal_print_device_info): tell the - last modification time of a volume - * kern/fs.c (grub_fs_probe): updated dummy function to use new syntax - * conf/common.rmk: added lib/datetime.c to ls.mod - * conf/i386-coreboot.rmk (grub_emu_SOURCES): add normal/datetime.c - (normal_mod_SOURCES): likewise - (datetime_mod_SOURCES): Removed lib/datetime.c - * conf/i386-efi.rmk: likewise - * conf/i386-ieee1275.rmk: likewise - * conf/i386-pc.rmk: likewise - * conf/powerpc-ieee1275.rmk: likewise - * conf/sparc64-ieee1275.rmk: likewise - * conf/x86_64-efi.rmk: likewise - -2009-04-05 Vladimir Serbinenko - - Trim trailing spaces in FAT label and support mtools-like labels - - * fs/fat.c (grub_fat_iterate_dir): New function based - on grub_fat_find_dir - (grub_fat_find_dir): use grub_fat_iterate_dir - (grub_fat_label): likewise - -2009-04-04 Vladimir Serbinenko - - * conf/powerpc-ieee1275.rmk (kernel_elf_HEADERS): add list.h - and command.h - remove extraneous kernel_elf_HEADERS - -2009-04-04 Bean - - * include/grub/util/misc.h: Add dummy function fsync for mingw. - - * util/misc.c: Likewise. - -2009-04-04 Yoshinori K. Okuji - - * loader/i386/efi/linux.c (fake_bios_data): Use grub_dprintf - instead of grub_printf. - -2009-04-03 Robert Millan - - * loader/i386/linux.c (grub_linux_setup_video): Fill - `params->{red,green,blue,reserved}_{mask_size,field_pos}' with - values from `mode info' structure instead of hardcoded - values. - -2009-04-01 Pavel Roskin - - * Makefile.in: Remove all references to MODULE_LDFLAGS, it's - unused now. - * genmk.rb: Likewise. - * configure.ac: Likewise. - -2009-04-01 Manoel Abranches - - * aclocal.m4: Move --build-id=none from MODULE_LDFLAGS to - TARGET_LDFLAGS. This corrects a problem with grub-mkelfimage. - -2009-04-01 David S. Miller - - * normal/sparc64/setjmp.S: Fix setjmp implementation. - * include/grub/sparc64/setjmp.h (grub_jmp_buf): Update. - (grub_setjmp): Mark with 'returns_twice' attribute. - * include/grub/i386/setjmp.h (grub_setjmp): Likewise - * include/grub/powerpc/setjmp.h (grub_setjmp): Likewise. - * include/grub/x86_64/setjmp.h (grub_setjmp): Likewise. - -2009-04-01 Robert Millan - - Reapply fix from 2008-07-28 which was accidentally reverted; also - perform the same fix to a similar check in same function. - - * disk/raid.c (grub_raid_scan_device): Do not abort when two disks - with the same number are found, just use issue a warning with - grub_dprintf(), as this error has been reported to be non-fatal. - -2009-03-31 Pavel Roskin - - * aclocal.m4 (grub_I386_CHECK_REGPARM_BUG): Provide safe default - for cross-compilation. - -2009-03-30 Robert Millan - - Fix i386-ieee1275 build. - - * include/grub/i386/ieee1275/loader.h (grub_multiboot2_real_boot): - Remove declaration. - -2009-03-30 Pavel Roskin - - * fs/hfs.c (grub_hfs_strncasecmp): Integrate into ... - (grub_hfs_cmp_catkeys): ... this. Don't assume strings to be - zero-terminated, rely only on the strlen value. Fix comparison - of strings differing in length. - -2009-03-30 Robert Millan - - * loader/i386/linux.c (grub_cmd_linux): Check for zImage before - checking for abi version. Improve error messages on BIOS to notify - user about `linux16' command. - -2009-03-29 Vladimir Serbinenko - - Leak fixes - - * kern/disk.c (grub_disk_cache_store): Invalidate previous cache - in case of collision - * disk/scsi.c (grub_scsi_open): free scsi in case of error - -2009-03-29 Robert Millan - - * loader/i386/linux.c (grub_cmd_linux): Parse "vga=" parameter and - set `vid_mode' accordingly. - (grub_linux_boot): Process `vid_mode' and set video mode. - -2009-03-29 Robert Millan - - * util/grub.d/10_linux.in (linux_entry): New function. - Factorize generation of Linux boot entries. - -2009-03-29 Yoshinori K. Okuji - - Make the format of Environment Block plain text. The boot loader - part is not tested well yet. - - * util/grub-editenv.c (DEFAULT_ENVBLK_SIZE): New macro. - (buffer): Removed. - (envblk): Likewise. - (usage): Remove "info" and "clear". Add "unset". Update the - description of "set", as this does not delete variables any - longer. - (create_envblk_file): Complete rewrite. - (open_envblk_file): Likewise. - (cmd_info): Removed. - (cmd_list): Likewise. - (cmd_set): Likewise. - (cmd_clear): Likewise. - (list_variables): New function. - (write_envblk): Likewise. - (set_variables): Likewise. - (unset_variables): Likewise. - (main): Complete rewrite. - - * commands/loadenv.c (buffer): Removed. - (envblk): Likewise. - (open_envblk_file): New function. - (read_envblk_file): Complete rewrite. - (grub_cmd_load_env): Likewise. - (grub_cmd_list_env): Likewise. - (struct blocklist): New struct. - (free_blocklists): New function. - (check_blocklists): Likewise. - (write_blocklists): Likewise. - (grub_cmd_save_env): Complete rewrite. - - * include/grub/lib/envblk.h (GRUB_ENVBLK_SIGNATURE): Replaced with - a plain text signature. - (GRUB_ENVBLK_MAXLEN): Removed. - (struct grub_envblk): Complete rewrite. - (grub_envblk_find): Removed. - (grub_envblk_insert): Likewise. - (grub_envblk_open): New prototype. - (grub_envblk_set): Likewise. - (grub_envblk_delete): Put const to VALUE. - (grub_envblk_iterate): Put const to NAME and VALUE. - (grub_envblk_close): New prototype. - (grub_envblk_buffer): New inline function. - (grub_envblk_size): Likewise. - - * lib/envblk.c: Include grub/mm.h. - (grub_env_find): Removed. - (grub_envblk_open): New function. - (grub_envblk_close): Likewise. - (escaped_value_len): Likewise. - (find_next_line): Likewise. - (grub_envblk_insert): Removed. - (grub_envblk_set): New function. - (grub_envblk_delete): Complete rewrite. - (grub_envblk_iterate): Likewise. - -2009-03-28 Robert Millan - - * conf/i386-pc.rmk (pkglib_MODULES): Add `linux16.mod'. - (linux16_mod_SOURCES, linux16_mod_CFLAGS, linux16_mod_LDFLAGS): New - variables. Use 16-bit loader. - (linux_mod_SOURCES, linux_mod_CFLAGS, linux_mod_LDFLAGS): Use 32-bit - loader. - * kern/i386/loader.S (grub_linux_boot): Rename to ... - (grub_linux16_boot): ... this. Update all users. - * loader/i386/linux.c (grub_linux32_boot): Rename to ... - (grub_linux_boot): ... this. Update all users. - - * loader/i386/pc/linux.c (GRUB_MOD_INIT(linux)): Rename to ... - (GRUB_MOD_INIT(linux16)): ... this. Rename `linux' and `initrd' - commands to `linux16' and `initrd16'. - (GRUB_MOD_FINI(linux)): Rename to ... - (GRUB_MOD_FINI(linux16)): ... this. - -2009-03-24 Pavel Roskin - - * genmk.rb: Define ASM_FILE for *.S files for *.lst generation, - not just for compilation. - -2009-03-22 Vladimir Serbinenko - - Move multiboot helper out of kernel - - * conf/i386-pc.rmk (multiboot_mod_SOURCES): Add - `loader/i386/multiboot_helper.S'. - * conf/i386-coreboot.rmk: Likewise - * conf/i386-ieee1275.rmk: Likewise - - * kern/i386/loader.S: Move multiboot helpers from here... - * loader/i386/multiboot_helper.S: ...moved here - * include/grub/i386/loader.h: Move declarations of multiboot - helpers from here... - * include/grub/i386/multiboot.h: ...moved here - * loader/i386/multiboot.c: Added include of grub/cpu/multiboot.h - -2009-03-22 Yoshinori K. Okuji - - * kern/env.c (grub_env_context_open): Added an argument to specify - whether a new context inherits exported variables from current - one. This is useful when making a sandbox to interpret a config - file. - All callers updated. - - * include/grub/env.h (grub_env_context_open): Updated the prototype. - -2009-03-22 Yoshinori K. Okuji - - * kern/env.c (grub_env_context_close): Fix memory leaks. - -2009-03-22 Yoshinori K. Okuji - - * normal/main.c (grub_normal_execute): Added an argument - BATCH to specify if an interactive interface should be provided - after reading a config file. - All callers updated. - (read_command_list): Prevent being executed twice. - (read_fs_list): Likewise. - - * include/grub/normal.h (grub_normal_execute): Updated the - prototype. - -2009-03-22 Pavel Roskin - - * kern/powerpc/ieee1275/startup.S: Replace EXT_C(start) with - _start. - * kern/i386/pc/startup.S: Likewise. - * kern/i386/efi/startup.S: Likewise. - * kern/i386/ieee1275/startup.S: Likewise. - * kern/i386/coreboot/startup.S: Likewise. - * kern/x86_64/efi/startup.S: Likewise. - - * aclocal.m4 (grub_CHECK_START_SYMBOL): Remove. - * configure.ac: Don't call grub_CHECK_START_SYMBOL. - * kern/i386/pc/startup.S: Use _start instead of START_SYMBOL. - -2009-03-21 Vladimir Serbinenko - - Bugfixes in multiboot for bugs uncovered by solaris kernel. - - * loader/i386/multiboot_elfxx.c (grub_multiboot_load_elf): Corrected - limit detection. - Use vaddr of correct segment for entry_point. - -2009-03-21 Bean - - * commands/blocklist.c: Add include file , remove - and . - (grub_cmd_blocklist): Use the new command interface. - (GRUB_MOD_INIT): Likewise. - (GRUB_MOD_FINI): Likewise. - * commands/boot.c: Likewise. - * commands/cat.c: Likewise. - * commands/cmp.c: Likewise. - * commands/configfile.c: Likewise. - * commands/crc.c: Likewise. - * commands/echo.c: Likewise. - * commands/halt.c: Likewise. - * commands/handler.c: Likewise. - * commands/hdparm.c: Likewise. - * commands/help.c: Likewise. - * commands/hexdump.c: Likewise. - * commands/loadenv.c: Likewise. - * commands/ls.c: Likewise. - * commands/lsmmap.c: Likewise. - * commands/lspci.c: Likewise. - * commands/loadenv.c: Likewise. - * commands/read.c: Likewise. - * commands/reboot.c: Likewise. - * commands/search.c: Likewise. - * commands/sleep.c: Likewise. - * commands/test.c: Likewise. - * commands/usbtest.c: Likewise. - * commands/videotest.c: Likewise. - * commands/i386/cpuid.c: Likewise. - * commands/i386/pc/halt.c: Likewise. - * commands/i386/pc/play.c: Likewise. - * commands/i386/pc/pxecmd.c: Likewise. - * commands/i386/pc/vbeinfo.c: Likewise. - * commands/i386/pc/vbetest.c: Likewise. - * commands/ieee1275/suspend.c: Likewise. - * disk/loopback.c: Likewise. - * font/font_cmd.c: Likewise. - * hello/hello.c: Likewise. - * loader/efi/appleloader.c: Likewise. - * loader/efi/chainloader.c: Likewise. - * loader/i386/bsd.c: Likewise. - * loader/i386/efi/linux.c: Likewise. - * loader/i386/ieee1275/linux.c: Likewise. - * loader/i386/linux.c: Likewise. - * loader/i386/pc/chainloader.c: Likewise. - * loader/i386/pc/linux.c: Likewise. - * loader/powerpc/ieee1275/linux.c: Likewise. - * loader/multiboot_loader.c: Likewise. - * term/gfxterm.c: Likewise. - * term/i386/pc/serial.c: Likewise. - * term/terminfo.c: Likewise. - - * term/i386/pc/vesafb.c: Removed . - * term/i386/pc/vga.c: Likewise. - * video/readers/jpeg.c: Likewise. - * video/readers/png.c: Likewise. - * video/readers/tga.c: Likewise. - - * util/grub-fstest (cmd_loopback): Removed. - (cmd_blocklist): Likewise. - (cmd_ls): Likewise. - (grub_register_command): Likewise. - (grub_unregister_command): Likewise. - (execute_command): Use grub_command_find to locate command and execute - it. - - * include/grub/efi/chainloader.h: Removed. - * loader/efi/chainloader_normal.c: Likewise. - * loader/i386/bsd_normal.c: Likewise. - * loader/i386/pc/chainloader_normal.c: Likewise. - * loader/i386/pc/multiboot_normal.c: Likewise. - * loader/linux_normal.c: Likewise. - * loader/multiboot_loader_normal.c: Likewise. - * loader/powerpc/ieee1275/linux_normal.c: Likewise. - - * gencmdlist.sh: Scan new registration command grub_register_extcmd - and grub_register_command_p1. - - * conf/common.rmk (grub_fstest_SOURCES): Add kern/list.c, - kern/command.c, lib/arg.c and commands/extcmd.c. - (pkglib_MODULES): Remove boot.mod, and minicmd.mod and extcmd.mod. - (minicmd_mod_SOURCES): New variable. - (minicmd_mod_CFLAGS): Likewise. - (minicmd_mod_LDFLAGS): Likewise. - (extcmd_mod_SOURCES): Likewise. - (extcmd_mod_CFLAGS): Likewise. - (extcmd_mod_LDFLAGS): Likewise. - (boot_mod_SOURCES): Removed. - (boot_mod_CFLAGS): Likewise. - (boot_mod_LDFLAGS): Likewise. - - * conf/i386-pc.rmk (kernel_img_SOURCES): Add kern/command.c and - kern/corecmd.c. - (kernel_img_HEADERS): Add command.h. - (grub_emu_SOURCES): Remove commands/boot.c and normal/arg.c, add - commands/minicmd.c, kern/command.c, kern/corecmd.c, commands/extcmd.c - and lib/arg.c. - (pkglib_MODULES): Change _linux.mod, _chain.mod, _bsd.mod and - _multiboot.mod as linux.mod, chain.mod, bsd.mod and multiboot.mod, - remove the corresponding normal mode command. - (normal_mod_SOURCES): Remove normal/arg.c. - * conf/i386-coreboot.rmk: Likewise. - * conf/i386-efi.rmk: Likewise. - * conf/i386-ieee1275.rmk: Likewise. - * conf/powerpc-ieee1275.rmk: Likewise. - * conf/x86_64-efi.rmk: Likewise. - - * include/grub/arg.h: Move from here ... - * include/grub/lib/arg.h: ... to here. - - * normal/arg.c: Move from here ... - * lib/arg.c: ... to here. - - * commands/extcmd.c: New file. - * commands/minicmd.c: Likewise. - * include/grub/command.h: Likewise. - * include/grub/extcmd.h: Likewise. - * kern/command.c: Likewise. - * kern/corecmd.c: Likewise. - - * kern/list.c (grub_list_iterate): Return int instead of void. - (grub_list_insert): New function. - (grub_prio_list_insert): Likewise. - - * kern/rescue.c (grub_rescue_command): Removed. - (grub_rescue_command_list): Likewise. - (grub_rescue_register_command): Likewise. - (grub_rescue_unregister_command): Likewise. - (grub_rescue_cmd_boot): Move to minicmd.c - (grub_rescue_cmd_help): Likewise. - (grub_rescue_cmd_info): Likewise. - (grub_rescue_cmd_boot): Likewise. - (grub_rescue_cmd_testload): Likewise. - (grub_rescue_cmd_dump): Likewise. - (grub_rescue_cmd_rmmod): Likewise. - (grub_rescue_cmd_lsmod): Likewise. - (grub_rescue_cmd_exit): Likewise. - (grub_rescue_print_devices): Moved to corecmd.c. - (grub_rescue_print_files): Likewise. - (grub_rescue_cmd_ls): Likewise. - (grub_rescue_cmd_insmod): Likewise. - (grub_rescue_cmd_set): Likewise. - (grub_rescue_cmd_unset): Likewise. - (attempt_normal_mode): Use grub_command_find to get normal module. - (grub_enter_rescue_mode): Use grub_register_core_commands to register - commands, remove grub_rescue_register_command calls. - - * normal/command.c (grub_register_command): Removed. - (grub_unregister_command): Likewise. - (grub_command_find): Likewise. - (grub_iterate_commands): Likewise. - (rescue_command): Likewise. - (export_command): Moved to corecmd.c. - (set_command): Removed. - (unset_command): Likewise. - (insmod_command): Likewise. - (rmmod_command): Likewise. - (lsmod_command): Likewise. - (grub_command_init): Likewise. - - * normal/completion.c (iterate_command): Use cmd->prio to check for - active command. - (complete_arguments): Use grub_extcmd_t structure to find options. - (grub_normal_do_completion): Change function grub_iterate_commands to - grub_command_iterate. - - * normal/execute.c (grub_script_execute_cmd): No need to parse - argument here. - - * normal/main.c (grub_dyncmd_dispatcher): New function. - (read_command_list): Register unload commands as dyncmd. - (grub_cmd_normal): Use new command interface, register rescue, - unregister normal at entry, register normal, unregister rescue at exit. - - * include/grub/list.h (grub_list_test_t): New type. - (grub_list_iterate): Return int instead of void. - (grub_list_insert): New function. - (GRUB_AS_NAMED_LIST_P): New macro. - (GRUB_AS_PRIO_LIST): Likewise. - (GRUB_AS_PRIO_LIST_P): Likewise. - (GRUB_PRIO_LIST_PRIO_MASK): New constant. - (GRUB_PRIO_LIST_FLAG_ACTIVE): Likewise. - (grub_prio_list): New structure. - (grub_prio_list_insert): New function. - (grub_prio_list_remove): New inline function. - - * include/grub/normal.h: Remove , add . - (GRUB_COMMAND_FLAG_CMDLINE): Moved to command.h. - (GRUB_COMMAND_FLAG_MENU): Likewise. - (GRUB_COMMAND_FLAG_BOTH): Likewise. - (GRUB_COMMAND_FLAG_TITLE): Likewise. - (GRUB_COMMAND_FLAG_NO_ECHO): Likewise. - (GRUB_COMMAND_FLAG_NO_ARG_PARSE): Removed. - (GRUB_COMMAND_FLAG_NOT_LOADED): Likewise. - (grub_command): Likewise. - (grub_register_command): Likewise. - (grub_command_find): Likewise. - (grub_iterate_commands): Likewise. - (grub_command_init): Likewise. - (grub_arg_parse): Likewise. - (grub_arg_show_help): Likewise. - - * include/grub/rescue.h (grub_rescue_register_command): Removed. - (grub_rescue_unregister_command): Likewise. - - * include/grub/i386/bsd.h: Remove grub_rescue_cmd_freebsd, - grub_rescue_cmd_openbsd, grub_rescue_cmd_netbsd, - grub_rescue_cmd_freebsd_loadenv and grub_rescue_cmd_freebsd_module. - - * include/grub/i386/efi/loader.h: Remove grub_rescue_cmd_linux and - grub_rescue_cmd_initrd. - * include/grub/i386/loader.h: Likewise. - * include/grub/x86_64/loader.h: Likewise. - - * include/grub/i386/pc/chainloader.h: Remove grub_chainloader_cmd. - -2009-03-21 Bean - - * util/hostdisk.c (read_device_map): Use grub_util_get_disk_size - instead of stat in mingw environment. - - * util/misc.c (grub_millisleep): Use Sleep in mingw environment. - - * aclocal.m4 (grub_CHECK_LINK_DIR): New function. - - * configure.ac: Use grub_CHECK_LINK_DIR to determine whether to use - AC_CONFIG_LINKS. - -2009-03-21 Bean - - * fs/ext2.c (grub_ext2_mount): Change errno to GRUB_ERR_BAD_FS for - out of range error. - -2009-03-18 Michel Dänzer - - * fs/ext2.c (grub_ext2_read_block): Take endianness into account when - checking inode flags for EXT4_EXTENTS_FLAG. - -2009-03-18 Robert Millan - - * loader/i386/linux.c: Include `' and - `'.. - (grub_linux_setup_video): New function. Loosely based on the EFI one. - (grub_linux32_boot): Attempt to configure video settings with - grub_linux_setup_video(). - (grub_rescue_cmd_linux): Set noreturn=0 in grub_loader_set, in order - to avoid grub_console_fini() which would step out of graphical mode - unconditionally. - -2009-03-14 Robert Millan - - Fix build on powerpc. - * conf/powerpc-ieee1275.rmk (kernel_elf_HEADERS): Add `handler.h'. - -2009-03-12 Vladimir Serbinenko - - * term/gfxterm.c (GRUB_MOD_FINI(term_gfxterm)): Correct name of - background image command. - -2009-03-12 Colin D Bennett - - * term/gfxterm.c (draw_cursor): Ensure character is redrawn. - (grub_gfxterm_putchar): Extract pairs of identical calls to - draw_cursor out of conditional blocks. - -2009-03-11 Pavel Roskin - - * fs/hfs.c (grub_hfs_strncasecmp): New function. - (grub_hfs_cmp_catkeys): Use HFS specific string comparison. - -2009-03-11 Robert Millan - - * loader/i386/multiboot_elfxx.c - (CONCAT(grub_multiboot_load_elf, XX)): Do not reject ET_DYN files. - -2009-03-11 Felix Zielcke - - * conf/powerpc-ieee1275.rmk (kernel_elf_SOURCES): Add `kern/list.c' and - `kern/handler.c'. - -2009-03-11 Robert Millan - - * loader/i386/multiboot.c (code_size): New variable. - (grub_multiboot): Define offsets by adding to `code_size' rather - than subtracting from `grub_multiboot_payload_size'. Provide - 4-byte alignment to MBI and others by increasing - `boot_loader_name_length' appropriately. - - * loader/i386/multiboot_elfxx.c - (CONCAT(grub_multiboot_load_elf, XX)): Initialize `code_size'. - -2009-03-09 Felix Zielcke - - * conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Remove duplicated - `fs/ext2.c'. - -2009-03-08 Robert Millan - - Make loader/i386/linux.c usable on i386-pc again. - - * kern/i386/pc/init.c (grub_machine_init): Disable addition of low - memory to heap. - * loader/i386/linux.c [GRUB_MACHINE_PCBIOS] (allocate_pages): Remove - `#error' stanza. - -2009-03-07 Bean - - * loader/i386/efi/linux.c (grub_rescue_cmd_initrd): Fix a bug in initrd - allocation. - -2009-03-06 Robert Millan - - Fix display issue on terminals with screen size other than 80x25 - (e.g. gfxterm with resolution higher than 640x480). - - * normal/main.c (grub_normal_init_page): Display title text in a - position relative to the center of the terminal instead of relying - on a hardcoded offset. - -2009-03-04 Robert Millan - - Filter /etc/grub.d/10_* so that only add-ons for native kernels are - installed. - - * Makefile.in (host_kernel): New variable. - * conf/common.rmk (grub-mkconfig_SCRIPTS): Conditionalize all 10_*.in - scripts instead of just the windows one. - * configure.ac: Initialize and AC_SUBST `host_kernel'. - -2009-03-04 Felix Zielcke - - * conf/i386-pc.rmk (grub_emu_SOURCES): Add `kern/list.c' and - `kern/handler.c'. - * conf/i386-efi.rmk (grub_emu_SOURCES): Likewise. - * conf/x86_64-efi.rmk (grub_emu_SOURCES): Likewise. - * conf/i386-coreboot.rmk (grub_emu_SOURCES): Likewise. - * conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Likewise. - * conf/sparc64-ieee1275.rmk (grub_emu_SOURCES): Likewise. - * conf/i386-ieee1275.rmk (grub_emu_SOURCES): Likewise. - -2009-03-04 Felix Zielcke - - * partmap/pc.c (pc_partition_map_iterate): Skip over invalid BSD partitions - or if there's no space for the disk label and print the partition number on a - invalid magic. - -2009-03-04 Felix Zielcke - - * util/misc.c: Include . - (grub_millisleep): New function. - -2009-03-04 Bean - - * configure.ac: Only test -mcmodel=large option in x86_64-efi, also add - another option -mno-red-zone. - - * commands/handler.c: Change module description. - - * kern/handler.c: Add missing space at the end of description line. - - * kern/list.c: Likewise. - -2009-03-03 Robert Millan - - Move more components to the relocation area, and fix mbi pointer - handling to use the destination rather than the origin (thanks to - Vladimir Serbinenko for spotting). - - * loader/i386/multiboot.c (mbi_dest): New variable. - (grub_multiboot_boot): Use `mbi_dest' instead of `mbi'. - (grub_multiboot): Put cmdline, boot_loader_name and mbi in the - relocation area. - -2009-03-01 Bean - - * include/grub/efi/api.h (GRUB_EFI_MPS_TABLE_GUID): New constant. - (GRUB_EFI_ACPI_TABLE_GUID): Likewise. - (GRUB_EFI_ACPI_20_TABLE_GUID): Likewise. - (GRUB_EFI_SMBIOS_TABLE_GUID): Likewise. - - * loader/i386/efi/linux.c (acpi_guid): New variable. - (acpi_guid): Likewise. - (EBDA_SEG_ADDR): New constant. - (LOW_MEM_ADDR): Likewise. - (FAKE_EBDA_SEG): Likewise. - (fake_bios_data): New function. - (grub_linux_boot): Call fake_bios_data. - -2009-03-01 Bean - - * commands/terminal.c: Removed. - - * commands/handler.c: New file. - - * include/grub/list.h: Likewise. - - * include/grub/handler.h: Likewise. - - * kern/list.c: Likewise. - - * kern/handler.c: Likewise. - - * kern/term.h: Include header file . - (grub_term_input): Move next field to the beginning. - (grub_term_output): Likewise. - (grub_term_input_class): New variable. - (grub_term_output_class): Likewise. - (grub_term_register_input): Changed to inline function. - (grub_term_register_output): Likewise. - (grub_term_unregister_input): Likewise. - (grub_term_unregister_output): Likewise. - (grub_term_set_current_input): Likewise. - (grub_term_set_current_output): Likewise. - (grub_term_get_current_input): Likewise. - (grub_term_get_current_output): Likewise. - (grub_term_iterate_input): Removed. - (grub_term_iterate_output): Likewise. - - * kern/term.c (grub_term_list_input): Removed. - (grub_term_list_output): Likewise. - (grub_term_input_class): New variable. - (grub_term_output_class): Likewise. - (grub_cur_term_input): Change variable as macro. - (grub_cur_term_output): Likewise. - (grub_term_register_input): Removed. - (grub_term_register_output): Likewise. - (grub_term_unregister_input): Likewise. - (grub_term_unregister_output): Likewise. - (grub_term_set_current_input): Likewise. - (grub_term_set_current_output): Likewise. - (grub_term_iterate_input): Likewise. - (grub_term_iterate_output): Likewise. - (grub_term_get_current_input): Likewise. - (grub_term_get_current_output): Likewise. - - * util/grub-editenv.c: Include header file . - (grub_term_get_current_input): Removed. - (grub_term_get_current_output): Likewise. - (grub_term_input_class): New variable. - (grub_term_output_class): Likewise. - - * util/grub-fstest.c (grub_term_get_current_input): Removed. - (grub_term_get_current_output): Likewise. - (grub_term_input_class): New variable. - (grub_term_output_class): Likewise. - - * util/grub-probe.c (grub_term_get_current_input): Removed. - (grub_term_get_current_output): Likewise. - (grub_term_input_class): New variable. - (grub_term_output_class): Likewise. - - * util/i386/pc/grub-setup.c (grub_term_get_current_input): Removed. - (grub_term_get_current_output): Likewise. - (grub_term_input_class): New variable. - (grub_term_output_class): Likewise. - - * conf/common.rmk (pkglib_MODULES): Replace terminal with handler. - (terminal_mod_SOURCES): Likewise. - (terminal_mod_CFLAGS): Likewise. - (terminal_mod_LDFLAGS): Likewise. - - * conf/i386-pc.rmk (grub_emu_SOURCES): Replace terminal.c with - handler.c. - (kernel_img_SOURCES): Add list.c and handler.c. - (kernel_img_HEADERS): Add list.h and handler.h. - - * conf/i386-efi.rmk (grub_emu_SOURCES): Replace terminal.c with - handler.c. - (kernel_mod_SOURCES): Add list.c and handler.c. - (kernel_mod_HEADERS): Add list.h and handler.h. - - * conf/i386-coreboot.rmk (grub_emu_SOURCES): Replace terminal.c with - handler.c. - (kernel_elf_SOURCES): Add list.c and handler.c. - (kernel_elf_HEADERS): Add list.h and handler.h. - - * conf/i386-ieee1275.rmk (grub_emu_SOURCES): Replace terminal.c with - handler.c. - (kernel_elf_SOURCES): Add list.c and handler.c. - (kernel_elf_HEADERS): Add list.h and handler.h. - - * conf/x86_64-efi.rmk (grub_emu_SOURCES): Replace terminal.c with - handler.c. - (kernel_mod_SOURCES): Add list.c and handler.c. - (kernel_mod_HEADERS): Add list.h and handler.h. - - * conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Replace terminal.c with - handler.c. - (kernel_elf_SOURCES): Add list.c and handler.c. - (kernel_elf_HEADERS): Add list.h and handler.h. - -2009-02-27 Robert Millan - - Factorize elf32 / elf64 code in Multiboot loader. This will - prevent it from getting out of sync again. - - * loader/i386/multiboot.c (grub_multiboot_is_elf32, - grub_multiboot_load_elf32, grub_multiboot_is_elf64, - grub_multiboot_load_elf64): Move from here ... - * loader/i386/multiboot_elfxx.c (grub_multiboot_is_elf, - grub_multiboot_load_elf): ... to here (new file). - -2009-02-27 Robert Millan - - * util/grub.d/10_linux.in: Rename "single-user mode" to - "recovery mode". - -2009-02-27 Vladimir Serbinenko - - Don't leak in SCSI code. - * disk/scsi.c (grub_scsi_close): free `scsi'. - -2009-02-27 Robert Millan - - * loader/i386/pc/multiboot.c: Move from here ... - * loader/i386/multiboot.c: ... to here. Update all users. - -2009-02-27 Robert Millan - - Patch from Alexandre Bique - * util/i386/pc/grub-setup.c (setup): Fix directory path. - -2009-02-27 Krzysztof Smiechowicz - - * fs/sfs.c (grub_sfs_read_extent): Correction to traversing extent - b-tree. - -2009-02-27 Robert Millan - - * kern/misc.c (grub_strtoull): Fix bug (it mistakenly parsed the - `0x' qualifier as 0 when base is specified as parameter). - -2009-02-24 Bean - - * configure.ac: Check for -mcmodel=large in x86_64 target. - - * include/grub/efi/api.h (efi_call_10): New macro. - (efi_wrap_10): New function. - - * include/grub/efi/pe32.h (GRUB_PE32_REL_BASE_HIGH): New macro. - (GRUB_PE32_REL_BASED_HIGH): Likewise. - (GRUB_PE32_REL_BASED_LOW): Likewise. - (GRUB_PE32_REL_BASED_HIGHLOW): Likewise. - (GRUB_PE32_REL_BASED_HIGHADJ): Likewise. - (GRUB_PE32_REL_BASED_MIPS_JMPADDR): Likewise. - (GRUB_PE32_REL_BASED_SECTION): Likewise. - (GRUB_PE32_REL_BASED_REL): Likewise. - (GRUB_PE32_REL_BASED_IA64_IMM64): Likewise. - (GRUB_PE32_REL_BASED_DIR64): Likewise. - (GRUB_PE32_REL_BASED_HIGH3ADJ): Likewise. - - * kern/x86_64/dl.c (grub_arch_dl_relocate_symbols): Fixed relocation - issue. - - * kern/x86_64/efi/callwrap.S (efi_wrap_6): Bug fix. - (efi_wrap_10): New function. - - * kern/x86_64/efi/startup.S (codestart): Use relative addressing. - - * loader/efi/appleloader.c (devpath_5): Add support for late 2008 - MB/MBP model (NV chipset). - (devdata_devs): Add devpath_5 to the list. - - * load/i386/efi/linux.c (video_base): Remove variable. - (RGB_MASK): New macro. - (RGB_MAGIC): Likewise. - (LINE_MIN): Likewise. - (LINE_MAX): Likewise. - (FBTEST_STEP): Likewise. - (FBTEST_COUNT): Likewise. - (fb_list): New variable. - (grub_find_video_card): Remove function. - (find_framebuf): New function. - (grub_linux_setup_video): Use find_framebuf to get frame buffer and - line length. - - * util/i386/efi/grub-mkimage.c (grub_reloc_section): Fix relocation - problem for x86_64. - -2009-02-22 Vesa Jääskeläinen - - Patch #25624 by Kevin Lacquement . - - * util/grub-mkconfig.in: Use ${grub_mkdevicemap} instead of hard - coding tool name. - -2009-02-22 Robert Millan - - * include/multiboot.h (MULTIBOOT_INFO_ALIGN): New macro. - * loader/i386/pc/multiboot.c (grub_multiboot): Include the MBI - in our relocation, instead of using it directly from heap. Also - use `MULTIBOOT_INFO_ALIGN' to ensure it is aligned. - -2009-02-21 Robert Millan - - Implement USB keyboard support (based on patch by Marco Gerards) - - * conf/i386-pc.rmk (pkglib_MODULES): Add `usb_keyboard.mod'. - (usb_keyboard_mod_SOURCES, usb_keyboard_mod_CFLAGS) - (usb_keyboard_mod_LDFLAGS): New variables. - - * term/usb_keyboard.c: New file. - -2009-02-14 Vladimir Serbinenko - - Corrected wrong declaration - - * kern/disk.c: corrected declaration of grub_disk_ata_pass_through. - -2009-02-14 Christian Franke - - * commands/lspci.c (grub_pci_classes): Add `SATA Controller'. - (grub_lspci_iter): Print class code and programming interface byte. - -2009-02-14 Christian Franke - - * gendistlist.sh: Ignore `.svn' directories. - -2009-02-14 Felix Zielcke - - * fs/fat.c: Add 2009 to Copyright line. - -2009-02-14 Christian Franke - - * commands/hdparm.c: New file. Provides `hdparm' command - which sends ATA commands via grub_disk_ata_pass_through (). - - * conf/i386-pc.rmk: Add ata_pthru.mod and hdparm.mod. - - * disk/ata.c: Include . Move - and to include/grub/ata.h. - (enum grub_ata_addressing_t): Move to include/grub/ata.h. - (GRUB_CDROM_SECTOR_SIZE): Remove. - (GRUB_ATA_*): Move to include/grub/ata.h. - (GRUB_ATAPI_*): Likewise. - (enum grub_ata_commands): Likewise. - (enum grub_ata_timeout_milliseconds): Likewise. - (struct grub_ata_device): Likewise. - (grub_ata_regset): Likewise. - (grub_ata_regget): Likewise. - (grub_ata_regset2): Likewise. - (grub_ata_regget2): Likewise. - (grub_ata_check_ready): Likewise. - (grub_ata_wait_not_busy): Remove static, exported in - include/grub/ata.h. - (grub_ata_wait_drq): Likewise. - (grub_ata_pio_read): Likewise. - - * disk/ata_pthru.c: New file. Provides grub_ata_pass_through () - function for hdparm.mod. - - * include/grub/ata.h: New file, contains declarations from - disk/ata.c. - (enum grub_ata_commands): Add new commands for commands/hdparm.c. - - * include/grub/disk.h (grub_disk_ata_pass_through_parms): New struct. - (grub_disk_ata_pass_through): New exported variable. - - * kern/disk.c (grub_disk_ata_pass_through): New variable. - -2009-02-13 Colin D Bennett - - Support multiple fallback entries, and provide an API to support - executing default+fallback menu entries. Renamed the `terminal' menu - viewer to `text'. - - * include/grub/normal.h (grub_normal_text_menu_viewer): New global - variable declaration. - (grub_menu_execute_callback): New structure declaration. - (grub_menu_execute_callback_t): New typedef. - (grub_menu_execute_with_fallback): New function declaration. - (grub_menu_get_entry): Likewise. - (grub_menu_get_timeout): Likewise. - (grub_menu_set_timeout): Likewise. - - * normal/main.c (GRUB_MOD_INIT(normal)): Refer to new variable name. - - * normal/menu.c (grub_wait_after_message): Moved to - `normal/menu_text.c'. - (draw_border): Likewise. - (print_message): Likewise. - (print_entry): Likewise. - (print_entries): Likewise. - (grub_menu_init_page): Likewise. - (get_entry_number): Likewise. - (print_timeout): Likewise. - (run_menu): Likewise. - (grub_menu_execute_entry): Likewise. - (show_text_menu): Likewise. - (get_and_remove_first_entry_number): New function. - (grub_menu_execute_with_fallback): Likewise. - (get_entry): Renamed to ... - (grub_menu_get_entry): .. this and made it global. - (get_timeout): Renamed to ... - (grub_menu_get_timeout): ... this and made it global. - (set_timeout): Renamed to ... - (grub_menu_set_timeout): ... this and made it global. - (grub_normal_terminal_menu_viewer): Renamed to ... - (grub_normal_text_menu_viewer): ... this. - - * normal/menu_text.c: New file. Extracted text-menu-specific code - from normal/menu.c. - - * conf/i386-coreboot.rmk (grub_emu_SOURCES): Add `normal/menu_text.c'. - (normal_mod_SOURCES): Likewise. - - * conf/i386-efi.rmk (grub_emu_SOURCES): Likewise. - (normal_mod_SOURCES): Likewise. - - * conf/i386-ieee1275.rmk (grub_emu_SOURCES): Likewise. - (normal_mod_SOURCES): Likewise. - - * conf/i386-pc.rmk, (grub_emu_SOURCES): Likewise. - (normal_mod_SOURCES): Likewise. - - * conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Likewise. - (normal_mod_SOURCES): Likewise. - - * conf/sparc64-ieee1275.rmk (grub_emu_SOURCES): Likewise. - (normal_mod_SOURCES): Likewise. - - * conf/x86_64-efi.rmk (grub_emu_SOURCES): Likewise. - (normal_mod_SOURCES): Likewise. - -2009-02-11 Robert Millan - - * util/grub.d/00_header.in: Update old reference to `font' command. - -2009-02-10 Felix Zielcke - - * fs/fat.c (grub_fat_mount): Fix wrong comparison. - - Based on patch from Javier Martín. - -2009-02-09 Felix Zielcke - - * conf/common.rmk (grub_probe_SOURCES): Move fs/ext2.c before fs/fat.c - to avoid false positives with FAT. - (grub_fstest_SOURCES): Likewise. - * conf/i386-pc.rmk (grub_emu_SOURCES): Likewise. - * conf/x86_64-efi.rmk (grub_emu_SOURCES): Likewise. - * conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Likewise. - * conf/i386-coreboot.rmk (grub_emu_SOURCES): Likewise. - * conf/sparc64-ieee1275.rmk (grub_emu_SOURCES): Likewise. - * conf/i386-ieee1275.rmk (grub_emu_SOURCES): Likewise. - -2009-02-09 Felix Zielcke - - * fs/fat.c (grub_fat_mount): Try to avoid false positives by checking - bpb.version_specific.fat12_or_fat16.fstype and - bpb.version_specific.fat32.fstype. - -2009-02-08 Robert Millan - - * fs/tar.c: Replace "fs/cpio.c" with "cpio.c". - -2009-02-08 Robert Millan - - * Makefile.in (host_os, host_cpu): New variables. - (target_os): Remove. Update all users. - -2009-02-08 Marco Gerards - - * Makefile.in (enable_grub_emu_usb): New variable. - * conf/i386-pc.rmk (grub_emu_SOURCES): Add `disk/scsi.c'. - (grub_emu_SOURCES) [grub_emu_SOURCES]: Add `disk/usbms.c', - `util/usb.c', `bus/usb/usb.c' and `commands/usbtest.c'. - (grub_emu_LDFLAGS): Add `$(LIBUSB)'. - (pkglib_MODULES): Add `usb.mod', `uhci.mod', `ohci.mod', - `usbtest.mod' and `usbms.mod'. - (usb_mod_SOURCES, usb_mod_CFLAGS, usb_mod_LDFLAGS) - (usbtest_mod_SOURCES, usbtest_mod_CFLAGS, usbtest_mod_LDFLAGS) - (uhci_mod_SOURCES, uhci_mod_CFLAGS, uhci_mod_LDFLAGS, - (ohci_mod_SOURCES, ohci_mod_CFLAGS, ohci_mod_LDFLAGS) - (usbms_mod_SOURCES, usbms_mod_CFLAGS, usbms_mod_LDFLAGS): New - variables. - - * disk/usbms.c: New file. - - * include/grub/usb.h: Likewise. - - * include/grub/usbtrans.h: Likewise. - - * include/grub/usbdesc.h: Likewise. - - * bus/usb/usbtrans.c: Likewise. - - * bus/usb/ohci.c: Likewise. - - * bus/usb/uhci.c: Likewise. - - * bus/usb/usbhub.c: Likewise. - - * bus/usb/usb.c: Likewise. - - * commands/usbtest.c: Likewise. - - * util/usb.c: Likewise. - - * include/grub/err.h (grub_err_t): Add `GRUB_ERR_IO'. - - * configure.ac: Test for libusb presence. - - * util/grub-emu.c (main) [HAVE_LIBUSB_H]: Call `grub_libusb_init'. - -2009-02-08 Vesa Jääskeläinen - - * kern/mm.c: Add more comments. - -2009-02-08 Robert Millan - - Patch from Javier Martín. - * fs/ext2.c (EXT2_DRIVER_SUPPORTED_INCOMPAT): Add - `EXT4_FEATURE_INCOMPAT_FLEX_BG'. - -2009-02-08 Robert Millan - - * fs/cpio.c: Split tar functionality to ... - * fs/tar.c: ... here (new file). Update all users. - -2009-02-07 Robert Millan - - * fs/ext2.c (grub_ext2_mount): Avoid mounting filesystems with - backward-incompatible features. - - Based on patch from Javier Martín, with some adjustments. - -2009-02-07 Michael Scherer - - * fs/hfs.c (grub_hfsplus_iterate_dir): Treat hfs+ as case insensitive. - -2009-02-07 Robert Millan - - * conf/common.rmk (grub_probe_SOURCES, grub_fstest_SOURCES): Move - position of `disk/lvm.c' to ensure grub_init_all() always picks it - after the RAID stuff. - -2009-02-05 Vesa Jääskeläinen - - Fixes problem when running vbetest command as reported by - Vladimir Serbinenko . - - * (grub_vbe_set_video_mode): Fixed problem with text modes. - -2009-02-04 Felix Zielcke - - util/getroot.c (grub_util_get_grub_dev): Add support for /dev/mdNpN and - /dev/md/NpN style mdraid devices. - -2009-02-03 Felix Zielcke - - * util/unifont2pff.rb: Remove. - -2009-02-03 Felix Zielcke - - * conf/sparc64-ieee1275.rmk (grub_emu_SOURCES): Add a missing trailing - `#'. - -2009-02-03 Felix Zielcke - - * conf/i386-pc.rmk (grub_emu_SOURCES): Add `normal/menu_viewer.c'. - * conf/i386-efi.rmk (grub_emu_SOURCES): Likewise. - * conf/x86_64-efi.rmk (grub_emu_SOURCES): Likewise. - * conf/i386-coreboot.rmk (grub_emu_SOURCES): Likewise. - * conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Likewise. - * conf/sparc64-ieee1275.rmk (grub_emu_SOURCES): Likewise. - * conf/i386-ieee1275.rmk (grub_emu_SOURCES): Likewise. - -2009-02-02 Christian Franke - - * lib/hexdump.c (hexdump): Print at most 3 lines if data is identical. - -2009-02-01 Felix Zielcke - - * INSTALL: Note that we now require at least autoconf 2.59 and - that LZO is optional. - -2009-02-01 Vesa Jääskeläinen - - Base on patch on bug #24154 created by Tomas Tintera - . - - * video/i386/pc/vbe.c (grub_video_vbe_scroll): Fix downward scrolling. - -2009-02-01 Vesa Jääskeläinen - - Based on patch on bug #25318 created by Bernhard Rosenkraenzer - . - - * normal/parser.y (script_init): Add missing semicolon. - -2009-01-31 Colin D Bennett - - * normal/main.c: Add include to grub/menu_viewer.h. - (free_menu_entry_classes): Added. - (grub_normal_menu_addentry): Added class property handling. - (grub_normal_execute): Changed to use new menu viewer for menu viewing. - (GRUB_MOD_INIT(normal)): Added register for text based menu viewer. - - * normal/menu_viewer.c: New file. - - * normal/menu.c (run_menu_entry): Renamed to ... - (grub_menu_execute_entry): ... this and made it as global. - (grub_menu_run): Renamed to ... - (show_text_menu): ... this and made it local. - (show_text_menu): Adapt to new function names. - (grub_normal_terminal_menu_viewer): New global variable. - - * include/grub/menu.h: New file. - - * include/grub/menu_viewer.h: New file. - - * include/grub/normal.h: Added include to grub/menu.h. - (grub_menu_entry): Moved to include/grub/menu.h. - (grub_menu_entry_t): Likewise. - (grub_menu): Likewise. - (grub_menu_t): Likewise. - (grub_normal_terminal_menu_viewer): Added. - (grub_menu_execute_entry): Likewise. - (grub_menu_run): Removed. - - * DISTLIST: Added include/grub/menu.h. - Added include/grub/menu_viewer.h. - Added normal/menu_viewer.c. - -2009-01-31 Vesa Jääskeläinen - - * normal/execute.c (grub_script_execute_menuentry): Changed to use - arglist for menutitle arguments. - - * normal/main.c (grub_normal_menu_addentry): Likewise. - - * normal/parser.y (menuentry): Likewise. - - * normal/script.c (grub_script_create_cmdmenu): Likewise. - - * include/grub/script.h (grub_script_cmd_menuentry): Likewise. - (grub_script_create_cmdmenu): Likewise. - - * include/grub/normal.h (grub_normal_menu_addentry): Likewise. - - * conf/i386-pc.rmk (normal_mod_SOURCES): Adapt Colin D Bennett's - changes. - - * conf/x86_64-efi.rmk (normal_mod_SOURCES): Likewise. - - * conf/i386-coreboot.rmk (normal_mod_SOURCES): Likewise. - - * conf/i386-efi.rmk (normal_mod_SOURCES): Likewise. - - * conf/i386-ieee1275.rmk (normal_mod_SOURCES): Likewise. - - * conf/powerpc-ieee1275.rmk (normal_mod_SOURCES): Likewise. - - * conf/sparc64-ieee1275.rmk (normal_mod_SOURCES): Likewise. - -2009-01-30 Christian Franke - - * normal/arg.c (grub_arg_show_help): Add indentation if '\n' appears - in option help text. - -2009-01-27 Pavel Roskin - - * disk/fs_uuid.c (search_fs_uuid): Ignore case of the UUID. - -2009-01-27 Vesa Jääskeläinen - - * commands/lsmmap.c: Add include to grub/machine/memory.h. - - * fs/i386/pc/pxe.c (grub_pxefs_open): Fix sign problem. - - * term/i386/pc/at_keyboard.c (GRUB_MOD_FINI(at_keyboard)): Use proper - unregister function. - -2009-01-27 Vesa Jääskeläinen - - * disk/scsi.c (grub_scsi_read): Fix sign problem. - - * term/i386/pc/vga_text.c (grub_vga_text_init_fini). Fix declaration. - - * util/grub-mkfont.c (usage): Fix typo. - - * util/elf/grub-mkimage.c (load_modules): Fix warning. - -2009-01-26 Daniel Mierswa - - * fs/fat.c (grub_fat_uuid): Fix shift of the first two bytes. - - * commands/search.c (search_fs_uuid): Ignore case of the UUID. - - * kern/misc.c (grub_strcasecmp): New function. - (grub_strcasecmp): Use grub_size_t instead of int for length. - Fix return value. - * include/grub/misc.h: Update function prototypes. - -2009-01-26 Robert Millan - - * configure.ac: Fix cross-compilation check. - -2009-01-22 Christian Franke - - * kern/misc.c (grub_vsprintf): Fix size and termination of `format2' - (precision) digit string. Allow `.format2' without `format1' (width). - Limit input chars for `%s' output to `format2' if specified. This is - compatible with standard printf (). - -2009-01-22 Christian Franke - - * disk/ata.c (grub_ata_wait_status): Replace by ... - (grub_ata_wait_not_busy): ... this function. Checks only BSY bit, - other status bits may be invalid while BSY is asserted. - (grub_ata_check_ready): New function. - (grub_ata_cmd): Removed. - (grub_ata_wait_drq): New function. - (grub_ata_strncpy): Remove inline. - (grub_ata_pio_read): Reduce to actual block transfer. BSY wait - and error check now done by grub_ata_wait_drq (). - (grub_ata_pio_write): Likewise. - (grub_atapi_identify): Set DEV before check for !BSY. Use - grub_ata_wait_drq () to wait for data. - (grub_ata_device_initialize): Add status register check to - detect missing SATA slave devices. Add debug messages. - (grub_atapi_wait_drq): Use grub_ata_wait_not_busy (). - (grub_atapi_packet): Set DEV before check for !BSY. Replace - transfer loop by grub_ata_pio_write (). - (grub_ata_identify): Set DEV before check for !BSY. Use - grub_ata_wait_drq () to wait for data. - (grub_ata_setaddress): Set DEV before check for !BSY. - (grub_ata_readwrite): Remove duplicate code, handle batch/rest and - read/write in one loop. Fix invalid command on write. Fix incomplete - command on (size % batch) == 0. Add missing error check after write of - last block. Add debug messages. - (grub_atapi_read): Replace transfer loop by grub_ata_pio_read (). - -2009-01-19 Christian Franke - - * disk/ata.c (GRUB_ATAPI_REG_*): New defines. - (GRUB_ATAPI_IREASON_*): Likewise. - (grub_ata_pio_write): Fix timeout error return. - (grub_atapi_identify): Add grub_ata_wait () after cmd. - (grub_atapi_wait_drq): New function. - (grub_atapi_packet): New parameter `size'. - Use grub_atapi_wait_drq () and direct write instead of - grub_ata_pio_write (). - (grub_atapi_read): Replace grub_ata_pio_read () by a loop which - reads the number of bytes requested by the device for each DRQ - assertion. - (grub_atapi_write): Remove old implementation, return not - implemented instead. - -2009-01-19 Christian Franke - - * disk/scsi.c (grub_scsi_read10): Use scsi->blocksize instead - of 512 to calculate data size. - (grub_scsi_read12): Likewise. - (grub_scsi_write10): Likewise. - (grub_scsi_write12): Likewise. - (grub_scsi_read): Adjust size according to blocksize. - Add checks for invalid blocksize and unaligned transfer. - -2009-01-19 Vesa Jääskeläinen - - * font/font.c (grub_font_loader_init): Re-position unknown glyph. - - * term/gfxterm.c (write_char): Fix background rendering for wide - width glyphs. - -2009-01-19 Robert Millan - - * config.guess: Update to latest version from config git. - * config.sub: Likewise. - -2009-01-17 Felix Zielcke - - * Makefile.in: Change font compilation to use new grub-mkfont instead - of java version. - - * util/fonttool/src/org/gnu/grub/fonttool/BDFLoader.java: Remove. - * util/fonttool/src/org/gnu/grub/fonttool/CharDefs.java: Likewise. - * util/fonttool/src/org/gnu/grub/fonttool/CharacterRange.java: Likewise. - * util/fonttool/src/org/gnu/grub/fonttool/CharacterRange.java: Likewise. - * util/fonttool/src/org/gnu/grub/fonttool/Converter.java: Likewise. - * util/fonttool/src/org/gnu/grub/fonttool/Font.java: Likewise. - * util/fonttool/src/org/gnu/grub/fonttool/Glyph.java: Likewise. - * util/fonttool/src/org/gnu/grub/fonttool/PFF2Sections.java: Likewise. - * util/fonttool/src/org/gnu/grub/fonttool/PFF2Writer.java: Likewise. - -2009-01-16 Christian Franke - - * disk/ata.c (enum grub_ata_commands): Remove EXEC_DEV_DIAGNOSTICS. - (enum grub_ata_timeout_milliseconds): New enum. - (grub_ata_wait_status): Add parameter milliseconds. - (grub_ata_cmd): Remove variable `err'. Remove wait for !DRQ to allow - recovery from timed-out commands. - (grub_ata_pio_read): Add parameter milliseconds. Fix error return, - return grub_errno instead of REG_ERROR. - (grub_ata_pio_write): Add parameter milliseconds. - (grub_atapi_identify): Fix size of ATAPI IDENTIFY sector. - Pass milliseconds to grub_ata_wait_status () and - grub_ata_pio_read (). - (grub_atapi_packet): Pass milliseconds to grub_ata_pio_write (). - (grub_ata_identify): Remove variable `ataerr'. Pass milliseconds to - grub_ata_wait_status (). Fix IDENTIFY timeout check. - (grub_ata_device_initialize): Remove EXECUTE DEVICE DIAGNOSTICS. - It is not suitable for device detection, because DEV bit is ignored, - the command may run too long, and not all devices set the signature - properly. - (grub_ata_pciinit): Clear grub_errno before grub_ata_device_initialize (). - (grub_ata_setaddress): Pass milliseconds to grub_ata_wait_status (). - Fix device selection, DEV bit must be set first to address the registers - of the correct device. - (grub_ata_readwrite): Pass milliseconds to grub_ata_wait_status () and - grub_ata_pio_read/write (). - (grub_atapi_read): Pass milliseconds to grub_ata_pio_read (). - (grub_atapi_write): Pass milliseconds to grub_ata_pio_write (). - -2009-01-13 Carles Pina i Estany - - * util/grub-editenv.c (main): Use fseeko(), not fseek(). - -2009-01-13 Bean - - * util/grub-mkfont.c (write_font): forget to remove some debug code. - -2009-01-13 Bean - - * Makefile.in: (enable_grub_mkfont): New variable. - (freetype_cflags): Likewise. - (freetype_libs): Likewise. - - * common.rmk (bin_UTILITIES): Add `grub-mkfont' if requested. - (grub_mkfont_SOURCES): New variable. - (grub_mkfont_CFLAGS): Likewise. - (grub_mkfont_LDFLAGS): Likewise. - - * configure.ac (--enable-grub-mkfont): New option. Check for freetype2 - library if `--enable-grub-mkfont' is requested. - (enable_grub_mkfont): New variable. - (freetype_cflags): Likewise. - (freetype_libs): Likewise. - - * util/grub-mkfont.c: New file. - -2009-01-12 Christian Franke - - * disk/ata.c (grub_ata_pciinit): Fix bit numbers of compatibility - mode check. Fix setting of compat_use[]. - -2009-01-10 Robert Millan - - Update a few copyright years which we forgot to do in 2008 (only for - files whose changes made in 2008 were copyright-significant) - - * Makefile.in: Add 2008 to Copyright line. - * disk/ieee1275/ofdisk.c: Likewise. - * disk/efi/efidisk.c: Likewise. - * kern/dl.c: Likewise. - * kern/sparc64/ieee1275/init.c: Likewise. - * kern/mm.c: Likewise. - * kern/efi/mm.c: Likewise. - * boot/i386/pc/boot.S: Likewise. - * genfslist.sh: Likewise. - * fs/iso9660.c: Likewise. - * fs/hfs.c: Likewise. - * fs/jfs.c: Likewise. - * fs/minix.c: Likewise. - * fs/ufs.c: Likewise. - * gensymlist.sh.in: Likewise. - * genkernsyms.sh.in: Likewise. - * include/grub/misc.h: Likewise. - * include/grub/types.h: Likewise. - * include/grub/symbol.h: Likewise. - * include/grub/elf.h: Likewise. - * include/grub/kernel.h: Likewise. - * include/grub/disk.h: Likewise. - * include/grub/dl.h: Likewise. - * include/grub/i386/linux.h: Likewise. - * include/grub/i386/pc/biosdisk.h: Likewise. - * include/grub/efi/api.h: Likewise. - * include/grub/efi/pe32.h: Likewise. - * include/grub/util/misc.h: Likewise. - * normal/execute.c: Likewise. - * normal/arg.c: Likewise. - * normal/completion.c: Likewise. - * normal/lexer.c: Likewise. - * normal/parser.y: Likewise. - * normal/misc.c: Likewise. - * commands/i386/pc/vbeinfo.c: Likewise. - * commands/hexdump.c: Likewise. - * commands/terminal.c: Likewise. - * commands/ls.c: Likewise. - * commands/help.c: Likewise. - * partmap/pc.c: Likewise. - * loader/efi/chainloader.c: Likewise. - * loader/multiboot_loader.c: Likewise. - * loader/i386/pc/multiboot2.c: Likewise. - * term/efi/console.c: Likewise. - * term/i386/pc/serial.c: Likewise. - * util/lvm.c: Likewise. - * util/console.c: Likewise. - * util/i386/efi/grub-mkimage.c: Likewise. - * util/raid.c: Likewise. - -2009-01-06 Vesa Jääskeläinen - - * commands/videotest.c: Removed include to grub/machine/memory.h. - - * conf/i386-pc.rmk (pkglib_MODULES): Removed video.mod, gfxterm.mod, - videotest.mod, bitmap.mod, tga.mod, jpeg.mod, png.mod. - (video_mod_SOURCES): Removed. - (video_mod_CFLAGS): Likewise. - (video_mod_LDFLAGS): Likewise. - (gfxterm_mod_SOURCES): Likewise. - (gfxterm_mod_CFLAGS): Likewise. - (gfxterm_mod_LDFLAGS): Likewise. - (videotest_mod_SOURCES): Likewise. - (videotest_mod_CFLAGS): Likewise. - (videotest_mod_LDFLAGS): Likewise. - (bitmap_mod_SOURCES): Likewise. - (bitmap_mod_CFLAGS): Likewise. - (bitmap_mod_LDFLAGS): Likewise. - (tga_mod_SOURCES): Likewise. - (tga_mod_CFLAGS): Likewise. - (tga_mod_LDFLAGS): Likewise. - (jpeg_mod_SOURCES): Likewise. - (jpeg_mod_CFLAGS): Likewise. - (jpeg_mod_LDFLAGS): Likewise. - (png_mod_SOURCES): Likewise. - (png_mod_CFLAGS): Likewise. - (png_mod_LDFLAGS): Likewise. - - * conf/common.rmk (pkglib_MODULES): Added video.mod, videotest.mod, - bitmap.mod, tga.mod, jpeg.mod, png.mod, font.mod, gfxterm.mod - (video_mod_SOURCES): Added. - (video_mod_CFLAGS): Likewise. - (video_mod_LDFLAGS): Likewise. - (videotest_mod_SOURCES): Likewise. - (videotest_mod_CFLAGS): Likewise. - (videotest_mod_LDFLAGS): Likewise. - (bitmap_mod_SOURCES): Likewise. - (bitmap_mod_CFLAGS): Likewise. - (bitmap_mod_LDFLAGS): Likewise. - (tga_mod_SOURCES): Likewise. - (tga_mod_CFLAGS): Likewise. - (tga_mod_LDFLAGS): Likewise. - (jpeg_mod_SOURCES): Likewise. - (jpeg_mod_CFLAGS): Likewise. - (jpeg_mod_LDFLAGS): Likewise. - (png_mod_SOURCES): Likewise. - (png_mod_CFLAGS): Likewise. - (png_mod_LDFLAGS): Likewise. - (gfxterm_mod_SOURCES): Likewise. - (gfxterm_mod_CFLAGS): Likewise. - (gfxterm_mod_LDFLAGS): Likewise. - - * term/gfxterm.c: Removed include to grub/machine/memory.h, - grub/machine/console.h. - -2009-01-04 Jerone Young - - Make on screen instructions clearer - - Based on patch created by Jidanni - - * normal/menu.c: print clearer instructions on the screen - -2009-01-02 Colin D Bennett - - New font engine. - - Additional changes by Vesa Jääskeläinen to adapt to - build system and fixed gfxterm.c to work with different sized fonts. - - * configure.ac: Changed UNIFONT_HEX to UNIFONT_BDF. - - * configure: Re-generated. - - * DISTLIST: Removed font/manager.c. - Added font/font.c. - Added font/font_cmd.c. - - * Makefile.in: Changed UNIFONT_HEX to UNIFONT_BDF. Added Font tool - compilation. - - * include/grub/misc.h (grub_utf8_to_ucs4): Changed prototype. Changed users. - - * kern/misc.c (grub_utf8_to_ucs4): Changed prototype. - - * kern/term.c: Changed users of grub_utf8_to_ucs4. - - * normal/menu.c: Likewise. - - * conf/common.rmk (font_mod_SOURCES): Removed font/manager.c. - (font_mod_SOURCES): Added font/font_cmd.c, font/font.c. - - * include/grub/font.h: Replaced with new file. - - * include/grub/video.h (GRUB_VIDEO_MODE_TYPE_ALPHA): Changed value. - (GRUB_VIDEO_MODE_TYPE_DOUBLE_BUFFERED): Likewise. - (GRUB_VIDEO_MODE_TYPE_COLOR_MASK): Likewise. - (GRUB_VIDEO_MODE_TYPE_1BIT_BITMAP): Added. - (grub_video_blit_format): Added GRUB_VIDEO_BLIT_FORMAT_1BIT_PACKED. - (grub_video_mode_info): Added bg_red, bg_green, bg_blue, bg_alpha, - fg_red, fg_green, fg_blue, fg_alpha. - (grub_video_adapter): Removed blit_glyph. - (grub_video_blit_glyph): Removed. - - * font/manager.c: Removed file. - - * font/font.c: New file. - - * font/font_cmd.c: Likewise. - - * video/video.c (grub_video_blit_glyph): Removed. - - * video/i386/pc/vbe.c (grub_video_vbe_map_rgb): Added 1-bit support. - (grub_video_vbe_map_rgba): Likewise. - (grub_video_vbe_unmap_color_int): Likewise. - (grub_video_vbe_blit_glyph): Removed. - (grub_video_vbe_adapter): Removed blit_glyph. - - * video/i386/pc/vbeutil.c (get_data_ptr): Added 1-bit support. - (get_pixel): Likewise. - (set_pixel): Likewise. - - * commands/videotest.c (grub_cmd_videotest): Added more tests for fonts. - - * term/gfxterm.c: Adapted to new font engine. - - * term/i386/pc/vesafb.c: Marked as deprecated. Made it compile. - - * term/i386/pc/vga.c: Likewise. - - * util/fonttool/src/org/gnu/grub/fonttool/BDFLoader.java: New file. - - * util/fonttool/src/org/gnu/grub/fonttool/CharDefs.java: Likewise. - - * util/fonttool/src/org/gnu/grub/fonttool/CharacterRange.java: Likewise. - - * util/fonttool/src/org/gnu/grub/fonttool/CharacterRange.java: Likewise. - - * util/fonttool/src/org/gnu/grub/fonttool/Converter.java: Likewise. - - * util/fonttool/src/org/gnu/grub/fonttool/Font.java: Likewise. - - * util/fonttool/src/org/gnu/grub/fonttool/Glyph.java: Likewise. - - * util/fonttool/src/org/gnu/grub/fonttool/PFF2Sections.java: Likewise. - - * util/fonttool/src/org/gnu/grub/fonttool/PFF2Writer.java: Likewise. - - * util/grub.d/00_header.in: Changed to use new loadfont command. - - * util/grub-mkconfig_lib.in: Changed font extension. - -2008-12-28 Felix Zielcke - - * util/getroot.c (grub_util_get_grub_dev): Add support for - /dev/md/dNNpNN style partitionable mdraid devices. - -2008-12-12 Alex Smith - - * fs/i386/pc/pxe.c (grub_pxefs_open): Handle the one open connection - at a time limit of the PXE TFTP API correctly. - (grub_pxefs_close): Likewise. - -2008-11-29 Robert Millan - - * disk/ata.c (grub_ata_pciinit): Handle errors raised by - grub_ata_device_initialize() calls. - -2008-11-28 Krzysztof Smiechowicz - - * fs/affs.c (grub_affs_iterate_dir): Return failure when directory - iteration failed. - * fs/sfs.c (grub_sfs_iterate_dir): Likewise. - -2008-11-28 Robert Millan - - Fix build on powerpc-ieee1275. Based on patch created by - Manoel Abranches . - * conf/powerpc-ieee1275.rmk (kernel_elf_SOURCES): Add - `kern/ieee1275/mmap.c'. - * include/grub/powerpc/ieee1275/memory.h: New file. - - Provide grub-install on coreboot. - * conf/i386-coreboot.rmk (sbin_SCRIPTS): Add `grub-install'. - (grub_install_SOURCES): New variable. - * util/i386/pc/grub-install.in: Add a few condition checks to make it - usable on coreboot. - -2008-11-25 Felix Zielcke - - * util/grub-fstest.c (grub_term_get_current_input): Change return type - to `grub_term_input_t'. - (grub_term_get_current_output): Change return type to - `grub_term_output_t'. - -2008-11-22 Robert Millan - - Fix breakage on coreboot due to declaration mismatch. - * term/i386/pc/vga_text.c (grub_vga_text_init_fini): New function. - (grub_vga_text_term): Use grub_vga_text_init_fini() instead of - grub_vga_text_cls(). - - * kern/i386/loader.S (grub_multiboot_backward_relocator): Improve - comments. Avoid copying one more byte than necessary (just in case). - - * conf/powerpc-ieee1275.rmk (kernel_elf_LDFLAGS): Change link address - to 0x200000 (avoids trouble with some OFW implementations, and matches - with the one in Yaboot). - Reported by Manoel Abranches - -2008-11-20 Robert Millan - - * kern/i386/coreboot/init.c (grub_time_tics): Remove variable. - (grub_get_rtc, grub_exit): Abort with grub_fatal() if called. - - * util/grub-mkconfig_lib.in (grub_warn): New function. - (convert_system_path_to_grub_path): Use grub_warn() when issuing - warnings, to obtain consistent formatting. - * util/grub.d/00_header.in: Likewise. - * util/update-grub_lib.in: Likewise. - - * loader/i386/linux.c (allocate_pages): Fix a warning. - Move comment text to `#error' stanza. - - Harmonize ieee1275's grub_available_iterate() with the generic - grub_machine_mmap_iterate() interface (fixes a recently-introduced - build problem on i386-ieee1275): - * kern/ieee1275/openfw.c (grub_available_iterate): Moved from here ... - * kern/ieee1275/mmap.c (grub_machine_mmap_iterate): ... here. Add third - parameter `type'. Update all users of this function. - * conf/i386-ieee1275.rmk (kernel_elf_SOURCES): Add - `kern/ieee1275/mmap.c'. - * kern/ieee1275/init.c - * include/grub/ieee1275/ieee1275.h (grub_available_iterate): Replace - with ... - (grub_machine_mmap_iterate): ... this. - * include/grub/i386/pc/memory.h (grub_machine_mmap_iterate): Change - return type to `grub_err_t'. Update all implementations of this - function prototype. - * include/grub/i386/coreboot/memory.h (grub_machine_mmap_iterate): - Likewise. - - Add `lsmmap' command (lists firmware-provided memory map): - * commands/lsmmap.c: New file. - * conf/i386-pc.rmk (pkglib_MODULES): Add `lsmmap.mod'. - (lsmmap_mod_SOURCES, lsmmap_mod_CFLAGS, lsmmap_mod_LDFLAGS): New - variables. - * conf/powerpc-ieee1275.rmk: Likewise. - * conf/i386-coreboot.rmk: Likewise. - * conf/i386-ieee1275.rmk: Likewise. - -2008-11-19 Robert Millan - - * loader/i386/pc/linux.c (grub_rescue_cmd_initrd): Fix a typo. - * loader/i386/linux.c (grub_rescue_cmd_initrd): Implement a few needed - constraints to initrd allocation (based on code from - loader/i386/pc/linux.c). Without them, initrd was allocated too high - for Linux to find it. - -2008-11-14 Robert Millan - - * fs/cpio.c (grub_cpio_open): Compare `name' and `fn' by hand in - order to cope with duplicate slashes. - -2008-11-14 Robert Millan - - * include/grub/i386/coreboot/memory.h (GRUB_MEMORY_MACHINE_LOWER_SIZE): - Redefine to match with GRUB_MEMORY_MACHINE_UPPER_START (0x100000). We - don't want to mess with lower memory, because it is used in the Linux - loader. - - * loader/i386/linux.c (allocate_pages): Allocate `real_mode_mem' in - an appropriate place in lower memory, between 0x10000 and 0x90000, - like loader/i386/efi/linux.c does. Linux often panics if real_mode_mem - is in our heap (probably as a result of it being corrupted during - decompression). Add #error instance with comment to explain why this - loader isn't currently usable on PC/BIOS. - -2008-11-14 Robert Millan - - * term/i386/pc/serial.c [! GRUB_MACHINE_PCBIOS] - (GRUB_SERIAL_PORT_NUM): Fix miscalculation. - -2008-11-12 Robert Millan - - Make loader/i386/linux.c buildable on i386-pc (although disabled). - - * include/grub/i386/pc/init.h: Include `'. - (struct grub_machine_mmap_entry, grub_machine_mmap_iterate): Move - from here ... - * include/grub/i386/pc/memory.h: ... to here. - -2008-11-12 Robert Millan - - Fix build problems on i386-ieee1275 and *-efi (introduced by vga_text - split). - - * include/grub/i386/pc/console.h: Include `'. - (grub_console_cur_color, grub_console_real_putchar) - (grub_console_putchar, grub_console_getcharwidth, grub_console_getwh) - (grub_console_setcolorstate, grub_console_setcolor) - (grub_console_getcolor): Move from here ... - * include/grub/i386/vga_common.h: ... to here (new file). - - * term/i386/pc/vga_text.c: Replace `' with - `' and `' with - `'. - * term/i386/vga_common.c: Replace `' with - `'. - -2008-11-12 Robert Millan - - * conf/i386-pc.rmk (kernel_img_SOURCES): Add `term/i386/vga_common.c'. - * conf/i386.rmk (pkglib_MODULES): Add `vga_text.mod'. - (vga_text_mod_SOURCES, vga_text_mod_CFLAGS, vga_text_mod_LDFLAGS): New - variables. - * conf/i386-coreboot.rmk (kernel_elf_SOURCES): Replace - `term/i386/pc/console.c' with `term/i386/vga_common.c'. - - * kern/i386/coreboot/init.c (grub_machine_init): Replace call to - grub_console_init() with call to grub_vga_text_init(). - (grub_machine_fini): Replace call to - grub_console_fini() with call to grub_vga_text_fini() and - grub_at_keyboard_fini(). - - * include/grub/i386/pc/console.h: Include `'. - (grub_console_putchar, grub_console_getcharwidth, grub_console_getwh) - (grub_console_setcolorstate, grub_console_setcolor) - (grub_console_getcolor): New function prototypes. - - * term/i386/pc/vga_text.c: Include `'. - (grub_vga_text_getxy, grub_vga_text_gotoxy, grub_vga_text_cls) - (grub_vga_text_setcursor): Static-ize. - (grub_vga_text_term): New structure. - (GRUB_MOD_INIT(vga_text), GRUB_MOD_FINI(vga_text)): New functions. - - * term/i386/pc/console.c: Remove `'. - (grub_console_cur_color, grub_console_standard_color) - (grub_console_normal_color, grub_console_highlight_color) - (map_char, grub_console_putchar, grub_console_getcharwidth) - (grub_console_getwh, grub_console_setcolorstate, grub_console_setcolor) - (grub_console_getcolor): Move from here ... - * term/i386/vga_common.c: ... to here (same function names). - -2008-11-12 Robert Millan - - Use newly-added Multiboot support in coreboot. - - * conf/i386-coreboot.rmk (kernel_elf_SOURCES): Replace - `kern/i386/coreboot/mmap.c' with `kern/i386/multiboot_mmap.c'. - - * kern/i386/coreboot/startup.S: Enable Multiboot header, fix its - alignment, set `MULTIBOOT_MEMORY_INFO' flag. - (codestart): Store the MBI in `startup_multiboot_info' when we're - being loaded using Multiboot. - - * kern/i386/coreboot/init.c (grub_machine_init): Move - grub_at_keyboard_init() call to beginning of function (useful for - debugging). Call grub_machine_mmap_init() before attempting to use - grub_machine_mmap_iterate(). - (grub_lower_mem, grub_upper_mem): Move from here ... - * kern/i386/multiboot_mmap.c (grub_lower_mem, grub_upper_mem): ... to - here (new file). - - * include/grub/i386/coreboot/memory.h (grub_machine_mmap_init): New - function prototype. - -2008-11-12 Robert Millan - - Fix a regression introduced by the at_keyboard.mod split. Because - some terminals are default on some platforms and non-default on - others, the first terminal being registered determines which is - going to be default. - - * kern/term.c (grub_term_register_input): If this is the first - terminal being registered, set it as the current one. - (grub_term_register_output): Likewise. - - * term/efi/console.c (grub_console_init): Do not call - grub_term_set_current_output() or grub_term_set_current_input(). - * term/ieee1275/ofconsole.c (grub_console_init): Likewise. - * term/i386/pc/console.c (grub_console_init): Likewise. - (grub_console_fini): Do not call grub_term_set_current_input() - (but leave grub_term_set_current_output() to restore text mode). - -2008-11-10 Robert Millan - - * util/grub.d/00_header.in: Add backward compatibility check for - versions of terminal.mod that don't understand `terminal_input' or - `terminal_output'. - -2008-11-09 Robert Millan - - * commands/terminal.c (GRUB_MOD_FINI(terminal)): Unregister - `terminal_input' / `terminal_output', not `terminal'. - -2008-11-08 Robert Millan - - * Makefile.in (include_DATA): Fix srcdir=. assumption. - (DISTCLEANFILES): Add `build_env.mk'. - -2008-11-08 Robert Millan - - * term/i386/pc/vesafb.c (grub_vesafb_term): Change type to - `struct grub_term_output'. Remove `.checkkey' and `.getkey' - members. Update all users. - * util/console.c (grub_ncurses_term): Split in ... - (grub_ncurses_term_input): ... this, and ... - (grub_ncurses_term_output): ... this. Update all users. - * term/ieee1275/ofconsole.c: Remove stale `#endif'. - -2008-11-08 Robert Millan - - * Makefile.in (PKGLIB): Add $(pkglib_BUILDDIR). - (PKGDATA): Add $(pkgdata_SRCDIR). - (pkglib_BUILDDIR): New variable. - (pkgdata_SRCDIR): New variable. - (build_env.mk): New target. - (include_DATA): New variable. - (install-local): Install $(include_DATA) files in $(includedir). - -2008-11-07 Pavel Roskin - - * gendistlist.sh: Use C locale for sorting to ensure consistent - output on all systems. - - * util/grub.d/00_header.in: Remove incorrect space before - "serial". - -2008-11-07 Robert Millan - - * include/multiboot2.h (struct multiboot_header): Add `flags' member as - per specification. - * loader/multiboot2.c (grub_multiboot2): Fix Multiboot2 header check. - * loader/multiboot_loader.c (find_multi_boot2_header): New function - (based on find_multi_boot1_header). - (grub_rescue_cmd_multiboot_loader): Check for Multiboot2 header, - using find_multi_boot2_header(), and abort if neither Multiboot or - Multiboot headers were found. - -2008-11-07 Robert Millan - - Modularize at_keyboard.mod: - - * conf/i386.rmk (pkglib_MODULES): Add `at_keyboard.mod'. - (at_keyboard_mod_SOURCES, at_keyboard_mod_CFLAGS) - (at_keyboard_mod_LDFLAGS): New variables. - - Actual terminal split: - - * include/grub/term.h (struct grub_term): Split in ... - (struct grub_term_input): ... this, and ... - (struct grub_term_output): ... this. Update all users. - (grub_term_set_current): Split in ... - (grub_term_set_current_input): ... this, and ... - (grub_term_set_current_output): ... this. - (grub_term_get_current): Split in ... - (grub_term_get_current_input): ... this, and ... - (grub_term_get_current_output): ... this. - (grub_term_register): Split in ... - (grub_term_register_input): ... this, and ... - (grub_term_register_output): ... this. - (grub_term_unregister): Split in ... - (grub_term_unregister_input): ... this, and ... - (grub_term_unregister_output): ... this. - (grub_term_iterate): Split in ... - (grub_term_iterate_input): ... this, and ... - (grub_term_iterate_output): ... this. - - * kern/term.c (grub_term_list): Split in ... - (grub_term_list_input): ... this, and ... - (grub_term_list_output): ... this. Update all users. - (grub_cur_term): Split in ... - (grub_cur_term_input): ... this, and ... - (grub_cur_term_output): ... this. Update all users. - (grub_term_set_current): Split in ... - (grub_term_set_current_input): ... this, and ... - (grub_term_set_current_output): ... this. - (grub_term_get_current): Split in ... - (grub_term_get_current_input): ... this, and ... - (grub_term_get_current_output): ... this. - (grub_term_register): Split in ... - (grub_term_register_input): ... this, and ... - (grub_term_register_output): ... this. - (grub_term_unregister): Split in ... - (grub_term_unregister_input): ... this, and ... - (grub_term_unregister_output): ... this. - (grub_term_iterate): Split in ... - (grub_term_iterate_input): ... this, and ... - (grub_term_iterate_output): ... this. - - * kern/misc.c (grub_abort): Split use of grub_term_get_current() into - a check for input and one for output (and only attempt to get keys - from user when input works). - - * util/grub-probe.c (grub_term_get_current): Split in ... - (grub_term_get_current_input): ... this, and ... - (grub_term_get_current_output): ... this. - * util/grub-fstest.c: Likewise. - * util/i386/pc/grub-setup.c: Likewise. - * util/grub-editenv.c: Likewise. - - Portability adjustments: - - * conf/i386-ieee1275.rmk (kernel_elf_SOURCES): Remove - `term/i386/pc/at_keyboard.c'. - * kern/ieee1275/init.c [__i386__] (grub_machine_init): Remove call to - grub_keyboard_controller_init() (now handled by terminal .init). - * kern/i386/coreboot/init.c (grub_machine_init): Add call to - grub_at_keyboard_init(). - * include/grub/i386/ieee1275/console.h (grub_keyboard_controller_init) - (grub_console_checkkey, grub_console_getkey): Remove (now provided by - at_keyboard.mod via input terminal interface). - * include/grub/i386/coreboot/console.h: Convert into a stub for - `'. - - Migrate full terminals to new API: - - * term/efi/console.c (grub_console_term): Split into ... - (grub_console_term_input): ... this, and ... - (grub_console_term_output): ... this. Update all users. - * term/ieee1275/ofconsole.c: Remove __i386__ hack. - (grub_ofconsole_init): Split into ... - (grub_ofconsole_init_input): ... this, and ... - (grub_ofconsole_init_output): ... this. - (grub_ofconsole_term): Split into ... - (grub_ofconsole_term_input): ... this, and ... - (grub_ofconsole_term_output): ... this. Update all users. - * term/i386/pc/serial.c (grub_serial_term): Split into ... - (grub_serial_term_input): ... this, and ... - (grub_serial_term_output): ... this. Update all users. - * term/i386/pc/console.c (grub_console_term): Split into ... - (grub_console_term_input): ... this, and ... - (grub_console_term_output): ... this. Update all users. - (grub_console_term_input): Only enable it on PC/BIOS platform. - (grub_console_init): Remove grub_keyboard_controller_init() call. - - Migrate input terminals to new API: - - * term/i386/pc/at_keyboard.c: Replace `cpu' and `machine' with - `i386' and `i386/pc' to enable build on x86_64 (this driver is - i386-specific anyway). - (grub_console_checkkey): Rename to ... - (grub_at_keyboard_checkkey): ... this. Static-ize. Update all - users. - (grub_keyboard_controller_orig): New variable. - (grub_console_getkey): Rename to ... - (grub_at_keyboard_getkey): ... this. Static-ize. Update all - users. - (grub_keyboard_controller_init): Static-ize. Save original - controller value so that it can be restored ... - (grub_keyboard_controller_fini): ... here (new function). - (grub_at_keyboard_term): New structure. - (GRUB_MOD_INIT(at_keyboard), GRUB_MOD_FINI(at_keyboard)): New - functions. - - Migrate output terminals to new API: - - * term/i386/pc/vga.c (grub_vga_term): Change type to - `struct grub_term_output'. Remove `.checkkey' and `.getkey' - members. Update all users. - * term/gfxterm.c (grub_video_term): Change type to - `struct grub_term_output'. Remove `.checkkey' and `.getkey' - members. Update all users. - * include/grub/i386/pc/console.h (grub_console_checkkey) - (grub_console_getkey): Do not export (no longer needed by gfxterm, - etc). - - Migrate `terminal' command and userland tools to new API: - - * commands/terminal.c (grub_cmd_terminal): Split into ... - (grub_cmd_terminal_input): ... this, and ... - (grub_cmd_terminal_output): ... this. - (GRUB_MOD_INIT(terminal)): Split `terminal' command in two commands: - `terminal_input' and `terminal_output'. - * util/grub.d/00_header.in: Adjust `terminal' calls to new - `terminal_input' / `terminal_output' API. - * util/grub-mkconfig.in: Export ${GRUB_TERMINAL_INPUT} and - ${GRUB_TERMINAL_OUTPUT} instead of ${GRUB_TERMINAL} (and if user - provided ${GRUB_TERMINAL}, convert it). - -2008-11-04 Robert Millan - - * util/grub.d/10_freebsd.in: New file. Generate grub configuration - for FreeBSD. - * conf/common.rmk (grub-mkconfig_SCRIPTS): Add 10_freebsd. - -2008-11-03 Bean - - * kern/elf.c (grub_elf32_load): Revert to previous code. - (grub_elf64_load): Likewise. - - * loader/i386/bsd.c (grub_bsd_elf32_hook): Change return address. - -2008-11-01 Robert Millan - - * Makefile.in (CPPFLAGS): Fix builddir=. assumption. - (TARGET_CPPFLAGS): Likewise. - * genmk.rb (mod_src): Fix builddir=. and srcdir=. assumptions. - -2008-11-01 Carles Pina i Estany - - * normal/menu.c (run_menu): Add Previous and Next Page keys in menu. - -2008-10-29 Guillem Jover - - * disk/lvm.c (grub_lvm_scan_device): Fix error recovery by delaying the - addition of objects until the code is not going to be able to fail. - -2008-10-29 Guillem Jover - - * disk/lvm.c (grub_lvm_scan_device): Fix possible NULL value handling - (add a missing NULL check, and correct them by moving the pointer - operations after the actual check). - -2008-10-29 Robert Millan - - * util/i386/pc/grub-install.in: Handle empty string as output from - make_system_path_relative_to_its_root(). - -2008-10-05 Hans Lambermont - - * disk/lvm.c (grub_lvm_scan_device): Allocate buffer space for the - circular metadata worst case scenario. If the metadata is circular - then copy the wrap in place. - * include/grub/lvm.h: Add GRUB_LVM_MDA_HEADER_SIZE, from the LVM2 - project lib/format_text/layout.h - Circular metadata bug found and patch debugged by Jan Derk Gerlings. - -2008-10-03 Felix Zielcke - - * util/i386/pc/grub-install.in: Source grub-mkconfig_lib instead of update-grub_lib. - -2008-10-03 Felix Zielcke - - * util/update-grub_lib.in: Mention filename in warning message. - -2008-09-29 Felix Zielcke - - * NEWS: Update for rename of update-grub to grub-mkconfig. - -2008-09-29 Felix Zielcke - - * util/update-grub_lib.in: Copy to ... - * util/grub-mkconfig_lib.in: ... this. Update all users. - * util/update-grub_lib.in: Make it a stub to `grub-mkconfig_lib.in'. - * util/update-grub.in: Rename to ... - * util/grub-mkconfig.in: ... this. Update all users. Remove `-y' - option. Add `--output' option to allow users to specify the generated - configuration file. Default to stdout. - (update_grub_dir): Rename to ... - (grub_mkconfig_dir): ... this. - (grub_cfg): Default to an empty string. - * conf/common.rmk (update-grub): Rename to ... - (grub-mkconfig): ... this. - (update-grub_lib): Copy to ... - (grub-mkconfig_lib): ... this. - (update-grub_SCRIPTS): Copy to ... - (grub-mkconfig_SCRIPTS): ... this. Update all users. - (update-grub_DATA): Rename to ... - (grub-mkconfig_DATA): ... this. - -2008-09-28 Robert Millan - - * fs/iso9660.c (struct grub_iso9660_primary_voldesc): Rename `created' - to `modified'. Add the real `created' field. - (grub_iso9660_uuid): Use `modified' rather than `created' for - constructing the UUID. - -2008-09-28 Felix Zielcke - - fs/jfs.c (grub_jfs_find_file): Treat multiple slashes like one. - Based on code from Tomas Ebenlendr . - -2008-09-28 Bean - - * fs/ntfs.c (grub_ntfs_iterate_dir): Fix a bug in the previous patch. - Thanks to Christian Franke for finding this bug. - -2008-09-25 Robert Millan - - * util/grub-mkdevicemap.c (make_device_map): Actually replace all - instances of grub_util_get_disk_name() (see previous commit). - -2008-09-25 Robert Millan - - * conf/i386-pc.rmk (grub_mkdevicemap_SOURCES): Remove - `util/i386/get_disk_name.c'. - * conf/i386-efi.rmk: Likewise. - * conf/x86_64-efi.rmk: Likewise. - * conf/i386-coreboot.rmk: Likewise. - * conf/i386-ieee1275.rmk: Likewise. - * conf/powerpc-ieee1275.rmk (grub_mkdevicemap_SOURCES): Remove - `util/ieee1275/get_disk_name.c'. - * include/grub/util/misc.h (grub_util_get_disk_name): Remove. - * util/ieee1275/get_disk_name.c: Remove file. - * util/i386/get_disk_name.c: Remove file. - * util/grub-mkdevicemap.c (make_device_map): Back to hardcoding - "hd%d" for device.map entries, rather than using - grub_util_get_disk_name(). - -2008-09-24 Carles Pina i Estany - - * disk/dmraid_nvidia.c (grub_dmraid_nv_detect): Fix `unused parameter' - warning. - * commands/i386/pc/pxecmd.c (dmraid_nvidia): Likewise. - -2008-09-24 Carles Pina i Estany - - * include/grub/i386/pc/console.h (GRUB_TERM_NPAGE): - Changed to 0x5100. - (GRUB_TERM_PPAGE): Changed to 0x4900. - -2008-09-24 Robert Millan - - * include/grub/powerpc/ieee1275/console.h (GRUB_CONSOLE_KEY_*): Remove - macros (they were i386-pc specific). - * include/grub/sparc64/ieee1275/console.h: Likewise. - * include/grub/efi/console.h: Likewise. - -2008-09-22 Bean - - * fs/ntfs.c (grub_ntfs_iterate_dir): Fix a rare case where $BITMAP is - resident and in attribute list. - - * include/grub/ntfs.h (BMP_LEN): Removed. - -2008-09-22 Bean - - * disk/ata.c (grub_atapi_open): Initialize devfnd, no need to set - scsi->name and scsi->luns, as they will be set in grub_scsi_open. - - * disk/scsi.c (grub_scsi_open): Don't call p->close (scsi) here when - error occurs, as grub_disk_open will call grub_disk_close, which will - call p->close (scsi). - -2008-09-21 Felix Zielcke - - * configure.ac (AC_INIT): Quote `GRUB' string and version number. - (AC_PREREQ): Bumped to 2.59. - (AC_TRY_COMPILE): Replace obsolete macro with ... - (AC_COMPILE_IFELSE): ... this. - * aclocal.m4 (AC_TRY_LINK): Replace obsolete macro with ... - (AC_LINK_IFELSE): ... this. - -2008-09-21 Felix Zielcke - - * autogen.sh: Add a call to `gendistlist.sh'. - -2008-09-19 Christian Franke - - * aclocal.m4 (grub_CHECK_ENABLE_EXECUTE_STACK): New function. - * configure.ac: Call grub_CHECK_ENABLE_EXECUTE_STACK. - * include/grub/misc.h [NEED_ENABLE_EXECUTE_STACK]: - Export __enable_execute_stack() to modules. - * kern/misc.c [NEED_ENABLE_EXECUTE_STACK] (__enable_execute_stack): - New function. - -2008-09-09 Felix Zielcke - - * Makefile.in (RMKFILES): Add `i386.rmk' and `x86_64-efi.rmk'. - Sort the list. - -2008-09-09 Felix Zielcke - - * util/hostdisk.c: Replace #include with - #include . - -2008-09-08 Robert Millan - - * loader/i386/pc/multiboot.c (grub_multiboot_load_elf32): Skip - segments when their filesz is zero (grub_file_read() interprets - zero-size as "read until EOF", which results in memory corruption). - Use `lowest_segment' rather than 0 for calculating the current - segment load address. - -2008-09-08 Robert Millan - - * util/hostdisk.c (open_device): Replace a grub_util_info() call - with grub_dprintf("hostdisk", ...), as it was so verbose that it - clobbered useful information. - -2008-09-08 Robert Millan - - * include/grub/util/biosdisk.h: Move to ... - * include/grub/util/hostdisk.h: ... here. Update all users. - * util/biosdisk.c: Move to ... - * util/hostdisk.c: ... here. Update all users. - -2008-09-07 Robert Millan - - * loader/i386/pc/multiboot.c (mmap_addr, mmap_length): Remove - variables. - (grub_multiboot): Move `mbi' allocation upwards, so that mmap address - and length can be stored directly in the `mbi->mmap_addr' and - `mbi->mmap_length' struct fields. - -2008-09-07 Robert Millan - - * conf/i386.rmk: New file. Provides declaration for building - `cpuid.mod'. - * conf/i386-pc.rmk (pkglib_MODULES): Remove `cpuid.mod'. - (cpuid_mod_SOURCES, cpuid_mod_CFLAGS, cpuid_mod_LDFLAGS): Remove - variables. - Include `conf/i386.mk'. - * conf/i386-efi.rmk: Likewise. - * conf/x86_64-efi.rmk: Likewise. - * conf/i386-coreboot.rmk: Likewise. - * conf/i386-ieee1275.rmk: Likewise. - -2008-09-07 Vesa Jääskeläinen - - Based on patch created by Colin D Bennett . - Adds optimization support for BGR based modes. - - * include/grub/i386/pc/vbeblit.h (grub_video_i386_vbeblit_R8G8B8A8_R8G8B8A8) Removed. - (grub_video_i386_vbeblit_R8G8B8X8_R8G8B8X8): Likewise. - (grub_video_i386_vbeblit_R8G8B8_R8G8B8A8): Likewise. - (grub_video_i386_vbeblit_R8G8B8_R8G8B8X8): Likewise. - (grub_video_i386_vbeblit_index_R8G8B8A8): Likewise. - (grub_video_i386_vbeblit_index_R8G8B8X8): Likewise. - (grub_video_i386_vbeblit_R8G8B8A8_R8G8B8): Likewise. - (grub_video_i386_vbeblit_R8G8B8_R8G8B8): Likewise. - (grub_video_i386_vbeblit_index_R8G8B8): Likewise. - (grub_video_i386_vbeblit_index_index): Likewise. - (grub_video_i386_vbeblit_replace_directN): Added. - (grub_video_i386_vbeblit_replace_BGRX8888_RGBX8888): Likewise. - (grub_video_i386_vbeblit_replace_BGRX8888_RGB888): Likewise. - (grub_video_i386_vbeblit_replace_BGR888_RGBX8888): Likewise. - (grub_video_i386_vbeblit_replace_BGR888_RGB888): Likewise. - (grub_video_i386_vbeblit_replace_RGBX8888_RGB888): Likewise. - (grub_video_i386_vbeblit_replace_RGB888_RGBX8888): Likewise. - (grub_video_i386_vbeblit_replace_index_RGBX8888): Likewise. - (grub_video_i386_vbeblit_replace_index_RGB888): Likewise. - (grub_video_i386_vbeblit_blend_BGRA8888_RGBA8888): Likewise. - (grub_video_i386_vbeblit_blend_BGR888_RGBA8888): Likewise. - (grub_video_i386_vbeblit_blend_RGBA8888_RGBA8888): Likewise. - (grub_video_i386_vbeblit_blend_RGB888_RGBA8888): Likewise. - (grub_video_i386_vbeblit_blend_index_RGBA8888): Likewise. - - * include/grub/i386/pc/vbefill.h (grub_video_i386_vbefill_R8G8B8A8) Removed. - (grub_video_i386_vbefill_R8G8B8): Likewise. - (grub_video_i386_vbefill_index): Likewise. - (grub_video_i386_vbefill_direct32): Added. - (grub_video_i386_vbefill_direct24): Likewise. - (grub_video_i386_vbefill_direct16): Likewise. - (grub_video_i386_vbefill_direct8): Likewise. - - * include/grub/video.h (grub_video_blit_format): Removed - GRUB_VIDEO_BLIT_FORMAT_R8G8B8A8, GRUB_VIDEO_BLIT_FORMAT_R8G8B8. - (grub_video_blit_format): Added GRUB_VIDEO_BLIT_FORMAT_RGBA_8888, - GRUB_VIDEO_BLIT_FORMAT_BGRA_8888, GRUB_VIDEO_BLIT_FORMAT_RGB_888, - GRUB_VIDEO_BLIT_FORMAT_BGR_888, GRUB_VIDEO_BLIT_FORMAT_RGB_565, - GRUB_VIDEO_BLIT_FORMAT_BGR_565. - - * video/video.c (grub_video_get_blit_format): Updated to use new - blit formats. Added handling for 16 bit color modes. - - * video/i386/pc/vbe.c (grub_video_vbe_fill_rect): Updated to use new - fillers. - (common_blitter): Updated to use new blitters. - - * video/i386/pc/vbeblit.c (grub_video_i386_vbeblit_R8G8B8A8_R8G8B8A8): - Removed. - (grub_video_i386_vbeblit_R8G8B8X8_R8G8B8X8): Likewise. - (grub_video_i386_vbeblit_R8G8B8_R8G8B8A8): Likewise. - (grub_video_i386_vbeblit_R8G8B8_R8G8B8X8): Likewise. - (grub_video_i386_vbeblit_index_R8G8B8A8): Likewise. - (grub_video_i386_vbeblit_index_R8G8B8X8): Likewise. - (grub_video_i386_vbeblit_R8G8B8A8_R8G8B8): Likewise. - (grub_video_i386_vbeblit_R8G8B8_R8G8B8): Likewise. - (grub_video_i386_vbeblit_index_R8G8B8): Likewise. - (grub_video_i386_vbeblit_index_index): Likewise. - (grub_video_i386_vbeblit_replace_directN): Added. - (grub_video_i386_vbeblit_replace_BGRX8888_RGBX8888): Likewise. - (grub_video_i386_vbeblit_replace_BGRX8888_RGB888): Likewise. - (grub_video_i386_vbeblit_replace_BGR888_RGBX8888): Likewise. - (grub_video_i386_vbeblit_replace_BGR888_RGB888): Likewise. - (grub_video_i386_vbeblit_replace_RGBX8888_RGB888): Likewise. - (grub_video_i386_vbeblit_replace_RGB888_RGBX8888): Likewise. - (grub_video_i386_vbeblit_replace_index_RGBX8888): Likewise. - (grub_video_i386_vbeblit_replace_index_RGB888): Likewise. - (grub_video_i386_vbeblit_blend_BGRA8888_RGBA8888): Likewise. - (grub_video_i386_vbeblit_blend_BGR888_RGBA8888): Likewise. - (grub_video_i386_vbeblit_blend_RGBA8888_RGBA8888): Likewise. - (grub_video_i386_vbeblit_blend_RGB888_RGBA8888): Likewise. - (grub_video_i386_vbeblit_blend_index_RGBA8888): Likewise. - - * video/i386/pc/vbefill.c (grub_video_i386_vbefill_R8G8B8A8): Removed. - (grub_video_i386_vbefill_R8G8B8): Likewise. - (grub_video_i386_vbefill_index): Likewise. - (grub_video_i386_vbefill_direct32): Added. - (grub_video_i386_vbefill_direct24): Likewise. - (grub_video_i386_vbefill_direct16): Likewise. - (grub_video_i386_vbefill_direct8): Likewise. - - * video/readers/jpeg.c (grub_jpeg_decode_sos): Adapt to new blitter - types. - - * video/readers/tga.c (grub_video_reader_tga): Adapt to new blitter - types. - - * video/readers/png.c (grub_png_decode_image_header): Adapt to new - blitter types. - - * video/bitmap.c (grub_video_bitmap_create): Adapt to new blitter - types. - -2008-09-06 Felix Zielcke - - * disk/raid.c (insert_array): Set `array->chunk_size' to 64 for - RAID level 1. - -2008-09-06 Felix Zielcke - - * fs/iso9660.c (grub_iso9660_date): New structure. - (grub_iso9660_primary_voldesc): Add `grub_iso9660_date' member. - (grub_iso9660_uuid): New function. - -2008-09-05 Bean - - * fs/fshelp.c (grub_fshelp_find_file): Handle case insensitive names. - - * fs/ntfs.c (list_file): Ignore names in DOS namespace, set the case - insensitive bit for names in Win32 and Win32 & DOS namespace. - - * include/grub/fshelp.h (GRUB_FSHELP_CASE_INSENSITIVE): New macro. - - * include/grub/types.h (LONG_MAX): Likewise. - -2008-09-04 Felix Zielcke - - * util/getroot.c: Include . - (grub_util_get_grub_dev): Rewrite to use asprintf for mdraid devices, - add support for /dev/md/N devices and handle LVM double dash escaping. - -2008-09-04 Felix Zielcke - - * config.guess: Update to latest version from config git. - * config.sub: Likewise. - -2008-09-03 Robert Millan - - * disk/scsi.c (grub_scsi_open): Remove size limit when printing - `disk->total_sectors'. - -2008-09-01 Colin D Bennett - - * include/grub/normal.h: Fixed incorrect comment for - GRUB_COMMAND_FLAG_NO_ARG_PARSE. - -2008-09-01 Colin D Bennett - - * commands/i386/pc/vbeinfo.c (grub_cmd_vbeinfo): Replaced constant - values with defines. - - * include/grub/i386/pc/vbe.h (GRUB_VBE_MODEATTR_SUPPORTED): Added. - (GRUB_VBE_MODEATTR_RESERVED_1): Likewise. - (GRUB_VBE_MODEATTR_BIOS_TTY_OUTPUT_SUPPORT): Likewise. - (GRUB_VBE_MODEATTR_COLOR): Likewise. - (GRUB_VBE_MODEATTR_GRAPHICS): Likewise. - (GRUB_VBE_MODEATTR_VGA_COMPATIBLE): Likewise. - (GRUB_VBE_MODEATTR_VGA_WINDOWED_AVAIL): Likewise. - (GRUB_VBE_MODEATTR_LFB_AVAIL): Likewise. - (GRUB_VBE_MODEATTR_DOUBLE_SCAN_AVAIL): Likewise. - (GRUB_VBE_MODEATTR_INTERLACED_AVAIL): Likewise. - (GRUB_VBE_MODEATTR_TRIPLE_BUF_AVAIL): Likewise. - (GRUB_VBE_MODEATTR_STEREO_AVAIL): Likewise. - (GRUB_VBE_MODEATTR_DUAL_DISPLAY_START): Likewise. - (GRUB_VBE_MEMORY_MODEL_TEXT): Likewise. - (GRUB_VBE_MEMORY_MODEL_CGA): Likewise. - (GRUB_VBE_MEMORY_MODEL_HERCULES): Likewise. - (GRUB_VBE_MEMORY_MODEL_PLANAR): Likewise. - (GRUB_VBE_MEMORY_MODEL_NONCHAIN4_256): Likewise. - (GRUB_VBE_MEMORY_MODEL_YUV): Likewise. - -2008-08-31 Robert Millan - - * loader/i386/pc/multiboot.c (grub_get_multiboot_mmap_len): Fix - declaration. - (grub_multiboot): Fix a few warnings. - -2008-08-31 Robert Millan - - * loader/i386/pc/multiboot.c: Update comment not to say that - boot_device support is unimplemented. - -2008-08-31 Robert Millan - - * loader/i386/pc/multiboot.c: Update comment not to say that a.out - or memory map support are unimplemented. - -2008-08-31 Colin D Bennett - - * util/i386/pc/grub-mkrescue.in: Support multiple overlay directories. - -2008-08-31 Colin D Bennett - - * commands/i386/pc/vbeinfo.c (grub_cmd_vbeinfo): Show VBE version and - total video memory in 'vbeinfo' output; show color format details for - each video mode. - -2008-08-30 Pavel Roskin - - * util/genmoddep.c: Remove for real this time. - * DISTLIST: Remove util/genmoddep.c. - -2008-08-30 Robert Millan - - * kern/i386/pc/startup.S (multiboot_header): Force 4-byte alignment - as required by Multiboot spec (it was already 4-byte aligned, but - only by chance). - -2008-08-29 Pavel Roskin - - * kern/powerpc/ieee1275/crt0.S: Rename to ... - * kern/powerpc/ieee1275/startup.S: ... this. - * conf/powerpc-ieee1275.rmk: Adjust for the above. - * DISTLIST: Likewise. - - * kern/powerpc/ieee1275/crt0.S: Include grub/symbol.h and - grub/cpu/kernel.h. Add start label for consistency with other - platforms. Add grub_prefix immediately after start. Add jump - to the code after grub_prefix. - * include/grub/powerpc/kernel.h: Provide valid values for - GRUB_KERNEL_CPU_PREFIX and GRUB_KERNEL_CPU_DATA_END. - -2008-08-29 Bean - - * configure.ac: Change host_os to cygwin for mingw. - (asprintf): New check for function. - - * include/grub/symbol.h: Replace #ifndef __CYGWIN__ with - #if ! defined (__CYGWIN__) && ! defined (__MINGW32__). - - * include/grub/util/misc.h: #include and , - declare asprintf if HAVE_ASPRINTF is not set, declare fseeko, ftello, - sync, sleep and grub_util_get_disk_size for mingw. - - * util/biosdisk.c (grub_util_biosdisk_open): Use grub_util_get_disk_size - to get size in mingw. - (open_device): Use flag O_BINARY if it's defined. - (find_root_device): Add dummy code for mingw. - - * util/grub-mkdevicemap.c (get_floppy_disk_name): Return 0 for mingw. - (get_ide_disk_name): Return //./PHYSICALDRIVE%d for mingw. - (get_scsi_disk_name): Return 0 for mingw. - - * util/hostfs.c: #include . - (grub_hostfs_open): Use "rb" flag to open file, use - grub_util_get_disk_size to get disk size for mingw. - - * util/misc.c: #include and in mingw. - (asprintf): New function if HAVE_ASPRINTF is not set. - (sync): New function for mingw. - (sleep): Likewise. - (grub_util_get_disk_size): Likewise. - -2008-08-28 Pavel Roskin - - * conf/powerpc-ieee1275.rmk (kernel_elf_SOURCES): Add - kern/time.c. - -2008-08-28 Robert Millan - - * util/biosdisk.c (find_grub_drive): Declare missing `i' variable. - -2008-08-28 Robert Millan - - Change find_grub_drive() syntax so it doesn't prevent it from - detecting NULL names as errors. - - * util/biosdisk.c (find_grub_drive): Move free slot search code - from here ... - (find_free_slot): ... to here. - (read_device_map): Use find_free_slot() to search for free slots. - -2008-08-27 Marco Gerards - - * conf/common.rmk (pkglib_MODULES): Add scsi.mod. - (scsi_mod_SOURCES): New variable. - (scsi_mod_CFLAGS): Likewise - (scsi_mod_LDFLAGS): Likewise. - - * disk/scsi.c: New file. - - * include/grub/scsi.h: Likewise. - - * include/grub/scsicmd.h: Likewise. - - * disk/ata.c: Include . - (grub_atapi_packet): Do not use grub_ata_cmd, use registers - instead. - (grub_ata_iterate): Skip ATAPI devices. - (grub_ata_open): Only handle ATAPI devices. - (struct grub_atapi_read): Removed. - (grub_atapi_readsector): Likewise. - (grub_ata_read): No longer handle ATAPI devices. - (grub_ata_write): Likewise. - (grub_atapi_iterate): New function. - (grub_atapi_read): Likewise. - (grub_atapi_write): Likewise. - (grub_atapi_open): Likewise. - (grub_atapi_close): Likewise. - (grub_atapi_dev): New variable. - (GRUB_MOD_INIT(ata)): Register ATAPI as SCSI device. - (GRUB_MOD_FINI(ata)): Unregister ATAPI. - - * include/grub/disk.h (enum grub_disk_dev_id): Add - `GRUB_DISK_DEVICE_SCSI_ID'. - -2008-08-26 Robert Millan - - * util/biosdisk.c (grub_util_biosdisk_open, open_device) - (grub_util_biosdisk_get_grub_dev): Make error messages a bit more - descriptive. - -2008-08-23 Bean - - * conf/common.rmk (grub_probe_SOURCES): Add disk/mdraid_linux.c. - (grub_fstest_SOURCES): Add disk/raid5_recover.c, disk/raid6_recover.c, - disk/mdraid_linux.c and disk/dmraid_nvidia.c and lib/crc.c. - (pkglib_MODULES): Add raid5rec.mod, raid6rec.mod, mdraid.mod and - dm_nv.mod. - (raid5rec_mod_SOURCES): New macro. - (raid5rec_mod_CFLAGS): Likewise. - (raid5rec_mod_LDFLAGS): Likewise. - (raid6rec_mod_SOURCES): Likewise. - (raid6rec_mod_CFLAGS): Likewise. - (raid6rec_mod_LDFLAGS): Likewise. - (mdraid_mod_SOURCES): Likewise. - (mdraid_mod_CFLAGS): Likewise. - (mdraid_mod_LDFLAGS): Likewise. - (dm_nv_mod_SOURCES): Likewise. - (dm_nv_mod_CFLAGS): Likewise. - (dm_nv_mod_LDFLAGS): Likewise. - - * conf/i386-pc.rmk (grub_setup_SOURCES): Add disk/mdraid_linux.c. - (grub_emu_SOURCES): Add disk/raid5_recover.c, disk/raid6_recover.c, - disk/mdraid_linux.c and disk/dmraid_nvidia.c. - - * conf/i386-coreboot.rmk (grub_emu_SOURCES): Add disk/raid5_recover.c, - disk/raid6_recover.c, disk/mdraid_linux.c and disk/dmraid_nvidia.c. - - * conf/i386-efi.rmk (grub_emu_SOURCES): Likewise. - - * conf/x86_64-efi.rmk (grub_emu_SOURCES): Likewise. - - * conf/i386-ieee1275.rmk (grub_emu_SOURCES): Likewise. - - * conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Likewise. - - * disk/raid5_recover.c: New file. - - * disk/raid6_recover.c: Likewise. - - * disk/mdraid_linux.c: Likewise. - - * disk/dmraid_nvidia.c: Likewise. - - * disk/i386/pc/biosdisk.c: Set total_sectors of cdrom device to - ULONG_MAX. - - * disk/raid.c (grub_raid_open): Use the size of the smallest disk to - calculate the size of raid device. - (grub_raid_read): Simplify raid0 code. Support raid4, raid6 and four - different layout of raid5. - (grub_raid_scan_device): Remove code specific to mdraid. - (grub_raid_list): New variable. - (free_array): New function. - (grub_raid_register): Likewise. - (grub_raid_unregister): Likewise. - (grub_raid_rescan): Likewise. - (GRUB_MOD_INIT): Don't iterate device here. - (GRUB_MOD_FINI): Use free_array to release resource. - - * include/grub/raid.h: Remove macro and structure specific to mdraid. - (grub_raid5_recover_func_t): New function variable type. - (grub_raid6_recover_func_t): Likewise. - (grub_raid5_recover_func): New variable. - (grub_raid6_recover_func): Likewise. - (grub_raid_register): New function. - (grub_raid_unregister): Likewise. - (grub_raid_rescan): Likewise. - (grub_raid_block_xor): Likewise. - - * util/grub-fstest.c: Add #include and . - (CMD_CRC): New macro. - (part): Removed. - (read_file): Handle device as well as file. - (cmd_crc): New function. - (fstest): Handle multiple disks. - (options): Remove part, raw and long, add root and diskcount. - (usage): Add crc, remove -p, -r, -l, add -r and -c. - (main): Find the first non option entry and ignore subsequent options, - add handling for the new options, support multiple disks. - - * util/grub-probe.c (probe): Add mdraid to abstraction_name. - -2008-08-23 Bean - - * normal/x86_64/setjmp.S (grub_longjmp): Return 1 when val = 0. - - * genfslist.sh: Ignore kernel.mod. - - * genpartmaplist.sh: Likewise. - -2008-08-23 Robert Millan - - * util/getroot.c (find_root_device): Skip anything that starts with - a dot, not just directories. This avoids things like /dev/.tmp.md0. - -2008-08-22 Felix Zielcke - - * util/update-grub.in (GRUB_GFXMODE): Export variable. - * util/grub.d/00_header.in: Allow the administrator to change default - gfxmode via ${GRUB_GFXMODE}. - -2008-08-21 Felix Zielcke - - * fs/ntfs.c (grub_ntfs_mount): Fix a memory leak. - -2008-08-21 Robert Millan - - * loader/i386/linux.c: New file. Implements generic 32-bit Linux - loader. - * conf/i386-coreboot.rmk (_linux_mod_SOURCES): Replace - `loader/i386/pc/linux.c' with `loader/i386/linux.c'. - -2008-08-20 Carles Pina i Estany - - * menu/normal.c (run_menu): Replace hardcoded numbers with macros - (16 for GRUB_TERM_UP and 14 for GRUB_TERM_DOWN) - -2008-08-19 Robert Millan - - * term/gfxterm.c (DEFAULT_CURSOR_COLOR): Remove. - (struct grub_virtual_screen): Remove `cursor_color'. - (grub_virtual_screen_setup): Remove `virtual_screen.cursor_color' - initialization. - (write_cursor): Use `virtual_screen.fg_color' to draw cursor. - -2008-08-18 Robert Millan - - Unify (identical) linux_normal.c files. - * loader/i386/efi/linux_normal.c: Move from here ... - * loader/linux_normal.c: ... to here. Update all users. - * loader/i386/pc/linux_normal.c: Delete. Update all users. - * loader/i386/ieee1275/linux_normal.c: Likewise. - -2008-08-18 Robert Millan - - * include/grub/i386/linux.h (LINUX_LOADER_ID_LILO) - (LINUX_LOADER_ID_LOADLIN, LINUX_LOADER_ID_BOOTSECT) - (LINUX_LOADER_ID_SYSLINUX, LINUX_LOADER_ID_ETHERBOOT) - (LINUX_LOADER_ID_ELILO, LINUX_LOADER_ID_GRUB, LINUX_LOADER_ID_UBOOT) - (LINUX_LOADER_ID_XEN, LINUX_LOADER_ID_GUJIN, LINUX_LOADER_ID_QEMU): - New macros. - (GRUB_LINUX_CL_OFFSET, GRUB_LINUX_CL_END_OFFSET): Move from here ... - * loader/i386/pc/linux.c (GRUB_LINUX_CL_OFFSET) - (GRUB_LINUX_CL_END_OFFSET): ... to here. - * loader/i386/efi/linux.c (GRUB_EFI_CL_OFFSET): Rename to ... - (GRUB_LINUX_CL_OFFSET): ... this. Update all users. - (GRUB_EFI_CL_END_OFFSET): Rename to ... - (GRUB_LINUX_CL_END_OFFSET): ... this. Update all users. - (grub_rescue_cmd_linux): Macroify `type_of_loader' initialization. - Initialize `params->video_cursor_x' and `params->video_cursor_y' - portably using grub_getxy(). - Replace `-EFI' with `-bzImage' in boot message. - -2008-08-17 Robert Millan - - * include/grub/x86_64/kernel.h: New file ( stub). - -2008-08-17 Robert Millan - - * conf/i386-pc.rmk (kernel_img_SOURCES): Add `kern/i386/pc/mmap.c'. - - * include/grub/i386/pc/init.h (GRUB_MACHINE_MEMORY_AVAILABLE) - (GRUB_MACHINE_MEMORY_RESERVED): New macros. - (grub_machine_mmap_iterate): New function declaration. - * include/grub/multiboot.h (struct grub_multiboot_mmap_entry): New - structure. - (GRUB_MMAP_MEMORY_AVAILABLE, GRUB_MMAP_MEMORY_RESERVED): New - macros. - - * kern/i386/pc/init.c (grub_machine_init): Replace hardcoded region - type check value with `GRUB_MACHINE_MEMORY_AVAILABLE'. - Move e820 parsing from here ... - * kern/i386/pc/mmap.c: New file. - (grub_machine_mmap_iterate): ... to here. - - * include/grub/i386/coreboot/memory.h: Remove `'. - (GRUB_LINUXBIOS_MEMORY_AVAILABLE): Rename (for consistency) to ... - (GRUB_MACHINE_MEMORY_AVAILABLE): ... this. Update all users. - (grub_available_iterate): Redeclare to return `void', and redeclare - its hook to use grub_uint64_t as addr and size parameters, and rename - to ... - (grub_machine_mmap_iterate): ... this. Update all users. - - * kern/i386/coreboot/mmap.c (grub_mmap_iterate): Simplify parser loop - to make it more readable. Rename to ... - (grub_machine_mmap_iterate): ... this. - - * loader/i386/pc/multiboot.c (mmap_addr, mmap_length): New variables. - (grub_get_multiboot_mmap_len, grub_fill_multiboot_mmap): New functions. - (grub_multiboot): Allocate an extra region after the payload, and fill - it with a Multiboot memory map. Adjust a.out loader to calculate size - with the extra space. - (grub_multiboot_load_elf32): Adjust elf32 loader to calculate size - with the extra space. - -2008-08-17 Carles Pina i Estany - - * menu/normal.c (run_menu): Add Home and End keys in grub-menu. - -2008-08-17 Felix Zielcke - - * gendistlist.sh: Add *.y, *.tex, *.texi, grub.cfg, README, *.sc, - mdate-sh to the list `find' searches for. - * DISTLIST: Regenerated. - -2008-08-16 Felix Zielcke - - * gendistlist.sh (EXTRA_DISTFILES): Remove gensymlist.sh, - genkernsyms.sh. Add geninit.sh, geninitheader.sh, genkernsyms.sh.in, - genmoddep.awk, gensymlist.sh.in. - (DISTDIRS): Add bus, docs, hook, lib. - * DISTLIST: Regenerated. - * NEWS: Add cygwin support and change the `os-prober' entry a bit. - -2008-08-16 Robert Millan - - * disk/raid.c (grub_raid_init): Handle/report errors set by - grub_device_iterate(). - * disk/lvm.c (grub_lvm_init): Likewise. - -2008-08-15 Bean - - * conf/i386-pc.rmk (pkglib_MODULES): Add datetime.mod, date.mod - and datehook.mod. - (datetime_mod_SOURCES): New macro. - (datetime_mod_CFLAGS): Likewise. - (datetime_mod_LDFLAGS): Likewise. - (date_mod_SOURCES): Likewise. - (date_mod_CFLAGS): Likewise. - (date_mod_LDFLAGS): Likewise. - (datehook_mod_SOURCES): Likewise. - (datehook_mod_CFLAGS): Likewise. - (datehook_mod_LDFLAGS): Likewise. - - * conf/i386-coreboot.rmk (pkglib_MODULES): Add datetime.mod, date.mod - and datehook.mod. - (datetime_mod_SOURCES): New macro. - (datetime_mod_CFLAGS): Likewise. - (datetime_mod_LDFLAGS): Likewise. - (date_mod_SOURCES): Likewise. - (date_mod_CFLAGS): Likewise. - (date_mod_LDFLAGS): Likewise. - (datehook_mod_SOURCES): Likewise. - (datehook_mod_CFLAGS): Likewise. - (datehook_mod_LDFLAGS): Likewise. - - * conf/i386-ieee1275.rmk (pkglib_MODULES): Add datetime.mod, date.mod - and datehook.mod. - (datetime_mod_SOURCES): New macro. - (datetime_mod_CFLAGS): Likewise. - (datetime_mod_LDFLAGS): Likewise. - (date_mod_SOURCES): Likewise. - (date_mod_CFLAGS): Likewise. - (date_mod_LDFLAGS): Likewise. - (datehook_mod_SOURCES): Likewise. - (datehook_mod_CFLAGS): Likewise. - (datehook_mod_LDFLAGS): Likewise. - - * conf/i386-efi.rmk (pkglib_MODULES): Add datetime.mod, date.mod - and datehook.mod. - (datetime_mod_SOURCES): New macro. - (datetime_mod_CFLAGS): Likewise. - (datetime_mod_LDFLAGS): Likewise. - (date_mod_SOURCES): Likewise. - (date_mod_CFLAGS): Likewise. - (date_mod_LDFLAGS): Likewise. - (datehook_mod_SOURCES): Likewise. - (datehook_mod_CFLAGS): Likewise. - (datehook_mod_LDFLAGS): Likewise. - - * conf/x86_64-efi.rmk (pkglib_MODULES): Add datetime.mod, date.mod - and datehook.mod. - (datetime_mod_SOURCES): New macro. - (datetime_mod_CFLAGS): Likewise. - (datetime_mod_LDFLAGS): Likewise. - (date_mod_SOURCES): Likewise. - (date_mod_CFLAGS): Likewise. - (date_mod_LDFLAGS): Likewise. - (datehook_mod_SOURCES): Likewise. - (datehook_mod_CFLAGS): Likewise. - (datehook_mod_LDFLAGS): Likewise. - - * kern/env.c (grub_env_insert): Fix a bug in prevp pointer. - - * commands/date.c: New file. - - * hook/datehook.c: Likewise. - - * include/grub/lib/datetime.h: Likewise. - - * include/grub/i386/cmos.h: Likewise. - - * lib/datetime.c: Likewise. - - * lib/i386/datetime.c: Likewise. - - * lib/efi/datetime.c: Likewise. - -2008-08-14 Robert Millan - - * conf/common.rmk (bin_UTILITIES): Add `grub-mkelfimage'. - (grub_mkelfimage_SOURCES): New variable. - (util/elf/grub-mkimage.c_DEPENDENCIES): Likewise. - - * conf/i386-coreboot.rmk (bin_UTILITIES, grub_mkimage_SOURCES) - (grub_mkimage_LDFLAGS, util/elf/grub-mkimage.c_DEPENDENCIES): Remove. - * conf/powerpc-ieee1275.rmk: Likewise. - * conf/i386-ieee1275.rmk: Likewise. - - * kern/ieee1275/init.c: Include `'. - * kern/i386/coreboot/init.c: Likewise. - - * kern/i386/ieee1275/startup.S: Replace `' - with `'. - (GRUB_KERNEL_MACHINE_PREFIX, GRUB_KERNEL_MACHINE_DATA_END): Renamed - to ... - (GRUB_KERNEL_CPU_PREFIX, GRUB_KERNEL_CPU_DATA_END): ... this. - * kern/i386/coreboot/startup.S: Likewise. - - * include/grub/powerpc/ieee1275/kernel.h (GRUB_MOD_ALIGN) - (GRUB_MOD_GAP): Remove. - * include/grub/powerpc/kernel.h: New file. - * include/grub/i386/ieee1275/kernel.h (GRUB_KERNEL_MACHINE_PREFIX) - (GRUB_KERNEL_MACHINE_DATA_END): Remove. - * include/grub/i386/kernel.h: New file. - * include/grub/i386/coreboot/kernel.h (GRUB_MOD_ALIGN) - (GRUB_MOD_GAP, GRUB_KERNEL_MACHINE_PREFIX) - (GRUB_KERNEL_MACHINE_DATA_END): Remove. - - * util/ieee1275/grub-install.in (grub_mkimage): Initialize to use - `grub-mkelfimage'. - Use --directory when invoking grub_mkimage. - - * util/elf/grub-mkimage.c: Include `'. - (add_segments): Replace GRUB_KERNEL_MACHINE_DATA_END and - GRUB_KERNEL_MACHINE_PREFIX with GRUB_KERNEL_CPU_DATA_END - and GRUB_KERNEL_CPU_PREFIX. - -2008-08-14 Felix Zielcke - - * include/grub/err.h (grub_err_printf): New function prototype. - * util/misc.c (grub_err_printf): New function. - * kern/misc.c [! GRUB_UTIL] (grub_err_printf): New alias for - grub_printf. - * kern/err.c (grub_print_error): Use grub_err_printf. - -2008-08-13 Robert Millan - - * docs/grub.cfg: Remove `/dev/' prefix in GNU/Hurd boot entry. - -2008-08-13 Robert Millan - - * docs/grub.cfg: Use the native device name for the example GNU/Hurd - boot entry. - -2008-08-12 Robert Millan - - * loader/i386/pc/multiboot.c (grub_multiboot_load_elf32): Move part - of the relocation code from here ... - (grub_multiboot): ... to here. - (forward_relocator, backward_relocator): Move from here ... - * kern/i386/loader.S (grub_multiboot_forward_relocator) - (grub_multiboot_backward_relocator): ... to here. - (grub_multiboot_real_boot): Use %edx for entry offset. Put Multiboot - magic in %eax. Use %ebp for jumping (so %edx is not trashed). - * include/grub/i386/loader.h (grub_multiboot_forward_relocator) - (grub_multiboot_forward_relocator_end) - (grub_multiboot_backward_relocator) - (grub_multiboot_backward_relocator_end): New variables. - -2008-08-12 Bean - - * disk/raid.c (grub_raid_read): Fix a bug in raid0 code. - -2008-08-11 Robert Millan - - * kern/i386/linuxbios/startup.S: Move from here ... - * kern/i386/coreboot/startup.S: ... to here. - - * kern/i386/linuxbios/init.c: Move from here ... - * kern/i386/coreboot/init.c: ... to here. - - * kern/i386/linuxbios/table.c: Move from here ... - * kern/i386/coreboot/mmap.c: ... to here. - - * conf/i386-coreboot.rmk (kernel_elf_SOURCES): Update moved files. - -2008-08-11 Robert Millan - - * kern/device.c (grub_device_open): Do not handle grub_disk_open() - errors. Leave it to the upper layer to handle them. - -2008-08-09 Christian Franke - - * Makefile.in: Add `target_os' and `enable_grub_pe2elf'. - * conf/common.rmk: Install `grub-pe2elf' only if requested. - Install `grub.d/10_windows' only on Cygwin. - * configure.ac: Add subst of `target_os'. - Check `target_os' also before setting TARGET_OBJ2ELF. - Add `--enable-grub-pe2elf'. - -2008-08-08 Robert Millan - - * kern/disk.c: Replace `' with `'. - (grub_last_time): Change type to grub_uint64_t. - (grub_disk_open): Migrate code from to using grub_get_time_ms(). - (grub_disk_close): Likewise. - - * normal/menu.c: Replace `' with `'. - (run_menu): Migrate code from to using grub_get_time_ms(). - - * util/misc.c (grub_get_time_ms): New function. - -2008-08-08 Marco Gerards - - * disk/ata.c (grub_ata_regget): Change return type to - `grub_uint8_t'. - (grub_ata_regget2): Likewise. - (grub_ata_wait_status): New function. - (grub_ata_wait_busy): Removed function, updated all users to use - `grub_ata_wait_status'. - (grub_ata_wait_drq): Likewise. - (grub_ata_cmd): New function. - (grub_ata_pio_read): Change return type to `grub_uint8_t'. Add - error handling. - (grub_ata_pio_write): Add error handling. - (grub_atapi_identify): Likewise. - (grub_atapi_packet): Use `grub_ata_cmd' and improve error - handling. - (grub_ata_identify): Use `grub_ata_cmd' and improve error - handling. Actually use the detected registers. Reorder the - detection logic such that it is easier to read. - (grub_ata_pciinit): Do not assign the same ID to each controller. - (grub_ata_setaddress): Use `grub_ata_cmd' and improve error - handling. - (grub_atapi_readsector): Check the result of `grub_ata_pio_read'. - - * include/grub/err.h (grub_err_t): Add `GRUB_ERR_TIMEOUT'. - -2008-08-08 Marco Gerards - - * NEWS: Update. - -2008-08-07 Bean - - * include/grub/x86_64/pci.h: New file. - -2008-08-07 Christian Franke - - * kern/i386/pit.c (TIMER2_SPEAKER): New define. - (TIMER2_GATE): Likewise. - (grub_pit_wait): Add enable/disable of the timer2 gate - bit of port 0x61. This fixes a possible infinite loop. - -2008-08-07 Bean - - * conf/x86_64-efi.rmk (kernel_mod_SOURCES): Add kern/time.c, - kern/i386/tsc.c and kern/i386/pit.c. - - * include/grub/i386/tsc.h (grub_cpu_is_cpuid_supported): Handle - x86_64 platform. - - * kern/i386/efi/init.c: Replace with - . - - * kern/i386/pit.c: Replace with . - -2008-08-07 Bean - - * conf/i386-efi.rmk (kernel_mod_SOURCES): Add kern/time.c. - - * conf/i386-ieee1275.rmk (kernel_elf_SOURCES): Add kern/time.c, - - * include/grub/i386/pit.h: Use macro KERNEL_CPU_PIT_HEADER to avoid - multiple inclusion. Add #include . - -2008-08-06 Christian Franke - - * conf/common.rmk: Build and install `10_windows'. - * util/grub.d/10_windows.in: New script. - -2008-08-06 Pavel Roskin - - * kern/i386/pit.c: Include `'. - -2008-08-06 Robert Millan - - * conf/i386-coreboot.rmk (kernel_elf_ASFLAGS): New variable. - * kern/i386/tsc.c: Include `'. - -2008-08-06 Bean - - * fs/i386/pc/pxe.c (grub_pxe_data): New member block_size. - (grub_pxefs_fs_int): Remove dummy definition. - (grub_pxefs_open): Use data->block_size to store the current block - size setting. - (grub_pxefs_read): Use block size stored in data->block_size. As the - value of grub_pxe_blksize can be changed after the file is opened. - -2008-08-06 Bean - - * fs/i386/pc/pxe.c (curr_file): new variable. - (grub_pxefs_open): Simply the handling of pxe file system. Don't - require the dummy internal file system anymore. - (grub_pxefs_read): Removed. - (grub_pxefs_close): Likewise. - (grub_pxefs_fs_int): Likewise. - (grub_pxefs_read_int): Renamed to grub_pxefs_read. Reinitialize tftp - connection when we switch file. - (grub_pxefs_close_int): Renamed to grub_pxefs_close. - -2008-08-06 Robert Millan - - * conf/i386-coreboot.rmk (pkglib_MODULES): Add `reboot.mod' and - `halt.mod'. - (reboot_mod_SOURCES, reboot_mod_CFLAGS, reboot_mod_LDFLAGS) - (halt_mod_SOURCES, halt_mod_CFLAGS, halt_mod_LDFLAGS): New variables. - - * kern/i386/halt.c: New file. - * kern/i386/reboot.c: Likewise. - * include/grub/i386/reboot.h: Likewise. - * include/grub/i386/halt.h: Likewise. - - * commands/halt.c [! GRUB_MACHINE_IEEE1275 ! GRUB_MACHINE_EFI]: - Include `'. - * commands/reboot.c [! GRUB_MACHINE_IEEE1275 ! GRUB_MACHINE_EFI] - [! GRUB_MACHINE_PCBIOS]: Include `'. - - * term/i386/pc/at_keyboard.c: Include `'. - (SHIFT_L, SHIFT_R, CTRL, ALT, CAPS_LOCK, KEYBOARD_REG_DATA) - (KEYBOARD_REG_STATUS, KEYBOARD_COMMAND_ISREADY, KEYBOARD_COMMAND_READ) - (KEYBOARD_COMMAND_WRITE, KEYBOARD_COMMAND_REBOOT) - (KEYBOARD_SCANCODE_SET1, KEYBOARD_ISMAKE, KEYBOARD_ISREADY) - (KEYBOARD_SCANCODE, OLPC_UP, OLPC_DOWN, OLPC_LEFT, OLPC_RIGHT): Move - from here ... - * include/grub/i386/at_keyboard.h: ... to here. - -2008-08-05 Robert Millan - - * conf/i386-pc.rmk (kernel_img_SOURCES): Add `kern/i386/pit.c'. - * conf/i386-efi.rmk (kernel_mod_SOURCES): Likewise. - * conf/i386-coreboot.rmk (kernel_elf_SOURCES): Likewise. Also add - `kern/i386/tsc.c', `kern/generic/rtc_get_time_ms.c' and - `kern/generic/millisleep.c'. - - * kern/i386/tsc.c (calibrate_tsc): Rewrite using grub_pit_wait() - instead of grub_get_rtc(). - (grub_tsc_init): Initialize `tsc_boot_time'. - - * kern/i386/linuxbios/init.c (grub_millisleep): Remove stub. - (grub_machine_init): Use grub_tsc_init() rather than - installing an RTC-based handler via grub_install_get_time_ms(). - - * kern/i386/pit.c: New file. - * include/grub/i386/pit.h: Likewise. - -2008-08-05 Bean - - * boot/i386/pc/pxeboot.S (_start): Use drive number 0x7F for pxe. - - * conf/i386-pc.rmk (kernel_img_HEADERS): Add machine/pxe.h. - (pkglib_MODULES): Add pxe.mod and pxecmd.mod. - (pxe_mod_SOURCES): New macro. - (pxe_mod_CFLAGS): Likewise. - (pxe_mod_LDFLAGS): Likewise. - (pxecmd_mod_SOURCES): Likewise. - (pxecmd_mod_CFLAGS): Likewise. - (pxecmd_mod_LDFLAGS): Likewise. - - * kern/i386/pc/startup.S (grub_pxe_scan): New function. - (grub_pxe_call): Likewise. - - * include/grub/disk.h (grub_disk_dev_id): Add GRUB_DISK_DEVICE_PXE_ID. - - * commands/i386/pc/pxecmd.c: New file. - - * fs/i386/pc/pxe.c: Likewise. - - * include/grub/i386/pc/pxe.h: Likewise. - -2008-08-05 Bean - - * util/console.c (grub_console_cur_color): New variable. - (grub_console_standard_color): Likewise. - (grub_console_normal_color): Likewise. - (grub_console_highlight_color): Likewise. - (color_map): Likewise. - (use_color): Likewise. - (NUM_COLORS): New macro. - (grub_ncurses_setcolorstate): Handle color properly. - (grub_ncurses_setcolor): Don't change color here, just remember the - settings, color will be set in grub_ncurses_setcolorstate. - (grub_ncurses_getcolor): New function. - (grub_ncurses_init): Initialize color pairs. - (grub_ncurses_term): New member grub_ncurses_getcolor. - -2008-08-05 Colin D Bennett - - High resolution timer support. Implemented for x86 CPUs using TSC. - Extracted generic grub_millisleep() so it's linked in only as needed. - This requires a Pentium compatible CPU; if the RDTSC instruction is - not supported, then it falls back on the generic grub_get_time_ms() - implementation that uses the machine's RTC. - - * conf/i386-pc.rmk (kernel_img_SOURCES): Add `kern/time.c', - `kern/i386/tsc.c', `kern/generic/rtc_get_time_ms.c' and - `kern/generic/millisleep.c'. - - * conf/i386-efi.rmk (kernel_mod_SOURCES): Add `kern/i386/tsc.c', - `kern/generic/rtc_get_time_ms.c' and `kern/generic/millisleep.c'. - - * conf/x86_64-efi.rml (kernel_mod_SOURCES): Add - `kern/generic/millisleep.c' and `kern/generic/rtc_get_time_ms.c'. - - * conf/sparc64-ieee1275.rmk (kernel_elf_SOURCES): Likewise. - - * conf/powerpc-ieee1275.rmk (kernel_elf_SOURCES): Add - `kern/generic/millisleep.c'. - - * conf/i386-ieee1275.rmk (kernel_elf_SOURCES): Likewise. - - * conf/i386-coreboot.rmk (kernel_elf_SOURCES): Add `kern/time.c'. - - * kern/generic/rtc_get_time_ms.c: New file. - - * kern/generic/millisleep.c: New file. - - * kern/misc.c: Don't include - anymore. - (grub_millisleep_generic): Removed. - - * commands/sleep.c (grub_interruptible_millisleep): Uses - grub_get_time_ms() instead of grub_get_rtc(). - - * include/grub/i386/tsc.h (grub_get_tsc): New file. New inline - function. - (grub_cpu_is_cpuid_supported): New inline function. - (grub_cpu_is_tsc_supported): New inline function. - (grub_tsc_init): New function prototype. - (grub_tsc_get_time_ms): New function prototype. - - * kern/i386/tsc.c (grub_get_time_ms): New file. - - * include/grub/time.h: Include . Don't include - anymore. - (grub_millisleep): Removed. - (grub_machine_init): Call grub_tsc_init. - - * kern/i386/linuxbios/init.c (grub_machine_init): Install the RTC - get_time_ms() implementation. - - * kern/sparc64/ieee1275/init.c (grub_millisleep): Removed. - (ieee1275_get_time_ms): New function. - (grub_machine_init): Install get_time_ms() implementation. - - * kern/i386/pc/init.c: Include . - (grub_machine_init): Call grub_tsc_init(). - (grub_millisleep): Removed. - - * kern/ieee1275/init.c (grub_millisleep): Removed. - (grub_machine_init): Install ieee1275_get_time_ms() - implementation. - (ieee1275_get_time_ms): New function. - (grub_get_rtc): Now calls ieee1275_get_time_ms(), which does the - real work. - -2008-08-05 Marco Gerards - - * disk/ata.c: Include . - (enum grub_ata_commands): Add `GRUB_ATA_CMD_EXEC_DEV_DIAGNOSTICS'. - (grub_ata_initialize): Rewritten. - (grub_ata_device_initialize): New function. - -2008-08-04 Pavel Roskin - - * kern/main.c: Include grub/mm.h. - -2008-08-04 Robert Millan - - * conf/i386-coreboot.rmk (COMMON_ASFLAGS, COMMON_CFLAGS) - (COMMON_LDFLAGS): Harmonize with i386-pc version (fixes a code - corruption problem). - -2008-08-04 Robert Millan - - * loader/i386/pc/multiboot.c (grub_multiboot_load_elf32): Fix misc - warnings introduced in my last commit. - -2008-08-03 Robert Millan - - Make PCI available on all i386 architectures. - - * include/grub/i386/pc/pci.h: Move from here ... - * include/grub/i386/pci.h: ... to here. - - * include/grub/i386/pc/pci.h: Remove. - * include/grub/i386/efi/pci.h: Remove. - * include/grub/x86_64/efi/pci.h: Remove. - - * include/grub/pci.h: Replace `' with - `'. - - * conf/i386-coreboot.rmk (pkglib_MODULES): Add `pci' and `lspci'. - (pci_mod_SOURCES, pci_mod_CFLAGS, pci_mod_LDFLAGS, lspci_mod_SOURCES) - (lspci_mod_CFLAGS, lspci_mod_LDFLAGS): New variables. - - * conf/i386-ieee1275.rmk: Likewise. - -2008-08-03 Robert Millan - - * term/i386/pc/vga_text.c (CRTC_CURSOR_DISABLE): New macro. - (grub_console_setcursor): Make it possible to set cursor off. - -2008-08-03 Robert Millan - - * util/grub.d/00_header.in: Be platform-agnostic. Probe for existence - of modules instead of assuming which platform provides what. - * util/update-grub.in: Likewise. - -2008-08-03 Robert Millan - - * kern/i386/pc/init.c (make_install_device): Check for `grub_prefix' - instead of `grub_install_dos_part' to determine whether a drive needs - to be prepended to prefix (`grub_install_dos_part' is not reliable, - because it can be overridden when loading GRUB via Multiboot). - -2008-08-02 Robert Millan - - * util/i386/pc/grub-install.in: Remove trailing slash from prefix. - -2008-08-02 Robert Millan - - * loader/i386/pc/multiboot.c (grub_multiboot_load_elf32): Add a pair - of informational grub_dprintf() calls. - -2008-08-02 Robert Millan - - * disk/memdisk.c (memdisk_size): Don't initialize. - (GRUB_MOD_INIT(memdisk)): Find memdisk using grub_module_iterate(). - - * include/grub/i386/pc/kernel.h - (GRUB_KERNEL_MACHINE_MEMDISK_IMAGE_SIZE): Remove macro. - (GRUB_KERNEL_MACHINE_PREFIX, GRUB_KERNEL_MACHINE_DATA_END): Shift. - (grub_memdisk_image_size, grub_arch_memdisk_addr) - (grub_arch_memdisk_size): Remove. - - * include/grub/kernel.h (struct grub_module_header): Remove `offset' - field (was only used to transfer a constant). Add `type' field to - support multiple module types. - (grub_module_iterate): New function. - - * kern/device.c (grub_device_open): Do not hide error messages - when grub_disk_open() fails. Use grub_print_error() instead. - - * kern/i386/pc/init.c (grub_arch_modules_addr) - (grub_arch_memdisk_size): Remove functions. - (grub_arch_modules_addr): Return the module address in high memory - (now that it isn't copied anymore). - - * kern/i386/pc/startup.S (grub_memdisk_image_size): Remove variable. - (codestart): Don't add grub_memdisk_image_size to %ecx in LZMA - decompression routine (grub_total_module_size already includes that - now). Don't copy modules back to low memory. - - * kern/main.c: Include `'. - (grub_load_modules): Split out (and use) ... - (grub_module_iterate): ... this function, which iterates through - module objects and runs a hook. - Comment out grub_mm_init_region() call, as it would cause non-ELF - modules to be overwritten. - - * util/i386/pc/grub-mkimage.c (generate_image): Instead of appending - the memdisk image in its own region, make it part of the module list. - * util/elf/grub-mkimage.c (options): Add "memdisk"|'m' option. - (main): Parse --memdisk|-m option, and pass user-provided path as - parameter to generate_image(). - (add_segments): Pass `memdisk_path' down to load_modules(). - (load_modules): Embed memdisk image in module section when requested. - * util/i386/efi/grub-mkimage.c (make_mods_section): Initialize - `header.type' instead of `header.offset'. - - * conf/powerpc-ieee1275.rmk (pkglib_MODULES): Add `memdisk.mod'. - (memdisk_mod_SOURCES, memdisk_mod_CFLAGS) - (memdisk_mod_LDFLAGS): New variables. - * conf/i386-coreboot.rmk: Likewise. - * conf/i386-ieee1275.rmk: Likewise. - -2008-08-02 Robert Millan - - * loader/i386/pc/multiboot.c (playground, forward_relocator) - (backward_relocator): New variables. Used to allocate and relocate - the payload, respectively. - (grub_multiboot_load_elf32): Load into heap instead of requested - address, install the appropriate relocator code in each bound of - the payload, and set the entry point such that - grub_multiboot_real_boot() will jump to one of them. - - * kern/i386/loader.S (grub_multiboot_payload_size) - (grub_multiboot_payload_orig, grub_multiboot_payload_dest) - (grub_multiboot_payload_entry_offset): New variables. - (grub_multiboot_real_boot): Set cpu context to what the relocator - expects, and jump to the relocator instead of the payload. - - * include/grub/i386/loader.h (grub_multiboot_payload_size) - (grub_multiboot_payload_orig, grub_multiboot_payload_dest) - (grub_multiboot_payload_entry_offset): Export. - -2008-08-01 Bean - - * normal/menu_entry.c (editor_getline): Don't return the original - string as result, as it will be released by lexer once it has done - using it. - -2008-08-01 Robert Millan - - * util/grub.d/10_linux.in: Use prepare_grub_to_access_device() from - within menuentries, not before them. - util/grub.d/10_hurd.in: Likewise. - -2008-08-01 Bean - - * conf/common.rmk (pkglib_MODULES): Add bufio.mod. - (bufio_mod_SOURCES): New macro. - (bufio_mod_CFLAGS): Likewise. - (bufio_mod_LDFLAGS): Likewise. - - * include/grub/bufio.h: New file. - - * io/bufio.c: Likewise. - - * video/png.c: Replace with . - (grub_video_reader_png): Use grub_buffile_open to open file. - - * video/jpeg.c: Replace with . - (grub_video_reader_jpeg): Use grub_buffile_open to open file. - - * video/tga.c: Replace with . - (grub_video_reader_tga): Use grub_buffile_open to open file. - - * font/manager.c: Include . - (add_font): Use grub_buffile_open to open file. - -2008-07-31 Robert Millan - - * loader/i386/pc/multiboot.c (grub_multiboot_load_elf32): When loading - ELF segments, use a macro for arbitrarily accessing any of them instead - of preparing a pointer that allows access to one at a time. - (grub_multiboot_load_elf64): Likewise. - -2008-07-31 Bean - - * boot/i386/pc/lnxboot.S (real_code_2): Replace 0x50 with - GRUB_KERNEL_MACHINE_DATA_END. - -2008-07-30 Robert Millan - - * include/grub/i386/pc/kernel.h (GRUB_KERNEL_MACHINE_DATA_END): - Increase from 0x50 to 0x60. - * util/i386/pc/grub-install.in: Detect cross-disk installs, and - use UUIDs to identify the root drive for them. If that's not - possible, abort. - * util/i386/pc/grub-setup.c (setup): Do not special-case, or even - check, for cross-disk installs. - -2008-07-30 Robert Millan - - * kern/ieee1275/init.c (grub_machine_set_prefix): If `grub_prefix' - is non-empty, use it to set the `prefix' environment variable instead - of the usual approach. - * kern/i386/linuxbios/init.c (make_install_device): Remove function. - (grub_machine_set_prefix): Use `grub_prefix' to set the `prefix' - environment variable instead of dummy make_install_device(). - - * kern/i386/ieee1275/startup.S: Include `'. - (start): Insert a data section, with `grub_prefix' variable. - * kern/i386/linuxbios/startup.S: Likewise. - - * include/grub/powerpc/ieee1275/kernel.h [!ASM_FILE] (grub_prefix): - New variable reference. - * include/grub/i386/ieee1275/kernel.h (GRUB_KERNEL_MACHINE_PREFIX): - New macro. Defines offset of `grub_prefix' within startup.S (relative - to `start'). - (GRUB_KERNEL_MACHINE_DATA_END): New macro. Defines the end of data - section within startup.S (relative to `start'). - * include/grub/i386/coreboot/kernel.h: Likewise. - - * util/elf/grub-mkimage.c (add_segments): Receive `prefix' parameter. - Overwrite grub_prefix with its contents, at the beginning of the - first segment. - (main): Understand -p|--prefix. - -2008-07-30 Robert Millan - - * util/grub.d/10_hurd.in: Source ${libdir}/grub/update-grub_lib. - -2008-07-30 Robert Millan - - * term/i386/pc/vga_text.c (grub_console_cls): Use - grub_console_gotoxy() to go back to beginning of the screen. - Found by Patrick Georgi - -2008-07-29 Christian Franke - - * util/update-grub_lib.in (make_system_path_relative_to_its_root): - Add conversion of emulated mount points on Cygwin. - -2008-07-29 Christian Franke - - * util/update-grub.in: Add a check for admin - group on Cygwin. - Remove old `grub.cfg.new' before creation. - Add `-f' to `mv' to handle the different filesystem - semantics of Windows. - -2008-07-29 Bean - - * normal/main.c (get_line): Fix buffer overflow bug. - -2008-07-28 Robert Millan - - * partmap/apple.c (GRUB_APPLE_HEADER_MAGIC): New macro. - (struct grub_apple_header): New struct. Describes the layout of - the partmap header. - (apple_partition_map_iterate): Check the header magic as well as the - partition magic (which was already being checked). - -2008-07-28 Pavel Roskin - - * genmk.rb: Add a warning to the beginning of the output that - it's a generated file and should not be edited. - -2008-07-28 Robert Millan - - * disk/raid.c (grub_raid_scan_device): Do not abort when two disks - with the same number are found, just use issue a warning with - grub_dprintf(), as this error has been reported to be non-fatal. - -2008-07-27 Robert Millan - - * disk/ata.c (grub_ata_dumpinfo): Use grub_dprintf() for debugging - information. - -2008-07-27 Bean - - * fs/fat.c (GRUB_FAT_MAXFILE): New constant. - (grub_fat_find_dir): Ignore case when comparing filename. - -2008-07-27 Bean - - * fs/xfs.c (grub_xfs_dir_header): Change field i8count back to - smallino, as it's more descriptive, and i8count can be confused with - the other field count. - (grub_xfs_iterate_dir): Adjust grub_xfs_dir_entry pointer for small - inode type. - -2008-07-27 Bean - - * commands/crc.c: New file. - - * lib/crc.c: Likewise. - - * include/grub/lib/crc.h: Likewise. - - * util/grub-fstest.c: grub/hexdump.h => grub/lib/hexdump.h. - - * commands/hexdump.c: grub/hexdump.h => grub/lib/hexdump.h. - (hexdump): Move this function to ... - - * lib/hexdump.c: ... here. - - * include/grub/hexdump.h: Renamed to ... - - * include/grub/lib/hexdump.h: ... this. - - * commands/loadenv.c: grub/envblk.h => grub/lib/envblk.h - - * util/grub-editenv.c: Likewise. - - * include/envblk.h: Renamed to ... - - * include/lib/envblk.h: ... this. - - * util/envblk.c: Renamed to ... - - * lib/envblk.c: ... this. - - * conf/common.rmk (grub_fstest_SOURCES): commands/hexdump.c => - lib/hexdump.c. - (grub_editenv_SOURCES): util/envblk.c => lib/envblk.c - (pkglib_MODULES): Add crc.mod. - (hexdump_mod_SOURCES): Add lib/hexdump.c. - (loadenv_mod_SOURCES): util/envblk.c => lib/envblk.c. - (crc_mod_SOURCES): New macro. - (crc_mod_CFLAGS): Likewise. - (crc_mod_LDFLAGS): Likewise. - - * conf/i386-coreboot.rmk (grub_emu_SOURCES): Add lib/hexdump.c. - - * conf/i386-efi.rmk (grub_emu_SOURCES): Likewise. - - * conf/i386-pc.rmk (grub_emu_SOURCES): Likewise. - - * conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Likewise. - - * conf/x86_64-efi.rmk (grub_emu_SOURCES): Likewise. - -2008-07-27 Felix Zielcke - - * commands/help.c: Include . - (TERM_WIDTH): Removed. Updated all users. - -2008-07-27 Pavel Roskin - - * util/getroot.c (find_root_device): Rephrase a comment to avoid - spurious warnings about a comment within a comment. - -2008-07-25 Robert Millan - - * util/getroot.c (find_root_device): Skip devices that match - /dev/dm-[0-9]. This lets the real device be found for any type of - abstraction (LVM, EVMS, RAID..). - (grub_guess_root_device): Do not traverse /dev/mapper (for LVM) - and /dev/evms (for EVMS) before traversing /dev. If a /dev/dm-[0-9] - device is found first, find_root_device() will now skip it. - -2008-07-24 Pavel Roskin - - * include/grub/types.h: Use __builtin_bswap32() and - __builtin_bswap64() with gcc 4.3 and newer. - -2008-07-24 Christian Franke - - * util/i386/pc/grub-install.in: If `--debug' is specified, - pass `--verbose' to grub-setup. - Abort script if make_system_path_relative_to_its_root() fails. - -2008-07-24 Bean - - * configure.ac: Fixed a bug caused by the previous cygwin patch, - variable `target_platform' should be `platform'. - -2008-07-24 Bean - - * video/reader/png.c (DEFLATE_HLIT_MAX): Change value. - (grub_png_init_fixed_block): New function. - (grub_png_decode_image_data): Handle fixed huffman code compression. - -2008-07-24 Bean - - * common.rmk (bin_UTILITIES): Add grub-pe2elf. - (grub_pe2elf_SOURCES): New macro. - (CLEANFILES): Add grub-pe2elf. - - * include/grub/efi/pe32.h (GRUB_PE32_SCN_ALIGN_1BYTES): New constant. - (GRUB_PE32_SCN_ALIGN_2BYTES): Likewise. - (GRUB_PE32_SCN_ALIGN_4BYTES): Likewise. - (GRUB_PE32_SCN_ALIGN_8BYTES): Likewise. - (GRUB_PE32_SCN_ALIGN_16BYTES): Likewise. - (GRUB_PE32_SCN_ALIGN_32BYTES): Likewise. - (GRUB_PE32_SCN_ALIGN_64BYTES): Likewise. - (GRUB_PE32_SCN_ALIGN_SHIFT): Likewise. - (GRUB_PE32_SCN_ALIGN_MASK): Likewise. - (GRUB_PE32_SYM_CLASS_EXTERNAL): Likewise. - (GRUB_PE32_SYM_CLASS_STATIC): Likewise. - (GRUB_PE32_SYM_CLASS_FILE): Likewise. - (GRUB_PE32_DT_FUNCTION): Likewise. - (GRUB_PE32_REL_I386_DIR32): Likewise. - (GRUB_PE32_REL_I386_REL32): Likewise. - (grub_pe32_symbol): New structure. - (grub_pe32_reloc): Likewise. - - * util/grub-pe2elf.c: New file. - - * configure.ac: Set TARGET_OBJ2ELF if host os is cygwin. Don't test for - start symbol in non pc platform. - - * genmk.rb: Use TARGET_OBJ2ELF to convert native object format to elf. - - The following patches are from Christian Franke. - - * include/grub/dl.h: Remove .previous, gas supports this only - for ELF format. - - * include/grub/symbol.h [__CYGWIN__] (#define FUNCTION/VARIABLE): - Remove .type, gas supports this only for ELF format. - - * kern/dl.c (grub_dl_resolve_dependencies): Add check for trailing - nullbytes in symbol table. This fixes an infinite loop if table is - zero filled. - - * Makefile.in: Add autoconf replacements TARGET_IMG_LDSCRIPT, - TARGET_IMG_LDFLAGS and EXEEXT. - - * aclocal.m4 (grub_PROG_OBJCOPY_ABSOLUTE): Replace -Wl,-N by - TARGET_IMG_LDFLAGS_AC. - (grub_CHECK_STACK_ARG_PROBE): New function. - - * conf/i386-pc.rmk: Replace -Wl,-N by TARGET_IMG_LDFLAGS. - - * conf/i386-pc-cygwin-ld-img.sc: New linker script. - - * configure.ac: Add check for linker script "conf/${target}-img-ld.c" - to set TARGET_IMG_LD* accordingly. - Add check for Cygwin to set TARGET_MOD_OBJCOPY accordingly. - Add call to grub_CHECK_STACK_ARG_PROBE. - Use TARGET_IMG_LDFLAGS to check start, bss_start, end symbols. - - * genkernsyms.sh.in: Handle HAVE_ASM_USCORE case. - - * genmk.rb: Add EXEEXT to CLEANFILES. - -2008-07-23 Robert Millan - - * Makefile.in (UNICODE_ARROWS, UNICODE_LINES): New variables (they - define the codes for arrows and lines used for the menu). - (ascii.pff): Generate fonts for $(UNICODE_ARROWS) and $(UNICODE_LINES) - as well. - - * util/update-grub_lib.in (font_path): Prefer ascii.pff over complete - fonts, because the latter are too slow. - -2008-07-21 Bean - - * kern/i386/pc/startup.S (gate_a20_try_bios): Change test order for - a20. Run keyboard test last, as it will cause macbook to halt. - -2008-07-18 Pavel Roskin - - * kern/dl.c: Go back to using GRUB_CPU_SIZEOF_VOID_P. We cannot - load foreign architecture modules correctly anyway. Keep - support for loading host architecture modules, whether we - compile them or not. - -2008-07-17 Pavel Roskin - - * configure.ac: Use -m32 or -m64 regardless of whether we had to - change target_cpu. The compiler default can mismatch target_cpu - in any case. - - * disk/efi/efidisk.c: Fix format warnings on x86_64. - * kern/efi/efi.c: Likewise. - - * aclocal.m4 (grub_PROG_TARGET_CC): New macro. Check if the - target compiler is functional. - * configure.ac: Call grub_PROG_TARGET_CC once all target flags - are set up. - - * configure.ac: Default to efi platform for x86_64-apple. Allow - powerpc64 CPU, default to ieee1275 platform for it. Split CPU - adjustments from the rest, only do them if target is not - explicitly given. Merge other adjustments with the final sanity - check. Remove an extraneous check for supported CPU. Be - specific which CPU and which platform is not supported. - - * configure.ac: Default to pc platform for x86_64. - -2008-07-17 Robert Millan - - Partial LinuxBIOS -> Coreboot rename. - - * conf/i386-linuxbios.rmk: Renamed to ... - * conf/i386-coreboot.rmk: ... this. - * Makefile.in (RMKFILES): s/i386-linuxbios.rmk/i386-coreboot.rmk/g. - * configure.ac: Accept "coreboot" as input platform (but maintain - compatibility with "linuxbios"). - * include/grub/i386/linuxbios: Renamed to ... - * include/grub/i386/coreboot: ... this. - -2008-07-17 Bean - - * conf/i386/efi.rmk (pkglib_MODULES): add pci.mod and lspci.mod. - (appleldr_mod_SOURCE): New variable. - (appleldr_mod_CFLAGS): Likewise. - (appleldr_mod_LDFLAGS): Likewise. - (pci_mod_SOURCES): Likewise. - (pci_mod_CFLAGS): Likewise. - (pci_mod_LDFLAGS): Likewise. - (lspci_mod_SOURCES): Likewise. - (lspci_mod_CFLAGS): Likewise. - (lspci_mod_LDFLAGS): Likewise. - - * conf/x86_64-efi.rmk: New file. - - * disk/efi/efidisk.c (grub_efidisk_read): Wrap efi calls with efi_call_N - macro. - (grub_efidisk_write): Likewise. - - * include/efi/api.h (efi_call_0): New macro. - (efi_call_1): Likewise. - (efi_call_2): Likewise. - (efi_call_3): Likewise. - (efi_call_4): Likewise. - (efi_call_5): Likewise. - (efi_call_6): Likewise. - - * include/grub/efi/chainloader.h (grub_chainloader_cmd): Rename to - grub_rescue_cmd_chainloader. - - * include/grub/efi/pe32.h (GRUB_PE32_MACHINE_X86_64): New macro. - (grub_pe32_optional_header): Change some fields based on i386 or - x86_64 platform. - (GRUB_PE32_PE32_MAGIC): Likewise. - - * include/grub/efi/uga_draw.h: New file. - - * include/grub/elf.h (STN_ABS): New constant. - (R_X86_64_NONE): Relocation constant for x86_64. - (R_X86_64_64): Likewise. - (R_X86_64_PC32): Likewise. - (R_X86_64_GOT32): Likewise. - (R_X86_64_PLT32): Likewise. - (R_X86_64_COPY): Likewise. - (R_X86_64_GLOB_DAT): Likewise. - (R_X86_64_JUMP_SLOT): Likewise. - (R_X86_64_RELATIVE): Likewise. - (R_X86_64_GOTPCREL): Likewise. - (R_X86_64_32): Likewise. - (R_X86_64_32S): Likewise. - (R_X86_64_16): Likewise. - (R_X86_64_PC16): Likewise. - (R_X86_64_8): Likewise. - (R_X86_64_PC8): Likewise. - - * include/grub/i386/efi/pci.h: New file. - - * include/grub/i386/linux.h (GRUB_LINUX_EFI_SIGNATURE): - Change it value based on platform. - (GRUB_LINUX_EFI_SIGNATURE_0204): New constant. - (GRUB_E820_RAM): Likewise. - (GRUB_E820_RESERVED): Likewise. - (GRUB_E820_ACPI): Likewise. - (GRUB_E820_NVS): Likewise. - (GRUB_E820_EXEC_CODE): Likewise. - (GRUB_E820_MAX_ENTRY): Likewise. - (grub_e820_mmap): New structure. - (linux_kernel_header): Change the efi field according to different - kernel version, also field from linux_kernel_header. - - * include/grub/kernel.h (grub_module_info): Add padding for x86_64. - - * include/grub/pci.h (GRUB_PCI_ADDR_SPACE_MASK): New constant. - (GRUB_PCI_ADDR_SPACE_MEMORY): Likewise. - (GRUB_PCI_ADDR_SPACE_IO): Likewise. - (GRUB_PCI_ADDR_MEM_TYPE_MASK): Likewise. - (GRUB_PCI_ADDR_MEM_TYPE_32): Likewise. - (GRUB_PCI_ADDR_MEM_TYPE_1M): Likewise. - (GRUB_PCI_ADDR_MEM_TYPE_64): Likewise. - (GRUB_PCI_ADDR_MEM_PREFETCH): Likewise. - (GRUB_PCI_ADDR_MEM_MASK): Likewise. - (GRUB_PCI_ADDR_IO_MASK): Likewise. - - * include/grub/x86_64/efi/kernel.h: New file. - - * include/grub/x86_64/efi/loader.h: Likewise. - - * include/grub/x86_64/efi/machine.h: Likewise. - - * include/grub/x86_64/efi/pci.h: Likewise. - - * include/grub/x86_64/efi/time.h: Likewise. - - * include/grub/x86_64/linux.h: Likewise. - - * include/grub/x86_64/setjmp.h: Likewise. - - * include/grub/x86_64/time.h: Likewise. - - * include/grub/x86_64/types.h: Likewise. - - * kern/dl.c (GRUB_CPU_SIZEOF_VOID_P): Changed to - GRUB_TARGET_SIZEOF_VOID_P. - - * kern/efi/efi.c (grub_efi_locate_protocol): Wrap efi calls. - (grub_efi_locate_handle): Likewise. - (grub_efi_open_protocol): Likewise. - (grub_efi_set_text_mode): Likewise. - (grub_efi_stall): Likewise. - (grub_exit): Likewise. - (grub_reboot): Likewise. - (grub_halt): Likewise. - (grub_efi_exit_boot_services): Likewise. - (grub_get_rtc): Likewise. - - * kern/efi/mm.c (MEMORY_MAP_SIZE): Change to 0x3000 for new models. - (GRUB_CPU_SIZEOF_VOID_P): Changed to GRUB_TARGET_SIZEOF_VOID_P. - (grub_efi_allocate_pages): Wrap efi calls. - (grub_efi_free_pages): Wrap efi calls. - (grub_efi_get_memory_map): Wrap efi calls. - - * kern/x86_64/dl.c: New file. - - * kern/x86_64/efi/callwrap.S: Likewise. - - * kern/x86_64/efi/startup.S: Likewise. - - * loader/efi/appleloader.c: Likewise. - - * loader/efi/chainloader.c (cmdline): New variable. - (grub_chainloader_unload): Wrap efi calls. - (grub_chainloader_boot): Likewise. - (grub_rescue_cmd_chainloader): Wrap efi calls, handle - command line. - - * loader/efi/chainloader_normal.c (chainloader_command): - Change grub_chainloader_cmd to grub_rescue_cmd_chainloader, pass - command line. - - * loader/i386/efi/linux.c (allocate_pages): Change allocation - method. - (grub_e820_add_region): New function. - (grub_linux_boot): Construct e820 map from efi map, handle x86_64 - booting. - (grub_find_video_card): New function. - (grub_linux_setup_video): New function. - (grub_rescue_cmd_linux): Probe for video information. - - * normal/x86_64/setjmp.S: New file. - - * term/efi/console.c (map_char): New function. - (grub_console_putchar): Map unicode char. - (grub_console_checkkey): Wrap efi calls. - (grub_console_getkey): Likewise. - (grub_console_getwh): Likewise. - (grub_console_gotoxy): Likewise. - (grub_console_cls): Likewise. - (grub_console_setcolorstate): Likewise. - (grub_console_setcursor): Likewise. - - * util/i386/efi/grub-mkimage.c: Add support for x86_64. - -2008-07-16 Pavel Roskin - - * loader/i386/efi/linux.c (allocate_pages): Fix warnings in - format strings. - - * util/i386/efi/grub-mkimage.c (get_target_address): Return a - pointer, not an integer. This fixes a warning and prevents - precision loss on 64-bit systems. - (relocate_addresses): Remove unneeded cast. - -2008-07-15 Pavel Roskin - - * kern/i386/ieee1275/init.c: Include grub/cache.h. - - * term/ieee1275/ofconsole.c: Disable code unused on i386. - - * kern/ieee1275/ieee1275.c (grub_ieee1275_get_integer_property): - Fix comparison between signed and unsigned. - - * include/grub/i386/ieee1275/console.h: Declare - grub_console_init() and grub_console_fini(). - - * loader/i386/ieee1275/linux.c (grub_set_bootpath): Remove. - It's empty and unused. - - * fs/ext2.c (grub_ext2_read_block): Initialize blknr in the - beginning to avoid warnings with some compilers. - - * loader/ieee1275/multiboot2.c: Include grub/machine/loader.h. - [__i386__] (grub_mb2_arch_boot): Avoid unnecessary cast. - -2008-07-14 Pavel Roskin - - * kern/env.c (grub_register_variable_hook): Don't copy empty - string, it leaks memory. Pass "" to grub_env_set(), it should - handle constant strings. - - * commands/blocklist.c (grub_cmd_blocklist): Fix format warning. - * commands/cmp.c (grub_cmd_cmp): Likewise. - * kern/dl.c (grub_dl_flush_cache): Likewise. - (grub_dl_load_core): Likewise. - * kern/elf.c (grub_elf32_load_phdrs): Likewise. - (grub_elf64_load_phdrs): Likewise. - -2008-07-13 Pavel Roskin - - * lib/LzmaEnc.c (LzmaEnc_SetProps): Fix warning about comparison - between signed and unsigned. - (LzmaEnc_Finish): Fix warning about an unused parameter. - -2008-07-13 Bean - - * Makefile.in (enable_lzo): New rule. - - * conf/i386-pc.rmk (grub_mkimage_SOURCES): New test with enable_lzo. - - * configure.ac (ENABLE_LZO): New option --enable-lzo. - - * boot/i386/pc/lnxboot.S: #include . - - * include/grub/i386/pc/kernel.h (GRUB_KERNEL_MACHINE_RAW_SIZE): Change - its value according to the compression algorithm used, lzo or lzma. - - * util/i386/pc/grub-mkimage.c (compress_kernel): Use different - compression algorithm according to configure macro. - - * kern/i386/pc/startup.S (codestart): Likewise. - - * kern/i386/pc/lzma_decode.S: New file. - - * include/grub/lib/LzFind.h: Likewise. - - * include/grub/lib/LzHash.h: Likewise. - - * include/grub/lib/LzmaDec.h: Likewise. - - * include/grub/lib/LzmaEnc.h: Likewise. - - * include/grub/lib/LzmaTypes.h: Likewise. - - * lib/LzFind.c: Likewise. - - * lib/LzmaDec.c: Likewise. - - * lib/LzmaEnc.c: Likewise. - -2008-07-13 Bean - - * fs/ext2.c (EXT4_EXTENTS_FLAG): New macro. - (grub_ext4_extent_header): New structure. - (grub_ext4_extent): Likewise. - (grub_ext4_extent_idx): Likewise. - (grub_ext4_find_leaf): New function. - (grub_ext2_read_block): Handle extents. - -2008-07-12 Robert Millan - - * util/i386/pc/grub-mkrescue.in: s/grub-install/grub-mkrescue/g. - -2008-07-11 Robert Millan - - * util/grub.d/40_custom.in: New file. Example on how to add custom - entries to /etc/grub.d. - * conf/common.rmk (%, update-grub_SCRIPTS, CLEANFILES): Install - 40_custom (implicitly, by merging all the grub.d rules). - -2008-07-11 Pavel Roskin - - * commands/read.c (grub_getline): Fix invalid memory access. - Don't add newline to the variable value. - - * term/i386/pc/serial.c (GRUB_SERIAL_PORT_NUM): New constant. - [!GRUB_MACHINE_PCBIOS] (serial_hw_io_addr): Add COM2 and COM3. - (serial_hw_get_port): Check validity of the port number. - (grub_cmd_serial): Check return value of serial_hw_get_port(). - -2008-07-07 Pavel Roskin - - * boot/i386/pc/diskboot.S (notification_string): Replace - "Loading kernel" with just "loading". This is shorter, less - confusing and saves a few bytes for possible future changes. - -2008-07-05 Pavel Roskin - - * disk/ata.c (grub_ata_dumpinfo): Don't output addressing and - size for ATAPI devices, they are undefined. Output sector - number in decimal form. - - * disk/ata.c: Use named constants for status bits. - -2008-07-04 Pavel Roskin - - * kern/i386/linuxbios/init.c (grub_machine_init): Cast addr to - grub_addr_t before casting it to the void pointer to fix a - warning. Non-addressable regions are discarded earlier. - (grub_arch_modules_addr): Cast _end to grub_addr_t. - * kern/i386/linuxbios/table.c: Include grub/misc.h. - (check_signature): Don't shadow table_header. - (grub_linuxbios_table_iterate): Cast numeric constants to - grub_linuxbios_table_header_t. - * include/grub/i386/linuxbios/init.h: Add noreturn attribute to - grub_stop(). - - * kern/ieee1275/init.c: Cast _start and _end to grub_addr_t to - prevent warnings. - - * include/grub/misc.h (ALIGN_UP): Avoid unnecessary cast to a - pointer, which can cause warnings. Support 64-bit addresses. - - * util/elf/grub-mkimage.c: Use GRUB_TARGET_SIZEOF_LONG instead - of sizeof(long). This fixes PowerPC image generation on x86_64. - -2008-07-04 Robert Millan - - This fixes a performance issue when pc & gpt partmap iterators - didn't abort iteration even after our hook found what it was - looking for (often causing expensive probes of non-existent drives). - - Some callers relied on previous buggy behaviour, since they would - raise an error when their own hooks caused early abortion of its - iteration. - - * kern/device.c (grub_device_open): Improve error message. - * disk/lvm.c (grub_lvm_open): Likewise. - * disk/raid.c (grub_raid_open): Likewise. - - * partmap/pc.c (pc_partition_map_iterate): Abort parent iteration - when hook requests it, independently of grub_errno. - (pc_partition_map_probe): Do not fail when find_func() caused - early abortion of pc_partition_map_iterate(). - - * partmap/gpt.c (gpt_partition_map_iterate): Abort parent iteration - when hook requests it, independently of grub_errno. - (gpt_partition_map_probe): Do not fail when find_func() caused - early abortion of gpt_partition_map_iterate(). - - * kern/partition.c (grub_partition_iterate): Abort parent iteration - when hook requests it, independently of grub_errno. Do not fail when - part_map_iterate_hook() caused early abortion of p->iterate(). - - * util/biosdisk.c (grub_util_biosdisk_get_grub_dev): Do not fail - when grub_partition_iterate() returned with non-zero. - -2008-07-03 Pavel Roskin - - * disk/ata.c (grub_ata_pio_write): Check status before writing, - like we do in grub_ata_pio_read(). - (grub_ata_readwrite): Always write individual sectors. Fix the - sector count for the remainder. - (grub_ata_write): Enable writing to ATA devices. Correctly - report error for ATAPI devices. - -2008-07-02 Pavel Roskin - - * boot/i386/pc/cdboot.S: Add _start entry to fix a linker - warning. - - * disk/ata.c (grub_ata_readwrite): Don't increment sector number - for every read sector, we already increment it for the whole - batch. This fixes reading more than 256 sectors at once. - - * util/grub-editenv.c (cmd_info): Cast argument to long - explicitly. ptrdiff_t reduces to int on i386. - - * util/grub-editenv.c (main): Be specific which parameter is - missing. - - * disk/memdisk.c (memdisk_addr): Make a pointer to fix warnings. - (memdisk): Make memdisk_orig_addr a pointer. - - * fs/reiserfs.c (grub_reiserfs_read): Fix misuse of grub_size_t - for file offsets, use grub_off_t instead. Fix printf format - warnings. - - * fs/reiserfs.c: Remove #warning, TODO list items don't belong - there. Real unexpected warnings should not drown in the noise - about known problems. - - * commands/hexdump.c (grub_cmd_hexdump): Fix misuse of - grub_disk_addr_t for memory addresses. - - * loader/aout.c (grub_aout_load): Cast load_addr to pointer - explicitly to fix a warning. - - * util/grub-editenv.c (cmd_info): Fix warning in printf format. - - * Makefile.in (MODULE_LDFLAGS): New variable. - * aclocal.m4 (grub_PROG_LD_BUILD_ID_NONE): New macro. Check if - the linker accepts --build-id=none. - * configure.ac: Call grub_PROG_LD_BUILD_ID_NONE. Substitute - MODULE_LDFLAGS. - * genmk.rb: Use MODULE_LDFLAGS when linking modules. - - * fs/xfs.c (struct grub_xfs_dir_header): Use names similar to - those in Linux XFS code. Provide a way to access 64-bit parent - inode. - (grub_xfs_iterate_dir): Use the new names. Avoid reading past - the end of struct grub_xfs_dir_header. - -2008-07-02 Bean - - * include/grub/ieee1275.h (grub_ieee1275_flag): New constant - GRUB_IEEE1275_FLAG_CANNOT_INTERPRET, GRUB_IEEE1275_FLAG_FORCE_CLAIM - and GRUB_IEEE1275_FLAG_NO_ANSI. - - * kern/ieee1275/cmain.c (grub_ieee1275_find_options): Set flag - GRUB_IEEE1275_FLAG_CANNOT_INTERPRET, GRUB_IEEE1275_FLAG_FORCE_CLAIM - and GRUB_IEEE1275_FLAG_NO_ANSI for Open Hackware. - - * kern/ieee1275/ieee1275.c (grub_ieee1275_interpret): Return - immediately if GRUB_IEEE1275_FLAG_CANNOT_INTERPRET is set. - - * kern/ieee1275/init.c (grub_claim_heap): Claim memory directly if - GRUB_IEEE1275_FLAG_FORCE_CLAIM is set. - - * term/ieee1275/ofconsole.c (grub_ofconsole_writeesc): Don't output - esc sequence on non ANSI terminal. - (grub_ofconsole_gotoxy): Emulate backspace key on non ANSI terminal. - - * util/elf/grub-mkimage.c (add_segments): Move ELF header to the - beginning of file. - -2008-07-02 Bean - - * conf/common.rmk (bin_UTILITIES): Add grub-editenv. - (grub_editenv_SOURCES): New variable. - (pkglib_MODULES): Add loadenv.mod. - (loadenv_mod_SOURCES): New variable. - (loadenv_mod_CFLAGS): Likewise. - (loadenv_mod_LDFLAGS): Likewise. - - * include/grub/envblk.h: New file. - - * util/envblk.c: New file. - - * util/grub-editenv.c: New file. - - * commands/loadenv.c: New file. - -2008-07-01 Pavel Roskin - - * include/multiboot2.h (struct multiboot_tag_module): Use char, - not unsigned char. This fixes warnings and is consistent with - other tags. - - * disk/fs_uuid.c (search_fs_uuid): Correctly increment count. - - * normal/parser.y: Define YYENABLE_NLS as 0 to fix warnings. - - * term/tparm.c (analyze): Always set *popcount. - - * loader/i386/pc/linux.c (grub_rescue_cmd_linux): Remove useless - cast to fix a warning. - - * loader/i386/pc/multiboot2.c (grub_mb2_arch_module_alloc): Use - cast to suppress a warning. - - * fs/afs.c (grub_afs_read_block): Return grub_disk_addr_t, as - grub_fshelp_read_file() expects. - - * fs/fat.c: Fix UUID calculation on big-endian systems. We - write uuid as a 32-bit value in CPU byte order, so declare and - use it as such. - - * disk/raid.c: Cast grub_dprintf() arguments to unsigned long - long if the format specifier expects it. - * partmap/gpt.c (gpt_partition_map_iterate): Likewise. - * partmap/pc.c (pc_partition_map_iterate): Likewise. - * fs/ntfs.c (grub_ntfs_uuid): Cast data->uuid to unsigned long - long to fix a warning. - * fs/reiserfs.c (grub_reiserfs_read): Change casts in - grub_dprintf() arguments to fix warnings. - -2008-06-30 Pavel Roskin - - * util/i386/pc/grub-setup.c (setup): Write install_dos_part and - install_bsd_part immediately before core.img is embedded or - modified on disk. This fixes core.img verification if core.img - cannot be embedded. - - * util/i386/pc/grub-setup.c (setup): Use core_path_dev, not - core_path to calculate the blocklist. - Patch from Javier Martín - -2008-06-29 Robert Millan - - * fs/xfs.c (GRUB_XFS_FSB_TO_BLOCK): New macro. Maps filesystem - block to disk block. - (grub_xfs_read_block): Use GRUB_XFS_FSB_TO_BLOCK() on result. - Patch from Niels Böhm - -2008-06-29 Robert Millan - - * util/update-grub_lib.in (font_path): Search for fonts in - /boot/grub first, which is more likely to be readable (we aren't - deciding where fonts live, just looking for them). - -2008-06-26 Pavel Roskin - - * util/biosdisk.c (read_device_map): Don't leave dead map - entries for devices failing stat() check. - - * util/i386/pc/grub-setup.c (setup): Don't reuse core_path, use - core_path_dev for the core.img path on the target device. - -2008-06-26 Robert Millan - - * disk/fs_uuid.c: New file. - * conf/common.rmk (pkglib_MODULES): Add `fs_uuid.mod'. - (fs_uuid_mod_SOURCES, fs_uuid_mod_CFLAGS) - (fs_uuid_mod_LDFLAGS): New variables. - * include/grub/disk.h (grub_disk_dev_id): Add - `GRUB_DISK_DEVICE_UUID_ID'. - * kern/disk.c (grub_disk_dev_iterate): Allow disk devices not to - implement iterate(). - -2008-06-26 Robert Millan - - * util/grub.d/10_linux.in: Avoid passing UUIDs to Linux when either - "/dev/disk/by-uuid/${GRUB_DEVICE_UUID}" does not exist, or when a - Linux image includes no initrd. - -2008-06-21 Javier Martín - - * util/i386/pc/grub-setup.c (setup): Remove literal "core.img" in a - call to resolve the core image location that effectively appended the - name twice. - -2008-06-21 Robert Millan - - * util/grub.d/00_header.in: Move last prepare_grub_to_access_device() - call from here ... - - * util/grub.d/10_hurd.in: ... to here ... - * util/grub.d/10_linux.in: ... and here. - -2008-06-19 Robert Millan - - * kern/main.c (grub_main): Export `prefix' variable immediately - after it has been set by grub_machine_set_prefix(). - -2008-06-19 Robert Millan - - * commands/search.c (search_label, search_fs_uuid, search_file): Print - search result when not saving to variable, not the other way around. - When saving to variable, abort iteration as soon as a match is found. - -2008-06-19 Robert Millan - - * util/update-grub_lib.in (prepare_grub_to_access_device): Remove - check for partition that provides /boot/grub. Its logic is flawed, - as it prevents prepare_grub_to_access_device() from being called - multiple times. - -2008-06-19 Robert Millan - - * util/update-grub_lib.in (prepare_grub_to_access_device): Issue - "insmod" command directly when abstraction modules are needed, - instead of relying on GRUB_PRELOAD_MODULES (which had no effect - since it had already been processed). - -2008-06-19 Pavel Roskin - - * conf/i386-efi.rmk: Recompile grub-mkimage.c if Makefile has - changed. This is needed in case GRUB_LIBDIR changes. - * conf/i386-ieee1275.rmk: Likewise. - * conf/i386-linuxbios.rmk: Likewise. - * conf/i386-pc.rmk: Likewise. - * conf/powerpc-ieee1275.rmk: Likewise. - -2008-06-18 Pavel Roskin - - * conf/powerpc-ieee1275.rmk (kernel_elf_SOURCES): Rename - kernel_elf_symlist.c to symlist.c for consistency with other - architectures. Update all users. - * conf/sparc64-ieee1275.rmk (kernel_elf_SOURCES): Likewise. - -2008-06-18 Robert Millan - - * util/i386/pc/grub-install.in: If the drive is LVM or RAID, prepend - it in prefix. - - * util/i386/pc/grub-setup.c (main): Don't handle prefix at all. Set - `must_embed' to 1 when root_dev is a RAID device. When dest_dev is - a RAID device, run setup() for all members independently on whether - LVM abstraction is being used. - (setup): Don't handle prefix at all; let grub-mkimage take care of it. - If grub-mkimage has set `*install_dos_part == -2', don't override this - value. - Perform *install_dos_part adjustments independently on whether - we're embedding or not. - Clarify error message when image is too big for embedding. - Remove duplicate *install_dos_part stanza. - -2008-06-17 Robert Millan - - * term/ieee1275/ofconsole.c (fgcolor, bgcolor): Remove variables. - (grub_ofconsole_normal_color, grub_ofconsole_highlight_color): New - variables. - (grub_ofconsole_setcolor, grub_ofconsole_getcolor): Load/store - values in grub_ofconsole_normal_color and - grub_ofconsole_highlight_color (they're not directly related to - background and foreground). - (grub_ofconsole_setcolorstate): Extract background and foreground - from grub_ofconsole_normal_color and grub_ofconsole_highlight_color. - -2008-06-17 Robert Millan - - * util/update-grub_lib.in (prepare_grub_to_access_device): Use - /boot/grub for the check in last commit, not /boot (they could be - different partitions). - -2008-06-16 Robert Millan - - * util/update-grub_lib.in (prepare_grub_to_access_device): If we were - asked to setup access for the same partition that provides /boot, - don't bother using UUIDs since our root already has the value we - want. - -2008-06-16 Robert Millan - - * util/biosdisk.c (convert_system_partition_to_system_disk): Detect - I2O devices. - Patch from Sven Mueller . - -2008-06-16 Robert Millan - - * util/update-grub.in: Check for $EUID instead of $UID. - Reported by Vincent Zweije. - -2008-06-16 Bean - - * fs/ext2.c (grub_ext2_blockgroup): Revert to pre-journal state. - (grub_ext2_read_block): Likewise. - (grub_ext2_read_inode): Likewise. - (grub_ext2_mount): Likewise. - (grub_ext2_close): Likewise. - (grub_ext3_get_journal): Removed. - - * fs/reiserfs.c (grub_reiserfs_get_item): Revert to pre-journal state. - (grub_reiserfs_read_symlink): Likewise. - (grub_reiserfs_mount): Likewise. - (grub_reiserfs_open): Likewise. - (grub_reiserfs_read): Likewise. - (grub_reiserfs_close): Likewise. - (grub_reiserfs_get_journal): Removed. - - * fs/fshelp.c (grub_fshelp_read): Removed. - (grub_fshelp_map_block): Likewise. - - * include/grub/fshelp.h (grub_fshelp_journal_type): Removed. - (grub_fshelp_journal): Likewise. - (grub_fshelp_read): Likewise. - (grub_fshelp_map_block): Likewise. - -2008-06-16 Pavel Roskin - - * conf/powerpc-ieee1275.rmk: Remove -msoft-float, we don't use - floating point anymore. - * include/grub/powerpc/libgcc.h: Leave only necessary exports. - -2008-06-15 Pavel Roskin - - * commands/ls.c (grub_ls_list_files): Use integer calculations - for human readable format, avoid floating point use. - * kern/misc.c (grub_ftoa): Remove. - (grub_vsprintf): Remove floating point support. - -2008-06-15 Robert Millan - - * util/grub.d/10_linux.in: Use the underlying device for loop-AES - devices. - Reported by Max Vozeler. - -2008-06-15 Robert Millan - - * util/i386/pc/grub-mkimage.c (generate_image): If we included a drive - in our prefix, set install_{dos,bsd}_part = -2 to indicate this can be - skipped later. - (main): If a memdisk was requested, add "(memdisk)" drive explicitly to - the beginning of the prefix. - - * kern/i386/pc/init.c (make_install_device): Remove memdisk check. - It is assumed that if we have a memdisk, grub-mkimage has set - grub_prefix to include the "(memdisk)" drive in it. - -2008-06-15 Robert Millan - - * term/i386/pc/console.c [GRUB_MACHINE_LINUXBIOS] (grub_console_init): - Initialize keyboard controller after registering the terminal, so that - grub_printf() can be called from grub_keyboard_controller_init(). - -2008-06-15 Robert Millan - - * fs/sfs.c (grub_sfs_read_extent): Fix the count of nodes in - extent-btree which is written as big endian on disk. - Reported by Alain Greppin . - -2008-06-14 Robert Millan - - * util/i386/efi/grub-install.in (modules): Remove `_chain'. - * util/i386/pc/grub-install.in (modules): Likewise. - -2008-06-13 Pavel Roskin - - * commands/ls.c (grub_ls_list_files): Fix format warnings. - -2008-06-13 Bean - - * commands/hexdump.c (grub_cmd_hexdump): Adjust offset for partition. - - * fs/ext2.c (grub_ext3_get_journal): Fix revoke block handling. - - * fs/fshelp.c (grub_fshelp_map_block): Don't map block 0 as it's used - to indicate sparse block. - -2008-06-12 Pavel Roskin - - * fs/ext2.c (grub_ext2_read_inode): Don't normalize block - number, grub_fshelp_read() does it for us. - - * fs/fshelp.c (grub_fshelp_read): New function. Implement - linear disk read with journal translation. - * fs/ext2.c: Use grub_fshelp_read() instead of grub_disk_read(). - * include/grub/fshelp.h: Declare grub_fshelp_read(). - -2008-06-09 Pavel Roskin - - * fs/minix.c (grub_minix_mount): Handle error reading - superblock. - -2008-06-08 Robert Millan - - * util/i386/pc/grub-setup.c (main): If install drive is an LVM, - don't append the RAID prefix afterwards. - Reported by Clint Adams. - -2008-06-08 Robert Millan - - Based on description from Pavel: - * kern/disk.c (grub_disk_check_range): Rename to ... - (grub_disk_adjust_range): ... this. Add a comment explaining the - tasks performed by this function. - -2008-06-08 Robert Millan - - * include/grub/ntfs.h (struct grub_ntfs_bpb): Rename `serial_number' to - `num_serial' (for consistency with other variables). - (struct grub_ntfs_data): Add `uuid' member. - * fs/ntfs.c (grub_ntfs_mount): Initialize `data->uuid'. - (grub_ntfs_uuid): New function. - (grub_ntfs_fs): Reference grub_ntfs_uuid() in `uuid' struct member. - -2008-06-07 Pavel Roskin - - * util/biosdisk.c (open_device): Revert last change to the - function, it broke installation. The sector needs to be - different dependent on which device is opened. - -2008-06-06 Robert Millan - - Ensure GRUB_KERNEL_MACHINE_DATA_END is always consistent with the - rest of GRUB, and breakage doesn't happen if its value were modified. - - * include/grub/i386/pc/kernel.h (GRUB_KERNEL_MACHINE_RAW_SIZE): - Redefine as an offset from `GRUB_KERNEL_MACHINE_DATA_END' instead of - a constant (same value). - * kern/i386/pc/startup.S: Replace hardcoded `0x50' with - `GRUB_KERNEL_MACHINE_DATA_END' (same value). - -2008-06-06 Robert Millan - - * util/biosdisk.c (open_device): Do not modify sector offset when - accessing a partition. kern/disk.c already handles this for us. - -2008-06-06 Robert Millan - - * util/grub-emu.c (grub_machine_init): Move code in this function from - here ... - (main): ... to here (before grub_util_biosdisk_init() call, to prevent - segfault in case grub_printf() is called). - - * util/i386/pc/grub-install.in: Append `--device-map=${device_map}' to - grub_probe. Update all users not to explicitly add it again. - (grub_device): New variable; contains corresponding device for grubdir. - (fs_module, partmap_module, devabstraction_module): Pass - `--device ${grub_device}' to grub_probe to avoid traversing /dev - every time. - -2008-06-05 Robert Millan - - * normal/misc.c (grub_normal_print_device_info): When a filesystem UUID - is found, print it (same layout as with labels). - -2008-06-04 Robert Millan - - * util/biosdisk.c (get_drive): Rename to ... - (find_grub_drive): ... this. Update all users. - - (get_os_disk): Rename to ... - (convert_system_partition_to_system_disk): ... this. Update all users. - - (find_drive): Rename to ... - (find_system_device): ... this. Update all users. - -2008-06-04 Robert Millan - - * util/biosdisk.c (get_os_disk): Handle IDA devices. - * util/grub-mkdevicemap.c (get_mmc_disk_name) - (make_device_map): Likewise. - -2008-06-01 Robert Millan - - * util/biosdisk.c (get_drive): Verify that `map[i].drive' is non-NULL - before dereferencing it. - - * fs/fat.c (struct grub_fat_bpb): Move fat32-specific fields into a - union with fat12/fat16-specific ones. Add some new fields, including - `num_serial' for both versions. - (struct grub_fat_data): Add `uuid' member. - (grub_fat_mount): Refer to fat32-specific fields in `bpb' by their new - names. Initialize `data->uuid' using `num_serial'. - (grub_fat_uuid): New function. - (grub_fat_fs): Reference grub_fat_uuid() in `uuid' struct member. - - * fs/reiserfs.c (grub_reiserfs_superblock): Add `uuid' field. - (grub_reiserfs_uuid): New function. - (grub_reiserfs_fs): Reference grub_reiserfs_uuid() in `uuid' struct - member. - - * fs/xfs.c (grub_xfs_sblock): Add `uuid' field. - (grub_xfs_uuid): New function. - (grub_xfs_fs): Reference grub_reiserfs_uuid() in `uuid' struct member. - -2008-06-01 Robert Millan - - * util/update-grub_lib.in (prepare_grub_to_access_device): Generate - code that is backward compatible with pre-uuid search command. - -2008-05-31 Robert Millan - - * disk/i386/pc/biosdisk.c (grub_biosdisk_iterate): Iterate through - floppies after everything else, to ensure floppy drive isn't accessed - unnecessarily (patch from Bean). - -2008-05-31 Robert Millan - - * commands/search.c (search_label, search_fs_uuid, search_file): Do - not print device names when we were asked to set a variable. - -2008-05-31 Robert Millan - - * term/ieee1275/ofconsole.c (grub_ofconsole_setcursor): Implement - using "cursor-on" and "cursor-off" commands (understood at least by - the Open Firmware flavour on OLPC). - -2008-05-31 Michael Gorven - - * term/terminfo.c (grub_terminfo_set_current): Correct vt100 cursor - on and off sequences. - -2008-05-31 Robert Millan - - * util/update-grub_lib.in: Replace `grub-probe' with `${grub_probe}'. - * util/update-grub.in: Likewise. - -2008-05-30 Pavel Roskin - - * util/biosdisk.c (linux_find_partition): Simplify logic and - make the code more universal. Keep special processing for - devfs, but use a simple rule for all other devices. If the - device ends with a number, append 'p' and the partition number. - Otherwise, append only the partition number. - -2008-05-30 Robert Millan - - * util/update-grub.in (GRUB_DISABLE_LINUX_UUID): Export variable. - * util/grub.d/10_linux.in: If GRUB_DEVICE_UUID is set, and - GRUB_DISABLE_LINUX_UUID isn't true, use the filesystem UUIDs as - the `root' parameter to Linux. - -2008-05-30 Robert Millan - - * commands/search.c (options): Rename --fs_uuid to --fs-uuid. - * util/update-grub_lib.in (prepare_grub_to_access_device): Replace - --fs_uuid with --fs-uuid. - * util/update-grub.in: Allow filesystem UUID probes to fail (since not - all filesystems support them). - -2008-05-30 Robert Millan - - * fs/ext2.c (grub_ext2_uuid): Use `04x' instead of '02x' as - grub_printf() flags, since we're printing in units of 2 bytes. - -2008-05-30 Robert Millan - - * util/grub.d/00_header.in: Remove obsolete comment referencing - convert_system_path_to_grub_path(). - * util/update-grub.in: Likewise. - * util/update-grub_lib.in (is_path_readable_by_grub): New function. - (convert_system_path_to_grub_path): Add a warning message explaining - that this function is deprecated. Rely on is_path_readable_by_grub() - for the readability checks. - (font_path): Use is_path_readable_by_grub() for the readability - check rather than convert_system_path_to_grub_path(). - -2008-05-30 Robert Millan - - * util/update-grub_lib.in (prepare_grub_to_access_device): New function. - * util/update-grub.in: Set `GRUB_FONT_PATH' to the system path, without - converting it first. - * util/grub.d/00_header.in: Use prepare_grub_to_access_device() to setup - grub.cfg for access to font file, and afterwards call it again to set - the root device. - -2008-05-30 Robert Millan - - * commands/search.c (options): Add --fs_uuid option. - (search_fs_uuid): New function. - (grub_cmd_search): Fix --set argument passing. - Use search_fs_uuid() when requested via --fs_uuid. - (grub_search_init): Update help message. - * fs/ext2.c (struct grub_ext2_sblock): Rename `unique_id' to `uuid' - and redeclare it as an array of 16-bit words. - (grub_ext2_uuid): New function. - (grub_ext2_fs): Reference grub_ext2_uuid() in `uuid' struct member. - * include/grub/fs.h (struct grub_fs): Add `uuid' struct member. - * util/update-grub.in (GRUB_DEVICE_UUID, GRUB_DEVICE_BOOT) - (GRUB_DEVICE_BOOT_UUID): New variables. - (GRUB_DRIVE. GRUB_DRIVE_BOOT. GRUB_DRIVE_BOOT_GRUB): Remove. - * util/grub.d/00_header.in: Set root using `search --fs_uuid' command - whenever possible. - * util/grub.d/10_hurd.in: Avoid explicit use of root drive. Instead, - just assume `root' variable has the right value. - * util/grub.d/10_linux.in: Likewise. - * util/grub-probe.c (probe): Probe for filesystem UUID when requested - via PRINT_FS_UUID. - (main): Recognise `-t fs_uuid' argument. - -2008-05-30 Robert Millan - - * util/biosdisk.c (map): Redefine structure to hold information - about GRUB drive name. - (get_drive): Reimplement without assuming (and verifying) BIOS-like - drive names. - (call_hook): Remove. - (grub_util_biosdisk_iterate): Access drive names via `.drive' struct - member. Assume drive has partitions. - (grub_util_biosdisk_open): Access device names via `.device' struct - member. - (open_device): Likewise. - (find_drive): Likewise. - (read_device_map): Adjust map[] usage to match the new struct - definition. Don't check for duplicates (still possible, but not cheap - anymore). - (grub_util_biosdisk_fini): Free malloced buffers referenced by map[]. - (make_device_name): Remove assumption of BIOS-like drive names. - -2008-05-30 Pavel Roskin - - * conf/i386-efi.rmk (normal/execute.c_DEPENDENCIES): Remove, as - compiling execute.c doesn't need grub_script.tab.h anymore. - (normal/command.c_DEPENDENCIES): Likewise. - (normal/function.c_DEPENDENCIES): Likewise. - * conf/i386-ieee1275.rmk: Likewise. - * conf/i386-linuxbios.rmk: Likewise. - * conf/i386-pc.rmk: Likewise. - * conf/powerpc-ieee1275.rmk: Likewise. - * conf/sparc64-ieee1275.rmk: Likewise. - -2008-05-29 Pavel Roskin - - * disk/lvm.c (grub_lvm_scan_device): Check for the buffer end - when scanning metadata for volume group name. - - * include/grub/script.h: Don't include grub_script.tab.h. It's - a generated file, which may only be included from the files with - DEPENDENCIES rules in the makefile. Don't use typedef YYSTYPE, - use union YYSTYPE, as the later allows forward declaration. - * normal/lexer.c: Don't use typedef YYSTYPE, use union YYSTYPE. - -2008-05-29 Robert Millan - - * term/i386/pc/at_keyboard.c: Include `grub/machine/machine.h'. - (OLPC_UP, OLPC_DOWN, OLPC_LEFT, OLPC_RIGHT): New macros. - [GRUB_MACHINE_IEEE1275] (keyboard_map): Add OLPC scan codes - (grub_console_checkkey): Add grub_dprintf() call to report unknown - scan codes. - -2008-05-29 Robert Millan - - * term/i386/pc/at_keyboard.c (grub_console_checkkey): Add support for - control key combinations. - -2008-05-29 Robert Millan - - * util/powerpc/ieee1275/grub-install.in: Move from here ... - * util/ieee1275/grub-install.in: ... to here. - * powerpc-ieee1275.rmk (grub_install_SOURCES): Update location. - * i386-ieee1275.rmk (sbin_SCRIPTS): New variable. - (grub_install_SOURCES): Likewise. - -2008-05-29 Robert Millan - - * fs/affs.c: Update copyright year. - * fs/ext2.c: Likewise. - * fs/fshelp.c: Likewise. - * fs/hfsplus.c: Likewise. - * fs/ntfs.c: Likewise. - * fs/xfs.c: Likewise. - * include/grub/fshelp.h: Likewise. - * util/grub-mkdevicemap.c: Likewise. - -2008-05-28 Robert Millan - - * util/update-grub.in: Allow chmod call to fail, since /boot/grub/ - might need to be fatfs to support some firmware implementations - (e.g. OFW or EFI). - -2008-05-28 Robert Millan - - * util/biosdisk.c (linux_find_partition, get_os_disk): Handle MMC - devices. - * util/grub-mkdevicemap.c (get_mmc_disk_name) - (make_device_map): Likewise. - -2008-05-20 Bean - - * fs/fshelp.c (grub_fshelp_map_block): New function. - (grub_fshelp_find_file): Use 64-bit type for pos and block address. - Use `>>' and `&' operator to avoid 64-bit divide and modulo. - - * include/grub/fshelp.h (grub_fshelp_journal_type): New enum. - (GRUB_FSHELP_JOURNAL_UNUSED_MAPPING): New macro. - (grub_fshelp_journal): New structure. - (grub_fshelp_map_block): New function prototype. - (grub_fshelp_read_file): Use grub_disk_addr_t as block type. - (grub_fshelp_map_block): Likewise. - - * fs/ext2.c (EXT3_FEATURE_COMPAT_HAS_JOURNAL): New macro. - (EXT3_JOURNAL_MAGIC_NUMBER): Likewise. - (EXT3_JOURNAL_DESCRIPTOR_BLOCK): Likewise. - (EXT3_JOURNAL_COMMIT_BLOCK): Likewise. - (EXT3_JOURNAL_SUPERBLOCK_V1): Likewise. - (EXT3_JOURNAL_SUPERBLOCK_V2): Likewise. - (EXT3_JOURNAL_REVOKE_BLOCK): Likewise. - (EXT3_JOURNAL_FLAG_ESCAPE): Likewise. - (EXT3_JOURNAL_FLAG_SAME_UUID): Likewise. - (EXT3_JOURNAL_FLAG_DELETED): Likewise. - (EXT3_JOURNAL_FLAG_LAST_TAG): Likewise. - (grub_ext2_sblock): New members for journal support. - (grub_ext3_journal_header): New structure. - (grub_ext3_journal_revoke_header): Likewise. - (grub_ext3_journal_block_tag): Likewise. - (grub_ext3_journal_sblock): Likewise. - (grub_fshelp_node): New members logfile and journal. - (grub_ext2_read_block): Change block type to grub_disk_addr_t. Use - grub_fshelp_map_block to get real block number. - (grub_ext2_blockgroup): Use grub_fshelp_map_block to get real block - number. - (grub_ext2_read_inode): Likewise. - (grub_ext3_get_journal): New function. - (grub_read_inode): Initialize journal using grub_ext3_get_journal. - (grub_ext2_close): Release memory used by journal. - - * fs/reiserfs.c (REISERFS_MAGIC_STRING): Changed to "ReIsEr". - (REISERFS_MAGIC_DESC_BLOCK): New macro. - (grub_reiserfs_transaction_header): Renamed to - grub_reiserfs_description_block, replace field data with real_blocks. - (grub_reiserfs_commit_block): New structure. - (grub_reiserfs_data): New member journal. - (grub_reiserfs_get_item): Use grub_fshelp_map_block to get real block - number. - (grub_reiserfs_read_symlink): Likewise. - (grub_reiserfs_iterate_dir): Likewise. - (grub_reiserfs_open): Likewise. - (grub_reiserfs_read): Likewise. - (grub_reiserfs_get_journal): New function. - (grub_reiserfs_mount): Use "ReIsEr" as super block magic, as there are - three varieties ReIsErFs, ReIsEr2Fs and ReIsEr3Fs. Initialize journal - using grub_reiserfs_get_journal. - (grub_reiserfs_close): Release memory used by journal. - - * fs/affs.c (grub_affs_read_block): Change block type to - grub_disk_addr_t. Use grub_divmod64 to do 64-bit division. - - * fs/afs.c (grub_afs_read_block): Change block type to grub_disk_addr_t. - - * fs/hfsplus.c (grub_hfsplus_read_block): Likewise. - - * fs/ntfs.c (grub_ntfs_read_block): Likewise. - - * fs/udf.c (grub_udf_read_block): Change block type to - grub_disk_addr_t. Use type cast to avoid warning. - - * fs/xfs.c (grub_xfs_read_block): Likewise. - -2008-05-16 Christian Franke - - * commands/cat.c (grub_cmd_cat): Remove non-ESC keys from keyboard queue - to ensure that break with ESC will always work. - * commands/sleep.c (grub_interruptible_millisleep): Likewise. - Remove ESC from keyboard queue. - -2008-05-16 Christian Franke - - * util/biosdisk.c: [__CYGWIN__] Add includes. - (grub_util_biosdisk_open): Use Linux code also for Cygwin. - (get_os_disk): Move variable declarations to OS specific - parts to avoid warning. - [__GNU__] (get_os_disk): Fix /dev/sdXsN case. - [__CYGWIN__] (get_os_disk): Add Cygwin /dev/sdXN device names. - (grub_util_biosdisk_get_grub_dev): Use Linux code also for - Cygwin. - * util/getroot.c: [__CYGWIN__] Add includes. - (strip_extra_slashes): Fix "/" case. - [__CYGWIN__] (get_win32_path): New function. - [__CYGWIN__] (grub_get_prefix): Add conversion to win32 path. - [__CYGWIN__] (find_root_device): Disable. - [__CYGWIN__] (get_bootsec_serial): New function. - [__CYGWIN__] (find_cygwin_root_device): Likewise. - [__linux__] (grub_guess_root_device): Add early returns to simplify - structure. - [__CYGWIN__] (grub_guess_root_device): Call find_cygwin_root_device. - [__linux__] (grub_util_get_dev_abstraction): Enable LVM and RAID - check for Linux only. - -2008-05-15 Bean - - * kern/i386/pc/startup.S (grub_console_getkey): Workaround for the - keyboard hang problem in apple's intel mac. - -2008-05-09 Robert Millan - - * util/biosdisk.c (linux_find_partition, get_os_disk): Handle Virtio - devices. - * util/grub-mkdevicemap.c (get_virtio_disk_name) - (make_device_map): Likewise. - Reported by Aurelien Jarno - -2008-05-07 Ian Campbell - - * util/biosdisk.c (get_os_disk): Recognise xvd type disks. - * util/grub-mkdevicemap.c (get_xvd_disk_name): New function. - (make_device_map): Output entries for xvd type disks. - -2008-05-07 Robert Millan - - * util/biosdisk.c (linux_find_partition, get_os_disk): Handle CCISS - devices. - * util/grub-mkdevicemap.c (get_cciss_disk_name) - (make_device_map): Likewise. - Reported by Roland Dreier - -2008-05-07 Robert Millan - - * disk/lvm.c (grub_lvm_scan_device): Detect errors in an additional - grub_strstr() call. Correct a few mistakes in failure path handling. - -2008-05-06 Robert Millan - - * util/update-grub_lib.in (make_system_path_relative_to_its_root): - Do not print a trailing slash (therefore, the root directory is an - empty string). - (convert_system_path_to_grub_path): Do not remove trailing slash - from make_system_path_relative_to_its_root() output. - - * util/i386/pc/grub-install.in: Add trailing slash to output from - make_system_path_relative_to_its_root(). - -2008-05-06 Robert Millan - - * util/grub-fstest.c (grub_refresh): Call `fflush (stdout)'. This - ensures that output lines aren't intermangled with those sent to - stderr (via grub_util_info()). - * util/grub-probe.c (grub_refresh): Likewise. - * util/i386/pc/grub-setup.c (grub_refresh): Likewise. - -2008-05-05 Christian Franke - - * util/grub-mkdevicemap.c (get_floppy_disk_name) [__CYGWIN__]: - Add Cygwin device names. - (get_ide_disk_name) [__CYGWIN__]: Likewise. - (get_scsi_disk_name) [__CYGWIN__]: Likewise. - (check_device): Return error instead of success on empty name. - (make_device_map): Move label inside linux specific code to - prevent compiler warning. - -2008-04-30 Robert Millan - - Based on patch from Fabian Greffrath - * util/grub.d/10_linux.in: Add ${GRUB_CMDLINE_LINUX_DEFAULT} to the - first boot option. - * util/update-grub.in: Export GRUB_CMDLINE_LINUX_DEFAULT. - -2008-04-29 Robert Millan - - * docs/grub.cfg: New file (example GRUB configuration). - -2008-04-26 Robert Millan - - * DISTLIST: Sort (sort -u < DISTLIST | sponge DISTLIST). Add - `loader/i386/ieee1275/linux.c', `loader/i386/ieee1275/linux_normal.c' - and `disk/ieee1275/nand.c'. - -2008-04-25 Bean - - * Makefile.in (RMKFILES): Add missing arch i386-ieee1275 and - i386-linuxbios. - - * commands/hexdump.c (grub_cmd_hexdump): Support dumping of device, - change the buffer size to 4096 for cdrom device. - - * conf/i386-ieee1275.rmk (pkglib_MODULES): Add _linux.mod, linux.mod - and nand.mod. - (_linux_mod_SOURCES): New variable. - (_linux_mod_CFLAGS): Likewise. - (_linux_mod_LDFLAGS): Likewise. - (linux_mod_SOURCES): Likewise. - (linux_mod_CFLAGS): Likewise. - (linux_mod_LDFLAGS): Likewise. - (nand_mod_SOURCES): Likewise. - (nand_mod_CFLAGS): Likewise. - (nand_mod_LDFLAGS): Likewise. - - * disk/ieee1275/ofdisk.c (grub_ofdisk_open): Return - GRUB_ERR_UNKNOWN_DEVICE instead of GRUB_ERR_BAD_DEVICE if no device - type property. (nand device in olpc don't have this property) - - * include/grub/disk.h (grub_disk_dev_id): New macro - GRUB_DISK_DEVICE_NAND_ID. - - * include/grub/i386/ieee1275/loader.h (grub_rescue_cmd_linux): New - function prototype. - (grub_rescue_cmd_initrd): Likewise. - - * include/grub/i386/linux.h (GRUB_LINUX_OFW_SIGNATURE): New macro. - (linux_kernel_params): Add new member ofw_signature, ofw_num_items, - ofw_cif_handler and ofw_idt, adjust padding number. - - * include/grub/i386/pc/memory.h (grub_upper_mem): Export it if - GRUB_MACHINE_IEEE1275 is defined. - - * include/grub/ieee1275/ieee1275.h (grub_available_iterate): - Use NESTED_FUNC_ATTR attribute on the hook parameter. - - * kern/powerpc/ieee1275/init.c (grub_claim_heap): Use NESTED_FUNC_ATTR - on nested function heap_init. - (grub_upper_mem): New variable for i386-ieee1275. - (grub_get_extended_memory): New function for i386-ieee1275. - (grub_machine_init): Call grub_get_extended_memory for i386-ieee1275. - - * kern/powerpc/ieee1275/openfw.c (grub_available_iterate): Use - NESTED_FUNC_ATTR on the hook parameter. Don't quit if no device type - property. - - * loader/i386/ieee1275/linux.c: New file. - - * loader/i386/ieee1275/linux_normal.c: New file. - - * disk/ieee1275/nand.c: New file. - -2008-04-18 Thomas Schwinge - - * util/i386/pc/grub-mkrescue.in (grub_mkimage): Don't overwrite correct - value. - * util/powerpc/ieee1275/grub-mkrescue.in (grub_mkimage): Likewise. - -2008-04-18 Robert Millan - - Restructures early code path on ieee1275 to unify grub_main() as - the first C function that is executed in every platform. - - * include/grub/ieee1275/ieee1275.h (grub_ieee1275_init): New prototype. - * kern/i386/ieee1275/startup.S (_start): Jump to grub_main() instead of - cmain(). - * kern/powerpc/ieee1275/crt0.S (_start): Likewise. - * kern/ieee1275/cmain.c (cmain): Rename to ... - * kern/ieee1275/cmain.c (grub_ieee1275_init): ... this. - * kern/ieee1275/init.c (grub_machine_init): Call grub_ieee1275_init() - at the beginning. - -2008-04-18 Robert Millan - - * util/update-grub.in: Fix syntax error when setting - `GRUB_PRELOAD_MODULES'. - Reported by Stephane Chazelas - -2008-04-17 Lubomir Kundrak - - * aclocal.m4 (grub_PROG_OBJCOPY_ABSOLUTE): take only .text - section into account, newer toolchains generate unique build ids - * configure.ac: remove the test for --build-id=none acceptance, - we want build ids to be preserved - * genmk.rb: add -R .note.gnu.build-id to objcopy, so build id - far from other sections don't cause the raw binary images grow - size - -2008-04-15 Robert Millan - - * disk/lvm.c: Update copyright year. - * kern/misc.c: Likewise. - -2008-04-14 Vesa Jaaskelainen - - * disk/lvm.c (grub_lvm_scan_device): Add forgotten failure path when - there is no memory left for physical volume name. - -2008-04-14 Vesa Jaaskelainen - - * disk/lvm.c (grub_lvm_scan_device): Fix logical volume's physical - volume name mapping to support bigger than 9 character names properly. - -2008-04-13 Robert Millan - - * disk/i386/pc/biosdisk.c (grub_biosdisk_rw): Fix CHS limit check, - as per http://www.allensmith.net/Storage/HDDlimit/Int13h.htm - -2008-04-13 Christian Franke - - * util/i386/pc/grub-mkrescue.in: Add --emulation=floppy - to create a floppy emulation boot CD when non emulation mode - does not work. - Enable Joliet CD filesystem extension. - -2008-04-13 Robert Millan - - * kern/misc.c (grub_strncat): Fix off-by-one error. - Reported by Zhang Huan - - * kern/env.c (grub_env_context_close): Clear current context, not - previous one. - Patch from Zhang Huan - - * kern/misc.c (grub_strcat): Minor speed optimization (same code size). - -2008-04-13 Robert Millan - - Improve robustness when handling LVM. - - * disk/lvm.c (grub_lvm_getvalue): Return 0 when `*p' is NULL - (and leave `*p' unmodified). - (grub_lvm_iterate): Don't assume `vg->lvs != NULL' when iterating - through it. - (grub_lvm_memberlist): Don't assume `lv->vg->pvs != NULL' when - iterating through it. - (grub_lvm_open): Don't assume `vg->lvs != NULL' when iterating - through it. - (grub_lvm_scan_device): Check the return value (and fail gracefully - when due) on each grub_lvm_getvalue() or grub_strstr() call. - Don't assume `vg->pvs != NULL' when iterating through it. - -2008-04-13 Robert Millan - - * gendistlist.sh (EXTRA_DISTFILES): Add `genpartmaplist.sh'. - * genmk.rb (partmap): New variable. - (CLEANFILES, PARTMAPFILES): Add #{partmap}. - (#{partmap}): New target rule. - * genpartmaplist.sh: New file. - * Makefile.in (pkglib_DATA): Add partmap.lst. - (partmap.lst): New target rule. - * util/i386/pc/grub-mkrescue.in: Generate grub.cfg that loads needed - modules (including all partition maps), instead of preloading them. - -2007-04-13 Fabian Greffrath - - * util/grub.d/30_os-prober.in: New script. Use `os-prober' and - `linux-boot-prober' (if installed) to detect other operating - systems which are installed on the computer and add them to - the boot menu. - * conf/common.rmk: Build and install 30_os-prober. - -2008-04-12 Robert Millan - - * kern/powerpc/ieee1275/init.c: Move from here ... - * kern/ieee1275/init.c: ... to here. Update all users. - - * kern/powerpc/ieee1275/cmain.c: Move from here ... - * kern/ieee1275/cmain.c: ... to here. Update all users. - - * kern/powerpc/ieee1275/openfw.c: Move from here ... - * kern/ieee1275/openfw.c: ... to here. Update all users. - - * loader/powerpc/ieee1275/multiboot2.c: Move from here ... - * loader/ieee1275/multiboot2.c: ... to here. Update all users. - -2008-04-10 Pavel Roskin - - * configure.ac: Always use "_cv_" in cache variables for - compatibility with Autoconf 2.62. - -2008-04-07 Robert Millan - - Revert grub/machine/init.h addition by Pavel (since it breaks on - i386-ieee1275 and others): - * util/i386/pc/misc.c: Remove grub/machine/init.h. - * util/powerpc/ieee1275/misc.c: Likewise. - -2008-04-07 Robert Millan - - * util/grub-probe.c (probe): Improve error message. - -2008-04-07 Robert Millan - - * util/biosdisk.c (read_device_map): Skip devices that don't exist - (this prevents the presence of a bogus entry from ruining the whole - thing). - -2008-04-06 Pavel Roskin - - * util/biosdisk.c: Include grub/util/biosdisk.h. - * util/grub-fstest.c (execute_command): Make static. - * util/grub-mkdevicemap.c (check_device): Likewise. - * util/i386/pc/misc.c: Include grub/machine/init.h. - * util/powerpc/ieee1275/misc.c: Likewise. - * util/lvm.c: Include grub/util/lvm.h. - * util/misc.c: Include grub/kernel.h, grub/misc.h and - grub/cache.h. - * util/raid.c: Include grub/util/raid.h. - (grub_util_getdiskname): Make static. - - * util/grub-emu.c (main): Remove calls to grub_hostfs_init() and - grub_hostfs_fini(), as they are called from grub_init_all() and - grub_fini_all() respectively. This fixes an infinite loop in - grub-fstest due to double registration of hostfs. - Reported by Christian Franke - -2008-04-05 Pavel Roskin - - * bus/pci.c (grub_pci_iterate): For multifunction devices, probe - all 8 functions. Otherwise, probe function 0 only. - -2008-04-04 Pavel Roskin - - * commands/lspci.c (grub_lspci_iter): Print the bus number - correctly. - - * commands/lspci.c (grub_pci_classes): Fix typos. - (grub_lspci_iter): Don't print func twice. Print vendor ID - before device ID, as it's normally done. - - * kern/powerpc/ieee1275/cmain.c (grub_ieee1275_find_options): - Fix signedness warnings. - * kern/powerpc/ieee1275/openfw.c (grub_available_iterate): - Likewise. - * util/ieee1275/get_disk_name.c: Include config.h so that - _GNU_SOURCE is defined and getline() is declared. Mark an - unused argument as such. Fix a signedness warning. - -2008-04-02 Pavel Roskin - - * genkernsyms.sh.in: Use more robust assignments for CC and - srcdir. Quote srcdir. - * gensymlist.sh.in: Likewise. Assert at the compile time that - the symbol table is not empty. - - * disk/raid.c (grub_raid_memberlist): Fix a signedness warning. - * fs/cpio.c (grub_cpio_read): Likewise. - -2008-04-01 Pavel Roskin - - * disk/ata.c (grub_ata_open): Don't lose precision in disk->id. - * disk/host.c (grub_host_open): Likewise. - * disk/loopback.c (grub_loopback_open): Likewise. - * disk/memdisk.c (grub_memdisk_open): Use a string pointer for - disk->id as in disk/host.c, not a multi-character constant. - - * util/grub-fstest.c (cmd_cmp): Use fseeko(), not fseek(). The - later is obsolete, potentially dangerous and sets a bad example. - * util/i386/efi/grub-mkimage.c (make_header): Likewise. - * util/misc.c (grub_util_get_image_size): Likewise. - - * disk/loopback.c (options): Improve help for "--partitions". - - * normal/arg.c (grub_arg_show_help): Fix spacing of the long - options to align them with the short options, e.g. "echo -e". - -2008-03-31 Bean - - * video/reader/png.c (grub_png_data): New member is_16bit and - image_data. - (grub_png_decode_image_header): Detect 16 bit png image. - (grub_png_convert_image): New function to convert 16 bit image to 8 bit. - (grub_png_decode_png): Call grub_png_convert_image for 16 bit image. - (grub_video_reader_png): Release memory occupied by image_data. - - * fs/ntfs.c (find_attr): Handle non-resident attribute list larger than - 4096 bytes. - (grub_nfs_mount): Skip the test for sector per cluster. - - * include/grub/ntfs.h (MAX_SPC): Removed. - -2008-03-31 Bean - - * conf/common.rmk (pkgdata_MODULES): Add afs.mod. - (grub_probe_SOURCES): Add fs/afs.c. - (grub_fstest_SOURCES): Likewise. - (afs_mod_SOURCES): New variable. - (afs_mod_CFLAGS): Likewise. - (afs_mod_LDFLAGS): Likewise. - - * conf/i386-pc.rmk (grub_setup_SOURCES): Add fs/afs.c. - (grub_emu_SOURCES): Likewise. - - * conf/i386-efi.rmk (grub_emu_SOURCES): Likewise. - - * conf/i386-ieee1275.rmk (grub_emu_SOURCES): Likewise. - - * conf/i386-linuxbios.rmk (grub_emu_SOURCES): Likewise. - - * conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Likewise. - - * fs/afs.c: New file. - -2008-03-30 Pavel Roskin - - * disk/host.c: Include grub/misc.h to fix a warning. - * util/hostfs.c: Use GRUB_MOD_INIT and GRUB_MOD_FINI to fix - warnings about implicit declarations. - - * fs/udf.c (grub_udf_mount): Fix warning about a shadowing a - variable. - * include/grub/i386/loader.h: Change declaration of - grub_linux_boot() to match what grub_loader_set() expects. - * util/getroot.c (grub_guess_root_device): Return const char* to - fix a warning. - * util/grub-probe.c (probe): Fix a warning about uninitialized - abstraction_name variable. - * util/i386/get_disk_name.c (grub_util_get_disk_name): Mark - second argument as unused to fix a warning. - - * loader/i386/pc/multiboot2.c (grub_mb2_arch_elf64_hook): Add - missing grub_error() call. - - * util/update-grub_lib.in: Define datarootdir, since Autoconf - 2.60 and newer uses it to define datadir. - - * commands/sleep.c: Fix warning about implicit declaration. - * disk/memdisk.c: Likewise. - * loader/aout.c: Likewise. - * loader/i386/bsd_normal.c: Likewise. - * util/grub-probe.c: Likewise. - - * commands/i386/cpuid.c (has_longmode): Make static. - * disk/i386/pc/biosdisk.c (cd_drive): Likewise. - * include/grub/i386/bsd.h (bios_memmap_t): Remove, it's unused. - - * kern/i386/pc/startup.S (real_to_prot): Use %cs prefix to load - GDT. This is more robust, as %ds can change. - (grub_biosdisk_rw_int13_extensions): Don't clear %ds before - calling real_to_prot(). - (grub_biosdisk_get_diskinfo_int13_extensions): Likewise. - -2008-03-28 Pavel Roskin - - * kern/i386/pc/startup.S: Assert that uncompressed functions - don't spill beyond GRUB_KERNEL_MACHINE_RAW_SIZE. - * kern/i386/pc/lzo1x.S: Remove all .align directives in the - code, as they push parts of the code (error handlers) beyond - GRUB_KERNEL_MACHINE_RAW_SIZE. Speed is not as important in this - code as correctness and size. - -2008-03-28 Pavel Roskin - - * kern/i386/pc/startup.S - (grub_biosdisk_get_diskinfo_int13_extensions): When converting - data block address to the real mode, keep offset minimal. This - works around a bug in AWARD BIOS on old Athlon systems, which - makes CD detection hang. - -2008-03-26 Pavel Roskin - - * normal/color.c (grub_parse_color_name_pair): Make `name' a - const. - * include/grub/normal.h: Add grub_parse_color_name_pair() - declaration. - -2008-03-24 Bean - - * disk/i386/pc/biosdisk.c (cd_start): Removed. - (cd_count): Removed. - (cd_drive): New variable. - (grub_biosdisk_get_drive): Don't check for (cdN) device. - (grub_biosdisk_call_hook): Likewise. - (grub_biosdisk_iterate): Change cdrom detection method. - (grub_biosdisk_open): Replace cd_start with cd_drive. - (GRUB_MOD_INIT): Use grub_biosdisk_get_cdinfo_int13_extension to - detect cdrom device. - - * include/grub/i386/pc/biosdisk.h (GRUB_BIOSDISK_MACHINE_CDROM_START): - Removed. - (GRUB_BIOSDISK_MACHINE_CDROM_END): Removed. - (GRUB_BIOSDISK_CDTYPE_NO_EMUL): New macro. - (GRUB_BIOSDISK_CDTYPE_1_2_M): Likewise. - (GRUB_BIOSDISK_CDTYPE_1_44_M): Likewise. - (GRUB_BIOSDISK_CDTYPE_2_88_M): Likewise. - (GRUB_BIOSDISK_CDTYPE_HARDDISK): Likewise. - (GRUB_BIOSDISK_CDTYPE_MASK): Likewise. - (grub_biosdisk_cdrp): New structure. - (grub_biosdisk_get_cdinfo_int13_extensions): New function. - - * include/grub/i386/pc/kernel.h (grub_boot_drive): Export this variable. - - * kern/i386/pc/init.c (make_install_device): Don't use (cdN) as root - device. - - * kern/i386/pc/startup.S (grub_biosdisk_get_cdinfo_int13_extensions): - New function. - -2008-03-20 Robert Millan - - Remove 2 TiB limit in ata.mod. - * disk/ata.c (grub_ata_device): Promote `size' to grub_uint64_t. - (grub_ata_dumpinfo): Print sector count with 0x%llx. - (grub_ata_identify): Interpret `&info16[100]' as a pointer to - grub_uint64_t instead of grub_uint32_t. - -2008-03-05 Bean - - * loader/i386/pc/multiboot.c (grub_multiboot_get_bootdev): New function. - (grub_multiboot): Set boot device. - - * boot/i386/pc/lnxboot.S (real_code_2): Set %dh to 0xFF. - -2008-03-02 Bean - - * fs/reiserfs.c (grub_reiserfs_read_symlink): Add 0 at the end of - symlink_buffer. - -2008-03-01 Yoshinori K. Okuji - - * DISTLIST: Added docs/fdl.texi, docs/grub.texi, docs/mdate-sh and - texinfo.tex. - - * docs/grub.texi: New file. Copied from GRUB Legacy, and slightly - modified. - - * docs/fdl.texi: New file. - - * docs/mdate-sh: New file. Copied from gnulib. - * docs/texinfo.tex: Likewise. - - * config.guess: Updated from gnulib. - * install-sh: Likewise. - -2008-02-28 Robert Millan - - * conf/i386-linuxbios.rmk (pkglib_MODULES): Add aout.mod. - (aout_mod_SOURCES): New variable. - (aout_mod_CFLAGS): Likewise. - (aout_mod_LDFLAGS): Likewise. - - * conf/i386-ieee1275.rmk: Likewise. - -2008-02-28 Robert Millan - - * util/update-grub.in: Reorganise terminal validity check. Accept - `ieee1275:console' (OLPC) and `*:gfxterm' as valid too. - Based on suggestion by Franklin PIAT. - -2008-02-28 Fabian Greffrath - - * include/grub/util/getroot.h (grub_util_check_block_device): Export new - function. - * util/getroot.c (grub_util_check_block_device): New function that - returns the given argument if it is a block device and returns NULL else. - * util/grub-probe.c (argument_is_device): New variable. - (probe): Promote device_name from a variable to an argument. Receive - device_name from grub_util_check_block_device() if path is NULL and from - grub_guess_root_device() else. Do not free() device_name anymore. - (options): Introduce new parameter '-d, --device'. - (main): Add description of the new parameter to the help screen. - Rename path variable to argument. Set argument_is_device if the '-d' - option is given. Pass argument to probe() depending on - argument_is_device. - -2008-02-24 Bean - - * fs/iso9660.c (GRUB_ISO9660_VOLDESC_BOOT): New macro. - (GRUB_ISO9660_VOLDESC_PRIMARY): Likewise. - (GRUB_ISO9660_VOLDESC_SUPP): Likewise. - (GRUB_ISO9660_VOLDESC_PART): Likewise. - (GRUB_ISO9660_VOLDESC_END): Likewise. - (grub_iso9660_primary_voldesc): New member escape. - (grub_iso9660_data): New member joliet. - (grub_iso9660_convert_string): New function. - (grub_iso9660_mount): Detect joliet extension. - (grub_iso9660_iterate_dir): Convert filename when joliet is detected. - (grub_iso9660_iso9660_label): Likewise. - - * conf/common.rmk (pkgdata_MODULES): Add udf.mod. - (grub_setup_SOURCES): Add fs/udf.c. - (grub_fstest_SOURCES): Likewise. - (udf_mod_SOURCES): New variable. - (udf_mod_CFLAGS): Likewise. - (udf_mod_LDFLAGS): Likewise. - - * conf/i386-pc.rmk (grub_setup_SOURCES): Add fs/udf.c. - (grub_emu_SOURCES): Likewise. - - * conf/i386-efi.rmk (grub_emu_SOURCES): Likewise. - - * conf/i386-ieee1275.rmk (grub_emu_SOURCES): Likewise. - - * conf/i386-linuxbios.rmk (grub_emu_SOURCES): Likewise. - - * conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Likewise. - - * fs/udf.c: New file. - -2008-02-24 Robert Millan - - * conf/i386-efi.rmk (normal/function.c_DEPENDENCIES) - (normal/lexer.c_DEPENDENCIES): New variables. - * conf/i386-ieee1275.rmk (normal/function.c_DEPENDENCIES) - (normal/lexer.c_DEPENDENCIES): Likewise. - * conf/i386-linuxbios.rmk (normal/function.c_DEPENDENCIES) - (normal/lexer.c_DEPENDENCIES): Likewise. - * conf/i386-pc.rmk (normal/function.c_DEPENDENCIES) - (normal/lexer.c_DEPENDENCIES): Likewise. - * conf/powerpc-ieee1275.rmk (normal/function.c_DEPENDENCIES) - (normal/lexer.c_DEPENDENCIES): Likewise. - * conf/sparc64-ieee1275.rmk (normal/function.c_DEPENDENCIES) - (normal/lexer.c_DEPENDENCIES): Likewise. - -2008-02-23 Robert Millan - - * partmap/gpt.c (grub_gpt_magic): Add `0x' qualifier to each member, - since they were intended to be in hex. This didn't break previously - because of a bug in gpt_partition_map_iterate() (see below). - - (gpt_partition_map_iterate): Replace `grub_memcmp' with `! grub_memcmp' - when checking the validity of GPT header. - Remove `partno', since it always provides the same information as `i'. - -2008-02-21 Yoshinori K. Okuji - - * include/grub/efi/time.h: Fix a wrong comment. - -2008-02-19 Pavel Roskin - - * kern/rescue.c (grub_enter_rescue_mode): Improve initial - message. - -2008-02-19 Bean - - * conf/i386-pc.rmk (pkglib_MODULES): Add aout.mod _bsd.mod and bsd.mod. - (aout_mod_SOURCES): New variable. - (aout_mod_CFLAGS): Likewise. - (aout_mod_LDFLAGS): Likewise. - (_bsd_mod_SOURCES): New variable. - (_bsd_mod_CFLAGS): Likewise. - (_bsd_mod_LDFLAGS): Likewise. - (bsd_mod_SOURCES): New variable. - (bsd_mod_CFLAGS): Likewise. - (bsd_mod_LDFLAGS): Likewise. - - * include/grub/aout.h: New file. - - * include/grub/i386/loader.h (grub_unix_real_boot): New function. - - * include/grub/i386/bsd.h: New file. - - * include/grub/i386/pc/init.h (grub_get_mmap_entry): Use EXPORT_FUNC - to make it public. - - * kern/elf.c (grub_elf32_load): Get the physical address after the hook - function is called, so that it's possible to change it inside the hook. - (grub_elf64_load): Likewise. - (grub_elf_file): Don't close the file if elf header is not found. - (grub_elf_close): Close the file if grub_elf_file fails (The new - grub_elf_file won't close it). - (grub_elf32_size): Use NESTED_FUNC_ATTR for nested function calcsize. - (grub_elf64_size): Likewise. - - * kern/i386/loader.S (grub_unix_real_boot): New function. - - * loader/aout.c: New file. - - * loader/i386/bsd.c: New file. - - * loader/i386/bsd_normal.c: New file. - - * loader/i386/pc/multiboot.c (grub_multiboot): Handle a.out format. - - * loader/multiboot2.c (grub_multiboot2): Reset grub_errno so that it - can test other formats. - -2008-02-19 Robert Millan - - * partmap/gpt.c: Include `'. - (grub_gpt_partition_type_empty): Redefine with macro from - `'. - (gpt_partition_map_iterate): Adjust partition type comparison. - - Export `entry' as partmap-specific `part.data' struct. - (grub_gpt_header, grub_gpt_partentry): Move from here ... - - * include/grub/gpt_partition.h (grub_gpt_header) - (grub_gpt_partentry): ... to here (new file). - - * util/i386/pc/grub-setup.c: Include `'. - - (grub_gpt_partition_type_bios_boot): New const variable, defined - with macro from `'. - - (setup): Replace `first_start' with `embed_region', which keeps - track of the embed region (and is partmap-agnostic). - - Replace find_first_partition_start() with find_usable_region(), - which finds a usable region for embedding using partmap-specific - knowledge (supports PC/MSDOS and GPT). - - Fix all assumptions that the embed region start at sector 1, using - `embed_region.start' from now on. Similarly, use `embed_region.end' - rather than `first_start' to calculate available size. - - In grub_util_info() message, replace "into after the MBR" with an - indication of the specific sector our embed region starts at. - -2008-02-19 Robert Millan - - * DISTLIST: Replace `commands/ieee1275/halt.c' and - `commands/ieee1275/reboot.c' with `commands/halt.c' and - `commands/reboot.c'. - * conf/powerpc-ieee1275.rmk (grub_emu_SOURCES, reboot_mod_SOURCES) - (halt_mod_SOURCES): Likewise. - * conf/sparc64-ieee1275.rmk (grub_emu_SOURCES, reboot_mod_SOURCES) - (halt_mod_SOURCES): Likewise. - -2008-02-17 Christian Franke - - * commands/cat.c (grub_cmd_cat): Add break on GRUB_TERM_ESC key. - -2008-02-17 Robert Millan - - * util/i386/pc/grub-setup.c (setup): In find_first_partition_start(), - set `first_start' to 0 for non-PC/MSDOS partition maps. - -2008-02-16 Robert Millan - - * util/i386/pc/grub-setup.c (setup): In find_first_partition_start(), - do not assume partition map is PC/MSDOS before performing checks that - are specific to that layout. - -2008-02-13 Robert Millan - - * conf/i386-linuxbios.rmk (grub_emu_SOURCES): Remove - `commands/i386/pc/halt.c' and `commands/i386/pc/reboot.c'. - * kern/i386/linuxbios/init.c (grub_halt, grub_reboot): Remove stubs. - -2008-02-13 Yoshinori K. Okuji - - * configure.ac: Only a cosmetic change on the handling of - -fno-stack-protector. - -2008-02-12 Alexandre Boeglin - - * conf/i386-efi.rmk (grub_emu_SOURCES): Replace - commands/i386/pc/halt.c and reboot.c by commands/halt.c and - reboot.c. - (grub_install_SOURCES): Add halt.mod and reboot.mod. - (halt_mod_SOURCES): New variable. - (halt_mod_CFLAGS): Likewise. - (halt_mod_LDFLAGS): Likewise. - (reboot_mod_SOURCES): Likewise. - (reboot_mod_CFLAGS): Likewise. - (reboot_mod_LDFLAGS): Likewise. - - * conf/i386-ieee1275.rmk (grub_emu_SOURCES): Replace - commands/ieee1275/halt.c and reboot.c by commands/halt.c and - reboot.c. - (halt_mod_SOURCES): Likewise. - (reboot_mod_SOURCES): Likewise. - - * conf/i386-pc.rmk (grub_emu_SOURCES): Replace - commands/i386/pc/reboot.c by commands/reboot.c. - (reboot_mod_SOURCES): Likewise. - - * commands/i386/pc/reboot.c: merge this file ... - - * commands/ieee1275/reboot.c: ... and this file ... - - * commands/reboot.c: ... to this file. - Add some precompiler directive to include the correct header for - each machine. - - * commands/ieee1275/halt.c: move this file ... - - * commands/halt.c: ... to here. - Add some precompiler directive to include the correct header for - each machine. - - * include/grub/efi/efi.h (grub_reboot): New function declaration. - (grub_halt): Likewise. - - * kern/efi/efi.c (grub_reboot): New function. - (grub_halt): Likewise. - -2008-02-12 Robert Millan - - * util/getroot.c (grub_guess_root_device): Inspect /dev/evms before - /dev (like it is done for /dev/mapper). This doesn't provide support - for EVMS, but at least it is now easy to identify the problem when it - arises. - -2008-02-11 Robert Millan - - * util/biosdisk.c (grub_util_biosdisk_open, linux_find_partition) - (grub_util_biosdisk_get_grub_dev): Check open() exit status by - comparing it with -1, not 0. - -2008-02-10 Robert Millan - - * conf/i386-efi.rmk (grub_emu_SOURCES): Add `disk/raid.c' and - `disk/lvm.c'. - * conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Likewise. - * conf/i386-pc.rmk (grub_setup_SOURCES): Likewise. - - * conf/i386-ieee1275.rmk (grub_emu_SOURCES): Move `disk/raid.c' and - `disk/lvm.c' to the end of the list. - * conf/i386-linuxbios.rmk (grub_emu_SOURCES): Likewise. - * conf/i386-pc.rmk (grub_emu_SOURCES): Likewise. - -2008-02-10 Robert Millan - - * kern/main.c (grub_load_normal_mode): Do not reset `grub_errno'. Call - grub_print_error() instead. This will let user know why we're entering - rescue mode. - Based on suggestions from Sam Morris. - -2008-02-10 Alexandre Boeglin - - * normal/arg.c (grub_arg_parse): If one of the args is "--", call add_arg() - on remaining N args, instead of "--" arg N times. - -2008-02-09 Vesa Jaaskelainen - - * font/manager.c (unknown_glyph): Added variable for unknown glyph. - (fill_with_default_glyph): Changed to use unknown_glyph for fill - pattern for unknown glyphs. - -2008-02-09 Robert Millan - - * configure.ac: Probe for `help2man'. - * Makefile.in (builddir): New variable. - (HELP2MAN): Likewise. Set to `true' when @HELP2MAN@ doesn't provide it, - or otherwise add a few flags/options to it. - (install-local): For every executable utility or script that is - installed, invoke $(HELP2MAN) to install a manpage based on --help - output. - - * util/i386/pc/grub-install.in: Move down `update-grub_lib' sourcing, so - that it doesn't prevent --help from working in build tree. - - * util/i386/pc/grub-mkrescue.in (usage): Replace `grub-devel@gnu.org' - with `bug-grub@gnu.org'. - * util/powerpc/ieee1275/grub-mkrescue.in (usage): Likewise. - * util/update-grub.in (usage): New function. - Implement proper argument check, with support for --help and --version - (as well as existing -y). - -2008-02-09 Christian Franke - - * commands/cat.c (grub_cmd_cat): Print '\r' as hex to - avoid overwriting previous output. - * kern/rescue.c (grub_rescue_cmd_cat): Likewise. - -2008-02-09 Robert Millan - - * normal/menu.c (run_menu): If timeout is set to zero, don't bother - drawing the menu. - -2008-02-09 Robert Millan - - * commands/sleep.c: New file. - * conf/common.rmk (pkglib_MODULES): Add `commands/sleep.c'. - (sleep_mod_SOURCES): New variable. - (sleep_mod_CFLAGS): Likewise. - (sleep_mod_LDFLAGS): Likewise. - -2008-02-09 Robert Millan - - * disk/raid.c (grub_raid_scan_device): Add a pair of sanity checks for - situations in which we can deduce the RAID size and the superblock - doesn't match it. - -2008-02-09 Robert Millan - - * disk/lvm.c [GRUB_UTIL] (grub_lvm_memberlist): New function. Construct - and return a grub_diskmemberlist_t composed of LVM physical volumes. - [GRUB_UTIL] (grub_lvm_dev): Add `memberlist' member. - - * disk/raid.c [GRUB_UTIL] (grub_raid_memberlist): New function. Construct - and return a grub_diskmemberlist_t composed of physical array members. - [GRUB_UTIL] (grub_raid_dev): Add `memberlist' member. - - * include/grub/disk.h [GRUB_UTIL] (grub_disk_memberlist): New struct - prototype. - [GRUB_UTIL] (struct grub_disk_dev): Add `memberlist' function pointer. - [GRUB_UTIL] (struct grub_disk_memberlist): New struct declaration. - [GRUB_UTIL] (grub_disk_memberlist_t): New typedef. - - * util/grub-probe.c (probe): Move partmap probing code from here ... - (probe_partmap): ... to here. - (probe): Use probe_partmap() once for the disk we're probing, and - additionally, when such disk contains a memberlist() struct member, - once for each disk that is contained in the structure returned by - memberlist(). - -2008-02-09 Robert Millan - - * util/grub-probe.c (main): When `verbosity > 1', set `debug' - environment variable to 'all' in order to obtain debug output from - non-util/ code. - * util/i386/pc/grub-setup.c (main): Likewise. - -2008-02-08 Robert Millan - - * disk/raid.c (grub_raid_scan_device): Check for - `array->device[sb.this_disk.number]' rather than for - `array->device[sb.this_disk.number]->name', since the latter is not - guaranteed to be accessible. - -2008-02-08 Robert Millan - - * disk/raid.c: Update copyright. - * fs/cpio.c: Likewise. - * include/grub/raid.h: Likewise. - * loader/i386/pc/multiboot.c: Likewise. - * util/hostfs.c: Likewise. - -2008-02-08 Robert Millan - - * include/grub/raid.h (struct grub_raid_array): Change type of `device' - to a grub_disk_t array. - * disk/raid.c (grub_raid_read): Replace `device[x].disk' accesses with - `device[x]'. - (grub_raid_scan_device): Replace `device[x].name' accesses with - `device[x]->name'. Simplify initialization of `array->device[x]'. - -2008-02-08 Robert Millan - - * disk/raid.c (grub_raid_open, grub_raid_scan_device): Add a few - grub_dprintf() calls. - * kern/disk.c (grub_disk_read): Include grub_errmsg in out of range - error message. - -2008-02-07 Christian Franke - - * util/hostfs.c (grub_hostfs_open): Use fseeko and ftello - instead of fseek and ftell to support large files. - (grub_hostfs_read): Likewise. - -2008-02-07 Robert Millan - - Patch from Jeroen Dekkers. - * disk/raid.c (grub_raid_scan_device): Reset `grub_errno' on disk - failure, since successfully reading all array members might not be - required. - -2008-02-06 Robert Millan - - * util/grub-probe.c (probe): Simplify partmap probing (with the - assumption that the first word up to the underscore equals to - the module name). - -2008-02-06 Christian Franke - - * fs/cpio.c (grub_cpio_find_file): Return GRUB_ERR_NONE - (and set *ofs = 0) instead of GRUB_ERR_FILE_NOT_FOUND on - last block of a cpio or tar stream. - Check for "TRAILER!!!" instead of any empty data - block to detect last block of a cpio stream. - (grub_cpio_dir): Fix constness of variable np. - (grub_cpio_open): Return GRUB_ERR_FILE_NOT_FOUND if - cpio or tar trailer is detected. This fixes a crash - on open of a non existing file. - -2008-02-05 Bean - - * loader/i386/pc/multiboot.c (grub_multiboot_load_elf32): Get physical - address of entry. - (grub_multiboot_load_elf64): Likewise. - (grub_multiboot): Initialize mbi structure. - - * util/grub-fstest.c: Don't include unused header file script.h. - - * conf/common.rmk (grub-fstest.c_DEPENDENCIES): Move to the beginning - of file. - (grub_fstest_SOURCES): Likewise. - -2008-02-05 Robert Millan - - * include/grub/term.h (GRUB_TERM_LEFT, GRUB_TERM_RIGHT) - (GRUB_TERM_UP, GRUB_TERM_DOWN, GRUB_TERM_HOME, GRUB_TERM_END) - (GRUB_TERM_DC, GRUB_TERM_PPAGE, GRUB_TERM_NPAGE, GRUB_TERM_ESC) - (GRUB_TERM_TAB, GRUB_TERM_BACKSPACE): New macros. - - * kern/i386/pc/startup.S: Include `'. - (translation_table): Replace hardcoded values with macros - provided by `'. - - * term/i386/pc/at_keyboard.c: Include `'. - (keyboard_map): Correct/add a few values, with macros provided - by `'. - (keyboard_map_shift): Zero values that don't differ from their - `keyboard_map' equivalents. - (grub_console_checkkey): Optimize KEYBOARD_STATUS_CAPS_LOCK toggling. - Discard the second scan code that is always sent by Caps lock. - Only use `keyboard_map_shift' when it provides a non-zero value, - otherwise fallback to `keyboard_map'. - -2008-02-04 Bean - - * Makefile.in (enable_grub_fstest): New variable. - - * conf/common.rmk (grub_fstest_init.lst): New rule. - (grub_fstest_init.h): Likewise. - (grub_fstest_init.c): Likewise. - (util/grub-fstest.c_DEPENDENCIES): New variable. - (grub_fstest_SOURCES): Likewise. - - * configure.ac (enable_grub_fstest): Check for --enable-grub-fstest. - - * util/grub-fstest.c: New file. - -2008-02-03 Yoshinori K. Okuji - - Make grub-setup handle a separate root device. - - * util/i386/pc/grub-setup.c (setup): Always open the root device, - so that the root device can be compared with the destination - device. - When embedding the core image, if the root and destination devices - are different, set ROOT_DRIVE to ROOT_DEV->DISK->ID. Otherwise, to - 0xFF. - When not embedding, set ROOT_DRIVE to 0xFF. - -2008-02-03 Yoshinori K. Okuji - - Add support for having a grub directory in a different drive. This - is still only the data handling part. - - * kern/i386/pc/startup.S (multiboot_trampoline): Set %dh to 0xFF. - (codestart): Save %dh in GRUB_ROOT_DRIVE. - (grub_root_drive): New variable. - - * kern/i386/pc/init.c (make_install_device): Use GRUB_ROOT_DRIVE - instead of GRUB_BOOT_DRIVE to construct a device name. Set - GRUB_ROOT_DRIVE to GRUB_BOOT_DRIVE if it is 0xFF, otherwise use it - as it was. - - * include/grub/i386/pc/kernel.h (grub_root_drive): New prototype. - - * include/grub/i386/pc/boot.h (GRUB_BOOT_MACHINE_ROOT_DRIVE): New - macro. - (GRUB_BOOT_MACHINE_DRIVE_CHECK): Set to 0x4f. - - * boot/i386/pc/pxeboot.S (_start): Set %dh to 0xFF. For now, this - is bogus, because PXE booting does not specify any drive - correctly. - - * boot/i386/pc/lnxboot.S (reg_edx): Set the second byte to 0xFF. I - am not sure if this is really correct. - - * boot/i386/pc/cdboot.S: Set %dh to 0xFF, because the root drive - is always identical to the boot drive when booting from a CD. - - * boot/i386/pc/boot.S (MOV_MEM_TO_AL): Removed. Not needed any - longer. - (root_drive): New variable. - (real_start): Unconditionally set %dh to ROOT_DRIVE. - (setup_sectors): Push %dx right after popping it, because %dh will - be modified later. - (copy_buffer): Restore %dx. - -2008-02-03 Robert Millan - - * util/i386/pc/grub-mkrescue.in: Rewrite most of image generation to - use `cdboot.img' for cdrom images. - -2008-02-03 Robert Millan - - * util/grub.d/00_header.in: Issue scripting commands for GRUB to - only setup gfxterm when `font' command has succeeded. - -2008-02-03 Robert Millan - - * loader/multiboot_loader.c [GRUB_MACHINE_LINUXBIOS] - (grub_rescue_cmd_multiboot_loader) - (grub_rescue_cmd_module_loader): Enable multiboot1 calls. - -2008-02-03 Pavel Roskin - - * kern/i386/pc/startup.S (grub_chainloader_real_boot): Pop - %edx and %esi from stack only after grub_gate_a20() is called. - grub_gate_a20() clobbers %edx. - -2008-02-03 Yoshinori K. Okuji - - * configure.ac (AC_INIT): Bumped to 1.96. - - * DISTLIST: Added boot/i386/pc/cdboot.S, bus/pci.c, - commands/lspci.c,disk/memdisk.c, include/grub/pci.h, - include/grub/i386/pc/pci.h, video/readers/jpeg.c, and - video/readers/png.c. - -2008-02-03 Bean - - * conf/i386-pc.rmk (pkglib_IMAGES): Add cdboot.img. - (cdboot_img_SOURCES): New variable. - (cdboot_img_ASFLAGS): New variable. - (cdboot_img_LDFLAGS): New variable. - - * boot/i386/pc/cdboot.S: New file. - - * disk/i386/pc/biosdisk.c (cd_start): New variable. - (cd_count): Likewise. - (grub_biosdisk_get_drive): Add support for cd device. - (grub_biosdisk_call_hook): Likewise. - (grub_biosdisk_iterate): Likewise. - (grub_biosdisk_open): Likewise. - (GRUB_BIOSDISK_CDROM_RETRY_COUNT): New macro. - (grub_biosdisk_rw): Support reading from cd device. - (GRUB_MOD_INIT): Iterate cd devices. - - * include/grub/i386/pc/biosdisk.h (GRUB_BIOSDISK_FLAG_CDROM): New macro. - (GRUB_BIOSDISK_MACHINE_CDROM_START): Likewise. - (GRUB_BIOSDISK_MACHINE_CDROM_END): Likewise. - - * kern/i386/pc/init.c (make_install_device): Check for cd device. - -2008-02-02 Robert Millan - - * commands/read.c: New file. - * conf/common.rmk (pkglib_MODULES): Add `commands/read.c'. - (read_mod_SOURCES): New variable. - (read_mod_CFLAGS): Likewise. - (read_mod_LDFLAGS): Likewise. - -2008-02-02 Robert Millan - - * normal/main.c (grub_normal_execute): Check for `menu->size' when - determining whether menu has to be displayed. - -2008-02-02 Marco Gerards - - * bus/pci.c: New file. - - * include/grub/pci.h: Likewise. - - * include/grub/i386/pc/pci.h: Likewise. - - * commands/lspci.c: Likewise. - - * conf/i386-pc.rmk (pkglib_MODULES): Add `pci.mod' and - `lspci.mod'. - (pci_mod_SOURCES): New variable. - (pci_mod_CFLAGS): Likewise. - (pci_mod_LDFLAGS): Likewise. - (lspci_mod_SOURCES): Likewise. - (lspci_mod_CFLAGS): Likewise. - (lspci_mod_LDFLAGS): Likewise. - -2008-02-02 Bean - - * fs/ufs.c (INODE_BLKSZ): Fix incorrect value. - (grub_ufs_get_file_block): Fix indirect block calculation problem. - - * fs/xfs.c (grub_xfs_sblock): New member log2_dirblk. - (grub_xfs_btree_node): New structure. - (grub_xfs_btree_root): New structure. - (grub_xfs_inode): New members nblocks, extsize, nextents and btree. - (GRUB_XFS_EXTENT_OFFSET): Use exts instead of inode->data.extents. - (GRUB_XFS_EXTENT_BLOCK): Likewise. - (GRUB_XFS_EXTENT_SIZE): Likewise. - (grub_xfs_read_block): Support btree format type. - (grub_xfs_iterate_dir): Use NESTED_FUNC_ATTR in call_hook. - Use directory block as basic unit. - - * fs/fshelp.c (grub_fshelp_read_file): Bug fix for sparse block. - - * aclocal.m4 (grub_i386_CHECK_REGPARM_BUG): Define NESTED_FUNC_ATTR as - __attribute__ ((__regparm__ (1))). - -2008-02-01 Robert Millan - - Correct a mistake in previous commit. - - * conf/i386-pc.rmk (normal/execute.c_DEPENDENCIES): Move to the - top. - (normal/command.c_DEPENDENCIES): New variable. - -2008-02-01 Robert Millan - - * conf/i386-efi.rmk (normal/execute.c_DEPENDENCIES): Move to the - top. - (normal/command.c_DEPENDENCIES): New variable. - (grub-emu_DEPENDENCIES, normal_mod_DEPENDENCIES): Remove variables. - * conf/i386-ieee1275.rmk: Likewise. - * conf/i386-linuxbios.rmk: Likewise. - * conf/i386-pc.rmk: Likewise. - * conf/sparc64-ieee1275.rmk: Likewise. - * conf/powerpc-ieee1275.rmk: Likewise. - (grub_emu_SOURCES): Add `fs/fshelp.c'. - - * genmk.rb: Add `$(#{src}_DEPENDENCIES)' in targets that require it. - -2008-02-01 Robert Millan - - * kern/disk.c (grub_disk_read, grub_disk_write): Add grub_dprintf() - call at beginning of function. - -2008-01-31 Pavel Roskin - - * util/powerpc/ieee1275/grub-mkrescue.in: New file. - * conf/powerpc-ieee1275.rmk (bin_SCRIPTS): New variable. - (grub_mkrescue_SOURCES): Likewise. - * DISTLIST: Add util/powerpc/ieee1275/grub-mkrescue.in. - -2008-01-30 Robert Millan - - * conf/i386-pc.rmk (sbin_UTILITIES): Remove `grub-probe'. - (util/grub-probe.c_DEPENDENCIES, grub_probe_SOURCES): Moved from here ... - * conf/common.rmk (util/grub-probe.c_DEPENDENCIES) - (grub_probe_SOURCES): ... to here. - - * conf/i386-efi.rmk (sbin_UTILITIES): Remove `grub-probe'. - (util/grub-probe.c_DEPENDENCIES, grub_probe_SOURCES): Remove. - * conf/i386-ieee1275.rmk: Likewise. - * conf/i386-linuxbios.rmk: Likewise. - * conf/powerpc-ieee1275.rmk: Likewise. - -2008-01-30 Tristan Gingold - - * kern/rescue.c: Silently accept empty lines. - -2008-01-29 Bean - - * boot/i386/pc/lnxboot.S (data_start): Code cleanup. - (real_code_2): Code cleanup and change comment style. - (move_memory): Avoid using 32-bit address mode. - -2008-01-29 Bean - - * conf/i386-pc.rmk (pkglib_MODULES): Add `png.mod'. - (png_mod_SOURCES): New variable. - (png_mod_CFLAGS): Likewise. - (png_mod_LDFLAGS): Likewise. - - * video/readers/png.c: New file. - -2008-01-28 Robert Millan - - * include/grub/i386/linuxbios/kernel.h (GRUB_MOD_GAP): New macro. - * kern/powerpc/ieee1275/init.c (grub_arch_modules_addr): Remove - `ifndef GRUB_MOD_GAP' hack. - * util/elf/grub-mkimage.c (add_segments): Likewise. - -2008-01-27 Robert Millan - - * kern/powerpc/ieee1275/init.c (grub_arch_modules_addr): Skip - `GRUB_MOD_GAP' for platforms in which it's not defined. - * util/elf/grub-mkimage.c (add_segments): Likewise. - -2008-01-27 Robert Millan - - Get grub-emu to build again (including parallel builds). - - * conf/i386-pc.rmk (util/grub-emu.c_DEPENDENCIES): Remove variable. - Split into ... - (util/grub-emu.c_DEPENDENCIES): ... this, ... - (normal/execute.c_DEPENDENCIES): ... this, ... - (grub-emu_DEPENDENCIES): ... and this. - - * conf/i386-efi.rmk: Likewise. - * conf/i386-linuxbios.rmk: Likewise. - * conf/i386-ieee1275.rmk: Likewise. - * conf/powerpc-ieee1275.rmk: Likewise. - (grub_emu_SOURCES): Remove duplicated `kern/file.c'. - -2008-01-27 Robert Millan - - * NEWS: Add a few items. - -2008-01-27 Robert Millan - - Fix parallel builds with grub-emu. Based on earlier commit for - grub-probe and grub-setup. - - * conf/i386-pc.rmk (grub-emu_DEPENDENCIES): Renamed to ... - (util/grub-emu.c_DEPENDENCIES): ... this. - * conf/i386-efi.rmk (grub-emu_DEPENDENCIES): Renamed to ... - (util/grub-emu.c_DEPENDENCIES): ... this. - * conf/i386-linuxbios.rmk (grub-emu_DEPENDENCIES): Renamed to ... - (util/grub-emu.c_DEPENDENCIES): ... this. - * conf/i386-ieee1275.rmk (grub-emu_DEPENDENCIES): Renamed to ... - (util/grub-emu.c_DEPENDENCIES): ... this. - * conf/powerpc-ieee1275.rmk (grub-emu_DEPENDENCIES): Renamed to ... - (util/grub-emu.c_DEPENDENCIES): ... this. - -2008-01-27 Pavel Roskin - - * include/grub/powerpc/ieee1275/kernel.h: Introduce GRUB_MOD_GAP - to create a gap between _end and the modules added to the image - with grub-mkrescue. That fixes "CLAIM failed" on PowerMAC. - * kern/powerpc/ieee1275/init.c: Use GRUB_MOD_GAP. - * util/elf/grub-mkimage.c (add_segments): Likewise. - -2008-01-26 Pavel Roskin - - * kern/dl.c (grub_dl_load): Don't abort if prefix is not set, - just return an error. - -2008-01-26 Bean - - * fs/reiserfs.c (grub_fshelp_node): New member next_offset. - (grub_reiserfs_get_item): Save offset of the next item. - (grub_reiserfs_iterate_dir): Use next_offset to find next item. - -2008-01-25 Robert Millan - - * conf/i386-pc.rmk (grub_setup_SOURCES, grub_emu_SOURCES): Regroup to - make all filesystem sources appear together (possibly fixing omissions - while at it). - * conf/i386-efi.rmk (grub_emu_SOURCES): Likewise. - * conf/i386-ieee1275.rmk (grub_emu_SOURCES): Likewise. - * conf/i386-linuxbios.rmk (grub_emu_SOURCES): Likewise. - * conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Likewise. - - * conf/i386-pc.rmk (grub_probe_SOURCES): Likewise. Additionally, - add `kern/file.c'. - * conf/i386-efi.rmk (grub_probe_SOURCES): Likewise. - * conf/i386-ieee1275.rmk (grub_probe_SOURCES): Likewise. - * conf/i386-linuxbios.rmk (grub_probe_SOURCES): Likewise. - * conf/powerpc-ieee1275.rmk (grub_probe_SOURCES): Likewise. - - * util/grub-probe.c: Include `' and `'. - (probe): Add a sanity check to make sure of our ability to read - requested files when probing for filesystem type. - - * genmk.rb: Update copyright year (2007). - - * include/grub/fs.h (grub_fat_init, grub_fat_fini, grub_ext2_init) - (grub_ext2_fini, grub_ufs_init, grub_ufs_fini, grub_minix_init) - (grub_minix_fini, grub_hfs_init, grub_hfs_fini, grub_jfs_init) - (grub_jfs_fini, grub_xfs_init, grub_xfs_fini, grub_affs_init) - (grub_affs_fini, grub_sfs_init, grub_sfs_fini, grub_iso9660_init) - : Remove function prototypes. - -2008-01-25 Robert Millan - - Revert my previous commits (based on wrong assumption of how grub_errno - works). - - * kern/disk.c (grub_disk_open): Stop resetting grub_errno. - * kern/file.c (grub_file_open): Likewise. - -2008-01-24 Pavel Roskin - - * include/grub/ieee1275/ieee1275.h: Introduce flag for firmwares - that hang if GRUB tries to setup colors. - * term/ieee1275/ofconsole.c (grub_ofconsole_init): Don't set - colors for firmwares that don't support it. - * kern/powerpc/ieee1275/cmain.c (grub_ieee1275_set_flag): - Recognize Open Hack'Ware, set flags to work around its - limitations. - -2008-01-24 Robert Millan - - * kern/file.c (grub_file_open): Do not account previous failures of - unrelated functions when grub_errno is checked for. - Reported by Oleg Strikov. - -2008-01-24 Bean - - * fs/ufs.c (GRUB_UFS_VOLNAME_LEN): New macro. - (grub_ufs_sblock): New member volume name. - (grub_ufs_find_file): Fix string copy bug. - (grub_ufs_label): Implement this function properly. - - * fs/hfs.c (grub_hfs_cnid_type): New enum. - (grub_hfs_iterate_records): Use the correct file number for extents - and catalog file. Fix problem in next index calculation. - (grub_hfs_find_node): Replace recursive function call with loop. - (grub_hfs_iterate_dir): Replace recursive function call with loop. - -2008-01-23 Robert Millan - - * include/grub/i386/ieee1275/loader.h: Include `', - `' and `'. - (grub_multiboot2_real_boot): New function prototype. - - * include/grub/i386/pc/memory.h: Include `'. - [!GRUB_MACHINE_IEEE1275] (grub_lower_mem, grub_upper_mem): Disable. - - * kern/i386/ieee1275/init.c (grub_os_area_addr) - (grub_os_area_size, grub_lower_mem, grub_upper_mem): Remove variables. - -2008-01-23 Robert Millan - - * kern/mm.c (grub_mm_init_region): Replace grub_dprintf() call with - #ifdef'ed out grub_printf(). - -2008-01-23 Robert Millan - - * term/i386/pc/at_keyboard.c (grub_keyboard_isr): #ifdef out - grub_dprintf calls, since they make "debug=all" mode unusable. - (grub_console_checkkey): Likewise. - -2008-01-23 Robert Millan - - * conf/i386-ieee1275.rmk (kernel_elf_SOURCES): Add - `term/i386/pc/at_keyboard.c'. - (pkglib_MODULES): Add `serial.mod'. - (serial_mod_SOURCES): New variable. - (serial_mod_CFLAGS): Likewise. - (serial_mod_LDFLAGS): Likewise. - - * include/grub/i386/ieee1275/console.h: Add `'. Remove - `'. - (grub_keyboard_controller_init): New function prototype. - (grub_console_checkkey): Likewise. - (grub_console_getkey): Likewise. - - * kern/powerpc/ieee1275/init.c (grub_machine_init): Initialize AT - keyboard on i386. - - * term/ieee1275/ofconsole.c (grub_ofconsole_term): On i386, use - grub_ofconsole_checkkey() and grub_ofconsole_getkey() for input. - -2008-01-23 Robert Millan - - * kern/i386/pc/init.c (make_install_device): When memdisk image is - present, "(memdisk)/boot/grub" becomes the default prefix. - - * util/i386/pc/grub-mkrescue.in: Switch to a minimal core.img plus - a memdisk tarball with all the modules. Add --overlay=DIR option that - allows users to overlay additional files into the image. - -2008-01-23 Robert Millan - - * conf/i386-ieee1275.rmk (kernel_elf_SOURCES): Add `machine/loader.h' - and `machine/memory.h'. - (pkglib_MODULES): Add `multiboot.mod' and `_multiboot.mod'. - (_multiboot_mod_SOURCES): New variable. - (_multiboot_mod_CFLAGS): Likewise. - (_multiboot_mod_LDFLAGS): Likewise. - (multiboot_mod_SOURCES): Likewise. - (multiboot_mod_CFLAGS): Likewise. - (multiboot_mod_LDFLAGS): Likewise. - - * include/grub/i386/ieee1275/loader.h: New file. - - * include/grub/i386/ieee1275/machine.h: Likewise. - - * include/grub/i386/ieee1275/memory.h: Likewise. - - * include/grub/i386/pc/init.h (grub_os_area_addr): Remove (redundant) - variable declaration. - (grub_os_area_size): Likewise. - - * kern/i386/ieee1275/init.c (grub_os_area_addr, grub_os_area_size) - (grub_lower_mem, grub_upper_mem): New variables. - (grub_stop_floppy): New function (just to make - grub_multiboot2_real_boot() happy). - - * kern/i386/ieee1275/startup.S: Include `', - `', `' and `'. - (grub_stop): New function. - Include `"../realmode.S"' and `"../loader.S"'. - - * loader/multiboot_loader.c: Include `'. - Replace `__i386__' #ifdefs with `GRUB_MACHINE_PCBIOS'. - - * loader/powerpc/ieee1275/multiboot2.c (grub_mb2_arch_boot): On i386, - rely on grub_multiboot2_real_boot() for final boot. - -2008-01-22 Robert Millan - - * disk/ieee1275/ofdisk.c (grub_ofdisk_iterate): When - `GRUB_IEEE1275_FLAG_OFDISK_SDCARD_ONLY' flag is set, skip any - device that doesn't look like an SD card. - * include/grub/ieee1275/ieee1275.h (grub_ieee1275_flag): Add - `GRUB_IEEE1275_FLAG_OFDISK_SDCARD_ONLY' flag. - * kern/powerpc/ieee1275/cmain.c (grub_ieee1275_set_flag): Detect - OLPC laptop, and set `GRUB_IEEE1275_FLAG_OFDISK_SDCARD_ONLY' when - found. - -2008-01-22 Robert Millan - - * kern/powerpc/ieee1275/init.c (grub_claim_heap): Add sanity check to - avoid claiming over our own code. - -2008-01-22 Bean - - * conf/i386-pc.rmk (pkglib_MODULES): Add `jpeg.mod'. - (jpeg_mod_SOURCES): New variable. - (jpeg_mod_CFLAGS): Likewise. - (jpeg_mod_LDFLAGS): Likewise. - - * video/readers/jpeg.c : New file. - -2008-01-22 Bean - - * fs/cpio.c (grub_cpio_find_file): Return GRUB_ERR_FILE_NOT_FOUND when - there are no more items. - -2008-01-21 Robert Millan - - * kern/mm.c (grub_mm_init_region): Improve debug message. - -2008-01-21 Robert Millan - - * conf/i386-pc.rmk (GRUB_MEMORY_MACHINE_LINK_ADDR): New variable. - (kernel_img_LDFLAGS): Use `GRUB_MEMORY_MACHINE_LINK_ADDR' as link - address. - (grub_mkimage_CFLAGS): Propagate `GRUB_MEMORY_MACHINE_LINK_ADDR' as - a C macro. - * include/grub/i386/pc/memory.h (GRUB_MEMORY_MACHINE_UPPER): New macro. - Indicates start of upper memory. - * util/i386/pc/grub-mkimage.c: Include `'. - (generate_image): Abort when image size is big enough to corrupt - upper memory. - - * include/grub/i386/pc/vga.h: Include `'. - (GRUB_MEMORY_MACHINE_VGA_ADDR): Alias for `GRUB_MEMORY_MACHINE_UPPER'. - * term/i386/pc/vga.c (VGA_MEM): Use `GRUB_MEMORY_MACHINE_VGA_ADDR' - instead of hardcoding 0xA0000. - * video/i386/pc/vbe.c: Include `'. - (grub_vbe_set_video_mode): Use `GRUB_MEMORY_MACHINE_VGA_ADDR' - instead of hardcoding 0xA0000. - -2008-01-21 Robert Millan - - * disk/memdisk.c (memdisk_size): New variable. - (grub_memdisk_open): Replace grub_arch_memdisk_size() call with - `memdisk_size'. - (grub_memdisk_init): Initialize `memdisk_size'. Reallocate memdisk - image to dynamic memory. - (grub_memdisk_fini): Replace grub_arch_memdisk_size() call with - `memdisk_size'. Free memdisk block. - -2008-01-21 Robert Millan - - Fix detection of very small filesystems (like tar). - - * fs/reiserfs.c (grub_reiserfs_mount): When disk is too small to - contain a ReiserFS, abort with GRUB_ERR_BAD_FS rather than - GRUB_ERR_OUT_OF_RANGE (which made the upper layer think there's - a problem with this disk). - -2008-01-21 Robert Millan - - * disk/i386/pc/biosdisk.c (grub_biosdisk_iterate): Add debug message - on grub_biosdisk_rw_standard() error. - -2008-01-21 Robert Millan - - * include/grub/ieee1275/ieee1275.h: Add 2008 to Copyright line for - recent changes. - * kern/elf.c: Likewise. - * kern/ieee1275/ieee1275.c: Likewise. - * kern/powerpc/ieee1275/openfw.c: Likewise. - * term/ieee1275/ofconsole.c: Likewise. - -2008-01-21 Robert Millan - - * include/grub/i386/pc/kernel.h: Include `'. - - * include/grub/kernel.h (grub_arch_memdisk_addr) - (grub_arch_memdisk_size): Moved from here ... - - * include/grub/i386/pc/kernel.h (grub_arch_memdisk_addr) - (grub_arch_memdisk_size): ... to here. - -2008-01-21 Robert Millan - - Mostly based on bugfix from Bean. - - * kern/elf.c (grub_elf32_phdr_iterate): Use `NESTED_FUNC_ATTR' - attribute with hook() parameter. - (grub_elf32_load): Use `NESTED_FUNC_ATTR' with grub_elf32_load_segment() - declaration. - (grub_elf64_phdr_iterate): Use `NESTED_FUNC_ATTR' - attribute with hook() parameter. - (grub_elf64_load): Use `NESTED_FUNC_ATTR' with grub_elf64_load_segment() - declaration. - -2008-01-21 Robert Millan - - * conf/i386-pc.rmk (kernel_img_HEADERS): Add `machine/kernel.h'. - (pkglib_MODULES): Add `memdisk.mod'. - (memdisk_mod_SOURCES): New variable. - (memdisk_mod_CFLAGS): Likewise. - (memdisk_mod_LDFLAGS): Likewise. - - * disk/memdisk.c: New file. - - * include/grub/disk.h (grub_disk_dev_id): Add - `GRUB_DISK_DEVICE_MEMDISK_ID'. - - * include/grub/i386/pc/kernel.h - (GRUB_KERNEL_MACHINE_MEMDISK_IMAGE_SIZE): New macro. - (GRUB_KERNEL_MACHINE_PREFIX): Increment by 4. - (grub_kernel_image_size): New variable declaration. - (grub_total_module_size): Likewise. - (grub_memdisk_image_size): Likewise. - - * include/grub/i386/pc/memory.h - (GRUB_MEMORY_MACHINE_DECOMPRESSION_ADDR): New macro. - - * include/grub/kernel.h: Include `'. - (grub_arch_memdisk_addr): New variable declaration. - (grub_arch_memdisk_size): Likewise. - - * kern/i386/pc/init.c (grub_arch_memdisk_addr): New function. - (grub_arch_memdisk_size): Likewise. - - * kern/i386/pc/startup.S (grub_memdisk_image_size): New variable. - (codestart): Replace hardcoded `0x100000' with - `GRUB_MEMORY_MACHINE_DECOMPRESSION_ADDR' macro. - - * util/i386/pc/grub-mkimage.c: Include `'. - (generate_image): Add `memdisk_path' parameter. When `memdisk_path' is - not NULL, append the contents of the file it refers to, at the end of - the compressed kernel image. Initialize `grub_memdisk_image_size' - variable (at `GRUB_KERNEL_MACHINE_MEMDISK_IMAGE_SIZE' offset). - (options): Add "memdisk"|'m' option. - (main): Parse --memdisk|-m option, and pass user-provided path as - parameter to generate_image(). - -2008-01-20 Robert Millan - - * kern/sparc64/ieee1275/openfw.c (grub_devalias_iterate): Copy debug - grub_dprintf() calls from here ... - * kern/powerpc/ieee1275/openfw.c (grub_devalias_iterate): ... to here. - -2008-01-20 Robert Millan - - Fix detection of "real mode" when /options/real-mode? doesn't exist. - - * include/grub/ieee1275/ieee1275.h (grub_ieee1275_mmu): New variable - declaration. - * kern/powerpc/ieee1275/cmain.c (grub_ieee1275_mmu): New variable. - (grub_ieee1275_find_options): If `grub_ieee1275_mmu' is 0, set - `GRUB_IEEE1275_FLAG_REAL_MODE'. - (cmain): Initialize `grub_ieee1275_mmu' (using /chosen/mmu integer - property). - * kern/powerpc/ieee1275/openfw.c (grub_map): Rely on pre-initialized - `grub_ieee1275_mmu' rather than obtaining a handler on every call. - -2008-01-19 Robert Millan - - Get rid of confusing function (superseded by - `grub_ieee1275_get_integer_property') - * include/grub/ieee1275/ieee1275.h (grub_ieee1275_decode_int_4): Remove - prototype. - * kern/ieee1275/ieee1275.c (grub_ieee1275_decode_int_4): Remove - function. - * term/ieee1275/ofconsole.c (grub_ofconsole_init): Avoid use of - grub_ieee1275_decode_int_4(), by obtaining integer properties directly - in native endianness from grub_ieee1275_get_integer_property(). - -2008-01-19 Robert Millan - - * kern/powerpc/ieee1275/openfw.c (grub_halt): Issue "power-off" - command after "shut-down", since implementations differ on which - the command for halt is. - -2008-01-19 Robert Millan - - * include/grub/i386/linuxbios/console.h: Add header protection. - (grub_keyboard_controller_init): New function prototype. - * term/i386/pc/at_keyboard.c (KEYBOARD_COMMAND_ISREADY): New macro. - (KEYBOARD_COMMAND_READ): Likewise. - (KEYBOARD_COMMAND_WRITE): Likewise. - (KEYBOARD_SCANCODE_SET1): Likewise. - (grub_keyboard_controller_write): New function. - (grub_keyboard_controller_read): Likewise. - (grub_keyboard_controller_init): Likewise. - - * term/i386/pc/console.c: Include `'. - (grub_console_init): On coreboot/LinuxBIOS, call - grub_keyboard_controller_init(). - -2008-01-19 Robert Millan - - PowerPC changes provided by Pavel Roskin. - - * kern/powerpc/ieee1275/cmain.c (cmain): Don't take any arguments. - * kern/powerpc/ieee1275/crt0.S: Store r5 in grub_ieee1275_entry_fn, - don't rely on cmain() doing it. - * kern/i386/ieee1275/startup.S (_start): Store %eax in - grub_ieee1275_entry_fn, don't rely on cmain() doing it. - -2008-01-16 Robert Millan - - * include/grub/i386/linuxbios/memory.h - (GRUB_MEMORY_MACHINE_LINUXBIOS_TABLE_ADDR): Remove macro. - * kern/i386/linuxbios/table.c (grub_linuxbios_table_iterate): Do not - receive `table_header' as argument. Instead, probe for it in the - known memory ranges where it can be present. - (grub_available_iterate): Do not pass a fixed `table_header' address - to grub_linuxbios_table_iterate(). - -2008-01-15 Robert Millan - - * configure.ac: Add `i386-ieee1275' to the list of supported targets. - * conf/i386-ieee1275.rmk: New file. - * include/grub/i386/ieee1275/console.h: Likewise. - * include/grub/i386/ieee1275/ieee1275.h: Likewise. - * include/grub/i386/ieee1275/kernel.h: Likewise. - * include/grub/i386/ieee1275/time.h: Likewise. - * kern/i386/ieee1275/init.c: Likewise. - * kern/i386/ieee1275/startup.S: Likewise. - -2008-01-15 Robert Millan - - * kern/misc.c (grub_vsprintf): Do not reset `longlongfmt' to zero - when pointers are 32-bit (but still do set it to one when they are - 64-bit). - -2008-01-15 Robert Millan - - * include/grub/ieee1275/ieee1275.h - (grub_ieee1275_get_integer_property): New function prototype. - - * kern/ieee1275/ieee1275.c: Include `'. - (grub_ieee1275_get_integer_property): New function. Wraps around - grub_ieee1275_get_property() to handle endianness. - - * kern/powerpc/ieee1275/cmain.c (grub_ieee1275_find_options): Replace - grub_ieee1275_get_property() with grub_ieee1275_get_integer_property() - where appropriate. - * kern/powerpc/ieee1275/openfw.c (grub_available_iterate): Likewise. - (grub_map): Likewise. - * kern/sparc64/ieee1275/openfw.c (grub_map): Likewise. - -2008-01-15 Bean - - * normal/execute.c (grub_script_exec_argument_to_string): Check for undefined variable. - (grub_script_execute_cmdline): Reset grub_errno. - - * normal/main.c (read_config_file): Reset grub_errno. - - * normal/parse.y (script_init): New. - (script): Move function and menuentry here. - (delimiter): New. - (command): Add delimiter at the end of command. - (commands): Adjust to match the new command. - (commandblock): Remove grub_script_lexer_record_start. - (menuentry): Add grub_script_lexer_record_start, use the new commands. - (if): Use the new commands. - - * conf/common.rmk (pkgdata_MODULES): Add echo.mod. - -2008-01-15 Robert Millan - - * normal/menu.c (run_menu): Move timeout message from here ... - (print_timeout): ... to here. - (run_menu): Use print_timeout() once during initial draw to print - the whole message, and again in every clock tick to update only - the number of seconds. - -2008-01-15 Robert Millan - - * kern/powerpc/ieee1275/openfw.c (grub_available_iterate): Obtain - actual size of `available' from grub_ieee1275_get_property(), and - restrict parsing to that bound. - -2008-01-15 Christian Franke - - * util/grub-emu.c: Replace by . - (argp_program_version): Remove variable. - (argp_program_bug_address): Likewise. - (options): Convert from struct argp_option to struct option. - (struct arguments): Remove. - (parse_opt): Remove. - (usage): New function. - (main): Replace struct args members by simple variables. - Replace argp_parse() by getopt_long(). - Add switch to evaluate options. - Add missing "(...)" around root_dev in prefix string. - -2008-01-14 Robert Millan - - * kern/powerpc/ieee1275/init.c (grub_exit): Reimplement as a wrapper - for grub_ieee1275_exit(), in order to improve portability. - -2008-01-14 Robert Millan - - * util/grub.d/10_linux.in (prefix): Define. - (exec_prefix): Likewise. Both definitions are later used by `libdir'. - -2008-01-13 Pavel Roskin - - * disk/ieee1275/ofdisk.c (grub_ofdisk_open): Don't use - grub_errno if no errors have been detected. - -2008-01-12 Robert Millan - - * include/grub/util/getroot.h (grub_dev_abstraction_types): New enum. - (grub_util_get_dev_abstraction): New function prototype. - - * util/getroot.c: Include `' - (grub_util_get_grub_dev): Move detection of abstraction type to ... - (grub_util_get_dev_abstraction): ... here (new function). - - * util/grub-probe.c: Convert PRINT_* to an enum. Add - `PRINT_ABSTRACTION'. - (probe): Probe for abstraction type when requested. - (main): Understand `--target=abstraction'. - - * util/i386/efi/grub-install.in: Add abstraction module to core - image when it is found to be necessary. - * util/i386/pc/grub-install.in: Likewise. - * util/powerpc/ieee1275/grub-install.in: Likewise. - - * util/update-grub_lib.in (font_path): Return system path without - converting to GRUB path. - * util/update-grub.in: Convert system path returned by font_path() - to a GRUB path. Use `grub-probe -t abstraction' to determine what - abstraction module is needed for loading fonts (if any). Export - that as `GRUB_PRELOAD_MODULES'. - * util/grub.d/00_header.in: Process `GRUB_PRELOAD_MODULES' (print - insmod commands). - -2008-01-12 Yoshinori K. Okuji - - Remove some unused code from reiserfs. - - * fs/reiserfs.c (struct grub_reiserfs_key) - [GRUB_REISERFS_KEYV2_BITFIELD]: Removed offset and type. - (struct grub_reiserfs_node_body): Removed. - (grub_reiserfs_get_key_v2_type) [GRUB_REISERFS_KEYV2_BITFIELD]: - Likewise. - (grub_reiserfs_get_key_offset) [GRUB_REISERFS_KEYV2_BITFIELD]: - Likewise. - (grub_reiserfs_set_key_offset) [GRUB_REISERFS_KEYV2_BITFIELD]: - Likewise. - (grub_reiserfs_set_key_offset) [GRUB_REISERFS_KEYV2_BITFIELD]: - Likewise. - (grub_reiserfs_set_key_type) [GRUB_REISERFS_KEYV2_BITFIELD]: - Likewise. - (grub_reiserfs_iterate_dir) [GRUB_REISERFS_KEYV2_BITFIELD]: - Likewise. - (grub_reiserfs_open) [GRUB_REISERFS_KEYV2_BITFIELD]: Likewise. - (grub_reiserfs_read) [GRUB_REISERFS_KEYV2_BITFIELD]: Likewise. - (grub_reiserfs_dir) [GRUB_REISERFS_KEYV2_BITFIELD]: Likewise. - -2008-01-10 Robert Millan - - * util/update-grub_lib.in (grub_file_is_not_garbage): New function. - Determines if a file is garbage left by packaging systems, etc. - * util/update-grub.in: Use grub_file_is_not_garbage() as a condition - for processing /etc/grub.d scripts. - * util/grub.d/10_hurd.in: Fix `GRUB_DISTRIBUTOR' comparison. - * util/grub.d/10_linux.in: Likewise. Use grub_file_is_not_garbage() - as a condition for processing Linux images. - -2008-01-10 Pavel Roskin - - * include/grub/powerpc/libgcc.h (__ucmpdi2): New export. Needed - to compile reiserfs.c on PowerPC. - -2008-01-10 Robert Millan - - * kern/device.c (grub_device_iterate): Do not abort device iteration - when one of the devices cannot be opened. - * kern/disk.c (grub_disk_open): Do not account previous failures of - unrelated functions when grub_errno is checked for. - -2008-01-08 Robert Millan - - * loader/i386/pc/linux.c (grub_rescue_cmd_linux): For - `! grub_linux_is_bzimage', change order of address comparison to make - it more intuitive, and improve "too big zImage" error message. - -2008-01-08 Robert Millan - - * Makefile.in (uninstall): Handle `$(update-grub_SCRIPTS)' and - `$(update-grub_DATA)'. - (distcheck): Fix race condition when invoking `$(MAKE)' on multiple - targets. - -2008-01-07 Robert Millan - - * boot/i386/pc/boot.S (boot_drive_check): Add a comment indicating - which instruction is modified by grub-setup during installation - (since it wasn't obvious by only looking at this file). - -2008-01-07 Robert Millan - - * TODO: Rewrite. Just refer to the wiki and the BTS instead of - listing actual TODO items. - -2008-01-06 Yoshinori K. Okuji - - * fs/reiserfs.c (grub_reiserfs_get_key_v2_type): Handle endianness - correctly. - (grub_reiserfs_get_key_offset): Likewise. - (grub_reiserfs_set_key_offset): Likewise. - (grub_reiserfs_set_key_type): Likewise. - (grub_reiserfs_iterate_dir): Return 1 if found, otherwise 0. - - (GRUB_REISERFS_KEYV2_BITFIELD): Undefined. Probably it would be - better to remove the bitfield version completely. - -2008-01-06 Yoshinori K. Okuji - - * fs/reiserfs.c (grub_reiserfs_iterate_dir): ENTRY_ITEM must be - allocated from the heap, due to the fshelp implementation. - (grub_reiserfs_dir): Free NODE, due to the same reason. - -2008-01-06 Yoshinori K. Okuji - - Mostly from Vincent Pelletier: - - * fs/reiserfs.c: New file. - - * conf/common.rmk (pkglib_MODULES): Added reiserfs.mod. - (reiserfs_mod_SOURCES): New variable. - (reiserfs_mod_CFLAGS): Likewise. - (reiserfs_mod_LDFLAGS): Likewise. - - * DISTLIST: Added boot/i386/pc/lnxboot.S, commands/hexdump.c, - disk/ata.c, fs/cpio.c, fs/ntfscomp.c, fs/reiserfs.c, - include/grub/ntfs.h, include/grub/i386/pc/machine.h, and - normal/color.c. - -2008-01-06 Robert Millan - - * normal/color.c: Remove `'. - -2008-01-05 Jeroen Dekkers - - * include/grub/normal.h: Include . - -2008-01-05 Robert Millan - - * util/i386/pc/grub-setup.c (usage): Replace obsolete `(hd0,0)' in - usage example with `(hd0,1)'. - Reported by Samuel Thibault. - -2008-01-05 Robert Millan - - * kern/i386/loader.S (grub_linux_is_bzimage): New variable. - (grub_linux_boot_zimage): Rename to ... - (grub_linux_boot): ... this. - (grub_linux_boot_bzimage): Merge with `grub_linux_boot_zimage'. - (grub_linux_boot_zimage): Conditionalize zImage copy. - - * include/grub/i386/loader.h (grub_linux_is_bzimage): Add prototype. - (grub_linux_boot_bzimage): Remove prototype. - (grub_linux_boot_zimage): Rename to ... - (grub_linux_boot): ... this. - - * loader/i386/pc/linux.c (big_linux): Replace with `grub_linux_is_bzimage'. - (grub_linux_boot): Remove function. - -2008-01-05 Robert Millan - - * include/grub/normal.h (grub_env_write_color_normal): New prototype. - (grub_env_write_color_highlight): Likewise. - (grub_wait_after_message): Likewise. - - * normal/color.c: New file. - - * conf/i386-pc.rmk (grub_emu_SOURCES): Add `normal/color.c'. - (normal_mod_DEPENDENCIES): Likewise. - - * conf/i386-efi.rmk (grub_emu_SOURCES): Add `normal/color.c'. - (normal_mod_DEPENDENCIES): Likewise. - - * conf/i386-linuxbios.rmk (grub_emu_SOURCES): Add `normal/color.c'. - (normal_mod_DEPENDENCIES): Likewise. - - * conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Add `normal/color.c'. - (normal_mod_DEPENDENCIES): Likewise. - - * normal/menu_entry.c (run): Rely on grub_wait_after_message() - for waiting after a message is printed. - * normal/main.c (read_config_file): Likewise. - (grub_normal_init): Register grub_env_write_color_normal() and - grub_env_write_color_highlight() hooks. Mark `color_normal' and - `color_highlight' variables as global. - - * normal/menu.c (grub_wait_after_message): New function. - (grub_color_menu_normal): New variable. Replaces ... - (GRUB_COLOR_MENU_NORMAL): ... this macro. - (grub_color_menu_highlight): New variable. Replaces ... - (GRUB_COLOR_MENU_HIGHLIGHT): ... this macro. - (draw_border): Set color state to `GRUB_TERM_COLOR_NORMAL' instead of - `GRUB_TERM_COLOR_STANDARD'. - (print_message): Use `grub_setcolorstate' to reload colors. Rename - `normal_code' and `highlight_code' to `old_color_normal' and - `old_color_highlight', respectively. - (grub_menu_init_page): Update colors when drawing the menu, based on - `menu_color_normal' and `menu_color_highlight' variables. - (grub_menu_run): Rely on grub_wait_after_message() for waiting after - a message is printed. - -2008-01-05 Robert Millan - - * kern/env.c (grub_env_context_open): Propagate hooks for global - variables to new context. - - * kern/main.c (grub_set_root_dev): Export `root' variable. - -2008-01-05 Robert Millan - - * util/biosdisk.c (get_os_disk): Check for devfs-style IDE and SCSI - discs unconditionally, since udev and others have options to provide - them. - -2008-01-05 Robert Millan - - * normal/completion.c (iterate_dir): Skip `.' and `..' directories. - -2008-01-04 Christian Franke - - * kern/i386/pc/init.c (grub_machine_init): Fix evaluation - of eisa_mmap. - -2008-01-03 Pavel Roskin - - * kern/i386/linuxbios/init.c: Put "void" to all function - declarations with no arguments. - * kern/powerpc/ieee1275/init.c: Likewise. - * term/i386/pc/at_keyboard.c: Likewise. - * term/i386/pc/vga_text.c: Likewise. - * util/grub-mkdevicemap.c: Likewise. - -2008-01-02 Robert Millan - - * loader/i386/pc/multiboot.c (grub_multiboot_load_elf32): Improve error - message when loaded image is out of bounds. - (grub_multiboot_load_elf64): Likewise. - -2008-01-02 Pavel Roskin - - * util/grub.d/10_linux.in: Try version without ".old" when - looking for initrd. It's better to use initrd from the newer - kernel of the same version than no initrd at all. - -2008-01-01 Robert Millan - - * util/biosdisk.c (get_os_disk): Fix check for IDE or SCSI discs. - -2008-01-01 Vesa Jaaskelainen - - * include/grub/video.h: Added grub_video_unmap_color and - grub_video_get_active_render_target. - (grub_video_adapter): Added unmap_color and get_active_render_target. - - * video/video.c: Added grub_video_unmap_color and - grub_video_get_active_render_target. - (grub_video_get_info): Changed method to accept NULL pointer as an - argument to allow detection of active video adapter. - - * video/i386/pc/vbe.c: Renamed grub_video_vbe_unmap_color as - grub_video_vbe_unmap_color_int. - Added grub_video_vbe_unmap_color and - grub_video_vbe_get_active_render_target. - (grub_video_vbe_adapter): Added unmap_color and - get_active_render_target. - - * video/i386/pc/vbeblit.c: Replaced grub_video_vbe_unmap_color usage - with grub_video_vbe_unmap_color_int. - - * term/gfxterm.c (DEFAULT_STANDARD_COLOR): Added. - (DEFAULT_NORMAL_COLOR): Likewise. - (DEFAULT_HIGHLIGHT_COLOR) Likewise. - (DEFAULT_FG_COLOR): Removed. - (DEFAULT_BG_COLOR): Likewise. - (DEFAULT_CURSOR_COLOR): Changed value. - (grub_virtual_screen): Added standard_color_setting, - normal_color_setting, highlight_color_setting and term_color. - (grub_virtual_screen): Removed fg_color_setting and bg_color_setting. - (bitmap_width): Added. - (bitmap_height): Likewise. - (bitmap): Likewise. - (set_term_color): Likewise. - (grub_virtual_screen_setup): Changed to use new terminal coloring - settings. - (grub_gfxterm_init): Added init for bitmap. - (grub_gfxterm_fini): Added destroy for bitmap. - (redraw_screen_rect): Updated to use background bitmap and new - terminal coloring. - (scroll_up): Added optimization for case when there is no bitmap. - (grub_gfxterm_cls): Fixed to use correct background color. - (grub_virtual_screen_setcolorstate): Changed to use new terminal - coloring. - (grub_virtual_screen_setcolor): Likewise. - (grub_virtual_screen_getcolor): Added. - (grub_gfxterm_background_image_cmd): Likewise. - (grub_video_term): Added setcolor and getcolor. - (MOD_INIT): Added registration of background_image command. - (MOD_TERM): Added unregistration for background_image command. - -2007-12-30 Pavel Roskin - - * loader/multiboot_loader.c: Fix multiboot command - unregistration. Fix all typos in the word "multiboot". - -2007-12-29 Pavel Roskin - - * util/grub.d/10_linux.in: Refactor search for initrd. Add - support for initrd names used in Fedora. - -2007-12-26 Bean - - * conf/common.rmk (pkgdata_MODULES): Add cpio.mod. - (cpio_mod_SOURCES): New variable. - (cpio_mod_CFLAGS): Likewise. - (cpio_mod_LDFLAGS): Likewise. - - * fs/cpio.c: New file. - - * conf/i386-pc.rmk (grub_emu_SOURCES): Add cpio.c. - - * conf/i386-efi.rmk (grub_emu_SOURCES): Likewise. - - * conf/i386-linuxbios.rmk (grub_emu_SOURCES): Likewise. - - * conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Likewise. - -2007-12-25 Robert Millan - - * include/grub/term.h (struct grub_term): Add `getcolor' function. - (grub_getcolor): New function. - - * kern/term.c (grub_getcolor): New function. - * normal/menu.c (GRUB_COLOR_MENU_NORMAL): New macro. - (GRUB_COLOR_MENU_HIGHLIGHT): New macro. - (print_entry): Set normal and highlight colors to - `GRUB_COLOR_MENU_NORMAL' and `GRUB_COLOR_MENU_HIGHLIGHT', - respectively, before printing and restore them to old - values afterwards. - (grub_menu_init_page): Likewise. Fill an additional colored space - that would otherwise be left blank. - - * term/efi/console.c (grub_console_getcolor): New function. - (struct grub_console_term.getcolor): New variable. - * term/i386/pc/console.c (grub_console_getcolor): New function. - (struct grub_console_term.getcolor): New variable. - * term/ieee1275/ofconsole.c (grub_ofconsole_getcolor): New function. - (struct grub_console_term.getcolor): New variable. - - * term/i386/pc/serial.c (grub_serial_setcolor): Remove function. - (struct grub_console_term.setcolor): Remove variable. - * term/i386/pc/vesafb.c (grub_virtual_screen_setcolor): Remove function. - (struct grub_console_term.setcolor): Remove variable. - * term/i386/pc/vga.c (grub_vga_setcolor): Remove function. - (struct grub_console_term.setcolor): Remove variable. - * term/gfxterm.c (grub_virtual_screen_setcolor): Remove function. - (struct grub_console_term.setcolor): Remove variable. - -2007-12-25 Robert Millan - - * configure.ac: Search for possible unifont.hex locations, and - define UNIFONT_HEX if found. - - * Makefile.in (UNIFONT_HEX): Define variable. - (DATA): Rename to ... - (PKGLIB): ... this. Update all users. - (PKGDATA): New variable. - (pkgdata_IMAGES): Rename to ... - (pkglib_IMAGES): ... this. Update all users. - (pkgdata_MODULES): Rename to ... - (pkglib_MODULES): ... this. Update all users. - (pkgdata_PROGRAMS): Rename to ... - (pkglib_PROGRAMS): ... this. Update all users. - (pkgdata_DATA): Rename to ... - (pkglib_DATA): ... this. Update all users. - (CLEANFILES): Redefine to `$(pkglib_DATA) $(pkgdata_DATA)'. - (unicode.pff, ascii.pff): New rules. - (all-local): Add `$(PKGDATA)' dependency. - (install-local): Process `$(PKGDATA)'. - - * util/update-grub_lib.in (font_path): Search for *.pff files in - a few more locations, including `${pkgdata}'. - -2007-12-23 Robert Millan - - Patch from Bean : - * disk/loopback.c (grub_loopback_read): Add missing bit shift to - `size'. - -2007-12-21 Bean - - * conf/common.rmk (pkgdata_MODULES): Add ntfscomp.mod. - (ntfscomp_mod_SOURCES): New variable. - (ntfscomp_mod_CFLAGS): Likewise. - (ntfscomp_mod_LDFLAGS): Likewise. - - * conf/i386-pc.rmk (grub_setup_SOURCES): Add fs/ntfscomp.c. - (grub_probe_SOURCES): Likewise. - (grub_emu_SOURCES): Likewise. - - * conf/i386-efi.rmk (grub_probe_SOURCES): Add fs/ntfscomp.c. - (grub_emu_SOURCES): Likewise. - - * conf/i386-linuxbios.rmk (grub_probe_SOURCES): Add fs/ntfscomp.c. - (grub_emu_SOURCES): Likewise. - - * conf/powerpc-ieee1275.rmk (grub_probe_SOURCES): Add fs/ntfscomp.c. - (grub_emu_SOURCES): Likewise. - - * fs/ntfs.c (grub_ntfscomp_func): New variable. - (read_run_list): Renamed to grub_ntfs_read_run_list. - (decomp_nextvcn): Moved to ntfscomp.c. - (decomp_getch): Likewise. - (decomp_get16): Likewise. - (decomp_block): Likewise. - (read_block): Likewise. - (read_data): Partially moved to ntfscomp.c. - (fixup): Change unsigned to grub_uint16_t. - (read_mft): Change unsigned long to grub_uint32_t. - (read_attr): Likewise. - (read_data): Likewise. - (read_run_data): Likewise. - (read_run_list): Likewise. - (read_mft): Likewise. - - * fs/ntfscomp.c: New file. - - * include/grub/ntfs.h: New file. - -2007-12-16 Robert Millan - - * util/grub-mkdevicemap.c (make_device_map): Iterate up to 20 for - IDE disk check, since Linux is known to support 20 IDE disks. - Reported by Colin Watson. - -2007-12-15 Bean - - * conf/i386-pc.rmk (pkgdata_IMAGES): Add lnxboot.img. - (lnxboot_img_SOURCES): New variable. - (lnxboot_img_ASFLAGS): Likewise. - (lnxboot_img_LDFLAGS): Likewise. - - * boot/i386/pc/lnxboot.S: New file. - -2007-11-24 Pavel Roskin - - * configure.ac: Test if '--build-id=none' is supported by the - linker. If yes, add it to TARGET_LDFLAGS. Build ID causes - objcopy to generate incorrect binary files (binutils - 2.17.50.0.18-1 as shipped by Fedora 8). - * aclocal.m4 (grub_PROG_OBJCOPY_ABSOLUTE): Use LDFLAGS when - linking, so that build ID doesn't break the test. - -2007-11-24 Pavel Roskin - - * include/grub/i386/time.h: use "void" in the argument list - of grub_cpu_idle(). - * include/grub/powerpc/time.h: Likewise. - * include/grub/sparc64/time.h: Likewise. - -2007-11-18 Christian Franke - - * util/console.c (grub_ncurses_getkey): Change curses KEY_* mapping, - now return control chars instead of GRUB_CONSOLE_KEY_* constants. - This fixes the problem that function keys did not work in grub-emu. - -2007-11-18 Christian Franke - - * disk/host.c (grub_host_open): Remove attribute unused from - name parameter. Add check for "host". This fixes the problem - that grub-emu does not find partitions. - -2007-11-18 Christian Franke - - * util/hostfs.c (is_dir): New function. - (grub_hostfs_dir): Handle missing dirent.d_type case. - (grub_hostfs_read): Add missing fseek(). - (grub_hostfs_label): Clear label pointer. This fixes a crash - of grub-emu on "ls (host)". - -2007-11-18 Christian Franke - - * include/grub/i386/pc/init.h (struct grub_machine_mmap_entry): - Add attribute packed, gcc 3.4.4 on Cygwin aligns this - to 64 bit boundary by default. - -2007-11-18 Bean - - * conf/common.rmk (pkgdata_MODULES): Add hexdump.mod. - (hexdump_mod_SOURCES): New variable. - (hexdump_mod_CFLAGS): Likewise. - (hexdump_mod_LDFLAGS): Likewise. - - * conf/i386-pc.rmk (grub_emu_SOURCES): Add command/hexdump.c. - - * conf/i386-efi.rmk (grub_emu_SOURCES): Add command/hexdump.c. - - * conf/i386-linuxbios.rmk (grub_emu_SOURCES): Add command/hexdump.c. - - * conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Add command/hexdump.c. - - * include/grub/hexdump.h: New file. - - * commands/hexdump.c: New file. - -2007-11-10 Robert Millan - - * commands/i386/pc/play.c (beep_off): Switch order of arguments - in grub_outb() calls. - (beep_on): Likewise. - -2007-11-10 Christian Franke - - * normal/menu.c (run_menu): Check for empty menu to avoid crash. - (grub_menu_run): Likewise. - -2007-11-10 Robert Millan - - * include/grub/i386/efi/machine.h: New file. - * include/grub/i386/linuxbios/machine.h: Likewise. - * include/grub/i386/pc/machine.h: Likewise. - * include/grub/powerpc/ieee1275/machine.h: Likewise. - * include/grub/sparc64/ieee1275/machine.h: Likewise. - - * term/i386/pc/serial.c: Include . - (serial_hw_io_addr): New variable. - (serial_hw_get_port): Obtain port address from `serial_hw_io_addr' - instead of `(unsigned short *) 0x400'. - -2007-11-10 Bean - - * fs/ntfs.c (read_block): Fix a bug caused by adjacent blocks. - -2007-11-10 Vesa Jaaskelainen - - * conf/i386-pc.rmk (pkgdata_MODULES): Added vga.mod. - (vga_mod_SOURCES): Added. - (vga_mod_CFLAGS): Likewise. - (vga_mod_LDFLAGS): Likewise. - - * term/i386/pc/vga.c (get_map_mask): Switch order of arguments in - grub_outb() calls. - (set_map_mask): Likewise. - (set_read_map): Likewise. - (set_read_address): Likewise. - (vga_font): Removed variable. - (get_vga_glyph): Removed function. - (invalidate_char): Likewise. - (write_char): Changed to use grub_font_get_glyph() for font - information. - (grub_vga_putchar): Likewise. - (grub_vga_getcharwidth): Likewise. - -2007-11-10 Vesa Jaaskelainen - - * conf/i386-pc.rmk (boot_img_LDFLAGS): Use COMMON_LDFLAGS for target - flags. - (pxeboot_img_LDFLAGS): Likewise. - (diskboot_img_LDFLAGS): Likewise. - (kernel_img_LDFLAGS): Likewise. - -2007-11-06 Robert Millan - - * term/i386/pc/serial.c (serial_hw_put): Switch order of arguments - in grub_outb() calls. - (serial_hw_init): Likewise. - -2007-11-05 Robert Millan - - * util/update-grub.in: Allow files in ${update_grub_dir} to contain - spaces. Skip non-regular files. - -2007-11-05 Robert Millan - - * kern/disk.c (grub_disk_firmware_fini) - (grub_disk_firmware_is_tainted): New variables. - - * include/grub/disk.h (grub_disk_firmware_fini) - (grub_disk_firmware_is_tainted): Likewise. - - * disk/i386/pc/biosdisk.c (GRUB_MOD_FINI(biosdisk)): Moved from here ... - (grub_disk_biosdisk_fini): ... to here. - (GRUB_MOD_FINI(biosdisk)): Implement using grub_disk_biosdisk_fini(). - (GRUB_MOD_INIT(biosdisk)): Abort when `grub_disk_firmware_is_tainted' - is set. Register grub_disk_biosdisk_fini() in - `grub_disk_firmware_fini'. - - * disk/ata.c: Remove `'. - (GRUB_MOD_INIT(ata)): Remove grub_biosdisk_fini() call. - Use `grub_disk_firmware_is_tainted' and `grub_disk_firmware_fini' - to finish existing firmware disk interface. - - * conf/i386-linuxbios.rmk (pkgdata_MODULES): Add `ata.mod'. - (ata_mod_SOURCES): New variable. - (ata_mod_CFLAGS): Likewise. - (ata_mod_LDFLAGS): Likewise. - -2007-11-05 Robert Millan - - * disk/ata.c: Remove `'. Include `'. - (grub_ata_wait): Reimplement using grub_millisleep(). - - * include/grub/misc.h (grub_div_roundup): Fix parenthesization. - * include/grub/i386/time.h (grub_cpu_idle): Disable `hlt' instruction. - -2007-11-03 Marco Gerards - - * term/i386/pc/vga_text.c: Include . - (CRTC_ADDR_PORT): New macro. - (CRTC_DATA_PORT): Likewise. - (CRTC_CURSOR): Likewise. - (CRTC_CURSOR_ADDR_HIGH): Likewise. - (CRTC_CURSOR_ADDR_LOW): Likewise. - (update_cursor): New function. - (grub_console_real_putchar): Call `update_cursor'. - (grub_console_gotoxy): Likewise. - (grub_console_cls): Set the default color when clearing the - screen. - (grub_console_setcursor): Implemented. - -2007-11-03 Marco Gerards - - * disk/ata.c (grub_ata_pio_read): Don't wait for the command to - become activate. - (grub_ata_pio_write): Likewise. - - (grub_atapi_identify): Wait after issuing an ATA command. - (grub_atapi_packet): Likewise. - (grub_ata_identify): Likewise. - (grub_ata_readwrite): Likewise. - -2007-11-03 Marco Gerards - - * disk/ata.c (grub_ata_pio_read): Detect and return the error code. - (grub_ata_pio_write): Likewise. - (grub_ata_readwrite): Use `grub_error', instead of - returning `grub_errno'. - -2007-11-03 Marco Gerards - - * disk/ata.c (grub_ata_readwrite): Call grub_ata_pio_read and - grub_ata_pio_write once for every single sector, instead of for - multiple sectors. - -2007-10-31 Robert Millan - - * configure.ac: Add `i386-linuxbios' to the list of supported targets. - - * conf/i386-linuxbios.rmk: New file. - - * kern/i386/pc/hardware.c: Likewise. - * term/i386/pc/at_keyboard.c: Likewise. - * term/i386/pc/vga_text.c: Likewise. - - * include/grub/i386/linuxbios/boot.h: Likewise. - * include/grub/i386/linuxbios/console.h: Likewise. - * include/grub/i386/linuxbios/init.h: Likewise. - * include/grub/i386/linuxbios/kernel.h: Likewise. - * include/grub/i386/linuxbios/loader.h: Likewise. - * include/grub/i386/linuxbios/memory.h: Likewise. - * include/grub/i386/linuxbios/serial.h: Likewise. - * include/grub/i386/linuxbios/time.h: Likewise. - - * kern/i386/linuxbios/init.c: Likewise. - * kern/i386/linuxbios/startup.S: Likewise. - * kern/i386/linuxbios/table.c: Likewise. - -2007-10-31 Marco Gerards - - * conf/i386-pc.rmk (pkgdata_MODULES): Add `ata.mod'. - (ata_mod_SOURCES): New variable. - (ata_mod_CFLAGS): Likewise. - (ata_mod_LDFLAGS): Likewise. - - * disk/ata.c: New file. - - * include/grub/disk.h (grub_disk_dev_id): Add - `GRUB_DISK_DEV_ATA_ID'. - -2007-10-31 Robert Millan - - * include/grub/i386/pc/init.h (grub_lower_mem): Moved from here ... - * include/grub/i386/pc/memory.h (grub_lower_mem): ... to here. - - * include/grub/i386/pc/init.h (grub_upper_mem): Moved from here ... - * include/grub/i386/pc/memory.h (grub_upper_mem): ... to here. - - * include/grub/i386/pc/memory.h: Include `' and - `'. - - * loader/i386/pc/multiboot.c: Include `'. - -2007-10-27 Robert Millan - - * include/grub/types.h (ULONG_MAX): Define macro. - -2007-10-22 Robert Millan - - * kern/i386/pc/startup.S: Remove `"kern/i386/realmode.S"'. Include - `"../realmode.S"'. - Remove `"kern/i386/loader.S"'. Include `"../loader.S"'. - -2007-10-22 Robert Millan - - * conf/i386-pc.rmk (kernel_img_SOURCES): Remove `disk/i386/pc/biosdisk.c'. - (pkgdata_MODULES): Add `biosdisk.mod'. - (biosdisk_mod_SOURCES, biosdisk_mod_CFLAGS, biosdisk_mod_LDFLAGS): New - variables. - - * disk/i386/pc/biosdisk.c: Include `'. - (grub_biosdisk_init): Replace with ... - (GRUB_MOD_INIT(biosdisk)): ... this. - (grub_biosdisk_fini): Replace with ... - (GRUB_MOD_FINI(biosdisk)): ... this. - - * kern/i386/pc/init.c: Remove `'. - (grub_machine_init): Remove call to grub_biosdisk_init(). - (grub_machine_fini): Remove call to grub_machine_fini(). - - * util/i386/pc/grub-install.in (modules): Add `biosdisk'. - -2007-10-22 Robert Millan - - * include/grub/time.h: New file. - * include/grub/i386/time.h: Likewise. - * include/grub/powerpc/time.h: Likewise. - * include/grub/sparc64/time.h: Likewise. - - * include/grub/i386/pc/time.h (KERNEL_TIME_HEADER): Rename all - instances to ... - (KERNEL_MACHINE_TIME_HEADER): ... this. - * include/grub/powerpc/ieee1275/time.h (KERNEL_TIME_HEADER): Rename all - instances to ... - (KERNEL_MACHINE_TIME_HEADER): ... this. - * include/grub/sparc64/ieee1275/time.h (KERNEL_TIME_HEADER): Rename all - instances to ... - (KERNEL_MACHINE_TIME_HEADER): ... this. - - * kern/i386/efi/init.c: Include `'. - (grub_millisleep): New function. - * kern/i386/pc/init.c: Include `'. - (grub_millisleep): New function. - * kern/powerpc/ieee1275/init.c: Include `'. - Remove `grub/machine/time.h' include. - (grub_millisleep): New function. - * kern/sparc64/ieee1275/init.c: Include `'. - Remove `grub/machine/time.h' include. - (grub_millisleep): New function. - - * include/grub/misc.h (grub_div_roundup): New function. - - * kern/misc.c: Include `'. - (grub_millisleep_generic): New function. - - * conf/i386-efi.rmk (kernel_mod_HEADERS): Remove `i386/efi/time.h'. - Add `time.h'. - * conf/i386-pc.rmk (kernel_img_HEADERS): Remove `machine/time.h'. - Add `time.h'. - * conf/powerpc-ieee1275.rmk (kernel_elf_HEADERS): Remove - `machine/time.h'. Add `time.h'. - * conf/sparc64-ieee1275.rmk (kernel_elf_HEADERS): Likewise. - -2007-10-21 Robert Millan - - * include/grub/misc.h (grub_max): New function. - -2007-10-21 Robert Millan - - * util/misc.c (grub_util_info): Call fflush() before returning. - -2007-10-20 Robert Millan - - * genmk.rb (Image): Copy `extra_flags' from here ... - (PModule): ... to here. Use it in `#{obj}: #{src}' rule. - - * commands/i386/cpuid.c (grub_cmd_cpuid): Add __attribute__ ((unused)) - to `argc' and `args' arguments. - -2007-10-17 Robert Millan - - * kern/i386/loader.S: New file. - - * kern/i386/pc/startup.S (grub_linux_prot_size): Moved from here ... - * kern/i386/loader.S (grub_linux_prot_size)... to here. - * kern/i386/pc/startup.S (grub_linux_tmp_addr): Moved from here ... - * kern/i386/loader.S (grub_linux_tmp_addr)... to here. - * kern/i386/pc/startup.S (grub_linux_real_addr): Moved from here ... - * kern/i386/loader.S (grub_linux_real_addr)... to here. - * kern/i386/pc/startup.S (grub_linux_boot_zimage): Moved from here ... - * kern/i386/loader.S (grub_linux_boot_zimage)... to here. - * kern/i386/pc/startup.S (grub_linux_boot_bzimage): Moved from here ... - * kern/i386/loader.S (grub_linux_boot_bzimage)... to here. - * kern/i386/pc/startup.S (grub_multiboot_real_boot): Moved from here ... - * kern/i386/loader.S (grub_multiboot_real_boot)... to here. - * kern/i386/pc/startup.S (grub_multiboot2_real_boot): Moved from here ... - * kern/i386/loader.S (grub_multiboot2_real_boot)... to here. - - * kern/i386/realmode.S: New file. - - * kern/i386/pc/startup.S (protstack): Moved from here ... - * kern/i386/realmode.S (protstack)... to here. - * kern/i386/pc/startup.S (gdt): Moved from here ... - * kern/i386/realmode.S (gdt)... to here. - * kern/i386/pc/startup.S (prot_to_real): Moved from here ... - * kern/i386/realmode.S (prot_to_real)... to here. - - * kern/i386/pc/startup.S: Include `kern/i386/loader.S' and - `kern/i386/realmode.S'. - -2007-10-17 Robert Millan - - * include/grub/i386/loader.h: New file. - - * include/grub/i386/pc/loader.h (grub_linux_prot_size) - (grub_linux_tmp_addr, grub_linux_real_addr, grub_os_area_addr) - (grub_os_area_size, grub_linux_boot_zimage, grub_linux_boot_bzimage) - (grub_multiboot_real_boot, grub_multiboot2_real_boot) - (grub_rescue_cmd_linux, grub_rescue_cmd_initrd): Moved from here ... - * include/grub/i386/loader.h (grub_linux_prot_size) - (grub_linux_tmp_addr, grub_linux_real_addr, grub_os_area_addr) - (grub_os_area_size, grub_linux_boot_zimage, grub_linux_boot_bzimage) - (grub_multiboot_real_boot, grub_multiboot2_real_boot) - (grub_rescue_cmd_linux, grub_rescue_cmd_initrd): ... to here. - - * include/grub/i386/pc/loader.h: Include `grub/cpu/loader.h'. - -2007-10-15 Robert Millan - - * normal/misc.c (grub_normal_print_device_info): Do not probe for - filesystem when dev->disk is unset. - Do probe for filesystem even when dev->disk->has_partitions is set. - In case a filesystem is found, always report it. - In case it isn't, if dev->disk->has_partitions is set, report that - a partition table was found instead of reporting that no filesystem - could be identified. - -2007-10-12 Robert Millan - - * conf/powerpc-ieee1275.rmk (grub_mkimage_SOURCES): Replace reference - to util/powerpc/ieee1275/grub-mkimage.c with util/elf/grub-mkimage.c. - - * include/grub/types.h (grub_host_to_target16): New macro. - (grub_host_to_target32): Likewise. - (grub_host_to_target64): Likewise. - (grub_target_to_host16): Likewise. - (grub_target_to_host32): Likewise. - (grub_target_to_host64): Likewise. - - * include/grub/powerpc/ieee1275/kernel.h (GRUB_IEEE1275_MOD_ALIGN): - Renamed from to ... - (GRUB_MOD_ALIGN): ...this. Update all users. - - * util/elf/grub-mkimage.c (load_note): Replace grub_cpu_to_be32 with - grub_host_to_target32. - Replace grub_be_to_cpu32 with grub_target_to_host32. - (load_modules): Likewise. - (add_segments): Replace grub_be_to_cpu16 with grub_target_to_host16. - Replace grub_be_to_cpu32 with grub_target_to_host32. - Replace grub_cpu_to_be16 with grub_host_to_target16. - Replace grub_cpu_to_be32 grub_host_to_target32. - -2007-10-12 Robert Millan - - * util/powerpc/ieee1275/grub-mkimage.c: Moved to ... - * util/elf/grub-mkimage.c: ... here. - - * DISTLIST: Add `util/elf/grub-mkimage.c'. Remove - `util/powerpc/ieee1275/grub-mkimage.c'. - -2007-10-07 Robert Millan - - * kern/powerpc/ieee1275/init.c: Rename HEAP_LIMIT to HEAP_MAX_ADDR, - and make it easier to figure out. - Add HEAP_MIN_SIZE and HEAP_MAX_ADDR definitions. - (grub_claim_heap): Use HEAP_MAX_ADDR rather than taking a parameter. - Do not avoid claiming a region above HEAP_MAX_ADDR if that would - leave us with less than HEAP_MIN_SIZE total heap. - Avoid our total amount of heap to surpass HEAP_MAX_SIZE. - -2007-10-03 Robert Millan - - * include/grub/i386/io.h: New file. - * commands/i386/pc/play.c (inb): Removed. - (outb): Removed. - Include grub/cpu/io.h. Replace inb() with grub_inb() and outb() - with grub_outb(). - * term/i386/pc/serial.c (inb): Removed. - (outb): Removed. - Include grub/cpu/io.h. Replace inb() with grub_inb() and outb() - with grub_outb(). - * term/i386/pc/vga.c (inb): Removed. - (outb): Removed. - Include grub/cpu/io.h. Replace inb() with grub_inb() and outb() - with grub_outb(). - -2007-10-02 Robert Millan - - * conf/i386-efi.rmk (grub_emu_SOURCES): Add util/hostfs.c. - * conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Likewise. - Reported by Marcin Kurek. - -2007-09-07 Robert Millan - - * kern/powerpc/ieee1275/cmain.c (grub_ieee1275_test_flag): Detect - SmartFirmware version updates (as released by Sven Luther), and avoid - setting GRUB_IEEE1275_FLAG_NO_PARTITION_0 or - GRUB_IEEE1275_FLAG_0_BASED_PARTITIONS unless the running version is - known broken. - -2007-09-03 Yoshinori K. Okuji - - From Hitoshi Ozeki: - * kern/i386/pc/init.c (compact_mem_regions): Decrease NUM_REGIONS - when merging two regions. - -2007-09-03 Yoshinori K. Okuji - - * kern/rescue.c (grub_enter_rescue_mode): Free ARGS. - * normal/completion.c (grub_normal_do_completion): Likewise. - Reported by Hitoshi Ozeki. - -2007-09-03 Yoshinori K. Okuji - - Do not use devices at boot in chainloading. - - * loader/i386/pc/chainloader.c (boot_drive): New variable. - (boot_part_addr): Likewise. - (grub_chainloader_boot): Simply call grub_chainloader_real_boot - with BOOT_DRIVE and BOOT_PART_ADDR. - (grub_chainloader_cmd): Set BOOT_DRIVE and BOOT_PART_ADDR. - Reported by Hitoshi Ozeki . - -2007-08-29 Robert Millan - - Patch from Simon Peter : - * genmk.rb (Utility): Append $(#{src}_DEPENDENCIES) to #{obj} targets. - * conf/i386-pc.rmk: Replace grub-probe_DEPENDENCIES with - util/grub-probe.c_DEPENDENCIES. Replace grub-setup_DEPENDENCIES with - util/i386/pc/grub-setup.c_DEPENDENCIES. - * conf/i386-efi.rmk: Replace grub-probe_DEPENDENCIES with - util/grub-probe.c_DEPENDENCIES. - * conf/powerpc-ieee1275.rmk: Likewise. - -2007-08-28 Robert Millan - - * util/i386/get_disk_name.c: New. Implement grub_util_get_disk_name() - to tell grub-mkdevicemap how to name devices. - * util/ieee1275/get_disk_name.c: Likewise (using "ofpathname -a" - feature). - - * conf/i386-efi.rmk (grub_mkdevicemap_SOURCES): Add - util/i386/get_disk_name.c. - * conf/i386-pc.rmk (grub_mkdevicemap_SOURCES): Likewise. - * conf/powerpc-ieee1275.rmk (grub_mkdevicemap_SOURCES): Add - util/ieee1275/get_disk_name.c. - - * include/grub/util/misc.h: grub_util_get_disk_name() declaration. - - * DISTLIST: Add util/i386/get_disk_name.c and - util/ieee1275/get_disk_name.c. - - * util/grub-mkdevicemap.c: Replace device naming logic with - grub_util_get_disk_name() calls. - -2007-08-20 Robert Millan - - * normal/menu.c (run_menu): Refer to seconds as "s" not "seconds" - (so that it works for both plural and singular quantities). - -2007-08-05 Robert Millan - - * util/grub.d/10_linux.in (test_gt): Strip out vmlinu[xz]- prefix - so that [xz] isn't taken into account when determining order. - -2007-08-02 Marco Gerards - - * DISTLIST: Add `disk/host.c', `fs/ntfs.c', `include/multiboot.h', - `include/multiboot2.h', `include/grub/elfload.h', - `include/multiboot.h', `include/grub/multiboot.h', - `include/grub/multiboot_loader.h', `include/grub/multiboot2.h', - `include/grub/i386/pc/biosdisk.h', `include/grub/util/biosdisk.h', - `kern/elf.c', `loader/multiboot_loader.c', - `loader/multiboot_loader_normal.c', `loader/multiboot2.c', - `loader/i386/pc/multiboot2.c', - `loader/powerpc/ieee1275/multiboot2.c', `util/hostfs.c' and - `util/i386/pc/grub-mkrescue.in'. Remove - `include/grub/biosdisk.h', `include/grub/i386/pc/multiboot.h', - `include/grub/i386/pc/util/biosdisk.h' and - `include/grub/powerpc/ieee1275/multiboot.h'. - -2007-08-02 Bean - - * conf/common.rmk (pkgdata_MODULES): Add ntfs.mod. - (ntfs_mod_SOURCES): New variable. - (ntfs_mod_CFLAGS): Likewise. - (ntfs_mod_LDFLAGS): Likewise. - - * conf/i386-pc.rmk (grub_setup_SOURCES): Add fs/ntfs.c. - (grub_probe_SOURCES): Likewise. - (grub_emu_SOURCES): Likewise. - - * conf/i386-efi.rmk (grub_probe_SOURCES): Add fs/ntfs.c. - (grub_emu_SOURCES): Likewise. - - * conf/powerpc-ieee1275.rmk (grub_probe_SOURCES): Add fs/ntfs.c. - (grub_emu_SOURCES): Likewise. - - * conf/misc.c (grub_utf16_to_utf8): Fix unicode conversion bug. - - * fs/ntfs.c: New file. - -2007-08-02 Bean - - * disk.h (grub_disk): Use NESTED_FUNC_ATTR. - - * file.h (grub_file): Likewise. - - * fshelp.h (grub_fshelp_read_file): Likewise. - - * util/i386/pc/grub-setup.c (setup): Likewise. - (save_first_sector): Likewise. - (save_blocklists): Likewise. - - * fs/affs.c (grub_affs_read_file): Likewise. - - * fs/ext2.c (grub_ext2_read_file): Likewise. - - * fs/fat.c (grub_fat_read_data): Likewise. - - * fs/fshelp.c (grub_fshelp_read_file): Likewise. - - * fs/hfs.c (grub_hfs_read_file): Likewise. - - * fs/hfsplus.c (grub_hfsplus_read_file): Likewise. - - * fs/jfs.c (grub_jfs_read_file): Likewise. - - * fs/minix.c (grub_minix_read_file): Likewise. - - * fs/sfs.c (grub_sfs_read_file): Likewise. - - * fs/ufs.c (grub_ufs_read_file): Likewise. - - * fs/xfs.c (grub_xfs_read_file): Likewise. - - * command/blocklist.c (read_blocklist): Likewise. - (print_blocklist): Likewise. - -2007-08-02 Marco Gerards - - * conf/i386-pc.rmk (grub_emu_SOURCES): Add `disk/host.c' and - `util/hostfs.c'. - - * disk/host.c: New file. - - * util/hostfs.c: Likewise. - - * fs/hfsplus.c (grub_hfsplus_mount): When reading out of disk, - return `GRUB_ERR_BAD_FS'. - * fs/sfs.c (grub_sfs_mount): Likewise. - * fs/xfs.c (grub_xfs_mount): Likewise. - - * include/grub/disk.h (enum grub_disk_dev_id): Add - `GRUB_DISK_DEVICE_HOST_ID'. - - * util/grub-emu.c (main): Initialize and de-initialize hostfs. - -2007-07-24 Jerone Young - - * conf/i386-pc.rmk: Add Multiboot loader and multiboot 2 to multiboot - modules for compilation. - * conf/powerpc-ieee1275.rmk: Likewise. - - * include/multiboot.h: Move multiboot definitions to one file. Rename - many definitions to not get grub specific. - * include/multiboot2.h: Create header with multiboot 2 definitions. - * include/grub/multiboot.h: Header for grub specific function - prototypes and definitions. - * include/grub/multiboot2.h: Likewise. - * include/grub/multiboot_loader.h: Likewise. - * include/grub/i386/pc/multiboot.h: Removed. - * include/grub/powerpc/ieee1275/multiboot.h: Removed. - - * loader/multiboot_loader.c: Created to act as a proxy for multiboot 1 - and 2 to allow for one multiboot and module commands. - * loader/multiboot2.c: Add multiboot2 functionality. - * loader/i386/pc/multiboot.c: Modify for new multiboot header location - and definition names. - * loader/i386/pc/multiboot2.c: Created to add i386 specific multiboot - 2 functions. - * loader/powerpc/ieee1275/multiboot2.c: Created to add powerpc - ieee1275 specific multiboot2 code. - - * kern/i386/pc/startup.S: Change headers and definition names for - multiboot. Add function grub_multiboot2_real_boot for multiboot 2. - -2007-07-22 Robert Millan - - * geninitheader.sh: Process file specified in first parameter rather - than hardcoding grub_modules_init.lst. - * geninit.sh: Likewise. Also, construct header name dynamically rather - than hardcoding grub_modules_init.h. - - * conf/common.rmk: Rename grub_modules_init.[ch] files associated with - grub-emu to grub_emu_init.[ch]. Add rules to build analogous - grub_probe_init.[ch] and grub_setup_init.[ch]. - - * conf/powerpc-ieee1275.rmk (grub_emu_DEPENDENCIES): Replace - grub_modules_init.h with grub_emu_init.h. - (grub_probe_DEPENDENCIES, grub_probe_SOURCES): Add new - grub_probe_init.[ch] files. - * conf/i386-efi.rmk: Likewise. - * conf/i386-pc.rmk: Likewise. - (grub_setup_DEPENDENCIES, grub_setup_SOURCES): Add new - grub_setup_init.[ch] files. - - * util/grub-emu.c: Replace grub_modules_init.h with grub_emu_init.h. - * util/grub-probe.c: Include grub_probe_init.h. Use grub_init_all() - to initialize modules rather than a list of hardcoded functions. - * util/i386/pc/grub-setup.c: Include grub_setup_init.h. Use - grub_init_all() to initialize modules rather than a list of hardcoded - functions. - -2007-07-22 Robert Millan - - * kern/powerpc/ieee1275/cmain.c (grub_ieee1275_find_options): Set - GRUB_IEEE1275_FLAG_NO_PARTITION_0 flag when running on SmartFirmware. - -2007-07-22 Robert Millan - - * include/grub/ieee1275/ieee1275.h (grub_ieee1275_flag): Add - GRUB_IEEE1275_FLAG_BROKEN_OUTPUT flag. - * kern/powerpc/ieee1275/cmain.c (grub_ieee1275_find_options): Set this - flag when running on SmartFirmware. - * term/ieee1275/ofconsole.c (grub_ofconsole_init): Avoid running - "output-device output" command when GRUB_IEEE1275_FLAG_BROKEN_OUTPUT - was set. - - * kern/powerpc/ieee1275/openfw.c (grub_ieee1275_encode_devname): - Increase partno when GRUB_IEEE1275_FLAG_0_BASED_PARTITIONS flag is set, - rather than decreasing it. - - * util/i386/pc/grub-setup.c (setup): When embedding is required, but - there's not enough space to do it, fail in the same way as when it - can't be done because there are no partitions. - - * util/powerpc/ieee1275/grub-install.in: Improve error message shown - when nvsetenv failed. - -2007-07-22 Yoshinori K. Okuji - - * conf/i386-pc.rmk (CLEANFILES): Removed for grub-mkrescue, - because this rule is automatically generated. - (grub-mkrescue): Removed for the same reason as above. - -2007-07-22 Yoshinori K. Okuji - - Migrate to GNU General Public License Version 3. - - * COPYING: Replaced with the plain text version of GPLv3. - - * config.guess: Updated from gnulib. - * config.sub: Likewise. - - * geninit.sh: Output a GPLv3 copyright notice. - * geninitheader.sh: Likewise. - * genmodsrc.sh: Likewise. - * gensymlist.sh.in: Likewise. - - * boot/i386/pc/boot.S: Upgraded to GPLv3. - * boot/i386/pc/diskboot.S: Likewise. - * boot/i386/pc/pxeboot.S: Likewise. - * commands/blocklist.c: Likewise. - * commands/boot.c: Likewise. - * commands/cat.c: Likewise. - * commands/cmp.c: Likewise. - * commands/configfile.c: Likewise. - * commands/echo.c: Likewise. - * commands/help.c: Likewise. - * commands/ls.c: Likewise. - * commands/search.c: Likewise. - * commands/terminal.c: Likewise. - * commands/test.c: Likewise. - * commands/videotest.c: Likewise. - * commands/i386/cpuid.c: Likewise. - * commands/i386/pc/halt.c: Likewise. - * commands/i386/pc/play.c: Likewise. - * commands/i386/pc/reboot.c: Likewise. - * commands/i386/pc/vbeinfo.c: Likewise. - * commands/i386/pc/vbetest.c: Likewise. - * commands/ieee1275/halt.c: Likewise. - * commands/ieee1275/reboot.c: Likewise. - * commands/ieee1275/suspend.c: Likewise. - * disk/loopback.c: Likewise. - * disk/lvm.c: Likewise. - * disk/raid.c: Likewise. - * disk/efi/efidisk.c: Likewise. - * disk/i386/pc/biosdisk.c: Likewise. - * disk/ieee1275/ofdisk.c: Likewise. - * font/manager.c: Likewise. - * fs/affs.c: Likewise. - * fs/ext2.c: Likewise. - * fs/fat.c: Likewise. - * fs/fshelp.c: Likewise. - * fs/hfs.c: Likewise. - * fs/hfsplus.c: Likewise. - * fs/iso9660.c: Likewise. - * fs/jfs.c: Likewise. - * fs/minix.c: Likewise. - * fs/sfs.c: Likewise. - * fs/ufs.c: Likewise. - * fs/xfs.c: Likewise. - * hello/hello.c: Likewise. - * include/grub/acorn_filecore.h: Likewise. - * include/grub/arg.h: Likewise. - * include/grub/bitmap.h: Likewise. - * include/grub/boot.h: Likewise. - * include/grub/cache.h: Likewise. - * include/grub/device.h: Likewise. - * include/grub/disk.h: Likewise. - * include/grub/dl.h: Likewise. - * include/grub/elfload.h: Likewise. - * include/grub/env.h: Likewise. - * include/grub/err.h: Likewise. - * include/grub/file.h: Likewise. - * include/grub/font.h: Likewise. - * include/grub/fs.h: Likewise. - * include/grub/fshelp.h: Likewise. - * include/grub/gzio.h: Likewise. - * include/grub/hfs.h: Likewise. - * include/grub/kernel.h: Likewise. - * include/grub/loader.h: Likewise. - * include/grub/lvm.h: Likewise. - * include/grub/misc.h: Likewise. - * include/grub/mm.h: Likewise. - * include/grub/net.h: Likewise. - * include/grub/normal.h: Likewise. - * include/grub/parser.h: Likewise. - * include/grub/partition.h: Likewise. - * include/grub/pc_partition.h: Likewise. - * include/grub/raid.h: Likewise. - * include/grub/rescue.h: Likewise. - * include/grub/script.h: Likewise. - * include/grub/setjmp.h: Likewise. - * include/grub/symbol.h: Likewise. - * include/grub/term.h: Likewise. - * include/grub/terminfo.h: Likewise. - * include/grub/tparm.h: Likewise. - * include/grub/types.h: Likewise. - * include/grub/video.h: Likewise. - * include/grub/efi/api.h: Likewise. - * include/grub/efi/chainloader.h: Likewise. - * include/grub/efi/console.h: Likewise. - * include/grub/efi/console_control.h: Likewise. - * include/grub/efi/disk.h: Likewise. - * include/grub/efi/efi.h: Likewise. - * include/grub/efi/pe32.h: Likewise. - * include/grub/efi/time.h: Likewise. - * include/grub/i386/linux.h: Likewise. - * include/grub/i386/setjmp.h: Likewise. - * include/grub/i386/types.h: Likewise. - * include/grub/i386/efi/kernel.h: Likewise. - * include/grub/i386/efi/loader.h: Likewise. - * include/grub/i386/efi/time.h: Likewise. - * include/grub/i386/pc/biosdisk.h: Likewise. - * include/grub/i386/pc/boot.h: Likewise. - * include/grub/i386/pc/chainloader.h: Likewise. - * include/grub/i386/pc/console.h: Likewise. - * include/grub/i386/pc/init.h: Likewise. - * include/grub/i386/pc/kernel.h: Likewise. - * include/grub/i386/pc/loader.h: Likewise. - * include/grub/i386/pc/memory.h: Likewise. - * include/grub/i386/pc/multiboot.h: Likewise. - * include/grub/i386/pc/serial.h: Likewise. - * include/grub/i386/pc/time.h: Likewise. - * include/grub/i386/pc/vbe.h: Likewise. - * include/grub/i386/pc/vbeblit.h: Likewise. - * include/grub/i386/pc/vbefill.h: Likewise. - * include/grub/i386/pc/vbeutil.h: Likewise. - * include/grub/i386/pc/vga.h: Likewise. - * include/grub/ieee1275/ieee1275.h: Likewise. - * include/grub/ieee1275/ofdisk.h: Likewise. - * include/grub/powerpc/libgcc.h: Likewise. - * include/grub/powerpc/setjmp.h: Likewise. - * include/grub/powerpc/types.h: Likewise. - * include/grub/powerpc/ieee1275/biosdisk.h: Likewise. - * include/grub/powerpc/ieee1275/console.h: Likewise. - * include/grub/powerpc/ieee1275/ieee1275.h: Likewise. - * include/grub/powerpc/ieee1275/kernel.h: Likewise. - * include/grub/powerpc/ieee1275/loader.h: Likewise. - * include/grub/powerpc/ieee1275/multiboot.h: Likewise. - * include/grub/powerpc/ieee1275/time.h: Likewise. - * include/grub/powerpc/ieee1275/util/biosdisk.h: Likewise. - * include/grub/sparc64/libgcc.h: Likewise. - * include/grub/sparc64/setjmp.h: Likewise. - * include/grub/sparc64/types.h: Likewise. - * include/grub/sparc64/ieee1275/console.h: Likewise. - * include/grub/sparc64/ieee1275/ieee1275.h: Likewise. - * include/grub/sparc64/ieee1275/kernel.h: Likewise. - * include/grub/sparc64/ieee1275/time.h: Likewise. - * include/grub/util/biosdisk.h: Likewise. - * include/grub/util/getroot.h: Likewise. - * include/grub/util/lvm.h: Likewise. - * include/grub/util/misc.h: Likewise. - * include/grub/util/raid.h: Likewise. - * include/grub/util/resolve.h: Likewise. - * io/gzio.c: Likewise. - * kern/device.c: Likewise. - * kern/disk.c: Likewise. - * kern/dl.c: Likewise. - * kern/elf.c: Likewise. - * kern/env.c: Likewise. - * kern/err.c: Likewise. - * kern/file.c: Likewise. - * kern/fs.c: Likewise. - * kern/loader.c: Likewise. - * kern/main.c: Likewise. - * kern/misc.c: Likewise. - * kern/mm.c: Likewise. - * kern/parser.c: Likewise. - * kern/partition.c: Likewise. - * kern/rescue.c: Likewise. - * kern/term.c: Likewise. - * kern/efi/efi.c: Likewise. - * kern/efi/init.c: Likewise. - * kern/efi/mm.c: Likewise. - * kern/i386/dl.c: Likewise. - * kern/i386/efi/init.c: Likewise. - * kern/i386/efi/startup.S: Likewise. - * kern/i386/pc/init.c: Likewise. - * kern/i386/pc/lzo1x.S: Likewise. - * kern/i386/pc/startup.S: Likewise. - * kern/ieee1275/ieee1275.c: Likewise. - * kern/powerpc/cache.S: Likewise. - * kern/powerpc/dl.c: Likewise. - * kern/powerpc/ieee1275/cmain.c: Likewise. - * kern/powerpc/ieee1275/crt0.S: Likewise. - * kern/powerpc/ieee1275/init.c: Likewise. - * kern/powerpc/ieee1275/openfw.c: Likewise. - * kern/sparc64/cache.S: Likewise. - * kern/sparc64/dl.c: Likewise. - * kern/sparc64/ieee1275/init.c: Likewise. - * kern/sparc64/ieee1275/openfw.c: Likewise. - * loader/efi/chainloader.c: Likewise. - * loader/efi/chainloader_normal.c: Likewise. - * loader/i386/efi/linux.c: Likewise. - * loader/i386/efi/linux_normal.c: Likewise. - * loader/i386/pc/chainloader.c: Likewise. - * loader/i386/pc/chainloader_normal.c: Likewise. - * loader/i386/pc/linux.c: Likewise. - * loader/i386/pc/linux_normal.c: Likewise. - * loader/i386/pc/multiboot.c: Likewise. - * loader/i386/pc/multiboot_normal.c: Likewise. - * loader/powerpc/ieee1275/linux.c: Likewise. - * loader/powerpc/ieee1275/linux_normal.c: Likewise. - * normal/arg.c: Likewise. - * normal/cmdline.c: Likewise. - * normal/command.c: Likewise. - * normal/completion.c: Likewise. - * normal/execute.c: Likewise. - * normal/function.c: Likewise. - * normal/lexer.c: Likewise. - * normal/main.c: Likewise. - * normal/menu.c: Likewise. - * normal/menu_entry.c: Likewise. - * normal/misc.c: Likewise. - * normal/parser.y: Likewise. - * normal/script.c: Likewise. - * normal/i386/setjmp.S: Likewise. - * normal/powerpc/setjmp.S: Likewise. - * normal/sparc64/setjmp.S: Likewise. - * partmap/acorn.c: Likewise. - * partmap/amiga.c: Likewise. - * partmap/apple.c: Likewise. - * partmap/gpt.c: Likewise. - * partmap/pc.c: Likewise. - * partmap/sun.c: Likewise. - * term/gfxterm.c: Likewise. - * term/terminfo.c: Likewise. - * term/efi/console.c: Likewise. - * term/i386/pc/console.c: Likewise. - * term/i386/pc/serial.c: Likewise. - * term/i386/pc/vesafb.c: Likewise. - * term/i386/pc/vga.c: Likewise. - * term/ieee1275/ofconsole.c: Likewise. - * util/biosdisk.c: Likewise. - * util/console.c: Likewise. - * util/genmoddep.c: Likewise. - * util/getroot.c: Likewise. - * util/grub-emu.c: Likewise. - * util/grub-mkdevicemap.c: Likewise. - * util/grub-probe.c: Likewise. - * util/lvm.c: Likewise. - * util/misc.c: Likewise. - * util/raid.c: Likewise. - * util/resolve.c: Likewise. - * util/update-grub.in: Likewise. - * util/update-grub_lib.in: Likewise. - * util/grub.d/00_header.in: Likewise. - * util/grub.d/10_hurd.in: Likewise. - * util/grub.d/10_linux.in: Likewise. - * util/i386/efi/grub-install.in: Likewise. - * util/i386/efi/grub-mkimage.c: Likewise. - * util/i386/pc/grub-install.in: Likewise. - * util/i386/pc/grub-mkimage.c: Likewise. - * util/i386/pc/grub-mkrescue.in: Likewise. - * util/i386/pc/grub-setup.c: Likewise. - * util/i386/pc/misc.c: Likewise. - * util/powerpc/ieee1275/grub-install.in: Likewise. - * util/powerpc/ieee1275/grub-mkimage.c: Likewise. - * util/powerpc/ieee1275/misc.c: Likewise. - * video/bitmap.c: Likewise. - * video/video.c: Likewise. - * video/i386/pc/vbe.c: Likewise. - * video/i386/pc/vbeblit.c: Likewise. - * video/i386/pc/vbefill.c: Likewise. - * video/i386/pc/vbeutil.c: Likewise. - * video/readers/tga.c: Likewise. - -2007-07-02 Robert Millan - - * conf/i386-efi.rmk: Replace obsolete reference to - util/i386/pc/biosdisk.c with util/biosdisk.c, and util/i386/pc/getroot.c - with util/getroot.c. - * conf/powerpc-ieee1275.rmk: Likewise. - * conf/sparc64-ieee1275.rmk: Likewise. - - * util/grub-emu.c (main): Fix unchecked pointer handling. - -2007-07-02 Robert Millan - - * util/i386/efi/grub-install.in: Allow `grub_probe --target=partmap' - invocation to fail, in order to support partition-less media. - - * util/i386/pc/grub-install.in: Likewise. - - * util/powerpc/ieee1275/grub-install.in: Use grub-probe to determine - which fs or partmap modules are needed (akin to its sister scripts). - - Also use grub-probe to get rid of unportable /proc/mounts check. - - Print the same informational message that the other scripts do, before - exiting. - -2007-06-23 Robert Millan - - * util/update-grub_lib.in (font_path): New function. Determine whether - a font file can be found and, if so, echo the GRUB path to it. - - * util/update-grub.in: Handle multiple terminals depending on user - input, platform availability and font file presence. Propagate - variables of our findings to /etc/grub.d/ children. - - * util/grub.d/00_header.in: Handle multiple terminals, based on - environment setup by update-grub. - -2007-06-23 Robert Millan - - * conf/i386-pc.rmk (pkgdata_MODULES): Add serial.mod. - -2007-06-21 Robert Millan - - * include/grub/i386/pc/kernel.h: Define GRUB_KERNEL_MACHINE_DATA_END to - indicate end of data section in kernel image. - * include/grub/i386/efi/kernel.h: Define GRUB_KERNEL_MACHINE_PREFIX and - GRUB_KERNEL_MACHINE_DATA_END. - - * kern/i386/pc/startup.S: Do not initialize grub_prefix, only reserve - space for it. - * kern/i386/efi/startup.S: Likewise. - - * util/i386/pc/grub-mkimage.c: Initialize grub_prefix to /boot/grub - during image generation. Implement --prefix option to override this - patch. - * util/i386/efi/grub-mkimage.c: Likewise. - - * util/update-grub_lib.in (convert_system_path_to_grub_path): Split - code to make path relative to its root into a separate function. - - * util/i386/pc/grub-install.in: Use newly provided - make_system_path_relative_to_its_root() to convert ${grubdir}, then - pass the result to grub-install --prefix. - -2007-06-13 Robert Millan - - * include/grub/util/misc.h: Define DEFAULT_DIRECTORY and - DEFAULT_DEVICE_MAP. - * util/grub-emu.c: Use above definitions from misc.h instead of - defining them. - * util/grub-mkdevicemap.c: Likewise. - * util/i386/pc/grub-setup.c: Likewise. - * util/grub-probe.c: Likewise. - (probe): Abort with grub_util_error() when either - grub_guess_root_device or grub_util_get_grub_dev fails. - -2007-06-12 Robert Millan - - * normal/command.c (grub_command_execute): Use NULL rather than 0 for - "pager" assignment. - * util/biosdisk.c (grub_util_biosdisk_get_grub_dev): Likewise for - "pcdata". - * util/grub-probe.c (probe): Likewise for "drive_name". - -2007-06-11 Robert Millan - - * util/i386/pc/grub-mkrescue.in: Pad both floppy images with zeroes, - not just the cdrom one. - -2007-06-11 Robert Millan - - * util/i386/pc/grub-mkrescue.in: Add "set -e". - Add --pkglibdir=DIR option to override pkglibdir. - Mention --image-type=TYPE in help output. - Fix --grub-mkimage (it was a no-op). - Abort gracefully when no parameter is given. - -2007-06-11 Robert Millan - - * util/i386/pc/grub-mkrescue.in: New file. - * conf/i386-pc.rmk: Add its build declarations. Put it in bin_SCRIPTS. - * Makefile.in: Handle bin_SCRIPTS. - -2007-06-10 Vesa Jaaskelainen - - * term/gfxterm.c (grub_gfxterm_init): Added support for specifying - list of video modes. - -2007-06-06 Robert Millan - - * util/update-grub_lib.in (convert_system_path_to_grub_path): Abort if - file doesn't exist, or if it is in a filesystem grub can't read. - - * util/update-grub.in: Set fallback for GRUB_FS check to "unknown". Do - not abort if GRUB_DRIVE could not be defined. Rearrange generated - header comment to fit in 80 columns when the variables are resolved. - - * util/grub.d/00_header.in: Only set root variable when GRUB_DRIVE - could be identified by update-grub. Remove redundant check for - unifont.pff existence (since convert_system_path_to_grub_path now - handles that). - -2007-06-04 Robert Millan - - * conf/i386-efi.rmk (grub_probe_SOURCES): Add partmap/apple.c. - - * conf/i386-pc.rmk (grub_probe_SOURCES): Likewise. - - * conf/powerpc-ieee1275.rmk (grub_probe_SOURCES): Add partmap/pc.c. - -2007-06-04 Robert Millan - - * conf/powerpc-ieee1275.rmk: Enable grub-mkdevicemap and grub-probe. - - * include/grub/partition.h: Declare grub_apple_partition_map_init and - grub_apple_partition_map_fini. - - * util/biosdisk.c - (grub_util_biosdisk_open): Replace BLKGETSIZE with BLKGETSIZE64 (needed - to access >2 TiB disks). - - Print disk->total_sectors with %llu instead of %lu, since this - variable is always 64-bit (prevents wrong disk size from being displayed - on either >2 TiB disk or big-endian CPU). - - (grub_util_biosdisk_get_grub_dev): Convert gpt_partition_map handling - into a generic case that supports all (sane) partition maps. - - Stop using grub_cpu_to_le32() on dos_part / bsd_part since it actually - breaks big-endian. - - * util/grub-probe.c: Call grub_apple_partition_map_init() before probe() - and grub_apple_partition_map_fini() after that. - -2007-06-01 Robert Millan - - * util/update-grub.in: Export GRUB_CMDLINE_LINUX. - - * util/grub.d/00_header.in: Only enable gfxterm when - convert_system_path_to_grub_path() succeeds. - -2007-05-20 Robert Millan - - * util/update-grub_lib.in: New file. - * DISTLIST: Add update-grub_lib.in. - * conf/common.rmk: Generate update-grub_lib and install it in - $(lib_DATA). - * Makefile.in: Add install routine for $(lib_DATA). - - * util/grub.d/00_header.in: Use convert_system_path_to_grub_path() - function provided by update-grub_lib to support arbitrary paths of - unifont.pff. - * util/update-grub.in: Use convert_system_path_to_grub_path() to - initialize GRUB_DRIVE_BOOT and GRUB_DRIVE_BOOT_GRUB variables. - -2007-05-19 Robert Millan - - * commands/i386/cpuid.c: New module. - * DISTLIST: Add it. - * conf/i386-efi.rmk: Enable cpuid.mod. - * conf/i386-pc.rmk: Likewise. - -2007-05-18 Jeroen Dekkers - - * kern/disk.c (grub_disk_read): Check return value of - grub_realloc(). - -2007-05-18 Jeroen Dekkers - - * util/getroot.c (grub_util_get_grub_dev): Support partitionable - arrays. - * disk/raid.c (grub_raid_open): Likewise. - -2007-05-17 Jeroen Dekkers - - * util/biosdisk.c (linux_find_partition): Allocate real_dev on the - stack instead of on the heap. - - * kern/disk.c (grub_disk_read): Make sure tmp_buf is big enough - before doing a read on it. - - * configure.ac: Only use -fno-stack-protector for the target - environment. - -2007-05-17 Jeroen Dekkers - - * video/i386/pc/vbe.c (grub_video_vbe_create_render_target): Add - __attribute_ ((unused)) to mode_type argument. - - * util/getroot.c (grub_guess_root_device): Fix #endif. - - * kern/misc.c (memcmp): Fix prototype. - - * include/grub/partition.h [GRUB_UTIL] - (grub_gpt_partition_map_init): Add prototype. - (grub_gpt_partition_map_fini): Likewise. - - * fs/jfs.c (struct grub_jfs_inode): Put __attribute__ ((packed) - at the right place. - - * fs/fat.c (grub_fat_mount): Replace ~0UL with ~0U. - (grub_fat_read_data): Likewise. - (grub_fat_find_dir): Likewise. - - * font/manager.c (find_glyph): Make table a const. - (grub_font_get_glyph): Remove bitmap from if statement. - -2007-05-16 Jeroen Dekkers - - * util/getroot.c (grub_guess_root_device): Remove RAID and LVM - code, first search for device in /dev/mapper, then in /dev. - (grub_util_get_grub_dev): New function. - * include/grub/util/getroot.h (grub_util_get_grub_dev): Add - prototype. - * util/grub-probe.c (probe): Remove check for RAID, call - grub_util_get_grub_dev() instead of - grub_util_biosdisk_get_grub_dev(). - * util/grub-emu.c (main): Call grub_util_get_grub_dev() instead of - grub_util_biosdisk_get_grub_dev(). - * util/i386/pc/grub-setup.c (main): Likewise. - -2007-05-16 Robert Millan - - * DISTLIST: Update for the latest changes. - * conf/i386-pc.rmk: Use the new paths for util/getroot.c, - util/grub-mkdevicemap.c, util/grub-probe.c and util/biosdisk.c. - * util/grub-emu.c: Replace grub/i386/pc/util/biosdisk.h with - grub/util/biosdisk.h. - * util/i386/pc/grub-setup.c: Replace grub/machine/util/biosdisk.h with - grub/util/biosdisk.h. - -2007-05-16 Robert Millan - - * util/grub.d/00_header.in: Set default gfxmode to `640x480'. - -2007-05-16 Robert Millan - - * util/i386/efi/grub-install.in: New. - * conf/i386-efi.rmk: Enable grub-mkdevicemap, grub-probe and the - newly added grub-install. - * util/biosdisk.c: Remove unnecessary grub/machine/biosdisk.h - include. - * util/getroot.c: Replace grub/i386/pc/util/biosdisk.h with - grub/util/biosdisk.h. - * util/grub-probe.c: Replace grub/machine/util/biosdisk.h with - grub/util/biosdisk.h. - -2007-05-16 Robert Millan - - * include/grub/i386/pc/util/biosdisk.h: Moved to ... - * include/grub/util/biosdisk.h: ... here. - * util/i386/pc/biosdisk.c: Moved to ... - * util/biosdisk.c: ... here. - * util/i386/pc/getroot.c: Moved to ... - * util/getroot.c: ... here. - * util/i386/pc/grub-mkdevicemap.c: Moved to ... - * util/grub-mkdevicemap.c: ... here. - * util/i386/pc/grub-probe.c: Moved to ... - * util/grub-probe.c: ... here. - -2007-05-15 Robert Millan - - * util/update-grub.in: Remove duplicated line in grub.cfg header - message. - -2007-05-13 Robert Millan - - * util/update-grub.in: Fix a few assumptions about the devices holding - /, /boot and /boot/grub being the same. - * util/grub.d/00_header.in: Likewise. - * util/grub.d/10_hurd.in: Likewise. - * util/grub.d/10_linux.in: Likewise. - - * util/grub.d/10_linux.in: Implement Linux image sorting with arbitrary - patterns. Use that to define the `.old' suffix as older than `'. - - * util/grub.d/00_header.in: Set default gfxmode to `800x600x16'. - - * util/update-grub.in: Add a reference to ${sysconfdir}/default/grub in - the grub.cfg header message. - -2007-05-11 Robert Millan - - * util/update-grub.in: Create device.map if it doesn't already exist, - before attempting to run grub-probe. - Check for grub-probe and grub-mkdevicemap with the same code - grub-install is using. - Remove test mode. - -2007-05-09 Jeroen Dekkers - - * Makefile.in: Add the datarootdir autoconf variable. - -2007-05-09 Robert Millan - - * util/i386/pc/grub-probe.c (probe): When detecting partition map, - fail gracefully if dev->disk->partition == NULL. - -2007-05-07 Robert Millan - - * util/i386/pc/grub-probe.c: Add `grub-probe -t partmap' parameter to - determine partition map module. - * util/i386/pc/grub-install.in: Use this feature to decide which - partition module to load, instead of hardcoding pc and gpt. - -2007-05-07 Robert Millan - - * Makefile.in: Fix assumption that $(srcdir) has a trailing slash when - source directory differs from build directory. - -2007-05-05 Robert Millan - - * util/powerpc/ieee1275/grub-install.in: Fix syntax error in pkglibdir - initialisation. - -2007-05-05 Robert Millan - - * util/update-grub.in: Create ${grub_prefix} if it doesn't exist. - -2007-05-05 Robert Millan - - * util/grub.d/10_linux.in: Allow the administrator to insert Linux - command-line arguments via ${GRUB_CMDLINE_LINUX}. - -2007-05-05 Robert Millan - - * conf/i386-pc.rmk (grub_setup_SOURCES): Add partmap/gpt.c. - (grub_probe_SOURCES): Likewise. - * util/i386/pc/biosdisk.c (grub_util_biosdisk_get_grub_dev): Detect - GPT and initialize dos_part and bsd_part accordingly. - * util/i386/pc/grub-setup.c (setup): Ditto for install_dos_part and - install_bsd_part. - (main): Activate gpt module for use during partition identification, - and deactivate it afterwards. - * util/i386/pc/grub-install.in: Add gpt module to core.img. - * util/i386/pc/grub-probe.c (main): Activate gpt module for use during - partition identification, and deactivate it afterwards. - -2007-05-05 Robert Millan - - * term/i386/pc/console.c (grub_console_fini): Call - grub_term_set_current() before grub_term_unregister(). - -2007-05-04 Robert Millan - - * DISTLIST: Add util/update-grub.in, util/grub.d/00_header.in, - util/grub.d/10_hurd.in, util/grub.d/10_linux.in and util/grub.d/README. - * Makefile.in: Build update-grub_SCRIPTS. Install update-grub_SCRIPTS - and update-grub_DATA. - * conf/common.rmk: Build and install update-grub components. - * conf/common.mk: Regenerate. - * util/update-grub.in: New. Core of update-grub. - * util/grub.d/00_header.in: New. Generates grub.cfg header. - * util/grub.d/10_hurd.in: New. Generates boot entries for the Hurd. - * util/grub.d/10_linux.in: New. Generates boot entries for Linux. - * util/grub.d/README: New. Document grub.d directory layout. - -2007-05-01 Robert Millan - - * util/grub-emu.c: Move initialization functions - grub_util_biosdisk_init() and grub_init_all() before - grub_util_biosdisk_get_grub_dev(), which relies on them. - -2007-04-19 Robert Millan - - * util/powerpc/ieee1275/grub-install.in: Initialize ${bindir}, since - it is used later. - -2007-04-18 Jerone Young - - * kernel/elf.c: Add missing parenthesis for conditional statement - stanza. - -2007-04-10 Jerone Young - - * util/i386/pc/getroot.c: Update so that if root device is /dev/root , - continue on and look for device node with real device name. - -2007-04-10 Jerone Young - - * configure.ac: Add argument for autoconf to use transformation - ability. - * Makefile.in: Add autoconf package transformation code. - * util/i386/pc/grub-install.in: Likewise. - * util/powerpc/ieee1275/grub-install.in: Likewise. - -2007-03-19 Yoshinori K. Okuji - - * fs/ext2.c (EXT2_GOOD_OLD_REVISION): New macro. - (EXT2_GOOD_OLD_INODE_SIZE): Likewise. - (EXT2_REVISION): Likewise. - (EXT2_INODE_SIZE): Likewise. - (struct grub_ext2_block_group): Added a missing member - "used_dirs". - (grub_ext2_read_inode): Divide by the inode size in a superblock - instead of 128 to obtain INODES_PER_BLOCK. - Use the macro EXT2_INODE_SIZE instead of directly using - SBLOCK->INODE_SIZE. - -2007-03-18 Yoshinori K. Okuji - - * fs/ext2.c (grub_ext2_read_inode): Use the inode size in a - superblock instead of the structure size to compute an - offset. This fixes the problem that GRUB could not read a - filesystem when inode size is different from 128-byte. - -2007-03-05 Marco Gerards - - * normal/main.c (read_config_file): When "menu" is not set, create - an initial context. - -2007-02-21 Hollis Blanchard - - * kern/powerpc/ieee1275/init.c (HEAP_SIZE): Removed. - (HEAP_LIMIT): New macro. - (grub_claim_heap): Claim memory up to `heaplimit'. - -2007-02-21 Hollis Blanchard - - * conf/powerpc-ieee1275.rmk (kernel_elf_LDFLAGS): Link at 64KB. - * kern/powerpc/ieee1275/init.c (_end): Add declaration. - (_start): Likewise. - (grub_arch_modules_addr): Return address after `_end'. - * util/powerpc/ieee1275/grub-mkimage.c: Include grub/misc.h. - (load_modules): Use new parameter as `p_paddr' and `p_vaddr'. - (add_segments): Calculate `_end' from phdr size and location. - (ALIGN_UP): Moved to ... - * include/grub/misc.h: here. - * include/grub/powerpc/ieee1275/kernel.h (GRUB_IEEE1275_MOD_ALIGN): - New macro. - (GRUB_IEEE1275_MODULE_BASE): Removed. - -2007-02-20 Hollis Blanchard - - * kern/powerpc/ieee1275/openfw.c (grub_available_iterate): Correct - loop boundary. - -2007-02-20 Hollis Blanchard - - * include/grub/elfload.h (grub_elf32_load_hook_t): Return grub_err_t. - All users updated. - (grub_elf64_load_hook_t): Likewise. - * kern/elf.c: Call `grub_error_push' before `grub_error'. Improve - debug output. - -2007-02-20 Hollis Blanchard - - * kern/mm.c: Update copyright. - (grub_mm_debug): Correct syntax error. - (grub_mm_dump_free): New function. - (grub_debug_free): Call `grub_free'. - * include/grub/mm.h: Update copyright. - (grub_mm_dump_free): Add declaration. - -2007-02-12 Hollis Blanchard - - * include/grub/ieee1275/ieee1275.h: Update copyright. - * kern/powerpc/ieee1275/init.c: Likewise. - * kern/powerpc/ieee1275/openfw.c: Likewise. - - * loader/powerpc/ieee1275/linux.c: Likewise. - * include/grub/elfload.h: Likewise. - * kern/elf.c: Likewise. - (grub_elf32_load): Pass `base' and `size' parameters. Update all - callers. - (grub_elf64_load): Likewise. - (grub_elf32_load_segment): Move to a nested function. - (grub_elf64_load_segment): Likewise. - -2007-02-12 Hollis Blanchard - - * include/grub/ieee1275/ieee1275.h (grub_available_iterate): New - prototype. - * kern/powerpc/ieee1275/init.c (grub_heap_start): Removed. - (grub_heap_len): Likewise. - (HEAP_SIZE): New macro. - (grub_claim_heap): New function. - (grub_machine_init): Don't claim heap directly. Call - `grub_claim_heap'. - * kern/powerpc/ieee1275/openfw.c: Include alloca.h. - (grub_available_iterate): New function. - -2007-02-03 Thomas Schwinge - - * aclocal.m4 (grub_CHECK_STACK_PROTECTOR): New definition. - * configure.ac: Use it for testing the HOST and TARGET compilers. - -2006-12-13 Thomas Schwinge - - * Makefile.in (enable_grub_emu): New variable. - * configure.ac (--enable-grub-emu): New option. - Do the checks for (n)curses only if `--enable-grub-emu' is requested. - * conf/i386-efi.rmk (sbin_UTILITIES): Add `grub-emu' only if requested. - * conf/i386-pc.rmk: Likewise. - * conf/powerpc-ieee1275.rmk: Likewise. - * conf/sparc64-ieee1275.rmk (bin_UTILITIES): Likewise. - -2006-12-12 Marco Gerards - - * include/grub/err.h (grub_err_t): Add `GRUB_ERR_MENU'. - - * kern/env.c (grub_env_unset): Don't free the member `value' when - the type is GRUB_ENV_VAR_DATA, in this case it's a user defined - pointer. - - * normal/main.c (current_menu): Removed. - (free_menu): Unset the `menu' environment variable. - (grub_normal_menu_addentry): Make use of the environment variable - `menu', instead of using the global `current_menu'. Allocate - memory for the sourcecode of this entry. - (read_config_file): New argument `nested', changed all callers. - Only in the case of a new context, initialize a new menu. Set the - `menu' environment variable. - (grub_normal_execute): Don't set and unset the environment - variable `menu' here anymore. Only free the menu when leaving the - context. - - * util/i386/pc/biosdisk.c (linux_find_partition): Fixed a memory - leak. - -2006-12-11 Marco Gerards - - * normal/menu_entry.c (run): Fix off by one bug so the last line - is executed. Move the loader check to outside the loop. - -2006-12-08 Hollis Blanchard - - * kern/powerpc/ieee1275/cmain.c (cmain): Mark r3 and r4 as `UNUSED'. - -2006-11-25 Yoshinori K. Okuji - - * util/i386/pc/grub-mkimage.c (generate_image): Fix the offset of - the number of sectors. Reported by Andrey Shuvikov - . - -2006-11-11 Jeroen Dekkers - - * kern/disk.c (grub_disk_read): When there is a read error, always - try to read only the necessary data. - - * conf/i386-pc.rmk (grub_probe_SOURCES): Add disk/lvm.c and - disk/raid.c. - * include/grub/disk.h [GRUB_UTIL] (grub_raid_init): New - prototype. - [GRUB_UTIL] (grub_raid_fini): Likewise. - [GRUB_UTIL] (grub_lvm_init): Likewise. - [GRUB_UTIL] (grub_lvm_fini): Likewise. - * util/i386/pc/grub-probe.c (probe): Check whether DEVICE_NAME is - RAID device and copy DEVICE_NAME to DRIVE_NAME in that case. - (main): Call grub_raid_init(), grub_lvm_init(), grub_lvm_fini() - and grub_raid_fini(). - -2006-11-09 Jeroen Dekkers - - * include/grub/types.h (__unused): Rename to UNUSED. - * kern/elf.c (grub_elf32_size): Use UNUSED instead of __unused. - (grub_elf64_size): Likewise. - -2006-11-03 Hollis Blanchard - - * kern/elf.c (grub_elf_file): Call grub_file_seek. Call - grub_error_push and grub_error_pop in the error-handling path. - (grub_elf32_load_segment): Only call grub_file_read with non-zero - length. - -2006-11-03 Hollis Blanchard - - * conf/i386-efi.rmk (grub_emu_SOURCES): Add kern/elf.c. - * conf/i386-pc.rmk (grub_emu_SOURCES): Likewise. - * conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Likewise. - (kernel_elf_SOURCES): Likewise. - * conf/i386-efi.rmk (kernel_mod_HEADERS): Add elfload.h and cache.h. - * conf/i386-pc.rmk (kernel_mod_HEADERS): Likewise. - * conf/powerpc-ieee1275.rmk (kernel_elf_HEADERS): Likewise. - * conf/sparc64-ieee1275.rmk (kernel_elf_HEADERS): Likewise. - * conf/common.rmk (pkgdata_MODULES): Add elf.mod. - (elf_mod_SOURCES): New variable. - (elf_mod_CFLAGS): Likewise. - (elf_mod_LDFLAGS): Likewise. - * include/grub/types.h (__unused): New macro. - * include/grub/elfload.h: New file. - * kern/elf.c: Likewise. - * loader/powerpc/ieee1275/linux.c: Include elfload.h. - (ELF32_LOADMASK): New macro. - (ELF64_LOADMASK): Likewise. - (vmlinux): Removed. - (grub_linux_load32): New function. - (grub_linux_load64): Likewise. - (grub_rescue_cmd_linux): Call grub_linux_load32 or grub_linux_load64. - Use grub_elf_t instead of grub_file_t. - -2006-11-02 Hollis Blanchard - - * kern/ieee1275/ieee1275.c (grub_ieee1275_set_color): Add - `catch_result' to struct set_color_args. - -2006-10-28 Yoshinori K. Okuji - - * normal/menu.c: Include grub/script.h. - * normal/menu_entry.c: Likewise. - * include/grub/normal.h: Do not include grub/script.h. - -2006-10-27 Hollis Blanchard - - * kern/disk.c (grub_disk_read): Correct debug printf formatting. - -2006-10-27 Hollis Blanchard - - * kern/disk.c (grub_disk_open): Print debug messages when opening a - disk. - (grub_disk_close): Print debug messages when closing a disk. - (grub_disk_read): Print debug messages when disk read fails. - * kern/fs.c (grub_fs_probe): Print debug messages when detecting - filesystem type. - * kern/partition.c: Include misc.h. - (grub_partition_iterate): Print debug messages when detecting - partition type. - -2006-10-27 Hollis Blanchard - - * disk/ieee1275/ofdisk.c (grub_ofdisk_read): Return error if `status' - is negative. - * kern/ieee1275/ieee1275.c (IEEE1275_IHANDLE_INVALID): Change to 0. - -2006-10-26 Hollis Blanchard - - * kern/powerpc/ieee1275/openfw.c (grub_ieee1275_encode_devname): - Reverse GRUB_IEEE1275_FLAG_0_BASED_PARTITIONS test. - -2006-10-25 Jeroen Dekkers - - * disk/lvm.c (grub_lvm_scan_device): Malloc sizeof(*lv) bytes - instead of sizeof(lv). Patch by Michael Guntsche. - -2006-10-18 Jeroen Dekkers - - * disk/lvm.c: Rename VGS to VG_LIST. - (grub_lvm_iterate): Change VGS->LV to VG-LV. - (grub_lvm_open): Likewise. - Thanks to Michael Guntsche for finding this bug. - -2006-10-15 Yoshinori K. Okuji - - * configure.ac (AC_INIT): Bumped to 1.95. - -2006-10-14 Robert Millan - - * util/i386/pc/getroot.c (grub_guess_root_device): Don't compare os_dev - with "/dev/.static/dev/md". - -2006-10-14 Yoshinori K. Okuji - - * util/i386/pc/grub-probe.c (probe): Print DEVICE_NAME instead of - DRIVE_NAME when grub_util_biosdisk_get_grub_dev fails. Open - DRIVE_NAME instead of DEVICE_NAME. Make sure that DEVICE_NAME and - DRIVE_NAME are always freed. - - * util/i386/pc/biosdisk.c (make_device_name): Add one into - DOS_PART, as a DOS partition is counted from one instead of zero - now. Reported by Robert Millan. - -2006-10-14 Robert Millan - - * util/i386/pc/getroot.c (grub_guess_root_device): Stop using - grub_util_biosdisk_get_grub_dev to convert system device to GRUB device. - * util/grub-emu.c (main): Use grub_util_biosdisk_get_grub_dev with the - string returned by grub_guess_root_device. - * util/i386/pc/grub-setup.c: Likewise. - * util/i386/pc/grub-probefs.c: Likewise. - - * util/i386/pc/grub-probefs.c: Rename to ... - * util/i386/pc/grub-probe.c: ... this. - * DISTLIST: Remove grub-probefs, add grub-probe. - * conf/i386-efi.rmk: Likewise. - * conf/i386-pc.rmk: Likewise. - * util/i386/pc/grub-install.in: Likewise. - - * util/i386/pc/grub-probe.c: Add --target=(fs|device|drive) option to - choose which information we want to print. - -2006-10-14 Yoshinori K. Okuji - - * DISTLIST: Added commands/echo.c, disk/lvm.c, disk/raid.c, - include/grub/bitmap.h, include/grub/lvm.h, include/grub/raid.h, - include/grub/i386/pc/vbeutil.h, include/grub/util/lvm.h, - include/grub/util/raid.h, util/lvm.c, util/raid.c, video/bitmap.c, - video/readers/tga.c and video/i386/pc/vbeutil.c. - -2006-10-14 Jeroen Dekkers - - Added support for RAID and LVM. - - * disk/lvm.c: New file. - * disk/raid.c: Likewise. - * include/grub/lvm.h: Likewise. - * include/grub/raid.h: Likewise. - * include/grub/util/lvm.h: Likewise. - * include/grub/util/raid.h: Likewise. - * util/lvm.c: Likewise. - * util/raid.c: Likewise. - - * include/grub/disk.h (grub_disk_dev_id): Add - GRUB_DISK_DEVICE_RAID_ID and GRUB_DISK_DEVICE_LVM_ID. - (grub_disk_get_size): New prototype. - * kern/disk.c (grub_disk_open): Check whether grub_partition_probe() - returns a partition. - (grub_disk_get_size): New function. - - * kern/i386/pc/init.c (make_install_device): Copy the prefix - verbatim if grub_install_dos_part is -2. - - * util/i386/pc/getroot.c (grub_guess_root_device): Support RAID - and LVM devices. - - * util/i386/pc/grub-setup.c (setup): New argument - MUST_EMBED. Force embedding of GRUB when the argument is - true. Close FILE before returning. - (main): Add support for RAID and LVM. - - * conf/common.rmk: Add RAID and LVM modules. - * conf/i386-pc.rmk (grub_setup_SOURCES): Add util/raid.c and - util/lvm.c. - (grub_emu_SOURCES): Add disk/raid.c and disk/lvm.c. - - * kern/misc.c (grub_strstr): New function. - * include/grub/misc.h (grub_strstr): New prototype. - -2006-10-10 Tristan Gingold - - * include/grub/efi/api.h (GRUB_EFI_ERROR_CODE): Long constant. - -2006-10-05 Tristan Gingold - - * kern/misc.c (grub_strtoull): Guess the base only if not - specified. - -2006-10-01 Hollis Blanchard - - * kern/powerpc/ieee1275/cmain.c (cmain): Remove incomplete Old World - PowerMac support. - -2006-10-01 Hollis Blanchard - - * disk/ieee1275/ofdisk.c (grub_ofdisk_iterate): Cast `size' to long. - - * include/grub/ieee1275/ieee1275.h (grub_ieee1275_next_property): - Remove `flags' argument. All callers changed. - * kern/ieee1275/ieee1275.c (IEEE1275_PHANDLE_ROOT): Removed. - (IEEE1275_IHANDLE_INVALID): New variable. - (IEEE1275_CELL_INVALID): New variable. - (grub_ieee1275_finddevice, grub_ieee1275_get_property, - grub_ieee1275_get_property_length, grub_ieee1275_instance_to_package, - grub_ieee1275_package_to_path, grub_ieee1275_instance_to_path, - grub_ieee1275_peer, grub_ieee1275_child, grub_ieee1275_open, - grub_ieee1275_claim, grub_ieee1275_set_property): Error-check return - codes from Open Firmware. All callers updated. - (grub_ieee1275_next_property): Directly return Open Firmware return - code. - * kern/powerpc/ieee1275/cmain.c (grub_ieee1275_find_options): - Standardize error checking from `grub_ieee1275_get_property'. - * kern/powerpc/ieee1275/openfw.c (grub_devalias_iterate): Rename - `devalias' to `aliases'. Correct comments. Consolidate error paths. - -2006-10-01 Hollis Blanchard - - * kern/ieee1275/ieee1275.c (grub_ieee1275_instance_to_path): Rename - `instance_to_package_args' to `instance_to_path_args'. - - * kern/powerpc/ieee1275/init.c (grub_machine_init): Use - `grub_ieee1275_chosen'. - - * term/ieee1275/ofconsole.c (grub_ofconsole_init): Call - `grub_ieee1275_interpret'. - -2006-09-25 Hollis Blanchard - - * util/powerpc/ieee1275/grub-mkimage.c: Include config.h. - -2006-09-25 Hollis Blanchard - - * include/grub/powerpc/libgcc.h (__floatdisf): New prototype. - (__cmpdi): Likewise. - - * kern/powerpc/ieee1275/openfw.c (grub_devalias_iterate): Pass 0 as - `flags' to `grub_ieee1275_next_property'. Change `pathlen' to type - `grub_ssize_t'. - - * kern/powerpc/ieee1275/cmain.c: Include grub/misc.h. - - * loader/powerpc/ieee1275/linux.c (grub_linux_boot): Change `actual' - to type `grub_ssize_t'. - (grub_rescue_cmd_linux): Cast -1 to `grub_off_t'. - -2006-09-22 Marco Gerards - - * normal/script.c (grub_script_create_cmdmenu): Skip leading - newlines. - -2006-09-22 Marco Gerards - - * commands/echo.c: New file. - - * conf/i386-pc.rmk (grub_emu_SOURCES): Add `commands/echo.c'. - - * conf/common.rmk (echo_mod_SOURCES): New variable. - (echo_mod_CFLAGS): Likewise. - (echo_mod_LDFLAGS): Likewise. - -2006-09-22 Marco Gerards - - * normal/main.c (get_line): Malloc memory instead of using - preallocated memory. Removed the arguments `cmdline' and - `max_len'. Updated all callers. - -2006-09-22 Marco Gerards - - * conf/i386-efi.rmk (grub_emu_DEPENDENCIES): New variable. - (normal_mod_DEPENDENCIES): Likewise. - - * conf/powerpc-ieee1275.rmk (grub_emu_DEPENDENCIES): Likewise. - (normal_mod_DEPENDENCIES): Likewise. - - * conf/sparc64-ieee1275.rmk (normal_mod_DEPENDENCIES): Likewise. - -2006-09-22 Johan Rydberg - - * genmk.rb: Add DEPENDENCIES variables to modules, utilities, and - programs. - * conf/i386-pc.rmk (grub_emu_DEPENDENCIES): Declare. - (normal_mod_DEPENDENCIES): Likewise. - * conf/i386-pc.mk: Regenerate. - * conf/i386-efi.mk: Likewise - * conf/common.mk: Likewise. - * conf/powerpc-ieee1275.mk: Likewise. - * conf/sparc64-ieee1275.mk: Likewise. - -2006-09-22 Robert Millan - - Sync with i386 version. - * conf/powerpc-ieee1275.rmk (bin_UTILITIES): Remove grub-emu, add grub-mkimage. - * conf/powerpc-ieee1275.rmk (sbin_UTILITIES): Remove grub-mkimage, add grub-emu. - -2006-09-21 Robert Millan - - Import from GRUB Legacy (lib/device.c): - * util/i386/pc/grub-mkdevicemap.c (get_i2o_disk_name): New function. - (init_device_map) [__linux__]: Add support for I2O devices. - -2006-09-14 Marco Gerards - - * conf/i386-pc.rmk (COMMON_LDFLAGS): Use `-m32' instead of - `-melf_i386'. - -2006-09-14 Robert Millan - - * util/i386/pc/grub-install.in: Skip menu.lst when removing - /boot/grub/*.lst. - - * util/i386/pc/getroot.c: Don't recurse into dotdirs (e.g. ".static"). - - * util/i386/pc/grub-mkdevicemap.c: Make sure the floppy device exists - before adding it to device.map. - -2006-08-15 Johan Rydberg - - * genmk.rb: Let GCC generate dependencies the first time it - compiles a file; using the -MD option. - * conf/common.mk: Regenerate. - * conf/i386-pc.mk: Likewise. - * conf/i386-efi.mk: Likewise. - * conf/powerpc-ieee1275.mk: Likewise. - * conf/sparc64-ieee1275.mk: Likewise. - -2006-08-04 Yoshinori K. Okuji - - Move the prototypes of grub_setjmp and grub_longjmp to - cpu/setjmp.h, so that each architecture may specify different - attributes. - - * include/grub/i386/setjmp.h (grub_setjmp): New prototype. - (grub_longjmp): Likewise. - * include/grub/powerpc/setjmp.h (grub_setjmp): Likewise.. - (grub_longjmp): Likewise. - * include/grub/sparc64/setjmp.h (grub_setjmp): Likewise.. - (grub_longjmp): Likewise. - - * include/grub/setjmp.h [!GRUB_UTIL] (grub_setjmp): Removed. - [!GRUB_UTIL] (grub_longjmp): Removed. - -2006-08-01 Pelletier Vincent - - * kern/ieee1275/ieee1275.c (grub_ieee1275_set_color): IEEE1275 - "color!" method does not return any value. - -2006-07-29 Vesa Jaaskelainen - - * include/grub/bitmap.h: New file. - - * include/grub/i386/pc/vbeutil.h: Likewise. - - * video/bitmap.c: Likewise. - - * video/readers/tga.c: Likewise. - - * video/i386/pc/vbeutil.c: Likewise. - - * commands/videotest.c: Code cleanup and updated to reflect to new - video API. - - * term/gfxterm.c: Likewise. - - * video/video.c: Likewise. - - * conf/i386-pc.rmk (pkgdata_MODULES): Added tga.mod and bitmap.mod. - (vbe_mod_SOURCES): Added video/i386/pc/vbeutil.c. - (bitmap_mod_SOURCES): New entry. - (bitmap_mod_CFLAGS): Likewise. - (bitmap_mod_LDFLAGS): Likewise. - (tga_mod_SOURCES): Likewise. - (tga_mod_CFLAGS): Likewise. - (tga_mod_LDFLAGS): Likewise. - - * include/grub/video.h (grub_video_blit_operators): New enum type. - (grub_video_render_target): Changed as forward declaration and moved - actual definition to be video driver specific. - (grub_video_adapter.blit_bitmap): Added blitting operator. - (grub_video_adapter.blit_render_target): Likewise. - (grub_video_blit_bitmap): Likewise. - (grub_video_blit_render_target): Likewise. - - * include/grub/i386/pc/vbe.h (grub_video_render_target): Added - driver specific render target definition. - (grub_video_vbe_map_rgba): Added driver internal helper. - (grub_video_vbe_unmap_color): Updated to use - grub_video_i386_vbeblit_info. - (grub_video_vbe_get_video_ptr): Likewise. - - * include/grub/i386/pc/vbeblit.h - (grub_video_i386_vbeblit_R8G8B8A8_R8G8B8A8): Updated to use - grub_video_i386_vbeblit_info. - (grub_video_i386_vbeblit_R8G8B8_R8G8B8A8): Likewise. - (grub_video_i386_vbeblit_index_R8G8B8A8): Likewise. - (grub_video_i386_vbeblit_R8G8B8A8_R8G8B8): Likewise. - (grub_video_i386_vbeblit_R8G8B8_R8G8B8): Likewise. - (grub_video_i386_vbeblit_index_R8G8B8): Likewise. - (grub_video_i386_vbeblit_index_index): Likewise. - (grub_video_i386_vbeblit_R8G8B8X8_R8G8B8X8): New blitter function. - (grub_video_i386_vbeblit_R8G8B8_R8G8B8X8): Likewise. - (grub_video_i386_vbeblit_index_R8G8B8X8): Likewise. - (grub_video_i386_vbeblit_blend): Added generic blitter for blend - operator. - (grub_video_i386_vbeblit_replace): Added generic blitter for replace - operator. - - * video/i386/pc/vbeblit.c: Updated to reflect changes on - include/grub/i386/pc/vbeblit.h. - - * include/grub/i386/pc/vbefill.h (grub_video_i386_vbefill_R8G8B8A8): - Updated to use grub_video_i386_vbeblit_info. - (grub_video_i386_vbefill_R8G8B8): Likewise. - (grub_video_i386_vbefill_index): Likewise. - (grub_video_i386_vbefill): Added generic filler. - - * video/i386/pc/vbefill.c: Updated to reflect changes on - include/grub/i386/pc/vbefill.h. - - * video/i386/pc/vbe.c (grub_video_vbe_get_video_ptr): Updated to use - grub_video_i386_vbeblit_info. - (grub_video_vbe_unmap_color): Likewise. - (grub_video_vbe_blit_glyph): Likewise. - (grub_video_vbe_scroll): Likewise. - (grub_video_vbe_draw_pixel): Removed function. - (grub_video_vbe_get_pixel): Likewise. - (grub_video_vbe_fill_rect): Moved all blitters to vbefill.c and - updated code to use it. - (common_blitter): Added common blitter for render target and bitmap. - (grub_video_vbe_blit_bitmap): Updated to use common_blitter. - (grub_video_vbe_blit_render_target): Likewise. - -2006-07-30 Johan Rydberg - - * kern/efi/efi.c (grub_efi_set_text_mode): Assume console already - is in text mode if there is no console control protocol instance - available. - -2006-07-29 Vesa Jaaskelainen - - * include/grub/video.h: Code cleanup. - - * include/grub/i386/pc/vbe.h: Likewise. - - * video/i386/pc/vbe.c: Likewise. - - * video/i386/pc/vbeblit.c: Likewise. - - * video/i386/pc/vbefill.c: Likewise. - - * video/video.c: Likewise. Also added more comments. - -2006-07-29 Vesa Jaaskelainen - - * disk/i386/pc/biosdisk.c (struct grub_biosdisk_drp): Moved to ... - (struct grub_biosdisk_dap): Likewise. - - * include/grub/i386/pc/biosdisk.h: ... to here. Also corrected - linkage settings for all functions. - -2006-07-12 Marco Gerards - - * configure.ac (--enable-mm-debug): Fix typo. - - * genkernsyms.sh.in: Use proper quoting for `CC'. - -2006-07-02 Jeroen Dekkers - - * conf/i386-pc.rmk (COMMON_ASFLAGS): Add "-m32". - (normal_mod_ASFLAGS): Remove "-m32". - -2006-06-14 Yoshinori K. Okuji - - * util/misc.c: Include config.h. - [!HAVE_MEMALIGN]: Do not include malloc.h. - (grub_memalign): Use posix_memalign, if present. Then, use - memalign, if present. Otherwise, emit an error. - - * util/grub-emu.c: Do not include malloc.h. - - * include/grub/util/misc.h: Include unistd.h. This is required for - FreeBSD, because off_t is defined in unistd.h. Reported by Harley - D. Eades III . - - * configure.ac (AC_GNU_SOURCE): Added. - (AC_CHECK_FUNCS): Check posix_memalign and memalign for the host - type. - -2006-06-09 Yoshinori K. Okuji - - * loader/i386/pc/linux.c (grub_rescue_cmd_initrd): Make sure that - ADDR_MAX does not exceed GRUB_LINUX_INITRD_MAX_ADDRESS. - -2006-06-07 Jeroen Dekkers - - * include/grub/types.h (grub_host_addr_t): Rename to - grub_target_addr_t. - (grub_host_off_t): Rename to grub_target_off_t. - (grub_host_size_t): Rename to grub_target_size_t. - (grub_host_ssize_t): Rename to grub_target_ssize_t. - Refer to GRUB_TARGET_SIZEOF_VOID_P to define those variables. - - * include/grub/kernel.h (struct grub_module_header): Change type - of OFFSET to grub_target_off_t and type of SIZE to grub_target_size_t. - (grub_module_info): Likewise. - -2006-06-05 Yoshinori K. Okuji - - * loader/i386/pc/linux.c (grub_rescue_cmd_initrd): The conditional - of checking LINUX_MEM_SIZE was reverse. Reported by Jesus - Velazquez . - -2006-06-05 Yoshinori K. Okuji - - Count partitions from 1 instead of 0 in the string representation - of partitions. Still use 0-based internally. - - * partmap/sun.c (grub_sun_is_valid): A cosmetic change. - (sun_partition_map_iterate): Use grub_partition_t instead of - struct grub_partition *. Cast DESC->START_CYLINDER to - grub_uint64_t after converting the endian. - (sun_partition_map_probe): Subtract 1 for PARTNUM. - (sun_partition_map_get_name): Add 1 to P->INDEX. - - * partmap/pc.c (grub_partition_parse): Subtract 1 for - PCDATA->DOS_PART. - (pc_partition_map_get_name): Add 1 into PCDATA->DOS_PART. - - * partmap/gpt.c (gpt_partition_map_iterate): Initialize PARTNO to - zero instead of one. - (gpt_partition_map_probe): Subtract 1 for PARTNUM. - (gpt_partition_map_get_name): Add 1 into P->INDEX. - - * partmap/apple.c (apple_partition_map_iterate): Change the type - of POS to unsigned. - (apple_partition_map_probe): Subtract 1 for PARTNUM. - (apple_partition_map_get_name): Add 1 into P->INDEX. - - * partmap/amiga.c (amiga_partition_map_iterate): Change the type - of POS to unsigned. - (amiga_partition_map_iterate): Cast NEXT to grub_off_t to - calculate the offset of a partition. - (amiga_partition_map_probe): Subtract 1 for PARTNUM. - (amiga_partition_map_get_name): Add 1 into P->INDEX. - - * partmap/acorn.c (acorn_partition_map_find): Change the type of - SECTOR to grub_disk_addr_t. - (acorn_partition_map_iterate): Likewise. - (acorn_partition_map_probe): Subtract 1 for PARTNUM. - Change the type of SECTOR to grub_disk_addr_t. Declare P on the - top. - (acorn_partition_map_get_name): Add 1 into P->INDEX. - - * kern/i386/pc/init.c (make_install_device): Add 1 into - GRUB_INSTALL_DOS_PART. - - * fs/iso9660.c (grub_iso9660_mount): Fixed a reversed - conditional. - -2006-06-04 Yoshinori K. Okuji - - Clean up the code to support 64-bit addressing in disks and - files. This change is not enough for filesystems yet. - - * util/i386/pc/grub-setup.c (struct boot_blocklist): Change the - type of "start" to grub_uint64_t. - (setup): Change the types of KERNEL_SECTOR and FIRST_SECTOR to - grub_disk_addr_t * and grub_disk_addr_t. Fix the format string in - save_first_sector and save_blocklists. Use grub_le_to_cpu64 to - convert addresses. - - * util/i386/pc/biosdisk.c (open_device): Change the type of SECTOR - to grub_disk_addr_t. - - * partmap/gpt.c (gpt_partition_map_iterate): Fix the format - string. - - * partmap/pc.c (pc_partition_map_iterate): Likewise. - - * partmap/amiga.c (amiga_partition_map_iterate): Cast RDSK.MAGIC - to char *. - - * normal/script.c (grub_script_parse): Remove unused MEMFREE. - - * normal/parser.y (YYLTYPE_IS_TRIVIAL): New macro. - - * normal/lexer.c (grub_script_yyerror): Specify unused to LEX. - - * loader/i386/pc/multiboot.c (grub_multiboot_load_elf64): Cast -1 - to grub_off_t, to detect an error from grub_file_seek. - (grub_multiboot_load_elf32): Likewise. - - * kern/misc.c (grub_strtoul): Use grub_strtoull. Return the - maximum unsigned long value when an overflow is detected. - (grub_strtoull): New function. - (grub_divmod64): Likewise. - (grub_lltoa): use grub_divmod64. - - * kern/fs.c (struct grub_fs_block): Change the type of "offset" to - grub_disk_addr_t. - (grub_fs_blocklist_open): Increase P if P is not NULL to advance - the pointer to next character. Use grub_strtoull instead of - grub_strtoul. - (grub_fs_blocklist_read): Change the types of SECTOR, OFFSET and - SIZE to grub_disk_addr_t, grub_off_t and grub_size_t, - respectively. - - * kern/file.c (grub_file_read): Prevent an overflow of LEN, as the - return value is signed. - (grub_file_seek): Change the type of OLD to grub_off_t. Do not - test if OFFSET is less than zero, as OFFSET is unsigned now. - - * kern/disk.c (struct grub_disk_cache): Change the type of - "sector" to grub_disk_addr_t. - (grub_disk_cache_get_index): Change the type of SECTOR to - grub_disk_addr_t. Calculate the hash with SECTOR casted to - unsigned after shifting. - (grub_disk_cache_invalidate): Change the type of SECTOR to - grub_disk_addr_t. - (grub_disk_cache_unlock): Likewise. - (grub_disk_cache_store): Likewise. - (grub_disk_check_range): Change the types of SECTOR, OFFSET, SIZE, - START and LEN to grub_disk_addr_t *, grub_off_t *, grub_size_t, - grub_disk_addr_t and grub_uint64_t, respectively. - (grub_disk_read): Use an unsigned variable REAL_OFFSET for the - body, as the value of OFFSET is tweaked by - grub_disk_check_range. Change the types of START_SECTOR, LEN and - POS to grub_disk_addr_t, grub_size_t and grub_size_t, - respectively. - (grub_disk_write): Use an unsigned variable REAL_OFFSET for the - body, as the value of OFFSET is tweaked by - grub_disk_check_range. Change the types of LEN and N to - grub_size_t. - - * io/gzio.c (struct grub_gzio): Change the types of "data_offset" - and "saved_offset" to grub_off_t. - (test_header): Cast BUF to char *. - (get_byte): Cast GZIO->DATA_OFFSET to grub_off_t. Cast GZIO->INBUF - to char *. - (grub_gzio_read): Change the types of OFFSET and SIZE to - grub_off_t and grub_size_t, respectively. - - * include/grub/i386/pc/boot.h (GRUB_BOOT_MACHINE_FORCE_LBA): - Removed. - (GRUB_BOOT_MACHINE_BOOT_DRIVE): Changed to 0x4c. - (GRUB_BOOT_MACHINE_KERNEL_ADDRESS): Changed to 0x40. - (GRUB_BOOT_MACHINE_KERNEL_SEGMENT): Changed to 0x42. - (GRUB_BOOT_MACHINE_DRIVE_CHECK): Changed to 0x4e. - (GRUB_BOOT_MACHINE_LIST_SIZE): Increased to 12. - - * include/grub/types.h (grub_off_t): Unconditionally set to - grub_uint64_t. - (grub_disk_addr_t): Changed to grub_uint64_t. - - * include/grub/partition.h (struct grub_partition): Change the - types of "start", "len" and "offset" to grub_disk_addr_t, - grub_uint64_t and grub_disk_addr_t, respectively. - (grub_partition_get_start): Return grub_disk_addr_t. - (grub_partition_get_len): Return grub_uint64_t. - - * include/grub/misc.h (grub_strtoull): New prototype. - (grub_divmod64): Likewise. - - * include/grub/fshelp.h (grub_fshelp_read_file): Change the types - of SECTOR, LEN and FILESIZE to grub_disk_addr_t, grub_size_t and - grub_off_t, respectively. - All callers and references changed. - - * include/grub/fs.h (struct grub_fs): Change the type of LEN to - grub_size_t in "read". - All callers and references changed. - - * include/grub/file.h (struct grub_file): Change the types of - "offset" and "size" to grub_off_t and grub_off_t, - respectively. Change the type of SECTOR to grub_disk_addr_t in - "read_hook". - (grub_file_read): Change the type of LEN to grub_size_t. - (grub_file_seek): Return grub_off_t. Change the type of OFFSET to - grub_off_t. - (grub_file_size): Return grub_off_t. - (grub_file_tell): Likewise. - All callers and references changed. - - * include/grub/disk.h (struct grub_disk_dev): Change the types of - SECTOR and SIZE to grub_disk_addr_t and grub_size_t in "read" and - "write". - (struct grub_disk): Change the type of "total_sectors" to - grub_uint64_t. Change the type of SECTOR to grub_disk_addr_t in - "read_hook". - (grub_disk_read): Change the types of SECTOR, OFFSET and SIZE to - grub_disk_addr_t, grub_off_t and grub_size_t, respectively. - (grub_disk_write): Likewise. - All callers and references changed. - - * fs/iso9660.c (grub_iso9660_susp_iterate): Cast parameters to - char * for grub_strncmp to silence gcc. - (grub_iso9660_mount): Likewise. - (grub_iso9660_mount): Likewise. - (grub_iso9660_read_symlink): Likewise. Also, remove the nonsense - return statement. - (grub_iso9660_iterate_dir): Likewise. - (grub_iso9660_label): Cast DATA->VOLDESC.VOLNAME to char *. - - * fs/hfs.c (grub_hfs_read_file): Change the types of SECTOR and - LEN to grub_disk_addr_t and grub_size_t, respectively. - - * fs/hfsplus.c (grub_hfsplus_read_file): Likewise. - - * fs/jfs.c (grub_jfs_read_file): Likewise. - - * fs/minix.c (grub_jfs_read_file): Likewise. - - * fs/sfs.c (grub_jfs_read_file): Likewise. - - * fs/ufs.c (grub_jfs_read_file): Likewise. - - * fs/xfs.c (grub_jfs_read_file): Likewise. - - * fs/fat.c (grub_fat_read_data): Change the types of SECTOR, LEN - and SIZE to grub_disk_addr_t, grub_size_t and grub_size_t, - respectively. - - * fs/ext2.c (grub_ext2_read_block): When an error happens, set - BLKNR to -1 instead of returning GRUB_ERRNO. - (grub_ext2_read_file): Change the types of SECTOR and - LEN to grub_disk_addr_t and grub_size_t, respectively. - - * fs/affs.c (grub_affs_read_file): Change the types of SECTOR and - LEN to grub_disk_addr_t and grub_size_t, respectively. - - * font/manager.c (grub_font_get_glyph): Cast BITMAP to char * for - grub_file_read. - - * disk/ieee1275/ofdisk.c (grub_ofdisk_read): Fix the format - string. Do not cast SECTOR explicitly. - - * disk/i386/pc/biosdisk.c (grub_biosdisk_open): Change the type of - TOTAL_SECTORS to grub_uint64_t. Do not mask DRP->TOTAL_SECTORS. - (grub_biosdisk_rw): Change the types of SECTOR and SIZE to - grub_disk_addr_t and grub_size_t, respectively. If the sector is - over 2TB and LBA mode is not supported, raise an error. - (get_safe_sectors): New function. - (grub_biosdisk_read): Use get_safe_sectors. - (grub_biosdisk_write): Likewise. - - * disk/efi/efidisk.c (grub_efidisk_read): Fix the format string. - (grub_efidisk_write): Likewise. - - * disk/loopback.c (delete_loopback): Cosmetic changes. - (grub_cmd_loopback): Likewise. Also, test NEWDEV->FILENAME - correctly. - (grub_loopback_open): Likewise. - (grub_loopback_read): Likewise. Also, change the type of POS to - grub_off_t, and fix the usage of grub_memset. - - * commands/i386/pc/play.c: Include grub/machine/time.h. - - * commands/ls.c (grub_ls_list_files): Use "llu" instead of "d" to - print FILE->SIZE. - - * commands/configfile.c: Include grub/env.h. - - * commands/cmp.c (grub_cmd_cmp): Do not use ERR, but use - GRUB_ERRNO directly instead. Change the type of POS to - grub_off_t. Follow the coding standard. - - * commands/blocklist.c: Include grub/partition.h. - (grub_cmd_blocklist): Return an error if the underlying device is - not a disk. Take the starting sector of a partition into account, - if a partition is used. - - * boot/i386/pc/diskboot.S (bootloop): Adapted to the new offset of - a length field. - (lba_mode): Support 64-bit addresses. - (chs_mode): Likewise. - (copy_buffer): Adapted to the new offsets of a length field and a - segment field. - (blocklist_default_start): Allocate 64-bit space. - - * boot/i386/pc/boot.S (force_lba): Removed. - (boot_drive): Moved to under KERNEL_SECTOR. - (kernel_sector): Moved to under KERNEL_SEGMENT. Allocate 64-bit - space. - (real_start): Set %si earlier. Remove code for FORCE_LBA, since it - is useless. - (lba_mode): Refactored to support a 64-bit address. More size - optimization. - (setup_sectors): Likewise. - -2006-06-04 Yoshinori K. Okuji - - * DISTLIST: Added include/grub/i386/linux.h. Removed - include/grub/i386/pc/linux.h - - * configure.ac (AC_INIT): Bumped to 1.94. - - * config.guess: Updated from gnulib. - * config.sub: Likewise. - * install-sh: Likewise. - * mkinstalldirs: Likewise. - -2006-06-02 Yoshinori K. Okuji - - * conf/common.rmk (grub_modules_init.lst): Depended on - grub_emu_SOURCES, excluding grub_emu_init.c, instead of - MODSRCFILES. - - * genmk.rb (PModule::rule): Reverted the previous change. - -2006-06-02 Yoshinori K. Okuji - - * conf/common.rmk (grub_modules_init.lst): Depends on - $(MODSRCFILES). Grep only the files in $(MODSRCFILES). Make sure - that the target does not exist before producing. - (grub_modules_init.h): Remove the target before generating. - (grub_emu_init.c): Likewise. - - * genmk.rb (PModule::rule): Add source files into MODSRCFILES. - -2006-05-31 Jeroen Dekkers - - * configure.ac: Don't set host_m32 for x86_64. Also reset LIBS - for the target-specific tests. Make sure that we also have the - up-to-date target variables for those tests. - -2006-05-31 Yoshinori K. Okuji - - * genmk.rb (Image::rule): Prefix CFLAGS or ASFLAGS with TARGET_. - (PModule::rule): Likewise. - -2006-05-31 Yoshinori K. Okuji - - * genmk.rb (Image::rule): Set FLAG to CFLAGS or ASFLAGS instead of - TARGET_CFLAGS or TARGET_ASFLAGS. There is no reason why - target-specific flags should be prefixed. - (PModule::rule): Likewise. - -2006-05-30 Yoshinori K. Okuji - - * configure.ac (CMP): Check if cmp is available explicitly. - -2006-05-29 Yoshinori K. Okuji - - * util/powerpc/ieee1275/grub-install.in (host_cpu): Removed. - (target_cpu): New variable. - (pkglibdir): Use target_cpu instead of host_cpu. - - * util/i386/pc/grub-install.in (host_cpu): Removed. - (target_cpu): New variable. - (pkglibdir): Use target_cpu instead of host_cpu. - - * util/genmoddep.c: Removed. - - * kern/efi/mm.c (filter_memory_map): Use GRUB_CPU_SIZEOF_VOID_P - instead of GRUB_HOST_SIZEOF_VOID_P. - * kern/dl.c: Likewise. - - * include/grub/i386/types.h (GRUB_HOST_SIZEOF_VOID_P): Renamed to - ... - (GRUB_TARGET_SIZEOF_VOID_P): ... this. - (GRUB_HOST_SIZEOF_LONG): Renamed to ... - (GRUB_TARGET_SIZEOF_LONG): ... this. - (GRUB_HOST_WORDS_BIGENDIAN): Renamed to ... - (GRUB_TARGET_WORDS_BIGENDIAN): ... this. - * include/grub/powerpc/types.h (GRUB_HOST_SIZEOF_VOID_P): Renamed - to ... - (GRUB_TARGET_SIZEOF_VOID_P): ... this. - (GRUB_HOST_SIZEOF_LONG): Renamed to ... - (GRUB_TARGET_SIZEOF_LONG): ... this. - (GRUB_HOST_WORDS_BIGENDIAN): Renamed to ... - (GRUB_TARGET_WORDS_BIGENDIAN): ... this. - * include/grub/sparc64/types.h (GRUB_HOST_SIZEOF_VOID_P): Renamed - to ... - (GRUB_TARGET_SIZEOF_VOID_P): ... this. - (GRUB_HOST_SIZEOF_LONG): Renamed to ... - (GRUB_TARGET_SIZEOF_LONG): ... this. - (GRUB_HOST_WORDS_BIGENDIAN): Renamed to ... - (GRUB_TARGET_WORDS_BIGENDIAN): ... this. - - * include/grub/types.h [!GRUB_UTIL] (GRUB_CPU_SIZEOF_VOID_P): Use - GRUB_TARGET_SIZEOF_VOID_P instead of GRUB_HOST_SIZEOF_VOID_P. - [!GRUB_UTIL] (GRUB_CPU_SIZEOF_LONG): Use GRUB_TARGET_SIZEOF_LONG - instead of GRUB_HOST_SIZEOF_LONG. - [!GRUB_UTIL]: Refer to GRUB_TARGET_WORDS_BIGENDIAN instead of - GRUB_HOST_WORDS_BIGENDIAN to define or undefine - GRUB_CPU_WORDS_BIGENDIAN. - Refer to SIZEOF_VOID_P instead of GRUB_HOST_SIZEOF_VOID_P to - define grub_host_addr_t, grub_host_off_t, grub_host_size_t and - grub_host_ssize_t. - - * conf/i386-efi.rmk (noinst_UTILITIES): Removed. - (genmoddep_SOURCES): Likewise. - * conf/i386-pc.rmk (noinst_UTILITIES): Likewise. - (genmoddep_SOURCES): Likewise. - * conf/conf/powerpc-ieee1275.rmk (noinst_UTILITIES): Likewise. - (genmoddep_SOURCES): Likewise. - * conf/conf/conf/sparc64-ieee1275.rmk (noinst_UTILITIES): - Likewise. - (genmoddep_SOURCES): Likewise. - - * genmoddep.awk: New file. - - * genmk.rb (Image::rule): Use TARGET_CC, TARGET_CPPFLAGS, - TARGET_CFLAGS, TARGET_ASFLAGS and TARGET_LDFLAGS instead of CC, - CPPFLAGS, CFLAGS, ASFLAGS and LDFLAGS, respectively. - (PModule::rule): Likewise. - (Program::rule): Likewise. - (Utility::rule): Use CC, CPPFLAGS, CFLAGS and LDFLAGS instead of - BUILD_CC, BUILD_CPPFLAGS, BUILD_CFLAGS and BUILD_LDFLAGS, - respectively. - - * configure.ac: Rewritten intensively to use host and target - instead of build and host, respectively. - - * Makefile.in (pkglibdir): Use target_cpu instead of host_cpu. - (host_cpu): Removed. - (target_cpu): New variable. - (CPPFLAGS): Added @CPPFLAGS@ and -DGRUB_LIBDIR=\"$(pkglibdir)\". - (BUILD_CC): Removed. - (BUILD_CFLAGS): Likewise. - (BUILD_CPPFLAGS): Likewise. - (TARGET_CC): New variable. - (TARGET_CFLAGS): Likewise. - (TARGET_CPPFLAGS): Likewise. - (TARGET_LDFLAGS): Likewise. - (AWK): Likewise. - (include): Use target_cpu instead of host_cpu. - (moddep.lst:): Use genmoddep.awk instead of genmoddep. - - * DISTLIST: Added genmoddep.awk. Removed util/genmoddep.c. - -2006-05-29 Vesa Jaaskelainen - - * include/grub/script.h (grub_script_cmdif): Renamed field 'bool' to - 'exec_to_evaluate'. Renamed field 'true' to 'exec_on_true'. Renamed - field 'false' to 'exec_on_false'. - (grub_script_create_cmdif): Renamed argument names to reflect above - changes. - - * normal/execute.c (grub_script_execute_cmdif): Likewise. - - * normal/script.c (grub_script_create_cmdif): Likewise. - -2006-05-28 Yoshinori K. Okuji - - * fs/hfsplus.c (grub_hfsplus_btree_recoffset): Moved to near the - top. - (grub_hfsplus_btree_recptr): Likewise. - (grub_hfsplus_find_block): Do not take RETRY any longer. Use - FILEBLOCK both to pass a block number and store next block - number. - (grub_hfsplus_read_block): Rewritten heavily to support an extent - overflow file correctly. Specify errors appropriately, because - fshelp expects that GRUB_ERRNO is set when fails. Reuse - grub_hfsplus_btree_recptr to get the pointer to a found key. - (grub_hfsplus_btree_search): Return 1 instead of 0 when no match - is found. - - * conf/i386-efi.rmk (pkgdata_MODULES): Added _linux.mod and - linux.mod. - (_linux_mod_SOURCES): New variable. - (_linux_mod_CFLAGS): Likewise. - (_linux_mod_LDFLAGS): Likewise. - (linux_mod_SOURCES): Likewise. - (linux_mod_CFLAGS): Likewise. - (linux_mod_LDFLAGS): Likewise. - - * DISTLIST: Added loader/i386/efi/linux.c, - loader/i386/efi/linux_normal.c and - include/grub/i386/efi/loader.h. - - * loader/i386/efi/linux.c: New file. - * loader/i386/efi/linux_normal.c: Likewise. - * include/grub/i386/efi/loader.h: Likewise. - -2006-05-27 Yoshinori K. Okuji - - * commands/blocklist.c: New file. - - * DISTLIST: Added commands/blocklist.c. - - * term/efi/console.c (grub_console_highlight_color): Use a lighter - color for the background, and a darker color for the foreground. - (grub_console_checkkey): Return READ_KEY. - (grub_console_cls): Set the background to - GRUB_EFI_BACKGROUND_BLACK temporarily to clean out the screen. - - * kern/efi/efi.c (grub_efi_exit_boot_services): New function. - - * include/grub/i386/linux.h (struct linux_kernel_params): Fixed - the size of "padding5", "hd0_drive_info" and "hd1_drive_info". - - * include/grub/efi/efi.h (grub_efi_exit_boot_services): New - prototype. - - * include/grub/efi/api.h (GRUB_EFI_TEXT_ATTR): Do not shift - BG. The spec is wrong again. - - * include/grub/normal.h [GRUB_UTIL] (grub_blocklist_init): New - prototype. - [GRUB_UTIL] (grub_blocklist_fini): Likewise. - - * conf/i386-pc.rmk (grub_emu_SOURCES): Added - commands/blocklist.c. - * conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Likewise. - - * conf/common.rmk (pkgdata_MODULES): Added blocklist.mod. - (blocklist_mod_SOURCES): New variable. - (blocklist_mod_CFLAGS): Likewise. - (blocklist_mod_LDFLAGS): Likewise. - -2006-05-20 Yoshinori K. Okuji - - * boot/i386/pc/boot.S (real_start): Set %si earlier to eliminate - duplication. - (lba_mode): Use %eax more intensively to reduce the code size. - -2006-05-20 Marco Gerards - - * normal/lexer.c (grub_script_yylex): Don't filter out newlines. - - * normal/parser.y (commandblock): Defined as . A subroutine - for `menuentry'. - (script): Accept leading newlines. - (newlines): New rule to describe 0 or more newlines. - (commands): Accept `command' with trailing newline. Fixed the - order in which arguments were passed to `grub_script_add_cmd'. - Accept commands separated by newlines. - (function): Changed to accept newlines. - (menuentry) Rewritten. - - * normal/script.c (grub_script_create_cmdmenu): Add new entries in - front of the list, instead of to the end. - -2006-05-19 Yoshinori K. Okuji - - * util/i386/pc/grub-install.in (bindir): New variable. - (grub_mkimage): Use BINDIR instead of SBINDIR. Reported by Lee - Shaver . - -2006-05-14 Yoshinori K. Okuji - - * kern/i386/pc/startup.S: Include grub/cpu/linux.h instead of - grub/machine/linux.h - * loader/i386/pc/linux.c: Likewise. - - * include/grub/i386/pc/linux.h: Moved to ... - * include/grub/i386/linux.h: ... here. - - * include/grub/i386/linux.h (struct linux_kernel_params): New - struct. - -2006-05-09 Vesa Jaaskelainen - - * video/i386/pc/vbe.c (grub_video_vbe_fill_rect): Corrected bounds - checking. - (grub_video_vbe_blit_glyph): Likewise. - (grub_video_vbe_blit_bitmap): Likewise. - (grub_video_vbe_blit_render_target): Likewise. - -2006-05-09 Yoshinori K. Okuji - - * configure.ac (--with-platform): Properly quote the square - brackets. - -2006-05-08 Marco Gerards - - * conf/powerpc-ieee1275.rmk (grubof_HEADERS): Renamed from - this... - (kernel_elf_HEADERS): ...to this. Updated all users. - (grubof_symlist.c): Renamed from this... - (kernel_elf_symlist.c): ...to this. Updated all users. - (pkgdata_PROGRAMS): Changed `grubof' to `kernel.elf'. - (grubof_SOURCES): Renamed from this... - (kernel_elf_SOURCES): ...to this. - (grubof_HEADERS): Renamed from this... - (kernel_elf_HEADERS): ...to this. - (grubof_CFLAGS): Renamed from this... - (kernel_elf_CFLAGS): ...to this. - (grubof_ASFLAGS): Renamed from this... - (kernel_elf_ASFLAGS): ...to this. - (grubof_LDFLAGS): Renamed from this... - (kernel_elf_LDFLAGS): ...to this. - - * conf/sparc64-ieee1275.rmk (grubof_HEADERS): Renamed from - this... - (kernel_elf_HEADERS): ...to this. Updated all users. - (grubof_symlist.c): Renamed from this... - (kernel_elf_symlist.c): ...to this. Updated all users. - (pkgdata_PROGRAMS): Changed `grubof' to `kernel.elf'. - (grubof_SOURCES): Renamed from this... - (kernel_elf_SOURCES): ...to this. - (grubof_HEADERS): Renamed from this... - (kernel_elf_HEADERS): ...to this. - (grubof_CFLAGS): Renamed from this... - (kernel_elf_CFLAGS): ...to this. - (grubof_ASFLAGS): Renamed from this... - (kernel_elf_ASFLAGS): ...to this. - (grubof_LDFLAGS): Renamed from this... - (kernel_elf_LDFLAGS): ...to this. - - * util/powerpc/ieee1275/grub-mkimage.c (add_segments): Use - `kernel.elf' instead of `grubof'. - -2006-05-08 Yoshinori K. Okuji - - Add --with-platform to configure. Use pkglibdir instead of - pkgdatadir. This is reported by Roger Leigh. - - * util/powerpc/ieee1275/grub-install.in (datadir): Removed. - (host_vendor): Likewise. - (host_os): Likewise. - (pkgdatadir): Likewise. - (platform): New variable. - (pkglibdir): Likewise. - Use PKGLIBDIR instead of PKGDATADIR. - - * util/i386/pc/grub-install.in (datadir): Removed. - (host_vendor): Likewise. - (host_os): Likewise. - (pkgdatadir): Likewise. - (platform): New variable. - (pkglibdir): Likewise. - Use PKGLIBDIR instead of PKGDATADIR. - - * util/powerpc/ieee1275/grub-mkimage.c (usage): Use GRUB_LIBDIR - instead of GRUB_DATADIR. - (main): Likewise. - * util/i386/pc/grub-mkimage.c (usage): Likewise. - (main): Likewise. - * util/i386/efi/grub-mkimage.c (usage): Likewise. - (main): Likewise. - - * configure.ac (--with-platform): New option. - Use PLATFORM instead of HOST_VENDOR to specify a platform. - - * Makefile.in: Include a makefile based on PLATFORM instead of - HOST_VENDOR. - (pkgdatadir): Not appended by the machine type. - (pkglibdir): Appended by the machine type. - (host_vendor): Removed. - (platform): New variable. - (BUILD_CPPFLAGS): Specify GRUB_LIBDIR instead of GRUB_DATADIR. - (install-local): Use PKGLIBDIR instead of PKGDATADIR. - (uninstall): Likewise. - -2006-05-07 Yoshinori K. Okuji - - Use the environment context in the menu. Remove the commands - "default" and "timeout", and use variables instead. - - * normal/menu.c: Include grub/env.h. - (print_entry): Cast TITLE to silence gcc. - (get_timeout): New function. - (set_timeout): Likewise. - (get_entry_number): Likewise. - (run_menu): Use a default entry, a fallback entry and a timeout - in the environment variables "default", "fallback" and - "timeout". Also, tweak the default entry if it is not within the - current menu entries. - (grub_menu_run): Use a fallback entry in the environment variable - "fallback". - - * normal/main.c (read_config_file): Do not initialize - NEWMENU->DEFAULT_ENTRY, NEWMENU->FALLBACK_ENTRY or - NEWMENU->TIMEOUT. - (grub_normal_execute): Use a data slot to store the menu. - - * include/grub/normal.h (struct grub_menu): Removed default_entry, - fallback_entry and timeout. - (struct grub_menu_list): Removed. - (grub_menu_list_t): Likewise. - (struct grub_context): Likewise. - (grub_context_t): Likewise. - (grub_context_get): Likewise. - (grub_context_get_current_menu): Likewise. - (grub_context_push_menu): Likewise. - (grub_context_pop_menu): Likewise. - (grub_default_init): Likewise. - (grub_default_fini): Likewise. - (grub_timeout_init): Likewise. - (grub_timeout_fini): Likewise. - - * conf/sparc64-ieee1275.rmk (pkgdata_MODULES): Removed default.mod - and timeout.mod. - (normal_mod_SOURCES): Removed normal/context.c. - - * conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Removed - commands/default.c, commands/timeout.c and normal/context.c. - (normal_mod_SOURCES): Removed normal/context.c. - - * conf/i386-pc.rmk (grub_emu_SOURCES): Removed commands/default.c, - commands/timeout.c and normal/context.c. - (normal_mod_SOURCES): Removed normal/context.c. - - * conf/i386-efi.rmk (grub_emu_SOURCES): Removed - commands/default.c, commands/timeout.c and normal/context.c. - (normal_mod_SOURCES): Removed normal/context.c. - - * conf/common.rmk (pkgdata_MODULES): Removed default.mod and - timeout.mod. - (default_mod_SOURCES): Removed. - (default_mod_CFLAGS): Likewise. - (default_mod_LDFLAGS): Likewise. - (timeout_mod_SOURCES): Removed. - (timeout_mod_CFLAGS): Likewise. - (timeout_mod_LDFLAGS): Likewise. - - * DISTLIST: Removed commands/default.c, commands/timeout.c and - normal/context.c. - - * commands/default.c: Removed. - * commands/timeout.c: Likewise. - * normal/context.c: Likewise. - -2006-05-07 Vesa Jaaskelainen - - * kern/i386/pc/startup.S (grub_exit): Added missing .code32 tag. - -2006-05-02 Yoshinori K. Okuji - - * kern/env.c (struct grub_env_context): Removed "sorted". Renamed - "next" to "prev" for readability. - (struct grub_env_sorted_var): New struct. - (grub_env_context): Renamed to ... - (initial_context): ... this. - (grub_env_var_context): Renamed to ... - (current_context): ... this. - (grub_env_find): Look only at CURRENT_CONTEXT. - (grub_env_context_open): Rewritten to copy exported variables from - previous context. - (grub_env_context_close): Rewritten according to the new - scheme. Also, add an assertion to prevent the initial context from - removed. - (grub_env_insert): Removed the code for the sorted list. - (grub_env_remove): Likewise. - (grub_env_export): Simply mark the variable with - GRUB_ENV_VAR_GLOBAL. - (grub_env_set): A cosmetic change for naming consistency. - (grub_env_get): Likewise. - (grub_env_unset): Likewise. - (grub_env_iterate): Rewritten to sort variables within this - function. - (grub_register_variable_hook): Fixed for naming consistency. Call - grub_env_find again, only if NAME is not found at the first time. - (mangle_data_slot_name): New function. - (grub_env_set_data_slot): Likewise. - (grub_env_get_data_slot): Likewise. - (grub_env_unset_data_slot): Likewise. - - * include/grub/env.h (grub_env_var_type): New enum. - (GRUB_ENV_VAR_LOCAL): New constant. - (GRUB_ENV_VAR_GLOBAL): Likewise. - (GRUB_ENV_VAR_DATA): Likewise. - (struct grub_env_var): Removed "sort_next" and "sort_prevp". Added - "type". - (grub_env_set): Replace VAR with NAME for consistency. - (grub_register_variable_hook): Likewise. - (grub_env_export): Specify the name of the argument. - (grub_env_set_data_slot): New prototype. - (grub_env_get_data_slot): Likewise. - (grub_env_unset_data_slot): Likewise. - -2006-04-30 Yoshinori K. Okuji - - Extend the loader so that GRUB can accept a loader which comes - back to GRUB when a loaded image exits. Also, this change adds - support for a chainloader on EFI. - - * term/efi/console.c: Include grub/misc.h. - (grub_console_checkkey): Display a scan code on the top for - debugging. This will be removed once the EFI port gets stable. - Correct the scan code mapping. - - * kern/efi/mm.c (sort_memory_map): Sort in a descending order to - allocate memory from larger regions, in order to reduce the number - of allocated regions. Otherwise, the MacOSX loader panics. - (filter_memory_map): Avoid less than 1MB for compatibility with - other loaders. - (add_memory_regions): Allocate from the tail of a region, if - possible, to avoid allocating a region near to 1MB, for the MacOSX - loader. - - * kern/efi/init.c (grub_efi_set_prefix): Specify - GRUB_EFI_IMAGE_HANDLE to grub_efi_get_loaded_image. - - * kern/efi/efi.c (grub_efi_get_loaded_image): Accept a new - argument IMAGE_HANDLE and specify it to get a loaded image. - (grub_arch_modules_addr): Specify GRUB_EFI_IMAGE_HANDLE to - grub_efi_get_loaded_image. - (grub_efi_get_filename): Divide the length by the size of - grub_efi_char16_t. - (grub_efi_get_device_path): New function. - (grub_efi_print_device_path): Print End Device Path nodes. Divide - the length by the size of grub_efi_char16_t for a file path device - path node. - - * kern/loader.c (grub_loader_noreturn): New variable. - (grub_loader_set): Accept a new argument NORETURN. Set - GRUB_LOADER_NORETURN to NORETURN. - All callers changed. - (grub_loader_boot): If GRUB_LOADER_NORETURN is false, do not call - grub_machine_fini. - - * include/grub/efi/efi.h (grub_efi_get_device_path): New - prototype. - (grub_efi_get_loaded_image): Take an argument to specify an image - handle. - - * include/grub/loader.h (grub_loader_set): Added one more argument - NORETURN. - - * disk/efi/efidisk.c (make_devices): Use grub_efi_get_device_path - instead of grub_efi_open_protocol. - (grub_efidisk_get_device_name): Likewise. - (grub_efidisk_close): Print a newline. - (grub_efidisk_get_device_handle): Fixed to use - GRUB_EFI_DEVICE_PATH_SUBTYPE instead of - GRUB_EFI_DEVICE_PATH_TYPE. - - * disk/efi/efidisk.c (device_path_guid): Moved to ... - * kern/efi/efi.c (device_path_guid): ... here. - - * conf/i386-efi.rmk (pkgdata_MODULES): Added _chain.mod and - chain.mod. - (kernel_mod_HEADERS): Added efi/disk.h. - (_chain_mod_SOURCES): New variable. - (_chain_mod_CFLAGS): Likewise. - (_chain_mod_LDFLAGS): Likewise. - (chain_mod_SOURCES): Likewise. - (chain_mod_CFLAGS): Likewise. - (chain_mod_LDFLAGS): Likewise. - - * DISTLIST: Added include/grub/efi/chainloader.h, - loader/efi/chainloader.c and loader/efi/chainloader_normal.c. - - * include/grub/efi/chainloader.h: New file. - * loader/efi/chainloader.c: Likewise. - * loader/efi/chainloader_normal.c: Likewise. - -2006-04-30 Marco Gerards - - * commands/configfile.c (grub_cmd_source): New function. - (GRUB_MOD_INIT): Register the commands `source' and `.'. - (GRUB_MOD_FINI): De-register the commands `source' and `.'. - -2006-04-30 Marco Gerards - - * normal/execute.c (grub_script_execute_cmd): Change the return - type to `grub_err_t'. Correctly return the error. - (grub_script_execute_cmdline): In case a command line is not a - command or a function, try to interpret it as an assignment. - -2006-04-30 Yoshinori K. Okuji - - * fs/hfsplus.c (grub_hfsplus_read_block): Fixed a memory leak. - (grub_hfsplus_iterate_dir): Reordered to skip unknown nodes. Also, - skip a node whose name is obviously invalid as UTF-16, - i.e. contains a NUL character. Stop the iteration when the last - directory entry is found. Instead of using the return value of - grub_hfsplus_btree_iterate_node, store the value in RET and use - it, because the iterator can be stopped by the last directory - entry. - -2006-04-30 Marco Gerards - - * include/grub/env.h (grub_env_export): New prototype. Reported - by Jan C. Kleinsorge . - -2006-04-30 Marco Gerards - - * fs/hfsplus.c (grub_hfsplus_iterate_dir): Correctly calculate the - size of the extents in a catalog file record. - -2006-04-29 Marco Gerards - - * commands/configfile.c (grub_cmd_configfile): Execute the - configfile within its own context. - - * include/grub/env.h (grub_env_context_open): New prototype. - (grub_env_context_close): Likewise. - - * kern/env.c (grub_env): Removed. - (grub_env_sorted): Likewise. - (grub_env_context): New variable. - (grub_env_var_context): Likewise. - (grub_env_find): Search both the active context and the global - context. - (grub_env_context_open): New function. - (grub_env_context_close): Likewise. - (grub_env_insert): Likewise. - (grub_env_remove): Likewise. - (grub_env_export): Likewise. - (grub_env_set): Changed to use helper functions to avoid code - duplication. - (grub_env_iterate): Rewritten so both the current context and the - global context are being used. - - * normal/command.c (export_command): New function. - (grub_command_init): Register the `export' function. - -2006-04-26 Yoshinori K. Okuji - - * util/i386/pc/grub-mkimage.c (compress_kernel): Cast arguments - explicitly to suppress gcc's warnings. - * fs/fat.c (grub_fat_find_dir): Likewise. - (grub_fat_label): Likewise. - * fs/xfs.c (grub_xfs_read_inode): Likewise. - (grub_xfs_mount): Likewise. - (grub_xfs_label): Likewise. - * fs/affs.c (grub_affs_mount): Likewise. - (grub_affs_label): Likewise. - (grub_affs_iterate_dir): Likewise. - * fs/sfs.c (grub_sfs_mount): Likewise. - (grub_sfs_iterate_dir): Likewise. - * fs/ufs.c (grub_ufs_lookup_symlink): Likewise. - * fs/hfs.c (grub_hfs_mount): Likewise. - (grub_hfs_cmp_catkeys): Likewise. - (grub_hfs_find_dir): Likewise. - (grub_hfs_dir): Likewise. - (grub_hfs_label): Likewise. - * fs/jfs.c (grub_jfs_mount): Likewise. - (grub_jfs_opendir): Likewise. - (grub_jfs_getent): Likewise. - (grub_jfs_lookup_symlink): Likewise. - (grub_jfs_label): Likewise. - * fs/hfsplus.c (grub_hfsplus_cmp_catkey): Likewise. - (grub_hfsplus_iterate_dir): Likewise. - (grub_hfsplus_btree_iterate_node): Made static. - - * util/grub-emu.c (prefix): New variable. - (grub_machine_set_prefix): New function. - (main): Do not set the environment variable "prefix" here. Only - set PREFIX, which is used later by grub_machine_set_prefix. - - * include/grub/video.h: Do not include grub/symbol.h. - (grub_video_register): Not exported. This symbol is not defined in - the kernel. - (grub_video_unregister): Likewise. - (grub_video_iterate): Likewise. - (grub_video_setup): Likewise. - (grub_video_restore): Likewise. - (grub_video_get_info): Likewise. - (grub_video_get_blit_format): Likewise. - (grub_video_set_palette): Likewise. - (grub_video_get_palette): Likewise. - (grub_video_set_viewport): Likewise. - (grub_video_get_viewport): Likewise. - (grub_video_map_color): Likewise. - (grub_video_map_rgb): Likewise. - (grub_video_map_rgba): Likewise. - (grub_video_fill_rect): Likewise. - (grub_video_blit_glyph): Likewise. - (grub_video_blit_bitmap): Likewise. - (grub_video_blit_render_target): Likewise. - (grub_video_scroll): Likewise. - (grub_video_swap_buffers): Likewise. - (grub_video_create_render_target): Likewise. - (grub_video_delete_render_target): Likewise. - (grub_video_set_active_render_target): Likewise. - - * include/grub/symbol.h [GRUB_SYMBOL_GENERATOR] (EXPORT_FUNC): - Undefined. - [GRUB_SYMBOL_GENERATOR] (EXPORT_VAR): Likewise. - - * conf/sparc64-ieee1275.rmk (grubof_symlist.c): Depended on - config.h. Use gensymlist.sh instead of $(srcdir)/gensymlist.sh. - (kernel_syms.lst): Depended on config.h. Use genkernsyms.sh - instead of $(srcdir)/genkernsyms.sh. - - * conf/powerpc-ieee1275.rmk (grubof_symlist.c): Depended on - config.h. Use gensymlist.sh instead of $(srcdir)/gensymlist.sh. - (kernel_syms.lst): Depended on config.h. Use genkernsyms.sh - instead of $(srcdir)/genkernsyms.sh. - - * conf/i386-pc.rmk (symlist.c): Depended on config.h. Use - gensymlist.sh instead of $(srcdir)/gensymlist.sh. - (kernel_syms.lst): Depended on config.h. Use genkernsyms.sh - instead of $(srcdir)/genkernsyms.sh. - - * conf/i386-efi.rmk (symlist.c): Depended on config.h. Use - gensymlist.sh instead of $(srcdir)/gensymlist.sh. - (kernel_syms.lst): Depended on config.h. Use genkernsyms.sh - instead of $(srcdir)/genkernsyms.sh. - - * configure.ac (AC_CONFIG_FILES): Added gensymlist.sh and - genkernsyms.sh. - - * Makefile.in (DISTCLEANFILES): Added gensymlist.sh and - genkernsyms.sh. - (gensymlist.sh): New target. - (genkernsyms.sh): Likewise. - - * DISTLIST: Removed genkernsyms.sh and gensymlist.sh. Added - genkernsyms.sh.in and gensymlist.sh.in. - - * genkernsyms.sh: Removed. - * gensymlist.sh: Likewise. - - * genkernsyms.sh.in: New file. - * gensymlist.sh.in: Likewise. - -2006-04-25 Hollis Blanchard - - * kern/powerpc/ieee1275/init.c (grub_machine_set_prefix): Do not - clobber "prefix", since we may have already set it manually. - -2006-04-25 Hollis Blanchard - - * kern/misc.c (abort): New alias for grub_abort. - -2006-04-25 Yoshinori K. Okuji - - A new machine-specific function "grub_machine_set_prefix" is - defined. This is called after loading modules, so that a prefix - initialization can use modules. Also, this change adds an - intensive debugging feature for the memory manager via the - configure option "--enable-mm-debug". - - * partmap/gpt.c (gpt_partition_map_iterate): Add one more into - PART.LEN. - - * kern/sparc64/ieee1275/init.c (abort): Removed. - (grub_stop): Likewise. - (grub_exit): New function. - (grub_set_prefix): Renamed to ... - (grub_machine_set_prefix): ... this. - (grub_machine_init): Do not call grub_set_prefix. - - * kern/powerpc/ieee1275/init.c (grub_set_prefix): Renamed to ... - (grub_machine_set_prefix): ... this. - (grub_machine_init): Do not call grub_set_prefix. - - * kern/i386/pc/init.c (grub_machine_set_prefix): New function. - (grub_machine_init): Do not set the prefix here. - - * kern/i386/efi/init.c (grub_machine_set_prefix): New function. - - * kern/efi/init.c: Include grub/mm.h. - (grub_efi_set_prefix): New function. - - * kern/efi/efi.c (grub_exit): Call grub_efi_fini. - (grub_efi_get_filename): New function. - (grub_print_device_path): Renamed to ... - (grub_efi_print_device_path): ... this. - - * kern/mm.c [MM_DEBUG] (grub_malloc): Undefined. - [MM_DEBUG] (grub_realloc): Likewise. - [MM_DEBUG] (grub_free): Likewise. - [MM_DEBUG] (grub_memalign): Likewise. - [MM_DEBUG] (grub_mm_debug): New variable. - [MM_DEBUG] (grub_debug_malloc): New function. - [MM_DEBUG] (grub_debug_free): New function. - [MM_DEBUG] (grub_debug_realloc): New function. - [MM_DEBUG] (grub_debug_memalign): New function. - - * kern/misc.c (grub_abort): Print a newline to distinguish - the message. - - * kern/main.c (grub_main): Call grub_machine_set_prefix and - grub_set_root_dev after loading modules. This is necessary when - setting a prefix depends on modules. - - * include/grub/efi/efi.h (grub_print_device_path): Renamed to ... - (grub_efi_print_device_path): ... this. - (grub_efi_get_filename): New prototype. - (grub_efi_set_prefix): Likewise. - - * include/grub/efi/disk.h: Include grub/efi/api.h, grub/symbol.h - and grub/disk.h. - (grub_efidisk_get_device_handle): New prototype. - (grub_efidisk_get_device_name): Likewise. - - * include/grub/mm.h: Include config.h. - (MM_DEBUG): Removed. - [MM_DEBUG && !GRUB_UTIL] (grub_mm_debug): New prototype. - [MM_DEBUG && !GRUB_UTIL] (grub_malloc): New macro. - [MM_DEBUG && !GRUB_UTIL] (grub_realloc): Likewise. - [MM_DEBUG && !GRUB_UTIL] (grub_memalign): Likewise. - [MM_DEBUG && !GRUB_UTIL] (grub_free): Likewise. - [MM_DEBUG && !GRUB_UTIL] (grub_debug_malloc): New prototype. - [MM_DEBUG && !GRUB_UTIL] (grub_debug_realloc): New prototype. - [MM_DEBUG && !GRUB_UTIL] (grub_debug_memalign): New prototype. - [MM_DEBUG && !GRUB_UTIL] (grub_debug_free): New prototype. - - * include/grub/kernel.h (grub_machine_set_prefix): New prototype. - - * disk/efi/efidisk.c: Include grub/partition.h. - (iterate_child_devices): New function. - (add_device): First, compare only last device path nodes, so that - devices are sorted by the types. - (grub_efidisk_get_device_handle): New function. - (grub_efidisk_get_device_name): Likewise. - - * configure.ac (--enable-mm-debug): New option to enable the - memory manager debugging feature. This makes the binary much - bigger, so is disabled by default. - -2006-04-23 Yoshinori K. Okuji - - Use grub_abort instead of grub_stop, and grub_exit must be - define in each architecture now. Also, this change adds support - for EFI disks. - - * util/i386/pc/grub-probefs.c: Include grub/term.h. - (grub_getkey): New function. - (grub_term_get_current): Likewise. - - * util/i386/pc/grub-setup.c: Include grub/term.h. - (grub_getkey): New function. - (grub_term_get_current): Likewise. - - * util/misc.c (grub_stop): Renamed to ... - (grub_exit): ... this. - - * kern/powerpc/ieee1275/init.c (abort): Renamed to ... - (grub_exit): ... this. - (grub_machine_init): Use grub_abort instead of abort. - (grub_stop): Removed. - - * kern/powerpc/ieee1275/cmain.c (cmain): Use grub_abort instead of - abort. - - * kern/i386/pc/startup.S (grub_exit): New function. - (cold_reboot): New label. - - * kern/efi/init.c: Include grub/efi/disk.h and grub/env.h. - (grub_efi_init): Call grub_efidisk_init. - (grub_efi_fini): Call grub_efidisk_fini. - - * kern/efi/efi.c: Include grub/mm.h. - (grub_efi_console_control_guid): Renamed to ... - (console_control_guid): ... this. - (grub_efi_loaded_image_guid): Renamed to ... - (loaded_image_guid): ... this. - (grub_efi_locate_handle): New function. - (grub_efi_open_protocol): Likewise. - (grub_efi_set_text_mode): Use CONSOLE_CONTROL_GUID instead of - GRUB_EFI_CONSOLE_CONTROL_GUID. - (grub_efi_exit): Removed. - (grub_stop): Likewise. - (grub_efi_get_loaded_image): Use grub_efi_open_protocol. - (grub_exit): New function. - (grub_print_device_path): Likewise. - - * kern/rescue.c (grub_rescue_cmd_exit): New function. - (grub_enter_rescue_mode): Register "exit". - - * kern/misc.c (grub_real_dprintf): A cosmetic change. - (grub_abort): New function. - - * kern/err.c (grub_fatal): Use grub_abort instead of grub_stop. - - * include/grub/sparc64/ieee1275/kernel.h (abort): Removed. - - * include/grub/powerpc/ieee1275/kernel.h (abort): Removed. - - * include/grub/efi/efi.h (grub_efi_exit): Removed. - (grub_print_device_path): New prototype. - (grub_efi_locate_handle): Likewise. - (grub_efi_open_protocol): Likewise. - - * include/grub/efi/disk.h (grub_efidisk_fini): New file. - * disk/efi/efidisk.c: Likewise. - - * DISTLIST: Added disk/efi/efidisk.c and include/grub/efi/disk.h. - - * include/grub/efi/console_control.h - (GRUB_EFI_CONSOLE_CONTROL_GUID): Use an array for the last 8 bytes. - - * include/grub/efi/api.h (GRUB_EFI_LOADED_IMAGE_GUID): Specify the - last 8 bytes as an array. - (GRUB_EFI_DISK_IO_GUID): New macro. - (GRUB_EFI_BLOCK_IO_GUID): Likewise. - (GRUB_EFI_DEVICE_PATH_GUID): Likewise. - (grub_efi_ipv6_address_t): Change the type to grub_uint16_t from - grub_uint8_t. - (struct grub_efi_guid): Use an array to specify the last 8 bytes. - (struct grub_efi_device_path): Rename the member "sub_type" to - "subtype". - (GRUB_EFI_DEVICE_PATH_TYPE): New macro. - (GRUB_EFI_DEVICE_PATH_SUBTYPE): Likewise. - (GRUB_EFI_DEVICE_PATH_LENGTH): Likewise. - (GRUB_EFI_END_DEVICE_PATH_TYPE): Likewise. - (GRUB_EFI_END_ENTIRE_DEVICE_PATH_SUBTYPE): Likewise. - (GRUB_EFI_END_THIS_DEVICE_PATH_SUBTYPE): Likewise. - (GRUB_EFI_END_ENTIRE_DEVICE_PATH): Likewise. - (GRUB_EFI_NEXT_DEVICE_PATH): Likewise. - (GRUB_EFI_HARDWARE_DEVICE_PATH_TYPE): Likewise. - (GRUB_EFI_PCI_DEVICE_PATH_SUBTYPE): Likewise. - (struct grub_efi_pci_device_path): New structure. - (grub_efi_pci_device_path_t): New type. - (GRUB_EFI_PCCARD_DEVICE_PATH_SUBTYPE): New macro. - (struct grub_efi_pccard_device_path): New structure. - (grub_efi_pccard_device_path_t): New type. - (GRUB_EFI_MEMORY_MAPPED_DEVICE_PATH_SUBTYPE): New macro. - (struct grub_efi_memory_mapped_device_path): New structure. - (grub_efi_memory_mapped_device_path_t): New type. - (GRUB_EFI_VENDOR_DEVICE_PATH_SUBTYPE): New macro. - (struct grub_efi_vendor_device_path): New structure. - (grub_efi_vendor_device_path_t): New type. - (GRUB_EFI_CONTROLLER_DEVICE_PATH_SUBTYPE): New macro. - (struct grub_efi_controller_device_path): New structure. - (grub_efi_controller_device_path_t): New type. - (GRUB_EFI_ACPI_DEVICE_PATH_TYPE): New macro. - (GRUB_EFI_ACPI_DEVICE_PATH_SUBTYPE): Likewise. - (struct grub_efi_acpi_device_path): New structure. - (grub_efi_acpi_device_path_t): New type. - (GRUB_EFI_EXPANDED_ACPI_DEVICE_PATH_SUBTYPE): New macro. - (struct grub_efi_expanded_acpi_device_path): New structure. - (grub_efi_expanded_acpi_device_path_t): New type. - (GRUB_EFI_EXPANDED_ACPI_HIDSTR): New macro. - (GRUB_EFI_EXPANDED_ACPI_UIDSTR): Likewise. - (GRUB_EFI_EXPANDED_ACPI_CIDSTR): Likewise. - (GRUB_EFI_MESSAGING_DEVICE_PATH_TYPE): Likewise. - (GRUB_EFI_ATAPI_DEVICE_PATH_SUBTYPE): Likewise. - (struct grub_efi_atapi_device_path): New structure. - (grub_efi_atapi_device_path_t): New type. - (GRUB_EFI_FIBRE_CHANNEL_DEVICE_PATH_SUBTYPE): New macro. - (struct grub_efi_fibre_channel_device_path): New structure. - (grub_efi_fibre_channel_device_path_t): New type. - (GRUB_EFI_1394_DEVICE_PATH_SUBTYPE): New macro. - (struct grub_efi_1394_device_path): New structure. - (grub_efi_1394_device_path_t): New type. - (GRUB_EFI_USB_DEVICE_PATH_SUBTYPE): New macro. - (struct grub_efi_usb_device_path): New structure. - (grub_efi_usb_device_path_t): New type. - (GRUB_EFI_USB_CLASS_DEVICE_PATH_SUBTYPE): New macro. - (struct grub_efi_usb_class_device_path): New structure. - (grub_efi_usb_class_device_path_t): New type. - (GRUB_EFI_I2O_DEVICE_PATH_SUBTYPE): New macro. - (struct grub_efi_i2o_device_path): New structure. - (grub_efi_i2o_device_path_t): New type. - (GRUB_EFI_MAC_ADDRESS_DEVICE_PATH_SUBTYPE): New macro. - (struct grub_efi_mac_address_device_path): New structure. - (grub_efi_mac_address_device_path_t): New type. - (GRUB_EFI_IPV4_DEVICE_PATH_SUBTYPE): New macro. - (struct grub_efi_ipv4_device_path): New structure. - (grub_efi_ipv4_device_path_t): New type. - (GRUB_EFI_IPV6_DEVICE_PATH_SUBTYPE): New macro. - (struct grub_efi_ipv6_device_path): New structure. - (grub_efi_ipv6_device_path_t): New type. - (GRUB_EFI_INFINIBAND_DEVICE_PATH_SUBTYPE): New macro. - (struct grub_efi_infiniband_device_path): New structure. - (grub_efi_infiniband_device_path_t): New type. - (GRUB_EFI_UART_DEVICE_PATH_SUBTYPE): New macro. - (struct grub_efi_uart_device_path): New structure. - (grub_efi_uart_device_path_t): New type. - (GRUB_EFI_VENDOR_MESSAGING_DEVICE_PATH_SUBTYPE): New macro. - (struct grub_efi_vendor_messaging_device_path): New structure. - (grub_efi_vendor_messaging_device_path_t): New type. - (GRUB_EFI_MEDIA_DEVICE_PATH_TYPE): New macro. - (GRUB_EFI_HARD_DRIVE_DEVICE_PATH_SUBTYPE): Likewise. - (struct grub_efi_hard_drive_device_path): New structure. - (grub_efi_hard_drive_device_path_t): New type. - (GRUB_EFI_CDROM_DEVICE_PATH_SUBTYPE): New macro. - (struct grub_efi_cdrom_device_path): New structure. - (grub_efi_cdrom_device_path_t): New type. - (GRUB_EFI_VENDOR_MEDIA_DEVICE_PATH_SUBTYPE): New macro. - (struct grub_efi_vendor_media_device_path): New structure. - (grub_efi_vendor_media_device_path_t): New type. - (GRUB_EFI_FILE_PATH_DEVICE_PATH_SUBTYPE): New macro. - (struct grub_efi_file_path_device_path): New structure. - (grub_efi_file_path_device_path_t): New type. - (GRUB_EFI_PROTOCOL_DEVICE_PATH_SUBTYPE): New macro. - (struct grub_efi_protocol_device_path): New structure. - (grub_efi_protocol_device_path_t): New type. - (GRUB_EFI_BIOS_DEVICE_PATH_TYPE): New macro. - (GRUB_EFI_BIOS_DEVICE_PATH_SUBTYPE): Likewise. - (struct grub_efi_bios_device_path): New structure. - (grub_efi_bios_device_path_t): New type. - (struct grub_efi_disk_io): New structure. - (grub_efi_disk_io_t): New type. - (struct grub_efi_block_io_media): New structure. - (grub_efi_block_io_media_t): New type. - (struct grub_efi_block_io): New structure. - (grub_efi_block_io_t): New type. - - * include/grub/misc.h (grub_stop): Removed. - (grub_exit): New prototype. - (grub_abort): Likewise. - - * include/grub/disk.h (enum grub_disk_dev_id): Added - GRUB_DISK_DEVICE_EFIDISK_ID. - - * conf/i386-efi.rmk (kernel_mod_SOURCES): Added - disk/efi/efidisk.c. - (kernel_syms.lst): Remove the target if an error occurs. - -2006-04-22 Yoshinori K. Okuji - - * kern/misc.c (grub_lltoa): Rewritten the decimal conversion part, - as it was simply too buggy. - -2006-04-21 Yoshinori K. Okuji - - * kern/misc.c (grub_lltoa): New function. - (grub_vsprintf): Added support for the long long suffix, - i.e. "ll". - -2006-04-20 Hollis Blanchard - - * Makefile.in (LDFLAGS): Add variable. - (LD): Remove variable. - * configure.ac: Add -m32 to LDFLAGS. - * genmk.rb (PModule#rule): Use $(CC) instead of $(LD). - * conf/powerpc-ieee1275.rmk (COMMON_LDFLAGS): Add variable. - (grubof_LDFLAGS): Use $(COMMON_LDFLAGS). - (_linux_mod_LDFLAGS, linux_mod_LDFLAGS, normal_mod_LDFLAGS, - suspend_mod_LDFLAGS, reboot_mod_LDFLAGS, halt_mod_LDFLAGS): New - variables. - * conf/sparc64-ieee1275.rmk (COMMON_LDFLAGS): Add -nostdlib. - * conf/i386-pc.rmk (COMMON_LDFLAGS): Add -nostdlib. - * conf/i386-efi.rmk (COMMON_LDFLAGS): Add -nostdlib. - -2006-04-20 Vesa Jaaskelainen - - * term/gfxterm.c (grub_gfxterm_getcharwidth): Fixed character - length for unknown glyph. - -2006-04-20 Yoshinori K. Okuji - - Add support for pre-loaded modules into the EFI port. - - * util/i386/efi/grub-mkimage.c (make_mods_section): Rewritten - completely. Accept one more argument DIR. The caller has changed. - - * kern/i386/efi/init.c (grub_arch_modules_addr): Removed. - - * kern/efi/efi.c: Include grub/efi/pe32.h and grub/kernel.h. - (grub_efi_loaded_image_guid): New variable. - (grub_efi_get_loaded_image): New function. - (grub_arch_modules_addr): Likewise. - - * include/grub/efi/efi.h (grub_efi_get_loaded_image): New - prototype. - - * include/grub/efi/api.h (GRUB_EFI_LOADED_IMAGE_GUID): New macro. - (struct grub_efi_loaded_image): New structure. - (grub_efi_loaded_image_t): New type. - -2006-04-20 Yoshinori K. Okuji - - * loader/i386/pc/linux.c (grub_rescue_cmd_linux): Compare the file - size with GRUB_OS_AREA_SIZE as grub_size_t instead of - grub_ssize_t. Reported by Jeff Chua . - -2006-04-19 Roger Leigh - - * DISTLIST: Added `util/powerpc/ieee1275/grub-install.in'. - -2006-04-19 Yoshinori K. Okuji - - * DISTLIST: Added include/grub/efi/console.h, - include/grub/efi/time.h, include/grub/i386/efi/kernel.h, - kern/efi/init.c, kern/efi/mm.c, and term/efi/console.c. - - * include/grub/efi/console.h: New file. - * include/grub/efi/time.h: Likewise. - * include/grub/i386/efi/kernel.h: Likewise. - * kern/efi/init.c: Likewise. - * kern/efi/mm.c: Likewise. - * term/efi/console.c: Likewise. - - * kern/i386/efi/init.c: Do not include grub/machine/time.h. - (grub_stop): Removed. - (grub_get_rtc): Likewise. - (grub_machine_init): Simply call grub_efi_init. - (grub_machine_fini): Call grub_efi_fini. - - * kern/efi/efi.c: Include grub/machine/time.h and grub/term.h. - (grub_efi_output_string): Removed. - (grub_efi_stall): New function. - (grub_stop): Likewise. - (grub_get_rtc): Likewise. - - * include/grub/efi/efi.h (grub_efi_output_string): Removed. - (grub_efi_stall): New prototype. - (grub_efi_allocate_pages): Likewise. - (grub_efi_free_pages): Likewise. - (grub_efi_get_memory_map): Likewise. - (grub_efi_mm_init): Likewise. - (grub_efi_mm_fini): Likewise. - (grub_efi_init): Likewise. - (grub_efi_fini): Likewise. - - * include/grub/i386/efi/time.h: Do not include - grub/symbol.h. Include grub/efi/time.h. - (GRUB_TICKS_PER_SECOND): Removed. - (grub_get_rtc): Likewise. - - * include/grub/efi/api.h (struct grub_efi_memory_descriptor): - Added padding. The EFI spec is buggy. - (GRUB_EFI_BLACK): New macro. - (GRUB_EFI_BLUE): Likewise. - (GRUB_EFI_GREEN): Likewise. - (GRUB_EFI_CYAN): Likewise. - (GRUB_EFI_RED): Likewise. - (GRUB_EFI_MAGENTA): Likewise. - (GRUB_EFI_BROWN): Likewise. - (GRUB_EFI_LIGHTGRAY): Likewise. - (GRUB_EFI_BRIGHT): Likewise. - (GRUB_EFI_DARKGRAY): Likewise. - (GRUB_EFI_LIGHTBLUE): Likewise. - (GRUB_EFI_LIGHTGREEN): Likewise. - (GRUB_EFI_LIGHTCYAN): Likewise. - (GRUB_EFI_LIGHTRED): Likewise. - (GRUB_EFI_LIGHTMAGENTA): Likewise. - (GRUB_EFI_YELLOW): Likewise. - (GRUB_EFI_WHITE): Likewise. - (GRUB_EFI_BACKGROUND_BLACK): Likewise. - (GRUB_EFI_BACKGROUND_BLUE): Likewise. - (GRUB_EFI_BACKGROUND_GREEN): Likewise. - (GRUB_EFI_BACKGROUND_CYAN): Likewise. - (GRUB_EFI_BACKGROUND_RED): Likewise. - (GRUB_EFI_BACKGROUND_MAGENTA): Likewise. - (GRUB_EFI_BACKGROUND_BROWN): Likewise. - (GRUB_EFI_BACKGROUND_LIGHTGRAY): Likewise. - (GRUB_EFI_TEXT_ATTR): Likewise. - - * conf/i386-efi.rmk (kernel_mod_SOURCES): Added kern/efi/efi.c, - kern/efi/init.c, kern/efi/mm.c, and term/efi/console.c. - (kernel_mod_HEADERS): Added efi/time.h. - -2006-04-18 Yoshinori K. Okuji - - * DISTLIST: Added conf/i386-efi.mk, conf/i386-efi.rmk, - include/grub/efi/api.h, include/grub/efi/console_control.h, - include/grub/efi/efi.h, include/grub/efi/pe32.h, - include/grub/i386/efi/time.h, kern/efi/efi.c, - kern/i386/efi/init.c, kern/i386/efi/startup.S, - and util/i386/efi/grub-mkimage.c. - - * Makefile.in (RMKFILES): Added i386-efi.rmk. - - * genmk.rb (PModule#rule): Do not export symbols if - #{prefix}_EXPORTS is set to "no". - - * conf/i386-efi.mk: New file. - * conf/i386-efi.rmk: Likewise. - * include/grub/efi/api.h: Likewise. - * include/grub/efi/console_control.h: Likewise. - * include/grub/efi/efi.h: Likewise. - * include/grub/efi/pe32.h: Likewise. - * include/grub/i386/efi/time.h: Likewise. - * kern/efi/efi.c: Likewise. - * kern/i386/efi/init.c: Likewise. - * kern/i386/efi/startup.S: Likewise. - * util/i386/efi/grub-mkimage.c: Likewise. - -2006-04-17 Marco Gerards - - * include/grub/script.h: Include and - "grub_script.tab.h". - (struct grub_lexer_param): New struct. - (struct grub_parser_param): Likewise. - (grub_script_create_arglist): Pass the state in an argument. - (grub_script_add_arglist): Likewise. - (grub_script_create_cmdline): Likewise. - (grub_script_create_cmdblock): Likewise. - (grub_script_create_cmdif): Likewise. - (grub_script_create_cmdmenu): Likewise. - (grub_script_add_cmd): Likewise. - (grub_script_arg_add): Likewise. - (grub_script_lexer_ref): Likewise. - (grub_script_lexer_deref): Likewise. - (grub_script_lexer_record_start): Likewise. - (grub_script_lexer_record_stop): Likewise. - (grub_script_mem_record): Likewise. - (grub_script_mem_record_stop): Likewise. - (grub_script_malloc): Likewise. - (grub_script_yylex): Likewise. - (grub_script_yyparse): Likewise. - (grub_script_yyerror): Likewise. - (grub_script_yylex): Likewise. - (grub_script_lexer_init): Return the state. - - * normal/lexer.c (grub_script_lexer_state): Removed variable. - (grub_script_lexer_done): Likewise. - (grub_script_lexer_getline): Likewise. - (grub_script_lexer_refs): Likewise. - (script): Likewise. - (newscript): Likewise. - (record): Likewise. - (recording): Likewise. - (recordpos): Likewise. - (recordlen): Likewise. - (grub_script_lexer_init): Return the state instead of setting - global variables. - (grub_script_lexer_ref): Use the newly added argument for state - instead of globals. - (grub_script_lexer_deref): Likewise. - (grub_script_lexer_record_start): Likewise. - (grub_script_lexer_record_stop): Likewise. - (recordchar): Likewise. - (nextchar): Likewise. - (grub_script_yylex2): Likewise. - (grub_script_yylex): Likewise. - (grub_script_yyerror): Likewise. - - * normal/parser.y (func_mem): Removed variable. - (menu_entry): Likewise. - (err): Likewise. - (%lex-param): New parser option. - (%parse-param): Likewise. - (script): Always return the AST. - (argument): Pass the state around. - (arguments): Likewise. - (grubcmd): Likewise. - (commands): Likewise. - (function): Likewise. - (menuentry): Likewise. - (if_statement): Likewise. - (if): Likewise. - - * normal/script.c (grub_script_memused): Removed variable. - (grub_script_parsed): Likewise. - (grub_script_malloc): Added a state argument. Use that instead of - global variables. - (grub_script_mem_record): Likewise. - (grub_script_mem_record_stop): Likewise. - (grub_script_arg_add): Likewise. - (grub_script_add_arglist): Likewise. - (grub_script_create_cmdline): Likewise. - (grub_script_create_cmdif): Likewise. - (grub_script_create_cmdmenu): Likewise. - (grub_script_add_cmd): Likewise. - (grub_script_parse): Setup the state before calling the parser. - -2006-04-16 Marco Gerards - - * normal/command.c (grub_command_init): Remove the title command. - - * normal/lexer.c (grub_script_yylex): Renamed from this... - (grub_script_yylex2): ... to this. - (grub_script_yylex): New function. Temporary - introduced to filter some tokens. - (grub_script_yyerror): Print a newline. - - * normal/main.c (read_config_file): Output information about the - lines that contain errors. Wait for a key after all lines have - been processed. Don't return an empty menu. - - * normal/parser.y (func_mem): Don't initialize. - (menu_entry): Likewise. - (err): New variable. - (script): Don't return anything when an error was encountered. - (ws, returns): Removed rules. - (argument): Disabled concatenated variable support. - (arguments): Remove explicit separators. - (grubcmd): Likewise. - (function): Likewise. - (menuentry): Likewise. - (if): Likewise. - (commands): Likewise. Add error handling. - - * normal/script.c (grub_script_create_cmdline): If - `grub_script_parsed' is 0, assume the parser encountered an error. - -2006-04-02 Yoshinori K. Okuji - - * configure.ac: Add support for EFI. Fix the typo - BUILD_LDDFLAGS. Restore the LDFLAGS after testing. - -2006-04-01 Vesa Jaaskelainen - - * util/unifont2pff.rb: Removed unnecessary byte ordering. Now - foreign multibyte characters should be shown correctly. - -2006-04-01 Vesa Jaaskelainen - - * normal/main.c (grub_normal_menu_addentry): Fixed menu size - calculation. - (read_config_file): Made it to close file before returning. - -2006-03-31 Vesa Jaaskelainen - - * DISTLIST: Added include/grub/i386/pc/vbeblit.h, - include/grub/i386/pc/vbefill.h, video/i386/pc/vbeblit.c, - video/i386/pc/vbefill.c. - - * conf/i386-pc.rmk (vbe_mod_SOURCES): Added video/i386/pc/vbeblit.c, - video/i386/pc/vbefill.c. - - * include/grub/video.h (grub_video_blit_format): New enum. - (grub_video_mode_info): Added new member blit_format. - (grub_video_get_blit_format): New function prototype. - - * include/grub/i386/pc/vbe.h (grub_video_vbe_get_video_ptr): New - function prototype. - (grub_video_vbe_map_rgb): Likewise. - (grub_video_vbe_unmap_color): Likewise. - - * include/grub/i386/pc/vbeblit.h: New file. - - * include/grub/i386/pc/vbefill.h: New file. - - * video/video.c (grub_video_get_blit_format): New function. - (grub_video_vbe_get_video_ptr): Re-declared as non-static. - (grub_video_vbe_map_rgb): Likewise. - (grub_video_vbe_unmap_color): Likewise. - - * video/i386/pc/vbe.c (grub_video_vbe_fill_rect): Changed to use more - optimized fills. - (grub_video_vbe_blit_render_target): Changed to use more optimized - blits. - (grub_video_vbe_setup): Added detection for optimized settings. - (grub_video_vbe_create_render_target): Likewise. - - * video/i386/pc/vbeblit.c: New file. - - * video/i386/pc/vbefill.c: New file. - -2006-03-30 Vesa Jaaskelainen - - * font/manager.c (grub_font_get_glyph): Removed font fixup from - here... - - * util/unifont2pff.rb: ... and moved it to here. Improved argument - parsing to support both hex and dec ranges. If filename was missing - show usage information. - -2006-03-14 Vesa Jaaskelainen - - * DISTLIST: Added include/grub/video.h, term/gfxterm.c, - video/video.c, commands/videotest.c. Removed term/i386/pc/vesafb.c. - - * conf/i386-pc.rmk (pkgdata_MODULES): Added video.mod, - gfxterm.mod, videotest.mod. Removed vga.mod, vesafb.mod. - (video_mod_SOURCES): Added. - (video_mod_CFLAGS): Likewise. - (video_mod_LDFLAGS): Likewise. - (gfxterm_mod_SOURCES): Likewise. - (gfxterm_mod_CFLAGS): Likewise. - (gfxterm_mod_LDFLAGS): Likewise. - (videotest_mod_SOURCES): Likewise. - (videotest_mod_CFLAGS): Likewise. - (videotest_mod_LDFLAGS): Likewise. - (vesafb_mod_SOURCES): Removed. - (vesafb_mod_CFLAGS): Likewise. - (vesafb_mod_LDFLAGS): Likewise. - (vga_mod_SOURCES): Likewise. - (vga_mod_CFLAGS): Likewise. - (vga_mod_LDFLAGS): Likewise. - - * commands/videotest.c: New file. - - * font/manager.c (fill_with_default_glyph): Modified to use - grub_font_glyph. - (grub_font_get_glyph): Likewise. - (fontmanager): Renamed from this... - (font_manager): ... to this. - - * include/grub/font.h (grub_font_glyph): Added new structure. - (grub_font_get_glyph): Modified to use grub_font_glyph. - - * include/grub/misc.h (grub_abs): Added as inline function. - - * include/grub/video.h: New file. - - * include/grub/i386/pc/vbe.h (GRUB_VBE_STATUS_OK): New macro. - (GRUB_VBE_MEMORY_MODEL_PACKED_PIXEL): Likewise. - (GRUB_VBE_MEMORY_MODEL_DIRECT_COLOR): Likewise. - (grub_vbe_get_controller_info): Renamed from this... - (grub_vbe_bios_get_controller_info): ... to this. - (grub_vbe_get_mode_info): Renamed from this... - (grub_vbe_bios_get_mode_info): ... to this. - (grub_vbe_set_mode): Renamed from this... - (grub_vbe_bios_set_mode): ... to this. - (grub_vbe_get_mode): Renamed from this... - (grub_vbe_bios_get_mode): ... to this. - (grub_vbe_set_memory_window): Renamed from this... - (grub_vbe_bios_set_memory_window): ... to this. - (grub_vbe_get_memory_window): Renamed from this... - (grub_vbe_bios_get_memory_window): ... to this. - (grub_vbe_set_scanline_length): Renamed from this... - (grub_vbe_set_scanline_length): ... to this. - (grub_vbe_get_scanline_length): Renamed from this... - (grub_vbe_bios_get_scanline_length): ... to this. - (grub_vbe_set_display_start): Renamed from this... - (grub_vbe_bios_set_display_start): ... to this. - (grub_vbe_get_display_start): Renamed from this... - (grub_vbe_bios_get_display_start): ... to this. - (grub_vbe_set_palette_data): Renamed from this... - (grub_vbe_bios_set_palette_data): ... to this. - (grub_vbe_set_pixel_rgb): Removed. - (grub_vbe_set_pixel_index): Likewise. - - * kern/i386/pc/startup.S (grub_vbe_get_controller_info): Renamed - from this... - (grub_vbe_bios_get_controller_info): ... to this. - (grub_vbe_get_mode_info): Renamed from this... - (grub_vbe_bios_get_mode_info): ... to this. - (grub_vbe_set_mode): Renamed from this... - (grub_vbe_bios_set_mode): ... to this. - (grub_vbe_get_mode): Renamed from this... - (grub_vbe_bios_get_mode): ... to this. - (grub_vbe_set_memory_window): Renamed from this... - (grub_vbe_bios_set_memory_window): ... to this. - (grub_vbe_get_memory_window): Renamed from this... - (grub_vbe_bios_get_memory_window): ... to this. - (grub_vbe_set_scanline_length): Renamed from this... - (grub_vbe_set_scanline_length): ... to this. - (grub_vbe_get_scanline_length): Renamed from this... - (grub_vbe_bios_get_scanline_length): ... to this. - (grub_vbe_set_display_start): Renamed from this... - (grub_vbe_bios_set_display_start): ... to this. - (grub_vbe_get_display_start): Renamed from this... - (grub_vbe_bios_get_display_start): ... to this. - (grub_vbe_set_palette_data): Renamed from this... - (grub_vbe_bios_set_palette_data): ... to this. - (grub_vbe_bios_get_controller_info): Fixed problem with registers - getting corrupted after calling it. Added more pushes and pops. - (grub_vbe_bios_set_mode): Likewise. - (grub_vbe_bios_get_mode): Likewise. - (grub_vbe_bios_get_memory_window): Likewise. - (grub_vbe_bios_set_scanline_length): Likewise. - (grub_vbe_bios_get_scanline_length): Likewise. - (grub_vbe_bios_get_display_start): Likewise. - (grub_vbe_bios_set_palette_data): Likewise. - - * normal/cmdline.c (cl_set_pos): Refresh the screen. - (cl_insert): Likewise. - (cl_delete): Likewise. - - * term/gfxterm.c: New file. - - * term/i386/pc/vesafb.c: Removed file. - - * video/video.c: New file. - - * video/i386/pc/vbe.c (real2pm): Added new function. - (grub_video_vbe_draw_pixel): Likewise. - (grub_video_vbe_get_video_ptr): Likewise. - (grub_video_vbe_get_pixel): Likewise - (grub_video_vbe_init): Likewise. - (grub_video_vbe_fini): Likewise. - (grub_video_vbe_setup): Likewise. - (grub_video_vbe_get_info): Likewise. - (grub_video_vbe_set_palette): Likewise. - (grub_video_vbe_get_palette): Likewise. - (grub_video_vbe_set_viewport): Likewise. - (grub_video_vbe_get_viewport): Likewise. - (grub_video_vbe_map_color): Likewise. - (grub_video_vbe_map_rgb): Likewise. - (grub_video_vbe_map_rgba): Likewise. - (grub_video_vbe_unmap_color): Likewise. - (grub_video_vbe_fill_rect): Likewise. - (grub_video_vbe_blit_glyph): Likewise. - (grub_video_vbe_blit_bitmap): Likewise. - (grub_video_vbe_blit_render_target): Likewise. - (grub_video_vbe_scroll): Likewise. - (grub_video_vbe_swap_buffers): Likewise. - (grub_video_vbe_create_render_target): Likewise. - (grub_video_vbe_delete_render_target): Likewise. - (grub_video_vbe_set_active_render_target): Likewise. - (grub_vbe_set_pixel_rgb): Remove function. - (grub_vbe_set_pixel_index): Likewise. - (index_color_mode): Remove static variable. - (active_mode): Likewise. - (framebuffer): Likewise. - (bytes_per_scan_line): Likewise. - (grub_video_vbe_adapter): Added new static variable. - (framebuffer): Likewise. - (render_target): Likewise. - (initial_mode): Likewise. - (mode_in_use): Likewise. - (mode_list): Likewise. - -2006-03-10 Marco Gerards - - * configure.ac (AC_INIT): Bumped to 1.93. - - * DISTLIST: Added `include/grub/hfs.h'. - -2006-02-01 Yoshinori K. Okuji - - * boot/i386/pc/boot.S (general_error): Before looping, try INT - 18H, which might help the BIOS falling back to next boot media. - -2006-01-25 Yoshinori K. Okuji - - * util/i386/pc/grub-install.in: Escape a backslash. Reported by - Poe Chen . - -2006-01-17 Marco Gerards - - * include/grub/normal.h: Include . - (grub_command_list): Removed struct. - (grub_command_list_t): Removed type. - (grub_menu_entry): Remove members `num' and `command_list'. Add - members `commands' and `sourcecode'. - * include/grub/script.h: Add inclusion guards. - (grub_script_cmd_menuentry): New struct. - (grub_script_execute_menuentry): New prototype. - (grub_script_lexer_record_start): Likewise. - (grub_script_lexer_record_stop): Likewise. - * normal/execute.c (grub_script_execute_menuentry): New function. - * normal/lexer.c (record, recording, recordpos, recordlen): New - variables. - (grub_script_lexer_record_start): New function. - (grub_script_lexer_record_stop): Likewise. - (recordchar): Likewise. - (nextchar): Likewise. - (grub_script_yylex): Use `nextchar' to fetch new characters. Use - 2048 as the buffer size. Add the tokens `menuentry' and `@'. - * normal/main.c: Include and - (current_menu): New variable. - (free_menu): Mainly rewritten. - (grub_normal_menu_addentry): New function. - (read_config_file): Rewritten. - * normal/menu.c (run_menu_entry): Mainly rewritten. - * normal/menu_entry.c (make_screen): Rewritten the code to insert - the menu entry. - (run): Mainly rewritten. - * normal/parser.y (menu_entry): New variable. - (GRUB_PARSER_TOKEN_MENUENTRY): New token. - (menuentry): New rule. - (command): Add `menuentry'. - (if_statement): Allow additional returns before `fi'. - * normal/script.c (grub_script_create_cmdmenu): New function. - -2006-01-03 Marco Gerards - - * INSTALL: GNU Bison is required. - * configure.ac: Rewritten the test to detect Bison. - * Makefile.in (YACC): New variable. Reported by Xun Sun - . - -2006-01-03 Marco Gerards - - * fs/hfsplus.c (grub_hfsplus_read_block): Convert the offset of - the HFS+ filesystem to filesystem blocks. - (grub_hfsplus_iterate_dir): Cast the `fileinfo' assignment so a - GCC warning is silenced. - -2006-01-03 Marco Gerards - - * partmap/apple.c (apple_partition_map_iterate): Convert the data - read from disk from big endian to host byte order. - -2006-01-03 Hollis Blanchard - - * fs/hfs.c: Include . Added reference to the official - documentation. - (GRUB_HFS_EMBED_HFSPLUS_SIG): New macro. - (grub_hfs_mount): Grammar fix in error. Make sure this is not an - embedded HFS+ filesystem. - (GRUB_HFS_MAGIC, grub_hfs_extent, grub_hfs_datarecord_t) - (grub_hfs_sblock): Move from here... - * include/grub/hfs.h: To here... New file. - * fs/hfsplus.c: Include . Added reference to the official - documentation. - (GRUB_HFSPLUS_MAGIC, GRUB_HFSPLUSX_MAGIC, GRUB_HFSPLUS_SBLOCK): - New macros. - (grub_hfsplus_volheader): Change type of member `magic' to - `grub_uint16_t'. - (grub_hfsplus_data): Add new member `embedded_offset'. - (grub_hfsplus_read_block): Add the HFS+ wrapper offset to the - returned block. - (grub_hfsplus_mount): Read the HFS+ wrapper if it exists. - Calculate the offset. - -2005-12-25 Yoshinori K. Okuji - - * include/grub/i386/pc/boot.h (GRUB_BOOT_MACHINE_DRP_ADDR): - Removed. - (GRUB_BOOT_MACHINE_DRP_SIZE): Likewise. - -2005-12-25 Yoshinori K. Okuji - - * kern/env.c (grub_env_set): Check if ENV->VALUE instead of - ENV->NAME is NULL after allocating ENV->VALUE. - -2005-12-25 Marco Gerards - - * kern/env.c (grub_env_set): Rewritten the error handling code. - -2005-12-25 Yoshinori K. Okuji - - * geninit.sh: Made more robust, and more portable. - -2005-12-25 Marco Gerards - - Add support for Apple HFS+ filesystems. - - * fs/hfsplus.c: New file. - - * DISTLIST: Added `fs/hfsplus.c'. - - * conf/common.rmk (pkgdata_MODULES): Add `hfsplus.mod'. - (hfsplus_mod_SOURCES): New variable. - (hfsplus_mod_CFLAGS): Likewise. - (hfsplus_mod_LDFLAGS): Likewise. - * conf/i386-pc.rmk (grub_setup_SOURCES): Add `fs/hfsplus.c'. - (grub_setup_SOURCES): Likewise. - (grub_mkdevicemap_SOURCES): Likewise. - (grub_emu_SOURCES): Likewise. - * conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Likewise. - - * fs/fshelp.c (grub_fshelp_log2blksize): New function. - - * include/grub/fshelp.h (grub_fshelp_log2blksize): new prototype. - -2005-12-25 Yoshinori K. Okuji - - * DISTLIST: Added geninitheader.sh, geninit.sh, commands/test.c, - commands/i386/pc/play.c, conf/common.mk, conf/common.rmk, - include/grub/parser.h, include/grub/script.h, kern/parser.c, - kern/sparc64/cache.S, normal/execute.c, normal/function.c, - normal/lexer.c, normal/parser.y, normal/script.c, and - partmap/gpt.c. - Removed kern/sparc64/cache.c. - - * conf/common.rmk (DISTCLEANFILES): Added grub_script.tab.c, - grub_script.tab.h, grub_modules_init.lst, grub_modules_init.h, - grub_emu_init.c. - - * configure.ac (AC_INIT): Bumped to 1.92. - -2005-12-24 Vesa Jaaskelainen - - * kern/err.c (grub_error_push): Added new function to support error - stacks. - (grub_error_pop): Likewise. - (grub_error_stack_items): New local variable to support error stacks. - (grub_error_stack_pos): Likewise. - (grub_error_stack_assert): Likewise. - (GRUB_ERROR_STACK_SIZE): Added new define to configure maximum error - stack depth. - (grub_print_error): Added support to print errors from error stack. - - * include/grub/err.h (grub_error_push): Added function prototype. - (grub_error_pop): Likewise. - -2005-12-09 Hollis Blanchard - - * configure.ac: Accept `powerpc64' as host_cpu. - (amd64): Rename to `biarch32'. - - * kern/powerpc/cache.S (grub_arch_sync_caches): Handle - non-cacheline-aligned addresses. - - * kern/dl.c (grub_dl_load_core): Add grub_dprintf messages. - (grub_dl_flush_cache): Likewise. Only call `grub_arch_sync_caches' - if `size' is non-zero. - -2005-12-03 Marco Gerards - - * conf/common.rmk (grub_modules_init.lst): Use `-printf "%P\n"' - and `cd' to make sure the filename is not prefixed with a - directory name. - (pkgdata_MODULES): Add `gpt.mod'. - (gpt_mod_SOURCES): New variable. - (gpt_mod_CFLAGS): Likewise. - (gpt_mod_LDFLAGS): Likewise. - - * conf/i386-pc.rmk (grub_emu_SOURCES): Add `partmap/gpt.c'. - - * include/grub/pc_partition.h (GRUB_PC_PARTITION_TYPE_GPT_DISK): - New macro. - - * partmap/gpt.c: New file. - - * partmap/pc.c (pc_partition_map_iterate): Don't continue when a - GPT partition map is detected. - -2005-12-03 Vincent Pelletier - - * commands/i386/pc/play.c: New file. - * conf/i386-pc.rmk (pkgdata_MODULES): Added play.mod. - (play_mod_SOURCES, play_mod_CFLAGS, play_mod_LDFLAGS): New - macros. - -2005-11-27 Marco Gerards - - * include/grub/dl.h (GRUB_MOD_INIT): Use `__attribute__ - ((unused))' to silence gcc warning. - -2005-11-26 Hollis Blanchard - - * configure.ac: Correct `AC_PROG_YACC' test. - -2005-11-22 Hollis Blanchard - - * util/powerpc/ieee1275/grub-install.in: Run the mount point - check before installing files. - -2005-11-22 Mike Small - - * util/powerpc/ieee1275/grub-install.in (grubdir): Fixed partition - number regex so multidigit numbers are recognized correctly. - -2005-11-22 Mike Small - - * loader/powerpc/ieee1275/linux.c (grub_rescue_cmd_linux): Add a - debugging message before attempting to claim memory. - (grub_rescue_cmd_initrd): Add a claim debugging message and try - multiple addresses in case of failure. - -2005-11-22 Hollis Blanchard - - * term/tparm.c (get_space): Remove empty `if' statement. - - * fs/ufs.c (grub_ufs_find_file): Remove `grub_le_to_cpu32'. - - * kern/parser.c (check_varstate): Rename `state' to 's'. - -2005-11-22 Hollis Blanchard - - * partmap/acorn.c: Change `unsigned' to `unsigned int'. Move all - variable definitions to the beginning of each function. Sort stack - variables by size. - (find): Rename to `acorn_partition_map_find'. Cast `grub_disk_read' - `buf' argument to `char *'. - -2005-11-22 Hollis Blanchard - - * conf/powerpc-ieee1275.rmk: Include conf/common.mk. - (pkgdata_MODULES): Removed fshelp.mod, fat.mod, ext2.mod, ufs.mod, - minix.mod, hfs.mod, jfs.mod, xfs.mod, affs.mod, sfs.mod, - hello.mod, boot.mod, terminal.mod, ls.mod, cmp.mod, cat.mod, - help.mod, font.mod, terminfo.mod, amiga.mod, apple.mod, pc.mod, - sun.mod, acorn.mod, loopback.mod, default.mod, timeout.mod, - configfile.mod, search.mod, gzio.mod and test.mod. - (symlist.c, grub_script.tab.c, grub_script.tab.h, kernel_syms.lst) - (grub_modules_init.lst, grub_modules_init.h, grub_emu_init.c) - (fshelp_mod_SOURCES, fshelp_mod_CFLAGS, fshelp_mod_LDFLAGS) - (fat_mod_SOURCES, fat_mod_CFLAGS, fat_mod_LDFLAGS) - (ext2_mod_SOURCES, ext2_mod_CFLAGS, ext2_mod_LDFLAGS) - (ufs_mod_SOURCES, ufs_mod_CFLAGS, ufs_mod_LDFLAGS) - (minix_mod_SOURCES, minix_mod_CFLAGS, minix_mod_LDFLAGS) - (hfs_mod_SOURCES, hfs_mod_CFLAGS, hfs_mod_LDFLAGS, jfs_mod_SOURCES) - (jfs_mod_CFLAGS, jfs_mod_LDFLAGS, iso9660_mod_SOURCES) - (iso9660_mod_CFLAGS, iso9660_mod_LDFLAGS, xfs_mod_SOURCES) - (xfs_mod_CFLAGS, xfs_mod_LDFLAGS, affs_mod_SOURCES) - (affs_mod_CFLAGS, affs_mod_LDFLAGS, sfs_mod_SOURCES) - (sfs_mod_CFLAGS, sfs_mod_LDFLAGS, hello_mod_SOURCES) - (hello_mod_CFLAGS, hello_mod_LDFLAGS, boot_mod_SOURCES) - (boot_mod_CFLAGS, boot_mod_LDFLAGS, terminal_mod_SOURCES) - (terminal_mod_CFLAGS, terminal_mod_LDFLAGS, ls_mod_SOURCES) - (ls_mod_CFLAGS, ls_mod_LDFLAGS, cmp_mod_SOURCES, cmp_mod_CFLAGS) - (cmp_mod_LDFLAGS, cat_mod_SOURCES, cat_mod_CFLAGS, cat_mod_LDFLAGS) - (help_mod_SOURCES, help_mod_CFLAGS, help_mod_LDFLAGS) - (font_mod_SOURCES, font_mod_CFLAGS, font_mod_LDFLAGS) - (terminfo_mod_SOURCES, terminfo_mod_CFLAGS, terminfo_mod_LDFLAGS) - (amiga_mod_SOURCES, amiga_mod_CFLAGS, amiga_mod_LDFLAGS) - (apple_mod_SOURCES, apple_mod_CFLAGS, apple_mod_LDFLAG): Removed. - - * conf/common.mk (grub_modules_init.lst): Use `find' instead of - `grep --include'. - (pkgdata_MODULES): Add test.mod. - -2005-11-18 Timothy Baldwin - - * genmk.rb: Fixed list rules moved to Makefile.in. Recognise - appending to variables with "+=". - (PModule): Use full pathname to generate *.lst filenames. - - * Makefile.in: Fixed list rules moved from genmk.rb. - (.DELETE_ON_ERROR): New special target. - (RMKFILES): Add common.rmk and sparc64-ieee1275.rmk. - - * conf/i386-pc.rmk: Include conf/common.mk. - (pkgdata_MODULES): Removed fshelp.mod, fat.mod, ext2.mod, ufs.mod, - minix.mod, hfs.mod, jfs.mod, xfs.mod, affs.mod, sfs.mod, - hello.mod, boot.mod, terminal.mod, ls.mod, cmp.mod, cat.mod, - help.mod, font.mod, terminfo.mod, amiga.mod, apple.mod, pc.mod, - sun.mod, acorn.mod, loopback.mod, default.mod, timeout.mod, - configfile.mod, search.mod, gzio.mod and test.mod. - (symlist.c, grub_script.tab.c, grub_script.tab.h, kernel_syms.lst) - (grub_modules_init.lst, grub_modules_init.h, grub_emu_init.c) - (fshelp_mod_SOURCES, fshelp_mod_CFLAGS, fshelp_mod_LDFLAGS) - (fat_mod_SOURCES, fat_mod_CFLAGS, fat_mod_LDFLAGS) - (ext2_mod_SOURCES, ext2_mod_CFLAGS, ext2_mod_LDFLAGS) - (ufs_mod_SOURCES, ufs_mod_CFLAGS, ufs_mod_LDFLAGS) - (minix_mod_SOURCES, minix_mod_CFLAGS, minix_mod_LDFLAGS) - (hfs_mod_SOURCES, hfs_mod_CFLAGS, hfs_mod_LDFLAGS, jfs_mod_SOURCES) - (jfs_mod_CFLAGS, jfs_mod_LDFLAGS, iso9660_mod_SOURCES) - (iso9660_mod_CFLAGS, iso9660_mod_LDFLAGS, xfs_mod_SOURCES) - (xfs_mod_CFLAGS, xfs_mod_LDFLAGS, affs_mod_SOURCES) - (affs_mod_CFLAGS, affs_mod_LDFLAGS, sfs_mod_SOURCES) - (sfs_mod_CFLAGS, sfs_mod_LDFLAGS, hello_mod_SOURCES) - (hello_mod_CFLAGS, hello_mod_LDFLAGS, boot_mod_SOURCES) - (boot_mod_CFLAGS, boot_mod_LDFLAGS, terminal_mod_SOURCES) - (terminal_mod_CFLAGS, terminal_mod_LDFLAGS, ls_mod_SOURCES) - (ls_mod_CFLAGS, ls_mod_LDFLAGS, cmp_mod_SOURCES, cmp_mod_CFLAGS) - (cmp_mod_LDFLAGS, cat_mod_SOURCES, cat_mod_CFLAGS, cat_mod_LDFLAGS) - (help_mod_SOURCES, help_mod_CFLAGS, help_mod_LDFLAGS) - (font_mod_SOURCES, font_mod_CFLAGS, font_mod_LDFLAGS) - (terminfo_mod_SOURCES, terminfo_mod_CFLAGS, terminfo_mod_LDFLAGS) - (amiga_mod_SOURCES, amiga_mod_CFLAGS, amiga_mod_LDFLAGS) - (apple_mod_SOURCES, apple_mod_CFLAGS, apple_mod_LDFLAG): Move from - here... - * conf/common.rmk: ... to here. New file. - - * conf/common.mk: New file. - -2005-11-18 Yoshinori K. Okuji - - * conf/powerpc-ieee1275.rmk (grub_script.tab.h): Unified to ... - (grub_script.tab.c): ... here. - - * conf/sparc64-ieee1275.rmk (grub_script.tab.h): Unified to ... - (grub_script.tab.c): ... here. - - * conf/i386-pc.rmk (grub_script.tab.h): Unified to ... - (grub_script.tab.c): ... here. - - * normal/command.c (grub_command_find): Fixed a memory leak of - MODULE_NAME. Reported by Mike Small . - -2005-11-13 Timothy Baldwin - - * include/grub/symbol.h: (FUNCTION): Use double quotes instead of - "@" which marks the start of a comment on ARM. - (VARIABLE): Likewise. - -2005-11-13 Timothy Baldwin - - Add support for Linux/ADFS partition tables. - - * partmap/acorn.c: New file. - - * include/grub/acorn_filecore.h: Likewise. - - * DISTLIST: Added `partmap/acorn.c' and - `include/grub/acorn_filecore.h'. - - * conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Add - `partmap/acorn.c'. - (pkgdata_MODULES): Add `acorn.mod'. - (acorn_mod_SOURCES): New variable. - (acorn_mod_CFLAGS): Likewise. - - * conf/sparc64-ieee1275.rmk (grub_emu_SOURCES): Add - `partmap/acorn.c'. - (pkgdata_MODULES): Add `acorn.mod'. - (acorn_mod_SOURCES): New variable. - (acorn_mod_CFLAGS): Likewise. - - * conf/i386-pc.rmk (grub_emu_SOURCES): Add `partmap/acorn.c'. - (pkgdata_MODULES): Add `acorn.mod'. - (acorn_mod_SOURCES): New variable. - (acorn_mod_CFLAGS): Likewise. - (acorn_mod_LDFLAGS): Likewise. - - * include/types.h (grub_disk_addr_t): New typedef. - -2005-11-13 Marco Gerards - - * geninit.sh: New file. - - * geninitheader.sh: Likewise. - - * commands/boot.c (grub_boot_init, grub_boot_fini): Removed. - * commands/cat.c (grub_cat_init, grub_cat_fini): Likewise. - * commands/cmp.c (grub_cmp_init, grub_cmp_fini): Likewise. - * commands/configfile.c (grub_configfile_init) - (grub_configfile_fini): Likewise. - * commands/default.c (grub_default_init, grub_default_fini): - Likewise. - * commands/help.c (grub_help_init, grub_help_fini): Likewise. - * commands/ls.c (grub_ls_init, grub_ls_fini): Likewise. - * commands/search.c (grub_search_init, grub_search_fini): Likewise. - * commands/terminal.c (grub_terminal_init, grub_terminal_fini): - Likewise. - * commands/test.c (grub_test_init, grub_test_fini): Likewise. - * commands/timeout.c (grub_timeout_init, grub_timeout_fini): - Likewise. - * commands/i386/pc/halt.c (grub_halt_init, grub_halt_fini): Likewise. - * commands/ieee1275/halt.c (grub_halt_init, grub_halt_fini): - Likewise. - * commands/i386/pc/reboot.c (grub_reboot_init, grub_reboot_fini): - Likewise. - * commands/ieee1275/reboot.c (grub_reboot_init, grub_reboot_fini): - Likewise. - * disk/loopback.c (grub_loop_init, grub_loop_fini): Likewise. - * fs/affs.c (grub_affs_init, grub_affs_fini): Likewise. - * fs/ext2.c (grub_ext2_init, grub_ext2_fini): Likewise. - * fs/fat.c (grub_fat_init, grub_fat_fini): Likewise. - * fs/hfs.c (grub_hfs_init, grub_hfs_fini): Likewise. - * fs/iso9660.c (grub_iso9660_init, grub_iso9660_fini): Likewise. - * fs/jfs.c (grub_jfs_init, grub_jfs_fini): Likewise. - * fs/minix.c (grub_minix_init, grub_minix_fini): Likewise. - * fs/sfs.c (grub_sfs_init, grub_sfs_fini): Likewise. - * fs/ufs.c (grub_ufs_init, grub_ufs_fini): Likewise. - * fs/xfs.c (grub_xfs_init, grub_xfs_fini): Likewise. - * normal/main.c (grub_normal_init, grub_normal_fini): Likewise. - * partmap/amiga.c (grub_amiga_partition_map_init) - (grub_amiga_partition_map_fini): Likewise. - * partmap/apple.c (grub_apple_partition_map_init) - (grub_apple_partition_map_fini): Likewise. - * partmap/pc.c (grub_pc_partition_map_init) - (grub_pc_partition_map_fini): Likewise. - * partmap/sun.c (grub_sun_partition_map_init, - grub_sun_partition_map_fini): Likewise. - * term/terminfo.c (grub_terminal_init, grub_terminal_fini): - Likewise. - - * util/grub-emu.c: Include . - (main): Don't initialize and de-initialize any modules directly, - use `grub_init_all' and `grub_fini_all' instead. - - * term/i386/pc/vesafb.c (grub_vesafb_init): Renamed to - `grub_vesafb_mod_init'. - (grub_vesafb_fini): Renamed to `grub_vesafb_mod_fini'. Updated - all users. - * term/i386/pc/vga.c (grub_vga_init): Renamed to - `grub_vga_mod_init'. Updated all users. - (grub_vga_fini): Renamed to `grub_vga_mod_fini'. - - * conf/i386-pc.rmk (grub_emu_SOURCES): Add `grub_emu_init.c'. - (grub_modules_init.lst, grub_modules_init.h, grub_emu_init.c): New - rules. - - * include/grub/dl.h (GRUB_MOD_INIT): Add argument `name'. - Generate a function to initialize the module in utilities. - Updated all callers. - (GRUB_MOD_FINI): Add argument `name'. Generate a function to - initialize the module in utilities. Updated all callers. - -2005-11-09 Hollis Blanchard - - * term/ieee1275/ofconsole.c (grub_ofconsole_cls): Use both the ANSI - escape sequence and a literal ^L to clear the screen. - - * commands/ieee1275/suspend.c (grub_cmd_suspend): Clear the screen - when returning from Open Firmware. - -2005-11-09 Hollis Blanchard - - * term/ieee1275/ofconsole.c (grub_ofconsole_width): New variable. - (grub_ofconsole_height): Likewise. - (grub_ofconsole_putchar): If `grub_curr_x' exceeds console width, - manually insert a '\n'. - (grub_ofconsole_getwh): Set and return `grub_ofconsole_width' and - `grub_ofconsole_height'. Return early if these are already set. - -2005-11-07 Vincent Pelletier - - * conf/sparc64-ieee1275.rmk (grub_emu_SOURCES): Add - `commands/test.c', `fs/affs.c', `fs/sfs.c', `fs/xfs.c', - `normal/execute.c', `normal/lexer.c', `io/gzio.c', - `kern/parser.c', `grub_script.tab.c', `normal/function.c' - and `normal/script.c'. - (normal_mod_SOURCES): `normal/execute.c', `normal/lexer.c', - `grub_script.tab.c', `normal/function.c' and `normal/script.c'. - (test_mod_SOURCES): New variable. - (test_mod_CFLAGS): Likewise. - (test_mod_LDFLAGS): Likewise. - (pkgdata_MODULES): Add `test.mod'. - (grub_script.tab.c): New rule. - (grub_script.tab.h): Likewise. - -2005-11-07 Marco Gerards - - * conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Add - `commands/test.c', `normal/execute.c', `normal/lexer.c', - `grub_script.tab.c', `normal/function.c' and `normal/script.c'. - (normal_mod_SOURCES): `normal/execute.c', `normal/lexer.c', - `grub_script.tab.c', `normal/function.c' and `normal/script.c'. - (test_mod_SOURCES): New variable. - (test_mod_CFLAGS): Likewise. - (pkgdata_MODULES): Add `test.mod'. - (grub_script.tab.c): New rule. - (grub_script.tab.h): Likewise. - -2005-11-06 Marco Gerards - - Add initial scripting support. - - * commands/test.c: New file. - * include/grub/script.h: Likewise. - * normal/execute.c: Likewise. - * normal/function.c: Likewise. - * normal/lexer.c: Likewise. - * normal/parser.y: Likewise. - * normal/script.c: Likewise. - - * configure.ac: Add `AC_PROG_YACC' test. - - * conf/i386-pc.rmk (grub_emu_SOURCES): Add `commands/test.c', - `normal/execute.c', `normal/lexer.c', `grub_script.tab.c', - `normal/function.c' and `normal/script.c'. - (normal_mod_SOURCES): `normal/execute.c', `normal/lexer.c', - `grub_script.tab.c', `normal/function.c' and `normal/script.c'. - (test_mod_SOURCES, test_mod_CFLAGS, test_mod_LDFLAGS): New - variables. - (pkgdata_MODULES): Add `test.mod'. - (grub_script.tab.c): New rule. - (grub_script.tab.h): Likewise. - - * include/grub/err.h (grub_err_t): Add `GRUB_ERR_TEST_FAILURE'. - - * include/grub/normal.h (grub_test_init): New prototype. - (grub_test_fini): Likewise. - - * normal/command.c: Include . - (grub_command_execute): Rewritten. - - * util/grub-emu.c (main): Call `grub_test_init' and - `grub_test_fini'. - -2005-11-03 Hollis Blanchard - - * kern/powerpc/ieee1275/init.c (grub_get_rtc): Initialize `msecs' - to 0. - * term/ieee1275/ofconsole.c (grub_ofconsole_checkkey): Return -1 if - there are no pending characters. - -2005-11-03 Hollis Blanchard - - * kern/powerpc/ieee1275/openfw.c (grub_ieee1275_get_devname): Use - `grub_strndup' to drop device arguments. Replace unnecessary - `grub_strndup' with `grub_strdup'. - -2005-11-03 Hollis Blanchard - - * kern/term.c (grub_cls): Do not call grub_cur_term->cls() if the - `debug' environment variable has been set. - -2005-11-02 Hollis Blanchard - - * Makefile.in (install-local): Use $(DATA). - (uninstall): Likewise. - * conf/powerpc-ieee1275.rmk (bin_UTILITIES): Move grub-mkimage... - (sbin_UTILITIES): ... to here. - (sbin_SCRIPTS): New variable. - (grub_install_SOURCES): New variable. - * util/powerpc/ieee1275/grub-install.in: New file. - * util/powerpc/ieee1275/grub-mkimage.c (kernel_path): Remove - variable. - (add_segments): Call `grub_util_get_path'. - -2005-10-28 Yoshinori K. Okuji - - From Timothy Baldwin: - * commands/ls.c (grub_ls_list_files): Close FILE with - grub_file_close. - * kern/misc.c (grub_vsprintf): Terminate the string S with NUL. - -2005-10-24 Marco Gerards - - * include/grub/parser.h: New file. - - * kern/parser.c: Likewise. - - * conf/i386-pc.rmk (kernel_img_SOURCES): Add `kern/parser.c'. - (grub_setup_SOURCES): Likewise. - (grub_probefs_SOURCES): Likewise. - (grub_emu_SOURCES): Likewise. - (kernel_img_HEADERS): Add `parser.h'. - - * conf/powerpc-ieee1275.rmk (grubof_HEADERS): Add `parser.h'. - (grub_emu_SOURCES): Add `kern/parser.c'. - (grubof_SOURCES): Likewise. - - * conf/sparc64-ieee1275.rmk (grubof_HEADERS): Add `parser.h'. - (grubof_SOURCES): Add `kern/parser.c'. - - * include/grub/misc.h (grub_split_cmdline): Removed prototype. - - * kern/misc.c (grub_split_cmdline): Removed function. - - * kern/rescue.c: Include . - (grub_enter_rescue_mode): Use `grub_parser_split_cmdline' instead - of `grub_split_cmdline'. - - * normal/command.c: Include . - (grub_command_execute): Use `grub_parser_split_cmdline' instead - of `grub_split_cmdline'. - - * normal/completion.c: Include . - (cmdline_state): New variable. - (iterate_dir): End the filename with a quote depending on the - command line state. - (get_state): new function. - (grub_normal_do_completion): Use `grub_parser_split_cmdline' to - split the arguments and determine the current argument. When the - argument string is not quoted, escape all spaces. - -2005-10-23 Vincent Pelletier - - * normal/sparc64/setjmp.S: New file. - -2005-10-23 Vincent Pelletier - - * include/grub/sparc64/libgcc.h: New file. - * conf/sparc64-ieee1275.rmk (COMMON_ASFLAGS): Remove -Av9. - (normal_mod_SOURCES): Use normal/sparc64/setjmp.S instead of - normal/sparc64/setjmp.c. - -2005-10-23 Vincent Pelletier - - * kern/sparc64/dl.c: Rewritten for SPARCV9 ELF. - * kern/sparc64/cache.S: New file. - * kern/sparc64/cache.c: Removed. - * conf/sparc64-ieee1275.rmk (COMMON_ASFLAGS): Add -Av9. - (COMMON_CFLAGS): Add -mno-app-regs. Remove -mcpu=v9 and - -mtune=ultrasparc. - (COMMON_LDFLAGS): Add -melf64_sparc. - (grubof_HEADERS): Add sparc64/libgcc.h and machine/kernel.h. - (grubof_SOURCES): Use cache.S instead of cache.c. - (grubof_LDFLAGS): Add -mno-app-regs. Replace "-Xlinker - --oformat -Xlinker elf64-sparc" by "-Bstatic,-melf64_sparc". - (pkgdata_MODULES): Uncomment. Leave linux.mod and _linux.mod - commented though. - (normal_mod_SOURCES): Add normal/completion.c and normal/misc.c. - (_linux_mod_SOURCES, _linux_mod_CFLAGS, linux_mod_SOURCES) - (linux_mod_CFLAGS): Commented out. - (_linux_mod_LDFLAGS, linux_mod_LDFLAGS): New macro, commented - out because module isn't built. - (fshelp_mod_LDFLAGS, fat_mod_LDFLAGS, ext2_mod_LDFLAGS) - (ufs_mod_LDFLAGS, minix_mod_LDFLAGS, hfs_mod_LDFLAGS) - (jfs_mod_LDFLAGS, iso9660_mod_LDFLAGS, normal_mod_LDFLAGS) - (hello_mod_LDFLAGS, boot_mod_LDFLAGS, terminal_mod_LDFLAGS) - (ls_mod_LDFLAGS, cmp_mod_LDFLAGS, cat_mod_LDFLAGS) - (font_mod_LDFLAGS, amiga_mod_LDFLAGS, apple_mod_LDFLAGS) - (pc_mod_LDFLAGS, sun_mod_LDFLAGS, loopback_mod_LDFLAGS) - (suspend_mod_LDFLAGS, reboot_mod_LDFLAGS, halt_mod_LDFLAGS) - (help_mod_LDFLAGS, default_mod_LDFLAGS, timeout_mod_LDFLAGS) - (configfile_mod_LDFLAGS, search_mod_LDFLAGS, xfs_mod_SOURCES) - (xfs_mod_CFLAGS, xfs_mod_LDFLAGS, affs_mod_SOURCES) - (affs_mod_CFLAGS, affs_mod_LDFLAGS, sfs_mod_SOURCES) - (sfs_mod_CFLAGS, sfs_mod_LDFLAGS, gzio_mod_SOURCES) - (gzio_mod_CFLAGS, gzio_mod_LDFLAGS): New macro. - -2005-10-20 Yoshinori K. Okuji - - * util/i386/pc/grub-probefs.c (main): Call grub_xfs_init and - grub_xfs_fini. Do not call grub_hfs_init or grub_hfs_fini any - longer, because HFS should not be used on PC. - -2005-10-20 Timothy Baldwin - - * io/gzio.c (grub_gzio_read): Use OFFSET instead of FILE->OFFSET - consistently within the loop. - -2005-10-15 Marco Gerards - - * fs/xfs.c (grub_xfs_iterate_dir): Detect an error if part of a - directory can not be read. - -2005-10-15 Yoshinori K. Okuji - - * configure.ac (AC_INIT): Increase the version number to 1.91. - - * DISTLIST: Added include/grub/terminfo.h, include/grub/tparm.h, - include/grub/i386/pc/serial.h, term/terminfo.c, term/tparm.c and - term/i386/pc/serial.c. - -2005-10-15 Yoshinori K. Okuji - - * kern/file.c (grub_file_seek): Seeking to an offset equal to a - file size must be permitted. - - * kern/i386/pc/startup.S (multiboot_trampoline): Fix a mistake - between %ah and %al. - -2005-10-15 Yoshinori K. Okuji - - * fs/xfs.c (grub_xfs_iterate_dir): Change the type of BLK to - grub_uint64_t. - Call the hook with a NUL-terminated filename. - (grub_xfs_mount): Use grub_be_to_cpu32 instead of - grub_cpu_to_be32. - - * kern/term.c (cursor_state): New variable. - (grub_term_set_current): Reset the cursor state on a new - terminal. - (grub_setcursor): Rewritten to use CURSOR_STATE. - (grub_getcursor): New function. - - * include/grub/term.h (grub_getcursor): New prototype. - - * io/gzio.c (test_header): Align BUF for accessing it as 32-bit - integers on ARM. Reported by Timothy Baldwin - . - -2005-10-11 Marco Gerards - - * fs/sfs.c (grub_sfs_open): Don't free `data->label' if it is not - allocated. - (grub_sfs_dir): Likewise. - -2005-10-09 Marco Gerards - - Add support for the SFS filesystem. - - * fs/sfs.c: New file. - - * DISTLIST: Added `fs/sfs.c'. - - * conf/i386-pc.rmk (grub_setup_SOURCES): Add `fs/sfs.c'. - (grub_probefs_SOURCES): Likewise. - (grub_emu_SOURCES): Likewise. - (pkgdata_MODULES): Add `sfs.mod'. - (sfs_mod_SOURCES): New variable. - (sfs_mod_CFLAGS): Likewise. - (sfs_mod_LDFLAGS): Likewise. - - * conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Add `fs/sfs.c'. - (pkgdata_MODULES): Add `sfs.mod'. - (sfs_mod_SOURCES): New variable. - (sfs_mod_CFLAGS): Likewise. - - * util/grub-emu.c (main): Call `grub_sfs_init' and - `grub_sfs_fini'. - - * include/grub/fs.h (grub_sfs_init): New prototype. - (grub_sfs_fini): Likewise. - -2005-10-07 Marco Gerards - - Add support for the AFFS filesystem. - - * fs/affs.c: New file. - - * DISTLIST: Added `fs/affs.c'. - - * conf/i386-pc.rmk (grub_setup_SOURCES): Add `fs/affs.c'. - (grub_probefs_SOURCES): Likewise. - (grub_emu_SOURCES): Likewise. - (pkgdata_MODULES): Add `affs.mod'. - (affs_mod_SOURCES): New variable. - (affs_mod_CFLAGS): Likewise. - (affs_mod_LDFLAGS): Likewise. - - * conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Add `fs/affs.c'. - (pkgdata_MODULES): Add `affs.mod'. - (affs_mod_SOURCES): New variable. - (affs_mod_CFLAGS): Likewise. - - * util/grub-emu.c (main): Call `grub_affs_init' and - `grub_affs_fini'. - - * include/grub/fs.h (grub_affs_init): New prototype. - (grub_affs_fini): Likewise. - -2005-10-01 Marco Gerards - - * fs/xfs.c (grub_xfs_iterate_dir): Add parentheses. - -2005-10-01 Marco Gerards - - * configure.ac: Accept `x86_64' as host_cpu. In that case add - `-m32' to CFLAGS. - - * genmk.rb (class PModule): Always use `$(#{prefix}_LDFLAGS)' when - linking. - - * conf/i386-pc.rmk (COMMON_CFLAGS): Add `-m32'. - (COMMON_LDFLAGS): New variable. - (kernel_img_LDFLAGS): Include `COMMON_FLAGS'. - (_chain_mod_LDFLAGS, fshelp_mod_LDFLAGS, fat_mod_LDFLAGS) - (ext2_mod_LDFLAGS, ufs_mod_LDFLAGS, minix_mod_LDFLAGS) - (hfs_mod_LDFLAGS, jfs_mod_LDFLAGS, iso9660_mod_LDFLAGS) - (xfs_mod_LDFLAGS, _linux_mod_LDFLAGS, linux_mod_LDFLAGS) - (normal_mod_LDFLAGS, hello_mod_LDFLAGS, boot_mod_LDFLAGS) - (terminal_mod_LDFLAGS, ls_mod_LDFLAGS, cmp_mod_LDFLAGS) - (cat_mod_LDFLAGS, help_mod_LDFLAGS, reboot_mod_LDFLAGS) - (halt_mod_LDFLAGS, vga_mod_LDFLAGS, font_mod_LDFLAGS) - (terminfo_mod_LDFLAGS, serial_mod_LDFLAGS, _multiboot_mod_LDFLAGS) - (multiboot_mod_LDFLAGS, amiga_mod_LDFLAGS, apple_mod_LDFLAGS) - (pc_mod_LDFLAGS, sun_mod_LDFLAGS, loopback_mod_LDFLAGS) - (default_mod_LDFLAGS, timeout_mod_LDFLAGS, configfile_mod_LDFLAGS) - (vbe_mod_LDFLAGS, vesafb_mod_LDFLAGS, vbeinfo_mod_LDFLAGS) - (vbetest_mod_LDFLAGS, search_mod_LDFLAGS, gzio_mod_LDFLAGS): New - variables. - (normal_mod_ASFLAGS): Add `-m32'. - - * include/grub/types.h (grub_host_addr_t, grub_host_off_t) - (grub_host_size_t, grub_host_ssize_t): New types. - (grub_addr_t, grub_off_t, grub_size_t, grub_ssize_t): Make type - dependent of `GRUB_CPU_SIZEOF_VOID_P' instead on - `GRUB_HOST_SIZEOF_VOID_P'. - - * include/grub/kernel.h (struct grub_module_header): Type of - member offset changed to `grub_host_off_t'. Type of member size - changed to `grub_host_size_t'. - (struct grub_module_info): Type of member offset changed to - `grub_host_off_t'. Type of member size changed to - `grub_host_size_t'. - -2005-09-29 Yoshinori K. Okuji - - Make GRUB's kernel compliant to Multiboot Specification. - - * kern/i386/pc/startup.S (multiboot_header): New label. - (multiboot_entry): Likewise. - (multiboot_trampoline): Likewise. - - * include/grub/i386/pc/kernel.h (GRUB_KERNEL_MACHINE_RAW_SIZE): - Increased to 0x4A0. - - * fs/xfs.c (grub_xfs_iterate_dir): Fix a syntax error. You may not - put parentheses after a question mark. - [!GRUB_UTIL] (my_mod): New variable. - - * util/grub-emu.c (main): Call grub_xfs_init and grub_xfs_fini. - -2005-09-28 Marco Gerards - - Adds support for the XFS filesystem. Btrees are not supported - yet. - - * fs/xfs.c: New file. - - * DISTLIST: Added `fs/xfs.c'. - - * conf/i386-pc.rmk (grub_setup_SOURCES): Add `fs/xfs.c'. - (grub_probefs_SOURCES): Likewise. - (grub_emu_SOURCES): Likewise. - (pkgdata_MODULES): Add `xfs.mod'. - (xfs_mod_SOURCES): New variable. - (xfs_mod_CFLAGS): Likewise. - - * conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Add `fs/xfs.c'. - (pkgdata_MODULES): Add `xfs.mod'. - (xfs_mod_SOURCES): New variable. - (xfs_mod_CFLAGS): Likewise. - - * util/grub-emu.c (main): Call `grub_xfs_init' and - `grub_xfs_fini'. - - * include/grub/fs.h (grub_xfs_init): New prototype. - (grub_xfs_fini): Likewise. - - -2005-09-18 Vesa Jaaskelainen - - * video/i386/pc/vbe.c (grub_vbe_set_video_mode): In indexed - color modes, allow greater than 16 colors to be configured as - a default palette. - -2005-09-03 Yoshinori K. Okuji - - * normal/completion.c (complete_arguments): Add the qualifier - const into OPTIONS. - - From Omniflux : - * include/grub/terminfo.h: New file. - * include/grub/tparm.h: Likewise. - * include/grub/i386/pc/serial.h: Likewise. - * term/terminfo.c: Likewise. - * term/tparm.c: Likewise. - * term/i386/pc/serial.c: Likewise. - * conf/i386-pc.rmk (pkgdata_MODULES): Added terminfo.mod and - serial.mod. - (terminfo_mod_SOURCES): New variable. - (terminfo_mod_CFLAGS): Likewise. - (serial_mod_SOURCES): Likewise. - (serial_mod_CFLAGS): Likewise. - -2005-08-31 Yoshinori K. Okuji - - * DISTLIST: Replaced boot/powerpc/ieee1275/crt0.S and - boot/powerpc/ieee1275/cmain.c with kern/powerpc/ieee1275/crt0.S - and kern/powerpc/ieee1275/cmain.c, respectively. - - * boot/powerpc/ieee1275/crt0.S: Moved to ... - * kern/powerpc/ieee1275/crt0.S: ... here. - - * boot/powerpc/ieee1275/cmain.c: Moved to ... - * kern/powerpc/ieee1275/cmain.c: ... here. - - * conf/powerpc-ieee1275.rmk (grubof_SOURCES): Use - kern/powerpc/ieee1275/crt0.S and kern/powerpc/ieee1275/cmain.c - instead of boot/powerpc/ieee1275/crt0.S and - boot/powerpc/ieee1275/cmain.c, respectively. - - * boot/i386/pc/boot.S (lba_mode): Do not store the total number of - sectors. It was not used anyway. - -2005-08-30 Hollis Blanchard - - * term/ieee1275/ofconsole.c (grub_ofconsole_getcharwidth): Fix - `unused parameter' warning. - -2005-08-30 Hollis Blanchard - - * term/ieee1275/ofconsole.c (grub_ofconsole_getcharwidth): New - function. - (grub_ofconsole_term): Specify grub_ofconsole_getcharwidth as - getcharwidth. - -2005-08-28 Marco Gerards - - * include/grub/normal.h (enum grub_completion_type): Added - `GRUB_COMPLETION_TYPE_ARGUMENT'. - - * normal/cmdline.c (print_completion): Handle - the `GRUB_COMPLETION_TYPE_ARGUMENT' type. - * normal/menu_entry.c (store_completion): Likewise. - - * normal/completion.c (complete_arguments): New function. - (grub_normal_do_completion): Call `complete_arguments' when the - current words start with a dash. - -2005-08-27 Marco Gerards - - * conf/powerpc-ieee1275.rmk (pkgdata_MODULES): Fix typo (use - `gzio.mod' instead of `io.mod'). - -2005-08-22 Yoshinori K. Okuji - - * gendistlist.sh (EXTRA_DISTFILES): Added genfslist.sh. - (DISTDIRS): Added io and video. - Rewrite the search routine to make an output consistently. - - * DISTLIST: Added conf/sparc64-ieee1275.mk, - conf/sparc64-ieee1275.rmk, include/grub/gzio.h, - include/grub/ieee1275/ieee1275.h, include/grub/ieee1275/ofdisk.h, - io/gzio.c, kern/sparc64/cache.c, kern/sparc64/dl.c, - kern/sparc64/ieee1275/init.c, kern/sparc64/ieee1275/openfw.c and - util/powerpc/ieee1275/misc.c. - - * include/grub/gzio.h: New file. - * io/gzio.c: Likewise. - - * kern/file.c (grub_file_close): Call grub_device_close only if - FILE->DEVICE is not NULL. - - * include/grub/mm.h [!NULL] (NULL): New macro. - - * include/grub/err.h (GRUB_ERR_BAD_GZIP_DATA): New constant. - - * conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Added io/gzip.c. - (pkgdata_MODULES): Added gzio.mod. - (gzio_mod_SOURCES): New variable. - (gzio_mod_CFLAGS): Likewise. - - * conf/i386-pc.rmk (grub_emu_SOURCES): Added io/gzip.c. - (pkgdata_MODULES): Added gzio.mod. - (gzio_mod_SOURCES): New variable. - (gzio_mod_CFLAGS): Likewise. - - * commands/cat.c: Include grub/gzio.h. - (grub_cmd_cat): Use grub_gzfile_open instead of - grub_file_open. - - * commands/cmp.c: Include grub/gzio.h. - (grub_cmd_cmp): Use grub_gzfile_open instead of - grub_file_open. - - * loader/i386/pc/multiboot.c: Include grub/gzio.h. - (grub_rescue_cmd_multiboot): Use grub_gzfile_open instead of - grub_file_open. - (grub_rescue_cmd_module): Likewise. - -2005-08-21 Vincent Pelletier - - * conf/sparc64-ieee1275.rmk (grubof_SOURCES): The first file must be - kern/sparc64/ieee1275/init.c because it contains _start. - * conf/sparc64-ieee1275.mk: Generated from conf/sparc64-ieee1275.rmk. - -2005-08-21 Vincent Pelletier - - * configure.ac: Add support for sparc64 host with ieee1275 - firmware. - * configure: Generated from configure.ac. - * disk/ieee1275/ofdisk.c (grub_ofdisk_open): Use grub_ssize_t - instead of int. - (grub_ofdisk_read): Likewise. - (grub_ofdisk_open): Use %p to print pointer values, and cast the - pointers as (void *) to remove a warning. - (grub_ofdisk_close): Likewise. - (grub_ofdisk_read): Likewise. - * kern/ieee1275/ieee1275.c (grub_ieee1275_exit): This never - returns, so make it return void to remove a warning. - * include/grub/ieee1275/ieee1275.h (grub_ieee1275_exit): - Corresponding prototype change. - * kern/mm.c (grub_mm_init_region): Use %p to print pointer - values, and cast the pointers as (void *) to remove a warning. - (grub_mm_dump): Likewise. - * conf/sparc64-ieee1275.mk: New file. - * conf/sparc64-ieee1275.rmk: Likewise. - * include/grub/sparc64/setjmp.h: Likewise. - * include/grub/sparc64/types.h: Likewise. - * include/grub/sparc64/ieee1275/console.h: Likewise. - * include/grub/sparc64/ieee1275/ieee1275.h: Likewise. - * include/grub/sparc64/ieee1275/kernel.h: Likewise. - * include/grub/sparc64/ieee1275/time.h: Likewise. - * kern/sparc64/cache.c: Likewise. - * kern/sparc64/dl.c: Likewise. - * kern/sparc64/ieee1275/init.c: Likewise. - * kern/sparc64/ieee1275/openfw.c: Likewise. - -2005-08-21 Yoshinori K. Okuji - - * util/console.c (grub_ncurses_putchar): If C is greater than - 0x7f, set C to a question mark. - (grub_ncurses_getcharwidth): New function. - (grub_ncurses_term): Specify grub_ncurses_getcharwidth as - getcharwidth. - - * normal/menu.c (print_entry): Made aware of Unicode. First, - convert TITLE to UCS-4, and predict the cursor position by - grub_getcharwidth. - - * include/grub/misc.h (grub_utf8_to_ucs4): Specify the qualifier - const to SRC. - * kern/misc.c (grub_utf16_to_utf8): Likewise. - -2005-08-20 Yoshinori K. Okuji - - * loader/powerpc/ieee1275/linux.c (grub_rescue_cmd_linux): Specify - the boot file by the option BOOT_IMAGE. Use grub_stpcpy instead of - grub_strcat. - - * loader/i386/pc/linux.c (grub_rescue_cmd_linux): Specify the boot - file by the option BOOT_IMAGE. Use grub_stpcpy instead of - grub_strcpy and grub_strlen. Take it into account that a space - character is inserted as a delimiter. - -2005-08-20 Yoshinori K. Okuji - - * partmap/pc.c (pc_partition_map_iterate): Include the value of an - invalid magic in the error. - - * commands/search.c: New file. - - * util/grub-emu.c (main): Call grub_search_init and - grub_search_fini. - - * kern/rescue.c (grub_rescue_print_disks): Removed. - (grub_rescue_print_devices): New function. - (grub_rescue_cmd_ls): Use grub_device_iterate with - grub_rescue_print_devices instead of grub_disk_dev_iterate with - grub_rescue_print_disks. - - * kern/partition.c (grub_partition_iterate): Return the result of - PARTMAP->ITERATE instead of GRUB_ERRNO. - - * kern/device.c: Include grub/partition.h. - (grub_device_iterate): New function. - - * include/grub/partition.h (grub_partition_iterate): Return int - instead of grub_err_t. - - * include/grub/normal.h [GRUB_UTIL] (grub_search_init): New - prototype. - [GRUB_UTIL] (grub_search_fini): Likewise. - - * include/grub/device.h (grub_device_iterate): New prototype. - - * conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Added - commands/search.c. - (pkgdata_MODULES): Added search.mod. - (search_mod_SOURCES): New variable. - (search_mod_CFLAGS): Likewise. - - * conf/i386-pc.rmk (grub_emu_SOURCES): Added commands/search.c. - (pkgdata_MODULES): Added search.mod. - (search_mod_SOURCES): New variable. - (search_mod_CFLAGS): Likewise. - - * commands/ls.c (grub_ls_list_disks): Renamed to ... - (grub_ls_list_devices): ... this, and use grub_device_iterate. - All callers changed. - - * DISTLIST: Added commands/search.c. - -2005-08-20 Yoshinori K. Okuji - - * kern/term.c (grub_putchar): Use grub_utf8_to_ucs4 for the - conversion. - (grub_getcharwidth): New function. - - * kern/misc.c (grub_utf8_to_ucs4): New function. - - * include/grub/term.h (struct grub_term): Added a new member - "getcharwidth". - (grub_getcharwidth): New prototype. - - * include/grub/misc.h (grub_utf8_to_ucs4): New prototype. - - * term/i386/pc/console.c (map_char): New function. Segregated from - grub_console_putchar. - (grub_console_putchar): Use map_char. - (grub_console_getcharwidth): New function. - (grub_console_term): Specified grub_console_getcharwidth as - getcharwidth. - - * term/i386/pc/vga.c (grub_vga_getcharwidth): New function. - (grub_vga_term): Specified grub_vga_getcharwidth as getcharwidth. - - * term/i386/pc/vesafb.c (grub_virtual_screen_setup): Return - GRUB_ERRNO. - (grub_vesafb_init): Do not use RC. Instead, use GRUB_ERRNO. Rely - on grub_strtoul completely. - (write_char): Declare local variables in the beginning of the - function. - (grub_vesafb_getcharwidth): New function. - (grub_vesafb_term): Specified grub_vesafb_getcharwidth as - getcharwidth. - -2005-08-19 Yoshinori K. Okuji - - * DISTLIST: Replace commands/i386/pc/vbe_list_modes.c and - commands/i386/pc/vbe_test.c with commands/i386/pc/vbeinfo.c and - commands/i386/pc/vbetest.c. - - * video/i386/pc/vbe.c (grub_vbe_probe): If INFOBLOCK is not NULL, - call grub_vbe_get_controller_info again, because the returned - information is volatile. - (grub_vbe_set_video_mode): Mostly rewritten. - (grub_vbe_get_video_mode): Use grub_vbe_probe and use - grub_vbe_status_t correctly. - (grub_vbe_get_video_mode_info): Likewise. - (grub_vbe_set_pixel_rgb): Use a switch statement rather than - several if statements. - - * commands/i386/pc/vbe_list_modes.c: Renamed to ... - * commands/i386/pc/vbeinfo.c: ... this. - - * commands/i386/pc/vbe_test.c: Renamed to ... - * commands/i386/pc/vbetest.c: ... this. - - * commands/i386/pc/vbeinfo.c (grub_cmd_vbe_list_modes): Renamed to - ... - (grub_cmd_vbeinfo): ... this. Save video modes before - iterating. Skip a video mode, if it is not available, not enough - information is given or it is monochrome. Show the memory - model. Leave the interpretation of MODEVAR to grub_strtoul - completely. - (GRUB_MOD_INIT): Rename vbe_list_modes to vbeinfo. - (GRUB_MOD_FINI): Likewise. - - * commands/i386/pc/vbetest.c (grub_cmd_vbe_test): Renamed to ... - (grub_cmd_vbetest): ... this. Don't print unnecessarily. Use - grub_err_t instead of grub_uint32_t. Don't use SPTR. Remove a - duplicated grub_env_get. Leave the interpretation of MODEVAR to - grub_strtoul completely. - (real2pm): Removed. - (GRUB_MOD_INIT): Rename vbe_test to vbetest. - (GRUB_MOD_FINI): Likewise. - - * normal/misc.c: Include grub/mm.h. - - * conf/i386-pc.rmk (pkgdata_MODULES): Replaced vbe_test.mod and - vbe_list_modes with vbetest.mod and vbeinfo.mod. - (vbe_list_modes_mod_SOURCES): Removed. - (vbe_list_modes_mod_CFLAGS): Likewise. - (vbe_test_mod_SOURCES): Likewise. - (vbe_test_mod_CFLAGS): Likewise. - (vbeinfo_mod_SOURCES): New variable. - (vbeinfo_mod_CFLAGS): Likewise. - (vbetest_mod_SOURCES): Likewise. - (vbetest_mod_CFLAGS): Likewise. - -2005-08-18 Yoshinori K. Okuji - - * normal/misc.c: New file. - - * DISTLIST: Added normal/misc.c. - - * partmap/amiga.c (amiga_partition_map_iterate): Add an argument - DISK to HOOK. Call HOOK with DISK. - * partmap/apple.c (apple_partition_map_iterate): Likewise. - * partmap/pc.c (pc_partition_map_iterate): Likewise. - * partmap/sun.c (sun_partition_map_iterate): Likewise. - - * normal/menu_entry.c (struct screen): Added a new member - "completion_shown". - (completion_buffer): New global variable. - (make_screen): Set SCREEN->COMPLETION_SHOWN to zero. - (store_completion): New function. - (complete): Likewise. - (clear_completions): Likewise. - (grub_menu_entry_run): If SCREEN->COMPLETION_SHOWN is non-zero, - call clear_completions and reset SCREEN->COMPLETION_SHOWN. If C is - a tab, call complete. - - * normal/completion.c (disk_dev): Removed. - (print_simple_completion): Likewise. - (print_partition_completion): Likewise. - (print_func): New global variable. - (add_completion): Do not take the arguments WHAT or PRINT any - longer. Added a new argument TYPE. Instead of printing directly, - call PRINT_FUNC if not NULL. - All callers changed. - (complete_device): Use a local variable DEV instead of - DISK_DEV. Do not move CURRENT_WORD to the end of a device name. - (grub_normal_do_completion): Take a new argument HOOK. Do not - initialize DISK_DEV. Initialize PRINT_FUNC to HOOK. If RET is an - empty string, return NULL instead. - All callers changed. - - * normal/cmdline.c (print_completion): New function. - - * kern/partition.c (grub_partition_iterate): Add an argument DISK - to HOOK. - All callers changed. - - * kern/disk.c (grub_print_partinfo): Removed. - - * include/grub/partition.h (struct grub_partition_map): Add a new - argument DISK into HOOK of ITERATE. - (grub_partition_iterate): Add a new argument DISK to HOOK. - - * include/grub/normal.h (enum grub_completion_type): New enum. - (grub_completion_type_t): New type. - (GRUB_COMPLETION_TYPE_COMMAND): New constant. - (GRUB_COMPLETION_TYPE_DEVICE): Likewise. - (GRUB_COMPLETION_TYPE_PARTITION): Likewise. - (GRUB_COMPLETION_TYPE_FILE): Likewise. - (grub_normal_do_completion): Added a new argument HOOK. - (grub_normal_print_device_info): New prototype. - - * include/grub/disk.h (grub_print_partinfo): Removed. - - * conf/i386-pc.rmk (grub_emu_SOURCES): Added normal/misc.c. - (normal_mod_SOURCES): Likewise. - * conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Likewise. - (normal_mod_SOURCES): Likewise. - - * commands/ls.c (grub_ls_list_disks): Use - grub_normal_print_device_info instead of grub_print_partinfo. Free - PNAME. - (grub_ls_list_files): Use grub_normal_print_device_info instead of - duplicating the code. - -2005-08-16 Vesa Jaaskelainen - - * commands/i386/pc/vbe_list_modes.c: Update source formatting to - follow GCS more precisely. - * commands/i386/pc/vbe_test.c: Likewise. - * include/grub/i386/pc/vbe.h: Likewise. - * term/i386/pc/vesafb.c: Likewise. - * video/i386/pc/vbe.c: Likewise. - -2005-08-16 Vesa Jaaskelainen - - * DISTLIST: Added term/i386/pc/vesafb.c - DISTLIST: Added video/i386/pc/vbe.c - DISTLIST: Added commands/i386/pc/vbe_list_modes.c. - DISTLIST: Added commands/i386/pc/vbe_test.c. - * commands/i386/pc/vbe_list_modes.c: New file. - * commands/i386/pc/vbe_test.c: Likewise. - * term/i386/pc/vesafb.c: Likewise. - * video/i386/pc/vbe.c: Likewise. - * include/grub/i386/pc/vbe.h (GRUB_VBE_DEFAULT_VIDEO_MODE): Added define. - (grub_vbe_probe) Added prototype. - (grub_vbe_set_video_mode) Likewise. - (grub_vbe_get_video_mode) Likewise. - (grub_vbe_get_video_mode_info) Likewise. - (grub_vbe_set_pixel_rgb) Likewise. - (grub_vbe_set_pixel_index) Likewise. - * conf/i386-pc.rmk (pkgdata_MODULES): Added vbe.mod. - (pkgdata_MODULES): Added vesafb.mod. - (pkgdata_MODULES): Added vbe_list_modes.mod. - (pkgdata_MODULES): Added vbe_test.mod. - (vbe_mod_SOURCES): Added. - (vbe_mod_CFLAGS): Likewise. - (vesafb_mod_SOURCES): Likewise. - (vesafb_mod_CFLAGS): Likewise. - (vbe_list_modes_mod_SOURCES): Likewise. - (vbe_list_modes_mod_CFLAGS): Likewise. - (vbe_test_mod_SOURCES): Likewise. - (vbe_test_mod_CFLAGS): Likewise. - -2005-08-14 Yoshinori K. Okuji - - * normal/command.c (grub_command_execute): If INTERACTIVE is - false and GRUB_COMMAND_FLAG_NO_ECHO is not specified, print - CMDLINE. Disable the pager if INTERACTIVE is true. - All callers are changed. - - * normal/main.c (grub_normal_execute): Read command.lst and fs.lst - before reading a config file. - * normal/main.c (read_config_file): Even if a command is not - found, register it if it is within an entry. - - * util/grub-emu.c: Include sys/types.h and unistd.h. - (options): Added --hold. - (struct arguments): Added a new member "hold". - (parse_opt): If KEY is 'H', set ARGS->HOLD to ARG or -1 if ARG is - missing. - (main): Initialize ARGS.HOLD to zero. Wait until ARGS.HOLD is - cleared by a debugger, if it is not zero. - - * include/grub/normal.h (grub_command_execute): Add an argument - INTERACTIVE. - -2005-08-14 Vesa Jaaskelainen - - * DISTLIST: Added include/grub/i386/pc/vbe.h. - -2005-08-13 Yoshinori K. Okuji - - * aclocal.m4 (grub_I386_CHECK_REGPARM_BUG): Replace the test - program with another one, because the old one didn't detect a bug - in gcc-3.4. Always use regparm 2, because the new test is still - not enough for gcc-4.0. Someone must investigate a simple test - case which detects a bug in gcc-4.0. - -2005-08-12 Yoshinori K. Okuji - - * DISTLIST: Added normal/completion.c. - - * normal/completion.c: New file. - - * term/i386/pc/console.c (grub_console_getwh): New function. - (grub_console_term): Assign grub_console_getwh to getwh. - - * normal/cmdline.c (grub_tab_complete): Removed. Now the same - function is defined in normal/completion.c as - grub_normal_do_completion. - (grub_cmdline_get): Use grub_normal_do_completion instead of - grub_tab_complete. - - * kern/partition.c (grub_partition_map_iterate): Return 1 if HOOK - returns non-zero, otherwise return 0. - (grub_partition_iterate): First, probe the partition map. Then, - call ITERATE only for this partition map. - - * kern/misc.c (grub_strncmp): Rewritten. - - * kern/disk.c (grub_disk_dev_iterate): Return 1 if P->ITERATE - returns non-zero. Otherwise return 0. - - * include/grub/partition.h (grub_partition_map_iterate): Return - int instead of void. - - * include/grub/normal.h (grub_normal_do_completion): New prototype. - - * include/grub/misc.h (grub_strncmp): Change the type of N to - grub_size_t. - - * include/grub/disk.h (grub_disk_dev_iterate): Return int instead - of void. - - * normal/menu.c (draw_border): Cast GRUB_TERM_BORDER_WIDTH to - unsigned explicitly before comparing it with I. - - * kern/main.c (grub_env_write_root): Add the attribute unused into - VAR. - - * conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Added - normal/completion.c. - (normal_mod_SOURCES): Likewise. - * conf/i386-pc.rmk (grub_emu_SOURCES): Likewise. - (normal_mod_SOURCES): Likewise. - - * normal/command.c (grub_iterate_commands): If ITERATE returns - non-zero, return one immediately. - -2005-08-09 Vesa Jaaskelainen - - * conf/i386-pc.rmk (kernel_img_HEADERS): Added machine/vbe.h. - * kern/i386/pc/startup.S: Updated Global Descriptor table's - descriptions. - (grub_vbe_get_controller_info): New function. - (grub_vbe_get_mode_info): Likewise. - (grub_vbe_set_mode): Likewise. - (grub_vbe_get_mode): Likewise. - (grub_vbe_set_memory_window): Likewise. - (grub_vbe_get_memory_window): Likewise. - (grub_vbe_set_scanline_length): Likewise. - (grub_vbe_get_scanline_length): Likewise. - (grub_vbe_set_display_start): Likewise. - (grub_vbe_get_display_start): Likewise. - (grub_vbe_set_palette_data): Likewise. - * include/grub/i386/pc/vbe.h: New file. - -2005-08-08 Hollis Blanchard - - * conf/powerpc-ieee1275.rmk (grubof_SOURCES): Replaced - kern/ieee1275/of.c with kern/ieee1275/ieee1275.c. - * DISTLIST: Likewise. - * kern/ieee1275/of.c: Moved to ... - * kern/ieee1275/ieee1275.c: ... here. - -2005-08-08 Hollis Blanchard - - * term/ieee1275/ofconsole.c: Include . - (grub_ofconsole_getwh): Cast -1 to type grub_ieee1275_ihandle_t. - Pass 0 as `end' parameter to grub_strtoul(). - -2005-08-08 Hollis Blanchard - - * include/grub/powerpc/ieee1275/console.h: Do not include - . Do not include . Remove ASM_FILE - ifdef. - (grub_console_cur_color): Remove i386-specific prototype. - (grub_console_real_putchar): Likewise. - (grub_console_checkkey): Likewise. - (grub_console_getkey): Likewise. - (grub_console_getxy): Likewise. - (grub_console_gotoxy): Likewise. - (grub_console_cls): Likewise. - (grub_console_setcursor): Likewise. - * kern/powerpc/ieee1275/init.c: Don't include . - Include . - * term/ieee1275/ofconsole.c: Likewise. - -2005-08-08 Yoshinori K. Okuji - - * Makefile.in (LIBLZO): New variable. - - * configure.ac: Check for LZO version 2. - - * util/i386/pc/grub-mkimage.c [HAVE_LZO_LZO1X_H]: Include - lzo/lzo1x.h instead of lzo1x.h. - - * conf/i386-pc.rmk (grub_mkimage_LDFLAGS): Use $(LIBLZO) instead - of -llzo. - - * util/i386/pc/grub-setup.c (main): Do not free PREFIX - twice. Reported by Vladimir Serbinenko . - - * partmap/pc.c (pc_partition_map_probe): Restore P->DATA after - copying the data from PARTITION to P. - -2005-08-07 Yoshinori K. Okuji - - * kern/rescue.c (grub_rescue_cmd_rmmod): If the reference count is - negative, unload the module. - - * util/i386/pc/grub-setup.c (setup): The name of the PC partition - map is "pc_partition_map" but not "pc". - (usage): Fix the description. The options are --boot-image and - --core-image but not --boot-file or --core-file. - (main): If not specified explicitly, make BOOT_FILE and CORE_FILE - based on DEFAULT_BOOT_FILE and DEFAULT_CORE_FILE with DIR or - DEFAULT_DIRECTORY. - - * util/i386/pc/grub-install.in: Do not specify --boot-file or - --core-file. Specify INSTALL_DEVICE as an argument. - - * util/console.c: Include config.h. - [HAVE_NCURSeS_CURSES_H]: Include ncurses/curses.h. - [HAVE_NCURSES_H]: Include ncurses.h. - [HAVE_CURSES_H]: Include curses.h. - [!A_NORMAL] (A_NORMAL): Defined as zero. - [!A_STANDOUT] (A_STANDOUT): Likewise. - - * conf/i386-pc.rmk (grub_emu_LDFLAGS): Use $(LIBCURSES) instead of - -lncurses. - * conf/powerpc-ieee1275.rmk (grub_emu_LDFLAGS): Likewise. - - * configure.ac: Check for curses libraries and headers. - - * Makefile.in (LIBCURSES): New variable. - - * genmk.rb (Script::rule): Set the executable bits. - - * util/i386/pc/biosdisk.c (grub_util_biosdisk_get_grub_dev): The - name of the PC partition map is "pc_partition_map" but not "pc". - -2005-08-07 Yoshinori K. Okuji - - * util/i386/pc/grub-install.in (grub_probefs): New variable. - (modules): Likewise. - (usage): Added descriptions for --modules and --grub-probefs. - Handle --modules and --grub-probefs. Save the arguments in MODULES - and GRUB_PROBEFS, respectively. - Auto-detect a filesystem module against GRUBDIR. If the result is - empty and modules are not specified explicitly, abort the - installation. Add the result to MODULES. - - * DISTLIST: Removed boot/powerpc/ieee1275/ieee1275.c, - disk/powerpc/ieee1275/ofdisk.c, - include/grub/powerpc/ieee1275/init.h and - term/powerpc/ieee1275/ofconsole.c. - Added disk/ieee1275/ofdisk.c, kern/ieee1275/of.c and - term/ieee1275/ofconsole.c. - - * include/grub/powerpc/ieee1275/console.h: Resurrected. - - * COPYING: Upgraded to the latest version. Only the address of the - FSF office has changed. - -2005-08-07 Yoshinori K. Okuji - - * conf/powerpc-ieee1275.rmk (grubof_SOURCES): Replaced - kern/ieee1275.c with kern/ieee1275/of.c. - - * kern/ieee1275.c: Moved to ... - * kern/ieee1275/of.c: ... here. - -2005-08-06 Yoshinori K. Okuji - - * conf/i386-pc.rmk (kernel_img_HEADERS): Reordered for - readability. - - * config.guess: Updated to the latest version from gnulib. - * config.sub: Likewise. - * install.sh: Likewise. - * mkinstalldirs: Likewise. - - * include/grub/console.h: Removed. This file is arch-specific. Do - not put this in include/grub. - - * include/grub/i386/pc/console.h: Resurrected. - - * util/console.c: Include grub/machine/console.h instead of - grub/console.h. - * util/grub-emu.c: Likewise. - -2005-08-04 Marco Gerards - - * kern/term.c (grub_putcode): Use `grub_getwh' instead of - hardcoded value. - - From Vincent Pelletier - * include/grub/term.h (GRUB_TERM_WIDTH, GRUB_TERM_HEIGHT): - Redefined to use grub_getwh. - (grub_term): New member named getwh. - (grub_getwh): New prototype. - * kern/term.c (grub_getwh): New function. - * term/i386/pc/console.c (grub_console_getwh): New function. - (grub_console_term): New member `getwh'. - * term/i386/pc/vga.c (grub_vga_getwh): New function. - (grub_vga_term): New member `getwh'. - * term/ieee1275/ofconsole.c (grub_ofconsole_readkey): Use - grub_ssize_t. - (grub_ofconsole_getw): New function. - (grub_ofconsole_init): Use grub_ssize_t and unsigned char. - (grub_ofconsole_term): New field named getwh and new initial - value. - -2005-08-03 Hollis Blanchard - - * include/grub/powerpc/ieee1275/ieee1275.h: Move ... - * include/grub/ieee1275/ieee1275.h: ... to here. All users updated. - Move `abort', `grub_reboot', and `grub_halt' prototypes ... - * include/grub/powerpc/ieee1275/kernel.h: ... to here. - * commands/ieee1275/halt.c: Include instead - of . - * commands/ieee1275/reboot.c: Likewise. - * boot/powerpc/ieee1275/ieee1275.c: Move ... - * kern/ieee1275.c: ... to here. All users updated. Change all - parameter structs to use new type `grub_ieee1275_cell_t'. - * term/powerpc/ieee1275/ofconsole.c: Move ... - * term/ieee1275/ofconsole.c: ... to here. All users updated. - * disk/powerpc/ieee1275/ofdisk.c: Move ... - * disk/ieee1275/ofdisk.c: ... to here. All users updated. - * boot/powerpc/ieee1275/cmain.c: Change `grub_ieee1275_entry_fn' type - to return int. - * include/grub/i386/pc/console.h: Move to include/grub/console.h. - Remove unused prototypes. All users updated. - * include/grub/powerpc/ieee1275/console.h: Removed. - * include/grub/powerpc/ieee1275/ieee1275.h: Define - `grub_ieee1275_cell_t'. - * kern/powerpc/ieee1275/openfw.c: Include . - Cast comparisons with -1 to the correct type. - * loader/powerpc/ieee1275/linux.c (kernel_entry_t): Change parameter - type to match `grub_ieee1275_entry_fn'. - -2005-08-01 Yoshinori K. Okuji - - * DISTLIST: Added util/i386/pc/grub-probefs.c. - - * conf/i386-pc.rmk (sbin_UTILITIES): Added grub-probefs. - (grub_setup_SOURCES): Removed partmap/amiga.c, partmap/apple.c and - partmap/sun.c. - (grub_probefs_SOURCES): New variable. - - * util/i386/pc/grub-probefs.c: New file. - - * util/i386/pc/grub-setup.c (main): Call - grub_pc_partition_map_init, grub_ufs_init, grub_minix_init, - grub_hfs_init and grub_jfs_init to initialize the system. Call - grub_ufs_fini, grub_minix_fini, grub_hfs_fini, grub_jfs_init and - grub_pc_partition_map_fini to finish the system. - -2005-07-31 Yoshinori K. Okuji - - * loader/i386/pc/multiboot.c (grub_multiboot_is_elf32): New - function. - (grub_multiboot_load_elf32): Likewise. - (grub_multiboot_is_elf64): Likewise. - (grub_multiboot_load_elf64): Likewise. - (grub_multiboot_load_elf): Likewise. - (grub_rescue_cmd_multiboot): Call grub_multiboot_load_elf to load - an ELF32 or ELF64 file. - This is based on a patch from Ruslan Nikolaev . - - From Serbinenko Vladimir : - * kern/disk.c (grub_print_partinfo): Check if FS->LABEL is not - NULL before calling FS->LABEL. - * fs/fat.c (grub_fat_dir): Initialize DIRNAME to NULL. - * commands/ls.c (grub_ls_list_files): Show labels, if possible. - (grub_ls_list_disks): Check if FS and FS->LABEL are not NULL - before calling FS->LABEL. - -2005-07-26 Yoshinori K. Okuji - - * util/i386/pc/grub-install.in (datadir): New variable. - (libdir): Removed. - (pkgdatadir): New variable. - (pkglibdir): Removed. - -2005-07-24 Yoshinori K. Okuji - - * DISTLIST: Added util/i386/pc/grub-install.in. - - * util/i386/pc/grub-install.in: New file. - - * conf/i386-pc.rmk (sbin_SCRIPTS): New variable. - (grub_install_SOURCES): Likewise. - - * genmk.rb: Added support for scripts. - (Script): New class. - (scripts): New variable. - - * Makefile.in (install-local): Install sbin_SCRIPTS by - INSTALL_SCRIPT. - (uninstall): Remove sbin_SCRIPTS. - - * util/i386/pc/grub-setup.c (main): If the argument is not a GRUB - device, try to get a GRUB device by - grub_util_biosdisk_get_grub_dev. - Free DEST_DEV. - - * util/i386/pc/grub-mkdevicemap.c (usage): Remove a duplicated - description for --device-map. - -2005-07-20 Yoshinori K. Okuji - - Change the semantics of variable hooks. They now return strings - instead of error values. - - * util/i386/pc/grub-setup.c: Include grub/env.h. - (setup): Use grub_device_set_root instead of grub_env_set. - - * kern/rescue.c (grub_rescue_cmd_root): Use grub_env_set and - grub_env_get instead of grub_device_set_root and - grub_device_get_root, respectively. - - * kern/main.c (grub_env_write_root): New function. - (grub_set_root_dev): Register grub_env_write_hook for "root". Use - grub_env_set instead of grub_device_set_root. - - * kern/env.c (HASHSZ): Reduced to 13, because GRUB does not need - many variables. - (grub_env_set): Set ENV->VALUE to the result of ENV->WRITE_HOOK - rather than calling ENV->WRITE_HOOK afterwards. - (grub_env_get): Return the result of ENV->READ_HOOK rather than - passing a pointer of a pointer. - (grub_register_variable_hook): Change the types of "read_hook" and - "write_hook" to grub_env_read_hook_t and grub_env_write_hook_t, - respectively. - Allocate the default empty string on the heap, because this string - may be freed later. - - * kern/device.c: Include grub/env.h. - (grub_device_set_root): Removed. - (grub_device_get_root): Likewise. - (grub_device_open): Use grub_env_get instead of - grub_device_get_root. - - * include/grub/env.h (grub_env_read_hook_t): New type. - (grub_env_write_hook_t): Likewise. - (grub_env_var): Change the types of "read_hook" and "write_hook" - to grub_env_read_hook_t and grub_env_write_hook_t, respectively. - (grub_register_variable_hook): Likewise. - - * include/grub/device.h (grub_device_set_root): Removed. - (grub_device_set_root): Likewise. - - * fs/fat.c (grub_fat_dir): Make a copy of PATH in DIRNAME, and - make sure that DIRNAME terminates with '/', so that - grub_fat_find_dir will fail if PATH is not a directory. - - * commands/ls.c (grub_ls_list_files): Remove the qualifier const - from DIRNAME. - Use the qualifier auto for print_files and print_files_long. - If FS->DIR sets GRUB_ERRNO to GRUB_ERR_BAD_FILE_TYPE, try DIRNAME - as a regular file. - Put a newline only if there is no error. - (grub_cmd_ls): Remove grub_ls_print_files, because this is not - used. - -2005-07-20 Yoshinori K. Okuji - - * kern/partition.c (grub_partition_probe): Initialize PART to - NULL. Otherwise, when no partition map is registered, this returns - a garbage. - -2005-07-19 Yoshinori K. Okuji - - * partmap/apple.c (apple_partition_map_iterate): Check if POS - equals GRUB_DISK_SECTOR_SIZE to see if the partition table is - valid. - -2005-07-18 Yoshinori K. Okuji - - * commands/ls.c (grub_ls_list_disks): Print the filesystem - information on each device, if it does not have partitions. Print - "Device" instead of "Disk", because this function is not specific - to disk devices. - - * normal/main.c (grub_rescue_cmd_normal): Make the variable CONFIG - static to ensure that it is put on the memory rather than a - register. - -2005-07-17 Yoshinori Okuji - - * commands/cat.c (GRUB_MOD_INIT): Use better documentation. - (grub_cat_init): Likewise. - * loader/i386/pc/chainloader_normal.c (GRUB_MOD_INIT): Likewise. - (options): Likewise. - * commands/configfile.c (GRUB_MOD_INIT): Likewise. - (grub_configfile_init): Likewise. - * font/manager.c (GRUB_MOD_INIT): Likewise. - * commands/help.c (GRUB_MOD_INIT): Likewise. - (grub_help_init): Likewise. - * normal/command.c (grub_command_init): Likewise. - * loader/i386/pc/linux_normal.c (GRUB_MOD_INIT): Likewise. - * disk/loopback.c (grub_loop_init): Likewise. - (GRUB_MOD_INIT): Likewise. - * commands/ls.c (grub_ls_init): Likewise. - (GRUB_MOD_INIT): Likewise. - (options): Likewise. - * commands/boot.c (grub_boot_init): Likewise. - (GRUB_MOD_INIT): Likewise. - * loader/i386/pc/multiboot_normal.c (GRUB_MOD_INIT): Likewise. - * commands/i386/pc/reboot.c (grub_reboot_init): Likewise. - (GRUB_MOD_INIT): Likewise. - * commands/cmp.c (grub_cmp_init): Likewise. - (GRUB_MOD_INIT): Likewise. - - * normal/arg.c: Use <> instead of "" to include header files. - (SHORT_ARG_HELP): New macro. - (SHORT_ARG_USAGE): Likewise. - (help_options): Specify SHORT_ARG_HELP and SHORT_ARG_USAGE instead - of 'h' and 'u' for help and usage, respectively. Use more GNU-like - descriptions. - (find_short): Check if C is 'h' or 'u' explicitly. - (grub_arg_show_help): Use space characters instead of tabs. Treat - SHORT_ARG_HELP and SHORT_ARG_USAGE exceptionally so that -h and -u - are shown with --help and --usage only if they are not used for - the command itself. - (parse_option): Use SHORT_ARG_HELP and SHORT_ARG_USAGE instead of - 'h' and 'u'. - - * include/grub/arg.h (struct grub_arg_option): Add the qualifier - const into "longarg". Change the type of "shortarg" to int. - -2005-07-17 Yoshinori Okuji - - * boot/i386/pc/boot.S (boot_drive_check): New label. - - * include/grub/i386/pc/boot.h (GRUB_BOOT_MACHINE_DRIVE_CHECK): New - macro. - - * util/i386/pc/grub-setup.c (setup): Added a workaround for BIOSes - which do not pass a boot drive correctly. Copied from GRUB Legacy. - -2005-07-17 Yoshinori Okuji - - * kern/i386/pc/startup.S (gate_a20_try_system_control_port_a): - When turning off Gate A20, skip the check and return immediately, - because this is not fatal usually. - -2005-07-17 Yoshinori Okuji - - * conf/i386-pc.rmk (pxeboot_img_LDFLAGS): The text address should - be 0x7C00 instead of 0x8000. - - * boot/i386/pc/pxeboot.S: Rewritten. - - * kern/i386/pc/startup.S (gate_a20_try_bios): No need to specify - EXT_C. - (gate_a20_check_state): Read a byte from 0x108000. Invert the - result. - -2005-07-16 Yoshinori K. Okuji - - * kern/i386/pc/startup.S (grub_gate_a20): Rewritten for - robustness. This routine now supports a BIOS call and System - Control Port A to modify the gate A20. - - * include/grub/i386/pc/kernel.h (GRUB_KERNEL_MACHINE_RAW_SIZE): - Increased to 0x440. - -2005-07-12 Hollis Blanchard - - * disk/powerpc/ieee1275/ofdisk.c (grub_ofdisk_open): dprintf the - device path and resulting ihandle. - (grub_ofdisk_close): dprintf the ihandle being closed. - (grub_ofdisk_read): dprintf function parameters. - * kern/mm.c (grub_mm_init_region): Likewise. - * loader/powerpc/ieee1275/linux.c: Remove extra whitespace. - (grub_linux_boot): dprintf the Linux entry point, initrd address and - size, and boot arguments. - (grub_rescue_cmd_linux): dprintf each ELF segment's address and size - before loading into memory. - (grub_rescue_cmd_initrd): dprintf the initrd's address and size - before loading into memory. - -2005-07-12 Yoshinori K. Okuji - - * kern/mm.c: Added much documentation. - (GRUB_MM_ALIGN_LOG2): When GRUB_CPU_SIZEOF_VOID_P is - 8, set to 5 instead of 8. - -2005-07-10 Yoshinori Okuji - - * DISTLIST: Added util/i386/pc/grub-mkimage.c. - - * conf/i386-pc.rmk (sbin_UTILITIES): Added grub-mkdevicemap. - (grub_mkdevicemap_SOURCES): New variable. - - * util/i386/pc/grub-mkdevicemap.c: New file. Mostly copied from - lib/device.c of GRUB Legacy. - -2005-07-10 Yoshinori Okuji - - * commands/ls.c (grub_ls_list_files): Check if *PATH is NUL - instead of PATH is NULL. - -2005-07-09 Vincent Pelletier - - * commands/cmp.c (BUFFER_SIZE): New macro. - (grub_cmd_cmp): Close the right file at the right time. Compare - only data just read. Don't report files of different size as - identical. Dynamically allocate buffers. Move variable - declarations at the beginning of function. - -2005-07-09 Yoshinori Okuji - - * aclocal.m4 (grub_I386_CHECK_REGPARM_BUG): The return value was - reverse. - -2004-07-04 Vincent Pelletier - - * normal/cmdline.c (grub_cmdline_get): Don't fallback on ctrl-d - when backspace is pressed at beginning of line. - -2005-07-03 Yoshinori Okuji - - * DISTLIST: Added genfslist.sh. - - * normal/main.c (fs_module_list): New variable. - (autoload_fs_module): New function. - (read_fs_list): Likewise. - (grub_normal_execute): Call read_fs_list. - - * kern/fs.c (grub_fs_autoload_hook): New variable. - (grub_fs_probe): Added support for auto-loading. - - * include/grub/normal.h (struct grub_fs_module_list): New struct. - (grub_fs_module_list_t): New type. - - * include/grub/fs.h (grub_fs_autoload_hook_t): New type. - (grub_fs_autoload_hook): New prototype. - - * genfslist.sh: New file. - - * genmk.rb: Added a rule to generate a filesystem list. - -2005-06-30 Marco Gerards - - * configure.ac: Fix the test for cross-compiling. - - * genmk.rb (Program): Use `$(CC)' instead of `$(BUILD_CC)'. Don't - define GRUB_UTIL anymore. - - * util/powerpc/ieee1275/grub-mkimage.c (load_note): Endian fixes - so this function works on other systems than just big endian. - (load_modules): Likewise. - (add_segments): Likewise. - -2005-06-23 Hollis Blanchard - - * kern/misc.c (grub_vsprintf): Add `longfmt'. If format string - contains `l' modifier, get a long from va_arg(). - -2005-06-23 Yoshinori K. Okuji - - * kern/mm.c (grub_free): If the next free block which is being - merged is the first free block, set the first block to the block - being freed. - Reported by Vincent Guffens . - -2005-05-08 Hollis Blanchard - - * boot/powerpc/ieee1275/cmain.c (cmain): Initialize - `grub_ieee1275_chosen'. - -2005-05-08 Hollis Blanchard - - * boot/powerpc/ieee1275/cmain.c (module_info): Remove definition. - (grub_ieee1275_chosen): New variable. - (cmain): Initialize and use `grub_ieee1275_chosen' instead of - `chosen'. - * boot/powerpc/ieee1275/crt0.S (init_stack): Remove stack space. - * boot/powerpc/ieee1275/ieee1275.c (grub_ieee1275_get_property): - Rename first argument to `phandle' for consistency. - (grub_ieee1275_get_property_length): Likewise. - (grub_ieee1275_next_property): Likewise. Change type of first argument - to grub_ieee1275_phandle_t. - * include/grub/powerpc/ieee1275/ieee1275.h (grub_ieee1275_entry_fn): - Move export next to declaration. - (grub_ieee1275_chosen): New variable. - * include/grub/powerpc/ieee1275/kernel.h (GRUB_IEEE1275_MODULE_BASE): - Correct cosmetic typo. - * kern/powerpc/ieee1275/init.c (grub_set_prefix): Use - `grub_ieee1275_chosen'. - * kern/powerpc/ieee1275/openfw.c (grub_map): Likewise. - * loader/powerpc/ieee1275/linux.c (grub_linux_boot): Likewise. - (grub_rescue_cmd_linux): Set `initrd_addr' to 0. - * term/powerpc/ieee1275/ofconsole.c (grub_ofconsole_refresh): Use - `grub_ieee1275_chosen'. - -2005-05-10 Hollis Blanchard - - * boot/powerpc/ieee1275/cmain.c (cmain): Remove code to parse - /chosen/bootargs. - * kern/powerpc/ieee1275/init.c (grub_machine_init): Parse - /chosen/bootargs as "variable=value" pairs. - -2005-05-08 Vincent Pelletier - - * include/grub/misc.h (grub_dprintf): New macro. - (grub_real_dprintf): New prototype. - (grub_strword): Likewise. - (grub_iswordseparator): Likewise. - * kern/misc.c (grub_real_dprintf): New function. - (grub_strword): Likewise. - (grub_iswordseparator): Likewise. - -2005-04-30 Hollis Blanchard - - * boot/powerpc/ieee1275/cmain.c: Don't include grub/machine/init.h. - (roundup): Remove macro. - (grub_ieee1275_flags): Make static. - (grub_ieee1275_realmode): Remove. - (grub_ieee1275_test_flag): New function. - (grub_ieee1275_set_flag): Likewise. - (find_options): Rename to `grub_ieee1275_find_options'; update - callers. Set GRUB_IEEE1275_FLAG_REAL_MODE and - GRUB_IEEE1275_FLAG_0_BASED_PARTITIONS. - (cmain): New prototype. - (cmain): Use `grub_ieee1275_set_flag' instead of accessing - `grub_ieee1275_flags' directly. - * conf/powerpc-ieee1275.rmk (grubof_HEADERS): Remove - machine/biosdisk.h. - * disk/powerpc/ieee1275/ofdisk.c: Include grub/machine/ofdisk.h. - Don't include grub/machine/init.h. - (grub_ofdisk_open): Call `grub_ieee1275_test_flag'. - * include/grub/powerpc/ieee1275/ieee1275.h (grub_ieee1275_flags): - Remove prototype. - (grub_ieee1275_realmode): Likewise. - (grub_ieee1275_flag): New enum. - (grub_ieee1275_test_flag): New prototype. - (grub_ieee1275_set_flag): New prototype. - * include/grub/powerpc/ieee1275/init.h: Remove file. - * include/grub/powerpc/ieee1275/ofdisk.h: New file. - * kern/powerpc/ieee1275/init.c: Don't include grub/machine/init.h. - Include grub/machine/console.h. Include grub/machine/ofdisk.h. - (grub_machine_fini): Don't call `grub_ieee1275_release'. Remove - comment. - * kern/powerpc/ieee1275/openfw.c (grub_claimmap): Call - `grub_ieee1275_test_flag'. - (grub_ieee1275_encode_devname): Likewise. - -2005-04-21 Hollis Blanchard - - * include/grub/powerpc/ieee1275/ieee1275.h - (grub_ieee1275_encode_devname): New prototype. - (grub_ieee1275_get_filename): Likewise. - * kern/powerpc/ieee1275/init.c (grub_translate_ieee175_path): New - function. - (grub_set_prefix): Likewise. - (grub_machine_init): Call grub_set_prefix. - * kern/powerpc/ieee1275/openfw.c: Fix typos. - (grub_parse_type): New enum. - (grub_ieee1275_get_devargs): New function. - (grub_ieee1275_get_devname): Likewise. - (grub_ieee1275_parse_args): Likewise. - (grub_ieee1275_get_filename): Likewise. - (grub_ieee1275_encode_devname): Likewise. - -2005-03-30 Marco Gerards - - * kern/powerpc/ieee1275/init.c (grub_machine_fini): Don't call - `grub_loader_unset'. - -2005-03-26 Hollis Blanchard - - * commands/ieee1275/halt.c (grub_cmd_halt): Call grub_halt - instead of grub_ieee1275_interpret. - (grub_halt_init): New function. - (grub_halt_fini): Likewise. - (GRUB_MOD_INIT): Correct message grammar. - * commands/ieee1275/reboot.c (grub_cmd_reboot): Call grub_reboot - instead of grub_ieee1275_interpret. - (grub_reboot_init): New function. - (grub_reboot_fini): Likewise. - * conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Replace - commands/i386/pc/halt.c, commands/i386/pc/reboot.c, and - util/i386/pc/misc.c with commands/ieee1275/halt.c, - commands/ieee1275/reboot.c, and util/powerpc/ieee1275/misc.c. - * disk/powerpc/ieee1275/ofdisk.c (grub_ofdisk_fini): New - function. - * include/grub/powerpc/ieee1275/console.h (grub_console_fini): - Add prototype. - * include/grub/powerpc/ieee1275/ieee1275.h (grub_reboot): Add - prototype. - (grub_halt): Likewise. - * include/grub/powerpc/ieee1275/init.h: Remove inaccurate comment. - (cmain): Remove __attribute__((unused)). - * kern/powerpc/ieee1275/init.c (grub_heap_start): New variable. - (grub_heap_len): Likewise. - (grub_machine_fini): New function. - * kern/powerpc/ieee1275/openfw.c (grub_reboot): New function. - (grub_halt): Likewise. - * term/powerpc/ieee1275/ofconsole.c (grub_console_fini): New - function. - * util/powerpc/ieee1275/misc.c: New file. - -2005-03-19 Yoshinori K. Okuji - - * DISTLIST: New file. - * gendistlist.sh: Likewise. - - * Makefile.in (COMMON_DISTFILES): Removed. - (BOOT_DISTFILES): Likewise. - (CONF_DISTFILES): Likewise. - (DISK_DISTFILES): Likewise. - (FS_DISTFILES): Likewise. - (INCLUDE_DISTFILES): Likewise. - (KERN_DISTFILES): Likewise. - (LOADER_DISTFILES): Likewise. - (TERM_DISTFILES): Likewise. - (UTIL_DISTFILES): Likewise. - (DISTFILES): Likewise. - (uninstall): Uninstall files in $(pkgdata_DATA). - (DISTLIST): New target. - (distdir): Use the contents of the file DISTLIST to get a list of - distributed files. - -2005-03-18 Yoshinori K. Okuji - - * fs/fat.c (grub_fat_mount): Ignore the 3rd bit of a media - descriptor. This is ported from GRUB Legacy. - - * gencmdlist.sh: Added an extra semicolon to make it work with - old sed versions. Reported by Robert Bihlmeyer - . - -2005-03-08 Yoshinori Okuji - - Automatic loading of commands is supported. - - * normal/main.c (read_command_list): New function. - (grub_normal_execute): Call read_command_list. - - * normal/command.c (grub_register_command): Return zero or CMD. - Allocate CMD->NAME from the heap. - Initialize CMD->MODULE_NAME to zero. - Find the same name as well. If the same command is found and it is - a dummy command, overwrite members. If it is not a dummy command, - return zero. - (grub_unregister_command): Free Q->NAME and Q->MODULE_NAME. - (grub_command_find): If a dummy command is found, load a module - and retry to find a command only once. - - * normal/cmdline.c (grub_tab_complete): Call grub_command_find to - make sure that each command is loaded. - - * include/grub/normal.h (GRUB_COMMAND_FLAG_NOT_LOADED): New - macro. - (struct grub_command): Remove const from the member `name'. - Add a new member `module_name'. - (grub_register_command): Return grub_command_t. - - * commands/help.c (grub_cmd_help): Call grub_command_find to make - sure that each command is loaded. - - * genmk.rb (PModule::rule): Specify a module name without the - suffix ".mod" to gencmdlist.sh. - -2005-03-02 Yoshinori K. Okuji - - * gencmdlist.sh: New file. - - * genmk.rb (PModule::rule): Generate a rule for a command list. - Clean command.lst. - Generate command.lst from $(COMMANDFILES). - - * Makefile.in (COMMON_DISTFILES): Added gencmdlist.sh. - (DATA): Added $(pkgdata_DATA). - (install-local): Install files in $(pkgdata_DATA). - -2005-03-02 Yoshinori K. Okuji - - * term/i386/pc/vga.c (debug_command): Removed. - (GRUB_MOD_INIT): Do not register the command "debug". - - From Hollis Blanchard: - * commands/configfile.c: New file. - * conf/i386-pc.rmk (grub_emu_SOURCES): Added - commands/configfile.c. - (pkgdata_MODULES): Added configfile.mod. - (configfile_mod_SOURCES): New variable. - (configfile_mod_CFLAGS): Likewise. - * conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Added - commands/configfile.c. - (pkgdata_MODULES): Added configfile.mod. - (configfile_mod_SOURCES): New variable. - (configfile_mod_CFLAGS): Likewise. - * util/grub-emu.c (main): Call grub_configfile_init and - grub_configfile_fini. - * include/grub/normal.h [GRUB_UTIL] (grub_configfile_init): New - prototype. - [GRUB_UTIL] (grub_configfile_fini): Likewise. - -2005-02-27 Yoshinori K. Okuji - - * normal/arg.c (grub_arg_show_help): Do not show the bug report - address. - - * commands/help.c (grub_cmd_help): Do not print newlines after - the last command in print_command_help. - -2005-02-27 Yoshinori K. Okuji - - * commands/default.h: New file. - * commands/timeout.h: Likewise. - * normal/context.c: Likewise. - - * util/misc.c: Do not include sys/times.h. - Include sys/time.h and grub/machine/time.h. - (grub_get_rtc): Rewritten with gettimeofday. - - * util/grub-emu.c (main): Call grub_default_init and - grub_timeout_init before grub_normal_init, and call - grub_timeout_fini and grub_default_fini after grub_main. - - * util/console.c (grub_ncurses_checkkey): Return the read - character or -1. - - * normal/menu.c (run_menu): Set MENU->TIMEOUT to -1 once it - timeouts. - - * normal/main.c (read_config_file): Push MENU. If this fails, - print an error and wait for a user input. - Print an error only if GRUB_ERRNO is not GRUB_ERR_NONE. - If a menu is empty or an error occurs, pop MENU. - (grub_normal_execute): Pop and free MENU after grub_menu_run - returns. - - * kern/loader.c (grub_loader_boot): Call grub_machine_fini. - - * include/grub/powerpc/ieee1275/time.h [GRUB_UTIL]: Do not - include time.h. - [GRUB_UTIL] (GRUB_TICKS_PER_SECOND): Use the same definition as - without GRUB_UTIL. - * include/grub/i386/pc/time.h [GRUB_UTIL]: Do not include - time.h. - [GRUB_UTIL] (GRUB_TICKS_PER_SECOND): Use the same definition as - without GRUB_UTIL. - - * include/grub/normal.h (struct grub_menu_list): New struct. - (grub_menu_list_t): New type. - (struct grub_context): New struct. - (grub_context_t): New type. - (grub_register_command): Got rid of EXPORT_FUNC. - (grub_unregister_command): Likewise. - (grub_context_get): New prototype. - (grub_context_get_current_menu): Likewise. - (grub_context_push_menu): Likewise. - (grub_context_pop_menu): Likewise. - [GRUB_UTIL] (grub_default_init): Likewise. - [GRUB_UTIL] (grub_default_fini): Likewise. - [GRUB_UTIL] (grub_timeout_init): Likewise. - [GRUB_UTIL] (grub_timeout_fini): Likewise. - - * conf/i386-pc.rmk (grub_emu_SOURCES): Added commands/default.c, - commands/timeout.c and normal/context.c. - (pkgdata_MODULES): Added default.mod and timeout.mod. - (normal_mod_SOURCES): Added normal/context.c. - (default_mod_SOURCES): New variable. - (default_mod_CFLAGS): Likewise. - (timeout_mod_SOURCES): Likewise. - (timeout_mod_CFLAGS): Likewise. - * conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Copied from - conf/i386-pc.rmk. - (pkgdata_MODULES): Added default.mod and timeout.mod. - (normal_mod_SOURCES): Added normal/context.c. - (default_mod_SOURCES): New variable. - (default_mod_CFLAGS): Likewise. - (timeout_mod_SOURCES): Likewise. - (timeout_mod_CFLAGS): Likewise. - - * Makefile.in (all-local): Added $(MKFILES). - -2005-02-21 Vincent Pelletier - - * conf/i386-pc.rmk (grub_setup_SOURCES): Add `partmap/sun.c'. - (grub_emu_SOURCES): Likewise. - (pkgdata_MODULES): Add `sun.mod'. - (sun_mod_SOURCES, sun_mod_CFLAGS): New variables. - * conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Add - `partmap/sun.c'. - (pkgdata_MODULES): Add `sun.mod'. - (sun_mod_SOURCES, sun_mod_CFLAGS): New variables. - * include/grub/partition.h (grub_sun_partition_map_init): New - prototype. - (grub_sun_partition_map_fini): Likewise. - * partmap/sun.c: New file. - * util/grub-emu.c (main): Initialize and de-initialize the sun - partitionmap support. - -2005-02-19 Yoshinori K. Okuji - - This implements an Emacs-like menu entry editor. - - * normal/menu_entry.c: New file. - - * util/console.c (grub_ncurses_putchar): Translate some Unicode - characters to ASCII. - (saved_char): New variable. - (grub_ncurses_checkkey): Rewritten completely. - (grub_ncurses_getkey): Likewise. - (grub_ncurses_init): Call raw instead of cbreak. - - * normal/menu.c (print_entry): Do not put a space. - (init_page): Renamed to ... - (grub_menu_init_page): ... this. All callers changed. - (edit_menu_entry): Removed. - (run_menu): Call grub_menu_entry_run instead of edit_menu_entry. - - * normal/cmdline.c (grub_cmdline_run): Call grub_setcursor. - - * kern/misc.c (grub_vprintf): Call grub_refresh. - - * normal/menu.c (DISP_LEFT): Renamed to ... - * include/grub/term.h (GRUB_TERM_DISP_LEFT): ... this. - * normal/menu.c (DISP_UP): Renamed to ... - * include/grub/term.h (GRUB_TERM_DISP_UP): ... this. - * normal/menu.c (DISP_RIGHT): Renamed to ... - * include/grub/term.h (GRUB_TERM_DISP_RIGHT): ... this. - * normal/menu.c (DISP_DOWN): Renamed to ... - * include/grub/term.h (GRUB_TERM_DISP_DOWN): ... this. - * normal/menu.c (DISP_HLINE): Renamed to ... - * include/grub/term.h (GRUB_TERM_DISP_HLINE): ... this. - * normal/menu.c (DISP_VLINE): Renamed to ... - * include/grub/term.h (GRUB_TERM_DISP_VLINE): ... this. - * normal/menu.c (DISP_UL): Renamed to ... - * include/grub/term.h (GRUB_TERM_DISP_UL): ... this. - * normal/menu.c (DISP_UR): Renamed to ... - * include/grub/term.h (GRUB_TERM_DISP_UR): ... this. - * normal/menu.c (DISP_LL): Renamed to ... - * include/grub/term.h (GRUB_TERM_DISP_LL): ... this. - * normal/menu.c (DISP_LR): Renamed to ... - * include/grub/term.h (GRUB_TERM_DISP_LR): ... this. - * normal/menu.c (TERM_WIDTH): Renamed to ... - * include/grub/term.h (GRUB_TERM_WIDTH): ... this. - * normal/menu.c (TERM_HEIGHT): Renamed to ... - * include/grub/term.h (GRUB_TERM_HEIGHT): ... this. - * normal/menu.c (TERM_INFO_HEIGHT): Renamed to ... - * include/grub/term.h (GRUB_TERM_INFO_HEIGHT): ... this. - * normal/menu.c (TERM_MARGIN): Renamed to ... - * include/grub/term.h (GRUB_TERM_MARGIN): ... this. - * normal/menu.c (TERM_SCROLL_WIDTH): Renamed to ... - * include/grub/term.h (GRUB_TERM_SCROLL_WIDTH): ... this. - * normal/menu.c (TERM_TOP_BORDER_Y): Renamed to ... - * include/grub/term.h (GRUB_TERM_TOP_BORDER_Y): ... this. - * normal/menu.c (TERM_LEFT_BORDER_X): Renamed to ... - * include/grub/term.h (GRUB_TERM_LEFT_BORDER_X): ... this. - * normal/menu.c (TERM_BORDER_WIDTH): Renamed to ... - * include/grub/term.h (GRUB_TERM_BORDER_WIDTH): ... this. - * normal/menu.c (TERM_MESSAGE_HEIGHT): Renamed to ... - * include/grub/term.h (GRUB_TERM_MESSAGE_HEIGHT): ... this. - * normal/menu.c (TERM_BORDER_HEIGHT): Renamed to ... - * include/grub/term.h (GRUB_TERM_BORDER_HEIGHT): ... this. - * normal/menu.c (TERM_NUM_ENTRIES): Renamed to ... - * include/grub/term.h (GRUB_TERM_NUM_ENTRIES): ... this. - * normal/menu.c (TERM_FIRST_ENTRY_Y): Renamed to ... - * include/grub/term.h (GRUB_TERM_FIRST_ENTRY_Y): ... this. - * normal/menu.c (TERM_ENTRY_WIDTH): Renamed to ... - * include/grub/term.h (GRUB_TERM_ENTRY_WIDTH): ... this. - * normal/menu.c (TERM_CURSOR_X): Renamed to ... - * include/grub/term.h (GRUB_TERM_CURSOR_X): ... this. - All callers changed. - - * include/grub/normal.h: New prototype. - - * conf/i386-pc.rmk (grub_emu_SOURCES): Added - normal/menu_entry.c. - (normal_mod_SOURCES): Likewise. - * conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Likewise. - (normal_mod_SOURCES): Likewise. - -2005-02-15 Yoshinori K. Okuji - - * include/grub/normal.h (grub_halt_init): New prototype. - (grub_halt_fini): Likewise. - (grub_reboot_init): Likewise. - (grub_reboot_fini): Likewise. - - * util/grub-emu.c: Include signal.h. - (main_env): New global variable. - (grub_machine_init): Ignore SIGINT. Otherwise grub-emu cannot - catch C-c. - (grub_machine_fini): New function. - (main): Call grub_halt_init and grub_reboot_init before - grub_main, and grub_reboot_fini and grub_halt_fini after it. - Call setjmp with MAIN_ENV to go back afterwards. - Call grub_machine_fini right before return. - - * include/grub/util/misc.h: Include setjmp.h. - (main_env): New prototype. - - * include/grub/kernel.h (grub_machine_fini): New prototype. - * include/grub/i386/pc/biosdisk.h (grub_biosdisk_fini): Likewise. - * include/grub/i386/pc/console.h (grub_console_fini): Likewise. - - * disk/i386/pc/biosdisk.c (grub_biosdisk_fini): New function. - * kern/i386/pc/init.c (grub_machine_fini): Likewise. - * term/i386/pc/console.c (grub_console_fini): Likewise. - - * util/i386/pc/misc.c: New file. - - * conf/i386-pc.rmk (grub_emu_SOURCES): Added - util/i386/pc/misc.c, commands/i386/pc/halt.c and - commands/i386/pc/reboot.c. - -2005-02-14 Guillem Jover - - * include/grub/dl.h (grub_dl_check_header): New prototype. - (grub_arch_dl_check_header): Change return type to grub_err_t, - remove size parameter and export function. Update all callers. - * kern/dl.c (grub_dl_check_header): New function. - (grub_dl_load_core): Use `grub_dl_check_header' instead of - `grub_arch_dl_check_header'. Check ELF type. Check if sections - are inside the core. - * kern/i386/dl.c (grub_arch_dl_check_header): Remove arch - independent ELF header checks. - * kern/powerpc/dl.c (grub_arch_dl_check_header): Likewise. - * loader/i386/pc/multiboot.c (grub_rescue_cmd_multiboot): Use - `grub_dl_check_header' instead of explicit checks. Check for the - ELF type. - * loader/powerpc/ieee1275/linux.c (grub_rescue_cmd_linux): Use - `grub_dl_check_header' instead of explicit checks. Remove arch - specific ELF header checks. - - * util/grub-emu.c (grub_arch_dl_check_header): Remove the - argument SIZE. - -2005-02-13 Hollis Blanchard - - * conf/powerpc-ieee1275.rmk (pkgdata_MODULES): Add ls.mod. - * include/grub/powerpc/libgcc.h (__mulsf3): New prototype. - -2005-02-12 Hollis Blanchard - - * kern/partition.c (grub_partition_probe): Clear `grub_errno' and - return 0 if `grub_errno' is GRUB_ERR_BAD_PART_TABLE. - (part_map_iterate): Clear `grub_errno' and return 0 if - `partmap->iterate' returns GRUB_ERR_BAD_PART_TABLE. - * partmap/amiga.c (amiga_partition_map_iterate): Return - GRUB_ERR_BAD_PART_TABLE if no partition map magic is found. - * partmap/apple.c (apple_partition_map_iterate): Likewise. - -2005-02-01 Guillem Jover - - * loader/i386/pc/multiboot_normal.c (GRUB_MOD_INIT): Fix module - help info. - -2005-01-31 Marco Gerards - - * include/grub/powerpc/ieee1275/loader.h (grub_load_linux): - Removed prototype. - (grub_rescue_cmd_linux): New prototype. - (grub_rescue_cmd_initrd): Likewise. - * powerpc/ieee1275/linux.c (grub_linux_boot): Remove struct - `bi_rec'. - (grub_linux_release_mem): Release the memory for the initrd. - (grub_load_linux): Renamed from this... - (grub_rescue_cmd_linux): ...To this. Changed all callers. - Changed `entry' not to be static. Loop over memory regions to - find another one when the default fails. - (grub_rescue_cmd_initrd): New function. - (grub_linux_init): Remove function. - (grub_linux_fini): Likewise. - (GRUB_MOD_INIT): Register `initrd'. - (GRUB_MOD_FINI): Unregister `initrd'. - * powerpc/ieee1275/linux_normal.c (grub_linux_normal_init): - Function removed. - (grub_linux_normal_fini): Likewise. - (GRUB_MOD_INIT): Register `initrd'. - (GRUB_MOD_FINI): Unregister `initrd'. - -2005-01-31 Marco Gerards - - * commands/help.c: New file. - * normal/arg.c (show_help): Renamed to... - (grub_arg_show_help): ... this. - * commands/i386/pc/halt.c: New file. - * commands/i386/pc/reboot.c: Likewise. - * conf/i386-pc.rmk (grub_emu_SOURCES): Add `commands/help.c'. - (pkgdata_MODULES): Add `reboot.mod', `halt.mod' and `help.mod'. - (help_mod_SOURCES, help_mod_CFLAGS, reboot_mod_SOURCES) - (reboot_mod_CFLAGS, halt_mod_SOURCES, halt_mod_CFLAGS): New - variables. - * conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Add - `commands/help.c'. - (pkgdata_MODULES): Add `help.mod'. - (help_mod_SOURCES, help_mod_CFLAGS): New variables. - * grub/i386/pc/init.h (grub_reboot): New prototype. - (grub_halt): Likewise. - * include/grub/normal.h (grub_arg_show_help): New prototype. - (grub_help_init): Likewise. - (grub_help_fini): Likewise. - * util/grub-emu.c (main): Initialize and deinitialize the help - command. - - * normal/cmdline.c (grub_cmdline_get): Doc fix. - - * normal/command.c (grub_command_init): Fixed the description of - the `set' and `unset' commands. - -2005-01-31 Marco Gerards - - * boot/powerpc/ieee1275/ieee1275.c (grub_ieee1275_interpret): New - function. - * commands/ieee1275/halt.c: New file. - * commands/ieee1275/reboot.c: Likewise. - * commands/ieee1275/suspend.c (grub_cmd_suspend): Use - `__attribute__ ((unused))'. Some GCS related fixed. - (grub_suspend_init) [GRUB_UTIL]: Function removed. - (grub_suspend_fini): Likewise. - * conf/powerpc-ieee1275.rmk (pkgdata_MODULES): Add `reboot.mod' - and `halt.mod'. - (reboot_mod_SOURCES, reboot_mod_CFLAGS, halt_mod_SOURCES) - (halt_mod_CFLAGS): New variables. - * include/grub/powerpc/ieee1275/ieee1275.h - (grub_ieee1275_interpret): New prototype. - -2005-01-29 Yoshinori K. Okuji - - * include/grub/misc.h (memmove): New prototype. - (memcpy): Likewise. - -2005-01-22 Hollis Blanchard - - * disk/powerpc/ieee1275/ofdisk.c (grub_ofdisk_open): Don't initialize - `devpath' to 0. Use `name' instead of `devpath' with `grub_strndup'. - -2005-01-22 Marco Gerards - - * kern/misc.c (grub_strndup): Function rewritten. - -2005-01-22 Vincent Pelletier - - * normal/menu.c (TERM_WIDTH): Macro redefined. - (TERM_TOP_BORDER_Y): Likewise. - (draw_border): Replaced while-loop by a for-loop. Make the number - of lines consistent with the number of lines displayed in - print_entries. Added a margin below the rectangle. - (print_entry): Make the entry fit in the rectangle. - (print_entries): Display the scroll arrows next to the right - border. - -2005-01-21 Marco Gerards - - * fs/minix.c (grub_minix_find_file): Reserve more space for - `fpath' so the \0 can be stored. Use `grub_strcpy' instead of - `grub_strncpy' to copy `path' into it. - -2005-01-21 Marco Gerards - - Add the loopback device, a device via which files can be accessed - as devices. - - * conf/i386-pc.rmk (grub_emu_SOURCES): Add `disk/loopback.c'. - (pkgdata_MODULES): Add loopback.mod. - (loopback_mod_SOURCES): New variable. - (loopback_mod_CFLAGS): Likewise. - * conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Add - `disk/loopback.c'. - (pkgdata_MODULES): Add loopback.mod. - (loopback_mod_SOURCES): New variable. - (loopback_mod_CFLAGS): Likewise. - * disk/loopback.c: new file. - * include/grub/normal.h (grub_loop_init): New prototype. - (grub_loop_fini): New prototype. - * util/grub-emu.c (main): Initialize and de-initialize loopback - support. - * include/grub/disk.h (grub_disk_dev_id): Add - `GRUB_DISK_DEVICE_LOOPBACK_ID'. - -2005-01-20 Hollis Blanchard - - * boot/powerpc/ieee1275/ieee1275.c (grub_ieee1275_enter): New - function. - * conf/powerpc-ieee1275.rmk (pkgdata_MODULES): Add suspend.mod. - (suspend_mod_SOURCES): New variable. - (suspend_mod_CFLAGS): Likewise. - * include/grub/powerpc/ieee1275/ieee1275.h (grub_ieee1275_enter): - New prototype. - * commands/ieee1275/suspend.c: New file. - -2005-01-20 Timothy Baldwin - - * include/grub/dl.h (GRUB_MOD_INIT): Changed `__attribute__ - ((unused))' to `__attribute__ ((used))'. - (GRUB_MOD_FINI): Likewise. - * kern/dl.c (grub_dl_load_file): Fix null pointer dereference. - * genmk.rb (PModule): Assign space to common symbols when linking - modules. - -2005-01-20 Marco Gerards - - * include/grub/mm.h (grub_mm_init_region): Change the type of the - `unsigned' arguments to `grub_size_t'. - (grub_malloc): Likewise. - (grub_realloc): Likewise. - (grub_memalign): Likewise. - * kern/i386/dl.c (grub_arch_dl_check_header): Likewise. - * kern/powerpc/dl.c (grub_arch_dl_check_header): Likewise. - * util/misc.c (grub_malloc): Likewise. - (grub_realloc): Likewise. - * kern/mm.c (get_header_from_pointer): Change the casts to - `unsigned' into a cast to `grub_size_t'. - - * fs/fshelp.c (grub_fshelp_find_file): The `oldnode' should always - point to `currnode' when `currnode' is changed. - - * util/grub-emu.c (main): Initialize `progname'. Reported by Nico - Schottelius . - -2005-01-09 Hollis Blanchard - - * util/powerpc/ieee1275/grub-mkimage.c: Include . - (note_path): Remove variable. - (GRUB_IEEE1275_NOTE_NAME): New macro. - (GRUB_IEEE1275_NOTE_TYPE): Likewise. - (grub_ieee1275_note_hdr): New structure. - (grub_ieee1275_note_desc): Likewise. - (grub_ieee1275_note): Likewise. - (load_note): Remove `dir' argument. All callers updated. Remove - `note_img' and `path'. Do not load a file from `note_path'. - Initialize a struct grub_ieee1275_note and write that to `out'. - Use GRUB_IEEE1275_MODULE_BASE instead of MODULE_BASE. - -2005-01-05 Marco Gerards - - * util/misc.c (grub_util_read_image): Revert last change. It - called `grub_util_read_at', which seeks from the beginning of the - file. - -2005-01-04 Hollis Blanchard - - * TODO: Add note about endianness in grub-mkimage. - * boot/powerpc/ieee1275/crt0.S (note): Remove unused .note - section. - * conf/powerpc-ieee1275.rmk (bin_UTILITIES): Add grub-mkimage. - (grub_mkimage_SOURCES): New target. - * include/grub/kernel.h (grub_start_addr): Remove variable. - (grub_end_addr): Likewise. - (grub_total_module_size): Likewise. - (grub_kernel_image_size): Likewise. - (GRUB_MODULE_MAGIC): New constant. - (grub_module_info): New structure. - (grub_arch_modules_addr): New prototype. - (grub_get_end_addr): Remove prototype. - * include/grub/i386/pc/kernel.h (grub_end_addr): New prototype. - * include/grub/powerpc/ieee1275/kernel.h: New file. - * include/grub/util/misc.h (grub_util_get_fp_size): New - prototype. - (grub_util_read_at): Likewise. - (grub_util_write_image_at): Likewise. - * kern/main.c (grub_get_end_addr): Remove function. - (grub_load_modules): Call grub_arch_modules_addr instead of using - grub_end_addr. Look for a grub_module_info struct in memory. Use - the grub_module_info fields instead of calling grub_get_end_addr - as loop conditions. Move grub_add_unused_region code here. - (grub_add_unused_region): Remove function. - * kern/i386/pc/init.c: Include grub/cache.h. - (grub_machine_init): Remove call to grub_get_end_addr. Remove - one call to add_mem_region. - (grub_arch_modules_addr): New function. - * kern/powerpc/ieee1275/init.c (grub_end_addr): Remove variable. - (grub_total_module_size): Likewise. - Include grub/machine/kernel.h. - (grub_arch_modules_addr): New function. - * util/grub-emu.c (grub_end_addr): Remove variable. - (grub_total_module_size): Likewise. - (grub_arch_modules_addr): New function. - * util/misc.c: Include unistd.h. - (grub_util_get_fp_size): New function. - (grub_util_read_at): Likewise. - (grub_util_write_image_at): Likewise. - (grub_util_read_image): Call grub_util_read_at. - (grub_util_write_image): Call grub_util_write_image_at. - * util/i386/pc/grub-mkimage.c (generate_image): Allocate - additional memory in kernel_img for a struct grub_module_info. - Fill in that grub_module_info. - * util/powerpc/ieee1275/grub-mkimage.c: New file. - -2005-01-03 Hollis Blanchard - - * boot/powerpc/ieee1275/ieee1275.c (grub_ieee1275_milliseconds): - New function. - * include/grub/powerpc/ieee1275/ieee1275.h - (grub_ieee1275_milliseconds): New prototype. - * include/grub/powerpc/ieee1275/time.h (GRUB_TICKS_PER_SECOND): - Change to 1000. - * kern/powerpc/ieee1275/init.c (grub_get_rtc): Call - grub_ieee1275_milliseconds. - -2005-01-03 Hollis Blanchard - - * boot/powerpc/ieee1275/cmain.c (grub_ieee1275_realmode): New - variable. - (find_options): New function. - (cmain): Call find_options. - * include/grub/powerpc/ieee1275/ieee1275.h - (grub_ieee1275_realmode): New extern variable. - * kern/powerpc/ieee1275/openfw.c (grub_claimmap): Only call - grub_map if grub_ieee1275_realmode is false. - -2004-12-29 Marco Gerards - - * normal/cmdline.c (grub_cmdline_get): Redone logic so no empty - lines are inserted and make it work like readline. Reported by - Vincent Pelletier . - -2004-12-28 Marco Gerards - - * boot/powerpc/ieee1275/crt0.S (_start): Don't set up the stack. - - * conf/powerpc-ieee1275.rmk (grub_emu_SOURCE): Remove - `kern/powerpc/cache.S'. - -2004-12-27 Marco Gerards - - * genmk.rb: Handle the `Program' class in the main loop. Written - by Johan Rydberg . - (Program): New class. - (programs): New variable. - * boot/powerpc/ieee1275/cmain.c: Include - instead of "grub/machine/ieee1275.h". Include - instead of "grub/kernel.h". Include . - (help_arch): Function removed. - * conf/powerpc-ieee1275.rmk (grubof_HEADERS): Add - `powerpc/libgcc.h' and `loader.h'. - (pkgdata_PROGRAMS): New variable. - (sbin_UTILITIES): Variable removed. - (grub_emu_SOURCES): Added kern/powerpc/cache.S. - (grubof_SOURCES): Variable re-defined so it only includes the - core functionality. - (grubof_CFLAGS): Remove `-DGRUBOF'. - (pkgdata_MODULES, fshelp_mod_SOURCES, fshelp_mod_CFLAGS, - (fat_mod_SOURCES, fat_mod_CFLAGS, ext2_mod_SOURCES) - (ext2_mod_CFLAGS, ufs_mod_SOURCES, ufs_mod_CFLAGS) - (minix_mod_SOURCES, minix_mod_CFLAGS, hfs_mod_SOURCES) - (hfs_mod_CFLAGS, jfs_mod_SOURCES, jfs_mod_CFLAGS) - (iso9660_mod_SOURCES, iso9660_mod_CFLAGS, _linux_mod_SOURCES) - (_linux_mod_CFLAGS, linux_mod_SOURCES, linux_mod_CFLAGS) - (normal_mod_SOURCES, normal_mod_CFLAGS, normal_mod_ASFLAGS) - (hello_mod_SOURCES, hello_mod_CFLAGS, boot_mod_SOURCES) - (boot_mod_CFLAGS, terminal_mod_SOURCES, terminal_mod_CFLAGS) - (ls_mod_SOURCES, ls_mod_CFLAGS, cmp_mod_SOURCES, cmp_mod_CFLAGS) - (cat_mod_SOURCES, cat_mod_CFLAGS, font_mod_SOURCES) - (font_mod_CFLAGS, amiga_mod_SOURCES, amiga_mod_CFLAGS) - (apple_mod_SOURCES, apple_mod_CFLAGS, pc_mod_SOURCES) - (pc_mod_CFLAGS): New variables. - * disk/powerpc/ieee1275/ofdisk.c: Include . - (grub_ofdisk_iterate): Add a prototype for `dev_iterate'. - * include/grub/dl.h (grub_arch_dl_sync_caches): New prototype. - * include/grub/loader.h (grub_os_area_addr, grub_os_area_size): - Moved from here... - * include/grub/i386/pc/init.h (grub_os_area_addr) - (rub_os_area_size): ... to here. - * include/grub/powerpc/ieee1275/ieee1275.h - (grub_ieee1275_entry_fn): Export symbol. - * include/grub/powerpc/ieee1275/init.h: New file. - * include/grub/powerpc/libgcc.h: Likewise. - * include/grub/cache.h: Likewise. - * kern/powerpc/cache.S: Likewise. Written by Hollis Blanchard - . - * kern/dl.c: Include . - (grub_dl_flush_cache): New function. - (grub_dl_load_core): Call `grub_dl_flush_cache' to flush the cache - for this module. - * kern/powerpc/ieee1275/init.c (grub_ofdisk_init) - (grub_console_init): Removed prototypes. - (grub_machine_init): Don't initialize the modules anymore. - * kern/powerpc/ieee1275/openfw.c (grub_map): Make the function - static. - * include/grub/powerpc/types.h (GRUB_HOST_WORDS_LITTLEENDIAN): - Macro undef removed. - (GRUB_HOST_WORDS_BIGENDIAN): New macro. - * kern/powerpc/dl.c (grub_arch_dl_relocate_symbols): Add - relocation `R_PPC_REL32'. Return an error when the relocation is - unknown. - * Makefile.in (DATA): Add `$(pkgdata_PROGRAMS)'. - * kern/i386/pc/init.c (grub_arch_sync_caches): New function. - * util/misc.c (grub_arch_sync_caches): Likewise. - -2004-12-19 Marco Gerards - - * conf/powerpc-ieee1275.rmk (MOSTLYCLEANFILES): Remove - `symlist.c', add `grubof_symlist.c'. - (symlist.c): Variable removed. - (grubof_HEADERS): Variable added. - (grubof_symlist.c): New target. - (kernel_syms.lst): Use `grubof_HEADERS' instead of - `kernel_img_HEADERS'. - (grubof_SOURCES): Add `kern/powerpc/dl.c' and `grubof_symlist.c'. - * kern/powerpc/dl.c: New file. - * kern/powerpc/ieee1275/init.c (grub_arch_dl_check_header): - Function removed. - (grub_arch_dl_relocate_symbols): Likewise. - (grub_register_exported_symbols): Likewise. - -2004-12-13 Marco Gerards - - * fs/ext2.c (grub_ext2_open): Don't use data after freeing it. - (grub_ext2_dir): Likewise. Don't return in case of an error, jump - to fail instead. Reported by Vincent Pelletier - . - - * fs/fshelp.c (grub_fshelp_find_file): Don't free `oldnode' when - it is not allocated. Reported by Vincent Pelletier - . - - * normal/cmdline.c (grub_tab_complete): Add a blank line to the - output so the output looks better. - -2004-12-04 Marco Gerards - - Modulize the partition map support and add support for the amiga - partition map. - - * commands/ls.c: Include instead of - . - * kern/disk.c: Likewise. - * kern/rescue.c: Likewise. - * loader/i386/pc/chainloader.c: Likewise. - * normal/cmdline.c: Likewise. - * kern/powerpc/ieee1275/init.c: Likewise. - (grub_machine_init): Call `grub_pc_partition_map_init', - `grub_amiga_partition_map_init' and - `grub_apple_partition_map_init'. - * conf/i386-pc.rmk (kernel_img_SOURCES): Remove - `disk/i386/pc/partition.c'. Add `kern/partition.c'. - (kernel_img_HEADERS): Remove `machine/partition.h'. Add - `partition.h' and `pc_partition.h'. - (grub_setup_SOURCES): Remove - `disk/i386/pc/partition.c'. Add `kern/partition.c', - `partmap/amiga.c', `partmap/apple.c' and `partmap/pc.c'. - (grub_emu_SOURCES): Likewise. - (pkgdata_MODULES): Add `amiga.mod', `apple.mod' and `pc.mod'. - (amiga_mod_SOURCES, amiga_mod_CFLAGS, apple_mod_SOURCES) - (apple_mod_CFLAGS, pc_mod_SOURCES, pc_mod_CFLAGS): New variables. - * conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Remove - `disk/powerpc/ieee1275/partition.c'. Add `kern/partition.c', - `partmap/amiga.c', `partmap/apple.c' and `partmap/pc.c'. - (grubof_SOURCES): Likewise. - * disk/i386/pc/partition.c: File removed. - * disk/powerpc/ieee1275/partition.c: Likewise. - * include/grub/powerpc/ieee1275/partition.h: Likewise. - * include/grub/i386/pc/partition.h: Likewise. - * kern/partition.c: New file. - * partmap/amiga.c: Likewise. - * partmap/apple.c: Likewise. - * partmap/pc.c: Likewise. - * include/grub/partition.h: Likewise.. - * include/grub/pc_partition.h: Likewise. - * util/grub-emu.c: Include instead of - . - (main): Call `grub_pc_partition_map_init', - `grub_amiga_partition_map_init' and - `grub_apple_partition_map_init' and deinitialize afterwards. - * util/i386/pc/biosdisk.c: Include `#include - ' and `include ' instead of - `'. - * util/i386/pc/grub-setup.c: Likewise. - * util/i386/pc/biosdisk.c: Likewise. - (grub_util_biosdisk_get_grub_dev): Only access the PC specific - partition information in case of a PC partition. - * util/i386/pc/grub-setup.c: Include `#include - ' and `include ' instead of - `'. - (setup): Only access the PC specific partition information in case - of a PC partition. - -2004-11-17 Hollis Blanchard - - * kern/powerpc/ieee1275/init.c (grub_setjmp): Remove function. - (grub_longjmp): Likewise. - * include/grub/powerpc/setjmp.h (grub_jmp_buf): Set array size to - 20. - * normal/powerpc/setjmp.S: New file. - * conf/powerpc-ieee1275.rmk (grubof_SOURCES): Add - `normal/powerpc/setjmp.S'. - (grubof_CFLAGS): Add `-DGRUBOF'. - * include/grub/setjmp.h [GRUB_UTIL]: Changed condition to - [GRUB_UTIL && !GRUBOF]. - -2004-11-16 Marco Gerards - - * kern/powerpc/ieee1275/openfw.c (grub_devalias_iterate): Skip any - property named `name'. Correctly handle the error returned by - `grub_ieee1275_finddevice' if a device can not be opened. - -2004-11-02 Hollis Blanchard - - * term/powerpc/ieee1275/ofconsole.c (grub_ofconsole_readkey): Test - `actual' for negativity. - * conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Remove - kern/fshelp.c. - -2004-11-01 Marco Gerards - - * term/i386/pc/vga.c (VGA_HEIGHT): Changed to 350. - (PAGE_OFFSET): New macro. - (CRTC_ADDR_PORT): Likewise. - (CRTC_DATA_PORT): Likewise. - (START_ADDR_HIGH_REGISTER): Likewise. - (START_ADDR_LOW_REGISTER): Likewise. - (GRAPHICS_ADDR_PORT): Likewise. - (GRAPHICS_DATA_PORT): Likewise. - (READ_MAP_REGISTER): Likewise. - (INPUT_STATUS1_REGISTER): Likewise. - (INPUT_STATUS1_VERTR_BIT): Likewise. - (page): New variable. - (wait_vretrace): New function. - (set_read_map): Likewise. - (set_start_address): Likewise. - (grub_vga_init): Use mode 0x10 instead of mode 0x12. Switch to - the right page. - (check_vga_mem): Take the page into account. - (write_char): Likewise. - (write_cursor): Likewise. - (scroll_up): Likewise. Copy the page to the page that is not - shown and switch between both pages. - (grub_vga_putchar): Fix off by one error. - (grub_vga_cls): Wait for the vertical retrace. Take the page into - account. - -2004-11-01 Marco Gerards - - Add support for iso9660 (including rockridge). - - * conf/i386-pc.rmk (grub_emu_SOURCES): Add fs/iso9660.c. - (iso9660_mod_SOURCES): New variable. - (iso9660_mod_CFLAGS): Likewise. - * conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Add fs/iso9660.c. - * include/grub/fs.h (grub_iso9660_init): New prototype. - * util/grub-emu.c (main): Call `grub_iso9660_init'. - * fs/iso9660.c: New file. - - * include/grub/misc.h (grub_strncat): New prototype. - * kern/misc.c (grub_strncat): New function. - - * fs/hfs.c (grub_hfs_mount): Translate the error - `GRUB_ERR_OUT_OF_RANGE' to `GRUB_ERR_BAD_FS'. - * fs/jfs.c (grub_jfs_mount): Likewise. - * fs/ufs.c (grub_ufs_mount): Likewise. - -2004-10-28 Hollis Blanchard - - * boot/powerpc/ieee1275/cmain.c (cmain): Remove asm statements - which initialized BAT registers. - * boot/powerpc/ieee1275/ieee1275.c (IEEE1275_CALL_ENTRY_FN, - grub_ieee1275_common_hdr, INIT_IEEE1275_COMMON): - Move from here... - * include/grub/powerpc/ieee1275/ieee1275.h (IEEE1275_CALL_ENTRY_FN, - grub_ieee1275_common_hdr, INIT_IEEE1275_COMMON): - ... to here. - * kern/powerpc/ieee1275/openfw.c (grub_map): New function. - (grub_mapclaim): Likewise. - * loader/powerpc/ieee1275/linux.c (grub_load_linux): Use - grub_mapclaim instead of grub_ieee1275_claim. Assign linux_addr by - hand. - -2004-10-19 Hollis Blanchard - - * conf/powerpc-ieee1275.rmk (COMMON_ASFLAGS): Remove -fno-builtin. - (COMMON_CFLAGS): Remove -fno-builtin and -D__ASSEMBLY__. Add - -ffreestanding and -msoft-float. - -2004-10-15 Hollis Blanchard - - * disk/powerpc/ieee1275/ofdisk.c (grub_ofdisk_open): Do not - append ":0" to devpath if the GRUB_IEEE1275_NO_PARTITION_0 flag is - set in grub_ieee1275_flags. - -2004-10-14 Hollis Blanchard - - * include/grub/powerpc/ieee1275/ieee1275.h (abort): Add function - prototype. - * kern/powerpc/ieee1275/init.c (grub_machine_init): Call - grub_console_init first. - Change the memory range used for grub_ieee1275_claim and - grub_mm_init_region. - Print an error message if the claim fails. - Include . - -2004-10-13 Hollis Blanchard - - * disk/powerpc/ieee1275/ofdisk.c (grub_ofdisk_iterate): - Call grub_children_iterate for device nodes of type `scsi', - `ide', or `ata'. - (grub_ofdisk_open): Remove manual device alias resolution. - Fix memory leak when device cannot be opened. - * include/grub/powerpc/ieee1275/ieee1275.h - (grub_children_iterate): New prototype. - * kern/powerpc/ieee1275/openfw.c (grub_children_iterate): - New function. - * boot/powerpc/ieee1275/ieee1275.c (grub_ieee1275_get_property): - Return -1 if args.size was -1. - -2004-10-11 Hollis Blanchard - - * boot/powerpc/ieee1275/cmain.c (grub_ieee1275_flags): New global. - (cmain): Accept 3 parameters. Test for 0xdeadbeef, indicating Old - World Macintosh. If Old Wold, set flag in grub_ieee1275_flags; claim - Open Firmware's memory for it; claim memory from _start to _end. - * boot/powerpc/ieee1275/crt0.S (__bss_start): New extern. - (_end): New extern. - (_start): Zero BSS from __bss_start to _end. - * include/grub/powerpc/ieee1275/ieee1275.h (grub_ieee1275_flags): - New extern. - (GRUB_IEEE1275_NO_PARTITION_0): New #define. - -2004-10-11 Hollis Blanchard - - * boot/powerpc/ieee1275/ieee1275.c (grub_ieee1275_claim): Return - -1 if args.base was -1. - -2004-10-08 Hollis Blanchard - - * term/powerpc/ieee1275/ieee1275.c (grub_ofconsole_cls): Use an ANSI - escape sequence instead of a literal ^L. Also call - grub_ofconsole_gotoxy. - -2004-10-03 Hollis Blanchard - - * boot/powerpc/ieee1275/ieee1275.c (grub_ieee1275_claim): change - void * arguments to grub_addr_t. All callers updated. Also make - the `result' argument optional. - (grub_ieee1275_release): change void * arguments to grub_addr_t. - All callers updated. - -2004-09-22 Hollis Blanchard - - * commands/ls.c (grub_ls_list_files): Use the string following the - initial ')', if present, as the filesystem path. - * kern/rescue.c (grub_rescue_cmd_ls): Likewise. - - * conf/powerpc-ieee1275.rmk (grubof_SOURCES): List crt0.S first. - -2004-09-18 Yoshinori K. Okuji - - Make the source code of the menu interface more readable. - - * normal/menu.c: Include grub/mm.h. - (TERM_WIDTH): New macro. - (TERM_HEIGHT): Likewise. - (TERM_INFO_HEIGHT): Likewise. - (TERM_MARGIN): Likewise. - (TERM_SCROLL_WIDTH): Likewise. - (TERM_TOP_BORDER_Y): Likewise. - (TERM_LEFT_BORDER_X): Likewise. - (TERM_BORDER_WIDTH): Likewise. - (TERM_MESSAGE_HEIGHT): Likewise. - (TERM_BORDER_HEIGHT): Likewise. - (TERM_NUM_ENTRIES): Likewise. - (TERM_FIRST_ENTRY_Y): Likewise. - (TERM_ENTRY_WIDTH): Likewise. - (TERM_CURSOR_X): Likewise. - (draw_border): Use macros instead of magic numbers. - (print_entry): Likewise. - (print_entries): Likewise. - (run_menu): Likewise. Also, handle the key 'e'. - (run_menu_entry): Ignore empty command lines. - (print_message): Added a new argument EDIT. If EDIT is true, - print a different message. - (init_page): Likewise. - (edit_menu_entry): New function. Not implemented yet. - -2004-09-17 Marco Gerards - - Add `linux.mod' and `multiboot.mod' so linux and multiboot kernels - can be loaded from normal mode. - - * conf/i386-pc.rmk (pkgdata_MODULES): Add `linux.mod' and - `multiboot.mod'. - (linux_mod_SOURCES, linux_mod_CFLAGS, multiboot_mod_SOURCES) - (multiboot_mod_CFLAGS): New variables. - * loader/i386/pc/linux_normal.c: New file. - * loader/i386/pc/multiboot_normal.c: Likewise. - - * loader/i386/pc/linux.c (grub_rescue_cmd_initrd): Don't use the - attribute `unused'. - - * fs/ext2.c (grub_ext2_iterate_dir): Fix typos in inode type. Use - `fdiro' to read the mode information from instead of `diro'. - - * fs/fshelp.c (grub_fshelp_find_file): Set type to foundtype after - looking up a symlink. - - * include/grub/normal.h (GRUB_COMMAND_FLAG_NO_ARG_PARSE): New - macro. - * normal/command.c (grub_command_execute): Don't parse the - arguments when `GRUB_COMMAND_FLAG_NO_ARG_PARSE' is set in the - flags of the command. - - * normal/menu.c (grub_menu_run): Fix typo. - -2004-09-14 Hollis Blanchard - - * kern/powerpc/ieee1275/init.c (abort): Trap into Open Firmware. - - * term/powerpc/ieee1275/ofconsole.c (grub_ofconsole_gotoxy): Use - `y + 1' instead of `y - 1'. - - * conf/powerpc-ieee1275.rmk (grubof_LDFLAGS): Add `-N' and `-S'. - -2004-09-14 Yoshinori K. Okuji - - From Hollis Blanchard : - * kern/misc.c (memmove): New alias for grub_memmove. - (memcmp): New alias for grub_memcmp. - (memset): New alias for grub_memset. - * boot/powerpc/ieee1275/ieee1275.c (grub_ieee1275_get_property): - Change "int handle" to "grub_ieee1275_phandle_t handle". - * include/grub/powerpc/ieee1275/ieee1275.h - (grub_ieee1275_get_property): Likewise. - -2004-09-12 Tomas Ebenlendr - - Added normal mode command `chainloader' as module chain.mod, which - depends on normal.mod and _chain.mod. - - * conf/i386-pc.rmk (pkgdata_MODULES): Add `chain.mod'. - (chain_mod_SOURCES, chain_mod_CFLAGS): Variables added. - * include/grub/i386/pc/loader.h (grub_rescue_cmd_chainloader): - Deleted prototype. - * loader/i386/pc/chainloader.c (grub_rescue_cmd_chainloader): All - but arguments parsing moved to ... - (grub_chainloader_cmd): ... here. New function. - * include/grub/i386/pc/chainloader.h: New file. - * loader/i386/pc/chainloader_normal.c: Likewise. - -2004-09-11 Marco Gerards - - * conf/i386-pc.rmk (kernel_img_SOURCES): Added kern/fshelp.c. - (grub_mkimage_LDFLAGS): Likewise. - (grub_emu_SOURCES): Likewise. - (kernel_img_HEADERS): Added fshelp.h. - * fs/ext2.c: Include . - (FILETYPE_REG): New macro. - (FILETYPE_INO_REG): Likewise. - (grub_ext_sblock): Renamed to `grub_ext2_sblock'. - Changed all users. - (ext2_block_group): Renamed to `grub_ext2_block_group'. Changed - all users. - (grub_fshelp_node): New struct. - (grub_ext2_data): Added member `diropen'. Changed member `inode' - to a pointer. - (grub_ext2_get_file_block): Removed function. - (grub_ext2_read_block): New function. - (grub_ext2_read_file): Replaced parameter `data' by `node'. - This function was written. - (grub_ext2_mount): Read the root inode. Create a diropen struct. - (grub_ext2_find_file): Removed function. - (grub_ext2_read_symlink): New function. - (grub_ext2_iterate_dir): Likewise. - (grub_ext2_open): Rewritten. - (grub_ext2_dir): Rewritten. - * include/grub/fshelp.h: New file. - * fs/fshelp.c: Likewise. - -2004-09-10 Yoshinori K. Okuji - - * normal/menu.c: Include grub/loader.h and grub/machine/time.h. - (print_message): Add a missing newline. - (run_menu): Added timeout support. - (run_menu_entry): New local function. - (grub_menu_run): Added support for booting. - - * kern/loader.c (grub_loader_is_loaded): New function. - - * include/grub/powerpc/ieee1275/time.h: Include grub/symbol.h. - (grub_get_rtc): Exported. - - * include/grub/i386/pc/time.h: Include grub/symbol.h. - (grub_get_rtc): Exported. - - * include/grub/normal.h (struct grub_command_list): Remove - constant from the member `command'. - - * include/grub/loader.h (grub_loader_is_loaded): Declared. - - * include/grub/err.h (GRUB_ERR_INVALID_COMMAND): New constant. - - * conf/i386-pc.rmk (kernel_img_HEADERS): Added machine/time.h. - -2004-08-28 Marco Gerards - - Add support for the JFS filesystem. - - * fs/jfs.c: New file. - * include/grub/fs.h (grub_jfs_init): New prototype. - (grub_jfs_fini): New prototype. - * conf/i386-pc.rmk (grub_setup_SOURCES): Add fs/jfs.c. - (grub_emu_SOURCES): Likewise. - (pkgdata_MODULES): Add jfs.mod. - (jfs_mod_SOURCES): New variable. - (jfs_mod_CFLAGS): Likewise. - * conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Add fs.jfs.c. - (grubof_SOURCES): Likewise. - * util/grub-emu.c (main): Initialize and deinitialize JFS support. - - * fs/fat.c (grub_fat_find_dir): Convert the filename little - endian to the host endian. - (grub_fat_utf16_to_utf8): Move function from there... - * kern/misc.c (grub_utf16_to_utf8): ...to here. Do not convert - the endianness of the source string anymore. - * include/grub/misc.h (grub_utf16_to_utf8): New prototype. - -2004-08-24 Marco Gerards - - * commands/boot.c (grub_boot_init) [GRUB_UTIL]: Make conditional. - (grub_boot_fini) [GRUB_UTIL]: Likewise. - (GRUB_MOD_INIT) [!GRUB_UTIL]: Likewise. - (GRUB_MOD_FINI) [!GRUB_UTIL]: Likewise. - - * fs/hfs.c (grub_hfs_find_node): Add a prototype for `node_found'. - (grub_hfs_iterate_dir): Make the function static. Add prototypes - for `node_found' and `it_dir'. - (grub_hfs_dir): Add prototype for `dir_hook'. - - * fs/minix.c (grub_minix_get_file_block): Add prototype for - `grub_get_indir'. Rename `indir' in two blocks to `indir16' - and `indir32' to silence a gcc warning. - - * include/grub/fs.h (grub_hfs_init): New prototype. - (grub_hfs_fini): Likewise. - - -2004-08-21 Yoshinori K. Okuji - - Each disk device has its own id now. This is useful to make use - of multiple disk devices. - - * include/grub/disk.h (grub_disk_dev_id): New enum. - (GRUB_DISK_DEVICE_BIOSDISK_ID): New constant. - (GRUB_DISK_DEVICE_OFDISK_ID): Likewise. - - * disk/i386/pc/biosdisk.c (grub_biosdisk_dev): Specify - GRUB_DISK_DEVICE_BIOSDISK_ID as an id. - - * disk/powerpc/ieee1275/ofdisk.c (grub_ofdisk_dev): Specify - GRUB_DISK_DEVICE_OFDISK_ID as an id. - - * util/i386/pc/biosdisk.c (grub_util_biosdisk_dev): Specify - GRUB_DISK_DEVICE_BIOSDISK_ID as an id. - - * include/grub/disk.h (struct grub_disk_dev): Added a new member - "id" which is used by the cache manager. - - * normal/main.c (grub_normal_init_page): Use "GNU GRUB" instead - of just "GRUB". - -2004-08-18 Marco Gerards - - * fs/hfs.c: New file. - * conf/i386-pc.rmk (grub_setup_SOURCES): Add fs/hfs.c. - (grub_emu_SOURCES): Likewise. - (pkgdata_MODULES): Add hfs.mod. - * conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Add fs/hfs.c. - (grubof_SOURCES): Likewise. - * util/grub-emu.c (main): Initialize and deinitialize HFS support. - - * include/grub/misc.h (grub_strncasecmp): Add prototype. - * kern/misc.c (grub_strncasecmp): Add function. - -2004-08-14 Marco Gerards - - * include/grub/arg.h (GRUB_ARG_OPTION_OPTIONAL): Surround macro - with parentheses. - - * fs/ext2.c (FILETYPE_UNKNOWN): New macro. - (grub_ext2_dir): In case the directory entry type is unknown, read - it from the inode. - -2004-08-02 Peter Bruin - - * loader/powerpc/ieee1275/linux.c (grub_linux_init): Pass - grub_load_linux instead of grub_rescue_cmd_linux as second - argument of grub_rescue_register_command. - - * Makefile.in (RMKFILES): Add conf/powerpc-ieee1275.rmk. - -2004-07-27 Marco Gerards - - * boot/powerpc/ieee1275/ieee1275.c (grub_ieee1275_release): New - function. - * commands/boot.c: Remove the check for `GRUB_UTIL'. - * conf/powerpc-ieee1275.rmk (grubof_SOURCES): Add - `loader/powerpc/ieee1275/linux.c', - `loader/powerpc/ieee1275/linux_normal.c' and `commands/boot.c'. - * include/grub/powerpc/ieee1275/ieee1275.h - (grub_ieee1275_release): New prototype. - * include/grub/powerpc/ieee1275/loader.h: Rewritten. - * kern/powerpc/ieee1275/init.c (grub_machine_init): Initialize - normal, boot, linux and linux_normal. - * loader/powerpc/ieee1275/linux.c: New file. - * loader/powerpc/ieee1275/linux_normal.c: Likewise. - -2004-07-12 Marco Gerards - - * normal/arg.c (grub_arg_parse): Correct error handling after - reallocating the argumentlist (check if `argl' is not null instead - of checking if `args' is not null). - * kern/mm.c (grub_realloc): Return the same pointer when using the - same region, instead of returning the header address. - -2004-07-11 Marco Gerards - - * disk/powerpc/ieee1275/partition.c (grub_partition_iterate): Skip - one block instead of two when looking for the initial partition. - (grub_partition_probe): Initialize the local variable `p' with 0. - Use base 10 for the grub_strtoul call. - * kern/misc.c (grub_strncpy): Fix off by one bug. Eliminated the - need for one local variable. - (grub_strtoul): Don't add the new value to `num', instead of that - just assign it. - -2004-07-11 Marco Gerards - - * conf/i386-pc.rmk (pkgdata_IMAGE): Add pxeboot.img. - (pxeboot_img_SOURCES): New variable. - (pxeboot_img_ASFLAGS): Likewise. - (pxeboot_img_LDFLAGS): Likewise. - * boot/i386/pc/pxeboot.S: New file. Based on pxeloader.S from - GRUB Legacy and boot.S. Adopted for GRUB 2 by lode leroy - . - -2004-06-27 Tomas Ebenlendr - - * kern/rescue.c (grub_enter_rescue_mode): Don't continue when - there was no input. - -2004-06-27 Tomas Ebenlendr - - * normal/cmdline.c (grub_set_history): Fix off by one bug. Fixed - the history buffer logic. - -2004-06-27 Tomas Ebenlendr - - * fs/ext2.c (FILETYPE_INO_MASK, FILETYPE_INO_DIRECTORY) - (FILETYPE_INO_SYMLINK): New macros. - (grub_ext2_find_file): Check if the node is a directory using the - inode stat information instead of using the filetype in the - dirent. Exclude the first character of an absolute symlink. - (grub_ext2_dir): Mask out the filetype part of the mode member of - the inode. - -2004-05-24 Marco Gerards - - Add support for UFS version 1 and 2. Add support for the minix - filesystem version 1 and 2, both the variants with 14 and 30 long - filenames. - - * conf/i386-pc.rmk (grub_setup_SOURCES): Add fs/ufs.c and - fs/minix.c. - (grub_emu_SOURCES): Likewise. - (pkgdata_MODULES): Add ufs.mod and minix.mod. - (ufs_mod_SOURCES): New variable. - (ufs_mod_CFLAGS): Likewise. - (minix_mod_SOURCES): Likewise. - (minix_mod_CFLAGS): Likewise. - * conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Add fs/ufs.c and - fs/minix.c. - (grubof_SOURCES): Likewise. - * fs/ufs.c: New file. - * fs/minix.c: New file. - * include/grub/fs.h (grub_ufs_init): New prototype. - (grub_ufs_fini): Likewise. - (grub_minix_init): Likewise. - (grub_minix_fini): Likewise. - * util/grub-emu.c (main): Initialize and deinitialize UFS and - minix fs. - -2004-04-30 Jeroen Dekkers - - * conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Add normal/arg.c, - commands/ls.c, commands/terminal.c, commands/boot.c, - commands/cmp.c and commands/cat.c. - (grubof_LDFLAGS): Add -nostdlib -static-libgcc -lgcc. - - * kern/powerpc/ieee1275/init.c: Include "grub/env.h" instead of - "env.h" - -2004-04-04 Yoshinori K. Okuji - - All symbols prefixed with PUPA_ and pupa_ are renamed to GRUB_ - and grub_, respectively. Because the conversion is trivial and - mechanical, I omit the details here. Please refer to the CVS - if you need more information. - -2004-04-04 Yoshinori K. Okuji - - * include/pupa: Renamed to ... - * include/grub: ... this. - * util/i386/pc/pupa-mkimage.c: Renamed to ... - * util/i386/pc/grub-mkimage.c: ... this. - * util/i386/pc/pupa-setup.c: Renamed to ... - * util/i386/pc/grub-setup.c: ... this. - * util/pupa-emu.c: Renamed to ... - * util/grub-emu.c: ... this. - -2004-03-29 Marco Gerards - - Add support for the newworld apple macintosh (PPC). This has been - tested on the powerbook 2000 only. It only adds support for - generic ieee1275 functions, console and disk support. This should - be easy to port to other architectures with support for Open - Firmware. - - * configure.ac: Accept the powerpc as host_cpu. In the case of - the powerpc cpu set the host_vendor to ieee1275. Make sure the i386 - specific tests are only executed while building for the i386. - Inverse test for crosscompile. - * genmk.rb (Utility): Allow assembler files. - * normal/cmdline.c (pupa_tab_complete): Reset pupa_errno. - * conf/powerpc-ieee1275.rmk: New file. - * disk/powerpc/ieee1275/ofdisk.c: Likewise. - * disk/powerpc/ieee1275/partition.c: Likewise. - * include/pupa/powerpc/ieee1275/biosdisk.h: Likewise. - * include/pupa/powerpc/ieee1275/console.h: Likewise. - * include/pupa/powerpc/ieee1275/partition.h: Likewise. - * include/pupa/powerpc/ieee1275/time.h: Likewise. - * include/pupa/powerpc/ieee1275/util/biosdisk.h: Likewise. - * include/pupa/powerpc/ieee1275/multiboot.h: Likewise. - * include/pupa/powerpc/ieee1275/loader.h - * include/pupa/powerpc/setjmp.h: Likewise. - * include/pupa/powerpc/types.h: Likewise. - * kern/powerpc/ieee1275/init.c: Likewise. - * kern/powerpc/ieee1275/openfw.c: Likewise. - * term/powerpc/ieee1275/ofconsole.c: Likewise. - - These files were written by Johan Rydberg - (jrydberg@night.trouble.net) and I only modified them slightly. - - * boot/powerpc/ieee1275/cmain.c: New file. - * boot/powerpc/ieee1275/crt0.S: Likewise. - * boot/powerpc/ieee1275/ieee1275.c: Likewise. - * include/pupa/powerpc/ieee1275/ieee1275.h: Likewise. - -2004-03-14 Jeroen Dekkers - - * Makefile.in: Update copyright. - * genmodsrc.sh: Likewise. - * gensymlist.sh: Likewise. - * term/i386/pc/vga.c: Indent correctly. - - * util/i386/pc/pupa-mkimage.c (usage): Use PACKAGE_BUGREPORT as - bugreporting address. - * util/i386/pc/pupa-setup.c (usage): Likewise, - (main): Call pupa_ext2_init and pupa_ext2_fini. - - * fs/fat.c (log2): Renamed to ... - (fat_log2): ... this. - All callers changed. - * kern/misc.c (memcpy): Alias to pupa_memmove. - * loader/i386/pc/multiboot.c (pupa_rescue_cmd_multiboot): Fix - lvalue cast. - * util/console.c (pupa_ncurses_fini): Return 0. - - * util/i386/pc/biosdisk.c (pupa_util_biosdisk_open)[__linux__]: - Move fail label here. - [__GNU__]: Don't warn when using stat. - (open_device)[!__linux__]: Check if FD < 0 instead of !FD. - (pupa_util_biosdisk_get_pupa_dev)[__GNU__]: Change type of N to - long int. Use strtol instead of strtoul. - -2004-03-14 Marco Gerards - - * commands/boot.c: New file. - * commands/cat.c: Likewise. - * commands/cmp.c: Likewise. - * commands/ls.c: Likewise. - * commands/terminal.c: Likewise. - * normal/command.c: Include and . - (pupa_register_command): Changed interface to match the new - argument parser. - (pupa_command_execute): Changed (almost rewritten) so it uses - pupa_split_command. Added support for setting variables using the - syntax `foo=bar'. - (rescue_command): Changed to work with the new argument parser. - (terminal_command): Moved from here to commands/terminal.c. - (set_command): New function. - (unset_command): New function. - (insmod_command): New function. - (rmmod_command): New function. - (lsmod_command): New function. - (pupa_command_init): Don't initialize the command terminal - anymore. Initialize the commands set, unset, insmod, rmmod and - lsmod. - * conf/i386-pc.rmk (kernel_img_SOURCES): Add kern/env.c. - (kernel_img_HEADERS): Add arg.h and env.h. - (pupa_mkimage_LDFLAGS): Add kern/env.c. - (pupa_emu_SOURCES): Add kern/env.c, commands/ls.c, - commands/terminal.c commands/boot.c commands/cmp.c commands/cat.c, - normal/arg.c. - (pkgdata_MODULES): Add ls.mod, boot.mod, cmp.mod, cat.mod and - terminal.mod. - (normal_mod_SOURCES): Add normal/arg.c and normal/arg.c. - (boot_mod_SOURCES): New variable. - (terminal_mod_SOURCES): Likewise. - (ls_mod_SOURCES): Likewise. - (cmp_mod_SOURCES): Likewise. - (cat_mod_SOURCES): Likewise. - - * normal/arg.c: New file. - * kern/env.c: Likewise. - * include/pupa/arg.h: Likewise. - * include/pupa/env.h: Likewise. - * font/manager.c (font_command): Changed to match argument parsing - interface changes. - (PUPA_MOD_INIT): Likewise. - * hello/hello.c (pupa_cmd_hello): Likewise. - (PUPA_MOD_INIT): Likewise. - * include/pupa/disk.h: Include . - (pupa_print_partinfo): New prototype. - * include/pupa/dl.h (pupa_dl_set_prefix): Prototype removed. - (pupa_dl_get_prefix): Likewise. - * include/pupa/misc.h: Include . - (pupa_isgraph): New prototype. - (pupa_isdigit): Likewise. - (pupa_split_cmdline): Likewise. - * include/pupa/normal.h: Include . - (pupa_command): Changed the prototype of the member `func' to - match the argument parsing interface. Added member `options'. - (pupa_register_command): Updated to match function. - (pupa_arg_parse): New prototype. - (pupa_hello_init) [PUPA_UTIL]: New prototype. - (pupa_hello_fini) [PUPA_UTIL]: Likewise. - (pupa_ls_init) [PUPA_UTIL]: Likewise. - (pupa_ls_fini) [PUPA_UTIL]: Likewise. - (pupa_cat_init) [PUPA_UTIL]: Likewise. - (pupa_cat_fini) [PUPA_UTIL]: Likewise. - (pupa_boot_init) [PUPA_UTIL]: Likewise. - (pupa_boot_fini) [PUPA_UTIL]: Likewise. - (pupa_cmp_init) [PUPA_UTIL]: Likewise. - (pupa_cmp_fini) [PUPA_UTIL]: Likewise. - (pupa_terminal_init) [PUPA_UTIL]: Likewise. - (pupa_terminal_fini) [PUPA_UTIL]: Likewise. - * kern/disk.c: Include . - (pupa_print_partinfo): New function. - * kern/dl.c: Include . - (pupa_dl_dir): Variable removed. - (pupa_dl_load): Use the environment variable `prefix' instead of - the variable pupa_dl_dir. - (pupa_dl_set_prefix): Function removed. - (pupa_dl_get_prefix): Likewise. - * kern/i386/pc/init.c: Include . - (pupa_machine_init): Use the environment variable `prefix' instead of - using pupa_dl_set_prefix to set the prefix. - * kern/main.c: Include . - (pupa_set_root_dev): Use the environment variable `prefix' instead of - using pupa_dl_get_prefix to get the prefix. - * kern/misc.c: Include . - (pupa_isdigit): New function. - (pupa_isgraph): Likewise. - (pupa_ftoa): Likewise. - (pupa_vsprintf): Added support for printing values of the type - `double'. Make it possible to format variable output when using - formatting like `%1.2%f'. - (pupa_split_cmdline): New function. - * kern/rescue.c: Include . - (next_word): Removed function. - (pupa_rescue_cmd_prefix): Likewise. - (pupa_rescue_cmd_set): New function. - (pupa_rescue_cmd_unset): New function. - (pupa_enter_rescue_mode): Use the `pupa_split_cmdline' function to - split the command line instead of splitting it here. Added - support for setting variables using the syntax `foo=bar'. Don't - initialize the prefix command anymore. Initialized the set and - unset commands. - * normal/cmdline.c: Include . - (pupa_tab_complete): Added prototypes for print_simple_completion, - print_partition_completion, add_completion, iterate_commands, - iterate_dev, iterate_part and iterate_dir. Moved code to print - partition information from here to kern/disk.c. - (pupa_cmdline_run): Don't check if the function exists anymore. - * normal/main.c: Include . - (pupa_rescue_cmd_normal): Use the environment variable `prefix' - instead of using pupa_dl_get_prefix to get the prefix. - * term/i386/pc/vga.c: Include . - (check_vga_mem): Cast pointers to `void *' to silence a gcc - warning. - (pupa_vga_putchar) [! DEBUG_VGA]: Removed for this case. - (pupa_vga_setcolor): Declare unused variables with `__attribute__ - ((unused))' to silence a gcc warning. - (pupa_vga_setcolor): Likewise. - (debug_command): Changed to match argument parsing - interface changes. - * util/pupa-emu.c: Include . - (options): Added 0's for unused fields to silence a gcc warning. - (argp): Likewise. - (main): Use the environment variable `prefix' instead of using - pupa_dl_set_prefix to set the prefix. Initialize the commands ls, - boot, cmp, cat and terminal. Finish the commands boot, cmp, cat - and terminal. - - * util/i386/pc/getroot.c: Include . - * util/misc.c: Include . - (pupa_malloc): Rewritten so errors are correctly reported. - (pupa_realloc): Likewise. - (pupa_memalign): Likewise. - (pupa_mm_init_region): Declare unused variables with - `__attribute__ ((unused))' to silence a gcc warning. - * normal/i386/setjmp.S: Remove tab at the end of the file to - silence a gcc warning. - * loader/i386/pc/linux.c (pupa_rescue_cmd_initrd): Declare unused - variables with `__attribute__ ((unused))' to silence a gcc - warning. - * loader/i386/pc/multiboot.c (pupa_multiboot_unload): Make the - local variable i unsigned to silence a gcc warning. - - * kern/term.c: Include . - (pupa_more_lines): New variable. - (pupa_more): Likewise. - (pupa_putcode): When the pager is active pause at the end of every - screen. - (pupa_set_more): New function. - * include/pupa/term.h (pupa_set_more): New prototype. - - -2004-03-07 Yoshinori K. Okuji - - Now this project is GRUB 2 rather than PUPA. The location of - the CVS repository was moved to GRUB's. - - * configure.ac: Use bug-grub as the reporting address. - Use GRUB instead of PUPA. - Change the version number to 1.90. - -2004-02-24 Yoshinori K. Okuji - - * genkernsyms.sh: Updated copyright information. - * genmk.rb: Likewise. - * genmodsrc.sh: Likewise. - * gensymlist.sh: Likewise. - * boot/i386/pc/boot.S: Likewise. - * boot/i386/pc/diskboot.S: Likewise. - * disk/i386/pc/biosdisk.c: Likewise. - * disk/i386/pc/partition.c: Likewise. - * font/manager.c: Likewise. - * fs/ext2.c: Likewise. - * fs/fat.c: Likewise. - * include/pupa/boot.h: Likewise. - * include/pupa/device.h: Likewise. - * include/pupa/disk.h: Likewise. - * include/pupa/dl.h: Likewise. - * include/pupa/elf.h: Likewise. - * include/pupa/err.h: Likewise. - * include/pupa/file.h: Likewise. - * include/pupa/font.h: Likewise. - * include/pupa/fs.h: Likewise. - * include/pupa/kernel.h: Likewise. - * include/pupa/loader.h: Likewise. - * include/pupa/misc.h: Likewise. - * include/pupa/mm.h: Likewise. - * include/pupa/net.h: Likewise. - * include/pupa/normal.h: Likewise. - * include/pupa/rescue.h: Likewise. - * include/pupa/setjmp.h: Likewise. - * include/pupa/symbol.h: Likewise. - * include/pupa/term.h: Likewise. - * include/pupa/types.h: Likewise. - * include/pupa/i386/setjmp.h: Likewise. - * include/pupa/i386/types.h: Likewise. - * include/pupa/i386/pc/biosdisk.h: Likewise. - * include/pupa/i386/pc/boot.h: Likewise. - * include/pupa/i386/pc/console.h: Likewise. - * include/pupa/i386/pc/init.h: Likewise. - * include/pupa/i386/pc/kernel.h: Likewise. - * include/pupa/i386/pc/linux.h: Likewise. - * include/pupa/i386/pc/loader.h: Likewise. - * include/pupa/i386/pc/memory.h: Likewise. - * include/pupa/i386/pc/multiboot.h: Likewise. - * include/pupa/i386/pc/partition.h: Likewise. - * include/pupa/i386/pc/time.h: Likewise. - * include/pupa/i386/pc/vga.h: Likewise. - * include/pupa/i386/pc/util/biosdisk.h: Likewise. - * include/pupa/util/getroot.h: Likewise. - * include/pupa/util/misc.h: Likewise. - * include/pupa/util/resolve.h: Likewise. - * kern/device.c: Likewise. - * kern/disk.c: Likewise. - * kern/dl.c: Likewise. - * kern/err.c: Likewise. - * kern/file.c: Likewise. - * kern/fs.c: Likewise. - * kern/loader.c: Likewise. - * kern/main.c: Likewise. - * kern/misc.c: Likewise. - * kern/mm.c: Likewise. - * kern/rescue.c: Likewise. - * kern/term.c: Likewise. - * kern/i386/dl.c: Likewise. - * kern/i386/pc/init.c: Likewise. - * kern/i386/pc/lzo1x.S: Likewise. - * kern/i386/pc/startup.S: Likewise. - * loader/i386/pc/chainloader.c: Likewise. - * loader/i386/pc/linux.c: Likewise. - * loader/i386/pc/multiboot.c: Likewise. - * normal/cmdline.c: Likewise. - * normal/command.c: Likewise. - * normal/main.c: Likewise. - * normal/menu.c: Likewise. - * normal/i386/setjmp.S: Likewise. - * term/i386/pc/console.c: Likewise. - * term/i386/pc/vga.c: Likewise. - * util/console.c: Likewise. - * util/genmoddep.c: Likewise. - * util/misc.c: Likewise. - * util/pupa-emu.c: Likewise. - * util/resolve.c: Likewise. - * util/unifont2pff.rb: Likewise. - * util/i386/pc/biosdisk.c: Likewise. - * util/i386/pc/getroot.c: Likewise. - * util/i386/pc/pupa-mkimage.c: Likewise. - * util/i386/pc/pupa-setup.c: Likewise. - -2004-02-15 Jeroen Dekkers - - * fs/ext2.c (pupa_ext2_read_file): Correct the value of BLOCKEND - when it is EXT2_BLOCK_SIZE (data). New argument READ_HOOK, all - callers changed. Set DATA->DISK->READ_HOOK to READ_HOOK before - reading and reset it after reading. - (pupa_ext2_close): Return PUPA_ERR_NONE. - - * include/pupa/i386/pc/linux.h (PUPA_LINUX_INITRD_MAX_ADDRESS): - Correct value. - (struct linux_kernel_header): Add kernel_version and - initrd_addr_max. - * loader/i386/pc/linux.c (pupa_rescue_cmd_linux): Check whether - pupa_file_read succeeds. - (pupa_rescue_cmd_initrd): Implement. - -2003-12-03 Marco Gerards - - * fs/ext2.c (pupa_ext2_label): New function. - (pupa_ext2_fs): Added label. - * fs/fat.c (pupa_fat_label): New function. - (pupa_fat_fs): Added label. - * include/pupa/fs.h (struct pupa_fs): Added prototype label. - - * kern/misc.c (pupa_strndup): New function. - * include/pupa/misc.h (pupa_strndup): New prototype. - - * include/pupa/normal.h: Include . - (pupa_set_history): New prototype. - (pupa_iterate_commands): New prototype. - * normal/cmdline.c: Include , - , . - (hist_size): New variable. - (hist_lines): Likewise. - (hist_end): Likewise. - (hist_used): Likewise. - (pupa_set_history): New function. - (pupa_history_get): Likewise. - (pupa_history_add): Likewise. - (pupa_history_replace): Likewise. - (pupa_tab_complete): Likewise. - (pupa_cmdline_run): Added tab completion and history buffer. Tab - completion shows partitionnames while completing partitions, this - feature was suggested by Jeff Bailey. - * normal/command.c (pupa_iterate_commands): New function. - * normal/main.c (PUPA_DEFAULT_HISTORY_SIZE): New macro. - (pupa_normal_init): Initialize history buffer. - (PUPA_MOD_INIT): Likewise. - (pupa_normal_fini): Free the history buffer. - (PUPA_MOD_FINI): Likewise. - - * util/console.c (pupa_ncurses_getkey): Accept 127 as backspace - key. - - * aclocal.m4 (pupa_I386_CHECK_REGPARM_BUG): New DEFUN. - * configure.ac [i386]: Check for regparam bug. - (NESTED_FUNC_ATTR) [! i386]: Defined. - -2003-11-17 Marco Gerards - - * conf/i386-pc.rmk (sbin_UTILITIES): Added pupa-emu. - (pupa_setup_SOURCES): Added util/i386/pc/getroot.c. - (pupa_emu_SOURCES): New variable. - (pupa_emu_LDFLAGS): Likewise. - * include/pupa/fs.h (pupa_ext2_init) [PUPA_UTIL]: New prototype. - (pupa_ext2_fini) [PUPA_UTIL]: Likewise. - * include/pupa/normal.h (pupa_normal_init) [PUPA_UTIL]: Likewise. - (pupa_normal_fini) [PUPA_UTIL]: Likewise. - * include/pupa/setjmp.h [PUPA_UTIL]: Include . - (pupa_jmp_buf): New typedef. - (pupa_setjmp) [PUPA_UTIL]: New macro. - (pupa_longjmp) [PUPA_UTIL]: Likewise. - * include/pupa/term.h (struct pupa_term): New member `refresh'. - (pupa_refresh): New prototype. - * include/pupa/util/getroot.h: New file. - * kern/misc.c (pupa_vsprintf): Refresh the screen after updating - it. - * kern/rescue.c (pupa_rescue_get_command_line): Likewise. - (pupa_rescue_cmd_cat): Likewise. - (pupa_rescue_cmd_ls): Likewise. - (pupa_rescue_cmd_testload): Likewise. - (pupa_rescue_cmd_lsmod): Likewise. - * normal/cmdline.c (pupa_cmdline_get): Likewise. - * normal/menu.c (run_menu): Likewise. - * kern/term.c (pupa_cls): Likewise. - (pupa_refresh): New function. - * normal/normal.c (pupa_normal_init) [PUPA_UTIL]: New function. - (pupa_normal_fini) [PUPA_UTIL]: Likewise. - * util/console.c: New file. - - * util/i386/pc/getroot.c: New file. - * util/i386/pc/pupa-setup.c: Include . - (pupa_putchar): New function. - (pupa_refresh): Likewise. - (xgetcwd): Function moved to ... - (strip_extra_slashes): Likewise. - (get_prefix): Likewise. - * util/i386/pc/getroot.c: ... here. - (find_root_device): Function moved and renamed to... - * util/i386/pc/getroot.c (pupa_find_root_device): ... here. - Changed all callers. - * util/i386/pc/pupa-setup.c (guess_root_device): Function moved - and renamed to... - * util/i386/pc/getroot.c (pupa_guess_root_device): ... here. - Changed all callers. - * util/misc.c (pupa_memalign): New function. - (pupa_mm_init_region): Likewise. - (pupa_register_exported_symbols): Likewise. - (pupa_putchar): Function removed. - * util/pupa-emu.c: New file. - -2003-11-16 Jeroen Dekkers - - * conf/i386-pc.rmk (pkgdata_MODULES): Add _multiboot.mod. - (_multiboot_mod_SOURCES): New variable. - (_multiboot_mod_CFLAGS): Likewise. - * loader/i386/pc/multiboot.c: New file. - * include/pupa/i386/pc/multiboot.h: Likewise. - * kern/i386/pc/startup.S: Include pupa/machine/multiboot.h. - (pupa_multiboot_real_boot): New function. - * include/pupa/i386/pc/loader.h: Include pupa/machine/multiboot.h. - (pupa_multiboot_real_boot): New prototype. - (pupa_rescue_cmd_multiboot): Likewise - (pupa_rescue_cmd_module): Likewise. - - * kern/loader.c (pupa_loader_set): Continue when - pupa_loader_unload_func() fails. - (pupa_loader_unset): New function. - * include/pupa/loader.h (pupa_loader_unset): New prototype. - - * kern/misc.c (pupa_stpcpy): New function. - * include/pupa/misc.h (pupa_stpcpy): New prototype. - -2003-11-12 Marco Gerards - - * disk/i386/pc/biosdisk.c (pupa_biosdisk_open): Correctly check - for available extensions. - - * include/pupa/i386/pc/time.h: New file. - * kern/disk.c: Include . - (PUPA_CACHE_TIMEOUT): New macro. - (pupa_last_time): New variable. - (pupa_disk_open): Flush the cache when there was a timeout. - (pupa_disk_close): Reset the timer. - * kern/i386/pc/startup.S (pupa_get_rtc): Renamed from - pupa_currticks. - * util/misc.c: Include - (pupa_get_rtc): New function. - -2003-11-09 Jeroen Dekkers - - * fs/ext2.c (struct pupa_ext2_inode): Declare struct datablocks - as blocks. - (pupa_ext2_get_file_block): Use blocks member. - - * fs/ext2.c (pupa_ext2_read_file): Only set skipfirst for the - first block. Return -1 instead of pupa_errno on error. - -2003-10-27 Marco Gerards - - * README: In the pupa-mkimage example use _chain instead of chain - and ext2 instead of fat. - * TODO: Replace ext2fs with jfs as an example. Add an item for - adding journal playback for ext2fs. - * conf/i386-pc.rmk (pupa_setup_SOURCES): Added fs/ext2.c. - (pkgdata_MODULES): Added ext2.mod. - (ext2_mod_SOURCES): New variable. - (ext2_mod_CFLAGS): Likewise. - * include/pupa/err.h (pupa_err_t): Added PUPA_ERR_SYMLINK_LOOP. - * include/pupa/misc.h (pupa_strncpy): New prototype. - (pupa_strcat): Likewise. - (pupa_strncmp): Likewise. - * kern/misc.c (pupa_strcat): Enable function. - (pupa_strncpy): New function. - (pupa_strncmp): Likewise. - * fs/ext2.c: New file. - - * kern/disk.c (pupa_disk_read): Set pupa_errno to PUPA_ERR_NONE - when the read failed before retrying. - * util/i386/pc/biosdisk.c (_LARGEFILE_SOURCE): Removed. - (_FILE_OFFSET_BITS): Likewise. - * configure.ac: Added AC_SYS_LARGEFILE. - -2003-09-25 Yoshinori K. Okuji - - * genmk.rb (PModule#rule): Make sure to get only symbol names - from the output of nm. - Reported by Robert Millan . - -2003-09-25 Yoshinori K. Okuji - - I forgot to check in these changes for a long time. This adds - incomplete support for VGA console, and this is still very - buggy. Also, a lot of consideration is required for I18N, - UNICODE, and VGA font issues. Therefore, assume that this is - such that "better than nothing". - - * font/manager.c: New file. - * include/pupa/font.h: Likewise. - * include/pupa/i386/pc/vga.h: Likewise. - * term/i386/pc/vga.c: Likewise. - * util/unifont2pff.rb: Likewise. - - * conf/i386-pc.rmk (kernel_img_HEADERS): Added machine/vga.h. - (pkgdata_MODULES): Added vga.mod and font.mod. - (vga_mod_SOURCES): New variables. - (vga_mod_CFLAGS): Likewise. - (font_mod_SOURCES): Likewise. - (font_mod_CFLAGS): Likewise. - - * include/pupa/err.h (PUPA_ERR_BAD_FONT): New constant. - - * include/pupa/term.h: Include pupa/err.h. - (struct pupa_term): Added init and fini. - Changed the argument of putchar to pupa_uint32_t. - - * include/pupa/i386/pc/console.h: Include pupa/symbol.h. - (pupa_console_real_putchar): New prototype. - (pupa_console_putchar): Removed. - (pupa_console_checkkey): Exported. - (pupa_console_getkey): Likewise. - - * kern/misc.c (pupa_vsprintf): Add support for UNICODE - characters. - - * kern/term.c (pupa_term_set_current): Rewritten. - (pupa_putchar): Likewise. - (pupa_putcode): New function. - - * kern/i386/pc/startup.S (pupa_console_putchar): Renamed to ... - (pupa_console_real_putchar): ... this. - (pupa_vga_set_mode): New function. - (pupa_vga_get_font): Likewise. - - * normal/command.c: Include pupa/term.h. - (terminal_command): New function. - (pupa_command_init): Register the command "terminal". - - * normal/menu.c (DISP_LEFT): Changed to a UNICODE value. - (DISP_UP): Likewise. - (DISP_RIGHT): Likewise. - (DISP_DOWN): Likewise. - (DISP_HLINE): Likewise. - (DISP_VLINE): Likewise. - (DISP_UL): Likewise. - (DISP_UR): Likewise. - (DISP_LL): Likewise. - (DISP_LR): Likewise. - - * term/i386/pc/console.c (pupa_console_putchar): New function. - -2003-02-08 NIIBE Yutaka - - * util/resolve.c (pupa_util_resolve_dependencies): BUG - FIX. Reverse the path_list. - - * include/pupa/normal.h: Export pupa_register_command and - pupa_unregister_command. - - * hello/hello.c (pupa_cmd_hello): New module. - * conf/i386-pc.rmk: Added hello.mod. - -2003-01-31 Yoshinori K. Okuji - - * kern/i386/pc/lzo1x.S: New file. - - * util/i386/pc/pupa-mkimage.c: Include lzo1x.h. - (compress_kernel): New variable. - (generate_image): Heavily modified to support compressing a - large part of the core image. - - * util/misc.c (pupa_util_read_image): Fix a file descriptor - leak. - (pupa_util_load_image): New function. - - * kern/i386/pc/startup.S: Include pupa/machine/kernel.h. - (pupa_compressed_size): New variable. - (codestart): Enable Gate A20 here. - Decompress the compressed part of the core image. - Rearrange the code to put functions and variables which are - required for initialization in the non-compressed part. - Include lzo1x.S. - - * kern/i386/pc/init.c (pupa_machine_init): Don't enable Gate A20 - here. - - * include/pupa/util/misc.h (pupa_util_write_image): Declared. - - * include/pupa/i386/pc/kernel.h - (PUPA_KERNEL_MACHINE_COMPRESSED_SIZE): New macro. - (PUPA_KERNEL_MACHINE_INSTALL_DOS_PART): Increased by 4. - (PUPA_KERNEL_MACHINE_INSTALL_BSD_PART): Likewise. - (PUPA_KERNEL_MACHINE_PREFIX): Likewise. - (PUPA_KERNEL_MACHINE_RAW_SIZE): New macro. - - * conf/i386-pc.rmk (pupa_mkimage_LDFLAGS): New variable. - - * genmk.rb (Image#rule): Put LDFLAGS at the end of a line. - (Utility#rule): Likewise. - - * configure.ac: Check if LZO is available. - -2003-01-20 Yoshinori K. Okuji - - * include/pupa/normal.h: New file. - * include/pupa/setjmp.h: Likewise. - * include/pupa/i386/setjmp.h: Likewise. - * normal/cmdline.c: Likewise. - * normal/command.c: Likewise. - * normal/main.c: Likewise. - * normal/menu.c: Likewise. - * normal/i386/setjmp.S: Likewise. - - * loader/i386/pc/linux.c (pupa_rescue_cmd_linux): Made global. - (pupa_rescue_cmd_initrd): Likewise. - - * loader/i386/pc/chainloader.c (pupa_rescue_cmd_chainloader): - Likewise. - - * kern/i386/pc/startup.S (translation_table): New variable. - (translate_keycode): New function. - (pupa_console_getkey): Call translate_keycode. - - * kern/rescue.c (attempt_normal_mode): New function. - (pupa_enter_rescue_mode): Attempt to execute the normal mode. If - it failed, print a message. - - * kern/mm.c (pupa_real_malloc): Print more information when a - free magic is broken. - (pupa_free): If the first free header is not free actually, set - it to P. - - * kern/main.c (pupa_load_normal_mode): Just load the module - "normal". - (pupa_main): Don't print the message - "Entering into rescue mode..." here. - - * include/pupa/i386/pc/loader.h (pupa_rescue_cmd_initrd): - Declared. - (pupa_rescue_cmd_initrd): Likewise. - (pupa_rescue_cmd_initrd): Likewise. - - * include/pupa/symbol.h (FUNCTION): Specify the type. - (VARIABLE): Likewise. - - * include/pupa/err.h (pupa_err_t): Added - PUPA_ERR_UNKNOWN_COMMAND. - - * include/pupa/dl.h (pupa_dl_set_prefix): Exported. - (pupa_dl_get_prefix): Likewise. - - * conf/i386-pc.rmk (pkgdata_MODULES): Added normal.mod. - Added _chain.mod and _linux.mod instead of chain.mod and - linux.mod. - (chain_mod_SOURCES): Renamed to ... - (_chain_mod_SOURCES): ... this. - (chain_mod_CFLAGS): Renamed to ... - (_chain_mod_CFLAGS): ... this. - (linux_mod_SOURCES): Renamed to ... - (_linux_mod_SOURCES): ... this. - (linux_mod_CFLAGS): Renamed to ... - (_linux_mod_CFLAGS): ... this. - (normal_mod_SOURCES): New variable. - (normal_mod_CFLAGS): Likewise. - (normal_mod_ASFLAGS): Likewise. - -2003-01-18 Yoshinori K. Okuji - - * kern/rescue.c (pupa_rescue_cmd_rmmod): Call pupa_dl_unload, if - possible. - - * kern/dl.c (pupa_dl_ref): Refer depending modules - recursively. - (pupa_dl_unref): Unrefer depending modules recursively. - Don't call pupa_dl_unload implicitly, because PUPA can crash if - a module is unloaded before one depending on that module is - unloaded. - (pupa_dl_unload): Unload depending modules explicitly, - if possible. - -2003-01-17 Yoshinori K. Okuji - - * include/pupa/i386/pc/linux.h: New file. - * loader/i386/pc/linux.c: Likewise. - - * loader/i386/pc/chainloader.c (pupa_chainloader_boot_sector): - Removed. - (pupa_chainloader_unload): Return PUPA_ERR_NONE. - (pupa_rescue_cmd_chainloader): Read the image to 0x7C00 instead - of PUPA_CHAINLOADER_BOOT_SECTOR. - - * kern/i386/pc/startup.S: Include pupa/machine/linux.h. - (pupa_linux_prot_size): New variable. - (pupa_linux_tmp_addr): Likewise. - (pupa_linux_real_addr): Likewise. - (pupa_linux_boot_zimage): New function. - (pupa_linux_boot_bzimage): Likewise. - - * kern/i386/pc/init.c (struct mem_region): New structure. - (MAX_REGIONS): New macro. - (mem_regions): New variable. - (num_regions): Likewise. - (pupa_os_area_addr): Likewise. - (pupa_os_area_size): Likewise. - (pupa_lower_mem): Likewise. - (pupa_upper_mem): Likewise. - (add_mem_region): New function. - (compact_mem_regions): Likewise. - (pupa_machine_init): Set PUPA_LOWER_MEM and PUPA_UPPER_MEM to - the size of the conventional memory and that of so-called upper - memory (before the first memory hole). - Instead of adding each found region to free memory, use - add_mem_region and add them after removing overlaps. - Also, add only 1/4 of the upper memory to free memory. The rest - is used for loading OS images. Maybe this is ad hoc, but this - makes it much easier to relocate OS images when booting. - - * kern/rescue.c (pupa_rescue_cmd_module): Removed. - (pupa_enter_rescue_mode): Don't register initrd and module. - - * kern/mm.c: Include pupa/dl.h. - - * kern/main.c: Include pupa/file.h and pupa/device.h. - - * kern/loader.c (pupa_loader_load_module_func): Removed. - (pupa_loader_load_module): Likewise. - - * kern/dl.c (pupa_dl_load): Use the suffix ``.mod'' instead of - ``.o''. - - * include/pupa/i386/pc/loader.h (pupa_linux_prot_size): Declared. - (pupa_linux_tmp_addr): Likewise. - (pupa_linux_real_addr): Likewise. - (pupa_linux_boot_zimage): Likewise. - (pupa_linux_boot_bzimage): Likewise. - - * include/pupa/i386/pc/init.h (pupa_lower_mem): Declared. - (pupa_upper_mem): Likewise. - (pupa_gate_a20): Don't export, because turning off Gate A20 in a - module is too dangerous. - - * include/pupa/loader.h (pupa_os_area_addr): Declared. - (pupa_os_area_size): Likewise. - (pupa_loader_set): Remove the first argument. Loader doesn't - manage modules or initrd any longer. - (pupa_loader_load_module): Removed. - - * conf/i386-pc.rmk (pkgdata_MODULES): Added linux.mod. - (linux_mod_SOURCES): New variable. - (linux_mod_CFLAGS): Likewise. - -2003-01-07 Yoshinori K. Okuji - - * util/i386/pc/pupa-setup.c (setup): Convert the endianness of - the length of a blocklist correctly. - - * util/i386/pc/biosdisk.c (pupa_util_biosdisk_open) [__linux__]: - Use ioctl only if the OS file is a block device. - (pupa_util_biosdisk_open): Don't use ST.ST_BLOCKS, because it is - not very useful for normal files. - - * kern/main.c (pupa_set_root_dev): New function. - (pupa_load_normal_mode): Likewise. - (pupa_main): Call those above. - - * include/pupa/types.h (pupa_swap_bytes16): Cast the result to - pupa_uint16_t. - - * include/pupa/kernel.h (pupa_enter_normal_mode): Removed. - -2003-01-06 Yoshinori K. Okuji - - * util/i386/pc/pupa-setup.c: Include pupa/machine/kernel.h. - (setup): Configure the installed partition information and the - dl prefix. - - * loader/i386/pc/chainloader.c (my_mod): New variable. - (pupa_chainloader_unload): New function. - (pupa_rescue_cmd_chainloader): Refer itself. - (PUPA_MOD_INIT): Save its own module in MY_MOD. - - * kern/i386/pc/startup.S (install_partition): Removed. - (version_string): Likewise. - (config_file): Likewise. - (pupa_install_dos_part): New variable. - (pupa_install_bsd_part): Likewise. - (pupa_prefix): Likewise. - (pupa_chainloader_real_boot): Call pupa_dl_unload_all. - - * kern/i386/pc/init.c: Include pupa/machine/kernel.h, pupa/dl.h - and pupa/misc.h. - (make_install_device): New function. - (pupa_machine_init): Set the dl prefix. - - * kern/rescue.c: Include pupa/rescue.h and pupa/dl.h. - (buf): Renamed to ... - (linebuf): ... this. - (pupa_rescue_cmd_prefix): New function. - (pupa_rescue_cmd_insmod): Likewise. - (pupa_rescue_cmd_rmmod): Likewise. - (pupa_rescue_cmd_lsmod): Likewise. - (pupa_enter_rescue_mode): Register new commands: prefix, insmod, - rmmod and lsmod. - - * kern/mm.c (pupa_memalign): If failed even after invalidating - disk caches, unload unneeded modules and retry. - - * kern/misc.c (pupa_memmove): New function. - (pupa_memcpy): Removed. - (pupa_strcpy): New function. - (pupa_itoa): Made static. - - * kern/dl.c (pupa_dl_iterate): New function. - (pupa_dl_ref): Likewise. - (pupa_dl_unref): Likewise. - (pupa_dl_unload): Return if succeeded or not. - (pupa_dl_unload_unneeded): New function. - (pupa_dl_unload_all): Likewise. - (pupa_dl_init): Renamed to ... - (pupa_dl_set_prefix): ... this. - (pupa_dl_get_prefix): New function. - - * include/pupa/i386/pc/kernel.h: Include pupa/types.h. - (PUPA_KERNEL_MACHINE_INSTALL_DOS_PART): New macro. - (PUPA_KERNEL_MACHINE_INSTALL_BSD_PART): Likewise. - (PUPA_KERNEL_MACHINE_PREFIX): Likewise. - (pupa_install_dos_part): Declared. - (pupa_install_bsd_part): Likewise. - (pupa_prefix): Likewise. - (pupa_boot_drive): Likewise. - - * include/pupa/types.h: Fix a typo. - - * include/pupa/misc.h (pupa_memcpy): New macro. Just an alias to - pupa_memmove. - (pupa_memmove): Declared. - (pupa_strcpy): Likewise. - - * include/pupa/dl.h (PUPA_MOD_INIT): Change the prototype. Now - pupa_mod_init takes one argument, its own module. - (pupa_dl_unload_unneeded): Declared. - (pupa_dl_unload_all): Likewise. - (pupa_dl_ref): Likewise. - (pupa_dl_unref): Likewise. - (pupa_dl_iterate): Likewise. - (pupa_dl_init): Renamed to ... - (pupa_dl_set_prefix): ... this. - (pupa_dl_get_prefix): Declared. - - * fs/fat.c [!PUPA_UTIL] (my_mod): New variable. - (pupa_fat_dir) [!PUPA_UTIL]: Prevent the fat module from being - unloaded. - (pupa_fat_open) [!PUPA_UTIL]: Refer itself if succeeded. - (pupa_fat_close) [!PUPA_UTIL]: Unrefer itself. - - * configure.ac (tmp_CFLAGS): Added -Wshadow, -Wpointer-arith, - -Wmissing-prototypes, -Wundef and -Wstrict-prototypes. - -2003-01-03 Yoshinori K. Okuji - - * util/i386/pc/pupa-setup.c (setup): Define the internal - function find_first_partition_start at the top level, because GCC - 3.0.x cannot compile internal functions in deeper scopes - correctly. - (find_root_device): Use lstat instead of stat. - Don't follow symbolic links. - Fix the path-constructing code. - - * util/i386/pc/biosdisk.c [__linux__] (BLKFLSBUF): New macro. - (pupa_util_biosdisk_open) [__linux__]: Get the size of a device - by a BLKGETSIZE ioctl first, because block devices don't fill - the member st_mode of the structure stat on Linux. - [__linux__] (linux_find_partition): Use a temporary buffer - REAL_DEV for the working space. Copy it to DEV before returning. - (open_device) [__linux__]: Call ioctl with BLKFLSBUF to make the - buffer cache consistent. - (get_os_disk) [__linux__]: Use the length 5 instead of 4 for - strncmp. The previous value was merely wrong. - (pupa_util_biosdisk_get_pupa_dev): Use stat instead of lstat. - - * fs/fat.c (pupa_fat_read_data): Shift 4 instead of 12 when the - FAT size is 12. The previous value was merely wrong. - - * kern/main.c (pupa_main): Don't split the starting message from - newlines. - - * kern/term.c (pupa_putchar): Put CR after LF instead of before - LF, because BIOS goes crazy about character attributes in this - case. - -2003-01-03 Yoshinori K. Okuji - - * include/i386/pc/util/biosdisk.h: New file. - * util/i386/pc/biosdisk.c: Likewise. - * util/i386/pc/pupa-setup.c: Likewise. - - * Makefile.in (INCLUDE_DISTFILES): Added - include/pupa/i386/pc/util/biosdisk.h. - (UTIL_DISTFILES): Added biosdisk.c and pupa-setup.c under the - directory util/i386/pc. - (install-local): Added a rule for sbin_UTILITIES. - (uninstall): Likewise. - - * util/i386/pc/pupa-mkimage.c (usage): Fix a typo in the doc. - - * util/misc.c (xrealloc): New function. - (pupa_malloc): Likewise. - (pupa_free): Likewise. - (pupa_realloc): Likewise. - (pupa_stop): Likewise. - (pupa_putchar): Likewise. - - * kern/disk.c (pupa_disk_read): Prevent L from underflowing. - - * include/pupa/util/misc.h (xrealloc): Declared. - - * include/pupa/i386/pc/boot.h (PUPA_BOOT_MACHINE_BPB_START): New - macro. - (PUPA_BOOT_MACHINE_BPBEND): Renamed to ... - (PUPA_BOOT_MACHINE_BPB_END): ... this. - - * include/pupa/fs.h [PUPA_UTIL] (pupa_fat_init): Declared. - [PUPA_UTIL] (pupa_fat_fini): Likewise. - - * fs/fat.c [PUPA_UTIL] (pupa_fat_init): Defined. Maybe a better - way should be implemented. - [PUPA_UTIL] (pupa_fat_fini): Likewise. - - * disk/i386/pc/biosdisk.c (pupa_biosdisk_call_hook): Increase - the size of NAME for safety. - (pupa_biosdisk_iterate): Search hard disks to 0x90 instead of - 0x88. - - * conf/i386-pc.rmk (sbin_UTILITIES): New variable. - (pupa_setup_SOURCES): Likewise. - - * genmk.rb (Utility#rule): Add $(BUILD_CFLAGS) into the rules. - -2002-12-28 Yoshinori K. Okuji - - * kern/i386/pc/startup.S (push_get_mmap_entry): Revert to a - bunch of pushl's from pusha, because this destroys the return - value. - -2002-12-28 Yoshinori K. Okuji - - Use -mrtd and -mregparm=3 to reduce the generated code sizes. - This means that any missing prototypes could be fatal. Also, you - must take care when writing assembly code. See the comments at - the beginning of startup.S, for more details. - - * kern/i386/pc/startup.S (pupa_halt): Modified for the new - compilation mechanism. - (pupa_chainloader_real_boot): Likewise. - (pupa_biosdisk_rw_int13_extensions): Likewise. - (pupa_biosdisk_rw_standard): Likewise. - (pupa_biosdisk_check_int13_extensions): Likewise. - (pupa_biosdisk_get_diskinfo_int13_extensions): Likewise. - (pupa_biosdisk_get_diskinfo_standard): Likewise. - (pupa_get_memsize): Likewise. - (pupa_get_mmap_entry): Likewise. - (pupa_console_putchar): Likewise. - (pupa_console_setcursor): Likewise. - (pupa_getrtsecs): Use pushl instead of push. - - * kern/i386/pc/init.c (pupa_machine_init): Use the scratch - memory instead of the stack for a mmap entry, because some - BIOSes may ignore the maximum size and overflow. - - * conf/i386-pc.rmk (COMMON_CFLAGS): Added -mrtd and -mregparm=3. - - * genmk.rb (PModule#rule): Compile automatically generated - sources with module-specific CFLAGS as well as other sources. - -2002-12-27 Yoshinori K. Okuji - - * configure.ac: Check ld. - Replace CFLAGS and CPPFLAGS with BUILD_CFLAGS and BUILD_CPPFLAGS - respectively, before checking endianness and sizes. - - * Makefile.in (LD): New variable. - -2002-12-27 Yoshinori K. Okuji - - * Makefile.in (BUILD_CC): CC -> BUILD_CC. - -2002-12-27 Yoshinori K. Okuji - - * Changelog: New file. - diff --git a/thirdparty/grub-2.04/INSTALL b/thirdparty/grub-2.04/INSTALL deleted file mode 100644 index 8acb40902..000000000 --- a/thirdparty/grub-2.04/INSTALL +++ /dev/null @@ -1,296 +0,0 @@ --*- Text -*- - -This is the GRUB. Welcome. - -This file contains instructions for compiling and installing the GRUB. - -The Requirements -================ - -GRUB depends on some software packages installed into your system. If -you don't have any of them, please obtain and install them before -configuring the GRUB. - -* GCC 4.1.3 or later - Note: older versions may work but support is limited - - Experimental support for clang 3.3 or later (results in much bigger binaries) - for i386, x86_64, arm (including thumb), arm64, mips(el), powerpc, sparc64 - Note: clang 3.2 or later works for i386 and x86_64 targets but results in - much bigger binaries. - earlier versions not tested - Note: clang 3.2 or later works for arm - earlier versions not tested - Note: clang on arm64 is not supported due to - https://llvm.org/bugs/show_bug.cgi?id=26030 - Note: clang 3.3 or later works for mips(el) - earlier versions fail to generate .reginfo and hence gprel relocations - fail. - Note: clang 3.2 or later works for powerpc - earlier versions not tested - Note: clang 3.5 or later works for sparc64 - earlier versions return "error: unable to interface with target machine" - Note: clang has no support for ia64 and hence you can't compile GRUB - for ia64 with clang -* GNU Make -* GNU Bison 2.3 or later -* GNU gettext 0.17 or later -* GNU binutils 2.9.1.0.23 or later -* Flex 2.5.35 or later -* pkg-config -* Other standard GNU/Unix tools -* a libc with large file support (e.g. glibc 2.1 or later) - -On GNU/Linux, you also need: - -* libdevmapper 1.02.34 or later (recommended) - -For optional grub-emu features, you need: - -* SDL (recommended) -* libpciaccess (optional) -* libusb (optional) - -To build GRUB's graphical terminal (gfxterm), you need: - -* FreeType 2.1.5 or later -* GNU Unifont - -If you use a development snapshot or want to hack on GRUB you may -need the following. - -* Python 2.6 or later -* Autoconf 2.63 or later -* Automake 1.11 or later - -Prerequisites for make-check: - -* qemu, specifically the binary 'qemu-system-i386' -* xorriso 1.2.9 or later, for grub-mkrescue and grub-shell - -Configuring the GRUB -==================== - -The `configure' shell script attempts to guess correct values for -various system-dependent variables used during compilation. It uses -those values to create a `Makefile' in each directory of the package. -It may also create one or more `.h' files containing system-dependent -definitions. Finally, it creates a shell script `config.status' that -you can run in the future to recreate the current configuration, a -file `config.cache' that saves the results of its tests to speed up -reconfiguring, and a file `config.log' containing compiler output -(useful mainly for debugging `configure'). - -If you need to do unusual things to compile the package, please try to -figure out how `configure' could check whether to do them, and mail -diffs or instructions to the address given in the `README' so they can -be considered for the next release. If at some point `config.cache' -contains results you don't want to keep, you may remove or edit it. - -The file `configure.ac' is used to create `configure' by a program -called `autoconf'. You only need `configure.in' if you want to change -it or regenerate `configure' using a newer version of `autoconf'. - - -Building the GRUB -================= - -The simplest way to compile this package is: - - 1. `cd' to the directory containing the package's source code. - - 2. Skip this and following step if you use release tarball and proceed to - step 4. If you want translations type `./linguas.sh'. - - 3. Type `./bootstrap'. - - * autogen.sh (called by bootstrap) uses python. By default the - invocation is "python", but it can be overridden by setting the - variable $PYTHON. - - 4. Type `./configure' to configure the package for your system. - If you're using `csh' on an old version of System V, you might - need to type `sh ./configure' instead to prevent `csh' from trying - to execute `configure' itself. - - Running `configure' takes awhile. While running, it prints some - messages telling which features it is checking for. - - 6. Type `make' to compile the package. - - 7. Optionally, type `make check' to run any self-tests that come with - the package. - - 8. Type `make install' to install the programs and any data files and - documentation. - - 9. You can remove the program binaries and object files from the - source code directory by typing `make clean'. To also remove the - files that `configure' created (so you can compile the package for - a different kind of computer), type `make distclean'. There is - also a `make maintainer-clean' target, but that is intended mainly - for the package's developers. If you use it, you may have to get - all sorts of other programs in order to regenerate files that came - with the distribution. - -Cross-compiling the GRUB -======================== - -GRUB defines 3 platforms: - - - "Build" is the one which build systems runs on. - - "Host" is where you execute GRUB utils. - - "Target" is where GRUB itself runs. - -For grub-emu host and target must be the same but may differ from build. - -If build and host are different make check isn't available. - -If build and host are different man pages are not generated. - -As an example imagine you have a build system running on FreeBSD on sparc -which prepares packages for developers running amd64 GNU/Linux laptop and -they need to make images for ARM board running U-boot. In this case: - -build=sparc64-freebsd -host=amd64-linux-gnu -target=arm-uboot - -For this example the configure line might look like (more details below) -(some options are optional and included here for completeness but some rarely -used options are omitted): - -./configure BUILD_CC=gcc BUILD_PKG_CONFIG=pkg-config --host=amd64-linux-gnu -CC=amd64-linux-gnu-gcc CFLAGS="-g -O2" PKG_CONFIG=amd64-linux-gnu-pkg-config ---target=arm --with-platform=uboot TARGET_CC=arm-elf-gcc -TARGET_CFLAGS="-Os -march=armv6" TARGET_CCASFLAGS="-march=armv6" -TARGET_OBJCOPY="arm-elf-objcopy" TARGET_STRIP="arm-elf-strip" -TARGET_NM=arm-elf-nm TARGET_RANLIB=arm-elf-ranlib LEX=gflex - -You need to use following options to specify tools and platforms. For minimum -version look at prerequisites. All tools not mentioned in this section under -corresponding platform are not needed for the platform in question. - - - For build - 1. BUILD_CC= to gcc able to compile for build. This is used, for - example, to compile build-gentrigtables which is then run to - generate sin and cos tables. - 2. BUILD_CFLAGS= for C options for build. - 3. BUILD_CPPFLAGS= for C preprocessor options for build. - 4. BUILD_LDFLAGS= for linker options for build. - 5. BUILD_PKG_CONFIG= for pkg-config for build (optional). - - - For host - 1. --host= to autoconf name of host. - 2. CC= for gcc able to compile for host - 3. HOST_CFLAGS= for C options for host. - 4. HOST_CPPFLAGS= for C preprocessor options for host. - 5. HOST_LDFLAGS= for linker options for host. - 6. PKG_CONFIG= for pkg-config for host (optional). - 7. Libdevmapper if any must be in standard linker folders (-ldevmapper) (optional). - 8. Libfuse if any must be in standard linker folders (-lfuse) (optional). - 9. Libzfs if any must be in standard linker folders (-lzfs) (optional). - 10. Liblzma if any must be in standard linker folders (-llzma) (optional). - - - For target - 1. --target= to autoconf cpu name of target. - 2. --with-platform to choose firmware. - 3. TARGET_CC= for gcc able to compile for target - 4. TARGET_CFLAGS= for C options for target. - 5. TARGET_CPPFLAGS= for C preprocessor options for target. - 6. TARGET_CCASFLAGS= for assembler options for target. - 7. TARGET_LDFLAGS= for linker options for target. - 8. TARGET_OBJCOPY= for objcopy for target. - 9. TARGET_STRIP= for strip for target. - 10. TARGET_NM= for nm for target. - 11. TARGET_RANLIB= for ranlib for target. - - - Additionally for emu, for host and target. - 1. SDL is looked for in standard linker directories (-lSDL) (optional) - 2. libpciaccess is looked for in standard linker directories (-lpciaccess) (optional) - 3. libusb is looked for in standard linker directories (-lusb) (optional) - - - Platform-agnostic tools and data. - 1. make is the tool you execute after ./configure. - 2. Bison is specified in YACC= variable - 3. Flex is specified in LEX= variable - 4. GNU unifont and Djvu sans are looked for in standard directories. - -Compiling For Multiple Architectures -==================================== - -You can compile the package for more than one kind of computer at the -same time, by placing the object files for each architecture in their -own directory. `cd' to the directory where you want the object files -and executables to go and run the `configure' script. `configure' -automatically checks for the source code in the directory that -`configure' is in and in `..'. - - -Installation Names -================== - -By default, `make install' will install the package's files in -`/usr/local/bin', `/usr/local/man', etc. You can specify an -installation prefix by giving `configure' the option `--prefix=PATH'. - -You can specify separate installation prefixes for -architecture-specific files and architecture-independent files. If -you give `configure' the option `--exec-prefix=PATH', the package will -use PATH as the prefix for installing programs and libraries. -Documentation and other data files will still use the regular prefix. - -In addition, if you use an unusual directory layout you can give -options like `--bindir=PATH' to specify different values for -particular kinds of files. Run `configure --help' for a list of the -directories you can set and what kinds of files go in them. - -If the package supports it, you can cause programs to be installed -with an extra prefix or suffix on their names by giving `configure' -the option `--program-prefix=PREFIX' or `--program-suffix=SUFFIX'. - -Please note, however, that the GRUB knows where it is located in the -filesystem. If you have installed it in an unusual location, the -system might not work properly, or at all. The chief utility of these -options for the GRUB is to allow you to "install" in some alternate -location, and then copy these to the actual root filesystem later. - - -Sharing Defaults -================ - -If you want to set default values for `configure' scripts to share, -you can create a site shell script called `config.site' that gives -default values for variables like `CC', `cache_file', and `prefix'. -`configure' looks for `PREFIX/share/config.site' if it exists, then -`PREFIX/etc/config.site' if it exists. Or, you can set the -`CONFIG_SITE' environment variable to the location of the site script. -A warning: not all `configure' scripts look for a site script. - - -Operation Controls -================== - - `configure' recognizes the following options to control how it -operates. - -`--cache-file=FILE' - Use and save the results of the tests in FILE instead of - `./config.cache'. Set FILE to `/dev/null' to disable caching, for - debugging `configure'. - -`--help' - Print a summary of the options to `configure', and exit. - -`--quiet' -`--silent' -`-q' - Do not print messages saying which checks are being made. - -`--srcdir=DIR' - Look for the package's source code in directory DIR. Usually - `configure' can determine that directory automatically. - -`--version' - Print the version of Autoconf used to generate the `configure' - script, and exit. diff --git a/thirdparty/grub-2.04/Makefile.am b/thirdparty/grub-2.04/Makefile.am deleted file mode 100644 index 1f4bb9b8c..000000000 --- a/thirdparty/grub-2.04/Makefile.am +++ /dev/null @@ -1,487 +0,0 @@ -AUTOMAKE_OPTIONS = subdir-objects -Wno-portability - -DEPDIR = .deps-util -SUBDIRS = grub-core/lib/gnulib . -if COND_real_platform -SUBDIRS += grub-core -endif -SUBDIRS += po docs util/bash-completion.d - -include $(top_srcdir)/conf/Makefile.common -include $(top_srcdir)/conf/Makefile.extra-dist - -AM_CFLAGS = $(HOST_CFLAGS) -AM_LDFLAGS = $(HOST_LDFLAGS) -AM_CPPFLAGS = $(HOST_CPPFLAGS) $(CPPFLAGS_DEFAULT) -AM_CCASFLAGS = $(HOST_CCASFLAGS) $(CCASFLAGS_DEFAULT) - -ACLOCAL_AMFLAGS = -I m4 - -CFLAGS_PROGRAM += $(CFLAGS_GNULIB) -LDFLAGS_PROGRAM += $(LDFLAGS_GNULIB) -CPPFLAGS_PROGRAM += $(CPPFLAGS_GNULIB) -CCASFLAGS_PROGRAM += $(CCASFLAGS_GNULIB) - -include $(srcdir)/Makefile.util.am - -# XXX Use Automake's LEX & YACC support -grub_script.tab.h: $(top_srcdir)/grub-core/script/parser.y - $(YACC) -d -p grub_script_yy -b grub_script $(top_srcdir)/grub-core/script/parser.y -grub_script.tab.c: grub_script.tab.h -CLEANFILES += grub_script.tab.c grub_script.tab.h - -# For the lexer. -grub_script.yy.h: $(top_srcdir)/grub-core/script/yylex.l - $(LEX) -o grub_script.yy.c --header-file=grub_script.yy.h $(top_srcdir)/grub-core/script/yylex.l -grub_script.yy.c: grub_script.yy.h -CLEANFILES += grub_script.yy.c grub_script.yy.h - -# For libgrub.a -libgrub.pp: grub_script.tab.h grub_script.yy.h $(libgrubmods_a_SOURCES) $(libgrubkern_a_SOURCES) - $(CPP) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) \ - -D'GRUB_MOD_INIT(x)=@MARKER@x@' $^ > $@ || (rm -f $@; exit 1) -CLEANFILES += libgrub.pp - -libgrub_a_init.lst: libgrub.pp - cat $< | grep '@MARKER@' | sed 's/@MARKER@\(.*\)@/\1/g' | sort -u > $@ || (rm -f $@; exit 1) -CLEANFILES += libgrub_a_init.lst - -libgrub_a_init.c: libgrub_a_init.lst $(top_srcdir)/geninit.sh - sh $(top_srcdir)/geninit.sh `cat $<` > $@ || (rm -f $@; exit 1) -CLEANFILES += libgrub_a_init.c - -# For grub-fstest -grub_fstest.pp: $(grub_fstest_SOURCES) - $(CPP) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_fstest_CPPFLAGS) $(CPPFLAGS) \ - -D'GRUB_MOD_INIT(x)=@MARKER@x@' $^ > $@ || (rm -f $@; exit 1) -CLEANFILES += grub_fstest.pp - -grub_fstest_init.lst: libgrub.pp grub_fstest.pp - cat $^ | grep '@MARKER@' | sed 's/@MARKER@\(.*\)@/\1/g' | sort -u > $@ || (rm -f $@; exit 1) -CLEANFILES += grub_fstest_init.lst - -grub_fstest_init.c: grub_fstest_init.lst $(top_srcdir)/geninit.sh - sh $(top_srcdir)/geninit.sh `cat $<` > $@ || (rm -f $@; exit 1) -CLEANFILES += grub_fstest_init.c - -if COND_HAVE_FONT_SOURCE -pkgdata_DATA += unicode.pf2 ascii.pf2 euro.pf2 ascii.h widthspec.h -endif - -starfield_theme_files = $(srcdir)/themes/starfield/blob_w.png $(srcdir)/themes/starfield/boot_menu_c.png $(srcdir)/themes/starfield/boot_menu_e.png $(srcdir)/themes/starfield/boot_menu_ne.png $(srcdir)/themes/starfield/boot_menu_n.png $(srcdir)/themes/starfield/boot_menu_nw.png $(srcdir)/themes/starfield/boot_menu_se.png $(srcdir)/themes/starfield/boot_menu_s.png $(srcdir)/themes/starfield/boot_menu_sw.png $(srcdir)/themes/starfield/boot_menu_w.png $(srcdir)/themes/starfield/slider_c.png $(srcdir)/themes/starfield/slider_n.png $(srcdir)/themes/starfield/slider_s.png $(srcdir)/themes/starfield/starfield.png $(srcdir)/themes/starfield/terminal_box_c.png $(srcdir)/themes/starfield/terminal_box_e.png $(srcdir)/themes/starfield/terminal_box_ne.png $(srcdir)/themes/starfield/terminal_box_n.png $(srcdir)/themes/starfield/terminal_box_nw.png $(srcdir)/themes/starfield/terminal_box_se.png $(srcdir)/themes/starfield/terminal_box_s.png $(srcdir)/themes/starfield/terminal_box_sw.png $(srcdir)/themes/starfield/terminal_box_w.png $(srcdir)/themes/starfield/theme.txt $(srcdir)/themes/starfield/README $(srcdir)/themes/starfield/COPYING.CC-BY-SA-3.0 - -build-grub-mkfont$(BUILD_EXEEXT): util/grub-mkfont.c grub-core/unidata.c grub-core/kern/emu/misc.c util/misc.c - $(BUILD_CC) -o $@ -I$(top_srcdir)/include $(BUILD_CFLAGS) $(BUILD_CPPFLAGS) $(BUILD_LDFLAGS) -DGRUB_MKFONT=1 -DGRUB_BUILD=1 -DGRUB_UTIL=1 -DGRUB_BUILD_PROGRAM_NAME=\"build-grub-mkfont\" $^ $(BUILD_FREETYPE_CFLAGS) $(BUILD_FREETYPE_LIBS) -CLEANFILES += build-grub-mkfont$(BUILD_EXEEXT) - -garbage-gen$(BUILD_EXEEXT): util/garbage-gen.c - $(BUILD_CC) -o $@ $(BUILD_CFLAGS) $(BUILD_CPPFLAGS) $(BUILD_LDFLAGS) $^ -CLEANFILES += garbage-gen$(BUILD_EXEEXT) -EXTRA_DIST += util/garbage-gen.c - -build-grub-gen-asciih$(BUILD_EXEEXT): util/grub-gen-asciih.c - $(BUILD_CC) -o $@ -I$(top_srcdir)/include $(BUILD_CFLAGS) $(BUILD_CPPFLAGS) $(BUILD_LDFLAGS) -DGRUB_MKFONT=1 -DGRUB_BUILD=1 -DGRUB_UTIL=1 $^ $(BUILD_FREETYPE_CFLAGS) $(BUILD_FREETYPE_LIBS) -Wall -Werror -CLEANFILES += build-grub-gen-asciih$(BUILD_EXEEXT) - -build-grub-gen-widthspec$(BUILD_EXEEXT): util/grub-gen-widthspec.c - $(BUILD_CC) -o $@ -I$(top_srcdir)/include $(BUILD_CFLAGS) $(BUILD_CPPFLAGS) $(BUILD_LDFLAGS) -DGRUB_MKFONT=1 -DGRUB_BUILD=1 -DGRUB_UTIL=1 $^ $(BUILD_FREETYPE_CFLAGS) $(BUILD_FREETYPE_LIBS) -Wall -Werror -CLEANFILES += build-grub-gen-widthspec$(BUILD_EXEEXT) - -if COND_STARFIELD -starfield_DATA = dejavu_10.pf2 dejavu_12.pf2 dejavu_bold_14.pf2 dejavu_14.pf2 dejavu_16.pf2 $(starfield_theme_files) -dejavu_10.pf2: $(DJVU_FONT_SOURCE) build-grub-mkfont$(BUILD_EXEEXT) - ./build-grub-mkfont$(BUILD_EXEEXT) -s 10 -o $@ $(DJVU_FONT_SOURCE) -CLEANFILES += dejavu_10.pf2 -dejavu_12.pf2: $(DJVU_FONT_SOURCE) build-grub-mkfont$(BUILD_EXEEXT) - ./build-grub-mkfont$(BUILD_EXEEXT) -s 12 -o $@ $(DJVU_FONT_SOURCE) -CLEANFILES += dejavu_12.pf2 -dejavu_14.pf2: $(DJVU_FONT_SOURCE) build-grub-mkfont$(BUILD_EXEEXT) - ./build-grub-mkfont$(BUILD_EXEEXT) -s 14 -o $@ $(DJVU_FONT_SOURCE) -CLEANFILES += dejavu_14.pf2 -dejavu_bold_14.pf2: $(DJVU_FONT_SOURCE) build-grub-mkfont$(BUILD_EXEEXT) - ./build-grub-mkfont$(BUILD_EXEEXT) -b -s 14 -o $@ $(DJVU_FONT_SOURCE) -CLEANFILES += dejavu_bold_14.pf2 -dejavu_16.pf2: $(DJVU_FONT_SOURCE) build-grub-mkfont$(BUILD_EXEEXT) - ./build-grub-mkfont$(BUILD_EXEEXT) -s 16 -o $@ $(DJVU_FONT_SOURCE) -CLEANFILES += dejavu_16.pf2 -else -starfield_DATA = -endif - -EXTRA_DIST += $(starfield_theme_files) -EXTRA_DIST += $(srcdir)/themes/starfield/src/slider_s.xcf $(srcdir)/themes/starfield/src/slider_n.xcf $(srcdir)/themes/starfield/src/slider_c.xcf $(srcdir)/themes/starfield/src/blob_nw.xcf $(srcdir)/themes/starfield/src/bootmenu/center.xcf $(srcdir)/themes/starfield/src/bootmenu/corner.xcf $(srcdir)/themes/starfield/src/bootmenu/side.xcf $(srcdir)/themes/starfield/src/terminalbox/side.xcf $(srcdir)/themes/starfield/src/terminalbox/corner.xcf $(srcdir)/themes/starfield/src/terminalbox/center.xcf - -unicode.pf2: $(FONT_SOURCE) build-grub-mkfont$(BUILD_EXEEXT) - ./build-grub-mkfont$(BUILD_EXEEXT) -o $@ $(FONT_SOURCE) || (rm -f $@; exit 1) -CLEANFILES += unicode.pf2 - -# Arrows and lines are needed to draw the menu, so always include them -UNICODE_ARROWS=0x2190-0x2193 -UNICODE_LINES=0x2501-0x251B - -ascii.pf2: $(FONT_SOURCE) build-grub-mkfont$(BUILD_EXEEXT) - ./build-grub-mkfont$(BUILD_EXEEXT) -o $@ $(FONT_SOURCE) -r 0x0-0x7f,$(UNICODE_ARROWS),$(UNICODE_LINES) || (rm -f $@; exit 1) -CLEANFILES += ascii.pf2 - -euro.pf2: $(FONT_SOURCE) build-grub-mkfont$(BUILD_EXEEXT) - ./build-grub-mkfont$(BUILD_EXEEXT) -o $@ $(FONT_SOURCE) -r 0x0-0x4ff,0x1e00-0x1fff,$(UNICODE_ARROWS),$(UNICODE_LINES) || (rm -f $@; exit 1) -CLEANFILES += euro.pf2 - -ascii.h: $(FONT_SOURCE) build-grub-gen-asciih$(BUILD_EXEEXT) - ./build-grub-gen-asciih$(BUILD_EXEEXT) $(FONT_SOURCE) $@ || (rm -f $@; exit 1) -CLEANFILES += ascii.h - -widthspec.h: $(FONT_SOURCE) build-grub-gen-widthspec$(BUILD_EXEEXT) - ./build-grub-gen-widthspec$(BUILD_EXEEXT) $(FONT_SOURCE) $@ || (rm -f $@; exit 1) -CLEANFILES += widthspec.h - -# Install config.h into platformdir -nodist_platform_HEADERS = config.h - -pkgdata_DATA += grub-mkconfig_lib - - -if COND_real_platform - -if COND_i386_coreboot -QEMU32=qemu-system-i386 -MINIMUM_CPU_LINUX=pentium2 -endif - -if COND_i386_multiboot -QEMU32=qemu-system-i386 -MINIMUM_CPU_LINUX=pentium2 -endif - -if COND_i386_ieee1275 -QEMU32=qemu-system-i386 -MINIMUM_CPU_LINUX=pentium2 -endif - -if COND_i386_qemu -QEMU32=qemu-system-i386 -MINIMUM_CPU_LINUX=pentium2 -endif - -if COND_i386_pc -QEMU32=qemu-system-i386 -MINIMUM_CPU_LINUX=pentium2 -endif - -if COND_i386_efi -QEMU32=qemu-system-i386 -MINIMUM_CPU_LINUX=pentium2 -endif - -if COND_x86_64_efi -QEMU32=qemu-system-x86_64 -MINIMUM_CPU_LINUX=core2duo -endif - -linux.init.x86_64: $(srcdir)/grub-core/tests/boot/linux.init-x86_64.S $(srcdir)/grub-core/tests/boot/qemu-shutdown-x86.S - $(TARGET_CC) -o $@ $< -static -m64 -nostdlib -nostdinc -DSUCCESSFUL_BOOT_STRING=\"$(SUCCESSFUL_BOOT_STRING)\" - -linux.init.i386: $(srcdir)/grub-core/tests/boot/linux.init-i386.S $(srcdir)/grub-core/tests/boot/qemu-shutdown-x86.S - $(TARGET_CC) -o $@ $< -static -m32 -nostdlib -nostdinc -DSUCCESSFUL_BOOT_STRING=\"$(SUCCESSFUL_BOOT_STRING)\" - -linux.init.mips: $(srcdir)/grub-core/tests/boot/linux.init-mips.S - $(TARGET_CC) -o $@ $< -static -nostdlib -nostdinc -DSUCCESSFUL_BOOT_STRING=\"$(SUCCESSFUL_BOOT_STRING)\" - -linux.init.ppc: $(srcdir)/grub-core/tests/boot/linux.init-ppc.S - $(TARGET_CC) -o $@ $< -static -nostdlib -nostdinc -DSUCCESSFUL_BOOT_STRING=\"$(SUCCESSFUL_BOOT_STRING)\" - -linux.init.mipsel: $(srcdir)/grub-core/tests/boot/linux.init-mips.S - $(TARGET_CC) -o $@ $< -static -nostdlib -nostdinc -DSUCCESSFUL_BOOT_STRING=\"$(SUCCESSFUL_BOOT_STRING)\" - -linux.init.loongson: $(srcdir)/grub-core/tests/boot/linux.init-mips.S - $(TARGET_CC) -o $@ $< -static -nostdlib -nostdinc -DSUCCESSFUL_BOOT_STRING=\"$(SUCCESSFUL_BOOT_STRING)\" -DREBOOT=1 - -multiboot.elf: $(srcdir)/grub-core/tests/boot/kernel-i386.S $(srcdir)/grub-core/tests/boot/qemu-shutdown-x86.S - $(TARGET_CC) -o $@ $< -DSUCCESSFUL_BOOT_STRING=\"$(SUCCESSFUL_BOOT_STRING)\" -static -ffreestanding -nostdlib -nostdinc -DTARGET_MULTIBOOT=1 -Wl,--build-id=none -Wl,-N -Wl,-Ttext,0x100000 -m32 -I$(srcdir)/include - -kfreebsd.elf: $(srcdir)/grub-core/tests/boot/kernel-i386.S $(srcdir)/grub-core/tests/boot/qemu-shutdown-x86.S - $(TARGET_CC) -o $@ $< -DSUCCESSFUL_BOOT_STRING=\"$(SUCCESSFUL_BOOT_STRING)\" -static -ffreestanding -nostdlib -nostdinc -Wl,--build-id=none -Wl,-N -Wl,-Ttext,0x100000 -m32 -I$(srcdir)/include - -kfreebsd.aout: kfreebsd.elf - $(TARGET_OBJCOPY) -O a.out-i386-linux $< $@ -j .text - -pc-chainloader.elf: $(srcdir)/grub-core/tests/boot/kernel-8086.S $(srcdir)/grub-core/tests/boot/qemu-shutdown-x86.S - $(TARGET_CC) -o $@ $< -static -DTARGET_CHAINLOADER=1 -DSUCCESSFUL_BOOT_STRING=\"$(SUCCESSFUL_BOOT_STRING)\" -ffreestanding -nostdlib -nostdinc -Wl,--build-id=none -Wl,-N -Wl,-Ttext,0x7c00 -m32 - -pc-chainloader.bin: pc-chainloader.elf - $(TARGET_OBJCOPY) -O binary --strip-unneeded -R .note -R .comment -R .note.gnu.build-id -R .reginfo -R .rel.dyn -R .note.gnu.gold-version $< $@; - -ntldr.elf: $(srcdir)/grub-core/tests/boot/kernel-8086.S $(srcdir)/grub-core/tests/boot/qemu-shutdown-x86.S - $(TARGET_CC) -o $@ $< -DTARGET_NTLDR=1 -DSUCCESSFUL_BOOT_STRING=\"$(SUCCESSFUL_BOOT_STRING)\" -static -ffreestanding -nostdlib -nostdinc -Wl,--build-id=none -Wl,-N -Wl,-Ttext,0 -m32 - -ntldr.bin: ntldr.elf - $(TARGET_OBJCOPY) -O binary --strip-unneeded -j .text $< $@; - -multiboot2.elf: $(srcdir)/grub-core/tests/boot/kernel-i386.S $(srcdir)/grub-core/tests/boot/qemu-shutdown-x86.S - $(TARGET_CC) -static -o $@ $< -DSUCCESSFUL_BOOT_STRING=\"$(SUCCESSFUL_BOOT_STRING)\" -ffreestanding -nostdlib -nostdinc -Wl,--build-id=none -Wl,-N -Wl,-Ttext,0x100000 -m32 -I$(srcdir)/include -DTARGET_MULTIBOOT2=1 - -kfreebsd.init.x86_64: $(srcdir)/grub-core/tests/boot/kfreebsd.init-x86_64.S $(srcdir)/grub-core/tests/boot/qemu-shutdown-x86.S - $(TARGET_CC) -o $@ $< -m64 -static -nostdlib -nostdinc -DSUCCESSFUL_BOOT_STRING=\"$(SUCCESSFUL_BOOT_STRING)\" && freebsd-brandelf -t FreeBSD $@ - -kfreebsd.init.i386: $(srcdir)/grub-core/tests/boot/kfreebsd.init-i386.S $(srcdir)/grub-core/tests/boot/qemu-shutdown-x86.S - $(TARGET_CC) -o $@ $< -m32 -static -nostdlib -nostdinc -DSUCCESSFUL_BOOT_STRING=\"$(SUCCESSFUL_BOOT_STRING)\" && freebsd-brandelf -t FreeBSD $@ - -knetbsd.init.i386: $(srcdir)/grub-core/tests/boot/kbsd.init-i386.S $(srcdir)/grub-core/tests/boot/qemu-shutdown-x86.S - $(TARGET_CC) -o $@ $< -m32 -static -nostdlib -nostdinc -DTARGET_NETBSD=1 -DSUCCESSFUL_BOOT_STRING=\"$(SUCCESSFUL_BOOT_STRING)\" - -kopenbsd.init.i386: $(srcdir)/grub-core/tests/boot/kbsd.init-i386.S $(srcdir)/grub-core/tests/boot/qemu-shutdown-x86.S - $(TARGET_CC) -o $@ $< -m32 -static -nostdlib -nostdinc -DTARGET_OPENBSD=1 -DSUCCESSFUL_BOOT_STRING=\"$(SUCCESSFUL_BOOT_STRING)\" - -knetbsd.init.x86_64: $(srcdir)/grub-core/tests/boot/kbsd.init-x86_64.S $(srcdir)/grub-core/tests/boot/qemu-shutdown-x86.S - $(TARGET_CC) -o $@ $< -m64 -DTARGET_NETBSD=1 -static -nostdlib -nostdinc -DSUCCESSFUL_BOOT_STRING=\"$(SUCCESSFUL_BOOT_STRING)\" - -kopenbsd.init.x86_64: $(srcdir)/grub-core/tests/boot/kbsd.init-x86_64.S $(srcdir)/grub-core/tests/boot/qemu-shutdown-x86.S - $(TARGET_CC) -o $@ $< -m64 -DTARGET_OPENBSD=1 -static -nostdlib -nostdinc -DSUCCESSFUL_BOOT_STRING=\"$(SUCCESSFUL_BOOT_STRING)\" - -linux-initramfs.mips: linux.init.mips Makefile - TDIR=`mktemp -d "$${TMPDIR:-/tmp}/tmp.XXXXXXXXXX"` && cp $< $$TDIR/init && (cd $$TDIR && echo ./init | cpio -R 0:0 --quiet --dereference -o -H newc) | gzip > $@ && rm -rf $$TDIR - -linux-initramfs.ppc: linux.init.ppc Makefile - TDIR=`mktemp -d "$${TMPDIR:-/tmp}/tmp.XXXXXXXXXX"` && cp $< $$TDIR/init && (cd $$TDIR && echo ./init | cpio -R 0:0 --quiet --dereference -o -H newc) | gzip > $@ && rm -rf $$TDIR - -linux-initramfs.mipsel: linux.init.mipsel Makefile - TDIR=`mktemp -d "$${TMPDIR:-/tmp}/tmp.XXXXXXXXXX"` && cp $< $$TDIR/init && (cd $$TDIR && echo ./init | cpio -R 0:0 --quiet --dereference -o -H newc) | gzip > $@ && rm -rf $$TDIR - -linux-initramfs.loongson: linux.init.loongson Makefile - TDIR=`mktemp -d "$${TMPDIR:-/tmp}/tmp.XXXXXXXXXX"` && cp $< $$TDIR/init && (cd $$TDIR && echo ./init | cpio -R 0:0 --quiet --dereference -o -H newc) | gzip > $@ && rm -rf $$TDIR - -linux-initramfs.i386: linux.init.i386 Makefile - TDIR=`mktemp -d "$${TMPDIR:-/tmp}/tmp.XXXXXXXXXX"` && cp $< $$TDIR/init && (cd $$TDIR && echo ./init | cpio -R 0:0 --quiet --dereference -o -H newc) | gzip > $@ && rm -rf $$TDIR - -linux-initramfs.x86_64: linux.init.x86_64 Makefile - TDIR=`mktemp -d "$${TMPDIR:-/tmp}/tmp.XXXXXXXXXX"` && cp $< $$TDIR/init && (cd $$TDIR && echo ./init | cpio -R 0:0 --quiet --dereference -o -H newc) | gzip > $@ && rm -rf $$TDIR - -kfreebsd-mfsroot.i386.img: kfreebsd.init.i386 Makefile - TDIR=`mktemp -d "$${TMPDIR:-/tmp}/tmp.XXXXXXXXXX"` && mkdir $$TDIR/dev && mkdir $$TDIR/sbin && cp $< $$TDIR/sbin/init && makefs -t ffs -s 30m -f 1000 -o minfree=0,version=1 $@ $$TDIR && rm -rf $$TDIR - -knetbsd.image.i386: knetbsd.init.i386 $(srcdir)/grub-core/tests/boot/kbsd.spec.txt - TDIR=`mktemp -d "$${TMPDIR:-/tmp}/tmp.XXXXXXXXXX"` && mkdir $$TDIR/dev && mkdir $$TDIR/sbin && cp $< $$TDIR/sbin/init && makefs -F $(srcdir)/grub-core/tests/boot/kbsd.spec.txt -t ffs -s 64k -f 10 -o minfree=0,version=1 $@ $$TDIR && rm -rf $$TDIR - -kopenbsd.image.i386: kopenbsd.init.i386 $(srcdir)/grub-core/tests/boot/kopenbsdlabel.txt - TDIR=`mktemp -d "$${TMPDIR:-/tmp}/tmp.XXXXXXXXXX"` && mkdir $$TDIR/dev && mkdir $$TDIR/sbin && cp $< $$TDIR/sbin/init && makefs -F $(srcdir)/grub-core/tests/boot/kbsd.spec.txt -t ffs -s 128k -f 10 -o minfree=0,version=1 $@ $$TDIR && bsdlabel -f -R $@ $(srcdir)/grub-core/tests/boot/kopenbsdlabel.txt && rm -rf $$TDIR || rm -f $@ - -kopenbsd.image.x86_64: kopenbsd.init.x86_64 $(srcdir)/grub-core/tests/boot/kopenbsdlabel.txt - TDIR=`mktemp -d "$${TMPDIR:-/tmp}/tmp.XXXXXXXXXX"` && mkdir $$TDIR/dev && mkdir $$TDIR/sbin && cp $< $$TDIR/sbin/init && makefs -F $(srcdir)/grub-core/tests/boot/kbsd.spec.txt -t ffs -s 128k -f 10 -o minfree=0,version=1 $@ $$TDIR && bsdlabel -f -R $@ $(srcdir)/grub-core/tests/boot/kopenbsdlabel.txt && rm -rf $$TDIR || rm -f $@ - -knetbsd.miniroot-image.i386.img: knetbsd.image.i386 $(GRUB_PAYLOADS_DIR)/knetbsd.miniroot.i386 - $(TARGET_OBJCOPY) --add-section=miniroot=$< $(GRUB_PAYLOADS_DIR)/knetbsd.miniroot.i386 $@ - -kfreebsd-mfsroot.x86_64.img: kfreebsd.init.x86_64 Makefile - TDIR=`mktemp -d "$${TMPDIR:-/tmp}/tmp.XXXXXXXXXX"` && mkdir $$TDIR/dev && mkdir $$TDIR/sbin && cp $< $$TDIR/sbin/init && makefs -t ffs -s 30m -f 1000 -o minfree=0,version=1 $@ $$TDIR && rm -rf $$TDIR - -knetbsd.image.x86_64: knetbsd.init.x86_64 $(srcdir)/grub-core/tests/boot/kbsd.spec.txt - TDIR=`mktemp -d "$${TMPDIR:-/tmp}/tmp.XXXXXXXXXX"` && mkdir $$TDIR/dev && mkdir $$TDIR/sbin && cp $< $$TDIR/sbin/init && makefs -F $(srcdir)/grub-core/tests/boot/kbsd.spec.txt -t ffs -s 64k -f 10 -o minfree=0,version=1 $@ $$TDIR && rm -rf $$TDIR - -knetbsd.miniroot-image.x86_64.img: knetbsd.image.x86_64 $(GRUB_PAYLOADS_DIR)/knetbsd.miniroot.x86_64 - $(TARGET_OBJCOPY) --add-section=miniroot=$< $(GRUB_PAYLOADS_DIR)/knetbsd.miniroot.x86_64 $@ - -CLEANFILES += linux.init.i386 kfreebsd.init.i386 linux.init.x86_64 linux-initramfs.i386 linux-initramfs.x86_64 - -kfreebsd-mfsroot.i386.gz: kfreebsd-mfsroot.i386.img - gzip < $< > $@ - -bootcheck-kfreebsd-i386: kfreebsd-mfsroot.i386.gz $(GRUB_PAYLOADS_DIR)/kfreebsd.i386 $(GRUB_PAYLOADS_DIR)/kfreebsd_env.i386 $(srcdir)/grub-core/tests/boot/kfreebsd.cfg grub-shell - ./grub-shell --timeout=$(BOOTCHECK_TIMEOUT) --qemu=$(QEMU32) --files=/mfsroot.gz=kfreebsd-mfsroot.i386.gz --files=/kfreebsd=$(GRUB_PAYLOADS_DIR)/kfreebsd.i386 --files=/kfreebsd_env=$(GRUB_PAYLOADS_DIR)/kfreebsd_env.i386 $(srcdir)/grub-core/tests/boot/kfreebsd.cfg | grep $(SUCCESSFUL_BOOT_STRING) > /dev/null - -kfreebsd-mfsroot.x86_64.gz: kfreebsd-mfsroot.x86_64.img - gzip < $< > $@ - -bootcheck-kfreebsd-x86_64: kfreebsd-mfsroot.x86_64.gz $(GRUB_PAYLOADS_DIR)/kfreebsd.x86_64 $(GRUB_PAYLOADS_DIR)/kfreebsd_env.x86_64 $(srcdir)/grub-core/tests/boot/kfreebsd.cfg grub-shell - ./grub-shell --timeout=$(BOOTCHECK_TIMEOUT) --qemu=qemu-system-x86_64 --files=/mfsroot.gz=kfreebsd-mfsroot.x86_64.gz --files=/kfreebsd=$(GRUB_PAYLOADS_DIR)/kfreebsd.x86_64 --files=/kfreebsd_env=$(GRUB_PAYLOADS_DIR)/kfreebsd_env.x86_64 $(srcdir)/grub-core/tests/boot/kfreebsd.cfg | grep $(SUCCESSFUL_BOOT_STRING) > /dev/null - -knetbsd.miniroot-image.i386.gz: knetbsd.miniroot-image.i386.img - gzip < $< > $@ - -bootcheck-knetbsd-i386: knetbsd.miniroot-image.i386.gz $(GRUB_PAYLOADS_DIR)/knetbsd.i386 $(srcdir)/grub-core/tests/boot/knetbsd.cfg grub-shell - ./grub-shell --timeout=$(BOOTCHECK_TIMEOUT) --qemu=$(QEMU32) --files=/miniroot.gz=knetbsd.miniroot-image.i386.gz --files=/knetbsd=$(GRUB_PAYLOADS_DIR)/knetbsd.i386 $(srcdir)/grub-core/tests/boot/knetbsd.cfg | grep $(SUCCESSFUL_BOOT_STRING) > /dev/null - -bootcheck-kopenbsd-i386: kopenbsd.image.i386 $(GRUB_PAYLOADS_DIR)/kopenbsd.i386 $(srcdir)/grub-core/tests/boot/kopenbsd.cfg grub-shell - ./grub-shell --timeout=$(BOOTCHECK_TIMEOUT) --qemu=$(QEMU32) --files=/ramdisk=kopenbsd.image.i386 --files=/kopenbsd=$(GRUB_PAYLOADS_DIR)/kopenbsd.i386 $(srcdir)/grub-core/tests/boot/kopenbsd.cfg | grep $(SUCCESSFUL_BOOT_STRING) > /dev/null - -bootcheck-kopenbsd-x86_64: kopenbsd.image.x86_64 $(GRUB_PAYLOADS_DIR)/kopenbsd.x86_64 $(srcdir)/grub-core/tests/boot/kopenbsd.cfg grub-shell - ./grub-shell --timeout=$(BOOTCHECK_TIMEOUT) --qemu=qemu-system-x86_64 --files=/ramdisk=kopenbsd.image.x86_64 --files=/kopenbsd=$(GRUB_PAYLOADS_DIR)/kopenbsd.x86_64 $(srcdir)/grub-core/tests/boot/kopenbsd.cfg | grep $(SUCCESSFUL_BOOT_STRING) > /dev/null - -knetbsd.miniroot-image.x86_64.gz: knetbsd.miniroot-image.x86_64.img - gzip < $< > $@ - -bootcheck-knetbsd-x86_64: knetbsd.miniroot-image.x86_64.gz $(GRUB_PAYLOADS_DIR)/knetbsd.x86_64 $(srcdir)/grub-core/tests/boot/knetbsd.cfg grub-shell - ./grub-shell --timeout=$(BOOTCHECK_TIMEOUT) --qemu=qemu-system-x86_64 --files=/miniroot.gz=knetbsd.miniroot-image.x86_64.gz --files=/knetbsd=$(GRUB_PAYLOADS_DIR)/knetbsd.x86_64 $(srcdir)/grub-core/tests/boot/knetbsd.cfg | grep $(SUCCESSFUL_BOOT_STRING) > /dev/null - -bootcheck-linux-i386: linux-initramfs.i386 $(GRUB_PAYLOADS_DIR)/linux.i386 $(srcdir)/grub-core/tests/boot/linux.cfg grub-shell - ./grub-shell --timeout=$(BOOTCHECK_TIMEOUT) --qemu=$(QEMU32) --files=/initrd=linux-initramfs.i386 --files=/linux=$(GRUB_PAYLOADS_DIR)/linux.i386 $(srcdir)/grub-core/tests/boot/linux.cfg --qemu-opts="-cpu $(MINIMUM_CPU_LINUX)" | grep $(SUCCESSFUL_BOOT_STRING) > /dev/null - -bootcheck-linux-x86_64: linux-initramfs.x86_64 $(GRUB_PAYLOADS_DIR)/linux.x86_64 $(srcdir)/grub-core/tests/boot/linux.cfg grub-shell - ./grub-shell --timeout=$(BOOTCHECK_TIMEOUT) --qemu=qemu-system-x86_64 --files=/initrd=linux-initramfs.x86_64 --files=/linux=$(GRUB_PAYLOADS_DIR)/linux.x86_64 $(srcdir)/grub-core/tests/boot/linux.cfg | grep $(SUCCESSFUL_BOOT_STRING) > /dev/null - -bootcheck-linux-mips: linux-initramfs.mips $(GRUB_PAYLOADS_DIR)/linux.mips $(srcdir)/grub-core/tests/boot/linux.cfg grub-shell - ./grub-shell --timeout=$(BOOTCHECK_TIMEOUT) --files=/initrd=linux-initramfs.mips --files=/linux=$(GRUB_PAYLOADS_DIR)/linux.mips $(srcdir)/grub-core/tests/boot/linux.cfg | grep $(SUCCESSFUL_BOOT_STRING) > /dev/null - -bootcheck-linux-ppc: linux-initramfs.ppc $(GRUB_PAYLOADS_DIR)/linux.ppc $(srcdir)/grub-core/tests/boot/linux.cfg grub-shell - ./grub-shell --timeout=$(BOOTCHECK_TIMEOUT) --files=/initrd=linux-initramfs.ppc --files=/linux=$(GRUB_PAYLOADS_DIR)/linux.ppc $(srcdir)/grub-core/tests/boot/linux-ppc.cfg | grep $(SUCCESSFUL_BOOT_STRING) > /dev/null - -bootcheck-linux-mipsel: linux-initramfs.mipsel $(GRUB_PAYLOADS_DIR)/linux.mipsel $(srcdir)/grub-core/tests/boot/linux.cfg grub-shell - ./grub-shell --timeout=$(BOOTCHECK_TIMEOUT) --files=/initrd=linux-initramfs.mipsel --files=/linux=$(GRUB_PAYLOADS_DIR)/linux.mipsel $(srcdir)/grub-core/tests/boot/linux.cfg | grep $(SUCCESSFUL_BOOT_STRING) > /dev/null - -bootcheck-linux-loongson: linux-initramfs.loongson $(GRUB_PAYLOADS_DIR)/linux.loongson $(srcdir)/grub-core/tests/boot/linux.cfg grub-shell - ./grub-shell --timeout=$(BOOTCHECK_TIMEOUT) --files=/initrd=linux-initramfs.loongson --files=/linux=$(GRUB_PAYLOADS_DIR)/linux.loongson $(srcdir)/grub-core/tests/boot/linux.cfg | grep $(SUCCESSFUL_BOOT_STRING) > /dev/null - -bootcheck-linux16-i386: linux-initramfs.i386 $(GRUB_PAYLOADS_DIR)/linux.i386 $(srcdir)/grub-core/tests/boot/linux.cfg grub-shell - ./grub-shell --timeout=$(BOOTCHECK_TIMEOUT) --qemu=$(QEMU32) --files=/initrd=linux-initramfs.i386 --files=/linux=$(GRUB_PAYLOADS_DIR)/linux.i386 $(srcdir)/grub-core/tests/boot/linux16.cfg | grep $(SUCCESSFUL_BOOT_STRING) > /dev/null - -bootcheck-linux16-x86_64: linux-initramfs.x86_64 $(GRUB_PAYLOADS_DIR)/linux.x86_64 $(srcdir)/grub-core/tests/boot/linux.cfg grub-shell - ./grub-shell --timeout=$(BOOTCHECK_TIMEOUT) --qemu=qemu-system-x86_64 --files=/initrd=linux-initramfs.x86_64 --files=/linux=$(GRUB_PAYLOADS_DIR)/linux.x86_64 $(srcdir)/grub-core/tests/boot/linux16.cfg | grep $(SUCCESSFUL_BOOT_STRING) > /dev/null - -bootcheck-multiboot: multiboot.elf $(srcdir)/grub-core/tests/boot/multiboot.cfg grub-shell - ./grub-shell --timeout=$(BOOTCHECK_TIMEOUT) --qemu=$(QEMU32) --files=/multiboot.elf=multiboot.elf $(srcdir)/grub-core/tests/boot/multiboot.cfg | grep $(SUCCESSFUL_BOOT_STRING) > /dev/null - -bootcheck-multiboot2: multiboot2.elf $(srcdir)/grub-core/tests/boot/multiboot2.cfg grub-shell - ./grub-shell --timeout=$(BOOTCHECK_TIMEOUT) --qemu=$(QEMU32) --files=/multiboot2.elf=multiboot2.elf $(srcdir)/grub-core/tests/boot/multiboot2.cfg | grep $(SUCCESSFUL_BOOT_STRING) > /dev/null - -bootcheck-kfreebsd-aout: kfreebsd.aout $(srcdir)/grub-core/tests/boot/kfreebsd-aout.cfg grub-shell - ./grub-shell --timeout=$(BOOTCHECK_TIMEOUT) --qemu=$(QEMU32) --files=/kfreebsd.aout=kfreebsd.aout $(srcdir)/grub-core/tests/boot/kfreebsd-aout.cfg | grep $(SUCCESSFUL_BOOT_STRING) > /dev/null - -bootcheck-pc-chainloader: pc-chainloader.bin $(srcdir)/grub-core/tests/boot/pc-chainloader.cfg grub-shell - ./grub-shell --timeout=$(BOOTCHECK_TIMEOUT) --qemu=$(QEMU32) --files=/pc-chainloader.bin=pc-chainloader.bin $(srcdir)/grub-core/tests/boot/pc-chainloader.cfg | grep $(SUCCESSFUL_BOOT_STRING) > /dev/null - -bootcheck-ntldr: ntldr.bin $(srcdir)/grub-core/tests/boot/ntldr.cfg grub-shell - ./grub-shell --timeout=$(BOOTCHECK_TIMEOUT) --qemu=$(QEMU32) --files=/ntldr.bin=ntldr.bin $(srcdir)/grub-core/tests/boot/ntldr.cfg | grep $(SUCCESSFUL_BOOT_STRING) > /dev/null - -if COND_i386_efi -# NetBSD has no support for finding ACPI on EFI -BOOTCHECKS = bootcheck-kfreebsd-aout bootcheck-kopenbsd-i386 bootcheck-kopenbsd-x86_64 bootcheck-multiboot bootcheck-multiboot2 bootcheck-linux-i386 bootcheck-linux-x86_64 bootcheck-kfreebsd-x86_64 bootcheck-kfreebsd-i386 -endif - -if COND_x86_64_efi -# NetBSD has no support for finding ACPI on EFI -BOOTCHECKS = bootcheck-kfreebsd-aout bootcheck-kopenbsd-i386 bootcheck-kopenbsd-x86_64 bootcheck-multiboot bootcheck-multiboot2 bootcheck-linux-i386 bootcheck-linux-x86_64 bootcheck-kfreebsd-x86_64 bootcheck-kfreebsd-i386 -endif - -if COND_i386_multiboot -# *BSD requires ACPI -BOOTCHECKS = bootcheck-kfreebsd-aout bootcheck-multiboot bootcheck-multiboot2 bootcheck-linux-i386 bootcheck-linux-x86_64 -endif - - -if COND_i386_qemu -# *BSD requires ACPI -BOOTCHECKS = bootcheck-kfreebsd-aout bootcheck-multiboot bootcheck-multiboot2 bootcheck-linux-i386 bootcheck-linux-x86_64 -endif - -if COND_i386_coreboot -BOOTCHECKS = bootcheck-kfreebsd-aout bootcheck-kopenbsd-i386 bootcheck-kopenbsd-x86_64 bootcheck-multiboot bootcheck-multiboot2 bootcheck-linux-i386 bootcheck-linux-x86_64 bootcheck-knetbsd-x86_64 bootcheck-kfreebsd-x86_64 bootcheck-kfreebsd-i386 -endif - -if COND_i386_ieee1275 -# *BSD requires ACPI -#legacy protocol (linux16) makes early BIOS calls. -BOOTCHECKS = bootcheck-kfreebsd-aout bootcheck-multiboot bootcheck-multiboot2 bootcheck-linux-i386 bootcheck-linux-x86_64 -endif - -if COND_i386_pc -#pc chainloader by definition is only for i386-pc -#ntldr and bootmgr require BIOS. -#legacy protocol (linux16) makes early BIOS calls. -# 32-bit NetBSD crashes early on non-BIOS -BOOTCHECKS = bootcheck-kfreebsd-aout bootcheck-kopenbsd-i386 bootcheck-kopenbsd-x86_64 bootcheck-multiboot bootcheck-multiboot2 bootcheck-linux-i386 bootcheck-linux-x86_64 bootcheck-knetbsd-x86_64 bootcheck-kfreebsd-x86_64 bootcheck-kfreebsd-i386 bootcheck-pc-chainloader bootcheck-ntldr bootcheck-linux16-i386 bootcheck-linux16-x86_64 bootcheck-knetbsd-i386 -endif - -if COND_mips_loongson -BOOTCHECKS = bootcheck-linux-loongson -endif - -if COND_mipsel -if COND_mips_qemu_mips -BOOTCHECKS = bootcheck-linux-mipsel -endif -endif -if COND_mipseb -if COND_mips_qemu_mips -BOOTCHECKS = bootcheck-linux-mips -endif -endif - -if COND_powerpc_ieee1275 -BOOTCHECKS = bootcheck-linux-ppc -endif - -.PHONY: bootcheck-linux-i386 bootcheck-linux-x86_64 \ - bootcheck-kfreebsd-i386 bootcheck-kfreebsd-x86_64 \ - bootcheck-knetbsd-i386 bootcheck-knetbsd-x86_64 \ - bootcheck-linux-mips FORCE - -# Randomly generated -SUCCESSFUL_BOOT_STRING=3e49994fd5d82b7c9298d672d774080d -# tianocore cd access is very slow -BOOTCHECK_TIMEOUT=180 - -bootcheck: $(BOOTCHECKS) - -if COND_i386_coreboot -FS_PAYLOAD_MODULES ?= $(shell cat grub-core/fs.lst) -default_payload.elf: grub-mkstandalone grub-mkimage FORCE - test -f $@ && rm $@ || true - pkgdatadir=. ./grub-mkstandalone --grub-mkimage=./grub-mkimage -O i386-coreboot -o $@ --modules='ahci pata ehci uhci ohci usb_keyboard usbms part_msdos ext2 fat at_keyboard part_gpt usbserial_usbdebug cbfs' --install-modules='ls linux search configfile normal cbtime cbls memrw iorw minicmd lsmmap lspci halt reboot hexdump pcidump regexp setpci lsacpi chain test serial multiboot cbmemc linux16 gzio echo help syslinuxcfg xnu $(FS_PAYLOAD_MODULES) password_pbkdf2 $(EXTRA_PAYLOAD_MODULES)' --fonts= --themes= --locales= -d grub-core/ /boot/grub/grub.cfg=$(srcdir)/coreboot.cfg -endif - -endif - -EXTRA_DIST += grub-core/tests/boot/kbsd.init-i386.S grub-core/tests/boot/kbsd.init-x86_64.S grub-core/tests/boot/kbsd.spec.txt grub-core/tests/boot/kernel-8086.S grub-core/tests/boot/kernel-i386.S grub-core/tests/boot/kfreebsd-aout.cfg grub-core/tests/boot/kfreebsd.cfg grub-core/tests/boot/kfreebsd.init-i386.S grub-core/tests/boot/kfreebsd.init-x86_64.S grub-core/tests/boot/knetbsd.cfg grub-core/tests/boot/kopenbsd.cfg grub-core/tests/boot/kopenbsdlabel.txt grub-core/tests/boot/linux16.cfg grub-core/tests/boot/linux.cfg grub-core/tests/boot/linux.init-i386.S grub-core/tests/boot/linux.init-mips.S grub-core/tests/boot/linux.init-ppc.S grub-core/tests/boot/linux.init-x86_64.S grub-core/tests/boot/linux-ppc.cfg grub-core/tests/boot/multiboot2.cfg grub-core/tests/boot/multiboot.cfg grub-core/tests/boot/ntldr.cfg grub-core/tests/boot/pc-chainloader.cfg grub-core/tests/boot/qemu-shutdown-x86.S - -windowsdir=$(top_builddir)/$(PACKAGE)-$(VERSION)-for-windows -windowsdir: $(PROGRAMS) $(starfield_DATA) $(platform_DATA) - test -d $(windowsdir) && rm -rf $(windowsdir) || true - test -d $(windowsdir) || mkdir $(windowsdir) - $(MAKE) -C po $(AM_MAKEFLAGS) windowsdir - $(MAKE) -C grub-core $(AM_MAKEFLAGS) windowsdir - test -d $(windowsdir)/themes || mkdir $(windowsdir)/themes - test -d $(windowsdir)/themes/starfield || mkdir $(windowsdir)/themes/starfield - for x in $(PROGRAMS); do \ - if [ x$(STRIP) != x ]; then $(STRIP) $$x -o $(windowsdir)/$$x; \ - else cp -fp $$x $(windowsdir)/$$x; fi; \ - done - for x in $(pkgdata_DATA); do \ - cp -fp $$x $(windowsdir)/$$x; \ - done - for x in $(starfield_DATA); do \ - cp -fp $$x $(windowsdir)/themes/starfield/$$(basename $$x); \ - done - for x in $(GRUB_WINDOWS_EXTRA_DIST); do \ - cp -fp $$x $(windowsdir); \ - done - -windowszip=$(top_builddir)/$(PACKAGE)-$(VERSION)-for-windows.zip -windowszip: windowsdir - test -f $(windowszip) && rm $(windowszip) || true - zip -r $(windowszip) $(windowsdir) - rm -rf $(windowsdir) - -EXTRA_DIST += linguas.sh - -changelog_start_date = 2015-01-23 -gitlog_to_changelog = $(top_srcdir)/build-aux/gitlog-to-changelog - -ChangeLog: FORCE - if test -d $(top_srcdir)/.git; then \ - $(gitlog_to_changelog) --srcdir=$(top_srcdir) --since=$(changelog_start_date) > '$@.tmp'; \ - rm -f '$@'; mv '$@.tmp' '$@'; \ - else \ - touch $@; \ - fi - -EXTRA_DIST += ChangeLog ChangeLog-2015 - -syslinux_test: $(top_builddir)/config.status tests/syslinux/ubuntu10.04_grub.cfg - -# Mimic simplify_filename from grub-core/lib/syslinux_parse.c, so that we -# can predict its behaviour in tests. We have to pre-substitute this before -# calling config.status, as config.status offers no reliable way to hook in -# a command between setting ac_abs_top_srcdir and emitting output files. -tests/syslinux/ubuntu10.04_grub.cfg: $(top_builddir)/config.status tests/syslinux/ubuntu10.04_grub.cfg.in - simplified_abs_top_srcdir=`echo "$(abs_top_srcdir)" | sed 's,//,/,g; s,/\./,/,g; :loop; s,/[^/][^/]*/\.\.\(/\|$$\),\1,; t loop'`; \ - sed "s,@simplified_abs_top_srcdir@,$$simplified_abs_top_srcdir,g" $(srcdir)/tests/syslinux/ubuntu10.04_grub.cfg.in | $(top_builddir)/config.status --file=$@:- -CLEANFILES += tests/syslinux/ubuntu10.04_grub.cfg diff --git a/thirdparty/grub-2.04/Makefile.in b/thirdparty/grub-2.04/Makefile.in deleted file mode 100644 index e6a185b1d..000000000 --- a/thirdparty/grub-2.04/Makefile.in +++ /dev/null @@ -1,13373 +0,0 @@ -# Makefile.in generated by automake 1.15 from Makefile.am. -# @configure_input@ - -# Copyright (C) 1994-2014 Free Software Foundation, Inc. - -# This Makefile.in is free software; the Free Software Foundation -# gives unlimited permission to copy and/or distribute it, -# with or without modifications, as long as this notice is preserved. - -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY, to the extent permitted by law; without -# even the implied warranty of MERCHANTABILITY or FITNESS FOR A -# PARTICULAR PURPOSE. - -@SET_MAKE@ - -# -*- makefile -*- - - - - - -VPATH = @srcdir@ -am__is_gnu_make = { \ - if test -z '$(MAKELEVEL)'; then \ - false; \ - elif test -n '$(MAKE_HOST)'; then \ - true; \ - elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \ - true; \ - else \ - false; \ - fi; \ -} -am__make_running_with_option = \ - case $${target_option-} in \ - ?) ;; \ - *) echo "am__make_running_with_option: internal error: invalid" \ - "target option '$${target_option-}' specified" >&2; \ - exit 1;; \ - esac; \ - has_opt=no; \ - sane_makeflags=$$MAKEFLAGS; \ - if $(am__is_gnu_make); then \ - sane_makeflags=$$MFLAGS; \ - else \ - case $$MAKEFLAGS in \ - *\\[\ \ ]*) \ - bs=\\; \ - sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \ - | sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \ - esac; \ - fi; \ - skip_next=no; \ - strip_trailopt () \ - { \ - flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \ - }; \ - for flg in $$sane_makeflags; do \ - test $$skip_next = yes && { skip_next=no; continue; }; \ - case $$flg in \ - *=*|--*) continue;; \ - -*I) strip_trailopt 'I'; skip_next=yes;; \ - -*I?*) strip_trailopt 'I';; \ - -*O) strip_trailopt 'O'; skip_next=yes;; \ - -*O?*) strip_trailopt 'O';; \ - -*l) strip_trailopt 'l'; skip_next=yes;; \ - -*l?*) strip_trailopt 'l';; \ - -[dEDm]) skip_next=yes;; \ - -[JT]) skip_next=yes;; \ - esac; \ - case $$flg in \ - *$$target_option*) has_opt=yes; break;; \ - esac; \ - done; \ - test $$has_opt = yes -am__make_dryrun = (target_option=n; $(am__make_running_with_option)) -am__make_keepgoing = (target_option=k; $(am__make_running_with_option)) -pkgdatadir = $(datadir)/@PACKAGE@ -pkgincludedir = $(includedir)/@PACKAGE@ -pkglibdir = $(libdir)/@PACKAGE@ -pkglibexecdir = $(libexecdir)/@PACKAGE@ -am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd -install_sh_DATA = $(install_sh) -c -m 644 -install_sh_PROGRAM = $(install_sh) -c -install_sh_SCRIPT = $(install_sh) -c -INSTALL_HEADER = $(INSTALL_DATA) -transform = $(program_transform_name) -NORMAL_INSTALL = : -PRE_INSTALL = : -POST_INSTALL = : -NORMAL_UNINSTALL = : -PRE_UNINSTALL = : -POST_UNINSTALL = : -build_triplet = @build@ -host_triplet = @host@ -target_triplet = @target@ -@COND_real_platform_TRUE@am__append_1 = grub-core -@COND_arm64_TRUE@am__append_2 = -mcmodel=large -@COND_powerpc_ieee1275_TRUE@am__append_3 = -mcpu=powerpc -bin_PROGRAMS = grub-mkimage$(EXEEXT) grub-mkrelpath$(EXEEXT) \ - grub-script-check$(EXEEXT) grub-editenv$(EXEEXT) \ - grub-mkpasswd-pbkdf2$(EXEEXT) $(am__EXEEXT_1) \ - grub-fstest$(EXEEXT) $(am__EXEEXT_2) $(am__EXEEXT_3) \ - grub-mklayout$(EXEEXT) $(am__EXEEXT_4) \ - grub-mkstandalone$(EXEEXT) grub-mknetdir$(EXEEXT) \ - grub-menulst2cfg$(EXEEXT) grub-syslinux2cfg$(EXEEXT) \ - grub-glue-efi$(EXEEXT) grub-render-label$(EXEEXT) \ - grub-file$(EXEEXT) -sbin_PROGRAMS = grub-probe$(EXEEXT) grub-bios-setup$(EXEEXT) \ - grub-sparc64-setup$(EXEEXT) grub-ofpathname$(EXEEXT) \ - grub-macbless$(EXEEXT) grub-install$(EXEEXT) -check_PROGRAMS = example_unit_test$(EXEEXT) printf_test$(EXEEXT) \ - date_test$(EXEEXT) $(am__EXEEXT_5) cmp_test$(EXEEXT) -noinst_PROGRAMS = -platform_PROGRAMS = -TESTS = example_unit_test$(EXEEXT) printf_test$(EXEEXT) \ - date_test$(EXEEXT) $(am__EXEEXT_5) cmp_test$(EXEEXT) \ - ext234_test squashfs_test iso9660_test hfsplus_test ntfs_test \ - reiserfs_test fat_test minixfs_test xfs_test f2fs_test \ - nilfs2_test romfs_test exfat_test tar_test udf_test hfs_test \ - jfs_test btrfs_test zfs_test cpio_test example_scripted_test \ - gettext_strings_test pata_test ahci_test uhci_test ohci_test \ - ehci_test example_grub_script_test grub_script_eval \ - grub_script_test grub_script_echo1 \ - grub_script_leading_whitespace grub_script_echo_keywords \ - grub_script_vars1 grub_script_for1 grub_script_while1 \ - grub_script_if grub_script_blanklines \ - grub_script_final_semicolon grub_script_dollar \ - grub_script_comments grub_script_functions grub_script_break \ - grub_script_continue grub_script_shift grub_script_blockarg \ - grub_script_setparams grub_script_return grub_cmd_regexp \ - grub_cmd_date grub_cmd_set_date grub_cmd_sleep \ - grub_script_expansion grub_script_not grub_script_no_commands \ - partmap_test hddboot_test fddboot_test cdboot_test \ - netboot_test pseries_test core_compress_test xzcompress_test \ - gzcompress_test lzocompress_test grub_cmd_echo help_test \ - grub_script_gettext grub_script_escape_comma \ - grub_script_strcmp test_sha512sum test_unset grub_func_test \ - grub_cmd_tr file_filter_test grub_cmd_test syslinux_test -@COND_MAN_PAGES_TRUE@am__append_4 = grub-mkimage.1 grub-mkrelpath.1 \ -@COND_MAN_PAGES_TRUE@ grub-script-check.1 grub-editenv.1 \ -@COND_MAN_PAGES_TRUE@ grub-mkpasswd-pbkdf2.1 -@COND_MAN_PAGES_TRUE@am__append_5 = grub-mkimage.1 -@COND_MAN_PAGES_TRUE@am__append_6 = grub-mkrelpath.1 -@COND_MAN_PAGES_TRUE@am__append_7 = grub-script-check.1 -@COND_MAN_PAGES_TRUE@am__append_8 = grub-editenv.1 -@COND_MAN_PAGES_TRUE@am__append_9 = grub-mkpasswd-pbkdf2.1 -@COND_APPLE_LINKER_TRUE@am__append_10 = grub-macho2img -@COND_APPLE_LINKER_TRUE@@COND_MAN_PAGES_TRUE@am__append_11 = grub-macho2img.1 -@COND_APPLE_LINKER_TRUE@@COND_MAN_PAGES_TRUE@am__append_12 = grub-macho2img.1 -@COND_APPLE_LINKER_TRUE@am__append_13 = -@COND_APPLE_LINKER_TRUE@am__append_14 = $(nodist_grub_macho2img_SOURCES) -@COND_APPLE_LINKER_TRUE@am__append_15 = $(nodist_grub_macho2img_SOURCES) -@COND_MAN_PAGES_TRUE@am__append_16 = grub-fstest.1 -@COND_MAN_PAGES_TRUE@am__append_17 = grub-fstest.1 -@COND_GRUB_MOUNT_TRUE@am__append_18 = grub-mount -@COND_GRUB_MOUNT_TRUE@@COND_MAN_PAGES_TRUE@am__append_19 = grub-mount.1 -@COND_GRUB_MOUNT_TRUE@@COND_MAN_PAGES_TRUE@am__append_20 = grub-mount.1 -@COND_GRUB_MOUNT_TRUE@am__append_21 = -@COND_GRUB_MOUNT_TRUE@am__append_22 = $(nodist_grub_mount_SOURCES) -@COND_GRUB_MOUNT_TRUE@am__append_23 = $(nodist_grub_mount_SOURCES) -@COND_GRUB_MKFONT_TRUE@am__append_24 = grub-mkfont -@COND_GRUB_MKFONT_TRUE@@COND_MAN_PAGES_TRUE@am__append_25 = grub-mkfont.1 -@COND_GRUB_MKFONT_TRUE@@COND_MAN_PAGES_TRUE@am__append_26 = grub-mkfont.1 -@COND_GRUB_MKFONT_TRUE@am__append_27 = -@COND_GRUB_MKFONT_TRUE@am__append_28 = $(nodist_grub_mkfont_SOURCES) -@COND_GRUB_MKFONT_TRUE@am__append_29 = $(nodist_grub_mkfont_SOURCES) -@COND_MAN_PAGES_TRUE@am__append_30 = grub-probe.8 grub-bios-setup.8 \ -@COND_MAN_PAGES_TRUE@ grub-sparc64-setup.8 grub-ofpathname.8 \ -@COND_MAN_PAGES_TRUE@ grub-mklayout.1 grub-macbless.8 -@COND_MAN_PAGES_TRUE@am__append_31 = grub-probe.8 -@COND_MAN_PAGES_TRUE@am__append_32 = grub-bios-setup.8 -@COND_MAN_PAGES_TRUE@am__append_33 = grub-sparc64-setup.8 -@COND_MAN_PAGES_TRUE@am__append_34 = grub-ofpathname.8 -@COND_MAN_PAGES_TRUE@am__append_35 = grub-mklayout.1 -@COND_MAN_PAGES_TRUE@am__append_36 = grub-macbless.8 -@COND_HAVE_EXEC_TRUE@am__append_37 = grub-mkrescue -@COND_HAVE_EXEC_TRUE@@COND_MAN_PAGES_TRUE@am__append_38 = grub-mkrescue.1 -@COND_HAVE_EXEC_TRUE@@COND_MAN_PAGES_TRUE@am__append_39 = grub-mkrescue.1 -@COND_HAVE_EXEC_TRUE@am__append_40 = grub-core/osdep/unix/compress.c grub-core/osdep/basic/compress.c -@COND_HAVE_EXEC_TRUE@am__append_41 = $(nodist_grub_mkrescue_SOURCES) -@COND_HAVE_EXEC_TRUE@am__append_42 = $(nodist_grub_mkrescue_SOURCES) -@COND_MAN_PAGES_TRUE@am__append_43 = grub-mkstandalone.1 \ -@COND_MAN_PAGES_TRUE@ grub-install.8 grub-mknetdir.1 \ -@COND_MAN_PAGES_TRUE@ grub-menulst2cfg.1 grub-syslinux2cfg.1 \ -@COND_MAN_PAGES_TRUE@ grub-glue-efi.1 grub-render-label.1 \ -@COND_MAN_PAGES_TRUE@ grub-file.1 grub-mkconfig.8 \ -@COND_MAN_PAGES_TRUE@ grub-set-default.8 grub-reboot.8 \ -@COND_MAN_PAGES_TRUE@ grub-kbdcomp.1 -@COND_MAN_PAGES_TRUE@am__append_44 = grub-mkstandalone.1 -@COND_MAN_PAGES_TRUE@am__append_45 = grub-install.8 -@COND_MAN_PAGES_TRUE@am__append_46 = grub-mknetdir.1 -@COND_HAVE_CXX_TRUE@am__append_47 = priority_queue_unit_test -@COND_HAVE_CXX_TRUE@am__append_48 = priority_queue_unit_test -@COND_HAVE_CXX_TRUE@am__append_49 = -@COND_HAVE_CXX_TRUE@am__append_50 = $(nodist_priority_queue_unit_test_SOURCES) -@COND_HAVE_CXX_TRUE@am__append_51 = $(nodist_priority_queue_unit_test_SOURCES) -@COND_MAN_PAGES_TRUE@am__append_52 = grub-menulst2cfg.1 -@COND_MAN_PAGES_TRUE@am__append_53 = grub-syslinux2cfg.1 -@COND_MAN_PAGES_TRUE@am__append_54 = grub-glue-efi.1 -@COND_MAN_PAGES_TRUE@am__append_55 = grub-render-label.1 -@COND_MAN_PAGES_TRUE@am__append_56 = grub-file.1 -@COND_HOST_WINDOWS_TRUE@am__append_57 = 10_windows -@COND_HOST_WINDOWS_TRUE@am__append_58 = 10_windows -@COND_HOST_WINDOWS_TRUE@am__append_59 = -@COND_HOST_WINDOWS_TRUE@am__append_60 = util/grub.d/10_windows.in -@COND_HOST_HURD_TRUE@am__append_61 = 10_hurd -@COND_HOST_HURD_TRUE@am__append_62 = 10_hurd -@COND_HOST_HURD_TRUE@am__append_63 = -@COND_HOST_HURD_TRUE@am__append_64 = util/grub.d/10_hurd.in -@COND_HOST_KFREEBSD_TRUE@am__append_65 = 10_kfreebsd -@COND_HOST_KFREEBSD_TRUE@am__append_66 = 10_kfreebsd -@COND_HOST_KFREEBSD_TRUE@am__append_67 = -@COND_HOST_KFREEBSD_TRUE@am__append_68 = util/grub.d/10_kfreebsd.in -@COND_HOST_ILLUMOS_TRUE@am__append_69 = 10_illumos -@COND_HOST_ILLUMOS_TRUE@am__append_70 = 10_illumos -@COND_HOST_ILLUMOS_TRUE@am__append_71 = -@COND_HOST_ILLUMOS_TRUE@am__append_72 = util/grub.d/10_illumos.in -@COND_HOST_NETBSD_TRUE@am__append_73 = 10_netbsd -@COND_HOST_NETBSD_TRUE@am__append_74 = 10_netbsd -@COND_HOST_NETBSD_TRUE@am__append_75 = -@COND_HOST_NETBSD_TRUE@am__append_76 = util/grub.d/10_netbsd.in -@COND_HOST_LINUX_TRUE@am__append_77 = 10_linux -@COND_HOST_LINUX_TRUE@am__append_78 = 10_linux -@COND_HOST_LINUX_TRUE@am__append_79 = -@COND_HOST_LINUX_TRUE@am__append_80 = util/grub.d/10_linux.in -@COND_HOST_XNU_TRUE@am__append_81 = 10_xnu -@COND_HOST_XNU_TRUE@am__append_82 = 10_xnu -@COND_HOST_XNU_TRUE@am__append_83 = -@COND_HOST_XNU_TRUE@am__append_84 = util/grub.d/10_xnu.in -@COND_HOST_LINUX_TRUE@am__append_85 = 20_linux_xen -@COND_HOST_LINUX_TRUE@am__append_86 = 20_linux_xen -@COND_HOST_LINUX_TRUE@am__append_87 = -@COND_HOST_LINUX_TRUE@am__append_88 = util/grub.d/20_linux_xen.in -@COND_MAN_PAGES_TRUE@am__append_89 = grub-mkconfig.8 -@COND_MAN_PAGES_TRUE@am__append_90 = grub-set-default.8 -@COND_MAN_PAGES_TRUE@am__append_91 = grub-reboot.8 -@COND_MAN_PAGES_TRUE@am__append_92 = grub-kbdcomp.1 -@COND_HAVE_FONT_SOURCE_TRUE@am__append_93 = unicode.pf2 ascii.pf2 euro.pf2 ascii.h widthspec.h -@COND_STARFIELD_TRUE@am__append_94 = dejavu_10.pf2 dejavu_12.pf2 \ -@COND_STARFIELD_TRUE@ dejavu_14.pf2 dejavu_bold_14.pf2 \ -@COND_STARFIELD_TRUE@ dejavu_16.pf2 -@COND_real_platform_TRUE@am__append_95 = linux.init.i386 kfreebsd.init.i386 linux.init.x86_64 linux-initramfs.i386 linux-initramfs.x86_64 -subdir = . -ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 -am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \ - $(top_srcdir)/m4/__inline.m4 \ - $(top_srcdir)/m4/absolute-header.m4 $(top_srcdir)/m4/alloca.m4 \ - $(top_srcdir)/m4/argp.m4 $(top_srcdir)/m4/btowc.m4 \ - $(top_srcdir)/m4/builtin-expect.m4 \ - $(top_srcdir)/m4/chdir-long.m4 $(top_srcdir)/m4/close.m4 \ - $(top_srcdir)/m4/codeset.m4 $(top_srcdir)/m4/dirent_h.m4 \ - $(top_srcdir)/m4/dirfd.m4 $(top_srcdir)/m4/dirname.m4 \ - $(top_srcdir)/m4/double-slash-root.m4 $(top_srcdir)/m4/dup2.m4 \ - $(top_srcdir)/m4/eealloc.m4 $(top_srcdir)/m4/errno_h.m4 \ - $(top_srcdir)/m4/error.m4 $(top_srcdir)/m4/exponentd.m4 \ - $(top_srcdir)/m4/extensions.m4 \ - $(top_srcdir)/m4/extern-inline.m4 $(top_srcdir)/m4/fchdir.m4 \ - $(top_srcdir)/m4/fcntl-o.m4 $(top_srcdir)/m4/fcntl.m4 \ - $(top_srcdir)/m4/fcntl_h.m4 $(top_srcdir)/m4/filenamecat.m4 \ - $(top_srcdir)/m4/flexmember.m4 $(top_srcdir)/m4/float_h.m4 \ - $(top_srcdir)/m4/fnmatch.m4 $(top_srcdir)/m4/fnmatch_h.m4 \ - $(top_srcdir)/m4/fstat.m4 $(top_srcdir)/m4/getcwd.m4 \ - $(top_srcdir)/m4/getdelim.m4 $(top_srcdir)/m4/getdtablesize.m4 \ - $(top_srcdir)/m4/getline.m4 $(top_srcdir)/m4/getopt.m4 \ - $(top_srcdir)/m4/getprogname.m4 $(top_srcdir)/m4/gettext.m4 \ - $(top_srcdir)/m4/glibc21.m4 $(top_srcdir)/m4/gnulib-common.m4 \ - $(top_srcdir)/m4/gnulib-comp.m4 \ - $(top_srcdir)/m4/host-cpu-c-abi.m4 $(top_srcdir)/m4/iconv.m4 \ - $(top_srcdir)/m4/include_next.m4 \ - $(top_srcdir)/m4/intlmacosx.m4 $(top_srcdir)/m4/intmax_t.m4 \ - $(top_srcdir)/m4/inttypes_h.m4 $(top_srcdir)/m4/langinfo_h.m4 \ - $(top_srcdir)/m4/largefile.m4 $(top_srcdir)/m4/lib-ld.m4 \ - $(top_srcdir)/m4/lib-link.m4 $(top_srcdir)/m4/lib-prefix.m4 \ - $(top_srcdir)/m4/libunistring-base.m4 \ - $(top_srcdir)/m4/limits-h.m4 $(top_srcdir)/m4/localcharset.m4 \ - $(top_srcdir)/m4/locale-fr.m4 $(top_srcdir)/m4/locale-ja.m4 \ - $(top_srcdir)/m4/locale-zh.m4 $(top_srcdir)/m4/locale_h.m4 \ - $(top_srcdir)/m4/localeconv.m4 $(top_srcdir)/m4/lock.m4 \ - $(top_srcdir)/m4/longlong.m4 $(top_srcdir)/m4/lstat.m4 \ - $(top_srcdir)/m4/malloc.m4 $(top_srcdir)/m4/malloca.m4 \ - $(top_srcdir)/m4/mbrtowc.m4 $(top_srcdir)/m4/mbsinit.m4 \ - $(top_srcdir)/m4/mbsrtowcs.m4 $(top_srcdir)/m4/mbstate_t.m4 \ - $(top_srcdir)/m4/mbswidth.m4 $(top_srcdir)/m4/mbtowc.m4 \ - $(top_srcdir)/m4/memchr.m4 $(top_srcdir)/m4/mempcpy.m4 \ - $(top_srcdir)/m4/memrchr.m4 $(top_srcdir)/m4/mmap-anon.m4 \ - $(top_srcdir)/m4/mode_t.m4 $(top_srcdir)/m4/msvc-inval.m4 \ - $(top_srcdir)/m4/msvc-nothrow.m4 $(top_srcdir)/m4/multiarch.m4 \ - $(top_srcdir)/m4/nl_langinfo.m4 $(top_srcdir)/m4/nls.m4 \ - $(top_srcdir)/m4/nocrash.m4 $(top_srcdir)/m4/off_t.m4 \ - $(top_srcdir)/m4/open-cloexec.m4 $(top_srcdir)/m4/open.m4 \ - $(top_srcdir)/m4/openat.m4 $(top_srcdir)/m4/pathmax.m4 \ - $(top_srcdir)/m4/po.m4 $(top_srcdir)/m4/printf.m4 \ - $(top_srcdir)/m4/progtest.m4 \ - $(top_srcdir)/m4/pthread_rwlock_rdlock.m4 \ - $(top_srcdir)/m4/rawmemchr.m4 $(top_srcdir)/m4/realloc.m4 \ - $(top_srcdir)/m4/regex.m4 $(top_srcdir)/m4/save-cwd.m4 \ - $(top_srcdir)/m4/size_max.m4 $(top_srcdir)/m4/sleep.m4 \ - $(top_srcdir)/m4/ssize_t.m4 $(top_srcdir)/m4/stat-time.m4 \ - $(top_srcdir)/m4/stat.m4 $(top_srcdir)/m4/stdalign.m4 \ - $(top_srcdir)/m4/stdbool.m4 $(top_srcdir)/m4/stddef_h.m4 \ - $(top_srcdir)/m4/stdint.m4 $(top_srcdir)/m4/stdint_h.m4 \ - $(top_srcdir)/m4/stdio_h.m4 $(top_srcdir)/m4/stdlib_h.m4 \ - $(top_srcdir)/m4/strcase.m4 $(top_srcdir)/m4/strchrnul.m4 \ - $(top_srcdir)/m4/strdup.m4 $(top_srcdir)/m4/strerror.m4 \ - $(top_srcdir)/m4/string_h.m4 $(top_srcdir)/m4/strings_h.m4 \ - $(top_srcdir)/m4/strndup.m4 $(top_srcdir)/m4/strnlen.m4 \ - $(top_srcdir)/m4/sys_socket_h.m4 \ - $(top_srcdir)/m4/sys_stat_h.m4 $(top_srcdir)/m4/sys_types_h.m4 \ - $(top_srcdir)/m4/sysexits.m4 $(top_srcdir)/m4/threadlib.m4 \ - $(top_srcdir)/m4/time_h.m4 $(top_srcdir)/m4/unistd-safer.m4 \ - $(top_srcdir)/m4/unistd_h.m4 $(top_srcdir)/m4/vasnprintf.m4 \ - $(top_srcdir)/m4/vsnprintf.m4 $(top_srcdir)/m4/warn-on-use.m4 \ - $(top_srcdir)/m4/wchar_h.m4 $(top_srcdir)/m4/wchar_t.m4 \ - $(top_srcdir)/m4/wcrtomb.m4 $(top_srcdir)/m4/wctype_h.m4 \ - $(top_srcdir)/m4/wcwidth.m4 $(top_srcdir)/m4/wint_t.m4 \ - $(top_srcdir)/m4/xsize.m4 $(top_srcdir)/acinclude.m4 \ - $(top_srcdir)/configure.ac -am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ - $(ACLOCAL_M4) -DIST_COMMON = $(srcdir)/Makefile.am $(top_srcdir)/configure \ - $(am__configure_deps) $(dist_grubconf_DATA) \ - $(am__dist_noinst_DATA_DIST) $(am__DIST_COMMON) -am__CONFIG_DISTCLEAN_FILES = config.status config.cache config.log \ - configure.lineno config.status.lineno -mkinstalldirs = $(install_sh) -d -CONFIG_HEADER = config-util.h -CONFIG_CLEAN_FILES = stamp-h config.h include/grub/cpu \ - include/grub/machine -CONFIG_CLEAN_VPATH_FILES = -LIBRARIES = $(noinst_LIBRARIES) -AM_V_AR = $(am__v_AR_@AM_V@) -am__v_AR_ = $(am__v_AR_@AM_DEFAULT_V@) -am__v_AR_0 = @echo " AR " $@; -am__v_AR_1 = -libgrubgcry_a_AR = $(AR) $(ARFLAGS) -libgrubgcry_a_LIBADD = -am__dirstamp = $(am__leading_dot)dirstamp -am_libgrubgcry_a_OBJECTS = grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-arcfour.$(OBJEXT) \ - grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-blowfish.$(OBJEXT) \ - grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-camellia-glue.$(OBJEXT) \ - grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-camellia.$(OBJEXT) \ - grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-cast5.$(OBJEXT) \ - grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-crc.$(OBJEXT) \ - grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-des.$(OBJEXT) \ - grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-idea.$(OBJEXT) \ - grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-md4.$(OBJEXT) \ - grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-md5.$(OBJEXT) \ - grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-rfc2268.$(OBJEXT) \ - grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-rijndael.$(OBJEXT) \ - grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-rmd160.$(OBJEXT) \ - grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-seed.$(OBJEXT) \ - grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-serpent.$(OBJEXT) \ - grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-sha1.$(OBJEXT) \ - grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-sha256.$(OBJEXT) \ - grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-sha512.$(OBJEXT) \ - grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-tiger.$(OBJEXT) \ - grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-twofish.$(OBJEXT) \ - grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-whirlpool.$(OBJEXT) \ - grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-init.$(OBJEXT) -nodist_libgrubgcry_a_OBJECTS = -libgrubgcry_a_OBJECTS = $(am_libgrubgcry_a_OBJECTS) \ - $(nodist_libgrubgcry_a_OBJECTS) -libgrubkern_a_AR = $(AR) $(ARFLAGS) -libgrubkern_a_LIBADD = -am_libgrubkern_a_OBJECTS = util/libgrubkern_a-misc.$(OBJEXT) \ - grub-core/kern/libgrubkern_a-command.$(OBJEXT) \ - grub-core/kern/libgrubkern_a-device.$(OBJEXT) \ - grub-core/kern/libgrubkern_a-disk.$(OBJEXT) \ - grub-core/lib/libgrubkern_a-disk.$(OBJEXT) \ - util/libgrubkern_a-getroot.$(OBJEXT) \ - grub-core/osdep/unix/libgrubkern_a-getroot.$(OBJEXT) \ - grub-core/osdep/libgrubkern_a-getroot.$(OBJEXT) \ - grub-core/osdep/devmapper/libgrubkern_a-getroot.$(OBJEXT) \ - grub-core/osdep/libgrubkern_a-relpath.$(OBJEXT) \ - grub-core/kern/emu/libgrubkern_a-hostdisk.$(OBJEXT) \ - grub-core/osdep/devmapper/libgrubkern_a-hostdisk.$(OBJEXT) \ - grub-core/osdep/libgrubkern_a-hostdisk.$(OBJEXT) \ - grub-core/osdep/unix/libgrubkern_a-hostdisk.$(OBJEXT) \ - grub-core/osdep/libgrubkern_a-exec.$(OBJEXT) \ - grub-core/osdep/libgrubkern_a-sleep.$(OBJEXT) \ - grub-core/osdep/libgrubkern_a-password.$(OBJEXT) \ - grub-core/kern/emu/libgrubkern_a-misc.$(OBJEXT) \ - grub-core/kern/emu/libgrubkern_a-mm.$(OBJEXT) \ - grub-core/kern/libgrubkern_a-env.$(OBJEXT) \ - grub-core/kern/libgrubkern_a-err.$(OBJEXT) \ - grub-core/kern/libgrubkern_a-file.$(OBJEXT) \ - grub-core/kern/libgrubkern_a-fs.$(OBJEXT) \ - grub-core/kern/libgrubkern_a-list.$(OBJEXT) \ - grub-core/kern/libgrubkern_a-misc.$(OBJEXT) \ - grub-core/kern/libgrubkern_a-partition.$(OBJEXT) \ - grub-core/lib/libgrubkern_a-crypto.$(OBJEXT) \ - grub-core/disk/libgrubkern_a-luks.$(OBJEXT) \ - grub-core/disk/libgrubkern_a-geli.$(OBJEXT) \ - grub-core/disk/libgrubkern_a-cryptodisk.$(OBJEXT) \ - grub-core/disk/libgrubkern_a-AFSplitter.$(OBJEXT) \ - grub-core/lib/libgrubkern_a-pbkdf2.$(OBJEXT) \ - grub-core/commands/libgrubkern_a-extcmd.$(OBJEXT) \ - grub-core/lib/libgrubkern_a-arg.$(OBJEXT) \ - grub-core/disk/libgrubkern_a-ldm.$(OBJEXT) \ - grub-core/disk/libgrubkern_a-diskfilter.$(OBJEXT) \ - grub-core/partmap/libgrubkern_a-gpt.$(OBJEXT) \ - grub-core/partmap/libgrubkern_a-msdos.$(OBJEXT) \ - grub-core/fs/libgrubkern_a-proc.$(OBJEXT) \ - grub-core/fs/libgrubkern_a-archelp.$(OBJEXT) -nodist_libgrubkern_a_OBJECTS = -libgrubkern_a_OBJECTS = $(am_libgrubkern_a_OBJECTS) \ - $(nodist_libgrubkern_a_OBJECTS) -libgrubmods_a_AR = $(AR) $(ARFLAGS) -libgrubmods_a_LIBADD = -am_libgrubmods_a_OBJECTS = \ - grub-core/commands/libgrubmods_a-blocklist.$(OBJEXT) \ - grub-core/commands/libgrubmods_a-macbless.$(OBJEXT) \ - grub-core/commands/libgrubmods_a-xnu_uuid.$(OBJEXT) \ - grub-core/commands/libgrubmods_a-testload.$(OBJEXT) \ - grub-core/commands/libgrubmods_a-ls.$(OBJEXT) \ - grub-core/disk/libgrubmods_a-dmraid_nvidia.$(OBJEXT) \ - grub-core/disk/libgrubmods_a-loopback.$(OBJEXT) \ - grub-core/disk/libgrubmods_a-lvm.$(OBJEXT) \ - grub-core/disk/libgrubmods_a-mdraid_linux.$(OBJEXT) \ - grub-core/disk/libgrubmods_a-mdraid_linux_be.$(OBJEXT) \ - grub-core/disk/libgrubmods_a-mdraid1x_linux.$(OBJEXT) \ - grub-core/disk/libgrubmods_a-raid5_recover.$(OBJEXT) \ - grub-core/disk/libgrubmods_a-raid6_recover.$(OBJEXT) \ - grub-core/font/libgrubmods_a-font.$(OBJEXT) \ - grub-core/gfxmenu/libgrubmods_a-font.$(OBJEXT) \ - grub-core/normal/libgrubmods_a-charset.$(OBJEXT) \ - grub-core/video/fb/libgrubmods_a-fbblit.$(OBJEXT) \ - grub-core/video/fb/libgrubmods_a-fbutil.$(OBJEXT) \ - grub-core/video/fb/libgrubmods_a-fbfill.$(OBJEXT) \ - grub-core/video/fb/libgrubmods_a-video_fb.$(OBJEXT) \ - grub-core/video/libgrubmods_a-video.$(OBJEXT) \ - grub-core/video/libgrubmods_a-capture.$(OBJEXT) \ - grub-core/video/libgrubmods_a-colors.$(OBJEXT) \ - grub-core/libgrubmods_a-unidata.$(OBJEXT) \ - grub-core/io/libgrubmods_a-bufio.$(OBJEXT) \ - grub-core/fs/libgrubmods_a-affs.$(OBJEXT) \ - grub-core/fs/libgrubmods_a-afs.$(OBJEXT) \ - grub-core/fs/libgrubmods_a-bfs.$(OBJEXT) \ - grub-core/fs/libgrubmods_a-btrfs.$(OBJEXT) \ - grub-core/fs/libgrubmods_a-cbfs.$(OBJEXT) \ - grub-core/fs/libgrubmods_a-cpio.$(OBJEXT) \ - grub-core/fs/libgrubmods_a-cpio_be.$(OBJEXT) \ - grub-core/fs/libgrubmods_a-odc.$(OBJEXT) \ - grub-core/fs/libgrubmods_a-newc.$(OBJEXT) \ - grub-core/fs/libgrubmods_a-ext2.$(OBJEXT) \ - grub-core/fs/libgrubmods_a-fat.$(OBJEXT) \ - grub-core/fs/libgrubmods_a-exfat.$(OBJEXT) \ - grub-core/fs/libgrubmods_a-f2fs.$(OBJEXT) \ - grub-core/fs/libgrubmods_a-fshelp.$(OBJEXT) \ - grub-core/fs/libgrubmods_a-hfs.$(OBJEXT) \ - grub-core/fs/libgrubmods_a-hfsplus.$(OBJEXT) \ - grub-core/fs/libgrubmods_a-hfspluscomp.$(OBJEXT) \ - grub-core/fs/libgrubmods_a-iso9660.$(OBJEXT) \ - grub-core/fs/libgrubmods_a-jfs.$(OBJEXT) \ - grub-core/fs/libgrubmods_a-minix.$(OBJEXT) \ - grub-core/fs/libgrubmods_a-minix2.$(OBJEXT) \ - grub-core/fs/libgrubmods_a-minix3.$(OBJEXT) \ - grub-core/fs/libgrubmods_a-minix_be.$(OBJEXT) \ - grub-core/fs/libgrubmods_a-minix2_be.$(OBJEXT) \ - grub-core/fs/libgrubmods_a-minix3_be.$(OBJEXT) \ - grub-core/fs/libgrubmods_a-nilfs2.$(OBJEXT) \ - grub-core/fs/libgrubmods_a-ntfs.$(OBJEXT) \ - grub-core/fs/libgrubmods_a-ntfscomp.$(OBJEXT) \ - grub-core/fs/libgrubmods_a-reiserfs.$(OBJEXT) \ - grub-core/fs/libgrubmods_a-romfs.$(OBJEXT) \ - grub-core/fs/libgrubmods_a-sfs.$(OBJEXT) \ - grub-core/fs/libgrubmods_a-squash4.$(OBJEXT) \ - grub-core/fs/libgrubmods_a-tar.$(OBJEXT) \ - grub-core/fs/libgrubmods_a-udf.$(OBJEXT) \ - grub-core/fs/libgrubmods_a-ufs2.$(OBJEXT) \ - grub-core/fs/libgrubmods_a-ufs.$(OBJEXT) \ - grub-core/fs/libgrubmods_a-ufs_be.$(OBJEXT) \ - grub-core/fs/libgrubmods_a-xfs.$(OBJEXT) \ - grub-core/fs/zfs/libgrubmods_a-zfscrypt.$(OBJEXT) \ - grub-core/fs/zfs/libgrubmods_a-zfs.$(OBJEXT) \ - grub-core/fs/zfs/libgrubmods_a-zfsinfo.$(OBJEXT) \ - grub-core/fs/zfs/libgrubmods_a-zfs_lzjb.$(OBJEXT) \ - grub-core/fs/zfs/libgrubmods_a-zfs_lz4.$(OBJEXT) \ - grub-core/fs/zfs/libgrubmods_a-zfs_sha256.$(OBJEXT) \ - grub-core/fs/zfs/libgrubmods_a-zfs_fletcher.$(OBJEXT) \ - grub-core/lib/libgrubmods_a-envblk.$(OBJEXT) \ - grub-core/lib/libgrubmods_a-hexdump.$(OBJEXT) \ - grub-core/lib/libgrubmods_a-LzFind.$(OBJEXT) \ - grub-core/lib/libgrubmods_a-LzmaEnc.$(OBJEXT) \ - grub-core/lib/libgrubmods_a-crc.$(OBJEXT) \ - grub-core/lib/libgrubmods_a-adler32.$(OBJEXT) \ - grub-core/lib/libgrubmods_a-crc64.$(OBJEXT) \ - grub-core/normal/libgrubmods_a-datetime.$(OBJEXT) \ - grub-core/normal/libgrubmods_a-misc.$(OBJEXT) \ - grub-core/partmap/libgrubmods_a-acorn.$(OBJEXT) \ - grub-core/partmap/libgrubmods_a-amiga.$(OBJEXT) \ - grub-core/partmap/libgrubmods_a-apple.$(OBJEXT) \ - grub-core/partmap/libgrubmods_a-sun.$(OBJEXT) \ - grub-core/partmap/libgrubmods_a-plan.$(OBJEXT) \ - grub-core/partmap/libgrubmods_a-dvh.$(OBJEXT) \ - grub-core/partmap/libgrubmods_a-sunpc.$(OBJEXT) \ - grub-core/partmap/libgrubmods_a-bsdlabel.$(OBJEXT) \ - grub-core/partmap/libgrubmods_a-dfly.$(OBJEXT) \ - grub-core/script/libgrubmods_a-function.$(OBJEXT) \ - grub-core/script/libgrubmods_a-lexer.$(OBJEXT) \ - grub-core/script/libgrubmods_a-main.$(OBJEXT) \ - grub-core/script/libgrubmods_a-script.$(OBJEXT) \ - grub-core/script/libgrubmods_a-argv.$(OBJEXT) \ - grub-core/io/libgrubmods_a-gzio.$(OBJEXT) \ - grub-core/io/libgrubmods_a-xzio.$(OBJEXT) \ - grub-core/io/libgrubmods_a-lzopio.$(OBJEXT) \ - grub-core/kern/ia64/libgrubmods_a-dl_helper.$(OBJEXT) \ - grub-core/kern/arm/libgrubmods_a-dl_helper.$(OBJEXT) \ - grub-core/kern/arm64/libgrubmods_a-dl_helper.$(OBJEXT) \ - grub-core/lib/minilzo/libgrubmods_a-minilzo.$(OBJEXT) \ - grub-core/lib/xzembed/libgrubmods_a-xz_dec_bcj.$(OBJEXT) \ - grub-core/lib/xzembed/libgrubmods_a-xz_dec_lzma2.$(OBJEXT) \ - grub-core/lib/xzembed/libgrubmods_a-xz_dec_stream.$(OBJEXT) \ - grub-core/lib/zstd/libgrubmods_a-debug.$(OBJEXT) \ - grub-core/lib/zstd/libgrubmods_a-entropy_common.$(OBJEXT) \ - grub-core/lib/zstd/libgrubmods_a-error_private.$(OBJEXT) \ - grub-core/lib/zstd/libgrubmods_a-fse_decompress.$(OBJEXT) \ - grub-core/lib/zstd/libgrubmods_a-huf_decompress.$(OBJEXT) \ - grub-core/lib/zstd/libgrubmods_a-module.$(OBJEXT) \ - grub-core/lib/zstd/libgrubmods_a-xxhash.$(OBJEXT) \ - grub-core/lib/zstd/libgrubmods_a-zstd_common.$(OBJEXT) \ - grub-core/lib/zstd/libgrubmods_a-zstd_decompress.$(OBJEXT) -nodist_libgrubmods_a_OBJECTS = \ - libgrubmods_a-grub_script.tab.$(OBJEXT) \ - libgrubmods_a-grub_script.yy.$(OBJEXT) \ - libgrubmods_a-libgrub_a_init.$(OBJEXT) -libgrubmods_a_OBJECTS = $(am_libgrubmods_a_OBJECTS) \ - $(nodist_libgrubmods_a_OBJECTS) -@COND_APPLE_LINKER_TRUE@am__EXEEXT_1 = grub-macho2img$(EXEEXT) -@COND_GRUB_MOUNT_TRUE@am__EXEEXT_2 = grub-mount$(EXEEXT) -@COND_GRUB_MKFONT_TRUE@am__EXEEXT_3 = grub-mkfont$(EXEEXT) -@COND_HAVE_EXEC_TRUE@am__EXEEXT_4 = grub-mkrescue$(EXEEXT) -am__installdirs = "$(DESTDIR)$(bindir)" "$(DESTDIR)$(platformdir)" \ - "$(DESTDIR)$(sbindir)" "$(DESTDIR)$(bindir)" \ - "$(DESTDIR)$(grubconfdir)" "$(DESTDIR)$(platformdir)" \ - "$(DESTDIR)$(sbindir)" "$(DESTDIR)$(man1dir)" \ - "$(DESTDIR)$(man8dir)" "$(DESTDIR)$(grubconfdir)" \ - "$(DESTDIR)$(pkgdatadir)" "$(DESTDIR)$(platformdir)" \ - "$(DESTDIR)$(starfielddir)" "$(DESTDIR)$(platformdir)" -@COND_HAVE_CXX_TRUE@am__EXEEXT_5 = priority_queue_unit_test$(EXEEXT) -PROGRAMS = $(bin_PROGRAMS) $(noinst_PROGRAMS) $(platform_PROGRAMS) \ - $(sbin_PROGRAMS) -am_cmp_test_OBJECTS = tests/cmp_test-cmp_unit_test.$(OBJEXT) \ - tests/lib/cmp_test-unit_test.$(OBJEXT) \ - grub-core/kern/cmp_test-list.$(OBJEXT) \ - grub-core/kern/cmp_test-misc.$(OBJEXT) \ - grub-core/tests/lib/cmp_test-test.$(OBJEXT) -nodist_cmp_test_OBJECTS = -cmp_test_OBJECTS = $(am_cmp_test_OBJECTS) $(nodist_cmp_test_OBJECTS) -am__DEPENDENCIES_1 = -cmp_test_DEPENDENCIES = libgrubmods.a libgrubgcry.a libgrubkern.a \ - grub-core/lib/gnulib/libgnu.a $(am__DEPENDENCIES_1) \ - $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \ - $(am__DEPENDENCIES_1) -cmp_test_LINK = $(CCLD) $(cmp_test_CFLAGS) $(CFLAGS) \ - $(cmp_test_LDFLAGS) $(LDFLAGS) -o $@ -am_date_test_OBJECTS = tests/date_test-date_unit_test.$(OBJEXT) \ - tests/lib/date_test-unit_test.$(OBJEXT) \ - grub-core/kern/date_test-list.$(OBJEXT) \ - grub-core/kern/date_test-misc.$(OBJEXT) \ - grub-core/tests/lib/date_test-test.$(OBJEXT) -nodist_date_test_OBJECTS = -date_test_OBJECTS = $(am_date_test_OBJECTS) \ - $(nodist_date_test_OBJECTS) -date_test_DEPENDENCIES = libgrubmods.a libgrubgcry.a libgrubkern.a \ - grub-core/lib/gnulib/libgnu.a $(am__DEPENDENCIES_1) \ - $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \ - $(am__DEPENDENCIES_1) -date_test_LINK = $(CCLD) $(date_test_CFLAGS) $(CFLAGS) \ - $(date_test_LDFLAGS) $(LDFLAGS) -o $@ -am_example_unit_test_OBJECTS = \ - tests/example_unit_test-example_unit_test.$(OBJEXT) \ - tests/lib/example_unit_test-unit_test.$(OBJEXT) \ - grub-core/kern/example_unit_test-list.$(OBJEXT) \ - grub-core/kern/example_unit_test-misc.$(OBJEXT) \ - grub-core/tests/lib/example_unit_test-test.$(OBJEXT) -nodist_example_unit_test_OBJECTS = -example_unit_test_OBJECTS = $(am_example_unit_test_OBJECTS) \ - $(nodist_example_unit_test_OBJECTS) -example_unit_test_DEPENDENCIES = libgrubmods.a libgrubgcry.a \ - libgrubkern.a grub-core/lib/gnulib/libgnu.a \ - $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \ - $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) -example_unit_test_LINK = $(CCLD) $(example_unit_test_CFLAGS) $(CFLAGS) \ - $(example_unit_test_LDFLAGS) $(LDFLAGS) -o $@ -am_grub_bios_setup_OBJECTS = \ - util/grub_bios_setup-grub-setup.$(OBJEXT) \ - util/grub_bios_setup-setup_bios.$(OBJEXT) \ - grub-core/kern/emu/grub_bios_setup-argp_common.$(OBJEXT) \ - grub-core/lib/grub_bios_setup-reed_solomon.$(OBJEXT) \ - grub-core/osdep/grub_bios_setup-blocklist.$(OBJEXT) \ - grub-core/osdep/grub_bios_setup-init.$(OBJEXT) -nodist_grub_bios_setup_OBJECTS = -grub_bios_setup_OBJECTS = $(am_grub_bios_setup_OBJECTS) \ - $(nodist_grub_bios_setup_OBJECTS) -grub_bios_setup_DEPENDENCIES = libgrubmods.a libgrubkern.a \ - libgrubgcry.a grub-core/lib/gnulib/libgnu.a \ - $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \ - $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \ - $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) -grub_bios_setup_LINK = $(CCLD) $(grub_bios_setup_CFLAGS) $(CFLAGS) \ - $(grub_bios_setup_LDFLAGS) $(LDFLAGS) -o $@ -am_grub_editenv_OBJECTS = util/grub_editenv-grub-editenv.$(OBJEXT) \ - util/grub_editenv-editenv.$(OBJEXT) \ - grub-core/osdep/grub_editenv-init.$(OBJEXT) -nodist_grub_editenv_OBJECTS = -grub_editenv_OBJECTS = $(am_grub_editenv_OBJECTS) \ - $(nodist_grub_editenv_OBJECTS) -grub_editenv_DEPENDENCIES = libgrubmods.a libgrubgcry.a libgrubkern.a \ - grub-core/lib/gnulib/libgnu.a $(am__DEPENDENCIES_1) \ - $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \ - $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) -grub_editenv_LINK = $(CCLD) $(grub_editenv_CFLAGS) $(CFLAGS) \ - $(grub_editenv_LDFLAGS) $(LDFLAGS) -o $@ -am_grub_file_OBJECTS = util/grub_file-grub-file.$(OBJEXT) \ - util/grub_file-render-label.$(OBJEXT) \ - grub-core/commands/grub_file-file.$(OBJEXT) \ - grub-core/commands/grub_file-file32.$(OBJEXT) \ - grub-core/commands/grub_file-file64.$(OBJEXT) \ - grub-core/loader/i386/grub_file-xen_file.$(OBJEXT) \ - grub-core/loader/i386/grub_file-xen_file32.$(OBJEXT) \ - grub-core/loader/i386/grub_file-xen_file64.$(OBJEXT) \ - grub-core/io/grub_file-offset.$(OBJEXT) \ - grub-core/kern/grub_file-elf.$(OBJEXT) \ - grub-core/loader/grub_file-lzss.$(OBJEXT) \ - grub-core/loader/grub_file-macho.$(OBJEXT) \ - grub-core/loader/grub_file-macho32.$(OBJEXT) \ - grub-core/loader/grub_file-macho64.$(OBJEXT) \ - grub-core/kern/emu/grub_file-hostfs.$(OBJEXT) \ - grub-core/disk/grub_file-host.$(OBJEXT) \ - grub-core/osdep/grub_file-init.$(OBJEXT) -nodist_grub_file_OBJECTS = -grub_file_OBJECTS = $(am_grub_file_OBJECTS) \ - $(nodist_grub_file_OBJECTS) -grub_file_DEPENDENCIES = libgrubmods.a libgrubgcry.a libgrubkern.a \ - grub-core/lib/gnulib/libgnu.a $(am__DEPENDENCIES_1) \ - $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \ - $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) -grub_file_LINK = $(CCLD) $(grub_file_CFLAGS) $(CFLAGS) \ - $(grub_file_LDFLAGS) $(LDFLAGS) -o $@ -am_grub_fstest_OBJECTS = util/grub_fstest-grub-fstest.$(OBJEXT) \ - grub-core/kern/emu/grub_fstest-hostfs.$(OBJEXT) \ - grub-core/disk/grub_fstest-host.$(OBJEXT) \ - grub-core/osdep/grub_fstest-init.$(OBJEXT) -nodist_grub_fstest_OBJECTS = grub_fstest-grub_fstest_init.$(OBJEXT) -grub_fstest_OBJECTS = $(am_grub_fstest_OBJECTS) \ - $(nodist_grub_fstest_OBJECTS) -grub_fstest_DEPENDENCIES = libgrubmods.a libgrubgcry.a libgrubkern.a \ - grub-core/lib/gnulib/libgnu.a $(am__DEPENDENCIES_1) \ - $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \ - $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \ - $(am__DEPENDENCIES_1) -grub_fstest_LINK = $(CCLD) $(grub_fstest_CFLAGS) $(CFLAGS) \ - $(grub_fstest_LDFLAGS) $(LDFLAGS) -o $@ -am_grub_glue_efi_OBJECTS = util/grub_glue_efi-grub-glue-efi.$(OBJEXT) \ - util/grub_glue_efi-glue-efi.$(OBJEXT) \ - grub-core/kern/emu/grub_glue_efi-argp_common.$(OBJEXT) \ - grub-core/osdep/grub_glue_efi-init.$(OBJEXT) -nodist_grub_glue_efi_OBJECTS = -grub_glue_efi_OBJECTS = $(am_grub_glue_efi_OBJECTS) \ - $(nodist_grub_glue_efi_OBJECTS) -grub_glue_efi_DEPENDENCIES = libgrubmods.a libgrubgcry.a libgrubkern.a \ - grub-core/lib/gnulib/libgnu.a $(am__DEPENDENCIES_1) \ - $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \ - $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) -grub_glue_efi_LINK = $(CCLD) $(grub_glue_efi_CFLAGS) $(CFLAGS) \ - $(grub_glue_efi_LDFLAGS) $(LDFLAGS) -o $@ -am_grub_install_OBJECTS = util/grub_install-grub-install.$(OBJEXT) \ - util/grub_install-probe.$(OBJEXT) \ - util/grub_install-mkimage.$(OBJEXT) \ - util/grub_install-grub-mkimage32.$(OBJEXT) \ - util/grub_install-grub-mkimage64.$(OBJEXT) \ - util/grub_install-grub-install-common.$(OBJEXT) \ - util/grub_install-setup_bios.$(OBJEXT) \ - util/grub_install-setup_sparc.$(OBJEXT) \ - grub-core/lib/grub_install-reed_solomon.$(OBJEXT) \ - grub-core/osdep/grub_install-random.$(OBJEXT) \ - grub-core/osdep/grub_install-ofpath.$(OBJEXT) \ - grub-core/osdep/grub_install-platform.$(OBJEXT) \ - grub-core/osdep/grub_install-platform_unix.$(OBJEXT) \ - grub-core/osdep/grub_install-compress.$(OBJEXT) \ - util/grub_install-editenv.$(OBJEXT) \ - grub-core/osdep/grub_install-blocklist.$(OBJEXT) \ - grub-core/osdep/grub_install-config.$(OBJEXT) \ - util/grub_install-config.$(OBJEXT) \ - util/grub_install-render-label.$(OBJEXT) \ - grub-core/kern/emu/grub_install-hostfs.$(OBJEXT) \ - grub-core/disk/grub_install-host.$(OBJEXT) \ - util/grub_install-resolve.$(OBJEXT) \ - grub-core/kern/emu/grub_install-argp_common.$(OBJEXT) \ - grub-core/osdep/grub_install-init.$(OBJEXT) -nodist_grub_install_OBJECTS = -grub_install_OBJECTS = $(am_grub_install_OBJECTS) \ - $(nodist_grub_install_OBJECTS) -grub_install_DEPENDENCIES = $(am__DEPENDENCIES_1) libgrubmods.a \ - libgrubgcry.a libgrubkern.a grub-core/lib/gnulib/libgnu.a \ - $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \ - $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \ - $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) -grub_install_LINK = $(CCLD) $(grub_install_CFLAGS) $(CFLAGS) \ - $(grub_install_LDFLAGS) $(LDFLAGS) -o $@ -am_grub_macbless_OBJECTS = util/grub_macbless-grub-macbless.$(OBJEXT) \ - grub-core/osdep/grub_macbless-init.$(OBJEXT) \ - grub-core/kern/emu/grub_macbless-argp_common.$(OBJEXT) -nodist_grub_macbless_OBJECTS = -grub_macbless_OBJECTS = $(am_grub_macbless_OBJECTS) \ - $(nodist_grub_macbless_OBJECTS) -grub_macbless_DEPENDENCIES = libgrubmods.a libgrubgcry.a libgrubkern.a \ - grub-core/lib/gnulib/libgnu.a $(am__DEPENDENCIES_1) \ - $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \ - $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \ - $(am__DEPENDENCIES_1) -grub_macbless_LINK = $(CCLD) $(grub_macbless_CFLAGS) $(CFLAGS) \ - $(grub_macbless_LDFLAGS) $(LDFLAGS) -o $@ -am__grub_macho2img_SOURCES_DIST = util/grub-macho2img.c -@COND_APPLE_LINKER_TRUE@am_grub_macho2img_OBJECTS = util/grub_macho2img-grub-macho2img.$(OBJEXT) -nodist_grub_macho2img_OBJECTS = -grub_macho2img_OBJECTS = $(am_grub_macho2img_OBJECTS) \ - $(nodist_grub_macho2img_OBJECTS) -grub_macho2img_DEPENDENCIES = -grub_macho2img_LINK = $(CCLD) $(grub_macho2img_CFLAGS) $(CFLAGS) \ - $(grub_macho2img_LDFLAGS) $(LDFLAGS) -o $@ -am_grub_menulst2cfg_OBJECTS = \ - util/grub_menulst2cfg-grub-menulst2cfg.$(OBJEXT) \ - grub-core/lib/grub_menulst2cfg-legacy_parse.$(OBJEXT) \ - grub-core/lib/i386/pc/grub_menulst2cfg-vesa_modes_table.$(OBJEXT) \ - grub-core/osdep/grub_menulst2cfg-init.$(OBJEXT) -nodist_grub_menulst2cfg_OBJECTS = -grub_menulst2cfg_OBJECTS = $(am_grub_menulst2cfg_OBJECTS) \ - $(nodist_grub_menulst2cfg_OBJECTS) -grub_menulst2cfg_DEPENDENCIES = libgrubmods.a libgrubgcry.a \ - libgrubkern.a grub-core/lib/gnulib/libgnu.a \ - $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \ - $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \ - $(am__DEPENDENCIES_1) -grub_menulst2cfg_LINK = $(CCLD) $(grub_menulst2cfg_CFLAGS) $(CFLAGS) \ - $(grub_menulst2cfg_LDFLAGS) $(LDFLAGS) -o $@ -am__grub_mkfont_SOURCES_DIST = util/grub-mkfont.c \ - grub-core/kern/emu/argp_common.c grub-core/osdep/init.c -@COND_GRUB_MKFONT_TRUE@am_grub_mkfont_OBJECTS = \ -@COND_GRUB_MKFONT_TRUE@ util/grub_mkfont-grub-mkfont.$(OBJEXT) \ -@COND_GRUB_MKFONT_TRUE@ grub-core/kern/emu/grub_mkfont-argp_common.$(OBJEXT) \ -@COND_GRUB_MKFONT_TRUE@ grub-core/osdep/grub_mkfont-init.$(OBJEXT) -nodist_grub_mkfont_OBJECTS = -grub_mkfont_OBJECTS = $(am_grub_mkfont_OBJECTS) \ - $(nodist_grub_mkfont_OBJECTS) -@COND_GRUB_MKFONT_TRUE@grub_mkfont_DEPENDENCIES = libgrubmods.a \ -@COND_GRUB_MKFONT_TRUE@ libgrubgcry.a libgrubkern.a \ -@COND_GRUB_MKFONT_TRUE@ grub-core/lib/gnulib/libgnu.a \ -@COND_GRUB_MKFONT_TRUE@ $(am__DEPENDENCIES_1) \ -@COND_GRUB_MKFONT_TRUE@ $(am__DEPENDENCIES_1) \ -@COND_GRUB_MKFONT_TRUE@ $(am__DEPENDENCIES_1) \ -@COND_GRUB_MKFONT_TRUE@ $(am__DEPENDENCIES_1) \ -@COND_GRUB_MKFONT_TRUE@ $(am__DEPENDENCIES_1) \ -@COND_GRUB_MKFONT_TRUE@ $(am__DEPENDENCIES_1) -grub_mkfont_LINK = $(CCLD) $(grub_mkfont_CFLAGS) $(CFLAGS) \ - $(grub_mkfont_LDFLAGS) $(LDFLAGS) -o $@ -am_grub_mkimage_OBJECTS = util/grub_mkimage-grub-mkimage.$(OBJEXT) \ - util/grub_mkimage-mkimage.$(OBJEXT) \ - util/grub_mkimage-grub-mkimage32.$(OBJEXT) \ - util/grub_mkimage-grub-mkimage64.$(OBJEXT) \ - util/grub_mkimage-resolve.$(OBJEXT) \ - grub-core/kern/emu/grub_mkimage-argp_common.$(OBJEXT) \ - grub-core/osdep/grub_mkimage-init.$(OBJEXT) \ - grub-core/osdep/grub_mkimage-config.$(OBJEXT) \ - util/grub_mkimage-config.$(OBJEXT) -nodist_grub_mkimage_OBJECTS = -grub_mkimage_OBJECTS = $(am_grub_mkimage_OBJECTS) \ - $(nodist_grub_mkimage_OBJECTS) -grub_mkimage_DEPENDENCIES = libgrubmods.a libgrubgcry.a libgrubkern.a \ - grub-core/lib/gnulib/libgnu.a $(am__DEPENDENCIES_1) \ - $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \ - $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \ - $(am__DEPENDENCIES_1) -grub_mkimage_LINK = $(CCLD) $(grub_mkimage_CFLAGS) $(CFLAGS) \ - $(grub_mkimage_LDFLAGS) $(LDFLAGS) -o $@ -am_grub_mklayout_OBJECTS = util/grub_mklayout-grub-mklayout.$(OBJEXT) \ - grub-core/kern/emu/grub_mklayout-argp_common.$(OBJEXT) \ - grub-core/osdep/grub_mklayout-init.$(OBJEXT) -nodist_grub_mklayout_OBJECTS = -grub_mklayout_OBJECTS = $(am_grub_mklayout_OBJECTS) \ - $(nodist_grub_mklayout_OBJECTS) -grub_mklayout_DEPENDENCIES = libgrubmods.a libgrubgcry.a libgrubkern.a \ - grub-core/lib/gnulib/libgnu.a $(am__DEPENDENCIES_1) \ - $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \ - $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) -grub_mklayout_LINK = $(CCLD) $(grub_mklayout_CFLAGS) $(CFLAGS) \ - $(grub_mklayout_LDFLAGS) $(LDFLAGS) -o $@ -am_grub_mknetdir_OBJECTS = util/grub_mknetdir-grub-mknetdir.$(OBJEXT) \ - util/grub_mknetdir-mkimage.$(OBJEXT) \ - util/grub_mknetdir-grub-mkimage32.$(OBJEXT) \ - util/grub_mknetdir-grub-mkimage64.$(OBJEXT) \ - util/grub_mknetdir-grub-install-common.$(OBJEXT) \ - util/grub_mknetdir-setup_bios.$(OBJEXT) \ - util/grub_mknetdir-setup_sparc.$(OBJEXT) \ - grub-core/lib/grub_mknetdir-reed_solomon.$(OBJEXT) \ - grub-core/osdep/grub_mknetdir-random.$(OBJEXT) \ - grub-core/osdep/grub_mknetdir-ofpath.$(OBJEXT) \ - grub-core/osdep/grub_mknetdir-platform.$(OBJEXT) \ - grub-core/osdep/grub_mknetdir-platform_unix.$(OBJEXT) \ - grub-core/osdep/grub_mknetdir-compress.$(OBJEXT) \ - util/grub_mknetdir-editenv.$(OBJEXT) \ - grub-core/osdep/grub_mknetdir-blocklist.$(OBJEXT) \ - grub-core/osdep/grub_mknetdir-config.$(OBJEXT) \ - util/grub_mknetdir-config.$(OBJEXT) \ - util/grub_mknetdir-resolve.$(OBJEXT) \ - grub-core/kern/emu/grub_mknetdir-argp_common.$(OBJEXT) \ - grub-core/osdep/grub_mknetdir-init.$(OBJEXT) -nodist_grub_mknetdir_OBJECTS = -grub_mknetdir_OBJECTS = $(am_grub_mknetdir_OBJECTS) \ - $(nodist_grub_mknetdir_OBJECTS) -grub_mknetdir_DEPENDENCIES = $(am__DEPENDENCIES_1) libgrubmods.a \ - libgrubgcry.a libgrubkern.a grub-core/lib/gnulib/libgnu.a \ - $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \ - $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \ - $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) -grub_mknetdir_LINK = $(CCLD) $(grub_mknetdir_CFLAGS) $(CFLAGS) \ - $(grub_mknetdir_LDFLAGS) $(LDFLAGS) -o $@ -am_grub_mkpasswd_pbkdf2_OBJECTS = \ - util/grub_mkpasswd_pbkdf2-grub-mkpasswd-pbkdf2.$(OBJEXT) \ - grub-core/kern/emu/grub_mkpasswd_pbkdf2-argp_common.$(OBJEXT) \ - grub-core/osdep/grub_mkpasswd_pbkdf2-random.$(OBJEXT) \ - grub-core/osdep/grub_mkpasswd_pbkdf2-init.$(OBJEXT) -nodist_grub_mkpasswd_pbkdf2_OBJECTS = -grub_mkpasswd_pbkdf2_OBJECTS = $(am_grub_mkpasswd_pbkdf2_OBJECTS) \ - $(nodist_grub_mkpasswd_pbkdf2_OBJECTS) -grub_mkpasswd_pbkdf2_DEPENDENCIES = libgrubmods.a libgrubgcry.a \ - libgrubkern.a grub-core/lib/gnulib/libgnu.a \ - $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \ - $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \ - $(am__DEPENDENCIES_1) -grub_mkpasswd_pbkdf2_LINK = $(CCLD) $(grub_mkpasswd_pbkdf2_CFLAGS) \ - $(CFLAGS) $(grub_mkpasswd_pbkdf2_LDFLAGS) $(LDFLAGS) -o $@ -am_grub_mkrelpath_OBJECTS = \ - util/grub_mkrelpath-grub-mkrelpath.$(OBJEXT) \ - grub-core/kern/emu/grub_mkrelpath-argp_common.$(OBJEXT) \ - grub-core/osdep/grub_mkrelpath-init.$(OBJEXT) -nodist_grub_mkrelpath_OBJECTS = -grub_mkrelpath_OBJECTS = $(am_grub_mkrelpath_OBJECTS) \ - $(nodist_grub_mkrelpath_OBJECTS) -grub_mkrelpath_DEPENDENCIES = libgrubmods.a libgrubgcry.a \ - libgrubkern.a grub-core/lib/gnulib/libgnu.a \ - $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \ - $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \ - $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) -grub_mkrelpath_LINK = $(CCLD) $(grub_mkrelpath_CFLAGS) $(CFLAGS) \ - $(grub_mkrelpath_LDFLAGS) $(LDFLAGS) -o $@ -am__grub_mkrescue_SOURCES_DIST = util/grub-mkrescue.c \ - util/render-label.c util/glue-efi.c util/mkimage.c \ - util/grub-mkimage32.c util/grub-mkimage64.c \ - util/grub-install-common.c util/setup_bios.c \ - util/setup_sparc.c grub-core/lib/reed_solomon.c \ - grub-core/osdep/random.c grub-core/osdep/ofpath.c \ - grub-core/osdep/platform.c grub-core/osdep/platform_unix.c \ - grub-core/osdep/compress.c util/editenv.c \ - grub-core/osdep/blocklist.c grub-core/osdep/config.c \ - util/config.c grub-core/kern/emu/hostfs.c \ - grub-core/disk/host.c util/resolve.c \ - grub-core/kern/emu/argp_common.c grub-core/osdep/init.c -@COND_HAVE_EXEC_TRUE@am_grub_mkrescue_OBJECTS = util/grub_mkrescue-grub-mkrescue.$(OBJEXT) \ -@COND_HAVE_EXEC_TRUE@ util/grub_mkrescue-render-label.$(OBJEXT) \ -@COND_HAVE_EXEC_TRUE@ util/grub_mkrescue-glue-efi.$(OBJEXT) \ -@COND_HAVE_EXEC_TRUE@ util/grub_mkrescue-mkimage.$(OBJEXT) \ -@COND_HAVE_EXEC_TRUE@ util/grub_mkrescue-grub-mkimage32.$(OBJEXT) \ -@COND_HAVE_EXEC_TRUE@ util/grub_mkrescue-grub-mkimage64.$(OBJEXT) \ -@COND_HAVE_EXEC_TRUE@ util/grub_mkrescue-grub-install-common.$(OBJEXT) \ -@COND_HAVE_EXEC_TRUE@ util/grub_mkrescue-setup_bios.$(OBJEXT) \ -@COND_HAVE_EXEC_TRUE@ util/grub_mkrescue-setup_sparc.$(OBJEXT) \ -@COND_HAVE_EXEC_TRUE@ grub-core/lib/grub_mkrescue-reed_solomon.$(OBJEXT) \ -@COND_HAVE_EXEC_TRUE@ grub-core/osdep/grub_mkrescue-random.$(OBJEXT) \ -@COND_HAVE_EXEC_TRUE@ grub-core/osdep/grub_mkrescue-ofpath.$(OBJEXT) \ -@COND_HAVE_EXEC_TRUE@ grub-core/osdep/grub_mkrescue-platform.$(OBJEXT) \ -@COND_HAVE_EXEC_TRUE@ grub-core/osdep/grub_mkrescue-platform_unix.$(OBJEXT) \ -@COND_HAVE_EXEC_TRUE@ grub-core/osdep/grub_mkrescue-compress.$(OBJEXT) \ -@COND_HAVE_EXEC_TRUE@ util/grub_mkrescue-editenv.$(OBJEXT) \ -@COND_HAVE_EXEC_TRUE@ grub-core/osdep/grub_mkrescue-blocklist.$(OBJEXT) \ -@COND_HAVE_EXEC_TRUE@ grub-core/osdep/grub_mkrescue-config.$(OBJEXT) \ -@COND_HAVE_EXEC_TRUE@ util/grub_mkrescue-config.$(OBJEXT) \ -@COND_HAVE_EXEC_TRUE@ grub-core/kern/emu/grub_mkrescue-hostfs.$(OBJEXT) \ -@COND_HAVE_EXEC_TRUE@ grub-core/disk/grub_mkrescue-host.$(OBJEXT) \ -@COND_HAVE_EXEC_TRUE@ util/grub_mkrescue-resolve.$(OBJEXT) \ -@COND_HAVE_EXEC_TRUE@ grub-core/kern/emu/grub_mkrescue-argp_common.$(OBJEXT) \ -@COND_HAVE_EXEC_TRUE@ grub-core/osdep/grub_mkrescue-init.$(OBJEXT) -nodist_grub_mkrescue_OBJECTS = -grub_mkrescue_OBJECTS = $(am_grub_mkrescue_OBJECTS) \ - $(nodist_grub_mkrescue_OBJECTS) -@COND_HAVE_EXEC_TRUE@grub_mkrescue_DEPENDENCIES = \ -@COND_HAVE_EXEC_TRUE@ $(am__DEPENDENCIES_1) libgrubmods.a \ -@COND_HAVE_EXEC_TRUE@ libgrubgcry.a libgrubkern.a \ -@COND_HAVE_EXEC_TRUE@ grub-core/lib/gnulib/libgnu.a \ -@COND_HAVE_EXEC_TRUE@ $(am__DEPENDENCIES_1) \ -@COND_HAVE_EXEC_TRUE@ $(am__DEPENDENCIES_1) \ -@COND_HAVE_EXEC_TRUE@ $(am__DEPENDENCIES_1) \ -@COND_HAVE_EXEC_TRUE@ $(am__DEPENDENCIES_1) \ -@COND_HAVE_EXEC_TRUE@ $(am__DEPENDENCIES_1) \ -@COND_HAVE_EXEC_TRUE@ $(am__DEPENDENCIES_1) -grub_mkrescue_LINK = $(CCLD) $(grub_mkrescue_CFLAGS) $(CFLAGS) \ - $(grub_mkrescue_LDFLAGS) $(LDFLAGS) -o $@ -am_grub_mkstandalone_OBJECTS = \ - util/grub_mkstandalone-grub-mkstandalone.$(OBJEXT) \ - util/grub_mkstandalone-render-label.$(OBJEXT) \ - util/grub_mkstandalone-glue-efi.$(OBJEXT) \ - util/grub_mkstandalone-mkimage.$(OBJEXT) \ - util/grub_mkstandalone-grub-mkimage32.$(OBJEXT) \ - util/grub_mkstandalone-grub-mkimage64.$(OBJEXT) \ - util/grub_mkstandalone-grub-install-common.$(OBJEXT) \ - util/grub_mkstandalone-setup_bios.$(OBJEXT) \ - util/grub_mkstandalone-setup_sparc.$(OBJEXT) \ - grub-core/lib/grub_mkstandalone-reed_solomon.$(OBJEXT) \ - grub-core/osdep/grub_mkstandalone-random.$(OBJEXT) \ - grub-core/osdep/grub_mkstandalone-ofpath.$(OBJEXT) \ - grub-core/osdep/grub_mkstandalone-platform.$(OBJEXT) \ - grub-core/osdep/grub_mkstandalone-platform_unix.$(OBJEXT) \ - grub-core/osdep/grub_mkstandalone-compress.$(OBJEXT) \ - util/grub_mkstandalone-editenv.$(OBJEXT) \ - grub-core/osdep/grub_mkstandalone-blocklist.$(OBJEXT) \ - grub-core/osdep/grub_mkstandalone-config.$(OBJEXT) \ - util/grub_mkstandalone-config.$(OBJEXT) \ - grub-core/kern/emu/grub_mkstandalone-hostfs.$(OBJEXT) \ - grub-core/disk/grub_mkstandalone-host.$(OBJEXT) \ - util/grub_mkstandalone-resolve.$(OBJEXT) \ - grub-core/kern/emu/grub_mkstandalone-argp_common.$(OBJEXT) \ - grub-core/osdep/grub_mkstandalone-init.$(OBJEXT) -nodist_grub_mkstandalone_OBJECTS = -grub_mkstandalone_OBJECTS = $(am_grub_mkstandalone_OBJECTS) \ - $(nodist_grub_mkstandalone_OBJECTS) -grub_mkstandalone_DEPENDENCIES = $(am__DEPENDENCIES_1) libgrubmods.a \ - libgrubgcry.a libgrubkern.a grub-core/lib/gnulib/libgnu.a \ - $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \ - $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \ - $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) -grub_mkstandalone_LINK = $(CCLD) $(grub_mkstandalone_CFLAGS) $(CFLAGS) \ - $(grub_mkstandalone_LDFLAGS) $(LDFLAGS) -o $@ -am__grub_mount_SOURCES_DIST = util/grub-mount.c \ - grub-core/kern/emu/hostfs.c grub-core/disk/host.c \ - grub-core/osdep/init.c -@COND_GRUB_MOUNT_TRUE@am_grub_mount_OBJECTS = \ -@COND_GRUB_MOUNT_TRUE@ util/grub_mount-grub-mount.$(OBJEXT) \ -@COND_GRUB_MOUNT_TRUE@ grub-core/kern/emu/grub_mount-hostfs.$(OBJEXT) \ -@COND_GRUB_MOUNT_TRUE@ grub-core/disk/grub_mount-host.$(OBJEXT) \ -@COND_GRUB_MOUNT_TRUE@ grub-core/osdep/grub_mount-init.$(OBJEXT) -@COND_GRUB_MOUNT_TRUE@nodist_grub_mount_OBJECTS = \ -@COND_GRUB_MOUNT_TRUE@ grub_mount-grub_fstest_init.$(OBJEXT) -grub_mount_OBJECTS = $(am_grub_mount_OBJECTS) \ - $(nodist_grub_mount_OBJECTS) -@COND_GRUB_MOUNT_TRUE@grub_mount_DEPENDENCIES = libgrubmods.a \ -@COND_GRUB_MOUNT_TRUE@ libgrubgcry.a libgrubkern.a \ -@COND_GRUB_MOUNT_TRUE@ grub-core/lib/gnulib/libgnu.a \ -@COND_GRUB_MOUNT_TRUE@ $(am__DEPENDENCIES_1) \ -@COND_GRUB_MOUNT_TRUE@ $(am__DEPENDENCIES_1) \ -@COND_GRUB_MOUNT_TRUE@ $(am__DEPENDENCIES_1) \ -@COND_GRUB_MOUNT_TRUE@ $(am__DEPENDENCIES_1) \ -@COND_GRUB_MOUNT_TRUE@ $(am__DEPENDENCIES_1) -grub_mount_LINK = $(CCLD) $(grub_mount_CFLAGS) $(CFLAGS) \ - $(grub_mount_LDFLAGS) $(LDFLAGS) -o $@ -am_grub_ofpathname_OBJECTS = \ - util/ieee1275/grub_ofpathname-grub-ofpathname.$(OBJEXT) \ - grub-core/osdep/grub_ofpathname-ofpath.$(OBJEXT) \ - grub-core/osdep/grub_ofpathname-init.$(OBJEXT) -nodist_grub_ofpathname_OBJECTS = -grub_ofpathname_OBJECTS = $(am_grub_ofpathname_OBJECTS) \ - $(nodist_grub_ofpathname_OBJECTS) -grub_ofpathname_DEPENDENCIES = libgrubmods.a libgrubgcry.a \ - libgrubkern.a grub-core/lib/gnulib/libgnu.a \ - $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \ - $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \ - $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) -grub_ofpathname_LINK = $(CCLD) $(grub_ofpathname_CFLAGS) $(CFLAGS) \ - $(grub_ofpathname_LDFLAGS) $(LDFLAGS) -o $@ -am_grub_probe_OBJECTS = util/grub_probe-grub-probe.$(OBJEXT) \ - util/grub_probe-probe.$(OBJEXT) \ - grub-core/osdep/grub_probe-ofpath.$(OBJEXT) \ - grub-core/kern/emu/grub_probe-argp_common.$(OBJEXT) \ - grub-core/osdep/grub_probe-init.$(OBJEXT) -nodist_grub_probe_OBJECTS = -grub_probe_OBJECTS = $(am_grub_probe_OBJECTS) \ - $(nodist_grub_probe_OBJECTS) -grub_probe_DEPENDENCIES = libgrubmods.a libgrubgcry.a libgrubkern.a \ - grub-core/lib/gnulib/libgnu.a $(am__DEPENDENCIES_1) \ - $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \ - $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \ - $(am__DEPENDENCIES_1) -grub_probe_LINK = $(CCLD) $(grub_probe_CFLAGS) $(CFLAGS) \ - $(grub_probe_LDFLAGS) $(LDFLAGS) -o $@ -am_grub_render_label_OBJECTS = \ - util/grub_render_label-grub-render-label.$(OBJEXT) \ - util/grub_render_label-render-label.$(OBJEXT) \ - grub-core/kern/emu/grub_render_label-argp_common.$(OBJEXT) \ - grub-core/kern/emu/grub_render_label-hostfs.$(OBJEXT) \ - grub-core/disk/grub_render_label-host.$(OBJEXT) \ - grub-core/osdep/grub_render_label-init.$(OBJEXT) -nodist_grub_render_label_OBJECTS = -grub_render_label_OBJECTS = $(am_grub_render_label_OBJECTS) \ - $(nodist_grub_render_label_OBJECTS) -grub_render_label_DEPENDENCIES = libgrubmods.a libgrubgcry.a \ - libgrubkern.a grub-core/lib/gnulib/libgnu.a \ - $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \ - $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \ - $(am__DEPENDENCIES_1) -grub_render_label_LINK = $(CCLD) $(grub_render_label_CFLAGS) $(CFLAGS) \ - $(grub_render_label_LDFLAGS) $(LDFLAGS) -o $@ -am_grub_script_check_OBJECTS = \ - util/grub_script_check-grub-script-check.$(OBJEXT) \ - grub-core/kern/emu/grub_script_check-argp_common.$(OBJEXT) \ - grub-core/osdep/grub_script_check-init.$(OBJEXT) -nodist_grub_script_check_OBJECTS = -grub_script_check_OBJECTS = $(am_grub_script_check_OBJECTS) \ - $(nodist_grub_script_check_OBJECTS) -grub_script_check_DEPENDENCIES = libgrubmods.a libgrubgcry.a \ - libgrubkern.a grub-core/lib/gnulib/libgnu.a \ - $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \ - $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \ - $(am__DEPENDENCIES_1) -grub_script_check_LINK = $(CCLD) $(grub_script_check_CFLAGS) $(CFLAGS) \ - $(grub_script_check_LDFLAGS) $(LDFLAGS) -o $@ -am_grub_sparc64_setup_OBJECTS = \ - util/grub_sparc64_setup-grub-setup.$(OBJEXT) \ - util/grub_sparc64_setup-setup_sparc.$(OBJEXT) \ - grub-core/kern/emu/grub_sparc64_setup-argp_common.$(OBJEXT) \ - grub-core/lib/grub_sparc64_setup-reed_solomon.$(OBJEXT) \ - grub-core/osdep/grub_sparc64_setup-ofpath.$(OBJEXT) \ - grub-core/osdep/grub_sparc64_setup-blocklist.$(OBJEXT) \ - grub-core/osdep/grub_sparc64_setup-init.$(OBJEXT) -nodist_grub_sparc64_setup_OBJECTS = -grub_sparc64_setup_OBJECTS = $(am_grub_sparc64_setup_OBJECTS) \ - $(nodist_grub_sparc64_setup_OBJECTS) -grub_sparc64_setup_DEPENDENCIES = libgrubmods.a libgrubkern.a \ - libgrubgcry.a grub-core/lib/gnulib/libgnu.a \ - $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \ - $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \ - $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) -grub_sparc64_setup_LINK = $(CCLD) $(grub_sparc64_setup_CFLAGS) \ - $(CFLAGS) $(grub_sparc64_setup_LDFLAGS) $(LDFLAGS) -o $@ -am_grub_syslinux2cfg_OBJECTS = \ - util/grub_syslinux2cfg-grub-syslinux2cfg.$(OBJEXT) \ - grub-core/lib/grub_syslinux2cfg-syslinux_parse.$(OBJEXT) \ - grub-core/lib/grub_syslinux2cfg-getline.$(OBJEXT) \ - grub-core/osdep/grub_syslinux2cfg-init.$(OBJEXT) \ - grub-core/kern/emu/grub_syslinux2cfg-hostfs.$(OBJEXT) \ - grub-core/disk/grub_syslinux2cfg-host.$(OBJEXT) \ - grub-core/kern/emu/grub_syslinux2cfg-argp_common.$(OBJEXT) -nodist_grub_syslinux2cfg_OBJECTS = -grub_syslinux2cfg_OBJECTS = $(am_grub_syslinux2cfg_OBJECTS) \ - $(nodist_grub_syslinux2cfg_OBJECTS) -grub_syslinux2cfg_DEPENDENCIES = libgrubmods.a libgrubgcry.a \ - libgrubkern.a grub-core/lib/gnulib/libgnu.a \ - $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \ - $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \ - $(am__DEPENDENCIES_1) -grub_syslinux2cfg_LINK = $(CCLD) $(grub_syslinux2cfg_CFLAGS) $(CFLAGS) \ - $(grub_syslinux2cfg_LDFLAGS) $(LDFLAGS) -o $@ -am_printf_test_OBJECTS = tests/printf_test-printf_unit_test.$(OBJEXT) \ - tests/lib/printf_test-unit_test.$(OBJEXT) \ - grub-core/kern/printf_test-list.$(OBJEXT) \ - grub-core/kern/printf_test-misc.$(OBJEXT) \ - grub-core/tests/lib/printf_test-test.$(OBJEXT) -nodist_printf_test_OBJECTS = -printf_test_OBJECTS = $(am_printf_test_OBJECTS) \ - $(nodist_printf_test_OBJECTS) -printf_test_DEPENDENCIES = libgrubmods.a libgrubgcry.a libgrubkern.a \ - grub-core/lib/gnulib/libgnu.a $(am__DEPENDENCIES_1) \ - $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \ - $(am__DEPENDENCIES_1) -printf_test_LINK = $(CCLD) $(printf_test_CFLAGS) $(CFLAGS) \ - $(printf_test_LDFLAGS) $(LDFLAGS) -o $@ -am__priority_queue_unit_test_SOURCES_DIST = \ - tests/priority_queue_unit_test.cc tests/lib/unit_test.c \ - grub-core/kern/list.c grub-core/kern/misc.c \ - grub-core/tests/lib/test.c grub-core/lib/priority_queue.c -@COND_HAVE_CXX_TRUE@am_priority_queue_unit_test_OBJECTS = tests/priority_queue_unit_test-priority_queue_unit_test.$(OBJEXT) \ -@COND_HAVE_CXX_TRUE@ tests/lib/priority_queue_unit_test-unit_test.$(OBJEXT) \ -@COND_HAVE_CXX_TRUE@ grub-core/kern/priority_queue_unit_test-list.$(OBJEXT) \ -@COND_HAVE_CXX_TRUE@ grub-core/kern/priority_queue_unit_test-misc.$(OBJEXT) \ -@COND_HAVE_CXX_TRUE@ grub-core/tests/lib/priority_queue_unit_test-test.$(OBJEXT) \ -@COND_HAVE_CXX_TRUE@ grub-core/lib/priority_queue_unit_test-priority_queue.$(OBJEXT) -nodist_priority_queue_unit_test_OBJECTS = -priority_queue_unit_test_OBJECTS = \ - $(am_priority_queue_unit_test_OBJECTS) \ - $(nodist_priority_queue_unit_test_OBJECTS) -@COND_HAVE_CXX_TRUE@priority_queue_unit_test_DEPENDENCIES = \ -@COND_HAVE_CXX_TRUE@ libgrubmods.a libgrubgcry.a libgrubkern.a \ -@COND_HAVE_CXX_TRUE@ grub-core/lib/gnulib/libgnu.a \ -@COND_HAVE_CXX_TRUE@ $(am__DEPENDENCIES_1) \ -@COND_HAVE_CXX_TRUE@ $(am__DEPENDENCIES_1) \ -@COND_HAVE_CXX_TRUE@ $(am__DEPENDENCIES_1) \ -@COND_HAVE_CXX_TRUE@ $(am__DEPENDENCIES_1) -priority_queue_unit_test_LINK = $(CXXLD) $(AM_CXXFLAGS) $(CXXFLAGS) \ - $(priority_queue_unit_test_LDFLAGS) $(LDFLAGS) -o $@ -am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; -am__vpath_adj = case $$p in \ - $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \ - *) f=$$p;; \ - esac; -am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`; -am__install_max = 40 -am__nobase_strip_setup = \ - srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'` -am__nobase_strip = \ - for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||" -am__nobase_list = $(am__nobase_strip_setup); \ - for p in $$list; do echo "$$p $$p"; done | \ - sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \ - $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \ - if (++n[$$2] == $(am__install_max)) \ - { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \ - END { for (dir in files) print dir, files[dir] }' -am__base_list = \ - sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \ - sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g' -am__uninstall_files_from_dir = { \ - test -z "$$files" \ - || { test ! -d "$$dir" && test ! -f "$$dir" && test ! -r "$$dir"; } \ - || { echo " ( cd '$$dir' && rm -f" $$files ")"; \ - $(am__cd) "$$dir" && rm -f $$files; }; \ - } -SCRIPTS = $(bin_SCRIPTS) $(grubconf_SCRIPTS) $(noinst_SCRIPTS) \ - $(platform_SCRIPTS) $(sbin_SCRIPTS) -AM_V_P = $(am__v_P_@AM_V@) -am__v_P_ = $(am__v_P_@AM_DEFAULT_V@) -am__v_P_0 = false -am__v_P_1 = : -AM_V_GEN = $(am__v_GEN_@AM_V@) -am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@) -am__v_GEN_0 = @echo " GEN " $@; -am__v_GEN_1 = -AM_V_at = $(am__v_at_@AM_V@) -am__v_at_ = $(am__v_at_@AM_DEFAULT_V@) -am__v_at_0 = @ -am__v_at_1 = -DEFAULT_INCLUDES = -I.@am__isrc@ -depcomp = $(SHELL) $(top_srcdir)/build-aux/depcomp -am__depfiles_maybe = depfiles -am__mv = mv -f -AM_V_lt = $(am__v_lt_@AM_V@) -am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@) -am__v_lt_0 = --silent -am__v_lt_1 = -COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ - $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -AM_V_CC = $(am__v_CC_@AM_V@) -am__v_CC_ = $(am__v_CC_@AM_DEFAULT_V@) -am__v_CC_0 = @echo " CC " $@; -am__v_CC_1 = -CCLD = $(CC) -LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@ -AM_V_CCLD = $(am__v_CCLD_@AM_V@) -am__v_CCLD_ = $(am__v_CCLD_@AM_DEFAULT_V@) -am__v_CCLD_0 = @echo " CCLD " $@; -am__v_CCLD_1 = -CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ - $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -AM_V_CXX = $(am__v_CXX_@AM_V@) -am__v_CXX_ = $(am__v_CXX_@AM_DEFAULT_V@) -am__v_CXX_0 = @echo " CXX " $@; -am__v_CXX_1 = -CXXLD = $(CXX) -CXXLINK = $(CXXLD) $(AM_CXXFLAGS) $(CXXFLAGS) $(AM_LDFLAGS) $(LDFLAGS) \ - -o $@ -AM_V_CXXLD = $(am__v_CXXLD_@AM_V@) -am__v_CXXLD_ = $(am__v_CXXLD_@AM_DEFAULT_V@) -am__v_CXXLD_0 = @echo " CXXLD " $@; -am__v_CXXLD_1 = -SOURCES = $(libgrubgcry_a_SOURCES) $(nodist_libgrubgcry_a_SOURCES) \ - $(libgrubkern_a_SOURCES) $(nodist_libgrubkern_a_SOURCES) \ - $(libgrubmods_a_SOURCES) $(nodist_libgrubmods_a_SOURCES) \ - $(cmp_test_SOURCES) $(nodist_cmp_test_SOURCES) \ - $(date_test_SOURCES) $(nodist_date_test_SOURCES) \ - $(example_unit_test_SOURCES) \ - $(nodist_example_unit_test_SOURCES) $(grub_bios_setup_SOURCES) \ - $(nodist_grub_bios_setup_SOURCES) $(grub_editenv_SOURCES) \ - $(nodist_grub_editenv_SOURCES) $(grub_file_SOURCES) \ - $(nodist_grub_file_SOURCES) $(grub_fstest_SOURCES) \ - $(nodist_grub_fstest_SOURCES) $(grub_glue_efi_SOURCES) \ - $(nodist_grub_glue_efi_SOURCES) $(grub_install_SOURCES) \ - $(nodist_grub_install_SOURCES) $(grub_macbless_SOURCES) \ - $(nodist_grub_macbless_SOURCES) $(grub_macho2img_SOURCES) \ - $(nodist_grub_macho2img_SOURCES) $(grub_menulst2cfg_SOURCES) \ - $(nodist_grub_menulst2cfg_SOURCES) $(grub_mkfont_SOURCES) \ - $(nodist_grub_mkfont_SOURCES) $(grub_mkimage_SOURCES) \ - $(nodist_grub_mkimage_SOURCES) $(grub_mklayout_SOURCES) \ - $(nodist_grub_mklayout_SOURCES) $(grub_mknetdir_SOURCES) \ - $(nodist_grub_mknetdir_SOURCES) \ - $(grub_mkpasswd_pbkdf2_SOURCES) \ - $(nodist_grub_mkpasswd_pbkdf2_SOURCES) \ - $(grub_mkrelpath_SOURCES) $(nodist_grub_mkrelpath_SOURCES) \ - $(grub_mkrescue_SOURCES) $(nodist_grub_mkrescue_SOURCES) \ - $(grub_mkstandalone_SOURCES) \ - $(nodist_grub_mkstandalone_SOURCES) $(grub_mount_SOURCES) \ - $(nodist_grub_mount_SOURCES) $(grub_ofpathname_SOURCES) \ - $(nodist_grub_ofpathname_SOURCES) $(grub_probe_SOURCES) \ - $(nodist_grub_probe_SOURCES) $(grub_render_label_SOURCES) \ - $(nodist_grub_render_label_SOURCES) \ - $(grub_script_check_SOURCES) \ - $(nodist_grub_script_check_SOURCES) \ - $(grub_sparc64_setup_SOURCES) \ - $(nodist_grub_sparc64_setup_SOURCES) \ - $(grub_syslinux2cfg_SOURCES) \ - $(nodist_grub_syslinux2cfg_SOURCES) $(printf_test_SOURCES) \ - $(nodist_printf_test_SOURCES) \ - $(priority_queue_unit_test_SOURCES) \ - $(nodist_priority_queue_unit_test_SOURCES) -DIST_SOURCES = $(libgrubgcry_a_SOURCES) $(libgrubkern_a_SOURCES) \ - $(libgrubmods_a_SOURCES) $(cmp_test_SOURCES) \ - $(date_test_SOURCES) $(example_unit_test_SOURCES) \ - $(grub_bios_setup_SOURCES) $(grub_editenv_SOURCES) \ - $(grub_file_SOURCES) $(grub_fstest_SOURCES) \ - $(grub_glue_efi_SOURCES) $(grub_install_SOURCES) \ - $(grub_macbless_SOURCES) $(am__grub_macho2img_SOURCES_DIST) \ - $(grub_menulst2cfg_SOURCES) $(am__grub_mkfont_SOURCES_DIST) \ - $(grub_mkimage_SOURCES) $(grub_mklayout_SOURCES) \ - $(grub_mknetdir_SOURCES) $(grub_mkpasswd_pbkdf2_SOURCES) \ - $(grub_mkrelpath_SOURCES) $(am__grub_mkrescue_SOURCES_DIST) \ - $(grub_mkstandalone_SOURCES) $(am__grub_mount_SOURCES_DIST) \ - $(grub_ofpathname_SOURCES) $(grub_probe_SOURCES) \ - $(grub_render_label_SOURCES) $(grub_script_check_SOURCES) \ - $(grub_sparc64_setup_SOURCES) $(grub_syslinux2cfg_SOURCES) \ - $(printf_test_SOURCES) \ - $(am__priority_queue_unit_test_SOURCES_DIST) -RECURSIVE_TARGETS = all-recursive check-recursive cscopelist-recursive \ - ctags-recursive dvi-recursive html-recursive info-recursive \ - install-data-recursive install-dvi-recursive \ - install-exec-recursive install-html-recursive \ - install-info-recursive install-pdf-recursive \ - install-ps-recursive install-recursive installcheck-recursive \ - installdirs-recursive pdf-recursive ps-recursive \ - tags-recursive uninstall-recursive -am__can_run_installinfo = \ - case $$AM_UPDATE_INFO_DIR in \ - n|no|NO) false;; \ - *) (install-info --version) >/dev/null 2>&1;; \ - esac -man1dir = $(mandir)/man1 -man8dir = $(mandir)/man8 -NROFF = nroff -MANS = $(man_MANS) -am__dist_noinst_DATA_DIST = grub-core/kern/disk_common.c \ - grub-core/osdep/unix/relpath.c grub-core/osdep/aros/relpath.c \ - grub-core/osdep/windows/relpath.c \ - grub-core/lib/libgcrypt-grub/cipher/ChangeLog \ - grub-core/osdep/aros/config.c grub-core/osdep/windows/config.c \ - grub-core/osdep/unix/config.c util/grub-mkimagexx.c \ - util/setup.c grub-core/osdep/generic/blocklist.c \ - grub-core/osdep/linux/blocklist.c \ - grub-core/osdep/windows/blocklist.c \ - grub-core/osdep/unix/compress.c \ - grub-core/osdep/basic/compress.c \ - grub-core/osdep/linux/platform.c \ - grub-core/osdep/windows/platform.c \ - grub-core/osdep/basic/platform.c \ - grub-core/osdep/basic/no_platform.c \ - grub-core/osdep/unix/platform.c util/grub.d/00_header.in \ - util/grub.d/10_windows.in util/grub.d/10_hurd.in \ - util/grub.d/10_kfreebsd.in util/grub.d/10_illumos.in \ - util/grub.d/10_netbsd.in util/grub.d/10_linux.in \ - util/grub.d/10_xnu.in util/grub.d/20_linux_xen.in \ - util/grub.d/30_os-prober.in util/grub.d/40_custom.in \ - util/grub.d/41_custom.in util/grub-mkconfig.in \ - util/grub-set-default.in util/grub-reboot.in \ - util/grub-mkconfig_lib.in util/grub-kbdcomp.in \ - tests/util/grub-shell.in tests/util/grub-shell-tester.in \ - tests/util/grub-fs-tester.in tests/ext234_test.in \ - tests/squashfs_test.in tests/iso9660_test.in \ - tests/hfsplus_test.in tests/ntfs_test.in \ - tests/reiserfs_test.in tests/fat_test.in tests/minixfs_test.in \ - tests/xfs_test.in tests/f2fs_test.in tests/nilfs2_test.in \ - tests/romfs_test.in tests/exfat_test.in tests/tar_test.in \ - tests/udf_test.in tests/hfs_test.in tests/jfs_test.in \ - tests/btrfs_test.in tests/zfs_test.in tests/cpio_test.in \ - tests/example_scripted_test.in tests/gettext_strings_test.in \ - tests/pata_test.in tests/ahci_test.in tests/uhci_test.in \ - tests/ohci_test.in tests/ehci_test.in \ - tests/example_grub_script_test.in tests/grub_script_eval.in \ - tests/grub_script_test.in tests/grub_script_echo1.in \ - tests/grub_script_leading_whitespace.in \ - tests/grub_script_echo_keywords.in tests/grub_script_vars1.in \ - tests/grub_script_for1.in tests/grub_script_while1.in \ - tests/grub_script_if.in tests/grub_script_blanklines.in \ - tests/grub_script_final_semicolon.in \ - tests/grub_script_dollar.in tests/grub_script_comments.in \ - tests/grub_script_functions.in tests/grub_script_break.in \ - tests/grub_script_continue.in tests/grub_script_shift.in \ - tests/grub_script_blockarg.in tests/grub_script_setparams.in \ - tests/grub_script_return.in tests/grub_cmd_regexp.in \ - tests/grub_cmd_date.in tests/grub_cmd_set_date.in \ - tests/grub_cmd_sleep.in tests/grub_script_expansion.in \ - tests/grub_script_not.in tests/grub_script_no_commands.in \ - tests/partmap_test.in tests/hddboot_test.in \ - tests/fddboot_test.in tests/cdboot_test.in \ - tests/netboot_test.in tests/pseries_test.in \ - tests/core_compress_test.in tests/xzcompress_test.in \ - tests/gzcompress_test.in tests/lzocompress_test.in \ - tests/grub_cmd_echo.in tests/help_test.in \ - tests/grub_script_gettext.in tests/grub_script_escape_comma.in \ - tests/grub_script_strcmp.in tests/test_sha512sum.in \ - tests/test_unset.in tests/grub_func_test.in \ - tests/grub_cmd_tr.in tests/file_filter_test.in \ - tests/grub_cmd_test.in tests/syslinux_test.in -DATA = $(dist_grubconf_DATA) $(dist_noinst_DATA) $(noinst_DATA) \ - $(pkgdata_DATA) $(platform_DATA) $(starfield_DATA) -HEADERS = $(nodist_platform_HEADERS) -RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive \ - distclean-recursive maintainer-clean-recursive -am__recursive_targets = \ - $(RECURSIVE_TARGETS) \ - $(RECURSIVE_CLEAN_TARGETS) \ - $(am__extra_recursive_targets) -AM_RECURSIVE_TARGETS = $(am__recursive_targets:-recursive=) TAGS CTAGS \ - cscope check recheck distdir dist dist-all distcheck -am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) \ - $(LISP)config-util.h.in -# Read a list of newline-separated strings from the standard input, -# and print each of them once, without duplicates. Input order is -# *not* preserved. -am__uniquify_input = $(AWK) '\ - BEGIN { nonempty = 0; } \ - { items[$$0] = 1; nonempty = 1; } \ - END { if (nonempty) { for (i in items) print i; }; } \ -' -# Make sure the list of sources is unique. This is necessary because, -# e.g., the same source file might be shared among _SOURCES variables -# for different programs/libraries. -am__define_uniq_tagged_files = \ - list='$(am__tagged_files)'; \ - unique=`for i in $$list; do \ - if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ - done | $(am__uniquify_input)` -ETAGS = etags -CTAGS = ctags -CSCOPE = cscope -am__tty_colors_dummy = \ - mgn= red= grn= lgn= blu= brg= std=; \ - am__color_tests=no -am__tty_colors = { \ - $(am__tty_colors_dummy); \ - if test "X$(AM_COLOR_TESTS)" = Xno; then \ - am__color_tests=no; \ - elif test "X$(AM_COLOR_TESTS)" = Xalways; then \ - am__color_tests=yes; \ - elif test "X$$TERM" != Xdumb && { test -t 1; } 2>/dev/null; then \ - am__color_tests=yes; \ - fi; \ - if test $$am__color_tests = yes; then \ - red=''; \ - grn=''; \ - lgn=''; \ - blu=''; \ - mgn=''; \ - brg=''; \ - std=''; \ - fi; \ -} -am__recheck_rx = ^[ ]*:recheck:[ ]* -am__global_test_result_rx = ^[ ]*:global-test-result:[ ]* -am__copy_in_global_log_rx = ^[ ]*:copy-in-global-log:[ ]* -# A command that, given a newline-separated list of test names on the -# standard input, print the name of the tests that are to be re-run -# upon "make recheck". -am__list_recheck_tests = $(AWK) '{ \ - recheck = 1; \ - while ((rc = (getline line < ($$0 ".trs"))) != 0) \ - { \ - if (rc < 0) \ - { \ - if ((getline line2 < ($$0 ".log")) < 0) \ - recheck = 0; \ - break; \ - } \ - else if (line ~ /$(am__recheck_rx)[nN][Oo]/) \ - { \ - recheck = 0; \ - break; \ - } \ - else if (line ~ /$(am__recheck_rx)[yY][eE][sS]/) \ - { \ - break; \ - } \ - }; \ - if (recheck) \ - print $$0; \ - close ($$0 ".trs"); \ - close ($$0 ".log"); \ -}' -# A command that, given a newline-separated list of test names on the -# standard input, create the global log from their .trs and .log files. -am__create_global_log = $(AWK) ' \ -function fatal(msg) \ -{ \ - print "fatal: making $@: " msg | "cat >&2"; \ - exit 1; \ -} \ -function rst_section(header) \ -{ \ - print header; \ - len = length(header); \ - for (i = 1; i <= len; i = i + 1) \ - printf "="; \ - printf "\n\n"; \ -} \ -{ \ - copy_in_global_log = 1; \ - global_test_result = "RUN"; \ - while ((rc = (getline line < ($$0 ".trs"))) != 0) \ - { \ - if (rc < 0) \ - fatal("failed to read from " $$0 ".trs"); \ - if (line ~ /$(am__global_test_result_rx)/) \ - { \ - sub("$(am__global_test_result_rx)", "", line); \ - sub("[ ]*$$", "", line); \ - global_test_result = line; \ - } \ - else if (line ~ /$(am__copy_in_global_log_rx)[nN][oO]/) \ - copy_in_global_log = 0; \ - }; \ - if (copy_in_global_log) \ - { \ - rst_section(global_test_result ": " $$0); \ - while ((rc = (getline line < ($$0 ".log"))) != 0) \ - { \ - if (rc < 0) \ - fatal("failed to read from " $$0 ".log"); \ - print line; \ - }; \ - printf "\n"; \ - }; \ - close ($$0 ".trs"); \ - close ($$0 ".log"); \ -}' -# Restructured Text title. -am__rst_title = { sed 's/.*/ & /;h;s/./=/g;p;x;s/ *$$//;p;g' && echo; } -# Solaris 10 'make', and several other traditional 'make' implementations, -# pass "-e" to $(SHELL), and POSIX 2008 even requires this. Work around it -# by disabling -e (using the XSI extension "set +e") if it's set. -am__sh_e_setup = case $$- in *e*) set +e;; esac -# Default flags passed to test drivers. -am__common_driver_flags = \ - --color-tests "$$am__color_tests" \ - --enable-hard-errors "$$am__enable_hard_errors" \ - --expect-failure "$$am__expect_failure" -# To be inserted before the command running the test. Creates the -# directory for the log if needed. Stores in $dir the directory -# containing $f, in $tst the test, in $log the log. Executes the -# developer- defined test setup AM_TESTS_ENVIRONMENT (if any), and -# passes TESTS_ENVIRONMENT. Set up options for the wrapper that -# will run the test scripts (or their associated LOG_COMPILER, if -# thy have one). -am__check_pre = \ -$(am__sh_e_setup); \ -$(am__vpath_adj_setup) $(am__vpath_adj) \ -$(am__tty_colors); \ -srcdir=$(srcdir); export srcdir; \ -case "$@" in \ - */*) am__odir=`echo "./$@" | sed 's|/[^/]*$$||'`;; \ - *) am__odir=.;; \ -esac; \ -test "x$$am__odir" = x"." || test -d "$$am__odir" \ - || $(MKDIR_P) "$$am__odir" || exit $$?; \ -if test -f "./$$f"; then dir=./; \ -elif test -f "$$f"; then dir=; \ -else dir="$(srcdir)/"; fi; \ -tst=$$dir$$f; log='$@'; \ -if test -n '$(DISABLE_HARD_ERRORS)'; then \ - am__enable_hard_errors=no; \ -else \ - am__enable_hard_errors=yes; \ -fi; \ -case " $(XFAIL_TESTS) " in \ - *[\ \ ]$$f[\ \ ]* | *[\ \ ]$$dir$$f[\ \ ]*) \ - am__expect_failure=yes;; \ - *) \ - am__expect_failure=no;; \ -esac; \ -$(AM_TESTS_ENVIRONMENT) $(TESTS_ENVIRONMENT) -# A shell command to get the names of the tests scripts with any registered -# extension removed (i.e., equivalently, the names of the test logs, with -# the '.log' extension removed). The result is saved in the shell variable -# '$bases'. This honors runtime overriding of TESTS and TEST_LOGS. Sadly, -# we cannot use something simpler, involving e.g., "$(TEST_LOGS:.log=)", -# since that might cause problem with VPATH rewrites for suffix-less tests. -# See also 'test-harness-vpath-rewrite.sh' and 'test-trs-basic.sh'. -am__set_TESTS_bases = \ - bases='$(TEST_LOGS)'; \ - bases=`for i in $$bases; do echo $$i; done | sed 's/\.log$$//'`; \ - bases=`echo $$bases` -RECHECK_LOGS = $(TEST_LOGS) -TEST_SUITE_LOG = test-suite.log -TEST_EXTENSIONS = @EXEEXT@ .test -LOG_DRIVER = $(SHELL) $(top_srcdir)/build-aux/test-driver -LOG_COMPILE = $(LOG_COMPILER) $(AM_LOG_FLAGS) $(LOG_FLAGS) -am__set_b = \ - case '$@' in \ - */*) \ - case '$*' in \ - */*) b='$*';; \ - *) b=`echo '$@' | sed 's/\.log$$//'`; \ - esac;; \ - *) \ - b='$*';; \ - esac -am__test_logs1 = $(TESTS:=.log) -am__test_logs2 = $(am__test_logs1:@EXEEXT@.log=.log) -TEST_LOGS = $(am__test_logs2:.test.log=.log) -TEST_LOG_DRIVER = $(SHELL) $(top_srcdir)/build-aux/test-driver -TEST_LOG_COMPILE = $(TEST_LOG_COMPILER) $(AM_TEST_LOG_FLAGS) \ - $(TEST_LOG_FLAGS) -DIST_SUBDIRS = grub-core/lib/gnulib . grub-core po docs \ - util/bash-completion.d -am__DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.util.am \ - $(srcdir)/config-util.h.in $(srcdir)/config.h.in \ - $(srcdir)/stamp-h.in $(top_srcdir)/build-aux/compile \ - $(top_srcdir)/build-aux/config.guess \ - $(top_srcdir)/build-aux/config.rpath \ - $(top_srcdir)/build-aux/config.sub \ - $(top_srcdir)/build-aux/depcomp \ - $(top_srcdir)/build-aux/install-sh \ - $(top_srcdir)/build-aux/missing \ - $(top_srcdir)/build-aux/test-driver \ - $(top_srcdir)/conf/Makefile.common \ - $(top_srcdir)/conf/Makefile.extra-dist ABOUT-NLS AUTHORS \ - COPYING ChangeLog INSTALL NEWS README THANKS TODO \ - build-aux/compile build-aux/config.guess \ - build-aux/config.rpath build-aux/config.sub build-aux/depcomp \ - build-aux/install-sh build-aux/missing -DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) -distdir = $(PACKAGE)-$(VERSION) -top_distdir = $(distdir) -am__remove_distdir = \ - if test -d "$(distdir)"; then \ - find "$(distdir)" -type d ! -perm -200 -exec chmod u+w {} ';' \ - && rm -rf "$(distdir)" \ - || { sleep 5 && rm -rf "$(distdir)"; }; \ - else :; fi -am__post_remove_distdir = $(am__remove_distdir) -am__relativize = \ - dir0=`pwd`; \ - sed_first='s,^\([^/]*\)/.*$$,\1,'; \ - sed_rest='s,^[^/]*/*,,'; \ - sed_last='s,^.*/\([^/]*\)$$,\1,'; \ - sed_butlast='s,/*[^/]*$$,,'; \ - while test -n "$$dir1"; do \ - first=`echo "$$dir1" | sed -e "$$sed_first"`; \ - if test "$$first" != "."; then \ - if test "$$first" = ".."; then \ - dir2=`echo "$$dir0" | sed -e "$$sed_last"`/"$$dir2"; \ - dir0=`echo "$$dir0" | sed -e "$$sed_butlast"`; \ - else \ - first2=`echo "$$dir2" | sed -e "$$sed_first"`; \ - if test "$$first2" = "$$first"; then \ - dir2=`echo "$$dir2" | sed -e "$$sed_rest"`; \ - else \ - dir2="../$$dir2"; \ - fi; \ - dir0="$$dir0"/"$$first"; \ - fi; \ - fi; \ - dir1=`echo "$$dir1" | sed -e "$$sed_rest"`; \ - done; \ - reldir="$$dir2" -DIST_ARCHIVES = $(distdir).tar.gz -GZIP_ENV = --best -DIST_TARGETS = dist-gzip -distuninstallcheck_listfiles = find . -type f -print -am__distuninstallcheck_listfiles = $(distuninstallcheck_listfiles) \ - | sed 's|^\./|$(prefix)/|' | grep -v '$(infodir)/dir$$' -distcleancheck_listfiles = find . -type f -print -ACLOCAL = @ACLOCAL@ -ALLOCA = @ALLOCA@ -ALLOCA_H = @ALLOCA_H@ -AMTAR = @AMTAR@ -AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ -APPLE_UNIVERSAL_BUILD = @APPLE_UNIVERSAL_BUILD@ -AR = @AR@ -ARFLAGS = @ARFLAGS@ -AUTOCONF = @AUTOCONF@ -AUTOHEADER = @AUTOHEADER@ -AUTOMAKE = @AUTOMAKE@ -AWK = @AWK@ -BITSIZEOF_PTRDIFF_T = @BITSIZEOF_PTRDIFF_T@ -BITSIZEOF_SIG_ATOMIC_T = @BITSIZEOF_SIG_ATOMIC_T@ -BITSIZEOF_SIZE_T = @BITSIZEOF_SIZE_T@ -BITSIZEOF_WCHAR_T = @BITSIZEOF_WCHAR_T@ -BITSIZEOF_WINT_T = @BITSIZEOF_WINT_T@ -BOOT_TIME_STATS = @BOOT_TIME_STATS@ -BSS_START_SYMBOL = @BSS_START_SYMBOL@ -BUILD_CC = @BUILD_CC@ -BUILD_CFLAGS = @BUILD_CFLAGS@ -BUILD_CPPFLAGS = @BUILD_CPPFLAGS@ $(CPPFLAGS_DEFAULT) -BUILD_EXEEXT = @BUILD_EXEEXT@ -BUILD_FREETYPE_CFLAGS = @BUILD_FREETYPE_CFLAGS@ -BUILD_FREETYPE_LIBS = @BUILD_FREETYPE_LIBS@ -BUILD_LDFLAGS = @BUILD_LDFLAGS@ -BUILD_LIBM = @BUILD_LIBM@ -BUILD_SHEBANG = @BUILD_SHEBANG@ -BUILD_SIZEOF_LONG = @BUILD_SIZEOF_LONG@ -BUILD_SIZEOF_VOID_P = @BUILD_SIZEOF_VOID_P@ -BUILD_WORDS_BIGENDIAN = @BUILD_WORDS_BIGENDIAN@ -CC = @CC@ -CCAS = @CCAS@ -CCASDEPMODE = @CCASDEPMODE@ -CCASFLAGS = @CCASFLAGS@ -CCDEPMODE = @CCDEPMODE@ -CFLAGS = @CFLAGS@ -CMP = @CMP@ -CPP = @CPP@ -CPPFLAGS = @CPPFLAGS@ -CXX = @CXX@ -CXXDEPMODE = @CXXDEPMODE@ -CXXFLAGS = @CXXFLAGS@ -CYGPATH_W = @CYGPATH_W@ -DEFS = @DEFS@ -DEPDIR = .deps-util -DISK_CACHE_STATS = @DISK_CACHE_STATS@ -DJVU_FONT_SOURCE = @DJVU_FONT_SOURCE@ -ECHO_C = @ECHO_C@ -ECHO_N = @ECHO_N@ -ECHO_T = @ECHO_T@ -EFIEMU64_LINK_FORMAT = @EFIEMU64_LINK_FORMAT@ -EGREP = @EGREP@ -EMULTIHOP_HIDDEN = @EMULTIHOP_HIDDEN@ -EMULTIHOP_VALUE = @EMULTIHOP_VALUE@ -END_SYMBOL = @END_SYMBOL@ -ENOLINK_HIDDEN = @ENOLINK_HIDDEN@ -ENOLINK_VALUE = @ENOLINK_VALUE@ -EOVERFLOW_HIDDEN = @EOVERFLOW_HIDDEN@ -EOVERFLOW_VALUE = @EOVERFLOW_VALUE@ -ERRNO_H = @ERRNO_H@ -EXEEXT = @EXEEXT@ -FLOAT_H = @FLOAT_H@ -FNMATCH_H = @FNMATCH_H@ -FONT_SOURCE = @FONT_SOURCE@ -FREETYPE_CFLAGS = @FREETYPE_CFLAGS@ -FREETYPE_LIBS = @FREETYPE_LIBS@ -GETOPT_CDEFS_H = @GETOPT_CDEFS_H@ -GETOPT_H = @GETOPT_H@ -GETTEXT_MACRO_VERSION = @GETTEXT_MACRO_VERSION@ -GLIBC21 = @GLIBC21@ -GMSGFMT = @GMSGFMT@ -GMSGFMT_015 = @GMSGFMT_015@ -GNULIB_ALPHASORT = @GNULIB_ALPHASORT@ -GNULIB_ATOLL = @GNULIB_ATOLL@ -GNULIB_BTOWC = @GNULIB_BTOWC@ -GNULIB_CALLOC_POSIX = @GNULIB_CALLOC_POSIX@ -GNULIB_CANONICALIZE_FILE_NAME = @GNULIB_CANONICALIZE_FILE_NAME@ -GNULIB_CHDIR = @GNULIB_CHDIR@ -GNULIB_CHOWN = @GNULIB_CHOWN@ -GNULIB_CLOSE = @GNULIB_CLOSE@ -GNULIB_CLOSEDIR = @GNULIB_CLOSEDIR@ -GNULIB_CTIME = @GNULIB_CTIME@ -GNULIB_DIRFD = @GNULIB_DIRFD@ -GNULIB_DPRINTF = @GNULIB_DPRINTF@ -GNULIB_DUP = @GNULIB_DUP@ -GNULIB_DUP2 = @GNULIB_DUP2@ -GNULIB_DUP3 = @GNULIB_DUP3@ -GNULIB_DUPLOCALE = @GNULIB_DUPLOCALE@ -GNULIB_ENVIRON = @GNULIB_ENVIRON@ -GNULIB_EUIDACCESS = @GNULIB_EUIDACCESS@ -GNULIB_EXPLICIT_BZERO = @GNULIB_EXPLICIT_BZERO@ -GNULIB_FACCESSAT = @GNULIB_FACCESSAT@ -GNULIB_FCHDIR = @GNULIB_FCHDIR@ -GNULIB_FCHMODAT = @GNULIB_FCHMODAT@ -GNULIB_FCHOWNAT = @GNULIB_FCHOWNAT@ -GNULIB_FCLOSE = @GNULIB_FCLOSE@ -GNULIB_FCNTL = @GNULIB_FCNTL@ -GNULIB_FDATASYNC = @GNULIB_FDATASYNC@ -GNULIB_FDOPEN = @GNULIB_FDOPEN@ -GNULIB_FDOPENDIR = @GNULIB_FDOPENDIR@ -GNULIB_FFLUSH = @GNULIB_FFLUSH@ -GNULIB_FFS = @GNULIB_FFS@ -GNULIB_FFSL = @GNULIB_FFSL@ -GNULIB_FFSLL = @GNULIB_FFSLL@ -GNULIB_FGETC = @GNULIB_FGETC@ -GNULIB_FGETS = @GNULIB_FGETS@ -GNULIB_FNMATCH = @GNULIB_FNMATCH@ -GNULIB_FOPEN = @GNULIB_FOPEN@ -GNULIB_FPRINTF = @GNULIB_FPRINTF@ -GNULIB_FPRINTF_POSIX = @GNULIB_FPRINTF_POSIX@ -GNULIB_FPURGE = @GNULIB_FPURGE@ -GNULIB_FPUTC = @GNULIB_FPUTC@ -GNULIB_FPUTS = @GNULIB_FPUTS@ -GNULIB_FREAD = @GNULIB_FREAD@ -GNULIB_FREOPEN = @GNULIB_FREOPEN@ -GNULIB_FSCANF = @GNULIB_FSCANF@ -GNULIB_FSEEK = @GNULIB_FSEEK@ -GNULIB_FSEEKO = @GNULIB_FSEEKO@ -GNULIB_FSTAT = @GNULIB_FSTAT@ -GNULIB_FSTATAT = @GNULIB_FSTATAT@ -GNULIB_FSYNC = @GNULIB_FSYNC@ -GNULIB_FTELL = @GNULIB_FTELL@ -GNULIB_FTELLO = @GNULIB_FTELLO@ -GNULIB_FTRUNCATE = @GNULIB_FTRUNCATE@ -GNULIB_FUTIMENS = @GNULIB_FUTIMENS@ -GNULIB_FWRITE = @GNULIB_FWRITE@ -GNULIB_GETC = @GNULIB_GETC@ -GNULIB_GETCHAR = @GNULIB_GETCHAR@ -GNULIB_GETCWD = @GNULIB_GETCWD@ -GNULIB_GETDELIM = @GNULIB_GETDELIM@ -GNULIB_GETDOMAINNAME = @GNULIB_GETDOMAINNAME@ -GNULIB_GETDTABLESIZE = @GNULIB_GETDTABLESIZE@ -GNULIB_GETGROUPS = @GNULIB_GETGROUPS@ -GNULIB_GETHOSTNAME = @GNULIB_GETHOSTNAME@ -GNULIB_GETLINE = @GNULIB_GETLINE@ -GNULIB_GETLOADAVG = @GNULIB_GETLOADAVG@ -GNULIB_GETLOGIN = @GNULIB_GETLOGIN@ -GNULIB_GETLOGIN_R = @GNULIB_GETLOGIN_R@ -GNULIB_GETPAGESIZE = @GNULIB_GETPAGESIZE@ -GNULIB_GETPASS = @GNULIB_GETPASS@ -GNULIB_GETSUBOPT = @GNULIB_GETSUBOPT@ -GNULIB_GETTIMEOFDAY = @GNULIB_GETTIMEOFDAY@ -GNULIB_GETUSERSHELL = @GNULIB_GETUSERSHELL@ -GNULIB_GL_UNISTD_H_GETOPT = @GNULIB_GL_UNISTD_H_GETOPT@ -GNULIB_GRANTPT = @GNULIB_GRANTPT@ -GNULIB_GROUP_MEMBER = @GNULIB_GROUP_MEMBER@ -GNULIB_ISATTY = @GNULIB_ISATTY@ -GNULIB_ISWBLANK = @GNULIB_ISWBLANK@ -GNULIB_ISWCTYPE = @GNULIB_ISWCTYPE@ -GNULIB_LCHMOD = @GNULIB_LCHMOD@ -GNULIB_LCHOWN = @GNULIB_LCHOWN@ -GNULIB_LINK = @GNULIB_LINK@ -GNULIB_LINKAT = @GNULIB_LINKAT@ -GNULIB_LOCALECONV = @GNULIB_LOCALECONV@ -GNULIB_LOCALENAME = @GNULIB_LOCALENAME@ -GNULIB_LOCALTIME = @GNULIB_LOCALTIME@ -GNULIB_LSEEK = @GNULIB_LSEEK@ -GNULIB_LSTAT = @GNULIB_LSTAT@ -GNULIB_MALLOC_POSIX = @GNULIB_MALLOC_POSIX@ -GNULIB_MBRLEN = @GNULIB_MBRLEN@ -GNULIB_MBRTOWC = @GNULIB_MBRTOWC@ -GNULIB_MBSCASECMP = @GNULIB_MBSCASECMP@ -GNULIB_MBSCASESTR = @GNULIB_MBSCASESTR@ -GNULIB_MBSCHR = @GNULIB_MBSCHR@ -GNULIB_MBSCSPN = @GNULIB_MBSCSPN@ -GNULIB_MBSINIT = @GNULIB_MBSINIT@ -GNULIB_MBSLEN = @GNULIB_MBSLEN@ -GNULIB_MBSNCASECMP = @GNULIB_MBSNCASECMP@ -GNULIB_MBSNLEN = @GNULIB_MBSNLEN@ -GNULIB_MBSNRTOWCS = @GNULIB_MBSNRTOWCS@ -GNULIB_MBSPBRK = @GNULIB_MBSPBRK@ -GNULIB_MBSPCASECMP = @GNULIB_MBSPCASECMP@ -GNULIB_MBSRCHR = @GNULIB_MBSRCHR@ -GNULIB_MBSRTOWCS = @GNULIB_MBSRTOWCS@ -GNULIB_MBSSEP = @GNULIB_MBSSEP@ -GNULIB_MBSSPN = @GNULIB_MBSSPN@ -GNULIB_MBSSTR = @GNULIB_MBSSTR@ -GNULIB_MBSTOK_R = @GNULIB_MBSTOK_R@ -GNULIB_MBTOWC = @GNULIB_MBTOWC@ -GNULIB_MEMCHR = @GNULIB_MEMCHR@ -GNULIB_MEMMEM = @GNULIB_MEMMEM@ -GNULIB_MEMPCPY = @GNULIB_MEMPCPY@ -GNULIB_MEMRCHR = @GNULIB_MEMRCHR@ -GNULIB_MKDIRAT = @GNULIB_MKDIRAT@ -GNULIB_MKDTEMP = @GNULIB_MKDTEMP@ -GNULIB_MKFIFO = @GNULIB_MKFIFO@ -GNULIB_MKFIFOAT = @GNULIB_MKFIFOAT@ -GNULIB_MKNOD = @GNULIB_MKNOD@ -GNULIB_MKNODAT = @GNULIB_MKNODAT@ -GNULIB_MKOSTEMP = @GNULIB_MKOSTEMP@ -GNULIB_MKOSTEMPS = @GNULIB_MKOSTEMPS@ -GNULIB_MKSTEMP = @GNULIB_MKSTEMP@ -GNULIB_MKSTEMPS = @GNULIB_MKSTEMPS@ -GNULIB_MKTIME = @GNULIB_MKTIME@ -GNULIB_NANOSLEEP = @GNULIB_NANOSLEEP@ -GNULIB_NL_LANGINFO = @GNULIB_NL_LANGINFO@ -GNULIB_NONBLOCKING = @GNULIB_NONBLOCKING@ -GNULIB_OBSTACK_PRINTF = @GNULIB_OBSTACK_PRINTF@ -GNULIB_OBSTACK_PRINTF_POSIX = @GNULIB_OBSTACK_PRINTF_POSIX@ -GNULIB_OPEN = @GNULIB_OPEN@ -GNULIB_OPENAT = @GNULIB_OPENAT@ -GNULIB_OPENDIR = @GNULIB_OPENDIR@ -GNULIB_OVERRIDES_STRUCT_STAT = @GNULIB_OVERRIDES_STRUCT_STAT@ -GNULIB_OVERRIDES_WINT_T = @GNULIB_OVERRIDES_WINT_T@ -GNULIB_PCLOSE = @GNULIB_PCLOSE@ -GNULIB_PERROR = @GNULIB_PERROR@ -GNULIB_PIPE = @GNULIB_PIPE@ -GNULIB_PIPE2 = @GNULIB_PIPE2@ -GNULIB_POPEN = @GNULIB_POPEN@ -GNULIB_POSIX_OPENPT = @GNULIB_POSIX_OPENPT@ -GNULIB_PREAD = @GNULIB_PREAD@ -GNULIB_PRINTF = @GNULIB_PRINTF@ -GNULIB_PRINTF_POSIX = @GNULIB_PRINTF_POSIX@ -GNULIB_PTSNAME = @GNULIB_PTSNAME@ -GNULIB_PTSNAME_R = @GNULIB_PTSNAME_R@ -GNULIB_PUTC = @GNULIB_PUTC@ -GNULIB_PUTCHAR = @GNULIB_PUTCHAR@ -GNULIB_PUTENV = @GNULIB_PUTENV@ -GNULIB_PUTS = @GNULIB_PUTS@ -GNULIB_PWRITE = @GNULIB_PWRITE@ -GNULIB_QSORT_R = @GNULIB_QSORT_R@ -GNULIB_RANDOM = @GNULIB_RANDOM@ -GNULIB_RANDOM_R = @GNULIB_RANDOM_R@ -GNULIB_RAWMEMCHR = @GNULIB_RAWMEMCHR@ -GNULIB_READ = @GNULIB_READ@ -GNULIB_READDIR = @GNULIB_READDIR@ -GNULIB_READLINK = @GNULIB_READLINK@ -GNULIB_READLINKAT = @GNULIB_READLINKAT@ -GNULIB_REALLOCARRAY = @GNULIB_REALLOCARRAY@ -GNULIB_REALLOC_POSIX = @GNULIB_REALLOC_POSIX@ -GNULIB_REALPATH = @GNULIB_REALPATH@ -GNULIB_REMOVE = @GNULIB_REMOVE@ -GNULIB_RENAME = @GNULIB_RENAME@ -GNULIB_RENAMEAT = @GNULIB_RENAMEAT@ -GNULIB_REWINDDIR = @GNULIB_REWINDDIR@ -GNULIB_RMDIR = @GNULIB_RMDIR@ -GNULIB_RPMATCH = @GNULIB_RPMATCH@ -GNULIB_SCANDIR = @GNULIB_SCANDIR@ -GNULIB_SCANF = @GNULIB_SCANF@ -GNULIB_SECURE_GETENV = @GNULIB_SECURE_GETENV@ -GNULIB_SETENV = @GNULIB_SETENV@ -GNULIB_SETHOSTNAME = @GNULIB_SETHOSTNAME@ -GNULIB_SETLOCALE = @GNULIB_SETLOCALE@ -GNULIB_SLEEP = @GNULIB_SLEEP@ -GNULIB_SNPRINTF = @GNULIB_SNPRINTF@ -GNULIB_SPRINTF_POSIX = @GNULIB_SPRINTF_POSIX@ -GNULIB_STAT = @GNULIB_STAT@ -GNULIB_STDIO_H_NONBLOCKING = @GNULIB_STDIO_H_NONBLOCKING@ -GNULIB_STDIO_H_SIGPIPE = @GNULIB_STDIO_H_SIGPIPE@ -GNULIB_STPCPY = @GNULIB_STPCPY@ -GNULIB_STPNCPY = @GNULIB_STPNCPY@ -GNULIB_STRCASESTR = @GNULIB_STRCASESTR@ -GNULIB_STRCHRNUL = @GNULIB_STRCHRNUL@ -GNULIB_STRDUP = @GNULIB_STRDUP@ -GNULIB_STRERROR = @GNULIB_STRERROR@ -GNULIB_STRERROR_R = @GNULIB_STRERROR_R@ -GNULIB_STRFTIME = @GNULIB_STRFTIME@ -GNULIB_STRNCAT = @GNULIB_STRNCAT@ -GNULIB_STRNDUP = @GNULIB_STRNDUP@ -GNULIB_STRNLEN = @GNULIB_STRNLEN@ -GNULIB_STRPBRK = @GNULIB_STRPBRK@ -GNULIB_STRPTIME = @GNULIB_STRPTIME@ -GNULIB_STRSEP = @GNULIB_STRSEP@ -GNULIB_STRSIGNAL = @GNULIB_STRSIGNAL@ -GNULIB_STRSTR = @GNULIB_STRSTR@ -GNULIB_STRTOD = @GNULIB_STRTOD@ -GNULIB_STRTOK_R = @GNULIB_STRTOK_R@ -GNULIB_STRTOLL = @GNULIB_STRTOLL@ -GNULIB_STRTOULL = @GNULIB_STRTOULL@ -GNULIB_STRVERSCMP = @GNULIB_STRVERSCMP@ -GNULIB_SYMLINK = @GNULIB_SYMLINK@ -GNULIB_SYMLINKAT = @GNULIB_SYMLINKAT@ -GNULIB_SYSTEM_POSIX = @GNULIB_SYSTEM_POSIX@ -GNULIB_TIMEGM = @GNULIB_TIMEGM@ -GNULIB_TIME_R = @GNULIB_TIME_R@ -GNULIB_TIME_RZ = @GNULIB_TIME_RZ@ -GNULIB_TMPFILE = @GNULIB_TMPFILE@ -GNULIB_TOWCTRANS = @GNULIB_TOWCTRANS@ -GNULIB_TRUNCATE = @GNULIB_TRUNCATE@ -GNULIB_TTYNAME_R = @GNULIB_TTYNAME_R@ -GNULIB_TZSET = @GNULIB_TZSET@ -GNULIB_UNISTD_H_NONBLOCKING = @GNULIB_UNISTD_H_NONBLOCKING@ -GNULIB_UNISTD_H_SIGPIPE = @GNULIB_UNISTD_H_SIGPIPE@ -GNULIB_UNLINK = @GNULIB_UNLINK@ -GNULIB_UNLINKAT = @GNULIB_UNLINKAT@ -GNULIB_UNLOCKPT = @GNULIB_UNLOCKPT@ -GNULIB_UNSETENV = @GNULIB_UNSETENV@ -GNULIB_USLEEP = @GNULIB_USLEEP@ -GNULIB_UTIMENSAT = @GNULIB_UTIMENSAT@ -GNULIB_VASPRINTF = @GNULIB_VASPRINTF@ -GNULIB_VDPRINTF = @GNULIB_VDPRINTF@ -GNULIB_VFPRINTF = @GNULIB_VFPRINTF@ -GNULIB_VFPRINTF_POSIX = @GNULIB_VFPRINTF_POSIX@ -GNULIB_VFSCANF = @GNULIB_VFSCANF@ -GNULIB_VPRINTF = @GNULIB_VPRINTF@ -GNULIB_VPRINTF_POSIX = @GNULIB_VPRINTF_POSIX@ -GNULIB_VSCANF = @GNULIB_VSCANF@ -GNULIB_VSNPRINTF = @GNULIB_VSNPRINTF@ -GNULIB_VSPRINTF_POSIX = @GNULIB_VSPRINTF_POSIX@ -GNULIB_WCPCPY = @GNULIB_WCPCPY@ -GNULIB_WCPNCPY = @GNULIB_WCPNCPY@ -GNULIB_WCRTOMB = @GNULIB_WCRTOMB@ -GNULIB_WCSCASECMP = @GNULIB_WCSCASECMP@ -GNULIB_WCSCAT = @GNULIB_WCSCAT@ -GNULIB_WCSCHR = @GNULIB_WCSCHR@ -GNULIB_WCSCMP = @GNULIB_WCSCMP@ -GNULIB_WCSCOLL = @GNULIB_WCSCOLL@ -GNULIB_WCSCPY = @GNULIB_WCSCPY@ -GNULIB_WCSCSPN = @GNULIB_WCSCSPN@ -GNULIB_WCSDUP = @GNULIB_WCSDUP@ -GNULIB_WCSFTIME = @GNULIB_WCSFTIME@ -GNULIB_WCSLEN = @GNULIB_WCSLEN@ -GNULIB_WCSNCASECMP = @GNULIB_WCSNCASECMP@ -GNULIB_WCSNCAT = @GNULIB_WCSNCAT@ -GNULIB_WCSNCMP = @GNULIB_WCSNCMP@ -GNULIB_WCSNCPY = @GNULIB_WCSNCPY@ -GNULIB_WCSNLEN = @GNULIB_WCSNLEN@ -GNULIB_WCSNRTOMBS = @GNULIB_WCSNRTOMBS@ -GNULIB_WCSPBRK = @GNULIB_WCSPBRK@ -GNULIB_WCSRCHR = @GNULIB_WCSRCHR@ -GNULIB_WCSRTOMBS = @GNULIB_WCSRTOMBS@ -GNULIB_WCSSPN = @GNULIB_WCSSPN@ -GNULIB_WCSSTR = @GNULIB_WCSSTR@ -GNULIB_WCSTOK = @GNULIB_WCSTOK@ -GNULIB_WCSWIDTH = @GNULIB_WCSWIDTH@ -GNULIB_WCSXFRM = @GNULIB_WCSXFRM@ -GNULIB_WCTOB = @GNULIB_WCTOB@ -GNULIB_WCTOMB = @GNULIB_WCTOMB@ -GNULIB_WCTRANS = @GNULIB_WCTRANS@ -GNULIB_WCTYPE = @GNULIB_WCTYPE@ -GNULIB_WCWIDTH = @GNULIB_WCWIDTH@ -GNULIB_WMEMCHR = @GNULIB_WMEMCHR@ -GNULIB_WMEMCMP = @GNULIB_WMEMCMP@ -GNULIB_WMEMCPY = @GNULIB_WMEMCPY@ -GNULIB_WMEMMOVE = @GNULIB_WMEMMOVE@ -GNULIB_WMEMSET = @GNULIB_WMEMSET@ -GNULIB_WRITE = @GNULIB_WRITE@ -GNULIB__EXIT = @GNULIB__EXIT@ -GREP = @GREP@ -GRUB_BOOT_MACHINE_LINK_ADDR = @GRUB_BOOT_MACHINE_LINK_ADDR@ -GRUB_PLATFORM = @GRUB_PLATFORM@ -GRUB_TARGET_CPU = @GRUB_TARGET_CPU@ -HAVE_ALPHASORT = @HAVE_ALPHASORT@ -HAVE_ASM_USCORE = @HAVE_ASM_USCORE@ -HAVE_ATOLL = @HAVE_ATOLL@ -HAVE_BTOWC = @HAVE_BTOWC@ -HAVE_C99_STDINT_H = @HAVE_C99_STDINT_H@ -HAVE_CANONICALIZE_FILE_NAME = @HAVE_CANONICALIZE_FILE_NAME@ -HAVE_CHOWN = @HAVE_CHOWN@ -HAVE_CLOSEDIR = @HAVE_CLOSEDIR@ -HAVE_CRTDEFS_H = @HAVE_CRTDEFS_H@ -HAVE_CXX = @HAVE_CXX@ -HAVE_DECL_DIRFD = @HAVE_DECL_DIRFD@ -HAVE_DECL_ENVIRON = @HAVE_DECL_ENVIRON@ -HAVE_DECL_FCHDIR = @HAVE_DECL_FCHDIR@ -HAVE_DECL_FDATASYNC = @HAVE_DECL_FDATASYNC@ -HAVE_DECL_FDOPENDIR = @HAVE_DECL_FDOPENDIR@ -HAVE_DECL_FPURGE = @HAVE_DECL_FPURGE@ -HAVE_DECL_FSEEKO = @HAVE_DECL_FSEEKO@ -HAVE_DECL_FTELLO = @HAVE_DECL_FTELLO@ -HAVE_DECL_GETDELIM = @HAVE_DECL_GETDELIM@ -HAVE_DECL_GETDOMAINNAME = @HAVE_DECL_GETDOMAINNAME@ -HAVE_DECL_GETLINE = @HAVE_DECL_GETLINE@ -HAVE_DECL_GETLOADAVG = @HAVE_DECL_GETLOADAVG@ -HAVE_DECL_GETLOGIN = @HAVE_DECL_GETLOGIN@ -HAVE_DECL_GETLOGIN_R = @HAVE_DECL_GETLOGIN_R@ -HAVE_DECL_GETPAGESIZE = @HAVE_DECL_GETPAGESIZE@ -HAVE_DECL_GETUSERSHELL = @HAVE_DECL_GETUSERSHELL@ -HAVE_DECL_INITSTATE = @HAVE_DECL_INITSTATE@ -HAVE_DECL_LOCALTIME_R = @HAVE_DECL_LOCALTIME_R@ -HAVE_DECL_MEMMEM = @HAVE_DECL_MEMMEM@ -HAVE_DECL_MEMRCHR = @HAVE_DECL_MEMRCHR@ -HAVE_DECL_OBSTACK_PRINTF = @HAVE_DECL_OBSTACK_PRINTF@ -HAVE_DECL_SETENV = @HAVE_DECL_SETENV@ -HAVE_DECL_SETHOSTNAME = @HAVE_DECL_SETHOSTNAME@ -HAVE_DECL_SETSTATE = @HAVE_DECL_SETSTATE@ -HAVE_DECL_SNPRINTF = @HAVE_DECL_SNPRINTF@ -HAVE_DECL_STRDUP = @HAVE_DECL_STRDUP@ -HAVE_DECL_STRERROR_R = @HAVE_DECL_STRERROR_R@ -HAVE_DECL_STRNCASECMP = @HAVE_DECL_STRNCASECMP@ -HAVE_DECL_STRNDUP = @HAVE_DECL_STRNDUP@ -HAVE_DECL_STRNLEN = @HAVE_DECL_STRNLEN@ -HAVE_DECL_STRSIGNAL = @HAVE_DECL_STRSIGNAL@ -HAVE_DECL_STRTOK_R = @HAVE_DECL_STRTOK_R@ -HAVE_DECL_TRUNCATE = @HAVE_DECL_TRUNCATE@ -HAVE_DECL_TTYNAME_R = @HAVE_DECL_TTYNAME_R@ -HAVE_DECL_UNSETENV = @HAVE_DECL_UNSETENV@ -HAVE_DECL_VSNPRINTF = @HAVE_DECL_VSNPRINTF@ -HAVE_DECL_WCTOB = @HAVE_DECL_WCTOB@ -HAVE_DECL_WCWIDTH = @HAVE_DECL_WCWIDTH@ -HAVE_DIRENT_H = @HAVE_DIRENT_H@ -HAVE_DPRINTF = @HAVE_DPRINTF@ -HAVE_DUP2 = @HAVE_DUP2@ -HAVE_DUP3 = @HAVE_DUP3@ -HAVE_DUPLOCALE = @HAVE_DUPLOCALE@ -HAVE_EUIDACCESS = @HAVE_EUIDACCESS@ -HAVE_EXPLICIT_BZERO = @HAVE_EXPLICIT_BZERO@ -HAVE_FACCESSAT = @HAVE_FACCESSAT@ -HAVE_FCHDIR = @HAVE_FCHDIR@ -HAVE_FCHMODAT = @HAVE_FCHMODAT@ -HAVE_FCHOWNAT = @HAVE_FCHOWNAT@ -HAVE_FCNTL = @HAVE_FCNTL@ -HAVE_FDATASYNC = @HAVE_FDATASYNC@ -HAVE_FDOPENDIR = @HAVE_FDOPENDIR@ -HAVE_FEATURES_H = @HAVE_FEATURES_H@ -HAVE_FFS = @HAVE_FFS@ -HAVE_FFSL = @HAVE_FFSL@ -HAVE_FFSLL = @HAVE_FFSLL@ -HAVE_FNMATCH = @HAVE_FNMATCH@ -HAVE_FNMATCH_H = @HAVE_FNMATCH_H@ -HAVE_FONT_SOURCE = @HAVE_FONT_SOURCE@ -HAVE_FREELOCALE = @HAVE_FREELOCALE@ -HAVE_FSEEKO = @HAVE_FSEEKO@ -HAVE_FSTATAT = @HAVE_FSTATAT@ -HAVE_FSYNC = @HAVE_FSYNC@ -HAVE_FTELLO = @HAVE_FTELLO@ -HAVE_FTRUNCATE = @HAVE_FTRUNCATE@ -HAVE_FUTIMENS = @HAVE_FUTIMENS@ -HAVE_GETDTABLESIZE = @HAVE_GETDTABLESIZE@ -HAVE_GETGROUPS = @HAVE_GETGROUPS@ -HAVE_GETHOSTNAME = @HAVE_GETHOSTNAME@ -HAVE_GETLOGIN = @HAVE_GETLOGIN@ -HAVE_GETOPT_H = @HAVE_GETOPT_H@ -HAVE_GETPAGESIZE = @HAVE_GETPAGESIZE@ -HAVE_GETPASS = @HAVE_GETPASS@ -HAVE_GETSUBOPT = @HAVE_GETSUBOPT@ -HAVE_GRANTPT = @HAVE_GRANTPT@ -HAVE_GROUP_MEMBER = @HAVE_GROUP_MEMBER@ -HAVE_INTTYPES_H = @HAVE_INTTYPES_H@ -HAVE_ISWBLANK = @HAVE_ISWBLANK@ -HAVE_ISWCNTRL = @HAVE_ISWCNTRL@ -HAVE_LANGINFO_ALTMON = @HAVE_LANGINFO_ALTMON@ -HAVE_LANGINFO_CODESET = @HAVE_LANGINFO_CODESET@ -HAVE_LANGINFO_ERA = @HAVE_LANGINFO_ERA@ -HAVE_LANGINFO_H = @HAVE_LANGINFO_H@ -HAVE_LANGINFO_T_FMT_AMPM = @HAVE_LANGINFO_T_FMT_AMPM@ -HAVE_LANGINFO_YESEXPR = @HAVE_LANGINFO_YESEXPR@ -HAVE_LCHMOD = @HAVE_LCHMOD@ -HAVE_LCHOWN = @HAVE_LCHOWN@ -HAVE_LINK = @HAVE_LINK@ -HAVE_LINKAT = @HAVE_LINKAT@ -HAVE_LONG_LONG_INT = @HAVE_LONG_LONG_INT@ -HAVE_LSTAT = @HAVE_LSTAT@ -HAVE_MAX_ALIGN_T = @HAVE_MAX_ALIGN_T@ -HAVE_MBRLEN = @HAVE_MBRLEN@ -HAVE_MBRTOWC = @HAVE_MBRTOWC@ -HAVE_MBSINIT = @HAVE_MBSINIT@ -HAVE_MBSLEN = @HAVE_MBSLEN@ -HAVE_MBSNRTOWCS = @HAVE_MBSNRTOWCS@ -HAVE_MBSRTOWCS = @HAVE_MBSRTOWCS@ -HAVE_MEMCHR = @HAVE_MEMCHR@ -HAVE_MEMPCPY = @HAVE_MEMPCPY@ -HAVE_MKDIRAT = @HAVE_MKDIRAT@ -HAVE_MKDTEMP = @HAVE_MKDTEMP@ -HAVE_MKFIFO = @HAVE_MKFIFO@ -HAVE_MKFIFOAT = @HAVE_MKFIFOAT@ -HAVE_MKNOD = @HAVE_MKNOD@ -HAVE_MKNODAT = @HAVE_MKNODAT@ -HAVE_MKOSTEMP = @HAVE_MKOSTEMP@ -HAVE_MKOSTEMPS = @HAVE_MKOSTEMPS@ -HAVE_MKSTEMP = @HAVE_MKSTEMP@ -HAVE_MKSTEMPS = @HAVE_MKSTEMPS@ -HAVE_MSVC_INVALID_PARAMETER_HANDLER = @HAVE_MSVC_INVALID_PARAMETER_HANDLER@ -HAVE_NANOSLEEP = @HAVE_NANOSLEEP@ -HAVE_NEWLOCALE = @HAVE_NEWLOCALE@ -HAVE_NL_LANGINFO = @HAVE_NL_LANGINFO@ -HAVE_OPENAT = @HAVE_OPENAT@ -HAVE_OPENDIR = @HAVE_OPENDIR@ -HAVE_OS_H = @HAVE_OS_H@ -HAVE_PCLOSE = @HAVE_PCLOSE@ -HAVE_PIPE = @HAVE_PIPE@ -HAVE_PIPE2 = @HAVE_PIPE2@ -HAVE_POPEN = @HAVE_POPEN@ -HAVE_POSIX_OPENPT = @HAVE_POSIX_OPENPT@ -HAVE_PREAD = @HAVE_PREAD@ -HAVE_PTSNAME = @HAVE_PTSNAME@ -HAVE_PTSNAME_R = @HAVE_PTSNAME_R@ -HAVE_PWRITE = @HAVE_PWRITE@ -HAVE_QSORT_R = @HAVE_QSORT_R@ -HAVE_RANDOM = @HAVE_RANDOM@ -HAVE_RANDOM_H = @HAVE_RANDOM_H@ -HAVE_RANDOM_R = @HAVE_RANDOM_R@ -HAVE_RAWMEMCHR = @HAVE_RAWMEMCHR@ -HAVE_READDIR = @HAVE_READDIR@ -HAVE_READLINK = @HAVE_READLINK@ -HAVE_READLINKAT = @HAVE_READLINKAT@ -HAVE_REALLOCARRAY = @HAVE_REALLOCARRAY@ -HAVE_REALPATH = @HAVE_REALPATH@ -HAVE_RENAMEAT = @HAVE_RENAMEAT@ -HAVE_REWINDDIR = @HAVE_REWINDDIR@ -HAVE_RPMATCH = @HAVE_RPMATCH@ -HAVE_SCANDIR = @HAVE_SCANDIR@ -HAVE_SECURE_GETENV = @HAVE_SECURE_GETENV@ -HAVE_SETENV = @HAVE_SETENV@ -HAVE_SETHOSTNAME = @HAVE_SETHOSTNAME@ -HAVE_SIGNED_SIG_ATOMIC_T = @HAVE_SIGNED_SIG_ATOMIC_T@ -HAVE_SIGNED_WCHAR_T = @HAVE_SIGNED_WCHAR_T@ -HAVE_SIGNED_WINT_T = @HAVE_SIGNED_WINT_T@ -HAVE_SLEEP = @HAVE_SLEEP@ -HAVE_STDINT_H = @HAVE_STDINT_H@ -HAVE_STPCPY = @HAVE_STPCPY@ -HAVE_STPNCPY = @HAVE_STPNCPY@ -HAVE_STRCASECMP = @HAVE_STRCASECMP@ -HAVE_STRCASESTR = @HAVE_STRCASESTR@ -HAVE_STRCHRNUL = @HAVE_STRCHRNUL@ -HAVE_STRINGS_H = @HAVE_STRINGS_H@ -HAVE_STRPBRK = @HAVE_STRPBRK@ -HAVE_STRPTIME = @HAVE_STRPTIME@ -HAVE_STRSEP = @HAVE_STRSEP@ -HAVE_STRTOD = @HAVE_STRTOD@ -HAVE_STRTOLL = @HAVE_STRTOLL@ -HAVE_STRTOULL = @HAVE_STRTOULL@ -HAVE_STRUCT_RANDOM_DATA = @HAVE_STRUCT_RANDOM_DATA@ -HAVE_STRVERSCMP = @HAVE_STRVERSCMP@ -HAVE_SYMLINK = @HAVE_SYMLINK@ -HAVE_SYMLINKAT = @HAVE_SYMLINKAT@ -HAVE_SYSEXITS_H = @HAVE_SYSEXITS_H@ -HAVE_SYS_BITYPES_H = @HAVE_SYS_BITYPES_H@ -HAVE_SYS_CDEFS_H = @HAVE_SYS_CDEFS_H@ -HAVE_SYS_INTTYPES_H = @HAVE_SYS_INTTYPES_H@ -HAVE_SYS_LOADAVG_H = @HAVE_SYS_LOADAVG_H@ -HAVE_SYS_PARAM_H = @HAVE_SYS_PARAM_H@ -HAVE_SYS_TYPES_H = @HAVE_SYS_TYPES_H@ -HAVE_TIMEGM = @HAVE_TIMEGM@ -HAVE_TIMEZONE_T = @HAVE_TIMEZONE_T@ -HAVE_TZSET = @HAVE_TZSET@ -HAVE_UNISTD_H = @HAVE_UNISTD_H@ -HAVE_UNLINKAT = @HAVE_UNLINKAT@ -HAVE_UNLOCKPT = @HAVE_UNLOCKPT@ -HAVE_UNSIGNED_LONG_LONG_INT = @HAVE_UNSIGNED_LONG_LONG_INT@ -HAVE_USLEEP = @HAVE_USLEEP@ -HAVE_UTIMENSAT = @HAVE_UTIMENSAT@ -HAVE_VASPRINTF = @HAVE_VASPRINTF@ -HAVE_VDPRINTF = @HAVE_VDPRINTF@ -HAVE_WCHAR_H = @HAVE_WCHAR_H@ -HAVE_WCHAR_T = @HAVE_WCHAR_T@ -HAVE_WCPCPY = @HAVE_WCPCPY@ -HAVE_WCPNCPY = @HAVE_WCPNCPY@ -HAVE_WCRTOMB = @HAVE_WCRTOMB@ -HAVE_WCSCASECMP = @HAVE_WCSCASECMP@ -HAVE_WCSCAT = @HAVE_WCSCAT@ -HAVE_WCSCHR = @HAVE_WCSCHR@ -HAVE_WCSCMP = @HAVE_WCSCMP@ -HAVE_WCSCOLL = @HAVE_WCSCOLL@ -HAVE_WCSCPY = @HAVE_WCSCPY@ -HAVE_WCSCSPN = @HAVE_WCSCSPN@ -HAVE_WCSDUP = @HAVE_WCSDUP@ -HAVE_WCSFTIME = @HAVE_WCSFTIME@ -HAVE_WCSLEN = @HAVE_WCSLEN@ -HAVE_WCSNCASECMP = @HAVE_WCSNCASECMP@ -HAVE_WCSNCAT = @HAVE_WCSNCAT@ -HAVE_WCSNCMP = @HAVE_WCSNCMP@ -HAVE_WCSNCPY = @HAVE_WCSNCPY@ -HAVE_WCSNLEN = @HAVE_WCSNLEN@ -HAVE_WCSNRTOMBS = @HAVE_WCSNRTOMBS@ -HAVE_WCSPBRK = @HAVE_WCSPBRK@ -HAVE_WCSRCHR = @HAVE_WCSRCHR@ -HAVE_WCSRTOMBS = @HAVE_WCSRTOMBS@ -HAVE_WCSSPN = @HAVE_WCSSPN@ -HAVE_WCSSTR = @HAVE_WCSSTR@ -HAVE_WCSTOK = @HAVE_WCSTOK@ -HAVE_WCSWIDTH = @HAVE_WCSWIDTH@ -HAVE_WCSXFRM = @HAVE_WCSXFRM@ -HAVE_WCTRANS_T = @HAVE_WCTRANS_T@ -HAVE_WCTYPE_H = @HAVE_WCTYPE_H@ -HAVE_WCTYPE_T = @HAVE_WCTYPE_T@ -HAVE_WINSOCK2_H = @HAVE_WINSOCK2_H@ -HAVE_WINT_T = @HAVE_WINT_T@ -HAVE_WMEMCHR = @HAVE_WMEMCHR@ -HAVE_WMEMCMP = @HAVE_WMEMCMP@ -HAVE_WMEMCPY = @HAVE_WMEMCPY@ -HAVE_WMEMMOVE = @HAVE_WMEMMOVE@ -HAVE_WMEMSET = @HAVE_WMEMSET@ -HAVE_XLOCALE_H = @HAVE_XLOCALE_H@ -HAVE__BOOL = @HAVE__BOOL@ -HAVE__EXIT = @HAVE__EXIT@ -HELP2MAN = @HELP2MAN@ -HOST_CC = @HOST_CC@ -HOST_CCASFLAGS = @HOST_CCASFLAGS@ -HOST_CFLAGS = @HOST_CFLAGS@ -HOST_CPPFLAGS = @HOST_CPPFLAGS@ -HOST_LDFLAGS = @HOST_LDFLAGS@ -INCLUDE_NEXT = @INCLUDE_NEXT@ -INCLUDE_NEXT_AS_FIRST_DIRECTIVE = @INCLUDE_NEXT_AS_FIRST_DIRECTIVE@ -INSTALL = @INSTALL@ -INSTALL_DATA = @INSTALL_DATA@ -INSTALL_PROGRAM = @INSTALL_PROGRAM@ -INSTALL_SCRIPT = @INSTALL_SCRIPT@ -INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ -INTLLIBS = @INTLLIBS@ -INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -LDFLAGS = @LDFLAGS@ -LEX = @LEX@ -LEXLIB = @LEXLIB@ -LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@ -LIBDEVMAPPER = @LIBDEVMAPPER@ -LIBGEOM = @LIBGEOM@ -LIBGNU_LIBDEPS = @LIBGNU_LIBDEPS@ -LIBGNU_LTLIBDEPS = @LIBGNU_LTLIBDEPS@ -LIBICONV = @LIBICONV@ -LIBINTL = @LIBINTL@ -LIBLZMA = @LIBLZMA@ -LIBMULTITHREAD = @LIBMULTITHREAD@ -LIBNVPAIR = @LIBNVPAIR@ -LIBOBJS = @LIBOBJS@ -LIBPCIACCESS = @LIBPCIACCESS@ -LIBPTH = @LIBPTH@ -LIBPTH_PREFIX = @LIBPTH_PREFIX@ -LIBS = @LIBS@ -LIBSDL = @LIBSDL@ -LIBTHREAD = @LIBTHREAD@ -LIBUNISTRING_UNITYPES_H = @LIBUNISTRING_UNITYPES_H@ -LIBUNISTRING_UNIWIDTH_H = @LIBUNISTRING_UNIWIDTH_H@ -LIBUTIL = @LIBUTIL@ -LIBZFS = @LIBZFS@ -LIMITS_H = @LIMITS_H@ -LN_S = @LN_S@ -LOCALCHARSET_TESTS_ENVIRONMENT = @LOCALCHARSET_TESTS_ENVIRONMENT@ -LOCALE_FR = @LOCALE_FR@ -LOCALE_FR_UTF8 = @LOCALE_FR_UTF8@ -LOCALE_JA = @LOCALE_JA@ -LOCALE_ZH_CN = @LOCALE_ZH_CN@ -LTLIBICONV = @LTLIBICONV@ -LTLIBINTL = @LTLIBINTL@ -LTLIBMULTITHREAD = @LTLIBMULTITHREAD@ -LTLIBOBJS = @LTLIBOBJS@ -LTLIBPTH = @LTLIBPTH@ -LTLIBTHREAD = @LTLIBTHREAD@ -MAKEINFO = @MAKEINFO@ -MKDIR_P = @MKDIR_P@ -MSGFMT = @MSGFMT@ -MSGFMT_015 = @MSGFMT_015@ -MSGMERGE = @MSGMERGE@ -NEXT_AS_FIRST_DIRECTIVE_DIRENT_H = @NEXT_AS_FIRST_DIRECTIVE_DIRENT_H@ -NEXT_AS_FIRST_DIRECTIVE_ERRNO_H = @NEXT_AS_FIRST_DIRECTIVE_ERRNO_H@ -NEXT_AS_FIRST_DIRECTIVE_FCNTL_H = @NEXT_AS_FIRST_DIRECTIVE_FCNTL_H@ -NEXT_AS_FIRST_DIRECTIVE_FLOAT_H = @NEXT_AS_FIRST_DIRECTIVE_FLOAT_H@ -NEXT_AS_FIRST_DIRECTIVE_FNMATCH_H = @NEXT_AS_FIRST_DIRECTIVE_FNMATCH_H@ -NEXT_AS_FIRST_DIRECTIVE_GETOPT_H = @NEXT_AS_FIRST_DIRECTIVE_GETOPT_H@ -NEXT_AS_FIRST_DIRECTIVE_LANGINFO_H = @NEXT_AS_FIRST_DIRECTIVE_LANGINFO_H@ -NEXT_AS_FIRST_DIRECTIVE_LIMITS_H = @NEXT_AS_FIRST_DIRECTIVE_LIMITS_H@ -NEXT_AS_FIRST_DIRECTIVE_LOCALE_H = @NEXT_AS_FIRST_DIRECTIVE_LOCALE_H@ -NEXT_AS_FIRST_DIRECTIVE_STDDEF_H = @NEXT_AS_FIRST_DIRECTIVE_STDDEF_H@ -NEXT_AS_FIRST_DIRECTIVE_STDINT_H = @NEXT_AS_FIRST_DIRECTIVE_STDINT_H@ -NEXT_AS_FIRST_DIRECTIVE_STDIO_H = @NEXT_AS_FIRST_DIRECTIVE_STDIO_H@ -NEXT_AS_FIRST_DIRECTIVE_STDLIB_H = @NEXT_AS_FIRST_DIRECTIVE_STDLIB_H@ -NEXT_AS_FIRST_DIRECTIVE_STRINGS_H = @NEXT_AS_FIRST_DIRECTIVE_STRINGS_H@ -NEXT_AS_FIRST_DIRECTIVE_STRING_H = @NEXT_AS_FIRST_DIRECTIVE_STRING_H@ -NEXT_AS_FIRST_DIRECTIVE_SYSEXITS_H = @NEXT_AS_FIRST_DIRECTIVE_SYSEXITS_H@ -NEXT_AS_FIRST_DIRECTIVE_SYS_STAT_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_STAT_H@ -NEXT_AS_FIRST_DIRECTIVE_SYS_TYPES_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_TYPES_H@ -NEXT_AS_FIRST_DIRECTIVE_TIME_H = @NEXT_AS_FIRST_DIRECTIVE_TIME_H@ -NEXT_AS_FIRST_DIRECTIVE_UNISTD_H = @NEXT_AS_FIRST_DIRECTIVE_UNISTD_H@ -NEXT_AS_FIRST_DIRECTIVE_WCHAR_H = @NEXT_AS_FIRST_DIRECTIVE_WCHAR_H@ -NEXT_AS_FIRST_DIRECTIVE_WCTYPE_H = @NEXT_AS_FIRST_DIRECTIVE_WCTYPE_H@ -NEXT_DIRENT_H = @NEXT_DIRENT_H@ -NEXT_ERRNO_H = @NEXT_ERRNO_H@ -NEXT_FCNTL_H = @NEXT_FCNTL_H@ -NEXT_FLOAT_H = @NEXT_FLOAT_H@ -NEXT_FNMATCH_H = @NEXT_FNMATCH_H@ -NEXT_GETOPT_H = @NEXT_GETOPT_H@ -NEXT_LANGINFO_H = @NEXT_LANGINFO_H@ -NEXT_LIMITS_H = @NEXT_LIMITS_H@ -NEXT_LOCALE_H = @NEXT_LOCALE_H@ -NEXT_STDDEF_H = @NEXT_STDDEF_H@ -NEXT_STDINT_H = @NEXT_STDINT_H@ -NEXT_STDIO_H = @NEXT_STDIO_H@ -NEXT_STDLIB_H = @NEXT_STDLIB_H@ -NEXT_STRINGS_H = @NEXT_STRINGS_H@ -NEXT_STRING_H = @NEXT_STRING_H@ -NEXT_SYSEXITS_H = @NEXT_SYSEXITS_H@ -NEXT_SYS_STAT_H = @NEXT_SYS_STAT_H@ -NEXT_SYS_TYPES_H = @NEXT_SYS_TYPES_H@ -NEXT_TIME_H = @NEXT_TIME_H@ -NEXT_UNISTD_H = @NEXT_UNISTD_H@ -NEXT_WCHAR_H = @NEXT_WCHAR_H@ -NEXT_WCTYPE_H = @NEXT_WCTYPE_H@ -OBJEXT = @OBJEXT@ -PACKAGE = @PACKAGE@ -PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ -PACKAGE_NAME = @PACKAGE_NAME@ -PACKAGE_STRING = @PACKAGE_STRING@ -PACKAGE_TARNAME = @PACKAGE_TARNAME@ -PACKAGE_URL = @PACKAGE_URL@ -PACKAGE_VERSION = @PACKAGE_VERSION@ -PATH_SEPARATOR = @PATH_SEPARATOR@ -PKG_CONFIG = @PKG_CONFIG@ -PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ -PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ -POSUB = @POSUB@ -PRAGMA_COLUMNS = @PRAGMA_COLUMNS@ -PRAGMA_SYSTEM_HEADER = @PRAGMA_SYSTEM_HEADER@ -PTHREAD_H_DEFINES_STRUCT_TIMESPEC = @PTHREAD_H_DEFINES_STRUCT_TIMESPEC@ -PTRDIFF_T_SUFFIX = @PTRDIFF_T_SUFFIX@ -PYTHON = @PYTHON@ -PYTHON_EXEC_PREFIX = @PYTHON_EXEC_PREFIX@ -PYTHON_PLATFORM = @PYTHON_PLATFORM@ -PYTHON_PREFIX = @PYTHON_PREFIX@ -PYTHON_VERSION = @PYTHON_VERSION@ -RANLIB = @RANLIB@ -REPLACE_BTOWC = @REPLACE_BTOWC@ -REPLACE_CALLOC = @REPLACE_CALLOC@ -REPLACE_CANONICALIZE_FILE_NAME = @REPLACE_CANONICALIZE_FILE_NAME@ -REPLACE_CHOWN = @REPLACE_CHOWN@ -REPLACE_CLOSE = @REPLACE_CLOSE@ -REPLACE_CLOSEDIR = @REPLACE_CLOSEDIR@ -REPLACE_CTIME = @REPLACE_CTIME@ -REPLACE_DIRFD = @REPLACE_DIRFD@ -REPLACE_DPRINTF = @REPLACE_DPRINTF@ -REPLACE_DUP = @REPLACE_DUP@ -REPLACE_DUP2 = @REPLACE_DUP2@ -REPLACE_DUPLOCALE = @REPLACE_DUPLOCALE@ -REPLACE_FACCESSAT = @REPLACE_FACCESSAT@ -REPLACE_FCHOWNAT = @REPLACE_FCHOWNAT@ -REPLACE_FCLOSE = @REPLACE_FCLOSE@ -REPLACE_FCNTL = @REPLACE_FCNTL@ -REPLACE_FDOPEN = @REPLACE_FDOPEN@ -REPLACE_FDOPENDIR = @REPLACE_FDOPENDIR@ -REPLACE_FFLUSH = @REPLACE_FFLUSH@ -REPLACE_FNMATCH = @REPLACE_FNMATCH@ -REPLACE_FOPEN = @REPLACE_FOPEN@ -REPLACE_FPRINTF = @REPLACE_FPRINTF@ -REPLACE_FPURGE = @REPLACE_FPURGE@ -REPLACE_FREELOCALE = @REPLACE_FREELOCALE@ -REPLACE_FREOPEN = @REPLACE_FREOPEN@ -REPLACE_FSEEK = @REPLACE_FSEEK@ -REPLACE_FSEEKO = @REPLACE_FSEEKO@ -REPLACE_FSTAT = @REPLACE_FSTAT@ -REPLACE_FSTATAT = @REPLACE_FSTATAT@ -REPLACE_FTELL = @REPLACE_FTELL@ -REPLACE_FTELLO = @REPLACE_FTELLO@ -REPLACE_FTRUNCATE = @REPLACE_FTRUNCATE@ -REPLACE_FUTIMENS = @REPLACE_FUTIMENS@ -REPLACE_GETCWD = @REPLACE_GETCWD@ -REPLACE_GETDELIM = @REPLACE_GETDELIM@ -REPLACE_GETDOMAINNAME = @REPLACE_GETDOMAINNAME@ -REPLACE_GETDTABLESIZE = @REPLACE_GETDTABLESIZE@ -REPLACE_GETGROUPS = @REPLACE_GETGROUPS@ -REPLACE_GETLINE = @REPLACE_GETLINE@ -REPLACE_GETLOGIN_R = @REPLACE_GETLOGIN_R@ -REPLACE_GETPAGESIZE = @REPLACE_GETPAGESIZE@ -REPLACE_GETPASS = @REPLACE_GETPASS@ -REPLACE_GMTIME = @REPLACE_GMTIME@ -REPLACE_ISATTY = @REPLACE_ISATTY@ -REPLACE_ISWBLANK = @REPLACE_ISWBLANK@ -REPLACE_ISWCNTRL = @REPLACE_ISWCNTRL@ -REPLACE_ITOLD = @REPLACE_ITOLD@ -REPLACE_LCHOWN = @REPLACE_LCHOWN@ -REPLACE_LINK = @REPLACE_LINK@ -REPLACE_LINKAT = @REPLACE_LINKAT@ -REPLACE_LOCALECONV = @REPLACE_LOCALECONV@ -REPLACE_LOCALTIME = @REPLACE_LOCALTIME@ -REPLACE_LOCALTIME_R = @REPLACE_LOCALTIME_R@ -REPLACE_LSEEK = @REPLACE_LSEEK@ -REPLACE_LSTAT = @REPLACE_LSTAT@ -REPLACE_MALLOC = @REPLACE_MALLOC@ -REPLACE_MBRLEN = @REPLACE_MBRLEN@ -REPLACE_MBRTOWC = @REPLACE_MBRTOWC@ -REPLACE_MBSINIT = @REPLACE_MBSINIT@ -REPLACE_MBSNRTOWCS = @REPLACE_MBSNRTOWCS@ -REPLACE_MBSRTOWCS = @REPLACE_MBSRTOWCS@ -REPLACE_MBSTATE_T = @REPLACE_MBSTATE_T@ -REPLACE_MBTOWC = @REPLACE_MBTOWC@ -REPLACE_MEMCHR = @REPLACE_MEMCHR@ -REPLACE_MEMMEM = @REPLACE_MEMMEM@ -REPLACE_MKDIR = @REPLACE_MKDIR@ -REPLACE_MKFIFO = @REPLACE_MKFIFO@ -REPLACE_MKNOD = @REPLACE_MKNOD@ -REPLACE_MKSTEMP = @REPLACE_MKSTEMP@ -REPLACE_MKTIME = @REPLACE_MKTIME@ -REPLACE_NANOSLEEP = @REPLACE_NANOSLEEP@ -REPLACE_NEWLOCALE = @REPLACE_NEWLOCALE@ -REPLACE_NL_LANGINFO = @REPLACE_NL_LANGINFO@ -REPLACE_NULL = @REPLACE_NULL@ -REPLACE_OBSTACK_PRINTF = @REPLACE_OBSTACK_PRINTF@ -REPLACE_OPEN = @REPLACE_OPEN@ -REPLACE_OPENAT = @REPLACE_OPENAT@ -REPLACE_OPENDIR = @REPLACE_OPENDIR@ -REPLACE_PERROR = @REPLACE_PERROR@ -REPLACE_POPEN = @REPLACE_POPEN@ -REPLACE_PREAD = @REPLACE_PREAD@ -REPLACE_PRINTF = @REPLACE_PRINTF@ -REPLACE_PTSNAME = @REPLACE_PTSNAME@ -REPLACE_PTSNAME_R = @REPLACE_PTSNAME_R@ -REPLACE_PUTENV = @REPLACE_PUTENV@ -REPLACE_PWRITE = @REPLACE_PWRITE@ -REPLACE_QSORT_R = @REPLACE_QSORT_R@ -REPLACE_RANDOM_R = @REPLACE_RANDOM_R@ -REPLACE_READ = @REPLACE_READ@ -REPLACE_READLINK = @REPLACE_READLINK@ -REPLACE_READLINKAT = @REPLACE_READLINKAT@ -REPLACE_REALLOC = @REPLACE_REALLOC@ -REPLACE_REALPATH = @REPLACE_REALPATH@ -REPLACE_REMOVE = @REPLACE_REMOVE@ -REPLACE_RENAME = @REPLACE_RENAME@ -REPLACE_RENAMEAT = @REPLACE_RENAMEAT@ -REPLACE_RMDIR = @REPLACE_RMDIR@ -REPLACE_SETENV = @REPLACE_SETENV@ -REPLACE_SETLOCALE = @REPLACE_SETLOCALE@ -REPLACE_SLEEP = @REPLACE_SLEEP@ -REPLACE_SNPRINTF = @REPLACE_SNPRINTF@ -REPLACE_SPRINTF = @REPLACE_SPRINTF@ -REPLACE_STAT = @REPLACE_STAT@ -REPLACE_STDIO_READ_FUNCS = @REPLACE_STDIO_READ_FUNCS@ -REPLACE_STDIO_WRITE_FUNCS = @REPLACE_STDIO_WRITE_FUNCS@ -REPLACE_STPNCPY = @REPLACE_STPNCPY@ -REPLACE_STRCASESTR = @REPLACE_STRCASESTR@ -REPLACE_STRCHRNUL = @REPLACE_STRCHRNUL@ -REPLACE_STRDUP = @REPLACE_STRDUP@ -REPLACE_STRERROR = @REPLACE_STRERROR@ -REPLACE_STRERROR_R = @REPLACE_STRERROR_R@ -REPLACE_STRFTIME = @REPLACE_STRFTIME@ -REPLACE_STRNCAT = @REPLACE_STRNCAT@ -REPLACE_STRNDUP = @REPLACE_STRNDUP@ -REPLACE_STRNLEN = @REPLACE_STRNLEN@ -REPLACE_STRSIGNAL = @REPLACE_STRSIGNAL@ -REPLACE_STRSTR = @REPLACE_STRSTR@ -REPLACE_STRTOD = @REPLACE_STRTOD@ -REPLACE_STRTOK_R = @REPLACE_STRTOK_R@ -REPLACE_STRUCT_LCONV = @REPLACE_STRUCT_LCONV@ -REPLACE_SYMLINK = @REPLACE_SYMLINK@ -REPLACE_SYMLINKAT = @REPLACE_SYMLINKAT@ -REPLACE_TIMEGM = @REPLACE_TIMEGM@ -REPLACE_TMPFILE = @REPLACE_TMPFILE@ -REPLACE_TOWLOWER = @REPLACE_TOWLOWER@ -REPLACE_TRUNCATE = @REPLACE_TRUNCATE@ -REPLACE_TTYNAME_R = @REPLACE_TTYNAME_R@ -REPLACE_TZSET = @REPLACE_TZSET@ -REPLACE_UNLINK = @REPLACE_UNLINK@ -REPLACE_UNLINKAT = @REPLACE_UNLINKAT@ -REPLACE_UNSETENV = @REPLACE_UNSETENV@ -REPLACE_USLEEP = @REPLACE_USLEEP@ -REPLACE_UTIMENSAT = @REPLACE_UTIMENSAT@ -REPLACE_VASPRINTF = @REPLACE_VASPRINTF@ -REPLACE_VDPRINTF = @REPLACE_VDPRINTF@ -REPLACE_VFPRINTF = @REPLACE_VFPRINTF@ -REPLACE_VPRINTF = @REPLACE_VPRINTF@ -REPLACE_VSNPRINTF = @REPLACE_VSNPRINTF@ -REPLACE_VSPRINTF = @REPLACE_VSPRINTF@ -REPLACE_WCRTOMB = @REPLACE_WCRTOMB@ -REPLACE_WCSFTIME = @REPLACE_WCSFTIME@ -REPLACE_WCSNRTOMBS = @REPLACE_WCSNRTOMBS@ -REPLACE_WCSRTOMBS = @REPLACE_WCSRTOMBS@ -REPLACE_WCSWIDTH = @REPLACE_WCSWIDTH@ -REPLACE_WCTOB = @REPLACE_WCTOB@ -REPLACE_WCTOMB = @REPLACE_WCTOMB@ -REPLACE_WCWIDTH = @REPLACE_WCWIDTH@ -REPLACE_WRITE = @REPLACE_WRITE@ -SED = @SED@ -SET_MAKE = @SET_MAKE@ -SHELL = @SHELL@ -SIG_ATOMIC_T_SUFFIX = @SIG_ATOMIC_T_SUFFIX@ -SIZE_T_SUFFIX = @SIZE_T_SUFFIX@ -STDALIGN_H = @STDALIGN_H@ -STDBOOL_H = @STDBOOL_H@ -STDDEF_H = @STDDEF_H@ -STDINT_H = @STDINT_H@ -STRIP = @STRIP@ -SYSEXITS_H = @SYSEXITS_H@ -SYS_TIME_H_DEFINES_STRUCT_TIMESPEC = @SYS_TIME_H_DEFINES_STRUCT_TIMESPEC@ -TARGET_APPLE_LINKER = @TARGET_APPLE_LINKER@ -TARGET_CC = @TARGET_CC@ -TARGET_CCAS = @TARGET_CCAS@ -TARGET_CCASFLAGS = @TARGET_CCASFLAGS@ -TARGET_CC_VERSION = @TARGET_CC_VERSION@ -TARGET_CFLAGS = @TARGET_CFLAGS@ -TARGET_CPP = @TARGET_CPP@ -TARGET_CPPFLAGS = @TARGET_CPPFLAGS@ -TARGET_DECOMPRESSOR_LINK_ADDR = @TARGET_DECOMPRESSOR_LINK_ADDR@ -TARGET_IMG_BASE_LDOPT = @TARGET_IMG_BASE_LDOPT@ -TARGET_IMG_CFLAGS = @TARGET_IMG_CFLAGS@ -TARGET_IMG_LDFLAGS = @TARGET_IMG_LDFLAGS@ -TARGET_LDFLAGS = @TARGET_LDFLAGS@ -TARGET_LDFLAGS_OLDMAGIC = @TARGET_LDFLAGS_OLDMAGIC@ -TARGET_LINK_ADDR = @TARGET_LINK_ADDR@ -TARGET_MODULE_FORMAT = @TARGET_MODULE_FORMAT@ -TARGET_NM = @TARGET_NM@ -TARGET_NMFLAGS_DEFINED_ONLY = @TARGET_NMFLAGS_DEFINED_ONLY@ -TARGET_NMFLAGS_MINUS_P = @TARGET_NMFLAGS_MINUS_P@ -TARGET_OBJ2ELF = @TARGET_OBJ2ELF@ -TARGET_OBJCONV = @TARGET_OBJCONV@ -TARGET_OBJCOPY = @TARGET_OBJCOPY@ -TARGET_RANLIB = @TARGET_RANLIB@ -TARGET_STRIP = @TARGET_STRIP@ -TIME_H_DEFINES_STRUCT_TIMESPEC = @TIME_H_DEFINES_STRUCT_TIMESPEC@ -UNDEFINE_STRTOK_R = @UNDEFINE_STRTOK_R@ -UNISTD_H_DEFINES_STRUCT_TIMESPEC = @UNISTD_H_DEFINES_STRUCT_TIMESPEC@ -UNISTD_H_HAVE_WINSOCK2_H = @UNISTD_H_HAVE_WINSOCK2_H@ -UNISTD_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS = @UNISTD_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS@ -USE_NLS = @USE_NLS@ -VERSION = @VERSION@ -WCHAR_T_SUFFIX = @WCHAR_T_SUFFIX@ -WINDOWS_64_BIT_OFF_T = @WINDOWS_64_BIT_OFF_T@ -WINDOWS_64_BIT_ST_SIZE = @WINDOWS_64_BIT_ST_SIZE@ -WINDOWS_STAT_INODES = @WINDOWS_STAT_INODES@ -WINDOWS_STAT_TIMESPEC = @WINDOWS_STAT_TIMESPEC@ -WINT_T_SUFFIX = @WINT_T_SUFFIX@ -XGETTEXT = @XGETTEXT@ -XGETTEXT_015 = @XGETTEXT_015@ -XGETTEXT_EXTRA_OPTIONS = @XGETTEXT_EXTRA_OPTIONS@ -YACC = @YACC@ -YFLAGS = @YFLAGS@ -abs_builddir = @abs_builddir@ -abs_srcdir = @abs_srcdir@ -abs_top_builddir = @abs_top_builddir@ -abs_top_srcdir = @abs_top_srcdir@ -ac_ct_CC = @ac_ct_CC@ -ac_ct_CXX = @ac_ct_CXX@ -ac_ct_TARGET_CC = @ac_ct_TARGET_CC@ -am__include = @am__include@ -am__leading_dot = @am__leading_dot@ -am__quote = @am__quote@ -am__tar = @am__tar@ -am__untar = @am__untar@ -bindir = @bindir@ -bootdirname = @bootdirname@ -build = @build@ -build_alias = @build_alias@ -build_cpu = @build_cpu@ -build_os = @build_os@ -build_vendor = @build_vendor@ -builddir = @builddir@ -datadir = @datadir@ -datarootdir = @datarootdir@ -docdir = @docdir@ -dvidir = @dvidir@ -enable_efiemu = @enable_efiemu@ -enable_grub_emu_pci = @enable_grub_emu_pci@ -enable_grub_emu_sdl = @enable_grub_emu_sdl@ -enable_grub_mkfont = @enable_grub_mkfont@ -enable_grub_mount = @enable_grub_mount@ -exec_prefix = @exec_prefix@ -gl_LIBOBJS = @gl_LIBOBJS@ -gl_LTLIBOBJS = @gl_LTLIBOBJS@ -gltests_LIBOBJS = @gltests_LIBOBJS@ -gltests_LTLIBOBJS = @gltests_LTLIBOBJS@ -gltests_WITNESS = @gltests_WITNESS@ -grub_bios_setup = @grub_bios_setup@ -grub_editenv = @grub_editenv@ -grub_file = @grub_file@ -grub_glue_efi = @grub_glue_efi@ -grub_install = @grub_install@ -grub_mkconfig = @grub_mkconfig@ -grub_mkfont = @grub_mkfont@ -grub_mkimage = @grub_mkimage@ -grub_mklayout = @grub_mklayout@ -grub_mkpasswd_pbkdf2 = @grub_mkpasswd_pbkdf2@ -grub_mkrelpath = @grub_mkrelpath@ -grub_mkrescue = @grub_mkrescue@ -grub_probe = @grub_probe@ -grub_reboot = @grub_reboot@ -grub_render_label = @grub_render_label@ -grub_script_check = @grub_script_check@ -grub_set_default = @grub_set_default@ -grub_sparc64_setup = @grub_sparc64_setup@ -grubdirname = @grubdirname@ -host = @host@ -host_alias = @host_alias@ -host_cpu = @host_cpu@ -host_kernel = @host_kernel@ -host_os = @host_os@ -host_vendor = @host_vendor@ -htmldir = @htmldir@ -includedir = @includedir@ -infodir = @infodir@ -install_sh = @install_sh@ -libdir = @libdir@ -libexecdir = @libexecdir@ -localedir = @localedir@ -localstatedir = @localstatedir@ -mandir = @mandir@ -mkdir_p = @mkdir_p@ -oldincludedir = @oldincludedir@ -pdfdir = @pdfdir@ -pkgpyexecdir = @pkgpyexecdir@ -pkgpythondir = @pkgpythondir@ -platform = @platform@ -prefix = @prefix@ -program_transform_name = @program_transform_name@ -psdir = @psdir@ -pyexecdir = @pyexecdir@ -pythondir = @pythondir@ -runstatedir = @runstatedir@ -sbindir = @sbindir@ -sharedstatedir = @sharedstatedir@ -srcdir = @srcdir@ -sysconfdir = @sysconfdir@ -target = @target@ -target_alias = @target_alias@ -target_cpu = @target_cpu@ -target_os = @target_os@ -target_vendor = @target_vendor@ -top_build_prefix = @top_build_prefix@ -top_builddir = @top_builddir@ -top_srcdir = @top_srcdir@ -AUTOMAKE_OPTIONS = subdir-objects -Wno-portability -SUBDIRS = grub-core/lib/gnulib . $(am__append_1) po docs \ - util/bash-completion.d -CFLAGS_PLATFORM = $(am__append_2) $(am__append_3) -@COND_arm_TRUE@@COND_emu_FALSE@LDFLAGS_PLATFORM = -Wl,--wrap=__clear_cache - -# Platform specific options -@COND_sparc64_ieee1275_TRUE@LDFLAGS_PLATFORM = -Wl,-melf64_sparc - -# Other options -CPPFLAGS_DEFAULT = -DGRUB_FILE=\"$(subst $(srcdir)/,,$<)\" \ - -I$(builddir) -I$(srcdir) -I$(top_builddir) -I$(top_srcdir) \ - -I$(top_srcdir)/include -I$(top_builddir)/include \ - -I$(top_srcdir)/grub-core/lib/libgcrypt-grub/src/ -CCASFLAGS_DEFAULT = $(CPPFLAGS_DEFAULT) -DASM_FILE=1 -CFLAGS_KERNEL = $(CFLAGS_PLATFORM) -ffreestanding -LDFLAGS_KERNEL = $(LDFLAGS_PLATFORM) -nostdlib $(TARGET_LDFLAGS_OLDMAGIC) -CPPFLAGS_KERNEL = $(CPPFLAGS_CPU) $(CPPFLAGS_PLATFORM) -DGRUB_KERNEL=1 -CCASFLAGS_KERNEL = $(CCASFLAGS_CPU) $(CCASFLAGS_PLATFORM) -STRIPFLAGS_KERNEL = -R .rel.dyn -R .reginfo -R .note -R .comment -R .drectve -R .note.gnu.gold-version -R .MIPS.abiflags -R .ARM.exidx -CFLAGS_MODULE = $(CFLAGS_PLATFORM) -ffreestanding -LDFLAGS_MODULE = $(LDFLAGS_PLATFORM) -nostdlib $(TARGET_LDFLAGS_OLDMAGIC) -Wl,-r,-d -CPPFLAGS_MODULE = $(CPPFLAGS_CPU) $(CPPFLAGS_PLATFORM) -CCASFLAGS_MODULE = $(CCASFLAGS_CPU) $(CCASFLAGS_PLATFORM) -CFLAGS_IMAGE = $(CFLAGS_PLATFORM) -fno-builtin -LDFLAGS_IMAGE = $(LDFLAGS_PLATFORM) -nostdlib $(TARGET_LDFLAGS_OLDMAGIC) -Wl,-S -CPPFLAGS_IMAGE = $(CPPFLAGS_CPU) $(CPPFLAGS_PLATFORM) -CCASFLAGS_IMAGE = $(CCASFLAGS_CPU) $(CCASFLAGS_PLATFORM) -CFLAGS_PROGRAM = $(CFLAGS_GNULIB) -LDFLAGS_PROGRAM = $(LDFLAGS_GNULIB) -CPPFLAGS_PROGRAM = $(CPPFLAGS_GNULIB) -CCASFLAGS_PROGRAM = $(CCASFLAGS_GNULIB) -CFLAGS_LIBRARY = -CPPFLAGS_LIBRARY = -CCASFLAGS_LIBRARY = - -# Other variables -grubconfdir = $(sysconfdir)/grub.d -platformdir = $(pkglibdir)/$(target_cpu)-$(platform) -starfielddir = $(pkgdatadir)/themes/starfield -CFLAGS_GNULIB = -Wno-undef -Wno-sign-compare -Wno-unused -Wno-unused-parameter -Wno-redundant-decls -Wno-unreachable-code -Wno-conversion -CPPFLAGS_GNULIB = -I$(top_builddir)/grub-core/lib/gnulib -I$(top_srcdir)/grub-core/lib/gnulib -CFLAGS_POSIX = -fno-builtin -CPPFLAGS_POSIX = -I$(top_srcdir)/grub-core/lib/posix_wrap -CFLAGS_GCRY = -Wno-error -Wno-missing-field-initializers -Wno-redundant-decls -Wno-undef $(CFLAGS_POSIX) -CPPFLAGS_GCRY = -I$(top_srcdir)/grub-core/lib/libgcrypt_wrap $(CPPFLAGS_POSIX) -D_GCRYPT_IN_LIBGCRYPT=1 -I$(top_srcdir)/include/grub/gcrypt -CPPFLAGS_EFIEMU = -I$(top_srcdir)/grub-core/efiemu/runtime - -# List file macros for recognizing /interesting/ modules -CPPFLAGS_FS_LIST = -Dgrub_fs_register=FS_LIST_MARKER -CPPFLAGS_VIDEO_LIST = -Dgrub_video_register=VIDEO_LIST_MARKER -CPPFLAGS_PARTMAP_LIST = -Dgrub_partition_map_register=PARTMAP_LIST_MARKER -CPPFLAGS_PARTTOOL_LIST = -Dgrub_parttool_register=PARTTOOL_LIST_MARKER -CPPFLAGS_TERMINAL_LIST = '-Dgrub_term_register_input(...)=INPUT_TERMINAL_LIST_MARKER(__VA_ARGS__)' \ - '-Dgrub_term_register_output(...)=OUTPUT_TERMINAL_LIST_MARKER(__VA_ARGS__)' -CPPFLAGS_COMMAND_LIST = '-Dgrub_register_command(...)=COMMAND_LIST_MARKER(__VA_ARGS__)' \ - '-Dgrub_register_extcmd(...)=EXTCOMMAND_LIST_MARKER(__VA_ARGS__)' \ - '-Dgrub_register_command_p1(...)=P1COMMAND_LIST_MARKER(__VA_ARGS__)' -CPPFLAGS_FDT_LIST := '-Dgrub_fdtbus_register(...)=FDT_DRIVER_LIST_MARKER(__VA_ARGS__)' -CPPFLAGS_MARKER = $(CPPFLAGS_FS_LIST) $(CPPFLAGS_VIDEO_LIST) \ - $(CPPFLAGS_PARTTOOL_LIST) $(CPPFLAGS_PARTMAP_LIST) \ - $(CPPFLAGS_TERMINAL_LIST) $(CPPFLAGS_COMMAND_LIST) \ - $(CPPFLAGS_FDT_LIST) - - -# Define these variables to calm down automake -IMG_FILES = -MOD_FILES = -MODULE_FILES = -MARKER_FILES = -KERNEL_HEADER_FILES = -man_MANS = $(am__append_4) $(am__append_11) $(am__append_16) \ - $(am__append_19) $(am__append_25) $(am__append_30) \ - $(am__append_38) $(am__append_43) -noinst_DATA = -pkgdata_DATA = $(am__append_93) grub-mkconfig_lib -bin_SCRIPTS = grub-kbdcomp -sbin_SCRIPTS = grub-mkconfig grub-set-default grub-reboot -platform_DATA = -check_SCRIPTS = ext234_test squashfs_test iso9660_test hfsplus_test \ - ntfs_test reiserfs_test fat_test minixfs_test xfs_test \ - f2fs_test nilfs2_test romfs_test exfat_test tar_test udf_test \ - hfs_test jfs_test btrfs_test zfs_test cpio_test \ - example_scripted_test gettext_strings_test pata_test ahci_test \ - uhci_test ohci_test ehci_test example_grub_script_test \ - grub_script_eval grub_script_test grub_script_echo1 \ - grub_script_leading_whitespace grub_script_echo_keywords \ - grub_script_vars1 grub_script_for1 grub_script_while1 \ - grub_script_if grub_script_blanklines \ - grub_script_final_semicolon grub_script_dollar \ - grub_script_comments grub_script_functions grub_script_break \ - grub_script_continue grub_script_shift grub_script_blockarg \ - grub_script_setparams grub_script_return grub_cmd_regexp \ - grub_cmd_date grub_cmd_set_date grub_cmd_sleep \ - grub_script_expansion grub_script_not grub_script_no_commands \ - partmap_test hddboot_test fddboot_test cdboot_test \ - netboot_test pseries_test core_compress_test xzcompress_test \ - gzcompress_test lzocompress_test grub_cmd_echo help_test \ - grub_script_gettext grub_script_escape_comma \ - grub_script_strcmp test_sha512sum test_unset grub_func_test \ - grub_cmd_tr file_filter_test grub_cmd_test syslinux_test -dist_grubconf_DATA = util/grub.d/README -noinst_SCRIPTS = grub-mkconfig_lib grub-shell grub-shell-tester \ - grub-fs-tester -grubconf_SCRIPTS = 00_header $(am__append_57) $(am__append_61) \ - $(am__append_65) $(am__append_69) $(am__append_73) \ - $(am__append_77) $(am__append_81) $(am__append_85) \ - 30_os-prober 40_custom 41_custom -noinst_LIBRARIES = libgrubkern.a libgrubmods.a libgrubgcry.a -dist_noinst_DATA = grub-core/kern/disk_common.c \ - grub-core/osdep/unix/relpath.c grub-core/osdep/aros/relpath.c \ - grub-core/osdep/windows/relpath.c \ - grub-core/lib/libgcrypt-grub/cipher/ChangeLog \ - grub-core/osdep/aros/config.c grub-core/osdep/windows/config.c \ - grub-core/osdep/unix/config.c util/grub-mkimagexx.c \ - $(am__append_13) $(am__append_21) $(am__append_27) \ - util/setup.c grub-core/osdep/generic/blocklist.c \ - grub-core/osdep/linux/blocklist.c \ - grub-core/osdep/windows/blocklist.c $(am__append_40) \ - grub-core/osdep/linux/platform.c \ - grub-core/osdep/windows/platform.c \ - grub-core/osdep/basic/platform.c \ - grub-core/osdep/basic/no_platform.c \ - grub-core/osdep/unix/platform.c $(am__append_49) \ - util/grub.d/00_header.in $(am__append_60) $(am__append_64) \ - $(am__append_68) $(am__append_72) $(am__append_76) \ - $(am__append_80) $(am__append_84) $(am__append_88) \ - util/grub.d/30_os-prober.in util/grub.d/40_custom.in \ - util/grub.d/41_custom.in util/grub-mkconfig.in \ - util/grub-set-default.in util/grub-reboot.in \ - util/grub-mkconfig_lib.in util/grub-kbdcomp.in \ - tests/util/grub-shell.in tests/util/grub-shell-tester.in \ - tests/util/grub-fs-tester.in tests/ext234_test.in \ - tests/squashfs_test.in tests/iso9660_test.in \ - tests/hfsplus_test.in tests/ntfs_test.in \ - tests/reiserfs_test.in tests/fat_test.in tests/minixfs_test.in \ - tests/xfs_test.in tests/f2fs_test.in tests/nilfs2_test.in \ - tests/romfs_test.in tests/exfat_test.in tests/tar_test.in \ - tests/udf_test.in tests/hfs_test.in tests/jfs_test.in \ - tests/btrfs_test.in tests/zfs_test.in tests/cpio_test.in \ - tests/example_scripted_test.in tests/gettext_strings_test.in \ - tests/pata_test.in tests/ahci_test.in tests/uhci_test.in \ - tests/ohci_test.in tests/ehci_test.in \ - tests/example_grub_script_test.in tests/grub_script_eval.in \ - tests/grub_script_test.in tests/grub_script_echo1.in \ - tests/grub_script_leading_whitespace.in \ - tests/grub_script_echo_keywords.in tests/grub_script_vars1.in \ - tests/grub_script_for1.in tests/grub_script_while1.in \ - tests/grub_script_if.in tests/grub_script_blanklines.in \ - tests/grub_script_final_semicolon.in \ - tests/grub_script_dollar.in tests/grub_script_comments.in \ - tests/grub_script_functions.in tests/grub_script_break.in \ - tests/grub_script_continue.in tests/grub_script_shift.in \ - tests/grub_script_blockarg.in tests/grub_script_setparams.in \ - tests/grub_script_return.in tests/grub_cmd_regexp.in \ - tests/grub_cmd_date.in tests/grub_cmd_set_date.in \ - tests/grub_cmd_sleep.in tests/grub_script_expansion.in \ - tests/grub_script_not.in tests/grub_script_no_commands.in \ - tests/partmap_test.in tests/hddboot_test.in \ - tests/fddboot_test.in tests/cdboot_test.in \ - tests/netboot_test.in tests/pseries_test.in \ - tests/core_compress_test.in tests/xzcompress_test.in \ - tests/gzcompress_test.in tests/lzocompress_test.in \ - tests/grub_cmd_echo.in tests/help_test.in \ - tests/grub_script_gettext.in tests/grub_script_escape_comma.in \ - tests/grub_script_strcmp.in tests/test_sha512sum.in \ - tests/test_unset.in tests/grub_func_test.in \ - tests/grub_cmd_tr.in tests/file_filter_test.in \ - tests/grub_cmd_test.in tests/syslinux_test.in -platform_SCRIPTS = -EXTRA_DIST = autogen.sh geninit.sh gentpl.py Makefile.util.def \ - Makefile.utilgcry.def asm-tests unicode util/import_gcry.py \ - util/import_unicode.py docs/man docs/autoiso.cfg docs/grub.cfg \ - docs/osdetect.cfg conf/i386-cygwin-img-ld.sc \ - grub-core/Makefile.core.def grub-core/Makefile.gcry.def \ - grub-core/genmoddep.awk grub-core/genmod.sh.in \ - grub-core/gensyminfo.sh.in grub-core/gensymlist.sh \ - grub-core/genemuinit.sh grub-core/genemuinitheader.sh \ - grub-core/lib/gnulib-patches/fix-null-deref.patch \ - grub-core/lib/gnulib-patches/fix-width.patch \ - grub-core/lib/gnulib-patches/no-abort.patch \ - grub-core/lib/libgcrypt \ - grub-core/lib/libgcrypt-grub/mpi/generic $(shell find \ - $(top_srcdir)/include -name '*.h') $(shell find \ - $(top_srcdir)/grub-core/lib -name '*.h') \ - grub-core/efiemu/runtime/config.h grub-core/lib/LzmaDec.c \ - grub-core/fs/cpio_common.c BUGS util/i386/efi/grub-dumpdevtree \ - util/spkmodem-recv.c util/import_gcrypth.sed util/bin2h.c \ - util/grub-gen-asciih.c util/grub-gen-widthspec.c \ - util/grub-module-verifier.c util/grub-module-verifier32.c \ - util/grub-module-verifier64.c util/grub-module-verifierXX.c \ - util/grub-pe2elf.c m4/gnulib-cache.m4 m4/glibc2.m4 \ - m4/gnulib-tool.m4 m4/intdiv0.m4 m4/intl.m4 m4/intldir.m4 \ - m4/intmax.m4 m4/inttypes-pri.m4 m4/lcmessage.m4 m4/lock.m4 \ - m4/printf-posix.m4 m4/threadlib.m4 m4/uintmax_t.m4 \ - m4/visibility.m4 m4/math_h.m4 grub-core/osdep/apple/hostdisk.c \ - grub-core/osdep/aros/hostdisk.c \ - grub-core/osdep/basic/hostdisk.c \ - grub-core/osdep/bsd/hostdisk.c \ - grub-core/osdep/freebsd/hostdisk.c \ - grub-core/osdep/hurd/hostdisk.c \ - grub-core/osdep/linux/hostdisk.c \ - grub-core/osdep/windows/hostdisk.c \ - grub-core/osdep/sun/hostdisk.c \ - grub-core/osdep/haiku/hostdisk.c grub-core/osdep/basic/init.c \ - grub-core/osdep/windows/init.c grub-core/osdep/apple/getroot.c \ - grub-core/osdep/aros/getroot.c grub-core/osdep/basic/getroot.c \ - grub-core/osdep/bsd/getroot.c \ - grub-core/osdep/windows/getroot.c \ - grub-core/osdep/freebsd/getroot.c \ - grub-core/osdep/hurd/getroot.c grub-core/osdep/linux/getroot.c \ - grub-core/osdep/sun/getroot.c grub-core/osdep/haiku/getroot.c \ - grub-core/osdep/basic/random.c grub-core/osdep/basic/ofpath.c \ - grub-core/osdep/unix/password.c grub-core/osdep/unix/random.c \ - grub-core/osdep/unix/sleep.c grub-core/osdep/linux/ofpath.c \ - grub-core/osdep/windows/password.c \ - grub-core/osdep/windows/random.c \ - grub-core/osdep/windows/sleep.c \ - tests/dfly-mbr-mbexample.mbr.img.gz \ - tests/dfly-mbr-mbexample.dfly.img.gz coreboot.cfg \ - tests/file_filter/file tests/file_filter/file.gz \ - tests/file_filter/file.gz.sig tests/file_filter/file.lzop \ - tests/file_filter/file.lzop.sig tests/file_filter/file.xz \ - tests/file_filter/file.xz.sig tests/file_filter/keys \ - tests/file_filter/keys.pub tests/file_filter/test.cfg \ - tests/syslinux/ubuntu10.04/isolinux/prompt.cfg \ - tests/syslinux/ubuntu10.04/isolinux/gfxboot.cfg \ - tests/syslinux/ubuntu10.04/isolinux/adtxt.cfg \ - tests/syslinux/ubuntu10.04/isolinux/isolinux.cfg \ - tests/syslinux/ubuntu10.04/isolinux/exithelp.cfg \ - tests/syslinux/ubuntu10.04/isolinux/txt.cfg \ - tests/syslinux/ubuntu10.04/isolinux/menu.cfg \ - tests/syslinux/ubuntu10.04/isolinux/stdmenu.cfg \ - tests/syslinux/ubuntu10.04/isolinux/dtmenu.cfg \ - tests/syslinux/ubuntu10.04/isolinux/po4a.cfg \ - tests/syslinux/ubuntu10.04/isolinux/rqtxt.cfg \ - tests/syslinux/ubuntu10.04_grub.cfg.in $(am__append_59) \ - $(am__append_63) $(am__append_67) $(am__append_71) \ - $(am__append_75) $(am__append_79) $(am__append_83) \ - $(am__append_87) po/exclude.pot util/garbage-gen.c \ - $(starfield_theme_files) \ - $(srcdir)/themes/starfield/src/slider_s.xcf \ - $(srcdir)/themes/starfield/src/slider_n.xcf \ - $(srcdir)/themes/starfield/src/slider_c.xcf \ - $(srcdir)/themes/starfield/src/blob_nw.xcf \ - $(srcdir)/themes/starfield/src/bootmenu/center.xcf \ - $(srcdir)/themes/starfield/src/bootmenu/corner.xcf \ - $(srcdir)/themes/starfield/src/bootmenu/side.xcf \ - $(srcdir)/themes/starfield/src/terminalbox/side.xcf \ - $(srcdir)/themes/starfield/src/terminalbox/corner.xcf \ - $(srcdir)/themes/starfield/src/terminalbox/center.xcf \ - grub-core/tests/boot/kbsd.init-i386.S \ - grub-core/tests/boot/kbsd.init-x86_64.S \ - grub-core/tests/boot/kbsd.spec.txt \ - grub-core/tests/boot/kernel-8086.S \ - grub-core/tests/boot/kernel-i386.S \ - grub-core/tests/boot/kfreebsd-aout.cfg \ - grub-core/tests/boot/kfreebsd.cfg \ - grub-core/tests/boot/kfreebsd.init-i386.S \ - grub-core/tests/boot/kfreebsd.init-x86_64.S \ - grub-core/tests/boot/knetbsd.cfg \ - grub-core/tests/boot/kopenbsd.cfg \ - grub-core/tests/boot/kopenbsdlabel.txt \ - grub-core/tests/boot/linux16.cfg \ - grub-core/tests/boot/linux.cfg \ - grub-core/tests/boot/linux.init-i386.S \ - grub-core/tests/boot/linux.init-mips.S \ - grub-core/tests/boot/linux.init-ppc.S \ - grub-core/tests/boot/linux.init-x86_64.S \ - grub-core/tests/boot/linux-ppc.cfg \ - grub-core/tests/boot/multiboot2.cfg \ - grub-core/tests/boot/multiboot.cfg \ - grub-core/tests/boot/ntldr.cfg \ - grub-core/tests/boot/pc-chainloader.cfg \ - grub-core/tests/boot/qemu-shutdown-x86.S linguas.sh ChangeLog \ - ChangeLog-2015 -CLEANFILES = $(nodist_libgrubkern_a_SOURCES) \ - $(nodist_libgrubmods_a_SOURCES) \ - $(nodist_libgrubgcry_a_SOURCES) $(am__append_5) \ - $(nodist_grub_mkimage_SOURCES) $(am__append_6) \ - $(nodist_grub_mkrelpath_SOURCES) $(am__append_7) \ - $(nodist_grub_script_check_SOURCES) $(am__append_8) \ - $(nodist_grub_editenv_SOURCES) $(am__append_9) \ - $(nodist_grub_mkpasswd_pbkdf2_SOURCES) $(am__append_12) \ - $(am__append_15) $(am__append_17) \ - $(nodist_grub_fstest_SOURCES) $(am__append_20) \ - $(am__append_23) $(am__append_26) $(am__append_29) \ - $(am__append_31) $(nodist_grub_probe_SOURCES) $(am__append_32) \ - $(nodist_grub_bios_setup_SOURCES) $(am__append_33) \ - $(nodist_grub_sparc64_setup_SOURCES) $(am__append_34) \ - $(nodist_grub_ofpathname_SOURCES) $(am__append_35) \ - $(nodist_grub_mklayout_SOURCES) $(am__append_36) \ - $(nodist_grub_macbless_SOURCES) $(am__append_39) \ - $(am__append_42) $(am__append_44) \ - $(nodist_grub_mkstandalone_SOURCES) $(am__append_45) \ - $(nodist_grub_install_SOURCES) $(am__append_46) \ - $(nodist_grub_mknetdir_SOURCES) \ - $(nodist_example_unit_test_SOURCES) \ - $(nodist_printf_test_SOURCES) $(nodist_date_test_SOURCES) \ - $(am__append_51) $(nodist_cmp_test_SOURCES) $(am__append_52) \ - $(nodist_grub_menulst2cfg_SOURCES) $(am__append_53) \ - $(nodist_grub_syslinux2cfg_SOURCES) $(am__append_54) \ - $(nodist_grub_glue_efi_SOURCES) $(am__append_55) \ - $(nodist_grub_render_label_SOURCES) $(am__append_56) \ - $(nodist_grub_file_SOURCES) 00_header $(am__append_58) \ - $(am__append_62) $(am__append_66) $(am__append_70) \ - $(am__append_74) $(am__append_78) $(am__append_82) \ - $(am__append_86) 30_os-prober 40_custom 41_custom \ - $(am__append_89) grub-mkconfig $(am__append_90) \ - grub-set-default $(am__append_91) grub-reboot \ - grub-mkconfig_lib $(am__append_92) grub-kbdcomp grub-shell \ - grub-shell-tester grub-fs-tester ext234_test squashfs_test \ - iso9660_test hfsplus_test ntfs_test reiserfs_test fat_test \ - minixfs_test xfs_test f2fs_test nilfs2_test romfs_test \ - exfat_test tar_test udf_test hfs_test jfs_test btrfs_test \ - zfs_test cpio_test example_scripted_test gettext_strings_test \ - pata_test ahci_test uhci_test ohci_test ehci_test \ - example_grub_script_test grub_script_eval grub_script_test \ - grub_script_echo1 grub_script_leading_whitespace \ - grub_script_echo_keywords grub_script_vars1 grub_script_for1 \ - grub_script_while1 grub_script_if grub_script_blanklines \ - grub_script_final_semicolon grub_script_dollar \ - grub_script_comments grub_script_functions grub_script_break \ - grub_script_continue grub_script_shift grub_script_blockarg \ - grub_script_setparams grub_script_return grub_cmd_regexp \ - grub_cmd_date grub_cmd_set_date grub_cmd_sleep \ - grub_script_expansion grub_script_not grub_script_no_commands \ - partmap_test hddboot_test fddboot_test cdboot_test \ - netboot_test pseries_test core_compress_test xzcompress_test \ - gzcompress_test lzocompress_test grub_cmd_echo help_test \ - grub_script_gettext grub_script_escape_comma \ - grub_script_strcmp test_sha512sum test_unset grub_func_test \ - grub_cmd_tr file_filter_test grub_cmd_test syslinux_test \ - grub_script.tab.c grub_script.tab.h grub_script.yy.c \ - grub_script.yy.h libgrub.pp libgrub_a_init.lst \ - libgrub_a_init.c grub_fstest.pp grub_fstest_init.lst \ - grub_fstest_init.c build-grub-mkfont$(BUILD_EXEEXT) \ - garbage-gen$(BUILD_EXEEXT) \ - build-grub-gen-asciih$(BUILD_EXEEXT) \ - build-grub-gen-widthspec$(BUILD_EXEEXT) $(am__append_94) \ - unicode.pf2 ascii.pf2 euro.pf2 ascii.h widthspec.h \ - $(am__append_95) tests/syslinux/ubuntu10.04_grub.cfg -BUILT_SOURCES = $(nodist_libgrubkern_a_SOURCES) \ - $(nodist_libgrubmods_a_SOURCES) \ - $(nodist_libgrubgcry_a_SOURCES) $(nodist_grub_mkimage_SOURCES) \ - $(nodist_grub_mkrelpath_SOURCES) \ - $(nodist_grub_script_check_SOURCES) \ - $(nodist_grub_editenv_SOURCES) \ - $(nodist_grub_mkpasswd_pbkdf2_SOURCES) $(am__append_14) \ - $(nodist_grub_fstest_SOURCES) $(am__append_22) \ - $(am__append_28) $(nodist_grub_probe_SOURCES) \ - $(nodist_grub_bios_setup_SOURCES) \ - $(nodist_grub_sparc64_setup_SOURCES) \ - $(nodist_grub_ofpathname_SOURCES) \ - $(nodist_grub_mklayout_SOURCES) \ - $(nodist_grub_macbless_SOURCES) $(am__append_41) \ - $(nodist_grub_mkstandalone_SOURCES) \ - $(nodist_grub_install_SOURCES) $(nodist_grub_mknetdir_SOURCES) \ - $(nodist_example_unit_test_SOURCES) \ - $(nodist_printf_test_SOURCES) $(nodist_date_test_SOURCES) \ - $(am__append_50) $(nodist_cmp_test_SOURCES) \ - $(nodist_grub_menulst2cfg_SOURCES) \ - $(nodist_grub_syslinux2cfg_SOURCES) \ - $(nodist_grub_glue_efi_SOURCES) \ - $(nodist_grub_render_label_SOURCES) \ - $(nodist_grub_file_SOURCES) -AM_CFLAGS = $(HOST_CFLAGS) -AM_LDFLAGS = $(HOST_LDFLAGS) -AM_CPPFLAGS = $(HOST_CPPFLAGS) $(CPPFLAGS_DEFAULT) -AM_CCASFLAGS = $(HOST_CCASFLAGS) $(CCASFLAGS_DEFAULT) -ACLOCAL_AMFLAGS = -I m4 -libgrubkern_a_SOURCES = util/misc.c grub-core/kern/command.c \ - grub-core/kern/device.c grub-core/kern/disk.c \ - grub-core/lib/disk.c util/getroot.c \ - grub-core/osdep/unix/getroot.c grub-core/osdep/getroot.c \ - grub-core/osdep/devmapper/getroot.c grub-core/osdep/relpath.c \ - grub-core/kern/emu/hostdisk.c \ - grub-core/osdep/devmapper/hostdisk.c \ - grub-core/osdep/hostdisk.c grub-core/osdep/unix/hostdisk.c \ - grub-core/osdep/exec.c grub-core/osdep/sleep.c \ - grub-core/osdep/password.c grub-core/kern/emu/misc.c \ - grub-core/kern/emu/mm.c grub-core/kern/env.c \ - grub-core/kern/err.c grub-core/kern/file.c grub-core/kern/fs.c \ - grub-core/kern/list.c grub-core/kern/misc.c \ - grub-core/kern/partition.c grub-core/lib/crypto.c \ - grub-core/disk/luks.c grub-core/disk/geli.c \ - grub-core/disk/cryptodisk.c grub-core/disk/AFSplitter.c \ - grub-core/lib/pbkdf2.c grub-core/commands/extcmd.c \ - grub-core/lib/arg.c grub-core/disk/ldm.c \ - grub-core/disk/diskfilter.c grub-core/partmap/gpt.c \ - grub-core/partmap/msdos.c grub-core/fs/proc.c \ - grub-core/fs/archelp.c -nodist_libgrubkern_a_SOURCES = -libgrubkern_a_CFLAGS = $(AM_CFLAGS) $(CFLAGS_LIBRARY) $(CFLAGS_GNULIB) -libgrubkern_a_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_LIBRARY) \ - $(CPPFLAGS_GNULIB) -libgrubkern_a_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_LIBRARY) -libgrubmods_a_SOURCES = grub-core/commands/blocklist.c \ - grub-core/commands/macbless.c grub-core/commands/xnu_uuid.c \ - grub-core/commands/testload.c grub-core/commands/ls.c \ - grub-core/disk/dmraid_nvidia.c grub-core/disk/loopback.c \ - grub-core/disk/lvm.c grub-core/disk/mdraid_linux.c \ - grub-core/disk/mdraid_linux_be.c \ - grub-core/disk/mdraid1x_linux.c grub-core/disk/raid5_recover.c \ - grub-core/disk/raid6_recover.c grub-core/font/font.c \ - grub-core/gfxmenu/font.c grub-core/normal/charset.c \ - grub-core/video/fb/fbblit.c grub-core/video/fb/fbutil.c \ - grub-core/video/fb/fbfill.c grub-core/video/fb/video_fb.c \ - grub-core/video/video.c grub-core/video/capture.c \ - grub-core/video/colors.c grub-core/unidata.c \ - grub-core/io/bufio.c grub-core/fs/affs.c grub-core/fs/afs.c \ - grub-core/fs/bfs.c grub-core/fs/btrfs.c grub-core/fs/cbfs.c \ - grub-core/fs/cpio.c grub-core/fs/cpio_be.c grub-core/fs/odc.c \ - grub-core/fs/newc.c grub-core/fs/ext2.c grub-core/fs/fat.c \ - grub-core/fs/exfat.c grub-core/fs/f2fs.c grub-core/fs/fshelp.c \ - grub-core/fs/hfs.c grub-core/fs/hfsplus.c \ - grub-core/fs/hfspluscomp.c grub-core/fs/iso9660.c \ - grub-core/fs/jfs.c grub-core/fs/minix.c grub-core/fs/minix2.c \ - grub-core/fs/minix3.c grub-core/fs/minix_be.c \ - grub-core/fs/minix2_be.c grub-core/fs/minix3_be.c \ - grub-core/fs/nilfs2.c grub-core/fs/ntfs.c \ - grub-core/fs/ntfscomp.c grub-core/fs/reiserfs.c \ - grub-core/fs/romfs.c grub-core/fs/sfs.c grub-core/fs/squash4.c \ - grub-core/fs/tar.c grub-core/fs/udf.c grub-core/fs/ufs2.c \ - grub-core/fs/ufs.c grub-core/fs/ufs_be.c grub-core/fs/xfs.c \ - grub-core/fs/zfs/zfscrypt.c grub-core/fs/zfs/zfs.c \ - grub-core/fs/zfs/zfsinfo.c grub-core/fs/zfs/zfs_lzjb.c \ - grub-core/fs/zfs/zfs_lz4.c grub-core/fs/zfs/zfs_sha256.c \ - grub-core/fs/zfs/zfs_fletcher.c grub-core/lib/envblk.c \ - grub-core/lib/hexdump.c grub-core/lib/LzFind.c \ - grub-core/lib/LzmaEnc.c grub-core/lib/crc.c \ - grub-core/lib/adler32.c grub-core/lib/crc64.c \ - grub-core/normal/datetime.c grub-core/normal/misc.c \ - grub-core/partmap/acorn.c grub-core/partmap/amiga.c \ - grub-core/partmap/apple.c grub-core/partmap/sun.c \ - grub-core/partmap/plan.c grub-core/partmap/dvh.c \ - grub-core/partmap/sunpc.c grub-core/partmap/bsdlabel.c \ - grub-core/partmap/dfly.c grub-core/script/function.c \ - grub-core/script/lexer.c grub-core/script/main.c \ - grub-core/script/script.c grub-core/script/argv.c \ - grub-core/io/gzio.c grub-core/io/xzio.c grub-core/io/lzopio.c \ - grub-core/kern/ia64/dl_helper.c grub-core/kern/arm/dl_helper.c \ - grub-core/kern/arm64/dl_helper.c \ - grub-core/lib/minilzo/minilzo.c \ - grub-core/lib/xzembed/xz_dec_bcj.c \ - grub-core/lib/xzembed/xz_dec_lzma2.c \ - grub-core/lib/xzembed/xz_dec_stream.c \ - grub-core/lib/zstd/debug.c grub-core/lib/zstd/entropy_common.c \ - grub-core/lib/zstd/error_private.c \ - grub-core/lib/zstd/fse_decompress.c \ - grub-core/lib/zstd/huf_decompress.c \ - grub-core/lib/zstd/module.c grub-core/lib/zstd/xxhash.c \ - grub-core/lib/zstd/zstd_common.c \ - grub-core/lib/zstd/zstd_decompress.c -nodist_libgrubmods_a_SOURCES = grub_script.tab.c grub_script.yy.c \ - libgrub_a_init.c grub_script.yy.h grub_script.tab.h -libgrubmods_a_CFLAGS = $(AM_CFLAGS) $(CFLAGS_LIBRARY) -fno-builtin \ - -Wno-undef -libgrubmods_a_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_LIBRARY) \ - -I$(srcdir)/grub-core/lib/minilzo \ - -I$(srcdir)/grub-core/lib/xzembed \ - -I$(srcdir)/grub-core/lib/zstd -DMINILZO_HAVE_CONFIG_H -libgrubmods_a_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_LIBRARY) -libgrubgcry_a_SOURCES = grub-core/lib/libgcrypt-grub/cipher/arcfour.c \ - grub-core/lib/libgcrypt-grub/cipher/blowfish.c \ - grub-core/lib/libgcrypt-grub/cipher/camellia-glue.c \ - grub-core/lib/libgcrypt-grub/cipher/camellia.c \ - grub-core/lib/libgcrypt-grub/cipher/cast5.c \ - grub-core/lib/libgcrypt-grub/cipher/crc.c \ - grub-core/lib/libgcrypt-grub/cipher/des.c \ - grub-core/lib/libgcrypt-grub/cipher/idea.c \ - grub-core/lib/libgcrypt-grub/cipher/md4.c \ - grub-core/lib/libgcrypt-grub/cipher/md5.c \ - grub-core/lib/libgcrypt-grub/cipher/rfc2268.c \ - grub-core/lib/libgcrypt-grub/cipher/rijndael.c \ - grub-core/lib/libgcrypt-grub/cipher/rmd160.c \ - grub-core/lib/libgcrypt-grub/cipher/seed.c \ - grub-core/lib/libgcrypt-grub/cipher/serpent.c \ - grub-core/lib/libgcrypt-grub/cipher/sha1.c \ - grub-core/lib/libgcrypt-grub/cipher/sha256.c \ - grub-core/lib/libgcrypt-grub/cipher/sha512.c \ - grub-core/lib/libgcrypt-grub/cipher/tiger.c \ - grub-core/lib/libgcrypt-grub/cipher/twofish.c \ - grub-core/lib/libgcrypt-grub/cipher/whirlpool.c \ - grub-core/lib/libgcrypt-grub/cipher/init.c -nodist_libgrubgcry_a_SOURCES = -libgrubgcry_a_CFLAGS = $(AM_CFLAGS) $(CFLAGS_LIBRARY) $(CFLAGS_GCRY) -libgrubgcry_a_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_LIBRARY) \ - $(CPPFLAGS_GCRY) -libgrubgcry_a_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_LIBRARY) -grub_mkimage_SOURCES = util/grub-mkimage.c util/mkimage.c util/grub-mkimage32.c util/grub-mkimage64.c util/resolve.c grub-core/kern/emu/argp_common.c grub-core/osdep/init.c grub-core/osdep/config.c util/config.c -nodist_grub_mkimage_SOURCES = -grub_mkimage_LDADD = libgrubmods.a libgrubgcry.a libgrubkern.a grub-core/lib/gnulib/libgnu.a $(LIBLZMA) $(LIBINTL) $(LIBDEVMAPPER) $(LIBZFS) $(LIBNVPAIR) $(LIBGEOM) -grub_mkimage_CFLAGS = $(AM_CFLAGS) $(CFLAGS_PROGRAM) -grub_mkimage_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_PROGRAM) -grub_mkimage_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_PROGRAM) -DGRUB_PKGLIBDIR=\"$(pkglibdir)\" -grub_mkimage_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_PROGRAM) -grub_mkrelpath_SOURCES = util/grub-mkrelpath.c grub-core/kern/emu/argp_common.c grub-core/osdep/init.c -nodist_grub_mkrelpath_SOURCES = -grub_mkrelpath_LDADD = libgrubmods.a libgrubgcry.a libgrubkern.a grub-core/lib/gnulib/libgnu.a $(LIBINTL) $(LIBDEVMAPPER) $(LIBUTIL) $(LIBZFS) $(LIBNVPAIR) $(LIBGEOM) -grub_mkrelpath_CFLAGS = $(AM_CFLAGS) $(CFLAGS_PROGRAM) -grub_mkrelpath_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_PROGRAM) -grub_mkrelpath_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_PROGRAM) -grub_mkrelpath_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_PROGRAM) -grub_script_check_SOURCES = util/grub-script-check.c grub-core/kern/emu/argp_common.c grub-core/osdep/init.c -nodist_grub_script_check_SOURCES = -grub_script_check_LDADD = libgrubmods.a libgrubgcry.a libgrubkern.a grub-core/lib/gnulib/libgnu.a $(LIBINTL) $(LIBDEVMAPPER) $(LIBZFS) $(LIBNVPAIR) $(LIBGEOM) -grub_script_check_CFLAGS = $(AM_CFLAGS) $(CFLAGS_PROGRAM) -grub_script_check_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_PROGRAM) -grub_script_check_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_PROGRAM) -grub_script_check_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_PROGRAM) -grub_editenv_SOURCES = util/grub-editenv.c util/editenv.c grub-core/osdep/init.c -nodist_grub_editenv_SOURCES = -grub_editenv_LDADD = libgrubmods.a libgrubgcry.a libgrubkern.a grub-core/lib/gnulib/libgnu.a $(LIBINTL) $(LIBDEVMAPPER) $(LIBZFS) $(LIBNVPAIR) $(LIBGEOM) -grub_editenv_CFLAGS = $(AM_CFLAGS) $(CFLAGS_PROGRAM) -grub_editenv_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_PROGRAM) -grub_editenv_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_PROGRAM) -grub_editenv_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_PROGRAM) -grub_mkpasswd_pbkdf2_SOURCES = util/grub-mkpasswd-pbkdf2.c grub-core/kern/emu/argp_common.c grub-core/osdep/random.c grub-core/osdep/init.c -nodist_grub_mkpasswd_pbkdf2_SOURCES = -grub_mkpasswd_pbkdf2_LDADD = libgrubmods.a libgrubgcry.a libgrubkern.a grub-core/lib/gnulib/libgnu.a $(LIBINTL) $(LIBDEVMAPPER) $(LIBZFS) $(LIBNVPAIR) $(LIBGEOM) -grub_mkpasswd_pbkdf2_CFLAGS = $(AM_CFLAGS) $(CFLAGS_PROGRAM) -grub_mkpasswd_pbkdf2_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_PROGRAM) -grub_mkpasswd_pbkdf2_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_PROGRAM) -grub_mkpasswd_pbkdf2_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_PROGRAM) -@COND_APPLE_LINKER_TRUE@grub_macho2img_SOURCES = util/grub-macho2img.c -@COND_APPLE_LINKER_TRUE@nodist_grub_macho2img_SOURCES = -@COND_APPLE_LINKER_TRUE@grub_macho2img_LDADD = -@COND_APPLE_LINKER_TRUE@grub_macho2img_CFLAGS = $(AM_CFLAGS) $(CFLAGS_PROGRAM) -@COND_APPLE_LINKER_TRUE@grub_macho2img_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_PROGRAM) -@COND_APPLE_LINKER_TRUE@grub_macho2img_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_PROGRAM) -@COND_APPLE_LINKER_TRUE@grub_macho2img_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_PROGRAM) -grub_fstest_SOURCES = util/grub-fstest.c grub-core/kern/emu/hostfs.c grub-core/disk/host.c grub-core/osdep/init.c -nodist_grub_fstest_SOURCES = grub_fstest_init.c -grub_fstest_LDADD = libgrubmods.a libgrubgcry.a libgrubkern.a grub-core/lib/gnulib/libgnu.a $(LIBINTL) $(LIBDEVMAPPER) $(LIBUTIL) $(LIBZFS) $(LIBNVPAIR) $(LIBGEOM) -grub_fstest_CFLAGS = $(AM_CFLAGS) $(CFLAGS_PROGRAM) -grub_fstest_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_PROGRAM) -grub_fstest_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_PROGRAM) -grub_fstest_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_PROGRAM) -@COND_GRUB_MOUNT_TRUE@grub_mount_SOURCES = util/grub-mount.c grub-core/kern/emu/hostfs.c grub-core/disk/host.c grub-core/osdep/init.c -@COND_GRUB_MOUNT_TRUE@nodist_grub_mount_SOURCES = grub_fstest_init.c -@COND_GRUB_MOUNT_TRUE@grub_mount_LDADD = libgrubmods.a libgrubgcry.a libgrubkern.a grub-core/lib/gnulib/libgnu.a $(LIBINTL) $(LIBDEVMAPPER) $(LIBZFS) $(LIBNVPAIR) $(LIBGEOM) -lfuse -@COND_GRUB_MOUNT_TRUE@grub_mount_CFLAGS = $(AM_CFLAGS) $(CFLAGS_PROGRAM) -@COND_GRUB_MOUNT_TRUE@grub_mount_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_PROGRAM) -@COND_GRUB_MOUNT_TRUE@grub_mount_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_PROGRAM) -@COND_GRUB_MOUNT_TRUE@grub_mount_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_PROGRAM) -@COND_GRUB_MKFONT_TRUE@grub_mkfont_SOURCES = util/grub-mkfont.c grub-core/kern/emu/argp_common.c grub-core/osdep/init.c -@COND_GRUB_MKFONT_TRUE@nodist_grub_mkfont_SOURCES = -@COND_GRUB_MKFONT_TRUE@grub_mkfont_LDADD = libgrubmods.a libgrubgcry.a libgrubkern.a grub-core/lib/gnulib/libgnu.a $(FREETYPE_LIBS) $(LIBINTL) $(LIBDEVMAPPER) $(LIBZFS) $(LIBNVPAIR) $(LIBGEOM) -@COND_GRUB_MKFONT_TRUE@grub_mkfont_CFLAGS = $(AM_CFLAGS) $(CFLAGS_PROGRAM) $(FREETYPE_CFLAGS) -@COND_GRUB_MKFONT_TRUE@grub_mkfont_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_PROGRAM) -@COND_GRUB_MKFONT_TRUE@grub_mkfont_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_PROGRAM) -DGRUB_MKFONT=1 -@COND_GRUB_MKFONT_TRUE@grub_mkfont_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_PROGRAM) -grub_probe_SOURCES = util/grub-probe.c util/probe.c grub-core/osdep/ofpath.c grub-core/kern/emu/argp_common.c grub-core/osdep/init.c -nodist_grub_probe_SOURCES = -grub_probe_LDADD = libgrubmods.a libgrubgcry.a libgrubkern.a grub-core/lib/gnulib/libgnu.a $(LIBINTL) $(LIBDEVMAPPER) $(LIBUTIL) $(LIBZFS) $(LIBNVPAIR) $(LIBGEOM) -grub_probe_CFLAGS = $(AM_CFLAGS) $(CFLAGS_PROGRAM) -grub_probe_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_PROGRAM) -grub_probe_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_PROGRAM) -grub_probe_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_PROGRAM) -grub_bios_setup_SOURCES = util/grub-setup.c util/setup_bios.c grub-core/kern/emu/argp_common.c grub-core/lib/reed_solomon.c grub-core/osdep/blocklist.c grub-core/osdep/init.c -nodist_grub_bios_setup_SOURCES = -grub_bios_setup_LDADD = libgrubmods.a libgrubkern.a libgrubgcry.a grub-core/lib/gnulib/libgnu.a $(LIBINTL) $(LIBDEVMAPPER) $(LIBUTIL) $(LIBZFS) $(LIBNVPAIR) $(LIBGEOM) -grub_bios_setup_CFLAGS = $(AM_CFLAGS) $(CFLAGS_PROGRAM) -grub_bios_setup_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_PROGRAM) -grub_bios_setup_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_PROGRAM) -DGRUB_SETUP_FUNC=grub_util_bios_setup -grub_bios_setup_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_PROGRAM) -grub_sparc64_setup_SOURCES = util/grub-setup.c util/setup_sparc.c grub-core/kern/emu/argp_common.c grub-core/lib/reed_solomon.c grub-core/osdep/ofpath.c grub-core/osdep/blocklist.c grub-core/osdep/init.c -nodist_grub_sparc64_setup_SOURCES = -grub_sparc64_setup_LDADD = libgrubmods.a libgrubkern.a libgrubgcry.a grub-core/lib/gnulib/libgnu.a $(LIBINTL) $(LIBDEVMAPPER) $(LIBUTIL) $(LIBZFS) $(LIBNVPAIR) $(LIBGEOM) -grub_sparc64_setup_CFLAGS = $(AM_CFLAGS) $(CFLAGS_PROGRAM) -grub_sparc64_setup_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_PROGRAM) -grub_sparc64_setup_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_PROGRAM) -DGRUB_SETUP_FUNC=grub_util_sparc_setup -grub_sparc64_setup_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_PROGRAM) -grub_ofpathname_SOURCES = util/ieee1275/grub-ofpathname.c grub-core/osdep/ofpath.c grub-core/osdep/init.c -nodist_grub_ofpathname_SOURCES = -grub_ofpathname_LDADD = libgrubmods.a libgrubgcry.a libgrubkern.a grub-core/lib/gnulib/libgnu.a $(LIBINTL) $(LIBDEVMAPPER) $(LIBUTIL) $(LIBZFS) $(LIBNVPAIR) $(LIBGEOM) -grub_ofpathname_CFLAGS = $(AM_CFLAGS) $(CFLAGS_PROGRAM) -grub_ofpathname_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_PROGRAM) -grub_ofpathname_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_PROGRAM) -grub_ofpathname_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_PROGRAM) -grub_mklayout_SOURCES = util/grub-mklayout.c grub-core/kern/emu/argp_common.c grub-core/osdep/init.c -nodist_grub_mklayout_SOURCES = -grub_mklayout_LDADD = libgrubmods.a libgrubgcry.a libgrubkern.a grub-core/lib/gnulib/libgnu.a $(LIBINTL) $(LIBDEVMAPPER) $(LIBZFS) $(LIBNVPAIR) $(LIBGEOM) -grub_mklayout_CFLAGS = $(AM_CFLAGS) $(CFLAGS_PROGRAM) -grub_mklayout_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_PROGRAM) -grub_mklayout_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_PROGRAM) -grub_mklayout_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_PROGRAM) -grub_macbless_SOURCES = util/grub-macbless.c grub-core/osdep/init.c grub-core/kern/emu/argp_common.c -nodist_grub_macbless_SOURCES = -grub_macbless_LDADD = libgrubmods.a libgrubgcry.a libgrubkern.a grub-core/lib/gnulib/libgnu.a $(LIBINTL) $(LIBDEVMAPPER) $(LIBUTIL) $(LIBZFS) $(LIBNVPAIR) $(LIBGEOM) -grub_macbless_CFLAGS = $(AM_CFLAGS) $(CFLAGS_PROGRAM) -grub_macbless_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_PROGRAM) -grub_macbless_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_PROGRAM) -grub_macbless_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_PROGRAM) -@COND_HAVE_EXEC_TRUE@grub_mkrescue_SOURCES = util/grub-mkrescue.c util/render-label.c util/glue-efi.c util/mkimage.c util/grub-mkimage32.c util/grub-mkimage64.c util/grub-install-common.c util/setup_bios.c util/setup_sparc.c grub-core/lib/reed_solomon.c grub-core/osdep/random.c grub-core/osdep/ofpath.c grub-core/osdep/platform.c grub-core/osdep/platform_unix.c grub-core/osdep/compress.c util/editenv.c grub-core/osdep/blocklist.c grub-core/osdep/config.c util/config.c grub-core/kern/emu/hostfs.c grub-core/disk/host.c util/resolve.c grub-core/kern/emu/argp_common.c grub-core/osdep/init.c -@COND_HAVE_EXEC_TRUE@nodist_grub_mkrescue_SOURCES = -@COND_HAVE_EXEC_TRUE@grub_mkrescue_LDADD = $(LIBLZMA) libgrubmods.a libgrubgcry.a libgrubkern.a grub-core/lib/gnulib/libgnu.a $(LIBINTL) $(LIBDEVMAPPER) $(LIBUTIL) $(LIBZFS) $(LIBNVPAIR) $(LIBGEOM) -@COND_HAVE_EXEC_TRUE@grub_mkrescue_CFLAGS = $(AM_CFLAGS) $(CFLAGS_PROGRAM) -@COND_HAVE_EXEC_TRUE@grub_mkrescue_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_PROGRAM) -@COND_HAVE_EXEC_TRUE@grub_mkrescue_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_PROGRAM) -@COND_HAVE_EXEC_TRUE@grub_mkrescue_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_PROGRAM) -grub_mkstandalone_SOURCES = util/grub-mkstandalone.c util/render-label.c util/glue-efi.c util/mkimage.c util/grub-mkimage32.c util/grub-mkimage64.c util/grub-install-common.c util/setup_bios.c util/setup_sparc.c grub-core/lib/reed_solomon.c grub-core/osdep/random.c grub-core/osdep/ofpath.c grub-core/osdep/platform.c grub-core/osdep/platform_unix.c grub-core/osdep/compress.c util/editenv.c grub-core/osdep/blocklist.c grub-core/osdep/config.c util/config.c grub-core/kern/emu/hostfs.c grub-core/disk/host.c util/resolve.c grub-core/kern/emu/argp_common.c grub-core/osdep/init.c -nodist_grub_mkstandalone_SOURCES = -grub_mkstandalone_LDADD = $(LIBLZMA) libgrubmods.a libgrubgcry.a libgrubkern.a grub-core/lib/gnulib/libgnu.a $(LIBINTL) $(LIBDEVMAPPER) $(LIBUTIL) $(LIBZFS) $(LIBNVPAIR) $(LIBGEOM) -grub_mkstandalone_CFLAGS = $(AM_CFLAGS) $(CFLAGS_PROGRAM) -grub_mkstandalone_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_PROGRAM) -grub_mkstandalone_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_PROGRAM) -grub_mkstandalone_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_PROGRAM) -grub_install_SOURCES = util/grub-install.c util/probe.c util/mkimage.c util/grub-mkimage32.c util/grub-mkimage64.c util/grub-install-common.c util/setup_bios.c util/setup_sparc.c grub-core/lib/reed_solomon.c grub-core/osdep/random.c grub-core/osdep/ofpath.c grub-core/osdep/platform.c grub-core/osdep/platform_unix.c grub-core/osdep/compress.c util/editenv.c grub-core/osdep/blocklist.c grub-core/osdep/config.c util/config.c util/render-label.c grub-core/kern/emu/hostfs.c grub-core/disk/host.c util/resolve.c grub-core/kern/emu/argp_common.c grub-core/osdep/init.c -nodist_grub_install_SOURCES = -grub_install_LDADD = $(LIBLZMA) libgrubmods.a libgrubgcry.a libgrubkern.a grub-core/lib/gnulib/libgnu.a $(LIBINTL) $(LIBDEVMAPPER) $(LIBUTIL) $(LIBZFS) $(LIBNVPAIR) $(LIBGEOM) -grub_install_CFLAGS = $(AM_CFLAGS) $(CFLAGS_PROGRAM) -grub_install_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_PROGRAM) -grub_install_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_PROGRAM) -grub_install_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_PROGRAM) -grub_mknetdir_SOURCES = util/grub-mknetdir.c util/mkimage.c util/grub-mkimage32.c util/grub-mkimage64.c util/grub-install-common.c util/setup_bios.c util/setup_sparc.c grub-core/lib/reed_solomon.c grub-core/osdep/random.c grub-core/osdep/ofpath.c grub-core/osdep/platform.c grub-core/osdep/platform_unix.c grub-core/osdep/compress.c util/editenv.c grub-core/osdep/blocklist.c grub-core/osdep/config.c util/config.c util/resolve.c grub-core/kern/emu/argp_common.c grub-core/osdep/init.c -nodist_grub_mknetdir_SOURCES = -grub_mknetdir_LDADD = $(LIBLZMA) libgrubmods.a libgrubgcry.a libgrubkern.a grub-core/lib/gnulib/libgnu.a $(LIBINTL) $(LIBDEVMAPPER) $(LIBUTIL) $(LIBZFS) $(LIBNVPAIR) $(LIBGEOM) -grub_mknetdir_CFLAGS = $(AM_CFLAGS) $(CFLAGS_PROGRAM) -grub_mknetdir_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_PROGRAM) -grub_mknetdir_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_PROGRAM) -grub_mknetdir_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_PROGRAM) -example_unit_test_SOURCES = tests/example_unit_test.c tests/lib/unit_test.c grub-core/kern/list.c grub-core/kern/misc.c grub-core/tests/lib/test.c -nodist_example_unit_test_SOURCES = -example_unit_test_LDADD = libgrubmods.a libgrubgcry.a libgrubkern.a grub-core/lib/gnulib/libgnu.a $(LIBDEVMAPPER) $(LIBZFS) $(LIBNVPAIR) $(LIBGEOM) -example_unit_test_CFLAGS = $(AM_CFLAGS) $(CFLAGS_PROGRAM) -example_unit_test_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_PROGRAM) -example_unit_test_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_PROGRAM) -example_unit_test_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_PROGRAM) -printf_test_SOURCES = tests/printf_unit_test.c tests/lib/unit_test.c grub-core/kern/list.c grub-core/kern/misc.c grub-core/tests/lib/test.c -nodist_printf_test_SOURCES = -printf_test_LDADD = libgrubmods.a libgrubgcry.a libgrubkern.a grub-core/lib/gnulib/libgnu.a $(LIBDEVMAPPER) $(LIBZFS) $(LIBNVPAIR) $(LIBGEOM) -printf_test_CFLAGS = $(AM_CFLAGS) $(CFLAGS_PROGRAM) -printf_test_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_PROGRAM) -printf_test_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_PROGRAM) -printf_test_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_PROGRAM) -date_test_SOURCES = tests/date_unit_test.c tests/lib/unit_test.c grub-core/kern/list.c grub-core/kern/misc.c grub-core/tests/lib/test.c -nodist_date_test_SOURCES = -date_test_LDADD = libgrubmods.a libgrubgcry.a libgrubkern.a grub-core/lib/gnulib/libgnu.a $(LIBDEVMAPPER) $(LIBZFS) $(LIBNVPAIR) $(LIBGEOM) -date_test_CFLAGS = $(AM_CFLAGS) $(CFLAGS_PROGRAM) -date_test_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_PROGRAM) -date_test_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_PROGRAM) -date_test_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_PROGRAM) -@COND_HAVE_CXX_TRUE@priority_queue_unit_test_SOURCES = tests/priority_queue_unit_test.cc tests/lib/unit_test.c grub-core/kern/list.c grub-core/kern/misc.c grub-core/tests/lib/test.c grub-core/lib/priority_queue.c -@COND_HAVE_CXX_TRUE@nodist_priority_queue_unit_test_SOURCES = -@COND_HAVE_CXX_TRUE@priority_queue_unit_test_LDADD = libgrubmods.a libgrubgcry.a libgrubkern.a grub-core/lib/gnulib/libgnu.a $(LIBDEVMAPPER) $(LIBZFS) $(LIBNVPAIR) $(LIBGEOM) -@COND_HAVE_CXX_TRUE@priority_queue_unit_test_CFLAGS = $(AM_CFLAGS) $(CFLAGS_PROGRAM) -@COND_HAVE_CXX_TRUE@priority_queue_unit_test_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_PROGRAM) -@COND_HAVE_CXX_TRUE@priority_queue_unit_test_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_PROGRAM) -@COND_HAVE_CXX_TRUE@priority_queue_unit_test_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_PROGRAM) -cmp_test_SOURCES = tests/cmp_unit_test.c tests/lib/unit_test.c grub-core/kern/list.c grub-core/kern/misc.c grub-core/tests/lib/test.c -nodist_cmp_test_SOURCES = -cmp_test_LDADD = libgrubmods.a libgrubgcry.a libgrubkern.a grub-core/lib/gnulib/libgnu.a $(LIBDEVMAPPER) $(LIBZFS) $(LIBNVPAIR) $(LIBGEOM) -cmp_test_CFLAGS = $(AM_CFLAGS) $(CFLAGS_PROGRAM) -cmp_test_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_PROGRAM) -cmp_test_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_PROGRAM) -cmp_test_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_PROGRAM) -grub_menulst2cfg_SOURCES = util/grub-menulst2cfg.c grub-core/lib/legacy_parse.c grub-core/lib/i386/pc/vesa_modes_table.c grub-core/osdep/init.c -nodist_grub_menulst2cfg_SOURCES = -grub_menulst2cfg_LDADD = libgrubmods.a libgrubgcry.a libgrubkern.a grub-core/lib/gnulib/libgnu.a $(LIBINTL) $(LIBDEVMAPPER) $(LIBZFS) $(LIBNVPAIR) $(LIBGEOM) -grub_menulst2cfg_CFLAGS = $(AM_CFLAGS) $(CFLAGS_PROGRAM) -grub_menulst2cfg_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_PROGRAM) -grub_menulst2cfg_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_PROGRAM) -grub_menulst2cfg_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_PROGRAM) -grub_syslinux2cfg_SOURCES = util/grub-syslinux2cfg.c grub-core/lib/syslinux_parse.c grub-core/lib/getline.c grub-core/osdep/init.c grub-core/kern/emu/hostfs.c grub-core/disk/host.c grub-core/kern/emu/argp_common.c -nodist_grub_syslinux2cfg_SOURCES = -grub_syslinux2cfg_LDADD = libgrubmods.a libgrubgcry.a libgrubkern.a grub-core/lib/gnulib/libgnu.a $(LIBINTL) $(LIBDEVMAPPER) $(LIBZFS) $(LIBNVPAIR) $(LIBGEOM) -grub_syslinux2cfg_CFLAGS = $(AM_CFLAGS) $(CFLAGS_PROGRAM) -grub_syslinux2cfg_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_PROGRAM) -grub_syslinux2cfg_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_PROGRAM) -grub_syslinux2cfg_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_PROGRAM) -grub_glue_efi_SOURCES = util/grub-glue-efi.c util/glue-efi.c grub-core/kern/emu/argp_common.c grub-core/osdep/init.c -nodist_grub_glue_efi_SOURCES = -grub_glue_efi_LDADD = libgrubmods.a libgrubgcry.a libgrubkern.a grub-core/lib/gnulib/libgnu.a $(LIBINTL) $(LIBDEVMAPPER) $(LIBZFS) $(LIBNVPAIR) $(LIBGEOM) -grub_glue_efi_CFLAGS = $(AM_CFLAGS) $(CFLAGS_PROGRAM) -grub_glue_efi_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_PROGRAM) -grub_glue_efi_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_PROGRAM) -grub_glue_efi_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_PROGRAM) -grub_render_label_SOURCES = util/grub-render-label.c util/render-label.c grub-core/kern/emu/argp_common.c grub-core/kern/emu/hostfs.c grub-core/disk/host.c grub-core/osdep/init.c -nodist_grub_render_label_SOURCES = -grub_render_label_LDADD = libgrubmods.a libgrubgcry.a libgrubkern.a grub-core/lib/gnulib/libgnu.a $(LIBINTL) $(LIBDEVMAPPER) $(LIBZFS) $(LIBNVPAIR) $(LIBGEOM) -grub_render_label_CFLAGS = $(AM_CFLAGS) $(CFLAGS_PROGRAM) -grub_render_label_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_PROGRAM) -grub_render_label_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_PROGRAM) -grub_render_label_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_PROGRAM) -grub_file_SOURCES = util/grub-file.c util/render-label.c grub-core/commands/file.c grub-core/commands/file32.c grub-core/commands/file64.c grub-core/loader/i386/xen_file.c grub-core/loader/i386/xen_file32.c grub-core/loader/i386/xen_file64.c grub-core/io/offset.c grub-core/kern/elf.c grub-core/loader/lzss.c grub-core/loader/macho.c grub-core/loader/macho32.c grub-core/loader/macho64.c grub-core/kern/emu/hostfs.c grub-core/disk/host.c grub-core/osdep/init.c -nodist_grub_file_SOURCES = -grub_file_LDADD = libgrubmods.a libgrubgcry.a libgrubkern.a grub-core/lib/gnulib/libgnu.a $(LIBINTL) $(LIBDEVMAPPER) $(LIBZFS) $(LIBNVPAIR) $(LIBGEOM) -grub_file_CFLAGS = $(AM_CFLAGS) $(CFLAGS_PROGRAM) -grub_file_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_PROGRAM) -grub_file_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_PROGRAM) -grub_file_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_PROGRAM) -starfield_theme_files = $(srcdir)/themes/starfield/blob_w.png \ - $(srcdir)/themes/starfield/boot_menu_c.png \ - $(srcdir)/themes/starfield/boot_menu_e.png \ - $(srcdir)/themes/starfield/boot_menu_ne.png \ - $(srcdir)/themes/starfield/boot_menu_n.png \ - $(srcdir)/themes/starfield/boot_menu_nw.png \ - $(srcdir)/themes/starfield/boot_menu_se.png \ - $(srcdir)/themes/starfield/boot_menu_s.png \ - $(srcdir)/themes/starfield/boot_menu_sw.png \ - $(srcdir)/themes/starfield/boot_menu_w.png \ - $(srcdir)/themes/starfield/slider_c.png \ - $(srcdir)/themes/starfield/slider_n.png \ - $(srcdir)/themes/starfield/slider_s.png \ - $(srcdir)/themes/starfield/starfield.png \ - $(srcdir)/themes/starfield/terminal_box_c.png \ - $(srcdir)/themes/starfield/terminal_box_e.png \ - $(srcdir)/themes/starfield/terminal_box_ne.png \ - $(srcdir)/themes/starfield/terminal_box_n.png \ - $(srcdir)/themes/starfield/terminal_box_nw.png \ - $(srcdir)/themes/starfield/terminal_box_se.png \ - $(srcdir)/themes/starfield/terminal_box_s.png \ - $(srcdir)/themes/starfield/terminal_box_sw.png \ - $(srcdir)/themes/starfield/terminal_box_w.png \ - $(srcdir)/themes/starfield/theme.txt \ - $(srcdir)/themes/starfield/README \ - $(srcdir)/themes/starfield/COPYING.CC-BY-SA-3.0 -@COND_STARFIELD_FALSE@starfield_DATA = -@COND_STARFIELD_TRUE@starfield_DATA = dejavu_10.pf2 dejavu_12.pf2 dejavu_bold_14.pf2 dejavu_14.pf2 dejavu_16.pf2 $(starfield_theme_files) - -# Arrows and lines are needed to draw the menu, so always include them -UNICODE_ARROWS = 0x2190-0x2193 -UNICODE_LINES = 0x2501-0x251B - -# Install config.h into platformdir -nodist_platform_HEADERS = config.h -@COND_i386_coreboot_TRUE@@COND_real_platform_TRUE@QEMU32 = qemu-system-i386 -@COND_i386_efi_TRUE@@COND_real_platform_TRUE@QEMU32 = qemu-system-i386 -@COND_i386_ieee1275_TRUE@@COND_real_platform_TRUE@QEMU32 = qemu-system-i386 -@COND_i386_multiboot_TRUE@@COND_real_platform_TRUE@QEMU32 = qemu-system-i386 -@COND_i386_pc_TRUE@@COND_real_platform_TRUE@QEMU32 = qemu-system-i386 -@COND_i386_qemu_TRUE@@COND_real_platform_TRUE@QEMU32 = qemu-system-i386 -@COND_real_platform_TRUE@@COND_x86_64_efi_TRUE@QEMU32 = qemu-system-x86_64 -@COND_i386_coreboot_TRUE@@COND_real_platform_TRUE@MINIMUM_CPU_LINUX = pentium2 -@COND_i386_efi_TRUE@@COND_real_platform_TRUE@MINIMUM_CPU_LINUX = pentium2 -@COND_i386_ieee1275_TRUE@@COND_real_platform_TRUE@MINIMUM_CPU_LINUX = pentium2 -@COND_i386_multiboot_TRUE@@COND_real_platform_TRUE@MINIMUM_CPU_LINUX = pentium2 -@COND_i386_pc_TRUE@@COND_real_platform_TRUE@MINIMUM_CPU_LINUX = pentium2 -@COND_i386_qemu_TRUE@@COND_real_platform_TRUE@MINIMUM_CPU_LINUX = pentium2 -@COND_real_platform_TRUE@@COND_x86_64_efi_TRUE@MINIMUM_CPU_LINUX = core2duo -@COND_i386_coreboot_TRUE@@COND_real_platform_TRUE@BOOTCHECKS = bootcheck-kfreebsd-aout bootcheck-kopenbsd-i386 bootcheck-kopenbsd-x86_64 bootcheck-multiboot bootcheck-multiboot2 bootcheck-linux-i386 bootcheck-linux-x86_64 bootcheck-knetbsd-x86_64 bootcheck-kfreebsd-x86_64 bootcheck-kfreebsd-i386 - -# NetBSD has no support for finding ACPI on EFI -@COND_i386_efi_TRUE@@COND_real_platform_TRUE@BOOTCHECKS = bootcheck-kfreebsd-aout bootcheck-kopenbsd-i386 bootcheck-kopenbsd-x86_64 bootcheck-multiboot bootcheck-multiboot2 bootcheck-linux-i386 bootcheck-linux-x86_64 bootcheck-kfreebsd-x86_64 bootcheck-kfreebsd-i386 - -# *BSD requires ACPI -#legacy protocol (linux16) makes early BIOS calls. -@COND_i386_ieee1275_TRUE@@COND_real_platform_TRUE@BOOTCHECKS = bootcheck-kfreebsd-aout bootcheck-multiboot bootcheck-multiboot2 bootcheck-linux-i386 bootcheck-linux-x86_64 - -# *BSD requires ACPI -@COND_i386_multiboot_TRUE@@COND_real_platform_TRUE@BOOTCHECKS = bootcheck-kfreebsd-aout bootcheck-multiboot bootcheck-multiboot2 bootcheck-linux-i386 bootcheck-linux-x86_64 - -#pc chainloader by definition is only for i386-pc -#ntldr and bootmgr require BIOS. -#legacy protocol (linux16) makes early BIOS calls. -# 32-bit NetBSD crashes early on non-BIOS -@COND_i386_pc_TRUE@@COND_real_platform_TRUE@BOOTCHECKS = bootcheck-kfreebsd-aout bootcheck-kopenbsd-i386 bootcheck-kopenbsd-x86_64 bootcheck-multiboot bootcheck-multiboot2 bootcheck-linux-i386 bootcheck-linux-x86_64 bootcheck-knetbsd-x86_64 bootcheck-kfreebsd-x86_64 bootcheck-kfreebsd-i386 bootcheck-pc-chainloader bootcheck-ntldr bootcheck-linux16-i386 bootcheck-linux16-x86_64 bootcheck-knetbsd-i386 - -# *BSD requires ACPI -@COND_i386_qemu_TRUE@@COND_real_platform_TRUE@BOOTCHECKS = bootcheck-kfreebsd-aout bootcheck-multiboot bootcheck-multiboot2 bootcheck-linux-i386 bootcheck-linux-x86_64 -@COND_mips_loongson_TRUE@@COND_real_platform_TRUE@BOOTCHECKS = bootcheck-linux-loongson -@COND_mips_qemu_mips_TRUE@@COND_mipseb_TRUE@@COND_real_platform_TRUE@BOOTCHECKS = bootcheck-linux-mips -@COND_mips_qemu_mips_TRUE@@COND_mipsel_TRUE@@COND_real_platform_TRUE@BOOTCHECKS = bootcheck-linux-mipsel -@COND_powerpc_ieee1275_TRUE@@COND_real_platform_TRUE@BOOTCHECKS = bootcheck-linux-ppc - -# NetBSD has no support for finding ACPI on EFI -@COND_real_platform_TRUE@@COND_x86_64_efi_TRUE@BOOTCHECKS = bootcheck-kfreebsd-aout bootcheck-kopenbsd-i386 bootcheck-kopenbsd-x86_64 bootcheck-multiboot bootcheck-multiboot2 bootcheck-linux-i386 bootcheck-linux-x86_64 bootcheck-kfreebsd-x86_64 bootcheck-kfreebsd-i386 - -# Randomly generated -@COND_real_platform_TRUE@SUCCESSFUL_BOOT_STRING = 3e49994fd5d82b7c9298d672d774080d -# tianocore cd access is very slow -@COND_real_platform_TRUE@BOOTCHECK_TIMEOUT = 180 -windowsdir = $(top_builddir)/$(PACKAGE)-$(VERSION)-for-windows -windowszip = $(top_builddir)/$(PACKAGE)-$(VERSION)-for-windows.zip -changelog_start_date = 2015-01-23 -gitlog_to_changelog = $(top_srcdir)/build-aux/gitlog-to-changelog -all: $(BUILT_SOURCES) config-util.h - $(MAKE) $(AM_MAKEFLAGS) all-recursive - -.SUFFIXES: -.SUFFIXES: .c .cc .log .o .obj .test .test$(EXEEXT) .trs -am--refresh: Makefile - @: -$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(top_srcdir)/conf/Makefile.common $(top_srcdir)/conf/Makefile.extra-dist $(srcdir)/Makefile.util.am $(am__configure_deps) - @for dep in $?; do \ - case '$(am__configure_deps)' in \ - *$$dep*) \ - echo ' cd $(srcdir) && $(AUTOMAKE) --gnu'; \ - $(am__cd) $(srcdir) && $(AUTOMAKE) --gnu \ - && exit 0; \ - exit 1;; \ - esac; \ - done; \ - echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu Makefile'; \ - $(am__cd) $(top_srcdir) && \ - $(AUTOMAKE) --gnu Makefile -Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status - @case '$?' in \ - *config.status*) \ - echo ' $(SHELL) ./config.status'; \ - $(SHELL) ./config.status;; \ - *) \ - echo ' cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe)'; \ - cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe);; \ - esac; -$(top_srcdir)/conf/Makefile.common $(top_srcdir)/conf/Makefile.extra-dist $(srcdir)/Makefile.util.am $(am__empty): - -$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) - $(SHELL) ./config.status --recheck - -$(top_srcdir)/configure: $(am__configure_deps) - $(am__cd) $(srcdir) && $(AUTOCONF) -$(ACLOCAL_M4): $(am__aclocal_m4_deps) - $(am__cd) $(srcdir) && $(ACLOCAL) $(ACLOCAL_AMFLAGS) -$(am__aclocal_m4_deps): - -config-util.h: stamp-h1 - @test -f $@ || rm -f stamp-h1 - @test -f $@ || $(MAKE) $(AM_MAKEFLAGS) stamp-h1 - -stamp-h1: $(srcdir)/config-util.h.in $(top_builddir)/config.status - @rm -f stamp-h1 - cd $(top_builddir) && $(SHELL) ./config.status config-util.h -$(srcdir)/config-util.h.in: $(am__configure_deps) - ($(am__cd) $(top_srcdir) && $(AUTOHEADER)) - rm -f stamp-h1 - touch $@ - -distclean-hdr: - -rm -f config-util.h stamp-h1 -stamp-h: $(top_builddir)/config.status $(srcdir)/stamp-h.in - cd $(top_builddir) && $(SHELL) ./config.status $@ -config.h: $(top_builddir)/config.status $(srcdir)/config.h.in - cd $(top_builddir) && $(SHELL) ./config.status $@ - -clean-noinstLIBRARIES: - -test -z "$(noinst_LIBRARIES)" || rm -f $(noinst_LIBRARIES) -grub-core/lib/libgcrypt-grub/cipher/$(am__dirstamp): - @$(MKDIR_P) grub-core/lib/libgcrypt-grub/cipher - @: > grub-core/lib/libgcrypt-grub/cipher/$(am__dirstamp) -grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR) - @: > grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/$(am__dirstamp) -grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-arcfour.$(OBJEXT): \ - grub-core/lib/libgcrypt-grub/cipher/$(am__dirstamp) \ - grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/$(am__dirstamp) -grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-blowfish.$(OBJEXT): \ - grub-core/lib/libgcrypt-grub/cipher/$(am__dirstamp) \ - grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/$(am__dirstamp) -grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-camellia-glue.$(OBJEXT): \ - grub-core/lib/libgcrypt-grub/cipher/$(am__dirstamp) \ - grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/$(am__dirstamp) -grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-camellia.$(OBJEXT): \ - grub-core/lib/libgcrypt-grub/cipher/$(am__dirstamp) \ - grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/$(am__dirstamp) -grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-cast5.$(OBJEXT): \ - grub-core/lib/libgcrypt-grub/cipher/$(am__dirstamp) \ - grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/$(am__dirstamp) -grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-crc.$(OBJEXT): \ - grub-core/lib/libgcrypt-grub/cipher/$(am__dirstamp) \ - grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/$(am__dirstamp) -grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-des.$(OBJEXT): \ - grub-core/lib/libgcrypt-grub/cipher/$(am__dirstamp) \ - grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/$(am__dirstamp) -grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-idea.$(OBJEXT): \ - grub-core/lib/libgcrypt-grub/cipher/$(am__dirstamp) \ - grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/$(am__dirstamp) -grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-md4.$(OBJEXT): \ - grub-core/lib/libgcrypt-grub/cipher/$(am__dirstamp) \ - grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/$(am__dirstamp) -grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-md5.$(OBJEXT): \ - grub-core/lib/libgcrypt-grub/cipher/$(am__dirstamp) \ - grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/$(am__dirstamp) -grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-rfc2268.$(OBJEXT): \ - grub-core/lib/libgcrypt-grub/cipher/$(am__dirstamp) \ - grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/$(am__dirstamp) -grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-rijndael.$(OBJEXT): \ - grub-core/lib/libgcrypt-grub/cipher/$(am__dirstamp) \ - grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/$(am__dirstamp) -grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-rmd160.$(OBJEXT): \ - grub-core/lib/libgcrypt-grub/cipher/$(am__dirstamp) \ - grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/$(am__dirstamp) -grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-seed.$(OBJEXT): \ - grub-core/lib/libgcrypt-grub/cipher/$(am__dirstamp) \ - grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/$(am__dirstamp) -grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-serpent.$(OBJEXT): \ - grub-core/lib/libgcrypt-grub/cipher/$(am__dirstamp) \ - grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/$(am__dirstamp) -grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-sha1.$(OBJEXT): \ - grub-core/lib/libgcrypt-grub/cipher/$(am__dirstamp) \ - grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/$(am__dirstamp) -grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-sha256.$(OBJEXT): \ - grub-core/lib/libgcrypt-grub/cipher/$(am__dirstamp) \ - grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/$(am__dirstamp) -grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-sha512.$(OBJEXT): \ - grub-core/lib/libgcrypt-grub/cipher/$(am__dirstamp) \ - grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/$(am__dirstamp) -grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-tiger.$(OBJEXT): \ - grub-core/lib/libgcrypt-grub/cipher/$(am__dirstamp) \ - grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/$(am__dirstamp) -grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-twofish.$(OBJEXT): \ - grub-core/lib/libgcrypt-grub/cipher/$(am__dirstamp) \ - grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/$(am__dirstamp) -grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-whirlpool.$(OBJEXT): \ - grub-core/lib/libgcrypt-grub/cipher/$(am__dirstamp) \ - grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/$(am__dirstamp) -grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-init.$(OBJEXT): \ - grub-core/lib/libgcrypt-grub/cipher/$(am__dirstamp) \ - grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/$(am__dirstamp) - -libgrubgcry.a: $(libgrubgcry_a_OBJECTS) $(libgrubgcry_a_DEPENDENCIES) $(EXTRA_libgrubgcry_a_DEPENDENCIES) - $(AM_V_at)-rm -f libgrubgcry.a - $(AM_V_AR)$(libgrubgcry_a_AR) libgrubgcry.a $(libgrubgcry_a_OBJECTS) $(libgrubgcry_a_LIBADD) - $(AM_V_at)$(RANLIB) libgrubgcry.a -util/$(am__dirstamp): - @$(MKDIR_P) util - @: > util/$(am__dirstamp) -util/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) util/$(DEPDIR) - @: > util/$(DEPDIR)/$(am__dirstamp) -util/libgrubkern_a-misc.$(OBJEXT): util/$(am__dirstamp) \ - util/$(DEPDIR)/$(am__dirstamp) -grub-core/kern/$(am__dirstamp): - @$(MKDIR_P) grub-core/kern - @: > grub-core/kern/$(am__dirstamp) -grub-core/kern/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) grub-core/kern/$(DEPDIR) - @: > grub-core/kern/$(DEPDIR)/$(am__dirstamp) -grub-core/kern/libgrubkern_a-command.$(OBJEXT): \ - grub-core/kern/$(am__dirstamp) \ - grub-core/kern/$(DEPDIR)/$(am__dirstamp) -grub-core/kern/libgrubkern_a-device.$(OBJEXT): \ - grub-core/kern/$(am__dirstamp) \ - grub-core/kern/$(DEPDIR)/$(am__dirstamp) -grub-core/kern/libgrubkern_a-disk.$(OBJEXT): \ - grub-core/kern/$(am__dirstamp) \ - grub-core/kern/$(DEPDIR)/$(am__dirstamp) -grub-core/lib/$(am__dirstamp): - @$(MKDIR_P) grub-core/lib - @: > grub-core/lib/$(am__dirstamp) -grub-core/lib/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) grub-core/lib/$(DEPDIR) - @: > grub-core/lib/$(DEPDIR)/$(am__dirstamp) -grub-core/lib/libgrubkern_a-disk.$(OBJEXT): \ - grub-core/lib/$(am__dirstamp) \ - grub-core/lib/$(DEPDIR)/$(am__dirstamp) -util/libgrubkern_a-getroot.$(OBJEXT): util/$(am__dirstamp) \ - util/$(DEPDIR)/$(am__dirstamp) -grub-core/osdep/unix/$(am__dirstamp): - @$(MKDIR_P) grub-core/osdep/unix - @: > grub-core/osdep/unix/$(am__dirstamp) -grub-core/osdep/unix/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) grub-core/osdep/unix/$(DEPDIR) - @: > grub-core/osdep/unix/$(DEPDIR)/$(am__dirstamp) -grub-core/osdep/unix/libgrubkern_a-getroot.$(OBJEXT): \ - grub-core/osdep/unix/$(am__dirstamp) \ - grub-core/osdep/unix/$(DEPDIR)/$(am__dirstamp) -grub-core/osdep/$(am__dirstamp): - @$(MKDIR_P) grub-core/osdep - @: > grub-core/osdep/$(am__dirstamp) -grub-core/osdep/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) grub-core/osdep/$(DEPDIR) - @: > grub-core/osdep/$(DEPDIR)/$(am__dirstamp) -grub-core/osdep/libgrubkern_a-getroot.$(OBJEXT): \ - grub-core/osdep/$(am__dirstamp) \ - grub-core/osdep/$(DEPDIR)/$(am__dirstamp) -grub-core/osdep/devmapper/$(am__dirstamp): - @$(MKDIR_P) grub-core/osdep/devmapper - @: > grub-core/osdep/devmapper/$(am__dirstamp) -grub-core/osdep/devmapper/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) grub-core/osdep/devmapper/$(DEPDIR) - @: > grub-core/osdep/devmapper/$(DEPDIR)/$(am__dirstamp) -grub-core/osdep/devmapper/libgrubkern_a-getroot.$(OBJEXT): \ - grub-core/osdep/devmapper/$(am__dirstamp) \ - grub-core/osdep/devmapper/$(DEPDIR)/$(am__dirstamp) -grub-core/osdep/libgrubkern_a-relpath.$(OBJEXT): \ - grub-core/osdep/$(am__dirstamp) \ - grub-core/osdep/$(DEPDIR)/$(am__dirstamp) -grub-core/kern/emu/$(am__dirstamp): - @$(MKDIR_P) grub-core/kern/emu - @: > grub-core/kern/emu/$(am__dirstamp) -grub-core/kern/emu/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) grub-core/kern/emu/$(DEPDIR) - @: > grub-core/kern/emu/$(DEPDIR)/$(am__dirstamp) -grub-core/kern/emu/libgrubkern_a-hostdisk.$(OBJEXT): \ - grub-core/kern/emu/$(am__dirstamp) \ - grub-core/kern/emu/$(DEPDIR)/$(am__dirstamp) -grub-core/osdep/devmapper/libgrubkern_a-hostdisk.$(OBJEXT): \ - grub-core/osdep/devmapper/$(am__dirstamp) \ - grub-core/osdep/devmapper/$(DEPDIR)/$(am__dirstamp) -grub-core/osdep/libgrubkern_a-hostdisk.$(OBJEXT): \ - grub-core/osdep/$(am__dirstamp) \ - grub-core/osdep/$(DEPDIR)/$(am__dirstamp) -grub-core/osdep/unix/libgrubkern_a-hostdisk.$(OBJEXT): \ - grub-core/osdep/unix/$(am__dirstamp) \ - grub-core/osdep/unix/$(DEPDIR)/$(am__dirstamp) -grub-core/osdep/libgrubkern_a-exec.$(OBJEXT): \ - grub-core/osdep/$(am__dirstamp) \ - grub-core/osdep/$(DEPDIR)/$(am__dirstamp) -grub-core/osdep/libgrubkern_a-sleep.$(OBJEXT): \ - grub-core/osdep/$(am__dirstamp) \ - grub-core/osdep/$(DEPDIR)/$(am__dirstamp) -grub-core/osdep/libgrubkern_a-password.$(OBJEXT): \ - grub-core/osdep/$(am__dirstamp) \ - grub-core/osdep/$(DEPDIR)/$(am__dirstamp) -grub-core/kern/emu/libgrubkern_a-misc.$(OBJEXT): \ - grub-core/kern/emu/$(am__dirstamp) \ - grub-core/kern/emu/$(DEPDIR)/$(am__dirstamp) -grub-core/kern/emu/libgrubkern_a-mm.$(OBJEXT): \ - grub-core/kern/emu/$(am__dirstamp) \ - grub-core/kern/emu/$(DEPDIR)/$(am__dirstamp) -grub-core/kern/libgrubkern_a-env.$(OBJEXT): \ - grub-core/kern/$(am__dirstamp) \ - grub-core/kern/$(DEPDIR)/$(am__dirstamp) -grub-core/kern/libgrubkern_a-err.$(OBJEXT): \ - grub-core/kern/$(am__dirstamp) \ - grub-core/kern/$(DEPDIR)/$(am__dirstamp) -grub-core/kern/libgrubkern_a-file.$(OBJEXT): \ - grub-core/kern/$(am__dirstamp) \ - grub-core/kern/$(DEPDIR)/$(am__dirstamp) -grub-core/kern/libgrubkern_a-fs.$(OBJEXT): \ - grub-core/kern/$(am__dirstamp) \ - grub-core/kern/$(DEPDIR)/$(am__dirstamp) -grub-core/kern/libgrubkern_a-list.$(OBJEXT): \ - grub-core/kern/$(am__dirstamp) \ - grub-core/kern/$(DEPDIR)/$(am__dirstamp) -grub-core/kern/libgrubkern_a-misc.$(OBJEXT): \ - grub-core/kern/$(am__dirstamp) \ - grub-core/kern/$(DEPDIR)/$(am__dirstamp) -grub-core/kern/libgrubkern_a-partition.$(OBJEXT): \ - grub-core/kern/$(am__dirstamp) \ - grub-core/kern/$(DEPDIR)/$(am__dirstamp) -grub-core/lib/libgrubkern_a-crypto.$(OBJEXT): \ - grub-core/lib/$(am__dirstamp) \ - grub-core/lib/$(DEPDIR)/$(am__dirstamp) -grub-core/disk/$(am__dirstamp): - @$(MKDIR_P) grub-core/disk - @: > grub-core/disk/$(am__dirstamp) -grub-core/disk/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) grub-core/disk/$(DEPDIR) - @: > grub-core/disk/$(DEPDIR)/$(am__dirstamp) -grub-core/disk/libgrubkern_a-luks.$(OBJEXT): \ - grub-core/disk/$(am__dirstamp) \ - grub-core/disk/$(DEPDIR)/$(am__dirstamp) -grub-core/disk/libgrubkern_a-geli.$(OBJEXT): \ - grub-core/disk/$(am__dirstamp) \ - grub-core/disk/$(DEPDIR)/$(am__dirstamp) -grub-core/disk/libgrubkern_a-cryptodisk.$(OBJEXT): \ - grub-core/disk/$(am__dirstamp) \ - grub-core/disk/$(DEPDIR)/$(am__dirstamp) -grub-core/disk/libgrubkern_a-AFSplitter.$(OBJEXT): \ - grub-core/disk/$(am__dirstamp) \ - grub-core/disk/$(DEPDIR)/$(am__dirstamp) -grub-core/lib/libgrubkern_a-pbkdf2.$(OBJEXT): \ - grub-core/lib/$(am__dirstamp) \ - grub-core/lib/$(DEPDIR)/$(am__dirstamp) -grub-core/commands/$(am__dirstamp): - @$(MKDIR_P) grub-core/commands - @: > grub-core/commands/$(am__dirstamp) -grub-core/commands/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) grub-core/commands/$(DEPDIR) - @: > grub-core/commands/$(DEPDIR)/$(am__dirstamp) -grub-core/commands/libgrubkern_a-extcmd.$(OBJEXT): \ - grub-core/commands/$(am__dirstamp) \ - grub-core/commands/$(DEPDIR)/$(am__dirstamp) -grub-core/lib/libgrubkern_a-arg.$(OBJEXT): \ - grub-core/lib/$(am__dirstamp) \ - grub-core/lib/$(DEPDIR)/$(am__dirstamp) -grub-core/disk/libgrubkern_a-ldm.$(OBJEXT): \ - grub-core/disk/$(am__dirstamp) \ - grub-core/disk/$(DEPDIR)/$(am__dirstamp) -grub-core/disk/libgrubkern_a-diskfilter.$(OBJEXT): \ - grub-core/disk/$(am__dirstamp) \ - grub-core/disk/$(DEPDIR)/$(am__dirstamp) -grub-core/partmap/$(am__dirstamp): - @$(MKDIR_P) grub-core/partmap - @: > grub-core/partmap/$(am__dirstamp) -grub-core/partmap/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) grub-core/partmap/$(DEPDIR) - @: > grub-core/partmap/$(DEPDIR)/$(am__dirstamp) -grub-core/partmap/libgrubkern_a-gpt.$(OBJEXT): \ - grub-core/partmap/$(am__dirstamp) \ - grub-core/partmap/$(DEPDIR)/$(am__dirstamp) -grub-core/partmap/libgrubkern_a-msdos.$(OBJEXT): \ - grub-core/partmap/$(am__dirstamp) \ - grub-core/partmap/$(DEPDIR)/$(am__dirstamp) -grub-core/fs/$(am__dirstamp): - @$(MKDIR_P) grub-core/fs - @: > grub-core/fs/$(am__dirstamp) -grub-core/fs/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) grub-core/fs/$(DEPDIR) - @: > grub-core/fs/$(DEPDIR)/$(am__dirstamp) -grub-core/fs/libgrubkern_a-proc.$(OBJEXT): \ - grub-core/fs/$(am__dirstamp) \ - grub-core/fs/$(DEPDIR)/$(am__dirstamp) -grub-core/fs/libgrubkern_a-archelp.$(OBJEXT): \ - grub-core/fs/$(am__dirstamp) \ - grub-core/fs/$(DEPDIR)/$(am__dirstamp) - -libgrubkern.a: $(libgrubkern_a_OBJECTS) $(libgrubkern_a_DEPENDENCIES) $(EXTRA_libgrubkern_a_DEPENDENCIES) - $(AM_V_at)-rm -f libgrubkern.a - $(AM_V_AR)$(libgrubkern_a_AR) libgrubkern.a $(libgrubkern_a_OBJECTS) $(libgrubkern_a_LIBADD) - $(AM_V_at)$(RANLIB) libgrubkern.a -grub-core/commands/libgrubmods_a-blocklist.$(OBJEXT): \ - grub-core/commands/$(am__dirstamp) \ - grub-core/commands/$(DEPDIR)/$(am__dirstamp) -grub-core/commands/libgrubmods_a-macbless.$(OBJEXT): \ - grub-core/commands/$(am__dirstamp) \ - grub-core/commands/$(DEPDIR)/$(am__dirstamp) -grub-core/commands/libgrubmods_a-xnu_uuid.$(OBJEXT): \ - grub-core/commands/$(am__dirstamp) \ - grub-core/commands/$(DEPDIR)/$(am__dirstamp) -grub-core/commands/libgrubmods_a-testload.$(OBJEXT): \ - grub-core/commands/$(am__dirstamp) \ - grub-core/commands/$(DEPDIR)/$(am__dirstamp) -grub-core/commands/libgrubmods_a-ls.$(OBJEXT): \ - grub-core/commands/$(am__dirstamp) \ - grub-core/commands/$(DEPDIR)/$(am__dirstamp) -grub-core/disk/libgrubmods_a-dmraid_nvidia.$(OBJEXT): \ - grub-core/disk/$(am__dirstamp) \ - grub-core/disk/$(DEPDIR)/$(am__dirstamp) -grub-core/disk/libgrubmods_a-loopback.$(OBJEXT): \ - grub-core/disk/$(am__dirstamp) \ - grub-core/disk/$(DEPDIR)/$(am__dirstamp) -grub-core/disk/libgrubmods_a-lvm.$(OBJEXT): \ - grub-core/disk/$(am__dirstamp) \ - grub-core/disk/$(DEPDIR)/$(am__dirstamp) -grub-core/disk/libgrubmods_a-mdraid_linux.$(OBJEXT): \ - grub-core/disk/$(am__dirstamp) \ - grub-core/disk/$(DEPDIR)/$(am__dirstamp) -grub-core/disk/libgrubmods_a-mdraid_linux_be.$(OBJEXT): \ - grub-core/disk/$(am__dirstamp) \ - grub-core/disk/$(DEPDIR)/$(am__dirstamp) -grub-core/disk/libgrubmods_a-mdraid1x_linux.$(OBJEXT): \ - grub-core/disk/$(am__dirstamp) \ - grub-core/disk/$(DEPDIR)/$(am__dirstamp) -grub-core/disk/libgrubmods_a-raid5_recover.$(OBJEXT): \ - grub-core/disk/$(am__dirstamp) \ - grub-core/disk/$(DEPDIR)/$(am__dirstamp) -grub-core/disk/libgrubmods_a-raid6_recover.$(OBJEXT): \ - grub-core/disk/$(am__dirstamp) \ - grub-core/disk/$(DEPDIR)/$(am__dirstamp) -grub-core/font/$(am__dirstamp): - @$(MKDIR_P) grub-core/font - @: > grub-core/font/$(am__dirstamp) -grub-core/font/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) grub-core/font/$(DEPDIR) - @: > grub-core/font/$(DEPDIR)/$(am__dirstamp) -grub-core/font/libgrubmods_a-font.$(OBJEXT): \ - grub-core/font/$(am__dirstamp) \ - grub-core/font/$(DEPDIR)/$(am__dirstamp) -grub-core/gfxmenu/$(am__dirstamp): - @$(MKDIR_P) grub-core/gfxmenu - @: > grub-core/gfxmenu/$(am__dirstamp) -grub-core/gfxmenu/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) grub-core/gfxmenu/$(DEPDIR) - @: > grub-core/gfxmenu/$(DEPDIR)/$(am__dirstamp) -grub-core/gfxmenu/libgrubmods_a-font.$(OBJEXT): \ - grub-core/gfxmenu/$(am__dirstamp) \ - grub-core/gfxmenu/$(DEPDIR)/$(am__dirstamp) -grub-core/normal/$(am__dirstamp): - @$(MKDIR_P) grub-core/normal - @: > grub-core/normal/$(am__dirstamp) -grub-core/normal/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) grub-core/normal/$(DEPDIR) - @: > grub-core/normal/$(DEPDIR)/$(am__dirstamp) -grub-core/normal/libgrubmods_a-charset.$(OBJEXT): \ - grub-core/normal/$(am__dirstamp) \ - grub-core/normal/$(DEPDIR)/$(am__dirstamp) -grub-core/video/fb/$(am__dirstamp): - @$(MKDIR_P) grub-core/video/fb - @: > grub-core/video/fb/$(am__dirstamp) -grub-core/video/fb/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) grub-core/video/fb/$(DEPDIR) - @: > grub-core/video/fb/$(DEPDIR)/$(am__dirstamp) -grub-core/video/fb/libgrubmods_a-fbblit.$(OBJEXT): \ - grub-core/video/fb/$(am__dirstamp) \ - grub-core/video/fb/$(DEPDIR)/$(am__dirstamp) -grub-core/video/fb/libgrubmods_a-fbutil.$(OBJEXT): \ - grub-core/video/fb/$(am__dirstamp) \ - grub-core/video/fb/$(DEPDIR)/$(am__dirstamp) -grub-core/video/fb/libgrubmods_a-fbfill.$(OBJEXT): \ - grub-core/video/fb/$(am__dirstamp) \ - grub-core/video/fb/$(DEPDIR)/$(am__dirstamp) -grub-core/video/fb/libgrubmods_a-video_fb.$(OBJEXT): \ - grub-core/video/fb/$(am__dirstamp) \ - grub-core/video/fb/$(DEPDIR)/$(am__dirstamp) -grub-core/video/$(am__dirstamp): - @$(MKDIR_P) grub-core/video - @: > grub-core/video/$(am__dirstamp) -grub-core/video/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) grub-core/video/$(DEPDIR) - @: > grub-core/video/$(DEPDIR)/$(am__dirstamp) -grub-core/video/libgrubmods_a-video.$(OBJEXT): \ - grub-core/video/$(am__dirstamp) \ - grub-core/video/$(DEPDIR)/$(am__dirstamp) -grub-core/video/libgrubmods_a-capture.$(OBJEXT): \ - grub-core/video/$(am__dirstamp) \ - grub-core/video/$(DEPDIR)/$(am__dirstamp) -grub-core/video/libgrubmods_a-colors.$(OBJEXT): \ - grub-core/video/$(am__dirstamp) \ - grub-core/video/$(DEPDIR)/$(am__dirstamp) -grub-core/$(am__dirstamp): - @$(MKDIR_P) grub-core - @: > grub-core/$(am__dirstamp) -grub-core/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) grub-core/$(DEPDIR) - @: > grub-core/$(DEPDIR)/$(am__dirstamp) -grub-core/libgrubmods_a-unidata.$(OBJEXT): grub-core/$(am__dirstamp) \ - grub-core/$(DEPDIR)/$(am__dirstamp) -grub-core/io/$(am__dirstamp): - @$(MKDIR_P) grub-core/io - @: > grub-core/io/$(am__dirstamp) -grub-core/io/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) grub-core/io/$(DEPDIR) - @: > grub-core/io/$(DEPDIR)/$(am__dirstamp) -grub-core/io/libgrubmods_a-bufio.$(OBJEXT): \ - grub-core/io/$(am__dirstamp) \ - grub-core/io/$(DEPDIR)/$(am__dirstamp) -grub-core/fs/libgrubmods_a-affs.$(OBJEXT): \ - grub-core/fs/$(am__dirstamp) \ - grub-core/fs/$(DEPDIR)/$(am__dirstamp) -grub-core/fs/libgrubmods_a-afs.$(OBJEXT): \ - grub-core/fs/$(am__dirstamp) \ - grub-core/fs/$(DEPDIR)/$(am__dirstamp) -grub-core/fs/libgrubmods_a-bfs.$(OBJEXT): \ - grub-core/fs/$(am__dirstamp) \ - grub-core/fs/$(DEPDIR)/$(am__dirstamp) -grub-core/fs/libgrubmods_a-btrfs.$(OBJEXT): \ - grub-core/fs/$(am__dirstamp) \ - grub-core/fs/$(DEPDIR)/$(am__dirstamp) -grub-core/fs/libgrubmods_a-cbfs.$(OBJEXT): \ - grub-core/fs/$(am__dirstamp) \ - grub-core/fs/$(DEPDIR)/$(am__dirstamp) -grub-core/fs/libgrubmods_a-cpio.$(OBJEXT): \ - grub-core/fs/$(am__dirstamp) \ - grub-core/fs/$(DEPDIR)/$(am__dirstamp) -grub-core/fs/libgrubmods_a-cpio_be.$(OBJEXT): \ - grub-core/fs/$(am__dirstamp) \ - grub-core/fs/$(DEPDIR)/$(am__dirstamp) -grub-core/fs/libgrubmods_a-odc.$(OBJEXT): \ - grub-core/fs/$(am__dirstamp) \ - grub-core/fs/$(DEPDIR)/$(am__dirstamp) -grub-core/fs/libgrubmods_a-newc.$(OBJEXT): \ - grub-core/fs/$(am__dirstamp) \ - grub-core/fs/$(DEPDIR)/$(am__dirstamp) -grub-core/fs/libgrubmods_a-ext2.$(OBJEXT): \ - grub-core/fs/$(am__dirstamp) \ - grub-core/fs/$(DEPDIR)/$(am__dirstamp) -grub-core/fs/libgrubmods_a-fat.$(OBJEXT): \ - grub-core/fs/$(am__dirstamp) \ - grub-core/fs/$(DEPDIR)/$(am__dirstamp) -grub-core/fs/libgrubmods_a-exfat.$(OBJEXT): \ - grub-core/fs/$(am__dirstamp) \ - grub-core/fs/$(DEPDIR)/$(am__dirstamp) -grub-core/fs/libgrubmods_a-f2fs.$(OBJEXT): \ - grub-core/fs/$(am__dirstamp) \ - grub-core/fs/$(DEPDIR)/$(am__dirstamp) -grub-core/fs/libgrubmods_a-fshelp.$(OBJEXT): \ - grub-core/fs/$(am__dirstamp) \ - grub-core/fs/$(DEPDIR)/$(am__dirstamp) -grub-core/fs/libgrubmods_a-hfs.$(OBJEXT): \ - grub-core/fs/$(am__dirstamp) \ - grub-core/fs/$(DEPDIR)/$(am__dirstamp) -grub-core/fs/libgrubmods_a-hfsplus.$(OBJEXT): \ - grub-core/fs/$(am__dirstamp) \ - grub-core/fs/$(DEPDIR)/$(am__dirstamp) -grub-core/fs/libgrubmods_a-hfspluscomp.$(OBJEXT): \ - grub-core/fs/$(am__dirstamp) \ - grub-core/fs/$(DEPDIR)/$(am__dirstamp) -grub-core/fs/libgrubmods_a-iso9660.$(OBJEXT): \ - grub-core/fs/$(am__dirstamp) \ - grub-core/fs/$(DEPDIR)/$(am__dirstamp) -grub-core/fs/libgrubmods_a-jfs.$(OBJEXT): \ - grub-core/fs/$(am__dirstamp) \ - grub-core/fs/$(DEPDIR)/$(am__dirstamp) -grub-core/fs/libgrubmods_a-minix.$(OBJEXT): \ - grub-core/fs/$(am__dirstamp) \ - grub-core/fs/$(DEPDIR)/$(am__dirstamp) -grub-core/fs/libgrubmods_a-minix2.$(OBJEXT): \ - grub-core/fs/$(am__dirstamp) \ - grub-core/fs/$(DEPDIR)/$(am__dirstamp) -grub-core/fs/libgrubmods_a-minix3.$(OBJEXT): \ - grub-core/fs/$(am__dirstamp) \ - grub-core/fs/$(DEPDIR)/$(am__dirstamp) -grub-core/fs/libgrubmods_a-minix_be.$(OBJEXT): \ - grub-core/fs/$(am__dirstamp) \ - grub-core/fs/$(DEPDIR)/$(am__dirstamp) -grub-core/fs/libgrubmods_a-minix2_be.$(OBJEXT): \ - grub-core/fs/$(am__dirstamp) \ - grub-core/fs/$(DEPDIR)/$(am__dirstamp) -grub-core/fs/libgrubmods_a-minix3_be.$(OBJEXT): \ - grub-core/fs/$(am__dirstamp) \ - grub-core/fs/$(DEPDIR)/$(am__dirstamp) -grub-core/fs/libgrubmods_a-nilfs2.$(OBJEXT): \ - grub-core/fs/$(am__dirstamp) \ - grub-core/fs/$(DEPDIR)/$(am__dirstamp) -grub-core/fs/libgrubmods_a-ntfs.$(OBJEXT): \ - grub-core/fs/$(am__dirstamp) \ - grub-core/fs/$(DEPDIR)/$(am__dirstamp) -grub-core/fs/libgrubmods_a-ntfscomp.$(OBJEXT): \ - grub-core/fs/$(am__dirstamp) \ - grub-core/fs/$(DEPDIR)/$(am__dirstamp) -grub-core/fs/libgrubmods_a-reiserfs.$(OBJEXT): \ - grub-core/fs/$(am__dirstamp) \ - grub-core/fs/$(DEPDIR)/$(am__dirstamp) -grub-core/fs/libgrubmods_a-romfs.$(OBJEXT): \ - grub-core/fs/$(am__dirstamp) \ - grub-core/fs/$(DEPDIR)/$(am__dirstamp) -grub-core/fs/libgrubmods_a-sfs.$(OBJEXT): \ - grub-core/fs/$(am__dirstamp) \ - grub-core/fs/$(DEPDIR)/$(am__dirstamp) -grub-core/fs/libgrubmods_a-squash4.$(OBJEXT): \ - grub-core/fs/$(am__dirstamp) \ - grub-core/fs/$(DEPDIR)/$(am__dirstamp) -grub-core/fs/libgrubmods_a-tar.$(OBJEXT): \ - grub-core/fs/$(am__dirstamp) \ - grub-core/fs/$(DEPDIR)/$(am__dirstamp) -grub-core/fs/libgrubmods_a-udf.$(OBJEXT): \ - grub-core/fs/$(am__dirstamp) \ - grub-core/fs/$(DEPDIR)/$(am__dirstamp) -grub-core/fs/libgrubmods_a-ufs2.$(OBJEXT): \ - grub-core/fs/$(am__dirstamp) \ - grub-core/fs/$(DEPDIR)/$(am__dirstamp) -grub-core/fs/libgrubmods_a-ufs.$(OBJEXT): \ - grub-core/fs/$(am__dirstamp) \ - grub-core/fs/$(DEPDIR)/$(am__dirstamp) -grub-core/fs/libgrubmods_a-ufs_be.$(OBJEXT): \ - grub-core/fs/$(am__dirstamp) \ - grub-core/fs/$(DEPDIR)/$(am__dirstamp) -grub-core/fs/libgrubmods_a-xfs.$(OBJEXT): \ - grub-core/fs/$(am__dirstamp) \ - grub-core/fs/$(DEPDIR)/$(am__dirstamp) -grub-core/fs/zfs/$(am__dirstamp): - @$(MKDIR_P) grub-core/fs/zfs - @: > grub-core/fs/zfs/$(am__dirstamp) -grub-core/fs/zfs/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) grub-core/fs/zfs/$(DEPDIR) - @: > grub-core/fs/zfs/$(DEPDIR)/$(am__dirstamp) -grub-core/fs/zfs/libgrubmods_a-zfscrypt.$(OBJEXT): \ - grub-core/fs/zfs/$(am__dirstamp) \ - grub-core/fs/zfs/$(DEPDIR)/$(am__dirstamp) -grub-core/fs/zfs/libgrubmods_a-zfs.$(OBJEXT): \ - grub-core/fs/zfs/$(am__dirstamp) \ - grub-core/fs/zfs/$(DEPDIR)/$(am__dirstamp) -grub-core/fs/zfs/libgrubmods_a-zfsinfo.$(OBJEXT): \ - grub-core/fs/zfs/$(am__dirstamp) \ - grub-core/fs/zfs/$(DEPDIR)/$(am__dirstamp) -grub-core/fs/zfs/libgrubmods_a-zfs_lzjb.$(OBJEXT): \ - grub-core/fs/zfs/$(am__dirstamp) \ - grub-core/fs/zfs/$(DEPDIR)/$(am__dirstamp) -grub-core/fs/zfs/libgrubmods_a-zfs_lz4.$(OBJEXT): \ - grub-core/fs/zfs/$(am__dirstamp) \ - grub-core/fs/zfs/$(DEPDIR)/$(am__dirstamp) -grub-core/fs/zfs/libgrubmods_a-zfs_sha256.$(OBJEXT): \ - grub-core/fs/zfs/$(am__dirstamp) \ - grub-core/fs/zfs/$(DEPDIR)/$(am__dirstamp) -grub-core/fs/zfs/libgrubmods_a-zfs_fletcher.$(OBJEXT): \ - grub-core/fs/zfs/$(am__dirstamp) \ - grub-core/fs/zfs/$(DEPDIR)/$(am__dirstamp) -grub-core/lib/libgrubmods_a-envblk.$(OBJEXT): \ - grub-core/lib/$(am__dirstamp) \ - grub-core/lib/$(DEPDIR)/$(am__dirstamp) -grub-core/lib/libgrubmods_a-hexdump.$(OBJEXT): \ - grub-core/lib/$(am__dirstamp) \ - grub-core/lib/$(DEPDIR)/$(am__dirstamp) -grub-core/lib/libgrubmods_a-LzFind.$(OBJEXT): \ - grub-core/lib/$(am__dirstamp) \ - grub-core/lib/$(DEPDIR)/$(am__dirstamp) -grub-core/lib/libgrubmods_a-LzmaEnc.$(OBJEXT): \ - grub-core/lib/$(am__dirstamp) \ - grub-core/lib/$(DEPDIR)/$(am__dirstamp) -grub-core/lib/libgrubmods_a-crc.$(OBJEXT): \ - grub-core/lib/$(am__dirstamp) \ - grub-core/lib/$(DEPDIR)/$(am__dirstamp) -grub-core/lib/libgrubmods_a-adler32.$(OBJEXT): \ - grub-core/lib/$(am__dirstamp) \ - grub-core/lib/$(DEPDIR)/$(am__dirstamp) -grub-core/lib/libgrubmods_a-crc64.$(OBJEXT): \ - grub-core/lib/$(am__dirstamp) \ - grub-core/lib/$(DEPDIR)/$(am__dirstamp) -grub-core/normal/libgrubmods_a-datetime.$(OBJEXT): \ - grub-core/normal/$(am__dirstamp) \ - grub-core/normal/$(DEPDIR)/$(am__dirstamp) -grub-core/normal/libgrubmods_a-misc.$(OBJEXT): \ - grub-core/normal/$(am__dirstamp) \ - grub-core/normal/$(DEPDIR)/$(am__dirstamp) -grub-core/partmap/libgrubmods_a-acorn.$(OBJEXT): \ - grub-core/partmap/$(am__dirstamp) \ - grub-core/partmap/$(DEPDIR)/$(am__dirstamp) -grub-core/partmap/libgrubmods_a-amiga.$(OBJEXT): \ - grub-core/partmap/$(am__dirstamp) \ - grub-core/partmap/$(DEPDIR)/$(am__dirstamp) -grub-core/partmap/libgrubmods_a-apple.$(OBJEXT): \ - grub-core/partmap/$(am__dirstamp) \ - grub-core/partmap/$(DEPDIR)/$(am__dirstamp) -grub-core/partmap/libgrubmods_a-sun.$(OBJEXT): \ - grub-core/partmap/$(am__dirstamp) \ - grub-core/partmap/$(DEPDIR)/$(am__dirstamp) -grub-core/partmap/libgrubmods_a-plan.$(OBJEXT): \ - grub-core/partmap/$(am__dirstamp) \ - grub-core/partmap/$(DEPDIR)/$(am__dirstamp) -grub-core/partmap/libgrubmods_a-dvh.$(OBJEXT): \ - grub-core/partmap/$(am__dirstamp) \ - grub-core/partmap/$(DEPDIR)/$(am__dirstamp) -grub-core/partmap/libgrubmods_a-sunpc.$(OBJEXT): \ - grub-core/partmap/$(am__dirstamp) \ - grub-core/partmap/$(DEPDIR)/$(am__dirstamp) -grub-core/partmap/libgrubmods_a-bsdlabel.$(OBJEXT): \ - grub-core/partmap/$(am__dirstamp) \ - grub-core/partmap/$(DEPDIR)/$(am__dirstamp) -grub-core/partmap/libgrubmods_a-dfly.$(OBJEXT): \ - grub-core/partmap/$(am__dirstamp) \ - grub-core/partmap/$(DEPDIR)/$(am__dirstamp) -grub-core/script/$(am__dirstamp): - @$(MKDIR_P) grub-core/script - @: > grub-core/script/$(am__dirstamp) -grub-core/script/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) grub-core/script/$(DEPDIR) - @: > grub-core/script/$(DEPDIR)/$(am__dirstamp) -grub-core/script/libgrubmods_a-function.$(OBJEXT): \ - grub-core/script/$(am__dirstamp) \ - grub-core/script/$(DEPDIR)/$(am__dirstamp) -grub-core/script/libgrubmods_a-lexer.$(OBJEXT): \ - grub-core/script/$(am__dirstamp) \ - grub-core/script/$(DEPDIR)/$(am__dirstamp) -grub-core/script/libgrubmods_a-main.$(OBJEXT): \ - grub-core/script/$(am__dirstamp) \ - grub-core/script/$(DEPDIR)/$(am__dirstamp) -grub-core/script/libgrubmods_a-script.$(OBJEXT): \ - grub-core/script/$(am__dirstamp) \ - grub-core/script/$(DEPDIR)/$(am__dirstamp) -grub-core/script/libgrubmods_a-argv.$(OBJEXT): \ - grub-core/script/$(am__dirstamp) \ - grub-core/script/$(DEPDIR)/$(am__dirstamp) -grub-core/io/libgrubmods_a-gzio.$(OBJEXT): \ - grub-core/io/$(am__dirstamp) \ - grub-core/io/$(DEPDIR)/$(am__dirstamp) -grub-core/io/libgrubmods_a-xzio.$(OBJEXT): \ - grub-core/io/$(am__dirstamp) \ - grub-core/io/$(DEPDIR)/$(am__dirstamp) -grub-core/io/libgrubmods_a-lzopio.$(OBJEXT): \ - grub-core/io/$(am__dirstamp) \ - grub-core/io/$(DEPDIR)/$(am__dirstamp) -grub-core/kern/ia64/$(am__dirstamp): - @$(MKDIR_P) grub-core/kern/ia64 - @: > grub-core/kern/ia64/$(am__dirstamp) -grub-core/kern/ia64/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) grub-core/kern/ia64/$(DEPDIR) - @: > grub-core/kern/ia64/$(DEPDIR)/$(am__dirstamp) -grub-core/kern/ia64/libgrubmods_a-dl_helper.$(OBJEXT): \ - grub-core/kern/ia64/$(am__dirstamp) \ - grub-core/kern/ia64/$(DEPDIR)/$(am__dirstamp) -grub-core/kern/arm/$(am__dirstamp): - @$(MKDIR_P) grub-core/kern/arm - @: > grub-core/kern/arm/$(am__dirstamp) -grub-core/kern/arm/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) grub-core/kern/arm/$(DEPDIR) - @: > grub-core/kern/arm/$(DEPDIR)/$(am__dirstamp) -grub-core/kern/arm/libgrubmods_a-dl_helper.$(OBJEXT): \ - grub-core/kern/arm/$(am__dirstamp) \ - grub-core/kern/arm/$(DEPDIR)/$(am__dirstamp) -grub-core/kern/arm64/$(am__dirstamp): - @$(MKDIR_P) grub-core/kern/arm64 - @: > grub-core/kern/arm64/$(am__dirstamp) -grub-core/kern/arm64/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) grub-core/kern/arm64/$(DEPDIR) - @: > grub-core/kern/arm64/$(DEPDIR)/$(am__dirstamp) -grub-core/kern/arm64/libgrubmods_a-dl_helper.$(OBJEXT): \ - grub-core/kern/arm64/$(am__dirstamp) \ - grub-core/kern/arm64/$(DEPDIR)/$(am__dirstamp) -grub-core/lib/minilzo/$(am__dirstamp): - @$(MKDIR_P) grub-core/lib/minilzo - @: > grub-core/lib/minilzo/$(am__dirstamp) -grub-core/lib/minilzo/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) grub-core/lib/minilzo/$(DEPDIR) - @: > grub-core/lib/minilzo/$(DEPDIR)/$(am__dirstamp) -grub-core/lib/minilzo/libgrubmods_a-minilzo.$(OBJEXT): \ - grub-core/lib/minilzo/$(am__dirstamp) \ - grub-core/lib/minilzo/$(DEPDIR)/$(am__dirstamp) -grub-core/lib/xzembed/$(am__dirstamp): - @$(MKDIR_P) grub-core/lib/xzembed - @: > grub-core/lib/xzembed/$(am__dirstamp) -grub-core/lib/xzembed/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) grub-core/lib/xzembed/$(DEPDIR) - @: > grub-core/lib/xzembed/$(DEPDIR)/$(am__dirstamp) -grub-core/lib/xzembed/libgrubmods_a-xz_dec_bcj.$(OBJEXT): \ - grub-core/lib/xzembed/$(am__dirstamp) \ - grub-core/lib/xzembed/$(DEPDIR)/$(am__dirstamp) -grub-core/lib/xzembed/libgrubmods_a-xz_dec_lzma2.$(OBJEXT): \ - grub-core/lib/xzembed/$(am__dirstamp) \ - grub-core/lib/xzembed/$(DEPDIR)/$(am__dirstamp) -grub-core/lib/xzembed/libgrubmods_a-xz_dec_stream.$(OBJEXT): \ - grub-core/lib/xzembed/$(am__dirstamp) \ - grub-core/lib/xzembed/$(DEPDIR)/$(am__dirstamp) -grub-core/lib/zstd/$(am__dirstamp): - @$(MKDIR_P) grub-core/lib/zstd - @: > grub-core/lib/zstd/$(am__dirstamp) -grub-core/lib/zstd/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) grub-core/lib/zstd/$(DEPDIR) - @: > grub-core/lib/zstd/$(DEPDIR)/$(am__dirstamp) -grub-core/lib/zstd/libgrubmods_a-debug.$(OBJEXT): \ - grub-core/lib/zstd/$(am__dirstamp) \ - grub-core/lib/zstd/$(DEPDIR)/$(am__dirstamp) -grub-core/lib/zstd/libgrubmods_a-entropy_common.$(OBJEXT): \ - grub-core/lib/zstd/$(am__dirstamp) \ - grub-core/lib/zstd/$(DEPDIR)/$(am__dirstamp) -grub-core/lib/zstd/libgrubmods_a-error_private.$(OBJEXT): \ - grub-core/lib/zstd/$(am__dirstamp) \ - grub-core/lib/zstd/$(DEPDIR)/$(am__dirstamp) -grub-core/lib/zstd/libgrubmods_a-fse_decompress.$(OBJEXT): \ - grub-core/lib/zstd/$(am__dirstamp) \ - grub-core/lib/zstd/$(DEPDIR)/$(am__dirstamp) -grub-core/lib/zstd/libgrubmods_a-huf_decompress.$(OBJEXT): \ - grub-core/lib/zstd/$(am__dirstamp) \ - grub-core/lib/zstd/$(DEPDIR)/$(am__dirstamp) -grub-core/lib/zstd/libgrubmods_a-module.$(OBJEXT): \ - grub-core/lib/zstd/$(am__dirstamp) \ - grub-core/lib/zstd/$(DEPDIR)/$(am__dirstamp) -grub-core/lib/zstd/libgrubmods_a-xxhash.$(OBJEXT): \ - grub-core/lib/zstd/$(am__dirstamp) \ - grub-core/lib/zstd/$(DEPDIR)/$(am__dirstamp) -grub-core/lib/zstd/libgrubmods_a-zstd_common.$(OBJEXT): \ - grub-core/lib/zstd/$(am__dirstamp) \ - grub-core/lib/zstd/$(DEPDIR)/$(am__dirstamp) -grub-core/lib/zstd/libgrubmods_a-zstd_decompress.$(OBJEXT): \ - grub-core/lib/zstd/$(am__dirstamp) \ - grub-core/lib/zstd/$(DEPDIR)/$(am__dirstamp) - -libgrubmods.a: $(libgrubmods_a_OBJECTS) $(libgrubmods_a_DEPENDENCIES) $(EXTRA_libgrubmods_a_DEPENDENCIES) - $(AM_V_at)-rm -f libgrubmods.a - $(AM_V_AR)$(libgrubmods_a_AR) libgrubmods.a $(libgrubmods_a_OBJECTS) $(libgrubmods_a_LIBADD) - $(AM_V_at)$(RANLIB) libgrubmods.a -install-binPROGRAMS: $(bin_PROGRAMS) - @$(NORMAL_INSTALL) - @list='$(bin_PROGRAMS)'; test -n "$(bindir)" || list=; \ - if test -n "$$list"; then \ - echo " $(MKDIR_P) '$(DESTDIR)$(bindir)'"; \ - $(MKDIR_P) "$(DESTDIR)$(bindir)" || exit 1; \ - fi; \ - for p in $$list; do echo "$$p $$p"; done | \ - sed 's/$(EXEEXT)$$//' | \ - while read p p1; do if test -f $$p \ - ; then echo "$$p"; echo "$$p"; else :; fi; \ - done | \ - sed -e 'p;s,.*/,,;n;h' \ - -e 's|.*|.|' \ - -e 'p;x;s,.*/,,;s/$(EXEEXT)$$//;$(transform);s/$$/$(EXEEXT)/' | \ - sed 'N;N;N;s,\n, ,g' | \ - $(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1 } \ - { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \ - if ($$2 == $$4) files[d] = files[d] " " $$1; \ - else { print "f", $$3 "/" $$4, $$1; } } \ - END { for (d in files) print "f", d, files[d] }' | \ - while read type dir files; do \ - if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \ - test -z "$$files" || { \ - echo " $(INSTALL_PROGRAM_ENV) $(INSTALL_PROGRAM) $$files '$(DESTDIR)$(bindir)$$dir'"; \ - $(INSTALL_PROGRAM_ENV) $(INSTALL_PROGRAM) $$files "$(DESTDIR)$(bindir)$$dir" || exit $$?; \ - } \ - ; done - -uninstall-binPROGRAMS: - @$(NORMAL_UNINSTALL) - @list='$(bin_PROGRAMS)'; test -n "$(bindir)" || list=; \ - files=`for p in $$list; do echo "$$p"; done | \ - sed -e 'h;s,^.*/,,;s/$(EXEEXT)$$//;$(transform)' \ - -e 's/$$/$(EXEEXT)/' \ - `; \ - test -n "$$list" || exit 0; \ - echo " ( cd '$(DESTDIR)$(bindir)' && rm -f" $$files ")"; \ - cd "$(DESTDIR)$(bindir)" && rm -f $$files - -clean-binPROGRAMS: - -test -z "$(bin_PROGRAMS)" || rm -f $(bin_PROGRAMS) - -clean-checkPROGRAMS: - -test -z "$(check_PROGRAMS)" || rm -f $(check_PROGRAMS) - -clean-noinstPROGRAMS: - -test -z "$(noinst_PROGRAMS)" || rm -f $(noinst_PROGRAMS) -install-platformPROGRAMS: $(platform_PROGRAMS) - @$(NORMAL_INSTALL) - @list='$(platform_PROGRAMS)'; test -n "$(platformdir)" || list=; \ - if test -n "$$list"; then \ - echo " $(MKDIR_P) '$(DESTDIR)$(platformdir)'"; \ - $(MKDIR_P) "$(DESTDIR)$(platformdir)" || exit 1; \ - fi; \ - for p in $$list; do echo "$$p $$p"; done | \ - sed 's/$(EXEEXT)$$//' | \ - while read p p1; do if test -f $$p \ - ; then echo "$$p"; echo "$$p"; else :; fi; \ - done | \ - sed -e 'p;s,.*/,,;n;h' \ - -e 's|.*|.|' \ - -e 'p;x;s,.*/,,;s/$(EXEEXT)$$//;$(transform);s/$$/$(EXEEXT)/' | \ - sed 'N;N;N;s,\n, ,g' | \ - $(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1 } \ - { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \ - if ($$2 == $$4) files[d] = files[d] " " $$1; \ - else { print "f", $$3 "/" $$4, $$1; } } \ - END { for (d in files) print "f", d, files[d] }' | \ - while read type dir files; do \ - if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \ - test -z "$$files" || { \ - echo " $(INSTALL_PROGRAM_ENV) $(INSTALL_PROGRAM) $$files '$(DESTDIR)$(platformdir)$$dir'"; \ - $(INSTALL_PROGRAM_ENV) $(INSTALL_PROGRAM) $$files "$(DESTDIR)$(platformdir)$$dir" || exit $$?; \ - } \ - ; done - -uninstall-platformPROGRAMS: - @$(NORMAL_UNINSTALL) - @list='$(platform_PROGRAMS)'; test -n "$(platformdir)" || list=; \ - files=`for p in $$list; do echo "$$p"; done | \ - sed -e 'h;s,^.*/,,;s/$(EXEEXT)$$//;$(transform)' \ - -e 's/$$/$(EXEEXT)/' \ - `; \ - test -n "$$list" || exit 0; \ - echo " ( cd '$(DESTDIR)$(platformdir)' && rm -f" $$files ")"; \ - cd "$(DESTDIR)$(platformdir)" && rm -f $$files - -clean-platformPROGRAMS: - -test -z "$(platform_PROGRAMS)" || rm -f $(platform_PROGRAMS) -install-sbinPROGRAMS: $(sbin_PROGRAMS) - @$(NORMAL_INSTALL) - @list='$(sbin_PROGRAMS)'; test -n "$(sbindir)" || list=; \ - if test -n "$$list"; then \ - echo " $(MKDIR_P) '$(DESTDIR)$(sbindir)'"; \ - $(MKDIR_P) "$(DESTDIR)$(sbindir)" || exit 1; \ - fi; \ - for p in $$list; do echo "$$p $$p"; done | \ - sed 's/$(EXEEXT)$$//' | \ - while read p p1; do if test -f $$p \ - ; then echo "$$p"; echo "$$p"; else :; fi; \ - done | \ - sed -e 'p;s,.*/,,;n;h' \ - -e 's|.*|.|' \ - -e 'p;x;s,.*/,,;s/$(EXEEXT)$$//;$(transform);s/$$/$(EXEEXT)/' | \ - sed 'N;N;N;s,\n, ,g' | \ - $(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1 } \ - { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \ - if ($$2 == $$4) files[d] = files[d] " " $$1; \ - else { print "f", $$3 "/" $$4, $$1; } } \ - END { for (d in files) print "f", d, files[d] }' | \ - while read type dir files; do \ - if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \ - test -z "$$files" || { \ - echo " $(INSTALL_PROGRAM_ENV) $(INSTALL_PROGRAM) $$files '$(DESTDIR)$(sbindir)$$dir'"; \ - $(INSTALL_PROGRAM_ENV) $(INSTALL_PROGRAM) $$files "$(DESTDIR)$(sbindir)$$dir" || exit $$?; \ - } \ - ; done - -uninstall-sbinPROGRAMS: - @$(NORMAL_UNINSTALL) - @list='$(sbin_PROGRAMS)'; test -n "$(sbindir)" || list=; \ - files=`for p in $$list; do echo "$$p"; done | \ - sed -e 'h;s,^.*/,,;s/$(EXEEXT)$$//;$(transform)' \ - -e 's/$$/$(EXEEXT)/' \ - `; \ - test -n "$$list" || exit 0; \ - echo " ( cd '$(DESTDIR)$(sbindir)' && rm -f" $$files ")"; \ - cd "$(DESTDIR)$(sbindir)" && rm -f $$files - -clean-sbinPROGRAMS: - -test -z "$(sbin_PROGRAMS)" || rm -f $(sbin_PROGRAMS) -tests/$(am__dirstamp): - @$(MKDIR_P) tests - @: > tests/$(am__dirstamp) -tests/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) tests/$(DEPDIR) - @: > tests/$(DEPDIR)/$(am__dirstamp) -tests/cmp_test-cmp_unit_test.$(OBJEXT): tests/$(am__dirstamp) \ - tests/$(DEPDIR)/$(am__dirstamp) -tests/lib/$(am__dirstamp): - @$(MKDIR_P) tests/lib - @: > tests/lib/$(am__dirstamp) -tests/lib/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) tests/lib/$(DEPDIR) - @: > tests/lib/$(DEPDIR)/$(am__dirstamp) -tests/lib/cmp_test-unit_test.$(OBJEXT): tests/lib/$(am__dirstamp) \ - tests/lib/$(DEPDIR)/$(am__dirstamp) -grub-core/kern/cmp_test-list.$(OBJEXT): \ - grub-core/kern/$(am__dirstamp) \ - grub-core/kern/$(DEPDIR)/$(am__dirstamp) -grub-core/kern/cmp_test-misc.$(OBJEXT): \ - grub-core/kern/$(am__dirstamp) \ - grub-core/kern/$(DEPDIR)/$(am__dirstamp) -grub-core/tests/lib/$(am__dirstamp): - @$(MKDIR_P) grub-core/tests/lib - @: > grub-core/tests/lib/$(am__dirstamp) -grub-core/tests/lib/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) grub-core/tests/lib/$(DEPDIR) - @: > grub-core/tests/lib/$(DEPDIR)/$(am__dirstamp) -grub-core/tests/lib/cmp_test-test.$(OBJEXT): \ - grub-core/tests/lib/$(am__dirstamp) \ - grub-core/tests/lib/$(DEPDIR)/$(am__dirstamp) - -cmp_test$(EXEEXT): $(cmp_test_OBJECTS) $(cmp_test_DEPENDENCIES) $(EXTRA_cmp_test_DEPENDENCIES) - @rm -f cmp_test$(EXEEXT) - $(AM_V_CCLD)$(cmp_test_LINK) $(cmp_test_OBJECTS) $(cmp_test_LDADD) $(LIBS) -tests/date_test-date_unit_test.$(OBJEXT): tests/$(am__dirstamp) \ - tests/$(DEPDIR)/$(am__dirstamp) -tests/lib/date_test-unit_test.$(OBJEXT): tests/lib/$(am__dirstamp) \ - tests/lib/$(DEPDIR)/$(am__dirstamp) -grub-core/kern/date_test-list.$(OBJEXT): \ - grub-core/kern/$(am__dirstamp) \ - grub-core/kern/$(DEPDIR)/$(am__dirstamp) -grub-core/kern/date_test-misc.$(OBJEXT): \ - grub-core/kern/$(am__dirstamp) \ - grub-core/kern/$(DEPDIR)/$(am__dirstamp) -grub-core/tests/lib/date_test-test.$(OBJEXT): \ - grub-core/tests/lib/$(am__dirstamp) \ - grub-core/tests/lib/$(DEPDIR)/$(am__dirstamp) - -date_test$(EXEEXT): $(date_test_OBJECTS) $(date_test_DEPENDENCIES) $(EXTRA_date_test_DEPENDENCIES) - @rm -f date_test$(EXEEXT) - $(AM_V_CCLD)$(date_test_LINK) $(date_test_OBJECTS) $(date_test_LDADD) $(LIBS) -tests/example_unit_test-example_unit_test.$(OBJEXT): \ - tests/$(am__dirstamp) tests/$(DEPDIR)/$(am__dirstamp) -tests/lib/example_unit_test-unit_test.$(OBJEXT): \ - tests/lib/$(am__dirstamp) tests/lib/$(DEPDIR)/$(am__dirstamp) -grub-core/kern/example_unit_test-list.$(OBJEXT): \ - grub-core/kern/$(am__dirstamp) \ - grub-core/kern/$(DEPDIR)/$(am__dirstamp) -grub-core/kern/example_unit_test-misc.$(OBJEXT): \ - grub-core/kern/$(am__dirstamp) \ - grub-core/kern/$(DEPDIR)/$(am__dirstamp) -grub-core/tests/lib/example_unit_test-test.$(OBJEXT): \ - grub-core/tests/lib/$(am__dirstamp) \ - grub-core/tests/lib/$(DEPDIR)/$(am__dirstamp) - -example_unit_test$(EXEEXT): $(example_unit_test_OBJECTS) $(example_unit_test_DEPENDENCIES) $(EXTRA_example_unit_test_DEPENDENCIES) - @rm -f example_unit_test$(EXEEXT) - $(AM_V_CCLD)$(example_unit_test_LINK) $(example_unit_test_OBJECTS) $(example_unit_test_LDADD) $(LIBS) -util/grub_bios_setup-grub-setup.$(OBJEXT): util/$(am__dirstamp) \ - util/$(DEPDIR)/$(am__dirstamp) -util/grub_bios_setup-setup_bios.$(OBJEXT): util/$(am__dirstamp) \ - util/$(DEPDIR)/$(am__dirstamp) -grub-core/kern/emu/grub_bios_setup-argp_common.$(OBJEXT): \ - grub-core/kern/emu/$(am__dirstamp) \ - grub-core/kern/emu/$(DEPDIR)/$(am__dirstamp) -grub-core/lib/grub_bios_setup-reed_solomon.$(OBJEXT): \ - grub-core/lib/$(am__dirstamp) \ - grub-core/lib/$(DEPDIR)/$(am__dirstamp) -grub-core/osdep/grub_bios_setup-blocklist.$(OBJEXT): \ - grub-core/osdep/$(am__dirstamp) \ - grub-core/osdep/$(DEPDIR)/$(am__dirstamp) -grub-core/osdep/grub_bios_setup-init.$(OBJEXT): \ - grub-core/osdep/$(am__dirstamp) \ - grub-core/osdep/$(DEPDIR)/$(am__dirstamp) - -grub-bios-setup$(EXEEXT): $(grub_bios_setup_OBJECTS) $(grub_bios_setup_DEPENDENCIES) $(EXTRA_grub_bios_setup_DEPENDENCIES) - @rm -f grub-bios-setup$(EXEEXT) - $(AM_V_CCLD)$(grub_bios_setup_LINK) $(grub_bios_setup_OBJECTS) $(grub_bios_setup_LDADD) $(LIBS) -util/grub_editenv-grub-editenv.$(OBJEXT): util/$(am__dirstamp) \ - util/$(DEPDIR)/$(am__dirstamp) -util/grub_editenv-editenv.$(OBJEXT): util/$(am__dirstamp) \ - util/$(DEPDIR)/$(am__dirstamp) -grub-core/osdep/grub_editenv-init.$(OBJEXT): \ - grub-core/osdep/$(am__dirstamp) \ - grub-core/osdep/$(DEPDIR)/$(am__dirstamp) - -grub-editenv$(EXEEXT): $(grub_editenv_OBJECTS) $(grub_editenv_DEPENDENCIES) $(EXTRA_grub_editenv_DEPENDENCIES) - @rm -f grub-editenv$(EXEEXT) - $(AM_V_CCLD)$(grub_editenv_LINK) $(grub_editenv_OBJECTS) $(grub_editenv_LDADD) $(LIBS) -util/grub_file-grub-file.$(OBJEXT): util/$(am__dirstamp) \ - util/$(DEPDIR)/$(am__dirstamp) -util/grub_file-render-label.$(OBJEXT): util/$(am__dirstamp) \ - util/$(DEPDIR)/$(am__dirstamp) -grub-core/commands/grub_file-file.$(OBJEXT): \ - grub-core/commands/$(am__dirstamp) \ - grub-core/commands/$(DEPDIR)/$(am__dirstamp) -grub-core/commands/grub_file-file32.$(OBJEXT): \ - grub-core/commands/$(am__dirstamp) \ - grub-core/commands/$(DEPDIR)/$(am__dirstamp) -grub-core/commands/grub_file-file64.$(OBJEXT): \ - grub-core/commands/$(am__dirstamp) \ - grub-core/commands/$(DEPDIR)/$(am__dirstamp) -grub-core/loader/i386/$(am__dirstamp): - @$(MKDIR_P) grub-core/loader/i386 - @: > grub-core/loader/i386/$(am__dirstamp) -grub-core/loader/i386/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) grub-core/loader/i386/$(DEPDIR) - @: > grub-core/loader/i386/$(DEPDIR)/$(am__dirstamp) -grub-core/loader/i386/grub_file-xen_file.$(OBJEXT): \ - grub-core/loader/i386/$(am__dirstamp) \ - grub-core/loader/i386/$(DEPDIR)/$(am__dirstamp) -grub-core/loader/i386/grub_file-xen_file32.$(OBJEXT): \ - grub-core/loader/i386/$(am__dirstamp) \ - grub-core/loader/i386/$(DEPDIR)/$(am__dirstamp) -grub-core/loader/i386/grub_file-xen_file64.$(OBJEXT): \ - grub-core/loader/i386/$(am__dirstamp) \ - grub-core/loader/i386/$(DEPDIR)/$(am__dirstamp) -grub-core/io/grub_file-offset.$(OBJEXT): grub-core/io/$(am__dirstamp) \ - grub-core/io/$(DEPDIR)/$(am__dirstamp) -grub-core/kern/grub_file-elf.$(OBJEXT): \ - grub-core/kern/$(am__dirstamp) \ - grub-core/kern/$(DEPDIR)/$(am__dirstamp) -grub-core/loader/$(am__dirstamp): - @$(MKDIR_P) grub-core/loader - @: > grub-core/loader/$(am__dirstamp) -grub-core/loader/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) grub-core/loader/$(DEPDIR) - @: > grub-core/loader/$(DEPDIR)/$(am__dirstamp) -grub-core/loader/grub_file-lzss.$(OBJEXT): \ - grub-core/loader/$(am__dirstamp) \ - grub-core/loader/$(DEPDIR)/$(am__dirstamp) -grub-core/loader/grub_file-macho.$(OBJEXT): \ - grub-core/loader/$(am__dirstamp) \ - grub-core/loader/$(DEPDIR)/$(am__dirstamp) -grub-core/loader/grub_file-macho32.$(OBJEXT): \ - grub-core/loader/$(am__dirstamp) \ - grub-core/loader/$(DEPDIR)/$(am__dirstamp) -grub-core/loader/grub_file-macho64.$(OBJEXT): \ - grub-core/loader/$(am__dirstamp) \ - grub-core/loader/$(DEPDIR)/$(am__dirstamp) -grub-core/kern/emu/grub_file-hostfs.$(OBJEXT): \ - grub-core/kern/emu/$(am__dirstamp) \ - grub-core/kern/emu/$(DEPDIR)/$(am__dirstamp) -grub-core/disk/grub_file-host.$(OBJEXT): \ - grub-core/disk/$(am__dirstamp) \ - grub-core/disk/$(DEPDIR)/$(am__dirstamp) -grub-core/osdep/grub_file-init.$(OBJEXT): \ - grub-core/osdep/$(am__dirstamp) \ - grub-core/osdep/$(DEPDIR)/$(am__dirstamp) - -grub-file$(EXEEXT): $(grub_file_OBJECTS) $(grub_file_DEPENDENCIES) $(EXTRA_grub_file_DEPENDENCIES) - @rm -f grub-file$(EXEEXT) - $(AM_V_CCLD)$(grub_file_LINK) $(grub_file_OBJECTS) $(grub_file_LDADD) $(LIBS) -util/grub_fstest-grub-fstest.$(OBJEXT): util/$(am__dirstamp) \ - util/$(DEPDIR)/$(am__dirstamp) -grub-core/kern/emu/grub_fstest-hostfs.$(OBJEXT): \ - grub-core/kern/emu/$(am__dirstamp) \ - grub-core/kern/emu/$(DEPDIR)/$(am__dirstamp) -grub-core/disk/grub_fstest-host.$(OBJEXT): \ - grub-core/disk/$(am__dirstamp) \ - grub-core/disk/$(DEPDIR)/$(am__dirstamp) -grub-core/osdep/grub_fstest-init.$(OBJEXT): \ - grub-core/osdep/$(am__dirstamp) \ - grub-core/osdep/$(DEPDIR)/$(am__dirstamp) - -grub-fstest$(EXEEXT): $(grub_fstest_OBJECTS) $(grub_fstest_DEPENDENCIES) $(EXTRA_grub_fstest_DEPENDENCIES) - @rm -f grub-fstest$(EXEEXT) - $(AM_V_CCLD)$(grub_fstest_LINK) $(grub_fstest_OBJECTS) $(grub_fstest_LDADD) $(LIBS) -util/grub_glue_efi-grub-glue-efi.$(OBJEXT): util/$(am__dirstamp) \ - util/$(DEPDIR)/$(am__dirstamp) -util/grub_glue_efi-glue-efi.$(OBJEXT): util/$(am__dirstamp) \ - util/$(DEPDIR)/$(am__dirstamp) -grub-core/kern/emu/grub_glue_efi-argp_common.$(OBJEXT): \ - grub-core/kern/emu/$(am__dirstamp) \ - grub-core/kern/emu/$(DEPDIR)/$(am__dirstamp) -grub-core/osdep/grub_glue_efi-init.$(OBJEXT): \ - grub-core/osdep/$(am__dirstamp) \ - grub-core/osdep/$(DEPDIR)/$(am__dirstamp) - -grub-glue-efi$(EXEEXT): $(grub_glue_efi_OBJECTS) $(grub_glue_efi_DEPENDENCIES) $(EXTRA_grub_glue_efi_DEPENDENCIES) - @rm -f grub-glue-efi$(EXEEXT) - $(AM_V_CCLD)$(grub_glue_efi_LINK) $(grub_glue_efi_OBJECTS) $(grub_glue_efi_LDADD) $(LIBS) -util/grub_install-grub-install.$(OBJEXT): util/$(am__dirstamp) \ - util/$(DEPDIR)/$(am__dirstamp) -util/grub_install-probe.$(OBJEXT): util/$(am__dirstamp) \ - util/$(DEPDIR)/$(am__dirstamp) -util/grub_install-mkimage.$(OBJEXT): util/$(am__dirstamp) \ - util/$(DEPDIR)/$(am__dirstamp) -util/grub_install-grub-mkimage32.$(OBJEXT): util/$(am__dirstamp) \ - util/$(DEPDIR)/$(am__dirstamp) -util/grub_install-grub-mkimage64.$(OBJEXT): util/$(am__dirstamp) \ - util/$(DEPDIR)/$(am__dirstamp) -util/grub_install-grub-install-common.$(OBJEXT): util/$(am__dirstamp) \ - util/$(DEPDIR)/$(am__dirstamp) -util/grub_install-setup_bios.$(OBJEXT): util/$(am__dirstamp) \ - util/$(DEPDIR)/$(am__dirstamp) -util/grub_install-setup_sparc.$(OBJEXT): util/$(am__dirstamp) \ - util/$(DEPDIR)/$(am__dirstamp) -grub-core/lib/grub_install-reed_solomon.$(OBJEXT): \ - grub-core/lib/$(am__dirstamp) \ - grub-core/lib/$(DEPDIR)/$(am__dirstamp) -grub-core/osdep/grub_install-random.$(OBJEXT): \ - grub-core/osdep/$(am__dirstamp) \ - grub-core/osdep/$(DEPDIR)/$(am__dirstamp) -grub-core/osdep/grub_install-ofpath.$(OBJEXT): \ - grub-core/osdep/$(am__dirstamp) \ - grub-core/osdep/$(DEPDIR)/$(am__dirstamp) -grub-core/osdep/grub_install-platform.$(OBJEXT): \ - grub-core/osdep/$(am__dirstamp) \ - grub-core/osdep/$(DEPDIR)/$(am__dirstamp) -grub-core/osdep/grub_install-platform_unix.$(OBJEXT): \ - grub-core/osdep/$(am__dirstamp) \ - grub-core/osdep/$(DEPDIR)/$(am__dirstamp) -grub-core/osdep/grub_install-compress.$(OBJEXT): \ - grub-core/osdep/$(am__dirstamp) \ - grub-core/osdep/$(DEPDIR)/$(am__dirstamp) -util/grub_install-editenv.$(OBJEXT): util/$(am__dirstamp) \ - util/$(DEPDIR)/$(am__dirstamp) -grub-core/osdep/grub_install-blocklist.$(OBJEXT): \ - grub-core/osdep/$(am__dirstamp) \ - grub-core/osdep/$(DEPDIR)/$(am__dirstamp) -grub-core/osdep/grub_install-config.$(OBJEXT): \ - grub-core/osdep/$(am__dirstamp) \ - grub-core/osdep/$(DEPDIR)/$(am__dirstamp) -util/grub_install-config.$(OBJEXT): util/$(am__dirstamp) \ - util/$(DEPDIR)/$(am__dirstamp) -util/grub_install-render-label.$(OBJEXT): util/$(am__dirstamp) \ - util/$(DEPDIR)/$(am__dirstamp) -grub-core/kern/emu/grub_install-hostfs.$(OBJEXT): \ - grub-core/kern/emu/$(am__dirstamp) \ - grub-core/kern/emu/$(DEPDIR)/$(am__dirstamp) -grub-core/disk/grub_install-host.$(OBJEXT): \ - grub-core/disk/$(am__dirstamp) \ - grub-core/disk/$(DEPDIR)/$(am__dirstamp) -util/grub_install-resolve.$(OBJEXT): util/$(am__dirstamp) \ - util/$(DEPDIR)/$(am__dirstamp) -grub-core/kern/emu/grub_install-argp_common.$(OBJEXT): \ - grub-core/kern/emu/$(am__dirstamp) \ - grub-core/kern/emu/$(DEPDIR)/$(am__dirstamp) -grub-core/osdep/grub_install-init.$(OBJEXT): \ - grub-core/osdep/$(am__dirstamp) \ - grub-core/osdep/$(DEPDIR)/$(am__dirstamp) - -grub-install$(EXEEXT): $(grub_install_OBJECTS) $(grub_install_DEPENDENCIES) $(EXTRA_grub_install_DEPENDENCIES) - @rm -f grub-install$(EXEEXT) - $(AM_V_CCLD)$(grub_install_LINK) $(grub_install_OBJECTS) $(grub_install_LDADD) $(LIBS) -util/grub_macbless-grub-macbless.$(OBJEXT): util/$(am__dirstamp) \ - util/$(DEPDIR)/$(am__dirstamp) -grub-core/osdep/grub_macbless-init.$(OBJEXT): \ - grub-core/osdep/$(am__dirstamp) \ - grub-core/osdep/$(DEPDIR)/$(am__dirstamp) -grub-core/kern/emu/grub_macbless-argp_common.$(OBJEXT): \ - grub-core/kern/emu/$(am__dirstamp) \ - grub-core/kern/emu/$(DEPDIR)/$(am__dirstamp) - -grub-macbless$(EXEEXT): $(grub_macbless_OBJECTS) $(grub_macbless_DEPENDENCIES) $(EXTRA_grub_macbless_DEPENDENCIES) - @rm -f grub-macbless$(EXEEXT) - $(AM_V_CCLD)$(grub_macbless_LINK) $(grub_macbless_OBJECTS) $(grub_macbless_LDADD) $(LIBS) -util/grub_macho2img-grub-macho2img.$(OBJEXT): util/$(am__dirstamp) \ - util/$(DEPDIR)/$(am__dirstamp) - -grub-macho2img$(EXEEXT): $(grub_macho2img_OBJECTS) $(grub_macho2img_DEPENDENCIES) $(EXTRA_grub_macho2img_DEPENDENCIES) - @rm -f grub-macho2img$(EXEEXT) - $(AM_V_CCLD)$(grub_macho2img_LINK) $(grub_macho2img_OBJECTS) $(grub_macho2img_LDADD) $(LIBS) -util/grub_menulst2cfg-grub-menulst2cfg.$(OBJEXT): \ - util/$(am__dirstamp) util/$(DEPDIR)/$(am__dirstamp) -grub-core/lib/grub_menulst2cfg-legacy_parse.$(OBJEXT): \ - grub-core/lib/$(am__dirstamp) \ - grub-core/lib/$(DEPDIR)/$(am__dirstamp) -grub-core/lib/i386/pc/$(am__dirstamp): - @$(MKDIR_P) grub-core/lib/i386/pc - @: > grub-core/lib/i386/pc/$(am__dirstamp) -grub-core/lib/i386/pc/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) grub-core/lib/i386/pc/$(DEPDIR) - @: > grub-core/lib/i386/pc/$(DEPDIR)/$(am__dirstamp) -grub-core/lib/i386/pc/grub_menulst2cfg-vesa_modes_table.$(OBJEXT): \ - grub-core/lib/i386/pc/$(am__dirstamp) \ - grub-core/lib/i386/pc/$(DEPDIR)/$(am__dirstamp) -grub-core/osdep/grub_menulst2cfg-init.$(OBJEXT): \ - grub-core/osdep/$(am__dirstamp) \ - grub-core/osdep/$(DEPDIR)/$(am__dirstamp) - -grub-menulst2cfg$(EXEEXT): $(grub_menulst2cfg_OBJECTS) $(grub_menulst2cfg_DEPENDENCIES) $(EXTRA_grub_menulst2cfg_DEPENDENCIES) - @rm -f grub-menulst2cfg$(EXEEXT) - $(AM_V_CCLD)$(grub_menulst2cfg_LINK) $(grub_menulst2cfg_OBJECTS) $(grub_menulst2cfg_LDADD) $(LIBS) -util/grub_mkfont-grub-mkfont.$(OBJEXT): util/$(am__dirstamp) \ - util/$(DEPDIR)/$(am__dirstamp) -grub-core/kern/emu/grub_mkfont-argp_common.$(OBJEXT): \ - grub-core/kern/emu/$(am__dirstamp) \ - grub-core/kern/emu/$(DEPDIR)/$(am__dirstamp) -grub-core/osdep/grub_mkfont-init.$(OBJEXT): \ - grub-core/osdep/$(am__dirstamp) \ - grub-core/osdep/$(DEPDIR)/$(am__dirstamp) - -grub-mkfont$(EXEEXT): $(grub_mkfont_OBJECTS) $(grub_mkfont_DEPENDENCIES) $(EXTRA_grub_mkfont_DEPENDENCIES) - @rm -f grub-mkfont$(EXEEXT) - $(AM_V_CCLD)$(grub_mkfont_LINK) $(grub_mkfont_OBJECTS) $(grub_mkfont_LDADD) $(LIBS) -util/grub_mkimage-grub-mkimage.$(OBJEXT): util/$(am__dirstamp) \ - util/$(DEPDIR)/$(am__dirstamp) -util/grub_mkimage-mkimage.$(OBJEXT): util/$(am__dirstamp) \ - util/$(DEPDIR)/$(am__dirstamp) -util/grub_mkimage-grub-mkimage32.$(OBJEXT): util/$(am__dirstamp) \ - util/$(DEPDIR)/$(am__dirstamp) -util/grub_mkimage-grub-mkimage64.$(OBJEXT): util/$(am__dirstamp) \ - util/$(DEPDIR)/$(am__dirstamp) -util/grub_mkimage-resolve.$(OBJEXT): util/$(am__dirstamp) \ - util/$(DEPDIR)/$(am__dirstamp) -grub-core/kern/emu/grub_mkimage-argp_common.$(OBJEXT): \ - grub-core/kern/emu/$(am__dirstamp) \ - grub-core/kern/emu/$(DEPDIR)/$(am__dirstamp) -grub-core/osdep/grub_mkimage-init.$(OBJEXT): \ - grub-core/osdep/$(am__dirstamp) \ - grub-core/osdep/$(DEPDIR)/$(am__dirstamp) -grub-core/osdep/grub_mkimage-config.$(OBJEXT): \ - grub-core/osdep/$(am__dirstamp) \ - grub-core/osdep/$(DEPDIR)/$(am__dirstamp) -util/grub_mkimage-config.$(OBJEXT): util/$(am__dirstamp) \ - util/$(DEPDIR)/$(am__dirstamp) - -grub-mkimage$(EXEEXT): $(grub_mkimage_OBJECTS) $(grub_mkimage_DEPENDENCIES) $(EXTRA_grub_mkimage_DEPENDENCIES) - @rm -f grub-mkimage$(EXEEXT) - $(AM_V_CCLD)$(grub_mkimage_LINK) $(grub_mkimage_OBJECTS) $(grub_mkimage_LDADD) $(LIBS) -util/grub_mklayout-grub-mklayout.$(OBJEXT): util/$(am__dirstamp) \ - util/$(DEPDIR)/$(am__dirstamp) -grub-core/kern/emu/grub_mklayout-argp_common.$(OBJEXT): \ - grub-core/kern/emu/$(am__dirstamp) \ - grub-core/kern/emu/$(DEPDIR)/$(am__dirstamp) -grub-core/osdep/grub_mklayout-init.$(OBJEXT): \ - grub-core/osdep/$(am__dirstamp) \ - grub-core/osdep/$(DEPDIR)/$(am__dirstamp) - -grub-mklayout$(EXEEXT): $(grub_mklayout_OBJECTS) $(grub_mklayout_DEPENDENCIES) $(EXTRA_grub_mklayout_DEPENDENCIES) - @rm -f grub-mklayout$(EXEEXT) - $(AM_V_CCLD)$(grub_mklayout_LINK) $(grub_mklayout_OBJECTS) $(grub_mklayout_LDADD) $(LIBS) -util/grub_mknetdir-grub-mknetdir.$(OBJEXT): util/$(am__dirstamp) \ - util/$(DEPDIR)/$(am__dirstamp) -util/grub_mknetdir-mkimage.$(OBJEXT): util/$(am__dirstamp) \ - util/$(DEPDIR)/$(am__dirstamp) -util/grub_mknetdir-grub-mkimage32.$(OBJEXT): util/$(am__dirstamp) \ - util/$(DEPDIR)/$(am__dirstamp) -util/grub_mknetdir-grub-mkimage64.$(OBJEXT): util/$(am__dirstamp) \ - util/$(DEPDIR)/$(am__dirstamp) -util/grub_mknetdir-grub-install-common.$(OBJEXT): \ - util/$(am__dirstamp) util/$(DEPDIR)/$(am__dirstamp) -util/grub_mknetdir-setup_bios.$(OBJEXT): util/$(am__dirstamp) \ - util/$(DEPDIR)/$(am__dirstamp) -util/grub_mknetdir-setup_sparc.$(OBJEXT): util/$(am__dirstamp) \ - util/$(DEPDIR)/$(am__dirstamp) -grub-core/lib/grub_mknetdir-reed_solomon.$(OBJEXT): \ - grub-core/lib/$(am__dirstamp) \ - grub-core/lib/$(DEPDIR)/$(am__dirstamp) -grub-core/osdep/grub_mknetdir-random.$(OBJEXT): \ - grub-core/osdep/$(am__dirstamp) \ - grub-core/osdep/$(DEPDIR)/$(am__dirstamp) -grub-core/osdep/grub_mknetdir-ofpath.$(OBJEXT): \ - grub-core/osdep/$(am__dirstamp) \ - grub-core/osdep/$(DEPDIR)/$(am__dirstamp) -grub-core/osdep/grub_mknetdir-platform.$(OBJEXT): \ - grub-core/osdep/$(am__dirstamp) \ - grub-core/osdep/$(DEPDIR)/$(am__dirstamp) -grub-core/osdep/grub_mknetdir-platform_unix.$(OBJEXT): \ - grub-core/osdep/$(am__dirstamp) \ - grub-core/osdep/$(DEPDIR)/$(am__dirstamp) -grub-core/osdep/grub_mknetdir-compress.$(OBJEXT): \ - grub-core/osdep/$(am__dirstamp) \ - grub-core/osdep/$(DEPDIR)/$(am__dirstamp) -util/grub_mknetdir-editenv.$(OBJEXT): util/$(am__dirstamp) \ - util/$(DEPDIR)/$(am__dirstamp) -grub-core/osdep/grub_mknetdir-blocklist.$(OBJEXT): \ - grub-core/osdep/$(am__dirstamp) \ - grub-core/osdep/$(DEPDIR)/$(am__dirstamp) -grub-core/osdep/grub_mknetdir-config.$(OBJEXT): \ - grub-core/osdep/$(am__dirstamp) \ - grub-core/osdep/$(DEPDIR)/$(am__dirstamp) -util/grub_mknetdir-config.$(OBJEXT): util/$(am__dirstamp) \ - util/$(DEPDIR)/$(am__dirstamp) -util/grub_mknetdir-resolve.$(OBJEXT): util/$(am__dirstamp) \ - util/$(DEPDIR)/$(am__dirstamp) -grub-core/kern/emu/grub_mknetdir-argp_common.$(OBJEXT): \ - grub-core/kern/emu/$(am__dirstamp) \ - grub-core/kern/emu/$(DEPDIR)/$(am__dirstamp) -grub-core/osdep/grub_mknetdir-init.$(OBJEXT): \ - grub-core/osdep/$(am__dirstamp) \ - grub-core/osdep/$(DEPDIR)/$(am__dirstamp) - -grub-mknetdir$(EXEEXT): $(grub_mknetdir_OBJECTS) $(grub_mknetdir_DEPENDENCIES) $(EXTRA_grub_mknetdir_DEPENDENCIES) - @rm -f grub-mknetdir$(EXEEXT) - $(AM_V_CCLD)$(grub_mknetdir_LINK) $(grub_mknetdir_OBJECTS) $(grub_mknetdir_LDADD) $(LIBS) -util/grub_mkpasswd_pbkdf2-grub-mkpasswd-pbkdf2.$(OBJEXT): \ - util/$(am__dirstamp) util/$(DEPDIR)/$(am__dirstamp) -grub-core/kern/emu/grub_mkpasswd_pbkdf2-argp_common.$(OBJEXT): \ - grub-core/kern/emu/$(am__dirstamp) \ - grub-core/kern/emu/$(DEPDIR)/$(am__dirstamp) -grub-core/osdep/grub_mkpasswd_pbkdf2-random.$(OBJEXT): \ - grub-core/osdep/$(am__dirstamp) \ - grub-core/osdep/$(DEPDIR)/$(am__dirstamp) -grub-core/osdep/grub_mkpasswd_pbkdf2-init.$(OBJEXT): \ - grub-core/osdep/$(am__dirstamp) \ - grub-core/osdep/$(DEPDIR)/$(am__dirstamp) - -grub-mkpasswd-pbkdf2$(EXEEXT): $(grub_mkpasswd_pbkdf2_OBJECTS) $(grub_mkpasswd_pbkdf2_DEPENDENCIES) $(EXTRA_grub_mkpasswd_pbkdf2_DEPENDENCIES) - @rm -f grub-mkpasswd-pbkdf2$(EXEEXT) - $(AM_V_CCLD)$(grub_mkpasswd_pbkdf2_LINK) $(grub_mkpasswd_pbkdf2_OBJECTS) $(grub_mkpasswd_pbkdf2_LDADD) $(LIBS) -util/grub_mkrelpath-grub-mkrelpath.$(OBJEXT): util/$(am__dirstamp) \ - util/$(DEPDIR)/$(am__dirstamp) -grub-core/kern/emu/grub_mkrelpath-argp_common.$(OBJEXT): \ - grub-core/kern/emu/$(am__dirstamp) \ - grub-core/kern/emu/$(DEPDIR)/$(am__dirstamp) -grub-core/osdep/grub_mkrelpath-init.$(OBJEXT): \ - grub-core/osdep/$(am__dirstamp) \ - grub-core/osdep/$(DEPDIR)/$(am__dirstamp) - -grub-mkrelpath$(EXEEXT): $(grub_mkrelpath_OBJECTS) $(grub_mkrelpath_DEPENDENCIES) $(EXTRA_grub_mkrelpath_DEPENDENCIES) - @rm -f grub-mkrelpath$(EXEEXT) - $(AM_V_CCLD)$(grub_mkrelpath_LINK) $(grub_mkrelpath_OBJECTS) $(grub_mkrelpath_LDADD) $(LIBS) -util/grub_mkrescue-grub-mkrescue.$(OBJEXT): util/$(am__dirstamp) \ - util/$(DEPDIR)/$(am__dirstamp) -util/grub_mkrescue-render-label.$(OBJEXT): util/$(am__dirstamp) \ - util/$(DEPDIR)/$(am__dirstamp) -util/grub_mkrescue-glue-efi.$(OBJEXT): util/$(am__dirstamp) \ - util/$(DEPDIR)/$(am__dirstamp) -util/grub_mkrescue-mkimage.$(OBJEXT): util/$(am__dirstamp) \ - util/$(DEPDIR)/$(am__dirstamp) -util/grub_mkrescue-grub-mkimage32.$(OBJEXT): util/$(am__dirstamp) \ - util/$(DEPDIR)/$(am__dirstamp) -util/grub_mkrescue-grub-mkimage64.$(OBJEXT): util/$(am__dirstamp) \ - util/$(DEPDIR)/$(am__dirstamp) -util/grub_mkrescue-grub-install-common.$(OBJEXT): \ - util/$(am__dirstamp) util/$(DEPDIR)/$(am__dirstamp) -util/grub_mkrescue-setup_bios.$(OBJEXT): util/$(am__dirstamp) \ - util/$(DEPDIR)/$(am__dirstamp) -util/grub_mkrescue-setup_sparc.$(OBJEXT): util/$(am__dirstamp) \ - util/$(DEPDIR)/$(am__dirstamp) -grub-core/lib/grub_mkrescue-reed_solomon.$(OBJEXT): \ - grub-core/lib/$(am__dirstamp) \ - grub-core/lib/$(DEPDIR)/$(am__dirstamp) -grub-core/osdep/grub_mkrescue-random.$(OBJEXT): \ - grub-core/osdep/$(am__dirstamp) \ - grub-core/osdep/$(DEPDIR)/$(am__dirstamp) -grub-core/osdep/grub_mkrescue-ofpath.$(OBJEXT): \ - grub-core/osdep/$(am__dirstamp) \ - grub-core/osdep/$(DEPDIR)/$(am__dirstamp) -grub-core/osdep/grub_mkrescue-platform.$(OBJEXT): \ - grub-core/osdep/$(am__dirstamp) \ - grub-core/osdep/$(DEPDIR)/$(am__dirstamp) -grub-core/osdep/grub_mkrescue-platform_unix.$(OBJEXT): \ - grub-core/osdep/$(am__dirstamp) \ - grub-core/osdep/$(DEPDIR)/$(am__dirstamp) -grub-core/osdep/grub_mkrescue-compress.$(OBJEXT): \ - grub-core/osdep/$(am__dirstamp) \ - grub-core/osdep/$(DEPDIR)/$(am__dirstamp) -util/grub_mkrescue-editenv.$(OBJEXT): util/$(am__dirstamp) \ - util/$(DEPDIR)/$(am__dirstamp) -grub-core/osdep/grub_mkrescue-blocklist.$(OBJEXT): \ - grub-core/osdep/$(am__dirstamp) \ - grub-core/osdep/$(DEPDIR)/$(am__dirstamp) -grub-core/osdep/grub_mkrescue-config.$(OBJEXT): \ - grub-core/osdep/$(am__dirstamp) \ - grub-core/osdep/$(DEPDIR)/$(am__dirstamp) -util/grub_mkrescue-config.$(OBJEXT): util/$(am__dirstamp) \ - util/$(DEPDIR)/$(am__dirstamp) -grub-core/kern/emu/grub_mkrescue-hostfs.$(OBJEXT): \ - grub-core/kern/emu/$(am__dirstamp) \ - grub-core/kern/emu/$(DEPDIR)/$(am__dirstamp) -grub-core/disk/grub_mkrescue-host.$(OBJEXT): \ - grub-core/disk/$(am__dirstamp) \ - grub-core/disk/$(DEPDIR)/$(am__dirstamp) -util/grub_mkrescue-resolve.$(OBJEXT): util/$(am__dirstamp) \ - util/$(DEPDIR)/$(am__dirstamp) -grub-core/kern/emu/grub_mkrescue-argp_common.$(OBJEXT): \ - grub-core/kern/emu/$(am__dirstamp) \ - grub-core/kern/emu/$(DEPDIR)/$(am__dirstamp) -grub-core/osdep/grub_mkrescue-init.$(OBJEXT): \ - grub-core/osdep/$(am__dirstamp) \ - grub-core/osdep/$(DEPDIR)/$(am__dirstamp) - -grub-mkrescue$(EXEEXT): $(grub_mkrescue_OBJECTS) $(grub_mkrescue_DEPENDENCIES) $(EXTRA_grub_mkrescue_DEPENDENCIES) - @rm -f grub-mkrescue$(EXEEXT) - $(AM_V_CCLD)$(grub_mkrescue_LINK) $(grub_mkrescue_OBJECTS) $(grub_mkrescue_LDADD) $(LIBS) -util/grub_mkstandalone-grub-mkstandalone.$(OBJEXT): \ - util/$(am__dirstamp) util/$(DEPDIR)/$(am__dirstamp) -util/grub_mkstandalone-render-label.$(OBJEXT): util/$(am__dirstamp) \ - util/$(DEPDIR)/$(am__dirstamp) -util/grub_mkstandalone-glue-efi.$(OBJEXT): util/$(am__dirstamp) \ - util/$(DEPDIR)/$(am__dirstamp) -util/grub_mkstandalone-mkimage.$(OBJEXT): util/$(am__dirstamp) \ - util/$(DEPDIR)/$(am__dirstamp) -util/grub_mkstandalone-grub-mkimage32.$(OBJEXT): util/$(am__dirstamp) \ - util/$(DEPDIR)/$(am__dirstamp) -util/grub_mkstandalone-grub-mkimage64.$(OBJEXT): util/$(am__dirstamp) \ - util/$(DEPDIR)/$(am__dirstamp) -util/grub_mkstandalone-grub-install-common.$(OBJEXT): \ - util/$(am__dirstamp) util/$(DEPDIR)/$(am__dirstamp) -util/grub_mkstandalone-setup_bios.$(OBJEXT): util/$(am__dirstamp) \ - util/$(DEPDIR)/$(am__dirstamp) -util/grub_mkstandalone-setup_sparc.$(OBJEXT): util/$(am__dirstamp) \ - util/$(DEPDIR)/$(am__dirstamp) -grub-core/lib/grub_mkstandalone-reed_solomon.$(OBJEXT): \ - grub-core/lib/$(am__dirstamp) \ - grub-core/lib/$(DEPDIR)/$(am__dirstamp) -grub-core/osdep/grub_mkstandalone-random.$(OBJEXT): \ - grub-core/osdep/$(am__dirstamp) \ - grub-core/osdep/$(DEPDIR)/$(am__dirstamp) -grub-core/osdep/grub_mkstandalone-ofpath.$(OBJEXT): \ - grub-core/osdep/$(am__dirstamp) \ - grub-core/osdep/$(DEPDIR)/$(am__dirstamp) -grub-core/osdep/grub_mkstandalone-platform.$(OBJEXT): \ - grub-core/osdep/$(am__dirstamp) \ - grub-core/osdep/$(DEPDIR)/$(am__dirstamp) -grub-core/osdep/grub_mkstandalone-platform_unix.$(OBJEXT): \ - grub-core/osdep/$(am__dirstamp) \ - grub-core/osdep/$(DEPDIR)/$(am__dirstamp) -grub-core/osdep/grub_mkstandalone-compress.$(OBJEXT): \ - grub-core/osdep/$(am__dirstamp) \ - grub-core/osdep/$(DEPDIR)/$(am__dirstamp) -util/grub_mkstandalone-editenv.$(OBJEXT): util/$(am__dirstamp) \ - util/$(DEPDIR)/$(am__dirstamp) -grub-core/osdep/grub_mkstandalone-blocklist.$(OBJEXT): \ - grub-core/osdep/$(am__dirstamp) \ - grub-core/osdep/$(DEPDIR)/$(am__dirstamp) -grub-core/osdep/grub_mkstandalone-config.$(OBJEXT): \ - grub-core/osdep/$(am__dirstamp) \ - grub-core/osdep/$(DEPDIR)/$(am__dirstamp) -util/grub_mkstandalone-config.$(OBJEXT): util/$(am__dirstamp) \ - util/$(DEPDIR)/$(am__dirstamp) -grub-core/kern/emu/grub_mkstandalone-hostfs.$(OBJEXT): \ - grub-core/kern/emu/$(am__dirstamp) \ - grub-core/kern/emu/$(DEPDIR)/$(am__dirstamp) -grub-core/disk/grub_mkstandalone-host.$(OBJEXT): \ - grub-core/disk/$(am__dirstamp) \ - grub-core/disk/$(DEPDIR)/$(am__dirstamp) -util/grub_mkstandalone-resolve.$(OBJEXT): util/$(am__dirstamp) \ - util/$(DEPDIR)/$(am__dirstamp) -grub-core/kern/emu/grub_mkstandalone-argp_common.$(OBJEXT): \ - grub-core/kern/emu/$(am__dirstamp) \ - grub-core/kern/emu/$(DEPDIR)/$(am__dirstamp) -grub-core/osdep/grub_mkstandalone-init.$(OBJEXT): \ - grub-core/osdep/$(am__dirstamp) \ - grub-core/osdep/$(DEPDIR)/$(am__dirstamp) - -grub-mkstandalone$(EXEEXT): $(grub_mkstandalone_OBJECTS) $(grub_mkstandalone_DEPENDENCIES) $(EXTRA_grub_mkstandalone_DEPENDENCIES) - @rm -f grub-mkstandalone$(EXEEXT) - $(AM_V_CCLD)$(grub_mkstandalone_LINK) $(grub_mkstandalone_OBJECTS) $(grub_mkstandalone_LDADD) $(LIBS) -util/grub_mount-grub-mount.$(OBJEXT): util/$(am__dirstamp) \ - util/$(DEPDIR)/$(am__dirstamp) -grub-core/kern/emu/grub_mount-hostfs.$(OBJEXT): \ - grub-core/kern/emu/$(am__dirstamp) \ - grub-core/kern/emu/$(DEPDIR)/$(am__dirstamp) -grub-core/disk/grub_mount-host.$(OBJEXT): \ - grub-core/disk/$(am__dirstamp) \ - grub-core/disk/$(DEPDIR)/$(am__dirstamp) -grub-core/osdep/grub_mount-init.$(OBJEXT): \ - grub-core/osdep/$(am__dirstamp) \ - grub-core/osdep/$(DEPDIR)/$(am__dirstamp) - -grub-mount$(EXEEXT): $(grub_mount_OBJECTS) $(grub_mount_DEPENDENCIES) $(EXTRA_grub_mount_DEPENDENCIES) - @rm -f grub-mount$(EXEEXT) - $(AM_V_CCLD)$(grub_mount_LINK) $(grub_mount_OBJECTS) $(grub_mount_LDADD) $(LIBS) -util/ieee1275/$(am__dirstamp): - @$(MKDIR_P) util/ieee1275 - @: > util/ieee1275/$(am__dirstamp) -util/ieee1275/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) util/ieee1275/$(DEPDIR) - @: > util/ieee1275/$(DEPDIR)/$(am__dirstamp) -util/ieee1275/grub_ofpathname-grub-ofpathname.$(OBJEXT): \ - util/ieee1275/$(am__dirstamp) \ - util/ieee1275/$(DEPDIR)/$(am__dirstamp) -grub-core/osdep/grub_ofpathname-ofpath.$(OBJEXT): \ - grub-core/osdep/$(am__dirstamp) \ - grub-core/osdep/$(DEPDIR)/$(am__dirstamp) -grub-core/osdep/grub_ofpathname-init.$(OBJEXT): \ - grub-core/osdep/$(am__dirstamp) \ - grub-core/osdep/$(DEPDIR)/$(am__dirstamp) - -grub-ofpathname$(EXEEXT): $(grub_ofpathname_OBJECTS) $(grub_ofpathname_DEPENDENCIES) $(EXTRA_grub_ofpathname_DEPENDENCIES) - @rm -f grub-ofpathname$(EXEEXT) - $(AM_V_CCLD)$(grub_ofpathname_LINK) $(grub_ofpathname_OBJECTS) $(grub_ofpathname_LDADD) $(LIBS) -util/grub_probe-grub-probe.$(OBJEXT): util/$(am__dirstamp) \ - util/$(DEPDIR)/$(am__dirstamp) -util/grub_probe-probe.$(OBJEXT): util/$(am__dirstamp) \ - util/$(DEPDIR)/$(am__dirstamp) -grub-core/osdep/grub_probe-ofpath.$(OBJEXT): \ - grub-core/osdep/$(am__dirstamp) \ - grub-core/osdep/$(DEPDIR)/$(am__dirstamp) -grub-core/kern/emu/grub_probe-argp_common.$(OBJEXT): \ - grub-core/kern/emu/$(am__dirstamp) \ - grub-core/kern/emu/$(DEPDIR)/$(am__dirstamp) -grub-core/osdep/grub_probe-init.$(OBJEXT): \ - grub-core/osdep/$(am__dirstamp) \ - grub-core/osdep/$(DEPDIR)/$(am__dirstamp) - -grub-probe$(EXEEXT): $(grub_probe_OBJECTS) $(grub_probe_DEPENDENCIES) $(EXTRA_grub_probe_DEPENDENCIES) - @rm -f grub-probe$(EXEEXT) - $(AM_V_CCLD)$(grub_probe_LINK) $(grub_probe_OBJECTS) $(grub_probe_LDADD) $(LIBS) -util/grub_render_label-grub-render-label.$(OBJEXT): \ - util/$(am__dirstamp) util/$(DEPDIR)/$(am__dirstamp) -util/grub_render_label-render-label.$(OBJEXT): util/$(am__dirstamp) \ - util/$(DEPDIR)/$(am__dirstamp) -grub-core/kern/emu/grub_render_label-argp_common.$(OBJEXT): \ - grub-core/kern/emu/$(am__dirstamp) \ - grub-core/kern/emu/$(DEPDIR)/$(am__dirstamp) -grub-core/kern/emu/grub_render_label-hostfs.$(OBJEXT): \ - grub-core/kern/emu/$(am__dirstamp) \ - grub-core/kern/emu/$(DEPDIR)/$(am__dirstamp) -grub-core/disk/grub_render_label-host.$(OBJEXT): \ - grub-core/disk/$(am__dirstamp) \ - grub-core/disk/$(DEPDIR)/$(am__dirstamp) -grub-core/osdep/grub_render_label-init.$(OBJEXT): \ - grub-core/osdep/$(am__dirstamp) \ - grub-core/osdep/$(DEPDIR)/$(am__dirstamp) - -grub-render-label$(EXEEXT): $(grub_render_label_OBJECTS) $(grub_render_label_DEPENDENCIES) $(EXTRA_grub_render_label_DEPENDENCIES) - @rm -f grub-render-label$(EXEEXT) - $(AM_V_CCLD)$(grub_render_label_LINK) $(grub_render_label_OBJECTS) $(grub_render_label_LDADD) $(LIBS) -util/grub_script_check-grub-script-check.$(OBJEXT): \ - util/$(am__dirstamp) util/$(DEPDIR)/$(am__dirstamp) -grub-core/kern/emu/grub_script_check-argp_common.$(OBJEXT): \ - grub-core/kern/emu/$(am__dirstamp) \ - grub-core/kern/emu/$(DEPDIR)/$(am__dirstamp) -grub-core/osdep/grub_script_check-init.$(OBJEXT): \ - grub-core/osdep/$(am__dirstamp) \ - grub-core/osdep/$(DEPDIR)/$(am__dirstamp) - -grub-script-check$(EXEEXT): $(grub_script_check_OBJECTS) $(grub_script_check_DEPENDENCIES) $(EXTRA_grub_script_check_DEPENDENCIES) - @rm -f grub-script-check$(EXEEXT) - $(AM_V_CCLD)$(grub_script_check_LINK) $(grub_script_check_OBJECTS) $(grub_script_check_LDADD) $(LIBS) -util/grub_sparc64_setup-grub-setup.$(OBJEXT): util/$(am__dirstamp) \ - util/$(DEPDIR)/$(am__dirstamp) -util/grub_sparc64_setup-setup_sparc.$(OBJEXT): util/$(am__dirstamp) \ - util/$(DEPDIR)/$(am__dirstamp) -grub-core/kern/emu/grub_sparc64_setup-argp_common.$(OBJEXT): \ - grub-core/kern/emu/$(am__dirstamp) \ - grub-core/kern/emu/$(DEPDIR)/$(am__dirstamp) -grub-core/lib/grub_sparc64_setup-reed_solomon.$(OBJEXT): \ - grub-core/lib/$(am__dirstamp) \ - grub-core/lib/$(DEPDIR)/$(am__dirstamp) -grub-core/osdep/grub_sparc64_setup-ofpath.$(OBJEXT): \ - grub-core/osdep/$(am__dirstamp) \ - grub-core/osdep/$(DEPDIR)/$(am__dirstamp) -grub-core/osdep/grub_sparc64_setup-blocklist.$(OBJEXT): \ - grub-core/osdep/$(am__dirstamp) \ - grub-core/osdep/$(DEPDIR)/$(am__dirstamp) -grub-core/osdep/grub_sparc64_setup-init.$(OBJEXT): \ - grub-core/osdep/$(am__dirstamp) \ - grub-core/osdep/$(DEPDIR)/$(am__dirstamp) - -grub-sparc64-setup$(EXEEXT): $(grub_sparc64_setup_OBJECTS) $(grub_sparc64_setup_DEPENDENCIES) $(EXTRA_grub_sparc64_setup_DEPENDENCIES) - @rm -f grub-sparc64-setup$(EXEEXT) - $(AM_V_CCLD)$(grub_sparc64_setup_LINK) $(grub_sparc64_setup_OBJECTS) $(grub_sparc64_setup_LDADD) $(LIBS) -util/grub_syslinux2cfg-grub-syslinux2cfg.$(OBJEXT): \ - util/$(am__dirstamp) util/$(DEPDIR)/$(am__dirstamp) -grub-core/lib/grub_syslinux2cfg-syslinux_parse.$(OBJEXT): \ - grub-core/lib/$(am__dirstamp) \ - grub-core/lib/$(DEPDIR)/$(am__dirstamp) -grub-core/lib/grub_syslinux2cfg-getline.$(OBJEXT): \ - grub-core/lib/$(am__dirstamp) \ - grub-core/lib/$(DEPDIR)/$(am__dirstamp) -grub-core/osdep/grub_syslinux2cfg-init.$(OBJEXT): \ - grub-core/osdep/$(am__dirstamp) \ - grub-core/osdep/$(DEPDIR)/$(am__dirstamp) -grub-core/kern/emu/grub_syslinux2cfg-hostfs.$(OBJEXT): \ - grub-core/kern/emu/$(am__dirstamp) \ - grub-core/kern/emu/$(DEPDIR)/$(am__dirstamp) -grub-core/disk/grub_syslinux2cfg-host.$(OBJEXT): \ - grub-core/disk/$(am__dirstamp) \ - grub-core/disk/$(DEPDIR)/$(am__dirstamp) -grub-core/kern/emu/grub_syslinux2cfg-argp_common.$(OBJEXT): \ - grub-core/kern/emu/$(am__dirstamp) \ - grub-core/kern/emu/$(DEPDIR)/$(am__dirstamp) - -grub-syslinux2cfg$(EXEEXT): $(grub_syslinux2cfg_OBJECTS) $(grub_syslinux2cfg_DEPENDENCIES) $(EXTRA_grub_syslinux2cfg_DEPENDENCIES) - @rm -f grub-syslinux2cfg$(EXEEXT) - $(AM_V_CCLD)$(grub_syslinux2cfg_LINK) $(grub_syslinux2cfg_OBJECTS) $(grub_syslinux2cfg_LDADD) $(LIBS) -tests/printf_test-printf_unit_test.$(OBJEXT): tests/$(am__dirstamp) \ - tests/$(DEPDIR)/$(am__dirstamp) -tests/lib/printf_test-unit_test.$(OBJEXT): tests/lib/$(am__dirstamp) \ - tests/lib/$(DEPDIR)/$(am__dirstamp) -grub-core/kern/printf_test-list.$(OBJEXT): \ - grub-core/kern/$(am__dirstamp) \ - grub-core/kern/$(DEPDIR)/$(am__dirstamp) -grub-core/kern/printf_test-misc.$(OBJEXT): \ - grub-core/kern/$(am__dirstamp) \ - grub-core/kern/$(DEPDIR)/$(am__dirstamp) -grub-core/tests/lib/printf_test-test.$(OBJEXT): \ - grub-core/tests/lib/$(am__dirstamp) \ - grub-core/tests/lib/$(DEPDIR)/$(am__dirstamp) - -printf_test$(EXEEXT): $(printf_test_OBJECTS) $(printf_test_DEPENDENCIES) $(EXTRA_printf_test_DEPENDENCIES) - @rm -f printf_test$(EXEEXT) - $(AM_V_CCLD)$(printf_test_LINK) $(printf_test_OBJECTS) $(printf_test_LDADD) $(LIBS) -tests/priority_queue_unit_test-priority_queue_unit_test.$(OBJEXT): \ - tests/$(am__dirstamp) tests/$(DEPDIR)/$(am__dirstamp) -tests/lib/priority_queue_unit_test-unit_test.$(OBJEXT): \ - tests/lib/$(am__dirstamp) tests/lib/$(DEPDIR)/$(am__dirstamp) -grub-core/kern/priority_queue_unit_test-list.$(OBJEXT): \ - grub-core/kern/$(am__dirstamp) \ - grub-core/kern/$(DEPDIR)/$(am__dirstamp) -grub-core/kern/priority_queue_unit_test-misc.$(OBJEXT): \ - grub-core/kern/$(am__dirstamp) \ - grub-core/kern/$(DEPDIR)/$(am__dirstamp) -grub-core/tests/lib/priority_queue_unit_test-test.$(OBJEXT): \ - grub-core/tests/lib/$(am__dirstamp) \ - grub-core/tests/lib/$(DEPDIR)/$(am__dirstamp) -grub-core/lib/priority_queue_unit_test-priority_queue.$(OBJEXT): \ - grub-core/lib/$(am__dirstamp) \ - grub-core/lib/$(DEPDIR)/$(am__dirstamp) - -priority_queue_unit_test$(EXEEXT): $(priority_queue_unit_test_OBJECTS) $(priority_queue_unit_test_DEPENDENCIES) $(EXTRA_priority_queue_unit_test_DEPENDENCIES) - @rm -f priority_queue_unit_test$(EXEEXT) - $(AM_V_CXXLD)$(priority_queue_unit_test_LINK) $(priority_queue_unit_test_OBJECTS) $(priority_queue_unit_test_LDADD) $(LIBS) -install-binSCRIPTS: $(bin_SCRIPTS) - @$(NORMAL_INSTALL) - @list='$(bin_SCRIPTS)'; test -n "$(bindir)" || list=; \ - if test -n "$$list"; then \ - echo " $(MKDIR_P) '$(DESTDIR)$(bindir)'"; \ - $(MKDIR_P) "$(DESTDIR)$(bindir)" || exit 1; \ - fi; \ - for p in $$list; do \ - if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ - if test -f "$$d$$p"; then echo "$$d$$p"; echo "$$p"; else :; fi; \ - done | \ - sed -e 'p;s,.*/,,;n' \ - -e 'h;s|.*|.|' \ - -e 'p;x;s,.*/,,;$(transform)' | sed 'N;N;N;s,\n, ,g' | \ - $(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1; } \ - { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \ - if ($$2 == $$4) { files[d] = files[d] " " $$1; \ - if (++n[d] == $(am__install_max)) { \ - print "f", d, files[d]; n[d] = 0; files[d] = "" } } \ - else { print "f", d "/" $$4, $$1 } } \ - END { for (d in files) print "f", d, files[d] }' | \ - while read type dir files; do \ - if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \ - test -z "$$files" || { \ - echo " $(INSTALL_SCRIPT) $$files '$(DESTDIR)$(bindir)$$dir'"; \ - $(INSTALL_SCRIPT) $$files "$(DESTDIR)$(bindir)$$dir" || exit $$?; \ - } \ - ; done - -uninstall-binSCRIPTS: - @$(NORMAL_UNINSTALL) - @list='$(bin_SCRIPTS)'; test -n "$(bindir)" || exit 0; \ - files=`for p in $$list; do echo "$$p"; done | \ - sed -e 's,.*/,,;$(transform)'`; \ - dir='$(DESTDIR)$(bindir)'; $(am__uninstall_files_from_dir) -install-grubconfSCRIPTS: $(grubconf_SCRIPTS) - @$(NORMAL_INSTALL) - @list='$(grubconf_SCRIPTS)'; test -n "$(grubconfdir)" || list=; \ - if test -n "$$list"; then \ - echo " $(MKDIR_P) '$(DESTDIR)$(grubconfdir)'"; \ - $(MKDIR_P) "$(DESTDIR)$(grubconfdir)" || exit 1; \ - fi; \ - for p in $$list; do \ - if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ - if test -f "$$d$$p"; then echo "$$d$$p"; echo "$$p"; else :; fi; \ - done | \ - sed -e 'p;s,.*/,,;n' \ - -e 'h;s|.*|.|' \ - -e 'p;x;s,.*/,,;$(transform)' | sed 'N;N;N;s,\n, ,g' | \ - $(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1; } \ - { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \ - if ($$2 == $$4) { files[d] = files[d] " " $$1; \ - if (++n[d] == $(am__install_max)) { \ - print "f", d, files[d]; n[d] = 0; files[d] = "" } } \ - else { print "f", d "/" $$4, $$1 } } \ - END { for (d in files) print "f", d, files[d] }' | \ - while read type dir files; do \ - if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \ - test -z "$$files" || { \ - echo " $(INSTALL_SCRIPT) $$files '$(DESTDIR)$(grubconfdir)$$dir'"; \ - $(INSTALL_SCRIPT) $$files "$(DESTDIR)$(grubconfdir)$$dir" || exit $$?; \ - } \ - ; done - -uninstall-grubconfSCRIPTS: - @$(NORMAL_UNINSTALL) - @list='$(grubconf_SCRIPTS)'; test -n "$(grubconfdir)" || exit 0; \ - files=`for p in $$list; do echo "$$p"; done | \ - sed -e 's,.*/,,;$(transform)'`; \ - dir='$(DESTDIR)$(grubconfdir)'; $(am__uninstall_files_from_dir) -install-platformSCRIPTS: $(platform_SCRIPTS) - @$(NORMAL_INSTALL) - @list='$(platform_SCRIPTS)'; test -n "$(platformdir)" || list=; \ - if test -n "$$list"; then \ - echo " $(MKDIR_P) '$(DESTDIR)$(platformdir)'"; \ - $(MKDIR_P) "$(DESTDIR)$(platformdir)" || exit 1; \ - fi; \ - for p in $$list; do \ - if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ - if test -f "$$d$$p"; then echo "$$d$$p"; echo "$$p"; else :; fi; \ - done | \ - sed -e 'p;s,.*/,,;n' \ - -e 'h;s|.*|.|' \ - -e 'p;x;s,.*/,,;$(transform)' | sed 'N;N;N;s,\n, ,g' | \ - $(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1; } \ - { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \ - if ($$2 == $$4) { files[d] = files[d] " " $$1; \ - if (++n[d] == $(am__install_max)) { \ - print "f", d, files[d]; n[d] = 0; files[d] = "" } } \ - else { print "f", d "/" $$4, $$1 } } \ - END { for (d in files) print "f", d, files[d] }' | \ - while read type dir files; do \ - if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \ - test -z "$$files" || { \ - echo " $(INSTALL_SCRIPT) $$files '$(DESTDIR)$(platformdir)$$dir'"; \ - $(INSTALL_SCRIPT) $$files "$(DESTDIR)$(platformdir)$$dir" || exit $$?; \ - } \ - ; done - -uninstall-platformSCRIPTS: - @$(NORMAL_UNINSTALL) - @list='$(platform_SCRIPTS)'; test -n "$(platformdir)" || exit 0; \ - files=`for p in $$list; do echo "$$p"; done | \ - sed -e 's,.*/,,;$(transform)'`; \ - dir='$(DESTDIR)$(platformdir)'; $(am__uninstall_files_from_dir) -install-sbinSCRIPTS: $(sbin_SCRIPTS) - @$(NORMAL_INSTALL) - @list='$(sbin_SCRIPTS)'; test -n "$(sbindir)" || list=; \ - if test -n "$$list"; then \ - echo " $(MKDIR_P) '$(DESTDIR)$(sbindir)'"; \ - $(MKDIR_P) "$(DESTDIR)$(sbindir)" || exit 1; \ - fi; \ - for p in $$list; do \ - if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ - if test -f "$$d$$p"; then echo "$$d$$p"; echo "$$p"; else :; fi; \ - done | \ - sed -e 'p;s,.*/,,;n' \ - -e 'h;s|.*|.|' \ - -e 'p;x;s,.*/,,;$(transform)' | sed 'N;N;N;s,\n, ,g' | \ - $(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1; } \ - { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \ - if ($$2 == $$4) { files[d] = files[d] " " $$1; \ - if (++n[d] == $(am__install_max)) { \ - print "f", d, files[d]; n[d] = 0; files[d] = "" } } \ - else { print "f", d "/" $$4, $$1 } } \ - END { for (d in files) print "f", d, files[d] }' | \ - while read type dir files; do \ - if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \ - test -z "$$files" || { \ - echo " $(INSTALL_SCRIPT) $$files '$(DESTDIR)$(sbindir)$$dir'"; \ - $(INSTALL_SCRIPT) $$files "$(DESTDIR)$(sbindir)$$dir" || exit $$?; \ - } \ - ; done - -uninstall-sbinSCRIPTS: - @$(NORMAL_UNINSTALL) - @list='$(sbin_SCRIPTS)'; test -n "$(sbindir)" || exit 0; \ - files=`for p in $$list; do echo "$$p"; done | \ - sed -e 's,.*/,,;$(transform)'`; \ - dir='$(DESTDIR)$(sbindir)'; $(am__uninstall_files_from_dir) - -mostlyclean-compile: - -rm -f *.$(OBJEXT) - -rm -f grub-core/*.$(OBJEXT) - -rm -f grub-core/commands/*.$(OBJEXT) - -rm -f grub-core/disk/*.$(OBJEXT) - -rm -f grub-core/font/*.$(OBJEXT) - -rm -f grub-core/fs/*.$(OBJEXT) - -rm -f grub-core/fs/zfs/*.$(OBJEXT) - -rm -f grub-core/gfxmenu/*.$(OBJEXT) - -rm -f grub-core/io/*.$(OBJEXT) - -rm -f grub-core/kern/*.$(OBJEXT) - -rm -f grub-core/kern/arm/*.$(OBJEXT) - -rm -f grub-core/kern/arm64/*.$(OBJEXT) - -rm -f grub-core/kern/emu/*.$(OBJEXT) - -rm -f grub-core/kern/ia64/*.$(OBJEXT) - -rm -f grub-core/lib/*.$(OBJEXT) - -rm -f grub-core/lib/i386/pc/*.$(OBJEXT) - -rm -f grub-core/lib/libgcrypt-grub/cipher/*.$(OBJEXT) - -rm -f grub-core/lib/minilzo/*.$(OBJEXT) - -rm -f grub-core/lib/xzembed/*.$(OBJEXT) - -rm -f grub-core/lib/zstd/*.$(OBJEXT) - -rm -f grub-core/loader/*.$(OBJEXT) - -rm -f grub-core/loader/i386/*.$(OBJEXT) - -rm -f grub-core/normal/*.$(OBJEXT) - -rm -f grub-core/osdep/*.$(OBJEXT) - -rm -f grub-core/osdep/devmapper/*.$(OBJEXT) - -rm -f grub-core/osdep/unix/*.$(OBJEXT) - -rm -f grub-core/partmap/*.$(OBJEXT) - -rm -f grub-core/script/*.$(OBJEXT) - -rm -f grub-core/tests/lib/*.$(OBJEXT) - -rm -f grub-core/video/*.$(OBJEXT) - -rm -f grub-core/video/fb/*.$(OBJEXT) - -rm -f tests/*.$(OBJEXT) - -rm -f tests/lib/*.$(OBJEXT) - -rm -f util/*.$(OBJEXT) - -rm -f util/ieee1275/*.$(OBJEXT) - -distclean-compile: - -rm -f *.tab.c - -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/grub_fstest-grub_fstest_init.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/grub_mount-grub_fstest_init.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libgrubmods_a-grub_script.tab.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libgrubmods_a-grub_script.yy.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libgrubmods_a-libgrub_a_init.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/$(DEPDIR)/libgrubmods_a-unidata.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/commands/$(DEPDIR)/grub_file-file.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/commands/$(DEPDIR)/grub_file-file32.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/commands/$(DEPDIR)/grub_file-file64.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/commands/$(DEPDIR)/libgrubkern_a-extcmd.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/commands/$(DEPDIR)/libgrubmods_a-blocklist.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/commands/$(DEPDIR)/libgrubmods_a-ls.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/commands/$(DEPDIR)/libgrubmods_a-macbless.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/commands/$(DEPDIR)/libgrubmods_a-testload.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/commands/$(DEPDIR)/libgrubmods_a-xnu_uuid.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/disk/$(DEPDIR)/grub_file-host.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/disk/$(DEPDIR)/grub_fstest-host.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/disk/$(DEPDIR)/grub_install-host.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/disk/$(DEPDIR)/grub_mkrescue-host.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/disk/$(DEPDIR)/grub_mkstandalone-host.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/disk/$(DEPDIR)/grub_mount-host.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/disk/$(DEPDIR)/grub_render_label-host.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/disk/$(DEPDIR)/grub_syslinux2cfg-host.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/disk/$(DEPDIR)/libgrubkern_a-AFSplitter.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/disk/$(DEPDIR)/libgrubkern_a-cryptodisk.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/disk/$(DEPDIR)/libgrubkern_a-diskfilter.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/disk/$(DEPDIR)/libgrubkern_a-geli.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/disk/$(DEPDIR)/libgrubkern_a-ldm.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/disk/$(DEPDIR)/libgrubkern_a-luks.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/disk/$(DEPDIR)/libgrubmods_a-dmraid_nvidia.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/disk/$(DEPDIR)/libgrubmods_a-loopback.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/disk/$(DEPDIR)/libgrubmods_a-lvm.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/disk/$(DEPDIR)/libgrubmods_a-mdraid1x_linux.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/disk/$(DEPDIR)/libgrubmods_a-mdraid_linux.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/disk/$(DEPDIR)/libgrubmods_a-mdraid_linux_be.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/disk/$(DEPDIR)/libgrubmods_a-raid5_recover.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/disk/$(DEPDIR)/libgrubmods_a-raid6_recover.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/font/$(DEPDIR)/libgrubmods_a-font.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/fs/$(DEPDIR)/libgrubkern_a-archelp.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/fs/$(DEPDIR)/libgrubkern_a-proc.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/fs/$(DEPDIR)/libgrubmods_a-affs.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/fs/$(DEPDIR)/libgrubmods_a-afs.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/fs/$(DEPDIR)/libgrubmods_a-bfs.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/fs/$(DEPDIR)/libgrubmods_a-btrfs.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/fs/$(DEPDIR)/libgrubmods_a-cbfs.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/fs/$(DEPDIR)/libgrubmods_a-cpio.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/fs/$(DEPDIR)/libgrubmods_a-cpio_be.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/fs/$(DEPDIR)/libgrubmods_a-exfat.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/fs/$(DEPDIR)/libgrubmods_a-ext2.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/fs/$(DEPDIR)/libgrubmods_a-f2fs.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/fs/$(DEPDIR)/libgrubmods_a-fat.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/fs/$(DEPDIR)/libgrubmods_a-fshelp.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/fs/$(DEPDIR)/libgrubmods_a-hfs.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/fs/$(DEPDIR)/libgrubmods_a-hfsplus.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/fs/$(DEPDIR)/libgrubmods_a-hfspluscomp.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/fs/$(DEPDIR)/libgrubmods_a-iso9660.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/fs/$(DEPDIR)/libgrubmods_a-jfs.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/fs/$(DEPDIR)/libgrubmods_a-minix.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/fs/$(DEPDIR)/libgrubmods_a-minix2.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/fs/$(DEPDIR)/libgrubmods_a-minix2_be.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/fs/$(DEPDIR)/libgrubmods_a-minix3.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/fs/$(DEPDIR)/libgrubmods_a-minix3_be.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/fs/$(DEPDIR)/libgrubmods_a-minix_be.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/fs/$(DEPDIR)/libgrubmods_a-newc.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/fs/$(DEPDIR)/libgrubmods_a-nilfs2.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/fs/$(DEPDIR)/libgrubmods_a-ntfs.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/fs/$(DEPDIR)/libgrubmods_a-ntfscomp.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/fs/$(DEPDIR)/libgrubmods_a-odc.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/fs/$(DEPDIR)/libgrubmods_a-reiserfs.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/fs/$(DEPDIR)/libgrubmods_a-romfs.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/fs/$(DEPDIR)/libgrubmods_a-sfs.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/fs/$(DEPDIR)/libgrubmods_a-squash4.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/fs/$(DEPDIR)/libgrubmods_a-tar.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/fs/$(DEPDIR)/libgrubmods_a-udf.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/fs/$(DEPDIR)/libgrubmods_a-ufs.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/fs/$(DEPDIR)/libgrubmods_a-ufs2.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/fs/$(DEPDIR)/libgrubmods_a-ufs_be.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/fs/$(DEPDIR)/libgrubmods_a-xfs.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/fs/zfs/$(DEPDIR)/libgrubmods_a-zfs.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/fs/zfs/$(DEPDIR)/libgrubmods_a-zfs_fletcher.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/fs/zfs/$(DEPDIR)/libgrubmods_a-zfs_lz4.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/fs/zfs/$(DEPDIR)/libgrubmods_a-zfs_lzjb.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/fs/zfs/$(DEPDIR)/libgrubmods_a-zfs_sha256.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/fs/zfs/$(DEPDIR)/libgrubmods_a-zfscrypt.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/fs/zfs/$(DEPDIR)/libgrubmods_a-zfsinfo.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/gfxmenu/$(DEPDIR)/libgrubmods_a-font.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/io/$(DEPDIR)/grub_file-offset.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/io/$(DEPDIR)/libgrubmods_a-bufio.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/io/$(DEPDIR)/libgrubmods_a-gzio.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/io/$(DEPDIR)/libgrubmods_a-lzopio.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/io/$(DEPDIR)/libgrubmods_a-xzio.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/kern/$(DEPDIR)/cmp_test-list.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/kern/$(DEPDIR)/cmp_test-misc.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/kern/$(DEPDIR)/date_test-list.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/kern/$(DEPDIR)/date_test-misc.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/kern/$(DEPDIR)/example_unit_test-list.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/kern/$(DEPDIR)/example_unit_test-misc.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/kern/$(DEPDIR)/grub_file-elf.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/kern/$(DEPDIR)/libgrubkern_a-command.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/kern/$(DEPDIR)/libgrubkern_a-device.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/kern/$(DEPDIR)/libgrubkern_a-disk.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/kern/$(DEPDIR)/libgrubkern_a-env.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/kern/$(DEPDIR)/libgrubkern_a-err.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/kern/$(DEPDIR)/libgrubkern_a-file.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/kern/$(DEPDIR)/libgrubkern_a-fs.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/kern/$(DEPDIR)/libgrubkern_a-list.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/kern/$(DEPDIR)/libgrubkern_a-misc.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/kern/$(DEPDIR)/libgrubkern_a-partition.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/kern/$(DEPDIR)/printf_test-list.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/kern/$(DEPDIR)/printf_test-misc.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/kern/$(DEPDIR)/priority_queue_unit_test-list.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/kern/$(DEPDIR)/priority_queue_unit_test-misc.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/kern/arm/$(DEPDIR)/libgrubmods_a-dl_helper.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/kern/arm64/$(DEPDIR)/libgrubmods_a-dl_helper.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/kern/emu/$(DEPDIR)/grub_bios_setup-argp_common.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/kern/emu/$(DEPDIR)/grub_file-hostfs.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/kern/emu/$(DEPDIR)/grub_fstest-hostfs.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/kern/emu/$(DEPDIR)/grub_glue_efi-argp_common.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/kern/emu/$(DEPDIR)/grub_install-argp_common.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/kern/emu/$(DEPDIR)/grub_install-hostfs.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/kern/emu/$(DEPDIR)/grub_macbless-argp_common.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/kern/emu/$(DEPDIR)/grub_mkfont-argp_common.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/kern/emu/$(DEPDIR)/grub_mkimage-argp_common.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/kern/emu/$(DEPDIR)/grub_mklayout-argp_common.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/kern/emu/$(DEPDIR)/grub_mknetdir-argp_common.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/kern/emu/$(DEPDIR)/grub_mkpasswd_pbkdf2-argp_common.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/kern/emu/$(DEPDIR)/grub_mkrelpath-argp_common.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/kern/emu/$(DEPDIR)/grub_mkrescue-argp_common.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/kern/emu/$(DEPDIR)/grub_mkrescue-hostfs.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/kern/emu/$(DEPDIR)/grub_mkstandalone-argp_common.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/kern/emu/$(DEPDIR)/grub_mkstandalone-hostfs.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/kern/emu/$(DEPDIR)/grub_mount-hostfs.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/kern/emu/$(DEPDIR)/grub_probe-argp_common.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/kern/emu/$(DEPDIR)/grub_render_label-argp_common.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/kern/emu/$(DEPDIR)/grub_render_label-hostfs.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/kern/emu/$(DEPDIR)/grub_script_check-argp_common.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/kern/emu/$(DEPDIR)/grub_sparc64_setup-argp_common.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/kern/emu/$(DEPDIR)/grub_syslinux2cfg-argp_common.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/kern/emu/$(DEPDIR)/grub_syslinux2cfg-hostfs.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/kern/emu/$(DEPDIR)/libgrubkern_a-hostdisk.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/kern/emu/$(DEPDIR)/libgrubkern_a-misc.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/kern/emu/$(DEPDIR)/libgrubkern_a-mm.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/kern/ia64/$(DEPDIR)/libgrubmods_a-dl_helper.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/lib/$(DEPDIR)/grub_bios_setup-reed_solomon.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/lib/$(DEPDIR)/grub_install-reed_solomon.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/lib/$(DEPDIR)/grub_menulst2cfg-legacy_parse.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/lib/$(DEPDIR)/grub_mknetdir-reed_solomon.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/lib/$(DEPDIR)/grub_mkrescue-reed_solomon.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/lib/$(DEPDIR)/grub_mkstandalone-reed_solomon.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/lib/$(DEPDIR)/grub_sparc64_setup-reed_solomon.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/lib/$(DEPDIR)/grub_syslinux2cfg-getline.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/lib/$(DEPDIR)/grub_syslinux2cfg-syslinux_parse.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/lib/$(DEPDIR)/libgrubkern_a-arg.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/lib/$(DEPDIR)/libgrubkern_a-crypto.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/lib/$(DEPDIR)/libgrubkern_a-disk.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/lib/$(DEPDIR)/libgrubkern_a-pbkdf2.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/lib/$(DEPDIR)/libgrubmods_a-LzFind.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/lib/$(DEPDIR)/libgrubmods_a-LzmaEnc.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/lib/$(DEPDIR)/libgrubmods_a-adler32.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/lib/$(DEPDIR)/libgrubmods_a-crc.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/lib/$(DEPDIR)/libgrubmods_a-crc64.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/lib/$(DEPDIR)/libgrubmods_a-envblk.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/lib/$(DEPDIR)/libgrubmods_a-hexdump.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/lib/$(DEPDIR)/priority_queue_unit_test-priority_queue.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/lib/i386/pc/$(DEPDIR)/grub_menulst2cfg-vesa_modes_table.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-arcfour.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-blowfish.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-camellia-glue.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-camellia.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-cast5.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-crc.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-des.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-idea.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-init.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-md4.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-md5.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-rfc2268.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-rijndael.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-rmd160.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-seed.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-serpent.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-sha1.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-sha256.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-sha512.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-tiger.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-twofish.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-whirlpool.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/lib/minilzo/$(DEPDIR)/libgrubmods_a-minilzo.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/lib/xzembed/$(DEPDIR)/libgrubmods_a-xz_dec_bcj.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/lib/xzembed/$(DEPDIR)/libgrubmods_a-xz_dec_lzma2.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/lib/xzembed/$(DEPDIR)/libgrubmods_a-xz_dec_stream.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/lib/zstd/$(DEPDIR)/libgrubmods_a-debug.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/lib/zstd/$(DEPDIR)/libgrubmods_a-entropy_common.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/lib/zstd/$(DEPDIR)/libgrubmods_a-error_private.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/lib/zstd/$(DEPDIR)/libgrubmods_a-fse_decompress.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/lib/zstd/$(DEPDIR)/libgrubmods_a-huf_decompress.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/lib/zstd/$(DEPDIR)/libgrubmods_a-module.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/lib/zstd/$(DEPDIR)/libgrubmods_a-xxhash.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/lib/zstd/$(DEPDIR)/libgrubmods_a-zstd_common.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/lib/zstd/$(DEPDIR)/libgrubmods_a-zstd_decompress.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/loader/$(DEPDIR)/grub_file-lzss.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/loader/$(DEPDIR)/grub_file-macho.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/loader/$(DEPDIR)/grub_file-macho32.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/loader/$(DEPDIR)/grub_file-macho64.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/loader/i386/$(DEPDIR)/grub_file-xen_file.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/loader/i386/$(DEPDIR)/grub_file-xen_file32.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/loader/i386/$(DEPDIR)/grub_file-xen_file64.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/normal/$(DEPDIR)/libgrubmods_a-charset.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/normal/$(DEPDIR)/libgrubmods_a-datetime.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/normal/$(DEPDIR)/libgrubmods_a-misc.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/osdep/$(DEPDIR)/grub_bios_setup-blocklist.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/osdep/$(DEPDIR)/grub_bios_setup-init.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/osdep/$(DEPDIR)/grub_editenv-init.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/osdep/$(DEPDIR)/grub_file-init.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/osdep/$(DEPDIR)/grub_fstest-init.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/osdep/$(DEPDIR)/grub_glue_efi-init.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/osdep/$(DEPDIR)/grub_install-blocklist.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/osdep/$(DEPDIR)/grub_install-compress.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/osdep/$(DEPDIR)/grub_install-config.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/osdep/$(DEPDIR)/grub_install-init.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/osdep/$(DEPDIR)/grub_install-ofpath.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/osdep/$(DEPDIR)/grub_install-platform.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/osdep/$(DEPDIR)/grub_install-platform_unix.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/osdep/$(DEPDIR)/grub_install-random.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/osdep/$(DEPDIR)/grub_macbless-init.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/osdep/$(DEPDIR)/grub_menulst2cfg-init.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/osdep/$(DEPDIR)/grub_mkfont-init.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/osdep/$(DEPDIR)/grub_mkimage-config.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/osdep/$(DEPDIR)/grub_mkimage-init.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/osdep/$(DEPDIR)/grub_mklayout-init.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/osdep/$(DEPDIR)/grub_mknetdir-blocklist.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/osdep/$(DEPDIR)/grub_mknetdir-compress.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/osdep/$(DEPDIR)/grub_mknetdir-config.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/osdep/$(DEPDIR)/grub_mknetdir-init.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/osdep/$(DEPDIR)/grub_mknetdir-ofpath.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/osdep/$(DEPDIR)/grub_mknetdir-platform.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/osdep/$(DEPDIR)/grub_mknetdir-platform_unix.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/osdep/$(DEPDIR)/grub_mknetdir-random.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/osdep/$(DEPDIR)/grub_mkpasswd_pbkdf2-init.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/osdep/$(DEPDIR)/grub_mkpasswd_pbkdf2-random.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/osdep/$(DEPDIR)/grub_mkrelpath-init.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/osdep/$(DEPDIR)/grub_mkrescue-blocklist.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/osdep/$(DEPDIR)/grub_mkrescue-compress.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/osdep/$(DEPDIR)/grub_mkrescue-config.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/osdep/$(DEPDIR)/grub_mkrescue-init.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/osdep/$(DEPDIR)/grub_mkrescue-ofpath.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/osdep/$(DEPDIR)/grub_mkrescue-platform.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/osdep/$(DEPDIR)/grub_mkrescue-platform_unix.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/osdep/$(DEPDIR)/grub_mkrescue-random.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/osdep/$(DEPDIR)/grub_mkstandalone-blocklist.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/osdep/$(DEPDIR)/grub_mkstandalone-compress.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/osdep/$(DEPDIR)/grub_mkstandalone-config.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/osdep/$(DEPDIR)/grub_mkstandalone-init.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/osdep/$(DEPDIR)/grub_mkstandalone-ofpath.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/osdep/$(DEPDIR)/grub_mkstandalone-platform.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/osdep/$(DEPDIR)/grub_mkstandalone-platform_unix.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/osdep/$(DEPDIR)/grub_mkstandalone-random.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/osdep/$(DEPDIR)/grub_mount-init.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/osdep/$(DEPDIR)/grub_ofpathname-init.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/osdep/$(DEPDIR)/grub_ofpathname-ofpath.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/osdep/$(DEPDIR)/grub_probe-init.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/osdep/$(DEPDIR)/grub_probe-ofpath.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/osdep/$(DEPDIR)/grub_render_label-init.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/osdep/$(DEPDIR)/grub_script_check-init.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/osdep/$(DEPDIR)/grub_sparc64_setup-blocklist.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/osdep/$(DEPDIR)/grub_sparc64_setup-init.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/osdep/$(DEPDIR)/grub_sparc64_setup-ofpath.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/osdep/$(DEPDIR)/grub_syslinux2cfg-init.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/osdep/$(DEPDIR)/libgrubkern_a-exec.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/osdep/$(DEPDIR)/libgrubkern_a-getroot.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/osdep/$(DEPDIR)/libgrubkern_a-hostdisk.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/osdep/$(DEPDIR)/libgrubkern_a-password.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/osdep/$(DEPDIR)/libgrubkern_a-relpath.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/osdep/$(DEPDIR)/libgrubkern_a-sleep.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/osdep/devmapper/$(DEPDIR)/libgrubkern_a-getroot.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/osdep/devmapper/$(DEPDIR)/libgrubkern_a-hostdisk.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/osdep/unix/$(DEPDIR)/libgrubkern_a-getroot.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/osdep/unix/$(DEPDIR)/libgrubkern_a-hostdisk.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/partmap/$(DEPDIR)/libgrubkern_a-gpt.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/partmap/$(DEPDIR)/libgrubkern_a-msdos.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/partmap/$(DEPDIR)/libgrubmods_a-acorn.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/partmap/$(DEPDIR)/libgrubmods_a-amiga.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/partmap/$(DEPDIR)/libgrubmods_a-apple.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/partmap/$(DEPDIR)/libgrubmods_a-bsdlabel.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/partmap/$(DEPDIR)/libgrubmods_a-dfly.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/partmap/$(DEPDIR)/libgrubmods_a-dvh.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/partmap/$(DEPDIR)/libgrubmods_a-plan.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/partmap/$(DEPDIR)/libgrubmods_a-sun.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/partmap/$(DEPDIR)/libgrubmods_a-sunpc.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/script/$(DEPDIR)/libgrubmods_a-argv.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/script/$(DEPDIR)/libgrubmods_a-function.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/script/$(DEPDIR)/libgrubmods_a-lexer.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/script/$(DEPDIR)/libgrubmods_a-main.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/script/$(DEPDIR)/libgrubmods_a-script.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/tests/lib/$(DEPDIR)/cmp_test-test.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/tests/lib/$(DEPDIR)/date_test-test.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/tests/lib/$(DEPDIR)/example_unit_test-test.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/tests/lib/$(DEPDIR)/printf_test-test.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/tests/lib/$(DEPDIR)/priority_queue_unit_test-test.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/video/$(DEPDIR)/libgrubmods_a-capture.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/video/$(DEPDIR)/libgrubmods_a-colors.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/video/$(DEPDIR)/libgrubmods_a-video.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/video/fb/$(DEPDIR)/libgrubmods_a-fbblit.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/video/fb/$(DEPDIR)/libgrubmods_a-fbfill.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/video/fb/$(DEPDIR)/libgrubmods_a-fbutil.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@grub-core/video/fb/$(DEPDIR)/libgrubmods_a-video_fb.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@tests/$(DEPDIR)/cmp_test-cmp_unit_test.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@tests/$(DEPDIR)/date_test-date_unit_test.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@tests/$(DEPDIR)/example_unit_test-example_unit_test.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@tests/$(DEPDIR)/printf_test-printf_unit_test.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@tests/$(DEPDIR)/priority_queue_unit_test-priority_queue_unit_test.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@tests/lib/$(DEPDIR)/cmp_test-unit_test.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@tests/lib/$(DEPDIR)/date_test-unit_test.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@tests/lib/$(DEPDIR)/example_unit_test-unit_test.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@tests/lib/$(DEPDIR)/printf_test-unit_test.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@tests/lib/$(DEPDIR)/priority_queue_unit_test-unit_test.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@util/$(DEPDIR)/grub_bios_setup-grub-setup.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@util/$(DEPDIR)/grub_bios_setup-setup_bios.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@util/$(DEPDIR)/grub_editenv-editenv.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@util/$(DEPDIR)/grub_editenv-grub-editenv.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@util/$(DEPDIR)/grub_file-grub-file.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@util/$(DEPDIR)/grub_file-render-label.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@util/$(DEPDIR)/grub_fstest-grub-fstest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@util/$(DEPDIR)/grub_glue_efi-glue-efi.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@util/$(DEPDIR)/grub_glue_efi-grub-glue-efi.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@util/$(DEPDIR)/grub_install-config.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@util/$(DEPDIR)/grub_install-editenv.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@util/$(DEPDIR)/grub_install-grub-install-common.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@util/$(DEPDIR)/grub_install-grub-install.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@util/$(DEPDIR)/grub_install-grub-mkimage32.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@util/$(DEPDIR)/grub_install-grub-mkimage64.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@util/$(DEPDIR)/grub_install-mkimage.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@util/$(DEPDIR)/grub_install-probe.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@util/$(DEPDIR)/grub_install-render-label.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@util/$(DEPDIR)/grub_install-resolve.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@util/$(DEPDIR)/grub_install-setup_bios.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@util/$(DEPDIR)/grub_install-setup_sparc.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@util/$(DEPDIR)/grub_macbless-grub-macbless.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@util/$(DEPDIR)/grub_macho2img-grub-macho2img.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@util/$(DEPDIR)/grub_menulst2cfg-grub-menulst2cfg.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@util/$(DEPDIR)/grub_mkfont-grub-mkfont.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@util/$(DEPDIR)/grub_mkimage-config.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@util/$(DEPDIR)/grub_mkimage-grub-mkimage.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@util/$(DEPDIR)/grub_mkimage-grub-mkimage32.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@util/$(DEPDIR)/grub_mkimage-grub-mkimage64.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@util/$(DEPDIR)/grub_mkimage-mkimage.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@util/$(DEPDIR)/grub_mkimage-resolve.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@util/$(DEPDIR)/grub_mklayout-grub-mklayout.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@util/$(DEPDIR)/grub_mknetdir-config.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@util/$(DEPDIR)/grub_mknetdir-editenv.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@util/$(DEPDIR)/grub_mknetdir-grub-install-common.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@util/$(DEPDIR)/grub_mknetdir-grub-mkimage32.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@util/$(DEPDIR)/grub_mknetdir-grub-mkimage64.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@util/$(DEPDIR)/grub_mknetdir-grub-mknetdir.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@util/$(DEPDIR)/grub_mknetdir-mkimage.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@util/$(DEPDIR)/grub_mknetdir-resolve.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@util/$(DEPDIR)/grub_mknetdir-setup_bios.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@util/$(DEPDIR)/grub_mknetdir-setup_sparc.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@util/$(DEPDIR)/grub_mkpasswd_pbkdf2-grub-mkpasswd-pbkdf2.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@util/$(DEPDIR)/grub_mkrelpath-grub-mkrelpath.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@util/$(DEPDIR)/grub_mkrescue-config.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@util/$(DEPDIR)/grub_mkrescue-editenv.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@util/$(DEPDIR)/grub_mkrescue-glue-efi.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@util/$(DEPDIR)/grub_mkrescue-grub-install-common.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@util/$(DEPDIR)/grub_mkrescue-grub-mkimage32.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@util/$(DEPDIR)/grub_mkrescue-grub-mkimage64.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@util/$(DEPDIR)/grub_mkrescue-grub-mkrescue.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@util/$(DEPDIR)/grub_mkrescue-mkimage.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@util/$(DEPDIR)/grub_mkrescue-render-label.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@util/$(DEPDIR)/grub_mkrescue-resolve.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@util/$(DEPDIR)/grub_mkrescue-setup_bios.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@util/$(DEPDIR)/grub_mkrescue-setup_sparc.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@util/$(DEPDIR)/grub_mkstandalone-config.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@util/$(DEPDIR)/grub_mkstandalone-editenv.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@util/$(DEPDIR)/grub_mkstandalone-glue-efi.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@util/$(DEPDIR)/grub_mkstandalone-grub-install-common.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@util/$(DEPDIR)/grub_mkstandalone-grub-mkimage32.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@util/$(DEPDIR)/grub_mkstandalone-grub-mkimage64.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@util/$(DEPDIR)/grub_mkstandalone-grub-mkstandalone.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@util/$(DEPDIR)/grub_mkstandalone-mkimage.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@util/$(DEPDIR)/grub_mkstandalone-render-label.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@util/$(DEPDIR)/grub_mkstandalone-resolve.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@util/$(DEPDIR)/grub_mkstandalone-setup_bios.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@util/$(DEPDIR)/grub_mkstandalone-setup_sparc.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@util/$(DEPDIR)/grub_mount-grub-mount.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@util/$(DEPDIR)/grub_probe-grub-probe.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@util/$(DEPDIR)/grub_probe-probe.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@util/$(DEPDIR)/grub_render_label-grub-render-label.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@util/$(DEPDIR)/grub_render_label-render-label.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@util/$(DEPDIR)/grub_script_check-grub-script-check.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@util/$(DEPDIR)/grub_sparc64_setup-grub-setup.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@util/$(DEPDIR)/grub_sparc64_setup-setup_sparc.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@util/$(DEPDIR)/grub_syslinux2cfg-grub-syslinux2cfg.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@util/$(DEPDIR)/libgrubkern_a-getroot.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@util/$(DEPDIR)/libgrubkern_a-misc.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@util/ieee1275/$(DEPDIR)/grub_ofpathname-grub-ofpathname.Po@am__quote@ - -.c.o: -@am__fastdepCC_TRUE@ $(AM_V_CC)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.o$$||'`;\ -@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ $< &&\ -@am__fastdepCC_TRUE@ $(am__mv) $$depbase.Tpo $$depbase.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ $< - -.c.obj: -@am__fastdepCC_TRUE@ $(AM_V_CC)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.obj$$||'`;\ -@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ `$(CYGPATH_W) '$<'` &&\ -@am__fastdepCC_TRUE@ $(am__mv) $$depbase.Tpo $$depbase.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ `$(CYGPATH_W) '$<'` - -grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-arcfour.o: grub-core/lib/libgcrypt-grub/cipher/arcfour.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubgcry_a_CPPFLAGS) $(CPPFLAGS) $(libgrubgcry_a_CFLAGS) $(CFLAGS) -MT grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-arcfour.o -MD -MP -MF grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-arcfour.Tpo -c -o grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-arcfour.o `test -f 'grub-core/lib/libgcrypt-grub/cipher/arcfour.c' || echo '$(srcdir)/'`grub-core/lib/libgcrypt-grub/cipher/arcfour.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-arcfour.Tpo grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-arcfour.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/lib/libgcrypt-grub/cipher/arcfour.c' object='grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-arcfour.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubgcry_a_CPPFLAGS) $(CPPFLAGS) $(libgrubgcry_a_CFLAGS) $(CFLAGS) -c -o grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-arcfour.o `test -f 'grub-core/lib/libgcrypt-grub/cipher/arcfour.c' || echo '$(srcdir)/'`grub-core/lib/libgcrypt-grub/cipher/arcfour.c - -grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-arcfour.obj: grub-core/lib/libgcrypt-grub/cipher/arcfour.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubgcry_a_CPPFLAGS) $(CPPFLAGS) $(libgrubgcry_a_CFLAGS) $(CFLAGS) -MT grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-arcfour.obj -MD -MP -MF grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-arcfour.Tpo -c -o grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-arcfour.obj `if test -f 'grub-core/lib/libgcrypt-grub/cipher/arcfour.c'; then $(CYGPATH_W) 'grub-core/lib/libgcrypt-grub/cipher/arcfour.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/lib/libgcrypt-grub/cipher/arcfour.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-arcfour.Tpo grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-arcfour.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/lib/libgcrypt-grub/cipher/arcfour.c' object='grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-arcfour.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubgcry_a_CPPFLAGS) $(CPPFLAGS) $(libgrubgcry_a_CFLAGS) $(CFLAGS) -c -o grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-arcfour.obj `if test -f 'grub-core/lib/libgcrypt-grub/cipher/arcfour.c'; then $(CYGPATH_W) 'grub-core/lib/libgcrypt-grub/cipher/arcfour.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/lib/libgcrypt-grub/cipher/arcfour.c'; fi` - -grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-blowfish.o: grub-core/lib/libgcrypt-grub/cipher/blowfish.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubgcry_a_CPPFLAGS) $(CPPFLAGS) $(libgrubgcry_a_CFLAGS) $(CFLAGS) -MT grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-blowfish.o -MD -MP -MF grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-blowfish.Tpo -c -o grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-blowfish.o `test -f 'grub-core/lib/libgcrypt-grub/cipher/blowfish.c' || echo '$(srcdir)/'`grub-core/lib/libgcrypt-grub/cipher/blowfish.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-blowfish.Tpo grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-blowfish.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/lib/libgcrypt-grub/cipher/blowfish.c' object='grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-blowfish.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubgcry_a_CPPFLAGS) $(CPPFLAGS) $(libgrubgcry_a_CFLAGS) $(CFLAGS) -c -o grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-blowfish.o `test -f 'grub-core/lib/libgcrypt-grub/cipher/blowfish.c' || echo '$(srcdir)/'`grub-core/lib/libgcrypt-grub/cipher/blowfish.c - -grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-blowfish.obj: grub-core/lib/libgcrypt-grub/cipher/blowfish.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubgcry_a_CPPFLAGS) $(CPPFLAGS) $(libgrubgcry_a_CFLAGS) $(CFLAGS) -MT grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-blowfish.obj -MD -MP -MF grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-blowfish.Tpo -c -o grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-blowfish.obj `if test -f 'grub-core/lib/libgcrypt-grub/cipher/blowfish.c'; then $(CYGPATH_W) 'grub-core/lib/libgcrypt-grub/cipher/blowfish.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/lib/libgcrypt-grub/cipher/blowfish.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-blowfish.Tpo grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-blowfish.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/lib/libgcrypt-grub/cipher/blowfish.c' object='grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-blowfish.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubgcry_a_CPPFLAGS) $(CPPFLAGS) $(libgrubgcry_a_CFLAGS) $(CFLAGS) -c -o grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-blowfish.obj `if test -f 'grub-core/lib/libgcrypt-grub/cipher/blowfish.c'; then $(CYGPATH_W) 'grub-core/lib/libgcrypt-grub/cipher/blowfish.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/lib/libgcrypt-grub/cipher/blowfish.c'; fi` - -grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-camellia-glue.o: grub-core/lib/libgcrypt-grub/cipher/camellia-glue.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubgcry_a_CPPFLAGS) $(CPPFLAGS) $(libgrubgcry_a_CFLAGS) $(CFLAGS) -MT grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-camellia-glue.o -MD -MP -MF grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-camellia-glue.Tpo -c -o grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-camellia-glue.o `test -f 'grub-core/lib/libgcrypt-grub/cipher/camellia-glue.c' || echo '$(srcdir)/'`grub-core/lib/libgcrypt-grub/cipher/camellia-glue.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-camellia-glue.Tpo grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-camellia-glue.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/lib/libgcrypt-grub/cipher/camellia-glue.c' object='grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-camellia-glue.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubgcry_a_CPPFLAGS) $(CPPFLAGS) $(libgrubgcry_a_CFLAGS) $(CFLAGS) -c -o grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-camellia-glue.o `test -f 'grub-core/lib/libgcrypt-grub/cipher/camellia-glue.c' || echo '$(srcdir)/'`grub-core/lib/libgcrypt-grub/cipher/camellia-glue.c - -grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-camellia-glue.obj: grub-core/lib/libgcrypt-grub/cipher/camellia-glue.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubgcry_a_CPPFLAGS) $(CPPFLAGS) $(libgrubgcry_a_CFLAGS) $(CFLAGS) -MT grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-camellia-glue.obj -MD -MP -MF grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-camellia-glue.Tpo -c -o grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-camellia-glue.obj `if test -f 'grub-core/lib/libgcrypt-grub/cipher/camellia-glue.c'; then $(CYGPATH_W) 'grub-core/lib/libgcrypt-grub/cipher/camellia-glue.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/lib/libgcrypt-grub/cipher/camellia-glue.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-camellia-glue.Tpo grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-camellia-glue.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/lib/libgcrypt-grub/cipher/camellia-glue.c' object='grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-camellia-glue.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubgcry_a_CPPFLAGS) $(CPPFLAGS) $(libgrubgcry_a_CFLAGS) $(CFLAGS) -c -o grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-camellia-glue.obj `if test -f 'grub-core/lib/libgcrypt-grub/cipher/camellia-glue.c'; then $(CYGPATH_W) 'grub-core/lib/libgcrypt-grub/cipher/camellia-glue.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/lib/libgcrypt-grub/cipher/camellia-glue.c'; fi` - -grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-camellia.o: grub-core/lib/libgcrypt-grub/cipher/camellia.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubgcry_a_CPPFLAGS) $(CPPFLAGS) $(libgrubgcry_a_CFLAGS) $(CFLAGS) -MT grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-camellia.o -MD -MP -MF grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-camellia.Tpo -c -o grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-camellia.o `test -f 'grub-core/lib/libgcrypt-grub/cipher/camellia.c' || echo '$(srcdir)/'`grub-core/lib/libgcrypt-grub/cipher/camellia.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-camellia.Tpo grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-camellia.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/lib/libgcrypt-grub/cipher/camellia.c' object='grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-camellia.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubgcry_a_CPPFLAGS) $(CPPFLAGS) $(libgrubgcry_a_CFLAGS) $(CFLAGS) -c -o grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-camellia.o `test -f 'grub-core/lib/libgcrypt-grub/cipher/camellia.c' || echo '$(srcdir)/'`grub-core/lib/libgcrypt-grub/cipher/camellia.c - -grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-camellia.obj: grub-core/lib/libgcrypt-grub/cipher/camellia.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubgcry_a_CPPFLAGS) $(CPPFLAGS) $(libgrubgcry_a_CFLAGS) $(CFLAGS) -MT grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-camellia.obj -MD -MP -MF grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-camellia.Tpo -c -o grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-camellia.obj `if test -f 'grub-core/lib/libgcrypt-grub/cipher/camellia.c'; then $(CYGPATH_W) 'grub-core/lib/libgcrypt-grub/cipher/camellia.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/lib/libgcrypt-grub/cipher/camellia.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-camellia.Tpo grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-camellia.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/lib/libgcrypt-grub/cipher/camellia.c' object='grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-camellia.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubgcry_a_CPPFLAGS) $(CPPFLAGS) $(libgrubgcry_a_CFLAGS) $(CFLAGS) -c -o grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-camellia.obj `if test -f 'grub-core/lib/libgcrypt-grub/cipher/camellia.c'; then $(CYGPATH_W) 'grub-core/lib/libgcrypt-grub/cipher/camellia.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/lib/libgcrypt-grub/cipher/camellia.c'; fi` - -grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-cast5.o: grub-core/lib/libgcrypt-grub/cipher/cast5.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubgcry_a_CPPFLAGS) $(CPPFLAGS) $(libgrubgcry_a_CFLAGS) $(CFLAGS) -MT grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-cast5.o -MD -MP -MF grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-cast5.Tpo -c -o grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-cast5.o `test -f 'grub-core/lib/libgcrypt-grub/cipher/cast5.c' || echo '$(srcdir)/'`grub-core/lib/libgcrypt-grub/cipher/cast5.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-cast5.Tpo grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-cast5.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/lib/libgcrypt-grub/cipher/cast5.c' object='grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-cast5.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubgcry_a_CPPFLAGS) $(CPPFLAGS) $(libgrubgcry_a_CFLAGS) $(CFLAGS) -c -o grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-cast5.o `test -f 'grub-core/lib/libgcrypt-grub/cipher/cast5.c' || echo '$(srcdir)/'`grub-core/lib/libgcrypt-grub/cipher/cast5.c - -grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-cast5.obj: grub-core/lib/libgcrypt-grub/cipher/cast5.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubgcry_a_CPPFLAGS) $(CPPFLAGS) $(libgrubgcry_a_CFLAGS) $(CFLAGS) -MT grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-cast5.obj -MD -MP -MF grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-cast5.Tpo -c -o grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-cast5.obj `if test -f 'grub-core/lib/libgcrypt-grub/cipher/cast5.c'; then $(CYGPATH_W) 'grub-core/lib/libgcrypt-grub/cipher/cast5.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/lib/libgcrypt-grub/cipher/cast5.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-cast5.Tpo grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-cast5.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/lib/libgcrypt-grub/cipher/cast5.c' object='grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-cast5.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubgcry_a_CPPFLAGS) $(CPPFLAGS) $(libgrubgcry_a_CFLAGS) $(CFLAGS) -c -o grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-cast5.obj `if test -f 'grub-core/lib/libgcrypt-grub/cipher/cast5.c'; then $(CYGPATH_W) 'grub-core/lib/libgcrypt-grub/cipher/cast5.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/lib/libgcrypt-grub/cipher/cast5.c'; fi` - -grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-crc.o: grub-core/lib/libgcrypt-grub/cipher/crc.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubgcry_a_CPPFLAGS) $(CPPFLAGS) $(libgrubgcry_a_CFLAGS) $(CFLAGS) -MT grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-crc.o -MD -MP -MF grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-crc.Tpo -c -o grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-crc.o `test -f 'grub-core/lib/libgcrypt-grub/cipher/crc.c' || echo '$(srcdir)/'`grub-core/lib/libgcrypt-grub/cipher/crc.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-crc.Tpo grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-crc.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/lib/libgcrypt-grub/cipher/crc.c' object='grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-crc.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubgcry_a_CPPFLAGS) $(CPPFLAGS) $(libgrubgcry_a_CFLAGS) $(CFLAGS) -c -o grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-crc.o `test -f 'grub-core/lib/libgcrypt-grub/cipher/crc.c' || echo '$(srcdir)/'`grub-core/lib/libgcrypt-grub/cipher/crc.c - -grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-crc.obj: grub-core/lib/libgcrypt-grub/cipher/crc.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubgcry_a_CPPFLAGS) $(CPPFLAGS) $(libgrubgcry_a_CFLAGS) $(CFLAGS) -MT grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-crc.obj -MD -MP -MF grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-crc.Tpo -c -o grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-crc.obj `if test -f 'grub-core/lib/libgcrypt-grub/cipher/crc.c'; then $(CYGPATH_W) 'grub-core/lib/libgcrypt-grub/cipher/crc.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/lib/libgcrypt-grub/cipher/crc.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-crc.Tpo grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-crc.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/lib/libgcrypt-grub/cipher/crc.c' object='grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-crc.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubgcry_a_CPPFLAGS) $(CPPFLAGS) $(libgrubgcry_a_CFLAGS) $(CFLAGS) -c -o grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-crc.obj `if test -f 'grub-core/lib/libgcrypt-grub/cipher/crc.c'; then $(CYGPATH_W) 'grub-core/lib/libgcrypt-grub/cipher/crc.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/lib/libgcrypt-grub/cipher/crc.c'; fi` - -grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-des.o: grub-core/lib/libgcrypt-grub/cipher/des.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubgcry_a_CPPFLAGS) $(CPPFLAGS) $(libgrubgcry_a_CFLAGS) $(CFLAGS) -MT grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-des.o -MD -MP -MF grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-des.Tpo -c -o grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-des.o `test -f 'grub-core/lib/libgcrypt-grub/cipher/des.c' || echo '$(srcdir)/'`grub-core/lib/libgcrypt-grub/cipher/des.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-des.Tpo grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-des.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/lib/libgcrypt-grub/cipher/des.c' object='grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-des.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubgcry_a_CPPFLAGS) $(CPPFLAGS) $(libgrubgcry_a_CFLAGS) $(CFLAGS) -c -o grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-des.o `test -f 'grub-core/lib/libgcrypt-grub/cipher/des.c' || echo '$(srcdir)/'`grub-core/lib/libgcrypt-grub/cipher/des.c - -grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-des.obj: grub-core/lib/libgcrypt-grub/cipher/des.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubgcry_a_CPPFLAGS) $(CPPFLAGS) $(libgrubgcry_a_CFLAGS) $(CFLAGS) -MT grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-des.obj -MD -MP -MF grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-des.Tpo -c -o grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-des.obj `if test -f 'grub-core/lib/libgcrypt-grub/cipher/des.c'; then $(CYGPATH_W) 'grub-core/lib/libgcrypt-grub/cipher/des.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/lib/libgcrypt-grub/cipher/des.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-des.Tpo grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-des.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/lib/libgcrypt-grub/cipher/des.c' object='grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-des.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubgcry_a_CPPFLAGS) $(CPPFLAGS) $(libgrubgcry_a_CFLAGS) $(CFLAGS) -c -o grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-des.obj `if test -f 'grub-core/lib/libgcrypt-grub/cipher/des.c'; then $(CYGPATH_W) 'grub-core/lib/libgcrypt-grub/cipher/des.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/lib/libgcrypt-grub/cipher/des.c'; fi` - -grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-idea.o: grub-core/lib/libgcrypt-grub/cipher/idea.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubgcry_a_CPPFLAGS) $(CPPFLAGS) $(libgrubgcry_a_CFLAGS) $(CFLAGS) -MT grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-idea.o -MD -MP -MF grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-idea.Tpo -c -o grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-idea.o `test -f 'grub-core/lib/libgcrypt-grub/cipher/idea.c' || echo '$(srcdir)/'`grub-core/lib/libgcrypt-grub/cipher/idea.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-idea.Tpo grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-idea.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/lib/libgcrypt-grub/cipher/idea.c' object='grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-idea.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubgcry_a_CPPFLAGS) $(CPPFLAGS) $(libgrubgcry_a_CFLAGS) $(CFLAGS) -c -o grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-idea.o `test -f 'grub-core/lib/libgcrypt-grub/cipher/idea.c' || echo '$(srcdir)/'`grub-core/lib/libgcrypt-grub/cipher/idea.c - -grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-idea.obj: grub-core/lib/libgcrypt-grub/cipher/idea.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubgcry_a_CPPFLAGS) $(CPPFLAGS) $(libgrubgcry_a_CFLAGS) $(CFLAGS) -MT grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-idea.obj -MD -MP -MF grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-idea.Tpo -c -o grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-idea.obj `if test -f 'grub-core/lib/libgcrypt-grub/cipher/idea.c'; then $(CYGPATH_W) 'grub-core/lib/libgcrypt-grub/cipher/idea.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/lib/libgcrypt-grub/cipher/idea.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-idea.Tpo grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-idea.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/lib/libgcrypt-grub/cipher/idea.c' object='grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-idea.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubgcry_a_CPPFLAGS) $(CPPFLAGS) $(libgrubgcry_a_CFLAGS) $(CFLAGS) -c -o grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-idea.obj `if test -f 'grub-core/lib/libgcrypt-grub/cipher/idea.c'; then $(CYGPATH_W) 'grub-core/lib/libgcrypt-grub/cipher/idea.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/lib/libgcrypt-grub/cipher/idea.c'; fi` - -grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-md4.o: grub-core/lib/libgcrypt-grub/cipher/md4.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubgcry_a_CPPFLAGS) $(CPPFLAGS) $(libgrubgcry_a_CFLAGS) $(CFLAGS) -MT grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-md4.o -MD -MP -MF grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-md4.Tpo -c -o grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-md4.o `test -f 'grub-core/lib/libgcrypt-grub/cipher/md4.c' || echo '$(srcdir)/'`grub-core/lib/libgcrypt-grub/cipher/md4.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-md4.Tpo grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-md4.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/lib/libgcrypt-grub/cipher/md4.c' object='grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-md4.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubgcry_a_CPPFLAGS) $(CPPFLAGS) $(libgrubgcry_a_CFLAGS) $(CFLAGS) -c -o grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-md4.o `test -f 'grub-core/lib/libgcrypt-grub/cipher/md4.c' || echo '$(srcdir)/'`grub-core/lib/libgcrypt-grub/cipher/md4.c - -grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-md4.obj: grub-core/lib/libgcrypt-grub/cipher/md4.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubgcry_a_CPPFLAGS) $(CPPFLAGS) $(libgrubgcry_a_CFLAGS) $(CFLAGS) -MT grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-md4.obj -MD -MP -MF grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-md4.Tpo -c -o grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-md4.obj `if test -f 'grub-core/lib/libgcrypt-grub/cipher/md4.c'; then $(CYGPATH_W) 'grub-core/lib/libgcrypt-grub/cipher/md4.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/lib/libgcrypt-grub/cipher/md4.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-md4.Tpo grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-md4.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/lib/libgcrypt-grub/cipher/md4.c' object='grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-md4.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubgcry_a_CPPFLAGS) $(CPPFLAGS) $(libgrubgcry_a_CFLAGS) $(CFLAGS) -c -o grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-md4.obj `if test -f 'grub-core/lib/libgcrypt-grub/cipher/md4.c'; then $(CYGPATH_W) 'grub-core/lib/libgcrypt-grub/cipher/md4.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/lib/libgcrypt-grub/cipher/md4.c'; fi` - -grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-md5.o: grub-core/lib/libgcrypt-grub/cipher/md5.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubgcry_a_CPPFLAGS) $(CPPFLAGS) $(libgrubgcry_a_CFLAGS) $(CFLAGS) -MT grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-md5.o -MD -MP -MF grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-md5.Tpo -c -o grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-md5.o `test -f 'grub-core/lib/libgcrypt-grub/cipher/md5.c' || echo '$(srcdir)/'`grub-core/lib/libgcrypt-grub/cipher/md5.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-md5.Tpo grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-md5.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/lib/libgcrypt-grub/cipher/md5.c' object='grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-md5.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubgcry_a_CPPFLAGS) $(CPPFLAGS) $(libgrubgcry_a_CFLAGS) $(CFLAGS) -c -o grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-md5.o `test -f 'grub-core/lib/libgcrypt-grub/cipher/md5.c' || echo '$(srcdir)/'`grub-core/lib/libgcrypt-grub/cipher/md5.c - -grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-md5.obj: grub-core/lib/libgcrypt-grub/cipher/md5.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubgcry_a_CPPFLAGS) $(CPPFLAGS) $(libgrubgcry_a_CFLAGS) $(CFLAGS) -MT grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-md5.obj -MD -MP -MF grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-md5.Tpo -c -o grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-md5.obj `if test -f 'grub-core/lib/libgcrypt-grub/cipher/md5.c'; then $(CYGPATH_W) 'grub-core/lib/libgcrypt-grub/cipher/md5.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/lib/libgcrypt-grub/cipher/md5.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-md5.Tpo grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-md5.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/lib/libgcrypt-grub/cipher/md5.c' object='grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-md5.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubgcry_a_CPPFLAGS) $(CPPFLAGS) $(libgrubgcry_a_CFLAGS) $(CFLAGS) -c -o grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-md5.obj `if test -f 'grub-core/lib/libgcrypt-grub/cipher/md5.c'; then $(CYGPATH_W) 'grub-core/lib/libgcrypt-grub/cipher/md5.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/lib/libgcrypt-grub/cipher/md5.c'; fi` - -grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-rfc2268.o: grub-core/lib/libgcrypt-grub/cipher/rfc2268.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubgcry_a_CPPFLAGS) $(CPPFLAGS) $(libgrubgcry_a_CFLAGS) $(CFLAGS) -MT grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-rfc2268.o -MD -MP -MF grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-rfc2268.Tpo -c -o grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-rfc2268.o `test -f 'grub-core/lib/libgcrypt-grub/cipher/rfc2268.c' || echo '$(srcdir)/'`grub-core/lib/libgcrypt-grub/cipher/rfc2268.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-rfc2268.Tpo grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-rfc2268.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/lib/libgcrypt-grub/cipher/rfc2268.c' object='grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-rfc2268.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubgcry_a_CPPFLAGS) $(CPPFLAGS) $(libgrubgcry_a_CFLAGS) $(CFLAGS) -c -o grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-rfc2268.o `test -f 'grub-core/lib/libgcrypt-grub/cipher/rfc2268.c' || echo '$(srcdir)/'`grub-core/lib/libgcrypt-grub/cipher/rfc2268.c - -grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-rfc2268.obj: grub-core/lib/libgcrypt-grub/cipher/rfc2268.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubgcry_a_CPPFLAGS) $(CPPFLAGS) $(libgrubgcry_a_CFLAGS) $(CFLAGS) -MT grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-rfc2268.obj -MD -MP -MF grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-rfc2268.Tpo -c -o grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-rfc2268.obj `if test -f 'grub-core/lib/libgcrypt-grub/cipher/rfc2268.c'; then $(CYGPATH_W) 'grub-core/lib/libgcrypt-grub/cipher/rfc2268.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/lib/libgcrypt-grub/cipher/rfc2268.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-rfc2268.Tpo grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-rfc2268.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/lib/libgcrypt-grub/cipher/rfc2268.c' object='grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-rfc2268.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubgcry_a_CPPFLAGS) $(CPPFLAGS) $(libgrubgcry_a_CFLAGS) $(CFLAGS) -c -o grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-rfc2268.obj `if test -f 'grub-core/lib/libgcrypt-grub/cipher/rfc2268.c'; then $(CYGPATH_W) 'grub-core/lib/libgcrypt-grub/cipher/rfc2268.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/lib/libgcrypt-grub/cipher/rfc2268.c'; fi` - -grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-rijndael.o: grub-core/lib/libgcrypt-grub/cipher/rijndael.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubgcry_a_CPPFLAGS) $(CPPFLAGS) $(libgrubgcry_a_CFLAGS) $(CFLAGS) -MT grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-rijndael.o -MD -MP -MF grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-rijndael.Tpo -c -o grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-rijndael.o `test -f 'grub-core/lib/libgcrypt-grub/cipher/rijndael.c' || echo '$(srcdir)/'`grub-core/lib/libgcrypt-grub/cipher/rijndael.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-rijndael.Tpo grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-rijndael.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/lib/libgcrypt-grub/cipher/rijndael.c' object='grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-rijndael.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubgcry_a_CPPFLAGS) $(CPPFLAGS) $(libgrubgcry_a_CFLAGS) $(CFLAGS) -c -o grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-rijndael.o `test -f 'grub-core/lib/libgcrypt-grub/cipher/rijndael.c' || echo '$(srcdir)/'`grub-core/lib/libgcrypt-grub/cipher/rijndael.c - -grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-rijndael.obj: grub-core/lib/libgcrypt-grub/cipher/rijndael.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubgcry_a_CPPFLAGS) $(CPPFLAGS) $(libgrubgcry_a_CFLAGS) $(CFLAGS) -MT grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-rijndael.obj -MD -MP -MF grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-rijndael.Tpo -c -o grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-rijndael.obj `if test -f 'grub-core/lib/libgcrypt-grub/cipher/rijndael.c'; then $(CYGPATH_W) 'grub-core/lib/libgcrypt-grub/cipher/rijndael.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/lib/libgcrypt-grub/cipher/rijndael.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-rijndael.Tpo grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-rijndael.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/lib/libgcrypt-grub/cipher/rijndael.c' object='grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-rijndael.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubgcry_a_CPPFLAGS) $(CPPFLAGS) $(libgrubgcry_a_CFLAGS) $(CFLAGS) -c -o grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-rijndael.obj `if test -f 'grub-core/lib/libgcrypt-grub/cipher/rijndael.c'; then $(CYGPATH_W) 'grub-core/lib/libgcrypt-grub/cipher/rijndael.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/lib/libgcrypt-grub/cipher/rijndael.c'; fi` - -grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-rmd160.o: grub-core/lib/libgcrypt-grub/cipher/rmd160.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubgcry_a_CPPFLAGS) $(CPPFLAGS) $(libgrubgcry_a_CFLAGS) $(CFLAGS) -MT grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-rmd160.o -MD -MP -MF grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-rmd160.Tpo -c -o grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-rmd160.o `test -f 'grub-core/lib/libgcrypt-grub/cipher/rmd160.c' || echo '$(srcdir)/'`grub-core/lib/libgcrypt-grub/cipher/rmd160.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-rmd160.Tpo grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-rmd160.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/lib/libgcrypt-grub/cipher/rmd160.c' object='grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-rmd160.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubgcry_a_CPPFLAGS) $(CPPFLAGS) $(libgrubgcry_a_CFLAGS) $(CFLAGS) -c -o grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-rmd160.o `test -f 'grub-core/lib/libgcrypt-grub/cipher/rmd160.c' || echo '$(srcdir)/'`grub-core/lib/libgcrypt-grub/cipher/rmd160.c - -grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-rmd160.obj: grub-core/lib/libgcrypt-grub/cipher/rmd160.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubgcry_a_CPPFLAGS) $(CPPFLAGS) $(libgrubgcry_a_CFLAGS) $(CFLAGS) -MT grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-rmd160.obj -MD -MP -MF grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-rmd160.Tpo -c -o grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-rmd160.obj `if test -f 'grub-core/lib/libgcrypt-grub/cipher/rmd160.c'; then $(CYGPATH_W) 'grub-core/lib/libgcrypt-grub/cipher/rmd160.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/lib/libgcrypt-grub/cipher/rmd160.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-rmd160.Tpo grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-rmd160.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/lib/libgcrypt-grub/cipher/rmd160.c' object='grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-rmd160.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubgcry_a_CPPFLAGS) $(CPPFLAGS) $(libgrubgcry_a_CFLAGS) $(CFLAGS) -c -o grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-rmd160.obj `if test -f 'grub-core/lib/libgcrypt-grub/cipher/rmd160.c'; then $(CYGPATH_W) 'grub-core/lib/libgcrypt-grub/cipher/rmd160.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/lib/libgcrypt-grub/cipher/rmd160.c'; fi` - -grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-seed.o: grub-core/lib/libgcrypt-grub/cipher/seed.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubgcry_a_CPPFLAGS) $(CPPFLAGS) $(libgrubgcry_a_CFLAGS) $(CFLAGS) -MT grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-seed.o -MD -MP -MF grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-seed.Tpo -c -o grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-seed.o `test -f 'grub-core/lib/libgcrypt-grub/cipher/seed.c' || echo '$(srcdir)/'`grub-core/lib/libgcrypt-grub/cipher/seed.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-seed.Tpo grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-seed.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/lib/libgcrypt-grub/cipher/seed.c' object='grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-seed.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubgcry_a_CPPFLAGS) $(CPPFLAGS) $(libgrubgcry_a_CFLAGS) $(CFLAGS) -c -o grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-seed.o `test -f 'grub-core/lib/libgcrypt-grub/cipher/seed.c' || echo '$(srcdir)/'`grub-core/lib/libgcrypt-grub/cipher/seed.c - -grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-seed.obj: grub-core/lib/libgcrypt-grub/cipher/seed.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubgcry_a_CPPFLAGS) $(CPPFLAGS) $(libgrubgcry_a_CFLAGS) $(CFLAGS) -MT grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-seed.obj -MD -MP -MF grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-seed.Tpo -c -o grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-seed.obj `if test -f 'grub-core/lib/libgcrypt-grub/cipher/seed.c'; then $(CYGPATH_W) 'grub-core/lib/libgcrypt-grub/cipher/seed.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/lib/libgcrypt-grub/cipher/seed.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-seed.Tpo grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-seed.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/lib/libgcrypt-grub/cipher/seed.c' object='grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-seed.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubgcry_a_CPPFLAGS) $(CPPFLAGS) $(libgrubgcry_a_CFLAGS) $(CFLAGS) -c -o grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-seed.obj `if test -f 'grub-core/lib/libgcrypt-grub/cipher/seed.c'; then $(CYGPATH_W) 'grub-core/lib/libgcrypt-grub/cipher/seed.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/lib/libgcrypt-grub/cipher/seed.c'; fi` - -grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-serpent.o: grub-core/lib/libgcrypt-grub/cipher/serpent.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubgcry_a_CPPFLAGS) $(CPPFLAGS) $(libgrubgcry_a_CFLAGS) $(CFLAGS) -MT grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-serpent.o -MD -MP -MF grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-serpent.Tpo -c -o grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-serpent.o `test -f 'grub-core/lib/libgcrypt-grub/cipher/serpent.c' || echo '$(srcdir)/'`grub-core/lib/libgcrypt-grub/cipher/serpent.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-serpent.Tpo grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-serpent.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/lib/libgcrypt-grub/cipher/serpent.c' object='grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-serpent.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubgcry_a_CPPFLAGS) $(CPPFLAGS) $(libgrubgcry_a_CFLAGS) $(CFLAGS) -c -o grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-serpent.o `test -f 'grub-core/lib/libgcrypt-grub/cipher/serpent.c' || echo '$(srcdir)/'`grub-core/lib/libgcrypt-grub/cipher/serpent.c - -grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-serpent.obj: grub-core/lib/libgcrypt-grub/cipher/serpent.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubgcry_a_CPPFLAGS) $(CPPFLAGS) $(libgrubgcry_a_CFLAGS) $(CFLAGS) -MT grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-serpent.obj -MD -MP -MF grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-serpent.Tpo -c -o grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-serpent.obj `if test -f 'grub-core/lib/libgcrypt-grub/cipher/serpent.c'; then $(CYGPATH_W) 'grub-core/lib/libgcrypt-grub/cipher/serpent.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/lib/libgcrypt-grub/cipher/serpent.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-serpent.Tpo grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-serpent.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/lib/libgcrypt-grub/cipher/serpent.c' object='grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-serpent.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubgcry_a_CPPFLAGS) $(CPPFLAGS) $(libgrubgcry_a_CFLAGS) $(CFLAGS) -c -o grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-serpent.obj `if test -f 'grub-core/lib/libgcrypt-grub/cipher/serpent.c'; then $(CYGPATH_W) 'grub-core/lib/libgcrypt-grub/cipher/serpent.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/lib/libgcrypt-grub/cipher/serpent.c'; fi` - -grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-sha1.o: grub-core/lib/libgcrypt-grub/cipher/sha1.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubgcry_a_CPPFLAGS) $(CPPFLAGS) $(libgrubgcry_a_CFLAGS) $(CFLAGS) -MT grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-sha1.o -MD -MP -MF grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-sha1.Tpo -c -o grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-sha1.o `test -f 'grub-core/lib/libgcrypt-grub/cipher/sha1.c' || echo '$(srcdir)/'`grub-core/lib/libgcrypt-grub/cipher/sha1.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-sha1.Tpo grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-sha1.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/lib/libgcrypt-grub/cipher/sha1.c' object='grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-sha1.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubgcry_a_CPPFLAGS) $(CPPFLAGS) $(libgrubgcry_a_CFLAGS) $(CFLAGS) -c -o grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-sha1.o `test -f 'grub-core/lib/libgcrypt-grub/cipher/sha1.c' || echo '$(srcdir)/'`grub-core/lib/libgcrypt-grub/cipher/sha1.c - -grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-sha1.obj: grub-core/lib/libgcrypt-grub/cipher/sha1.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubgcry_a_CPPFLAGS) $(CPPFLAGS) $(libgrubgcry_a_CFLAGS) $(CFLAGS) -MT grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-sha1.obj -MD -MP -MF grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-sha1.Tpo -c -o grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-sha1.obj `if test -f 'grub-core/lib/libgcrypt-grub/cipher/sha1.c'; then $(CYGPATH_W) 'grub-core/lib/libgcrypt-grub/cipher/sha1.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/lib/libgcrypt-grub/cipher/sha1.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-sha1.Tpo grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-sha1.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/lib/libgcrypt-grub/cipher/sha1.c' object='grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-sha1.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubgcry_a_CPPFLAGS) $(CPPFLAGS) $(libgrubgcry_a_CFLAGS) $(CFLAGS) -c -o grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-sha1.obj `if test -f 'grub-core/lib/libgcrypt-grub/cipher/sha1.c'; then $(CYGPATH_W) 'grub-core/lib/libgcrypt-grub/cipher/sha1.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/lib/libgcrypt-grub/cipher/sha1.c'; fi` - -grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-sha256.o: grub-core/lib/libgcrypt-grub/cipher/sha256.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubgcry_a_CPPFLAGS) $(CPPFLAGS) $(libgrubgcry_a_CFLAGS) $(CFLAGS) -MT grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-sha256.o -MD -MP -MF grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-sha256.Tpo -c -o grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-sha256.o `test -f 'grub-core/lib/libgcrypt-grub/cipher/sha256.c' || echo '$(srcdir)/'`grub-core/lib/libgcrypt-grub/cipher/sha256.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-sha256.Tpo grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-sha256.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/lib/libgcrypt-grub/cipher/sha256.c' object='grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-sha256.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubgcry_a_CPPFLAGS) $(CPPFLAGS) $(libgrubgcry_a_CFLAGS) $(CFLAGS) -c -o grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-sha256.o `test -f 'grub-core/lib/libgcrypt-grub/cipher/sha256.c' || echo '$(srcdir)/'`grub-core/lib/libgcrypt-grub/cipher/sha256.c - -grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-sha256.obj: grub-core/lib/libgcrypt-grub/cipher/sha256.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubgcry_a_CPPFLAGS) $(CPPFLAGS) $(libgrubgcry_a_CFLAGS) $(CFLAGS) -MT grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-sha256.obj -MD -MP -MF grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-sha256.Tpo -c -o grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-sha256.obj `if test -f 'grub-core/lib/libgcrypt-grub/cipher/sha256.c'; then $(CYGPATH_W) 'grub-core/lib/libgcrypt-grub/cipher/sha256.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/lib/libgcrypt-grub/cipher/sha256.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-sha256.Tpo grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-sha256.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/lib/libgcrypt-grub/cipher/sha256.c' object='grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-sha256.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubgcry_a_CPPFLAGS) $(CPPFLAGS) $(libgrubgcry_a_CFLAGS) $(CFLAGS) -c -o grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-sha256.obj `if test -f 'grub-core/lib/libgcrypt-grub/cipher/sha256.c'; then $(CYGPATH_W) 'grub-core/lib/libgcrypt-grub/cipher/sha256.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/lib/libgcrypt-grub/cipher/sha256.c'; fi` - -grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-sha512.o: grub-core/lib/libgcrypt-grub/cipher/sha512.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubgcry_a_CPPFLAGS) $(CPPFLAGS) $(libgrubgcry_a_CFLAGS) $(CFLAGS) -MT grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-sha512.o -MD -MP -MF grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-sha512.Tpo -c -o grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-sha512.o `test -f 'grub-core/lib/libgcrypt-grub/cipher/sha512.c' || echo '$(srcdir)/'`grub-core/lib/libgcrypt-grub/cipher/sha512.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-sha512.Tpo grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-sha512.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/lib/libgcrypt-grub/cipher/sha512.c' object='grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-sha512.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubgcry_a_CPPFLAGS) $(CPPFLAGS) $(libgrubgcry_a_CFLAGS) $(CFLAGS) -c -o grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-sha512.o `test -f 'grub-core/lib/libgcrypt-grub/cipher/sha512.c' || echo '$(srcdir)/'`grub-core/lib/libgcrypt-grub/cipher/sha512.c - -grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-sha512.obj: grub-core/lib/libgcrypt-grub/cipher/sha512.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubgcry_a_CPPFLAGS) $(CPPFLAGS) $(libgrubgcry_a_CFLAGS) $(CFLAGS) -MT grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-sha512.obj -MD -MP -MF grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-sha512.Tpo -c -o grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-sha512.obj `if test -f 'grub-core/lib/libgcrypt-grub/cipher/sha512.c'; then $(CYGPATH_W) 'grub-core/lib/libgcrypt-grub/cipher/sha512.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/lib/libgcrypt-grub/cipher/sha512.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-sha512.Tpo grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-sha512.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/lib/libgcrypt-grub/cipher/sha512.c' object='grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-sha512.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubgcry_a_CPPFLAGS) $(CPPFLAGS) $(libgrubgcry_a_CFLAGS) $(CFLAGS) -c -o grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-sha512.obj `if test -f 'grub-core/lib/libgcrypt-grub/cipher/sha512.c'; then $(CYGPATH_W) 'grub-core/lib/libgcrypt-grub/cipher/sha512.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/lib/libgcrypt-grub/cipher/sha512.c'; fi` - -grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-tiger.o: grub-core/lib/libgcrypt-grub/cipher/tiger.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubgcry_a_CPPFLAGS) $(CPPFLAGS) $(libgrubgcry_a_CFLAGS) $(CFLAGS) -MT grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-tiger.o -MD -MP -MF grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-tiger.Tpo -c -o grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-tiger.o `test -f 'grub-core/lib/libgcrypt-grub/cipher/tiger.c' || echo '$(srcdir)/'`grub-core/lib/libgcrypt-grub/cipher/tiger.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-tiger.Tpo grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-tiger.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/lib/libgcrypt-grub/cipher/tiger.c' object='grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-tiger.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubgcry_a_CPPFLAGS) $(CPPFLAGS) $(libgrubgcry_a_CFLAGS) $(CFLAGS) -c -o grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-tiger.o `test -f 'grub-core/lib/libgcrypt-grub/cipher/tiger.c' || echo '$(srcdir)/'`grub-core/lib/libgcrypt-grub/cipher/tiger.c - -grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-tiger.obj: grub-core/lib/libgcrypt-grub/cipher/tiger.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubgcry_a_CPPFLAGS) $(CPPFLAGS) $(libgrubgcry_a_CFLAGS) $(CFLAGS) -MT grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-tiger.obj -MD -MP -MF grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-tiger.Tpo -c -o grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-tiger.obj `if test -f 'grub-core/lib/libgcrypt-grub/cipher/tiger.c'; then $(CYGPATH_W) 'grub-core/lib/libgcrypt-grub/cipher/tiger.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/lib/libgcrypt-grub/cipher/tiger.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-tiger.Tpo grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-tiger.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/lib/libgcrypt-grub/cipher/tiger.c' object='grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-tiger.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubgcry_a_CPPFLAGS) $(CPPFLAGS) $(libgrubgcry_a_CFLAGS) $(CFLAGS) -c -o grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-tiger.obj `if test -f 'grub-core/lib/libgcrypt-grub/cipher/tiger.c'; then $(CYGPATH_W) 'grub-core/lib/libgcrypt-grub/cipher/tiger.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/lib/libgcrypt-grub/cipher/tiger.c'; fi` - -grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-twofish.o: grub-core/lib/libgcrypt-grub/cipher/twofish.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubgcry_a_CPPFLAGS) $(CPPFLAGS) $(libgrubgcry_a_CFLAGS) $(CFLAGS) -MT grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-twofish.o -MD -MP -MF grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-twofish.Tpo -c -o grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-twofish.o `test -f 'grub-core/lib/libgcrypt-grub/cipher/twofish.c' || echo '$(srcdir)/'`grub-core/lib/libgcrypt-grub/cipher/twofish.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-twofish.Tpo grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-twofish.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/lib/libgcrypt-grub/cipher/twofish.c' object='grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-twofish.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubgcry_a_CPPFLAGS) $(CPPFLAGS) $(libgrubgcry_a_CFLAGS) $(CFLAGS) -c -o grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-twofish.o `test -f 'grub-core/lib/libgcrypt-grub/cipher/twofish.c' || echo '$(srcdir)/'`grub-core/lib/libgcrypt-grub/cipher/twofish.c - -grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-twofish.obj: grub-core/lib/libgcrypt-grub/cipher/twofish.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubgcry_a_CPPFLAGS) $(CPPFLAGS) $(libgrubgcry_a_CFLAGS) $(CFLAGS) -MT grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-twofish.obj -MD -MP -MF grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-twofish.Tpo -c -o grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-twofish.obj `if test -f 'grub-core/lib/libgcrypt-grub/cipher/twofish.c'; then $(CYGPATH_W) 'grub-core/lib/libgcrypt-grub/cipher/twofish.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/lib/libgcrypt-grub/cipher/twofish.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-twofish.Tpo grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-twofish.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/lib/libgcrypt-grub/cipher/twofish.c' object='grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-twofish.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubgcry_a_CPPFLAGS) $(CPPFLAGS) $(libgrubgcry_a_CFLAGS) $(CFLAGS) -c -o grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-twofish.obj `if test -f 'grub-core/lib/libgcrypt-grub/cipher/twofish.c'; then $(CYGPATH_W) 'grub-core/lib/libgcrypt-grub/cipher/twofish.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/lib/libgcrypt-grub/cipher/twofish.c'; fi` - -grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-whirlpool.o: grub-core/lib/libgcrypt-grub/cipher/whirlpool.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubgcry_a_CPPFLAGS) $(CPPFLAGS) $(libgrubgcry_a_CFLAGS) $(CFLAGS) -MT grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-whirlpool.o -MD -MP -MF grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-whirlpool.Tpo -c -o grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-whirlpool.o `test -f 'grub-core/lib/libgcrypt-grub/cipher/whirlpool.c' || echo '$(srcdir)/'`grub-core/lib/libgcrypt-grub/cipher/whirlpool.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-whirlpool.Tpo grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-whirlpool.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/lib/libgcrypt-grub/cipher/whirlpool.c' object='grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-whirlpool.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubgcry_a_CPPFLAGS) $(CPPFLAGS) $(libgrubgcry_a_CFLAGS) $(CFLAGS) -c -o grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-whirlpool.o `test -f 'grub-core/lib/libgcrypt-grub/cipher/whirlpool.c' || echo '$(srcdir)/'`grub-core/lib/libgcrypt-grub/cipher/whirlpool.c - -grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-whirlpool.obj: grub-core/lib/libgcrypt-grub/cipher/whirlpool.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubgcry_a_CPPFLAGS) $(CPPFLAGS) $(libgrubgcry_a_CFLAGS) $(CFLAGS) -MT grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-whirlpool.obj -MD -MP -MF grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-whirlpool.Tpo -c -o grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-whirlpool.obj `if test -f 'grub-core/lib/libgcrypt-grub/cipher/whirlpool.c'; then $(CYGPATH_W) 'grub-core/lib/libgcrypt-grub/cipher/whirlpool.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/lib/libgcrypt-grub/cipher/whirlpool.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-whirlpool.Tpo grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-whirlpool.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/lib/libgcrypt-grub/cipher/whirlpool.c' object='grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-whirlpool.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubgcry_a_CPPFLAGS) $(CPPFLAGS) $(libgrubgcry_a_CFLAGS) $(CFLAGS) -c -o grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-whirlpool.obj `if test -f 'grub-core/lib/libgcrypt-grub/cipher/whirlpool.c'; then $(CYGPATH_W) 'grub-core/lib/libgcrypt-grub/cipher/whirlpool.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/lib/libgcrypt-grub/cipher/whirlpool.c'; fi` - -grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-init.o: grub-core/lib/libgcrypt-grub/cipher/init.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubgcry_a_CPPFLAGS) $(CPPFLAGS) $(libgrubgcry_a_CFLAGS) $(CFLAGS) -MT grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-init.o -MD -MP -MF grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-init.Tpo -c -o grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-init.o `test -f 'grub-core/lib/libgcrypt-grub/cipher/init.c' || echo '$(srcdir)/'`grub-core/lib/libgcrypt-grub/cipher/init.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-init.Tpo grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-init.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/lib/libgcrypt-grub/cipher/init.c' object='grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-init.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubgcry_a_CPPFLAGS) $(CPPFLAGS) $(libgrubgcry_a_CFLAGS) $(CFLAGS) -c -o grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-init.o `test -f 'grub-core/lib/libgcrypt-grub/cipher/init.c' || echo '$(srcdir)/'`grub-core/lib/libgcrypt-grub/cipher/init.c - -grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-init.obj: grub-core/lib/libgcrypt-grub/cipher/init.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubgcry_a_CPPFLAGS) $(CPPFLAGS) $(libgrubgcry_a_CFLAGS) $(CFLAGS) -MT grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-init.obj -MD -MP -MF grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-init.Tpo -c -o grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-init.obj `if test -f 'grub-core/lib/libgcrypt-grub/cipher/init.c'; then $(CYGPATH_W) 'grub-core/lib/libgcrypt-grub/cipher/init.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/lib/libgcrypt-grub/cipher/init.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-init.Tpo grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/libgrubgcry_a-init.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/lib/libgcrypt-grub/cipher/init.c' object='grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-init.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubgcry_a_CPPFLAGS) $(CPPFLAGS) $(libgrubgcry_a_CFLAGS) $(CFLAGS) -c -o grub-core/lib/libgcrypt-grub/cipher/libgrubgcry_a-init.obj `if test -f 'grub-core/lib/libgcrypt-grub/cipher/init.c'; then $(CYGPATH_W) 'grub-core/lib/libgcrypt-grub/cipher/init.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/lib/libgcrypt-grub/cipher/init.c'; fi` - -util/libgrubkern_a-misc.o: util/misc.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -MT util/libgrubkern_a-misc.o -MD -MP -MF util/$(DEPDIR)/libgrubkern_a-misc.Tpo -c -o util/libgrubkern_a-misc.o `test -f 'util/misc.c' || echo '$(srcdir)/'`util/misc.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/libgrubkern_a-misc.Tpo util/$(DEPDIR)/libgrubkern_a-misc.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/misc.c' object='util/libgrubkern_a-misc.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -c -o util/libgrubkern_a-misc.o `test -f 'util/misc.c' || echo '$(srcdir)/'`util/misc.c - -util/libgrubkern_a-misc.obj: util/misc.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -MT util/libgrubkern_a-misc.obj -MD -MP -MF util/$(DEPDIR)/libgrubkern_a-misc.Tpo -c -o util/libgrubkern_a-misc.obj `if test -f 'util/misc.c'; then $(CYGPATH_W) 'util/misc.c'; else $(CYGPATH_W) '$(srcdir)/util/misc.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/libgrubkern_a-misc.Tpo util/$(DEPDIR)/libgrubkern_a-misc.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/misc.c' object='util/libgrubkern_a-misc.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -c -o util/libgrubkern_a-misc.obj `if test -f 'util/misc.c'; then $(CYGPATH_W) 'util/misc.c'; else $(CYGPATH_W) '$(srcdir)/util/misc.c'; fi` - -grub-core/kern/libgrubkern_a-command.o: grub-core/kern/command.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -MT grub-core/kern/libgrubkern_a-command.o -MD -MP -MF grub-core/kern/$(DEPDIR)/libgrubkern_a-command.Tpo -c -o grub-core/kern/libgrubkern_a-command.o `test -f 'grub-core/kern/command.c' || echo '$(srcdir)/'`grub-core/kern/command.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/kern/$(DEPDIR)/libgrubkern_a-command.Tpo grub-core/kern/$(DEPDIR)/libgrubkern_a-command.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/kern/command.c' object='grub-core/kern/libgrubkern_a-command.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -c -o grub-core/kern/libgrubkern_a-command.o `test -f 'grub-core/kern/command.c' || echo '$(srcdir)/'`grub-core/kern/command.c - -grub-core/kern/libgrubkern_a-command.obj: grub-core/kern/command.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -MT grub-core/kern/libgrubkern_a-command.obj -MD -MP -MF grub-core/kern/$(DEPDIR)/libgrubkern_a-command.Tpo -c -o grub-core/kern/libgrubkern_a-command.obj `if test -f 'grub-core/kern/command.c'; then $(CYGPATH_W) 'grub-core/kern/command.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/kern/command.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/kern/$(DEPDIR)/libgrubkern_a-command.Tpo grub-core/kern/$(DEPDIR)/libgrubkern_a-command.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/kern/command.c' object='grub-core/kern/libgrubkern_a-command.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -c -o grub-core/kern/libgrubkern_a-command.obj `if test -f 'grub-core/kern/command.c'; then $(CYGPATH_W) 'grub-core/kern/command.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/kern/command.c'; fi` - -grub-core/kern/libgrubkern_a-device.o: grub-core/kern/device.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -MT grub-core/kern/libgrubkern_a-device.o -MD -MP -MF grub-core/kern/$(DEPDIR)/libgrubkern_a-device.Tpo -c -o grub-core/kern/libgrubkern_a-device.o `test -f 'grub-core/kern/device.c' || echo '$(srcdir)/'`grub-core/kern/device.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/kern/$(DEPDIR)/libgrubkern_a-device.Tpo grub-core/kern/$(DEPDIR)/libgrubkern_a-device.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/kern/device.c' object='grub-core/kern/libgrubkern_a-device.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -c -o grub-core/kern/libgrubkern_a-device.o `test -f 'grub-core/kern/device.c' || echo '$(srcdir)/'`grub-core/kern/device.c - -grub-core/kern/libgrubkern_a-device.obj: grub-core/kern/device.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -MT grub-core/kern/libgrubkern_a-device.obj -MD -MP -MF grub-core/kern/$(DEPDIR)/libgrubkern_a-device.Tpo -c -o grub-core/kern/libgrubkern_a-device.obj `if test -f 'grub-core/kern/device.c'; then $(CYGPATH_W) 'grub-core/kern/device.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/kern/device.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/kern/$(DEPDIR)/libgrubkern_a-device.Tpo grub-core/kern/$(DEPDIR)/libgrubkern_a-device.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/kern/device.c' object='grub-core/kern/libgrubkern_a-device.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -c -o grub-core/kern/libgrubkern_a-device.obj `if test -f 'grub-core/kern/device.c'; then $(CYGPATH_W) 'grub-core/kern/device.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/kern/device.c'; fi` - -grub-core/kern/libgrubkern_a-disk.o: grub-core/kern/disk.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -MT grub-core/kern/libgrubkern_a-disk.o -MD -MP -MF grub-core/kern/$(DEPDIR)/libgrubkern_a-disk.Tpo -c -o grub-core/kern/libgrubkern_a-disk.o `test -f 'grub-core/kern/disk.c' || echo '$(srcdir)/'`grub-core/kern/disk.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/kern/$(DEPDIR)/libgrubkern_a-disk.Tpo grub-core/kern/$(DEPDIR)/libgrubkern_a-disk.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/kern/disk.c' object='grub-core/kern/libgrubkern_a-disk.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -c -o grub-core/kern/libgrubkern_a-disk.o `test -f 'grub-core/kern/disk.c' || echo '$(srcdir)/'`grub-core/kern/disk.c - -grub-core/kern/libgrubkern_a-disk.obj: grub-core/kern/disk.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -MT grub-core/kern/libgrubkern_a-disk.obj -MD -MP -MF grub-core/kern/$(DEPDIR)/libgrubkern_a-disk.Tpo -c -o grub-core/kern/libgrubkern_a-disk.obj `if test -f 'grub-core/kern/disk.c'; then $(CYGPATH_W) 'grub-core/kern/disk.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/kern/disk.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/kern/$(DEPDIR)/libgrubkern_a-disk.Tpo grub-core/kern/$(DEPDIR)/libgrubkern_a-disk.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/kern/disk.c' object='grub-core/kern/libgrubkern_a-disk.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -c -o grub-core/kern/libgrubkern_a-disk.obj `if test -f 'grub-core/kern/disk.c'; then $(CYGPATH_W) 'grub-core/kern/disk.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/kern/disk.c'; fi` - -grub-core/lib/libgrubkern_a-disk.o: grub-core/lib/disk.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -MT grub-core/lib/libgrubkern_a-disk.o -MD -MP -MF grub-core/lib/$(DEPDIR)/libgrubkern_a-disk.Tpo -c -o grub-core/lib/libgrubkern_a-disk.o `test -f 'grub-core/lib/disk.c' || echo '$(srcdir)/'`grub-core/lib/disk.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/lib/$(DEPDIR)/libgrubkern_a-disk.Tpo grub-core/lib/$(DEPDIR)/libgrubkern_a-disk.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/lib/disk.c' object='grub-core/lib/libgrubkern_a-disk.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -c -o grub-core/lib/libgrubkern_a-disk.o `test -f 'grub-core/lib/disk.c' || echo '$(srcdir)/'`grub-core/lib/disk.c - -grub-core/lib/libgrubkern_a-disk.obj: grub-core/lib/disk.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -MT grub-core/lib/libgrubkern_a-disk.obj -MD -MP -MF grub-core/lib/$(DEPDIR)/libgrubkern_a-disk.Tpo -c -o grub-core/lib/libgrubkern_a-disk.obj `if test -f 'grub-core/lib/disk.c'; then $(CYGPATH_W) 'grub-core/lib/disk.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/lib/disk.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/lib/$(DEPDIR)/libgrubkern_a-disk.Tpo grub-core/lib/$(DEPDIR)/libgrubkern_a-disk.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/lib/disk.c' object='grub-core/lib/libgrubkern_a-disk.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -c -o grub-core/lib/libgrubkern_a-disk.obj `if test -f 'grub-core/lib/disk.c'; then $(CYGPATH_W) 'grub-core/lib/disk.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/lib/disk.c'; fi` - -util/libgrubkern_a-getroot.o: util/getroot.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -MT util/libgrubkern_a-getroot.o -MD -MP -MF util/$(DEPDIR)/libgrubkern_a-getroot.Tpo -c -o util/libgrubkern_a-getroot.o `test -f 'util/getroot.c' || echo '$(srcdir)/'`util/getroot.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/libgrubkern_a-getroot.Tpo util/$(DEPDIR)/libgrubkern_a-getroot.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/getroot.c' object='util/libgrubkern_a-getroot.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -c -o util/libgrubkern_a-getroot.o `test -f 'util/getroot.c' || echo '$(srcdir)/'`util/getroot.c - -util/libgrubkern_a-getroot.obj: util/getroot.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -MT util/libgrubkern_a-getroot.obj -MD -MP -MF util/$(DEPDIR)/libgrubkern_a-getroot.Tpo -c -o util/libgrubkern_a-getroot.obj `if test -f 'util/getroot.c'; then $(CYGPATH_W) 'util/getroot.c'; else $(CYGPATH_W) '$(srcdir)/util/getroot.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/libgrubkern_a-getroot.Tpo util/$(DEPDIR)/libgrubkern_a-getroot.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/getroot.c' object='util/libgrubkern_a-getroot.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -c -o util/libgrubkern_a-getroot.obj `if test -f 'util/getroot.c'; then $(CYGPATH_W) 'util/getroot.c'; else $(CYGPATH_W) '$(srcdir)/util/getroot.c'; fi` - -grub-core/osdep/unix/libgrubkern_a-getroot.o: grub-core/osdep/unix/getroot.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -MT grub-core/osdep/unix/libgrubkern_a-getroot.o -MD -MP -MF grub-core/osdep/unix/$(DEPDIR)/libgrubkern_a-getroot.Tpo -c -o grub-core/osdep/unix/libgrubkern_a-getroot.o `test -f 'grub-core/osdep/unix/getroot.c' || echo '$(srcdir)/'`grub-core/osdep/unix/getroot.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/osdep/unix/$(DEPDIR)/libgrubkern_a-getroot.Tpo grub-core/osdep/unix/$(DEPDIR)/libgrubkern_a-getroot.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/osdep/unix/getroot.c' object='grub-core/osdep/unix/libgrubkern_a-getroot.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -c -o grub-core/osdep/unix/libgrubkern_a-getroot.o `test -f 'grub-core/osdep/unix/getroot.c' || echo '$(srcdir)/'`grub-core/osdep/unix/getroot.c - -grub-core/osdep/unix/libgrubkern_a-getroot.obj: grub-core/osdep/unix/getroot.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -MT grub-core/osdep/unix/libgrubkern_a-getroot.obj -MD -MP -MF grub-core/osdep/unix/$(DEPDIR)/libgrubkern_a-getroot.Tpo -c -o grub-core/osdep/unix/libgrubkern_a-getroot.obj `if test -f 'grub-core/osdep/unix/getroot.c'; then $(CYGPATH_W) 'grub-core/osdep/unix/getroot.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/osdep/unix/getroot.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/osdep/unix/$(DEPDIR)/libgrubkern_a-getroot.Tpo grub-core/osdep/unix/$(DEPDIR)/libgrubkern_a-getroot.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/osdep/unix/getroot.c' object='grub-core/osdep/unix/libgrubkern_a-getroot.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -c -o grub-core/osdep/unix/libgrubkern_a-getroot.obj `if test -f 'grub-core/osdep/unix/getroot.c'; then $(CYGPATH_W) 'grub-core/osdep/unix/getroot.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/osdep/unix/getroot.c'; fi` - -grub-core/osdep/libgrubkern_a-getroot.o: grub-core/osdep/getroot.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -MT grub-core/osdep/libgrubkern_a-getroot.o -MD -MP -MF grub-core/osdep/$(DEPDIR)/libgrubkern_a-getroot.Tpo -c -o grub-core/osdep/libgrubkern_a-getroot.o `test -f 'grub-core/osdep/getroot.c' || echo '$(srcdir)/'`grub-core/osdep/getroot.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/osdep/$(DEPDIR)/libgrubkern_a-getroot.Tpo grub-core/osdep/$(DEPDIR)/libgrubkern_a-getroot.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/osdep/getroot.c' object='grub-core/osdep/libgrubkern_a-getroot.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -c -o grub-core/osdep/libgrubkern_a-getroot.o `test -f 'grub-core/osdep/getroot.c' || echo '$(srcdir)/'`grub-core/osdep/getroot.c - -grub-core/osdep/libgrubkern_a-getroot.obj: grub-core/osdep/getroot.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -MT grub-core/osdep/libgrubkern_a-getroot.obj -MD -MP -MF grub-core/osdep/$(DEPDIR)/libgrubkern_a-getroot.Tpo -c -o grub-core/osdep/libgrubkern_a-getroot.obj `if test -f 'grub-core/osdep/getroot.c'; then $(CYGPATH_W) 'grub-core/osdep/getroot.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/osdep/getroot.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/osdep/$(DEPDIR)/libgrubkern_a-getroot.Tpo grub-core/osdep/$(DEPDIR)/libgrubkern_a-getroot.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/osdep/getroot.c' object='grub-core/osdep/libgrubkern_a-getroot.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -c -o grub-core/osdep/libgrubkern_a-getroot.obj `if test -f 'grub-core/osdep/getroot.c'; then $(CYGPATH_W) 'grub-core/osdep/getroot.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/osdep/getroot.c'; fi` - -grub-core/osdep/devmapper/libgrubkern_a-getroot.o: grub-core/osdep/devmapper/getroot.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -MT grub-core/osdep/devmapper/libgrubkern_a-getroot.o -MD -MP -MF grub-core/osdep/devmapper/$(DEPDIR)/libgrubkern_a-getroot.Tpo -c -o grub-core/osdep/devmapper/libgrubkern_a-getroot.o `test -f 'grub-core/osdep/devmapper/getroot.c' || echo '$(srcdir)/'`grub-core/osdep/devmapper/getroot.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/osdep/devmapper/$(DEPDIR)/libgrubkern_a-getroot.Tpo grub-core/osdep/devmapper/$(DEPDIR)/libgrubkern_a-getroot.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/osdep/devmapper/getroot.c' object='grub-core/osdep/devmapper/libgrubkern_a-getroot.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -c -o grub-core/osdep/devmapper/libgrubkern_a-getroot.o `test -f 'grub-core/osdep/devmapper/getroot.c' || echo '$(srcdir)/'`grub-core/osdep/devmapper/getroot.c - -grub-core/osdep/devmapper/libgrubkern_a-getroot.obj: grub-core/osdep/devmapper/getroot.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -MT grub-core/osdep/devmapper/libgrubkern_a-getroot.obj -MD -MP -MF grub-core/osdep/devmapper/$(DEPDIR)/libgrubkern_a-getroot.Tpo -c -o grub-core/osdep/devmapper/libgrubkern_a-getroot.obj `if test -f 'grub-core/osdep/devmapper/getroot.c'; then $(CYGPATH_W) 'grub-core/osdep/devmapper/getroot.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/osdep/devmapper/getroot.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/osdep/devmapper/$(DEPDIR)/libgrubkern_a-getroot.Tpo grub-core/osdep/devmapper/$(DEPDIR)/libgrubkern_a-getroot.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/osdep/devmapper/getroot.c' object='grub-core/osdep/devmapper/libgrubkern_a-getroot.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -c -o grub-core/osdep/devmapper/libgrubkern_a-getroot.obj `if test -f 'grub-core/osdep/devmapper/getroot.c'; then $(CYGPATH_W) 'grub-core/osdep/devmapper/getroot.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/osdep/devmapper/getroot.c'; fi` - -grub-core/osdep/libgrubkern_a-relpath.o: grub-core/osdep/relpath.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -MT grub-core/osdep/libgrubkern_a-relpath.o -MD -MP -MF grub-core/osdep/$(DEPDIR)/libgrubkern_a-relpath.Tpo -c -o grub-core/osdep/libgrubkern_a-relpath.o `test -f 'grub-core/osdep/relpath.c' || echo '$(srcdir)/'`grub-core/osdep/relpath.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/osdep/$(DEPDIR)/libgrubkern_a-relpath.Tpo grub-core/osdep/$(DEPDIR)/libgrubkern_a-relpath.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/osdep/relpath.c' object='grub-core/osdep/libgrubkern_a-relpath.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -c -o grub-core/osdep/libgrubkern_a-relpath.o `test -f 'grub-core/osdep/relpath.c' || echo '$(srcdir)/'`grub-core/osdep/relpath.c - -grub-core/osdep/libgrubkern_a-relpath.obj: grub-core/osdep/relpath.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -MT grub-core/osdep/libgrubkern_a-relpath.obj -MD -MP -MF grub-core/osdep/$(DEPDIR)/libgrubkern_a-relpath.Tpo -c -o grub-core/osdep/libgrubkern_a-relpath.obj `if test -f 'grub-core/osdep/relpath.c'; then $(CYGPATH_W) 'grub-core/osdep/relpath.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/osdep/relpath.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/osdep/$(DEPDIR)/libgrubkern_a-relpath.Tpo grub-core/osdep/$(DEPDIR)/libgrubkern_a-relpath.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/osdep/relpath.c' object='grub-core/osdep/libgrubkern_a-relpath.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -c -o grub-core/osdep/libgrubkern_a-relpath.obj `if test -f 'grub-core/osdep/relpath.c'; then $(CYGPATH_W) 'grub-core/osdep/relpath.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/osdep/relpath.c'; fi` - -grub-core/kern/emu/libgrubkern_a-hostdisk.o: grub-core/kern/emu/hostdisk.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -MT grub-core/kern/emu/libgrubkern_a-hostdisk.o -MD -MP -MF grub-core/kern/emu/$(DEPDIR)/libgrubkern_a-hostdisk.Tpo -c -o grub-core/kern/emu/libgrubkern_a-hostdisk.o `test -f 'grub-core/kern/emu/hostdisk.c' || echo '$(srcdir)/'`grub-core/kern/emu/hostdisk.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/kern/emu/$(DEPDIR)/libgrubkern_a-hostdisk.Tpo grub-core/kern/emu/$(DEPDIR)/libgrubkern_a-hostdisk.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/kern/emu/hostdisk.c' object='grub-core/kern/emu/libgrubkern_a-hostdisk.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -c -o grub-core/kern/emu/libgrubkern_a-hostdisk.o `test -f 'grub-core/kern/emu/hostdisk.c' || echo '$(srcdir)/'`grub-core/kern/emu/hostdisk.c - -grub-core/kern/emu/libgrubkern_a-hostdisk.obj: grub-core/kern/emu/hostdisk.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -MT grub-core/kern/emu/libgrubkern_a-hostdisk.obj -MD -MP -MF grub-core/kern/emu/$(DEPDIR)/libgrubkern_a-hostdisk.Tpo -c -o grub-core/kern/emu/libgrubkern_a-hostdisk.obj `if test -f 'grub-core/kern/emu/hostdisk.c'; then $(CYGPATH_W) 'grub-core/kern/emu/hostdisk.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/kern/emu/hostdisk.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/kern/emu/$(DEPDIR)/libgrubkern_a-hostdisk.Tpo grub-core/kern/emu/$(DEPDIR)/libgrubkern_a-hostdisk.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/kern/emu/hostdisk.c' object='grub-core/kern/emu/libgrubkern_a-hostdisk.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -c -o grub-core/kern/emu/libgrubkern_a-hostdisk.obj `if test -f 'grub-core/kern/emu/hostdisk.c'; then $(CYGPATH_W) 'grub-core/kern/emu/hostdisk.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/kern/emu/hostdisk.c'; fi` - -grub-core/osdep/devmapper/libgrubkern_a-hostdisk.o: grub-core/osdep/devmapper/hostdisk.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -MT grub-core/osdep/devmapper/libgrubkern_a-hostdisk.o -MD -MP -MF grub-core/osdep/devmapper/$(DEPDIR)/libgrubkern_a-hostdisk.Tpo -c -o grub-core/osdep/devmapper/libgrubkern_a-hostdisk.o `test -f 'grub-core/osdep/devmapper/hostdisk.c' || echo '$(srcdir)/'`grub-core/osdep/devmapper/hostdisk.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/osdep/devmapper/$(DEPDIR)/libgrubkern_a-hostdisk.Tpo grub-core/osdep/devmapper/$(DEPDIR)/libgrubkern_a-hostdisk.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/osdep/devmapper/hostdisk.c' object='grub-core/osdep/devmapper/libgrubkern_a-hostdisk.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -c -o grub-core/osdep/devmapper/libgrubkern_a-hostdisk.o `test -f 'grub-core/osdep/devmapper/hostdisk.c' || echo '$(srcdir)/'`grub-core/osdep/devmapper/hostdisk.c - -grub-core/osdep/devmapper/libgrubkern_a-hostdisk.obj: grub-core/osdep/devmapper/hostdisk.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -MT grub-core/osdep/devmapper/libgrubkern_a-hostdisk.obj -MD -MP -MF grub-core/osdep/devmapper/$(DEPDIR)/libgrubkern_a-hostdisk.Tpo -c -o grub-core/osdep/devmapper/libgrubkern_a-hostdisk.obj `if test -f 'grub-core/osdep/devmapper/hostdisk.c'; then $(CYGPATH_W) 'grub-core/osdep/devmapper/hostdisk.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/osdep/devmapper/hostdisk.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/osdep/devmapper/$(DEPDIR)/libgrubkern_a-hostdisk.Tpo grub-core/osdep/devmapper/$(DEPDIR)/libgrubkern_a-hostdisk.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/osdep/devmapper/hostdisk.c' object='grub-core/osdep/devmapper/libgrubkern_a-hostdisk.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -c -o grub-core/osdep/devmapper/libgrubkern_a-hostdisk.obj `if test -f 'grub-core/osdep/devmapper/hostdisk.c'; then $(CYGPATH_W) 'grub-core/osdep/devmapper/hostdisk.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/osdep/devmapper/hostdisk.c'; fi` - -grub-core/osdep/libgrubkern_a-hostdisk.o: grub-core/osdep/hostdisk.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -MT grub-core/osdep/libgrubkern_a-hostdisk.o -MD -MP -MF grub-core/osdep/$(DEPDIR)/libgrubkern_a-hostdisk.Tpo -c -o grub-core/osdep/libgrubkern_a-hostdisk.o `test -f 'grub-core/osdep/hostdisk.c' || echo '$(srcdir)/'`grub-core/osdep/hostdisk.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/osdep/$(DEPDIR)/libgrubkern_a-hostdisk.Tpo grub-core/osdep/$(DEPDIR)/libgrubkern_a-hostdisk.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/osdep/hostdisk.c' object='grub-core/osdep/libgrubkern_a-hostdisk.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -c -o grub-core/osdep/libgrubkern_a-hostdisk.o `test -f 'grub-core/osdep/hostdisk.c' || echo '$(srcdir)/'`grub-core/osdep/hostdisk.c - -grub-core/osdep/libgrubkern_a-hostdisk.obj: grub-core/osdep/hostdisk.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -MT grub-core/osdep/libgrubkern_a-hostdisk.obj -MD -MP -MF grub-core/osdep/$(DEPDIR)/libgrubkern_a-hostdisk.Tpo -c -o grub-core/osdep/libgrubkern_a-hostdisk.obj `if test -f 'grub-core/osdep/hostdisk.c'; then $(CYGPATH_W) 'grub-core/osdep/hostdisk.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/osdep/hostdisk.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/osdep/$(DEPDIR)/libgrubkern_a-hostdisk.Tpo grub-core/osdep/$(DEPDIR)/libgrubkern_a-hostdisk.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/osdep/hostdisk.c' object='grub-core/osdep/libgrubkern_a-hostdisk.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -c -o grub-core/osdep/libgrubkern_a-hostdisk.obj `if test -f 'grub-core/osdep/hostdisk.c'; then $(CYGPATH_W) 'grub-core/osdep/hostdisk.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/osdep/hostdisk.c'; fi` - -grub-core/osdep/unix/libgrubkern_a-hostdisk.o: grub-core/osdep/unix/hostdisk.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -MT grub-core/osdep/unix/libgrubkern_a-hostdisk.o -MD -MP -MF grub-core/osdep/unix/$(DEPDIR)/libgrubkern_a-hostdisk.Tpo -c -o grub-core/osdep/unix/libgrubkern_a-hostdisk.o `test -f 'grub-core/osdep/unix/hostdisk.c' || echo '$(srcdir)/'`grub-core/osdep/unix/hostdisk.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/osdep/unix/$(DEPDIR)/libgrubkern_a-hostdisk.Tpo grub-core/osdep/unix/$(DEPDIR)/libgrubkern_a-hostdisk.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/osdep/unix/hostdisk.c' object='grub-core/osdep/unix/libgrubkern_a-hostdisk.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -c -o grub-core/osdep/unix/libgrubkern_a-hostdisk.o `test -f 'grub-core/osdep/unix/hostdisk.c' || echo '$(srcdir)/'`grub-core/osdep/unix/hostdisk.c - -grub-core/osdep/unix/libgrubkern_a-hostdisk.obj: grub-core/osdep/unix/hostdisk.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -MT grub-core/osdep/unix/libgrubkern_a-hostdisk.obj -MD -MP -MF grub-core/osdep/unix/$(DEPDIR)/libgrubkern_a-hostdisk.Tpo -c -o grub-core/osdep/unix/libgrubkern_a-hostdisk.obj `if test -f 'grub-core/osdep/unix/hostdisk.c'; then $(CYGPATH_W) 'grub-core/osdep/unix/hostdisk.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/osdep/unix/hostdisk.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/osdep/unix/$(DEPDIR)/libgrubkern_a-hostdisk.Tpo grub-core/osdep/unix/$(DEPDIR)/libgrubkern_a-hostdisk.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/osdep/unix/hostdisk.c' object='grub-core/osdep/unix/libgrubkern_a-hostdisk.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -c -o grub-core/osdep/unix/libgrubkern_a-hostdisk.obj `if test -f 'grub-core/osdep/unix/hostdisk.c'; then $(CYGPATH_W) 'grub-core/osdep/unix/hostdisk.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/osdep/unix/hostdisk.c'; fi` - -grub-core/osdep/libgrubkern_a-exec.o: grub-core/osdep/exec.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -MT grub-core/osdep/libgrubkern_a-exec.o -MD -MP -MF grub-core/osdep/$(DEPDIR)/libgrubkern_a-exec.Tpo -c -o grub-core/osdep/libgrubkern_a-exec.o `test -f 'grub-core/osdep/exec.c' || echo '$(srcdir)/'`grub-core/osdep/exec.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/osdep/$(DEPDIR)/libgrubkern_a-exec.Tpo grub-core/osdep/$(DEPDIR)/libgrubkern_a-exec.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/osdep/exec.c' object='grub-core/osdep/libgrubkern_a-exec.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -c -o grub-core/osdep/libgrubkern_a-exec.o `test -f 'grub-core/osdep/exec.c' || echo '$(srcdir)/'`grub-core/osdep/exec.c - -grub-core/osdep/libgrubkern_a-exec.obj: grub-core/osdep/exec.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -MT grub-core/osdep/libgrubkern_a-exec.obj -MD -MP -MF grub-core/osdep/$(DEPDIR)/libgrubkern_a-exec.Tpo -c -o grub-core/osdep/libgrubkern_a-exec.obj `if test -f 'grub-core/osdep/exec.c'; then $(CYGPATH_W) 'grub-core/osdep/exec.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/osdep/exec.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/osdep/$(DEPDIR)/libgrubkern_a-exec.Tpo grub-core/osdep/$(DEPDIR)/libgrubkern_a-exec.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/osdep/exec.c' object='grub-core/osdep/libgrubkern_a-exec.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -c -o grub-core/osdep/libgrubkern_a-exec.obj `if test -f 'grub-core/osdep/exec.c'; then $(CYGPATH_W) 'grub-core/osdep/exec.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/osdep/exec.c'; fi` - -grub-core/osdep/libgrubkern_a-sleep.o: grub-core/osdep/sleep.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -MT grub-core/osdep/libgrubkern_a-sleep.o -MD -MP -MF grub-core/osdep/$(DEPDIR)/libgrubkern_a-sleep.Tpo -c -o grub-core/osdep/libgrubkern_a-sleep.o `test -f 'grub-core/osdep/sleep.c' || echo '$(srcdir)/'`grub-core/osdep/sleep.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/osdep/$(DEPDIR)/libgrubkern_a-sleep.Tpo grub-core/osdep/$(DEPDIR)/libgrubkern_a-sleep.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/osdep/sleep.c' object='grub-core/osdep/libgrubkern_a-sleep.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -c -o grub-core/osdep/libgrubkern_a-sleep.o `test -f 'grub-core/osdep/sleep.c' || echo '$(srcdir)/'`grub-core/osdep/sleep.c - -grub-core/osdep/libgrubkern_a-sleep.obj: grub-core/osdep/sleep.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -MT grub-core/osdep/libgrubkern_a-sleep.obj -MD -MP -MF grub-core/osdep/$(DEPDIR)/libgrubkern_a-sleep.Tpo -c -o grub-core/osdep/libgrubkern_a-sleep.obj `if test -f 'grub-core/osdep/sleep.c'; then $(CYGPATH_W) 'grub-core/osdep/sleep.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/osdep/sleep.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/osdep/$(DEPDIR)/libgrubkern_a-sleep.Tpo grub-core/osdep/$(DEPDIR)/libgrubkern_a-sleep.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/osdep/sleep.c' object='grub-core/osdep/libgrubkern_a-sleep.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -c -o grub-core/osdep/libgrubkern_a-sleep.obj `if test -f 'grub-core/osdep/sleep.c'; then $(CYGPATH_W) 'grub-core/osdep/sleep.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/osdep/sleep.c'; fi` - -grub-core/osdep/libgrubkern_a-password.o: grub-core/osdep/password.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -MT grub-core/osdep/libgrubkern_a-password.o -MD -MP -MF grub-core/osdep/$(DEPDIR)/libgrubkern_a-password.Tpo -c -o grub-core/osdep/libgrubkern_a-password.o `test -f 'grub-core/osdep/password.c' || echo '$(srcdir)/'`grub-core/osdep/password.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/osdep/$(DEPDIR)/libgrubkern_a-password.Tpo grub-core/osdep/$(DEPDIR)/libgrubkern_a-password.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/osdep/password.c' object='grub-core/osdep/libgrubkern_a-password.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -c -o grub-core/osdep/libgrubkern_a-password.o `test -f 'grub-core/osdep/password.c' || echo '$(srcdir)/'`grub-core/osdep/password.c - -grub-core/osdep/libgrubkern_a-password.obj: grub-core/osdep/password.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -MT grub-core/osdep/libgrubkern_a-password.obj -MD -MP -MF grub-core/osdep/$(DEPDIR)/libgrubkern_a-password.Tpo -c -o grub-core/osdep/libgrubkern_a-password.obj `if test -f 'grub-core/osdep/password.c'; then $(CYGPATH_W) 'grub-core/osdep/password.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/osdep/password.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/osdep/$(DEPDIR)/libgrubkern_a-password.Tpo grub-core/osdep/$(DEPDIR)/libgrubkern_a-password.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/osdep/password.c' object='grub-core/osdep/libgrubkern_a-password.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -c -o grub-core/osdep/libgrubkern_a-password.obj `if test -f 'grub-core/osdep/password.c'; then $(CYGPATH_W) 'grub-core/osdep/password.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/osdep/password.c'; fi` - -grub-core/kern/emu/libgrubkern_a-misc.o: grub-core/kern/emu/misc.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -MT grub-core/kern/emu/libgrubkern_a-misc.o -MD -MP -MF grub-core/kern/emu/$(DEPDIR)/libgrubkern_a-misc.Tpo -c -o grub-core/kern/emu/libgrubkern_a-misc.o `test -f 'grub-core/kern/emu/misc.c' || echo '$(srcdir)/'`grub-core/kern/emu/misc.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/kern/emu/$(DEPDIR)/libgrubkern_a-misc.Tpo grub-core/kern/emu/$(DEPDIR)/libgrubkern_a-misc.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/kern/emu/misc.c' object='grub-core/kern/emu/libgrubkern_a-misc.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -c -o grub-core/kern/emu/libgrubkern_a-misc.o `test -f 'grub-core/kern/emu/misc.c' || echo '$(srcdir)/'`grub-core/kern/emu/misc.c - -grub-core/kern/emu/libgrubkern_a-misc.obj: grub-core/kern/emu/misc.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -MT grub-core/kern/emu/libgrubkern_a-misc.obj -MD -MP -MF grub-core/kern/emu/$(DEPDIR)/libgrubkern_a-misc.Tpo -c -o grub-core/kern/emu/libgrubkern_a-misc.obj `if test -f 'grub-core/kern/emu/misc.c'; then $(CYGPATH_W) 'grub-core/kern/emu/misc.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/kern/emu/misc.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/kern/emu/$(DEPDIR)/libgrubkern_a-misc.Tpo grub-core/kern/emu/$(DEPDIR)/libgrubkern_a-misc.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/kern/emu/misc.c' object='grub-core/kern/emu/libgrubkern_a-misc.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -c -o grub-core/kern/emu/libgrubkern_a-misc.obj `if test -f 'grub-core/kern/emu/misc.c'; then $(CYGPATH_W) 'grub-core/kern/emu/misc.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/kern/emu/misc.c'; fi` - -grub-core/kern/emu/libgrubkern_a-mm.o: grub-core/kern/emu/mm.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -MT grub-core/kern/emu/libgrubkern_a-mm.o -MD -MP -MF grub-core/kern/emu/$(DEPDIR)/libgrubkern_a-mm.Tpo -c -o grub-core/kern/emu/libgrubkern_a-mm.o `test -f 'grub-core/kern/emu/mm.c' || echo '$(srcdir)/'`grub-core/kern/emu/mm.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/kern/emu/$(DEPDIR)/libgrubkern_a-mm.Tpo grub-core/kern/emu/$(DEPDIR)/libgrubkern_a-mm.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/kern/emu/mm.c' object='grub-core/kern/emu/libgrubkern_a-mm.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -c -o grub-core/kern/emu/libgrubkern_a-mm.o `test -f 'grub-core/kern/emu/mm.c' || echo '$(srcdir)/'`grub-core/kern/emu/mm.c - -grub-core/kern/emu/libgrubkern_a-mm.obj: grub-core/kern/emu/mm.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -MT grub-core/kern/emu/libgrubkern_a-mm.obj -MD -MP -MF grub-core/kern/emu/$(DEPDIR)/libgrubkern_a-mm.Tpo -c -o grub-core/kern/emu/libgrubkern_a-mm.obj `if test -f 'grub-core/kern/emu/mm.c'; then $(CYGPATH_W) 'grub-core/kern/emu/mm.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/kern/emu/mm.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/kern/emu/$(DEPDIR)/libgrubkern_a-mm.Tpo grub-core/kern/emu/$(DEPDIR)/libgrubkern_a-mm.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/kern/emu/mm.c' object='grub-core/kern/emu/libgrubkern_a-mm.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -c -o grub-core/kern/emu/libgrubkern_a-mm.obj `if test -f 'grub-core/kern/emu/mm.c'; then $(CYGPATH_W) 'grub-core/kern/emu/mm.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/kern/emu/mm.c'; fi` - -grub-core/kern/libgrubkern_a-env.o: grub-core/kern/env.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -MT grub-core/kern/libgrubkern_a-env.o -MD -MP -MF grub-core/kern/$(DEPDIR)/libgrubkern_a-env.Tpo -c -o grub-core/kern/libgrubkern_a-env.o `test -f 'grub-core/kern/env.c' || echo '$(srcdir)/'`grub-core/kern/env.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/kern/$(DEPDIR)/libgrubkern_a-env.Tpo grub-core/kern/$(DEPDIR)/libgrubkern_a-env.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/kern/env.c' object='grub-core/kern/libgrubkern_a-env.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -c -o grub-core/kern/libgrubkern_a-env.o `test -f 'grub-core/kern/env.c' || echo '$(srcdir)/'`grub-core/kern/env.c - -grub-core/kern/libgrubkern_a-env.obj: grub-core/kern/env.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -MT grub-core/kern/libgrubkern_a-env.obj -MD -MP -MF grub-core/kern/$(DEPDIR)/libgrubkern_a-env.Tpo -c -o grub-core/kern/libgrubkern_a-env.obj `if test -f 'grub-core/kern/env.c'; then $(CYGPATH_W) 'grub-core/kern/env.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/kern/env.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/kern/$(DEPDIR)/libgrubkern_a-env.Tpo grub-core/kern/$(DEPDIR)/libgrubkern_a-env.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/kern/env.c' object='grub-core/kern/libgrubkern_a-env.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -c -o grub-core/kern/libgrubkern_a-env.obj `if test -f 'grub-core/kern/env.c'; then $(CYGPATH_W) 'grub-core/kern/env.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/kern/env.c'; fi` - -grub-core/kern/libgrubkern_a-err.o: grub-core/kern/err.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -MT grub-core/kern/libgrubkern_a-err.o -MD -MP -MF grub-core/kern/$(DEPDIR)/libgrubkern_a-err.Tpo -c -o grub-core/kern/libgrubkern_a-err.o `test -f 'grub-core/kern/err.c' || echo '$(srcdir)/'`grub-core/kern/err.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/kern/$(DEPDIR)/libgrubkern_a-err.Tpo grub-core/kern/$(DEPDIR)/libgrubkern_a-err.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/kern/err.c' object='grub-core/kern/libgrubkern_a-err.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -c -o grub-core/kern/libgrubkern_a-err.o `test -f 'grub-core/kern/err.c' || echo '$(srcdir)/'`grub-core/kern/err.c - -grub-core/kern/libgrubkern_a-err.obj: grub-core/kern/err.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -MT grub-core/kern/libgrubkern_a-err.obj -MD -MP -MF grub-core/kern/$(DEPDIR)/libgrubkern_a-err.Tpo -c -o grub-core/kern/libgrubkern_a-err.obj `if test -f 'grub-core/kern/err.c'; then $(CYGPATH_W) 'grub-core/kern/err.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/kern/err.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/kern/$(DEPDIR)/libgrubkern_a-err.Tpo grub-core/kern/$(DEPDIR)/libgrubkern_a-err.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/kern/err.c' object='grub-core/kern/libgrubkern_a-err.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -c -o grub-core/kern/libgrubkern_a-err.obj `if test -f 'grub-core/kern/err.c'; then $(CYGPATH_W) 'grub-core/kern/err.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/kern/err.c'; fi` - -grub-core/kern/libgrubkern_a-file.o: grub-core/kern/file.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -MT grub-core/kern/libgrubkern_a-file.o -MD -MP -MF grub-core/kern/$(DEPDIR)/libgrubkern_a-file.Tpo -c -o grub-core/kern/libgrubkern_a-file.o `test -f 'grub-core/kern/file.c' || echo '$(srcdir)/'`grub-core/kern/file.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/kern/$(DEPDIR)/libgrubkern_a-file.Tpo grub-core/kern/$(DEPDIR)/libgrubkern_a-file.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/kern/file.c' object='grub-core/kern/libgrubkern_a-file.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -c -o grub-core/kern/libgrubkern_a-file.o `test -f 'grub-core/kern/file.c' || echo '$(srcdir)/'`grub-core/kern/file.c - -grub-core/kern/libgrubkern_a-file.obj: grub-core/kern/file.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -MT grub-core/kern/libgrubkern_a-file.obj -MD -MP -MF grub-core/kern/$(DEPDIR)/libgrubkern_a-file.Tpo -c -o grub-core/kern/libgrubkern_a-file.obj `if test -f 'grub-core/kern/file.c'; then $(CYGPATH_W) 'grub-core/kern/file.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/kern/file.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/kern/$(DEPDIR)/libgrubkern_a-file.Tpo grub-core/kern/$(DEPDIR)/libgrubkern_a-file.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/kern/file.c' object='grub-core/kern/libgrubkern_a-file.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -c -o grub-core/kern/libgrubkern_a-file.obj `if test -f 'grub-core/kern/file.c'; then $(CYGPATH_W) 'grub-core/kern/file.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/kern/file.c'; fi` - -grub-core/kern/libgrubkern_a-fs.o: grub-core/kern/fs.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -MT grub-core/kern/libgrubkern_a-fs.o -MD -MP -MF grub-core/kern/$(DEPDIR)/libgrubkern_a-fs.Tpo -c -o grub-core/kern/libgrubkern_a-fs.o `test -f 'grub-core/kern/fs.c' || echo '$(srcdir)/'`grub-core/kern/fs.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/kern/$(DEPDIR)/libgrubkern_a-fs.Tpo grub-core/kern/$(DEPDIR)/libgrubkern_a-fs.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/kern/fs.c' object='grub-core/kern/libgrubkern_a-fs.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -c -o grub-core/kern/libgrubkern_a-fs.o `test -f 'grub-core/kern/fs.c' || echo '$(srcdir)/'`grub-core/kern/fs.c - -grub-core/kern/libgrubkern_a-fs.obj: grub-core/kern/fs.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -MT grub-core/kern/libgrubkern_a-fs.obj -MD -MP -MF grub-core/kern/$(DEPDIR)/libgrubkern_a-fs.Tpo -c -o grub-core/kern/libgrubkern_a-fs.obj `if test -f 'grub-core/kern/fs.c'; then $(CYGPATH_W) 'grub-core/kern/fs.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/kern/fs.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/kern/$(DEPDIR)/libgrubkern_a-fs.Tpo grub-core/kern/$(DEPDIR)/libgrubkern_a-fs.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/kern/fs.c' object='grub-core/kern/libgrubkern_a-fs.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -c -o grub-core/kern/libgrubkern_a-fs.obj `if test -f 'grub-core/kern/fs.c'; then $(CYGPATH_W) 'grub-core/kern/fs.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/kern/fs.c'; fi` - -grub-core/kern/libgrubkern_a-list.o: grub-core/kern/list.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -MT grub-core/kern/libgrubkern_a-list.o -MD -MP -MF grub-core/kern/$(DEPDIR)/libgrubkern_a-list.Tpo -c -o grub-core/kern/libgrubkern_a-list.o `test -f 'grub-core/kern/list.c' || echo '$(srcdir)/'`grub-core/kern/list.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/kern/$(DEPDIR)/libgrubkern_a-list.Tpo grub-core/kern/$(DEPDIR)/libgrubkern_a-list.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/kern/list.c' object='grub-core/kern/libgrubkern_a-list.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -c -o grub-core/kern/libgrubkern_a-list.o `test -f 'grub-core/kern/list.c' || echo '$(srcdir)/'`grub-core/kern/list.c - -grub-core/kern/libgrubkern_a-list.obj: grub-core/kern/list.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -MT grub-core/kern/libgrubkern_a-list.obj -MD -MP -MF grub-core/kern/$(DEPDIR)/libgrubkern_a-list.Tpo -c -o grub-core/kern/libgrubkern_a-list.obj `if test -f 'grub-core/kern/list.c'; then $(CYGPATH_W) 'grub-core/kern/list.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/kern/list.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/kern/$(DEPDIR)/libgrubkern_a-list.Tpo grub-core/kern/$(DEPDIR)/libgrubkern_a-list.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/kern/list.c' object='grub-core/kern/libgrubkern_a-list.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -c -o grub-core/kern/libgrubkern_a-list.obj `if test -f 'grub-core/kern/list.c'; then $(CYGPATH_W) 'grub-core/kern/list.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/kern/list.c'; fi` - -grub-core/kern/libgrubkern_a-misc.o: grub-core/kern/misc.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -MT grub-core/kern/libgrubkern_a-misc.o -MD -MP -MF grub-core/kern/$(DEPDIR)/libgrubkern_a-misc.Tpo -c -o grub-core/kern/libgrubkern_a-misc.o `test -f 'grub-core/kern/misc.c' || echo '$(srcdir)/'`grub-core/kern/misc.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/kern/$(DEPDIR)/libgrubkern_a-misc.Tpo grub-core/kern/$(DEPDIR)/libgrubkern_a-misc.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/kern/misc.c' object='grub-core/kern/libgrubkern_a-misc.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -c -o grub-core/kern/libgrubkern_a-misc.o `test -f 'grub-core/kern/misc.c' || echo '$(srcdir)/'`grub-core/kern/misc.c - -grub-core/kern/libgrubkern_a-misc.obj: grub-core/kern/misc.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -MT grub-core/kern/libgrubkern_a-misc.obj -MD -MP -MF grub-core/kern/$(DEPDIR)/libgrubkern_a-misc.Tpo -c -o grub-core/kern/libgrubkern_a-misc.obj `if test -f 'grub-core/kern/misc.c'; then $(CYGPATH_W) 'grub-core/kern/misc.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/kern/misc.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/kern/$(DEPDIR)/libgrubkern_a-misc.Tpo grub-core/kern/$(DEPDIR)/libgrubkern_a-misc.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/kern/misc.c' object='grub-core/kern/libgrubkern_a-misc.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -c -o grub-core/kern/libgrubkern_a-misc.obj `if test -f 'grub-core/kern/misc.c'; then $(CYGPATH_W) 'grub-core/kern/misc.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/kern/misc.c'; fi` - -grub-core/kern/libgrubkern_a-partition.o: grub-core/kern/partition.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -MT grub-core/kern/libgrubkern_a-partition.o -MD -MP -MF grub-core/kern/$(DEPDIR)/libgrubkern_a-partition.Tpo -c -o grub-core/kern/libgrubkern_a-partition.o `test -f 'grub-core/kern/partition.c' || echo '$(srcdir)/'`grub-core/kern/partition.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/kern/$(DEPDIR)/libgrubkern_a-partition.Tpo grub-core/kern/$(DEPDIR)/libgrubkern_a-partition.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/kern/partition.c' object='grub-core/kern/libgrubkern_a-partition.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -c -o grub-core/kern/libgrubkern_a-partition.o `test -f 'grub-core/kern/partition.c' || echo '$(srcdir)/'`grub-core/kern/partition.c - -grub-core/kern/libgrubkern_a-partition.obj: grub-core/kern/partition.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -MT grub-core/kern/libgrubkern_a-partition.obj -MD -MP -MF grub-core/kern/$(DEPDIR)/libgrubkern_a-partition.Tpo -c -o grub-core/kern/libgrubkern_a-partition.obj `if test -f 'grub-core/kern/partition.c'; then $(CYGPATH_W) 'grub-core/kern/partition.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/kern/partition.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/kern/$(DEPDIR)/libgrubkern_a-partition.Tpo grub-core/kern/$(DEPDIR)/libgrubkern_a-partition.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/kern/partition.c' object='grub-core/kern/libgrubkern_a-partition.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -c -o grub-core/kern/libgrubkern_a-partition.obj `if test -f 'grub-core/kern/partition.c'; then $(CYGPATH_W) 'grub-core/kern/partition.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/kern/partition.c'; fi` - -grub-core/lib/libgrubkern_a-crypto.o: grub-core/lib/crypto.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -MT grub-core/lib/libgrubkern_a-crypto.o -MD -MP -MF grub-core/lib/$(DEPDIR)/libgrubkern_a-crypto.Tpo -c -o grub-core/lib/libgrubkern_a-crypto.o `test -f 'grub-core/lib/crypto.c' || echo '$(srcdir)/'`grub-core/lib/crypto.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/lib/$(DEPDIR)/libgrubkern_a-crypto.Tpo grub-core/lib/$(DEPDIR)/libgrubkern_a-crypto.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/lib/crypto.c' object='grub-core/lib/libgrubkern_a-crypto.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -c -o grub-core/lib/libgrubkern_a-crypto.o `test -f 'grub-core/lib/crypto.c' || echo '$(srcdir)/'`grub-core/lib/crypto.c - -grub-core/lib/libgrubkern_a-crypto.obj: grub-core/lib/crypto.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -MT grub-core/lib/libgrubkern_a-crypto.obj -MD -MP -MF grub-core/lib/$(DEPDIR)/libgrubkern_a-crypto.Tpo -c -o grub-core/lib/libgrubkern_a-crypto.obj `if test -f 'grub-core/lib/crypto.c'; then $(CYGPATH_W) 'grub-core/lib/crypto.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/lib/crypto.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/lib/$(DEPDIR)/libgrubkern_a-crypto.Tpo grub-core/lib/$(DEPDIR)/libgrubkern_a-crypto.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/lib/crypto.c' object='grub-core/lib/libgrubkern_a-crypto.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -c -o grub-core/lib/libgrubkern_a-crypto.obj `if test -f 'grub-core/lib/crypto.c'; then $(CYGPATH_W) 'grub-core/lib/crypto.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/lib/crypto.c'; fi` - -grub-core/disk/libgrubkern_a-luks.o: grub-core/disk/luks.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -MT grub-core/disk/libgrubkern_a-luks.o -MD -MP -MF grub-core/disk/$(DEPDIR)/libgrubkern_a-luks.Tpo -c -o grub-core/disk/libgrubkern_a-luks.o `test -f 'grub-core/disk/luks.c' || echo '$(srcdir)/'`grub-core/disk/luks.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/disk/$(DEPDIR)/libgrubkern_a-luks.Tpo grub-core/disk/$(DEPDIR)/libgrubkern_a-luks.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/disk/luks.c' object='grub-core/disk/libgrubkern_a-luks.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -c -o grub-core/disk/libgrubkern_a-luks.o `test -f 'grub-core/disk/luks.c' || echo '$(srcdir)/'`grub-core/disk/luks.c - -grub-core/disk/libgrubkern_a-luks.obj: grub-core/disk/luks.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -MT grub-core/disk/libgrubkern_a-luks.obj -MD -MP -MF grub-core/disk/$(DEPDIR)/libgrubkern_a-luks.Tpo -c -o grub-core/disk/libgrubkern_a-luks.obj `if test -f 'grub-core/disk/luks.c'; then $(CYGPATH_W) 'grub-core/disk/luks.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/disk/luks.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/disk/$(DEPDIR)/libgrubkern_a-luks.Tpo grub-core/disk/$(DEPDIR)/libgrubkern_a-luks.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/disk/luks.c' object='grub-core/disk/libgrubkern_a-luks.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -c -o grub-core/disk/libgrubkern_a-luks.obj `if test -f 'grub-core/disk/luks.c'; then $(CYGPATH_W) 'grub-core/disk/luks.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/disk/luks.c'; fi` - -grub-core/disk/libgrubkern_a-geli.o: grub-core/disk/geli.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -MT grub-core/disk/libgrubkern_a-geli.o -MD -MP -MF grub-core/disk/$(DEPDIR)/libgrubkern_a-geli.Tpo -c -o grub-core/disk/libgrubkern_a-geli.o `test -f 'grub-core/disk/geli.c' || echo '$(srcdir)/'`grub-core/disk/geli.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/disk/$(DEPDIR)/libgrubkern_a-geli.Tpo grub-core/disk/$(DEPDIR)/libgrubkern_a-geli.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/disk/geli.c' object='grub-core/disk/libgrubkern_a-geli.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -c -o grub-core/disk/libgrubkern_a-geli.o `test -f 'grub-core/disk/geli.c' || echo '$(srcdir)/'`grub-core/disk/geli.c - -grub-core/disk/libgrubkern_a-geli.obj: grub-core/disk/geli.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -MT grub-core/disk/libgrubkern_a-geli.obj -MD -MP -MF grub-core/disk/$(DEPDIR)/libgrubkern_a-geli.Tpo -c -o grub-core/disk/libgrubkern_a-geli.obj `if test -f 'grub-core/disk/geli.c'; then $(CYGPATH_W) 'grub-core/disk/geli.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/disk/geli.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/disk/$(DEPDIR)/libgrubkern_a-geli.Tpo grub-core/disk/$(DEPDIR)/libgrubkern_a-geli.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/disk/geli.c' object='grub-core/disk/libgrubkern_a-geli.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -c -o grub-core/disk/libgrubkern_a-geli.obj `if test -f 'grub-core/disk/geli.c'; then $(CYGPATH_W) 'grub-core/disk/geli.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/disk/geli.c'; fi` - -grub-core/disk/libgrubkern_a-cryptodisk.o: grub-core/disk/cryptodisk.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -MT grub-core/disk/libgrubkern_a-cryptodisk.o -MD -MP -MF grub-core/disk/$(DEPDIR)/libgrubkern_a-cryptodisk.Tpo -c -o grub-core/disk/libgrubkern_a-cryptodisk.o `test -f 'grub-core/disk/cryptodisk.c' || echo '$(srcdir)/'`grub-core/disk/cryptodisk.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/disk/$(DEPDIR)/libgrubkern_a-cryptodisk.Tpo grub-core/disk/$(DEPDIR)/libgrubkern_a-cryptodisk.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/disk/cryptodisk.c' object='grub-core/disk/libgrubkern_a-cryptodisk.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -c -o grub-core/disk/libgrubkern_a-cryptodisk.o `test -f 'grub-core/disk/cryptodisk.c' || echo '$(srcdir)/'`grub-core/disk/cryptodisk.c - -grub-core/disk/libgrubkern_a-cryptodisk.obj: grub-core/disk/cryptodisk.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -MT grub-core/disk/libgrubkern_a-cryptodisk.obj -MD -MP -MF grub-core/disk/$(DEPDIR)/libgrubkern_a-cryptodisk.Tpo -c -o grub-core/disk/libgrubkern_a-cryptodisk.obj `if test -f 'grub-core/disk/cryptodisk.c'; then $(CYGPATH_W) 'grub-core/disk/cryptodisk.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/disk/cryptodisk.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/disk/$(DEPDIR)/libgrubkern_a-cryptodisk.Tpo grub-core/disk/$(DEPDIR)/libgrubkern_a-cryptodisk.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/disk/cryptodisk.c' object='grub-core/disk/libgrubkern_a-cryptodisk.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -c -o grub-core/disk/libgrubkern_a-cryptodisk.obj `if test -f 'grub-core/disk/cryptodisk.c'; then $(CYGPATH_W) 'grub-core/disk/cryptodisk.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/disk/cryptodisk.c'; fi` - -grub-core/disk/libgrubkern_a-AFSplitter.o: grub-core/disk/AFSplitter.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -MT grub-core/disk/libgrubkern_a-AFSplitter.o -MD -MP -MF grub-core/disk/$(DEPDIR)/libgrubkern_a-AFSplitter.Tpo -c -o grub-core/disk/libgrubkern_a-AFSplitter.o `test -f 'grub-core/disk/AFSplitter.c' || echo '$(srcdir)/'`grub-core/disk/AFSplitter.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/disk/$(DEPDIR)/libgrubkern_a-AFSplitter.Tpo grub-core/disk/$(DEPDIR)/libgrubkern_a-AFSplitter.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/disk/AFSplitter.c' object='grub-core/disk/libgrubkern_a-AFSplitter.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -c -o grub-core/disk/libgrubkern_a-AFSplitter.o `test -f 'grub-core/disk/AFSplitter.c' || echo '$(srcdir)/'`grub-core/disk/AFSplitter.c - -grub-core/disk/libgrubkern_a-AFSplitter.obj: grub-core/disk/AFSplitter.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -MT grub-core/disk/libgrubkern_a-AFSplitter.obj -MD -MP -MF grub-core/disk/$(DEPDIR)/libgrubkern_a-AFSplitter.Tpo -c -o grub-core/disk/libgrubkern_a-AFSplitter.obj `if test -f 'grub-core/disk/AFSplitter.c'; then $(CYGPATH_W) 'grub-core/disk/AFSplitter.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/disk/AFSplitter.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/disk/$(DEPDIR)/libgrubkern_a-AFSplitter.Tpo grub-core/disk/$(DEPDIR)/libgrubkern_a-AFSplitter.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/disk/AFSplitter.c' object='grub-core/disk/libgrubkern_a-AFSplitter.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -c -o grub-core/disk/libgrubkern_a-AFSplitter.obj `if test -f 'grub-core/disk/AFSplitter.c'; then $(CYGPATH_W) 'grub-core/disk/AFSplitter.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/disk/AFSplitter.c'; fi` - -grub-core/lib/libgrubkern_a-pbkdf2.o: grub-core/lib/pbkdf2.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -MT grub-core/lib/libgrubkern_a-pbkdf2.o -MD -MP -MF grub-core/lib/$(DEPDIR)/libgrubkern_a-pbkdf2.Tpo -c -o grub-core/lib/libgrubkern_a-pbkdf2.o `test -f 'grub-core/lib/pbkdf2.c' || echo '$(srcdir)/'`grub-core/lib/pbkdf2.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/lib/$(DEPDIR)/libgrubkern_a-pbkdf2.Tpo grub-core/lib/$(DEPDIR)/libgrubkern_a-pbkdf2.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/lib/pbkdf2.c' object='grub-core/lib/libgrubkern_a-pbkdf2.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -c -o grub-core/lib/libgrubkern_a-pbkdf2.o `test -f 'grub-core/lib/pbkdf2.c' || echo '$(srcdir)/'`grub-core/lib/pbkdf2.c - -grub-core/lib/libgrubkern_a-pbkdf2.obj: grub-core/lib/pbkdf2.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -MT grub-core/lib/libgrubkern_a-pbkdf2.obj -MD -MP -MF grub-core/lib/$(DEPDIR)/libgrubkern_a-pbkdf2.Tpo -c -o grub-core/lib/libgrubkern_a-pbkdf2.obj `if test -f 'grub-core/lib/pbkdf2.c'; then $(CYGPATH_W) 'grub-core/lib/pbkdf2.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/lib/pbkdf2.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/lib/$(DEPDIR)/libgrubkern_a-pbkdf2.Tpo grub-core/lib/$(DEPDIR)/libgrubkern_a-pbkdf2.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/lib/pbkdf2.c' object='grub-core/lib/libgrubkern_a-pbkdf2.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -c -o grub-core/lib/libgrubkern_a-pbkdf2.obj `if test -f 'grub-core/lib/pbkdf2.c'; then $(CYGPATH_W) 'grub-core/lib/pbkdf2.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/lib/pbkdf2.c'; fi` - -grub-core/commands/libgrubkern_a-extcmd.o: grub-core/commands/extcmd.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -MT grub-core/commands/libgrubkern_a-extcmd.o -MD -MP -MF grub-core/commands/$(DEPDIR)/libgrubkern_a-extcmd.Tpo -c -o grub-core/commands/libgrubkern_a-extcmd.o `test -f 'grub-core/commands/extcmd.c' || echo '$(srcdir)/'`grub-core/commands/extcmd.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/commands/$(DEPDIR)/libgrubkern_a-extcmd.Tpo grub-core/commands/$(DEPDIR)/libgrubkern_a-extcmd.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/commands/extcmd.c' object='grub-core/commands/libgrubkern_a-extcmd.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -c -o grub-core/commands/libgrubkern_a-extcmd.o `test -f 'grub-core/commands/extcmd.c' || echo '$(srcdir)/'`grub-core/commands/extcmd.c - -grub-core/commands/libgrubkern_a-extcmd.obj: grub-core/commands/extcmd.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -MT grub-core/commands/libgrubkern_a-extcmd.obj -MD -MP -MF grub-core/commands/$(DEPDIR)/libgrubkern_a-extcmd.Tpo -c -o grub-core/commands/libgrubkern_a-extcmd.obj `if test -f 'grub-core/commands/extcmd.c'; then $(CYGPATH_W) 'grub-core/commands/extcmd.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/commands/extcmd.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/commands/$(DEPDIR)/libgrubkern_a-extcmd.Tpo grub-core/commands/$(DEPDIR)/libgrubkern_a-extcmd.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/commands/extcmd.c' object='grub-core/commands/libgrubkern_a-extcmd.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -c -o grub-core/commands/libgrubkern_a-extcmd.obj `if test -f 'grub-core/commands/extcmd.c'; then $(CYGPATH_W) 'grub-core/commands/extcmd.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/commands/extcmd.c'; fi` - -grub-core/lib/libgrubkern_a-arg.o: grub-core/lib/arg.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -MT grub-core/lib/libgrubkern_a-arg.o -MD -MP -MF grub-core/lib/$(DEPDIR)/libgrubkern_a-arg.Tpo -c -o grub-core/lib/libgrubkern_a-arg.o `test -f 'grub-core/lib/arg.c' || echo '$(srcdir)/'`grub-core/lib/arg.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/lib/$(DEPDIR)/libgrubkern_a-arg.Tpo grub-core/lib/$(DEPDIR)/libgrubkern_a-arg.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/lib/arg.c' object='grub-core/lib/libgrubkern_a-arg.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -c -o grub-core/lib/libgrubkern_a-arg.o `test -f 'grub-core/lib/arg.c' || echo '$(srcdir)/'`grub-core/lib/arg.c - -grub-core/lib/libgrubkern_a-arg.obj: grub-core/lib/arg.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -MT grub-core/lib/libgrubkern_a-arg.obj -MD -MP -MF grub-core/lib/$(DEPDIR)/libgrubkern_a-arg.Tpo -c -o grub-core/lib/libgrubkern_a-arg.obj `if test -f 'grub-core/lib/arg.c'; then $(CYGPATH_W) 'grub-core/lib/arg.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/lib/arg.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/lib/$(DEPDIR)/libgrubkern_a-arg.Tpo grub-core/lib/$(DEPDIR)/libgrubkern_a-arg.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/lib/arg.c' object='grub-core/lib/libgrubkern_a-arg.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -c -o grub-core/lib/libgrubkern_a-arg.obj `if test -f 'grub-core/lib/arg.c'; then $(CYGPATH_W) 'grub-core/lib/arg.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/lib/arg.c'; fi` - -grub-core/disk/libgrubkern_a-ldm.o: grub-core/disk/ldm.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -MT grub-core/disk/libgrubkern_a-ldm.o -MD -MP -MF grub-core/disk/$(DEPDIR)/libgrubkern_a-ldm.Tpo -c -o grub-core/disk/libgrubkern_a-ldm.o `test -f 'grub-core/disk/ldm.c' || echo '$(srcdir)/'`grub-core/disk/ldm.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/disk/$(DEPDIR)/libgrubkern_a-ldm.Tpo grub-core/disk/$(DEPDIR)/libgrubkern_a-ldm.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/disk/ldm.c' object='grub-core/disk/libgrubkern_a-ldm.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -c -o grub-core/disk/libgrubkern_a-ldm.o `test -f 'grub-core/disk/ldm.c' || echo '$(srcdir)/'`grub-core/disk/ldm.c - -grub-core/disk/libgrubkern_a-ldm.obj: grub-core/disk/ldm.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -MT grub-core/disk/libgrubkern_a-ldm.obj -MD -MP -MF grub-core/disk/$(DEPDIR)/libgrubkern_a-ldm.Tpo -c -o grub-core/disk/libgrubkern_a-ldm.obj `if test -f 'grub-core/disk/ldm.c'; then $(CYGPATH_W) 'grub-core/disk/ldm.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/disk/ldm.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/disk/$(DEPDIR)/libgrubkern_a-ldm.Tpo grub-core/disk/$(DEPDIR)/libgrubkern_a-ldm.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/disk/ldm.c' object='grub-core/disk/libgrubkern_a-ldm.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -c -o grub-core/disk/libgrubkern_a-ldm.obj `if test -f 'grub-core/disk/ldm.c'; then $(CYGPATH_W) 'grub-core/disk/ldm.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/disk/ldm.c'; fi` - -grub-core/disk/libgrubkern_a-diskfilter.o: grub-core/disk/diskfilter.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -MT grub-core/disk/libgrubkern_a-diskfilter.o -MD -MP -MF grub-core/disk/$(DEPDIR)/libgrubkern_a-diskfilter.Tpo -c -o grub-core/disk/libgrubkern_a-diskfilter.o `test -f 'grub-core/disk/diskfilter.c' || echo '$(srcdir)/'`grub-core/disk/diskfilter.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/disk/$(DEPDIR)/libgrubkern_a-diskfilter.Tpo grub-core/disk/$(DEPDIR)/libgrubkern_a-diskfilter.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/disk/diskfilter.c' object='grub-core/disk/libgrubkern_a-diskfilter.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -c -o grub-core/disk/libgrubkern_a-diskfilter.o `test -f 'grub-core/disk/diskfilter.c' || echo '$(srcdir)/'`grub-core/disk/diskfilter.c - -grub-core/disk/libgrubkern_a-diskfilter.obj: grub-core/disk/diskfilter.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -MT grub-core/disk/libgrubkern_a-diskfilter.obj -MD -MP -MF grub-core/disk/$(DEPDIR)/libgrubkern_a-diskfilter.Tpo -c -o grub-core/disk/libgrubkern_a-diskfilter.obj `if test -f 'grub-core/disk/diskfilter.c'; then $(CYGPATH_W) 'grub-core/disk/diskfilter.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/disk/diskfilter.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/disk/$(DEPDIR)/libgrubkern_a-diskfilter.Tpo grub-core/disk/$(DEPDIR)/libgrubkern_a-diskfilter.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/disk/diskfilter.c' object='grub-core/disk/libgrubkern_a-diskfilter.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -c -o grub-core/disk/libgrubkern_a-diskfilter.obj `if test -f 'grub-core/disk/diskfilter.c'; then $(CYGPATH_W) 'grub-core/disk/diskfilter.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/disk/diskfilter.c'; fi` - -grub-core/partmap/libgrubkern_a-gpt.o: grub-core/partmap/gpt.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -MT grub-core/partmap/libgrubkern_a-gpt.o -MD -MP -MF grub-core/partmap/$(DEPDIR)/libgrubkern_a-gpt.Tpo -c -o grub-core/partmap/libgrubkern_a-gpt.o `test -f 'grub-core/partmap/gpt.c' || echo '$(srcdir)/'`grub-core/partmap/gpt.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/partmap/$(DEPDIR)/libgrubkern_a-gpt.Tpo grub-core/partmap/$(DEPDIR)/libgrubkern_a-gpt.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/partmap/gpt.c' object='grub-core/partmap/libgrubkern_a-gpt.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -c -o grub-core/partmap/libgrubkern_a-gpt.o `test -f 'grub-core/partmap/gpt.c' || echo '$(srcdir)/'`grub-core/partmap/gpt.c - -grub-core/partmap/libgrubkern_a-gpt.obj: grub-core/partmap/gpt.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -MT grub-core/partmap/libgrubkern_a-gpt.obj -MD -MP -MF grub-core/partmap/$(DEPDIR)/libgrubkern_a-gpt.Tpo -c -o grub-core/partmap/libgrubkern_a-gpt.obj `if test -f 'grub-core/partmap/gpt.c'; then $(CYGPATH_W) 'grub-core/partmap/gpt.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/partmap/gpt.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/partmap/$(DEPDIR)/libgrubkern_a-gpt.Tpo grub-core/partmap/$(DEPDIR)/libgrubkern_a-gpt.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/partmap/gpt.c' object='grub-core/partmap/libgrubkern_a-gpt.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -c -o grub-core/partmap/libgrubkern_a-gpt.obj `if test -f 'grub-core/partmap/gpt.c'; then $(CYGPATH_W) 'grub-core/partmap/gpt.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/partmap/gpt.c'; fi` - -grub-core/partmap/libgrubkern_a-msdos.o: grub-core/partmap/msdos.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -MT grub-core/partmap/libgrubkern_a-msdos.o -MD -MP -MF grub-core/partmap/$(DEPDIR)/libgrubkern_a-msdos.Tpo -c -o grub-core/partmap/libgrubkern_a-msdos.o `test -f 'grub-core/partmap/msdos.c' || echo '$(srcdir)/'`grub-core/partmap/msdos.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/partmap/$(DEPDIR)/libgrubkern_a-msdos.Tpo grub-core/partmap/$(DEPDIR)/libgrubkern_a-msdos.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/partmap/msdos.c' object='grub-core/partmap/libgrubkern_a-msdos.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -c -o grub-core/partmap/libgrubkern_a-msdos.o `test -f 'grub-core/partmap/msdos.c' || echo '$(srcdir)/'`grub-core/partmap/msdos.c - -grub-core/partmap/libgrubkern_a-msdos.obj: grub-core/partmap/msdos.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -MT grub-core/partmap/libgrubkern_a-msdos.obj -MD -MP -MF grub-core/partmap/$(DEPDIR)/libgrubkern_a-msdos.Tpo -c -o grub-core/partmap/libgrubkern_a-msdos.obj `if test -f 'grub-core/partmap/msdos.c'; then $(CYGPATH_W) 'grub-core/partmap/msdos.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/partmap/msdos.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/partmap/$(DEPDIR)/libgrubkern_a-msdos.Tpo grub-core/partmap/$(DEPDIR)/libgrubkern_a-msdos.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/partmap/msdos.c' object='grub-core/partmap/libgrubkern_a-msdos.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -c -o grub-core/partmap/libgrubkern_a-msdos.obj `if test -f 'grub-core/partmap/msdos.c'; then $(CYGPATH_W) 'grub-core/partmap/msdos.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/partmap/msdos.c'; fi` - -grub-core/fs/libgrubkern_a-proc.o: grub-core/fs/proc.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -MT grub-core/fs/libgrubkern_a-proc.o -MD -MP -MF grub-core/fs/$(DEPDIR)/libgrubkern_a-proc.Tpo -c -o grub-core/fs/libgrubkern_a-proc.o `test -f 'grub-core/fs/proc.c' || echo '$(srcdir)/'`grub-core/fs/proc.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/fs/$(DEPDIR)/libgrubkern_a-proc.Tpo grub-core/fs/$(DEPDIR)/libgrubkern_a-proc.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/fs/proc.c' object='grub-core/fs/libgrubkern_a-proc.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -c -o grub-core/fs/libgrubkern_a-proc.o `test -f 'grub-core/fs/proc.c' || echo '$(srcdir)/'`grub-core/fs/proc.c - -grub-core/fs/libgrubkern_a-proc.obj: grub-core/fs/proc.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -MT grub-core/fs/libgrubkern_a-proc.obj -MD -MP -MF grub-core/fs/$(DEPDIR)/libgrubkern_a-proc.Tpo -c -o grub-core/fs/libgrubkern_a-proc.obj `if test -f 'grub-core/fs/proc.c'; then $(CYGPATH_W) 'grub-core/fs/proc.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/fs/proc.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/fs/$(DEPDIR)/libgrubkern_a-proc.Tpo grub-core/fs/$(DEPDIR)/libgrubkern_a-proc.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/fs/proc.c' object='grub-core/fs/libgrubkern_a-proc.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -c -o grub-core/fs/libgrubkern_a-proc.obj `if test -f 'grub-core/fs/proc.c'; then $(CYGPATH_W) 'grub-core/fs/proc.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/fs/proc.c'; fi` - -grub-core/fs/libgrubkern_a-archelp.o: grub-core/fs/archelp.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -MT grub-core/fs/libgrubkern_a-archelp.o -MD -MP -MF grub-core/fs/$(DEPDIR)/libgrubkern_a-archelp.Tpo -c -o grub-core/fs/libgrubkern_a-archelp.o `test -f 'grub-core/fs/archelp.c' || echo '$(srcdir)/'`grub-core/fs/archelp.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/fs/$(DEPDIR)/libgrubkern_a-archelp.Tpo grub-core/fs/$(DEPDIR)/libgrubkern_a-archelp.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/fs/archelp.c' object='grub-core/fs/libgrubkern_a-archelp.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -c -o grub-core/fs/libgrubkern_a-archelp.o `test -f 'grub-core/fs/archelp.c' || echo '$(srcdir)/'`grub-core/fs/archelp.c - -grub-core/fs/libgrubkern_a-archelp.obj: grub-core/fs/archelp.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -MT grub-core/fs/libgrubkern_a-archelp.obj -MD -MP -MF grub-core/fs/$(DEPDIR)/libgrubkern_a-archelp.Tpo -c -o grub-core/fs/libgrubkern_a-archelp.obj `if test -f 'grub-core/fs/archelp.c'; then $(CYGPATH_W) 'grub-core/fs/archelp.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/fs/archelp.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/fs/$(DEPDIR)/libgrubkern_a-archelp.Tpo grub-core/fs/$(DEPDIR)/libgrubkern_a-archelp.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/fs/archelp.c' object='grub-core/fs/libgrubkern_a-archelp.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) $(libgrubkern_a_CFLAGS) $(CFLAGS) -c -o grub-core/fs/libgrubkern_a-archelp.obj `if test -f 'grub-core/fs/archelp.c'; then $(CYGPATH_W) 'grub-core/fs/archelp.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/fs/archelp.c'; fi` - -grub-core/commands/libgrubmods_a-blocklist.o: grub-core/commands/blocklist.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/commands/libgrubmods_a-blocklist.o -MD -MP -MF grub-core/commands/$(DEPDIR)/libgrubmods_a-blocklist.Tpo -c -o grub-core/commands/libgrubmods_a-blocklist.o `test -f 'grub-core/commands/blocklist.c' || echo '$(srcdir)/'`grub-core/commands/blocklist.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/commands/$(DEPDIR)/libgrubmods_a-blocklist.Tpo grub-core/commands/$(DEPDIR)/libgrubmods_a-blocklist.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/commands/blocklist.c' object='grub-core/commands/libgrubmods_a-blocklist.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/commands/libgrubmods_a-blocklist.o `test -f 'grub-core/commands/blocklist.c' || echo '$(srcdir)/'`grub-core/commands/blocklist.c - -grub-core/commands/libgrubmods_a-blocklist.obj: grub-core/commands/blocklist.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/commands/libgrubmods_a-blocklist.obj -MD -MP -MF grub-core/commands/$(DEPDIR)/libgrubmods_a-blocklist.Tpo -c -o grub-core/commands/libgrubmods_a-blocklist.obj `if test -f 'grub-core/commands/blocklist.c'; then $(CYGPATH_W) 'grub-core/commands/blocklist.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/commands/blocklist.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/commands/$(DEPDIR)/libgrubmods_a-blocklist.Tpo grub-core/commands/$(DEPDIR)/libgrubmods_a-blocklist.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/commands/blocklist.c' object='grub-core/commands/libgrubmods_a-blocklist.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/commands/libgrubmods_a-blocklist.obj `if test -f 'grub-core/commands/blocklist.c'; then $(CYGPATH_W) 'grub-core/commands/blocklist.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/commands/blocklist.c'; fi` - -grub-core/commands/libgrubmods_a-macbless.o: grub-core/commands/macbless.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/commands/libgrubmods_a-macbless.o -MD -MP -MF grub-core/commands/$(DEPDIR)/libgrubmods_a-macbless.Tpo -c -o grub-core/commands/libgrubmods_a-macbless.o `test -f 'grub-core/commands/macbless.c' || echo '$(srcdir)/'`grub-core/commands/macbless.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/commands/$(DEPDIR)/libgrubmods_a-macbless.Tpo grub-core/commands/$(DEPDIR)/libgrubmods_a-macbless.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/commands/macbless.c' object='grub-core/commands/libgrubmods_a-macbless.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/commands/libgrubmods_a-macbless.o `test -f 'grub-core/commands/macbless.c' || echo '$(srcdir)/'`grub-core/commands/macbless.c - -grub-core/commands/libgrubmods_a-macbless.obj: grub-core/commands/macbless.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/commands/libgrubmods_a-macbless.obj -MD -MP -MF grub-core/commands/$(DEPDIR)/libgrubmods_a-macbless.Tpo -c -o grub-core/commands/libgrubmods_a-macbless.obj `if test -f 'grub-core/commands/macbless.c'; then $(CYGPATH_W) 'grub-core/commands/macbless.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/commands/macbless.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/commands/$(DEPDIR)/libgrubmods_a-macbless.Tpo grub-core/commands/$(DEPDIR)/libgrubmods_a-macbless.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/commands/macbless.c' object='grub-core/commands/libgrubmods_a-macbless.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/commands/libgrubmods_a-macbless.obj `if test -f 'grub-core/commands/macbless.c'; then $(CYGPATH_W) 'grub-core/commands/macbless.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/commands/macbless.c'; fi` - -grub-core/commands/libgrubmods_a-xnu_uuid.o: grub-core/commands/xnu_uuid.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/commands/libgrubmods_a-xnu_uuid.o -MD -MP -MF grub-core/commands/$(DEPDIR)/libgrubmods_a-xnu_uuid.Tpo -c -o grub-core/commands/libgrubmods_a-xnu_uuid.o `test -f 'grub-core/commands/xnu_uuid.c' || echo '$(srcdir)/'`grub-core/commands/xnu_uuid.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/commands/$(DEPDIR)/libgrubmods_a-xnu_uuid.Tpo grub-core/commands/$(DEPDIR)/libgrubmods_a-xnu_uuid.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/commands/xnu_uuid.c' object='grub-core/commands/libgrubmods_a-xnu_uuid.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/commands/libgrubmods_a-xnu_uuid.o `test -f 'grub-core/commands/xnu_uuid.c' || echo '$(srcdir)/'`grub-core/commands/xnu_uuid.c - -grub-core/commands/libgrubmods_a-xnu_uuid.obj: grub-core/commands/xnu_uuid.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/commands/libgrubmods_a-xnu_uuid.obj -MD -MP -MF grub-core/commands/$(DEPDIR)/libgrubmods_a-xnu_uuid.Tpo -c -o grub-core/commands/libgrubmods_a-xnu_uuid.obj `if test -f 'grub-core/commands/xnu_uuid.c'; then $(CYGPATH_W) 'grub-core/commands/xnu_uuid.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/commands/xnu_uuid.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/commands/$(DEPDIR)/libgrubmods_a-xnu_uuid.Tpo grub-core/commands/$(DEPDIR)/libgrubmods_a-xnu_uuid.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/commands/xnu_uuid.c' object='grub-core/commands/libgrubmods_a-xnu_uuid.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/commands/libgrubmods_a-xnu_uuid.obj `if test -f 'grub-core/commands/xnu_uuid.c'; then $(CYGPATH_W) 'grub-core/commands/xnu_uuid.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/commands/xnu_uuid.c'; fi` - -grub-core/commands/libgrubmods_a-testload.o: grub-core/commands/testload.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/commands/libgrubmods_a-testload.o -MD -MP -MF grub-core/commands/$(DEPDIR)/libgrubmods_a-testload.Tpo -c -o grub-core/commands/libgrubmods_a-testload.o `test -f 'grub-core/commands/testload.c' || echo '$(srcdir)/'`grub-core/commands/testload.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/commands/$(DEPDIR)/libgrubmods_a-testload.Tpo grub-core/commands/$(DEPDIR)/libgrubmods_a-testload.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/commands/testload.c' object='grub-core/commands/libgrubmods_a-testload.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/commands/libgrubmods_a-testload.o `test -f 'grub-core/commands/testload.c' || echo '$(srcdir)/'`grub-core/commands/testload.c - -grub-core/commands/libgrubmods_a-testload.obj: grub-core/commands/testload.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/commands/libgrubmods_a-testload.obj -MD -MP -MF grub-core/commands/$(DEPDIR)/libgrubmods_a-testload.Tpo -c -o grub-core/commands/libgrubmods_a-testload.obj `if test -f 'grub-core/commands/testload.c'; then $(CYGPATH_W) 'grub-core/commands/testload.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/commands/testload.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/commands/$(DEPDIR)/libgrubmods_a-testload.Tpo grub-core/commands/$(DEPDIR)/libgrubmods_a-testload.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/commands/testload.c' object='grub-core/commands/libgrubmods_a-testload.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/commands/libgrubmods_a-testload.obj `if test -f 'grub-core/commands/testload.c'; then $(CYGPATH_W) 'grub-core/commands/testload.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/commands/testload.c'; fi` - -grub-core/commands/libgrubmods_a-ls.o: grub-core/commands/ls.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/commands/libgrubmods_a-ls.o -MD -MP -MF grub-core/commands/$(DEPDIR)/libgrubmods_a-ls.Tpo -c -o grub-core/commands/libgrubmods_a-ls.o `test -f 'grub-core/commands/ls.c' || echo '$(srcdir)/'`grub-core/commands/ls.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/commands/$(DEPDIR)/libgrubmods_a-ls.Tpo grub-core/commands/$(DEPDIR)/libgrubmods_a-ls.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/commands/ls.c' object='grub-core/commands/libgrubmods_a-ls.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/commands/libgrubmods_a-ls.o `test -f 'grub-core/commands/ls.c' || echo '$(srcdir)/'`grub-core/commands/ls.c - -grub-core/commands/libgrubmods_a-ls.obj: grub-core/commands/ls.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/commands/libgrubmods_a-ls.obj -MD -MP -MF grub-core/commands/$(DEPDIR)/libgrubmods_a-ls.Tpo -c -o grub-core/commands/libgrubmods_a-ls.obj `if test -f 'grub-core/commands/ls.c'; then $(CYGPATH_W) 'grub-core/commands/ls.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/commands/ls.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/commands/$(DEPDIR)/libgrubmods_a-ls.Tpo grub-core/commands/$(DEPDIR)/libgrubmods_a-ls.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/commands/ls.c' object='grub-core/commands/libgrubmods_a-ls.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/commands/libgrubmods_a-ls.obj `if test -f 'grub-core/commands/ls.c'; then $(CYGPATH_W) 'grub-core/commands/ls.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/commands/ls.c'; fi` - -grub-core/disk/libgrubmods_a-dmraid_nvidia.o: grub-core/disk/dmraid_nvidia.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/disk/libgrubmods_a-dmraid_nvidia.o -MD -MP -MF grub-core/disk/$(DEPDIR)/libgrubmods_a-dmraid_nvidia.Tpo -c -o grub-core/disk/libgrubmods_a-dmraid_nvidia.o `test -f 'grub-core/disk/dmraid_nvidia.c' || echo '$(srcdir)/'`grub-core/disk/dmraid_nvidia.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/disk/$(DEPDIR)/libgrubmods_a-dmraid_nvidia.Tpo grub-core/disk/$(DEPDIR)/libgrubmods_a-dmraid_nvidia.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/disk/dmraid_nvidia.c' object='grub-core/disk/libgrubmods_a-dmraid_nvidia.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/disk/libgrubmods_a-dmraid_nvidia.o `test -f 'grub-core/disk/dmraid_nvidia.c' || echo '$(srcdir)/'`grub-core/disk/dmraid_nvidia.c - -grub-core/disk/libgrubmods_a-dmraid_nvidia.obj: grub-core/disk/dmraid_nvidia.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/disk/libgrubmods_a-dmraid_nvidia.obj -MD -MP -MF grub-core/disk/$(DEPDIR)/libgrubmods_a-dmraid_nvidia.Tpo -c -o grub-core/disk/libgrubmods_a-dmraid_nvidia.obj `if test -f 'grub-core/disk/dmraid_nvidia.c'; then $(CYGPATH_W) 'grub-core/disk/dmraid_nvidia.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/disk/dmraid_nvidia.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/disk/$(DEPDIR)/libgrubmods_a-dmraid_nvidia.Tpo grub-core/disk/$(DEPDIR)/libgrubmods_a-dmraid_nvidia.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/disk/dmraid_nvidia.c' object='grub-core/disk/libgrubmods_a-dmraid_nvidia.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/disk/libgrubmods_a-dmraid_nvidia.obj `if test -f 'grub-core/disk/dmraid_nvidia.c'; then $(CYGPATH_W) 'grub-core/disk/dmraid_nvidia.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/disk/dmraid_nvidia.c'; fi` - -grub-core/disk/libgrubmods_a-loopback.o: grub-core/disk/loopback.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/disk/libgrubmods_a-loopback.o -MD -MP -MF grub-core/disk/$(DEPDIR)/libgrubmods_a-loopback.Tpo -c -o grub-core/disk/libgrubmods_a-loopback.o `test -f 'grub-core/disk/loopback.c' || echo '$(srcdir)/'`grub-core/disk/loopback.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/disk/$(DEPDIR)/libgrubmods_a-loopback.Tpo grub-core/disk/$(DEPDIR)/libgrubmods_a-loopback.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/disk/loopback.c' object='grub-core/disk/libgrubmods_a-loopback.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/disk/libgrubmods_a-loopback.o `test -f 'grub-core/disk/loopback.c' || echo '$(srcdir)/'`grub-core/disk/loopback.c - -grub-core/disk/libgrubmods_a-loopback.obj: grub-core/disk/loopback.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/disk/libgrubmods_a-loopback.obj -MD -MP -MF grub-core/disk/$(DEPDIR)/libgrubmods_a-loopback.Tpo -c -o grub-core/disk/libgrubmods_a-loopback.obj `if test -f 'grub-core/disk/loopback.c'; then $(CYGPATH_W) 'grub-core/disk/loopback.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/disk/loopback.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/disk/$(DEPDIR)/libgrubmods_a-loopback.Tpo grub-core/disk/$(DEPDIR)/libgrubmods_a-loopback.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/disk/loopback.c' object='grub-core/disk/libgrubmods_a-loopback.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/disk/libgrubmods_a-loopback.obj `if test -f 'grub-core/disk/loopback.c'; then $(CYGPATH_W) 'grub-core/disk/loopback.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/disk/loopback.c'; fi` - -grub-core/disk/libgrubmods_a-lvm.o: grub-core/disk/lvm.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/disk/libgrubmods_a-lvm.o -MD -MP -MF grub-core/disk/$(DEPDIR)/libgrubmods_a-lvm.Tpo -c -o grub-core/disk/libgrubmods_a-lvm.o `test -f 'grub-core/disk/lvm.c' || echo '$(srcdir)/'`grub-core/disk/lvm.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/disk/$(DEPDIR)/libgrubmods_a-lvm.Tpo grub-core/disk/$(DEPDIR)/libgrubmods_a-lvm.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/disk/lvm.c' object='grub-core/disk/libgrubmods_a-lvm.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/disk/libgrubmods_a-lvm.o `test -f 'grub-core/disk/lvm.c' || echo '$(srcdir)/'`grub-core/disk/lvm.c - -grub-core/disk/libgrubmods_a-lvm.obj: grub-core/disk/lvm.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/disk/libgrubmods_a-lvm.obj -MD -MP -MF grub-core/disk/$(DEPDIR)/libgrubmods_a-lvm.Tpo -c -o grub-core/disk/libgrubmods_a-lvm.obj `if test -f 'grub-core/disk/lvm.c'; then $(CYGPATH_W) 'grub-core/disk/lvm.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/disk/lvm.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/disk/$(DEPDIR)/libgrubmods_a-lvm.Tpo grub-core/disk/$(DEPDIR)/libgrubmods_a-lvm.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/disk/lvm.c' object='grub-core/disk/libgrubmods_a-lvm.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/disk/libgrubmods_a-lvm.obj `if test -f 'grub-core/disk/lvm.c'; then $(CYGPATH_W) 'grub-core/disk/lvm.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/disk/lvm.c'; fi` - -grub-core/disk/libgrubmods_a-mdraid_linux.o: grub-core/disk/mdraid_linux.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/disk/libgrubmods_a-mdraid_linux.o -MD -MP -MF grub-core/disk/$(DEPDIR)/libgrubmods_a-mdraid_linux.Tpo -c -o grub-core/disk/libgrubmods_a-mdraid_linux.o `test -f 'grub-core/disk/mdraid_linux.c' || echo '$(srcdir)/'`grub-core/disk/mdraid_linux.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/disk/$(DEPDIR)/libgrubmods_a-mdraid_linux.Tpo grub-core/disk/$(DEPDIR)/libgrubmods_a-mdraid_linux.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/disk/mdraid_linux.c' object='grub-core/disk/libgrubmods_a-mdraid_linux.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/disk/libgrubmods_a-mdraid_linux.o `test -f 'grub-core/disk/mdraid_linux.c' || echo '$(srcdir)/'`grub-core/disk/mdraid_linux.c - -grub-core/disk/libgrubmods_a-mdraid_linux.obj: grub-core/disk/mdraid_linux.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/disk/libgrubmods_a-mdraid_linux.obj -MD -MP -MF grub-core/disk/$(DEPDIR)/libgrubmods_a-mdraid_linux.Tpo -c -o grub-core/disk/libgrubmods_a-mdraid_linux.obj `if test -f 'grub-core/disk/mdraid_linux.c'; then $(CYGPATH_W) 'grub-core/disk/mdraid_linux.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/disk/mdraid_linux.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/disk/$(DEPDIR)/libgrubmods_a-mdraid_linux.Tpo grub-core/disk/$(DEPDIR)/libgrubmods_a-mdraid_linux.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/disk/mdraid_linux.c' object='grub-core/disk/libgrubmods_a-mdraid_linux.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/disk/libgrubmods_a-mdraid_linux.obj `if test -f 'grub-core/disk/mdraid_linux.c'; then $(CYGPATH_W) 'grub-core/disk/mdraid_linux.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/disk/mdraid_linux.c'; fi` - -grub-core/disk/libgrubmods_a-mdraid_linux_be.o: grub-core/disk/mdraid_linux_be.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/disk/libgrubmods_a-mdraid_linux_be.o -MD -MP -MF grub-core/disk/$(DEPDIR)/libgrubmods_a-mdraid_linux_be.Tpo -c -o grub-core/disk/libgrubmods_a-mdraid_linux_be.o `test -f 'grub-core/disk/mdraid_linux_be.c' || echo '$(srcdir)/'`grub-core/disk/mdraid_linux_be.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/disk/$(DEPDIR)/libgrubmods_a-mdraid_linux_be.Tpo grub-core/disk/$(DEPDIR)/libgrubmods_a-mdraid_linux_be.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/disk/mdraid_linux_be.c' object='grub-core/disk/libgrubmods_a-mdraid_linux_be.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/disk/libgrubmods_a-mdraid_linux_be.o `test -f 'grub-core/disk/mdraid_linux_be.c' || echo '$(srcdir)/'`grub-core/disk/mdraid_linux_be.c - -grub-core/disk/libgrubmods_a-mdraid_linux_be.obj: grub-core/disk/mdraid_linux_be.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/disk/libgrubmods_a-mdraid_linux_be.obj -MD -MP -MF grub-core/disk/$(DEPDIR)/libgrubmods_a-mdraid_linux_be.Tpo -c -o grub-core/disk/libgrubmods_a-mdraid_linux_be.obj `if test -f 'grub-core/disk/mdraid_linux_be.c'; then $(CYGPATH_W) 'grub-core/disk/mdraid_linux_be.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/disk/mdraid_linux_be.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/disk/$(DEPDIR)/libgrubmods_a-mdraid_linux_be.Tpo grub-core/disk/$(DEPDIR)/libgrubmods_a-mdraid_linux_be.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/disk/mdraid_linux_be.c' object='grub-core/disk/libgrubmods_a-mdraid_linux_be.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/disk/libgrubmods_a-mdraid_linux_be.obj `if test -f 'grub-core/disk/mdraid_linux_be.c'; then $(CYGPATH_W) 'grub-core/disk/mdraid_linux_be.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/disk/mdraid_linux_be.c'; fi` - -grub-core/disk/libgrubmods_a-mdraid1x_linux.o: grub-core/disk/mdraid1x_linux.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/disk/libgrubmods_a-mdraid1x_linux.o -MD -MP -MF grub-core/disk/$(DEPDIR)/libgrubmods_a-mdraid1x_linux.Tpo -c -o grub-core/disk/libgrubmods_a-mdraid1x_linux.o `test -f 'grub-core/disk/mdraid1x_linux.c' || echo '$(srcdir)/'`grub-core/disk/mdraid1x_linux.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/disk/$(DEPDIR)/libgrubmods_a-mdraid1x_linux.Tpo grub-core/disk/$(DEPDIR)/libgrubmods_a-mdraid1x_linux.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/disk/mdraid1x_linux.c' object='grub-core/disk/libgrubmods_a-mdraid1x_linux.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/disk/libgrubmods_a-mdraid1x_linux.o `test -f 'grub-core/disk/mdraid1x_linux.c' || echo '$(srcdir)/'`grub-core/disk/mdraid1x_linux.c - -grub-core/disk/libgrubmods_a-mdraid1x_linux.obj: grub-core/disk/mdraid1x_linux.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/disk/libgrubmods_a-mdraid1x_linux.obj -MD -MP -MF grub-core/disk/$(DEPDIR)/libgrubmods_a-mdraid1x_linux.Tpo -c -o grub-core/disk/libgrubmods_a-mdraid1x_linux.obj `if test -f 'grub-core/disk/mdraid1x_linux.c'; then $(CYGPATH_W) 'grub-core/disk/mdraid1x_linux.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/disk/mdraid1x_linux.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/disk/$(DEPDIR)/libgrubmods_a-mdraid1x_linux.Tpo grub-core/disk/$(DEPDIR)/libgrubmods_a-mdraid1x_linux.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/disk/mdraid1x_linux.c' object='grub-core/disk/libgrubmods_a-mdraid1x_linux.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/disk/libgrubmods_a-mdraid1x_linux.obj `if test -f 'grub-core/disk/mdraid1x_linux.c'; then $(CYGPATH_W) 'grub-core/disk/mdraid1x_linux.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/disk/mdraid1x_linux.c'; fi` - -grub-core/disk/libgrubmods_a-raid5_recover.o: grub-core/disk/raid5_recover.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/disk/libgrubmods_a-raid5_recover.o -MD -MP -MF grub-core/disk/$(DEPDIR)/libgrubmods_a-raid5_recover.Tpo -c -o grub-core/disk/libgrubmods_a-raid5_recover.o `test -f 'grub-core/disk/raid5_recover.c' || echo '$(srcdir)/'`grub-core/disk/raid5_recover.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/disk/$(DEPDIR)/libgrubmods_a-raid5_recover.Tpo grub-core/disk/$(DEPDIR)/libgrubmods_a-raid5_recover.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/disk/raid5_recover.c' object='grub-core/disk/libgrubmods_a-raid5_recover.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/disk/libgrubmods_a-raid5_recover.o `test -f 'grub-core/disk/raid5_recover.c' || echo '$(srcdir)/'`grub-core/disk/raid5_recover.c - -grub-core/disk/libgrubmods_a-raid5_recover.obj: grub-core/disk/raid5_recover.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/disk/libgrubmods_a-raid5_recover.obj -MD -MP -MF grub-core/disk/$(DEPDIR)/libgrubmods_a-raid5_recover.Tpo -c -o grub-core/disk/libgrubmods_a-raid5_recover.obj `if test -f 'grub-core/disk/raid5_recover.c'; then $(CYGPATH_W) 'grub-core/disk/raid5_recover.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/disk/raid5_recover.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/disk/$(DEPDIR)/libgrubmods_a-raid5_recover.Tpo grub-core/disk/$(DEPDIR)/libgrubmods_a-raid5_recover.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/disk/raid5_recover.c' object='grub-core/disk/libgrubmods_a-raid5_recover.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/disk/libgrubmods_a-raid5_recover.obj `if test -f 'grub-core/disk/raid5_recover.c'; then $(CYGPATH_W) 'grub-core/disk/raid5_recover.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/disk/raid5_recover.c'; fi` - -grub-core/disk/libgrubmods_a-raid6_recover.o: grub-core/disk/raid6_recover.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/disk/libgrubmods_a-raid6_recover.o -MD -MP -MF grub-core/disk/$(DEPDIR)/libgrubmods_a-raid6_recover.Tpo -c -o grub-core/disk/libgrubmods_a-raid6_recover.o `test -f 'grub-core/disk/raid6_recover.c' || echo '$(srcdir)/'`grub-core/disk/raid6_recover.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/disk/$(DEPDIR)/libgrubmods_a-raid6_recover.Tpo grub-core/disk/$(DEPDIR)/libgrubmods_a-raid6_recover.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/disk/raid6_recover.c' object='grub-core/disk/libgrubmods_a-raid6_recover.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/disk/libgrubmods_a-raid6_recover.o `test -f 'grub-core/disk/raid6_recover.c' || echo '$(srcdir)/'`grub-core/disk/raid6_recover.c - -grub-core/disk/libgrubmods_a-raid6_recover.obj: grub-core/disk/raid6_recover.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/disk/libgrubmods_a-raid6_recover.obj -MD -MP -MF grub-core/disk/$(DEPDIR)/libgrubmods_a-raid6_recover.Tpo -c -o grub-core/disk/libgrubmods_a-raid6_recover.obj `if test -f 'grub-core/disk/raid6_recover.c'; then $(CYGPATH_W) 'grub-core/disk/raid6_recover.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/disk/raid6_recover.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/disk/$(DEPDIR)/libgrubmods_a-raid6_recover.Tpo grub-core/disk/$(DEPDIR)/libgrubmods_a-raid6_recover.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/disk/raid6_recover.c' object='grub-core/disk/libgrubmods_a-raid6_recover.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/disk/libgrubmods_a-raid6_recover.obj `if test -f 'grub-core/disk/raid6_recover.c'; then $(CYGPATH_W) 'grub-core/disk/raid6_recover.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/disk/raid6_recover.c'; fi` - -grub-core/font/libgrubmods_a-font.o: grub-core/font/font.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/font/libgrubmods_a-font.o -MD -MP -MF grub-core/font/$(DEPDIR)/libgrubmods_a-font.Tpo -c -o grub-core/font/libgrubmods_a-font.o `test -f 'grub-core/font/font.c' || echo '$(srcdir)/'`grub-core/font/font.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/font/$(DEPDIR)/libgrubmods_a-font.Tpo grub-core/font/$(DEPDIR)/libgrubmods_a-font.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/font/font.c' object='grub-core/font/libgrubmods_a-font.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/font/libgrubmods_a-font.o `test -f 'grub-core/font/font.c' || echo '$(srcdir)/'`grub-core/font/font.c - -grub-core/font/libgrubmods_a-font.obj: grub-core/font/font.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/font/libgrubmods_a-font.obj -MD -MP -MF grub-core/font/$(DEPDIR)/libgrubmods_a-font.Tpo -c -o grub-core/font/libgrubmods_a-font.obj `if test -f 'grub-core/font/font.c'; then $(CYGPATH_W) 'grub-core/font/font.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/font/font.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/font/$(DEPDIR)/libgrubmods_a-font.Tpo grub-core/font/$(DEPDIR)/libgrubmods_a-font.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/font/font.c' object='grub-core/font/libgrubmods_a-font.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/font/libgrubmods_a-font.obj `if test -f 'grub-core/font/font.c'; then $(CYGPATH_W) 'grub-core/font/font.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/font/font.c'; fi` - -grub-core/gfxmenu/libgrubmods_a-font.o: grub-core/gfxmenu/font.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/gfxmenu/libgrubmods_a-font.o -MD -MP -MF grub-core/gfxmenu/$(DEPDIR)/libgrubmods_a-font.Tpo -c -o grub-core/gfxmenu/libgrubmods_a-font.o `test -f 'grub-core/gfxmenu/font.c' || echo '$(srcdir)/'`grub-core/gfxmenu/font.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/gfxmenu/$(DEPDIR)/libgrubmods_a-font.Tpo grub-core/gfxmenu/$(DEPDIR)/libgrubmods_a-font.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/gfxmenu/font.c' object='grub-core/gfxmenu/libgrubmods_a-font.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/gfxmenu/libgrubmods_a-font.o `test -f 'grub-core/gfxmenu/font.c' || echo '$(srcdir)/'`grub-core/gfxmenu/font.c - -grub-core/gfxmenu/libgrubmods_a-font.obj: grub-core/gfxmenu/font.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/gfxmenu/libgrubmods_a-font.obj -MD -MP -MF grub-core/gfxmenu/$(DEPDIR)/libgrubmods_a-font.Tpo -c -o grub-core/gfxmenu/libgrubmods_a-font.obj `if test -f 'grub-core/gfxmenu/font.c'; then $(CYGPATH_W) 'grub-core/gfxmenu/font.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/gfxmenu/font.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/gfxmenu/$(DEPDIR)/libgrubmods_a-font.Tpo grub-core/gfxmenu/$(DEPDIR)/libgrubmods_a-font.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/gfxmenu/font.c' object='grub-core/gfxmenu/libgrubmods_a-font.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/gfxmenu/libgrubmods_a-font.obj `if test -f 'grub-core/gfxmenu/font.c'; then $(CYGPATH_W) 'grub-core/gfxmenu/font.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/gfxmenu/font.c'; fi` - -grub-core/normal/libgrubmods_a-charset.o: grub-core/normal/charset.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/normal/libgrubmods_a-charset.o -MD -MP -MF grub-core/normal/$(DEPDIR)/libgrubmods_a-charset.Tpo -c -o grub-core/normal/libgrubmods_a-charset.o `test -f 'grub-core/normal/charset.c' || echo '$(srcdir)/'`grub-core/normal/charset.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/normal/$(DEPDIR)/libgrubmods_a-charset.Tpo grub-core/normal/$(DEPDIR)/libgrubmods_a-charset.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/normal/charset.c' object='grub-core/normal/libgrubmods_a-charset.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/normal/libgrubmods_a-charset.o `test -f 'grub-core/normal/charset.c' || echo '$(srcdir)/'`grub-core/normal/charset.c - -grub-core/normal/libgrubmods_a-charset.obj: grub-core/normal/charset.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/normal/libgrubmods_a-charset.obj -MD -MP -MF grub-core/normal/$(DEPDIR)/libgrubmods_a-charset.Tpo -c -o grub-core/normal/libgrubmods_a-charset.obj `if test -f 'grub-core/normal/charset.c'; then $(CYGPATH_W) 'grub-core/normal/charset.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/normal/charset.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/normal/$(DEPDIR)/libgrubmods_a-charset.Tpo grub-core/normal/$(DEPDIR)/libgrubmods_a-charset.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/normal/charset.c' object='grub-core/normal/libgrubmods_a-charset.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/normal/libgrubmods_a-charset.obj `if test -f 'grub-core/normal/charset.c'; then $(CYGPATH_W) 'grub-core/normal/charset.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/normal/charset.c'; fi` - -grub-core/video/fb/libgrubmods_a-fbblit.o: grub-core/video/fb/fbblit.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/video/fb/libgrubmods_a-fbblit.o -MD -MP -MF grub-core/video/fb/$(DEPDIR)/libgrubmods_a-fbblit.Tpo -c -o grub-core/video/fb/libgrubmods_a-fbblit.o `test -f 'grub-core/video/fb/fbblit.c' || echo '$(srcdir)/'`grub-core/video/fb/fbblit.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/video/fb/$(DEPDIR)/libgrubmods_a-fbblit.Tpo grub-core/video/fb/$(DEPDIR)/libgrubmods_a-fbblit.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/video/fb/fbblit.c' object='grub-core/video/fb/libgrubmods_a-fbblit.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/video/fb/libgrubmods_a-fbblit.o `test -f 'grub-core/video/fb/fbblit.c' || echo '$(srcdir)/'`grub-core/video/fb/fbblit.c - -grub-core/video/fb/libgrubmods_a-fbblit.obj: grub-core/video/fb/fbblit.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/video/fb/libgrubmods_a-fbblit.obj -MD -MP -MF grub-core/video/fb/$(DEPDIR)/libgrubmods_a-fbblit.Tpo -c -o grub-core/video/fb/libgrubmods_a-fbblit.obj `if test -f 'grub-core/video/fb/fbblit.c'; then $(CYGPATH_W) 'grub-core/video/fb/fbblit.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/video/fb/fbblit.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/video/fb/$(DEPDIR)/libgrubmods_a-fbblit.Tpo grub-core/video/fb/$(DEPDIR)/libgrubmods_a-fbblit.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/video/fb/fbblit.c' object='grub-core/video/fb/libgrubmods_a-fbblit.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/video/fb/libgrubmods_a-fbblit.obj `if test -f 'grub-core/video/fb/fbblit.c'; then $(CYGPATH_W) 'grub-core/video/fb/fbblit.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/video/fb/fbblit.c'; fi` - -grub-core/video/fb/libgrubmods_a-fbutil.o: grub-core/video/fb/fbutil.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/video/fb/libgrubmods_a-fbutil.o -MD -MP -MF grub-core/video/fb/$(DEPDIR)/libgrubmods_a-fbutil.Tpo -c -o grub-core/video/fb/libgrubmods_a-fbutil.o `test -f 'grub-core/video/fb/fbutil.c' || echo '$(srcdir)/'`grub-core/video/fb/fbutil.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/video/fb/$(DEPDIR)/libgrubmods_a-fbutil.Tpo grub-core/video/fb/$(DEPDIR)/libgrubmods_a-fbutil.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/video/fb/fbutil.c' object='grub-core/video/fb/libgrubmods_a-fbutil.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/video/fb/libgrubmods_a-fbutil.o `test -f 'grub-core/video/fb/fbutil.c' || echo '$(srcdir)/'`grub-core/video/fb/fbutil.c - -grub-core/video/fb/libgrubmods_a-fbutil.obj: grub-core/video/fb/fbutil.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/video/fb/libgrubmods_a-fbutil.obj -MD -MP -MF grub-core/video/fb/$(DEPDIR)/libgrubmods_a-fbutil.Tpo -c -o grub-core/video/fb/libgrubmods_a-fbutil.obj `if test -f 'grub-core/video/fb/fbutil.c'; then $(CYGPATH_W) 'grub-core/video/fb/fbutil.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/video/fb/fbutil.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/video/fb/$(DEPDIR)/libgrubmods_a-fbutil.Tpo grub-core/video/fb/$(DEPDIR)/libgrubmods_a-fbutil.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/video/fb/fbutil.c' object='grub-core/video/fb/libgrubmods_a-fbutil.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/video/fb/libgrubmods_a-fbutil.obj `if test -f 'grub-core/video/fb/fbutil.c'; then $(CYGPATH_W) 'grub-core/video/fb/fbutil.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/video/fb/fbutil.c'; fi` - -grub-core/video/fb/libgrubmods_a-fbfill.o: grub-core/video/fb/fbfill.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/video/fb/libgrubmods_a-fbfill.o -MD -MP -MF grub-core/video/fb/$(DEPDIR)/libgrubmods_a-fbfill.Tpo -c -o grub-core/video/fb/libgrubmods_a-fbfill.o `test -f 'grub-core/video/fb/fbfill.c' || echo '$(srcdir)/'`grub-core/video/fb/fbfill.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/video/fb/$(DEPDIR)/libgrubmods_a-fbfill.Tpo grub-core/video/fb/$(DEPDIR)/libgrubmods_a-fbfill.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/video/fb/fbfill.c' object='grub-core/video/fb/libgrubmods_a-fbfill.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/video/fb/libgrubmods_a-fbfill.o `test -f 'grub-core/video/fb/fbfill.c' || echo '$(srcdir)/'`grub-core/video/fb/fbfill.c - -grub-core/video/fb/libgrubmods_a-fbfill.obj: grub-core/video/fb/fbfill.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/video/fb/libgrubmods_a-fbfill.obj -MD -MP -MF grub-core/video/fb/$(DEPDIR)/libgrubmods_a-fbfill.Tpo -c -o grub-core/video/fb/libgrubmods_a-fbfill.obj `if test -f 'grub-core/video/fb/fbfill.c'; then $(CYGPATH_W) 'grub-core/video/fb/fbfill.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/video/fb/fbfill.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/video/fb/$(DEPDIR)/libgrubmods_a-fbfill.Tpo grub-core/video/fb/$(DEPDIR)/libgrubmods_a-fbfill.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/video/fb/fbfill.c' object='grub-core/video/fb/libgrubmods_a-fbfill.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/video/fb/libgrubmods_a-fbfill.obj `if test -f 'grub-core/video/fb/fbfill.c'; then $(CYGPATH_W) 'grub-core/video/fb/fbfill.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/video/fb/fbfill.c'; fi` - -grub-core/video/fb/libgrubmods_a-video_fb.o: grub-core/video/fb/video_fb.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/video/fb/libgrubmods_a-video_fb.o -MD -MP -MF grub-core/video/fb/$(DEPDIR)/libgrubmods_a-video_fb.Tpo -c -o grub-core/video/fb/libgrubmods_a-video_fb.o `test -f 'grub-core/video/fb/video_fb.c' || echo '$(srcdir)/'`grub-core/video/fb/video_fb.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/video/fb/$(DEPDIR)/libgrubmods_a-video_fb.Tpo grub-core/video/fb/$(DEPDIR)/libgrubmods_a-video_fb.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/video/fb/video_fb.c' object='grub-core/video/fb/libgrubmods_a-video_fb.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/video/fb/libgrubmods_a-video_fb.o `test -f 'grub-core/video/fb/video_fb.c' || echo '$(srcdir)/'`grub-core/video/fb/video_fb.c - -grub-core/video/fb/libgrubmods_a-video_fb.obj: grub-core/video/fb/video_fb.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/video/fb/libgrubmods_a-video_fb.obj -MD -MP -MF grub-core/video/fb/$(DEPDIR)/libgrubmods_a-video_fb.Tpo -c -o grub-core/video/fb/libgrubmods_a-video_fb.obj `if test -f 'grub-core/video/fb/video_fb.c'; then $(CYGPATH_W) 'grub-core/video/fb/video_fb.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/video/fb/video_fb.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/video/fb/$(DEPDIR)/libgrubmods_a-video_fb.Tpo grub-core/video/fb/$(DEPDIR)/libgrubmods_a-video_fb.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/video/fb/video_fb.c' object='grub-core/video/fb/libgrubmods_a-video_fb.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/video/fb/libgrubmods_a-video_fb.obj `if test -f 'grub-core/video/fb/video_fb.c'; then $(CYGPATH_W) 'grub-core/video/fb/video_fb.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/video/fb/video_fb.c'; fi` - -grub-core/video/libgrubmods_a-video.o: grub-core/video/video.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/video/libgrubmods_a-video.o -MD -MP -MF grub-core/video/$(DEPDIR)/libgrubmods_a-video.Tpo -c -o grub-core/video/libgrubmods_a-video.o `test -f 'grub-core/video/video.c' || echo '$(srcdir)/'`grub-core/video/video.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/video/$(DEPDIR)/libgrubmods_a-video.Tpo grub-core/video/$(DEPDIR)/libgrubmods_a-video.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/video/video.c' object='grub-core/video/libgrubmods_a-video.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/video/libgrubmods_a-video.o `test -f 'grub-core/video/video.c' || echo '$(srcdir)/'`grub-core/video/video.c - -grub-core/video/libgrubmods_a-video.obj: grub-core/video/video.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/video/libgrubmods_a-video.obj -MD -MP -MF grub-core/video/$(DEPDIR)/libgrubmods_a-video.Tpo -c -o grub-core/video/libgrubmods_a-video.obj `if test -f 'grub-core/video/video.c'; then $(CYGPATH_W) 'grub-core/video/video.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/video/video.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/video/$(DEPDIR)/libgrubmods_a-video.Tpo grub-core/video/$(DEPDIR)/libgrubmods_a-video.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/video/video.c' object='grub-core/video/libgrubmods_a-video.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/video/libgrubmods_a-video.obj `if test -f 'grub-core/video/video.c'; then $(CYGPATH_W) 'grub-core/video/video.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/video/video.c'; fi` - -grub-core/video/libgrubmods_a-capture.o: grub-core/video/capture.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/video/libgrubmods_a-capture.o -MD -MP -MF grub-core/video/$(DEPDIR)/libgrubmods_a-capture.Tpo -c -o grub-core/video/libgrubmods_a-capture.o `test -f 'grub-core/video/capture.c' || echo '$(srcdir)/'`grub-core/video/capture.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/video/$(DEPDIR)/libgrubmods_a-capture.Tpo grub-core/video/$(DEPDIR)/libgrubmods_a-capture.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/video/capture.c' object='grub-core/video/libgrubmods_a-capture.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/video/libgrubmods_a-capture.o `test -f 'grub-core/video/capture.c' || echo '$(srcdir)/'`grub-core/video/capture.c - -grub-core/video/libgrubmods_a-capture.obj: grub-core/video/capture.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/video/libgrubmods_a-capture.obj -MD -MP -MF grub-core/video/$(DEPDIR)/libgrubmods_a-capture.Tpo -c -o grub-core/video/libgrubmods_a-capture.obj `if test -f 'grub-core/video/capture.c'; then $(CYGPATH_W) 'grub-core/video/capture.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/video/capture.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/video/$(DEPDIR)/libgrubmods_a-capture.Tpo grub-core/video/$(DEPDIR)/libgrubmods_a-capture.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/video/capture.c' object='grub-core/video/libgrubmods_a-capture.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/video/libgrubmods_a-capture.obj `if test -f 'grub-core/video/capture.c'; then $(CYGPATH_W) 'grub-core/video/capture.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/video/capture.c'; fi` - -grub-core/video/libgrubmods_a-colors.o: grub-core/video/colors.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/video/libgrubmods_a-colors.o -MD -MP -MF grub-core/video/$(DEPDIR)/libgrubmods_a-colors.Tpo -c -o grub-core/video/libgrubmods_a-colors.o `test -f 'grub-core/video/colors.c' || echo '$(srcdir)/'`grub-core/video/colors.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/video/$(DEPDIR)/libgrubmods_a-colors.Tpo grub-core/video/$(DEPDIR)/libgrubmods_a-colors.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/video/colors.c' object='grub-core/video/libgrubmods_a-colors.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/video/libgrubmods_a-colors.o `test -f 'grub-core/video/colors.c' || echo '$(srcdir)/'`grub-core/video/colors.c - -grub-core/video/libgrubmods_a-colors.obj: grub-core/video/colors.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/video/libgrubmods_a-colors.obj -MD -MP -MF grub-core/video/$(DEPDIR)/libgrubmods_a-colors.Tpo -c -o grub-core/video/libgrubmods_a-colors.obj `if test -f 'grub-core/video/colors.c'; then $(CYGPATH_W) 'grub-core/video/colors.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/video/colors.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/video/$(DEPDIR)/libgrubmods_a-colors.Tpo grub-core/video/$(DEPDIR)/libgrubmods_a-colors.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/video/colors.c' object='grub-core/video/libgrubmods_a-colors.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/video/libgrubmods_a-colors.obj `if test -f 'grub-core/video/colors.c'; then $(CYGPATH_W) 'grub-core/video/colors.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/video/colors.c'; fi` - -grub-core/libgrubmods_a-unidata.o: grub-core/unidata.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/libgrubmods_a-unidata.o -MD -MP -MF grub-core/$(DEPDIR)/libgrubmods_a-unidata.Tpo -c -o grub-core/libgrubmods_a-unidata.o `test -f 'grub-core/unidata.c' || echo '$(srcdir)/'`grub-core/unidata.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/$(DEPDIR)/libgrubmods_a-unidata.Tpo grub-core/$(DEPDIR)/libgrubmods_a-unidata.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/unidata.c' object='grub-core/libgrubmods_a-unidata.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/libgrubmods_a-unidata.o `test -f 'grub-core/unidata.c' || echo '$(srcdir)/'`grub-core/unidata.c - -grub-core/libgrubmods_a-unidata.obj: grub-core/unidata.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/libgrubmods_a-unidata.obj -MD -MP -MF grub-core/$(DEPDIR)/libgrubmods_a-unidata.Tpo -c -o grub-core/libgrubmods_a-unidata.obj `if test -f 'grub-core/unidata.c'; then $(CYGPATH_W) 'grub-core/unidata.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/unidata.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/$(DEPDIR)/libgrubmods_a-unidata.Tpo grub-core/$(DEPDIR)/libgrubmods_a-unidata.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/unidata.c' object='grub-core/libgrubmods_a-unidata.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/libgrubmods_a-unidata.obj `if test -f 'grub-core/unidata.c'; then $(CYGPATH_W) 'grub-core/unidata.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/unidata.c'; fi` - -grub-core/io/libgrubmods_a-bufio.o: grub-core/io/bufio.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/io/libgrubmods_a-bufio.o -MD -MP -MF grub-core/io/$(DEPDIR)/libgrubmods_a-bufio.Tpo -c -o grub-core/io/libgrubmods_a-bufio.o `test -f 'grub-core/io/bufio.c' || echo '$(srcdir)/'`grub-core/io/bufio.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/io/$(DEPDIR)/libgrubmods_a-bufio.Tpo grub-core/io/$(DEPDIR)/libgrubmods_a-bufio.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/io/bufio.c' object='grub-core/io/libgrubmods_a-bufio.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/io/libgrubmods_a-bufio.o `test -f 'grub-core/io/bufio.c' || echo '$(srcdir)/'`grub-core/io/bufio.c - -grub-core/io/libgrubmods_a-bufio.obj: grub-core/io/bufio.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/io/libgrubmods_a-bufio.obj -MD -MP -MF grub-core/io/$(DEPDIR)/libgrubmods_a-bufio.Tpo -c -o grub-core/io/libgrubmods_a-bufio.obj `if test -f 'grub-core/io/bufio.c'; then $(CYGPATH_W) 'grub-core/io/bufio.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/io/bufio.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/io/$(DEPDIR)/libgrubmods_a-bufio.Tpo grub-core/io/$(DEPDIR)/libgrubmods_a-bufio.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/io/bufio.c' object='grub-core/io/libgrubmods_a-bufio.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/io/libgrubmods_a-bufio.obj `if test -f 'grub-core/io/bufio.c'; then $(CYGPATH_W) 'grub-core/io/bufio.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/io/bufio.c'; fi` - -grub-core/fs/libgrubmods_a-affs.o: grub-core/fs/affs.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/fs/libgrubmods_a-affs.o -MD -MP -MF grub-core/fs/$(DEPDIR)/libgrubmods_a-affs.Tpo -c -o grub-core/fs/libgrubmods_a-affs.o `test -f 'grub-core/fs/affs.c' || echo '$(srcdir)/'`grub-core/fs/affs.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/fs/$(DEPDIR)/libgrubmods_a-affs.Tpo grub-core/fs/$(DEPDIR)/libgrubmods_a-affs.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/fs/affs.c' object='grub-core/fs/libgrubmods_a-affs.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/fs/libgrubmods_a-affs.o `test -f 'grub-core/fs/affs.c' || echo '$(srcdir)/'`grub-core/fs/affs.c - -grub-core/fs/libgrubmods_a-affs.obj: grub-core/fs/affs.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/fs/libgrubmods_a-affs.obj -MD -MP -MF grub-core/fs/$(DEPDIR)/libgrubmods_a-affs.Tpo -c -o grub-core/fs/libgrubmods_a-affs.obj `if test -f 'grub-core/fs/affs.c'; then $(CYGPATH_W) 'grub-core/fs/affs.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/fs/affs.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/fs/$(DEPDIR)/libgrubmods_a-affs.Tpo grub-core/fs/$(DEPDIR)/libgrubmods_a-affs.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/fs/affs.c' object='grub-core/fs/libgrubmods_a-affs.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/fs/libgrubmods_a-affs.obj `if test -f 'grub-core/fs/affs.c'; then $(CYGPATH_W) 'grub-core/fs/affs.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/fs/affs.c'; fi` - -grub-core/fs/libgrubmods_a-afs.o: grub-core/fs/afs.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/fs/libgrubmods_a-afs.o -MD -MP -MF grub-core/fs/$(DEPDIR)/libgrubmods_a-afs.Tpo -c -o grub-core/fs/libgrubmods_a-afs.o `test -f 'grub-core/fs/afs.c' || echo '$(srcdir)/'`grub-core/fs/afs.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/fs/$(DEPDIR)/libgrubmods_a-afs.Tpo grub-core/fs/$(DEPDIR)/libgrubmods_a-afs.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/fs/afs.c' object='grub-core/fs/libgrubmods_a-afs.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/fs/libgrubmods_a-afs.o `test -f 'grub-core/fs/afs.c' || echo '$(srcdir)/'`grub-core/fs/afs.c - -grub-core/fs/libgrubmods_a-afs.obj: grub-core/fs/afs.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/fs/libgrubmods_a-afs.obj -MD -MP -MF grub-core/fs/$(DEPDIR)/libgrubmods_a-afs.Tpo -c -o grub-core/fs/libgrubmods_a-afs.obj `if test -f 'grub-core/fs/afs.c'; then $(CYGPATH_W) 'grub-core/fs/afs.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/fs/afs.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/fs/$(DEPDIR)/libgrubmods_a-afs.Tpo grub-core/fs/$(DEPDIR)/libgrubmods_a-afs.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/fs/afs.c' object='grub-core/fs/libgrubmods_a-afs.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/fs/libgrubmods_a-afs.obj `if test -f 'grub-core/fs/afs.c'; then $(CYGPATH_W) 'grub-core/fs/afs.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/fs/afs.c'; fi` - -grub-core/fs/libgrubmods_a-bfs.o: grub-core/fs/bfs.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/fs/libgrubmods_a-bfs.o -MD -MP -MF grub-core/fs/$(DEPDIR)/libgrubmods_a-bfs.Tpo -c -o grub-core/fs/libgrubmods_a-bfs.o `test -f 'grub-core/fs/bfs.c' || echo '$(srcdir)/'`grub-core/fs/bfs.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/fs/$(DEPDIR)/libgrubmods_a-bfs.Tpo grub-core/fs/$(DEPDIR)/libgrubmods_a-bfs.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/fs/bfs.c' object='grub-core/fs/libgrubmods_a-bfs.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/fs/libgrubmods_a-bfs.o `test -f 'grub-core/fs/bfs.c' || echo '$(srcdir)/'`grub-core/fs/bfs.c - -grub-core/fs/libgrubmods_a-bfs.obj: grub-core/fs/bfs.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/fs/libgrubmods_a-bfs.obj -MD -MP -MF grub-core/fs/$(DEPDIR)/libgrubmods_a-bfs.Tpo -c -o grub-core/fs/libgrubmods_a-bfs.obj `if test -f 'grub-core/fs/bfs.c'; then $(CYGPATH_W) 'grub-core/fs/bfs.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/fs/bfs.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/fs/$(DEPDIR)/libgrubmods_a-bfs.Tpo grub-core/fs/$(DEPDIR)/libgrubmods_a-bfs.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/fs/bfs.c' object='grub-core/fs/libgrubmods_a-bfs.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/fs/libgrubmods_a-bfs.obj `if test -f 'grub-core/fs/bfs.c'; then $(CYGPATH_W) 'grub-core/fs/bfs.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/fs/bfs.c'; fi` - -grub-core/fs/libgrubmods_a-btrfs.o: grub-core/fs/btrfs.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/fs/libgrubmods_a-btrfs.o -MD -MP -MF grub-core/fs/$(DEPDIR)/libgrubmods_a-btrfs.Tpo -c -o grub-core/fs/libgrubmods_a-btrfs.o `test -f 'grub-core/fs/btrfs.c' || echo '$(srcdir)/'`grub-core/fs/btrfs.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/fs/$(DEPDIR)/libgrubmods_a-btrfs.Tpo grub-core/fs/$(DEPDIR)/libgrubmods_a-btrfs.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/fs/btrfs.c' object='grub-core/fs/libgrubmods_a-btrfs.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/fs/libgrubmods_a-btrfs.o `test -f 'grub-core/fs/btrfs.c' || echo '$(srcdir)/'`grub-core/fs/btrfs.c - -grub-core/fs/libgrubmods_a-btrfs.obj: grub-core/fs/btrfs.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/fs/libgrubmods_a-btrfs.obj -MD -MP -MF grub-core/fs/$(DEPDIR)/libgrubmods_a-btrfs.Tpo -c -o grub-core/fs/libgrubmods_a-btrfs.obj `if test -f 'grub-core/fs/btrfs.c'; then $(CYGPATH_W) 'grub-core/fs/btrfs.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/fs/btrfs.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/fs/$(DEPDIR)/libgrubmods_a-btrfs.Tpo grub-core/fs/$(DEPDIR)/libgrubmods_a-btrfs.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/fs/btrfs.c' object='grub-core/fs/libgrubmods_a-btrfs.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/fs/libgrubmods_a-btrfs.obj `if test -f 'grub-core/fs/btrfs.c'; then $(CYGPATH_W) 'grub-core/fs/btrfs.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/fs/btrfs.c'; fi` - -grub-core/fs/libgrubmods_a-cbfs.o: grub-core/fs/cbfs.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/fs/libgrubmods_a-cbfs.o -MD -MP -MF grub-core/fs/$(DEPDIR)/libgrubmods_a-cbfs.Tpo -c -o grub-core/fs/libgrubmods_a-cbfs.o `test -f 'grub-core/fs/cbfs.c' || echo '$(srcdir)/'`grub-core/fs/cbfs.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/fs/$(DEPDIR)/libgrubmods_a-cbfs.Tpo grub-core/fs/$(DEPDIR)/libgrubmods_a-cbfs.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/fs/cbfs.c' object='grub-core/fs/libgrubmods_a-cbfs.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/fs/libgrubmods_a-cbfs.o `test -f 'grub-core/fs/cbfs.c' || echo '$(srcdir)/'`grub-core/fs/cbfs.c - -grub-core/fs/libgrubmods_a-cbfs.obj: grub-core/fs/cbfs.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/fs/libgrubmods_a-cbfs.obj -MD -MP -MF grub-core/fs/$(DEPDIR)/libgrubmods_a-cbfs.Tpo -c -o grub-core/fs/libgrubmods_a-cbfs.obj `if test -f 'grub-core/fs/cbfs.c'; then $(CYGPATH_W) 'grub-core/fs/cbfs.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/fs/cbfs.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/fs/$(DEPDIR)/libgrubmods_a-cbfs.Tpo grub-core/fs/$(DEPDIR)/libgrubmods_a-cbfs.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/fs/cbfs.c' object='grub-core/fs/libgrubmods_a-cbfs.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/fs/libgrubmods_a-cbfs.obj `if test -f 'grub-core/fs/cbfs.c'; then $(CYGPATH_W) 'grub-core/fs/cbfs.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/fs/cbfs.c'; fi` - -grub-core/fs/libgrubmods_a-cpio.o: grub-core/fs/cpio.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/fs/libgrubmods_a-cpio.o -MD -MP -MF grub-core/fs/$(DEPDIR)/libgrubmods_a-cpio.Tpo -c -o grub-core/fs/libgrubmods_a-cpio.o `test -f 'grub-core/fs/cpio.c' || echo '$(srcdir)/'`grub-core/fs/cpio.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/fs/$(DEPDIR)/libgrubmods_a-cpio.Tpo grub-core/fs/$(DEPDIR)/libgrubmods_a-cpio.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/fs/cpio.c' object='grub-core/fs/libgrubmods_a-cpio.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/fs/libgrubmods_a-cpio.o `test -f 'grub-core/fs/cpio.c' || echo '$(srcdir)/'`grub-core/fs/cpio.c - -grub-core/fs/libgrubmods_a-cpio.obj: grub-core/fs/cpio.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/fs/libgrubmods_a-cpio.obj -MD -MP -MF grub-core/fs/$(DEPDIR)/libgrubmods_a-cpio.Tpo -c -o grub-core/fs/libgrubmods_a-cpio.obj `if test -f 'grub-core/fs/cpio.c'; then $(CYGPATH_W) 'grub-core/fs/cpio.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/fs/cpio.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/fs/$(DEPDIR)/libgrubmods_a-cpio.Tpo grub-core/fs/$(DEPDIR)/libgrubmods_a-cpio.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/fs/cpio.c' object='grub-core/fs/libgrubmods_a-cpio.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/fs/libgrubmods_a-cpio.obj `if test -f 'grub-core/fs/cpio.c'; then $(CYGPATH_W) 'grub-core/fs/cpio.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/fs/cpio.c'; fi` - -grub-core/fs/libgrubmods_a-cpio_be.o: grub-core/fs/cpio_be.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/fs/libgrubmods_a-cpio_be.o -MD -MP -MF grub-core/fs/$(DEPDIR)/libgrubmods_a-cpio_be.Tpo -c -o grub-core/fs/libgrubmods_a-cpio_be.o `test -f 'grub-core/fs/cpio_be.c' || echo '$(srcdir)/'`grub-core/fs/cpio_be.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/fs/$(DEPDIR)/libgrubmods_a-cpio_be.Tpo grub-core/fs/$(DEPDIR)/libgrubmods_a-cpio_be.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/fs/cpio_be.c' object='grub-core/fs/libgrubmods_a-cpio_be.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/fs/libgrubmods_a-cpio_be.o `test -f 'grub-core/fs/cpio_be.c' || echo '$(srcdir)/'`grub-core/fs/cpio_be.c - -grub-core/fs/libgrubmods_a-cpio_be.obj: grub-core/fs/cpio_be.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/fs/libgrubmods_a-cpio_be.obj -MD -MP -MF grub-core/fs/$(DEPDIR)/libgrubmods_a-cpio_be.Tpo -c -o grub-core/fs/libgrubmods_a-cpio_be.obj `if test -f 'grub-core/fs/cpio_be.c'; then $(CYGPATH_W) 'grub-core/fs/cpio_be.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/fs/cpio_be.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/fs/$(DEPDIR)/libgrubmods_a-cpio_be.Tpo grub-core/fs/$(DEPDIR)/libgrubmods_a-cpio_be.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/fs/cpio_be.c' object='grub-core/fs/libgrubmods_a-cpio_be.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/fs/libgrubmods_a-cpio_be.obj `if test -f 'grub-core/fs/cpio_be.c'; then $(CYGPATH_W) 'grub-core/fs/cpio_be.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/fs/cpio_be.c'; fi` - -grub-core/fs/libgrubmods_a-odc.o: grub-core/fs/odc.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/fs/libgrubmods_a-odc.o -MD -MP -MF grub-core/fs/$(DEPDIR)/libgrubmods_a-odc.Tpo -c -o grub-core/fs/libgrubmods_a-odc.o `test -f 'grub-core/fs/odc.c' || echo '$(srcdir)/'`grub-core/fs/odc.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/fs/$(DEPDIR)/libgrubmods_a-odc.Tpo grub-core/fs/$(DEPDIR)/libgrubmods_a-odc.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/fs/odc.c' object='grub-core/fs/libgrubmods_a-odc.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/fs/libgrubmods_a-odc.o `test -f 'grub-core/fs/odc.c' || echo '$(srcdir)/'`grub-core/fs/odc.c - -grub-core/fs/libgrubmods_a-odc.obj: grub-core/fs/odc.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/fs/libgrubmods_a-odc.obj -MD -MP -MF grub-core/fs/$(DEPDIR)/libgrubmods_a-odc.Tpo -c -o grub-core/fs/libgrubmods_a-odc.obj `if test -f 'grub-core/fs/odc.c'; then $(CYGPATH_W) 'grub-core/fs/odc.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/fs/odc.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/fs/$(DEPDIR)/libgrubmods_a-odc.Tpo grub-core/fs/$(DEPDIR)/libgrubmods_a-odc.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/fs/odc.c' object='grub-core/fs/libgrubmods_a-odc.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/fs/libgrubmods_a-odc.obj `if test -f 'grub-core/fs/odc.c'; then $(CYGPATH_W) 'grub-core/fs/odc.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/fs/odc.c'; fi` - -grub-core/fs/libgrubmods_a-newc.o: grub-core/fs/newc.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/fs/libgrubmods_a-newc.o -MD -MP -MF grub-core/fs/$(DEPDIR)/libgrubmods_a-newc.Tpo -c -o grub-core/fs/libgrubmods_a-newc.o `test -f 'grub-core/fs/newc.c' || echo '$(srcdir)/'`grub-core/fs/newc.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/fs/$(DEPDIR)/libgrubmods_a-newc.Tpo grub-core/fs/$(DEPDIR)/libgrubmods_a-newc.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/fs/newc.c' object='grub-core/fs/libgrubmods_a-newc.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/fs/libgrubmods_a-newc.o `test -f 'grub-core/fs/newc.c' || echo '$(srcdir)/'`grub-core/fs/newc.c - -grub-core/fs/libgrubmods_a-newc.obj: grub-core/fs/newc.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/fs/libgrubmods_a-newc.obj -MD -MP -MF grub-core/fs/$(DEPDIR)/libgrubmods_a-newc.Tpo -c -o grub-core/fs/libgrubmods_a-newc.obj `if test -f 'grub-core/fs/newc.c'; then $(CYGPATH_W) 'grub-core/fs/newc.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/fs/newc.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/fs/$(DEPDIR)/libgrubmods_a-newc.Tpo grub-core/fs/$(DEPDIR)/libgrubmods_a-newc.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/fs/newc.c' object='grub-core/fs/libgrubmods_a-newc.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/fs/libgrubmods_a-newc.obj `if test -f 'grub-core/fs/newc.c'; then $(CYGPATH_W) 'grub-core/fs/newc.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/fs/newc.c'; fi` - -grub-core/fs/libgrubmods_a-ext2.o: grub-core/fs/ext2.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/fs/libgrubmods_a-ext2.o -MD -MP -MF grub-core/fs/$(DEPDIR)/libgrubmods_a-ext2.Tpo -c -o grub-core/fs/libgrubmods_a-ext2.o `test -f 'grub-core/fs/ext2.c' || echo '$(srcdir)/'`grub-core/fs/ext2.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/fs/$(DEPDIR)/libgrubmods_a-ext2.Tpo grub-core/fs/$(DEPDIR)/libgrubmods_a-ext2.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/fs/ext2.c' object='grub-core/fs/libgrubmods_a-ext2.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/fs/libgrubmods_a-ext2.o `test -f 'grub-core/fs/ext2.c' || echo '$(srcdir)/'`grub-core/fs/ext2.c - -grub-core/fs/libgrubmods_a-ext2.obj: grub-core/fs/ext2.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/fs/libgrubmods_a-ext2.obj -MD -MP -MF grub-core/fs/$(DEPDIR)/libgrubmods_a-ext2.Tpo -c -o grub-core/fs/libgrubmods_a-ext2.obj `if test -f 'grub-core/fs/ext2.c'; then $(CYGPATH_W) 'grub-core/fs/ext2.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/fs/ext2.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/fs/$(DEPDIR)/libgrubmods_a-ext2.Tpo grub-core/fs/$(DEPDIR)/libgrubmods_a-ext2.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/fs/ext2.c' object='grub-core/fs/libgrubmods_a-ext2.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/fs/libgrubmods_a-ext2.obj `if test -f 'grub-core/fs/ext2.c'; then $(CYGPATH_W) 'grub-core/fs/ext2.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/fs/ext2.c'; fi` - -grub-core/fs/libgrubmods_a-fat.o: grub-core/fs/fat.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/fs/libgrubmods_a-fat.o -MD -MP -MF grub-core/fs/$(DEPDIR)/libgrubmods_a-fat.Tpo -c -o grub-core/fs/libgrubmods_a-fat.o `test -f 'grub-core/fs/fat.c' || echo '$(srcdir)/'`grub-core/fs/fat.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/fs/$(DEPDIR)/libgrubmods_a-fat.Tpo grub-core/fs/$(DEPDIR)/libgrubmods_a-fat.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/fs/fat.c' object='grub-core/fs/libgrubmods_a-fat.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/fs/libgrubmods_a-fat.o `test -f 'grub-core/fs/fat.c' || echo '$(srcdir)/'`grub-core/fs/fat.c - -grub-core/fs/libgrubmods_a-fat.obj: grub-core/fs/fat.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/fs/libgrubmods_a-fat.obj -MD -MP -MF grub-core/fs/$(DEPDIR)/libgrubmods_a-fat.Tpo -c -o grub-core/fs/libgrubmods_a-fat.obj `if test -f 'grub-core/fs/fat.c'; then $(CYGPATH_W) 'grub-core/fs/fat.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/fs/fat.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/fs/$(DEPDIR)/libgrubmods_a-fat.Tpo grub-core/fs/$(DEPDIR)/libgrubmods_a-fat.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/fs/fat.c' object='grub-core/fs/libgrubmods_a-fat.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/fs/libgrubmods_a-fat.obj `if test -f 'grub-core/fs/fat.c'; then $(CYGPATH_W) 'grub-core/fs/fat.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/fs/fat.c'; fi` - -grub-core/fs/libgrubmods_a-exfat.o: grub-core/fs/exfat.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/fs/libgrubmods_a-exfat.o -MD -MP -MF grub-core/fs/$(DEPDIR)/libgrubmods_a-exfat.Tpo -c -o grub-core/fs/libgrubmods_a-exfat.o `test -f 'grub-core/fs/exfat.c' || echo '$(srcdir)/'`grub-core/fs/exfat.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/fs/$(DEPDIR)/libgrubmods_a-exfat.Tpo grub-core/fs/$(DEPDIR)/libgrubmods_a-exfat.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/fs/exfat.c' object='grub-core/fs/libgrubmods_a-exfat.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/fs/libgrubmods_a-exfat.o `test -f 'grub-core/fs/exfat.c' || echo '$(srcdir)/'`grub-core/fs/exfat.c - -grub-core/fs/libgrubmods_a-exfat.obj: grub-core/fs/exfat.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/fs/libgrubmods_a-exfat.obj -MD -MP -MF grub-core/fs/$(DEPDIR)/libgrubmods_a-exfat.Tpo -c -o grub-core/fs/libgrubmods_a-exfat.obj `if test -f 'grub-core/fs/exfat.c'; then $(CYGPATH_W) 'grub-core/fs/exfat.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/fs/exfat.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/fs/$(DEPDIR)/libgrubmods_a-exfat.Tpo grub-core/fs/$(DEPDIR)/libgrubmods_a-exfat.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/fs/exfat.c' object='grub-core/fs/libgrubmods_a-exfat.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/fs/libgrubmods_a-exfat.obj `if test -f 'grub-core/fs/exfat.c'; then $(CYGPATH_W) 'grub-core/fs/exfat.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/fs/exfat.c'; fi` - -grub-core/fs/libgrubmods_a-f2fs.o: grub-core/fs/f2fs.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/fs/libgrubmods_a-f2fs.o -MD -MP -MF grub-core/fs/$(DEPDIR)/libgrubmods_a-f2fs.Tpo -c -o grub-core/fs/libgrubmods_a-f2fs.o `test -f 'grub-core/fs/f2fs.c' || echo '$(srcdir)/'`grub-core/fs/f2fs.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/fs/$(DEPDIR)/libgrubmods_a-f2fs.Tpo grub-core/fs/$(DEPDIR)/libgrubmods_a-f2fs.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/fs/f2fs.c' object='grub-core/fs/libgrubmods_a-f2fs.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/fs/libgrubmods_a-f2fs.o `test -f 'grub-core/fs/f2fs.c' || echo '$(srcdir)/'`grub-core/fs/f2fs.c - -grub-core/fs/libgrubmods_a-f2fs.obj: grub-core/fs/f2fs.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/fs/libgrubmods_a-f2fs.obj -MD -MP -MF grub-core/fs/$(DEPDIR)/libgrubmods_a-f2fs.Tpo -c -o grub-core/fs/libgrubmods_a-f2fs.obj `if test -f 'grub-core/fs/f2fs.c'; then $(CYGPATH_W) 'grub-core/fs/f2fs.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/fs/f2fs.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/fs/$(DEPDIR)/libgrubmods_a-f2fs.Tpo grub-core/fs/$(DEPDIR)/libgrubmods_a-f2fs.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/fs/f2fs.c' object='grub-core/fs/libgrubmods_a-f2fs.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/fs/libgrubmods_a-f2fs.obj `if test -f 'grub-core/fs/f2fs.c'; then $(CYGPATH_W) 'grub-core/fs/f2fs.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/fs/f2fs.c'; fi` - -grub-core/fs/libgrubmods_a-fshelp.o: grub-core/fs/fshelp.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/fs/libgrubmods_a-fshelp.o -MD -MP -MF grub-core/fs/$(DEPDIR)/libgrubmods_a-fshelp.Tpo -c -o grub-core/fs/libgrubmods_a-fshelp.o `test -f 'grub-core/fs/fshelp.c' || echo '$(srcdir)/'`grub-core/fs/fshelp.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/fs/$(DEPDIR)/libgrubmods_a-fshelp.Tpo grub-core/fs/$(DEPDIR)/libgrubmods_a-fshelp.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/fs/fshelp.c' object='grub-core/fs/libgrubmods_a-fshelp.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/fs/libgrubmods_a-fshelp.o `test -f 'grub-core/fs/fshelp.c' || echo '$(srcdir)/'`grub-core/fs/fshelp.c - -grub-core/fs/libgrubmods_a-fshelp.obj: grub-core/fs/fshelp.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/fs/libgrubmods_a-fshelp.obj -MD -MP -MF grub-core/fs/$(DEPDIR)/libgrubmods_a-fshelp.Tpo -c -o grub-core/fs/libgrubmods_a-fshelp.obj `if test -f 'grub-core/fs/fshelp.c'; then $(CYGPATH_W) 'grub-core/fs/fshelp.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/fs/fshelp.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/fs/$(DEPDIR)/libgrubmods_a-fshelp.Tpo grub-core/fs/$(DEPDIR)/libgrubmods_a-fshelp.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/fs/fshelp.c' object='grub-core/fs/libgrubmods_a-fshelp.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/fs/libgrubmods_a-fshelp.obj `if test -f 'grub-core/fs/fshelp.c'; then $(CYGPATH_W) 'grub-core/fs/fshelp.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/fs/fshelp.c'; fi` - -grub-core/fs/libgrubmods_a-hfs.o: grub-core/fs/hfs.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/fs/libgrubmods_a-hfs.o -MD -MP -MF grub-core/fs/$(DEPDIR)/libgrubmods_a-hfs.Tpo -c -o grub-core/fs/libgrubmods_a-hfs.o `test -f 'grub-core/fs/hfs.c' || echo '$(srcdir)/'`grub-core/fs/hfs.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/fs/$(DEPDIR)/libgrubmods_a-hfs.Tpo grub-core/fs/$(DEPDIR)/libgrubmods_a-hfs.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/fs/hfs.c' object='grub-core/fs/libgrubmods_a-hfs.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/fs/libgrubmods_a-hfs.o `test -f 'grub-core/fs/hfs.c' || echo '$(srcdir)/'`grub-core/fs/hfs.c - -grub-core/fs/libgrubmods_a-hfs.obj: grub-core/fs/hfs.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/fs/libgrubmods_a-hfs.obj -MD -MP -MF grub-core/fs/$(DEPDIR)/libgrubmods_a-hfs.Tpo -c -o grub-core/fs/libgrubmods_a-hfs.obj `if test -f 'grub-core/fs/hfs.c'; then $(CYGPATH_W) 'grub-core/fs/hfs.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/fs/hfs.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/fs/$(DEPDIR)/libgrubmods_a-hfs.Tpo grub-core/fs/$(DEPDIR)/libgrubmods_a-hfs.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/fs/hfs.c' object='grub-core/fs/libgrubmods_a-hfs.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/fs/libgrubmods_a-hfs.obj `if test -f 'grub-core/fs/hfs.c'; then $(CYGPATH_W) 'grub-core/fs/hfs.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/fs/hfs.c'; fi` - -grub-core/fs/libgrubmods_a-hfsplus.o: grub-core/fs/hfsplus.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/fs/libgrubmods_a-hfsplus.o -MD -MP -MF grub-core/fs/$(DEPDIR)/libgrubmods_a-hfsplus.Tpo -c -o grub-core/fs/libgrubmods_a-hfsplus.o `test -f 'grub-core/fs/hfsplus.c' || echo '$(srcdir)/'`grub-core/fs/hfsplus.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/fs/$(DEPDIR)/libgrubmods_a-hfsplus.Tpo grub-core/fs/$(DEPDIR)/libgrubmods_a-hfsplus.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/fs/hfsplus.c' object='grub-core/fs/libgrubmods_a-hfsplus.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/fs/libgrubmods_a-hfsplus.o `test -f 'grub-core/fs/hfsplus.c' || echo '$(srcdir)/'`grub-core/fs/hfsplus.c - -grub-core/fs/libgrubmods_a-hfsplus.obj: grub-core/fs/hfsplus.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/fs/libgrubmods_a-hfsplus.obj -MD -MP -MF grub-core/fs/$(DEPDIR)/libgrubmods_a-hfsplus.Tpo -c -o grub-core/fs/libgrubmods_a-hfsplus.obj `if test -f 'grub-core/fs/hfsplus.c'; then $(CYGPATH_W) 'grub-core/fs/hfsplus.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/fs/hfsplus.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/fs/$(DEPDIR)/libgrubmods_a-hfsplus.Tpo grub-core/fs/$(DEPDIR)/libgrubmods_a-hfsplus.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/fs/hfsplus.c' object='grub-core/fs/libgrubmods_a-hfsplus.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/fs/libgrubmods_a-hfsplus.obj `if test -f 'grub-core/fs/hfsplus.c'; then $(CYGPATH_W) 'grub-core/fs/hfsplus.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/fs/hfsplus.c'; fi` - -grub-core/fs/libgrubmods_a-hfspluscomp.o: grub-core/fs/hfspluscomp.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/fs/libgrubmods_a-hfspluscomp.o -MD -MP -MF grub-core/fs/$(DEPDIR)/libgrubmods_a-hfspluscomp.Tpo -c -o grub-core/fs/libgrubmods_a-hfspluscomp.o `test -f 'grub-core/fs/hfspluscomp.c' || echo '$(srcdir)/'`grub-core/fs/hfspluscomp.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/fs/$(DEPDIR)/libgrubmods_a-hfspluscomp.Tpo grub-core/fs/$(DEPDIR)/libgrubmods_a-hfspluscomp.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/fs/hfspluscomp.c' object='grub-core/fs/libgrubmods_a-hfspluscomp.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/fs/libgrubmods_a-hfspluscomp.o `test -f 'grub-core/fs/hfspluscomp.c' || echo '$(srcdir)/'`grub-core/fs/hfspluscomp.c - -grub-core/fs/libgrubmods_a-hfspluscomp.obj: grub-core/fs/hfspluscomp.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/fs/libgrubmods_a-hfspluscomp.obj -MD -MP -MF grub-core/fs/$(DEPDIR)/libgrubmods_a-hfspluscomp.Tpo -c -o grub-core/fs/libgrubmods_a-hfspluscomp.obj `if test -f 'grub-core/fs/hfspluscomp.c'; then $(CYGPATH_W) 'grub-core/fs/hfspluscomp.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/fs/hfspluscomp.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/fs/$(DEPDIR)/libgrubmods_a-hfspluscomp.Tpo grub-core/fs/$(DEPDIR)/libgrubmods_a-hfspluscomp.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/fs/hfspluscomp.c' object='grub-core/fs/libgrubmods_a-hfspluscomp.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/fs/libgrubmods_a-hfspluscomp.obj `if test -f 'grub-core/fs/hfspluscomp.c'; then $(CYGPATH_W) 'grub-core/fs/hfspluscomp.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/fs/hfspluscomp.c'; fi` - -grub-core/fs/libgrubmods_a-iso9660.o: grub-core/fs/iso9660.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/fs/libgrubmods_a-iso9660.o -MD -MP -MF grub-core/fs/$(DEPDIR)/libgrubmods_a-iso9660.Tpo -c -o grub-core/fs/libgrubmods_a-iso9660.o `test -f 'grub-core/fs/iso9660.c' || echo '$(srcdir)/'`grub-core/fs/iso9660.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/fs/$(DEPDIR)/libgrubmods_a-iso9660.Tpo grub-core/fs/$(DEPDIR)/libgrubmods_a-iso9660.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/fs/iso9660.c' object='grub-core/fs/libgrubmods_a-iso9660.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/fs/libgrubmods_a-iso9660.o `test -f 'grub-core/fs/iso9660.c' || echo '$(srcdir)/'`grub-core/fs/iso9660.c - -grub-core/fs/libgrubmods_a-iso9660.obj: grub-core/fs/iso9660.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/fs/libgrubmods_a-iso9660.obj -MD -MP -MF grub-core/fs/$(DEPDIR)/libgrubmods_a-iso9660.Tpo -c -o grub-core/fs/libgrubmods_a-iso9660.obj `if test -f 'grub-core/fs/iso9660.c'; then $(CYGPATH_W) 'grub-core/fs/iso9660.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/fs/iso9660.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/fs/$(DEPDIR)/libgrubmods_a-iso9660.Tpo grub-core/fs/$(DEPDIR)/libgrubmods_a-iso9660.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/fs/iso9660.c' object='grub-core/fs/libgrubmods_a-iso9660.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/fs/libgrubmods_a-iso9660.obj `if test -f 'grub-core/fs/iso9660.c'; then $(CYGPATH_W) 'grub-core/fs/iso9660.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/fs/iso9660.c'; fi` - -grub-core/fs/libgrubmods_a-jfs.o: grub-core/fs/jfs.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/fs/libgrubmods_a-jfs.o -MD -MP -MF grub-core/fs/$(DEPDIR)/libgrubmods_a-jfs.Tpo -c -o grub-core/fs/libgrubmods_a-jfs.o `test -f 'grub-core/fs/jfs.c' || echo '$(srcdir)/'`grub-core/fs/jfs.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/fs/$(DEPDIR)/libgrubmods_a-jfs.Tpo grub-core/fs/$(DEPDIR)/libgrubmods_a-jfs.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/fs/jfs.c' object='grub-core/fs/libgrubmods_a-jfs.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/fs/libgrubmods_a-jfs.o `test -f 'grub-core/fs/jfs.c' || echo '$(srcdir)/'`grub-core/fs/jfs.c - -grub-core/fs/libgrubmods_a-jfs.obj: grub-core/fs/jfs.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/fs/libgrubmods_a-jfs.obj -MD -MP -MF grub-core/fs/$(DEPDIR)/libgrubmods_a-jfs.Tpo -c -o grub-core/fs/libgrubmods_a-jfs.obj `if test -f 'grub-core/fs/jfs.c'; then $(CYGPATH_W) 'grub-core/fs/jfs.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/fs/jfs.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/fs/$(DEPDIR)/libgrubmods_a-jfs.Tpo grub-core/fs/$(DEPDIR)/libgrubmods_a-jfs.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/fs/jfs.c' object='grub-core/fs/libgrubmods_a-jfs.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/fs/libgrubmods_a-jfs.obj `if test -f 'grub-core/fs/jfs.c'; then $(CYGPATH_W) 'grub-core/fs/jfs.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/fs/jfs.c'; fi` - -grub-core/fs/libgrubmods_a-minix.o: grub-core/fs/minix.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/fs/libgrubmods_a-minix.o -MD -MP -MF grub-core/fs/$(DEPDIR)/libgrubmods_a-minix.Tpo -c -o grub-core/fs/libgrubmods_a-minix.o `test -f 'grub-core/fs/minix.c' || echo '$(srcdir)/'`grub-core/fs/minix.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/fs/$(DEPDIR)/libgrubmods_a-minix.Tpo grub-core/fs/$(DEPDIR)/libgrubmods_a-minix.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/fs/minix.c' object='grub-core/fs/libgrubmods_a-minix.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/fs/libgrubmods_a-minix.o `test -f 'grub-core/fs/minix.c' || echo '$(srcdir)/'`grub-core/fs/minix.c - -grub-core/fs/libgrubmods_a-minix.obj: grub-core/fs/minix.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/fs/libgrubmods_a-minix.obj -MD -MP -MF grub-core/fs/$(DEPDIR)/libgrubmods_a-minix.Tpo -c -o grub-core/fs/libgrubmods_a-minix.obj `if test -f 'grub-core/fs/minix.c'; then $(CYGPATH_W) 'grub-core/fs/minix.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/fs/minix.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/fs/$(DEPDIR)/libgrubmods_a-minix.Tpo grub-core/fs/$(DEPDIR)/libgrubmods_a-minix.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/fs/minix.c' object='grub-core/fs/libgrubmods_a-minix.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/fs/libgrubmods_a-minix.obj `if test -f 'grub-core/fs/minix.c'; then $(CYGPATH_W) 'grub-core/fs/minix.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/fs/minix.c'; fi` - -grub-core/fs/libgrubmods_a-minix2.o: grub-core/fs/minix2.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/fs/libgrubmods_a-minix2.o -MD -MP -MF grub-core/fs/$(DEPDIR)/libgrubmods_a-minix2.Tpo -c -o grub-core/fs/libgrubmods_a-minix2.o `test -f 'grub-core/fs/minix2.c' || echo '$(srcdir)/'`grub-core/fs/minix2.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/fs/$(DEPDIR)/libgrubmods_a-minix2.Tpo grub-core/fs/$(DEPDIR)/libgrubmods_a-minix2.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/fs/minix2.c' object='grub-core/fs/libgrubmods_a-minix2.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/fs/libgrubmods_a-minix2.o `test -f 'grub-core/fs/minix2.c' || echo '$(srcdir)/'`grub-core/fs/minix2.c - -grub-core/fs/libgrubmods_a-minix2.obj: grub-core/fs/minix2.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/fs/libgrubmods_a-minix2.obj -MD -MP -MF grub-core/fs/$(DEPDIR)/libgrubmods_a-minix2.Tpo -c -o grub-core/fs/libgrubmods_a-minix2.obj `if test -f 'grub-core/fs/minix2.c'; then $(CYGPATH_W) 'grub-core/fs/minix2.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/fs/minix2.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/fs/$(DEPDIR)/libgrubmods_a-minix2.Tpo grub-core/fs/$(DEPDIR)/libgrubmods_a-minix2.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/fs/minix2.c' object='grub-core/fs/libgrubmods_a-minix2.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/fs/libgrubmods_a-minix2.obj `if test -f 'grub-core/fs/minix2.c'; then $(CYGPATH_W) 'grub-core/fs/minix2.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/fs/minix2.c'; fi` - -grub-core/fs/libgrubmods_a-minix3.o: grub-core/fs/minix3.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/fs/libgrubmods_a-minix3.o -MD -MP -MF grub-core/fs/$(DEPDIR)/libgrubmods_a-minix3.Tpo -c -o grub-core/fs/libgrubmods_a-minix3.o `test -f 'grub-core/fs/minix3.c' || echo '$(srcdir)/'`grub-core/fs/minix3.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/fs/$(DEPDIR)/libgrubmods_a-minix3.Tpo grub-core/fs/$(DEPDIR)/libgrubmods_a-minix3.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/fs/minix3.c' object='grub-core/fs/libgrubmods_a-minix3.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/fs/libgrubmods_a-minix3.o `test -f 'grub-core/fs/minix3.c' || echo '$(srcdir)/'`grub-core/fs/minix3.c - -grub-core/fs/libgrubmods_a-minix3.obj: grub-core/fs/minix3.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/fs/libgrubmods_a-minix3.obj -MD -MP -MF grub-core/fs/$(DEPDIR)/libgrubmods_a-minix3.Tpo -c -o grub-core/fs/libgrubmods_a-minix3.obj `if test -f 'grub-core/fs/minix3.c'; then $(CYGPATH_W) 'grub-core/fs/minix3.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/fs/minix3.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/fs/$(DEPDIR)/libgrubmods_a-minix3.Tpo grub-core/fs/$(DEPDIR)/libgrubmods_a-minix3.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/fs/minix3.c' object='grub-core/fs/libgrubmods_a-minix3.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/fs/libgrubmods_a-minix3.obj `if test -f 'grub-core/fs/minix3.c'; then $(CYGPATH_W) 'grub-core/fs/minix3.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/fs/minix3.c'; fi` - -grub-core/fs/libgrubmods_a-minix_be.o: grub-core/fs/minix_be.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/fs/libgrubmods_a-minix_be.o -MD -MP -MF grub-core/fs/$(DEPDIR)/libgrubmods_a-minix_be.Tpo -c -o grub-core/fs/libgrubmods_a-minix_be.o `test -f 'grub-core/fs/minix_be.c' || echo '$(srcdir)/'`grub-core/fs/minix_be.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/fs/$(DEPDIR)/libgrubmods_a-minix_be.Tpo grub-core/fs/$(DEPDIR)/libgrubmods_a-minix_be.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/fs/minix_be.c' object='grub-core/fs/libgrubmods_a-minix_be.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/fs/libgrubmods_a-minix_be.o `test -f 'grub-core/fs/minix_be.c' || echo '$(srcdir)/'`grub-core/fs/minix_be.c - -grub-core/fs/libgrubmods_a-minix_be.obj: grub-core/fs/minix_be.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/fs/libgrubmods_a-minix_be.obj -MD -MP -MF grub-core/fs/$(DEPDIR)/libgrubmods_a-minix_be.Tpo -c -o grub-core/fs/libgrubmods_a-minix_be.obj `if test -f 'grub-core/fs/minix_be.c'; then $(CYGPATH_W) 'grub-core/fs/minix_be.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/fs/minix_be.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/fs/$(DEPDIR)/libgrubmods_a-minix_be.Tpo grub-core/fs/$(DEPDIR)/libgrubmods_a-minix_be.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/fs/minix_be.c' object='grub-core/fs/libgrubmods_a-minix_be.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/fs/libgrubmods_a-minix_be.obj `if test -f 'grub-core/fs/minix_be.c'; then $(CYGPATH_W) 'grub-core/fs/minix_be.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/fs/minix_be.c'; fi` - -grub-core/fs/libgrubmods_a-minix2_be.o: grub-core/fs/minix2_be.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/fs/libgrubmods_a-minix2_be.o -MD -MP -MF grub-core/fs/$(DEPDIR)/libgrubmods_a-minix2_be.Tpo -c -o grub-core/fs/libgrubmods_a-minix2_be.o `test -f 'grub-core/fs/minix2_be.c' || echo '$(srcdir)/'`grub-core/fs/minix2_be.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/fs/$(DEPDIR)/libgrubmods_a-minix2_be.Tpo grub-core/fs/$(DEPDIR)/libgrubmods_a-minix2_be.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/fs/minix2_be.c' object='grub-core/fs/libgrubmods_a-minix2_be.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/fs/libgrubmods_a-minix2_be.o `test -f 'grub-core/fs/minix2_be.c' || echo '$(srcdir)/'`grub-core/fs/minix2_be.c - -grub-core/fs/libgrubmods_a-minix2_be.obj: grub-core/fs/minix2_be.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/fs/libgrubmods_a-minix2_be.obj -MD -MP -MF grub-core/fs/$(DEPDIR)/libgrubmods_a-minix2_be.Tpo -c -o grub-core/fs/libgrubmods_a-minix2_be.obj `if test -f 'grub-core/fs/minix2_be.c'; then $(CYGPATH_W) 'grub-core/fs/minix2_be.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/fs/minix2_be.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/fs/$(DEPDIR)/libgrubmods_a-minix2_be.Tpo grub-core/fs/$(DEPDIR)/libgrubmods_a-minix2_be.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/fs/minix2_be.c' object='grub-core/fs/libgrubmods_a-minix2_be.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/fs/libgrubmods_a-minix2_be.obj `if test -f 'grub-core/fs/minix2_be.c'; then $(CYGPATH_W) 'grub-core/fs/minix2_be.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/fs/minix2_be.c'; fi` - -grub-core/fs/libgrubmods_a-minix3_be.o: grub-core/fs/minix3_be.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/fs/libgrubmods_a-minix3_be.o -MD -MP -MF grub-core/fs/$(DEPDIR)/libgrubmods_a-minix3_be.Tpo -c -o grub-core/fs/libgrubmods_a-minix3_be.o `test -f 'grub-core/fs/minix3_be.c' || echo '$(srcdir)/'`grub-core/fs/minix3_be.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/fs/$(DEPDIR)/libgrubmods_a-minix3_be.Tpo grub-core/fs/$(DEPDIR)/libgrubmods_a-minix3_be.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/fs/minix3_be.c' object='grub-core/fs/libgrubmods_a-minix3_be.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/fs/libgrubmods_a-minix3_be.o `test -f 'grub-core/fs/minix3_be.c' || echo '$(srcdir)/'`grub-core/fs/minix3_be.c - -grub-core/fs/libgrubmods_a-minix3_be.obj: grub-core/fs/minix3_be.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/fs/libgrubmods_a-minix3_be.obj -MD -MP -MF grub-core/fs/$(DEPDIR)/libgrubmods_a-minix3_be.Tpo -c -o grub-core/fs/libgrubmods_a-minix3_be.obj `if test -f 'grub-core/fs/minix3_be.c'; then $(CYGPATH_W) 'grub-core/fs/minix3_be.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/fs/minix3_be.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/fs/$(DEPDIR)/libgrubmods_a-minix3_be.Tpo grub-core/fs/$(DEPDIR)/libgrubmods_a-minix3_be.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/fs/minix3_be.c' object='grub-core/fs/libgrubmods_a-minix3_be.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/fs/libgrubmods_a-minix3_be.obj `if test -f 'grub-core/fs/minix3_be.c'; then $(CYGPATH_W) 'grub-core/fs/minix3_be.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/fs/minix3_be.c'; fi` - -grub-core/fs/libgrubmods_a-nilfs2.o: grub-core/fs/nilfs2.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/fs/libgrubmods_a-nilfs2.o -MD -MP -MF grub-core/fs/$(DEPDIR)/libgrubmods_a-nilfs2.Tpo -c -o grub-core/fs/libgrubmods_a-nilfs2.o `test -f 'grub-core/fs/nilfs2.c' || echo '$(srcdir)/'`grub-core/fs/nilfs2.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/fs/$(DEPDIR)/libgrubmods_a-nilfs2.Tpo grub-core/fs/$(DEPDIR)/libgrubmods_a-nilfs2.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/fs/nilfs2.c' object='grub-core/fs/libgrubmods_a-nilfs2.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/fs/libgrubmods_a-nilfs2.o `test -f 'grub-core/fs/nilfs2.c' || echo '$(srcdir)/'`grub-core/fs/nilfs2.c - -grub-core/fs/libgrubmods_a-nilfs2.obj: grub-core/fs/nilfs2.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/fs/libgrubmods_a-nilfs2.obj -MD -MP -MF grub-core/fs/$(DEPDIR)/libgrubmods_a-nilfs2.Tpo -c -o grub-core/fs/libgrubmods_a-nilfs2.obj `if test -f 'grub-core/fs/nilfs2.c'; then $(CYGPATH_W) 'grub-core/fs/nilfs2.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/fs/nilfs2.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/fs/$(DEPDIR)/libgrubmods_a-nilfs2.Tpo grub-core/fs/$(DEPDIR)/libgrubmods_a-nilfs2.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/fs/nilfs2.c' object='grub-core/fs/libgrubmods_a-nilfs2.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/fs/libgrubmods_a-nilfs2.obj `if test -f 'grub-core/fs/nilfs2.c'; then $(CYGPATH_W) 'grub-core/fs/nilfs2.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/fs/nilfs2.c'; fi` - -grub-core/fs/libgrubmods_a-ntfs.o: grub-core/fs/ntfs.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/fs/libgrubmods_a-ntfs.o -MD -MP -MF grub-core/fs/$(DEPDIR)/libgrubmods_a-ntfs.Tpo -c -o grub-core/fs/libgrubmods_a-ntfs.o `test -f 'grub-core/fs/ntfs.c' || echo '$(srcdir)/'`grub-core/fs/ntfs.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/fs/$(DEPDIR)/libgrubmods_a-ntfs.Tpo grub-core/fs/$(DEPDIR)/libgrubmods_a-ntfs.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/fs/ntfs.c' object='grub-core/fs/libgrubmods_a-ntfs.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/fs/libgrubmods_a-ntfs.o `test -f 'grub-core/fs/ntfs.c' || echo '$(srcdir)/'`grub-core/fs/ntfs.c - -grub-core/fs/libgrubmods_a-ntfs.obj: grub-core/fs/ntfs.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/fs/libgrubmods_a-ntfs.obj -MD -MP -MF grub-core/fs/$(DEPDIR)/libgrubmods_a-ntfs.Tpo -c -o grub-core/fs/libgrubmods_a-ntfs.obj `if test -f 'grub-core/fs/ntfs.c'; then $(CYGPATH_W) 'grub-core/fs/ntfs.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/fs/ntfs.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/fs/$(DEPDIR)/libgrubmods_a-ntfs.Tpo grub-core/fs/$(DEPDIR)/libgrubmods_a-ntfs.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/fs/ntfs.c' object='grub-core/fs/libgrubmods_a-ntfs.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/fs/libgrubmods_a-ntfs.obj `if test -f 'grub-core/fs/ntfs.c'; then $(CYGPATH_W) 'grub-core/fs/ntfs.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/fs/ntfs.c'; fi` - -grub-core/fs/libgrubmods_a-ntfscomp.o: grub-core/fs/ntfscomp.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/fs/libgrubmods_a-ntfscomp.o -MD -MP -MF grub-core/fs/$(DEPDIR)/libgrubmods_a-ntfscomp.Tpo -c -o grub-core/fs/libgrubmods_a-ntfscomp.o `test -f 'grub-core/fs/ntfscomp.c' || echo '$(srcdir)/'`grub-core/fs/ntfscomp.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/fs/$(DEPDIR)/libgrubmods_a-ntfscomp.Tpo grub-core/fs/$(DEPDIR)/libgrubmods_a-ntfscomp.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/fs/ntfscomp.c' object='grub-core/fs/libgrubmods_a-ntfscomp.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/fs/libgrubmods_a-ntfscomp.o `test -f 'grub-core/fs/ntfscomp.c' || echo '$(srcdir)/'`grub-core/fs/ntfscomp.c - -grub-core/fs/libgrubmods_a-ntfscomp.obj: grub-core/fs/ntfscomp.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/fs/libgrubmods_a-ntfscomp.obj -MD -MP -MF grub-core/fs/$(DEPDIR)/libgrubmods_a-ntfscomp.Tpo -c -o grub-core/fs/libgrubmods_a-ntfscomp.obj `if test -f 'grub-core/fs/ntfscomp.c'; then $(CYGPATH_W) 'grub-core/fs/ntfscomp.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/fs/ntfscomp.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/fs/$(DEPDIR)/libgrubmods_a-ntfscomp.Tpo grub-core/fs/$(DEPDIR)/libgrubmods_a-ntfscomp.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/fs/ntfscomp.c' object='grub-core/fs/libgrubmods_a-ntfscomp.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/fs/libgrubmods_a-ntfscomp.obj `if test -f 'grub-core/fs/ntfscomp.c'; then $(CYGPATH_W) 'grub-core/fs/ntfscomp.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/fs/ntfscomp.c'; fi` - -grub-core/fs/libgrubmods_a-reiserfs.o: grub-core/fs/reiserfs.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/fs/libgrubmods_a-reiserfs.o -MD -MP -MF grub-core/fs/$(DEPDIR)/libgrubmods_a-reiserfs.Tpo -c -o grub-core/fs/libgrubmods_a-reiserfs.o `test -f 'grub-core/fs/reiserfs.c' || echo '$(srcdir)/'`grub-core/fs/reiserfs.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/fs/$(DEPDIR)/libgrubmods_a-reiserfs.Tpo grub-core/fs/$(DEPDIR)/libgrubmods_a-reiserfs.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/fs/reiserfs.c' object='grub-core/fs/libgrubmods_a-reiserfs.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/fs/libgrubmods_a-reiserfs.o `test -f 'grub-core/fs/reiserfs.c' || echo '$(srcdir)/'`grub-core/fs/reiserfs.c - -grub-core/fs/libgrubmods_a-reiserfs.obj: grub-core/fs/reiserfs.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/fs/libgrubmods_a-reiserfs.obj -MD -MP -MF grub-core/fs/$(DEPDIR)/libgrubmods_a-reiserfs.Tpo -c -o grub-core/fs/libgrubmods_a-reiserfs.obj `if test -f 'grub-core/fs/reiserfs.c'; then $(CYGPATH_W) 'grub-core/fs/reiserfs.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/fs/reiserfs.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/fs/$(DEPDIR)/libgrubmods_a-reiserfs.Tpo grub-core/fs/$(DEPDIR)/libgrubmods_a-reiserfs.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/fs/reiserfs.c' object='grub-core/fs/libgrubmods_a-reiserfs.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/fs/libgrubmods_a-reiserfs.obj `if test -f 'grub-core/fs/reiserfs.c'; then $(CYGPATH_W) 'grub-core/fs/reiserfs.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/fs/reiserfs.c'; fi` - -grub-core/fs/libgrubmods_a-romfs.o: grub-core/fs/romfs.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/fs/libgrubmods_a-romfs.o -MD -MP -MF grub-core/fs/$(DEPDIR)/libgrubmods_a-romfs.Tpo -c -o grub-core/fs/libgrubmods_a-romfs.o `test -f 'grub-core/fs/romfs.c' || echo '$(srcdir)/'`grub-core/fs/romfs.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/fs/$(DEPDIR)/libgrubmods_a-romfs.Tpo grub-core/fs/$(DEPDIR)/libgrubmods_a-romfs.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/fs/romfs.c' object='grub-core/fs/libgrubmods_a-romfs.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/fs/libgrubmods_a-romfs.o `test -f 'grub-core/fs/romfs.c' || echo '$(srcdir)/'`grub-core/fs/romfs.c - -grub-core/fs/libgrubmods_a-romfs.obj: grub-core/fs/romfs.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/fs/libgrubmods_a-romfs.obj -MD -MP -MF grub-core/fs/$(DEPDIR)/libgrubmods_a-romfs.Tpo -c -o grub-core/fs/libgrubmods_a-romfs.obj `if test -f 'grub-core/fs/romfs.c'; then $(CYGPATH_W) 'grub-core/fs/romfs.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/fs/romfs.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/fs/$(DEPDIR)/libgrubmods_a-romfs.Tpo grub-core/fs/$(DEPDIR)/libgrubmods_a-romfs.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/fs/romfs.c' object='grub-core/fs/libgrubmods_a-romfs.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/fs/libgrubmods_a-romfs.obj `if test -f 'grub-core/fs/romfs.c'; then $(CYGPATH_W) 'grub-core/fs/romfs.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/fs/romfs.c'; fi` - -grub-core/fs/libgrubmods_a-sfs.o: grub-core/fs/sfs.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/fs/libgrubmods_a-sfs.o -MD -MP -MF grub-core/fs/$(DEPDIR)/libgrubmods_a-sfs.Tpo -c -o grub-core/fs/libgrubmods_a-sfs.o `test -f 'grub-core/fs/sfs.c' || echo '$(srcdir)/'`grub-core/fs/sfs.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/fs/$(DEPDIR)/libgrubmods_a-sfs.Tpo grub-core/fs/$(DEPDIR)/libgrubmods_a-sfs.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/fs/sfs.c' object='grub-core/fs/libgrubmods_a-sfs.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/fs/libgrubmods_a-sfs.o `test -f 'grub-core/fs/sfs.c' || echo '$(srcdir)/'`grub-core/fs/sfs.c - -grub-core/fs/libgrubmods_a-sfs.obj: grub-core/fs/sfs.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/fs/libgrubmods_a-sfs.obj -MD -MP -MF grub-core/fs/$(DEPDIR)/libgrubmods_a-sfs.Tpo -c -o grub-core/fs/libgrubmods_a-sfs.obj `if test -f 'grub-core/fs/sfs.c'; then $(CYGPATH_W) 'grub-core/fs/sfs.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/fs/sfs.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/fs/$(DEPDIR)/libgrubmods_a-sfs.Tpo grub-core/fs/$(DEPDIR)/libgrubmods_a-sfs.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/fs/sfs.c' object='grub-core/fs/libgrubmods_a-sfs.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/fs/libgrubmods_a-sfs.obj `if test -f 'grub-core/fs/sfs.c'; then $(CYGPATH_W) 'grub-core/fs/sfs.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/fs/sfs.c'; fi` - -grub-core/fs/libgrubmods_a-squash4.o: grub-core/fs/squash4.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/fs/libgrubmods_a-squash4.o -MD -MP -MF grub-core/fs/$(DEPDIR)/libgrubmods_a-squash4.Tpo -c -o grub-core/fs/libgrubmods_a-squash4.o `test -f 'grub-core/fs/squash4.c' || echo '$(srcdir)/'`grub-core/fs/squash4.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/fs/$(DEPDIR)/libgrubmods_a-squash4.Tpo grub-core/fs/$(DEPDIR)/libgrubmods_a-squash4.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/fs/squash4.c' object='grub-core/fs/libgrubmods_a-squash4.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/fs/libgrubmods_a-squash4.o `test -f 'grub-core/fs/squash4.c' || echo '$(srcdir)/'`grub-core/fs/squash4.c - -grub-core/fs/libgrubmods_a-squash4.obj: grub-core/fs/squash4.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/fs/libgrubmods_a-squash4.obj -MD -MP -MF grub-core/fs/$(DEPDIR)/libgrubmods_a-squash4.Tpo -c -o grub-core/fs/libgrubmods_a-squash4.obj `if test -f 'grub-core/fs/squash4.c'; then $(CYGPATH_W) 'grub-core/fs/squash4.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/fs/squash4.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/fs/$(DEPDIR)/libgrubmods_a-squash4.Tpo grub-core/fs/$(DEPDIR)/libgrubmods_a-squash4.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/fs/squash4.c' object='grub-core/fs/libgrubmods_a-squash4.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/fs/libgrubmods_a-squash4.obj `if test -f 'grub-core/fs/squash4.c'; then $(CYGPATH_W) 'grub-core/fs/squash4.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/fs/squash4.c'; fi` - -grub-core/fs/libgrubmods_a-tar.o: grub-core/fs/tar.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/fs/libgrubmods_a-tar.o -MD -MP -MF grub-core/fs/$(DEPDIR)/libgrubmods_a-tar.Tpo -c -o grub-core/fs/libgrubmods_a-tar.o `test -f 'grub-core/fs/tar.c' || echo '$(srcdir)/'`grub-core/fs/tar.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/fs/$(DEPDIR)/libgrubmods_a-tar.Tpo grub-core/fs/$(DEPDIR)/libgrubmods_a-tar.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/fs/tar.c' object='grub-core/fs/libgrubmods_a-tar.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/fs/libgrubmods_a-tar.o `test -f 'grub-core/fs/tar.c' || echo '$(srcdir)/'`grub-core/fs/tar.c - -grub-core/fs/libgrubmods_a-tar.obj: grub-core/fs/tar.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/fs/libgrubmods_a-tar.obj -MD -MP -MF grub-core/fs/$(DEPDIR)/libgrubmods_a-tar.Tpo -c -o grub-core/fs/libgrubmods_a-tar.obj `if test -f 'grub-core/fs/tar.c'; then $(CYGPATH_W) 'grub-core/fs/tar.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/fs/tar.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/fs/$(DEPDIR)/libgrubmods_a-tar.Tpo grub-core/fs/$(DEPDIR)/libgrubmods_a-tar.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/fs/tar.c' object='grub-core/fs/libgrubmods_a-tar.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/fs/libgrubmods_a-tar.obj `if test -f 'grub-core/fs/tar.c'; then $(CYGPATH_W) 'grub-core/fs/tar.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/fs/tar.c'; fi` - -grub-core/fs/libgrubmods_a-udf.o: grub-core/fs/udf.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/fs/libgrubmods_a-udf.o -MD -MP -MF grub-core/fs/$(DEPDIR)/libgrubmods_a-udf.Tpo -c -o grub-core/fs/libgrubmods_a-udf.o `test -f 'grub-core/fs/udf.c' || echo '$(srcdir)/'`grub-core/fs/udf.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/fs/$(DEPDIR)/libgrubmods_a-udf.Tpo grub-core/fs/$(DEPDIR)/libgrubmods_a-udf.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/fs/udf.c' object='grub-core/fs/libgrubmods_a-udf.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/fs/libgrubmods_a-udf.o `test -f 'grub-core/fs/udf.c' || echo '$(srcdir)/'`grub-core/fs/udf.c - -grub-core/fs/libgrubmods_a-udf.obj: grub-core/fs/udf.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/fs/libgrubmods_a-udf.obj -MD -MP -MF grub-core/fs/$(DEPDIR)/libgrubmods_a-udf.Tpo -c -o grub-core/fs/libgrubmods_a-udf.obj `if test -f 'grub-core/fs/udf.c'; then $(CYGPATH_W) 'grub-core/fs/udf.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/fs/udf.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/fs/$(DEPDIR)/libgrubmods_a-udf.Tpo grub-core/fs/$(DEPDIR)/libgrubmods_a-udf.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/fs/udf.c' object='grub-core/fs/libgrubmods_a-udf.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/fs/libgrubmods_a-udf.obj `if test -f 'grub-core/fs/udf.c'; then $(CYGPATH_W) 'grub-core/fs/udf.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/fs/udf.c'; fi` - -grub-core/fs/libgrubmods_a-ufs2.o: grub-core/fs/ufs2.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/fs/libgrubmods_a-ufs2.o -MD -MP -MF grub-core/fs/$(DEPDIR)/libgrubmods_a-ufs2.Tpo -c -o grub-core/fs/libgrubmods_a-ufs2.o `test -f 'grub-core/fs/ufs2.c' || echo '$(srcdir)/'`grub-core/fs/ufs2.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/fs/$(DEPDIR)/libgrubmods_a-ufs2.Tpo grub-core/fs/$(DEPDIR)/libgrubmods_a-ufs2.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/fs/ufs2.c' object='grub-core/fs/libgrubmods_a-ufs2.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/fs/libgrubmods_a-ufs2.o `test -f 'grub-core/fs/ufs2.c' || echo '$(srcdir)/'`grub-core/fs/ufs2.c - -grub-core/fs/libgrubmods_a-ufs2.obj: grub-core/fs/ufs2.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/fs/libgrubmods_a-ufs2.obj -MD -MP -MF grub-core/fs/$(DEPDIR)/libgrubmods_a-ufs2.Tpo -c -o grub-core/fs/libgrubmods_a-ufs2.obj `if test -f 'grub-core/fs/ufs2.c'; then $(CYGPATH_W) 'grub-core/fs/ufs2.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/fs/ufs2.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/fs/$(DEPDIR)/libgrubmods_a-ufs2.Tpo grub-core/fs/$(DEPDIR)/libgrubmods_a-ufs2.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/fs/ufs2.c' object='grub-core/fs/libgrubmods_a-ufs2.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/fs/libgrubmods_a-ufs2.obj `if test -f 'grub-core/fs/ufs2.c'; then $(CYGPATH_W) 'grub-core/fs/ufs2.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/fs/ufs2.c'; fi` - -grub-core/fs/libgrubmods_a-ufs.o: grub-core/fs/ufs.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/fs/libgrubmods_a-ufs.o -MD -MP -MF grub-core/fs/$(DEPDIR)/libgrubmods_a-ufs.Tpo -c -o grub-core/fs/libgrubmods_a-ufs.o `test -f 'grub-core/fs/ufs.c' || echo '$(srcdir)/'`grub-core/fs/ufs.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/fs/$(DEPDIR)/libgrubmods_a-ufs.Tpo grub-core/fs/$(DEPDIR)/libgrubmods_a-ufs.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/fs/ufs.c' object='grub-core/fs/libgrubmods_a-ufs.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/fs/libgrubmods_a-ufs.o `test -f 'grub-core/fs/ufs.c' || echo '$(srcdir)/'`grub-core/fs/ufs.c - -grub-core/fs/libgrubmods_a-ufs.obj: grub-core/fs/ufs.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/fs/libgrubmods_a-ufs.obj -MD -MP -MF grub-core/fs/$(DEPDIR)/libgrubmods_a-ufs.Tpo -c -o grub-core/fs/libgrubmods_a-ufs.obj `if test -f 'grub-core/fs/ufs.c'; then $(CYGPATH_W) 'grub-core/fs/ufs.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/fs/ufs.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/fs/$(DEPDIR)/libgrubmods_a-ufs.Tpo grub-core/fs/$(DEPDIR)/libgrubmods_a-ufs.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/fs/ufs.c' object='grub-core/fs/libgrubmods_a-ufs.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/fs/libgrubmods_a-ufs.obj `if test -f 'grub-core/fs/ufs.c'; then $(CYGPATH_W) 'grub-core/fs/ufs.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/fs/ufs.c'; fi` - -grub-core/fs/libgrubmods_a-ufs_be.o: grub-core/fs/ufs_be.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/fs/libgrubmods_a-ufs_be.o -MD -MP -MF grub-core/fs/$(DEPDIR)/libgrubmods_a-ufs_be.Tpo -c -o grub-core/fs/libgrubmods_a-ufs_be.o `test -f 'grub-core/fs/ufs_be.c' || echo '$(srcdir)/'`grub-core/fs/ufs_be.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/fs/$(DEPDIR)/libgrubmods_a-ufs_be.Tpo grub-core/fs/$(DEPDIR)/libgrubmods_a-ufs_be.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/fs/ufs_be.c' object='grub-core/fs/libgrubmods_a-ufs_be.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/fs/libgrubmods_a-ufs_be.o `test -f 'grub-core/fs/ufs_be.c' || echo '$(srcdir)/'`grub-core/fs/ufs_be.c - -grub-core/fs/libgrubmods_a-ufs_be.obj: grub-core/fs/ufs_be.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/fs/libgrubmods_a-ufs_be.obj -MD -MP -MF grub-core/fs/$(DEPDIR)/libgrubmods_a-ufs_be.Tpo -c -o grub-core/fs/libgrubmods_a-ufs_be.obj `if test -f 'grub-core/fs/ufs_be.c'; then $(CYGPATH_W) 'grub-core/fs/ufs_be.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/fs/ufs_be.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/fs/$(DEPDIR)/libgrubmods_a-ufs_be.Tpo grub-core/fs/$(DEPDIR)/libgrubmods_a-ufs_be.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/fs/ufs_be.c' object='grub-core/fs/libgrubmods_a-ufs_be.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/fs/libgrubmods_a-ufs_be.obj `if test -f 'grub-core/fs/ufs_be.c'; then $(CYGPATH_W) 'grub-core/fs/ufs_be.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/fs/ufs_be.c'; fi` - -grub-core/fs/libgrubmods_a-xfs.o: grub-core/fs/xfs.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/fs/libgrubmods_a-xfs.o -MD -MP -MF grub-core/fs/$(DEPDIR)/libgrubmods_a-xfs.Tpo -c -o grub-core/fs/libgrubmods_a-xfs.o `test -f 'grub-core/fs/xfs.c' || echo '$(srcdir)/'`grub-core/fs/xfs.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/fs/$(DEPDIR)/libgrubmods_a-xfs.Tpo grub-core/fs/$(DEPDIR)/libgrubmods_a-xfs.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/fs/xfs.c' object='grub-core/fs/libgrubmods_a-xfs.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/fs/libgrubmods_a-xfs.o `test -f 'grub-core/fs/xfs.c' || echo '$(srcdir)/'`grub-core/fs/xfs.c - -grub-core/fs/libgrubmods_a-xfs.obj: grub-core/fs/xfs.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/fs/libgrubmods_a-xfs.obj -MD -MP -MF grub-core/fs/$(DEPDIR)/libgrubmods_a-xfs.Tpo -c -o grub-core/fs/libgrubmods_a-xfs.obj `if test -f 'grub-core/fs/xfs.c'; then $(CYGPATH_W) 'grub-core/fs/xfs.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/fs/xfs.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/fs/$(DEPDIR)/libgrubmods_a-xfs.Tpo grub-core/fs/$(DEPDIR)/libgrubmods_a-xfs.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/fs/xfs.c' object='grub-core/fs/libgrubmods_a-xfs.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/fs/libgrubmods_a-xfs.obj `if test -f 'grub-core/fs/xfs.c'; then $(CYGPATH_W) 'grub-core/fs/xfs.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/fs/xfs.c'; fi` - -grub-core/fs/zfs/libgrubmods_a-zfscrypt.o: grub-core/fs/zfs/zfscrypt.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/fs/zfs/libgrubmods_a-zfscrypt.o -MD -MP -MF grub-core/fs/zfs/$(DEPDIR)/libgrubmods_a-zfscrypt.Tpo -c -o grub-core/fs/zfs/libgrubmods_a-zfscrypt.o `test -f 'grub-core/fs/zfs/zfscrypt.c' || echo '$(srcdir)/'`grub-core/fs/zfs/zfscrypt.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/fs/zfs/$(DEPDIR)/libgrubmods_a-zfscrypt.Tpo grub-core/fs/zfs/$(DEPDIR)/libgrubmods_a-zfscrypt.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/fs/zfs/zfscrypt.c' object='grub-core/fs/zfs/libgrubmods_a-zfscrypt.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/fs/zfs/libgrubmods_a-zfscrypt.o `test -f 'grub-core/fs/zfs/zfscrypt.c' || echo '$(srcdir)/'`grub-core/fs/zfs/zfscrypt.c - -grub-core/fs/zfs/libgrubmods_a-zfscrypt.obj: grub-core/fs/zfs/zfscrypt.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/fs/zfs/libgrubmods_a-zfscrypt.obj -MD -MP -MF grub-core/fs/zfs/$(DEPDIR)/libgrubmods_a-zfscrypt.Tpo -c -o grub-core/fs/zfs/libgrubmods_a-zfscrypt.obj `if test -f 'grub-core/fs/zfs/zfscrypt.c'; then $(CYGPATH_W) 'grub-core/fs/zfs/zfscrypt.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/fs/zfs/zfscrypt.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/fs/zfs/$(DEPDIR)/libgrubmods_a-zfscrypt.Tpo grub-core/fs/zfs/$(DEPDIR)/libgrubmods_a-zfscrypt.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/fs/zfs/zfscrypt.c' object='grub-core/fs/zfs/libgrubmods_a-zfscrypt.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/fs/zfs/libgrubmods_a-zfscrypt.obj `if test -f 'grub-core/fs/zfs/zfscrypt.c'; then $(CYGPATH_W) 'grub-core/fs/zfs/zfscrypt.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/fs/zfs/zfscrypt.c'; fi` - -grub-core/fs/zfs/libgrubmods_a-zfs.o: grub-core/fs/zfs/zfs.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/fs/zfs/libgrubmods_a-zfs.o -MD -MP -MF grub-core/fs/zfs/$(DEPDIR)/libgrubmods_a-zfs.Tpo -c -o grub-core/fs/zfs/libgrubmods_a-zfs.o `test -f 'grub-core/fs/zfs/zfs.c' || echo '$(srcdir)/'`grub-core/fs/zfs/zfs.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/fs/zfs/$(DEPDIR)/libgrubmods_a-zfs.Tpo grub-core/fs/zfs/$(DEPDIR)/libgrubmods_a-zfs.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/fs/zfs/zfs.c' object='grub-core/fs/zfs/libgrubmods_a-zfs.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/fs/zfs/libgrubmods_a-zfs.o `test -f 'grub-core/fs/zfs/zfs.c' || echo '$(srcdir)/'`grub-core/fs/zfs/zfs.c - -grub-core/fs/zfs/libgrubmods_a-zfs.obj: grub-core/fs/zfs/zfs.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/fs/zfs/libgrubmods_a-zfs.obj -MD -MP -MF grub-core/fs/zfs/$(DEPDIR)/libgrubmods_a-zfs.Tpo -c -o grub-core/fs/zfs/libgrubmods_a-zfs.obj `if test -f 'grub-core/fs/zfs/zfs.c'; then $(CYGPATH_W) 'grub-core/fs/zfs/zfs.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/fs/zfs/zfs.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/fs/zfs/$(DEPDIR)/libgrubmods_a-zfs.Tpo grub-core/fs/zfs/$(DEPDIR)/libgrubmods_a-zfs.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/fs/zfs/zfs.c' object='grub-core/fs/zfs/libgrubmods_a-zfs.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/fs/zfs/libgrubmods_a-zfs.obj `if test -f 'grub-core/fs/zfs/zfs.c'; then $(CYGPATH_W) 'grub-core/fs/zfs/zfs.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/fs/zfs/zfs.c'; fi` - -grub-core/fs/zfs/libgrubmods_a-zfsinfo.o: grub-core/fs/zfs/zfsinfo.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/fs/zfs/libgrubmods_a-zfsinfo.o -MD -MP -MF grub-core/fs/zfs/$(DEPDIR)/libgrubmods_a-zfsinfo.Tpo -c -o grub-core/fs/zfs/libgrubmods_a-zfsinfo.o `test -f 'grub-core/fs/zfs/zfsinfo.c' || echo '$(srcdir)/'`grub-core/fs/zfs/zfsinfo.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/fs/zfs/$(DEPDIR)/libgrubmods_a-zfsinfo.Tpo grub-core/fs/zfs/$(DEPDIR)/libgrubmods_a-zfsinfo.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/fs/zfs/zfsinfo.c' object='grub-core/fs/zfs/libgrubmods_a-zfsinfo.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/fs/zfs/libgrubmods_a-zfsinfo.o `test -f 'grub-core/fs/zfs/zfsinfo.c' || echo '$(srcdir)/'`grub-core/fs/zfs/zfsinfo.c - -grub-core/fs/zfs/libgrubmods_a-zfsinfo.obj: grub-core/fs/zfs/zfsinfo.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/fs/zfs/libgrubmods_a-zfsinfo.obj -MD -MP -MF grub-core/fs/zfs/$(DEPDIR)/libgrubmods_a-zfsinfo.Tpo -c -o grub-core/fs/zfs/libgrubmods_a-zfsinfo.obj `if test -f 'grub-core/fs/zfs/zfsinfo.c'; then $(CYGPATH_W) 'grub-core/fs/zfs/zfsinfo.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/fs/zfs/zfsinfo.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/fs/zfs/$(DEPDIR)/libgrubmods_a-zfsinfo.Tpo grub-core/fs/zfs/$(DEPDIR)/libgrubmods_a-zfsinfo.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/fs/zfs/zfsinfo.c' object='grub-core/fs/zfs/libgrubmods_a-zfsinfo.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/fs/zfs/libgrubmods_a-zfsinfo.obj `if test -f 'grub-core/fs/zfs/zfsinfo.c'; then $(CYGPATH_W) 'grub-core/fs/zfs/zfsinfo.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/fs/zfs/zfsinfo.c'; fi` - -grub-core/fs/zfs/libgrubmods_a-zfs_lzjb.o: grub-core/fs/zfs/zfs_lzjb.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/fs/zfs/libgrubmods_a-zfs_lzjb.o -MD -MP -MF grub-core/fs/zfs/$(DEPDIR)/libgrubmods_a-zfs_lzjb.Tpo -c -o grub-core/fs/zfs/libgrubmods_a-zfs_lzjb.o `test -f 'grub-core/fs/zfs/zfs_lzjb.c' || echo '$(srcdir)/'`grub-core/fs/zfs/zfs_lzjb.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/fs/zfs/$(DEPDIR)/libgrubmods_a-zfs_lzjb.Tpo grub-core/fs/zfs/$(DEPDIR)/libgrubmods_a-zfs_lzjb.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/fs/zfs/zfs_lzjb.c' object='grub-core/fs/zfs/libgrubmods_a-zfs_lzjb.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/fs/zfs/libgrubmods_a-zfs_lzjb.o `test -f 'grub-core/fs/zfs/zfs_lzjb.c' || echo '$(srcdir)/'`grub-core/fs/zfs/zfs_lzjb.c - -grub-core/fs/zfs/libgrubmods_a-zfs_lzjb.obj: grub-core/fs/zfs/zfs_lzjb.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/fs/zfs/libgrubmods_a-zfs_lzjb.obj -MD -MP -MF grub-core/fs/zfs/$(DEPDIR)/libgrubmods_a-zfs_lzjb.Tpo -c -o grub-core/fs/zfs/libgrubmods_a-zfs_lzjb.obj `if test -f 'grub-core/fs/zfs/zfs_lzjb.c'; then $(CYGPATH_W) 'grub-core/fs/zfs/zfs_lzjb.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/fs/zfs/zfs_lzjb.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/fs/zfs/$(DEPDIR)/libgrubmods_a-zfs_lzjb.Tpo grub-core/fs/zfs/$(DEPDIR)/libgrubmods_a-zfs_lzjb.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/fs/zfs/zfs_lzjb.c' object='grub-core/fs/zfs/libgrubmods_a-zfs_lzjb.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/fs/zfs/libgrubmods_a-zfs_lzjb.obj `if test -f 'grub-core/fs/zfs/zfs_lzjb.c'; then $(CYGPATH_W) 'grub-core/fs/zfs/zfs_lzjb.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/fs/zfs/zfs_lzjb.c'; fi` - -grub-core/fs/zfs/libgrubmods_a-zfs_lz4.o: grub-core/fs/zfs/zfs_lz4.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/fs/zfs/libgrubmods_a-zfs_lz4.o -MD -MP -MF grub-core/fs/zfs/$(DEPDIR)/libgrubmods_a-zfs_lz4.Tpo -c -o grub-core/fs/zfs/libgrubmods_a-zfs_lz4.o `test -f 'grub-core/fs/zfs/zfs_lz4.c' || echo '$(srcdir)/'`grub-core/fs/zfs/zfs_lz4.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/fs/zfs/$(DEPDIR)/libgrubmods_a-zfs_lz4.Tpo grub-core/fs/zfs/$(DEPDIR)/libgrubmods_a-zfs_lz4.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/fs/zfs/zfs_lz4.c' object='grub-core/fs/zfs/libgrubmods_a-zfs_lz4.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/fs/zfs/libgrubmods_a-zfs_lz4.o `test -f 'grub-core/fs/zfs/zfs_lz4.c' || echo '$(srcdir)/'`grub-core/fs/zfs/zfs_lz4.c - -grub-core/fs/zfs/libgrubmods_a-zfs_lz4.obj: grub-core/fs/zfs/zfs_lz4.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/fs/zfs/libgrubmods_a-zfs_lz4.obj -MD -MP -MF grub-core/fs/zfs/$(DEPDIR)/libgrubmods_a-zfs_lz4.Tpo -c -o grub-core/fs/zfs/libgrubmods_a-zfs_lz4.obj `if test -f 'grub-core/fs/zfs/zfs_lz4.c'; then $(CYGPATH_W) 'grub-core/fs/zfs/zfs_lz4.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/fs/zfs/zfs_lz4.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/fs/zfs/$(DEPDIR)/libgrubmods_a-zfs_lz4.Tpo grub-core/fs/zfs/$(DEPDIR)/libgrubmods_a-zfs_lz4.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/fs/zfs/zfs_lz4.c' object='grub-core/fs/zfs/libgrubmods_a-zfs_lz4.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/fs/zfs/libgrubmods_a-zfs_lz4.obj `if test -f 'grub-core/fs/zfs/zfs_lz4.c'; then $(CYGPATH_W) 'grub-core/fs/zfs/zfs_lz4.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/fs/zfs/zfs_lz4.c'; fi` - -grub-core/fs/zfs/libgrubmods_a-zfs_sha256.o: grub-core/fs/zfs/zfs_sha256.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/fs/zfs/libgrubmods_a-zfs_sha256.o -MD -MP -MF grub-core/fs/zfs/$(DEPDIR)/libgrubmods_a-zfs_sha256.Tpo -c -o grub-core/fs/zfs/libgrubmods_a-zfs_sha256.o `test -f 'grub-core/fs/zfs/zfs_sha256.c' || echo '$(srcdir)/'`grub-core/fs/zfs/zfs_sha256.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/fs/zfs/$(DEPDIR)/libgrubmods_a-zfs_sha256.Tpo grub-core/fs/zfs/$(DEPDIR)/libgrubmods_a-zfs_sha256.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/fs/zfs/zfs_sha256.c' object='grub-core/fs/zfs/libgrubmods_a-zfs_sha256.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/fs/zfs/libgrubmods_a-zfs_sha256.o `test -f 'grub-core/fs/zfs/zfs_sha256.c' || echo '$(srcdir)/'`grub-core/fs/zfs/zfs_sha256.c - -grub-core/fs/zfs/libgrubmods_a-zfs_sha256.obj: grub-core/fs/zfs/zfs_sha256.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/fs/zfs/libgrubmods_a-zfs_sha256.obj -MD -MP -MF grub-core/fs/zfs/$(DEPDIR)/libgrubmods_a-zfs_sha256.Tpo -c -o grub-core/fs/zfs/libgrubmods_a-zfs_sha256.obj `if test -f 'grub-core/fs/zfs/zfs_sha256.c'; then $(CYGPATH_W) 'grub-core/fs/zfs/zfs_sha256.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/fs/zfs/zfs_sha256.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/fs/zfs/$(DEPDIR)/libgrubmods_a-zfs_sha256.Tpo grub-core/fs/zfs/$(DEPDIR)/libgrubmods_a-zfs_sha256.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/fs/zfs/zfs_sha256.c' object='grub-core/fs/zfs/libgrubmods_a-zfs_sha256.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/fs/zfs/libgrubmods_a-zfs_sha256.obj `if test -f 'grub-core/fs/zfs/zfs_sha256.c'; then $(CYGPATH_W) 'grub-core/fs/zfs/zfs_sha256.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/fs/zfs/zfs_sha256.c'; fi` - -grub-core/fs/zfs/libgrubmods_a-zfs_fletcher.o: grub-core/fs/zfs/zfs_fletcher.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/fs/zfs/libgrubmods_a-zfs_fletcher.o -MD -MP -MF grub-core/fs/zfs/$(DEPDIR)/libgrubmods_a-zfs_fletcher.Tpo -c -o grub-core/fs/zfs/libgrubmods_a-zfs_fletcher.o `test -f 'grub-core/fs/zfs/zfs_fletcher.c' || echo '$(srcdir)/'`grub-core/fs/zfs/zfs_fletcher.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/fs/zfs/$(DEPDIR)/libgrubmods_a-zfs_fletcher.Tpo grub-core/fs/zfs/$(DEPDIR)/libgrubmods_a-zfs_fletcher.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/fs/zfs/zfs_fletcher.c' object='grub-core/fs/zfs/libgrubmods_a-zfs_fletcher.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/fs/zfs/libgrubmods_a-zfs_fletcher.o `test -f 'grub-core/fs/zfs/zfs_fletcher.c' || echo '$(srcdir)/'`grub-core/fs/zfs/zfs_fletcher.c - -grub-core/fs/zfs/libgrubmods_a-zfs_fletcher.obj: grub-core/fs/zfs/zfs_fletcher.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/fs/zfs/libgrubmods_a-zfs_fletcher.obj -MD -MP -MF grub-core/fs/zfs/$(DEPDIR)/libgrubmods_a-zfs_fletcher.Tpo -c -o grub-core/fs/zfs/libgrubmods_a-zfs_fletcher.obj `if test -f 'grub-core/fs/zfs/zfs_fletcher.c'; then $(CYGPATH_W) 'grub-core/fs/zfs/zfs_fletcher.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/fs/zfs/zfs_fletcher.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/fs/zfs/$(DEPDIR)/libgrubmods_a-zfs_fletcher.Tpo grub-core/fs/zfs/$(DEPDIR)/libgrubmods_a-zfs_fletcher.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/fs/zfs/zfs_fletcher.c' object='grub-core/fs/zfs/libgrubmods_a-zfs_fletcher.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/fs/zfs/libgrubmods_a-zfs_fletcher.obj `if test -f 'grub-core/fs/zfs/zfs_fletcher.c'; then $(CYGPATH_W) 'grub-core/fs/zfs/zfs_fletcher.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/fs/zfs/zfs_fletcher.c'; fi` - -grub-core/lib/libgrubmods_a-envblk.o: grub-core/lib/envblk.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/lib/libgrubmods_a-envblk.o -MD -MP -MF grub-core/lib/$(DEPDIR)/libgrubmods_a-envblk.Tpo -c -o grub-core/lib/libgrubmods_a-envblk.o `test -f 'grub-core/lib/envblk.c' || echo '$(srcdir)/'`grub-core/lib/envblk.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/lib/$(DEPDIR)/libgrubmods_a-envblk.Tpo grub-core/lib/$(DEPDIR)/libgrubmods_a-envblk.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/lib/envblk.c' object='grub-core/lib/libgrubmods_a-envblk.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/lib/libgrubmods_a-envblk.o `test -f 'grub-core/lib/envblk.c' || echo '$(srcdir)/'`grub-core/lib/envblk.c - -grub-core/lib/libgrubmods_a-envblk.obj: grub-core/lib/envblk.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/lib/libgrubmods_a-envblk.obj -MD -MP -MF grub-core/lib/$(DEPDIR)/libgrubmods_a-envblk.Tpo -c -o grub-core/lib/libgrubmods_a-envblk.obj `if test -f 'grub-core/lib/envblk.c'; then $(CYGPATH_W) 'grub-core/lib/envblk.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/lib/envblk.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/lib/$(DEPDIR)/libgrubmods_a-envblk.Tpo grub-core/lib/$(DEPDIR)/libgrubmods_a-envblk.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/lib/envblk.c' object='grub-core/lib/libgrubmods_a-envblk.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/lib/libgrubmods_a-envblk.obj `if test -f 'grub-core/lib/envblk.c'; then $(CYGPATH_W) 'grub-core/lib/envblk.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/lib/envblk.c'; fi` - -grub-core/lib/libgrubmods_a-hexdump.o: grub-core/lib/hexdump.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/lib/libgrubmods_a-hexdump.o -MD -MP -MF grub-core/lib/$(DEPDIR)/libgrubmods_a-hexdump.Tpo -c -o grub-core/lib/libgrubmods_a-hexdump.o `test -f 'grub-core/lib/hexdump.c' || echo '$(srcdir)/'`grub-core/lib/hexdump.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/lib/$(DEPDIR)/libgrubmods_a-hexdump.Tpo grub-core/lib/$(DEPDIR)/libgrubmods_a-hexdump.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/lib/hexdump.c' object='grub-core/lib/libgrubmods_a-hexdump.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/lib/libgrubmods_a-hexdump.o `test -f 'grub-core/lib/hexdump.c' || echo '$(srcdir)/'`grub-core/lib/hexdump.c - -grub-core/lib/libgrubmods_a-hexdump.obj: grub-core/lib/hexdump.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/lib/libgrubmods_a-hexdump.obj -MD -MP -MF grub-core/lib/$(DEPDIR)/libgrubmods_a-hexdump.Tpo -c -o grub-core/lib/libgrubmods_a-hexdump.obj `if test -f 'grub-core/lib/hexdump.c'; then $(CYGPATH_W) 'grub-core/lib/hexdump.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/lib/hexdump.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/lib/$(DEPDIR)/libgrubmods_a-hexdump.Tpo grub-core/lib/$(DEPDIR)/libgrubmods_a-hexdump.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/lib/hexdump.c' object='grub-core/lib/libgrubmods_a-hexdump.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/lib/libgrubmods_a-hexdump.obj `if test -f 'grub-core/lib/hexdump.c'; then $(CYGPATH_W) 'grub-core/lib/hexdump.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/lib/hexdump.c'; fi` - -grub-core/lib/libgrubmods_a-LzFind.o: grub-core/lib/LzFind.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/lib/libgrubmods_a-LzFind.o -MD -MP -MF grub-core/lib/$(DEPDIR)/libgrubmods_a-LzFind.Tpo -c -o grub-core/lib/libgrubmods_a-LzFind.o `test -f 'grub-core/lib/LzFind.c' || echo '$(srcdir)/'`grub-core/lib/LzFind.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/lib/$(DEPDIR)/libgrubmods_a-LzFind.Tpo grub-core/lib/$(DEPDIR)/libgrubmods_a-LzFind.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/lib/LzFind.c' object='grub-core/lib/libgrubmods_a-LzFind.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/lib/libgrubmods_a-LzFind.o `test -f 'grub-core/lib/LzFind.c' || echo '$(srcdir)/'`grub-core/lib/LzFind.c - -grub-core/lib/libgrubmods_a-LzFind.obj: grub-core/lib/LzFind.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/lib/libgrubmods_a-LzFind.obj -MD -MP -MF grub-core/lib/$(DEPDIR)/libgrubmods_a-LzFind.Tpo -c -o grub-core/lib/libgrubmods_a-LzFind.obj `if test -f 'grub-core/lib/LzFind.c'; then $(CYGPATH_W) 'grub-core/lib/LzFind.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/lib/LzFind.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/lib/$(DEPDIR)/libgrubmods_a-LzFind.Tpo grub-core/lib/$(DEPDIR)/libgrubmods_a-LzFind.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/lib/LzFind.c' object='grub-core/lib/libgrubmods_a-LzFind.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/lib/libgrubmods_a-LzFind.obj `if test -f 'grub-core/lib/LzFind.c'; then $(CYGPATH_W) 'grub-core/lib/LzFind.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/lib/LzFind.c'; fi` - -grub-core/lib/libgrubmods_a-LzmaEnc.o: grub-core/lib/LzmaEnc.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/lib/libgrubmods_a-LzmaEnc.o -MD -MP -MF grub-core/lib/$(DEPDIR)/libgrubmods_a-LzmaEnc.Tpo -c -o grub-core/lib/libgrubmods_a-LzmaEnc.o `test -f 'grub-core/lib/LzmaEnc.c' || echo '$(srcdir)/'`grub-core/lib/LzmaEnc.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/lib/$(DEPDIR)/libgrubmods_a-LzmaEnc.Tpo grub-core/lib/$(DEPDIR)/libgrubmods_a-LzmaEnc.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/lib/LzmaEnc.c' object='grub-core/lib/libgrubmods_a-LzmaEnc.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/lib/libgrubmods_a-LzmaEnc.o `test -f 'grub-core/lib/LzmaEnc.c' || echo '$(srcdir)/'`grub-core/lib/LzmaEnc.c - -grub-core/lib/libgrubmods_a-LzmaEnc.obj: grub-core/lib/LzmaEnc.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/lib/libgrubmods_a-LzmaEnc.obj -MD -MP -MF grub-core/lib/$(DEPDIR)/libgrubmods_a-LzmaEnc.Tpo -c -o grub-core/lib/libgrubmods_a-LzmaEnc.obj `if test -f 'grub-core/lib/LzmaEnc.c'; then $(CYGPATH_W) 'grub-core/lib/LzmaEnc.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/lib/LzmaEnc.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/lib/$(DEPDIR)/libgrubmods_a-LzmaEnc.Tpo grub-core/lib/$(DEPDIR)/libgrubmods_a-LzmaEnc.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/lib/LzmaEnc.c' object='grub-core/lib/libgrubmods_a-LzmaEnc.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/lib/libgrubmods_a-LzmaEnc.obj `if test -f 'grub-core/lib/LzmaEnc.c'; then $(CYGPATH_W) 'grub-core/lib/LzmaEnc.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/lib/LzmaEnc.c'; fi` - -grub-core/lib/libgrubmods_a-crc.o: grub-core/lib/crc.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/lib/libgrubmods_a-crc.o -MD -MP -MF grub-core/lib/$(DEPDIR)/libgrubmods_a-crc.Tpo -c -o grub-core/lib/libgrubmods_a-crc.o `test -f 'grub-core/lib/crc.c' || echo '$(srcdir)/'`grub-core/lib/crc.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/lib/$(DEPDIR)/libgrubmods_a-crc.Tpo grub-core/lib/$(DEPDIR)/libgrubmods_a-crc.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/lib/crc.c' object='grub-core/lib/libgrubmods_a-crc.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/lib/libgrubmods_a-crc.o `test -f 'grub-core/lib/crc.c' || echo '$(srcdir)/'`grub-core/lib/crc.c - -grub-core/lib/libgrubmods_a-crc.obj: grub-core/lib/crc.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/lib/libgrubmods_a-crc.obj -MD -MP -MF grub-core/lib/$(DEPDIR)/libgrubmods_a-crc.Tpo -c -o grub-core/lib/libgrubmods_a-crc.obj `if test -f 'grub-core/lib/crc.c'; then $(CYGPATH_W) 'grub-core/lib/crc.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/lib/crc.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/lib/$(DEPDIR)/libgrubmods_a-crc.Tpo grub-core/lib/$(DEPDIR)/libgrubmods_a-crc.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/lib/crc.c' object='grub-core/lib/libgrubmods_a-crc.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/lib/libgrubmods_a-crc.obj `if test -f 'grub-core/lib/crc.c'; then $(CYGPATH_W) 'grub-core/lib/crc.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/lib/crc.c'; fi` - -grub-core/lib/libgrubmods_a-adler32.o: grub-core/lib/adler32.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/lib/libgrubmods_a-adler32.o -MD -MP -MF grub-core/lib/$(DEPDIR)/libgrubmods_a-adler32.Tpo -c -o grub-core/lib/libgrubmods_a-adler32.o `test -f 'grub-core/lib/adler32.c' || echo '$(srcdir)/'`grub-core/lib/adler32.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/lib/$(DEPDIR)/libgrubmods_a-adler32.Tpo grub-core/lib/$(DEPDIR)/libgrubmods_a-adler32.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/lib/adler32.c' object='grub-core/lib/libgrubmods_a-adler32.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/lib/libgrubmods_a-adler32.o `test -f 'grub-core/lib/adler32.c' || echo '$(srcdir)/'`grub-core/lib/adler32.c - -grub-core/lib/libgrubmods_a-adler32.obj: grub-core/lib/adler32.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/lib/libgrubmods_a-adler32.obj -MD -MP -MF grub-core/lib/$(DEPDIR)/libgrubmods_a-adler32.Tpo -c -o grub-core/lib/libgrubmods_a-adler32.obj `if test -f 'grub-core/lib/adler32.c'; then $(CYGPATH_W) 'grub-core/lib/adler32.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/lib/adler32.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/lib/$(DEPDIR)/libgrubmods_a-adler32.Tpo grub-core/lib/$(DEPDIR)/libgrubmods_a-adler32.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/lib/adler32.c' object='grub-core/lib/libgrubmods_a-adler32.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/lib/libgrubmods_a-adler32.obj `if test -f 'grub-core/lib/adler32.c'; then $(CYGPATH_W) 'grub-core/lib/adler32.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/lib/adler32.c'; fi` - -grub-core/lib/libgrubmods_a-crc64.o: grub-core/lib/crc64.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/lib/libgrubmods_a-crc64.o -MD -MP -MF grub-core/lib/$(DEPDIR)/libgrubmods_a-crc64.Tpo -c -o grub-core/lib/libgrubmods_a-crc64.o `test -f 'grub-core/lib/crc64.c' || echo '$(srcdir)/'`grub-core/lib/crc64.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/lib/$(DEPDIR)/libgrubmods_a-crc64.Tpo grub-core/lib/$(DEPDIR)/libgrubmods_a-crc64.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/lib/crc64.c' object='grub-core/lib/libgrubmods_a-crc64.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/lib/libgrubmods_a-crc64.o `test -f 'grub-core/lib/crc64.c' || echo '$(srcdir)/'`grub-core/lib/crc64.c - -grub-core/lib/libgrubmods_a-crc64.obj: grub-core/lib/crc64.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/lib/libgrubmods_a-crc64.obj -MD -MP -MF grub-core/lib/$(DEPDIR)/libgrubmods_a-crc64.Tpo -c -o grub-core/lib/libgrubmods_a-crc64.obj `if test -f 'grub-core/lib/crc64.c'; then $(CYGPATH_W) 'grub-core/lib/crc64.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/lib/crc64.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/lib/$(DEPDIR)/libgrubmods_a-crc64.Tpo grub-core/lib/$(DEPDIR)/libgrubmods_a-crc64.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/lib/crc64.c' object='grub-core/lib/libgrubmods_a-crc64.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/lib/libgrubmods_a-crc64.obj `if test -f 'grub-core/lib/crc64.c'; then $(CYGPATH_W) 'grub-core/lib/crc64.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/lib/crc64.c'; fi` - -grub-core/normal/libgrubmods_a-datetime.o: grub-core/normal/datetime.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/normal/libgrubmods_a-datetime.o -MD -MP -MF grub-core/normal/$(DEPDIR)/libgrubmods_a-datetime.Tpo -c -o grub-core/normal/libgrubmods_a-datetime.o `test -f 'grub-core/normal/datetime.c' || echo '$(srcdir)/'`grub-core/normal/datetime.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/normal/$(DEPDIR)/libgrubmods_a-datetime.Tpo grub-core/normal/$(DEPDIR)/libgrubmods_a-datetime.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/normal/datetime.c' object='grub-core/normal/libgrubmods_a-datetime.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/normal/libgrubmods_a-datetime.o `test -f 'grub-core/normal/datetime.c' || echo '$(srcdir)/'`grub-core/normal/datetime.c - -grub-core/normal/libgrubmods_a-datetime.obj: grub-core/normal/datetime.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/normal/libgrubmods_a-datetime.obj -MD -MP -MF grub-core/normal/$(DEPDIR)/libgrubmods_a-datetime.Tpo -c -o grub-core/normal/libgrubmods_a-datetime.obj `if test -f 'grub-core/normal/datetime.c'; then $(CYGPATH_W) 'grub-core/normal/datetime.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/normal/datetime.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/normal/$(DEPDIR)/libgrubmods_a-datetime.Tpo grub-core/normal/$(DEPDIR)/libgrubmods_a-datetime.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/normal/datetime.c' object='grub-core/normal/libgrubmods_a-datetime.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/normal/libgrubmods_a-datetime.obj `if test -f 'grub-core/normal/datetime.c'; then $(CYGPATH_W) 'grub-core/normal/datetime.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/normal/datetime.c'; fi` - -grub-core/normal/libgrubmods_a-misc.o: grub-core/normal/misc.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/normal/libgrubmods_a-misc.o -MD -MP -MF grub-core/normal/$(DEPDIR)/libgrubmods_a-misc.Tpo -c -o grub-core/normal/libgrubmods_a-misc.o `test -f 'grub-core/normal/misc.c' || echo '$(srcdir)/'`grub-core/normal/misc.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/normal/$(DEPDIR)/libgrubmods_a-misc.Tpo grub-core/normal/$(DEPDIR)/libgrubmods_a-misc.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/normal/misc.c' object='grub-core/normal/libgrubmods_a-misc.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/normal/libgrubmods_a-misc.o `test -f 'grub-core/normal/misc.c' || echo '$(srcdir)/'`grub-core/normal/misc.c - -grub-core/normal/libgrubmods_a-misc.obj: grub-core/normal/misc.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/normal/libgrubmods_a-misc.obj -MD -MP -MF grub-core/normal/$(DEPDIR)/libgrubmods_a-misc.Tpo -c -o grub-core/normal/libgrubmods_a-misc.obj `if test -f 'grub-core/normal/misc.c'; then $(CYGPATH_W) 'grub-core/normal/misc.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/normal/misc.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/normal/$(DEPDIR)/libgrubmods_a-misc.Tpo grub-core/normal/$(DEPDIR)/libgrubmods_a-misc.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/normal/misc.c' object='grub-core/normal/libgrubmods_a-misc.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/normal/libgrubmods_a-misc.obj `if test -f 'grub-core/normal/misc.c'; then $(CYGPATH_W) 'grub-core/normal/misc.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/normal/misc.c'; fi` - -grub-core/partmap/libgrubmods_a-acorn.o: grub-core/partmap/acorn.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/partmap/libgrubmods_a-acorn.o -MD -MP -MF grub-core/partmap/$(DEPDIR)/libgrubmods_a-acorn.Tpo -c -o grub-core/partmap/libgrubmods_a-acorn.o `test -f 'grub-core/partmap/acorn.c' || echo '$(srcdir)/'`grub-core/partmap/acorn.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/partmap/$(DEPDIR)/libgrubmods_a-acorn.Tpo grub-core/partmap/$(DEPDIR)/libgrubmods_a-acorn.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/partmap/acorn.c' object='grub-core/partmap/libgrubmods_a-acorn.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/partmap/libgrubmods_a-acorn.o `test -f 'grub-core/partmap/acorn.c' || echo '$(srcdir)/'`grub-core/partmap/acorn.c - -grub-core/partmap/libgrubmods_a-acorn.obj: grub-core/partmap/acorn.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/partmap/libgrubmods_a-acorn.obj -MD -MP -MF grub-core/partmap/$(DEPDIR)/libgrubmods_a-acorn.Tpo -c -o grub-core/partmap/libgrubmods_a-acorn.obj `if test -f 'grub-core/partmap/acorn.c'; then $(CYGPATH_W) 'grub-core/partmap/acorn.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/partmap/acorn.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/partmap/$(DEPDIR)/libgrubmods_a-acorn.Tpo grub-core/partmap/$(DEPDIR)/libgrubmods_a-acorn.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/partmap/acorn.c' object='grub-core/partmap/libgrubmods_a-acorn.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/partmap/libgrubmods_a-acorn.obj `if test -f 'grub-core/partmap/acorn.c'; then $(CYGPATH_W) 'grub-core/partmap/acorn.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/partmap/acorn.c'; fi` - -grub-core/partmap/libgrubmods_a-amiga.o: grub-core/partmap/amiga.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/partmap/libgrubmods_a-amiga.o -MD -MP -MF grub-core/partmap/$(DEPDIR)/libgrubmods_a-amiga.Tpo -c -o grub-core/partmap/libgrubmods_a-amiga.o `test -f 'grub-core/partmap/amiga.c' || echo '$(srcdir)/'`grub-core/partmap/amiga.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/partmap/$(DEPDIR)/libgrubmods_a-amiga.Tpo grub-core/partmap/$(DEPDIR)/libgrubmods_a-amiga.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/partmap/amiga.c' object='grub-core/partmap/libgrubmods_a-amiga.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/partmap/libgrubmods_a-amiga.o `test -f 'grub-core/partmap/amiga.c' || echo '$(srcdir)/'`grub-core/partmap/amiga.c - -grub-core/partmap/libgrubmods_a-amiga.obj: grub-core/partmap/amiga.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/partmap/libgrubmods_a-amiga.obj -MD -MP -MF grub-core/partmap/$(DEPDIR)/libgrubmods_a-amiga.Tpo -c -o grub-core/partmap/libgrubmods_a-amiga.obj `if test -f 'grub-core/partmap/amiga.c'; then $(CYGPATH_W) 'grub-core/partmap/amiga.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/partmap/amiga.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/partmap/$(DEPDIR)/libgrubmods_a-amiga.Tpo grub-core/partmap/$(DEPDIR)/libgrubmods_a-amiga.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/partmap/amiga.c' object='grub-core/partmap/libgrubmods_a-amiga.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/partmap/libgrubmods_a-amiga.obj `if test -f 'grub-core/partmap/amiga.c'; then $(CYGPATH_W) 'grub-core/partmap/amiga.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/partmap/amiga.c'; fi` - -grub-core/partmap/libgrubmods_a-apple.o: grub-core/partmap/apple.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/partmap/libgrubmods_a-apple.o -MD -MP -MF grub-core/partmap/$(DEPDIR)/libgrubmods_a-apple.Tpo -c -o grub-core/partmap/libgrubmods_a-apple.o `test -f 'grub-core/partmap/apple.c' || echo '$(srcdir)/'`grub-core/partmap/apple.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/partmap/$(DEPDIR)/libgrubmods_a-apple.Tpo grub-core/partmap/$(DEPDIR)/libgrubmods_a-apple.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/partmap/apple.c' object='grub-core/partmap/libgrubmods_a-apple.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/partmap/libgrubmods_a-apple.o `test -f 'grub-core/partmap/apple.c' || echo '$(srcdir)/'`grub-core/partmap/apple.c - -grub-core/partmap/libgrubmods_a-apple.obj: grub-core/partmap/apple.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/partmap/libgrubmods_a-apple.obj -MD -MP -MF grub-core/partmap/$(DEPDIR)/libgrubmods_a-apple.Tpo -c -o grub-core/partmap/libgrubmods_a-apple.obj `if test -f 'grub-core/partmap/apple.c'; then $(CYGPATH_W) 'grub-core/partmap/apple.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/partmap/apple.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/partmap/$(DEPDIR)/libgrubmods_a-apple.Tpo grub-core/partmap/$(DEPDIR)/libgrubmods_a-apple.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/partmap/apple.c' object='grub-core/partmap/libgrubmods_a-apple.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/partmap/libgrubmods_a-apple.obj `if test -f 'grub-core/partmap/apple.c'; then $(CYGPATH_W) 'grub-core/partmap/apple.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/partmap/apple.c'; fi` - -grub-core/partmap/libgrubmods_a-sun.o: grub-core/partmap/sun.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/partmap/libgrubmods_a-sun.o -MD -MP -MF grub-core/partmap/$(DEPDIR)/libgrubmods_a-sun.Tpo -c -o grub-core/partmap/libgrubmods_a-sun.o `test -f 'grub-core/partmap/sun.c' || echo '$(srcdir)/'`grub-core/partmap/sun.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/partmap/$(DEPDIR)/libgrubmods_a-sun.Tpo grub-core/partmap/$(DEPDIR)/libgrubmods_a-sun.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/partmap/sun.c' object='grub-core/partmap/libgrubmods_a-sun.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/partmap/libgrubmods_a-sun.o `test -f 'grub-core/partmap/sun.c' || echo '$(srcdir)/'`grub-core/partmap/sun.c - -grub-core/partmap/libgrubmods_a-sun.obj: grub-core/partmap/sun.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/partmap/libgrubmods_a-sun.obj -MD -MP -MF grub-core/partmap/$(DEPDIR)/libgrubmods_a-sun.Tpo -c -o grub-core/partmap/libgrubmods_a-sun.obj `if test -f 'grub-core/partmap/sun.c'; then $(CYGPATH_W) 'grub-core/partmap/sun.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/partmap/sun.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/partmap/$(DEPDIR)/libgrubmods_a-sun.Tpo grub-core/partmap/$(DEPDIR)/libgrubmods_a-sun.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/partmap/sun.c' object='grub-core/partmap/libgrubmods_a-sun.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/partmap/libgrubmods_a-sun.obj `if test -f 'grub-core/partmap/sun.c'; then $(CYGPATH_W) 'grub-core/partmap/sun.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/partmap/sun.c'; fi` - -grub-core/partmap/libgrubmods_a-plan.o: grub-core/partmap/plan.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/partmap/libgrubmods_a-plan.o -MD -MP -MF grub-core/partmap/$(DEPDIR)/libgrubmods_a-plan.Tpo -c -o grub-core/partmap/libgrubmods_a-plan.o `test -f 'grub-core/partmap/plan.c' || echo '$(srcdir)/'`grub-core/partmap/plan.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/partmap/$(DEPDIR)/libgrubmods_a-plan.Tpo grub-core/partmap/$(DEPDIR)/libgrubmods_a-plan.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/partmap/plan.c' object='grub-core/partmap/libgrubmods_a-plan.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/partmap/libgrubmods_a-plan.o `test -f 'grub-core/partmap/plan.c' || echo '$(srcdir)/'`grub-core/partmap/plan.c - -grub-core/partmap/libgrubmods_a-plan.obj: grub-core/partmap/plan.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/partmap/libgrubmods_a-plan.obj -MD -MP -MF grub-core/partmap/$(DEPDIR)/libgrubmods_a-plan.Tpo -c -o grub-core/partmap/libgrubmods_a-plan.obj `if test -f 'grub-core/partmap/plan.c'; then $(CYGPATH_W) 'grub-core/partmap/plan.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/partmap/plan.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/partmap/$(DEPDIR)/libgrubmods_a-plan.Tpo grub-core/partmap/$(DEPDIR)/libgrubmods_a-plan.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/partmap/plan.c' object='grub-core/partmap/libgrubmods_a-plan.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/partmap/libgrubmods_a-plan.obj `if test -f 'grub-core/partmap/plan.c'; then $(CYGPATH_W) 'grub-core/partmap/plan.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/partmap/plan.c'; fi` - -grub-core/partmap/libgrubmods_a-dvh.o: grub-core/partmap/dvh.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/partmap/libgrubmods_a-dvh.o -MD -MP -MF grub-core/partmap/$(DEPDIR)/libgrubmods_a-dvh.Tpo -c -o grub-core/partmap/libgrubmods_a-dvh.o `test -f 'grub-core/partmap/dvh.c' || echo '$(srcdir)/'`grub-core/partmap/dvh.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/partmap/$(DEPDIR)/libgrubmods_a-dvh.Tpo grub-core/partmap/$(DEPDIR)/libgrubmods_a-dvh.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/partmap/dvh.c' object='grub-core/partmap/libgrubmods_a-dvh.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/partmap/libgrubmods_a-dvh.o `test -f 'grub-core/partmap/dvh.c' || echo '$(srcdir)/'`grub-core/partmap/dvh.c - -grub-core/partmap/libgrubmods_a-dvh.obj: grub-core/partmap/dvh.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/partmap/libgrubmods_a-dvh.obj -MD -MP -MF grub-core/partmap/$(DEPDIR)/libgrubmods_a-dvh.Tpo -c -o grub-core/partmap/libgrubmods_a-dvh.obj `if test -f 'grub-core/partmap/dvh.c'; then $(CYGPATH_W) 'grub-core/partmap/dvh.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/partmap/dvh.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/partmap/$(DEPDIR)/libgrubmods_a-dvh.Tpo grub-core/partmap/$(DEPDIR)/libgrubmods_a-dvh.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/partmap/dvh.c' object='grub-core/partmap/libgrubmods_a-dvh.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/partmap/libgrubmods_a-dvh.obj `if test -f 'grub-core/partmap/dvh.c'; then $(CYGPATH_W) 'grub-core/partmap/dvh.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/partmap/dvh.c'; fi` - -grub-core/partmap/libgrubmods_a-sunpc.o: grub-core/partmap/sunpc.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/partmap/libgrubmods_a-sunpc.o -MD -MP -MF grub-core/partmap/$(DEPDIR)/libgrubmods_a-sunpc.Tpo -c -o grub-core/partmap/libgrubmods_a-sunpc.o `test -f 'grub-core/partmap/sunpc.c' || echo '$(srcdir)/'`grub-core/partmap/sunpc.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/partmap/$(DEPDIR)/libgrubmods_a-sunpc.Tpo grub-core/partmap/$(DEPDIR)/libgrubmods_a-sunpc.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/partmap/sunpc.c' object='grub-core/partmap/libgrubmods_a-sunpc.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/partmap/libgrubmods_a-sunpc.o `test -f 'grub-core/partmap/sunpc.c' || echo '$(srcdir)/'`grub-core/partmap/sunpc.c - -grub-core/partmap/libgrubmods_a-sunpc.obj: grub-core/partmap/sunpc.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/partmap/libgrubmods_a-sunpc.obj -MD -MP -MF grub-core/partmap/$(DEPDIR)/libgrubmods_a-sunpc.Tpo -c -o grub-core/partmap/libgrubmods_a-sunpc.obj `if test -f 'grub-core/partmap/sunpc.c'; then $(CYGPATH_W) 'grub-core/partmap/sunpc.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/partmap/sunpc.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/partmap/$(DEPDIR)/libgrubmods_a-sunpc.Tpo grub-core/partmap/$(DEPDIR)/libgrubmods_a-sunpc.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/partmap/sunpc.c' object='grub-core/partmap/libgrubmods_a-sunpc.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/partmap/libgrubmods_a-sunpc.obj `if test -f 'grub-core/partmap/sunpc.c'; then $(CYGPATH_W) 'grub-core/partmap/sunpc.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/partmap/sunpc.c'; fi` - -grub-core/partmap/libgrubmods_a-bsdlabel.o: grub-core/partmap/bsdlabel.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/partmap/libgrubmods_a-bsdlabel.o -MD -MP -MF grub-core/partmap/$(DEPDIR)/libgrubmods_a-bsdlabel.Tpo -c -o grub-core/partmap/libgrubmods_a-bsdlabel.o `test -f 'grub-core/partmap/bsdlabel.c' || echo '$(srcdir)/'`grub-core/partmap/bsdlabel.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/partmap/$(DEPDIR)/libgrubmods_a-bsdlabel.Tpo grub-core/partmap/$(DEPDIR)/libgrubmods_a-bsdlabel.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/partmap/bsdlabel.c' object='grub-core/partmap/libgrubmods_a-bsdlabel.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/partmap/libgrubmods_a-bsdlabel.o `test -f 'grub-core/partmap/bsdlabel.c' || echo '$(srcdir)/'`grub-core/partmap/bsdlabel.c - -grub-core/partmap/libgrubmods_a-bsdlabel.obj: grub-core/partmap/bsdlabel.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/partmap/libgrubmods_a-bsdlabel.obj -MD -MP -MF grub-core/partmap/$(DEPDIR)/libgrubmods_a-bsdlabel.Tpo -c -o grub-core/partmap/libgrubmods_a-bsdlabel.obj `if test -f 'grub-core/partmap/bsdlabel.c'; then $(CYGPATH_W) 'grub-core/partmap/bsdlabel.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/partmap/bsdlabel.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/partmap/$(DEPDIR)/libgrubmods_a-bsdlabel.Tpo grub-core/partmap/$(DEPDIR)/libgrubmods_a-bsdlabel.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/partmap/bsdlabel.c' object='grub-core/partmap/libgrubmods_a-bsdlabel.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/partmap/libgrubmods_a-bsdlabel.obj `if test -f 'grub-core/partmap/bsdlabel.c'; then $(CYGPATH_W) 'grub-core/partmap/bsdlabel.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/partmap/bsdlabel.c'; fi` - -grub-core/partmap/libgrubmods_a-dfly.o: grub-core/partmap/dfly.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/partmap/libgrubmods_a-dfly.o -MD -MP -MF grub-core/partmap/$(DEPDIR)/libgrubmods_a-dfly.Tpo -c -o grub-core/partmap/libgrubmods_a-dfly.o `test -f 'grub-core/partmap/dfly.c' || echo '$(srcdir)/'`grub-core/partmap/dfly.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/partmap/$(DEPDIR)/libgrubmods_a-dfly.Tpo grub-core/partmap/$(DEPDIR)/libgrubmods_a-dfly.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/partmap/dfly.c' object='grub-core/partmap/libgrubmods_a-dfly.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/partmap/libgrubmods_a-dfly.o `test -f 'grub-core/partmap/dfly.c' || echo '$(srcdir)/'`grub-core/partmap/dfly.c - -grub-core/partmap/libgrubmods_a-dfly.obj: grub-core/partmap/dfly.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/partmap/libgrubmods_a-dfly.obj -MD -MP -MF grub-core/partmap/$(DEPDIR)/libgrubmods_a-dfly.Tpo -c -o grub-core/partmap/libgrubmods_a-dfly.obj `if test -f 'grub-core/partmap/dfly.c'; then $(CYGPATH_W) 'grub-core/partmap/dfly.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/partmap/dfly.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/partmap/$(DEPDIR)/libgrubmods_a-dfly.Tpo grub-core/partmap/$(DEPDIR)/libgrubmods_a-dfly.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/partmap/dfly.c' object='grub-core/partmap/libgrubmods_a-dfly.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/partmap/libgrubmods_a-dfly.obj `if test -f 'grub-core/partmap/dfly.c'; then $(CYGPATH_W) 'grub-core/partmap/dfly.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/partmap/dfly.c'; fi` - -grub-core/script/libgrubmods_a-function.o: grub-core/script/function.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/script/libgrubmods_a-function.o -MD -MP -MF grub-core/script/$(DEPDIR)/libgrubmods_a-function.Tpo -c -o grub-core/script/libgrubmods_a-function.o `test -f 'grub-core/script/function.c' || echo '$(srcdir)/'`grub-core/script/function.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/script/$(DEPDIR)/libgrubmods_a-function.Tpo grub-core/script/$(DEPDIR)/libgrubmods_a-function.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/script/function.c' object='grub-core/script/libgrubmods_a-function.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/script/libgrubmods_a-function.o `test -f 'grub-core/script/function.c' || echo '$(srcdir)/'`grub-core/script/function.c - -grub-core/script/libgrubmods_a-function.obj: grub-core/script/function.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/script/libgrubmods_a-function.obj -MD -MP -MF grub-core/script/$(DEPDIR)/libgrubmods_a-function.Tpo -c -o grub-core/script/libgrubmods_a-function.obj `if test -f 'grub-core/script/function.c'; then $(CYGPATH_W) 'grub-core/script/function.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/script/function.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/script/$(DEPDIR)/libgrubmods_a-function.Tpo grub-core/script/$(DEPDIR)/libgrubmods_a-function.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/script/function.c' object='grub-core/script/libgrubmods_a-function.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/script/libgrubmods_a-function.obj `if test -f 'grub-core/script/function.c'; then $(CYGPATH_W) 'grub-core/script/function.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/script/function.c'; fi` - -grub-core/script/libgrubmods_a-lexer.o: grub-core/script/lexer.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/script/libgrubmods_a-lexer.o -MD -MP -MF grub-core/script/$(DEPDIR)/libgrubmods_a-lexer.Tpo -c -o grub-core/script/libgrubmods_a-lexer.o `test -f 'grub-core/script/lexer.c' || echo '$(srcdir)/'`grub-core/script/lexer.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/script/$(DEPDIR)/libgrubmods_a-lexer.Tpo grub-core/script/$(DEPDIR)/libgrubmods_a-lexer.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/script/lexer.c' object='grub-core/script/libgrubmods_a-lexer.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/script/libgrubmods_a-lexer.o `test -f 'grub-core/script/lexer.c' || echo '$(srcdir)/'`grub-core/script/lexer.c - -grub-core/script/libgrubmods_a-lexer.obj: grub-core/script/lexer.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/script/libgrubmods_a-lexer.obj -MD -MP -MF grub-core/script/$(DEPDIR)/libgrubmods_a-lexer.Tpo -c -o grub-core/script/libgrubmods_a-lexer.obj `if test -f 'grub-core/script/lexer.c'; then $(CYGPATH_W) 'grub-core/script/lexer.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/script/lexer.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/script/$(DEPDIR)/libgrubmods_a-lexer.Tpo grub-core/script/$(DEPDIR)/libgrubmods_a-lexer.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/script/lexer.c' object='grub-core/script/libgrubmods_a-lexer.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/script/libgrubmods_a-lexer.obj `if test -f 'grub-core/script/lexer.c'; then $(CYGPATH_W) 'grub-core/script/lexer.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/script/lexer.c'; fi` - -grub-core/script/libgrubmods_a-main.o: grub-core/script/main.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/script/libgrubmods_a-main.o -MD -MP -MF grub-core/script/$(DEPDIR)/libgrubmods_a-main.Tpo -c -o grub-core/script/libgrubmods_a-main.o `test -f 'grub-core/script/main.c' || echo '$(srcdir)/'`grub-core/script/main.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/script/$(DEPDIR)/libgrubmods_a-main.Tpo grub-core/script/$(DEPDIR)/libgrubmods_a-main.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/script/main.c' object='grub-core/script/libgrubmods_a-main.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/script/libgrubmods_a-main.o `test -f 'grub-core/script/main.c' || echo '$(srcdir)/'`grub-core/script/main.c - -grub-core/script/libgrubmods_a-main.obj: grub-core/script/main.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/script/libgrubmods_a-main.obj -MD -MP -MF grub-core/script/$(DEPDIR)/libgrubmods_a-main.Tpo -c -o grub-core/script/libgrubmods_a-main.obj `if test -f 'grub-core/script/main.c'; then $(CYGPATH_W) 'grub-core/script/main.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/script/main.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/script/$(DEPDIR)/libgrubmods_a-main.Tpo grub-core/script/$(DEPDIR)/libgrubmods_a-main.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/script/main.c' object='grub-core/script/libgrubmods_a-main.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/script/libgrubmods_a-main.obj `if test -f 'grub-core/script/main.c'; then $(CYGPATH_W) 'grub-core/script/main.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/script/main.c'; fi` - -grub-core/script/libgrubmods_a-script.o: grub-core/script/script.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/script/libgrubmods_a-script.o -MD -MP -MF grub-core/script/$(DEPDIR)/libgrubmods_a-script.Tpo -c -o grub-core/script/libgrubmods_a-script.o `test -f 'grub-core/script/script.c' || echo '$(srcdir)/'`grub-core/script/script.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/script/$(DEPDIR)/libgrubmods_a-script.Tpo grub-core/script/$(DEPDIR)/libgrubmods_a-script.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/script/script.c' object='grub-core/script/libgrubmods_a-script.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/script/libgrubmods_a-script.o `test -f 'grub-core/script/script.c' || echo '$(srcdir)/'`grub-core/script/script.c - -grub-core/script/libgrubmods_a-script.obj: grub-core/script/script.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/script/libgrubmods_a-script.obj -MD -MP -MF grub-core/script/$(DEPDIR)/libgrubmods_a-script.Tpo -c -o grub-core/script/libgrubmods_a-script.obj `if test -f 'grub-core/script/script.c'; then $(CYGPATH_W) 'grub-core/script/script.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/script/script.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/script/$(DEPDIR)/libgrubmods_a-script.Tpo grub-core/script/$(DEPDIR)/libgrubmods_a-script.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/script/script.c' object='grub-core/script/libgrubmods_a-script.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/script/libgrubmods_a-script.obj `if test -f 'grub-core/script/script.c'; then $(CYGPATH_W) 'grub-core/script/script.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/script/script.c'; fi` - -grub-core/script/libgrubmods_a-argv.o: grub-core/script/argv.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/script/libgrubmods_a-argv.o -MD -MP -MF grub-core/script/$(DEPDIR)/libgrubmods_a-argv.Tpo -c -o grub-core/script/libgrubmods_a-argv.o `test -f 'grub-core/script/argv.c' || echo '$(srcdir)/'`grub-core/script/argv.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/script/$(DEPDIR)/libgrubmods_a-argv.Tpo grub-core/script/$(DEPDIR)/libgrubmods_a-argv.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/script/argv.c' object='grub-core/script/libgrubmods_a-argv.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/script/libgrubmods_a-argv.o `test -f 'grub-core/script/argv.c' || echo '$(srcdir)/'`grub-core/script/argv.c - -grub-core/script/libgrubmods_a-argv.obj: grub-core/script/argv.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/script/libgrubmods_a-argv.obj -MD -MP -MF grub-core/script/$(DEPDIR)/libgrubmods_a-argv.Tpo -c -o grub-core/script/libgrubmods_a-argv.obj `if test -f 'grub-core/script/argv.c'; then $(CYGPATH_W) 'grub-core/script/argv.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/script/argv.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/script/$(DEPDIR)/libgrubmods_a-argv.Tpo grub-core/script/$(DEPDIR)/libgrubmods_a-argv.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/script/argv.c' object='grub-core/script/libgrubmods_a-argv.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/script/libgrubmods_a-argv.obj `if test -f 'grub-core/script/argv.c'; then $(CYGPATH_W) 'grub-core/script/argv.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/script/argv.c'; fi` - -grub-core/io/libgrubmods_a-gzio.o: grub-core/io/gzio.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/io/libgrubmods_a-gzio.o -MD -MP -MF grub-core/io/$(DEPDIR)/libgrubmods_a-gzio.Tpo -c -o grub-core/io/libgrubmods_a-gzio.o `test -f 'grub-core/io/gzio.c' || echo '$(srcdir)/'`grub-core/io/gzio.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/io/$(DEPDIR)/libgrubmods_a-gzio.Tpo grub-core/io/$(DEPDIR)/libgrubmods_a-gzio.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/io/gzio.c' object='grub-core/io/libgrubmods_a-gzio.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/io/libgrubmods_a-gzio.o `test -f 'grub-core/io/gzio.c' || echo '$(srcdir)/'`grub-core/io/gzio.c - -grub-core/io/libgrubmods_a-gzio.obj: grub-core/io/gzio.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/io/libgrubmods_a-gzio.obj -MD -MP -MF grub-core/io/$(DEPDIR)/libgrubmods_a-gzio.Tpo -c -o grub-core/io/libgrubmods_a-gzio.obj `if test -f 'grub-core/io/gzio.c'; then $(CYGPATH_W) 'grub-core/io/gzio.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/io/gzio.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/io/$(DEPDIR)/libgrubmods_a-gzio.Tpo grub-core/io/$(DEPDIR)/libgrubmods_a-gzio.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/io/gzio.c' object='grub-core/io/libgrubmods_a-gzio.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/io/libgrubmods_a-gzio.obj `if test -f 'grub-core/io/gzio.c'; then $(CYGPATH_W) 'grub-core/io/gzio.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/io/gzio.c'; fi` - -grub-core/io/libgrubmods_a-xzio.o: grub-core/io/xzio.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/io/libgrubmods_a-xzio.o -MD -MP -MF grub-core/io/$(DEPDIR)/libgrubmods_a-xzio.Tpo -c -o grub-core/io/libgrubmods_a-xzio.o `test -f 'grub-core/io/xzio.c' || echo '$(srcdir)/'`grub-core/io/xzio.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/io/$(DEPDIR)/libgrubmods_a-xzio.Tpo grub-core/io/$(DEPDIR)/libgrubmods_a-xzio.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/io/xzio.c' object='grub-core/io/libgrubmods_a-xzio.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/io/libgrubmods_a-xzio.o `test -f 'grub-core/io/xzio.c' || echo '$(srcdir)/'`grub-core/io/xzio.c - -grub-core/io/libgrubmods_a-xzio.obj: grub-core/io/xzio.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/io/libgrubmods_a-xzio.obj -MD -MP -MF grub-core/io/$(DEPDIR)/libgrubmods_a-xzio.Tpo -c -o grub-core/io/libgrubmods_a-xzio.obj `if test -f 'grub-core/io/xzio.c'; then $(CYGPATH_W) 'grub-core/io/xzio.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/io/xzio.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/io/$(DEPDIR)/libgrubmods_a-xzio.Tpo grub-core/io/$(DEPDIR)/libgrubmods_a-xzio.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/io/xzio.c' object='grub-core/io/libgrubmods_a-xzio.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/io/libgrubmods_a-xzio.obj `if test -f 'grub-core/io/xzio.c'; then $(CYGPATH_W) 'grub-core/io/xzio.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/io/xzio.c'; fi` - -grub-core/io/libgrubmods_a-lzopio.o: grub-core/io/lzopio.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/io/libgrubmods_a-lzopio.o -MD -MP -MF grub-core/io/$(DEPDIR)/libgrubmods_a-lzopio.Tpo -c -o grub-core/io/libgrubmods_a-lzopio.o `test -f 'grub-core/io/lzopio.c' || echo '$(srcdir)/'`grub-core/io/lzopio.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/io/$(DEPDIR)/libgrubmods_a-lzopio.Tpo grub-core/io/$(DEPDIR)/libgrubmods_a-lzopio.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/io/lzopio.c' object='grub-core/io/libgrubmods_a-lzopio.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/io/libgrubmods_a-lzopio.o `test -f 'grub-core/io/lzopio.c' || echo '$(srcdir)/'`grub-core/io/lzopio.c - -grub-core/io/libgrubmods_a-lzopio.obj: grub-core/io/lzopio.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/io/libgrubmods_a-lzopio.obj -MD -MP -MF grub-core/io/$(DEPDIR)/libgrubmods_a-lzopio.Tpo -c -o grub-core/io/libgrubmods_a-lzopio.obj `if test -f 'grub-core/io/lzopio.c'; then $(CYGPATH_W) 'grub-core/io/lzopio.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/io/lzopio.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/io/$(DEPDIR)/libgrubmods_a-lzopio.Tpo grub-core/io/$(DEPDIR)/libgrubmods_a-lzopio.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/io/lzopio.c' object='grub-core/io/libgrubmods_a-lzopio.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/io/libgrubmods_a-lzopio.obj `if test -f 'grub-core/io/lzopio.c'; then $(CYGPATH_W) 'grub-core/io/lzopio.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/io/lzopio.c'; fi` - -grub-core/kern/ia64/libgrubmods_a-dl_helper.o: grub-core/kern/ia64/dl_helper.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/kern/ia64/libgrubmods_a-dl_helper.o -MD -MP -MF grub-core/kern/ia64/$(DEPDIR)/libgrubmods_a-dl_helper.Tpo -c -o grub-core/kern/ia64/libgrubmods_a-dl_helper.o `test -f 'grub-core/kern/ia64/dl_helper.c' || echo '$(srcdir)/'`grub-core/kern/ia64/dl_helper.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/kern/ia64/$(DEPDIR)/libgrubmods_a-dl_helper.Tpo grub-core/kern/ia64/$(DEPDIR)/libgrubmods_a-dl_helper.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/kern/ia64/dl_helper.c' object='grub-core/kern/ia64/libgrubmods_a-dl_helper.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/kern/ia64/libgrubmods_a-dl_helper.o `test -f 'grub-core/kern/ia64/dl_helper.c' || echo '$(srcdir)/'`grub-core/kern/ia64/dl_helper.c - -grub-core/kern/ia64/libgrubmods_a-dl_helper.obj: grub-core/kern/ia64/dl_helper.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/kern/ia64/libgrubmods_a-dl_helper.obj -MD -MP -MF grub-core/kern/ia64/$(DEPDIR)/libgrubmods_a-dl_helper.Tpo -c -o grub-core/kern/ia64/libgrubmods_a-dl_helper.obj `if test -f 'grub-core/kern/ia64/dl_helper.c'; then $(CYGPATH_W) 'grub-core/kern/ia64/dl_helper.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/kern/ia64/dl_helper.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/kern/ia64/$(DEPDIR)/libgrubmods_a-dl_helper.Tpo grub-core/kern/ia64/$(DEPDIR)/libgrubmods_a-dl_helper.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/kern/ia64/dl_helper.c' object='grub-core/kern/ia64/libgrubmods_a-dl_helper.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/kern/ia64/libgrubmods_a-dl_helper.obj `if test -f 'grub-core/kern/ia64/dl_helper.c'; then $(CYGPATH_W) 'grub-core/kern/ia64/dl_helper.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/kern/ia64/dl_helper.c'; fi` - -grub-core/kern/arm/libgrubmods_a-dl_helper.o: grub-core/kern/arm/dl_helper.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/kern/arm/libgrubmods_a-dl_helper.o -MD -MP -MF grub-core/kern/arm/$(DEPDIR)/libgrubmods_a-dl_helper.Tpo -c -o grub-core/kern/arm/libgrubmods_a-dl_helper.o `test -f 'grub-core/kern/arm/dl_helper.c' || echo '$(srcdir)/'`grub-core/kern/arm/dl_helper.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/kern/arm/$(DEPDIR)/libgrubmods_a-dl_helper.Tpo grub-core/kern/arm/$(DEPDIR)/libgrubmods_a-dl_helper.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/kern/arm/dl_helper.c' object='grub-core/kern/arm/libgrubmods_a-dl_helper.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/kern/arm/libgrubmods_a-dl_helper.o `test -f 'grub-core/kern/arm/dl_helper.c' || echo '$(srcdir)/'`grub-core/kern/arm/dl_helper.c - -grub-core/kern/arm/libgrubmods_a-dl_helper.obj: grub-core/kern/arm/dl_helper.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/kern/arm/libgrubmods_a-dl_helper.obj -MD -MP -MF grub-core/kern/arm/$(DEPDIR)/libgrubmods_a-dl_helper.Tpo -c -o grub-core/kern/arm/libgrubmods_a-dl_helper.obj `if test -f 'grub-core/kern/arm/dl_helper.c'; then $(CYGPATH_W) 'grub-core/kern/arm/dl_helper.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/kern/arm/dl_helper.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/kern/arm/$(DEPDIR)/libgrubmods_a-dl_helper.Tpo grub-core/kern/arm/$(DEPDIR)/libgrubmods_a-dl_helper.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/kern/arm/dl_helper.c' object='grub-core/kern/arm/libgrubmods_a-dl_helper.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/kern/arm/libgrubmods_a-dl_helper.obj `if test -f 'grub-core/kern/arm/dl_helper.c'; then $(CYGPATH_W) 'grub-core/kern/arm/dl_helper.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/kern/arm/dl_helper.c'; fi` - -grub-core/kern/arm64/libgrubmods_a-dl_helper.o: grub-core/kern/arm64/dl_helper.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/kern/arm64/libgrubmods_a-dl_helper.o -MD -MP -MF grub-core/kern/arm64/$(DEPDIR)/libgrubmods_a-dl_helper.Tpo -c -o grub-core/kern/arm64/libgrubmods_a-dl_helper.o `test -f 'grub-core/kern/arm64/dl_helper.c' || echo '$(srcdir)/'`grub-core/kern/arm64/dl_helper.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/kern/arm64/$(DEPDIR)/libgrubmods_a-dl_helper.Tpo grub-core/kern/arm64/$(DEPDIR)/libgrubmods_a-dl_helper.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/kern/arm64/dl_helper.c' object='grub-core/kern/arm64/libgrubmods_a-dl_helper.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/kern/arm64/libgrubmods_a-dl_helper.o `test -f 'grub-core/kern/arm64/dl_helper.c' || echo '$(srcdir)/'`grub-core/kern/arm64/dl_helper.c - -grub-core/kern/arm64/libgrubmods_a-dl_helper.obj: grub-core/kern/arm64/dl_helper.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/kern/arm64/libgrubmods_a-dl_helper.obj -MD -MP -MF grub-core/kern/arm64/$(DEPDIR)/libgrubmods_a-dl_helper.Tpo -c -o grub-core/kern/arm64/libgrubmods_a-dl_helper.obj `if test -f 'grub-core/kern/arm64/dl_helper.c'; then $(CYGPATH_W) 'grub-core/kern/arm64/dl_helper.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/kern/arm64/dl_helper.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/kern/arm64/$(DEPDIR)/libgrubmods_a-dl_helper.Tpo grub-core/kern/arm64/$(DEPDIR)/libgrubmods_a-dl_helper.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/kern/arm64/dl_helper.c' object='grub-core/kern/arm64/libgrubmods_a-dl_helper.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/kern/arm64/libgrubmods_a-dl_helper.obj `if test -f 'grub-core/kern/arm64/dl_helper.c'; then $(CYGPATH_W) 'grub-core/kern/arm64/dl_helper.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/kern/arm64/dl_helper.c'; fi` - -grub-core/lib/minilzo/libgrubmods_a-minilzo.o: grub-core/lib/minilzo/minilzo.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/lib/minilzo/libgrubmods_a-minilzo.o -MD -MP -MF grub-core/lib/minilzo/$(DEPDIR)/libgrubmods_a-minilzo.Tpo -c -o grub-core/lib/minilzo/libgrubmods_a-minilzo.o `test -f 'grub-core/lib/minilzo/minilzo.c' || echo '$(srcdir)/'`grub-core/lib/minilzo/minilzo.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/lib/minilzo/$(DEPDIR)/libgrubmods_a-minilzo.Tpo grub-core/lib/minilzo/$(DEPDIR)/libgrubmods_a-minilzo.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/lib/minilzo/minilzo.c' object='grub-core/lib/minilzo/libgrubmods_a-minilzo.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/lib/minilzo/libgrubmods_a-minilzo.o `test -f 'grub-core/lib/minilzo/minilzo.c' || echo '$(srcdir)/'`grub-core/lib/minilzo/minilzo.c - -grub-core/lib/minilzo/libgrubmods_a-minilzo.obj: grub-core/lib/minilzo/minilzo.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/lib/minilzo/libgrubmods_a-minilzo.obj -MD -MP -MF grub-core/lib/minilzo/$(DEPDIR)/libgrubmods_a-minilzo.Tpo -c -o grub-core/lib/minilzo/libgrubmods_a-minilzo.obj `if test -f 'grub-core/lib/minilzo/minilzo.c'; then $(CYGPATH_W) 'grub-core/lib/minilzo/minilzo.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/lib/minilzo/minilzo.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/lib/minilzo/$(DEPDIR)/libgrubmods_a-minilzo.Tpo grub-core/lib/minilzo/$(DEPDIR)/libgrubmods_a-minilzo.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/lib/minilzo/minilzo.c' object='grub-core/lib/minilzo/libgrubmods_a-minilzo.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/lib/minilzo/libgrubmods_a-minilzo.obj `if test -f 'grub-core/lib/minilzo/minilzo.c'; then $(CYGPATH_W) 'grub-core/lib/minilzo/minilzo.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/lib/minilzo/minilzo.c'; fi` - -grub-core/lib/xzembed/libgrubmods_a-xz_dec_bcj.o: grub-core/lib/xzembed/xz_dec_bcj.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/lib/xzembed/libgrubmods_a-xz_dec_bcj.o -MD -MP -MF grub-core/lib/xzembed/$(DEPDIR)/libgrubmods_a-xz_dec_bcj.Tpo -c -o grub-core/lib/xzembed/libgrubmods_a-xz_dec_bcj.o `test -f 'grub-core/lib/xzembed/xz_dec_bcj.c' || echo '$(srcdir)/'`grub-core/lib/xzembed/xz_dec_bcj.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/lib/xzembed/$(DEPDIR)/libgrubmods_a-xz_dec_bcj.Tpo grub-core/lib/xzembed/$(DEPDIR)/libgrubmods_a-xz_dec_bcj.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/lib/xzembed/xz_dec_bcj.c' object='grub-core/lib/xzembed/libgrubmods_a-xz_dec_bcj.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/lib/xzembed/libgrubmods_a-xz_dec_bcj.o `test -f 'grub-core/lib/xzembed/xz_dec_bcj.c' || echo '$(srcdir)/'`grub-core/lib/xzembed/xz_dec_bcj.c - -grub-core/lib/xzembed/libgrubmods_a-xz_dec_bcj.obj: grub-core/lib/xzembed/xz_dec_bcj.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/lib/xzembed/libgrubmods_a-xz_dec_bcj.obj -MD -MP -MF grub-core/lib/xzembed/$(DEPDIR)/libgrubmods_a-xz_dec_bcj.Tpo -c -o grub-core/lib/xzembed/libgrubmods_a-xz_dec_bcj.obj `if test -f 'grub-core/lib/xzembed/xz_dec_bcj.c'; then $(CYGPATH_W) 'grub-core/lib/xzembed/xz_dec_bcj.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/lib/xzembed/xz_dec_bcj.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/lib/xzembed/$(DEPDIR)/libgrubmods_a-xz_dec_bcj.Tpo grub-core/lib/xzembed/$(DEPDIR)/libgrubmods_a-xz_dec_bcj.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/lib/xzembed/xz_dec_bcj.c' object='grub-core/lib/xzembed/libgrubmods_a-xz_dec_bcj.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/lib/xzembed/libgrubmods_a-xz_dec_bcj.obj `if test -f 'grub-core/lib/xzembed/xz_dec_bcj.c'; then $(CYGPATH_W) 'grub-core/lib/xzembed/xz_dec_bcj.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/lib/xzembed/xz_dec_bcj.c'; fi` - -grub-core/lib/xzembed/libgrubmods_a-xz_dec_lzma2.o: grub-core/lib/xzembed/xz_dec_lzma2.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/lib/xzembed/libgrubmods_a-xz_dec_lzma2.o -MD -MP -MF grub-core/lib/xzembed/$(DEPDIR)/libgrubmods_a-xz_dec_lzma2.Tpo -c -o grub-core/lib/xzembed/libgrubmods_a-xz_dec_lzma2.o `test -f 'grub-core/lib/xzembed/xz_dec_lzma2.c' || echo '$(srcdir)/'`grub-core/lib/xzembed/xz_dec_lzma2.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/lib/xzembed/$(DEPDIR)/libgrubmods_a-xz_dec_lzma2.Tpo grub-core/lib/xzembed/$(DEPDIR)/libgrubmods_a-xz_dec_lzma2.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/lib/xzembed/xz_dec_lzma2.c' object='grub-core/lib/xzembed/libgrubmods_a-xz_dec_lzma2.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/lib/xzembed/libgrubmods_a-xz_dec_lzma2.o `test -f 'grub-core/lib/xzembed/xz_dec_lzma2.c' || echo '$(srcdir)/'`grub-core/lib/xzembed/xz_dec_lzma2.c - -grub-core/lib/xzembed/libgrubmods_a-xz_dec_lzma2.obj: grub-core/lib/xzembed/xz_dec_lzma2.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/lib/xzembed/libgrubmods_a-xz_dec_lzma2.obj -MD -MP -MF grub-core/lib/xzembed/$(DEPDIR)/libgrubmods_a-xz_dec_lzma2.Tpo -c -o grub-core/lib/xzembed/libgrubmods_a-xz_dec_lzma2.obj `if test -f 'grub-core/lib/xzembed/xz_dec_lzma2.c'; then $(CYGPATH_W) 'grub-core/lib/xzembed/xz_dec_lzma2.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/lib/xzembed/xz_dec_lzma2.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/lib/xzembed/$(DEPDIR)/libgrubmods_a-xz_dec_lzma2.Tpo grub-core/lib/xzembed/$(DEPDIR)/libgrubmods_a-xz_dec_lzma2.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/lib/xzembed/xz_dec_lzma2.c' object='grub-core/lib/xzembed/libgrubmods_a-xz_dec_lzma2.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/lib/xzembed/libgrubmods_a-xz_dec_lzma2.obj `if test -f 'grub-core/lib/xzembed/xz_dec_lzma2.c'; then $(CYGPATH_W) 'grub-core/lib/xzembed/xz_dec_lzma2.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/lib/xzembed/xz_dec_lzma2.c'; fi` - -grub-core/lib/xzembed/libgrubmods_a-xz_dec_stream.o: grub-core/lib/xzembed/xz_dec_stream.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/lib/xzembed/libgrubmods_a-xz_dec_stream.o -MD -MP -MF grub-core/lib/xzembed/$(DEPDIR)/libgrubmods_a-xz_dec_stream.Tpo -c -o grub-core/lib/xzembed/libgrubmods_a-xz_dec_stream.o `test -f 'grub-core/lib/xzembed/xz_dec_stream.c' || echo '$(srcdir)/'`grub-core/lib/xzembed/xz_dec_stream.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/lib/xzembed/$(DEPDIR)/libgrubmods_a-xz_dec_stream.Tpo grub-core/lib/xzembed/$(DEPDIR)/libgrubmods_a-xz_dec_stream.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/lib/xzembed/xz_dec_stream.c' object='grub-core/lib/xzembed/libgrubmods_a-xz_dec_stream.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/lib/xzembed/libgrubmods_a-xz_dec_stream.o `test -f 'grub-core/lib/xzembed/xz_dec_stream.c' || echo '$(srcdir)/'`grub-core/lib/xzembed/xz_dec_stream.c - -grub-core/lib/xzembed/libgrubmods_a-xz_dec_stream.obj: grub-core/lib/xzembed/xz_dec_stream.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/lib/xzembed/libgrubmods_a-xz_dec_stream.obj -MD -MP -MF grub-core/lib/xzembed/$(DEPDIR)/libgrubmods_a-xz_dec_stream.Tpo -c -o grub-core/lib/xzembed/libgrubmods_a-xz_dec_stream.obj `if test -f 'grub-core/lib/xzembed/xz_dec_stream.c'; then $(CYGPATH_W) 'grub-core/lib/xzembed/xz_dec_stream.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/lib/xzembed/xz_dec_stream.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/lib/xzembed/$(DEPDIR)/libgrubmods_a-xz_dec_stream.Tpo grub-core/lib/xzembed/$(DEPDIR)/libgrubmods_a-xz_dec_stream.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/lib/xzembed/xz_dec_stream.c' object='grub-core/lib/xzembed/libgrubmods_a-xz_dec_stream.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/lib/xzembed/libgrubmods_a-xz_dec_stream.obj `if test -f 'grub-core/lib/xzembed/xz_dec_stream.c'; then $(CYGPATH_W) 'grub-core/lib/xzembed/xz_dec_stream.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/lib/xzembed/xz_dec_stream.c'; fi` - -grub-core/lib/zstd/libgrubmods_a-debug.o: grub-core/lib/zstd/debug.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/lib/zstd/libgrubmods_a-debug.o -MD -MP -MF grub-core/lib/zstd/$(DEPDIR)/libgrubmods_a-debug.Tpo -c -o grub-core/lib/zstd/libgrubmods_a-debug.o `test -f 'grub-core/lib/zstd/debug.c' || echo '$(srcdir)/'`grub-core/lib/zstd/debug.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/lib/zstd/$(DEPDIR)/libgrubmods_a-debug.Tpo grub-core/lib/zstd/$(DEPDIR)/libgrubmods_a-debug.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/lib/zstd/debug.c' object='grub-core/lib/zstd/libgrubmods_a-debug.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/lib/zstd/libgrubmods_a-debug.o `test -f 'grub-core/lib/zstd/debug.c' || echo '$(srcdir)/'`grub-core/lib/zstd/debug.c - -grub-core/lib/zstd/libgrubmods_a-debug.obj: grub-core/lib/zstd/debug.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/lib/zstd/libgrubmods_a-debug.obj -MD -MP -MF grub-core/lib/zstd/$(DEPDIR)/libgrubmods_a-debug.Tpo -c -o grub-core/lib/zstd/libgrubmods_a-debug.obj `if test -f 'grub-core/lib/zstd/debug.c'; then $(CYGPATH_W) 'grub-core/lib/zstd/debug.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/lib/zstd/debug.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/lib/zstd/$(DEPDIR)/libgrubmods_a-debug.Tpo grub-core/lib/zstd/$(DEPDIR)/libgrubmods_a-debug.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/lib/zstd/debug.c' object='grub-core/lib/zstd/libgrubmods_a-debug.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/lib/zstd/libgrubmods_a-debug.obj `if test -f 'grub-core/lib/zstd/debug.c'; then $(CYGPATH_W) 'grub-core/lib/zstd/debug.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/lib/zstd/debug.c'; fi` - -grub-core/lib/zstd/libgrubmods_a-entropy_common.o: grub-core/lib/zstd/entropy_common.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/lib/zstd/libgrubmods_a-entropy_common.o -MD -MP -MF grub-core/lib/zstd/$(DEPDIR)/libgrubmods_a-entropy_common.Tpo -c -o grub-core/lib/zstd/libgrubmods_a-entropy_common.o `test -f 'grub-core/lib/zstd/entropy_common.c' || echo '$(srcdir)/'`grub-core/lib/zstd/entropy_common.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/lib/zstd/$(DEPDIR)/libgrubmods_a-entropy_common.Tpo grub-core/lib/zstd/$(DEPDIR)/libgrubmods_a-entropy_common.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/lib/zstd/entropy_common.c' object='grub-core/lib/zstd/libgrubmods_a-entropy_common.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/lib/zstd/libgrubmods_a-entropy_common.o `test -f 'grub-core/lib/zstd/entropy_common.c' || echo '$(srcdir)/'`grub-core/lib/zstd/entropy_common.c - -grub-core/lib/zstd/libgrubmods_a-entropy_common.obj: grub-core/lib/zstd/entropy_common.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/lib/zstd/libgrubmods_a-entropy_common.obj -MD -MP -MF grub-core/lib/zstd/$(DEPDIR)/libgrubmods_a-entropy_common.Tpo -c -o grub-core/lib/zstd/libgrubmods_a-entropy_common.obj `if test -f 'grub-core/lib/zstd/entropy_common.c'; then $(CYGPATH_W) 'grub-core/lib/zstd/entropy_common.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/lib/zstd/entropy_common.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/lib/zstd/$(DEPDIR)/libgrubmods_a-entropy_common.Tpo grub-core/lib/zstd/$(DEPDIR)/libgrubmods_a-entropy_common.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/lib/zstd/entropy_common.c' object='grub-core/lib/zstd/libgrubmods_a-entropy_common.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/lib/zstd/libgrubmods_a-entropy_common.obj `if test -f 'grub-core/lib/zstd/entropy_common.c'; then $(CYGPATH_W) 'grub-core/lib/zstd/entropy_common.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/lib/zstd/entropy_common.c'; fi` - -grub-core/lib/zstd/libgrubmods_a-error_private.o: grub-core/lib/zstd/error_private.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/lib/zstd/libgrubmods_a-error_private.o -MD -MP -MF grub-core/lib/zstd/$(DEPDIR)/libgrubmods_a-error_private.Tpo -c -o grub-core/lib/zstd/libgrubmods_a-error_private.o `test -f 'grub-core/lib/zstd/error_private.c' || echo '$(srcdir)/'`grub-core/lib/zstd/error_private.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/lib/zstd/$(DEPDIR)/libgrubmods_a-error_private.Tpo grub-core/lib/zstd/$(DEPDIR)/libgrubmods_a-error_private.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/lib/zstd/error_private.c' object='grub-core/lib/zstd/libgrubmods_a-error_private.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/lib/zstd/libgrubmods_a-error_private.o `test -f 'grub-core/lib/zstd/error_private.c' || echo '$(srcdir)/'`grub-core/lib/zstd/error_private.c - -grub-core/lib/zstd/libgrubmods_a-error_private.obj: grub-core/lib/zstd/error_private.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/lib/zstd/libgrubmods_a-error_private.obj -MD -MP -MF grub-core/lib/zstd/$(DEPDIR)/libgrubmods_a-error_private.Tpo -c -o grub-core/lib/zstd/libgrubmods_a-error_private.obj `if test -f 'grub-core/lib/zstd/error_private.c'; then $(CYGPATH_W) 'grub-core/lib/zstd/error_private.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/lib/zstd/error_private.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/lib/zstd/$(DEPDIR)/libgrubmods_a-error_private.Tpo grub-core/lib/zstd/$(DEPDIR)/libgrubmods_a-error_private.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/lib/zstd/error_private.c' object='grub-core/lib/zstd/libgrubmods_a-error_private.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/lib/zstd/libgrubmods_a-error_private.obj `if test -f 'grub-core/lib/zstd/error_private.c'; then $(CYGPATH_W) 'grub-core/lib/zstd/error_private.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/lib/zstd/error_private.c'; fi` - -grub-core/lib/zstd/libgrubmods_a-fse_decompress.o: grub-core/lib/zstd/fse_decompress.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/lib/zstd/libgrubmods_a-fse_decompress.o -MD -MP -MF grub-core/lib/zstd/$(DEPDIR)/libgrubmods_a-fse_decompress.Tpo -c -o grub-core/lib/zstd/libgrubmods_a-fse_decompress.o `test -f 'grub-core/lib/zstd/fse_decompress.c' || echo '$(srcdir)/'`grub-core/lib/zstd/fse_decompress.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/lib/zstd/$(DEPDIR)/libgrubmods_a-fse_decompress.Tpo grub-core/lib/zstd/$(DEPDIR)/libgrubmods_a-fse_decompress.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/lib/zstd/fse_decompress.c' object='grub-core/lib/zstd/libgrubmods_a-fse_decompress.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/lib/zstd/libgrubmods_a-fse_decompress.o `test -f 'grub-core/lib/zstd/fse_decompress.c' || echo '$(srcdir)/'`grub-core/lib/zstd/fse_decompress.c - -grub-core/lib/zstd/libgrubmods_a-fse_decompress.obj: grub-core/lib/zstd/fse_decompress.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/lib/zstd/libgrubmods_a-fse_decompress.obj -MD -MP -MF grub-core/lib/zstd/$(DEPDIR)/libgrubmods_a-fse_decompress.Tpo -c -o grub-core/lib/zstd/libgrubmods_a-fse_decompress.obj `if test -f 'grub-core/lib/zstd/fse_decompress.c'; then $(CYGPATH_W) 'grub-core/lib/zstd/fse_decompress.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/lib/zstd/fse_decompress.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/lib/zstd/$(DEPDIR)/libgrubmods_a-fse_decompress.Tpo grub-core/lib/zstd/$(DEPDIR)/libgrubmods_a-fse_decompress.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/lib/zstd/fse_decompress.c' object='grub-core/lib/zstd/libgrubmods_a-fse_decompress.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/lib/zstd/libgrubmods_a-fse_decompress.obj `if test -f 'grub-core/lib/zstd/fse_decompress.c'; then $(CYGPATH_W) 'grub-core/lib/zstd/fse_decompress.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/lib/zstd/fse_decompress.c'; fi` - -grub-core/lib/zstd/libgrubmods_a-huf_decompress.o: grub-core/lib/zstd/huf_decompress.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/lib/zstd/libgrubmods_a-huf_decompress.o -MD -MP -MF grub-core/lib/zstd/$(DEPDIR)/libgrubmods_a-huf_decompress.Tpo -c -o grub-core/lib/zstd/libgrubmods_a-huf_decompress.o `test -f 'grub-core/lib/zstd/huf_decompress.c' || echo '$(srcdir)/'`grub-core/lib/zstd/huf_decompress.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/lib/zstd/$(DEPDIR)/libgrubmods_a-huf_decompress.Tpo grub-core/lib/zstd/$(DEPDIR)/libgrubmods_a-huf_decompress.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/lib/zstd/huf_decompress.c' object='grub-core/lib/zstd/libgrubmods_a-huf_decompress.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/lib/zstd/libgrubmods_a-huf_decompress.o `test -f 'grub-core/lib/zstd/huf_decompress.c' || echo '$(srcdir)/'`grub-core/lib/zstd/huf_decompress.c - -grub-core/lib/zstd/libgrubmods_a-huf_decompress.obj: grub-core/lib/zstd/huf_decompress.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/lib/zstd/libgrubmods_a-huf_decompress.obj -MD -MP -MF grub-core/lib/zstd/$(DEPDIR)/libgrubmods_a-huf_decompress.Tpo -c -o grub-core/lib/zstd/libgrubmods_a-huf_decompress.obj `if test -f 'grub-core/lib/zstd/huf_decompress.c'; then $(CYGPATH_W) 'grub-core/lib/zstd/huf_decompress.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/lib/zstd/huf_decompress.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/lib/zstd/$(DEPDIR)/libgrubmods_a-huf_decompress.Tpo grub-core/lib/zstd/$(DEPDIR)/libgrubmods_a-huf_decompress.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/lib/zstd/huf_decompress.c' object='grub-core/lib/zstd/libgrubmods_a-huf_decompress.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/lib/zstd/libgrubmods_a-huf_decompress.obj `if test -f 'grub-core/lib/zstd/huf_decompress.c'; then $(CYGPATH_W) 'grub-core/lib/zstd/huf_decompress.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/lib/zstd/huf_decompress.c'; fi` - -grub-core/lib/zstd/libgrubmods_a-module.o: grub-core/lib/zstd/module.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/lib/zstd/libgrubmods_a-module.o -MD -MP -MF grub-core/lib/zstd/$(DEPDIR)/libgrubmods_a-module.Tpo -c -o grub-core/lib/zstd/libgrubmods_a-module.o `test -f 'grub-core/lib/zstd/module.c' || echo '$(srcdir)/'`grub-core/lib/zstd/module.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/lib/zstd/$(DEPDIR)/libgrubmods_a-module.Tpo grub-core/lib/zstd/$(DEPDIR)/libgrubmods_a-module.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/lib/zstd/module.c' object='grub-core/lib/zstd/libgrubmods_a-module.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/lib/zstd/libgrubmods_a-module.o `test -f 'grub-core/lib/zstd/module.c' || echo '$(srcdir)/'`grub-core/lib/zstd/module.c - -grub-core/lib/zstd/libgrubmods_a-module.obj: grub-core/lib/zstd/module.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/lib/zstd/libgrubmods_a-module.obj -MD -MP -MF grub-core/lib/zstd/$(DEPDIR)/libgrubmods_a-module.Tpo -c -o grub-core/lib/zstd/libgrubmods_a-module.obj `if test -f 'grub-core/lib/zstd/module.c'; then $(CYGPATH_W) 'grub-core/lib/zstd/module.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/lib/zstd/module.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/lib/zstd/$(DEPDIR)/libgrubmods_a-module.Tpo grub-core/lib/zstd/$(DEPDIR)/libgrubmods_a-module.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/lib/zstd/module.c' object='grub-core/lib/zstd/libgrubmods_a-module.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/lib/zstd/libgrubmods_a-module.obj `if test -f 'grub-core/lib/zstd/module.c'; then $(CYGPATH_W) 'grub-core/lib/zstd/module.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/lib/zstd/module.c'; fi` - -grub-core/lib/zstd/libgrubmods_a-xxhash.o: grub-core/lib/zstd/xxhash.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/lib/zstd/libgrubmods_a-xxhash.o -MD -MP -MF grub-core/lib/zstd/$(DEPDIR)/libgrubmods_a-xxhash.Tpo -c -o grub-core/lib/zstd/libgrubmods_a-xxhash.o `test -f 'grub-core/lib/zstd/xxhash.c' || echo '$(srcdir)/'`grub-core/lib/zstd/xxhash.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/lib/zstd/$(DEPDIR)/libgrubmods_a-xxhash.Tpo grub-core/lib/zstd/$(DEPDIR)/libgrubmods_a-xxhash.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/lib/zstd/xxhash.c' object='grub-core/lib/zstd/libgrubmods_a-xxhash.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/lib/zstd/libgrubmods_a-xxhash.o `test -f 'grub-core/lib/zstd/xxhash.c' || echo '$(srcdir)/'`grub-core/lib/zstd/xxhash.c - -grub-core/lib/zstd/libgrubmods_a-xxhash.obj: grub-core/lib/zstd/xxhash.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/lib/zstd/libgrubmods_a-xxhash.obj -MD -MP -MF grub-core/lib/zstd/$(DEPDIR)/libgrubmods_a-xxhash.Tpo -c -o grub-core/lib/zstd/libgrubmods_a-xxhash.obj `if test -f 'grub-core/lib/zstd/xxhash.c'; then $(CYGPATH_W) 'grub-core/lib/zstd/xxhash.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/lib/zstd/xxhash.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/lib/zstd/$(DEPDIR)/libgrubmods_a-xxhash.Tpo grub-core/lib/zstd/$(DEPDIR)/libgrubmods_a-xxhash.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/lib/zstd/xxhash.c' object='grub-core/lib/zstd/libgrubmods_a-xxhash.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/lib/zstd/libgrubmods_a-xxhash.obj `if test -f 'grub-core/lib/zstd/xxhash.c'; then $(CYGPATH_W) 'grub-core/lib/zstd/xxhash.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/lib/zstd/xxhash.c'; fi` - -grub-core/lib/zstd/libgrubmods_a-zstd_common.o: grub-core/lib/zstd/zstd_common.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/lib/zstd/libgrubmods_a-zstd_common.o -MD -MP -MF grub-core/lib/zstd/$(DEPDIR)/libgrubmods_a-zstd_common.Tpo -c -o grub-core/lib/zstd/libgrubmods_a-zstd_common.o `test -f 'grub-core/lib/zstd/zstd_common.c' || echo '$(srcdir)/'`grub-core/lib/zstd/zstd_common.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/lib/zstd/$(DEPDIR)/libgrubmods_a-zstd_common.Tpo grub-core/lib/zstd/$(DEPDIR)/libgrubmods_a-zstd_common.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/lib/zstd/zstd_common.c' object='grub-core/lib/zstd/libgrubmods_a-zstd_common.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/lib/zstd/libgrubmods_a-zstd_common.o `test -f 'grub-core/lib/zstd/zstd_common.c' || echo '$(srcdir)/'`grub-core/lib/zstd/zstd_common.c - -grub-core/lib/zstd/libgrubmods_a-zstd_common.obj: grub-core/lib/zstd/zstd_common.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/lib/zstd/libgrubmods_a-zstd_common.obj -MD -MP -MF grub-core/lib/zstd/$(DEPDIR)/libgrubmods_a-zstd_common.Tpo -c -o grub-core/lib/zstd/libgrubmods_a-zstd_common.obj `if test -f 'grub-core/lib/zstd/zstd_common.c'; then $(CYGPATH_W) 'grub-core/lib/zstd/zstd_common.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/lib/zstd/zstd_common.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/lib/zstd/$(DEPDIR)/libgrubmods_a-zstd_common.Tpo grub-core/lib/zstd/$(DEPDIR)/libgrubmods_a-zstd_common.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/lib/zstd/zstd_common.c' object='grub-core/lib/zstd/libgrubmods_a-zstd_common.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/lib/zstd/libgrubmods_a-zstd_common.obj `if test -f 'grub-core/lib/zstd/zstd_common.c'; then $(CYGPATH_W) 'grub-core/lib/zstd/zstd_common.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/lib/zstd/zstd_common.c'; fi` - -grub-core/lib/zstd/libgrubmods_a-zstd_decompress.o: grub-core/lib/zstd/zstd_decompress.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/lib/zstd/libgrubmods_a-zstd_decompress.o -MD -MP -MF grub-core/lib/zstd/$(DEPDIR)/libgrubmods_a-zstd_decompress.Tpo -c -o grub-core/lib/zstd/libgrubmods_a-zstd_decompress.o `test -f 'grub-core/lib/zstd/zstd_decompress.c' || echo '$(srcdir)/'`grub-core/lib/zstd/zstd_decompress.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/lib/zstd/$(DEPDIR)/libgrubmods_a-zstd_decompress.Tpo grub-core/lib/zstd/$(DEPDIR)/libgrubmods_a-zstd_decompress.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/lib/zstd/zstd_decompress.c' object='grub-core/lib/zstd/libgrubmods_a-zstd_decompress.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/lib/zstd/libgrubmods_a-zstd_decompress.o `test -f 'grub-core/lib/zstd/zstd_decompress.c' || echo '$(srcdir)/'`grub-core/lib/zstd/zstd_decompress.c - -grub-core/lib/zstd/libgrubmods_a-zstd_decompress.obj: grub-core/lib/zstd/zstd_decompress.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT grub-core/lib/zstd/libgrubmods_a-zstd_decompress.obj -MD -MP -MF grub-core/lib/zstd/$(DEPDIR)/libgrubmods_a-zstd_decompress.Tpo -c -o grub-core/lib/zstd/libgrubmods_a-zstd_decompress.obj `if test -f 'grub-core/lib/zstd/zstd_decompress.c'; then $(CYGPATH_W) 'grub-core/lib/zstd/zstd_decompress.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/lib/zstd/zstd_decompress.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/lib/zstd/$(DEPDIR)/libgrubmods_a-zstd_decompress.Tpo grub-core/lib/zstd/$(DEPDIR)/libgrubmods_a-zstd_decompress.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/lib/zstd/zstd_decompress.c' object='grub-core/lib/zstd/libgrubmods_a-zstd_decompress.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o grub-core/lib/zstd/libgrubmods_a-zstd_decompress.obj `if test -f 'grub-core/lib/zstd/zstd_decompress.c'; then $(CYGPATH_W) 'grub-core/lib/zstd/zstd_decompress.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/lib/zstd/zstd_decompress.c'; fi` - -libgrubmods_a-grub_script.tab.o: grub_script.tab.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT libgrubmods_a-grub_script.tab.o -MD -MP -MF $(DEPDIR)/libgrubmods_a-grub_script.tab.Tpo -c -o libgrubmods_a-grub_script.tab.o `test -f 'grub_script.tab.c' || echo '$(srcdir)/'`grub_script.tab.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libgrubmods_a-grub_script.tab.Tpo $(DEPDIR)/libgrubmods_a-grub_script.tab.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub_script.tab.c' object='libgrubmods_a-grub_script.tab.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o libgrubmods_a-grub_script.tab.o `test -f 'grub_script.tab.c' || echo '$(srcdir)/'`grub_script.tab.c - -libgrubmods_a-grub_script.tab.obj: grub_script.tab.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT libgrubmods_a-grub_script.tab.obj -MD -MP -MF $(DEPDIR)/libgrubmods_a-grub_script.tab.Tpo -c -o libgrubmods_a-grub_script.tab.obj `if test -f 'grub_script.tab.c'; then $(CYGPATH_W) 'grub_script.tab.c'; else $(CYGPATH_W) '$(srcdir)/grub_script.tab.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libgrubmods_a-grub_script.tab.Tpo $(DEPDIR)/libgrubmods_a-grub_script.tab.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub_script.tab.c' object='libgrubmods_a-grub_script.tab.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o libgrubmods_a-grub_script.tab.obj `if test -f 'grub_script.tab.c'; then $(CYGPATH_W) 'grub_script.tab.c'; else $(CYGPATH_W) '$(srcdir)/grub_script.tab.c'; fi` - -libgrubmods_a-grub_script.yy.o: grub_script.yy.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT libgrubmods_a-grub_script.yy.o -MD -MP -MF $(DEPDIR)/libgrubmods_a-grub_script.yy.Tpo -c -o libgrubmods_a-grub_script.yy.o `test -f 'grub_script.yy.c' || echo '$(srcdir)/'`grub_script.yy.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libgrubmods_a-grub_script.yy.Tpo $(DEPDIR)/libgrubmods_a-grub_script.yy.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub_script.yy.c' object='libgrubmods_a-grub_script.yy.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o libgrubmods_a-grub_script.yy.o `test -f 'grub_script.yy.c' || echo '$(srcdir)/'`grub_script.yy.c - -libgrubmods_a-grub_script.yy.obj: grub_script.yy.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT libgrubmods_a-grub_script.yy.obj -MD -MP -MF $(DEPDIR)/libgrubmods_a-grub_script.yy.Tpo -c -o libgrubmods_a-grub_script.yy.obj `if test -f 'grub_script.yy.c'; then $(CYGPATH_W) 'grub_script.yy.c'; else $(CYGPATH_W) '$(srcdir)/grub_script.yy.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libgrubmods_a-grub_script.yy.Tpo $(DEPDIR)/libgrubmods_a-grub_script.yy.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub_script.yy.c' object='libgrubmods_a-grub_script.yy.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o libgrubmods_a-grub_script.yy.obj `if test -f 'grub_script.yy.c'; then $(CYGPATH_W) 'grub_script.yy.c'; else $(CYGPATH_W) '$(srcdir)/grub_script.yy.c'; fi` - -libgrubmods_a-libgrub_a_init.o: libgrub_a_init.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT libgrubmods_a-libgrub_a_init.o -MD -MP -MF $(DEPDIR)/libgrubmods_a-libgrub_a_init.Tpo -c -o libgrubmods_a-libgrub_a_init.o `test -f 'libgrub_a_init.c' || echo '$(srcdir)/'`libgrub_a_init.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libgrubmods_a-libgrub_a_init.Tpo $(DEPDIR)/libgrubmods_a-libgrub_a_init.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='libgrub_a_init.c' object='libgrubmods_a-libgrub_a_init.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o libgrubmods_a-libgrub_a_init.o `test -f 'libgrub_a_init.c' || echo '$(srcdir)/'`libgrub_a_init.c - -libgrubmods_a-libgrub_a_init.obj: libgrub_a_init.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -MT libgrubmods_a-libgrub_a_init.obj -MD -MP -MF $(DEPDIR)/libgrubmods_a-libgrub_a_init.Tpo -c -o libgrubmods_a-libgrub_a_init.obj `if test -f 'libgrub_a_init.c'; then $(CYGPATH_W) 'libgrub_a_init.c'; else $(CYGPATH_W) '$(srcdir)/libgrub_a_init.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libgrubmods_a-libgrub_a_init.Tpo $(DEPDIR)/libgrubmods_a-libgrub_a_init.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='libgrub_a_init.c' object='libgrubmods_a-libgrub_a_init.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(CPPFLAGS) $(libgrubmods_a_CFLAGS) $(CFLAGS) -c -o libgrubmods_a-libgrub_a_init.obj `if test -f 'libgrub_a_init.c'; then $(CYGPATH_W) 'libgrub_a_init.c'; else $(CYGPATH_W) '$(srcdir)/libgrub_a_init.c'; fi` - -tests/cmp_test-cmp_unit_test.o: tests/cmp_unit_test.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cmp_test_CPPFLAGS) $(CPPFLAGS) $(cmp_test_CFLAGS) $(CFLAGS) -MT tests/cmp_test-cmp_unit_test.o -MD -MP -MF tests/$(DEPDIR)/cmp_test-cmp_unit_test.Tpo -c -o tests/cmp_test-cmp_unit_test.o `test -f 'tests/cmp_unit_test.c' || echo '$(srcdir)/'`tests/cmp_unit_test.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) tests/$(DEPDIR)/cmp_test-cmp_unit_test.Tpo tests/$(DEPDIR)/cmp_test-cmp_unit_test.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='tests/cmp_unit_test.c' object='tests/cmp_test-cmp_unit_test.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cmp_test_CPPFLAGS) $(CPPFLAGS) $(cmp_test_CFLAGS) $(CFLAGS) -c -o tests/cmp_test-cmp_unit_test.o `test -f 'tests/cmp_unit_test.c' || echo '$(srcdir)/'`tests/cmp_unit_test.c - -tests/cmp_test-cmp_unit_test.obj: tests/cmp_unit_test.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cmp_test_CPPFLAGS) $(CPPFLAGS) $(cmp_test_CFLAGS) $(CFLAGS) -MT tests/cmp_test-cmp_unit_test.obj -MD -MP -MF tests/$(DEPDIR)/cmp_test-cmp_unit_test.Tpo -c -o tests/cmp_test-cmp_unit_test.obj `if test -f 'tests/cmp_unit_test.c'; then $(CYGPATH_W) 'tests/cmp_unit_test.c'; else $(CYGPATH_W) '$(srcdir)/tests/cmp_unit_test.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) tests/$(DEPDIR)/cmp_test-cmp_unit_test.Tpo tests/$(DEPDIR)/cmp_test-cmp_unit_test.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='tests/cmp_unit_test.c' object='tests/cmp_test-cmp_unit_test.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cmp_test_CPPFLAGS) $(CPPFLAGS) $(cmp_test_CFLAGS) $(CFLAGS) -c -o tests/cmp_test-cmp_unit_test.obj `if test -f 'tests/cmp_unit_test.c'; then $(CYGPATH_W) 'tests/cmp_unit_test.c'; else $(CYGPATH_W) '$(srcdir)/tests/cmp_unit_test.c'; fi` - -tests/lib/cmp_test-unit_test.o: tests/lib/unit_test.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cmp_test_CPPFLAGS) $(CPPFLAGS) $(cmp_test_CFLAGS) $(CFLAGS) -MT tests/lib/cmp_test-unit_test.o -MD -MP -MF tests/lib/$(DEPDIR)/cmp_test-unit_test.Tpo -c -o tests/lib/cmp_test-unit_test.o `test -f 'tests/lib/unit_test.c' || echo '$(srcdir)/'`tests/lib/unit_test.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) tests/lib/$(DEPDIR)/cmp_test-unit_test.Tpo tests/lib/$(DEPDIR)/cmp_test-unit_test.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='tests/lib/unit_test.c' object='tests/lib/cmp_test-unit_test.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cmp_test_CPPFLAGS) $(CPPFLAGS) $(cmp_test_CFLAGS) $(CFLAGS) -c -o tests/lib/cmp_test-unit_test.o `test -f 'tests/lib/unit_test.c' || echo '$(srcdir)/'`tests/lib/unit_test.c - -tests/lib/cmp_test-unit_test.obj: tests/lib/unit_test.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cmp_test_CPPFLAGS) $(CPPFLAGS) $(cmp_test_CFLAGS) $(CFLAGS) -MT tests/lib/cmp_test-unit_test.obj -MD -MP -MF tests/lib/$(DEPDIR)/cmp_test-unit_test.Tpo -c -o tests/lib/cmp_test-unit_test.obj `if test -f 'tests/lib/unit_test.c'; then $(CYGPATH_W) 'tests/lib/unit_test.c'; else $(CYGPATH_W) '$(srcdir)/tests/lib/unit_test.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) tests/lib/$(DEPDIR)/cmp_test-unit_test.Tpo tests/lib/$(DEPDIR)/cmp_test-unit_test.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='tests/lib/unit_test.c' object='tests/lib/cmp_test-unit_test.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cmp_test_CPPFLAGS) $(CPPFLAGS) $(cmp_test_CFLAGS) $(CFLAGS) -c -o tests/lib/cmp_test-unit_test.obj `if test -f 'tests/lib/unit_test.c'; then $(CYGPATH_W) 'tests/lib/unit_test.c'; else $(CYGPATH_W) '$(srcdir)/tests/lib/unit_test.c'; fi` - -grub-core/kern/cmp_test-list.o: grub-core/kern/list.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cmp_test_CPPFLAGS) $(CPPFLAGS) $(cmp_test_CFLAGS) $(CFLAGS) -MT grub-core/kern/cmp_test-list.o -MD -MP -MF grub-core/kern/$(DEPDIR)/cmp_test-list.Tpo -c -o grub-core/kern/cmp_test-list.o `test -f 'grub-core/kern/list.c' || echo '$(srcdir)/'`grub-core/kern/list.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/kern/$(DEPDIR)/cmp_test-list.Tpo grub-core/kern/$(DEPDIR)/cmp_test-list.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/kern/list.c' object='grub-core/kern/cmp_test-list.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cmp_test_CPPFLAGS) $(CPPFLAGS) $(cmp_test_CFLAGS) $(CFLAGS) -c -o grub-core/kern/cmp_test-list.o `test -f 'grub-core/kern/list.c' || echo '$(srcdir)/'`grub-core/kern/list.c - -grub-core/kern/cmp_test-list.obj: grub-core/kern/list.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cmp_test_CPPFLAGS) $(CPPFLAGS) $(cmp_test_CFLAGS) $(CFLAGS) -MT grub-core/kern/cmp_test-list.obj -MD -MP -MF grub-core/kern/$(DEPDIR)/cmp_test-list.Tpo -c -o grub-core/kern/cmp_test-list.obj `if test -f 'grub-core/kern/list.c'; then $(CYGPATH_W) 'grub-core/kern/list.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/kern/list.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/kern/$(DEPDIR)/cmp_test-list.Tpo grub-core/kern/$(DEPDIR)/cmp_test-list.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/kern/list.c' object='grub-core/kern/cmp_test-list.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cmp_test_CPPFLAGS) $(CPPFLAGS) $(cmp_test_CFLAGS) $(CFLAGS) -c -o grub-core/kern/cmp_test-list.obj `if test -f 'grub-core/kern/list.c'; then $(CYGPATH_W) 'grub-core/kern/list.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/kern/list.c'; fi` - -grub-core/kern/cmp_test-misc.o: grub-core/kern/misc.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cmp_test_CPPFLAGS) $(CPPFLAGS) $(cmp_test_CFLAGS) $(CFLAGS) -MT grub-core/kern/cmp_test-misc.o -MD -MP -MF grub-core/kern/$(DEPDIR)/cmp_test-misc.Tpo -c -o grub-core/kern/cmp_test-misc.o `test -f 'grub-core/kern/misc.c' || echo '$(srcdir)/'`grub-core/kern/misc.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/kern/$(DEPDIR)/cmp_test-misc.Tpo grub-core/kern/$(DEPDIR)/cmp_test-misc.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/kern/misc.c' object='grub-core/kern/cmp_test-misc.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cmp_test_CPPFLAGS) $(CPPFLAGS) $(cmp_test_CFLAGS) $(CFLAGS) -c -o grub-core/kern/cmp_test-misc.o `test -f 'grub-core/kern/misc.c' || echo '$(srcdir)/'`grub-core/kern/misc.c - -grub-core/kern/cmp_test-misc.obj: grub-core/kern/misc.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cmp_test_CPPFLAGS) $(CPPFLAGS) $(cmp_test_CFLAGS) $(CFLAGS) -MT grub-core/kern/cmp_test-misc.obj -MD -MP -MF grub-core/kern/$(DEPDIR)/cmp_test-misc.Tpo -c -o grub-core/kern/cmp_test-misc.obj `if test -f 'grub-core/kern/misc.c'; then $(CYGPATH_W) 'grub-core/kern/misc.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/kern/misc.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/kern/$(DEPDIR)/cmp_test-misc.Tpo grub-core/kern/$(DEPDIR)/cmp_test-misc.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/kern/misc.c' object='grub-core/kern/cmp_test-misc.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cmp_test_CPPFLAGS) $(CPPFLAGS) $(cmp_test_CFLAGS) $(CFLAGS) -c -o grub-core/kern/cmp_test-misc.obj `if test -f 'grub-core/kern/misc.c'; then $(CYGPATH_W) 'grub-core/kern/misc.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/kern/misc.c'; fi` - -grub-core/tests/lib/cmp_test-test.o: grub-core/tests/lib/test.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cmp_test_CPPFLAGS) $(CPPFLAGS) $(cmp_test_CFLAGS) $(CFLAGS) -MT grub-core/tests/lib/cmp_test-test.o -MD -MP -MF grub-core/tests/lib/$(DEPDIR)/cmp_test-test.Tpo -c -o grub-core/tests/lib/cmp_test-test.o `test -f 'grub-core/tests/lib/test.c' || echo '$(srcdir)/'`grub-core/tests/lib/test.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/tests/lib/$(DEPDIR)/cmp_test-test.Tpo grub-core/tests/lib/$(DEPDIR)/cmp_test-test.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/tests/lib/test.c' object='grub-core/tests/lib/cmp_test-test.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cmp_test_CPPFLAGS) $(CPPFLAGS) $(cmp_test_CFLAGS) $(CFLAGS) -c -o grub-core/tests/lib/cmp_test-test.o `test -f 'grub-core/tests/lib/test.c' || echo '$(srcdir)/'`grub-core/tests/lib/test.c - -grub-core/tests/lib/cmp_test-test.obj: grub-core/tests/lib/test.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cmp_test_CPPFLAGS) $(CPPFLAGS) $(cmp_test_CFLAGS) $(CFLAGS) -MT grub-core/tests/lib/cmp_test-test.obj -MD -MP -MF grub-core/tests/lib/$(DEPDIR)/cmp_test-test.Tpo -c -o grub-core/tests/lib/cmp_test-test.obj `if test -f 'grub-core/tests/lib/test.c'; then $(CYGPATH_W) 'grub-core/tests/lib/test.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/tests/lib/test.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/tests/lib/$(DEPDIR)/cmp_test-test.Tpo grub-core/tests/lib/$(DEPDIR)/cmp_test-test.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/tests/lib/test.c' object='grub-core/tests/lib/cmp_test-test.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cmp_test_CPPFLAGS) $(CPPFLAGS) $(cmp_test_CFLAGS) $(CFLAGS) -c -o grub-core/tests/lib/cmp_test-test.obj `if test -f 'grub-core/tests/lib/test.c'; then $(CYGPATH_W) 'grub-core/tests/lib/test.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/tests/lib/test.c'; fi` - -tests/date_test-date_unit_test.o: tests/date_unit_test.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(date_test_CPPFLAGS) $(CPPFLAGS) $(date_test_CFLAGS) $(CFLAGS) -MT tests/date_test-date_unit_test.o -MD -MP -MF tests/$(DEPDIR)/date_test-date_unit_test.Tpo -c -o tests/date_test-date_unit_test.o `test -f 'tests/date_unit_test.c' || echo '$(srcdir)/'`tests/date_unit_test.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) tests/$(DEPDIR)/date_test-date_unit_test.Tpo tests/$(DEPDIR)/date_test-date_unit_test.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='tests/date_unit_test.c' object='tests/date_test-date_unit_test.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(date_test_CPPFLAGS) $(CPPFLAGS) $(date_test_CFLAGS) $(CFLAGS) -c -o tests/date_test-date_unit_test.o `test -f 'tests/date_unit_test.c' || echo '$(srcdir)/'`tests/date_unit_test.c - -tests/date_test-date_unit_test.obj: tests/date_unit_test.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(date_test_CPPFLAGS) $(CPPFLAGS) $(date_test_CFLAGS) $(CFLAGS) -MT tests/date_test-date_unit_test.obj -MD -MP -MF tests/$(DEPDIR)/date_test-date_unit_test.Tpo -c -o tests/date_test-date_unit_test.obj `if test -f 'tests/date_unit_test.c'; then $(CYGPATH_W) 'tests/date_unit_test.c'; else $(CYGPATH_W) '$(srcdir)/tests/date_unit_test.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) tests/$(DEPDIR)/date_test-date_unit_test.Tpo tests/$(DEPDIR)/date_test-date_unit_test.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='tests/date_unit_test.c' object='tests/date_test-date_unit_test.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(date_test_CPPFLAGS) $(CPPFLAGS) $(date_test_CFLAGS) $(CFLAGS) -c -o tests/date_test-date_unit_test.obj `if test -f 'tests/date_unit_test.c'; then $(CYGPATH_W) 'tests/date_unit_test.c'; else $(CYGPATH_W) '$(srcdir)/tests/date_unit_test.c'; fi` - -tests/lib/date_test-unit_test.o: tests/lib/unit_test.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(date_test_CPPFLAGS) $(CPPFLAGS) $(date_test_CFLAGS) $(CFLAGS) -MT tests/lib/date_test-unit_test.o -MD -MP -MF tests/lib/$(DEPDIR)/date_test-unit_test.Tpo -c -o tests/lib/date_test-unit_test.o `test -f 'tests/lib/unit_test.c' || echo '$(srcdir)/'`tests/lib/unit_test.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) tests/lib/$(DEPDIR)/date_test-unit_test.Tpo tests/lib/$(DEPDIR)/date_test-unit_test.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='tests/lib/unit_test.c' object='tests/lib/date_test-unit_test.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(date_test_CPPFLAGS) $(CPPFLAGS) $(date_test_CFLAGS) $(CFLAGS) -c -o tests/lib/date_test-unit_test.o `test -f 'tests/lib/unit_test.c' || echo '$(srcdir)/'`tests/lib/unit_test.c - -tests/lib/date_test-unit_test.obj: tests/lib/unit_test.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(date_test_CPPFLAGS) $(CPPFLAGS) $(date_test_CFLAGS) $(CFLAGS) -MT tests/lib/date_test-unit_test.obj -MD -MP -MF tests/lib/$(DEPDIR)/date_test-unit_test.Tpo -c -o tests/lib/date_test-unit_test.obj `if test -f 'tests/lib/unit_test.c'; then $(CYGPATH_W) 'tests/lib/unit_test.c'; else $(CYGPATH_W) '$(srcdir)/tests/lib/unit_test.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) tests/lib/$(DEPDIR)/date_test-unit_test.Tpo tests/lib/$(DEPDIR)/date_test-unit_test.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='tests/lib/unit_test.c' object='tests/lib/date_test-unit_test.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(date_test_CPPFLAGS) $(CPPFLAGS) $(date_test_CFLAGS) $(CFLAGS) -c -o tests/lib/date_test-unit_test.obj `if test -f 'tests/lib/unit_test.c'; then $(CYGPATH_W) 'tests/lib/unit_test.c'; else $(CYGPATH_W) '$(srcdir)/tests/lib/unit_test.c'; fi` - -grub-core/kern/date_test-list.o: grub-core/kern/list.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(date_test_CPPFLAGS) $(CPPFLAGS) $(date_test_CFLAGS) $(CFLAGS) -MT grub-core/kern/date_test-list.o -MD -MP -MF grub-core/kern/$(DEPDIR)/date_test-list.Tpo -c -o grub-core/kern/date_test-list.o `test -f 'grub-core/kern/list.c' || echo '$(srcdir)/'`grub-core/kern/list.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/kern/$(DEPDIR)/date_test-list.Tpo grub-core/kern/$(DEPDIR)/date_test-list.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/kern/list.c' object='grub-core/kern/date_test-list.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(date_test_CPPFLAGS) $(CPPFLAGS) $(date_test_CFLAGS) $(CFLAGS) -c -o grub-core/kern/date_test-list.o `test -f 'grub-core/kern/list.c' || echo '$(srcdir)/'`grub-core/kern/list.c - -grub-core/kern/date_test-list.obj: grub-core/kern/list.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(date_test_CPPFLAGS) $(CPPFLAGS) $(date_test_CFLAGS) $(CFLAGS) -MT grub-core/kern/date_test-list.obj -MD -MP -MF grub-core/kern/$(DEPDIR)/date_test-list.Tpo -c -o grub-core/kern/date_test-list.obj `if test -f 'grub-core/kern/list.c'; then $(CYGPATH_W) 'grub-core/kern/list.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/kern/list.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/kern/$(DEPDIR)/date_test-list.Tpo grub-core/kern/$(DEPDIR)/date_test-list.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/kern/list.c' object='grub-core/kern/date_test-list.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(date_test_CPPFLAGS) $(CPPFLAGS) $(date_test_CFLAGS) $(CFLAGS) -c -o grub-core/kern/date_test-list.obj `if test -f 'grub-core/kern/list.c'; then $(CYGPATH_W) 'grub-core/kern/list.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/kern/list.c'; fi` - -grub-core/kern/date_test-misc.o: grub-core/kern/misc.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(date_test_CPPFLAGS) $(CPPFLAGS) $(date_test_CFLAGS) $(CFLAGS) -MT grub-core/kern/date_test-misc.o -MD -MP -MF grub-core/kern/$(DEPDIR)/date_test-misc.Tpo -c -o grub-core/kern/date_test-misc.o `test -f 'grub-core/kern/misc.c' || echo '$(srcdir)/'`grub-core/kern/misc.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/kern/$(DEPDIR)/date_test-misc.Tpo grub-core/kern/$(DEPDIR)/date_test-misc.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/kern/misc.c' object='grub-core/kern/date_test-misc.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(date_test_CPPFLAGS) $(CPPFLAGS) $(date_test_CFLAGS) $(CFLAGS) -c -o grub-core/kern/date_test-misc.o `test -f 'grub-core/kern/misc.c' || echo '$(srcdir)/'`grub-core/kern/misc.c - -grub-core/kern/date_test-misc.obj: grub-core/kern/misc.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(date_test_CPPFLAGS) $(CPPFLAGS) $(date_test_CFLAGS) $(CFLAGS) -MT grub-core/kern/date_test-misc.obj -MD -MP -MF grub-core/kern/$(DEPDIR)/date_test-misc.Tpo -c -o grub-core/kern/date_test-misc.obj `if test -f 'grub-core/kern/misc.c'; then $(CYGPATH_W) 'grub-core/kern/misc.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/kern/misc.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/kern/$(DEPDIR)/date_test-misc.Tpo grub-core/kern/$(DEPDIR)/date_test-misc.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/kern/misc.c' object='grub-core/kern/date_test-misc.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(date_test_CPPFLAGS) $(CPPFLAGS) $(date_test_CFLAGS) $(CFLAGS) -c -o grub-core/kern/date_test-misc.obj `if test -f 'grub-core/kern/misc.c'; then $(CYGPATH_W) 'grub-core/kern/misc.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/kern/misc.c'; fi` - -grub-core/tests/lib/date_test-test.o: grub-core/tests/lib/test.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(date_test_CPPFLAGS) $(CPPFLAGS) $(date_test_CFLAGS) $(CFLAGS) -MT grub-core/tests/lib/date_test-test.o -MD -MP -MF grub-core/tests/lib/$(DEPDIR)/date_test-test.Tpo -c -o grub-core/tests/lib/date_test-test.o `test -f 'grub-core/tests/lib/test.c' || echo '$(srcdir)/'`grub-core/tests/lib/test.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/tests/lib/$(DEPDIR)/date_test-test.Tpo grub-core/tests/lib/$(DEPDIR)/date_test-test.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/tests/lib/test.c' object='grub-core/tests/lib/date_test-test.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(date_test_CPPFLAGS) $(CPPFLAGS) $(date_test_CFLAGS) $(CFLAGS) -c -o grub-core/tests/lib/date_test-test.o `test -f 'grub-core/tests/lib/test.c' || echo '$(srcdir)/'`grub-core/tests/lib/test.c - -grub-core/tests/lib/date_test-test.obj: grub-core/tests/lib/test.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(date_test_CPPFLAGS) $(CPPFLAGS) $(date_test_CFLAGS) $(CFLAGS) -MT grub-core/tests/lib/date_test-test.obj -MD -MP -MF grub-core/tests/lib/$(DEPDIR)/date_test-test.Tpo -c -o grub-core/tests/lib/date_test-test.obj `if test -f 'grub-core/tests/lib/test.c'; then $(CYGPATH_W) 'grub-core/tests/lib/test.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/tests/lib/test.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/tests/lib/$(DEPDIR)/date_test-test.Tpo grub-core/tests/lib/$(DEPDIR)/date_test-test.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/tests/lib/test.c' object='grub-core/tests/lib/date_test-test.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(date_test_CPPFLAGS) $(CPPFLAGS) $(date_test_CFLAGS) $(CFLAGS) -c -o grub-core/tests/lib/date_test-test.obj `if test -f 'grub-core/tests/lib/test.c'; then $(CYGPATH_W) 'grub-core/tests/lib/test.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/tests/lib/test.c'; fi` - -tests/example_unit_test-example_unit_test.o: tests/example_unit_test.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(example_unit_test_CPPFLAGS) $(CPPFLAGS) $(example_unit_test_CFLAGS) $(CFLAGS) -MT tests/example_unit_test-example_unit_test.o -MD -MP -MF tests/$(DEPDIR)/example_unit_test-example_unit_test.Tpo -c -o tests/example_unit_test-example_unit_test.o `test -f 'tests/example_unit_test.c' || echo '$(srcdir)/'`tests/example_unit_test.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) tests/$(DEPDIR)/example_unit_test-example_unit_test.Tpo tests/$(DEPDIR)/example_unit_test-example_unit_test.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='tests/example_unit_test.c' object='tests/example_unit_test-example_unit_test.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(example_unit_test_CPPFLAGS) $(CPPFLAGS) $(example_unit_test_CFLAGS) $(CFLAGS) -c -o tests/example_unit_test-example_unit_test.o `test -f 'tests/example_unit_test.c' || echo '$(srcdir)/'`tests/example_unit_test.c - -tests/example_unit_test-example_unit_test.obj: tests/example_unit_test.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(example_unit_test_CPPFLAGS) $(CPPFLAGS) $(example_unit_test_CFLAGS) $(CFLAGS) -MT tests/example_unit_test-example_unit_test.obj -MD -MP -MF tests/$(DEPDIR)/example_unit_test-example_unit_test.Tpo -c -o tests/example_unit_test-example_unit_test.obj `if test -f 'tests/example_unit_test.c'; then $(CYGPATH_W) 'tests/example_unit_test.c'; else $(CYGPATH_W) '$(srcdir)/tests/example_unit_test.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) tests/$(DEPDIR)/example_unit_test-example_unit_test.Tpo tests/$(DEPDIR)/example_unit_test-example_unit_test.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='tests/example_unit_test.c' object='tests/example_unit_test-example_unit_test.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(example_unit_test_CPPFLAGS) $(CPPFLAGS) $(example_unit_test_CFLAGS) $(CFLAGS) -c -o tests/example_unit_test-example_unit_test.obj `if test -f 'tests/example_unit_test.c'; then $(CYGPATH_W) 'tests/example_unit_test.c'; else $(CYGPATH_W) '$(srcdir)/tests/example_unit_test.c'; fi` - -tests/lib/example_unit_test-unit_test.o: tests/lib/unit_test.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(example_unit_test_CPPFLAGS) $(CPPFLAGS) $(example_unit_test_CFLAGS) $(CFLAGS) -MT tests/lib/example_unit_test-unit_test.o -MD -MP -MF tests/lib/$(DEPDIR)/example_unit_test-unit_test.Tpo -c -o tests/lib/example_unit_test-unit_test.o `test -f 'tests/lib/unit_test.c' || echo '$(srcdir)/'`tests/lib/unit_test.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) tests/lib/$(DEPDIR)/example_unit_test-unit_test.Tpo tests/lib/$(DEPDIR)/example_unit_test-unit_test.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='tests/lib/unit_test.c' object='tests/lib/example_unit_test-unit_test.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(example_unit_test_CPPFLAGS) $(CPPFLAGS) $(example_unit_test_CFLAGS) $(CFLAGS) -c -o tests/lib/example_unit_test-unit_test.o `test -f 'tests/lib/unit_test.c' || echo '$(srcdir)/'`tests/lib/unit_test.c - -tests/lib/example_unit_test-unit_test.obj: tests/lib/unit_test.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(example_unit_test_CPPFLAGS) $(CPPFLAGS) $(example_unit_test_CFLAGS) $(CFLAGS) -MT tests/lib/example_unit_test-unit_test.obj -MD -MP -MF tests/lib/$(DEPDIR)/example_unit_test-unit_test.Tpo -c -o tests/lib/example_unit_test-unit_test.obj `if test -f 'tests/lib/unit_test.c'; then $(CYGPATH_W) 'tests/lib/unit_test.c'; else $(CYGPATH_W) '$(srcdir)/tests/lib/unit_test.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) tests/lib/$(DEPDIR)/example_unit_test-unit_test.Tpo tests/lib/$(DEPDIR)/example_unit_test-unit_test.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='tests/lib/unit_test.c' object='tests/lib/example_unit_test-unit_test.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(example_unit_test_CPPFLAGS) $(CPPFLAGS) $(example_unit_test_CFLAGS) $(CFLAGS) -c -o tests/lib/example_unit_test-unit_test.obj `if test -f 'tests/lib/unit_test.c'; then $(CYGPATH_W) 'tests/lib/unit_test.c'; else $(CYGPATH_W) '$(srcdir)/tests/lib/unit_test.c'; fi` - -grub-core/kern/example_unit_test-list.o: grub-core/kern/list.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(example_unit_test_CPPFLAGS) $(CPPFLAGS) $(example_unit_test_CFLAGS) $(CFLAGS) -MT grub-core/kern/example_unit_test-list.o -MD -MP -MF grub-core/kern/$(DEPDIR)/example_unit_test-list.Tpo -c -o grub-core/kern/example_unit_test-list.o `test -f 'grub-core/kern/list.c' || echo '$(srcdir)/'`grub-core/kern/list.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/kern/$(DEPDIR)/example_unit_test-list.Tpo grub-core/kern/$(DEPDIR)/example_unit_test-list.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/kern/list.c' object='grub-core/kern/example_unit_test-list.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(example_unit_test_CPPFLAGS) $(CPPFLAGS) $(example_unit_test_CFLAGS) $(CFLAGS) -c -o grub-core/kern/example_unit_test-list.o `test -f 'grub-core/kern/list.c' || echo '$(srcdir)/'`grub-core/kern/list.c - -grub-core/kern/example_unit_test-list.obj: grub-core/kern/list.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(example_unit_test_CPPFLAGS) $(CPPFLAGS) $(example_unit_test_CFLAGS) $(CFLAGS) -MT grub-core/kern/example_unit_test-list.obj -MD -MP -MF grub-core/kern/$(DEPDIR)/example_unit_test-list.Tpo -c -o grub-core/kern/example_unit_test-list.obj `if test -f 'grub-core/kern/list.c'; then $(CYGPATH_W) 'grub-core/kern/list.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/kern/list.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/kern/$(DEPDIR)/example_unit_test-list.Tpo grub-core/kern/$(DEPDIR)/example_unit_test-list.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/kern/list.c' object='grub-core/kern/example_unit_test-list.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(example_unit_test_CPPFLAGS) $(CPPFLAGS) $(example_unit_test_CFLAGS) $(CFLAGS) -c -o grub-core/kern/example_unit_test-list.obj `if test -f 'grub-core/kern/list.c'; then $(CYGPATH_W) 'grub-core/kern/list.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/kern/list.c'; fi` - -grub-core/kern/example_unit_test-misc.o: grub-core/kern/misc.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(example_unit_test_CPPFLAGS) $(CPPFLAGS) $(example_unit_test_CFLAGS) $(CFLAGS) -MT grub-core/kern/example_unit_test-misc.o -MD -MP -MF grub-core/kern/$(DEPDIR)/example_unit_test-misc.Tpo -c -o grub-core/kern/example_unit_test-misc.o `test -f 'grub-core/kern/misc.c' || echo '$(srcdir)/'`grub-core/kern/misc.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/kern/$(DEPDIR)/example_unit_test-misc.Tpo grub-core/kern/$(DEPDIR)/example_unit_test-misc.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/kern/misc.c' object='grub-core/kern/example_unit_test-misc.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(example_unit_test_CPPFLAGS) $(CPPFLAGS) $(example_unit_test_CFLAGS) $(CFLAGS) -c -o grub-core/kern/example_unit_test-misc.o `test -f 'grub-core/kern/misc.c' || echo '$(srcdir)/'`grub-core/kern/misc.c - -grub-core/kern/example_unit_test-misc.obj: grub-core/kern/misc.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(example_unit_test_CPPFLAGS) $(CPPFLAGS) $(example_unit_test_CFLAGS) $(CFLAGS) -MT grub-core/kern/example_unit_test-misc.obj -MD -MP -MF grub-core/kern/$(DEPDIR)/example_unit_test-misc.Tpo -c -o grub-core/kern/example_unit_test-misc.obj `if test -f 'grub-core/kern/misc.c'; then $(CYGPATH_W) 'grub-core/kern/misc.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/kern/misc.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/kern/$(DEPDIR)/example_unit_test-misc.Tpo grub-core/kern/$(DEPDIR)/example_unit_test-misc.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/kern/misc.c' object='grub-core/kern/example_unit_test-misc.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(example_unit_test_CPPFLAGS) $(CPPFLAGS) $(example_unit_test_CFLAGS) $(CFLAGS) -c -o grub-core/kern/example_unit_test-misc.obj `if test -f 'grub-core/kern/misc.c'; then $(CYGPATH_W) 'grub-core/kern/misc.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/kern/misc.c'; fi` - -grub-core/tests/lib/example_unit_test-test.o: grub-core/tests/lib/test.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(example_unit_test_CPPFLAGS) $(CPPFLAGS) $(example_unit_test_CFLAGS) $(CFLAGS) -MT grub-core/tests/lib/example_unit_test-test.o -MD -MP -MF grub-core/tests/lib/$(DEPDIR)/example_unit_test-test.Tpo -c -o grub-core/tests/lib/example_unit_test-test.o `test -f 'grub-core/tests/lib/test.c' || echo '$(srcdir)/'`grub-core/tests/lib/test.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/tests/lib/$(DEPDIR)/example_unit_test-test.Tpo grub-core/tests/lib/$(DEPDIR)/example_unit_test-test.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/tests/lib/test.c' object='grub-core/tests/lib/example_unit_test-test.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(example_unit_test_CPPFLAGS) $(CPPFLAGS) $(example_unit_test_CFLAGS) $(CFLAGS) -c -o grub-core/tests/lib/example_unit_test-test.o `test -f 'grub-core/tests/lib/test.c' || echo '$(srcdir)/'`grub-core/tests/lib/test.c - -grub-core/tests/lib/example_unit_test-test.obj: grub-core/tests/lib/test.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(example_unit_test_CPPFLAGS) $(CPPFLAGS) $(example_unit_test_CFLAGS) $(CFLAGS) -MT grub-core/tests/lib/example_unit_test-test.obj -MD -MP -MF grub-core/tests/lib/$(DEPDIR)/example_unit_test-test.Tpo -c -o grub-core/tests/lib/example_unit_test-test.obj `if test -f 'grub-core/tests/lib/test.c'; then $(CYGPATH_W) 'grub-core/tests/lib/test.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/tests/lib/test.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/tests/lib/$(DEPDIR)/example_unit_test-test.Tpo grub-core/tests/lib/$(DEPDIR)/example_unit_test-test.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/tests/lib/test.c' object='grub-core/tests/lib/example_unit_test-test.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(example_unit_test_CPPFLAGS) $(CPPFLAGS) $(example_unit_test_CFLAGS) $(CFLAGS) -c -o grub-core/tests/lib/example_unit_test-test.obj `if test -f 'grub-core/tests/lib/test.c'; then $(CYGPATH_W) 'grub-core/tests/lib/test.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/tests/lib/test.c'; fi` - -util/grub_bios_setup-grub-setup.o: util/grub-setup.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_bios_setup_CPPFLAGS) $(CPPFLAGS) $(grub_bios_setup_CFLAGS) $(CFLAGS) -MT util/grub_bios_setup-grub-setup.o -MD -MP -MF util/$(DEPDIR)/grub_bios_setup-grub-setup.Tpo -c -o util/grub_bios_setup-grub-setup.o `test -f 'util/grub-setup.c' || echo '$(srcdir)/'`util/grub-setup.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_bios_setup-grub-setup.Tpo util/$(DEPDIR)/grub_bios_setup-grub-setup.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/grub-setup.c' object='util/grub_bios_setup-grub-setup.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_bios_setup_CPPFLAGS) $(CPPFLAGS) $(grub_bios_setup_CFLAGS) $(CFLAGS) -c -o util/grub_bios_setup-grub-setup.o `test -f 'util/grub-setup.c' || echo '$(srcdir)/'`util/grub-setup.c - -util/grub_bios_setup-grub-setup.obj: util/grub-setup.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_bios_setup_CPPFLAGS) $(CPPFLAGS) $(grub_bios_setup_CFLAGS) $(CFLAGS) -MT util/grub_bios_setup-grub-setup.obj -MD -MP -MF util/$(DEPDIR)/grub_bios_setup-grub-setup.Tpo -c -o util/grub_bios_setup-grub-setup.obj `if test -f 'util/grub-setup.c'; then $(CYGPATH_W) 'util/grub-setup.c'; else $(CYGPATH_W) '$(srcdir)/util/grub-setup.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_bios_setup-grub-setup.Tpo util/$(DEPDIR)/grub_bios_setup-grub-setup.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/grub-setup.c' object='util/grub_bios_setup-grub-setup.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_bios_setup_CPPFLAGS) $(CPPFLAGS) $(grub_bios_setup_CFLAGS) $(CFLAGS) -c -o util/grub_bios_setup-grub-setup.obj `if test -f 'util/grub-setup.c'; then $(CYGPATH_W) 'util/grub-setup.c'; else $(CYGPATH_W) '$(srcdir)/util/grub-setup.c'; fi` - -util/grub_bios_setup-setup_bios.o: util/setup_bios.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_bios_setup_CPPFLAGS) $(CPPFLAGS) $(grub_bios_setup_CFLAGS) $(CFLAGS) -MT util/grub_bios_setup-setup_bios.o -MD -MP -MF util/$(DEPDIR)/grub_bios_setup-setup_bios.Tpo -c -o util/grub_bios_setup-setup_bios.o `test -f 'util/setup_bios.c' || echo '$(srcdir)/'`util/setup_bios.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_bios_setup-setup_bios.Tpo util/$(DEPDIR)/grub_bios_setup-setup_bios.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/setup_bios.c' object='util/grub_bios_setup-setup_bios.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_bios_setup_CPPFLAGS) $(CPPFLAGS) $(grub_bios_setup_CFLAGS) $(CFLAGS) -c -o util/grub_bios_setup-setup_bios.o `test -f 'util/setup_bios.c' || echo '$(srcdir)/'`util/setup_bios.c - -util/grub_bios_setup-setup_bios.obj: util/setup_bios.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_bios_setup_CPPFLAGS) $(CPPFLAGS) $(grub_bios_setup_CFLAGS) $(CFLAGS) -MT util/grub_bios_setup-setup_bios.obj -MD -MP -MF util/$(DEPDIR)/grub_bios_setup-setup_bios.Tpo -c -o util/grub_bios_setup-setup_bios.obj `if test -f 'util/setup_bios.c'; then $(CYGPATH_W) 'util/setup_bios.c'; else $(CYGPATH_W) '$(srcdir)/util/setup_bios.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_bios_setup-setup_bios.Tpo util/$(DEPDIR)/grub_bios_setup-setup_bios.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/setup_bios.c' object='util/grub_bios_setup-setup_bios.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_bios_setup_CPPFLAGS) $(CPPFLAGS) $(grub_bios_setup_CFLAGS) $(CFLAGS) -c -o util/grub_bios_setup-setup_bios.obj `if test -f 'util/setup_bios.c'; then $(CYGPATH_W) 'util/setup_bios.c'; else $(CYGPATH_W) '$(srcdir)/util/setup_bios.c'; fi` - -grub-core/kern/emu/grub_bios_setup-argp_common.o: grub-core/kern/emu/argp_common.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_bios_setup_CPPFLAGS) $(CPPFLAGS) $(grub_bios_setup_CFLAGS) $(CFLAGS) -MT grub-core/kern/emu/grub_bios_setup-argp_common.o -MD -MP -MF grub-core/kern/emu/$(DEPDIR)/grub_bios_setup-argp_common.Tpo -c -o grub-core/kern/emu/grub_bios_setup-argp_common.o `test -f 'grub-core/kern/emu/argp_common.c' || echo '$(srcdir)/'`grub-core/kern/emu/argp_common.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/kern/emu/$(DEPDIR)/grub_bios_setup-argp_common.Tpo grub-core/kern/emu/$(DEPDIR)/grub_bios_setup-argp_common.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/kern/emu/argp_common.c' object='grub-core/kern/emu/grub_bios_setup-argp_common.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_bios_setup_CPPFLAGS) $(CPPFLAGS) $(grub_bios_setup_CFLAGS) $(CFLAGS) -c -o grub-core/kern/emu/grub_bios_setup-argp_common.o `test -f 'grub-core/kern/emu/argp_common.c' || echo '$(srcdir)/'`grub-core/kern/emu/argp_common.c - -grub-core/kern/emu/grub_bios_setup-argp_common.obj: grub-core/kern/emu/argp_common.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_bios_setup_CPPFLAGS) $(CPPFLAGS) $(grub_bios_setup_CFLAGS) $(CFLAGS) -MT grub-core/kern/emu/grub_bios_setup-argp_common.obj -MD -MP -MF grub-core/kern/emu/$(DEPDIR)/grub_bios_setup-argp_common.Tpo -c -o grub-core/kern/emu/grub_bios_setup-argp_common.obj `if test -f 'grub-core/kern/emu/argp_common.c'; then $(CYGPATH_W) 'grub-core/kern/emu/argp_common.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/kern/emu/argp_common.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/kern/emu/$(DEPDIR)/grub_bios_setup-argp_common.Tpo grub-core/kern/emu/$(DEPDIR)/grub_bios_setup-argp_common.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/kern/emu/argp_common.c' object='grub-core/kern/emu/grub_bios_setup-argp_common.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_bios_setup_CPPFLAGS) $(CPPFLAGS) $(grub_bios_setup_CFLAGS) $(CFLAGS) -c -o grub-core/kern/emu/grub_bios_setup-argp_common.obj `if test -f 'grub-core/kern/emu/argp_common.c'; then $(CYGPATH_W) 'grub-core/kern/emu/argp_common.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/kern/emu/argp_common.c'; fi` - -grub-core/lib/grub_bios_setup-reed_solomon.o: grub-core/lib/reed_solomon.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_bios_setup_CPPFLAGS) $(CPPFLAGS) $(grub_bios_setup_CFLAGS) $(CFLAGS) -MT grub-core/lib/grub_bios_setup-reed_solomon.o -MD -MP -MF grub-core/lib/$(DEPDIR)/grub_bios_setup-reed_solomon.Tpo -c -o grub-core/lib/grub_bios_setup-reed_solomon.o `test -f 'grub-core/lib/reed_solomon.c' || echo '$(srcdir)/'`grub-core/lib/reed_solomon.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/lib/$(DEPDIR)/grub_bios_setup-reed_solomon.Tpo grub-core/lib/$(DEPDIR)/grub_bios_setup-reed_solomon.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/lib/reed_solomon.c' object='grub-core/lib/grub_bios_setup-reed_solomon.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_bios_setup_CPPFLAGS) $(CPPFLAGS) $(grub_bios_setup_CFLAGS) $(CFLAGS) -c -o grub-core/lib/grub_bios_setup-reed_solomon.o `test -f 'grub-core/lib/reed_solomon.c' || echo '$(srcdir)/'`grub-core/lib/reed_solomon.c - -grub-core/lib/grub_bios_setup-reed_solomon.obj: grub-core/lib/reed_solomon.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_bios_setup_CPPFLAGS) $(CPPFLAGS) $(grub_bios_setup_CFLAGS) $(CFLAGS) -MT grub-core/lib/grub_bios_setup-reed_solomon.obj -MD -MP -MF grub-core/lib/$(DEPDIR)/grub_bios_setup-reed_solomon.Tpo -c -o grub-core/lib/grub_bios_setup-reed_solomon.obj `if test -f 'grub-core/lib/reed_solomon.c'; then $(CYGPATH_W) 'grub-core/lib/reed_solomon.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/lib/reed_solomon.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/lib/$(DEPDIR)/grub_bios_setup-reed_solomon.Tpo grub-core/lib/$(DEPDIR)/grub_bios_setup-reed_solomon.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/lib/reed_solomon.c' object='grub-core/lib/grub_bios_setup-reed_solomon.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_bios_setup_CPPFLAGS) $(CPPFLAGS) $(grub_bios_setup_CFLAGS) $(CFLAGS) -c -o grub-core/lib/grub_bios_setup-reed_solomon.obj `if test -f 'grub-core/lib/reed_solomon.c'; then $(CYGPATH_W) 'grub-core/lib/reed_solomon.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/lib/reed_solomon.c'; fi` - -grub-core/osdep/grub_bios_setup-blocklist.o: grub-core/osdep/blocklist.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_bios_setup_CPPFLAGS) $(CPPFLAGS) $(grub_bios_setup_CFLAGS) $(CFLAGS) -MT grub-core/osdep/grub_bios_setup-blocklist.o -MD -MP -MF grub-core/osdep/$(DEPDIR)/grub_bios_setup-blocklist.Tpo -c -o grub-core/osdep/grub_bios_setup-blocklist.o `test -f 'grub-core/osdep/blocklist.c' || echo '$(srcdir)/'`grub-core/osdep/blocklist.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/osdep/$(DEPDIR)/grub_bios_setup-blocklist.Tpo grub-core/osdep/$(DEPDIR)/grub_bios_setup-blocklist.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/osdep/blocklist.c' object='grub-core/osdep/grub_bios_setup-blocklist.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_bios_setup_CPPFLAGS) $(CPPFLAGS) $(grub_bios_setup_CFLAGS) $(CFLAGS) -c -o grub-core/osdep/grub_bios_setup-blocklist.o `test -f 'grub-core/osdep/blocklist.c' || echo '$(srcdir)/'`grub-core/osdep/blocklist.c - -grub-core/osdep/grub_bios_setup-blocklist.obj: grub-core/osdep/blocklist.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_bios_setup_CPPFLAGS) $(CPPFLAGS) $(grub_bios_setup_CFLAGS) $(CFLAGS) -MT grub-core/osdep/grub_bios_setup-blocklist.obj -MD -MP -MF grub-core/osdep/$(DEPDIR)/grub_bios_setup-blocklist.Tpo -c -o grub-core/osdep/grub_bios_setup-blocklist.obj `if test -f 'grub-core/osdep/blocklist.c'; then $(CYGPATH_W) 'grub-core/osdep/blocklist.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/osdep/blocklist.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/osdep/$(DEPDIR)/grub_bios_setup-blocklist.Tpo grub-core/osdep/$(DEPDIR)/grub_bios_setup-blocklist.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/osdep/blocklist.c' object='grub-core/osdep/grub_bios_setup-blocklist.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_bios_setup_CPPFLAGS) $(CPPFLAGS) $(grub_bios_setup_CFLAGS) $(CFLAGS) -c -o grub-core/osdep/grub_bios_setup-blocklist.obj `if test -f 'grub-core/osdep/blocklist.c'; then $(CYGPATH_W) 'grub-core/osdep/blocklist.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/osdep/blocklist.c'; fi` - -grub-core/osdep/grub_bios_setup-init.o: grub-core/osdep/init.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_bios_setup_CPPFLAGS) $(CPPFLAGS) $(grub_bios_setup_CFLAGS) $(CFLAGS) -MT grub-core/osdep/grub_bios_setup-init.o -MD -MP -MF grub-core/osdep/$(DEPDIR)/grub_bios_setup-init.Tpo -c -o grub-core/osdep/grub_bios_setup-init.o `test -f 'grub-core/osdep/init.c' || echo '$(srcdir)/'`grub-core/osdep/init.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/osdep/$(DEPDIR)/grub_bios_setup-init.Tpo grub-core/osdep/$(DEPDIR)/grub_bios_setup-init.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/osdep/init.c' object='grub-core/osdep/grub_bios_setup-init.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_bios_setup_CPPFLAGS) $(CPPFLAGS) $(grub_bios_setup_CFLAGS) $(CFLAGS) -c -o grub-core/osdep/grub_bios_setup-init.o `test -f 'grub-core/osdep/init.c' || echo '$(srcdir)/'`grub-core/osdep/init.c - -grub-core/osdep/grub_bios_setup-init.obj: grub-core/osdep/init.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_bios_setup_CPPFLAGS) $(CPPFLAGS) $(grub_bios_setup_CFLAGS) $(CFLAGS) -MT grub-core/osdep/grub_bios_setup-init.obj -MD -MP -MF grub-core/osdep/$(DEPDIR)/grub_bios_setup-init.Tpo -c -o grub-core/osdep/grub_bios_setup-init.obj `if test -f 'grub-core/osdep/init.c'; then $(CYGPATH_W) 'grub-core/osdep/init.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/osdep/init.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/osdep/$(DEPDIR)/grub_bios_setup-init.Tpo grub-core/osdep/$(DEPDIR)/grub_bios_setup-init.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/osdep/init.c' object='grub-core/osdep/grub_bios_setup-init.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_bios_setup_CPPFLAGS) $(CPPFLAGS) $(grub_bios_setup_CFLAGS) $(CFLAGS) -c -o grub-core/osdep/grub_bios_setup-init.obj `if test -f 'grub-core/osdep/init.c'; then $(CYGPATH_W) 'grub-core/osdep/init.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/osdep/init.c'; fi` - -util/grub_editenv-grub-editenv.o: util/grub-editenv.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_editenv_CPPFLAGS) $(CPPFLAGS) $(grub_editenv_CFLAGS) $(CFLAGS) -MT util/grub_editenv-grub-editenv.o -MD -MP -MF util/$(DEPDIR)/grub_editenv-grub-editenv.Tpo -c -o util/grub_editenv-grub-editenv.o `test -f 'util/grub-editenv.c' || echo '$(srcdir)/'`util/grub-editenv.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_editenv-grub-editenv.Tpo util/$(DEPDIR)/grub_editenv-grub-editenv.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/grub-editenv.c' object='util/grub_editenv-grub-editenv.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_editenv_CPPFLAGS) $(CPPFLAGS) $(grub_editenv_CFLAGS) $(CFLAGS) -c -o util/grub_editenv-grub-editenv.o `test -f 'util/grub-editenv.c' || echo '$(srcdir)/'`util/grub-editenv.c - -util/grub_editenv-grub-editenv.obj: util/grub-editenv.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_editenv_CPPFLAGS) $(CPPFLAGS) $(grub_editenv_CFLAGS) $(CFLAGS) -MT util/grub_editenv-grub-editenv.obj -MD -MP -MF util/$(DEPDIR)/grub_editenv-grub-editenv.Tpo -c -o util/grub_editenv-grub-editenv.obj `if test -f 'util/grub-editenv.c'; then $(CYGPATH_W) 'util/grub-editenv.c'; else $(CYGPATH_W) '$(srcdir)/util/grub-editenv.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_editenv-grub-editenv.Tpo util/$(DEPDIR)/grub_editenv-grub-editenv.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/grub-editenv.c' object='util/grub_editenv-grub-editenv.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_editenv_CPPFLAGS) $(CPPFLAGS) $(grub_editenv_CFLAGS) $(CFLAGS) -c -o util/grub_editenv-grub-editenv.obj `if test -f 'util/grub-editenv.c'; then $(CYGPATH_W) 'util/grub-editenv.c'; else $(CYGPATH_W) '$(srcdir)/util/grub-editenv.c'; fi` - -util/grub_editenv-editenv.o: util/editenv.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_editenv_CPPFLAGS) $(CPPFLAGS) $(grub_editenv_CFLAGS) $(CFLAGS) -MT util/grub_editenv-editenv.o -MD -MP -MF util/$(DEPDIR)/grub_editenv-editenv.Tpo -c -o util/grub_editenv-editenv.o `test -f 'util/editenv.c' || echo '$(srcdir)/'`util/editenv.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_editenv-editenv.Tpo util/$(DEPDIR)/grub_editenv-editenv.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/editenv.c' object='util/grub_editenv-editenv.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_editenv_CPPFLAGS) $(CPPFLAGS) $(grub_editenv_CFLAGS) $(CFLAGS) -c -o util/grub_editenv-editenv.o `test -f 'util/editenv.c' || echo '$(srcdir)/'`util/editenv.c - -util/grub_editenv-editenv.obj: util/editenv.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_editenv_CPPFLAGS) $(CPPFLAGS) $(grub_editenv_CFLAGS) $(CFLAGS) -MT util/grub_editenv-editenv.obj -MD -MP -MF util/$(DEPDIR)/grub_editenv-editenv.Tpo -c -o util/grub_editenv-editenv.obj `if test -f 'util/editenv.c'; then $(CYGPATH_W) 'util/editenv.c'; else $(CYGPATH_W) '$(srcdir)/util/editenv.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_editenv-editenv.Tpo util/$(DEPDIR)/grub_editenv-editenv.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/editenv.c' object='util/grub_editenv-editenv.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_editenv_CPPFLAGS) $(CPPFLAGS) $(grub_editenv_CFLAGS) $(CFLAGS) -c -o util/grub_editenv-editenv.obj `if test -f 'util/editenv.c'; then $(CYGPATH_W) 'util/editenv.c'; else $(CYGPATH_W) '$(srcdir)/util/editenv.c'; fi` - -grub-core/osdep/grub_editenv-init.o: grub-core/osdep/init.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_editenv_CPPFLAGS) $(CPPFLAGS) $(grub_editenv_CFLAGS) $(CFLAGS) -MT grub-core/osdep/grub_editenv-init.o -MD -MP -MF grub-core/osdep/$(DEPDIR)/grub_editenv-init.Tpo -c -o grub-core/osdep/grub_editenv-init.o `test -f 'grub-core/osdep/init.c' || echo '$(srcdir)/'`grub-core/osdep/init.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/osdep/$(DEPDIR)/grub_editenv-init.Tpo grub-core/osdep/$(DEPDIR)/grub_editenv-init.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/osdep/init.c' object='grub-core/osdep/grub_editenv-init.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_editenv_CPPFLAGS) $(CPPFLAGS) $(grub_editenv_CFLAGS) $(CFLAGS) -c -o grub-core/osdep/grub_editenv-init.o `test -f 'grub-core/osdep/init.c' || echo '$(srcdir)/'`grub-core/osdep/init.c - -grub-core/osdep/grub_editenv-init.obj: grub-core/osdep/init.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_editenv_CPPFLAGS) $(CPPFLAGS) $(grub_editenv_CFLAGS) $(CFLAGS) -MT grub-core/osdep/grub_editenv-init.obj -MD -MP -MF grub-core/osdep/$(DEPDIR)/grub_editenv-init.Tpo -c -o grub-core/osdep/grub_editenv-init.obj `if test -f 'grub-core/osdep/init.c'; then $(CYGPATH_W) 'grub-core/osdep/init.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/osdep/init.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/osdep/$(DEPDIR)/grub_editenv-init.Tpo grub-core/osdep/$(DEPDIR)/grub_editenv-init.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/osdep/init.c' object='grub-core/osdep/grub_editenv-init.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_editenv_CPPFLAGS) $(CPPFLAGS) $(grub_editenv_CFLAGS) $(CFLAGS) -c -o grub-core/osdep/grub_editenv-init.obj `if test -f 'grub-core/osdep/init.c'; then $(CYGPATH_W) 'grub-core/osdep/init.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/osdep/init.c'; fi` - -util/grub_file-grub-file.o: util/grub-file.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_file_CPPFLAGS) $(CPPFLAGS) $(grub_file_CFLAGS) $(CFLAGS) -MT util/grub_file-grub-file.o -MD -MP -MF util/$(DEPDIR)/grub_file-grub-file.Tpo -c -o util/grub_file-grub-file.o `test -f 'util/grub-file.c' || echo '$(srcdir)/'`util/grub-file.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_file-grub-file.Tpo util/$(DEPDIR)/grub_file-grub-file.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/grub-file.c' object='util/grub_file-grub-file.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_file_CPPFLAGS) $(CPPFLAGS) $(grub_file_CFLAGS) $(CFLAGS) -c -o util/grub_file-grub-file.o `test -f 'util/grub-file.c' || echo '$(srcdir)/'`util/grub-file.c - -util/grub_file-grub-file.obj: util/grub-file.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_file_CPPFLAGS) $(CPPFLAGS) $(grub_file_CFLAGS) $(CFLAGS) -MT util/grub_file-grub-file.obj -MD -MP -MF util/$(DEPDIR)/grub_file-grub-file.Tpo -c -o util/grub_file-grub-file.obj `if test -f 'util/grub-file.c'; then $(CYGPATH_W) 'util/grub-file.c'; else $(CYGPATH_W) '$(srcdir)/util/grub-file.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_file-grub-file.Tpo util/$(DEPDIR)/grub_file-grub-file.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/grub-file.c' object='util/grub_file-grub-file.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_file_CPPFLAGS) $(CPPFLAGS) $(grub_file_CFLAGS) $(CFLAGS) -c -o util/grub_file-grub-file.obj `if test -f 'util/grub-file.c'; then $(CYGPATH_W) 'util/grub-file.c'; else $(CYGPATH_W) '$(srcdir)/util/grub-file.c'; fi` - -util/grub_file-render-label.o: util/render-label.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_file_CPPFLAGS) $(CPPFLAGS) $(grub_file_CFLAGS) $(CFLAGS) -MT util/grub_file-render-label.o -MD -MP -MF util/$(DEPDIR)/grub_file-render-label.Tpo -c -o util/grub_file-render-label.o `test -f 'util/render-label.c' || echo '$(srcdir)/'`util/render-label.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_file-render-label.Tpo util/$(DEPDIR)/grub_file-render-label.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/render-label.c' object='util/grub_file-render-label.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_file_CPPFLAGS) $(CPPFLAGS) $(grub_file_CFLAGS) $(CFLAGS) -c -o util/grub_file-render-label.o `test -f 'util/render-label.c' || echo '$(srcdir)/'`util/render-label.c - -util/grub_file-render-label.obj: util/render-label.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_file_CPPFLAGS) $(CPPFLAGS) $(grub_file_CFLAGS) $(CFLAGS) -MT util/grub_file-render-label.obj -MD -MP -MF util/$(DEPDIR)/grub_file-render-label.Tpo -c -o util/grub_file-render-label.obj `if test -f 'util/render-label.c'; then $(CYGPATH_W) 'util/render-label.c'; else $(CYGPATH_W) '$(srcdir)/util/render-label.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_file-render-label.Tpo util/$(DEPDIR)/grub_file-render-label.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/render-label.c' object='util/grub_file-render-label.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_file_CPPFLAGS) $(CPPFLAGS) $(grub_file_CFLAGS) $(CFLAGS) -c -o util/grub_file-render-label.obj `if test -f 'util/render-label.c'; then $(CYGPATH_W) 'util/render-label.c'; else $(CYGPATH_W) '$(srcdir)/util/render-label.c'; fi` - -grub-core/commands/grub_file-file.o: grub-core/commands/file.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_file_CPPFLAGS) $(CPPFLAGS) $(grub_file_CFLAGS) $(CFLAGS) -MT grub-core/commands/grub_file-file.o -MD -MP -MF grub-core/commands/$(DEPDIR)/grub_file-file.Tpo -c -o grub-core/commands/grub_file-file.o `test -f 'grub-core/commands/file.c' || echo '$(srcdir)/'`grub-core/commands/file.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/commands/$(DEPDIR)/grub_file-file.Tpo grub-core/commands/$(DEPDIR)/grub_file-file.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/commands/file.c' object='grub-core/commands/grub_file-file.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_file_CPPFLAGS) $(CPPFLAGS) $(grub_file_CFLAGS) $(CFLAGS) -c -o grub-core/commands/grub_file-file.o `test -f 'grub-core/commands/file.c' || echo '$(srcdir)/'`grub-core/commands/file.c - -grub-core/commands/grub_file-file.obj: grub-core/commands/file.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_file_CPPFLAGS) $(CPPFLAGS) $(grub_file_CFLAGS) $(CFLAGS) -MT grub-core/commands/grub_file-file.obj -MD -MP -MF grub-core/commands/$(DEPDIR)/grub_file-file.Tpo -c -o grub-core/commands/grub_file-file.obj `if test -f 'grub-core/commands/file.c'; then $(CYGPATH_W) 'grub-core/commands/file.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/commands/file.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/commands/$(DEPDIR)/grub_file-file.Tpo grub-core/commands/$(DEPDIR)/grub_file-file.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/commands/file.c' object='grub-core/commands/grub_file-file.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_file_CPPFLAGS) $(CPPFLAGS) $(grub_file_CFLAGS) $(CFLAGS) -c -o grub-core/commands/grub_file-file.obj `if test -f 'grub-core/commands/file.c'; then $(CYGPATH_W) 'grub-core/commands/file.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/commands/file.c'; fi` - -grub-core/commands/grub_file-file32.o: grub-core/commands/file32.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_file_CPPFLAGS) $(CPPFLAGS) $(grub_file_CFLAGS) $(CFLAGS) -MT grub-core/commands/grub_file-file32.o -MD -MP -MF grub-core/commands/$(DEPDIR)/grub_file-file32.Tpo -c -o grub-core/commands/grub_file-file32.o `test -f 'grub-core/commands/file32.c' || echo '$(srcdir)/'`grub-core/commands/file32.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/commands/$(DEPDIR)/grub_file-file32.Tpo grub-core/commands/$(DEPDIR)/grub_file-file32.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/commands/file32.c' object='grub-core/commands/grub_file-file32.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_file_CPPFLAGS) $(CPPFLAGS) $(grub_file_CFLAGS) $(CFLAGS) -c -o grub-core/commands/grub_file-file32.o `test -f 'grub-core/commands/file32.c' || echo '$(srcdir)/'`grub-core/commands/file32.c - -grub-core/commands/grub_file-file32.obj: grub-core/commands/file32.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_file_CPPFLAGS) $(CPPFLAGS) $(grub_file_CFLAGS) $(CFLAGS) -MT grub-core/commands/grub_file-file32.obj -MD -MP -MF grub-core/commands/$(DEPDIR)/grub_file-file32.Tpo -c -o grub-core/commands/grub_file-file32.obj `if test -f 'grub-core/commands/file32.c'; then $(CYGPATH_W) 'grub-core/commands/file32.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/commands/file32.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/commands/$(DEPDIR)/grub_file-file32.Tpo grub-core/commands/$(DEPDIR)/grub_file-file32.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/commands/file32.c' object='grub-core/commands/grub_file-file32.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_file_CPPFLAGS) $(CPPFLAGS) $(grub_file_CFLAGS) $(CFLAGS) -c -o grub-core/commands/grub_file-file32.obj `if test -f 'grub-core/commands/file32.c'; then $(CYGPATH_W) 'grub-core/commands/file32.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/commands/file32.c'; fi` - -grub-core/commands/grub_file-file64.o: grub-core/commands/file64.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_file_CPPFLAGS) $(CPPFLAGS) $(grub_file_CFLAGS) $(CFLAGS) -MT grub-core/commands/grub_file-file64.o -MD -MP -MF grub-core/commands/$(DEPDIR)/grub_file-file64.Tpo -c -o grub-core/commands/grub_file-file64.o `test -f 'grub-core/commands/file64.c' || echo '$(srcdir)/'`grub-core/commands/file64.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/commands/$(DEPDIR)/grub_file-file64.Tpo grub-core/commands/$(DEPDIR)/grub_file-file64.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/commands/file64.c' object='grub-core/commands/grub_file-file64.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_file_CPPFLAGS) $(CPPFLAGS) $(grub_file_CFLAGS) $(CFLAGS) -c -o grub-core/commands/grub_file-file64.o `test -f 'grub-core/commands/file64.c' || echo '$(srcdir)/'`grub-core/commands/file64.c - -grub-core/commands/grub_file-file64.obj: grub-core/commands/file64.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_file_CPPFLAGS) $(CPPFLAGS) $(grub_file_CFLAGS) $(CFLAGS) -MT grub-core/commands/grub_file-file64.obj -MD -MP -MF grub-core/commands/$(DEPDIR)/grub_file-file64.Tpo -c -o grub-core/commands/grub_file-file64.obj `if test -f 'grub-core/commands/file64.c'; then $(CYGPATH_W) 'grub-core/commands/file64.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/commands/file64.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/commands/$(DEPDIR)/grub_file-file64.Tpo grub-core/commands/$(DEPDIR)/grub_file-file64.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/commands/file64.c' object='grub-core/commands/grub_file-file64.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_file_CPPFLAGS) $(CPPFLAGS) $(grub_file_CFLAGS) $(CFLAGS) -c -o grub-core/commands/grub_file-file64.obj `if test -f 'grub-core/commands/file64.c'; then $(CYGPATH_W) 'grub-core/commands/file64.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/commands/file64.c'; fi` - -grub-core/loader/i386/grub_file-xen_file.o: grub-core/loader/i386/xen_file.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_file_CPPFLAGS) $(CPPFLAGS) $(grub_file_CFLAGS) $(CFLAGS) -MT grub-core/loader/i386/grub_file-xen_file.o -MD -MP -MF grub-core/loader/i386/$(DEPDIR)/grub_file-xen_file.Tpo -c -o grub-core/loader/i386/grub_file-xen_file.o `test -f 'grub-core/loader/i386/xen_file.c' || echo '$(srcdir)/'`grub-core/loader/i386/xen_file.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/loader/i386/$(DEPDIR)/grub_file-xen_file.Tpo grub-core/loader/i386/$(DEPDIR)/grub_file-xen_file.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/loader/i386/xen_file.c' object='grub-core/loader/i386/grub_file-xen_file.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_file_CPPFLAGS) $(CPPFLAGS) $(grub_file_CFLAGS) $(CFLAGS) -c -o grub-core/loader/i386/grub_file-xen_file.o `test -f 'grub-core/loader/i386/xen_file.c' || echo '$(srcdir)/'`grub-core/loader/i386/xen_file.c - -grub-core/loader/i386/grub_file-xen_file.obj: grub-core/loader/i386/xen_file.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_file_CPPFLAGS) $(CPPFLAGS) $(grub_file_CFLAGS) $(CFLAGS) -MT grub-core/loader/i386/grub_file-xen_file.obj -MD -MP -MF grub-core/loader/i386/$(DEPDIR)/grub_file-xen_file.Tpo -c -o grub-core/loader/i386/grub_file-xen_file.obj `if test -f 'grub-core/loader/i386/xen_file.c'; then $(CYGPATH_W) 'grub-core/loader/i386/xen_file.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/loader/i386/xen_file.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/loader/i386/$(DEPDIR)/grub_file-xen_file.Tpo grub-core/loader/i386/$(DEPDIR)/grub_file-xen_file.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/loader/i386/xen_file.c' object='grub-core/loader/i386/grub_file-xen_file.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_file_CPPFLAGS) $(CPPFLAGS) $(grub_file_CFLAGS) $(CFLAGS) -c -o grub-core/loader/i386/grub_file-xen_file.obj `if test -f 'grub-core/loader/i386/xen_file.c'; then $(CYGPATH_W) 'grub-core/loader/i386/xen_file.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/loader/i386/xen_file.c'; fi` - -grub-core/loader/i386/grub_file-xen_file32.o: grub-core/loader/i386/xen_file32.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_file_CPPFLAGS) $(CPPFLAGS) $(grub_file_CFLAGS) $(CFLAGS) -MT grub-core/loader/i386/grub_file-xen_file32.o -MD -MP -MF grub-core/loader/i386/$(DEPDIR)/grub_file-xen_file32.Tpo -c -o grub-core/loader/i386/grub_file-xen_file32.o `test -f 'grub-core/loader/i386/xen_file32.c' || echo '$(srcdir)/'`grub-core/loader/i386/xen_file32.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/loader/i386/$(DEPDIR)/grub_file-xen_file32.Tpo grub-core/loader/i386/$(DEPDIR)/grub_file-xen_file32.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/loader/i386/xen_file32.c' object='grub-core/loader/i386/grub_file-xen_file32.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_file_CPPFLAGS) $(CPPFLAGS) $(grub_file_CFLAGS) $(CFLAGS) -c -o grub-core/loader/i386/grub_file-xen_file32.o `test -f 'grub-core/loader/i386/xen_file32.c' || echo '$(srcdir)/'`grub-core/loader/i386/xen_file32.c - -grub-core/loader/i386/grub_file-xen_file32.obj: grub-core/loader/i386/xen_file32.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_file_CPPFLAGS) $(CPPFLAGS) $(grub_file_CFLAGS) $(CFLAGS) -MT grub-core/loader/i386/grub_file-xen_file32.obj -MD -MP -MF grub-core/loader/i386/$(DEPDIR)/grub_file-xen_file32.Tpo -c -o grub-core/loader/i386/grub_file-xen_file32.obj `if test -f 'grub-core/loader/i386/xen_file32.c'; then $(CYGPATH_W) 'grub-core/loader/i386/xen_file32.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/loader/i386/xen_file32.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/loader/i386/$(DEPDIR)/grub_file-xen_file32.Tpo grub-core/loader/i386/$(DEPDIR)/grub_file-xen_file32.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/loader/i386/xen_file32.c' object='grub-core/loader/i386/grub_file-xen_file32.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_file_CPPFLAGS) $(CPPFLAGS) $(grub_file_CFLAGS) $(CFLAGS) -c -o grub-core/loader/i386/grub_file-xen_file32.obj `if test -f 'grub-core/loader/i386/xen_file32.c'; then $(CYGPATH_W) 'grub-core/loader/i386/xen_file32.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/loader/i386/xen_file32.c'; fi` - -grub-core/loader/i386/grub_file-xen_file64.o: grub-core/loader/i386/xen_file64.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_file_CPPFLAGS) $(CPPFLAGS) $(grub_file_CFLAGS) $(CFLAGS) -MT grub-core/loader/i386/grub_file-xen_file64.o -MD -MP -MF grub-core/loader/i386/$(DEPDIR)/grub_file-xen_file64.Tpo -c -o grub-core/loader/i386/grub_file-xen_file64.o `test -f 'grub-core/loader/i386/xen_file64.c' || echo '$(srcdir)/'`grub-core/loader/i386/xen_file64.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/loader/i386/$(DEPDIR)/grub_file-xen_file64.Tpo grub-core/loader/i386/$(DEPDIR)/grub_file-xen_file64.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/loader/i386/xen_file64.c' object='grub-core/loader/i386/grub_file-xen_file64.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_file_CPPFLAGS) $(CPPFLAGS) $(grub_file_CFLAGS) $(CFLAGS) -c -o grub-core/loader/i386/grub_file-xen_file64.o `test -f 'grub-core/loader/i386/xen_file64.c' || echo '$(srcdir)/'`grub-core/loader/i386/xen_file64.c - -grub-core/loader/i386/grub_file-xen_file64.obj: grub-core/loader/i386/xen_file64.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_file_CPPFLAGS) $(CPPFLAGS) $(grub_file_CFLAGS) $(CFLAGS) -MT grub-core/loader/i386/grub_file-xen_file64.obj -MD -MP -MF grub-core/loader/i386/$(DEPDIR)/grub_file-xen_file64.Tpo -c -o grub-core/loader/i386/grub_file-xen_file64.obj `if test -f 'grub-core/loader/i386/xen_file64.c'; then $(CYGPATH_W) 'grub-core/loader/i386/xen_file64.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/loader/i386/xen_file64.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/loader/i386/$(DEPDIR)/grub_file-xen_file64.Tpo grub-core/loader/i386/$(DEPDIR)/grub_file-xen_file64.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/loader/i386/xen_file64.c' object='grub-core/loader/i386/grub_file-xen_file64.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_file_CPPFLAGS) $(CPPFLAGS) $(grub_file_CFLAGS) $(CFLAGS) -c -o grub-core/loader/i386/grub_file-xen_file64.obj `if test -f 'grub-core/loader/i386/xen_file64.c'; then $(CYGPATH_W) 'grub-core/loader/i386/xen_file64.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/loader/i386/xen_file64.c'; fi` - -grub-core/io/grub_file-offset.o: grub-core/io/offset.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_file_CPPFLAGS) $(CPPFLAGS) $(grub_file_CFLAGS) $(CFLAGS) -MT grub-core/io/grub_file-offset.o -MD -MP -MF grub-core/io/$(DEPDIR)/grub_file-offset.Tpo -c -o grub-core/io/grub_file-offset.o `test -f 'grub-core/io/offset.c' || echo '$(srcdir)/'`grub-core/io/offset.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/io/$(DEPDIR)/grub_file-offset.Tpo grub-core/io/$(DEPDIR)/grub_file-offset.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/io/offset.c' object='grub-core/io/grub_file-offset.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_file_CPPFLAGS) $(CPPFLAGS) $(grub_file_CFLAGS) $(CFLAGS) -c -o grub-core/io/grub_file-offset.o `test -f 'grub-core/io/offset.c' || echo '$(srcdir)/'`grub-core/io/offset.c - -grub-core/io/grub_file-offset.obj: grub-core/io/offset.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_file_CPPFLAGS) $(CPPFLAGS) $(grub_file_CFLAGS) $(CFLAGS) -MT grub-core/io/grub_file-offset.obj -MD -MP -MF grub-core/io/$(DEPDIR)/grub_file-offset.Tpo -c -o grub-core/io/grub_file-offset.obj `if test -f 'grub-core/io/offset.c'; then $(CYGPATH_W) 'grub-core/io/offset.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/io/offset.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/io/$(DEPDIR)/grub_file-offset.Tpo grub-core/io/$(DEPDIR)/grub_file-offset.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/io/offset.c' object='grub-core/io/grub_file-offset.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_file_CPPFLAGS) $(CPPFLAGS) $(grub_file_CFLAGS) $(CFLAGS) -c -o grub-core/io/grub_file-offset.obj `if test -f 'grub-core/io/offset.c'; then $(CYGPATH_W) 'grub-core/io/offset.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/io/offset.c'; fi` - -grub-core/kern/grub_file-elf.o: grub-core/kern/elf.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_file_CPPFLAGS) $(CPPFLAGS) $(grub_file_CFLAGS) $(CFLAGS) -MT grub-core/kern/grub_file-elf.o -MD -MP -MF grub-core/kern/$(DEPDIR)/grub_file-elf.Tpo -c -o grub-core/kern/grub_file-elf.o `test -f 'grub-core/kern/elf.c' || echo '$(srcdir)/'`grub-core/kern/elf.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/kern/$(DEPDIR)/grub_file-elf.Tpo grub-core/kern/$(DEPDIR)/grub_file-elf.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/kern/elf.c' object='grub-core/kern/grub_file-elf.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_file_CPPFLAGS) $(CPPFLAGS) $(grub_file_CFLAGS) $(CFLAGS) -c -o grub-core/kern/grub_file-elf.o `test -f 'grub-core/kern/elf.c' || echo '$(srcdir)/'`grub-core/kern/elf.c - -grub-core/kern/grub_file-elf.obj: grub-core/kern/elf.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_file_CPPFLAGS) $(CPPFLAGS) $(grub_file_CFLAGS) $(CFLAGS) -MT grub-core/kern/grub_file-elf.obj -MD -MP -MF grub-core/kern/$(DEPDIR)/grub_file-elf.Tpo -c -o grub-core/kern/grub_file-elf.obj `if test -f 'grub-core/kern/elf.c'; then $(CYGPATH_W) 'grub-core/kern/elf.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/kern/elf.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/kern/$(DEPDIR)/grub_file-elf.Tpo grub-core/kern/$(DEPDIR)/grub_file-elf.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/kern/elf.c' object='grub-core/kern/grub_file-elf.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_file_CPPFLAGS) $(CPPFLAGS) $(grub_file_CFLAGS) $(CFLAGS) -c -o grub-core/kern/grub_file-elf.obj `if test -f 'grub-core/kern/elf.c'; then $(CYGPATH_W) 'grub-core/kern/elf.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/kern/elf.c'; fi` - -grub-core/loader/grub_file-lzss.o: grub-core/loader/lzss.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_file_CPPFLAGS) $(CPPFLAGS) $(grub_file_CFLAGS) $(CFLAGS) -MT grub-core/loader/grub_file-lzss.o -MD -MP -MF grub-core/loader/$(DEPDIR)/grub_file-lzss.Tpo -c -o grub-core/loader/grub_file-lzss.o `test -f 'grub-core/loader/lzss.c' || echo '$(srcdir)/'`grub-core/loader/lzss.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/loader/$(DEPDIR)/grub_file-lzss.Tpo grub-core/loader/$(DEPDIR)/grub_file-lzss.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/loader/lzss.c' object='grub-core/loader/grub_file-lzss.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_file_CPPFLAGS) $(CPPFLAGS) $(grub_file_CFLAGS) $(CFLAGS) -c -o grub-core/loader/grub_file-lzss.o `test -f 'grub-core/loader/lzss.c' || echo '$(srcdir)/'`grub-core/loader/lzss.c - -grub-core/loader/grub_file-lzss.obj: grub-core/loader/lzss.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_file_CPPFLAGS) $(CPPFLAGS) $(grub_file_CFLAGS) $(CFLAGS) -MT grub-core/loader/grub_file-lzss.obj -MD -MP -MF grub-core/loader/$(DEPDIR)/grub_file-lzss.Tpo -c -o grub-core/loader/grub_file-lzss.obj `if test -f 'grub-core/loader/lzss.c'; then $(CYGPATH_W) 'grub-core/loader/lzss.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/loader/lzss.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/loader/$(DEPDIR)/grub_file-lzss.Tpo grub-core/loader/$(DEPDIR)/grub_file-lzss.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/loader/lzss.c' object='grub-core/loader/grub_file-lzss.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_file_CPPFLAGS) $(CPPFLAGS) $(grub_file_CFLAGS) $(CFLAGS) -c -o grub-core/loader/grub_file-lzss.obj `if test -f 'grub-core/loader/lzss.c'; then $(CYGPATH_W) 'grub-core/loader/lzss.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/loader/lzss.c'; fi` - -grub-core/loader/grub_file-macho.o: grub-core/loader/macho.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_file_CPPFLAGS) $(CPPFLAGS) $(grub_file_CFLAGS) $(CFLAGS) -MT grub-core/loader/grub_file-macho.o -MD -MP -MF grub-core/loader/$(DEPDIR)/grub_file-macho.Tpo -c -o grub-core/loader/grub_file-macho.o `test -f 'grub-core/loader/macho.c' || echo '$(srcdir)/'`grub-core/loader/macho.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/loader/$(DEPDIR)/grub_file-macho.Tpo grub-core/loader/$(DEPDIR)/grub_file-macho.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/loader/macho.c' object='grub-core/loader/grub_file-macho.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_file_CPPFLAGS) $(CPPFLAGS) $(grub_file_CFLAGS) $(CFLAGS) -c -o grub-core/loader/grub_file-macho.o `test -f 'grub-core/loader/macho.c' || echo '$(srcdir)/'`grub-core/loader/macho.c - -grub-core/loader/grub_file-macho.obj: grub-core/loader/macho.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_file_CPPFLAGS) $(CPPFLAGS) $(grub_file_CFLAGS) $(CFLAGS) -MT grub-core/loader/grub_file-macho.obj -MD -MP -MF grub-core/loader/$(DEPDIR)/grub_file-macho.Tpo -c -o grub-core/loader/grub_file-macho.obj `if test -f 'grub-core/loader/macho.c'; then $(CYGPATH_W) 'grub-core/loader/macho.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/loader/macho.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/loader/$(DEPDIR)/grub_file-macho.Tpo grub-core/loader/$(DEPDIR)/grub_file-macho.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/loader/macho.c' object='grub-core/loader/grub_file-macho.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_file_CPPFLAGS) $(CPPFLAGS) $(grub_file_CFLAGS) $(CFLAGS) -c -o grub-core/loader/grub_file-macho.obj `if test -f 'grub-core/loader/macho.c'; then $(CYGPATH_W) 'grub-core/loader/macho.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/loader/macho.c'; fi` - -grub-core/loader/grub_file-macho32.o: grub-core/loader/macho32.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_file_CPPFLAGS) $(CPPFLAGS) $(grub_file_CFLAGS) $(CFLAGS) -MT grub-core/loader/grub_file-macho32.o -MD -MP -MF grub-core/loader/$(DEPDIR)/grub_file-macho32.Tpo -c -o grub-core/loader/grub_file-macho32.o `test -f 'grub-core/loader/macho32.c' || echo '$(srcdir)/'`grub-core/loader/macho32.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/loader/$(DEPDIR)/grub_file-macho32.Tpo grub-core/loader/$(DEPDIR)/grub_file-macho32.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/loader/macho32.c' object='grub-core/loader/grub_file-macho32.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_file_CPPFLAGS) $(CPPFLAGS) $(grub_file_CFLAGS) $(CFLAGS) -c -o grub-core/loader/grub_file-macho32.o `test -f 'grub-core/loader/macho32.c' || echo '$(srcdir)/'`grub-core/loader/macho32.c - -grub-core/loader/grub_file-macho32.obj: grub-core/loader/macho32.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_file_CPPFLAGS) $(CPPFLAGS) $(grub_file_CFLAGS) $(CFLAGS) -MT grub-core/loader/grub_file-macho32.obj -MD -MP -MF grub-core/loader/$(DEPDIR)/grub_file-macho32.Tpo -c -o grub-core/loader/grub_file-macho32.obj `if test -f 'grub-core/loader/macho32.c'; then $(CYGPATH_W) 'grub-core/loader/macho32.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/loader/macho32.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/loader/$(DEPDIR)/grub_file-macho32.Tpo grub-core/loader/$(DEPDIR)/grub_file-macho32.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/loader/macho32.c' object='grub-core/loader/grub_file-macho32.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_file_CPPFLAGS) $(CPPFLAGS) $(grub_file_CFLAGS) $(CFLAGS) -c -o grub-core/loader/grub_file-macho32.obj `if test -f 'grub-core/loader/macho32.c'; then $(CYGPATH_W) 'grub-core/loader/macho32.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/loader/macho32.c'; fi` - -grub-core/loader/grub_file-macho64.o: grub-core/loader/macho64.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_file_CPPFLAGS) $(CPPFLAGS) $(grub_file_CFLAGS) $(CFLAGS) -MT grub-core/loader/grub_file-macho64.o -MD -MP -MF grub-core/loader/$(DEPDIR)/grub_file-macho64.Tpo -c -o grub-core/loader/grub_file-macho64.o `test -f 'grub-core/loader/macho64.c' || echo '$(srcdir)/'`grub-core/loader/macho64.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/loader/$(DEPDIR)/grub_file-macho64.Tpo grub-core/loader/$(DEPDIR)/grub_file-macho64.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/loader/macho64.c' object='grub-core/loader/grub_file-macho64.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_file_CPPFLAGS) $(CPPFLAGS) $(grub_file_CFLAGS) $(CFLAGS) -c -o grub-core/loader/grub_file-macho64.o `test -f 'grub-core/loader/macho64.c' || echo '$(srcdir)/'`grub-core/loader/macho64.c - -grub-core/loader/grub_file-macho64.obj: grub-core/loader/macho64.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_file_CPPFLAGS) $(CPPFLAGS) $(grub_file_CFLAGS) $(CFLAGS) -MT grub-core/loader/grub_file-macho64.obj -MD -MP -MF grub-core/loader/$(DEPDIR)/grub_file-macho64.Tpo -c -o grub-core/loader/grub_file-macho64.obj `if test -f 'grub-core/loader/macho64.c'; then $(CYGPATH_W) 'grub-core/loader/macho64.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/loader/macho64.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/loader/$(DEPDIR)/grub_file-macho64.Tpo grub-core/loader/$(DEPDIR)/grub_file-macho64.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/loader/macho64.c' object='grub-core/loader/grub_file-macho64.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_file_CPPFLAGS) $(CPPFLAGS) $(grub_file_CFLAGS) $(CFLAGS) -c -o grub-core/loader/grub_file-macho64.obj `if test -f 'grub-core/loader/macho64.c'; then $(CYGPATH_W) 'grub-core/loader/macho64.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/loader/macho64.c'; fi` - -grub-core/kern/emu/grub_file-hostfs.o: grub-core/kern/emu/hostfs.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_file_CPPFLAGS) $(CPPFLAGS) $(grub_file_CFLAGS) $(CFLAGS) -MT grub-core/kern/emu/grub_file-hostfs.o -MD -MP -MF grub-core/kern/emu/$(DEPDIR)/grub_file-hostfs.Tpo -c -o grub-core/kern/emu/grub_file-hostfs.o `test -f 'grub-core/kern/emu/hostfs.c' || echo '$(srcdir)/'`grub-core/kern/emu/hostfs.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/kern/emu/$(DEPDIR)/grub_file-hostfs.Tpo grub-core/kern/emu/$(DEPDIR)/grub_file-hostfs.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/kern/emu/hostfs.c' object='grub-core/kern/emu/grub_file-hostfs.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_file_CPPFLAGS) $(CPPFLAGS) $(grub_file_CFLAGS) $(CFLAGS) -c -o grub-core/kern/emu/grub_file-hostfs.o `test -f 'grub-core/kern/emu/hostfs.c' || echo '$(srcdir)/'`grub-core/kern/emu/hostfs.c - -grub-core/kern/emu/grub_file-hostfs.obj: grub-core/kern/emu/hostfs.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_file_CPPFLAGS) $(CPPFLAGS) $(grub_file_CFLAGS) $(CFLAGS) -MT grub-core/kern/emu/grub_file-hostfs.obj -MD -MP -MF grub-core/kern/emu/$(DEPDIR)/grub_file-hostfs.Tpo -c -o grub-core/kern/emu/grub_file-hostfs.obj `if test -f 'grub-core/kern/emu/hostfs.c'; then $(CYGPATH_W) 'grub-core/kern/emu/hostfs.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/kern/emu/hostfs.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/kern/emu/$(DEPDIR)/grub_file-hostfs.Tpo grub-core/kern/emu/$(DEPDIR)/grub_file-hostfs.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/kern/emu/hostfs.c' object='grub-core/kern/emu/grub_file-hostfs.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_file_CPPFLAGS) $(CPPFLAGS) $(grub_file_CFLAGS) $(CFLAGS) -c -o grub-core/kern/emu/grub_file-hostfs.obj `if test -f 'grub-core/kern/emu/hostfs.c'; then $(CYGPATH_W) 'grub-core/kern/emu/hostfs.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/kern/emu/hostfs.c'; fi` - -grub-core/disk/grub_file-host.o: grub-core/disk/host.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_file_CPPFLAGS) $(CPPFLAGS) $(grub_file_CFLAGS) $(CFLAGS) -MT grub-core/disk/grub_file-host.o -MD -MP -MF grub-core/disk/$(DEPDIR)/grub_file-host.Tpo -c -o grub-core/disk/grub_file-host.o `test -f 'grub-core/disk/host.c' || echo '$(srcdir)/'`grub-core/disk/host.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/disk/$(DEPDIR)/grub_file-host.Tpo grub-core/disk/$(DEPDIR)/grub_file-host.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/disk/host.c' object='grub-core/disk/grub_file-host.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_file_CPPFLAGS) $(CPPFLAGS) $(grub_file_CFLAGS) $(CFLAGS) -c -o grub-core/disk/grub_file-host.o `test -f 'grub-core/disk/host.c' || echo '$(srcdir)/'`grub-core/disk/host.c - -grub-core/disk/grub_file-host.obj: grub-core/disk/host.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_file_CPPFLAGS) $(CPPFLAGS) $(grub_file_CFLAGS) $(CFLAGS) -MT grub-core/disk/grub_file-host.obj -MD -MP -MF grub-core/disk/$(DEPDIR)/grub_file-host.Tpo -c -o grub-core/disk/grub_file-host.obj `if test -f 'grub-core/disk/host.c'; then $(CYGPATH_W) 'grub-core/disk/host.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/disk/host.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/disk/$(DEPDIR)/grub_file-host.Tpo grub-core/disk/$(DEPDIR)/grub_file-host.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/disk/host.c' object='grub-core/disk/grub_file-host.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_file_CPPFLAGS) $(CPPFLAGS) $(grub_file_CFLAGS) $(CFLAGS) -c -o grub-core/disk/grub_file-host.obj `if test -f 'grub-core/disk/host.c'; then $(CYGPATH_W) 'grub-core/disk/host.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/disk/host.c'; fi` - -grub-core/osdep/grub_file-init.o: grub-core/osdep/init.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_file_CPPFLAGS) $(CPPFLAGS) $(grub_file_CFLAGS) $(CFLAGS) -MT grub-core/osdep/grub_file-init.o -MD -MP -MF grub-core/osdep/$(DEPDIR)/grub_file-init.Tpo -c -o grub-core/osdep/grub_file-init.o `test -f 'grub-core/osdep/init.c' || echo '$(srcdir)/'`grub-core/osdep/init.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/osdep/$(DEPDIR)/grub_file-init.Tpo grub-core/osdep/$(DEPDIR)/grub_file-init.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/osdep/init.c' object='grub-core/osdep/grub_file-init.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_file_CPPFLAGS) $(CPPFLAGS) $(grub_file_CFLAGS) $(CFLAGS) -c -o grub-core/osdep/grub_file-init.o `test -f 'grub-core/osdep/init.c' || echo '$(srcdir)/'`grub-core/osdep/init.c - -grub-core/osdep/grub_file-init.obj: grub-core/osdep/init.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_file_CPPFLAGS) $(CPPFLAGS) $(grub_file_CFLAGS) $(CFLAGS) -MT grub-core/osdep/grub_file-init.obj -MD -MP -MF grub-core/osdep/$(DEPDIR)/grub_file-init.Tpo -c -o grub-core/osdep/grub_file-init.obj `if test -f 'grub-core/osdep/init.c'; then $(CYGPATH_W) 'grub-core/osdep/init.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/osdep/init.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/osdep/$(DEPDIR)/grub_file-init.Tpo grub-core/osdep/$(DEPDIR)/grub_file-init.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/osdep/init.c' object='grub-core/osdep/grub_file-init.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_file_CPPFLAGS) $(CPPFLAGS) $(grub_file_CFLAGS) $(CFLAGS) -c -o grub-core/osdep/grub_file-init.obj `if test -f 'grub-core/osdep/init.c'; then $(CYGPATH_W) 'grub-core/osdep/init.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/osdep/init.c'; fi` - -util/grub_fstest-grub-fstest.o: util/grub-fstest.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_fstest_CPPFLAGS) $(CPPFLAGS) $(grub_fstest_CFLAGS) $(CFLAGS) -MT util/grub_fstest-grub-fstest.o -MD -MP -MF util/$(DEPDIR)/grub_fstest-grub-fstest.Tpo -c -o util/grub_fstest-grub-fstest.o `test -f 'util/grub-fstest.c' || echo '$(srcdir)/'`util/grub-fstest.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_fstest-grub-fstest.Tpo util/$(DEPDIR)/grub_fstest-grub-fstest.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/grub-fstest.c' object='util/grub_fstest-grub-fstest.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_fstest_CPPFLAGS) $(CPPFLAGS) $(grub_fstest_CFLAGS) $(CFLAGS) -c -o util/grub_fstest-grub-fstest.o `test -f 'util/grub-fstest.c' || echo '$(srcdir)/'`util/grub-fstest.c - -util/grub_fstest-grub-fstest.obj: util/grub-fstest.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_fstest_CPPFLAGS) $(CPPFLAGS) $(grub_fstest_CFLAGS) $(CFLAGS) -MT util/grub_fstest-grub-fstest.obj -MD -MP -MF util/$(DEPDIR)/grub_fstest-grub-fstest.Tpo -c -o util/grub_fstest-grub-fstest.obj `if test -f 'util/grub-fstest.c'; then $(CYGPATH_W) 'util/grub-fstest.c'; else $(CYGPATH_W) '$(srcdir)/util/grub-fstest.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_fstest-grub-fstest.Tpo util/$(DEPDIR)/grub_fstest-grub-fstest.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/grub-fstest.c' object='util/grub_fstest-grub-fstest.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_fstest_CPPFLAGS) $(CPPFLAGS) $(grub_fstest_CFLAGS) $(CFLAGS) -c -o util/grub_fstest-grub-fstest.obj `if test -f 'util/grub-fstest.c'; then $(CYGPATH_W) 'util/grub-fstest.c'; else $(CYGPATH_W) '$(srcdir)/util/grub-fstest.c'; fi` - -grub-core/kern/emu/grub_fstest-hostfs.o: grub-core/kern/emu/hostfs.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_fstest_CPPFLAGS) $(CPPFLAGS) $(grub_fstest_CFLAGS) $(CFLAGS) -MT grub-core/kern/emu/grub_fstest-hostfs.o -MD -MP -MF grub-core/kern/emu/$(DEPDIR)/grub_fstest-hostfs.Tpo -c -o grub-core/kern/emu/grub_fstest-hostfs.o `test -f 'grub-core/kern/emu/hostfs.c' || echo '$(srcdir)/'`grub-core/kern/emu/hostfs.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/kern/emu/$(DEPDIR)/grub_fstest-hostfs.Tpo grub-core/kern/emu/$(DEPDIR)/grub_fstest-hostfs.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/kern/emu/hostfs.c' object='grub-core/kern/emu/grub_fstest-hostfs.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_fstest_CPPFLAGS) $(CPPFLAGS) $(grub_fstest_CFLAGS) $(CFLAGS) -c -o grub-core/kern/emu/grub_fstest-hostfs.o `test -f 'grub-core/kern/emu/hostfs.c' || echo '$(srcdir)/'`grub-core/kern/emu/hostfs.c - -grub-core/kern/emu/grub_fstest-hostfs.obj: grub-core/kern/emu/hostfs.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_fstest_CPPFLAGS) $(CPPFLAGS) $(grub_fstest_CFLAGS) $(CFLAGS) -MT grub-core/kern/emu/grub_fstest-hostfs.obj -MD -MP -MF grub-core/kern/emu/$(DEPDIR)/grub_fstest-hostfs.Tpo -c -o grub-core/kern/emu/grub_fstest-hostfs.obj `if test -f 'grub-core/kern/emu/hostfs.c'; then $(CYGPATH_W) 'grub-core/kern/emu/hostfs.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/kern/emu/hostfs.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/kern/emu/$(DEPDIR)/grub_fstest-hostfs.Tpo grub-core/kern/emu/$(DEPDIR)/grub_fstest-hostfs.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/kern/emu/hostfs.c' object='grub-core/kern/emu/grub_fstest-hostfs.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_fstest_CPPFLAGS) $(CPPFLAGS) $(grub_fstest_CFLAGS) $(CFLAGS) -c -o grub-core/kern/emu/grub_fstest-hostfs.obj `if test -f 'grub-core/kern/emu/hostfs.c'; then $(CYGPATH_W) 'grub-core/kern/emu/hostfs.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/kern/emu/hostfs.c'; fi` - -grub-core/disk/grub_fstest-host.o: grub-core/disk/host.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_fstest_CPPFLAGS) $(CPPFLAGS) $(grub_fstest_CFLAGS) $(CFLAGS) -MT grub-core/disk/grub_fstest-host.o -MD -MP -MF grub-core/disk/$(DEPDIR)/grub_fstest-host.Tpo -c -o grub-core/disk/grub_fstest-host.o `test -f 'grub-core/disk/host.c' || echo '$(srcdir)/'`grub-core/disk/host.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/disk/$(DEPDIR)/grub_fstest-host.Tpo grub-core/disk/$(DEPDIR)/grub_fstest-host.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/disk/host.c' object='grub-core/disk/grub_fstest-host.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_fstest_CPPFLAGS) $(CPPFLAGS) $(grub_fstest_CFLAGS) $(CFLAGS) -c -o grub-core/disk/grub_fstest-host.o `test -f 'grub-core/disk/host.c' || echo '$(srcdir)/'`grub-core/disk/host.c - -grub-core/disk/grub_fstest-host.obj: grub-core/disk/host.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_fstest_CPPFLAGS) $(CPPFLAGS) $(grub_fstest_CFLAGS) $(CFLAGS) -MT grub-core/disk/grub_fstest-host.obj -MD -MP -MF grub-core/disk/$(DEPDIR)/grub_fstest-host.Tpo -c -o grub-core/disk/grub_fstest-host.obj `if test -f 'grub-core/disk/host.c'; then $(CYGPATH_W) 'grub-core/disk/host.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/disk/host.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/disk/$(DEPDIR)/grub_fstest-host.Tpo grub-core/disk/$(DEPDIR)/grub_fstest-host.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/disk/host.c' object='grub-core/disk/grub_fstest-host.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_fstest_CPPFLAGS) $(CPPFLAGS) $(grub_fstest_CFLAGS) $(CFLAGS) -c -o grub-core/disk/grub_fstest-host.obj `if test -f 'grub-core/disk/host.c'; then $(CYGPATH_W) 'grub-core/disk/host.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/disk/host.c'; fi` - -grub-core/osdep/grub_fstest-init.o: grub-core/osdep/init.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_fstest_CPPFLAGS) $(CPPFLAGS) $(grub_fstest_CFLAGS) $(CFLAGS) -MT grub-core/osdep/grub_fstest-init.o -MD -MP -MF grub-core/osdep/$(DEPDIR)/grub_fstest-init.Tpo -c -o grub-core/osdep/grub_fstest-init.o `test -f 'grub-core/osdep/init.c' || echo '$(srcdir)/'`grub-core/osdep/init.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/osdep/$(DEPDIR)/grub_fstest-init.Tpo grub-core/osdep/$(DEPDIR)/grub_fstest-init.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/osdep/init.c' object='grub-core/osdep/grub_fstest-init.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_fstest_CPPFLAGS) $(CPPFLAGS) $(grub_fstest_CFLAGS) $(CFLAGS) -c -o grub-core/osdep/grub_fstest-init.o `test -f 'grub-core/osdep/init.c' || echo '$(srcdir)/'`grub-core/osdep/init.c - -grub-core/osdep/grub_fstest-init.obj: grub-core/osdep/init.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_fstest_CPPFLAGS) $(CPPFLAGS) $(grub_fstest_CFLAGS) $(CFLAGS) -MT grub-core/osdep/grub_fstest-init.obj -MD -MP -MF grub-core/osdep/$(DEPDIR)/grub_fstest-init.Tpo -c -o grub-core/osdep/grub_fstest-init.obj `if test -f 'grub-core/osdep/init.c'; then $(CYGPATH_W) 'grub-core/osdep/init.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/osdep/init.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/osdep/$(DEPDIR)/grub_fstest-init.Tpo grub-core/osdep/$(DEPDIR)/grub_fstest-init.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/osdep/init.c' object='grub-core/osdep/grub_fstest-init.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_fstest_CPPFLAGS) $(CPPFLAGS) $(grub_fstest_CFLAGS) $(CFLAGS) -c -o grub-core/osdep/grub_fstest-init.obj `if test -f 'grub-core/osdep/init.c'; then $(CYGPATH_W) 'grub-core/osdep/init.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/osdep/init.c'; fi` - -grub_fstest-grub_fstest_init.o: grub_fstest_init.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_fstest_CPPFLAGS) $(CPPFLAGS) $(grub_fstest_CFLAGS) $(CFLAGS) -MT grub_fstest-grub_fstest_init.o -MD -MP -MF $(DEPDIR)/grub_fstest-grub_fstest_init.Tpo -c -o grub_fstest-grub_fstest_init.o `test -f 'grub_fstest_init.c' || echo '$(srcdir)/'`grub_fstest_init.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/grub_fstest-grub_fstest_init.Tpo $(DEPDIR)/grub_fstest-grub_fstest_init.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub_fstest_init.c' object='grub_fstest-grub_fstest_init.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_fstest_CPPFLAGS) $(CPPFLAGS) $(grub_fstest_CFLAGS) $(CFLAGS) -c -o grub_fstest-grub_fstest_init.o `test -f 'grub_fstest_init.c' || echo '$(srcdir)/'`grub_fstest_init.c - -grub_fstest-grub_fstest_init.obj: grub_fstest_init.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_fstest_CPPFLAGS) $(CPPFLAGS) $(grub_fstest_CFLAGS) $(CFLAGS) -MT grub_fstest-grub_fstest_init.obj -MD -MP -MF $(DEPDIR)/grub_fstest-grub_fstest_init.Tpo -c -o grub_fstest-grub_fstest_init.obj `if test -f 'grub_fstest_init.c'; then $(CYGPATH_W) 'grub_fstest_init.c'; else $(CYGPATH_W) '$(srcdir)/grub_fstest_init.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/grub_fstest-grub_fstest_init.Tpo $(DEPDIR)/grub_fstest-grub_fstest_init.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub_fstest_init.c' object='grub_fstest-grub_fstest_init.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_fstest_CPPFLAGS) $(CPPFLAGS) $(grub_fstest_CFLAGS) $(CFLAGS) -c -o grub_fstest-grub_fstest_init.obj `if test -f 'grub_fstest_init.c'; then $(CYGPATH_W) 'grub_fstest_init.c'; else $(CYGPATH_W) '$(srcdir)/grub_fstest_init.c'; fi` - -util/grub_glue_efi-grub-glue-efi.o: util/grub-glue-efi.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_glue_efi_CPPFLAGS) $(CPPFLAGS) $(grub_glue_efi_CFLAGS) $(CFLAGS) -MT util/grub_glue_efi-grub-glue-efi.o -MD -MP -MF util/$(DEPDIR)/grub_glue_efi-grub-glue-efi.Tpo -c -o util/grub_glue_efi-grub-glue-efi.o `test -f 'util/grub-glue-efi.c' || echo '$(srcdir)/'`util/grub-glue-efi.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_glue_efi-grub-glue-efi.Tpo util/$(DEPDIR)/grub_glue_efi-grub-glue-efi.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/grub-glue-efi.c' object='util/grub_glue_efi-grub-glue-efi.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_glue_efi_CPPFLAGS) $(CPPFLAGS) $(grub_glue_efi_CFLAGS) $(CFLAGS) -c -o util/grub_glue_efi-grub-glue-efi.o `test -f 'util/grub-glue-efi.c' || echo '$(srcdir)/'`util/grub-glue-efi.c - -util/grub_glue_efi-grub-glue-efi.obj: util/grub-glue-efi.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_glue_efi_CPPFLAGS) $(CPPFLAGS) $(grub_glue_efi_CFLAGS) $(CFLAGS) -MT util/grub_glue_efi-grub-glue-efi.obj -MD -MP -MF util/$(DEPDIR)/grub_glue_efi-grub-glue-efi.Tpo -c -o util/grub_glue_efi-grub-glue-efi.obj `if test -f 'util/grub-glue-efi.c'; then $(CYGPATH_W) 'util/grub-glue-efi.c'; else $(CYGPATH_W) '$(srcdir)/util/grub-glue-efi.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_glue_efi-grub-glue-efi.Tpo util/$(DEPDIR)/grub_glue_efi-grub-glue-efi.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/grub-glue-efi.c' object='util/grub_glue_efi-grub-glue-efi.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_glue_efi_CPPFLAGS) $(CPPFLAGS) $(grub_glue_efi_CFLAGS) $(CFLAGS) -c -o util/grub_glue_efi-grub-glue-efi.obj `if test -f 'util/grub-glue-efi.c'; then $(CYGPATH_W) 'util/grub-glue-efi.c'; else $(CYGPATH_W) '$(srcdir)/util/grub-glue-efi.c'; fi` - -util/grub_glue_efi-glue-efi.o: util/glue-efi.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_glue_efi_CPPFLAGS) $(CPPFLAGS) $(grub_glue_efi_CFLAGS) $(CFLAGS) -MT util/grub_glue_efi-glue-efi.o -MD -MP -MF util/$(DEPDIR)/grub_glue_efi-glue-efi.Tpo -c -o util/grub_glue_efi-glue-efi.o `test -f 'util/glue-efi.c' || echo '$(srcdir)/'`util/glue-efi.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_glue_efi-glue-efi.Tpo util/$(DEPDIR)/grub_glue_efi-glue-efi.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/glue-efi.c' object='util/grub_glue_efi-glue-efi.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_glue_efi_CPPFLAGS) $(CPPFLAGS) $(grub_glue_efi_CFLAGS) $(CFLAGS) -c -o util/grub_glue_efi-glue-efi.o `test -f 'util/glue-efi.c' || echo '$(srcdir)/'`util/glue-efi.c - -util/grub_glue_efi-glue-efi.obj: util/glue-efi.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_glue_efi_CPPFLAGS) $(CPPFLAGS) $(grub_glue_efi_CFLAGS) $(CFLAGS) -MT util/grub_glue_efi-glue-efi.obj -MD -MP -MF util/$(DEPDIR)/grub_glue_efi-glue-efi.Tpo -c -o util/grub_glue_efi-glue-efi.obj `if test -f 'util/glue-efi.c'; then $(CYGPATH_W) 'util/glue-efi.c'; else $(CYGPATH_W) '$(srcdir)/util/glue-efi.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_glue_efi-glue-efi.Tpo util/$(DEPDIR)/grub_glue_efi-glue-efi.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/glue-efi.c' object='util/grub_glue_efi-glue-efi.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_glue_efi_CPPFLAGS) $(CPPFLAGS) $(grub_glue_efi_CFLAGS) $(CFLAGS) -c -o util/grub_glue_efi-glue-efi.obj `if test -f 'util/glue-efi.c'; then $(CYGPATH_W) 'util/glue-efi.c'; else $(CYGPATH_W) '$(srcdir)/util/glue-efi.c'; fi` - -grub-core/kern/emu/grub_glue_efi-argp_common.o: grub-core/kern/emu/argp_common.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_glue_efi_CPPFLAGS) $(CPPFLAGS) $(grub_glue_efi_CFLAGS) $(CFLAGS) -MT grub-core/kern/emu/grub_glue_efi-argp_common.o -MD -MP -MF grub-core/kern/emu/$(DEPDIR)/grub_glue_efi-argp_common.Tpo -c -o grub-core/kern/emu/grub_glue_efi-argp_common.o `test -f 'grub-core/kern/emu/argp_common.c' || echo '$(srcdir)/'`grub-core/kern/emu/argp_common.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/kern/emu/$(DEPDIR)/grub_glue_efi-argp_common.Tpo grub-core/kern/emu/$(DEPDIR)/grub_glue_efi-argp_common.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/kern/emu/argp_common.c' object='grub-core/kern/emu/grub_glue_efi-argp_common.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_glue_efi_CPPFLAGS) $(CPPFLAGS) $(grub_glue_efi_CFLAGS) $(CFLAGS) -c -o grub-core/kern/emu/grub_glue_efi-argp_common.o `test -f 'grub-core/kern/emu/argp_common.c' || echo '$(srcdir)/'`grub-core/kern/emu/argp_common.c - -grub-core/kern/emu/grub_glue_efi-argp_common.obj: grub-core/kern/emu/argp_common.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_glue_efi_CPPFLAGS) $(CPPFLAGS) $(grub_glue_efi_CFLAGS) $(CFLAGS) -MT grub-core/kern/emu/grub_glue_efi-argp_common.obj -MD -MP -MF grub-core/kern/emu/$(DEPDIR)/grub_glue_efi-argp_common.Tpo -c -o grub-core/kern/emu/grub_glue_efi-argp_common.obj `if test -f 'grub-core/kern/emu/argp_common.c'; then $(CYGPATH_W) 'grub-core/kern/emu/argp_common.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/kern/emu/argp_common.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/kern/emu/$(DEPDIR)/grub_glue_efi-argp_common.Tpo grub-core/kern/emu/$(DEPDIR)/grub_glue_efi-argp_common.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/kern/emu/argp_common.c' object='grub-core/kern/emu/grub_glue_efi-argp_common.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_glue_efi_CPPFLAGS) $(CPPFLAGS) $(grub_glue_efi_CFLAGS) $(CFLAGS) -c -o grub-core/kern/emu/grub_glue_efi-argp_common.obj `if test -f 'grub-core/kern/emu/argp_common.c'; then $(CYGPATH_W) 'grub-core/kern/emu/argp_common.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/kern/emu/argp_common.c'; fi` - -grub-core/osdep/grub_glue_efi-init.o: grub-core/osdep/init.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_glue_efi_CPPFLAGS) $(CPPFLAGS) $(grub_glue_efi_CFLAGS) $(CFLAGS) -MT grub-core/osdep/grub_glue_efi-init.o -MD -MP -MF grub-core/osdep/$(DEPDIR)/grub_glue_efi-init.Tpo -c -o grub-core/osdep/grub_glue_efi-init.o `test -f 'grub-core/osdep/init.c' || echo '$(srcdir)/'`grub-core/osdep/init.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/osdep/$(DEPDIR)/grub_glue_efi-init.Tpo grub-core/osdep/$(DEPDIR)/grub_glue_efi-init.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/osdep/init.c' object='grub-core/osdep/grub_glue_efi-init.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_glue_efi_CPPFLAGS) $(CPPFLAGS) $(grub_glue_efi_CFLAGS) $(CFLAGS) -c -o grub-core/osdep/grub_glue_efi-init.o `test -f 'grub-core/osdep/init.c' || echo '$(srcdir)/'`grub-core/osdep/init.c - -grub-core/osdep/grub_glue_efi-init.obj: grub-core/osdep/init.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_glue_efi_CPPFLAGS) $(CPPFLAGS) $(grub_glue_efi_CFLAGS) $(CFLAGS) -MT grub-core/osdep/grub_glue_efi-init.obj -MD -MP -MF grub-core/osdep/$(DEPDIR)/grub_glue_efi-init.Tpo -c -o grub-core/osdep/grub_glue_efi-init.obj `if test -f 'grub-core/osdep/init.c'; then $(CYGPATH_W) 'grub-core/osdep/init.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/osdep/init.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/osdep/$(DEPDIR)/grub_glue_efi-init.Tpo grub-core/osdep/$(DEPDIR)/grub_glue_efi-init.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/osdep/init.c' object='grub-core/osdep/grub_glue_efi-init.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_glue_efi_CPPFLAGS) $(CPPFLAGS) $(grub_glue_efi_CFLAGS) $(CFLAGS) -c -o grub-core/osdep/grub_glue_efi-init.obj `if test -f 'grub-core/osdep/init.c'; then $(CYGPATH_W) 'grub-core/osdep/init.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/osdep/init.c'; fi` - -util/grub_install-grub-install.o: util/grub-install.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_install_CPPFLAGS) $(CPPFLAGS) $(grub_install_CFLAGS) $(CFLAGS) -MT util/grub_install-grub-install.o -MD -MP -MF util/$(DEPDIR)/grub_install-grub-install.Tpo -c -o util/grub_install-grub-install.o `test -f 'util/grub-install.c' || echo '$(srcdir)/'`util/grub-install.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_install-grub-install.Tpo util/$(DEPDIR)/grub_install-grub-install.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/grub-install.c' object='util/grub_install-grub-install.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_install_CPPFLAGS) $(CPPFLAGS) $(grub_install_CFLAGS) $(CFLAGS) -c -o util/grub_install-grub-install.o `test -f 'util/grub-install.c' || echo '$(srcdir)/'`util/grub-install.c - -util/grub_install-grub-install.obj: util/grub-install.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_install_CPPFLAGS) $(CPPFLAGS) $(grub_install_CFLAGS) $(CFLAGS) -MT util/grub_install-grub-install.obj -MD -MP -MF util/$(DEPDIR)/grub_install-grub-install.Tpo -c -o util/grub_install-grub-install.obj `if test -f 'util/grub-install.c'; then $(CYGPATH_W) 'util/grub-install.c'; else $(CYGPATH_W) '$(srcdir)/util/grub-install.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_install-grub-install.Tpo util/$(DEPDIR)/grub_install-grub-install.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/grub-install.c' object='util/grub_install-grub-install.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_install_CPPFLAGS) $(CPPFLAGS) $(grub_install_CFLAGS) $(CFLAGS) -c -o util/grub_install-grub-install.obj `if test -f 'util/grub-install.c'; then $(CYGPATH_W) 'util/grub-install.c'; else $(CYGPATH_W) '$(srcdir)/util/grub-install.c'; fi` - -util/grub_install-probe.o: util/probe.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_install_CPPFLAGS) $(CPPFLAGS) $(grub_install_CFLAGS) $(CFLAGS) -MT util/grub_install-probe.o -MD -MP -MF util/$(DEPDIR)/grub_install-probe.Tpo -c -o util/grub_install-probe.o `test -f 'util/probe.c' || echo '$(srcdir)/'`util/probe.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_install-probe.Tpo util/$(DEPDIR)/grub_install-probe.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/probe.c' object='util/grub_install-probe.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_install_CPPFLAGS) $(CPPFLAGS) $(grub_install_CFLAGS) $(CFLAGS) -c -o util/grub_install-probe.o `test -f 'util/probe.c' || echo '$(srcdir)/'`util/probe.c - -util/grub_install-probe.obj: util/probe.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_install_CPPFLAGS) $(CPPFLAGS) $(grub_install_CFLAGS) $(CFLAGS) -MT util/grub_install-probe.obj -MD -MP -MF util/$(DEPDIR)/grub_install-probe.Tpo -c -o util/grub_install-probe.obj `if test -f 'util/probe.c'; then $(CYGPATH_W) 'util/probe.c'; else $(CYGPATH_W) '$(srcdir)/util/probe.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_install-probe.Tpo util/$(DEPDIR)/grub_install-probe.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/probe.c' object='util/grub_install-probe.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_install_CPPFLAGS) $(CPPFLAGS) $(grub_install_CFLAGS) $(CFLAGS) -c -o util/grub_install-probe.obj `if test -f 'util/probe.c'; then $(CYGPATH_W) 'util/probe.c'; else $(CYGPATH_W) '$(srcdir)/util/probe.c'; fi` - -util/grub_install-mkimage.o: util/mkimage.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_install_CPPFLAGS) $(CPPFLAGS) $(grub_install_CFLAGS) $(CFLAGS) -MT util/grub_install-mkimage.o -MD -MP -MF util/$(DEPDIR)/grub_install-mkimage.Tpo -c -o util/grub_install-mkimage.o `test -f 'util/mkimage.c' || echo '$(srcdir)/'`util/mkimage.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_install-mkimage.Tpo util/$(DEPDIR)/grub_install-mkimage.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/mkimage.c' object='util/grub_install-mkimage.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_install_CPPFLAGS) $(CPPFLAGS) $(grub_install_CFLAGS) $(CFLAGS) -c -o util/grub_install-mkimage.o `test -f 'util/mkimage.c' || echo '$(srcdir)/'`util/mkimage.c - -util/grub_install-mkimage.obj: util/mkimage.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_install_CPPFLAGS) $(CPPFLAGS) $(grub_install_CFLAGS) $(CFLAGS) -MT util/grub_install-mkimage.obj -MD -MP -MF util/$(DEPDIR)/grub_install-mkimage.Tpo -c -o util/grub_install-mkimage.obj `if test -f 'util/mkimage.c'; then $(CYGPATH_W) 'util/mkimage.c'; else $(CYGPATH_W) '$(srcdir)/util/mkimage.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_install-mkimage.Tpo util/$(DEPDIR)/grub_install-mkimage.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/mkimage.c' object='util/grub_install-mkimage.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_install_CPPFLAGS) $(CPPFLAGS) $(grub_install_CFLAGS) $(CFLAGS) -c -o util/grub_install-mkimage.obj `if test -f 'util/mkimage.c'; then $(CYGPATH_W) 'util/mkimage.c'; else $(CYGPATH_W) '$(srcdir)/util/mkimage.c'; fi` - -util/grub_install-grub-mkimage32.o: util/grub-mkimage32.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_install_CPPFLAGS) $(CPPFLAGS) $(grub_install_CFLAGS) $(CFLAGS) -MT util/grub_install-grub-mkimage32.o -MD -MP -MF util/$(DEPDIR)/grub_install-grub-mkimage32.Tpo -c -o util/grub_install-grub-mkimage32.o `test -f 'util/grub-mkimage32.c' || echo '$(srcdir)/'`util/grub-mkimage32.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_install-grub-mkimage32.Tpo util/$(DEPDIR)/grub_install-grub-mkimage32.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/grub-mkimage32.c' object='util/grub_install-grub-mkimage32.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_install_CPPFLAGS) $(CPPFLAGS) $(grub_install_CFLAGS) $(CFLAGS) -c -o util/grub_install-grub-mkimage32.o `test -f 'util/grub-mkimage32.c' || echo '$(srcdir)/'`util/grub-mkimage32.c - -util/grub_install-grub-mkimage32.obj: util/grub-mkimage32.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_install_CPPFLAGS) $(CPPFLAGS) $(grub_install_CFLAGS) $(CFLAGS) -MT util/grub_install-grub-mkimage32.obj -MD -MP -MF util/$(DEPDIR)/grub_install-grub-mkimage32.Tpo -c -o util/grub_install-grub-mkimage32.obj `if test -f 'util/grub-mkimage32.c'; then $(CYGPATH_W) 'util/grub-mkimage32.c'; else $(CYGPATH_W) '$(srcdir)/util/grub-mkimage32.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_install-grub-mkimage32.Tpo util/$(DEPDIR)/grub_install-grub-mkimage32.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/grub-mkimage32.c' object='util/grub_install-grub-mkimage32.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_install_CPPFLAGS) $(CPPFLAGS) $(grub_install_CFLAGS) $(CFLAGS) -c -o util/grub_install-grub-mkimage32.obj `if test -f 'util/grub-mkimage32.c'; then $(CYGPATH_W) 'util/grub-mkimage32.c'; else $(CYGPATH_W) '$(srcdir)/util/grub-mkimage32.c'; fi` - -util/grub_install-grub-mkimage64.o: util/grub-mkimage64.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_install_CPPFLAGS) $(CPPFLAGS) $(grub_install_CFLAGS) $(CFLAGS) -MT util/grub_install-grub-mkimage64.o -MD -MP -MF util/$(DEPDIR)/grub_install-grub-mkimage64.Tpo -c -o util/grub_install-grub-mkimage64.o `test -f 'util/grub-mkimage64.c' || echo '$(srcdir)/'`util/grub-mkimage64.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_install-grub-mkimage64.Tpo util/$(DEPDIR)/grub_install-grub-mkimage64.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/grub-mkimage64.c' object='util/grub_install-grub-mkimage64.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_install_CPPFLAGS) $(CPPFLAGS) $(grub_install_CFLAGS) $(CFLAGS) -c -o util/grub_install-grub-mkimage64.o `test -f 'util/grub-mkimage64.c' || echo '$(srcdir)/'`util/grub-mkimage64.c - -util/grub_install-grub-mkimage64.obj: util/grub-mkimage64.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_install_CPPFLAGS) $(CPPFLAGS) $(grub_install_CFLAGS) $(CFLAGS) -MT util/grub_install-grub-mkimage64.obj -MD -MP -MF util/$(DEPDIR)/grub_install-grub-mkimage64.Tpo -c -o util/grub_install-grub-mkimage64.obj `if test -f 'util/grub-mkimage64.c'; then $(CYGPATH_W) 'util/grub-mkimage64.c'; else $(CYGPATH_W) '$(srcdir)/util/grub-mkimage64.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_install-grub-mkimage64.Tpo util/$(DEPDIR)/grub_install-grub-mkimage64.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/grub-mkimage64.c' object='util/grub_install-grub-mkimage64.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_install_CPPFLAGS) $(CPPFLAGS) $(grub_install_CFLAGS) $(CFLAGS) -c -o util/grub_install-grub-mkimage64.obj `if test -f 'util/grub-mkimage64.c'; then $(CYGPATH_W) 'util/grub-mkimage64.c'; else $(CYGPATH_W) '$(srcdir)/util/grub-mkimage64.c'; fi` - -util/grub_install-grub-install-common.o: util/grub-install-common.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_install_CPPFLAGS) $(CPPFLAGS) $(grub_install_CFLAGS) $(CFLAGS) -MT util/grub_install-grub-install-common.o -MD -MP -MF util/$(DEPDIR)/grub_install-grub-install-common.Tpo -c -o util/grub_install-grub-install-common.o `test -f 'util/grub-install-common.c' || echo '$(srcdir)/'`util/grub-install-common.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_install-grub-install-common.Tpo util/$(DEPDIR)/grub_install-grub-install-common.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/grub-install-common.c' object='util/grub_install-grub-install-common.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_install_CPPFLAGS) $(CPPFLAGS) $(grub_install_CFLAGS) $(CFLAGS) -c -o util/grub_install-grub-install-common.o `test -f 'util/grub-install-common.c' || echo '$(srcdir)/'`util/grub-install-common.c - -util/grub_install-grub-install-common.obj: util/grub-install-common.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_install_CPPFLAGS) $(CPPFLAGS) $(grub_install_CFLAGS) $(CFLAGS) -MT util/grub_install-grub-install-common.obj -MD -MP -MF util/$(DEPDIR)/grub_install-grub-install-common.Tpo -c -o util/grub_install-grub-install-common.obj `if test -f 'util/grub-install-common.c'; then $(CYGPATH_W) 'util/grub-install-common.c'; else $(CYGPATH_W) '$(srcdir)/util/grub-install-common.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_install-grub-install-common.Tpo util/$(DEPDIR)/grub_install-grub-install-common.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/grub-install-common.c' object='util/grub_install-grub-install-common.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_install_CPPFLAGS) $(CPPFLAGS) $(grub_install_CFLAGS) $(CFLAGS) -c -o util/grub_install-grub-install-common.obj `if test -f 'util/grub-install-common.c'; then $(CYGPATH_W) 'util/grub-install-common.c'; else $(CYGPATH_W) '$(srcdir)/util/grub-install-common.c'; fi` - -util/grub_install-setup_bios.o: util/setup_bios.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_install_CPPFLAGS) $(CPPFLAGS) $(grub_install_CFLAGS) $(CFLAGS) -MT util/grub_install-setup_bios.o -MD -MP -MF util/$(DEPDIR)/grub_install-setup_bios.Tpo -c -o util/grub_install-setup_bios.o `test -f 'util/setup_bios.c' || echo '$(srcdir)/'`util/setup_bios.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_install-setup_bios.Tpo util/$(DEPDIR)/grub_install-setup_bios.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/setup_bios.c' object='util/grub_install-setup_bios.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_install_CPPFLAGS) $(CPPFLAGS) $(grub_install_CFLAGS) $(CFLAGS) -c -o util/grub_install-setup_bios.o `test -f 'util/setup_bios.c' || echo '$(srcdir)/'`util/setup_bios.c - -util/grub_install-setup_bios.obj: util/setup_bios.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_install_CPPFLAGS) $(CPPFLAGS) $(grub_install_CFLAGS) $(CFLAGS) -MT util/grub_install-setup_bios.obj -MD -MP -MF util/$(DEPDIR)/grub_install-setup_bios.Tpo -c -o util/grub_install-setup_bios.obj `if test -f 'util/setup_bios.c'; then $(CYGPATH_W) 'util/setup_bios.c'; else $(CYGPATH_W) '$(srcdir)/util/setup_bios.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_install-setup_bios.Tpo util/$(DEPDIR)/grub_install-setup_bios.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/setup_bios.c' object='util/grub_install-setup_bios.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_install_CPPFLAGS) $(CPPFLAGS) $(grub_install_CFLAGS) $(CFLAGS) -c -o util/grub_install-setup_bios.obj `if test -f 'util/setup_bios.c'; then $(CYGPATH_W) 'util/setup_bios.c'; else $(CYGPATH_W) '$(srcdir)/util/setup_bios.c'; fi` - -util/grub_install-setup_sparc.o: util/setup_sparc.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_install_CPPFLAGS) $(CPPFLAGS) $(grub_install_CFLAGS) $(CFLAGS) -MT util/grub_install-setup_sparc.o -MD -MP -MF util/$(DEPDIR)/grub_install-setup_sparc.Tpo -c -o util/grub_install-setup_sparc.o `test -f 'util/setup_sparc.c' || echo '$(srcdir)/'`util/setup_sparc.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_install-setup_sparc.Tpo util/$(DEPDIR)/grub_install-setup_sparc.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/setup_sparc.c' object='util/grub_install-setup_sparc.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_install_CPPFLAGS) $(CPPFLAGS) $(grub_install_CFLAGS) $(CFLAGS) -c -o util/grub_install-setup_sparc.o `test -f 'util/setup_sparc.c' || echo '$(srcdir)/'`util/setup_sparc.c - -util/grub_install-setup_sparc.obj: util/setup_sparc.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_install_CPPFLAGS) $(CPPFLAGS) $(grub_install_CFLAGS) $(CFLAGS) -MT util/grub_install-setup_sparc.obj -MD -MP -MF util/$(DEPDIR)/grub_install-setup_sparc.Tpo -c -o util/grub_install-setup_sparc.obj `if test -f 'util/setup_sparc.c'; then $(CYGPATH_W) 'util/setup_sparc.c'; else $(CYGPATH_W) '$(srcdir)/util/setup_sparc.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_install-setup_sparc.Tpo util/$(DEPDIR)/grub_install-setup_sparc.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/setup_sparc.c' object='util/grub_install-setup_sparc.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_install_CPPFLAGS) $(CPPFLAGS) $(grub_install_CFLAGS) $(CFLAGS) -c -o util/grub_install-setup_sparc.obj `if test -f 'util/setup_sparc.c'; then $(CYGPATH_W) 'util/setup_sparc.c'; else $(CYGPATH_W) '$(srcdir)/util/setup_sparc.c'; fi` - -grub-core/lib/grub_install-reed_solomon.o: grub-core/lib/reed_solomon.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_install_CPPFLAGS) $(CPPFLAGS) $(grub_install_CFLAGS) $(CFLAGS) -MT grub-core/lib/grub_install-reed_solomon.o -MD -MP -MF grub-core/lib/$(DEPDIR)/grub_install-reed_solomon.Tpo -c -o grub-core/lib/grub_install-reed_solomon.o `test -f 'grub-core/lib/reed_solomon.c' || echo '$(srcdir)/'`grub-core/lib/reed_solomon.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/lib/$(DEPDIR)/grub_install-reed_solomon.Tpo grub-core/lib/$(DEPDIR)/grub_install-reed_solomon.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/lib/reed_solomon.c' object='grub-core/lib/grub_install-reed_solomon.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_install_CPPFLAGS) $(CPPFLAGS) $(grub_install_CFLAGS) $(CFLAGS) -c -o grub-core/lib/grub_install-reed_solomon.o `test -f 'grub-core/lib/reed_solomon.c' || echo '$(srcdir)/'`grub-core/lib/reed_solomon.c - -grub-core/lib/grub_install-reed_solomon.obj: grub-core/lib/reed_solomon.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_install_CPPFLAGS) $(CPPFLAGS) $(grub_install_CFLAGS) $(CFLAGS) -MT grub-core/lib/grub_install-reed_solomon.obj -MD -MP -MF grub-core/lib/$(DEPDIR)/grub_install-reed_solomon.Tpo -c -o grub-core/lib/grub_install-reed_solomon.obj `if test -f 'grub-core/lib/reed_solomon.c'; then $(CYGPATH_W) 'grub-core/lib/reed_solomon.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/lib/reed_solomon.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/lib/$(DEPDIR)/grub_install-reed_solomon.Tpo grub-core/lib/$(DEPDIR)/grub_install-reed_solomon.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/lib/reed_solomon.c' object='grub-core/lib/grub_install-reed_solomon.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_install_CPPFLAGS) $(CPPFLAGS) $(grub_install_CFLAGS) $(CFLAGS) -c -o grub-core/lib/grub_install-reed_solomon.obj `if test -f 'grub-core/lib/reed_solomon.c'; then $(CYGPATH_W) 'grub-core/lib/reed_solomon.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/lib/reed_solomon.c'; fi` - -grub-core/osdep/grub_install-random.o: grub-core/osdep/random.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_install_CPPFLAGS) $(CPPFLAGS) $(grub_install_CFLAGS) $(CFLAGS) -MT grub-core/osdep/grub_install-random.o -MD -MP -MF grub-core/osdep/$(DEPDIR)/grub_install-random.Tpo -c -o grub-core/osdep/grub_install-random.o `test -f 'grub-core/osdep/random.c' || echo '$(srcdir)/'`grub-core/osdep/random.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/osdep/$(DEPDIR)/grub_install-random.Tpo grub-core/osdep/$(DEPDIR)/grub_install-random.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/osdep/random.c' object='grub-core/osdep/grub_install-random.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_install_CPPFLAGS) $(CPPFLAGS) $(grub_install_CFLAGS) $(CFLAGS) -c -o grub-core/osdep/grub_install-random.o `test -f 'grub-core/osdep/random.c' || echo '$(srcdir)/'`grub-core/osdep/random.c - -grub-core/osdep/grub_install-random.obj: grub-core/osdep/random.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_install_CPPFLAGS) $(CPPFLAGS) $(grub_install_CFLAGS) $(CFLAGS) -MT grub-core/osdep/grub_install-random.obj -MD -MP -MF grub-core/osdep/$(DEPDIR)/grub_install-random.Tpo -c -o grub-core/osdep/grub_install-random.obj `if test -f 'grub-core/osdep/random.c'; then $(CYGPATH_W) 'grub-core/osdep/random.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/osdep/random.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/osdep/$(DEPDIR)/grub_install-random.Tpo grub-core/osdep/$(DEPDIR)/grub_install-random.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/osdep/random.c' object='grub-core/osdep/grub_install-random.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_install_CPPFLAGS) $(CPPFLAGS) $(grub_install_CFLAGS) $(CFLAGS) -c -o grub-core/osdep/grub_install-random.obj `if test -f 'grub-core/osdep/random.c'; then $(CYGPATH_W) 'grub-core/osdep/random.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/osdep/random.c'; fi` - -grub-core/osdep/grub_install-ofpath.o: grub-core/osdep/ofpath.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_install_CPPFLAGS) $(CPPFLAGS) $(grub_install_CFLAGS) $(CFLAGS) -MT grub-core/osdep/grub_install-ofpath.o -MD -MP -MF grub-core/osdep/$(DEPDIR)/grub_install-ofpath.Tpo -c -o grub-core/osdep/grub_install-ofpath.o `test -f 'grub-core/osdep/ofpath.c' || echo '$(srcdir)/'`grub-core/osdep/ofpath.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/osdep/$(DEPDIR)/grub_install-ofpath.Tpo grub-core/osdep/$(DEPDIR)/grub_install-ofpath.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/osdep/ofpath.c' object='grub-core/osdep/grub_install-ofpath.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_install_CPPFLAGS) $(CPPFLAGS) $(grub_install_CFLAGS) $(CFLAGS) -c -o grub-core/osdep/grub_install-ofpath.o `test -f 'grub-core/osdep/ofpath.c' || echo '$(srcdir)/'`grub-core/osdep/ofpath.c - -grub-core/osdep/grub_install-ofpath.obj: grub-core/osdep/ofpath.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_install_CPPFLAGS) $(CPPFLAGS) $(grub_install_CFLAGS) $(CFLAGS) -MT grub-core/osdep/grub_install-ofpath.obj -MD -MP -MF grub-core/osdep/$(DEPDIR)/grub_install-ofpath.Tpo -c -o grub-core/osdep/grub_install-ofpath.obj `if test -f 'grub-core/osdep/ofpath.c'; then $(CYGPATH_W) 'grub-core/osdep/ofpath.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/osdep/ofpath.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/osdep/$(DEPDIR)/grub_install-ofpath.Tpo grub-core/osdep/$(DEPDIR)/grub_install-ofpath.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/osdep/ofpath.c' object='grub-core/osdep/grub_install-ofpath.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_install_CPPFLAGS) $(CPPFLAGS) $(grub_install_CFLAGS) $(CFLAGS) -c -o grub-core/osdep/grub_install-ofpath.obj `if test -f 'grub-core/osdep/ofpath.c'; then $(CYGPATH_W) 'grub-core/osdep/ofpath.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/osdep/ofpath.c'; fi` - -grub-core/osdep/grub_install-platform.o: grub-core/osdep/platform.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_install_CPPFLAGS) $(CPPFLAGS) $(grub_install_CFLAGS) $(CFLAGS) -MT grub-core/osdep/grub_install-platform.o -MD -MP -MF grub-core/osdep/$(DEPDIR)/grub_install-platform.Tpo -c -o grub-core/osdep/grub_install-platform.o `test -f 'grub-core/osdep/platform.c' || echo '$(srcdir)/'`grub-core/osdep/platform.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/osdep/$(DEPDIR)/grub_install-platform.Tpo grub-core/osdep/$(DEPDIR)/grub_install-platform.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/osdep/platform.c' object='grub-core/osdep/grub_install-platform.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_install_CPPFLAGS) $(CPPFLAGS) $(grub_install_CFLAGS) $(CFLAGS) -c -o grub-core/osdep/grub_install-platform.o `test -f 'grub-core/osdep/platform.c' || echo '$(srcdir)/'`grub-core/osdep/platform.c - -grub-core/osdep/grub_install-platform.obj: grub-core/osdep/platform.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_install_CPPFLAGS) $(CPPFLAGS) $(grub_install_CFLAGS) $(CFLAGS) -MT grub-core/osdep/grub_install-platform.obj -MD -MP -MF grub-core/osdep/$(DEPDIR)/grub_install-platform.Tpo -c -o grub-core/osdep/grub_install-platform.obj `if test -f 'grub-core/osdep/platform.c'; then $(CYGPATH_W) 'grub-core/osdep/platform.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/osdep/platform.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/osdep/$(DEPDIR)/grub_install-platform.Tpo grub-core/osdep/$(DEPDIR)/grub_install-platform.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/osdep/platform.c' object='grub-core/osdep/grub_install-platform.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_install_CPPFLAGS) $(CPPFLAGS) $(grub_install_CFLAGS) $(CFLAGS) -c -o grub-core/osdep/grub_install-platform.obj `if test -f 'grub-core/osdep/platform.c'; then $(CYGPATH_W) 'grub-core/osdep/platform.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/osdep/platform.c'; fi` - -grub-core/osdep/grub_install-platform_unix.o: grub-core/osdep/platform_unix.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_install_CPPFLAGS) $(CPPFLAGS) $(grub_install_CFLAGS) $(CFLAGS) -MT grub-core/osdep/grub_install-platform_unix.o -MD -MP -MF grub-core/osdep/$(DEPDIR)/grub_install-platform_unix.Tpo -c -o grub-core/osdep/grub_install-platform_unix.o `test -f 'grub-core/osdep/platform_unix.c' || echo '$(srcdir)/'`grub-core/osdep/platform_unix.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/osdep/$(DEPDIR)/grub_install-platform_unix.Tpo grub-core/osdep/$(DEPDIR)/grub_install-platform_unix.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/osdep/platform_unix.c' object='grub-core/osdep/grub_install-platform_unix.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_install_CPPFLAGS) $(CPPFLAGS) $(grub_install_CFLAGS) $(CFLAGS) -c -o grub-core/osdep/grub_install-platform_unix.o `test -f 'grub-core/osdep/platform_unix.c' || echo '$(srcdir)/'`grub-core/osdep/platform_unix.c - -grub-core/osdep/grub_install-platform_unix.obj: grub-core/osdep/platform_unix.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_install_CPPFLAGS) $(CPPFLAGS) $(grub_install_CFLAGS) $(CFLAGS) -MT grub-core/osdep/grub_install-platform_unix.obj -MD -MP -MF grub-core/osdep/$(DEPDIR)/grub_install-platform_unix.Tpo -c -o grub-core/osdep/grub_install-platform_unix.obj `if test -f 'grub-core/osdep/platform_unix.c'; then $(CYGPATH_W) 'grub-core/osdep/platform_unix.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/osdep/platform_unix.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/osdep/$(DEPDIR)/grub_install-platform_unix.Tpo grub-core/osdep/$(DEPDIR)/grub_install-platform_unix.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/osdep/platform_unix.c' object='grub-core/osdep/grub_install-platform_unix.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_install_CPPFLAGS) $(CPPFLAGS) $(grub_install_CFLAGS) $(CFLAGS) -c -o grub-core/osdep/grub_install-platform_unix.obj `if test -f 'grub-core/osdep/platform_unix.c'; then $(CYGPATH_W) 'grub-core/osdep/platform_unix.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/osdep/platform_unix.c'; fi` - -grub-core/osdep/grub_install-compress.o: grub-core/osdep/compress.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_install_CPPFLAGS) $(CPPFLAGS) $(grub_install_CFLAGS) $(CFLAGS) -MT grub-core/osdep/grub_install-compress.o -MD -MP -MF grub-core/osdep/$(DEPDIR)/grub_install-compress.Tpo -c -o grub-core/osdep/grub_install-compress.o `test -f 'grub-core/osdep/compress.c' || echo '$(srcdir)/'`grub-core/osdep/compress.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/osdep/$(DEPDIR)/grub_install-compress.Tpo grub-core/osdep/$(DEPDIR)/grub_install-compress.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/osdep/compress.c' object='grub-core/osdep/grub_install-compress.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_install_CPPFLAGS) $(CPPFLAGS) $(grub_install_CFLAGS) $(CFLAGS) -c -o grub-core/osdep/grub_install-compress.o `test -f 'grub-core/osdep/compress.c' || echo '$(srcdir)/'`grub-core/osdep/compress.c - -grub-core/osdep/grub_install-compress.obj: grub-core/osdep/compress.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_install_CPPFLAGS) $(CPPFLAGS) $(grub_install_CFLAGS) $(CFLAGS) -MT grub-core/osdep/grub_install-compress.obj -MD -MP -MF grub-core/osdep/$(DEPDIR)/grub_install-compress.Tpo -c -o grub-core/osdep/grub_install-compress.obj `if test -f 'grub-core/osdep/compress.c'; then $(CYGPATH_W) 'grub-core/osdep/compress.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/osdep/compress.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/osdep/$(DEPDIR)/grub_install-compress.Tpo grub-core/osdep/$(DEPDIR)/grub_install-compress.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/osdep/compress.c' object='grub-core/osdep/grub_install-compress.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_install_CPPFLAGS) $(CPPFLAGS) $(grub_install_CFLAGS) $(CFLAGS) -c -o grub-core/osdep/grub_install-compress.obj `if test -f 'grub-core/osdep/compress.c'; then $(CYGPATH_W) 'grub-core/osdep/compress.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/osdep/compress.c'; fi` - -util/grub_install-editenv.o: util/editenv.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_install_CPPFLAGS) $(CPPFLAGS) $(grub_install_CFLAGS) $(CFLAGS) -MT util/grub_install-editenv.o -MD -MP -MF util/$(DEPDIR)/grub_install-editenv.Tpo -c -o util/grub_install-editenv.o `test -f 'util/editenv.c' || echo '$(srcdir)/'`util/editenv.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_install-editenv.Tpo util/$(DEPDIR)/grub_install-editenv.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/editenv.c' object='util/grub_install-editenv.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_install_CPPFLAGS) $(CPPFLAGS) $(grub_install_CFLAGS) $(CFLAGS) -c -o util/grub_install-editenv.o `test -f 'util/editenv.c' || echo '$(srcdir)/'`util/editenv.c - -util/grub_install-editenv.obj: util/editenv.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_install_CPPFLAGS) $(CPPFLAGS) $(grub_install_CFLAGS) $(CFLAGS) -MT util/grub_install-editenv.obj -MD -MP -MF util/$(DEPDIR)/grub_install-editenv.Tpo -c -o util/grub_install-editenv.obj `if test -f 'util/editenv.c'; then $(CYGPATH_W) 'util/editenv.c'; else $(CYGPATH_W) '$(srcdir)/util/editenv.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_install-editenv.Tpo util/$(DEPDIR)/grub_install-editenv.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/editenv.c' object='util/grub_install-editenv.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_install_CPPFLAGS) $(CPPFLAGS) $(grub_install_CFLAGS) $(CFLAGS) -c -o util/grub_install-editenv.obj `if test -f 'util/editenv.c'; then $(CYGPATH_W) 'util/editenv.c'; else $(CYGPATH_W) '$(srcdir)/util/editenv.c'; fi` - -grub-core/osdep/grub_install-blocklist.o: grub-core/osdep/blocklist.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_install_CPPFLAGS) $(CPPFLAGS) $(grub_install_CFLAGS) $(CFLAGS) -MT grub-core/osdep/grub_install-blocklist.o -MD -MP -MF grub-core/osdep/$(DEPDIR)/grub_install-blocklist.Tpo -c -o grub-core/osdep/grub_install-blocklist.o `test -f 'grub-core/osdep/blocklist.c' || echo '$(srcdir)/'`grub-core/osdep/blocklist.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/osdep/$(DEPDIR)/grub_install-blocklist.Tpo grub-core/osdep/$(DEPDIR)/grub_install-blocklist.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/osdep/blocklist.c' object='grub-core/osdep/grub_install-blocklist.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_install_CPPFLAGS) $(CPPFLAGS) $(grub_install_CFLAGS) $(CFLAGS) -c -o grub-core/osdep/grub_install-blocklist.o `test -f 'grub-core/osdep/blocklist.c' || echo '$(srcdir)/'`grub-core/osdep/blocklist.c - -grub-core/osdep/grub_install-blocklist.obj: grub-core/osdep/blocklist.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_install_CPPFLAGS) $(CPPFLAGS) $(grub_install_CFLAGS) $(CFLAGS) -MT grub-core/osdep/grub_install-blocklist.obj -MD -MP -MF grub-core/osdep/$(DEPDIR)/grub_install-blocklist.Tpo -c -o grub-core/osdep/grub_install-blocklist.obj `if test -f 'grub-core/osdep/blocklist.c'; then $(CYGPATH_W) 'grub-core/osdep/blocklist.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/osdep/blocklist.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/osdep/$(DEPDIR)/grub_install-blocklist.Tpo grub-core/osdep/$(DEPDIR)/grub_install-blocklist.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/osdep/blocklist.c' object='grub-core/osdep/grub_install-blocklist.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_install_CPPFLAGS) $(CPPFLAGS) $(grub_install_CFLAGS) $(CFLAGS) -c -o grub-core/osdep/grub_install-blocklist.obj `if test -f 'grub-core/osdep/blocklist.c'; then $(CYGPATH_W) 'grub-core/osdep/blocklist.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/osdep/blocklist.c'; fi` - -grub-core/osdep/grub_install-config.o: grub-core/osdep/config.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_install_CPPFLAGS) $(CPPFLAGS) $(grub_install_CFLAGS) $(CFLAGS) -MT grub-core/osdep/grub_install-config.o -MD -MP -MF grub-core/osdep/$(DEPDIR)/grub_install-config.Tpo -c -o grub-core/osdep/grub_install-config.o `test -f 'grub-core/osdep/config.c' || echo '$(srcdir)/'`grub-core/osdep/config.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/osdep/$(DEPDIR)/grub_install-config.Tpo grub-core/osdep/$(DEPDIR)/grub_install-config.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/osdep/config.c' object='grub-core/osdep/grub_install-config.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_install_CPPFLAGS) $(CPPFLAGS) $(grub_install_CFLAGS) $(CFLAGS) -c -o grub-core/osdep/grub_install-config.o `test -f 'grub-core/osdep/config.c' || echo '$(srcdir)/'`grub-core/osdep/config.c - -grub-core/osdep/grub_install-config.obj: grub-core/osdep/config.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_install_CPPFLAGS) $(CPPFLAGS) $(grub_install_CFLAGS) $(CFLAGS) -MT grub-core/osdep/grub_install-config.obj -MD -MP -MF grub-core/osdep/$(DEPDIR)/grub_install-config.Tpo -c -o grub-core/osdep/grub_install-config.obj `if test -f 'grub-core/osdep/config.c'; then $(CYGPATH_W) 'grub-core/osdep/config.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/osdep/config.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/osdep/$(DEPDIR)/grub_install-config.Tpo grub-core/osdep/$(DEPDIR)/grub_install-config.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/osdep/config.c' object='grub-core/osdep/grub_install-config.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_install_CPPFLAGS) $(CPPFLAGS) $(grub_install_CFLAGS) $(CFLAGS) -c -o grub-core/osdep/grub_install-config.obj `if test -f 'grub-core/osdep/config.c'; then $(CYGPATH_W) 'grub-core/osdep/config.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/osdep/config.c'; fi` - -util/grub_install-config.o: util/config.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_install_CPPFLAGS) $(CPPFLAGS) $(grub_install_CFLAGS) $(CFLAGS) -MT util/grub_install-config.o -MD -MP -MF util/$(DEPDIR)/grub_install-config.Tpo -c -o util/grub_install-config.o `test -f 'util/config.c' || echo '$(srcdir)/'`util/config.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_install-config.Tpo util/$(DEPDIR)/grub_install-config.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/config.c' object='util/grub_install-config.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_install_CPPFLAGS) $(CPPFLAGS) $(grub_install_CFLAGS) $(CFLAGS) -c -o util/grub_install-config.o `test -f 'util/config.c' || echo '$(srcdir)/'`util/config.c - -util/grub_install-config.obj: util/config.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_install_CPPFLAGS) $(CPPFLAGS) $(grub_install_CFLAGS) $(CFLAGS) -MT util/grub_install-config.obj -MD -MP -MF util/$(DEPDIR)/grub_install-config.Tpo -c -o util/grub_install-config.obj `if test -f 'util/config.c'; then $(CYGPATH_W) 'util/config.c'; else $(CYGPATH_W) '$(srcdir)/util/config.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_install-config.Tpo util/$(DEPDIR)/grub_install-config.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/config.c' object='util/grub_install-config.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_install_CPPFLAGS) $(CPPFLAGS) $(grub_install_CFLAGS) $(CFLAGS) -c -o util/grub_install-config.obj `if test -f 'util/config.c'; then $(CYGPATH_W) 'util/config.c'; else $(CYGPATH_W) '$(srcdir)/util/config.c'; fi` - -util/grub_install-render-label.o: util/render-label.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_install_CPPFLAGS) $(CPPFLAGS) $(grub_install_CFLAGS) $(CFLAGS) -MT util/grub_install-render-label.o -MD -MP -MF util/$(DEPDIR)/grub_install-render-label.Tpo -c -o util/grub_install-render-label.o `test -f 'util/render-label.c' || echo '$(srcdir)/'`util/render-label.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_install-render-label.Tpo util/$(DEPDIR)/grub_install-render-label.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/render-label.c' object='util/grub_install-render-label.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_install_CPPFLAGS) $(CPPFLAGS) $(grub_install_CFLAGS) $(CFLAGS) -c -o util/grub_install-render-label.o `test -f 'util/render-label.c' || echo '$(srcdir)/'`util/render-label.c - -util/grub_install-render-label.obj: util/render-label.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_install_CPPFLAGS) $(CPPFLAGS) $(grub_install_CFLAGS) $(CFLAGS) -MT util/grub_install-render-label.obj -MD -MP -MF util/$(DEPDIR)/grub_install-render-label.Tpo -c -o util/grub_install-render-label.obj `if test -f 'util/render-label.c'; then $(CYGPATH_W) 'util/render-label.c'; else $(CYGPATH_W) '$(srcdir)/util/render-label.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_install-render-label.Tpo util/$(DEPDIR)/grub_install-render-label.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/render-label.c' object='util/grub_install-render-label.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_install_CPPFLAGS) $(CPPFLAGS) $(grub_install_CFLAGS) $(CFLAGS) -c -o util/grub_install-render-label.obj `if test -f 'util/render-label.c'; then $(CYGPATH_W) 'util/render-label.c'; else $(CYGPATH_W) '$(srcdir)/util/render-label.c'; fi` - -grub-core/kern/emu/grub_install-hostfs.o: grub-core/kern/emu/hostfs.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_install_CPPFLAGS) $(CPPFLAGS) $(grub_install_CFLAGS) $(CFLAGS) -MT grub-core/kern/emu/grub_install-hostfs.o -MD -MP -MF grub-core/kern/emu/$(DEPDIR)/grub_install-hostfs.Tpo -c -o grub-core/kern/emu/grub_install-hostfs.o `test -f 'grub-core/kern/emu/hostfs.c' || echo '$(srcdir)/'`grub-core/kern/emu/hostfs.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/kern/emu/$(DEPDIR)/grub_install-hostfs.Tpo grub-core/kern/emu/$(DEPDIR)/grub_install-hostfs.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/kern/emu/hostfs.c' object='grub-core/kern/emu/grub_install-hostfs.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_install_CPPFLAGS) $(CPPFLAGS) $(grub_install_CFLAGS) $(CFLAGS) -c -o grub-core/kern/emu/grub_install-hostfs.o `test -f 'grub-core/kern/emu/hostfs.c' || echo '$(srcdir)/'`grub-core/kern/emu/hostfs.c - -grub-core/kern/emu/grub_install-hostfs.obj: grub-core/kern/emu/hostfs.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_install_CPPFLAGS) $(CPPFLAGS) $(grub_install_CFLAGS) $(CFLAGS) -MT grub-core/kern/emu/grub_install-hostfs.obj -MD -MP -MF grub-core/kern/emu/$(DEPDIR)/grub_install-hostfs.Tpo -c -o grub-core/kern/emu/grub_install-hostfs.obj `if test -f 'grub-core/kern/emu/hostfs.c'; then $(CYGPATH_W) 'grub-core/kern/emu/hostfs.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/kern/emu/hostfs.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/kern/emu/$(DEPDIR)/grub_install-hostfs.Tpo grub-core/kern/emu/$(DEPDIR)/grub_install-hostfs.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/kern/emu/hostfs.c' object='grub-core/kern/emu/grub_install-hostfs.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_install_CPPFLAGS) $(CPPFLAGS) $(grub_install_CFLAGS) $(CFLAGS) -c -o grub-core/kern/emu/grub_install-hostfs.obj `if test -f 'grub-core/kern/emu/hostfs.c'; then $(CYGPATH_W) 'grub-core/kern/emu/hostfs.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/kern/emu/hostfs.c'; fi` - -grub-core/disk/grub_install-host.o: grub-core/disk/host.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_install_CPPFLAGS) $(CPPFLAGS) $(grub_install_CFLAGS) $(CFLAGS) -MT grub-core/disk/grub_install-host.o -MD -MP -MF grub-core/disk/$(DEPDIR)/grub_install-host.Tpo -c -o grub-core/disk/grub_install-host.o `test -f 'grub-core/disk/host.c' || echo '$(srcdir)/'`grub-core/disk/host.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/disk/$(DEPDIR)/grub_install-host.Tpo grub-core/disk/$(DEPDIR)/grub_install-host.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/disk/host.c' object='grub-core/disk/grub_install-host.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_install_CPPFLAGS) $(CPPFLAGS) $(grub_install_CFLAGS) $(CFLAGS) -c -o grub-core/disk/grub_install-host.o `test -f 'grub-core/disk/host.c' || echo '$(srcdir)/'`grub-core/disk/host.c - -grub-core/disk/grub_install-host.obj: grub-core/disk/host.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_install_CPPFLAGS) $(CPPFLAGS) $(grub_install_CFLAGS) $(CFLAGS) -MT grub-core/disk/grub_install-host.obj -MD -MP -MF grub-core/disk/$(DEPDIR)/grub_install-host.Tpo -c -o grub-core/disk/grub_install-host.obj `if test -f 'grub-core/disk/host.c'; then $(CYGPATH_W) 'grub-core/disk/host.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/disk/host.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/disk/$(DEPDIR)/grub_install-host.Tpo grub-core/disk/$(DEPDIR)/grub_install-host.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/disk/host.c' object='grub-core/disk/grub_install-host.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_install_CPPFLAGS) $(CPPFLAGS) $(grub_install_CFLAGS) $(CFLAGS) -c -o grub-core/disk/grub_install-host.obj `if test -f 'grub-core/disk/host.c'; then $(CYGPATH_W) 'grub-core/disk/host.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/disk/host.c'; fi` - -util/grub_install-resolve.o: util/resolve.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_install_CPPFLAGS) $(CPPFLAGS) $(grub_install_CFLAGS) $(CFLAGS) -MT util/grub_install-resolve.o -MD -MP -MF util/$(DEPDIR)/grub_install-resolve.Tpo -c -o util/grub_install-resolve.o `test -f 'util/resolve.c' || echo '$(srcdir)/'`util/resolve.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_install-resolve.Tpo util/$(DEPDIR)/grub_install-resolve.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/resolve.c' object='util/grub_install-resolve.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_install_CPPFLAGS) $(CPPFLAGS) $(grub_install_CFLAGS) $(CFLAGS) -c -o util/grub_install-resolve.o `test -f 'util/resolve.c' || echo '$(srcdir)/'`util/resolve.c - -util/grub_install-resolve.obj: util/resolve.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_install_CPPFLAGS) $(CPPFLAGS) $(grub_install_CFLAGS) $(CFLAGS) -MT util/grub_install-resolve.obj -MD -MP -MF util/$(DEPDIR)/grub_install-resolve.Tpo -c -o util/grub_install-resolve.obj `if test -f 'util/resolve.c'; then $(CYGPATH_W) 'util/resolve.c'; else $(CYGPATH_W) '$(srcdir)/util/resolve.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_install-resolve.Tpo util/$(DEPDIR)/grub_install-resolve.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/resolve.c' object='util/grub_install-resolve.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_install_CPPFLAGS) $(CPPFLAGS) $(grub_install_CFLAGS) $(CFLAGS) -c -o util/grub_install-resolve.obj `if test -f 'util/resolve.c'; then $(CYGPATH_W) 'util/resolve.c'; else $(CYGPATH_W) '$(srcdir)/util/resolve.c'; fi` - -grub-core/kern/emu/grub_install-argp_common.o: grub-core/kern/emu/argp_common.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_install_CPPFLAGS) $(CPPFLAGS) $(grub_install_CFLAGS) $(CFLAGS) -MT grub-core/kern/emu/grub_install-argp_common.o -MD -MP -MF grub-core/kern/emu/$(DEPDIR)/grub_install-argp_common.Tpo -c -o grub-core/kern/emu/grub_install-argp_common.o `test -f 'grub-core/kern/emu/argp_common.c' || echo '$(srcdir)/'`grub-core/kern/emu/argp_common.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/kern/emu/$(DEPDIR)/grub_install-argp_common.Tpo grub-core/kern/emu/$(DEPDIR)/grub_install-argp_common.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/kern/emu/argp_common.c' object='grub-core/kern/emu/grub_install-argp_common.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_install_CPPFLAGS) $(CPPFLAGS) $(grub_install_CFLAGS) $(CFLAGS) -c -o grub-core/kern/emu/grub_install-argp_common.o `test -f 'grub-core/kern/emu/argp_common.c' || echo '$(srcdir)/'`grub-core/kern/emu/argp_common.c - -grub-core/kern/emu/grub_install-argp_common.obj: grub-core/kern/emu/argp_common.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_install_CPPFLAGS) $(CPPFLAGS) $(grub_install_CFLAGS) $(CFLAGS) -MT grub-core/kern/emu/grub_install-argp_common.obj -MD -MP -MF grub-core/kern/emu/$(DEPDIR)/grub_install-argp_common.Tpo -c -o grub-core/kern/emu/grub_install-argp_common.obj `if test -f 'grub-core/kern/emu/argp_common.c'; then $(CYGPATH_W) 'grub-core/kern/emu/argp_common.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/kern/emu/argp_common.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/kern/emu/$(DEPDIR)/grub_install-argp_common.Tpo grub-core/kern/emu/$(DEPDIR)/grub_install-argp_common.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/kern/emu/argp_common.c' object='grub-core/kern/emu/grub_install-argp_common.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_install_CPPFLAGS) $(CPPFLAGS) $(grub_install_CFLAGS) $(CFLAGS) -c -o grub-core/kern/emu/grub_install-argp_common.obj `if test -f 'grub-core/kern/emu/argp_common.c'; then $(CYGPATH_W) 'grub-core/kern/emu/argp_common.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/kern/emu/argp_common.c'; fi` - -grub-core/osdep/grub_install-init.o: grub-core/osdep/init.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_install_CPPFLAGS) $(CPPFLAGS) $(grub_install_CFLAGS) $(CFLAGS) -MT grub-core/osdep/grub_install-init.o -MD -MP -MF grub-core/osdep/$(DEPDIR)/grub_install-init.Tpo -c -o grub-core/osdep/grub_install-init.o `test -f 'grub-core/osdep/init.c' || echo '$(srcdir)/'`grub-core/osdep/init.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/osdep/$(DEPDIR)/grub_install-init.Tpo grub-core/osdep/$(DEPDIR)/grub_install-init.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/osdep/init.c' object='grub-core/osdep/grub_install-init.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_install_CPPFLAGS) $(CPPFLAGS) $(grub_install_CFLAGS) $(CFLAGS) -c -o grub-core/osdep/grub_install-init.o `test -f 'grub-core/osdep/init.c' || echo '$(srcdir)/'`grub-core/osdep/init.c - -grub-core/osdep/grub_install-init.obj: grub-core/osdep/init.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_install_CPPFLAGS) $(CPPFLAGS) $(grub_install_CFLAGS) $(CFLAGS) -MT grub-core/osdep/grub_install-init.obj -MD -MP -MF grub-core/osdep/$(DEPDIR)/grub_install-init.Tpo -c -o grub-core/osdep/grub_install-init.obj `if test -f 'grub-core/osdep/init.c'; then $(CYGPATH_W) 'grub-core/osdep/init.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/osdep/init.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/osdep/$(DEPDIR)/grub_install-init.Tpo grub-core/osdep/$(DEPDIR)/grub_install-init.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/osdep/init.c' object='grub-core/osdep/grub_install-init.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_install_CPPFLAGS) $(CPPFLAGS) $(grub_install_CFLAGS) $(CFLAGS) -c -o grub-core/osdep/grub_install-init.obj `if test -f 'grub-core/osdep/init.c'; then $(CYGPATH_W) 'grub-core/osdep/init.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/osdep/init.c'; fi` - -util/grub_macbless-grub-macbless.o: util/grub-macbless.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_macbless_CPPFLAGS) $(CPPFLAGS) $(grub_macbless_CFLAGS) $(CFLAGS) -MT util/grub_macbless-grub-macbless.o -MD -MP -MF util/$(DEPDIR)/grub_macbless-grub-macbless.Tpo -c -o util/grub_macbless-grub-macbless.o `test -f 'util/grub-macbless.c' || echo '$(srcdir)/'`util/grub-macbless.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_macbless-grub-macbless.Tpo util/$(DEPDIR)/grub_macbless-grub-macbless.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/grub-macbless.c' object='util/grub_macbless-grub-macbless.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_macbless_CPPFLAGS) $(CPPFLAGS) $(grub_macbless_CFLAGS) $(CFLAGS) -c -o util/grub_macbless-grub-macbless.o `test -f 'util/grub-macbless.c' || echo '$(srcdir)/'`util/grub-macbless.c - -util/grub_macbless-grub-macbless.obj: util/grub-macbless.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_macbless_CPPFLAGS) $(CPPFLAGS) $(grub_macbless_CFLAGS) $(CFLAGS) -MT util/grub_macbless-grub-macbless.obj -MD -MP -MF util/$(DEPDIR)/grub_macbless-grub-macbless.Tpo -c -o util/grub_macbless-grub-macbless.obj `if test -f 'util/grub-macbless.c'; then $(CYGPATH_W) 'util/grub-macbless.c'; else $(CYGPATH_W) '$(srcdir)/util/grub-macbless.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_macbless-grub-macbless.Tpo util/$(DEPDIR)/grub_macbless-grub-macbless.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/grub-macbless.c' object='util/grub_macbless-grub-macbless.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_macbless_CPPFLAGS) $(CPPFLAGS) $(grub_macbless_CFLAGS) $(CFLAGS) -c -o util/grub_macbless-grub-macbless.obj `if test -f 'util/grub-macbless.c'; then $(CYGPATH_W) 'util/grub-macbless.c'; else $(CYGPATH_W) '$(srcdir)/util/grub-macbless.c'; fi` - -grub-core/osdep/grub_macbless-init.o: grub-core/osdep/init.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_macbless_CPPFLAGS) $(CPPFLAGS) $(grub_macbless_CFLAGS) $(CFLAGS) -MT grub-core/osdep/grub_macbless-init.o -MD -MP -MF grub-core/osdep/$(DEPDIR)/grub_macbless-init.Tpo -c -o grub-core/osdep/grub_macbless-init.o `test -f 'grub-core/osdep/init.c' || echo '$(srcdir)/'`grub-core/osdep/init.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/osdep/$(DEPDIR)/grub_macbless-init.Tpo grub-core/osdep/$(DEPDIR)/grub_macbless-init.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/osdep/init.c' object='grub-core/osdep/grub_macbless-init.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_macbless_CPPFLAGS) $(CPPFLAGS) $(grub_macbless_CFLAGS) $(CFLAGS) -c -o grub-core/osdep/grub_macbless-init.o `test -f 'grub-core/osdep/init.c' || echo '$(srcdir)/'`grub-core/osdep/init.c - -grub-core/osdep/grub_macbless-init.obj: grub-core/osdep/init.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_macbless_CPPFLAGS) $(CPPFLAGS) $(grub_macbless_CFLAGS) $(CFLAGS) -MT grub-core/osdep/grub_macbless-init.obj -MD -MP -MF grub-core/osdep/$(DEPDIR)/grub_macbless-init.Tpo -c -o grub-core/osdep/grub_macbless-init.obj `if test -f 'grub-core/osdep/init.c'; then $(CYGPATH_W) 'grub-core/osdep/init.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/osdep/init.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/osdep/$(DEPDIR)/grub_macbless-init.Tpo grub-core/osdep/$(DEPDIR)/grub_macbless-init.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/osdep/init.c' object='grub-core/osdep/grub_macbless-init.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_macbless_CPPFLAGS) $(CPPFLAGS) $(grub_macbless_CFLAGS) $(CFLAGS) -c -o grub-core/osdep/grub_macbless-init.obj `if test -f 'grub-core/osdep/init.c'; then $(CYGPATH_W) 'grub-core/osdep/init.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/osdep/init.c'; fi` - -grub-core/kern/emu/grub_macbless-argp_common.o: grub-core/kern/emu/argp_common.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_macbless_CPPFLAGS) $(CPPFLAGS) $(grub_macbless_CFLAGS) $(CFLAGS) -MT grub-core/kern/emu/grub_macbless-argp_common.o -MD -MP -MF grub-core/kern/emu/$(DEPDIR)/grub_macbless-argp_common.Tpo -c -o grub-core/kern/emu/grub_macbless-argp_common.o `test -f 'grub-core/kern/emu/argp_common.c' || echo '$(srcdir)/'`grub-core/kern/emu/argp_common.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/kern/emu/$(DEPDIR)/grub_macbless-argp_common.Tpo grub-core/kern/emu/$(DEPDIR)/grub_macbless-argp_common.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/kern/emu/argp_common.c' object='grub-core/kern/emu/grub_macbless-argp_common.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_macbless_CPPFLAGS) $(CPPFLAGS) $(grub_macbless_CFLAGS) $(CFLAGS) -c -o grub-core/kern/emu/grub_macbless-argp_common.o `test -f 'grub-core/kern/emu/argp_common.c' || echo '$(srcdir)/'`grub-core/kern/emu/argp_common.c - -grub-core/kern/emu/grub_macbless-argp_common.obj: grub-core/kern/emu/argp_common.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_macbless_CPPFLAGS) $(CPPFLAGS) $(grub_macbless_CFLAGS) $(CFLAGS) -MT grub-core/kern/emu/grub_macbless-argp_common.obj -MD -MP -MF grub-core/kern/emu/$(DEPDIR)/grub_macbless-argp_common.Tpo -c -o grub-core/kern/emu/grub_macbless-argp_common.obj `if test -f 'grub-core/kern/emu/argp_common.c'; then $(CYGPATH_W) 'grub-core/kern/emu/argp_common.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/kern/emu/argp_common.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/kern/emu/$(DEPDIR)/grub_macbless-argp_common.Tpo grub-core/kern/emu/$(DEPDIR)/grub_macbless-argp_common.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/kern/emu/argp_common.c' object='grub-core/kern/emu/grub_macbless-argp_common.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_macbless_CPPFLAGS) $(CPPFLAGS) $(grub_macbless_CFLAGS) $(CFLAGS) -c -o grub-core/kern/emu/grub_macbless-argp_common.obj `if test -f 'grub-core/kern/emu/argp_common.c'; then $(CYGPATH_W) 'grub-core/kern/emu/argp_common.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/kern/emu/argp_common.c'; fi` - -util/grub_macho2img-grub-macho2img.o: util/grub-macho2img.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_macho2img_CPPFLAGS) $(CPPFLAGS) $(grub_macho2img_CFLAGS) $(CFLAGS) -MT util/grub_macho2img-grub-macho2img.o -MD -MP -MF util/$(DEPDIR)/grub_macho2img-grub-macho2img.Tpo -c -o util/grub_macho2img-grub-macho2img.o `test -f 'util/grub-macho2img.c' || echo '$(srcdir)/'`util/grub-macho2img.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_macho2img-grub-macho2img.Tpo util/$(DEPDIR)/grub_macho2img-grub-macho2img.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/grub-macho2img.c' object='util/grub_macho2img-grub-macho2img.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_macho2img_CPPFLAGS) $(CPPFLAGS) $(grub_macho2img_CFLAGS) $(CFLAGS) -c -o util/grub_macho2img-grub-macho2img.o `test -f 'util/grub-macho2img.c' || echo '$(srcdir)/'`util/grub-macho2img.c - -util/grub_macho2img-grub-macho2img.obj: util/grub-macho2img.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_macho2img_CPPFLAGS) $(CPPFLAGS) $(grub_macho2img_CFLAGS) $(CFLAGS) -MT util/grub_macho2img-grub-macho2img.obj -MD -MP -MF util/$(DEPDIR)/grub_macho2img-grub-macho2img.Tpo -c -o util/grub_macho2img-grub-macho2img.obj `if test -f 'util/grub-macho2img.c'; then $(CYGPATH_W) 'util/grub-macho2img.c'; else $(CYGPATH_W) '$(srcdir)/util/grub-macho2img.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_macho2img-grub-macho2img.Tpo util/$(DEPDIR)/grub_macho2img-grub-macho2img.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/grub-macho2img.c' object='util/grub_macho2img-grub-macho2img.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_macho2img_CPPFLAGS) $(CPPFLAGS) $(grub_macho2img_CFLAGS) $(CFLAGS) -c -o util/grub_macho2img-grub-macho2img.obj `if test -f 'util/grub-macho2img.c'; then $(CYGPATH_W) 'util/grub-macho2img.c'; else $(CYGPATH_W) '$(srcdir)/util/grub-macho2img.c'; fi` - -util/grub_menulst2cfg-grub-menulst2cfg.o: util/grub-menulst2cfg.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_menulst2cfg_CPPFLAGS) $(CPPFLAGS) $(grub_menulst2cfg_CFLAGS) $(CFLAGS) -MT util/grub_menulst2cfg-grub-menulst2cfg.o -MD -MP -MF util/$(DEPDIR)/grub_menulst2cfg-grub-menulst2cfg.Tpo -c -o util/grub_menulst2cfg-grub-menulst2cfg.o `test -f 'util/grub-menulst2cfg.c' || echo '$(srcdir)/'`util/grub-menulst2cfg.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_menulst2cfg-grub-menulst2cfg.Tpo util/$(DEPDIR)/grub_menulst2cfg-grub-menulst2cfg.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/grub-menulst2cfg.c' object='util/grub_menulst2cfg-grub-menulst2cfg.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_menulst2cfg_CPPFLAGS) $(CPPFLAGS) $(grub_menulst2cfg_CFLAGS) $(CFLAGS) -c -o util/grub_menulst2cfg-grub-menulst2cfg.o `test -f 'util/grub-menulst2cfg.c' || echo '$(srcdir)/'`util/grub-menulst2cfg.c - -util/grub_menulst2cfg-grub-menulst2cfg.obj: util/grub-menulst2cfg.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_menulst2cfg_CPPFLAGS) $(CPPFLAGS) $(grub_menulst2cfg_CFLAGS) $(CFLAGS) -MT util/grub_menulst2cfg-grub-menulst2cfg.obj -MD -MP -MF util/$(DEPDIR)/grub_menulst2cfg-grub-menulst2cfg.Tpo -c -o util/grub_menulst2cfg-grub-menulst2cfg.obj `if test -f 'util/grub-menulst2cfg.c'; then $(CYGPATH_W) 'util/grub-menulst2cfg.c'; else $(CYGPATH_W) '$(srcdir)/util/grub-menulst2cfg.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_menulst2cfg-grub-menulst2cfg.Tpo util/$(DEPDIR)/grub_menulst2cfg-grub-menulst2cfg.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/grub-menulst2cfg.c' object='util/grub_menulst2cfg-grub-menulst2cfg.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_menulst2cfg_CPPFLAGS) $(CPPFLAGS) $(grub_menulst2cfg_CFLAGS) $(CFLAGS) -c -o util/grub_menulst2cfg-grub-menulst2cfg.obj `if test -f 'util/grub-menulst2cfg.c'; then $(CYGPATH_W) 'util/grub-menulst2cfg.c'; else $(CYGPATH_W) '$(srcdir)/util/grub-menulst2cfg.c'; fi` - -grub-core/lib/grub_menulst2cfg-legacy_parse.o: grub-core/lib/legacy_parse.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_menulst2cfg_CPPFLAGS) $(CPPFLAGS) $(grub_menulst2cfg_CFLAGS) $(CFLAGS) -MT grub-core/lib/grub_menulst2cfg-legacy_parse.o -MD -MP -MF grub-core/lib/$(DEPDIR)/grub_menulst2cfg-legacy_parse.Tpo -c -o grub-core/lib/grub_menulst2cfg-legacy_parse.o `test -f 'grub-core/lib/legacy_parse.c' || echo '$(srcdir)/'`grub-core/lib/legacy_parse.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/lib/$(DEPDIR)/grub_menulst2cfg-legacy_parse.Tpo grub-core/lib/$(DEPDIR)/grub_menulst2cfg-legacy_parse.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/lib/legacy_parse.c' object='grub-core/lib/grub_menulst2cfg-legacy_parse.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_menulst2cfg_CPPFLAGS) $(CPPFLAGS) $(grub_menulst2cfg_CFLAGS) $(CFLAGS) -c -o grub-core/lib/grub_menulst2cfg-legacy_parse.o `test -f 'grub-core/lib/legacy_parse.c' || echo '$(srcdir)/'`grub-core/lib/legacy_parse.c - -grub-core/lib/grub_menulst2cfg-legacy_parse.obj: grub-core/lib/legacy_parse.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_menulst2cfg_CPPFLAGS) $(CPPFLAGS) $(grub_menulst2cfg_CFLAGS) $(CFLAGS) -MT grub-core/lib/grub_menulst2cfg-legacy_parse.obj -MD -MP -MF grub-core/lib/$(DEPDIR)/grub_menulst2cfg-legacy_parse.Tpo -c -o grub-core/lib/grub_menulst2cfg-legacy_parse.obj `if test -f 'grub-core/lib/legacy_parse.c'; then $(CYGPATH_W) 'grub-core/lib/legacy_parse.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/lib/legacy_parse.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/lib/$(DEPDIR)/grub_menulst2cfg-legacy_parse.Tpo grub-core/lib/$(DEPDIR)/grub_menulst2cfg-legacy_parse.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/lib/legacy_parse.c' object='grub-core/lib/grub_menulst2cfg-legacy_parse.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_menulst2cfg_CPPFLAGS) $(CPPFLAGS) $(grub_menulst2cfg_CFLAGS) $(CFLAGS) -c -o grub-core/lib/grub_menulst2cfg-legacy_parse.obj `if test -f 'grub-core/lib/legacy_parse.c'; then $(CYGPATH_W) 'grub-core/lib/legacy_parse.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/lib/legacy_parse.c'; fi` - -grub-core/lib/i386/pc/grub_menulst2cfg-vesa_modes_table.o: grub-core/lib/i386/pc/vesa_modes_table.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_menulst2cfg_CPPFLAGS) $(CPPFLAGS) $(grub_menulst2cfg_CFLAGS) $(CFLAGS) -MT grub-core/lib/i386/pc/grub_menulst2cfg-vesa_modes_table.o -MD -MP -MF grub-core/lib/i386/pc/$(DEPDIR)/grub_menulst2cfg-vesa_modes_table.Tpo -c -o grub-core/lib/i386/pc/grub_menulst2cfg-vesa_modes_table.o `test -f 'grub-core/lib/i386/pc/vesa_modes_table.c' || echo '$(srcdir)/'`grub-core/lib/i386/pc/vesa_modes_table.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/lib/i386/pc/$(DEPDIR)/grub_menulst2cfg-vesa_modes_table.Tpo grub-core/lib/i386/pc/$(DEPDIR)/grub_menulst2cfg-vesa_modes_table.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/lib/i386/pc/vesa_modes_table.c' object='grub-core/lib/i386/pc/grub_menulst2cfg-vesa_modes_table.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_menulst2cfg_CPPFLAGS) $(CPPFLAGS) $(grub_menulst2cfg_CFLAGS) $(CFLAGS) -c -o grub-core/lib/i386/pc/grub_menulst2cfg-vesa_modes_table.o `test -f 'grub-core/lib/i386/pc/vesa_modes_table.c' || echo '$(srcdir)/'`grub-core/lib/i386/pc/vesa_modes_table.c - -grub-core/lib/i386/pc/grub_menulst2cfg-vesa_modes_table.obj: grub-core/lib/i386/pc/vesa_modes_table.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_menulst2cfg_CPPFLAGS) $(CPPFLAGS) $(grub_menulst2cfg_CFLAGS) $(CFLAGS) -MT grub-core/lib/i386/pc/grub_menulst2cfg-vesa_modes_table.obj -MD -MP -MF grub-core/lib/i386/pc/$(DEPDIR)/grub_menulst2cfg-vesa_modes_table.Tpo -c -o grub-core/lib/i386/pc/grub_menulst2cfg-vesa_modes_table.obj `if test -f 'grub-core/lib/i386/pc/vesa_modes_table.c'; then $(CYGPATH_W) 'grub-core/lib/i386/pc/vesa_modes_table.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/lib/i386/pc/vesa_modes_table.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/lib/i386/pc/$(DEPDIR)/grub_menulst2cfg-vesa_modes_table.Tpo grub-core/lib/i386/pc/$(DEPDIR)/grub_menulst2cfg-vesa_modes_table.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/lib/i386/pc/vesa_modes_table.c' object='grub-core/lib/i386/pc/grub_menulst2cfg-vesa_modes_table.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_menulst2cfg_CPPFLAGS) $(CPPFLAGS) $(grub_menulst2cfg_CFLAGS) $(CFLAGS) -c -o grub-core/lib/i386/pc/grub_menulst2cfg-vesa_modes_table.obj `if test -f 'grub-core/lib/i386/pc/vesa_modes_table.c'; then $(CYGPATH_W) 'grub-core/lib/i386/pc/vesa_modes_table.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/lib/i386/pc/vesa_modes_table.c'; fi` - -grub-core/osdep/grub_menulst2cfg-init.o: grub-core/osdep/init.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_menulst2cfg_CPPFLAGS) $(CPPFLAGS) $(grub_menulst2cfg_CFLAGS) $(CFLAGS) -MT grub-core/osdep/grub_menulst2cfg-init.o -MD -MP -MF grub-core/osdep/$(DEPDIR)/grub_menulst2cfg-init.Tpo -c -o grub-core/osdep/grub_menulst2cfg-init.o `test -f 'grub-core/osdep/init.c' || echo '$(srcdir)/'`grub-core/osdep/init.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/osdep/$(DEPDIR)/grub_menulst2cfg-init.Tpo grub-core/osdep/$(DEPDIR)/grub_menulst2cfg-init.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/osdep/init.c' object='grub-core/osdep/grub_menulst2cfg-init.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_menulst2cfg_CPPFLAGS) $(CPPFLAGS) $(grub_menulst2cfg_CFLAGS) $(CFLAGS) -c -o grub-core/osdep/grub_menulst2cfg-init.o `test -f 'grub-core/osdep/init.c' || echo '$(srcdir)/'`grub-core/osdep/init.c - -grub-core/osdep/grub_menulst2cfg-init.obj: grub-core/osdep/init.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_menulst2cfg_CPPFLAGS) $(CPPFLAGS) $(grub_menulst2cfg_CFLAGS) $(CFLAGS) -MT grub-core/osdep/grub_menulst2cfg-init.obj -MD -MP -MF grub-core/osdep/$(DEPDIR)/grub_menulst2cfg-init.Tpo -c -o grub-core/osdep/grub_menulst2cfg-init.obj `if test -f 'grub-core/osdep/init.c'; then $(CYGPATH_W) 'grub-core/osdep/init.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/osdep/init.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/osdep/$(DEPDIR)/grub_menulst2cfg-init.Tpo grub-core/osdep/$(DEPDIR)/grub_menulst2cfg-init.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/osdep/init.c' object='grub-core/osdep/grub_menulst2cfg-init.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_menulst2cfg_CPPFLAGS) $(CPPFLAGS) $(grub_menulst2cfg_CFLAGS) $(CFLAGS) -c -o grub-core/osdep/grub_menulst2cfg-init.obj `if test -f 'grub-core/osdep/init.c'; then $(CYGPATH_W) 'grub-core/osdep/init.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/osdep/init.c'; fi` - -util/grub_mkfont-grub-mkfont.o: util/grub-mkfont.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkfont_CPPFLAGS) $(CPPFLAGS) $(grub_mkfont_CFLAGS) $(CFLAGS) -MT util/grub_mkfont-grub-mkfont.o -MD -MP -MF util/$(DEPDIR)/grub_mkfont-grub-mkfont.Tpo -c -o util/grub_mkfont-grub-mkfont.o `test -f 'util/grub-mkfont.c' || echo '$(srcdir)/'`util/grub-mkfont.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_mkfont-grub-mkfont.Tpo util/$(DEPDIR)/grub_mkfont-grub-mkfont.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/grub-mkfont.c' object='util/grub_mkfont-grub-mkfont.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkfont_CPPFLAGS) $(CPPFLAGS) $(grub_mkfont_CFLAGS) $(CFLAGS) -c -o util/grub_mkfont-grub-mkfont.o `test -f 'util/grub-mkfont.c' || echo '$(srcdir)/'`util/grub-mkfont.c - -util/grub_mkfont-grub-mkfont.obj: util/grub-mkfont.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkfont_CPPFLAGS) $(CPPFLAGS) $(grub_mkfont_CFLAGS) $(CFLAGS) -MT util/grub_mkfont-grub-mkfont.obj -MD -MP -MF util/$(DEPDIR)/grub_mkfont-grub-mkfont.Tpo -c -o util/grub_mkfont-grub-mkfont.obj `if test -f 'util/grub-mkfont.c'; then $(CYGPATH_W) 'util/grub-mkfont.c'; else $(CYGPATH_W) '$(srcdir)/util/grub-mkfont.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_mkfont-grub-mkfont.Tpo util/$(DEPDIR)/grub_mkfont-grub-mkfont.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/grub-mkfont.c' object='util/grub_mkfont-grub-mkfont.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkfont_CPPFLAGS) $(CPPFLAGS) $(grub_mkfont_CFLAGS) $(CFLAGS) -c -o util/grub_mkfont-grub-mkfont.obj `if test -f 'util/grub-mkfont.c'; then $(CYGPATH_W) 'util/grub-mkfont.c'; else $(CYGPATH_W) '$(srcdir)/util/grub-mkfont.c'; fi` - -grub-core/kern/emu/grub_mkfont-argp_common.o: grub-core/kern/emu/argp_common.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkfont_CPPFLAGS) $(CPPFLAGS) $(grub_mkfont_CFLAGS) $(CFLAGS) -MT grub-core/kern/emu/grub_mkfont-argp_common.o -MD -MP -MF grub-core/kern/emu/$(DEPDIR)/grub_mkfont-argp_common.Tpo -c -o grub-core/kern/emu/grub_mkfont-argp_common.o `test -f 'grub-core/kern/emu/argp_common.c' || echo '$(srcdir)/'`grub-core/kern/emu/argp_common.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/kern/emu/$(DEPDIR)/grub_mkfont-argp_common.Tpo grub-core/kern/emu/$(DEPDIR)/grub_mkfont-argp_common.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/kern/emu/argp_common.c' object='grub-core/kern/emu/grub_mkfont-argp_common.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkfont_CPPFLAGS) $(CPPFLAGS) $(grub_mkfont_CFLAGS) $(CFLAGS) -c -o grub-core/kern/emu/grub_mkfont-argp_common.o `test -f 'grub-core/kern/emu/argp_common.c' || echo '$(srcdir)/'`grub-core/kern/emu/argp_common.c - -grub-core/kern/emu/grub_mkfont-argp_common.obj: grub-core/kern/emu/argp_common.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkfont_CPPFLAGS) $(CPPFLAGS) $(grub_mkfont_CFLAGS) $(CFLAGS) -MT grub-core/kern/emu/grub_mkfont-argp_common.obj -MD -MP -MF grub-core/kern/emu/$(DEPDIR)/grub_mkfont-argp_common.Tpo -c -o grub-core/kern/emu/grub_mkfont-argp_common.obj `if test -f 'grub-core/kern/emu/argp_common.c'; then $(CYGPATH_W) 'grub-core/kern/emu/argp_common.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/kern/emu/argp_common.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/kern/emu/$(DEPDIR)/grub_mkfont-argp_common.Tpo grub-core/kern/emu/$(DEPDIR)/grub_mkfont-argp_common.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/kern/emu/argp_common.c' object='grub-core/kern/emu/grub_mkfont-argp_common.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkfont_CPPFLAGS) $(CPPFLAGS) $(grub_mkfont_CFLAGS) $(CFLAGS) -c -o grub-core/kern/emu/grub_mkfont-argp_common.obj `if test -f 'grub-core/kern/emu/argp_common.c'; then $(CYGPATH_W) 'grub-core/kern/emu/argp_common.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/kern/emu/argp_common.c'; fi` - -grub-core/osdep/grub_mkfont-init.o: grub-core/osdep/init.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkfont_CPPFLAGS) $(CPPFLAGS) $(grub_mkfont_CFLAGS) $(CFLAGS) -MT grub-core/osdep/grub_mkfont-init.o -MD -MP -MF grub-core/osdep/$(DEPDIR)/grub_mkfont-init.Tpo -c -o grub-core/osdep/grub_mkfont-init.o `test -f 'grub-core/osdep/init.c' || echo '$(srcdir)/'`grub-core/osdep/init.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/osdep/$(DEPDIR)/grub_mkfont-init.Tpo grub-core/osdep/$(DEPDIR)/grub_mkfont-init.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/osdep/init.c' object='grub-core/osdep/grub_mkfont-init.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkfont_CPPFLAGS) $(CPPFLAGS) $(grub_mkfont_CFLAGS) $(CFLAGS) -c -o grub-core/osdep/grub_mkfont-init.o `test -f 'grub-core/osdep/init.c' || echo '$(srcdir)/'`grub-core/osdep/init.c - -grub-core/osdep/grub_mkfont-init.obj: grub-core/osdep/init.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkfont_CPPFLAGS) $(CPPFLAGS) $(grub_mkfont_CFLAGS) $(CFLAGS) -MT grub-core/osdep/grub_mkfont-init.obj -MD -MP -MF grub-core/osdep/$(DEPDIR)/grub_mkfont-init.Tpo -c -o grub-core/osdep/grub_mkfont-init.obj `if test -f 'grub-core/osdep/init.c'; then $(CYGPATH_W) 'grub-core/osdep/init.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/osdep/init.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/osdep/$(DEPDIR)/grub_mkfont-init.Tpo grub-core/osdep/$(DEPDIR)/grub_mkfont-init.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/osdep/init.c' object='grub-core/osdep/grub_mkfont-init.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkfont_CPPFLAGS) $(CPPFLAGS) $(grub_mkfont_CFLAGS) $(CFLAGS) -c -o grub-core/osdep/grub_mkfont-init.obj `if test -f 'grub-core/osdep/init.c'; then $(CYGPATH_W) 'grub-core/osdep/init.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/osdep/init.c'; fi` - -util/grub_mkimage-grub-mkimage.o: util/grub-mkimage.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkimage_CPPFLAGS) $(CPPFLAGS) $(grub_mkimage_CFLAGS) $(CFLAGS) -MT util/grub_mkimage-grub-mkimage.o -MD -MP -MF util/$(DEPDIR)/grub_mkimage-grub-mkimage.Tpo -c -o util/grub_mkimage-grub-mkimage.o `test -f 'util/grub-mkimage.c' || echo '$(srcdir)/'`util/grub-mkimage.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_mkimage-grub-mkimage.Tpo util/$(DEPDIR)/grub_mkimage-grub-mkimage.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/grub-mkimage.c' object='util/grub_mkimage-grub-mkimage.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkimage_CPPFLAGS) $(CPPFLAGS) $(grub_mkimage_CFLAGS) $(CFLAGS) -c -o util/grub_mkimage-grub-mkimage.o `test -f 'util/grub-mkimage.c' || echo '$(srcdir)/'`util/grub-mkimage.c - -util/grub_mkimage-grub-mkimage.obj: util/grub-mkimage.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkimage_CPPFLAGS) $(CPPFLAGS) $(grub_mkimage_CFLAGS) $(CFLAGS) -MT util/grub_mkimage-grub-mkimage.obj -MD -MP -MF util/$(DEPDIR)/grub_mkimage-grub-mkimage.Tpo -c -o util/grub_mkimage-grub-mkimage.obj `if test -f 'util/grub-mkimage.c'; then $(CYGPATH_W) 'util/grub-mkimage.c'; else $(CYGPATH_W) '$(srcdir)/util/grub-mkimage.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_mkimage-grub-mkimage.Tpo util/$(DEPDIR)/grub_mkimage-grub-mkimage.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/grub-mkimage.c' object='util/grub_mkimage-grub-mkimage.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkimage_CPPFLAGS) $(CPPFLAGS) $(grub_mkimage_CFLAGS) $(CFLAGS) -c -o util/grub_mkimage-grub-mkimage.obj `if test -f 'util/grub-mkimage.c'; then $(CYGPATH_W) 'util/grub-mkimage.c'; else $(CYGPATH_W) '$(srcdir)/util/grub-mkimage.c'; fi` - -util/grub_mkimage-mkimage.o: util/mkimage.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkimage_CPPFLAGS) $(CPPFLAGS) $(grub_mkimage_CFLAGS) $(CFLAGS) -MT util/grub_mkimage-mkimage.o -MD -MP -MF util/$(DEPDIR)/grub_mkimage-mkimage.Tpo -c -o util/grub_mkimage-mkimage.o `test -f 'util/mkimage.c' || echo '$(srcdir)/'`util/mkimage.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_mkimage-mkimage.Tpo util/$(DEPDIR)/grub_mkimage-mkimage.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/mkimage.c' object='util/grub_mkimage-mkimage.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkimage_CPPFLAGS) $(CPPFLAGS) $(grub_mkimage_CFLAGS) $(CFLAGS) -c -o util/grub_mkimage-mkimage.o `test -f 'util/mkimage.c' || echo '$(srcdir)/'`util/mkimage.c - -util/grub_mkimage-mkimage.obj: util/mkimage.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkimage_CPPFLAGS) $(CPPFLAGS) $(grub_mkimage_CFLAGS) $(CFLAGS) -MT util/grub_mkimage-mkimage.obj -MD -MP -MF util/$(DEPDIR)/grub_mkimage-mkimage.Tpo -c -o util/grub_mkimage-mkimage.obj `if test -f 'util/mkimage.c'; then $(CYGPATH_W) 'util/mkimage.c'; else $(CYGPATH_W) '$(srcdir)/util/mkimage.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_mkimage-mkimage.Tpo util/$(DEPDIR)/grub_mkimage-mkimage.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/mkimage.c' object='util/grub_mkimage-mkimage.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkimage_CPPFLAGS) $(CPPFLAGS) $(grub_mkimage_CFLAGS) $(CFLAGS) -c -o util/grub_mkimage-mkimage.obj `if test -f 'util/mkimage.c'; then $(CYGPATH_W) 'util/mkimage.c'; else $(CYGPATH_W) '$(srcdir)/util/mkimage.c'; fi` - -util/grub_mkimage-grub-mkimage32.o: util/grub-mkimage32.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkimage_CPPFLAGS) $(CPPFLAGS) $(grub_mkimage_CFLAGS) $(CFLAGS) -MT util/grub_mkimage-grub-mkimage32.o -MD -MP -MF util/$(DEPDIR)/grub_mkimage-grub-mkimage32.Tpo -c -o util/grub_mkimage-grub-mkimage32.o `test -f 'util/grub-mkimage32.c' || echo '$(srcdir)/'`util/grub-mkimage32.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_mkimage-grub-mkimage32.Tpo util/$(DEPDIR)/grub_mkimage-grub-mkimage32.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/grub-mkimage32.c' object='util/grub_mkimage-grub-mkimage32.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkimage_CPPFLAGS) $(CPPFLAGS) $(grub_mkimage_CFLAGS) $(CFLAGS) -c -o util/grub_mkimage-grub-mkimage32.o `test -f 'util/grub-mkimage32.c' || echo '$(srcdir)/'`util/grub-mkimage32.c - -util/grub_mkimage-grub-mkimage32.obj: util/grub-mkimage32.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkimage_CPPFLAGS) $(CPPFLAGS) $(grub_mkimage_CFLAGS) $(CFLAGS) -MT util/grub_mkimage-grub-mkimage32.obj -MD -MP -MF util/$(DEPDIR)/grub_mkimage-grub-mkimage32.Tpo -c -o util/grub_mkimage-grub-mkimage32.obj `if test -f 'util/grub-mkimage32.c'; then $(CYGPATH_W) 'util/grub-mkimage32.c'; else $(CYGPATH_W) '$(srcdir)/util/grub-mkimage32.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_mkimage-grub-mkimage32.Tpo util/$(DEPDIR)/grub_mkimage-grub-mkimage32.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/grub-mkimage32.c' object='util/grub_mkimage-grub-mkimage32.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkimage_CPPFLAGS) $(CPPFLAGS) $(grub_mkimage_CFLAGS) $(CFLAGS) -c -o util/grub_mkimage-grub-mkimage32.obj `if test -f 'util/grub-mkimage32.c'; then $(CYGPATH_W) 'util/grub-mkimage32.c'; else $(CYGPATH_W) '$(srcdir)/util/grub-mkimage32.c'; fi` - -util/grub_mkimage-grub-mkimage64.o: util/grub-mkimage64.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkimage_CPPFLAGS) $(CPPFLAGS) $(grub_mkimage_CFLAGS) $(CFLAGS) -MT util/grub_mkimage-grub-mkimage64.o -MD -MP -MF util/$(DEPDIR)/grub_mkimage-grub-mkimage64.Tpo -c -o util/grub_mkimage-grub-mkimage64.o `test -f 'util/grub-mkimage64.c' || echo '$(srcdir)/'`util/grub-mkimage64.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_mkimage-grub-mkimage64.Tpo util/$(DEPDIR)/grub_mkimage-grub-mkimage64.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/grub-mkimage64.c' object='util/grub_mkimage-grub-mkimage64.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkimage_CPPFLAGS) $(CPPFLAGS) $(grub_mkimage_CFLAGS) $(CFLAGS) -c -o util/grub_mkimage-grub-mkimage64.o `test -f 'util/grub-mkimage64.c' || echo '$(srcdir)/'`util/grub-mkimage64.c - -util/grub_mkimage-grub-mkimage64.obj: util/grub-mkimage64.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkimage_CPPFLAGS) $(CPPFLAGS) $(grub_mkimage_CFLAGS) $(CFLAGS) -MT util/grub_mkimage-grub-mkimage64.obj -MD -MP -MF util/$(DEPDIR)/grub_mkimage-grub-mkimage64.Tpo -c -o util/grub_mkimage-grub-mkimage64.obj `if test -f 'util/grub-mkimage64.c'; then $(CYGPATH_W) 'util/grub-mkimage64.c'; else $(CYGPATH_W) '$(srcdir)/util/grub-mkimage64.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_mkimage-grub-mkimage64.Tpo util/$(DEPDIR)/grub_mkimage-grub-mkimage64.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/grub-mkimage64.c' object='util/grub_mkimage-grub-mkimage64.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkimage_CPPFLAGS) $(CPPFLAGS) $(grub_mkimage_CFLAGS) $(CFLAGS) -c -o util/grub_mkimage-grub-mkimage64.obj `if test -f 'util/grub-mkimage64.c'; then $(CYGPATH_W) 'util/grub-mkimage64.c'; else $(CYGPATH_W) '$(srcdir)/util/grub-mkimage64.c'; fi` - -util/grub_mkimage-resolve.o: util/resolve.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkimage_CPPFLAGS) $(CPPFLAGS) $(grub_mkimage_CFLAGS) $(CFLAGS) -MT util/grub_mkimage-resolve.o -MD -MP -MF util/$(DEPDIR)/grub_mkimage-resolve.Tpo -c -o util/grub_mkimage-resolve.o `test -f 'util/resolve.c' || echo '$(srcdir)/'`util/resolve.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_mkimage-resolve.Tpo util/$(DEPDIR)/grub_mkimage-resolve.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/resolve.c' object='util/grub_mkimage-resolve.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkimage_CPPFLAGS) $(CPPFLAGS) $(grub_mkimage_CFLAGS) $(CFLAGS) -c -o util/grub_mkimage-resolve.o `test -f 'util/resolve.c' || echo '$(srcdir)/'`util/resolve.c - -util/grub_mkimage-resolve.obj: util/resolve.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkimage_CPPFLAGS) $(CPPFLAGS) $(grub_mkimage_CFLAGS) $(CFLAGS) -MT util/grub_mkimage-resolve.obj -MD -MP -MF util/$(DEPDIR)/grub_mkimage-resolve.Tpo -c -o util/grub_mkimage-resolve.obj `if test -f 'util/resolve.c'; then $(CYGPATH_W) 'util/resolve.c'; else $(CYGPATH_W) '$(srcdir)/util/resolve.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_mkimage-resolve.Tpo util/$(DEPDIR)/grub_mkimage-resolve.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/resolve.c' object='util/grub_mkimage-resolve.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkimage_CPPFLAGS) $(CPPFLAGS) $(grub_mkimage_CFLAGS) $(CFLAGS) -c -o util/grub_mkimage-resolve.obj `if test -f 'util/resolve.c'; then $(CYGPATH_W) 'util/resolve.c'; else $(CYGPATH_W) '$(srcdir)/util/resolve.c'; fi` - -grub-core/kern/emu/grub_mkimage-argp_common.o: grub-core/kern/emu/argp_common.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkimage_CPPFLAGS) $(CPPFLAGS) $(grub_mkimage_CFLAGS) $(CFLAGS) -MT grub-core/kern/emu/grub_mkimage-argp_common.o -MD -MP -MF grub-core/kern/emu/$(DEPDIR)/grub_mkimage-argp_common.Tpo -c -o grub-core/kern/emu/grub_mkimage-argp_common.o `test -f 'grub-core/kern/emu/argp_common.c' || echo '$(srcdir)/'`grub-core/kern/emu/argp_common.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/kern/emu/$(DEPDIR)/grub_mkimage-argp_common.Tpo grub-core/kern/emu/$(DEPDIR)/grub_mkimage-argp_common.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/kern/emu/argp_common.c' object='grub-core/kern/emu/grub_mkimage-argp_common.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkimage_CPPFLAGS) $(CPPFLAGS) $(grub_mkimage_CFLAGS) $(CFLAGS) -c -o grub-core/kern/emu/grub_mkimage-argp_common.o `test -f 'grub-core/kern/emu/argp_common.c' || echo '$(srcdir)/'`grub-core/kern/emu/argp_common.c - -grub-core/kern/emu/grub_mkimage-argp_common.obj: grub-core/kern/emu/argp_common.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkimage_CPPFLAGS) $(CPPFLAGS) $(grub_mkimage_CFLAGS) $(CFLAGS) -MT grub-core/kern/emu/grub_mkimage-argp_common.obj -MD -MP -MF grub-core/kern/emu/$(DEPDIR)/grub_mkimage-argp_common.Tpo -c -o grub-core/kern/emu/grub_mkimage-argp_common.obj `if test -f 'grub-core/kern/emu/argp_common.c'; then $(CYGPATH_W) 'grub-core/kern/emu/argp_common.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/kern/emu/argp_common.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/kern/emu/$(DEPDIR)/grub_mkimage-argp_common.Tpo grub-core/kern/emu/$(DEPDIR)/grub_mkimage-argp_common.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/kern/emu/argp_common.c' object='grub-core/kern/emu/grub_mkimage-argp_common.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkimage_CPPFLAGS) $(CPPFLAGS) $(grub_mkimage_CFLAGS) $(CFLAGS) -c -o grub-core/kern/emu/grub_mkimage-argp_common.obj `if test -f 'grub-core/kern/emu/argp_common.c'; then $(CYGPATH_W) 'grub-core/kern/emu/argp_common.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/kern/emu/argp_common.c'; fi` - -grub-core/osdep/grub_mkimage-init.o: grub-core/osdep/init.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkimage_CPPFLAGS) $(CPPFLAGS) $(grub_mkimage_CFLAGS) $(CFLAGS) -MT grub-core/osdep/grub_mkimage-init.o -MD -MP -MF grub-core/osdep/$(DEPDIR)/grub_mkimage-init.Tpo -c -o grub-core/osdep/grub_mkimage-init.o `test -f 'grub-core/osdep/init.c' || echo '$(srcdir)/'`grub-core/osdep/init.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/osdep/$(DEPDIR)/grub_mkimage-init.Tpo grub-core/osdep/$(DEPDIR)/grub_mkimage-init.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/osdep/init.c' object='grub-core/osdep/grub_mkimage-init.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkimage_CPPFLAGS) $(CPPFLAGS) $(grub_mkimage_CFLAGS) $(CFLAGS) -c -o grub-core/osdep/grub_mkimage-init.o `test -f 'grub-core/osdep/init.c' || echo '$(srcdir)/'`grub-core/osdep/init.c - -grub-core/osdep/grub_mkimage-init.obj: grub-core/osdep/init.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkimage_CPPFLAGS) $(CPPFLAGS) $(grub_mkimage_CFLAGS) $(CFLAGS) -MT grub-core/osdep/grub_mkimage-init.obj -MD -MP -MF grub-core/osdep/$(DEPDIR)/grub_mkimage-init.Tpo -c -o grub-core/osdep/grub_mkimage-init.obj `if test -f 'grub-core/osdep/init.c'; then $(CYGPATH_W) 'grub-core/osdep/init.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/osdep/init.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/osdep/$(DEPDIR)/grub_mkimage-init.Tpo grub-core/osdep/$(DEPDIR)/grub_mkimage-init.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/osdep/init.c' object='grub-core/osdep/grub_mkimage-init.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkimage_CPPFLAGS) $(CPPFLAGS) $(grub_mkimage_CFLAGS) $(CFLAGS) -c -o grub-core/osdep/grub_mkimage-init.obj `if test -f 'grub-core/osdep/init.c'; then $(CYGPATH_W) 'grub-core/osdep/init.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/osdep/init.c'; fi` - -grub-core/osdep/grub_mkimage-config.o: grub-core/osdep/config.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkimage_CPPFLAGS) $(CPPFLAGS) $(grub_mkimage_CFLAGS) $(CFLAGS) -MT grub-core/osdep/grub_mkimage-config.o -MD -MP -MF grub-core/osdep/$(DEPDIR)/grub_mkimage-config.Tpo -c -o grub-core/osdep/grub_mkimage-config.o `test -f 'grub-core/osdep/config.c' || echo '$(srcdir)/'`grub-core/osdep/config.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/osdep/$(DEPDIR)/grub_mkimage-config.Tpo grub-core/osdep/$(DEPDIR)/grub_mkimage-config.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/osdep/config.c' object='grub-core/osdep/grub_mkimage-config.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkimage_CPPFLAGS) $(CPPFLAGS) $(grub_mkimage_CFLAGS) $(CFLAGS) -c -o grub-core/osdep/grub_mkimage-config.o `test -f 'grub-core/osdep/config.c' || echo '$(srcdir)/'`grub-core/osdep/config.c - -grub-core/osdep/grub_mkimage-config.obj: grub-core/osdep/config.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkimage_CPPFLAGS) $(CPPFLAGS) $(grub_mkimage_CFLAGS) $(CFLAGS) -MT grub-core/osdep/grub_mkimage-config.obj -MD -MP -MF grub-core/osdep/$(DEPDIR)/grub_mkimage-config.Tpo -c -o grub-core/osdep/grub_mkimage-config.obj `if test -f 'grub-core/osdep/config.c'; then $(CYGPATH_W) 'grub-core/osdep/config.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/osdep/config.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/osdep/$(DEPDIR)/grub_mkimage-config.Tpo grub-core/osdep/$(DEPDIR)/grub_mkimage-config.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/osdep/config.c' object='grub-core/osdep/grub_mkimage-config.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkimage_CPPFLAGS) $(CPPFLAGS) $(grub_mkimage_CFLAGS) $(CFLAGS) -c -o grub-core/osdep/grub_mkimage-config.obj `if test -f 'grub-core/osdep/config.c'; then $(CYGPATH_W) 'grub-core/osdep/config.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/osdep/config.c'; fi` - -util/grub_mkimage-config.o: util/config.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkimage_CPPFLAGS) $(CPPFLAGS) $(grub_mkimage_CFLAGS) $(CFLAGS) -MT util/grub_mkimage-config.o -MD -MP -MF util/$(DEPDIR)/grub_mkimage-config.Tpo -c -o util/grub_mkimage-config.o `test -f 'util/config.c' || echo '$(srcdir)/'`util/config.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_mkimage-config.Tpo util/$(DEPDIR)/grub_mkimage-config.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/config.c' object='util/grub_mkimage-config.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkimage_CPPFLAGS) $(CPPFLAGS) $(grub_mkimage_CFLAGS) $(CFLAGS) -c -o util/grub_mkimage-config.o `test -f 'util/config.c' || echo '$(srcdir)/'`util/config.c - -util/grub_mkimage-config.obj: util/config.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkimage_CPPFLAGS) $(CPPFLAGS) $(grub_mkimage_CFLAGS) $(CFLAGS) -MT util/grub_mkimage-config.obj -MD -MP -MF util/$(DEPDIR)/grub_mkimage-config.Tpo -c -o util/grub_mkimage-config.obj `if test -f 'util/config.c'; then $(CYGPATH_W) 'util/config.c'; else $(CYGPATH_W) '$(srcdir)/util/config.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_mkimage-config.Tpo util/$(DEPDIR)/grub_mkimage-config.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/config.c' object='util/grub_mkimage-config.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkimage_CPPFLAGS) $(CPPFLAGS) $(grub_mkimage_CFLAGS) $(CFLAGS) -c -o util/grub_mkimage-config.obj `if test -f 'util/config.c'; then $(CYGPATH_W) 'util/config.c'; else $(CYGPATH_W) '$(srcdir)/util/config.c'; fi` - -util/grub_mklayout-grub-mklayout.o: util/grub-mklayout.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mklayout_CPPFLAGS) $(CPPFLAGS) $(grub_mklayout_CFLAGS) $(CFLAGS) -MT util/grub_mklayout-grub-mklayout.o -MD -MP -MF util/$(DEPDIR)/grub_mklayout-grub-mklayout.Tpo -c -o util/grub_mklayout-grub-mklayout.o `test -f 'util/grub-mklayout.c' || echo '$(srcdir)/'`util/grub-mklayout.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_mklayout-grub-mklayout.Tpo util/$(DEPDIR)/grub_mklayout-grub-mklayout.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/grub-mklayout.c' object='util/grub_mklayout-grub-mklayout.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mklayout_CPPFLAGS) $(CPPFLAGS) $(grub_mklayout_CFLAGS) $(CFLAGS) -c -o util/grub_mklayout-grub-mklayout.o `test -f 'util/grub-mklayout.c' || echo '$(srcdir)/'`util/grub-mklayout.c - -util/grub_mklayout-grub-mklayout.obj: util/grub-mklayout.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mklayout_CPPFLAGS) $(CPPFLAGS) $(grub_mklayout_CFLAGS) $(CFLAGS) -MT util/grub_mklayout-grub-mklayout.obj -MD -MP -MF util/$(DEPDIR)/grub_mklayout-grub-mklayout.Tpo -c -o util/grub_mklayout-grub-mklayout.obj `if test -f 'util/grub-mklayout.c'; then $(CYGPATH_W) 'util/grub-mklayout.c'; else $(CYGPATH_W) '$(srcdir)/util/grub-mklayout.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_mklayout-grub-mklayout.Tpo util/$(DEPDIR)/grub_mklayout-grub-mklayout.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/grub-mklayout.c' object='util/grub_mklayout-grub-mklayout.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mklayout_CPPFLAGS) $(CPPFLAGS) $(grub_mklayout_CFLAGS) $(CFLAGS) -c -o util/grub_mklayout-grub-mklayout.obj `if test -f 'util/grub-mklayout.c'; then $(CYGPATH_W) 'util/grub-mklayout.c'; else $(CYGPATH_W) '$(srcdir)/util/grub-mklayout.c'; fi` - -grub-core/kern/emu/grub_mklayout-argp_common.o: grub-core/kern/emu/argp_common.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mklayout_CPPFLAGS) $(CPPFLAGS) $(grub_mklayout_CFLAGS) $(CFLAGS) -MT grub-core/kern/emu/grub_mklayout-argp_common.o -MD -MP -MF grub-core/kern/emu/$(DEPDIR)/grub_mklayout-argp_common.Tpo -c -o grub-core/kern/emu/grub_mklayout-argp_common.o `test -f 'grub-core/kern/emu/argp_common.c' || echo '$(srcdir)/'`grub-core/kern/emu/argp_common.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/kern/emu/$(DEPDIR)/grub_mklayout-argp_common.Tpo grub-core/kern/emu/$(DEPDIR)/grub_mklayout-argp_common.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/kern/emu/argp_common.c' object='grub-core/kern/emu/grub_mklayout-argp_common.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mklayout_CPPFLAGS) $(CPPFLAGS) $(grub_mklayout_CFLAGS) $(CFLAGS) -c -o grub-core/kern/emu/grub_mklayout-argp_common.o `test -f 'grub-core/kern/emu/argp_common.c' || echo '$(srcdir)/'`grub-core/kern/emu/argp_common.c - -grub-core/kern/emu/grub_mklayout-argp_common.obj: grub-core/kern/emu/argp_common.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mklayout_CPPFLAGS) $(CPPFLAGS) $(grub_mklayout_CFLAGS) $(CFLAGS) -MT grub-core/kern/emu/grub_mklayout-argp_common.obj -MD -MP -MF grub-core/kern/emu/$(DEPDIR)/grub_mklayout-argp_common.Tpo -c -o grub-core/kern/emu/grub_mklayout-argp_common.obj `if test -f 'grub-core/kern/emu/argp_common.c'; then $(CYGPATH_W) 'grub-core/kern/emu/argp_common.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/kern/emu/argp_common.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/kern/emu/$(DEPDIR)/grub_mklayout-argp_common.Tpo grub-core/kern/emu/$(DEPDIR)/grub_mklayout-argp_common.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/kern/emu/argp_common.c' object='grub-core/kern/emu/grub_mklayout-argp_common.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mklayout_CPPFLAGS) $(CPPFLAGS) $(grub_mklayout_CFLAGS) $(CFLAGS) -c -o grub-core/kern/emu/grub_mklayout-argp_common.obj `if test -f 'grub-core/kern/emu/argp_common.c'; then $(CYGPATH_W) 'grub-core/kern/emu/argp_common.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/kern/emu/argp_common.c'; fi` - -grub-core/osdep/grub_mklayout-init.o: grub-core/osdep/init.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mklayout_CPPFLAGS) $(CPPFLAGS) $(grub_mklayout_CFLAGS) $(CFLAGS) -MT grub-core/osdep/grub_mklayout-init.o -MD -MP -MF grub-core/osdep/$(DEPDIR)/grub_mklayout-init.Tpo -c -o grub-core/osdep/grub_mklayout-init.o `test -f 'grub-core/osdep/init.c' || echo '$(srcdir)/'`grub-core/osdep/init.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/osdep/$(DEPDIR)/grub_mklayout-init.Tpo grub-core/osdep/$(DEPDIR)/grub_mklayout-init.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/osdep/init.c' object='grub-core/osdep/grub_mklayout-init.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mklayout_CPPFLAGS) $(CPPFLAGS) $(grub_mklayout_CFLAGS) $(CFLAGS) -c -o grub-core/osdep/grub_mklayout-init.o `test -f 'grub-core/osdep/init.c' || echo '$(srcdir)/'`grub-core/osdep/init.c - -grub-core/osdep/grub_mklayout-init.obj: grub-core/osdep/init.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mklayout_CPPFLAGS) $(CPPFLAGS) $(grub_mklayout_CFLAGS) $(CFLAGS) -MT grub-core/osdep/grub_mklayout-init.obj -MD -MP -MF grub-core/osdep/$(DEPDIR)/grub_mklayout-init.Tpo -c -o grub-core/osdep/grub_mklayout-init.obj `if test -f 'grub-core/osdep/init.c'; then $(CYGPATH_W) 'grub-core/osdep/init.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/osdep/init.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/osdep/$(DEPDIR)/grub_mklayout-init.Tpo grub-core/osdep/$(DEPDIR)/grub_mklayout-init.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/osdep/init.c' object='grub-core/osdep/grub_mklayout-init.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mklayout_CPPFLAGS) $(CPPFLAGS) $(grub_mklayout_CFLAGS) $(CFLAGS) -c -o grub-core/osdep/grub_mklayout-init.obj `if test -f 'grub-core/osdep/init.c'; then $(CYGPATH_W) 'grub-core/osdep/init.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/osdep/init.c'; fi` - -util/grub_mknetdir-grub-mknetdir.o: util/grub-mknetdir.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mknetdir_CPPFLAGS) $(CPPFLAGS) $(grub_mknetdir_CFLAGS) $(CFLAGS) -MT util/grub_mknetdir-grub-mknetdir.o -MD -MP -MF util/$(DEPDIR)/grub_mknetdir-grub-mknetdir.Tpo -c -o util/grub_mknetdir-grub-mknetdir.o `test -f 'util/grub-mknetdir.c' || echo '$(srcdir)/'`util/grub-mknetdir.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_mknetdir-grub-mknetdir.Tpo util/$(DEPDIR)/grub_mknetdir-grub-mknetdir.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/grub-mknetdir.c' object='util/grub_mknetdir-grub-mknetdir.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mknetdir_CPPFLAGS) $(CPPFLAGS) $(grub_mknetdir_CFLAGS) $(CFLAGS) -c -o util/grub_mknetdir-grub-mknetdir.o `test -f 'util/grub-mknetdir.c' || echo '$(srcdir)/'`util/grub-mknetdir.c - -util/grub_mknetdir-grub-mknetdir.obj: util/grub-mknetdir.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mknetdir_CPPFLAGS) $(CPPFLAGS) $(grub_mknetdir_CFLAGS) $(CFLAGS) -MT util/grub_mknetdir-grub-mknetdir.obj -MD -MP -MF util/$(DEPDIR)/grub_mknetdir-grub-mknetdir.Tpo -c -o util/grub_mknetdir-grub-mknetdir.obj `if test -f 'util/grub-mknetdir.c'; then $(CYGPATH_W) 'util/grub-mknetdir.c'; else $(CYGPATH_W) '$(srcdir)/util/grub-mknetdir.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_mknetdir-grub-mknetdir.Tpo util/$(DEPDIR)/grub_mknetdir-grub-mknetdir.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/grub-mknetdir.c' object='util/grub_mknetdir-grub-mknetdir.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mknetdir_CPPFLAGS) $(CPPFLAGS) $(grub_mknetdir_CFLAGS) $(CFLAGS) -c -o util/grub_mknetdir-grub-mknetdir.obj `if test -f 'util/grub-mknetdir.c'; then $(CYGPATH_W) 'util/grub-mknetdir.c'; else $(CYGPATH_W) '$(srcdir)/util/grub-mknetdir.c'; fi` - -util/grub_mknetdir-mkimage.o: util/mkimage.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mknetdir_CPPFLAGS) $(CPPFLAGS) $(grub_mknetdir_CFLAGS) $(CFLAGS) -MT util/grub_mknetdir-mkimage.o -MD -MP -MF util/$(DEPDIR)/grub_mknetdir-mkimage.Tpo -c -o util/grub_mknetdir-mkimage.o `test -f 'util/mkimage.c' || echo '$(srcdir)/'`util/mkimage.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_mknetdir-mkimage.Tpo util/$(DEPDIR)/grub_mknetdir-mkimage.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/mkimage.c' object='util/grub_mknetdir-mkimage.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mknetdir_CPPFLAGS) $(CPPFLAGS) $(grub_mknetdir_CFLAGS) $(CFLAGS) -c -o util/grub_mknetdir-mkimage.o `test -f 'util/mkimage.c' || echo '$(srcdir)/'`util/mkimage.c - -util/grub_mknetdir-mkimage.obj: util/mkimage.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mknetdir_CPPFLAGS) $(CPPFLAGS) $(grub_mknetdir_CFLAGS) $(CFLAGS) -MT util/grub_mknetdir-mkimage.obj -MD -MP -MF util/$(DEPDIR)/grub_mknetdir-mkimage.Tpo -c -o util/grub_mknetdir-mkimage.obj `if test -f 'util/mkimage.c'; then $(CYGPATH_W) 'util/mkimage.c'; else $(CYGPATH_W) '$(srcdir)/util/mkimage.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_mknetdir-mkimage.Tpo util/$(DEPDIR)/grub_mknetdir-mkimage.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/mkimage.c' object='util/grub_mknetdir-mkimage.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mknetdir_CPPFLAGS) $(CPPFLAGS) $(grub_mknetdir_CFLAGS) $(CFLAGS) -c -o util/grub_mknetdir-mkimage.obj `if test -f 'util/mkimage.c'; then $(CYGPATH_W) 'util/mkimage.c'; else $(CYGPATH_W) '$(srcdir)/util/mkimage.c'; fi` - -util/grub_mknetdir-grub-mkimage32.o: util/grub-mkimage32.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mknetdir_CPPFLAGS) $(CPPFLAGS) $(grub_mknetdir_CFLAGS) $(CFLAGS) -MT util/grub_mknetdir-grub-mkimage32.o -MD -MP -MF util/$(DEPDIR)/grub_mknetdir-grub-mkimage32.Tpo -c -o util/grub_mknetdir-grub-mkimage32.o `test -f 'util/grub-mkimage32.c' || echo '$(srcdir)/'`util/grub-mkimage32.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_mknetdir-grub-mkimage32.Tpo util/$(DEPDIR)/grub_mknetdir-grub-mkimage32.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/grub-mkimage32.c' object='util/grub_mknetdir-grub-mkimage32.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mknetdir_CPPFLAGS) $(CPPFLAGS) $(grub_mknetdir_CFLAGS) $(CFLAGS) -c -o util/grub_mknetdir-grub-mkimage32.o `test -f 'util/grub-mkimage32.c' || echo '$(srcdir)/'`util/grub-mkimage32.c - -util/grub_mknetdir-grub-mkimage32.obj: util/grub-mkimage32.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mknetdir_CPPFLAGS) $(CPPFLAGS) $(grub_mknetdir_CFLAGS) $(CFLAGS) -MT util/grub_mknetdir-grub-mkimage32.obj -MD -MP -MF util/$(DEPDIR)/grub_mknetdir-grub-mkimage32.Tpo -c -o util/grub_mknetdir-grub-mkimage32.obj `if test -f 'util/grub-mkimage32.c'; then $(CYGPATH_W) 'util/grub-mkimage32.c'; else $(CYGPATH_W) '$(srcdir)/util/grub-mkimage32.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_mknetdir-grub-mkimage32.Tpo util/$(DEPDIR)/grub_mknetdir-grub-mkimage32.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/grub-mkimage32.c' object='util/grub_mknetdir-grub-mkimage32.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mknetdir_CPPFLAGS) $(CPPFLAGS) $(grub_mknetdir_CFLAGS) $(CFLAGS) -c -o util/grub_mknetdir-grub-mkimage32.obj `if test -f 'util/grub-mkimage32.c'; then $(CYGPATH_W) 'util/grub-mkimage32.c'; else $(CYGPATH_W) '$(srcdir)/util/grub-mkimage32.c'; fi` - -util/grub_mknetdir-grub-mkimage64.o: util/grub-mkimage64.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mknetdir_CPPFLAGS) $(CPPFLAGS) $(grub_mknetdir_CFLAGS) $(CFLAGS) -MT util/grub_mknetdir-grub-mkimage64.o -MD -MP -MF util/$(DEPDIR)/grub_mknetdir-grub-mkimage64.Tpo -c -o util/grub_mknetdir-grub-mkimage64.o `test -f 'util/grub-mkimage64.c' || echo '$(srcdir)/'`util/grub-mkimage64.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_mknetdir-grub-mkimage64.Tpo util/$(DEPDIR)/grub_mknetdir-grub-mkimage64.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/grub-mkimage64.c' object='util/grub_mknetdir-grub-mkimage64.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mknetdir_CPPFLAGS) $(CPPFLAGS) $(grub_mknetdir_CFLAGS) $(CFLAGS) -c -o util/grub_mknetdir-grub-mkimage64.o `test -f 'util/grub-mkimage64.c' || echo '$(srcdir)/'`util/grub-mkimage64.c - -util/grub_mknetdir-grub-mkimage64.obj: util/grub-mkimage64.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mknetdir_CPPFLAGS) $(CPPFLAGS) $(grub_mknetdir_CFLAGS) $(CFLAGS) -MT util/grub_mknetdir-grub-mkimage64.obj -MD -MP -MF util/$(DEPDIR)/grub_mknetdir-grub-mkimage64.Tpo -c -o util/grub_mknetdir-grub-mkimage64.obj `if test -f 'util/grub-mkimage64.c'; then $(CYGPATH_W) 'util/grub-mkimage64.c'; else $(CYGPATH_W) '$(srcdir)/util/grub-mkimage64.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_mknetdir-grub-mkimage64.Tpo util/$(DEPDIR)/grub_mknetdir-grub-mkimage64.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/grub-mkimage64.c' object='util/grub_mknetdir-grub-mkimage64.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mknetdir_CPPFLAGS) $(CPPFLAGS) $(grub_mknetdir_CFLAGS) $(CFLAGS) -c -o util/grub_mknetdir-grub-mkimage64.obj `if test -f 'util/grub-mkimage64.c'; then $(CYGPATH_W) 'util/grub-mkimage64.c'; else $(CYGPATH_W) '$(srcdir)/util/grub-mkimage64.c'; fi` - -util/grub_mknetdir-grub-install-common.o: util/grub-install-common.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mknetdir_CPPFLAGS) $(CPPFLAGS) $(grub_mknetdir_CFLAGS) $(CFLAGS) -MT util/grub_mknetdir-grub-install-common.o -MD -MP -MF util/$(DEPDIR)/grub_mknetdir-grub-install-common.Tpo -c -o util/grub_mknetdir-grub-install-common.o `test -f 'util/grub-install-common.c' || echo '$(srcdir)/'`util/grub-install-common.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_mknetdir-grub-install-common.Tpo util/$(DEPDIR)/grub_mknetdir-grub-install-common.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/grub-install-common.c' object='util/grub_mknetdir-grub-install-common.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mknetdir_CPPFLAGS) $(CPPFLAGS) $(grub_mknetdir_CFLAGS) $(CFLAGS) -c -o util/grub_mknetdir-grub-install-common.o `test -f 'util/grub-install-common.c' || echo '$(srcdir)/'`util/grub-install-common.c - -util/grub_mknetdir-grub-install-common.obj: util/grub-install-common.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mknetdir_CPPFLAGS) $(CPPFLAGS) $(grub_mknetdir_CFLAGS) $(CFLAGS) -MT util/grub_mknetdir-grub-install-common.obj -MD -MP -MF util/$(DEPDIR)/grub_mknetdir-grub-install-common.Tpo -c -o util/grub_mknetdir-grub-install-common.obj `if test -f 'util/grub-install-common.c'; then $(CYGPATH_W) 'util/grub-install-common.c'; else $(CYGPATH_W) '$(srcdir)/util/grub-install-common.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_mknetdir-grub-install-common.Tpo util/$(DEPDIR)/grub_mknetdir-grub-install-common.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/grub-install-common.c' object='util/grub_mknetdir-grub-install-common.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mknetdir_CPPFLAGS) $(CPPFLAGS) $(grub_mknetdir_CFLAGS) $(CFLAGS) -c -o util/grub_mknetdir-grub-install-common.obj `if test -f 'util/grub-install-common.c'; then $(CYGPATH_W) 'util/grub-install-common.c'; else $(CYGPATH_W) '$(srcdir)/util/grub-install-common.c'; fi` - -util/grub_mknetdir-setup_bios.o: util/setup_bios.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mknetdir_CPPFLAGS) $(CPPFLAGS) $(grub_mknetdir_CFLAGS) $(CFLAGS) -MT util/grub_mknetdir-setup_bios.o -MD -MP -MF util/$(DEPDIR)/grub_mknetdir-setup_bios.Tpo -c -o util/grub_mknetdir-setup_bios.o `test -f 'util/setup_bios.c' || echo '$(srcdir)/'`util/setup_bios.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_mknetdir-setup_bios.Tpo util/$(DEPDIR)/grub_mknetdir-setup_bios.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/setup_bios.c' object='util/grub_mknetdir-setup_bios.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mknetdir_CPPFLAGS) $(CPPFLAGS) $(grub_mknetdir_CFLAGS) $(CFLAGS) -c -o util/grub_mknetdir-setup_bios.o `test -f 'util/setup_bios.c' || echo '$(srcdir)/'`util/setup_bios.c - -util/grub_mknetdir-setup_bios.obj: util/setup_bios.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mknetdir_CPPFLAGS) $(CPPFLAGS) $(grub_mknetdir_CFLAGS) $(CFLAGS) -MT util/grub_mknetdir-setup_bios.obj -MD -MP -MF util/$(DEPDIR)/grub_mknetdir-setup_bios.Tpo -c -o util/grub_mknetdir-setup_bios.obj `if test -f 'util/setup_bios.c'; then $(CYGPATH_W) 'util/setup_bios.c'; else $(CYGPATH_W) '$(srcdir)/util/setup_bios.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_mknetdir-setup_bios.Tpo util/$(DEPDIR)/grub_mknetdir-setup_bios.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/setup_bios.c' object='util/grub_mknetdir-setup_bios.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mknetdir_CPPFLAGS) $(CPPFLAGS) $(grub_mknetdir_CFLAGS) $(CFLAGS) -c -o util/grub_mknetdir-setup_bios.obj `if test -f 'util/setup_bios.c'; then $(CYGPATH_W) 'util/setup_bios.c'; else $(CYGPATH_W) '$(srcdir)/util/setup_bios.c'; fi` - -util/grub_mknetdir-setup_sparc.o: util/setup_sparc.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mknetdir_CPPFLAGS) $(CPPFLAGS) $(grub_mknetdir_CFLAGS) $(CFLAGS) -MT util/grub_mknetdir-setup_sparc.o -MD -MP -MF util/$(DEPDIR)/grub_mknetdir-setup_sparc.Tpo -c -o util/grub_mknetdir-setup_sparc.o `test -f 'util/setup_sparc.c' || echo '$(srcdir)/'`util/setup_sparc.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_mknetdir-setup_sparc.Tpo util/$(DEPDIR)/grub_mknetdir-setup_sparc.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/setup_sparc.c' object='util/grub_mknetdir-setup_sparc.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mknetdir_CPPFLAGS) $(CPPFLAGS) $(grub_mknetdir_CFLAGS) $(CFLAGS) -c -o util/grub_mknetdir-setup_sparc.o `test -f 'util/setup_sparc.c' || echo '$(srcdir)/'`util/setup_sparc.c - -util/grub_mknetdir-setup_sparc.obj: util/setup_sparc.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mknetdir_CPPFLAGS) $(CPPFLAGS) $(grub_mknetdir_CFLAGS) $(CFLAGS) -MT util/grub_mknetdir-setup_sparc.obj -MD -MP -MF util/$(DEPDIR)/grub_mknetdir-setup_sparc.Tpo -c -o util/grub_mknetdir-setup_sparc.obj `if test -f 'util/setup_sparc.c'; then $(CYGPATH_W) 'util/setup_sparc.c'; else $(CYGPATH_W) '$(srcdir)/util/setup_sparc.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_mknetdir-setup_sparc.Tpo util/$(DEPDIR)/grub_mknetdir-setup_sparc.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/setup_sparc.c' object='util/grub_mknetdir-setup_sparc.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mknetdir_CPPFLAGS) $(CPPFLAGS) $(grub_mknetdir_CFLAGS) $(CFLAGS) -c -o util/grub_mknetdir-setup_sparc.obj `if test -f 'util/setup_sparc.c'; then $(CYGPATH_W) 'util/setup_sparc.c'; else $(CYGPATH_W) '$(srcdir)/util/setup_sparc.c'; fi` - -grub-core/lib/grub_mknetdir-reed_solomon.o: grub-core/lib/reed_solomon.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mknetdir_CPPFLAGS) $(CPPFLAGS) $(grub_mknetdir_CFLAGS) $(CFLAGS) -MT grub-core/lib/grub_mknetdir-reed_solomon.o -MD -MP -MF grub-core/lib/$(DEPDIR)/grub_mknetdir-reed_solomon.Tpo -c -o grub-core/lib/grub_mknetdir-reed_solomon.o `test -f 'grub-core/lib/reed_solomon.c' || echo '$(srcdir)/'`grub-core/lib/reed_solomon.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/lib/$(DEPDIR)/grub_mknetdir-reed_solomon.Tpo grub-core/lib/$(DEPDIR)/grub_mknetdir-reed_solomon.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/lib/reed_solomon.c' object='grub-core/lib/grub_mknetdir-reed_solomon.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mknetdir_CPPFLAGS) $(CPPFLAGS) $(grub_mknetdir_CFLAGS) $(CFLAGS) -c -o grub-core/lib/grub_mknetdir-reed_solomon.o `test -f 'grub-core/lib/reed_solomon.c' || echo '$(srcdir)/'`grub-core/lib/reed_solomon.c - -grub-core/lib/grub_mknetdir-reed_solomon.obj: grub-core/lib/reed_solomon.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mknetdir_CPPFLAGS) $(CPPFLAGS) $(grub_mknetdir_CFLAGS) $(CFLAGS) -MT grub-core/lib/grub_mknetdir-reed_solomon.obj -MD -MP -MF grub-core/lib/$(DEPDIR)/grub_mknetdir-reed_solomon.Tpo -c -o grub-core/lib/grub_mknetdir-reed_solomon.obj `if test -f 'grub-core/lib/reed_solomon.c'; then $(CYGPATH_W) 'grub-core/lib/reed_solomon.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/lib/reed_solomon.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/lib/$(DEPDIR)/grub_mknetdir-reed_solomon.Tpo grub-core/lib/$(DEPDIR)/grub_mknetdir-reed_solomon.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/lib/reed_solomon.c' object='grub-core/lib/grub_mknetdir-reed_solomon.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mknetdir_CPPFLAGS) $(CPPFLAGS) $(grub_mknetdir_CFLAGS) $(CFLAGS) -c -o grub-core/lib/grub_mknetdir-reed_solomon.obj `if test -f 'grub-core/lib/reed_solomon.c'; then $(CYGPATH_W) 'grub-core/lib/reed_solomon.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/lib/reed_solomon.c'; fi` - -grub-core/osdep/grub_mknetdir-random.o: grub-core/osdep/random.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mknetdir_CPPFLAGS) $(CPPFLAGS) $(grub_mknetdir_CFLAGS) $(CFLAGS) -MT grub-core/osdep/grub_mknetdir-random.o -MD -MP -MF grub-core/osdep/$(DEPDIR)/grub_mknetdir-random.Tpo -c -o grub-core/osdep/grub_mknetdir-random.o `test -f 'grub-core/osdep/random.c' || echo '$(srcdir)/'`grub-core/osdep/random.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/osdep/$(DEPDIR)/grub_mknetdir-random.Tpo grub-core/osdep/$(DEPDIR)/grub_mknetdir-random.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/osdep/random.c' object='grub-core/osdep/grub_mknetdir-random.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mknetdir_CPPFLAGS) $(CPPFLAGS) $(grub_mknetdir_CFLAGS) $(CFLAGS) -c -o grub-core/osdep/grub_mknetdir-random.o `test -f 'grub-core/osdep/random.c' || echo '$(srcdir)/'`grub-core/osdep/random.c - -grub-core/osdep/grub_mknetdir-random.obj: grub-core/osdep/random.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mknetdir_CPPFLAGS) $(CPPFLAGS) $(grub_mknetdir_CFLAGS) $(CFLAGS) -MT grub-core/osdep/grub_mknetdir-random.obj -MD -MP -MF grub-core/osdep/$(DEPDIR)/grub_mknetdir-random.Tpo -c -o grub-core/osdep/grub_mknetdir-random.obj `if test -f 'grub-core/osdep/random.c'; then $(CYGPATH_W) 'grub-core/osdep/random.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/osdep/random.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/osdep/$(DEPDIR)/grub_mknetdir-random.Tpo grub-core/osdep/$(DEPDIR)/grub_mknetdir-random.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/osdep/random.c' object='grub-core/osdep/grub_mknetdir-random.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mknetdir_CPPFLAGS) $(CPPFLAGS) $(grub_mknetdir_CFLAGS) $(CFLAGS) -c -o grub-core/osdep/grub_mknetdir-random.obj `if test -f 'grub-core/osdep/random.c'; then $(CYGPATH_W) 'grub-core/osdep/random.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/osdep/random.c'; fi` - -grub-core/osdep/grub_mknetdir-ofpath.o: grub-core/osdep/ofpath.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mknetdir_CPPFLAGS) $(CPPFLAGS) $(grub_mknetdir_CFLAGS) $(CFLAGS) -MT grub-core/osdep/grub_mknetdir-ofpath.o -MD -MP -MF grub-core/osdep/$(DEPDIR)/grub_mknetdir-ofpath.Tpo -c -o grub-core/osdep/grub_mknetdir-ofpath.o `test -f 'grub-core/osdep/ofpath.c' || echo '$(srcdir)/'`grub-core/osdep/ofpath.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/osdep/$(DEPDIR)/grub_mknetdir-ofpath.Tpo grub-core/osdep/$(DEPDIR)/grub_mknetdir-ofpath.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/osdep/ofpath.c' object='grub-core/osdep/grub_mknetdir-ofpath.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mknetdir_CPPFLAGS) $(CPPFLAGS) $(grub_mknetdir_CFLAGS) $(CFLAGS) -c -o grub-core/osdep/grub_mknetdir-ofpath.o `test -f 'grub-core/osdep/ofpath.c' || echo '$(srcdir)/'`grub-core/osdep/ofpath.c - -grub-core/osdep/grub_mknetdir-ofpath.obj: grub-core/osdep/ofpath.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mknetdir_CPPFLAGS) $(CPPFLAGS) $(grub_mknetdir_CFLAGS) $(CFLAGS) -MT grub-core/osdep/grub_mknetdir-ofpath.obj -MD -MP -MF grub-core/osdep/$(DEPDIR)/grub_mknetdir-ofpath.Tpo -c -o grub-core/osdep/grub_mknetdir-ofpath.obj `if test -f 'grub-core/osdep/ofpath.c'; then $(CYGPATH_W) 'grub-core/osdep/ofpath.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/osdep/ofpath.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/osdep/$(DEPDIR)/grub_mknetdir-ofpath.Tpo grub-core/osdep/$(DEPDIR)/grub_mknetdir-ofpath.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/osdep/ofpath.c' object='grub-core/osdep/grub_mknetdir-ofpath.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mknetdir_CPPFLAGS) $(CPPFLAGS) $(grub_mknetdir_CFLAGS) $(CFLAGS) -c -o grub-core/osdep/grub_mknetdir-ofpath.obj `if test -f 'grub-core/osdep/ofpath.c'; then $(CYGPATH_W) 'grub-core/osdep/ofpath.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/osdep/ofpath.c'; fi` - -grub-core/osdep/grub_mknetdir-platform.o: grub-core/osdep/platform.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mknetdir_CPPFLAGS) $(CPPFLAGS) $(grub_mknetdir_CFLAGS) $(CFLAGS) -MT grub-core/osdep/grub_mknetdir-platform.o -MD -MP -MF grub-core/osdep/$(DEPDIR)/grub_mknetdir-platform.Tpo -c -o grub-core/osdep/grub_mknetdir-platform.o `test -f 'grub-core/osdep/platform.c' || echo '$(srcdir)/'`grub-core/osdep/platform.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/osdep/$(DEPDIR)/grub_mknetdir-platform.Tpo grub-core/osdep/$(DEPDIR)/grub_mknetdir-platform.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/osdep/platform.c' object='grub-core/osdep/grub_mknetdir-platform.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mknetdir_CPPFLAGS) $(CPPFLAGS) $(grub_mknetdir_CFLAGS) $(CFLAGS) -c -o grub-core/osdep/grub_mknetdir-platform.o `test -f 'grub-core/osdep/platform.c' || echo '$(srcdir)/'`grub-core/osdep/platform.c - -grub-core/osdep/grub_mknetdir-platform.obj: grub-core/osdep/platform.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mknetdir_CPPFLAGS) $(CPPFLAGS) $(grub_mknetdir_CFLAGS) $(CFLAGS) -MT grub-core/osdep/grub_mknetdir-platform.obj -MD -MP -MF grub-core/osdep/$(DEPDIR)/grub_mknetdir-platform.Tpo -c -o grub-core/osdep/grub_mknetdir-platform.obj `if test -f 'grub-core/osdep/platform.c'; then $(CYGPATH_W) 'grub-core/osdep/platform.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/osdep/platform.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/osdep/$(DEPDIR)/grub_mknetdir-platform.Tpo grub-core/osdep/$(DEPDIR)/grub_mknetdir-platform.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/osdep/platform.c' object='grub-core/osdep/grub_mknetdir-platform.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mknetdir_CPPFLAGS) $(CPPFLAGS) $(grub_mknetdir_CFLAGS) $(CFLAGS) -c -o grub-core/osdep/grub_mknetdir-platform.obj `if test -f 'grub-core/osdep/platform.c'; then $(CYGPATH_W) 'grub-core/osdep/platform.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/osdep/platform.c'; fi` - -grub-core/osdep/grub_mknetdir-platform_unix.o: grub-core/osdep/platform_unix.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mknetdir_CPPFLAGS) $(CPPFLAGS) $(grub_mknetdir_CFLAGS) $(CFLAGS) -MT grub-core/osdep/grub_mknetdir-platform_unix.o -MD -MP -MF grub-core/osdep/$(DEPDIR)/grub_mknetdir-platform_unix.Tpo -c -o grub-core/osdep/grub_mknetdir-platform_unix.o `test -f 'grub-core/osdep/platform_unix.c' || echo '$(srcdir)/'`grub-core/osdep/platform_unix.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/osdep/$(DEPDIR)/grub_mknetdir-platform_unix.Tpo grub-core/osdep/$(DEPDIR)/grub_mknetdir-platform_unix.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/osdep/platform_unix.c' object='grub-core/osdep/grub_mknetdir-platform_unix.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mknetdir_CPPFLAGS) $(CPPFLAGS) $(grub_mknetdir_CFLAGS) $(CFLAGS) -c -o grub-core/osdep/grub_mknetdir-platform_unix.o `test -f 'grub-core/osdep/platform_unix.c' || echo '$(srcdir)/'`grub-core/osdep/platform_unix.c - -grub-core/osdep/grub_mknetdir-platform_unix.obj: grub-core/osdep/platform_unix.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mknetdir_CPPFLAGS) $(CPPFLAGS) $(grub_mknetdir_CFLAGS) $(CFLAGS) -MT grub-core/osdep/grub_mknetdir-platform_unix.obj -MD -MP -MF grub-core/osdep/$(DEPDIR)/grub_mknetdir-platform_unix.Tpo -c -o grub-core/osdep/grub_mknetdir-platform_unix.obj `if test -f 'grub-core/osdep/platform_unix.c'; then $(CYGPATH_W) 'grub-core/osdep/platform_unix.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/osdep/platform_unix.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/osdep/$(DEPDIR)/grub_mknetdir-platform_unix.Tpo grub-core/osdep/$(DEPDIR)/grub_mknetdir-platform_unix.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/osdep/platform_unix.c' object='grub-core/osdep/grub_mknetdir-platform_unix.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mknetdir_CPPFLAGS) $(CPPFLAGS) $(grub_mknetdir_CFLAGS) $(CFLAGS) -c -o grub-core/osdep/grub_mknetdir-platform_unix.obj `if test -f 'grub-core/osdep/platform_unix.c'; then $(CYGPATH_W) 'grub-core/osdep/platform_unix.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/osdep/platform_unix.c'; fi` - -grub-core/osdep/grub_mknetdir-compress.o: grub-core/osdep/compress.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mknetdir_CPPFLAGS) $(CPPFLAGS) $(grub_mknetdir_CFLAGS) $(CFLAGS) -MT grub-core/osdep/grub_mknetdir-compress.o -MD -MP -MF grub-core/osdep/$(DEPDIR)/grub_mknetdir-compress.Tpo -c -o grub-core/osdep/grub_mknetdir-compress.o `test -f 'grub-core/osdep/compress.c' || echo '$(srcdir)/'`grub-core/osdep/compress.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/osdep/$(DEPDIR)/grub_mknetdir-compress.Tpo grub-core/osdep/$(DEPDIR)/grub_mknetdir-compress.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/osdep/compress.c' object='grub-core/osdep/grub_mknetdir-compress.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mknetdir_CPPFLAGS) $(CPPFLAGS) $(grub_mknetdir_CFLAGS) $(CFLAGS) -c -o grub-core/osdep/grub_mknetdir-compress.o `test -f 'grub-core/osdep/compress.c' || echo '$(srcdir)/'`grub-core/osdep/compress.c - -grub-core/osdep/grub_mknetdir-compress.obj: grub-core/osdep/compress.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mknetdir_CPPFLAGS) $(CPPFLAGS) $(grub_mknetdir_CFLAGS) $(CFLAGS) -MT grub-core/osdep/grub_mknetdir-compress.obj -MD -MP -MF grub-core/osdep/$(DEPDIR)/grub_mknetdir-compress.Tpo -c -o grub-core/osdep/grub_mknetdir-compress.obj `if test -f 'grub-core/osdep/compress.c'; then $(CYGPATH_W) 'grub-core/osdep/compress.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/osdep/compress.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/osdep/$(DEPDIR)/grub_mknetdir-compress.Tpo grub-core/osdep/$(DEPDIR)/grub_mknetdir-compress.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/osdep/compress.c' object='grub-core/osdep/grub_mknetdir-compress.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mknetdir_CPPFLAGS) $(CPPFLAGS) $(grub_mknetdir_CFLAGS) $(CFLAGS) -c -o grub-core/osdep/grub_mknetdir-compress.obj `if test -f 'grub-core/osdep/compress.c'; then $(CYGPATH_W) 'grub-core/osdep/compress.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/osdep/compress.c'; fi` - -util/grub_mknetdir-editenv.o: util/editenv.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mknetdir_CPPFLAGS) $(CPPFLAGS) $(grub_mknetdir_CFLAGS) $(CFLAGS) -MT util/grub_mknetdir-editenv.o -MD -MP -MF util/$(DEPDIR)/grub_mknetdir-editenv.Tpo -c -o util/grub_mknetdir-editenv.o `test -f 'util/editenv.c' || echo '$(srcdir)/'`util/editenv.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_mknetdir-editenv.Tpo util/$(DEPDIR)/grub_mknetdir-editenv.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/editenv.c' object='util/grub_mknetdir-editenv.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mknetdir_CPPFLAGS) $(CPPFLAGS) $(grub_mknetdir_CFLAGS) $(CFLAGS) -c -o util/grub_mknetdir-editenv.o `test -f 'util/editenv.c' || echo '$(srcdir)/'`util/editenv.c - -util/grub_mknetdir-editenv.obj: util/editenv.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mknetdir_CPPFLAGS) $(CPPFLAGS) $(grub_mknetdir_CFLAGS) $(CFLAGS) -MT util/grub_mknetdir-editenv.obj -MD -MP -MF util/$(DEPDIR)/grub_mknetdir-editenv.Tpo -c -o util/grub_mknetdir-editenv.obj `if test -f 'util/editenv.c'; then $(CYGPATH_W) 'util/editenv.c'; else $(CYGPATH_W) '$(srcdir)/util/editenv.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_mknetdir-editenv.Tpo util/$(DEPDIR)/grub_mknetdir-editenv.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/editenv.c' object='util/grub_mknetdir-editenv.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mknetdir_CPPFLAGS) $(CPPFLAGS) $(grub_mknetdir_CFLAGS) $(CFLAGS) -c -o util/grub_mknetdir-editenv.obj `if test -f 'util/editenv.c'; then $(CYGPATH_W) 'util/editenv.c'; else $(CYGPATH_W) '$(srcdir)/util/editenv.c'; fi` - -grub-core/osdep/grub_mknetdir-blocklist.o: grub-core/osdep/blocklist.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mknetdir_CPPFLAGS) $(CPPFLAGS) $(grub_mknetdir_CFLAGS) $(CFLAGS) -MT grub-core/osdep/grub_mknetdir-blocklist.o -MD -MP -MF grub-core/osdep/$(DEPDIR)/grub_mknetdir-blocklist.Tpo -c -o grub-core/osdep/grub_mknetdir-blocklist.o `test -f 'grub-core/osdep/blocklist.c' || echo '$(srcdir)/'`grub-core/osdep/blocklist.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/osdep/$(DEPDIR)/grub_mknetdir-blocklist.Tpo grub-core/osdep/$(DEPDIR)/grub_mknetdir-blocklist.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/osdep/blocklist.c' object='grub-core/osdep/grub_mknetdir-blocklist.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mknetdir_CPPFLAGS) $(CPPFLAGS) $(grub_mknetdir_CFLAGS) $(CFLAGS) -c -o grub-core/osdep/grub_mknetdir-blocklist.o `test -f 'grub-core/osdep/blocklist.c' || echo '$(srcdir)/'`grub-core/osdep/blocklist.c - -grub-core/osdep/grub_mknetdir-blocklist.obj: grub-core/osdep/blocklist.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mknetdir_CPPFLAGS) $(CPPFLAGS) $(grub_mknetdir_CFLAGS) $(CFLAGS) -MT grub-core/osdep/grub_mknetdir-blocklist.obj -MD -MP -MF grub-core/osdep/$(DEPDIR)/grub_mknetdir-blocklist.Tpo -c -o grub-core/osdep/grub_mknetdir-blocklist.obj `if test -f 'grub-core/osdep/blocklist.c'; then $(CYGPATH_W) 'grub-core/osdep/blocklist.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/osdep/blocklist.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/osdep/$(DEPDIR)/grub_mknetdir-blocklist.Tpo grub-core/osdep/$(DEPDIR)/grub_mknetdir-blocklist.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/osdep/blocklist.c' object='grub-core/osdep/grub_mknetdir-blocklist.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mknetdir_CPPFLAGS) $(CPPFLAGS) $(grub_mknetdir_CFLAGS) $(CFLAGS) -c -o grub-core/osdep/grub_mknetdir-blocklist.obj `if test -f 'grub-core/osdep/blocklist.c'; then $(CYGPATH_W) 'grub-core/osdep/blocklist.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/osdep/blocklist.c'; fi` - -grub-core/osdep/grub_mknetdir-config.o: grub-core/osdep/config.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mknetdir_CPPFLAGS) $(CPPFLAGS) $(grub_mknetdir_CFLAGS) $(CFLAGS) -MT grub-core/osdep/grub_mknetdir-config.o -MD -MP -MF grub-core/osdep/$(DEPDIR)/grub_mknetdir-config.Tpo -c -o grub-core/osdep/grub_mknetdir-config.o `test -f 'grub-core/osdep/config.c' || echo '$(srcdir)/'`grub-core/osdep/config.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/osdep/$(DEPDIR)/grub_mknetdir-config.Tpo grub-core/osdep/$(DEPDIR)/grub_mknetdir-config.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/osdep/config.c' object='grub-core/osdep/grub_mknetdir-config.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mknetdir_CPPFLAGS) $(CPPFLAGS) $(grub_mknetdir_CFLAGS) $(CFLAGS) -c -o grub-core/osdep/grub_mknetdir-config.o `test -f 'grub-core/osdep/config.c' || echo '$(srcdir)/'`grub-core/osdep/config.c - -grub-core/osdep/grub_mknetdir-config.obj: grub-core/osdep/config.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mknetdir_CPPFLAGS) $(CPPFLAGS) $(grub_mknetdir_CFLAGS) $(CFLAGS) -MT grub-core/osdep/grub_mknetdir-config.obj -MD -MP -MF grub-core/osdep/$(DEPDIR)/grub_mknetdir-config.Tpo -c -o grub-core/osdep/grub_mknetdir-config.obj `if test -f 'grub-core/osdep/config.c'; then $(CYGPATH_W) 'grub-core/osdep/config.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/osdep/config.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/osdep/$(DEPDIR)/grub_mknetdir-config.Tpo grub-core/osdep/$(DEPDIR)/grub_mknetdir-config.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/osdep/config.c' object='grub-core/osdep/grub_mknetdir-config.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mknetdir_CPPFLAGS) $(CPPFLAGS) $(grub_mknetdir_CFLAGS) $(CFLAGS) -c -o grub-core/osdep/grub_mknetdir-config.obj `if test -f 'grub-core/osdep/config.c'; then $(CYGPATH_W) 'grub-core/osdep/config.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/osdep/config.c'; fi` - -util/grub_mknetdir-config.o: util/config.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mknetdir_CPPFLAGS) $(CPPFLAGS) $(grub_mknetdir_CFLAGS) $(CFLAGS) -MT util/grub_mknetdir-config.o -MD -MP -MF util/$(DEPDIR)/grub_mknetdir-config.Tpo -c -o util/grub_mknetdir-config.o `test -f 'util/config.c' || echo '$(srcdir)/'`util/config.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_mknetdir-config.Tpo util/$(DEPDIR)/grub_mknetdir-config.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/config.c' object='util/grub_mknetdir-config.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mknetdir_CPPFLAGS) $(CPPFLAGS) $(grub_mknetdir_CFLAGS) $(CFLAGS) -c -o util/grub_mknetdir-config.o `test -f 'util/config.c' || echo '$(srcdir)/'`util/config.c - -util/grub_mknetdir-config.obj: util/config.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mknetdir_CPPFLAGS) $(CPPFLAGS) $(grub_mknetdir_CFLAGS) $(CFLAGS) -MT util/grub_mknetdir-config.obj -MD -MP -MF util/$(DEPDIR)/grub_mknetdir-config.Tpo -c -o util/grub_mknetdir-config.obj `if test -f 'util/config.c'; then $(CYGPATH_W) 'util/config.c'; else $(CYGPATH_W) '$(srcdir)/util/config.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_mknetdir-config.Tpo util/$(DEPDIR)/grub_mknetdir-config.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/config.c' object='util/grub_mknetdir-config.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mknetdir_CPPFLAGS) $(CPPFLAGS) $(grub_mknetdir_CFLAGS) $(CFLAGS) -c -o util/grub_mknetdir-config.obj `if test -f 'util/config.c'; then $(CYGPATH_W) 'util/config.c'; else $(CYGPATH_W) '$(srcdir)/util/config.c'; fi` - -util/grub_mknetdir-resolve.o: util/resolve.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mknetdir_CPPFLAGS) $(CPPFLAGS) $(grub_mknetdir_CFLAGS) $(CFLAGS) -MT util/grub_mknetdir-resolve.o -MD -MP -MF util/$(DEPDIR)/grub_mknetdir-resolve.Tpo -c -o util/grub_mknetdir-resolve.o `test -f 'util/resolve.c' || echo '$(srcdir)/'`util/resolve.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_mknetdir-resolve.Tpo util/$(DEPDIR)/grub_mknetdir-resolve.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/resolve.c' object='util/grub_mknetdir-resolve.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mknetdir_CPPFLAGS) $(CPPFLAGS) $(grub_mknetdir_CFLAGS) $(CFLAGS) -c -o util/grub_mknetdir-resolve.o `test -f 'util/resolve.c' || echo '$(srcdir)/'`util/resolve.c - -util/grub_mknetdir-resolve.obj: util/resolve.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mknetdir_CPPFLAGS) $(CPPFLAGS) $(grub_mknetdir_CFLAGS) $(CFLAGS) -MT util/grub_mknetdir-resolve.obj -MD -MP -MF util/$(DEPDIR)/grub_mknetdir-resolve.Tpo -c -o util/grub_mknetdir-resolve.obj `if test -f 'util/resolve.c'; then $(CYGPATH_W) 'util/resolve.c'; else $(CYGPATH_W) '$(srcdir)/util/resolve.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_mknetdir-resolve.Tpo util/$(DEPDIR)/grub_mknetdir-resolve.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/resolve.c' object='util/grub_mknetdir-resolve.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mknetdir_CPPFLAGS) $(CPPFLAGS) $(grub_mknetdir_CFLAGS) $(CFLAGS) -c -o util/grub_mknetdir-resolve.obj `if test -f 'util/resolve.c'; then $(CYGPATH_W) 'util/resolve.c'; else $(CYGPATH_W) '$(srcdir)/util/resolve.c'; fi` - -grub-core/kern/emu/grub_mknetdir-argp_common.o: grub-core/kern/emu/argp_common.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mknetdir_CPPFLAGS) $(CPPFLAGS) $(grub_mknetdir_CFLAGS) $(CFLAGS) -MT grub-core/kern/emu/grub_mknetdir-argp_common.o -MD -MP -MF grub-core/kern/emu/$(DEPDIR)/grub_mknetdir-argp_common.Tpo -c -o grub-core/kern/emu/grub_mknetdir-argp_common.o `test -f 'grub-core/kern/emu/argp_common.c' || echo '$(srcdir)/'`grub-core/kern/emu/argp_common.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/kern/emu/$(DEPDIR)/grub_mknetdir-argp_common.Tpo grub-core/kern/emu/$(DEPDIR)/grub_mknetdir-argp_common.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/kern/emu/argp_common.c' object='grub-core/kern/emu/grub_mknetdir-argp_common.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mknetdir_CPPFLAGS) $(CPPFLAGS) $(grub_mknetdir_CFLAGS) $(CFLAGS) -c -o grub-core/kern/emu/grub_mknetdir-argp_common.o `test -f 'grub-core/kern/emu/argp_common.c' || echo '$(srcdir)/'`grub-core/kern/emu/argp_common.c - -grub-core/kern/emu/grub_mknetdir-argp_common.obj: grub-core/kern/emu/argp_common.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mknetdir_CPPFLAGS) $(CPPFLAGS) $(grub_mknetdir_CFLAGS) $(CFLAGS) -MT grub-core/kern/emu/grub_mknetdir-argp_common.obj -MD -MP -MF grub-core/kern/emu/$(DEPDIR)/grub_mknetdir-argp_common.Tpo -c -o grub-core/kern/emu/grub_mknetdir-argp_common.obj `if test -f 'grub-core/kern/emu/argp_common.c'; then $(CYGPATH_W) 'grub-core/kern/emu/argp_common.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/kern/emu/argp_common.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/kern/emu/$(DEPDIR)/grub_mknetdir-argp_common.Tpo grub-core/kern/emu/$(DEPDIR)/grub_mknetdir-argp_common.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/kern/emu/argp_common.c' object='grub-core/kern/emu/grub_mknetdir-argp_common.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mknetdir_CPPFLAGS) $(CPPFLAGS) $(grub_mknetdir_CFLAGS) $(CFLAGS) -c -o grub-core/kern/emu/grub_mknetdir-argp_common.obj `if test -f 'grub-core/kern/emu/argp_common.c'; then $(CYGPATH_W) 'grub-core/kern/emu/argp_common.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/kern/emu/argp_common.c'; fi` - -grub-core/osdep/grub_mknetdir-init.o: grub-core/osdep/init.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mknetdir_CPPFLAGS) $(CPPFLAGS) $(grub_mknetdir_CFLAGS) $(CFLAGS) -MT grub-core/osdep/grub_mknetdir-init.o -MD -MP -MF grub-core/osdep/$(DEPDIR)/grub_mknetdir-init.Tpo -c -o grub-core/osdep/grub_mknetdir-init.o `test -f 'grub-core/osdep/init.c' || echo '$(srcdir)/'`grub-core/osdep/init.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/osdep/$(DEPDIR)/grub_mknetdir-init.Tpo grub-core/osdep/$(DEPDIR)/grub_mknetdir-init.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/osdep/init.c' object='grub-core/osdep/grub_mknetdir-init.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mknetdir_CPPFLAGS) $(CPPFLAGS) $(grub_mknetdir_CFLAGS) $(CFLAGS) -c -o grub-core/osdep/grub_mknetdir-init.o `test -f 'grub-core/osdep/init.c' || echo '$(srcdir)/'`grub-core/osdep/init.c - -grub-core/osdep/grub_mknetdir-init.obj: grub-core/osdep/init.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mknetdir_CPPFLAGS) $(CPPFLAGS) $(grub_mknetdir_CFLAGS) $(CFLAGS) -MT grub-core/osdep/grub_mknetdir-init.obj -MD -MP -MF grub-core/osdep/$(DEPDIR)/grub_mknetdir-init.Tpo -c -o grub-core/osdep/grub_mknetdir-init.obj `if test -f 'grub-core/osdep/init.c'; then $(CYGPATH_W) 'grub-core/osdep/init.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/osdep/init.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/osdep/$(DEPDIR)/grub_mknetdir-init.Tpo grub-core/osdep/$(DEPDIR)/grub_mknetdir-init.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/osdep/init.c' object='grub-core/osdep/grub_mknetdir-init.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mknetdir_CPPFLAGS) $(CPPFLAGS) $(grub_mknetdir_CFLAGS) $(CFLAGS) -c -o grub-core/osdep/grub_mknetdir-init.obj `if test -f 'grub-core/osdep/init.c'; then $(CYGPATH_W) 'grub-core/osdep/init.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/osdep/init.c'; fi` - -util/grub_mkpasswd_pbkdf2-grub-mkpasswd-pbkdf2.o: util/grub-mkpasswd-pbkdf2.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkpasswd_pbkdf2_CPPFLAGS) $(CPPFLAGS) $(grub_mkpasswd_pbkdf2_CFLAGS) $(CFLAGS) -MT util/grub_mkpasswd_pbkdf2-grub-mkpasswd-pbkdf2.o -MD -MP -MF util/$(DEPDIR)/grub_mkpasswd_pbkdf2-grub-mkpasswd-pbkdf2.Tpo -c -o util/grub_mkpasswd_pbkdf2-grub-mkpasswd-pbkdf2.o `test -f 'util/grub-mkpasswd-pbkdf2.c' || echo '$(srcdir)/'`util/grub-mkpasswd-pbkdf2.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_mkpasswd_pbkdf2-grub-mkpasswd-pbkdf2.Tpo util/$(DEPDIR)/grub_mkpasswd_pbkdf2-grub-mkpasswd-pbkdf2.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/grub-mkpasswd-pbkdf2.c' object='util/grub_mkpasswd_pbkdf2-grub-mkpasswd-pbkdf2.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkpasswd_pbkdf2_CPPFLAGS) $(CPPFLAGS) $(grub_mkpasswd_pbkdf2_CFLAGS) $(CFLAGS) -c -o util/grub_mkpasswd_pbkdf2-grub-mkpasswd-pbkdf2.o `test -f 'util/grub-mkpasswd-pbkdf2.c' || echo '$(srcdir)/'`util/grub-mkpasswd-pbkdf2.c - -util/grub_mkpasswd_pbkdf2-grub-mkpasswd-pbkdf2.obj: util/grub-mkpasswd-pbkdf2.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkpasswd_pbkdf2_CPPFLAGS) $(CPPFLAGS) $(grub_mkpasswd_pbkdf2_CFLAGS) $(CFLAGS) -MT util/grub_mkpasswd_pbkdf2-grub-mkpasswd-pbkdf2.obj -MD -MP -MF util/$(DEPDIR)/grub_mkpasswd_pbkdf2-grub-mkpasswd-pbkdf2.Tpo -c -o util/grub_mkpasswd_pbkdf2-grub-mkpasswd-pbkdf2.obj `if test -f 'util/grub-mkpasswd-pbkdf2.c'; then $(CYGPATH_W) 'util/grub-mkpasswd-pbkdf2.c'; else $(CYGPATH_W) '$(srcdir)/util/grub-mkpasswd-pbkdf2.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_mkpasswd_pbkdf2-grub-mkpasswd-pbkdf2.Tpo util/$(DEPDIR)/grub_mkpasswd_pbkdf2-grub-mkpasswd-pbkdf2.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/grub-mkpasswd-pbkdf2.c' object='util/grub_mkpasswd_pbkdf2-grub-mkpasswd-pbkdf2.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkpasswd_pbkdf2_CPPFLAGS) $(CPPFLAGS) $(grub_mkpasswd_pbkdf2_CFLAGS) $(CFLAGS) -c -o util/grub_mkpasswd_pbkdf2-grub-mkpasswd-pbkdf2.obj `if test -f 'util/grub-mkpasswd-pbkdf2.c'; then $(CYGPATH_W) 'util/grub-mkpasswd-pbkdf2.c'; else $(CYGPATH_W) '$(srcdir)/util/grub-mkpasswd-pbkdf2.c'; fi` - -grub-core/kern/emu/grub_mkpasswd_pbkdf2-argp_common.o: grub-core/kern/emu/argp_common.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkpasswd_pbkdf2_CPPFLAGS) $(CPPFLAGS) $(grub_mkpasswd_pbkdf2_CFLAGS) $(CFLAGS) -MT grub-core/kern/emu/grub_mkpasswd_pbkdf2-argp_common.o -MD -MP -MF grub-core/kern/emu/$(DEPDIR)/grub_mkpasswd_pbkdf2-argp_common.Tpo -c -o grub-core/kern/emu/grub_mkpasswd_pbkdf2-argp_common.o `test -f 'grub-core/kern/emu/argp_common.c' || echo '$(srcdir)/'`grub-core/kern/emu/argp_common.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/kern/emu/$(DEPDIR)/grub_mkpasswd_pbkdf2-argp_common.Tpo grub-core/kern/emu/$(DEPDIR)/grub_mkpasswd_pbkdf2-argp_common.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/kern/emu/argp_common.c' object='grub-core/kern/emu/grub_mkpasswd_pbkdf2-argp_common.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkpasswd_pbkdf2_CPPFLAGS) $(CPPFLAGS) $(grub_mkpasswd_pbkdf2_CFLAGS) $(CFLAGS) -c -o grub-core/kern/emu/grub_mkpasswd_pbkdf2-argp_common.o `test -f 'grub-core/kern/emu/argp_common.c' || echo '$(srcdir)/'`grub-core/kern/emu/argp_common.c - -grub-core/kern/emu/grub_mkpasswd_pbkdf2-argp_common.obj: grub-core/kern/emu/argp_common.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkpasswd_pbkdf2_CPPFLAGS) $(CPPFLAGS) $(grub_mkpasswd_pbkdf2_CFLAGS) $(CFLAGS) -MT grub-core/kern/emu/grub_mkpasswd_pbkdf2-argp_common.obj -MD -MP -MF grub-core/kern/emu/$(DEPDIR)/grub_mkpasswd_pbkdf2-argp_common.Tpo -c -o grub-core/kern/emu/grub_mkpasswd_pbkdf2-argp_common.obj `if test -f 'grub-core/kern/emu/argp_common.c'; then $(CYGPATH_W) 'grub-core/kern/emu/argp_common.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/kern/emu/argp_common.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/kern/emu/$(DEPDIR)/grub_mkpasswd_pbkdf2-argp_common.Tpo grub-core/kern/emu/$(DEPDIR)/grub_mkpasswd_pbkdf2-argp_common.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/kern/emu/argp_common.c' object='grub-core/kern/emu/grub_mkpasswd_pbkdf2-argp_common.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkpasswd_pbkdf2_CPPFLAGS) $(CPPFLAGS) $(grub_mkpasswd_pbkdf2_CFLAGS) $(CFLAGS) -c -o grub-core/kern/emu/grub_mkpasswd_pbkdf2-argp_common.obj `if test -f 'grub-core/kern/emu/argp_common.c'; then $(CYGPATH_W) 'grub-core/kern/emu/argp_common.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/kern/emu/argp_common.c'; fi` - -grub-core/osdep/grub_mkpasswd_pbkdf2-random.o: grub-core/osdep/random.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkpasswd_pbkdf2_CPPFLAGS) $(CPPFLAGS) $(grub_mkpasswd_pbkdf2_CFLAGS) $(CFLAGS) -MT grub-core/osdep/grub_mkpasswd_pbkdf2-random.o -MD -MP -MF grub-core/osdep/$(DEPDIR)/grub_mkpasswd_pbkdf2-random.Tpo -c -o grub-core/osdep/grub_mkpasswd_pbkdf2-random.o `test -f 'grub-core/osdep/random.c' || echo '$(srcdir)/'`grub-core/osdep/random.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/osdep/$(DEPDIR)/grub_mkpasswd_pbkdf2-random.Tpo grub-core/osdep/$(DEPDIR)/grub_mkpasswd_pbkdf2-random.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/osdep/random.c' object='grub-core/osdep/grub_mkpasswd_pbkdf2-random.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkpasswd_pbkdf2_CPPFLAGS) $(CPPFLAGS) $(grub_mkpasswd_pbkdf2_CFLAGS) $(CFLAGS) -c -o grub-core/osdep/grub_mkpasswd_pbkdf2-random.o `test -f 'grub-core/osdep/random.c' || echo '$(srcdir)/'`grub-core/osdep/random.c - -grub-core/osdep/grub_mkpasswd_pbkdf2-random.obj: grub-core/osdep/random.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkpasswd_pbkdf2_CPPFLAGS) $(CPPFLAGS) $(grub_mkpasswd_pbkdf2_CFLAGS) $(CFLAGS) -MT grub-core/osdep/grub_mkpasswd_pbkdf2-random.obj -MD -MP -MF grub-core/osdep/$(DEPDIR)/grub_mkpasswd_pbkdf2-random.Tpo -c -o grub-core/osdep/grub_mkpasswd_pbkdf2-random.obj `if test -f 'grub-core/osdep/random.c'; then $(CYGPATH_W) 'grub-core/osdep/random.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/osdep/random.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/osdep/$(DEPDIR)/grub_mkpasswd_pbkdf2-random.Tpo grub-core/osdep/$(DEPDIR)/grub_mkpasswd_pbkdf2-random.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/osdep/random.c' object='grub-core/osdep/grub_mkpasswd_pbkdf2-random.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkpasswd_pbkdf2_CPPFLAGS) $(CPPFLAGS) $(grub_mkpasswd_pbkdf2_CFLAGS) $(CFLAGS) -c -o grub-core/osdep/grub_mkpasswd_pbkdf2-random.obj `if test -f 'grub-core/osdep/random.c'; then $(CYGPATH_W) 'grub-core/osdep/random.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/osdep/random.c'; fi` - -grub-core/osdep/grub_mkpasswd_pbkdf2-init.o: grub-core/osdep/init.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkpasswd_pbkdf2_CPPFLAGS) $(CPPFLAGS) $(grub_mkpasswd_pbkdf2_CFLAGS) $(CFLAGS) -MT grub-core/osdep/grub_mkpasswd_pbkdf2-init.o -MD -MP -MF grub-core/osdep/$(DEPDIR)/grub_mkpasswd_pbkdf2-init.Tpo -c -o grub-core/osdep/grub_mkpasswd_pbkdf2-init.o `test -f 'grub-core/osdep/init.c' || echo '$(srcdir)/'`grub-core/osdep/init.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/osdep/$(DEPDIR)/grub_mkpasswd_pbkdf2-init.Tpo grub-core/osdep/$(DEPDIR)/grub_mkpasswd_pbkdf2-init.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/osdep/init.c' object='grub-core/osdep/grub_mkpasswd_pbkdf2-init.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkpasswd_pbkdf2_CPPFLAGS) $(CPPFLAGS) $(grub_mkpasswd_pbkdf2_CFLAGS) $(CFLAGS) -c -o grub-core/osdep/grub_mkpasswd_pbkdf2-init.o `test -f 'grub-core/osdep/init.c' || echo '$(srcdir)/'`grub-core/osdep/init.c - -grub-core/osdep/grub_mkpasswd_pbkdf2-init.obj: grub-core/osdep/init.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkpasswd_pbkdf2_CPPFLAGS) $(CPPFLAGS) $(grub_mkpasswd_pbkdf2_CFLAGS) $(CFLAGS) -MT grub-core/osdep/grub_mkpasswd_pbkdf2-init.obj -MD -MP -MF grub-core/osdep/$(DEPDIR)/grub_mkpasswd_pbkdf2-init.Tpo -c -o grub-core/osdep/grub_mkpasswd_pbkdf2-init.obj `if test -f 'grub-core/osdep/init.c'; then $(CYGPATH_W) 'grub-core/osdep/init.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/osdep/init.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/osdep/$(DEPDIR)/grub_mkpasswd_pbkdf2-init.Tpo grub-core/osdep/$(DEPDIR)/grub_mkpasswd_pbkdf2-init.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/osdep/init.c' object='grub-core/osdep/grub_mkpasswd_pbkdf2-init.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkpasswd_pbkdf2_CPPFLAGS) $(CPPFLAGS) $(grub_mkpasswd_pbkdf2_CFLAGS) $(CFLAGS) -c -o grub-core/osdep/grub_mkpasswd_pbkdf2-init.obj `if test -f 'grub-core/osdep/init.c'; then $(CYGPATH_W) 'grub-core/osdep/init.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/osdep/init.c'; fi` - -util/grub_mkrelpath-grub-mkrelpath.o: util/grub-mkrelpath.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkrelpath_CPPFLAGS) $(CPPFLAGS) $(grub_mkrelpath_CFLAGS) $(CFLAGS) -MT util/grub_mkrelpath-grub-mkrelpath.o -MD -MP -MF util/$(DEPDIR)/grub_mkrelpath-grub-mkrelpath.Tpo -c -o util/grub_mkrelpath-grub-mkrelpath.o `test -f 'util/grub-mkrelpath.c' || echo '$(srcdir)/'`util/grub-mkrelpath.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_mkrelpath-grub-mkrelpath.Tpo util/$(DEPDIR)/grub_mkrelpath-grub-mkrelpath.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/grub-mkrelpath.c' object='util/grub_mkrelpath-grub-mkrelpath.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkrelpath_CPPFLAGS) $(CPPFLAGS) $(grub_mkrelpath_CFLAGS) $(CFLAGS) -c -o util/grub_mkrelpath-grub-mkrelpath.o `test -f 'util/grub-mkrelpath.c' || echo '$(srcdir)/'`util/grub-mkrelpath.c - -util/grub_mkrelpath-grub-mkrelpath.obj: util/grub-mkrelpath.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkrelpath_CPPFLAGS) $(CPPFLAGS) $(grub_mkrelpath_CFLAGS) $(CFLAGS) -MT util/grub_mkrelpath-grub-mkrelpath.obj -MD -MP -MF util/$(DEPDIR)/grub_mkrelpath-grub-mkrelpath.Tpo -c -o util/grub_mkrelpath-grub-mkrelpath.obj `if test -f 'util/grub-mkrelpath.c'; then $(CYGPATH_W) 'util/grub-mkrelpath.c'; else $(CYGPATH_W) '$(srcdir)/util/grub-mkrelpath.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_mkrelpath-grub-mkrelpath.Tpo util/$(DEPDIR)/grub_mkrelpath-grub-mkrelpath.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/grub-mkrelpath.c' object='util/grub_mkrelpath-grub-mkrelpath.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkrelpath_CPPFLAGS) $(CPPFLAGS) $(grub_mkrelpath_CFLAGS) $(CFLAGS) -c -o util/grub_mkrelpath-grub-mkrelpath.obj `if test -f 'util/grub-mkrelpath.c'; then $(CYGPATH_W) 'util/grub-mkrelpath.c'; else $(CYGPATH_W) '$(srcdir)/util/grub-mkrelpath.c'; fi` - -grub-core/kern/emu/grub_mkrelpath-argp_common.o: grub-core/kern/emu/argp_common.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkrelpath_CPPFLAGS) $(CPPFLAGS) $(grub_mkrelpath_CFLAGS) $(CFLAGS) -MT grub-core/kern/emu/grub_mkrelpath-argp_common.o -MD -MP -MF grub-core/kern/emu/$(DEPDIR)/grub_mkrelpath-argp_common.Tpo -c -o grub-core/kern/emu/grub_mkrelpath-argp_common.o `test -f 'grub-core/kern/emu/argp_common.c' || echo '$(srcdir)/'`grub-core/kern/emu/argp_common.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/kern/emu/$(DEPDIR)/grub_mkrelpath-argp_common.Tpo grub-core/kern/emu/$(DEPDIR)/grub_mkrelpath-argp_common.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/kern/emu/argp_common.c' object='grub-core/kern/emu/grub_mkrelpath-argp_common.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkrelpath_CPPFLAGS) $(CPPFLAGS) $(grub_mkrelpath_CFLAGS) $(CFLAGS) -c -o grub-core/kern/emu/grub_mkrelpath-argp_common.o `test -f 'grub-core/kern/emu/argp_common.c' || echo '$(srcdir)/'`grub-core/kern/emu/argp_common.c - -grub-core/kern/emu/grub_mkrelpath-argp_common.obj: grub-core/kern/emu/argp_common.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkrelpath_CPPFLAGS) $(CPPFLAGS) $(grub_mkrelpath_CFLAGS) $(CFLAGS) -MT grub-core/kern/emu/grub_mkrelpath-argp_common.obj -MD -MP -MF grub-core/kern/emu/$(DEPDIR)/grub_mkrelpath-argp_common.Tpo -c -o grub-core/kern/emu/grub_mkrelpath-argp_common.obj `if test -f 'grub-core/kern/emu/argp_common.c'; then $(CYGPATH_W) 'grub-core/kern/emu/argp_common.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/kern/emu/argp_common.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/kern/emu/$(DEPDIR)/grub_mkrelpath-argp_common.Tpo grub-core/kern/emu/$(DEPDIR)/grub_mkrelpath-argp_common.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/kern/emu/argp_common.c' object='grub-core/kern/emu/grub_mkrelpath-argp_common.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkrelpath_CPPFLAGS) $(CPPFLAGS) $(grub_mkrelpath_CFLAGS) $(CFLAGS) -c -o grub-core/kern/emu/grub_mkrelpath-argp_common.obj `if test -f 'grub-core/kern/emu/argp_common.c'; then $(CYGPATH_W) 'grub-core/kern/emu/argp_common.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/kern/emu/argp_common.c'; fi` - -grub-core/osdep/grub_mkrelpath-init.o: grub-core/osdep/init.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkrelpath_CPPFLAGS) $(CPPFLAGS) $(grub_mkrelpath_CFLAGS) $(CFLAGS) -MT grub-core/osdep/grub_mkrelpath-init.o -MD -MP -MF grub-core/osdep/$(DEPDIR)/grub_mkrelpath-init.Tpo -c -o grub-core/osdep/grub_mkrelpath-init.o `test -f 'grub-core/osdep/init.c' || echo '$(srcdir)/'`grub-core/osdep/init.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/osdep/$(DEPDIR)/grub_mkrelpath-init.Tpo grub-core/osdep/$(DEPDIR)/grub_mkrelpath-init.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/osdep/init.c' object='grub-core/osdep/grub_mkrelpath-init.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkrelpath_CPPFLAGS) $(CPPFLAGS) $(grub_mkrelpath_CFLAGS) $(CFLAGS) -c -o grub-core/osdep/grub_mkrelpath-init.o `test -f 'grub-core/osdep/init.c' || echo '$(srcdir)/'`grub-core/osdep/init.c - -grub-core/osdep/grub_mkrelpath-init.obj: grub-core/osdep/init.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkrelpath_CPPFLAGS) $(CPPFLAGS) $(grub_mkrelpath_CFLAGS) $(CFLAGS) -MT grub-core/osdep/grub_mkrelpath-init.obj -MD -MP -MF grub-core/osdep/$(DEPDIR)/grub_mkrelpath-init.Tpo -c -o grub-core/osdep/grub_mkrelpath-init.obj `if test -f 'grub-core/osdep/init.c'; then $(CYGPATH_W) 'grub-core/osdep/init.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/osdep/init.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/osdep/$(DEPDIR)/grub_mkrelpath-init.Tpo grub-core/osdep/$(DEPDIR)/grub_mkrelpath-init.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/osdep/init.c' object='grub-core/osdep/grub_mkrelpath-init.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkrelpath_CPPFLAGS) $(CPPFLAGS) $(grub_mkrelpath_CFLAGS) $(CFLAGS) -c -o grub-core/osdep/grub_mkrelpath-init.obj `if test -f 'grub-core/osdep/init.c'; then $(CYGPATH_W) 'grub-core/osdep/init.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/osdep/init.c'; fi` - -util/grub_mkrescue-grub-mkrescue.o: util/grub-mkrescue.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkrescue_CPPFLAGS) $(CPPFLAGS) $(grub_mkrescue_CFLAGS) $(CFLAGS) -MT util/grub_mkrescue-grub-mkrescue.o -MD -MP -MF util/$(DEPDIR)/grub_mkrescue-grub-mkrescue.Tpo -c -o util/grub_mkrescue-grub-mkrescue.o `test -f 'util/grub-mkrescue.c' || echo '$(srcdir)/'`util/grub-mkrescue.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_mkrescue-grub-mkrescue.Tpo util/$(DEPDIR)/grub_mkrescue-grub-mkrescue.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/grub-mkrescue.c' object='util/grub_mkrescue-grub-mkrescue.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkrescue_CPPFLAGS) $(CPPFLAGS) $(grub_mkrescue_CFLAGS) $(CFLAGS) -c -o util/grub_mkrescue-grub-mkrescue.o `test -f 'util/grub-mkrescue.c' || echo '$(srcdir)/'`util/grub-mkrescue.c - -util/grub_mkrescue-grub-mkrescue.obj: util/grub-mkrescue.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkrescue_CPPFLAGS) $(CPPFLAGS) $(grub_mkrescue_CFLAGS) $(CFLAGS) -MT util/grub_mkrescue-grub-mkrescue.obj -MD -MP -MF util/$(DEPDIR)/grub_mkrescue-grub-mkrescue.Tpo -c -o util/grub_mkrescue-grub-mkrescue.obj `if test -f 'util/grub-mkrescue.c'; then $(CYGPATH_W) 'util/grub-mkrescue.c'; else $(CYGPATH_W) '$(srcdir)/util/grub-mkrescue.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_mkrescue-grub-mkrescue.Tpo util/$(DEPDIR)/grub_mkrescue-grub-mkrescue.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/grub-mkrescue.c' object='util/grub_mkrescue-grub-mkrescue.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkrescue_CPPFLAGS) $(CPPFLAGS) $(grub_mkrescue_CFLAGS) $(CFLAGS) -c -o util/grub_mkrescue-grub-mkrescue.obj `if test -f 'util/grub-mkrescue.c'; then $(CYGPATH_W) 'util/grub-mkrescue.c'; else $(CYGPATH_W) '$(srcdir)/util/grub-mkrescue.c'; fi` - -util/grub_mkrescue-render-label.o: util/render-label.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkrescue_CPPFLAGS) $(CPPFLAGS) $(grub_mkrescue_CFLAGS) $(CFLAGS) -MT util/grub_mkrescue-render-label.o -MD -MP -MF util/$(DEPDIR)/grub_mkrescue-render-label.Tpo -c -o util/grub_mkrescue-render-label.o `test -f 'util/render-label.c' || echo '$(srcdir)/'`util/render-label.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_mkrescue-render-label.Tpo util/$(DEPDIR)/grub_mkrescue-render-label.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/render-label.c' object='util/grub_mkrescue-render-label.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkrescue_CPPFLAGS) $(CPPFLAGS) $(grub_mkrescue_CFLAGS) $(CFLAGS) -c -o util/grub_mkrescue-render-label.o `test -f 'util/render-label.c' || echo '$(srcdir)/'`util/render-label.c - -util/grub_mkrescue-render-label.obj: util/render-label.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkrescue_CPPFLAGS) $(CPPFLAGS) $(grub_mkrescue_CFLAGS) $(CFLAGS) -MT util/grub_mkrescue-render-label.obj -MD -MP -MF util/$(DEPDIR)/grub_mkrescue-render-label.Tpo -c -o util/grub_mkrescue-render-label.obj `if test -f 'util/render-label.c'; then $(CYGPATH_W) 'util/render-label.c'; else $(CYGPATH_W) '$(srcdir)/util/render-label.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_mkrescue-render-label.Tpo util/$(DEPDIR)/grub_mkrescue-render-label.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/render-label.c' object='util/grub_mkrescue-render-label.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkrescue_CPPFLAGS) $(CPPFLAGS) $(grub_mkrescue_CFLAGS) $(CFLAGS) -c -o util/grub_mkrescue-render-label.obj `if test -f 'util/render-label.c'; then $(CYGPATH_W) 'util/render-label.c'; else $(CYGPATH_W) '$(srcdir)/util/render-label.c'; fi` - -util/grub_mkrescue-glue-efi.o: util/glue-efi.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkrescue_CPPFLAGS) $(CPPFLAGS) $(grub_mkrescue_CFLAGS) $(CFLAGS) -MT util/grub_mkrescue-glue-efi.o -MD -MP -MF util/$(DEPDIR)/grub_mkrescue-glue-efi.Tpo -c -o util/grub_mkrescue-glue-efi.o `test -f 'util/glue-efi.c' || echo '$(srcdir)/'`util/glue-efi.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_mkrescue-glue-efi.Tpo util/$(DEPDIR)/grub_mkrescue-glue-efi.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/glue-efi.c' object='util/grub_mkrescue-glue-efi.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkrescue_CPPFLAGS) $(CPPFLAGS) $(grub_mkrescue_CFLAGS) $(CFLAGS) -c -o util/grub_mkrescue-glue-efi.o `test -f 'util/glue-efi.c' || echo '$(srcdir)/'`util/glue-efi.c - -util/grub_mkrescue-glue-efi.obj: util/glue-efi.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkrescue_CPPFLAGS) $(CPPFLAGS) $(grub_mkrescue_CFLAGS) $(CFLAGS) -MT util/grub_mkrescue-glue-efi.obj -MD -MP -MF util/$(DEPDIR)/grub_mkrescue-glue-efi.Tpo -c -o util/grub_mkrescue-glue-efi.obj `if test -f 'util/glue-efi.c'; then $(CYGPATH_W) 'util/glue-efi.c'; else $(CYGPATH_W) '$(srcdir)/util/glue-efi.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_mkrescue-glue-efi.Tpo util/$(DEPDIR)/grub_mkrescue-glue-efi.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/glue-efi.c' object='util/grub_mkrescue-glue-efi.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkrescue_CPPFLAGS) $(CPPFLAGS) $(grub_mkrescue_CFLAGS) $(CFLAGS) -c -o util/grub_mkrescue-glue-efi.obj `if test -f 'util/glue-efi.c'; then $(CYGPATH_W) 'util/glue-efi.c'; else $(CYGPATH_W) '$(srcdir)/util/glue-efi.c'; fi` - -util/grub_mkrescue-mkimage.o: util/mkimage.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkrescue_CPPFLAGS) $(CPPFLAGS) $(grub_mkrescue_CFLAGS) $(CFLAGS) -MT util/grub_mkrescue-mkimage.o -MD -MP -MF util/$(DEPDIR)/grub_mkrescue-mkimage.Tpo -c -o util/grub_mkrescue-mkimage.o `test -f 'util/mkimage.c' || echo '$(srcdir)/'`util/mkimage.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_mkrescue-mkimage.Tpo util/$(DEPDIR)/grub_mkrescue-mkimage.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/mkimage.c' object='util/grub_mkrescue-mkimage.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkrescue_CPPFLAGS) $(CPPFLAGS) $(grub_mkrescue_CFLAGS) $(CFLAGS) -c -o util/grub_mkrescue-mkimage.o `test -f 'util/mkimage.c' || echo '$(srcdir)/'`util/mkimage.c - -util/grub_mkrescue-mkimage.obj: util/mkimage.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkrescue_CPPFLAGS) $(CPPFLAGS) $(grub_mkrescue_CFLAGS) $(CFLAGS) -MT util/grub_mkrescue-mkimage.obj -MD -MP -MF util/$(DEPDIR)/grub_mkrescue-mkimage.Tpo -c -o util/grub_mkrescue-mkimage.obj `if test -f 'util/mkimage.c'; then $(CYGPATH_W) 'util/mkimage.c'; else $(CYGPATH_W) '$(srcdir)/util/mkimage.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_mkrescue-mkimage.Tpo util/$(DEPDIR)/grub_mkrescue-mkimage.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/mkimage.c' object='util/grub_mkrescue-mkimage.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkrescue_CPPFLAGS) $(CPPFLAGS) $(grub_mkrescue_CFLAGS) $(CFLAGS) -c -o util/grub_mkrescue-mkimage.obj `if test -f 'util/mkimage.c'; then $(CYGPATH_W) 'util/mkimage.c'; else $(CYGPATH_W) '$(srcdir)/util/mkimage.c'; fi` - -util/grub_mkrescue-grub-mkimage32.o: util/grub-mkimage32.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkrescue_CPPFLAGS) $(CPPFLAGS) $(grub_mkrescue_CFLAGS) $(CFLAGS) -MT util/grub_mkrescue-grub-mkimage32.o -MD -MP -MF util/$(DEPDIR)/grub_mkrescue-grub-mkimage32.Tpo -c -o util/grub_mkrescue-grub-mkimage32.o `test -f 'util/grub-mkimage32.c' || echo '$(srcdir)/'`util/grub-mkimage32.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_mkrescue-grub-mkimage32.Tpo util/$(DEPDIR)/grub_mkrescue-grub-mkimage32.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/grub-mkimage32.c' object='util/grub_mkrescue-grub-mkimage32.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkrescue_CPPFLAGS) $(CPPFLAGS) $(grub_mkrescue_CFLAGS) $(CFLAGS) -c -o util/grub_mkrescue-grub-mkimage32.o `test -f 'util/grub-mkimage32.c' || echo '$(srcdir)/'`util/grub-mkimage32.c - -util/grub_mkrescue-grub-mkimage32.obj: util/grub-mkimage32.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkrescue_CPPFLAGS) $(CPPFLAGS) $(grub_mkrescue_CFLAGS) $(CFLAGS) -MT util/grub_mkrescue-grub-mkimage32.obj -MD -MP -MF util/$(DEPDIR)/grub_mkrescue-grub-mkimage32.Tpo -c -o util/grub_mkrescue-grub-mkimage32.obj `if test -f 'util/grub-mkimage32.c'; then $(CYGPATH_W) 'util/grub-mkimage32.c'; else $(CYGPATH_W) '$(srcdir)/util/grub-mkimage32.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_mkrescue-grub-mkimage32.Tpo util/$(DEPDIR)/grub_mkrescue-grub-mkimage32.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/grub-mkimage32.c' object='util/grub_mkrescue-grub-mkimage32.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkrescue_CPPFLAGS) $(CPPFLAGS) $(grub_mkrescue_CFLAGS) $(CFLAGS) -c -o util/grub_mkrescue-grub-mkimage32.obj `if test -f 'util/grub-mkimage32.c'; then $(CYGPATH_W) 'util/grub-mkimage32.c'; else $(CYGPATH_W) '$(srcdir)/util/grub-mkimage32.c'; fi` - -util/grub_mkrescue-grub-mkimage64.o: util/grub-mkimage64.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkrescue_CPPFLAGS) $(CPPFLAGS) $(grub_mkrescue_CFLAGS) $(CFLAGS) -MT util/grub_mkrescue-grub-mkimage64.o -MD -MP -MF util/$(DEPDIR)/grub_mkrescue-grub-mkimage64.Tpo -c -o util/grub_mkrescue-grub-mkimage64.o `test -f 'util/grub-mkimage64.c' || echo '$(srcdir)/'`util/grub-mkimage64.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_mkrescue-grub-mkimage64.Tpo util/$(DEPDIR)/grub_mkrescue-grub-mkimage64.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/grub-mkimage64.c' object='util/grub_mkrescue-grub-mkimage64.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkrescue_CPPFLAGS) $(CPPFLAGS) $(grub_mkrescue_CFLAGS) $(CFLAGS) -c -o util/grub_mkrescue-grub-mkimage64.o `test -f 'util/grub-mkimage64.c' || echo '$(srcdir)/'`util/grub-mkimage64.c - -util/grub_mkrescue-grub-mkimage64.obj: util/grub-mkimage64.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkrescue_CPPFLAGS) $(CPPFLAGS) $(grub_mkrescue_CFLAGS) $(CFLAGS) -MT util/grub_mkrescue-grub-mkimage64.obj -MD -MP -MF util/$(DEPDIR)/grub_mkrescue-grub-mkimage64.Tpo -c -o util/grub_mkrescue-grub-mkimage64.obj `if test -f 'util/grub-mkimage64.c'; then $(CYGPATH_W) 'util/grub-mkimage64.c'; else $(CYGPATH_W) '$(srcdir)/util/grub-mkimage64.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_mkrescue-grub-mkimage64.Tpo util/$(DEPDIR)/grub_mkrescue-grub-mkimage64.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/grub-mkimage64.c' object='util/grub_mkrescue-grub-mkimage64.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkrescue_CPPFLAGS) $(CPPFLAGS) $(grub_mkrescue_CFLAGS) $(CFLAGS) -c -o util/grub_mkrescue-grub-mkimage64.obj `if test -f 'util/grub-mkimage64.c'; then $(CYGPATH_W) 'util/grub-mkimage64.c'; else $(CYGPATH_W) '$(srcdir)/util/grub-mkimage64.c'; fi` - -util/grub_mkrescue-grub-install-common.o: util/grub-install-common.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkrescue_CPPFLAGS) $(CPPFLAGS) $(grub_mkrescue_CFLAGS) $(CFLAGS) -MT util/grub_mkrescue-grub-install-common.o -MD -MP -MF util/$(DEPDIR)/grub_mkrescue-grub-install-common.Tpo -c -o util/grub_mkrescue-grub-install-common.o `test -f 'util/grub-install-common.c' || echo '$(srcdir)/'`util/grub-install-common.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_mkrescue-grub-install-common.Tpo util/$(DEPDIR)/grub_mkrescue-grub-install-common.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/grub-install-common.c' object='util/grub_mkrescue-grub-install-common.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkrescue_CPPFLAGS) $(CPPFLAGS) $(grub_mkrescue_CFLAGS) $(CFLAGS) -c -o util/grub_mkrescue-grub-install-common.o `test -f 'util/grub-install-common.c' || echo '$(srcdir)/'`util/grub-install-common.c - -util/grub_mkrescue-grub-install-common.obj: util/grub-install-common.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkrescue_CPPFLAGS) $(CPPFLAGS) $(grub_mkrescue_CFLAGS) $(CFLAGS) -MT util/grub_mkrescue-grub-install-common.obj -MD -MP -MF util/$(DEPDIR)/grub_mkrescue-grub-install-common.Tpo -c -o util/grub_mkrescue-grub-install-common.obj `if test -f 'util/grub-install-common.c'; then $(CYGPATH_W) 'util/grub-install-common.c'; else $(CYGPATH_W) '$(srcdir)/util/grub-install-common.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_mkrescue-grub-install-common.Tpo util/$(DEPDIR)/grub_mkrescue-grub-install-common.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/grub-install-common.c' object='util/grub_mkrescue-grub-install-common.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkrescue_CPPFLAGS) $(CPPFLAGS) $(grub_mkrescue_CFLAGS) $(CFLAGS) -c -o util/grub_mkrescue-grub-install-common.obj `if test -f 'util/grub-install-common.c'; then $(CYGPATH_W) 'util/grub-install-common.c'; else $(CYGPATH_W) '$(srcdir)/util/grub-install-common.c'; fi` - -util/grub_mkrescue-setup_bios.o: util/setup_bios.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkrescue_CPPFLAGS) $(CPPFLAGS) $(grub_mkrescue_CFLAGS) $(CFLAGS) -MT util/grub_mkrescue-setup_bios.o -MD -MP -MF util/$(DEPDIR)/grub_mkrescue-setup_bios.Tpo -c -o util/grub_mkrescue-setup_bios.o `test -f 'util/setup_bios.c' || echo '$(srcdir)/'`util/setup_bios.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_mkrescue-setup_bios.Tpo util/$(DEPDIR)/grub_mkrescue-setup_bios.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/setup_bios.c' object='util/grub_mkrescue-setup_bios.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkrescue_CPPFLAGS) $(CPPFLAGS) $(grub_mkrescue_CFLAGS) $(CFLAGS) -c -o util/grub_mkrescue-setup_bios.o `test -f 'util/setup_bios.c' || echo '$(srcdir)/'`util/setup_bios.c - -util/grub_mkrescue-setup_bios.obj: util/setup_bios.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkrescue_CPPFLAGS) $(CPPFLAGS) $(grub_mkrescue_CFLAGS) $(CFLAGS) -MT util/grub_mkrescue-setup_bios.obj -MD -MP -MF util/$(DEPDIR)/grub_mkrescue-setup_bios.Tpo -c -o util/grub_mkrescue-setup_bios.obj `if test -f 'util/setup_bios.c'; then $(CYGPATH_W) 'util/setup_bios.c'; else $(CYGPATH_W) '$(srcdir)/util/setup_bios.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_mkrescue-setup_bios.Tpo util/$(DEPDIR)/grub_mkrescue-setup_bios.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/setup_bios.c' object='util/grub_mkrescue-setup_bios.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkrescue_CPPFLAGS) $(CPPFLAGS) $(grub_mkrescue_CFLAGS) $(CFLAGS) -c -o util/grub_mkrescue-setup_bios.obj `if test -f 'util/setup_bios.c'; then $(CYGPATH_W) 'util/setup_bios.c'; else $(CYGPATH_W) '$(srcdir)/util/setup_bios.c'; fi` - -util/grub_mkrescue-setup_sparc.o: util/setup_sparc.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkrescue_CPPFLAGS) $(CPPFLAGS) $(grub_mkrescue_CFLAGS) $(CFLAGS) -MT util/grub_mkrescue-setup_sparc.o -MD -MP -MF util/$(DEPDIR)/grub_mkrescue-setup_sparc.Tpo -c -o util/grub_mkrescue-setup_sparc.o `test -f 'util/setup_sparc.c' || echo '$(srcdir)/'`util/setup_sparc.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_mkrescue-setup_sparc.Tpo util/$(DEPDIR)/grub_mkrescue-setup_sparc.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/setup_sparc.c' object='util/grub_mkrescue-setup_sparc.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkrescue_CPPFLAGS) $(CPPFLAGS) $(grub_mkrescue_CFLAGS) $(CFLAGS) -c -o util/grub_mkrescue-setup_sparc.o `test -f 'util/setup_sparc.c' || echo '$(srcdir)/'`util/setup_sparc.c - -util/grub_mkrescue-setup_sparc.obj: util/setup_sparc.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkrescue_CPPFLAGS) $(CPPFLAGS) $(grub_mkrescue_CFLAGS) $(CFLAGS) -MT util/grub_mkrescue-setup_sparc.obj -MD -MP -MF util/$(DEPDIR)/grub_mkrescue-setup_sparc.Tpo -c -o util/grub_mkrescue-setup_sparc.obj `if test -f 'util/setup_sparc.c'; then $(CYGPATH_W) 'util/setup_sparc.c'; else $(CYGPATH_W) '$(srcdir)/util/setup_sparc.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_mkrescue-setup_sparc.Tpo util/$(DEPDIR)/grub_mkrescue-setup_sparc.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/setup_sparc.c' object='util/grub_mkrescue-setup_sparc.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkrescue_CPPFLAGS) $(CPPFLAGS) $(grub_mkrescue_CFLAGS) $(CFLAGS) -c -o util/grub_mkrescue-setup_sparc.obj `if test -f 'util/setup_sparc.c'; then $(CYGPATH_W) 'util/setup_sparc.c'; else $(CYGPATH_W) '$(srcdir)/util/setup_sparc.c'; fi` - -grub-core/lib/grub_mkrescue-reed_solomon.o: grub-core/lib/reed_solomon.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkrescue_CPPFLAGS) $(CPPFLAGS) $(grub_mkrescue_CFLAGS) $(CFLAGS) -MT grub-core/lib/grub_mkrescue-reed_solomon.o -MD -MP -MF grub-core/lib/$(DEPDIR)/grub_mkrescue-reed_solomon.Tpo -c -o grub-core/lib/grub_mkrescue-reed_solomon.o `test -f 'grub-core/lib/reed_solomon.c' || echo '$(srcdir)/'`grub-core/lib/reed_solomon.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/lib/$(DEPDIR)/grub_mkrescue-reed_solomon.Tpo grub-core/lib/$(DEPDIR)/grub_mkrescue-reed_solomon.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/lib/reed_solomon.c' object='grub-core/lib/grub_mkrescue-reed_solomon.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkrescue_CPPFLAGS) $(CPPFLAGS) $(grub_mkrescue_CFLAGS) $(CFLAGS) -c -o grub-core/lib/grub_mkrescue-reed_solomon.o `test -f 'grub-core/lib/reed_solomon.c' || echo '$(srcdir)/'`grub-core/lib/reed_solomon.c - -grub-core/lib/grub_mkrescue-reed_solomon.obj: grub-core/lib/reed_solomon.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkrescue_CPPFLAGS) $(CPPFLAGS) $(grub_mkrescue_CFLAGS) $(CFLAGS) -MT grub-core/lib/grub_mkrescue-reed_solomon.obj -MD -MP -MF grub-core/lib/$(DEPDIR)/grub_mkrescue-reed_solomon.Tpo -c -o grub-core/lib/grub_mkrescue-reed_solomon.obj `if test -f 'grub-core/lib/reed_solomon.c'; then $(CYGPATH_W) 'grub-core/lib/reed_solomon.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/lib/reed_solomon.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/lib/$(DEPDIR)/grub_mkrescue-reed_solomon.Tpo grub-core/lib/$(DEPDIR)/grub_mkrescue-reed_solomon.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/lib/reed_solomon.c' object='grub-core/lib/grub_mkrescue-reed_solomon.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkrescue_CPPFLAGS) $(CPPFLAGS) $(grub_mkrescue_CFLAGS) $(CFLAGS) -c -o grub-core/lib/grub_mkrescue-reed_solomon.obj `if test -f 'grub-core/lib/reed_solomon.c'; then $(CYGPATH_W) 'grub-core/lib/reed_solomon.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/lib/reed_solomon.c'; fi` - -grub-core/osdep/grub_mkrescue-random.o: grub-core/osdep/random.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkrescue_CPPFLAGS) $(CPPFLAGS) $(grub_mkrescue_CFLAGS) $(CFLAGS) -MT grub-core/osdep/grub_mkrescue-random.o -MD -MP -MF grub-core/osdep/$(DEPDIR)/grub_mkrescue-random.Tpo -c -o grub-core/osdep/grub_mkrescue-random.o `test -f 'grub-core/osdep/random.c' || echo '$(srcdir)/'`grub-core/osdep/random.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/osdep/$(DEPDIR)/grub_mkrescue-random.Tpo grub-core/osdep/$(DEPDIR)/grub_mkrescue-random.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/osdep/random.c' object='grub-core/osdep/grub_mkrescue-random.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkrescue_CPPFLAGS) $(CPPFLAGS) $(grub_mkrescue_CFLAGS) $(CFLAGS) -c -o grub-core/osdep/grub_mkrescue-random.o `test -f 'grub-core/osdep/random.c' || echo '$(srcdir)/'`grub-core/osdep/random.c - -grub-core/osdep/grub_mkrescue-random.obj: grub-core/osdep/random.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkrescue_CPPFLAGS) $(CPPFLAGS) $(grub_mkrescue_CFLAGS) $(CFLAGS) -MT grub-core/osdep/grub_mkrescue-random.obj -MD -MP -MF grub-core/osdep/$(DEPDIR)/grub_mkrescue-random.Tpo -c -o grub-core/osdep/grub_mkrescue-random.obj `if test -f 'grub-core/osdep/random.c'; then $(CYGPATH_W) 'grub-core/osdep/random.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/osdep/random.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/osdep/$(DEPDIR)/grub_mkrescue-random.Tpo grub-core/osdep/$(DEPDIR)/grub_mkrescue-random.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/osdep/random.c' object='grub-core/osdep/grub_mkrescue-random.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkrescue_CPPFLAGS) $(CPPFLAGS) $(grub_mkrescue_CFLAGS) $(CFLAGS) -c -o grub-core/osdep/grub_mkrescue-random.obj `if test -f 'grub-core/osdep/random.c'; then $(CYGPATH_W) 'grub-core/osdep/random.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/osdep/random.c'; fi` - -grub-core/osdep/grub_mkrescue-ofpath.o: grub-core/osdep/ofpath.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkrescue_CPPFLAGS) $(CPPFLAGS) $(grub_mkrescue_CFLAGS) $(CFLAGS) -MT grub-core/osdep/grub_mkrescue-ofpath.o -MD -MP -MF grub-core/osdep/$(DEPDIR)/grub_mkrescue-ofpath.Tpo -c -o grub-core/osdep/grub_mkrescue-ofpath.o `test -f 'grub-core/osdep/ofpath.c' || echo '$(srcdir)/'`grub-core/osdep/ofpath.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/osdep/$(DEPDIR)/grub_mkrescue-ofpath.Tpo grub-core/osdep/$(DEPDIR)/grub_mkrescue-ofpath.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/osdep/ofpath.c' object='grub-core/osdep/grub_mkrescue-ofpath.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkrescue_CPPFLAGS) $(CPPFLAGS) $(grub_mkrescue_CFLAGS) $(CFLAGS) -c -o grub-core/osdep/grub_mkrescue-ofpath.o `test -f 'grub-core/osdep/ofpath.c' || echo '$(srcdir)/'`grub-core/osdep/ofpath.c - -grub-core/osdep/grub_mkrescue-ofpath.obj: grub-core/osdep/ofpath.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkrescue_CPPFLAGS) $(CPPFLAGS) $(grub_mkrescue_CFLAGS) $(CFLAGS) -MT grub-core/osdep/grub_mkrescue-ofpath.obj -MD -MP -MF grub-core/osdep/$(DEPDIR)/grub_mkrescue-ofpath.Tpo -c -o grub-core/osdep/grub_mkrescue-ofpath.obj `if test -f 'grub-core/osdep/ofpath.c'; then $(CYGPATH_W) 'grub-core/osdep/ofpath.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/osdep/ofpath.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/osdep/$(DEPDIR)/grub_mkrescue-ofpath.Tpo grub-core/osdep/$(DEPDIR)/grub_mkrescue-ofpath.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/osdep/ofpath.c' object='grub-core/osdep/grub_mkrescue-ofpath.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkrescue_CPPFLAGS) $(CPPFLAGS) $(grub_mkrescue_CFLAGS) $(CFLAGS) -c -o grub-core/osdep/grub_mkrescue-ofpath.obj `if test -f 'grub-core/osdep/ofpath.c'; then $(CYGPATH_W) 'grub-core/osdep/ofpath.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/osdep/ofpath.c'; fi` - -grub-core/osdep/grub_mkrescue-platform.o: grub-core/osdep/platform.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkrescue_CPPFLAGS) $(CPPFLAGS) $(grub_mkrescue_CFLAGS) $(CFLAGS) -MT grub-core/osdep/grub_mkrescue-platform.o -MD -MP -MF grub-core/osdep/$(DEPDIR)/grub_mkrescue-platform.Tpo -c -o grub-core/osdep/grub_mkrescue-platform.o `test -f 'grub-core/osdep/platform.c' || echo '$(srcdir)/'`grub-core/osdep/platform.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/osdep/$(DEPDIR)/grub_mkrescue-platform.Tpo grub-core/osdep/$(DEPDIR)/grub_mkrescue-platform.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/osdep/platform.c' object='grub-core/osdep/grub_mkrescue-platform.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkrescue_CPPFLAGS) $(CPPFLAGS) $(grub_mkrescue_CFLAGS) $(CFLAGS) -c -o grub-core/osdep/grub_mkrescue-platform.o `test -f 'grub-core/osdep/platform.c' || echo '$(srcdir)/'`grub-core/osdep/platform.c - -grub-core/osdep/grub_mkrescue-platform.obj: grub-core/osdep/platform.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkrescue_CPPFLAGS) $(CPPFLAGS) $(grub_mkrescue_CFLAGS) $(CFLAGS) -MT grub-core/osdep/grub_mkrescue-platform.obj -MD -MP -MF grub-core/osdep/$(DEPDIR)/grub_mkrescue-platform.Tpo -c -o grub-core/osdep/grub_mkrescue-platform.obj `if test -f 'grub-core/osdep/platform.c'; then $(CYGPATH_W) 'grub-core/osdep/platform.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/osdep/platform.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/osdep/$(DEPDIR)/grub_mkrescue-platform.Tpo grub-core/osdep/$(DEPDIR)/grub_mkrescue-platform.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/osdep/platform.c' object='grub-core/osdep/grub_mkrescue-platform.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkrescue_CPPFLAGS) $(CPPFLAGS) $(grub_mkrescue_CFLAGS) $(CFLAGS) -c -o grub-core/osdep/grub_mkrescue-platform.obj `if test -f 'grub-core/osdep/platform.c'; then $(CYGPATH_W) 'grub-core/osdep/platform.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/osdep/platform.c'; fi` - -grub-core/osdep/grub_mkrescue-platform_unix.o: grub-core/osdep/platform_unix.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkrescue_CPPFLAGS) $(CPPFLAGS) $(grub_mkrescue_CFLAGS) $(CFLAGS) -MT grub-core/osdep/grub_mkrescue-platform_unix.o -MD -MP -MF grub-core/osdep/$(DEPDIR)/grub_mkrescue-platform_unix.Tpo -c -o grub-core/osdep/grub_mkrescue-platform_unix.o `test -f 'grub-core/osdep/platform_unix.c' || echo '$(srcdir)/'`grub-core/osdep/platform_unix.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/osdep/$(DEPDIR)/grub_mkrescue-platform_unix.Tpo grub-core/osdep/$(DEPDIR)/grub_mkrescue-platform_unix.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/osdep/platform_unix.c' object='grub-core/osdep/grub_mkrescue-platform_unix.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkrescue_CPPFLAGS) $(CPPFLAGS) $(grub_mkrescue_CFLAGS) $(CFLAGS) -c -o grub-core/osdep/grub_mkrescue-platform_unix.o `test -f 'grub-core/osdep/platform_unix.c' || echo '$(srcdir)/'`grub-core/osdep/platform_unix.c - -grub-core/osdep/grub_mkrescue-platform_unix.obj: grub-core/osdep/platform_unix.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkrescue_CPPFLAGS) $(CPPFLAGS) $(grub_mkrescue_CFLAGS) $(CFLAGS) -MT grub-core/osdep/grub_mkrescue-platform_unix.obj -MD -MP -MF grub-core/osdep/$(DEPDIR)/grub_mkrescue-platform_unix.Tpo -c -o grub-core/osdep/grub_mkrescue-platform_unix.obj `if test -f 'grub-core/osdep/platform_unix.c'; then $(CYGPATH_W) 'grub-core/osdep/platform_unix.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/osdep/platform_unix.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/osdep/$(DEPDIR)/grub_mkrescue-platform_unix.Tpo grub-core/osdep/$(DEPDIR)/grub_mkrescue-platform_unix.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/osdep/platform_unix.c' object='grub-core/osdep/grub_mkrescue-platform_unix.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkrescue_CPPFLAGS) $(CPPFLAGS) $(grub_mkrescue_CFLAGS) $(CFLAGS) -c -o grub-core/osdep/grub_mkrescue-platform_unix.obj `if test -f 'grub-core/osdep/platform_unix.c'; then $(CYGPATH_W) 'grub-core/osdep/platform_unix.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/osdep/platform_unix.c'; fi` - -grub-core/osdep/grub_mkrescue-compress.o: grub-core/osdep/compress.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkrescue_CPPFLAGS) $(CPPFLAGS) $(grub_mkrescue_CFLAGS) $(CFLAGS) -MT grub-core/osdep/grub_mkrescue-compress.o -MD -MP -MF grub-core/osdep/$(DEPDIR)/grub_mkrescue-compress.Tpo -c -o grub-core/osdep/grub_mkrescue-compress.o `test -f 'grub-core/osdep/compress.c' || echo '$(srcdir)/'`grub-core/osdep/compress.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/osdep/$(DEPDIR)/grub_mkrescue-compress.Tpo grub-core/osdep/$(DEPDIR)/grub_mkrescue-compress.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/osdep/compress.c' object='grub-core/osdep/grub_mkrescue-compress.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkrescue_CPPFLAGS) $(CPPFLAGS) $(grub_mkrescue_CFLAGS) $(CFLAGS) -c -o grub-core/osdep/grub_mkrescue-compress.o `test -f 'grub-core/osdep/compress.c' || echo '$(srcdir)/'`grub-core/osdep/compress.c - -grub-core/osdep/grub_mkrescue-compress.obj: grub-core/osdep/compress.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkrescue_CPPFLAGS) $(CPPFLAGS) $(grub_mkrescue_CFLAGS) $(CFLAGS) -MT grub-core/osdep/grub_mkrescue-compress.obj -MD -MP -MF grub-core/osdep/$(DEPDIR)/grub_mkrescue-compress.Tpo -c -o grub-core/osdep/grub_mkrescue-compress.obj `if test -f 'grub-core/osdep/compress.c'; then $(CYGPATH_W) 'grub-core/osdep/compress.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/osdep/compress.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/osdep/$(DEPDIR)/grub_mkrescue-compress.Tpo grub-core/osdep/$(DEPDIR)/grub_mkrescue-compress.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/osdep/compress.c' object='grub-core/osdep/grub_mkrescue-compress.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkrescue_CPPFLAGS) $(CPPFLAGS) $(grub_mkrescue_CFLAGS) $(CFLAGS) -c -o grub-core/osdep/grub_mkrescue-compress.obj `if test -f 'grub-core/osdep/compress.c'; then $(CYGPATH_W) 'grub-core/osdep/compress.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/osdep/compress.c'; fi` - -util/grub_mkrescue-editenv.o: util/editenv.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkrescue_CPPFLAGS) $(CPPFLAGS) $(grub_mkrescue_CFLAGS) $(CFLAGS) -MT util/grub_mkrescue-editenv.o -MD -MP -MF util/$(DEPDIR)/grub_mkrescue-editenv.Tpo -c -o util/grub_mkrescue-editenv.o `test -f 'util/editenv.c' || echo '$(srcdir)/'`util/editenv.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_mkrescue-editenv.Tpo util/$(DEPDIR)/grub_mkrescue-editenv.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/editenv.c' object='util/grub_mkrescue-editenv.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkrescue_CPPFLAGS) $(CPPFLAGS) $(grub_mkrescue_CFLAGS) $(CFLAGS) -c -o util/grub_mkrescue-editenv.o `test -f 'util/editenv.c' || echo '$(srcdir)/'`util/editenv.c - -util/grub_mkrescue-editenv.obj: util/editenv.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkrescue_CPPFLAGS) $(CPPFLAGS) $(grub_mkrescue_CFLAGS) $(CFLAGS) -MT util/grub_mkrescue-editenv.obj -MD -MP -MF util/$(DEPDIR)/grub_mkrescue-editenv.Tpo -c -o util/grub_mkrescue-editenv.obj `if test -f 'util/editenv.c'; then $(CYGPATH_W) 'util/editenv.c'; else $(CYGPATH_W) '$(srcdir)/util/editenv.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_mkrescue-editenv.Tpo util/$(DEPDIR)/grub_mkrescue-editenv.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/editenv.c' object='util/grub_mkrescue-editenv.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkrescue_CPPFLAGS) $(CPPFLAGS) $(grub_mkrescue_CFLAGS) $(CFLAGS) -c -o util/grub_mkrescue-editenv.obj `if test -f 'util/editenv.c'; then $(CYGPATH_W) 'util/editenv.c'; else $(CYGPATH_W) '$(srcdir)/util/editenv.c'; fi` - -grub-core/osdep/grub_mkrescue-blocklist.o: grub-core/osdep/blocklist.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkrescue_CPPFLAGS) $(CPPFLAGS) $(grub_mkrescue_CFLAGS) $(CFLAGS) -MT grub-core/osdep/grub_mkrescue-blocklist.o -MD -MP -MF grub-core/osdep/$(DEPDIR)/grub_mkrescue-blocklist.Tpo -c -o grub-core/osdep/grub_mkrescue-blocklist.o `test -f 'grub-core/osdep/blocklist.c' || echo '$(srcdir)/'`grub-core/osdep/blocklist.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/osdep/$(DEPDIR)/grub_mkrescue-blocklist.Tpo grub-core/osdep/$(DEPDIR)/grub_mkrescue-blocklist.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/osdep/blocklist.c' object='grub-core/osdep/grub_mkrescue-blocklist.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkrescue_CPPFLAGS) $(CPPFLAGS) $(grub_mkrescue_CFLAGS) $(CFLAGS) -c -o grub-core/osdep/grub_mkrescue-blocklist.o `test -f 'grub-core/osdep/blocklist.c' || echo '$(srcdir)/'`grub-core/osdep/blocklist.c - -grub-core/osdep/grub_mkrescue-blocklist.obj: grub-core/osdep/blocklist.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkrescue_CPPFLAGS) $(CPPFLAGS) $(grub_mkrescue_CFLAGS) $(CFLAGS) -MT grub-core/osdep/grub_mkrescue-blocklist.obj -MD -MP -MF grub-core/osdep/$(DEPDIR)/grub_mkrescue-blocklist.Tpo -c -o grub-core/osdep/grub_mkrescue-blocklist.obj `if test -f 'grub-core/osdep/blocklist.c'; then $(CYGPATH_W) 'grub-core/osdep/blocklist.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/osdep/blocklist.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/osdep/$(DEPDIR)/grub_mkrescue-blocklist.Tpo grub-core/osdep/$(DEPDIR)/grub_mkrescue-blocklist.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/osdep/blocklist.c' object='grub-core/osdep/grub_mkrescue-blocklist.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkrescue_CPPFLAGS) $(CPPFLAGS) $(grub_mkrescue_CFLAGS) $(CFLAGS) -c -o grub-core/osdep/grub_mkrescue-blocklist.obj `if test -f 'grub-core/osdep/blocklist.c'; then $(CYGPATH_W) 'grub-core/osdep/blocklist.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/osdep/blocklist.c'; fi` - -grub-core/osdep/grub_mkrescue-config.o: grub-core/osdep/config.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkrescue_CPPFLAGS) $(CPPFLAGS) $(grub_mkrescue_CFLAGS) $(CFLAGS) -MT grub-core/osdep/grub_mkrescue-config.o -MD -MP -MF grub-core/osdep/$(DEPDIR)/grub_mkrescue-config.Tpo -c -o grub-core/osdep/grub_mkrescue-config.o `test -f 'grub-core/osdep/config.c' || echo '$(srcdir)/'`grub-core/osdep/config.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/osdep/$(DEPDIR)/grub_mkrescue-config.Tpo grub-core/osdep/$(DEPDIR)/grub_mkrescue-config.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/osdep/config.c' object='grub-core/osdep/grub_mkrescue-config.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkrescue_CPPFLAGS) $(CPPFLAGS) $(grub_mkrescue_CFLAGS) $(CFLAGS) -c -o grub-core/osdep/grub_mkrescue-config.o `test -f 'grub-core/osdep/config.c' || echo '$(srcdir)/'`grub-core/osdep/config.c - -grub-core/osdep/grub_mkrescue-config.obj: grub-core/osdep/config.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkrescue_CPPFLAGS) $(CPPFLAGS) $(grub_mkrescue_CFLAGS) $(CFLAGS) -MT grub-core/osdep/grub_mkrescue-config.obj -MD -MP -MF grub-core/osdep/$(DEPDIR)/grub_mkrescue-config.Tpo -c -o grub-core/osdep/grub_mkrescue-config.obj `if test -f 'grub-core/osdep/config.c'; then $(CYGPATH_W) 'grub-core/osdep/config.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/osdep/config.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/osdep/$(DEPDIR)/grub_mkrescue-config.Tpo grub-core/osdep/$(DEPDIR)/grub_mkrescue-config.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/osdep/config.c' object='grub-core/osdep/grub_mkrescue-config.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkrescue_CPPFLAGS) $(CPPFLAGS) $(grub_mkrescue_CFLAGS) $(CFLAGS) -c -o grub-core/osdep/grub_mkrescue-config.obj `if test -f 'grub-core/osdep/config.c'; then $(CYGPATH_W) 'grub-core/osdep/config.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/osdep/config.c'; fi` - -util/grub_mkrescue-config.o: util/config.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkrescue_CPPFLAGS) $(CPPFLAGS) $(grub_mkrescue_CFLAGS) $(CFLAGS) -MT util/grub_mkrescue-config.o -MD -MP -MF util/$(DEPDIR)/grub_mkrescue-config.Tpo -c -o util/grub_mkrescue-config.o `test -f 'util/config.c' || echo '$(srcdir)/'`util/config.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_mkrescue-config.Tpo util/$(DEPDIR)/grub_mkrescue-config.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/config.c' object='util/grub_mkrescue-config.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkrescue_CPPFLAGS) $(CPPFLAGS) $(grub_mkrescue_CFLAGS) $(CFLAGS) -c -o util/grub_mkrescue-config.o `test -f 'util/config.c' || echo '$(srcdir)/'`util/config.c - -util/grub_mkrescue-config.obj: util/config.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkrescue_CPPFLAGS) $(CPPFLAGS) $(grub_mkrescue_CFLAGS) $(CFLAGS) -MT util/grub_mkrescue-config.obj -MD -MP -MF util/$(DEPDIR)/grub_mkrescue-config.Tpo -c -o util/grub_mkrescue-config.obj `if test -f 'util/config.c'; then $(CYGPATH_W) 'util/config.c'; else $(CYGPATH_W) '$(srcdir)/util/config.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_mkrescue-config.Tpo util/$(DEPDIR)/grub_mkrescue-config.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/config.c' object='util/grub_mkrescue-config.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkrescue_CPPFLAGS) $(CPPFLAGS) $(grub_mkrescue_CFLAGS) $(CFLAGS) -c -o util/grub_mkrescue-config.obj `if test -f 'util/config.c'; then $(CYGPATH_W) 'util/config.c'; else $(CYGPATH_W) '$(srcdir)/util/config.c'; fi` - -grub-core/kern/emu/grub_mkrescue-hostfs.o: grub-core/kern/emu/hostfs.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkrescue_CPPFLAGS) $(CPPFLAGS) $(grub_mkrescue_CFLAGS) $(CFLAGS) -MT grub-core/kern/emu/grub_mkrescue-hostfs.o -MD -MP -MF grub-core/kern/emu/$(DEPDIR)/grub_mkrescue-hostfs.Tpo -c -o grub-core/kern/emu/grub_mkrescue-hostfs.o `test -f 'grub-core/kern/emu/hostfs.c' || echo '$(srcdir)/'`grub-core/kern/emu/hostfs.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/kern/emu/$(DEPDIR)/grub_mkrescue-hostfs.Tpo grub-core/kern/emu/$(DEPDIR)/grub_mkrescue-hostfs.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/kern/emu/hostfs.c' object='grub-core/kern/emu/grub_mkrescue-hostfs.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkrescue_CPPFLAGS) $(CPPFLAGS) $(grub_mkrescue_CFLAGS) $(CFLAGS) -c -o grub-core/kern/emu/grub_mkrescue-hostfs.o `test -f 'grub-core/kern/emu/hostfs.c' || echo '$(srcdir)/'`grub-core/kern/emu/hostfs.c - -grub-core/kern/emu/grub_mkrescue-hostfs.obj: grub-core/kern/emu/hostfs.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkrescue_CPPFLAGS) $(CPPFLAGS) $(grub_mkrescue_CFLAGS) $(CFLAGS) -MT grub-core/kern/emu/grub_mkrescue-hostfs.obj -MD -MP -MF grub-core/kern/emu/$(DEPDIR)/grub_mkrescue-hostfs.Tpo -c -o grub-core/kern/emu/grub_mkrescue-hostfs.obj `if test -f 'grub-core/kern/emu/hostfs.c'; then $(CYGPATH_W) 'grub-core/kern/emu/hostfs.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/kern/emu/hostfs.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/kern/emu/$(DEPDIR)/grub_mkrescue-hostfs.Tpo grub-core/kern/emu/$(DEPDIR)/grub_mkrescue-hostfs.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/kern/emu/hostfs.c' object='grub-core/kern/emu/grub_mkrescue-hostfs.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkrescue_CPPFLAGS) $(CPPFLAGS) $(grub_mkrescue_CFLAGS) $(CFLAGS) -c -o grub-core/kern/emu/grub_mkrescue-hostfs.obj `if test -f 'grub-core/kern/emu/hostfs.c'; then $(CYGPATH_W) 'grub-core/kern/emu/hostfs.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/kern/emu/hostfs.c'; fi` - -grub-core/disk/grub_mkrescue-host.o: grub-core/disk/host.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkrescue_CPPFLAGS) $(CPPFLAGS) $(grub_mkrescue_CFLAGS) $(CFLAGS) -MT grub-core/disk/grub_mkrescue-host.o -MD -MP -MF grub-core/disk/$(DEPDIR)/grub_mkrescue-host.Tpo -c -o grub-core/disk/grub_mkrescue-host.o `test -f 'grub-core/disk/host.c' || echo '$(srcdir)/'`grub-core/disk/host.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/disk/$(DEPDIR)/grub_mkrescue-host.Tpo grub-core/disk/$(DEPDIR)/grub_mkrescue-host.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/disk/host.c' object='grub-core/disk/grub_mkrescue-host.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkrescue_CPPFLAGS) $(CPPFLAGS) $(grub_mkrescue_CFLAGS) $(CFLAGS) -c -o grub-core/disk/grub_mkrescue-host.o `test -f 'grub-core/disk/host.c' || echo '$(srcdir)/'`grub-core/disk/host.c - -grub-core/disk/grub_mkrescue-host.obj: grub-core/disk/host.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkrescue_CPPFLAGS) $(CPPFLAGS) $(grub_mkrescue_CFLAGS) $(CFLAGS) -MT grub-core/disk/grub_mkrescue-host.obj -MD -MP -MF grub-core/disk/$(DEPDIR)/grub_mkrescue-host.Tpo -c -o grub-core/disk/grub_mkrescue-host.obj `if test -f 'grub-core/disk/host.c'; then $(CYGPATH_W) 'grub-core/disk/host.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/disk/host.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/disk/$(DEPDIR)/grub_mkrescue-host.Tpo grub-core/disk/$(DEPDIR)/grub_mkrescue-host.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/disk/host.c' object='grub-core/disk/grub_mkrescue-host.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkrescue_CPPFLAGS) $(CPPFLAGS) $(grub_mkrescue_CFLAGS) $(CFLAGS) -c -o grub-core/disk/grub_mkrescue-host.obj `if test -f 'grub-core/disk/host.c'; then $(CYGPATH_W) 'grub-core/disk/host.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/disk/host.c'; fi` - -util/grub_mkrescue-resolve.o: util/resolve.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkrescue_CPPFLAGS) $(CPPFLAGS) $(grub_mkrescue_CFLAGS) $(CFLAGS) -MT util/grub_mkrescue-resolve.o -MD -MP -MF util/$(DEPDIR)/grub_mkrescue-resolve.Tpo -c -o util/grub_mkrescue-resolve.o `test -f 'util/resolve.c' || echo '$(srcdir)/'`util/resolve.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_mkrescue-resolve.Tpo util/$(DEPDIR)/grub_mkrescue-resolve.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/resolve.c' object='util/grub_mkrescue-resolve.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkrescue_CPPFLAGS) $(CPPFLAGS) $(grub_mkrescue_CFLAGS) $(CFLAGS) -c -o util/grub_mkrescue-resolve.o `test -f 'util/resolve.c' || echo '$(srcdir)/'`util/resolve.c - -util/grub_mkrescue-resolve.obj: util/resolve.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkrescue_CPPFLAGS) $(CPPFLAGS) $(grub_mkrescue_CFLAGS) $(CFLAGS) -MT util/grub_mkrescue-resolve.obj -MD -MP -MF util/$(DEPDIR)/grub_mkrescue-resolve.Tpo -c -o util/grub_mkrescue-resolve.obj `if test -f 'util/resolve.c'; then $(CYGPATH_W) 'util/resolve.c'; else $(CYGPATH_W) '$(srcdir)/util/resolve.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_mkrescue-resolve.Tpo util/$(DEPDIR)/grub_mkrescue-resolve.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/resolve.c' object='util/grub_mkrescue-resolve.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkrescue_CPPFLAGS) $(CPPFLAGS) $(grub_mkrescue_CFLAGS) $(CFLAGS) -c -o util/grub_mkrescue-resolve.obj `if test -f 'util/resolve.c'; then $(CYGPATH_W) 'util/resolve.c'; else $(CYGPATH_W) '$(srcdir)/util/resolve.c'; fi` - -grub-core/kern/emu/grub_mkrescue-argp_common.o: grub-core/kern/emu/argp_common.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkrescue_CPPFLAGS) $(CPPFLAGS) $(grub_mkrescue_CFLAGS) $(CFLAGS) -MT grub-core/kern/emu/grub_mkrescue-argp_common.o -MD -MP -MF grub-core/kern/emu/$(DEPDIR)/grub_mkrescue-argp_common.Tpo -c -o grub-core/kern/emu/grub_mkrescue-argp_common.o `test -f 'grub-core/kern/emu/argp_common.c' || echo '$(srcdir)/'`grub-core/kern/emu/argp_common.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/kern/emu/$(DEPDIR)/grub_mkrescue-argp_common.Tpo grub-core/kern/emu/$(DEPDIR)/grub_mkrescue-argp_common.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/kern/emu/argp_common.c' object='grub-core/kern/emu/grub_mkrescue-argp_common.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkrescue_CPPFLAGS) $(CPPFLAGS) $(grub_mkrescue_CFLAGS) $(CFLAGS) -c -o grub-core/kern/emu/grub_mkrescue-argp_common.o `test -f 'grub-core/kern/emu/argp_common.c' || echo '$(srcdir)/'`grub-core/kern/emu/argp_common.c - -grub-core/kern/emu/grub_mkrescue-argp_common.obj: grub-core/kern/emu/argp_common.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkrescue_CPPFLAGS) $(CPPFLAGS) $(grub_mkrescue_CFLAGS) $(CFLAGS) -MT grub-core/kern/emu/grub_mkrescue-argp_common.obj -MD -MP -MF grub-core/kern/emu/$(DEPDIR)/grub_mkrescue-argp_common.Tpo -c -o grub-core/kern/emu/grub_mkrescue-argp_common.obj `if test -f 'grub-core/kern/emu/argp_common.c'; then $(CYGPATH_W) 'grub-core/kern/emu/argp_common.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/kern/emu/argp_common.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/kern/emu/$(DEPDIR)/grub_mkrescue-argp_common.Tpo grub-core/kern/emu/$(DEPDIR)/grub_mkrescue-argp_common.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/kern/emu/argp_common.c' object='grub-core/kern/emu/grub_mkrescue-argp_common.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkrescue_CPPFLAGS) $(CPPFLAGS) $(grub_mkrescue_CFLAGS) $(CFLAGS) -c -o grub-core/kern/emu/grub_mkrescue-argp_common.obj `if test -f 'grub-core/kern/emu/argp_common.c'; then $(CYGPATH_W) 'grub-core/kern/emu/argp_common.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/kern/emu/argp_common.c'; fi` - -grub-core/osdep/grub_mkrescue-init.o: grub-core/osdep/init.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkrescue_CPPFLAGS) $(CPPFLAGS) $(grub_mkrescue_CFLAGS) $(CFLAGS) -MT grub-core/osdep/grub_mkrescue-init.o -MD -MP -MF grub-core/osdep/$(DEPDIR)/grub_mkrescue-init.Tpo -c -o grub-core/osdep/grub_mkrescue-init.o `test -f 'grub-core/osdep/init.c' || echo '$(srcdir)/'`grub-core/osdep/init.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/osdep/$(DEPDIR)/grub_mkrescue-init.Tpo grub-core/osdep/$(DEPDIR)/grub_mkrescue-init.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/osdep/init.c' object='grub-core/osdep/grub_mkrescue-init.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkrescue_CPPFLAGS) $(CPPFLAGS) $(grub_mkrescue_CFLAGS) $(CFLAGS) -c -o grub-core/osdep/grub_mkrescue-init.o `test -f 'grub-core/osdep/init.c' || echo '$(srcdir)/'`grub-core/osdep/init.c - -grub-core/osdep/grub_mkrescue-init.obj: grub-core/osdep/init.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkrescue_CPPFLAGS) $(CPPFLAGS) $(grub_mkrescue_CFLAGS) $(CFLAGS) -MT grub-core/osdep/grub_mkrescue-init.obj -MD -MP -MF grub-core/osdep/$(DEPDIR)/grub_mkrescue-init.Tpo -c -o grub-core/osdep/grub_mkrescue-init.obj `if test -f 'grub-core/osdep/init.c'; then $(CYGPATH_W) 'grub-core/osdep/init.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/osdep/init.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/osdep/$(DEPDIR)/grub_mkrescue-init.Tpo grub-core/osdep/$(DEPDIR)/grub_mkrescue-init.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/osdep/init.c' object='grub-core/osdep/grub_mkrescue-init.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkrescue_CPPFLAGS) $(CPPFLAGS) $(grub_mkrescue_CFLAGS) $(CFLAGS) -c -o grub-core/osdep/grub_mkrescue-init.obj `if test -f 'grub-core/osdep/init.c'; then $(CYGPATH_W) 'grub-core/osdep/init.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/osdep/init.c'; fi` - -util/grub_mkstandalone-grub-mkstandalone.o: util/grub-mkstandalone.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkstandalone_CPPFLAGS) $(CPPFLAGS) $(grub_mkstandalone_CFLAGS) $(CFLAGS) -MT util/grub_mkstandalone-grub-mkstandalone.o -MD -MP -MF util/$(DEPDIR)/grub_mkstandalone-grub-mkstandalone.Tpo -c -o util/grub_mkstandalone-grub-mkstandalone.o `test -f 'util/grub-mkstandalone.c' || echo '$(srcdir)/'`util/grub-mkstandalone.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_mkstandalone-grub-mkstandalone.Tpo util/$(DEPDIR)/grub_mkstandalone-grub-mkstandalone.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/grub-mkstandalone.c' object='util/grub_mkstandalone-grub-mkstandalone.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkstandalone_CPPFLAGS) $(CPPFLAGS) $(grub_mkstandalone_CFLAGS) $(CFLAGS) -c -o util/grub_mkstandalone-grub-mkstandalone.o `test -f 'util/grub-mkstandalone.c' || echo '$(srcdir)/'`util/grub-mkstandalone.c - -util/grub_mkstandalone-grub-mkstandalone.obj: util/grub-mkstandalone.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkstandalone_CPPFLAGS) $(CPPFLAGS) $(grub_mkstandalone_CFLAGS) $(CFLAGS) -MT util/grub_mkstandalone-grub-mkstandalone.obj -MD -MP -MF util/$(DEPDIR)/grub_mkstandalone-grub-mkstandalone.Tpo -c -o util/grub_mkstandalone-grub-mkstandalone.obj `if test -f 'util/grub-mkstandalone.c'; then $(CYGPATH_W) 'util/grub-mkstandalone.c'; else $(CYGPATH_W) '$(srcdir)/util/grub-mkstandalone.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_mkstandalone-grub-mkstandalone.Tpo util/$(DEPDIR)/grub_mkstandalone-grub-mkstandalone.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/grub-mkstandalone.c' object='util/grub_mkstandalone-grub-mkstandalone.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkstandalone_CPPFLAGS) $(CPPFLAGS) $(grub_mkstandalone_CFLAGS) $(CFLAGS) -c -o util/grub_mkstandalone-grub-mkstandalone.obj `if test -f 'util/grub-mkstandalone.c'; then $(CYGPATH_W) 'util/grub-mkstandalone.c'; else $(CYGPATH_W) '$(srcdir)/util/grub-mkstandalone.c'; fi` - -util/grub_mkstandalone-render-label.o: util/render-label.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkstandalone_CPPFLAGS) $(CPPFLAGS) $(grub_mkstandalone_CFLAGS) $(CFLAGS) -MT util/grub_mkstandalone-render-label.o -MD -MP -MF util/$(DEPDIR)/grub_mkstandalone-render-label.Tpo -c -o util/grub_mkstandalone-render-label.o `test -f 'util/render-label.c' || echo '$(srcdir)/'`util/render-label.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_mkstandalone-render-label.Tpo util/$(DEPDIR)/grub_mkstandalone-render-label.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/render-label.c' object='util/grub_mkstandalone-render-label.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkstandalone_CPPFLAGS) $(CPPFLAGS) $(grub_mkstandalone_CFLAGS) $(CFLAGS) -c -o util/grub_mkstandalone-render-label.o `test -f 'util/render-label.c' || echo '$(srcdir)/'`util/render-label.c - -util/grub_mkstandalone-render-label.obj: util/render-label.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkstandalone_CPPFLAGS) $(CPPFLAGS) $(grub_mkstandalone_CFLAGS) $(CFLAGS) -MT util/grub_mkstandalone-render-label.obj -MD -MP -MF util/$(DEPDIR)/grub_mkstandalone-render-label.Tpo -c -o util/grub_mkstandalone-render-label.obj `if test -f 'util/render-label.c'; then $(CYGPATH_W) 'util/render-label.c'; else $(CYGPATH_W) '$(srcdir)/util/render-label.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_mkstandalone-render-label.Tpo util/$(DEPDIR)/grub_mkstandalone-render-label.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/render-label.c' object='util/grub_mkstandalone-render-label.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkstandalone_CPPFLAGS) $(CPPFLAGS) $(grub_mkstandalone_CFLAGS) $(CFLAGS) -c -o util/grub_mkstandalone-render-label.obj `if test -f 'util/render-label.c'; then $(CYGPATH_W) 'util/render-label.c'; else $(CYGPATH_W) '$(srcdir)/util/render-label.c'; fi` - -util/grub_mkstandalone-glue-efi.o: util/glue-efi.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkstandalone_CPPFLAGS) $(CPPFLAGS) $(grub_mkstandalone_CFLAGS) $(CFLAGS) -MT util/grub_mkstandalone-glue-efi.o -MD -MP -MF util/$(DEPDIR)/grub_mkstandalone-glue-efi.Tpo -c -o util/grub_mkstandalone-glue-efi.o `test -f 'util/glue-efi.c' || echo '$(srcdir)/'`util/glue-efi.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_mkstandalone-glue-efi.Tpo util/$(DEPDIR)/grub_mkstandalone-glue-efi.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/glue-efi.c' object='util/grub_mkstandalone-glue-efi.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkstandalone_CPPFLAGS) $(CPPFLAGS) $(grub_mkstandalone_CFLAGS) $(CFLAGS) -c -o util/grub_mkstandalone-glue-efi.o `test -f 'util/glue-efi.c' || echo '$(srcdir)/'`util/glue-efi.c - -util/grub_mkstandalone-glue-efi.obj: util/glue-efi.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkstandalone_CPPFLAGS) $(CPPFLAGS) $(grub_mkstandalone_CFLAGS) $(CFLAGS) -MT util/grub_mkstandalone-glue-efi.obj -MD -MP -MF util/$(DEPDIR)/grub_mkstandalone-glue-efi.Tpo -c -o util/grub_mkstandalone-glue-efi.obj `if test -f 'util/glue-efi.c'; then $(CYGPATH_W) 'util/glue-efi.c'; else $(CYGPATH_W) '$(srcdir)/util/glue-efi.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_mkstandalone-glue-efi.Tpo util/$(DEPDIR)/grub_mkstandalone-glue-efi.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/glue-efi.c' object='util/grub_mkstandalone-glue-efi.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkstandalone_CPPFLAGS) $(CPPFLAGS) $(grub_mkstandalone_CFLAGS) $(CFLAGS) -c -o util/grub_mkstandalone-glue-efi.obj `if test -f 'util/glue-efi.c'; then $(CYGPATH_W) 'util/glue-efi.c'; else $(CYGPATH_W) '$(srcdir)/util/glue-efi.c'; fi` - -util/grub_mkstandalone-mkimage.o: util/mkimage.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkstandalone_CPPFLAGS) $(CPPFLAGS) $(grub_mkstandalone_CFLAGS) $(CFLAGS) -MT util/grub_mkstandalone-mkimage.o -MD -MP -MF util/$(DEPDIR)/grub_mkstandalone-mkimage.Tpo -c -o util/grub_mkstandalone-mkimage.o `test -f 'util/mkimage.c' || echo '$(srcdir)/'`util/mkimage.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_mkstandalone-mkimage.Tpo util/$(DEPDIR)/grub_mkstandalone-mkimage.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/mkimage.c' object='util/grub_mkstandalone-mkimage.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkstandalone_CPPFLAGS) $(CPPFLAGS) $(grub_mkstandalone_CFLAGS) $(CFLAGS) -c -o util/grub_mkstandalone-mkimage.o `test -f 'util/mkimage.c' || echo '$(srcdir)/'`util/mkimage.c - -util/grub_mkstandalone-mkimage.obj: util/mkimage.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkstandalone_CPPFLAGS) $(CPPFLAGS) $(grub_mkstandalone_CFLAGS) $(CFLAGS) -MT util/grub_mkstandalone-mkimage.obj -MD -MP -MF util/$(DEPDIR)/grub_mkstandalone-mkimage.Tpo -c -o util/grub_mkstandalone-mkimage.obj `if test -f 'util/mkimage.c'; then $(CYGPATH_W) 'util/mkimage.c'; else $(CYGPATH_W) '$(srcdir)/util/mkimage.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_mkstandalone-mkimage.Tpo util/$(DEPDIR)/grub_mkstandalone-mkimage.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/mkimage.c' object='util/grub_mkstandalone-mkimage.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkstandalone_CPPFLAGS) $(CPPFLAGS) $(grub_mkstandalone_CFLAGS) $(CFLAGS) -c -o util/grub_mkstandalone-mkimage.obj `if test -f 'util/mkimage.c'; then $(CYGPATH_W) 'util/mkimage.c'; else $(CYGPATH_W) '$(srcdir)/util/mkimage.c'; fi` - -util/grub_mkstandalone-grub-mkimage32.o: util/grub-mkimage32.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkstandalone_CPPFLAGS) $(CPPFLAGS) $(grub_mkstandalone_CFLAGS) $(CFLAGS) -MT util/grub_mkstandalone-grub-mkimage32.o -MD -MP -MF util/$(DEPDIR)/grub_mkstandalone-grub-mkimage32.Tpo -c -o util/grub_mkstandalone-grub-mkimage32.o `test -f 'util/grub-mkimage32.c' || echo '$(srcdir)/'`util/grub-mkimage32.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_mkstandalone-grub-mkimage32.Tpo util/$(DEPDIR)/grub_mkstandalone-grub-mkimage32.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/grub-mkimage32.c' object='util/grub_mkstandalone-grub-mkimage32.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkstandalone_CPPFLAGS) $(CPPFLAGS) $(grub_mkstandalone_CFLAGS) $(CFLAGS) -c -o util/grub_mkstandalone-grub-mkimage32.o `test -f 'util/grub-mkimage32.c' || echo '$(srcdir)/'`util/grub-mkimage32.c - -util/grub_mkstandalone-grub-mkimage32.obj: util/grub-mkimage32.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkstandalone_CPPFLAGS) $(CPPFLAGS) $(grub_mkstandalone_CFLAGS) $(CFLAGS) -MT util/grub_mkstandalone-grub-mkimage32.obj -MD -MP -MF util/$(DEPDIR)/grub_mkstandalone-grub-mkimage32.Tpo -c -o util/grub_mkstandalone-grub-mkimage32.obj `if test -f 'util/grub-mkimage32.c'; then $(CYGPATH_W) 'util/grub-mkimage32.c'; else $(CYGPATH_W) '$(srcdir)/util/grub-mkimage32.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_mkstandalone-grub-mkimage32.Tpo util/$(DEPDIR)/grub_mkstandalone-grub-mkimage32.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/grub-mkimage32.c' object='util/grub_mkstandalone-grub-mkimage32.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkstandalone_CPPFLAGS) $(CPPFLAGS) $(grub_mkstandalone_CFLAGS) $(CFLAGS) -c -o util/grub_mkstandalone-grub-mkimage32.obj `if test -f 'util/grub-mkimage32.c'; then $(CYGPATH_W) 'util/grub-mkimage32.c'; else $(CYGPATH_W) '$(srcdir)/util/grub-mkimage32.c'; fi` - -util/grub_mkstandalone-grub-mkimage64.o: util/grub-mkimage64.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkstandalone_CPPFLAGS) $(CPPFLAGS) $(grub_mkstandalone_CFLAGS) $(CFLAGS) -MT util/grub_mkstandalone-grub-mkimage64.o -MD -MP -MF util/$(DEPDIR)/grub_mkstandalone-grub-mkimage64.Tpo -c -o util/grub_mkstandalone-grub-mkimage64.o `test -f 'util/grub-mkimage64.c' || echo '$(srcdir)/'`util/grub-mkimage64.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_mkstandalone-grub-mkimage64.Tpo util/$(DEPDIR)/grub_mkstandalone-grub-mkimage64.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/grub-mkimage64.c' object='util/grub_mkstandalone-grub-mkimage64.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkstandalone_CPPFLAGS) $(CPPFLAGS) $(grub_mkstandalone_CFLAGS) $(CFLAGS) -c -o util/grub_mkstandalone-grub-mkimage64.o `test -f 'util/grub-mkimage64.c' || echo '$(srcdir)/'`util/grub-mkimage64.c - -util/grub_mkstandalone-grub-mkimage64.obj: util/grub-mkimage64.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkstandalone_CPPFLAGS) $(CPPFLAGS) $(grub_mkstandalone_CFLAGS) $(CFLAGS) -MT util/grub_mkstandalone-grub-mkimage64.obj -MD -MP -MF util/$(DEPDIR)/grub_mkstandalone-grub-mkimage64.Tpo -c -o util/grub_mkstandalone-grub-mkimage64.obj `if test -f 'util/grub-mkimage64.c'; then $(CYGPATH_W) 'util/grub-mkimage64.c'; else $(CYGPATH_W) '$(srcdir)/util/grub-mkimage64.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_mkstandalone-grub-mkimage64.Tpo util/$(DEPDIR)/grub_mkstandalone-grub-mkimage64.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/grub-mkimage64.c' object='util/grub_mkstandalone-grub-mkimage64.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkstandalone_CPPFLAGS) $(CPPFLAGS) $(grub_mkstandalone_CFLAGS) $(CFLAGS) -c -o util/grub_mkstandalone-grub-mkimage64.obj `if test -f 'util/grub-mkimage64.c'; then $(CYGPATH_W) 'util/grub-mkimage64.c'; else $(CYGPATH_W) '$(srcdir)/util/grub-mkimage64.c'; fi` - -util/grub_mkstandalone-grub-install-common.o: util/grub-install-common.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkstandalone_CPPFLAGS) $(CPPFLAGS) $(grub_mkstandalone_CFLAGS) $(CFLAGS) -MT util/grub_mkstandalone-grub-install-common.o -MD -MP -MF util/$(DEPDIR)/grub_mkstandalone-grub-install-common.Tpo -c -o util/grub_mkstandalone-grub-install-common.o `test -f 'util/grub-install-common.c' || echo '$(srcdir)/'`util/grub-install-common.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_mkstandalone-grub-install-common.Tpo util/$(DEPDIR)/grub_mkstandalone-grub-install-common.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/grub-install-common.c' object='util/grub_mkstandalone-grub-install-common.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkstandalone_CPPFLAGS) $(CPPFLAGS) $(grub_mkstandalone_CFLAGS) $(CFLAGS) -c -o util/grub_mkstandalone-grub-install-common.o `test -f 'util/grub-install-common.c' || echo '$(srcdir)/'`util/grub-install-common.c - -util/grub_mkstandalone-grub-install-common.obj: util/grub-install-common.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkstandalone_CPPFLAGS) $(CPPFLAGS) $(grub_mkstandalone_CFLAGS) $(CFLAGS) -MT util/grub_mkstandalone-grub-install-common.obj -MD -MP -MF util/$(DEPDIR)/grub_mkstandalone-grub-install-common.Tpo -c -o util/grub_mkstandalone-grub-install-common.obj `if test -f 'util/grub-install-common.c'; then $(CYGPATH_W) 'util/grub-install-common.c'; else $(CYGPATH_W) '$(srcdir)/util/grub-install-common.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_mkstandalone-grub-install-common.Tpo util/$(DEPDIR)/grub_mkstandalone-grub-install-common.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/grub-install-common.c' object='util/grub_mkstandalone-grub-install-common.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkstandalone_CPPFLAGS) $(CPPFLAGS) $(grub_mkstandalone_CFLAGS) $(CFLAGS) -c -o util/grub_mkstandalone-grub-install-common.obj `if test -f 'util/grub-install-common.c'; then $(CYGPATH_W) 'util/grub-install-common.c'; else $(CYGPATH_W) '$(srcdir)/util/grub-install-common.c'; fi` - -util/grub_mkstandalone-setup_bios.o: util/setup_bios.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkstandalone_CPPFLAGS) $(CPPFLAGS) $(grub_mkstandalone_CFLAGS) $(CFLAGS) -MT util/grub_mkstandalone-setup_bios.o -MD -MP -MF util/$(DEPDIR)/grub_mkstandalone-setup_bios.Tpo -c -o util/grub_mkstandalone-setup_bios.o `test -f 'util/setup_bios.c' || echo '$(srcdir)/'`util/setup_bios.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_mkstandalone-setup_bios.Tpo util/$(DEPDIR)/grub_mkstandalone-setup_bios.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/setup_bios.c' object='util/grub_mkstandalone-setup_bios.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkstandalone_CPPFLAGS) $(CPPFLAGS) $(grub_mkstandalone_CFLAGS) $(CFLAGS) -c -o util/grub_mkstandalone-setup_bios.o `test -f 'util/setup_bios.c' || echo '$(srcdir)/'`util/setup_bios.c - -util/grub_mkstandalone-setup_bios.obj: util/setup_bios.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkstandalone_CPPFLAGS) $(CPPFLAGS) $(grub_mkstandalone_CFLAGS) $(CFLAGS) -MT util/grub_mkstandalone-setup_bios.obj -MD -MP -MF util/$(DEPDIR)/grub_mkstandalone-setup_bios.Tpo -c -o util/grub_mkstandalone-setup_bios.obj `if test -f 'util/setup_bios.c'; then $(CYGPATH_W) 'util/setup_bios.c'; else $(CYGPATH_W) '$(srcdir)/util/setup_bios.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_mkstandalone-setup_bios.Tpo util/$(DEPDIR)/grub_mkstandalone-setup_bios.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/setup_bios.c' object='util/grub_mkstandalone-setup_bios.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkstandalone_CPPFLAGS) $(CPPFLAGS) $(grub_mkstandalone_CFLAGS) $(CFLAGS) -c -o util/grub_mkstandalone-setup_bios.obj `if test -f 'util/setup_bios.c'; then $(CYGPATH_W) 'util/setup_bios.c'; else $(CYGPATH_W) '$(srcdir)/util/setup_bios.c'; fi` - -util/grub_mkstandalone-setup_sparc.o: util/setup_sparc.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkstandalone_CPPFLAGS) $(CPPFLAGS) $(grub_mkstandalone_CFLAGS) $(CFLAGS) -MT util/grub_mkstandalone-setup_sparc.o -MD -MP -MF util/$(DEPDIR)/grub_mkstandalone-setup_sparc.Tpo -c -o util/grub_mkstandalone-setup_sparc.o `test -f 'util/setup_sparc.c' || echo '$(srcdir)/'`util/setup_sparc.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_mkstandalone-setup_sparc.Tpo util/$(DEPDIR)/grub_mkstandalone-setup_sparc.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/setup_sparc.c' object='util/grub_mkstandalone-setup_sparc.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkstandalone_CPPFLAGS) $(CPPFLAGS) $(grub_mkstandalone_CFLAGS) $(CFLAGS) -c -o util/grub_mkstandalone-setup_sparc.o `test -f 'util/setup_sparc.c' || echo '$(srcdir)/'`util/setup_sparc.c - -util/grub_mkstandalone-setup_sparc.obj: util/setup_sparc.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkstandalone_CPPFLAGS) $(CPPFLAGS) $(grub_mkstandalone_CFLAGS) $(CFLAGS) -MT util/grub_mkstandalone-setup_sparc.obj -MD -MP -MF util/$(DEPDIR)/grub_mkstandalone-setup_sparc.Tpo -c -o util/grub_mkstandalone-setup_sparc.obj `if test -f 'util/setup_sparc.c'; then $(CYGPATH_W) 'util/setup_sparc.c'; else $(CYGPATH_W) '$(srcdir)/util/setup_sparc.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_mkstandalone-setup_sparc.Tpo util/$(DEPDIR)/grub_mkstandalone-setup_sparc.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/setup_sparc.c' object='util/grub_mkstandalone-setup_sparc.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkstandalone_CPPFLAGS) $(CPPFLAGS) $(grub_mkstandalone_CFLAGS) $(CFLAGS) -c -o util/grub_mkstandalone-setup_sparc.obj `if test -f 'util/setup_sparc.c'; then $(CYGPATH_W) 'util/setup_sparc.c'; else $(CYGPATH_W) '$(srcdir)/util/setup_sparc.c'; fi` - -grub-core/lib/grub_mkstandalone-reed_solomon.o: grub-core/lib/reed_solomon.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkstandalone_CPPFLAGS) $(CPPFLAGS) $(grub_mkstandalone_CFLAGS) $(CFLAGS) -MT grub-core/lib/grub_mkstandalone-reed_solomon.o -MD -MP -MF grub-core/lib/$(DEPDIR)/grub_mkstandalone-reed_solomon.Tpo -c -o grub-core/lib/grub_mkstandalone-reed_solomon.o `test -f 'grub-core/lib/reed_solomon.c' || echo '$(srcdir)/'`grub-core/lib/reed_solomon.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/lib/$(DEPDIR)/grub_mkstandalone-reed_solomon.Tpo grub-core/lib/$(DEPDIR)/grub_mkstandalone-reed_solomon.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/lib/reed_solomon.c' object='grub-core/lib/grub_mkstandalone-reed_solomon.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkstandalone_CPPFLAGS) $(CPPFLAGS) $(grub_mkstandalone_CFLAGS) $(CFLAGS) -c -o grub-core/lib/grub_mkstandalone-reed_solomon.o `test -f 'grub-core/lib/reed_solomon.c' || echo '$(srcdir)/'`grub-core/lib/reed_solomon.c - -grub-core/lib/grub_mkstandalone-reed_solomon.obj: grub-core/lib/reed_solomon.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkstandalone_CPPFLAGS) $(CPPFLAGS) $(grub_mkstandalone_CFLAGS) $(CFLAGS) -MT grub-core/lib/grub_mkstandalone-reed_solomon.obj -MD -MP -MF grub-core/lib/$(DEPDIR)/grub_mkstandalone-reed_solomon.Tpo -c -o grub-core/lib/grub_mkstandalone-reed_solomon.obj `if test -f 'grub-core/lib/reed_solomon.c'; then $(CYGPATH_W) 'grub-core/lib/reed_solomon.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/lib/reed_solomon.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/lib/$(DEPDIR)/grub_mkstandalone-reed_solomon.Tpo grub-core/lib/$(DEPDIR)/grub_mkstandalone-reed_solomon.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/lib/reed_solomon.c' object='grub-core/lib/grub_mkstandalone-reed_solomon.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkstandalone_CPPFLAGS) $(CPPFLAGS) $(grub_mkstandalone_CFLAGS) $(CFLAGS) -c -o grub-core/lib/grub_mkstandalone-reed_solomon.obj `if test -f 'grub-core/lib/reed_solomon.c'; then $(CYGPATH_W) 'grub-core/lib/reed_solomon.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/lib/reed_solomon.c'; fi` - -grub-core/osdep/grub_mkstandalone-random.o: grub-core/osdep/random.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkstandalone_CPPFLAGS) $(CPPFLAGS) $(grub_mkstandalone_CFLAGS) $(CFLAGS) -MT grub-core/osdep/grub_mkstandalone-random.o -MD -MP -MF grub-core/osdep/$(DEPDIR)/grub_mkstandalone-random.Tpo -c -o grub-core/osdep/grub_mkstandalone-random.o `test -f 'grub-core/osdep/random.c' || echo '$(srcdir)/'`grub-core/osdep/random.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/osdep/$(DEPDIR)/grub_mkstandalone-random.Tpo grub-core/osdep/$(DEPDIR)/grub_mkstandalone-random.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/osdep/random.c' object='grub-core/osdep/grub_mkstandalone-random.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkstandalone_CPPFLAGS) $(CPPFLAGS) $(grub_mkstandalone_CFLAGS) $(CFLAGS) -c -o grub-core/osdep/grub_mkstandalone-random.o `test -f 'grub-core/osdep/random.c' || echo '$(srcdir)/'`grub-core/osdep/random.c - -grub-core/osdep/grub_mkstandalone-random.obj: grub-core/osdep/random.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkstandalone_CPPFLAGS) $(CPPFLAGS) $(grub_mkstandalone_CFLAGS) $(CFLAGS) -MT grub-core/osdep/grub_mkstandalone-random.obj -MD -MP -MF grub-core/osdep/$(DEPDIR)/grub_mkstandalone-random.Tpo -c -o grub-core/osdep/grub_mkstandalone-random.obj `if test -f 'grub-core/osdep/random.c'; then $(CYGPATH_W) 'grub-core/osdep/random.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/osdep/random.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/osdep/$(DEPDIR)/grub_mkstandalone-random.Tpo grub-core/osdep/$(DEPDIR)/grub_mkstandalone-random.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/osdep/random.c' object='grub-core/osdep/grub_mkstandalone-random.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkstandalone_CPPFLAGS) $(CPPFLAGS) $(grub_mkstandalone_CFLAGS) $(CFLAGS) -c -o grub-core/osdep/grub_mkstandalone-random.obj `if test -f 'grub-core/osdep/random.c'; then $(CYGPATH_W) 'grub-core/osdep/random.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/osdep/random.c'; fi` - -grub-core/osdep/grub_mkstandalone-ofpath.o: grub-core/osdep/ofpath.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkstandalone_CPPFLAGS) $(CPPFLAGS) $(grub_mkstandalone_CFLAGS) $(CFLAGS) -MT grub-core/osdep/grub_mkstandalone-ofpath.o -MD -MP -MF grub-core/osdep/$(DEPDIR)/grub_mkstandalone-ofpath.Tpo -c -o grub-core/osdep/grub_mkstandalone-ofpath.o `test -f 'grub-core/osdep/ofpath.c' || echo '$(srcdir)/'`grub-core/osdep/ofpath.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/osdep/$(DEPDIR)/grub_mkstandalone-ofpath.Tpo grub-core/osdep/$(DEPDIR)/grub_mkstandalone-ofpath.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/osdep/ofpath.c' object='grub-core/osdep/grub_mkstandalone-ofpath.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkstandalone_CPPFLAGS) $(CPPFLAGS) $(grub_mkstandalone_CFLAGS) $(CFLAGS) -c -o grub-core/osdep/grub_mkstandalone-ofpath.o `test -f 'grub-core/osdep/ofpath.c' || echo '$(srcdir)/'`grub-core/osdep/ofpath.c - -grub-core/osdep/grub_mkstandalone-ofpath.obj: grub-core/osdep/ofpath.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkstandalone_CPPFLAGS) $(CPPFLAGS) $(grub_mkstandalone_CFLAGS) $(CFLAGS) -MT grub-core/osdep/grub_mkstandalone-ofpath.obj -MD -MP -MF grub-core/osdep/$(DEPDIR)/grub_mkstandalone-ofpath.Tpo -c -o grub-core/osdep/grub_mkstandalone-ofpath.obj `if test -f 'grub-core/osdep/ofpath.c'; then $(CYGPATH_W) 'grub-core/osdep/ofpath.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/osdep/ofpath.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/osdep/$(DEPDIR)/grub_mkstandalone-ofpath.Tpo grub-core/osdep/$(DEPDIR)/grub_mkstandalone-ofpath.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/osdep/ofpath.c' object='grub-core/osdep/grub_mkstandalone-ofpath.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkstandalone_CPPFLAGS) $(CPPFLAGS) $(grub_mkstandalone_CFLAGS) $(CFLAGS) -c -o grub-core/osdep/grub_mkstandalone-ofpath.obj `if test -f 'grub-core/osdep/ofpath.c'; then $(CYGPATH_W) 'grub-core/osdep/ofpath.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/osdep/ofpath.c'; fi` - -grub-core/osdep/grub_mkstandalone-platform.o: grub-core/osdep/platform.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkstandalone_CPPFLAGS) $(CPPFLAGS) $(grub_mkstandalone_CFLAGS) $(CFLAGS) -MT grub-core/osdep/grub_mkstandalone-platform.o -MD -MP -MF grub-core/osdep/$(DEPDIR)/grub_mkstandalone-platform.Tpo -c -o grub-core/osdep/grub_mkstandalone-platform.o `test -f 'grub-core/osdep/platform.c' || echo '$(srcdir)/'`grub-core/osdep/platform.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/osdep/$(DEPDIR)/grub_mkstandalone-platform.Tpo grub-core/osdep/$(DEPDIR)/grub_mkstandalone-platform.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/osdep/platform.c' object='grub-core/osdep/grub_mkstandalone-platform.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkstandalone_CPPFLAGS) $(CPPFLAGS) $(grub_mkstandalone_CFLAGS) $(CFLAGS) -c -o grub-core/osdep/grub_mkstandalone-platform.o `test -f 'grub-core/osdep/platform.c' || echo '$(srcdir)/'`grub-core/osdep/platform.c - -grub-core/osdep/grub_mkstandalone-platform.obj: grub-core/osdep/platform.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkstandalone_CPPFLAGS) $(CPPFLAGS) $(grub_mkstandalone_CFLAGS) $(CFLAGS) -MT grub-core/osdep/grub_mkstandalone-platform.obj -MD -MP -MF grub-core/osdep/$(DEPDIR)/grub_mkstandalone-platform.Tpo -c -o grub-core/osdep/grub_mkstandalone-platform.obj `if test -f 'grub-core/osdep/platform.c'; then $(CYGPATH_W) 'grub-core/osdep/platform.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/osdep/platform.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/osdep/$(DEPDIR)/grub_mkstandalone-platform.Tpo grub-core/osdep/$(DEPDIR)/grub_mkstandalone-platform.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/osdep/platform.c' object='grub-core/osdep/grub_mkstandalone-platform.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkstandalone_CPPFLAGS) $(CPPFLAGS) $(grub_mkstandalone_CFLAGS) $(CFLAGS) -c -o grub-core/osdep/grub_mkstandalone-platform.obj `if test -f 'grub-core/osdep/platform.c'; then $(CYGPATH_W) 'grub-core/osdep/platform.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/osdep/platform.c'; fi` - -grub-core/osdep/grub_mkstandalone-platform_unix.o: grub-core/osdep/platform_unix.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkstandalone_CPPFLAGS) $(CPPFLAGS) $(grub_mkstandalone_CFLAGS) $(CFLAGS) -MT grub-core/osdep/grub_mkstandalone-platform_unix.o -MD -MP -MF grub-core/osdep/$(DEPDIR)/grub_mkstandalone-platform_unix.Tpo -c -o grub-core/osdep/grub_mkstandalone-platform_unix.o `test -f 'grub-core/osdep/platform_unix.c' || echo '$(srcdir)/'`grub-core/osdep/platform_unix.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/osdep/$(DEPDIR)/grub_mkstandalone-platform_unix.Tpo grub-core/osdep/$(DEPDIR)/grub_mkstandalone-platform_unix.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/osdep/platform_unix.c' object='grub-core/osdep/grub_mkstandalone-platform_unix.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkstandalone_CPPFLAGS) $(CPPFLAGS) $(grub_mkstandalone_CFLAGS) $(CFLAGS) -c -o grub-core/osdep/grub_mkstandalone-platform_unix.o `test -f 'grub-core/osdep/platform_unix.c' || echo '$(srcdir)/'`grub-core/osdep/platform_unix.c - -grub-core/osdep/grub_mkstandalone-platform_unix.obj: grub-core/osdep/platform_unix.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkstandalone_CPPFLAGS) $(CPPFLAGS) $(grub_mkstandalone_CFLAGS) $(CFLAGS) -MT grub-core/osdep/grub_mkstandalone-platform_unix.obj -MD -MP -MF grub-core/osdep/$(DEPDIR)/grub_mkstandalone-platform_unix.Tpo -c -o grub-core/osdep/grub_mkstandalone-platform_unix.obj `if test -f 'grub-core/osdep/platform_unix.c'; then $(CYGPATH_W) 'grub-core/osdep/platform_unix.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/osdep/platform_unix.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/osdep/$(DEPDIR)/grub_mkstandalone-platform_unix.Tpo grub-core/osdep/$(DEPDIR)/grub_mkstandalone-platform_unix.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/osdep/platform_unix.c' object='grub-core/osdep/grub_mkstandalone-platform_unix.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkstandalone_CPPFLAGS) $(CPPFLAGS) $(grub_mkstandalone_CFLAGS) $(CFLAGS) -c -o grub-core/osdep/grub_mkstandalone-platform_unix.obj `if test -f 'grub-core/osdep/platform_unix.c'; then $(CYGPATH_W) 'grub-core/osdep/platform_unix.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/osdep/platform_unix.c'; fi` - -grub-core/osdep/grub_mkstandalone-compress.o: grub-core/osdep/compress.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkstandalone_CPPFLAGS) $(CPPFLAGS) $(grub_mkstandalone_CFLAGS) $(CFLAGS) -MT grub-core/osdep/grub_mkstandalone-compress.o -MD -MP -MF grub-core/osdep/$(DEPDIR)/grub_mkstandalone-compress.Tpo -c -o grub-core/osdep/grub_mkstandalone-compress.o `test -f 'grub-core/osdep/compress.c' || echo '$(srcdir)/'`grub-core/osdep/compress.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/osdep/$(DEPDIR)/grub_mkstandalone-compress.Tpo grub-core/osdep/$(DEPDIR)/grub_mkstandalone-compress.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/osdep/compress.c' object='grub-core/osdep/grub_mkstandalone-compress.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkstandalone_CPPFLAGS) $(CPPFLAGS) $(grub_mkstandalone_CFLAGS) $(CFLAGS) -c -o grub-core/osdep/grub_mkstandalone-compress.o `test -f 'grub-core/osdep/compress.c' || echo '$(srcdir)/'`grub-core/osdep/compress.c - -grub-core/osdep/grub_mkstandalone-compress.obj: grub-core/osdep/compress.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkstandalone_CPPFLAGS) $(CPPFLAGS) $(grub_mkstandalone_CFLAGS) $(CFLAGS) -MT grub-core/osdep/grub_mkstandalone-compress.obj -MD -MP -MF grub-core/osdep/$(DEPDIR)/grub_mkstandalone-compress.Tpo -c -o grub-core/osdep/grub_mkstandalone-compress.obj `if test -f 'grub-core/osdep/compress.c'; then $(CYGPATH_W) 'grub-core/osdep/compress.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/osdep/compress.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/osdep/$(DEPDIR)/grub_mkstandalone-compress.Tpo grub-core/osdep/$(DEPDIR)/grub_mkstandalone-compress.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/osdep/compress.c' object='grub-core/osdep/grub_mkstandalone-compress.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkstandalone_CPPFLAGS) $(CPPFLAGS) $(grub_mkstandalone_CFLAGS) $(CFLAGS) -c -o grub-core/osdep/grub_mkstandalone-compress.obj `if test -f 'grub-core/osdep/compress.c'; then $(CYGPATH_W) 'grub-core/osdep/compress.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/osdep/compress.c'; fi` - -util/grub_mkstandalone-editenv.o: util/editenv.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkstandalone_CPPFLAGS) $(CPPFLAGS) $(grub_mkstandalone_CFLAGS) $(CFLAGS) -MT util/grub_mkstandalone-editenv.o -MD -MP -MF util/$(DEPDIR)/grub_mkstandalone-editenv.Tpo -c -o util/grub_mkstandalone-editenv.o `test -f 'util/editenv.c' || echo '$(srcdir)/'`util/editenv.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_mkstandalone-editenv.Tpo util/$(DEPDIR)/grub_mkstandalone-editenv.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/editenv.c' object='util/grub_mkstandalone-editenv.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkstandalone_CPPFLAGS) $(CPPFLAGS) $(grub_mkstandalone_CFLAGS) $(CFLAGS) -c -o util/grub_mkstandalone-editenv.o `test -f 'util/editenv.c' || echo '$(srcdir)/'`util/editenv.c - -util/grub_mkstandalone-editenv.obj: util/editenv.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkstandalone_CPPFLAGS) $(CPPFLAGS) $(grub_mkstandalone_CFLAGS) $(CFLAGS) -MT util/grub_mkstandalone-editenv.obj -MD -MP -MF util/$(DEPDIR)/grub_mkstandalone-editenv.Tpo -c -o util/grub_mkstandalone-editenv.obj `if test -f 'util/editenv.c'; then $(CYGPATH_W) 'util/editenv.c'; else $(CYGPATH_W) '$(srcdir)/util/editenv.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_mkstandalone-editenv.Tpo util/$(DEPDIR)/grub_mkstandalone-editenv.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/editenv.c' object='util/grub_mkstandalone-editenv.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkstandalone_CPPFLAGS) $(CPPFLAGS) $(grub_mkstandalone_CFLAGS) $(CFLAGS) -c -o util/grub_mkstandalone-editenv.obj `if test -f 'util/editenv.c'; then $(CYGPATH_W) 'util/editenv.c'; else $(CYGPATH_W) '$(srcdir)/util/editenv.c'; fi` - -grub-core/osdep/grub_mkstandalone-blocklist.o: grub-core/osdep/blocklist.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkstandalone_CPPFLAGS) $(CPPFLAGS) $(grub_mkstandalone_CFLAGS) $(CFLAGS) -MT grub-core/osdep/grub_mkstandalone-blocklist.o -MD -MP -MF grub-core/osdep/$(DEPDIR)/grub_mkstandalone-blocklist.Tpo -c -o grub-core/osdep/grub_mkstandalone-blocklist.o `test -f 'grub-core/osdep/blocklist.c' || echo '$(srcdir)/'`grub-core/osdep/blocklist.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/osdep/$(DEPDIR)/grub_mkstandalone-blocklist.Tpo grub-core/osdep/$(DEPDIR)/grub_mkstandalone-blocklist.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/osdep/blocklist.c' object='grub-core/osdep/grub_mkstandalone-blocklist.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkstandalone_CPPFLAGS) $(CPPFLAGS) $(grub_mkstandalone_CFLAGS) $(CFLAGS) -c -o grub-core/osdep/grub_mkstandalone-blocklist.o `test -f 'grub-core/osdep/blocklist.c' || echo '$(srcdir)/'`grub-core/osdep/blocklist.c - -grub-core/osdep/grub_mkstandalone-blocklist.obj: grub-core/osdep/blocklist.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkstandalone_CPPFLAGS) $(CPPFLAGS) $(grub_mkstandalone_CFLAGS) $(CFLAGS) -MT grub-core/osdep/grub_mkstandalone-blocklist.obj -MD -MP -MF grub-core/osdep/$(DEPDIR)/grub_mkstandalone-blocklist.Tpo -c -o grub-core/osdep/grub_mkstandalone-blocklist.obj `if test -f 'grub-core/osdep/blocklist.c'; then $(CYGPATH_W) 'grub-core/osdep/blocklist.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/osdep/blocklist.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/osdep/$(DEPDIR)/grub_mkstandalone-blocklist.Tpo grub-core/osdep/$(DEPDIR)/grub_mkstandalone-blocklist.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/osdep/blocklist.c' object='grub-core/osdep/grub_mkstandalone-blocklist.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkstandalone_CPPFLAGS) $(CPPFLAGS) $(grub_mkstandalone_CFLAGS) $(CFLAGS) -c -o grub-core/osdep/grub_mkstandalone-blocklist.obj `if test -f 'grub-core/osdep/blocklist.c'; then $(CYGPATH_W) 'grub-core/osdep/blocklist.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/osdep/blocklist.c'; fi` - -grub-core/osdep/grub_mkstandalone-config.o: grub-core/osdep/config.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkstandalone_CPPFLAGS) $(CPPFLAGS) $(grub_mkstandalone_CFLAGS) $(CFLAGS) -MT grub-core/osdep/grub_mkstandalone-config.o -MD -MP -MF grub-core/osdep/$(DEPDIR)/grub_mkstandalone-config.Tpo -c -o grub-core/osdep/grub_mkstandalone-config.o `test -f 'grub-core/osdep/config.c' || echo '$(srcdir)/'`grub-core/osdep/config.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/osdep/$(DEPDIR)/grub_mkstandalone-config.Tpo grub-core/osdep/$(DEPDIR)/grub_mkstandalone-config.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/osdep/config.c' object='grub-core/osdep/grub_mkstandalone-config.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkstandalone_CPPFLAGS) $(CPPFLAGS) $(grub_mkstandalone_CFLAGS) $(CFLAGS) -c -o grub-core/osdep/grub_mkstandalone-config.o `test -f 'grub-core/osdep/config.c' || echo '$(srcdir)/'`grub-core/osdep/config.c - -grub-core/osdep/grub_mkstandalone-config.obj: grub-core/osdep/config.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkstandalone_CPPFLAGS) $(CPPFLAGS) $(grub_mkstandalone_CFLAGS) $(CFLAGS) -MT grub-core/osdep/grub_mkstandalone-config.obj -MD -MP -MF grub-core/osdep/$(DEPDIR)/grub_mkstandalone-config.Tpo -c -o grub-core/osdep/grub_mkstandalone-config.obj `if test -f 'grub-core/osdep/config.c'; then $(CYGPATH_W) 'grub-core/osdep/config.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/osdep/config.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/osdep/$(DEPDIR)/grub_mkstandalone-config.Tpo grub-core/osdep/$(DEPDIR)/grub_mkstandalone-config.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/osdep/config.c' object='grub-core/osdep/grub_mkstandalone-config.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkstandalone_CPPFLAGS) $(CPPFLAGS) $(grub_mkstandalone_CFLAGS) $(CFLAGS) -c -o grub-core/osdep/grub_mkstandalone-config.obj `if test -f 'grub-core/osdep/config.c'; then $(CYGPATH_W) 'grub-core/osdep/config.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/osdep/config.c'; fi` - -util/grub_mkstandalone-config.o: util/config.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkstandalone_CPPFLAGS) $(CPPFLAGS) $(grub_mkstandalone_CFLAGS) $(CFLAGS) -MT util/grub_mkstandalone-config.o -MD -MP -MF util/$(DEPDIR)/grub_mkstandalone-config.Tpo -c -o util/grub_mkstandalone-config.o `test -f 'util/config.c' || echo '$(srcdir)/'`util/config.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_mkstandalone-config.Tpo util/$(DEPDIR)/grub_mkstandalone-config.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/config.c' object='util/grub_mkstandalone-config.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkstandalone_CPPFLAGS) $(CPPFLAGS) $(grub_mkstandalone_CFLAGS) $(CFLAGS) -c -o util/grub_mkstandalone-config.o `test -f 'util/config.c' || echo '$(srcdir)/'`util/config.c - -util/grub_mkstandalone-config.obj: util/config.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkstandalone_CPPFLAGS) $(CPPFLAGS) $(grub_mkstandalone_CFLAGS) $(CFLAGS) -MT util/grub_mkstandalone-config.obj -MD -MP -MF util/$(DEPDIR)/grub_mkstandalone-config.Tpo -c -o util/grub_mkstandalone-config.obj `if test -f 'util/config.c'; then $(CYGPATH_W) 'util/config.c'; else $(CYGPATH_W) '$(srcdir)/util/config.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_mkstandalone-config.Tpo util/$(DEPDIR)/grub_mkstandalone-config.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/config.c' object='util/grub_mkstandalone-config.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkstandalone_CPPFLAGS) $(CPPFLAGS) $(grub_mkstandalone_CFLAGS) $(CFLAGS) -c -o util/grub_mkstandalone-config.obj `if test -f 'util/config.c'; then $(CYGPATH_W) 'util/config.c'; else $(CYGPATH_W) '$(srcdir)/util/config.c'; fi` - -grub-core/kern/emu/grub_mkstandalone-hostfs.o: grub-core/kern/emu/hostfs.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkstandalone_CPPFLAGS) $(CPPFLAGS) $(grub_mkstandalone_CFLAGS) $(CFLAGS) -MT grub-core/kern/emu/grub_mkstandalone-hostfs.o -MD -MP -MF grub-core/kern/emu/$(DEPDIR)/grub_mkstandalone-hostfs.Tpo -c -o grub-core/kern/emu/grub_mkstandalone-hostfs.o `test -f 'grub-core/kern/emu/hostfs.c' || echo '$(srcdir)/'`grub-core/kern/emu/hostfs.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/kern/emu/$(DEPDIR)/grub_mkstandalone-hostfs.Tpo grub-core/kern/emu/$(DEPDIR)/grub_mkstandalone-hostfs.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/kern/emu/hostfs.c' object='grub-core/kern/emu/grub_mkstandalone-hostfs.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkstandalone_CPPFLAGS) $(CPPFLAGS) $(grub_mkstandalone_CFLAGS) $(CFLAGS) -c -o grub-core/kern/emu/grub_mkstandalone-hostfs.o `test -f 'grub-core/kern/emu/hostfs.c' || echo '$(srcdir)/'`grub-core/kern/emu/hostfs.c - -grub-core/kern/emu/grub_mkstandalone-hostfs.obj: grub-core/kern/emu/hostfs.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkstandalone_CPPFLAGS) $(CPPFLAGS) $(grub_mkstandalone_CFLAGS) $(CFLAGS) -MT grub-core/kern/emu/grub_mkstandalone-hostfs.obj -MD -MP -MF grub-core/kern/emu/$(DEPDIR)/grub_mkstandalone-hostfs.Tpo -c -o grub-core/kern/emu/grub_mkstandalone-hostfs.obj `if test -f 'grub-core/kern/emu/hostfs.c'; then $(CYGPATH_W) 'grub-core/kern/emu/hostfs.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/kern/emu/hostfs.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/kern/emu/$(DEPDIR)/grub_mkstandalone-hostfs.Tpo grub-core/kern/emu/$(DEPDIR)/grub_mkstandalone-hostfs.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/kern/emu/hostfs.c' object='grub-core/kern/emu/grub_mkstandalone-hostfs.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkstandalone_CPPFLAGS) $(CPPFLAGS) $(grub_mkstandalone_CFLAGS) $(CFLAGS) -c -o grub-core/kern/emu/grub_mkstandalone-hostfs.obj `if test -f 'grub-core/kern/emu/hostfs.c'; then $(CYGPATH_W) 'grub-core/kern/emu/hostfs.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/kern/emu/hostfs.c'; fi` - -grub-core/disk/grub_mkstandalone-host.o: grub-core/disk/host.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkstandalone_CPPFLAGS) $(CPPFLAGS) $(grub_mkstandalone_CFLAGS) $(CFLAGS) -MT grub-core/disk/grub_mkstandalone-host.o -MD -MP -MF grub-core/disk/$(DEPDIR)/grub_mkstandalone-host.Tpo -c -o grub-core/disk/grub_mkstandalone-host.o `test -f 'grub-core/disk/host.c' || echo '$(srcdir)/'`grub-core/disk/host.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/disk/$(DEPDIR)/grub_mkstandalone-host.Tpo grub-core/disk/$(DEPDIR)/grub_mkstandalone-host.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/disk/host.c' object='grub-core/disk/grub_mkstandalone-host.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkstandalone_CPPFLAGS) $(CPPFLAGS) $(grub_mkstandalone_CFLAGS) $(CFLAGS) -c -o grub-core/disk/grub_mkstandalone-host.o `test -f 'grub-core/disk/host.c' || echo '$(srcdir)/'`grub-core/disk/host.c - -grub-core/disk/grub_mkstandalone-host.obj: grub-core/disk/host.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkstandalone_CPPFLAGS) $(CPPFLAGS) $(grub_mkstandalone_CFLAGS) $(CFLAGS) -MT grub-core/disk/grub_mkstandalone-host.obj -MD -MP -MF grub-core/disk/$(DEPDIR)/grub_mkstandalone-host.Tpo -c -o grub-core/disk/grub_mkstandalone-host.obj `if test -f 'grub-core/disk/host.c'; then $(CYGPATH_W) 'grub-core/disk/host.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/disk/host.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/disk/$(DEPDIR)/grub_mkstandalone-host.Tpo grub-core/disk/$(DEPDIR)/grub_mkstandalone-host.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/disk/host.c' object='grub-core/disk/grub_mkstandalone-host.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkstandalone_CPPFLAGS) $(CPPFLAGS) $(grub_mkstandalone_CFLAGS) $(CFLAGS) -c -o grub-core/disk/grub_mkstandalone-host.obj `if test -f 'grub-core/disk/host.c'; then $(CYGPATH_W) 'grub-core/disk/host.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/disk/host.c'; fi` - -util/grub_mkstandalone-resolve.o: util/resolve.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkstandalone_CPPFLAGS) $(CPPFLAGS) $(grub_mkstandalone_CFLAGS) $(CFLAGS) -MT util/grub_mkstandalone-resolve.o -MD -MP -MF util/$(DEPDIR)/grub_mkstandalone-resolve.Tpo -c -o util/grub_mkstandalone-resolve.o `test -f 'util/resolve.c' || echo '$(srcdir)/'`util/resolve.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_mkstandalone-resolve.Tpo util/$(DEPDIR)/grub_mkstandalone-resolve.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/resolve.c' object='util/grub_mkstandalone-resolve.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkstandalone_CPPFLAGS) $(CPPFLAGS) $(grub_mkstandalone_CFLAGS) $(CFLAGS) -c -o util/grub_mkstandalone-resolve.o `test -f 'util/resolve.c' || echo '$(srcdir)/'`util/resolve.c - -util/grub_mkstandalone-resolve.obj: util/resolve.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkstandalone_CPPFLAGS) $(CPPFLAGS) $(grub_mkstandalone_CFLAGS) $(CFLAGS) -MT util/grub_mkstandalone-resolve.obj -MD -MP -MF util/$(DEPDIR)/grub_mkstandalone-resolve.Tpo -c -o util/grub_mkstandalone-resolve.obj `if test -f 'util/resolve.c'; then $(CYGPATH_W) 'util/resolve.c'; else $(CYGPATH_W) '$(srcdir)/util/resolve.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_mkstandalone-resolve.Tpo util/$(DEPDIR)/grub_mkstandalone-resolve.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/resolve.c' object='util/grub_mkstandalone-resolve.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkstandalone_CPPFLAGS) $(CPPFLAGS) $(grub_mkstandalone_CFLAGS) $(CFLAGS) -c -o util/grub_mkstandalone-resolve.obj `if test -f 'util/resolve.c'; then $(CYGPATH_W) 'util/resolve.c'; else $(CYGPATH_W) '$(srcdir)/util/resolve.c'; fi` - -grub-core/kern/emu/grub_mkstandalone-argp_common.o: grub-core/kern/emu/argp_common.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkstandalone_CPPFLAGS) $(CPPFLAGS) $(grub_mkstandalone_CFLAGS) $(CFLAGS) -MT grub-core/kern/emu/grub_mkstandalone-argp_common.o -MD -MP -MF grub-core/kern/emu/$(DEPDIR)/grub_mkstandalone-argp_common.Tpo -c -o grub-core/kern/emu/grub_mkstandalone-argp_common.o `test -f 'grub-core/kern/emu/argp_common.c' || echo '$(srcdir)/'`grub-core/kern/emu/argp_common.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/kern/emu/$(DEPDIR)/grub_mkstandalone-argp_common.Tpo grub-core/kern/emu/$(DEPDIR)/grub_mkstandalone-argp_common.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/kern/emu/argp_common.c' object='grub-core/kern/emu/grub_mkstandalone-argp_common.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkstandalone_CPPFLAGS) $(CPPFLAGS) $(grub_mkstandalone_CFLAGS) $(CFLAGS) -c -o grub-core/kern/emu/grub_mkstandalone-argp_common.o `test -f 'grub-core/kern/emu/argp_common.c' || echo '$(srcdir)/'`grub-core/kern/emu/argp_common.c - -grub-core/kern/emu/grub_mkstandalone-argp_common.obj: grub-core/kern/emu/argp_common.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkstandalone_CPPFLAGS) $(CPPFLAGS) $(grub_mkstandalone_CFLAGS) $(CFLAGS) -MT grub-core/kern/emu/grub_mkstandalone-argp_common.obj -MD -MP -MF grub-core/kern/emu/$(DEPDIR)/grub_mkstandalone-argp_common.Tpo -c -o grub-core/kern/emu/grub_mkstandalone-argp_common.obj `if test -f 'grub-core/kern/emu/argp_common.c'; then $(CYGPATH_W) 'grub-core/kern/emu/argp_common.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/kern/emu/argp_common.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/kern/emu/$(DEPDIR)/grub_mkstandalone-argp_common.Tpo grub-core/kern/emu/$(DEPDIR)/grub_mkstandalone-argp_common.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/kern/emu/argp_common.c' object='grub-core/kern/emu/grub_mkstandalone-argp_common.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkstandalone_CPPFLAGS) $(CPPFLAGS) $(grub_mkstandalone_CFLAGS) $(CFLAGS) -c -o grub-core/kern/emu/grub_mkstandalone-argp_common.obj `if test -f 'grub-core/kern/emu/argp_common.c'; then $(CYGPATH_W) 'grub-core/kern/emu/argp_common.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/kern/emu/argp_common.c'; fi` - -grub-core/osdep/grub_mkstandalone-init.o: grub-core/osdep/init.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkstandalone_CPPFLAGS) $(CPPFLAGS) $(grub_mkstandalone_CFLAGS) $(CFLAGS) -MT grub-core/osdep/grub_mkstandalone-init.o -MD -MP -MF grub-core/osdep/$(DEPDIR)/grub_mkstandalone-init.Tpo -c -o grub-core/osdep/grub_mkstandalone-init.o `test -f 'grub-core/osdep/init.c' || echo '$(srcdir)/'`grub-core/osdep/init.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/osdep/$(DEPDIR)/grub_mkstandalone-init.Tpo grub-core/osdep/$(DEPDIR)/grub_mkstandalone-init.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/osdep/init.c' object='grub-core/osdep/grub_mkstandalone-init.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkstandalone_CPPFLAGS) $(CPPFLAGS) $(grub_mkstandalone_CFLAGS) $(CFLAGS) -c -o grub-core/osdep/grub_mkstandalone-init.o `test -f 'grub-core/osdep/init.c' || echo '$(srcdir)/'`grub-core/osdep/init.c - -grub-core/osdep/grub_mkstandalone-init.obj: grub-core/osdep/init.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkstandalone_CPPFLAGS) $(CPPFLAGS) $(grub_mkstandalone_CFLAGS) $(CFLAGS) -MT grub-core/osdep/grub_mkstandalone-init.obj -MD -MP -MF grub-core/osdep/$(DEPDIR)/grub_mkstandalone-init.Tpo -c -o grub-core/osdep/grub_mkstandalone-init.obj `if test -f 'grub-core/osdep/init.c'; then $(CYGPATH_W) 'grub-core/osdep/init.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/osdep/init.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/osdep/$(DEPDIR)/grub_mkstandalone-init.Tpo grub-core/osdep/$(DEPDIR)/grub_mkstandalone-init.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/osdep/init.c' object='grub-core/osdep/grub_mkstandalone-init.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mkstandalone_CPPFLAGS) $(CPPFLAGS) $(grub_mkstandalone_CFLAGS) $(CFLAGS) -c -o grub-core/osdep/grub_mkstandalone-init.obj `if test -f 'grub-core/osdep/init.c'; then $(CYGPATH_W) 'grub-core/osdep/init.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/osdep/init.c'; fi` - -util/grub_mount-grub-mount.o: util/grub-mount.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mount_CPPFLAGS) $(CPPFLAGS) $(grub_mount_CFLAGS) $(CFLAGS) -MT util/grub_mount-grub-mount.o -MD -MP -MF util/$(DEPDIR)/grub_mount-grub-mount.Tpo -c -o util/grub_mount-grub-mount.o `test -f 'util/grub-mount.c' || echo '$(srcdir)/'`util/grub-mount.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_mount-grub-mount.Tpo util/$(DEPDIR)/grub_mount-grub-mount.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/grub-mount.c' object='util/grub_mount-grub-mount.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mount_CPPFLAGS) $(CPPFLAGS) $(grub_mount_CFLAGS) $(CFLAGS) -c -o util/grub_mount-grub-mount.o `test -f 'util/grub-mount.c' || echo '$(srcdir)/'`util/grub-mount.c - -util/grub_mount-grub-mount.obj: util/grub-mount.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mount_CPPFLAGS) $(CPPFLAGS) $(grub_mount_CFLAGS) $(CFLAGS) -MT util/grub_mount-grub-mount.obj -MD -MP -MF util/$(DEPDIR)/grub_mount-grub-mount.Tpo -c -o util/grub_mount-grub-mount.obj `if test -f 'util/grub-mount.c'; then $(CYGPATH_W) 'util/grub-mount.c'; else $(CYGPATH_W) '$(srcdir)/util/grub-mount.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_mount-grub-mount.Tpo util/$(DEPDIR)/grub_mount-grub-mount.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/grub-mount.c' object='util/grub_mount-grub-mount.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mount_CPPFLAGS) $(CPPFLAGS) $(grub_mount_CFLAGS) $(CFLAGS) -c -o util/grub_mount-grub-mount.obj `if test -f 'util/grub-mount.c'; then $(CYGPATH_W) 'util/grub-mount.c'; else $(CYGPATH_W) '$(srcdir)/util/grub-mount.c'; fi` - -grub-core/kern/emu/grub_mount-hostfs.o: grub-core/kern/emu/hostfs.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mount_CPPFLAGS) $(CPPFLAGS) $(grub_mount_CFLAGS) $(CFLAGS) -MT grub-core/kern/emu/grub_mount-hostfs.o -MD -MP -MF grub-core/kern/emu/$(DEPDIR)/grub_mount-hostfs.Tpo -c -o grub-core/kern/emu/grub_mount-hostfs.o `test -f 'grub-core/kern/emu/hostfs.c' || echo '$(srcdir)/'`grub-core/kern/emu/hostfs.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/kern/emu/$(DEPDIR)/grub_mount-hostfs.Tpo grub-core/kern/emu/$(DEPDIR)/grub_mount-hostfs.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/kern/emu/hostfs.c' object='grub-core/kern/emu/grub_mount-hostfs.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mount_CPPFLAGS) $(CPPFLAGS) $(grub_mount_CFLAGS) $(CFLAGS) -c -o grub-core/kern/emu/grub_mount-hostfs.o `test -f 'grub-core/kern/emu/hostfs.c' || echo '$(srcdir)/'`grub-core/kern/emu/hostfs.c - -grub-core/kern/emu/grub_mount-hostfs.obj: grub-core/kern/emu/hostfs.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mount_CPPFLAGS) $(CPPFLAGS) $(grub_mount_CFLAGS) $(CFLAGS) -MT grub-core/kern/emu/grub_mount-hostfs.obj -MD -MP -MF grub-core/kern/emu/$(DEPDIR)/grub_mount-hostfs.Tpo -c -o grub-core/kern/emu/grub_mount-hostfs.obj `if test -f 'grub-core/kern/emu/hostfs.c'; then $(CYGPATH_W) 'grub-core/kern/emu/hostfs.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/kern/emu/hostfs.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/kern/emu/$(DEPDIR)/grub_mount-hostfs.Tpo grub-core/kern/emu/$(DEPDIR)/grub_mount-hostfs.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/kern/emu/hostfs.c' object='grub-core/kern/emu/grub_mount-hostfs.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mount_CPPFLAGS) $(CPPFLAGS) $(grub_mount_CFLAGS) $(CFLAGS) -c -o grub-core/kern/emu/grub_mount-hostfs.obj `if test -f 'grub-core/kern/emu/hostfs.c'; then $(CYGPATH_W) 'grub-core/kern/emu/hostfs.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/kern/emu/hostfs.c'; fi` - -grub-core/disk/grub_mount-host.o: grub-core/disk/host.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mount_CPPFLAGS) $(CPPFLAGS) $(grub_mount_CFLAGS) $(CFLAGS) -MT grub-core/disk/grub_mount-host.o -MD -MP -MF grub-core/disk/$(DEPDIR)/grub_mount-host.Tpo -c -o grub-core/disk/grub_mount-host.o `test -f 'grub-core/disk/host.c' || echo '$(srcdir)/'`grub-core/disk/host.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/disk/$(DEPDIR)/grub_mount-host.Tpo grub-core/disk/$(DEPDIR)/grub_mount-host.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/disk/host.c' object='grub-core/disk/grub_mount-host.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mount_CPPFLAGS) $(CPPFLAGS) $(grub_mount_CFLAGS) $(CFLAGS) -c -o grub-core/disk/grub_mount-host.o `test -f 'grub-core/disk/host.c' || echo '$(srcdir)/'`grub-core/disk/host.c - -grub-core/disk/grub_mount-host.obj: grub-core/disk/host.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mount_CPPFLAGS) $(CPPFLAGS) $(grub_mount_CFLAGS) $(CFLAGS) -MT grub-core/disk/grub_mount-host.obj -MD -MP -MF grub-core/disk/$(DEPDIR)/grub_mount-host.Tpo -c -o grub-core/disk/grub_mount-host.obj `if test -f 'grub-core/disk/host.c'; then $(CYGPATH_W) 'grub-core/disk/host.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/disk/host.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/disk/$(DEPDIR)/grub_mount-host.Tpo grub-core/disk/$(DEPDIR)/grub_mount-host.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/disk/host.c' object='grub-core/disk/grub_mount-host.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mount_CPPFLAGS) $(CPPFLAGS) $(grub_mount_CFLAGS) $(CFLAGS) -c -o grub-core/disk/grub_mount-host.obj `if test -f 'grub-core/disk/host.c'; then $(CYGPATH_W) 'grub-core/disk/host.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/disk/host.c'; fi` - -grub-core/osdep/grub_mount-init.o: grub-core/osdep/init.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mount_CPPFLAGS) $(CPPFLAGS) $(grub_mount_CFLAGS) $(CFLAGS) -MT grub-core/osdep/grub_mount-init.o -MD -MP -MF grub-core/osdep/$(DEPDIR)/grub_mount-init.Tpo -c -o grub-core/osdep/grub_mount-init.o `test -f 'grub-core/osdep/init.c' || echo '$(srcdir)/'`grub-core/osdep/init.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/osdep/$(DEPDIR)/grub_mount-init.Tpo grub-core/osdep/$(DEPDIR)/grub_mount-init.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/osdep/init.c' object='grub-core/osdep/grub_mount-init.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mount_CPPFLAGS) $(CPPFLAGS) $(grub_mount_CFLAGS) $(CFLAGS) -c -o grub-core/osdep/grub_mount-init.o `test -f 'grub-core/osdep/init.c' || echo '$(srcdir)/'`grub-core/osdep/init.c - -grub-core/osdep/grub_mount-init.obj: grub-core/osdep/init.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mount_CPPFLAGS) $(CPPFLAGS) $(grub_mount_CFLAGS) $(CFLAGS) -MT grub-core/osdep/grub_mount-init.obj -MD -MP -MF grub-core/osdep/$(DEPDIR)/grub_mount-init.Tpo -c -o grub-core/osdep/grub_mount-init.obj `if test -f 'grub-core/osdep/init.c'; then $(CYGPATH_W) 'grub-core/osdep/init.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/osdep/init.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/osdep/$(DEPDIR)/grub_mount-init.Tpo grub-core/osdep/$(DEPDIR)/grub_mount-init.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/osdep/init.c' object='grub-core/osdep/grub_mount-init.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mount_CPPFLAGS) $(CPPFLAGS) $(grub_mount_CFLAGS) $(CFLAGS) -c -o grub-core/osdep/grub_mount-init.obj `if test -f 'grub-core/osdep/init.c'; then $(CYGPATH_W) 'grub-core/osdep/init.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/osdep/init.c'; fi` - -grub_mount-grub_fstest_init.o: grub_fstest_init.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mount_CPPFLAGS) $(CPPFLAGS) $(grub_mount_CFLAGS) $(CFLAGS) -MT grub_mount-grub_fstest_init.o -MD -MP -MF $(DEPDIR)/grub_mount-grub_fstest_init.Tpo -c -o grub_mount-grub_fstest_init.o `test -f 'grub_fstest_init.c' || echo '$(srcdir)/'`grub_fstest_init.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/grub_mount-grub_fstest_init.Tpo $(DEPDIR)/grub_mount-grub_fstest_init.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub_fstest_init.c' object='grub_mount-grub_fstest_init.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mount_CPPFLAGS) $(CPPFLAGS) $(grub_mount_CFLAGS) $(CFLAGS) -c -o grub_mount-grub_fstest_init.o `test -f 'grub_fstest_init.c' || echo '$(srcdir)/'`grub_fstest_init.c - -grub_mount-grub_fstest_init.obj: grub_fstest_init.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mount_CPPFLAGS) $(CPPFLAGS) $(grub_mount_CFLAGS) $(CFLAGS) -MT grub_mount-grub_fstest_init.obj -MD -MP -MF $(DEPDIR)/grub_mount-grub_fstest_init.Tpo -c -o grub_mount-grub_fstest_init.obj `if test -f 'grub_fstest_init.c'; then $(CYGPATH_W) 'grub_fstest_init.c'; else $(CYGPATH_W) '$(srcdir)/grub_fstest_init.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/grub_mount-grub_fstest_init.Tpo $(DEPDIR)/grub_mount-grub_fstest_init.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub_fstest_init.c' object='grub_mount-grub_fstest_init.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_mount_CPPFLAGS) $(CPPFLAGS) $(grub_mount_CFLAGS) $(CFLAGS) -c -o grub_mount-grub_fstest_init.obj `if test -f 'grub_fstest_init.c'; then $(CYGPATH_W) 'grub_fstest_init.c'; else $(CYGPATH_W) '$(srcdir)/grub_fstest_init.c'; fi` - -util/ieee1275/grub_ofpathname-grub-ofpathname.o: util/ieee1275/grub-ofpathname.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_ofpathname_CPPFLAGS) $(CPPFLAGS) $(grub_ofpathname_CFLAGS) $(CFLAGS) -MT util/ieee1275/grub_ofpathname-grub-ofpathname.o -MD -MP -MF util/ieee1275/$(DEPDIR)/grub_ofpathname-grub-ofpathname.Tpo -c -o util/ieee1275/grub_ofpathname-grub-ofpathname.o `test -f 'util/ieee1275/grub-ofpathname.c' || echo '$(srcdir)/'`util/ieee1275/grub-ofpathname.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/ieee1275/$(DEPDIR)/grub_ofpathname-grub-ofpathname.Tpo util/ieee1275/$(DEPDIR)/grub_ofpathname-grub-ofpathname.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/ieee1275/grub-ofpathname.c' object='util/ieee1275/grub_ofpathname-grub-ofpathname.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_ofpathname_CPPFLAGS) $(CPPFLAGS) $(grub_ofpathname_CFLAGS) $(CFLAGS) -c -o util/ieee1275/grub_ofpathname-grub-ofpathname.o `test -f 'util/ieee1275/grub-ofpathname.c' || echo '$(srcdir)/'`util/ieee1275/grub-ofpathname.c - -util/ieee1275/grub_ofpathname-grub-ofpathname.obj: util/ieee1275/grub-ofpathname.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_ofpathname_CPPFLAGS) $(CPPFLAGS) $(grub_ofpathname_CFLAGS) $(CFLAGS) -MT util/ieee1275/grub_ofpathname-grub-ofpathname.obj -MD -MP -MF util/ieee1275/$(DEPDIR)/grub_ofpathname-grub-ofpathname.Tpo -c -o util/ieee1275/grub_ofpathname-grub-ofpathname.obj `if test -f 'util/ieee1275/grub-ofpathname.c'; then $(CYGPATH_W) 'util/ieee1275/grub-ofpathname.c'; else $(CYGPATH_W) '$(srcdir)/util/ieee1275/grub-ofpathname.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/ieee1275/$(DEPDIR)/grub_ofpathname-grub-ofpathname.Tpo util/ieee1275/$(DEPDIR)/grub_ofpathname-grub-ofpathname.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/ieee1275/grub-ofpathname.c' object='util/ieee1275/grub_ofpathname-grub-ofpathname.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_ofpathname_CPPFLAGS) $(CPPFLAGS) $(grub_ofpathname_CFLAGS) $(CFLAGS) -c -o util/ieee1275/grub_ofpathname-grub-ofpathname.obj `if test -f 'util/ieee1275/grub-ofpathname.c'; then $(CYGPATH_W) 'util/ieee1275/grub-ofpathname.c'; else $(CYGPATH_W) '$(srcdir)/util/ieee1275/grub-ofpathname.c'; fi` - -grub-core/osdep/grub_ofpathname-ofpath.o: grub-core/osdep/ofpath.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_ofpathname_CPPFLAGS) $(CPPFLAGS) $(grub_ofpathname_CFLAGS) $(CFLAGS) -MT grub-core/osdep/grub_ofpathname-ofpath.o -MD -MP -MF grub-core/osdep/$(DEPDIR)/grub_ofpathname-ofpath.Tpo -c -o grub-core/osdep/grub_ofpathname-ofpath.o `test -f 'grub-core/osdep/ofpath.c' || echo '$(srcdir)/'`grub-core/osdep/ofpath.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/osdep/$(DEPDIR)/grub_ofpathname-ofpath.Tpo grub-core/osdep/$(DEPDIR)/grub_ofpathname-ofpath.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/osdep/ofpath.c' object='grub-core/osdep/grub_ofpathname-ofpath.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_ofpathname_CPPFLAGS) $(CPPFLAGS) $(grub_ofpathname_CFLAGS) $(CFLAGS) -c -o grub-core/osdep/grub_ofpathname-ofpath.o `test -f 'grub-core/osdep/ofpath.c' || echo '$(srcdir)/'`grub-core/osdep/ofpath.c - -grub-core/osdep/grub_ofpathname-ofpath.obj: grub-core/osdep/ofpath.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_ofpathname_CPPFLAGS) $(CPPFLAGS) $(grub_ofpathname_CFLAGS) $(CFLAGS) -MT grub-core/osdep/grub_ofpathname-ofpath.obj -MD -MP -MF grub-core/osdep/$(DEPDIR)/grub_ofpathname-ofpath.Tpo -c -o grub-core/osdep/grub_ofpathname-ofpath.obj `if test -f 'grub-core/osdep/ofpath.c'; then $(CYGPATH_W) 'grub-core/osdep/ofpath.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/osdep/ofpath.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/osdep/$(DEPDIR)/grub_ofpathname-ofpath.Tpo grub-core/osdep/$(DEPDIR)/grub_ofpathname-ofpath.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/osdep/ofpath.c' object='grub-core/osdep/grub_ofpathname-ofpath.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_ofpathname_CPPFLAGS) $(CPPFLAGS) $(grub_ofpathname_CFLAGS) $(CFLAGS) -c -o grub-core/osdep/grub_ofpathname-ofpath.obj `if test -f 'grub-core/osdep/ofpath.c'; then $(CYGPATH_W) 'grub-core/osdep/ofpath.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/osdep/ofpath.c'; fi` - -grub-core/osdep/grub_ofpathname-init.o: grub-core/osdep/init.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_ofpathname_CPPFLAGS) $(CPPFLAGS) $(grub_ofpathname_CFLAGS) $(CFLAGS) -MT grub-core/osdep/grub_ofpathname-init.o -MD -MP -MF grub-core/osdep/$(DEPDIR)/grub_ofpathname-init.Tpo -c -o grub-core/osdep/grub_ofpathname-init.o `test -f 'grub-core/osdep/init.c' || echo '$(srcdir)/'`grub-core/osdep/init.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/osdep/$(DEPDIR)/grub_ofpathname-init.Tpo grub-core/osdep/$(DEPDIR)/grub_ofpathname-init.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/osdep/init.c' object='grub-core/osdep/grub_ofpathname-init.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_ofpathname_CPPFLAGS) $(CPPFLAGS) $(grub_ofpathname_CFLAGS) $(CFLAGS) -c -o grub-core/osdep/grub_ofpathname-init.o `test -f 'grub-core/osdep/init.c' || echo '$(srcdir)/'`grub-core/osdep/init.c - -grub-core/osdep/grub_ofpathname-init.obj: grub-core/osdep/init.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_ofpathname_CPPFLAGS) $(CPPFLAGS) $(grub_ofpathname_CFLAGS) $(CFLAGS) -MT grub-core/osdep/grub_ofpathname-init.obj -MD -MP -MF grub-core/osdep/$(DEPDIR)/grub_ofpathname-init.Tpo -c -o grub-core/osdep/grub_ofpathname-init.obj `if test -f 'grub-core/osdep/init.c'; then $(CYGPATH_W) 'grub-core/osdep/init.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/osdep/init.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/osdep/$(DEPDIR)/grub_ofpathname-init.Tpo grub-core/osdep/$(DEPDIR)/grub_ofpathname-init.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/osdep/init.c' object='grub-core/osdep/grub_ofpathname-init.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_ofpathname_CPPFLAGS) $(CPPFLAGS) $(grub_ofpathname_CFLAGS) $(CFLAGS) -c -o grub-core/osdep/grub_ofpathname-init.obj `if test -f 'grub-core/osdep/init.c'; then $(CYGPATH_W) 'grub-core/osdep/init.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/osdep/init.c'; fi` - -util/grub_probe-grub-probe.o: util/grub-probe.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_probe_CPPFLAGS) $(CPPFLAGS) $(grub_probe_CFLAGS) $(CFLAGS) -MT util/grub_probe-grub-probe.o -MD -MP -MF util/$(DEPDIR)/grub_probe-grub-probe.Tpo -c -o util/grub_probe-grub-probe.o `test -f 'util/grub-probe.c' || echo '$(srcdir)/'`util/grub-probe.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_probe-grub-probe.Tpo util/$(DEPDIR)/grub_probe-grub-probe.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/grub-probe.c' object='util/grub_probe-grub-probe.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_probe_CPPFLAGS) $(CPPFLAGS) $(grub_probe_CFLAGS) $(CFLAGS) -c -o util/grub_probe-grub-probe.o `test -f 'util/grub-probe.c' || echo '$(srcdir)/'`util/grub-probe.c - -util/grub_probe-grub-probe.obj: util/grub-probe.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_probe_CPPFLAGS) $(CPPFLAGS) $(grub_probe_CFLAGS) $(CFLAGS) -MT util/grub_probe-grub-probe.obj -MD -MP -MF util/$(DEPDIR)/grub_probe-grub-probe.Tpo -c -o util/grub_probe-grub-probe.obj `if test -f 'util/grub-probe.c'; then $(CYGPATH_W) 'util/grub-probe.c'; else $(CYGPATH_W) '$(srcdir)/util/grub-probe.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_probe-grub-probe.Tpo util/$(DEPDIR)/grub_probe-grub-probe.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/grub-probe.c' object='util/grub_probe-grub-probe.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_probe_CPPFLAGS) $(CPPFLAGS) $(grub_probe_CFLAGS) $(CFLAGS) -c -o util/grub_probe-grub-probe.obj `if test -f 'util/grub-probe.c'; then $(CYGPATH_W) 'util/grub-probe.c'; else $(CYGPATH_W) '$(srcdir)/util/grub-probe.c'; fi` - -util/grub_probe-probe.o: util/probe.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_probe_CPPFLAGS) $(CPPFLAGS) $(grub_probe_CFLAGS) $(CFLAGS) -MT util/grub_probe-probe.o -MD -MP -MF util/$(DEPDIR)/grub_probe-probe.Tpo -c -o util/grub_probe-probe.o `test -f 'util/probe.c' || echo '$(srcdir)/'`util/probe.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_probe-probe.Tpo util/$(DEPDIR)/grub_probe-probe.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/probe.c' object='util/grub_probe-probe.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_probe_CPPFLAGS) $(CPPFLAGS) $(grub_probe_CFLAGS) $(CFLAGS) -c -o util/grub_probe-probe.o `test -f 'util/probe.c' || echo '$(srcdir)/'`util/probe.c - -util/grub_probe-probe.obj: util/probe.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_probe_CPPFLAGS) $(CPPFLAGS) $(grub_probe_CFLAGS) $(CFLAGS) -MT util/grub_probe-probe.obj -MD -MP -MF util/$(DEPDIR)/grub_probe-probe.Tpo -c -o util/grub_probe-probe.obj `if test -f 'util/probe.c'; then $(CYGPATH_W) 'util/probe.c'; else $(CYGPATH_W) '$(srcdir)/util/probe.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_probe-probe.Tpo util/$(DEPDIR)/grub_probe-probe.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/probe.c' object='util/grub_probe-probe.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_probe_CPPFLAGS) $(CPPFLAGS) $(grub_probe_CFLAGS) $(CFLAGS) -c -o util/grub_probe-probe.obj `if test -f 'util/probe.c'; then $(CYGPATH_W) 'util/probe.c'; else $(CYGPATH_W) '$(srcdir)/util/probe.c'; fi` - -grub-core/osdep/grub_probe-ofpath.o: grub-core/osdep/ofpath.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_probe_CPPFLAGS) $(CPPFLAGS) $(grub_probe_CFLAGS) $(CFLAGS) -MT grub-core/osdep/grub_probe-ofpath.o -MD -MP -MF grub-core/osdep/$(DEPDIR)/grub_probe-ofpath.Tpo -c -o grub-core/osdep/grub_probe-ofpath.o `test -f 'grub-core/osdep/ofpath.c' || echo '$(srcdir)/'`grub-core/osdep/ofpath.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/osdep/$(DEPDIR)/grub_probe-ofpath.Tpo grub-core/osdep/$(DEPDIR)/grub_probe-ofpath.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/osdep/ofpath.c' object='grub-core/osdep/grub_probe-ofpath.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_probe_CPPFLAGS) $(CPPFLAGS) $(grub_probe_CFLAGS) $(CFLAGS) -c -o grub-core/osdep/grub_probe-ofpath.o `test -f 'grub-core/osdep/ofpath.c' || echo '$(srcdir)/'`grub-core/osdep/ofpath.c - -grub-core/osdep/grub_probe-ofpath.obj: grub-core/osdep/ofpath.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_probe_CPPFLAGS) $(CPPFLAGS) $(grub_probe_CFLAGS) $(CFLAGS) -MT grub-core/osdep/grub_probe-ofpath.obj -MD -MP -MF grub-core/osdep/$(DEPDIR)/grub_probe-ofpath.Tpo -c -o grub-core/osdep/grub_probe-ofpath.obj `if test -f 'grub-core/osdep/ofpath.c'; then $(CYGPATH_W) 'grub-core/osdep/ofpath.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/osdep/ofpath.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/osdep/$(DEPDIR)/grub_probe-ofpath.Tpo grub-core/osdep/$(DEPDIR)/grub_probe-ofpath.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/osdep/ofpath.c' object='grub-core/osdep/grub_probe-ofpath.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_probe_CPPFLAGS) $(CPPFLAGS) $(grub_probe_CFLAGS) $(CFLAGS) -c -o grub-core/osdep/grub_probe-ofpath.obj `if test -f 'grub-core/osdep/ofpath.c'; then $(CYGPATH_W) 'grub-core/osdep/ofpath.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/osdep/ofpath.c'; fi` - -grub-core/kern/emu/grub_probe-argp_common.o: grub-core/kern/emu/argp_common.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_probe_CPPFLAGS) $(CPPFLAGS) $(grub_probe_CFLAGS) $(CFLAGS) -MT grub-core/kern/emu/grub_probe-argp_common.o -MD -MP -MF grub-core/kern/emu/$(DEPDIR)/grub_probe-argp_common.Tpo -c -o grub-core/kern/emu/grub_probe-argp_common.o `test -f 'grub-core/kern/emu/argp_common.c' || echo '$(srcdir)/'`grub-core/kern/emu/argp_common.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/kern/emu/$(DEPDIR)/grub_probe-argp_common.Tpo grub-core/kern/emu/$(DEPDIR)/grub_probe-argp_common.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/kern/emu/argp_common.c' object='grub-core/kern/emu/grub_probe-argp_common.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_probe_CPPFLAGS) $(CPPFLAGS) $(grub_probe_CFLAGS) $(CFLAGS) -c -o grub-core/kern/emu/grub_probe-argp_common.o `test -f 'grub-core/kern/emu/argp_common.c' || echo '$(srcdir)/'`grub-core/kern/emu/argp_common.c - -grub-core/kern/emu/grub_probe-argp_common.obj: grub-core/kern/emu/argp_common.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_probe_CPPFLAGS) $(CPPFLAGS) $(grub_probe_CFLAGS) $(CFLAGS) -MT grub-core/kern/emu/grub_probe-argp_common.obj -MD -MP -MF grub-core/kern/emu/$(DEPDIR)/grub_probe-argp_common.Tpo -c -o grub-core/kern/emu/grub_probe-argp_common.obj `if test -f 'grub-core/kern/emu/argp_common.c'; then $(CYGPATH_W) 'grub-core/kern/emu/argp_common.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/kern/emu/argp_common.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/kern/emu/$(DEPDIR)/grub_probe-argp_common.Tpo grub-core/kern/emu/$(DEPDIR)/grub_probe-argp_common.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/kern/emu/argp_common.c' object='grub-core/kern/emu/grub_probe-argp_common.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_probe_CPPFLAGS) $(CPPFLAGS) $(grub_probe_CFLAGS) $(CFLAGS) -c -o grub-core/kern/emu/grub_probe-argp_common.obj `if test -f 'grub-core/kern/emu/argp_common.c'; then $(CYGPATH_W) 'grub-core/kern/emu/argp_common.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/kern/emu/argp_common.c'; fi` - -grub-core/osdep/grub_probe-init.o: grub-core/osdep/init.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_probe_CPPFLAGS) $(CPPFLAGS) $(grub_probe_CFLAGS) $(CFLAGS) -MT grub-core/osdep/grub_probe-init.o -MD -MP -MF grub-core/osdep/$(DEPDIR)/grub_probe-init.Tpo -c -o grub-core/osdep/grub_probe-init.o `test -f 'grub-core/osdep/init.c' || echo '$(srcdir)/'`grub-core/osdep/init.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/osdep/$(DEPDIR)/grub_probe-init.Tpo grub-core/osdep/$(DEPDIR)/grub_probe-init.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/osdep/init.c' object='grub-core/osdep/grub_probe-init.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_probe_CPPFLAGS) $(CPPFLAGS) $(grub_probe_CFLAGS) $(CFLAGS) -c -o grub-core/osdep/grub_probe-init.o `test -f 'grub-core/osdep/init.c' || echo '$(srcdir)/'`grub-core/osdep/init.c - -grub-core/osdep/grub_probe-init.obj: grub-core/osdep/init.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_probe_CPPFLAGS) $(CPPFLAGS) $(grub_probe_CFLAGS) $(CFLAGS) -MT grub-core/osdep/grub_probe-init.obj -MD -MP -MF grub-core/osdep/$(DEPDIR)/grub_probe-init.Tpo -c -o grub-core/osdep/grub_probe-init.obj `if test -f 'grub-core/osdep/init.c'; then $(CYGPATH_W) 'grub-core/osdep/init.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/osdep/init.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/osdep/$(DEPDIR)/grub_probe-init.Tpo grub-core/osdep/$(DEPDIR)/grub_probe-init.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/osdep/init.c' object='grub-core/osdep/grub_probe-init.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_probe_CPPFLAGS) $(CPPFLAGS) $(grub_probe_CFLAGS) $(CFLAGS) -c -o grub-core/osdep/grub_probe-init.obj `if test -f 'grub-core/osdep/init.c'; then $(CYGPATH_W) 'grub-core/osdep/init.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/osdep/init.c'; fi` - -util/grub_render_label-grub-render-label.o: util/grub-render-label.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_render_label_CPPFLAGS) $(CPPFLAGS) $(grub_render_label_CFLAGS) $(CFLAGS) -MT util/grub_render_label-grub-render-label.o -MD -MP -MF util/$(DEPDIR)/grub_render_label-grub-render-label.Tpo -c -o util/grub_render_label-grub-render-label.o `test -f 'util/grub-render-label.c' || echo '$(srcdir)/'`util/grub-render-label.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_render_label-grub-render-label.Tpo util/$(DEPDIR)/grub_render_label-grub-render-label.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/grub-render-label.c' object='util/grub_render_label-grub-render-label.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_render_label_CPPFLAGS) $(CPPFLAGS) $(grub_render_label_CFLAGS) $(CFLAGS) -c -o util/grub_render_label-grub-render-label.o `test -f 'util/grub-render-label.c' || echo '$(srcdir)/'`util/grub-render-label.c - -util/grub_render_label-grub-render-label.obj: util/grub-render-label.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_render_label_CPPFLAGS) $(CPPFLAGS) $(grub_render_label_CFLAGS) $(CFLAGS) -MT util/grub_render_label-grub-render-label.obj -MD -MP -MF util/$(DEPDIR)/grub_render_label-grub-render-label.Tpo -c -o util/grub_render_label-grub-render-label.obj `if test -f 'util/grub-render-label.c'; then $(CYGPATH_W) 'util/grub-render-label.c'; else $(CYGPATH_W) '$(srcdir)/util/grub-render-label.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_render_label-grub-render-label.Tpo util/$(DEPDIR)/grub_render_label-grub-render-label.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/grub-render-label.c' object='util/grub_render_label-grub-render-label.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_render_label_CPPFLAGS) $(CPPFLAGS) $(grub_render_label_CFLAGS) $(CFLAGS) -c -o util/grub_render_label-grub-render-label.obj `if test -f 'util/grub-render-label.c'; then $(CYGPATH_W) 'util/grub-render-label.c'; else $(CYGPATH_W) '$(srcdir)/util/grub-render-label.c'; fi` - -util/grub_render_label-render-label.o: util/render-label.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_render_label_CPPFLAGS) $(CPPFLAGS) $(grub_render_label_CFLAGS) $(CFLAGS) -MT util/grub_render_label-render-label.o -MD -MP -MF util/$(DEPDIR)/grub_render_label-render-label.Tpo -c -o util/grub_render_label-render-label.o `test -f 'util/render-label.c' || echo '$(srcdir)/'`util/render-label.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_render_label-render-label.Tpo util/$(DEPDIR)/grub_render_label-render-label.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/render-label.c' object='util/grub_render_label-render-label.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_render_label_CPPFLAGS) $(CPPFLAGS) $(grub_render_label_CFLAGS) $(CFLAGS) -c -o util/grub_render_label-render-label.o `test -f 'util/render-label.c' || echo '$(srcdir)/'`util/render-label.c - -util/grub_render_label-render-label.obj: util/render-label.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_render_label_CPPFLAGS) $(CPPFLAGS) $(grub_render_label_CFLAGS) $(CFLAGS) -MT util/grub_render_label-render-label.obj -MD -MP -MF util/$(DEPDIR)/grub_render_label-render-label.Tpo -c -o util/grub_render_label-render-label.obj `if test -f 'util/render-label.c'; then $(CYGPATH_W) 'util/render-label.c'; else $(CYGPATH_W) '$(srcdir)/util/render-label.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_render_label-render-label.Tpo util/$(DEPDIR)/grub_render_label-render-label.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/render-label.c' object='util/grub_render_label-render-label.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_render_label_CPPFLAGS) $(CPPFLAGS) $(grub_render_label_CFLAGS) $(CFLAGS) -c -o util/grub_render_label-render-label.obj `if test -f 'util/render-label.c'; then $(CYGPATH_W) 'util/render-label.c'; else $(CYGPATH_W) '$(srcdir)/util/render-label.c'; fi` - -grub-core/kern/emu/grub_render_label-argp_common.o: grub-core/kern/emu/argp_common.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_render_label_CPPFLAGS) $(CPPFLAGS) $(grub_render_label_CFLAGS) $(CFLAGS) -MT grub-core/kern/emu/grub_render_label-argp_common.o -MD -MP -MF grub-core/kern/emu/$(DEPDIR)/grub_render_label-argp_common.Tpo -c -o grub-core/kern/emu/grub_render_label-argp_common.o `test -f 'grub-core/kern/emu/argp_common.c' || echo '$(srcdir)/'`grub-core/kern/emu/argp_common.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/kern/emu/$(DEPDIR)/grub_render_label-argp_common.Tpo grub-core/kern/emu/$(DEPDIR)/grub_render_label-argp_common.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/kern/emu/argp_common.c' object='grub-core/kern/emu/grub_render_label-argp_common.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_render_label_CPPFLAGS) $(CPPFLAGS) $(grub_render_label_CFLAGS) $(CFLAGS) -c -o grub-core/kern/emu/grub_render_label-argp_common.o `test -f 'grub-core/kern/emu/argp_common.c' || echo '$(srcdir)/'`grub-core/kern/emu/argp_common.c - -grub-core/kern/emu/grub_render_label-argp_common.obj: grub-core/kern/emu/argp_common.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_render_label_CPPFLAGS) $(CPPFLAGS) $(grub_render_label_CFLAGS) $(CFLAGS) -MT grub-core/kern/emu/grub_render_label-argp_common.obj -MD -MP -MF grub-core/kern/emu/$(DEPDIR)/grub_render_label-argp_common.Tpo -c -o grub-core/kern/emu/grub_render_label-argp_common.obj `if test -f 'grub-core/kern/emu/argp_common.c'; then $(CYGPATH_W) 'grub-core/kern/emu/argp_common.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/kern/emu/argp_common.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/kern/emu/$(DEPDIR)/grub_render_label-argp_common.Tpo grub-core/kern/emu/$(DEPDIR)/grub_render_label-argp_common.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/kern/emu/argp_common.c' object='grub-core/kern/emu/grub_render_label-argp_common.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_render_label_CPPFLAGS) $(CPPFLAGS) $(grub_render_label_CFLAGS) $(CFLAGS) -c -o grub-core/kern/emu/grub_render_label-argp_common.obj `if test -f 'grub-core/kern/emu/argp_common.c'; then $(CYGPATH_W) 'grub-core/kern/emu/argp_common.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/kern/emu/argp_common.c'; fi` - -grub-core/kern/emu/grub_render_label-hostfs.o: grub-core/kern/emu/hostfs.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_render_label_CPPFLAGS) $(CPPFLAGS) $(grub_render_label_CFLAGS) $(CFLAGS) -MT grub-core/kern/emu/grub_render_label-hostfs.o -MD -MP -MF grub-core/kern/emu/$(DEPDIR)/grub_render_label-hostfs.Tpo -c -o grub-core/kern/emu/grub_render_label-hostfs.o `test -f 'grub-core/kern/emu/hostfs.c' || echo '$(srcdir)/'`grub-core/kern/emu/hostfs.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/kern/emu/$(DEPDIR)/grub_render_label-hostfs.Tpo grub-core/kern/emu/$(DEPDIR)/grub_render_label-hostfs.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/kern/emu/hostfs.c' object='grub-core/kern/emu/grub_render_label-hostfs.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_render_label_CPPFLAGS) $(CPPFLAGS) $(grub_render_label_CFLAGS) $(CFLAGS) -c -o grub-core/kern/emu/grub_render_label-hostfs.o `test -f 'grub-core/kern/emu/hostfs.c' || echo '$(srcdir)/'`grub-core/kern/emu/hostfs.c - -grub-core/kern/emu/grub_render_label-hostfs.obj: grub-core/kern/emu/hostfs.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_render_label_CPPFLAGS) $(CPPFLAGS) $(grub_render_label_CFLAGS) $(CFLAGS) -MT grub-core/kern/emu/grub_render_label-hostfs.obj -MD -MP -MF grub-core/kern/emu/$(DEPDIR)/grub_render_label-hostfs.Tpo -c -o grub-core/kern/emu/grub_render_label-hostfs.obj `if test -f 'grub-core/kern/emu/hostfs.c'; then $(CYGPATH_W) 'grub-core/kern/emu/hostfs.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/kern/emu/hostfs.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/kern/emu/$(DEPDIR)/grub_render_label-hostfs.Tpo grub-core/kern/emu/$(DEPDIR)/grub_render_label-hostfs.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/kern/emu/hostfs.c' object='grub-core/kern/emu/grub_render_label-hostfs.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_render_label_CPPFLAGS) $(CPPFLAGS) $(grub_render_label_CFLAGS) $(CFLAGS) -c -o grub-core/kern/emu/grub_render_label-hostfs.obj `if test -f 'grub-core/kern/emu/hostfs.c'; then $(CYGPATH_W) 'grub-core/kern/emu/hostfs.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/kern/emu/hostfs.c'; fi` - -grub-core/disk/grub_render_label-host.o: grub-core/disk/host.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_render_label_CPPFLAGS) $(CPPFLAGS) $(grub_render_label_CFLAGS) $(CFLAGS) -MT grub-core/disk/grub_render_label-host.o -MD -MP -MF grub-core/disk/$(DEPDIR)/grub_render_label-host.Tpo -c -o grub-core/disk/grub_render_label-host.o `test -f 'grub-core/disk/host.c' || echo '$(srcdir)/'`grub-core/disk/host.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/disk/$(DEPDIR)/grub_render_label-host.Tpo grub-core/disk/$(DEPDIR)/grub_render_label-host.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/disk/host.c' object='grub-core/disk/grub_render_label-host.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_render_label_CPPFLAGS) $(CPPFLAGS) $(grub_render_label_CFLAGS) $(CFLAGS) -c -o grub-core/disk/grub_render_label-host.o `test -f 'grub-core/disk/host.c' || echo '$(srcdir)/'`grub-core/disk/host.c - -grub-core/disk/grub_render_label-host.obj: grub-core/disk/host.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_render_label_CPPFLAGS) $(CPPFLAGS) $(grub_render_label_CFLAGS) $(CFLAGS) -MT grub-core/disk/grub_render_label-host.obj -MD -MP -MF grub-core/disk/$(DEPDIR)/grub_render_label-host.Tpo -c -o grub-core/disk/grub_render_label-host.obj `if test -f 'grub-core/disk/host.c'; then $(CYGPATH_W) 'grub-core/disk/host.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/disk/host.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/disk/$(DEPDIR)/grub_render_label-host.Tpo grub-core/disk/$(DEPDIR)/grub_render_label-host.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/disk/host.c' object='grub-core/disk/grub_render_label-host.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_render_label_CPPFLAGS) $(CPPFLAGS) $(grub_render_label_CFLAGS) $(CFLAGS) -c -o grub-core/disk/grub_render_label-host.obj `if test -f 'grub-core/disk/host.c'; then $(CYGPATH_W) 'grub-core/disk/host.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/disk/host.c'; fi` - -grub-core/osdep/grub_render_label-init.o: grub-core/osdep/init.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_render_label_CPPFLAGS) $(CPPFLAGS) $(grub_render_label_CFLAGS) $(CFLAGS) -MT grub-core/osdep/grub_render_label-init.o -MD -MP -MF grub-core/osdep/$(DEPDIR)/grub_render_label-init.Tpo -c -o grub-core/osdep/grub_render_label-init.o `test -f 'grub-core/osdep/init.c' || echo '$(srcdir)/'`grub-core/osdep/init.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/osdep/$(DEPDIR)/grub_render_label-init.Tpo grub-core/osdep/$(DEPDIR)/grub_render_label-init.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/osdep/init.c' object='grub-core/osdep/grub_render_label-init.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_render_label_CPPFLAGS) $(CPPFLAGS) $(grub_render_label_CFLAGS) $(CFLAGS) -c -o grub-core/osdep/grub_render_label-init.o `test -f 'grub-core/osdep/init.c' || echo '$(srcdir)/'`grub-core/osdep/init.c - -grub-core/osdep/grub_render_label-init.obj: grub-core/osdep/init.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_render_label_CPPFLAGS) $(CPPFLAGS) $(grub_render_label_CFLAGS) $(CFLAGS) -MT grub-core/osdep/grub_render_label-init.obj -MD -MP -MF grub-core/osdep/$(DEPDIR)/grub_render_label-init.Tpo -c -o grub-core/osdep/grub_render_label-init.obj `if test -f 'grub-core/osdep/init.c'; then $(CYGPATH_W) 'grub-core/osdep/init.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/osdep/init.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/osdep/$(DEPDIR)/grub_render_label-init.Tpo grub-core/osdep/$(DEPDIR)/grub_render_label-init.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/osdep/init.c' object='grub-core/osdep/grub_render_label-init.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_render_label_CPPFLAGS) $(CPPFLAGS) $(grub_render_label_CFLAGS) $(CFLAGS) -c -o grub-core/osdep/grub_render_label-init.obj `if test -f 'grub-core/osdep/init.c'; then $(CYGPATH_W) 'grub-core/osdep/init.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/osdep/init.c'; fi` - -util/grub_script_check-grub-script-check.o: util/grub-script-check.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_script_check_CPPFLAGS) $(CPPFLAGS) $(grub_script_check_CFLAGS) $(CFLAGS) -MT util/grub_script_check-grub-script-check.o -MD -MP -MF util/$(DEPDIR)/grub_script_check-grub-script-check.Tpo -c -o util/grub_script_check-grub-script-check.o `test -f 'util/grub-script-check.c' || echo '$(srcdir)/'`util/grub-script-check.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_script_check-grub-script-check.Tpo util/$(DEPDIR)/grub_script_check-grub-script-check.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/grub-script-check.c' object='util/grub_script_check-grub-script-check.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_script_check_CPPFLAGS) $(CPPFLAGS) $(grub_script_check_CFLAGS) $(CFLAGS) -c -o util/grub_script_check-grub-script-check.o `test -f 'util/grub-script-check.c' || echo '$(srcdir)/'`util/grub-script-check.c - -util/grub_script_check-grub-script-check.obj: util/grub-script-check.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_script_check_CPPFLAGS) $(CPPFLAGS) $(grub_script_check_CFLAGS) $(CFLAGS) -MT util/grub_script_check-grub-script-check.obj -MD -MP -MF util/$(DEPDIR)/grub_script_check-grub-script-check.Tpo -c -o util/grub_script_check-grub-script-check.obj `if test -f 'util/grub-script-check.c'; then $(CYGPATH_W) 'util/grub-script-check.c'; else $(CYGPATH_W) '$(srcdir)/util/grub-script-check.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_script_check-grub-script-check.Tpo util/$(DEPDIR)/grub_script_check-grub-script-check.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/grub-script-check.c' object='util/grub_script_check-grub-script-check.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_script_check_CPPFLAGS) $(CPPFLAGS) $(grub_script_check_CFLAGS) $(CFLAGS) -c -o util/grub_script_check-grub-script-check.obj `if test -f 'util/grub-script-check.c'; then $(CYGPATH_W) 'util/grub-script-check.c'; else $(CYGPATH_W) '$(srcdir)/util/grub-script-check.c'; fi` - -grub-core/kern/emu/grub_script_check-argp_common.o: grub-core/kern/emu/argp_common.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_script_check_CPPFLAGS) $(CPPFLAGS) $(grub_script_check_CFLAGS) $(CFLAGS) -MT grub-core/kern/emu/grub_script_check-argp_common.o -MD -MP -MF grub-core/kern/emu/$(DEPDIR)/grub_script_check-argp_common.Tpo -c -o grub-core/kern/emu/grub_script_check-argp_common.o `test -f 'grub-core/kern/emu/argp_common.c' || echo '$(srcdir)/'`grub-core/kern/emu/argp_common.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/kern/emu/$(DEPDIR)/grub_script_check-argp_common.Tpo grub-core/kern/emu/$(DEPDIR)/grub_script_check-argp_common.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/kern/emu/argp_common.c' object='grub-core/kern/emu/grub_script_check-argp_common.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_script_check_CPPFLAGS) $(CPPFLAGS) $(grub_script_check_CFLAGS) $(CFLAGS) -c -o grub-core/kern/emu/grub_script_check-argp_common.o `test -f 'grub-core/kern/emu/argp_common.c' || echo '$(srcdir)/'`grub-core/kern/emu/argp_common.c - -grub-core/kern/emu/grub_script_check-argp_common.obj: grub-core/kern/emu/argp_common.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_script_check_CPPFLAGS) $(CPPFLAGS) $(grub_script_check_CFLAGS) $(CFLAGS) -MT grub-core/kern/emu/grub_script_check-argp_common.obj -MD -MP -MF grub-core/kern/emu/$(DEPDIR)/grub_script_check-argp_common.Tpo -c -o grub-core/kern/emu/grub_script_check-argp_common.obj `if test -f 'grub-core/kern/emu/argp_common.c'; then $(CYGPATH_W) 'grub-core/kern/emu/argp_common.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/kern/emu/argp_common.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/kern/emu/$(DEPDIR)/grub_script_check-argp_common.Tpo grub-core/kern/emu/$(DEPDIR)/grub_script_check-argp_common.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/kern/emu/argp_common.c' object='grub-core/kern/emu/grub_script_check-argp_common.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_script_check_CPPFLAGS) $(CPPFLAGS) $(grub_script_check_CFLAGS) $(CFLAGS) -c -o grub-core/kern/emu/grub_script_check-argp_common.obj `if test -f 'grub-core/kern/emu/argp_common.c'; then $(CYGPATH_W) 'grub-core/kern/emu/argp_common.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/kern/emu/argp_common.c'; fi` - -grub-core/osdep/grub_script_check-init.o: grub-core/osdep/init.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_script_check_CPPFLAGS) $(CPPFLAGS) $(grub_script_check_CFLAGS) $(CFLAGS) -MT grub-core/osdep/grub_script_check-init.o -MD -MP -MF grub-core/osdep/$(DEPDIR)/grub_script_check-init.Tpo -c -o grub-core/osdep/grub_script_check-init.o `test -f 'grub-core/osdep/init.c' || echo '$(srcdir)/'`grub-core/osdep/init.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/osdep/$(DEPDIR)/grub_script_check-init.Tpo grub-core/osdep/$(DEPDIR)/grub_script_check-init.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/osdep/init.c' object='grub-core/osdep/grub_script_check-init.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_script_check_CPPFLAGS) $(CPPFLAGS) $(grub_script_check_CFLAGS) $(CFLAGS) -c -o grub-core/osdep/grub_script_check-init.o `test -f 'grub-core/osdep/init.c' || echo '$(srcdir)/'`grub-core/osdep/init.c - -grub-core/osdep/grub_script_check-init.obj: grub-core/osdep/init.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_script_check_CPPFLAGS) $(CPPFLAGS) $(grub_script_check_CFLAGS) $(CFLAGS) -MT grub-core/osdep/grub_script_check-init.obj -MD -MP -MF grub-core/osdep/$(DEPDIR)/grub_script_check-init.Tpo -c -o grub-core/osdep/grub_script_check-init.obj `if test -f 'grub-core/osdep/init.c'; then $(CYGPATH_W) 'grub-core/osdep/init.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/osdep/init.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/osdep/$(DEPDIR)/grub_script_check-init.Tpo grub-core/osdep/$(DEPDIR)/grub_script_check-init.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/osdep/init.c' object='grub-core/osdep/grub_script_check-init.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_script_check_CPPFLAGS) $(CPPFLAGS) $(grub_script_check_CFLAGS) $(CFLAGS) -c -o grub-core/osdep/grub_script_check-init.obj `if test -f 'grub-core/osdep/init.c'; then $(CYGPATH_W) 'grub-core/osdep/init.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/osdep/init.c'; fi` - -util/grub_sparc64_setup-grub-setup.o: util/grub-setup.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_sparc64_setup_CPPFLAGS) $(CPPFLAGS) $(grub_sparc64_setup_CFLAGS) $(CFLAGS) -MT util/grub_sparc64_setup-grub-setup.o -MD -MP -MF util/$(DEPDIR)/grub_sparc64_setup-grub-setup.Tpo -c -o util/grub_sparc64_setup-grub-setup.o `test -f 'util/grub-setup.c' || echo '$(srcdir)/'`util/grub-setup.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_sparc64_setup-grub-setup.Tpo util/$(DEPDIR)/grub_sparc64_setup-grub-setup.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/grub-setup.c' object='util/grub_sparc64_setup-grub-setup.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_sparc64_setup_CPPFLAGS) $(CPPFLAGS) $(grub_sparc64_setup_CFLAGS) $(CFLAGS) -c -o util/grub_sparc64_setup-grub-setup.o `test -f 'util/grub-setup.c' || echo '$(srcdir)/'`util/grub-setup.c - -util/grub_sparc64_setup-grub-setup.obj: util/grub-setup.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_sparc64_setup_CPPFLAGS) $(CPPFLAGS) $(grub_sparc64_setup_CFLAGS) $(CFLAGS) -MT util/grub_sparc64_setup-grub-setup.obj -MD -MP -MF util/$(DEPDIR)/grub_sparc64_setup-grub-setup.Tpo -c -o util/grub_sparc64_setup-grub-setup.obj `if test -f 'util/grub-setup.c'; then $(CYGPATH_W) 'util/grub-setup.c'; else $(CYGPATH_W) '$(srcdir)/util/grub-setup.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_sparc64_setup-grub-setup.Tpo util/$(DEPDIR)/grub_sparc64_setup-grub-setup.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/grub-setup.c' object='util/grub_sparc64_setup-grub-setup.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_sparc64_setup_CPPFLAGS) $(CPPFLAGS) $(grub_sparc64_setup_CFLAGS) $(CFLAGS) -c -o util/grub_sparc64_setup-grub-setup.obj `if test -f 'util/grub-setup.c'; then $(CYGPATH_W) 'util/grub-setup.c'; else $(CYGPATH_W) '$(srcdir)/util/grub-setup.c'; fi` - -util/grub_sparc64_setup-setup_sparc.o: util/setup_sparc.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_sparc64_setup_CPPFLAGS) $(CPPFLAGS) $(grub_sparc64_setup_CFLAGS) $(CFLAGS) -MT util/grub_sparc64_setup-setup_sparc.o -MD -MP -MF util/$(DEPDIR)/grub_sparc64_setup-setup_sparc.Tpo -c -o util/grub_sparc64_setup-setup_sparc.o `test -f 'util/setup_sparc.c' || echo '$(srcdir)/'`util/setup_sparc.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_sparc64_setup-setup_sparc.Tpo util/$(DEPDIR)/grub_sparc64_setup-setup_sparc.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/setup_sparc.c' object='util/grub_sparc64_setup-setup_sparc.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_sparc64_setup_CPPFLAGS) $(CPPFLAGS) $(grub_sparc64_setup_CFLAGS) $(CFLAGS) -c -o util/grub_sparc64_setup-setup_sparc.o `test -f 'util/setup_sparc.c' || echo '$(srcdir)/'`util/setup_sparc.c - -util/grub_sparc64_setup-setup_sparc.obj: util/setup_sparc.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_sparc64_setup_CPPFLAGS) $(CPPFLAGS) $(grub_sparc64_setup_CFLAGS) $(CFLAGS) -MT util/grub_sparc64_setup-setup_sparc.obj -MD -MP -MF util/$(DEPDIR)/grub_sparc64_setup-setup_sparc.Tpo -c -o util/grub_sparc64_setup-setup_sparc.obj `if test -f 'util/setup_sparc.c'; then $(CYGPATH_W) 'util/setup_sparc.c'; else $(CYGPATH_W) '$(srcdir)/util/setup_sparc.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_sparc64_setup-setup_sparc.Tpo util/$(DEPDIR)/grub_sparc64_setup-setup_sparc.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/setup_sparc.c' object='util/grub_sparc64_setup-setup_sparc.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_sparc64_setup_CPPFLAGS) $(CPPFLAGS) $(grub_sparc64_setup_CFLAGS) $(CFLAGS) -c -o util/grub_sparc64_setup-setup_sparc.obj `if test -f 'util/setup_sparc.c'; then $(CYGPATH_W) 'util/setup_sparc.c'; else $(CYGPATH_W) '$(srcdir)/util/setup_sparc.c'; fi` - -grub-core/kern/emu/grub_sparc64_setup-argp_common.o: grub-core/kern/emu/argp_common.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_sparc64_setup_CPPFLAGS) $(CPPFLAGS) $(grub_sparc64_setup_CFLAGS) $(CFLAGS) -MT grub-core/kern/emu/grub_sparc64_setup-argp_common.o -MD -MP -MF grub-core/kern/emu/$(DEPDIR)/grub_sparc64_setup-argp_common.Tpo -c -o grub-core/kern/emu/grub_sparc64_setup-argp_common.o `test -f 'grub-core/kern/emu/argp_common.c' || echo '$(srcdir)/'`grub-core/kern/emu/argp_common.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/kern/emu/$(DEPDIR)/grub_sparc64_setup-argp_common.Tpo grub-core/kern/emu/$(DEPDIR)/grub_sparc64_setup-argp_common.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/kern/emu/argp_common.c' object='grub-core/kern/emu/grub_sparc64_setup-argp_common.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_sparc64_setup_CPPFLAGS) $(CPPFLAGS) $(grub_sparc64_setup_CFLAGS) $(CFLAGS) -c -o grub-core/kern/emu/grub_sparc64_setup-argp_common.o `test -f 'grub-core/kern/emu/argp_common.c' || echo '$(srcdir)/'`grub-core/kern/emu/argp_common.c - -grub-core/kern/emu/grub_sparc64_setup-argp_common.obj: grub-core/kern/emu/argp_common.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_sparc64_setup_CPPFLAGS) $(CPPFLAGS) $(grub_sparc64_setup_CFLAGS) $(CFLAGS) -MT grub-core/kern/emu/grub_sparc64_setup-argp_common.obj -MD -MP -MF grub-core/kern/emu/$(DEPDIR)/grub_sparc64_setup-argp_common.Tpo -c -o grub-core/kern/emu/grub_sparc64_setup-argp_common.obj `if test -f 'grub-core/kern/emu/argp_common.c'; then $(CYGPATH_W) 'grub-core/kern/emu/argp_common.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/kern/emu/argp_common.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/kern/emu/$(DEPDIR)/grub_sparc64_setup-argp_common.Tpo grub-core/kern/emu/$(DEPDIR)/grub_sparc64_setup-argp_common.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/kern/emu/argp_common.c' object='grub-core/kern/emu/grub_sparc64_setup-argp_common.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_sparc64_setup_CPPFLAGS) $(CPPFLAGS) $(grub_sparc64_setup_CFLAGS) $(CFLAGS) -c -o grub-core/kern/emu/grub_sparc64_setup-argp_common.obj `if test -f 'grub-core/kern/emu/argp_common.c'; then $(CYGPATH_W) 'grub-core/kern/emu/argp_common.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/kern/emu/argp_common.c'; fi` - -grub-core/lib/grub_sparc64_setup-reed_solomon.o: grub-core/lib/reed_solomon.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_sparc64_setup_CPPFLAGS) $(CPPFLAGS) $(grub_sparc64_setup_CFLAGS) $(CFLAGS) -MT grub-core/lib/grub_sparc64_setup-reed_solomon.o -MD -MP -MF grub-core/lib/$(DEPDIR)/grub_sparc64_setup-reed_solomon.Tpo -c -o grub-core/lib/grub_sparc64_setup-reed_solomon.o `test -f 'grub-core/lib/reed_solomon.c' || echo '$(srcdir)/'`grub-core/lib/reed_solomon.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/lib/$(DEPDIR)/grub_sparc64_setup-reed_solomon.Tpo grub-core/lib/$(DEPDIR)/grub_sparc64_setup-reed_solomon.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/lib/reed_solomon.c' object='grub-core/lib/grub_sparc64_setup-reed_solomon.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_sparc64_setup_CPPFLAGS) $(CPPFLAGS) $(grub_sparc64_setup_CFLAGS) $(CFLAGS) -c -o grub-core/lib/grub_sparc64_setup-reed_solomon.o `test -f 'grub-core/lib/reed_solomon.c' || echo '$(srcdir)/'`grub-core/lib/reed_solomon.c - -grub-core/lib/grub_sparc64_setup-reed_solomon.obj: grub-core/lib/reed_solomon.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_sparc64_setup_CPPFLAGS) $(CPPFLAGS) $(grub_sparc64_setup_CFLAGS) $(CFLAGS) -MT grub-core/lib/grub_sparc64_setup-reed_solomon.obj -MD -MP -MF grub-core/lib/$(DEPDIR)/grub_sparc64_setup-reed_solomon.Tpo -c -o grub-core/lib/grub_sparc64_setup-reed_solomon.obj `if test -f 'grub-core/lib/reed_solomon.c'; then $(CYGPATH_W) 'grub-core/lib/reed_solomon.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/lib/reed_solomon.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/lib/$(DEPDIR)/grub_sparc64_setup-reed_solomon.Tpo grub-core/lib/$(DEPDIR)/grub_sparc64_setup-reed_solomon.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/lib/reed_solomon.c' object='grub-core/lib/grub_sparc64_setup-reed_solomon.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_sparc64_setup_CPPFLAGS) $(CPPFLAGS) $(grub_sparc64_setup_CFLAGS) $(CFLAGS) -c -o grub-core/lib/grub_sparc64_setup-reed_solomon.obj `if test -f 'grub-core/lib/reed_solomon.c'; then $(CYGPATH_W) 'grub-core/lib/reed_solomon.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/lib/reed_solomon.c'; fi` - -grub-core/osdep/grub_sparc64_setup-ofpath.o: grub-core/osdep/ofpath.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_sparc64_setup_CPPFLAGS) $(CPPFLAGS) $(grub_sparc64_setup_CFLAGS) $(CFLAGS) -MT grub-core/osdep/grub_sparc64_setup-ofpath.o -MD -MP -MF grub-core/osdep/$(DEPDIR)/grub_sparc64_setup-ofpath.Tpo -c -o grub-core/osdep/grub_sparc64_setup-ofpath.o `test -f 'grub-core/osdep/ofpath.c' || echo '$(srcdir)/'`grub-core/osdep/ofpath.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/osdep/$(DEPDIR)/grub_sparc64_setup-ofpath.Tpo grub-core/osdep/$(DEPDIR)/grub_sparc64_setup-ofpath.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/osdep/ofpath.c' object='grub-core/osdep/grub_sparc64_setup-ofpath.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_sparc64_setup_CPPFLAGS) $(CPPFLAGS) $(grub_sparc64_setup_CFLAGS) $(CFLAGS) -c -o grub-core/osdep/grub_sparc64_setup-ofpath.o `test -f 'grub-core/osdep/ofpath.c' || echo '$(srcdir)/'`grub-core/osdep/ofpath.c - -grub-core/osdep/grub_sparc64_setup-ofpath.obj: grub-core/osdep/ofpath.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_sparc64_setup_CPPFLAGS) $(CPPFLAGS) $(grub_sparc64_setup_CFLAGS) $(CFLAGS) -MT grub-core/osdep/grub_sparc64_setup-ofpath.obj -MD -MP -MF grub-core/osdep/$(DEPDIR)/grub_sparc64_setup-ofpath.Tpo -c -o grub-core/osdep/grub_sparc64_setup-ofpath.obj `if test -f 'grub-core/osdep/ofpath.c'; then $(CYGPATH_W) 'grub-core/osdep/ofpath.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/osdep/ofpath.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/osdep/$(DEPDIR)/grub_sparc64_setup-ofpath.Tpo grub-core/osdep/$(DEPDIR)/grub_sparc64_setup-ofpath.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/osdep/ofpath.c' object='grub-core/osdep/grub_sparc64_setup-ofpath.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_sparc64_setup_CPPFLAGS) $(CPPFLAGS) $(grub_sparc64_setup_CFLAGS) $(CFLAGS) -c -o grub-core/osdep/grub_sparc64_setup-ofpath.obj `if test -f 'grub-core/osdep/ofpath.c'; then $(CYGPATH_W) 'grub-core/osdep/ofpath.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/osdep/ofpath.c'; fi` - -grub-core/osdep/grub_sparc64_setup-blocklist.o: grub-core/osdep/blocklist.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_sparc64_setup_CPPFLAGS) $(CPPFLAGS) $(grub_sparc64_setup_CFLAGS) $(CFLAGS) -MT grub-core/osdep/grub_sparc64_setup-blocklist.o -MD -MP -MF grub-core/osdep/$(DEPDIR)/grub_sparc64_setup-blocklist.Tpo -c -o grub-core/osdep/grub_sparc64_setup-blocklist.o `test -f 'grub-core/osdep/blocklist.c' || echo '$(srcdir)/'`grub-core/osdep/blocklist.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/osdep/$(DEPDIR)/grub_sparc64_setup-blocklist.Tpo grub-core/osdep/$(DEPDIR)/grub_sparc64_setup-blocklist.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/osdep/blocklist.c' object='grub-core/osdep/grub_sparc64_setup-blocklist.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_sparc64_setup_CPPFLAGS) $(CPPFLAGS) $(grub_sparc64_setup_CFLAGS) $(CFLAGS) -c -o grub-core/osdep/grub_sparc64_setup-blocklist.o `test -f 'grub-core/osdep/blocklist.c' || echo '$(srcdir)/'`grub-core/osdep/blocklist.c - -grub-core/osdep/grub_sparc64_setup-blocklist.obj: grub-core/osdep/blocklist.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_sparc64_setup_CPPFLAGS) $(CPPFLAGS) $(grub_sparc64_setup_CFLAGS) $(CFLAGS) -MT grub-core/osdep/grub_sparc64_setup-blocklist.obj -MD -MP -MF grub-core/osdep/$(DEPDIR)/grub_sparc64_setup-blocklist.Tpo -c -o grub-core/osdep/grub_sparc64_setup-blocklist.obj `if test -f 'grub-core/osdep/blocklist.c'; then $(CYGPATH_W) 'grub-core/osdep/blocklist.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/osdep/blocklist.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/osdep/$(DEPDIR)/grub_sparc64_setup-blocklist.Tpo grub-core/osdep/$(DEPDIR)/grub_sparc64_setup-blocklist.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/osdep/blocklist.c' object='grub-core/osdep/grub_sparc64_setup-blocklist.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_sparc64_setup_CPPFLAGS) $(CPPFLAGS) $(grub_sparc64_setup_CFLAGS) $(CFLAGS) -c -o grub-core/osdep/grub_sparc64_setup-blocklist.obj `if test -f 'grub-core/osdep/blocklist.c'; then $(CYGPATH_W) 'grub-core/osdep/blocklist.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/osdep/blocklist.c'; fi` - -grub-core/osdep/grub_sparc64_setup-init.o: grub-core/osdep/init.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_sparc64_setup_CPPFLAGS) $(CPPFLAGS) $(grub_sparc64_setup_CFLAGS) $(CFLAGS) -MT grub-core/osdep/grub_sparc64_setup-init.o -MD -MP -MF grub-core/osdep/$(DEPDIR)/grub_sparc64_setup-init.Tpo -c -o grub-core/osdep/grub_sparc64_setup-init.o `test -f 'grub-core/osdep/init.c' || echo '$(srcdir)/'`grub-core/osdep/init.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/osdep/$(DEPDIR)/grub_sparc64_setup-init.Tpo grub-core/osdep/$(DEPDIR)/grub_sparc64_setup-init.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/osdep/init.c' object='grub-core/osdep/grub_sparc64_setup-init.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_sparc64_setup_CPPFLAGS) $(CPPFLAGS) $(grub_sparc64_setup_CFLAGS) $(CFLAGS) -c -o grub-core/osdep/grub_sparc64_setup-init.o `test -f 'grub-core/osdep/init.c' || echo '$(srcdir)/'`grub-core/osdep/init.c - -grub-core/osdep/grub_sparc64_setup-init.obj: grub-core/osdep/init.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_sparc64_setup_CPPFLAGS) $(CPPFLAGS) $(grub_sparc64_setup_CFLAGS) $(CFLAGS) -MT grub-core/osdep/grub_sparc64_setup-init.obj -MD -MP -MF grub-core/osdep/$(DEPDIR)/grub_sparc64_setup-init.Tpo -c -o grub-core/osdep/grub_sparc64_setup-init.obj `if test -f 'grub-core/osdep/init.c'; then $(CYGPATH_W) 'grub-core/osdep/init.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/osdep/init.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/osdep/$(DEPDIR)/grub_sparc64_setup-init.Tpo grub-core/osdep/$(DEPDIR)/grub_sparc64_setup-init.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/osdep/init.c' object='grub-core/osdep/grub_sparc64_setup-init.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_sparc64_setup_CPPFLAGS) $(CPPFLAGS) $(grub_sparc64_setup_CFLAGS) $(CFLAGS) -c -o grub-core/osdep/grub_sparc64_setup-init.obj `if test -f 'grub-core/osdep/init.c'; then $(CYGPATH_W) 'grub-core/osdep/init.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/osdep/init.c'; fi` - -util/grub_syslinux2cfg-grub-syslinux2cfg.o: util/grub-syslinux2cfg.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_syslinux2cfg_CPPFLAGS) $(CPPFLAGS) $(grub_syslinux2cfg_CFLAGS) $(CFLAGS) -MT util/grub_syslinux2cfg-grub-syslinux2cfg.o -MD -MP -MF util/$(DEPDIR)/grub_syslinux2cfg-grub-syslinux2cfg.Tpo -c -o util/grub_syslinux2cfg-grub-syslinux2cfg.o `test -f 'util/grub-syslinux2cfg.c' || echo '$(srcdir)/'`util/grub-syslinux2cfg.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_syslinux2cfg-grub-syslinux2cfg.Tpo util/$(DEPDIR)/grub_syslinux2cfg-grub-syslinux2cfg.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/grub-syslinux2cfg.c' object='util/grub_syslinux2cfg-grub-syslinux2cfg.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_syslinux2cfg_CPPFLAGS) $(CPPFLAGS) $(grub_syslinux2cfg_CFLAGS) $(CFLAGS) -c -o util/grub_syslinux2cfg-grub-syslinux2cfg.o `test -f 'util/grub-syslinux2cfg.c' || echo '$(srcdir)/'`util/grub-syslinux2cfg.c - -util/grub_syslinux2cfg-grub-syslinux2cfg.obj: util/grub-syslinux2cfg.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_syslinux2cfg_CPPFLAGS) $(CPPFLAGS) $(grub_syslinux2cfg_CFLAGS) $(CFLAGS) -MT util/grub_syslinux2cfg-grub-syslinux2cfg.obj -MD -MP -MF util/$(DEPDIR)/grub_syslinux2cfg-grub-syslinux2cfg.Tpo -c -o util/grub_syslinux2cfg-grub-syslinux2cfg.obj `if test -f 'util/grub-syslinux2cfg.c'; then $(CYGPATH_W) 'util/grub-syslinux2cfg.c'; else $(CYGPATH_W) '$(srcdir)/util/grub-syslinux2cfg.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) util/$(DEPDIR)/grub_syslinux2cfg-grub-syslinux2cfg.Tpo util/$(DEPDIR)/grub_syslinux2cfg-grub-syslinux2cfg.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='util/grub-syslinux2cfg.c' object='util/grub_syslinux2cfg-grub-syslinux2cfg.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_syslinux2cfg_CPPFLAGS) $(CPPFLAGS) $(grub_syslinux2cfg_CFLAGS) $(CFLAGS) -c -o util/grub_syslinux2cfg-grub-syslinux2cfg.obj `if test -f 'util/grub-syslinux2cfg.c'; then $(CYGPATH_W) 'util/grub-syslinux2cfg.c'; else $(CYGPATH_W) '$(srcdir)/util/grub-syslinux2cfg.c'; fi` - -grub-core/lib/grub_syslinux2cfg-syslinux_parse.o: grub-core/lib/syslinux_parse.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_syslinux2cfg_CPPFLAGS) $(CPPFLAGS) $(grub_syslinux2cfg_CFLAGS) $(CFLAGS) -MT grub-core/lib/grub_syslinux2cfg-syslinux_parse.o -MD -MP -MF grub-core/lib/$(DEPDIR)/grub_syslinux2cfg-syslinux_parse.Tpo -c -o grub-core/lib/grub_syslinux2cfg-syslinux_parse.o `test -f 'grub-core/lib/syslinux_parse.c' || echo '$(srcdir)/'`grub-core/lib/syslinux_parse.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/lib/$(DEPDIR)/grub_syslinux2cfg-syslinux_parse.Tpo grub-core/lib/$(DEPDIR)/grub_syslinux2cfg-syslinux_parse.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/lib/syslinux_parse.c' object='grub-core/lib/grub_syslinux2cfg-syslinux_parse.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_syslinux2cfg_CPPFLAGS) $(CPPFLAGS) $(grub_syslinux2cfg_CFLAGS) $(CFLAGS) -c -o grub-core/lib/grub_syslinux2cfg-syslinux_parse.o `test -f 'grub-core/lib/syslinux_parse.c' || echo '$(srcdir)/'`grub-core/lib/syslinux_parse.c - -grub-core/lib/grub_syslinux2cfg-syslinux_parse.obj: grub-core/lib/syslinux_parse.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_syslinux2cfg_CPPFLAGS) $(CPPFLAGS) $(grub_syslinux2cfg_CFLAGS) $(CFLAGS) -MT grub-core/lib/grub_syslinux2cfg-syslinux_parse.obj -MD -MP -MF grub-core/lib/$(DEPDIR)/grub_syslinux2cfg-syslinux_parse.Tpo -c -o grub-core/lib/grub_syslinux2cfg-syslinux_parse.obj `if test -f 'grub-core/lib/syslinux_parse.c'; then $(CYGPATH_W) 'grub-core/lib/syslinux_parse.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/lib/syslinux_parse.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/lib/$(DEPDIR)/grub_syslinux2cfg-syslinux_parse.Tpo grub-core/lib/$(DEPDIR)/grub_syslinux2cfg-syslinux_parse.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/lib/syslinux_parse.c' object='grub-core/lib/grub_syslinux2cfg-syslinux_parse.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_syslinux2cfg_CPPFLAGS) $(CPPFLAGS) $(grub_syslinux2cfg_CFLAGS) $(CFLAGS) -c -o grub-core/lib/grub_syslinux2cfg-syslinux_parse.obj `if test -f 'grub-core/lib/syslinux_parse.c'; then $(CYGPATH_W) 'grub-core/lib/syslinux_parse.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/lib/syslinux_parse.c'; fi` - -grub-core/lib/grub_syslinux2cfg-getline.o: grub-core/lib/getline.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_syslinux2cfg_CPPFLAGS) $(CPPFLAGS) $(grub_syslinux2cfg_CFLAGS) $(CFLAGS) -MT grub-core/lib/grub_syslinux2cfg-getline.o -MD -MP -MF grub-core/lib/$(DEPDIR)/grub_syslinux2cfg-getline.Tpo -c -o grub-core/lib/grub_syslinux2cfg-getline.o `test -f 'grub-core/lib/getline.c' || echo '$(srcdir)/'`grub-core/lib/getline.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/lib/$(DEPDIR)/grub_syslinux2cfg-getline.Tpo grub-core/lib/$(DEPDIR)/grub_syslinux2cfg-getline.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/lib/getline.c' object='grub-core/lib/grub_syslinux2cfg-getline.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_syslinux2cfg_CPPFLAGS) $(CPPFLAGS) $(grub_syslinux2cfg_CFLAGS) $(CFLAGS) -c -o grub-core/lib/grub_syslinux2cfg-getline.o `test -f 'grub-core/lib/getline.c' || echo '$(srcdir)/'`grub-core/lib/getline.c - -grub-core/lib/grub_syslinux2cfg-getline.obj: grub-core/lib/getline.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_syslinux2cfg_CPPFLAGS) $(CPPFLAGS) $(grub_syslinux2cfg_CFLAGS) $(CFLAGS) -MT grub-core/lib/grub_syslinux2cfg-getline.obj -MD -MP -MF grub-core/lib/$(DEPDIR)/grub_syslinux2cfg-getline.Tpo -c -o grub-core/lib/grub_syslinux2cfg-getline.obj `if test -f 'grub-core/lib/getline.c'; then $(CYGPATH_W) 'grub-core/lib/getline.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/lib/getline.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/lib/$(DEPDIR)/grub_syslinux2cfg-getline.Tpo grub-core/lib/$(DEPDIR)/grub_syslinux2cfg-getline.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/lib/getline.c' object='grub-core/lib/grub_syslinux2cfg-getline.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_syslinux2cfg_CPPFLAGS) $(CPPFLAGS) $(grub_syslinux2cfg_CFLAGS) $(CFLAGS) -c -o grub-core/lib/grub_syslinux2cfg-getline.obj `if test -f 'grub-core/lib/getline.c'; then $(CYGPATH_W) 'grub-core/lib/getline.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/lib/getline.c'; fi` - -grub-core/osdep/grub_syslinux2cfg-init.o: grub-core/osdep/init.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_syslinux2cfg_CPPFLAGS) $(CPPFLAGS) $(grub_syslinux2cfg_CFLAGS) $(CFLAGS) -MT grub-core/osdep/grub_syslinux2cfg-init.o -MD -MP -MF grub-core/osdep/$(DEPDIR)/grub_syslinux2cfg-init.Tpo -c -o grub-core/osdep/grub_syslinux2cfg-init.o `test -f 'grub-core/osdep/init.c' || echo '$(srcdir)/'`grub-core/osdep/init.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/osdep/$(DEPDIR)/grub_syslinux2cfg-init.Tpo grub-core/osdep/$(DEPDIR)/grub_syslinux2cfg-init.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/osdep/init.c' object='grub-core/osdep/grub_syslinux2cfg-init.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_syslinux2cfg_CPPFLAGS) $(CPPFLAGS) $(grub_syslinux2cfg_CFLAGS) $(CFLAGS) -c -o grub-core/osdep/grub_syslinux2cfg-init.o `test -f 'grub-core/osdep/init.c' || echo '$(srcdir)/'`grub-core/osdep/init.c - -grub-core/osdep/grub_syslinux2cfg-init.obj: grub-core/osdep/init.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_syslinux2cfg_CPPFLAGS) $(CPPFLAGS) $(grub_syslinux2cfg_CFLAGS) $(CFLAGS) -MT grub-core/osdep/grub_syslinux2cfg-init.obj -MD -MP -MF grub-core/osdep/$(DEPDIR)/grub_syslinux2cfg-init.Tpo -c -o grub-core/osdep/grub_syslinux2cfg-init.obj `if test -f 'grub-core/osdep/init.c'; then $(CYGPATH_W) 'grub-core/osdep/init.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/osdep/init.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/osdep/$(DEPDIR)/grub_syslinux2cfg-init.Tpo grub-core/osdep/$(DEPDIR)/grub_syslinux2cfg-init.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/osdep/init.c' object='grub-core/osdep/grub_syslinux2cfg-init.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_syslinux2cfg_CPPFLAGS) $(CPPFLAGS) $(grub_syslinux2cfg_CFLAGS) $(CFLAGS) -c -o grub-core/osdep/grub_syslinux2cfg-init.obj `if test -f 'grub-core/osdep/init.c'; then $(CYGPATH_W) 'grub-core/osdep/init.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/osdep/init.c'; fi` - -grub-core/kern/emu/grub_syslinux2cfg-hostfs.o: grub-core/kern/emu/hostfs.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_syslinux2cfg_CPPFLAGS) $(CPPFLAGS) $(grub_syslinux2cfg_CFLAGS) $(CFLAGS) -MT grub-core/kern/emu/grub_syslinux2cfg-hostfs.o -MD -MP -MF grub-core/kern/emu/$(DEPDIR)/grub_syslinux2cfg-hostfs.Tpo -c -o grub-core/kern/emu/grub_syslinux2cfg-hostfs.o `test -f 'grub-core/kern/emu/hostfs.c' || echo '$(srcdir)/'`grub-core/kern/emu/hostfs.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/kern/emu/$(DEPDIR)/grub_syslinux2cfg-hostfs.Tpo grub-core/kern/emu/$(DEPDIR)/grub_syslinux2cfg-hostfs.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/kern/emu/hostfs.c' object='grub-core/kern/emu/grub_syslinux2cfg-hostfs.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_syslinux2cfg_CPPFLAGS) $(CPPFLAGS) $(grub_syslinux2cfg_CFLAGS) $(CFLAGS) -c -o grub-core/kern/emu/grub_syslinux2cfg-hostfs.o `test -f 'grub-core/kern/emu/hostfs.c' || echo '$(srcdir)/'`grub-core/kern/emu/hostfs.c - -grub-core/kern/emu/grub_syslinux2cfg-hostfs.obj: grub-core/kern/emu/hostfs.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_syslinux2cfg_CPPFLAGS) $(CPPFLAGS) $(grub_syslinux2cfg_CFLAGS) $(CFLAGS) -MT grub-core/kern/emu/grub_syslinux2cfg-hostfs.obj -MD -MP -MF grub-core/kern/emu/$(DEPDIR)/grub_syslinux2cfg-hostfs.Tpo -c -o grub-core/kern/emu/grub_syslinux2cfg-hostfs.obj `if test -f 'grub-core/kern/emu/hostfs.c'; then $(CYGPATH_W) 'grub-core/kern/emu/hostfs.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/kern/emu/hostfs.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/kern/emu/$(DEPDIR)/grub_syslinux2cfg-hostfs.Tpo grub-core/kern/emu/$(DEPDIR)/grub_syslinux2cfg-hostfs.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/kern/emu/hostfs.c' object='grub-core/kern/emu/grub_syslinux2cfg-hostfs.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_syslinux2cfg_CPPFLAGS) $(CPPFLAGS) $(grub_syslinux2cfg_CFLAGS) $(CFLAGS) -c -o grub-core/kern/emu/grub_syslinux2cfg-hostfs.obj `if test -f 'grub-core/kern/emu/hostfs.c'; then $(CYGPATH_W) 'grub-core/kern/emu/hostfs.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/kern/emu/hostfs.c'; fi` - -grub-core/disk/grub_syslinux2cfg-host.o: grub-core/disk/host.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_syslinux2cfg_CPPFLAGS) $(CPPFLAGS) $(grub_syslinux2cfg_CFLAGS) $(CFLAGS) -MT grub-core/disk/grub_syslinux2cfg-host.o -MD -MP -MF grub-core/disk/$(DEPDIR)/grub_syslinux2cfg-host.Tpo -c -o grub-core/disk/grub_syslinux2cfg-host.o `test -f 'grub-core/disk/host.c' || echo '$(srcdir)/'`grub-core/disk/host.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/disk/$(DEPDIR)/grub_syslinux2cfg-host.Tpo grub-core/disk/$(DEPDIR)/grub_syslinux2cfg-host.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/disk/host.c' object='grub-core/disk/grub_syslinux2cfg-host.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_syslinux2cfg_CPPFLAGS) $(CPPFLAGS) $(grub_syslinux2cfg_CFLAGS) $(CFLAGS) -c -o grub-core/disk/grub_syslinux2cfg-host.o `test -f 'grub-core/disk/host.c' || echo '$(srcdir)/'`grub-core/disk/host.c - -grub-core/disk/grub_syslinux2cfg-host.obj: grub-core/disk/host.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_syslinux2cfg_CPPFLAGS) $(CPPFLAGS) $(grub_syslinux2cfg_CFLAGS) $(CFLAGS) -MT grub-core/disk/grub_syslinux2cfg-host.obj -MD -MP -MF grub-core/disk/$(DEPDIR)/grub_syslinux2cfg-host.Tpo -c -o grub-core/disk/grub_syslinux2cfg-host.obj `if test -f 'grub-core/disk/host.c'; then $(CYGPATH_W) 'grub-core/disk/host.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/disk/host.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/disk/$(DEPDIR)/grub_syslinux2cfg-host.Tpo grub-core/disk/$(DEPDIR)/grub_syslinux2cfg-host.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/disk/host.c' object='grub-core/disk/grub_syslinux2cfg-host.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_syslinux2cfg_CPPFLAGS) $(CPPFLAGS) $(grub_syslinux2cfg_CFLAGS) $(CFLAGS) -c -o grub-core/disk/grub_syslinux2cfg-host.obj `if test -f 'grub-core/disk/host.c'; then $(CYGPATH_W) 'grub-core/disk/host.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/disk/host.c'; fi` - -grub-core/kern/emu/grub_syslinux2cfg-argp_common.o: grub-core/kern/emu/argp_common.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_syslinux2cfg_CPPFLAGS) $(CPPFLAGS) $(grub_syslinux2cfg_CFLAGS) $(CFLAGS) -MT grub-core/kern/emu/grub_syslinux2cfg-argp_common.o -MD -MP -MF grub-core/kern/emu/$(DEPDIR)/grub_syslinux2cfg-argp_common.Tpo -c -o grub-core/kern/emu/grub_syslinux2cfg-argp_common.o `test -f 'grub-core/kern/emu/argp_common.c' || echo '$(srcdir)/'`grub-core/kern/emu/argp_common.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/kern/emu/$(DEPDIR)/grub_syslinux2cfg-argp_common.Tpo grub-core/kern/emu/$(DEPDIR)/grub_syslinux2cfg-argp_common.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/kern/emu/argp_common.c' object='grub-core/kern/emu/grub_syslinux2cfg-argp_common.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_syslinux2cfg_CPPFLAGS) $(CPPFLAGS) $(grub_syslinux2cfg_CFLAGS) $(CFLAGS) -c -o grub-core/kern/emu/grub_syslinux2cfg-argp_common.o `test -f 'grub-core/kern/emu/argp_common.c' || echo '$(srcdir)/'`grub-core/kern/emu/argp_common.c - -grub-core/kern/emu/grub_syslinux2cfg-argp_common.obj: grub-core/kern/emu/argp_common.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_syslinux2cfg_CPPFLAGS) $(CPPFLAGS) $(grub_syslinux2cfg_CFLAGS) $(CFLAGS) -MT grub-core/kern/emu/grub_syslinux2cfg-argp_common.obj -MD -MP -MF grub-core/kern/emu/$(DEPDIR)/grub_syslinux2cfg-argp_common.Tpo -c -o grub-core/kern/emu/grub_syslinux2cfg-argp_common.obj `if test -f 'grub-core/kern/emu/argp_common.c'; then $(CYGPATH_W) 'grub-core/kern/emu/argp_common.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/kern/emu/argp_common.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/kern/emu/$(DEPDIR)/grub_syslinux2cfg-argp_common.Tpo grub-core/kern/emu/$(DEPDIR)/grub_syslinux2cfg-argp_common.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/kern/emu/argp_common.c' object='grub-core/kern/emu/grub_syslinux2cfg-argp_common.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_syslinux2cfg_CPPFLAGS) $(CPPFLAGS) $(grub_syslinux2cfg_CFLAGS) $(CFLAGS) -c -o grub-core/kern/emu/grub_syslinux2cfg-argp_common.obj `if test -f 'grub-core/kern/emu/argp_common.c'; then $(CYGPATH_W) 'grub-core/kern/emu/argp_common.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/kern/emu/argp_common.c'; fi` - -tests/printf_test-printf_unit_test.o: tests/printf_unit_test.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(printf_test_CPPFLAGS) $(CPPFLAGS) $(printf_test_CFLAGS) $(CFLAGS) -MT tests/printf_test-printf_unit_test.o -MD -MP -MF tests/$(DEPDIR)/printf_test-printf_unit_test.Tpo -c -o tests/printf_test-printf_unit_test.o `test -f 'tests/printf_unit_test.c' || echo '$(srcdir)/'`tests/printf_unit_test.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) tests/$(DEPDIR)/printf_test-printf_unit_test.Tpo tests/$(DEPDIR)/printf_test-printf_unit_test.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='tests/printf_unit_test.c' object='tests/printf_test-printf_unit_test.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(printf_test_CPPFLAGS) $(CPPFLAGS) $(printf_test_CFLAGS) $(CFLAGS) -c -o tests/printf_test-printf_unit_test.o `test -f 'tests/printf_unit_test.c' || echo '$(srcdir)/'`tests/printf_unit_test.c - -tests/printf_test-printf_unit_test.obj: tests/printf_unit_test.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(printf_test_CPPFLAGS) $(CPPFLAGS) $(printf_test_CFLAGS) $(CFLAGS) -MT tests/printf_test-printf_unit_test.obj -MD -MP -MF tests/$(DEPDIR)/printf_test-printf_unit_test.Tpo -c -o tests/printf_test-printf_unit_test.obj `if test -f 'tests/printf_unit_test.c'; then $(CYGPATH_W) 'tests/printf_unit_test.c'; else $(CYGPATH_W) '$(srcdir)/tests/printf_unit_test.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) tests/$(DEPDIR)/printf_test-printf_unit_test.Tpo tests/$(DEPDIR)/printf_test-printf_unit_test.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='tests/printf_unit_test.c' object='tests/printf_test-printf_unit_test.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(printf_test_CPPFLAGS) $(CPPFLAGS) $(printf_test_CFLAGS) $(CFLAGS) -c -o tests/printf_test-printf_unit_test.obj `if test -f 'tests/printf_unit_test.c'; then $(CYGPATH_W) 'tests/printf_unit_test.c'; else $(CYGPATH_W) '$(srcdir)/tests/printf_unit_test.c'; fi` - -tests/lib/printf_test-unit_test.o: tests/lib/unit_test.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(printf_test_CPPFLAGS) $(CPPFLAGS) $(printf_test_CFLAGS) $(CFLAGS) -MT tests/lib/printf_test-unit_test.o -MD -MP -MF tests/lib/$(DEPDIR)/printf_test-unit_test.Tpo -c -o tests/lib/printf_test-unit_test.o `test -f 'tests/lib/unit_test.c' || echo '$(srcdir)/'`tests/lib/unit_test.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) tests/lib/$(DEPDIR)/printf_test-unit_test.Tpo tests/lib/$(DEPDIR)/printf_test-unit_test.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='tests/lib/unit_test.c' object='tests/lib/printf_test-unit_test.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(printf_test_CPPFLAGS) $(CPPFLAGS) $(printf_test_CFLAGS) $(CFLAGS) -c -o tests/lib/printf_test-unit_test.o `test -f 'tests/lib/unit_test.c' || echo '$(srcdir)/'`tests/lib/unit_test.c - -tests/lib/printf_test-unit_test.obj: tests/lib/unit_test.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(printf_test_CPPFLAGS) $(CPPFLAGS) $(printf_test_CFLAGS) $(CFLAGS) -MT tests/lib/printf_test-unit_test.obj -MD -MP -MF tests/lib/$(DEPDIR)/printf_test-unit_test.Tpo -c -o tests/lib/printf_test-unit_test.obj `if test -f 'tests/lib/unit_test.c'; then $(CYGPATH_W) 'tests/lib/unit_test.c'; else $(CYGPATH_W) '$(srcdir)/tests/lib/unit_test.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) tests/lib/$(DEPDIR)/printf_test-unit_test.Tpo tests/lib/$(DEPDIR)/printf_test-unit_test.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='tests/lib/unit_test.c' object='tests/lib/printf_test-unit_test.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(printf_test_CPPFLAGS) $(CPPFLAGS) $(printf_test_CFLAGS) $(CFLAGS) -c -o tests/lib/printf_test-unit_test.obj `if test -f 'tests/lib/unit_test.c'; then $(CYGPATH_W) 'tests/lib/unit_test.c'; else $(CYGPATH_W) '$(srcdir)/tests/lib/unit_test.c'; fi` - -grub-core/kern/printf_test-list.o: grub-core/kern/list.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(printf_test_CPPFLAGS) $(CPPFLAGS) $(printf_test_CFLAGS) $(CFLAGS) -MT grub-core/kern/printf_test-list.o -MD -MP -MF grub-core/kern/$(DEPDIR)/printf_test-list.Tpo -c -o grub-core/kern/printf_test-list.o `test -f 'grub-core/kern/list.c' || echo '$(srcdir)/'`grub-core/kern/list.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/kern/$(DEPDIR)/printf_test-list.Tpo grub-core/kern/$(DEPDIR)/printf_test-list.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/kern/list.c' object='grub-core/kern/printf_test-list.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(printf_test_CPPFLAGS) $(CPPFLAGS) $(printf_test_CFLAGS) $(CFLAGS) -c -o grub-core/kern/printf_test-list.o `test -f 'grub-core/kern/list.c' || echo '$(srcdir)/'`grub-core/kern/list.c - -grub-core/kern/printf_test-list.obj: grub-core/kern/list.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(printf_test_CPPFLAGS) $(CPPFLAGS) $(printf_test_CFLAGS) $(CFLAGS) -MT grub-core/kern/printf_test-list.obj -MD -MP -MF grub-core/kern/$(DEPDIR)/printf_test-list.Tpo -c -o grub-core/kern/printf_test-list.obj `if test -f 'grub-core/kern/list.c'; then $(CYGPATH_W) 'grub-core/kern/list.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/kern/list.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/kern/$(DEPDIR)/printf_test-list.Tpo grub-core/kern/$(DEPDIR)/printf_test-list.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/kern/list.c' object='grub-core/kern/printf_test-list.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(printf_test_CPPFLAGS) $(CPPFLAGS) $(printf_test_CFLAGS) $(CFLAGS) -c -o grub-core/kern/printf_test-list.obj `if test -f 'grub-core/kern/list.c'; then $(CYGPATH_W) 'grub-core/kern/list.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/kern/list.c'; fi` - -grub-core/kern/printf_test-misc.o: grub-core/kern/misc.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(printf_test_CPPFLAGS) $(CPPFLAGS) $(printf_test_CFLAGS) $(CFLAGS) -MT grub-core/kern/printf_test-misc.o -MD -MP -MF grub-core/kern/$(DEPDIR)/printf_test-misc.Tpo -c -o grub-core/kern/printf_test-misc.o `test -f 'grub-core/kern/misc.c' || echo '$(srcdir)/'`grub-core/kern/misc.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/kern/$(DEPDIR)/printf_test-misc.Tpo grub-core/kern/$(DEPDIR)/printf_test-misc.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/kern/misc.c' object='grub-core/kern/printf_test-misc.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(printf_test_CPPFLAGS) $(CPPFLAGS) $(printf_test_CFLAGS) $(CFLAGS) -c -o grub-core/kern/printf_test-misc.o `test -f 'grub-core/kern/misc.c' || echo '$(srcdir)/'`grub-core/kern/misc.c - -grub-core/kern/printf_test-misc.obj: grub-core/kern/misc.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(printf_test_CPPFLAGS) $(CPPFLAGS) $(printf_test_CFLAGS) $(CFLAGS) -MT grub-core/kern/printf_test-misc.obj -MD -MP -MF grub-core/kern/$(DEPDIR)/printf_test-misc.Tpo -c -o grub-core/kern/printf_test-misc.obj `if test -f 'grub-core/kern/misc.c'; then $(CYGPATH_W) 'grub-core/kern/misc.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/kern/misc.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/kern/$(DEPDIR)/printf_test-misc.Tpo grub-core/kern/$(DEPDIR)/printf_test-misc.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/kern/misc.c' object='grub-core/kern/printf_test-misc.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(printf_test_CPPFLAGS) $(CPPFLAGS) $(printf_test_CFLAGS) $(CFLAGS) -c -o grub-core/kern/printf_test-misc.obj `if test -f 'grub-core/kern/misc.c'; then $(CYGPATH_W) 'grub-core/kern/misc.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/kern/misc.c'; fi` - -grub-core/tests/lib/printf_test-test.o: grub-core/tests/lib/test.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(printf_test_CPPFLAGS) $(CPPFLAGS) $(printf_test_CFLAGS) $(CFLAGS) -MT grub-core/tests/lib/printf_test-test.o -MD -MP -MF grub-core/tests/lib/$(DEPDIR)/printf_test-test.Tpo -c -o grub-core/tests/lib/printf_test-test.o `test -f 'grub-core/tests/lib/test.c' || echo '$(srcdir)/'`grub-core/tests/lib/test.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/tests/lib/$(DEPDIR)/printf_test-test.Tpo grub-core/tests/lib/$(DEPDIR)/printf_test-test.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/tests/lib/test.c' object='grub-core/tests/lib/printf_test-test.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(printf_test_CPPFLAGS) $(CPPFLAGS) $(printf_test_CFLAGS) $(CFLAGS) -c -o grub-core/tests/lib/printf_test-test.o `test -f 'grub-core/tests/lib/test.c' || echo '$(srcdir)/'`grub-core/tests/lib/test.c - -grub-core/tests/lib/printf_test-test.obj: grub-core/tests/lib/test.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(printf_test_CPPFLAGS) $(CPPFLAGS) $(printf_test_CFLAGS) $(CFLAGS) -MT grub-core/tests/lib/printf_test-test.obj -MD -MP -MF grub-core/tests/lib/$(DEPDIR)/printf_test-test.Tpo -c -o grub-core/tests/lib/printf_test-test.obj `if test -f 'grub-core/tests/lib/test.c'; then $(CYGPATH_W) 'grub-core/tests/lib/test.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/tests/lib/test.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/tests/lib/$(DEPDIR)/printf_test-test.Tpo grub-core/tests/lib/$(DEPDIR)/printf_test-test.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/tests/lib/test.c' object='grub-core/tests/lib/printf_test-test.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(printf_test_CPPFLAGS) $(CPPFLAGS) $(printf_test_CFLAGS) $(CFLAGS) -c -o grub-core/tests/lib/printf_test-test.obj `if test -f 'grub-core/tests/lib/test.c'; then $(CYGPATH_W) 'grub-core/tests/lib/test.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/tests/lib/test.c'; fi` - -tests/lib/priority_queue_unit_test-unit_test.o: tests/lib/unit_test.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(priority_queue_unit_test_CPPFLAGS) $(CPPFLAGS) $(priority_queue_unit_test_CFLAGS) $(CFLAGS) -MT tests/lib/priority_queue_unit_test-unit_test.o -MD -MP -MF tests/lib/$(DEPDIR)/priority_queue_unit_test-unit_test.Tpo -c -o tests/lib/priority_queue_unit_test-unit_test.o `test -f 'tests/lib/unit_test.c' || echo '$(srcdir)/'`tests/lib/unit_test.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) tests/lib/$(DEPDIR)/priority_queue_unit_test-unit_test.Tpo tests/lib/$(DEPDIR)/priority_queue_unit_test-unit_test.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='tests/lib/unit_test.c' object='tests/lib/priority_queue_unit_test-unit_test.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(priority_queue_unit_test_CPPFLAGS) $(CPPFLAGS) $(priority_queue_unit_test_CFLAGS) $(CFLAGS) -c -o tests/lib/priority_queue_unit_test-unit_test.o `test -f 'tests/lib/unit_test.c' || echo '$(srcdir)/'`tests/lib/unit_test.c - -tests/lib/priority_queue_unit_test-unit_test.obj: tests/lib/unit_test.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(priority_queue_unit_test_CPPFLAGS) $(CPPFLAGS) $(priority_queue_unit_test_CFLAGS) $(CFLAGS) -MT tests/lib/priority_queue_unit_test-unit_test.obj -MD -MP -MF tests/lib/$(DEPDIR)/priority_queue_unit_test-unit_test.Tpo -c -o tests/lib/priority_queue_unit_test-unit_test.obj `if test -f 'tests/lib/unit_test.c'; then $(CYGPATH_W) 'tests/lib/unit_test.c'; else $(CYGPATH_W) '$(srcdir)/tests/lib/unit_test.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) tests/lib/$(DEPDIR)/priority_queue_unit_test-unit_test.Tpo tests/lib/$(DEPDIR)/priority_queue_unit_test-unit_test.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='tests/lib/unit_test.c' object='tests/lib/priority_queue_unit_test-unit_test.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(priority_queue_unit_test_CPPFLAGS) $(CPPFLAGS) $(priority_queue_unit_test_CFLAGS) $(CFLAGS) -c -o tests/lib/priority_queue_unit_test-unit_test.obj `if test -f 'tests/lib/unit_test.c'; then $(CYGPATH_W) 'tests/lib/unit_test.c'; else $(CYGPATH_W) '$(srcdir)/tests/lib/unit_test.c'; fi` - -grub-core/kern/priority_queue_unit_test-list.o: grub-core/kern/list.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(priority_queue_unit_test_CPPFLAGS) $(CPPFLAGS) $(priority_queue_unit_test_CFLAGS) $(CFLAGS) -MT grub-core/kern/priority_queue_unit_test-list.o -MD -MP -MF grub-core/kern/$(DEPDIR)/priority_queue_unit_test-list.Tpo -c -o grub-core/kern/priority_queue_unit_test-list.o `test -f 'grub-core/kern/list.c' || echo '$(srcdir)/'`grub-core/kern/list.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/kern/$(DEPDIR)/priority_queue_unit_test-list.Tpo grub-core/kern/$(DEPDIR)/priority_queue_unit_test-list.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/kern/list.c' object='grub-core/kern/priority_queue_unit_test-list.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(priority_queue_unit_test_CPPFLAGS) $(CPPFLAGS) $(priority_queue_unit_test_CFLAGS) $(CFLAGS) -c -o grub-core/kern/priority_queue_unit_test-list.o `test -f 'grub-core/kern/list.c' || echo '$(srcdir)/'`grub-core/kern/list.c - -grub-core/kern/priority_queue_unit_test-list.obj: grub-core/kern/list.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(priority_queue_unit_test_CPPFLAGS) $(CPPFLAGS) $(priority_queue_unit_test_CFLAGS) $(CFLAGS) -MT grub-core/kern/priority_queue_unit_test-list.obj -MD -MP -MF grub-core/kern/$(DEPDIR)/priority_queue_unit_test-list.Tpo -c -o grub-core/kern/priority_queue_unit_test-list.obj `if test -f 'grub-core/kern/list.c'; then $(CYGPATH_W) 'grub-core/kern/list.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/kern/list.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/kern/$(DEPDIR)/priority_queue_unit_test-list.Tpo grub-core/kern/$(DEPDIR)/priority_queue_unit_test-list.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/kern/list.c' object='grub-core/kern/priority_queue_unit_test-list.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(priority_queue_unit_test_CPPFLAGS) $(CPPFLAGS) $(priority_queue_unit_test_CFLAGS) $(CFLAGS) -c -o grub-core/kern/priority_queue_unit_test-list.obj `if test -f 'grub-core/kern/list.c'; then $(CYGPATH_W) 'grub-core/kern/list.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/kern/list.c'; fi` - -grub-core/kern/priority_queue_unit_test-misc.o: grub-core/kern/misc.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(priority_queue_unit_test_CPPFLAGS) $(CPPFLAGS) $(priority_queue_unit_test_CFLAGS) $(CFLAGS) -MT grub-core/kern/priority_queue_unit_test-misc.o -MD -MP -MF grub-core/kern/$(DEPDIR)/priority_queue_unit_test-misc.Tpo -c -o grub-core/kern/priority_queue_unit_test-misc.o `test -f 'grub-core/kern/misc.c' || echo '$(srcdir)/'`grub-core/kern/misc.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/kern/$(DEPDIR)/priority_queue_unit_test-misc.Tpo grub-core/kern/$(DEPDIR)/priority_queue_unit_test-misc.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/kern/misc.c' object='grub-core/kern/priority_queue_unit_test-misc.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(priority_queue_unit_test_CPPFLAGS) $(CPPFLAGS) $(priority_queue_unit_test_CFLAGS) $(CFLAGS) -c -o grub-core/kern/priority_queue_unit_test-misc.o `test -f 'grub-core/kern/misc.c' || echo '$(srcdir)/'`grub-core/kern/misc.c - -grub-core/kern/priority_queue_unit_test-misc.obj: grub-core/kern/misc.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(priority_queue_unit_test_CPPFLAGS) $(CPPFLAGS) $(priority_queue_unit_test_CFLAGS) $(CFLAGS) -MT grub-core/kern/priority_queue_unit_test-misc.obj -MD -MP -MF grub-core/kern/$(DEPDIR)/priority_queue_unit_test-misc.Tpo -c -o grub-core/kern/priority_queue_unit_test-misc.obj `if test -f 'grub-core/kern/misc.c'; then $(CYGPATH_W) 'grub-core/kern/misc.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/kern/misc.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/kern/$(DEPDIR)/priority_queue_unit_test-misc.Tpo grub-core/kern/$(DEPDIR)/priority_queue_unit_test-misc.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/kern/misc.c' object='grub-core/kern/priority_queue_unit_test-misc.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(priority_queue_unit_test_CPPFLAGS) $(CPPFLAGS) $(priority_queue_unit_test_CFLAGS) $(CFLAGS) -c -o grub-core/kern/priority_queue_unit_test-misc.obj `if test -f 'grub-core/kern/misc.c'; then $(CYGPATH_W) 'grub-core/kern/misc.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/kern/misc.c'; fi` - -grub-core/tests/lib/priority_queue_unit_test-test.o: grub-core/tests/lib/test.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(priority_queue_unit_test_CPPFLAGS) $(CPPFLAGS) $(priority_queue_unit_test_CFLAGS) $(CFLAGS) -MT grub-core/tests/lib/priority_queue_unit_test-test.o -MD -MP -MF grub-core/tests/lib/$(DEPDIR)/priority_queue_unit_test-test.Tpo -c -o grub-core/tests/lib/priority_queue_unit_test-test.o `test -f 'grub-core/tests/lib/test.c' || echo '$(srcdir)/'`grub-core/tests/lib/test.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/tests/lib/$(DEPDIR)/priority_queue_unit_test-test.Tpo grub-core/tests/lib/$(DEPDIR)/priority_queue_unit_test-test.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/tests/lib/test.c' object='grub-core/tests/lib/priority_queue_unit_test-test.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(priority_queue_unit_test_CPPFLAGS) $(CPPFLAGS) $(priority_queue_unit_test_CFLAGS) $(CFLAGS) -c -o grub-core/tests/lib/priority_queue_unit_test-test.o `test -f 'grub-core/tests/lib/test.c' || echo '$(srcdir)/'`grub-core/tests/lib/test.c - -grub-core/tests/lib/priority_queue_unit_test-test.obj: grub-core/tests/lib/test.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(priority_queue_unit_test_CPPFLAGS) $(CPPFLAGS) $(priority_queue_unit_test_CFLAGS) $(CFLAGS) -MT grub-core/tests/lib/priority_queue_unit_test-test.obj -MD -MP -MF grub-core/tests/lib/$(DEPDIR)/priority_queue_unit_test-test.Tpo -c -o grub-core/tests/lib/priority_queue_unit_test-test.obj `if test -f 'grub-core/tests/lib/test.c'; then $(CYGPATH_W) 'grub-core/tests/lib/test.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/tests/lib/test.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/tests/lib/$(DEPDIR)/priority_queue_unit_test-test.Tpo grub-core/tests/lib/$(DEPDIR)/priority_queue_unit_test-test.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/tests/lib/test.c' object='grub-core/tests/lib/priority_queue_unit_test-test.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(priority_queue_unit_test_CPPFLAGS) $(CPPFLAGS) $(priority_queue_unit_test_CFLAGS) $(CFLAGS) -c -o grub-core/tests/lib/priority_queue_unit_test-test.obj `if test -f 'grub-core/tests/lib/test.c'; then $(CYGPATH_W) 'grub-core/tests/lib/test.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/tests/lib/test.c'; fi` - -grub-core/lib/priority_queue_unit_test-priority_queue.o: grub-core/lib/priority_queue.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(priority_queue_unit_test_CPPFLAGS) $(CPPFLAGS) $(priority_queue_unit_test_CFLAGS) $(CFLAGS) -MT grub-core/lib/priority_queue_unit_test-priority_queue.o -MD -MP -MF grub-core/lib/$(DEPDIR)/priority_queue_unit_test-priority_queue.Tpo -c -o grub-core/lib/priority_queue_unit_test-priority_queue.o `test -f 'grub-core/lib/priority_queue.c' || echo '$(srcdir)/'`grub-core/lib/priority_queue.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/lib/$(DEPDIR)/priority_queue_unit_test-priority_queue.Tpo grub-core/lib/$(DEPDIR)/priority_queue_unit_test-priority_queue.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/lib/priority_queue.c' object='grub-core/lib/priority_queue_unit_test-priority_queue.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(priority_queue_unit_test_CPPFLAGS) $(CPPFLAGS) $(priority_queue_unit_test_CFLAGS) $(CFLAGS) -c -o grub-core/lib/priority_queue_unit_test-priority_queue.o `test -f 'grub-core/lib/priority_queue.c' || echo '$(srcdir)/'`grub-core/lib/priority_queue.c - -grub-core/lib/priority_queue_unit_test-priority_queue.obj: grub-core/lib/priority_queue.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(priority_queue_unit_test_CPPFLAGS) $(CPPFLAGS) $(priority_queue_unit_test_CFLAGS) $(CFLAGS) -MT grub-core/lib/priority_queue_unit_test-priority_queue.obj -MD -MP -MF grub-core/lib/$(DEPDIR)/priority_queue_unit_test-priority_queue.Tpo -c -o grub-core/lib/priority_queue_unit_test-priority_queue.obj `if test -f 'grub-core/lib/priority_queue.c'; then $(CYGPATH_W) 'grub-core/lib/priority_queue.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/lib/priority_queue.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) grub-core/lib/$(DEPDIR)/priority_queue_unit_test-priority_queue.Tpo grub-core/lib/$(DEPDIR)/priority_queue_unit_test-priority_queue.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub-core/lib/priority_queue.c' object='grub-core/lib/priority_queue_unit_test-priority_queue.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(priority_queue_unit_test_CPPFLAGS) $(CPPFLAGS) $(priority_queue_unit_test_CFLAGS) $(CFLAGS) -c -o grub-core/lib/priority_queue_unit_test-priority_queue.obj `if test -f 'grub-core/lib/priority_queue.c'; then $(CYGPATH_W) 'grub-core/lib/priority_queue.c'; else $(CYGPATH_W) '$(srcdir)/grub-core/lib/priority_queue.c'; fi` - -.cc.o: -@am__fastdepCXX_TRUE@ $(AM_V_CXX)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.o$$||'`;\ -@am__fastdepCXX_TRUE@ $(CXXCOMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ $< &&\ -@am__fastdepCXX_TRUE@ $(am__mv) $$depbase.Tpo $$depbase.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXXCOMPILE) -c -o $@ $< - -.cc.obj: -@am__fastdepCXX_TRUE@ $(AM_V_CXX)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.obj$$||'`;\ -@am__fastdepCXX_TRUE@ $(CXXCOMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ `$(CYGPATH_W) '$<'` &&\ -@am__fastdepCXX_TRUE@ $(am__mv) $$depbase.Tpo $$depbase.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXXCOMPILE) -c -o $@ `$(CYGPATH_W) '$<'` - -tests/priority_queue_unit_test-priority_queue_unit_test.o: tests/priority_queue_unit_test.cc -@am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(priority_queue_unit_test_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT tests/priority_queue_unit_test-priority_queue_unit_test.o -MD -MP -MF tests/$(DEPDIR)/priority_queue_unit_test-priority_queue_unit_test.Tpo -c -o tests/priority_queue_unit_test-priority_queue_unit_test.o `test -f 'tests/priority_queue_unit_test.cc' || echo '$(srcdir)/'`tests/priority_queue_unit_test.cc -@am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) tests/$(DEPDIR)/priority_queue_unit_test-priority_queue_unit_test.Tpo tests/$(DEPDIR)/priority_queue_unit_test-priority_queue_unit_test.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='tests/priority_queue_unit_test.cc' object='tests/priority_queue_unit_test-priority_queue_unit_test.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(priority_queue_unit_test_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o tests/priority_queue_unit_test-priority_queue_unit_test.o `test -f 'tests/priority_queue_unit_test.cc' || echo '$(srcdir)/'`tests/priority_queue_unit_test.cc - -tests/priority_queue_unit_test-priority_queue_unit_test.obj: tests/priority_queue_unit_test.cc -@am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(priority_queue_unit_test_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT tests/priority_queue_unit_test-priority_queue_unit_test.obj -MD -MP -MF tests/$(DEPDIR)/priority_queue_unit_test-priority_queue_unit_test.Tpo -c -o tests/priority_queue_unit_test-priority_queue_unit_test.obj `if test -f 'tests/priority_queue_unit_test.cc'; then $(CYGPATH_W) 'tests/priority_queue_unit_test.cc'; else $(CYGPATH_W) '$(srcdir)/tests/priority_queue_unit_test.cc'; fi` -@am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) tests/$(DEPDIR)/priority_queue_unit_test-priority_queue_unit_test.Tpo tests/$(DEPDIR)/priority_queue_unit_test-priority_queue_unit_test.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='tests/priority_queue_unit_test.cc' object='tests/priority_queue_unit_test-priority_queue_unit_test.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(priority_queue_unit_test_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o tests/priority_queue_unit_test-priority_queue_unit_test.obj `if test -f 'tests/priority_queue_unit_test.cc'; then $(CYGPATH_W) 'tests/priority_queue_unit_test.cc'; else $(CYGPATH_W) '$(srcdir)/tests/priority_queue_unit_test.cc'; fi` -install-man1: $(man_MANS) - @$(NORMAL_INSTALL) - @list1=''; \ - list2='$(man_MANS)'; \ - test -n "$(man1dir)" \ - && test -n "`echo $$list1$$list2`" \ - || exit 0; \ - echo " $(MKDIR_P) '$(DESTDIR)$(man1dir)'"; \ - $(MKDIR_P) "$(DESTDIR)$(man1dir)" || exit 1; \ - { for i in $$list1; do echo "$$i"; done; \ - if test -n "$$list2"; then \ - for i in $$list2; do echo "$$i"; done \ - | sed -n '/\.1[a-z]*$$/p'; \ - fi; \ - } | while read p; do \ - if test -f $$p; then d=; else d="$(srcdir)/"; fi; \ - echo "$$d$$p"; echo "$$p"; \ - done | \ - sed -e 'n;s,.*/,,;p;h;s,.*\.,,;s,^[^1][0-9a-z]*$$,1,;x' \ - -e 's,\.[0-9a-z]*$$,,;$(transform);G;s,\n,.,' | \ - sed 'N;N;s,\n, ,g' | { \ - list=; while read file base inst; do \ - if test "$$base" = "$$inst"; then list="$$list $$file"; else \ - echo " $(INSTALL_DATA) '$$file' '$(DESTDIR)$(man1dir)/$$inst'"; \ - $(INSTALL_DATA) "$$file" "$(DESTDIR)$(man1dir)/$$inst" || exit $$?; \ - fi; \ - done; \ - for i in $$list; do echo "$$i"; done | $(am__base_list) | \ - while read files; do \ - test -z "$$files" || { \ - echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(man1dir)'"; \ - $(INSTALL_DATA) $$files "$(DESTDIR)$(man1dir)" || exit $$?; }; \ - done; } - -uninstall-man1: - @$(NORMAL_UNINSTALL) - @list=''; test -n "$(man1dir)" || exit 0; \ - files=`{ for i in $$list; do echo "$$i"; done; \ - l2='$(man_MANS)'; for i in $$l2; do echo "$$i"; done | \ - sed -n '/\.1[a-z]*$$/p'; \ - } | sed -e 's,.*/,,;h;s,.*\.,,;s,^[^1][0-9a-z]*$$,1,;x' \ - -e 's,\.[0-9a-z]*$$,,;$(transform);G;s,\n,.,'`; \ - dir='$(DESTDIR)$(man1dir)'; $(am__uninstall_files_from_dir) -install-man8: $(man_MANS) - @$(NORMAL_INSTALL) - @list1=''; \ - list2='$(man_MANS)'; \ - test -n "$(man8dir)" \ - && test -n "`echo $$list1$$list2`" \ - || exit 0; \ - echo " $(MKDIR_P) '$(DESTDIR)$(man8dir)'"; \ - $(MKDIR_P) "$(DESTDIR)$(man8dir)" || exit 1; \ - { for i in $$list1; do echo "$$i"; done; \ - if test -n "$$list2"; then \ - for i in $$list2; do echo "$$i"; done \ - | sed -n '/\.8[a-z]*$$/p'; \ - fi; \ - } | while read p; do \ - if test -f $$p; then d=; else d="$(srcdir)/"; fi; \ - echo "$$d$$p"; echo "$$p"; \ - done | \ - sed -e 'n;s,.*/,,;p;h;s,.*\.,,;s,^[^8][0-9a-z]*$$,8,;x' \ - -e 's,\.[0-9a-z]*$$,,;$(transform);G;s,\n,.,' | \ - sed 'N;N;s,\n, ,g' | { \ - list=; while read file base inst; do \ - if test "$$base" = "$$inst"; then list="$$list $$file"; else \ - echo " $(INSTALL_DATA) '$$file' '$(DESTDIR)$(man8dir)/$$inst'"; \ - $(INSTALL_DATA) "$$file" "$(DESTDIR)$(man8dir)/$$inst" || exit $$?; \ - fi; \ - done; \ - for i in $$list; do echo "$$i"; done | $(am__base_list) | \ - while read files; do \ - test -z "$$files" || { \ - echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(man8dir)'"; \ - $(INSTALL_DATA) $$files "$(DESTDIR)$(man8dir)" || exit $$?; }; \ - done; } - -uninstall-man8: - @$(NORMAL_UNINSTALL) - @list=''; test -n "$(man8dir)" || exit 0; \ - files=`{ for i in $$list; do echo "$$i"; done; \ - l2='$(man_MANS)'; for i in $$l2; do echo "$$i"; done | \ - sed -n '/\.8[a-z]*$$/p'; \ - } | sed -e 's,.*/,,;h;s,.*\.,,;s,^[^8][0-9a-z]*$$,8,;x' \ - -e 's,\.[0-9a-z]*$$,,;$(transform);G;s,\n,.,'`; \ - dir='$(DESTDIR)$(man8dir)'; $(am__uninstall_files_from_dir) -install-dist_grubconfDATA: $(dist_grubconf_DATA) - @$(NORMAL_INSTALL) - @list='$(dist_grubconf_DATA)'; test -n "$(grubconfdir)" || list=; \ - if test -n "$$list"; then \ - echo " $(MKDIR_P) '$(DESTDIR)$(grubconfdir)'"; \ - $(MKDIR_P) "$(DESTDIR)$(grubconfdir)" || exit 1; \ - fi; \ - for p in $$list; do \ - if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ - echo "$$d$$p"; \ - done | $(am__base_list) | \ - while read files; do \ - echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(grubconfdir)'"; \ - $(INSTALL_DATA) $$files "$(DESTDIR)$(grubconfdir)" || exit $$?; \ - done - -uninstall-dist_grubconfDATA: - @$(NORMAL_UNINSTALL) - @list='$(dist_grubconf_DATA)'; test -n "$(grubconfdir)" || list=; \ - files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ - dir='$(DESTDIR)$(grubconfdir)'; $(am__uninstall_files_from_dir) -install-pkgdataDATA: $(pkgdata_DATA) - @$(NORMAL_INSTALL) - @list='$(pkgdata_DATA)'; test -n "$(pkgdatadir)" || list=; \ - if test -n "$$list"; then \ - echo " $(MKDIR_P) '$(DESTDIR)$(pkgdatadir)'"; \ - $(MKDIR_P) "$(DESTDIR)$(pkgdatadir)" || exit 1; \ - fi; \ - for p in $$list; do \ - if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ - echo "$$d$$p"; \ - done | $(am__base_list) | \ - while read files; do \ - echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(pkgdatadir)'"; \ - $(INSTALL_DATA) $$files "$(DESTDIR)$(pkgdatadir)" || exit $$?; \ - done - -uninstall-pkgdataDATA: - @$(NORMAL_UNINSTALL) - @list='$(pkgdata_DATA)'; test -n "$(pkgdatadir)" || list=; \ - files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ - dir='$(DESTDIR)$(pkgdatadir)'; $(am__uninstall_files_from_dir) -install-platformDATA: $(platform_DATA) - @$(NORMAL_INSTALL) - @list='$(platform_DATA)'; test -n "$(platformdir)" || list=; \ - if test -n "$$list"; then \ - echo " $(MKDIR_P) '$(DESTDIR)$(platformdir)'"; \ - $(MKDIR_P) "$(DESTDIR)$(platformdir)" || exit 1; \ - fi; \ - for p in $$list; do \ - if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ - echo "$$d$$p"; \ - done | $(am__base_list) | \ - while read files; do \ - echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(platformdir)'"; \ - $(INSTALL_DATA) $$files "$(DESTDIR)$(platformdir)" || exit $$?; \ - done - -uninstall-platformDATA: - @$(NORMAL_UNINSTALL) - @list='$(platform_DATA)'; test -n "$(platformdir)" || list=; \ - files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ - dir='$(DESTDIR)$(platformdir)'; $(am__uninstall_files_from_dir) -install-starfieldDATA: $(starfield_DATA) - @$(NORMAL_INSTALL) - @list='$(starfield_DATA)'; test -n "$(starfielddir)" || list=; \ - if test -n "$$list"; then \ - echo " $(MKDIR_P) '$(DESTDIR)$(starfielddir)'"; \ - $(MKDIR_P) "$(DESTDIR)$(starfielddir)" || exit 1; \ - fi; \ - for p in $$list; do \ - if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ - echo "$$d$$p"; \ - done | $(am__base_list) | \ - while read files; do \ - echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(starfielddir)'"; \ - $(INSTALL_DATA) $$files "$(DESTDIR)$(starfielddir)" || exit $$?; \ - done - -uninstall-starfieldDATA: - @$(NORMAL_UNINSTALL) - @list='$(starfield_DATA)'; test -n "$(starfielddir)" || list=; \ - files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ - dir='$(DESTDIR)$(starfielddir)'; $(am__uninstall_files_from_dir) -install-nodist_platformHEADERS: $(nodist_platform_HEADERS) - @$(NORMAL_INSTALL) - @list='$(nodist_platform_HEADERS)'; test -n "$(platformdir)" || list=; \ - if test -n "$$list"; then \ - echo " $(MKDIR_P) '$(DESTDIR)$(platformdir)'"; \ - $(MKDIR_P) "$(DESTDIR)$(platformdir)" || exit 1; \ - fi; \ - for p in $$list; do \ - if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ - echo "$$d$$p"; \ - done | $(am__base_list) | \ - while read files; do \ - echo " $(INSTALL_HEADER) $$files '$(DESTDIR)$(platformdir)'"; \ - $(INSTALL_HEADER) $$files "$(DESTDIR)$(platformdir)" || exit $$?; \ - done - -uninstall-nodist_platformHEADERS: - @$(NORMAL_UNINSTALL) - @list='$(nodist_platform_HEADERS)'; test -n "$(platformdir)" || list=; \ - files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ - dir='$(DESTDIR)$(platformdir)'; $(am__uninstall_files_from_dir) - -# This directory's subdirectories are mostly independent; you can cd -# into them and run 'make' without going through this Makefile. -# To change the values of 'make' variables: instead of editing Makefiles, -# (1) if the variable is set in 'config.status', edit 'config.status' -# (which will cause the Makefiles to be regenerated when you run 'make'); -# (2) otherwise, pass the desired values on the 'make' command line. -$(am__recursive_targets): - @fail=; \ - if $(am__make_keepgoing); then \ - failcom='fail=yes'; \ - else \ - failcom='exit 1'; \ - fi; \ - dot_seen=no; \ - target=`echo $@ | sed s/-recursive//`; \ - case "$@" in \ - distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \ - *) list='$(SUBDIRS)' ;; \ - esac; \ - for subdir in $$list; do \ - echo "Making $$target in $$subdir"; \ - if test "$$subdir" = "."; then \ - dot_seen=yes; \ - local_target="$$target-am"; \ - else \ - local_target="$$target"; \ - fi; \ - ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ - || eval $$failcom; \ - done; \ - if test "$$dot_seen" = "no"; then \ - $(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \ - fi; test -z "$$fail" - -ID: $(am__tagged_files) - $(am__define_uniq_tagged_files); mkid -fID $$unique -tags: tags-recursive -TAGS: tags - -tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files) - set x; \ - here=`pwd`; \ - if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \ - include_option=--etags-include; \ - empty_fix=.; \ - else \ - include_option=--include; \ - empty_fix=; \ - fi; \ - list='$(SUBDIRS)'; for subdir in $$list; do \ - if test "$$subdir" = .; then :; else \ - test ! -f $$subdir/TAGS || \ - set "$$@" "$$include_option=$$here/$$subdir/TAGS"; \ - fi; \ - done; \ - $(am__define_uniq_tagged_files); \ - shift; \ - if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \ - test -n "$$unique" || unique=$$empty_fix; \ - if test $$# -gt 0; then \ - $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ - "$$@" $$unique; \ - else \ - $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ - $$unique; \ - fi; \ - fi -ctags: ctags-recursive - -CTAGS: ctags -ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files) - $(am__define_uniq_tagged_files); \ - test -z "$(CTAGS_ARGS)$$unique" \ - || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ - $$unique - -GTAGS: - here=`$(am__cd) $(top_builddir) && pwd` \ - && $(am__cd) $(top_srcdir) \ - && gtags -i $(GTAGS_ARGS) "$$here" -cscope: cscope.files - test ! -s cscope.files \ - || $(CSCOPE) -b -q $(AM_CSCOPEFLAGS) $(CSCOPEFLAGS) -i cscope.files $(CSCOPE_ARGS) -clean-cscope: - -rm -f cscope.files -cscope.files: clean-cscope cscopelist -cscopelist: cscopelist-recursive - -cscopelist-am: $(am__tagged_files) - list='$(am__tagged_files)'; \ - case "$(srcdir)" in \ - [\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \ - *) sdir=$(subdir)/$(srcdir) ;; \ - esac; \ - for i in $$list; do \ - if test -f "$$i"; then \ - echo "$(subdir)/$$i"; \ - else \ - echo "$$sdir/$$i"; \ - fi; \ - done >> $(top_builddir)/cscope.files - -distclean-tags: - -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags - -rm -f cscope.out cscope.in.out cscope.po.out cscope.files - -# Recover from deleted '.trs' file; this should ensure that -# "rm -f foo.log; make foo.trs" re-run 'foo.test', and re-create -# both 'foo.log' and 'foo.trs'. Break the recipe in two subshells -# to avoid problems with "make -n". -.log.trs: - rm -f $< $@ - $(MAKE) $(AM_MAKEFLAGS) $< - -# Leading 'am--fnord' is there to ensure the list of targets does not -# expand to empty, as could happen e.g. with make check TESTS=''. -am--fnord $(TEST_LOGS) $(TEST_LOGS:.log=.trs): $(am__force_recheck) -am--force-recheck: - @: - -$(TEST_SUITE_LOG): $(TEST_LOGS) - @$(am__set_TESTS_bases); \ - am__f_ok () { test -f "$$1" && test -r "$$1"; }; \ - redo_bases=`for i in $$bases; do \ - am__f_ok $$i.trs && am__f_ok $$i.log || echo $$i; \ - done`; \ - if test -n "$$redo_bases"; then \ - redo_logs=`for i in $$redo_bases; do echo $$i.log; done`; \ - redo_results=`for i in $$redo_bases; do echo $$i.trs; done`; \ - if $(am__make_dryrun); then :; else \ - rm -f $$redo_logs && rm -f $$redo_results || exit 1; \ - fi; \ - fi; \ - if test -n "$$am__remaking_logs"; then \ - echo "fatal: making $(TEST_SUITE_LOG): possible infinite" \ - "recursion detected" >&2; \ - elif test -n "$$redo_logs"; then \ - am__remaking_logs=yes $(MAKE) $(AM_MAKEFLAGS) $$redo_logs; \ - fi; \ - if $(am__make_dryrun); then :; else \ - st=0; \ - errmsg="fatal: making $(TEST_SUITE_LOG): failed to create"; \ - for i in $$redo_bases; do \ - test -f $$i.trs && test -r $$i.trs \ - || { echo "$$errmsg $$i.trs" >&2; st=1; }; \ - test -f $$i.log && test -r $$i.log \ - || { echo "$$errmsg $$i.log" >&2; st=1; }; \ - done; \ - test $$st -eq 0 || exit 1; \ - fi - @$(am__sh_e_setup); $(am__tty_colors); $(am__set_TESTS_bases); \ - ws='[ ]'; \ - results=`for b in $$bases; do echo $$b.trs; done`; \ - test -n "$$results" || results=/dev/null; \ - all=` grep "^$$ws*:test-result:" $$results | wc -l`; \ - pass=` grep "^$$ws*:test-result:$$ws*PASS" $$results | wc -l`; \ - fail=` grep "^$$ws*:test-result:$$ws*FAIL" $$results | wc -l`; \ - skip=` grep "^$$ws*:test-result:$$ws*SKIP" $$results | wc -l`; \ - xfail=`grep "^$$ws*:test-result:$$ws*XFAIL" $$results | wc -l`; \ - xpass=`grep "^$$ws*:test-result:$$ws*XPASS" $$results | wc -l`; \ - error=`grep "^$$ws*:test-result:$$ws*ERROR" $$results | wc -l`; \ - if test `expr $$fail + $$xpass + $$error` -eq 0; then \ - success=true; \ - else \ - success=false; \ - fi; \ - br='==================='; br=$$br$$br$$br$$br; \ - result_count () \ - { \ - if test x"$$1" = x"--maybe-color"; then \ - maybe_colorize=yes; \ - elif test x"$$1" = x"--no-color"; then \ - maybe_colorize=no; \ - else \ - echo "$@: invalid 'result_count' usage" >&2; exit 4; \ - fi; \ - shift; \ - desc=$$1 count=$$2; \ - if test $$maybe_colorize = yes && test $$count -gt 0; then \ - color_start=$$3 color_end=$$std; \ - else \ - color_start= color_end=; \ - fi; \ - echo "$${color_start}# $$desc $$count$${color_end}"; \ - }; \ - create_testsuite_report () \ - { \ - result_count $$1 "TOTAL:" $$all "$$brg"; \ - result_count $$1 "PASS: " $$pass "$$grn"; \ - result_count $$1 "SKIP: " $$skip "$$blu"; \ - result_count $$1 "XFAIL:" $$xfail "$$lgn"; \ - result_count $$1 "FAIL: " $$fail "$$red"; \ - result_count $$1 "XPASS:" $$xpass "$$red"; \ - result_count $$1 "ERROR:" $$error "$$mgn"; \ - }; \ - { \ - echo "$(PACKAGE_STRING): $(subdir)/$(TEST_SUITE_LOG)" | \ - $(am__rst_title); \ - create_testsuite_report --no-color; \ - echo; \ - echo ".. contents:: :depth: 2"; \ - echo; \ - for b in $$bases; do echo $$b; done \ - | $(am__create_global_log); \ - } >$(TEST_SUITE_LOG).tmp || exit 1; \ - mv $(TEST_SUITE_LOG).tmp $(TEST_SUITE_LOG); \ - if $$success; then \ - col="$$grn"; \ - else \ - col="$$red"; \ - test x"$$VERBOSE" = x || cat $(TEST_SUITE_LOG); \ - fi; \ - echo "$${col}$$br$${std}"; \ - echo "$${col}Testsuite summary for $(PACKAGE_STRING)$${std}"; \ - echo "$${col}$$br$${std}"; \ - create_testsuite_report --maybe-color; \ - echo "$$col$$br$$std"; \ - if $$success; then :; else \ - echo "$${col}See $(subdir)/$(TEST_SUITE_LOG)$${std}"; \ - if test -n "$(PACKAGE_BUGREPORT)"; then \ - echo "$${col}Please report to $(PACKAGE_BUGREPORT)$${std}"; \ - fi; \ - echo "$$col$$br$$std"; \ - fi; \ - $$success || exit 1 - -check-TESTS: - @list='$(RECHECK_LOGS)'; test -z "$$list" || rm -f $$list - @list='$(RECHECK_LOGS:.log=.trs)'; test -z "$$list" || rm -f $$list - @test -z "$(TEST_SUITE_LOG)" || rm -f $(TEST_SUITE_LOG) - @set +e; $(am__set_TESTS_bases); \ - log_list=`for i in $$bases; do echo $$i.log; done`; \ - trs_list=`for i in $$bases; do echo $$i.trs; done`; \ - log_list=`echo $$log_list`; trs_list=`echo $$trs_list`; \ - $(MAKE) $(AM_MAKEFLAGS) $(TEST_SUITE_LOG) TEST_LOGS="$$log_list"; \ - exit $$?; -recheck: all $(check_PROGRAMS) $(check_SCRIPTS) - @test -z "$(TEST_SUITE_LOG)" || rm -f $(TEST_SUITE_LOG) - @set +e; $(am__set_TESTS_bases); \ - bases=`for i in $$bases; do echo $$i; done \ - | $(am__list_recheck_tests)` || exit 1; \ - log_list=`for i in $$bases; do echo $$i.log; done`; \ - log_list=`echo $$log_list`; \ - $(MAKE) $(AM_MAKEFLAGS) $(TEST_SUITE_LOG) \ - am__force_recheck=am--force-recheck \ - TEST_LOGS="$$log_list"; \ - exit $$? -example_unit_test.log: example_unit_test$(EXEEXT) - @p='example_unit_test$(EXEEXT)'; \ - b='example_unit_test'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -printf_test.log: printf_test$(EXEEXT) - @p='printf_test$(EXEEXT)'; \ - b='printf_test'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -date_test.log: date_test$(EXEEXT) - @p='date_test$(EXEEXT)'; \ - b='date_test'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -priority_queue_unit_test.log: priority_queue_unit_test$(EXEEXT) - @p='priority_queue_unit_test$(EXEEXT)'; \ - b='priority_queue_unit_test'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -cmp_test.log: cmp_test$(EXEEXT) - @p='cmp_test$(EXEEXT)'; \ - b='cmp_test'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -ext234_test.log: ext234_test - @p='ext234_test'; \ - b='ext234_test'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -squashfs_test.log: squashfs_test - @p='squashfs_test'; \ - b='squashfs_test'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -iso9660_test.log: iso9660_test - @p='iso9660_test'; \ - b='iso9660_test'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -hfsplus_test.log: hfsplus_test - @p='hfsplus_test'; \ - b='hfsplus_test'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -ntfs_test.log: ntfs_test - @p='ntfs_test'; \ - b='ntfs_test'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -reiserfs_test.log: reiserfs_test - @p='reiserfs_test'; \ - b='reiserfs_test'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -fat_test.log: fat_test - @p='fat_test'; \ - b='fat_test'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -minixfs_test.log: minixfs_test - @p='minixfs_test'; \ - b='minixfs_test'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -xfs_test.log: xfs_test - @p='xfs_test'; \ - b='xfs_test'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -f2fs_test.log: f2fs_test - @p='f2fs_test'; \ - b='f2fs_test'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -nilfs2_test.log: nilfs2_test - @p='nilfs2_test'; \ - b='nilfs2_test'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -romfs_test.log: romfs_test - @p='romfs_test'; \ - b='romfs_test'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -exfat_test.log: exfat_test - @p='exfat_test'; \ - b='exfat_test'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -tar_test.log: tar_test - @p='tar_test'; \ - b='tar_test'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -udf_test.log: udf_test - @p='udf_test'; \ - b='udf_test'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -hfs_test.log: hfs_test - @p='hfs_test'; \ - b='hfs_test'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -jfs_test.log: jfs_test - @p='jfs_test'; \ - b='jfs_test'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -btrfs_test.log: btrfs_test - @p='btrfs_test'; \ - b='btrfs_test'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -zfs_test.log: zfs_test - @p='zfs_test'; \ - b='zfs_test'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -cpio_test.log: cpio_test - @p='cpio_test'; \ - b='cpio_test'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -example_scripted_test.log: example_scripted_test - @p='example_scripted_test'; \ - b='example_scripted_test'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -gettext_strings_test.log: gettext_strings_test - @p='gettext_strings_test'; \ - b='gettext_strings_test'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -pata_test.log: pata_test - @p='pata_test'; \ - b='pata_test'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -ahci_test.log: ahci_test - @p='ahci_test'; \ - b='ahci_test'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -uhci_test.log: uhci_test - @p='uhci_test'; \ - b='uhci_test'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -ohci_test.log: ohci_test - @p='ohci_test'; \ - b='ohci_test'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -ehci_test.log: ehci_test - @p='ehci_test'; \ - b='ehci_test'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -example_grub_script_test.log: example_grub_script_test - @p='example_grub_script_test'; \ - b='example_grub_script_test'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -grub_script_eval.log: grub_script_eval - @p='grub_script_eval'; \ - b='grub_script_eval'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -grub_script_test.log: grub_script_test - @p='grub_script_test'; \ - b='grub_script_test'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -grub_script_echo1.log: grub_script_echo1 - @p='grub_script_echo1'; \ - b='grub_script_echo1'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -grub_script_leading_whitespace.log: grub_script_leading_whitespace - @p='grub_script_leading_whitespace'; \ - b='grub_script_leading_whitespace'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -grub_script_echo_keywords.log: grub_script_echo_keywords - @p='grub_script_echo_keywords'; \ - b='grub_script_echo_keywords'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -grub_script_vars1.log: grub_script_vars1 - @p='grub_script_vars1'; \ - b='grub_script_vars1'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -grub_script_for1.log: grub_script_for1 - @p='grub_script_for1'; \ - b='grub_script_for1'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -grub_script_while1.log: grub_script_while1 - @p='grub_script_while1'; \ - b='grub_script_while1'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -grub_script_if.log: grub_script_if - @p='grub_script_if'; \ - b='grub_script_if'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -grub_script_blanklines.log: grub_script_blanklines - @p='grub_script_blanklines'; \ - b='grub_script_blanklines'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -grub_script_final_semicolon.log: grub_script_final_semicolon - @p='grub_script_final_semicolon'; \ - b='grub_script_final_semicolon'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -grub_script_dollar.log: grub_script_dollar - @p='grub_script_dollar'; \ - b='grub_script_dollar'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -grub_script_comments.log: grub_script_comments - @p='grub_script_comments'; \ - b='grub_script_comments'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -grub_script_functions.log: grub_script_functions - @p='grub_script_functions'; \ - b='grub_script_functions'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -grub_script_break.log: grub_script_break - @p='grub_script_break'; \ - b='grub_script_break'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -grub_script_continue.log: grub_script_continue - @p='grub_script_continue'; \ - b='grub_script_continue'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -grub_script_shift.log: grub_script_shift - @p='grub_script_shift'; \ - b='grub_script_shift'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -grub_script_blockarg.log: grub_script_blockarg - @p='grub_script_blockarg'; \ - b='grub_script_blockarg'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -grub_script_setparams.log: grub_script_setparams - @p='grub_script_setparams'; \ - b='grub_script_setparams'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -grub_script_return.log: grub_script_return - @p='grub_script_return'; \ - b='grub_script_return'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -grub_cmd_regexp.log: grub_cmd_regexp - @p='grub_cmd_regexp'; \ - b='grub_cmd_regexp'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -grub_cmd_date.log: grub_cmd_date - @p='grub_cmd_date'; \ - b='grub_cmd_date'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -grub_cmd_set_date.log: grub_cmd_set_date - @p='grub_cmd_set_date'; \ - b='grub_cmd_set_date'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -grub_cmd_sleep.log: grub_cmd_sleep - @p='grub_cmd_sleep'; \ - b='grub_cmd_sleep'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -grub_script_expansion.log: grub_script_expansion - @p='grub_script_expansion'; \ - b='grub_script_expansion'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -grub_script_not.log: grub_script_not - @p='grub_script_not'; \ - b='grub_script_not'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -grub_script_no_commands.log: grub_script_no_commands - @p='grub_script_no_commands'; \ - b='grub_script_no_commands'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -partmap_test.log: partmap_test - @p='partmap_test'; \ - b='partmap_test'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -hddboot_test.log: hddboot_test - @p='hddboot_test'; \ - b='hddboot_test'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -fddboot_test.log: fddboot_test - @p='fddboot_test'; \ - b='fddboot_test'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -cdboot_test.log: cdboot_test - @p='cdboot_test'; \ - b='cdboot_test'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -netboot_test.log: netboot_test - @p='netboot_test'; \ - b='netboot_test'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -pseries_test.log: pseries_test - @p='pseries_test'; \ - b='pseries_test'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -core_compress_test.log: core_compress_test - @p='core_compress_test'; \ - b='core_compress_test'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -xzcompress_test.log: xzcompress_test - @p='xzcompress_test'; \ - b='xzcompress_test'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -gzcompress_test.log: gzcompress_test - @p='gzcompress_test'; \ - b='gzcompress_test'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -lzocompress_test.log: lzocompress_test - @p='lzocompress_test'; \ - b='lzocompress_test'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -grub_cmd_echo.log: grub_cmd_echo - @p='grub_cmd_echo'; \ - b='grub_cmd_echo'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -help_test.log: help_test - @p='help_test'; \ - b='help_test'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -grub_script_gettext.log: grub_script_gettext - @p='grub_script_gettext'; \ - b='grub_script_gettext'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -grub_script_escape_comma.log: grub_script_escape_comma - @p='grub_script_escape_comma'; \ - b='grub_script_escape_comma'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -grub_script_strcmp.log: grub_script_strcmp - @p='grub_script_strcmp'; \ - b='grub_script_strcmp'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -test_sha512sum.log: test_sha512sum - @p='test_sha512sum'; \ - b='test_sha512sum'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -test_unset.log: test_unset - @p='test_unset'; \ - b='test_unset'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -grub_func_test.log: grub_func_test - @p='grub_func_test'; \ - b='grub_func_test'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -grub_cmd_tr.log: grub_cmd_tr - @p='grub_cmd_tr'; \ - b='grub_cmd_tr'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -file_filter_test.log: file_filter_test - @p='file_filter_test'; \ - b='file_filter_test'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -grub_cmd_test.log: grub_cmd_test - @p='grub_cmd_test'; \ - b='grub_cmd_test'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -syslinux_test.log: syslinux_test - @p='syslinux_test'; \ - b='syslinux_test'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -.test.log: - @p='$<'; \ - $(am__set_b); \ - $(am__check_pre) $(TEST_LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_TEST_LOG_DRIVER_FLAGS) $(TEST_LOG_DRIVER_FLAGS) -- $(TEST_LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -@am__EXEEXT_TRUE@.test$(EXEEXT).log: -@am__EXEEXT_TRUE@ @p='$<'; \ -@am__EXEEXT_TRUE@ $(am__set_b); \ -@am__EXEEXT_TRUE@ $(am__check_pre) $(TEST_LOG_DRIVER) --test-name "$$f" \ -@am__EXEEXT_TRUE@ --log-file $$b.log --trs-file $$b.trs \ -@am__EXEEXT_TRUE@ $(am__common_driver_flags) $(AM_TEST_LOG_DRIVER_FLAGS) $(TEST_LOG_DRIVER_FLAGS) -- $(TEST_LOG_COMPILE) \ -@am__EXEEXT_TRUE@ "$$tst" $(AM_TESTS_FD_REDIRECT) - -distdir: $(DISTFILES) - $(am__remove_distdir) - test -d "$(distdir)" || mkdir "$(distdir)" - @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ - topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ - list='$(DISTFILES)'; \ - dist_files=`for file in $$list; do echo $$file; done | \ - sed -e "s|^$$srcdirstrip/||;t" \ - -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ - case $$dist_files in \ - */*) $(MKDIR_P) `echo "$$dist_files" | \ - sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ - sort -u` ;; \ - esac; \ - for file in $$dist_files; do \ - if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ - if test -d $$d/$$file; then \ - dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ - if test -d "$(distdir)/$$file"; then \ - find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ - fi; \ - if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ - cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ - find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ - fi; \ - cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ - else \ - test -f "$(distdir)/$$file" \ - || cp -p $$d/$$file "$(distdir)/$$file" \ - || exit 1; \ - fi; \ - done - @list='$(DIST_SUBDIRS)'; for subdir in $$list; do \ - if test "$$subdir" = .; then :; else \ - $(am__make_dryrun) \ - || test -d "$(distdir)/$$subdir" \ - || $(MKDIR_P) "$(distdir)/$$subdir" \ - || exit 1; \ - dir1=$$subdir; dir2="$(distdir)/$$subdir"; \ - $(am__relativize); \ - new_distdir=$$reldir; \ - dir1=$$subdir; dir2="$(top_distdir)"; \ - $(am__relativize); \ - new_top_distdir=$$reldir; \ - echo " (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir="$$new_top_distdir" distdir="$$new_distdir" \\"; \ - echo " am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=: distdir)"; \ - ($(am__cd) $$subdir && \ - $(MAKE) $(AM_MAKEFLAGS) \ - top_distdir="$$new_top_distdir" \ - distdir="$$new_distdir" \ - am__remove_distdir=: \ - am__skip_length_check=: \ - am__skip_mode_fix=: \ - distdir) \ - || exit 1; \ - fi; \ - done - -test -n "$(am__skip_mode_fix)" \ - || find "$(distdir)" -type d ! -perm -755 \ - -exec chmod u+rwx,go+rx {} \; -o \ - ! -type d ! -perm -444 -links 1 -exec chmod a+r {} \; -o \ - ! -type d ! -perm -400 -exec chmod a+r {} \; -o \ - ! -type d ! -perm -444 -exec $(install_sh) -c -m a+r {} {} \; \ - || chmod -R a+r "$(distdir)" -dist-gzip: distdir - tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz - $(am__post_remove_distdir) - -dist-bzip2: distdir - tardir=$(distdir) && $(am__tar) | BZIP2=$${BZIP2--9} bzip2 -c >$(distdir).tar.bz2 - $(am__post_remove_distdir) - -dist-lzip: distdir - tardir=$(distdir) && $(am__tar) | lzip -c $${LZIP_OPT--9} >$(distdir).tar.lz - $(am__post_remove_distdir) - -dist-xz: distdir - tardir=$(distdir) && $(am__tar) | XZ_OPT=$${XZ_OPT--e} xz -c >$(distdir).tar.xz - $(am__post_remove_distdir) - -dist-tarZ: distdir - @echo WARNING: "Support for distribution archives compressed with" \ - "legacy program 'compress' is deprecated." >&2 - @echo WARNING: "It will be removed altogether in Automake 2.0" >&2 - tardir=$(distdir) && $(am__tar) | compress -c >$(distdir).tar.Z - $(am__post_remove_distdir) - -dist-shar: distdir - @echo WARNING: "Support for shar distribution archives is" \ - "deprecated." >&2 - @echo WARNING: "It will be removed altogether in Automake 2.0" >&2 - shar $(distdir) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).shar.gz - $(am__post_remove_distdir) - -dist-zip: distdir - -rm -f $(distdir).zip - zip -rq $(distdir).zip $(distdir) - $(am__post_remove_distdir) - -dist dist-all: - $(MAKE) $(AM_MAKEFLAGS) $(DIST_TARGETS) am__post_remove_distdir='@:' - $(am__post_remove_distdir) - -# This target untars the dist file and tries a VPATH configuration. Then -# it guarantees that the distribution is self-contained by making another -# tarfile. -distcheck: dist - case '$(DIST_ARCHIVES)' in \ - *.tar.gz*) \ - GZIP=$(GZIP_ENV) gzip -dc $(distdir).tar.gz | $(am__untar) ;;\ - *.tar.bz2*) \ - bzip2 -dc $(distdir).tar.bz2 | $(am__untar) ;;\ - *.tar.lz*) \ - lzip -dc $(distdir).tar.lz | $(am__untar) ;;\ - *.tar.xz*) \ - xz -dc $(distdir).tar.xz | $(am__untar) ;;\ - *.tar.Z*) \ - uncompress -c $(distdir).tar.Z | $(am__untar) ;;\ - *.shar.gz*) \ - GZIP=$(GZIP_ENV) gzip -dc $(distdir).shar.gz | unshar ;;\ - *.zip*) \ - unzip $(distdir).zip ;;\ - esac - chmod -R a-w $(distdir) - chmod u+w $(distdir) - mkdir $(distdir)/_build $(distdir)/_build/sub $(distdir)/_inst - chmod a-w $(distdir) - test -d $(distdir)/_build || exit 0; \ - dc_install_base=`$(am__cd) $(distdir)/_inst && pwd | sed -e 's,^[^:\\/]:[\\/],/,'` \ - && dc_destdir="$${TMPDIR-/tmp}/am-dc-$$$$/" \ - && am__cwd=`pwd` \ - && $(am__cd) $(distdir)/_build/sub \ - && ../../configure \ - $(AM_DISTCHECK_CONFIGURE_FLAGS) \ - $(DISTCHECK_CONFIGURE_FLAGS) \ - --srcdir=../.. --prefix="$$dc_install_base" \ - && $(MAKE) $(AM_MAKEFLAGS) \ - && $(MAKE) $(AM_MAKEFLAGS) dvi \ - && $(MAKE) $(AM_MAKEFLAGS) check \ - && $(MAKE) $(AM_MAKEFLAGS) install \ - && $(MAKE) $(AM_MAKEFLAGS) installcheck \ - && $(MAKE) $(AM_MAKEFLAGS) uninstall \ - && $(MAKE) $(AM_MAKEFLAGS) distuninstallcheck_dir="$$dc_install_base" \ - distuninstallcheck \ - && chmod -R a-w "$$dc_install_base" \ - && ({ \ - (cd ../.. && umask 077 && mkdir "$$dc_destdir") \ - && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" install \ - && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" uninstall \ - && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" \ - distuninstallcheck_dir="$$dc_destdir" distuninstallcheck; \ - } || { rm -rf "$$dc_destdir"; exit 1; }) \ - && rm -rf "$$dc_destdir" \ - && $(MAKE) $(AM_MAKEFLAGS) dist \ - && rm -rf $(DIST_ARCHIVES) \ - && $(MAKE) $(AM_MAKEFLAGS) distcleancheck \ - && cd "$$am__cwd" \ - || exit 1 - $(am__post_remove_distdir) - @(echo "$(distdir) archives ready for distribution: "; \ - list='$(DIST_ARCHIVES)'; for i in $$list; do echo $$i; done) | \ - sed -e 1h -e 1s/./=/g -e 1p -e 1x -e '$$p' -e '$$x' -distuninstallcheck: - @test -n '$(distuninstallcheck_dir)' || { \ - echo 'ERROR: trying to run $@ with an empty' \ - '$$(distuninstallcheck_dir)' >&2; \ - exit 1; \ - }; \ - $(am__cd) '$(distuninstallcheck_dir)' || { \ - echo 'ERROR: cannot chdir into $(distuninstallcheck_dir)' >&2; \ - exit 1; \ - }; \ - test `$(am__distuninstallcheck_listfiles) | wc -l` -eq 0 \ - || { echo "ERROR: files left after uninstall:" ; \ - if test -n "$(DESTDIR)"; then \ - echo " (check DESTDIR support)"; \ - fi ; \ - $(distuninstallcheck_listfiles) ; \ - exit 1; } >&2 -distcleancheck: distclean - @if test '$(srcdir)' = . ; then \ - echo "ERROR: distcleancheck can only run from a VPATH build" ; \ - exit 1 ; \ - fi - @test `$(distcleancheck_listfiles) | wc -l` -eq 0 \ - || { echo "ERROR: files left in build directory after distclean:" ; \ - $(distcleancheck_listfiles) ; \ - exit 1; } >&2 -check-am: all-am - $(MAKE) $(AM_MAKEFLAGS) $(check_PROGRAMS) $(check_SCRIPTS) - $(MAKE) $(AM_MAKEFLAGS) check-TESTS -check: $(BUILT_SOURCES) - $(MAKE) $(AM_MAKEFLAGS) check-recursive -all-am: Makefile $(LIBRARIES) $(PROGRAMS) $(SCRIPTS) $(MANS) $(DATA) \ - $(HEADERS) config-util.h -installdirs: installdirs-recursive -installdirs-am: - for dir in "$(DESTDIR)$(bindir)" "$(DESTDIR)$(platformdir)" "$(DESTDIR)$(sbindir)" "$(DESTDIR)$(bindir)" "$(DESTDIR)$(grubconfdir)" "$(DESTDIR)$(platformdir)" "$(DESTDIR)$(sbindir)" "$(DESTDIR)$(man1dir)" "$(DESTDIR)$(man8dir)" "$(DESTDIR)$(grubconfdir)" "$(DESTDIR)$(pkgdatadir)" "$(DESTDIR)$(platformdir)" "$(DESTDIR)$(starfielddir)" "$(DESTDIR)$(platformdir)"; do \ - test -z "$$dir" || $(MKDIR_P) "$$dir"; \ - done -install: $(BUILT_SOURCES) - $(MAKE) $(AM_MAKEFLAGS) install-recursive -install-exec: install-exec-recursive -install-data: install-data-recursive -uninstall: uninstall-recursive - -install-am: all-am - @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am - -installcheck: installcheck-recursive -install-strip: - if test -z '$(STRIP)'; then \ - $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ - install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ - install; \ - else \ - $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ - install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ - "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \ - fi -mostlyclean-generic: - -test -z "$(TEST_LOGS)" || rm -f $(TEST_LOGS) - -test -z "$(TEST_LOGS:.log=.trs)" || rm -f $(TEST_LOGS:.log=.trs) - -test -z "$(TEST_SUITE_LOG)" || rm -f $(TEST_SUITE_LOG) - -clean-generic: - -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES) - -distclean-generic: - -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) - -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) - -rm -f grub-core/$(DEPDIR)/$(am__dirstamp) - -rm -f grub-core/$(am__dirstamp) - -rm -f grub-core/commands/$(DEPDIR)/$(am__dirstamp) - -rm -f grub-core/commands/$(am__dirstamp) - -rm -f grub-core/disk/$(DEPDIR)/$(am__dirstamp) - -rm -f grub-core/disk/$(am__dirstamp) - -rm -f grub-core/font/$(DEPDIR)/$(am__dirstamp) - -rm -f grub-core/font/$(am__dirstamp) - -rm -f grub-core/fs/$(DEPDIR)/$(am__dirstamp) - -rm -f grub-core/fs/$(am__dirstamp) - -rm -f grub-core/fs/zfs/$(DEPDIR)/$(am__dirstamp) - -rm -f grub-core/fs/zfs/$(am__dirstamp) - -rm -f grub-core/gfxmenu/$(DEPDIR)/$(am__dirstamp) - -rm -f grub-core/gfxmenu/$(am__dirstamp) - -rm -f grub-core/io/$(DEPDIR)/$(am__dirstamp) - -rm -f grub-core/io/$(am__dirstamp) - -rm -f grub-core/kern/$(DEPDIR)/$(am__dirstamp) - -rm -f grub-core/kern/$(am__dirstamp) - -rm -f grub-core/kern/arm/$(DEPDIR)/$(am__dirstamp) - -rm -f grub-core/kern/arm/$(am__dirstamp) - -rm -f grub-core/kern/arm64/$(DEPDIR)/$(am__dirstamp) - -rm -f grub-core/kern/arm64/$(am__dirstamp) - -rm -f grub-core/kern/emu/$(DEPDIR)/$(am__dirstamp) - -rm -f grub-core/kern/emu/$(am__dirstamp) - -rm -f grub-core/kern/ia64/$(DEPDIR)/$(am__dirstamp) - -rm -f grub-core/kern/ia64/$(am__dirstamp) - -rm -f grub-core/lib/$(DEPDIR)/$(am__dirstamp) - -rm -f grub-core/lib/$(am__dirstamp) - -rm -f grub-core/lib/i386/pc/$(DEPDIR)/$(am__dirstamp) - -rm -f grub-core/lib/i386/pc/$(am__dirstamp) - -rm -f grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR)/$(am__dirstamp) - -rm -f grub-core/lib/libgcrypt-grub/cipher/$(am__dirstamp) - -rm -f grub-core/lib/minilzo/$(DEPDIR)/$(am__dirstamp) - -rm -f grub-core/lib/minilzo/$(am__dirstamp) - -rm -f grub-core/lib/xzembed/$(DEPDIR)/$(am__dirstamp) - -rm -f grub-core/lib/xzembed/$(am__dirstamp) - -rm -f grub-core/lib/zstd/$(DEPDIR)/$(am__dirstamp) - -rm -f grub-core/lib/zstd/$(am__dirstamp) - -rm -f grub-core/loader/$(DEPDIR)/$(am__dirstamp) - -rm -f grub-core/loader/$(am__dirstamp) - -rm -f grub-core/loader/i386/$(DEPDIR)/$(am__dirstamp) - -rm -f grub-core/loader/i386/$(am__dirstamp) - -rm -f grub-core/normal/$(DEPDIR)/$(am__dirstamp) - -rm -f grub-core/normal/$(am__dirstamp) - -rm -f grub-core/osdep/$(DEPDIR)/$(am__dirstamp) - -rm -f grub-core/osdep/$(am__dirstamp) - -rm -f grub-core/osdep/devmapper/$(DEPDIR)/$(am__dirstamp) - -rm -f grub-core/osdep/devmapper/$(am__dirstamp) - -rm -f grub-core/osdep/unix/$(DEPDIR)/$(am__dirstamp) - -rm -f grub-core/osdep/unix/$(am__dirstamp) - -rm -f grub-core/partmap/$(DEPDIR)/$(am__dirstamp) - -rm -f grub-core/partmap/$(am__dirstamp) - -rm -f grub-core/script/$(DEPDIR)/$(am__dirstamp) - -rm -f grub-core/script/$(am__dirstamp) - -rm -f grub-core/tests/lib/$(DEPDIR)/$(am__dirstamp) - -rm -f grub-core/tests/lib/$(am__dirstamp) - -rm -f grub-core/video/$(DEPDIR)/$(am__dirstamp) - -rm -f grub-core/video/$(am__dirstamp) - -rm -f grub-core/video/fb/$(DEPDIR)/$(am__dirstamp) - -rm -f grub-core/video/fb/$(am__dirstamp) - -rm -f tests/$(DEPDIR)/$(am__dirstamp) - -rm -f tests/$(am__dirstamp) - -rm -f tests/lib/$(DEPDIR)/$(am__dirstamp) - -rm -f tests/lib/$(am__dirstamp) - -rm -f util/$(DEPDIR)/$(am__dirstamp) - -rm -f util/$(am__dirstamp) - -rm -f util/ieee1275/$(DEPDIR)/$(am__dirstamp) - -rm -f util/ieee1275/$(am__dirstamp) - -maintainer-clean-generic: - @echo "This command is intended for maintainers to use" - @echo "it deletes files that may require special tools to rebuild." - -test -z "$(BUILT_SOURCES)" || rm -f $(BUILT_SOURCES) -clean: clean-recursive - -clean-am: clean-binPROGRAMS clean-checkPROGRAMS clean-generic \ - clean-noinstLIBRARIES clean-noinstPROGRAMS \ - clean-platformPROGRAMS clean-sbinPROGRAMS mostlyclean-am - -distclean: distclean-recursive - -rm -f $(am__CONFIG_DISTCLEAN_FILES) - -rm -rf ./$(DEPDIR) grub-core/$(DEPDIR) grub-core/commands/$(DEPDIR) grub-core/disk/$(DEPDIR) grub-core/font/$(DEPDIR) grub-core/fs/$(DEPDIR) grub-core/fs/zfs/$(DEPDIR) grub-core/gfxmenu/$(DEPDIR) grub-core/io/$(DEPDIR) grub-core/kern/$(DEPDIR) grub-core/kern/arm/$(DEPDIR) grub-core/kern/arm64/$(DEPDIR) grub-core/kern/emu/$(DEPDIR) grub-core/kern/ia64/$(DEPDIR) grub-core/lib/$(DEPDIR) grub-core/lib/i386/pc/$(DEPDIR) grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR) grub-core/lib/minilzo/$(DEPDIR) grub-core/lib/xzembed/$(DEPDIR) grub-core/lib/zstd/$(DEPDIR) grub-core/loader/$(DEPDIR) grub-core/loader/i386/$(DEPDIR) grub-core/normal/$(DEPDIR) grub-core/osdep/$(DEPDIR) grub-core/osdep/devmapper/$(DEPDIR) grub-core/osdep/unix/$(DEPDIR) grub-core/partmap/$(DEPDIR) grub-core/script/$(DEPDIR) grub-core/tests/lib/$(DEPDIR) grub-core/video/$(DEPDIR) grub-core/video/fb/$(DEPDIR) tests/$(DEPDIR) tests/lib/$(DEPDIR) util/$(DEPDIR) util/ieee1275/$(DEPDIR) - -rm -f Makefile -distclean-am: clean-am distclean-compile distclean-generic \ - distclean-hdr distclean-tags - -dvi: dvi-recursive - -dvi-am: - -html: html-recursive - -html-am: - -info: info-recursive - -info-am: - -install-data-am: install-dist_grubconfDATA install-grubconfSCRIPTS \ - install-man install-nodist_platformHEADERS install-pkgdataDATA \ - install-platformDATA install-platformPROGRAMS \ - install-platformSCRIPTS install-starfieldDATA - -install-dvi: install-dvi-recursive - -install-dvi-am: - -install-exec-am: install-binPROGRAMS install-binSCRIPTS \ - install-sbinPROGRAMS install-sbinSCRIPTS - -install-html: install-html-recursive - -install-html-am: - -install-info: install-info-recursive - -install-info-am: - -install-man: install-man1 install-man8 - -install-pdf: install-pdf-recursive - -install-pdf-am: - -install-ps: install-ps-recursive - -install-ps-am: - -installcheck-am: - -maintainer-clean: maintainer-clean-recursive - -rm -f $(am__CONFIG_DISTCLEAN_FILES) - -rm -rf $(top_srcdir)/autom4te.cache - -rm -rf ./$(DEPDIR) grub-core/$(DEPDIR) grub-core/commands/$(DEPDIR) grub-core/disk/$(DEPDIR) grub-core/font/$(DEPDIR) grub-core/fs/$(DEPDIR) grub-core/fs/zfs/$(DEPDIR) grub-core/gfxmenu/$(DEPDIR) grub-core/io/$(DEPDIR) grub-core/kern/$(DEPDIR) grub-core/kern/arm/$(DEPDIR) grub-core/kern/arm64/$(DEPDIR) grub-core/kern/emu/$(DEPDIR) grub-core/kern/ia64/$(DEPDIR) grub-core/lib/$(DEPDIR) grub-core/lib/i386/pc/$(DEPDIR) grub-core/lib/libgcrypt-grub/cipher/$(DEPDIR) grub-core/lib/minilzo/$(DEPDIR) grub-core/lib/xzembed/$(DEPDIR) grub-core/lib/zstd/$(DEPDIR) grub-core/loader/$(DEPDIR) grub-core/loader/i386/$(DEPDIR) grub-core/normal/$(DEPDIR) grub-core/osdep/$(DEPDIR) grub-core/osdep/devmapper/$(DEPDIR) grub-core/osdep/unix/$(DEPDIR) grub-core/partmap/$(DEPDIR) grub-core/script/$(DEPDIR) grub-core/tests/lib/$(DEPDIR) grub-core/video/$(DEPDIR) grub-core/video/fb/$(DEPDIR) tests/$(DEPDIR) tests/lib/$(DEPDIR) util/$(DEPDIR) util/ieee1275/$(DEPDIR) - -rm -f Makefile -maintainer-clean-am: distclean-am maintainer-clean-generic - -mostlyclean: mostlyclean-recursive - -mostlyclean-am: mostlyclean-compile mostlyclean-generic - -pdf: pdf-recursive - -pdf-am: - -ps: ps-recursive - -ps-am: - -uninstall-am: uninstall-binPROGRAMS uninstall-binSCRIPTS \ - uninstall-dist_grubconfDATA uninstall-grubconfSCRIPTS \ - uninstall-man uninstall-nodist_platformHEADERS \ - uninstall-pkgdataDATA uninstall-platformDATA \ - uninstall-platformPROGRAMS uninstall-platformSCRIPTS \ - uninstall-sbinPROGRAMS uninstall-sbinSCRIPTS \ - uninstall-starfieldDATA - -uninstall-man: uninstall-man1 uninstall-man8 - -.MAKE: $(am__recursive_targets) all check check-am install install-am \ - install-strip - -.PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am \ - am--refresh check check-TESTS check-am clean clean-binPROGRAMS \ - clean-checkPROGRAMS clean-cscope clean-generic \ - clean-noinstLIBRARIES clean-noinstPROGRAMS \ - clean-platformPROGRAMS clean-sbinPROGRAMS cscope cscopelist-am \ - ctags ctags-am dist dist-all dist-bzip2 dist-gzip dist-lzip \ - dist-shar dist-tarZ dist-xz dist-zip distcheck distclean \ - distclean-compile distclean-generic distclean-hdr \ - distclean-tags distcleancheck distdir distuninstallcheck dvi \ - dvi-am html html-am info info-am install install-am \ - install-binPROGRAMS install-binSCRIPTS install-data \ - install-data-am install-dist_grubconfDATA install-dvi \ - install-dvi-am install-exec install-exec-am \ - install-grubconfSCRIPTS install-html install-html-am \ - install-info install-info-am install-man install-man1 \ - install-man8 install-nodist_platformHEADERS install-pdf \ - install-pdf-am install-pkgdataDATA install-platformDATA \ - install-platformPROGRAMS install-platformSCRIPTS install-ps \ - install-ps-am install-sbinPROGRAMS install-sbinSCRIPTS \ - install-starfieldDATA install-strip installcheck \ - installcheck-am installdirs installdirs-am maintainer-clean \ - maintainer-clean-generic mostlyclean mostlyclean-compile \ - mostlyclean-generic pdf pdf-am ps ps-am recheck tags tags-am \ - uninstall uninstall-am uninstall-binPROGRAMS \ - uninstall-binSCRIPTS uninstall-dist_grubconfDATA \ - uninstall-grubconfSCRIPTS uninstall-man uninstall-man1 \ - uninstall-man8 uninstall-nodist_platformHEADERS \ - uninstall-pkgdataDATA uninstall-platformDATA \ - uninstall-platformPROGRAMS uninstall-platformSCRIPTS \ - uninstall-sbinPROGRAMS uninstall-sbinSCRIPTS \ - uninstall-starfieldDATA - -.PRECIOUS: Makefile - - -export LC_COLLATE := C -unexport LC_ALL - -# Rules for Automake input - -.PRECIOUS: $(top_srcdir)/Makefile.util.am -$(top_srcdir)/Makefile.util.am: $(top_srcdir)/gentpl.py $(top_srcdir)/Makefile.util.def $(top_srcdir)/Makefile.utilgcry.def - $(PYTHON) $^ > $@.new || (rm -f $@.new; exit 1) - mv $@.new $@ - -.PRECIOUS: $(top_srcdir)/grub-core/Makefile.core.am -$(top_srcdir)/grub-core/Makefile.core.am: $(top_srcdir)/gentpl.py $(top_srcdir)/grub-core/Makefile.core.def $(top_srcdir)/grub-core/Makefile.gcry.def - if [ "x$$GRUB_CONTRIB" != x ]; then echo "You need to run ./bootstrap manually." >&2; exit 1; fi - $(PYTHON) $^ > $@.new || (rm -f $@.new; exit 1) - mv $@.new $@ - -@COND_MAN_PAGES_TRUE@grub-mkimage.1: grub-mkimage -@COND_MAN_PAGES_TRUE@ chmod a+x grub-mkimage -@COND_MAN_PAGES_TRUE@ PATH=$(builddir):$$PATH pkgdatadir=$(builddir) $(HELP2MAN) --section=1 -i $(top_srcdir)/docs/man/grub-mkimage.h2m -o $@ grub-mkimage - -@COND_MAN_PAGES_TRUE@grub-mkrelpath.1: grub-mkrelpath -@COND_MAN_PAGES_TRUE@ chmod a+x grub-mkrelpath -@COND_MAN_PAGES_TRUE@ PATH=$(builddir):$$PATH pkgdatadir=$(builddir) $(HELP2MAN) --section=1 -i $(top_srcdir)/docs/man/grub-mkrelpath.h2m -o $@ grub-mkrelpath - -@COND_MAN_PAGES_TRUE@grub-script-check.1: grub-script-check -@COND_MAN_PAGES_TRUE@ chmod a+x grub-script-check -@COND_MAN_PAGES_TRUE@ PATH=$(builddir):$$PATH pkgdatadir=$(builddir) $(HELP2MAN) --section=1 -i $(top_srcdir)/docs/man/grub-script-check.h2m -o $@ grub-script-check - -@COND_MAN_PAGES_TRUE@grub-editenv.1: grub-editenv -@COND_MAN_PAGES_TRUE@ chmod a+x grub-editenv -@COND_MAN_PAGES_TRUE@ PATH=$(builddir):$$PATH pkgdatadir=$(builddir) $(HELP2MAN) --section=1 -i $(top_srcdir)/docs/man/grub-editenv.h2m -o $@ grub-editenv - -@COND_MAN_PAGES_TRUE@grub-mkpasswd-pbkdf2.1: grub-mkpasswd-pbkdf2 -@COND_MAN_PAGES_TRUE@ chmod a+x grub-mkpasswd-pbkdf2 -@COND_MAN_PAGES_TRUE@ PATH=$(builddir):$$PATH pkgdatadir=$(builddir) $(HELP2MAN) --section=1 -i $(top_srcdir)/docs/man/grub-mkpasswd-pbkdf2.h2m -o $@ grub-mkpasswd-pbkdf2 - -@COND_APPLE_LINKER_TRUE@@COND_MAN_PAGES_TRUE@grub-macho2img.1: grub-macho2img -@COND_APPLE_LINKER_TRUE@@COND_MAN_PAGES_TRUE@ chmod a+x grub-macho2img -@COND_APPLE_LINKER_TRUE@@COND_MAN_PAGES_TRUE@ PATH=$(builddir):$$PATH pkgdatadir=$(builddir) $(HELP2MAN) --section=1 -i $(top_srcdir)/docs/man/grub-macho2img.h2m -o $@ grub-macho2img - -@COND_MAN_PAGES_TRUE@grub-fstest.1: grub-fstest -@COND_MAN_PAGES_TRUE@ chmod a+x grub-fstest -@COND_MAN_PAGES_TRUE@ PATH=$(builddir):$$PATH pkgdatadir=$(builddir) $(HELP2MAN) --section=1 -i $(top_srcdir)/docs/man/grub-fstest.h2m -o $@ grub-fstest - -@COND_GRUB_MOUNT_TRUE@@COND_MAN_PAGES_TRUE@grub-mount.1: grub-mount -@COND_GRUB_MOUNT_TRUE@@COND_MAN_PAGES_TRUE@ chmod a+x grub-mount -@COND_GRUB_MOUNT_TRUE@@COND_MAN_PAGES_TRUE@ PATH=$(builddir):$$PATH pkgdatadir=$(builddir) $(HELP2MAN) --section=1 -i $(top_srcdir)/docs/man/grub-mount.h2m -o $@ grub-mount - -@COND_GRUB_MKFONT_TRUE@@COND_MAN_PAGES_TRUE@grub-mkfont.1: grub-mkfont -@COND_GRUB_MKFONT_TRUE@@COND_MAN_PAGES_TRUE@ chmod a+x grub-mkfont -@COND_GRUB_MKFONT_TRUE@@COND_MAN_PAGES_TRUE@ PATH=$(builddir):$$PATH pkgdatadir=$(builddir) $(HELP2MAN) --section=1 -i $(top_srcdir)/docs/man/grub-mkfont.h2m -o $@ grub-mkfont - -@COND_MAN_PAGES_TRUE@grub-probe.8: grub-probe -@COND_MAN_PAGES_TRUE@ chmod a+x grub-probe -@COND_MAN_PAGES_TRUE@ PATH=$(builddir):$$PATH pkgdatadir=$(builddir) $(HELP2MAN) --section=8 -i $(top_srcdir)/docs/man/grub-probe.h2m -o $@ grub-probe - -@COND_MAN_PAGES_TRUE@grub-bios-setup.8: grub-bios-setup -@COND_MAN_PAGES_TRUE@ chmod a+x grub-bios-setup -@COND_MAN_PAGES_TRUE@ PATH=$(builddir):$$PATH pkgdatadir=$(builddir) $(HELP2MAN) --section=8 -i $(top_srcdir)/docs/man/grub-bios-setup.h2m -o $@ grub-bios-setup - -@COND_MAN_PAGES_TRUE@grub-sparc64-setup.8: grub-sparc64-setup -@COND_MAN_PAGES_TRUE@ chmod a+x grub-sparc64-setup -@COND_MAN_PAGES_TRUE@ PATH=$(builddir):$$PATH pkgdatadir=$(builddir) $(HELP2MAN) --section=8 -i $(top_srcdir)/docs/man/grub-sparc64-setup.h2m -o $@ grub-sparc64-setup - -@COND_MAN_PAGES_TRUE@grub-ofpathname.8: grub-ofpathname -@COND_MAN_PAGES_TRUE@ chmod a+x grub-ofpathname -@COND_MAN_PAGES_TRUE@ PATH=$(builddir):$$PATH pkgdatadir=$(builddir) $(HELP2MAN) --section=8 -i $(top_srcdir)/docs/man/grub-ofpathname.h2m -o $@ grub-ofpathname - -@COND_MAN_PAGES_TRUE@grub-mklayout.1: grub-mklayout -@COND_MAN_PAGES_TRUE@ chmod a+x grub-mklayout -@COND_MAN_PAGES_TRUE@ PATH=$(builddir):$$PATH pkgdatadir=$(builddir) $(HELP2MAN) --section=1 -i $(top_srcdir)/docs/man/grub-mklayout.h2m -o $@ grub-mklayout - -@COND_MAN_PAGES_TRUE@grub-macbless.8: grub-macbless -@COND_MAN_PAGES_TRUE@ chmod a+x grub-macbless -@COND_MAN_PAGES_TRUE@ PATH=$(builddir):$$PATH pkgdatadir=$(builddir) $(HELP2MAN) --section=8 -i $(top_srcdir)/docs/man/grub-macbless.h2m -o $@ grub-macbless - -@COND_HAVE_EXEC_TRUE@@COND_MAN_PAGES_TRUE@grub-mkrescue.1: grub-mkrescue -@COND_HAVE_EXEC_TRUE@@COND_MAN_PAGES_TRUE@ chmod a+x grub-mkrescue -@COND_HAVE_EXEC_TRUE@@COND_MAN_PAGES_TRUE@ PATH=$(builddir):$$PATH pkgdatadir=$(builddir) $(HELP2MAN) --section=1 -i $(top_srcdir)/docs/man/grub-mkrescue.h2m -o $@ grub-mkrescue - -@COND_MAN_PAGES_TRUE@grub-mkstandalone.1: grub-mkstandalone -@COND_MAN_PAGES_TRUE@ chmod a+x grub-mkstandalone -@COND_MAN_PAGES_TRUE@ PATH=$(builddir):$$PATH pkgdatadir=$(builddir) $(HELP2MAN) --section=1 -i $(top_srcdir)/docs/man/grub-mkstandalone.h2m -o $@ grub-mkstandalone - -@COND_MAN_PAGES_TRUE@grub-install.8: grub-install -@COND_MAN_PAGES_TRUE@ chmod a+x grub-install -@COND_MAN_PAGES_TRUE@ PATH=$(builddir):$$PATH pkgdatadir=$(builddir) $(HELP2MAN) --section=8 -i $(top_srcdir)/docs/man/grub-install.h2m -o $@ grub-install - -@COND_MAN_PAGES_TRUE@grub-mknetdir.1: grub-mknetdir -@COND_MAN_PAGES_TRUE@ chmod a+x grub-mknetdir -@COND_MAN_PAGES_TRUE@ PATH=$(builddir):$$PATH pkgdatadir=$(builddir) $(HELP2MAN) --section=1 -i $(top_srcdir)/docs/man/grub-mknetdir.h2m -o $@ grub-mknetdir - -@COND_MAN_PAGES_TRUE@grub-menulst2cfg.1: grub-menulst2cfg -@COND_MAN_PAGES_TRUE@ chmod a+x grub-menulst2cfg -@COND_MAN_PAGES_TRUE@ PATH=$(builddir):$$PATH pkgdatadir=$(builddir) $(HELP2MAN) --section=1 -i $(top_srcdir)/docs/man/grub-menulst2cfg.h2m -o $@ grub-menulst2cfg - -@COND_MAN_PAGES_TRUE@grub-syslinux2cfg.1: grub-syslinux2cfg -@COND_MAN_PAGES_TRUE@ chmod a+x grub-syslinux2cfg -@COND_MAN_PAGES_TRUE@ PATH=$(builddir):$$PATH pkgdatadir=$(builddir) $(HELP2MAN) --section=1 -i $(top_srcdir)/docs/man/grub-syslinux2cfg.h2m -o $@ grub-syslinux2cfg - -@COND_MAN_PAGES_TRUE@grub-glue-efi.1: grub-glue-efi -@COND_MAN_PAGES_TRUE@ chmod a+x grub-glue-efi -@COND_MAN_PAGES_TRUE@ PATH=$(builddir):$$PATH pkgdatadir=$(builddir) $(HELP2MAN) --section=1 -i $(top_srcdir)/docs/man/grub-glue-efi.h2m -o $@ grub-glue-efi - -@COND_MAN_PAGES_TRUE@grub-render-label.1: grub-render-label -@COND_MAN_PAGES_TRUE@ chmod a+x grub-render-label -@COND_MAN_PAGES_TRUE@ PATH=$(builddir):$$PATH pkgdatadir=$(builddir) $(HELP2MAN) --section=1 -i $(top_srcdir)/docs/man/grub-render-label.h2m -o $@ grub-render-label - -@COND_MAN_PAGES_TRUE@grub-file.1: grub-file -@COND_MAN_PAGES_TRUE@ chmod a+x grub-file -@COND_MAN_PAGES_TRUE@ PATH=$(builddir):$$PATH pkgdatadir=$(builddir) $(HELP2MAN) --section=1 -i $(top_srcdir)/docs/man/grub-file.h2m -o $@ grub-file - -00_header: $(top_builddir)/config.status util/grub.d/00_header.in - (for x in util/grub.d/00_header.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x 00_header - -@COND_HOST_WINDOWS_TRUE@10_windows: $(top_builddir)/config.status util/grub.d/10_windows.in -@COND_HOST_WINDOWS_TRUE@ (for x in util/grub.d/10_windows.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- -@COND_HOST_WINDOWS_TRUE@ chmod a+x 10_windows - -@COND_HOST_HURD_TRUE@10_hurd: $(top_builddir)/config.status util/grub.d/10_hurd.in -@COND_HOST_HURD_TRUE@ (for x in util/grub.d/10_hurd.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- -@COND_HOST_HURD_TRUE@ chmod a+x 10_hurd - -@COND_HOST_KFREEBSD_TRUE@10_kfreebsd: $(top_builddir)/config.status util/grub.d/10_kfreebsd.in -@COND_HOST_KFREEBSD_TRUE@ (for x in util/grub.d/10_kfreebsd.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- -@COND_HOST_KFREEBSD_TRUE@ chmod a+x 10_kfreebsd - -@COND_HOST_ILLUMOS_TRUE@10_illumos: $(top_builddir)/config.status util/grub.d/10_illumos.in -@COND_HOST_ILLUMOS_TRUE@ (for x in util/grub.d/10_illumos.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- -@COND_HOST_ILLUMOS_TRUE@ chmod a+x 10_illumos - -@COND_HOST_NETBSD_TRUE@10_netbsd: $(top_builddir)/config.status util/grub.d/10_netbsd.in -@COND_HOST_NETBSD_TRUE@ (for x in util/grub.d/10_netbsd.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- -@COND_HOST_NETBSD_TRUE@ chmod a+x 10_netbsd - -@COND_HOST_LINUX_TRUE@10_linux: $(top_builddir)/config.status util/grub.d/10_linux.in -@COND_HOST_LINUX_TRUE@ (for x in util/grub.d/10_linux.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- -@COND_HOST_LINUX_TRUE@ chmod a+x 10_linux - -@COND_HOST_XNU_TRUE@10_xnu: $(top_builddir)/config.status util/grub.d/10_xnu.in -@COND_HOST_XNU_TRUE@ (for x in util/grub.d/10_xnu.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- -@COND_HOST_XNU_TRUE@ chmod a+x 10_xnu - -@COND_HOST_LINUX_TRUE@20_linux_xen: $(top_builddir)/config.status util/grub.d/20_linux_xen.in -@COND_HOST_LINUX_TRUE@ (for x in util/grub.d/20_linux_xen.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- -@COND_HOST_LINUX_TRUE@ chmod a+x 20_linux_xen - -30_os-prober: $(top_builddir)/config.status util/grub.d/30_os-prober.in - (for x in util/grub.d/30_os-prober.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x 30_os-prober - -40_custom: $(top_builddir)/config.status util/grub.d/40_custom.in - (for x in util/grub.d/40_custom.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x 40_custom - -41_custom: $(top_builddir)/config.status util/grub.d/41_custom.in - (for x in util/grub.d/41_custom.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x 41_custom - -@COND_MAN_PAGES_TRUE@grub-mkconfig.8: grub-mkconfig grub-mkconfig_lib -@COND_MAN_PAGES_TRUE@ chmod a+x grub-mkconfig -@COND_MAN_PAGES_TRUE@ PATH=$(builddir):$$PATH pkgdatadir=$(builddir) $(HELP2MAN) --section=8 -i $(top_srcdir)/docs/man/grub-mkconfig.h2m -o $@ grub-mkconfig - -grub-mkconfig: $(top_builddir)/config.status util/grub-mkconfig.in - (for x in util/grub-mkconfig.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x grub-mkconfig - -@COND_MAN_PAGES_TRUE@grub-set-default.8: grub-set-default grub-mkconfig_lib -@COND_MAN_PAGES_TRUE@ chmod a+x grub-set-default -@COND_MAN_PAGES_TRUE@ PATH=$(builddir):$$PATH pkgdatadir=$(builddir) $(HELP2MAN) --section=8 -i $(top_srcdir)/docs/man/grub-set-default.h2m -o $@ grub-set-default - -grub-set-default: $(top_builddir)/config.status util/grub-set-default.in - (for x in util/grub-set-default.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x grub-set-default - -@COND_MAN_PAGES_TRUE@grub-reboot.8: grub-reboot grub-mkconfig_lib -@COND_MAN_PAGES_TRUE@ chmod a+x grub-reboot -@COND_MAN_PAGES_TRUE@ PATH=$(builddir):$$PATH pkgdatadir=$(builddir) $(HELP2MAN) --section=8 -i $(top_srcdir)/docs/man/grub-reboot.h2m -o $@ grub-reboot - -grub-reboot: $(top_builddir)/config.status util/grub-reboot.in - (for x in util/grub-reboot.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x grub-reboot - -grub-mkconfig_lib: $(top_builddir)/config.status util/grub-mkconfig_lib.in - (for x in util/grub-mkconfig_lib.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x grub-mkconfig_lib - -@COND_MAN_PAGES_TRUE@grub-kbdcomp.1: grub-kbdcomp grub-mkconfig_lib -@COND_MAN_PAGES_TRUE@ chmod a+x grub-kbdcomp -@COND_MAN_PAGES_TRUE@ PATH=$(builddir):$$PATH pkgdatadir=$(builddir) $(HELP2MAN) --section=1 -i $(top_srcdir)/docs/man/grub-kbdcomp.h2m -o $@ grub-kbdcomp - -grub-kbdcomp: $(top_builddir)/config.status util/grub-kbdcomp.in - (for x in util/grub-kbdcomp.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x grub-kbdcomp - -grub-shell: $(top_builddir)/config.status tests/util/grub-shell.in - (for x in tests/util/grub-shell.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x grub-shell - -grub-shell-tester: $(top_builddir)/config.status tests/util/grub-shell-tester.in - (for x in tests/util/grub-shell-tester.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x grub-shell-tester - -grub-fs-tester: $(top_builddir)/config.status tests/util/grub-fs-tester.in garbage-gen$(BUILD_EXEEXT) - (for x in tests/util/grub-fs-tester.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x grub-fs-tester - -ext234_test: $(top_builddir)/config.status tests/ext234_test.in - (for x in tests/ext234_test.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x ext234_test - -squashfs_test: $(top_builddir)/config.status tests/squashfs_test.in - (for x in tests/squashfs_test.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x squashfs_test - -iso9660_test: $(top_builddir)/config.status tests/iso9660_test.in - (for x in tests/iso9660_test.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x iso9660_test - -hfsplus_test: $(top_builddir)/config.status tests/hfsplus_test.in - (for x in tests/hfsplus_test.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x hfsplus_test - -ntfs_test: $(top_builddir)/config.status tests/ntfs_test.in - (for x in tests/ntfs_test.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x ntfs_test - -reiserfs_test: $(top_builddir)/config.status tests/reiserfs_test.in - (for x in tests/reiserfs_test.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x reiserfs_test - -fat_test: $(top_builddir)/config.status tests/fat_test.in - (for x in tests/fat_test.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x fat_test - -minixfs_test: $(top_builddir)/config.status tests/minixfs_test.in - (for x in tests/minixfs_test.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x minixfs_test - -xfs_test: $(top_builddir)/config.status tests/xfs_test.in - (for x in tests/xfs_test.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x xfs_test - -f2fs_test: $(top_builddir)/config.status tests/f2fs_test.in - (for x in tests/f2fs_test.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x f2fs_test - -nilfs2_test: $(top_builddir)/config.status tests/nilfs2_test.in - (for x in tests/nilfs2_test.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x nilfs2_test - -romfs_test: $(top_builddir)/config.status tests/romfs_test.in - (for x in tests/romfs_test.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x romfs_test - -exfat_test: $(top_builddir)/config.status tests/exfat_test.in - (for x in tests/exfat_test.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x exfat_test - -tar_test: $(top_builddir)/config.status tests/tar_test.in - (for x in tests/tar_test.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x tar_test - -udf_test: $(top_builddir)/config.status tests/udf_test.in - (for x in tests/udf_test.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x udf_test - -hfs_test: $(top_builddir)/config.status tests/hfs_test.in - (for x in tests/hfs_test.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x hfs_test - -jfs_test: $(top_builddir)/config.status tests/jfs_test.in - (for x in tests/jfs_test.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x jfs_test - -btrfs_test: $(top_builddir)/config.status tests/btrfs_test.in - (for x in tests/btrfs_test.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x btrfs_test - -zfs_test: $(top_builddir)/config.status tests/zfs_test.in - (for x in tests/zfs_test.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x zfs_test - -cpio_test: $(top_builddir)/config.status tests/cpio_test.in - (for x in tests/cpio_test.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x cpio_test - -example_scripted_test: $(top_builddir)/config.status tests/example_scripted_test.in - (for x in tests/example_scripted_test.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x example_scripted_test - -gettext_strings_test: $(top_builddir)/config.status tests/gettext_strings_test.in - (for x in tests/gettext_strings_test.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x gettext_strings_test - -pata_test: $(top_builddir)/config.status tests/pata_test.in - (for x in tests/pata_test.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x pata_test - -ahci_test: $(top_builddir)/config.status tests/ahci_test.in - (for x in tests/ahci_test.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x ahci_test - -uhci_test: $(top_builddir)/config.status tests/uhci_test.in - (for x in tests/uhci_test.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x uhci_test - -ohci_test: $(top_builddir)/config.status tests/ohci_test.in - (for x in tests/ohci_test.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x ohci_test - -ehci_test: $(top_builddir)/config.status tests/ehci_test.in - (for x in tests/ehci_test.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x ehci_test - -example_grub_script_test: $(top_builddir)/config.status tests/example_grub_script_test.in - (for x in tests/example_grub_script_test.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x example_grub_script_test - -grub_script_eval: $(top_builddir)/config.status tests/grub_script_eval.in - (for x in tests/grub_script_eval.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x grub_script_eval - -grub_script_test: $(top_builddir)/config.status tests/grub_script_test.in - (for x in tests/grub_script_test.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x grub_script_test - -grub_script_echo1: $(top_builddir)/config.status tests/grub_script_echo1.in - (for x in tests/grub_script_echo1.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x grub_script_echo1 - -grub_script_leading_whitespace: $(top_builddir)/config.status tests/grub_script_leading_whitespace.in - (for x in tests/grub_script_leading_whitespace.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x grub_script_leading_whitespace - -grub_script_echo_keywords: $(top_builddir)/config.status tests/grub_script_echo_keywords.in - (for x in tests/grub_script_echo_keywords.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x grub_script_echo_keywords - -grub_script_vars1: $(top_builddir)/config.status tests/grub_script_vars1.in - (for x in tests/grub_script_vars1.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x grub_script_vars1 - -grub_script_for1: $(top_builddir)/config.status tests/grub_script_for1.in - (for x in tests/grub_script_for1.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x grub_script_for1 - -grub_script_while1: $(top_builddir)/config.status tests/grub_script_while1.in - (for x in tests/grub_script_while1.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x grub_script_while1 - -grub_script_if: $(top_builddir)/config.status tests/grub_script_if.in - (for x in tests/grub_script_if.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x grub_script_if - -grub_script_blanklines: $(top_builddir)/config.status tests/grub_script_blanklines.in - (for x in tests/grub_script_blanklines.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x grub_script_blanklines - -grub_script_final_semicolon: $(top_builddir)/config.status tests/grub_script_final_semicolon.in - (for x in tests/grub_script_final_semicolon.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x grub_script_final_semicolon - -grub_script_dollar: $(top_builddir)/config.status tests/grub_script_dollar.in - (for x in tests/grub_script_dollar.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x grub_script_dollar - -grub_script_comments: $(top_builddir)/config.status tests/grub_script_comments.in - (for x in tests/grub_script_comments.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x grub_script_comments - -grub_script_functions: $(top_builddir)/config.status tests/grub_script_functions.in - (for x in tests/grub_script_functions.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x grub_script_functions - -grub_script_break: $(top_builddir)/config.status tests/grub_script_break.in - (for x in tests/grub_script_break.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x grub_script_break - -grub_script_continue: $(top_builddir)/config.status tests/grub_script_continue.in - (for x in tests/grub_script_continue.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x grub_script_continue - -grub_script_shift: $(top_builddir)/config.status tests/grub_script_shift.in - (for x in tests/grub_script_shift.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x grub_script_shift - -grub_script_blockarg: $(top_builddir)/config.status tests/grub_script_blockarg.in - (for x in tests/grub_script_blockarg.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x grub_script_blockarg - -grub_script_setparams: $(top_builddir)/config.status tests/grub_script_setparams.in - (for x in tests/grub_script_setparams.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x grub_script_setparams - -grub_script_return: $(top_builddir)/config.status tests/grub_script_return.in - (for x in tests/grub_script_return.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x grub_script_return - -grub_cmd_regexp: $(top_builddir)/config.status tests/grub_cmd_regexp.in - (for x in tests/grub_cmd_regexp.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x grub_cmd_regexp - -grub_cmd_date: $(top_builddir)/config.status tests/grub_cmd_date.in - (for x in tests/grub_cmd_date.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x grub_cmd_date - -grub_cmd_set_date: $(top_builddir)/config.status tests/grub_cmd_set_date.in - (for x in tests/grub_cmd_set_date.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x grub_cmd_set_date - -grub_cmd_sleep: $(top_builddir)/config.status tests/grub_cmd_sleep.in - (for x in tests/grub_cmd_sleep.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x grub_cmd_sleep - -grub_script_expansion: $(top_builddir)/config.status tests/grub_script_expansion.in - (for x in tests/grub_script_expansion.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x grub_script_expansion - -grub_script_not: $(top_builddir)/config.status tests/grub_script_not.in - (for x in tests/grub_script_not.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x grub_script_not - -grub_script_no_commands: $(top_builddir)/config.status tests/grub_script_no_commands.in - (for x in tests/grub_script_no_commands.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x grub_script_no_commands - -partmap_test: $(top_builddir)/config.status tests/partmap_test.in - (for x in tests/partmap_test.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x partmap_test - -hddboot_test: $(top_builddir)/config.status tests/hddboot_test.in - (for x in tests/hddboot_test.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x hddboot_test - -fddboot_test: $(top_builddir)/config.status tests/fddboot_test.in - (for x in tests/fddboot_test.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x fddboot_test - -cdboot_test: $(top_builddir)/config.status tests/cdboot_test.in - (for x in tests/cdboot_test.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x cdboot_test - -netboot_test: $(top_builddir)/config.status tests/netboot_test.in - (for x in tests/netboot_test.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x netboot_test - -pseries_test: $(top_builddir)/config.status tests/pseries_test.in - (for x in tests/pseries_test.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x pseries_test - -core_compress_test: $(top_builddir)/config.status tests/core_compress_test.in - (for x in tests/core_compress_test.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x core_compress_test - -xzcompress_test: $(top_builddir)/config.status tests/xzcompress_test.in - (for x in tests/xzcompress_test.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x xzcompress_test - -gzcompress_test: $(top_builddir)/config.status tests/gzcompress_test.in - (for x in tests/gzcompress_test.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x gzcompress_test - -lzocompress_test: $(top_builddir)/config.status tests/lzocompress_test.in - (for x in tests/lzocompress_test.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x lzocompress_test - -grub_cmd_echo: $(top_builddir)/config.status tests/grub_cmd_echo.in - (for x in tests/grub_cmd_echo.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x grub_cmd_echo - -help_test: $(top_builddir)/config.status tests/help_test.in - (for x in tests/help_test.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x help_test - -grub_script_gettext: $(top_builddir)/config.status tests/grub_script_gettext.in - (for x in tests/grub_script_gettext.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x grub_script_gettext - -grub_script_escape_comma: $(top_builddir)/config.status tests/grub_script_escape_comma.in - (for x in tests/grub_script_escape_comma.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x grub_script_escape_comma - -grub_script_strcmp: $(top_builddir)/config.status tests/grub_script_strcmp.in - (for x in tests/grub_script_strcmp.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x grub_script_strcmp - -test_sha512sum: $(top_builddir)/config.status tests/test_sha512sum.in - (for x in tests/test_sha512sum.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x test_sha512sum - -test_unset: $(top_builddir)/config.status tests/test_unset.in - (for x in tests/test_unset.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x test_unset - -grub_func_test: $(top_builddir)/config.status tests/grub_func_test.in - (for x in tests/grub_func_test.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x grub_func_test - -grub_cmd_tr: $(top_builddir)/config.status tests/grub_cmd_tr.in - (for x in tests/grub_cmd_tr.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x grub_cmd_tr - -file_filter_test: $(top_builddir)/config.status tests/file_filter_test.in - (for x in tests/file_filter_test.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x file_filter_test - -grub_cmd_test: $(top_builddir)/config.status tests/grub_cmd_test.in - (for x in tests/grub_cmd_test.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x grub_cmd_test - -syslinux_test: $(top_builddir)/config.status tests/syslinux_test.in - (for x in tests/syslinux_test.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x syslinux_test - -# XXX Use Automake's LEX & YACC support -grub_script.tab.h: $(top_srcdir)/grub-core/script/parser.y - $(YACC) -d -p grub_script_yy -b grub_script $(top_srcdir)/grub-core/script/parser.y -grub_script.tab.c: grub_script.tab.h - -# For the lexer. -grub_script.yy.h: $(top_srcdir)/grub-core/script/yylex.l - $(LEX) -o grub_script.yy.c --header-file=grub_script.yy.h $(top_srcdir)/grub-core/script/yylex.l -grub_script.yy.c: grub_script.yy.h - -# For libgrub.a -libgrub.pp: grub_script.tab.h grub_script.yy.h $(libgrubmods_a_SOURCES) $(libgrubkern_a_SOURCES) - $(CPP) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgrubmods_a_CPPFLAGS) $(libgrubkern_a_CPPFLAGS) $(CPPFLAGS) \ - -D'GRUB_MOD_INIT(x)=@MARKER@x@' $^ > $@ || (rm -f $@; exit 1) - -libgrub_a_init.lst: libgrub.pp - cat $< | grep '@MARKER@' | sed 's/@MARKER@\(.*\)@/\1/g' | sort -u > $@ || (rm -f $@; exit 1) - -libgrub_a_init.c: libgrub_a_init.lst $(top_srcdir)/geninit.sh - sh $(top_srcdir)/geninit.sh `cat $<` > $@ || (rm -f $@; exit 1) - -# For grub-fstest -grub_fstest.pp: $(grub_fstest_SOURCES) - $(CPP) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_fstest_CPPFLAGS) $(CPPFLAGS) \ - -D'GRUB_MOD_INIT(x)=@MARKER@x@' $^ > $@ || (rm -f $@; exit 1) - -grub_fstest_init.lst: libgrub.pp grub_fstest.pp - cat $^ | grep '@MARKER@' | sed 's/@MARKER@\(.*\)@/\1/g' | sort -u > $@ || (rm -f $@; exit 1) - -grub_fstest_init.c: grub_fstest_init.lst $(top_srcdir)/geninit.sh - sh $(top_srcdir)/geninit.sh `cat $<` > $@ || (rm -f $@; exit 1) - -build-grub-mkfont$(BUILD_EXEEXT): util/grub-mkfont.c grub-core/unidata.c grub-core/kern/emu/misc.c util/misc.c - $(BUILD_CC) -o $@ -I$(top_srcdir)/include $(BUILD_CFLAGS) $(BUILD_CPPFLAGS) $(BUILD_LDFLAGS) -DGRUB_MKFONT=1 -DGRUB_BUILD=1 -DGRUB_UTIL=1 -DGRUB_BUILD_PROGRAM_NAME=\"build-grub-mkfont\" $^ $(BUILD_FREETYPE_CFLAGS) $(BUILD_FREETYPE_LIBS) - -garbage-gen$(BUILD_EXEEXT): util/garbage-gen.c - $(BUILD_CC) -o $@ $(BUILD_CFLAGS) $(BUILD_CPPFLAGS) $(BUILD_LDFLAGS) $^ - -build-grub-gen-asciih$(BUILD_EXEEXT): util/grub-gen-asciih.c - $(BUILD_CC) -o $@ -I$(top_srcdir)/include $(BUILD_CFLAGS) $(BUILD_CPPFLAGS) $(BUILD_LDFLAGS) -DGRUB_MKFONT=1 -DGRUB_BUILD=1 -DGRUB_UTIL=1 $^ $(BUILD_FREETYPE_CFLAGS) $(BUILD_FREETYPE_LIBS) -Wall -Werror - -build-grub-gen-widthspec$(BUILD_EXEEXT): util/grub-gen-widthspec.c - $(BUILD_CC) -o $@ -I$(top_srcdir)/include $(BUILD_CFLAGS) $(BUILD_CPPFLAGS) $(BUILD_LDFLAGS) -DGRUB_MKFONT=1 -DGRUB_BUILD=1 -DGRUB_UTIL=1 $^ $(BUILD_FREETYPE_CFLAGS) $(BUILD_FREETYPE_LIBS) -Wall -Werror -@COND_STARFIELD_TRUE@dejavu_10.pf2: $(DJVU_FONT_SOURCE) build-grub-mkfont$(BUILD_EXEEXT) -@COND_STARFIELD_TRUE@ ./build-grub-mkfont$(BUILD_EXEEXT) -s 10 -o $@ $(DJVU_FONT_SOURCE) -@COND_STARFIELD_TRUE@dejavu_12.pf2: $(DJVU_FONT_SOURCE) build-grub-mkfont$(BUILD_EXEEXT) -@COND_STARFIELD_TRUE@ ./build-grub-mkfont$(BUILD_EXEEXT) -s 12 -o $@ $(DJVU_FONT_SOURCE) -@COND_STARFIELD_TRUE@dejavu_14.pf2: $(DJVU_FONT_SOURCE) build-grub-mkfont$(BUILD_EXEEXT) -@COND_STARFIELD_TRUE@ ./build-grub-mkfont$(BUILD_EXEEXT) -s 14 -o $@ $(DJVU_FONT_SOURCE) -@COND_STARFIELD_TRUE@dejavu_bold_14.pf2: $(DJVU_FONT_SOURCE) build-grub-mkfont$(BUILD_EXEEXT) -@COND_STARFIELD_TRUE@ ./build-grub-mkfont$(BUILD_EXEEXT) -b -s 14 -o $@ $(DJVU_FONT_SOURCE) -@COND_STARFIELD_TRUE@dejavu_16.pf2: $(DJVU_FONT_SOURCE) build-grub-mkfont$(BUILD_EXEEXT) -@COND_STARFIELD_TRUE@ ./build-grub-mkfont$(BUILD_EXEEXT) -s 16 -o $@ $(DJVU_FONT_SOURCE) - -unicode.pf2: $(FONT_SOURCE) build-grub-mkfont$(BUILD_EXEEXT) - ./build-grub-mkfont$(BUILD_EXEEXT) -o $@ $(FONT_SOURCE) || (rm -f $@; exit 1) - -ascii.pf2: $(FONT_SOURCE) build-grub-mkfont$(BUILD_EXEEXT) - ./build-grub-mkfont$(BUILD_EXEEXT) -o $@ $(FONT_SOURCE) -r 0x0-0x7f,$(UNICODE_ARROWS),$(UNICODE_LINES) || (rm -f $@; exit 1) - -euro.pf2: $(FONT_SOURCE) build-grub-mkfont$(BUILD_EXEEXT) - ./build-grub-mkfont$(BUILD_EXEEXT) -o $@ $(FONT_SOURCE) -r 0x0-0x4ff,0x1e00-0x1fff,$(UNICODE_ARROWS),$(UNICODE_LINES) || (rm -f $@; exit 1) - -ascii.h: $(FONT_SOURCE) build-grub-gen-asciih$(BUILD_EXEEXT) - ./build-grub-gen-asciih$(BUILD_EXEEXT) $(FONT_SOURCE) $@ || (rm -f $@; exit 1) - -widthspec.h: $(FONT_SOURCE) build-grub-gen-widthspec$(BUILD_EXEEXT) - ./build-grub-gen-widthspec$(BUILD_EXEEXT) $(FONT_SOURCE) $@ || (rm -f $@; exit 1) - -@COND_real_platform_TRUE@linux.init.x86_64: $(srcdir)/grub-core/tests/boot/linux.init-x86_64.S $(srcdir)/grub-core/tests/boot/qemu-shutdown-x86.S -@COND_real_platform_TRUE@ $(TARGET_CC) -o $@ $< -static -m64 -nostdlib -nostdinc -DSUCCESSFUL_BOOT_STRING=\"$(SUCCESSFUL_BOOT_STRING)\" - -@COND_real_platform_TRUE@linux.init.i386: $(srcdir)/grub-core/tests/boot/linux.init-i386.S $(srcdir)/grub-core/tests/boot/qemu-shutdown-x86.S -@COND_real_platform_TRUE@ $(TARGET_CC) -o $@ $< -static -m32 -nostdlib -nostdinc -DSUCCESSFUL_BOOT_STRING=\"$(SUCCESSFUL_BOOT_STRING)\" - -@COND_real_platform_TRUE@linux.init.mips: $(srcdir)/grub-core/tests/boot/linux.init-mips.S -@COND_real_platform_TRUE@ $(TARGET_CC) -o $@ $< -static -nostdlib -nostdinc -DSUCCESSFUL_BOOT_STRING=\"$(SUCCESSFUL_BOOT_STRING)\" - -@COND_real_platform_TRUE@linux.init.ppc: $(srcdir)/grub-core/tests/boot/linux.init-ppc.S -@COND_real_platform_TRUE@ $(TARGET_CC) -o $@ $< -static -nostdlib -nostdinc -DSUCCESSFUL_BOOT_STRING=\"$(SUCCESSFUL_BOOT_STRING)\" - -@COND_real_platform_TRUE@linux.init.mipsel: $(srcdir)/grub-core/tests/boot/linux.init-mips.S -@COND_real_platform_TRUE@ $(TARGET_CC) -o $@ $< -static -nostdlib -nostdinc -DSUCCESSFUL_BOOT_STRING=\"$(SUCCESSFUL_BOOT_STRING)\" - -@COND_real_platform_TRUE@linux.init.loongson: $(srcdir)/grub-core/tests/boot/linux.init-mips.S -@COND_real_platform_TRUE@ $(TARGET_CC) -o $@ $< -static -nostdlib -nostdinc -DSUCCESSFUL_BOOT_STRING=\"$(SUCCESSFUL_BOOT_STRING)\" -DREBOOT=1 - -@COND_real_platform_TRUE@multiboot.elf: $(srcdir)/grub-core/tests/boot/kernel-i386.S $(srcdir)/grub-core/tests/boot/qemu-shutdown-x86.S -@COND_real_platform_TRUE@ $(TARGET_CC) -o $@ $< -DSUCCESSFUL_BOOT_STRING=\"$(SUCCESSFUL_BOOT_STRING)\" -static -ffreestanding -nostdlib -nostdinc -DTARGET_MULTIBOOT=1 -Wl,--build-id=none -Wl,-N -Wl,-Ttext,0x100000 -m32 -I$(srcdir)/include - -@COND_real_platform_TRUE@kfreebsd.elf: $(srcdir)/grub-core/tests/boot/kernel-i386.S $(srcdir)/grub-core/tests/boot/qemu-shutdown-x86.S -@COND_real_platform_TRUE@ $(TARGET_CC) -o $@ $< -DSUCCESSFUL_BOOT_STRING=\"$(SUCCESSFUL_BOOT_STRING)\" -static -ffreestanding -nostdlib -nostdinc -Wl,--build-id=none -Wl,-N -Wl,-Ttext,0x100000 -m32 -I$(srcdir)/include - -@COND_real_platform_TRUE@kfreebsd.aout: kfreebsd.elf -@COND_real_platform_TRUE@ $(TARGET_OBJCOPY) -O a.out-i386-linux $< $@ -j .text - -@COND_real_platform_TRUE@pc-chainloader.elf: $(srcdir)/grub-core/tests/boot/kernel-8086.S $(srcdir)/grub-core/tests/boot/qemu-shutdown-x86.S -@COND_real_platform_TRUE@ $(TARGET_CC) -o $@ $< -static -DTARGET_CHAINLOADER=1 -DSUCCESSFUL_BOOT_STRING=\"$(SUCCESSFUL_BOOT_STRING)\" -ffreestanding -nostdlib -nostdinc -Wl,--build-id=none -Wl,-N -Wl,-Ttext,0x7c00 -m32 - -@COND_real_platform_TRUE@pc-chainloader.bin: pc-chainloader.elf -@COND_real_platform_TRUE@ $(TARGET_OBJCOPY) -O binary --strip-unneeded -R .note -R .comment -R .note.gnu.build-id -R .reginfo -R .rel.dyn -R .note.gnu.gold-version $< $@; - -@COND_real_platform_TRUE@ntldr.elf: $(srcdir)/grub-core/tests/boot/kernel-8086.S $(srcdir)/grub-core/tests/boot/qemu-shutdown-x86.S -@COND_real_platform_TRUE@ $(TARGET_CC) -o $@ $< -DTARGET_NTLDR=1 -DSUCCESSFUL_BOOT_STRING=\"$(SUCCESSFUL_BOOT_STRING)\" -static -ffreestanding -nostdlib -nostdinc -Wl,--build-id=none -Wl,-N -Wl,-Ttext,0 -m32 - -@COND_real_platform_TRUE@ntldr.bin: ntldr.elf -@COND_real_platform_TRUE@ $(TARGET_OBJCOPY) -O binary --strip-unneeded -j .text $< $@; - -@COND_real_platform_TRUE@multiboot2.elf: $(srcdir)/grub-core/tests/boot/kernel-i386.S $(srcdir)/grub-core/tests/boot/qemu-shutdown-x86.S -@COND_real_platform_TRUE@ $(TARGET_CC) -static -o $@ $< -DSUCCESSFUL_BOOT_STRING=\"$(SUCCESSFUL_BOOT_STRING)\" -ffreestanding -nostdlib -nostdinc -Wl,--build-id=none -Wl,-N -Wl,-Ttext,0x100000 -m32 -I$(srcdir)/include -DTARGET_MULTIBOOT2=1 - -@COND_real_platform_TRUE@kfreebsd.init.x86_64: $(srcdir)/grub-core/tests/boot/kfreebsd.init-x86_64.S $(srcdir)/grub-core/tests/boot/qemu-shutdown-x86.S -@COND_real_platform_TRUE@ $(TARGET_CC) -o $@ $< -m64 -static -nostdlib -nostdinc -DSUCCESSFUL_BOOT_STRING=\"$(SUCCESSFUL_BOOT_STRING)\" && freebsd-brandelf -t FreeBSD $@ - -@COND_real_platform_TRUE@kfreebsd.init.i386: $(srcdir)/grub-core/tests/boot/kfreebsd.init-i386.S $(srcdir)/grub-core/tests/boot/qemu-shutdown-x86.S -@COND_real_platform_TRUE@ $(TARGET_CC) -o $@ $< -m32 -static -nostdlib -nostdinc -DSUCCESSFUL_BOOT_STRING=\"$(SUCCESSFUL_BOOT_STRING)\" && freebsd-brandelf -t FreeBSD $@ - -@COND_real_platform_TRUE@knetbsd.init.i386: $(srcdir)/grub-core/tests/boot/kbsd.init-i386.S $(srcdir)/grub-core/tests/boot/qemu-shutdown-x86.S -@COND_real_platform_TRUE@ $(TARGET_CC) -o $@ $< -m32 -static -nostdlib -nostdinc -DTARGET_NETBSD=1 -DSUCCESSFUL_BOOT_STRING=\"$(SUCCESSFUL_BOOT_STRING)\" - -@COND_real_platform_TRUE@kopenbsd.init.i386: $(srcdir)/grub-core/tests/boot/kbsd.init-i386.S $(srcdir)/grub-core/tests/boot/qemu-shutdown-x86.S -@COND_real_platform_TRUE@ $(TARGET_CC) -o $@ $< -m32 -static -nostdlib -nostdinc -DTARGET_OPENBSD=1 -DSUCCESSFUL_BOOT_STRING=\"$(SUCCESSFUL_BOOT_STRING)\" - -@COND_real_platform_TRUE@knetbsd.init.x86_64: $(srcdir)/grub-core/tests/boot/kbsd.init-x86_64.S $(srcdir)/grub-core/tests/boot/qemu-shutdown-x86.S -@COND_real_platform_TRUE@ $(TARGET_CC) -o $@ $< -m64 -DTARGET_NETBSD=1 -static -nostdlib -nostdinc -DSUCCESSFUL_BOOT_STRING=\"$(SUCCESSFUL_BOOT_STRING)\" - -@COND_real_platform_TRUE@kopenbsd.init.x86_64: $(srcdir)/grub-core/tests/boot/kbsd.init-x86_64.S $(srcdir)/grub-core/tests/boot/qemu-shutdown-x86.S -@COND_real_platform_TRUE@ $(TARGET_CC) -o $@ $< -m64 -DTARGET_OPENBSD=1 -static -nostdlib -nostdinc -DSUCCESSFUL_BOOT_STRING=\"$(SUCCESSFUL_BOOT_STRING)\" - -@COND_real_platform_TRUE@linux-initramfs.mips: linux.init.mips Makefile -@COND_real_platform_TRUE@ TDIR=`mktemp -d "$${TMPDIR:-/tmp}/tmp.XXXXXXXXXX"` && cp $< $$TDIR/init && (cd $$TDIR && echo ./init | cpio -R 0:0 --quiet --dereference -o -H newc) | gzip > $@ && rm -rf $$TDIR - -@COND_real_platform_TRUE@linux-initramfs.ppc: linux.init.ppc Makefile -@COND_real_platform_TRUE@ TDIR=`mktemp -d "$${TMPDIR:-/tmp}/tmp.XXXXXXXXXX"` && cp $< $$TDIR/init && (cd $$TDIR && echo ./init | cpio -R 0:0 --quiet --dereference -o -H newc) | gzip > $@ && rm -rf $$TDIR - -@COND_real_platform_TRUE@linux-initramfs.mipsel: linux.init.mipsel Makefile -@COND_real_platform_TRUE@ TDIR=`mktemp -d "$${TMPDIR:-/tmp}/tmp.XXXXXXXXXX"` && cp $< $$TDIR/init && (cd $$TDIR && echo ./init | cpio -R 0:0 --quiet --dereference -o -H newc) | gzip > $@ && rm -rf $$TDIR - -@COND_real_platform_TRUE@linux-initramfs.loongson: linux.init.loongson Makefile -@COND_real_platform_TRUE@ TDIR=`mktemp -d "$${TMPDIR:-/tmp}/tmp.XXXXXXXXXX"` && cp $< $$TDIR/init && (cd $$TDIR && echo ./init | cpio -R 0:0 --quiet --dereference -o -H newc) | gzip > $@ && rm -rf $$TDIR - -@COND_real_platform_TRUE@linux-initramfs.i386: linux.init.i386 Makefile -@COND_real_platform_TRUE@ TDIR=`mktemp -d "$${TMPDIR:-/tmp}/tmp.XXXXXXXXXX"` && cp $< $$TDIR/init && (cd $$TDIR && echo ./init | cpio -R 0:0 --quiet --dereference -o -H newc) | gzip > $@ && rm -rf $$TDIR - -@COND_real_platform_TRUE@linux-initramfs.x86_64: linux.init.x86_64 Makefile -@COND_real_platform_TRUE@ TDIR=`mktemp -d "$${TMPDIR:-/tmp}/tmp.XXXXXXXXXX"` && cp $< $$TDIR/init && (cd $$TDIR && echo ./init | cpio -R 0:0 --quiet --dereference -o -H newc) | gzip > $@ && rm -rf $$TDIR - -@COND_real_platform_TRUE@kfreebsd-mfsroot.i386.img: kfreebsd.init.i386 Makefile -@COND_real_platform_TRUE@ TDIR=`mktemp -d "$${TMPDIR:-/tmp}/tmp.XXXXXXXXXX"` && mkdir $$TDIR/dev && mkdir $$TDIR/sbin && cp $< $$TDIR/sbin/init && makefs -t ffs -s 30m -f 1000 -o minfree=0,version=1 $@ $$TDIR && rm -rf $$TDIR - -@COND_real_platform_TRUE@knetbsd.image.i386: knetbsd.init.i386 $(srcdir)/grub-core/tests/boot/kbsd.spec.txt -@COND_real_platform_TRUE@ TDIR=`mktemp -d "$${TMPDIR:-/tmp}/tmp.XXXXXXXXXX"` && mkdir $$TDIR/dev && mkdir $$TDIR/sbin && cp $< $$TDIR/sbin/init && makefs -F $(srcdir)/grub-core/tests/boot/kbsd.spec.txt -t ffs -s 64k -f 10 -o minfree=0,version=1 $@ $$TDIR && rm -rf $$TDIR - -@COND_real_platform_TRUE@kopenbsd.image.i386: kopenbsd.init.i386 $(srcdir)/grub-core/tests/boot/kopenbsdlabel.txt -@COND_real_platform_TRUE@ TDIR=`mktemp -d "$${TMPDIR:-/tmp}/tmp.XXXXXXXXXX"` && mkdir $$TDIR/dev && mkdir $$TDIR/sbin && cp $< $$TDIR/sbin/init && makefs -F $(srcdir)/grub-core/tests/boot/kbsd.spec.txt -t ffs -s 128k -f 10 -o minfree=0,version=1 $@ $$TDIR && bsdlabel -f -R $@ $(srcdir)/grub-core/tests/boot/kopenbsdlabel.txt && rm -rf $$TDIR || rm -f $@ - -@COND_real_platform_TRUE@kopenbsd.image.x86_64: kopenbsd.init.x86_64 $(srcdir)/grub-core/tests/boot/kopenbsdlabel.txt -@COND_real_platform_TRUE@ TDIR=`mktemp -d "$${TMPDIR:-/tmp}/tmp.XXXXXXXXXX"` && mkdir $$TDIR/dev && mkdir $$TDIR/sbin && cp $< $$TDIR/sbin/init && makefs -F $(srcdir)/grub-core/tests/boot/kbsd.spec.txt -t ffs -s 128k -f 10 -o minfree=0,version=1 $@ $$TDIR && bsdlabel -f -R $@ $(srcdir)/grub-core/tests/boot/kopenbsdlabel.txt && rm -rf $$TDIR || rm -f $@ - -@COND_real_platform_TRUE@knetbsd.miniroot-image.i386.img: knetbsd.image.i386 $(GRUB_PAYLOADS_DIR)/knetbsd.miniroot.i386 -@COND_real_platform_TRUE@ $(TARGET_OBJCOPY) --add-section=miniroot=$< $(GRUB_PAYLOADS_DIR)/knetbsd.miniroot.i386 $@ - -@COND_real_platform_TRUE@kfreebsd-mfsroot.x86_64.img: kfreebsd.init.x86_64 Makefile -@COND_real_platform_TRUE@ TDIR=`mktemp -d "$${TMPDIR:-/tmp}/tmp.XXXXXXXXXX"` && mkdir $$TDIR/dev && mkdir $$TDIR/sbin && cp $< $$TDIR/sbin/init && makefs -t ffs -s 30m -f 1000 -o minfree=0,version=1 $@ $$TDIR && rm -rf $$TDIR - -@COND_real_platform_TRUE@knetbsd.image.x86_64: knetbsd.init.x86_64 $(srcdir)/grub-core/tests/boot/kbsd.spec.txt -@COND_real_platform_TRUE@ TDIR=`mktemp -d "$${TMPDIR:-/tmp}/tmp.XXXXXXXXXX"` && mkdir $$TDIR/dev && mkdir $$TDIR/sbin && cp $< $$TDIR/sbin/init && makefs -F $(srcdir)/grub-core/tests/boot/kbsd.spec.txt -t ffs -s 64k -f 10 -o minfree=0,version=1 $@ $$TDIR && rm -rf $$TDIR - -@COND_real_platform_TRUE@knetbsd.miniroot-image.x86_64.img: knetbsd.image.x86_64 $(GRUB_PAYLOADS_DIR)/knetbsd.miniroot.x86_64 -@COND_real_platform_TRUE@ $(TARGET_OBJCOPY) --add-section=miniroot=$< $(GRUB_PAYLOADS_DIR)/knetbsd.miniroot.x86_64 $@ - -@COND_real_platform_TRUE@kfreebsd-mfsroot.i386.gz: kfreebsd-mfsroot.i386.img -@COND_real_platform_TRUE@ gzip < $< > $@ - -@COND_real_platform_TRUE@bootcheck-kfreebsd-i386: kfreebsd-mfsroot.i386.gz $(GRUB_PAYLOADS_DIR)/kfreebsd.i386 $(GRUB_PAYLOADS_DIR)/kfreebsd_env.i386 $(srcdir)/grub-core/tests/boot/kfreebsd.cfg grub-shell -@COND_real_platform_TRUE@ ./grub-shell --timeout=$(BOOTCHECK_TIMEOUT) --qemu=$(QEMU32) --files=/mfsroot.gz=kfreebsd-mfsroot.i386.gz --files=/kfreebsd=$(GRUB_PAYLOADS_DIR)/kfreebsd.i386 --files=/kfreebsd_env=$(GRUB_PAYLOADS_DIR)/kfreebsd_env.i386 $(srcdir)/grub-core/tests/boot/kfreebsd.cfg | grep $(SUCCESSFUL_BOOT_STRING) > /dev/null - -@COND_real_platform_TRUE@kfreebsd-mfsroot.x86_64.gz: kfreebsd-mfsroot.x86_64.img -@COND_real_platform_TRUE@ gzip < $< > $@ - -@COND_real_platform_TRUE@bootcheck-kfreebsd-x86_64: kfreebsd-mfsroot.x86_64.gz $(GRUB_PAYLOADS_DIR)/kfreebsd.x86_64 $(GRUB_PAYLOADS_DIR)/kfreebsd_env.x86_64 $(srcdir)/grub-core/tests/boot/kfreebsd.cfg grub-shell -@COND_real_platform_TRUE@ ./grub-shell --timeout=$(BOOTCHECK_TIMEOUT) --qemu=qemu-system-x86_64 --files=/mfsroot.gz=kfreebsd-mfsroot.x86_64.gz --files=/kfreebsd=$(GRUB_PAYLOADS_DIR)/kfreebsd.x86_64 --files=/kfreebsd_env=$(GRUB_PAYLOADS_DIR)/kfreebsd_env.x86_64 $(srcdir)/grub-core/tests/boot/kfreebsd.cfg | grep $(SUCCESSFUL_BOOT_STRING) > /dev/null - -@COND_real_platform_TRUE@knetbsd.miniroot-image.i386.gz: knetbsd.miniroot-image.i386.img -@COND_real_platform_TRUE@ gzip < $< > $@ - -@COND_real_platform_TRUE@bootcheck-knetbsd-i386: knetbsd.miniroot-image.i386.gz $(GRUB_PAYLOADS_DIR)/knetbsd.i386 $(srcdir)/grub-core/tests/boot/knetbsd.cfg grub-shell -@COND_real_platform_TRUE@ ./grub-shell --timeout=$(BOOTCHECK_TIMEOUT) --qemu=$(QEMU32) --files=/miniroot.gz=knetbsd.miniroot-image.i386.gz --files=/knetbsd=$(GRUB_PAYLOADS_DIR)/knetbsd.i386 $(srcdir)/grub-core/tests/boot/knetbsd.cfg | grep $(SUCCESSFUL_BOOT_STRING) > /dev/null - -@COND_real_platform_TRUE@bootcheck-kopenbsd-i386: kopenbsd.image.i386 $(GRUB_PAYLOADS_DIR)/kopenbsd.i386 $(srcdir)/grub-core/tests/boot/kopenbsd.cfg grub-shell -@COND_real_platform_TRUE@ ./grub-shell --timeout=$(BOOTCHECK_TIMEOUT) --qemu=$(QEMU32) --files=/ramdisk=kopenbsd.image.i386 --files=/kopenbsd=$(GRUB_PAYLOADS_DIR)/kopenbsd.i386 $(srcdir)/grub-core/tests/boot/kopenbsd.cfg | grep $(SUCCESSFUL_BOOT_STRING) > /dev/null - -@COND_real_platform_TRUE@bootcheck-kopenbsd-x86_64: kopenbsd.image.x86_64 $(GRUB_PAYLOADS_DIR)/kopenbsd.x86_64 $(srcdir)/grub-core/tests/boot/kopenbsd.cfg grub-shell -@COND_real_platform_TRUE@ ./grub-shell --timeout=$(BOOTCHECK_TIMEOUT) --qemu=qemu-system-x86_64 --files=/ramdisk=kopenbsd.image.x86_64 --files=/kopenbsd=$(GRUB_PAYLOADS_DIR)/kopenbsd.x86_64 $(srcdir)/grub-core/tests/boot/kopenbsd.cfg | grep $(SUCCESSFUL_BOOT_STRING) > /dev/null - -@COND_real_platform_TRUE@knetbsd.miniroot-image.x86_64.gz: knetbsd.miniroot-image.x86_64.img -@COND_real_platform_TRUE@ gzip < $< > $@ - -@COND_real_platform_TRUE@bootcheck-knetbsd-x86_64: knetbsd.miniroot-image.x86_64.gz $(GRUB_PAYLOADS_DIR)/knetbsd.x86_64 $(srcdir)/grub-core/tests/boot/knetbsd.cfg grub-shell -@COND_real_platform_TRUE@ ./grub-shell --timeout=$(BOOTCHECK_TIMEOUT) --qemu=qemu-system-x86_64 --files=/miniroot.gz=knetbsd.miniroot-image.x86_64.gz --files=/knetbsd=$(GRUB_PAYLOADS_DIR)/knetbsd.x86_64 $(srcdir)/grub-core/tests/boot/knetbsd.cfg | grep $(SUCCESSFUL_BOOT_STRING) > /dev/null - -@COND_real_platform_TRUE@bootcheck-linux-i386: linux-initramfs.i386 $(GRUB_PAYLOADS_DIR)/linux.i386 $(srcdir)/grub-core/tests/boot/linux.cfg grub-shell -@COND_real_platform_TRUE@ ./grub-shell --timeout=$(BOOTCHECK_TIMEOUT) --qemu=$(QEMU32) --files=/initrd=linux-initramfs.i386 --files=/linux=$(GRUB_PAYLOADS_DIR)/linux.i386 $(srcdir)/grub-core/tests/boot/linux.cfg --qemu-opts="-cpu $(MINIMUM_CPU_LINUX)" | grep $(SUCCESSFUL_BOOT_STRING) > /dev/null - -@COND_real_platform_TRUE@bootcheck-linux-x86_64: linux-initramfs.x86_64 $(GRUB_PAYLOADS_DIR)/linux.x86_64 $(srcdir)/grub-core/tests/boot/linux.cfg grub-shell -@COND_real_platform_TRUE@ ./grub-shell --timeout=$(BOOTCHECK_TIMEOUT) --qemu=qemu-system-x86_64 --files=/initrd=linux-initramfs.x86_64 --files=/linux=$(GRUB_PAYLOADS_DIR)/linux.x86_64 $(srcdir)/grub-core/tests/boot/linux.cfg | grep $(SUCCESSFUL_BOOT_STRING) > /dev/null - -@COND_real_platform_TRUE@bootcheck-linux-mips: linux-initramfs.mips $(GRUB_PAYLOADS_DIR)/linux.mips $(srcdir)/grub-core/tests/boot/linux.cfg grub-shell -@COND_real_platform_TRUE@ ./grub-shell --timeout=$(BOOTCHECK_TIMEOUT) --files=/initrd=linux-initramfs.mips --files=/linux=$(GRUB_PAYLOADS_DIR)/linux.mips $(srcdir)/grub-core/tests/boot/linux.cfg | grep $(SUCCESSFUL_BOOT_STRING) > /dev/null - -@COND_real_platform_TRUE@bootcheck-linux-ppc: linux-initramfs.ppc $(GRUB_PAYLOADS_DIR)/linux.ppc $(srcdir)/grub-core/tests/boot/linux.cfg grub-shell -@COND_real_platform_TRUE@ ./grub-shell --timeout=$(BOOTCHECK_TIMEOUT) --files=/initrd=linux-initramfs.ppc --files=/linux=$(GRUB_PAYLOADS_DIR)/linux.ppc $(srcdir)/grub-core/tests/boot/linux-ppc.cfg | grep $(SUCCESSFUL_BOOT_STRING) > /dev/null - -@COND_real_platform_TRUE@bootcheck-linux-mipsel: linux-initramfs.mipsel $(GRUB_PAYLOADS_DIR)/linux.mipsel $(srcdir)/grub-core/tests/boot/linux.cfg grub-shell -@COND_real_platform_TRUE@ ./grub-shell --timeout=$(BOOTCHECK_TIMEOUT) --files=/initrd=linux-initramfs.mipsel --files=/linux=$(GRUB_PAYLOADS_DIR)/linux.mipsel $(srcdir)/grub-core/tests/boot/linux.cfg | grep $(SUCCESSFUL_BOOT_STRING) > /dev/null - -@COND_real_platform_TRUE@bootcheck-linux-loongson: linux-initramfs.loongson $(GRUB_PAYLOADS_DIR)/linux.loongson $(srcdir)/grub-core/tests/boot/linux.cfg grub-shell -@COND_real_platform_TRUE@ ./grub-shell --timeout=$(BOOTCHECK_TIMEOUT) --files=/initrd=linux-initramfs.loongson --files=/linux=$(GRUB_PAYLOADS_DIR)/linux.loongson $(srcdir)/grub-core/tests/boot/linux.cfg | grep $(SUCCESSFUL_BOOT_STRING) > /dev/null - -@COND_real_platform_TRUE@bootcheck-linux16-i386: linux-initramfs.i386 $(GRUB_PAYLOADS_DIR)/linux.i386 $(srcdir)/grub-core/tests/boot/linux.cfg grub-shell -@COND_real_platform_TRUE@ ./grub-shell --timeout=$(BOOTCHECK_TIMEOUT) --qemu=$(QEMU32) --files=/initrd=linux-initramfs.i386 --files=/linux=$(GRUB_PAYLOADS_DIR)/linux.i386 $(srcdir)/grub-core/tests/boot/linux16.cfg | grep $(SUCCESSFUL_BOOT_STRING) > /dev/null - -@COND_real_platform_TRUE@bootcheck-linux16-x86_64: linux-initramfs.x86_64 $(GRUB_PAYLOADS_DIR)/linux.x86_64 $(srcdir)/grub-core/tests/boot/linux.cfg grub-shell -@COND_real_platform_TRUE@ ./grub-shell --timeout=$(BOOTCHECK_TIMEOUT) --qemu=qemu-system-x86_64 --files=/initrd=linux-initramfs.x86_64 --files=/linux=$(GRUB_PAYLOADS_DIR)/linux.x86_64 $(srcdir)/grub-core/tests/boot/linux16.cfg | grep $(SUCCESSFUL_BOOT_STRING) > /dev/null - -@COND_real_platform_TRUE@bootcheck-multiboot: multiboot.elf $(srcdir)/grub-core/tests/boot/multiboot.cfg grub-shell -@COND_real_platform_TRUE@ ./grub-shell --timeout=$(BOOTCHECK_TIMEOUT) --qemu=$(QEMU32) --files=/multiboot.elf=multiboot.elf $(srcdir)/grub-core/tests/boot/multiboot.cfg | grep $(SUCCESSFUL_BOOT_STRING) > /dev/null - -@COND_real_platform_TRUE@bootcheck-multiboot2: multiboot2.elf $(srcdir)/grub-core/tests/boot/multiboot2.cfg grub-shell -@COND_real_platform_TRUE@ ./grub-shell --timeout=$(BOOTCHECK_TIMEOUT) --qemu=$(QEMU32) --files=/multiboot2.elf=multiboot2.elf $(srcdir)/grub-core/tests/boot/multiboot2.cfg | grep $(SUCCESSFUL_BOOT_STRING) > /dev/null - -@COND_real_platform_TRUE@bootcheck-kfreebsd-aout: kfreebsd.aout $(srcdir)/grub-core/tests/boot/kfreebsd-aout.cfg grub-shell -@COND_real_platform_TRUE@ ./grub-shell --timeout=$(BOOTCHECK_TIMEOUT) --qemu=$(QEMU32) --files=/kfreebsd.aout=kfreebsd.aout $(srcdir)/grub-core/tests/boot/kfreebsd-aout.cfg | grep $(SUCCESSFUL_BOOT_STRING) > /dev/null - -@COND_real_platform_TRUE@bootcheck-pc-chainloader: pc-chainloader.bin $(srcdir)/grub-core/tests/boot/pc-chainloader.cfg grub-shell -@COND_real_platform_TRUE@ ./grub-shell --timeout=$(BOOTCHECK_TIMEOUT) --qemu=$(QEMU32) --files=/pc-chainloader.bin=pc-chainloader.bin $(srcdir)/grub-core/tests/boot/pc-chainloader.cfg | grep $(SUCCESSFUL_BOOT_STRING) > /dev/null - -@COND_real_platform_TRUE@bootcheck-ntldr: ntldr.bin $(srcdir)/grub-core/tests/boot/ntldr.cfg grub-shell -@COND_real_platform_TRUE@ ./grub-shell --timeout=$(BOOTCHECK_TIMEOUT) --qemu=$(QEMU32) --files=/ntldr.bin=ntldr.bin $(srcdir)/grub-core/tests/boot/ntldr.cfg | grep $(SUCCESSFUL_BOOT_STRING) > /dev/null - -@COND_real_platform_TRUE@.PHONY: bootcheck-linux-i386 bootcheck-linux-x86_64 \ -@COND_real_platform_TRUE@ bootcheck-kfreebsd-i386 bootcheck-kfreebsd-x86_64 \ -@COND_real_platform_TRUE@ bootcheck-knetbsd-i386 bootcheck-knetbsd-x86_64 \ -@COND_real_platform_TRUE@ bootcheck-linux-mips FORCE - -@COND_real_platform_TRUE@bootcheck: $(BOOTCHECKS) - -@COND_i386_coreboot_TRUE@@COND_real_platform_TRUE@FS_PAYLOAD_MODULES ?= $(shell cat grub-core/fs.lst) -@COND_i386_coreboot_TRUE@@COND_real_platform_TRUE@default_payload.elf: grub-mkstandalone grub-mkimage FORCE -@COND_i386_coreboot_TRUE@@COND_real_platform_TRUE@ test -f $@ && rm $@ || true -@COND_i386_coreboot_TRUE@@COND_real_platform_TRUE@ pkgdatadir=. ./grub-mkstandalone --grub-mkimage=./grub-mkimage -O i386-coreboot -o $@ --modules='ahci pata ehci uhci ohci usb_keyboard usbms part_msdos ext2 fat at_keyboard part_gpt usbserial_usbdebug cbfs' --install-modules='ls linux search configfile normal cbtime cbls memrw iorw minicmd lsmmap lspci halt reboot hexdump pcidump regexp setpci lsacpi chain test serial multiboot cbmemc linux16 gzio echo help syslinuxcfg xnu $(FS_PAYLOAD_MODULES) password_pbkdf2 $(EXTRA_PAYLOAD_MODULES)' --fonts= --themes= --locales= -d grub-core/ /boot/grub/grub.cfg=$(srcdir)/coreboot.cfg -windowsdir: $(PROGRAMS) $(starfield_DATA) $(platform_DATA) - test -d $(windowsdir) && rm -rf $(windowsdir) || true - test -d $(windowsdir) || mkdir $(windowsdir) - $(MAKE) -C po $(AM_MAKEFLAGS) windowsdir - $(MAKE) -C grub-core $(AM_MAKEFLAGS) windowsdir - test -d $(windowsdir)/themes || mkdir $(windowsdir)/themes - test -d $(windowsdir)/themes/starfield || mkdir $(windowsdir)/themes/starfield - for x in $(PROGRAMS); do \ - if [ x$(STRIP) != x ]; then $(STRIP) $$x -o $(windowsdir)/$$x; \ - else cp -fp $$x $(windowsdir)/$$x; fi; \ - done - for x in $(pkgdata_DATA); do \ - cp -fp $$x $(windowsdir)/$$x; \ - done - for x in $(starfield_DATA); do \ - cp -fp $$x $(windowsdir)/themes/starfield/$$(basename $$x); \ - done - for x in $(GRUB_WINDOWS_EXTRA_DIST); do \ - cp -fp $$x $(windowsdir); \ - done -windowszip: windowsdir - test -f $(windowszip) && rm $(windowszip) || true - zip -r $(windowszip) $(windowsdir) - rm -rf $(windowsdir) - -ChangeLog: FORCE - if test -d $(top_srcdir)/.git; then \ - $(gitlog_to_changelog) --srcdir=$(top_srcdir) --since=$(changelog_start_date) > '$@.tmp'; \ - rm -f '$@'; mv '$@.tmp' '$@'; \ - else \ - touch $@; \ - fi - -syslinux_test: $(top_builddir)/config.status tests/syslinux/ubuntu10.04_grub.cfg - -# Mimic simplify_filename from grub-core/lib/syslinux_parse.c, so that we -# can predict its behaviour in tests. We have to pre-substitute this before -# calling config.status, as config.status offers no reliable way to hook in -# a command between setting ac_abs_top_srcdir and emitting output files. -tests/syslinux/ubuntu10.04_grub.cfg: $(top_builddir)/config.status tests/syslinux/ubuntu10.04_grub.cfg.in - simplified_abs_top_srcdir=`echo "$(abs_top_srcdir)" | sed 's,//,/,g; s,/\./,/,g; :loop; s,/[^/][^/]*/\.\.\(/\|$$\),\1,; t loop'`; \ - sed "s,@simplified_abs_top_srcdir@,$$simplified_abs_top_srcdir,g" $(srcdir)/tests/syslinux/ubuntu10.04_grub.cfg.in | $(top_builddir)/config.status --file=$@:- - -# Tell versions [3.59,3.63) of GNU make to not export all variables. -# Otherwise a system limit (for SysV at least) may be exceeded. -.NOEXPORT: diff --git a/thirdparty/grub-2.04/Makefile.util.am b/thirdparty/grub-2.04/Makefile.util.am deleted file mode 100644 index ef9100495..000000000 --- a/thirdparty/grub-2.04/Makefile.util.am +++ /dev/null @@ -1,1596 +0,0 @@ -libgrubkern_a_SOURCES = -nodist_libgrubkern_a_SOURCES = -libgrubkern_a_CFLAGS = -libgrubkern_a_CPPFLAGS = -libgrubkern_a_CCASFLAGS = -libgrubmods_a_SOURCES = -nodist_libgrubmods_a_SOURCES = -libgrubmods_a_CFLAGS = -libgrubmods_a_CPPFLAGS = -libgrubmods_a_CCASFLAGS = -libgrubgcry_a_SOURCES = -nodist_libgrubgcry_a_SOURCES = -libgrubgcry_a_CFLAGS = -libgrubgcry_a_CPPFLAGS = -libgrubgcry_a_CCASFLAGS = -noinst_LIBRARIES += libgrubkern.a -libgrubkern_a_SOURCES += util/misc.c grub-core/kern/command.c grub-core/kern/device.c grub-core/kern/disk.c grub-core/lib/disk.c util/getroot.c grub-core/osdep/unix/getroot.c grub-core/osdep/getroot.c grub-core/osdep/devmapper/getroot.c grub-core/osdep/relpath.c grub-core/kern/emu/hostdisk.c grub-core/osdep/devmapper/hostdisk.c grub-core/osdep/hostdisk.c grub-core/osdep/unix/hostdisk.c grub-core/osdep/exec.c grub-core/osdep/sleep.c grub-core/osdep/password.c grub-core/kern/emu/misc.c grub-core/kern/emu/mm.c grub-core/kern/env.c grub-core/kern/err.c grub-core/kern/file.c grub-core/kern/fs.c grub-core/kern/list.c grub-core/kern/misc.c grub-core/kern/partition.c grub-core/lib/crypto.c grub-core/disk/luks.c grub-core/disk/geli.c grub-core/disk/cryptodisk.c grub-core/disk/AFSplitter.c grub-core/lib/pbkdf2.c grub-core/commands/extcmd.c grub-core/lib/arg.c grub-core/disk/ldm.c grub-core/disk/diskfilter.c grub-core/partmap/gpt.c grub-core/partmap/msdos.c grub-core/fs/proc.c grub-core/fs/archelp.c -nodist_libgrubkern_a_SOURCES += -libgrubkern_a_CFLAGS += $(AM_CFLAGS) $(CFLAGS_LIBRARY) $(CFLAGS_GNULIB) -libgrubkern_a_CPPFLAGS += $(AM_CPPFLAGS) $(CPPFLAGS_LIBRARY) $(CPPFLAGS_GNULIB) -libgrubkern_a_CCASFLAGS += $(AM_CCASFLAGS) $(CCASFLAGS_LIBRARY) -dist_noinst_DATA += grub-core/kern/disk_common.c grub-core/osdep/unix/relpath.c grub-core/osdep/aros/relpath.c grub-core/osdep/windows/relpath.c -BUILT_SOURCES += $(nodist_libgrubkern_a_SOURCES) -CLEANFILES += $(nodist_libgrubkern_a_SOURCES) -noinst_LIBRARIES += libgrubmods.a -libgrubmods_a_SOURCES += grub-core/commands/blocklist.c grub-core/commands/macbless.c grub-core/commands/xnu_uuid.c grub-core/commands/testload.c grub-core/commands/ls.c grub-core/disk/dmraid_nvidia.c grub-core/disk/loopback.c grub-core/disk/lvm.c grub-core/disk/mdraid_linux.c grub-core/disk/mdraid_linux_be.c grub-core/disk/mdraid1x_linux.c grub-core/disk/raid5_recover.c grub-core/disk/raid6_recover.c grub-core/font/font.c grub-core/gfxmenu/font.c grub-core/normal/charset.c grub-core/video/fb/fbblit.c grub-core/video/fb/fbutil.c grub-core/video/fb/fbfill.c grub-core/video/fb/video_fb.c grub-core/video/video.c grub-core/video/capture.c grub-core/video/colors.c grub-core/unidata.c grub-core/io/bufio.c grub-core/fs/affs.c grub-core/fs/afs.c grub-core/fs/bfs.c grub-core/fs/btrfs.c grub-core/fs/cbfs.c grub-core/fs/cpio.c grub-core/fs/cpio_be.c grub-core/fs/odc.c grub-core/fs/newc.c grub-core/fs/ext2.c grub-core/fs/fat.c grub-core/fs/exfat.c grub-core/fs/f2fs.c grub-core/fs/fshelp.c grub-core/fs/hfs.c grub-core/fs/hfsplus.c grub-core/fs/hfspluscomp.c grub-core/fs/iso9660.c grub-core/fs/jfs.c grub-core/fs/minix.c grub-core/fs/minix2.c grub-core/fs/minix3.c grub-core/fs/minix_be.c grub-core/fs/minix2_be.c grub-core/fs/minix3_be.c grub-core/fs/nilfs2.c grub-core/fs/ntfs.c grub-core/fs/ntfscomp.c grub-core/fs/reiserfs.c grub-core/fs/romfs.c grub-core/fs/sfs.c grub-core/fs/squash4.c grub-core/fs/tar.c grub-core/fs/udf.c grub-core/fs/ufs2.c grub-core/fs/ufs.c grub-core/fs/ufs_be.c grub-core/fs/xfs.c grub-core/fs/zfs/zfscrypt.c grub-core/fs/zfs/zfs.c grub-core/fs/zfs/zfsinfo.c grub-core/fs/zfs/zfs_lzjb.c grub-core/fs/zfs/zfs_lz4.c grub-core/fs/zfs/zfs_sha256.c grub-core/fs/zfs/zfs_fletcher.c grub-core/lib/envblk.c grub-core/lib/hexdump.c grub-core/lib/LzFind.c grub-core/lib/LzmaEnc.c grub-core/lib/crc.c grub-core/lib/adler32.c grub-core/lib/crc64.c grub-core/normal/datetime.c grub-core/normal/misc.c grub-core/partmap/acorn.c grub-core/partmap/amiga.c grub-core/partmap/apple.c grub-core/partmap/sun.c grub-core/partmap/plan.c grub-core/partmap/dvh.c grub-core/partmap/sunpc.c grub-core/partmap/bsdlabel.c grub-core/partmap/dfly.c grub-core/script/function.c grub-core/script/lexer.c grub-core/script/main.c grub-core/script/script.c grub-core/script/argv.c grub-core/io/gzio.c grub-core/io/xzio.c grub-core/io/lzopio.c grub-core/kern/ia64/dl_helper.c grub-core/kern/arm/dl_helper.c grub-core/kern/arm64/dl_helper.c grub-core/lib/minilzo/minilzo.c grub-core/lib/xzembed/xz_dec_bcj.c grub-core/lib/xzembed/xz_dec_lzma2.c grub-core/lib/xzembed/xz_dec_stream.c grub-core/lib/zstd/debug.c grub-core/lib/zstd/entropy_common.c grub-core/lib/zstd/error_private.c grub-core/lib/zstd/fse_decompress.c grub-core/lib/zstd/huf_decompress.c grub-core/lib/zstd/module.c grub-core/lib/zstd/xxhash.c grub-core/lib/zstd/zstd_common.c grub-core/lib/zstd/zstd_decompress.c -nodist_libgrubmods_a_SOURCES += grub_script.tab.c grub_script.yy.c libgrub_a_init.c grub_script.yy.h grub_script.tab.h -libgrubmods_a_CFLAGS += $(AM_CFLAGS) $(CFLAGS_LIBRARY) -fno-builtin -Wno-undef -libgrubmods_a_CPPFLAGS += $(AM_CPPFLAGS) $(CPPFLAGS_LIBRARY) -I$(srcdir)/grub-core/lib/minilzo -I$(srcdir)/grub-core/lib/xzembed -I$(srcdir)/grub-core/lib/zstd -DMINILZO_HAVE_CONFIG_H -libgrubmods_a_CCASFLAGS += $(AM_CCASFLAGS) $(CCASFLAGS_LIBRARY) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_libgrubmods_a_SOURCES) -CLEANFILES += $(nodist_libgrubmods_a_SOURCES) -noinst_LIBRARIES += libgrubgcry.a -libgrubgcry_a_SOURCES += grub-core/lib/libgcrypt-grub/cipher/arcfour.c grub-core/lib/libgcrypt-grub/cipher/blowfish.c grub-core/lib/libgcrypt-grub/cipher/camellia-glue.c grub-core/lib/libgcrypt-grub/cipher/camellia.c grub-core/lib/libgcrypt-grub/cipher/cast5.c grub-core/lib/libgcrypt-grub/cipher/crc.c grub-core/lib/libgcrypt-grub/cipher/des.c grub-core/lib/libgcrypt-grub/cipher/idea.c grub-core/lib/libgcrypt-grub/cipher/md4.c grub-core/lib/libgcrypt-grub/cipher/md5.c grub-core/lib/libgcrypt-grub/cipher/rfc2268.c grub-core/lib/libgcrypt-grub/cipher/rijndael.c grub-core/lib/libgcrypt-grub/cipher/rmd160.c grub-core/lib/libgcrypt-grub/cipher/seed.c grub-core/lib/libgcrypt-grub/cipher/serpent.c grub-core/lib/libgcrypt-grub/cipher/sha1.c grub-core/lib/libgcrypt-grub/cipher/sha256.c grub-core/lib/libgcrypt-grub/cipher/sha512.c grub-core/lib/libgcrypt-grub/cipher/tiger.c grub-core/lib/libgcrypt-grub/cipher/twofish.c grub-core/lib/libgcrypt-grub/cipher/whirlpool.c grub-core/lib/libgcrypt-grub/cipher/init.c -nodist_libgrubgcry_a_SOURCES += -libgrubgcry_a_CFLAGS += $(AM_CFLAGS) $(CFLAGS_LIBRARY) $(CFLAGS_GCRY) -libgrubgcry_a_CPPFLAGS += $(AM_CPPFLAGS) $(CPPFLAGS_LIBRARY) $(CPPFLAGS_GCRY) -libgrubgcry_a_CCASFLAGS += $(AM_CCASFLAGS) $(CCASFLAGS_LIBRARY) -dist_noinst_DATA += grub-core/lib/libgcrypt-grub/cipher/ChangeLog -BUILT_SOURCES += $(nodist_libgrubgcry_a_SOURCES) -CLEANFILES += $(nodist_libgrubgcry_a_SOURCES) -bin_PROGRAMS += grub-mkimage -if COND_MAN_PAGES -man_MANS += grub-mkimage.1 - -grub-mkimage.1: grub-mkimage - chmod a+x grub-mkimage - PATH=$(builddir):$$PATH pkgdatadir=$(builddir) $(HELP2MAN) --section=1 -i $(top_srcdir)/docs/man/grub-mkimage.h2m -o $@ grub-mkimage - -CLEANFILES += grub-mkimage.1 -endif -grub_mkimage_SOURCES = util/grub-mkimage.c util/mkimage.c util/grub-mkimage32.c util/grub-mkimage64.c util/resolve.c grub-core/kern/emu/argp_common.c grub-core/osdep/init.c grub-core/osdep/config.c util/config.c -nodist_grub_mkimage_SOURCES = -grub_mkimage_LDADD = libgrubmods.a libgrubgcry.a libgrubkern.a grub-core/lib/gnulib/libgnu.a $(LIBLZMA) $(LIBINTL) $(LIBDEVMAPPER) $(LIBZFS) $(LIBNVPAIR) $(LIBGEOM) -grub_mkimage_CFLAGS = $(AM_CFLAGS) $(CFLAGS_PROGRAM) -grub_mkimage_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_PROGRAM) -grub_mkimage_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_PROGRAM) -DGRUB_PKGLIBDIR=\"$(pkglibdir)\" -grub_mkimage_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_PROGRAM) -dist_noinst_DATA += grub-core/osdep/aros/config.c grub-core/osdep/windows/config.c grub-core/osdep/unix/config.c util/grub-mkimagexx.c -BUILT_SOURCES += $(nodist_grub_mkimage_SOURCES) -CLEANFILES += $(nodist_grub_mkimage_SOURCES) -bin_PROGRAMS += grub-mkrelpath -if COND_MAN_PAGES -man_MANS += grub-mkrelpath.1 - -grub-mkrelpath.1: grub-mkrelpath - chmod a+x grub-mkrelpath - PATH=$(builddir):$$PATH pkgdatadir=$(builddir) $(HELP2MAN) --section=1 -i $(top_srcdir)/docs/man/grub-mkrelpath.h2m -o $@ grub-mkrelpath - -CLEANFILES += grub-mkrelpath.1 -endif -grub_mkrelpath_SOURCES = util/grub-mkrelpath.c grub-core/kern/emu/argp_common.c grub-core/osdep/init.c -nodist_grub_mkrelpath_SOURCES = -grub_mkrelpath_LDADD = libgrubmods.a libgrubgcry.a libgrubkern.a grub-core/lib/gnulib/libgnu.a $(LIBINTL) $(LIBDEVMAPPER) $(LIBUTIL) $(LIBZFS) $(LIBNVPAIR) $(LIBGEOM) -grub_mkrelpath_CFLAGS = $(AM_CFLAGS) $(CFLAGS_PROGRAM) -grub_mkrelpath_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_PROGRAM) -grub_mkrelpath_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_PROGRAM) -grub_mkrelpath_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_PROGRAM) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_grub_mkrelpath_SOURCES) -CLEANFILES += $(nodist_grub_mkrelpath_SOURCES) -bin_PROGRAMS += grub-script-check -if COND_MAN_PAGES -man_MANS += grub-script-check.1 - -grub-script-check.1: grub-script-check - chmod a+x grub-script-check - PATH=$(builddir):$$PATH pkgdatadir=$(builddir) $(HELP2MAN) --section=1 -i $(top_srcdir)/docs/man/grub-script-check.h2m -o $@ grub-script-check - -CLEANFILES += grub-script-check.1 -endif -grub_script_check_SOURCES = util/grub-script-check.c grub-core/kern/emu/argp_common.c grub-core/osdep/init.c -nodist_grub_script_check_SOURCES = -grub_script_check_LDADD = libgrubmods.a libgrubgcry.a libgrubkern.a grub-core/lib/gnulib/libgnu.a $(LIBINTL) $(LIBDEVMAPPER) $(LIBZFS) $(LIBNVPAIR) $(LIBGEOM) -grub_script_check_CFLAGS = $(AM_CFLAGS) $(CFLAGS_PROGRAM) -grub_script_check_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_PROGRAM) -grub_script_check_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_PROGRAM) -grub_script_check_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_PROGRAM) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_grub_script_check_SOURCES) -CLEANFILES += $(nodist_grub_script_check_SOURCES) -bin_PROGRAMS += grub-editenv -if COND_MAN_PAGES -man_MANS += grub-editenv.1 - -grub-editenv.1: grub-editenv - chmod a+x grub-editenv - PATH=$(builddir):$$PATH pkgdatadir=$(builddir) $(HELP2MAN) --section=1 -i $(top_srcdir)/docs/man/grub-editenv.h2m -o $@ grub-editenv - -CLEANFILES += grub-editenv.1 -endif -grub_editenv_SOURCES = util/grub-editenv.c util/editenv.c grub-core/osdep/init.c -nodist_grub_editenv_SOURCES = -grub_editenv_LDADD = libgrubmods.a libgrubgcry.a libgrubkern.a grub-core/lib/gnulib/libgnu.a $(LIBINTL) $(LIBDEVMAPPER) $(LIBZFS) $(LIBNVPAIR) $(LIBGEOM) -grub_editenv_CFLAGS = $(AM_CFLAGS) $(CFLAGS_PROGRAM) -grub_editenv_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_PROGRAM) -grub_editenv_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_PROGRAM) -grub_editenv_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_PROGRAM) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_grub_editenv_SOURCES) -CLEANFILES += $(nodist_grub_editenv_SOURCES) -bin_PROGRAMS += grub-mkpasswd-pbkdf2 -if COND_MAN_PAGES -man_MANS += grub-mkpasswd-pbkdf2.1 - -grub-mkpasswd-pbkdf2.1: grub-mkpasswd-pbkdf2 - chmod a+x grub-mkpasswd-pbkdf2 - PATH=$(builddir):$$PATH pkgdatadir=$(builddir) $(HELP2MAN) --section=1 -i $(top_srcdir)/docs/man/grub-mkpasswd-pbkdf2.h2m -o $@ grub-mkpasswd-pbkdf2 - -CLEANFILES += grub-mkpasswd-pbkdf2.1 -endif -grub_mkpasswd_pbkdf2_SOURCES = util/grub-mkpasswd-pbkdf2.c grub-core/kern/emu/argp_common.c grub-core/osdep/random.c grub-core/osdep/init.c -nodist_grub_mkpasswd_pbkdf2_SOURCES = -grub_mkpasswd_pbkdf2_LDADD = libgrubmods.a libgrubgcry.a libgrubkern.a grub-core/lib/gnulib/libgnu.a $(LIBINTL) $(LIBDEVMAPPER) $(LIBZFS) $(LIBNVPAIR) $(LIBGEOM) -grub_mkpasswd_pbkdf2_CFLAGS = $(AM_CFLAGS) $(CFLAGS_PROGRAM) -grub_mkpasswd_pbkdf2_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_PROGRAM) -grub_mkpasswd_pbkdf2_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_PROGRAM) -grub_mkpasswd_pbkdf2_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_PROGRAM) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_grub_mkpasswd_pbkdf2_SOURCES) -CLEANFILES += $(nodist_grub_mkpasswd_pbkdf2_SOURCES) -if COND_APPLE_LINKER -bin_PROGRAMS += grub-macho2img -if COND_MAN_PAGES -man_MANS += grub-macho2img.1 - -grub-macho2img.1: grub-macho2img - chmod a+x grub-macho2img - PATH=$(builddir):$$PATH pkgdatadir=$(builddir) $(HELP2MAN) --section=1 -i $(top_srcdir)/docs/man/grub-macho2img.h2m -o $@ grub-macho2img - -CLEANFILES += grub-macho2img.1 -endif -grub_macho2img_SOURCES = util/grub-macho2img.c -nodist_grub_macho2img_SOURCES = -grub_macho2img_LDADD = -grub_macho2img_CFLAGS = $(AM_CFLAGS) $(CFLAGS_PROGRAM) -grub_macho2img_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_PROGRAM) -grub_macho2img_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_PROGRAM) -grub_macho2img_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_PROGRAM) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_grub_macho2img_SOURCES) -CLEANFILES += $(nodist_grub_macho2img_SOURCES) -endif COND_APPLE_LINKER -bin_PROGRAMS += grub-fstest -if COND_MAN_PAGES -man_MANS += grub-fstest.1 - -grub-fstest.1: grub-fstest - chmod a+x grub-fstest - PATH=$(builddir):$$PATH pkgdatadir=$(builddir) $(HELP2MAN) --section=1 -i $(top_srcdir)/docs/man/grub-fstest.h2m -o $@ grub-fstest - -CLEANFILES += grub-fstest.1 -endif -grub_fstest_SOURCES = util/grub-fstest.c grub-core/kern/emu/hostfs.c grub-core/disk/host.c grub-core/osdep/init.c -nodist_grub_fstest_SOURCES = grub_fstest_init.c -grub_fstest_LDADD = libgrubmods.a libgrubgcry.a libgrubkern.a grub-core/lib/gnulib/libgnu.a $(LIBINTL) $(LIBDEVMAPPER) $(LIBUTIL) $(LIBZFS) $(LIBNVPAIR) $(LIBGEOM) -grub_fstest_CFLAGS = $(AM_CFLAGS) $(CFLAGS_PROGRAM) -grub_fstest_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_PROGRAM) -grub_fstest_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_PROGRAM) -grub_fstest_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_PROGRAM) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_grub_fstest_SOURCES) -CLEANFILES += $(nodist_grub_fstest_SOURCES) -if COND_GRUB_MOUNT -bin_PROGRAMS += grub-mount -if COND_MAN_PAGES -man_MANS += grub-mount.1 - -grub-mount.1: grub-mount - chmod a+x grub-mount - PATH=$(builddir):$$PATH pkgdatadir=$(builddir) $(HELP2MAN) --section=1 -i $(top_srcdir)/docs/man/grub-mount.h2m -o $@ grub-mount - -CLEANFILES += grub-mount.1 -endif -grub_mount_SOURCES = util/grub-mount.c grub-core/kern/emu/hostfs.c grub-core/disk/host.c grub-core/osdep/init.c -nodist_grub_mount_SOURCES = grub_fstest_init.c -grub_mount_LDADD = libgrubmods.a libgrubgcry.a libgrubkern.a grub-core/lib/gnulib/libgnu.a $(LIBINTL) $(LIBDEVMAPPER) $(LIBZFS) $(LIBNVPAIR) $(LIBGEOM) -lfuse -grub_mount_CFLAGS = $(AM_CFLAGS) $(CFLAGS_PROGRAM) -grub_mount_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_PROGRAM) -grub_mount_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_PROGRAM) -grub_mount_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_PROGRAM) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_grub_mount_SOURCES) -CLEANFILES += $(nodist_grub_mount_SOURCES) -endif COND_GRUB_MOUNT -if COND_GRUB_MKFONT -bin_PROGRAMS += grub-mkfont -if COND_MAN_PAGES -man_MANS += grub-mkfont.1 - -grub-mkfont.1: grub-mkfont - chmod a+x grub-mkfont - PATH=$(builddir):$$PATH pkgdatadir=$(builddir) $(HELP2MAN) --section=1 -i $(top_srcdir)/docs/man/grub-mkfont.h2m -o $@ grub-mkfont - -CLEANFILES += grub-mkfont.1 -endif -grub_mkfont_SOURCES = util/grub-mkfont.c grub-core/kern/emu/argp_common.c grub-core/osdep/init.c -nodist_grub_mkfont_SOURCES = -grub_mkfont_LDADD = libgrubmods.a libgrubgcry.a libgrubkern.a grub-core/lib/gnulib/libgnu.a $(FREETYPE_LIBS) $(LIBINTL) $(LIBDEVMAPPER) $(LIBZFS) $(LIBNVPAIR) $(LIBGEOM) -grub_mkfont_CFLAGS = $(AM_CFLAGS) $(CFLAGS_PROGRAM) $(FREETYPE_CFLAGS) -grub_mkfont_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_PROGRAM) -grub_mkfont_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_PROGRAM) -DGRUB_MKFONT=1 -grub_mkfont_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_PROGRAM) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_grub_mkfont_SOURCES) -CLEANFILES += $(nodist_grub_mkfont_SOURCES) -endif COND_GRUB_MKFONT -sbin_PROGRAMS += grub-probe -if COND_MAN_PAGES -man_MANS += grub-probe.8 - -grub-probe.8: grub-probe - chmod a+x grub-probe - PATH=$(builddir):$$PATH pkgdatadir=$(builddir) $(HELP2MAN) --section=8 -i $(top_srcdir)/docs/man/grub-probe.h2m -o $@ grub-probe - -CLEANFILES += grub-probe.8 -endif -grub_probe_SOURCES = util/grub-probe.c util/probe.c grub-core/osdep/ofpath.c grub-core/kern/emu/argp_common.c grub-core/osdep/init.c -nodist_grub_probe_SOURCES = -grub_probe_LDADD = libgrubmods.a libgrubgcry.a libgrubkern.a grub-core/lib/gnulib/libgnu.a $(LIBINTL) $(LIBDEVMAPPER) $(LIBUTIL) $(LIBZFS) $(LIBNVPAIR) $(LIBGEOM) -grub_probe_CFLAGS = $(AM_CFLAGS) $(CFLAGS_PROGRAM) -grub_probe_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_PROGRAM) -grub_probe_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_PROGRAM) -grub_probe_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_PROGRAM) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_grub_probe_SOURCES) -CLEANFILES += $(nodist_grub_probe_SOURCES) -sbin_PROGRAMS += grub-bios-setup -if COND_MAN_PAGES -man_MANS += grub-bios-setup.8 - -grub-bios-setup.8: grub-bios-setup - chmod a+x grub-bios-setup - PATH=$(builddir):$$PATH pkgdatadir=$(builddir) $(HELP2MAN) --section=8 -i $(top_srcdir)/docs/man/grub-bios-setup.h2m -o $@ grub-bios-setup - -CLEANFILES += grub-bios-setup.8 -endif -grub_bios_setup_SOURCES = util/grub-setup.c util/setup_bios.c grub-core/kern/emu/argp_common.c grub-core/lib/reed_solomon.c grub-core/osdep/blocklist.c grub-core/osdep/init.c -nodist_grub_bios_setup_SOURCES = -grub_bios_setup_LDADD = libgrubmods.a libgrubkern.a libgrubgcry.a grub-core/lib/gnulib/libgnu.a $(LIBINTL) $(LIBDEVMAPPER) $(LIBUTIL) $(LIBZFS) $(LIBNVPAIR) $(LIBGEOM) -grub_bios_setup_CFLAGS = $(AM_CFLAGS) $(CFLAGS_PROGRAM) -grub_bios_setup_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_PROGRAM) -grub_bios_setup_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_PROGRAM) -DGRUB_SETUP_FUNC=grub_util_bios_setup -grub_bios_setup_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_PROGRAM) -dist_noinst_DATA += util/setup.c grub-core/osdep/generic/blocklist.c grub-core/osdep/linux/blocklist.c grub-core/osdep/windows/blocklist.c -BUILT_SOURCES += $(nodist_grub_bios_setup_SOURCES) -CLEANFILES += $(nodist_grub_bios_setup_SOURCES) -sbin_PROGRAMS += grub-sparc64-setup -if COND_MAN_PAGES -man_MANS += grub-sparc64-setup.8 - -grub-sparc64-setup.8: grub-sparc64-setup - chmod a+x grub-sparc64-setup - PATH=$(builddir):$$PATH pkgdatadir=$(builddir) $(HELP2MAN) --section=8 -i $(top_srcdir)/docs/man/grub-sparc64-setup.h2m -o $@ grub-sparc64-setup - -CLEANFILES += grub-sparc64-setup.8 -endif -grub_sparc64_setup_SOURCES = util/grub-setup.c util/setup_sparc.c grub-core/kern/emu/argp_common.c grub-core/lib/reed_solomon.c grub-core/osdep/ofpath.c grub-core/osdep/blocklist.c grub-core/osdep/init.c -nodist_grub_sparc64_setup_SOURCES = -grub_sparc64_setup_LDADD = libgrubmods.a libgrubkern.a libgrubgcry.a grub-core/lib/gnulib/libgnu.a $(LIBINTL) $(LIBDEVMAPPER) $(LIBUTIL) $(LIBZFS) $(LIBNVPAIR) $(LIBGEOM) -grub_sparc64_setup_CFLAGS = $(AM_CFLAGS) $(CFLAGS_PROGRAM) -grub_sparc64_setup_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_PROGRAM) -grub_sparc64_setup_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_PROGRAM) -DGRUB_SETUP_FUNC=grub_util_sparc_setup -grub_sparc64_setup_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_PROGRAM) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_grub_sparc64_setup_SOURCES) -CLEANFILES += $(nodist_grub_sparc64_setup_SOURCES) -sbin_PROGRAMS += grub-ofpathname -if COND_MAN_PAGES -man_MANS += grub-ofpathname.8 - -grub-ofpathname.8: grub-ofpathname - chmod a+x grub-ofpathname - PATH=$(builddir):$$PATH pkgdatadir=$(builddir) $(HELP2MAN) --section=8 -i $(top_srcdir)/docs/man/grub-ofpathname.h2m -o $@ grub-ofpathname - -CLEANFILES += grub-ofpathname.8 -endif -grub_ofpathname_SOURCES = util/ieee1275/grub-ofpathname.c grub-core/osdep/ofpath.c grub-core/osdep/init.c -nodist_grub_ofpathname_SOURCES = -grub_ofpathname_LDADD = libgrubmods.a libgrubgcry.a libgrubkern.a grub-core/lib/gnulib/libgnu.a $(LIBINTL) $(LIBDEVMAPPER) $(LIBUTIL) $(LIBZFS) $(LIBNVPAIR) $(LIBGEOM) -grub_ofpathname_CFLAGS = $(AM_CFLAGS) $(CFLAGS_PROGRAM) -grub_ofpathname_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_PROGRAM) -grub_ofpathname_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_PROGRAM) -grub_ofpathname_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_PROGRAM) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_grub_ofpathname_SOURCES) -CLEANFILES += $(nodist_grub_ofpathname_SOURCES) -bin_PROGRAMS += grub-mklayout -if COND_MAN_PAGES -man_MANS += grub-mklayout.1 - -grub-mklayout.1: grub-mklayout - chmod a+x grub-mklayout - PATH=$(builddir):$$PATH pkgdatadir=$(builddir) $(HELP2MAN) --section=1 -i $(top_srcdir)/docs/man/grub-mklayout.h2m -o $@ grub-mklayout - -CLEANFILES += grub-mklayout.1 -endif -grub_mklayout_SOURCES = util/grub-mklayout.c grub-core/kern/emu/argp_common.c grub-core/osdep/init.c -nodist_grub_mklayout_SOURCES = -grub_mklayout_LDADD = libgrubmods.a libgrubgcry.a libgrubkern.a grub-core/lib/gnulib/libgnu.a $(LIBINTL) $(LIBDEVMAPPER) $(LIBZFS) $(LIBNVPAIR) $(LIBGEOM) -grub_mklayout_CFLAGS = $(AM_CFLAGS) $(CFLAGS_PROGRAM) -grub_mklayout_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_PROGRAM) -grub_mklayout_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_PROGRAM) -grub_mklayout_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_PROGRAM) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_grub_mklayout_SOURCES) -CLEANFILES += $(nodist_grub_mklayout_SOURCES) -sbin_PROGRAMS += grub-macbless -if COND_MAN_PAGES -man_MANS += grub-macbless.8 - -grub-macbless.8: grub-macbless - chmod a+x grub-macbless - PATH=$(builddir):$$PATH pkgdatadir=$(builddir) $(HELP2MAN) --section=8 -i $(top_srcdir)/docs/man/grub-macbless.h2m -o $@ grub-macbless - -CLEANFILES += grub-macbless.8 -endif -grub_macbless_SOURCES = util/grub-macbless.c grub-core/osdep/init.c grub-core/kern/emu/argp_common.c -nodist_grub_macbless_SOURCES = -grub_macbless_LDADD = libgrubmods.a libgrubgcry.a libgrubkern.a grub-core/lib/gnulib/libgnu.a $(LIBINTL) $(LIBDEVMAPPER) $(LIBUTIL) $(LIBZFS) $(LIBNVPAIR) $(LIBGEOM) -grub_macbless_CFLAGS = $(AM_CFLAGS) $(CFLAGS_PROGRAM) -grub_macbless_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_PROGRAM) -grub_macbless_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_PROGRAM) -grub_macbless_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_PROGRAM) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_grub_macbless_SOURCES) -CLEANFILES += $(nodist_grub_macbless_SOURCES) -if COND_HAVE_EXEC -bin_PROGRAMS += grub-mkrescue -if COND_MAN_PAGES -man_MANS += grub-mkrescue.1 - -grub-mkrescue.1: grub-mkrescue - chmod a+x grub-mkrescue - PATH=$(builddir):$$PATH pkgdatadir=$(builddir) $(HELP2MAN) --section=1 -i $(top_srcdir)/docs/man/grub-mkrescue.h2m -o $@ grub-mkrescue - -CLEANFILES += grub-mkrescue.1 -endif -grub_mkrescue_SOURCES = util/grub-mkrescue.c util/render-label.c util/glue-efi.c util/mkimage.c util/grub-mkimage32.c util/grub-mkimage64.c util/grub-install-common.c util/setup_bios.c util/setup_sparc.c grub-core/lib/reed_solomon.c grub-core/osdep/random.c grub-core/osdep/ofpath.c grub-core/osdep/platform.c grub-core/osdep/platform_unix.c grub-core/osdep/compress.c util/editenv.c grub-core/osdep/blocklist.c grub-core/osdep/config.c util/config.c grub-core/kern/emu/hostfs.c grub-core/disk/host.c util/resolve.c grub-core/kern/emu/argp_common.c grub-core/osdep/init.c -nodist_grub_mkrescue_SOURCES = -grub_mkrescue_LDADD = $(LIBLZMA) libgrubmods.a libgrubgcry.a libgrubkern.a grub-core/lib/gnulib/libgnu.a $(LIBINTL) $(LIBDEVMAPPER) $(LIBUTIL) $(LIBZFS) $(LIBNVPAIR) $(LIBGEOM) -grub_mkrescue_CFLAGS = $(AM_CFLAGS) $(CFLAGS_PROGRAM) -grub_mkrescue_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_PROGRAM) -grub_mkrescue_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_PROGRAM) -grub_mkrescue_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_PROGRAM) -dist_noinst_DATA += grub-core/osdep/unix/compress.c grub-core/osdep/basic/compress.c -BUILT_SOURCES += $(nodist_grub_mkrescue_SOURCES) -CLEANFILES += $(nodist_grub_mkrescue_SOURCES) -endif COND_HAVE_EXEC -bin_PROGRAMS += grub-mkstandalone -if COND_MAN_PAGES -man_MANS += grub-mkstandalone.1 - -grub-mkstandalone.1: grub-mkstandalone - chmod a+x grub-mkstandalone - PATH=$(builddir):$$PATH pkgdatadir=$(builddir) $(HELP2MAN) --section=1 -i $(top_srcdir)/docs/man/grub-mkstandalone.h2m -o $@ grub-mkstandalone - -CLEANFILES += grub-mkstandalone.1 -endif -grub_mkstandalone_SOURCES = util/grub-mkstandalone.c util/render-label.c util/glue-efi.c util/mkimage.c util/grub-mkimage32.c util/grub-mkimage64.c util/grub-install-common.c util/setup_bios.c util/setup_sparc.c grub-core/lib/reed_solomon.c grub-core/osdep/random.c grub-core/osdep/ofpath.c grub-core/osdep/platform.c grub-core/osdep/platform_unix.c grub-core/osdep/compress.c util/editenv.c grub-core/osdep/blocklist.c grub-core/osdep/config.c util/config.c grub-core/kern/emu/hostfs.c grub-core/disk/host.c util/resolve.c grub-core/kern/emu/argp_common.c grub-core/osdep/init.c -nodist_grub_mkstandalone_SOURCES = -grub_mkstandalone_LDADD = $(LIBLZMA) libgrubmods.a libgrubgcry.a libgrubkern.a grub-core/lib/gnulib/libgnu.a $(LIBINTL) $(LIBDEVMAPPER) $(LIBUTIL) $(LIBZFS) $(LIBNVPAIR) $(LIBGEOM) -grub_mkstandalone_CFLAGS = $(AM_CFLAGS) $(CFLAGS_PROGRAM) -grub_mkstandalone_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_PROGRAM) -grub_mkstandalone_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_PROGRAM) -grub_mkstandalone_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_PROGRAM) -dist_noinst_DATA += grub-core/osdep/linux/platform.c grub-core/osdep/windows/platform.c grub-core/osdep/basic/platform.c grub-core/osdep/basic/no_platform.c grub-core/osdep/unix/platform.c -BUILT_SOURCES += $(nodist_grub_mkstandalone_SOURCES) -CLEANFILES += $(nodist_grub_mkstandalone_SOURCES) -sbin_PROGRAMS += grub-install -if COND_MAN_PAGES -man_MANS += grub-install.8 - -grub-install.8: grub-install - chmod a+x grub-install - PATH=$(builddir):$$PATH pkgdatadir=$(builddir) $(HELP2MAN) --section=8 -i $(top_srcdir)/docs/man/grub-install.h2m -o $@ grub-install - -CLEANFILES += grub-install.8 -endif -grub_install_SOURCES = util/grub-install.c util/probe.c util/mkimage.c util/grub-mkimage32.c util/grub-mkimage64.c util/grub-install-common.c util/setup_bios.c util/setup_sparc.c grub-core/lib/reed_solomon.c grub-core/osdep/random.c grub-core/osdep/ofpath.c grub-core/osdep/platform.c grub-core/osdep/platform_unix.c grub-core/osdep/compress.c util/editenv.c grub-core/osdep/blocklist.c grub-core/osdep/config.c util/config.c util/render-label.c grub-core/kern/emu/hostfs.c grub-core/disk/host.c util/resolve.c grub-core/kern/emu/argp_common.c grub-core/osdep/init.c -nodist_grub_install_SOURCES = -grub_install_LDADD = $(LIBLZMA) libgrubmods.a libgrubgcry.a libgrubkern.a grub-core/lib/gnulib/libgnu.a $(LIBINTL) $(LIBDEVMAPPER) $(LIBUTIL) $(LIBZFS) $(LIBNVPAIR) $(LIBGEOM) -grub_install_CFLAGS = $(AM_CFLAGS) $(CFLAGS_PROGRAM) -grub_install_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_PROGRAM) -grub_install_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_PROGRAM) -grub_install_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_PROGRAM) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_grub_install_SOURCES) -CLEANFILES += $(nodist_grub_install_SOURCES) -bin_PROGRAMS += grub-mknetdir -if COND_MAN_PAGES -man_MANS += grub-mknetdir.1 - -grub-mknetdir.1: grub-mknetdir - chmod a+x grub-mknetdir - PATH=$(builddir):$$PATH pkgdatadir=$(builddir) $(HELP2MAN) --section=1 -i $(top_srcdir)/docs/man/grub-mknetdir.h2m -o $@ grub-mknetdir - -CLEANFILES += grub-mknetdir.1 -endif -grub_mknetdir_SOURCES = util/grub-mknetdir.c util/mkimage.c util/grub-mkimage32.c util/grub-mkimage64.c util/grub-install-common.c util/setup_bios.c util/setup_sparc.c grub-core/lib/reed_solomon.c grub-core/osdep/random.c grub-core/osdep/ofpath.c grub-core/osdep/platform.c grub-core/osdep/platform_unix.c grub-core/osdep/compress.c util/editenv.c grub-core/osdep/blocklist.c grub-core/osdep/config.c util/config.c util/resolve.c grub-core/kern/emu/argp_common.c grub-core/osdep/init.c -nodist_grub_mknetdir_SOURCES = -grub_mknetdir_LDADD = $(LIBLZMA) libgrubmods.a libgrubgcry.a libgrubkern.a grub-core/lib/gnulib/libgnu.a $(LIBINTL) $(LIBDEVMAPPER) $(LIBUTIL) $(LIBZFS) $(LIBNVPAIR) $(LIBGEOM) -grub_mknetdir_CFLAGS = $(AM_CFLAGS) $(CFLAGS_PROGRAM) -grub_mknetdir_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_PROGRAM) -grub_mknetdir_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_PROGRAM) -grub_mknetdir_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_PROGRAM) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_grub_mknetdir_SOURCES) -CLEANFILES += $(nodist_grub_mknetdir_SOURCES) -check_PROGRAMS += example_unit_test -TESTS += example_unit_test -example_unit_test_SOURCES = tests/example_unit_test.c tests/lib/unit_test.c grub-core/kern/list.c grub-core/kern/misc.c grub-core/tests/lib/test.c -nodist_example_unit_test_SOURCES = -example_unit_test_LDADD = libgrubmods.a libgrubgcry.a libgrubkern.a grub-core/lib/gnulib/libgnu.a $(LIBDEVMAPPER) $(LIBZFS) $(LIBNVPAIR) $(LIBGEOM) -example_unit_test_CFLAGS = $(AM_CFLAGS) $(CFLAGS_PROGRAM) -example_unit_test_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_PROGRAM) -example_unit_test_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_PROGRAM) -example_unit_test_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_PROGRAM) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_example_unit_test_SOURCES) -CLEANFILES += $(nodist_example_unit_test_SOURCES) -check_PROGRAMS += printf_test -TESTS += printf_test -printf_test_SOURCES = tests/printf_unit_test.c tests/lib/unit_test.c grub-core/kern/list.c grub-core/kern/misc.c grub-core/tests/lib/test.c -nodist_printf_test_SOURCES = -printf_test_LDADD = libgrubmods.a libgrubgcry.a libgrubkern.a grub-core/lib/gnulib/libgnu.a $(LIBDEVMAPPER) $(LIBZFS) $(LIBNVPAIR) $(LIBGEOM) -printf_test_CFLAGS = $(AM_CFLAGS) $(CFLAGS_PROGRAM) -printf_test_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_PROGRAM) -printf_test_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_PROGRAM) -printf_test_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_PROGRAM) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_printf_test_SOURCES) -CLEANFILES += $(nodist_printf_test_SOURCES) -check_PROGRAMS += date_test -TESTS += date_test -date_test_SOURCES = tests/date_unit_test.c tests/lib/unit_test.c grub-core/kern/list.c grub-core/kern/misc.c grub-core/tests/lib/test.c -nodist_date_test_SOURCES = -date_test_LDADD = libgrubmods.a libgrubgcry.a libgrubkern.a grub-core/lib/gnulib/libgnu.a $(LIBDEVMAPPER) $(LIBZFS) $(LIBNVPAIR) $(LIBGEOM) -date_test_CFLAGS = $(AM_CFLAGS) $(CFLAGS_PROGRAM) -date_test_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_PROGRAM) -date_test_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_PROGRAM) -date_test_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_PROGRAM) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_date_test_SOURCES) -CLEANFILES += $(nodist_date_test_SOURCES) -if COND_HAVE_CXX -check_PROGRAMS += priority_queue_unit_test -TESTS += priority_queue_unit_test -priority_queue_unit_test_SOURCES = tests/priority_queue_unit_test.cc tests/lib/unit_test.c grub-core/kern/list.c grub-core/kern/misc.c grub-core/tests/lib/test.c grub-core/lib/priority_queue.c -nodist_priority_queue_unit_test_SOURCES = -priority_queue_unit_test_LDADD = libgrubmods.a libgrubgcry.a libgrubkern.a grub-core/lib/gnulib/libgnu.a $(LIBDEVMAPPER) $(LIBZFS) $(LIBNVPAIR) $(LIBGEOM) -priority_queue_unit_test_CFLAGS = $(AM_CFLAGS) $(CFLAGS_PROGRAM) -priority_queue_unit_test_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_PROGRAM) -priority_queue_unit_test_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_PROGRAM) -priority_queue_unit_test_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_PROGRAM) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_priority_queue_unit_test_SOURCES) -CLEANFILES += $(nodist_priority_queue_unit_test_SOURCES) -endif COND_HAVE_CXX -check_PROGRAMS += cmp_test -TESTS += cmp_test -cmp_test_SOURCES = tests/cmp_unit_test.c tests/lib/unit_test.c grub-core/kern/list.c grub-core/kern/misc.c grub-core/tests/lib/test.c -nodist_cmp_test_SOURCES = -cmp_test_LDADD = libgrubmods.a libgrubgcry.a libgrubkern.a grub-core/lib/gnulib/libgnu.a $(LIBDEVMAPPER) $(LIBZFS) $(LIBNVPAIR) $(LIBGEOM) -cmp_test_CFLAGS = $(AM_CFLAGS) $(CFLAGS_PROGRAM) -cmp_test_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_PROGRAM) -cmp_test_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_PROGRAM) -cmp_test_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_PROGRAM) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_cmp_test_SOURCES) -CLEANFILES += $(nodist_cmp_test_SOURCES) -bin_PROGRAMS += grub-menulst2cfg -if COND_MAN_PAGES -man_MANS += grub-menulst2cfg.1 - -grub-menulst2cfg.1: grub-menulst2cfg - chmod a+x grub-menulst2cfg - PATH=$(builddir):$$PATH pkgdatadir=$(builddir) $(HELP2MAN) --section=1 -i $(top_srcdir)/docs/man/grub-menulst2cfg.h2m -o $@ grub-menulst2cfg - -CLEANFILES += grub-menulst2cfg.1 -endif -grub_menulst2cfg_SOURCES = util/grub-menulst2cfg.c grub-core/lib/legacy_parse.c grub-core/lib/i386/pc/vesa_modes_table.c grub-core/osdep/init.c -nodist_grub_menulst2cfg_SOURCES = -grub_menulst2cfg_LDADD = libgrubmods.a libgrubgcry.a libgrubkern.a grub-core/lib/gnulib/libgnu.a $(LIBINTL) $(LIBDEVMAPPER) $(LIBZFS) $(LIBNVPAIR) $(LIBGEOM) -grub_menulst2cfg_CFLAGS = $(AM_CFLAGS) $(CFLAGS_PROGRAM) -grub_menulst2cfg_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_PROGRAM) -grub_menulst2cfg_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_PROGRAM) -grub_menulst2cfg_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_PROGRAM) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_grub_menulst2cfg_SOURCES) -CLEANFILES += $(nodist_grub_menulst2cfg_SOURCES) -bin_PROGRAMS += grub-syslinux2cfg -if COND_MAN_PAGES -man_MANS += grub-syslinux2cfg.1 - -grub-syslinux2cfg.1: grub-syslinux2cfg - chmod a+x grub-syslinux2cfg - PATH=$(builddir):$$PATH pkgdatadir=$(builddir) $(HELP2MAN) --section=1 -i $(top_srcdir)/docs/man/grub-syslinux2cfg.h2m -o $@ grub-syslinux2cfg - -CLEANFILES += grub-syslinux2cfg.1 -endif -grub_syslinux2cfg_SOURCES = util/grub-syslinux2cfg.c grub-core/lib/syslinux_parse.c grub-core/lib/getline.c grub-core/osdep/init.c grub-core/kern/emu/hostfs.c grub-core/disk/host.c grub-core/kern/emu/argp_common.c -nodist_grub_syslinux2cfg_SOURCES = -grub_syslinux2cfg_LDADD = libgrubmods.a libgrubgcry.a libgrubkern.a grub-core/lib/gnulib/libgnu.a $(LIBINTL) $(LIBDEVMAPPER) $(LIBZFS) $(LIBNVPAIR) $(LIBGEOM) -grub_syslinux2cfg_CFLAGS = $(AM_CFLAGS) $(CFLAGS_PROGRAM) -grub_syslinux2cfg_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_PROGRAM) -grub_syslinux2cfg_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_PROGRAM) -grub_syslinux2cfg_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_PROGRAM) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_grub_syslinux2cfg_SOURCES) -CLEANFILES += $(nodist_grub_syslinux2cfg_SOURCES) -bin_PROGRAMS += grub-glue-efi -if COND_MAN_PAGES -man_MANS += grub-glue-efi.1 - -grub-glue-efi.1: grub-glue-efi - chmod a+x grub-glue-efi - PATH=$(builddir):$$PATH pkgdatadir=$(builddir) $(HELP2MAN) --section=1 -i $(top_srcdir)/docs/man/grub-glue-efi.h2m -o $@ grub-glue-efi - -CLEANFILES += grub-glue-efi.1 -endif -grub_glue_efi_SOURCES = util/grub-glue-efi.c util/glue-efi.c grub-core/kern/emu/argp_common.c grub-core/osdep/init.c -nodist_grub_glue_efi_SOURCES = -grub_glue_efi_LDADD = libgrubmods.a libgrubgcry.a libgrubkern.a grub-core/lib/gnulib/libgnu.a $(LIBINTL) $(LIBDEVMAPPER) $(LIBZFS) $(LIBNVPAIR) $(LIBGEOM) -grub_glue_efi_CFLAGS = $(AM_CFLAGS) $(CFLAGS_PROGRAM) -grub_glue_efi_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_PROGRAM) -grub_glue_efi_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_PROGRAM) -grub_glue_efi_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_PROGRAM) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_grub_glue_efi_SOURCES) -CLEANFILES += $(nodist_grub_glue_efi_SOURCES) -bin_PROGRAMS += grub-render-label -if COND_MAN_PAGES -man_MANS += grub-render-label.1 - -grub-render-label.1: grub-render-label - chmod a+x grub-render-label - PATH=$(builddir):$$PATH pkgdatadir=$(builddir) $(HELP2MAN) --section=1 -i $(top_srcdir)/docs/man/grub-render-label.h2m -o $@ grub-render-label - -CLEANFILES += grub-render-label.1 -endif -grub_render_label_SOURCES = util/grub-render-label.c util/render-label.c grub-core/kern/emu/argp_common.c grub-core/kern/emu/hostfs.c grub-core/disk/host.c grub-core/osdep/init.c -nodist_grub_render_label_SOURCES = -grub_render_label_LDADD = libgrubmods.a libgrubgcry.a libgrubkern.a grub-core/lib/gnulib/libgnu.a $(LIBINTL) $(LIBDEVMAPPER) $(LIBZFS) $(LIBNVPAIR) $(LIBGEOM) -grub_render_label_CFLAGS = $(AM_CFLAGS) $(CFLAGS_PROGRAM) -grub_render_label_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_PROGRAM) -grub_render_label_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_PROGRAM) -grub_render_label_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_PROGRAM) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_grub_render_label_SOURCES) -CLEANFILES += $(nodist_grub_render_label_SOURCES) -bin_PROGRAMS += grub-file -if COND_MAN_PAGES -man_MANS += grub-file.1 - -grub-file.1: grub-file - chmod a+x grub-file - PATH=$(builddir):$$PATH pkgdatadir=$(builddir) $(HELP2MAN) --section=1 -i $(top_srcdir)/docs/man/grub-file.h2m -o $@ grub-file - -CLEANFILES += grub-file.1 -endif -grub_file_SOURCES = util/grub-file.c util/render-label.c grub-core/commands/file.c grub-core/commands/file32.c grub-core/commands/file64.c grub-core/loader/i386/xen_file.c grub-core/loader/i386/xen_file32.c grub-core/loader/i386/xen_file64.c grub-core/io/offset.c grub-core/kern/elf.c grub-core/loader/lzss.c grub-core/loader/macho.c grub-core/loader/macho32.c grub-core/loader/macho64.c grub-core/kern/emu/hostfs.c grub-core/disk/host.c grub-core/osdep/init.c -nodist_grub_file_SOURCES = -grub_file_LDADD = libgrubmods.a libgrubgcry.a libgrubkern.a grub-core/lib/gnulib/libgnu.a $(LIBINTL) $(LIBDEVMAPPER) $(LIBZFS) $(LIBNVPAIR) $(LIBGEOM) -grub_file_CFLAGS = $(AM_CFLAGS) $(CFLAGS_PROGRAM) -grub_file_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_PROGRAM) -grub_file_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_PROGRAM) -grub_file_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_PROGRAM) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_grub_file_SOURCES) -CLEANFILES += $(nodist_grub_file_SOURCES) -grubconf_SCRIPTS += 00_header - -00_header: $(top_builddir)/config.status util/grub.d/00_header.in - (for x in util/grub.d/00_header.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x 00_header - -CLEANFILES += 00_header -EXTRA_DIST += -dist_noinst_DATA += util/grub.d/00_header.in -if COND_HOST_WINDOWS -grubconf_SCRIPTS += 10_windows - -10_windows: $(top_builddir)/config.status util/grub.d/10_windows.in - (for x in util/grub.d/10_windows.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x 10_windows - -CLEANFILES += 10_windows -EXTRA_DIST += -dist_noinst_DATA += util/grub.d/10_windows.in -endif COND_HOST_WINDOWS -if COND_HOST_HURD -grubconf_SCRIPTS += 10_hurd - -10_hurd: $(top_builddir)/config.status util/grub.d/10_hurd.in - (for x in util/grub.d/10_hurd.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x 10_hurd - -CLEANFILES += 10_hurd -EXTRA_DIST += -dist_noinst_DATA += util/grub.d/10_hurd.in -endif COND_HOST_HURD -if COND_HOST_KFREEBSD -grubconf_SCRIPTS += 10_kfreebsd - -10_kfreebsd: $(top_builddir)/config.status util/grub.d/10_kfreebsd.in - (for x in util/grub.d/10_kfreebsd.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x 10_kfreebsd - -CLEANFILES += 10_kfreebsd -EXTRA_DIST += -dist_noinst_DATA += util/grub.d/10_kfreebsd.in -endif COND_HOST_KFREEBSD -if COND_HOST_ILLUMOS -grubconf_SCRIPTS += 10_illumos - -10_illumos: $(top_builddir)/config.status util/grub.d/10_illumos.in - (for x in util/grub.d/10_illumos.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x 10_illumos - -CLEANFILES += 10_illumos -EXTRA_DIST += -dist_noinst_DATA += util/grub.d/10_illumos.in -endif COND_HOST_ILLUMOS -if COND_HOST_NETBSD -grubconf_SCRIPTS += 10_netbsd - -10_netbsd: $(top_builddir)/config.status util/grub.d/10_netbsd.in - (for x in util/grub.d/10_netbsd.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x 10_netbsd - -CLEANFILES += 10_netbsd -EXTRA_DIST += -dist_noinst_DATA += util/grub.d/10_netbsd.in -endif COND_HOST_NETBSD -if COND_HOST_LINUX -grubconf_SCRIPTS += 10_linux - -10_linux: $(top_builddir)/config.status util/grub.d/10_linux.in - (for x in util/grub.d/10_linux.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x 10_linux - -CLEANFILES += 10_linux -EXTRA_DIST += -dist_noinst_DATA += util/grub.d/10_linux.in -endif COND_HOST_LINUX -if COND_HOST_XNU -grubconf_SCRIPTS += 10_xnu - -10_xnu: $(top_builddir)/config.status util/grub.d/10_xnu.in - (for x in util/grub.d/10_xnu.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x 10_xnu - -CLEANFILES += 10_xnu -EXTRA_DIST += -dist_noinst_DATA += util/grub.d/10_xnu.in -endif COND_HOST_XNU -if COND_HOST_LINUX -grubconf_SCRIPTS += 20_linux_xen - -20_linux_xen: $(top_builddir)/config.status util/grub.d/20_linux_xen.in - (for x in util/grub.d/20_linux_xen.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x 20_linux_xen - -CLEANFILES += 20_linux_xen -EXTRA_DIST += -dist_noinst_DATA += util/grub.d/20_linux_xen.in -endif COND_HOST_LINUX -grubconf_SCRIPTS += 30_os-prober - -30_os-prober: $(top_builddir)/config.status util/grub.d/30_os-prober.in - (for x in util/grub.d/30_os-prober.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x 30_os-prober - -CLEANFILES += 30_os-prober -EXTRA_DIST += -dist_noinst_DATA += util/grub.d/30_os-prober.in -grubconf_SCRIPTS += 40_custom - -40_custom: $(top_builddir)/config.status util/grub.d/40_custom.in - (for x in util/grub.d/40_custom.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x 40_custom - -CLEANFILES += 40_custom -EXTRA_DIST += -dist_noinst_DATA += util/grub.d/40_custom.in -grubconf_SCRIPTS += 41_custom - -41_custom: $(top_builddir)/config.status util/grub.d/41_custom.in - (for x in util/grub.d/41_custom.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x 41_custom - -CLEANFILES += 41_custom -EXTRA_DIST += -dist_noinst_DATA += util/grub.d/41_custom.in -sbin_SCRIPTS += grub-mkconfig -if COND_MAN_PAGES -man_MANS += grub-mkconfig.8 - -grub-mkconfig.8: grub-mkconfig grub-mkconfig_lib - chmod a+x grub-mkconfig - PATH=$(builddir):$$PATH pkgdatadir=$(builddir) $(HELP2MAN) --section=8 -i $(top_srcdir)/docs/man/grub-mkconfig.h2m -o $@ grub-mkconfig - -CLEANFILES += grub-mkconfig.8 -endif - -grub-mkconfig: $(top_builddir)/config.status util/grub-mkconfig.in - (for x in util/grub-mkconfig.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x grub-mkconfig - -CLEANFILES += grub-mkconfig -EXTRA_DIST += -dist_noinst_DATA += util/grub-mkconfig.in -sbin_SCRIPTS += grub-set-default -if COND_MAN_PAGES -man_MANS += grub-set-default.8 - -grub-set-default.8: grub-set-default grub-mkconfig_lib - chmod a+x grub-set-default - PATH=$(builddir):$$PATH pkgdatadir=$(builddir) $(HELP2MAN) --section=8 -i $(top_srcdir)/docs/man/grub-set-default.h2m -o $@ grub-set-default - -CLEANFILES += grub-set-default.8 -endif - -grub-set-default: $(top_builddir)/config.status util/grub-set-default.in - (for x in util/grub-set-default.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x grub-set-default - -CLEANFILES += grub-set-default -EXTRA_DIST += -dist_noinst_DATA += util/grub-set-default.in -sbin_SCRIPTS += grub-reboot -if COND_MAN_PAGES -man_MANS += grub-reboot.8 - -grub-reboot.8: grub-reboot grub-mkconfig_lib - chmod a+x grub-reboot - PATH=$(builddir):$$PATH pkgdatadir=$(builddir) $(HELP2MAN) --section=8 -i $(top_srcdir)/docs/man/grub-reboot.h2m -o $@ grub-reboot - -CLEANFILES += grub-reboot.8 -endif - -grub-reboot: $(top_builddir)/config.status util/grub-reboot.in - (for x in util/grub-reboot.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x grub-reboot - -CLEANFILES += grub-reboot -EXTRA_DIST += -dist_noinst_DATA += util/grub-reboot.in -noinst_SCRIPTS += grub-mkconfig_lib - -grub-mkconfig_lib: $(top_builddir)/config.status util/grub-mkconfig_lib.in - (for x in util/grub-mkconfig_lib.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x grub-mkconfig_lib - -CLEANFILES += grub-mkconfig_lib -EXTRA_DIST += -dist_noinst_DATA += util/grub-mkconfig_lib.in -bin_SCRIPTS += grub-kbdcomp -if COND_MAN_PAGES -man_MANS += grub-kbdcomp.1 - -grub-kbdcomp.1: grub-kbdcomp grub-mkconfig_lib - chmod a+x grub-kbdcomp - PATH=$(builddir):$$PATH pkgdatadir=$(builddir) $(HELP2MAN) --section=1 -i $(top_srcdir)/docs/man/grub-kbdcomp.h2m -o $@ grub-kbdcomp - -CLEANFILES += grub-kbdcomp.1 -endif - -grub-kbdcomp: $(top_builddir)/config.status util/grub-kbdcomp.in - (for x in util/grub-kbdcomp.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x grub-kbdcomp - -CLEANFILES += grub-kbdcomp -EXTRA_DIST += -dist_noinst_DATA += util/grub-kbdcomp.in -noinst_SCRIPTS += grub-shell - -grub-shell: $(top_builddir)/config.status tests/util/grub-shell.in - (for x in tests/util/grub-shell.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x grub-shell - -CLEANFILES += grub-shell -EXTRA_DIST += -dist_noinst_DATA += tests/util/grub-shell.in -noinst_SCRIPTS += grub-shell-tester - -grub-shell-tester: $(top_builddir)/config.status tests/util/grub-shell-tester.in - (for x in tests/util/grub-shell-tester.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x grub-shell-tester - -CLEANFILES += grub-shell-tester -EXTRA_DIST += -dist_noinst_DATA += tests/util/grub-shell-tester.in -noinst_SCRIPTS += grub-fs-tester - -grub-fs-tester: $(top_builddir)/config.status tests/util/grub-fs-tester.in garbage-gen$(BUILD_EXEEXT) - (for x in tests/util/grub-fs-tester.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x grub-fs-tester - -CLEANFILES += grub-fs-tester -EXTRA_DIST += -dist_noinst_DATA += tests/util/grub-fs-tester.in -check_SCRIPTS += ext234_test -TESTS += ext234_test - -ext234_test: $(top_builddir)/config.status tests/ext234_test.in - (for x in tests/ext234_test.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x ext234_test - -CLEANFILES += ext234_test -EXTRA_DIST += -dist_noinst_DATA += tests/ext234_test.in -check_SCRIPTS += squashfs_test -TESTS += squashfs_test - -squashfs_test: $(top_builddir)/config.status tests/squashfs_test.in - (for x in tests/squashfs_test.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x squashfs_test - -CLEANFILES += squashfs_test -EXTRA_DIST += -dist_noinst_DATA += tests/squashfs_test.in -check_SCRIPTS += iso9660_test -TESTS += iso9660_test - -iso9660_test: $(top_builddir)/config.status tests/iso9660_test.in - (for x in tests/iso9660_test.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x iso9660_test - -CLEANFILES += iso9660_test -EXTRA_DIST += -dist_noinst_DATA += tests/iso9660_test.in -check_SCRIPTS += hfsplus_test -TESTS += hfsplus_test - -hfsplus_test: $(top_builddir)/config.status tests/hfsplus_test.in - (for x in tests/hfsplus_test.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x hfsplus_test - -CLEANFILES += hfsplus_test -EXTRA_DIST += -dist_noinst_DATA += tests/hfsplus_test.in -check_SCRIPTS += ntfs_test -TESTS += ntfs_test - -ntfs_test: $(top_builddir)/config.status tests/ntfs_test.in - (for x in tests/ntfs_test.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x ntfs_test - -CLEANFILES += ntfs_test -EXTRA_DIST += -dist_noinst_DATA += tests/ntfs_test.in -check_SCRIPTS += reiserfs_test -TESTS += reiserfs_test - -reiserfs_test: $(top_builddir)/config.status tests/reiserfs_test.in - (for x in tests/reiserfs_test.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x reiserfs_test - -CLEANFILES += reiserfs_test -EXTRA_DIST += -dist_noinst_DATA += tests/reiserfs_test.in -check_SCRIPTS += fat_test -TESTS += fat_test - -fat_test: $(top_builddir)/config.status tests/fat_test.in - (for x in tests/fat_test.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x fat_test - -CLEANFILES += fat_test -EXTRA_DIST += -dist_noinst_DATA += tests/fat_test.in -check_SCRIPTS += minixfs_test -TESTS += minixfs_test - -minixfs_test: $(top_builddir)/config.status tests/minixfs_test.in - (for x in tests/minixfs_test.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x minixfs_test - -CLEANFILES += minixfs_test -EXTRA_DIST += -dist_noinst_DATA += tests/minixfs_test.in -check_SCRIPTS += xfs_test -TESTS += xfs_test - -xfs_test: $(top_builddir)/config.status tests/xfs_test.in - (for x in tests/xfs_test.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x xfs_test - -CLEANFILES += xfs_test -EXTRA_DIST += -dist_noinst_DATA += tests/xfs_test.in -check_SCRIPTS += f2fs_test -TESTS += f2fs_test - -f2fs_test: $(top_builddir)/config.status tests/f2fs_test.in - (for x in tests/f2fs_test.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x f2fs_test - -CLEANFILES += f2fs_test -EXTRA_DIST += -dist_noinst_DATA += tests/f2fs_test.in -check_SCRIPTS += nilfs2_test -TESTS += nilfs2_test - -nilfs2_test: $(top_builddir)/config.status tests/nilfs2_test.in - (for x in tests/nilfs2_test.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x nilfs2_test - -CLEANFILES += nilfs2_test -EXTRA_DIST += -dist_noinst_DATA += tests/nilfs2_test.in -check_SCRIPTS += romfs_test -TESTS += romfs_test - -romfs_test: $(top_builddir)/config.status tests/romfs_test.in - (for x in tests/romfs_test.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x romfs_test - -CLEANFILES += romfs_test -EXTRA_DIST += -dist_noinst_DATA += tests/romfs_test.in -check_SCRIPTS += exfat_test -TESTS += exfat_test - -exfat_test: $(top_builddir)/config.status tests/exfat_test.in - (for x in tests/exfat_test.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x exfat_test - -CLEANFILES += exfat_test -EXTRA_DIST += -dist_noinst_DATA += tests/exfat_test.in -check_SCRIPTS += tar_test -TESTS += tar_test - -tar_test: $(top_builddir)/config.status tests/tar_test.in - (for x in tests/tar_test.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x tar_test - -CLEANFILES += tar_test -EXTRA_DIST += -dist_noinst_DATA += tests/tar_test.in -check_SCRIPTS += udf_test -TESTS += udf_test - -udf_test: $(top_builddir)/config.status tests/udf_test.in - (for x in tests/udf_test.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x udf_test - -CLEANFILES += udf_test -EXTRA_DIST += -dist_noinst_DATA += tests/udf_test.in -check_SCRIPTS += hfs_test -TESTS += hfs_test - -hfs_test: $(top_builddir)/config.status tests/hfs_test.in - (for x in tests/hfs_test.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x hfs_test - -CLEANFILES += hfs_test -EXTRA_DIST += -dist_noinst_DATA += tests/hfs_test.in -check_SCRIPTS += jfs_test -TESTS += jfs_test - -jfs_test: $(top_builddir)/config.status tests/jfs_test.in - (for x in tests/jfs_test.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x jfs_test - -CLEANFILES += jfs_test -EXTRA_DIST += -dist_noinst_DATA += tests/jfs_test.in -check_SCRIPTS += btrfs_test -TESTS += btrfs_test - -btrfs_test: $(top_builddir)/config.status tests/btrfs_test.in - (for x in tests/btrfs_test.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x btrfs_test - -CLEANFILES += btrfs_test -EXTRA_DIST += -dist_noinst_DATA += tests/btrfs_test.in -check_SCRIPTS += zfs_test -TESTS += zfs_test - -zfs_test: $(top_builddir)/config.status tests/zfs_test.in - (for x in tests/zfs_test.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x zfs_test - -CLEANFILES += zfs_test -EXTRA_DIST += -dist_noinst_DATA += tests/zfs_test.in -check_SCRIPTS += cpio_test -TESTS += cpio_test - -cpio_test: $(top_builddir)/config.status tests/cpio_test.in - (for x in tests/cpio_test.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x cpio_test - -CLEANFILES += cpio_test -EXTRA_DIST += -dist_noinst_DATA += tests/cpio_test.in -check_SCRIPTS += example_scripted_test -TESTS += example_scripted_test - -example_scripted_test: $(top_builddir)/config.status tests/example_scripted_test.in - (for x in tests/example_scripted_test.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x example_scripted_test - -CLEANFILES += example_scripted_test -EXTRA_DIST += -dist_noinst_DATA += tests/example_scripted_test.in -check_SCRIPTS += gettext_strings_test -TESTS += gettext_strings_test - -gettext_strings_test: $(top_builddir)/config.status tests/gettext_strings_test.in - (for x in tests/gettext_strings_test.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x gettext_strings_test - -CLEANFILES += gettext_strings_test -EXTRA_DIST += po/exclude.pot -dist_noinst_DATA += tests/gettext_strings_test.in -check_SCRIPTS += pata_test -TESTS += pata_test - -pata_test: $(top_builddir)/config.status tests/pata_test.in - (for x in tests/pata_test.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x pata_test - -CLEANFILES += pata_test -EXTRA_DIST += -dist_noinst_DATA += tests/pata_test.in -check_SCRIPTS += ahci_test -TESTS += ahci_test - -ahci_test: $(top_builddir)/config.status tests/ahci_test.in - (for x in tests/ahci_test.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x ahci_test - -CLEANFILES += ahci_test -EXTRA_DIST += -dist_noinst_DATA += tests/ahci_test.in -check_SCRIPTS += uhci_test -TESTS += uhci_test - -uhci_test: $(top_builddir)/config.status tests/uhci_test.in - (for x in tests/uhci_test.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x uhci_test - -CLEANFILES += uhci_test -EXTRA_DIST += -dist_noinst_DATA += tests/uhci_test.in -check_SCRIPTS += ohci_test -TESTS += ohci_test - -ohci_test: $(top_builddir)/config.status tests/ohci_test.in - (for x in tests/ohci_test.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x ohci_test - -CLEANFILES += ohci_test -EXTRA_DIST += -dist_noinst_DATA += tests/ohci_test.in -check_SCRIPTS += ehci_test -TESTS += ehci_test - -ehci_test: $(top_builddir)/config.status tests/ehci_test.in - (for x in tests/ehci_test.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x ehci_test - -CLEANFILES += ehci_test -EXTRA_DIST += -dist_noinst_DATA += tests/ehci_test.in -check_SCRIPTS += example_grub_script_test -TESTS += example_grub_script_test - -example_grub_script_test: $(top_builddir)/config.status tests/example_grub_script_test.in - (for x in tests/example_grub_script_test.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x example_grub_script_test - -CLEANFILES += example_grub_script_test -EXTRA_DIST += -dist_noinst_DATA += tests/example_grub_script_test.in -check_SCRIPTS += grub_script_eval -TESTS += grub_script_eval - -grub_script_eval: $(top_builddir)/config.status tests/grub_script_eval.in - (for x in tests/grub_script_eval.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x grub_script_eval - -CLEANFILES += grub_script_eval -EXTRA_DIST += -dist_noinst_DATA += tests/grub_script_eval.in -check_SCRIPTS += grub_script_test -TESTS += grub_script_test - -grub_script_test: $(top_builddir)/config.status tests/grub_script_test.in - (for x in tests/grub_script_test.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x grub_script_test - -CLEANFILES += grub_script_test -EXTRA_DIST += -dist_noinst_DATA += tests/grub_script_test.in -check_SCRIPTS += grub_script_echo1 -TESTS += grub_script_echo1 - -grub_script_echo1: $(top_builddir)/config.status tests/grub_script_echo1.in - (for x in tests/grub_script_echo1.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x grub_script_echo1 - -CLEANFILES += grub_script_echo1 -EXTRA_DIST += -dist_noinst_DATA += tests/grub_script_echo1.in -check_SCRIPTS += grub_script_leading_whitespace -TESTS += grub_script_leading_whitespace - -grub_script_leading_whitespace: $(top_builddir)/config.status tests/grub_script_leading_whitespace.in - (for x in tests/grub_script_leading_whitespace.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x grub_script_leading_whitespace - -CLEANFILES += grub_script_leading_whitespace -EXTRA_DIST += -dist_noinst_DATA += tests/grub_script_leading_whitespace.in -check_SCRIPTS += grub_script_echo_keywords -TESTS += grub_script_echo_keywords - -grub_script_echo_keywords: $(top_builddir)/config.status tests/grub_script_echo_keywords.in - (for x in tests/grub_script_echo_keywords.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x grub_script_echo_keywords - -CLEANFILES += grub_script_echo_keywords -EXTRA_DIST += -dist_noinst_DATA += tests/grub_script_echo_keywords.in -check_SCRIPTS += grub_script_vars1 -TESTS += grub_script_vars1 - -grub_script_vars1: $(top_builddir)/config.status tests/grub_script_vars1.in - (for x in tests/grub_script_vars1.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x grub_script_vars1 - -CLEANFILES += grub_script_vars1 -EXTRA_DIST += -dist_noinst_DATA += tests/grub_script_vars1.in -check_SCRIPTS += grub_script_for1 -TESTS += grub_script_for1 - -grub_script_for1: $(top_builddir)/config.status tests/grub_script_for1.in - (for x in tests/grub_script_for1.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x grub_script_for1 - -CLEANFILES += grub_script_for1 -EXTRA_DIST += -dist_noinst_DATA += tests/grub_script_for1.in -check_SCRIPTS += grub_script_while1 -TESTS += grub_script_while1 - -grub_script_while1: $(top_builddir)/config.status tests/grub_script_while1.in - (for x in tests/grub_script_while1.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x grub_script_while1 - -CLEANFILES += grub_script_while1 -EXTRA_DIST += -dist_noinst_DATA += tests/grub_script_while1.in -check_SCRIPTS += grub_script_if -TESTS += grub_script_if - -grub_script_if: $(top_builddir)/config.status tests/grub_script_if.in - (for x in tests/grub_script_if.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x grub_script_if - -CLEANFILES += grub_script_if -EXTRA_DIST += -dist_noinst_DATA += tests/grub_script_if.in -check_SCRIPTS += grub_script_blanklines -TESTS += grub_script_blanklines - -grub_script_blanklines: $(top_builddir)/config.status tests/grub_script_blanklines.in - (for x in tests/grub_script_blanklines.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x grub_script_blanklines - -CLEANFILES += grub_script_blanklines -EXTRA_DIST += -dist_noinst_DATA += tests/grub_script_blanklines.in -check_SCRIPTS += grub_script_final_semicolon -TESTS += grub_script_final_semicolon - -grub_script_final_semicolon: $(top_builddir)/config.status tests/grub_script_final_semicolon.in - (for x in tests/grub_script_final_semicolon.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x grub_script_final_semicolon - -CLEANFILES += grub_script_final_semicolon -EXTRA_DIST += -dist_noinst_DATA += tests/grub_script_final_semicolon.in -check_SCRIPTS += grub_script_dollar -TESTS += grub_script_dollar - -grub_script_dollar: $(top_builddir)/config.status tests/grub_script_dollar.in - (for x in tests/grub_script_dollar.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x grub_script_dollar - -CLEANFILES += grub_script_dollar -EXTRA_DIST += -dist_noinst_DATA += tests/grub_script_dollar.in -check_SCRIPTS += grub_script_comments -TESTS += grub_script_comments - -grub_script_comments: $(top_builddir)/config.status tests/grub_script_comments.in - (for x in tests/grub_script_comments.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x grub_script_comments - -CLEANFILES += grub_script_comments -EXTRA_DIST += -dist_noinst_DATA += tests/grub_script_comments.in -check_SCRIPTS += grub_script_functions -TESTS += grub_script_functions - -grub_script_functions: $(top_builddir)/config.status tests/grub_script_functions.in - (for x in tests/grub_script_functions.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x grub_script_functions - -CLEANFILES += grub_script_functions -EXTRA_DIST += -dist_noinst_DATA += tests/grub_script_functions.in -check_SCRIPTS += grub_script_break -TESTS += grub_script_break - -grub_script_break: $(top_builddir)/config.status tests/grub_script_break.in - (for x in tests/grub_script_break.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x grub_script_break - -CLEANFILES += grub_script_break -EXTRA_DIST += -dist_noinst_DATA += tests/grub_script_break.in -check_SCRIPTS += grub_script_continue -TESTS += grub_script_continue - -grub_script_continue: $(top_builddir)/config.status tests/grub_script_continue.in - (for x in tests/grub_script_continue.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x grub_script_continue - -CLEANFILES += grub_script_continue -EXTRA_DIST += -dist_noinst_DATA += tests/grub_script_continue.in -check_SCRIPTS += grub_script_shift -TESTS += grub_script_shift - -grub_script_shift: $(top_builddir)/config.status tests/grub_script_shift.in - (for x in tests/grub_script_shift.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x grub_script_shift - -CLEANFILES += grub_script_shift -EXTRA_DIST += -dist_noinst_DATA += tests/grub_script_shift.in -check_SCRIPTS += grub_script_blockarg -TESTS += grub_script_blockarg - -grub_script_blockarg: $(top_builddir)/config.status tests/grub_script_blockarg.in - (for x in tests/grub_script_blockarg.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x grub_script_blockarg - -CLEANFILES += grub_script_blockarg -EXTRA_DIST += -dist_noinst_DATA += tests/grub_script_blockarg.in -check_SCRIPTS += grub_script_setparams -TESTS += grub_script_setparams - -grub_script_setparams: $(top_builddir)/config.status tests/grub_script_setparams.in - (for x in tests/grub_script_setparams.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x grub_script_setparams - -CLEANFILES += grub_script_setparams -EXTRA_DIST += -dist_noinst_DATA += tests/grub_script_setparams.in -check_SCRIPTS += grub_script_return -TESTS += grub_script_return - -grub_script_return: $(top_builddir)/config.status tests/grub_script_return.in - (for x in tests/grub_script_return.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x grub_script_return - -CLEANFILES += grub_script_return -EXTRA_DIST += -dist_noinst_DATA += tests/grub_script_return.in -check_SCRIPTS += grub_cmd_regexp -TESTS += grub_cmd_regexp - -grub_cmd_regexp: $(top_builddir)/config.status tests/grub_cmd_regexp.in - (for x in tests/grub_cmd_regexp.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x grub_cmd_regexp - -CLEANFILES += grub_cmd_regexp -EXTRA_DIST += -dist_noinst_DATA += tests/grub_cmd_regexp.in -check_SCRIPTS += grub_cmd_date -TESTS += grub_cmd_date - -grub_cmd_date: $(top_builddir)/config.status tests/grub_cmd_date.in - (for x in tests/grub_cmd_date.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x grub_cmd_date - -CLEANFILES += grub_cmd_date -EXTRA_DIST += -dist_noinst_DATA += tests/grub_cmd_date.in -check_SCRIPTS += grub_cmd_set_date -TESTS += grub_cmd_set_date - -grub_cmd_set_date: $(top_builddir)/config.status tests/grub_cmd_set_date.in - (for x in tests/grub_cmd_set_date.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x grub_cmd_set_date - -CLEANFILES += grub_cmd_set_date -EXTRA_DIST += -dist_noinst_DATA += tests/grub_cmd_set_date.in -check_SCRIPTS += grub_cmd_sleep -TESTS += grub_cmd_sleep - -grub_cmd_sleep: $(top_builddir)/config.status tests/grub_cmd_sleep.in - (for x in tests/grub_cmd_sleep.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x grub_cmd_sleep - -CLEANFILES += grub_cmd_sleep -EXTRA_DIST += -dist_noinst_DATA += tests/grub_cmd_sleep.in -check_SCRIPTS += grub_script_expansion -TESTS += grub_script_expansion - -grub_script_expansion: $(top_builddir)/config.status tests/grub_script_expansion.in - (for x in tests/grub_script_expansion.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x grub_script_expansion - -CLEANFILES += grub_script_expansion -EXTRA_DIST += -dist_noinst_DATA += tests/grub_script_expansion.in -check_SCRIPTS += grub_script_not -TESTS += grub_script_not - -grub_script_not: $(top_builddir)/config.status tests/grub_script_not.in - (for x in tests/grub_script_not.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x grub_script_not - -CLEANFILES += grub_script_not -EXTRA_DIST += -dist_noinst_DATA += tests/grub_script_not.in -check_SCRIPTS += grub_script_no_commands -TESTS += grub_script_no_commands - -grub_script_no_commands: $(top_builddir)/config.status tests/grub_script_no_commands.in - (for x in tests/grub_script_no_commands.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x grub_script_no_commands - -CLEANFILES += grub_script_no_commands -EXTRA_DIST += -dist_noinst_DATA += tests/grub_script_no_commands.in -check_SCRIPTS += partmap_test -TESTS += partmap_test - -partmap_test: $(top_builddir)/config.status tests/partmap_test.in - (for x in tests/partmap_test.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x partmap_test - -CLEANFILES += partmap_test -EXTRA_DIST += -dist_noinst_DATA += tests/partmap_test.in -check_SCRIPTS += hddboot_test -TESTS += hddboot_test - -hddboot_test: $(top_builddir)/config.status tests/hddboot_test.in - (for x in tests/hddboot_test.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x hddboot_test - -CLEANFILES += hddboot_test -EXTRA_DIST += -dist_noinst_DATA += tests/hddboot_test.in -check_SCRIPTS += fddboot_test -TESTS += fddboot_test - -fddboot_test: $(top_builddir)/config.status tests/fddboot_test.in - (for x in tests/fddboot_test.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x fddboot_test - -CLEANFILES += fddboot_test -EXTRA_DIST += -dist_noinst_DATA += tests/fddboot_test.in -check_SCRIPTS += cdboot_test -TESTS += cdboot_test - -cdboot_test: $(top_builddir)/config.status tests/cdboot_test.in - (for x in tests/cdboot_test.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x cdboot_test - -CLEANFILES += cdboot_test -EXTRA_DIST += -dist_noinst_DATA += tests/cdboot_test.in -check_SCRIPTS += netboot_test -TESTS += netboot_test - -netboot_test: $(top_builddir)/config.status tests/netboot_test.in - (for x in tests/netboot_test.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x netboot_test - -CLEANFILES += netboot_test -EXTRA_DIST += -dist_noinst_DATA += tests/netboot_test.in -check_SCRIPTS += pseries_test -TESTS += pseries_test - -pseries_test: $(top_builddir)/config.status tests/pseries_test.in - (for x in tests/pseries_test.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x pseries_test - -CLEANFILES += pseries_test -EXTRA_DIST += -dist_noinst_DATA += tests/pseries_test.in -check_SCRIPTS += core_compress_test -TESTS += core_compress_test - -core_compress_test: $(top_builddir)/config.status tests/core_compress_test.in - (for x in tests/core_compress_test.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x core_compress_test - -CLEANFILES += core_compress_test -EXTRA_DIST += -dist_noinst_DATA += tests/core_compress_test.in -check_SCRIPTS += xzcompress_test -TESTS += xzcompress_test - -xzcompress_test: $(top_builddir)/config.status tests/xzcompress_test.in - (for x in tests/xzcompress_test.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x xzcompress_test - -CLEANFILES += xzcompress_test -EXTRA_DIST += -dist_noinst_DATA += tests/xzcompress_test.in -check_SCRIPTS += gzcompress_test -TESTS += gzcompress_test - -gzcompress_test: $(top_builddir)/config.status tests/gzcompress_test.in - (for x in tests/gzcompress_test.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x gzcompress_test - -CLEANFILES += gzcompress_test -EXTRA_DIST += -dist_noinst_DATA += tests/gzcompress_test.in -check_SCRIPTS += lzocompress_test -TESTS += lzocompress_test - -lzocompress_test: $(top_builddir)/config.status tests/lzocompress_test.in - (for x in tests/lzocompress_test.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x lzocompress_test - -CLEANFILES += lzocompress_test -EXTRA_DIST += -dist_noinst_DATA += tests/lzocompress_test.in -check_SCRIPTS += grub_cmd_echo -TESTS += grub_cmd_echo - -grub_cmd_echo: $(top_builddir)/config.status tests/grub_cmd_echo.in - (for x in tests/grub_cmd_echo.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x grub_cmd_echo - -CLEANFILES += grub_cmd_echo -EXTRA_DIST += -dist_noinst_DATA += tests/grub_cmd_echo.in -check_SCRIPTS += help_test -TESTS += help_test - -help_test: $(top_builddir)/config.status tests/help_test.in - (for x in tests/help_test.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x help_test - -CLEANFILES += help_test -EXTRA_DIST += -dist_noinst_DATA += tests/help_test.in -check_SCRIPTS += grub_script_gettext -TESTS += grub_script_gettext - -grub_script_gettext: $(top_builddir)/config.status tests/grub_script_gettext.in - (for x in tests/grub_script_gettext.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x grub_script_gettext - -CLEANFILES += grub_script_gettext -EXTRA_DIST += -dist_noinst_DATA += tests/grub_script_gettext.in -check_SCRIPTS += grub_script_escape_comma -TESTS += grub_script_escape_comma - -grub_script_escape_comma: $(top_builddir)/config.status tests/grub_script_escape_comma.in - (for x in tests/grub_script_escape_comma.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x grub_script_escape_comma - -CLEANFILES += grub_script_escape_comma -EXTRA_DIST += -dist_noinst_DATA += tests/grub_script_escape_comma.in -check_SCRIPTS += grub_script_strcmp -TESTS += grub_script_strcmp - -grub_script_strcmp: $(top_builddir)/config.status tests/grub_script_strcmp.in - (for x in tests/grub_script_strcmp.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x grub_script_strcmp - -CLEANFILES += grub_script_strcmp -EXTRA_DIST += -dist_noinst_DATA += tests/grub_script_strcmp.in -check_SCRIPTS += test_sha512sum -TESTS += test_sha512sum - -test_sha512sum: $(top_builddir)/config.status tests/test_sha512sum.in - (for x in tests/test_sha512sum.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x test_sha512sum - -CLEANFILES += test_sha512sum -EXTRA_DIST += -dist_noinst_DATA += tests/test_sha512sum.in -check_SCRIPTS += test_unset -TESTS += test_unset - -test_unset: $(top_builddir)/config.status tests/test_unset.in - (for x in tests/test_unset.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x test_unset - -CLEANFILES += test_unset -EXTRA_DIST += -dist_noinst_DATA += tests/test_unset.in -check_SCRIPTS += grub_func_test -TESTS += grub_func_test - -grub_func_test: $(top_builddir)/config.status tests/grub_func_test.in - (for x in tests/grub_func_test.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x grub_func_test - -CLEANFILES += grub_func_test -EXTRA_DIST += -dist_noinst_DATA += tests/grub_func_test.in -check_SCRIPTS += grub_cmd_tr -TESTS += grub_cmd_tr - -grub_cmd_tr: $(top_builddir)/config.status tests/grub_cmd_tr.in - (for x in tests/grub_cmd_tr.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x grub_cmd_tr - -CLEANFILES += grub_cmd_tr -EXTRA_DIST += -dist_noinst_DATA += tests/grub_cmd_tr.in -check_SCRIPTS += file_filter_test -TESTS += file_filter_test - -file_filter_test: $(top_builddir)/config.status tests/file_filter_test.in - (for x in tests/file_filter_test.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x file_filter_test - -CLEANFILES += file_filter_test -EXTRA_DIST += -dist_noinst_DATA += tests/file_filter_test.in -check_SCRIPTS += grub_cmd_test -TESTS += grub_cmd_test - -grub_cmd_test: $(top_builddir)/config.status tests/grub_cmd_test.in - (for x in tests/grub_cmd_test.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x grub_cmd_test - -CLEANFILES += grub_cmd_test -EXTRA_DIST += -dist_noinst_DATA += tests/grub_cmd_test.in -check_SCRIPTS += syslinux_test -TESTS += syslinux_test - -syslinux_test: $(top_builddir)/config.status tests/syslinux_test.in - (for x in tests/syslinux_test.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x syslinux_test - -CLEANFILES += syslinux_test -EXTRA_DIST += -dist_noinst_DATA += tests/syslinux_test.in -dist_grubconf_DATA += util/grub.d/README -dist_noinst_DATA += diff --git a/thirdparty/grub-2.04/Makefile.util.def b/thirdparty/grub-2.04/Makefile.util.def deleted file mode 100644 index 969d32f00..000000000 --- a/thirdparty/grub-2.04/Makefile.util.def +++ /dev/null @@ -1,1367 +0,0 @@ -AutoGen definitions Makefile.tpl; - -library = { - name = libgrubkern.a; - cflags = '$(CFLAGS_GNULIB)'; - cppflags = '$(CPPFLAGS_GNULIB)'; - - common = util/misc.c; - common = grub-core/kern/command.c; - common = grub-core/kern/device.c; - common = grub-core/kern/disk.c; - common = grub-core/lib/disk.c; - common = util/getroot.c; - common = grub-core/osdep/unix/getroot.c; - common = grub-core/osdep/getroot.c; - common = grub-core/osdep/devmapper/getroot.c; - common = grub-core/osdep/relpath.c; - extra_dist = grub-core/kern/disk_common.c; - extra_dist = grub-core/osdep/unix/relpath.c; - extra_dist = grub-core/osdep/aros/relpath.c; - extra_dist = grub-core/osdep/windows/relpath.c; - common = grub-core/kern/emu/hostdisk.c; - common = grub-core/osdep/devmapper/hostdisk.c; - common = grub-core/osdep/hostdisk.c; - common = grub-core/osdep/unix/hostdisk.c; - common = grub-core/osdep/exec.c; - common = grub-core/osdep/sleep.c; - common = grub-core/osdep/password.c; - common = grub-core/kern/emu/misc.c; - common = grub-core/kern/emu/mm.c; - common = grub-core/kern/env.c; - common = grub-core/kern/err.c; - common = grub-core/kern/file.c; - common = grub-core/kern/fs.c; - common = grub-core/kern/list.c; - common = grub-core/kern/misc.c; - common = grub-core/kern/partition.c; - common = grub-core/lib/crypto.c; - common = grub-core/disk/luks.c; - common = grub-core/disk/geli.c; - common = grub-core/disk/cryptodisk.c; - common = grub-core/disk/AFSplitter.c; - common = grub-core/lib/pbkdf2.c; - common = grub-core/commands/extcmd.c; - common = grub-core/lib/arg.c; - common = grub-core/disk/ldm.c; - common = grub-core/disk/diskfilter.c; - common = grub-core/partmap/gpt.c; - common = grub-core/partmap/msdos.c; - common = grub-core/fs/proc.c; - common = grub-core/fs/archelp.c; -}; - -library = { - name = libgrubmods.a; - cflags = '-fno-builtin -Wno-undef'; - cppflags = '-I$(srcdir)/grub-core/lib/minilzo -I$(srcdir)/grub-core/lib/xzembed -I$(srcdir)/grub-core/lib/zstd -DMINILZO_HAVE_CONFIG_H'; - - common_nodist = grub_script.tab.c; - common_nodist = grub_script.yy.c; - common_nodist = libgrub_a_init.c; - common_nodist = grub_script.yy.h; - common_nodist = grub_script.tab.h; - - common = grub-core/commands/blocklist.c; - common = grub-core/commands/macbless.c; - common = grub-core/commands/xnu_uuid.c; - common = grub-core/commands/testload.c; - common = grub-core/commands/ls.c; - common = grub-core/disk/dmraid_nvidia.c; - common = grub-core/disk/loopback.c; - common = grub-core/disk/lvm.c; - common = grub-core/disk/mdraid_linux.c; - common = grub-core/disk/mdraid_linux_be.c; - common = grub-core/disk/mdraid1x_linux.c; - common = grub-core/disk/raid5_recover.c; - common = grub-core/disk/raid6_recover.c; - common = grub-core/font/font.c; - common = grub-core/gfxmenu/font.c; - common = grub-core/normal/charset.c; - common = grub-core/video/fb/fbblit.c; - common = grub-core/video/fb/fbutil.c; - common = grub-core/video/fb/fbfill.c; - common = grub-core/video/fb/video_fb.c; - common = grub-core/video/video.c; - common = grub-core/video/capture.c; - common = grub-core/video/colors.c; - common = grub-core/unidata.c; - common = grub-core/io/bufio.c; - common = grub-core/fs/affs.c; - common = grub-core/fs/afs.c; - common = grub-core/fs/bfs.c; - common = grub-core/fs/btrfs.c; - common = grub-core/fs/cbfs.c; - common = grub-core/fs/cpio.c; - common = grub-core/fs/cpio_be.c; - common = grub-core/fs/odc.c; - common = grub-core/fs/newc.c; - common = grub-core/fs/ext2.c; - common = grub-core/fs/fat.c; - common = grub-core/fs/exfat.c; - common = grub-core/fs/f2fs.c; - common = grub-core/fs/fshelp.c; - common = grub-core/fs/hfs.c; - common = grub-core/fs/hfsplus.c; - common = grub-core/fs/hfspluscomp.c; - common = grub-core/fs/iso9660.c; - common = grub-core/fs/jfs.c; - common = grub-core/fs/minix.c; - common = grub-core/fs/minix2.c; - common = grub-core/fs/minix3.c; - common = grub-core/fs/minix_be.c; - common = grub-core/fs/minix2_be.c; - common = grub-core/fs/minix3_be.c; - common = grub-core/fs/nilfs2.c; - common = grub-core/fs/ntfs.c; - common = grub-core/fs/ntfscomp.c; - common = grub-core/fs/reiserfs.c; - common = grub-core/fs/romfs.c; - common = grub-core/fs/sfs.c; - common = grub-core/fs/squash4.c; - common = grub-core/fs/tar.c; - common = grub-core/fs/udf.c; - common = grub-core/fs/ufs2.c; - common = grub-core/fs/ufs.c; - common = grub-core/fs/ufs_be.c; - common = grub-core/fs/xfs.c; - common = grub-core/fs/zfs/zfscrypt.c; - common = grub-core/fs/zfs/zfs.c; - common = grub-core/fs/zfs/zfsinfo.c; - common = grub-core/fs/zfs/zfs_lzjb.c; - common = grub-core/fs/zfs/zfs_lz4.c; - common = grub-core/fs/zfs/zfs_sha256.c; - common = grub-core/fs/zfs/zfs_fletcher.c; - common = grub-core/lib/envblk.c; - common = grub-core/lib/hexdump.c; - common = grub-core/lib/LzFind.c; - common = grub-core/lib/LzmaEnc.c; - common = grub-core/lib/crc.c; - common = grub-core/lib/adler32.c; - common = grub-core/lib/crc64.c; - common = grub-core/normal/datetime.c; - common = grub-core/normal/misc.c; - common = grub-core/partmap/acorn.c; - common = grub-core/partmap/amiga.c; - common = grub-core/partmap/apple.c; - common = grub-core/partmap/sun.c; - common = grub-core/partmap/plan.c; - common = grub-core/partmap/dvh.c; - common = grub-core/partmap/sunpc.c; - common = grub-core/partmap/bsdlabel.c; - common = grub-core/partmap/dfly.c; - common = grub-core/script/function.c; - common = grub-core/script/lexer.c; - common = grub-core/script/main.c; - common = grub-core/script/script.c; - common = grub-core/script/argv.c; - common = grub-core/io/gzio.c; - common = grub-core/io/xzio.c; - common = grub-core/io/lzopio.c; - common = grub-core/kern/ia64/dl_helper.c; - common = grub-core/kern/arm/dl_helper.c; - common = grub-core/kern/arm64/dl_helper.c; - common = grub-core/lib/minilzo/minilzo.c; - common = grub-core/lib/xzembed/xz_dec_bcj.c; - common = grub-core/lib/xzembed/xz_dec_lzma2.c; - common = grub-core/lib/xzembed/xz_dec_stream.c; - common = grub-core/lib/zstd/debug.c; - common = grub-core/lib/zstd/entropy_common.c; - common = grub-core/lib/zstd/error_private.c; - common = grub-core/lib/zstd/fse_decompress.c; - common = grub-core/lib/zstd/huf_decompress.c; - common = grub-core/lib/zstd/module.c; - common = grub-core/lib/zstd/xxhash.c; - common = grub-core/lib/zstd/zstd_common.c; - common = grub-core/lib/zstd/zstd_decompress.c; -}; - -program = { - name = grub-mkimage; - mansection = 1; - - common = util/grub-mkimage.c; - common = util/mkimage.c; - common = util/grub-mkimage32.c; - common = util/grub-mkimage64.c; - common = util/resolve.c; - common = grub-core/kern/emu/argp_common.c; - common = grub-core/osdep/init.c; - common = grub-core/osdep/config.c; - extra_dist = grub-core/osdep/aros/config.c; - extra_dist = grub-core/osdep/windows/config.c; - extra_dist = grub-core/osdep/unix/config.c; - common = util/config.c; - - extra_dist = util/grub-mkimagexx.c; - - ldadd = libgrubmods.a; - ldadd = libgrubgcry.a; - ldadd = libgrubkern.a; - ldadd = grub-core/lib/gnulib/libgnu.a; - ldadd = '$(LIBLZMA)'; - ldadd = '$(LIBINTL) $(LIBDEVMAPPER) $(LIBZFS) $(LIBNVPAIR) $(LIBGEOM)'; - cppflags = '-DGRUB_PKGLIBDIR=\"$(pkglibdir)\"'; -}; - -program = { - name = grub-mkrelpath; - mansection = 1; - - common = util/grub-mkrelpath.c; - common = grub-core/kern/emu/argp_common.c; - common = grub-core/osdep/init.c; - - ldadd = libgrubmods.a; - ldadd = libgrubgcry.a; - ldadd = libgrubkern.a; - ldadd = grub-core/lib/gnulib/libgnu.a; - ldadd = '$(LIBINTL) $(LIBDEVMAPPER) $(LIBUTIL) $(LIBZFS) $(LIBNVPAIR) $(LIBGEOM)'; -}; - -program = { - name = grub-script-check; - mansection = 1; - - common = util/grub-script-check.c; - common = grub-core/kern/emu/argp_common.c; - common = grub-core/osdep/init.c; - - ldadd = libgrubmods.a; - ldadd = libgrubgcry.a; - ldadd = libgrubkern.a; - ldadd = grub-core/lib/gnulib/libgnu.a; - ldadd = '$(LIBINTL) $(LIBDEVMAPPER) $(LIBZFS) $(LIBNVPAIR) $(LIBGEOM)'; -}; - -program = { - name = grub-editenv; - mansection = 1; - - common = util/grub-editenv.c; - common = util/editenv.c; - common = grub-core/osdep/init.c; - - ldadd = libgrubmods.a; - ldadd = libgrubgcry.a; - ldadd = libgrubkern.a; - ldadd = grub-core/lib/gnulib/libgnu.a; - ldadd = '$(LIBINTL) $(LIBDEVMAPPER) $(LIBZFS) $(LIBNVPAIR) $(LIBGEOM)'; -}; - -program = { - name = grub-mkpasswd-pbkdf2; - mansection = 1; - - common = util/grub-mkpasswd-pbkdf2.c; - common = grub-core/kern/emu/argp_common.c; - common = grub-core/osdep/random.c; - common = grub-core/osdep/init.c; - - ldadd = libgrubmods.a; - ldadd = libgrubgcry.a; - ldadd = libgrubkern.a; - ldadd = grub-core/lib/gnulib/libgnu.a; - ldadd = '$(LIBINTL) $(LIBDEVMAPPER) $(LIBZFS) $(LIBNVPAIR) $(LIBGEOM)'; -}; - -program = { - name = grub-macho2img; - mansection = 1; - common = util/grub-macho2img.c; - condition = COND_APPLE_LINKER; -}; - -program = { - name = grub-fstest; - mansection = 1; - common_nodist = grub_fstest_init.c; - common = util/grub-fstest.c; - common = grub-core/kern/emu/hostfs.c; - common = grub-core/disk/host.c; - common = grub-core/osdep/init.c; - - ldadd = libgrubmods.a; - ldadd = libgrubgcry.a; - ldadd = libgrubkern.a; - ldadd = grub-core/lib/gnulib/libgnu.a; - ldadd = '$(LIBINTL) $(LIBDEVMAPPER) $(LIBUTIL) $(LIBZFS) $(LIBNVPAIR) $(LIBGEOM)'; -}; - -program = { - name = grub-mount; - mansection = 1; - common_nodist = grub_fstest_init.c; - common = util/grub-mount.c; - common = grub-core/kern/emu/hostfs.c; - common = grub-core/disk/host.c; - common = grub-core/osdep/init.c; - - ldadd = libgrubmods.a; - ldadd = libgrubgcry.a; - ldadd = libgrubkern.a; - ldadd = grub-core/lib/gnulib/libgnu.a; - ldadd = '$(LIBINTL) $(LIBDEVMAPPER) $(LIBZFS) $(LIBNVPAIR) $(LIBGEOM) -lfuse'; - condition = COND_GRUB_MOUNT; -}; - -program = { - name = grub-mkfont; - mansection = 1; - common = util/grub-mkfont.c; - common = grub-core/kern/emu/argp_common.c; - common = grub-core/osdep/init.c; - - cflags = '$(FREETYPE_CFLAGS)'; - cppflags = '-DGRUB_MKFONT=1'; - - ldadd = libgrubmods.a; - ldadd = libgrubgcry.a; - ldadd = libgrubkern.a; - ldadd = grub-core/lib/gnulib/libgnu.a; - ldadd = '$(FREETYPE_LIBS)'; - ldadd = '$(LIBINTL) $(LIBDEVMAPPER) $(LIBZFS) $(LIBNVPAIR) $(LIBGEOM)'; - condition = COND_GRUB_MKFONT; -}; - -program = { - name = grub-probe; - installdir = sbin; - mansection = 8; - common = util/grub-probe.c; - common = util/probe.c; - common = grub-core/osdep/ofpath.c; - common = grub-core/kern/emu/argp_common.c; - common = grub-core/osdep/init.c; - - ldadd = libgrubmods.a; - ldadd = libgrubgcry.a; - ldadd = libgrubkern.a; - ldadd = grub-core/lib/gnulib/libgnu.a; - ldadd = '$(LIBINTL) $(LIBDEVMAPPER) $(LIBUTIL) $(LIBZFS) $(LIBNVPAIR) $(LIBGEOM)'; -}; - -program = { - name = grub-bios-setup; - installdir = sbin; - mansection = 8; - common = util/grub-setup.c; - common = util/setup_bios.c; - extra_dist = util/setup.c; - common = grub-core/kern/emu/argp_common.c; - common = grub-core/lib/reed_solomon.c; - common = grub-core/osdep/blocklist.c; - extra_dist = grub-core/osdep/generic/blocklist.c; - extra_dist = grub-core/osdep/linux/blocklist.c; - extra_dist = grub-core/osdep/windows/blocklist.c; - common = grub-core/osdep/init.c; - - ldadd = libgrubmods.a; - ldadd = libgrubkern.a; - ldadd = libgrubgcry.a; - ldadd = grub-core/lib/gnulib/libgnu.a; - ldadd = '$(LIBINTL) $(LIBDEVMAPPER) $(LIBUTIL) $(LIBZFS) $(LIBNVPAIR) $(LIBGEOM)'; - cppflags = '-DGRUB_SETUP_FUNC=grub_util_bios_setup'; -}; - -program = { - name = grub-sparc64-setup; - installdir = sbin; - mansection = 8; - common = util/grub-setup.c; - common = util/setup_sparc.c; - common = grub-core/kern/emu/argp_common.c; - common = grub-core/lib/reed_solomon.c; - common = grub-core/osdep/ofpath.c; - common = grub-core/osdep/blocklist.c; - common = grub-core/osdep/init.c; - - ldadd = libgrubmods.a; - ldadd = libgrubkern.a; - ldadd = libgrubgcry.a; - ldadd = grub-core/lib/gnulib/libgnu.a; - ldadd = '$(LIBINTL) $(LIBDEVMAPPER) $(LIBUTIL) $(LIBZFS) $(LIBNVPAIR) $(LIBGEOM)'; - cppflags = '-DGRUB_SETUP_FUNC=grub_util_sparc_setup'; -}; - -program = { - name = grub-ofpathname; - installdir = sbin; - mansection = 8; - common = util/ieee1275/grub-ofpathname.c; - common = grub-core/osdep/ofpath.c; - common = grub-core/osdep/init.c; - - ldadd = libgrubmods.a; - ldadd = libgrubgcry.a; - ldadd = libgrubkern.a; - ldadd = grub-core/lib/gnulib/libgnu.a; - ldadd = '$(LIBINTL) $(LIBDEVMAPPER) $(LIBUTIL) $(LIBZFS) $(LIBNVPAIR) $(LIBGEOM)'; -}; - -program = { - name = grub-mklayout; - mansection = 1; - - common = util/grub-mklayout.c; - common = grub-core/kern/emu/argp_common.c; - common = grub-core/osdep/init.c; - - ldadd = libgrubmods.a; - ldadd = libgrubgcry.a; - ldadd = libgrubkern.a; - ldadd = grub-core/lib/gnulib/libgnu.a; - ldadd = '$(LIBINTL) $(LIBDEVMAPPER) $(LIBZFS) $(LIBNVPAIR) $(LIBGEOM)'; -}; - -program = { - name = grub-macbless; - installdir = sbin; - mansection = 8; - common = util/grub-macbless.c; - common = grub-core/osdep/init.c; - common = grub-core/kern/emu/argp_common.c; - - ldadd = libgrubmods.a; - ldadd = libgrubgcry.a; - ldadd = libgrubkern.a; - ldadd = grub-core/lib/gnulib/libgnu.a; - ldadd = '$(LIBINTL) $(LIBDEVMAPPER) $(LIBUTIL) $(LIBZFS) $(LIBNVPAIR) $(LIBGEOM)'; -}; - -data = { - common = util/grub.d/README; - installdir = grubconf; -}; - -script = { - name = '00_header'; - common = util/grub.d/00_header.in; - installdir = grubconf; -}; - -script = { - name = '10_windows'; - common = util/grub.d/10_windows.in; - installdir = grubconf; - condition = COND_HOST_WINDOWS; -}; - -script = { - name = '10_hurd'; - common = util/grub.d/10_hurd.in; - installdir = grubconf; - condition = COND_HOST_HURD; -}; - -script = { - name = '10_kfreebsd'; - common = util/grub.d/10_kfreebsd.in; - installdir = grubconf; - condition = COND_HOST_KFREEBSD; -}; - -script = { - name = '10_illumos'; - common = util/grub.d/10_illumos.in; - installdir = grubconf; - condition = COND_HOST_ILLUMOS; -}; - -script = { - name = '10_netbsd'; - common = util/grub.d/10_netbsd.in; - installdir = grubconf; - condition = COND_HOST_NETBSD; -}; - -script = { - name = '10_linux'; - common = util/grub.d/10_linux.in; - installdir = grubconf; - condition = COND_HOST_LINUX; -}; - -script = { - name = '10_xnu'; - common = util/grub.d/10_xnu.in; - installdir = grubconf; - condition = COND_HOST_XNU; -}; - -script = { - name = '20_linux_xen'; - common = util/grub.d/20_linux_xen.in; - installdir = grubconf; - condition = COND_HOST_LINUX; -}; - -script = { - name = '30_os-prober'; - common = util/grub.d/30_os-prober.in; - installdir = grubconf; -}; - -script = { - name = '40_custom'; - common = util/grub.d/40_custom.in; - installdir = grubconf; -}; - -script = { - name = '41_custom'; - common = util/grub.d/41_custom.in; - installdir = grubconf; -}; - -program = { - mansection = 1; - name = grub-mkrescue; - - common = util/grub-mkrescue.c; - common = util/render-label.c; - common = util/glue-efi.c; - common = util/mkimage.c; - common = util/grub-mkimage32.c; - common = util/grub-mkimage64.c; - common = util/grub-install-common.c; - common = util/setup_bios.c; - common = util/setup_sparc.c; - common = grub-core/lib/reed_solomon.c; - common = grub-core/osdep/random.c; - common = grub-core/osdep/ofpath.c; - common = grub-core/osdep/platform.c; - common = grub-core/osdep/platform_unix.c; - common = grub-core/osdep/compress.c; - extra_dist = grub-core/osdep/unix/compress.c; - extra_dist = grub-core/osdep/basic/compress.c; - common = util/editenv.c; - common = grub-core/osdep/blocklist.c; - common = grub-core/osdep/config.c; - common = util/config.c; - - common = grub-core/kern/emu/hostfs.c; - common = grub-core/disk/host.c; - - common = util/resolve.c; - - common = grub-core/kern/emu/argp_common.c; - common = grub-core/osdep/init.c; - - ldadd = '$(LIBLZMA)'; - ldadd = libgrubmods.a; - ldadd = libgrubgcry.a; - ldadd = libgrubkern.a; - ldadd = grub-core/lib/gnulib/libgnu.a; - ldadd = '$(LIBINTL) $(LIBDEVMAPPER) $(LIBUTIL) $(LIBZFS) $(LIBNVPAIR) $(LIBGEOM)'; - - condition = COND_HAVE_EXEC; -}; - -program = { - mansection = 1; - name = grub-mkstandalone; - common = util/grub-mkstandalone.c; - - common = util/render-label.c; - common = util/glue-efi.c; - common = util/mkimage.c; - common = util/grub-mkimage32.c; - common = util/grub-mkimage64.c; - common = util/grub-install-common.c; - common = util/setup_bios.c; - common = util/setup_sparc.c; - common = grub-core/lib/reed_solomon.c; - common = grub-core/osdep/random.c; - common = grub-core/osdep/ofpath.c; - common = grub-core/osdep/platform.c; - common = grub-core/osdep/platform_unix.c; - extra_dist = grub-core/osdep/linux/platform.c; - extra_dist = grub-core/osdep/windows/platform.c; - extra_dist = grub-core/osdep/basic/platform.c; - extra_dist = grub-core/osdep/basic/no_platform.c; - extra_dist = grub-core/osdep/unix/platform.c; - common = grub-core/osdep/compress.c; - common = util/editenv.c; - common = grub-core/osdep/blocklist.c; - common = grub-core/osdep/config.c; - common = util/config.c; - - common = grub-core/kern/emu/hostfs.c; - common = grub-core/disk/host.c; - - common = util/resolve.c; - - common = grub-core/kern/emu/argp_common.c; - common = grub-core/osdep/init.c; - - ldadd = '$(LIBLZMA)'; - ldadd = libgrubmods.a; - ldadd = libgrubgcry.a; - ldadd = libgrubkern.a; - ldadd = grub-core/lib/gnulib/libgnu.a; - ldadd = '$(LIBINTL) $(LIBDEVMAPPER) $(LIBUTIL) $(LIBZFS) $(LIBNVPAIR) $(LIBGEOM)'; -}; - -program = { - mansection = 8; - installdir = sbin; - name = grub-install; - - common = util/grub-install.c; - common = util/probe.c; - common = util/mkimage.c; - common = util/grub-mkimage32.c; - common = util/grub-mkimage64.c; - common = util/grub-install-common.c; - common = util/setup_bios.c; - common = util/setup_sparc.c; - common = grub-core/lib/reed_solomon.c; - common = grub-core/osdep/random.c; - common = grub-core/osdep/ofpath.c; - common = grub-core/osdep/platform.c; - common = grub-core/osdep/platform_unix.c; - common = grub-core/osdep/compress.c; - common = util/editenv.c; - common = grub-core/osdep/blocklist.c; - common = grub-core/osdep/config.c; - common = util/config.c; - common = util/render-label.c; - common = grub-core/kern/emu/hostfs.c; - common = grub-core/disk/host.c; - - common = util/resolve.c; - common = grub-core/kern/emu/argp_common.c; - common = grub-core/osdep/init.c; - - ldadd = '$(LIBLZMA)'; - ldadd = libgrubmods.a; - ldadd = libgrubgcry.a; - ldadd = libgrubkern.a; - ldadd = grub-core/lib/gnulib/libgnu.a; - ldadd = '$(LIBINTL) $(LIBDEVMAPPER) $(LIBUTIL) $(LIBZFS) $(LIBNVPAIR) $(LIBGEOM)'; -}; - -program = { - mansection = 1; - installdir = bin; - name = grub-mknetdir; - - common = util/grub-mknetdir.c; - - common = util/mkimage.c; - common = util/grub-mkimage32.c; - common = util/grub-mkimage64.c; - common = util/grub-install-common.c; - common = util/setup_bios.c; - common = util/setup_sparc.c; - common = grub-core/lib/reed_solomon.c; - common = grub-core/osdep/random.c; - common = grub-core/osdep/ofpath.c; - common = grub-core/osdep/platform.c; - common = grub-core/osdep/platform_unix.c; - common = grub-core/osdep/compress.c; - common = util/editenv.c; - common = grub-core/osdep/blocklist.c; - common = grub-core/osdep/config.c; - common = util/config.c; - - common = util/resolve.c; - common = grub-core/kern/emu/argp_common.c; - common = grub-core/osdep/init.c; - - ldadd = '$(LIBLZMA)'; - ldadd = libgrubmods.a; - ldadd = libgrubgcry.a; - ldadd = libgrubkern.a; - ldadd = grub-core/lib/gnulib/libgnu.a; - ldadd = '$(LIBINTL) $(LIBDEVMAPPER) $(LIBUTIL) $(LIBZFS) $(LIBNVPAIR) $(LIBGEOM)'; -}; - -script = { - name = grub-mkconfig; - common = util/grub-mkconfig.in; - mansection = 8; - installdir = sbin; -}; - -script = { - name = grub-set-default; - common = util/grub-set-default.in; - mansection = 8; - installdir = sbin; -}; - -script = { - name = grub-reboot; - common = util/grub-reboot.in; - mansection = 8; - installdir = sbin; -}; - -script = { - name = grub-mkconfig_lib; - common = util/grub-mkconfig_lib.in; - installdir = noinst; -}; - -script = { - name = grub-kbdcomp; - common = util/grub-kbdcomp.in; - mansection = 1; -}; - -script = { - name = grub-shell; - common = tests/util/grub-shell.in; - installdir = noinst; -}; - -script = { - name = grub-shell-tester; - common = tests/util/grub-shell-tester.in; - installdir = noinst; -}; - -script = { - name = grub-fs-tester; - common = tests/util/grub-fs-tester.in; - installdir = noinst; - dependencies = 'garbage-gen$(BUILD_EXEEXT)'; -}; - -script = { - testcase; - name = ext234_test; - common = tests/ext234_test.in; -}; - -script = { - testcase; - name = squashfs_test; - common = tests/squashfs_test.in; -}; - -script = { - testcase; - name = iso9660_test; - common = tests/iso9660_test.in; -}; - -script = { - testcase; - name = hfsplus_test; - common = tests/hfsplus_test.in; -}; - -script = { - testcase; - name = ntfs_test; - common = tests/ntfs_test.in; -}; - -script = { - testcase; - name = reiserfs_test; - common = tests/reiserfs_test.in; -}; - -script = { - testcase; - name = fat_test; - common = tests/fat_test.in; -}; - -script = { - testcase; - name = minixfs_test; - common = tests/minixfs_test.in; -}; - -script = { - testcase; - name = xfs_test; - common = tests/xfs_test.in; -}; - -script = { - testcase; - name = f2fs_test; - common = tests/f2fs_test.in; -}; - -script = { - testcase; - name = nilfs2_test; - common = tests/nilfs2_test.in; -}; - -script = { - testcase; - name = romfs_test; - common = tests/romfs_test.in; -}; - -script = { - testcase; - name = exfat_test; - common = tests/exfat_test.in; -}; - -script = { - testcase; - name = tar_test; - common = tests/tar_test.in; -}; - -script = { - testcase; - name = udf_test; - common = tests/udf_test.in; -}; - -script = { - testcase; - name = hfs_test; - common = tests/hfs_test.in; -}; - -script = { - testcase; - name = jfs_test; - common = tests/jfs_test.in; -}; - -script = { - testcase; - name = btrfs_test; - common = tests/btrfs_test.in; -}; - -script = { - testcase; - name = zfs_test; - common = tests/zfs_test.in; -}; - -script = { - testcase; - name = cpio_test; - common = tests/cpio_test.in; -}; - -script = { - testcase; - name = example_scripted_test; - common = tests/example_scripted_test.in; -}; - -script = { - testcase; - name = gettext_strings_test; - common = tests/gettext_strings_test.in; - extra_dist = po/exclude.pot; -}; - -script = { - testcase; - name = pata_test; - common = tests/pata_test.in; -}; - -script = { - testcase; - name = ahci_test; - common = tests/ahci_test.in; -}; - -script = { - testcase; - name = uhci_test; - common = tests/uhci_test.in; -}; - -script = { - testcase; - name = ohci_test; - common = tests/ohci_test.in; -}; - -script = { - testcase; - name = ehci_test; - common = tests/ehci_test.in; -}; - -script = { - testcase; - name = example_grub_script_test; - common = tests/example_grub_script_test.in; -}; - -script = { - testcase; - name = grub_script_eval; - common = tests/grub_script_eval.in; -}; - -script = { - testcase; - name = grub_script_test; - common = tests/grub_script_test.in; -}; - -script = { - testcase; - name = grub_script_echo1; - common = tests/grub_script_echo1.in; -}; - -script = { - testcase; - name = grub_script_leading_whitespace; - common = tests/grub_script_leading_whitespace.in; -}; - -script = { - testcase; - name = grub_script_echo_keywords; - common = tests/grub_script_echo_keywords.in; -}; - -script = { - testcase; - name = grub_script_vars1; - common = tests/grub_script_vars1.in; -}; - -script = { - testcase; - name = grub_script_for1; - common = tests/grub_script_for1.in; -}; - -script = { - testcase; - name = grub_script_while1; - common = tests/grub_script_while1.in; -}; - -script = { - testcase; - name = grub_script_if; - common = tests/grub_script_if.in; -}; - -script = { - testcase; - name = grub_script_blanklines; - common = tests/grub_script_blanklines.in; -}; - -script = { - testcase; - name = grub_script_final_semicolon; - common = tests/grub_script_final_semicolon.in; -}; - -script = { - testcase; - name = grub_script_dollar; - common = tests/grub_script_dollar.in; -}; - -script = { - testcase; - name = grub_script_comments; - common = tests/grub_script_comments.in; -}; - -script = { - testcase; - name = grub_script_functions; - common = tests/grub_script_functions.in; -}; - -script = { - testcase; - name = grub_script_break; - common = tests/grub_script_break.in; -}; - -script = { - testcase; - name = grub_script_continue; - common = tests/grub_script_continue.in; -}; - -script = { - testcase; - name = grub_script_shift; - common = tests/grub_script_shift.in; -}; - -script = { - testcase; - name = grub_script_blockarg; - common = tests/grub_script_blockarg.in; -}; - -script = { - testcase; - name = grub_script_setparams; - common = tests/grub_script_setparams.in; -}; - -script = { - testcase; - name = grub_script_return; - common = tests/grub_script_return.in; -}; - -script = { - testcase; - name = grub_cmd_regexp; - common = tests/grub_cmd_regexp.in; -}; - -script = { - testcase; - name = grub_cmd_date; - common = tests/grub_cmd_date.in; -}; - -script = { - testcase; - name = grub_cmd_set_date; - common = tests/grub_cmd_set_date.in; -}; - -script = { - testcase; - name = grub_cmd_sleep; - common = tests/grub_cmd_sleep.in; -}; - -script = { - testcase; - name = grub_script_expansion; - common = tests/grub_script_expansion.in; -}; - -script = { - testcase; - name = grub_script_not; - common = tests/grub_script_not.in; -}; - -script = { - testcase; - name = grub_script_no_commands; - common = tests/grub_script_no_commands.in; -}; - -script = { - testcase; - name = partmap_test; - common = tests/partmap_test.in; -}; - -script = { - testcase; - name = hddboot_test; - common = tests/hddboot_test.in; -}; - -script = { - testcase; - name = fddboot_test; - common = tests/fddboot_test.in; -}; - -script = { - testcase; - name = cdboot_test; - common = tests/cdboot_test.in; -}; - -script = { - testcase; - name = netboot_test; - common = tests/netboot_test.in; -}; - -script = { - testcase; - name = pseries_test; - common = tests/pseries_test.in; -}; - -script = { - testcase; - name = core_compress_test; - common = tests/core_compress_test.in; -}; - -script = { - testcase; - name = xzcompress_test; - common = tests/xzcompress_test.in; -}; - -script = { - testcase; - name = gzcompress_test; - common = tests/gzcompress_test.in; -}; - -script = { - testcase; - name = lzocompress_test; - common = tests/lzocompress_test.in; -}; - -script = { - testcase; - name = grub_cmd_echo; - common = tests/grub_cmd_echo.in; -}; - -script = { - testcase; - name = help_test; - common = tests/help_test.in; -}; - -script = { - testcase; - name = grub_script_gettext; - common = tests/grub_script_gettext.in; -}; - -script = { - testcase; - name = grub_script_escape_comma; - common = tests/grub_script_escape_comma.in; -}; - -script = { - testcase; - name = grub_script_strcmp; - common = tests/grub_script_strcmp.in; -}; - -script = { - testcase; - name = test_sha512sum; - common = tests/test_sha512sum.in; -}; - -script = { - testcase; - name = test_unset; - common = tests/test_unset.in; -}; - -script = { - testcase; - name = grub_func_test; - common = tests/grub_func_test.in; -}; - -script = { - testcase; - name = grub_cmd_tr; - common = tests/grub_cmd_tr.in; -}; - -script = { - testcase; - name = file_filter_test; - common = tests/file_filter_test.in; -}; - -script = { - testcase; - name = grub_cmd_test; - common = tests/grub_cmd_test.in; -}; - -script = { - testcase; - name = syslinux_test; - common = tests/syslinux_test.in; -}; - -program = { - testcase; - name = example_unit_test; - common = tests/example_unit_test.c; - common = tests/lib/unit_test.c; - common = grub-core/kern/list.c; - common = grub-core/kern/misc.c; - common = grub-core/tests/lib/test.c; - ldadd = libgrubmods.a; - ldadd = libgrubgcry.a; - ldadd = libgrubkern.a; - ldadd = grub-core/lib/gnulib/libgnu.a; - ldadd = '$(LIBDEVMAPPER) $(LIBZFS) $(LIBNVPAIR) $(LIBGEOM)'; -}; - -program = { - testcase; - name = printf_test; - common = tests/printf_unit_test.c; - common = tests/lib/unit_test.c; - common = grub-core/kern/list.c; - common = grub-core/kern/misc.c; - common = grub-core/tests/lib/test.c; - ldadd = libgrubmods.a; - ldadd = libgrubgcry.a; - ldadd = libgrubkern.a; - ldadd = grub-core/lib/gnulib/libgnu.a; - ldadd = '$(LIBDEVMAPPER) $(LIBZFS) $(LIBNVPAIR) $(LIBGEOM)'; -}; - -program = { - testcase; - name = date_test; - common = tests/date_unit_test.c; - common = tests/lib/unit_test.c; - common = grub-core/kern/list.c; - common = grub-core/kern/misc.c; - common = grub-core/tests/lib/test.c; - ldadd = libgrubmods.a; - ldadd = libgrubgcry.a; - ldadd = libgrubkern.a; - ldadd = grub-core/lib/gnulib/libgnu.a; - ldadd = '$(LIBDEVMAPPER) $(LIBZFS) $(LIBNVPAIR) $(LIBGEOM)'; -}; - -program = { - testcase; - name = priority_queue_unit_test; - common = tests/priority_queue_unit_test.cc; - common = tests/lib/unit_test.c; - common = grub-core/kern/list.c; - common = grub-core/kern/misc.c; - common = grub-core/tests/lib/test.c; - common = grub-core/lib/priority_queue.c; - ldadd = libgrubmods.a; - ldadd = libgrubgcry.a; - ldadd = libgrubkern.a; - ldadd = grub-core/lib/gnulib/libgnu.a; - ldadd = '$(LIBDEVMAPPER) $(LIBZFS) $(LIBNVPAIR) $(LIBGEOM)'; - condition = COND_HAVE_CXX; -}; - -program = { - testcase; - name = cmp_test; - common = tests/cmp_unit_test.c; - common = tests/lib/unit_test.c; - common = grub-core/kern/list.c; - common = grub-core/kern/misc.c; - common = grub-core/tests/lib/test.c; - ldadd = libgrubmods.a; - ldadd = libgrubgcry.a; - ldadd = libgrubkern.a; - ldadd = grub-core/lib/gnulib/libgnu.a; - ldadd = '$(LIBDEVMAPPER) $(LIBZFS) $(LIBNVPAIR) $(LIBGEOM)'; -}; - -program = { - name = grub-menulst2cfg; - mansection = 1; - common = util/grub-menulst2cfg.c; - common = grub-core/lib/legacy_parse.c; - common = grub-core/lib/i386/pc/vesa_modes_table.c; - common = grub-core/osdep/init.c; - - ldadd = libgrubmods.a; - ldadd = libgrubgcry.a; - ldadd = libgrubkern.a; - ldadd = grub-core/lib/gnulib/libgnu.a; - ldadd = '$(LIBINTL) $(LIBDEVMAPPER) $(LIBZFS) $(LIBNVPAIR) $(LIBGEOM)'; -}; - -program = { - name = grub-syslinux2cfg; - mansection = 1; - common = util/grub-syslinux2cfg.c; - common = grub-core/lib/syslinux_parse.c; - common = grub-core/lib/getline.c; - common = grub-core/osdep/init.c; - common = grub-core/kern/emu/hostfs.c; - common = grub-core/disk/host.c; - common = grub-core/kern/emu/argp_common.c; - - ldadd = libgrubmods.a; - ldadd = libgrubgcry.a; - ldadd = libgrubkern.a; - ldadd = grub-core/lib/gnulib/libgnu.a; - ldadd = '$(LIBINTL) $(LIBDEVMAPPER) $(LIBZFS) $(LIBNVPAIR) $(LIBGEOM)'; -}; - -program = { - name = grub-glue-efi; - mansection = 1; - - common = util/grub-glue-efi.c; - common = util/glue-efi.c; - common = grub-core/kern/emu/argp_common.c; - common = grub-core/osdep/init.c; - - ldadd = libgrubmods.a; - ldadd = libgrubgcry.a; - ldadd = libgrubkern.a; - ldadd = grub-core/lib/gnulib/libgnu.a; - ldadd = '$(LIBINTL) $(LIBDEVMAPPER) $(LIBZFS) $(LIBNVPAIR) $(LIBGEOM)'; -}; - -program = { - name = grub-render-label; - mansection = 1; - - common = util/grub-render-label.c; - common = util/render-label.c; - common = grub-core/kern/emu/argp_common.c; - common = grub-core/kern/emu/hostfs.c; - common = grub-core/disk/host.c; - common = grub-core/osdep/init.c; - - ldadd = libgrubmods.a; - ldadd = libgrubgcry.a; - ldadd = libgrubkern.a; - ldadd = grub-core/lib/gnulib/libgnu.a; - ldadd = '$(LIBINTL) $(LIBDEVMAPPER) $(LIBZFS) $(LIBNVPAIR) $(LIBGEOM)'; -}; - -program = { - name = grub-file; - mansection = 1; - - common = util/grub-file.c; - common = util/render-label.c; - common = grub-core/commands/file.c; - common = grub-core/commands/file32.c; - common = grub-core/commands/file64.c; - common = grub-core/loader/i386/xen_file.c; - common = grub-core/loader/i386/xen_file32.c; - common = grub-core/loader/i386/xen_file64.c; - common = grub-core/io/offset.c; - common = grub-core/kern/elf.c; - common = grub-core/loader/lzss.c; - common = grub-core/loader/macho.c; - common = grub-core/loader/macho32.c; - common = grub-core/loader/macho64.c; - common = grub-core/kern/emu/hostfs.c; - common = grub-core/disk/host.c; - common = grub-core/osdep/init.c; - - ldadd = libgrubmods.a; - ldadd = libgrubgcry.a; - ldadd = libgrubkern.a; - ldadd = grub-core/lib/gnulib/libgnu.a; - ldadd = '$(LIBINTL) $(LIBDEVMAPPER) $(LIBZFS) $(LIBNVPAIR) $(LIBGEOM)'; -}; diff --git a/thirdparty/grub-2.04/Makefile.utilgcry.def b/thirdparty/grub-2.04/Makefile.utilgcry.def deleted file mode 100644 index c85333b60..000000000 --- a/thirdparty/grub-2.04/Makefile.utilgcry.def +++ /dev/null @@ -1,31 +0,0 @@ -AutoGen definitions Makefile.tpl; - -library = { - name = libgrubgcry.a; - cflags = '$(CFLAGS_GCRY)'; - cppflags = '$(CPPFLAGS_GCRY)'; - extra_dist = grub-core/lib/libgcrypt-grub/cipher/ChangeLog; - - common = grub-core/lib/libgcrypt-grub/cipher/arcfour.c; - common = grub-core/lib/libgcrypt-grub/cipher/blowfish.c; - common = grub-core/lib/libgcrypt-grub/cipher/camellia-glue.c; - common = grub-core/lib/libgcrypt-grub/cipher/camellia.c; - common = grub-core/lib/libgcrypt-grub/cipher/cast5.c; - common = grub-core/lib/libgcrypt-grub/cipher/crc.c; - common = grub-core/lib/libgcrypt-grub/cipher/des.c; - common = grub-core/lib/libgcrypt-grub/cipher/idea.c; - common = grub-core/lib/libgcrypt-grub/cipher/md4.c; - common = grub-core/lib/libgcrypt-grub/cipher/md5.c; - common = grub-core/lib/libgcrypt-grub/cipher/rfc2268.c; - common = grub-core/lib/libgcrypt-grub/cipher/rijndael.c; - common = grub-core/lib/libgcrypt-grub/cipher/rmd160.c; - common = grub-core/lib/libgcrypt-grub/cipher/seed.c; - common = grub-core/lib/libgcrypt-grub/cipher/serpent.c; - common = grub-core/lib/libgcrypt-grub/cipher/sha1.c; - common = grub-core/lib/libgcrypt-grub/cipher/sha256.c; - common = grub-core/lib/libgcrypt-grub/cipher/sha512.c; - common = grub-core/lib/libgcrypt-grub/cipher/tiger.c; - common = grub-core/lib/libgcrypt-grub/cipher/twofish.c; - common = grub-core/lib/libgcrypt-grub/cipher/whirlpool.c; - common = grub-core/lib/libgcrypt-grub/cipher/init.c; -}; diff --git a/thirdparty/grub-2.04/NEWS b/thirdparty/grub-2.04/NEWS deleted file mode 100644 index e7ca7fb3f..000000000 --- a/thirdparty/grub-2.04/NEWS +++ /dev/null @@ -1,721 +0,0 @@ -New in 2.04: - -* GCC 8 and 9 support. -* Gnulib integration overhaul. -* RISC-V support. -* Xen PVH support. -* Native UEFI secure boot support. -* UEFI TPM driver. -* New IEEE 1275 obdisk driver. -* Btrfs RAID 5 and RIAD 6 support. -* PARTUUID support. -* VLAN support. -* Native DHCP support. -* Many ARM and ARM64 fixes. -* Many SPARC fixes. -* Many IEEE 1275 fixes. -* ...and tons of other fixes and cleanups... - -New in 2.02: - -* New/improved filesystem and disk support: - * Big-endian UFS1. - * Experimental 64-bit ext2 support. - * Various fixes for non-512-byte sector devices. - * New `proc' filesystem framework, used by LUKS disks. - * Fix DM-RAID partition handling. - * New `nativedisk' command to switch from firmware to native disk drivers. - * Compressed HFS+. - * DragonFly BSD labels. - * CBFS (coreboot). - * Handle partitioned LVM properly. - * Use LVM UUIDs whenever possible. - * GPT PReP. - * New `progress' module that shows progress information while reading - files. - * ZFS features support. - * ZFS LZ4 support. - * XFS V5 format support. - * LVM RAID1 support. - -* New/improved terminal and video support: - * Monochrome text (matching `hercules' in GRUB Legacy). - * Morse code output using system speaker. - * `spkmodem' output (simple data protocol using system speaker). - * Handle Japanese special keys. - * coreboot framebuffer. - * Serial on ARC. - * Native vt100 handling for grub-emu, replacing the use of the curses - library. - * New gfxmenu options for terminal window positioning, theme background - image handling, and scrollbar padding, plus `item_pixmap_style' and - `highlight_overlay'. - * Support several more image types (paletted and greyscale). - -* Boot protocol improvements: - * Support Apple FAT binaries on non-Apple platforms. - * Improve FreeDOS direct loading support compatibility. - * Enable `linux16' on all x86 platforms, not just BIOS. - * New TrueCrypt ISO loader. - * multiboot2 boot-services EFI specification. - * multiboot2 EFI memory map specification. - * multiboot2 full-file specfication. - -* New/improved network support: - * New variables `net_default_*' containing properties of the default - interface. - * Autoload `http' and `tftp' modules if necessary. - * Improve TFTP robustness. - * Parse `nd' disk names in GRUB Legacy configuration files. - * Issue separate DNS queries for IPv4 and IPv6. - * Support IPv6 Router Advertisement to configure default router. - * New variable net__next_server containing next server - from BOOTP reply. - -* Coreboot improvements: - * CBFS support both in on-disk images (loopback) and flash. - * Ability to launch another payload from flash or disk - * Coreboot framebuffer - * CBMEMC support (both logging and inspecting logs) - * Command for inspecting coreboot timestamps (`coreboot_boottime'). - * Command for inspecting coreboot tables (`lscoreboot'). - * New target default_payload.elf. - * Increased maximal core size. - * Prefer pmtimer for TSC calibration. - -* New/improved platform support: - * New `efifwsetup' and `lsefi' commands on EFI platforms. - * New `cmosdump' and `cmosset' commands on platforms with CMOS support. - * New command `pcidump' for PCI platforms. - * Improve opcode parsing in ACPI halt implementation. - * Use the TSC as a possible time source on i386-ieee1275. - * Merge PowerPC grub-mkrescue implementation with the common one. - * Support grub-mkrescue on i386-ieee1275, sparc64, bootinfo machines such - as pSeries, and mips-arc. - * Make grub-mkrescue better support Apple Intel Macs on CD. - * Enable GRUB Legacy configuration file parsing on EFI. - * Support halt for Loongson 2E. - * ARM U-Boot and EFI ports. - * Reorganise platform-dependent code in utilities to avoid #ifdef mess. - * AROS and Haiku support for userspace utilities. - * Xen PV port. - * Fix EFI stack alignment. - * ARM64 EFI port. - * On Linux, read partition start offsets from sysfs if possible. - * New grub-macbless utility, and better integration with Mac firmware in - grub-install. - * Support Yeeloong 3A. - * Add `cpuid --pae' option to detect Physical Address Extension on x86. - * Support for USB debug dongles. - * Support for *-emu on all platforms (previously only i386/x86_64 worked). - * Support *-emu on Windows. - * New platform `none' which builds only user level utilities. This is now - default if target CPU is not supported. - * Support for booting little-endian Linux kernel on powerpc. - * Support network boot with Oracle sun4v vnet devices. - * Added SAS disks to the IEEE 1275 Open Firmware device list. - * Try multiple methods for TSC (timestamp counter) calibration - PIT, pmtimer, - EFI Stall. If everything fails, use hardcoded frequency 800MHz. - * Support Hyper-V Gen2 platforms which lack PIT for TSC calibration. - * Map UEFI Persistent Memory to E820 persistent memory. - * New Xen loader on ARM64. - * Respect alignment requirement for block device IO buffers on EFI. - -* Security: - * Add optional facility to enforce that all files read by the core image - from disk have a valid detached digital signature. - -* Performance: - * Avoid costly division operations in many places. - * New boot time analysis framework (`./configure --enable-boot-time'). - * Initialise USB ports in parallel. - * New `testspeed' command to test file read speed. - * Speed-up gfxterm by storing intermediate results in more compact format. - * Lazy LVM/mdraid scan. - * Disk hints. - -* Scripting: - * New `eval' and `tr' commands. - * grub-script-check fails on scripts containing no commands. - -* Installation and other utility improvements: - * Add option to compress files on installation or image creation. - * Using grub-reboot no longer requires setting `GRUB_DEFAULT=saved'. - * Support probing EFI System Partition (requires os-prober >= 1.58). - * Fix inconsistent use of `GRUB_CRYPTODISK_ENABLE' and - `GRUB_ENABLE_CRYPTODISK'; the latter is now used consistently. - * grub-mount handles symbolic links to directories. - * Support disabling submenus with `GRUB_DISABLE_SUBMENU' configuration key - for grub-mkconfig. - * grub-install, grub-mknetdir, grub-mkrescue, and grub-mkstandalone - rewritten in C. They should now work in supported non-Unix-like - environments. - * Native mingw support. - * Ability to install on EFI under windows. - * Reorganise timeout handling using new `timeout_style' environment - variable and `GRUB_TIMEOUT_STYLE' configuration key for grub-mkconfig. - Menu hotkeys pressed during a hidden timeout now boot the corresponding - menu entry immediately. - * New `file' command and grub-file utility to check file types. - * New syslinux configuration file parser. - * Set menu entry class to primary OS name returned by os-prober to display - OS specific icon. - * On Linux x86 detect EFI word size in grub-install and automatically select - correct platform (x86_64-efi or i386-efi) to install. Requires Linux kernel - 4.0 or higher. - -* Build system: - * Remove all uses of nested functions; GRUB no longer requires an - executable stack. - * Fix documentation build with Texinfo >= 5.1. - * More robust and documented cross-compiling support. - * Partial clang support for some platforms (experimental). - * Partial mingw64 x86_64-efi compile support (highly experimental). - * Partial mingw32 i386-* (other than already present i386-pc) - compile support (highly experimental). - * Support for grub-mkpasswd on Windows. - * Eliminate the use of AutoGen. This allowed some performance - improvements to the build system. - * Remove variable length arrays. - * OpenBSD compile and tools support (NetBSD and FreeBSD were already supported). - * Fix build with FreeType >= 2.5.1. - * Make gentpl.py compatible with Python 3. It now requires at least - Python 2.6. - * modinfo.sh contains build information now. - * Added many new tests to improve robustness. - * Target is built without libgcc now. Necessary builtins are reimplemented - directly. This removes requirement for target-specific runtime on build - system. - * emu libusb support removed (was broken and unmaintained). - * powerpc64le compile support. - * Use fixed timestamp when generating GRUB image for reproducible builds. - * Verify at build time that modules contain only supported relocations and their - structure matches what boot-time module loader expects. - * Do not require fonts on powerpc-ieee1275. - -* Revision control moved to git. - -New in 2.00: - -* Appearance: - * Official theme for gfxmenu (starfield) - * Menu is organised with submenus. - * Better default video mode selection using EDID. - -* New platforms: - * Itanium port. - * Fuloong2F support (including GRUB as firmware) - * Fuloong2E support (except GRUB as firmware) - * ARCS (SGI machines) port. - * qemu -M mips port. - -* grub-mount to mount filesystems using GRUB FS drivers and FUSE. - -* Changed security default so entries are locked by default if any superuser is - defined. - -* New drivers: - * EHCI. - * AHCI. - * ESCC serial. - * IEEE1275 serial. - * EFI serial. - * Network stack for BIOS, IEEE1275, EMU and EFI, including TFTP, HTTP and DNS. - -* New filesystem, filters and disks formats: - * DVH partition map. - * Plan9 partition map. - * Big-endian mdraid. - * Big-endian cpio. - * ODC and NEWC cpio. - * ExFAT. - * Minix3fs. - * Big-endian minixfs. - * RomFS. - * Squash4. - * Support non-512B disk blocks. - * LUKS and GELI support. - * LDM read support (no install yet). - * LZOP. - -* Improved filesystem and disks formats support: - * HFS+ label support. - * Improved reiserfs support. - * multidevice, mirrored and raidz(2,3) ZFS support. - * RAID LVM (internal RAIDing) support. - * ZFS crypto support. - * ZLE, LZ4 and GZIP on ZFS support. - * Support ZFS up to 33. - * HFS string is now treated like mac-roman and not UTF-8 - * HFS mtime support. - * Improved AFFS and SFS support. - * LZO-compressed btrfs support. - * cpio and tar symlinks support. - * Better FS detection to reduce false positives. - -* New boot protocols: - * Ability to load another coreboot payload when on coreboot. - * Plan9. - * Freedos. - * Ntldr/bootmgr (to load Windows bootloader). - * chainloader --bpb support to patch FAT or NTFS BPB in memory to correct - wrong partition offset. - * PXE chainloading support. - * Darwin 11 (Mac OS X Lion) protocol support. - -* Boot protocol improvements: - * Multiple initrd support. - * Basic illumos and xnu autoconfig. - -* Testing and debugging: - * New grub-fstest commands: cat, zfsinfo, testload xnu_uuid - * grub-fstest recursive directory compare for quickly checking that - a directory is read correctly. - * Backtace on crash (if gdb module is loaded, x86 only) - * Disk cache statistics gathering. - * GDB stub and GDB support script. - * "make check" and "make bootcheck" expanded to almost all platforms - (except i386-ieee1275, mips-arc, sparc64-ieee1275, ia64-efi and emu) - * New `time' command. - -* Performance: - * Lazy scanning to avoid accessing devices which aren't really used. - This avoids boot delay due to slow device scanning. - * Use CPU cache when accessing video memory. - * Search hints to first try the most likely device when searching for a - device with given UUID. This avoids slow scanning in most cases. - -* Internationalisation: - * Updated to Unicode 6.0. - * $"..." syntax for translation in grub scripting language. This allows easy - translation of grub.cfg at runtime. - * Translations to many languages included in official distribution. - -* Scripting: - * $grub_cpu and $grub_platform variables for conditioning grub.cfg on platform - at runtime. - * $feature_* variables to condition scripts on available features. - * Use of ids to identify menu entries. - * all_video module which is empty but depends on all video modules thus - allowing easy loading of all of them. - -* Installation: - * grub-mknetdir script for easy creation of netbootable GRUB directory. - * Itanium and mips support in grub-mkrescue. - * grub-install support for all platforms except emu. - * PreP partition install support. - * No files conflict between flavours (except grub-mkrescue for ppc). This - allows easy install of GRUB for several platforms. - * grub-mkstandalone script for easy creating of image including all modules - for platforms with generous limit on image size. - * program-transform-name now functions according to usual conventions. - Use --grubdir and --bootdir to get old behaviour. - -* ADLER32 and CRC64 support (for XZ and hashsum). - -* ofconsole renamed to console - -* Experimental support for compiling with Apple toolchain. - -* grub-mkdevicemap removed. Now all devices are detected on invocation of - any grub utility. - -New in 1.99: - -* Keyboard layouts support. - -* New `lsapm' command (i386-pc only). - -* Parser for GRUB Legacy configuration files. - -* Support RAID on virtio devices. - -* Remove deprecated `root' command. - -* New `euro.pf2' font which supports most European languages. - -* Avoid opening the same device twice on Open Firmware platforms. - -* Extend `vbeinfo' and `vbetest' commands to non-VBE graphics, as - `videoinfo' and `videotest'. - -* New `lsefisystab', `lssal', and `lsefimmap' commands on EFI platforms. - -* Support explicit user claim that a device is BIOS-visible. Devices - listed in device.map will be assumed to be readable using only BIOS - facilities, rather than anything more complex such as LVM or RAID. - -* New bash-completion script for GRUB utilities. - -* Use ACPI to shut down if possible. - -* New `lsacpi' command. - -* Btrfs support. - -* New `--boot-directory' option to `grub-install', `grub-reboot', and - `grub-set-default', with clearer semantics than the previous - `--root-directory' option. - -* Rename CD-ROM device to "cd" on BIOS platforms. - -* Transparent decompression filters. - -* Simpler PXE image generation. New `grub-mknetdir' utility to generate - netboot directory trees. - -* New relocator. Allows for more kernel support and more - straightforward loader writing. - -* Handle USB pendrives exposed as floppies. - -* New Automake-based build system. - -* Add `sendkey' command (i386-pc only). - -* ZFS support. - -* Support 1.x versions of mdadm metadata. - -* Fix corruption when reading Reiserfs directory entries. - -* Bidirectional text and diacritics support. - -* Skip LVM snapshots. - -* MIPS Yeeloong firmware port. - -* Change grub-mkdevicemap to emit /dev/disk/by-id/ names where possible - on GNU/Linux. - -* Add `grub-mkconfig' support for Xen with Linux. - -* Add `grub-mkconfig' support for initrd images on Fedora 13. - -* Support >3GiB and <16MiB RAM in i386-qemu. - -* Add support for Cirrus 5446 and Bochs video cards. - -* Load more appropriate video drivers automatically in `grub-mkconfig'. - -* USB improvements, including hotplugging/hotunplugging, hub support, - and USB serial support. - -* AMD Geode CS5536 support. - -* Extensive updates to the Texinfo documentation. - -* Handle symbolic links under /dev/mapper on GNU/Linux. - -* Handle installation across multiple partition table types. - -* Add `cmostest' command (i386/x86_64 only). - -* Add support for DM-RAID disk devices on GNU/Linux. - -* Remove `grub-mkisofs'. `grub-mkrescue' now uses GNU xorriso to build - CD images. - -* `grub-mkrescue' support for EFI, coreboot, and QEMU platforms. - -* Unify `grub-mkimage', `grub-setup', and `grub-install' source code - across platforms. - -* Fix VGA (as opposed to VBE) video driver, formerly a terminal driver. - -* Add menu hotkey support. - -* Add support for the nilfs2 filesystem. - -* `grub-probe' and `grub-mkconfig' support for NetBSD. - -* Support setting a background image in `grub-mkconfig'. - -* Support multiple terminals in `grub-mkconfig'. - -* Regexp support. - -* MIPS multiboot2 support. - -* Multiboot2 tag support. - -* sunpc partition table support. - -* Add a number of new language features to GRUB script: `for', `while', - `until', `elif', function parameters, `break', `continue', `shift', - multi-line quoted strings, positional parameters with `setparams', - `return', filename wildcard expansion, and `!'. - -* Support nested partition tables. GRUB now prefers to name partitions - in the form `(hd0,msdos1,bsd1)' rather than `(hd0,1,a)'. - -* Speed up consecutive hostdisk operations on the same device. - -* Compile parts of `grub-emu' as modules. - -New in 1.98 - 2010-03-06: - -* Multiboot on EFI support. - -* Graphical menu support. - -* MIPS support. - -* Saved default menu entry support, with new utilities `grub-reboot' and - `grub-set-default'. - -* Unit testing framework. - -* Support for multiple terminals. - -* Encrypted password support, with a new utility `grub-mkpasswd-pbkdf2'. - -* `grub-mkfloppy' removed; use `grub-mkrescue' to create floppy images. - -* Add grub-probe support for GNU/Hurd. - -* Add support for gettext. - -New in 1.97: - -* Add support for loading XNU (MacOS X kernel). - -* ACPI override support. - -* Integrated gptsync. - -* Password protection support. - -* Partition manipulation tool. - -* Add `keystatus' command. - -* Unicode fonts are now used by default. - -* Add `hdparm' command. - -* Add support for getting the current date and time from CMOS as variables. - -* Add `drivemap' command. - -* Add support for RAID levels 4,6 and 10. - -* update-grub is replaced by grub-mkconfig. - -* When booting from PXE, PXE can be used to load files. - -* High resolution timer support. - -* Image loaders now support IO buffering. - -* Add `crc' command. - -* Add Cygwin support. - -* Add x86_64 EFI support. - -* Use LZMA compression instead of LZO. - -* Support for saving the environment from and loading the environment - from a file. - -* Allow the UUID to be used as device name. - -* The `search' command can use UUIDs now. - -* Add support for IEEE 1275 on i386. - -* Create partmap.lst and use it to automatically load partition map - modules. - -* grub-mkconfig supports os-prober to add operating systems to the - boot menu. - -* The ATA driver supports devices bigger than 2 TiB. - -* Add support for the UDF, AFS and EXT4 filesystems. - -* The ISO9660 filesystem supports the Joliet extension - -* Add support for loading kernels of FreeBSD, NetBSD and OpenBSD. - -* Add new command `sleep'. - -* Support for direct access to AT keyboards. - -* New utility `grub-fstest'. - -New in 1.96 - 2008-02-03: - -* The license term is changed to GNU General Public License Version 3. - -* grub-emu is made optional. Now you have to use - `--enable-grub-emu' to enable it. - -* Add Multiboot2 support. - -* grub-emu can access the host filesystem now. - -* Add support for the NTFS, cpio/tar and Reiserfs filesystems. - -* Add support for ATA/ATAPI. - -* Add update-grub script to generate grub.cfg. - -* Add grub-mkrescue script to generate floppy or ElTorito images - (i386-pc only). - -* Add support for background images in gfxterm (background_image command). - -* Add support for detection of 64-bit support in CPU (cpuid command). - -* GPT is now enabled in i386-pc target. - -* Add grub-install for EFI. - -* Ported to the following new platforms: Efika, coreboot (a.k.a. LinuxBIOS), - OLPC XO. - -* Add support for colored menu (menu_color_normal and menu_color_highlight - variables). - -* Fix support for loading Linux zImages (such as memtest86). - -New in 1.95 - 2006-10-15: - -* Number partitions from 1 instead of 0. For instance, the first - partition of "hd0" is now "hd0,1" but not "hd0,0". - -* grub-probefs is renamed to grub-probe, and supports printing a - guessed OS device name and a GRUB drive name. - -* RAID and LVM support is added. - -* New command, echo. - -* The disk API is changed to support 64-bit addressing. - -* A TGA loader is added for the video API. - -New in 1.94 - 2006-06-04: - -* Fix several serious bugs in HFS+. - -* Add experimental EFI support. Chainloading and Linux loading are - supported at the moment. - -* Add a new command "blocklist" to show a block list. - -* Use --with-platform to specify a boot environment. For now, efi, - ieee1275 and pc are supported. - -* Use the filename "kernel.elf" instead of "grubof" on ieee1275. - -* Install GRUB into pkglibdir instead of pkgdatadir. - -* Support environmental variables. You can export variables by the - command "export". - -* Remove the commands "default" and "timeout". They are now variables. - -* Add the commands "source" and "." to include a file. - -* Implement experimental Video API and a new terminal "gfxterm" based - on the Video API. - - -New in 1.93 - 2006-03-10: - -* Add support for the HFS+ wrapper. - -* Major improvements to scripting support. - -* Menu entries are now scriptable. - - -New in 1.92 - 2005-12-25: - -* Add support for GPT partition table format. - -* Add a new command "play" to play an audio file on PC. - -* Add support for Linux/ADFS partition table format. - -* Add support for BASH-like scripting. - -* Add support for Apple HFS+ filesystems. - - -New in 1.91 - 2005-10-15: - -* Add support for LZO version 2. - -* Support completion in the entry editor. - -* Add VBE support. - -* New commands, "search", "vbetest" and "vbeinfo". - -* The option BOOT_IMAGE is passed to Linux. - -* Add support for automatic decompression for gzip. - -* Add support for terminfo and serial. - -* Add support for x86_64. - -* GRUB itself is a Multiboot-compliant kernel. - -* Add new filesystems: XFS, SFS, and AFFS. - - -New in 1.90 - 2005-08-07: - -* Rename the project name PUPA to GRUB. Now this version is the - developmental version of GRUB officially. - -* The GRUB emulator ``grub-emu'' is added. - -* Add support for newworld Mac. This should work with other - PowerPC-based machines as well, if they use IEEE 1275 - (Open Firmware). - -* Too many changes to describe. Look at ChangeLog for more details. - - -New in 0.7: - -* Problems in cross-compiling PUPA are fixed. - -* Use -mrtd and -mregparm=3 to reduce the generated code sizes. This - means that any missing prototypes could be fatal. Also, you must take - care when writing assembly code. See the comments at the beginning of - startup.S, for more details. - -* New utility, ``pupa-setup''. This sets up PUPA to make it bootable - from a real disk. - -* New commands, "prefix", "insmod", "rmmod" and "lsmod" are added into - the rescue mode to manipulate PUPA modules. - -* Linux support is added. Initrd is not support yet. - -* Reduce the size of a core image significantly by compressing a large - part of the core image and decompressing itself at boot time. The - currently used algorithm is LZO (more precisely, LZO1X-999). So you - have to install LZO to build PUPA. See - , for more information. - - -New in 0.6 - 2002-12-27, Yoshinori K. Okuji: - -* The chainloader and the FAT filesystem are modularized. - -* The structure of the source tree is a bit changed. - -* Support for building loadable modules is added. - -* Some generic parts of pupa-mkimage are segregated. - -* Some documentation files are added, according to the GNU Coding - Standards. diff --git a/thirdparty/grub-2.04/README b/thirdparty/grub-2.04/README deleted file mode 100644 index 685b01657..000000000 --- a/thirdparty/grub-2.04/README +++ /dev/null @@ -1,20 +0,0 @@ -This is GRUB 2, the second version of the GRand Unified Bootloader. -GRUB 2 is rewritten from scratch to make GNU GRUB cleaner, safer, more -robust, more powerful, and more portable. - -See the file NEWS for a description of recent changes to GRUB 2. - -See the file INSTALL for instructions on how to build and install the -GRUB 2 data and program files. - -Please visit the official web page of GRUB 2, for more information. -The URL is . - -More extensive documentation is available in the Info manual, -accessible using 'info grub' after building and installing GRUB 2. - -There are a number of important user-visible differences from the -first version of GRUB, now known as GRUB Legacy. For a summary, please -see: - - info grub Introduction 'Changes from GRUB Legacy' diff --git a/thirdparty/grub-2.04/THANKS b/thirdparty/grub-2.04/THANKS deleted file mode 100644 index 82b4bc838..000000000 --- a/thirdparty/grub-2.04/THANKS +++ /dev/null @@ -1,38 +0,0 @@ -GRUB 2 would not be what it is today without the invaluable help of -everybody who was kind enough to spend time testing it and reporting -bugs. - -The following people made especially gracious contributions of their -time and energy in helping to track down bugs, add new features, and -generally assist in the GRUB 2 maintainership process: - -Andrey Shuvikov -Bibo Mao -David Miller -Guillem Jover -Harley D. Eades III -Hitoshi Ozeki -Hollis Blanchard -Jeroen Dekkers -Johan Rydberg -Marco Gerards -Michael Guntsche -NIIBE Yutaka -Omniflux -Robert Bihlmeyer -Roger Leigh -Ruslan Nikolaev -Timothy Baldwin -Tomas Ebenlendr -Tristan Gingold -Tsuneyoshi Yasuo -Vesa Jaaskelainen -Vincent Guffens -Vincent Pelletier -Vladimir Serbinenko - -Also, we thank the projects GNU Automake and LZMA. Some code -was stolen from them. - -This project was supported by Information-technology Promotion Agency, -Japan. diff --git a/thirdparty/grub-2.04/TODO b/thirdparty/grub-2.04/TODO deleted file mode 100644 index a9b6d3523..000000000 --- a/thirdparty/grub-2.04/TODO +++ /dev/null @@ -1,9 +0,0 @@ - -Before working on improving GRUB, it's very important that you -make contact with the core GRUB developers. Things herein might be -slightly out of date or otherwise not easy to understand at first -glance. So write to first. - -For bug tracking, refer to: - - http://savannah.gnu.org/bugs/?group=grub diff --git a/thirdparty/grub-2.04/acinclude.m4 b/thirdparty/grub-2.04/acinclude.m4 deleted file mode 100644 index 78cdf6e1d..000000000 --- a/thirdparty/grub-2.04/acinclude.m4 +++ /dev/null @@ -1,477 +0,0 @@ -dnl Redefine AC_LANG_PROGRAM with a "-Wstrict-prototypes -Werror"-friendly -dnl version. Patch submitted to bug-autoconf in 2009-09-16. -m4_define([AC_LANG_PROGRAM(C)], -[$1 -int -main (void) -{ -dnl Do *not* indent the following line: there may be CPP directives. -dnl Don't move the `;' right after for the same reason. -$2 - ; - return 0; -}]) - - -dnl Check whether target compiler is working -AC_DEFUN([grub_PROG_TARGET_CC], -[AC_MSG_CHECKING([whether target compiler is working]) -AC_CACHE_VAL(grub_cv_prog_target_cc, -[AC_LINK_IFELSE([AC_LANG_PROGRAM([[ -asm (".globl start; start:"); -void __main (void); -void __main (void) {} -int main (void); -]], [[]])], - [grub_cv_prog_target_cc=yes], - [grub_cv_prog_target_cc=no]) -]) -AC_MSG_RESULT([$grub_cv_prog_target_cc]) - -if test "x$grub_cv_prog_target_cc" = xno; then - AC_MSG_ERROR([cannot compile for the target]) -fi -]) - - -dnl grub_ASM_USCORE checks if C symbols get an underscore after -dnl compiling to assembler. -dnl Written by Pavel Roskin. Based on grub_ASM_EXT_C written by -dnl Erich Boleyn and modified by Yoshinori K. Okuji. -AC_DEFUN([grub_ASM_USCORE], -[AC_REQUIRE([AC_PROG_CC]) -AC_REQUIRE([AC_PROG_EGREP]) -AC_MSG_CHECKING([if C symbols get an underscore after compilation]) -AC_CACHE_VAL(grub_cv_asm_uscore, -[cat > conftest.c <<\EOF -int func (int *); -int -func (int *list) -{ - *list = 0; - return *list; -} -EOF - -if AC_TRY_COMMAND([${CC-cc} ${CFLAGS} -S conftest.c]) && test -s conftest.s; then - true -else - AC_MSG_ERROR([${CC-cc} failed to produce assembly code]) -fi - -if $EGREP '(^|[^_[:alnum]])_func' conftest.s >/dev/null 2>&1; then - HAVE_ASM_USCORE=1 - grub_cv_asm_uscore=yes -else - HAVE_ASM_USCORE=0 - grub_cv_asm_uscore=no -fi - -rm -f conftest*]) - -AC_MSG_RESULT([$grub_cv_asm_uscore]) -]) - - -dnl Some versions of `objcopy -O binary' vary their output depending -dnl on the link address. -AC_DEFUN([grub_PROG_OBJCOPY_ABSOLUTE], -[AC_MSG_CHECKING([whether ${TARGET_OBJCOPY} works for absolute addresses]) -AC_CACHE_VAL(grub_cv_prog_objcopy_absolute, -[cat > conftest.c <<\EOF -void cmain (void); -void -cmain (void) -{ - *((int *) 0x1000) = 2; -} -EOF - -if AC_TRY_EVAL(ac_compile) && test -s conftest.o; then : -else - AC_MSG_ERROR([${CC-cc} cannot compile C source code]) -fi -grub_cv_prog_objcopy_absolute=yes -for link_addr in 0x2000 0x8000 0x7C00; do - if AC_TRY_COMMAND([${CC-cc} ${TARGET_CFLAGS} ${TARGET_LDFLAGS} -nostdlib ${TARGET_IMG_LDFLAGS_AC} ${TARGET_IMG_BASE_LDOPT},$link_addr conftest.o -o conftest.exec]); then : - else - AC_MSG_ERROR([${CC-cc} cannot link at address $link_addr]) - fi - if AC_TRY_COMMAND([${TARGET_OBJCOPY-objcopy} --only-section=.text -O binary conftest.exec conftest]); then : - else - AC_MSG_ERROR([${TARGET_OBJCOPY-objcopy} cannot create binary files]) - fi - if test ! -f conftest.old || AC_TRY_COMMAND([cmp -s conftest.old conftest]); then - mv -f conftest conftest.old - else - grub_cv_prog_objcopy_absolute=no - break - fi -done -rm -f conftest*]) -AC_MSG_RESULT([$grub_cv_prog_objcopy_absolute]) - -if test "x$grub_cv_prog_objcopy_absolute" = xno; then - AC_MSG_ERROR([GRUB requires a working absolute objcopy; upgrade your binutils]) -fi -]) - - -dnl Supply --build-id=none to ld if building modules. -dnl This suppresses warnings from ld on some systems -AC_DEFUN([grub_PROG_LD_BUILD_ID_NONE], -[AC_MSG_CHECKING([whether linker accepts --build-id=none]) -AC_CACHE_VAL(grub_cv_prog_ld_build_id_none, -[save_LDFLAGS="$LDFLAGS" -LDFLAGS="$LDFLAGS -Wl,--build-id=none" -AC_LINK_IFELSE([AC_LANG_PROGRAM([[]], [[]])], - [grub_cv_prog_ld_build_id_none=yes], - [grub_cv_prog_ld_build_id_none=no]) -LDFLAGS="$save_LDFLAGS" -]) -AC_MSG_RESULT([$grub_cv_prog_ld_build_id_none]) - -if test "x$grub_cv_prog_ld_build_id_none" = xyes; then - TARGET_LDFLAGS="$TARGET_LDFLAGS -Wl,--build-id=none" -fi -]) - -dnl Check nm -AC_DEFUN([grub_PROG_NM_WORKS], -[AC_MSG_CHECKING([whether nm works]) -AC_CACHE_VAL(grub_cv_prog_nm_works, -[ -nm_works_tmp_dir="$(mktemp -d "./confXXXXXX")" -AC_LANG_CONFTEST([AC_LANG_PROGRAM([[]], [[]])]) -$TARGET_CC $TARGET_CFLAGS -c conftest.c -o "$nm_works_tmp_dir/ef" -if $TARGET_NM "$nm_works_tmp_dir/ef" > /dev/null; then - grub_cv_prog_nm_works=yes -else - grub_cv_prog_nm_minus_p=no -fi -rm "$nm_works_tmp_dir/ef" -rmdir "$nm_works_tmp_dir" -]) -AC_MSG_RESULT([$grub_cv_prog_nm_works]) - -if test "x$grub_cv_prog_nm_works" != xyes; then - AC_MSG_ERROR([nm does not work]) -fi -]) - -dnl Supply -P to nm -AC_DEFUN([grub_PROG_NM_MINUS_P], -[AC_MSG_CHECKING([whether nm accepts -P]) -AC_CACHE_VAL(grub_cv_prog_nm_minus_p, -[ -nm_minus_p_tmp_dir="$(mktemp -d "./confXXXXXX")" -AC_LANG_CONFTEST([AC_LANG_PROGRAM([[]], [[]])]) -$TARGET_CC $TARGET_CFLAGS -c conftest.c -o "$nm_minus_p_tmp_dir/ef" -if $TARGET_NM -P "$nm_minus_p_tmp_dir/ef" 2>&1 > /dev/null; then - grub_cv_prog_nm_minus_p=yes -else - grub_cv_prog_nm_minus_p=no -fi -rm "$nm_minus_p_tmp_dir/ef" -rmdir "$nm_minus_p_tmp_dir" -]) -AC_MSG_RESULT([$grub_cv_prog_nm_minus_p]) - -if test "x$grub_cv_prog_nm_minus_p" = xyes; then - TARGET_NMFLAGS_MINUS_P="-P" -else - TARGET_NMFLAGS_MINUS_P= -fi -]) - -dnl Supply --defined-only to nm -AC_DEFUN([grub_PROG_NM_DEFINED_ONLY], -[AC_MSG_CHECKING([whether nm accepts --defined-only]) -AC_CACHE_VAL(grub_cv_prog_nm_defined_only, -[ -nm_defined_only_tmp_dir="$(mktemp -d "./confXXXXXX")" -AC_LANG_CONFTEST([AC_LANG_PROGRAM([[]], [[]])]) -$TARGET_CC $TARGET_CFLAGS -c conftest.c -o "$nm_defined_only_tmp_dir/ef" -if $TARGET_NM --defined-only "$nm_defined_only_tmp_dir/ef" 2>&1 > /dev/null; then - grub_cv_prog_nm_defined_only=yes -else - grub_cv_prog_nm_defined_only=no -fi -rm "$nm_defined_only_tmp_dir/ef" -rmdir "$nm_defined_only_tmp_dir" -]) -AC_MSG_RESULT([$grub_cv_prog_nm_defined_only]) - -if test "x$grub_cv_prog_nm_defined_only" = xyes; then - TARGET_NMFLAGS_DEFINED_ONLY=--defined-only -else - TARGET_NMFLAGS_DEFINED_ONLY= -fi -]) - - -dnl Check what symbol is defined as a bss start symbol. -dnl Written by Michael Hohmoth and Yoshinori K. Okuji. -AC_DEFUN([grub_CHECK_BSS_START_SYMBOL], -[AC_REQUIRE([AC_PROG_CC]) -AC_MSG_CHECKING([if __bss_start is defined by the compiler]) -AC_CACHE_VAL(grub_cv_check_uscore_uscore_bss_start_symbol, -[AC_LINK_IFELSE([AC_LANG_PROGRAM([[ -asm (".globl start; start:"); -void __main (void); -void __main (void) {} -int main (void); -]], - [[asm ("incl __bss_start")]])], - [grub_cv_check_uscore_uscore_bss_start_symbol=yes], - [grub_cv_check_uscore_uscore_bss_start_symbol=no])]) - -AC_MSG_RESULT([$grub_cv_check_uscore_uscore_bss_start_symbol]) - -AC_MSG_CHECKING([if edata is defined by the compiler]) -AC_CACHE_VAL(grub_cv_check_edata_symbol, -[AC_LINK_IFELSE([AC_LANG_PROGRAM([[ -asm (".globl start; start:"); -void __main (void); -void __main (void) {} -int main (void);]], - [[asm ("incl edata")]])], - [grub_cv_check_edata_symbol=yes], - [grub_cv_check_edata_symbol=no])]) - -AC_MSG_RESULT([$grub_cv_check_edata_symbol]) - -AC_MSG_CHECKING([if _edata is defined by the compiler]) -AC_CACHE_VAL(grub_cv_check_uscore_edata_symbol, -[AC_LINK_IFELSE([AC_LANG_PROGRAM([[ -asm (".globl start; start:"); -void __main (void); -void __main (void) {} -int main (void);]], - [[asm ("incl _edata")]])], - [grub_cv_check_uscore_edata_symbol=yes], - [grub_cv_check_uscore_edata_symbol=no])]) - -AC_MSG_RESULT([$grub_cv_check_uscore_edata_symbol]) - -if test "x$grub_cv_check_uscore_uscore_bss_start_symbol" = xyes; then - BSS_START_SYMBOL=__bss_start -elif test "x$grub_cv_check_edata_symbol" = xyes; then - BSS_START_SYMBOL=edata -elif test "x$grub_cv_check_uscore_edata_symbol" = xyes; then - BSS_START_SYMBOL=_edata -else - AC_MSG_ERROR([none of __bss_start, edata or _edata is defined]) -fi -]) - -dnl Check what symbol is defined as an end symbol. -dnl Written by Yoshinori K. Okuji. -AC_DEFUN([grub_CHECK_END_SYMBOL], -[AC_REQUIRE([AC_PROG_CC]) -AC_MSG_CHECKING([if end is defined by the compiler]) -AC_CACHE_VAL(grub_cv_check_end_symbol, -[AC_LINK_IFELSE([AC_LANG_PROGRAM([[ -asm (".globl start; start:"); -void __main (void); -void __main (void) {} -int main (void);]], - [[asm ("incl end")]])], - [grub_cv_check_end_symbol=yes], - [grub_cv_check_end_symbol=no])]) - -AC_MSG_RESULT([$grub_cv_check_end_symbol]) - -AC_MSG_CHECKING([if _end is defined by the compiler]) -AC_CACHE_VAL(grub_cv_check_uscore_end_symbol, -[AC_LINK_IFELSE([AC_LANG_PROGRAM([[ -asm (".globl start; start:"); -void __main (void); -void __main (void) {} -int main (void);]], - [[asm ("incl _end")]])], - [grub_cv_check_uscore_end_symbol=yes], - [grub_cv_check_uscore_end_symbol=no])]) - -AC_MSG_RESULT([$grub_cv_check_uscore_end_symbol]) - -if test "x$grub_cv_check_end_symbol" = xyes; then - END_SYMBOL=end -elif test "x$grub_cv_check_uscore_end_symbol" = xyes; then - END_SYMBOL=_end -else - AC_MSG_ERROR([neither end nor _end is defined]) -fi -]) - - -dnl Check if the C compiler supports `-fstack-protector'. -AC_DEFUN([grub_CHECK_STACK_PROTECTOR],[ -[# Smashing stack protector. -ssp_possible=yes] -AC_MSG_CHECKING([whether `$CC' accepts `-fstack-protector']) -# Is this a reliable test case? -AC_LANG_CONFTEST([AC_LANG_SOURCE([[ -void foo (void) { volatile char a[8]; a[3]; } -]])]) -[# `$CC -c -o ...' might not be portable. But, oh, well... Is calling -# `ac_compile' like this correct, after all? -if eval "$ac_compile -S -fstack-protector -o conftest.s" 2> /dev/null; then] - AC_MSG_RESULT([yes]) - [# Should we clear up other files as well, having called `AC_LANG_CONFTEST'? - rm -f conftest.s -else - ssp_possible=no] - AC_MSG_RESULT([no]) -[fi] -]) - -dnl Check if the C compiler supports `-mstack-arg-probe' (Cygwin). -AC_DEFUN([grub_CHECK_STACK_ARG_PROBE],[ -[# Smashing stack arg probe. -sap_possible=yes] -AC_MSG_CHECKING([whether `$CC' accepts `-mstack-arg-probe']) -AC_LANG_CONFTEST([AC_LANG_SOURCE([[ -void foo (void) { volatile char a[8]; a[3]; } -]])]) -[if eval "$ac_compile -S -mstack-arg-probe -Werror -o conftest.s" 2> /dev/null; then] - AC_MSG_RESULT([yes]) - [# Should we clear up other files as well, having called `AC_LANG_CONFTEST'? - rm -f conftest.s -else - sap_possible=no] - AC_MSG_RESULT([no]) -[fi] -]) - -dnl Check if ln -s can handle directories properly (mingw). -AC_DEFUN([grub_CHECK_LINK_DIR],[ -AC_MSG_CHECKING([whether ln -s can handle directories properly]) -[mkdir testdir 2>/dev/null -case $srcdir in -[\\/$]* | ?:[\\/]* ) reldir=$srcdir/include/grub/util ;; - *) reldir=../$srcdir/include/grub/util ;; -esac -if ln -s $reldir testdir/util 2>/dev/null && rm -f testdir/util 2>/dev/null ; then] - AC_MSG_RESULT([yes]) - [link_dir=yes -else - link_dir=no] - AC_MSG_RESULT([no]) -[fi -rm -rf testdir] -]) - -dnl Check if the C compiler supports `-fPIE'. -AC_DEFUN([grub_CHECK_PIE],[ -[# Position independent executable. -pie_possible=yes] -AC_MSG_CHECKING([whether `$CC' has `-fPIE' as default]) -# Is this a reliable test case? -AC_LANG_CONFTEST([AC_LANG_SOURCE([[ -#ifdef __PIE__ -int main() { - return 0; -} -#else -#error NO __PIE__ DEFINED -#endif -]])]) - -[# `$CC -c -o ...' might not be portable. But, oh, well... Is calling -# `ac_compile' like this correct, after all? -if eval "$ac_compile -S -o conftest.s" 2> /dev/null; then] - AC_MSG_RESULT([yes]) - [# Should we clear up other files as well, having called `AC_LANG_CONFTEST'? - rm -f conftest.s -else - pie_possible=no] - AC_MSG_RESULT([no]) -[fi] -]) - -AC_DEFUN([grub_CHECK_LINK_PIE],[ -[# Position independent executable. -link_nopie_needed=no] -AC_MSG_CHECKING([whether linker needs disabling of PIE to work]) -AC_LANG_CONFTEST([AC_LANG_SOURCE([[]])]) - -[if eval "$ac_compile -Wl,-r,-d -nostdlib -Werror -o conftest.o" 2> /dev/null; then] - AC_MSG_RESULT([no]) - [# Should we clear up other files as well, having called `AC_LANG_CONFTEST'? - rm -f conftest.o -else - link_nopie_needed=yes] - AC_MSG_RESULT([yes]) -[fi] -]) - - -dnl Check if the Linker supports `-no-pie'. -AC_DEFUN([grub_CHECK_NO_PIE], -[AC_MSG_CHECKING([whether linker accepts -no-pie]) -AC_CACHE_VAL(grub_cv_cc_ld_no_pie, -[save_LDFLAGS="$LDFLAGS" -LDFLAGS="$LDFLAGS -no-pie -nostdlib -Werror" -AC_LINK_IFELSE([AC_LANG_PROGRAM([[]], [[]])], - [grub_cv_cc_ld_no_pie=yes], - [grub_cv_cc_ld_no_pie=no]) -LDFLAGS="$save_LDFLAGS" -]) -AC_MSG_RESULT([$grub_cv_cc_ld_no_pie]) -nopie_possible=no -if test "x$grub_cv_cc_ld_no_pie" = xyes ; then - nopie_possible=yes -fi -]) - -AC_DEFUN([grub_CHECK_NO_PIE_ONEWORD], -[AC_MSG_CHECKING([whether linker accepts -nopie]) -AC_CACHE_VAL(grub_cv_cc_ld_no_pie_oneword, -[save_LDFLAGS="$LDFLAGS" -LDFLAGS="$LDFLAGS -nopie -nostdlib -Werror" -AC_LINK_IFELSE([AC_LANG_PROGRAM([[]], [[]])], - [grub_cv_cc_ld_no_pie_oneword=yes], - [grub_cv_cc_ld_no_pie_oneword=no]) -LDFLAGS="$save_LDFLAGS" -]) -AC_MSG_RESULT([$grub_cv_cc_ld_no_pie_oneword]) -nopie_oneword_possible=no -if test "x$grub_cv_cc_ld_no_pie_oneword" = xyes ; then - nopie_oneword_possible=yes -fi -]) - -dnl Check if the C compiler supports `-fPIC'. -AC_DEFUN([grub_CHECK_PIC],[ -[# Position independent executable. -pic_possible=yes] -AC_MSG_CHECKING([whether `$CC' has `-fPIC' as default]) -# Is this a reliable test case? -AC_LANG_CONFTEST([AC_LANG_SOURCE([[ -#ifdef __PIC__ -int main() { - return 0; -} -#else -#error NO __PIC__ DEFINED -#endif -]])]) - -[# `$CC -c -o ...' might not be portable. But, oh, well... Is calling -# `ac_compile' like this correct, after all? -if eval "$ac_compile -S -o conftest.s" 2> /dev/null; then] - AC_MSG_RESULT([yes]) - [# Should we clear up other files as well, having called `AC_LANG_CONFTEST'? - rm -f conftest.s -else - pic_possible=no] - AC_MSG_RESULT([no]) -[fi] -]) - -dnl Create an output variable with the transformed name of a GRUB utility -dnl program. -AC_DEFUN([grub_TRANSFORM],[dnl -AC_SUBST(AS_TR_SH([$1]), [`AS_ECHO([$1]) | sed "$program_transform_name"`])dnl -]) diff --git a/thirdparty/grub-2.04/aclocal.m4 b/thirdparty/grub-2.04/aclocal.m4 deleted file mode 100644 index 4cd75d7be..000000000 --- a/thirdparty/grub-2.04/aclocal.m4 +++ /dev/null @@ -1,1817 +0,0 @@ -# generated automatically by aclocal 1.15 -*- Autoconf -*- - -# Copyright (C) 1996-2014 Free Software Foundation, Inc. - -# This file is free software; the Free Software Foundation -# gives unlimited permission to copy and/or distribute it, -# with or without modifications, as long as this notice is preserved. - -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY, to the extent permitted by law; without -# even the implied warranty of MERCHANTABILITY or FITNESS FOR A -# PARTICULAR PURPOSE. - -m4_ifndef([AC_CONFIG_MACRO_DIRS], [m4_defun([_AM_CONFIG_MACRO_DIRS], [])m4_defun([AC_CONFIG_MACRO_DIRS], [_AM_CONFIG_MACRO_DIRS($@)])]) -m4_ifndef([AC_AUTOCONF_VERSION], - [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl -m4_if(m4_defn([AC_AUTOCONF_VERSION]), [2.69],, -[m4_warning([this file was generated for autoconf 2.69. -You have another version of autoconf. It may work, but is not guaranteed to. -If you have problems, you may need to regenerate the build system entirely. -To do so, use the procedure documented by the package, typically 'autoreconf'.])]) - -dnl pkg.m4 - Macros to locate and utilise pkg-config. -*- Autoconf -*- -dnl serial 11 (pkg-config-0.29) -dnl -dnl Copyright © 2004 Scott James Remnant . -dnl Copyright © 2012-2015 Dan Nicholson -dnl -dnl This program is free software; you can redistribute it and/or modify -dnl it under the terms of the GNU General Public License as published by -dnl the Free Software Foundation; either version 2 of the License, or -dnl (at your option) any later version. -dnl -dnl This program is distributed in the hope that it will be useful, but -dnl WITHOUT ANY WARRANTY; without even the implied warranty of -dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -dnl General Public License for more details. -dnl -dnl You should have received a copy of the GNU General Public License -dnl along with this program; if not, write to the Free Software -dnl Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA -dnl 02111-1307, USA. -dnl -dnl As a special exception to the GNU General Public License, if you -dnl distribute this file as part of a program that contains a -dnl configuration script generated by Autoconf, you may include it under -dnl the same distribution terms that you use for the rest of that -dnl program. - -dnl PKG_PREREQ(MIN-VERSION) -dnl ----------------------- -dnl Since: 0.29 -dnl -dnl Verify that the version of the pkg-config macros are at least -dnl MIN-VERSION. Unlike PKG_PROG_PKG_CONFIG, which checks the user's -dnl installed version of pkg-config, this checks the developer's version -dnl of pkg.m4 when generating configure. -dnl -dnl To ensure that this macro is defined, also add: -dnl m4_ifndef([PKG_PREREQ], -dnl [m4_fatal([must install pkg-config 0.29 or later before running autoconf/autogen])]) -dnl -dnl See the "Since" comment for each macro you use to see what version -dnl of the macros you require. -m4_defun([PKG_PREREQ], -[m4_define([PKG_MACROS_VERSION], [0.29]) -m4_if(m4_version_compare(PKG_MACROS_VERSION, [$1]), -1, - [m4_fatal([pkg.m4 version $1 or higher is required but ]PKG_MACROS_VERSION[ found])]) -])dnl PKG_PREREQ - -dnl PKG_PROG_PKG_CONFIG([MIN-VERSION]) -dnl ---------------------------------- -dnl Since: 0.16 -dnl -dnl Search for the pkg-config tool and set the PKG_CONFIG variable to -dnl first found in the path. Checks that the version of pkg-config found -dnl is at least MIN-VERSION. If MIN-VERSION is not specified, 0.9.0 is -dnl used since that's the first version where most current features of -dnl pkg-config existed. -AC_DEFUN([PKG_PROG_PKG_CONFIG], -[m4_pattern_forbid([^_?PKG_[A-Z_]+$]) -m4_pattern_allow([^PKG_CONFIG(_(PATH|LIBDIR|SYSROOT_DIR|ALLOW_SYSTEM_(CFLAGS|LIBS)))?$]) -m4_pattern_allow([^PKG_CONFIG_(DISABLE_UNINSTALLED|TOP_BUILD_DIR|DEBUG_SPEW)$]) -AC_ARG_VAR([PKG_CONFIG], [path to pkg-config utility]) -AC_ARG_VAR([PKG_CONFIG_PATH], [directories to add to pkg-config's search path]) -AC_ARG_VAR([PKG_CONFIG_LIBDIR], [path overriding pkg-config's built-in search path]) - -if test "x$ac_cv_env_PKG_CONFIG_set" != "xset"; then - AC_PATH_TOOL([PKG_CONFIG], [pkg-config]) -fi -if test -n "$PKG_CONFIG"; then - _pkg_min_version=m4_default([$1], [0.9.0]) - AC_MSG_CHECKING([pkg-config is at least version $_pkg_min_version]) - if $PKG_CONFIG --atleast-pkgconfig-version $_pkg_min_version; then - AC_MSG_RESULT([yes]) - else - AC_MSG_RESULT([no]) - PKG_CONFIG="" - fi -fi[]dnl -])dnl PKG_PROG_PKG_CONFIG - -dnl PKG_CHECK_EXISTS(MODULES, [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND]) -dnl ------------------------------------------------------------------- -dnl Since: 0.18 -dnl -dnl Check to see whether a particular set of modules exists. Similar to -dnl PKG_CHECK_MODULES(), but does not set variables or print errors. -dnl -dnl Please remember that m4 expands AC_REQUIRE([PKG_PROG_PKG_CONFIG]) -dnl only at the first occurence in configure.ac, so if the first place -dnl it's called might be skipped (such as if it is within an "if", you -dnl have to call PKG_CHECK_EXISTS manually -AC_DEFUN([PKG_CHECK_EXISTS], -[AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl -if test -n "$PKG_CONFIG" && \ - AC_RUN_LOG([$PKG_CONFIG --exists --print-errors "$1"]); then - m4_default([$2], [:]) -m4_ifvaln([$3], [else - $3])dnl -fi]) - -dnl _PKG_CONFIG([VARIABLE], [COMMAND], [MODULES]) -dnl --------------------------------------------- -dnl Internal wrapper calling pkg-config via PKG_CONFIG and setting -dnl pkg_failed based on the result. -m4_define([_PKG_CONFIG], -[if test -n "$$1"; then - pkg_cv_[]$1="$$1" - elif test -n "$PKG_CONFIG"; then - PKG_CHECK_EXISTS([$3], - [pkg_cv_[]$1=`$PKG_CONFIG --[]$2 "$3" 2>/dev/null` - test "x$?" != "x0" && pkg_failed=yes ], - [pkg_failed=yes]) - else - pkg_failed=untried -fi[]dnl -])dnl _PKG_CONFIG - -dnl _PKG_SHORT_ERRORS_SUPPORTED -dnl --------------------------- -dnl Internal check to see if pkg-config supports short errors. -AC_DEFUN([_PKG_SHORT_ERRORS_SUPPORTED], -[AC_REQUIRE([PKG_PROG_PKG_CONFIG]) -if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then - _pkg_short_errors_supported=yes -else - _pkg_short_errors_supported=no -fi[]dnl -])dnl _PKG_SHORT_ERRORS_SUPPORTED - - -dnl PKG_CHECK_MODULES(VARIABLE-PREFIX, MODULES, [ACTION-IF-FOUND], -dnl [ACTION-IF-NOT-FOUND]) -dnl -------------------------------------------------------------- -dnl Since: 0.4.0 -dnl -dnl Note that if there is a possibility the first call to -dnl PKG_CHECK_MODULES might not happen, you should be sure to include an -dnl explicit call to PKG_PROG_PKG_CONFIG in your configure.ac -AC_DEFUN([PKG_CHECK_MODULES], -[AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl -AC_ARG_VAR([$1][_CFLAGS], [C compiler flags for $1, overriding pkg-config])dnl -AC_ARG_VAR([$1][_LIBS], [linker flags for $1, overriding pkg-config])dnl - -pkg_failed=no -AC_MSG_CHECKING([for $1]) - -_PKG_CONFIG([$1][_CFLAGS], [cflags], [$2]) -_PKG_CONFIG([$1][_LIBS], [libs], [$2]) - -m4_define([_PKG_TEXT], [Alternatively, you may set the environment variables $1[]_CFLAGS -and $1[]_LIBS to avoid the need to call pkg-config. -See the pkg-config man page for more details.]) - -if test $pkg_failed = yes; then - AC_MSG_RESULT([no]) - _PKG_SHORT_ERRORS_SUPPORTED - if test $_pkg_short_errors_supported = yes; then - $1[]_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "$2" 2>&1` - else - $1[]_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "$2" 2>&1` - fi - # Put the nasty error message in config.log where it belongs - echo "$$1[]_PKG_ERRORS" >&AS_MESSAGE_LOG_FD - - m4_default([$4], [AC_MSG_ERROR( -[Package requirements ($2) were not met: - -$$1_PKG_ERRORS - -Consider adjusting the PKG_CONFIG_PATH environment variable if you -installed software in a non-standard prefix. - -_PKG_TEXT])[]dnl - ]) -elif test $pkg_failed = untried; then - AC_MSG_RESULT([no]) - m4_default([$4], [AC_MSG_FAILURE( -[The pkg-config script could not be found or is too old. Make sure it -is in your PATH or set the PKG_CONFIG environment variable to the full -path to pkg-config. - -_PKG_TEXT - -To get pkg-config, see .])[]dnl - ]) -else - $1[]_CFLAGS=$pkg_cv_[]$1[]_CFLAGS - $1[]_LIBS=$pkg_cv_[]$1[]_LIBS - AC_MSG_RESULT([yes]) - $3 -fi[]dnl -])dnl PKG_CHECK_MODULES - - -dnl PKG_CHECK_MODULES_STATIC(VARIABLE-PREFIX, MODULES, [ACTION-IF-FOUND], -dnl [ACTION-IF-NOT-FOUND]) -dnl --------------------------------------------------------------------- -dnl Since: 0.29 -dnl -dnl Checks for existence of MODULES and gathers its build flags with -dnl static libraries enabled. Sets VARIABLE-PREFIX_CFLAGS from --cflags -dnl and VARIABLE-PREFIX_LIBS from --libs. -dnl -dnl Note that if there is a possibility the first call to -dnl PKG_CHECK_MODULES_STATIC might not happen, you should be sure to -dnl include an explicit call to PKG_PROG_PKG_CONFIG in your -dnl configure.ac. -AC_DEFUN([PKG_CHECK_MODULES_STATIC], -[AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl -_save_PKG_CONFIG=$PKG_CONFIG -PKG_CONFIG="$PKG_CONFIG --static" -PKG_CHECK_MODULES($@) -PKG_CONFIG=$_save_PKG_CONFIG[]dnl -])dnl PKG_CHECK_MODULES_STATIC - - -dnl PKG_INSTALLDIR([DIRECTORY]) -dnl ------------------------- -dnl Since: 0.27 -dnl -dnl Substitutes the variable pkgconfigdir as the location where a module -dnl should install pkg-config .pc files. By default the directory is -dnl $libdir/pkgconfig, but the default can be changed by passing -dnl DIRECTORY. The user can override through the --with-pkgconfigdir -dnl parameter. -AC_DEFUN([PKG_INSTALLDIR], -[m4_pushdef([pkg_default], [m4_default([$1], ['${libdir}/pkgconfig'])]) -m4_pushdef([pkg_description], - [pkg-config installation directory @<:@]pkg_default[@:>@]) -AC_ARG_WITH([pkgconfigdir], - [AS_HELP_STRING([--with-pkgconfigdir], pkg_description)],, - [with_pkgconfigdir=]pkg_default) -AC_SUBST([pkgconfigdir], [$with_pkgconfigdir]) -m4_popdef([pkg_default]) -m4_popdef([pkg_description]) -])dnl PKG_INSTALLDIR - - -dnl PKG_NOARCH_INSTALLDIR([DIRECTORY]) -dnl -------------------------------- -dnl Since: 0.27 -dnl -dnl Substitutes the variable noarch_pkgconfigdir as the location where a -dnl module should install arch-independent pkg-config .pc files. By -dnl default the directory is $datadir/pkgconfig, but the default can be -dnl changed by passing DIRECTORY. The user can override through the -dnl --with-noarch-pkgconfigdir parameter. -AC_DEFUN([PKG_NOARCH_INSTALLDIR], -[m4_pushdef([pkg_default], [m4_default([$1], ['${datadir}/pkgconfig'])]) -m4_pushdef([pkg_description], - [pkg-config arch-independent installation directory @<:@]pkg_default[@:>@]) -AC_ARG_WITH([noarch-pkgconfigdir], - [AS_HELP_STRING([--with-noarch-pkgconfigdir], pkg_description)],, - [with_noarch_pkgconfigdir=]pkg_default) -AC_SUBST([noarch_pkgconfigdir], [$with_noarch_pkgconfigdir]) -m4_popdef([pkg_default]) -m4_popdef([pkg_description]) -])dnl PKG_NOARCH_INSTALLDIR - - -dnl PKG_CHECK_VAR(VARIABLE, MODULE, CONFIG-VARIABLE, -dnl [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND]) -dnl ------------------------------------------- -dnl Since: 0.28 -dnl -dnl Retrieves the value of the pkg-config variable for the given module. -AC_DEFUN([PKG_CHECK_VAR], -[AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl -AC_ARG_VAR([$1], [value of $3 for $2, overriding pkg-config])dnl - -_PKG_CONFIG([$1], [variable="][$3]["], [$2]) -AS_VAR_COPY([$1], [pkg_cv_][$1]) - -AS_VAR_IF([$1], [""], [$5], [$4])dnl -])dnl PKG_CHECK_VAR - -# Copyright (C) 2002-2014 Free Software Foundation, Inc. -# -# This file is free software; the Free Software Foundation -# gives unlimited permission to copy and/or distribute it, -# with or without modifications, as long as this notice is preserved. - -# AM_AUTOMAKE_VERSION(VERSION) -# ---------------------------- -# Automake X.Y traces this macro to ensure aclocal.m4 has been -# generated from the m4 files accompanying Automake X.Y. -# (This private macro should not be called outside this file.) -AC_DEFUN([AM_AUTOMAKE_VERSION], -[am__api_version='1.15' -dnl Some users find AM_AUTOMAKE_VERSION and mistake it for a way to -dnl require some minimum version. Point them to the right macro. -m4_if([$1], [1.15], [], - [AC_FATAL([Do not call $0, use AM_INIT_AUTOMAKE([$1]).])])dnl -]) - -# _AM_AUTOCONF_VERSION(VERSION) -# ----------------------------- -# aclocal traces this macro to find the Autoconf version. -# This is a private macro too. Using m4_define simplifies -# the logic in aclocal, which can simply ignore this definition. -m4_define([_AM_AUTOCONF_VERSION], []) - -# AM_SET_CURRENT_AUTOMAKE_VERSION -# ------------------------------- -# Call AM_AUTOMAKE_VERSION and AM_AUTOMAKE_VERSION so they can be traced. -# This function is AC_REQUIREd by AM_INIT_AUTOMAKE. -AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION], -[AM_AUTOMAKE_VERSION([1.15])dnl -m4_ifndef([AC_AUTOCONF_VERSION], - [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl -_AM_AUTOCONF_VERSION(m4_defn([AC_AUTOCONF_VERSION]))]) - -# Figure out how to run the assembler. -*- Autoconf -*- - -# Copyright (C) 2001-2014 Free Software Foundation, Inc. -# -# This file is free software; the Free Software Foundation -# gives unlimited permission to copy and/or distribute it, -# with or without modifications, as long as this notice is preserved. - -# AM_PROG_AS -# ---------- -AC_DEFUN([AM_PROG_AS], -[# By default we simply use the C compiler to build assembly code. -AC_REQUIRE([AC_PROG_CC]) -test "${CCAS+set}" = set || CCAS=$CC -test "${CCASFLAGS+set}" = set || CCASFLAGS=$CFLAGS -AC_ARG_VAR([CCAS], [assembler compiler command (defaults to CC)]) -AC_ARG_VAR([CCASFLAGS], [assembler compiler flags (defaults to CFLAGS)]) -_AM_IF_OPTION([no-dependencies],, [_AM_DEPENDENCIES([CCAS])])dnl -]) - -# AM_AUX_DIR_EXPAND -*- Autoconf -*- - -# Copyright (C) 2001-2014 Free Software Foundation, Inc. -# -# This file is free software; the Free Software Foundation -# gives unlimited permission to copy and/or distribute it, -# with or without modifications, as long as this notice is preserved. - -# For projects using AC_CONFIG_AUX_DIR([foo]), Autoconf sets -# $ac_aux_dir to '$srcdir/foo'. In other projects, it is set to -# '$srcdir', '$srcdir/..', or '$srcdir/../..'. -# -# Of course, Automake must honor this variable whenever it calls a -# tool from the auxiliary directory. The problem is that $srcdir (and -# therefore $ac_aux_dir as well) can be either absolute or relative, -# depending on how configure is run. This is pretty annoying, since -# it makes $ac_aux_dir quite unusable in subdirectories: in the top -# source directory, any form will work fine, but in subdirectories a -# relative path needs to be adjusted first. -# -# $ac_aux_dir/missing -# fails when called from a subdirectory if $ac_aux_dir is relative -# $top_srcdir/$ac_aux_dir/missing -# fails if $ac_aux_dir is absolute, -# fails when called from a subdirectory in a VPATH build with -# a relative $ac_aux_dir -# -# The reason of the latter failure is that $top_srcdir and $ac_aux_dir -# are both prefixed by $srcdir. In an in-source build this is usually -# harmless because $srcdir is '.', but things will broke when you -# start a VPATH build or use an absolute $srcdir. -# -# So we could use something similar to $top_srcdir/$ac_aux_dir/missing, -# iff we strip the leading $srcdir from $ac_aux_dir. That would be: -# am_aux_dir='\$(top_srcdir)/'`expr "$ac_aux_dir" : "$srcdir//*\(.*\)"` -# and then we would define $MISSING as -# MISSING="\${SHELL} $am_aux_dir/missing" -# This will work as long as MISSING is not called from configure, because -# unfortunately $(top_srcdir) has no meaning in configure. -# However there are other variables, like CC, which are often used in -# configure, and could therefore not use this "fixed" $ac_aux_dir. -# -# Another solution, used here, is to always expand $ac_aux_dir to an -# absolute PATH. The drawback is that using absolute paths prevent a -# configured tree to be moved without reconfiguration. - -AC_DEFUN([AM_AUX_DIR_EXPAND], -[AC_REQUIRE([AC_CONFIG_AUX_DIR_DEFAULT])dnl -# Expand $ac_aux_dir to an absolute path. -am_aux_dir=`cd "$ac_aux_dir" && pwd` -]) - -# AM_CONDITIONAL -*- Autoconf -*- - -# Copyright (C) 1997-2014 Free Software Foundation, Inc. -# -# This file is free software; the Free Software Foundation -# gives unlimited permission to copy and/or distribute it, -# with or without modifications, as long as this notice is preserved. - -# AM_CONDITIONAL(NAME, SHELL-CONDITION) -# ------------------------------------- -# Define a conditional. -AC_DEFUN([AM_CONDITIONAL], -[AC_PREREQ([2.52])dnl - m4_if([$1], [TRUE], [AC_FATAL([$0: invalid condition: $1])], - [$1], [FALSE], [AC_FATAL([$0: invalid condition: $1])])dnl -AC_SUBST([$1_TRUE])dnl -AC_SUBST([$1_FALSE])dnl -_AM_SUBST_NOTMAKE([$1_TRUE])dnl -_AM_SUBST_NOTMAKE([$1_FALSE])dnl -m4_define([_AM_COND_VALUE_$1], [$2])dnl -if $2; then - $1_TRUE= - $1_FALSE='#' -else - $1_TRUE='#' - $1_FALSE= -fi -AC_CONFIG_COMMANDS_PRE( -[if test -z "${$1_TRUE}" && test -z "${$1_FALSE}"; then - AC_MSG_ERROR([[conditional "$1" was never defined. -Usually this means the macro was only invoked conditionally.]]) -fi])]) - -# Copyright (C) 1999-2014 Free Software Foundation, Inc. -# -# This file is free software; the Free Software Foundation -# gives unlimited permission to copy and/or distribute it, -# with or without modifications, as long as this notice is preserved. - - -# There are a few dirty hacks below to avoid letting 'AC_PROG_CC' be -# written in clear, in which case automake, when reading aclocal.m4, -# will think it sees a *use*, and therefore will trigger all it's -# C support machinery. Also note that it means that autoscan, seeing -# CC etc. in the Makefile, will ask for an AC_PROG_CC use... - - -# _AM_DEPENDENCIES(NAME) -# ---------------------- -# See how the compiler implements dependency checking. -# NAME is "CC", "CXX", "OBJC", "OBJCXX", "UPC", or "GJC". -# We try a few techniques and use that to set a single cache variable. -# -# We don't AC_REQUIRE the corresponding AC_PROG_CC since the latter was -# modified to invoke _AM_DEPENDENCIES(CC); we would have a circular -# dependency, and given that the user is not expected to run this macro, -# just rely on AC_PROG_CC. -AC_DEFUN([_AM_DEPENDENCIES], -[AC_REQUIRE([AM_SET_DEPDIR])dnl -AC_REQUIRE([AM_OUTPUT_DEPENDENCY_COMMANDS])dnl -AC_REQUIRE([AM_MAKE_INCLUDE])dnl -AC_REQUIRE([AM_DEP_TRACK])dnl - -m4_if([$1], [CC], [depcc="$CC" am_compiler_list=], - [$1], [CXX], [depcc="$CXX" am_compiler_list=], - [$1], [OBJC], [depcc="$OBJC" am_compiler_list='gcc3 gcc'], - [$1], [OBJCXX], [depcc="$OBJCXX" am_compiler_list='gcc3 gcc'], - [$1], [UPC], [depcc="$UPC" am_compiler_list=], - [$1], [GCJ], [depcc="$GCJ" am_compiler_list='gcc3 gcc'], - [depcc="$$1" am_compiler_list=]) - -AC_CACHE_CHECK([dependency style of $depcc], - [am_cv_$1_dependencies_compiler_type], -[if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then - # We make a subdir and do the tests there. Otherwise we can end up - # making bogus files that we don't know about and never remove. For - # instance it was reported that on HP-UX the gcc test will end up - # making a dummy file named 'D' -- because '-MD' means "put the output - # in D". - rm -rf conftest.dir - mkdir conftest.dir - # Copy depcomp to subdir because otherwise we won't find it if we're - # using a relative directory. - cp "$am_depcomp" conftest.dir - cd conftest.dir - # We will build objects and dependencies in a subdirectory because - # it helps to detect inapplicable dependency modes. For instance - # both Tru64's cc and ICC support -MD to output dependencies as a - # side effect of compilation, but ICC will put the dependencies in - # the current directory while Tru64 will put them in the object - # directory. - mkdir sub - - am_cv_$1_dependencies_compiler_type=none - if test "$am_compiler_list" = ""; then - am_compiler_list=`sed -n ['s/^#*\([a-zA-Z0-9]*\))$/\1/p'] < ./depcomp` - fi - am__universal=false - m4_case([$1], [CC], - [case " $depcc " in #( - *\ -arch\ *\ -arch\ *) am__universal=true ;; - esac], - [CXX], - [case " $depcc " in #( - *\ -arch\ *\ -arch\ *) am__universal=true ;; - esac]) - - for depmode in $am_compiler_list; do - # Setup a source with many dependencies, because some compilers - # like to wrap large dependency lists on column 80 (with \), and - # we should not choose a depcomp mode which is confused by this. - # - # We need to recreate these files for each test, as the compiler may - # overwrite some of them when testing with obscure command lines. - # This happens at least with the AIX C compiler. - : > sub/conftest.c - for i in 1 2 3 4 5 6; do - echo '#include "conftst'$i'.h"' >> sub/conftest.c - # Using ": > sub/conftst$i.h" creates only sub/conftst1.h with - # Solaris 10 /bin/sh. - echo '/* dummy */' > sub/conftst$i.h - done - echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf - - # We check with '-c' and '-o' for the sake of the "dashmstdout" - # mode. It turns out that the SunPro C++ compiler does not properly - # handle '-M -o', and we need to detect this. Also, some Intel - # versions had trouble with output in subdirs. - am__obj=sub/conftest.${OBJEXT-o} - am__minus_obj="-o $am__obj" - case $depmode in - gcc) - # This depmode causes a compiler race in universal mode. - test "$am__universal" = false || continue - ;; - nosideeffect) - # After this tag, mechanisms are not by side-effect, so they'll - # only be used when explicitly requested. - if test "x$enable_dependency_tracking" = xyes; then - continue - else - break - fi - ;; - msvc7 | msvc7msys | msvisualcpp | msvcmsys) - # This compiler won't grok '-c -o', but also, the minuso test has - # not run yet. These depmodes are late enough in the game, and - # so weak that their functioning should not be impacted. - am__obj=conftest.${OBJEXT-o} - am__minus_obj= - ;; - none) break ;; - esac - if depmode=$depmode \ - source=sub/conftest.c object=$am__obj \ - depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \ - $SHELL ./depcomp $depcc -c $am__minus_obj sub/conftest.c \ - >/dev/null 2>conftest.err && - grep sub/conftst1.h sub/conftest.Po > /dev/null 2>&1 && - grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 && - grep $am__obj sub/conftest.Po > /dev/null 2>&1 && - ${MAKE-make} -s -f confmf > /dev/null 2>&1; then - # icc doesn't choke on unknown options, it will just issue warnings - # or remarks (even with -Werror). So we grep stderr for any message - # that says an option was ignored or not supported. - # When given -MP, icc 7.0 and 7.1 complain thusly: - # icc: Command line warning: ignoring option '-M'; no argument required - # The diagnosis changed in icc 8.0: - # icc: Command line remark: option '-MP' not supported - if (grep 'ignoring option' conftest.err || - grep 'not supported' conftest.err) >/dev/null 2>&1; then :; else - am_cv_$1_dependencies_compiler_type=$depmode - break - fi - fi - done - - cd .. - rm -rf conftest.dir -else - am_cv_$1_dependencies_compiler_type=none -fi -]) -AC_SUBST([$1DEPMODE], [depmode=$am_cv_$1_dependencies_compiler_type]) -AM_CONDITIONAL([am__fastdep$1], [ - test "x$enable_dependency_tracking" != xno \ - && test "$am_cv_$1_dependencies_compiler_type" = gcc3]) -]) - - -# AM_SET_DEPDIR -# ------------- -# Choose a directory name for dependency files. -# This macro is AC_REQUIREd in _AM_DEPENDENCIES. -AC_DEFUN([AM_SET_DEPDIR], -[AC_REQUIRE([AM_SET_LEADING_DOT])dnl -AC_SUBST([DEPDIR], ["${am__leading_dot}deps"])dnl -]) - - -# AM_DEP_TRACK -# ------------ -AC_DEFUN([AM_DEP_TRACK], -[AC_ARG_ENABLE([dependency-tracking], [dnl -AS_HELP_STRING( - [--enable-dependency-tracking], - [do not reject slow dependency extractors]) -AS_HELP_STRING( - [--disable-dependency-tracking], - [speeds up one-time build])]) -if test "x$enable_dependency_tracking" != xno; then - am_depcomp="$ac_aux_dir/depcomp" - AMDEPBACKSLASH='\' - am__nodep='_no' -fi -AM_CONDITIONAL([AMDEP], [test "x$enable_dependency_tracking" != xno]) -AC_SUBST([AMDEPBACKSLASH])dnl -_AM_SUBST_NOTMAKE([AMDEPBACKSLASH])dnl -AC_SUBST([am__nodep])dnl -_AM_SUBST_NOTMAKE([am__nodep])dnl -]) - -# Generate code to set up dependency tracking. -*- Autoconf -*- - -# Copyright (C) 1999-2014 Free Software Foundation, Inc. -# -# This file is free software; the Free Software Foundation -# gives unlimited permission to copy and/or distribute it, -# with or without modifications, as long as this notice is preserved. - - -# _AM_OUTPUT_DEPENDENCY_COMMANDS -# ------------------------------ -AC_DEFUN([_AM_OUTPUT_DEPENDENCY_COMMANDS], -[{ - # Older Autoconf quotes --file arguments for eval, but not when files - # are listed without --file. Let's play safe and only enable the eval - # if we detect the quoting. - case $CONFIG_FILES in - *\'*) eval set x "$CONFIG_FILES" ;; - *) set x $CONFIG_FILES ;; - esac - shift - for mf - do - # Strip MF so we end up with the name of the file. - mf=`echo "$mf" | sed -e 's/:.*$//'` - # Check whether this is an Automake generated Makefile or not. - # We used to match only the files named 'Makefile.in', but - # some people rename them; so instead we look at the file content. - # Grep'ing the first line is not enough: some people post-process - # each Makefile.in and add a new line on top of each file to say so. - # Grep'ing the whole file is not good either: AIX grep has a line - # limit of 2048, but all sed's we know have understand at least 4000. - if sed -n 's,^#.*generated by automake.*,X,p' "$mf" | grep X >/dev/null 2>&1; then - dirpart=`AS_DIRNAME("$mf")` - else - continue - fi - # Extract the definition of DEPDIR, am__include, and am__quote - # from the Makefile without running 'make'. - DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"` - test -z "$DEPDIR" && continue - am__include=`sed -n 's/^am__include = //p' < "$mf"` - test -z "$am__include" && continue - am__quote=`sed -n 's/^am__quote = //p' < "$mf"` - # Find all dependency output files, they are included files with - # $(DEPDIR) in their names. We invoke sed twice because it is the - # simplest approach to changing $(DEPDIR) to its actual value in the - # expansion. - for file in `sed -n " - s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \ - sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g'`; do - # Make sure the directory exists. - test -f "$dirpart/$file" && continue - fdir=`AS_DIRNAME(["$file"])` - AS_MKDIR_P([$dirpart/$fdir]) - # echo "creating $dirpart/$file" - echo '# dummy' > "$dirpart/$file" - done - done -} -])# _AM_OUTPUT_DEPENDENCY_COMMANDS - - -# AM_OUTPUT_DEPENDENCY_COMMANDS -# ----------------------------- -# This macro should only be invoked once -- use via AC_REQUIRE. -# -# This code is only required when automatic dependency tracking -# is enabled. FIXME. This creates each '.P' file that we will -# need in order to bootstrap the dependency handling code. -AC_DEFUN([AM_OUTPUT_DEPENDENCY_COMMANDS], -[AC_CONFIG_COMMANDS([depfiles], - [test x"$AMDEP_TRUE" != x"" || _AM_OUTPUT_DEPENDENCY_COMMANDS], - [AMDEP_TRUE="$AMDEP_TRUE" ac_aux_dir="$ac_aux_dir"]) -]) - -# Do all the work for Automake. -*- Autoconf -*- - -# Copyright (C) 1996-2014 Free Software Foundation, Inc. -# -# This file is free software; the Free Software Foundation -# gives unlimited permission to copy and/or distribute it, -# with or without modifications, as long as this notice is preserved. - -# This macro actually does too much. Some checks are only needed if -# your package does certain things. But this isn't really a big deal. - -dnl Redefine AC_PROG_CC to automatically invoke _AM_PROG_CC_C_O. -m4_define([AC_PROG_CC], -m4_defn([AC_PROG_CC]) -[_AM_PROG_CC_C_O -]) - -# AM_INIT_AUTOMAKE(PACKAGE, VERSION, [NO-DEFINE]) -# AM_INIT_AUTOMAKE([OPTIONS]) -# ----------------------------------------------- -# The call with PACKAGE and VERSION arguments is the old style -# call (pre autoconf-2.50), which is being phased out. PACKAGE -# and VERSION should now be passed to AC_INIT and removed from -# the call to AM_INIT_AUTOMAKE. -# We support both call styles for the transition. After -# the next Automake release, Autoconf can make the AC_INIT -# arguments mandatory, and then we can depend on a new Autoconf -# release and drop the old call support. -AC_DEFUN([AM_INIT_AUTOMAKE], -[AC_PREREQ([2.65])dnl -dnl Autoconf wants to disallow AM_ names. We explicitly allow -dnl the ones we care about. -m4_pattern_allow([^AM_[A-Z]+FLAGS$])dnl -AC_REQUIRE([AM_SET_CURRENT_AUTOMAKE_VERSION])dnl -AC_REQUIRE([AC_PROG_INSTALL])dnl -if test "`cd $srcdir && pwd`" != "`pwd`"; then - # Use -I$(srcdir) only when $(srcdir) != ., so that make's output - # is not polluted with repeated "-I." - AC_SUBST([am__isrc], [' -I$(srcdir)'])_AM_SUBST_NOTMAKE([am__isrc])dnl - # test to see if srcdir already configured - if test -f $srcdir/config.status; then - AC_MSG_ERROR([source directory already configured; run "make distclean" there first]) - fi -fi - -# test whether we have cygpath -if test -z "$CYGPATH_W"; then - if (cygpath --version) >/dev/null 2>/dev/null; then - CYGPATH_W='cygpath -w' - else - CYGPATH_W=echo - fi -fi -AC_SUBST([CYGPATH_W]) - -# Define the identity of the package. -dnl Distinguish between old-style and new-style calls. -m4_ifval([$2], -[AC_DIAGNOSE([obsolete], - [$0: two- and three-arguments forms are deprecated.]) -m4_ifval([$3], [_AM_SET_OPTION([no-define])])dnl - AC_SUBST([PACKAGE], [$1])dnl - AC_SUBST([VERSION], [$2])], -[_AM_SET_OPTIONS([$1])dnl -dnl Diagnose old-style AC_INIT with new-style AM_AUTOMAKE_INIT. -m4_if( - m4_ifdef([AC_PACKAGE_NAME], [ok]):m4_ifdef([AC_PACKAGE_VERSION], [ok]), - [ok:ok],, - [m4_fatal([AC_INIT should be called with package and version arguments])])dnl - AC_SUBST([PACKAGE], ['AC_PACKAGE_TARNAME'])dnl - AC_SUBST([VERSION], ['AC_PACKAGE_VERSION'])])dnl - -_AM_IF_OPTION([no-define],, -[AC_DEFINE_UNQUOTED([PACKAGE], ["$PACKAGE"], [Name of package]) - AC_DEFINE_UNQUOTED([VERSION], ["$VERSION"], [Version number of package])])dnl - -# Some tools Automake needs. -AC_REQUIRE([AM_SANITY_CHECK])dnl -AC_REQUIRE([AC_ARG_PROGRAM])dnl -AM_MISSING_PROG([ACLOCAL], [aclocal-${am__api_version}]) -AM_MISSING_PROG([AUTOCONF], [autoconf]) -AM_MISSING_PROG([AUTOMAKE], [automake-${am__api_version}]) -AM_MISSING_PROG([AUTOHEADER], [autoheader]) -AM_MISSING_PROG([MAKEINFO], [makeinfo]) -AC_REQUIRE([AM_PROG_INSTALL_SH])dnl -AC_REQUIRE([AM_PROG_INSTALL_STRIP])dnl -AC_REQUIRE([AC_PROG_MKDIR_P])dnl -# For better backward compatibility. To be removed once Automake 1.9.x -# dies out for good. For more background, see: -# -# -AC_SUBST([mkdir_p], ['$(MKDIR_P)']) -# We need awk for the "check" target (and possibly the TAP driver). The -# system "awk" is bad on some platforms. -AC_REQUIRE([AC_PROG_AWK])dnl -AC_REQUIRE([AC_PROG_MAKE_SET])dnl -AC_REQUIRE([AM_SET_LEADING_DOT])dnl -_AM_IF_OPTION([tar-ustar], [_AM_PROG_TAR([ustar])], - [_AM_IF_OPTION([tar-pax], [_AM_PROG_TAR([pax])], - [_AM_PROG_TAR([v7])])]) -_AM_IF_OPTION([no-dependencies],, -[AC_PROVIDE_IFELSE([AC_PROG_CC], - [_AM_DEPENDENCIES([CC])], - [m4_define([AC_PROG_CC], - m4_defn([AC_PROG_CC])[_AM_DEPENDENCIES([CC])])])dnl -AC_PROVIDE_IFELSE([AC_PROG_CXX], - [_AM_DEPENDENCIES([CXX])], - [m4_define([AC_PROG_CXX], - m4_defn([AC_PROG_CXX])[_AM_DEPENDENCIES([CXX])])])dnl -AC_PROVIDE_IFELSE([AC_PROG_OBJC], - [_AM_DEPENDENCIES([OBJC])], - [m4_define([AC_PROG_OBJC], - m4_defn([AC_PROG_OBJC])[_AM_DEPENDENCIES([OBJC])])])dnl -AC_PROVIDE_IFELSE([AC_PROG_OBJCXX], - [_AM_DEPENDENCIES([OBJCXX])], - [m4_define([AC_PROG_OBJCXX], - m4_defn([AC_PROG_OBJCXX])[_AM_DEPENDENCIES([OBJCXX])])])dnl -]) -AC_REQUIRE([AM_SILENT_RULES])dnl -dnl The testsuite driver may need to know about EXEEXT, so add the -dnl 'am__EXEEXT' conditional if _AM_COMPILER_EXEEXT was seen. This -dnl macro is hooked onto _AC_COMPILER_EXEEXT early, see below. -AC_CONFIG_COMMANDS_PRE(dnl -[m4_provide_if([_AM_COMPILER_EXEEXT], - [AM_CONDITIONAL([am__EXEEXT], [test -n "$EXEEXT"])])])dnl - -# POSIX will say in a future version that running "rm -f" with no argument -# is OK; and we want to be able to make that assumption in our Makefile -# recipes. So use an aggressive probe to check that the usage we want is -# actually supported "in the wild" to an acceptable degree. -# See automake bug#10828. -# To make any issue more visible, cause the running configure to be aborted -# by default if the 'rm' program in use doesn't match our expectations; the -# user can still override this though. -if rm -f && rm -fr && rm -rf; then : OK; else - cat >&2 <<'END' -Oops! - -Your 'rm' program seems unable to run without file operands specified -on the command line, even when the '-f' option is present. This is contrary -to the behaviour of most rm programs out there, and not conforming with -the upcoming POSIX standard: - -Please tell bug-automake@gnu.org about your system, including the value -of your $PATH and any error possibly output before this message. This -can help us improve future automake versions. - -END - if test x"$ACCEPT_INFERIOR_RM_PROGRAM" = x"yes"; then - echo 'Configuration will proceed anyway, since you have set the' >&2 - echo 'ACCEPT_INFERIOR_RM_PROGRAM variable to "yes"' >&2 - echo >&2 - else - cat >&2 <<'END' -Aborting the configuration process, to ensure you take notice of the issue. - -You can download and install GNU coreutils to get an 'rm' implementation -that behaves properly: . - -If you want to complete the configuration process using your problematic -'rm' anyway, export the environment variable ACCEPT_INFERIOR_RM_PROGRAM -to "yes", and re-run configure. - -END - AC_MSG_ERROR([Your 'rm' program is bad, sorry.]) - fi -fi -dnl The trailing newline in this macro's definition is deliberate, for -dnl backward compatibility and to allow trailing 'dnl'-style comments -dnl after the AM_INIT_AUTOMAKE invocation. See automake bug#16841. -]) - -dnl Hook into '_AC_COMPILER_EXEEXT' early to learn its expansion. Do not -dnl add the conditional right here, as _AC_COMPILER_EXEEXT may be further -dnl mangled by Autoconf and run in a shell conditional statement. -m4_define([_AC_COMPILER_EXEEXT], -m4_defn([_AC_COMPILER_EXEEXT])[m4_provide([_AM_COMPILER_EXEEXT])]) - -# When config.status generates a header, we must update the stamp-h file. -# This file resides in the same directory as the config header -# that is generated. The stamp files are numbered to have different names. - -# Autoconf calls _AC_AM_CONFIG_HEADER_HOOK (when defined) in the -# loop where config.status creates the headers, so we can generate -# our stamp files there. -AC_DEFUN([_AC_AM_CONFIG_HEADER_HOOK], -[# Compute $1's index in $config_headers. -_am_arg=$1 -_am_stamp_count=1 -for _am_header in $config_headers :; do - case $_am_header in - $_am_arg | $_am_arg:* ) - break ;; - * ) - _am_stamp_count=`expr $_am_stamp_count + 1` ;; - esac -done -echo "timestamp for $_am_arg" >`AS_DIRNAME(["$_am_arg"])`/stamp-h[]$_am_stamp_count]) - -# Copyright (C) 2001-2014 Free Software Foundation, Inc. -# -# This file is free software; the Free Software Foundation -# gives unlimited permission to copy and/or distribute it, -# with or without modifications, as long as this notice is preserved. - -# AM_PROG_INSTALL_SH -# ------------------ -# Define $install_sh. -AC_DEFUN([AM_PROG_INSTALL_SH], -[AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl -if test x"${install_sh+set}" != xset; then - case $am_aux_dir in - *\ * | *\ *) - install_sh="\${SHELL} '$am_aux_dir/install-sh'" ;; - *) - install_sh="\${SHELL} $am_aux_dir/install-sh" - esac -fi -AC_SUBST([install_sh])]) - -# Copyright (C) 2003-2014 Free Software Foundation, Inc. -# -# This file is free software; the Free Software Foundation -# gives unlimited permission to copy and/or distribute it, -# with or without modifications, as long as this notice is preserved. - -# Check whether the underlying file-system supports filenames -# with a leading dot. For instance MS-DOS doesn't. -AC_DEFUN([AM_SET_LEADING_DOT], -[rm -rf .tst 2>/dev/null -mkdir .tst 2>/dev/null -if test -d .tst; then - am__leading_dot=. -else - am__leading_dot=_ -fi -rmdir .tst 2>/dev/null -AC_SUBST([am__leading_dot])]) - -# Check to see how 'make' treats includes. -*- Autoconf -*- - -# Copyright (C) 2001-2014 Free Software Foundation, Inc. -# -# This file is free software; the Free Software Foundation -# gives unlimited permission to copy and/or distribute it, -# with or without modifications, as long as this notice is preserved. - -# AM_MAKE_INCLUDE() -# ----------------- -# Check to see how make treats includes. -AC_DEFUN([AM_MAKE_INCLUDE], -[am_make=${MAKE-make} -cat > confinc << 'END' -am__doit: - @echo this is the am__doit target -.PHONY: am__doit -END -# If we don't find an include directive, just comment out the code. -AC_MSG_CHECKING([for style of include used by $am_make]) -am__include="#" -am__quote= -_am_result=none -# First try GNU make style include. -echo "include confinc" > confmf -# Ignore all kinds of additional output from 'make'. -case `$am_make -s -f confmf 2> /dev/null` in #( -*the\ am__doit\ target*) - am__include=include - am__quote= - _am_result=GNU - ;; -esac -# Now try BSD make style include. -if test "$am__include" = "#"; then - echo '.include "confinc"' > confmf - case `$am_make -s -f confmf 2> /dev/null` in #( - *the\ am__doit\ target*) - am__include=.include - am__quote="\"" - _am_result=BSD - ;; - esac -fi -AC_SUBST([am__include]) -AC_SUBST([am__quote]) -AC_MSG_RESULT([$_am_result]) -rm -f confinc confmf -]) - -# Fake the existence of programs that GNU maintainers use. -*- Autoconf -*- - -# Copyright (C) 1997-2014 Free Software Foundation, Inc. -# -# This file is free software; the Free Software Foundation -# gives unlimited permission to copy and/or distribute it, -# with or without modifications, as long as this notice is preserved. - -# AM_MISSING_PROG(NAME, PROGRAM) -# ------------------------------ -AC_DEFUN([AM_MISSING_PROG], -[AC_REQUIRE([AM_MISSING_HAS_RUN]) -$1=${$1-"${am_missing_run}$2"} -AC_SUBST($1)]) - -# AM_MISSING_HAS_RUN -# ------------------ -# Define MISSING if not defined so far and test if it is modern enough. -# If it is, set am_missing_run to use it, otherwise, to nothing. -AC_DEFUN([AM_MISSING_HAS_RUN], -[AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl -AC_REQUIRE_AUX_FILE([missing])dnl -if test x"${MISSING+set}" != xset; then - case $am_aux_dir in - *\ * | *\ *) - MISSING="\${SHELL} \"$am_aux_dir/missing\"" ;; - *) - MISSING="\${SHELL} $am_aux_dir/missing" ;; - esac -fi -# Use eval to expand $SHELL -if eval "$MISSING --is-lightweight"; then - am_missing_run="$MISSING " -else - am_missing_run= - AC_MSG_WARN(['missing' script is too old or missing]) -fi -]) - -# Helper functions for option handling. -*- Autoconf -*- - -# Copyright (C) 2001-2014 Free Software Foundation, Inc. -# -# This file is free software; the Free Software Foundation -# gives unlimited permission to copy and/or distribute it, -# with or without modifications, as long as this notice is preserved. - -# _AM_MANGLE_OPTION(NAME) -# ----------------------- -AC_DEFUN([_AM_MANGLE_OPTION], -[[_AM_OPTION_]m4_bpatsubst($1, [[^a-zA-Z0-9_]], [_])]) - -# _AM_SET_OPTION(NAME) -# -------------------- -# Set option NAME. Presently that only means defining a flag for this option. -AC_DEFUN([_AM_SET_OPTION], -[m4_define(_AM_MANGLE_OPTION([$1]), [1])]) - -# _AM_SET_OPTIONS(OPTIONS) -# ------------------------ -# OPTIONS is a space-separated list of Automake options. -AC_DEFUN([_AM_SET_OPTIONS], -[m4_foreach_w([_AM_Option], [$1], [_AM_SET_OPTION(_AM_Option)])]) - -# _AM_IF_OPTION(OPTION, IF-SET, [IF-NOT-SET]) -# ------------------------------------------- -# Execute IF-SET if OPTION is set, IF-NOT-SET otherwise. -AC_DEFUN([_AM_IF_OPTION], -[m4_ifset(_AM_MANGLE_OPTION([$1]), [$2], [$3])]) - -# Copyright (C) 1999-2014 Free Software Foundation, Inc. -# -# This file is free software; the Free Software Foundation -# gives unlimited permission to copy and/or distribute it, -# with or without modifications, as long as this notice is preserved. - -# _AM_PROG_CC_C_O -# --------------- -# Like AC_PROG_CC_C_O, but changed for automake. We rewrite AC_PROG_CC -# to automatically call this. -AC_DEFUN([_AM_PROG_CC_C_O], -[AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl -AC_REQUIRE_AUX_FILE([compile])dnl -AC_LANG_PUSH([C])dnl -AC_CACHE_CHECK( - [whether $CC understands -c and -o together], - [am_cv_prog_cc_c_o], - [AC_LANG_CONFTEST([AC_LANG_PROGRAM([])]) - # Make sure it works both with $CC and with simple cc. - # Following AC_PROG_CC_C_O, we do the test twice because some - # compilers refuse to overwrite an existing .o file with -o, - # though they will create one. - am_cv_prog_cc_c_o=yes - for am_i in 1 2; do - if AM_RUN_LOG([$CC -c conftest.$ac_ext -o conftest2.$ac_objext]) \ - && test -f conftest2.$ac_objext; then - : OK - else - am_cv_prog_cc_c_o=no - break - fi - done - rm -f core conftest* - unset am_i]) -if test "$am_cv_prog_cc_c_o" != yes; then - # Losing compiler, so override with the script. - # FIXME: It is wrong to rewrite CC. - # But if we don't then we get into trouble of one sort or another. - # A longer-term fix would be to have automake use am__CC in this case, - # and then we could set am__CC="\$(top_srcdir)/compile \$(CC)" - CC="$am_aux_dir/compile $CC" -fi -AC_LANG_POP([C])]) - -# For backward compatibility. -AC_DEFUN_ONCE([AM_PROG_CC_C_O], [AC_REQUIRE([AC_PROG_CC])]) - -# Copyright (C) 1999-2014 Free Software Foundation, Inc. -# -# This file is free software; the Free Software Foundation -# gives unlimited permission to copy and/or distribute it, -# with or without modifications, as long as this notice is preserved. - - -# AM_PATH_PYTHON([MINIMUM-VERSION], [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND]) -# --------------------------------------------------------------------------- -# Adds support for distributing Python modules and packages. To -# install modules, copy them to $(pythondir), using the python_PYTHON -# automake variable. To install a package with the same name as the -# automake package, install to $(pkgpythondir), or use the -# pkgpython_PYTHON automake variable. -# -# The variables $(pyexecdir) and $(pkgpyexecdir) are provided as -# locations to install python extension modules (shared libraries). -# Another macro is required to find the appropriate flags to compile -# extension modules. -# -# If your package is configured with a different prefix to python, -# users will have to add the install directory to the PYTHONPATH -# environment variable, or create a .pth file (see the python -# documentation for details). -# -# If the MINIMUM-VERSION argument is passed, AM_PATH_PYTHON will -# cause an error if the version of python installed on the system -# doesn't meet the requirement. MINIMUM-VERSION should consist of -# numbers and dots only. -AC_DEFUN([AM_PATH_PYTHON], - [ - dnl Find a Python interpreter. Python versions prior to 2.0 are not - dnl supported. (2.0 was released on October 16, 2000). - m4_define_default([_AM_PYTHON_INTERPRETER_LIST], -[python python2 python3 python3.3 python3.2 python3.1 python3.0 python2.7 dnl - python2.6 python2.5 python2.4 python2.3 python2.2 python2.1 python2.0]) - - AC_ARG_VAR([PYTHON], [the Python interpreter]) - - m4_if([$1],[],[ - dnl No version check is needed. - # Find any Python interpreter. - if test -z "$PYTHON"; then - AC_PATH_PROGS([PYTHON], _AM_PYTHON_INTERPRETER_LIST, :) - fi - am_display_PYTHON=python - ], [ - dnl A version check is needed. - if test -n "$PYTHON"; then - # If the user set $PYTHON, use it and don't search something else. - AC_MSG_CHECKING([whether $PYTHON version is >= $1]) - AM_PYTHON_CHECK_VERSION([$PYTHON], [$1], - [AC_MSG_RESULT([yes])], - [AC_MSG_RESULT([no]) - AC_MSG_ERROR([Python interpreter is too old])]) - am_display_PYTHON=$PYTHON - else - # Otherwise, try each interpreter until we find one that satisfies - # VERSION. - AC_CACHE_CHECK([for a Python interpreter with version >= $1], - [am_cv_pathless_PYTHON],[ - for am_cv_pathless_PYTHON in _AM_PYTHON_INTERPRETER_LIST none; do - test "$am_cv_pathless_PYTHON" = none && break - AM_PYTHON_CHECK_VERSION([$am_cv_pathless_PYTHON], [$1], [break]) - done]) - # Set $PYTHON to the absolute path of $am_cv_pathless_PYTHON. - if test "$am_cv_pathless_PYTHON" = none; then - PYTHON=: - else - AC_PATH_PROG([PYTHON], [$am_cv_pathless_PYTHON]) - fi - am_display_PYTHON=$am_cv_pathless_PYTHON - fi - ]) - - if test "$PYTHON" = :; then - dnl Run any user-specified action, or abort. - m4_default([$3], [AC_MSG_ERROR([no suitable Python interpreter found])]) - else - - dnl Query Python for its version number. Getting [:3] seems to be - dnl the best way to do this; it's what "site.py" does in the standard - dnl library. - - AC_CACHE_CHECK([for $am_display_PYTHON version], [am_cv_python_version], - [am_cv_python_version=`$PYTHON -c "import sys; sys.stdout.write(sys.version[[:3]])"`]) - AC_SUBST([PYTHON_VERSION], [$am_cv_python_version]) - - dnl Use the values of $prefix and $exec_prefix for the corresponding - dnl values of PYTHON_PREFIX and PYTHON_EXEC_PREFIX. These are made - dnl distinct variables so they can be overridden if need be. However, - dnl general consensus is that you shouldn't need this ability. - - AC_SUBST([PYTHON_PREFIX], ['${prefix}']) - AC_SUBST([PYTHON_EXEC_PREFIX], ['${exec_prefix}']) - - dnl At times (like when building shared libraries) you may want - dnl to know which OS platform Python thinks this is. - - AC_CACHE_CHECK([for $am_display_PYTHON platform], [am_cv_python_platform], - [am_cv_python_platform=`$PYTHON -c "import sys; sys.stdout.write(sys.platform)"`]) - AC_SUBST([PYTHON_PLATFORM], [$am_cv_python_platform]) - - # Just factor out some code duplication. - am_python_setup_sysconfig="\ -import sys -# Prefer sysconfig over distutils.sysconfig, for better compatibility -# with python 3.x. See automake bug#10227. -try: - import sysconfig -except ImportError: - can_use_sysconfig = 0 -else: - can_use_sysconfig = 1 -# Can't use sysconfig in CPython 2.7, since it's broken in virtualenvs: -# -try: - from platform import python_implementation - if python_implementation() == 'CPython' and sys.version[[:3]] == '2.7': - can_use_sysconfig = 0 -except ImportError: - pass" - - dnl Set up 4 directories: - - dnl pythondir -- where to install python scripts. This is the - dnl site-packages directory, not the python standard library - dnl directory like in previous automake betas. This behavior - dnl is more consistent with lispdir.m4 for example. - dnl Query distutils for this directory. - AC_CACHE_CHECK([for $am_display_PYTHON script directory], - [am_cv_python_pythondir], - [if test "x$prefix" = xNONE - then - am_py_prefix=$ac_default_prefix - else - am_py_prefix=$prefix - fi - am_cv_python_pythondir=`$PYTHON -c " -$am_python_setup_sysconfig -if can_use_sysconfig: - sitedir = sysconfig.get_path('purelib', vars={'base':'$am_py_prefix'}) -else: - from distutils import sysconfig - sitedir = sysconfig.get_python_lib(0, 0, prefix='$am_py_prefix') -sys.stdout.write(sitedir)"` - case $am_cv_python_pythondir in - $am_py_prefix*) - am__strip_prefix=`echo "$am_py_prefix" | sed 's|.|.|g'` - am_cv_python_pythondir=`echo "$am_cv_python_pythondir" | sed "s,^$am__strip_prefix,$PYTHON_PREFIX,"` - ;; - *) - case $am_py_prefix in - /usr|/System*) ;; - *) - am_cv_python_pythondir=$PYTHON_PREFIX/lib/python$PYTHON_VERSION/site-packages - ;; - esac - ;; - esac - ]) - AC_SUBST([pythondir], [$am_cv_python_pythondir]) - - dnl pkgpythondir -- $PACKAGE directory under pythondir. Was - dnl PYTHON_SITE_PACKAGE in previous betas, but this naming is - dnl more consistent with the rest of automake. - - AC_SUBST([pkgpythondir], [\${pythondir}/$PACKAGE]) - - dnl pyexecdir -- directory for installing python extension modules - dnl (shared libraries) - dnl Query distutils for this directory. - AC_CACHE_CHECK([for $am_display_PYTHON extension module directory], - [am_cv_python_pyexecdir], - [if test "x$exec_prefix" = xNONE - then - am_py_exec_prefix=$am_py_prefix - else - am_py_exec_prefix=$exec_prefix - fi - am_cv_python_pyexecdir=`$PYTHON -c " -$am_python_setup_sysconfig -if can_use_sysconfig: - sitedir = sysconfig.get_path('platlib', vars={'platbase':'$am_py_prefix'}) -else: - from distutils import sysconfig - sitedir = sysconfig.get_python_lib(1, 0, prefix='$am_py_prefix') -sys.stdout.write(sitedir)"` - case $am_cv_python_pyexecdir in - $am_py_exec_prefix*) - am__strip_prefix=`echo "$am_py_exec_prefix" | sed 's|.|.|g'` - am_cv_python_pyexecdir=`echo "$am_cv_python_pyexecdir" | sed "s,^$am__strip_prefix,$PYTHON_EXEC_PREFIX,"` - ;; - *) - case $am_py_exec_prefix in - /usr|/System*) ;; - *) - am_cv_python_pyexecdir=$PYTHON_EXEC_PREFIX/lib/python$PYTHON_VERSION/site-packages - ;; - esac - ;; - esac - ]) - AC_SUBST([pyexecdir], [$am_cv_python_pyexecdir]) - - dnl pkgpyexecdir -- $(pyexecdir)/$(PACKAGE) - - AC_SUBST([pkgpyexecdir], [\${pyexecdir}/$PACKAGE]) - - dnl Run any user-specified action. - $2 - fi - -]) - - -# AM_PYTHON_CHECK_VERSION(PROG, VERSION, [ACTION-IF-TRUE], [ACTION-IF-FALSE]) -# --------------------------------------------------------------------------- -# Run ACTION-IF-TRUE if the Python interpreter PROG has version >= VERSION. -# Run ACTION-IF-FALSE otherwise. -# This test uses sys.hexversion instead of the string equivalent (first -# word of sys.version), in order to cope with versions such as 2.2c1. -# This supports Python 2.0 or higher. (2.0 was released on October 16, 2000). -AC_DEFUN([AM_PYTHON_CHECK_VERSION], - [prog="import sys -# split strings by '.' and convert to numeric. Append some zeros -# because we need at least 4 digits for the hex conversion. -# map returns an iterator in Python 3.0 and a list in 2.x -minver = list(map(int, '$2'.split('.'))) + [[0, 0, 0]] -minverhex = 0 -# xrange is not present in Python 3.0 and range returns an iterator -for i in list(range(0, 4)): minverhex = (minverhex << 8) + minver[[i]] -sys.exit(sys.hexversion < minverhex)" - AS_IF([AM_RUN_LOG([$1 -c "$prog"])], [$3], [$4])]) - -# Copyright (C) 2001-2014 Free Software Foundation, Inc. -# -# This file is free software; the Free Software Foundation -# gives unlimited permission to copy and/or distribute it, -# with or without modifications, as long as this notice is preserved. - -# AM_RUN_LOG(COMMAND) -# ------------------- -# Run COMMAND, save the exit status in ac_status, and log it. -# (This has been adapted from Autoconf's _AC_RUN_LOG macro.) -AC_DEFUN([AM_RUN_LOG], -[{ echo "$as_me:$LINENO: $1" >&AS_MESSAGE_LOG_FD - ($1) >&AS_MESSAGE_LOG_FD 2>&AS_MESSAGE_LOG_FD - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&AS_MESSAGE_LOG_FD - (exit $ac_status); }]) - -# Check to make sure that the build environment is sane. -*- Autoconf -*- - -# Copyright (C) 1996-2014 Free Software Foundation, Inc. -# -# This file is free software; the Free Software Foundation -# gives unlimited permission to copy and/or distribute it, -# with or without modifications, as long as this notice is preserved. - -# AM_SANITY_CHECK -# --------------- -AC_DEFUN([AM_SANITY_CHECK], -[AC_MSG_CHECKING([whether build environment is sane]) -# Reject unsafe characters in $srcdir or the absolute working directory -# name. Accept space and tab only in the latter. -am_lf=' -' -case `pwd` in - *[[\\\"\#\$\&\'\`$am_lf]]*) - AC_MSG_ERROR([unsafe absolute working directory name]);; -esac -case $srcdir in - *[[\\\"\#\$\&\'\`$am_lf\ \ ]]*) - AC_MSG_ERROR([unsafe srcdir value: '$srcdir']);; -esac - -# Do 'set' in a subshell so we don't clobber the current shell's -# arguments. Must try -L first in case configure is actually a -# symlink; some systems play weird games with the mod time of symlinks -# (eg FreeBSD returns the mod time of the symlink's containing -# directory). -if ( - am_has_slept=no - for am_try in 1 2; do - echo "timestamp, slept: $am_has_slept" > conftest.file - set X `ls -Lt "$srcdir/configure" conftest.file 2> /dev/null` - if test "$[*]" = "X"; then - # -L didn't work. - set X `ls -t "$srcdir/configure" conftest.file` - fi - if test "$[*]" != "X $srcdir/configure conftest.file" \ - && test "$[*]" != "X conftest.file $srcdir/configure"; then - - # If neither matched, then we have a broken ls. This can happen - # if, for instance, CONFIG_SHELL is bash and it inherits a - # broken ls alias from the environment. This has actually - # happened. Such a system could not be considered "sane". - AC_MSG_ERROR([ls -t appears to fail. Make sure there is not a broken - alias in your environment]) - fi - if test "$[2]" = conftest.file || test $am_try -eq 2; then - break - fi - # Just in case. - sleep 1 - am_has_slept=yes - done - test "$[2]" = conftest.file - ) -then - # Ok. - : -else - AC_MSG_ERROR([newly created file is older than distributed files! -Check your system clock]) -fi -AC_MSG_RESULT([yes]) -# If we didn't sleep, we still need to ensure time stamps of config.status and -# generated files are strictly newer. -am_sleep_pid= -if grep 'slept: no' conftest.file >/dev/null 2>&1; then - ( sleep 1 ) & - am_sleep_pid=$! -fi -AC_CONFIG_COMMANDS_PRE( - [AC_MSG_CHECKING([that generated files are newer than configure]) - if test -n "$am_sleep_pid"; then - # Hide warnings about reused PIDs. - wait $am_sleep_pid 2>/dev/null - fi - AC_MSG_RESULT([done])]) -rm -f conftest.file -]) - -# Copyright (C) 2009-2014 Free Software Foundation, Inc. -# -# This file is free software; the Free Software Foundation -# gives unlimited permission to copy and/or distribute it, -# with or without modifications, as long as this notice is preserved. - -# AM_SILENT_RULES([DEFAULT]) -# -------------------------- -# Enable less verbose build rules; with the default set to DEFAULT -# ("yes" being less verbose, "no" or empty being verbose). -AC_DEFUN([AM_SILENT_RULES], -[AC_ARG_ENABLE([silent-rules], [dnl -AS_HELP_STRING( - [--enable-silent-rules], - [less verbose build output (undo: "make V=1")]) -AS_HELP_STRING( - [--disable-silent-rules], - [verbose build output (undo: "make V=0")])dnl -]) -case $enable_silent_rules in @%:@ ((( - yes) AM_DEFAULT_VERBOSITY=0;; - no) AM_DEFAULT_VERBOSITY=1;; - *) AM_DEFAULT_VERBOSITY=m4_if([$1], [yes], [0], [1]);; -esac -dnl -dnl A few 'make' implementations (e.g., NonStop OS and NextStep) -dnl do not support nested variable expansions. -dnl See automake bug#9928 and bug#10237. -am_make=${MAKE-make} -AC_CACHE_CHECK([whether $am_make supports nested variables], - [am_cv_make_support_nested_variables], - [if AS_ECHO([['TRUE=$(BAR$(V)) -BAR0=false -BAR1=true -V=1 -am__doit: - @$(TRUE) -.PHONY: am__doit']]) | $am_make -f - >/dev/null 2>&1; then - am_cv_make_support_nested_variables=yes -else - am_cv_make_support_nested_variables=no -fi]) -if test $am_cv_make_support_nested_variables = yes; then - dnl Using '$V' instead of '$(V)' breaks IRIX make. - AM_V='$(V)' - AM_DEFAULT_V='$(AM_DEFAULT_VERBOSITY)' -else - AM_V=$AM_DEFAULT_VERBOSITY - AM_DEFAULT_V=$AM_DEFAULT_VERBOSITY -fi -AC_SUBST([AM_V])dnl -AM_SUBST_NOTMAKE([AM_V])dnl -AC_SUBST([AM_DEFAULT_V])dnl -AM_SUBST_NOTMAKE([AM_DEFAULT_V])dnl -AC_SUBST([AM_DEFAULT_VERBOSITY])dnl -AM_BACKSLASH='\' -AC_SUBST([AM_BACKSLASH])dnl -_AM_SUBST_NOTMAKE([AM_BACKSLASH])dnl -]) - -# Copyright (C) 2001-2014 Free Software Foundation, Inc. -# -# This file is free software; the Free Software Foundation -# gives unlimited permission to copy and/or distribute it, -# with or without modifications, as long as this notice is preserved. - -# AM_PROG_INSTALL_STRIP -# --------------------- -# One issue with vendor 'install' (even GNU) is that you can't -# specify the program used to strip binaries. This is especially -# annoying in cross-compiling environments, where the build's strip -# is unlikely to handle the host's binaries. -# Fortunately install-sh will honor a STRIPPROG variable, so we -# always use install-sh in "make install-strip", and initialize -# STRIPPROG with the value of the STRIP variable (set by the user). -AC_DEFUN([AM_PROG_INSTALL_STRIP], -[AC_REQUIRE([AM_PROG_INSTALL_SH])dnl -# Installed binaries are usually stripped using 'strip' when the user -# run "make install-strip". However 'strip' might not be the right -# tool to use in cross-compilation environments, therefore Automake -# will honor the 'STRIP' environment variable to overrule this program. -dnl Don't test for $cross_compiling = yes, because it might be 'maybe'. -if test "$cross_compiling" != no; then - AC_CHECK_TOOL([STRIP], [strip], :) -fi -INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s" -AC_SUBST([INSTALL_STRIP_PROGRAM])]) - -# Copyright (C) 2006-2014 Free Software Foundation, Inc. -# -# This file is free software; the Free Software Foundation -# gives unlimited permission to copy and/or distribute it, -# with or without modifications, as long as this notice is preserved. - -# _AM_SUBST_NOTMAKE(VARIABLE) -# --------------------------- -# Prevent Automake from outputting VARIABLE = @VARIABLE@ in Makefile.in. -# This macro is traced by Automake. -AC_DEFUN([_AM_SUBST_NOTMAKE]) - -# AM_SUBST_NOTMAKE(VARIABLE) -# -------------------------- -# Public sister of _AM_SUBST_NOTMAKE. -AC_DEFUN([AM_SUBST_NOTMAKE], [_AM_SUBST_NOTMAKE($@)]) - -# Check how to create a tarball. -*- Autoconf -*- - -# Copyright (C) 2004-2014 Free Software Foundation, Inc. -# -# This file is free software; the Free Software Foundation -# gives unlimited permission to copy and/or distribute it, -# with or without modifications, as long as this notice is preserved. - -# _AM_PROG_TAR(FORMAT) -# -------------------- -# Check how to create a tarball in format FORMAT. -# FORMAT should be one of 'v7', 'ustar', or 'pax'. -# -# Substitute a variable $(am__tar) that is a command -# writing to stdout a FORMAT-tarball containing the directory -# $tardir. -# tardir=directory && $(am__tar) > result.tar -# -# Substitute a variable $(am__untar) that extract such -# a tarball read from stdin. -# $(am__untar) < result.tar -# -AC_DEFUN([_AM_PROG_TAR], -[# Always define AMTAR for backward compatibility. Yes, it's still used -# in the wild :-( We should find a proper way to deprecate it ... -AC_SUBST([AMTAR], ['$${TAR-tar}']) - -# We'll loop over all known methods to create a tar archive until one works. -_am_tools='gnutar m4_if([$1], [ustar], [plaintar]) pax cpio none' - -m4_if([$1], [v7], - [am__tar='$${TAR-tar} chof - "$$tardir"' am__untar='$${TAR-tar} xf -'], - - [m4_case([$1], - [ustar], - [# The POSIX 1988 'ustar' format is defined with fixed-size fields. - # There is notably a 21 bits limit for the UID and the GID. In fact, - # the 'pax' utility can hang on bigger UID/GID (see automake bug#8343 - # and bug#13588). - am_max_uid=2097151 # 2^21 - 1 - am_max_gid=$am_max_uid - # The $UID and $GID variables are not portable, so we need to resort - # to the POSIX-mandated id(1) utility. Errors in the 'id' calls - # below are definitely unexpected, so allow the users to see them - # (that is, avoid stderr redirection). - am_uid=`id -u || echo unknown` - am_gid=`id -g || echo unknown` - AC_MSG_CHECKING([whether UID '$am_uid' is supported by ustar format]) - if test $am_uid -le $am_max_uid; then - AC_MSG_RESULT([yes]) - else - AC_MSG_RESULT([no]) - _am_tools=none - fi - AC_MSG_CHECKING([whether GID '$am_gid' is supported by ustar format]) - if test $am_gid -le $am_max_gid; then - AC_MSG_RESULT([yes]) - else - AC_MSG_RESULT([no]) - _am_tools=none - fi], - - [pax], - [], - - [m4_fatal([Unknown tar format])]) - - AC_MSG_CHECKING([how to create a $1 tar archive]) - - # Go ahead even if we have the value already cached. We do so because we - # need to set the values for the 'am__tar' and 'am__untar' variables. - _am_tools=${am_cv_prog_tar_$1-$_am_tools} - - for _am_tool in $_am_tools; do - case $_am_tool in - gnutar) - for _am_tar in tar gnutar gtar; do - AM_RUN_LOG([$_am_tar --version]) && break - done - am__tar="$_am_tar --format=m4_if([$1], [pax], [posix], [$1]) -chf - "'"$$tardir"' - am__tar_="$_am_tar --format=m4_if([$1], [pax], [posix], [$1]) -chf - "'"$tardir"' - am__untar="$_am_tar -xf -" - ;; - plaintar) - # Must skip GNU tar: if it does not support --format= it doesn't create - # ustar tarball either. - (tar --version) >/dev/null 2>&1 && continue - am__tar='tar chf - "$$tardir"' - am__tar_='tar chf - "$tardir"' - am__untar='tar xf -' - ;; - pax) - am__tar='pax -L -x $1 -w "$$tardir"' - am__tar_='pax -L -x $1 -w "$tardir"' - am__untar='pax -r' - ;; - cpio) - am__tar='find "$$tardir" -print | cpio -o -H $1 -L' - am__tar_='find "$tardir" -print | cpio -o -H $1 -L' - am__untar='cpio -i -H $1 -d' - ;; - none) - am__tar=false - am__tar_=false - am__untar=false - ;; - esac - - # If the value was cached, stop now. We just wanted to have am__tar - # and am__untar set. - test -n "${am_cv_prog_tar_$1}" && break - - # tar/untar a dummy directory, and stop if the command works. - rm -rf conftest.dir - mkdir conftest.dir - echo GrepMe > conftest.dir/file - AM_RUN_LOG([tardir=conftest.dir && eval $am__tar_ >conftest.tar]) - rm -rf conftest.dir - if test -s conftest.tar; then - AM_RUN_LOG([$am__untar /dev/null 2>&1 && break - fi - done - rm -rf conftest.dir - - AC_CACHE_VAL([am_cv_prog_tar_$1], [am_cv_prog_tar_$1=$_am_tool]) - AC_MSG_RESULT([$am_cv_prog_tar_$1])]) - -AC_SUBST([am__tar]) -AC_SUBST([am__untar]) -]) # _AM_PROG_TAR - -m4_include([m4/00gnulib.m4]) -m4_include([m4/__inline.m4]) -m4_include([m4/absolute-header.m4]) -m4_include([m4/alloca.m4]) -m4_include([m4/argp.m4]) -m4_include([m4/btowc.m4]) -m4_include([m4/builtin-expect.m4]) -m4_include([m4/chdir-long.m4]) -m4_include([m4/close.m4]) -m4_include([m4/codeset.m4]) -m4_include([m4/dirent_h.m4]) -m4_include([m4/dirfd.m4]) -m4_include([m4/dirname.m4]) -m4_include([m4/double-slash-root.m4]) -m4_include([m4/dup2.m4]) -m4_include([m4/eealloc.m4]) -m4_include([m4/errno_h.m4]) -m4_include([m4/error.m4]) -m4_include([m4/exponentd.m4]) -m4_include([m4/extensions.m4]) -m4_include([m4/extern-inline.m4]) -m4_include([m4/fchdir.m4]) -m4_include([m4/fcntl-o.m4]) -m4_include([m4/fcntl.m4]) -m4_include([m4/fcntl_h.m4]) -m4_include([m4/filenamecat.m4]) -m4_include([m4/flexmember.m4]) -m4_include([m4/float_h.m4]) -m4_include([m4/fnmatch.m4]) -m4_include([m4/fnmatch_h.m4]) -m4_include([m4/fstat.m4]) -m4_include([m4/getcwd.m4]) -m4_include([m4/getdelim.m4]) -m4_include([m4/getdtablesize.m4]) -m4_include([m4/getline.m4]) -m4_include([m4/getopt.m4]) -m4_include([m4/getprogname.m4]) -m4_include([m4/gettext.m4]) -m4_include([m4/glibc21.m4]) -m4_include([m4/gnulib-common.m4]) -m4_include([m4/gnulib-comp.m4]) -m4_include([m4/host-cpu-c-abi.m4]) -m4_include([m4/iconv.m4]) -m4_include([m4/include_next.m4]) -m4_include([m4/intlmacosx.m4]) -m4_include([m4/intmax_t.m4]) -m4_include([m4/inttypes_h.m4]) -m4_include([m4/langinfo_h.m4]) -m4_include([m4/largefile.m4]) -m4_include([m4/lib-ld.m4]) -m4_include([m4/lib-link.m4]) -m4_include([m4/lib-prefix.m4]) -m4_include([m4/libunistring-base.m4]) -m4_include([m4/limits-h.m4]) -m4_include([m4/localcharset.m4]) -m4_include([m4/locale-fr.m4]) -m4_include([m4/locale-ja.m4]) -m4_include([m4/locale-zh.m4]) -m4_include([m4/locale_h.m4]) -m4_include([m4/localeconv.m4]) -m4_include([m4/lock.m4]) -m4_include([m4/longlong.m4]) -m4_include([m4/lstat.m4]) -m4_include([m4/malloc.m4]) -m4_include([m4/malloca.m4]) -m4_include([m4/mbrtowc.m4]) -m4_include([m4/mbsinit.m4]) -m4_include([m4/mbsrtowcs.m4]) -m4_include([m4/mbstate_t.m4]) -m4_include([m4/mbswidth.m4]) -m4_include([m4/mbtowc.m4]) -m4_include([m4/memchr.m4]) -m4_include([m4/mempcpy.m4]) -m4_include([m4/memrchr.m4]) -m4_include([m4/mmap-anon.m4]) -m4_include([m4/mode_t.m4]) -m4_include([m4/msvc-inval.m4]) -m4_include([m4/msvc-nothrow.m4]) -m4_include([m4/multiarch.m4]) -m4_include([m4/nl_langinfo.m4]) -m4_include([m4/nls.m4]) -m4_include([m4/nocrash.m4]) -m4_include([m4/off_t.m4]) -m4_include([m4/open-cloexec.m4]) -m4_include([m4/open.m4]) -m4_include([m4/openat.m4]) -m4_include([m4/pathmax.m4]) -m4_include([m4/po.m4]) -m4_include([m4/printf.m4]) -m4_include([m4/progtest.m4]) -m4_include([m4/pthread_rwlock_rdlock.m4]) -m4_include([m4/rawmemchr.m4]) -m4_include([m4/realloc.m4]) -m4_include([m4/regex.m4]) -m4_include([m4/save-cwd.m4]) -m4_include([m4/size_max.m4]) -m4_include([m4/sleep.m4]) -m4_include([m4/ssize_t.m4]) -m4_include([m4/stat-time.m4]) -m4_include([m4/stat.m4]) -m4_include([m4/stdalign.m4]) -m4_include([m4/stdbool.m4]) -m4_include([m4/stddef_h.m4]) -m4_include([m4/stdint.m4]) -m4_include([m4/stdint_h.m4]) -m4_include([m4/stdio_h.m4]) -m4_include([m4/stdlib_h.m4]) -m4_include([m4/strcase.m4]) -m4_include([m4/strchrnul.m4]) -m4_include([m4/strdup.m4]) -m4_include([m4/strerror.m4]) -m4_include([m4/string_h.m4]) -m4_include([m4/strings_h.m4]) -m4_include([m4/strndup.m4]) -m4_include([m4/strnlen.m4]) -m4_include([m4/sys_socket_h.m4]) -m4_include([m4/sys_stat_h.m4]) -m4_include([m4/sys_types_h.m4]) -m4_include([m4/sysexits.m4]) -m4_include([m4/threadlib.m4]) -m4_include([m4/time_h.m4]) -m4_include([m4/unistd-safer.m4]) -m4_include([m4/unistd_h.m4]) -m4_include([m4/vasnprintf.m4]) -m4_include([m4/vsnprintf.m4]) -m4_include([m4/warn-on-use.m4]) -m4_include([m4/wchar_h.m4]) -m4_include([m4/wchar_t.m4]) -m4_include([m4/wcrtomb.m4]) -m4_include([m4/wctype_h.m4]) -m4_include([m4/wcwidth.m4]) -m4_include([m4/wint_t.m4]) -m4_include([m4/xsize.m4]) -m4_include([acinclude.m4]) diff --git a/thirdparty/grub-2.04/asm-tests/arm.S b/thirdparty/grub-2.04/asm-tests/arm.S deleted file mode 100644 index 97c2546bf..000000000 --- a/thirdparty/grub-2.04/asm-tests/arm.S +++ /dev/null @@ -1,20 +0,0 @@ -/* on arm clang doesn't support .arch directive */ - - .text - .syntax unified - -#if !defined (__thumb2__) - .arch armv7a - .arm -#else - .arch armv7 - .thumb -#endif - mcr p15, 0, r11, c7, c14, 2 - - /* clang restricts access to dsb/isb despite .arch */ - dsb - isb - - - diff --git a/thirdparty/grub-2.04/asm-tests/i386-pc.S b/thirdparty/grub-2.04/asm-tests/i386-pc.S deleted file mode 100644 index d037744f9..000000000 --- a/thirdparty/grub-2.04/asm-tests/i386-pc.S +++ /dev/null @@ -1,18 +0,0 @@ -/* on x86 old clang doesn't support .code16 - newer clang supports it but creates 6-byte jumps instead of 3-byte ones - which makes us go over boot sector size. - Starting with 3.9 clang emits 3-byte jumps but still creates 8-bytes movl - instead of 5-bytes, so code overflows into data. */ - - .code16 - jmp far - .org 4 - jmp nearer - .org 6 - movl nearer, %ebx - .org 11 - .space 100 -nearer: - .space 200 -far: - .byte 0 diff --git a/thirdparty/grub-2.04/asm-tests/i386.S b/thirdparty/grub-2.04/asm-tests/i386.S deleted file mode 100644 index 30adc4fe2..000000000 --- a/thirdparty/grub-2.04/asm-tests/i386.S +++ /dev/null @@ -1,4 +0,0 @@ -/* on x86 old clang doesn't support .code16 */ - - .code16 - movb %al, %bl diff --git a/thirdparty/grub-2.04/asm-tests/mips.S b/thirdparty/grub-2.04/asm-tests/mips.S deleted file mode 100644 index 1312d47d5..000000000 --- a/thirdparty/grub-2.04/asm-tests/mips.S +++ /dev/null @@ -1,11 +0,0 @@ -/* on mips clang doesn't support privilegied instructions, doubleword store/load - and crashes with hand-written assembly - */ - - .set mips3 - sync - ld $t2, 0($t1) - -a: - addiu $t1, $s0, (b - a) -b: nop diff --git a/thirdparty/grub-2.04/asm-tests/powerpc.S b/thirdparty/grub-2.04/asm-tests/powerpc.S deleted file mode 100644 index 396a6cce9..000000000 --- a/thirdparty/grub-2.04/asm-tests/powerpc.S +++ /dev/null @@ -1,8 +0,0 @@ -/* clang <= 3.3 doesn't handle most of ppc assembly, not even inline assembly - used by gcrypt */ -/* Cache invalidation loop is a fair test. */ - li 5, 0 -1: icbi 5, 3 - addi 5, 5, 32 - cmpw 5, 4 - blt 1b diff --git a/thirdparty/grub-2.04/asm-tests/sparc64.S b/thirdparty/grub-2.04/asm-tests/sparc64.S deleted file mode 100644 index 03c5fe02a..000000000 --- a/thirdparty/grub-2.04/asm-tests/sparc64.S +++ /dev/null @@ -1,9 +0,0 @@ - .text -1: - /* A small list of examples of what clang doesn't support. */ - clr %o0 - lduw [%o4 + 4], %o4 - and %o6, ~0xff, %o6 - stw %o5, [%o3] - bne,pt %icc, 1b - nop diff --git a/thirdparty/grub-2.04/autogen.sh b/thirdparty/grub-2.04/autogen.sh deleted file mode 100755 index ef43270fc..000000000 --- a/thirdparty/grub-2.04/autogen.sh +++ /dev/null @@ -1,103 +0,0 @@ -#! /usr/bin/env bash - -set -e - -if [ ! -e grub-core/lib/gnulib/stdlib.in.h ]; then - echo "Gnulib not yet bootstrapped; run ./bootstrap instead." >&2 - exit 1 -fi - -# Set ${PYTHON} to plain 'python' if not set already -: ${PYTHON:=python} - -export LC_COLLATE=C -unset LC_ALL - -find . -iname '*.[ch]' ! -ipath './grub-core/lib/libgcrypt-grub/*' ! -ipath './build-aux/*' ! -ipath './grub-core/lib/libgcrypt/src/misc.c' ! -ipath './grub-core/lib/libgcrypt/src/global.c' ! -ipath './grub-core/lib/libgcrypt/src/secmem.c' ! -ipath './util/grub-gen-widthspec.c' ! -ipath './util/grub-gen-asciih.c' ! -ipath './gnulib/*' ! -iname './grub-core/lib/gnulib/*' |sort > po/POTFILES.in -find util -iname '*.in' ! -name Makefile.in |sort > po/POTFILES-shell.in - -echo "Importing unicode..." -${PYTHON} util/import_unicode.py unicode/UnicodeData.txt unicode/BidiMirroring.txt unicode/ArabicShaping.txt grub-core/unidata.c - -echo "Importing libgcrypt..." -${PYTHON} util/import_gcry.py grub-core/lib/libgcrypt/ grub-core -sed -n -f util/import_gcrypth.sed < grub-core/lib/libgcrypt/src/gcrypt.h.in > include/grub/gcrypt/gcrypt.h -if [ -f include/grub/gcrypt/g10lib.h ]; then - rm include/grub/gcrypt/g10lib.h -fi -if [ -d grub-core/lib/libgcrypt-grub/mpi/generic ]; then - rm -rf grub-core/lib/libgcrypt-grub/mpi/generic -fi -cp grub-core/lib/libgcrypt-grub/src/g10lib.h include/grub/gcrypt/g10lib.h -cp -R grub-core/lib/libgcrypt/mpi/generic grub-core/lib/libgcrypt-grub/mpi/generic - -for x in mpi-asm-defs.h mpih-add1.c mpih-sub1.c mpih-mul1.c mpih-mul2.c mpih-mul3.c mpih-lshift.c mpih-rshift.c; do - if [ -h grub-core/lib/libgcrypt-grub/mpi/"$x" ] || [ -f grub-core/lib/libgcrypt-grub/mpi/"$x" ]; then - rm grub-core/lib/libgcrypt-grub/mpi/"$x" - fi - cp grub-core/lib/libgcrypt-grub/mpi/generic/"$x" grub-core/lib/libgcrypt-grub/mpi/"$x" -done - -echo "Generating Automake input..." - -# Automake doesn't like including files from a path outside the project. -rm -f contrib grub-core/contrib -if [ "x${GRUB_CONTRIB}" != x ]; then - [ "${GRUB_CONTRIB}" = contrib ] || ln -s "${GRUB_CONTRIB}" contrib - [ "${GRUB_CONTRIB}" = grub-core/contrib ] || ln -s ../contrib grub-core/contrib -fi - -UTIL_DEFS='Makefile.util.def Makefile.utilgcry.def' -CORE_DEFS='grub-core/Makefile.core.def grub-core/Makefile.gcry.def' - -for extra in contrib/*/Makefile.util.def; do - if test -e "$extra"; then - UTIL_DEFS="$UTIL_DEFS $extra" - fi -done - -for extra in contrib/*/Makefile.core.def; do - if test -e "$extra"; then - CORE_DEFS="$CORE_DEFS $extra" - fi -done - -${PYTHON} gentpl.py $UTIL_DEFS > Makefile.util.am -${PYTHON} gentpl.py $CORE_DEFS > grub-core/Makefile.core.am - -for extra in contrib/*/Makefile.common; do - if test -e "$extra"; then - echo "include $extra" >> Makefile.util.am - echo "include $extra" >> grub-core/Makefile.core.am - fi -done - -for extra in contrib/*/Makefile.util.common; do - if test -e "$extra"; then - echo "include $extra" >> Makefile.util.am - fi -done - -for extra in contrib/*/Makefile.core.common; do - if test -e "$extra"; then - echo "include $extra" >> grub-core/Makefile.core.am - fi -done - -echo "Saving timestamps..." -echo timestamp > stamp-h.in - -if [ -z "$FROM_BOOTSTRAP" ]; then - # Unaided autoreconf is likely to install older versions of many files - # than the ones provided by Gnulib, but in most cases this won't matter - # very much. This mode is provided so that you can run ./autogen.sh to - # regenerate the GRUB build system in an unpacked release tarball (perhaps - # after patching it), even on systems that don't have access to - # gnulib.git. - echo "Running autoreconf..." - cp -a INSTALL INSTALL.grub - autoreconf -vif - mv INSTALL.grub INSTALL -fi - -exit 0 diff --git a/thirdparty/grub-2.04/build-aux/compile b/thirdparty/grub-2.04/build-aux/compile deleted file mode 100755 index a85b723c7..000000000 --- a/thirdparty/grub-2.04/build-aux/compile +++ /dev/null @@ -1,347 +0,0 @@ -#! /bin/sh -# Wrapper for compilers which do not understand '-c -o'. - -scriptversion=2012-10-14.11; # UTC - -# Copyright (C) 1999-2014 Free Software Foundation, Inc. -# Written by Tom Tromey . -# -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2, or (at your option) -# any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program. If not, see . - -# As a special exception to the GNU General Public License, if you -# distribute this file as part of a program that contains a -# configuration script generated by Autoconf, you may include it under -# the same distribution terms that you use for the rest of that program. - -# This file is maintained in Automake, please report -# bugs to or send patches to -# . - -nl=' -' - -# We need space, tab and new line, in precisely that order. Quoting is -# there to prevent tools from complaining about whitespace usage. -IFS=" "" $nl" - -file_conv= - -# func_file_conv build_file lazy -# Convert a $build file to $host form and store it in $file -# Currently only supports Windows hosts. If the determined conversion -# type is listed in (the comma separated) LAZY, no conversion will -# take place. -func_file_conv () -{ - file=$1 - case $file in - / | /[!/]*) # absolute file, and not a UNC file - if test -z "$file_conv"; then - # lazily determine how to convert abs files - case `uname -s` in - MINGW*) - file_conv=mingw - ;; - CYGWIN*) - file_conv=cygwin - ;; - *) - file_conv=wine - ;; - esac - fi - case $file_conv/,$2, in - *,$file_conv,*) - ;; - mingw/*) - file=`cmd //C echo "$file " | sed -e 's/"\(.*\) " *$/\1/'` - ;; - cygwin/*) - file=`cygpath -m "$file" || echo "$file"` - ;; - wine/*) - file=`winepath -w "$file" || echo "$file"` - ;; - esac - ;; - esac -} - -# func_cl_dashL linkdir -# Make cl look for libraries in LINKDIR -func_cl_dashL () -{ - func_file_conv "$1" - if test -z "$lib_path"; then - lib_path=$file - else - lib_path="$lib_path;$file" - fi - linker_opts="$linker_opts -LIBPATH:$file" -} - -# func_cl_dashl library -# Do a library search-path lookup for cl -func_cl_dashl () -{ - lib=$1 - found=no - save_IFS=$IFS - IFS=';' - for dir in $lib_path $LIB - do - IFS=$save_IFS - if $shared && test -f "$dir/$lib.dll.lib"; then - found=yes - lib=$dir/$lib.dll.lib - break - fi - if test -f "$dir/$lib.lib"; then - found=yes - lib=$dir/$lib.lib - break - fi - if test -f "$dir/lib$lib.a"; then - found=yes - lib=$dir/lib$lib.a - break - fi - done - IFS=$save_IFS - - if test "$found" != yes; then - lib=$lib.lib - fi -} - -# func_cl_wrapper cl arg... -# Adjust compile command to suit cl -func_cl_wrapper () -{ - # Assume a capable shell - lib_path= - shared=: - linker_opts= - for arg - do - if test -n "$eat"; then - eat= - else - case $1 in - -o) - # configure might choose to run compile as 'compile cc -o foo foo.c'. - eat=1 - case $2 in - *.o | *.[oO][bB][jJ]) - func_file_conv "$2" - set x "$@" -Fo"$file" - shift - ;; - *) - func_file_conv "$2" - set x "$@" -Fe"$file" - shift - ;; - esac - ;; - -I) - eat=1 - func_file_conv "$2" mingw - set x "$@" -I"$file" - shift - ;; - -I*) - func_file_conv "${1#-I}" mingw - set x "$@" -I"$file" - shift - ;; - -l) - eat=1 - func_cl_dashl "$2" - set x "$@" "$lib" - shift - ;; - -l*) - func_cl_dashl "${1#-l}" - set x "$@" "$lib" - shift - ;; - -L) - eat=1 - func_cl_dashL "$2" - ;; - -L*) - func_cl_dashL "${1#-L}" - ;; - -static) - shared=false - ;; - -Wl,*) - arg=${1#-Wl,} - save_ifs="$IFS"; IFS=',' - for flag in $arg; do - IFS="$save_ifs" - linker_opts="$linker_opts $flag" - done - IFS="$save_ifs" - ;; - -Xlinker) - eat=1 - linker_opts="$linker_opts $2" - ;; - -*) - set x "$@" "$1" - shift - ;; - *.cc | *.CC | *.cxx | *.CXX | *.[cC]++) - func_file_conv "$1" - set x "$@" -Tp"$file" - shift - ;; - *.c | *.cpp | *.CPP | *.lib | *.LIB | *.Lib | *.OBJ | *.obj | *.[oO]) - func_file_conv "$1" mingw - set x "$@" "$file" - shift - ;; - *) - set x "$@" "$1" - shift - ;; - esac - fi - shift - done - if test -n "$linker_opts"; then - linker_opts="-link$linker_opts" - fi - exec "$@" $linker_opts - exit 1 -} - -eat= - -case $1 in - '') - echo "$0: No command. Try '$0 --help' for more information." 1>&2 - exit 1; - ;; - -h | --h*) - cat <<\EOF -Usage: compile [--help] [--version] PROGRAM [ARGS] - -Wrapper for compilers which do not understand '-c -o'. -Remove '-o dest.o' from ARGS, run PROGRAM with the remaining -arguments, and rename the output as expected. - -If you are trying to build a whole package this is not the -right script to run: please start by reading the file 'INSTALL'. - -Report bugs to . -EOF - exit $? - ;; - -v | --v*) - echo "compile $scriptversion" - exit $? - ;; - cl | *[/\\]cl | cl.exe | *[/\\]cl.exe ) - func_cl_wrapper "$@" # Doesn't return... - ;; -esac - -ofile= -cfile= - -for arg -do - if test -n "$eat"; then - eat= - else - case $1 in - -o) - # configure might choose to run compile as 'compile cc -o foo foo.c'. - # So we strip '-o arg' only if arg is an object. - eat=1 - case $2 in - *.o | *.obj) - ofile=$2 - ;; - *) - set x "$@" -o "$2" - shift - ;; - esac - ;; - *.c) - cfile=$1 - set x "$@" "$1" - shift - ;; - *) - set x "$@" "$1" - shift - ;; - esac - fi - shift -done - -if test -z "$ofile" || test -z "$cfile"; then - # If no '-o' option was seen then we might have been invoked from a - # pattern rule where we don't need one. That is ok -- this is a - # normal compilation that the losing compiler can handle. If no - # '.c' file was seen then we are probably linking. That is also - # ok. - exec "$@" -fi - -# Name of file we expect compiler to create. -cofile=`echo "$cfile" | sed 's|^.*[\\/]||; s|^[a-zA-Z]:||; s/\.c$/.o/'` - -# Create the lock directory. -# Note: use '[/\\:.-]' here to ensure that we don't use the same name -# that we are using for the .o file. Also, base the name on the expected -# object file name, since that is what matters with a parallel build. -lockdir=`echo "$cofile" | sed -e 's|[/\\:.-]|_|g'`.d -while true; do - if mkdir "$lockdir" >/dev/null 2>&1; then - break - fi - sleep 1 -done -# FIXME: race condition here if user kills between mkdir and trap. -trap "rmdir '$lockdir'; exit 1" 1 2 15 - -# Run the compile. -"$@" -ret=$? - -if test -f "$cofile"; then - test "$cofile" = "$ofile" || mv "$cofile" "$ofile" -elif test -f "${cofile}bj"; then - test "${cofile}bj" = "$ofile" || mv "${cofile}bj" "$ofile" -fi - -rmdir "$lockdir" -exit $ret - -# Local Variables: -# mode: shell-script -# sh-indentation: 2 -# eval: (add-hook 'write-file-hooks 'time-stamp) -# time-stamp-start: "scriptversion=" -# time-stamp-format: "%:y-%02m-%02d.%02H" -# time-stamp-time-zone: "UTC" -# time-stamp-end: "; # UTC" -# End: diff --git a/thirdparty/grub-2.04/build-aux/config.guess b/thirdparty/grub-2.04/build-aux/config.guess deleted file mode 100755 index 8e2a58b86..000000000 --- a/thirdparty/grub-2.04/build-aux/config.guess +++ /dev/null @@ -1,1506 +0,0 @@ -#! /bin/sh -# Attempt to guess a canonical system name. -# Copyright 1992-2019 Free Software Foundation, Inc. - -timestamp='2019-01-03' - -# This file is free software; you can redistribute it and/or modify it -# under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 3 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, but -# WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, see . -# -# As a special exception to the GNU General Public License, if you -# distribute this file as part of a program that contains a -# configuration script generated by Autoconf, you may include it under -# the same distribution terms that you use for the rest of that -# program. This Exception is an additional permission under section 7 -# of the GNU General Public License, version 3 ("GPLv3"). -# -# Originally written by Per Bothner; maintained since 2000 by Ben Elliston. -# -# You can get the latest version of this script from: -# https://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess -# -# Please send patches to . - - -me=`echo "$0" | sed -e 's,.*/,,'` - -usage="\ -Usage: $0 [OPTION] - -Output the configuration name of the system \`$me' is run on. - -Options: - -h, --help print this help, then exit - -t, --time-stamp print date of last modification, then exit - -v, --version print version number, then exit - -Report bugs and patches to ." - -version="\ -GNU config.guess ($timestamp) - -Originally written by Per Bothner. -Copyright 1992-2019 Free Software Foundation, Inc. - -This is free software; see the source for copying conditions. There is NO -warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." - -help=" -Try \`$me --help' for more information." - -# Parse command line -while test $# -gt 0 ; do - case $1 in - --time-stamp | --time* | -t ) - echo "$timestamp" ; exit ;; - --version | -v ) - echo "$version" ; exit ;; - --help | --h* | -h ) - echo "$usage"; exit ;; - -- ) # Stop option processing - shift; break ;; - - ) # Use stdin as input. - break ;; - -* ) - echo "$me: invalid option $1$help" >&2 - exit 1 ;; - * ) - break ;; - esac -done - -if test $# != 0; then - echo "$me: too many arguments$help" >&2 - exit 1 -fi - -# CC_FOR_BUILD -- compiler used by this script. Note that the use of a -# compiler to aid in system detection is discouraged as it requires -# temporary files to be created and, as you can see below, it is a -# headache to deal with in a portable fashion. - -# Historically, `CC_FOR_BUILD' used to be named `HOST_CC'. We still -# use `HOST_CC' if defined, but it is deprecated. - -# Portable tmp directory creation inspired by the Autoconf team. - -tmp= -# shellcheck disable=SC2172 -trap 'test -z "$tmp" || rm -fr "$tmp"' 0 1 2 13 15 - -set_cc_for_build() { - : "${TMPDIR=/tmp}" - # shellcheck disable=SC2039 - { tmp=`(umask 077 && mktemp -d "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } || - { test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir "$tmp" 2>/dev/null) ; } || - { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir "$tmp" 2>/dev/null) && echo "Warning: creating insecure temp directory" >&2 ; } || - { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; } - dummy=$tmp/dummy - case ${CC_FOR_BUILD-},${HOST_CC-},${CC-} in - ,,) echo "int x;" > "$dummy.c" - for driver in cc gcc c89 c99 ; do - if ($driver -c -o "$dummy.o" "$dummy.c") >/dev/null 2>&1 ; then - CC_FOR_BUILD="$driver" - break - fi - done - if test x"$CC_FOR_BUILD" = x ; then - CC_FOR_BUILD=no_compiler_found - fi - ;; - ,,*) CC_FOR_BUILD=$CC ;; - ,*,*) CC_FOR_BUILD=$HOST_CC ;; - esac -} - -# This is needed to find uname on a Pyramid OSx when run in the BSD universe. -# (ghazi@noc.rutgers.edu 1994-08-24) -if test -f /.attbin/uname ; then - PATH=$PATH:/.attbin ; export PATH -fi - -UNAME_MACHINE=`(uname -m) 2>/dev/null` || UNAME_MACHINE=unknown -UNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown -UNAME_SYSTEM=`(uname -s) 2>/dev/null` || UNAME_SYSTEM=unknown -UNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown - -case "$UNAME_SYSTEM" in -Linux|GNU|GNU/*) - # If the system lacks a compiler, then just pick glibc. - # We could probably try harder. - LIBC=gnu - - set_cc_for_build - cat <<-EOF > "$dummy.c" - #include - #if defined(__UCLIBC__) - LIBC=uclibc - #elif defined(__dietlibc__) - LIBC=dietlibc - #else - LIBC=gnu - #endif - EOF - eval "`$CC_FOR_BUILD -E "$dummy.c" 2>/dev/null | grep '^LIBC' | sed 's, ,,g'`" - - # If ldd exists, use it to detect musl libc. - if command -v ldd >/dev/null && \ - ldd --version 2>&1 | grep -q ^musl - then - LIBC=musl - fi - ;; -esac - -# Note: order is significant - the case branches are not exclusive. - -case "$UNAME_MACHINE:$UNAME_SYSTEM:$UNAME_RELEASE:$UNAME_VERSION" in - *:NetBSD:*:*) - # NetBSD (nbsd) targets should (where applicable) match one or - # more of the tuples: *-*-netbsdelf*, *-*-netbsdaout*, - # *-*-netbsdecoff* and *-*-netbsd*. For targets that recently - # switched to ELF, *-*-netbsd* would select the old - # object file format. This provides both forward - # compatibility and a consistent mechanism for selecting the - # object file format. - # - # Note: NetBSD doesn't particularly care about the vendor - # portion of the name. We always set it to "unknown". - sysctl="sysctl -n hw.machine_arch" - UNAME_MACHINE_ARCH=`(uname -p 2>/dev/null || \ - "/sbin/$sysctl" 2>/dev/null || \ - "/usr/sbin/$sysctl" 2>/dev/null || \ - echo unknown)` - case "$UNAME_MACHINE_ARCH" in - armeb) machine=armeb-unknown ;; - arm*) machine=arm-unknown ;; - sh3el) machine=shl-unknown ;; - sh3eb) machine=sh-unknown ;; - sh5el) machine=sh5le-unknown ;; - earmv*) - arch=`echo "$UNAME_MACHINE_ARCH" | sed -e 's,^e\(armv[0-9]\).*$,\1,'` - endian=`echo "$UNAME_MACHINE_ARCH" | sed -ne 's,^.*\(eb\)$,\1,p'` - machine="${arch}${endian}"-unknown - ;; - *) machine="$UNAME_MACHINE_ARCH"-unknown ;; - esac - # The Operating System including object format, if it has switched - # to ELF recently (or will in the future) and ABI. - case "$UNAME_MACHINE_ARCH" in - earm*) - os=netbsdelf - ;; - arm*|i386|m68k|ns32k|sh3*|sparc|vax) - set_cc_for_build - if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \ - | grep -q __ELF__ - then - # Once all utilities can be ECOFF (netbsdecoff) or a.out (netbsdaout). - # Return netbsd for either. FIX? - os=netbsd - else - os=netbsdelf - fi - ;; - *) - os=netbsd - ;; - esac - # Determine ABI tags. - case "$UNAME_MACHINE_ARCH" in - earm*) - expr='s/^earmv[0-9]/-eabi/;s/eb$//' - abi=`echo "$UNAME_MACHINE_ARCH" | sed -e "$expr"` - ;; - esac - # The OS release - # Debian GNU/NetBSD machines have a different userland, and - # thus, need a distinct triplet. However, they do not need - # kernel version information, so it can be replaced with a - # suitable tag, in the style of linux-gnu. - case "$UNAME_VERSION" in - Debian*) - release='-gnu' - ;; - *) - release=`echo "$UNAME_RELEASE" | sed -e 's/[-_].*//' | cut -d. -f1,2` - ;; - esac - # Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM: - # contains redundant information, the shorter form: - # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used. - echo "$machine-${os}${release}${abi-}" - exit ;; - *:Bitrig:*:*) - UNAME_MACHINE_ARCH=`arch | sed 's/Bitrig.//'` - echo "$UNAME_MACHINE_ARCH"-unknown-bitrig"$UNAME_RELEASE" - exit ;; - *:OpenBSD:*:*) - UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'` - echo "$UNAME_MACHINE_ARCH"-unknown-openbsd"$UNAME_RELEASE" - exit ;; - *:LibertyBSD:*:*) - UNAME_MACHINE_ARCH=`arch | sed 's/^.*BSD\.//'` - echo "$UNAME_MACHINE_ARCH"-unknown-libertybsd"$UNAME_RELEASE" - exit ;; - *:MidnightBSD:*:*) - echo "$UNAME_MACHINE"-unknown-midnightbsd"$UNAME_RELEASE" - exit ;; - *:ekkoBSD:*:*) - echo "$UNAME_MACHINE"-unknown-ekkobsd"$UNAME_RELEASE" - exit ;; - *:SolidBSD:*:*) - echo "$UNAME_MACHINE"-unknown-solidbsd"$UNAME_RELEASE" - exit ;; - macppc:MirBSD:*:*) - echo powerpc-unknown-mirbsd"$UNAME_RELEASE" - exit ;; - *:MirBSD:*:*) - echo "$UNAME_MACHINE"-unknown-mirbsd"$UNAME_RELEASE" - exit ;; - *:Sortix:*:*) - echo "$UNAME_MACHINE"-unknown-sortix - exit ;; - *:Redox:*:*) - echo "$UNAME_MACHINE"-unknown-redox - exit ;; - mips:OSF1:*.*) - echo mips-dec-osf1 - exit ;; - alpha:OSF1:*:*) - case $UNAME_RELEASE in - *4.0) - UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'` - ;; - *5.*) - UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $4}'` - ;; - esac - # According to Compaq, /usr/sbin/psrinfo has been available on - # OSF/1 and Tru64 systems produced since 1995. I hope that - # covers most systems running today. This code pipes the CPU - # types through head -n 1, so we only detect the type of CPU 0. - ALPHA_CPU_TYPE=`/usr/sbin/psrinfo -v | sed -n -e 's/^ The alpha \(.*\) processor.*$/\1/p' | head -n 1` - case "$ALPHA_CPU_TYPE" in - "EV4 (21064)") - UNAME_MACHINE=alpha ;; - "EV4.5 (21064)") - UNAME_MACHINE=alpha ;; - "LCA4 (21066/21068)") - UNAME_MACHINE=alpha ;; - "EV5 (21164)") - UNAME_MACHINE=alphaev5 ;; - "EV5.6 (21164A)") - UNAME_MACHINE=alphaev56 ;; - "EV5.6 (21164PC)") - UNAME_MACHINE=alphapca56 ;; - "EV5.7 (21164PC)") - UNAME_MACHINE=alphapca57 ;; - "EV6 (21264)") - UNAME_MACHINE=alphaev6 ;; - "EV6.7 (21264A)") - UNAME_MACHINE=alphaev67 ;; - "EV6.8CB (21264C)") - UNAME_MACHINE=alphaev68 ;; - "EV6.8AL (21264B)") - UNAME_MACHINE=alphaev68 ;; - "EV6.8CX (21264D)") - UNAME_MACHINE=alphaev68 ;; - "EV6.9A (21264/EV69A)") - UNAME_MACHINE=alphaev69 ;; - "EV7 (21364)") - UNAME_MACHINE=alphaev7 ;; - "EV7.9 (21364A)") - UNAME_MACHINE=alphaev79 ;; - esac - # A Pn.n version is a patched version. - # A Vn.n version is a released version. - # A Tn.n version is a released field test version. - # A Xn.n version is an unreleased experimental baselevel. - # 1.2 uses "1.2" for uname -r. - echo "$UNAME_MACHINE"-dec-osf"`echo "$UNAME_RELEASE" | sed -e 's/^[PVTX]//' | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz`" - # Reset EXIT trap before exiting to avoid spurious non-zero exit code. - exitcode=$? - trap '' 0 - exit $exitcode ;; - Amiga*:UNIX_System_V:4.0:*) - echo m68k-unknown-sysv4 - exit ;; - *:[Aa]miga[Oo][Ss]:*:*) - echo "$UNAME_MACHINE"-unknown-amigaos - exit ;; - *:[Mm]orph[Oo][Ss]:*:*) - echo "$UNAME_MACHINE"-unknown-morphos - exit ;; - *:OS/390:*:*) - echo i370-ibm-openedition - exit ;; - *:z/VM:*:*) - echo s390-ibm-zvmoe - exit ;; - *:OS400:*:*) - echo powerpc-ibm-os400 - exit ;; - arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*) - echo arm-acorn-riscix"$UNAME_RELEASE" - exit ;; - arm*:riscos:*:*|arm*:RISCOS:*:*) - echo arm-unknown-riscos - exit ;; - SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*) - echo hppa1.1-hitachi-hiuxmpp - exit ;; - Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*) - # akee@wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE. - if test "`(/bin/universe) 2>/dev/null`" = att ; then - echo pyramid-pyramid-sysv3 - else - echo pyramid-pyramid-bsd - fi - exit ;; - NILE*:*:*:dcosx) - echo pyramid-pyramid-svr4 - exit ;; - DRS?6000:unix:4.0:6*) - echo sparc-icl-nx6 - exit ;; - DRS?6000:UNIX_SV:4.2*:7* | DRS?6000:isis:4.2*:7*) - case `/usr/bin/uname -p` in - sparc) echo sparc-icl-nx7; exit ;; - esac ;; - s390x:SunOS:*:*) - echo "$UNAME_MACHINE"-ibm-solaris2"`echo "$UNAME_RELEASE" | sed -e 's/[^.]*//'`" - exit ;; - sun4H:SunOS:5.*:*) - echo sparc-hal-solaris2"`echo "$UNAME_RELEASE"|sed -e 's/[^.]*//'`" - exit ;; - sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*) - set_cc_for_build - SUN_ARCH=sparc - # If there is a compiler, see if it is configured for 64-bit objects. - # Note that the Sun cc does not turn __LP64__ into 1 like gcc does. - # This test works for both compilers. - if [ "$CC_FOR_BUILD" != no_compiler_found ]; then - if (echo '#ifdef __sparcv9'; echo IS_64BIT_ARCH; echo '#endif') | \ - (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \ - grep IS_64BIT_ARCH >/dev/null - then - SUN_ARCH=sparcv9 - fi - fi - echo "$SUN_ARCH"-sun-solaris2"`echo "$UNAME_RELEASE"|sed -e 's/[^.]*//'`" - exit ;; - i86pc:AuroraUX:5.*:* | i86xen:AuroraUX:5.*:*) - echo i386-pc-auroraux"$UNAME_RELEASE" - exit ;; - i86pc:SunOS:5.*:* | i86xen:SunOS:5.*:*) - set_cc_for_build - SUN_ARCH=i386 - # If there is a compiler, see if it is configured for 64-bit objects. - # Note that the Sun cc does not turn __LP64__ into 1 like gcc does. - # This test works for both compilers. - if [ "$CC_FOR_BUILD" != no_compiler_found ]; then - if (echo '#ifdef __amd64'; echo IS_64BIT_ARCH; echo '#endif') | \ - (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \ - grep IS_64BIT_ARCH >/dev/null - then - SUN_ARCH=x86_64 - fi - fi - echo "$SUN_ARCH"-pc-solaris2"`echo "$UNAME_RELEASE"|sed -e 's/[^.]*//'`" - exit ;; - sun4*:SunOS:6*:*) - # According to config.sub, this is the proper way to canonicalize - # SunOS6. Hard to guess exactly what SunOS6 will be like, but - # it's likely to be more like Solaris than SunOS4. - echo sparc-sun-solaris3"`echo "$UNAME_RELEASE"|sed -e 's/[^.]*//'`" - exit ;; - sun4*:SunOS:*:*) - case "`/usr/bin/arch -k`" in - Series*|S4*) - UNAME_RELEASE=`uname -v` - ;; - esac - # Japanese Language versions have a version number like `4.1.3-JL'. - echo sparc-sun-sunos"`echo "$UNAME_RELEASE"|sed -e 's/-/_/'`" - exit ;; - sun3*:SunOS:*:*) - echo m68k-sun-sunos"$UNAME_RELEASE" - exit ;; - sun*:*:4.2BSD:*) - UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null` - test "x$UNAME_RELEASE" = x && UNAME_RELEASE=3 - case "`/bin/arch`" in - sun3) - echo m68k-sun-sunos"$UNAME_RELEASE" - ;; - sun4) - echo sparc-sun-sunos"$UNAME_RELEASE" - ;; - esac - exit ;; - aushp:SunOS:*:*) - echo sparc-auspex-sunos"$UNAME_RELEASE" - exit ;; - # The situation for MiNT is a little confusing. The machine name - # can be virtually everything (everything which is not - # "atarist" or "atariste" at least should have a processor - # > m68000). The system name ranges from "MiNT" over "FreeMiNT" - # to the lowercase version "mint" (or "freemint"). Finally - # the system name "TOS" denotes a system which is actually not - # MiNT. But MiNT is downward compatible to TOS, so this should - # be no problem. - atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*) - echo m68k-atari-mint"$UNAME_RELEASE" - exit ;; - atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*) - echo m68k-atari-mint"$UNAME_RELEASE" - exit ;; - *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*) - echo m68k-atari-mint"$UNAME_RELEASE" - exit ;; - milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*) - echo m68k-milan-mint"$UNAME_RELEASE" - exit ;; - hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*) - echo m68k-hades-mint"$UNAME_RELEASE" - exit ;; - *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*) - echo m68k-unknown-mint"$UNAME_RELEASE" - exit ;; - m68k:machten:*:*) - echo m68k-apple-machten"$UNAME_RELEASE" - exit ;; - powerpc:machten:*:*) - echo powerpc-apple-machten"$UNAME_RELEASE" - exit ;; - RISC*:Mach:*:*) - echo mips-dec-mach_bsd4.3 - exit ;; - RISC*:ULTRIX:*:*) - echo mips-dec-ultrix"$UNAME_RELEASE" - exit ;; - VAX*:ULTRIX*:*:*) - echo vax-dec-ultrix"$UNAME_RELEASE" - exit ;; - 2020:CLIX:*:* | 2430:CLIX:*:*) - echo clipper-intergraph-clix"$UNAME_RELEASE" - exit ;; - mips:*:*:UMIPS | mips:*:*:RISCos) - set_cc_for_build - sed 's/^ //' << EOF > "$dummy.c" -#ifdef __cplusplus -#include /* for printf() prototype */ - int main (int argc, char *argv[]) { -#else - int main (argc, argv) int argc; char *argv[]; { -#endif - #if defined (host_mips) && defined (MIPSEB) - #if defined (SYSTYPE_SYSV) - printf ("mips-mips-riscos%ssysv\\n", argv[1]); exit (0); - #endif - #if defined (SYSTYPE_SVR4) - printf ("mips-mips-riscos%ssvr4\\n", argv[1]); exit (0); - #endif - #if defined (SYSTYPE_BSD43) || defined(SYSTYPE_BSD) - printf ("mips-mips-riscos%sbsd\\n", argv[1]); exit (0); - #endif - #endif - exit (-1); - } -EOF - $CC_FOR_BUILD -o "$dummy" "$dummy.c" && - dummyarg=`echo "$UNAME_RELEASE" | sed -n 's/\([0-9]*\).*/\1/p'` && - SYSTEM_NAME=`"$dummy" "$dummyarg"` && - { echo "$SYSTEM_NAME"; exit; } - echo mips-mips-riscos"$UNAME_RELEASE" - exit ;; - Motorola:PowerMAX_OS:*:*) - echo powerpc-motorola-powermax - exit ;; - Motorola:*:4.3:PL8-*) - echo powerpc-harris-powermax - exit ;; - Night_Hawk:*:*:PowerMAX_OS | Synergy:PowerMAX_OS:*:*) - echo powerpc-harris-powermax - exit ;; - Night_Hawk:Power_UNIX:*:*) - echo powerpc-harris-powerunix - exit ;; - m88k:CX/UX:7*:*) - echo m88k-harris-cxux7 - exit ;; - m88k:*:4*:R4*) - echo m88k-motorola-sysv4 - exit ;; - m88k:*:3*:R3*) - echo m88k-motorola-sysv3 - exit ;; - AViiON:dgux:*:*) - # DG/UX returns AViiON for all architectures - UNAME_PROCESSOR=`/usr/bin/uname -p` - if [ "$UNAME_PROCESSOR" = mc88100 ] || [ "$UNAME_PROCESSOR" = mc88110 ] - then - if [ "$TARGET_BINARY_INTERFACE"x = m88kdguxelfx ] || \ - [ "$TARGET_BINARY_INTERFACE"x = x ] - then - echo m88k-dg-dgux"$UNAME_RELEASE" - else - echo m88k-dg-dguxbcs"$UNAME_RELEASE" - fi - else - echo i586-dg-dgux"$UNAME_RELEASE" - fi - exit ;; - M88*:DolphinOS:*:*) # DolphinOS (SVR3) - echo m88k-dolphin-sysv3 - exit ;; - M88*:*:R3*:*) - # Delta 88k system running SVR3 - echo m88k-motorola-sysv3 - exit ;; - XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3) - echo m88k-tektronix-sysv3 - exit ;; - Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD) - echo m68k-tektronix-bsd - exit ;; - *:IRIX*:*:*) - echo mips-sgi-irix"`echo "$UNAME_RELEASE"|sed -e 's/-/_/g'`" - exit ;; - ????????:AIX?:[12].1:2) # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX. - echo romp-ibm-aix # uname -m gives an 8 hex-code CPU id - exit ;; # Note that: echo "'`uname -s`'" gives 'AIX ' - i*86:AIX:*:*) - echo i386-ibm-aix - exit ;; - ia64:AIX:*:*) - if [ -x /usr/bin/oslevel ] ; then - IBM_REV=`/usr/bin/oslevel` - else - IBM_REV="$UNAME_VERSION.$UNAME_RELEASE" - fi - echo "$UNAME_MACHINE"-ibm-aix"$IBM_REV" - exit ;; - *:AIX:2:3) - if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then - set_cc_for_build - sed 's/^ //' << EOF > "$dummy.c" - #include - - main() - { - if (!__power_pc()) - exit(1); - puts("powerpc-ibm-aix3.2.5"); - exit(0); - } -EOF - if $CC_FOR_BUILD -o "$dummy" "$dummy.c" && SYSTEM_NAME=`"$dummy"` - then - echo "$SYSTEM_NAME" - else - echo rs6000-ibm-aix3.2.5 - fi - elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then - echo rs6000-ibm-aix3.2.4 - else - echo rs6000-ibm-aix3.2 - fi - exit ;; - *:AIX:*:[4567]) - IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'` - if /usr/sbin/lsattr -El "$IBM_CPU_ID" | grep ' POWER' >/dev/null 2>&1; then - IBM_ARCH=rs6000 - else - IBM_ARCH=powerpc - fi - if [ -x /usr/bin/lslpp ] ; then - IBM_REV=`/usr/bin/lslpp -Lqc bos.rte.libc | - awk -F: '{ print $3 }' | sed s/[0-9]*$/0/` - else - IBM_REV="$UNAME_VERSION.$UNAME_RELEASE" - fi - echo "$IBM_ARCH"-ibm-aix"$IBM_REV" - exit ;; - *:AIX:*:*) - echo rs6000-ibm-aix - exit ;; - ibmrt:4.4BSD:*|romp-ibm:4.4BSD:*) - echo romp-ibm-bsd4.4 - exit ;; - ibmrt:*BSD:*|romp-ibm:BSD:*) # covers RT/PC BSD and - echo romp-ibm-bsd"$UNAME_RELEASE" # 4.3 with uname added to - exit ;; # report: romp-ibm BSD 4.3 - *:BOSX:*:*) - echo rs6000-bull-bosx - exit ;; - DPX/2?00:B.O.S.:*:*) - echo m68k-bull-sysv3 - exit ;; - 9000/[34]??:4.3bsd:1.*:*) - echo m68k-hp-bsd - exit ;; - hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*) - echo m68k-hp-bsd4.4 - exit ;; - 9000/[34678]??:HP-UX:*:*) - HPUX_REV=`echo "$UNAME_RELEASE"|sed -e 's/[^.]*.[0B]*//'` - case "$UNAME_MACHINE" in - 9000/31?) HP_ARCH=m68000 ;; - 9000/[34]??) HP_ARCH=m68k ;; - 9000/[678][0-9][0-9]) - if [ -x /usr/bin/getconf ]; then - sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null` - sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null` - case "$sc_cpu_version" in - 523) HP_ARCH=hppa1.0 ;; # CPU_PA_RISC1_0 - 528) HP_ARCH=hppa1.1 ;; # CPU_PA_RISC1_1 - 532) # CPU_PA_RISC2_0 - case "$sc_kernel_bits" in - 32) HP_ARCH=hppa2.0n ;; - 64) HP_ARCH=hppa2.0w ;; - '') HP_ARCH=hppa2.0 ;; # HP-UX 10.20 - esac ;; - esac - fi - if [ "$HP_ARCH" = "" ]; then - set_cc_for_build - sed 's/^ //' << EOF > "$dummy.c" - - #define _HPUX_SOURCE - #include - #include - - int main () - { - #if defined(_SC_KERNEL_BITS) - long bits = sysconf(_SC_KERNEL_BITS); - #endif - long cpu = sysconf (_SC_CPU_VERSION); - - switch (cpu) - { - case CPU_PA_RISC1_0: puts ("hppa1.0"); break; - case CPU_PA_RISC1_1: puts ("hppa1.1"); break; - case CPU_PA_RISC2_0: - #if defined(_SC_KERNEL_BITS) - switch (bits) - { - case 64: puts ("hppa2.0w"); break; - case 32: puts ("hppa2.0n"); break; - default: puts ("hppa2.0"); break; - } break; - #else /* !defined(_SC_KERNEL_BITS) */ - puts ("hppa2.0"); break; - #endif - default: puts ("hppa1.0"); break; - } - exit (0); - } -EOF - (CCOPTS="" $CC_FOR_BUILD -o "$dummy" "$dummy.c" 2>/dev/null) && HP_ARCH=`"$dummy"` - test -z "$HP_ARCH" && HP_ARCH=hppa - fi ;; - esac - if [ "$HP_ARCH" = hppa2.0w ] - then - set_cc_for_build - - # hppa2.0w-hp-hpux* has a 64-bit kernel and a compiler generating - # 32-bit code. hppa64-hp-hpux* has the same kernel and a compiler - # generating 64-bit code. GNU and HP use different nomenclature: - # - # $ CC_FOR_BUILD=cc ./config.guess - # => hppa2.0w-hp-hpux11.23 - # $ CC_FOR_BUILD="cc +DA2.0w" ./config.guess - # => hppa64-hp-hpux11.23 - - if echo __LP64__ | (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | - grep -q __LP64__ - then - HP_ARCH=hppa2.0w - else - HP_ARCH=hppa64 - fi - fi - echo "$HP_ARCH"-hp-hpux"$HPUX_REV" - exit ;; - ia64:HP-UX:*:*) - HPUX_REV=`echo "$UNAME_RELEASE"|sed -e 's/[^.]*.[0B]*//'` - echo ia64-hp-hpux"$HPUX_REV" - exit ;; - 3050*:HI-UX:*:*) - set_cc_for_build - sed 's/^ //' << EOF > "$dummy.c" - #include - int - main () - { - long cpu = sysconf (_SC_CPU_VERSION); - /* The order matters, because CPU_IS_HP_MC68K erroneously returns - true for CPU_PA_RISC1_0. CPU_IS_PA_RISC returns correct - results, however. */ - if (CPU_IS_PA_RISC (cpu)) - { - switch (cpu) - { - case CPU_PA_RISC1_0: puts ("hppa1.0-hitachi-hiuxwe2"); break; - case CPU_PA_RISC1_1: puts ("hppa1.1-hitachi-hiuxwe2"); break; - case CPU_PA_RISC2_0: puts ("hppa2.0-hitachi-hiuxwe2"); break; - default: puts ("hppa-hitachi-hiuxwe2"); break; - } - } - else if (CPU_IS_HP_MC68K (cpu)) - puts ("m68k-hitachi-hiuxwe2"); - else puts ("unknown-hitachi-hiuxwe2"); - exit (0); - } -EOF - $CC_FOR_BUILD -o "$dummy" "$dummy.c" && SYSTEM_NAME=`"$dummy"` && - { echo "$SYSTEM_NAME"; exit; } - echo unknown-hitachi-hiuxwe2 - exit ;; - 9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:*) - echo hppa1.1-hp-bsd - exit ;; - 9000/8??:4.3bsd:*:*) - echo hppa1.0-hp-bsd - exit ;; - *9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*) - echo hppa1.0-hp-mpeix - exit ;; - hp7??:OSF1:*:* | hp8?[79]:OSF1:*:*) - echo hppa1.1-hp-osf - exit ;; - hp8??:OSF1:*:*) - echo hppa1.0-hp-osf - exit ;; - i*86:OSF1:*:*) - if [ -x /usr/sbin/sysversion ] ; then - echo "$UNAME_MACHINE"-unknown-osf1mk - else - echo "$UNAME_MACHINE"-unknown-osf1 - fi - exit ;; - parisc*:Lites*:*:*) - echo hppa1.1-hp-lites - exit ;; - C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*) - echo c1-convex-bsd - exit ;; - C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*) - if getsysinfo -f scalar_acc - then echo c32-convex-bsd - else echo c2-convex-bsd - fi - exit ;; - C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*) - echo c34-convex-bsd - exit ;; - C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*) - echo c38-convex-bsd - exit ;; - C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*) - echo c4-convex-bsd - exit ;; - CRAY*Y-MP:*:*:*) - echo ymp-cray-unicos"$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/' - exit ;; - CRAY*[A-Z]90:*:*:*) - echo "$UNAME_MACHINE"-cray-unicos"$UNAME_RELEASE" \ - | sed -e 's/CRAY.*\([A-Z]90\)/\1/' \ - -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ \ - -e 's/\.[^.]*$/.X/' - exit ;; - CRAY*TS:*:*:*) - echo t90-cray-unicos"$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/' - exit ;; - CRAY*T3E:*:*:*) - echo alphaev5-cray-unicosmk"$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/' - exit ;; - CRAY*SV1:*:*:*) - echo sv1-cray-unicos"$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/' - exit ;; - *:UNICOS/mp:*:*) - echo craynv-cray-unicosmp"$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/' - exit ;; - F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*) - FUJITSU_PROC=`uname -m | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz` - FUJITSU_SYS=`uname -p | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz | sed -e 's/\///'` - FUJITSU_REL=`echo "$UNAME_RELEASE" | sed -e 's/ /_/'` - echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}" - exit ;; - 5000:UNIX_System_V:4.*:*) - FUJITSU_SYS=`uname -p | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz | sed -e 's/\///'` - FUJITSU_REL=`echo "$UNAME_RELEASE" | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz | sed -e 's/ /_/'` - echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}" - exit ;; - i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*) - echo "$UNAME_MACHINE"-pc-bsdi"$UNAME_RELEASE" - exit ;; - sparc*:BSD/OS:*:*) - echo sparc-unknown-bsdi"$UNAME_RELEASE" - exit ;; - *:BSD/OS:*:*) - echo "$UNAME_MACHINE"-unknown-bsdi"$UNAME_RELEASE" - exit ;; - arm:FreeBSD:*:*) - UNAME_PROCESSOR=`uname -p` - set_cc_for_build - if echo __ARM_PCS_VFP | $CC_FOR_BUILD -E - 2>/dev/null \ - | grep -q __ARM_PCS_VFP - then - echo "${UNAME_PROCESSOR}"-unknown-freebsd"`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`"-gnueabi - else - echo "${UNAME_PROCESSOR}"-unknown-freebsd"`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`"-gnueabihf - fi - exit ;; - *:FreeBSD:*:*) - UNAME_PROCESSOR=`/usr/bin/uname -p` - case "$UNAME_PROCESSOR" in - amd64) - UNAME_PROCESSOR=x86_64 ;; - i386) - UNAME_PROCESSOR=i586 ;; - esac - echo "$UNAME_PROCESSOR"-unknown-freebsd"`echo "$UNAME_RELEASE"|sed -e 's/[-(].*//'`" - exit ;; - i*:CYGWIN*:*) - echo "$UNAME_MACHINE"-pc-cygwin - exit ;; - *:MINGW64*:*) - echo "$UNAME_MACHINE"-pc-mingw64 - exit ;; - *:MINGW*:*) - echo "$UNAME_MACHINE"-pc-mingw32 - exit ;; - *:MSYS*:*) - echo "$UNAME_MACHINE"-pc-msys - exit ;; - i*:PW*:*) - echo "$UNAME_MACHINE"-pc-pw32 - exit ;; - *:Interix*:*) - case "$UNAME_MACHINE" in - x86) - echo i586-pc-interix"$UNAME_RELEASE" - exit ;; - authenticamd | genuineintel | EM64T) - echo x86_64-unknown-interix"$UNAME_RELEASE" - exit ;; - IA64) - echo ia64-unknown-interix"$UNAME_RELEASE" - exit ;; - esac ;; - i*:UWIN*:*) - echo "$UNAME_MACHINE"-pc-uwin - exit ;; - amd64:CYGWIN*:*:* | x86_64:CYGWIN*:*:*) - echo x86_64-pc-cygwin - exit ;; - prep*:SunOS:5.*:*) - echo powerpcle-unknown-solaris2"`echo "$UNAME_RELEASE"|sed -e 's/[^.]*//'`" - exit ;; - *:GNU:*:*) - # the GNU system - echo "`echo "$UNAME_MACHINE"|sed -e 's,[-/].*$,,'`-unknown-$LIBC`echo "$UNAME_RELEASE"|sed -e 's,/.*$,,'`" - exit ;; - *:GNU/*:*:*) - # other systems with GNU libc and userland - echo "$UNAME_MACHINE-unknown-`echo "$UNAME_SYSTEM" | sed 's,^[^/]*/,,' | tr "[:upper:]" "[:lower:]"``echo "$UNAME_RELEASE"|sed -e 's/[-(].*//'`-$LIBC" - exit ;; - *:Minix:*:*) - echo "$UNAME_MACHINE"-unknown-minix - exit ;; - aarch64:Linux:*:*) - echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" - exit ;; - aarch64_be:Linux:*:*) - UNAME_MACHINE=aarch64_be - echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" - exit ;; - alpha:Linux:*:*) - case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in - EV5) UNAME_MACHINE=alphaev5 ;; - EV56) UNAME_MACHINE=alphaev56 ;; - PCA56) UNAME_MACHINE=alphapca56 ;; - PCA57) UNAME_MACHINE=alphapca56 ;; - EV6) UNAME_MACHINE=alphaev6 ;; - EV67) UNAME_MACHINE=alphaev67 ;; - EV68*) UNAME_MACHINE=alphaev68 ;; - esac - objdump --private-headers /bin/sh | grep -q ld.so.1 - if test "$?" = 0 ; then LIBC=gnulibc1 ; fi - echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" - exit ;; - arc:Linux:*:* | arceb:Linux:*:*) - echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" - exit ;; - arm*:Linux:*:*) - set_cc_for_build - if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \ - | grep -q __ARM_EABI__ - then - echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" - else - if echo __ARM_PCS_VFP | $CC_FOR_BUILD -E - 2>/dev/null \ - | grep -q __ARM_PCS_VFP - then - echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"eabi - else - echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"eabihf - fi - fi - exit ;; - avr32*:Linux:*:*) - echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" - exit ;; - cris:Linux:*:*) - echo "$UNAME_MACHINE"-axis-linux-"$LIBC" - exit ;; - crisv32:Linux:*:*) - echo "$UNAME_MACHINE"-axis-linux-"$LIBC" - exit ;; - e2k:Linux:*:*) - echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" - exit ;; - frv:Linux:*:*) - echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" - exit ;; - hexagon:Linux:*:*) - echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" - exit ;; - i*86:Linux:*:*) - echo "$UNAME_MACHINE"-pc-linux-"$LIBC" - exit ;; - ia64:Linux:*:*) - echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" - exit ;; - k1om:Linux:*:*) - echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" - exit ;; - m32r*:Linux:*:*) - echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" - exit ;; - m68*:Linux:*:*) - echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" - exit ;; - mips:Linux:*:* | mips64:Linux:*:*) - set_cc_for_build - sed 's/^ //' << EOF > "$dummy.c" - #undef CPU - #undef ${UNAME_MACHINE} - #undef ${UNAME_MACHINE}el - #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL) - CPU=${UNAME_MACHINE}el - #else - #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB) - CPU=${UNAME_MACHINE} - #else - CPU= - #endif - #endif -EOF - eval "`$CC_FOR_BUILD -E "$dummy.c" 2>/dev/null | grep '^CPU'`" - test "x$CPU" != x && { echo "$CPU-unknown-linux-$LIBC"; exit; } - ;; - mips64el:Linux:*:*) - echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" - exit ;; - openrisc*:Linux:*:*) - echo or1k-unknown-linux-"$LIBC" - exit ;; - or32:Linux:*:* | or1k*:Linux:*:*) - echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" - exit ;; - padre:Linux:*:*) - echo sparc-unknown-linux-"$LIBC" - exit ;; - parisc64:Linux:*:* | hppa64:Linux:*:*) - echo hppa64-unknown-linux-"$LIBC" - exit ;; - parisc:Linux:*:* | hppa:Linux:*:*) - # Look for CPU level - case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in - PA7*) echo hppa1.1-unknown-linux-"$LIBC" ;; - PA8*) echo hppa2.0-unknown-linux-"$LIBC" ;; - *) echo hppa-unknown-linux-"$LIBC" ;; - esac - exit ;; - ppc64:Linux:*:*) - echo powerpc64-unknown-linux-"$LIBC" - exit ;; - ppc:Linux:*:*) - echo powerpc-unknown-linux-"$LIBC" - exit ;; - ppc64le:Linux:*:*) - echo powerpc64le-unknown-linux-"$LIBC" - exit ;; - ppcle:Linux:*:*) - echo powerpcle-unknown-linux-"$LIBC" - exit ;; - riscv32:Linux:*:* | riscv64:Linux:*:*) - echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" - exit ;; - s390:Linux:*:* | s390x:Linux:*:*) - echo "$UNAME_MACHINE"-ibm-linux-"$LIBC" - exit ;; - sh64*:Linux:*:*) - echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" - exit ;; - sh*:Linux:*:*) - echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" - exit ;; - sparc:Linux:*:* | sparc64:Linux:*:*) - echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" - exit ;; - tile*:Linux:*:*) - echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" - exit ;; - vax:Linux:*:*) - echo "$UNAME_MACHINE"-dec-linux-"$LIBC" - exit ;; - x86_64:Linux:*:*) - echo "$UNAME_MACHINE"-pc-linux-"$LIBC" - exit ;; - xtensa*:Linux:*:*) - echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" - exit ;; - i*86:DYNIX/ptx:4*:*) - # ptx 4.0 does uname -s correctly, with DYNIX/ptx in there. - # earlier versions are messed up and put the nodename in both - # sysname and nodename. - echo i386-sequent-sysv4 - exit ;; - i*86:UNIX_SV:4.2MP:2.*) - # Unixware is an offshoot of SVR4, but it has its own version - # number series starting with 2... - # I am not positive that other SVR4 systems won't match this, - # I just have to hope. -- rms. - # Use sysv4.2uw... so that sysv4* matches it. - echo "$UNAME_MACHINE"-pc-sysv4.2uw"$UNAME_VERSION" - exit ;; - i*86:OS/2:*:*) - # If we were able to find `uname', then EMX Unix compatibility - # is probably installed. - echo "$UNAME_MACHINE"-pc-os2-emx - exit ;; - i*86:XTS-300:*:STOP) - echo "$UNAME_MACHINE"-unknown-stop - exit ;; - i*86:atheos:*:*) - echo "$UNAME_MACHINE"-unknown-atheos - exit ;; - i*86:syllable:*:*) - echo "$UNAME_MACHINE"-pc-syllable - exit ;; - i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.[02]*:*) - echo i386-unknown-lynxos"$UNAME_RELEASE" - exit ;; - i*86:*DOS:*:*) - echo "$UNAME_MACHINE"-pc-msdosdjgpp - exit ;; - i*86:*:4.*:*) - UNAME_REL=`echo "$UNAME_RELEASE" | sed 's/\/MP$//'` - if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then - echo "$UNAME_MACHINE"-univel-sysv"$UNAME_REL" - else - echo "$UNAME_MACHINE"-pc-sysv"$UNAME_REL" - fi - exit ;; - i*86:*:5:[678]*) - # UnixWare 7.x, OpenUNIX and OpenServer 6. - case `/bin/uname -X | grep "^Machine"` in - *486*) UNAME_MACHINE=i486 ;; - *Pentium) UNAME_MACHINE=i586 ;; - *Pent*|*Celeron) UNAME_MACHINE=i686 ;; - esac - echo "$UNAME_MACHINE-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}{$UNAME_VERSION}" - exit ;; - i*86:*:3.2:*) - if test -f /usr/options/cb.name; then - UNAME_REL=`sed -n 's/.*Version //p' /dev/null >/dev/null ; then - UNAME_REL=`(/bin/uname -X|grep Release|sed -e 's/.*= //')` - (/bin/uname -X|grep i80486 >/dev/null) && UNAME_MACHINE=i486 - (/bin/uname -X|grep '^Machine.*Pentium' >/dev/null) \ - && UNAME_MACHINE=i586 - (/bin/uname -X|grep '^Machine.*Pent *II' >/dev/null) \ - && UNAME_MACHINE=i686 - (/bin/uname -X|grep '^Machine.*Pentium Pro' >/dev/null) \ - && UNAME_MACHINE=i686 - echo "$UNAME_MACHINE"-pc-sco"$UNAME_REL" - else - echo "$UNAME_MACHINE"-pc-sysv32 - fi - exit ;; - pc:*:*:*) - # Left here for compatibility: - # uname -m prints for DJGPP always 'pc', but it prints nothing about - # the processor, so we play safe by assuming i586. - # Note: whatever this is, it MUST be the same as what config.sub - # prints for the "djgpp" host, or else GDB configure will decide that - # this is a cross-build. - echo i586-pc-msdosdjgpp - exit ;; - Intel:Mach:3*:*) - echo i386-pc-mach3 - exit ;; - paragon:*:*:*) - echo i860-intel-osf1 - exit ;; - i860:*:4.*:*) # i860-SVR4 - if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then - echo i860-stardent-sysv"$UNAME_RELEASE" # Stardent Vistra i860-SVR4 - else # Add other i860-SVR4 vendors below as they are discovered. - echo i860-unknown-sysv"$UNAME_RELEASE" # Unknown i860-SVR4 - fi - exit ;; - mini*:CTIX:SYS*5:*) - # "miniframe" - echo m68010-convergent-sysv - exit ;; - mc68k:UNIX:SYSTEM5:3.51m) - echo m68k-convergent-sysv - exit ;; - M680?0:D-NIX:5.3:*) - echo m68k-diab-dnix - exit ;; - M68*:*:R3V[5678]*:*) - test -r /sysV68 && { echo 'm68k-motorola-sysv'; exit; } ;; - 3[345]??:*:4.0:3.0 | 3[34]??A:*:4.0:3.0 | 3[34]??,*:*:4.0:3.0 | 3[34]??/*:*:4.0:3.0 | 4400:*:4.0:3.0 | 4850:*:4.0:3.0 | SKA40:*:4.0:3.0 | SDS2:*:4.0:3.0 | SHG2:*:4.0:3.0 | S7501*:*:4.0:3.0) - OS_REL='' - test -r /etc/.relid \ - && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid` - /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ - && { echo i486-ncr-sysv4.3"$OS_REL"; exit; } - /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \ - && { echo i586-ncr-sysv4.3"$OS_REL"; exit; } ;; - 3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*) - /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ - && { echo i486-ncr-sysv4; exit; } ;; - NCR*:*:4.2:* | MPRAS*:*:4.2:*) - OS_REL='.3' - test -r /etc/.relid \ - && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid` - /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ - && { echo i486-ncr-sysv4.3"$OS_REL"; exit; } - /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \ - && { echo i586-ncr-sysv4.3"$OS_REL"; exit; } - /bin/uname -p 2>/dev/null | /bin/grep pteron >/dev/null \ - && { echo i586-ncr-sysv4.3"$OS_REL"; exit; } ;; - m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*) - echo m68k-unknown-lynxos"$UNAME_RELEASE" - exit ;; - mc68030:UNIX_System_V:4.*:*) - echo m68k-atari-sysv4 - exit ;; - TSUNAMI:LynxOS:2.*:*) - echo sparc-unknown-lynxos"$UNAME_RELEASE" - exit ;; - rs6000:LynxOS:2.*:*) - echo rs6000-unknown-lynxos"$UNAME_RELEASE" - exit ;; - PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.[02]*:*) - echo powerpc-unknown-lynxos"$UNAME_RELEASE" - exit ;; - SM[BE]S:UNIX_SV:*:*) - echo mips-dde-sysv"$UNAME_RELEASE" - exit ;; - RM*:ReliantUNIX-*:*:*) - echo mips-sni-sysv4 - exit ;; - RM*:SINIX-*:*:*) - echo mips-sni-sysv4 - exit ;; - *:SINIX-*:*:*) - if uname -p 2>/dev/null >/dev/null ; then - UNAME_MACHINE=`(uname -p) 2>/dev/null` - echo "$UNAME_MACHINE"-sni-sysv4 - else - echo ns32k-sni-sysv - fi - exit ;; - PENTIUM:*:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort - # says - echo i586-unisys-sysv4 - exit ;; - *:UNIX_System_V:4*:FTX*) - # From Gerald Hewes . - # How about differentiating between stratus architectures? -djm - echo hppa1.1-stratus-sysv4 - exit ;; - *:*:*:FTX*) - # From seanf@swdc.stratus.com. - echo i860-stratus-sysv4 - exit ;; - i*86:VOS:*:*) - # From Paul.Green@stratus.com. - echo "$UNAME_MACHINE"-stratus-vos - exit ;; - *:VOS:*:*) - # From Paul.Green@stratus.com. - echo hppa1.1-stratus-vos - exit ;; - mc68*:A/UX:*:*) - echo m68k-apple-aux"$UNAME_RELEASE" - exit ;; - news*:NEWS-OS:6*:*) - echo mips-sony-newsos6 - exit ;; - R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*) - if [ -d /usr/nec ]; then - echo mips-nec-sysv"$UNAME_RELEASE" - else - echo mips-unknown-sysv"$UNAME_RELEASE" - fi - exit ;; - BeBox:BeOS:*:*) # BeOS running on hardware made by Be, PPC only. - echo powerpc-be-beos - exit ;; - BeMac:BeOS:*:*) # BeOS running on Mac or Mac clone, PPC only. - echo powerpc-apple-beos - exit ;; - BePC:BeOS:*:*) # BeOS running on Intel PC compatible. - echo i586-pc-beos - exit ;; - BePC:Haiku:*:*) # Haiku running on Intel PC compatible. - echo i586-pc-haiku - exit ;; - x86_64:Haiku:*:*) - echo x86_64-unknown-haiku - exit ;; - SX-4:SUPER-UX:*:*) - echo sx4-nec-superux"$UNAME_RELEASE" - exit ;; - SX-5:SUPER-UX:*:*) - echo sx5-nec-superux"$UNAME_RELEASE" - exit ;; - SX-6:SUPER-UX:*:*) - echo sx6-nec-superux"$UNAME_RELEASE" - exit ;; - SX-7:SUPER-UX:*:*) - echo sx7-nec-superux"$UNAME_RELEASE" - exit ;; - SX-8:SUPER-UX:*:*) - echo sx8-nec-superux"$UNAME_RELEASE" - exit ;; - SX-8R:SUPER-UX:*:*) - echo sx8r-nec-superux"$UNAME_RELEASE" - exit ;; - SX-ACE:SUPER-UX:*:*) - echo sxace-nec-superux"$UNAME_RELEASE" - exit ;; - Power*:Rhapsody:*:*) - echo powerpc-apple-rhapsody"$UNAME_RELEASE" - exit ;; - *:Rhapsody:*:*) - echo "$UNAME_MACHINE"-apple-rhapsody"$UNAME_RELEASE" - exit ;; - *:Darwin:*:*) - UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown - set_cc_for_build - if test "$UNAME_PROCESSOR" = unknown ; then - UNAME_PROCESSOR=powerpc - fi - if test "`echo "$UNAME_RELEASE" | sed -e 's/\..*//'`" -le 10 ; then - if [ "$CC_FOR_BUILD" != no_compiler_found ]; then - if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH; echo '#endif') | \ - (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \ - grep IS_64BIT_ARCH >/dev/null - then - case $UNAME_PROCESSOR in - i386) UNAME_PROCESSOR=x86_64 ;; - powerpc) UNAME_PROCESSOR=powerpc64 ;; - esac - fi - # On 10.4-10.6 one might compile for PowerPC via gcc -arch ppc - if (echo '#ifdef __POWERPC__'; echo IS_PPC; echo '#endif') | \ - (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \ - grep IS_PPC >/dev/null - then - UNAME_PROCESSOR=powerpc - fi - fi - elif test "$UNAME_PROCESSOR" = i386 ; then - # Avoid executing cc on OS X 10.9, as it ships with a stub - # that puts up a graphical alert prompting to install - # developer tools. Any system running Mac OS X 10.7 or - # later (Darwin 11 and later) is required to have a 64-bit - # processor. This is not true of the ARM version of Darwin - # that Apple uses in portable devices. - UNAME_PROCESSOR=x86_64 - fi - echo "$UNAME_PROCESSOR"-apple-darwin"$UNAME_RELEASE" - exit ;; - *:procnto*:*:* | *:QNX:[0123456789]*:*) - UNAME_PROCESSOR=`uname -p` - if test "$UNAME_PROCESSOR" = x86; then - UNAME_PROCESSOR=i386 - UNAME_MACHINE=pc - fi - echo "$UNAME_PROCESSOR"-"$UNAME_MACHINE"-nto-qnx"$UNAME_RELEASE" - exit ;; - *:QNX:*:4*) - echo i386-pc-qnx - exit ;; - NEO-*:NONSTOP_KERNEL:*:*) - echo neo-tandem-nsk"$UNAME_RELEASE" - exit ;; - NSE-*:NONSTOP_KERNEL:*:*) - echo nse-tandem-nsk"$UNAME_RELEASE" - exit ;; - NSR-*:NONSTOP_KERNEL:*:*) - echo nsr-tandem-nsk"$UNAME_RELEASE" - exit ;; - NSV-*:NONSTOP_KERNEL:*:*) - echo nsv-tandem-nsk"$UNAME_RELEASE" - exit ;; - NSX-*:NONSTOP_KERNEL:*:*) - echo nsx-tandem-nsk"$UNAME_RELEASE" - exit ;; - *:NonStop-UX:*:*) - echo mips-compaq-nonstopux - exit ;; - BS2000:POSIX*:*:*) - echo bs2000-siemens-sysv - exit ;; - DS/*:UNIX_System_V:*:*) - echo "$UNAME_MACHINE"-"$UNAME_SYSTEM"-"$UNAME_RELEASE" - exit ;; - *:Plan9:*:*) - # "uname -m" is not consistent, so use $cputype instead. 386 - # is converted to i386 for consistency with other x86 - # operating systems. - # shellcheck disable=SC2154 - if test "$cputype" = 386; then - UNAME_MACHINE=i386 - else - UNAME_MACHINE="$cputype" - fi - echo "$UNAME_MACHINE"-unknown-plan9 - exit ;; - *:TOPS-10:*:*) - echo pdp10-unknown-tops10 - exit ;; - *:TENEX:*:*) - echo pdp10-unknown-tenex - exit ;; - KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*) - echo pdp10-dec-tops20 - exit ;; - XKL-1:TOPS-20:*:* | TYPE5:TOPS-20:*:*) - echo pdp10-xkl-tops20 - exit ;; - *:TOPS-20:*:*) - echo pdp10-unknown-tops20 - exit ;; - *:ITS:*:*) - echo pdp10-unknown-its - exit ;; - SEI:*:*:SEIUX) - echo mips-sei-seiux"$UNAME_RELEASE" - exit ;; - *:DragonFly:*:*) - echo "$UNAME_MACHINE"-unknown-dragonfly"`echo "$UNAME_RELEASE"|sed -e 's/[-(].*//'`" - exit ;; - *:*VMS:*:*) - UNAME_MACHINE=`(uname -p) 2>/dev/null` - case "$UNAME_MACHINE" in - A*) echo alpha-dec-vms ; exit ;; - I*) echo ia64-dec-vms ; exit ;; - V*) echo vax-dec-vms ; exit ;; - esac ;; - *:XENIX:*:SysV) - echo i386-pc-xenix - exit ;; - i*86:skyos:*:*) - echo "$UNAME_MACHINE"-pc-skyos"`echo "$UNAME_RELEASE" | sed -e 's/ .*$//'`" - exit ;; - i*86:rdos:*:*) - echo "$UNAME_MACHINE"-pc-rdos - exit ;; - i*86:AROS:*:*) - echo "$UNAME_MACHINE"-pc-aros - exit ;; - x86_64:VMkernel:*:*) - echo "$UNAME_MACHINE"-unknown-esx - exit ;; - amd64:Isilon\ OneFS:*:*) - echo x86_64-unknown-onefs - exit ;; - *:Unleashed:*:*) - echo "$UNAME_MACHINE"-unknown-unleashed"$UNAME_RELEASE" - exit ;; -esac - -echo "$0: unable to guess system type" >&2 - -case "$UNAME_MACHINE:$UNAME_SYSTEM" in - mips:Linux | mips64:Linux) - # If we got here on MIPS GNU/Linux, output extra information. - cat >&2 <&2 </dev/null || echo unknown` -uname -r = `(uname -r) 2>/dev/null || echo unknown` -uname -s = `(uname -s) 2>/dev/null || echo unknown` -uname -v = `(uname -v) 2>/dev/null || echo unknown` - -/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null` -/bin/uname -X = `(/bin/uname -X) 2>/dev/null` - -hostinfo = `(hostinfo) 2>/dev/null` -/bin/universe = `(/bin/universe) 2>/dev/null` -/usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null` -/bin/arch = `(/bin/arch) 2>/dev/null` -/usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null` -/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null` - -UNAME_MACHINE = "$UNAME_MACHINE" -UNAME_RELEASE = "$UNAME_RELEASE" -UNAME_SYSTEM = "$UNAME_SYSTEM" -UNAME_VERSION = "$UNAME_VERSION" -EOF - -exit 1 - -# Local variables: -# eval: (add-hook 'before-save-hook 'time-stamp) -# time-stamp-start: "timestamp='" -# time-stamp-format: "%:y-%02m-%02d" -# time-stamp-end: "'" -# End: diff --git a/thirdparty/grub-2.04/build-aux/config.rpath b/thirdparty/grub-2.04/build-aux/config.rpath deleted file mode 100755 index be202c1a9..000000000 --- a/thirdparty/grub-2.04/build-aux/config.rpath +++ /dev/null @@ -1,684 +0,0 @@ -#! /bin/sh -# Output a system dependent set of variables, describing how to set the -# run time search path of shared libraries in an executable. -# -# Copyright 1996-2019 Free Software Foundation, Inc. -# Taken from GNU libtool, 2001 -# Originally by Gordon Matzigkeit , 1996 -# -# This file is free software; the Free Software Foundation gives -# unlimited permission to copy and/or distribute it, with or without -# modifications, as long as this notice is preserved. -# -# The first argument passed to this file is the canonical host specification, -# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM -# or -# CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM -# The environment variables CC, GCC, LDFLAGS, LD, with_gnu_ld -# should be set by the caller. -# -# The set of defined variables is at the end of this script. - -# Known limitations: -# - On IRIX 6.5 with CC="cc", the run time search patch must not be longer -# than 256 bytes, otherwise the compiler driver will dump core. The only -# known workaround is to choose shorter directory names for the build -# directory and/or the installation directory. - -# All known linkers require a '.a' archive for static linking (except MSVC, -# which needs '.lib'). -libext=a -shrext=.so - -host="$1" -host_cpu=`echo "$host" | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'` -host_vendor=`echo "$host" | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'` -host_os=`echo "$host" | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'` - -# Code taken from libtool.m4's _LT_CC_BASENAME. - -for cc_temp in $CC""; do - case $cc_temp in - compile | *[\\/]compile | ccache | *[\\/]ccache ) ;; - distcc | *[\\/]distcc | purify | *[\\/]purify ) ;; - \-*) ;; - *) break;; - esac -done -cc_basename=`echo "$cc_temp" | sed -e 's%^.*/%%'` - -# Code taken from libtool.m4's _LT_COMPILER_PIC. - -wl= -if test "$GCC" = yes; then - wl='-Wl,' -else - case "$host_os" in - aix*) - wl='-Wl,' - ;; - mingw* | cygwin* | pw32* | os2* | cegcc*) - ;; - hpux9* | hpux10* | hpux11*) - wl='-Wl,' - ;; - irix5* | irix6* | nonstopux*) - wl='-Wl,' - ;; - linux* | k*bsd*-gnu | kopensolaris*-gnu) - case $cc_basename in - ecc*) - wl='-Wl,' - ;; - icc* | ifort*) - wl='-Wl,' - ;; - lf95*) - wl='-Wl,' - ;; - nagfor*) - wl='-Wl,-Wl,,' - ;; - pgcc* | pgf77* | pgf90* | pgf95* | pgfortran*) - wl='-Wl,' - ;; - ccc*) - wl='-Wl,' - ;; - xl* | bgxl* | bgf* | mpixl*) - wl='-Wl,' - ;; - como) - wl='-lopt=' - ;; - *) - case `$CC -V 2>&1 | sed 5q` in - *Sun\ F* | *Sun*Fortran*) - wl= - ;; - *Sun\ C*) - wl='-Wl,' - ;; - esac - ;; - esac - ;; - newsos6) - ;; - *nto* | *qnx*) - ;; - osf3* | osf4* | osf5*) - wl='-Wl,' - ;; - rdos*) - ;; - solaris*) - case $cc_basename in - f77* | f90* | f95* | sunf77* | sunf90* | sunf95*) - wl='-Qoption ld ' - ;; - *) - wl='-Wl,' - ;; - esac - ;; - sunos4*) - wl='-Qoption ld ' - ;; - sysv4 | sysv4.2uw2* | sysv4.3*) - wl='-Wl,' - ;; - sysv4*MP*) - ;; - sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*) - wl='-Wl,' - ;; - unicos*) - wl='-Wl,' - ;; - uts4*) - ;; - esac -fi - -# Code taken from libtool.m4's _LT_LINKER_SHLIBS. - -hardcode_libdir_flag_spec= -hardcode_libdir_separator= -hardcode_direct=no -hardcode_minus_L=no - -case "$host_os" in - cygwin* | mingw* | pw32* | cegcc*) - # FIXME: the MSVC++ port hasn't been tested in a loooong time - # When not using gcc, we currently assume that we are using - # Microsoft Visual C++. - if test "$GCC" != yes; then - with_gnu_ld=no - fi - ;; - interix*) - # we just hope/assume this is gcc and not c89 (= MSVC++) - with_gnu_ld=yes - ;; - openbsd*) - with_gnu_ld=no - ;; -esac - -ld_shlibs=yes -if test "$with_gnu_ld" = yes; then - # Set some defaults for GNU ld with shared library support. These - # are reset later if shared libraries are not supported. Putting them - # here allows them to be overridden if necessary. - # Unlike libtool, we use -rpath here, not --rpath, since the documented - # option of GNU ld is called -rpath, not --rpath. - hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' - case "$host_os" in - aix[3-9]*) - # On AIX/PPC, the GNU linker is very broken - if test "$host_cpu" != ia64; then - ld_shlibs=no - fi - ;; - amigaos*) - case "$host_cpu" in - powerpc) - ;; - m68k) - hardcode_libdir_flag_spec='-L$libdir' - hardcode_minus_L=yes - ;; - esac - ;; - beos*) - if $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then - : - else - ld_shlibs=no - fi - ;; - cygwin* | mingw* | pw32* | cegcc*) - # hardcode_libdir_flag_spec is actually meaningless, as there is - # no search path for DLLs. - hardcode_libdir_flag_spec='-L$libdir' - if $LD --help 2>&1 | grep 'auto-import' > /dev/null; then - : - else - ld_shlibs=no - fi - ;; - haiku*) - ;; - interix[3-9]*) - hardcode_direct=no - hardcode_libdir_flag_spec='${wl}-rpath,$libdir' - ;; - gnu* | linux* | tpf* | k*bsd*-gnu | kopensolaris*-gnu) - if $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then - : - else - ld_shlibs=no - fi - ;; - netbsd*) - ;; - solaris*) - if $LD -v 2>&1 | grep 'BFD 2\.8' > /dev/null; then - ld_shlibs=no - elif $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then - : - else - ld_shlibs=no - fi - ;; - sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX*) - case `$LD -v 2>&1` in - *\ [01].* | *\ 2.[0-9].* | *\ 2.1[0-5].*) - ld_shlibs=no - ;; - *) - if $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then - hardcode_libdir_flag_spec='`test -z "$SCOABSPATH" && echo ${wl}-rpath,$libdir`' - else - ld_shlibs=no - fi - ;; - esac - ;; - sunos4*) - hardcode_direct=yes - ;; - *) - if $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then - : - else - ld_shlibs=no - fi - ;; - esac - if test "$ld_shlibs" = no; then - hardcode_libdir_flag_spec= - fi -else - case "$host_os" in - aix3*) - # Note: this linker hardcodes the directories in LIBPATH if there - # are no directories specified by -L. - hardcode_minus_L=yes - if test "$GCC" = yes; then - # Neither direct hardcoding nor static linking is supported with a - # broken collect2. - hardcode_direct=unsupported - fi - ;; - aix[4-9]*) - if test "$host_cpu" = ia64; then - # On IA64, the linker does run time linking by default, so we don't - # have to do anything special. - aix_use_runtimelinking=no - else - aix_use_runtimelinking=no - # Test if we are trying to use run time linking or normal - # AIX style linking. If -brtl is somewhere in LDFLAGS, we - # need to do runtime linking. - case $host_os in aix4.[23]|aix4.[23].*|aix[5-9]*) - for ld_flag in $LDFLAGS; do - if (test $ld_flag = "-brtl" || test $ld_flag = "-Wl,-brtl"); then - aix_use_runtimelinking=yes - break - fi - done - ;; - esac - fi - hardcode_direct=yes - hardcode_libdir_separator=':' - if test "$GCC" = yes; then - case $host_os in aix4.[012]|aix4.[012].*) - collect2name=`${CC} -print-prog-name=collect2` - if test -f "$collect2name" && \ - strings "$collect2name" | grep resolve_lib_name >/dev/null - then - # We have reworked collect2 - : - else - # We have old collect2 - hardcode_direct=unsupported - hardcode_minus_L=yes - hardcode_libdir_flag_spec='-L$libdir' - hardcode_libdir_separator= - fi - ;; - esac - fi - # Begin _LT_AC_SYS_LIBPATH_AIX. - echo 'int main () { return 0; }' > conftest.c - ${CC} ${LDFLAGS} conftest.c -o conftest - aix_libpath=`dump -H conftest 2>/dev/null | sed -n -e '/Import File Strings/,/^$/ { /^0/ { s/^0 *\(.*\)$/\1/; p; } -}'` - if test -z "$aix_libpath"; then - aix_libpath=`dump -HX64 conftest 2>/dev/null | sed -n -e '/Import File Strings/,/^$/ { /^0/ { s/^0 *\(.*\)$/\1/; p; } -}'` - fi - if test -z "$aix_libpath"; then - aix_libpath="/usr/lib:/lib" - fi - rm -f conftest.c conftest - # End _LT_AC_SYS_LIBPATH_AIX. - if test "$aix_use_runtimelinking" = yes; then - hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:'"$aix_libpath" - else - if test "$host_cpu" = ia64; then - hardcode_libdir_flag_spec='${wl}-R $libdir:/usr/lib:/lib' - else - hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:'"$aix_libpath" - fi - fi - ;; - amigaos*) - case "$host_cpu" in - powerpc) - ;; - m68k) - hardcode_libdir_flag_spec='-L$libdir' - hardcode_minus_L=yes - ;; - esac - ;; - bsdi[45]*) - ;; - cygwin* | mingw* | pw32* | cegcc*) - # When not using gcc, we currently assume that we are using - # Microsoft Visual C++. - # hardcode_libdir_flag_spec is actually meaningless, as there is - # no search path for DLLs. - hardcode_libdir_flag_spec=' ' - libext=lib - ;; - darwin* | rhapsody*) - hardcode_direct=no - if { case $cc_basename in ifort*) true;; *) test "$GCC" = yes;; esac; }; then - : - else - ld_shlibs=no - fi - ;; - dgux*) - hardcode_libdir_flag_spec='-L$libdir' - ;; - freebsd2.[01]*) - hardcode_direct=yes - hardcode_minus_L=yes - ;; - freebsd* | dragonfly*) - hardcode_libdir_flag_spec='-R$libdir' - hardcode_direct=yes - ;; - hpux9*) - hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir' - hardcode_libdir_separator=: - hardcode_direct=yes - # hardcode_minus_L: Not really in the search PATH, - # but as the default location of the library. - hardcode_minus_L=yes - ;; - hpux10*) - if test "$with_gnu_ld" = no; then - hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir' - hardcode_libdir_separator=: - hardcode_direct=yes - # hardcode_minus_L: Not really in the search PATH, - # but as the default location of the library. - hardcode_minus_L=yes - fi - ;; - hpux11*) - if test "$with_gnu_ld" = no; then - hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir' - hardcode_libdir_separator=: - case $host_cpu in - hppa*64*|ia64*) - hardcode_direct=no - ;; - *) - hardcode_direct=yes - # hardcode_minus_L: Not really in the search PATH, - # but as the default location of the library. - hardcode_minus_L=yes - ;; - esac - fi - ;; - irix5* | irix6* | nonstopux*) - hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' - hardcode_libdir_separator=: - ;; - netbsd*) - hardcode_libdir_flag_spec='-R$libdir' - hardcode_direct=yes - ;; - newsos6) - hardcode_direct=yes - hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' - hardcode_libdir_separator=: - ;; - *nto* | *qnx*) - ;; - openbsd*) - if test -f /usr/libexec/ld.so; then - hardcode_direct=yes - if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then - hardcode_libdir_flag_spec='${wl}-rpath,$libdir' - else - case "$host_os" in - openbsd[01].* | openbsd2.[0-7] | openbsd2.[0-7].*) - hardcode_libdir_flag_spec='-R$libdir' - ;; - *) - hardcode_libdir_flag_spec='${wl}-rpath,$libdir' - ;; - esac - fi - else - ld_shlibs=no - fi - ;; - os2*) - hardcode_libdir_flag_spec='-L$libdir' - hardcode_minus_L=yes - ;; - osf3*) - hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' - hardcode_libdir_separator=: - ;; - osf4* | osf5*) - if test "$GCC" = yes; then - hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' - else - # Both cc and cxx compiler support -rpath directly - hardcode_libdir_flag_spec='-rpath $libdir' - fi - hardcode_libdir_separator=: - ;; - solaris*) - hardcode_libdir_flag_spec='-R$libdir' - ;; - sunos4*) - hardcode_libdir_flag_spec='-L$libdir' - hardcode_direct=yes - hardcode_minus_L=yes - ;; - sysv4) - case $host_vendor in - sni) - hardcode_direct=yes # is this really true??? - ;; - siemens) - hardcode_direct=no - ;; - motorola) - hardcode_direct=no #Motorola manual says yes, but my tests say they lie - ;; - esac - ;; - sysv4.3*) - ;; - sysv4*MP*) - if test -d /usr/nec; then - ld_shlibs=yes - fi - ;; - sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[01].[10]* | unixware7* | sco3.2v5.0.[024]*) - ;; - sysv5* | sco3.2v5* | sco5v6*) - hardcode_libdir_flag_spec='`test -z "$SCOABSPATH" && echo ${wl}-R,$libdir`' - hardcode_libdir_separator=':' - ;; - uts4*) - hardcode_libdir_flag_spec='-L$libdir' - ;; - *) - ld_shlibs=no - ;; - esac -fi - -# Check dynamic linker characteristics -# Code taken from libtool.m4's _LT_SYS_DYNAMIC_LINKER. -# Unlike libtool.m4, here we don't care about _all_ names of the library, but -# only about the one the linker finds when passed -lNAME. This is the last -# element of library_names_spec in libtool.m4, or possibly two of them if the -# linker has special search rules. -library_names_spec= # the last element of library_names_spec in libtool.m4 -libname_spec='lib$name' -case "$host_os" in - aix3*) - library_names_spec='$libname.a' - ;; - aix[4-9]*) - library_names_spec='$libname$shrext' - ;; - amigaos*) - case "$host_cpu" in - powerpc*) - library_names_spec='$libname$shrext' ;; - m68k) - library_names_spec='$libname.a' ;; - esac - ;; - beos*) - library_names_spec='$libname$shrext' - ;; - bsdi[45]*) - library_names_spec='$libname$shrext' - ;; - cygwin* | mingw* | pw32* | cegcc*) - shrext=.dll - library_names_spec='$libname.dll.a $libname.lib' - ;; - darwin* | rhapsody*) - shrext=.dylib - library_names_spec='$libname$shrext' - ;; - dgux*) - library_names_spec='$libname$shrext' - ;; - freebsd[23].*) - library_names_spec='$libname$shrext$versuffix' - ;; - freebsd* | dragonfly*) - library_names_spec='$libname$shrext' - ;; - gnu*) - library_names_spec='$libname$shrext' - ;; - haiku*) - library_names_spec='$libname$shrext' - ;; - hpux9* | hpux10* | hpux11*) - case $host_cpu in - ia64*) - shrext=.so - ;; - hppa*64*) - shrext=.sl - ;; - *) - shrext=.sl - ;; - esac - library_names_spec='$libname$shrext' - ;; - interix[3-9]*) - library_names_spec='$libname$shrext' - ;; - irix5* | irix6* | nonstopux*) - library_names_spec='$libname$shrext' - case "$host_os" in - irix5* | nonstopux*) - libsuff= shlibsuff= - ;; - *) - case $LD in - *-32|*"-32 "|*-melf32bsmip|*"-melf32bsmip ") libsuff= shlibsuff= ;; - *-n32|*"-n32 "|*-melf32bmipn32|*"-melf32bmipn32 ") libsuff=32 shlibsuff=N32 ;; - *-64|*"-64 "|*-melf64bmip|*"-melf64bmip ") libsuff=64 shlibsuff=64 ;; - *) libsuff= shlibsuff= ;; - esac - ;; - esac - ;; - linux*oldld* | linux*aout* | linux*coff*) - ;; - linux* | k*bsd*-gnu | kopensolaris*-gnu) - library_names_spec='$libname$shrext' - ;; - knetbsd*-gnu) - library_names_spec='$libname$shrext' - ;; - netbsd*) - library_names_spec='$libname$shrext' - ;; - newsos6) - library_names_spec='$libname$shrext' - ;; - *nto* | *qnx*) - library_names_spec='$libname$shrext' - ;; - openbsd*) - library_names_spec='$libname$shrext$versuffix' - ;; - os2*) - libname_spec='$name' - shrext=.dll - library_names_spec='$libname.a' - ;; - osf3* | osf4* | osf5*) - library_names_spec='$libname$shrext' - ;; - rdos*) - ;; - solaris*) - library_names_spec='$libname$shrext' - ;; - sunos4*) - library_names_spec='$libname$shrext$versuffix' - ;; - sysv4 | sysv4.3*) - library_names_spec='$libname$shrext' - ;; - sysv4*MP*) - library_names_spec='$libname$shrext' - ;; - sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*) - library_names_spec='$libname$shrext' - ;; - tpf*) - library_names_spec='$libname$shrext' - ;; - uts4*) - library_names_spec='$libname$shrext' - ;; -esac - -sed_quote_subst='s/\(["`$\\]\)/\\\1/g' -escaped_wl=`echo "X$wl" | sed -e 's/^X//' -e "$sed_quote_subst"` -shlibext=`echo "$shrext" | sed -e 's,^\.,,'` -escaped_libname_spec=`echo "X$libname_spec" | sed -e 's/^X//' -e "$sed_quote_subst"` -escaped_library_names_spec=`echo "X$library_names_spec" | sed -e 's/^X//' -e "$sed_quote_subst"` -escaped_hardcode_libdir_flag_spec=`echo "X$hardcode_libdir_flag_spec" | sed -e 's/^X//' -e "$sed_quote_subst"` - -LC_ALL=C sed -e 's/^\([a-zA-Z0-9_]*\)=/acl_cv_\1=/' <. -# -# As a special exception to the GNU General Public License, if you -# distribute this file as part of a program that contains a -# configuration script generated by Autoconf, you may include it under -# the same distribution terms that you use for the rest of that -# program. This Exception is an additional permission under section 7 -# of the GNU General Public License, version 3 ("GPLv3"). - - -# Please send patches to . -# -# Configuration subroutine to validate and canonicalize a configuration type. -# Supply the specified configuration type as an argument. -# If it is invalid, we print an error message on stderr and exit with code 1. -# Otherwise, we print the canonical config type on stdout and succeed. - -# You can get the latest version of this script from: -# https://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub - -# This file is supposed to be the same for all GNU packages -# and recognize all the CPU types, system types and aliases -# that are meaningful with *any* GNU software. -# Each package is responsible for reporting which valid configurations -# it does not support. The user should be able to distinguish -# a failure to support a valid configuration from a meaningless -# configuration. - -# The goal of this file is to map all the various variations of a given -# machine specification into a single specification in the form: -# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM -# or in some cases, the newer four-part form: -# CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM -# It is wrong to echo any other type of specification. - -me=`echo "$0" | sed -e 's,.*/,,'` - -usage="\ -Usage: $0 [OPTION] CPU-MFR-OPSYS or ALIAS - -Canonicalize a configuration name. - -Options: - -h, --help print this help, then exit - -t, --time-stamp print date of last modification, then exit - -v, --version print version number, then exit - -Report bugs and patches to ." - -version="\ -GNU config.sub ($timestamp) - -Copyright 1992-2019 Free Software Foundation, Inc. - -This is free software; see the source for copying conditions. There is NO -warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." - -help=" -Try \`$me --help' for more information." - -# Parse command line -while test $# -gt 0 ; do - case $1 in - --time-stamp | --time* | -t ) - echo "$timestamp" ; exit ;; - --version | -v ) - echo "$version" ; exit ;; - --help | --h* | -h ) - echo "$usage"; exit ;; - -- ) # Stop option processing - shift; break ;; - - ) # Use stdin as input. - break ;; - -* ) - echo "$me: invalid option $1$help" >&2 - exit 1 ;; - - *local*) - # First pass through any local machine types. - echo "$1" - exit ;; - - * ) - break ;; - esac -done - -case $# in - 0) echo "$me: missing argument$help" >&2 - exit 1;; - 1) ;; - *) echo "$me: too many arguments$help" >&2 - exit 1;; -esac - -# Split fields of configuration type -# shellcheck disable=SC2162 -IFS="-" read field1 field2 field3 field4 <&2 - exit 1 - ;; - *-*-*-*) - basic_machine=$field1-$field2 - os=$field3-$field4 - ;; - *-*-*) - # Ambiguous whether COMPANY is present, or skipped and KERNEL-OS is two - # parts - maybe_os=$field2-$field3 - case $maybe_os in - nto-qnx* | linux-gnu* | linux-android* | linux-dietlibc \ - | linux-newlib* | linux-musl* | linux-uclibc* | uclinux-uclibc* \ - | uclinux-gnu* | kfreebsd*-gnu* | knetbsd*-gnu* | netbsd*-gnu* \ - | netbsd*-eabi* | kopensolaris*-gnu* | cloudabi*-eabi* \ - | storm-chaos* | os2-emx* | rtmk-nova*) - basic_machine=$field1 - os=$maybe_os - ;; - android-linux) - basic_machine=$field1-unknown - os=linux-android - ;; - *) - basic_machine=$field1-$field2 - os=$field3 - ;; - esac - ;; - *-*) - # A lone config we happen to match not fitting any pattern - case $field1-$field2 in - decstation-3100) - basic_machine=mips-dec - os= - ;; - *-*) - # Second component is usually, but not always the OS - case $field2 in - # Prevent following clause from handling this valid os - sun*os*) - basic_machine=$field1 - os=$field2 - ;; - # Manufacturers - dec* | mips* | sequent* | encore* | pc533* | sgi* | sony* \ - | att* | 7300* | 3300* | delta* | motorola* | sun[234]* \ - | unicom* | ibm* | next | hp | isi* | apollo | altos* \ - | convergent* | ncr* | news | 32* | 3600* | 3100* \ - | hitachi* | c[123]* | convex* | sun | crds | omron* | dg \ - | ultra | tti* | harris | dolphin | highlevel | gould \ - | cbm | ns | masscomp | apple | axis | knuth | cray \ - | microblaze* | sim | cisco \ - | oki | wec | wrs | winbond) - basic_machine=$field1-$field2 - os= - ;; - *) - basic_machine=$field1 - os=$field2 - ;; - esac - ;; - esac - ;; - *) - # Convert single-component short-hands not valid as part of - # multi-component configurations. - case $field1 in - 386bsd) - basic_machine=i386-pc - os=bsd - ;; - a29khif) - basic_machine=a29k-amd - os=udi - ;; - adobe68k) - basic_machine=m68010-adobe - os=scout - ;; - alliant) - basic_machine=fx80-alliant - os= - ;; - altos | altos3068) - basic_machine=m68k-altos - os= - ;; - am29k) - basic_machine=a29k-none - os=bsd - ;; - amdahl) - basic_machine=580-amdahl - os=sysv - ;; - amiga) - basic_machine=m68k-unknown - os= - ;; - amigaos | amigados) - basic_machine=m68k-unknown - os=amigaos - ;; - amigaunix | amix) - basic_machine=m68k-unknown - os=sysv4 - ;; - apollo68) - basic_machine=m68k-apollo - os=sysv - ;; - apollo68bsd) - basic_machine=m68k-apollo - os=bsd - ;; - aros) - basic_machine=i386-pc - os=aros - ;; - aux) - basic_machine=m68k-apple - os=aux - ;; - balance) - basic_machine=ns32k-sequent - os=dynix - ;; - blackfin) - basic_machine=bfin-unknown - os=linux - ;; - cegcc) - basic_machine=arm-unknown - os=cegcc - ;; - convex-c1) - basic_machine=c1-convex - os=bsd - ;; - convex-c2) - basic_machine=c2-convex - os=bsd - ;; - convex-c32) - basic_machine=c32-convex - os=bsd - ;; - convex-c34) - basic_machine=c34-convex - os=bsd - ;; - convex-c38) - basic_machine=c38-convex - os=bsd - ;; - cray) - basic_machine=j90-cray - os=unicos - ;; - crds | unos) - basic_machine=m68k-crds - os= - ;; - da30) - basic_machine=m68k-da30 - os= - ;; - decstation | pmax | pmin | dec3100 | decstatn) - basic_machine=mips-dec - os= - ;; - delta88) - basic_machine=m88k-motorola - os=sysv3 - ;; - dicos) - basic_machine=i686-pc - os=dicos - ;; - djgpp) - basic_machine=i586-pc - os=msdosdjgpp - ;; - ebmon29k) - basic_machine=a29k-amd - os=ebmon - ;; - es1800 | OSE68k | ose68k | ose | OSE) - basic_machine=m68k-ericsson - os=ose - ;; - gmicro) - basic_machine=tron-gmicro - os=sysv - ;; - go32) - basic_machine=i386-pc - os=go32 - ;; - h8300hms) - basic_machine=h8300-hitachi - os=hms - ;; - h8300xray) - basic_machine=h8300-hitachi - os=xray - ;; - h8500hms) - basic_machine=h8500-hitachi - os=hms - ;; - harris) - basic_machine=m88k-harris - os=sysv3 - ;; - hp300) - basic_machine=m68k-hp - ;; - hp300bsd) - basic_machine=m68k-hp - os=bsd - ;; - hp300hpux) - basic_machine=m68k-hp - os=hpux - ;; - hppaosf) - basic_machine=hppa1.1-hp - os=osf - ;; - hppro) - basic_machine=hppa1.1-hp - os=proelf - ;; - i386mach) - basic_machine=i386-mach - os=mach - ;; - vsta) - basic_machine=i386-pc - os=vsta - ;; - isi68 | isi) - basic_machine=m68k-isi - os=sysv - ;; - m68knommu) - basic_machine=m68k-unknown - os=linux - ;; - magnum | m3230) - basic_machine=mips-mips - os=sysv - ;; - merlin) - basic_machine=ns32k-utek - os=sysv - ;; - mingw64) - basic_machine=x86_64-pc - os=mingw64 - ;; - mingw32) - basic_machine=i686-pc - os=mingw32 - ;; - mingw32ce) - basic_machine=arm-unknown - os=mingw32ce - ;; - monitor) - basic_machine=m68k-rom68k - os=coff - ;; - morphos) - basic_machine=powerpc-unknown - os=morphos - ;; - moxiebox) - basic_machine=moxie-unknown - os=moxiebox - ;; - msdos) - basic_machine=i386-pc - os=msdos - ;; - msys) - basic_machine=i686-pc - os=msys - ;; - mvs) - basic_machine=i370-ibm - os=mvs - ;; - nacl) - basic_machine=le32-unknown - os=nacl - ;; - ncr3000) - basic_machine=i486-ncr - os=sysv4 - ;; - netbsd386) - basic_machine=i386-pc - os=netbsd - ;; - netwinder) - basic_machine=armv4l-rebel - os=linux - ;; - news | news700 | news800 | news900) - basic_machine=m68k-sony - os=newsos - ;; - news1000) - basic_machine=m68030-sony - os=newsos - ;; - necv70) - basic_machine=v70-nec - os=sysv - ;; - nh3000) - basic_machine=m68k-harris - os=cxux - ;; - nh[45]000) - basic_machine=m88k-harris - os=cxux - ;; - nindy960) - basic_machine=i960-intel - os=nindy - ;; - mon960) - basic_machine=i960-intel - os=mon960 - ;; - nonstopux) - basic_machine=mips-compaq - os=nonstopux - ;; - os400) - basic_machine=powerpc-ibm - os=os400 - ;; - OSE68000 | ose68000) - basic_machine=m68000-ericsson - os=ose - ;; - os68k) - basic_machine=m68k-none - os=os68k - ;; - paragon) - basic_machine=i860-intel - os=osf - ;; - parisc) - basic_machine=hppa-unknown - os=linux - ;; - pw32) - basic_machine=i586-unknown - os=pw32 - ;; - rdos | rdos64) - basic_machine=x86_64-pc - os=rdos - ;; - rdos32) - basic_machine=i386-pc - os=rdos - ;; - rom68k) - basic_machine=m68k-rom68k - os=coff - ;; - sa29200) - basic_machine=a29k-amd - os=udi - ;; - sei) - basic_machine=mips-sei - os=seiux - ;; - sequent) - basic_machine=i386-sequent - os= - ;; - sps7) - basic_machine=m68k-bull - os=sysv2 - ;; - st2000) - basic_machine=m68k-tandem - os= - ;; - stratus) - basic_machine=i860-stratus - os=sysv4 - ;; - sun2) - basic_machine=m68000-sun - os= - ;; - sun2os3) - basic_machine=m68000-sun - os=sunos3 - ;; - sun2os4) - basic_machine=m68000-sun - os=sunos4 - ;; - sun3) - basic_machine=m68k-sun - os= - ;; - sun3os3) - basic_machine=m68k-sun - os=sunos3 - ;; - sun3os4) - basic_machine=m68k-sun - os=sunos4 - ;; - sun4) - basic_machine=sparc-sun - os= - ;; - sun4os3) - basic_machine=sparc-sun - os=sunos3 - ;; - sun4os4) - basic_machine=sparc-sun - os=sunos4 - ;; - sun4sol2) - basic_machine=sparc-sun - os=solaris2 - ;; - sun386 | sun386i | roadrunner) - basic_machine=i386-sun - os= - ;; - sv1) - basic_machine=sv1-cray - os=unicos - ;; - symmetry) - basic_machine=i386-sequent - os=dynix - ;; - t3e) - basic_machine=alphaev5-cray - os=unicos - ;; - t90) - basic_machine=t90-cray - os=unicos - ;; - toad1) - basic_machine=pdp10-xkl - os=tops20 - ;; - tpf) - basic_machine=s390x-ibm - os=tpf - ;; - udi29k) - basic_machine=a29k-amd - os=udi - ;; - ultra3) - basic_machine=a29k-nyu - os=sym1 - ;; - v810 | necv810) - basic_machine=v810-nec - os=none - ;; - vaxv) - basic_machine=vax-dec - os=sysv - ;; - vms) - basic_machine=vax-dec - os=vms - ;; - vxworks960) - basic_machine=i960-wrs - os=vxworks - ;; - vxworks68) - basic_machine=m68k-wrs - os=vxworks - ;; - vxworks29k) - basic_machine=a29k-wrs - os=vxworks - ;; - xbox) - basic_machine=i686-pc - os=mingw32 - ;; - ymp) - basic_machine=ymp-cray - os=unicos - ;; - *) - basic_machine=$1 - os= - ;; - esac - ;; -esac - -# Decode 1-component or ad-hoc basic machines -case $basic_machine in - # Here we handle the default manufacturer of certain CPU types. It is in - # some cases the only manufacturer, in others, it is the most popular. - w89k) - cpu=hppa1.1 - vendor=winbond - ;; - op50n) - cpu=hppa1.1 - vendor=oki - ;; - op60c) - cpu=hppa1.1 - vendor=oki - ;; - ibm*) - cpu=i370 - vendor=ibm - ;; - orion105) - cpu=clipper - vendor=highlevel - ;; - mac | mpw | mac-mpw) - cpu=m68k - vendor=apple - ;; - pmac | pmac-mpw) - cpu=powerpc - vendor=apple - ;; - - # Recognize the various machine names and aliases which stand - # for a CPU type and a company and sometimes even an OS. - 3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc) - cpu=m68000 - vendor=att - ;; - 3b*) - cpu=we32k - vendor=att - ;; - bluegene*) - cpu=powerpc - vendor=ibm - os=cnk - ;; - decsystem10* | dec10*) - cpu=pdp10 - vendor=dec - os=tops10 - ;; - decsystem20* | dec20*) - cpu=pdp10 - vendor=dec - os=tops20 - ;; - delta | 3300 | motorola-3300 | motorola-delta \ - | 3300-motorola | delta-motorola) - cpu=m68k - vendor=motorola - ;; - dpx2*) - cpu=m68k - vendor=bull - os=sysv3 - ;; - encore | umax | mmax) - cpu=ns32k - vendor=encore - ;; - elxsi) - cpu=elxsi - vendor=elxsi - os=${os:-bsd} - ;; - fx2800) - cpu=i860 - vendor=alliant - ;; - genix) - cpu=ns32k - vendor=ns - ;; - h3050r* | hiux*) - cpu=hppa1.1 - vendor=hitachi - os=hiuxwe2 - ;; - hp3k9[0-9][0-9] | hp9[0-9][0-9]) - cpu=hppa1.0 - vendor=hp - ;; - hp9k2[0-9][0-9] | hp9k31[0-9]) - cpu=m68000 - vendor=hp - ;; - hp9k3[2-9][0-9]) - cpu=m68k - vendor=hp - ;; - hp9k6[0-9][0-9] | hp6[0-9][0-9]) - cpu=hppa1.0 - vendor=hp - ;; - hp9k7[0-79][0-9] | hp7[0-79][0-9]) - cpu=hppa1.1 - vendor=hp - ;; - hp9k78[0-9] | hp78[0-9]) - # FIXME: really hppa2.0-hp - cpu=hppa1.1 - vendor=hp - ;; - hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893) - # FIXME: really hppa2.0-hp - cpu=hppa1.1 - vendor=hp - ;; - hp9k8[0-9][13679] | hp8[0-9][13679]) - cpu=hppa1.1 - vendor=hp - ;; - hp9k8[0-9][0-9] | hp8[0-9][0-9]) - cpu=hppa1.0 - vendor=hp - ;; - i*86v32) - cpu=`echo "$1" | sed -e 's/86.*/86/'` - vendor=pc - os=sysv32 - ;; - i*86v4*) - cpu=`echo "$1" | sed -e 's/86.*/86/'` - vendor=pc - os=sysv4 - ;; - i*86v) - cpu=`echo "$1" | sed -e 's/86.*/86/'` - vendor=pc - os=sysv - ;; - i*86sol2) - cpu=`echo "$1" | sed -e 's/86.*/86/'` - vendor=pc - os=solaris2 - ;; - j90 | j90-cray) - cpu=j90 - vendor=cray - os=${os:-unicos} - ;; - iris | iris4d) - cpu=mips - vendor=sgi - case $os in - irix*) - ;; - *) - os=irix4 - ;; - esac - ;; - miniframe) - cpu=m68000 - vendor=convergent - ;; - *mint | mint[0-9]* | *MiNT | *MiNT[0-9]*) - cpu=m68k - vendor=atari - os=mint - ;; - news-3600 | risc-news) - cpu=mips - vendor=sony - os=newsos - ;; - next | m*-next) - cpu=m68k - vendor=next - case $os in - nextstep* ) - ;; - ns2*) - os=nextstep2 - ;; - *) - os=nextstep3 - ;; - esac - ;; - np1) - cpu=np1 - vendor=gould - ;; - op50n-* | op60c-*) - cpu=hppa1.1 - vendor=oki - os=proelf - ;; - pa-hitachi) - cpu=hppa1.1 - vendor=hitachi - os=hiuxwe2 - ;; - pbd) - cpu=sparc - vendor=tti - ;; - pbb) - cpu=m68k - vendor=tti - ;; - pc532) - cpu=ns32k - vendor=pc532 - ;; - pn) - cpu=pn - vendor=gould - ;; - power) - cpu=power - vendor=ibm - ;; - ps2) - cpu=i386 - vendor=ibm - ;; - rm[46]00) - cpu=mips - vendor=siemens - ;; - rtpc | rtpc-*) - cpu=romp - vendor=ibm - ;; - sde) - cpu=mipsisa32 - vendor=sde - os=${os:-elf} - ;; - simso-wrs) - cpu=sparclite - vendor=wrs - os=vxworks - ;; - tower | tower-32) - cpu=m68k - vendor=ncr - ;; - vpp*|vx|vx-*) - cpu=f301 - vendor=fujitsu - ;; - w65) - cpu=w65 - vendor=wdc - ;; - w89k-*) - cpu=hppa1.1 - vendor=winbond - os=proelf - ;; - none) - cpu=none - vendor=none - ;; - leon|leon[3-9]) - cpu=sparc - vendor=$basic_machine - ;; - leon-*|leon[3-9]-*) - cpu=sparc - vendor=`echo "$basic_machine" | sed 's/-.*//'` - ;; - - *-*) - # shellcheck disable=SC2162 - IFS="-" read cpu vendor <&2 - exit 1 - ;; - esac - ;; -esac - -# Here we canonicalize certain aliases for manufacturers. -case $vendor in - digital*) - vendor=dec - ;; - commodore*) - vendor=cbm - ;; - *) - ;; -esac - -# Decode manufacturer-specific aliases for certain operating systems. - -if [ x$os != x ] -then -case $os in - # First match some system type aliases that might get confused - # with valid system types. - # solaris* is a basic system type, with this one exception. - auroraux) - os=auroraux - ;; - bluegene*) - os=cnk - ;; - solaris1 | solaris1.*) - os=`echo $os | sed -e 's|solaris1|sunos4|'` - ;; - solaris) - os=solaris2 - ;; - unixware*) - os=sysv4.2uw - ;; - gnu/linux*) - os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'` - ;; - # es1800 is here to avoid being matched by es* (a different OS) - es1800*) - os=ose - ;; - # Some version numbers need modification - chorusos*) - os=chorusos - ;; - isc) - os=isc2.2 - ;; - sco6) - os=sco5v6 - ;; - sco5) - os=sco3.2v5 - ;; - sco4) - os=sco3.2v4 - ;; - sco3.2.[4-9]*) - os=`echo $os | sed -e 's/sco3.2./sco3.2v/'` - ;; - sco3.2v[4-9]* | sco5v6*) - # Don't forget version if it is 3.2v4 or newer. - ;; - scout) - # Don't match below - ;; - sco*) - os=sco3.2v2 - ;; - psos*) - os=psos - ;; - # Now accept the basic system types. - # The portable systems comes first. - # Each alternative MUST end in a * to match a version number. - # sysv* is not here because it comes later, after sysvr4. - gnu* | bsd* | mach* | minix* | genix* | ultrix* | irix* \ - | *vms* | esix* | aix* | cnk* | sunos | sunos[34]*\ - | hpux* | unos* | osf* | luna* | dgux* | auroraux* | solaris* \ - | sym* | kopensolaris* | plan9* \ - | amigaos* | amigados* | msdos* | newsos* | unicos* | aof* \ - | aos* | aros* | cloudabi* | sortix* \ - | nindy* | vxsim* | vxworks* | ebmon* | hms* | mvs* \ - | clix* | riscos* | uniplus* | iris* | isc* | rtu* | xenix* \ - | knetbsd* | mirbsd* | netbsd* \ - | bitrig* | openbsd* | solidbsd* | libertybsd* \ - | ekkobsd* | kfreebsd* | freebsd* | riscix* | lynxos* \ - | bosx* | nextstep* | cxux* | aout* | elf* | oabi* \ - | ptx* | coff* | ecoff* | winnt* | domain* | vsta* \ - | udi* | eabi* | lites* | ieee* | go32* | aux* | hcos* \ - | chorusrdb* | cegcc* | glidix* \ - | cygwin* | msys* | pe* | moss* | proelf* | rtems* \ - | midipix* | mingw32* | mingw64* | linux-gnu* | linux-android* \ - | linux-newlib* | linux-musl* | linux-uclibc* \ - | uxpv* | beos* | mpeix* | udk* | moxiebox* \ - | interix* | uwin* | mks* | rhapsody* | darwin* \ - | openstep* | oskit* | conix* | pw32* | nonstopux* \ - | storm-chaos* | tops10* | tenex* | tops20* | its* \ - | os2* | vos* | palmos* | uclinux* | nucleus* \ - | morphos* | superux* | rtmk* | windiss* \ - | powermax* | dnix* | nx6 | nx7 | sei* | dragonfly* \ - | skyos* | haiku* | rdos* | toppers* | drops* | es* \ - | onefs* | tirtos* | phoenix* | fuchsia* | redox* | bme* \ - | midnightbsd* | amdhsa* | unleashed* | emscripten*) - # Remember, each alternative MUST END IN *, to match a version number. - ;; - qnx*) - case $cpu in - x86 | i*86) - ;; - *) - os=nto-$os - ;; - esac - ;; - hiux*) - os=hiuxwe2 - ;; - nto-qnx*) - ;; - nto*) - os=`echo $os | sed -e 's|nto|nto-qnx|'` - ;; - sim | xray | os68k* | v88r* \ - | windows* | osx | abug | netware* | os9* \ - | macos* | mpw* | magic* | mmixware* | mon960* | lnews*) - ;; - linux-dietlibc) - os=linux-dietlibc - ;; - linux*) - os=`echo $os | sed -e 's|linux|linux-gnu|'` - ;; - lynx*178) - os=lynxos178 - ;; - lynx*5) - os=lynxos5 - ;; - lynx*) - os=lynxos - ;; - mac*) - os=`echo "$os" | sed -e 's|mac|macos|'` - ;; - opened*) - os=openedition - ;; - os400*) - os=os400 - ;; - sunos5*) - os=`echo "$os" | sed -e 's|sunos5|solaris2|'` - ;; - sunos6*) - os=`echo "$os" | sed -e 's|sunos6|solaris3|'` - ;; - wince*) - os=wince - ;; - utek*) - os=bsd - ;; - dynix*) - os=bsd - ;; - acis*) - os=aos - ;; - atheos*) - os=atheos - ;; - syllable*) - os=syllable - ;; - 386bsd) - os=bsd - ;; - ctix* | uts*) - os=sysv - ;; - nova*) - os=rtmk-nova - ;; - ns2) - os=nextstep2 - ;; - nsk*) - os=nsk - ;; - # Preserve the version number of sinix5. - sinix5.*) - os=`echo $os | sed -e 's|sinix|sysv|'` - ;; - sinix*) - os=sysv4 - ;; - tpf*) - os=tpf - ;; - triton*) - os=sysv3 - ;; - oss*) - os=sysv3 - ;; - svr4*) - os=sysv4 - ;; - svr3) - os=sysv3 - ;; - sysvr4) - os=sysv4 - ;; - # This must come after sysvr4. - sysv*) - ;; - ose*) - os=ose - ;; - *mint | mint[0-9]* | *MiNT | MiNT[0-9]*) - os=mint - ;; - zvmoe) - os=zvmoe - ;; - dicos*) - os=dicos - ;; - pikeos*) - # Until real need of OS specific support for - # particular features comes up, bare metal - # configurations are quite functional. - case $cpu in - arm*) - os=eabi - ;; - *) - os=elf - ;; - esac - ;; - nacl*) - ;; - ios) - ;; - none) - ;; - *-eabi) - ;; - *) - echo Invalid configuration \`"$1"\': system \`"$os"\' not recognized 1>&2 - exit 1 - ;; -esac -else - -# Here we handle the default operating systems that come with various machines. -# The value should be what the vendor currently ships out the door with their -# machine or put another way, the most popular os provided with the machine. - -# Note that if you're going to try to match "-MANUFACTURER" here (say, -# "-sun"), then you have to tell the case statement up towards the top -# that MANUFACTURER isn't an operating system. Otherwise, code above -# will signal an error saying that MANUFACTURER isn't an operating -# system, and we'll never get to this point. - -case $cpu-$vendor in - score-*) - os=elf - ;; - spu-*) - os=elf - ;; - *-acorn) - os=riscix1.2 - ;; - arm*-rebel) - os=linux - ;; - arm*-semi) - os=aout - ;; - c4x-* | tic4x-*) - os=coff - ;; - c8051-*) - os=elf - ;; - clipper-intergraph) - os=clix - ;; - hexagon-*) - os=elf - ;; - tic54x-*) - os=coff - ;; - tic55x-*) - os=coff - ;; - tic6x-*) - os=coff - ;; - # This must come before the *-dec entry. - pdp10-*) - os=tops20 - ;; - pdp11-*) - os=none - ;; - *-dec | vax-*) - os=ultrix4.2 - ;; - m68*-apollo) - os=domain - ;; - i386-sun) - os=sunos4.0.2 - ;; - m68000-sun) - os=sunos3 - ;; - m68*-cisco) - os=aout - ;; - mep-*) - os=elf - ;; - mips*-cisco) - os=elf - ;; - mips*-*) - os=elf - ;; - or32-*) - os=coff - ;; - *-tti) # must be before sparc entry or we get the wrong os. - os=sysv3 - ;; - sparc-* | *-sun) - os=sunos4.1.1 - ;; - pru-*) - os=elf - ;; - *-be) - os=beos - ;; - *-ibm) - os=aix - ;; - *-knuth) - os=mmixware - ;; - *-wec) - os=proelf - ;; - *-winbond) - os=proelf - ;; - *-oki) - os=proelf - ;; - *-hp) - os=hpux - ;; - *-hitachi) - os=hiux - ;; - i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent) - os=sysv - ;; - *-cbm) - os=amigaos - ;; - *-dg) - os=dgux - ;; - *-dolphin) - os=sysv3 - ;; - m68k-ccur) - os=rtu - ;; - m88k-omron*) - os=luna - ;; - *-next) - os=nextstep - ;; - *-sequent) - os=ptx - ;; - *-crds) - os=unos - ;; - *-ns) - os=genix - ;; - i370-*) - os=mvs - ;; - *-gould) - os=sysv - ;; - *-highlevel) - os=bsd - ;; - *-encore) - os=bsd - ;; - *-sgi) - os=irix - ;; - *-siemens) - os=sysv4 - ;; - *-masscomp) - os=rtu - ;; - f30[01]-fujitsu | f700-fujitsu) - os=uxpv - ;; - *-rom68k) - os=coff - ;; - *-*bug) - os=coff - ;; - *-apple) - os=macos - ;; - *-atari*) - os=mint - ;; - *-wrs) - os=vxworks - ;; - *) - os=none - ;; -esac -fi - -# Here we handle the case where we know the os, and the CPU type, but not the -# manufacturer. We pick the logical manufacturer. -case $vendor in - unknown) - case $os in - riscix*) - vendor=acorn - ;; - sunos*) - vendor=sun - ;; - cnk*|-aix*) - vendor=ibm - ;; - beos*) - vendor=be - ;; - hpux*) - vendor=hp - ;; - mpeix*) - vendor=hp - ;; - hiux*) - vendor=hitachi - ;; - unos*) - vendor=crds - ;; - dgux*) - vendor=dg - ;; - luna*) - vendor=omron - ;; - genix*) - vendor=ns - ;; - clix*) - vendor=intergraph - ;; - mvs* | opened*) - vendor=ibm - ;; - os400*) - vendor=ibm - ;; - ptx*) - vendor=sequent - ;; - tpf*) - vendor=ibm - ;; - vxsim* | vxworks* | windiss*) - vendor=wrs - ;; - aux*) - vendor=apple - ;; - hms*) - vendor=hitachi - ;; - mpw* | macos*) - vendor=apple - ;; - *mint | mint[0-9]* | *MiNT | MiNT[0-9]*) - vendor=atari - ;; - vos*) - vendor=stratus - ;; - esac - ;; -esac - -echo "$cpu-$vendor-$os" -exit - -# Local variables: -# eval: (add-hook 'before-save-hook 'time-stamp) -# time-stamp-start: "timestamp='" -# time-stamp-format: "%:y-%02m-%02d" -# time-stamp-end: "'" -# End: diff --git a/thirdparty/grub-2.04/build-aux/depcomp b/thirdparty/grub-2.04/build-aux/depcomp deleted file mode 100755 index 65cbf7093..000000000 --- a/thirdparty/grub-2.04/build-aux/depcomp +++ /dev/null @@ -1,791 +0,0 @@ -#! /bin/sh -# depcomp - compile a program generating dependencies as side-effects - -scriptversion=2018-03-07.03; # UTC - -# Copyright (C) 1999-2018 Free Software Foundation, Inc. - -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2, or (at your option) -# any later version. - -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. - -# You should have received a copy of the GNU General Public License -# along with this program. If not, see . - -# As a special exception to the GNU General Public License, if you -# distribute this file as part of a program that contains a -# configuration script generated by Autoconf, you may include it under -# the same distribution terms that you use for the rest of that program. - -# Originally written by Alexandre Oliva . - -case $1 in - '') - echo "$0: No command. Try '$0 --help' for more information." 1>&2 - exit 1; - ;; - -h | --h*) - cat <<\EOF -Usage: depcomp [--help] [--version] PROGRAM [ARGS] - -Run PROGRAMS ARGS to compile a file, generating dependencies -as side-effects. - -Environment variables: - depmode Dependency tracking mode. - source Source file read by 'PROGRAMS ARGS'. - object Object file output by 'PROGRAMS ARGS'. - DEPDIR directory where to store dependencies. - depfile Dependency file to output. - tmpdepfile Temporary file to use when outputting dependencies. - libtool Whether libtool is used (yes/no). - -Report bugs to . -EOF - exit $? - ;; - -v | --v*) - echo "depcomp $scriptversion" - exit $? - ;; -esac - -# Get the directory component of the given path, and save it in the -# global variables '$dir'. Note that this directory component will -# be either empty or ending with a '/' character. This is deliberate. -set_dir_from () -{ - case $1 in - */*) dir=`echo "$1" | sed -e 's|/[^/]*$|/|'`;; - *) dir=;; - esac -} - -# Get the suffix-stripped basename of the given path, and save it the -# global variable '$base'. -set_base_from () -{ - base=`echo "$1" | sed -e 's|^.*/||' -e 's/\.[^.]*$//'` -} - -# If no dependency file was actually created by the compiler invocation, -# we still have to create a dummy depfile, to avoid errors with the -# Makefile "include basename.Plo" scheme. -make_dummy_depfile () -{ - echo "#dummy" > "$depfile" -} - -# Factor out some common post-processing of the generated depfile. -# Requires the auxiliary global variable '$tmpdepfile' to be set. -aix_post_process_depfile () -{ - # If the compiler actually managed to produce a dependency file, - # post-process it. - if test -f "$tmpdepfile"; then - # Each line is of the form 'foo.o: dependency.h'. - # Do two passes, one to just change these to - # $object: dependency.h - # and one to simply output - # dependency.h: - # which is needed to avoid the deleted-header problem. - { sed -e "s,^.*\.[$lower]*:,$object:," < "$tmpdepfile" - sed -e "s,^.*\.[$lower]*:[$tab ]*,," -e 's,$,:,' < "$tmpdepfile" - } > "$depfile" - rm -f "$tmpdepfile" - else - make_dummy_depfile - fi -} - -# A tabulation character. -tab=' ' -# A newline character. -nl=' -' -# Character ranges might be problematic outside the C locale. -# These definitions help. -upper=ABCDEFGHIJKLMNOPQRSTUVWXYZ -lower=abcdefghijklmnopqrstuvwxyz -digits=0123456789 -alpha=${upper}${lower} - -if test -z "$depmode" || test -z "$source" || test -z "$object"; then - echo "depcomp: Variables source, object and depmode must be set" 1>&2 - exit 1 -fi - -# Dependencies for sub/bar.o or sub/bar.obj go into sub/.deps/bar.Po. -depfile=${depfile-`echo "$object" | - sed 's|[^\\/]*$|'${DEPDIR-.deps}'/&|;s|\.\([^.]*\)$|.P\1|;s|Pobj$|Po|'`} -tmpdepfile=${tmpdepfile-`echo "$depfile" | sed 's/\.\([^.]*\)$/.T\1/'`} - -rm -f "$tmpdepfile" - -# Avoid interferences from the environment. -gccflag= dashmflag= - -# Some modes work just like other modes, but use different flags. We -# parameterize here, but still list the modes in the big case below, -# to make depend.m4 easier to write. Note that we *cannot* use a case -# here, because this file can only contain one case statement. -if test "$depmode" = hp; then - # HP compiler uses -M and no extra arg. - gccflag=-M - depmode=gcc -fi - -if test "$depmode" = dashXmstdout; then - # This is just like dashmstdout with a different argument. - dashmflag=-xM - depmode=dashmstdout -fi - -cygpath_u="cygpath -u -f -" -if test "$depmode" = msvcmsys; then - # This is just like msvisualcpp but w/o cygpath translation. - # Just convert the backslash-escaped backslashes to single forward - # slashes to satisfy depend.m4 - cygpath_u='sed s,\\\\,/,g' - depmode=msvisualcpp -fi - -if test "$depmode" = msvc7msys; then - # This is just like msvc7 but w/o cygpath translation. - # Just convert the backslash-escaped backslashes to single forward - # slashes to satisfy depend.m4 - cygpath_u='sed s,\\\\,/,g' - depmode=msvc7 -fi - -if test "$depmode" = xlc; then - # IBM C/C++ Compilers xlc/xlC can output gcc-like dependency information. - gccflag=-qmakedep=gcc,-MF - depmode=gcc -fi - -case "$depmode" in -gcc3) -## gcc 3 implements dependency tracking that does exactly what -## we want. Yay! Note: for some reason libtool 1.4 doesn't like -## it if -MD -MP comes after the -MF stuff. Hmm. -## Unfortunately, FreeBSD c89 acceptance of flags depends upon -## the command line argument order; so add the flags where they -## appear in depend2.am. Note that the slowdown incurred here -## affects only configure: in makefiles, %FASTDEP% shortcuts this. - for arg - do - case $arg in - -c) set fnord "$@" -MT "$object" -MD -MP -MF "$tmpdepfile" "$arg" ;; - *) set fnord "$@" "$arg" ;; - esac - shift # fnord - shift # $arg - done - "$@" - stat=$? - if test $stat -ne 0; then - rm -f "$tmpdepfile" - exit $stat - fi - mv "$tmpdepfile" "$depfile" - ;; - -gcc) -## Note that this doesn't just cater to obsosete pre-3.x GCC compilers. -## but also to in-use compilers like IMB xlc/xlC and the HP C compiler. -## (see the conditional assignment to $gccflag above). -## There are various ways to get dependency output from gcc. Here's -## why we pick this rather obscure method: -## - Don't want to use -MD because we'd like the dependencies to end -## up in a subdir. Having to rename by hand is ugly. -## (We might end up doing this anyway to support other compilers.) -## - The DEPENDENCIES_OUTPUT environment variable makes gcc act like -## -MM, not -M (despite what the docs say). Also, it might not be -## supported by the other compilers which use the 'gcc' depmode. -## - Using -M directly means running the compiler twice (even worse -## than renaming). - if test -z "$gccflag"; then - gccflag=-MD, - fi - "$@" -Wp,"$gccflag$tmpdepfile" - stat=$? - if test $stat -ne 0; then - rm -f "$tmpdepfile" - exit $stat - fi - rm -f "$depfile" - echo "$object : \\" > "$depfile" - # The second -e expression handles DOS-style file names with drive - # letters. - sed -e 's/^[^:]*: / /' \ - -e 's/^['$alpha']:\/[^:]*: / /' < "$tmpdepfile" >> "$depfile" -## This next piece of magic avoids the "deleted header file" problem. -## The problem is that when a header file which appears in a .P file -## is deleted, the dependency causes make to die (because there is -## typically no way to rebuild the header). We avoid this by adding -## dummy dependencies for each header file. Too bad gcc doesn't do -## this for us directly. -## Some versions of gcc put a space before the ':'. On the theory -## that the space means something, we add a space to the output as -## well. hp depmode also adds that space, but also prefixes the VPATH -## to the object. Take care to not repeat it in the output. -## Some versions of the HPUX 10.20 sed can't process this invocation -## correctly. Breaking it into two sed invocations is a workaround. - tr ' ' "$nl" < "$tmpdepfile" \ - | sed -e 's/^\\$//' -e '/^$/d' -e "s|.*$object$||" -e '/:$/d' \ - | sed -e 's/$/ :/' >> "$depfile" - rm -f "$tmpdepfile" - ;; - -hp) - # This case exists only to let depend.m4 do its work. It works by - # looking at the text of this script. This case will never be run, - # since it is checked for above. - exit 1 - ;; - -sgi) - if test "$libtool" = yes; then - "$@" "-Wp,-MDupdate,$tmpdepfile" - else - "$@" -MDupdate "$tmpdepfile" - fi - stat=$? - if test $stat -ne 0; then - rm -f "$tmpdepfile" - exit $stat - fi - rm -f "$depfile" - - if test -f "$tmpdepfile"; then # yes, the sourcefile depend on other files - echo "$object : \\" > "$depfile" - # Clip off the initial element (the dependent). Don't try to be - # clever and replace this with sed code, as IRIX sed won't handle - # lines with more than a fixed number of characters (4096 in - # IRIX 6.2 sed, 8192 in IRIX 6.5). We also remove comment lines; - # the IRIX cc adds comments like '#:fec' to the end of the - # dependency line. - tr ' ' "$nl" < "$tmpdepfile" \ - | sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' \ - | tr "$nl" ' ' >> "$depfile" - echo >> "$depfile" - # The second pass generates a dummy entry for each header file. - tr ' ' "$nl" < "$tmpdepfile" \ - | sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' -e 's/$/:/' \ - >> "$depfile" - else - make_dummy_depfile - fi - rm -f "$tmpdepfile" - ;; - -xlc) - # This case exists only to let depend.m4 do its work. It works by - # looking at the text of this script. This case will never be run, - # since it is checked for above. - exit 1 - ;; - -aix) - # The C for AIX Compiler uses -M and outputs the dependencies - # in a .u file. In older versions, this file always lives in the - # current directory. Also, the AIX compiler puts '$object:' at the - # start of each line; $object doesn't have directory information. - # Version 6 uses the directory in both cases. - set_dir_from "$object" - set_base_from "$object" - if test "$libtool" = yes; then - tmpdepfile1=$dir$base.u - tmpdepfile2=$base.u - tmpdepfile3=$dir.libs/$base.u - "$@" -Wc,-M - else - tmpdepfile1=$dir$base.u - tmpdepfile2=$dir$base.u - tmpdepfile3=$dir$base.u - "$@" -M - fi - stat=$? - if test $stat -ne 0; then - rm -f "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3" - exit $stat - fi - - for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3" - do - test -f "$tmpdepfile" && break - done - aix_post_process_depfile - ;; - -tcc) - # tcc (Tiny C Compiler) understand '-MD -MF file' since version 0.9.26 - # FIXME: That version still under development at the moment of writing. - # Make that this statement remains true also for stable, released - # versions. - # It will wrap lines (doesn't matter whether long or short) with a - # trailing '\', as in: - # - # foo.o : \ - # foo.c \ - # foo.h \ - # - # It will put a trailing '\' even on the last line, and will use leading - # spaces rather than leading tabs (at least since its commit 0394caf7 - # "Emit spaces for -MD"). - "$@" -MD -MF "$tmpdepfile" - stat=$? - if test $stat -ne 0; then - rm -f "$tmpdepfile" - exit $stat - fi - rm -f "$depfile" - # Each non-empty line is of the form 'foo.o : \' or ' dep.h \'. - # We have to change lines of the first kind to '$object: \'. - sed -e "s|.*:|$object :|" < "$tmpdepfile" > "$depfile" - # And for each line of the second kind, we have to emit a 'dep.h:' - # dummy dependency, to avoid the deleted-header problem. - sed -n -e 's|^ *\(.*\) *\\$|\1:|p' < "$tmpdepfile" >> "$depfile" - rm -f "$tmpdepfile" - ;; - -## The order of this option in the case statement is important, since the -## shell code in configure will try each of these formats in the order -## listed in this file. A plain '-MD' option would be understood by many -## compilers, so we must ensure this comes after the gcc and icc options. -pgcc) - # Portland's C compiler understands '-MD'. - # Will always output deps to 'file.d' where file is the root name of the - # source file under compilation, even if file resides in a subdirectory. - # The object file name does not affect the name of the '.d' file. - # pgcc 10.2 will output - # foo.o: sub/foo.c sub/foo.h - # and will wrap long lines using '\' : - # foo.o: sub/foo.c ... \ - # sub/foo.h ... \ - # ... - set_dir_from "$object" - # Use the source, not the object, to determine the base name, since - # that's sadly what pgcc will do too. - set_base_from "$source" - tmpdepfile=$base.d - - # For projects that build the same source file twice into different object - # files, the pgcc approach of using the *source* file root name can cause - # problems in parallel builds. Use a locking strategy to avoid stomping on - # the same $tmpdepfile. - lockdir=$base.d-lock - trap " - echo '$0: caught signal, cleaning up...' >&2 - rmdir '$lockdir' - exit 1 - " 1 2 13 15 - numtries=100 - i=$numtries - while test $i -gt 0; do - # mkdir is a portable test-and-set. - if mkdir "$lockdir" 2>/dev/null; then - # This process acquired the lock. - "$@" -MD - stat=$? - # Release the lock. - rmdir "$lockdir" - break - else - # If the lock is being held by a different process, wait - # until the winning process is done or we timeout. - while test -d "$lockdir" && test $i -gt 0; do - sleep 1 - i=`expr $i - 1` - done - fi - i=`expr $i - 1` - done - trap - 1 2 13 15 - if test $i -le 0; then - echo "$0: failed to acquire lock after $numtries attempts" >&2 - echo "$0: check lockdir '$lockdir'" >&2 - exit 1 - fi - - if test $stat -ne 0; then - rm -f "$tmpdepfile" - exit $stat - fi - rm -f "$depfile" - # Each line is of the form `foo.o: dependent.h', - # or `foo.o: dep1.h dep2.h \', or ` dep3.h dep4.h \'. - # Do two passes, one to just change these to - # `$object: dependent.h' and one to simply `dependent.h:'. - sed "s,^[^:]*:,$object :," < "$tmpdepfile" > "$depfile" - # Some versions of the HPUX 10.20 sed can't process this invocation - # correctly. Breaking it into two sed invocations is a workaround. - sed 's,^[^:]*: \(.*\)$,\1,;s/^\\$//;/^$/d;/:$/d' < "$tmpdepfile" \ - | sed -e 's/$/ :/' >> "$depfile" - rm -f "$tmpdepfile" - ;; - -hp2) - # The "hp" stanza above does not work with aCC (C++) and HP's ia64 - # compilers, which have integrated preprocessors. The correct option - # to use with these is +Maked; it writes dependencies to a file named - # 'foo.d', which lands next to the object file, wherever that - # happens to be. - # Much of this is similar to the tru64 case; see comments there. - set_dir_from "$object" - set_base_from "$object" - if test "$libtool" = yes; then - tmpdepfile1=$dir$base.d - tmpdepfile2=$dir.libs/$base.d - "$@" -Wc,+Maked - else - tmpdepfile1=$dir$base.d - tmpdepfile2=$dir$base.d - "$@" +Maked - fi - stat=$? - if test $stat -ne 0; then - rm -f "$tmpdepfile1" "$tmpdepfile2" - exit $stat - fi - - for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2" - do - test -f "$tmpdepfile" && break - done - if test -f "$tmpdepfile"; then - sed -e "s,^.*\.[$lower]*:,$object:," "$tmpdepfile" > "$depfile" - # Add 'dependent.h:' lines. - sed -ne '2,${ - s/^ *// - s/ \\*$// - s/$/:/ - p - }' "$tmpdepfile" >> "$depfile" - else - make_dummy_depfile - fi - rm -f "$tmpdepfile" "$tmpdepfile2" - ;; - -tru64) - # The Tru64 compiler uses -MD to generate dependencies as a side - # effect. 'cc -MD -o foo.o ...' puts the dependencies into 'foo.o.d'. - # At least on Alpha/Redhat 6.1, Compaq CCC V6.2-504 seems to put - # dependencies in 'foo.d' instead, so we check for that too. - # Subdirectories are respected. - set_dir_from "$object" - set_base_from "$object" - - if test "$libtool" = yes; then - # Libtool generates 2 separate objects for the 2 libraries. These - # two compilations output dependencies in $dir.libs/$base.o.d and - # in $dir$base.o.d. We have to check for both files, because - # one of the two compilations can be disabled. We should prefer - # $dir$base.o.d over $dir.libs/$base.o.d because the latter is - # automatically cleaned when .libs/ is deleted, while ignoring - # the former would cause a distcleancheck panic. - tmpdepfile1=$dir$base.o.d # libtool 1.5 - tmpdepfile2=$dir.libs/$base.o.d # Likewise. - tmpdepfile3=$dir.libs/$base.d # Compaq CCC V6.2-504 - "$@" -Wc,-MD - else - tmpdepfile1=$dir$base.d - tmpdepfile2=$dir$base.d - tmpdepfile3=$dir$base.d - "$@" -MD - fi - - stat=$? - if test $stat -ne 0; then - rm -f "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3" - exit $stat - fi - - for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3" - do - test -f "$tmpdepfile" && break - done - # Same post-processing that is required for AIX mode. - aix_post_process_depfile - ;; - -msvc7) - if test "$libtool" = yes; then - showIncludes=-Wc,-showIncludes - else - showIncludes=-showIncludes - fi - "$@" $showIncludes > "$tmpdepfile" - stat=$? - grep -v '^Note: including file: ' "$tmpdepfile" - if test $stat -ne 0; then - rm -f "$tmpdepfile" - exit $stat - fi - rm -f "$depfile" - echo "$object : \\" > "$depfile" - # The first sed program below extracts the file names and escapes - # backslashes for cygpath. The second sed program outputs the file - # name when reading, but also accumulates all include files in the - # hold buffer in order to output them again at the end. This only - # works with sed implementations that can handle large buffers. - sed < "$tmpdepfile" -n ' -/^Note: including file: *\(.*\)/ { - s//\1/ - s/\\/\\\\/g - p -}' | $cygpath_u | sort -u | sed -n ' -s/ /\\ /g -s/\(.*\)/'"$tab"'\1 \\/p -s/.\(.*\) \\/\1:/ -H -$ { - s/.*/'"$tab"'/ - G - p -}' >> "$depfile" - echo >> "$depfile" # make sure the fragment doesn't end with a backslash - rm -f "$tmpdepfile" - ;; - -msvc7msys) - # This case exists only to let depend.m4 do its work. It works by - # looking at the text of this script. This case will never be run, - # since it is checked for above. - exit 1 - ;; - -#nosideeffect) - # This comment above is used by automake to tell side-effect - # dependency tracking mechanisms from slower ones. - -dashmstdout) - # Important note: in order to support this mode, a compiler *must* - # always write the preprocessed file to stdout, regardless of -o. - "$@" || exit $? - - # Remove the call to Libtool. - if test "$libtool" = yes; then - while test "X$1" != 'X--mode=compile'; do - shift - done - shift - fi - - # Remove '-o $object'. - IFS=" " - for arg - do - case $arg in - -o) - shift - ;; - $object) - shift - ;; - *) - set fnord "$@" "$arg" - shift # fnord - shift # $arg - ;; - esac - done - - test -z "$dashmflag" && dashmflag=-M - # Require at least two characters before searching for ':' - # in the target name. This is to cope with DOS-style filenames: - # a dependency such as 'c:/foo/bar' could be seen as target 'c' otherwise. - "$@" $dashmflag | - sed "s|^[$tab ]*[^:$tab ][^:][^:]*:[$tab ]*|$object: |" > "$tmpdepfile" - rm -f "$depfile" - cat < "$tmpdepfile" > "$depfile" - # Some versions of the HPUX 10.20 sed can't process this sed invocation - # correctly. Breaking it into two sed invocations is a workaround. - tr ' ' "$nl" < "$tmpdepfile" \ - | sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' \ - | sed -e 's/$/ :/' >> "$depfile" - rm -f "$tmpdepfile" - ;; - -dashXmstdout) - # This case only exists to satisfy depend.m4. It is never actually - # run, as this mode is specially recognized in the preamble. - exit 1 - ;; - -makedepend) - "$@" || exit $? - # Remove any Libtool call - if test "$libtool" = yes; then - while test "X$1" != 'X--mode=compile'; do - shift - done - shift - fi - # X makedepend - shift - cleared=no eat=no - for arg - do - case $cleared in - no) - set ""; shift - cleared=yes ;; - esac - if test $eat = yes; then - eat=no - continue - fi - case "$arg" in - -D*|-I*) - set fnord "$@" "$arg"; shift ;; - # Strip any option that makedepend may not understand. Remove - # the object too, otherwise makedepend will parse it as a source file. - -arch) - eat=yes ;; - -*|$object) - ;; - *) - set fnord "$@" "$arg"; shift ;; - esac - done - obj_suffix=`echo "$object" | sed 's/^.*\././'` - touch "$tmpdepfile" - ${MAKEDEPEND-makedepend} -o"$obj_suffix" -f"$tmpdepfile" "$@" - rm -f "$depfile" - # makedepend may prepend the VPATH from the source file name to the object. - # No need to regex-escape $object, excess matching of '.' is harmless. - sed "s|^.*\($object *:\)|\1|" "$tmpdepfile" > "$depfile" - # Some versions of the HPUX 10.20 sed can't process the last invocation - # correctly. Breaking it into two sed invocations is a workaround. - sed '1,2d' "$tmpdepfile" \ - | tr ' ' "$nl" \ - | sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' \ - | sed -e 's/$/ :/' >> "$depfile" - rm -f "$tmpdepfile" "$tmpdepfile".bak - ;; - -cpp) - # Important note: in order to support this mode, a compiler *must* - # always write the preprocessed file to stdout. - "$@" || exit $? - - # Remove the call to Libtool. - if test "$libtool" = yes; then - while test "X$1" != 'X--mode=compile'; do - shift - done - shift - fi - - # Remove '-o $object'. - IFS=" " - for arg - do - case $arg in - -o) - shift - ;; - $object) - shift - ;; - *) - set fnord "$@" "$arg" - shift # fnord - shift # $arg - ;; - esac - done - - "$@" -E \ - | sed -n -e '/^# [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' \ - -e '/^#line [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' \ - | sed '$ s: \\$::' > "$tmpdepfile" - rm -f "$depfile" - echo "$object : \\" > "$depfile" - cat < "$tmpdepfile" >> "$depfile" - sed < "$tmpdepfile" '/^$/d;s/^ //;s/ \\$//;s/$/ :/' >> "$depfile" - rm -f "$tmpdepfile" - ;; - -msvisualcpp) - # Important note: in order to support this mode, a compiler *must* - # always write the preprocessed file to stdout. - "$@" || exit $? - - # Remove the call to Libtool. - if test "$libtool" = yes; then - while test "X$1" != 'X--mode=compile'; do - shift - done - shift - fi - - IFS=" " - for arg - do - case "$arg" in - -o) - shift - ;; - $object) - shift - ;; - "-Gm"|"/Gm"|"-Gi"|"/Gi"|"-ZI"|"/ZI") - set fnord "$@" - shift - shift - ;; - *) - set fnord "$@" "$arg" - shift - shift - ;; - esac - done - "$@" -E 2>/dev/null | - sed -n '/^#line [0-9][0-9]* "\([^"]*\)"/ s::\1:p' | $cygpath_u | sort -u > "$tmpdepfile" - rm -f "$depfile" - echo "$object : \\" > "$depfile" - sed < "$tmpdepfile" -n -e 's% %\\ %g' -e '/^\(.*\)$/ s::'"$tab"'\1 \\:p' >> "$depfile" - echo "$tab" >> "$depfile" - sed < "$tmpdepfile" -n -e 's% %\\ %g' -e '/^\(.*\)$/ s::\1\::p' >> "$depfile" - rm -f "$tmpdepfile" - ;; - -msvcmsys) - # This case exists only to let depend.m4 do its work. It works by - # looking at the text of this script. This case will never be run, - # since it is checked for above. - exit 1 - ;; - -none) - exec "$@" - ;; - -*) - echo "Unknown depmode $depmode" 1>&2 - exit 1 - ;; -esac - -exit 0 - -# Local Variables: -# mode: shell-script -# sh-indentation: 2 -# eval: (add-hook 'before-save-hook 'time-stamp) -# time-stamp-start: "scriptversion=" -# time-stamp-format: "%:y-%02m-%02d.%02H" -# time-stamp-time-zone: "UTC0" -# time-stamp-end: "; # UTC" -# End: diff --git a/thirdparty/grub-2.04/build-aux/gitlog-to-changelog b/thirdparty/grub-2.04/build-aux/gitlog-to-changelog deleted file mode 100755 index deddef244..000000000 --- a/thirdparty/grub-2.04/build-aux/gitlog-to-changelog +++ /dev/null @@ -1,499 +0,0 @@ -eval '(exit $?0)' && eval 'exec perl -wS "$0" "$@"' - & eval 'exec perl -wS "$0" $argv:q' - if 0; -# Convert git log output to ChangeLog format. - -my $VERSION = '2018-03-07 03:47'; # UTC -# The definition above must lie within the first 8 lines in order -# for the Emacs time-stamp write hook (at end) to update it. -# If you change this file with Emacs, please let the write hook -# do its job. Otherwise, update this string manually. - -# Copyright (C) 2008-2019 Free Software Foundation, Inc. - -# This program is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. - -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. - -# You should have received a copy of the GNU General Public License -# along with this program. If not, see . - -# Written by Jim Meyering - -use strict; -use warnings; -use Getopt::Long; -use POSIX qw(strftime); - -(my $ME = $0) =~ s|.*/||; - -# use File::Coda; # https://meyering.net/code/Coda/ -END { - defined fileno STDOUT or return; - close STDOUT and return; - warn "$ME: failed to close standard output: $!\n"; - $? ||= 1; -} - -sub usage ($) -{ - my ($exit_code) = @_; - my $STREAM = ($exit_code == 0 ? *STDOUT : *STDERR); - if ($exit_code != 0) - { - print $STREAM "Try '$ME --help' for more information.\n"; - } - else - { - print $STREAM < ChangeLog - $ME -- -n 5 foo > last-5-commits-to-branch-foo - -SPECIAL SYNTAX: - -The following types of strings are interpreted specially when they appear -at the beginning of a log message line. They are not copied to the output. - - Copyright-paperwork-exempt: Yes - Append the "(tiny change)" notation to the usual "date name email" - ChangeLog header to mark a change that does not require a copyright - assignment. - Co-authored-by: Joe User - List the specified name and email address on a second - ChangeLog header, denoting a co-author. - Signed-off-by: Joe User - These lines are simply elided. - -In a FILE specified via --amend, comment lines (starting with "#") are ignored. -FILE must consist of pairs where SHA is a 40-byte SHA1 (alone on -a line) referring to a commit in the current project, and CODE refers to one -or more consecutive lines of Perl code. Pairs must be separated by one or -more blank line. - -Here is sample input for use with --amend=FILE, from coreutils: - -3a169f4c5d9159283548178668d2fae6fced3030 -# fix typo in title: -s/all tile types/all file types/ - -1379ed974f1fa39b12e2ffab18b3f7a607082202 -# Due to a bug in vc-dwim, I mis-attributed a patch by Paul to myself. -# Change the author to be Paul. Note the escaped "@": -s,Jim .*>,Paul Eggert , - -EOF - } - exit $exit_code; -} - -# If the string $S is a well-behaved file name, simply return it. -# If it contains white space, quotes, etc., quote it, and return the new string. -sub shell_quote($) -{ - my ($s) = @_; - if ($s =~ m![^\w+/.,-]!) - { - # Convert each single quote to '\'' - $s =~ s/\'/\'\\\'\'/g; - # Then single quote the string. - $s = "'$s'"; - } - return $s; -} - -sub quoted_cmd(@) -{ - return join (' ', map {shell_quote $_} @_); -} - -# Parse file F. -# Comment lines (starting with "#") are ignored. -# F must consist of pairs where SHA is a 40-byte SHA1 -# (alone on a line) referring to a commit in the current project, and -# CODE refers to one or more consecutive lines of Perl code. -# Pairs must be separated by one or more blank line. -sub parse_amend_file($) -{ - my ($f) = @_; - - open F, '<', $f - or die "$ME: $f: failed to open for reading: $!\n"; - - my $fail; - my $h = {}; - my $in_code = 0; - my $sha; - while (defined (my $line = )) - { - $line =~ /^\#/ - and next; - chomp $line; - $line eq '' - and $in_code = 0, next; - - if (!$in_code) - { - $line =~ /^([0-9a-fA-F]{40})$/ - or (warn "$ME: $f:$.: invalid line; expected an SHA1\n"), - $fail = 1, next; - $sha = lc $1; - $in_code = 1; - exists $h->{$sha} - and (warn "$ME: $f:$.: duplicate SHA1\n"), - $fail = 1, next; - } - else - { - $h->{$sha} ||= ''; - $h->{$sha} .= "$line\n"; - } - } - close F; - - $fail - and exit 1; - - return $h; -} - -# git_dir_option $SRCDIR -# -# From $SRCDIR, the --git-dir option to pass to git (none if $SRCDIR -# is undef). Return as a list (0 or 1 element). -sub git_dir_option($) -{ - my ($srcdir) = @_; - my @res = (); - if (defined $srcdir) - { - my $qdir = shell_quote $srcdir; - my $cmd = "cd $qdir && git rev-parse --show-toplevel"; - my $qcmd = shell_quote $cmd; - my $git_dir = qx($cmd); - defined $git_dir - or die "$ME: cannot run $qcmd: $!\n"; - $? == 0 - or die "$ME: $qcmd had unexpected exit code or signal ($?)\n"; - chomp $git_dir; - push @res, "--git-dir=$git_dir/.git"; - } - @res; -} - -{ - my $since_date; - my $until_date; - my $format_string = '%s%n%b%n'; - my $amend_file; - my $append_dot = 0; - my $cluster = 1; - my $ignore_matching; - my $ignore_line; - my $strip_tab = 0; - my $strip_cherry_pick = 0; - my $srcdir; - GetOptions - ( - help => sub { usage 0 }, - version => sub { print "$ME version $VERSION\n"; exit }, - 'since=s' => \$since_date, - 'until=s' => \$until_date, - 'format=s' => \$format_string, - 'amend=s' => \$amend_file, - 'append-dot' => \$append_dot, - 'cluster!' => \$cluster, - 'ignore-matching=s' => \$ignore_matching, - 'ignore-line=s' => \$ignore_line, - 'strip-tab' => \$strip_tab, - 'strip-cherry-pick' => \$strip_cherry_pick, - 'srcdir=s' => \$srcdir, - ) or usage 1; - - defined $since_date - and unshift @ARGV, "--since=$since_date"; - defined $until_date - and unshift @ARGV, "--until=$until_date"; - - # This is a hash that maps an SHA1 to perl code (i.e., s/old/new/) - # that makes a correction in the log or attribution of that commit. - my $amend_code = defined $amend_file ? parse_amend_file $amend_file : {}; - - my @cmd = ('git', - git_dir_option $srcdir, - qw(log --log-size), - '--pretty=format:%H:%ct %an <%ae>%n%n'.$format_string, @ARGV); - open PIPE, '-|', @cmd - or die ("$ME: failed to run '". quoted_cmd (@cmd) ."': $!\n" - . "(Is your Git too old? Version 1.5.1 or later is required.)\n"); - - my $prev_multi_paragraph; - my $prev_date_line = ''; - my @prev_coauthors = (); - my @skipshas = (); - while (1) - { - defined (my $in = ) - or last; - $in =~ /^log size (\d+)$/ - or die "$ME:$.: Invalid line (expected log size):\n$in"; - my $log_nbytes = $1; - - my $log; - my $n_read = read PIPE, $log, $log_nbytes; - $n_read == $log_nbytes - or die "$ME:$.: unexpected EOF\n"; - - # Extract leading hash. - my ($sha, $rest) = split ':', $log, 2; - defined $sha - or die "$ME:$.: malformed log entry\n"; - $sha =~ /^[0-9a-fA-F]{40}$/ - or die "$ME:$.: invalid SHA1: $sha\n"; - - my $skipflag = 0; - if (@skipshas) - { - foreach(@skipshas) - { - if ($sha =~ /^$_/) - { - $skipflag = $_; - last; - } - } - } - - # If this commit's log requires any transformation, do it now. - my $code = $amend_code->{$sha}; - if (defined $code) - { - eval 'use Safe'; - my $s = new Safe; - # Put the unpreprocessed entry into "$_". - $_ = $rest; - - # Let $code operate on it, safely. - my $r = $s->reval("$code") - or die "$ME:$.:$sha: failed to eval \"$code\":\n$@\n"; - - # Note that we've used this entry. - delete $amend_code->{$sha}; - - # Update $rest upon success. - $rest = $_; - } - - # Remove lines inserted by "git cherry-pick". - if ($strip_cherry_pick) - { - $rest =~ s/^\s*Conflicts:\n.*//sm; - $rest =~ s/^\s*\(cherry picked from commit [\da-f]+\)\n//m; - } - - my @line = split /[ \t]*\n/, $rest; - my $author_line = shift @line; - defined $author_line - or die "$ME:$.: unexpected EOF\n"; - $author_line =~ /^(\d+) (.*>)$/ - or die "$ME:$.: Invalid line " - . "(expected date/author/email):\n$author_line\n"; - - # Format 'Copyright-paperwork-exempt: Yes' as a standard ChangeLog - # `(tiny change)' annotation. - my $tiny = (grep (/^(?:Copyright-paperwork-exempt|Tiny-change):\s+[Yy]es$/, @line) - ? ' (tiny change)' : ''); - - my $date_line = sprintf "%s %s$tiny\n", - strftime ("%Y-%m-%d", localtime ($1)), $2; - - my @coauthors = grep /^Co-authored-by:.*$/, @line; - # Omit meta-data lines we've already interpreted. - @line = grep !/^(?:Signed-off-by:[ ].*>$ - |Co-authored-by:[ ] - |Copyright-paperwork-exempt:[ ] - |Tiny-change:[ ] - )/x, @line; - - # Remove leading and trailing blank lines. - if (@line) - { - while ($line[0] =~ /^\s*$/) { shift @line; } - while ($line[$#line] =~ /^\s*$/) { pop @line; } - } - - # Handle Emacs gitmerge.el "skipped" commits. - # Yes, this should be controlled by an option. So sue me. - if ( grep /^(; )?Merge from /, @line ) - { - my $found = 0; - foreach (@line) - { - if (grep /^The following commit.*skipped:$/, $_) - { - $found = 1; - ## Reset at each merge to reduce chance of false matches. - @skipshas = (); - next; - } - if ($found && $_ =~ /^([0-9a-fA-F]{7,}) [^ ]/) - { - push ( @skipshas, $1 ); - } - } - } - - # Ignore commits that match the --ignore-matching pattern, if specified. - if (defined $ignore_matching && @line && $line[0] =~ /$ignore_matching/) - { - $skipflag = 1; - } - elsif ($skipflag) - { - ## Perhaps only warn if a pattern matches more than once? - warn "$ME: warning: skipping $sha due to $skipflag\n"; - } - - if (! $skipflag) - { - if (defined $ignore_line && @line) - { - @line = grep ! /$ignore_line/, @line; - while ($line[$#line] =~ /^\s*$/) { pop @line; } - } - - # Record whether there are two or more paragraphs. - my $multi_paragraph = grep /^\s*$/, @line; - - # Format 'Co-authored-by: A U Thor ' lines in - # standard multi-author ChangeLog format. - for (@coauthors) - { - s/^Co-authored-by:\s*/\t /; - s/\s*/ - or warn "$ME: warning: missing email address for " - . substr ($_, 5) . "\n"; - } - - # If clustering of commit messages has been disabled, if this header - # would be different from the previous date/name/etc. header, - # or if this or the previous entry consists of two or more paragraphs, - # then print the header. - if ( ! $cluster - || $date_line ne $prev_date_line - || "@coauthors" ne "@prev_coauthors" - || $multi_paragraph - || $prev_multi_paragraph) - { - $prev_date_line eq '' - or print "\n"; - print $date_line; - @coauthors - and print join ("\n", @coauthors), "\n"; - } - $prev_date_line = $date_line; - @prev_coauthors = @coauthors; - $prev_multi_paragraph = $multi_paragraph; - - # If there were any lines - if (@line == 0) - { - warn "$ME: warning: empty commit message:\n $date_line\n"; - } - else - { - if ($append_dot) - { - # If the first line of the message has enough room, then - if (length $line[0] < 72) - { - # append a dot if there is no other punctuation or blank - # at the end. - $line[0] =~ /[[:punct:]\s]$/ - or $line[0] .= '.'; - } - } - - # Remove one additional leading TAB from each line. - $strip_tab - and map { s/^\t// } @line; - - # Prefix each non-empty line with a TAB. - @line = map { length $_ ? "\t$_" : '' } @line; - - print "\n", join ("\n", @line), "\n"; - } - } - - defined ($in = ) - or last; - $in ne "\n" - and die "$ME:$.: unexpected line:\n$in"; - } - - close PIPE - or die "$ME: error closing pipe from " . quoted_cmd (@cmd) . "\n"; - # FIXME-someday: include $PROCESS_STATUS in the diagnostic - - # Complain about any unused entry in the --amend=F specified file. - my $fail = 0; - foreach my $sha (keys %$amend_code) - { - warn "$ME:$amend_file: unused entry: $sha\n"; - $fail = 1; - } - - exit $fail; -} - -# Local Variables: -# mode: perl -# indent-tabs-mode: nil -# eval: (add-hook 'before-save-hook 'time-stamp) -# time-stamp-start: "my $VERSION = '" -# time-stamp-format: "%:y-%02m-%02d %02H:%02M" -# time-stamp-time-zone: "UTC0" -# time-stamp-end: "'; # UTC" -# End: diff --git a/thirdparty/grub-2.04/build-aux/install-sh b/thirdparty/grub-2.04/build-aux/install-sh deleted file mode 100755 index 8175c640f..000000000 --- a/thirdparty/grub-2.04/build-aux/install-sh +++ /dev/null @@ -1,518 +0,0 @@ -#!/bin/sh -# install - install a program, script, or datafile - -scriptversion=2018-03-11.20; # UTC - -# This originates from X11R5 (mit/util/scripts/install.sh), which was -# later released in X11R6 (xc/config/util/install.sh) with the -# following copyright and license. -# -# Copyright (C) 1994 X Consortium -# -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documentation files (the "Software"), to -# deal in the Software without restriction, including without limitation the -# rights to use, copy, modify, merge, publish, distribute, sublicense, and/or -# sell copies of the Software, and to permit persons to whom the Software is -# furnished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# X CONSORTIUM BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN -# AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNEC- -# TION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -# -# Except as contained in this notice, the name of the X Consortium shall not -# be used in advertising or otherwise to promote the sale, use or other deal- -# ings in this Software without prior written authorization from the X Consor- -# tium. -# -# -# FSF changes to this file are in the public domain. -# -# Calling this script install-sh is preferred over install.sh, to prevent -# 'make' implicit rules from creating a file called install from it -# when there is no Makefile. -# -# This script is compatible with the BSD install script, but was written -# from scratch. - -tab=' ' -nl=' -' -IFS=" $tab$nl" - -# Set DOITPROG to "echo" to test this script. - -doit=${DOITPROG-} -doit_exec=${doit:-exec} - -# Put in absolute file names if you don't have them in your path; -# or use environment vars. - -chgrpprog=${CHGRPPROG-chgrp} -chmodprog=${CHMODPROG-chmod} -chownprog=${CHOWNPROG-chown} -cmpprog=${CMPPROG-cmp} -cpprog=${CPPROG-cp} -mkdirprog=${MKDIRPROG-mkdir} -mvprog=${MVPROG-mv} -rmprog=${RMPROG-rm} -stripprog=${STRIPPROG-strip} - -posix_mkdir= - -# Desired mode of installed file. -mode=0755 - -chgrpcmd= -chmodcmd=$chmodprog -chowncmd= -mvcmd=$mvprog -rmcmd="$rmprog -f" -stripcmd= - -src= -dst= -dir_arg= -dst_arg= - -copy_on_change=false -is_target_a_directory=possibly - -usage="\ -Usage: $0 [OPTION]... [-T] SRCFILE DSTFILE - or: $0 [OPTION]... SRCFILES... DIRECTORY - or: $0 [OPTION]... -t DIRECTORY SRCFILES... - or: $0 [OPTION]... -d DIRECTORIES... - -In the 1st form, copy SRCFILE to DSTFILE. -In the 2nd and 3rd, copy all SRCFILES to DIRECTORY. -In the 4th, create DIRECTORIES. - -Options: - --help display this help and exit. - --version display version info and exit. - - -c (ignored) - -C install only if different (preserve the last data modification time) - -d create directories instead of installing files. - -g GROUP $chgrpprog installed files to GROUP. - -m MODE $chmodprog installed files to MODE. - -o USER $chownprog installed files to USER. - -s $stripprog installed files. - -t DIRECTORY install into DIRECTORY. - -T report an error if DSTFILE is a directory. - -Environment variables override the default commands: - CHGRPPROG CHMODPROG CHOWNPROG CMPPROG CPPROG MKDIRPROG MVPROG - RMPROG STRIPPROG -" - -while test $# -ne 0; do - case $1 in - -c) ;; - - -C) copy_on_change=true;; - - -d) dir_arg=true;; - - -g) chgrpcmd="$chgrpprog $2" - shift;; - - --help) echo "$usage"; exit $?;; - - -m) mode=$2 - case $mode in - *' '* | *"$tab"* | *"$nl"* | *'*'* | *'?'* | *'['*) - echo "$0: invalid mode: $mode" >&2 - exit 1;; - esac - shift;; - - -o) chowncmd="$chownprog $2" - shift;; - - -s) stripcmd=$stripprog;; - - -t) - is_target_a_directory=always - dst_arg=$2 - # Protect names problematic for 'test' and other utilities. - case $dst_arg in - -* | [=\(\)!]) dst_arg=./$dst_arg;; - esac - shift;; - - -T) is_target_a_directory=never;; - - --version) echo "$0 $scriptversion"; exit $?;; - - --) shift - break;; - - -*) echo "$0: invalid option: $1" >&2 - exit 1;; - - *) break;; - esac - shift -done - -# We allow the use of options -d and -T together, by making -d -# take the precedence; this is for compatibility with GNU install. - -if test -n "$dir_arg"; then - if test -n "$dst_arg"; then - echo "$0: target directory not allowed when installing a directory." >&2 - exit 1 - fi -fi - -if test $# -ne 0 && test -z "$dir_arg$dst_arg"; then - # When -d is used, all remaining arguments are directories to create. - # When -t is used, the destination is already specified. - # Otherwise, the last argument is the destination. Remove it from $@. - for arg - do - if test -n "$dst_arg"; then - # $@ is not empty: it contains at least $arg. - set fnord "$@" "$dst_arg" - shift # fnord - fi - shift # arg - dst_arg=$arg - # Protect names problematic for 'test' and other utilities. - case $dst_arg in - -* | [=\(\)!]) dst_arg=./$dst_arg;; - esac - done -fi - -if test $# -eq 0; then - if test -z "$dir_arg"; then - echo "$0: no input file specified." >&2 - exit 1 - fi - # It's OK to call 'install-sh -d' without argument. - # This can happen when creating conditional directories. - exit 0 -fi - -if test -z "$dir_arg"; then - if test $# -gt 1 || test "$is_target_a_directory" = always; then - if test ! -d "$dst_arg"; then - echo "$0: $dst_arg: Is not a directory." >&2 - exit 1 - fi - fi -fi - -if test -z "$dir_arg"; then - do_exit='(exit $ret); exit $ret' - trap "ret=129; $do_exit" 1 - trap "ret=130; $do_exit" 2 - trap "ret=141; $do_exit" 13 - trap "ret=143; $do_exit" 15 - - # Set umask so as not to create temps with too-generous modes. - # However, 'strip' requires both read and write access to temps. - case $mode in - # Optimize common cases. - *644) cp_umask=133;; - *755) cp_umask=22;; - - *[0-7]) - if test -z "$stripcmd"; then - u_plus_rw= - else - u_plus_rw='% 200' - fi - cp_umask=`expr '(' 777 - $mode % 1000 ')' $u_plus_rw`;; - *) - if test -z "$stripcmd"; then - u_plus_rw= - else - u_plus_rw=,u+rw - fi - cp_umask=$mode$u_plus_rw;; - esac -fi - -for src -do - # Protect names problematic for 'test' and other utilities. - case $src in - -* | [=\(\)!]) src=./$src;; - esac - - if test -n "$dir_arg"; then - dst=$src - dstdir=$dst - test -d "$dstdir" - dstdir_status=$? - else - - # Waiting for this to be detected by the "$cpprog $src $dsttmp" command - # might cause directories to be created, which would be especially bad - # if $src (and thus $dsttmp) contains '*'. - if test ! -f "$src" && test ! -d "$src"; then - echo "$0: $src does not exist." >&2 - exit 1 - fi - - if test -z "$dst_arg"; then - echo "$0: no destination specified." >&2 - exit 1 - fi - dst=$dst_arg - - # If destination is a directory, append the input filename. - if test -d "$dst"; then - if test "$is_target_a_directory" = never; then - echo "$0: $dst_arg: Is a directory" >&2 - exit 1 - fi - dstdir=$dst - dstbase=`basename "$src"` - case $dst in - */) dst=$dst$dstbase;; - *) dst=$dst/$dstbase;; - esac - dstdir_status=0 - else - dstdir=`dirname "$dst"` - test -d "$dstdir" - dstdir_status=$? - fi - fi - - case $dstdir in - */) dstdirslash=$dstdir;; - *) dstdirslash=$dstdir/;; - esac - - obsolete_mkdir_used=false - - if test $dstdir_status != 0; then - case $posix_mkdir in - '') - # Create intermediate dirs using mode 755 as modified by the umask. - # This is like FreeBSD 'install' as of 1997-10-28. - umask=`umask` - case $stripcmd.$umask in - # Optimize common cases. - *[2367][2367]) mkdir_umask=$umask;; - .*0[02][02] | .[02][02] | .[02]) mkdir_umask=22;; - - *[0-7]) - mkdir_umask=`expr $umask + 22 \ - - $umask % 100 % 40 + $umask % 20 \ - - $umask % 10 % 4 + $umask % 2 - `;; - *) mkdir_umask=$umask,go-w;; - esac - - # With -d, create the new directory with the user-specified mode. - # Otherwise, rely on $mkdir_umask. - if test -n "$dir_arg"; then - mkdir_mode=-m$mode - else - mkdir_mode= - fi - - posix_mkdir=false - case $umask in - *[123567][0-7][0-7]) - # POSIX mkdir -p sets u+wx bits regardless of umask, which - # is incompatible with FreeBSD 'install' when (umask & 300) != 0. - ;; - *) - # Note that $RANDOM variable is not portable (e.g. dash); Use it - # here however when possible just to lower collision chance. - tmpdir=${TMPDIR-/tmp}/ins$RANDOM-$$ - - trap 'ret=$?; rmdir "$tmpdir/a/b" "$tmpdir/a" "$tmpdir" 2>/dev/null; exit $ret' 0 - - # Because "mkdir -p" follows existing symlinks and we likely work - # directly in world-writeable /tmp, make sure that the '$tmpdir' - # directory is successfully created first before we actually test - # 'mkdir -p' feature. - if (umask $mkdir_umask && - $mkdirprog $mkdir_mode "$tmpdir" && - exec $mkdirprog $mkdir_mode -p -- "$tmpdir/a/b") >/dev/null 2>&1 - then - if test -z "$dir_arg" || { - # Check for POSIX incompatibilities with -m. - # HP-UX 11.23 and IRIX 6.5 mkdir -m -p sets group- or - # other-writable bit of parent directory when it shouldn't. - # FreeBSD 6.1 mkdir -m -p sets mode of existing directory. - test_tmpdir="$tmpdir/a" - ls_ld_tmpdir=`ls -ld "$test_tmpdir"` - case $ls_ld_tmpdir in - d????-?r-*) different_mode=700;; - d????-?--*) different_mode=755;; - *) false;; - esac && - $mkdirprog -m$different_mode -p -- "$test_tmpdir" && { - ls_ld_tmpdir_1=`ls -ld "$test_tmpdir"` - test "$ls_ld_tmpdir" = "$ls_ld_tmpdir_1" - } - } - then posix_mkdir=: - fi - rmdir "$tmpdir/a/b" "$tmpdir/a" "$tmpdir" - else - # Remove any dirs left behind by ancient mkdir implementations. - rmdir ./$mkdir_mode ./-p ./-- "$tmpdir" 2>/dev/null - fi - trap '' 0;; - esac;; - esac - - if - $posix_mkdir && ( - umask $mkdir_umask && - $doit_exec $mkdirprog $mkdir_mode -p -- "$dstdir" - ) - then : - else - - # The umask is ridiculous, or mkdir does not conform to POSIX, - # or it failed possibly due to a race condition. Create the - # directory the slow way, step by step, checking for races as we go. - - case $dstdir in - /*) prefix='/';; - [-=\(\)!]*) prefix='./';; - *) prefix='';; - esac - - oIFS=$IFS - IFS=/ - set -f - set fnord $dstdir - shift - set +f - IFS=$oIFS - - prefixes= - - for d - do - test X"$d" = X && continue - - prefix=$prefix$d - if test -d "$prefix"; then - prefixes= - else - if $posix_mkdir; then - (umask=$mkdir_umask && - $doit_exec $mkdirprog $mkdir_mode -p -- "$dstdir") && break - # Don't fail if two instances are running concurrently. - test -d "$prefix" || exit 1 - else - case $prefix in - *\'*) qprefix=`echo "$prefix" | sed "s/'/'\\\\\\\\''/g"`;; - *) qprefix=$prefix;; - esac - prefixes="$prefixes '$qprefix'" - fi - fi - prefix=$prefix/ - done - - if test -n "$prefixes"; then - # Don't fail if two instances are running concurrently. - (umask $mkdir_umask && - eval "\$doit_exec \$mkdirprog $prefixes") || - test -d "$dstdir" || exit 1 - obsolete_mkdir_used=true - fi - fi - fi - - if test -n "$dir_arg"; then - { test -z "$chowncmd" || $doit $chowncmd "$dst"; } && - { test -z "$chgrpcmd" || $doit $chgrpcmd "$dst"; } && - { test "$obsolete_mkdir_used$chowncmd$chgrpcmd" = false || - test -z "$chmodcmd" || $doit $chmodcmd $mode "$dst"; } || exit 1 - else - - # Make a couple of temp file names in the proper directory. - dsttmp=${dstdirslash}_inst.$$_ - rmtmp=${dstdirslash}_rm.$$_ - - # Trap to clean up those temp files at exit. - trap 'ret=$?; rm -f "$dsttmp" "$rmtmp" && exit $ret' 0 - - # Copy the file name to the temp name. - (umask $cp_umask && $doit_exec $cpprog "$src" "$dsttmp") && - - # and set any options; do chmod last to preserve setuid bits. - # - # If any of these fail, we abort the whole thing. If we want to - # ignore errors from any of these, just make sure not to ignore - # errors from the above "$doit $cpprog $src $dsttmp" command. - # - { test -z "$chowncmd" || $doit $chowncmd "$dsttmp"; } && - { test -z "$chgrpcmd" || $doit $chgrpcmd "$dsttmp"; } && - { test -z "$stripcmd" || $doit $stripcmd "$dsttmp"; } && - { test -z "$chmodcmd" || $doit $chmodcmd $mode "$dsttmp"; } && - - # If -C, don't bother to copy if it wouldn't change the file. - if $copy_on_change && - old=`LC_ALL=C ls -dlL "$dst" 2>/dev/null` && - new=`LC_ALL=C ls -dlL "$dsttmp" 2>/dev/null` && - set -f && - set X $old && old=:$2:$4:$5:$6 && - set X $new && new=:$2:$4:$5:$6 && - set +f && - test "$old" = "$new" && - $cmpprog "$dst" "$dsttmp" >/dev/null 2>&1 - then - rm -f "$dsttmp" - else - # Rename the file to the real destination. - $doit $mvcmd -f "$dsttmp" "$dst" 2>/dev/null || - - # The rename failed, perhaps because mv can't rename something else - # to itself, or perhaps because mv is so ancient that it does not - # support -f. - { - # Now remove or move aside any old file at destination location. - # We try this two ways since rm can't unlink itself on some - # systems and the destination file might be busy for other - # reasons. In this case, the final cleanup might fail but the new - # file should still install successfully. - { - test ! -f "$dst" || - $doit $rmcmd -f "$dst" 2>/dev/null || - { $doit $mvcmd -f "$dst" "$rmtmp" 2>/dev/null && - { $doit $rmcmd -f "$rmtmp" 2>/dev/null; :; } - } || - { echo "$0: cannot unlink or rename $dst" >&2 - (exit 1); exit 1 - } - } && - - # Now rename the file to the real destination. - $doit $mvcmd "$dsttmp" "$dst" - } - fi || exit 1 - - trap '' 0 - fi -done - -# Local variables: -# eval: (add-hook 'before-save-hook 'time-stamp) -# time-stamp-start: "scriptversion=" -# time-stamp-format: "%:y-%02m-%02d.%02H" -# time-stamp-time-zone: "UTC0" -# time-stamp-end: "; # UTC" -# End: diff --git a/thirdparty/grub-2.04/build-aux/mdate-sh b/thirdparty/grub-2.04/build-aux/mdate-sh deleted file mode 100755 index 8c7a5901a..000000000 --- a/thirdparty/grub-2.04/build-aux/mdate-sh +++ /dev/null @@ -1,228 +0,0 @@ -#!/bin/sh -# Get modification time of a file or directory and pretty-print it. - -scriptversion=2018-03-07.03; # UTC - -# Copyright (C) 1995-2018 Free Software Foundation, Inc. -# written by Ulrich Drepper , June 1995 -# -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2, or (at your option) -# any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program. If not, see . - -# As a special exception to the GNU General Public License, if you -# distribute this file as part of a program that contains a -# configuration script generated by Autoconf, you may include it under -# the same distribution terms that you use for the rest of that program. - -# This file is maintained in Automake, please report -# bugs to or send patches to -# . - -if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then - emulate sh - NULLCMD=: - # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which - # is contrary to our usage. Disable this feature. - alias -g '${1+"$@"}'='"$@"' - setopt NO_GLOB_SUBST -fi - -case $1 in - '') - echo "$0: No file. Try '$0 --help' for more information." 1>&2 - exit 1; - ;; - -h | --h*) - cat <<\EOF -Usage: mdate-sh [--help] [--version] FILE - -Pretty-print the modification day of FILE, in the format: -1 January 1970 - -Report bugs to . -EOF - exit $? - ;; - -v | --v*) - echo "mdate-sh $scriptversion" - exit $? - ;; -esac - -error () -{ - echo "$0: $1" >&2 - exit 1 -} - - -# Prevent date giving response in another language. -LANG=C -export LANG -LC_ALL=C -export LC_ALL -LC_TIME=C -export LC_TIME - -# Use UTC to get reproducible result. -TZ=UTC0 -export TZ - -# GNU ls changes its time format in response to the TIME_STYLE -# variable. Since we cannot assume 'unset' works, revert this -# variable to its documented default. -if test "${TIME_STYLE+set}" = set; then - TIME_STYLE=posix-long-iso - export TIME_STYLE -fi - -save_arg1=$1 - -# Find out how to get the extended ls output of a file or directory. -if ls -L /dev/null 1>/dev/null 2>&1; then - ls_command='ls -L -l -d' -else - ls_command='ls -l -d' -fi -# Avoid user/group names that might have spaces, when possible. -if ls -n /dev/null 1>/dev/null 2>&1; then - ls_command="$ls_command -n" -fi - -# A 'ls -l' line looks as follows on OS/2. -# drwxrwx--- 0 Aug 11 2001 foo -# This differs from Unix, which adds ownership information. -# drwxrwx--- 2 root root 4096 Aug 11 2001 foo -# -# To find the date, we split the line on spaces and iterate on words -# until we find a month. This cannot work with files whose owner is a -# user named "Jan", or "Feb", etc. However, it's unlikely that '/' -# will be owned by a user whose name is a month. So we first look at -# the extended ls output of the root directory to decide how many -# words should be skipped to get the date. - -# On HPUX /bin/sh, "set" interprets "-rw-r--r--" as options, so the "x" below. -set x`$ls_command /` - -# Find which argument is the month. -month= -command= -until test $month -do - test $# -gt 0 || error "failed parsing '$ls_command /' output" - shift - # Add another shift to the command. - command="$command shift;" - case $1 in - Jan) month=January; nummonth=1;; - Feb) month=February; nummonth=2;; - Mar) month=March; nummonth=3;; - Apr) month=April; nummonth=4;; - May) month=May; nummonth=5;; - Jun) month=June; nummonth=6;; - Jul) month=July; nummonth=7;; - Aug) month=August; nummonth=8;; - Sep) month=September; nummonth=9;; - Oct) month=October; nummonth=10;; - Nov) month=November; nummonth=11;; - Dec) month=December; nummonth=12;; - esac -done - -test -n "$month" || error "failed parsing '$ls_command /' output" - -# Get the extended ls output of the file or directory. -set dummy x`eval "$ls_command \"\\\$save_arg1\""` - -# Remove all preceding arguments -eval $command - -# Because of the dummy argument above, month is in $2. -# -# On a POSIX system, we should have -# -# $# = 5 -# $1 = file size -# $2 = month -# $3 = day -# $4 = year or time -# $5 = filename -# -# On Darwin 7.7.0 and 7.6.0, we have -# -# $# = 4 -# $1 = day -# $2 = month -# $3 = year or time -# $4 = filename - -# Get the month. -case $2 in - Jan) month=January; nummonth=1;; - Feb) month=February; nummonth=2;; - Mar) month=March; nummonth=3;; - Apr) month=April; nummonth=4;; - May) month=May; nummonth=5;; - Jun) month=June; nummonth=6;; - Jul) month=July; nummonth=7;; - Aug) month=August; nummonth=8;; - Sep) month=September; nummonth=9;; - Oct) month=October; nummonth=10;; - Nov) month=November; nummonth=11;; - Dec) month=December; nummonth=12;; -esac - -case $3 in - ???*) day=$1;; - *) day=$3; shift;; -esac - -# Here we have to deal with the problem that the ls output gives either -# the time of day or the year. -case $3 in - *:*) set `date`; eval year=\$$# - case $2 in - Jan) nummonthtod=1;; - Feb) nummonthtod=2;; - Mar) nummonthtod=3;; - Apr) nummonthtod=4;; - May) nummonthtod=5;; - Jun) nummonthtod=6;; - Jul) nummonthtod=7;; - Aug) nummonthtod=8;; - Sep) nummonthtod=9;; - Oct) nummonthtod=10;; - Nov) nummonthtod=11;; - Dec) nummonthtod=12;; - esac - # For the first six month of the year the time notation can also - # be used for files modified in the last year. - if (expr $nummonth \> $nummonthtod) > /dev/null; - then - year=`expr $year - 1` - fi;; - *) year=$3;; -esac - -# The result. -echo $day $month $year - -# Local Variables: -# mode: shell-script -# sh-indentation: 2 -# eval: (add-hook 'before-save-hook 'time-stamp) -# time-stamp-start: "scriptversion=" -# time-stamp-format: "%:y-%02m-%02d.%02H" -# time-stamp-time-zone: "UTC0" -# time-stamp-end: "; # UTC" -# End: diff --git a/thirdparty/grub-2.04/build-aux/missing b/thirdparty/grub-2.04/build-aux/missing deleted file mode 100755 index f62bbae30..000000000 --- a/thirdparty/grub-2.04/build-aux/missing +++ /dev/null @@ -1,215 +0,0 @@ -#! /bin/sh -# Common wrapper for a few potentially missing GNU programs. - -scriptversion=2013-10-28.13; # UTC - -# Copyright (C) 1996-2014 Free Software Foundation, Inc. -# Originally written by Fran,cois Pinard , 1996. - -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2, or (at your option) -# any later version. - -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. - -# You should have received a copy of the GNU General Public License -# along with this program. If not, see . - -# As a special exception to the GNU General Public License, if you -# distribute this file as part of a program that contains a -# configuration script generated by Autoconf, you may include it under -# the same distribution terms that you use for the rest of that program. - -if test $# -eq 0; then - echo 1>&2 "Try '$0 --help' for more information" - exit 1 -fi - -case $1 in - - --is-lightweight) - # Used by our autoconf macros to check whether the available missing - # script is modern enough. - exit 0 - ;; - - --run) - # Back-compat with the calling convention used by older automake. - shift - ;; - - -h|--h|--he|--hel|--help) - echo "\ -$0 [OPTION]... PROGRAM [ARGUMENT]... - -Run 'PROGRAM [ARGUMENT]...', returning a proper advice when this fails due -to PROGRAM being missing or too old. - -Options: - -h, --help display this help and exit - -v, --version output version information and exit - -Supported PROGRAM values: - aclocal autoconf autoheader autom4te automake makeinfo - bison yacc flex lex help2man - -Version suffixes to PROGRAM as well as the prefixes 'gnu-', 'gnu', and -'g' are ignored when checking the name. - -Send bug reports to ." - exit $? - ;; - - -v|--v|--ve|--ver|--vers|--versi|--versio|--version) - echo "missing $scriptversion (GNU Automake)" - exit $? - ;; - - -*) - echo 1>&2 "$0: unknown '$1' option" - echo 1>&2 "Try '$0 --help' for more information" - exit 1 - ;; - -esac - -# Run the given program, remember its exit status. -"$@"; st=$? - -# If it succeeded, we are done. -test $st -eq 0 && exit 0 - -# Also exit now if we it failed (or wasn't found), and '--version' was -# passed; such an option is passed most likely to detect whether the -# program is present and works. -case $2 in --version|--help) exit $st;; esac - -# Exit code 63 means version mismatch. This often happens when the user -# tries to use an ancient version of a tool on a file that requires a -# minimum version. -if test $st -eq 63; then - msg="probably too old" -elif test $st -eq 127; then - # Program was missing. - msg="missing on your system" -else - # Program was found and executed, but failed. Give up. - exit $st -fi - -perl_URL=http://www.perl.org/ -flex_URL=http://flex.sourceforge.net/ -gnu_software_URL=http://www.gnu.org/software - -program_details () -{ - case $1 in - aclocal|automake) - echo "The '$1' program is part of the GNU Automake package:" - echo "<$gnu_software_URL/automake>" - echo "It also requires GNU Autoconf, GNU m4 and Perl in order to run:" - echo "<$gnu_software_URL/autoconf>" - echo "<$gnu_software_URL/m4/>" - echo "<$perl_URL>" - ;; - autoconf|autom4te|autoheader) - echo "The '$1' program is part of the GNU Autoconf package:" - echo "<$gnu_software_URL/autoconf/>" - echo "It also requires GNU m4 and Perl in order to run:" - echo "<$gnu_software_URL/m4/>" - echo "<$perl_URL>" - ;; - esac -} - -give_advice () -{ - # Normalize program name to check for. - normalized_program=`echo "$1" | sed ' - s/^gnu-//; t - s/^gnu//; t - s/^g//; t'` - - printf '%s\n' "'$1' is $msg." - - configure_deps="'configure.ac' or m4 files included by 'configure.ac'" - case $normalized_program in - autoconf*) - echo "You should only need it if you modified 'configure.ac'," - echo "or m4 files included by it." - program_details 'autoconf' - ;; - autoheader*) - echo "You should only need it if you modified 'acconfig.h' or" - echo "$configure_deps." - program_details 'autoheader' - ;; - automake*) - echo "You should only need it if you modified 'Makefile.am' or" - echo "$configure_deps." - program_details 'automake' - ;; - aclocal*) - echo "You should only need it if you modified 'acinclude.m4' or" - echo "$configure_deps." - program_details 'aclocal' - ;; - autom4te*) - echo "You might have modified some maintainer files that require" - echo "the 'autom4te' program to be rebuilt." - program_details 'autom4te' - ;; - bison*|yacc*) - echo "You should only need it if you modified a '.y' file." - echo "You may want to install the GNU Bison package:" - echo "<$gnu_software_URL/bison/>" - ;; - lex*|flex*) - echo "You should only need it if you modified a '.l' file." - echo "You may want to install the Fast Lexical Analyzer package:" - echo "<$flex_URL>" - ;; - help2man*) - echo "You should only need it if you modified a dependency" \ - "of a man page." - echo "You may want to install the GNU Help2man package:" - echo "<$gnu_software_URL/help2man/>" - ;; - makeinfo*) - echo "You should only need it if you modified a '.texi' file, or" - echo "any other file indirectly affecting the aspect of the manual." - echo "You might want to install the Texinfo package:" - echo "<$gnu_software_URL/texinfo/>" - echo "The spurious makeinfo call might also be the consequence of" - echo "using a buggy 'make' (AIX, DU, IRIX), in which case you might" - echo "want to install GNU make:" - echo "<$gnu_software_URL/make/>" - ;; - *) - echo "You might have modified some files without having the proper" - echo "tools for further handling them. Check the 'README' file, it" - echo "often tells you about the needed prerequisites for installing" - echo "this package. You may also peek at any GNU archive site, in" - echo "case some other package contains this missing '$1' program." - ;; - esac -} - -give_advice "$1" | sed -e '1s/^/WARNING: /' \ - -e '2,$s/^/ /' >&2 - -# Propagate the correct exit status (expected to be 127 for a program -# not found, 63 for a program that failed due to version mismatch). -exit $st - -# Local variables: -# eval: (add-hook 'write-file-hooks 'time-stamp) -# time-stamp-start: "scriptversion=" -# time-stamp-format: "%:y-%02m-%02d.%02H" -# time-stamp-time-zone: "UTC" -# time-stamp-end: "; # UTC" -# End: diff --git a/thirdparty/grub-2.04/build-aux/test-driver b/thirdparty/grub-2.04/build-aux/test-driver deleted file mode 100755 index 8e575b017..000000000 --- a/thirdparty/grub-2.04/build-aux/test-driver +++ /dev/null @@ -1,148 +0,0 @@ -#! /bin/sh -# test-driver - basic testsuite driver script. - -scriptversion=2013-07-13.22; # UTC - -# Copyright (C) 2011-2014 Free Software Foundation, Inc. -# -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2, or (at your option) -# any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program. If not, see . - -# As a special exception to the GNU General Public License, if you -# distribute this file as part of a program that contains a -# configuration script generated by Autoconf, you may include it under -# the same distribution terms that you use for the rest of that program. - -# This file is maintained in Automake, please report -# bugs to or send patches to -# . - -# Make unconditional expansion of undefined variables an error. This -# helps a lot in preventing typo-related bugs. -set -u - -usage_error () -{ - echo "$0: $*" >&2 - print_usage >&2 - exit 2 -} - -print_usage () -{ - cat <$log_file 2>&1 -estatus=$? - -if test $enable_hard_errors = no && test $estatus -eq 99; then - tweaked_estatus=1 -else - tweaked_estatus=$estatus -fi - -case $tweaked_estatus:$expect_failure in - 0:yes) col=$red res=XPASS recheck=yes gcopy=yes;; - 0:*) col=$grn res=PASS recheck=no gcopy=no;; - 77:*) col=$blu res=SKIP recheck=no gcopy=yes;; - 99:*) col=$mgn res=ERROR recheck=yes gcopy=yes;; - *:yes) col=$lgn res=XFAIL recheck=no gcopy=yes;; - *:*) col=$red res=FAIL recheck=yes gcopy=yes;; -esac - -# Report the test outcome and exit status in the logs, so that one can -# know whether the test passed or failed simply by looking at the '.log' -# file, without the need of also peaking into the corresponding '.trs' -# file (automake bug#11814). -echo "$res $test_name (exit status: $estatus)" >>$log_file - -# Report outcome to console. -echo "${col}${res}${std}: $test_name" - -# Register the test result, and other relevant metadata. -echo ":test-result: $res" > $trs_file -echo ":global-test-result: $res" >> $trs_file -echo ":recheck: $recheck" >> $trs_file -echo ":copy-in-global-log: $gcopy" >> $trs_file - -# Local Variables: -# mode: shell-script -# sh-indentation: 2 -# eval: (add-hook 'write-file-hooks 'time-stamp) -# time-stamp-start: "scriptversion=" -# time-stamp-format: "%:y-%02m-%02d.%02H" -# time-stamp-time-zone: "UTC" -# time-stamp-end: "; # UTC" -# End: diff --git a/thirdparty/grub-2.04/build-aux/texinfo.tex b/thirdparty/grub-2.04/build-aux/texinfo.tex deleted file mode 100644 index 66a832e0b..000000000 --- a/thirdparty/grub-2.04/build-aux/texinfo.tex +++ /dev/null @@ -1,11672 +0,0 @@ -% texinfo.tex -- TeX macros to handle Texinfo files. -% -% Load plain if necessary, i.e., if running under initex. -\expandafter\ifx\csname fmtname\endcsname\relax\input plain\fi -% -\def\texinfoversion{2018-12-28.17} -% -% Copyright 1985, 1986, 1988, 1990-2018 Free Software Foundation, Inc. -% -% This texinfo.tex file is free software: you can redistribute it and/or -% modify it under the terms of the GNU General Public License as -% published by the Free Software Foundation, either version 3 of the -% License, or (at your option) any later version. -% -% This texinfo.tex file is distributed in the hope that it will be -% useful, but WITHOUT ANY WARRANTY; without even the implied warranty -% of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -% General Public License for more details. -% -% You should have received a copy of the GNU General Public License -% along with this program. If not, see . -% -% As a special exception, when this file is read by TeX when processing -% a Texinfo source document, you may use the result without -% restriction. This Exception is an additional permission under section 7 -% of the GNU General Public License, version 3 ("GPLv3"). -% -% Please try the latest version of texinfo.tex before submitting bug -% reports; you can get the latest version from: -% https://ftp.gnu.org/gnu/texinfo/ (the Texinfo release area), or -% https://ftpmirror.gnu.org/texinfo/ (same, via a mirror), or -% https://www.gnu.org/software/texinfo/ (the Texinfo home page) -% The texinfo.tex in any given distribution could well be out -% of date, so if that's what you're using, please check. -% -% Send bug reports to bug-texinfo@gnu.org. Please include including a -% complete document in each bug report with which we can reproduce the -% problem. Patches are, of course, greatly appreciated. -% -% To process a Texinfo manual with TeX, it's most reliable to use the -% texi2dvi shell script that comes with the distribution. For a simple -% manual foo.texi, however, you can get away with this: -% tex foo.texi -% texindex foo.?? -% tex foo.texi -% tex foo.texi -% dvips foo.dvi -o # or whatever; this makes foo.ps. -% The extra TeX runs get the cross-reference information correct. -% Sometimes one run after texindex suffices, and sometimes you need more -% than two; texi2dvi does it as many times as necessary. -% -% It is possible to adapt texinfo.tex for other languages, to some -% extent. You can get the existing language-specific files from the -% full Texinfo distribution. -% -% The GNU Texinfo home page is https://www.gnu.org/software/texinfo. - - -\message{Loading texinfo [version \texinfoversion]:} - -% If in a .fmt file, print the version number -% and turn on active characters that we couldn't do earlier because -% they might have appeared in the input file name. -\everyjob{\message{[Texinfo version \texinfoversion]}% - \catcode`+=\active \catcode`\_=\active} - -% LaTeX's \typeout. This ensures that the messages it is used for -% are identical in format to the corresponding ones from latex/pdflatex. -\def\typeout{\immediate\write17}% - -\chardef\other=12 - -% We never want plain's \outer definition of \+ in Texinfo. -% For @tex, we can use \tabalign. -\let\+ = \relax - -% Save some plain tex macros whose names we will redefine. -\let\ptexb=\b -\let\ptexbullet=\bullet -\let\ptexc=\c -\let\ptexcomma=\, -\let\ptexdot=\. -\let\ptexdots=\dots -\let\ptexend=\end -\let\ptexequiv=\equiv -\let\ptexexclam=\! -\let\ptexfootnote=\footnote -\let\ptexgtr=> -\let\ptexhat=^ -\let\ptexi=\i -\let\ptexindent=\indent -\let\ptexinsert=\insert -\let\ptexlbrace=\{ -\let\ptexless=< -\let\ptexnewwrite\newwrite -\let\ptexnoindent=\noindent -\let\ptexplus=+ -\let\ptexraggedright=\raggedright -\let\ptexrbrace=\} -\let\ptexslash=\/ -\let\ptexsp=\sp -\let\ptexstar=\* -\let\ptexsup=\sup -\let\ptext=\t -\let\ptextop=\top -{\catcode`\'=\active \global\let\ptexquoteright'}% active in plain's math mode - -% If this character appears in an error message or help string, it -% starts a new line in the output. -\newlinechar = `^^J - -% Use TeX 3.0's \inputlineno to get the line number, for better error -% messages, but if we're using an old version of TeX, don't do anything. -% -\ifx\inputlineno\thisisundefined - \let\linenumber = \empty % Pre-3.0. -\else - \def\linenumber{l.\the\inputlineno:\space} -\fi - -% Set up fixed words for English if not already set. -\ifx\putwordAppendix\undefined \gdef\putwordAppendix{Appendix}\fi -\ifx\putwordChapter\undefined \gdef\putwordChapter{Chapter}\fi -\ifx\putworderror\undefined \gdef\putworderror{error}\fi -\ifx\putwordfile\undefined \gdef\putwordfile{file}\fi -\ifx\putwordin\undefined \gdef\putwordin{in}\fi -\ifx\putwordIndexIsEmpty\undefined \gdef\putwordIndexIsEmpty{(Index is empty)}\fi -\ifx\putwordIndexNonexistent\undefined \gdef\putwordIndexNonexistent{(Index is nonexistent)}\fi -\ifx\putwordInfo\undefined \gdef\putwordInfo{Info}\fi -\ifx\putwordInstanceVariableof\undefined \gdef\putwordInstanceVariableof{Instance Variable of}\fi -\ifx\putwordMethodon\undefined \gdef\putwordMethodon{Method on}\fi -\ifx\putwordNoTitle\undefined \gdef\putwordNoTitle{No Title}\fi -\ifx\putwordof\undefined \gdef\putwordof{of}\fi -\ifx\putwordon\undefined \gdef\putwordon{on}\fi -\ifx\putwordpage\undefined \gdef\putwordpage{page}\fi -\ifx\putwordsection\undefined \gdef\putwordsection{section}\fi -\ifx\putwordSection\undefined \gdef\putwordSection{Section}\fi -\ifx\putwordsee\undefined \gdef\putwordsee{see}\fi -\ifx\putwordSee\undefined \gdef\putwordSee{See}\fi -\ifx\putwordShortTOC\undefined \gdef\putwordShortTOC{Short Contents}\fi -\ifx\putwordTOC\undefined \gdef\putwordTOC{Table of Contents}\fi -% -\ifx\putwordMJan\undefined \gdef\putwordMJan{January}\fi -\ifx\putwordMFeb\undefined \gdef\putwordMFeb{February}\fi -\ifx\putwordMMar\undefined \gdef\putwordMMar{March}\fi -\ifx\putwordMApr\undefined \gdef\putwordMApr{April}\fi -\ifx\putwordMMay\undefined \gdef\putwordMMay{May}\fi -\ifx\putwordMJun\undefined \gdef\putwordMJun{June}\fi -\ifx\putwordMJul\undefined \gdef\putwordMJul{July}\fi -\ifx\putwordMAug\undefined \gdef\putwordMAug{August}\fi -\ifx\putwordMSep\undefined \gdef\putwordMSep{September}\fi -\ifx\putwordMOct\undefined \gdef\putwordMOct{October}\fi -\ifx\putwordMNov\undefined \gdef\putwordMNov{November}\fi -\ifx\putwordMDec\undefined \gdef\putwordMDec{December}\fi -% -\ifx\putwordDefmac\undefined \gdef\putwordDefmac{Macro}\fi -\ifx\putwordDefspec\undefined \gdef\putwordDefspec{Special Form}\fi -\ifx\putwordDefvar\undefined \gdef\putwordDefvar{Variable}\fi -\ifx\putwordDefopt\undefined \gdef\putwordDefopt{User Option}\fi -\ifx\putwordDeffunc\undefined \gdef\putwordDeffunc{Function}\fi - -% Give the space character the catcode for a space. -\def\spaceisspace{\catcode`\ =10\relax} - -% Likewise for ^^M, the end of line character. -\def\endlineisspace{\catcode13=10\relax} - -\chardef\dashChar = `\- -\chardef\slashChar = `\/ -\chardef\underChar = `\_ - -% Ignore a token. -% -\def\gobble#1{} - -% The following is used inside several \edef's. -\def\makecsname#1{\expandafter\noexpand\csname#1\endcsname} - -% Hyphenation fixes. -\hyphenation{ - Flor-i-da Ghost-script Ghost-view Mac-OS Post-Script - ap-pen-dix bit-map bit-maps - data-base data-bases eshell fall-ing half-way long-est man-u-script - man-u-scripts mini-buf-fer mini-buf-fers over-view par-a-digm - par-a-digms rath-er rec-tan-gu-lar ro-bot-ics se-vere-ly set-up spa-ces - spell-ing spell-ings - stand-alone strong-est time-stamp time-stamps which-ever white-space - wide-spread wrap-around -} - -% Sometimes it is convenient to have everything in the transcript file -% and nothing on the terminal. We don't just call \tracingall here, -% since that produces some useless output on the terminal. We also make -% some effort to order the tracing commands to reduce output in the log -% file; cf. trace.sty in LaTeX. -% -\def\gloggingall{\begingroup \globaldefs = 1 \loggingall \endgroup}% -\def\loggingall{% - \tracingstats2 - \tracingpages1 - \tracinglostchars2 % 2 gives us more in etex - \tracingparagraphs1 - \tracingoutput1 - \tracingmacros2 - \tracingrestores1 - \showboxbreadth\maxdimen \showboxdepth\maxdimen - \ifx\eTeXversion\thisisundefined\else % etex gives us more logging - \tracingscantokens1 - \tracingifs1 - \tracinggroups1 - \tracingnesting2 - \tracingassigns1 - \fi - \tracingcommands3 % 3 gives us more in etex - \errorcontextlines16 -}% - -% @errormsg{MSG}. Do the index-like expansions on MSG, but if things -% aren't perfect, it's not the end of the world, being an error message, -% after all. -% -\def\errormsg{\begingroup \indexnofonts \doerrormsg} -\def\doerrormsg#1{\errmessage{#1}} - -% add check for \lastpenalty to plain's definitions. If the last thing -% we did was a \nobreak, we don't want to insert more space. -% -\def\smallbreak{\ifnum\lastpenalty<10000\par\ifdim\lastskip<\smallskipamount - \removelastskip\penalty-50\smallskip\fi\fi} -\def\medbreak{\ifnum\lastpenalty<10000\par\ifdim\lastskip<\medskipamount - \removelastskip\penalty-100\medskip\fi\fi} -\def\bigbreak{\ifnum\lastpenalty<10000\par\ifdim\lastskip<\bigskipamount - \removelastskip\penalty-200\bigskip\fi\fi} - -% Output routine -% - -% For a final copy, take out the rectangles -% that mark overfull boxes (in case you have decided -% that the text looks ok even though it passes the margin). -% -\def\finalout{\overfullrule=0pt } - -\newdimen\outerhsize \newdimen\outervsize % set by the paper size routines -\newdimen\topandbottommargin \topandbottommargin=.75in - -% Output a mark which sets \thischapter, \thissection and \thiscolor. -% We dump everything together because we only have one kind of mark. -% This works because we only use \botmark / \topmark, not \firstmark. -% -% A mark contains a subexpression of the \ifcase ... \fi construct. -% \get*marks macros below extract the needed part using \ifcase. -% -% Another complication is to let the user choose whether \thischapter -% (\thissection) refers to the chapter (section) in effect at the top -% of a page, or that at the bottom of a page. - -% \domark is called twice inside \chapmacro, to add one -% mark before the section break, and one after. -% In the second call \prevchapterdefs is the same as \lastchapterdefs, -% and \prevsectiondefs is the same as \lastsectiondefs. -% Then if the page is not broken at the mark, some of the previous -% section appears on the page, and we can get the name of this section -% from \firstmark for @everyheadingmarks top. -% @everyheadingmarks bottom uses \botmark. -% -% See page 260 of The TeXbook. -\def\domark{% - \toks0=\expandafter{\lastchapterdefs}% - \toks2=\expandafter{\lastsectiondefs}% - \toks4=\expandafter{\prevchapterdefs}% - \toks6=\expandafter{\prevsectiondefs}% - \toks8=\expandafter{\lastcolordefs}% - \mark{% - \the\toks0 \the\toks2 % 0: marks for @everyheadingmarks top - \noexpand\or \the\toks4 \the\toks6 % 1: for @everyheadingmarks bottom - \noexpand\else \the\toks8 % 2: color marks - }% -} - -% \gettopheadingmarks, \getbottomheadingmarks, -% \getcolormarks - extract needed part of mark. -% -% \topmark doesn't work for the very first chapter (after the title -% page or the contents), so we use \firstmark there -- this gets us -% the mark with the chapter defs, unless the user sneaks in, e.g., -% @setcolor (or @url, or @link, etc.) between @contents and the very -% first @chapter. -\def\gettopheadingmarks{% - \ifcase0\topmark\fi - \ifx\thischapter\empty \ifcase0\firstmark\fi \fi -} -\def\getbottomheadingmarks{\ifcase1\botmark\fi} -\def\getcolormarks{\ifcase2\topmark\fi} - -% Avoid "undefined control sequence" errors. -\def\lastchapterdefs{} -\def\lastsectiondefs{} -\def\lastsection{} -\def\prevchapterdefs{} -\def\prevsectiondefs{} -\def\lastcolordefs{} - -% Margin to add to right of even pages, to left of odd pages. -\newdimen\bindingoffset -\newdimen\normaloffset -\newdimen\txipagewidth \newdimen\txipageheight - -% Main output routine. -% -\chardef\PAGE = 255 -\output = {\onepageout{\pagecontents\PAGE}} - -\newbox\headlinebox -\newbox\footlinebox - -% \onepageout takes a vbox as an argument. -% \shipout a vbox for a single page, adding an optional header, footer -% and footnote. This also causes index entries for this page to be written -% to the auxiliary files. -% -\def\onepageout#1{% - \hoffset=\normaloffset - % - \ifodd\pageno \advance\hoffset by \bindingoffset - \else \advance\hoffset by -\bindingoffset\fi - % - % Common context changes for both heading and footing. - % Do this outside of the \shipout so @code etc. will be expanded in - % the headline as they should be, not taken literally (outputting ''code). - \def\commmonheadfootline{\let\hsize=\txipagewidth \texinfochars} - % - % Retrieve the information for the headings from the marks in the page, - % and call Plain TeX's \makeheadline and \makefootline, which use the - % values in \headline and \footline. - % - % This is used to check if we are on the first page of a chapter. - \ifcase1\topmark\fi - \let\prevchaptername\thischaptername - \ifcase0\firstmark\fi - \let\curchaptername\thischaptername - % - \ifodd\pageno \getoddheadingmarks \else \getevenheadingmarks \fi - \ifodd\pageno \getoddfootingmarks \else \getevenfootingmarks \fi - % - \ifx\curchaptername\prevchaptername - \let\thischapterheading\thischapter - \else - % \thischapterheading is the same as \thischapter except it is blank - % for the first page of a chapter. This is to prevent the chapter name - % being shown twice. - \def\thischapterheading{}% - \fi - % - \global\setbox\headlinebox = \vbox{\commmonheadfootline \makeheadline}% - \global\setbox\footlinebox = \vbox{\commmonheadfootline \makefootline}% - % - {% - % Set context for writing to auxiliary files like index files. - % Have to do this stuff outside the \shipout because we want it to - % take effect in \write's, yet the group defined by the \vbox ends - % before the \shipout runs. - % - \indexdummies % don't expand commands in the output. - \normalturnoffactive % \ in index entries must not stay \, e.g., if - % the page break happens to be in the middle of an example. - % We don't want .vr (or whatever) entries like this: - % \entry{{\indexbackslash }acronym}{32}{\code {\acronym}} - % "\acronym" won't work when it's read back in; - % it needs to be - % {\code {{\backslashcurfont }acronym} - \shipout\vbox{% - % Do this early so pdf references go to the beginning of the page. - \ifpdfmakepagedest \pdfdest name{\the\pageno} xyz\fi - % - \unvbox\headlinebox - \pagebody{#1}% - \ifdim\ht\footlinebox > 0pt - % Only leave this space if the footline is nonempty. - % (We lessened \vsize for it in \oddfootingyyy.) - % The \baselineskip=24pt in plain's \makefootline has no effect. - \vskip 24pt - \unvbox\footlinebox - \fi - % - }% end of \shipout\vbox - }% end of group with \indexdummies - \advancepageno - \ifnum\outputpenalty>-20000 \else\dosupereject\fi -} - -\newinsert\margin \dimen\margin=\maxdimen - -% Main part of page, including any footnotes -\def\pagebody#1{\vbox to\txipageheight{\boxmaxdepth=\maxdepth #1}} -{\catcode`\@ =11 -\gdef\pagecontents#1{\ifvoid\topins\else\unvbox\topins\fi -% marginal hacks, juha@viisa.uucp (Juha Takala) -\ifvoid\margin\else % marginal info is present - \rlap{\kern\hsize\vbox to\z@{\kern1pt\box\margin \vss}}\fi -\dimen@=\dp#1\relax \unvbox#1\relax -\ifvoid\footins\else\vskip\skip\footins\footnoterule \unvbox\footins\fi -\ifr@ggedbottom \kern-\dimen@ \vfil \fi} -} - - -% Argument parsing - -% Parse an argument, then pass it to #1. The argument is the rest of -% the input line (except we remove a trailing comment). #1 should be a -% macro which expects an ordinary undelimited TeX argument. -% For example, \def\foo{\parsearg\fooxxx}. -% -\def\parsearg{\parseargusing{}} -\def\parseargusing#1#2{% - \def\argtorun{#2}% - \begingroup - \obeylines - \spaceisspace - #1% - \parseargline\empty% Insert the \empty token, see \finishparsearg below. -} - -{\obeylines % - \gdef\parseargline#1^^M{% - \endgroup % End of the group started in \parsearg. - \argremovecomment #1\comment\ArgTerm% - }% -} - -% First remove any @comment, then any @c comment. Also remove a @texinfoc -% comment (see \scanmacro for details). Pass the result on to \argcheckspaces. -\def\argremovecomment#1\comment#2\ArgTerm{\argremovec #1\c\ArgTerm} -\def\argremovec#1\c#2\ArgTerm{\argremovetexinfoc #1\texinfoc\ArgTerm} -\def\argremovetexinfoc#1\texinfoc#2\ArgTerm{\argcheckspaces#1\^^M\ArgTerm} - -% Each occurrence of `\^^M' or `\^^M' is replaced by a single space. -% -% \argremovec might leave us with trailing space, e.g., -% @end itemize @c foo -% This space token undergoes the same procedure and is eventually removed -% by \finishparsearg. -% -\def\argcheckspaces#1\^^M{\argcheckspacesX#1\^^M \^^M} -\def\argcheckspacesX#1 \^^M{\argcheckspacesY#1\^^M} -\def\argcheckspacesY#1\^^M#2\^^M#3\ArgTerm{% - \def\temp{#3}% - \ifx\temp\empty - % Do not use \next, perhaps the caller of \parsearg uses it; reuse \temp: - \let\temp\finishparsearg - \else - \let\temp\argcheckspaces - \fi - % Put the space token in: - \temp#1 #3\ArgTerm -} - -% If a _delimited_ argument is enclosed in braces, they get stripped; so -% to get _exactly_ the rest of the line, we had to prevent such situation. -% We prepended an \empty token at the very beginning and we expand it now, -% just before passing the control to \argtorun. -% (Similarly, we have to think about #3 of \argcheckspacesY above: it is -% either the null string, or it ends with \^^M---thus there is no danger -% that a pair of braces would be stripped. -% -% But first, we have to remove the trailing space token. -% -\def\finishparsearg#1 \ArgTerm{\expandafter\argtorun\expandafter{#1}} - - -% \parseargdef - define a command taking an argument on the line -% -% \parseargdef\foo{...} -% is roughly equivalent to -% \def\foo{\parsearg\Xfoo} -% \def\Xfoo#1{...} -\def\parseargdef#1{% - \expandafter \doparseargdef \csname\string#1\endcsname #1% -} -\def\doparseargdef#1#2{% - \def#2{\parsearg#1}% - \def#1##1% -} - -% Several utility definitions with active space: -{ - \obeyspaces - \gdef\obeyedspace{ } - - % Make each space character in the input produce a normal interword - % space in the output. Don't allow a line break at this space, as this - % is used only in environments like @example, where each line of input - % should produce a line of output anyway. - % - \gdef\sepspaces{\obeyspaces\let =\tie} - - % If an index command is used in an @example environment, any spaces - % therein should become regular spaces in the raw index file, not the - % expansion of \tie (\leavevmode \penalty \@M \ ). - \gdef\unsepspaces{\let =\space} -} - - -\def\flushcr{\ifx\par\lisppar \def\next##1{}\else \let\next=\relax \fi \next} - -% Define the framework for environments in texinfo.tex. It's used like this: -% -% \envdef\foo{...} -% \def\Efoo{...} -% -% It's the responsibility of \envdef to insert \begingroup before the -% actual body; @end closes the group after calling \Efoo. \envdef also -% defines \thisenv, so the current environment is known; @end checks -% whether the environment name matches. The \checkenv macro can also be -% used to check whether the current environment is the one expected. -% -% Non-false conditionals (@iftex, @ifset) don't fit into this, so they -% are not treated as environments; they don't open a group. (The -% implementation of @end takes care not to call \endgroup in this -% special case.) - - -% At run-time, environments start with this: -\def\startenvironment#1{\begingroup\def\thisenv{#1}} -% initialize -\let\thisenv\empty - -% ... but they get defined via ``\envdef\foo{...}'': -\long\def\envdef#1#2{\def#1{\startenvironment#1#2}} -\def\envparseargdef#1#2{\parseargdef#1{\startenvironment#1#2}} - -% Check whether we're in the right environment: -\def\checkenv#1{% - \def\temp{#1}% - \ifx\thisenv\temp - \else - \badenverr - \fi -} - -% Environment mismatch, #1 expected: -\def\badenverr{% - \errhelp = \EMsimple - \errmessage{This command can appear only \inenvironment\temp, - not \inenvironment\thisenv}% -} -\def\inenvironment#1{% - \ifx#1\empty - outside of any environment% - \else - in environment \expandafter\string#1% - \fi -} - -% @end foo executes the definition of \Efoo. -% But first, it executes a specialized version of \checkenv -% -\parseargdef\end{% - \if 1\csname iscond.#1\endcsname - \else - % The general wording of \badenverr may not be ideal. - \expandafter\checkenv\csname#1\endcsname - \csname E#1\endcsname - \endgroup - \fi -} - -\newhelp\EMsimple{Press RETURN to continue.} - - -% Be sure we're in horizontal mode when doing a tie, since we make space -% equivalent to this in @example-like environments. Otherwise, a space -% at the beginning of a line will start with \penalty -- and -% since \penalty is valid in vertical mode, we'd end up putting the -% penalty on the vertical list instead of in the new paragraph. -{\catcode`@ = 11 - % Avoid using \@M directly, because that causes trouble - % if the definition is written into an index file. - \global\let\tiepenalty = \@M - \gdef\tie{\leavevmode\penalty\tiepenalty\ } -} - -% @: forces normal size whitespace following. -\def\:{\spacefactor=1000 } - -% @* forces a line break. -\def\*{\unskip\hfil\break\hbox{}\ignorespaces} - -% @/ allows a line break. -\let\/=\allowbreak - -% @. is an end-of-sentence period. -\def\.{.\spacefactor=\endofsentencespacefactor\space} - -% @! is an end-of-sentence bang. -\def\!{!\spacefactor=\endofsentencespacefactor\space} - -% @? is an end-of-sentence query. -\def\?{?\spacefactor=\endofsentencespacefactor\space} - -% @frenchspacing on|off says whether to put extra space after punctuation. -% -\def\onword{on} -\def\offword{off} -% -\parseargdef\frenchspacing{% - \def\temp{#1}% - \ifx\temp\onword \plainfrenchspacing - \else\ifx\temp\offword \plainnonfrenchspacing - \else - \errhelp = \EMsimple - \errmessage{Unknown @frenchspacing option `\temp', must be on|off}% - \fi\fi -} - -% @w prevents a word break. Without the \leavevmode, @w at the -% beginning of a paragraph, when TeX is still in vertical mode, would -% produce a whole line of output instead of starting the paragraph. -\def\w#1{\leavevmode\hbox{#1}} - -% @group ... @end group forces ... to be all on one page, by enclosing -% it in a TeX vbox. We use \vtop instead of \vbox to construct the box -% to keep its height that of a normal line. According to the rules for -% \topskip (p.114 of the TeXbook), the glue inserted is -% max (\topskip - \ht (first item), 0). If that height is large, -% therefore, no glue is inserted, and the space between the headline and -% the text is small, which looks bad. -% -% Another complication is that the group might be very large. This can -% cause the glue on the previous page to be unduly stretched, because it -% does not have much material. In this case, it's better to add an -% explicit \vfill so that the extra space is at the bottom. The -% threshold for doing this is if the group is more than \vfilllimit -% percent of a page (\vfilllimit can be changed inside of @tex). -% -\newbox\groupbox -\def\vfilllimit{0.7} -% -\envdef\group{% - \ifnum\catcode`\^^M=\active \else - \errhelp = \groupinvalidhelp - \errmessage{@group invalid in context where filling is enabled}% - \fi - \startsavinginserts - % - \setbox\groupbox = \vtop\bgroup - % Do @comment since we are called inside an environment such as - % @example, where each end-of-line in the input causes an - % end-of-line in the output. We don't want the end-of-line after - % the `@group' to put extra space in the output. Since @group - % should appear on a line by itself (according to the Texinfo - % manual), we don't worry about eating any user text. - \comment -} -% -% The \vtop produces a box with normal height and large depth; thus, TeX puts -% \baselineskip glue before it, and (when the next line of text is done) -% \lineskip glue after it. Thus, space below is not quite equal to space -% above. But it's pretty close. -\def\Egroup{% - % To get correct interline space between the last line of the group - % and the first line afterwards, we have to propagate \prevdepth. - \endgraf % Not \par, as it may have been set to \lisppar. - \global\dimen1 = \prevdepth - \egroup % End the \vtop. - \addgroupbox - \prevdepth = \dimen1 - \checkinserts -} - -\def\addgroupbox{ - % \dimen0 is the vertical size of the group's box. - \dimen0 = \ht\groupbox \advance\dimen0 by \dp\groupbox - % \dimen2 is how much space is left on the page (more or less). - \dimen2 = \txipageheight \advance\dimen2 by -\pagetotal - % if the group doesn't fit on the current page, and it's a big big - % group, force a page break. - \ifdim \dimen0 > \dimen2 - \ifdim \pagetotal < \vfilllimit\txipageheight - \page - \fi - \fi - \box\groupbox -} - -% -% TeX puts in an \escapechar (i.e., `@') at the beginning of the help -% message, so this ends up printing `@group can only ...'. -% -\newhelp\groupinvalidhelp{% -group can only be used in environments such as @example,^^J% -where each line of input produces a line of output.} - -% @need space-in-mils -% forces a page break if there is not space-in-mils remaining. - -\newdimen\mil \mil=0.001in - -\parseargdef\need{% - % Ensure vertical mode, so we don't make a big box in the middle of a - % paragraph. - \par - % - % If the @need value is less than one line space, it's useless. - \dimen0 = #1\mil - \dimen2 = \ht\strutbox - \advance\dimen2 by \dp\strutbox - \ifdim\dimen0 > \dimen2 - % - % Do a \strut just to make the height of this box be normal, so the - % normal leading is inserted relative to the preceding line. - % And a page break here is fine. - \vtop to #1\mil{\strut\vfil}% - % - % TeX does not even consider page breaks if a penalty added to the - % main vertical list is 10000 or more. But in order to see if the - % empty box we just added fits on the page, we must make it consider - % page breaks. On the other hand, we don't want to actually break the - % page after the empty box. So we use a penalty of 9999. - % - % There is an extremely small chance that TeX will actually break the - % page at this \penalty, if there are no other feasible breakpoints in - % sight. (If the user is using lots of big @group commands, which - % almost-but-not-quite fill up a page, TeX will have a hard time doing - % good page breaking, for example.) However, I could not construct an - % example where a page broke at this \penalty; if it happens in a real - % document, then we can reconsider our strategy. - \penalty9999 - % - % Back up by the size of the box, whether we did a page break or not. - \kern -#1\mil - % - % Do not allow a page break right after this kern. - \nobreak - \fi -} - -% @br forces paragraph break (and is undocumented). - -\let\br = \par - -% @page forces the start of a new page. -% -\def\page{\par\vfill\supereject} - -% @exdent text.... -% outputs text on separate line in roman font, starting at standard page margin - -% This records the amount of indent in the innermost environment. -% That's how much \exdent should take out. -\newskip\exdentamount - -% This defn is used inside fill environments such as @defun. -\parseargdef\exdent{\hfil\break\hbox{\kern -\exdentamount{\rm#1}}\hfil\break} - -% This defn is used inside nofill environments such as @example. -\parseargdef\nofillexdent{{\advance \leftskip by -\exdentamount - \leftline{\hskip\leftskip{\rm#1}}}} - -% @inmargin{WHICH}{TEXT} puts TEXT in the WHICH margin next to the current -% paragraph. For more general purposes, use the \margin insertion -% class. WHICH is `l' or `r'. Not documented, written for gawk manual. -% -\newskip\inmarginspacing \inmarginspacing=1cm -\def\strutdepth{\dp\strutbox} -% -\def\doinmargin#1#2{\strut\vadjust{% - \nobreak - \kern-\strutdepth - \vtop to \strutdepth{% - \baselineskip=\strutdepth - \vss - % if you have multiple lines of stuff to put here, you'll need to - % make the vbox yourself of the appropriate size. - \ifx#1l% - \llap{\ignorespaces #2\hskip\inmarginspacing}% - \else - \rlap{\hskip\hsize \hskip\inmarginspacing \ignorespaces #2}% - \fi - \null - }% -}} -\def\inleftmargin{\doinmargin l} -\def\inrightmargin{\doinmargin r} -% -% @inmargin{TEXT [, RIGHT-TEXT]} -% (if RIGHT-TEXT is given, use TEXT for left page, RIGHT-TEXT for right; -% else use TEXT for both). -% -\def\inmargin#1{\parseinmargin #1,,\finish} -\def\parseinmargin#1,#2,#3\finish{% not perfect, but better than nothing. - \setbox0 = \hbox{\ignorespaces #2}% - \ifdim\wd0 > 0pt - \def\lefttext{#1}% have both texts - \def\righttext{#2}% - \else - \def\lefttext{#1}% have only one text - \def\righttext{#1}% - \fi - % - \ifodd\pageno - \def\temp{\inrightmargin\righttext}% odd page -> outside is right margin - \else - \def\temp{\inleftmargin\lefttext}% - \fi - \temp -} - -% @include FILE -- \input text of FILE. -% -\def\include{\parseargusing\filenamecatcodes\includezzz} -\def\includezzz#1{% - \pushthisfilestack - \def\thisfile{#1}% - {% - \makevalueexpandable % we want to expand any @value in FILE. - \turnoffactive % and allow special characters in the expansion - \indexnofonts % Allow `@@' and other weird things in file names. - \wlog{texinfo.tex: doing @include of #1^^J}% - \edef\temp{\noexpand\input #1 }% - % - % This trickery is to read FILE outside of a group, in case it makes - % definitions, etc. - \expandafter - }\temp - \popthisfilestack -} -\def\filenamecatcodes{% - \catcode`\\=\other - \catcode`~=\other - \catcode`^=\other - \catcode`_=\other - \catcode`|=\other - \catcode`<=\other - \catcode`>=\other - \catcode`+=\other - \catcode`-=\other - \catcode`\`=\other - \catcode`\'=\other -} - -\def\pushthisfilestack{% - \expandafter\pushthisfilestackX\popthisfilestack\StackTerm -} -\def\pushthisfilestackX{% - \expandafter\pushthisfilestackY\thisfile\StackTerm -} -\def\pushthisfilestackY #1\StackTerm #2\StackTerm {% - \gdef\popthisfilestack{\gdef\thisfile{#1}\gdef\popthisfilestack{#2}}% -} - -\def\popthisfilestack{\errthisfilestackempty} -\def\errthisfilestackempty{\errmessage{Internal error: - the stack of filenames is empty.}} -% -\def\thisfile{} - -% @center line -% outputs that line, centered. -% -\parseargdef\center{% - \ifhmode - \let\centersub\centerH - \else - \let\centersub\centerV - \fi - \centersub{\hfil \ignorespaces#1\unskip \hfil}% - \let\centersub\relax % don't let the definition persist, just in case -} -\def\centerH#1{{% - \hfil\break - \advance\hsize by -\leftskip - \advance\hsize by -\rightskip - \line{#1}% - \break -}} -% -\newcount\centerpenalty -\def\centerV#1{% - % The idea here is the same as in \startdefun, \cartouche, etc.: if - % @center is the first thing after a section heading, we need to wipe - % out the negative parskip inserted by \sectionheading, but still - % prevent a page break here. - \centerpenalty = \lastpenalty - \ifnum\centerpenalty>10000 \vskip\parskip \fi - \ifnum\centerpenalty>9999 \penalty\centerpenalty \fi - \line{\kern\leftskip #1\kern\rightskip}% -} - -% @sp n outputs n lines of vertical space -% -\parseargdef\sp{\vskip #1\baselineskip} - -% @comment ...line which is ignored... -% @c is the same as @comment -% @ignore ... @end ignore is another way to write a comment - - -\def\c{\begingroup \catcode`\^^M=\active% -\catcode`\@=\other \catcode`\{=\other \catcode`\}=\other% -\cxxx} -{\catcode`\^^M=\active \gdef\cxxx#1^^M{\endgroup}} -% -\let\comment\c - -% @paragraphindent NCHARS -% We'll use ems for NCHARS, close enough. -% NCHARS can also be the word `asis' or `none'. -% We cannot feasibly implement @paragraphindent asis, though. -% -\def\asisword{asis} % no translation, these are keywords -\def\noneword{none} -% -\parseargdef\paragraphindent{% - \def\temp{#1}% - \ifx\temp\asisword - \else - \ifx\temp\noneword - \defaultparindent = 0pt - \else - \defaultparindent = #1em - \fi - \fi - \parindent = \defaultparindent -} - -% @exampleindent NCHARS -% We'll use ems for NCHARS like @paragraphindent. -% It seems @exampleindent asis isn't necessary, but -% I preserve it to make it similar to @paragraphindent. -\parseargdef\exampleindent{% - \def\temp{#1}% - \ifx\temp\asisword - \else - \ifx\temp\noneword - \lispnarrowing = 0pt - \else - \lispnarrowing = #1em - \fi - \fi -} - -% @firstparagraphindent WORD -% If WORD is `none', then suppress indentation of the first paragraph -% after a section heading. If WORD is `insert', then do indent at such -% paragraphs. -% -% The paragraph indentation is suppressed or not by calling -% \suppressfirstparagraphindent, which the sectioning commands do. -% We switch the definition of this back and forth according to WORD. -% By default, we suppress indentation. -% -\def\suppressfirstparagraphindent{\dosuppressfirstparagraphindent} -\def\insertword{insert} -% -\parseargdef\firstparagraphindent{% - \def\temp{#1}% - \ifx\temp\noneword - \let\suppressfirstparagraphindent = \dosuppressfirstparagraphindent - \else\ifx\temp\insertword - \let\suppressfirstparagraphindent = \relax - \else - \errhelp = \EMsimple - \errmessage{Unknown @firstparagraphindent option `\temp'}% - \fi\fi -} - -% Here is how we actually suppress indentation. Redefine \everypar to -% \kern backwards by \parindent, and then reset itself to empty. -% -% We also make \indent itself not actually do anything until the next -% paragraph. -% -\gdef\dosuppressfirstparagraphindent{% - \gdef\indent {\restorefirstparagraphindent \indent}% - \gdef\noindent{\restorefirstparagraphindent \noindent}% - \global\everypar = {\kern -\parindent \restorefirstparagraphindent}% -} -% -\gdef\restorefirstparagraphindent{% - \global\let\indent = \ptexindent - \global\let\noindent = \ptexnoindent - \global\everypar = {}% -} - - -% @refill is a no-op. -\let\refill=\relax - -% @setfilename INFO-FILENAME - ignored -\let\setfilename=\comment - -% @bye. -\outer\def\bye{\pagealignmacro\tracingstats=1\ptexend} - - -\message{pdf,} -% adobe `portable' document format -\newcount\tempnum -\newcount\lnkcount -\newtoks\filename -\newcount\filenamelength -\newcount\pgn -\newtoks\toksA -\newtoks\toksB -\newtoks\toksC -\newtoks\toksD -\newbox\boxA -\newbox\boxB -\newcount\countA -\newif\ifpdf -\newif\ifpdfmakepagedest - -% -% For LuaTeX -% - -\newif\iftxiuseunicodedestname -\txiuseunicodedestnamefalse % For pdfTeX etc. - -\ifx\luatexversion\thisisundefined -\else - % Use Unicode destination names - \txiuseunicodedestnametrue - % Escape PDF strings with converting UTF-16 from UTF-8 - \begingroup - \catcode`\%=12 - \directlua{ - function UTF16oct(str) - tex.sprint(string.char(0x5c) .. '376' .. string.char(0x5c) .. '377') - for c in string.utfvalues(str) do - if c < 0x10000 then - tex.sprint( - string.format(string.char(0x5c) .. string.char(0x25) .. '03o' .. - string.char(0x5c) .. string.char(0x25) .. '03o', - (c / 256), (c % 256))) - else - c = c - 0x10000 - local c_hi = c / 1024 + 0xd800 - local c_lo = c % 1024 + 0xdc00 - tex.sprint( - string.format(string.char(0x5c) .. string.char(0x25) .. '03o' .. - string.char(0x5c) .. string.char(0x25) .. '03o' .. - string.char(0x5c) .. string.char(0x25) .. '03o' .. - string.char(0x5c) .. string.char(0x25) .. '03o', - (c_hi / 256), (c_hi % 256), - (c_lo / 256), (c_lo % 256))) - end - end - end - } - \endgroup - \def\pdfescapestrutfsixteen#1{\directlua{UTF16oct('\luaescapestring{#1}')}} - % Escape PDF strings without converting - \begingroup - \directlua{ - function PDFescstr(str) - for c in string.bytes(str) do - if c <= 0x20 or c >= 0x80 or c == 0x28 or c == 0x29 or c == 0x5c then - tex.sprint( - string.format(string.char(0x5c) .. string.char(0x25) .. '03o', - c)) - else - tex.sprint(string.char(c)) - end - end - end - } - \endgroup - \def\pdfescapestring#1{\directlua{PDFescstr('\luaescapestring{#1}')}} - \ifnum\luatexversion>84 - % For LuaTeX >= 0.85 - \def\pdfdest{\pdfextension dest} - \let\pdfoutput\outputmode - \def\pdfliteral{\pdfextension literal} - \def\pdfcatalog{\pdfextension catalog} - \def\pdftexversion{\numexpr\pdffeedback version\relax} - \let\pdfximage\saveimageresource - \let\pdfrefximage\useimageresource - \let\pdflastximage\lastsavedimageresourceindex - \def\pdfendlink{\pdfextension endlink\relax} - \def\pdfoutline{\pdfextension outline} - \def\pdfstartlink{\pdfextension startlink} - \def\pdffontattr{\pdfextension fontattr} - \def\pdfobj{\pdfextension obj} - \def\pdflastobj{\numexpr\pdffeedback lastobj\relax} - \let\pdfpagewidth\pagewidth - \let\pdfpageheight\pageheight - \edef\pdfhorigin{\pdfvariable horigin} - \edef\pdfvorigin{\pdfvariable vorigin} - \fi -\fi - -% when pdftex is run in dvi mode, \pdfoutput is defined (so \pdfoutput=1 -% can be set). So we test for \relax and 0 as well as being undefined. -\ifx\pdfoutput\thisisundefined -\else - \ifx\pdfoutput\relax - \else - \ifcase\pdfoutput - \else - \pdftrue - \fi - \fi -\fi - -% PDF uses PostScript string constants for the names of xref targets, -% for display in the outlines, and in other places. Thus, we have to -% double any backslashes. Otherwise, a name like "\node" will be -% interpreted as a newline (\n), followed by o, d, e. Not good. -% -% See http://www.ntg.nl/pipermail/ntg-pdftex/2004-July/000654.html and -% related messages. The final outcome is that it is up to the TeX user -% to double the backslashes and otherwise make the string valid, so -% that's what we do. pdftex 1.30.0 (ca.2005) introduced a primitive to -% do this reliably, so we use it. - -% #1 is a control sequence in which to do the replacements, -% which we \xdef. -\def\txiescapepdf#1{% - \ifx\pdfescapestring\thisisundefined - % No primitive available; should we give a warning or log? - % Many times it won't matter. - \xdef#1{#1}% - \else - % The expandable \pdfescapestring primitive escapes parentheses, - % backslashes, and other special chars. - \xdef#1{\pdfescapestring{#1}}% - \fi -} -\def\txiescapepdfutfsixteen#1{% - \ifx\pdfescapestrutfsixteen\thisisundefined - % No UTF-16 converting macro available. - \txiescapepdf{#1}% - \else - \xdef#1{\pdfescapestrutfsixteen{#1}}% - \fi -} - -\newhelp\nopdfimagehelp{Texinfo supports .png, .jpg, .jpeg, and .pdf images -with PDF output, and none of those formats could be found. (.eps cannot -be supported due to the design of the PDF format; use regular TeX (DVI -output) for that.)} - -\ifpdf - % - % Color manipulation macros using ideas from pdfcolor.tex, - % except using rgb instead of cmyk; the latter is said to render as a - % very dark gray on-screen and a very dark halftone in print, instead - % of actual black. The dark red here is dark enough to print on paper as - % nearly black, but still distinguishable for online viewing. We use - % black by default, though. - \def\rgbDarkRed{0.50 0.09 0.12} - \def\rgbBlack{0 0 0} - % - % rg sets the color for filling (usual text, etc.); - % RG sets the color for stroking (thin rules, e.g., normal _'s). - \def\pdfsetcolor#1{\pdfliteral{#1 rg #1 RG}} - % - % Set color, and create a mark which defines \thiscolor accordingly, - % so that \makeheadline knows which color to restore. - \def\setcolor#1{% - \xdef\lastcolordefs{\gdef\noexpand\thiscolor{#1}}% - \domark - \pdfsetcolor{#1}% - } - % - \def\maincolor{\rgbBlack} - \pdfsetcolor{\maincolor} - \edef\thiscolor{\maincolor} - \def\lastcolordefs{} - % - \def\makefootline{% - \baselineskip24pt - \line{\pdfsetcolor{\maincolor}\the\footline}% - } - % - \def\makeheadline{% - \vbox to 0pt{% - \vskip-22.5pt - \line{% - \vbox to8.5pt{}% - % Extract \thiscolor definition from the marks. - \getcolormarks - % Typeset the headline with \maincolor, then restore the color. - \pdfsetcolor{\maincolor}\the\headline\pdfsetcolor{\thiscolor}% - }% - \vss - }% - \nointerlineskip - } - % - % - \pdfcatalog{/PageMode /UseOutlines} - % - % #1 is image name, #2 width (might be empty/whitespace), #3 height (ditto). - \def\dopdfimage#1#2#3{% - \def\pdfimagewidth{#2}\setbox0 = \hbox{\ignorespaces #2}% - \def\pdfimageheight{#3}\setbox2 = \hbox{\ignorespaces #3}% - % - % pdftex (and the PDF format) support .pdf, .png, .jpg (among - % others). Let's try in that order, PDF first since if - % someone has a scalable image, presumably better to use that than a - % bitmap. - \let\pdfimgext=\empty - \begingroup - \openin 1 #1.pdf \ifeof 1 - \openin 1 #1.PDF \ifeof 1 - \openin 1 #1.png \ifeof 1 - \openin 1 #1.jpg \ifeof 1 - \openin 1 #1.jpeg \ifeof 1 - \openin 1 #1.JPG \ifeof 1 - \errhelp = \nopdfimagehelp - \errmessage{Could not find image file #1 for pdf}% - \else \gdef\pdfimgext{JPG}% - \fi - \else \gdef\pdfimgext{jpeg}% - \fi - \else \gdef\pdfimgext{jpg}% - \fi - \else \gdef\pdfimgext{png}% - \fi - \else \gdef\pdfimgext{PDF}% - \fi - \else \gdef\pdfimgext{pdf}% - \fi - \closein 1 - \endgroup - % - % without \immediate, ancient pdftex seg faults when the same image is - % included twice. (Version 3.14159-pre-1.0-unofficial-20010704.) - \ifnum\pdftexversion < 14 - \immediate\pdfimage - \else - \immediate\pdfximage - \fi - \ifdim \wd0 >0pt width \pdfimagewidth \fi - \ifdim \wd2 >0pt height \pdfimageheight \fi - \ifnum\pdftexversion<13 - #1.\pdfimgext - \else - {#1.\pdfimgext}% - \fi - \ifnum\pdftexversion < 14 \else - \pdfrefximage \pdflastximage - \fi} - % - \def\setpdfdestname#1{{% - % We have to set dummies so commands such as @code, and characters - % such as \, aren't expanded when present in a section title. - \indexnofonts - \makevalueexpandable - \turnoffactive - \iftxiuseunicodedestname - \ifx \declaredencoding \latone - % Pass through Latin-1 characters. - % LuaTeX with byte wise I/O converts Latin-1 characters to Unicode. - \else - \ifx \declaredencoding \utfeight - % Pass through Unicode characters. - \else - % Use ASCII approximations in destination names. - \passthroughcharsfalse - \fi - \fi - \else - % Use ASCII approximations in destination names. - \passthroughcharsfalse - \fi - \def\pdfdestname{#1}% - \txiescapepdf\pdfdestname - }} - % - \def\setpdfoutlinetext#1{{% - \indexnofonts - \makevalueexpandable - \turnoffactive - \ifx \declaredencoding \latone - % The PDF format can use an extended form of Latin-1 in bookmark - % strings. See Appendix D of the PDF Reference, Sixth Edition, for - % the "PDFDocEncoding". - \passthroughcharstrue - % Pass through Latin-1 characters. - % LuaTeX: Convert to Unicode - % pdfTeX: Use Latin-1 as PDFDocEncoding - \def\pdfoutlinetext{#1}% - \else - \ifx \declaredencoding \utfeight - \ifx\luatexversion\thisisundefined - % For pdfTeX with UTF-8. - % TODO: the PDF format can use UTF-16 in bookmark strings, - % but the code for this isn't done yet. - % Use ASCII approximations. - \passthroughcharsfalse - \def\pdfoutlinetext{#1}% - \else - % For LuaTeX with UTF-8. - % Pass through Unicode characters for title texts. - \passthroughcharstrue - \def\pdfoutlinetext{#1}% - \fi - \else - % For non-Latin-1 or non-UTF-8 encodings. - % Use ASCII approximations. - \passthroughcharsfalse - \def\pdfoutlinetext{#1}% - \fi - \fi - % LuaTeX: Convert to UTF-16 - % pdfTeX: Use Latin-1 as PDFDocEncoding - \txiescapepdfutfsixteen\pdfoutlinetext - }} - % - \def\pdfmkdest#1{% - \setpdfdestname{#1}% - \safewhatsit{\pdfdest name{\pdfdestname} xyz}% - } - % - % used to mark target names; must be expandable. - \def\pdfmkpgn#1{#1} - % - % by default, use black for everything. - \def\urlcolor{\rgbBlack} - \def\linkcolor{\rgbBlack} - \def\endlink{\setcolor{\maincolor}\pdfendlink} - % - % Adding outlines to PDF; macros for calculating structure of outlines - % come from Petr Olsak - \def\expnumber#1{\expandafter\ifx\csname#1\endcsname\relax 0% - \else \csname#1\endcsname \fi} - \def\advancenumber#1{\tempnum=\expnumber{#1}\relax - \advance\tempnum by 1 - \expandafter\xdef\csname#1\endcsname{\the\tempnum}} - % - % #1 is the section text, which is what will be displayed in the - % outline by the pdf viewer. #2 is the pdf expression for the number - % of subentries (or empty, for subsubsections). #3 is the node text, - % which might be empty if this toc entry had no corresponding node. - % #4 is the page number - % - \def\dopdfoutline#1#2#3#4{% - % Generate a link to the node text if that exists; else, use the - % page number. We could generate a destination for the section - % text in the case where a section has no node, but it doesn't - % seem worth the trouble, since most documents are normally structured. - \setpdfoutlinetext{#1} - \setpdfdestname{#3} - \ifx\pdfdestname\empty - \def\pdfdestname{#4}% - \fi - % - \pdfoutline goto name{\pdfmkpgn{\pdfdestname}}#2{\pdfoutlinetext}% - } - % - \def\pdfmakeoutlines{% - \begingroup - % Read toc silently, to get counts of subentries for \pdfoutline. - \def\partentry##1##2##3##4{}% ignore parts in the outlines - \def\numchapentry##1##2##3##4{% - \def\thischapnum{##2}% - \def\thissecnum{0}% - \def\thissubsecnum{0}% - }% - \def\numsecentry##1##2##3##4{% - \advancenumber{chap\thischapnum}% - \def\thissecnum{##2}% - \def\thissubsecnum{0}% - }% - \def\numsubsecentry##1##2##3##4{% - \advancenumber{sec\thissecnum}% - \def\thissubsecnum{##2}% - }% - \def\numsubsubsecentry##1##2##3##4{% - \advancenumber{subsec\thissubsecnum}% - }% - \def\thischapnum{0}% - \def\thissecnum{0}% - \def\thissubsecnum{0}% - % - % use \def rather than \let here because we redefine \chapentry et - % al. a second time, below. - \def\appentry{\numchapentry}% - \def\appsecentry{\numsecentry}% - \def\appsubsecentry{\numsubsecentry}% - \def\appsubsubsecentry{\numsubsubsecentry}% - \def\unnchapentry{\numchapentry}% - \def\unnsecentry{\numsecentry}% - \def\unnsubsecentry{\numsubsecentry}% - \def\unnsubsubsecentry{\numsubsubsecentry}% - \readdatafile{toc}% - % - % Read toc second time, this time actually producing the outlines. - % The `-' means take the \expnumber as the absolute number of - % subentries, which we calculated on our first read of the .toc above. - % - % We use the node names as the destinations. - \def\numchapentry##1##2##3##4{% - \dopdfoutline{##1}{count-\expnumber{chap##2}}{##3}{##4}}% - \def\numsecentry##1##2##3##4{% - \dopdfoutline{##1}{count-\expnumber{sec##2}}{##3}{##4}}% - \def\numsubsecentry##1##2##3##4{% - \dopdfoutline{##1}{count-\expnumber{subsec##2}}{##3}{##4}}% - \def\numsubsubsecentry##1##2##3##4{% count is always zero - \dopdfoutline{##1}{}{##3}{##4}}% - % - % PDF outlines are displayed using system fonts, instead of - % document fonts. Therefore we cannot use special characters, - % since the encoding is unknown. For example, the eogonek from - % Latin 2 (0xea) gets translated to a | character. Info from - % Staszek Wawrykiewicz, 19 Jan 2004 04:09:24 +0100. - % - % TODO this right, we have to translate 8-bit characters to - % their "best" equivalent, based on the @documentencoding. Too - % much work for too little return. Just use the ASCII equivalents - % we use for the index sort strings. - % - \indexnofonts - \setupdatafile - % We can have normal brace characters in the PDF outlines, unlike - % Texinfo index files. So set that up. - \def\{{\lbracecharliteral}% - \def\}{\rbracecharliteral}% - \catcode`\\=\active \otherbackslash - \input \tocreadfilename - \endgroup - } - {\catcode`[=1 \catcode`]=2 - \catcode`{=\other \catcode`}=\other - \gdef\lbracecharliteral[{]% - \gdef\rbracecharliteral[}]% - ] - % - \def\skipspaces#1{\def\PP{#1}\def\D{|}% - \ifx\PP\D\let\nextsp\relax - \else\let\nextsp\skipspaces - \addtokens{\filename}{\PP}% - \advance\filenamelength by 1 - \fi - \nextsp} - \def\getfilename#1{% - \filenamelength=0 - % If we don't expand the argument now, \skipspaces will get - % snagged on things like "@value{foo}". - \edef\temp{#1}% - \expandafter\skipspaces\temp|\relax - } - \ifnum\pdftexversion < 14 - \let \startlink \pdfannotlink - \else - \let \startlink \pdfstartlink - \fi - % make a live url in pdf output. - \def\pdfurl#1{% - \begingroup - % it seems we really need yet another set of dummies; have not - % tried to figure out what each command should do in the context - % of @url. for now, just make @/ a no-op, that's the only one - % people have actually reported a problem with. - % - \normalturnoffactive - \def\@{@}% - \let\/=\empty - \makevalueexpandable - % do we want to go so far as to use \indexnofonts instead of just - % special-casing \var here? - \def\var##1{##1}% - % - \leavevmode\setcolor{\urlcolor}% - \startlink attr{/Border [0 0 0]}% - user{/Subtype /Link /A << /S /URI /URI (#1) >>}% - \endgroup} - % \pdfgettoks - Surround page numbers in #1 with @pdflink. #1 may - % be a simple number, or a list of numbers in the case of an index - % entry. - \def\pdfgettoks#1.{\setbox\boxA=\hbox{\toksA={#1.}\toksB={}\maketoks}} - \def\addtokens#1#2{\edef\addtoks{\noexpand#1={\the#1#2}}\addtoks} - \def\adn#1{\addtokens{\toksC}{#1}\global\countA=1\let\next=\maketoks} - \def\poptoks#1#2|ENDTOKS|{\let\first=#1\toksD={#1}\toksA={#2}} - \def\maketoks{% - \expandafter\poptoks\the\toksA|ENDTOKS|\relax - \ifx\first0\adn0 - \else\ifx\first1\adn1 \else\ifx\first2\adn2 \else\ifx\first3\adn3 - \else\ifx\first4\adn4 \else\ifx\first5\adn5 \else\ifx\first6\adn6 - \else\ifx\first7\adn7 \else\ifx\first8\adn8 \else\ifx\first9\adn9 - \else - \ifnum0=\countA\else\makelink\fi - \ifx\first.\let\next=\done\else - \let\next=\maketoks - \addtokens{\toksB}{\the\toksD} - \ifx\first,\addtokens{\toksB}{\space}\fi - \fi - \fi\fi\fi\fi\fi\fi\fi\fi\fi\fi - \next} - \def\makelink{\addtokens{\toksB}% - {\noexpand\pdflink{\the\toksC}}\toksC={}\global\countA=0} - \def\pdflink#1{% - \startlink attr{/Border [0 0 0]} goto name{\pdfmkpgn{#1}} - \setcolor{\linkcolor}#1\endlink} - \def\done{\edef\st{\global\noexpand\toksA={\the\toksB}}\st} -\else - % non-pdf mode - \let\pdfmkdest = \gobble - \let\pdfurl = \gobble - \let\endlink = \relax - \let\setcolor = \gobble - \let\pdfsetcolor = \gobble - \let\pdfmakeoutlines = \relax -\fi % \ifx\pdfoutput - -% -% For XeTeX -% -\ifx\XeTeXrevision\thisisundefined -\else - % - % XeTeX version check - % - \ifnum\strcmp{\the\XeTeXversion\XeTeXrevision}{0.99996}>-1 - % TeX Live 2016 contains XeTeX 0.99996 and xdvipdfmx 20160307. - % It can use the `dvipdfmx:config' special (from TeX Live SVN r40941). - % For avoiding PDF destination name replacement, we use this special - % instead of xdvipdfmx's command line option `-C 0x0010'. - \special{dvipdfmx:config C 0x0010} - % XeTeX 0.99995+ comes with xdvipdfmx 20160307+. - % It can handle Unicode destination names for PDF. - \txiuseunicodedestnametrue - \else - % XeTeX < 0.99996 (TeX Live < 2016) cannot use the - % `dvipdfmx:config' special. - % So for avoiding PDF destination name replacement, - % xdvipdfmx's command line option `-C 0x0010' is necessary. - % - % XeTeX < 0.99995 can not handle Unicode destination names for PDF - % because xdvipdfmx 20150315 has a UTF-16 conversion issue. - % It is fixed by xdvipdfmx 20160106 (TeX Live SVN r39753). - \txiuseunicodedestnamefalse - \fi - % - % Color support - % - \def\rgbDarkRed{0.50 0.09 0.12} - \def\rgbBlack{0 0 0} - % - \def\pdfsetcolor#1{\special{pdf:scolor [#1]}} - % - % Set color, and create a mark which defines \thiscolor accordingly, - % so that \makeheadline knows which color to restore. - \def\setcolor#1{% - \xdef\lastcolordefs{\gdef\noexpand\thiscolor{#1}}% - \domark - \pdfsetcolor{#1}% - } - % - \def\maincolor{\rgbBlack} - \pdfsetcolor{\maincolor} - \edef\thiscolor{\maincolor} - \def\lastcolordefs{} - % - \def\makefootline{% - \baselineskip24pt - \line{\pdfsetcolor{\maincolor}\the\footline}% - } - % - \def\makeheadline{% - \vbox to 0pt{% - \vskip-22.5pt - \line{% - \vbox to8.5pt{}% - % Extract \thiscolor definition from the marks. - \getcolormarks - % Typeset the headline with \maincolor, then restore the color. - \pdfsetcolor{\maincolor}\the\headline\pdfsetcolor{\thiscolor}% - }% - \vss - }% - \nointerlineskip - } - % - % PDF outline support - % - % Emulate pdfTeX primitive - \def\pdfdest name#1 xyz{% - \special{pdf:dest (#1) [@thispage /XYZ @xpos @ypos null]}% - } - % - \def\setpdfdestname#1{{% - % We have to set dummies so commands such as @code, and characters - % such as \, aren't expanded when present in a section title. - \indexnofonts - \makevalueexpandable - \turnoffactive - \iftxiuseunicodedestname - % Pass through Unicode characters. - \else - % Use ASCII approximations in destination names. - \passthroughcharsfalse - \fi - \def\pdfdestname{#1}% - \txiescapepdf\pdfdestname - }} - % - \def\setpdfoutlinetext#1{{% - \turnoffactive - % Always use Unicode characters in title texts. - \def\pdfoutlinetext{#1}% - % For XeTeX, xdvipdfmx converts to UTF-16. - % So we do not convert. - \txiescapepdf\pdfoutlinetext - }} - % - \def\pdfmkdest#1{% - \setpdfdestname{#1}% - \safewhatsit{\pdfdest name{\pdfdestname} xyz}% - } - % - % by default, use black for everything. - \def\urlcolor{\rgbBlack} - \def\linkcolor{\rgbBlack} - \def\endlink{\setcolor{\maincolor}\pdfendlink} - % - \def\dopdfoutline#1#2#3#4{% - \setpdfoutlinetext{#1} - \setpdfdestname{#3} - \ifx\pdfdestname\empty - \def\pdfdestname{#4}% - \fi - % - \special{pdf:out [-] #2 << /Title (\pdfoutlinetext) /A - << /S /GoTo /D (\pdfdestname) >> >> }% - } - % - \def\pdfmakeoutlines{% - \begingroup - % - % For XeTeX, counts of subentries are not necessary. - % Therefore, we read toc only once. - % - % We use node names as destinations. - \def\partentry##1##2##3##4{}% ignore parts in the outlines - \def\numchapentry##1##2##3##4{% - \dopdfoutline{##1}{1}{##3}{##4}}% - \def\numsecentry##1##2##3##4{% - \dopdfoutline{##1}{2}{##3}{##4}}% - \def\numsubsecentry##1##2##3##4{% - \dopdfoutline{##1}{3}{##3}{##4}}% - \def\numsubsubsecentry##1##2##3##4{% - \dopdfoutline{##1}{4}{##3}{##4}}% - % - \let\appentry\numchapentry% - \let\appsecentry\numsecentry% - \let\appsubsecentry\numsubsecentry% - \let\appsubsubsecentry\numsubsubsecentry% - \let\unnchapentry\numchapentry% - \let\unnsecentry\numsecentry% - \let\unnsubsecentry\numsubsecentry% - \let\unnsubsubsecentry\numsubsubsecentry% - % - % For XeTeX, xdvipdfmx converts strings to UTF-16. - % Therefore, the encoding and the language may not be considered. - % - \indexnofonts - \setupdatafile - % We can have normal brace characters in the PDF outlines, unlike - % Texinfo index files. So set that up. - \def\{{\lbracecharliteral}% - \def\}{\rbracecharliteral}% - \catcode`\\=\active \otherbackslash - \input \tocreadfilename - \endgroup - } - {\catcode`[=1 \catcode`]=2 - \catcode`{=\other \catcode`}=\other - \gdef\lbracecharliteral[{]% - \gdef\rbracecharliteral[}]% - ] - - \special{pdf:docview << /PageMode /UseOutlines >> } - % ``\special{pdf:tounicode ...}'' is not necessary - % because xdvipdfmx converts strings from UTF-8 to UTF-16 without it. - % However, due to a UTF-16 conversion issue of xdvipdfmx 20150315, - % ``\special{pdf:dest ...}'' cannot handle non-ASCII strings. - % It is fixed by xdvipdfmx 20160106 (TeX Live SVN r39753). -% - \def\skipspaces#1{\def\PP{#1}\def\D{|}% - \ifx\PP\D\let\nextsp\relax - \else\let\nextsp\skipspaces - \addtokens{\filename}{\PP}% - \advance\filenamelength by 1 - \fi - \nextsp} - \def\getfilename#1{% - \filenamelength=0 - % If we don't expand the argument now, \skipspaces will get - % snagged on things like "@value{foo}". - \edef\temp{#1}% - \expandafter\skipspaces\temp|\relax - } - % make a live url in pdf output. - \def\pdfurl#1{% - \begingroup - % it seems we really need yet another set of dummies; have not - % tried to figure out what each command should do in the context - % of @url. for now, just make @/ a no-op, that's the only one - % people have actually reported a problem with. - % - \normalturnoffactive - \def\@{@}% - \let\/=\empty - \makevalueexpandable - % do we want to go so far as to use \indexnofonts instead of just - % special-casing \var here? - \def\var##1{##1}% - % - \leavevmode\setcolor{\urlcolor}% - \special{pdf:bann << /Border [0 0 0] - /Subtype /Link /A << /S /URI /URI (#1) >> >>}% - \endgroup} - \def\endlink{\setcolor{\maincolor}\special{pdf:eann}} - \def\pdfgettoks#1.{\setbox\boxA=\hbox{\toksA={#1.}\toksB={}\maketoks}} - \def\addtokens#1#2{\edef\addtoks{\noexpand#1={\the#1#2}}\addtoks} - \def\adn#1{\addtokens{\toksC}{#1}\global\countA=1\let\next=\maketoks} - \def\poptoks#1#2|ENDTOKS|{\let\first=#1\toksD={#1}\toksA={#2}} - \def\maketoks{% - \expandafter\poptoks\the\toksA|ENDTOKS|\relax - \ifx\first0\adn0 - \else\ifx\first1\adn1 \else\ifx\first2\adn2 \else\ifx\first3\adn3 - \else\ifx\first4\adn4 \else\ifx\first5\adn5 \else\ifx\first6\adn6 - \else\ifx\first7\adn7 \else\ifx\first8\adn8 \else\ifx\first9\adn9 - \else - \ifnum0=\countA\else\makelink\fi - \ifx\first.\let\next=\done\else - \let\next=\maketoks - \addtokens{\toksB}{\the\toksD} - \ifx\first,\addtokens{\toksB}{\space}\fi - \fi - \fi\fi\fi\fi\fi\fi\fi\fi\fi\fi - \next} - \def\makelink{\addtokens{\toksB}% - {\noexpand\pdflink{\the\toksC}}\toksC={}\global\countA=0} - \def\pdflink#1{% - \special{pdf:bann << /Border [0 0 0] - /Type /Annot /Subtype /Link /A << /S /GoTo /D (#1) >> >>}% - \setcolor{\linkcolor}#1\endlink} - \def\done{\edef\st{\global\noexpand\toksA={\the\toksB}}\st} -% - % - % @image support - % - % #1 is image name, #2 width (might be empty/whitespace), #3 height (ditto). - \def\doxeteximage#1#2#3{% - \def\xeteximagewidth{#2}\setbox0 = \hbox{\ignorespaces #2}% - \def\xeteximageheight{#3}\setbox2 = \hbox{\ignorespaces #3}% - % - % XeTeX (and the PDF format) supports .pdf, .png, .jpg (among - % others). Let's try in that order, PDF first since if - % someone has a scalable image, presumably better to use that than a - % bitmap. - \let\xeteximgext=\empty - \begingroup - \openin 1 #1.pdf \ifeof 1 - \openin 1 #1.PDF \ifeof 1 - \openin 1 #1.png \ifeof 1 - \openin 1 #1.jpg \ifeof 1 - \openin 1 #1.jpeg \ifeof 1 - \openin 1 #1.JPG \ifeof 1 - \errmessage{Could not find image file #1 for XeTeX}% - \else \gdef\xeteximgext{JPG}% - \fi - \else \gdef\xeteximgext{jpeg}% - \fi - \else \gdef\xeteximgext{jpg}% - \fi - \else \gdef\xeteximgext{png}% - \fi - \else \gdef\xeteximgext{PDF}% - \fi - \else \gdef\xeteximgext{pdf}% - \fi - \closein 1 - \endgroup - % - \def\xetexpdfext{pdf}% - \ifx\xeteximgext\xetexpdfext - \XeTeXpdffile "#1".\xeteximgext "" - \else - \def\xetexpdfext{PDF}% - \ifx\xeteximgext\xetexpdfext - \XeTeXpdffile "#1".\xeteximgext "" - \else - \XeTeXpicfile "#1".\xeteximgext "" - \fi - \fi - \ifdim \wd0 >0pt width \xeteximagewidth \fi - \ifdim \wd2 >0pt height \xeteximageheight \fi \relax - } -\fi - - -% -\message{fonts,} - -% Set the baselineskip to #1, and the lineskip and strut size -% correspondingly. There is no deep meaning behind these magic numbers -% used as factors; they just match (closely enough) what Knuth defined. -% -\def\lineskipfactor{.08333} -\def\strutheightpercent{.70833} -\def\strutdepthpercent {.29167} -% -% can get a sort of poor man's double spacing by redefining this. -\def\baselinefactor{1} -% -\newdimen\textleading -\def\setleading#1{% - \dimen0 = #1\relax - \normalbaselineskip = \baselinefactor\dimen0 - \normallineskip = \lineskipfactor\normalbaselineskip - \normalbaselines - \setbox\strutbox =\hbox{% - \vrule width0pt height\strutheightpercent\baselineskip - depth \strutdepthpercent \baselineskip - }% -} - -% PDF CMaps. See also LaTeX's t1.cmap. -% -% do nothing with this by default. -\expandafter\let\csname cmapOT1\endcsname\gobble -\expandafter\let\csname cmapOT1IT\endcsname\gobble -\expandafter\let\csname cmapOT1TT\endcsname\gobble - -% if we are producing pdf, and we have \pdffontattr, then define cmaps. -% (\pdffontattr was introduced many years ago, but people still run -% older pdftex's; it's easy to conditionalize, so we do.) -\ifpdf \ifx\pdffontattr\thisisundefined \else - \begingroup - \catcode`\^^M=\active \def^^M{^^J}% Output line endings as the ^^J char. - \catcode`\%=12 \immediate\pdfobj stream {%!PS-Adobe-3.0 Resource-CMap -%%DocumentNeededResources: ProcSet (CIDInit) -%%IncludeResource: ProcSet (CIDInit) -%%BeginResource: CMap (TeX-OT1-0) -%%Title: (TeX-OT1-0 TeX OT1 0) -%%Version: 1.000 -%%EndComments -/CIDInit /ProcSet findresource begin -12 dict begin -begincmap -/CIDSystemInfo -<< /Registry (TeX) -/Ordering (OT1) -/Supplement 0 ->> def -/CMapName /TeX-OT1-0 def -/CMapType 2 def -1 begincodespacerange -<00> <7F> -endcodespacerange -8 beginbfrange -<00> <01> <0393> -<09> <0A> <03A8> -<23> <26> <0023> -<28> <3B> <0028> -<3F> <5B> <003F> -<5D> <5E> <005D> -<61> <7A> <0061> -<7B> <7C> <2013> -endbfrange -40 beginbfchar -<02> <0398> -<03> <039B> -<04> <039E> -<05> <03A0> -<06> <03A3> -<07> <03D2> -<08> <03A6> -<0B> <00660066> -<0C> <00660069> -<0D> <0066006C> -<0E> <006600660069> -<0F> <00660066006C> -<10> <0131> -<11> <0237> -<12> <0060> -<13> <00B4> -<14> <02C7> -<15> <02D8> -<16> <00AF> -<17> <02DA> -<18> <00B8> -<19> <00DF> -<1A> <00E6> -<1B> <0153> -<1C> <00F8> -<1D> <00C6> -<1E> <0152> -<1F> <00D8> -<21> <0021> -<22> <201D> -<27> <2019> -<3C> <00A1> -<3D> <003D> -<3E> <00BF> -<5C> <201C> -<5F> <02D9> -<60> <2018> -<7D> <02DD> -<7E> <007E> -<7F> <00A8> -endbfchar -endcmap -CMapName currentdict /CMap defineresource pop -end -end -%%EndResource -%%EOF - }\endgroup - \expandafter\edef\csname cmapOT1\endcsname#1{% - \pdffontattr#1{/ToUnicode \the\pdflastobj\space 0 R}% - }% -% -% \cmapOT1IT - \begingroup - \catcode`\^^M=\active \def^^M{^^J}% Output line endings as the ^^J char. - \catcode`\%=12 \immediate\pdfobj stream {%!PS-Adobe-3.0 Resource-CMap -%%DocumentNeededResources: ProcSet (CIDInit) -%%IncludeResource: ProcSet (CIDInit) -%%BeginResource: CMap (TeX-OT1IT-0) -%%Title: (TeX-OT1IT-0 TeX OT1IT 0) -%%Version: 1.000 -%%EndComments -/CIDInit /ProcSet findresource begin -12 dict begin -begincmap -/CIDSystemInfo -<< /Registry (TeX) -/Ordering (OT1IT) -/Supplement 0 ->> def -/CMapName /TeX-OT1IT-0 def -/CMapType 2 def -1 begincodespacerange -<00> <7F> -endcodespacerange -8 beginbfrange -<00> <01> <0393> -<09> <0A> <03A8> -<25> <26> <0025> -<28> <3B> <0028> -<3F> <5B> <003F> -<5D> <5E> <005D> -<61> <7A> <0061> -<7B> <7C> <2013> -endbfrange -42 beginbfchar -<02> <0398> -<03> <039B> -<04> <039E> -<05> <03A0> -<06> <03A3> -<07> <03D2> -<08> <03A6> -<0B> <00660066> -<0C> <00660069> -<0D> <0066006C> -<0E> <006600660069> -<0F> <00660066006C> -<10> <0131> -<11> <0237> -<12> <0060> -<13> <00B4> -<14> <02C7> -<15> <02D8> -<16> <00AF> -<17> <02DA> -<18> <00B8> -<19> <00DF> -<1A> <00E6> -<1B> <0153> -<1C> <00F8> -<1D> <00C6> -<1E> <0152> -<1F> <00D8> -<21> <0021> -<22> <201D> -<23> <0023> -<24> <00A3> -<27> <2019> -<3C> <00A1> -<3D> <003D> -<3E> <00BF> -<5C> <201C> -<5F> <02D9> -<60> <2018> -<7D> <02DD> -<7E> <007E> -<7F> <00A8> -endbfchar -endcmap -CMapName currentdict /CMap defineresource pop -end -end -%%EndResource -%%EOF - }\endgroup - \expandafter\edef\csname cmapOT1IT\endcsname#1{% - \pdffontattr#1{/ToUnicode \the\pdflastobj\space 0 R}% - }% -% -% \cmapOT1TT - \begingroup - \catcode`\^^M=\active \def^^M{^^J}% Output line endings as the ^^J char. - \catcode`\%=12 \immediate\pdfobj stream {%!PS-Adobe-3.0 Resource-CMap -%%DocumentNeededResources: ProcSet (CIDInit) -%%IncludeResource: ProcSet (CIDInit) -%%BeginResource: CMap (TeX-OT1TT-0) -%%Title: (TeX-OT1TT-0 TeX OT1TT 0) -%%Version: 1.000 -%%EndComments -/CIDInit /ProcSet findresource begin -12 dict begin -begincmap -/CIDSystemInfo -<< /Registry (TeX) -/Ordering (OT1TT) -/Supplement 0 ->> def -/CMapName /TeX-OT1TT-0 def -/CMapType 2 def -1 begincodespacerange -<00> <7F> -endcodespacerange -5 beginbfrange -<00> <01> <0393> -<09> <0A> <03A8> -<21> <26> <0021> -<28> <5F> <0028> -<61> <7E> <0061> -endbfrange -32 beginbfchar -<02> <0398> -<03> <039B> -<04> <039E> -<05> <03A0> -<06> <03A3> -<07> <03D2> -<08> <03A6> -<0B> <2191> -<0C> <2193> -<0D> <0027> -<0E> <00A1> -<0F> <00BF> -<10> <0131> -<11> <0237> -<12> <0060> -<13> <00B4> -<14> <02C7> -<15> <02D8> -<16> <00AF> -<17> <02DA> -<18> <00B8> -<19> <00DF> -<1A> <00E6> -<1B> <0153> -<1C> <00F8> -<1D> <00C6> -<1E> <0152> -<1F> <00D8> -<20> <2423> -<27> <2019> -<60> <2018> -<7F> <00A8> -endbfchar -endcmap -CMapName currentdict /CMap defineresource pop -end -end -%%EndResource -%%EOF - }\endgroup - \expandafter\edef\csname cmapOT1TT\endcsname#1{% - \pdffontattr#1{/ToUnicode \the\pdflastobj\space 0 R}% - }% -\fi\fi - - -% Set the font macro #1 to the font named \fontprefix#2. -% #3 is the font's design size, #4 is a scale factor, #5 is the CMap -% encoding (only OT1, OT1IT and OT1TT are allowed, or empty to omit). -% Example: -% #1 = \textrm -% #2 = \rmshape -% #3 = 10 -% #4 = \mainmagstep -% #5 = OT1 -% -\def\setfont#1#2#3#4#5{% - \font#1=\fontprefix#2#3 scaled #4 - \csname cmap#5\endcsname#1% -} -% This is what gets called when #5 of \setfont is empty. -\let\cmap\gobble -% -% (end of cmaps) - -% Use cm as the default font prefix. -% To specify the font prefix, you must define \fontprefix -% before you read in texinfo.tex. -\ifx\fontprefix\thisisundefined -\def\fontprefix{cm} -\fi -% Support font families that don't use the same naming scheme as CM. -\def\rmshape{r} -\def\rmbshape{bx} % where the normal face is bold -\def\bfshape{b} -\def\bxshape{bx} -\def\ttshape{tt} -\def\ttbshape{tt} -\def\ttslshape{sltt} -\def\itshape{ti} -\def\itbshape{bxti} -\def\slshape{sl} -\def\slbshape{bxsl} -\def\sfshape{ss} -\def\sfbshape{ss} -\def\scshape{csc} -\def\scbshape{csc} - -% Definitions for a main text size of 11pt. (The default in Texinfo.) -% -\def\definetextfontsizexi{% -% Text fonts (11.2pt, magstep1). -\def\textnominalsize{11pt} -\edef\mainmagstep{\magstephalf} -\setfont\textrm\rmshape{10}{\mainmagstep}{OT1} -\setfont\texttt\ttshape{10}{\mainmagstep}{OT1TT} -\setfont\textbf\bfshape{10}{\mainmagstep}{OT1} -\setfont\textit\itshape{10}{\mainmagstep}{OT1IT} -\setfont\textsl\slshape{10}{\mainmagstep}{OT1} -\setfont\textsf\sfshape{10}{\mainmagstep}{OT1} -\setfont\textsc\scshape{10}{\mainmagstep}{OT1} -\setfont\textttsl\ttslshape{10}{\mainmagstep}{OT1TT} -\font\texti=cmmi10 scaled \mainmagstep -\font\textsy=cmsy10 scaled \mainmagstep -\def\textecsize{1095} - -% A few fonts for @defun names and args. -\setfont\defbf\bfshape{10}{\magstep1}{OT1} -\setfont\deftt\ttshape{10}{\magstep1}{OT1TT} -\setfont\defsl\slshape{10}{\magstep1}{OT1TT} -\setfont\defttsl\ttslshape{10}{\magstep1}{OT1TT} -\def\df{\let\ttfont=\deftt \let\bffont = \defbf -\let\ttslfont=\defttsl \let\slfont=\defsl \bf} - -% Fonts for indices, footnotes, small examples (9pt). -\def\smallnominalsize{9pt} -\setfont\smallrm\rmshape{9}{1000}{OT1} -\setfont\smalltt\ttshape{9}{1000}{OT1TT} -\setfont\smallbf\bfshape{10}{900}{OT1} -\setfont\smallit\itshape{9}{1000}{OT1IT} -\setfont\smallsl\slshape{9}{1000}{OT1} -\setfont\smallsf\sfshape{9}{1000}{OT1} -\setfont\smallsc\scshape{10}{900}{OT1} -\setfont\smallttsl\ttslshape{10}{900}{OT1TT} -\font\smalli=cmmi9 -\font\smallsy=cmsy9 -\def\smallecsize{0900} - -% Fonts for small examples (8pt). -\def\smallernominalsize{8pt} -\setfont\smallerrm\rmshape{8}{1000}{OT1} -\setfont\smallertt\ttshape{8}{1000}{OT1TT} -\setfont\smallerbf\bfshape{10}{800}{OT1} -\setfont\smallerit\itshape{8}{1000}{OT1IT} -\setfont\smallersl\slshape{8}{1000}{OT1} -\setfont\smallersf\sfshape{8}{1000}{OT1} -\setfont\smallersc\scshape{10}{800}{OT1} -\setfont\smallerttsl\ttslshape{10}{800}{OT1TT} -\font\smalleri=cmmi8 -\font\smallersy=cmsy8 -\def\smallerecsize{0800} - -% Fonts for math mode superscripts (7pt). -\def\sevennominalsize{7pt} -\setfont\sevenrm\rmshape{7}{1000}{OT1} -\setfont\seventt\ttshape{10}{700}{OT1TT} -\setfont\sevenbf\bfshape{10}{700}{OT1} -\setfont\sevenit\itshape{7}{1000}{OT1IT} -\setfont\sevensl\slshape{10}{700}{OT1} -\setfont\sevensf\sfshape{10}{700}{OT1} -\setfont\sevensc\scshape{10}{700}{OT1} -\setfont\seventtsl\ttslshape{10}{700}{OT1TT} -\font\seveni=cmmi7 -\font\sevensy=cmsy7 -\def\sevenecsize{0700} - -% Fonts for title page (20.4pt): -\def\titlenominalsize{20pt} -\setfont\titlerm\rmbshape{12}{\magstep3}{OT1} -\setfont\titleit\itbshape{10}{\magstep4}{OT1IT} -\setfont\titlesl\slbshape{10}{\magstep4}{OT1} -\setfont\titlett\ttbshape{12}{\magstep3}{OT1TT} -\setfont\titlettsl\ttslshape{10}{\magstep4}{OT1TT} -\setfont\titlesf\sfbshape{17}{\magstep1}{OT1} -\let\titlebf=\titlerm -\setfont\titlesc\scbshape{10}{\magstep4}{OT1} -\font\titlei=cmmi12 scaled \magstep3 -\font\titlesy=cmsy10 scaled \magstep4 -\def\titleecsize{2074} - -% Chapter (and unnumbered) fonts (17.28pt). -\def\chapnominalsize{17pt} -\setfont\chaprm\rmbshape{12}{\magstep2}{OT1} -\setfont\chapit\itbshape{10}{\magstep3}{OT1IT} -\setfont\chapsl\slbshape{10}{\magstep3}{OT1} -\setfont\chaptt\ttbshape{12}{\magstep2}{OT1TT} -\setfont\chapttsl\ttslshape{10}{\magstep3}{OT1TT} -\setfont\chapsf\sfbshape{17}{1000}{OT1} -\let\chapbf=\chaprm -\setfont\chapsc\scbshape{10}{\magstep3}{OT1} -\font\chapi=cmmi12 scaled \magstep2 -\font\chapsy=cmsy10 scaled \magstep3 -\def\chapecsize{1728} - -% Section fonts (14.4pt). -\def\secnominalsize{14pt} -\setfont\secrm\rmbshape{12}{\magstep1}{OT1} -\setfont\secrmnotbold\rmshape{12}{\magstep1}{OT1} -\setfont\secit\itbshape{10}{\magstep2}{OT1IT} -\setfont\secsl\slbshape{10}{\magstep2}{OT1} -\setfont\sectt\ttbshape{12}{\magstep1}{OT1TT} -\setfont\secttsl\ttslshape{10}{\magstep2}{OT1TT} -\setfont\secsf\sfbshape{12}{\magstep1}{OT1} -\let\secbf\secrm -\setfont\secsc\scbshape{10}{\magstep2}{OT1} -\font\seci=cmmi12 scaled \magstep1 -\font\secsy=cmsy10 scaled \magstep2 -\def\sececsize{1440} - -% Subsection fonts (13.15pt). -\def\ssecnominalsize{13pt} -\setfont\ssecrm\rmbshape{12}{\magstephalf}{OT1} -\setfont\ssecit\itbshape{10}{1315}{OT1IT} -\setfont\ssecsl\slbshape{10}{1315}{OT1} -\setfont\ssectt\ttbshape{12}{\magstephalf}{OT1TT} -\setfont\ssecttsl\ttslshape{10}{1315}{OT1TT} -\setfont\ssecsf\sfbshape{12}{\magstephalf}{OT1} -\let\ssecbf\ssecrm -\setfont\ssecsc\scbshape{10}{1315}{OT1} -\font\sseci=cmmi12 scaled \magstephalf -\font\ssecsy=cmsy10 scaled 1315 -\def\ssececsize{1200} - -% Reduced fonts for @acronym in text (10pt). -\def\reducednominalsize{10pt} -\setfont\reducedrm\rmshape{10}{1000}{OT1} -\setfont\reducedtt\ttshape{10}{1000}{OT1TT} -\setfont\reducedbf\bfshape{10}{1000}{OT1} -\setfont\reducedit\itshape{10}{1000}{OT1IT} -\setfont\reducedsl\slshape{10}{1000}{OT1} -\setfont\reducedsf\sfshape{10}{1000}{OT1} -\setfont\reducedsc\scshape{10}{1000}{OT1} -\setfont\reducedttsl\ttslshape{10}{1000}{OT1TT} -\font\reducedi=cmmi10 -\font\reducedsy=cmsy10 -\def\reducedecsize{1000} - -\textleading = 13.2pt % line spacing for 11pt CM -\textfonts % reset the current fonts -\rm -} % end of 11pt text font size definitions, \definetextfontsizexi - - -% Definitions to make the main text be 10pt Computer Modern, with -% section, chapter, etc., sizes following suit. This is for the GNU -% Press printing of the Emacs 22 manual. Maybe other manuals in the -% future. Used with @smallbook, which sets the leading to 12pt. -% -\def\definetextfontsizex{% -% Text fonts (10pt). -\def\textnominalsize{10pt} -\edef\mainmagstep{1000} -\setfont\textrm\rmshape{10}{\mainmagstep}{OT1} -\setfont\texttt\ttshape{10}{\mainmagstep}{OT1TT} -\setfont\textbf\bfshape{10}{\mainmagstep}{OT1} -\setfont\textit\itshape{10}{\mainmagstep}{OT1IT} -\setfont\textsl\slshape{10}{\mainmagstep}{OT1} -\setfont\textsf\sfshape{10}{\mainmagstep}{OT1} -\setfont\textsc\scshape{10}{\mainmagstep}{OT1} -\setfont\textttsl\ttslshape{10}{\mainmagstep}{OT1TT} -\font\texti=cmmi10 scaled \mainmagstep -\font\textsy=cmsy10 scaled \mainmagstep -\def\textecsize{1000} - -% A few fonts for @defun names and args. -\setfont\defbf\bfshape{10}{\magstephalf}{OT1} -\setfont\deftt\ttshape{10}{\magstephalf}{OT1TT} -\setfont\defsl\slshape{10}{\magstephalf}{OT1TT} -\setfont\defttsl\ttslshape{10}{\magstephalf}{OT1TT} -\def\df{\let\ttfont=\deftt \let\bffont = \defbf -\let\slfont=\defsl \let\ttslfont=\defttsl \bf} - -% Fonts for indices, footnotes, small examples (9pt). -\def\smallnominalsize{9pt} -\setfont\smallrm\rmshape{9}{1000}{OT1} -\setfont\smalltt\ttshape{9}{1000}{OT1TT} -\setfont\smallbf\bfshape{10}{900}{OT1} -\setfont\smallit\itshape{9}{1000}{OT1IT} -\setfont\smallsl\slshape{9}{1000}{OT1} -\setfont\smallsf\sfshape{9}{1000}{OT1} -\setfont\smallsc\scshape{10}{900}{OT1} -\setfont\smallttsl\ttslshape{10}{900}{OT1TT} -\font\smalli=cmmi9 -\font\smallsy=cmsy9 -\def\smallecsize{0900} - -% Fonts for small examples (8pt). -\def\smallernominalsize{8pt} -\setfont\smallerrm\rmshape{8}{1000}{OT1} -\setfont\smallertt\ttshape{8}{1000}{OT1TT} -\setfont\smallerbf\bfshape{10}{800}{OT1} -\setfont\smallerit\itshape{8}{1000}{OT1IT} -\setfont\smallersl\slshape{8}{1000}{OT1} -\setfont\smallersf\sfshape{8}{1000}{OT1} -\setfont\smallersc\scshape{10}{800}{OT1} -\setfont\smallerttsl\ttslshape{10}{800}{OT1TT} -\font\smalleri=cmmi8 -\font\smallersy=cmsy8 -\def\smallerecsize{0800} - -% Fonts for math mode superscripts (7pt). -\def\sevennominalsize{7pt} -\setfont\sevenrm\rmshape{7}{1000}{OT1} -\setfont\seventt\ttshape{10}{700}{OT1TT} -\setfont\sevenbf\bfshape{10}{700}{OT1} -\setfont\sevenit\itshape{7}{1000}{OT1IT} -\setfont\sevensl\slshape{10}{700}{OT1} -\setfont\sevensf\sfshape{10}{700}{OT1} -\setfont\sevensc\scshape{10}{700}{OT1} -\setfont\seventtsl\ttslshape{10}{700}{OT1TT} -\font\seveni=cmmi7 -\font\sevensy=cmsy7 -\def\sevenecsize{0700} - -% Fonts for title page (20.4pt): -\def\titlenominalsize{20pt} -\setfont\titlerm\rmbshape{12}{\magstep3}{OT1} -\setfont\titleit\itbshape{10}{\magstep4}{OT1IT} -\setfont\titlesl\slbshape{10}{\magstep4}{OT1} -\setfont\titlett\ttbshape{12}{\magstep3}{OT1TT} -\setfont\titlettsl\ttslshape{10}{\magstep4}{OT1TT} -\setfont\titlesf\sfbshape{17}{\magstep1}{OT1} -\let\titlebf=\titlerm -\setfont\titlesc\scbshape{10}{\magstep4}{OT1} -\font\titlei=cmmi12 scaled \magstep3 -\font\titlesy=cmsy10 scaled \magstep4 -\def\titleecsize{2074} - -% Chapter fonts (14.4pt). -\def\chapnominalsize{14pt} -\setfont\chaprm\rmbshape{12}{\magstep1}{OT1} -\setfont\chapit\itbshape{10}{\magstep2}{OT1IT} -\setfont\chapsl\slbshape{10}{\magstep2}{OT1} -\setfont\chaptt\ttbshape{12}{\magstep1}{OT1TT} -\setfont\chapttsl\ttslshape{10}{\magstep2}{OT1TT} -\setfont\chapsf\sfbshape{12}{\magstep1}{OT1} -\let\chapbf\chaprm -\setfont\chapsc\scbshape{10}{\magstep2}{OT1} -\font\chapi=cmmi12 scaled \magstep1 -\font\chapsy=cmsy10 scaled \magstep2 -\def\chapecsize{1440} - -% Section fonts (12pt). -\def\secnominalsize{12pt} -\setfont\secrm\rmbshape{12}{1000}{OT1} -\setfont\secit\itbshape{10}{\magstep1}{OT1IT} -\setfont\secsl\slbshape{10}{\magstep1}{OT1} -\setfont\sectt\ttbshape{12}{1000}{OT1TT} -\setfont\secttsl\ttslshape{10}{\magstep1}{OT1TT} -\setfont\secsf\sfbshape{12}{1000}{OT1} -\let\secbf\secrm -\setfont\secsc\scbshape{10}{\magstep1}{OT1} -\font\seci=cmmi12 -\font\secsy=cmsy10 scaled \magstep1 -\def\sececsize{1200} - -% Subsection fonts (10pt). -\def\ssecnominalsize{10pt} -\setfont\ssecrm\rmbshape{10}{1000}{OT1} -\setfont\ssecit\itbshape{10}{1000}{OT1IT} -\setfont\ssecsl\slbshape{10}{1000}{OT1} -\setfont\ssectt\ttbshape{10}{1000}{OT1TT} -\setfont\ssecttsl\ttslshape{10}{1000}{OT1TT} -\setfont\ssecsf\sfbshape{10}{1000}{OT1} -\let\ssecbf\ssecrm -\setfont\ssecsc\scbshape{10}{1000}{OT1} -\font\sseci=cmmi10 -\font\ssecsy=cmsy10 -\def\ssececsize{1000} - -% Reduced fonts for @acronym in text (9pt). -\def\reducednominalsize{9pt} -\setfont\reducedrm\rmshape{9}{1000}{OT1} -\setfont\reducedtt\ttshape{9}{1000}{OT1TT} -\setfont\reducedbf\bfshape{10}{900}{OT1} -\setfont\reducedit\itshape{9}{1000}{OT1IT} -\setfont\reducedsl\slshape{9}{1000}{OT1} -\setfont\reducedsf\sfshape{9}{1000}{OT1} -\setfont\reducedsc\scshape{10}{900}{OT1} -\setfont\reducedttsl\ttslshape{10}{900}{OT1TT} -\font\reducedi=cmmi9 -\font\reducedsy=cmsy9 -\def\reducedecsize{0900} - -\divide\parskip by 2 % reduce space between paragraphs -\textleading = 12pt % line spacing for 10pt CM -\textfonts % reset the current fonts -\rm -} % end of 10pt text font size definitions, \definetextfontsizex - -% Fonts for short table of contents. -\setfont\shortcontrm\rmshape{12}{1000}{OT1} -\setfont\shortcontbf\bfshape{10}{\magstep1}{OT1} % no cmb12 -\setfont\shortcontsl\slshape{12}{1000}{OT1} -\setfont\shortconttt\ttshape{12}{1000}{OT1TT} - - -% We provide the user-level command -% @fonttextsize 10 -% (or 11) to redefine the text font size. pt is assumed. -% -\def\xiword{11} -\def\xword{10} -\def\xwordpt{10pt} -% -\parseargdef\fonttextsize{% - \def\textsizearg{#1}% - %\wlog{doing @fonttextsize \textsizearg}% - % - % Set \globaldefs so that documents can use this inside @tex, since - % makeinfo 4.8 does not support it, but we need it nonetheless. - % - \begingroup \globaldefs=1 - \ifx\textsizearg\xword \definetextfontsizex - \else \ifx\textsizearg\xiword \definetextfontsizexi - \else - \errhelp=\EMsimple - \errmessage{@fonttextsize only supports `10' or `11', not `\textsizearg'} - \fi\fi - \endgroup -} - -% -% Change the current font style to #1, remembering it in \curfontstyle. -% For now, we do not accumulate font styles: @b{@i{foo}} prints foo in -% italics, not bold italics. -% -\def\setfontstyle#1{% - \def\curfontstyle{#1}% not as a control sequence, because we are \edef'd. - \csname #1font\endcsname % change the current font -} - -\def\rm{\fam=0 \setfontstyle{rm}} -\def\it{\fam=\itfam \setfontstyle{it}} -\def\sl{\fam=\slfam \setfontstyle{sl}} -\def\bf{\fam=\bffam \setfontstyle{bf}}\def\bfstylename{bf} -\def\tt{\fam=\ttfam \setfontstyle{tt}} - -% Texinfo sort of supports the sans serif font style, which plain TeX does not. -% So we set up a \sf. -\newfam\sffam -\def\sf{\fam=\sffam \setfontstyle{sf}} - -% We don't need math for this font style. -\def\ttsl{\setfontstyle{ttsl}} - - -% In order for the font changes to affect most math symbols and letters, -% we have to define the \textfont of the standard families. -% We don't bother to reset \scriptscriptfont; awaiting user need. -% -\def\resetmathfonts{% - \textfont0=\rmfont \textfont1=\ifont \textfont2=\syfont - \textfont\itfam=\itfont \textfont\slfam=\slfont \textfont\bffam=\bffont - \textfont\ttfam=\ttfont \textfont\sffam=\sffont - % - % Fonts for superscript. Note that the 7pt fonts are used regardless - % of the current font size. - \scriptfont0=\sevenrm \scriptfont1=\seveni \scriptfont2=\sevensy - \scriptfont\itfam=\sevenit \scriptfont\slfam=\sevensl - \scriptfont\bffam=\sevenbf \scriptfont\ttfam=\seventt - \scriptfont\sffam=\sevensf -} - -% - -% The font-changing commands (all called \...fonts) redefine the meanings -% of \STYLEfont, instead of just \STYLE. We do this because \STYLE needs -% to also set the current \fam for math mode. Our \STYLE (e.g., \rm) -% commands hardwire \STYLEfont to set the current font. -% -% The fonts used for \ifont are for "math italics" (\itfont is for italics -% in regular text). \syfont is also used in math mode only. -% -% Each font-changing command also sets the names \lsize (one size lower) -% and \lllsize (three sizes lower). These relative commands are used -% in, e.g., the LaTeX logo and acronyms. -% -% This all needs generalizing, badly. -% - -\def\assignfonts#1{% - \expandafter\let\expandafter\rmfont\csname #1rm\endcsname - \expandafter\let\expandafter\itfont\csname #1it\endcsname - \expandafter\let\expandafter\slfont\csname #1sl\endcsname - \expandafter\let\expandafter\bffont\csname #1bf\endcsname - \expandafter\let\expandafter\ttfont\csname #1tt\endcsname - \expandafter\let\expandafter\smallcaps\csname #1sc\endcsname - \expandafter\let\expandafter\sffont \csname #1sf\endcsname - \expandafter\let\expandafter\ifont \csname #1i\endcsname - \expandafter\let\expandafter\syfont \csname #1sy\endcsname - \expandafter\let\expandafter\ttslfont\csname #1ttsl\endcsname -} - -\newif\ifrmisbold - -% Select smaller font size with the current style. Used to change font size -% in, e.g., the LaTeX logo and acronyms. If we are using bold fonts for -% normal roman text, also use bold fonts for roman text in the smaller size. -\def\switchtolllsize{% - \expandafter\assignfonts\expandafter{\lllsize}% - \ifrmisbold - \let\rmfont\bffont - \fi - \csname\curfontstyle\endcsname -}% - -\def\switchtolsize{% - \expandafter\assignfonts\expandafter{\lsize}% - \ifrmisbold - \let\rmfont\bffont - \fi - \csname\curfontstyle\endcsname -}% - -\def\definefontsetatsize#1#2#3#4#5{% -\expandafter\def\csname #1fonts\endcsname{% - \def\curfontsize{#1}% - \def\lsize{#2}\def\lllsize{#3}% - \csname rmisbold#5\endcsname - \assignfonts{#1}% - \resetmathfonts - \setleading{#4}% -}} - -\definefontsetatsize{text} {reduced}{smaller}{\textleading}{false} -\definefontsetatsize{title} {chap} {subsec} {27pt} {true} -\definefontsetatsize{chap} {sec} {text} {19pt} {true} -\definefontsetatsize{sec} {subsec} {reduced}{17pt} {true} -\definefontsetatsize{ssec} {text} {small} {15pt} {true} -\definefontsetatsize{reduced}{small} {smaller}{10.5pt}{false} -\definefontsetatsize{small} {smaller}{smaller}{10.5pt}{false} -\definefontsetatsize{smaller}{smaller}{smaller}{9.5pt} {false} - -\def\titlefont#1{{\titlefonts\rm #1}} -\let\subsecfonts = \ssecfonts -\let\subsubsecfonts = \ssecfonts - -% Define these just so they can be easily changed for other fonts. -\def\angleleft{$\langle$} -\def\angleright{$\rangle$} - -% Set the fonts to use with the @small... environments. -\let\smallexamplefonts = \smallfonts - -% About \smallexamplefonts. If we use \smallfonts (9pt), @smallexample -% can fit this many characters: -% 8.5x11=86 smallbook=72 a4=90 a5=69 -% If we use \scriptfonts (8pt), then we can fit this many characters: -% 8.5x11=90+ smallbook=80 a4=90+ a5=77 -% For me, subjectively, the few extra characters that fit aren't worth -% the additional smallness of 8pt. So I'm making the default 9pt. -% -% By the way, for comparison, here's what fits with @example (10pt): -% 8.5x11=71 smallbook=60 a4=75 a5=58 -% --karl, 24jan03. - -% Set up the default fonts, so we can use them for creating boxes. -% -\definetextfontsizexi - - -\message{markup,} - -% Check if we are currently using a typewriter font. Since all the -% Computer Modern typewriter fonts have zero interword stretch (and -% shrink), and it is reasonable to expect all typewriter fonts to have -% this property, we can check that font parameter. -% -\def\ifmonospace{\ifdim\fontdimen3\font=0pt } - -% Markup style infrastructure. \defmarkupstylesetup\INITMACRO will -% define and register \INITMACRO to be called on markup style changes. -% \INITMACRO can check \currentmarkupstyle for the innermost -% style. - -\let\currentmarkupstyle\empty - -\def\setupmarkupstyle#1{% - \def\currentmarkupstyle{#1}% - \markupstylesetup -} - -\let\markupstylesetup\empty - -\def\defmarkupstylesetup#1{% - \expandafter\def\expandafter\markupstylesetup - \expandafter{\markupstylesetup #1}% - \def#1% -} - -% Markup style setup for left and right quotes. -\defmarkupstylesetup\markupsetuplq{% - \expandafter\let\expandafter \temp - \csname markupsetuplq\currentmarkupstyle\endcsname - \ifx\temp\relax \markupsetuplqdefault \else \temp \fi -} - -\defmarkupstylesetup\markupsetuprq{% - \expandafter\let\expandafter \temp - \csname markupsetuprq\currentmarkupstyle\endcsname - \ifx\temp\relax \markupsetuprqdefault \else \temp \fi -} - -{ -\catcode`\'=\active -\catcode`\`=\active - -\gdef\markupsetuplqdefault{\let`\lq} -\gdef\markupsetuprqdefault{\let'\rq} - -\gdef\markupsetcodequoteleft{\let`\codequoteleft} -\gdef\markupsetcodequoteright{\let'\codequoteright} -} - -\let\markupsetuplqcode \markupsetcodequoteleft -\let\markupsetuprqcode \markupsetcodequoteright -% -\let\markupsetuplqexample \markupsetcodequoteleft -\let\markupsetuprqexample \markupsetcodequoteright -% -\let\markupsetuplqkbd \markupsetcodequoteleft -\let\markupsetuprqkbd \markupsetcodequoteright -% -\let\markupsetuplqsamp \markupsetcodequoteleft -\let\markupsetuprqsamp \markupsetcodequoteright -% -\let\markupsetuplqverb \markupsetcodequoteleft -\let\markupsetuprqverb \markupsetcodequoteright -% -\let\markupsetuplqverbatim \markupsetcodequoteleft -\let\markupsetuprqverbatim \markupsetcodequoteright - -% Allow an option to not use regular directed right quote/apostrophe -% (char 0x27), but instead the undirected quote from cmtt (char 0x0d). -% The undirected quote is ugly, so don't make it the default, but it -% works for pasting with more pdf viewers (at least evince), the -% lilypond developers report. xpdf does work with the regular 0x27. -% -\def\codequoteright{% - \ifmonospace - \expandafter\ifx\csname SETtxicodequoteundirected\endcsname\relax - \expandafter\ifx\csname SETcodequoteundirected\endcsname\relax - '% - \else \char'15 \fi - \else \char'15 \fi - \else - '% - \fi -} -% -% and a similar option for the left quote char vs. a grave accent. -% Modern fonts display ASCII 0x60 as a grave accent, so some people like -% the code environments to do likewise. -% -\def\codequoteleft{% - \ifmonospace - \expandafter\ifx\csname SETtxicodequotebacktick\endcsname\relax - \expandafter\ifx\csname SETcodequotebacktick\endcsname\relax - % [Knuth] pp. 380,381,391 - % \relax disables Spanish ligatures ?` and !` of \tt font. - \relax`% - \else \char'22 \fi - \else \char'22 \fi - \else - \relax`% - \fi -} - -% Commands to set the quote options. -% -\parseargdef\codequoteundirected{% - \def\temp{#1}% - \ifx\temp\onword - \expandafter\let\csname SETtxicodequoteundirected\endcsname - = t% - \else\ifx\temp\offword - \expandafter\let\csname SETtxicodequoteundirected\endcsname - = \relax - \else - \errhelp = \EMsimple - \errmessage{Unknown @codequoteundirected value `\temp', must be on|off}% - \fi\fi -} -% -\parseargdef\codequotebacktick{% - \def\temp{#1}% - \ifx\temp\onword - \expandafter\let\csname SETtxicodequotebacktick\endcsname - = t% - \else\ifx\temp\offword - \expandafter\let\csname SETtxicodequotebacktick\endcsname - = \relax - \else - \errhelp = \EMsimple - \errmessage{Unknown @codequotebacktick value `\temp', must be on|off}% - \fi\fi -} - -% [Knuth] pp. 380,381,391, disable Spanish ligatures ?` and !` of \tt font. -\def\noligaturesquoteleft{\relax\lq} - -% Count depth in font-changes, for error checks -\newcount\fontdepth \fontdepth=0 - -% Font commands. - -% #1 is the font command (\sl or \it), #2 is the text to slant. -% If we are in a monospaced environment, however, 1) always use \ttsl, -% and 2) do not add an italic correction. -\def\dosmartslant#1#2{% - \ifusingtt - {{\ttsl #2}\let\next=\relax}% - {\def\next{{#1#2}\futurelet\next\smartitaliccorrection}}% - \next -} -\def\smartslanted{\dosmartslant\sl} -\def\smartitalic{\dosmartslant\it} - -% Output an italic correction unless \next (presumed to be the following -% character) is such as not to need one. -\def\smartitaliccorrection{% - \ifx\next,% - \else\ifx\next-% - \else\ifx\next.% - \else\ifx\next\.% - \else\ifx\next\comma% - \else\ptexslash - \fi\fi\fi\fi\fi - \aftersmartic -} - -% Unconditional use \ttsl, and no ic. @var is set to this for defuns. -\def\ttslanted#1{{\ttsl #1}} - -% @cite is like \smartslanted except unconditionally use \sl. We never want -% ttsl for book titles, do we? -\def\cite#1{{\sl #1}\futurelet\next\smartitaliccorrection} - -\def\aftersmartic{} -\def\var#1{% - \let\saveaftersmartic = \aftersmartic - \def\aftersmartic{\null\let\aftersmartic=\saveaftersmartic}% - \smartslanted{#1}% -} - -\let\i=\smartitalic -\let\slanted=\smartslanted -\let\dfn=\smartslanted -\let\emph=\smartitalic - -% Explicit font changes: @r, @sc, undocumented @ii. -\def\r#1{{\rm #1}} % roman font -\def\sc#1{{\smallcaps#1}} % smallcaps font -\def\ii#1{{\it #1}} % italic font - -% @b, explicit bold. Also @strong. -\def\b#1{{\bf #1}} -\let\strong=\b - -% @sansserif, explicit sans. -\def\sansserif#1{{\sf #1}} - -% We can't just use \exhyphenpenalty, because that only has effect at -% the end of a paragraph. Restore normal hyphenation at the end of the -% group within which \nohyphenation is presumably called. -% -\def\nohyphenation{\hyphenchar\font = -1 \aftergroup\restorehyphenation} -\def\restorehyphenation{\hyphenchar\font = `- } - -% Set sfcode to normal for the chars that usually have another value. -% Can't use plain's \frenchspacing because it uses the `\x notation, and -% sometimes \x has an active definition that messes things up. -% -\catcode`@=11 - \def\plainfrenchspacing{% - \sfcode`\.=\@m \sfcode`\?=\@m \sfcode`\!=\@m - \sfcode`\:=\@m \sfcode`\;=\@m \sfcode`\,=\@m - \def\endofsentencespacefactor{1000}% for @. and friends - } - \def\plainnonfrenchspacing{% - \sfcode`\.3000\sfcode`\?3000\sfcode`\!3000 - \sfcode`\:2000\sfcode`\;1500\sfcode`\,1250 - \def\endofsentencespacefactor{3000}% for @. and friends - } -\catcode`@=\other -\def\endofsentencespacefactor{3000}% default - -% @t, explicit typewriter. -\def\t#1{% - {\tt \rawbackslash \plainfrenchspacing #1}% - \null -} - -% @samp. -\def\samp#1{{\setupmarkupstyle{samp}\lq\tclose{#1}\rq\null}} - -% @indicateurl is \samp, that is, with quotes. -\let\indicateurl=\samp - -% @code (and similar) prints in typewriter, but with spaces the same -% size as normal in the surrounding text, without hyphenation, etc. -% This is a subroutine for that. -\def\tclose#1{% - {% - % Change normal interword space to be same as for the current font. - \spaceskip = \fontdimen2\font - % - % Switch to typewriter. - \tt - % - % But `\ ' produces the large typewriter interword space. - \def\ {{\spaceskip = 0pt{} }}% - % - % Turn off hyphenation. - \nohyphenation - % - \rawbackslash - \plainfrenchspacing - #1% - }% - \null % reset spacefactor to 1000 -} - -% We *must* turn on hyphenation at `-' and `_' in @code. -% (But see \codedashfinish below.) -% Otherwise, it is too hard to avoid overfull hboxes -% in the Emacs manual, the Library manual, etc. -% -% Unfortunately, TeX uses one parameter (\hyphenchar) to control -% both hyphenation at - and hyphenation within words. -% We must therefore turn them both off (\tclose does that) -% and arrange explicitly to hyphenate at a dash. -- rms. -{ - \catcode`\-=\active \catcode`\_=\active - \catcode`\'=\active \catcode`\`=\active - \global\let'=\rq \global\let`=\lq % default definitions - % - \global\def\code{\begingroup - \setupmarkupstyle{code}% - % The following should really be moved into \setupmarkupstyle handlers. - \catcode\dashChar=\active \catcode\underChar=\active - \ifallowcodebreaks - \let-\codedash - \let_\codeunder - \else - \let-\normaldash - \let_\realunder - \fi - % Given -foo (with a single dash), we do not want to allow a break - % after the hyphen. - \global\let\codedashprev=\codedash - % - \codex - } - % - \gdef\codedash{\futurelet\next\codedashfinish} - \gdef\codedashfinish{% - \normaldash % always output the dash character itself. - % - % Now, output a discretionary to allow a line break, unless - % (a) the next character is a -, or - % (b) the preceding character is a -. - % E.g., given --posix, we do not want to allow a break after either -. - % Given --foo-bar, we do want to allow a break between the - and the b. - \ifx\next\codedash \else - \ifx\codedashprev\codedash - \else \discretionary{}{}{}\fi - \fi - % we need the space after the = for the case when \next itself is a - % space token; it would get swallowed otherwise. As in @code{- a}. - \global\let\codedashprev= \next - } -} -\def\normaldash{-} -% -\def\codex #1{\tclose{#1}\endgroup} - -\def\codeunder{% - % this is all so @math{@code{var_name}+1} can work. In math mode, _ - % is "active" (mathcode"8000) and \normalunderscore (or \char95, etc.) - % will therefore expand the active definition of _, which is us - % (inside @code that is), therefore an endless loop. - \ifusingtt{\ifmmode - \mathchar"075F % class 0=ordinary, family 7=ttfam, pos 0x5F=_. - \else\normalunderscore \fi - \discretionary{}{}{}}% - {\_}% -} - -% An additional complication: the above will allow breaks after, e.g., -% each of the four underscores in __typeof__. This is bad. -% @allowcodebreaks provides a document-level way to turn breaking at - -% and _ on and off. -% -\newif\ifallowcodebreaks \allowcodebreakstrue - -\def\keywordtrue{true} -\def\keywordfalse{false} - -\parseargdef\allowcodebreaks{% - \def\txiarg{#1}% - \ifx\txiarg\keywordtrue - \allowcodebreakstrue - \else\ifx\txiarg\keywordfalse - \allowcodebreaksfalse - \else - \errhelp = \EMsimple - \errmessage{Unknown @allowcodebreaks option `\txiarg', must be true|false}% - \fi\fi -} - -% For @command, @env, @file, @option quotes seem unnecessary, -% so use \code rather than \samp. -\let\command=\code -\let\env=\code -\let\file=\code -\let\option=\code - -% @uref (abbreviation for `urlref') aka @url takes an optional -% (comma-separated) second argument specifying the text to display and -% an optional third arg as text to display instead of (rather than in -% addition to) the url itself. First (mandatory) arg is the url. - -% TeX-only option to allow changing PDF output to show only the second -% arg (if given), and not the url (which is then just the link target). -\newif\ifurefurlonlylink - -% The main macro is \urefbreak, which allows breaking at expected -% places within the url. (There used to be another version, which -% didn't support automatic breaking.) -\def\urefbreak{\begingroup \urefcatcodes \dourefbreak} -\let\uref=\urefbreak -% -\def\dourefbreak#1{\urefbreakfinish #1,,,\finish} -\def\urefbreakfinish#1,#2,#3,#4\finish{% doesn't work in @example - \unsepspaces - \pdfurl{#1}% - \setbox0 = \hbox{\ignorespaces #3}% - \ifdim\wd0 > 0pt - \unhbox0 % third arg given, show only that - \else - \setbox0 = \hbox{\ignorespaces #2}% look for second arg - \ifdim\wd0 > 0pt - \ifpdf - % For pdfTeX and LuaTeX - \ifurefurlonlylink - % PDF plus option to not display url, show just arg - \unhbox0 - \else - % PDF, normally display both arg and url for consistency, - % visibility, if the pdf is eventually used to print, etc. - \unhbox0\ (\urefcode{#1})% - \fi - \else - \ifx\XeTeXrevision\thisisundefined - \unhbox0\ (\urefcode{#1})% DVI, always show arg and url - \else - % For XeTeX - \ifurefurlonlylink - % PDF plus option to not display url, show just arg - \unhbox0 - \else - % PDF, normally display both arg and url for consistency, - % visibility, if the pdf is eventually used to print, etc. - \unhbox0\ (\urefcode{#1})% - \fi - \fi - \fi - \else - \urefcode{#1}% only url given, so show it - \fi - \fi - \endlink -\endgroup} - -% Allow line breaks around only a few characters (only). -\def\urefcatcodes{% - \catcode`\&=\active \catcode`\.=\active - \catcode`\#=\active \catcode`\?=\active - \catcode`\/=\active -} -{ - \urefcatcodes - % - \global\def\urefcode{\begingroup - \setupmarkupstyle{code}% - \urefcatcodes - \let&\urefcodeamp - \let.\urefcodedot - \let#\urefcodehash - \let?\urefcodequest - \let/\urefcodeslash - \codex - } - % - % By default, they are just regular characters. - \global\def&{\normalamp} - \global\def.{\normaldot} - \global\def#{\normalhash} - \global\def?{\normalquest} - \global\def/{\normalslash} -} - -% we put a little stretch before and after the breakable chars, to help -% line breaking of long url's. The unequal skips make look better in -% cmtt at least, especially for dots. -\def\urefprestretchamount{.13em} -\def\urefpoststretchamount{.1em} -\def\urefprestretch{\urefprebreak \hskip0pt plus\urefprestretchamount\relax} -\def\urefpoststretch{\urefpostbreak \hskip0pt plus\urefprestretchamount\relax} -% -\def\urefcodeamp{\urefprestretch \&\urefpoststretch} -\def\urefcodedot{\urefprestretch .\urefpoststretch} -\def\urefcodehash{\urefprestretch \#\urefpoststretch} -\def\urefcodequest{\urefprestretch ?\urefpoststretch} -\def\urefcodeslash{\futurelet\next\urefcodeslashfinish} -{ - \catcode`\/=\active - \global\def\urefcodeslashfinish{% - \urefprestretch \slashChar - % Allow line break only after the final / in a sequence of - % slashes, to avoid line break between the slashes in http://. - \ifx\next/\else \urefpoststretch \fi - } -} - -% One more complication: by default we'll break after the special -% characters, but some people like to break before the special chars, so -% allow that. Also allow no breaking at all, for manual control. -% -\parseargdef\urefbreakstyle{% - \def\txiarg{#1}% - \ifx\txiarg\wordnone - \def\urefprebreak{\nobreak}\def\urefpostbreak{\nobreak} - \else\ifx\txiarg\wordbefore - \def\urefprebreak{\allowbreak}\def\urefpostbreak{\nobreak} - \else\ifx\txiarg\wordafter - \def\urefprebreak{\nobreak}\def\urefpostbreak{\allowbreak} - \else - \errhelp = \EMsimple - \errmessage{Unknown @urefbreakstyle setting `\txiarg'}% - \fi\fi\fi -} -\def\wordafter{after} -\def\wordbefore{before} -\def\wordnone{none} - -\urefbreakstyle after - -% @url synonym for @uref, since that's how everyone uses it. -% -\let\url=\uref - -% rms does not like angle brackets --karl, 17may97. -% So now @email is just like @uref, unless we are pdf. -% -%\def\email#1{\angleleft{\tt #1}\angleright} -\ifpdf - \def\email#1{\doemail#1,,\finish} - \def\doemail#1,#2,#3\finish{\begingroup - \unsepspaces - \pdfurl{mailto:#1}% - \setbox0 = \hbox{\ignorespaces #2}% - \ifdim\wd0>0pt\unhbox0\else\code{#1}\fi - \endlink - \endgroup} -\else - \ifx\XeTeXrevision\thisisundefined - \let\email=\uref - \else - \def\email#1{\doemail#1,,\finish} - \def\doemail#1,#2,#3\finish{\begingroup - \unsepspaces - \pdfurl{mailto:#1}% - \setbox0 = \hbox{\ignorespaces #2}% - \ifdim\wd0>0pt\unhbox0\else\code{#1}\fi - \endlink - \endgroup} - \fi -\fi - -% @kbdinputstyle -- arg is `distinct' (@kbd uses slanted tty font always), -% `example' (@kbd uses ttsl only inside of @example and friends), -% or `code' (@kbd uses normal tty font always). -\parseargdef\kbdinputstyle{% - \def\txiarg{#1}% - \ifx\txiarg\worddistinct - \gdef\kbdexamplefont{\ttsl}\gdef\kbdfont{\ttsl}% - \else\ifx\txiarg\wordexample - \gdef\kbdexamplefont{\ttsl}\gdef\kbdfont{\tt}% - \else\ifx\txiarg\wordcode - \gdef\kbdexamplefont{\tt}\gdef\kbdfont{\tt}% - \else - \errhelp = \EMsimple - \errmessage{Unknown @kbdinputstyle setting `\txiarg'}% - \fi\fi\fi -} -\def\worddistinct{distinct} -\def\wordexample{example} -\def\wordcode{code} - -% Default is `distinct'. -\kbdinputstyle distinct - -% @kbd is like @code, except that if the argument is just one @key command, -% then @kbd has no effect. -\def\kbd#1{{\def\look{#1}\expandafter\kbdsub\look??\par}} - -\def\xkey{\key} -\def\kbdsub#1#2#3\par{% - \def\one{#1}\def\three{#3}\def\threex{??}% - \ifx\one\xkey\ifx\threex\three \key{#2}% - \else{\tclose{\kbdfont\setupmarkupstyle{kbd}\look}}\fi - \else{\tclose{\kbdfont\setupmarkupstyle{kbd}\look}}\fi -} - -% definition of @key that produces a lozenge. Doesn't adjust to text size. -%\setfont\keyrm\rmshape{8}{1000}{OT1} -%\font\keysy=cmsy9 -%\def\key#1{{\keyrm\textfont2=\keysy \leavevmode\hbox{% -% \raise0.4pt\hbox{\angleleft}\kern-.08em\vtop{% -% \vbox{\hrule\kern-0.4pt -% \hbox{\raise0.4pt\hbox{\vphantom{\angleleft}}#1}}% -% \kern-0.4pt\hrule}% -% \kern-.06em\raise0.4pt\hbox{\angleright}}}} - -% definition of @key with no lozenge. If the current font is already -% monospace, don't change it; that way, we respect @kbdinputstyle. But -% if it isn't monospace, then use \tt. -% -\def\key#1{{\setupmarkupstyle{key}% - \nohyphenation - \ifmonospace\else\tt\fi - #1}\null} - -% @clicksequence{File @click{} Open ...} -\def\clicksequence#1{\begingroup #1\endgroup} - -% @clickstyle @arrow (by default) -\parseargdef\clickstyle{\def\click{#1}} -\def\click{\arrow} - -% Typeset a dimension, e.g., `in' or `pt'. The only reason for the -% argument is to make the input look right: @dmn{pt} instead of @dmn{}pt. -% -\def\dmn#1{\thinspace #1} - -% @acronym for "FBI", "NATO", and the like. -% We print this one point size smaller, since it's intended for -% all-uppercase. -% -\def\acronym#1{\doacronym #1,,\finish} -\def\doacronym#1,#2,#3\finish{% - {\switchtolsize #1}% - \def\temp{#2}% - \ifx\temp\empty \else - \space ({\unsepspaces \ignorespaces \temp \unskip})% - \fi - \null % reset \spacefactor=1000 -} - -% @abbr for "Comput. J." and the like. -% No font change, but don't do end-of-sentence spacing. -% -\def\abbr#1{\doabbr #1,,\finish} -\def\doabbr#1,#2,#3\finish{% - {\plainfrenchspacing #1}% - \def\temp{#2}% - \ifx\temp\empty \else - \space ({\unsepspaces \ignorespaces \temp \unskip})% - \fi - \null % reset \spacefactor=1000 -} - -% @asis just yields its argument. Used with @table, for example. -% -\def\asis#1{#1} - -% @math outputs its argument in math mode. -% -% One complication: _ usually means subscripts, but it could also mean -% an actual _ character, as in @math{@var{some_variable} + 1}. So make -% _ active, and distinguish by seeing if the current family is \slfam, -% which is what @var uses. -{ - \catcode`\_ = \active - \gdef\mathunderscore{% - \catcode`\_=\active - \def_{\ifnum\fam=\slfam \_\else\sb\fi}% - } -} -% Another complication: we want \\ (and @\) to output a math (or tt) \. -% FYI, plain.tex uses \\ as a temporary control sequence (for no -% particular reason), but this is not advertised and we don't care. -% -% The \mathchar is class=0=ordinary, family=7=ttfam, position=5C=\. -\def\mathbackslash{\ifnum\fam=\ttfam \mathchar"075C \else\backslash \fi} -% -\def\math{% - \ifmmode\else % only go into math if not in math mode already - \tex - \mathunderscore - \let\\ = \mathbackslash - \mathactive - % make the texinfo accent commands work in math mode - \let\"=\ddot - \let\'=\acute - \let\==\bar - \let\^=\hat - \let\`=\grave - \let\u=\breve - \let\v=\check - \let\~=\tilde - \let\dotaccent=\dot - % have to provide another name for sup operator - \let\mathopsup=\sup - $\expandafter\finishmath\fi -} -\def\finishmath#1{#1$\endgroup} % Close the group opened by \tex. - -% Some active characters (such as <) are spaced differently in math. -% We have to reset their definitions in case the @math was an argument -% to a command which sets the catcodes (such as @item or @section). -% -{ - \catcode`^ = \active - \catcode`< = \active - \catcode`> = \active - \catcode`+ = \active - \catcode`' = \active - \gdef\mathactive{% - \let^ = \ptexhat - \let< = \ptexless - \let> = \ptexgtr - \let+ = \ptexplus - \let' = \ptexquoteright - } -} - -% for @sub and @sup, if in math mode, just do a normal sub/superscript. -% If in text, use math to place as sub/superscript, but switch -% into text mode, with smaller fonts. This is a different font than the -% one used for real math sub/superscripts (8pt vs. 7pt), but let's not -% fix it (significant additions to font machinery) until someone notices. -% -\def\sub{\ifmmode \expandafter\sb \else \expandafter\finishsub\fi} -\def\finishsub#1{$\sb{\hbox{\switchtolllsize #1}}$}% -% -\def\sup{\ifmmode \expandafter\ptexsp \else \expandafter\finishsup\fi} -\def\finishsup#1{$\ptexsp{\hbox{\switchtolllsize #1}}$}% - -% @inlinefmt{FMTNAME,PROCESSED-TEXT} and @inlineraw{FMTNAME,RAW-TEXT}. -% Ignore unless FMTNAME == tex; then it is like @iftex and @tex, -% except specified as a normal braced arg, so no newlines to worry about. -% -\def\outfmtnametex{tex} -% -\long\def\inlinefmt#1{\doinlinefmt #1,\finish} -\long\def\doinlinefmt#1,#2,\finish{% - \def\inlinefmtname{#1}% - \ifx\inlinefmtname\outfmtnametex \ignorespaces #2\fi -} -% -% @inlinefmtifelse{FMTNAME,THEN-TEXT,ELSE-TEXT} expands THEN-TEXT if -% FMTNAME is tex, else ELSE-TEXT. -\long\def\inlinefmtifelse#1{\doinlinefmtifelse #1,,,\finish} -\long\def\doinlinefmtifelse#1,#2,#3,#4,\finish{% - \def\inlinefmtname{#1}% - \ifx\inlinefmtname\outfmtnametex \ignorespaces #2\else \ignorespaces #3\fi -} -% -% For raw, must switch into @tex before parsing the argument, to avoid -% setting catcodes prematurely. Doing it this way means that, for -% example, @inlineraw{html, foo{bar} gets a parse error instead of being -% ignored. But this isn't important because if people want a literal -% *right* brace they would have to use a command anyway, so they may as -% well use a command to get a left brace too. We could re-use the -% delimiter character idea from \verb, but it seems like overkill. -% -\long\def\inlineraw{\tex \doinlineraw} -\long\def\doinlineraw#1{\doinlinerawtwo #1,\finish} -\def\doinlinerawtwo#1,#2,\finish{% - \def\inlinerawname{#1}% - \ifx\inlinerawname\outfmtnametex \ignorespaces #2\fi - \endgroup % close group opened by \tex. -} - -% @inlineifset{VAR, TEXT} expands TEXT if VAR is @set. -% -\long\def\inlineifset#1{\doinlineifset #1,\finish} -\long\def\doinlineifset#1,#2,\finish{% - \def\inlinevarname{#1}% - \expandafter\ifx\csname SET\inlinevarname\endcsname\relax - \else\ignorespaces#2\fi -} - -% @inlineifclear{VAR, TEXT} expands TEXT if VAR is not @set. -% -\long\def\inlineifclear#1{\doinlineifclear #1,\finish} -\long\def\doinlineifclear#1,#2,\finish{% - \def\inlinevarname{#1}% - \expandafter\ifx\csname SET\inlinevarname\endcsname\relax \ignorespaces#2\fi -} - - -\message{glyphs,} -% and logos. - -% @@ prints an @, as does @atchar{}. -\def\@{\char64 } -\let\atchar=\@ - -% @{ @} @lbracechar{} @rbracechar{} all generate brace characters. -\def\lbracechar{{\ifmonospace\char123\else\ensuremath\lbrace\fi}} -\def\rbracechar{{\ifmonospace\char125\else\ensuremath\rbrace\fi}} -\let\{=\lbracechar -\let\}=\rbracechar - -% @comma{} to avoid , parsing problems. -\let\comma = , - -% Accents: @, @dotaccent @ringaccent @ubaraccent @udotaccent -% Others are defined by plain TeX: @` @' @" @^ @~ @= @u @v @H. -\let\, = \ptexc -\let\dotaccent = \ptexdot -\def\ringaccent#1{{\accent23 #1}} -\let\tieaccent = \ptext -\let\ubaraccent = \ptexb -\let\udotaccent = \d - -% Other special characters: @questiondown @exclamdown @ordf @ordm -% Plain TeX defines: @AA @AE @O @OE @L (plus lowercase versions) @ss. -\def\questiondown{?`} -\def\exclamdown{!`} -\def\ordf{\leavevmode\raise1ex\hbox{\switchtolllsize \underbar{a}}} -\def\ordm{\leavevmode\raise1ex\hbox{\switchtolllsize \underbar{o}}} - -% Dotless i and dotless j, used for accents. -\def\imacro{i} -\def\jmacro{j} -\def\dotless#1{% - \def\temp{#1}% - \ifx\temp\imacro \ifmmode\imath \else\ptexi \fi - \else\ifx\temp\jmacro \ifmmode\jmath \else\j \fi - \else \errmessage{@dotless can be used only with i or j}% - \fi\fi -} - -% The \TeX{} logo, as in plain, but resetting the spacing so that a -% period following counts as ending a sentence. (Idea found in latex.) -% -\edef\TeX{\TeX \spacefactor=1000 } - -% @LaTeX{} logo. Not quite the same results as the definition in -% latex.ltx, since we use a different font for the raised A; it's most -% convenient for us to use an explicitly smaller font, rather than using -% the \scriptstyle font (since we don't reset \scriptstyle and -% \scriptscriptstyle). -% -\def\LaTeX{% - L\kern-.36em - {\setbox0=\hbox{T}% - \vbox to \ht0{\hbox{% - \ifx\textnominalsize\xwordpt - % for 10pt running text, lllsize (8pt) is too small for the A in LaTeX. - % Revert to plain's \scriptsize, which is 7pt. - \count255=\the\fam $\fam\count255 \scriptstyle A$% - \else - % For 11pt, we can use our lllsize. - \switchtolllsize A% - \fi - }% - \vss - }}% - \kern-.15em - \TeX -} - -% Some math mode symbols. Define \ensuremath to switch into math mode -% unless we are already there. Expansion tricks may not be needed here, -% but safer, and can't hurt. -\def\ensuremath{\ifmmode \expandafter\asis \else\expandafter\ensuredmath \fi} -\def\ensuredmath#1{$\relax#1$} -% -\def\bullet{\ensuremath\ptexbullet} -\def\geq{\ensuremath\ge} -\def\leq{\ensuremath\le} -\def\minus{\ensuremath-} - -% @dots{} outputs an ellipsis using the current font. -% We do .5em per period so that it has the same spacing in the cm -% typewriter fonts as three actual period characters; on the other hand, -% in other typewriter fonts three periods are wider than 1.5em. So do -% whichever is larger. -% -\def\dots{% - \leavevmode - \setbox0=\hbox{...}% get width of three periods - \ifdim\wd0 > 1.5em - \dimen0 = \wd0 - \else - \dimen0 = 1.5em - \fi - \hbox to \dimen0{% - \hskip 0pt plus.25fil - .\hskip 0pt plus1fil - .\hskip 0pt plus1fil - .\hskip 0pt plus.5fil - }% -} - -% @enddots{} is an end-of-sentence ellipsis. -% -\def\enddots{% - \dots - \spacefactor=\endofsentencespacefactor -} - -% @point{}, @result{}, @expansion{}, @print{}, @equiv{}. -% -% Since these characters are used in examples, they should be an even number of -% \tt widths. Each \tt character is 1en, so two makes it 1em. -% -\def\point{$\star$} -\def\arrow{\leavevmode\raise.05ex\hbox to 1em{\hfil$\rightarrow$\hfil}} -\def\result{\leavevmode\raise.05ex\hbox to 1em{\hfil$\Rightarrow$\hfil}} -\def\expansion{\leavevmode\hbox to 1em{\hfil$\mapsto$\hfil}} -\def\print{\leavevmode\lower.1ex\hbox to 1em{\hfil$\dashv$\hfil}} -\def\equiv{\leavevmode\hbox to 1em{\hfil$\ptexequiv$\hfil}} - -% The @error{} command. -% Adapted from the TeXbook's \boxit. -% -\newbox\errorbox -% -{\ttfont \global\dimen0 = 3em}% Width of the box. -\dimen2 = .55pt % Thickness of rules -% The text. (`r' is open on the right, `e' somewhat less so on the left.) -\setbox0 = \hbox{\kern-.75pt \reducedsf \putworderror\kern-1.5pt} -% -\setbox\errorbox=\hbox to \dimen0{\hfil - \hsize = \dimen0 \advance\hsize by -5.8pt % Space to left+right. - \advance\hsize by -2\dimen2 % Rules. - \vbox{% - \hrule height\dimen2 - \hbox{\vrule width\dimen2 \kern3pt % Space to left of text. - \vtop{\kern2.4pt \box0 \kern2.4pt}% Space above/below. - \kern3pt\vrule width\dimen2}% Space to right. - \hrule height\dimen2} - \hfil} -% -\def\error{\leavevmode\lower.7ex\copy\errorbox} - -% @pounds{} is a sterling sign, which Knuth put in the CM italic font. -% -\def\pounds{{\it\$}} - -% @euro{} comes from a separate font, depending on the current style. -% We use the free feym* fonts from the eurosym package by Henrik -% Theiling, which support regular, slanted, bold and bold slanted (and -% "outlined" (blackboard board, sort of) versions, which we don't need). -% It is available from http://www.ctan.org/tex-archive/fonts/eurosym. -% -% Although only regular is the truly official Euro symbol, we ignore -% that. The Euro is designed to be slightly taller than the regular -% font height. -% -% feymr - regular -% feymo - slanted -% feybr - bold -% feybo - bold slanted -% -% There is no good (free) typewriter version, to my knowledge. -% A feymr10 euro is ~7.3pt wide, while a normal cmtt10 char is ~5.25pt wide. -% Hmm. -% -% Also doesn't work in math. Do we need to do math with euro symbols? -% Hope not. -% -% -\def\euro{{\eurofont e}} -\def\eurofont{% - % We set the font at each command, rather than predefining it in - % \textfonts and the other font-switching commands, so that - % installations which never need the symbol don't have to have the - % font installed. - % - % There is only one designed size (nominal 10pt), so we always scale - % that to the current nominal size. - % - % By the way, simply using "at 1em" works for cmr10 and the like, but - % does not work for cmbx10 and other extended/shrunken fonts. - % - \def\eurosize{\csname\curfontsize nominalsize\endcsname}% - % - \ifx\curfontstyle\bfstylename - % bold: - \font\thiseurofont = \ifusingit{feybo10}{feybr10} at \eurosize - \else - % regular: - \font\thiseurofont = \ifusingit{feymo10}{feymr10} at \eurosize - \fi - \thiseurofont -} - -% Glyphs from the EC fonts. We don't use \let for the aliases, because -% sometimes we redefine the original macro, and the alias should reflect -% the redefinition. -% -% Use LaTeX names for the Icelandic letters. -\def\DH{{\ecfont \char"D0}} % Eth -\def\dh{{\ecfont \char"F0}} % eth -\def\TH{{\ecfont \char"DE}} % Thorn -\def\th{{\ecfont \char"FE}} % thorn -% -\def\guillemetleft{{\ecfont \char"13}} -\def\guillemotleft{\guillemetleft} -\def\guillemetright{{\ecfont \char"14}} -\def\guillemotright{\guillemetright} -\def\guilsinglleft{{\ecfont \char"0E}} -\def\guilsinglright{{\ecfont \char"0F}} -\def\quotedblbase{{\ecfont \char"12}} -\def\quotesinglbase{{\ecfont \char"0D}} -% -% This positioning is not perfect (see the ogonek LaTeX package), but -% we have the precomposed glyphs for the most common cases. We put the -% tests to use those glyphs in the single \ogonek macro so we have fewer -% dummy definitions to worry about for index entries, etc. -% -% ogonek is also used with other letters in Lithuanian (IOU), but using -% the precomposed glyphs for those is not so easy since they aren't in -% the same EC font. -\def\ogonek#1{{% - \def\temp{#1}% - \ifx\temp\macrocharA\Aogonek - \else\ifx\temp\macrochara\aogonek - \else\ifx\temp\macrocharE\Eogonek - \else\ifx\temp\macrochare\eogonek - \else - \ecfont \setbox0=\hbox{#1}% - \ifdim\ht0=1ex\accent"0C #1% - \else\ooalign{\unhbox0\crcr\hidewidth\char"0C \hidewidth}% - \fi - \fi\fi\fi\fi - }% -} -\def\Aogonek{{\ecfont \char"81}}\def\macrocharA{A} -\def\aogonek{{\ecfont \char"A1}}\def\macrochara{a} -\def\Eogonek{{\ecfont \char"86}}\def\macrocharE{E} -\def\eogonek{{\ecfont \char"A6}}\def\macrochare{e} -% -% Use the European Computer Modern fonts (cm-super in outline format) -% for non-CM glyphs. That is ec* for regular text and tc* for the text -% companion symbols (LaTeX TS1 encoding). Both are part of the ec -% package and follow the same conventions. -% -\def\ecfont{\etcfont{e}} -\def\tcfont{\etcfont{t}} -% -\def\etcfont#1{% - % We can't distinguish serif/sans and italic/slanted, but this - % is used for crude hacks anyway (like adding French and German - % quotes to documents typeset with CM, where we lose kerning), so - % hopefully nobody will notice/care. - \edef\ecsize{\csname\curfontsize ecsize\endcsname}% - \edef\nominalsize{\csname\curfontsize nominalsize\endcsname}% - \ifmonospace - % typewriter: - \font\thisecfont = #1ctt\ecsize \space at \nominalsize - \else - \ifx\curfontstyle\bfstylename - % bold: - \font\thisecfont = #1cb\ifusingit{i}{x}\ecsize \space at \nominalsize - \else - % regular: - \font\thisecfont = #1c\ifusingit{ti}{rm}\ecsize \space at \nominalsize - \fi - \fi - \thisecfont -} - -% @registeredsymbol - R in a circle. The font for the R should really -% be smaller yet, but lllsize is the best we can do for now. -% Adapted from the plain.tex definition of \copyright. -% -\def\registeredsymbol{% - $^{{\ooalign{\hfil\raise.07ex\hbox{\switchtolllsize R}% - \hfil\crcr\Orb}}% - }$% -} - -% @textdegree - the normal degrees sign. -% -\def\textdegree{$^\circ$} - -% Laurent Siebenmann reports \Orb undefined with: -% Textures 1.7.7 (preloaded format=plain 93.10.14) (68K) 16 APR 2004 02:38 -% so we'll define it if necessary. -% -\ifx\Orb\thisisundefined -\def\Orb{\mathhexbox20D} -\fi - -% Quotes. -\chardef\quotedblleft="5C -\chardef\quotedblright=`\" -\chardef\quoteleft=`\` -\chardef\quoteright=`\' - - -\message{page headings,} - -\newskip\titlepagetopglue \titlepagetopglue = 1.5in -\newskip\titlepagebottomglue \titlepagebottomglue = 2pc - -% First the title page. Must do @settitle before @titlepage. -\newif\ifseenauthor -\newif\iffinishedtitlepage - -% @setcontentsaftertitlepage used to do an implicit @contents or -% @shortcontents after @end titlepage, but it is now obsolete. -\def\setcontentsaftertitlepage{% - \errmessage{@setcontentsaftertitlepage has been removed as a Texinfo - command; move your @contents command if you want the contents - after the title page.}}% -\def\setshortcontentsaftertitlepage{% - \errmessage{@setshortcontentsaftertitlepage has been removed as a Texinfo - command; move your @shortcontents and @contents commands if you - want the contents after the title page.}}% - -\parseargdef\shorttitlepage{% - \begingroup \hbox{}\vskip 1.5in \chaprm \centerline{#1}% - \endgroup\page\hbox{}\page} - -\envdef\titlepage{% - % Open one extra group, as we want to close it in the middle of \Etitlepage. - \begingroup - \parindent=0pt \textfonts - % Leave some space at the very top of the page. - \vglue\titlepagetopglue - % No rule at page bottom unless we print one at the top with @title. - \finishedtitlepagetrue - % - % Most title ``pages'' are actually two pages long, with space - % at the top of the second. We don't want the ragged left on the second. - \let\oldpage = \page - \def\page{% - \iffinishedtitlepage\else - \finishtitlepage - \fi - \let\page = \oldpage - \page - \null - }% -} - -\def\Etitlepage{% - \iffinishedtitlepage\else - \finishtitlepage - \fi - % It is important to do the page break before ending the group, - % because the headline and footline are only empty inside the group. - % If we use the new definition of \page, we always get a blank page - % after the title page, which we certainly don't want. - \oldpage - \endgroup - % - % Need this before the \...aftertitlepage checks so that if they are - % in effect the toc pages will come out with page numbers. - \HEADINGSon -} - -\def\finishtitlepage{% - \vskip4pt \hrule height 2pt width \hsize - \vskip\titlepagebottomglue - \finishedtitlepagetrue -} - -% Settings used for typesetting titles: no hyphenation, no indentation, -% don't worry much about spacing, ragged right. This should be used -% inside a \vbox, and fonts need to be set appropriately first. \par should -% be specified before the end of the \vbox, since a vbox is a group. -% -\def\raggedtitlesettings{% - \rm - \hyphenpenalty=10000 - \parindent=0pt - \tolerance=5000 - \ptexraggedright -} - -% Macros to be used within @titlepage: - -\let\subtitlerm=\rmfont -\def\subtitlefont{\subtitlerm \normalbaselineskip = 13pt \normalbaselines} - -\parseargdef\title{% - \checkenv\titlepage - \vbox{\titlefonts \raggedtitlesettings #1\par}% - % print a rule at the page bottom also. - \finishedtitlepagefalse - \vskip4pt \hrule height 4pt width \hsize \vskip4pt -} - -\parseargdef\subtitle{% - \checkenv\titlepage - {\subtitlefont \rightline{#1}}% -} - -% @author should come last, but may come many times. -% It can also be used inside @quotation. -% -\parseargdef\author{% - \def\temp{\quotation}% - \ifx\thisenv\temp - \def\quotationauthor{#1}% printed in \Equotation. - \else - \checkenv\titlepage - \ifseenauthor\else \vskip 0pt plus 1filll \seenauthortrue \fi - {\secfonts\rm \leftline{#1}}% - \fi -} - - -% Set up page headings and footings. - -\let\thispage=\folio - -\newtoks\evenheadline % headline on even pages -\newtoks\oddheadline % headline on odd pages -\newtoks\evenfootline % footline on even pages -\newtoks\oddfootline % footline on odd pages - -% Now make \makeheadline and \makefootline in Plain TeX use those variables -\headline={{\textfonts\rm \ifodd\pageno \the\oddheadline - \else \the\evenheadline \fi}} -\footline={{\textfonts\rm \ifodd\pageno \the\oddfootline - \else \the\evenfootline \fi}\HEADINGShook} -\let\HEADINGShook=\relax - -% Commands to set those variables. -% For example, this is what @headings on does -% @evenheading @thistitle|@thispage|@thischapter -% @oddheading @thischapter|@thispage|@thistitle -% @evenfooting @thisfile|| -% @oddfooting ||@thisfile - - -\def\evenheading{\parsearg\evenheadingxxx} -\def\evenheadingxxx #1{\evenheadingyyy #1\|\|\|\|\finish} -\def\evenheadingyyy #1\|#2\|#3\|#4\finish{% -\global\evenheadline={\rlap{\centerline{#2}}\line{#1\hfil#3}}} - -\def\oddheading{\parsearg\oddheadingxxx} -\def\oddheadingxxx #1{\oddheadingyyy #1\|\|\|\|\finish} -\def\oddheadingyyy #1\|#2\|#3\|#4\finish{% -\global\oddheadline={\rlap{\centerline{#2}}\line{#1\hfil#3}}} - -\parseargdef\everyheading{\oddheadingxxx{#1}\evenheadingxxx{#1}}% - -\def\evenfooting{\parsearg\evenfootingxxx} -\def\evenfootingxxx #1{\evenfootingyyy #1\|\|\|\|\finish} -\def\evenfootingyyy #1\|#2\|#3\|#4\finish{% -\global\evenfootline={\rlap{\centerline{#2}}\line{#1\hfil#3}}} - -\def\oddfooting{\parsearg\oddfootingxxx} -\def\oddfootingxxx #1{\oddfootingyyy #1\|\|\|\|\finish} -\def\oddfootingyyy #1\|#2\|#3\|#4\finish{% - \global\oddfootline = {\rlap{\centerline{#2}}\line{#1\hfil#3}}% - % - % Leave some space for the footline. Hopefully ok to assume - % @evenfooting will not be used by itself. - \global\advance\txipageheight by -12pt - \global\advance\vsize by -12pt -} - -\parseargdef\everyfooting{\oddfootingxxx{#1}\evenfootingxxx{#1}} - -% @evenheadingmarks top \thischapter <- chapter at the top of a page -% @evenheadingmarks bottom \thischapter <- chapter at the bottom of a page -% -% The same set of arguments for: -% -% @oddheadingmarks -% @evenfootingmarks -% @oddfootingmarks -% @everyheadingmarks -% @everyfootingmarks - -% These define \getoddheadingmarks, \getevenheadingmarks, -% \getoddfootingmarks, and \getevenfootingmarks, each to one of -% \gettopheadingmarks, \getbottomheadingmarks. -% -\def\evenheadingmarks{\headingmarks{even}{heading}} -\def\oddheadingmarks{\headingmarks{odd}{heading}} -\def\evenfootingmarks{\headingmarks{even}{footing}} -\def\oddfootingmarks{\headingmarks{odd}{footing}} -\parseargdef\everyheadingmarks{\headingmarks{even}{heading}{#1} - \headingmarks{odd}{heading}{#1} } -\parseargdef\everyfootingmarks{\headingmarks{even}{footing}{#1} - \headingmarks{odd}{footing}{#1} } -% #1 = even/odd, #2 = heading/footing, #3 = top/bottom. -\def\headingmarks#1#2#3 {% - \expandafter\let\expandafter\temp \csname get#3headingmarks\endcsname - \global\expandafter\let\csname get#1#2marks\endcsname \temp -} - -\everyheadingmarks bottom -\everyfootingmarks bottom - -% @headings double turns headings on for double-sided printing. -% @headings single turns headings on for single-sided printing. -% @headings off turns them off. -% @headings on same as @headings double, retained for compatibility. -% @headings after turns on double-sided headings after this page. -% @headings doubleafter turns on double-sided headings after this page. -% @headings singleafter turns on single-sided headings after this page. -% By default, they are off at the start of a document, -% and turned `on' after @end titlepage. - -\parseargdef\headings{\csname HEADINGS#1\endcsname} - -\def\headingsoff{% non-global headings elimination - \evenheadline={\hfil}\evenfootline={\hfil}% - \oddheadline={\hfil}\oddfootline={\hfil}% -} - -\def\HEADINGSoff{{\globaldefs=1 \headingsoff}} % global setting -\HEADINGSoff % it's the default - -% When we turn headings on, set the page number to 1. -% For double-sided printing, put current file name in lower left corner, -% chapter name on inside top of right hand pages, document -% title on inside top of left hand pages, and page numbers on outside top -% edge of all pages. -\def\HEADINGSdouble{% -\global\pageno=1 -\global\evenfootline={\hfil} -\global\oddfootline={\hfil} -\global\evenheadline={\line{\folio\hfil\thistitle}} -\global\oddheadline={\line{\thischapterheading\hfil\folio}} -\global\let\contentsalignmacro = \chapoddpage -} -\let\contentsalignmacro = \chappager - -% For single-sided printing, chapter title goes across top left of page, -% page number on top right. -\def\HEADINGSsingle{% -\global\pageno=1 -\global\evenfootline={\hfil} -\global\oddfootline={\hfil} -\global\evenheadline={\line{\thischapterheading\hfil\folio}} -\global\oddheadline={\line{\thischapterheading\hfil\folio}} -\global\let\contentsalignmacro = \chappager -} -\def\HEADINGSon{\HEADINGSdouble} - -\def\HEADINGSafter{\let\HEADINGShook=\HEADINGSdoublex} -\let\HEADINGSdoubleafter=\HEADINGSafter -\def\HEADINGSdoublex{% -\global\evenfootline={\hfil} -\global\oddfootline={\hfil} -\global\evenheadline={\line{\folio\hfil\thistitle}} -\global\oddheadline={\line{\thischapterheading\hfil\folio}} -\global\let\contentsalignmacro = \chapoddpage -} - -\def\HEADINGSsingleafter{\let\HEADINGShook=\HEADINGSsinglex} -\def\HEADINGSsinglex{% -\global\evenfootline={\hfil} -\global\oddfootline={\hfil} -\global\evenheadline={\line{\thischapterheading\hfil\folio}} -\global\oddheadline={\line{\thischapterheading\hfil\folio}} -\global\let\contentsalignmacro = \chappager -} - -% Subroutines used in generating headings -% This produces Day Month Year style of output. -% Only define if not already defined, in case a txi-??.tex file has set -% up a different format (e.g., txi-cs.tex does this). -\ifx\today\thisisundefined -\def\today{% - \number\day\space - \ifcase\month - \or\putwordMJan\or\putwordMFeb\or\putwordMMar\or\putwordMApr - \or\putwordMMay\or\putwordMJun\or\putwordMJul\or\putwordMAug - \or\putwordMSep\or\putwordMOct\or\putwordMNov\or\putwordMDec - \fi - \space\number\year} -\fi - -% @settitle line... specifies the title of the document, for headings. -% It generates no output of its own. -\def\thistitle{\putwordNoTitle} -\def\settitle{\parsearg{\gdef\thistitle}} - - -\message{tables,} -% Tables -- @table, @ftable, @vtable, @item(x). - -% default indentation of table text -\newdimen\tableindent \tableindent=.8in -% default indentation of @itemize and @enumerate text -\newdimen\itemindent \itemindent=.3in -% margin between end of table item and start of table text. -\newdimen\itemmargin \itemmargin=.1in - -% used internally for \itemindent minus \itemmargin -\newdimen\itemmax - -% Note @table, @ftable, and @vtable define @item, @itemx, etc., with -% these defs. -% They also define \itemindex -% to index the item name in whatever manner is desired (perhaps none). - -\newif\ifitemxneedsnegativevskip - -\def\itemxpar{\par\ifitemxneedsnegativevskip\nobreak\vskip-\parskip\nobreak\fi} - -\def\internalBitem{\smallbreak \parsearg\itemzzz} -\def\internalBitemx{\itemxpar \parsearg\itemzzz} - -\def\itemzzz #1{\begingroup % - \advance\hsize by -\rightskip - \advance\hsize by -\tableindent - \setbox0=\hbox{\itemindicate{#1}}% - \itemindex{#1}% - \nobreak % This prevents a break before @itemx. - % - % If the item text does not fit in the space we have, put it on a line - % by itself, and do not allow a page break either before or after that - % line. We do not start a paragraph here because then if the next - % command is, e.g., @kindex, the whatsit would get put into the - % horizontal list on a line by itself, resulting in extra blank space. - \ifdim \wd0>\itemmax - % - % Make this a paragraph so we get the \parskip glue and wrapping, - % but leave it ragged-right. - \begingroup - \advance\leftskip by-\tableindent - \advance\hsize by\tableindent - \advance\rightskip by0pt plus1fil\relax - \leavevmode\unhbox0\par - \endgroup - % - % We're going to be starting a paragraph, but we don't want the - % \parskip glue -- logically it's part of the @item we just started. - \nobreak \vskip-\parskip - % - % Stop a page break at the \parskip glue coming up. However, if - % what follows is an environment such as @example, there will be no - % \parskip glue; then the negative vskip we just inserted would - % cause the example and the item to crash together. So we use this - % bizarre value of 10001 as a signal to \aboveenvbreak to insert - % \parskip glue after all. Section titles are handled this way also. - % - \penalty 10001 - \endgroup - \itemxneedsnegativevskipfalse - \else - % The item text fits into the space. Start a paragraph, so that the - % following text (if any) will end up on the same line. - \noindent - % Do this with kerns and \unhbox so that if there is a footnote in - % the item text, it can migrate to the main vertical list and - % eventually be printed. - \nobreak\kern-\tableindent - \dimen0 = \itemmax \advance\dimen0 by \itemmargin \advance\dimen0 by -\wd0 - \unhbox0 - \nobreak\kern\dimen0 - \endgroup - \itemxneedsnegativevskiptrue - \fi -} - -\def\item{\errmessage{@item while not in a list environment}} -\def\itemx{\errmessage{@itemx while not in a list environment}} - -% @table, @ftable, @vtable. -\envdef\table{% - \let\itemindex\gobble - \tablecheck{table}% -} -\envdef\ftable{% - \def\itemindex ##1{\doind {fn}{\code{##1}}}% - \tablecheck{ftable}% -} -\envdef\vtable{% - \def\itemindex ##1{\doind {vr}{\code{##1}}}% - \tablecheck{vtable}% -} -\def\tablecheck#1{% - \ifnum \the\catcode`\^^M=\active - \endgroup - \errmessage{This command won't work in this context; perhaps the problem is - that we are \inenvironment\thisenv}% - \def\next{\doignore{#1}}% - \else - \let\next\tablex - \fi - \next -} -\def\tablex#1{% - \def\itemindicate{#1}% - \parsearg\tabley -} -\def\tabley#1{% - {% - \makevalueexpandable - \edef\temp{\noexpand\tablez #1\space\space\space}% - \expandafter - }\temp \endtablez -} -\def\tablez #1 #2 #3 #4\endtablez{% - \aboveenvbreak - \ifnum 0#1>0 \advance \leftskip by #1\mil \fi - \ifnum 0#2>0 \tableindent=#2\mil \fi - \ifnum 0#3>0 \advance \rightskip by #3\mil \fi - \itemmax=\tableindent - \advance \itemmax by -\itemmargin - \advance \leftskip by \tableindent - \exdentamount=\tableindent - \parindent = 0pt - \parskip = \smallskipamount - \ifdim \parskip=0pt \parskip=2pt \fi - \let\item = \internalBitem - \let\itemx = \internalBitemx -} -\def\Etable{\endgraf\afterenvbreak} -\let\Eftable\Etable -\let\Evtable\Etable -\let\Eitemize\Etable -\let\Eenumerate\Etable - -% This is the counter used by @enumerate, which is really @itemize - -\newcount \itemno - -\envdef\itemize{\parsearg\doitemize} - -\def\doitemize#1{% - \aboveenvbreak - \itemmax=\itemindent - \advance\itemmax by -\itemmargin - \advance\leftskip by \itemindent - \exdentamount=\itemindent - \parindent=0pt - \parskip=\smallskipamount - \ifdim\parskip=0pt \parskip=2pt \fi - % - % Try typesetting the item mark so that if the document erroneously says - % something like @itemize @samp (intending @table), there's an error - % right away at the @itemize. It's not the best error message in the - % world, but it's better than leaving it to the @item. This means if - % the user wants an empty mark, they have to say @w{} not just @w. - \def\itemcontents{#1}% - \setbox0 = \hbox{\itemcontents}% - % - % @itemize with no arg is equivalent to @itemize @bullet. - \ifx\itemcontents\empty\def\itemcontents{\bullet}\fi - % - \let\item=\itemizeitem -} - -% Definition of @item while inside @itemize and @enumerate. -% -\def\itemizeitem{% - \advance\itemno by 1 % for enumerations - {\let\par=\endgraf \smallbreak}% reasonable place to break - {% - % If the document has an @itemize directly after a section title, a - % \nobreak will be last on the list, and \sectionheading will have - % done a \vskip-\parskip. In that case, we don't want to zero - % parskip, or the item text will crash with the heading. On the - % other hand, when there is normal text preceding the item (as there - % usually is), we do want to zero parskip, or there would be too much - % space. In that case, we won't have a \nobreak before. At least - % that's the theory. - \ifnum\lastpenalty<10000 \parskip=0in \fi - \noindent - \hbox to 0pt{\hss \itemcontents \kern\itemmargin}% - % - \ifinner\else - \vadjust{\penalty 1200}% not good to break after first line of item. - \fi - % We can be in inner vertical mode in a footnote, although an - % @itemize looks awful there. - }% - \flushcr -} - -% \splitoff TOKENS\endmark defines \first to be the first token in -% TOKENS, and \rest to be the remainder. -% -\def\splitoff#1#2\endmark{\def\first{#1}\def\rest{#2}}% - -% Allow an optional argument of an uppercase letter, lowercase letter, -% or number, to specify the first label in the enumerated list. No -% argument is the same as `1'. -% -\envparseargdef\enumerate{\enumeratey #1 \endenumeratey} -\def\enumeratey #1 #2\endenumeratey{% - % If we were given no argument, pretend we were given `1'. - \def\thearg{#1}% - \ifx\thearg\empty \def\thearg{1}\fi - % - % Detect if the argument is a single token. If so, it might be a - % letter. Otherwise, the only valid thing it can be is a number. - % (We will always have one token, because of the test we just made. - % This is a good thing, since \splitoff doesn't work given nothing at - % all -- the first parameter is undelimited.) - \expandafter\splitoff\thearg\endmark - \ifx\rest\empty - % Only one token in the argument. It could still be anything. - % A ``lowercase letter'' is one whose \lccode is nonzero. - % An ``uppercase letter'' is one whose \lccode is both nonzero, and - % not equal to itself. - % Otherwise, we assume it's a number. - % - % We need the \relax at the end of the \ifnum lines to stop TeX from - % continuing to look for a . - % - \ifnum\lccode\expandafter`\thearg=0\relax - \numericenumerate % a number (we hope) - \else - % It's a letter. - \ifnum\lccode\expandafter`\thearg=\expandafter`\thearg\relax - \lowercaseenumerate % lowercase letter - \else - \uppercaseenumerate % uppercase letter - \fi - \fi - \else - % Multiple tokens in the argument. We hope it's a number. - \numericenumerate - \fi -} - -% An @enumerate whose labels are integers. The starting integer is -% given in \thearg. -% -\def\numericenumerate{% - \itemno = \thearg - \startenumeration{\the\itemno}% -} - -% The starting (lowercase) letter is in \thearg. -\def\lowercaseenumerate{% - \itemno = \expandafter`\thearg - \startenumeration{% - % Be sure we're not beyond the end of the alphabet. - \ifnum\itemno=0 - \errmessage{No more lowercase letters in @enumerate; get a bigger - alphabet}% - \fi - \char\lccode\itemno - }% -} - -% The starting (uppercase) letter is in \thearg. -\def\uppercaseenumerate{% - \itemno = \expandafter`\thearg - \startenumeration{% - % Be sure we're not beyond the end of the alphabet. - \ifnum\itemno=0 - \errmessage{No more uppercase letters in @enumerate; get a bigger - alphabet} - \fi - \char\uccode\itemno - }% -} - -% Call \doitemize, adding a period to the first argument and supplying the -% common last two arguments. Also subtract one from the initial value in -% \itemno, since @item increments \itemno. -% -\def\startenumeration#1{% - \advance\itemno by -1 - \doitemize{#1.}\flushcr -} - -% @alphaenumerate and @capsenumerate are abbreviations for giving an arg -% to @enumerate. -% -\def\alphaenumerate{\enumerate{a}} -\def\capsenumerate{\enumerate{A}} -\def\Ealphaenumerate{\Eenumerate} -\def\Ecapsenumerate{\Eenumerate} - - -% @multitable macros -% Amy Hendrickson, 8/18/94, 3/6/96 -% -% @multitable ... @end multitable will make as many columns as desired. -% Contents of each column will wrap at width given in preamble. Width -% can be specified either with sample text given in a template line, -% or in percent of \hsize, the current width of text on page. - -% Table can continue over pages but will only break between lines. - -% To make preamble: -% -% Either define widths of columns in terms of percent of \hsize: -% @multitable @columnfractions .25 .3 .45 -% @item ... -% -% Numbers following @columnfractions are the percent of the total -% current hsize to be used for each column. You may use as many -% columns as desired. - - -% Or use a template: -% @multitable {Column 1 template} {Column 2 template} {Column 3 template} -% @item ... -% using the widest term desired in each column. - -% Each new table line starts with @item, each subsequent new column -% starts with @tab. Empty columns may be produced by supplying @tab's -% with nothing between them for as many times as empty columns are needed, -% ie, @tab@tab@tab will produce two empty columns. - -% @item, @tab do not need to be on their own lines, but it will not hurt -% if they are. - -% Sample multitable: - -% @multitable {Column 1 template} {Column 2 template} {Column 3 template} -% @item first col stuff @tab second col stuff @tab third col -% @item -% first col stuff -% @tab -% second col stuff -% @tab -% third col -% @item first col stuff @tab second col stuff -% @tab Many paragraphs of text may be used in any column. -% -% They will wrap at the width determined by the template. -% @item@tab@tab This will be in third column. -% @end multitable - -% Default dimensions may be reset by user. -% @multitableparskip is vertical space between paragraphs in table. -% @multitableparindent is paragraph indent in table. -% @multitablecolmargin is horizontal space to be left between columns. -% @multitablelinespace is space to leave between table items, baseline -% to baseline. -% 0pt means it depends on current normal line spacing. -% -\newskip\multitableparskip -\newskip\multitableparindent -\newdimen\multitablecolspace -\newskip\multitablelinespace -\multitableparskip=0pt -\multitableparindent=6pt -\multitablecolspace=12pt -\multitablelinespace=0pt - -% Macros used to set up halign preamble: -% -\let\endsetuptable\relax -\def\xendsetuptable{\endsetuptable} -\let\columnfractions\relax -\def\xcolumnfractions{\columnfractions} -\newif\ifsetpercent - -% #1 is the @columnfraction, usually a decimal number like .5, but might -% be just 1. We just use it, whatever it is. -% -\def\pickupwholefraction#1 {% - \global\advance\colcount by 1 - \expandafter\xdef\csname col\the\colcount\endcsname{#1\hsize}% - \setuptable -} - -\newcount\colcount -\def\setuptable#1{% - \def\firstarg{#1}% - \ifx\firstarg\xendsetuptable - \let\go = \relax - \else - \ifx\firstarg\xcolumnfractions - \global\setpercenttrue - \else - \ifsetpercent - \let\go\pickupwholefraction - \else - \global\advance\colcount by 1 - \setbox0=\hbox{#1\unskip\space}% Add a normal word space as a - % separator; typically that is always in the input, anyway. - \expandafter\xdef\csname col\the\colcount\endcsname{\the\wd0}% - \fi - \fi - \ifx\go\pickupwholefraction - % Put the argument back for the \pickupwholefraction call, so - % we'll always have a period there to be parsed. - \def\go{\pickupwholefraction#1}% - \else - \let\go = \setuptable - \fi% - \fi - \go -} - -% multitable-only commands. -% -% @headitem starts a heading row, which we typeset in bold. Assignments -% have to be global since we are inside the implicit group of an -% alignment entry. \everycr below resets \everytab so we don't have to -% undo it ourselves. -\def\headitemfont{\b}% for people to use in the template row; not changeable -\def\headitem{% - \checkenv\multitable - \crcr - \gdef\headitemcrhook{\nobreak}% attempt to avoid page break after headings - \global\everytab={\bf}% can't use \headitemfont since the parsing differs - \the\everytab % for the first item -}% -% -% default for tables with no headings. -\let\headitemcrhook=\relax -% -% A \tab used to include \hskip1sp. But then the space in a template -% line is not enough. That is bad. So let's go back to just `&' until -% we again encounter the problem the 1sp was intended to solve. -% --karl, nathan@acm.org, 20apr99. -\def\tab{\checkenv\multitable &\the\everytab}% - -% @multitable ... @end multitable definitions: -% -\newtoks\everytab % insert after every tab. -% -\envdef\multitable{% - \vskip\parskip - \startsavinginserts - % - % @item within a multitable starts a normal row. - % We use \def instead of \let so that if one of the multitable entries - % contains an @itemize, we don't choke on the \item (seen as \crcr aka - % \endtemplate) expanding \doitemize. - \def\item{\crcr}% - % - \tolerance=9500 - \hbadness=9500 - \setmultitablespacing - \parskip=\multitableparskip - \parindent=\multitableparindent - \overfullrule=0pt - \global\colcount=0 - % - \everycr = {% - \noalign{% - \global\everytab={}% Reset from possible headitem. - \global\colcount=0 % Reset the column counter. - % - % Check for saved footnotes, etc.: - \checkinserts - % - % Perhaps a \nobreak, then reset: - \headitemcrhook - \global\let\headitemcrhook=\relax - }% - }% - % - \parsearg\domultitable -} -\def\domultitable#1{% - % To parse everything between @multitable and @item: - \setuptable#1 \endsetuptable - % - % This preamble sets up a generic column definition, which will - % be used as many times as user calls for columns. - % \vtop will set a single line and will also let text wrap and - % continue for many paragraphs if desired. - \halign\bgroup &% - \global\advance\colcount by 1 - \multistrut - \vtop{% - % Use the current \colcount to find the correct column width: - \hsize=\expandafter\csname col\the\colcount\endcsname - % - % In order to keep entries from bumping into each other - % we will add a \leftskip of \multitablecolspace to all columns after - % the first one. - % - % If a template has been used, we will add \multitablecolspace - % to the width of each template entry. - % - % If the user has set preamble in terms of percent of \hsize we will - % use that dimension as the width of the column, and the \leftskip - % will keep entries from bumping into each other. Table will start at - % left margin and final column will justify at right margin. - % - % Make sure we don't inherit \rightskip from the outer environment. - \rightskip=0pt - \ifnum\colcount=1 - % The first column will be indented with the surrounding text. - \advance\hsize by\leftskip - \else - \ifsetpercent \else - % If user has not set preamble in terms of percent of \hsize - % we will advance \hsize by \multitablecolspace. - \advance\hsize by \multitablecolspace - \fi - % In either case we will make \leftskip=\multitablecolspace: - \leftskip=\multitablecolspace - \fi - % Ignoring space at the beginning and end avoids an occasional spurious - % blank line, when TeX decides to break the line at the space before the - % box from the multistrut, so the strut ends up on a line by itself. - % For example: - % @multitable @columnfractions .11 .89 - % @item @code{#} - % @tab Legal holiday which is valid in major parts of the whole country. - % Is automatically provided with highlighting sequences respectively - % marking characters. - \noindent\ignorespaces##\unskip\multistrut - }\cr -} -\def\Emultitable{% - \crcr - \egroup % end the \halign - \global\setpercentfalse -} - -\def\setmultitablespacing{% - \def\multistrut{\strut}% just use the standard line spacing - % - % Compute \multitablelinespace (if not defined by user) for use in - % \multitableparskip calculation. We used define \multistrut based on - % this, but (ironically) that caused the spacing to be off. - % See bug-texinfo report from Werner Lemberg, 31 Oct 2004 12:52:20 +0100. -\ifdim\multitablelinespace=0pt -\setbox0=\vbox{X}\global\multitablelinespace=\the\baselineskip -\global\advance\multitablelinespace by-\ht0 -\fi -% Test to see if parskip is larger than space between lines of -% table. If not, do nothing. -% If so, set to same dimension as multitablelinespace. -\ifdim\multitableparskip>\multitablelinespace -\global\multitableparskip=\multitablelinespace -\global\advance\multitableparskip-7pt % to keep parskip somewhat smaller - % than skip between lines in the table. -\fi% -\ifdim\multitableparskip=0pt -\global\multitableparskip=\multitablelinespace -\global\advance\multitableparskip-7pt % to keep parskip somewhat smaller - % than skip between lines in the table. -\fi} - - -\message{conditionals,} - -% @iftex, @ifnotdocbook, @ifnothtml, @ifnotinfo, @ifnotplaintext, -% @ifnotxml always succeed. They currently do nothing; we don't -% attempt to check whether the conditionals are properly nested. But we -% have to remember that they are conditionals, so that @end doesn't -% attempt to close an environment group. -% -\def\makecond#1{% - \expandafter\let\csname #1\endcsname = \relax - \expandafter\let\csname iscond.#1\endcsname = 1 -} -\makecond{iftex} -\makecond{ifnotdocbook} -\makecond{ifnothtml} -\makecond{ifnotinfo} -\makecond{ifnotplaintext} -\makecond{ifnotxml} - -% Ignore @ignore, @ifhtml, @ifinfo, and the like. -% -\def\direntry{\doignore{direntry}} -\def\documentdescription{\doignore{documentdescription}} -\def\docbook{\doignore{docbook}} -\def\html{\doignore{html}} -\def\ifdocbook{\doignore{ifdocbook}} -\def\ifhtml{\doignore{ifhtml}} -\def\ifinfo{\doignore{ifinfo}} -\def\ifnottex{\doignore{ifnottex}} -\def\ifplaintext{\doignore{ifplaintext}} -\def\ifxml{\doignore{ifxml}} -\def\ignore{\doignore{ignore}} -\def\menu{\doignore{menu}} -\def\xml{\doignore{xml}} - -% Ignore text until a line `@end #1', keeping track of nested conditionals. -% -% A count to remember the depth of nesting. -\newcount\doignorecount - -\def\doignore#1{\begingroup - % Scan in ``verbatim'' mode: - \obeylines - \catcode`\@ = \other - \catcode`\{ = \other - \catcode`\} = \other - % - % Make sure that spaces turn into tokens that match what \doignoretext wants. - \spaceisspace - % - % Count number of #1's that we've seen. - \doignorecount = 0 - % - % Swallow text until we reach the matching `@end #1'. - \dodoignore{#1}% -} - -{ \catcode`_=11 % We want to use \_STOP_ which cannot appear in texinfo source. - \obeylines % - % - \gdef\dodoignore#1{% - % #1 contains the command name as a string, e.g., `ifinfo'. - % - % Define a command to find the next `@end #1'. - \long\def\doignoretext##1^^M@end #1{% - \doignoretextyyy##1^^M@#1\_STOP_}% - % - % And this command to find another #1 command, at the beginning of a - % line. (Otherwise, we would consider a line `@c @ifset', for - % example, to count as an @ifset for nesting.) - \long\def\doignoretextyyy##1^^M@#1##2\_STOP_{\doignoreyyy{##2}\_STOP_}% - % - % And now expand that command. - \doignoretext ^^M% - }% -} - -\def\doignoreyyy#1{% - \def\temp{#1}% - \ifx\temp\empty % Nothing found. - \let\next\doignoretextzzz - \else % Found a nested condition, ... - \advance\doignorecount by 1 - \let\next\doignoretextyyy % ..., look for another. - % If we're here, #1 ends with ^^M\ifinfo (for example). - \fi - \next #1% the token \_STOP_ is present just after this macro. -} - -% We have to swallow the remaining "\_STOP_". -% -\def\doignoretextzzz#1{% - \ifnum\doignorecount = 0 % We have just found the outermost @end. - \let\next\enddoignore - \else % Still inside a nested condition. - \advance\doignorecount by -1 - \let\next\doignoretext % Look for the next @end. - \fi - \next -} - -% Finish off ignored text. -{ \obeylines% - % Ignore anything after the last `@end #1'; this matters in verbatim - % environments, where otherwise the newline after an ignored conditional - % would result in a blank line in the output. - \gdef\enddoignore#1^^M{\endgroup\ignorespaces}% -} - - -% @set VAR sets the variable VAR to an empty value. -% @set VAR REST-OF-LINE sets VAR to the value REST-OF-LINE. -% -% Since we want to separate VAR from REST-OF-LINE (which might be -% empty), we can't just use \parsearg; we have to insert a space of our -% own to delimit the rest of the line, and then take it out again if we -% didn't need it. -% We rely on the fact that \parsearg sets \catcode`\ =10. -% -\parseargdef\set{\setyyy#1 \endsetyyy} -\def\setyyy#1 #2\endsetyyy{% - {% - \makevalueexpandable - \def\temp{#2}% - \edef\next{\gdef\makecsname{SET#1}}% - \ifx\temp\empty - \next{}% - \else - \setzzz#2\endsetzzz - \fi - }% -} -% Remove the trailing space \setxxx inserted. -\def\setzzz#1 \endsetzzz{\next{#1}} - -% @clear VAR clears (i.e., unsets) the variable VAR. -% -\parseargdef\clear{% - {% - \makevalueexpandable - \global\expandafter\let\csname SET#1\endcsname=\relax - }% -} - -% @value{foo} gets the text saved in variable foo. -\def\value{\begingroup\makevalueexpandable\valuexxx} -\def\valuexxx#1{\expandablevalue{#1}\endgroup} -{ - \catcode`\-=\active \catcode`\_=\active - % - \gdef\makevalueexpandable{% - \let\value = \expandablevalue - % We don't want these characters active, ... - \catcode`\-=\other \catcode`\_=\other - % ..., but we might end up with active ones in the argument if - % we're called from @code, as @code{@value{foo-bar_}}, though. - % So \let them to their normal equivalents. - \let-\normaldash \let_\normalunderscore - } -} - -% We have this subroutine so that we can handle at least some @value's -% properly in indexes (we call \makevalueexpandable in \indexdummies). -% The command has to be fully expandable (if the variable is set), since -% the result winds up in the index file. This means that if the -% variable's value contains other Texinfo commands, it's almost certain -% it will fail (although perhaps we could fix that with sufficient work -% to do a one-level expansion on the result, instead of complete). -% -% Unfortunately, this has the consequence that when _ is in the *value* -% of an @set, it does not print properly in the roman fonts (get the cmr -% dot accent at position 126 instead). No fix comes to mind, and it's -% been this way since 2003 or earlier, so just ignore it. -% -\def\expandablevalue#1{% - \expandafter\ifx\csname SET#1\endcsname\relax - {[No value for ``#1'']}% - \message{Variable `#1', used in @value, is not set.}% - \else - \csname SET#1\endcsname - \fi -} - -% Like \expandablevalue, but completely expandable (the \message in the -% definition above operates at the execution level of TeX). Used when -% writing to auxiliary files, due to the expansion that \write does. -% If flag is undefined, pass through an unexpanded @value command: maybe it -% will be set by the time it is read back in. -% -% NB flag names containing - or _ may not work here. -\def\dummyvalue#1{% - \expandafter\ifx\csname SET#1\endcsname\relax - \noexpand\value{#1}% - \else - \csname SET#1\endcsname - \fi -} - -% Used for @value's in index entries to form the sort key: expand the @value -% if possible, otherwise sort late. -\def\indexnofontsvalue#1{% - \expandafter\ifx\csname SET#1\endcsname\relax - ZZZZZZZ - \else - \csname SET#1\endcsname - \fi -} - -% @ifset VAR ... @end ifset reads the `...' iff VAR has been defined -% with @set. -% -% To get the special treatment we need for `@end ifset,' we call -% \makecond and then redefine. -% -\makecond{ifset} -\def\ifset{\parsearg{\doifset{\let\next=\ifsetfail}}} -\def\doifset#1#2{% - {% - \makevalueexpandable - \let\next=\empty - \expandafter\ifx\csname SET#2\endcsname\relax - #1% If not set, redefine \next. - \fi - \expandafter - }\next -} -\def\ifsetfail{\doignore{ifset}} - -% @ifclear VAR ... @end executes the `...' iff VAR has never been -% defined with @set, or has been undefined with @clear. -% -% The `\else' inside the `\doifset' parameter is a trick to reuse the -% above code: if the variable is not set, do nothing, if it is set, -% then redefine \next to \ifclearfail. -% -\makecond{ifclear} -\def\ifclear{\parsearg{\doifset{\else \let\next=\ifclearfail}}} -\def\ifclearfail{\doignore{ifclear}} - -% @ifcommandisdefined CMD ... @end executes the `...' if CMD (written -% without the @) is in fact defined. We can only feasibly check at the -% TeX level, so something like `mathcode' is going to considered -% defined even though it is not a Texinfo command. -% -\makecond{ifcommanddefined} -\def\ifcommanddefined{\parsearg{\doifcmddefined{\let\next=\ifcmddefinedfail}}} -% -\def\doifcmddefined#1#2{{% - \makevalueexpandable - \let\next=\empty - \expandafter\ifx\csname #2\endcsname\relax - #1% If not defined, \let\next as above. - \fi - \expandafter - }\next -} -\def\ifcmddefinedfail{\doignore{ifcommanddefined}} - -% @ifcommandnotdefined CMD ... handled similar to @ifclear above. -\makecond{ifcommandnotdefined} -\def\ifcommandnotdefined{% - \parsearg{\doifcmddefined{\else \let\next=\ifcmdnotdefinedfail}}} -\def\ifcmdnotdefinedfail{\doignore{ifcommandnotdefined}} - -% Set the `txicommandconditionals' variable, so documents have a way to -% test if the @ifcommand...defined conditionals are available. -\set txicommandconditionals - -% @dircategory CATEGORY -- specify a category of the dir file -% which this file should belong to. Ignore this in TeX. -\let\dircategory=\comment - -% @defininfoenclose. -\let\definfoenclose=\comment - - -\message{indexing,} -% Index generation facilities - -% Define \newwrite to be identical to plain tex's \newwrite -% except not \outer, so it can be used within macros and \if's. -\edef\newwrite{\makecsname{ptexnewwrite}} - -% \newindex {foo} defines an index named IX. -% It automatically defines \IXindex such that -% \IXindex ...rest of line... puts an entry in the index IX. -% It also defines \IXindfile to be the number of the output channel for -% the file that accumulates this index. The file's extension is IX. -% The name of an index should be no more than 2 characters long -% for the sake of vms. -% -\def\newindex#1{% - \expandafter\chardef\csname#1indfile\endcsname=0 - \expandafter\xdef\csname#1index\endcsname{% % Define @#1index - \noexpand\doindex{#1}} -} - -% @defindex foo == \newindex{foo} -% -\def\defindex{\parsearg\newindex} - -% Define @defcodeindex, like @defindex except put all entries in @code. -% -\def\defcodeindex{\parsearg\newcodeindex} -% -\def\newcodeindex#1{% - \expandafter\chardef\csname#1indfile\endcsname=0 - \expandafter\xdef\csname#1index\endcsname{% - \noexpand\docodeindex{#1}}% -} - -% The default indices: -\newindex{cp}% concepts, -\newcodeindex{fn}% functions, -\newcodeindex{vr}% variables, -\newcodeindex{tp}% types, -\newcodeindex{ky}% keys -\newcodeindex{pg}% and programs. - - -% @synindex foo bar makes index foo feed into index bar. -% Do this instead of @defindex foo if you don't want it as a separate index. -% -% @syncodeindex foo bar similar, but put all entries made for index foo -% inside @code. -% -\def\synindex#1 #2 {\dosynindex\doindex{#1}{#2}} -\def\syncodeindex#1 #2 {\dosynindex\docodeindex{#1}{#2}} - -% #1 is \doindex or \docodeindex, #2 the index getting redefined (foo), -% #3 the target index (bar). -\def\dosynindex#1#2#3{% - \requireopenindexfile{#3}% - % redefine \fooindfile: - \expandafter\let\expandafter\temp\expandafter=\csname#3indfile\endcsname - \expandafter\let\csname#2indfile\endcsname=\temp - % redefine \fooindex: - \expandafter\xdef\csname#2index\endcsname{\noexpand#1{#3}}% -} - -% Define \doindex, the driver for all index macros. -% Argument #1 is generated by the calling \fooindex macro, -% and it is the two-letter name of the index. - -\def\doindex#1{\edef\indexname{#1}\parsearg\doindexxxx} -\def\doindexxxx #1{\doind{\indexname}{#1}} - -% like the previous two, but they put @code around the argument. -\def\docodeindex#1{\edef\indexname{#1}\parsearg\docodeindexxxx} -\def\docodeindexxxx #1{\doind{\indexname}{\code{#1}}} - - -% Used when writing an index entry out to an index file to prevent -% expansion of Texinfo commands that can appear in an index entry. -% -\def\indexdummies{% - \escapechar = `\\ % use backslash in output files. - \definedummyletter\@% - \definedummyletter\ % - % - % For texindex which always views { and } as separators. - \def\{{\lbracechar{}}% - \def\}{\rbracechar{}}% - % - % Do the redefinitions. - \definedummies -} - -% Used for the aux and toc files, where @ is the escape character. -% -\def\atdummies{% - \definedummyletter\@% - \definedummyletter\ % - \definedummyletter\{% - \definedummyletter\}% - % - % Do the redefinitions. - \definedummies - \otherbackslash -} - -% \definedummyword defines \#1 as \string\#1\space, thus effectively -% preventing its expansion. This is used only for control words, -% not control letters, because the \space would be incorrect for -% control characters, but is needed to separate the control word -% from whatever follows. -% -% These can be used both for control words that take an argument and -% those that do not. If it is followed by {arg} in the input, then -% that will dutifully get written to the index (or wherever). -% -% For control letters, we have \definedummyletter, which omits the -% space. -% -\def\definedummyword #1{\def#1{\string#1\space}}% -\def\definedummyletter#1{\def#1{\string#1}}% -\let\definedummyaccent\definedummyletter - -% Called from \indexdummies and \atdummies, to effectively prevent -% the expansion of commands. -% -\def\definedummies{% - % - \let\commondummyword\definedummyword - \let\commondummyletter\definedummyletter - \let\commondummyaccent\definedummyaccent - \commondummiesnofonts - % - \definedummyletter\_% - \definedummyletter\-% - % - % Non-English letters. - \definedummyword\AA - \definedummyword\AE - \definedummyword\DH - \definedummyword\L - \definedummyword\O - \definedummyword\OE - \definedummyword\TH - \definedummyword\aa - \definedummyword\ae - \definedummyword\dh - \definedummyword\exclamdown - \definedummyword\l - \definedummyword\o - \definedummyword\oe - \definedummyword\ordf - \definedummyword\ordm - \definedummyword\questiondown - \definedummyword\ss - \definedummyword\th - % - % Although these internal commands shouldn't show up, sometimes they do. - \definedummyword\bf - \definedummyword\gtr - \definedummyword\hat - \definedummyword\less - \definedummyword\sf - \definedummyword\sl - \definedummyword\tclose - \definedummyword\tt - % - \definedummyword\LaTeX - \definedummyword\TeX - % - % Assorted special characters. - \definedummyword\atchar - \definedummyword\arrow - \definedummyword\bullet - \definedummyword\comma - \definedummyword\copyright - \definedummyword\registeredsymbol - \definedummyword\dots - \definedummyword\enddots - \definedummyword\entrybreak - \definedummyword\equiv - \definedummyword\error - \definedummyword\euro - \definedummyword\expansion - \definedummyword\geq - \definedummyword\guillemetleft - \definedummyword\guillemetright - \definedummyword\guilsinglleft - \definedummyword\guilsinglright - \definedummyword\lbracechar - \definedummyword\leq - \definedummyword\mathopsup - \definedummyword\minus - \definedummyword\ogonek - \definedummyword\pounds - \definedummyword\point - \definedummyword\print - \definedummyword\quotedblbase - \definedummyword\quotedblleft - \definedummyword\quotedblright - \definedummyword\quoteleft - \definedummyword\quoteright - \definedummyword\quotesinglbase - \definedummyword\rbracechar - \definedummyword\result - \definedummyword\sub - \definedummyword\sup - \definedummyword\textdegree - % - % We want to disable all macros so that they are not expanded by \write. - \macrolist - \let\value\dummyvalue - % - \normalturnoffactive -} - -% \commondummiesnofonts: common to \definedummies and \indexnofonts. -% Define \commondummyletter, \commondummyaccent and \commondummyword before -% using. Used for accents, font commands, and various control letters. -% -\def\commondummiesnofonts{% - % Control letters and accents. - \commondummyletter\!% - \commondummyaccent\"% - \commondummyaccent\'% - \commondummyletter\*% - \commondummyaccent\,% - \commondummyletter\.% - \commondummyletter\/% - \commondummyletter\:% - \commondummyaccent\=% - \commondummyletter\?% - \commondummyaccent\^% - \commondummyaccent\`% - \commondummyaccent\~% - \commondummyword\u - \commondummyword\v - \commondummyword\H - \commondummyword\dotaccent - \commondummyword\ogonek - \commondummyword\ringaccent - \commondummyword\tieaccent - \commondummyword\ubaraccent - \commondummyword\udotaccent - \commondummyword\dotless - % - % Texinfo font commands. - \commondummyword\b - \commondummyword\i - \commondummyword\r - \commondummyword\sansserif - \commondummyword\sc - \commondummyword\slanted - \commondummyword\t - % - % Commands that take arguments. - \commondummyword\abbr - \commondummyword\acronym - \commondummyword\anchor - \commondummyword\cite - \commondummyword\code - \commondummyword\command - \commondummyword\dfn - \commondummyword\dmn - \commondummyword\email - \commondummyword\emph - \commondummyword\env - \commondummyword\file - \commondummyword\image - \commondummyword\indicateurl - \commondummyword\inforef - \commondummyword\kbd - \commondummyword\key - \commondummyword\math - \commondummyword\option - \commondummyword\pxref - \commondummyword\ref - \commondummyword\samp - \commondummyword\strong - \commondummyword\tie - \commondummyword\U - \commondummyword\uref - \commondummyword\url - \commondummyword\var - \commondummyword\verb - \commondummyword\w - \commondummyword\xref -} - -% For testing: output @{ and @} in index sort strings as \{ and \}. -\newif\ifusebracesinindexes - -\let\indexlbrace\relax -\let\indexrbrace\relax - -{\catcode`\@=0 -\catcode`\\=13 - @gdef@backslashdisappear{@def\{}} -} - -{ -\catcode`\<=13 -\catcode`\-=13 -\catcode`\`=13 - \gdef\indexnonalnumdisappear{% - \expandafter\ifx\csname SETtxiindexlquoteignore\endcsname\relax\else - % @set txiindexlquoteignore makes us ignore left quotes in the sort term. - % (Introduced for FSFS 2nd ed.) - \let`=\empty - \fi - % - \expandafter\ifx\csname SETtxiindexbackslashignore\endcsname\relax\else - \backslashdisappear - \fi - % - \expandafter\ifx\csname SETtxiindexhyphenignore\endcsname\relax\else - \def-{}% - \fi - \expandafter\ifx\csname SETtxiindexlessthanignore\endcsname\relax\else - \def<{}% - \fi - \expandafter\ifx\csname SETtxiindexatsignignore\endcsname\relax\else - \def\@{}% - \fi - } - - \gdef\indexnonalnumreappear{% - \useindexbackslash - \let-\normaldash - \let<\normalless - \def\@{@}% - } -} - - -% \indexnofonts is used when outputting the strings to sort the index -% by, and when constructing control sequence names. It eliminates all -% control sequences and just writes whatever the best ASCII sort string -% would be for a given command (usually its argument). -% -\def\indexnofonts{% - % Accent commands should become @asis. - \def\commondummyaccent##1{\let##1\asis}% - % We can just ignore other control letters. - \def\commondummyletter##1{\let##1\empty}% - % All control words become @asis by default; overrides below. - \let\commondummyword\commondummyaccent - \commondummiesnofonts - % - % Don't no-op \tt, since it isn't a user-level command - % and is used in the definitions of the active chars like <, >, |, etc. - % Likewise with the other plain tex font commands. - %\let\tt=\asis - % - \def\ { }% - \def\@{@}% - \def\_{\normalunderscore}% - \def\-{}% @- shouldn't affect sorting - % - \uccode`\1=`\{ \uppercase{\def\{{1}}% - \uccode`\1=`\} \uppercase{\def\}{1}}% - \let\lbracechar\{% - \let\rbracechar\}% - % - % Non-English letters. - \def\AA{AA}% - \def\AE{AE}% - \def\DH{DZZ}% - \def\L{L}% - \def\OE{OE}% - \def\O{O}% - \def\TH{TH}% - \def\aa{aa}% - \def\ae{ae}% - \def\dh{dzz}% - \def\exclamdown{!}% - \def\l{l}% - \def\oe{oe}% - \def\ordf{a}% - \def\ordm{o}% - \def\o{o}% - \def\questiondown{?}% - \def\ss{ss}% - \def\th{th}% - % - \def\LaTeX{LaTeX}% - \def\TeX{TeX}% - % - % Assorted special characters. \defglyph gives the control sequence a - % definition that removes the {} that follows its use. - \defglyph\atchar{@}% - \defglyph\arrow{->}% - \defglyph\bullet{bullet}% - \defglyph\comma{,}% - \defglyph\copyright{copyright}% - \defglyph\dots{...}% - \defglyph\enddots{...}% - \defglyph\equiv{==}% - \defglyph\error{error}% - \defglyph\euro{euro}% - \defglyph\expansion{==>}% - \defglyph\geq{>=}% - \defglyph\guillemetleft{<<}% - \defglyph\guillemetright{>>}% - \defglyph\guilsinglleft{<}% - \defglyph\guilsinglright{>}% - \defglyph\leq{<=}% - \defglyph\lbracechar{\{}% - \defglyph\minus{-}% - \defglyph\point{.}% - \defglyph\pounds{pounds}% - \defglyph\print{-|}% - \defglyph\quotedblbase{"}% - \defglyph\quotedblleft{"}% - \defglyph\quotedblright{"}% - \defglyph\quoteleft{`}% - \defglyph\quoteright{'}% - \defglyph\quotesinglbase{,}% - \defglyph\rbracechar{\}}% - \defglyph\registeredsymbol{R}% - \defglyph\result{=>}% - \defglyph\textdegree{o}% - % - % We need to get rid of all macros, leaving only the arguments (if present). - % Of course this is not nearly correct, but it is the best we can do for now. - % makeinfo does not expand macros in the argument to @deffn, which ends up - % writing an index entry, and texindex isn't prepared for an index sort entry - % that starts with \. - % - % Since macro invocations are followed by braces, we can just redefine them - % to take a single TeX argument. The case of a macro invocation that - % goes to end-of-line is not handled. - % - \macrolist - \let\value\indexnofontsvalue -} -\def\defglyph#1#2{\def#1##1{#2}} % see above - - - - -\let\SETmarginindex=\relax % put index entries in margin (undocumented)? - -% Most index entries go through here, but \dosubind is the general case. -% #1 is the index name, #2 is the entry text. -\def\doind#1#2{\dosubind{#1}{#2}{}} - -% There is also \dosubind {index}{topic}{subtopic} -% which makes an entry in a two-level index such as the operation index. -% TODO: Two-level index? Operation index? - -% Workhorse for all indexes. -% #1 is name of index, #2 is stuff to put there, #3 is subentry -- -% empty if called from \doind, as we usually are (the main exception -% is with most defuns, which call us directly). -% -\def\dosubind#1#2#3{% - \iflinks - {% - \requireopenindexfile{#1}% - % Store the main index entry text (including the third arg). - \toks0 = {#2}% - % If third arg is present, precede it with a space. - \def\thirdarg{#3}% - \ifx\thirdarg\empty \else - \toks0 = \expandafter{\the\toks0 \space #3}% - \fi - % - \edef\writeto{\csname#1indfile\endcsname}% - % - \safewhatsit\dosubindwrite - }% - \fi -} - -% Check if an index file has been opened, and if not, open it. -\def\requireopenindexfile#1{% -\ifnum\csname #1indfile\endcsname=0 - \expandafter\newwrite \csname#1indfile\endcsname - \edef\suffix{#1}% - % A .fls suffix would conflict with the file extension for the output - % of -recorder, so use .f1s instead. - \ifx\suffix\indexisfl\def\suffix{f1}\fi - % Open the file - \immediate\openout\csname#1indfile\endcsname \jobname.\suffix - % Using \immediate above here prevents an object entering into the current - % box, which could confound checks such as those in \safewhatsit for - % preceding skips. - \typeout{Writing index file \jobname.\suffix}% -\fi} -\def\indexisfl{fl} - -% Output \ as {\indexbackslash}, because \ is an escape character in -% the index files. -\let\indexbackslash=\relax -{\catcode`\@=0 \catcode`\\=\active - @gdef@useindexbackslash{@def\{{@indexbackslash}}} -} - -% Definition for writing index entry text. -\def\sortas#1{\ignorespaces}% - -% Definition for writing index entry sort key. Should occur at the at -% the beginning of the index entry, like -% @cindex @sortas{september} \september -% The \ignorespaces takes care of following space, but there's no way -% to remove space before it. -{ -\catcode`\-=13 -\gdef\indexwritesortas{% - \begingroup - \indexnonalnumreappear - \indexwritesortasxxx} -\gdef\indexwritesortasxxx#1{% - \xdef\indexsortkey{#1}\endgroup} -} - - -% Write the entry in \toks0 to the index file. -% -\def\dosubindwrite{% - % Put the index entry in the margin if desired. - \ifx\SETmarginindex\relax\else - \insert\margin{\hbox{\vrule height8pt depth3pt width0pt \the\toks0}}% - \fi - % - % Remember, we are within a group. - \indexdummies % Must do this here, since \bf, etc expand at this stage - \useindexbackslash % \indexbackslash isn't defined now so it will be output - % as is; and it will print as backslash. - % The braces around \indexbrace are recognized by texindex. - % - % Get the string to sort by, by processing the index entry with all - % font commands turned off. - {\indexnofonts - \def\lbracechar{{\indexlbrace}}% - \def\rbracechar{{\indexrbrace}}% - \let\{=\lbracechar - \let\}=\rbracechar - \indexnonalnumdisappear - \xdef\indexsortkey{}% - \let\sortas=\indexwritesortas - \edef\temp{\the\toks0}% - \setbox\dummybox = \hbox{\temp}% Make sure to execute any \sortas - \ifx\indexsortkey\empty - \xdef\indexsortkey{\temp}% - \ifx\indexsortkey\empty\xdef\indexsortkey{ }\fi - \fi - }% - % - % Set up the complete index entry, with both the sort key and - % the original text, including any font commands. We write - % three arguments to \entry to the .?? file (four in the - % subentry case), texindex reduces to two when writing the .??s - % sorted result. - \edef\temp{% - \write\writeto{% - \string\entry{\indexsortkey}{\noexpand\folio}{\the\toks0}}% - }% - \temp -} -\newbox\dummybox % used above - -% Take care of unwanted page breaks/skips around a whatsit: -% -% If a skip is the last thing on the list now, preserve it -% by backing up by \lastskip, doing the \write, then inserting -% the skip again. Otherwise, the whatsit generated by the -% \write or \pdfdest will make \lastskip zero. The result is that -% sequences like this: -% @end defun -% @tindex whatever -% @defun ... -% will have extra space inserted, because the \medbreak in the -% start of the @defun won't see the skip inserted by the @end of -% the previous defun. -% -% But don't do any of this if we're not in vertical mode. We -% don't want to do a \vskip and prematurely end a paragraph. -% -% Avoid page breaks due to these extra skips, too. -% -% But wait, there is a catch there: -% We'll have to check whether \lastskip is zero skip. \ifdim is not -% sufficient for this purpose, as it ignores stretch and shrink parts -% of the skip. The only way seems to be to check the textual -% representation of the skip. -% -% The following is almost like \def\zeroskipmacro{0.0pt} except that -% the ``p'' and ``t'' characters have catcode \other, not 11 (letter). -% -\edef\zeroskipmacro{\expandafter\the\csname z@skip\endcsname} -% -\newskip\whatsitskip -\newcount\whatsitpenalty -% -% ..., ready, GO: -% -\def\safewhatsit#1{\ifhmode - #1% - \else - % \lastskip and \lastpenalty cannot both be nonzero simultaneously. - \whatsitskip = \lastskip - \edef\lastskipmacro{\the\lastskip}% - \whatsitpenalty = \lastpenalty - % - % If \lastskip is nonzero, that means the last item was a - % skip. And since a skip is discardable, that means this - % -\whatsitskip glue we're inserting is preceded by a - % non-discardable item, therefore it is not a potential - % breakpoint, therefore no \nobreak needed. - \ifx\lastskipmacro\zeroskipmacro - \else - \vskip-\whatsitskip - \fi - % - #1% - % - \ifx\lastskipmacro\zeroskipmacro - % If \lastskip was zero, perhaps the last item was a penalty, and - % perhaps it was >=10000, e.g., a \nobreak. In that case, we want - % to re-insert the same penalty (values >10000 are used for various - % signals); since we just inserted a non-discardable item, any - % following glue (such as a \parskip) would be a breakpoint. For example: - % @deffn deffn-whatever - % @vindex index-whatever - % Description. - % would allow a break between the index-whatever whatsit - % and the "Description." paragraph. - \ifnum\whatsitpenalty>9999 \penalty\whatsitpenalty \fi - \else - % On the other hand, if we had a nonzero \lastskip, - % this make-up glue would be preceded by a non-discardable item - % (the whatsit from the \write), so we must insert a \nobreak. - \nobreak\vskip\whatsitskip - \fi -\fi} - -% The index entry written in the file actually looks like -% \entry {sortstring}{page}{topic} -% or -% \entry {sortstring}{page}{topic}{subtopic} -% The texindex program reads in these files and writes files -% containing these kinds of lines: -% \initial {c} -% before the first topic whose initial is c -% \entry {topic}{pagelist} -% for a topic that is used without subtopics -% \primary {topic} -% for the beginning of a topic that is used with subtopics -% \secondary {subtopic}{pagelist} -% for each subtopic. - -% Define the user-accessible indexing commands -% @findex, @vindex, @kindex, @cindex. - -\def\findex {\fnindex} -\def\kindex {\kyindex} -\def\cindex {\cpindex} -\def\vindex {\vrindex} -\def\tindex {\tpindex} -\def\pindex {\pgindex} - -\def\cindexsub {\begingroup\obeylines\cindexsub} -{\obeylines % -\gdef\cindexsub "#1" #2^^M{\endgroup % -\dosubind{cp}{#2}{#1}}} - -% Define the macros used in formatting output of the sorted index material. - -% @printindex causes a particular index (the ??s file) to get printed. -% It does not print any chapter heading (usually an @unnumbered). -% -\parseargdef\printindex{\begingroup - \dobreak \chapheadingskip{10000}% - % - \smallfonts \rm - \tolerance = 9500 - \plainfrenchspacing - \everypar = {}% don't want the \kern\-parindent from indentation suppression. - % - % See if the index file exists and is nonempty. - % Change catcode of @ here so that if the index file contains - % \initial {@} - % as its first line, TeX doesn't complain about mismatched braces - % (because it thinks @} is a control sequence). - \catcode`\@ = 12 - % See comment in \requireopenindexfile. - \def\indexname{#1}\ifx\indexname\indexisfl\def\indexname{f1}\fi - \openin 1 \jobname.\indexname s - \ifeof 1 - % \enddoublecolumns gets confused if there is no text in the index, - % and it loses the chapter title and the aux file entries for the - % index. The easiest way to prevent this problem is to make sure - % there is some text. - \putwordIndexNonexistent - \typeout{No file \jobname.\indexname s.}% - \else - \catcode`\\ = 0 - % - % If the index file exists but is empty, then \openin leaves \ifeof - % false. We have to make TeX try to read something from the file, so - % it can discover if there is anything in it. - \read 1 to \thisline - \ifeof 1 - \putwordIndexIsEmpty - \else - % Index files are almost Texinfo source, but we use \ as the escape - % character. It would be better to use @, but that's too big a change - % to make right now. - \def\indexbackslash{\ttbackslash}% - \let\indexlbrace\{ % Likewise, set these sequences for braces - \let\indexrbrace\} % used in the sort key. - \begindoublecolumns - \let\dotheinsertentrybox\dotheinsertentryboxwithpenalty - % - % Read input from the index file line by line. - \loopdo - \ifeof1 \else - \read 1 to \nextline - \fi - % - \indexinputprocessing - \thisline - % - \ifeof1\else - \let\thisline\nextline - \repeat - %% - \enddoublecolumns - \fi - \fi - \closein 1 -\endgroup} -\def\loopdo#1\repeat{\def\body{#1}\loopdoxxx} -\def\loopdoxxx{\let\next=\relax\body\let\next=\loopdoxxx\fi\next} - -\def\indexinputprocessing{% - \ifeof1 - \let\firsttoken\relax - \else - \edef\act{\gdef\noexpand\firsttoken{\getfirsttoken\nextline}}% - \act - \fi -} -\def\getfirsttoken#1{\expandafter\getfirsttokenx#1\endfirsttoken} -\long\def\getfirsttokenx#1#2\endfirsttoken{\noexpand#1} - - -% These macros are used by the sorted index file itself. -% Change them to control the appearance of the index. - -{\catcode`\/=13 \catcode`\-=13 \catcode`\^=13 \catcode`\~=13 \catcode`\_=13 -\catcode`\|=13 \catcode`\<=13 \catcode`\>=13 \catcode`\+=13 \catcode`\"=13 -\catcode`\$=3 -\gdef\initialglyphs{% - % Some changes for non-alphabetic characters. Using the glyphs from the - % math fonts looks more consistent than the typewriter font used elsewhere - % for these characters. - \def\indexbackslash{\math{\backslash}}% - \let\\=\indexbackslash - % - % Can't get bold backslash so don't use bold forward slash - \catcode`\/=13 - \def/{{\secrmnotbold \normalslash}}% - \def-{{\normaldash\normaldash}}% en dash `--' - \def^{{\chapbf \normalcaret}}% - \def~{{\chapbf \normaltilde}}% - \def\_{% - \leavevmode \kern.07em \vbox{\hrule width.3em height.1ex}\kern .07em }% - \def|{$\vert$}% - \def<{$\less$}% - \def>{$\gtr$}% - \def+{$\normalplus$}% -}} - -\def\initial{% - \bgroup - \initialglyphs - \initialx -} - -\def\initialx#1{% - % Remove any glue we may have, we'll be inserting our own. - \removelastskip - % - % We like breaks before the index initials, so insert a bonus. - % The glue before the bonus allows a little bit of space at the - % bottom of a column to reduce an increase in inter-line spacing. - \nobreak - \vskip 0pt plus 5\baselineskip - \penalty -300 - \vskip 0pt plus -5\baselineskip - % - % Typeset the initial. Making this add up to a whole number of - % baselineskips increases the chance of the dots lining up from column - % to column. It still won't often be perfect, because of the stretch - % we need before each entry, but it's better. - % - % No shrink because it confuses \balancecolumns. - \vskip 1.67\baselineskip plus 1\baselineskip - \leftline{\secfonts \kern-0.05em \secbf #1}% - % \secfonts is inside the argument of \leftline so that the change of - % \baselineskip will not affect any glue inserted before the vbox that - % \leftline creates. - % Do our best not to break after the initial. - \nobreak - \vskip .33\baselineskip plus .1\baselineskip - \egroup % \initialglyphs -} - -\newdimen\entryrightmargin -\entryrightmargin=0pt - -% \entry typesets a paragraph consisting of the text (#1), dot leaders, and -% then page number (#2) flushed to the right margin. It is used for index -% and table of contents entries. The paragraph is indented by \leftskip. -% -\def\entry{% - \begingroup - % - % For pdfTeX and XeTeX. - % The redefinition of \domark stops marks being added in \pdflink to - % preserve coloured links across page boundaries. Otherwise the marks - % would get in the way of \lastbox in \insertentrybox. - \let\domark\relax - % - % Start a new paragraph if necessary, so our assignments below can't - % affect previous text. - \par - % - % No extra space above this paragraph. - \parskip = 0in - % - % When reading the text of entry, convert explicit line breaks - % from @* into spaces. The user might give these in long section - % titles, for instance. - \def\*{\unskip\space\ignorespaces}% - \def\entrybreak{\hfil\break}% An undocumented command - % - % Swallow the left brace of the text (first parameter): - \afterassignment\doentry - \let\temp = -} -\def\entrybreak{\unskip\space\ignorespaces}% -\def\doentry{% - % Save the text of the entry - \global\setbox\boxA=\hbox\bgroup - \bgroup % Instead of the swallowed brace. - \noindent - \aftergroup\finishentry - % And now comes the text of the entry. - % Not absorbing as a macro argument reduces the chance of problems - % with catcodes occurring. -} -{\catcode`\@=11 -\gdef\finishentry#1{% - \egroup % end box A - \dimen@ = \wd\boxA % Length of text of entry - \global\setbox\boxA=\hbox\bgroup\unhbox\boxA - % #1 is the page number. - % - % Get the width of the page numbers, and only use - % leaders if they are present. - \global\setbox\boxB = \hbox{#1}% - \ifdim\wd\boxB = 0pt - \null\nobreak\hfill\ % - \else - % - \null\nobreak\indexdotfill % Have leaders before the page number. - % - \ifpdf - \pdfgettoks#1.% - \hskip\skip\thinshrinkable\the\toksA - \else - \ifx\XeTeXrevision\thisisundefined - \hskip\skip\thinshrinkable #1% - \else - \pdfgettoks#1.% - \hskip\skip\thinshrinkable\the\toksA - \fi - \fi - \fi - \egroup % end \boxA - \ifdim\wd\boxB = 0pt - \global\setbox\entrybox=\vbox{\unhbox\boxA}% - \else - \global\setbox\entrybox=\vbox\bgroup - % We want the text of the entries to be aligned to the left, and the - % page numbers to be aligned to the right. - % - \parindent = 0pt - \advance\leftskip by 0pt plus 1fil - \advance\leftskip by 0pt plus -1fill - \rightskip = 0pt plus -1fil - \advance\rightskip by 0pt plus 1fill - % Cause last line, which could consist of page numbers on their own - % if the list of page numbers is long, to be aligned to the right. - \parfillskip=0pt plus -1fill - % - \advance\rightskip by \entryrightmargin - % Determine how far we can stretch into the margin. - % This allows, e.g., "Appendix H GNU Free Documentation License" to - % fit on one line in @letterpaper format. - \ifdim\entryrightmargin>2.1em - \dimen@i=2.1em - \else - \dimen@i=0em - \fi - \advance \parfillskip by 0pt minus 1\dimen@i - % - \dimen@ii = \hsize - \advance\dimen@ii by -1\leftskip - \advance\dimen@ii by -1\entryrightmargin - \advance\dimen@ii by 1\dimen@i - \ifdim\wd\boxA > \dimen@ii % If the entry doesn't fit in one line - \ifdim\dimen@ > 0.8\dimen@ii % due to long index text - % Try to split the text roughly evenly. \dimen@ will be the length of - % the first line. - \dimen@ = 0.7\dimen@ - \dimen@ii = \hsize - \ifnum\dimen@>\dimen@ii - % If the entry is too long (for example, if it needs more than - % two lines), use all the space in the first line. - \dimen@ = \dimen@ii - \fi - \advance\leftskip by 0pt plus 1fill % ragged right - \advance \dimen@ by 1\rightskip - \parshape = 2 0pt \dimen@ 0em \dimen@ii - % Ideally we'd add a finite glue at the end of the first line only, - % instead of using \parshape with explicit line lengths, but TeX - % doesn't seem to provide a way to do such a thing. - % - % Indent all lines but the first one. - \advance\leftskip by 1em - \advance\parindent by -1em - \fi\fi - \indent % start paragraph - \unhbox\boxA - % - % Do not prefer a separate line ending with a hyphen to fewer lines. - \finalhyphendemerits = 0 - % - % Word spacing - no stretch - \spaceskip=\fontdimen2\font minus \fontdimen4\font - % - \linepenalty=1000 % Discourage line breaks. - \hyphenpenalty=5000 % Discourage hyphenation. - % - \par % format the paragraph - \egroup % The \vbox - \fi - \endgroup - \dotheinsertentrybox -}} - -\newskip\thinshrinkable -\skip\thinshrinkable=.15em minus .15em - -\newbox\entrybox -\def\insertentrybox{% - \ourunvbox\entrybox -} - -% default definition -\let\dotheinsertentrybox\insertentrybox - -% Use \lastbox to take apart vbox box by box, and add each sub-box -% to the current vertical list. -\def\ourunvbox#1{% -\bgroup % for local binding of \delayedbox - % Remove the last box from box #1 - \global\setbox#1=\vbox{% - \unvbox#1% - \unskip % remove any glue - \unpenalty - \global\setbox\interbox=\lastbox - }% - \setbox\delayedbox=\box\interbox - \ifdim\ht#1=0pt\else - \ourunvbox#1 % Repeat on what's left of the box - \nobreak - \fi - \box\delayedbox -\egroup -} -\newbox\delayedbox -\newbox\interbox - -% Used from \printindex. \firsttoken should be the first token -% after the \entry. If it's not another \entry, we are at the last -% line of a group of index entries, so insert a penalty to discourage -% widowed index entries. -\def\dotheinsertentryboxwithpenalty{% - \ifx\firsttoken\isentry - \else - \penalty 9000 - \fi - \insertentrybox -} -\def\isentry{\entry}% - -% Like plain.tex's \dotfill, except uses up at least 1 em. -% The filll stretch here overpowers both the fil and fill stretch to push -% the page number to the right. -\def\indexdotfill{\cleaders - \hbox{$\mathsurround=0pt \mkern1.5mu.\mkern1.5mu$}\hskip 1em plus 1filll} - - -\def\primary #1{\line{#1\hfil}} - -\newskip\secondaryindent \secondaryindent=0.5cm -\def\secondary#1#2{{% - \parfillskip=0in - \parskip=0in - \hangindent=1in - \hangafter=1 - \noindent\hskip\secondaryindent\hbox{#1}\indexdotfill - \ifpdf - \pdfgettoks#2.\ \the\toksA % The page number ends the paragraph. - \else - \ifx\XeTeXrevision\thisisundefined - #2 - \else - \pdfgettoks#2.\ \the\toksA % The page number ends the paragraph. - \fi - \fi - \par -}} - -% Define two-column mode, which we use to typeset indexes. -% Adapted from the TeXbook, page 416, which is to say, -% the manmac.tex format used to print the TeXbook itself. -\catcode`\@=11 % private names - -\newbox\partialpage -\newdimen\doublecolumnhsize - -% Use inside an output routine to save \topmark and \firstmark -\def\savemarks{% - \global\savedtopmark=\expandafter{\topmark }% - \global\savedfirstmark=\expandafter{\firstmark }% -} -\newtoks\savedtopmark -\newtoks\savedfirstmark - -% Set \topmark and \firstmark for next time \output runs. -% Can't be run from withinside \output (because any material -% added while an output routine is active, including -% penalties, is saved for after it finishes). The page so far -% should be empty, otherwise what's on it will be thrown away. -\def\restoremarks{% - \mark{\the\savedtopmark}% - \bgroup\output = {% - \setbox\dummybox=\box\PAGE - }abc\eject\egroup - % "abc" because output routine doesn't fire for a completely empty page. - \mark{\the\savedfirstmark}% -} - -\def\begindoublecolumns{\begingroup % ended by \enddoublecolumns - % If not much space left on page, start a new page. - \ifdim\pagetotal>0.8\vsize\vfill\eject\fi - % - % Grab any single-column material above us. - \output = {% - % - % Here is a possibility not foreseen in manmac: if we accumulate a - % whole lot of material, we might end up calling this \output - % routine twice in a row (see the doublecol-lose test, which is - % essentially a couple of indexes with @setchapternewpage off). In - % that case we just ship out what is in \partialpage with the normal - % output routine. Generally, \partialpage will be empty when this - % runs and this will be a no-op. See the indexspread.tex test case. - \ifvoid\partialpage \else - \onepageout{\pagecontents\partialpage}% - \fi - % - \global\setbox\partialpage = \vbox{% - % Unvbox the main output page. - \unvbox\PAGE - \kern-\topskip \kern\baselineskip - }% - \savemarks - }% - \eject % run that output routine to set \partialpage - \restoremarks - % - % We recover the two marks that the last output routine saved in order - % to propagate the information in marks added around a chapter heading, - % which could be otherwise be lost by the time the final page is output. - % - % - % Use the double-column output routine for subsequent pages. - \output = {\doublecolumnout}% - % - % Change the page size parameters. We could do this once outside this - % routine, in each of @smallbook, @afourpaper, and the default 8.5x11 - % format, but then we repeat the same computation. Repeating a couple - % of assignments once per index is clearly meaningless for the - % execution time, so we may as well do it in one place. - % - % First we halve the line length, less a little for the gutter between - % the columns. We compute the gutter based on the line length, so it - % changes automatically with the paper format. The magic constant - % below is chosen so that the gutter has the same value (well, +-<1pt) - % as it did when we hard-coded it. - % - % We put the result in a separate register, \doublecolumhsize, so we - % can restore it in \pagesofar, after \hsize itself has (potentially) - % been clobbered. - % - \doublecolumnhsize = \hsize - \advance\doublecolumnhsize by -.04154\hsize - \divide\doublecolumnhsize by 2 - \hsize = \doublecolumnhsize - % - % Double the \vsize as well. - \advance\vsize by -\ht\partialpage - \vsize = 2\vsize - % - % For the benefit of balancing columns - \advance\baselineskip by 0pt plus 0.5pt -} - -% The double-column output routine for all double-column pages except -% the last, which is done by \balancecolumns. -% -\def\doublecolumnout{% - % - \splittopskip=\topskip \splitmaxdepth=\maxdepth - % Get the available space for the double columns -- the normal - % (undoubled) page height minus any material left over from the - % previous page. - \dimen@ = \vsize - \divide\dimen@ by 2 - % - % box0 will be the left-hand column, box2 the right. - \setbox0=\vsplit\PAGE to\dimen@ \setbox2=\vsplit\PAGE to\dimen@ - \global\advance\vsize by 2\ht\partialpage - \onepageout\pagesofar - \unvbox\PAGE - \penalty\outputpenalty -} -% -% Re-output the contents of the output page -- any previous material, -% followed by the two boxes we just split, in box0 and box2. -\def\pagesofar{% - \unvbox\partialpage - % - \hsize = \doublecolumnhsize - \wd0=\hsize \wd2=\hsize - \hbox to\txipagewidth{\box0\hfil\box2}% -} - - -% Finished with with double columns. -\def\enddoublecolumns{% - % The following penalty ensures that the page builder is exercised - % _before_ we change the output routine. This is necessary in the - % following situation: - % - % The last section of the index consists only of a single entry. - % Before this section, \pagetotal is less than \pagegoal, so no - % break occurs before the last section starts. However, the last - % section, consisting of \initial and the single \entry, does not - % fit on the page and has to be broken off. Without the following - % penalty the page builder will not be exercised until \eject - % below, and by that time we'll already have changed the output - % routine to the \balancecolumns version, so the next-to-last - % double-column page will be processed with \balancecolumns, which - % is wrong: The two columns will go to the main vertical list, with - % the broken-off section in the recent contributions. As soon as - % the output routine finishes, TeX starts reconsidering the page - % break. The two columns and the broken-off section both fit on the - % page, because the two columns now take up only half of the page - % goal. When TeX sees \eject from below which follows the final - % section, it invokes the new output routine that we've set after - % \balancecolumns below; \onepageout will try to fit the two columns - % and the final section into the vbox of \txipageheight (see - % \pagebody), causing an overfull box. - % - % Note that glue won't work here, because glue does not exercise the - % page builder, unlike penalties (see The TeXbook, pp. 280-281). - \penalty0 - % - \output = {% - % Split the last of the double-column material. - \savemarks - \balancecolumns - }% - \eject % call the \output just set - \ifdim\pagetotal=0pt - % Having called \balancecolumns once, we do not - % want to call it again. Therefore, reset \output to its normal - % definition right away. - \global\output = {\onepageout{\pagecontents\PAGE}}% - % - \endgroup % started in \begindoublecolumns - \restoremarks - % Leave the double-column material on the current page, no automatic - % page break. - \box\balancedcolumns - % - % \pagegoal was set to the doubled \vsize above, since we restarted - % the current page. We're now back to normal single-column - % typesetting, so reset \pagegoal to the normal \vsize. - \global\vsize = \txipageheight % - \pagegoal = \txipageheight % - \else - % We had some left-over material. This might happen when \doublecolumnout - % is called in \balancecolumns. Try again. - \expandafter\enddoublecolumns - \fi -} -\newbox\balancedcolumns -\setbox\balancedcolumns=\vbox{shouldnt see this}% -% -% Only called for the last of the double column material. \doublecolumnout -% does the others. -\def\balancecolumns{% - \setbox0 = \vbox{\unvbox\PAGE}% like \box255 but more efficient, see p.120. - \dimen@ = \ht0 - \advance\dimen@ by \topskip - \advance\dimen@ by-\baselineskip - \ifdim\dimen@<5\baselineskip - % Don't split a short final column in two. - \setbox2=\vbox{}% - \global\setbox\balancedcolumns=\vbox{\pagesofar}% - \else - \divide\dimen@ by 2 % target to split to - \dimen@ii = \dimen@ - \splittopskip = \topskip - % Loop until left column is at least as high as the right column. - {% - \vbadness = 10000 - \loop - \global\setbox3 = \copy0 - \global\setbox1 = \vsplit3 to \dimen@ - \ifdim\ht1<\ht3 - \global\advance\dimen@ by 1pt - \repeat - }% - % Now the left column is in box 1, and the right column in box 3. - % - % Check whether the left column has come out higher than the page itself. - % (Note that we have doubled \vsize for the double columns, so - % the actual height of the page is 0.5\vsize). - \ifdim2\ht1>\vsize - % It appears that we have been called upon to balance too much material. - % Output some of it with \doublecolumnout, leaving the rest on the page. - \setbox\PAGE=\box0 - \doublecolumnout - \else - % Compare the heights of the two columns. - \ifdim4\ht1>5\ht3 - % Column heights are too different, so don't make their bottoms - % flush with each other. - \setbox2=\vbox to \ht1 {\unvbox3\vfill}% - \setbox0=\vbox to \ht1 {\unvbox1\vfill}% - \else - % Make column bottoms flush with each other. - \setbox2=\vbox to\ht1{\unvbox3\unskip}% - \setbox0=\vbox to\ht1{\unvbox1\unskip}% - \fi - \global\setbox\balancedcolumns=\vbox{\pagesofar}% - \fi - \fi - % -} -\catcode`\@ = \other - - -\message{sectioning,} -% Chapters, sections, etc. - -% Let's start with @part. -\outer\parseargdef\part{\partzzz{#1}} -\def\partzzz#1{% - \chapoddpage - \null - \vskip.3\vsize % move it down on the page a bit - \begingroup - \noindent \titlefonts\rm #1\par % the text - \let\lastnode=\empty % no node to associate with - \writetocentry{part}{#1}{}% but put it in the toc - \headingsoff % no headline or footline on the part page - % This outputs a mark at the end of the page that clears \thischapter - % and \thissection, as is done in \startcontents. - \let\pchapsepmacro\relax - \chapmacro{}{Yomitfromtoc}{}% - \chapoddpage - \endgroup -} - -% \unnumberedno is an oxymoron. But we count the unnumbered -% sections so that we can refer to them unambiguously in the pdf -% outlines by their "section number". We avoid collisions with chapter -% numbers by starting them at 10000. (If a document ever has 10000 -% chapters, we're in trouble anyway, I'm sure.) -\newcount\unnumberedno \unnumberedno = 10000 -\newcount\chapno -\newcount\secno \secno=0 -\newcount\subsecno \subsecno=0 -\newcount\subsubsecno \subsubsecno=0 - -% This counter is funny since it counts through charcodes of letters A, B, ... -\newcount\appendixno \appendixno = `\@ -% -% \def\appendixletter{\char\the\appendixno} -% We do the following ugly conditional instead of the above simple -% construct for the sake of pdftex, which needs the actual -% letter in the expansion, not just typeset. -% -\def\appendixletter{% - \ifnum\appendixno=`A A% - \else\ifnum\appendixno=`B B% - \else\ifnum\appendixno=`C C% - \else\ifnum\appendixno=`D D% - \else\ifnum\appendixno=`E E% - \else\ifnum\appendixno=`F F% - \else\ifnum\appendixno=`G G% - \else\ifnum\appendixno=`H H% - \else\ifnum\appendixno=`I I% - \else\ifnum\appendixno=`J J% - \else\ifnum\appendixno=`K K% - \else\ifnum\appendixno=`L L% - \else\ifnum\appendixno=`M M% - \else\ifnum\appendixno=`N N% - \else\ifnum\appendixno=`O O% - \else\ifnum\appendixno=`P P% - \else\ifnum\appendixno=`Q Q% - \else\ifnum\appendixno=`R R% - \else\ifnum\appendixno=`S S% - \else\ifnum\appendixno=`T T% - \else\ifnum\appendixno=`U U% - \else\ifnum\appendixno=`V V% - \else\ifnum\appendixno=`W W% - \else\ifnum\appendixno=`X X% - \else\ifnum\appendixno=`Y Y% - \else\ifnum\appendixno=`Z Z% - % The \the is necessary, despite appearances, because \appendixletter is - % expanded while writing the .toc file. \char\appendixno is not - % expandable, thus it is written literally, thus all appendixes come out - % with the same letter (or @) in the toc without it. - \else\char\the\appendixno - \fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi - \fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi} - -% Each @chapter defines these (using marks) as the number+name, number -% and name of the chapter. Page headings and footings can use -% these. @section does likewise. -\def\thischapter{} -\def\thischapternum{} -\def\thischaptername{} -\def\thissection{} -\def\thissectionnum{} -\def\thissectionname{} - -\newcount\absseclevel % used to calculate proper heading level -\newcount\secbase\secbase=0 % @raisesections/@lowersections modify this count - -% @raisesections: treat @section as chapter, @subsection as section, etc. -\def\raisesections{\global\advance\secbase by -1} -\let\up=\raisesections % original BFox name - -% @lowersections: treat @chapter as section, @section as subsection, etc. -\def\lowersections{\global\advance\secbase by 1} -\let\down=\lowersections % original BFox name - -% we only have subsub. -\chardef\maxseclevel = 3 -% -% A numbered section within an unnumbered changes to unnumbered too. -% To achieve this, remember the "biggest" unnum. sec. we are currently in: -\chardef\unnlevel = \maxseclevel -% -% Trace whether the current chapter is an appendix or not: -% \chapheadtype is "N" or "A", unnumbered chapters are ignored. -\def\chapheadtype{N} - -% Choose a heading macro -% #1 is heading type -% #2 is heading level -% #3 is text for heading -\def\genhead#1#2#3{% - % Compute the abs. sec. level: - \absseclevel=#2 - \advance\absseclevel by \secbase - % Make sure \absseclevel doesn't fall outside the range: - \ifnum \absseclevel < 0 - \absseclevel = 0 - \else - \ifnum \absseclevel > 3 - \absseclevel = 3 - \fi - \fi - % The heading type: - \def\headtype{#1}% - \if \headtype U% - \ifnum \absseclevel < \unnlevel - \chardef\unnlevel = \absseclevel - \fi - \else - % Check for appendix sections: - \ifnum \absseclevel = 0 - \edef\chapheadtype{\headtype}% - \else - \if \headtype A\if \chapheadtype N% - \errmessage{@appendix... within a non-appendix chapter}% - \fi\fi - \fi - % Check for numbered within unnumbered: - \ifnum \absseclevel > \unnlevel - \def\headtype{U}% - \else - \chardef\unnlevel = 3 - \fi - \fi - % Now print the heading: - \if \headtype U% - \ifcase\absseclevel - \unnumberedzzz{#3}% - \or \unnumberedseczzz{#3}% - \or \unnumberedsubseczzz{#3}% - \or \unnumberedsubsubseczzz{#3}% - \fi - \else - \if \headtype A% - \ifcase\absseclevel - \appendixzzz{#3}% - \or \appendixsectionzzz{#3}% - \or \appendixsubseczzz{#3}% - \or \appendixsubsubseczzz{#3}% - \fi - \else - \ifcase\absseclevel - \chapterzzz{#3}% - \or \seczzz{#3}% - \or \numberedsubseczzz{#3}% - \or \numberedsubsubseczzz{#3}% - \fi - \fi - \fi - \suppressfirstparagraphindent -} - -% an interface: -\def\numhead{\genhead N} -\def\apphead{\genhead A} -\def\unnmhead{\genhead U} - -% @chapter, @appendix, @unnumbered. Increment top-level counter, reset -% all lower-level sectioning counters to zero. -% -% Also set \chaplevelprefix, which we prepend to @float sequence numbers -% (e.g., figures), q.v. By default (before any chapter), that is empty. -\let\chaplevelprefix = \empty -% -\outer\parseargdef\chapter{\numhead0{#1}} % normally numhead0 calls chapterzzz -\def\chapterzzz#1{% - % section resetting is \global in case the chapter is in a group, such - % as an @include file. - \global\secno=0 \global\subsecno=0 \global\subsubsecno=0 - \global\advance\chapno by 1 - % - % Used for \float. - \gdef\chaplevelprefix{\the\chapno.}% - \resetallfloatnos - % - % \putwordChapter can contain complex things in translations. - \toks0=\expandafter{\putwordChapter}% - \message{\the\toks0 \space \the\chapno}% - % - % Write the actual heading. - \chapmacro{#1}{Ynumbered}{\the\chapno}% - % - % So @section and the like are numbered underneath this chapter. - \global\let\section = \numberedsec - \global\let\subsection = \numberedsubsec - \global\let\subsubsection = \numberedsubsubsec -} - -\outer\parseargdef\appendix{\apphead0{#1}} % normally calls appendixzzz -% -\def\appendixzzz#1{% - \global\secno=0 \global\subsecno=0 \global\subsubsecno=0 - \global\advance\appendixno by 1 - \gdef\chaplevelprefix{\appendixletter.}% - \resetallfloatnos - % - % \putwordAppendix can contain complex things in translations. - \toks0=\expandafter{\putwordAppendix}% - \message{\the\toks0 \space \appendixletter}% - % - \chapmacro{#1}{Yappendix}{\appendixletter}% - % - \global\let\section = \appendixsec - \global\let\subsection = \appendixsubsec - \global\let\subsubsection = \appendixsubsubsec -} - -% normally unnmhead0 calls unnumberedzzz: -\outer\parseargdef\unnumbered{\unnmhead0{#1}} -\def\unnumberedzzz#1{% - \global\secno=0 \global\subsecno=0 \global\subsubsecno=0 - \global\advance\unnumberedno by 1 - % - % Since an unnumbered has no number, no prefix for figures. - \global\let\chaplevelprefix = \empty - \resetallfloatnos - % - % This used to be simply \message{#1}, but TeX fully expands the - % argument to \message. Therefore, if #1 contained @-commands, TeX - % expanded them. For example, in `@unnumbered The @cite{Book}', TeX - % expanded @cite (which turns out to cause errors because \cite is meant - % to be executed, not expanded). - % - % Anyway, we don't want the fully-expanded definition of @cite to appear - % as a result of the \message, we just want `@cite' itself. We use - % \the to achieve this: TeX expands \the only once, - % simply yielding the contents of . (We also do this for - % the toc entries.) - \toks0 = {#1}% - \message{(\the\toks0)}% - % - \chapmacro{#1}{Ynothing}{\the\unnumberedno}% - % - \global\let\section = \unnumberedsec - \global\let\subsection = \unnumberedsubsec - \global\let\subsubsection = \unnumberedsubsubsec -} - -% @centerchap is like @unnumbered, but the heading is centered. -\outer\parseargdef\centerchap{% - \let\centerparametersmaybe = \centerparameters - \unnmhead0{#1}% - \let\centerparametersmaybe = \relax -} - -% @top is like @unnumbered. -\let\top\unnumbered - -% Sections. -% -\outer\parseargdef\numberedsec{\numhead1{#1}} % normally calls seczzz -\def\seczzz#1{% - \global\subsecno=0 \global\subsubsecno=0 \global\advance\secno by 1 - \sectionheading{#1}{sec}{Ynumbered}{\the\chapno.\the\secno}% -} - -% normally calls appendixsectionzzz: -\outer\parseargdef\appendixsection{\apphead1{#1}} -\def\appendixsectionzzz#1{% - \global\subsecno=0 \global\subsubsecno=0 \global\advance\secno by 1 - \sectionheading{#1}{sec}{Yappendix}{\appendixletter.\the\secno}% -} -\let\appendixsec\appendixsection - -% normally calls unnumberedseczzz: -\outer\parseargdef\unnumberedsec{\unnmhead1{#1}} -\def\unnumberedseczzz#1{% - \global\subsecno=0 \global\subsubsecno=0 \global\advance\secno by 1 - \sectionheading{#1}{sec}{Ynothing}{\the\unnumberedno.\the\secno}% -} - -% Subsections. -% -% normally calls numberedsubseczzz: -\outer\parseargdef\numberedsubsec{\numhead2{#1}} -\def\numberedsubseczzz#1{% - \global\subsubsecno=0 \global\advance\subsecno by 1 - \sectionheading{#1}{subsec}{Ynumbered}{\the\chapno.\the\secno.\the\subsecno}% -} - -% normally calls appendixsubseczzz: -\outer\parseargdef\appendixsubsec{\apphead2{#1}} -\def\appendixsubseczzz#1{% - \global\subsubsecno=0 \global\advance\subsecno by 1 - \sectionheading{#1}{subsec}{Yappendix}% - {\appendixletter.\the\secno.\the\subsecno}% -} - -% normally calls unnumberedsubseczzz: -\outer\parseargdef\unnumberedsubsec{\unnmhead2{#1}} -\def\unnumberedsubseczzz#1{% - \global\subsubsecno=0 \global\advance\subsecno by 1 - \sectionheading{#1}{subsec}{Ynothing}% - {\the\unnumberedno.\the\secno.\the\subsecno}% -} - -% Subsubsections. -% -% normally numberedsubsubseczzz: -\outer\parseargdef\numberedsubsubsec{\numhead3{#1}} -\def\numberedsubsubseczzz#1{% - \global\advance\subsubsecno by 1 - \sectionheading{#1}{subsubsec}{Ynumbered}% - {\the\chapno.\the\secno.\the\subsecno.\the\subsubsecno}% -} - -% normally appendixsubsubseczzz: -\outer\parseargdef\appendixsubsubsec{\apphead3{#1}} -\def\appendixsubsubseczzz#1{% - \global\advance\subsubsecno by 1 - \sectionheading{#1}{subsubsec}{Yappendix}% - {\appendixletter.\the\secno.\the\subsecno.\the\subsubsecno}% -} - -% normally unnumberedsubsubseczzz: -\outer\parseargdef\unnumberedsubsubsec{\unnmhead3{#1}} -\def\unnumberedsubsubseczzz#1{% - \global\advance\subsubsecno by 1 - \sectionheading{#1}{subsubsec}{Ynothing}% - {\the\unnumberedno.\the\secno.\the\subsecno.\the\subsubsecno}% -} - -% These macros control what the section commands do, according -% to what kind of chapter we are in (ordinary, appendix, or unnumbered). -% Define them by default for a numbered chapter. -\let\section = \numberedsec -\let\subsection = \numberedsubsec -\let\subsubsection = \numberedsubsubsec - -% Define @majorheading, @heading and @subheading - -\def\majorheading{% - {\advance\chapheadingskip by 10pt \chapbreak }% - \parsearg\chapheadingzzz -} - -\def\chapheading{\chapbreak \parsearg\chapheadingzzz} -\def\chapheadingzzz#1{% - \vbox{\chapfonts \raggedtitlesettings #1\par}% - \nobreak\bigskip \nobreak - \suppressfirstparagraphindent -} - -% @heading, @subheading, @subsubheading. -\parseargdef\heading{\sectionheading{#1}{sec}{Yomitfromtoc}{} - \suppressfirstparagraphindent} -\parseargdef\subheading{\sectionheading{#1}{subsec}{Yomitfromtoc}{} - \suppressfirstparagraphindent} -\parseargdef\subsubheading{\sectionheading{#1}{subsubsec}{Yomitfromtoc}{} - \suppressfirstparagraphindent} - -% These macros generate a chapter, section, etc. heading only -% (including whitespace, linebreaking, etc. around it), -% given all the information in convenient, parsed form. - -% Args are the skip and penalty (usually negative) -\def\dobreak#1#2{\par\ifdim\lastskip<#1\removelastskip\penalty#2\vskip#1\fi} - -% Parameter controlling skip before chapter headings (if needed) -\newskip\chapheadingskip - -% Define plain chapter starts, and page on/off switching for it. -\def\chapbreak{\dobreak \chapheadingskip {-4000}} - -% Start a new page -\def\chappager{\par\vfill\supereject} - -% \chapoddpage - start on an odd page for a new chapter -% Because \domark is called before \chapoddpage, the filler page will -% get the headings for the next chapter, which is wrong. But we don't -% care -- we just disable all headings on the filler page. -\def\chapoddpage{% - \chappager - \ifodd\pageno \else - \begingroup - \headingsoff - \null - \chappager - \endgroup - \fi -} - -\parseargdef\setchapternewpage{\csname CHAPPAG#1\endcsname} - -\def\CHAPPAGoff{% -\global\let\contentsalignmacro = \chappager -\global\let\pchapsepmacro=\chapbreak -\global\let\pagealignmacro=\chappager} - -\def\CHAPPAGon{% -\global\let\contentsalignmacro = \chappager -\global\let\pchapsepmacro=\chappager -\global\let\pagealignmacro=\chappager -\global\def\HEADINGSon{\HEADINGSsingle}} - -\def\CHAPPAGodd{% -\global\let\contentsalignmacro = \chapoddpage -\global\let\pchapsepmacro=\chapoddpage -\global\let\pagealignmacro=\chapoddpage -\global\def\HEADINGSon{\HEADINGSdouble}} - -\CHAPPAGon - -% \chapmacro - Chapter opening. -% -% #1 is the text, #2 is the section type (Ynumbered, Ynothing, -% Yappendix, Yomitfromtoc), #3 the chapter number. -% Not used for @heading series. -% -% To test against our argument. -\def\Ynothingkeyword{Ynothing} -\def\Yappendixkeyword{Yappendix} -\def\Yomitfromtockeyword{Yomitfromtoc} -% -\def\chapmacro#1#2#3{% - \expandafter\ifx\thisenv\titlepage\else - \checkenv{}% chapters, etc., should not start inside an environment. - \fi - % FIXME: \chapmacro is currently called from inside \titlepage when - % \setcontentsaftertitlepage to print the "Table of Contents" heading, but - % this should probably be done by \sectionheading with an option to print - % in chapter size. - % - % Insert the first mark before the heading break (see notes for \domark). - \let\prevchapterdefs=\lastchapterdefs - \let\prevsectiondefs=\lastsectiondefs - \gdef\lastsectiondefs{\gdef\thissectionname{}\gdef\thissectionnum{}% - \gdef\thissection{}}% - % - \def\temptype{#2}% - \ifx\temptype\Ynothingkeyword - \gdef\lastchapterdefs{\gdef\thischaptername{#1}\gdef\thischapternum{}% - \gdef\thischapter{\thischaptername}}% - \else\ifx\temptype\Yomitfromtockeyword - \gdef\lastchapterdefs{\gdef\thischaptername{#1}\gdef\thischapternum{}% - \gdef\thischapter{}}% - \else\ifx\temptype\Yappendixkeyword - \toks0={#1}% - \xdef\lastchapterdefs{% - \gdef\noexpand\thischaptername{\the\toks0}% - \gdef\noexpand\thischapternum{\appendixletter}% - % \noexpand\putwordAppendix avoids expanding indigestible - % commands in some of the translations. - \gdef\noexpand\thischapter{\noexpand\putwordAppendix{} - \noexpand\thischapternum: - \noexpand\thischaptername}% - }% - \else - \toks0={#1}% - \xdef\lastchapterdefs{% - \gdef\noexpand\thischaptername{\the\toks0}% - \gdef\noexpand\thischapternum{\the\chapno}% - % \noexpand\putwordChapter avoids expanding indigestible - % commands in some of the translations. - \gdef\noexpand\thischapter{\noexpand\putwordChapter{} - \noexpand\thischapternum: - \noexpand\thischaptername}% - }% - \fi\fi\fi - % - % Output the mark. Pass it through \safewhatsit, to take care of - % the preceding space. - \safewhatsit\domark - % - % Insert the chapter heading break. - \pchapsepmacro - % - % Now the second mark, after the heading break. No break points - % between here and the heading. - \let\prevchapterdefs=\lastchapterdefs - \let\prevsectiondefs=\lastsectiondefs - \domark - % - {% - \chapfonts \rm - \let\footnote=\errfootnoteheading % give better error message - % - % Have to define \lastsection before calling \donoderef, because the - % xref code eventually uses it. On the other hand, it has to be called - % after \pchapsepmacro, or the headline will change too soon. - \gdef\lastsection{#1}% - % - % Only insert the separating space if we have a chapter/appendix - % number, and don't print the unnumbered ``number''. - \ifx\temptype\Ynothingkeyword - \setbox0 = \hbox{}% - \def\toctype{unnchap}% - \else\ifx\temptype\Yomitfromtockeyword - \setbox0 = \hbox{}% contents like unnumbered, but no toc entry - \def\toctype{omit}% - \else\ifx\temptype\Yappendixkeyword - \setbox0 = \hbox{\putwordAppendix{} #3\enspace}% - \def\toctype{app}% - \else - \setbox0 = \hbox{#3\enspace}% - \def\toctype{numchap}% - \fi\fi\fi - % - % Write the toc entry for this chapter. Must come before the - % \donoderef, because we include the current node name in the toc - % entry, and \donoderef resets it to empty. - \writetocentry{\toctype}{#1}{#3}% - % - % For pdftex, we have to write out the node definition (aka, make - % the pdfdest) after any page break, but before the actual text has - % been typeset. If the destination for the pdf outline is after the - % text, then jumping from the outline may wind up with the text not - % being visible, for instance under high magnification. - \donoderef{#2}% - % - % Typeset the actual heading. - \nobreak % Avoid page breaks at the interline glue. - \vbox{\raggedtitlesettings \hangindent=\wd0 \centerparametersmaybe - \unhbox0 #1\par}% - }% - \nobreak\bigskip % no page break after a chapter title - \nobreak -} - -% @centerchap -- centered and unnumbered. -\let\centerparametersmaybe = \relax -\def\centerparameters{% - \advance\rightskip by 3\rightskip - \leftskip = \rightskip - \parfillskip = 0pt -} - - -% Section titles. These macros combine the section number parts and -% call the generic \sectionheading to do the printing. -% -\newskip\secheadingskip -\def\secheadingbreak{\dobreak \secheadingskip{-1000}} - -% Subsection titles. -\newskip\subsecheadingskip -\def\subsecheadingbreak{\dobreak \subsecheadingskip{-500}} - -% Subsubsection titles. -\def\subsubsecheadingskip{\subsecheadingskip} -\def\subsubsecheadingbreak{\subsecheadingbreak} - - -% Print any size, any type, section title. -% -% #1 is the text of the title, -% #2 is the section level (sec/subsec/subsubsec), -% #3 is the section type (Ynumbered, Ynothing, Yappendix, Yomitfromtoc), -% #4 is the section number. -% -\def\seckeyword{sec} -% -\def\sectionheading#1#2#3#4{% - {% - \def\sectionlevel{#2}% - \def\temptype{#3}% - % - % It is ok for the @heading series commands to appear inside an - % environment (it's been historically allowed, though the logic is - % dubious), but not the others. - \ifx\temptype\Yomitfromtockeyword\else - \checkenv{}% non-@*heading should not be in an environment. - \fi - \let\footnote=\errfootnoteheading - % - % Switch to the right set of fonts. - \csname #2fonts\endcsname \rm - % - % Insert first mark before the heading break (see notes for \domark). - \let\prevsectiondefs=\lastsectiondefs - \ifx\temptype\Ynothingkeyword - \ifx\sectionlevel\seckeyword - \gdef\lastsectiondefs{\gdef\thissectionname{#1}\gdef\thissectionnum{}% - \gdef\thissection{\thissectionname}}% - \fi - \else\ifx\temptype\Yomitfromtockeyword - % Don't redefine \thissection. - \else\ifx\temptype\Yappendixkeyword - \ifx\sectionlevel\seckeyword - \toks0={#1}% - \xdef\lastsectiondefs{% - \gdef\noexpand\thissectionname{\the\toks0}% - \gdef\noexpand\thissectionnum{#4}% - % \noexpand\putwordSection avoids expanding indigestible - % commands in some of the translations. - \gdef\noexpand\thissection{\noexpand\putwordSection{} - \noexpand\thissectionnum: - \noexpand\thissectionname}% - }% - \fi - \else - \ifx\sectionlevel\seckeyword - \toks0={#1}% - \xdef\lastsectiondefs{% - \gdef\noexpand\thissectionname{\the\toks0}% - \gdef\noexpand\thissectionnum{#4}% - % \noexpand\putwordSection avoids expanding indigestible - % commands in some of the translations. - \gdef\noexpand\thissection{\noexpand\putwordSection{} - \noexpand\thissectionnum: - \noexpand\thissectionname}% - }% - \fi - \fi\fi\fi - % - % Go into vertical mode. Usually we'll already be there, but we - % don't want the following whatsit to end up in a preceding paragraph - % if the document didn't happen to have a blank line. - \par - % - % Output the mark. Pass it through \safewhatsit, to take care of - % the preceding space. - \safewhatsit\domark - % - % Insert space above the heading. - \csname #2headingbreak\endcsname - % - % Now the second mark, after the heading break. No break points - % between here and the heading. - \global\let\prevsectiondefs=\lastsectiondefs - \domark - % - % Only insert the space after the number if we have a section number. - \ifx\temptype\Ynothingkeyword - \setbox0 = \hbox{}% - \def\toctype{unn}% - \gdef\lastsection{#1}% - \else\ifx\temptype\Yomitfromtockeyword - % for @headings -- no section number, don't include in toc, - % and don't redefine \lastsection. - \setbox0 = \hbox{}% - \def\toctype{omit}% - \let\sectionlevel=\empty - \else\ifx\temptype\Yappendixkeyword - \setbox0 = \hbox{#4\enspace}% - \def\toctype{app}% - \gdef\lastsection{#1}% - \else - \setbox0 = \hbox{#4\enspace}% - \def\toctype{num}% - \gdef\lastsection{#1}% - \fi\fi\fi - % - % Write the toc entry (before \donoderef). See comments in \chapmacro. - \writetocentry{\toctype\sectionlevel}{#1}{#4}% - % - % Write the node reference (= pdf destination for pdftex). - % Again, see comments in \chapmacro. - \donoderef{#3}% - % - % Interline glue will be inserted when the vbox is completed. - % That glue will be a valid breakpoint for the page, since it'll be - % preceded by a whatsit (usually from the \donoderef, or from the - % \writetocentry if there was no node). We don't want to allow that - % break, since then the whatsits could end up on page n while the - % section is on page n+1, thus toc/etc. are wrong. Debian bug 276000. - \nobreak - % - % Output the actual section heading. - \vbox{\hyphenpenalty=10000 \tolerance=5000 \parindent=0pt \ptexraggedright - \hangindent=\wd0 % zero if no section number - \unhbox0 #1}% - }% - % Add extra space after the heading -- half of whatever came above it. - % Don't allow stretch, though. - \kern .5 \csname #2headingskip\endcsname - % - % Do not let the kern be a potential breakpoint, as it would be if it - % was followed by glue. - \nobreak - % - % We'll almost certainly start a paragraph next, so don't let that - % glue accumulate. (Not a breakpoint because it's preceded by a - % discardable item.) However, when a paragraph is not started next - % (\startdefun, \cartouche, \center, etc.), this needs to be wiped out - % or the negative glue will cause weirdly wrong output, typically - % obscuring the section heading with something else. - \vskip-\parskip - % - % This is so the last item on the main vertical list is a known - % \penalty > 10000, so \startdefun, etc., can recognize the situation - % and do the needful. - \penalty 10001 -} - - -\message{toc,} -% Table of contents. -\newwrite\tocfile - -% Write an entry to the toc file, opening it if necessary. -% Called from @chapter, etc. -% -% Example usage: \writetocentry{sec}{Section Name}{\the\chapno.\the\secno} -% We append the current node name (if any) and page number as additional -% arguments for the \{chap,sec,...}entry macros which will eventually -% read this. The node name is used in the pdf outlines as the -% destination to jump to. -% -% We open the .toc file for writing here instead of at @setfilename (or -% any other fixed time) so that @contents can be anywhere in the document. -% But if #1 is `omit', then we don't do anything. This is used for the -% table of contents chapter openings themselves. -% -\newif\iftocfileopened -\def\omitkeyword{omit}% -% -\def\writetocentry#1#2#3{% - \edef\writetoctype{#1}% - \ifx\writetoctype\omitkeyword \else - \iftocfileopened\else - \immediate\openout\tocfile = \jobname.toc - \global\tocfileopenedtrue - \fi - % - \iflinks - {\atdummies - \edef\temp{% - \write\tocfile{@#1entry{#2}{#3}{\lastnode}{\noexpand\folio}}}% - \temp - }% - \fi - \fi - % - % Tell \shipout to create a pdf destination on each page, if we're - % writing pdf. These are used in the table of contents. We can't - % just write one on every page because the title pages are numbered - % 1 and 2 (the page numbers aren't printed), and so are the first - % two pages of the document. Thus, we'd have two destinations named - % `1', and two named `2'. - \ifpdf - \global\pdfmakepagedesttrue - \else - \ifx\XeTeXrevision\thisisundefined - \else - \global\pdfmakepagedesttrue - \fi - \fi -} - - -% These characters do not print properly in the Computer Modern roman -% fonts, so we must take special care. This is more or less redundant -% with the Texinfo input format setup at the end of this file. -% -\def\activecatcodes{% - \catcode`\"=\active - \catcode`\$=\active - \catcode`\<=\active - \catcode`\>=\active - \catcode`\\=\active - \catcode`\^=\active - \catcode`\_=\active - \catcode`\|=\active - \catcode`\~=\active -} - - -% Read the toc file, which is essentially Texinfo input. -\def\readtocfile{% - \setupdatafile - \activecatcodes - \input \tocreadfilename -} - -\newskip\contentsrightmargin \contentsrightmargin=1in -\newcount\savepageno -\newcount\lastnegativepageno \lastnegativepageno = -1 - -% Prepare to read what we've written to \tocfile. -% -\def\startcontents#1{% - % If @setchapternewpage on, and @headings double, the contents should - % start on an odd page, unlike chapters. Thus, we maintain - % \contentsalignmacro in parallel with \pagealignmacro. - % From: Torbjorn Granlund - \contentsalignmacro - \immediate\closeout\tocfile - % - % Don't need to put `Contents' or `Short Contents' in the headline. - % It is abundantly clear what they are. - \chapmacro{#1}{Yomitfromtoc}{}% - % - \savepageno = \pageno - \begingroup % Set up to handle contents files properly. - \raggedbottom % Worry more about breakpoints than the bottom. - \entryrightmargin=\contentsrightmargin % Don't use the full line length. - % - % Roman numerals for page numbers. - \ifnum \pageno>0 \global\pageno = \lastnegativepageno \fi -} - -% redefined for the two-volume lispref. We always output on -% \jobname.toc even if this is redefined. -% -\def\tocreadfilename{\jobname.toc} - -% Normal (long) toc. -% -\def\contents{% - \startcontents{\putwordTOC}% - \openin 1 \tocreadfilename\space - \ifeof 1 \else - \readtocfile - \fi - \vfill \eject - \contentsalignmacro % in case @setchapternewpage odd is in effect - \ifeof 1 \else - \pdfmakeoutlines - \fi - \closein 1 - \endgroup - \lastnegativepageno = \pageno - \global\pageno = \savepageno -} - -% And just the chapters. -\def\summarycontents{% - \startcontents{\putwordShortTOC}% - % - \let\partentry = \shortpartentry - \let\numchapentry = \shortchapentry - \let\appentry = \shortchapentry - \let\unnchapentry = \shortunnchapentry - % We want a true roman here for the page numbers. - \secfonts - \let\rm=\shortcontrm \let\bf=\shortcontbf - \let\sl=\shortcontsl \let\tt=\shortconttt - \rm - \hyphenpenalty = 10000 - \advance\baselineskip by 1pt % Open it up a little. - \def\numsecentry##1##2##3##4{} - \let\appsecentry = \numsecentry - \let\unnsecentry = \numsecentry - \let\numsubsecentry = \numsecentry - \let\appsubsecentry = \numsecentry - \let\unnsubsecentry = \numsecentry - \let\numsubsubsecentry = \numsecentry - \let\appsubsubsecentry = \numsecentry - \let\unnsubsubsecentry = \numsecentry - \openin 1 \tocreadfilename\space - \ifeof 1 \else - \readtocfile - \fi - \closein 1 - \vfill \eject - \contentsalignmacro % in case @setchapternewpage odd is in effect - \endgroup - \lastnegativepageno = \pageno - \global\pageno = \savepageno -} -\let\shortcontents = \summarycontents - -% Typeset the label for a chapter or appendix for the short contents. -% The arg is, e.g., `A' for an appendix, or `3' for a chapter. -% -\def\shortchaplabel#1{% - % This space should be enough, since a single number is .5em, and the - % widest letter (M) is 1em, at least in the Computer Modern fonts. - % But use \hss just in case. - % (This space doesn't include the extra space that gets added after - % the label; that gets put in by \shortchapentry above.) - % - % We'd like to right-justify chapter numbers, but that looks strange - % with appendix letters. And right-justifying numbers and - % left-justifying letters looks strange when there is less than 10 - % chapters. Have to read the whole toc once to know how many chapters - % there are before deciding ... - \hbox to 1em{#1\hss}% -} - -% These macros generate individual entries in the table of contents. -% The first argument is the chapter or section name. -% The last argument is the page number. -% The arguments in between are the chapter number, section number, ... - -% Parts, in the main contents. Replace the part number, which doesn't -% exist, with an empty box. Let's hope all the numbers have the same width. -% Also ignore the page number, which is conventionally not printed. -\def\numeralbox{\setbox0=\hbox{8}\hbox to \wd0{\hfil}} -\def\partentry#1#2#3#4{% - % Add stretch and a bonus for breaking the page before the part heading. - % This reduces the chance of the page being broken immediately after the - % part heading, before a following chapter heading. - \vskip 0pt plus 5\baselineskip - \penalty-300 - \vskip 0pt plus -5\baselineskip - \dochapentry{\numeralbox\labelspace#1}{}% -} -% -% Parts, in the short toc. -\def\shortpartentry#1#2#3#4{% - \penalty-300 - \vskip.5\baselineskip plus.15\baselineskip minus.1\baselineskip - \shortchapentry{{\bf #1}}{\numeralbox}{}{}% -} - -% Chapters, in the main contents. -\def\numchapentry#1#2#3#4{\dochapentry{#2\labelspace#1}{#4}} - -% Chapters, in the short toc. -% See comments in \dochapentry re vbox and related settings. -\def\shortchapentry#1#2#3#4{% - \tocentry{\shortchaplabel{#2}\labelspace #1}{\doshortpageno\bgroup#4\egroup}% -} - -% Appendices, in the main contents. -% Need the word Appendix, and a fixed-size box. -% -\def\appendixbox#1{% - % We use M since it's probably the widest letter. - \setbox0 = \hbox{\putwordAppendix{} M}% - \hbox to \wd0{\putwordAppendix{} #1\hss}} -% -\def\appentry#1#2#3#4{\dochapentry{\appendixbox{#2}\hskip.7em#1}{#4}} - -% Unnumbered chapters. -\def\unnchapentry#1#2#3#4{\dochapentry{#1}{#4}} -\def\shortunnchapentry#1#2#3#4{\tocentry{#1}{\doshortpageno\bgroup#4\egroup}} - -% Sections. -\def\numsecentry#1#2#3#4{\dosecentry{#2\labelspace#1}{#4}} -\let\appsecentry=\numsecentry -\def\unnsecentry#1#2#3#4{\dosecentry{#1}{#4}} - -% Subsections. -\def\numsubsecentry#1#2#3#4{\dosubsecentry{#2\labelspace#1}{#4}} -\let\appsubsecentry=\numsubsecentry -\def\unnsubsecentry#1#2#3#4{\dosubsecentry{#1}{#4}} - -% And subsubsections. -\def\numsubsubsecentry#1#2#3#4{\dosubsubsecentry{#2\labelspace#1}{#4}} -\let\appsubsubsecentry=\numsubsubsecentry -\def\unnsubsubsecentry#1#2#3#4{\dosubsubsecentry{#1}{#4}} - -% This parameter controls the indentation of the various levels. -% Same as \defaultparindent. -\newdimen\tocindent \tocindent = 15pt - -% Now for the actual typesetting. In all these, #1 is the text and #2 is the -% page number. -% -% If the toc has to be broken over pages, we want it to be at chapters -% if at all possible; hence the \penalty. -\def\dochapentry#1#2{% - \penalty-300 \vskip1\baselineskip plus.33\baselineskip minus.25\baselineskip - \begingroup - % Move the page numbers slightly to the right - \advance\entryrightmargin by -0.05em - \chapentryfonts - \tocentry{#1}{\dopageno\bgroup#2\egroup}% - \endgroup - \nobreak\vskip .25\baselineskip plus.1\baselineskip -} - -\def\dosecentry#1#2{\begingroup - \secentryfonts \leftskip=\tocindent - \tocentry{#1}{\dopageno\bgroup#2\egroup}% -\endgroup} - -\def\dosubsecentry#1#2{\begingroup - \subsecentryfonts \leftskip=2\tocindent - \tocentry{#1}{\dopageno\bgroup#2\egroup}% -\endgroup} - -\def\dosubsubsecentry#1#2{\begingroup - \subsubsecentryfonts \leftskip=3\tocindent - \tocentry{#1}{\dopageno\bgroup#2\egroup}% -\endgroup} - -% We use the same \entry macro as for the index entries. -\let\tocentry = \entry - -% Space between chapter (or whatever) number and the title. -\def\labelspace{\hskip1em \relax} - -\def\dopageno#1{{\rm #1}} -\def\doshortpageno#1{{\rm #1}} - -\def\chapentryfonts{\secfonts \rm} -\def\secentryfonts{\textfonts} -\def\subsecentryfonts{\textfonts} -\def\subsubsecentryfonts{\textfonts} - - -\message{environments,} -% @foo ... @end foo. - -% @tex ... @end tex escapes into raw TeX temporarily. -% One exception: @ is still an escape character, so that @end tex works. -% But \@ or @@ will get a plain @ character. - -\envdef\tex{% - \setupmarkupstyle{tex}% - \catcode `\\=0 \catcode `\{=1 \catcode `\}=2 - \catcode `\$=3 \catcode `\&=4 \catcode `\#=6 - \catcode `\^=7 \catcode `\_=8 \catcode `\~=\active \let~=\tie - \catcode `\%=14 - \catcode `\+=\other - \catcode `\"=\other - \catcode `\|=\other - \catcode `\<=\other - \catcode `\>=\other - \catcode `\`=\other - \catcode `\'=\other - % - % ' is active in math mode (mathcode"8000). So reset it, and all our - % other math active characters (just in case), to plain's definitions. - \mathactive - % - % Inverse of the list at the beginning of the file. - \let\b=\ptexb - \let\bullet=\ptexbullet - \let\c=\ptexc - \let\,=\ptexcomma - \let\.=\ptexdot - \let\dots=\ptexdots - \let\equiv=\ptexequiv - \let\!=\ptexexclam - \let\i=\ptexi - \let\indent=\ptexindent - \let\noindent=\ptexnoindent - \let\{=\ptexlbrace - \let\+=\tabalign - \let\}=\ptexrbrace - \let\/=\ptexslash - \let\sp=\ptexsp - \let\*=\ptexstar - %\let\sup=\ptexsup % do not redefine, we want @sup to work in math mode - \let\t=\ptext - \expandafter \let\csname top\endcsname=\ptextop % we've made it outer - \let\frenchspacing=\plainfrenchspacing - % - \def\endldots{\mathinner{\ldots\ldots\ldots\ldots}}% - \def\enddots{\relax\ifmmode\endldots\else$\mathsurround=0pt \endldots\,$\fi}% - \def\@{@}% -} -% There is no need to define \Etex. - -% Define @lisp ... @end lisp. -% @lisp environment forms a group so it can rebind things, -% including the definition of @end lisp (which normally is erroneous). - -% Amount to narrow the margins by for @lisp. -\newskip\lispnarrowing \lispnarrowing=0.4in - -% This is the definition that ^^M gets inside @lisp, @example, and other -% such environments. \null is better than a space, since it doesn't -% have any width. -\def\lisppar{\null\endgraf} - -% This space is always present above and below environments. -\newskip\envskipamount \envskipamount = 0pt - -% Make spacing and below environment symmetrical. We use \parskip here -% to help in doing that, since in @example-like environments \parskip -% is reset to zero; thus the \afterenvbreak inserts no space -- but the -% start of the next paragraph will insert \parskip. -% -\def\aboveenvbreak{{% - % =10000 instead of <10000 because of a special case in \itemzzz and - % \sectionheading, q.v. - \ifnum \lastpenalty=10000 \else - \advance\envskipamount by \parskip - \endgraf - \ifdim\lastskip<\envskipamount - \removelastskip - \ifnum\lastpenalty<10000 - % Penalize breaking before the environment, because preceding text - % often leads into it. - \penalty100 - \fi - \vskip\envskipamount - \fi - \fi -}} - -\def\afterenvbreak{{% - % =10000 instead of <10000 because of a special case in \itemzzz and - % \sectionheading, q.v. - \ifnum \lastpenalty=10000 \else - \advance\envskipamount by \parskip - \endgraf - \ifdim\lastskip<\envskipamount - \removelastskip - % it's not a good place to break if the last penalty was \nobreak - % or better ... - \ifnum\lastpenalty<10000 \penalty-50 \fi - \vskip\envskipamount - \fi - \fi -}} - -% \nonarrowing is a flag. If "set", @lisp etc don't narrow margins; it will -% also clear it, so that its embedded environments do the narrowing again. -\let\nonarrowing=\relax - -% @cartouche ... @end cartouche: draw rectangle w/rounded corners around -% environment contents. -\font\circle=lcircle10 -\newdimen\circthick -\newdimen\cartouter\newdimen\cartinner -\newskip\normbskip\newskip\normpskip\newskip\normlskip -\circthick=\fontdimen8\circle -% -\def\ctl{{\circle\char'013\hskip -6pt}}% 6pt from pl file: 1/2charwidth -\def\ctr{{\hskip 6pt\circle\char'010}} -\def\cbl{{\circle\char'012\hskip -6pt}} -\def\cbr{{\hskip 6pt\circle\char'011}} -\def\carttop{\hbox to \cartouter{\hskip\lskip - \ctl\leaders\hrule height\circthick\hfil\ctr - \hskip\rskip}} -\def\cartbot{\hbox to \cartouter{\hskip\lskip - \cbl\leaders\hrule height\circthick\hfil\cbr - \hskip\rskip}} -% -\newskip\lskip\newskip\rskip - -\envdef\cartouche{% - \ifhmode\par\fi % can't be in the midst of a paragraph. - \startsavinginserts - \lskip=\leftskip \rskip=\rightskip - \leftskip=0pt\rightskip=0pt % we want these *outside*. - \cartinner=\hsize \advance\cartinner by-\lskip - \advance\cartinner by-\rskip - \cartouter=\hsize - \advance\cartouter by 18.4pt % allow for 3pt kerns on either - % side, and for 6pt waste from - % each corner char, and rule thickness - \normbskip=\baselineskip \normpskip=\parskip \normlskip=\lineskip - % - % If this cartouche directly follows a sectioning command, we need the - % \parskip glue (backspaced over by default) or the cartouche can - % collide with the section heading. - \ifnum\lastpenalty>10000 \vskip\parskip \penalty\lastpenalty \fi - % - \setbox\groupbox=\vbox\bgroup - \baselineskip=0pt\parskip=0pt\lineskip=0pt - \carttop - \hbox\bgroup - \hskip\lskip - \vrule\kern3pt - \vbox\bgroup - \kern3pt - \hsize=\cartinner - \baselineskip=\normbskip - \lineskip=\normlskip - \parskip=\normpskip - \vskip -\parskip - \comment % For explanation, see the end of def\group. -} -\def\Ecartouche{% - \ifhmode\par\fi - \kern3pt - \egroup - \kern3pt\vrule - \hskip\rskip - \egroup - \cartbot - \egroup - \addgroupbox - \checkinserts -} - - -% This macro is called at the beginning of all the @example variants, -% inside a group. -\newdimen\nonfillparindent -\def\nonfillstart{% - \aboveenvbreak - \ifdim\hfuzz < 12pt \hfuzz = 12pt \fi % Don't be fussy - \sepspaces % Make spaces be word-separators rather than space tokens. - \let\par = \lisppar % don't ignore blank lines - \obeylines % each line of input is a line of output - \parskip = 0pt - % Turn off paragraph indentation but redefine \indent to emulate - % the normal \indent. - \nonfillparindent=\parindent - \parindent = 0pt - \let\indent\nonfillindent - % - \emergencystretch = 0pt % don't try to avoid overfull boxes - \ifx\nonarrowing\relax - \advance \leftskip by \lispnarrowing - \exdentamount=\lispnarrowing - \else - \let\nonarrowing = \relax - \fi - \let\exdent=\nofillexdent -} - -\begingroup -\obeyspaces -% We want to swallow spaces (but not other tokens) after the fake -% @indent in our nonfill-environments, where spaces are normally -% active and set to @tie, resulting in them not being ignored after -% @indent. -\gdef\nonfillindent{\futurelet\temp\nonfillindentcheck}% -\gdef\nonfillindentcheck{% -\ifx\temp % -\expandafter\nonfillindentgobble% -\else% -\leavevmode\nonfillindentbox% -\fi% -}% -\endgroup -\def\nonfillindentgobble#1{\nonfillindent} -\def\nonfillindentbox{\hbox to \nonfillparindent{\hss}} - -% If you want all examples etc. small: @set dispenvsize small. -% If you want even small examples the full size: @set dispenvsize nosmall. -% This affects the following displayed environments: -% @example, @display, @format, @lisp -% -\def\smallword{small} -\def\nosmallword{nosmall} -\let\SETdispenvsize\relax -\def\setnormaldispenv{% - \ifx\SETdispenvsize\smallword - % end paragraph for sake of leading, in case document has no blank - % line. This is redundant with what happens in \aboveenvbreak, but - % we need to do it before changing the fonts, and it's inconvenient - % to change the fonts afterward. - \ifnum \lastpenalty=10000 \else \endgraf \fi - \smallexamplefonts \rm - \fi -} -\def\setsmalldispenv{% - \ifx\SETdispenvsize\nosmallword - \else - \ifnum \lastpenalty=10000 \else \endgraf \fi - \smallexamplefonts \rm - \fi -} - -% We often define two environments, @foo and @smallfoo. -% Let's do it in one command. #1 is the env name, #2 the definition. -\def\makedispenvdef#1#2{% - \expandafter\envdef\csname#1\endcsname {\setnormaldispenv #2}% - \expandafter\envdef\csname small#1\endcsname {\setsmalldispenv #2}% - \expandafter\let\csname E#1\endcsname \afterenvbreak - \expandafter\let\csname Esmall#1\endcsname \afterenvbreak -} - -% Define two environment synonyms (#1 and #2) for an environment. -\def\maketwodispenvdef#1#2#3{% - \makedispenvdef{#1}{#3}% - \makedispenvdef{#2}{#3}% -} -% -% @lisp: indented, narrowed, typewriter font; -% @example: same as @lisp. -% -% @smallexample and @smalllisp: use smaller fonts. -% Originally contributed by Pavel@xerox. -% -\maketwodispenvdef{lisp}{example}{% - \nonfillstart - \tt\setupmarkupstyle{example}% - \let\kbdfont = \kbdexamplefont % Allow @kbd to do something special. - \gobble % eat return -} -% @display/@smalldisplay: same as @lisp except keep current font. -% -\makedispenvdef{display}{% - \nonfillstart - \gobble -} - -% @format/@smallformat: same as @display except don't narrow margins. -% -\makedispenvdef{format}{% - \let\nonarrowing = t% - \nonfillstart - \gobble -} - -% @flushleft: same as @format, but doesn't obey \SETdispenvsize. -\envdef\flushleft{% - \let\nonarrowing = t% - \nonfillstart - \gobble -} -\let\Eflushleft = \afterenvbreak - -% @flushright. -% -\envdef\flushright{% - \let\nonarrowing = t% - \nonfillstart - \advance\leftskip by 0pt plus 1fill\relax - \gobble -} -\let\Eflushright = \afterenvbreak - - -% @raggedright does more-or-less normal line breaking but no right -% justification. From plain.tex. Don't stretch around special -% characters in urls in this environment, since the stretch at the right -% should be enough. -\envdef\raggedright{% - \rightskip0pt plus2.4em \spaceskip.3333em \xspaceskip.5em\relax - \def\urefprestretchamount{0pt}% - \def\urefpoststretchamount{0pt}% -} -\let\Eraggedright\par - -\envdef\raggedleft{% - \parindent=0pt \leftskip0pt plus2em - \spaceskip.3333em \xspaceskip.5em \parfillskip=0pt - \hbadness=10000 % Last line will usually be underfull, so turn off - % badness reporting. -} -\let\Eraggedleft\par - -\envdef\raggedcenter{% - \parindent=0pt \rightskip0pt plus1em \leftskip0pt plus1em - \spaceskip.3333em \xspaceskip.5em \parfillskip=0pt - \hbadness=10000 % Last line will usually be underfull, so turn off - % badness reporting. -} -\let\Eraggedcenter\par - - -% @quotation does normal linebreaking (hence we can't use \nonfillstart) -% and narrows the margins. We keep \parskip nonzero in general, since -% we're doing normal filling. So, when using \aboveenvbreak and -% \afterenvbreak, temporarily make \parskip 0. -% -\makedispenvdef{quotation}{\quotationstart} -% -\def\quotationstart{% - \indentedblockstart % same as \indentedblock, but increase right margin too. - \ifx\nonarrowing\relax - \advance\rightskip by \lispnarrowing - \fi - \parsearg\quotationlabel -} - -% We have retained a nonzero parskip for the environment, since we're -% doing normal filling. -% -\def\Equotation{% - \par - \ifx\quotationauthor\thisisundefined\else - % indent a bit. - \leftline{\kern 2\leftskip \sl ---\quotationauthor}% - \fi - {\parskip=0pt \afterenvbreak}% -} -\def\Esmallquotation{\Equotation} - -% If we're given an argument, typeset it in bold with a colon after. -\def\quotationlabel#1{% - \def\temp{#1}% - \ifx\temp\empty \else - {\bf #1: }% - \fi -} - -% @indentedblock is like @quotation, but indents only on the left and -% has no optional argument. -% -\makedispenvdef{indentedblock}{\indentedblockstart} -% -\def\indentedblockstart{% - {\parskip=0pt \aboveenvbreak}% because \aboveenvbreak inserts \parskip - \parindent=0pt - % - % @cartouche defines \nonarrowing to inhibit narrowing at next level down. - \ifx\nonarrowing\relax - \advance\leftskip by \lispnarrowing - \exdentamount = \lispnarrowing - \else - \let\nonarrowing = \relax - \fi -} - -% Keep a nonzero parskip for the environment, since we're doing normal filling. -% -\def\Eindentedblock{% - \par - {\parskip=0pt \afterenvbreak}% -} -\def\Esmallindentedblock{\Eindentedblock} - - -% LaTeX-like @verbatim...@end verbatim and @verb{...} -% If we want to allow any as delimiter, -% we need the curly braces so that makeinfo sees the @verb command, eg: -% `@verbx...x' would look like the '@verbx' command. --janneke@gnu.org -% -% [Knuth]: Donald Ervin Knuth, 1996. The TeXbook. -% -% [Knuth] p.344; only we need to do the other characters Texinfo sets -% active too. Otherwise, they get lost as the first character on a -% verbatim line. -\def\dospecials{% - \do\ \do\\\do\{\do\}\do\$\do\&% - \do\#\do\^\do\^^K\do\_\do\^^A\do\%\do\~% - \do\<\do\>\do\|\do\@\do+\do\"% - % Don't do the quotes -- if we do, @set txicodequoteundirected and - % @set txicodequotebacktick will not have effect on @verb and - % @verbatim, and ?` and !` ligatures won't get disabled. - %\do\`\do\'% -} -% -% [Knuth] p. 380 -\def\uncatcodespecials{% - \def\do##1{\catcode`##1=\other}\dospecials} -% -% Setup for the @verb command. -% -% Eight spaces for a tab -\begingroup - \catcode`\^^I=\active - \gdef\tabeightspaces{\catcode`\^^I=\active\def^^I{\ \ \ \ \ \ \ \ }} -\endgroup -% -\def\setupverb{% - \tt % easiest (and conventionally used) font for verbatim - \def\par{\leavevmode\endgraf}% - \setupmarkupstyle{verb}% - \tabeightspaces - % Respect line breaks, - % print special symbols as themselves, and - % make each space count - % must do in this order: - \obeylines \uncatcodespecials \sepspaces -} - -% Setup for the @verbatim environment -% -% Real tab expansion. -\newdimen\tabw \setbox0=\hbox{\tt\space} \tabw=8\wd0 % tab amount -% -% We typeset each line of the verbatim in an \hbox, so we can handle -% tabs. The \global is in case the verbatim line starts with an accent, -% or some other command that starts with a begin-group. Otherwise, the -% entire \verbbox would disappear at the corresponding end-group, before -% it is typeset. Meanwhile, we can't have nested verbatim commands -% (can we?), so the \global won't be overwriting itself. -\newbox\verbbox -\def\starttabbox{\global\setbox\verbbox=\hbox\bgroup} -% -\begingroup - \catcode`\^^I=\active - \gdef\tabexpand{% - \catcode`\^^I=\active - \def^^I{\leavevmode\egroup - \dimen\verbbox=\wd\verbbox % the width so far, or since the previous tab - \divide\dimen\verbbox by\tabw - \multiply\dimen\verbbox by\tabw % compute previous multiple of \tabw - \advance\dimen\verbbox by\tabw % advance to next multiple of \tabw - \wd\verbbox=\dimen\verbbox \box\verbbox \starttabbox - }% - } -\endgroup - -% start the verbatim environment. -\def\setupverbatim{% - \let\nonarrowing = t% - \nonfillstart - \tt % easiest (and conventionally used) font for verbatim - % The \leavevmode here is for blank lines. Otherwise, we would - % never \starttabox and the \egroup would end verbatim mode. - \def\par{\leavevmode\egroup\box\verbbox\endgraf}% - \tabexpand - \setupmarkupstyle{verbatim}% - % Respect line breaks, - % print special symbols as themselves, and - % make each space count. - % Must do in this order: - \obeylines \uncatcodespecials \sepspaces - \everypar{\starttabbox}% -} - -% Do the @verb magic: verbatim text is quoted by unique -% delimiter characters. Before first delimiter expect a -% right brace, after last delimiter expect closing brace: -% -% \def\doverb'{'#1'}'{#1} -% -% [Knuth] p. 382; only eat outer {} -\begingroup - \catcode`[=1\catcode`]=2\catcode`\{=\other\catcode`\}=\other - \gdef\doverb{#1[\def\next##1#1}[##1\endgroup]\next] -\endgroup -% -\def\verb{\begingroup\setupverb\doverb} -% -% -% Do the @verbatim magic: define the macro \doverbatim so that -% the (first) argument ends when '@end verbatim' is reached, ie: -% -% \def\doverbatim#1@end verbatim{#1} -% -% For Texinfo it's a lot easier than for LaTeX, -% because texinfo's \verbatim doesn't stop at '\end{verbatim}': -% we need not redefine '\', '{' and '}'. -% -% Inspired by LaTeX's verbatim command set [latex.ltx] -% -\begingroup - \catcode`\ =\active - \obeylines % - % ignore everything up to the first ^^M, that's the newline at the end - % of the @verbatim input line itself. Otherwise we get an extra blank - % line in the output. - \xdef\doverbatim#1^^M#2@end verbatim{#2\noexpand\end\gobble verbatim}% - % We really want {...\end verbatim} in the body of the macro, but - % without the active space; thus we have to use \xdef and \gobble. -\endgroup -% -\envdef\verbatim{% - \setupverbatim\doverbatim -} -\let\Everbatim = \afterenvbreak - - -% @verbatiminclude FILE - insert text of file in verbatim environment. -% -\def\verbatiminclude{\parseargusing\filenamecatcodes\doverbatiminclude} -% -\def\doverbatiminclude#1{% - {% - \makevalueexpandable - \setupverbatim - \indexnofonts % Allow `@@' and other weird things in file names. - \wlog{texinfo.tex: doing @verbatiminclude of #1^^J}% - \input #1 - \afterenvbreak - }% -} - -% @copying ... @end copying. -% Save the text away for @insertcopying later. -% -% We save the uninterpreted tokens, rather than creating a box. -% Saving the text in a box would be much easier, but then all the -% typesetting commands (@smallbook, font changes, etc.) have to be done -% beforehand -- and a) we want @copying to be done first in the source -% file; b) letting users define the frontmatter in as flexible order as -% possible is desirable. -% -\def\copying{\checkenv{}\begingroup\scanargctxt\docopying} -\def\docopying#1@end copying{\endgroup\def\copyingtext{#1}} -% -\def\insertcopying{% - \begingroup - \parindent = 0pt % paragraph indentation looks wrong on title page - \scanexp\copyingtext - \endgroup -} - - -\message{defuns,} -% @defun etc. - -\newskip\defbodyindent \defbodyindent=.4in -\newskip\defargsindent \defargsindent=50pt -\newskip\deflastargmargin \deflastargmargin=18pt -\newcount\defunpenalty - -% Start the processing of @deffn: -\def\startdefun{% - \ifnum\lastpenalty<10000 - \medbreak - \defunpenalty=10003 % Will keep this @deffn together with the - % following @def command, see below. - \else - % If there are two @def commands in a row, we'll have a \nobreak, - % which is there to keep the function description together with its - % header. But if there's nothing but headers, we need to allow a - % break somewhere. Check specifically for penalty 10002, inserted - % by \printdefunline, instead of 10000, since the sectioning - % commands also insert a nobreak penalty, and we don't want to allow - % a break between a section heading and a defun. - % - % As a further refinement, we avoid "club" headers by signalling - % with penalty of 10003 after the very first @deffn in the - % sequence (see above), and penalty of 10002 after any following - % @def command. - \ifnum\lastpenalty=10002 \penalty2000 \else \defunpenalty=10002 \fi - % - % Similarly, after a section heading, do not allow a break. - % But do insert the glue. - \medskip % preceded by discardable penalty, so not a breakpoint - \fi - % - \parindent=0in - \advance\leftskip by \defbodyindent - \exdentamount=\defbodyindent -} - -\def\dodefunx#1{% - % First, check whether we are in the right environment: - \checkenv#1% - % - % As above, allow line break if we have multiple x headers in a row. - % It's not a great place, though. - \ifnum\lastpenalty=10002 \penalty3000 \else \defunpenalty=10002 \fi - % - % And now, it's time to reuse the body of the original defun: - \expandafter\gobbledefun#1% -} -\def\gobbledefun#1\startdefun{} - -% \printdefunline \deffnheader{text} -% -\def\printdefunline#1#2{% - \begingroup - % call \deffnheader: - #1#2 \endheader - % common ending: - \interlinepenalty = 10000 - \advance\rightskip by 0pt plus 1fil\relax - \endgraf - \nobreak\vskip -\parskip - \penalty\defunpenalty % signal to \startdefun and \dodefunx - % Some of the @defun-type tags do not enable magic parentheses, - % rendering the following check redundant. But we don't optimize. - \checkparencounts - \endgroup -} - -\def\Edefun{\endgraf\medbreak} - -% \makedefun{deffn} creates \deffn, \deffnx and \Edeffn; -% the only thing remaining is to define \deffnheader. -% -\def\makedefun#1{% - \expandafter\let\csname E#1\endcsname = \Edefun - \edef\temp{\noexpand\domakedefun - \makecsname{#1}\makecsname{#1x}\makecsname{#1header}}% - \temp -} - -% \domakedefun \deffn \deffnx \deffnheader { (defn. of \deffnheader) } -% -% Define \deffn and \deffnx, without parameters. -% \deffnheader has to be defined explicitly. -% -\def\domakedefun#1#2#3{% - \envdef#1{% - \startdefun - \doingtypefnfalse % distinguish typed functions from all else - \parseargusing\activeparens{\printdefunline#3}% - }% - \def#2{\dodefunx#1}% - \def#3% -} - -\newif\ifdoingtypefn % doing typed function? -\newif\ifrettypeownline % typeset return type on its own line? - -% @deftypefnnewline on|off says whether the return type of typed functions -% are printed on their own line. This affects @deftypefn, @deftypefun, -% @deftypeop, and @deftypemethod. -% -\parseargdef\deftypefnnewline{% - \def\temp{#1}% - \ifx\temp\onword - \expandafter\let\csname SETtxideftypefnnl\endcsname - = \empty - \else\ifx\temp\offword - \expandafter\let\csname SETtxideftypefnnl\endcsname - = \relax - \else - \errhelp = \EMsimple - \errmessage{Unknown @txideftypefnnl value `\temp', - must be on|off}% - \fi\fi -} - -% Untyped functions: - -% @deffn category name args -\makedefun{deffn}{\deffngeneral{}} - -% @deffn category class name args -\makedefun{defop}#1 {\defopon{#1\ \putwordon}} - -% \defopon {category on}class name args -\def\defopon#1#2 {\deffngeneral{\putwordon\ \code{#2}}{#1\ \code{#2}} } - -% \deffngeneral {subind}category name args -% -\def\deffngeneral#1#2 #3 #4\endheader{% - % Remember that \dosubind{fn}{foo}{} is equivalent to \doind{fn}{foo}. - \dosubind{fn}{\code{#3}}{#1}% - \defname{#2}{}{#3}\magicamp\defunargs{#4\unskip}% -} - -% Typed functions: - -% @deftypefn category type name args -\makedefun{deftypefn}{\deftypefngeneral{}} - -% @deftypeop category class type name args -\makedefun{deftypeop}#1 {\deftypeopon{#1\ \putwordon}} - -% \deftypeopon {category on}class type name args -\def\deftypeopon#1#2 {\deftypefngeneral{\putwordon\ \code{#2}}{#1\ \code{#2}} } - -% \deftypefngeneral {subind}category type name args -% -\def\deftypefngeneral#1#2 #3 #4 #5\endheader{% - \dosubind{fn}{\code{#4}}{#1}% - \doingtypefntrue - \defname{#2}{#3}{#4}\defunargs{#5\unskip}% -} - -% Typed variables: - -% @deftypevr category type var args -\makedefun{deftypevr}{\deftypecvgeneral{}} - -% @deftypecv category class type var args -\makedefun{deftypecv}#1 {\deftypecvof{#1\ \putwordof}} - -% \deftypecvof {category of}class type var args -\def\deftypecvof#1#2 {\deftypecvgeneral{\putwordof\ \code{#2}}{#1\ \code{#2}} } - -% \deftypecvgeneral {subind}category type var args -% -\def\deftypecvgeneral#1#2 #3 #4 #5\endheader{% - \dosubind{vr}{\code{#4}}{#1}% - \defname{#2}{#3}{#4}\defunargs{#5\unskip}% -} - -% Untyped variables: - -% @defvr category var args -\makedefun{defvr}#1 {\deftypevrheader{#1} {} } - -% @defcv category class var args -\makedefun{defcv}#1 {\defcvof{#1\ \putwordof}} - -% \defcvof {category of}class var args -\def\defcvof#1#2 {\deftypecvof{#1}#2 {} } - -% Types: - -% @deftp category name args -\makedefun{deftp}#1 #2 #3\endheader{% - \doind{tp}{\code{#2}}% - \defname{#1}{}{#2}\defunargs{#3\unskip}% -} - -% Remaining @defun-like shortcuts: -\makedefun{defun}{\deffnheader{\putwordDeffunc} } -\makedefun{defmac}{\deffnheader{\putwordDefmac} } -\makedefun{defspec}{\deffnheader{\putwordDefspec} } -\makedefun{deftypefun}{\deftypefnheader{\putwordDeffunc} } -\makedefun{defvar}{\defvrheader{\putwordDefvar} } -\makedefun{defopt}{\defvrheader{\putwordDefopt} } -\makedefun{deftypevar}{\deftypevrheader{\putwordDefvar} } -\makedefun{defmethod}{\defopon\putwordMethodon} -\makedefun{deftypemethod}{\deftypeopon\putwordMethodon} -\makedefun{defivar}{\defcvof\putwordInstanceVariableof} -\makedefun{deftypeivar}{\deftypecvof\putwordInstanceVariableof} - -% \defname, which formats the name of the @def (not the args). -% #1 is the category, such as "Function". -% #2 is the return type, if any. -% #3 is the function name. -% -% We are followed by (but not passed) the arguments, if any. -% -\def\defname#1#2#3{% - \par - % Get the values of \leftskip and \rightskip as they were outside the @def... - \advance\leftskip by -\defbodyindent - % - % Determine if we are typesetting the return type of a typed function - % on a line by itself. - \rettypeownlinefalse - \ifdoingtypefn % doing a typed function specifically? - % then check user option for putting return type on its own line: - \expandafter\ifx\csname SETtxideftypefnnl\endcsname\relax \else - \rettypeownlinetrue - \fi - \fi - % - % How we'll format the category name. Putting it in brackets helps - % distinguish it from the body text that may end up on the next line - % just below it. - \def\temp{#1}% - \setbox0=\hbox{\kern\deflastargmargin \ifx\temp\empty\else [\rm\temp]\fi} - % - % Figure out line sizes for the paragraph shape. We'll always have at - % least two. - \tempnum = 2 - % - % The first line needs space for \box0; but if \rightskip is nonzero, - % we need only space for the part of \box0 which exceeds it: - \dimen0=\hsize \advance\dimen0 by -\wd0 \advance\dimen0 by \rightskip - % - % If doing a return type on its own line, we'll have another line. - \ifrettypeownline - \advance\tempnum by 1 - \def\maybeshapeline{0in \hsize}% - \else - \def\maybeshapeline{}% - \fi - % - % The continuations: - \dimen2=\hsize \advance\dimen2 by -\defargsindent - % - % The final paragraph shape: - \parshape \tempnum 0in \dimen0 \maybeshapeline \defargsindent \dimen2 - % - % Put the category name at the right margin. - \noindent - \hbox to 0pt{% - \hfil\box0 \kern-\hsize - % \hsize has to be shortened this way: - \kern\leftskip - % Intentionally do not respect \rightskip, since we need the space. - }% - % - % Allow all lines to be underfull without complaint: - \tolerance=10000 \hbadness=10000 - \exdentamount=\defbodyindent - {% - % defun fonts. We use typewriter by default (used to be bold) because: - % . we're printing identifiers, they should be in tt in principle. - % . in languages with many accents, such as Czech or French, it's - % common to leave accents off identifiers. The result looks ok in - % tt, but exceedingly strange in rm. - % . we don't want -- and --- to be treated as ligatures. - % . this still does not fix the ?` and !` ligatures, but so far no - % one has made identifiers using them :). - \df \tt - \def\temp{#2}% text of the return type - \ifx\temp\empty\else - \tclose{\temp}% typeset the return type - \ifrettypeownline - % put return type on its own line; prohibit line break following: - \hfil\vadjust{\nobreak}\break - \else - \space % type on same line, so just followed by a space - \fi - \fi % no return type - #3% output function name - }% - {\rm\enskip}% hskip 0.5 em of \rmfont - % - \boldbrax - % arguments will be output next, if any. -} - -% Print arguments in slanted roman (not ttsl), inconsistently with using -% tt for the name. This is because literal text is sometimes needed in -% the argument list (groff manual), and ttsl and tt are not very -% distinguishable. Prevent hyphenation at `-' chars. -% -\def\defunargs#1{% - % use sl by default (not ttsl), - % tt for the names. - \df \sl \hyphenchar\font=0 - % - % On the other hand, if an argument has two dashes (for instance), we - % want a way to get ttsl. We used to recommend @var for that, so - % leave the code in, but it's strange for @var to lead to typewriter. - % Nowadays we recommend @code, since the difference between a ttsl hyphen - % and a tt hyphen is pretty tiny. @code also disables ?` !`. - \def\var##1{{\setupmarkupstyle{var}\ttslanted{##1}}}% - #1% - \sl\hyphenchar\font=45 -} - -% We want ()&[] to print specially on the defun line. -% -\def\activeparens{% - \catcode`\(=\active \catcode`\)=\active - \catcode`\[=\active \catcode`\]=\active - \catcode`\&=\active -} - -% Make control sequences which act like normal parenthesis chars. -\let\lparen = ( \let\rparen = ) - -% Be sure that we always have a definition for `(', etc. For example, -% if the fn name has parens in it, \boldbrax will not be in effect yet, -% so TeX would otherwise complain about undefined control sequence. -{ - \activeparens - \global\let(=\lparen \global\let)=\rparen - \global\let[=\lbrack \global\let]=\rbrack - \global\let& = \& - - \gdef\boldbrax{\let(=\opnr\let)=\clnr\let[=\lbrb\let]=\rbrb} - \gdef\magicamp{\let&=\amprm} -} -\let\ampchar\& - -\newcount\parencount - -% If we encounter &foo, then turn on ()-hacking afterwards -\newif\ifampseen -\def\amprm#1 {\ampseentrue{\bf\ }} - -\def\parenfont{% - \ifampseen - % At the first level, print parens in roman, - % otherwise use the default font. - \ifnum \parencount=1 \rm \fi - \else - % The \sf parens (in \boldbrax) actually are a little bolder than - % the contained text. This is especially needed for [ and ] . - \sf - \fi -} -\def\infirstlevel#1{% - \ifampseen - \ifnum\parencount=1 - #1% - \fi - \fi -} -\def\bfafterword#1 {#1 \bf} - -\def\opnr{% - \global\advance\parencount by 1 - {\parenfont(}% - \infirstlevel \bfafterword -} -\def\clnr{% - {\parenfont)}% - \infirstlevel \sl - \global\advance\parencount by -1 -} - -\newcount\brackcount -\def\lbrb{% - \global\advance\brackcount by 1 - {\bf[}% -} -\def\rbrb{% - {\bf]}% - \global\advance\brackcount by -1 -} - -\def\checkparencounts{% - \ifnum\parencount=0 \else \badparencount \fi - \ifnum\brackcount=0 \else \badbrackcount \fi -} -% these should not use \errmessage; the glibc manual, at least, actually -% has such constructs (when documenting function pointers). -\def\badparencount{% - \message{Warning: unbalanced parentheses in @def...}% - \global\parencount=0 -} -\def\badbrackcount{% - \message{Warning: unbalanced square brackets in @def...}% - \global\brackcount=0 -} - - -\message{macros,} -% @macro. - -% To do this right we need a feature of e-TeX, \scantokens, -% which we arrange to emulate with a temporary file in ordinary TeX. -\ifx\eTeXversion\thisisundefined - \newwrite\macscribble - \def\scantokens#1{% - \toks0={#1}% - \immediate\openout\macscribble=\jobname.tmp - \immediate\write\macscribble{\the\toks0}% - \immediate\closeout\macscribble - \input \jobname.tmp - } -\fi - -% alias because \c means cedilla in @tex or @math -\let\texinfoc=\c - -\newcount\savedcatcodeone -\newcount\savedcatcodetwo - -% Used at the time of macro expansion. -% Argument is macro body with arguments substituted -\def\scanmacro#1{% - \newlinechar`\^^M - \def\xeatspaces{\eatspaces}% - % - % Temporarily undo catcode changes of \printindex. Set catcode of @ to - % 0 so that @-commands in macro expansions aren't printed literally when - % formatting an index file, where \ is used as the escape character. - \savedcatcodeone=\catcode`\@ - \savedcatcodetwo=\catcode`\\ - \catcode`\@=0 - \catcode`\\=\active - % - % Process the macro body under the current catcode regime. - \scantokens{#1@texinfoc}% - % - \catcode`\@=\savedcatcodeone - \catcode`\\=\savedcatcodetwo - % - % The \texinfoc is to remove the \newlinechar added by \scantokens, and - % can be noticed by \parsearg. - % We avoid surrounding the call to \scantokens with \bgroup and \egroup - % to allow macros to open or close groups themselves. -} - -% Used for copying and captions -\def\scanexp#1{% - \expandafter\scanmacro\expandafter{#1}% -} - -\newcount\paramno % Count of parameters -\newtoks\macname % Macro name -\newif\ifrecursive % Is it recursive? - -% List of all defined macros in the form -% \commondummyword\macro1\commondummyword\macro2... -% Currently is also contains all @aliases; the list can be split -% if there is a need. -\def\macrolist{} - -% Add the macro to \macrolist -\def\addtomacrolist#1{\expandafter \addtomacrolistxxx \csname#1\endcsname} -\def\addtomacrolistxxx#1{% - \toks0 = \expandafter{\macrolist\commondummyword#1}% - \xdef\macrolist{\the\toks0}% -} - -% Utility routines. -% This does \let #1 = #2, with \csnames; that is, -% \let \csname#1\endcsname = \csname#2\endcsname -% (except of course we have to play expansion games). -% -\def\cslet#1#2{% - \expandafter\let - \csname#1\expandafter\endcsname - \csname#2\endcsname -} - -% Trim leading and trailing spaces off a string. -% Concepts from aro-bend problem 15 (see CTAN). -{\catcode`\@=11 -\gdef\eatspaces #1{\expandafter\trim@\expandafter{#1 }} -\gdef\trim@ #1{\trim@@ @#1 @ #1 @ @@} -\gdef\trim@@ #1@ #2@ #3@@{\trim@@@\empty #2 @} -\def\unbrace#1{#1} -\unbrace{\gdef\trim@@@ #1 } #2@{#1} -} - -% Trim a single trailing ^^M off a string. -{\catcode`\^^M=\other \catcode`\Q=3% -\gdef\eatcr #1{\eatcra #1Q^^MQ}% -\gdef\eatcra#1^^MQ{\eatcrb#1Q}% -\gdef\eatcrb#1Q#2Q{#1}% -} - -% Macro bodies are absorbed as an argument in a context where -% all characters are catcode 10, 11 or 12, except \ which is active -% (as in normal texinfo). It is necessary to change the definition of \ -% to recognize macro arguments; this is the job of \mbodybackslash. -% -% Non-ASCII encodings make 8-bit characters active, so un-activate -% them to avoid their expansion. Must do this non-globally, to -% confine the change to the current group. -% -% It's necessary to have hard CRs when the macro is executed. This is -% done by making ^^M (\endlinechar) catcode 12 when reading the macro -% body, and then making it the \newlinechar in \scanmacro. -% -\def\scanctxt{% used as subroutine - \catcode`\"=\other - \catcode`\+=\other - \catcode`\<=\other - \catcode`\>=\other - \catcode`\^=\other - \catcode`\_=\other - \catcode`\|=\other - \catcode`\~=\other - \passthroughcharstrue -} - -\def\scanargctxt{% used for copying and captions, not macros. - \scanctxt - \catcode`\@=\other - \catcode`\\=\other - \catcode`\^^M=\other -} - -\def\macrobodyctxt{% used for @macro definitions - \scanctxt - \catcode`\ =\other - \catcode`\@=\other - \catcode`\{=\other - \catcode`\}=\other - \catcode`\^^M=\other - \usembodybackslash -} - -% Used when scanning braced macro arguments. Note, however, that catcode -% changes here are ineffectual if the macro invocation was nested inside -% an argument to another Texinfo command. -\def\macroargctxt{% - \scanctxt - \catcode`\ =\active - \catcode`\^^M=\other - \catcode`\\=\active -} - -\def\macrolineargctxt{% used for whole-line arguments without braces - \scanctxt - \catcode`\{=\other - \catcode`\}=\other -} - -% \mbodybackslash is the definition of \ in @macro bodies. -% It maps \foo\ => \csname macarg.foo\endcsname => #N -% where N is the macro parameter number. -% We define \csname macarg.\endcsname to be \realbackslash, so -% \\ in macro replacement text gets you a backslash. -% -{\catcode`@=0 @catcode`@\=@active - @gdef@usembodybackslash{@let\=@mbodybackslash} - @gdef@mbodybackslash#1\{@csname macarg.#1@endcsname} -} -\expandafter\def\csname macarg.\endcsname{\realbackslash} - -\def\margbackslash#1{\char`\#1 } - -\def\macro{\recursivefalse\parsearg\macroxxx} -\def\rmacro{\recursivetrue\parsearg\macroxxx} - -\def\macroxxx#1{% - \getargs{#1}% now \macname is the macname and \argl the arglist - \ifx\argl\empty % no arguments - \paramno=0\relax - \else - \expandafter\parsemargdef \argl;% - \if\paramno>256\relax - \ifx\eTeXversion\thisisundefined - \errhelp = \EMsimple - \errmessage{You need eTeX to compile a file with macros with more than 256 arguments} - \fi - \fi - \fi - \if1\csname ismacro.\the\macname\endcsname - \message{Warning: redefining \the\macname}% - \else - \expandafter\ifx\csname \the\macname\endcsname \relax - \else \errmessage{Macro name \the\macname\space already defined}\fi - \global\cslet{macsave.\the\macname}{\the\macname}% - \global\expandafter\let\csname ismacro.\the\macname\endcsname=1% - \addtomacrolist{\the\macname}% - \fi - \begingroup \macrobodyctxt - \ifrecursive \expandafter\parsermacbody - \else \expandafter\parsemacbody - \fi} - -\parseargdef\unmacro{% - \if1\csname ismacro.#1\endcsname - \global\cslet{#1}{macsave.#1}% - \global\expandafter\let \csname ismacro.#1\endcsname=0% - % Remove the macro name from \macrolist: - \begingroup - \expandafter\let\csname#1\endcsname \relax - \let\commondummyword\unmacrodo - \xdef\macrolist{\macrolist}% - \endgroup - \else - \errmessage{Macro #1 not defined}% - \fi -} - -% Called by \do from \dounmacro on each macro. The idea is to omit any -% macro definitions that have been changed to \relax. -% -\def\unmacrodo#1{% - \ifx #1\relax - % remove this - \else - \noexpand\commondummyword \noexpand#1% - \fi -} - -% \getargs -- Parse the arguments to a @macro line. Set \macname to -% the name of the macro, and \argl to the braced argument list. -\def\getargs#1{\getargsxxx#1{}} -\def\getargsxxx#1#{\getmacname #1 \relax\getmacargs} -\def\getmacname#1 #2\relax{\macname={#1}} -\def\getmacargs#1{\def\argl{#1}} -% This made use of the feature that if the last token of a -% is #, then the preceding argument is delimited by -% an opening brace, and that opening brace is not consumed. - -% Parse the optional {params} list to @macro or @rmacro. -% Set \paramno to the number of arguments, -% and \paramlist to a parameter text for the macro (e.g. #1,#2,#3 for a -% three-param macro.) Define \macarg.BLAH for each BLAH in the params -% list to some hook where the argument is to be expanded. If there are -% less than 10 arguments that hook is to be replaced by ##N where N -% is the position in that list, that is to say the macro arguments are to be -% defined `a la TeX in the macro body. -% -% That gets used by \mbodybackslash (above). -% -% If there are 10 or more arguments, a different technique is used: see -% \parsemmanyargdef. -% -\def\parsemargdef#1;{% - \paramno=0\def\paramlist{}% - \let\hash\relax - % \hash is redefined to `#' later to get it into definitions - \let\xeatspaces\relax - \parsemargdefxxx#1,;,% - \ifnum\paramno<10\relax\else - \paramno0\relax - \parsemmanyargdef@@#1,;,% 10 or more arguments - \fi -} -\def\parsemargdefxxx#1,{% - \if#1;\let\next=\relax - \else \let\next=\parsemargdefxxx - \advance\paramno by 1 - \expandafter\edef\csname macarg.\eatspaces{#1}\endcsname - {\xeatspaces{\hash\the\paramno}}% - \edef\paramlist{\paramlist\hash\the\paramno,}% - \fi\next} - -% \parsemacbody, \parsermacbody -% -% Read recursive and nonrecursive macro bodies. (They're different since -% rec and nonrec macros end differently.) -% -% We are in \macrobodyctxt, and the \xdef causes backslashshes in the macro -% body to be transformed. -% Set \macrobody to the body of the macro, and call \defmacro. -% -{\catcode`\ =\other\long\gdef\parsemacbody#1@end macro{% -\xdef\macrobody{\eatcr{#1}}\endgroup\defmacro}}% -{\catcode`\ =\other\long\gdef\parsermacbody#1@end rmacro{% -\xdef\macrobody{\eatcr{#1}}\endgroup\defmacro}}% - -% Make @ a letter, so that we can make private-to-Texinfo macro names. -\edef\texiatcatcode{\the\catcode`\@} -\catcode `@=11\relax - -%%%%%%%%%%%%%% Code for > 10 arguments only %%%%%%%%%%%%%%%%%% - -% If there are 10 or more arguments, a different technique is used, where the -% hook remains in the body, and when macro is to be expanded the body is -% processed again to replace the arguments. -% -% In that case, the hook is \the\toks N-1, and we simply set \toks N-1 to the -% argument N value and then \edef the body (nothing else will expand because of -% the catcode regime under which the body was input). -% -% If you compile with TeX (not eTeX), and you have macros with 10 or more -% arguments, no macro can have more than 256 arguments (else error). -% -% In case that there are 10 or more arguments we parse again the arguments -% list to set new definitions for the \macarg.BLAH macros corresponding to -% each BLAH argument. It was anyhow needed to parse already once this list -% in order to count the arguments, and as macros with at most 9 arguments -% are by far more frequent than macro with 10 or more arguments, defining -% twice the \macarg.BLAH macros does not cost too much processing power. -\def\parsemmanyargdef@@#1,{% - \if#1;\let\next=\relax - \else - \let\next=\parsemmanyargdef@@ - \edef\tempb{\eatspaces{#1}}% - \expandafter\def\expandafter\tempa - \expandafter{\csname macarg.\tempb\endcsname}% - % Note that we need some extra \noexpand\noexpand, this is because we - % don't want \the to be expanded in the \parsermacbody as it uses an - % \xdef . - \expandafter\edef\tempa - {\noexpand\noexpand\noexpand\the\toks\the\paramno}% - \advance\paramno by 1\relax - \fi\next} - - -\let\endargs@\relax -\let\nil@\relax -\def\nilm@{\nil@}% -\long\def\nillm@{\nil@}% - -% This macro is expanded during the Texinfo macro expansion, not during its -% definition. It gets all the arguments' values and assigns them to macros -% macarg.ARGNAME -% -% #1 is the macro name -% #2 is the list of argument names -% #3 is the list of argument values -\def\getargvals@#1#2#3{% - \def\macargdeflist@{}% - \def\saveparamlist@{#2}% Need to keep a copy for parameter expansion. - \def\paramlist{#2,\nil@}% - \def\macroname{#1}% - \begingroup - \macroargctxt - \def\argvaluelist{#3,\nil@}% - \def\@tempa{#3}% - \ifx\@tempa\empty - \setemptyargvalues@ - \else - \getargvals@@ - \fi -} -\def\getargvals@@{% - \ifx\paramlist\nilm@ - % Some sanity check needed here that \argvaluelist is also empty. - \ifx\argvaluelist\nillm@ - \else - \errhelp = \EMsimple - \errmessage{Too many arguments in macro `\macroname'!}% - \fi - \let\next\macargexpandinbody@ - \else - \ifx\argvaluelist\nillm@ - % No more arguments values passed to macro. Set remaining named-arg - % macros to empty. - \let\next\setemptyargvalues@ - \else - % pop current arg name into \@tempb - \def\@tempa##1{\pop@{\@tempb}{\paramlist}##1\endargs@}% - \expandafter\@tempa\expandafter{\paramlist}% - % pop current argument value into \@tempc - \def\@tempa##1{\longpop@{\@tempc}{\argvaluelist}##1\endargs@}% - \expandafter\@tempa\expandafter{\argvaluelist}% - % Here \@tempb is the current arg name and \@tempc is the current arg value. - % First place the new argument macro definition into \@tempd - \expandafter\macname\expandafter{\@tempc}% - \expandafter\let\csname macarg.\@tempb\endcsname\relax - \expandafter\def\expandafter\@tempe\expandafter{% - \csname macarg.\@tempb\endcsname}% - \edef\@tempd{\long\def\@tempe{\the\macname}}% - \push@\@tempd\macargdeflist@ - \let\next\getargvals@@ - \fi - \fi - \next -} - -\def\push@#1#2{% - \expandafter\expandafter\expandafter\def - \expandafter\expandafter\expandafter#2% - \expandafter\expandafter\expandafter{% - \expandafter#1#2}% -} - -% Replace arguments by their values in the macro body, and place the result -% in macro \@tempa. -% -\def\macvalstoargs@{% - % To do this we use the property that token registers that are \the'ed - % within an \edef expand only once. So we are going to place all argument - % values into respective token registers. - % - % First we save the token context, and initialize argument numbering. - \begingroup - \paramno0\relax - % Then, for each argument number #N, we place the corresponding argument - % value into a new token list register \toks#N - \expandafter\putargsintokens@\saveparamlist@,;,% - % Then, we expand the body so that argument are replaced by their - % values. The trick for values not to be expanded themselves is that they - % are within tokens and that tokens expand only once in an \edef . - \edef\@tempc{\csname mac.\macroname .body\endcsname}% - % Now we restore the token stack pointer to free the token list registers - % which we have used, but we make sure that expanded body is saved after - % group. - \expandafter - \endgroup - \expandafter\def\expandafter\@tempa\expandafter{\@tempc}% - } - -% Define the named-macro outside of this group and then close this group. -% -\def\macargexpandinbody@{% - \expandafter - \endgroup - \macargdeflist@ - % First the replace in body the macro arguments by their values, the result - % is in \@tempa . - \macvalstoargs@ - % Then we point at the \norecurse or \gobble (for recursive) macro value - % with \@tempb . - \expandafter\let\expandafter\@tempb\csname mac.\macroname .recurse\endcsname - % Depending on whether it is recursive or not, we need some tailing - % \egroup . - \ifx\@tempb\gobble - \let\@tempc\relax - \else - \let\@tempc\egroup - \fi - % And now we do the real job: - \edef\@tempd{\noexpand\@tempb{\macroname}\noexpand\scanmacro{\@tempa}\@tempc}% - \@tempd -} - -\def\putargsintokens@#1,{% - \if#1;\let\next\relax - \else - \let\next\putargsintokens@ - % First we allocate the new token list register, and give it a temporary - % alias \@tempb . - \toksdef\@tempb\the\paramno - % Then we place the argument value into that token list register. - \expandafter\let\expandafter\@tempa\csname macarg.#1\endcsname - \expandafter\@tempb\expandafter{\@tempa}% - \advance\paramno by 1\relax - \fi - \next -} - -% Trailing missing arguments are set to empty. -% -\def\setemptyargvalues@{% - \ifx\paramlist\nilm@ - \let\next\macargexpandinbody@ - \else - \expandafter\setemptyargvaluesparser@\paramlist\endargs@ - \let\next\setemptyargvalues@ - \fi - \next -} - -\def\setemptyargvaluesparser@#1,#2\endargs@{% - \expandafter\def\expandafter\@tempa\expandafter{% - \expandafter\def\csname macarg.#1\endcsname{}}% - \push@\@tempa\macargdeflist@ - \def\paramlist{#2}% -} - -% #1 is the element target macro -% #2 is the list macro -% #3,#4\endargs@ is the list value -\def\pop@#1#2#3,#4\endargs@{% - \def#1{#3}% - \def#2{#4}% -} -\long\def\longpop@#1#2#3,#4\endargs@{% - \long\def#1{#3}% - \long\def#2{#4}% -} - - -%%%%%%%%%%%%%% End of code for > 10 arguments %%%%%%%%%%%%%%%%%% - - -% This defines a Texinfo @macro or @rmacro, called by \parsemacbody. -% \macrobody has the body of the macro in it, with placeholders for -% its parameters, looking like "\xeatspaces{\hash 1}". -% \paramno is the number of parameters -% \paramlist is a TeX parameter text, e.g. "#1,#2,#3," -% There are four cases: macros of zero, one, up to nine, and many arguments. -% \xdef is used so that macro definitions will survive the file -% they're defined in: @include reads the file inside a group. -% -\def\defmacro{% - \let\hash=##% convert placeholders to macro parameter chars - \ifnum\paramno=1 - \def\xeatspaces##1{##1}% - % This removes the pair of braces around the argument. We don't - % use \eatspaces, because this can cause ends of lines to be lost - % when the argument to \eatspaces is read, leading to line-based - % commands like "@itemize" not being read correctly. - \else - \let\xeatspaces\relax % suppress expansion - \fi - \ifcase\paramno - % 0 - \expandafter\xdef\csname\the\macname\endcsname{% - \bgroup - \noexpand\spaceisspace - \noexpand\endlineisspace - \noexpand\expandafter % skip any whitespace after the macro name. - \expandafter\noexpand\csname\the\macname @@@\endcsname}% - \expandafter\xdef\csname\the\macname @@@\endcsname{% - \egroup - \noexpand\scanmacro{\macrobody}}% - \or % 1 - \expandafter\xdef\csname\the\macname\endcsname{% - \bgroup - \noexpand\braceorline - \expandafter\noexpand\csname\the\macname @@@\endcsname}% - \expandafter\xdef\csname\the\macname @@@\endcsname##1{% - \egroup - \noexpand\scanmacro{\macrobody}% - }% - \else % at most 9 - \ifnum\paramno<10\relax - % @MACNAME sets the context for reading the macro argument - % @MACNAME@@ gets the argument, processes backslashes and appends a - % comma. - % @MACNAME@@@ removes braces surrounding the argument list. - % @MACNAME@@@@ scans the macro body with arguments substituted. - \expandafter\xdef\csname\the\macname\endcsname{% - \bgroup - \noexpand\expandafter % This \expandafter skip any spaces after the - \noexpand\macroargctxt % macro before we change the catcode of space. - \noexpand\expandafter - \expandafter\noexpand\csname\the\macname @@\endcsname}% - \expandafter\xdef\csname\the\macname @@\endcsname##1{% - \noexpand\passargtomacro - \expandafter\noexpand\csname\the\macname @@@\endcsname{##1,}}% - \expandafter\xdef\csname\the\macname @@@\endcsname##1{% - \expandafter\noexpand\csname\the\macname @@@@\endcsname ##1}% - \expandafter\expandafter - \expandafter\xdef - \expandafter\expandafter - \csname\the\macname @@@@\endcsname\paramlist{% - \egroup\noexpand\scanmacro{\macrobody}}% - \else % 10 or more: - \expandafter\xdef\csname\the\macname\endcsname{% - \noexpand\getargvals@{\the\macname}{\argl}% - }% - \global\expandafter\let\csname mac.\the\macname .body\endcsname\macrobody - \global\expandafter\let\csname mac.\the\macname .recurse\endcsname\gobble - \fi - \fi} - -\catcode `\@\texiatcatcode\relax % end private-to-Texinfo catcodes - -\def\norecurse#1{\bgroup\cslet{#1}{macsave.#1}} - - -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -% -{\catcode`\@=0 \catcode`\\=13 % We need to manipulate \ so use @ as escape -@catcode`@_=11 % private names -@catcode`@!=11 % used as argument separator - -% \passargtomacro#1#2 - -% Call #1 with a list of tokens #2, with any doubled backslashes in #2 -% compressed to one. -% -% This implementation works by expansion, and not execution (so we cannot use -% \def or similar). This reduces the risk of this failing in contexts where -% complete expansion is done with no execution (for example, in writing out to -% an auxiliary file for an index entry). -% -% State is kept in the input stream: the argument passed to -% @look_ahead, @gobble_and_check_finish and @add_segment is -% -% THE_MACRO ARG_RESULT ! {PENDING_BS} NEXT_TOKEN (... rest of input) -% -% where: -% THE_MACRO - name of the macro we want to call -% ARG_RESULT - argument list we build to pass to that macro -% PENDING_BS - either a backslash or nothing -% NEXT_TOKEN - used to look ahead in the input stream to see what's coming next - -@gdef@passargtomacro#1#2{% - @add_segment #1!{}@relax#2\@_finish\% -} -@gdef@_finish{@_finishx} @global@let@_finishx@relax - -% #1 - THE_MACRO ARG_RESULT -% #2 - PENDING_BS -% #3 - NEXT_TOKEN -% #4 used to look ahead -% -% If the next token is not a backslash, process the rest of the argument; -% otherwise, remove the next token. -@gdef@look_ahead#1!#2#3#4{% - @ifx#4\% - @expandafter@gobble_and_check_finish - @else - @expandafter@add_segment - @fi#1!{#2}#4#4% -} - -% #1 - THE_MACRO ARG_RESULT -% #2 - PENDING_BS -% #3 - NEXT_TOKEN -% #4 should be a backslash, which is gobbled. -% #5 looks ahead -% -% Double backslash found. Add a single backslash, and look ahead. -@gdef@gobble_and_check_finish#1!#2#3#4#5{% - @add_segment#1\!{}#5#5% -} - -@gdef@is_fi{@fi} - -% #1 - THE_MACRO ARG_RESULT -% #2 - PENDING_BS -% #3 - NEXT_TOKEN -% #4 is input stream until next backslash -% -% Input stream is either at the start of the argument, or just after a -% backslash sequence, either a lone backslash, or a doubled backslash. -% NEXT_TOKEN contains the first token in the input stream: if it is \finish, -% finish; otherwise, append to ARG_RESULT the segment of the argument up until -% the next backslash. PENDING_BACKSLASH contains a backslash to represent -% a backslash just before the start of the input stream that has not been -% added to ARG_RESULT. -@gdef@add_segment#1!#2#3#4\{% -@ifx#3@_finish - @call_the_macro#1!% -@else - % append the pending backslash to the result, followed by the next segment - @expandafter@is_fi@look_ahead#1#2#4!{\}@fi - % this @fi is discarded by @look_ahead. - % we can't get rid of it with \expandafter because we don't know how - % long #4 is. -} - -% #1 - THE_MACRO -% #2 - ARG_RESULT -% #3 discards the res of the conditional in @add_segment, and @is_fi ends the -% conditional. -@gdef@call_the_macro#1#2!#3@fi{@is_fi #1{#2}} - -} -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - -% \braceorline MAC is used for a one-argument macro MAC. It checks -% whether the next non-whitespace character is a {. It sets the context -% for reading the argument (slightly different in the two cases). Then, -% to read the argument, in the whole-line case, it then calls the regular -% \parsearg MAC; in the lbrace case, it calls \passargtomacro MAC. -% -\def\braceorline#1{\let\macnamexxx=#1\futurelet\nchar\braceorlinexxx} -\def\braceorlinexxx{% - \ifx\nchar\bgroup - \macroargctxt - \expandafter\passargtomacro - \else - \macrolineargctxt\expandafter\parsearg - \fi \macnamexxx} - - -% @alias. -% We need some trickery to remove the optional spaces around the equal -% sign. Make them active and then expand them all to nothing. -% -\def\alias{\parseargusing\obeyspaces\aliasxxx} -\def\aliasxxx #1{\aliasyyy#1\relax} -\def\aliasyyy #1=#2\relax{% - {% - \expandafter\let\obeyedspace=\empty - \addtomacrolist{#1}% - \xdef\next{\global\let\makecsname{#1}=\makecsname{#2}}% - }% - \next -} - - -\message{cross references,} - -\newwrite\auxfile -\newif\ifhavexrefs % True if xref values are known. -\newif\ifwarnedxrefs % True if we warned once that they aren't known. - -% @inforef is relatively simple. -\def\inforef #1{\inforefzzz #1,,,,**} -\def\inforefzzz #1,#2,#3,#4**{% - \putwordSee{} \putwordInfo{} \putwordfile{} \file{\ignorespaces #3{}}, - node \samp{\ignorespaces#1{}}} - -% @node's only job in TeX is to define \lastnode, which is used in -% cross-references. The @node line might or might not have commas, and -% might or might not have spaces before the first comma, like: -% @node foo , bar , ... -% We don't want such trailing spaces in the node name. -% -\parseargdef\node{\checkenv{}\donode #1 ,\finishnodeparse} -% -% also remove a trailing comma, in case of something like this: -% @node Help-Cross, , , Cross-refs -\def\donode#1 ,#2\finishnodeparse{\dodonode #1,\finishnodeparse} -\def\dodonode#1,#2\finishnodeparse{\gdef\lastnode{#1}} - -\let\nwnode=\node -\let\lastnode=\empty - -% Write a cross-reference definition for the current node. #1 is the -% type (Ynumbered, Yappendix, Ynothing). -% -\def\donoderef#1{% - \ifx\lastnode\empty\else - \setref{\lastnode}{#1}% - \global\let\lastnode=\empty - \fi -} - -% @anchor{NAME} -- define xref target at arbitrary point. -% -\newcount\savesfregister -% -\def\savesf{\relax \ifhmode \savesfregister=\spacefactor \fi} -\def\restoresf{\relax \ifhmode \spacefactor=\savesfregister \fi} -\def\anchor#1{\savesf \setref{#1}{Ynothing}\restoresf \ignorespaces} - -% \setref{NAME}{SNT} defines a cross-reference point NAME (a node or an -% anchor), which consists of three parts: -% 1) NAME-title - the current sectioning name taken from \lastsection, -% or the anchor name. -% 2) NAME-snt - section number and type, passed as the SNT arg, or -% empty for anchors. -% 3) NAME-pg - the page number. -% -% This is called from \donoderef, \anchor, and \dofloat. In the case of -% floats, there is an additional part, which is not written here: -% 4) NAME-lof - the text as it should appear in a @listoffloats. -% -\def\setref#1#2{% - \pdfmkdest{#1}% - \iflinks - {% - \requireauxfile - \atdummies % preserve commands, but don't expand them - % match definition in \xrdef, \refx, \xrefX. - \def\value##1{##1}% - \edef\writexrdef##1##2{% - \write\auxfile{@xrdef{#1-% #1 of \setref, expanded by the \edef - ##1}{##2}}% these are parameters of \writexrdef - }% - \toks0 = \expandafter{\lastsection}% - \immediate \writexrdef{title}{\the\toks0 }% - \immediate \writexrdef{snt}{\csname #2\endcsname}% \Ynumbered etc. - \safewhatsit{\writexrdef{pg}{\folio}}% will be written later, at \shipout - }% - \fi -} - -% @xrefautosectiontitle on|off says whether @section(ing) names are used -% automatically in xrefs, if the third arg is not explicitly specified. -% This was provided as a "secret" @set xref-automatic-section-title -% variable, now it's official. -% -\parseargdef\xrefautomaticsectiontitle{% - \def\temp{#1}% - \ifx\temp\onword - \expandafter\let\csname SETxref-automatic-section-title\endcsname - = \empty - \else\ifx\temp\offword - \expandafter\let\csname SETxref-automatic-section-title\endcsname - = \relax - \else - \errhelp = \EMsimple - \errmessage{Unknown @xrefautomaticsectiontitle value `\temp', - must be on|off}% - \fi\fi -} - -% -% @xref, @pxref, and @ref generate cross-references. For \xrefX, #1 is -% the node name, #2 the name of the Info cross-reference, #3 the printed -% node name, #4 the name of the Info file, #5 the name of the printed -% manual. All but the node name can be omitted. -% -\def\pxref{\putwordsee{} \xrefXX} -\def\xref{\putwordSee{} \xrefXX} -\def\ref{\xrefXX} - -\def\xrefXX#1{\def\xrefXXarg{#1}\futurelet\tokenafterxref\xrefXXX} -\def\xrefXXX{\expandafter\xrefX\expandafter[\xrefXXarg,,,,,,,]} -% -\newbox\toprefbox -\newbox\printedrefnamebox -\newbox\infofilenamebox -\newbox\printedmanualbox -% -\def\xrefX[#1,#2,#3,#4,#5,#6]{\begingroup - \unsepspaces - % - % Get args without leading/trailing spaces. - \def\printedrefname{\ignorespaces #3}% - \setbox\printedrefnamebox = \hbox{\printedrefname\unskip}% - % - \def\infofilename{\ignorespaces #4}% - \setbox\infofilenamebox = \hbox{\infofilename\unskip}% - % - \def\printedmanual{\ignorespaces #5}% - \setbox\printedmanualbox = \hbox{\printedmanual\unskip}% - % - % If the printed reference name (arg #3) was not explicitly given in - % the @xref, figure out what we want to use. - \ifdim \wd\printedrefnamebox = 0pt - % No printed node name was explicitly given. - \expandafter\ifx\csname SETxref-automatic-section-title\endcsname \relax - % Not auto section-title: use node name inside the square brackets. - \def\printedrefname{\ignorespaces #1}% - \else - % Auto section-title: use chapter/section title inside - % the square brackets if we have it. - \ifdim \wd\printedmanualbox > 0pt - % It is in another manual, so we don't have it; use node name. - \def\printedrefname{\ignorespaces #1}% - \else - \ifhavexrefs - % We (should) know the real title if we have the xref values. - \def\printedrefname{\refx{#1-title}{}}% - \else - % Otherwise just copy the Info node name. - \def\printedrefname{\ignorespaces #1}% - \fi% - \fi - \fi - \fi - % - % Make link in pdf output. - \ifpdf - % For pdfTeX and LuaTeX - {\indexnofonts - \makevalueexpandable - \turnoffactive - % This expands tokens, so do it after making catcode changes, so _ - % etc. don't get their TeX definitions. This ignores all spaces in - % #4, including (wrongly) those in the middle of the filename. - \getfilename{#4}% - % - % This (wrongly) does not take account of leading or trailing - % spaces in #1, which should be ignored. - \setpdfdestname{#1}% - % - \ifx\pdfdestname\empty - \def\pdfdestname{Top}% no empty targets - \fi - % - \leavevmode - \startlink attr{/Border [0 0 0]}% - \ifnum\filenamelength>0 - goto file{\the\filename.pdf} name{\pdfdestname}% - \else - goto name{\pdfmkpgn{\pdfdestname}}% - \fi - }% - \setcolor{\linkcolor}% - \else - \ifx\XeTeXrevision\thisisundefined - \else - % For XeTeX - {\indexnofonts - \makevalueexpandable - \turnoffactive - % This expands tokens, so do it after making catcode changes, so _ - % etc. don't get their TeX definitions. This ignores all spaces in - % #4, including (wrongly) those in the middle of the filename. - \getfilename{#4}% - % - % This (wrongly) does not take account of leading or trailing - % spaces in #1, which should be ignored. - \setpdfdestname{#1}% - % - \ifx\pdfdestname\empty - \def\pdfdestname{Top}% no empty targets - \fi - % - \leavevmode - \ifnum\filenamelength>0 - % With default settings, - % XeTeX (xdvipdfmx) replaces link destination names with integers. - % In this case, the replaced destination names of - % remote PDFs are no longer known. In order to avoid a replacement, - % you can use xdvipdfmx's command line option `-C 0x0010'. - % If you use XeTeX 0.99996+ (TeX Live 2016+), - % this command line option is no longer necessary - % because we can use the `dvipdfmx:config' special. - \special{pdf:bann << /Border [0 0 0] /Type /Annot /Subtype /Link /A - << /S /GoToR /F (\the\filename.pdf) /D (\pdfdestname) >> >>}% - \else - \special{pdf:bann << /Border [0 0 0] /Type /Annot /Subtype /Link /A - << /S /GoTo /D (\pdfdestname) >> >>}% - \fi - }% - \setcolor{\linkcolor}% - \fi - \fi - {% - % Have to otherify everything special to allow the \csname to - % include an _ in the xref name, etc. - \indexnofonts - \turnoffactive - \def\value##1{##1}% - \expandafter\global\expandafter\let\expandafter\Xthisreftitle - \csname XR#1-title\endcsname - }% - % - % Float references are printed completely differently: "Figure 1.2" - % instead of "[somenode], p.3". \iffloat distinguishes them by - % \Xthisreftitle being set to a magic string. - \iffloat\Xthisreftitle - % If the user specified the print name (third arg) to the ref, - % print it instead of our usual "Figure 1.2". - \ifdim\wd\printedrefnamebox = 0pt - \refx{#1-snt}{}% - \else - \printedrefname - \fi - % - % If the user also gave the printed manual name (fifth arg), append - % "in MANUALNAME". - \ifdim \wd\printedmanualbox > 0pt - \space \putwordin{} \cite{\printedmanual}% - \fi - \else - % node/anchor (non-float) references. - % - % If we use \unhbox to print the node names, TeX does not insert - % empty discretionaries after hyphens, which means that it will not - % find a line break at a hyphen in a node names. Since some manuals - % are best written with fairly long node names, containing hyphens, - % this is a loss. Therefore, we give the text of the node name - % again, so it is as if TeX is seeing it for the first time. - % - \ifdim \wd\printedmanualbox > 0pt - % Cross-manual reference with a printed manual name. - % - \crossmanualxref{\cite{\printedmanual\unskip}}% - % - \else\ifdim \wd\infofilenamebox > 0pt - % Cross-manual reference with only an info filename (arg 4), no - % printed manual name (arg 5). This is essentially the same as - % the case above; we output the filename, since we have nothing else. - % - \crossmanualxref{\code{\infofilename\unskip}}% - % - \else - % Reference within this manual. - % - % _ (for example) has to be the character _ for the purposes of the - % control sequence corresponding to the node, but it has to expand - % into the usual \leavevmode...\vrule stuff for purposes of - % printing. So we \turnoffactive for the \refx-snt, back on for the - % printing, back off for the \refx-pg. - {\turnoffactive - % Only output a following space if the -snt ref is nonempty; for - % @unnumbered and @anchor, it won't be. - \setbox2 = \hbox{\ignorespaces \refx{#1-snt}{}}% - \ifdim \wd2 > 0pt \refx{#1-snt}\space\fi - }% - % output the `[mynode]' via the macro below so it can be overridden. - \xrefprintnodename\printedrefname - % - % But we always want a comma and a space: - ,\space - % - % output the `page 3'. - \turnoffactive \putwordpage\tie\refx{#1-pg}{}% - % Add a , if xref followed by a space - \if\space\noexpand\tokenafterxref ,% - \else\ifx\ \tokenafterxref ,% @TAB - \else\ifx\*\tokenafterxref ,% @* - \else\ifx\ \tokenafterxref ,% @SPACE - \else\ifx\ - \tokenafterxref ,% @NL - \else\ifx\tie\tokenafterxref ,% @tie - \fi\fi\fi\fi\fi\fi - \fi\fi - \fi - \endlink -\endgroup} - -% Output a cross-manual xref to #1. Used just above (twice). -% -% Only include the text "Section ``foo'' in" if the foo is neither -% missing or Top. Thus, @xref{,,,foo,The Foo Manual} outputs simply -% "see The Foo Manual", the idea being to refer to the whole manual. -% -% But, this being TeX, we can't easily compare our node name against the -% string "Top" while ignoring the possible spaces before and after in -% the input. By adding the arbitrary 7sp below, we make it much less -% likely that a real node name would have the same width as "Top" (e.g., -% in a monospaced font). Hopefully it will never happen in practice. -% -% For the same basic reason, we retypeset the "Top" at every -% reference, since the current font is indeterminate. -% -\def\crossmanualxref#1{% - \setbox\toprefbox = \hbox{Top\kern7sp}% - \setbox2 = \hbox{\ignorespaces \printedrefname \unskip \kern7sp}% - \ifdim \wd2 > 7sp % nonempty? - \ifdim \wd2 = \wd\toprefbox \else % same as Top? - \putwordSection{} ``\printedrefname'' \putwordin{}\space - \fi - \fi - #1% -} - -% This macro is called from \xrefX for the `[nodename]' part of xref -% output. It's a separate macro only so it can be changed more easily, -% since square brackets don't work well in some documents. Particularly -% one that Bob is working on :). -% -\def\xrefprintnodename#1{[#1]} - -% Things referred to by \setref. -% -\def\Ynothing{} -\def\Yomitfromtoc{} -\def\Ynumbered{% - \ifnum\secno=0 - \putwordChapter@tie \the\chapno - \else \ifnum\subsecno=0 - \putwordSection@tie \the\chapno.\the\secno - \else \ifnum\subsubsecno=0 - \putwordSection@tie \the\chapno.\the\secno.\the\subsecno - \else - \putwordSection@tie \the\chapno.\the\secno.\the\subsecno.\the\subsubsecno - \fi\fi\fi -} -\def\Yappendix{% - \ifnum\secno=0 - \putwordAppendix@tie @char\the\appendixno{}% - \else \ifnum\subsecno=0 - \putwordSection@tie @char\the\appendixno.\the\secno - \else \ifnum\subsubsecno=0 - \putwordSection@tie @char\the\appendixno.\the\secno.\the\subsecno - \else - \putwordSection@tie - @char\the\appendixno.\the\secno.\the\subsecno.\the\subsubsecno - \fi\fi\fi -} - -% \refx{NAME}{SUFFIX} - reference a cross-reference string named NAME. SUFFIX -% is output afterwards if non-empty. -\def\refx#1#2{% - \requireauxfile - {% - \indexnofonts - \otherbackslash - \def\value##1{##1}% - \expandafter\global\expandafter\let\expandafter\thisrefX - \csname XR#1\endcsname - }% - \ifx\thisrefX\relax - % If not defined, say something at least. - \angleleft un\-de\-fined\angleright - \iflinks - \ifhavexrefs - {\toks0 = {#1}% avoid expansion of possibly-complex value - \message{\linenumber Undefined cross reference `\the\toks0'.}}% - \else - \ifwarnedxrefs\else - \global\warnedxrefstrue - \message{Cross reference values unknown; you must run TeX again.}% - \fi - \fi - \fi - \else - % It's defined, so just use it. - \thisrefX - \fi - #2% Output the suffix in any case. -} - -% This is the macro invoked by entries in the aux file. Define a control -% sequence for a cross-reference target (we prepend XR to the control sequence -% name to avoid collisions). The value is the page number. If this is a float -% type, we have more work to do. -% -\def\xrdef#1#2{% - {% Expand the node or anchor name to remove control sequences. - % \turnoffactive stops 8-bit characters being changed to commands - % like @'e. \refx does the same to retrieve the value in the definition. - \indexnofonts - \turnoffactive - \def\value##1{##1}% - \xdef\safexrefname{#1}% - }% - % - \bgroup - \expandafter\gdef\csname XR\safexrefname\endcsname{#2}% - \egroup - % We put the \gdef inside a group to avoid the definitions building up on - % TeX's save stack, which can cause it to run out of space for aux files with - % thousands of lines. \gdef doesn't use the save stack, but \csname does - % when it defines an unknown control sequence as \relax. - % - % Was that xref control sequence that we just defined for a float? - \expandafter\iffloat\csname XR\safexrefname\endcsname - % it was a float, and we have the (safe) float type in \iffloattype. - \expandafter\let\expandafter\floatlist - \csname floatlist\iffloattype\endcsname - % - % Is this the first time we've seen this float type? - \expandafter\ifx\floatlist\relax - \toks0 = {\do}% yes, so just \do - \else - % had it before, so preserve previous elements in list. - \toks0 = \expandafter{\floatlist\do}% - \fi - % - % Remember this xref in the control sequence \floatlistFLOATTYPE, - % for later use in \listoffloats. - \expandafter\xdef\csname floatlist\iffloattype\endcsname{\the\toks0 - {\safexrefname}}% - \fi -} - -% If working on a large document in chapters, it is convenient to -% be able to disable indexing, cross-referencing, and contents, for test runs. -% This is done with @novalidate at the beginning of the file. -% -\newif\iflinks \linkstrue % by default we want the aux files. -\let\novalidate = \linksfalse - -% Used when writing to the aux file, or when using data from it. -\def\requireauxfile{% - \iflinks - \tryauxfile - % Open the new aux file. TeX will close it automatically at exit. - \immediate\openout\auxfile=\jobname.aux - \fi - \global\let\requireauxfile=\relax % Only do this once. -} - -% Read the last existing aux file, if any. No error if none exists. -% -\def\tryauxfile{% - \openin 1 \jobname.aux - \ifeof 1 \else - \readdatafile{aux}% - \global\havexrefstrue - \fi - \closein 1 -} - -\def\setupdatafile{% - \catcode`\^^@=\other - \catcode`\^^A=\other - \catcode`\^^B=\other - \catcode`\^^C=\other - \catcode`\^^D=\other - \catcode`\^^E=\other - \catcode`\^^F=\other - \catcode`\^^G=\other - \catcode`\^^H=\other - \catcode`\^^K=\other - \catcode`\^^L=\other - \catcode`\^^N=\other - \catcode`\^^P=\other - \catcode`\^^Q=\other - \catcode`\^^R=\other - \catcode`\^^S=\other - \catcode`\^^T=\other - \catcode`\^^U=\other - \catcode`\^^V=\other - \catcode`\^^W=\other - \catcode`\^^X=\other - \catcode`\^^Z=\other - \catcode`\^^[=\other - \catcode`\^^\=\other - \catcode`\^^]=\other - \catcode`\^^^=\other - \catcode`\^^_=\other - % It was suggested to set the catcode of ^ to 7, which would allow ^^e4 etc. - % in xref tags, i.e., node names. But since ^^e4 notation isn't - % supported in the main text, it doesn't seem desirable. Furthermore, - % that is not enough: for node names that actually contain a ^ - % character, we would end up writing a line like this: 'xrdef {'hat - % b-title}{'hat b} and \xrdef does a \csname...\endcsname on the first - % argument, and \hat is not an expandable control sequence. It could - % all be worked out, but why? Either we support ^^ or we don't. - % - % The other change necessary for this was to define \auxhat: - % \def\auxhat{\def^{'hat }}% extra space so ok if followed by letter - % and then to call \auxhat in \setq. - % - \catcode`\^=\other - % - % Special characters. Should be turned off anyway, but... - \catcode`\~=\other - \catcode`\[=\other - \catcode`\]=\other - \catcode`\"=\other - \catcode`\_=\other - \catcode`\|=\other - \catcode`\<=\other - \catcode`\>=\other - \catcode`\$=\other - \catcode`\#=\other - \catcode`\&=\other - \catcode`\%=\other - \catcode`+=\other % avoid \+ for paranoia even though we've turned it off - % - % This is to support \ in node names and titles, since the \ - % characters end up in a \csname. It's easier than - % leaving it active and making its active definition an actual \ - % character. What I don't understand is why it works in the *value* - % of the xrdef. Seems like it should be a catcode12 \, and that - % should not typeset properly. But it works, so I'm moving on for - % now. --karl, 15jan04. - \catcode`\\=\other - % - % @ is our escape character in .aux files, and we need braces. - \catcode`\{=1 - \catcode`\}=2 - \catcode`\@=0 -} - -\def\readdatafile#1{% -\begingroup - \setupdatafile - \input\jobname.#1 -\endgroup} - - -\message{insertions,} -% including footnotes. - -\newcount \footnoteno - -% The trailing space in the following definition for supereject is -% vital for proper filling; pages come out unaligned when you do a -% pagealignmacro call if that space before the closing brace is -% removed. (Generally, numeric constants should always be followed by a -% space to prevent strange expansion errors.) -\def\supereject{\par\penalty -20000\footnoteno =0 } - -% @footnotestyle is meaningful for Info output only. -\let\footnotestyle=\comment - -{\catcode `\@=11 -% -% Auto-number footnotes. Otherwise like plain. -\gdef\footnote{% - \global\advance\footnoteno by \@ne - \edef\thisfootno{$^{\the\footnoteno}$}% - % - % In case the footnote comes at the end of a sentence, preserve the - % extra spacing after we do the footnote number. - \let\@sf\empty - \ifhmode\edef\@sf{\spacefactor\the\spacefactor}\ptexslash\fi - % - % Remove inadvertent blank space before typesetting the footnote number. - \unskip - \thisfootno\@sf - \dofootnote -}% - -% Don't bother with the trickery in plain.tex to not require the -% footnote text as a parameter. Our footnotes don't need to be so general. -% -% Oh yes, they do; otherwise, @ifset (and anything else that uses -% \parseargline) fails inside footnotes because the tokens are fixed when -% the footnote is read. --karl, 16nov96. -% -\gdef\dofootnote{% - \insert\footins\bgroup - % - % Nested footnotes are not supported in TeX, that would take a lot - % more work. (\startsavinginserts does not suffice.) - \let\footnote=\errfootnotenest - % - % We want to typeset this text as a normal paragraph, even if the - % footnote reference occurs in (for example) a display environment. - % So reset some parameters. - \hsize=\txipagewidth - \interlinepenalty\interfootnotelinepenalty - \splittopskip\ht\strutbox % top baseline for broken footnotes - \splitmaxdepth\dp\strutbox - \floatingpenalty\@MM - \leftskip\z@skip - \rightskip\z@skip - \spaceskip\z@skip - \xspaceskip\z@skip - \parindent\defaultparindent - % - \smallfonts \rm - % - % Because we use hanging indentation in footnotes, a @noindent appears - % to exdent this text, so make it be a no-op. makeinfo does not use - % hanging indentation so @noindent can still be needed within footnote - % text after an @example or the like (not that this is good style). - \let\noindent = \relax - % - % Hang the footnote text off the number. Use \everypar in case the - % footnote extends for more than one paragraph. - \everypar = {\hang}% - \textindent{\thisfootno}% - % - % Don't crash into the line above the footnote text. Since this - % expands into a box, it must come within the paragraph, lest it - % provide a place where TeX can split the footnote. - \footstrut - % - % Invoke rest of plain TeX footnote routine. - \futurelet\next\fo@t -} -}%end \catcode `\@=11 - -\def\errfootnotenest{% - \errhelp=\EMsimple - \errmessage{Nested footnotes not supported in texinfo.tex, - even though they work in makeinfo; sorry} -} - -\def\errfootnoteheading{% - \errhelp=\EMsimple - \errmessage{Footnotes in chapters, sections, etc., are not supported} -} - -% In case a @footnote appears in a vbox, save the footnote text and create -% the real \insert just after the vbox finished. Otherwise, the insertion -% would be lost. -% Similarly, if a @footnote appears inside an alignment, save the footnote -% text to a box and make the \insert when a row of the table is finished. -% And the same can be done for other insert classes. --kasal, 16nov03. -% -% Replace the \insert primitive by a cheating macro. -% Deeper inside, just make sure that the saved insertions are not spilled -% out prematurely. -% -\def\startsavinginserts{% - \ifx \insert\ptexinsert - \let\insert\saveinsert - \else - \let\checkinserts\relax - \fi -} - -% This \insert replacement works for both \insert\footins{foo} and -% \insert\footins\bgroup foo\egroup, but it doesn't work for \insert27{foo}. -% -\def\saveinsert#1{% - \edef\next{\noexpand\savetobox \makeSAVEname#1}% - \afterassignment\next - % swallow the left brace - \let\temp = -} -\def\makeSAVEname#1{\makecsname{SAVE\expandafter\gobble\string#1}} -\def\savetobox#1{\global\setbox#1 = \vbox\bgroup \unvbox#1} - -\def\checksaveins#1{\ifvoid#1\else \placesaveins#1\fi} - -\def\placesaveins#1{% - \ptexinsert \csname\expandafter\gobblesave\string#1\endcsname - {\box#1}% -} - -% eat @SAVE -- beware, all of them have catcode \other: -{ - \def\dospecials{\do S\do A\do V\do E} \uncatcodespecials % ;-) - \gdef\gobblesave @SAVE{} -} - -% initialization: -\def\newsaveins #1{% - \edef\next{\noexpand\newsaveinsX \makeSAVEname#1}% - \next -} -\def\newsaveinsX #1{% - \csname newbox\endcsname #1% - \expandafter\def\expandafter\checkinserts\expandafter{\checkinserts - \checksaveins #1}% -} - -% initialize: -\let\checkinserts\empty -\newsaveins\footins -\newsaveins\margin - - -% @image. We use the macros from epsf.tex to support this. -% If epsf.tex is not installed and @image is used, we complain. -% -% Check for and read epsf.tex up front. If we read it only at @image -% time, we might be inside a group, and then its definitions would get -% undone and the next image would fail. -\openin 1 = epsf.tex -\ifeof 1 \else - % Do not bother showing banner with epsf.tex v2.7k (available in - % doc/epsf.tex and on ctan). - \def\epsfannounce{\toks0 = }% - \input epsf.tex -\fi -\closein 1 -% -% We will only complain once about lack of epsf.tex. -\newif\ifwarnednoepsf -\newhelp\noepsfhelp{epsf.tex must be installed for images to - work. It is also included in the Texinfo distribution, or you can get - it from https://ctan.org/texarchive/macros/texinfo/texinfo/doc/epsf.tex.} -% -\def\image#1{% - \ifx\epsfbox\thisisundefined - \ifwarnednoepsf \else - \errhelp = \noepsfhelp - \errmessage{epsf.tex not found, images will be ignored}% - \global\warnednoepsftrue - \fi - \else - \imagexxx #1,,,,,\finish - \fi -} -% -% Arguments to @image: -% #1 is (mandatory) image filename; we tack on .eps extension. -% #2 is (optional) width, #3 is (optional) height. -% #4 is (ignored optional) html alt text. -% #5 is (ignored optional) extension. -% #6 is just the usual extra ignored arg for parsing stuff. -\newif\ifimagevmode -\def\imagexxx#1,#2,#3,#4,#5,#6\finish{\begingroup - \catcode`\^^M = 5 % in case we're inside an example - \normalturnoffactive % allow _ et al. in names - \def\xprocessmacroarg{\eatspaces}% in case we are being used via a macro - % If the image is by itself, center it. - \ifvmode - \imagevmodetrue - \else \ifx\centersub\centerV - % for @center @image, we need a vbox so we can have our vertical space - \imagevmodetrue - \vbox\bgroup % vbox has better behavior than vtop herev - \fi\fi - % - \ifimagevmode - \nobreak\medskip - % Usually we'll have text after the image which will insert - % \parskip glue, so insert it here too to equalize the space - % above and below. - \nobreak\vskip\parskip - \nobreak - \fi - % - % Leave vertical mode so that indentation from an enclosing - % environment such as @quotation is respected. - % However, if we're at the top level, we don't want the - % normal paragraph indentation. - % On the other hand, if we are in the case of @center @image, we don't - % want to start a paragraph, which will create a hsize-width box and - % eradicate the centering. - \ifx\centersub\centerV\else \noindent \fi - % - % Output the image. - \ifpdf - % For pdfTeX and LuaTeX <= 0.80 - \dopdfimage{#1}{#2}{#3}% - \else - \ifx\XeTeXrevision\thisisundefined - % For epsf.tex - % \epsfbox itself resets \epsf?size at each figure. - \setbox0 = \hbox{\ignorespaces #2}% - \ifdim\wd0 > 0pt \epsfxsize=#2\relax \fi - \setbox0 = \hbox{\ignorespaces #3}% - \ifdim\wd0 > 0pt \epsfysize=#3\relax \fi - \epsfbox{#1.eps}% - \else - % For XeTeX - \doxeteximage{#1}{#2}{#3}% - \fi - \fi - % - \ifimagevmode - \medskip % space after a standalone image - \fi - \ifx\centersub\centerV \egroup \fi -\endgroup} - - -% @float FLOATTYPE,LABEL,LOC ... @end float for displayed figures, tables, -% etc. We don't actually implement floating yet, we always include the -% float "here". But it seemed the best name for the future. -% -\envparseargdef\float{\eatcommaspace\eatcommaspace\dofloat#1, , ,\finish} - -% There may be a space before second and/or third parameter; delete it. -\def\eatcommaspace#1, {#1,} - -% #1 is the optional FLOATTYPE, the text label for this float, typically -% "Figure", "Table", "Example", etc. Can't contain commas. If omitted, -% this float will not be numbered and cannot be referred to. -% -% #2 is the optional xref label. Also must be present for the float to -% be referable. -% -% #3 is the optional positioning argument; for now, it is ignored. It -% will somehow specify the positions allowed to float to (here, top, bottom). -% -% We keep a separate counter for each FLOATTYPE, which we reset at each -% chapter-level command. -\let\resetallfloatnos=\empty -% -\def\dofloat#1,#2,#3,#4\finish{% - \let\thiscaption=\empty - \let\thisshortcaption=\empty - % - % don't lose footnotes inside @float. - % - % BEWARE: when the floats start float, we have to issue warning whenever an - % insert appears inside a float which could possibly float. --kasal, 26may04 - % - \startsavinginserts - % - % We can't be used inside a paragraph. - \par - % - \vtop\bgroup - \def\floattype{#1}% - \def\floatlabel{#2}% - \def\floatloc{#3}% we do nothing with this yet. - % - \ifx\floattype\empty - \let\safefloattype=\empty - \else - {% - % the floattype might have accents or other special characters, - % but we need to use it in a control sequence name. - \indexnofonts - \turnoffactive - \xdef\safefloattype{\floattype}% - }% - \fi - % - % If label is given but no type, we handle that as the empty type. - \ifx\floatlabel\empty \else - % We want each FLOATTYPE to be numbered separately (Figure 1, - % Table 1, Figure 2, ...). (And if no label, no number.) - % - \expandafter\getfloatno\csname\safefloattype floatno\endcsname - \global\advance\floatno by 1 - % - {% - % This magic value for \lastsection is output by \setref as the - % XREFLABEL-title value. \xrefX uses it to distinguish float - % labels (which have a completely different output format) from - % node and anchor labels. And \xrdef uses it to construct the - % lists of floats. - % - \edef\lastsection{\floatmagic=\safefloattype}% - \setref{\floatlabel}{Yfloat}% - }% - \fi - % - % start with \parskip glue, I guess. - \vskip\parskip - % - % Don't suppress indentation if a float happens to start a section. - \restorefirstparagraphindent -} - -% we have these possibilities: -% @float Foo,lbl & @caption{Cap}: Foo 1.1: Cap -% @float Foo,lbl & no caption: Foo 1.1 -% @float Foo & @caption{Cap}: Foo: Cap -% @float Foo & no caption: Foo -% @float ,lbl & Caption{Cap}: 1.1: Cap -% @float ,lbl & no caption: 1.1 -% @float & @caption{Cap}: Cap -% @float & no caption: -% -\def\Efloat{% - \let\floatident = \empty - % - % In all cases, if we have a float type, it comes first. - \ifx\floattype\empty \else \def\floatident{\floattype}\fi - % - % If we have an xref label, the number comes next. - \ifx\floatlabel\empty \else - \ifx\floattype\empty \else % if also had float type, need tie first. - \appendtomacro\floatident{\tie}% - \fi - % the number. - \appendtomacro\floatident{\chaplevelprefix\the\floatno}% - \fi - % - % Start the printed caption with what we've constructed in - % \floatident, but keep it separate; we need \floatident again. - \let\captionline = \floatident - % - \ifx\thiscaption\empty \else - \ifx\floatident\empty \else - \appendtomacro\captionline{: }% had ident, so need a colon between - \fi - % - % caption text. - \appendtomacro\captionline{\scanexp\thiscaption}% - \fi - % - % If we have anything to print, print it, with space before. - % Eventually this needs to become an \insert. - \ifx\captionline\empty \else - \vskip.5\parskip - \captionline - % - % Space below caption. - \vskip\parskip - \fi - % - % If have an xref label, write the list of floats info. Do this - % after the caption, to avoid chance of it being a breakpoint. - \ifx\floatlabel\empty \else - % Write the text that goes in the lof to the aux file as - % \floatlabel-lof. Besides \floatident, we include the short - % caption if specified, else the full caption if specified, else nothing. - {% - \requireauxfile - \atdummies - % - \ifx\thisshortcaption\empty - \def\gtemp{\thiscaption}% - \else - \def\gtemp{\thisshortcaption}% - \fi - \immediate\write\auxfile{@xrdef{\floatlabel-lof}{\floatident - \ifx\gtemp\empty \else : \gtemp \fi}}% - }% - \fi - \egroup % end of \vtop - % - \checkinserts -} - -% Append the tokens #2 to the definition of macro #1, not expanding either. -% -\def\appendtomacro#1#2{% - \expandafter\def\expandafter#1\expandafter{#1#2}% -} - -% @caption, @shortcaption -% -\def\caption{\docaption\thiscaption} -\def\shortcaption{\docaption\thisshortcaption} -\def\docaption{\checkenv\float \bgroup\scanargctxt\defcaption} -\def\defcaption#1#2{\egroup \def#1{#2}} - -% The parameter is the control sequence identifying the counter we are -% going to use. Create it if it doesn't exist and assign it to \floatno. -\def\getfloatno#1{% - \ifx#1\relax - % Haven't seen this figure type before. - \csname newcount\endcsname #1% - % - % Remember to reset this floatno at the next chap. - \expandafter\gdef\expandafter\resetallfloatnos - \expandafter{\resetallfloatnos #1=0 }% - \fi - \let\floatno#1% -} - -% \setref calls this to get the XREFLABEL-snt value. We want an @xref -% to the FLOATLABEL to expand to "Figure 3.1". We call \setref when we -% first read the @float command. -% -\def\Yfloat{\floattype@tie \chaplevelprefix\the\floatno}% - -% Magic string used for the XREFLABEL-title value, so \xrefX can -% distinguish floats from other xref types. -\def\floatmagic{!!float!!} - -% #1 is the control sequence we are passed; we expand into a conditional -% which is true if #1 represents a float ref. That is, the magic -% \lastsection value which we \setref above. -% -\def\iffloat#1{\expandafter\doiffloat#1==\finish} -% -% #1 is (maybe) the \floatmagic string. If so, #2 will be the -% (safe) float type for this float. We set \iffloattype to #2. -% -\def\doiffloat#1=#2=#3\finish{% - \def\temp{#1}% - \def\iffloattype{#2}% - \ifx\temp\floatmagic -} - -% @listoffloats FLOATTYPE - print a list of floats like a table of contents. -% -\parseargdef\listoffloats{% - \def\floattype{#1}% floattype - {% - % the floattype might have accents or other special characters, - % but we need to use it in a control sequence name. - \indexnofonts - \turnoffactive - \xdef\safefloattype{\floattype}% - }% - % - % \xrdef saves the floats as a \do-list in \floatlistSAFEFLOATTYPE. - \expandafter\ifx\csname floatlist\safefloattype\endcsname \relax - \ifhavexrefs - % if the user said @listoffloats foo but never @float foo. - \message{\linenumber No `\safefloattype' floats to list.}% - \fi - \else - \begingroup - \leftskip=\tocindent % indent these entries like a toc - \let\do=\listoffloatsdo - \csname floatlist\safefloattype\endcsname - \endgroup - \fi -} - -% This is called on each entry in a list of floats. We're passed the -% xref label, in the form LABEL-title, which is how we save it in the -% aux file. We strip off the -title and look up \XRLABEL-lof, which -% has the text we're supposed to typeset here. -% -% Figures without xref labels will not be included in the list (since -% they won't appear in the aux file). -% -\def\listoffloatsdo#1{\listoffloatsdoentry#1\finish} -\def\listoffloatsdoentry#1-title\finish{{% - % Can't fully expand XR#1-lof because it can contain anything. Just - % pass the control sequence. On the other hand, XR#1-pg is just the - % page number, and we want to fully expand that so we can get a link - % in pdf output. - \toksA = \expandafter{\csname XR#1-lof\endcsname}% - % - % use the same \entry macro we use to generate the TOC and index. - \edef\writeentry{\noexpand\entry{\the\toksA}{\csname XR#1-pg\endcsname}}% - \writeentry -}} - - -\message{localization,} - -% For single-language documents, @documentlanguage is usually given very -% early, just after @documentencoding. Single argument is the language -% (de) or locale (de_DE) abbreviation. -% -{ - \catcode`\_ = \active - \globaldefs=1 -\parseargdef\documentlanguage{% - \tex % read txi-??.tex file in plain TeX. - % Read the file by the name they passed if it exists. - \let_ = \normalunderscore % normal _ character for filename test - \openin 1 txi-#1.tex - \ifeof 1 - \documentlanguagetrywithoutunderscore #1_\finish - \else - \globaldefs = 1 % everything in the txi-LL files needs to persist - \input txi-#1.tex - \fi - \closein 1 - \endgroup % end raw TeX -} -% -% If they passed de_DE, and txi-de_DE.tex doesn't exist, -% try txi-de.tex. -% -\gdef\documentlanguagetrywithoutunderscore#1_#2\finish{% - \openin 1 txi-#1.tex - \ifeof 1 - \errhelp = \nolanghelp - \errmessage{Cannot read language file txi-#1.tex}% - \else - \globaldefs = 1 % everything in the txi-LL files needs to persist - \input txi-#1.tex - \fi - \closein 1 -} -}% end of special _ catcode -% -\newhelp\nolanghelp{The given language definition file cannot be found or -is empty. Maybe you need to install it? Putting it in the current -directory should work if nowhere else does.} - -% This macro is called from txi-??.tex files; the first argument is the -% \language name to set (without the "\lang@" prefix), the second and -% third args are \{left,right}hyphenmin. -% -% The language names to pass are determined when the format is built. -% See the etex.log file created at that time, e.g., -% /usr/local/texlive/2008/texmf-var/web2c/pdftex/etex.log. -% -% With TeX Live 2008, etex now includes hyphenation patterns for all -% available languages. This means we can support hyphenation in -% Texinfo, at least to some extent. (This still doesn't solve the -% accented characters problem.) -% -\catcode`@=11 -\def\txisetlanguage#1#2#3{% - % do not set the language if the name is undefined in the current TeX. - \expandafter\ifx\csname lang@#1\endcsname \relax - \message{no patterns for #1}% - \else - \global\language = \csname lang@#1\endcsname - \fi - % but there is no harm in adjusting the hyphenmin values regardless. - \global\lefthyphenmin = #2\relax - \global\righthyphenmin = #3\relax -} - -% XeTeX and LuaTeX can handle Unicode natively. -% Their default I/O uses UTF-8 sequences instead of a byte-wise operation. -% Other TeX engines' I/O (pdfTeX, etc.) is byte-wise. -% -\newif\iftxinativeunicodecapable -\newif\iftxiusebytewiseio - -\ifx\XeTeXrevision\thisisundefined - \ifx\luatexversion\thisisundefined - \txinativeunicodecapablefalse - \txiusebytewiseiotrue - \else - \txinativeunicodecapabletrue - \txiusebytewiseiofalse - \fi -\else - \txinativeunicodecapabletrue - \txiusebytewiseiofalse -\fi - -% Set I/O by bytes instead of UTF-8 sequence for XeTeX and LuaTex -% for non-UTF-8 (byte-wise) encodings. -% -\def\setbytewiseio{% - \ifx\XeTeXrevision\thisisundefined - \else - \XeTeXdefaultencoding "bytes" % For subsequent files to be read - \XeTeXinputencoding "bytes" % For document root file - % Unfortunately, there seems to be no corresponding XeTeX command for - % output encoding. This is a problem for auxiliary index and TOC files. - % The only solution would be perhaps to write out @U{...} sequences in - % place of non-ASCII characters. - \fi - - \ifx\luatexversion\thisisundefined - \else - \directlua{ - local utf8_char, byte, gsub = unicode.utf8.char, string.byte, string.gsub - local function convert_char (char) - return utf8_char(byte(char)) - end - - local function convert_line (line) - return gsub(line, ".", convert_char) - end - - callback.register("process_input_buffer", convert_line) - - local function convert_line_out (line) - local line_out = "" - for c in string.utfvalues(line) do - line_out = line_out .. string.char(c) - end - return line_out - end - - callback.register("process_output_buffer", convert_line_out) - } - \fi - - \txiusebytewiseiotrue -} - - -% Helpers for encodings. -% Set the catcode of characters 128 through 255 to the specified number. -% -\def\setnonasciicharscatcode#1{% - \count255=128 - \loop\ifnum\count255<256 - \global\catcode\count255=#1\relax - \advance\count255 by 1 - \repeat -} - -\def\setnonasciicharscatcodenonglobal#1{% - \count255=128 - \loop\ifnum\count255<256 - \catcode\count255=#1\relax - \advance\count255 by 1 - \repeat -} - -% @documentencoding sets the definition of non-ASCII characters -% according to the specified encoding. -% -\def\documentencoding{\parseargusing\filenamecatcodes\documentencodingzzz} -\def\documentencodingzzz#1{% - % - % Encoding being declared for the document. - \def\declaredencoding{\csname #1.enc\endcsname}% - % - % Supported encodings: names converted to tokens in order to be able - % to compare them with \ifx. - \def\ascii{\csname US-ASCII.enc\endcsname}% - \def\latnine{\csname ISO-8859-15.enc\endcsname}% - \def\latone{\csname ISO-8859-1.enc\endcsname}% - \def\lattwo{\csname ISO-8859-2.enc\endcsname}% - \def\utfeight{\csname UTF-8.enc\endcsname}% - % - \ifx \declaredencoding \ascii - \asciichardefs - % - \else \ifx \declaredencoding \lattwo - \iftxinativeunicodecapable - \setbytewiseio - \fi - \setnonasciicharscatcode\active - \lattwochardefs - % - \else \ifx \declaredencoding \latone - \iftxinativeunicodecapable - \setbytewiseio - \fi - \setnonasciicharscatcode\active - \latonechardefs - % - \else \ifx \declaredencoding \latnine - \iftxinativeunicodecapable - \setbytewiseio - \fi - \setnonasciicharscatcode\active - \latninechardefs - % - \else \ifx \declaredencoding \utfeight - \iftxinativeunicodecapable - % For native Unicode handling (XeTeX and LuaTeX) - \nativeunicodechardefs - \else - % For treating UTF-8 as byte sequences (TeX, eTeX and pdfTeX) - \setnonasciicharscatcode\active - % since we already invoked \utfeightchardefs at the top level - % (below), do not re-invoke it, otherwise our check for duplicated - % definitions gets triggered. Making non-ascii chars active is - % sufficient. - \fi - % - \else - \message{Ignoring unknown document encoding: #1.}% - % - \fi % utfeight - \fi % latnine - \fi % latone - \fi % lattwo - \fi % ascii - % - \ifx\XeTeXrevision\thisisundefined - \else - \ifx \declaredencoding \utfeight - \else - \ifx \declaredencoding \ascii - \else - \message{Warning: XeTeX with non-UTF-8 encodings cannot handle % - non-ASCII characters in auxiliary files.}% - \fi - \fi - \fi -} - -% emacs-page -% A message to be logged when using a character that isn't available -% the default font encoding (OT1). -% -\def\missingcharmsg#1{\message{Character missing, sorry: #1.}} - -% Take account of \c (plain) vs. \, (Texinfo) difference. -\def\cedilla#1{\ifx\c\ptexc\c{#1}\else\,{#1}\fi} - -% First, make active non-ASCII characters in order for them to be -% correctly categorized when TeX reads the replacement text of -% macros containing the character definitions. -\setnonasciicharscatcode\active -% - -\def\gdefchar#1#2{% -\gdef#1{% - \ifpassthroughchars - \string#1% - \else - #2% - \fi -}} - -% Latin1 (ISO-8859-1) character definitions. -\def\latonechardefs{% - \gdefchar^^a0{\tie} - \gdefchar^^a1{\exclamdown} - \gdefchar^^a2{{\tcfont \char162}} % cent - \gdefchar^^a3{\pounds{}} - \gdefchar^^a4{{\tcfont \char164}} % currency - \gdefchar^^a5{{\tcfont \char165}} % yen - \gdefchar^^a6{{\tcfont \char166}} % broken bar - \gdefchar^^a7{\S} - \gdefchar^^a8{\"{}} - \gdefchar^^a9{\copyright{}} - \gdefchar^^aa{\ordf} - \gdefchar^^ab{\guillemetleft{}} - \gdefchar^^ac{\ensuremath\lnot} - \gdefchar^^ad{\-} - \gdefchar^^ae{\registeredsymbol{}} - \gdefchar^^af{\={}} - % - \gdefchar^^b0{\textdegree} - \gdefchar^^b1{$\pm$} - \gdefchar^^b2{$^2$} - \gdefchar^^b3{$^3$} - \gdefchar^^b4{\'{}} - \gdefchar^^b5{$\mu$} - \gdefchar^^b6{\P} - \gdefchar^^b7{\ensuremath\cdot} - \gdefchar^^b8{\cedilla\ } - \gdefchar^^b9{$^1$} - \gdefchar^^ba{\ordm} - \gdefchar^^bb{\guillemetright{}} - \gdefchar^^bc{$1\over4$} - \gdefchar^^bd{$1\over2$} - \gdefchar^^be{$3\over4$} - \gdefchar^^bf{\questiondown} - % - \gdefchar^^c0{\`A} - \gdefchar^^c1{\'A} - \gdefchar^^c2{\^A} - \gdefchar^^c3{\~A} - \gdefchar^^c4{\"A} - \gdefchar^^c5{\ringaccent A} - \gdefchar^^c6{\AE} - \gdefchar^^c7{\cedilla C} - \gdefchar^^c8{\`E} - \gdefchar^^c9{\'E} - \gdefchar^^ca{\^E} - \gdefchar^^cb{\"E} - \gdefchar^^cc{\`I} - \gdefchar^^cd{\'I} - \gdefchar^^ce{\^I} - \gdefchar^^cf{\"I} - % - \gdefchar^^d0{\DH} - \gdefchar^^d1{\~N} - \gdefchar^^d2{\`O} - \gdefchar^^d3{\'O} - \gdefchar^^d4{\^O} - \gdefchar^^d5{\~O} - \gdefchar^^d6{\"O} - \gdefchar^^d7{$\times$} - \gdefchar^^d8{\O} - \gdefchar^^d9{\`U} - \gdefchar^^da{\'U} - \gdefchar^^db{\^U} - \gdefchar^^dc{\"U} - \gdefchar^^dd{\'Y} - \gdefchar^^de{\TH} - \gdefchar^^df{\ss} - % - \gdefchar^^e0{\`a} - \gdefchar^^e1{\'a} - \gdefchar^^e2{\^a} - \gdefchar^^e3{\~a} - \gdefchar^^e4{\"a} - \gdefchar^^e5{\ringaccent a} - \gdefchar^^e6{\ae} - \gdefchar^^e7{\cedilla c} - \gdefchar^^e8{\`e} - \gdefchar^^e9{\'e} - \gdefchar^^ea{\^e} - \gdefchar^^eb{\"e} - \gdefchar^^ec{\`{\dotless i}} - \gdefchar^^ed{\'{\dotless i}} - \gdefchar^^ee{\^{\dotless i}} - \gdefchar^^ef{\"{\dotless i}} - % - \gdefchar^^f0{\dh} - \gdefchar^^f1{\~n} - \gdefchar^^f2{\`o} - \gdefchar^^f3{\'o} - \gdefchar^^f4{\^o} - \gdefchar^^f5{\~o} - \gdefchar^^f6{\"o} - \gdefchar^^f7{$\div$} - \gdefchar^^f8{\o} - \gdefchar^^f9{\`u} - \gdefchar^^fa{\'u} - \gdefchar^^fb{\^u} - \gdefchar^^fc{\"u} - \gdefchar^^fd{\'y} - \gdefchar^^fe{\th} - \gdefchar^^ff{\"y} -} - -% Latin9 (ISO-8859-15) encoding character definitions. -\def\latninechardefs{% - % Encoding is almost identical to Latin1. - \latonechardefs - % - \gdefchar^^a4{\euro{}} - \gdefchar^^a6{\v S} - \gdefchar^^a8{\v s} - \gdefchar^^b4{\v Z} - \gdefchar^^b8{\v z} - \gdefchar^^bc{\OE} - \gdefchar^^bd{\oe} - \gdefchar^^be{\"Y} -} - -% Latin2 (ISO-8859-2) character definitions. -\def\lattwochardefs{% - \gdefchar^^a0{\tie} - \gdefchar^^a1{\ogonek{A}} - \gdefchar^^a2{\u{}} - \gdefchar^^a3{\L} - \gdefchar^^a4{\missingcharmsg{CURRENCY SIGN}} - \gdefchar^^a5{\v L} - \gdefchar^^a6{\'S} - \gdefchar^^a7{\S} - \gdefchar^^a8{\"{}} - \gdefchar^^a9{\v S} - \gdefchar^^aa{\cedilla S} - \gdefchar^^ab{\v T} - \gdefchar^^ac{\'Z} - \gdefchar^^ad{\-} - \gdefchar^^ae{\v Z} - \gdefchar^^af{\dotaccent Z} - % - \gdefchar^^b0{\textdegree{}} - \gdefchar^^b1{\ogonek{a}} - \gdefchar^^b2{\ogonek{ }} - \gdefchar^^b3{\l} - \gdefchar^^b4{\'{}} - \gdefchar^^b5{\v l} - \gdefchar^^b6{\'s} - \gdefchar^^b7{\v{}} - \gdefchar^^b8{\cedilla\ } - \gdefchar^^b9{\v s} - \gdefchar^^ba{\cedilla s} - \gdefchar^^bb{\v t} - \gdefchar^^bc{\'z} - \gdefchar^^bd{\H{}} - \gdefchar^^be{\v z} - \gdefchar^^bf{\dotaccent z} - % - \gdefchar^^c0{\'R} - \gdefchar^^c1{\'A} - \gdefchar^^c2{\^A} - \gdefchar^^c3{\u A} - \gdefchar^^c4{\"A} - \gdefchar^^c5{\'L} - \gdefchar^^c6{\'C} - \gdefchar^^c7{\cedilla C} - \gdefchar^^c8{\v C} - \gdefchar^^c9{\'E} - \gdefchar^^ca{\ogonek{E}} - \gdefchar^^cb{\"E} - \gdefchar^^cc{\v E} - \gdefchar^^cd{\'I} - \gdefchar^^ce{\^I} - \gdefchar^^cf{\v D} - % - \gdefchar^^d0{\DH} - \gdefchar^^d1{\'N} - \gdefchar^^d2{\v N} - \gdefchar^^d3{\'O} - \gdefchar^^d4{\^O} - \gdefchar^^d5{\H O} - \gdefchar^^d6{\"O} - \gdefchar^^d7{$\times$} - \gdefchar^^d8{\v R} - \gdefchar^^d9{\ringaccent U} - \gdefchar^^da{\'U} - \gdefchar^^db{\H U} - \gdefchar^^dc{\"U} - \gdefchar^^dd{\'Y} - \gdefchar^^de{\cedilla T} - \gdefchar^^df{\ss} - % - \gdefchar^^e0{\'r} - \gdefchar^^e1{\'a} - \gdefchar^^e2{\^a} - \gdefchar^^e3{\u a} - \gdefchar^^e4{\"a} - \gdefchar^^e5{\'l} - \gdefchar^^e6{\'c} - \gdefchar^^e7{\cedilla c} - \gdefchar^^e8{\v c} - \gdefchar^^e9{\'e} - \gdefchar^^ea{\ogonek{e}} - \gdefchar^^eb{\"e} - \gdefchar^^ec{\v e} - \gdefchar^^ed{\'{\dotless{i}}} - \gdefchar^^ee{\^{\dotless{i}}} - \gdefchar^^ef{\v d} - % - \gdefchar^^f0{\dh} - \gdefchar^^f1{\'n} - \gdefchar^^f2{\v n} - \gdefchar^^f3{\'o} - \gdefchar^^f4{\^o} - \gdefchar^^f5{\H o} - \gdefchar^^f6{\"o} - \gdefchar^^f7{$\div$} - \gdefchar^^f8{\v r} - \gdefchar^^f9{\ringaccent u} - \gdefchar^^fa{\'u} - \gdefchar^^fb{\H u} - \gdefchar^^fc{\"u} - \gdefchar^^fd{\'y} - \gdefchar^^fe{\cedilla t} - \gdefchar^^ff{\dotaccent{}} -} - -% UTF-8 character definitions. -% -% This code to support UTF-8 is based on LaTeX's utf8.def, with some -% changes for Texinfo conventions. It is included here under the GPL by -% permission from Frank Mittelbach and the LaTeX team. -% -\newcount\countUTFx -\newcount\countUTFy -\newcount\countUTFz - -\gdef\UTFviiiTwoOctets#1#2{\expandafter - \UTFviiiDefined\csname u8:#1\string #2\endcsname} -% -\gdef\UTFviiiThreeOctets#1#2#3{\expandafter - \UTFviiiDefined\csname u8:#1\string #2\string #3\endcsname} -% -\gdef\UTFviiiFourOctets#1#2#3#4{\expandafter - \UTFviiiDefined\csname u8:#1\string #2\string #3\string #4\endcsname} - -\gdef\UTFviiiDefined#1{% - \ifx #1\relax - \message{\linenumber Unicode char \string #1 not defined for Texinfo}% - \else - \expandafter #1% - \fi -} - -% Give non-ASCII bytes the active definitions for processing UTF-8 sequences -\begingroup - \catcode`\~13 - \catcode`\$12 - \catcode`\"12 - - % Loop from \countUTFx to \countUTFy, performing \UTFviiiTmp - % substituting ~ and $ with a character token of that value. - \def\UTFviiiLoop{% - \global\catcode\countUTFx\active - \uccode`\~\countUTFx - \uccode`\$\countUTFx - \uppercase\expandafter{\UTFviiiTmp}% - \advance\countUTFx by 1 - \ifnum\countUTFx < \countUTFy - \expandafter\UTFviiiLoop - \fi} - - % For bytes other than the first in a UTF-8 sequence. Not expected to - % be expanded except when writing to auxiliary files. - \countUTFx = "80 - \countUTFy = "C2 - \def\UTFviiiTmp{% - \gdef~{% - \ifpassthroughchars $\fi}}% - \UTFviiiLoop - - \countUTFx = "C2 - \countUTFy = "E0 - \def\UTFviiiTmp{% - \gdef~{% - \ifpassthroughchars $% - \else\expandafter\UTFviiiTwoOctets\expandafter$\fi}}% - \UTFviiiLoop - - \countUTFx = "E0 - \countUTFy = "F0 - \def\UTFviiiTmp{% - \gdef~{% - \ifpassthroughchars $% - \else\expandafter\UTFviiiThreeOctets\expandafter$\fi}}% - \UTFviiiLoop - - \countUTFx = "F0 - \countUTFy = "F4 - \def\UTFviiiTmp{% - \gdef~{% - \ifpassthroughchars $% - \else\expandafter\UTFviiiFourOctets\expandafter$\fi - }}% - \UTFviiiLoop -\endgroup - -\def\globallet{\global\let} % save some \expandafter's below - -% @U{xxxx} to produce U+xxxx, if we support it. -\def\U#1{% - \expandafter\ifx\csname uni:#1\endcsname \relax - \iftxinativeunicodecapable - % All Unicode characters can be used if native Unicode handling is - % active. However, if the font does not have the glyph, - % letters are missing. - \begingroup - \uccode`\.="#1\relax - \uppercase{.} - \endgroup - \else - \errhelp = \EMsimple - \errmessage{Unicode character U+#1 not supported, sorry}% - \fi - \else - \csname uni:#1\endcsname - \fi -} - -% These macros are used here to construct the name of a control -% sequence to be defined. -\def\UTFviiiTwoOctetsName#1#2{% - \csname u8:#1\string #2\endcsname}% -\def\UTFviiiThreeOctetsName#1#2#3{% - \csname u8:#1\string #2\string #3\endcsname}% -\def\UTFviiiFourOctetsName#1#2#3#4{% - \csname u8:#1\string #2\string #3\string #4\endcsname}% - -% For UTF-8 byte sequences (TeX, e-TeX and pdfTeX), -% provide a definition macro to replace a Unicode character; -% this gets used by the @U command -% -\begingroup - \catcode`\"=12 - \catcode`\<=12 - \catcode`\.=12 - \catcode`\,=12 - \catcode`\;=12 - \catcode`\!=12 - \catcode`\~=13 - \gdef\DeclareUnicodeCharacterUTFviii#1#2{% - \countUTFz = "#1\relax - \begingroup - \parseXMLCharref - - % Give \u8:... its definition. The sequence of seven \expandafter's - % expands after the \gdef three times, e.g. - % - % 1. \UTFviiTwoOctetsName B1 B2 - % 2. \csname u8:B1 \string B2 \endcsname - % 3. \u8: B1 B2 (a single control sequence token) - % - \expandafter\expandafter - \expandafter\expandafter - \expandafter\expandafter - \expandafter\gdef \UTFviiiTmp{#2}% - % - \expandafter\ifx\csname uni:#1\endcsname \relax \else - \message{Internal error, already defined: #1}% - \fi - % - % define an additional control sequence for this code point. - \expandafter\globallet\csname uni:#1\endcsname \UTFviiiTmp - \endgroup} - % - % Given the value in \countUTFz as a Unicode code point, set \UTFviiiTmp - % to the corresponding UTF-8 sequence. - \gdef\parseXMLCharref{% - \ifnum\countUTFz < "A0\relax - \errhelp = \EMsimple - \errmessage{Cannot define Unicode char value < 00A0}% - \else\ifnum\countUTFz < "800\relax - \parseUTFviiiA,% - \parseUTFviiiB C\UTFviiiTwoOctetsName.,% - \else\ifnum\countUTFz < "10000\relax - \parseUTFviiiA;% - \parseUTFviiiA,% - \parseUTFviiiB E\UTFviiiThreeOctetsName.{,;}% - \else - \parseUTFviiiA;% - \parseUTFviiiA,% - \parseUTFviiiA!% - \parseUTFviiiB F\UTFviiiFourOctetsName.{!,;}% - \fi\fi\fi - } - - % Extract a byte from the end of the UTF-8 representation of \countUTFx. - % It must be a non-initial byte in the sequence. - % Change \uccode of #1 for it to be used in \parseUTFviiiB as one - % of the bytes. - \gdef\parseUTFviiiA#1{% - \countUTFx = \countUTFz - \divide\countUTFz by 64 - \countUTFy = \countUTFz % Save to be the future value of \countUTFz. - \multiply\countUTFz by 64 - - % \countUTFz is now \countUTFx with the last 5 bits cleared. Subtract - % in order to get the last five bits. - \advance\countUTFx by -\countUTFz - - % Convert this to the byte in the UTF-8 sequence. - \advance\countUTFx by 128 - \uccode `#1\countUTFx - \countUTFz = \countUTFy} - - % Used to put a UTF-8 byte sequence into \UTFviiiTmp - % #1 is the increment for \countUTFz to yield a the first byte of the UTF-8 - % sequence. - % #2 is one of the \UTFviii*OctetsName macros. - % #3 is always a full stop (.) - % #4 is a template for the other bytes in the sequence. The values for these - % bytes is substituted in here with \uppercase using the \uccode's. - \gdef\parseUTFviiiB#1#2#3#4{% - \advance\countUTFz by "#10\relax - \uccode `#3\countUTFz - \uppercase{\gdef\UTFviiiTmp{#2#3#4}}} -\endgroup - -% For native Unicode handling (XeTeX and LuaTeX), -% provide a definition macro that sets a catcode to `other' non-globally -% -\def\DeclareUnicodeCharacterNativeOther#1#2{% - \catcode"#1=\other -} - -% https://en.wikipedia.org/wiki/Plane_(Unicode)#Basic_M -% U+0000..U+007F = https://en.wikipedia.org/wiki/Basic_Latin_(Unicode_block) -% U+0080..U+00FF = https://en.wikipedia.org/wiki/Latin-1_Supplement_(Unicode_block) -% U+0100..U+017F = https://en.wikipedia.org/wiki/Latin_Extended-A -% U+0180..U+024F = https://en.wikipedia.org/wiki/Latin_Extended-B -% -% Many of our renditions are less than wonderful, and all the missing -% characters are available somewhere. Loading the necessary fonts -% awaits user request. We can't truly support Unicode without -% reimplementing everything that's been done in LaTeX for many years, -% plus probably using luatex or xetex, and who knows what else. -% We won't be doing that here in this simple file. But we can try to at -% least make most of the characters not bomb out. -% -\def\unicodechardefs{% - \DeclareUnicodeCharacter{00A0}{\tie}% - \DeclareUnicodeCharacter{00A1}{\exclamdown}% - \DeclareUnicodeCharacter{00A2}{{\tcfont \char162}}% 0242=cent - \DeclareUnicodeCharacter{00A3}{\pounds{}}% - \DeclareUnicodeCharacter{00A4}{{\tcfont \char164}}% 0244=currency - \DeclareUnicodeCharacter{00A5}{{\tcfont \char165}}% 0245=yen - \DeclareUnicodeCharacter{00A6}{{\tcfont \char166}}% 0246=brokenbar - \DeclareUnicodeCharacter{00A7}{\S}% - \DeclareUnicodeCharacter{00A8}{\"{ }}% - \DeclareUnicodeCharacter{00A9}{\copyright{}}% - \DeclareUnicodeCharacter{00AA}{\ordf}% - \DeclareUnicodeCharacter{00AB}{\guillemetleft{}}% - \DeclareUnicodeCharacter{00AC}{\ensuremath\lnot}% - \DeclareUnicodeCharacter{00AD}{\-}% - \DeclareUnicodeCharacter{00AE}{\registeredsymbol{}}% - \DeclareUnicodeCharacter{00AF}{\={ }}% - % - \DeclareUnicodeCharacter{00B0}{\ringaccent{ }}% - \DeclareUnicodeCharacter{00B1}{\ensuremath\pm}% - \DeclareUnicodeCharacter{00B2}{$^2$}% - \DeclareUnicodeCharacter{00B3}{$^3$}% - \DeclareUnicodeCharacter{00B4}{\'{ }}% - \DeclareUnicodeCharacter{00B5}{$\mu$}% - \DeclareUnicodeCharacter{00B6}{\P}% - \DeclareUnicodeCharacter{00B7}{\ensuremath\cdot}% - \DeclareUnicodeCharacter{00B8}{\cedilla{ }}% - \DeclareUnicodeCharacter{00B9}{$^1$}% - \DeclareUnicodeCharacter{00BA}{\ordm}% - \DeclareUnicodeCharacter{00BB}{\guillemetright{}}% - \DeclareUnicodeCharacter{00BC}{$1\over4$}% - \DeclareUnicodeCharacter{00BD}{$1\over2$}% - \DeclareUnicodeCharacter{00BE}{$3\over4$}% - \DeclareUnicodeCharacter{00BF}{\questiondown}% - % - \DeclareUnicodeCharacter{00C0}{\`A}% - \DeclareUnicodeCharacter{00C1}{\'A}% - \DeclareUnicodeCharacter{00C2}{\^A}% - \DeclareUnicodeCharacter{00C3}{\~A}% - \DeclareUnicodeCharacter{00C4}{\"A}% - \DeclareUnicodeCharacter{00C5}{\AA}% - \DeclareUnicodeCharacter{00C6}{\AE}% - \DeclareUnicodeCharacter{00C7}{\cedilla{C}}% - \DeclareUnicodeCharacter{00C8}{\`E}% - \DeclareUnicodeCharacter{00C9}{\'E}% - \DeclareUnicodeCharacter{00CA}{\^E}% - \DeclareUnicodeCharacter{00CB}{\"E}% - \DeclareUnicodeCharacter{00CC}{\`I}% - \DeclareUnicodeCharacter{00CD}{\'I}% - \DeclareUnicodeCharacter{00CE}{\^I}% - \DeclareUnicodeCharacter{00CF}{\"I}% - % - \DeclareUnicodeCharacter{00D0}{\DH}% - \DeclareUnicodeCharacter{00D1}{\~N}% - \DeclareUnicodeCharacter{00D2}{\`O}% - \DeclareUnicodeCharacter{00D3}{\'O}% - \DeclareUnicodeCharacter{00D4}{\^O}% - \DeclareUnicodeCharacter{00D5}{\~O}% - \DeclareUnicodeCharacter{00D6}{\"O}% - \DeclareUnicodeCharacter{00D7}{\ensuremath\times}% - \DeclareUnicodeCharacter{00D8}{\O}% - \DeclareUnicodeCharacter{00D9}{\`U}% - \DeclareUnicodeCharacter{00DA}{\'U}% - \DeclareUnicodeCharacter{00DB}{\^U}% - \DeclareUnicodeCharacter{00DC}{\"U}% - \DeclareUnicodeCharacter{00DD}{\'Y}% - \DeclareUnicodeCharacter{00DE}{\TH}% - \DeclareUnicodeCharacter{00DF}{\ss}% - % - \DeclareUnicodeCharacter{00E0}{\`a}% - \DeclareUnicodeCharacter{00E1}{\'a}% - \DeclareUnicodeCharacter{00E2}{\^a}% - \DeclareUnicodeCharacter{00E3}{\~a}% - \DeclareUnicodeCharacter{00E4}{\"a}% - \DeclareUnicodeCharacter{00E5}{\aa}% - \DeclareUnicodeCharacter{00E6}{\ae}% - \DeclareUnicodeCharacter{00E7}{\cedilla{c}}% - \DeclareUnicodeCharacter{00E8}{\`e}% - \DeclareUnicodeCharacter{00E9}{\'e}% - \DeclareUnicodeCharacter{00EA}{\^e}% - \DeclareUnicodeCharacter{00EB}{\"e}% - \DeclareUnicodeCharacter{00EC}{\`{\dotless{i}}}% - \DeclareUnicodeCharacter{00ED}{\'{\dotless{i}}}% - \DeclareUnicodeCharacter{00EE}{\^{\dotless{i}}}% - \DeclareUnicodeCharacter{00EF}{\"{\dotless{i}}}% - % - \DeclareUnicodeCharacter{00F0}{\dh}% - \DeclareUnicodeCharacter{00F1}{\~n}% - \DeclareUnicodeCharacter{00F2}{\`o}% - \DeclareUnicodeCharacter{00F3}{\'o}% - \DeclareUnicodeCharacter{00F4}{\^o}% - \DeclareUnicodeCharacter{00F5}{\~o}% - \DeclareUnicodeCharacter{00F6}{\"o}% - \DeclareUnicodeCharacter{00F7}{\ensuremath\div}% - \DeclareUnicodeCharacter{00F8}{\o}% - \DeclareUnicodeCharacter{00F9}{\`u}% - \DeclareUnicodeCharacter{00FA}{\'u}% - \DeclareUnicodeCharacter{00FB}{\^u}% - \DeclareUnicodeCharacter{00FC}{\"u}% - \DeclareUnicodeCharacter{00FD}{\'y}% - \DeclareUnicodeCharacter{00FE}{\th}% - \DeclareUnicodeCharacter{00FF}{\"y}% - % - \DeclareUnicodeCharacter{0100}{\=A}% - \DeclareUnicodeCharacter{0101}{\=a}% - \DeclareUnicodeCharacter{0102}{\u{A}}% - \DeclareUnicodeCharacter{0103}{\u{a}}% - \DeclareUnicodeCharacter{0104}{\ogonek{A}}% - \DeclareUnicodeCharacter{0105}{\ogonek{a}}% - \DeclareUnicodeCharacter{0106}{\'C}% - \DeclareUnicodeCharacter{0107}{\'c}% - \DeclareUnicodeCharacter{0108}{\^C}% - \DeclareUnicodeCharacter{0109}{\^c}% - \DeclareUnicodeCharacter{010A}{\dotaccent{C}}% - \DeclareUnicodeCharacter{010B}{\dotaccent{c}}% - \DeclareUnicodeCharacter{010C}{\v{C}}% - \DeclareUnicodeCharacter{010D}{\v{c}}% - \DeclareUnicodeCharacter{010E}{\v{D}}% - \DeclareUnicodeCharacter{010F}{d'}% - % - \DeclareUnicodeCharacter{0110}{\DH}% - \DeclareUnicodeCharacter{0111}{\dh}% - \DeclareUnicodeCharacter{0112}{\=E}% - \DeclareUnicodeCharacter{0113}{\=e}% - \DeclareUnicodeCharacter{0114}{\u{E}}% - \DeclareUnicodeCharacter{0115}{\u{e}}% - \DeclareUnicodeCharacter{0116}{\dotaccent{E}}% - \DeclareUnicodeCharacter{0117}{\dotaccent{e}}% - \DeclareUnicodeCharacter{0118}{\ogonek{E}}% - \DeclareUnicodeCharacter{0119}{\ogonek{e}}% - \DeclareUnicodeCharacter{011A}{\v{E}}% - \DeclareUnicodeCharacter{011B}{\v{e}}% - \DeclareUnicodeCharacter{011C}{\^G}% - \DeclareUnicodeCharacter{011D}{\^g}% - \DeclareUnicodeCharacter{011E}{\u{G}}% - \DeclareUnicodeCharacter{011F}{\u{g}}% - % - \DeclareUnicodeCharacter{0120}{\dotaccent{G}}% - \DeclareUnicodeCharacter{0121}{\dotaccent{g}}% - \DeclareUnicodeCharacter{0122}{\cedilla{G}}% - \DeclareUnicodeCharacter{0123}{\cedilla{g}}% - \DeclareUnicodeCharacter{0124}{\^H}% - \DeclareUnicodeCharacter{0125}{\^h}% - \DeclareUnicodeCharacter{0126}{\missingcharmsg{H WITH STROKE}}% - \DeclareUnicodeCharacter{0127}{\missingcharmsg{h WITH STROKE}}% - \DeclareUnicodeCharacter{0128}{\~I}% - \DeclareUnicodeCharacter{0129}{\~{\dotless{i}}}% - \DeclareUnicodeCharacter{012A}{\=I}% - \DeclareUnicodeCharacter{012B}{\={\dotless{i}}}% - \DeclareUnicodeCharacter{012C}{\u{I}}% - \DeclareUnicodeCharacter{012D}{\u{\dotless{i}}}% - \DeclareUnicodeCharacter{012E}{\ogonek{I}}% - \DeclareUnicodeCharacter{012F}{\ogonek{i}}% - % - \DeclareUnicodeCharacter{0130}{\dotaccent{I}}% - \DeclareUnicodeCharacter{0131}{\dotless{i}}% - \DeclareUnicodeCharacter{0132}{IJ}% - \DeclareUnicodeCharacter{0133}{ij}% - \DeclareUnicodeCharacter{0134}{\^J}% - \DeclareUnicodeCharacter{0135}{\^{\dotless{j}}}% - \DeclareUnicodeCharacter{0136}{\cedilla{K}}% - \DeclareUnicodeCharacter{0137}{\cedilla{k}}% - \DeclareUnicodeCharacter{0138}{\ensuremath\kappa}% - \DeclareUnicodeCharacter{0139}{\'L}% - \DeclareUnicodeCharacter{013A}{\'l}% - \DeclareUnicodeCharacter{013B}{\cedilla{L}}% - \DeclareUnicodeCharacter{013C}{\cedilla{l}}% - \DeclareUnicodeCharacter{013D}{L'}% should kern - \DeclareUnicodeCharacter{013E}{l'}% should kern - \DeclareUnicodeCharacter{013F}{L\U{00B7}}% - % - \DeclareUnicodeCharacter{0140}{l\U{00B7}}% - \DeclareUnicodeCharacter{0141}{\L}% - \DeclareUnicodeCharacter{0142}{\l}% - \DeclareUnicodeCharacter{0143}{\'N}% - \DeclareUnicodeCharacter{0144}{\'n}% - \DeclareUnicodeCharacter{0145}{\cedilla{N}}% - \DeclareUnicodeCharacter{0146}{\cedilla{n}}% - \DeclareUnicodeCharacter{0147}{\v{N}}% - \DeclareUnicodeCharacter{0148}{\v{n}}% - \DeclareUnicodeCharacter{0149}{'n}% - \DeclareUnicodeCharacter{014A}{\missingcharmsg{ENG}}% - \DeclareUnicodeCharacter{014B}{\missingcharmsg{eng}}% - \DeclareUnicodeCharacter{014C}{\=O}% - \DeclareUnicodeCharacter{014D}{\=o}% - \DeclareUnicodeCharacter{014E}{\u{O}}% - \DeclareUnicodeCharacter{014F}{\u{o}}% - % - \DeclareUnicodeCharacter{0150}{\H{O}}% - \DeclareUnicodeCharacter{0151}{\H{o}}% - \DeclareUnicodeCharacter{0152}{\OE}% - \DeclareUnicodeCharacter{0153}{\oe}% - \DeclareUnicodeCharacter{0154}{\'R}% - \DeclareUnicodeCharacter{0155}{\'r}% - \DeclareUnicodeCharacter{0156}{\cedilla{R}}% - \DeclareUnicodeCharacter{0157}{\cedilla{r}}% - \DeclareUnicodeCharacter{0158}{\v{R}}% - \DeclareUnicodeCharacter{0159}{\v{r}}% - \DeclareUnicodeCharacter{015A}{\'S}% - \DeclareUnicodeCharacter{015B}{\'s}% - \DeclareUnicodeCharacter{015C}{\^S}% - \DeclareUnicodeCharacter{015D}{\^s}% - \DeclareUnicodeCharacter{015E}{\cedilla{S}}% - \DeclareUnicodeCharacter{015F}{\cedilla{s}}% - % - \DeclareUnicodeCharacter{0160}{\v{S}}% - \DeclareUnicodeCharacter{0161}{\v{s}}% - \DeclareUnicodeCharacter{0162}{\cedilla{T}}% - \DeclareUnicodeCharacter{0163}{\cedilla{t}}% - \DeclareUnicodeCharacter{0164}{\v{T}}% - \DeclareUnicodeCharacter{0165}{\v{t}}% - \DeclareUnicodeCharacter{0166}{\missingcharmsg{H WITH STROKE}}% - \DeclareUnicodeCharacter{0167}{\missingcharmsg{h WITH STROKE}}% - \DeclareUnicodeCharacter{0168}{\~U}% - \DeclareUnicodeCharacter{0169}{\~u}% - \DeclareUnicodeCharacter{016A}{\=U}% - \DeclareUnicodeCharacter{016B}{\=u}% - \DeclareUnicodeCharacter{016C}{\u{U}}% - \DeclareUnicodeCharacter{016D}{\u{u}}% - \DeclareUnicodeCharacter{016E}{\ringaccent{U}}% - \DeclareUnicodeCharacter{016F}{\ringaccent{u}}% - % - \DeclareUnicodeCharacter{0170}{\H{U}}% - \DeclareUnicodeCharacter{0171}{\H{u}}% - \DeclareUnicodeCharacter{0172}{\ogonek{U}}% - \DeclareUnicodeCharacter{0173}{\ogonek{u}}% - \DeclareUnicodeCharacter{0174}{\^W}% - \DeclareUnicodeCharacter{0175}{\^w}% - \DeclareUnicodeCharacter{0176}{\^Y}% - \DeclareUnicodeCharacter{0177}{\^y}% - \DeclareUnicodeCharacter{0178}{\"Y}% - \DeclareUnicodeCharacter{0179}{\'Z}% - \DeclareUnicodeCharacter{017A}{\'z}% - \DeclareUnicodeCharacter{017B}{\dotaccent{Z}}% - \DeclareUnicodeCharacter{017C}{\dotaccent{z}}% - \DeclareUnicodeCharacter{017D}{\v{Z}}% - \DeclareUnicodeCharacter{017E}{\v{z}}% - \DeclareUnicodeCharacter{017F}{\missingcharmsg{LONG S}}% - % - \DeclareUnicodeCharacter{01C4}{D\v{Z}}% - \DeclareUnicodeCharacter{01C5}{D\v{z}}% - \DeclareUnicodeCharacter{01C6}{d\v{z}}% - \DeclareUnicodeCharacter{01C7}{LJ}% - \DeclareUnicodeCharacter{01C8}{Lj}% - \DeclareUnicodeCharacter{01C9}{lj}% - \DeclareUnicodeCharacter{01CA}{NJ}% - \DeclareUnicodeCharacter{01CB}{Nj}% - \DeclareUnicodeCharacter{01CC}{nj}% - \DeclareUnicodeCharacter{01CD}{\v{A}}% - \DeclareUnicodeCharacter{01CE}{\v{a}}% - \DeclareUnicodeCharacter{01CF}{\v{I}}% - % - \DeclareUnicodeCharacter{01D0}{\v{\dotless{i}}}% - \DeclareUnicodeCharacter{01D1}{\v{O}}% - \DeclareUnicodeCharacter{01D2}{\v{o}}% - \DeclareUnicodeCharacter{01D3}{\v{U}}% - \DeclareUnicodeCharacter{01D4}{\v{u}}% - % - \DeclareUnicodeCharacter{01E2}{\={\AE}}% - \DeclareUnicodeCharacter{01E3}{\={\ae}}% - \DeclareUnicodeCharacter{01E6}{\v{G}}% - \DeclareUnicodeCharacter{01E7}{\v{g}}% - \DeclareUnicodeCharacter{01E8}{\v{K}}% - \DeclareUnicodeCharacter{01E9}{\v{k}}% - % - \DeclareUnicodeCharacter{01F0}{\v{\dotless{j}}}% - \DeclareUnicodeCharacter{01F1}{DZ}% - \DeclareUnicodeCharacter{01F2}{Dz}% - \DeclareUnicodeCharacter{01F3}{dz}% - \DeclareUnicodeCharacter{01F4}{\'G}% - \DeclareUnicodeCharacter{01F5}{\'g}% - \DeclareUnicodeCharacter{01F8}{\`N}% - \DeclareUnicodeCharacter{01F9}{\`n}% - \DeclareUnicodeCharacter{01FC}{\'{\AE}}% - \DeclareUnicodeCharacter{01FD}{\'{\ae}}% - \DeclareUnicodeCharacter{01FE}{\'{\O}}% - \DeclareUnicodeCharacter{01FF}{\'{\o}}% - % - \DeclareUnicodeCharacter{021E}{\v{H}}% - \DeclareUnicodeCharacter{021F}{\v{h}}% - % - \DeclareUnicodeCharacter{0226}{\dotaccent{A}}% - \DeclareUnicodeCharacter{0227}{\dotaccent{a}}% - \DeclareUnicodeCharacter{0228}{\cedilla{E}}% - \DeclareUnicodeCharacter{0229}{\cedilla{e}}% - \DeclareUnicodeCharacter{022E}{\dotaccent{O}}% - \DeclareUnicodeCharacter{022F}{\dotaccent{o}}% - % - \DeclareUnicodeCharacter{0232}{\=Y}% - \DeclareUnicodeCharacter{0233}{\=y}% - \DeclareUnicodeCharacter{0237}{\dotless{j}}% - % - \DeclareUnicodeCharacter{02DB}{\ogonek{ }}% - % - % Greek letters upper case - \DeclareUnicodeCharacter{0391}{{\it A}}% - \DeclareUnicodeCharacter{0392}{{\it B}}% - \DeclareUnicodeCharacter{0393}{\ensuremath{\mit\Gamma}}% - \DeclareUnicodeCharacter{0394}{\ensuremath{\mit\Delta}}% - \DeclareUnicodeCharacter{0395}{{\it E}}% - \DeclareUnicodeCharacter{0396}{{\it Z}}% - \DeclareUnicodeCharacter{0397}{{\it H}}% - \DeclareUnicodeCharacter{0398}{\ensuremath{\mit\Theta}}% - \DeclareUnicodeCharacter{0399}{{\it I}}% - \DeclareUnicodeCharacter{039A}{{\it K}}% - \DeclareUnicodeCharacter{039B}{\ensuremath{\mit\Lambda}}% - \DeclareUnicodeCharacter{039C}{{\it M}}% - \DeclareUnicodeCharacter{039D}{{\it N}}% - \DeclareUnicodeCharacter{039E}{\ensuremath{\mit\Xi}}% - \DeclareUnicodeCharacter{039F}{{\it O}}% - \DeclareUnicodeCharacter{03A0}{\ensuremath{\mit\Pi}}% - \DeclareUnicodeCharacter{03A1}{{\it P}}% - %\DeclareUnicodeCharacter{03A2}{} % none - corresponds to final sigma - \DeclareUnicodeCharacter{03A3}{\ensuremath{\mit\Sigma}}% - \DeclareUnicodeCharacter{03A4}{{\it T}}% - \DeclareUnicodeCharacter{03A5}{\ensuremath{\mit\Upsilon}}% - \DeclareUnicodeCharacter{03A6}{\ensuremath{\mit\Phi}}% - \DeclareUnicodeCharacter{03A7}{{\it X}}% - \DeclareUnicodeCharacter{03A8}{\ensuremath{\mit\Psi}}% - \DeclareUnicodeCharacter{03A9}{\ensuremath{\mit\Omega}}% - % - % Vowels with accents - \DeclareUnicodeCharacter{0390}{\ensuremath{\ddot{\acute\iota}}}% - \DeclareUnicodeCharacter{03AC}{\ensuremath{\acute\alpha}}% - \DeclareUnicodeCharacter{03AD}{\ensuremath{\acute\epsilon}}% - \DeclareUnicodeCharacter{03AE}{\ensuremath{\acute\eta}}% - \DeclareUnicodeCharacter{03AF}{\ensuremath{\acute\iota}}% - \DeclareUnicodeCharacter{03B0}{\ensuremath{\acute{\ddot\upsilon}}}% - % - % Standalone accent - \DeclareUnicodeCharacter{0384}{\ensuremath{\acute{\ }}}% - % - % Greek letters lower case - \DeclareUnicodeCharacter{03B1}{\ensuremath\alpha}% - \DeclareUnicodeCharacter{03B2}{\ensuremath\beta}% - \DeclareUnicodeCharacter{03B3}{\ensuremath\gamma}% - \DeclareUnicodeCharacter{03B4}{\ensuremath\delta}% - \DeclareUnicodeCharacter{03B5}{\ensuremath\epsilon}% - \DeclareUnicodeCharacter{03B6}{\ensuremath\zeta}% - \DeclareUnicodeCharacter{03B7}{\ensuremath\eta}% - \DeclareUnicodeCharacter{03B8}{\ensuremath\theta}% - \DeclareUnicodeCharacter{03B9}{\ensuremath\iota}% - \DeclareUnicodeCharacter{03BA}{\ensuremath\kappa}% - \DeclareUnicodeCharacter{03BB}{\ensuremath\lambda}% - \DeclareUnicodeCharacter{03BC}{\ensuremath\mu}% - \DeclareUnicodeCharacter{03BD}{\ensuremath\nu}% - \DeclareUnicodeCharacter{03BE}{\ensuremath\xi}% - \DeclareUnicodeCharacter{03BF}{{\it o}}% omicron - \DeclareUnicodeCharacter{03C0}{\ensuremath\pi}% - \DeclareUnicodeCharacter{03C1}{\ensuremath\rho}% - \DeclareUnicodeCharacter{03C2}{\ensuremath\varsigma}% - \DeclareUnicodeCharacter{03C3}{\ensuremath\sigma}% - \DeclareUnicodeCharacter{03C4}{\ensuremath\tau}% - \DeclareUnicodeCharacter{03C5}{\ensuremath\upsilon}% - \DeclareUnicodeCharacter{03C6}{\ensuremath\phi}% - \DeclareUnicodeCharacter{03C7}{\ensuremath\chi}% - \DeclareUnicodeCharacter{03C8}{\ensuremath\psi}% - \DeclareUnicodeCharacter{03C9}{\ensuremath\omega}% - % - % More Greek vowels with accents - \DeclareUnicodeCharacter{03CA}{\ensuremath{\ddot\iota}}% - \DeclareUnicodeCharacter{03CB}{\ensuremath{\ddot\upsilon}}% - \DeclareUnicodeCharacter{03CC}{\ensuremath{\acute o}}% - \DeclareUnicodeCharacter{03CD}{\ensuremath{\acute\upsilon}}% - \DeclareUnicodeCharacter{03CE}{\ensuremath{\acute\omega}}% - % - % Variant Greek letters - \DeclareUnicodeCharacter{03D1}{\ensuremath\vartheta}% - \DeclareUnicodeCharacter{03D6}{\ensuremath\varpi}% - \DeclareUnicodeCharacter{03F1}{\ensuremath\varrho}% - % - \DeclareUnicodeCharacter{1E02}{\dotaccent{B}}% - \DeclareUnicodeCharacter{1E03}{\dotaccent{b}}% - \DeclareUnicodeCharacter{1E04}{\udotaccent{B}}% - \DeclareUnicodeCharacter{1E05}{\udotaccent{b}}% - \DeclareUnicodeCharacter{1E06}{\ubaraccent{B}}% - \DeclareUnicodeCharacter{1E07}{\ubaraccent{b}}% - \DeclareUnicodeCharacter{1E0A}{\dotaccent{D}}% - \DeclareUnicodeCharacter{1E0B}{\dotaccent{d}}% - \DeclareUnicodeCharacter{1E0C}{\udotaccent{D}}% - \DeclareUnicodeCharacter{1E0D}{\udotaccent{d}}% - \DeclareUnicodeCharacter{1E0E}{\ubaraccent{D}}% - \DeclareUnicodeCharacter{1E0F}{\ubaraccent{d}}% - % - \DeclareUnicodeCharacter{1E1E}{\dotaccent{F}}% - \DeclareUnicodeCharacter{1E1F}{\dotaccent{f}}% - % - \DeclareUnicodeCharacter{1E20}{\=G}% - \DeclareUnicodeCharacter{1E21}{\=g}% - \DeclareUnicodeCharacter{1E22}{\dotaccent{H}}% - \DeclareUnicodeCharacter{1E23}{\dotaccent{h}}% - \DeclareUnicodeCharacter{1E24}{\udotaccent{H}}% - \DeclareUnicodeCharacter{1E25}{\udotaccent{h}}% - \DeclareUnicodeCharacter{1E26}{\"H}% - \DeclareUnicodeCharacter{1E27}{\"h}% - % - \DeclareUnicodeCharacter{1E30}{\'K}% - \DeclareUnicodeCharacter{1E31}{\'k}% - \DeclareUnicodeCharacter{1E32}{\udotaccent{K}}% - \DeclareUnicodeCharacter{1E33}{\udotaccent{k}}% - \DeclareUnicodeCharacter{1E34}{\ubaraccent{K}}% - \DeclareUnicodeCharacter{1E35}{\ubaraccent{k}}% - \DeclareUnicodeCharacter{1E36}{\udotaccent{L}}% - \DeclareUnicodeCharacter{1E37}{\udotaccent{l}}% - \DeclareUnicodeCharacter{1E3A}{\ubaraccent{L}}% - \DeclareUnicodeCharacter{1E3B}{\ubaraccent{l}}% - \DeclareUnicodeCharacter{1E3E}{\'M}% - \DeclareUnicodeCharacter{1E3F}{\'m}% - % - \DeclareUnicodeCharacter{1E40}{\dotaccent{M}}% - \DeclareUnicodeCharacter{1E41}{\dotaccent{m}}% - \DeclareUnicodeCharacter{1E42}{\udotaccent{M}}% - \DeclareUnicodeCharacter{1E43}{\udotaccent{m}}% - \DeclareUnicodeCharacter{1E44}{\dotaccent{N}}% - \DeclareUnicodeCharacter{1E45}{\dotaccent{n}}% - \DeclareUnicodeCharacter{1E46}{\udotaccent{N}}% - \DeclareUnicodeCharacter{1E47}{\udotaccent{n}}% - \DeclareUnicodeCharacter{1E48}{\ubaraccent{N}}% - \DeclareUnicodeCharacter{1E49}{\ubaraccent{n}}% - % - \DeclareUnicodeCharacter{1E54}{\'P}% - \DeclareUnicodeCharacter{1E55}{\'p}% - \DeclareUnicodeCharacter{1E56}{\dotaccent{P}}% - \DeclareUnicodeCharacter{1E57}{\dotaccent{p}}% - \DeclareUnicodeCharacter{1E58}{\dotaccent{R}}% - \DeclareUnicodeCharacter{1E59}{\dotaccent{r}}% - \DeclareUnicodeCharacter{1E5A}{\udotaccent{R}}% - \DeclareUnicodeCharacter{1E5B}{\udotaccent{r}}% - \DeclareUnicodeCharacter{1E5E}{\ubaraccent{R}}% - \DeclareUnicodeCharacter{1E5F}{\ubaraccent{r}}% - % - \DeclareUnicodeCharacter{1E60}{\dotaccent{S}}% - \DeclareUnicodeCharacter{1E61}{\dotaccent{s}}% - \DeclareUnicodeCharacter{1E62}{\udotaccent{S}}% - \DeclareUnicodeCharacter{1E63}{\udotaccent{s}}% - \DeclareUnicodeCharacter{1E6A}{\dotaccent{T}}% - \DeclareUnicodeCharacter{1E6B}{\dotaccent{t}}% - \DeclareUnicodeCharacter{1E6C}{\udotaccent{T}}% - \DeclareUnicodeCharacter{1E6D}{\udotaccent{t}}% - \DeclareUnicodeCharacter{1E6E}{\ubaraccent{T}}% - \DeclareUnicodeCharacter{1E6F}{\ubaraccent{t}}% - % - \DeclareUnicodeCharacter{1E7C}{\~V}% - \DeclareUnicodeCharacter{1E7D}{\~v}% - \DeclareUnicodeCharacter{1E7E}{\udotaccent{V}}% - \DeclareUnicodeCharacter{1E7F}{\udotaccent{v}}% - % - \DeclareUnicodeCharacter{1E80}{\`W}% - \DeclareUnicodeCharacter{1E81}{\`w}% - \DeclareUnicodeCharacter{1E82}{\'W}% - \DeclareUnicodeCharacter{1E83}{\'w}% - \DeclareUnicodeCharacter{1E84}{\"W}% - \DeclareUnicodeCharacter{1E85}{\"w}% - \DeclareUnicodeCharacter{1E86}{\dotaccent{W}}% - \DeclareUnicodeCharacter{1E87}{\dotaccent{w}}% - \DeclareUnicodeCharacter{1E88}{\udotaccent{W}}% - \DeclareUnicodeCharacter{1E89}{\udotaccent{w}}% - \DeclareUnicodeCharacter{1E8A}{\dotaccent{X}}% - \DeclareUnicodeCharacter{1E8B}{\dotaccent{x}}% - \DeclareUnicodeCharacter{1E8C}{\"X}% - \DeclareUnicodeCharacter{1E8D}{\"x}% - \DeclareUnicodeCharacter{1E8E}{\dotaccent{Y}}% - \DeclareUnicodeCharacter{1E8F}{\dotaccent{y}}% - % - \DeclareUnicodeCharacter{1E90}{\^Z}% - \DeclareUnicodeCharacter{1E91}{\^z}% - \DeclareUnicodeCharacter{1E92}{\udotaccent{Z}}% - \DeclareUnicodeCharacter{1E93}{\udotaccent{z}}% - \DeclareUnicodeCharacter{1E94}{\ubaraccent{Z}}% - \DeclareUnicodeCharacter{1E95}{\ubaraccent{z}}% - \DeclareUnicodeCharacter{1E96}{\ubaraccent{h}}% - \DeclareUnicodeCharacter{1E97}{\"t}% - \DeclareUnicodeCharacter{1E98}{\ringaccent{w}}% - \DeclareUnicodeCharacter{1E99}{\ringaccent{y}}% - % - \DeclareUnicodeCharacter{1EA0}{\udotaccent{A}}% - \DeclareUnicodeCharacter{1EA1}{\udotaccent{a}}% - % - \DeclareUnicodeCharacter{1EB8}{\udotaccent{E}}% - \DeclareUnicodeCharacter{1EB9}{\udotaccent{e}}% - \DeclareUnicodeCharacter{1EBC}{\~E}% - \DeclareUnicodeCharacter{1EBD}{\~e}% - % - \DeclareUnicodeCharacter{1ECA}{\udotaccent{I}}% - \DeclareUnicodeCharacter{1ECB}{\udotaccent{i}}% - \DeclareUnicodeCharacter{1ECC}{\udotaccent{O}}% - \DeclareUnicodeCharacter{1ECD}{\udotaccent{o}}% - % - \DeclareUnicodeCharacter{1EE4}{\udotaccent{U}}% - \DeclareUnicodeCharacter{1EE5}{\udotaccent{u}}% - % - \DeclareUnicodeCharacter{1EF2}{\`Y}% - \DeclareUnicodeCharacter{1EF3}{\`y}% - \DeclareUnicodeCharacter{1EF4}{\udotaccent{Y}}% - % - \DeclareUnicodeCharacter{1EF8}{\~Y}% - \DeclareUnicodeCharacter{1EF9}{\~y}% - % - % Punctuation - \DeclareUnicodeCharacter{2013}{--}% - \DeclareUnicodeCharacter{2014}{---}% - \DeclareUnicodeCharacter{2018}{\quoteleft{}}% - \DeclareUnicodeCharacter{2019}{\quoteright{}}% - \DeclareUnicodeCharacter{201A}{\quotesinglbase{}}% - \DeclareUnicodeCharacter{201C}{\quotedblleft{}}% - \DeclareUnicodeCharacter{201D}{\quotedblright{}}% - \DeclareUnicodeCharacter{201E}{\quotedblbase{}}% - \DeclareUnicodeCharacter{2020}{\ensuremath\dagger}% - \DeclareUnicodeCharacter{2021}{\ensuremath\ddagger}% - \DeclareUnicodeCharacter{2022}{\bullet{}}% - \DeclareUnicodeCharacter{202F}{\thinspace}% - \DeclareUnicodeCharacter{2026}{\dots{}}% - \DeclareUnicodeCharacter{2039}{\guilsinglleft{}}% - \DeclareUnicodeCharacter{203A}{\guilsinglright{}}% - % - \DeclareUnicodeCharacter{20AC}{\euro{}}% - % - \DeclareUnicodeCharacter{2192}{\expansion{}}% - \DeclareUnicodeCharacter{21D2}{\result{}}% - % - % Mathematical symbols - \DeclareUnicodeCharacter{2200}{\ensuremath\forall}% - \DeclareUnicodeCharacter{2203}{\ensuremath\exists}% - \DeclareUnicodeCharacter{2208}{\ensuremath\in}% - \DeclareUnicodeCharacter{2212}{\minus{}}% - \DeclareUnicodeCharacter{2217}{\ast}% - \DeclareUnicodeCharacter{221E}{\ensuremath\infty}% - \DeclareUnicodeCharacter{2225}{\ensuremath\parallel}% - \DeclareUnicodeCharacter{2227}{\ensuremath\wedge}% - \DeclareUnicodeCharacter{2229}{\ensuremath\cap}% - \DeclareUnicodeCharacter{2261}{\equiv{}}% - \DeclareUnicodeCharacter{2264}{\ensuremath\leq}% - \DeclareUnicodeCharacter{2265}{\ensuremath\geq}% - \DeclareUnicodeCharacter{2282}{\ensuremath\subset}% - \DeclareUnicodeCharacter{2287}{\ensuremath\supseteq}% - % - \DeclareUnicodeCharacter{2016}{\ensuremath\Vert}% - \DeclareUnicodeCharacter{2032}{\ensuremath\prime}% - \DeclareUnicodeCharacter{210F}{\ensuremath\hbar}% - \DeclareUnicodeCharacter{2111}{\ensuremath\Im}% - \DeclareUnicodeCharacter{2113}{\ensuremath\ell}% - \DeclareUnicodeCharacter{2118}{\ensuremath\wp}% - \DeclareUnicodeCharacter{211C}{\ensuremath\Re}% - \DeclareUnicodeCharacter{2135}{\ensuremath\aleph}% - \DeclareUnicodeCharacter{2190}{\ensuremath\leftarrow}% - \DeclareUnicodeCharacter{2191}{\ensuremath\uparrow}% - \DeclareUnicodeCharacter{2193}{\ensuremath\downarrow}% - \DeclareUnicodeCharacter{2194}{\ensuremath\leftrightarrow}% - \DeclareUnicodeCharacter{2195}{\ensuremath\updownarrow}% - \DeclareUnicodeCharacter{2196}{\ensuremath\nwarrow}% - \DeclareUnicodeCharacter{2197}{\ensuremath\nearrow}% - \DeclareUnicodeCharacter{2198}{\ensuremath\searrow}% - \DeclareUnicodeCharacter{2199}{\ensuremath\swarrow}% - \DeclareUnicodeCharacter{21A6}{\ensuremath\mapsto}% - \DeclareUnicodeCharacter{21A9}{\ensuremath\hookleftarrow}% - \DeclareUnicodeCharacter{21AA}{\ensuremath\hookrightarrow}% - \DeclareUnicodeCharacter{21BC}{\ensuremath\leftharpoonup}% - \DeclareUnicodeCharacter{21BD}{\ensuremath\leftharpoondown}% - \DeclareUnicodeCharacter{21C0}{\ensuremath\rightharpoonup}% - \DeclareUnicodeCharacter{21C1}{\ensuremath\rightharpoondown}% - \DeclareUnicodeCharacter{21CC}{\ensuremath\rightleftharpoons}% - \DeclareUnicodeCharacter{21D0}{\ensuremath\Leftarrow}% - \DeclareUnicodeCharacter{21D1}{\ensuremath\Uparrow}% - \DeclareUnicodeCharacter{21D3}{\ensuremath\Downarrow}% - \DeclareUnicodeCharacter{21D4}{\ensuremath\Leftrightarrow}% - \DeclareUnicodeCharacter{21D5}{\ensuremath\Updownarrow}% - \DeclareUnicodeCharacter{2202}{\ensuremath\partial}% - \DeclareUnicodeCharacter{2205}{\ensuremath\emptyset}% - \DeclareUnicodeCharacter{2207}{\ensuremath\nabla}% - \DeclareUnicodeCharacter{2209}{\ensuremath\notin}% - \DeclareUnicodeCharacter{220B}{\ensuremath\owns}% - \DeclareUnicodeCharacter{220F}{\ensuremath\prod}% - \DeclareUnicodeCharacter{2210}{\ensuremath\coprod}% - \DeclareUnicodeCharacter{2211}{\ensuremath\sum}% - \DeclareUnicodeCharacter{2213}{\ensuremath\mp}% - \DeclareUnicodeCharacter{2218}{\ensuremath\circ}% - \DeclareUnicodeCharacter{221A}{\ensuremath\surd}% - \DeclareUnicodeCharacter{221D}{\ensuremath\propto}% - \DeclareUnicodeCharacter{2220}{\ensuremath\angle}% - \DeclareUnicodeCharacter{2223}{\ensuremath\mid}% - \DeclareUnicodeCharacter{2228}{\ensuremath\vee}% - \DeclareUnicodeCharacter{222A}{\ensuremath\cup}% - \DeclareUnicodeCharacter{222B}{\ensuremath\smallint}% - \DeclareUnicodeCharacter{222E}{\ensuremath\oint}% - \DeclareUnicodeCharacter{223C}{\ensuremath\sim}% - \DeclareUnicodeCharacter{2240}{\ensuremath\wr}% - \DeclareUnicodeCharacter{2243}{\ensuremath\simeq}% - \DeclareUnicodeCharacter{2245}{\ensuremath\cong}% - \DeclareUnicodeCharacter{2248}{\ensuremath\approx}% - \DeclareUnicodeCharacter{224D}{\ensuremath\asymp}% - \DeclareUnicodeCharacter{2250}{\ensuremath\doteq}% - \DeclareUnicodeCharacter{2260}{\ensuremath\neq}% - \DeclareUnicodeCharacter{226A}{\ensuremath\ll}% - \DeclareUnicodeCharacter{226B}{\ensuremath\gg}% - \DeclareUnicodeCharacter{227A}{\ensuremath\prec}% - \DeclareUnicodeCharacter{227B}{\ensuremath\succ}% - \DeclareUnicodeCharacter{2283}{\ensuremath\supset}% - \DeclareUnicodeCharacter{2286}{\ensuremath\subseteq}% - \DeclareUnicodeCharacter{228E}{\ensuremath\uplus}% - \DeclareUnicodeCharacter{2291}{\ensuremath\sqsubseteq}% - \DeclareUnicodeCharacter{2292}{\ensuremath\sqsupseteq}% - \DeclareUnicodeCharacter{2293}{\ensuremath\sqcap}% - \DeclareUnicodeCharacter{2294}{\ensuremath\sqcup}% - \DeclareUnicodeCharacter{2295}{\ensuremath\oplus}% - \DeclareUnicodeCharacter{2296}{\ensuremath\ominus}% - \DeclareUnicodeCharacter{2297}{\ensuremath\otimes}% - \DeclareUnicodeCharacter{2298}{\ensuremath\oslash}% - \DeclareUnicodeCharacter{2299}{\ensuremath\odot}% - \DeclareUnicodeCharacter{22A2}{\ensuremath\vdash}% - \DeclareUnicodeCharacter{22A3}{\ensuremath\dashv}% - \DeclareUnicodeCharacter{22A4}{\ensuremath\ptextop}% - \DeclareUnicodeCharacter{22A5}{\ensuremath\bot}% - \DeclareUnicodeCharacter{22A8}{\ensuremath\models}% - \DeclareUnicodeCharacter{22C0}{\ensuremath\bigwedge}% - \DeclareUnicodeCharacter{22C1}{\ensuremath\bigvee}% - \DeclareUnicodeCharacter{22C2}{\ensuremath\bigcap}% - \DeclareUnicodeCharacter{22C3}{\ensuremath\bigcup}% - \DeclareUnicodeCharacter{22C4}{\ensuremath\diamond}% - \DeclareUnicodeCharacter{22C5}{\ensuremath\cdot}% - \DeclareUnicodeCharacter{22C6}{\ensuremath\star}% - \DeclareUnicodeCharacter{22C8}{\ensuremath\bowtie}% - \DeclareUnicodeCharacter{2308}{\ensuremath\lceil}% - \DeclareUnicodeCharacter{2309}{\ensuremath\rceil}% - \DeclareUnicodeCharacter{230A}{\ensuremath\lfloor}% - \DeclareUnicodeCharacter{230B}{\ensuremath\rfloor}% - \DeclareUnicodeCharacter{2322}{\ensuremath\frown}% - \DeclareUnicodeCharacter{2323}{\ensuremath\smile}% - % - \DeclareUnicodeCharacter{25B3}{\ensuremath\triangle}% - \DeclareUnicodeCharacter{25B7}{\ensuremath\triangleright}% - \DeclareUnicodeCharacter{25BD}{\ensuremath\bigtriangledown}% - \DeclareUnicodeCharacter{25C1}{\ensuremath\triangleleft}% - \DeclareUnicodeCharacter{25C7}{\ensuremath\diamond}% - \DeclareUnicodeCharacter{2660}{\ensuremath\spadesuit}% - \DeclareUnicodeCharacter{2661}{\ensuremath\heartsuit}% - \DeclareUnicodeCharacter{2662}{\ensuremath\diamondsuit}% - \DeclareUnicodeCharacter{2663}{\ensuremath\clubsuit}% - \DeclareUnicodeCharacter{266D}{\ensuremath\flat}% - \DeclareUnicodeCharacter{266E}{\ensuremath\natural}% - \DeclareUnicodeCharacter{266F}{\ensuremath\sharp}% - \DeclareUnicodeCharacter{26AA}{\ensuremath\bigcirc}% - \DeclareUnicodeCharacter{27B9}{\ensuremath\rangle}% - \DeclareUnicodeCharacter{27C2}{\ensuremath\perp}% - \DeclareUnicodeCharacter{27E8}{\ensuremath\langle}% - \DeclareUnicodeCharacter{27F5}{\ensuremath\longleftarrow}% - \DeclareUnicodeCharacter{27F6}{\ensuremath\longrightarrow}% - \DeclareUnicodeCharacter{27F7}{\ensuremath\longleftrightarrow}% - \DeclareUnicodeCharacter{27FC}{\ensuremath\longmapsto}% - \DeclareUnicodeCharacter{29F5}{\ensuremath\setminus}% - \DeclareUnicodeCharacter{2A00}{\ensuremath\bigodot}% - \DeclareUnicodeCharacter{2A01}{\ensuremath\bigoplus}% - \DeclareUnicodeCharacter{2A02}{\ensuremath\bigotimes}% - \DeclareUnicodeCharacter{2A04}{\ensuremath\biguplus}% - \DeclareUnicodeCharacter{2A06}{\ensuremath\bigsqcup}% - \DeclareUnicodeCharacter{2A3F}{\ensuremath\amalg}% - \DeclareUnicodeCharacter{2AAF}{\ensuremath\preceq}% - \DeclareUnicodeCharacter{2AB0}{\ensuremath\succeq}% - % - \global\mathchardef\checkmark="1370% actually the square root sign - \DeclareUnicodeCharacter{2713}{\ensuremath\checkmark}% -}% end of \unicodechardefs - -% UTF-8 byte sequence (pdfTeX) definitions (replacing and @U command) -% It makes the setting that replace UTF-8 byte sequence. -\def\utfeightchardefs{% - \let\DeclareUnicodeCharacter\DeclareUnicodeCharacterUTFviii - \unicodechardefs -} - -% Whether the active definitions of non-ASCII characters expand to -% non-active tokens with the same character code. This is used to -% write characters literally, instead of using active definitions for -% printing the correct glyphs. -\newif\ifpassthroughchars -\passthroughcharsfalse - -% For native Unicode handling (XeTeX and LuaTeX), -% provide a definition macro to replace/pass-through a Unicode character -% -\def\DeclareUnicodeCharacterNative#1#2{% - \catcode"#1=\active - \def\dodeclareunicodecharacternative##1##2##3{% - \begingroup - \uccode`\~="##2\relax - \uppercase{\gdef~}{% - \ifpassthroughchars - ##1% - \else - ##3% - \fi - } - \endgroup - } - \begingroup - \uccode`\.="#1\relax - \uppercase{\def\UTFNativeTmp{.}}% - \expandafter\dodeclareunicodecharacternative\UTFNativeTmp{#1}{#2}% - \endgroup -} - -% Native Unicode handling (XeTeX and LuaTeX) character replacing definition. -% It activates the setting that replaces Unicode characters. -\def\nativeunicodechardefs{% - \let\DeclareUnicodeCharacter\DeclareUnicodeCharacterNative - \unicodechardefs -} - -% For native Unicode handling (XeTeX and LuaTeX), -% make the character token expand -% to the sequences given in \unicodechardefs for printing. -\def\DeclareUnicodeCharacterNativeAtU#1#2{% - \def\UTFAtUTmp{#2} - \expandafter\globallet\csname uni:#1\endcsname \UTFAtUTmp -} - -% @U command definitions for native Unicode handling (XeTeX and LuaTeX). -\def\nativeunicodechardefsatu{% - \let\DeclareUnicodeCharacter\DeclareUnicodeCharacterNativeAtU - \unicodechardefs -} - -% US-ASCII character definitions. -\def\asciichardefs{% nothing need be done - \relax -} - -% define all Unicode characters we know about, for the sake of @U. -\iftxinativeunicodecapable - \nativeunicodechardefsatu -\else - \utfeightchardefs -\fi - - -% Make non-ASCII characters printable again for compatibility with -% existing Texinfo documents that may use them, even without declaring a -% document encoding. -% -\setnonasciicharscatcode \other - - -\message{formatting,} - -\newdimen\defaultparindent \defaultparindent = 15pt - -\chapheadingskip = 15pt plus 4pt minus 2pt -\secheadingskip = 12pt plus 3pt minus 2pt -\subsecheadingskip = 9pt plus 2pt minus 2pt - -% Prevent underfull vbox error messages. -\vbadness = 10000 - -% Don't be very finicky about underfull hboxes, either. -\hbadness = 6666 - -% Following George Bush, get rid of widows and orphans. -\widowpenalty=10000 -\clubpenalty=10000 - -% Use TeX 3.0's \emergencystretch to help line breaking, but if we're -% using an old version of TeX, don't do anything. We want the amount of -% stretch added to depend on the line length, hence the dependence on -% \hsize. We call this whenever the paper size is set. -% -\def\setemergencystretch{% - \ifx\emergencystretch\thisisundefined - % Allow us to assign to \emergencystretch anyway. - \def\emergencystretch{\dimen0}% - \else - \emergencystretch = .15\hsize - \fi -} - -% Parameters in order: 1) textheight; 2) textwidth; -% 3) voffset; 4) hoffset; 5) binding offset; 6) topskip; -% 7) physical page height; 8) physical page width. -% -% We also call \setleading{\textleading}, so the caller should define -% \textleading. The caller should also set \parskip. -% -\def\internalpagesizes#1#2#3#4#5#6#7#8{% - \voffset = #3\relax - \topskip = #6\relax - \splittopskip = \topskip - % - \vsize = #1\relax - \advance\vsize by \topskip - \outervsize = \vsize - \advance\outervsize by 2\topandbottommargin - \txipageheight = \vsize - % - \hsize = #2\relax - \outerhsize = \hsize - \advance\outerhsize by 0.5in - \txipagewidth = \hsize - % - \normaloffset = #4\relax - \bindingoffset = #5\relax - % - \ifpdf - \pdfpageheight #7\relax - \pdfpagewidth #8\relax - % if we don't reset these, they will remain at "1 true in" of - % whatever layout pdftex was dumped with. - \pdfhorigin = 1 true in - \pdfvorigin = 1 true in - \else - \ifx\XeTeXrevision\thisisundefined - \special{papersize=#8,#7}% - \else - \pdfpageheight #7\relax - \pdfpagewidth #8\relax - % XeTeX does not have \pdfhorigin and \pdfvorigin. - \fi - \fi - % - \setleading{\textleading} - % - \parindent = \defaultparindent - \setemergencystretch -} - -% @letterpaper (the default). -\def\letterpaper{{\globaldefs = 1 - \parskip = 3pt plus 2pt minus 1pt - \textleading = 13.2pt - % - % If page is nothing but text, make it come out even. - \internalpagesizes{607.2pt}{6in}% that's 46 lines - {\voffset}{.25in}% - {\bindingoffset}{36pt}% - {11in}{8.5in}% -}} - -% Use @smallbook to reset parameters for 7x9.25 trim size. -\def\smallbook{{\globaldefs = 1 - \parskip = 2pt plus 1pt - \textleading = 12pt - % - \internalpagesizes{7.5in}{5in}% - {-.2in}{0in}% - {\bindingoffset}{16pt}% - {9.25in}{7in}% - % - \lispnarrowing = 0.3in - \tolerance = 700 - \contentsrightmargin = 0pt - \defbodyindent = .5cm -}} - -% Use @smallerbook to reset parameters for 6x9 trim size. -% (Just testing, parameters still in flux.) -\def\smallerbook{{\globaldefs = 1 - \parskip = 1.5pt plus 1pt - \textleading = 12pt - % - \internalpagesizes{7.4in}{4.8in}% - {-.2in}{-.4in}% - {0pt}{14pt}% - {9in}{6in}% - % - \lispnarrowing = 0.25in - \tolerance = 700 - \contentsrightmargin = 0pt - \defbodyindent = .4cm -}} - -% Use @afourpaper to print on European A4 paper. -\def\afourpaper{{\globaldefs = 1 - \parskip = 3pt plus 2pt minus 1pt - \textleading = 13.2pt - % - % Double-side printing via postscript on Laserjet 4050 - % prints double-sided nicely when \bindingoffset=10mm and \hoffset=-6mm. - % To change the settings for a different printer or situation, adjust - % \normaloffset until the front-side and back-side texts align. Then - % do the same for \bindingoffset. You can set these for testing in - % your texinfo source file like this: - % @tex - % \global\normaloffset = -6mm - % \global\bindingoffset = 10mm - % @end tex - \internalpagesizes{673.2pt}{160mm}% that's 51 lines - {\voffset}{\hoffset}% - {\bindingoffset}{44pt}% - {297mm}{210mm}% - % - \tolerance = 700 - \contentsrightmargin = 0pt - \defbodyindent = 5mm -}} - -% Use @afivepaper to print on European A5 paper. -% From romildo@urano.iceb.ufop.br, 2 July 2000. -% He also recommends making @example and @lisp be small. -\def\afivepaper{{\globaldefs = 1 - \parskip = 2pt plus 1pt minus 0.1pt - \textleading = 12.5pt - % - \internalpagesizes{160mm}{120mm}% - {\voffset}{\hoffset}% - {\bindingoffset}{8pt}% - {210mm}{148mm}% - % - \lispnarrowing = 0.2in - \tolerance = 800 - \contentsrightmargin = 0pt - \defbodyindent = 2mm - \tableindent = 12mm -}} - -% A specific text layout, 24x15cm overall, intended for A4 paper. -\def\afourlatex{{\globaldefs = 1 - \afourpaper - \internalpagesizes{237mm}{150mm}% - {\voffset}{4.6mm}% - {\bindingoffset}{7mm}% - {297mm}{210mm}% - % - % Must explicitly reset to 0 because we call \afourpaper. - \globaldefs = 0 -}} - -% Use @afourwide to print on A4 paper in landscape format. -\def\afourwide{{\globaldefs = 1 - \afourpaper - \internalpagesizes{241mm}{165mm}% - {\voffset}{-2.95mm}% - {\bindingoffset}{7mm}% - {297mm}{210mm}% - \globaldefs = 0 -}} - -% @pagesizes TEXTHEIGHT[,TEXTWIDTH] -% Perhaps we should allow setting the margins, \topskip, \parskip, -% and/or leading, also. Or perhaps we should compute them somehow. -% -\parseargdef\pagesizes{\pagesizesyyy #1,,\finish} -\def\pagesizesyyy#1,#2,#3\finish{{% - \setbox0 = \hbox{\ignorespaces #2}\ifdim\wd0 > 0pt \hsize=#2\relax \fi - \globaldefs = 1 - % - \parskip = 3pt plus 2pt minus 1pt - \setleading{\textleading}% - % - \dimen0 = #1\relax - \advance\dimen0 by \voffset - \advance\dimen0 by 1in % reference point for DVI is 1 inch from top of page - % - \dimen2 = \hsize - \advance\dimen2 by \normaloffset - \advance\dimen2 by 1in % reference point is 1 inch from left edge of page - % - \internalpagesizes{#1}{\hsize}% - {\voffset}{\normaloffset}% - {\bindingoffset}{44pt}% - {\dimen0}{\dimen2}% -}} - -% Set default to letter. -% -\letterpaper - -% Default value of \hfuzz, for suppressing warnings about overfull hboxes. -\hfuzz = 1pt - - -\message{and turning on texinfo input format.} - -\def^^L{\par} % remove \outer, so ^L can appear in an @comment - -% DEL is a comment character, in case @c does not suffice. -\catcode`\^^? = 14 - -% Define macros to output various characters with catcode for normal text. -\catcode`\"=\other \def\normaldoublequote{"} -\catcode`\$=\other \def\normaldollar{$}%$ font-lock fix -\catcode`\+=\other \def\normalplus{+} -\catcode`\<=\other \def\normalless{<} -\catcode`\>=\other \def\normalgreater{>} -\catcode`\^=\other \def\normalcaret{^} -\catcode`\_=\other \def\normalunderscore{_} -\catcode`\|=\other \def\normalverticalbar{|} -\catcode`\~=\other \def\normaltilde{~} - -% This macro is used to make a character print one way in \tt -% (where it can probably be output as-is), and another way in other fonts, -% where something hairier probably needs to be done. -% -% #1 is what to print if we are indeed using \tt; #2 is what to print -% otherwise. Since all the Computer Modern typewriter fonts have zero -% interword stretch (and shrink), and it is reasonable to expect all -% typewriter fonts to have this, we can check that font parameter. -% -\def\ifusingtt#1#2{\ifdim \fontdimen3\font=0pt #1\else #2\fi} - -% Same as above, but check for italic font. Actually this also catches -% non-italic slanted fonts since it is impossible to distinguish them from -% italic fonts. But since this is only used by $ and it uses \sl anyway -% this is not a problem. -\def\ifusingit#1#2{\ifdim \fontdimen1\font>0pt #1\else #2\fi} - -% Set catcodes for Texinfo file - -% Active characters for printing the wanted glyph. -% Most of these we simply print from the \tt font, but for some, we can -% use math or other variants that look better in normal text. -% -\catcode`\"=\active -\def\activedoublequote{{\tt\char34}} -\let"=\activedoublequote -\catcode`\~=\active \def\activetilde{{\tt\char126}} \let~ = \activetilde -\chardef\hatchar=`\^ -\catcode`\^=\active \def\activehat{{\tt \hatchar}} \let^ = \activehat - -\catcode`\_=\active -\def_{\ifusingtt\normalunderscore\_} -\def\_{\leavevmode \kern.07em \vbox{\hrule width.3em height.1ex}\kern .07em } -\let\realunder=_ - -\catcode`\|=\active \def|{{\tt\char124}} - -\chardef \less=`\< -\catcode`\<=\active \def\activeless{{\tt \less}}\let< = \activeless -\chardef \gtr=`\> -\catcode`\>=\active \def\activegtr{{\tt \gtr}}\let> = \activegtr -\catcode`\+=\active \def+{{\tt \char 43}} -\catcode`\$=\active \def${\ifusingit{{\sl\$}}\normaldollar}%$ font-lock fix -\catcode`\-=\active \let-=\normaldash - - -% used for headline/footline in the output routine, in case the page -% breaks in the middle of an @tex block. -\def\texinfochars{% - \let< = \activeless - \let> = \activegtr - \let~ = \activetilde - \let^ = \activehat - \markupsetuplqdefault \markupsetuprqdefault - \let\b = \strong - \let\i = \smartitalic - % in principle, all other definitions in \tex have to be undone too. -} - -% Used sometimes to turn off (effectively) the active characters even after -% parsing them. -\def\turnoffactive{% - \normalturnoffactive - \otherbackslash -} - -\catcode`\@=0 - -% \backslashcurfont outputs one backslash character in current font, -% as in \char`\\. -\global\chardef\backslashcurfont=`\\ -\global\let\rawbackslashxx=\backslashcurfont % let existing .??s files work - -% \realbackslash is an actual character `\' with catcode other, and -% \doublebackslash is two of them (for the pdf outlines). -{\catcode`\\=\other @gdef@realbackslash{\} @gdef@doublebackslash{\\}} - -% In Texinfo, backslash is an active character; it prints the backslash -% in fixed width font. -\catcode`\\=\active % @ for escape char from now on. - -% Print a typewriter backslash. For math mode, we can't simply use -% \backslashcurfont: the story here is that in math mode, the \char -% of \backslashcurfont ends up printing the roman \ from the math symbol -% font (because \char in math mode uses the \mathcode, and plain.tex -% sets \mathcode`\\="026E). Hence we use an explicit \mathchar, -% which is the decimal equivalent of "715c (class 7, e.g., use \fam; -% ignored family value; char position "5C). We can't use " for the -% usual hex value because it has already been made active. - -@def@ttbackslash{{@tt @ifmmode @mathchar29020 @else @backslashcurfont @fi}} -@let@backslashchar = @ttbackslash % @backslashchar{} is for user documents. - -% \rawbackslash defines an active \ to do \backslashcurfont. -% \otherbackslash defines an active \ to be a literal `\' character with -% catcode other. We switch back and forth between these. -@gdef@rawbackslash{@let\=@backslashcurfont} -@gdef@otherbackslash{@let\=@realbackslash} - -% Same as @turnoffactive except outputs \ as {\tt\char`\\} instead of -% the literal character `\'. -% -{@catcode`- = @active - @gdef@normalturnoffactive{% - @passthroughcharstrue - @let-=@normaldash - @let"=@normaldoublequote - @let$=@normaldollar %$ font-lock fix - @let+=@normalplus - @let<=@normalless - @let>=@normalgreater - @let^=@normalcaret - @let_=@normalunderscore - @let|=@normalverticalbar - @let~=@normaltilde - @let\=@ttbackslash - @markupsetuplqdefault - @markupsetuprqdefault - @unsepspaces - } -} - -% If a .fmt file is being used, characters that might appear in a file -% name cannot be active until we have parsed the command line. -% So turn them off again, and have @fixbackslash turn them back on. -@catcode`+=@other @catcode`@_=@other - -% \enablebackslashhack - allow file to begin `\input texinfo' -% -% If a .fmt file is being used, we don't want the `\input texinfo' to show up. -% That is what \eatinput is for; after that, the `\' should revert to printing -% a backslash. -% If the file did not have a `\input texinfo', then it is turned off after -% the first line; otherwise the first `\' in the file would cause an error. -% This is used on the very last line of this file, texinfo.tex. -% We also use @c to call @fixbackslash, in case ends of lines are hidden. -{ -@catcode`@^=7 -@catcode`@^^M=13@gdef@enablebackslashhack{% - @global@let\ = @eatinput% - @catcode`@^^M=13% - @def@c{@fixbackslash@c}% - % Definition for the newline at the end of this file. - @def ^^M{@let^^M@secondlinenl}% - % Definition for a newline in the main Texinfo file. - @gdef @secondlinenl{@fixbackslash}% - % In case the first line has a whole-line command on it - @let@originalparsearg@parsearg - @def@parsearg{@fixbackslash@originalparsearg} -}} - -{@catcode`@^=7 @catcode`@^^M=13% -@gdef@eatinput input texinfo#1^^M{@fixbackslash}} - -% Emergency active definition of newline, in case an active newline token -% appears by mistake. -{@catcode`@^=7 @catcode13=13% -@gdef@enableemergencynewline{% - @gdef^^M{% - @par% - %@par% -}}} - - -@gdef@fixbackslash{% - @ifx\@eatinput @let\ = @ttbackslash @fi - @catcode13=5 % regular end of line - @enableemergencynewline - @let@c=@texinfoc - @let@parsearg@originalparsearg - % Also turn back on active characters that might appear in the input - % file name, in case not using a pre-dumped format. - @catcode`+=@active - @catcode`@_=@active - % - % If texinfo.cnf is present on the system, read it. - % Useful for site-wide @afourpaper, etc. This macro, @fixbackslash, gets - % called at the beginning of every Texinfo file. Not opening texinfo.cnf - % directly in this file, texinfo.tex, makes it possible to make a format - % file for Texinfo. - % - @openin 1 texinfo.cnf - @ifeof 1 @else @input texinfo.cnf @fi - @closein 1 -} - - -% Say @foo, not \foo, in error messages. -@escapechar = `@@ - -% These (along with & and #) are made active for url-breaking, so need -% active definitions as the normal characters. -@def@normaldot{.} -@def@normalquest{?} -@def@normalslash{/} - -% These look ok in all fonts, so just make them not special. -% @hashchar{} gets its own user-level command, because of #line. -@catcode`@& = @other @def@normalamp{&} -@catcode`@# = @other @def@normalhash{#} -@catcode`@% = @other @def@normalpercent{%} - -@let @hashchar = @normalhash - -@c Finally, make ` and ' active, so that txicodequoteundirected and -@c txicodequotebacktick work right in, e.g., @w{@code{`foo'}}. If we -@c don't make ` and ' active, @code will not get them as active chars. -@c Do this last of all since we use ` in the previous @catcode assignments. -@catcode`@'=@active -@catcode`@`=@active -@markupsetuplqdefault -@markupsetuprqdefault - -@c Local variables: -@c eval: (add-hook 'before-save-hook 'time-stamp) -@c page-delimiter: "^\\\\message\\|emacs-page" -@c time-stamp-start: "def\\\\texinfoversion{" -@c time-stamp-format: "%:y-%02m-%02d.%02H" -@c time-stamp-end: "}" -@c End: - -@c vim:sw=2: - -@enablebackslashhack diff --git a/thirdparty/grub-2.04/conf/Makefile.common b/thirdparty/grub-2.04/conf/Makefile.common deleted file mode 100644 index 6cd71cbb2..000000000 --- a/thirdparty/grub-2.04/conf/Makefile.common +++ /dev/null @@ -1,138 +0,0 @@ -# -*- makefile -*- - -CFLAGS_PLATFORM= - -export LC_COLLATE := C -unexport LC_ALL - -# Platform specific options -if COND_sparc64_ieee1275 - LDFLAGS_PLATFORM = -Wl,-melf64_sparc -endif -if COND_arm -if !COND_emu - LDFLAGS_PLATFORM = -Wl,--wrap=__clear_cache -endif -endif -if COND_arm64 - CFLAGS_PLATFORM += -mcmodel=large -endif -if COND_powerpc_ieee1275 - CFLAGS_PLATFORM += -mcpu=powerpc -endif - -# Other options - -CPPFLAGS_DEFAULT = -DGRUB_FILE=\"$(subst $(srcdir)/,,$<)\" -CPPFLAGS_DEFAULT += -I$(builddir) -CPPFLAGS_DEFAULT += -I$(srcdir) -CPPFLAGS_DEFAULT += -I$(top_builddir) -CPPFLAGS_DEFAULT += -I$(top_srcdir) -CPPFLAGS_DEFAULT += -I$(top_srcdir)/include -CPPFLAGS_DEFAULT += -I$(top_builddir)/include -CPPFLAGS_DEFAULT += -I$(top_srcdir)/grub-core/lib/libgcrypt-grub/src/ -CCASFLAGS_DEFAULT = $(CPPFLAGS_DEFAULT) -DASM_FILE=1 -BUILD_CPPFLAGS += $(CPPFLAGS_DEFAULT) - -CFLAGS_KERNEL = $(CFLAGS_PLATFORM) -ffreestanding -LDFLAGS_KERNEL = $(LDFLAGS_PLATFORM) -nostdlib $(TARGET_LDFLAGS_OLDMAGIC) -CPPFLAGS_KERNEL = $(CPPFLAGS_CPU) $(CPPFLAGS_PLATFORM) -DGRUB_KERNEL=1 -CCASFLAGS_KERNEL = $(CCASFLAGS_CPU) $(CCASFLAGS_PLATFORM) -STRIPFLAGS_KERNEL = -R .rel.dyn -R .reginfo -R .note -R .comment -R .drectve -R .note.gnu.gold-version -R .MIPS.abiflags -R .ARM.exidx - -CFLAGS_MODULE = $(CFLAGS_PLATFORM) -ffreestanding -LDFLAGS_MODULE = $(LDFLAGS_PLATFORM) -nostdlib $(TARGET_LDFLAGS_OLDMAGIC) -Wl,-r,-d -CPPFLAGS_MODULE = $(CPPFLAGS_CPU) $(CPPFLAGS_PLATFORM) -CCASFLAGS_MODULE = $(CCASFLAGS_CPU) $(CCASFLAGS_PLATFORM) - -CFLAGS_IMAGE = $(CFLAGS_PLATFORM) -fno-builtin -LDFLAGS_IMAGE = $(LDFLAGS_PLATFORM) -nostdlib $(TARGET_LDFLAGS_OLDMAGIC) -Wl,-S -CPPFLAGS_IMAGE = $(CPPFLAGS_CPU) $(CPPFLAGS_PLATFORM) -CCASFLAGS_IMAGE = $(CCASFLAGS_CPU) $(CCASFLAGS_PLATFORM) - -CFLAGS_PROGRAM = -LDFLAGS_PROGRAM = -CPPFLAGS_PROGRAM = -CCASFLAGS_PROGRAM = - -CFLAGS_LIBRARY = -CPPFLAGS_LIBRARY = -CCASFLAGS_LIBRARY = - -# Other variables - -grubconfdir = $(sysconfdir)/grub.d -platformdir = $(pkglibdir)/$(target_cpu)-$(platform) -starfielddir = $(pkgdatadir)/themes/starfield - -CFLAGS_GNULIB = -Wno-undef -Wno-sign-compare -Wno-unused -Wno-unused-parameter -Wno-redundant-decls -Wno-unreachable-code -Wno-conversion -CPPFLAGS_GNULIB = -I$(top_builddir)/grub-core/lib/gnulib -I$(top_srcdir)/grub-core/lib/gnulib - -CFLAGS_POSIX = -fno-builtin -CPPFLAGS_POSIX = -I$(top_srcdir)/grub-core/lib/posix_wrap - -CFLAGS_GCRY = -Wno-error -Wno-missing-field-initializers -Wno-redundant-decls -Wno-undef $(CFLAGS_POSIX) -CPPFLAGS_GCRY = -I$(top_srcdir)/grub-core/lib/libgcrypt_wrap $(CPPFLAGS_POSIX) -D_GCRYPT_IN_LIBGCRYPT=1 -I$(top_srcdir)/include/grub/gcrypt - -CPPFLAGS_EFIEMU = -I$(top_srcdir)/grub-core/efiemu/runtime - -# List file macros for recognizing /interesting/ modules -CPPFLAGS_FS_LIST = -Dgrub_fs_register=FS_LIST_MARKER -CPPFLAGS_VIDEO_LIST= -Dgrub_video_register=VIDEO_LIST_MARKER -CPPFLAGS_PARTMAP_LIST = -Dgrub_partition_map_register=PARTMAP_LIST_MARKER -CPPFLAGS_PARTTOOL_LIST = -Dgrub_parttool_register=PARTTOOL_LIST_MARKER -CPPFLAGS_TERMINAL_LIST = '-Dgrub_term_register_input(...)=INPUT_TERMINAL_LIST_MARKER(__VA_ARGS__)' -CPPFLAGS_TERMINAL_LIST += '-Dgrub_term_register_output(...)=OUTPUT_TERMINAL_LIST_MARKER(__VA_ARGS__)' -CPPFLAGS_COMMAND_LIST = '-Dgrub_register_command(...)=COMMAND_LIST_MARKER(__VA_ARGS__)' -CPPFLAGS_COMMAND_LIST += '-Dgrub_register_extcmd(...)=EXTCOMMAND_LIST_MARKER(__VA_ARGS__)' -CPPFLAGS_COMMAND_LIST += '-Dgrub_register_command_p1(...)=P1COMMAND_LIST_MARKER(__VA_ARGS__)' -CPPFLAGS_FDT_LIST := '-Dgrub_fdtbus_register(...)=FDT_DRIVER_LIST_MARKER(__VA_ARGS__)' -CPPFLAGS_MARKER = $(CPPFLAGS_FS_LIST) $(CPPFLAGS_VIDEO_LIST) \ - $(CPPFLAGS_PARTTOOL_LIST) $(CPPFLAGS_PARTMAP_LIST) \ - $(CPPFLAGS_TERMINAL_LIST) $(CPPFLAGS_COMMAND_LIST) \ - $(CPPFLAGS_FDT_LIST) - -# Define these variables to calm down automake - -IMG_FILES = -MOD_FILES = -MODULE_FILES = -MARKER_FILES = -KERNEL_HEADER_FILES = - -man_MANS = -noinst_DATA = -pkgdata_DATA = -bin_SCRIPTS = -sbin_SCRIPTS = -bin_PROGRAMS = -platform_DATA = -sbin_PROGRAMS = -check_SCRIPTS = -dist_grubconf_DATA = -check_PROGRAMS = -noinst_SCRIPTS = -noinst_PROGRAMS = -grubconf_SCRIPTS = -noinst_LIBRARIES = -dist_noinst_DATA = -platform_SCRIPTS = -platform_PROGRAMS = - -TESTS = -EXTRA_DIST = -CLEANFILES = -BUILT_SOURCES = - -# Rules for Automake input - -.PRECIOUS: $(top_srcdir)/Makefile.util.am -$(top_srcdir)/Makefile.util.am: $(top_srcdir)/gentpl.py $(top_srcdir)/Makefile.util.def $(top_srcdir)/Makefile.utilgcry.def - $(PYTHON) $^ > $@.new || (rm -f $@.new; exit 1) - mv $@.new $@ - -.PRECIOUS: $(top_srcdir)/grub-core/Makefile.core.am -$(top_srcdir)/grub-core/Makefile.core.am: $(top_srcdir)/gentpl.py $(top_srcdir)/grub-core/Makefile.core.def $(top_srcdir)/grub-core/Makefile.gcry.def - if [ "x$$GRUB_CONTRIB" != x ]; then echo "You need to run ./bootstrap manually." >&2; exit 1; fi - $(PYTHON) $^ > $@.new || (rm -f $@.new; exit 1) - mv $@.new $@ diff --git a/thirdparty/grub-2.04/conf/Makefile.extra-dist b/thirdparty/grub-2.04/conf/Makefile.extra-dist deleted file mode 100644 index 46c4e95e2..000000000 --- a/thirdparty/grub-2.04/conf/Makefile.extra-dist +++ /dev/null @@ -1,139 +0,0 @@ -EXTRA_DIST += autogen.sh -EXTRA_DIST += geninit.sh - -EXTRA_DIST += gentpl.py -EXTRA_DIST += Makefile.util.def -EXTRA_DIST += Makefile.utilgcry.def - -EXTRA_DIST += asm-tests -EXTRA_DIST += unicode - -EXTRA_DIST += util/import_gcry.py -EXTRA_DIST += util/import_unicode.py - -EXTRA_DIST += docs/man -EXTRA_DIST += docs/autoiso.cfg -EXTRA_DIST += docs/grub.cfg -EXTRA_DIST += docs/osdetect.cfg - -EXTRA_DIST += conf/i386-cygwin-img-ld.sc - -EXTRA_DIST += grub-core/Makefile.core.def -EXTRA_DIST += grub-core/Makefile.gcry.def - -EXTRA_DIST += grub-core/genmoddep.awk -EXTRA_DIST += grub-core/genmod.sh.in -EXTRA_DIST += grub-core/gensyminfo.sh.in -EXTRA_DIST += grub-core/gensymlist.sh -EXTRA_DIST += grub-core/genemuinit.sh -EXTRA_DIST += grub-core/genemuinitheader.sh - -EXTRA_DIST += grub-core/lib/gnulib-patches/fix-null-deref.patch -EXTRA_DIST += grub-core/lib/gnulib-patches/fix-width.patch -EXTRA_DIST += grub-core/lib/gnulib-patches/no-abort.patch - -EXTRA_DIST += grub-core/lib/libgcrypt -EXTRA_DIST += grub-core/lib/libgcrypt-grub/mpi/generic -EXTRA_DIST += $(shell find $(top_srcdir)/include -name '*.h') -EXTRA_DIST += $(shell find $(top_srcdir)/grub-core/lib -name '*.h') -EXTRA_DIST += grub-core/efiemu/runtime/config.h - -EXTRA_DIST += grub-core/lib/LzmaDec.c - -EXTRA_DIST += grub-core/fs/cpio_common.c - -EXTRA_DIST += BUGS -EXTRA_DIST += util/i386/efi/grub-dumpdevtree -EXTRA_DIST += util/spkmodem-recv.c -EXTRA_DIST += util/import_gcrypth.sed -EXTRA_DIST += util/bin2h.c -EXTRA_DIST += util/grub-gen-asciih.c -EXTRA_DIST += util/grub-gen-widthspec.c -EXTRA_DIST += util/grub-module-verifier.c -EXTRA_DIST += util/grub-module-verifier32.c -EXTRA_DIST += util/grub-module-verifier64.c -EXTRA_DIST += util/grub-module-verifierXX.c -EXTRA_DIST += util/grub-pe2elf.c - - -EXTRA_DIST += m4/gnulib-cache.m4 -EXTRA_DIST += m4/glibc2.m4 -EXTRA_DIST += m4/gnulib-tool.m4 -EXTRA_DIST += m4/intdiv0.m4 -EXTRA_DIST += m4/intl.m4 -EXTRA_DIST += m4/intldir.m4 -EXTRA_DIST += m4/intmax.m4 -EXTRA_DIST += m4/inttypes-pri.m4 -EXTRA_DIST += m4/lcmessage.m4 -EXTRA_DIST += m4/lock.m4 -EXTRA_DIST += m4/printf-posix.m4 -EXTRA_DIST += m4/threadlib.m4 -EXTRA_DIST += m4/uintmax_t.m4 -EXTRA_DIST += m4/visibility.m4 -EXTRA_DIST += m4/math_h.m4 - -EXTRA_DIST += grub-core/osdep/apple/hostdisk.c -EXTRA_DIST += grub-core/osdep/aros/hostdisk.c -EXTRA_DIST += grub-core/osdep/basic/hostdisk.c -EXTRA_DIST += grub-core/osdep/bsd/hostdisk.c -EXTRA_DIST += grub-core/osdep/freebsd/hostdisk.c -EXTRA_DIST += grub-core/osdep/hurd/hostdisk.c -EXTRA_DIST += grub-core/osdep/linux/hostdisk.c -EXTRA_DIST += grub-core/osdep/windows/hostdisk.c -EXTRA_DIST += grub-core/osdep/sun/hostdisk.c -EXTRA_DIST += grub-core/osdep/haiku/hostdisk.c - -EXTRA_DIST += grub-core/osdep/basic/init.c -EXTRA_DIST += grub-core/osdep/windows/init.c - -EXTRA_DIST += grub-core/osdep/apple/getroot.c -EXTRA_DIST += grub-core/osdep/aros/getroot.c -EXTRA_DIST += grub-core/osdep/basic/getroot.c -EXTRA_DIST += grub-core/osdep/bsd/getroot.c -EXTRA_DIST += grub-core/osdep/windows/getroot.c -EXTRA_DIST += grub-core/osdep/freebsd/getroot.c -EXTRA_DIST += grub-core/osdep/hurd/getroot.c -EXTRA_DIST += grub-core/osdep/linux/getroot.c -EXTRA_DIST += grub-core/osdep/sun/getroot.c -EXTRA_DIST += grub-core/osdep/haiku/getroot.c - -EXTRA_DIST += grub-core/osdep/basic/random.c -EXTRA_DIST += grub-core/osdep/basic/ofpath.c - -EXTRA_DIST += grub-core/osdep/unix/password.c -EXTRA_DIST += grub-core/osdep/unix/random.c -EXTRA_DIST += grub-core/osdep/unix/sleep.c - -EXTRA_DIST += grub-core/osdep/linux/ofpath.c - -EXTRA_DIST += grub-core/osdep/windows/password.c -EXTRA_DIST += grub-core/osdep/windows/random.c -EXTRA_DIST += grub-core/osdep/windows/sleep.c - -EXTRA_DIST += tests/dfly-mbr-mbexample.mbr.img.gz -EXTRA_DIST += tests/dfly-mbr-mbexample.dfly.img.gz - -EXTRA_DIST += coreboot.cfg - -EXTRA_DIST += tests/file_filter/file -EXTRA_DIST += tests/file_filter/file.gz -EXTRA_DIST += tests/file_filter/file.gz.sig -EXTRA_DIST += tests/file_filter/file.lzop -EXTRA_DIST += tests/file_filter/file.lzop.sig -EXTRA_DIST += tests/file_filter/file.xz -EXTRA_DIST += tests/file_filter/file.xz.sig -EXTRA_DIST += tests/file_filter/keys -EXTRA_DIST += tests/file_filter/keys.pub -EXTRA_DIST += tests/file_filter/test.cfg -EXTRA_DIST += tests/syslinux/ubuntu10.04/isolinux/prompt.cfg -EXTRA_DIST += tests/syslinux/ubuntu10.04/isolinux/gfxboot.cfg -EXTRA_DIST += tests/syslinux/ubuntu10.04/isolinux/adtxt.cfg -EXTRA_DIST += tests/syslinux/ubuntu10.04/isolinux/isolinux.cfg -EXTRA_DIST += tests/syslinux/ubuntu10.04/isolinux/exithelp.cfg -EXTRA_DIST += tests/syslinux/ubuntu10.04/isolinux/txt.cfg -EXTRA_DIST += tests/syslinux/ubuntu10.04/isolinux/menu.cfg -EXTRA_DIST += tests/syslinux/ubuntu10.04/isolinux/stdmenu.cfg -EXTRA_DIST += tests/syslinux/ubuntu10.04/isolinux/dtmenu.cfg -EXTRA_DIST += tests/syslinux/ubuntu10.04/isolinux/po4a.cfg -EXTRA_DIST += tests/syslinux/ubuntu10.04/isolinux/rqtxt.cfg -EXTRA_DIST += tests/syslinux/ubuntu10.04_grub.cfg.in diff --git a/thirdparty/grub-2.04/conf/i386-cygwin-img-ld.sc b/thirdparty/grub-2.04/conf/i386-cygwin-img-ld.sc deleted file mode 100644 index 3ac26fcce..000000000 --- a/thirdparty/grub-2.04/conf/i386-cygwin-img-ld.sc +++ /dev/null @@ -1,53 +0,0 @@ -/* Linker script to create grub .img files on Cygwin. */ - -SECTIONS -{ - .text : - { - start = . ; - _start = . ; - __start = . ; - *(.text) - etext = . ; - } - .data : - { - __data_start__ = . ; - *(.data) - __data_end__ = . ; - __rdata_start__ = . ; - *(.rdata) - __rdata_end__ = . ; - *(.pdata) - edata = . ; - _edata = . ; - __edata = . ; - } - .bss : - { - __bss_start__ = . ; - *(.bss) - __common_start__ = . ; - *(COMMON) - __bss_end__ = . ; - } - .edata : - { - *(.edata) - end = . ; - _end = . ; - __end = . ; - } - .stab : - { - *(.stab) - } - .stabstr : - { - *(.stabstr) - } -} - -ASSERT("__rdata_end__"=="edata", ".pdata not empty") -ASSERT("__bss_end__" =="end" , ".edata not empty") - diff --git a/thirdparty/grub-2.04/config-util.h.in b/thirdparty/grub-2.04/config-util.h.in deleted file mode 100644 index db9250b8f..000000000 --- a/thirdparty/grub-2.04/config-util.h.in +++ /dev/null @@ -1,1578 +0,0 @@ -/* config-util.h.in. Generated from configure.ac by autoheader. */ - -/* Define if building universal (internal helper macro) */ -#undef AC_APPLE_UNIVERSAL_BUILD - -/* Define to the number of bits in type 'ptrdiff_t'. */ -#undef BITSIZEOF_PTRDIFF_T - -/* Define to the number of bits in type 'sig_atomic_t'. */ -#undef BITSIZEOF_SIG_ATOMIC_T - -/* Define to the number of bits in type 'size_t'. */ -#undef BITSIZEOF_SIZE_T - -/* Define to the number of bits in type 'wchar_t'. */ -#undef BITSIZEOF_WCHAR_T - -/* Define to the number of bits in type 'wint_t'. */ -#undef BITSIZEOF_WINT_T - -/* Define to one of `_getb67', `GETB67', `getb67' for Cray-2 and Cray-YMP - systems. This function is required for `alloca.c' support on those systems. - */ -#undef CRAY_STACKSEG_END - -/* Define to 1 if using `alloca.c'. */ -#undef C_ALLOCA - -/* Define to 1 if the C locale may have encoding errors. */ -#undef C_LOCALE_MAYBE_EILSEQ - -/* Define as the bit index in the word where to find bit 0 of the exponent of - 'double'. */ -#undef DBL_EXPBIT0_BIT - -/* Define as the word index where to find the exponent of 'double'. */ -#undef DBL_EXPBIT0_WORD - -/* the name of the file descriptor member of DIR */ -#undef DIR_FD_MEMBER_NAME - -#ifdef DIR_FD_MEMBER_NAME -# define DIR_TO_FD(Dir_p) ((Dir_p)->DIR_FD_MEMBER_NAME) -#else -# define DIR_TO_FD(Dir_p) -1 -#endif - - -/* Define to 1 if // is a file system root distinct from /. */ -#undef DOUBLE_SLASH_IS_DISTINCT_ROOT - -/* Define to 1 if translation of program messages to the user's native - language is requested. */ -#undef ENABLE_NLS - -/* Define this to 1 if F_DUPFD behavior does not match POSIX */ -#undef FCNTL_DUPFD_BUGGY - -/* Define to nothing if C supports flexible array members, and to 1 if it does - not. That way, with a declaration like 'struct s { int n; double - d[FLEXIBLE_ARRAY_MEMBER]; };', the struct hack can be used with pre-C99 - compilers. When computing the size of such an object, don't use 'sizeof - (struct s)' as it overestimates the size. Use 'offsetof (struct s, d)' - instead. Don't use 'offsetof (struct s, d[0])', as this doesn't work with - MSVC and with C++ compilers. */ -#undef FLEXIBLE_ARRAY_MEMBER - -/* Define to 1 if nl_langinfo (YESEXPR) returns a non-empty string. */ -#undef FUNC_NL_LANGINFO_YESEXPR_WORKS - -/* Define to a C preprocessor expression that evaluates to 1 or 0, depending - whether the gnulib module fd-safer-flag shall be considered present. */ -#undef GNULIB_FD_SAFER_FLAG - -/* Define to a C preprocessor expression that evaluates to 1 or 0, depending - whether the gnulib module fscanf shall be considered present. */ -#undef GNULIB_FSCANF - -/* Define to a C preprocessor expression that evaluates to 1 or 0, depending - whether the gnulib module lock shall be considered present. */ -#undef GNULIB_LOCK - -/* Define to a C preprocessor expression that evaluates to 1 or 0, depending - whether the gnulib module malloc-gnu shall be considered present. */ -#undef GNULIB_MALLOC_GNU - -/* Define to a C preprocessor expression that evaluates to 1 or 0, depending - whether the gnulib module msvc-nothrow shall be considered present. */ -#undef GNULIB_MSVC_NOTHROW - -/* Define to a C preprocessor expression that evaluates to 1 or 0, depending - whether the gnulib module openat shall be considered present. */ -#undef GNULIB_OPENAT - -/* Define to 1 if printf and friends should be labeled with attribute - "__gnu_printf__" instead of "__printf__" */ -#undef GNULIB_PRINTF_ATTRIBUTE_FLAVOR_GNU - -/* Define to 1 to add extern declaration of program_invocation_name to argp.h - */ -#undef GNULIB_PROGRAM_INVOCATION_NAME - -/* Define to 1 to add extern declaration of program_invocation_short_name to - argp.h */ -#undef GNULIB_PROGRAM_INVOCATION_SHORT_NAME - -/* Define to a C preprocessor expression that evaluates to 1 or 0, depending - whether the gnulib module realloc-gnu shall be considered present. */ -#undef GNULIB_REALLOC_GNU - -/* Define to a C preprocessor expression that evaluates to 1 or 0, depending - whether the gnulib module scanf shall be considered present. */ -#undef GNULIB_SCANF - -/* Define to a C preprocessor expression that evaluates to 1 or 0, depending - whether the gnulib module strerror shall be considered present. */ -#undef GNULIB_STRERROR - -/* Define to 1 when the gnulib module btowc should be tested. */ -#undef GNULIB_TEST_BTOWC - -/* Define to 1 when the gnulib module chdir should be tested. */ -#undef GNULIB_TEST_CHDIR - -/* Define to 1 when the gnulib module cloexec should be tested. */ -#undef GNULIB_TEST_CLOEXEC - -/* Define to 1 when the gnulib module close should be tested. */ -#undef GNULIB_TEST_CLOSE - -/* Define to 1 when the gnulib module dirfd should be tested. */ -#undef GNULIB_TEST_DIRFD - -/* Define to 1 when the gnulib module dup2 should be tested. */ -#undef GNULIB_TEST_DUP2 - -/* Define to 1 when the gnulib module fchdir should be tested. */ -#undef GNULIB_TEST_FCHDIR - -/* Define to 1 when the gnulib module fcntl should be tested. */ -#undef GNULIB_TEST_FCNTL - -/* Define to 1 when the gnulib module fnmatch should be tested. */ -#undef GNULIB_TEST_FNMATCH - -/* Define to 1 when the gnulib module fstat should be tested. */ -#undef GNULIB_TEST_FSTAT - -/* Define to 1 when the gnulib module getcwd should be tested. */ -#undef GNULIB_TEST_GETCWD - -/* Define to 1 when the gnulib module getdelim should be tested. */ -#undef GNULIB_TEST_GETDELIM - -/* Define to 1 when the gnulib module getdtablesize should be tested. */ -#undef GNULIB_TEST_GETDTABLESIZE - -/* Define to 1 when the gnulib module getline should be tested. */ -#undef GNULIB_TEST_GETLINE - -/* Define to 1 when the gnulib module localeconv should be tested. */ -#undef GNULIB_TEST_LOCALECONV - -/* Define to 1 when the gnulib module malloc-posix should be tested. */ -#undef GNULIB_TEST_MALLOC_POSIX - -/* Define to 1 when the gnulib module mbrtowc should be tested. */ -#undef GNULIB_TEST_MBRTOWC - -/* Define to 1 when the gnulib module mbsinit should be tested. */ -#undef GNULIB_TEST_MBSINIT - -/* Define to 1 when the gnulib module mbsrtowcs should be tested. */ -#undef GNULIB_TEST_MBSRTOWCS - -/* Define to 1 when the gnulib module mbtowc should be tested. */ -#undef GNULIB_TEST_MBTOWC - -/* Define to 1 when the gnulib module memchr should be tested. */ -#undef GNULIB_TEST_MEMCHR - -/* Define to 1 when the gnulib module mempcpy should be tested. */ -#undef GNULIB_TEST_MEMPCPY - -/* Define to 1 when the gnulib module memrchr should be tested. */ -#undef GNULIB_TEST_MEMRCHR - -/* Define to 1 when the gnulib module nl_langinfo should be tested. */ -#undef GNULIB_TEST_NL_LANGINFO - -/* Define to 1 when the gnulib module open should be tested. */ -#undef GNULIB_TEST_OPEN - -/* Define to 1 when the gnulib module openat should be tested. */ -#undef GNULIB_TEST_OPENAT - -/* Define to 1 when the gnulib module rawmemchr should be tested. */ -#undef GNULIB_TEST_RAWMEMCHR - -/* Define to 1 when the gnulib module realloc-posix should be tested. */ -#undef GNULIB_TEST_REALLOC_POSIX - -/* Define to 1 when the gnulib module sleep should be tested. */ -#undef GNULIB_TEST_SLEEP - -/* Define to 1 when the gnulib module stat should be tested. */ -#undef GNULIB_TEST_STAT - -/* Define to 1 when the gnulib module strchrnul should be tested. */ -#undef GNULIB_TEST_STRCHRNUL - -/* Define to 1 when the gnulib module strdup should be tested. */ -#undef GNULIB_TEST_STRDUP - -/* Define to 1 when the gnulib module strerror should be tested. */ -#undef GNULIB_TEST_STRERROR - -/* Define to 1 when the gnulib module strndup should be tested. */ -#undef GNULIB_TEST_STRNDUP - -/* Define to 1 when the gnulib module strnlen should be tested. */ -#undef GNULIB_TEST_STRNLEN - -/* Define to 1 when the gnulib module vsnprintf should be tested. */ -#undef GNULIB_TEST_VSNPRINTF - -/* Define to 1 when the gnulib module wcrtomb should be tested. */ -#undef GNULIB_TEST_WCRTOMB - -/* Define to 1 when the gnulib module wcwidth should be tested. */ -#undef GNULIB_TEST_WCWIDTH - -/* Default boot directory name */ -#undef GRUB_BOOT_DIR_NAME - -/* Data dir */ -#undef GRUB_DATADIR - -/* Default grub directory name */ -#undef GRUB_DIR_NAME - -/* Library dir */ -#undef GRUB_LIBDIR - -/* Configuration dir */ -#undef GRUB_SYSCONFDIR - -/* Define to 1 if you have 'alloca' after including , a header that - may be supplied by this distribution. */ -#undef HAVE_ALLOCA - -/* Define to 1 if you have and it should be used (not on Ultrix). - */ -#undef HAVE_ALLOCA_H - -/* Define to 1 if you have the header file. */ -#undef HAVE_BP_SYM_H - -/* Define to 1 if you have the `btowc' function. */ -#undef HAVE_BTOWC - -/* Define to 1 if you have the Mac OS X function CFLocaleCopyCurrent in the - CoreFoundation framework. */ -#undef HAVE_CFLOCALECOPYCURRENT - -/* Define to 1 if you have the Mac OS X function CFPreferencesCopyAppValue in - the CoreFoundation framework. */ -#undef HAVE_CFPREFERENCESCOPYAPPVALUE - -/* Define to 1 if you have the header file. */ -#undef HAVE_CRTDEFS_H - -/* Define if the GNU dcgettext() function is already present or preinstalled. - */ -#undef HAVE_DCGETTEXT - -/* Define to 1 if you have the declaration of `alarm', and to 0 if you don't. - */ -#undef HAVE_DECL_ALARM - -/* Define to 1 if you have the declaration of `clearerr_unlocked', and to 0 if - you don't. */ -#undef HAVE_DECL_CLEARERR_UNLOCKED - -/* Define to 1 if you have the declaration of `dirfd', and to 0 if you don't. - */ -#undef HAVE_DECL_DIRFD - -/* Define to 1 if you have the declaration of `fchdir', and to 0 if you don't. - */ -#undef HAVE_DECL_FCHDIR - -/* Define to 1 if you have the declaration of `feof_unlocked', and to 0 if you - don't. */ -#undef HAVE_DECL_FEOF_UNLOCKED - -/* Define to 1 if you have the declaration of `ferror_unlocked', and to 0 if - you don't. */ -#undef HAVE_DECL_FERROR_UNLOCKED - -/* Define to 1 if you have the declaration of `fflush_unlocked', and to 0 if - you don't. */ -#undef HAVE_DECL_FFLUSH_UNLOCKED - -/* Define to 1 if you have the declaration of `fgets_unlocked', and to 0 if - you don't. */ -#undef HAVE_DECL_FGETS_UNLOCKED - -/* Define to 1 if you have the declaration of `fputc_unlocked', and to 0 if - you don't. */ -#undef HAVE_DECL_FPUTC_UNLOCKED - -/* Define to 1 if you have the declaration of `fputs_unlocked', and to 0 if - you don't. */ -#undef HAVE_DECL_FPUTS_UNLOCKED - -/* Define to 1 if you have the declaration of `fread_unlocked', and to 0 if - you don't. */ -#undef HAVE_DECL_FREAD_UNLOCKED - -/* Define to 1 if you have the declaration of `fwrite_unlocked', and to 0 if - you don't. */ -#undef HAVE_DECL_FWRITE_UNLOCKED - -/* Define to 1 if you have the declaration of `getchar_unlocked', and to 0 if - you don't. */ -#undef HAVE_DECL_GETCHAR_UNLOCKED - -/* Define to 1 if you have the declaration of `getc_unlocked', and to 0 if you - don't. */ -#undef HAVE_DECL_GETC_UNLOCKED - -/* Define to 1 if you have the declaration of `getdelim', and to 0 if you - don't. */ -#undef HAVE_DECL_GETDELIM - -/* Define to 1 if you have the declaration of `getdtablesize', and to 0 if you - don't. */ -#undef HAVE_DECL_GETDTABLESIZE - -/* Define to 1 if you have the declaration of `getline', and to 0 if you - don't. */ -#undef HAVE_DECL_GETLINE - -/* Define to 1 if you have the declaration of `isblank', and to 0 if you - don't. */ -#undef HAVE_DECL_ISBLANK - -/* Define to 1 if you have the declaration of `mbrtowc', and to 0 if you - don't. */ -#undef HAVE_DECL_MBRTOWC - -/* Define to 1 if you have the declaration of `mbsinit', and to 0 if you - don't. */ -#undef HAVE_DECL_MBSINIT - -/* Define to 1 if you have the declaration of `mbsrtowcs', and to 0 if you - don't. */ -#undef HAVE_DECL_MBSRTOWCS - -/* Define to 1 if you have a declaration of mbswidth() in , and to 0 - otherwise. */ -#undef HAVE_DECL_MBSWIDTH_IN_WCHAR_H - -/* Define to 1 if you have the declaration of `memrchr', and to 0 if you - don't. */ -#undef HAVE_DECL_MEMRCHR - -/* Define to 1 if you have the declaration of `program_invocation_name', and - to 0 if you don't. */ -#undef HAVE_DECL_PROGRAM_INVOCATION_NAME - -/* Define to 1 if you have the declaration of `program_invocation_short_name', - and to 0 if you don't. */ -#undef HAVE_DECL_PROGRAM_INVOCATION_SHORT_NAME - -/* Define to 1 if you have the declaration of `putchar_unlocked', and to 0 if - you don't. */ -#undef HAVE_DECL_PUTCHAR_UNLOCKED - -/* Define to 1 if you have the declaration of `putc_unlocked', and to 0 if you - don't. */ -#undef HAVE_DECL_PUTC_UNLOCKED - -/* Define to 1 if you have the declaration of `sleep', and to 0 if you don't. - */ -#undef HAVE_DECL_SLEEP - -/* Define to 1 if you have the declaration of `strdup', and to 0 if you don't. - */ -#undef HAVE_DECL_STRDUP - -/* Define to 1 if you have the declaration of `strerror_r', and to 0 if you - don't. */ -#undef HAVE_DECL_STRERROR_R - -/* Define to 1 if you have the declaration of `strncasecmp', and to 0 if you - don't. */ -#undef HAVE_DECL_STRNCASECMP - -/* Define to 1 if you have the declaration of `strndup', and to 0 if you - don't. */ -#undef HAVE_DECL_STRNDUP - -/* Define to 1 if you have the declaration of `strnlen', and to 0 if you - don't. */ -#undef HAVE_DECL_STRNLEN - -/* Define to 1 if you have the declaration of `towlower', and to 0 if you - don't. */ -#undef HAVE_DECL_TOWLOWER - -/* Define to 1 if you have the declaration of `vsnprintf', and to 0 if you - don't. */ -#undef HAVE_DECL_VSNPRINTF - -/* Define to 1 if you have the declaration of `wcrtomb', and to 0 if you - don't. */ -#undef HAVE_DECL_WCRTOMB - -/* Define to 1 if you have the declaration of `wcwidth', and to 0 if you - don't. */ -#undef HAVE_DECL_WCWIDTH - -/* Define to 1 if you have the declaration of `_snprintf', and to 0 if you - don't. */ -#undef HAVE_DECL__SNPRINTF - -/* Define to 1 if you have the declaration of `__argv', and to 0 if you don't. - */ -#undef HAVE_DECL___ARGV - -/* Define to 1 if you have the devmapper library. */ -#undef HAVE_DEVICE_MAPPER - -/* Define to 1 if you have the header file. */ -#undef HAVE_DIRENT_H - -/* Define to 1 if you have the `dirfd' function. */ -#undef HAVE_DIRFD - -/* Define to 1 if you have the 'dup2' function. */ -#undef HAVE_DUP2 - -/* Define to 1 if you have the `fchdir' function. */ -#undef HAVE_FCHDIR - -/* Define to 1 if you have the `fcntl' function. */ -#undef HAVE_FCNTL - -/* Define to 1 if you have the header file. */ -#undef HAVE_FEATURES_H - -/* Define to 1 if you have the `flockfile' function. */ -#undef HAVE_FLOCKFILE - -/* Define to 1 if you have the `fnmatch' function. */ -#undef HAVE_FNMATCH - -/* Define to 1 if you have the header file. */ -#undef HAVE_FNMATCH_H - -/* Define to 1 if you have the header file. */ -#undef HAVE_FT2BUILD_H - -/* Define to 1 if you have the `funlockfile' function. */ -#undef HAVE_FUNLOCKFILE - -/* Define to 1 if you have the header file. */ -#undef HAVE_FUSE_FUSE_H - -/* Define to 1 if you have the `getdelim' function. */ -#undef HAVE_GETDELIM - -/* Define to 1 if you have the `getdtablesize' function. */ -#undef HAVE_GETDTABLESIZE - -/* Define to 1 if you have the `getexecname' function. */ -#undef HAVE_GETEXECNAME - -/* Define to 1 if you have the `getextmntent' function. */ -#undef HAVE_GETEXTMNTENT - -/* Define to 1 if you have the header file. */ -#undef HAVE_GETOPT_H - -/* Define to 1 if you have the `getopt_long_only' function. */ -#undef HAVE_GETOPT_LONG_ONLY - -/* Define to 1 if you have the `getprogname' function. */ -#undef HAVE_GETPROGNAME - -/* Define if getrawpartition() in -lutil can be used */ -#undef HAVE_GETRAWPARTITION - -/* Define if the GNU gettext() function is already present or preinstalled. */ -#undef HAVE_GETTEXT - -/* Define if you have the iconv() function and it works. */ -#undef HAVE_ICONV - -/* Define if you have the 'intmax_t' type in or . */ -#undef HAVE_INTMAX_T - -/* Define to 1 if you have the header file. */ -#undef HAVE_INTTYPES_H - -/* Define if exists, doesn't clash with , and - declares uintmax_t. */ -#undef HAVE_INTTYPES_H_WITH_UINTMAX - -/* Define to 1 if you have the `isascii' function. */ -#undef HAVE_ISASCII - -/* Define to 1 if you have the `isblank' function. */ -#undef HAVE_ISBLANK - -/* Define to 1 if you have the `iswcntrl' function. */ -#undef HAVE_ISWCNTRL - -/* Define to 1 if you have the `iswctype' function. */ -#undef HAVE_ISWCTYPE - -/* Define if you have and nl_langinfo(CODESET). */ -#undef HAVE_LANGINFO_CODESET - -/* Define to 1 if you have the header file. */ -#undef HAVE_LANGINFO_H - -/* Define to 1 if you have the `devmapper' library (-ldevmapper). */ -#undef HAVE_LIBDEVMAPPER - -/* Define to 1 if you have the `fuse' library (-lfuse). */ -#undef HAVE_LIBFUSE - -/* Define to 1 if you have the `geom' library (-lgeom). */ -#undef HAVE_LIBGEOM - -/* Define to 1 if you have the header file. */ -#undef HAVE_LIBINTL_H - -/* Define to 1 if you have the `lzma' library (-llzma). */ -#undef HAVE_LIBLZMA - -/* Define to 1 if you have the NVPAIR library. */ -#undef HAVE_LIBNVPAIR - -/* Define to 1 if you have the header file. */ -#undef HAVE_LIBNVPAIR_H - -/* Define to 1 if you have the ZFS library. */ -#undef HAVE_LIBZFS - -/* Define to 1 if you have the header file. */ -#undef HAVE_LIBZFS_H - -/* Define to 1 if you have the header file. */ -#undef HAVE_LIMITS_H - -/* Define to 1 if you have the header file. */ -#undef HAVE_LINEWRAP_H - -/* Define to 1 if the system has the type 'long long int'. */ -#undef HAVE_LONG_LONG_INT - -/* Define to 1 if you have the `lstat' function. */ -#undef HAVE_LSTAT - -/* Define to 1 if your system has a GNU libc compatible 'malloc' function, and - to 0 otherwise. */ -#undef HAVE_MALLOC_GNU - -/* Define to 1 if you have the header file. */ -#undef HAVE_MALLOC_H - -/* Define if the 'malloc' function is POSIX compliant. */ -#undef HAVE_MALLOC_POSIX - -/* Define to 1 if mmap()'s MAP_ANONYMOUS flag is available after including - config.h and . */ -#undef HAVE_MAP_ANONYMOUS - -/* Define to 1 if you have the `mbrtowc' function. */ -#undef HAVE_MBRTOWC - -/* Define to 1 if you have the `mbsinit' function. */ -#undef HAVE_MBSINIT - -/* Define to 1 if you have the `mbsrtowcs' function. */ -#undef HAVE_MBSRTOWCS - -/* Define to 1 if declares mbstate_t. */ -#undef HAVE_MBSTATE_T - -/* Define to 1 if you have the `memalign' function. */ -#undef HAVE_MEMALIGN - -/* Define to 1 if you have the header file. */ -#undef HAVE_MEMORY_H - -/* Define to 1 if you have the `mempcpy' function. */ -#undef HAVE_MEMPCPY - -/* Define to 1 if you have the `memrchr' function. */ -#undef HAVE_MEMRCHR - -/* Define to 1 if you have the `mprotect' function. */ -#undef HAVE_MPROTECT - -/* Define to 1 on MSVC platforms that have the "invalid parameter handler" - concept. */ -#undef HAVE_MSVC_INVALID_PARAMETER_HANDLER - -/* Define to 1 if you have the `nl_langinfo' function. */ -#undef HAVE_NL_LANGINFO - -/* Define to 1 if you have the `openat' function. */ -#undef HAVE_OPENAT - -/* Define if opendisk() in -lutil can be used */ -#undef HAVE_OPENDISK - -/* Define to 1 if you have the header file. */ -#undef HAVE_PCIACCESS_H - -/* Define to 1 if you have the `pipe' function. */ -#undef HAVE_PIPE - -/* Define to 1 if you have the `posix_memalign' function. */ -#undef HAVE_POSIX_MEMALIGN - -/* Define if program_invocation_name is defined */ -#undef HAVE_PROGRAM_INVOCATION_NAME - -/* Define if program_invocation_short_name is defined */ -#undef HAVE_PROGRAM_INVOCATION_SHORT_NAME - -/* Define if the defines PTHREAD_MUTEX_RECURSIVE. */ -#undef HAVE_PTHREAD_MUTEX_RECURSIVE - -/* Define if the POSIX multithreading library has read/write locks. */ -#undef HAVE_PTHREAD_RWLOCK - -/* Define if the 'pthread_rwlock_rdlock' function prefers a writer to a - reader. */ -#undef HAVE_PTHREAD_RWLOCK_RDLOCK_PREFER_WRITER - -/* Define to 1 if you have the `rawmemchr' function. */ -#undef HAVE_RAWMEMCHR - -/* Define to 1 if your system has a GNU libc compatible 'realloc' function, - and to 0 otherwise. */ -#undef HAVE_REALLOC_GNU - -/* Define if the 'realloc' function is POSIX compliant. */ -#undef HAVE_REALLOC_POSIX - -/* Define to 1 if you have the header file. */ -#undef HAVE_SDL_SDL_H - -/* Define to 1 if you have the `setdtablesize' function. */ -#undef HAVE_SETDTABLESIZE - -/* Define to 1 if 'sig_atomic_t' is a signed integer type. */ -#undef HAVE_SIGNED_SIG_ATOMIC_T - -/* Define to 1 if 'wchar_t' is a signed integer type. */ -#undef HAVE_SIGNED_WCHAR_T - -/* Define to 1 if 'wint_t' is a signed integer type. */ -#undef HAVE_SIGNED_WINT_T - -/* Define to 1 if you have the `sleep' function. */ -#undef HAVE_SLEEP - -/* Define to 1 if you have the `snprintf' function. */ -#undef HAVE_SNPRINTF - -/* Define if the return value of the snprintf function is the number of of - bytes (excluding the terminating NUL) that would have been produced if the - buffer had been large enough. */ -#undef HAVE_SNPRINTF_RETVAL_C99 - -/* Define to 1 if you have the header file. */ -#undef HAVE_STDINT_H - -/* Define if exists, doesn't clash with , and declares - uintmax_t. */ -#undef HAVE_STDINT_H_WITH_UINTMAX - -/* Define to 1 if you have the header file. */ -#undef HAVE_STDLIB_H - -/* Define to 1 if you have the `strcasecmp' function. */ -#undef HAVE_STRCASECMP - -/* Define to 1 if you have the `strchrnul' function. */ -#undef HAVE_STRCHRNUL - -/* Define to 1 if you have the `strdup' function. */ -#undef HAVE_STRDUP - -/* Define to 1 if you have the `strerror_r' function. */ -#undef HAVE_STRERROR_R - -/* Define to 1 if you have the header file. */ -#undef HAVE_STRINGS_H - -/* Define to 1 if you have the header file. */ -#undef HAVE_STRING_H - -/* Define to 1 if you have the `strncasecmp' function. */ -#undef HAVE_STRNCASECMP - -/* Define to 1 if you have the `strndup' function. */ -#undef HAVE_STRNDUP - -/* Define to 1 if you have the `strnlen' function. */ -#undef HAVE_STRNLEN - -/* Define to 1 if `decimal_point' is a member of `struct lconv'. */ -#undef HAVE_STRUCT_LCONV_DECIMAL_POINT - -/* Define to 1 if `f_fstypename' is a member of `struct statfs'. */ -#undef HAVE_STRUCT_STATFS_F_FSTYPENAME - -/* Define to 1 if `f_mntfromname' is a member of `struct statfs'. */ -#undef HAVE_STRUCT_STATFS_F_MNTFROMNAME - -/* Define to 1 if `st_atimensec' is a member of `struct stat'. */ -#undef HAVE_STRUCT_STAT_ST_ATIMENSEC - -/* Define to 1 if `st_atimespec.tv_nsec' is a member of `struct stat'. */ -#undef HAVE_STRUCT_STAT_ST_ATIMESPEC_TV_NSEC - -/* Define to 1 if `st_atim.st__tim.tv_nsec' is a member of `struct stat'. */ -#undef HAVE_STRUCT_STAT_ST_ATIM_ST__TIM_TV_NSEC - -/* Define to 1 if `st_atim.tv_nsec' is a member of `struct stat'. */ -#undef HAVE_STRUCT_STAT_ST_ATIM_TV_NSEC - -/* Define to 1 if `st_birthtimensec' is a member of `struct stat'. */ -#undef HAVE_STRUCT_STAT_ST_BIRTHTIMENSEC - -/* Define to 1 if `st_birthtimespec.tv_nsec' is a member of `struct stat'. */ -#undef HAVE_STRUCT_STAT_ST_BIRTHTIMESPEC_TV_NSEC - -/* Define to 1 if `st_birthtim.tv_nsec' is a member of `struct stat'. */ -#undef HAVE_STRUCT_STAT_ST_BIRTHTIM_TV_NSEC - -/* Define to 1 if you have the `symlink' function. */ -#undef HAVE_SYMLINK - -/* Define to 1 if you have the header file. */ -#undef HAVE_SYSEXITS_H - -/* Define to 1 if you have the header file. */ -#undef HAVE_SYS_BITYPES_H - -/* Define to 1 if you have the header file. */ -#undef HAVE_SYS_CDEFS_H - -/* Define to 1 if you have the header file. */ -#undef HAVE_SYS_INTTYPES_H - -/* Define to 1 if you have the header file. */ -#undef HAVE_SYS_MMAN_H - -/* Define to 1 if you have the header file. */ -#undef HAVE_SYS_MNTTAB_H - -/* Define to 1 if you have the header file. */ -#undef HAVE_SYS_MOUNT_H - -/* Define to 1 if you have the header file. */ -#undef HAVE_SYS_PARAM_H - -/* Define to 1 if you have the header file. */ -#undef HAVE_SYS_SOCKET_H - -/* Define to 1 if you have the header file. */ -#undef HAVE_SYS_STAT_H - -/* Define to 1 if you have the header file. */ -#undef HAVE_SYS_TIME_H - -/* Define to 1 if you have the header file. */ -#undef HAVE_SYS_TYPES_H - -/* Define to 1 if you have the `towlower' function. */ -#undef HAVE_TOWLOWER - -/* Define to 1 if you have the header file. */ -#undef HAVE_UNISTD_H - -/* Define to 1 if the system has the type 'unsigned long long int'. */ -#undef HAVE_UNSIGNED_LONG_LONG_INT - -/* Define if you have a global __progname variable */ -#undef HAVE_VAR___PROGNAME - -/* Define to 1 if you have the `vasnprintf' function. */ -#undef HAVE_VASNPRINTF - -/* Define to 1 if you have the `vsnprintf' function. */ -#undef HAVE_VSNPRINTF - -/* Define to 1 if you have the header file. */ -#undef HAVE_WCHAR_H - -/* Define if you have the 'wchar_t' type. */ -#undef HAVE_WCHAR_T - -/* Define to 1 if you have the `wcrtomb' function. */ -#undef HAVE_WCRTOMB - -/* Define to 1 if you have the `wcslen' function. */ -#undef HAVE_WCSLEN - -/* Define to 1 if you have the `wcsnlen' function. */ -#undef HAVE_WCSNLEN - -/* Define to 1 if you have the header file. */ -#undef HAVE_WCTYPE_H - -/* Define to 1 if you have the `wcwidth' function. */ -#undef HAVE_WCWIDTH - -/* Define to 1 if you have the header file. */ -#undef HAVE_WINSOCK2_H - -/* Define if you have the 'wint_t' type. */ -#undef HAVE_WINT_T - -/* Define to 1 if you have the `wmemchr' function. */ -#undef HAVE_WMEMCHR - -/* Define to 1 if you have the `wmemcpy' function. */ -#undef HAVE_WMEMCPY - -/* Define to 1 if you have the `wmempcpy' function. */ -#undef HAVE_WMEMPCPY - -/* Define to 1 if O_NOATIME works. */ -#undef HAVE_WORKING_O_NOATIME - -/* Define to 1 if O_NOFOLLOW works. */ -#undef HAVE_WORKING_O_NOFOLLOW - -/* Define to 1 if you have the header file. */ -#undef HAVE_XLOCALE_H - -/* Define to 1 if the system has the type `_Bool'. */ -#undef HAVE__BOOL - -/* Define to 1 if you have the `_restgpr_14_x' function. */ -#undef HAVE__RESTGPR_14_X - -/* Define to 1 if you have the `_set_invalid_parameter_handler' function. */ -#undef HAVE__SET_INVALID_PARAMETER_HANDLER - -/* Define to 1 if you have the `__aeabi_idiv' function. */ -#undef HAVE___AEABI_IDIV - -/* Define to 1 if you have the `__aeabi_idivmod' function. */ -#undef HAVE___AEABI_IDIVMOD - -/* Define to 1 if you have the `__aeabi_lasr' function. */ -#undef HAVE___AEABI_LASR - -/* Define to 1 if you have the `__aeabi_llsl' function. */ -#undef HAVE___AEABI_LLSL - -/* Define to 1 if you have the `__aeabi_llsr' function. */ -#undef HAVE___AEABI_LLSR - -/* Define to 1 if you have the `__aeabi_lmul' function. */ -#undef HAVE___AEABI_LMUL - -/* Define to 1 if you have the `__aeabi_memclr' function. */ -#undef HAVE___AEABI_MEMCLR - -/* Define to 1 if you have the `__aeabi_memclr4' function. */ -#undef HAVE___AEABI_MEMCLR4 - -/* Define to 1 if you have the `__aeabi_memclr8' function. */ -#undef HAVE___AEABI_MEMCLR8 - -/* Define to 1 if you have the `__aeabi_memcpy' function. */ -#undef HAVE___AEABI_MEMCPY - -/* Define to 1 if you have the `__aeabi_memcpy4' function. */ -#undef HAVE___AEABI_MEMCPY4 - -/* Define to 1 if you have the `__aeabi_memcpy8' function. */ -#undef HAVE___AEABI_MEMCPY8 - -/* Define to 1 if you have the `__aeabi_memset' function. */ -#undef HAVE___AEABI_MEMSET - -/* Define to 1 if you have the `__aeabi_uidiv' function. */ -#undef HAVE___AEABI_UIDIV - -/* Define to 1 if you have the `__aeabi_uidivmod' function. */ -#undef HAVE___AEABI_UIDIVMOD - -/* Define to 1 if you have the `__aeabi_ulcmp' function. */ -#undef HAVE___AEABI_ULCMP - -/* Define to 1 if you have the `__ashldi3' function. */ -#undef HAVE___ASHLDI3 - -/* Define to 1 if you have the `__ashrdi3' function. */ -#undef HAVE___ASHRDI3 - -/* Define to 1 if you have the `__bswapdi2' function. */ -#undef HAVE___BSWAPDI2 - -/* Define to 1 if you have the `__bswapsi2' function. */ -#undef HAVE___BSWAPSI2 - -/* Define to 1 if the compiler supports __builtin_expect, - and to 2 if does. */ -#undef HAVE___BUILTIN_EXPECT -#ifndef HAVE___BUILTIN_EXPECT -# define __builtin_expect(e, c) (e) -#elif HAVE___BUILTIN_EXPECT == 2 -# include -#endif - - -/* Define to 1 if you have the `__bzero' function. */ -#undef HAVE___BZERO - -/* Define to 1 if you have the `__chkstk_ms' function. */ -#undef HAVE___CHKSTK_MS - -/* Define to 1 if you have the `__ctzdi2' function. */ -#undef HAVE___CTZDI2 - -/* Define to 1 if you have the `__ctzsi2' function. */ -#undef HAVE___CTZSI2 - -/* Define to 1 if you have the `__deregister_frame_info' function. */ -#undef HAVE___DEREGISTER_FRAME_INFO - -/* Define to 1 if you have the `__divdi3' function. */ -#undef HAVE___DIVDI3 - -/* Define to 1 if you have the `__divsi3' function. */ -#undef HAVE___DIVSI3 - -/* Define to 1 if the compiler supports the keyword '__inline'. */ -#undef HAVE___INLINE - -/* Define to 1 if you have the `__lshrdi3' function. */ -#undef HAVE___LSHRDI3 - -/* Define to 1 if you have the `__moddi3' function. */ -#undef HAVE___MODDI3 - -/* Define to 1 if you have the `__modsi3' function. */ -#undef HAVE___MODSI3 - -/* Define to 1 if you have the `__muldi3' function. */ -#undef HAVE___MULDI3 - -/* Define to 1 if you have the `__register_frame_info' function. */ -#undef HAVE___REGISTER_FRAME_INFO - -/* Define to 1 if you have the `__ucmpdi2' function. */ -#undef HAVE___UCMPDI2 - -/* Define to 1 if you have the `__udivdi3' function. */ -#undef HAVE___UDIVDI3 - -/* Define to 1 if you have the `__udivsi3' function. */ -#undef HAVE___UDIVSI3 - -/* Define to 1 if you have the `__umoddi3' function. */ -#undef HAVE___UMODDI3 - -/* Define to 1 if you have the `__umodsi3' function. */ -#undef HAVE___UMODSI3 - -/* Define to 1 if you have the `___chkstk_ms' function. */ -#undef HAVE____CHKSTK_MS - -/* Locale dir */ -#undef LOCALEDIR - -/* Define to 1 if 'lstat' dereferences a symlink specified with a trailing - slash. */ -#undef LSTAT_FOLLOWS_SLASHED_SYMLINK - -/* Define to 1 if `major', `minor', and `makedev' are declared in . - */ -#undef MAJOR_IN_MKDEV - -/* Define to 1 if `major', `minor', and `makedev' are declared in - . */ -#undef MAJOR_IN_SYSMACROS - -/* If malloc(0) is != NULL, define this to 1. Otherwise define this to 0. */ -#undef MALLOC_0_IS_NONNULL - -/* Define to a substitute value for mmap()'s MAP_ANONYMOUS flag. */ -#undef MAP_ANONYMOUS - -/* Define if the mbrtowc function does not return (size_t) -2 for empty input. - */ -#undef MBRTOWC_EMPTY_INPUT_BUG - -/* Define if the mbrtowc function has the NULL pwc argument bug. */ -#undef MBRTOWC_NULL_ARG1_BUG - -/* Define if the mbrtowc function has the NULL string argument bug. */ -#undef MBRTOWC_NULL_ARG2_BUG - -/* Define if the mbrtowc function does not return 0 for a NUL character. */ -#undef MBRTOWC_NUL_RETVAL_BUG - -/* Define if the mbrtowc function returns a wrong return value. */ -#undef MBRTOWC_RETVAL_BUG - -/* Use GNU style printf and scanf. */ -#ifndef __USE_MINGW_ANSI_STDIO -# undef __USE_MINGW_ANSI_STDIO -#endif - - -/* Define to 1 if you enable memory manager debugging. */ -#undef MM_DEBUG - -/* Define to 1 if open() fails to recognize a trailing slash. */ -#undef OPEN_TRAILING_SLASH_BUG - -/* Name of package */ -#undef PACKAGE - -/* Define to the address where bug reports for this package should be sent. */ -#undef PACKAGE_BUGREPORT - -/* Define to the full name of this package. */ -#undef PACKAGE_NAME - -/* Define to the full name and version of this package. */ -#undef PACKAGE_STRING - -/* Define to the one symbol short name of this package. */ -#undef PACKAGE_TARNAME - -/* Define to the home page for this package. */ -#undef PACKAGE_URL - -/* Define to the version of this package. */ -#undef PACKAGE_VERSION - -/* Define to the type that is the result of default argument promotions of - type mode_t. */ -#undef PROMOTED_MODE_T - -/* Define if the pthread_in_use() detection is hard. */ -#undef PTHREAD_IN_USE_DETECTION_HARD - -/* Define to l, ll, u, ul, ull, etc., as suitable for constants of type - 'ptrdiff_t'. */ -#undef PTRDIFF_T_SUFFIX - -/* Define to 1 if gnulib's dirfd() replacement is used. */ -#undef REPLACE_DIRFD - -/* Define to 1 if gnulib's fchdir() replacement is used. */ -#undef REPLACE_FCHDIR - -/* Define to 1 if stat needs help when passed a file name with a trailing - slash */ -#undef REPLACE_FUNC_STAT_FILE - -/* Define if nl_langinfo exists but is overridden by gnulib. */ -#undef REPLACE_NL_LANGINFO - -/* Define to 1 if open() should work around the inability to open a directory. - */ -#undef REPLACE_OPEN_DIRECTORY - -/* Define to 1 if strerror(0) does not return a message implying success. */ -#undef REPLACE_STRERROR_0 - -/* Define if vasnprintf exists but is overridden by gnulib. */ -#undef REPLACE_VASNPRINTF - -/* Define to l, ll, u, ul, ull, etc., as suitable for constants of type - 'sig_atomic_t'. */ -#undef SIG_ATOMIC_T_SUFFIX - -/* The size of `long', as computed by sizeof. */ -#undef SIZEOF_LONG - -/* The size of `off64_t', as computed by sizeof. */ -#undef SIZEOF_OFF64_T - -/* The size of `off_t', as computed by sizeof. */ -#undef SIZEOF_OFF_T - -/* The size of `TCHAR', as computed by sizeof. */ -#undef SIZEOF_TCHAR - -/* The size of `void *', as computed by sizeof. */ -#undef SIZEOF_VOID_P - -/* Define as the maximum value of type 'size_t', if the system doesn't define - it. */ -#ifndef SIZE_MAX -# undef SIZE_MAX -#endif - -/* Define to l, ll, u, ul, ull, etc., as suitable for constants of type - 'size_t'. */ -#undef SIZE_T_SUFFIX - -/* If using the C implementation of alloca, define if you know the - direction of stack growth for your system; otherwise it will be - automatically deduced at runtime. - STACK_DIRECTION > 0 => grows toward higher addresses - STACK_DIRECTION < 0 => grows toward lower addresses - STACK_DIRECTION = 0 => direction of growth unknown */ -#undef STACK_DIRECTION - -/* Define to 1 if the `S_IS*' macros in do not work properly. */ -#undef STAT_MACROS_BROKEN - -/* Define to 1 if you have the ANSI C header files. */ -#undef STDC_HEADERS - -/* Define to 1 if strerror_r returns char *. */ -#undef STRERROR_R_CHAR_P - -/* Define to 1 if the type of the st_atim member of a struct stat is struct - timespec. */ -#undef TYPEOF_STRUCT_STAT_ST_ATIM_IS_STRUCT_TIMESPEC - -/* Define to 1 if you have the LZMA library. */ -#undef USE_LIBLZMA - -/* Define if the POSIX multithreading library can be used. */ -#undef USE_POSIX_THREADS - -/* Define if references to the POSIX multithreading library should be made - weak. */ -#undef USE_POSIX_THREADS_WEAK - -/* Define if the GNU Pth multithreading library can be used. */ -#undef USE_PTH_THREADS - -/* Define if references to the GNU Pth multithreading library should be made - weak. */ -#undef USE_PTH_THREADS_WEAK - -/* Define if the old Solaris multithreading library can be used. */ -#undef USE_SOLARIS_THREADS - -/* Define if references to the old Solaris multithreading library should be - made weak. */ -#undef USE_SOLARIS_THREADS_WEAK - -/* Enable extensions on AIX 3, Interix. */ -#ifndef _ALL_SOURCE -# undef _ALL_SOURCE -#endif -/* Enable general extensions on macOS. */ -#ifndef _DARWIN_C_SOURCE -# undef _DARWIN_C_SOURCE -#endif -/* Enable GNU extensions on systems that have them. */ -#ifndef _GNU_SOURCE -# undef _GNU_SOURCE -#endif -/* Enable NetBSD extensions on NetBSD. */ -#ifndef _NETBSD_SOURCE -# undef _NETBSD_SOURCE -#endif -/* Enable OpenBSD extensions on NetBSD. */ -#ifndef _OPENBSD_SOURCE -# undef _OPENBSD_SOURCE -#endif -/* Enable threading extensions on Solaris. */ -#ifndef _POSIX_PTHREAD_SEMANTICS -# undef _POSIX_PTHREAD_SEMANTICS -#endif -/* Enable extensions specified by ISO/IEC TS 18661-5:2014. */ -#ifndef __STDC_WANT_IEC_60559_ATTRIBS_EXT__ -# undef __STDC_WANT_IEC_60559_ATTRIBS_EXT__ -#endif -/* Enable extensions specified by ISO/IEC TS 18661-1:2014. */ -#ifndef __STDC_WANT_IEC_60559_BFP_EXT__ -# undef __STDC_WANT_IEC_60559_BFP_EXT__ -#endif -/* Enable extensions specified by ISO/IEC TS 18661-2:2015. */ -#ifndef __STDC_WANT_IEC_60559_DFP_EXT__ -# undef __STDC_WANT_IEC_60559_DFP_EXT__ -#endif -/* Enable extensions specified by ISO/IEC TS 18661-4:2015. */ -#ifndef __STDC_WANT_IEC_60559_FUNCS_EXT__ -# undef __STDC_WANT_IEC_60559_FUNCS_EXT__ -#endif -/* Enable extensions specified by ISO/IEC TS 18661-3:2015. */ -#ifndef __STDC_WANT_IEC_60559_TYPES_EXT__ -# undef __STDC_WANT_IEC_60559_TYPES_EXT__ -#endif -/* Enable extensions specified by ISO/IEC TR 24731-2:2010. */ -#ifndef __STDC_WANT_LIB_EXT2__ -# undef __STDC_WANT_LIB_EXT2__ -#endif -/* Enable extensions specified by ISO/IEC 24747:2009. */ -#ifndef __STDC_WANT_MATH_SPEC_FUNCS__ -# undef __STDC_WANT_MATH_SPEC_FUNCS__ -#endif -/* Enable extensions on HP NonStop. */ -#ifndef _TANDEM_SOURCE -# undef _TANDEM_SOURCE -#endif -/* Enable X/Open extensions if necessary. HP-UX 11.11 defines - mbstate_t only if _XOPEN_SOURCE is defined to 500, regardless of - whether compiling with -Ae or -D_HPUX_SOURCE=1. */ -#ifndef _XOPEN_SOURCE -# undef _XOPEN_SOURCE -#endif -/* Enable X/Open compliant socket functions that do not require linking - with -lxnet on HP-UX 11.11. */ -#ifndef _HPUX_ALT_XOPEN_SOCKET_API -# undef _HPUX_ALT_XOPEN_SOCKET_API -#endif -/* Enable general extensions on Solaris. */ -#ifndef __EXTENSIONS__ -# undef __EXTENSIONS__ -#endif - - -/* Define if the native Windows multithreading API can be used. */ -#undef USE_WINDOWS_THREADS - -/* Version number of package */ -#undef VERSION - -/* Define to l, ll, u, ul, ull, etc., as suitable for constants of type - 'wchar_t'. */ -#undef WCHAR_T_SUFFIX - -/* Define to l, ll, u, ul, ull, etc., as suitable for constants of type - 'wint_t'. */ -#undef WINT_T_SUFFIX - -/* Define WORDS_BIGENDIAN to 1 if your processor stores words with the most - significant byte first (like Motorola and SPARC, unlike Intel). */ -#if defined AC_APPLE_UNIVERSAL_BUILD -# if defined __BIG_ENDIAN__ -# define WORDS_BIGENDIAN 1 -# endif -#else -# ifndef WORDS_BIGENDIAN -# undef WORDS_BIGENDIAN -# endif -#endif - -/* Define to 1 if `lex' declares `yytext' as a `char *' by default, not a - `char[]'. */ -#undef YYTEXT_POINTER - -/* Enable large inode numbers on Mac OS X 10.5. */ -#undef _DARWIN_USE_64_BIT_INODE - -/* Number of bits in a file offset, on hosts where this is settable. */ -#undef _FILE_OFFSET_BITS - -/* Define for large files, on AIX-style hosts. */ -#undef _LARGE_FILES - -/* Define to 1 on Solaris. */ -#undef _LCONV_C99 - -/* Define to 1 if on MINIX. */ -#undef _MINIX - -/* Define to 1 to make NetBSD features available. MINIX 3 needs this. */ -#undef _NETBSD_SOURCE - -/* The _Noreturn keyword of C11. */ -#ifndef _Noreturn -# if 201103 <= (defined __cplusplus ? __cplusplus : 0) -# define _Noreturn [[noreturn]] -# elif (201112 <= (defined __STDC_VERSION__ ? __STDC_VERSION__ : 0) \ - || 4 < __GNUC__ + (7 <= __GNUC_MINOR__)) - /* _Noreturn works as-is. */ -# elif 2 < __GNUC__ + (8 <= __GNUC_MINOR__) || 0x5110 <= __SUNPRO_C -# define _Noreturn __attribute__ ((__noreturn__)) -# elif 1200 <= (defined _MSC_VER ? _MSC_VER : 0) -# define _Noreturn __declspec (noreturn) -# else -# define _Noreturn -# endif -#endif - - -/* Define to 2 if the system does not provide POSIX.1 features except with - this defined. */ -#undef _POSIX_1_SOURCE - -/* Define to 1 if you need to in order for 'stat' and other things to work. */ -#undef _POSIX_SOURCE - -/* Define if you want to include , so that it consistently - overrides 's RE_DUP_MAX. */ -#undef _REGEX_INCLUDE_LIMITS_H - -/* Define if you want regoff_t to be at least as wide POSIX requires. */ -#undef _REGEX_LARGE_OFFSETS - -/* For standard stat data types on VMS. */ -#undef _USE_STD_STAT - -/* Define to rpl_ if the getopt replacement functions and variables should be - used. */ -#undef __GETOPT_PREFIX - -/* Define to 1 if the system predates C++11. */ -#undef __STDC_CONSTANT_MACROS - -/* Define to 1 if the system predates C++11. */ -#undef __STDC_LIMIT_MACROS - -/* Please see the Gnulib manual for how to use these macros. - - Suppress extern inline with HP-UX cc, as it appears to be broken; see - . - - Suppress extern inline with Sun C in standards-conformance mode, as it - mishandles inline functions that call each other. E.g., for 'inline void f - (void) { } inline void g (void) { f (); }', c99 incorrectly complains - 'reference to static identifier "f" in extern inline function'. - This bug was observed with Sun C 5.12 SunOS_i386 2011/11/16. - - Suppress extern inline (with or without __attribute__ ((__gnu_inline__))) - on configurations that mistakenly use 'static inline' to implement - functions or macros in standard C headers like . For example, - if isdigit is mistakenly implemented via a static inline function, - a program containing an extern inline function that calls isdigit - may not work since the C standard prohibits extern inline functions - from calling static functions (ISO C 99 section 6.7.4.(3). - This bug is known to occur on: - - OS X 10.8 and earlier; see: - https://lists.gnu.org/r/bug-gnulib/2012-12/msg00023.html - - DragonFly; see - http://muscles.dragonflybsd.org/bulk/bleeding-edge-potential/latest-per-pkg/ah-tty-0.3.12.log - - FreeBSD; see: - https://lists.gnu.org/r/bug-gnulib/2014-07/msg00104.html - - OS X 10.9 has a macro __header_inline indicating the bug is fixed for C and - for clang but remains for g++; see . - Assume DragonFly and FreeBSD will be similar. - - GCC 4.3 and above with -std=c99 or -std=gnu99 implements ISO C99 - inline semantics, unless -fgnu89-inline is used. It defines a macro - __GNUC_STDC_INLINE__ to indicate this situation or a macro - __GNUC_GNU_INLINE__ to indicate the opposite situation. - GCC 4.2 with -std=c99 or -std=gnu99 implements the GNU C inline - semantics but warns, unless -fgnu89-inline is used: - warning: C99 inline functions are not supported; using GNU89 - warning: to disable this warning use -fgnu89-inline or the gnu_inline function attribute - It defines a macro __GNUC_GNU_INLINE__ to indicate this situation. - */ -#if (((defined __APPLE__ && defined __MACH__) \ - || defined __DragonFly__ || defined __FreeBSD__) \ - && (defined __header_inline \ - ? (defined __cplusplus && defined __GNUC_STDC_INLINE__ \ - && ! defined __clang__) \ - : ((! defined _DONT_USE_CTYPE_INLINE_ \ - && (defined __GNUC__ || defined __cplusplus)) \ - || (defined _FORTIFY_SOURCE && 0 < _FORTIFY_SOURCE \ - && defined __GNUC__ && ! defined __cplusplus)))) -# define _GL_EXTERN_INLINE_STDHEADER_BUG -#endif -#if ((__GNUC__ \ - ? defined __GNUC_STDC_INLINE__ && __GNUC_STDC_INLINE__ \ - : (199901L <= __STDC_VERSION__ \ - && !defined __HP_cc \ - && !defined __PGI \ - && !(defined __SUNPRO_C && __STDC__))) \ - && !defined _GL_EXTERN_INLINE_STDHEADER_BUG) -# define _GL_INLINE inline -# define _GL_EXTERN_INLINE extern inline -# define _GL_EXTERN_INLINE_IN_USE -#elif (2 < __GNUC__ + (7 <= __GNUC_MINOR__) && !defined __STRICT_ANSI__ \ - && !defined _GL_EXTERN_INLINE_STDHEADER_BUG) -# if defined __GNUC_GNU_INLINE__ && __GNUC_GNU_INLINE__ - /* __gnu_inline__ suppresses a GCC 4.2 diagnostic. */ -# define _GL_INLINE extern inline __attribute__ ((__gnu_inline__)) -# else -# define _GL_INLINE extern inline -# endif -# define _GL_EXTERN_INLINE extern -# define _GL_EXTERN_INLINE_IN_USE -#else -# define _GL_INLINE static _GL_UNUSED -# define _GL_EXTERN_INLINE static _GL_UNUSED -#endif - -/* In GCC 4.6 (inclusive) to 5.1 (exclusive), - suppress bogus "no previous prototype for 'FOO'" - and "no previous declaration for 'FOO'" diagnostics, - when FOO is an inline function in the header; see - and - . */ -#if __GNUC__ == 4 && 6 <= __GNUC_MINOR__ -# if defined __GNUC_STDC_INLINE__ && __GNUC_STDC_INLINE__ -# define _GL_INLINE_HEADER_CONST_PRAGMA -# else -# define _GL_INLINE_HEADER_CONST_PRAGMA \ - _Pragma ("GCC diagnostic ignored \"-Wsuggest-attribute=const\"") -# endif -# define _GL_INLINE_HEADER_BEGIN \ - _Pragma ("GCC diagnostic push") \ - _Pragma ("GCC diagnostic ignored \"-Wmissing-prototypes\"") \ - _Pragma ("GCC diagnostic ignored \"-Wmissing-declarations\"") \ - _GL_INLINE_HEADER_CONST_PRAGMA -# define _GL_INLINE_HEADER_END \ - _Pragma ("GCC diagnostic pop") -#else -# define _GL_INLINE_HEADER_BEGIN -# define _GL_INLINE_HEADER_END -#endif - -/* Define to `__inline__' or `__inline' if that's what the C compiler - calls it, or to nothing if 'inline' is not supported under any name. */ -#ifndef __cplusplus -#undef inline -#endif - -/* Define to long or long long if and don't define. */ -#undef intmax_t - -/* Work around a bug in Apple GCC 4.0.1 build 5465: In C99 mode, it supports - the ISO C 99 semantics of 'extern inline' (unlike the GNU C semantics of - earlier versions), but does not display it by setting __GNUC_STDC_INLINE__. - __APPLE__ && __MACH__ test for Mac OS X. - __APPLE_CC__ tests for the Apple compiler and its version. - __STDC_VERSION__ tests for the C99 mode. */ -#if defined __APPLE__ && defined __MACH__ && __APPLE_CC__ >= 5465 && !defined __cplusplus && __STDC_VERSION__ >= 199901L && !defined __GNUC_STDC_INLINE__ -# define __GNUC_STDC_INLINE__ 1 -#endif - -/* Define to a type if does not define. */ -#undef mbstate_t - -/* Define to `int' if does not define. */ -#undef mode_t - -/* Define to the type of st_nlink in struct stat, or a supertype. */ -#undef nlink_t - -/* Define to `int' if does not define. */ -#undef pid_t - -/* Define as the type of the result of subtracting two pointers, if the system - doesn't define it. */ -#undef ptrdiff_t - -/* Define to rpl_re_comp if the replacement should be used. */ -#undef re_comp - -/* Define to rpl_re_compile_fastmap if the replacement should be used. */ -#undef re_compile_fastmap - -/* Define to rpl_re_compile_pattern if the replacement should be used. */ -#undef re_compile_pattern - -/* Define to rpl_re_exec if the replacement should be used. */ -#undef re_exec - -/* Define to rpl_re_match if the replacement should be used. */ -#undef re_match - -/* Define to rpl_re_match_2 if the replacement should be used. */ -#undef re_match_2 - -/* Define to rpl_re_search if the replacement should be used. */ -#undef re_search - -/* Define to rpl_re_search_2 if the replacement should be used. */ -#undef re_search_2 - -/* Define to rpl_re_set_registers if the replacement should be used. */ -#undef re_set_registers - -/* Define to rpl_re_set_syntax if the replacement should be used. */ -#undef re_set_syntax - -/* Define to rpl_re_syntax_options if the replacement should be used. */ -#undef re_syntax_options - -/* Define to rpl_regcomp if the replacement should be used. */ -#undef regcomp - -/* Define to rpl_regerror if the replacement should be used. */ -#undef regerror - -/* Define to rpl_regexec if the replacement should be used. */ -#undef regexec - -/* Define to rpl_regfree if the replacement should be used. */ -#undef regfree - -/* Define to the equivalent of the C99 'restrict' keyword, or to - nothing if this is not supported. Do not define if restrict is - supported directly. */ -#undef restrict -/* Work around a bug in Sun C++: it does not support _Restrict or - __restrict__, even though the corresponding Sun C compiler ends up with - "#define restrict _Restrict" or "#define restrict __restrict__" in the - previous line. Perhaps some future version of Sun C++ will work with - restrict; if so, hopefully it defines __RESTRICT like Sun C does. */ -#if defined __SUNPRO_CC && !defined __RESTRICT -# define _Restrict -# define __restrict__ -#endif - -/* Define to `unsigned int' if does not define. */ -#undef size_t - -/* Define as a signed type of the same size as size_t. */ -#undef ssize_t - -/* Define as a marker that can be attached to declarations that might not - be used. This helps to reduce warnings, such as from - GCC -Wunused-parameter. */ -#if __GNUC__ >= 3 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 7) -# define _GL_UNUSED __attribute__ ((__unused__)) -#else -# define _GL_UNUSED -#endif -/* The name _UNUSED_PARAMETER_ is an earlier spelling, although the name - is a misnomer outside of parameter lists. */ -#define _UNUSED_PARAMETER_ _GL_UNUSED - -/* gcc supports the "unused" attribute on possibly unused labels, and - g++ has since version 4.5. Note to support C++ as well as C, - _GL_UNUSED_LABEL should be used with a trailing ; */ -#if !defined __cplusplus || __GNUC__ > 4 \ - || (__GNUC__ == 4 && __GNUC_MINOR__ >= 5) -# define _GL_UNUSED_LABEL _GL_UNUSED -#else -# define _GL_UNUSED_LABEL -#endif - -/* The __pure__ attribute was added in gcc 2.96. */ -#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 96) -# define _GL_ATTRIBUTE_PURE __attribute__ ((__pure__)) -#else -# define _GL_ATTRIBUTE_PURE /* empty */ -#endif - -/* The __const__ attribute was added in gcc 2.95. */ -#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 95) -# define _GL_ATTRIBUTE_CONST __attribute__ ((__const__)) -#else -# define _GL_ATTRIBUTE_CONST /* empty */ -#endif - -/* The __malloc__ attribute was added in gcc 3. */ -#if 3 <= __GNUC__ -# define _GL_ATTRIBUTE_MALLOC __attribute__ ((__malloc__)) -#else -# define _GL_ATTRIBUTE_MALLOC /* empty */ -#endif - diff --git a/thirdparty/grub-2.04/config.h.in b/thirdparty/grub-2.04/config.h.in deleted file mode 100644 index 9e8f9911b..000000000 --- a/thirdparty/grub-2.04/config.h.in +++ /dev/null @@ -1,67 +0,0 @@ -#undef _LARGEFILE_SOURCE -#undef _FILE_OFFSET_BITS -#define _LARGEFILE_SOURCE -#define _FILE_OFFSET_BITS 64 -#if defined(__PPC__) && !defined(__powerpc__) -#define __powerpc__ 1 -#endif - -#define GCRYPT_NO_DEPRECATED 1 -#define HAVE_MEMMOVE 1 - -/* Define to 1 to enable disk cache statistics. */ -#define DISK_CACHE_STATS @DISK_CACHE_STATS@ -#define BOOT_TIME_STATS @BOOT_TIME_STATS@ - -/* We don't need those. */ -#define MINILZO_CFG_SKIP_LZO_PTR 1 -#define MINILZO_CFG_SKIP_LZO_UTIL 1 -#define MINILZO_CFG_SKIP_LZO_STRING 1 -#define MINILZO_CFG_SKIP_LZO_INIT 1 -#define MINILZO_CFG_SKIP_LZO1X_1_COMPRESS 1 -#define MINILZO_CFG_SKIP_LZO1X_DECOMPRESS 1 - -#if defined (GRUB_BUILD) -#undef ENABLE_NLS -#define BUILD_SIZEOF_LONG @BUILD_SIZEOF_LONG@ -#define BUILD_SIZEOF_VOID_P @BUILD_SIZEOF_VOID_P@ -#if defined __APPLE__ -# if defined __BIG_ENDIAN__ -# define BUILD_WORDS_BIGENDIAN 1 -# else -# define BUILD_WORDS_BIGENDIAN 0 -# endif -#else -#define BUILD_WORDS_BIGENDIAN @BUILD_WORDS_BIGENDIAN@ -#endif -#elif defined (GRUB_UTIL) || !defined (GRUB_MACHINE) -#include -#else -#define HAVE_FONT_SOURCE @HAVE_FONT_SOURCE@ -/* Define if C symbols get an underscore after compilation. */ -#define HAVE_ASM_USCORE @HAVE_ASM_USCORE@ -/* Define it to one of __bss_start, edata and _edata. */ -#define BSS_START_SYMBOL @BSS_START_SYMBOL@ -/* Define it to either end or _end. */ -#define END_SYMBOL @END_SYMBOL@ -/* Name of package. */ -#define PACKAGE "@PACKAGE@" -/* Version number of package. */ -#define VERSION "@VERSION@" -/* Define to the full name and version of this package. */ -#define PACKAGE_STRING "@PACKAGE_STRING@" -/* Define to the version of this package. */ -#define PACKAGE_VERSION "@PACKAGE_VERSION@" -/* Define to the full name of this package. */ -#define PACKAGE_NAME "@PACKAGE_NAME@" -/* Define to the address where bug reports for this package should be sent. */ -#define PACKAGE_BUGREPORT "@PACKAGE_BUGREPORT@" - -#define GRUB_TARGET_CPU "@GRUB_TARGET_CPU@" -#define GRUB_PLATFORM "@GRUB_PLATFORM@" - -#define RE_ENABLE_I18N 1 - -#define _GNU_SOURCE 1 - -#endif diff --git a/thirdparty/grub-2.04/configure b/thirdparty/grub-2.04/configure deleted file mode 100755 index 9290ae8ab..000000000 --- a/thirdparty/grub-2.04/configure +++ /dev/null @@ -1,37058 +0,0 @@ -#! /bin/sh -# Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.69 for GRUB 2.04. -# -# Report bugs to . -# -# -# Copyright (C) 1992-1996, 1998-2012 Free Software Foundation, Inc. -# -# -# This configure script is free software; the Free Software Foundation -# gives unlimited permission to copy, distribute and modify it. -## -------------------- ## -## M4sh Initialization. ## -## -------------------- ## - -# Be more Bourne compatible -DUALCASE=1; export DUALCASE # for MKS sh -if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then : - emulate sh - NULLCMD=: - # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which - # is contrary to our usage. Disable this feature. - alias -g '${1+"$@"}'='"$@"' - setopt NO_GLOB_SUBST -else - case `(set -o) 2>/dev/null` in #( - *posix*) : - set -o posix ;; #( - *) : - ;; -esac -fi - - -as_nl=' -' -export as_nl -# Printing a long string crashes Solaris 7 /usr/bin/printf. -as_echo='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\' -as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo -as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo$as_echo -# Prefer a ksh shell builtin over an external printf program on Solaris, -# but without wasting forks for bash or zsh. -if test -z "$BASH_VERSION$ZSH_VERSION" \ - && (test "X`print -r -- $as_echo`" = "X$as_echo") 2>/dev/null; then - as_echo='print -r --' - as_echo_n='print -rn --' -elif (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then - as_echo='printf %s\n' - as_echo_n='printf %s' -else - if test "X`(/usr/ucb/echo -n -n $as_echo) 2>/dev/null`" = "X-n $as_echo"; then - as_echo_body='eval /usr/ucb/echo -n "$1$as_nl"' - as_echo_n='/usr/ucb/echo -n' - else - as_echo_body='eval expr "X$1" : "X\\(.*\\)"' - as_echo_n_body='eval - arg=$1; - case $arg in #( - *"$as_nl"*) - expr "X$arg" : "X\\(.*\\)$as_nl"; - arg=`expr "X$arg" : ".*$as_nl\\(.*\\)"`;; - esac; - expr "X$arg" : "X\\(.*\\)" | tr -d "$as_nl" - ' - export as_echo_n_body - as_echo_n='sh -c $as_echo_n_body as_echo' - fi - export as_echo_body - as_echo='sh -c $as_echo_body as_echo' -fi - -# The user is always right. -if test "${PATH_SEPARATOR+set}" != set; then - PATH_SEPARATOR=: - (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 && { - (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 || - PATH_SEPARATOR=';' - } -fi - - -# IFS -# We need space, tab and new line, in precisely that order. Quoting is -# there to prevent editors from complaining about space-tab. -# (If _AS_PATH_WALK were called with IFS unset, it would disable word -# splitting by setting IFS to empty value.) -IFS=" "" $as_nl" - -# Find who we are. Look in the path if we contain no directory separator. -as_myself= -case $0 in #(( - *[\\/]* ) as_myself=$0 ;; - *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break - done -IFS=$as_save_IFS - - ;; -esac -# We did not find ourselves, most probably we were run as `sh COMMAND' -# in which case we are not to be found in the path. -if test "x$as_myself" = x; then - as_myself=$0 -fi -if test ! -f "$as_myself"; then - $as_echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2 - exit 1 -fi - -# Unset variables that we do not need and which cause bugs (e.g. in -# pre-3.0 UWIN ksh). But do not cause bugs in bash 2.01; the "|| exit 1" -# suppresses any "Segmentation fault" message there. '((' could -# trigger a bug in pdksh 5.2.14. -for as_var in BASH_ENV ENV MAIL MAILPATH -do eval test x\${$as_var+set} = xset \ - && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || : -done -PS1='$ ' -PS2='> ' -PS4='+ ' - -# NLS nuisances. -LC_ALL=C -export LC_ALL -LANGUAGE=C -export LANGUAGE - -# CDPATH. -(unset CDPATH) >/dev/null 2>&1 && unset CDPATH - -# Use a proper internal environment variable to ensure we don't fall - # into an infinite loop, continuously re-executing ourselves. - if test x"${_as_can_reexec}" != xno && test "x$CONFIG_SHELL" != x; then - _as_can_reexec=no; export _as_can_reexec; - # We cannot yet assume a decent shell, so we have to provide a -# neutralization value for shells without unset; and this also -# works around shells that cannot unset nonexistent variables. -# Preserve -v and -x to the replacement shell. -BASH_ENV=/dev/null -ENV=/dev/null -(unset BASH_ENV) >/dev/null 2>&1 && unset BASH_ENV ENV -case $- in # (((( - *v*x* | *x*v* ) as_opts=-vx ;; - *v* ) as_opts=-v ;; - *x* ) as_opts=-x ;; - * ) as_opts= ;; -esac -exec $CONFIG_SHELL $as_opts "$as_myself" ${1+"$@"} -# Admittedly, this is quite paranoid, since all the known shells bail -# out after a failed `exec'. -$as_echo "$0: could not re-execute with $CONFIG_SHELL" >&2 -as_fn_exit 255 - fi - # We don't want this to propagate to other subprocesses. - { _as_can_reexec=; unset _as_can_reexec;} -if test "x$CONFIG_SHELL" = x; then - as_bourne_compatible="if test -n \"\${ZSH_VERSION+set}\" && (emulate sh) >/dev/null 2>&1; then : - emulate sh - NULLCMD=: - # Pre-4.2 versions of Zsh do word splitting on \${1+\"\$@\"}, which - # is contrary to our usage. Disable this feature. - alias -g '\${1+\"\$@\"}'='\"\$@\"' - setopt NO_GLOB_SUBST -else - case \`(set -o) 2>/dev/null\` in #( - *posix*) : - set -o posix ;; #( - *) : - ;; -esac -fi -" - as_required="as_fn_return () { (exit \$1); } -as_fn_success () { as_fn_return 0; } -as_fn_failure () { as_fn_return 1; } -as_fn_ret_success () { return 0; } -as_fn_ret_failure () { return 1; } - -exitcode=0 -as_fn_success || { exitcode=1; echo as_fn_success failed.; } -as_fn_failure && { exitcode=1; echo as_fn_failure succeeded.; } -as_fn_ret_success || { exitcode=1; echo as_fn_ret_success failed.; } -as_fn_ret_failure && { exitcode=1; echo as_fn_ret_failure succeeded.; } -if ( set x; as_fn_ret_success y && test x = \"\$1\" ); then : - -else - exitcode=1; echo positional parameters were not saved. -fi -test x\$exitcode = x0 || exit 1 -test -x / || exit 1" - as_suggested=" as_lineno_1=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_1a=\$LINENO - as_lineno_2=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_2a=\$LINENO - eval 'test \"x\$as_lineno_1'\$as_run'\" != \"x\$as_lineno_2'\$as_run'\" && - test \"x\`expr \$as_lineno_1'\$as_run' + 1\`\" = \"x\$as_lineno_2'\$as_run'\"' || exit 1 -test \$(( 1 + 1 )) = 2 || exit 1" - if (eval "$as_required") 2>/dev/null; then : - as_have_required=yes -else - as_have_required=no -fi - if test x$as_have_required = xyes && (eval "$as_suggested") 2>/dev/null; then : - -else - as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -as_found=false -for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - as_found=: - case $as_dir in #( - /*) - for as_base in sh bash ksh sh5; do - # Try only shells that exist, to save several forks. - as_shell=$as_dir/$as_base - if { test -f "$as_shell" || test -f "$as_shell.exe"; } && - { $as_echo "$as_bourne_compatible""$as_required" | as_run=a "$as_shell"; } 2>/dev/null; then : - CONFIG_SHELL=$as_shell as_have_required=yes - if { $as_echo "$as_bourne_compatible""$as_suggested" | as_run=a "$as_shell"; } 2>/dev/null; then : - break 2 -fi -fi - done;; - esac - as_found=false -done -$as_found || { if { test -f "$SHELL" || test -f "$SHELL.exe"; } && - { $as_echo "$as_bourne_compatible""$as_required" | as_run=a "$SHELL"; } 2>/dev/null; then : - CONFIG_SHELL=$SHELL as_have_required=yes -fi; } -IFS=$as_save_IFS - - - if test "x$CONFIG_SHELL" != x; then : - export CONFIG_SHELL - # We cannot yet assume a decent shell, so we have to provide a -# neutralization value for shells without unset; and this also -# works around shells that cannot unset nonexistent variables. -# Preserve -v and -x to the replacement shell. -BASH_ENV=/dev/null -ENV=/dev/null -(unset BASH_ENV) >/dev/null 2>&1 && unset BASH_ENV ENV -case $- in # (((( - *v*x* | *x*v* ) as_opts=-vx ;; - *v* ) as_opts=-v ;; - *x* ) as_opts=-x ;; - * ) as_opts= ;; -esac -exec $CONFIG_SHELL $as_opts "$as_myself" ${1+"$@"} -# Admittedly, this is quite paranoid, since all the known shells bail -# out after a failed `exec'. -$as_echo "$0: could not re-execute with $CONFIG_SHELL" >&2 -exit 255 -fi - - if test x$as_have_required = xno; then : - $as_echo "$0: This script requires a shell more modern than all" - $as_echo "$0: the shells that I found on your system." - if test x${ZSH_VERSION+set} = xset ; then - $as_echo "$0: In particular, zsh $ZSH_VERSION has bugs and should" - $as_echo "$0: be upgraded to zsh 4.3.4 or later." - else - $as_echo "$0: Please tell bug-autoconf@gnu.org and bug-grub@gnu.org -$0: about your system, including any error possibly output -$0: before this message. Then install a modern shell, or -$0: manually run the script under such a shell if you do -$0: have one." - fi - exit 1 -fi -fi -fi -SHELL=${CONFIG_SHELL-/bin/sh} -export SHELL -# Unset more variables known to interfere with behavior of common tools. -CLICOLOR_FORCE= GREP_OPTIONS= -unset CLICOLOR_FORCE GREP_OPTIONS - -## --------------------- ## -## M4sh Shell Functions. ## -## --------------------- ## -# as_fn_unset VAR -# --------------- -# Portably unset VAR. -as_fn_unset () -{ - { eval $1=; unset $1;} -} -as_unset=as_fn_unset - -# as_fn_set_status STATUS -# ----------------------- -# Set $? to STATUS, without forking. -as_fn_set_status () -{ - return $1 -} # as_fn_set_status - -# as_fn_exit STATUS -# ----------------- -# Exit the shell with STATUS, even in a "trap 0" or "set -e" context. -as_fn_exit () -{ - set +e - as_fn_set_status $1 - exit $1 -} # as_fn_exit - -# as_fn_mkdir_p -# ------------- -# Create "$as_dir" as a directory, including parents if necessary. -as_fn_mkdir_p () -{ - - case $as_dir in #( - -*) as_dir=./$as_dir;; - esac - test -d "$as_dir" || eval $as_mkdir_p || { - as_dirs= - while :; do - case $as_dir in #( - *\'*) as_qdir=`$as_echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'( - *) as_qdir=$as_dir;; - esac - as_dirs="'$as_qdir' $as_dirs" - as_dir=`$as_dirname -- "$as_dir" || -$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$as_dir" : 'X\(//\)[^/]' \| \ - X"$as_dir" : 'X\(//\)$' \| \ - X"$as_dir" : 'X\(/\)' \| . 2>/dev/null || -$as_echo X"$as_dir" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ - s//\1/ - q - } - /^X\(\/\/\)[^/].*/{ - s//\1/ - q - } - /^X\(\/\/\)$/{ - s//\1/ - q - } - /^X\(\/\).*/{ - s//\1/ - q - } - s/.*/./; q'` - test -d "$as_dir" && break - done - test -z "$as_dirs" || eval "mkdir $as_dirs" - } || test -d "$as_dir" || as_fn_error $? "cannot create directory $as_dir" - - -} # as_fn_mkdir_p - -# as_fn_executable_p FILE -# ----------------------- -# Test if FILE is an executable regular file. -as_fn_executable_p () -{ - test -f "$1" && test -x "$1" -} # as_fn_executable_p -# as_fn_append VAR VALUE -# ---------------------- -# Append the text in VALUE to the end of the definition contained in VAR. Take -# advantage of any shell optimizations that allow amortized linear growth over -# repeated appends, instead of the typical quadratic growth present in naive -# implementations. -if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null; then : - eval 'as_fn_append () - { - eval $1+=\$2 - }' -else - as_fn_append () - { - eval $1=\$$1\$2 - } -fi # as_fn_append - -# as_fn_arith ARG... -# ------------------ -# Perform arithmetic evaluation on the ARGs, and store the result in the -# global $as_val. Take advantage of shells that can avoid forks. The arguments -# must be portable across $(()) and expr. -if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null; then : - eval 'as_fn_arith () - { - as_val=$(( $* )) - }' -else - as_fn_arith () - { - as_val=`expr "$@" || test $? -eq 1` - } -fi # as_fn_arith - - -# as_fn_error STATUS ERROR [LINENO LOG_FD] -# ---------------------------------------- -# Output "`basename $0`: error: ERROR" to stderr. If LINENO and LOG_FD are -# provided, also output the error to LOG_FD, referencing LINENO. Then exit the -# script with STATUS, using 1 if that was 0. -as_fn_error () -{ - as_status=$1; test $as_status -eq 0 && as_status=1 - if test "$4"; then - as_lineno=${as_lineno-"$3"} as_lineno_stack=as_lineno_stack=$as_lineno_stack - $as_echo "$as_me:${as_lineno-$LINENO}: error: $2" >&$4 - fi - $as_echo "$as_me: error: $2" >&2 - as_fn_exit $as_status -} # as_fn_error - -if expr a : '\(a\)' >/dev/null 2>&1 && - test "X`expr 00001 : '.*\(...\)'`" = X001; then - as_expr=expr -else - as_expr=false -fi - -if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then - as_basename=basename -else - as_basename=false -fi - -if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then - as_dirname=dirname -else - as_dirname=false -fi - -as_me=`$as_basename -- "$0" || -$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \ - X"$0" : 'X\(//\)$' \| \ - X"$0" : 'X\(/\)' \| . 2>/dev/null || -$as_echo X/"$0" | - sed '/^.*\/\([^/][^/]*\)\/*$/{ - s//\1/ - q - } - /^X\/\(\/\/\)$/{ - s//\1/ - q - } - /^X\/\(\/\).*/{ - s//\1/ - q - } - s/.*/./; q'` - -# Avoid depending upon Character Ranges. -as_cr_letters='abcdefghijklmnopqrstuvwxyz' -as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ' -as_cr_Letters=$as_cr_letters$as_cr_LETTERS -as_cr_digits='0123456789' -as_cr_alnum=$as_cr_Letters$as_cr_digits - - - as_lineno_1=$LINENO as_lineno_1a=$LINENO - as_lineno_2=$LINENO as_lineno_2a=$LINENO - eval 'test "x$as_lineno_1'$as_run'" != "x$as_lineno_2'$as_run'" && - test "x`expr $as_lineno_1'$as_run' + 1`" = "x$as_lineno_2'$as_run'"' || { - # Blame Lee E. McMahon (1931-1989) for sed's syntax. :-) - sed -n ' - p - /[$]LINENO/= - ' <$as_myself | - sed ' - s/[$]LINENO.*/&-/ - t lineno - b - :lineno - N - :loop - s/[$]LINENO\([^'$as_cr_alnum'_].*\n\)\(.*\)/\2\1\2/ - t loop - s/-\n.*// - ' >$as_me.lineno && - chmod +x "$as_me.lineno" || - { $as_echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2; as_fn_exit 1; } - - # If we had to re-execute with $CONFIG_SHELL, we're ensured to have - # already done that, so ensure we don't try to do so again and fall - # in an infinite loop. This has already happened in practice. - _as_can_reexec=no; export _as_can_reexec - # Don't try to exec as it changes $[0], causing all sort of problems - # (the dirname of $[0] is not the place where we might find the - # original and so on. Autoconf is especially sensitive to this). - . "./$as_me.lineno" - # Exit status is that of the last command. - exit -} - -ECHO_C= ECHO_N= ECHO_T= -case `echo -n x` in #((((( --n*) - case `echo 'xy\c'` in - *c*) ECHO_T=' ';; # ECHO_T is single tab character. - xy) ECHO_C='\c';; - *) echo `echo ksh88 bug on AIX 6.1` > /dev/null - ECHO_T=' ';; - esac;; -*) - ECHO_N='-n';; -esac - -rm -f conf$$ conf$$.exe conf$$.file -if test -d conf$$.dir; then - rm -f conf$$.dir/conf$$.file -else - rm -f conf$$.dir - mkdir conf$$.dir 2>/dev/null -fi -if (echo >conf$$.file) 2>/dev/null; then - if ln -s conf$$.file conf$$ 2>/dev/null; then - as_ln_s='ln -s' - # ... but there are two gotchas: - # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail. - # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable. - # In both cases, we have to default to `cp -pR'. - ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe || - as_ln_s='cp -pR' - elif ln conf$$.file conf$$ 2>/dev/null; then - as_ln_s=ln - else - as_ln_s='cp -pR' - fi -else - as_ln_s='cp -pR' -fi -rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file -rmdir conf$$.dir 2>/dev/null - -if mkdir -p . 2>/dev/null; then - as_mkdir_p='mkdir -p "$as_dir"' -else - test -d ./-p && rmdir ./-p - as_mkdir_p=false -fi - -as_test_x='test -x' -as_executable_p=as_fn_executable_p - -# Sed expression to map a string onto a valid CPP name. -as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'" - -# Sed expression to map a string onto a valid variable name. -as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'" - - -test -n "$DJDIR" || exec 7<&0 &1 - -# Name of the host. -# hostname on some systems (SVR3.2, old GNU/Linux) returns a bogus exit status, -# so uname gets run too. -ac_hostname=`(hostname || uname -n) 2>/dev/null | sed 1q` - -# -# Initializations. -# -ac_default_prefix=/usr/local -ac_clean_files= -ac_config_libobj_dir=. -LIBOBJS= -cross_compiling=no -subdirs= -MFLAGS= -MAKEFLAGS= - -# Identity of this package. -PACKAGE_NAME='GRUB' -PACKAGE_TARNAME='grub' -PACKAGE_VERSION='2.04' -PACKAGE_STRING='GRUB 2.04' -PACKAGE_BUGREPORT='bug-grub@gnu.org' -PACKAGE_URL='' - -ac_unique_file="include/grub/dl.h" -# Factoring default headers for most tests. -ac_includes_default="\ -#include -#ifdef HAVE_SYS_TYPES_H -# include -#endif -#ifdef HAVE_SYS_STAT_H -# include -#endif -#ifdef STDC_HEADERS -# include -# include -#else -# ifdef HAVE_STDLIB_H -# include -# endif -#endif -#ifdef HAVE_STRING_H -# if !defined STDC_HEADERS && defined HAVE_MEMORY_H -# include -# endif -# include -#endif -#ifdef HAVE_STRINGS_H -# include -#endif -#ifdef HAVE_INTTYPES_H -# include -#endif -#ifdef HAVE_STDINT_H -# include -#endif -#ifdef HAVE_UNISTD_H -# include -#endif" - -gl_use_threads_default= -gt_needs= -ac_header_list= -ac_func_list= -gl_fnmatch_required=POSIX -gl_getopt_required=POSIX -ac_subst_vars='gltests_LTLIBOBJS -gltests_LIBOBJS -gl_LTLIBOBJS -gl_LIBOBJS -am__EXEEXT_FALSE -am__EXEEXT_TRUE -LTLIBOBJS -LIBOBJS -COND_HAVE_EXEC_FALSE -COND_HAVE_EXEC_TRUE -COND_STARFIELD_FALSE -COND_STARFIELD_TRUE -COND_HAVE_ASM_USCORE_FALSE -COND_HAVE_ASM_USCORE_TRUE -COND_HAVE_CXX_FALSE -COND_HAVE_CXX_TRUE -COND_ENABLE_BOOT_TIME_STATS_FALSE -COND_ENABLE_BOOT_TIME_STATS_TRUE -COND_ENABLE_CACHE_STATS_FALSE -COND_ENABLE_CACHE_STATS_TRUE -COND_ENABLE_EFIEMU_FALSE -COND_ENABLE_EFIEMU_TRUE -COND_APPLE_LINKER_FALSE -COND_APPLE_LINKER_TRUE -HAVE_FONT_SOURCE -COND_HAVE_FONT_SOURCE_FALSE -COND_HAVE_FONT_SOURCE_TRUE -COND_GRUB_MOUNT_FALSE -COND_GRUB_MOUNT_TRUE -COND_GRUB_MKFONT_FALSE -COND_GRUB_MKFONT_TRUE -COND_GRUB_EMU_PCI_FALSE -COND_GRUB_EMU_PCI_TRUE -COND_GRUB_EMU_SDL_FALSE -COND_GRUB_EMU_SDL_TRUE -COND_MAN_PAGES_FALSE -COND_MAN_PAGES_TRUE -COND_HOST_ILLUMOS_FALSE -COND_HOST_ILLUMOS_TRUE -COND_HOST_XNU_FALSE -COND_HOST_XNU_TRUE -COND_HOST_KFREEBSD_FALSE -COND_HOST_KFREEBSD_TRUE -COND_HOST_WINDOWS_FALSE -COND_HOST_WINDOWS_TRUE -COND_HOST_NETBSD_FALSE -COND_HOST_NETBSD_TRUE -COND_HOST_LINUX_FALSE -COND_HOST_LINUX_TRUE -COND_HOST_HURD_FALSE -COND_HOST_HURD_TRUE -COND_riscv64_efi_FALSE -COND_riscv64_efi_TRUE -COND_riscv32_efi_FALSE -COND_riscv32_efi_TRUE -COND_riscv64_FALSE -COND_riscv64_TRUE -COND_riscv32_FALSE -COND_riscv32_TRUE -COND_arm64_efi_FALSE -COND_arm64_efi_TRUE -COND_arm64_FALSE -COND_arm64_TRUE -COND_arm_efi_FALSE -COND_arm_efi_TRUE -COND_arm_coreboot_FALSE -COND_arm_coreboot_TRUE -COND_arm_uboot_FALSE -COND_arm_uboot_TRUE -COND_arm_FALSE -COND_arm_TRUE -COND_mipseb_FALSE -COND_mipseb_TRUE -COND_mipsel_FALSE -COND_mipsel_TRUE -COND_mips_FALSE -COND_mips_TRUE -COND_powerpc_ieee1275_FALSE -COND_powerpc_ieee1275_TRUE -COND_sparc64_emu_FALSE -COND_sparc64_emu_TRUE -COND_sparc64_ieee1275_FALSE -COND_sparc64_ieee1275_TRUE -COND_mips_arc_FALSE -COND_mips_arc_TRUE -COND_mips_qemu_mips_FALSE -COND_mips_qemu_mips_TRUE -COND_mips_loongson_FALSE -COND_mips_loongson_TRUE -COND_x86_64_xen_FALSE -COND_x86_64_xen_TRUE -COND_i386_xen_pvh_FALSE -COND_i386_xen_pvh_TRUE -COND_i386_xen_FALSE -COND_i386_xen_TRUE -COND_x86_64_efi_FALSE -COND_x86_64_efi_TRUE -COND_i386_multiboot_FALSE -COND_i386_multiboot_TRUE -COND_i386_coreboot_FALSE -COND_i386_coreboot_TRUE -COND_i386_ieee1275_FALSE -COND_i386_ieee1275_TRUE -COND_i386_qemu_FALSE -COND_i386_qemu_TRUE -COND_ia64_efi_FALSE -COND_ia64_efi_TRUE -COND_i386_efi_FALSE -COND_i386_efi_TRUE -COND_i386_pc_FALSE -COND_i386_pc_TRUE -COND_emu_FALSE -COND_emu_TRUE -COND_real_platform_FALSE -COND_real_platform_TRUE -BUILD_LIBM -HOST_CCASFLAGS -HOST_CPPFLAGS -HOST_LDFLAGS -HOST_CFLAGS -TARGET_APPLE_LINKER -TARGET_IMG_BASE_LDOPT -TARGET_IMG_CFLAGS -TARGET_IMG_LDFLAGS -TARGET_CCASFLAGS -TARGET_CPPFLAGS -TARGET_LDFLAGS -TARGET_CFLAGS -TARGET_CC_VERSION -TARGET_MODULE_FORMAT -TARGET_OBJ2ELF -TARGET_CCAS -TARGET_CPP -GRUB_PLATFORM -GRUB_TARGET_CPU -END_SYMBOL -BSS_START_SYMBOL -HAVE_ASM_USCORE -GRUB_BOOT_MACHINE_LINK_ADDR -LIBNVPAIR -LIBZFS -LIBLZMA -LIBGEOM -LIBDEVMAPPER -enable_grub_mount -FONT_SOURCE -DJVU_FONT_SOURCE -BUILD_FREETYPE_LIBS -BUILD_FREETYPE_CFLAGS -BUILD_WORDS_BIGENDIAN -BUILD_SIZEOF_VOID_P -BUILD_SIZEOF_LONG -enable_grub_mkfont -FREETYPE_LIBS -FREETYPE_CFLAGS -enable_grub_emu_pci -enable_grub_emu_sdl -LIBPCIACCESS -LIBSDL -BOOT_TIME_STATS -DISK_CACHE_STATS -TARGET_NMFLAGS_DEFINED_ONLY -TARGET_NMFLAGS_MINUS_P -TARGET_LDFLAGS_OLDMAGIC -EFIEMU64_LINK_FORMAT -enable_efiemu -TARGET_OBJCONV -BUILD_LDFLAGS -BUILD_CPPFLAGS -BUILD_CFLAGS -HOST_CC -TARGET_RANLIB -TARGET_NM -TARGET_STRIP -TARGET_OBJCOPY -ac_ct_TARGET_CC -TARGET_CC -LIBGNU_LTLIBDEPS -LIBGNU_LIBDEPS -gltests_WITNESS -REPLACE_TOWLOWER -REPLACE_ISWCNTRL -HAVE_WCTYPE_H -NEXT_AS_FIRST_DIRECTIVE_WCTYPE_H -NEXT_WCTYPE_H -HAVE_ISWCNTRL -REPLACE_ISWBLANK -HAVE_WCTRANS_T -HAVE_WCTYPE_T -HAVE_ISWBLANK -GNULIB_TOWCTRANS -GNULIB_WCTRANS -GNULIB_ISWCTYPE -GNULIB_WCTYPE -GNULIB_ISWBLANK -HAVE_CRTDEFS_H -HAVE_WINT_T -NEXT_AS_FIRST_DIRECTIVE_WCHAR_H -NEXT_WCHAR_H -HAVE_FEATURES_H -LIBUNISTRING_COMPILE_UNIWIDTH_WIDTH_FALSE -LIBUNISTRING_COMPILE_UNIWIDTH_WIDTH_TRUE -LIBUNISTRING_UNIWIDTH_H -LIBUNISTRING_UNITYPES_H -HAVE_UNISTD_H -NEXT_AS_FIRST_DIRECTIVE_UNISTD_H -NEXT_UNISTD_H -UNISTD_H_DEFINES_STRUCT_TIMESPEC -PTHREAD_H_DEFINES_STRUCT_TIMESPEC -SYS_TIME_H_DEFINES_STRUCT_TIMESPEC -TIME_H_DEFINES_STRUCT_TIMESPEC -NEXT_AS_FIRST_DIRECTIVE_TIME_H -NEXT_TIME_H -REPLACE_LOCALTIME -REPLACE_GMTIME -GNULIB_GETTIMEOFDAY -REPLACE_TZSET -REPLACE_TIMEGM -REPLACE_STRFTIME -REPLACE_NANOSLEEP -REPLACE_MKTIME -REPLACE_LOCALTIME_R -REPLACE_CTIME -HAVE_TIMEZONE_T -HAVE_TZSET -HAVE_TIMEGM -HAVE_STRPTIME -HAVE_NANOSLEEP -HAVE_DECL_LOCALTIME_R -GNULIB_TZSET -GNULIB_TIME_RZ -GNULIB_TIME_R -GNULIB_TIMEGM -GNULIB_STRPTIME -GNULIB_STRFTIME -GNULIB_NANOSLEEP -GNULIB_LOCALTIME -GNULIB_MKTIME -GNULIB_CTIME -GL_GENERATE_SYSEXITS_H_FALSE -GL_GENERATE_SYSEXITS_H_TRUE -SYSEXITS_H -HAVE_SYSEXITS_H -NEXT_AS_FIRST_DIRECTIVE_SYSEXITS_H -NEXT_SYSEXITS_H -WINDOWS_STAT_INODES -WINDOWS_64_BIT_OFF_T -NEXT_AS_FIRST_DIRECTIVE_SYS_TYPES_H -NEXT_SYS_TYPES_H -HAVE_STRINGS_H -NEXT_AS_FIRST_DIRECTIVE_STRINGS_H -NEXT_STRINGS_H -NEXT_AS_FIRST_DIRECTIVE_STRING_H -NEXT_STRING_H -HAVE_DECL_STRNCASECMP -HAVE_STRCASECMP -HAVE_FFS -GNULIB_FFS -NEXT_AS_FIRST_DIRECTIVE_STDLIB_H -NEXT_STDLIB_H -NEXT_AS_FIRST_DIRECTIVE_STDIO_H -NEXT_STDIO_H -GL_GENERATE_STDINT_H_FALSE -GL_GENERATE_STDINT_H_TRUE -STDINT_H -HAVE_SYS_INTTYPES_H -HAVE_SYS_BITYPES_H -HAVE_C99_STDINT_H -WINT_T_SUFFIX -WCHAR_T_SUFFIX -SIG_ATOMIC_T_SUFFIX -SIZE_T_SUFFIX -PTRDIFF_T_SUFFIX -HAVE_SIGNED_WINT_T -HAVE_SIGNED_WCHAR_T -HAVE_SIGNED_SIG_ATOMIC_T -BITSIZEOF_WINT_T -BITSIZEOF_WCHAR_T -BITSIZEOF_SIG_ATOMIC_T -BITSIZEOF_SIZE_T -BITSIZEOF_PTRDIFF_T -HAVE_STDINT_H -NEXT_AS_FIRST_DIRECTIVE_STDINT_H -NEXT_STDINT_H -HAVE_SYS_TYPES_H -HAVE_INTTYPES_H -HAVE_WCHAR_H -HAVE_UNSIGNED_LONG_LONG_INT -HAVE_LONG_LONG_INT -GNULIB_OVERRIDES_WINT_T -HAVE__BOOL -GL_GENERATE_STDBOOL_H_FALSE -GL_GENERATE_STDBOOL_H_TRUE -STDBOOL_H -GL_GENERATE_STDALIGN_H_FALSE -GL_GENERATE_STDALIGN_H_TRUE -STDALIGN_H -GLIBC21 -APPLE_UNIVERSAL_BUILD -UNDEFINE_STRTOK_R -REPLACE_STRSIGNAL -REPLACE_STRERROR_R -REPLACE_STRERROR -REPLACE_STRTOK_R -REPLACE_STRCASESTR -REPLACE_STRSTR -REPLACE_STRNLEN -REPLACE_STRNDUP -REPLACE_STRNCAT -REPLACE_STRDUP -REPLACE_STRCHRNUL -REPLACE_STPNCPY -REPLACE_MEMMEM -REPLACE_MEMCHR -HAVE_STRVERSCMP -HAVE_DECL_STRSIGNAL -HAVE_DECL_STRERROR_R -HAVE_DECL_STRTOK_R -HAVE_STRCASESTR -HAVE_STRSEP -HAVE_STRPBRK -HAVE_DECL_STRNLEN -HAVE_DECL_STRNDUP -HAVE_DECL_STRDUP -HAVE_STRCHRNUL -HAVE_STPNCPY -HAVE_STPCPY -HAVE_RAWMEMCHR -HAVE_DECL_MEMRCHR -HAVE_MEMPCPY -HAVE_DECL_MEMMEM -HAVE_MEMCHR -HAVE_FFSLL -HAVE_FFSL -HAVE_EXPLICIT_BZERO -HAVE_MBSLEN -GNULIB_STRVERSCMP -GNULIB_STRSIGNAL -GNULIB_STRERROR_R -GNULIB_STRERROR -GNULIB_MBSTOK_R -GNULIB_MBSSEP -GNULIB_MBSSPN -GNULIB_MBSPBRK -GNULIB_MBSCSPN -GNULIB_MBSCASESTR -GNULIB_MBSPCASECMP -GNULIB_MBSNCASECMP -GNULIB_MBSCASECMP -GNULIB_MBSSTR -GNULIB_MBSRCHR -GNULIB_MBSCHR -GNULIB_MBSNLEN -GNULIB_MBSLEN -GNULIB_STRTOK_R -GNULIB_STRCASESTR -GNULIB_STRSTR -GNULIB_STRSEP -GNULIB_STRPBRK -GNULIB_STRNLEN -GNULIB_STRNDUP -GNULIB_STRNCAT -GNULIB_STRDUP -GNULIB_STRCHRNUL -GNULIB_STPNCPY -GNULIB_STPCPY -GNULIB_RAWMEMCHR -GNULIB_MEMRCHR -GNULIB_MEMPCPY -GNULIB_MEMMEM -GNULIB_MEMCHR -GNULIB_FFSLL -GNULIB_FFSL -GNULIB_EXPLICIT_BZERO -LOCALE_FR_UTF8 -LOCALE_ZH_CN -LOCALE_JA -REPLACE_WCTOMB -REPLACE_UNSETENV -REPLACE_STRTOD -REPLACE_SETENV -REPLACE_REALPATH -REPLACE_REALLOC -REPLACE_RANDOM_R -REPLACE_QSORT_R -REPLACE_PUTENV -REPLACE_PTSNAME_R -REPLACE_PTSNAME -REPLACE_MKSTEMP -REPLACE_MBTOWC -REPLACE_MALLOC -REPLACE_CANONICALIZE_FILE_NAME -REPLACE_CALLOC -HAVE_DECL_UNSETENV -HAVE_UNLOCKPT -HAVE_SYS_LOADAVG_H -HAVE_STRUCT_RANDOM_DATA -HAVE_STRTOULL -HAVE_STRTOLL -HAVE_STRTOD -HAVE_DECL_SETSTATE -HAVE_DECL_SETENV -HAVE_SETENV -HAVE_SECURE_GETENV -HAVE_RPMATCH -HAVE_REALPATH -HAVE_REALLOCARRAY -HAVE_RANDOM_R -HAVE_RANDOM_H -HAVE_RANDOM -HAVE_QSORT_R -HAVE_PTSNAME_R -HAVE_PTSNAME -HAVE_POSIX_OPENPT -HAVE_MKSTEMPS -HAVE_MKSTEMP -HAVE_MKOSTEMPS -HAVE_MKOSTEMP -HAVE_MKDTEMP -HAVE_DECL_INITSTATE -HAVE_GRANTPT -HAVE_GETSUBOPT -HAVE_DECL_GETLOADAVG -HAVE_CANONICALIZE_FILE_NAME -HAVE_ATOLL -HAVE__EXIT -GNULIB_WCTOMB -GNULIB_UNSETENV -GNULIB_UNLOCKPT -GNULIB_SYSTEM_POSIX -GNULIB_STRTOULL -GNULIB_STRTOLL -GNULIB_STRTOD -GNULIB_SETENV -GNULIB_SECURE_GETENV -GNULIB_RPMATCH -GNULIB_REALPATH -GNULIB_REALLOC_POSIX -GNULIB_REALLOCARRAY -GNULIB_RANDOM_R -GNULIB_RANDOM -GNULIB_QSORT_R -GNULIB_PUTENV -GNULIB_PTSNAME_R -GNULIB_PTSNAME -GNULIB_POSIX_OPENPT -GNULIB_MKSTEMPS -GNULIB_MKSTEMP -GNULIB_MKOSTEMPS -GNULIB_MKOSTEMP -GNULIB_MKDTEMP -GNULIB_MBTOWC -GNULIB_MALLOC_POSIX -GNULIB_GRANTPT -GNULIB_GETSUBOPT -GNULIB_GETLOADAVG -GNULIB_CANONICALIZE_FILE_NAME -GNULIB_CALLOC_POSIX -GNULIB_ATOLL -GNULIB__EXIT -LTLIBMULTITHREAD -LIBMULTITHREAD -LTLIBTHREAD -LIBTHREAD -LIBPTH_PREFIX -LTLIBPTH -LIBPTH -NEXT_AS_FIRST_DIRECTIVE_LOCALE_H -NEXT_LOCALE_H -HAVE_XLOCALE_H -NEXT_AS_FIRST_DIRECTIVE_STDDEF_H -NEXT_STDDEF_H -GL_GENERATE_STDDEF_H_FALSE -GL_GENERATE_STDDEF_H_TRUE -STDDEF_H -HAVE_WCHAR_T -HAVE_MAX_ALIGN_T -REPLACE_NULL -REPLACE_STRUCT_LCONV -REPLACE_FREELOCALE -REPLACE_DUPLOCALE -REPLACE_NEWLOCALE -REPLACE_SETLOCALE -REPLACE_LOCALECONV -HAVE_FREELOCALE -HAVE_DUPLOCALE -HAVE_NEWLOCALE -GNULIB_LOCALENAME -GNULIB_DUPLOCALE -GNULIB_SETLOCALE -GNULIB_LOCALECONV -LOCALCHARSET_TESTS_ENVIRONMENT -GL_GENERATE_LIMITS_H_FALSE -GL_GENERATE_LIMITS_H_TRUE -LIMITS_H -NEXT_AS_FIRST_DIRECTIVE_LIMITS_H -NEXT_LIMITS_H -HAVE_LANGINFO_YESEXPR -HAVE_LANGINFO_ERA -HAVE_LANGINFO_ALTMON -HAVE_LANGINFO_T_FMT_AMPM -HAVE_LANGINFO_CODESET -HAVE_LANGINFO_H -NEXT_AS_FIRST_DIRECTIVE_LANGINFO_H -NEXT_LANGINFO_H -REPLACE_NL_LANGINFO -HAVE_NL_LANGINFO -GNULIB_NL_LANGINFO -GNULIB_GL_UNISTD_H_GETOPT -GETOPT_CDEFS_H -GETOPT_H -HAVE_SYS_CDEFS_H -HAVE_GETOPT_H -NEXT_AS_FIRST_DIRECTIVE_GETOPT_H -NEXT_GETOPT_H -REPLACE_VSPRINTF -REPLACE_VSNPRINTF -REPLACE_VPRINTF -REPLACE_VFPRINTF -REPLACE_VDPRINTF -REPLACE_VASPRINTF -REPLACE_TMPFILE -REPLACE_STDIO_WRITE_FUNCS -REPLACE_STDIO_READ_FUNCS -REPLACE_SPRINTF -REPLACE_SNPRINTF -REPLACE_RENAMEAT -REPLACE_RENAME -REPLACE_REMOVE -REPLACE_PRINTF -REPLACE_POPEN -REPLACE_PERROR -REPLACE_OBSTACK_PRINTF -REPLACE_GETLINE -REPLACE_GETDELIM -REPLACE_FTELLO -REPLACE_FTELL -REPLACE_FSEEKO -REPLACE_FSEEK -REPLACE_FREOPEN -REPLACE_FPURGE -REPLACE_FPRINTF -REPLACE_FOPEN -REPLACE_FFLUSH -REPLACE_FDOPEN -REPLACE_FCLOSE -REPLACE_DPRINTF -HAVE_VDPRINTF -HAVE_VASPRINTF -HAVE_RENAMEAT -HAVE_POPEN -HAVE_PCLOSE -HAVE_FTELLO -HAVE_FSEEKO -HAVE_DPRINTF -HAVE_DECL_VSNPRINTF -HAVE_DECL_SNPRINTF -HAVE_DECL_OBSTACK_PRINTF -HAVE_DECL_GETLINE -HAVE_DECL_GETDELIM -HAVE_DECL_FTELLO -HAVE_DECL_FSEEKO -HAVE_DECL_FPURGE -GNULIB_VSPRINTF_POSIX -GNULIB_VSNPRINTF -GNULIB_VPRINTF_POSIX -GNULIB_VPRINTF -GNULIB_VFPRINTF_POSIX -GNULIB_VFPRINTF -GNULIB_VDPRINTF -GNULIB_VSCANF -GNULIB_VFSCANF -GNULIB_VASPRINTF -GNULIB_TMPFILE -GNULIB_STDIO_H_SIGPIPE -GNULIB_STDIO_H_NONBLOCKING -GNULIB_SPRINTF_POSIX -GNULIB_SNPRINTF -GNULIB_SCANF -GNULIB_RENAMEAT -GNULIB_RENAME -GNULIB_REMOVE -GNULIB_PUTS -GNULIB_PUTCHAR -GNULIB_PUTC -GNULIB_PRINTF_POSIX -GNULIB_PRINTF -GNULIB_POPEN -GNULIB_PERROR -GNULIB_PCLOSE -GNULIB_OBSTACK_PRINTF_POSIX -GNULIB_OBSTACK_PRINTF -GNULIB_GETLINE -GNULIB_GETDELIM -GNULIB_GETCHAR -GNULIB_GETC -GNULIB_FWRITE -GNULIB_FTELLO -GNULIB_FTELL -GNULIB_FSEEKO -GNULIB_FSEEK -GNULIB_FSCANF -GNULIB_FREOPEN -GNULIB_FREAD -GNULIB_FPUTS -GNULIB_FPUTC -GNULIB_FPURGE -GNULIB_FPRINTF_POSIX -GNULIB_FPRINTF -GNULIB_FOPEN -GNULIB_FGETS -GNULIB_FGETC -GNULIB_FFLUSH -GNULIB_FDOPEN -GNULIB_FCLOSE -GNULIB_DPRINTF -WINDOWS_64_BIT_ST_SIZE -WINDOWS_STAT_TIMESPEC -NEXT_AS_FIRST_DIRECTIVE_SYS_STAT_H -NEXT_SYS_STAT_H -REPLACE_UTIMENSAT -REPLACE_STAT -REPLACE_MKNOD -REPLACE_MKFIFO -REPLACE_MKDIR -REPLACE_LSTAT -REPLACE_FUTIMENS -REPLACE_FSTATAT -REPLACE_FSTAT -HAVE_UTIMENSAT -HAVE_MKNODAT -HAVE_MKNOD -HAVE_MKFIFOAT -HAVE_MKFIFO -HAVE_MKDIRAT -HAVE_LSTAT -HAVE_LCHMOD -HAVE_FUTIMENS -HAVE_FSTATAT -HAVE_FCHMODAT -GNULIB_OVERRIDES_STRUCT_STAT -GNULIB_UTIMENSAT -GNULIB_STAT -GNULIB_MKNODAT -GNULIB_MKNOD -GNULIB_MKFIFOAT -GNULIB_MKFIFO -GNULIB_MKDIRAT -GNULIB_LSTAT -GNULIB_LCHMOD -GNULIB_FUTIMENS -GNULIB_FSTATAT -GNULIB_FSTAT -GNULIB_FCHMODAT -GL_GENERATE_FNMATCH_H_FALSE -GL_GENERATE_FNMATCH_H_TRUE -FNMATCH_H -HAVE_FNMATCH_H -NEXT_AS_FIRST_DIRECTIVE_FNMATCH_H -NEXT_FNMATCH_H -REPLACE_FNMATCH -HAVE_FNMATCH -GNULIB_FNMATCH -REPLACE_ITOLD -GL_GENERATE_FLOAT_H_FALSE -GL_GENERATE_FLOAT_H_TRUE -FLOAT_H -NEXT_AS_FIRST_DIRECTIVE_FLOAT_H -NEXT_FLOAT_H -NEXT_AS_FIRST_DIRECTIVE_FCNTL_H -NEXT_FCNTL_H -REPLACE_OPENAT -REPLACE_OPEN -REPLACE_FCNTL -HAVE_OPENAT -HAVE_FCNTL -GNULIB_OPENAT -GNULIB_OPEN -GNULIB_NONBLOCKING -GNULIB_FCNTL -EOVERFLOW_VALUE -EOVERFLOW_HIDDEN -ENOLINK_VALUE -ENOLINK_HIDDEN -EMULTIHOP_VALUE -EMULTIHOP_HIDDEN -GL_GENERATE_ERRNO_H_FALSE -GL_GENERATE_ERRNO_H_TRUE -ERRNO_H -NEXT_AS_FIRST_DIRECTIVE_ERRNO_H -NEXT_ERRNO_H -HAVE_DIRENT_H -NEXT_AS_FIRST_DIRECTIVE_DIRENT_H -NEXT_DIRENT_H -PRAGMA_COLUMNS -PRAGMA_SYSTEM_HEADER -INCLUDE_NEXT_AS_FIRST_DIRECTIVE -INCLUDE_NEXT -REPLACE_FDOPENDIR -REPLACE_DIRFD -REPLACE_CLOSEDIR -REPLACE_OPENDIR -HAVE_ALPHASORT -HAVE_SCANDIR -HAVE_FDOPENDIR -HAVE_DECL_FDOPENDIR -HAVE_DECL_DIRFD -HAVE_CLOSEDIR -HAVE_REWINDDIR -HAVE_READDIR -HAVE_OPENDIR -GNULIB_ALPHASORT -GNULIB_SCANDIR -GNULIB_FDOPENDIR -GNULIB_DIRFD -GNULIB_CLOSEDIR -GNULIB_REWINDDIR -GNULIB_READDIR -GNULIB_OPENDIR -HAVE_WINSOCK2_H -HAVE_MSVC_INVALID_PARAMETER_HANDLER -UNISTD_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS -UNISTD_H_HAVE_WINSOCK2_H -REPLACE_WRITE -REPLACE_USLEEP -REPLACE_UNLINKAT -REPLACE_UNLINK -REPLACE_TTYNAME_R -REPLACE_TRUNCATE -REPLACE_SYMLINKAT -REPLACE_SYMLINK -REPLACE_SLEEP -REPLACE_RMDIR -REPLACE_READLINKAT -REPLACE_READLINK -REPLACE_READ -REPLACE_PWRITE -REPLACE_PREAD -REPLACE_LSEEK -REPLACE_LINKAT -REPLACE_LINK -REPLACE_LCHOWN -REPLACE_ISATTY -REPLACE_GETPASS -REPLACE_GETPAGESIZE -REPLACE_GETGROUPS -REPLACE_GETLOGIN_R -REPLACE_GETDTABLESIZE -REPLACE_GETDOMAINNAME -REPLACE_GETCWD -REPLACE_FTRUNCATE -REPLACE_FCHOWNAT -REPLACE_FACCESSAT -REPLACE_DUP2 -REPLACE_DUP -REPLACE_CLOSE -REPLACE_CHOWN -HAVE_SYS_PARAM_H -HAVE_OS_H -HAVE_DECL_TTYNAME_R -HAVE_DECL_TRUNCATE -HAVE_DECL_SETHOSTNAME -HAVE_DECL_GETUSERSHELL -HAVE_DECL_GETPAGESIZE -HAVE_DECL_GETLOGIN_R -HAVE_DECL_GETLOGIN -HAVE_DECL_GETDOMAINNAME -HAVE_DECL_FDATASYNC -HAVE_DECL_FCHDIR -HAVE_DECL_ENVIRON -HAVE_USLEEP -HAVE_UNLINKAT -HAVE_SYMLINKAT -HAVE_SYMLINK -HAVE_SLEEP -HAVE_SETHOSTNAME -HAVE_READLINKAT -HAVE_READLINK -HAVE_PWRITE -HAVE_PREAD -HAVE_PIPE2 -HAVE_PIPE -HAVE_LINKAT -HAVE_LINK -HAVE_LCHOWN -HAVE_GROUP_MEMBER -HAVE_GETPASS -HAVE_GETPAGESIZE -HAVE_GETLOGIN -HAVE_GETHOSTNAME -HAVE_GETGROUPS -HAVE_GETDTABLESIZE -HAVE_FTRUNCATE -HAVE_FSYNC -HAVE_FDATASYNC -HAVE_FCHOWNAT -HAVE_FCHDIR -HAVE_FACCESSAT -HAVE_EUIDACCESS -HAVE_DUP3 -HAVE_DUP2 -HAVE_CHOWN -GNULIB_WRITE -GNULIB_USLEEP -GNULIB_UNLINKAT -GNULIB_UNLINK -GNULIB_UNISTD_H_SIGPIPE -GNULIB_UNISTD_H_NONBLOCKING -GNULIB_TTYNAME_R -GNULIB_TRUNCATE -GNULIB_SYMLINKAT -GNULIB_SYMLINK -GNULIB_SLEEP -GNULIB_SETHOSTNAME -GNULIB_RMDIR -GNULIB_READLINKAT -GNULIB_READLINK -GNULIB_READ -GNULIB_PWRITE -GNULIB_PREAD -GNULIB_PIPE2 -GNULIB_PIPE -GNULIB_LSEEK -GNULIB_LINKAT -GNULIB_LINK -GNULIB_LCHOWN -GNULIB_ISATTY -GNULIB_GROUP_MEMBER -GNULIB_GETUSERSHELL -GNULIB_GETPASS -GNULIB_GETPAGESIZE -GNULIB_GETLOGIN_R -GNULIB_GETLOGIN -GNULIB_GETHOSTNAME -GNULIB_GETGROUPS -GNULIB_GETDTABLESIZE -GNULIB_GETDOMAINNAME -GNULIB_GETCWD -GNULIB_FTRUNCATE -GNULIB_FSYNC -GNULIB_FDATASYNC -GNULIB_FCHOWNAT -GNULIB_FCHDIR -GNULIB_FACCESSAT -GNULIB_EUIDACCESS -GNULIB_ENVIRON -GNULIB_DUP3 -GNULIB_DUP2 -GNULIB_DUP -GNULIB_CLOSE -GNULIB_CHOWN -GNULIB_CHDIR -LOCALE_FR -REPLACE_WCSFTIME -REPLACE_WCSWIDTH -REPLACE_WCWIDTH -REPLACE_WCSNRTOMBS -REPLACE_WCSRTOMBS -REPLACE_WCRTOMB -REPLACE_MBSNRTOWCS -REPLACE_MBSRTOWCS -REPLACE_MBRLEN -REPLACE_MBRTOWC -REPLACE_MBSINIT -REPLACE_WCTOB -REPLACE_BTOWC -REPLACE_MBSTATE_T -HAVE_DECL_WCWIDTH -HAVE_DECL_WCTOB -HAVE_WCSFTIME -HAVE_WCSWIDTH -HAVE_WCSTOK -HAVE_WCSSTR -HAVE_WCSPBRK -HAVE_WCSSPN -HAVE_WCSCSPN -HAVE_WCSRCHR -HAVE_WCSCHR -HAVE_WCSDUP -HAVE_WCSXFRM -HAVE_WCSCOLL -HAVE_WCSNCASECMP -HAVE_WCSCASECMP -HAVE_WCSNCMP -HAVE_WCSCMP -HAVE_WCSNCAT -HAVE_WCSCAT -HAVE_WCPNCPY -HAVE_WCSNCPY -HAVE_WCPCPY -HAVE_WCSCPY -HAVE_WCSNLEN -HAVE_WCSLEN -HAVE_WMEMSET -HAVE_WMEMMOVE -HAVE_WMEMCPY -HAVE_WMEMCMP -HAVE_WMEMCHR -HAVE_WCSNRTOMBS -HAVE_WCSRTOMBS -HAVE_WCRTOMB -HAVE_MBSNRTOWCS -HAVE_MBSRTOWCS -HAVE_MBRLEN -HAVE_MBRTOWC -HAVE_MBSINIT -HAVE_BTOWC -GNULIB_WCSFTIME -GNULIB_WCSWIDTH -GNULIB_WCSTOK -GNULIB_WCSSTR -GNULIB_WCSPBRK -GNULIB_WCSSPN -GNULIB_WCSCSPN -GNULIB_WCSRCHR -GNULIB_WCSCHR -GNULIB_WCSDUP -GNULIB_WCSXFRM -GNULIB_WCSCOLL -GNULIB_WCSNCASECMP -GNULIB_WCSCASECMP -GNULIB_WCSNCMP -GNULIB_WCSCMP -GNULIB_WCSNCAT -GNULIB_WCSCAT -GNULIB_WCPNCPY -GNULIB_WCSNCPY -GNULIB_WCPCPY -GNULIB_WCSCPY -GNULIB_WCSNLEN -GNULIB_WCSLEN -GNULIB_WMEMSET -GNULIB_WMEMMOVE -GNULIB_WMEMCPY -GNULIB_WMEMCMP -GNULIB_WMEMCHR -GNULIB_WCWIDTH -GNULIB_WCSNRTOMBS -GNULIB_WCSRTOMBS -GNULIB_WCRTOMB -GNULIB_MBSNRTOWCS -GNULIB_MBSRTOWCS -GNULIB_MBRLEN -GNULIB_MBRTOWC -GNULIB_MBSINIT -GNULIB_WCTOB -GNULIB_BTOWC -GL_GENERATE_ALLOCA_H_FALSE -GL_GENERATE_ALLOCA_H_TRUE -ALLOCA_H -ALLOCA -GL_COND_LIBTOOL_FALSE -GL_COND_LIBTOOL_TRUE -BUILD_SHEBANG -BUILD_EXEEXT -BUILD_CC -LIBUTIL -HELP2MAN -POSUB -LTLIBINTL -LIBINTL -INTLLIBS -LTLIBICONV -LIBICONV -INTL_MACOSX_LIBS -XGETTEXT_EXTRA_OPTIONS -MSGMERGE -XGETTEXT_015 -XGETTEXT -GMSGFMT_015 -MSGFMT_015 -GMSGFMT -MSGFMT -GETTEXT_MACRO_VERSION -USE_NLS -SED -HAVE_CXX -pkgpyexecdir -pyexecdir -pkgpythondir -pythondir -PYTHON_PLATFORM -PYTHON_EXEC_PREFIX -PYTHON_PREFIX -PYTHON_VERSION -PYTHON -am__fastdepCCAS_FALSE -am__fastdepCCAS_TRUE -CCASDEPMODE -CCASFLAGS -CCAS -am__fastdepCXX_FALSE -am__fastdepCXX_TRUE -CXXDEPMODE -ac_ct_CXX -CXXFLAGS -CXX -ARFLAGS -AR -EGREP -GREP -CPP -LN_S -YFLAGS -LEXLIB -am__fastdepCC_FALSE -am__fastdepCC_TRUE -CCDEPMODE -am__nodep -AMDEPBACKSLASH -AMDEP_FALSE -AMDEP_TRUE -am__quote -am__include -DEPDIR -OBJEXT -EXEEXT -ac_ct_CC -CPPFLAGS -LDFLAGS -CFLAGS -CC -LEX_OUTPUT_ROOT -LEX -RANLIB -YACC -CMP -grubdirname -bootdirname -platform -host_kernel -TARGET_DECOMPRESSOR_LINK_ADDR -TARGET_LINK_ADDR -grub_file -grub_render_label -grub_sparc64_setup -grub_set_default -grub_script_check -grub_reboot -grub_probe -grub_mkrescue -grub_mkrelpath -grub_mkpasswd_pbkdf2 -grub_mklayout -grub_glue_efi -grub_mkimage -grub_mkfont -grub_mkconfig -grub_install -grub_editenv -grub_bios_setup -PKG_CONFIG_LIBDIR -PKG_CONFIG_PATH -PKG_CONFIG -AM_BACKSLASH -AM_DEFAULT_VERBOSITY -AM_DEFAULT_V -AM_V -am__untar -am__tar -AMTAR -am__leading_dot -SET_MAKE -AWK -mkdir_p -MKDIR_P -INSTALL_STRIP_PROGRAM -STRIP -install_sh -MAKEINFO -AUTOHEADER -AUTOMAKE -AUTOCONF -ACLOCAL -VERSION -PACKAGE -CYGPATH_W -am__isrc -INSTALL_DATA -INSTALL_SCRIPT -INSTALL_PROGRAM -target_os -target_vendor -target_cpu -target -host_os -host_vendor -host_cpu -host -build_os -build_vendor -build_cpu -build -target_alias -host_alias -build_alias -LIBS -ECHO_T -ECHO_N -ECHO_C -DEFS -mandir -localedir -libdir -psdir -pdfdir -dvidir -htmldir -infodir -docdir -oldincludedir -includedir -runstatedir -localstatedir -sharedstatedir -sysconfdir -datadir -datarootdir -libexecdir -sbindir -bindir -program_transform_name -prefix -exec_prefix -PACKAGE_URL -PACKAGE_BUGREPORT -PACKAGE_STRING -PACKAGE_VERSION -PACKAGE_TARNAME -PACKAGE_NAME -PATH_SEPARATOR -SHELL' -ac_subst_files='' -ac_user_opts=' -enable_option_checking -enable_silent_rules -with_platform -with_bootdir -with_grubdir -enable_dependency_tracking -enable_largefile -enable_threads -enable_nls -with_gnu_ld -enable_rpath -with_libiconv_prefix -with_libintl_prefix -with_libpth_prefix -with_included_regex -enable_efiemu -enable_mm_debug -enable_cache_stats -enable_boot_time -enable_grub_emu_sdl -enable_grub_emu_pci -enable_grub_mkfont -enable_grub_themes -enable_grub_mount -enable_device_mapper -enable_liblzma -enable_libzfs -enable_werror -' - ac_precious_vars='build_alias -host_alias -target_alias -PKG_CONFIG -PKG_CONFIG_PATH -PKG_CONFIG_LIBDIR -CC -CFLAGS -LDFLAGS -LIBS -CPPFLAGS -YACC -YFLAGS -CPP -CXX -CXXFLAGS -CCC -CCAS -CCASFLAGS -PYTHON -FREETYPE_CFLAGS -FREETYPE_LIBS -BUILD_FREETYPE_CFLAGS -BUILD_FREETYPE_LIBS' - - -# Initialize some variables set by options. -ac_init_help= -ac_init_version=false -ac_unrecognized_opts= -ac_unrecognized_sep= -# The variables have the same names as the options, with -# dashes changed to underlines. -cache_file=/dev/null -exec_prefix=NONE -no_create= -no_recursion= -prefix=NONE -program_prefix=NONE -program_suffix=NONE -program_transform_name=s,x,x, -silent= -site= -srcdir= -verbose= -x_includes=NONE -x_libraries=NONE - -# Installation directory options. -# These are left unexpanded so users can "make install exec_prefix=/foo" -# and all the variables that are supposed to be based on exec_prefix -# by default will actually change. -# Use braces instead of parens because sh, perl, etc. also accept them. -# (The list follows the same order as the GNU Coding Standards.) -bindir='${exec_prefix}/bin' -sbindir='${exec_prefix}/sbin' -libexecdir='${exec_prefix}/libexec' -datarootdir='${prefix}/share' -datadir='${datarootdir}' -sysconfdir='${prefix}/etc' -sharedstatedir='${prefix}/com' -localstatedir='${prefix}/var' -runstatedir='${localstatedir}/run' -includedir='${prefix}/include' -oldincludedir='/usr/include' -docdir='${datarootdir}/doc/${PACKAGE_TARNAME}' -infodir='${datarootdir}/info' -htmldir='${docdir}' -dvidir='${docdir}' -pdfdir='${docdir}' -psdir='${docdir}' -libdir='${exec_prefix}/lib' -localedir='${datarootdir}/locale' -mandir='${datarootdir}/man' - -ac_prev= -ac_dashdash= -for ac_option -do - # If the previous option needs an argument, assign it. - if test -n "$ac_prev"; then - eval $ac_prev=\$ac_option - ac_prev= - continue - fi - - case $ac_option in - *=?*) ac_optarg=`expr "X$ac_option" : '[^=]*=\(.*\)'` ;; - *=) ac_optarg= ;; - *) ac_optarg=yes ;; - esac - - # Accept the important Cygnus configure options, so we can diagnose typos. - - case $ac_dashdash$ac_option in - --) - ac_dashdash=yes ;; - - -bindir | --bindir | --bindi | --bind | --bin | --bi) - ac_prev=bindir ;; - -bindir=* | --bindir=* | --bindi=* | --bind=* | --bin=* | --bi=*) - bindir=$ac_optarg ;; - - -build | --build | --buil | --bui | --bu) - ac_prev=build_alias ;; - -build=* | --build=* | --buil=* | --bui=* | --bu=*) - build_alias=$ac_optarg ;; - - -cache-file | --cache-file | --cache-fil | --cache-fi \ - | --cache-f | --cache- | --cache | --cach | --cac | --ca | --c) - ac_prev=cache_file ;; - -cache-file=* | --cache-file=* | --cache-fil=* | --cache-fi=* \ - | --cache-f=* | --cache-=* | --cache=* | --cach=* | --cac=* | --ca=* | --c=*) - cache_file=$ac_optarg ;; - - --config-cache | -C) - cache_file=config.cache ;; - - -datadir | --datadir | --datadi | --datad) - ac_prev=datadir ;; - -datadir=* | --datadir=* | --datadi=* | --datad=*) - datadir=$ac_optarg ;; - - -datarootdir | --datarootdir | --datarootdi | --datarootd | --dataroot \ - | --dataroo | --dataro | --datar) - ac_prev=datarootdir ;; - -datarootdir=* | --datarootdir=* | --datarootdi=* | --datarootd=* \ - | --dataroot=* | --dataroo=* | --dataro=* | --datar=*) - datarootdir=$ac_optarg ;; - - -disable-* | --disable-*) - ac_useropt=`expr "x$ac_option" : 'x-*disable-\(.*\)'` - # Reject names that are not valid shell variable names. - expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null && - as_fn_error $? "invalid feature name: $ac_useropt" - ac_useropt_orig=$ac_useropt - ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'` - case $ac_user_opts in - *" -"enable_$ac_useropt" -"*) ;; - *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--disable-$ac_useropt_orig" - ac_unrecognized_sep=', ';; - esac - eval enable_$ac_useropt=no ;; - - -docdir | --docdir | --docdi | --doc | --do) - ac_prev=docdir ;; - -docdir=* | --docdir=* | --docdi=* | --doc=* | --do=*) - docdir=$ac_optarg ;; - - -dvidir | --dvidir | --dvidi | --dvid | --dvi | --dv) - ac_prev=dvidir ;; - -dvidir=* | --dvidir=* | --dvidi=* | --dvid=* | --dvi=* | --dv=*) - dvidir=$ac_optarg ;; - - -enable-* | --enable-*) - ac_useropt=`expr "x$ac_option" : 'x-*enable-\([^=]*\)'` - # Reject names that are not valid shell variable names. - expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null && - as_fn_error $? "invalid feature name: $ac_useropt" - ac_useropt_orig=$ac_useropt - ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'` - case $ac_user_opts in - *" -"enable_$ac_useropt" -"*) ;; - *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--enable-$ac_useropt_orig" - ac_unrecognized_sep=', ';; - esac - eval enable_$ac_useropt=\$ac_optarg ;; - - -exec-prefix | --exec_prefix | --exec-prefix | --exec-prefi \ - | --exec-pref | --exec-pre | --exec-pr | --exec-p | --exec- \ - | --exec | --exe | --ex) - ac_prev=exec_prefix ;; - -exec-prefix=* | --exec_prefix=* | --exec-prefix=* | --exec-prefi=* \ - | --exec-pref=* | --exec-pre=* | --exec-pr=* | --exec-p=* | --exec-=* \ - | --exec=* | --exe=* | --ex=*) - exec_prefix=$ac_optarg ;; - - -gas | --gas | --ga | --g) - # Obsolete; use --with-gas. - with_gas=yes ;; - - -help | --help | --hel | --he | -h) - ac_init_help=long ;; - -help=r* | --help=r* | --hel=r* | --he=r* | -hr*) - ac_init_help=recursive ;; - -help=s* | --help=s* | --hel=s* | --he=s* | -hs*) - ac_init_help=short ;; - - -host | --host | --hos | --ho) - ac_prev=host_alias ;; - -host=* | --host=* | --hos=* | --ho=*) - host_alias=$ac_optarg ;; - - -htmldir | --htmldir | --htmldi | --htmld | --html | --htm | --ht) - ac_prev=htmldir ;; - -htmldir=* | --htmldir=* | --htmldi=* | --htmld=* | --html=* | --htm=* \ - | --ht=*) - htmldir=$ac_optarg ;; - - -includedir | --includedir | --includedi | --included | --include \ - | --includ | --inclu | --incl | --inc) - ac_prev=includedir ;; - -includedir=* | --includedir=* | --includedi=* | --included=* | --include=* \ - | --includ=* | --inclu=* | --incl=* | --inc=*) - includedir=$ac_optarg ;; - - -infodir | --infodir | --infodi | --infod | --info | --inf) - ac_prev=infodir ;; - -infodir=* | --infodir=* | --infodi=* | --infod=* | --info=* | --inf=*) - infodir=$ac_optarg ;; - - -libdir | --libdir | --libdi | --libd) - ac_prev=libdir ;; - -libdir=* | --libdir=* | --libdi=* | --libd=*) - libdir=$ac_optarg ;; - - -libexecdir | --libexecdir | --libexecdi | --libexecd | --libexec \ - | --libexe | --libex | --libe) - ac_prev=libexecdir ;; - -libexecdir=* | --libexecdir=* | --libexecdi=* | --libexecd=* | --libexec=* \ - | --libexe=* | --libex=* | --libe=*) - libexecdir=$ac_optarg ;; - - -localedir | --localedir | --localedi | --localed | --locale) - ac_prev=localedir ;; - -localedir=* | --localedir=* | --localedi=* | --localed=* | --locale=*) - localedir=$ac_optarg ;; - - -localstatedir | --localstatedir | --localstatedi | --localstated \ - | --localstate | --localstat | --localsta | --localst | --locals) - ac_prev=localstatedir ;; - -localstatedir=* | --localstatedir=* | --localstatedi=* | --localstated=* \ - | --localstate=* | --localstat=* | --localsta=* | --localst=* | --locals=*) - localstatedir=$ac_optarg ;; - - -mandir | --mandir | --mandi | --mand | --man | --ma | --m) - ac_prev=mandir ;; - -mandir=* | --mandir=* | --mandi=* | --mand=* | --man=* | --ma=* | --m=*) - mandir=$ac_optarg ;; - - -nfp | --nfp | --nf) - # Obsolete; use --without-fp. - with_fp=no ;; - - -no-create | --no-create | --no-creat | --no-crea | --no-cre \ - | --no-cr | --no-c | -n) - no_create=yes ;; - - -no-recursion | --no-recursion | --no-recursio | --no-recursi \ - | --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r) - no_recursion=yes ;; - - -oldincludedir | --oldincludedir | --oldincludedi | --oldincluded \ - | --oldinclude | --oldinclud | --oldinclu | --oldincl | --oldinc \ - | --oldin | --oldi | --old | --ol | --o) - ac_prev=oldincludedir ;; - -oldincludedir=* | --oldincludedir=* | --oldincludedi=* | --oldincluded=* \ - | --oldinclude=* | --oldinclud=* | --oldinclu=* | --oldincl=* | --oldinc=* \ - | --oldin=* | --oldi=* | --old=* | --ol=* | --o=*) - oldincludedir=$ac_optarg ;; - - -prefix | --prefix | --prefi | --pref | --pre | --pr | --p) - ac_prev=prefix ;; - -prefix=* | --prefix=* | --prefi=* | --pref=* | --pre=* | --pr=* | --p=*) - prefix=$ac_optarg ;; - - -program-prefix | --program-prefix | --program-prefi | --program-pref \ - | --program-pre | --program-pr | --program-p) - ac_prev=program_prefix ;; - -program-prefix=* | --program-prefix=* | --program-prefi=* \ - | --program-pref=* | --program-pre=* | --program-pr=* | --program-p=*) - program_prefix=$ac_optarg ;; - - -program-suffix | --program-suffix | --program-suffi | --program-suff \ - | --program-suf | --program-su | --program-s) - ac_prev=program_suffix ;; - -program-suffix=* | --program-suffix=* | --program-suffi=* \ - | --program-suff=* | --program-suf=* | --program-su=* | --program-s=*) - program_suffix=$ac_optarg ;; - - -program-transform-name | --program-transform-name \ - | --program-transform-nam | --program-transform-na \ - | --program-transform-n | --program-transform- \ - | --program-transform | --program-transfor \ - | --program-transfo | --program-transf \ - | --program-trans | --program-tran \ - | --progr-tra | --program-tr | --program-t) - ac_prev=program_transform_name ;; - -program-transform-name=* | --program-transform-name=* \ - | --program-transform-nam=* | --program-transform-na=* \ - | --program-transform-n=* | --program-transform-=* \ - | --program-transform=* | --program-transfor=* \ - | --program-transfo=* | --program-transf=* \ - | --program-trans=* | --program-tran=* \ - | --progr-tra=* | --program-tr=* | --program-t=*) - program_transform_name=$ac_optarg ;; - - -pdfdir | --pdfdir | --pdfdi | --pdfd | --pdf | --pd) - ac_prev=pdfdir ;; - -pdfdir=* | --pdfdir=* | --pdfdi=* | --pdfd=* | --pdf=* | --pd=*) - pdfdir=$ac_optarg ;; - - -psdir | --psdir | --psdi | --psd | --ps) - ac_prev=psdir ;; - -psdir=* | --psdir=* | --psdi=* | --psd=* | --ps=*) - psdir=$ac_optarg ;; - - -q | -quiet | --quiet | --quie | --qui | --qu | --q \ - | -silent | --silent | --silen | --sile | --sil) - silent=yes ;; - - -runstatedir | --runstatedir | --runstatedi | --runstated \ - | --runstate | --runstat | --runsta | --runst | --runs \ - | --run | --ru | --r) - ac_prev=runstatedir ;; - -runstatedir=* | --runstatedir=* | --runstatedi=* | --runstated=* \ - | --runstate=* | --runstat=* | --runsta=* | --runst=* | --runs=* \ - | --run=* | --ru=* | --r=*) - runstatedir=$ac_optarg ;; - - -sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb) - ac_prev=sbindir ;; - -sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \ - | --sbi=* | --sb=*) - sbindir=$ac_optarg ;; - - -sharedstatedir | --sharedstatedir | --sharedstatedi \ - | --sharedstated | --sharedstate | --sharedstat | --sharedsta \ - | --sharedst | --shareds | --shared | --share | --shar \ - | --sha | --sh) - ac_prev=sharedstatedir ;; - -sharedstatedir=* | --sharedstatedir=* | --sharedstatedi=* \ - | --sharedstated=* | --sharedstate=* | --sharedstat=* | --sharedsta=* \ - | --sharedst=* | --shareds=* | --shared=* | --share=* | --shar=* \ - | --sha=* | --sh=*) - sharedstatedir=$ac_optarg ;; - - -site | --site | --sit) - ac_prev=site ;; - -site=* | --site=* | --sit=*) - site=$ac_optarg ;; - - -srcdir | --srcdir | --srcdi | --srcd | --src | --sr) - ac_prev=srcdir ;; - -srcdir=* | --srcdir=* | --srcdi=* | --srcd=* | --src=* | --sr=*) - srcdir=$ac_optarg ;; - - -sysconfdir | --sysconfdir | --sysconfdi | --sysconfd | --sysconf \ - | --syscon | --sysco | --sysc | --sys | --sy) - ac_prev=sysconfdir ;; - -sysconfdir=* | --sysconfdir=* | --sysconfdi=* | --sysconfd=* | --sysconf=* \ - | --syscon=* | --sysco=* | --sysc=* | --sys=* | --sy=*) - sysconfdir=$ac_optarg ;; - - -target | --target | --targe | --targ | --tar | --ta | --t) - ac_prev=target_alias ;; - -target=* | --target=* | --targe=* | --targ=* | --tar=* | --ta=* | --t=*) - target_alias=$ac_optarg ;; - - -v | -verbose | --verbose | --verbos | --verbo | --verb) - verbose=yes ;; - - -version | --version | --versio | --versi | --vers | -V) - ac_init_version=: ;; - - -with-* | --with-*) - ac_useropt=`expr "x$ac_option" : 'x-*with-\([^=]*\)'` - # Reject names that are not valid shell variable names. - expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null && - as_fn_error $? "invalid package name: $ac_useropt" - ac_useropt_orig=$ac_useropt - ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'` - case $ac_user_opts in - *" -"with_$ac_useropt" -"*) ;; - *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--with-$ac_useropt_orig" - ac_unrecognized_sep=', ';; - esac - eval with_$ac_useropt=\$ac_optarg ;; - - -without-* | --without-*) - ac_useropt=`expr "x$ac_option" : 'x-*without-\(.*\)'` - # Reject names that are not valid shell variable names. - expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null && - as_fn_error $? "invalid package name: $ac_useropt" - ac_useropt_orig=$ac_useropt - ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'` - case $ac_user_opts in - *" -"with_$ac_useropt" -"*) ;; - *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--without-$ac_useropt_orig" - ac_unrecognized_sep=', ';; - esac - eval with_$ac_useropt=no ;; - - --x) - # Obsolete; use --with-x. - with_x=yes ;; - - -x-includes | --x-includes | --x-include | --x-includ | --x-inclu \ - | --x-incl | --x-inc | --x-in | --x-i) - ac_prev=x_includes ;; - -x-includes=* | --x-includes=* | --x-include=* | --x-includ=* | --x-inclu=* \ - | --x-incl=* | --x-inc=* | --x-in=* | --x-i=*) - x_includes=$ac_optarg ;; - - -x-libraries | --x-libraries | --x-librarie | --x-librari \ - | --x-librar | --x-libra | --x-libr | --x-lib | --x-li | --x-l) - ac_prev=x_libraries ;; - -x-libraries=* | --x-libraries=* | --x-librarie=* | --x-librari=* \ - | --x-librar=* | --x-libra=* | --x-libr=* | --x-lib=* | --x-li=* | --x-l=*) - x_libraries=$ac_optarg ;; - - -*) as_fn_error $? "unrecognized option: \`$ac_option' -Try \`$0 --help' for more information" - ;; - - *=*) - ac_envvar=`expr "x$ac_option" : 'x\([^=]*\)='` - # Reject names that are not valid shell variable names. - case $ac_envvar in #( - '' | [0-9]* | *[!_$as_cr_alnum]* ) - as_fn_error $? "invalid variable name: \`$ac_envvar'" ;; - esac - eval $ac_envvar=\$ac_optarg - export $ac_envvar ;; - - *) - # FIXME: should be removed in autoconf 3.0. - $as_echo "$as_me: WARNING: you should use --build, --host, --target" >&2 - expr "x$ac_option" : ".*[^-._$as_cr_alnum]" >/dev/null && - $as_echo "$as_me: WARNING: invalid host type: $ac_option" >&2 - : "${build_alias=$ac_option} ${host_alias=$ac_option} ${target_alias=$ac_option}" - ;; - - esac -done - -if test -n "$ac_prev"; then - ac_option=--`echo $ac_prev | sed 's/_/-/g'` - as_fn_error $? "missing argument to $ac_option" -fi - -if test -n "$ac_unrecognized_opts"; then - case $enable_option_checking in - no) ;; - fatal) as_fn_error $? "unrecognized options: $ac_unrecognized_opts" ;; - *) $as_echo "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2 ;; - esac -fi - -# Check all directory arguments for consistency. -for ac_var in exec_prefix prefix bindir sbindir libexecdir datarootdir \ - datadir sysconfdir sharedstatedir localstatedir includedir \ - oldincludedir docdir infodir htmldir dvidir pdfdir psdir \ - libdir localedir mandir runstatedir -do - eval ac_val=\$$ac_var - # Remove trailing slashes. - case $ac_val in - */ ) - ac_val=`expr "X$ac_val" : 'X\(.*[^/]\)' \| "X$ac_val" : 'X\(.*\)'` - eval $ac_var=\$ac_val;; - esac - # Be sure to have absolute directory names. - case $ac_val in - [\\/$]* | ?:[\\/]* ) continue;; - NONE | '' ) case $ac_var in *prefix ) continue;; esac;; - esac - as_fn_error $? "expected an absolute directory name for --$ac_var: $ac_val" -done - -# There might be people who depend on the old broken behavior: `$host' -# used to hold the argument of --host etc. -# FIXME: To remove some day. -build=$build_alias -host=$host_alias -target=$target_alias - -# FIXME: To remove some day. -if test "x$host_alias" != x; then - if test "x$build_alias" = x; then - cross_compiling=maybe - elif test "x$build_alias" != "x$host_alias"; then - cross_compiling=yes - fi -fi - -ac_tool_prefix= -test -n "$host_alias" && ac_tool_prefix=$host_alias- - -test "$silent" = yes && exec 6>/dev/null - - -ac_pwd=`pwd` && test -n "$ac_pwd" && -ac_ls_di=`ls -di .` && -ac_pwd_ls_di=`cd "$ac_pwd" && ls -di .` || - as_fn_error $? "working directory cannot be determined" -test "X$ac_ls_di" = "X$ac_pwd_ls_di" || - as_fn_error $? "pwd does not report name of working directory" - - -# Find the source files, if location was not specified. -if test -z "$srcdir"; then - ac_srcdir_defaulted=yes - # Try the directory containing this script, then the parent directory. - ac_confdir=`$as_dirname -- "$as_myself" || -$as_expr X"$as_myself" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$as_myself" : 'X\(//\)[^/]' \| \ - X"$as_myself" : 'X\(//\)$' \| \ - X"$as_myself" : 'X\(/\)' \| . 2>/dev/null || -$as_echo X"$as_myself" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ - s//\1/ - q - } - /^X\(\/\/\)[^/].*/{ - s//\1/ - q - } - /^X\(\/\/\)$/{ - s//\1/ - q - } - /^X\(\/\).*/{ - s//\1/ - q - } - s/.*/./; q'` - srcdir=$ac_confdir - if test ! -r "$srcdir/$ac_unique_file"; then - srcdir=.. - fi -else - ac_srcdir_defaulted=no -fi -if test ! -r "$srcdir/$ac_unique_file"; then - test "$ac_srcdir_defaulted" = yes && srcdir="$ac_confdir or .." - as_fn_error $? "cannot find sources ($ac_unique_file) in $srcdir" -fi -ac_msg="sources are in $srcdir, but \`cd $srcdir' does not work" -ac_abs_confdir=`( - cd "$srcdir" && test -r "./$ac_unique_file" || as_fn_error $? "$ac_msg" - pwd)` -# When building in place, set srcdir=. -if test "$ac_abs_confdir" = "$ac_pwd"; then - srcdir=. -fi -# Remove unnecessary trailing slashes from srcdir. -# Double slashes in file names in object file debugging info -# mess up M-x gdb in Emacs. -case $srcdir in -*/) srcdir=`expr "X$srcdir" : 'X\(.*[^/]\)' \| "X$srcdir" : 'X\(.*\)'`;; -esac -for ac_var in $ac_precious_vars; do - eval ac_env_${ac_var}_set=\${${ac_var}+set} - eval ac_env_${ac_var}_value=\$${ac_var} - eval ac_cv_env_${ac_var}_set=\${${ac_var}+set} - eval ac_cv_env_${ac_var}_value=\$${ac_var} -done - -# -# Report the --help message. -# -if test "$ac_init_help" = "long"; then - # Omit some internal or obsolete options to make the list less imposing. - # This message is too long to be a string in the A/UX 3.1 sh. - cat <<_ACEOF -\`configure' configures GRUB 2.04 to adapt to many kinds of systems. - -Usage: $0 [OPTION]... [VAR=VALUE]... - -To assign environment variables (e.g., CC, CFLAGS...), specify them as -VAR=VALUE. See below for descriptions of some of the useful variables. - -Defaults for the options are specified in brackets. - -Configuration: - -h, --help display this help and exit - --help=short display options specific to this package - --help=recursive display the short help of all the included packages - -V, --version display version information and exit - -q, --quiet, --silent do not print \`checking ...' messages - --cache-file=FILE cache test results in FILE [disabled] - -C, --config-cache alias for \`--cache-file=config.cache' - -n, --no-create do not create output files - --srcdir=DIR find the sources in DIR [configure dir or \`..'] - -Installation directories: - --prefix=PREFIX install architecture-independent files in PREFIX - [$ac_default_prefix] - --exec-prefix=EPREFIX install architecture-dependent files in EPREFIX - [PREFIX] - -By default, \`make install' will install all the files in -\`$ac_default_prefix/bin', \`$ac_default_prefix/lib' etc. You can specify -an installation prefix other than \`$ac_default_prefix' using \`--prefix', -for instance \`--prefix=\$HOME'. - -For better control, use the options below. - -Fine tuning of the installation directories: - --bindir=DIR user executables [EPREFIX/bin] - --sbindir=DIR system admin executables [EPREFIX/sbin] - --libexecdir=DIR program executables [EPREFIX/libexec] - --sysconfdir=DIR read-only single-machine data [PREFIX/etc] - --sharedstatedir=DIR modifiable architecture-independent data [PREFIX/com] - --localstatedir=DIR modifiable single-machine data [PREFIX/var] - --runstatedir=DIR modifiable per-process data [LOCALSTATEDIR/run] - --libdir=DIR object code libraries [EPREFIX/lib] - --includedir=DIR C header files [PREFIX/include] - --oldincludedir=DIR C header files for non-gcc [/usr/include] - --datarootdir=DIR read-only arch.-independent data root [PREFIX/share] - --datadir=DIR read-only architecture-independent data [DATAROOTDIR] - --infodir=DIR info documentation [DATAROOTDIR/info] - --localedir=DIR locale-dependent data [DATAROOTDIR/locale] - --mandir=DIR man documentation [DATAROOTDIR/man] - --docdir=DIR documentation root [DATAROOTDIR/doc/grub] - --htmldir=DIR html documentation [DOCDIR] - --dvidir=DIR dvi documentation [DOCDIR] - --pdfdir=DIR pdf documentation [DOCDIR] - --psdir=DIR ps documentation [DOCDIR] -_ACEOF - - cat <<\_ACEOF - -Program names: - --program-prefix=PREFIX prepend PREFIX to installed program names - --program-suffix=SUFFIX append SUFFIX to installed program names - --program-transform-name=PROGRAM run sed PROGRAM on installed program names - -System types: - --build=BUILD configure for building on BUILD [guessed] - --host=HOST cross-compile to build programs to run on HOST [BUILD] - --target=TARGET configure for building compilers for TARGET [HOST] -_ACEOF -fi - -if test -n "$ac_init_help"; then - case $ac_init_help in - short | recursive ) echo "Configuration of GRUB 2.04:";; - esac - cat <<\_ACEOF - -Optional Features: - --disable-option-checking ignore unrecognized --enable/--with options - --disable-FEATURE do not include FEATURE (same as --enable-FEATURE=no) - --enable-FEATURE[=ARG] include FEATURE [ARG=yes] - --enable-silent-rules less verbose build output (undo: "make V=1") - --disable-silent-rules verbose build output (undo: "make V=0") - --enable-dependency-tracking - do not reject slow dependency extractors - --disable-dependency-tracking - speeds up one-time build - --disable-largefile omit support for large files - --enable-threads={posix|solaris|pth|windows} - specify multithreading API - --disable-threads build without multithread safety - --disable-nls do not use Native Language Support - --disable-rpath do not hardcode runtime library paths - --enable-efiemu build and install the efiemu runtimes - (default=guessed) - --enable-mm-debug include memory manager debugging - --enable-cache-stats enable disk cache statistics collection - --enable-boot-time enable boot time statistics collection - --enable-grub-emu-sdl build and install the `grub-emu' debugging utility - with SDL support (default=guessed) - --enable-grub-emu-pci build and install the `grub-emu' debugging utility - with PCI support (potentially dangerous) - (default=no) - --enable-grub-mkfont build and install the `grub-mkfont' utility - (default=guessed) - --enable-grub-themes build and install GRUB themes (default=guessed) - --enable-grub-mount build and install the `grub-mount' utility - (default=guessed) - --enable-device-mapper enable Linux device-mapper support (default=guessed) - --enable-liblzma enable liblzma integration (default=guessed) - --enable-libzfs enable libzfs integration (default=guessed) - --disable-werror do not use -Werror when building GRUB - -Optional Packages: - --with-PACKAGE[=ARG] use PACKAGE [ARG=yes] - --without-PACKAGE do not use PACKAGE (same as --with-PACKAGE=no) - --with-platform=PLATFORM - select the host platform [[guessed]] - --with-bootdir=DIR set the name of /boot directory [[guessed]] - --with-grubdir=DIR set the name of grub directory [[guessed]] - --with-gnu-ld assume the C compiler uses GNU ld [default=no] - --with-libiconv-prefix[=DIR] search for libiconv in DIR/include and DIR/lib - --without-libiconv-prefix don't search for libiconv in includedir and libdir - --with-libintl-prefix[=DIR] search for libintl in DIR/include and DIR/lib - --without-libintl-prefix don't search for libintl in includedir and libdir - --with-libpth-prefix[=DIR] search for libpth in DIR/include and DIR/lib - --without-libpth-prefix don't search for libpth in includedir and libdir - --without-included-regex - don't compile regex; this is the default on systems - with recent-enough versions of the GNU C Library - (use with caution on other systems). - -Some influential environment variables: - PKG_CONFIG path to pkg-config utility - PKG_CONFIG_PATH - directories to add to pkg-config's search path - PKG_CONFIG_LIBDIR - path overriding pkg-config's built-in search path - CC C compiler command - CFLAGS C compiler flags - LDFLAGS linker flags, e.g. -L if you have libraries in a - nonstandard directory - LIBS libraries to pass to the linker, e.g. -l - CPPFLAGS (Objective) C/C++ preprocessor flags, e.g. -I if - you have headers in a nonstandard directory - YACC The `Yet Another Compiler Compiler' implementation to use. - Defaults to the first program found out of: `bison -y', `byacc', - `yacc'. - YFLAGS The list of arguments that will be passed by default to $YACC. - This script will default YFLAGS to the empty string to avoid a - default value of `-d' given by some make applications. - CPP C preprocessor - CXX C++ compiler command - CXXFLAGS C++ compiler flags - CCAS assembler compiler command (defaults to CC) - CCASFLAGS assembler compiler flags (defaults to CFLAGS) - PYTHON the Python interpreter - FREETYPE_CFLAGS - C compiler flags for FREETYPE, overriding pkg-config - FREETYPE_LIBS - linker flags for FREETYPE, overriding pkg-config - BUILD_FREETYPE_CFLAGS - C compiler flags for BUILD_FREETYPE, overriding pkg-config - BUILD_FREETYPE_LIBS - linker flags for BUILD_FREETYPE, overriding pkg-config - -Use these variables to override the choices made by `configure' or to help -it to find libraries and programs with nonstandard names/locations. - -Report bugs to . -_ACEOF -ac_status=$? -fi - -if test "$ac_init_help" = "recursive"; then - # If there are subdirs, report their specific --help. - for ac_dir in : $ac_subdirs_all; do test "x$ac_dir" = x: && continue - test -d "$ac_dir" || - { cd "$srcdir" && ac_pwd=`pwd` && srcdir=. && test -d "$ac_dir"; } || - continue - ac_builddir=. - -case "$ac_dir" in -.) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;; -*) - ac_dir_suffix=/`$as_echo "$ac_dir" | sed 's|^\.[\\/]||'` - # A ".." for each directory in $ac_dir_suffix. - ac_top_builddir_sub=`$as_echo "$ac_dir_suffix" | sed 's|/[^\\/]*|/..|g;s|/||'` - case $ac_top_builddir_sub in - "") ac_top_builddir_sub=. ac_top_build_prefix= ;; - *) ac_top_build_prefix=$ac_top_builddir_sub/ ;; - esac ;; -esac -ac_abs_top_builddir=$ac_pwd -ac_abs_builddir=$ac_pwd$ac_dir_suffix -# for backward compatibility: -ac_top_builddir=$ac_top_build_prefix - -case $srcdir in - .) # We are building in place. - ac_srcdir=. - ac_top_srcdir=$ac_top_builddir_sub - ac_abs_top_srcdir=$ac_pwd ;; - [\\/]* | ?:[\\/]* ) # Absolute name. - ac_srcdir=$srcdir$ac_dir_suffix; - ac_top_srcdir=$srcdir - ac_abs_top_srcdir=$srcdir ;; - *) # Relative name. - ac_srcdir=$ac_top_build_prefix$srcdir$ac_dir_suffix - ac_top_srcdir=$ac_top_build_prefix$srcdir - ac_abs_top_srcdir=$ac_pwd/$srcdir ;; -esac -ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix - - cd "$ac_dir" || { ac_status=$?; continue; } - # Check for guested configure. - if test -f "$ac_srcdir/configure.gnu"; then - echo && - $SHELL "$ac_srcdir/configure.gnu" --help=recursive - elif test -f "$ac_srcdir/configure"; then - echo && - $SHELL "$ac_srcdir/configure" --help=recursive - else - $as_echo "$as_me: WARNING: no configuration information is in $ac_dir" >&2 - fi || ac_status=$? - cd "$ac_pwd" || { ac_status=$?; break; } - done -fi - -test -n "$ac_init_help" && exit $ac_status -if $ac_init_version; then - cat <<\_ACEOF -GRUB configure 2.04 -generated by GNU Autoconf 2.69 - -Copyright (C) 2012 Free Software Foundation, Inc. -This configure script is free software; the Free Software Foundation -gives unlimited permission to copy, distribute and modify it. -_ACEOF - exit -fi - -## ------------------------ ## -## Autoconf initialization. ## -## ------------------------ ## - -# ac_fn_c_try_compile LINENO -# -------------------------- -# Try to compile conftest.$ac_ext, and return whether this succeeded. -ac_fn_c_try_compile () -{ - as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack - rm -f conftest.$ac_objext - if { { ac_try="$ac_compile" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" -$as_echo "$ac_try_echo"; } >&5 - (eval "$ac_compile") 2>conftest.err - ac_status=$? - if test -s conftest.err; then - grep -v '^ *+' conftest.err >conftest.er1 - cat conftest.er1 >&5 - mv -f conftest.er1 conftest.err - fi - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest.$ac_objext; then : - ac_retval=0 -else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - ac_retval=1 -fi - eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno - as_fn_set_status $ac_retval - -} # ac_fn_c_try_compile - -# ac_fn_c_try_link LINENO -# ----------------------- -# Try to link conftest.$ac_ext, and return whether this succeeded. -ac_fn_c_try_link () -{ - as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack - rm -f conftest.$ac_objext conftest$ac_exeext - if { { ac_try="$ac_link" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" -$as_echo "$ac_try_echo"; } >&5 - (eval "$ac_link") 2>conftest.err - ac_status=$? - if test -s conftest.err; then - grep -v '^ *+' conftest.err >conftest.er1 - cat conftest.er1 >&5 - mv -f conftest.er1 conftest.err - fi - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest$ac_exeext && { - test "$cross_compiling" = yes || - test -x conftest$ac_exeext - }; then : - ac_retval=0 -else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - ac_retval=1 -fi - # Delete the IPA/IPO (Inter Procedural Analysis/Optimization) information - # created by the PGI compiler (conftest_ipa8_conftest.oo), as it would - # interfere with the next link command; also delete a directory that is - # left behind by Apple's compiler. We do this before executing the actions. - rm -rf conftest.dSYM conftest_ipa8_conftest.oo - eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno - as_fn_set_status $ac_retval - -} # ac_fn_c_try_link - -# ac_fn_c_try_cpp LINENO -# ---------------------- -# Try to preprocess conftest.$ac_ext, and return whether this succeeded. -ac_fn_c_try_cpp () -{ - as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack - if { { ac_try="$ac_cpp conftest.$ac_ext" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" -$as_echo "$ac_try_echo"; } >&5 - (eval "$ac_cpp conftest.$ac_ext") 2>conftest.err - ac_status=$? - if test -s conftest.err; then - grep -v '^ *+' conftest.err >conftest.er1 - cat conftest.er1 >&5 - mv -f conftest.er1 conftest.err - fi - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; } > conftest.i && { - test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" || - test ! -s conftest.err - }; then : - ac_retval=0 -else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - ac_retval=1 -fi - eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno - as_fn_set_status $ac_retval - -} # ac_fn_c_try_cpp - -# ac_fn_c_check_header_mongrel LINENO HEADER VAR INCLUDES -# ------------------------------------------------------- -# Tests whether HEADER exists, giving a warning if it cannot be compiled using -# the include files in INCLUDES and setting the cache variable VAR -# accordingly. -ac_fn_c_check_header_mongrel () -{ - as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack - if eval \${$3+:} false; then : - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5 -$as_echo_n "checking for $2... " >&6; } -if eval \${$3+:} false; then : - $as_echo_n "(cached) " >&6 -fi -eval ac_res=\$$3 - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 -$as_echo "$ac_res" >&6; } -else - # Is the header compilable? -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking $2 usability" >&5 -$as_echo_n "checking $2 usability... " >&6; } -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -$4 -#include <$2> -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - ac_header_compiler=yes -else - ac_header_compiler=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_header_compiler" >&5 -$as_echo "$ac_header_compiler" >&6; } - -# Is the header present? -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking $2 presence" >&5 -$as_echo_n "checking $2 presence... " >&6; } -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include <$2> -_ACEOF -if ac_fn_c_try_cpp "$LINENO"; then : - ac_header_preproc=yes -else - ac_header_preproc=no -fi -rm -f conftest.err conftest.i conftest.$ac_ext -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_header_preproc" >&5 -$as_echo "$ac_header_preproc" >&6; } - -# So? What about this header? -case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in #(( - yes:no: ) - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: accepted by the compiler, rejected by the preprocessor!" >&5 -$as_echo "$as_me: WARNING: $2: accepted by the compiler, rejected by the preprocessor!" >&2;} - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: proceeding with the compiler's result" >&5 -$as_echo "$as_me: WARNING: $2: proceeding with the compiler's result" >&2;} - ;; - no:yes:* ) - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: present but cannot be compiled" >&5 -$as_echo "$as_me: WARNING: $2: present but cannot be compiled" >&2;} - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: check for missing prerequisite headers?" >&5 -$as_echo "$as_me: WARNING: $2: check for missing prerequisite headers?" >&2;} - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: see the Autoconf documentation" >&5 -$as_echo "$as_me: WARNING: $2: see the Autoconf documentation" >&2;} - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: section \"Present But Cannot Be Compiled\"" >&5 -$as_echo "$as_me: WARNING: $2: section \"Present But Cannot Be Compiled\"" >&2;} - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: proceeding with the compiler's result" >&5 -$as_echo "$as_me: WARNING: $2: proceeding with the compiler's result" >&2;} -( $as_echo "## ------------------------------- ## -## Report this to bug-grub@gnu.org ## -## ------------------------------- ##" - ) | sed "s/^/$as_me: WARNING: /" >&2 - ;; -esac - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5 -$as_echo_n "checking for $2... " >&6; } -if eval \${$3+:} false; then : - $as_echo_n "(cached) " >&6 -else - eval "$3=\$ac_header_compiler" -fi -eval ac_res=\$$3 - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 -$as_echo "$ac_res" >&6; } -fi - eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno - -} # ac_fn_c_check_header_mongrel - -# ac_fn_c_try_run LINENO -# ---------------------- -# Try to link conftest.$ac_ext, and return whether this succeeded. Assumes -# that executables *can* be run. -ac_fn_c_try_run () -{ - as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack - if { { ac_try="$ac_link" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" -$as_echo "$ac_try_echo"; } >&5 - (eval "$ac_link") 2>&5 - ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; } && { ac_try='./conftest$ac_exeext' - { { case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" -$as_echo "$ac_try_echo"; } >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; }; then : - ac_retval=0 -else - $as_echo "$as_me: program exited with status $ac_status" >&5 - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - ac_retval=$ac_status -fi - rm -rf conftest.dSYM conftest_ipa8_conftest.oo - eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno - as_fn_set_status $ac_retval - -} # ac_fn_c_try_run - -# ac_fn_c_check_header_compile LINENO HEADER VAR INCLUDES -# ------------------------------------------------------- -# Tests whether HEADER exists and can be compiled using the include files in -# INCLUDES, setting the cache variable VAR accordingly. -ac_fn_c_check_header_compile () -{ - as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5 -$as_echo_n "checking for $2... " >&6; } -if eval \${$3+:} false; then : - $as_echo_n "(cached) " >&6 -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -$4 -#include <$2> -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - eval "$3=yes" -else - eval "$3=no" -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi -eval ac_res=\$$3 - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 -$as_echo "$ac_res" >&6; } - eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno - -} # ac_fn_c_check_header_compile - -# ac_fn_cxx_try_compile LINENO -# ---------------------------- -# Try to compile conftest.$ac_ext, and return whether this succeeded. -ac_fn_cxx_try_compile () -{ - as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack - rm -f conftest.$ac_objext - if { { ac_try="$ac_compile" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" -$as_echo "$ac_try_echo"; } >&5 - (eval "$ac_compile") 2>conftest.err - ac_status=$? - if test -s conftest.err; then - grep -v '^ *+' conftest.err >conftest.er1 - cat conftest.er1 >&5 - mv -f conftest.er1 conftest.err - fi - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; } && { - test -z "$ac_cxx_werror_flag" || - test ! -s conftest.err - } && test -s conftest.$ac_objext; then : - ac_retval=0 -else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - ac_retval=1 -fi - eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno - as_fn_set_status $ac_retval - -} # ac_fn_cxx_try_compile - -# ac_fn_c_compute_int LINENO EXPR VAR INCLUDES -# -------------------------------------------- -# Tries to find the compile-time value of EXPR in a program that includes -# INCLUDES, setting VAR accordingly. Returns whether the value could be -# computed -ac_fn_c_compute_int () -{ - as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack - if test "$cross_compiling" = yes; then - # Depending upon the size, compute the lo and hi bounds. -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -$4 -int -main (void) -{ -static int test_array [1 - 2 * !(($2) >= 0)]; -test_array [0] = 0; -return test_array [0]; - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - ac_lo=0 ac_mid=0 - while :; do - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -$4 -int -main (void) -{ -static int test_array [1 - 2 * !(($2) <= $ac_mid)]; -test_array [0] = 0; -return test_array [0]; - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - ac_hi=$ac_mid; break -else - as_fn_arith $ac_mid + 1 && ac_lo=$as_val - if test $ac_lo -le $ac_mid; then - ac_lo= ac_hi= - break - fi - as_fn_arith 2 '*' $ac_mid + 1 && ac_mid=$as_val -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - done -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -$4 -int -main (void) -{ -static int test_array [1 - 2 * !(($2) < 0)]; -test_array [0] = 0; -return test_array [0]; - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - ac_hi=-1 ac_mid=-1 - while :; do - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -$4 -int -main (void) -{ -static int test_array [1 - 2 * !(($2) >= $ac_mid)]; -test_array [0] = 0; -return test_array [0]; - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - ac_lo=$ac_mid; break -else - as_fn_arith '(' $ac_mid ')' - 1 && ac_hi=$as_val - if test $ac_mid -le $ac_hi; then - ac_lo= ac_hi= - break - fi - as_fn_arith 2 '*' $ac_mid && ac_mid=$as_val -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - done -else - ac_lo= ac_hi= -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -# Binary search between lo and hi bounds. -while test "x$ac_lo" != "x$ac_hi"; do - as_fn_arith '(' $ac_hi - $ac_lo ')' / 2 + $ac_lo && ac_mid=$as_val - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -$4 -int -main (void) -{ -static int test_array [1 - 2 * !(($2) <= $ac_mid)]; -test_array [0] = 0; -return test_array [0]; - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - ac_hi=$ac_mid -else - as_fn_arith '(' $ac_mid ')' + 1 && ac_lo=$as_val -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -done -case $ac_lo in #(( -?*) eval "$3=\$ac_lo"; ac_retval=0 ;; -'') ac_retval=1 ;; -esac - else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -$4 -static long int longval () { return $2; } -static unsigned long int ulongval () { return $2; } -#include -#include -int -main (void) -{ - - FILE *f = fopen ("conftest.val", "w"); - if (! f) - return 1; - if (($2) < 0) - { - long int i = longval (); - if (i != ($2)) - return 1; - fprintf (f, "%ld", i); - } - else - { - unsigned long int i = ulongval (); - if (i != ($2)) - return 1; - fprintf (f, "%lu", i); - } - /* Do not output a trailing newline, as this causes \r\n confusion - on some platforms. */ - return ferror (f) || fclose (f) != 0; - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_run "$LINENO"; then : - echo >>conftest.val; read $3 &5 -$as_echo_n "checking for $2... " >&6; } -if eval \${$3+:} false; then : - $as_echo_n "(cached) " >&6 -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -/* Define $2 to an innocuous variant, in case declares $2. - For example, HP-UX 11i declares gettimeofday. */ -#define $2 innocuous_$2 - -/* System header to define __stub macros and hopefully few prototypes, - which can conflict with char $2 (); below. - Prefer to if __STDC__ is defined, since - exists even on freestanding compilers. */ - -#ifdef __STDC__ -# include -#else -# include -#endif - -#undef $2 - -/* Override any GCC internal prototype to avoid an error. - Use char because int might match the return type of a GCC - builtin and then its argument prototype would still apply. */ -#ifdef __cplusplus -extern "C" -#endif -char $2 (); -/* The GNU C library defines this for functions which it implements - to always fail with ENOSYS. Some functions are actually named - something starting with __ and the normal name is an alias. */ -#if defined __stub_$2 || defined __stub___$2 -choke me -#endif - -int -main (void) -{ -return $2 (); - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - eval "$3=yes" -else - eval "$3=no" -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -fi -eval ac_res=\$$3 - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 -$as_echo "$ac_res" >&6; } - eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno - -} # ac_fn_c_check_func - -# ac_fn_c_check_member LINENO AGGR MEMBER VAR INCLUDES -# ---------------------------------------------------- -# Tries to find if the field MEMBER exists in type AGGR, after including -# INCLUDES, setting cache variable VAR accordingly. -ac_fn_c_check_member () -{ - as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2.$3" >&5 -$as_echo_n "checking for $2.$3... " >&6; } -if eval \${$4+:} false; then : - $as_echo_n "(cached) " >&6 -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -$5 -int -main (void) -{ -static $2 ac_aggr; -if (ac_aggr.$3) -return 0; - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - eval "$4=yes" -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -$5 -int -main (void) -{ -static $2 ac_aggr; -if (sizeof ac_aggr.$3) -return 0; - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - eval "$4=yes" -else - eval "$4=no" -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi -eval ac_res=\$$4 - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 -$as_echo "$ac_res" >&6; } - eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno - -} # ac_fn_c_check_member - -# ac_fn_c_check_type LINENO TYPE VAR INCLUDES -# ------------------------------------------- -# Tests whether TYPE exists after having included INCLUDES, setting cache -# variable VAR accordingly. -ac_fn_c_check_type () -{ - as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5 -$as_echo_n "checking for $2... " >&6; } -if eval \${$3+:} false; then : - $as_echo_n "(cached) " >&6 -else - eval "$3=no" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -$4 -int -main (void) -{ -if (sizeof ($2)) - return 0; - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -$4 -int -main (void) -{ -if (sizeof (($2))) - return 0; - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - -else - eval "$3=yes" -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi -eval ac_res=\$$3 - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 -$as_echo "$ac_res" >&6; } - eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno - -} # ac_fn_c_check_type - -# ac_fn_c_check_decl LINENO SYMBOL VAR INCLUDES -# --------------------------------------------- -# Tests whether SYMBOL is declared in INCLUDES, setting cache variable VAR -# accordingly. -ac_fn_c_check_decl () -{ - as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack - as_decl_name=`echo $2|sed 's/ *(.*//'` - as_decl_use=`echo $2|sed -e 's/(/((/' -e 's/)/) 0&/' -e 's/,/) 0& (/g'` - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $as_decl_name is declared" >&5 -$as_echo_n "checking whether $as_decl_name is declared... " >&6; } -if eval \${$3+:} false; then : - $as_echo_n "(cached) " >&6 -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -$4 -int -main (void) -{ -#ifndef $as_decl_name -#ifdef __cplusplus - (void) $as_decl_use; -#else - (void) $as_decl_name; -#endif -#endif - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - eval "$3=yes" -else - eval "$3=no" -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi -eval ac_res=\$$3 - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 -$as_echo "$ac_res" >&6; } - eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno - -} # ac_fn_c_check_decl -cat >config.log <<_ACEOF -This file contains any messages produced by compilers while -running configure, to aid debugging if configure makes a mistake. - -It was created by GRUB $as_me 2.04, which was -generated by GNU Autoconf 2.69. Invocation command line was - - $ $0 $@ - -_ACEOF -exec 5>>config.log -{ -cat <<_ASUNAME -## --------- ## -## Platform. ## -## --------- ## - -hostname = `(hostname || uname -n) 2>/dev/null | sed 1q` -uname -m = `(uname -m) 2>/dev/null || echo unknown` -uname -r = `(uname -r) 2>/dev/null || echo unknown` -uname -s = `(uname -s) 2>/dev/null || echo unknown` -uname -v = `(uname -v) 2>/dev/null || echo unknown` - -/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null || echo unknown` -/bin/uname -X = `(/bin/uname -X) 2>/dev/null || echo unknown` - -/bin/arch = `(/bin/arch) 2>/dev/null || echo unknown` -/usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null || echo unknown` -/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null || echo unknown` -/usr/bin/hostinfo = `(/usr/bin/hostinfo) 2>/dev/null || echo unknown` -/bin/machine = `(/bin/machine) 2>/dev/null || echo unknown` -/usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null || echo unknown` -/bin/universe = `(/bin/universe) 2>/dev/null || echo unknown` - -_ASUNAME - -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - $as_echo "PATH: $as_dir" - done -IFS=$as_save_IFS - -} >&5 - -cat >&5 <<_ACEOF - - -## ----------- ## -## Core tests. ## -## ----------- ## - -_ACEOF - - -# Keep a trace of the command line. -# Strip out --no-create and --no-recursion so they do not pile up. -# Strip out --silent because we don't want to record it for future runs. -# Also quote any args containing shell meta-characters. -# Make two passes to allow for proper duplicate-argument suppression. -ac_configure_args= -ac_configure_args0= -ac_configure_args1= -ac_must_keep_next=false -for ac_pass in 1 2 -do - for ac_arg - do - case $ac_arg in - -no-create | --no-c* | -n | -no-recursion | --no-r*) continue ;; - -q | -quiet | --quiet | --quie | --qui | --qu | --q \ - | -silent | --silent | --silen | --sile | --sil) - continue ;; - *\'*) - ac_arg=`$as_echo "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;; - esac - case $ac_pass in - 1) as_fn_append ac_configure_args0 " '$ac_arg'" ;; - 2) - as_fn_append ac_configure_args1 " '$ac_arg'" - if test $ac_must_keep_next = true; then - ac_must_keep_next=false # Got value, back to normal. - else - case $ac_arg in - *=* | --config-cache | -C | -disable-* | --disable-* \ - | -enable-* | --enable-* | -gas | --g* | -nfp | --nf* \ - | -q | -quiet | --q* | -silent | --sil* | -v | -verb* \ - | -with-* | --with-* | -without-* | --without-* | --x) - case "$ac_configure_args0 " in - "$ac_configure_args1"*" '$ac_arg' "* ) continue ;; - esac - ;; - -* ) ac_must_keep_next=true ;; - esac - fi - as_fn_append ac_configure_args " '$ac_arg'" - ;; - esac - done -done -{ ac_configure_args0=; unset ac_configure_args0;} -{ ac_configure_args1=; unset ac_configure_args1;} - -# When interrupted or exit'd, cleanup temporary files, and complete -# config.log. We remove comments because anyway the quotes in there -# would cause problems or look ugly. -# WARNING: Use '\'' to represent an apostrophe within the trap. -# WARNING: Do not start the trap code with a newline, due to a FreeBSD 4.0 bug. -trap 'exit_status=$? - # Save into config.log some information that might help in debugging. - { - echo - - $as_echo "## ---------------- ## -## Cache variables. ## -## ---------------- ##" - echo - # The following way of writing the cache mishandles newlines in values, -( - for ac_var in `(set) 2>&1 | sed -n '\''s/^\([a-zA-Z_][a-zA-Z0-9_]*\)=.*/\1/p'\''`; do - eval ac_val=\$$ac_var - case $ac_val in #( - *${as_nl}*) - case $ac_var in #( - *_cv_*) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cache variable $ac_var contains a newline" >&5 -$as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;; - esac - case $ac_var in #( - _ | IFS | as_nl) ;; #( - BASH_ARGV | BASH_SOURCE) eval $ac_var= ;; #( - *) { eval $ac_var=; unset $ac_var;} ;; - esac ;; - esac - done - (set) 2>&1 | - case $as_nl`(ac_space='\'' '\''; set) 2>&1` in #( - *${as_nl}ac_space=\ *) - sed -n \ - "s/'\''/'\''\\\\'\'''\''/g; - s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\''\\2'\''/p" - ;; #( - *) - sed -n "/^[_$as_cr_alnum]*_cv_[_$as_cr_alnum]*=/p" - ;; - esac | - sort -) - echo - - $as_echo "## ----------------- ## -## Output variables. ## -## ----------------- ##" - echo - for ac_var in $ac_subst_vars - do - eval ac_val=\$$ac_var - case $ac_val in - *\'\''*) ac_val=`$as_echo "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;; - esac - $as_echo "$ac_var='\''$ac_val'\''" - done | sort - echo - - if test -n "$ac_subst_files"; then - $as_echo "## ------------------- ## -## File substitutions. ## -## ------------------- ##" - echo - for ac_var in $ac_subst_files - do - eval ac_val=\$$ac_var - case $ac_val in - *\'\''*) ac_val=`$as_echo "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;; - esac - $as_echo "$ac_var='\''$ac_val'\''" - done | sort - echo - fi - - if test -s confdefs.h; then - $as_echo "## ----------- ## -## confdefs.h. ## -## ----------- ##" - echo - cat confdefs.h - echo - fi - test "$ac_signal" != 0 && - $as_echo "$as_me: caught signal $ac_signal" - $as_echo "$as_me: exit $exit_status" - } >&5 - rm -f core *.core core.conftest.* && - rm -f -r conftest* confdefs* conf$$* $ac_clean_files && - exit $exit_status -' 0 -for ac_signal in 1 2 13 15; do - trap 'ac_signal='$ac_signal'; as_fn_exit 1' $ac_signal -done -ac_signal=0 - -# confdefs.h avoids OS command line length limits that DEFS can exceed. -rm -f -r conftest* confdefs.h - -$as_echo "/* confdefs.h */" > confdefs.h - -# Predefined preprocessor variables. - -cat >>confdefs.h <<_ACEOF -#define PACKAGE_NAME "$PACKAGE_NAME" -_ACEOF - -cat >>confdefs.h <<_ACEOF -#define PACKAGE_TARNAME "$PACKAGE_TARNAME" -_ACEOF - -cat >>confdefs.h <<_ACEOF -#define PACKAGE_VERSION "$PACKAGE_VERSION" -_ACEOF - -cat >>confdefs.h <<_ACEOF -#define PACKAGE_STRING "$PACKAGE_STRING" -_ACEOF - -cat >>confdefs.h <<_ACEOF -#define PACKAGE_BUGREPORT "$PACKAGE_BUGREPORT" -_ACEOF - -cat >>confdefs.h <<_ACEOF -#define PACKAGE_URL "$PACKAGE_URL" -_ACEOF - - -# Let the site file select an alternate cache file if it wants to. -# Prefer an explicitly selected file to automatically selected ones. -ac_site_file1=NONE -ac_site_file2=NONE -if test -n "$CONFIG_SITE"; then - # We do not want a PATH search for config.site. - case $CONFIG_SITE in #(( - -*) ac_site_file1=./$CONFIG_SITE;; - */*) ac_site_file1=$CONFIG_SITE;; - *) ac_site_file1=./$CONFIG_SITE;; - esac -elif test "x$prefix" != xNONE; then - ac_site_file1=$prefix/share/config.site - ac_site_file2=$prefix/etc/config.site -else - ac_site_file1=$ac_default_prefix/share/config.site - ac_site_file2=$ac_default_prefix/etc/config.site -fi -for ac_site_file in "$ac_site_file1" "$ac_site_file2" -do - test "x$ac_site_file" = xNONE && continue - if test /dev/null != "$ac_site_file" && test -r "$ac_site_file"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: loading site script $ac_site_file" >&5 -$as_echo "$as_me: loading site script $ac_site_file" >&6;} - sed 's/^/| /' "$ac_site_file" >&5 - . "$ac_site_file" \ - || { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 -$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} -as_fn_error $? "failed to load site script $ac_site_file -See \`config.log' for more details" "$LINENO" 5; } - fi -done - -if test -r "$cache_file"; then - # Some versions of bash will fail to source /dev/null (special files - # actually), so we avoid doing that. DJGPP emulates it as a regular file. - if test /dev/null != "$cache_file" && test -f "$cache_file"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: loading cache $cache_file" >&5 -$as_echo "$as_me: loading cache $cache_file" >&6;} - case $cache_file in - [\\/]* | ?:[\\/]* ) . "$cache_file";; - *) . "./$cache_file";; - esac - fi -else - { $as_echo "$as_me:${as_lineno-$LINENO}: creating cache $cache_file" >&5 -$as_echo "$as_me: creating cache $cache_file" >&6;} - >$cache_file -fi - -gt_needs="$gt_needs " -as_fn_append ac_header_list " sys/types.h" -as_fn_append ac_func_list " flockfile" -as_fn_append ac_func_list " funlockfile" -as_fn_append ac_header_list " features.h" -as_fn_append ac_header_list " linewrap.h" -as_fn_append ac_func_list " btowc" -as_fn_append ac_header_list " unistd.h" -as_fn_append ac_header_list " sys/param.h" -as_fn_append ac_func_list " _set_invalid_parameter_handler" -as_fn_append ac_header_list " sys/socket.h" -as_fn_append ac_func_list " fchdir" -as_fn_append ac_header_list " dirent.h" -as_fn_append ac_func_list " fcntl" -as_fn_append ac_func_list " symlink" -as_fn_append ac_func_list " mempcpy" -as_fn_append ac_header_list " fnmatch.h" -as_fn_append ac_func_list " fnmatch" -as_fn_append ac_func_list " isblank" -as_fn_append ac_func_list " iswctype" -as_fn_append ac_func_list " mbsrtowcs" -as_fn_append ac_func_list " wmemchr" -as_fn_append ac_func_list " wmemcpy" -as_fn_append ac_func_list " wmempcpy" -as_fn_append ac_header_list " wctype.h" -as_fn_append ac_header_list " sys/stat.h" -as_fn_append ac_func_list " getdelim" -as_fn_append ac_func_list " getdtablesize" -gl_getopt_required=GNU -as_fn_append ac_header_list " getopt.h" -as_fn_append ac_header_list " sys/cdefs.h" -as_fn_append ac_func_list " getprogname" -as_fn_append ac_func_list " getexecname" -as_fn_append ac_header_list " langinfo.h" -as_fn_append ac_header_list " limits.h" -as_fn_append ac_header_list " xlocale.h" -as_fn_append ac_func_list " mbsinit" -as_fn_append ac_func_list " mbrtowc" -as_fn_append ac_header_list " wchar.h" -as_fn_append ac_func_list " isascii" -as_fn_append ac_header_list " sys/mman.h" -as_fn_append ac_func_list " mprotect" -as_fn_append ac_func_list " nl_langinfo" -as_fn_append ac_func_list " lstat" -as_fn_append ac_func_list " openat" -as_fn_append ac_header_list " malloc.h" -as_fn_append ac_func_list " sleep" -as_fn_append ac_header_list " sys/time.h" -as_fn_append ac_header_list " stdint.h" -as_fn_append ac_func_list " strdup" -as_fn_append ac_header_list " strings.h" -as_fn_append ac_func_list " strndup" -as_fn_append ac_header_list " sysexits.h" -as_fn_append ac_func_list " pipe" -as_fn_append ac_func_list " vasnprintf" -as_fn_append ac_func_list " snprintf" -as_fn_append ac_header_list " crtdefs.h" -as_fn_append ac_func_list " wcrtomb" -as_fn_append ac_func_list " iswcntrl" -as_fn_append ac_func_list " wcwidth" -# Check that the precious variables saved in the cache have kept the same -# value. -ac_cache_corrupted=false -for ac_var in $ac_precious_vars; do - eval ac_old_set=\$ac_cv_env_${ac_var}_set - eval ac_new_set=\$ac_env_${ac_var}_set - eval ac_old_val=\$ac_cv_env_${ac_var}_value - eval ac_new_val=\$ac_env_${ac_var}_value - case $ac_old_set,$ac_new_set in - set,) - { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&5 -$as_echo "$as_me: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&2;} - ac_cache_corrupted=: ;; - ,set) - { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' was not set in the previous run" >&5 -$as_echo "$as_me: error: \`$ac_var' was not set in the previous run" >&2;} - ac_cache_corrupted=: ;; - ,);; - *) - if test "x$ac_old_val" != "x$ac_new_val"; then - # differences in whitespace do not lead to failure. - ac_old_val_w=`echo x $ac_old_val` - ac_new_val_w=`echo x $ac_new_val` - if test "$ac_old_val_w" != "$ac_new_val_w"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' has changed since the previous run:" >&5 -$as_echo "$as_me: error: \`$ac_var' has changed since the previous run:" >&2;} - ac_cache_corrupted=: - else - { $as_echo "$as_me:${as_lineno-$LINENO}: warning: ignoring whitespace changes in \`$ac_var' since the previous run:" >&5 -$as_echo "$as_me: warning: ignoring whitespace changes in \`$ac_var' since the previous run:" >&2;} - eval $ac_var=\$ac_old_val - fi - { $as_echo "$as_me:${as_lineno-$LINENO}: former value: \`$ac_old_val'" >&5 -$as_echo "$as_me: former value: \`$ac_old_val'" >&2;} - { $as_echo "$as_me:${as_lineno-$LINENO}: current value: \`$ac_new_val'" >&5 -$as_echo "$as_me: current value: \`$ac_new_val'" >&2;} - fi;; - esac - # Pass precious variables to config.status. - if test "$ac_new_set" = set; then - case $ac_new_val in - *\'*) ac_arg=$ac_var=`$as_echo "$ac_new_val" | sed "s/'/'\\\\\\\\''/g"` ;; - *) ac_arg=$ac_var=$ac_new_val ;; - esac - case " $ac_configure_args " in - *" '$ac_arg' "*) ;; # Avoid dups. Use of quotes ensures accuracy. - *) as_fn_append ac_configure_args " '$ac_arg'" ;; - esac - fi -done -if $ac_cache_corrupted; then - { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 -$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} - { $as_echo "$as_me:${as_lineno-$LINENO}: error: changes in the environment can compromise the build" >&5 -$as_echo "$as_me: error: changes in the environment can compromise the build" >&2;} - as_fn_error $? "run \`make distclean' and/or \`rm $cache_file' and start over" "$LINENO" 5 -fi -## -------------------- ## -## Main body of script. ## -## -------------------- ## - -ac_ext=c -ac_cpp='$CPP $CPPFLAGS' -ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' -ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' -ac_compiler_gnu=$ac_cv_c_compiler_gnu - - - -ac_aux_dir= -for ac_dir in build-aux "$srcdir"/build-aux; do - if test -f "$ac_dir/install-sh"; then - ac_aux_dir=$ac_dir - ac_install_sh="$ac_aux_dir/install-sh -c" - break - elif test -f "$ac_dir/install.sh"; then - ac_aux_dir=$ac_dir - ac_install_sh="$ac_aux_dir/install.sh -c" - break - elif test -f "$ac_dir/shtool"; then - ac_aux_dir=$ac_dir - ac_install_sh="$ac_aux_dir/shtool install -c" - break - fi -done -if test -z "$ac_aux_dir"; then - as_fn_error $? "cannot find install-sh, install.sh, or shtool in build-aux \"$srcdir\"/build-aux" "$LINENO" 5 -fi - -# These three variables are undocumented and unsupported, -# and are intended to be withdrawn in a future Autoconf release. -# They can cause serious problems if a builder's source tree is in a directory -# whose full name contains unusual characters. -ac_config_guess="$SHELL $ac_aux_dir/config.guess" # Please don't use this var. -ac_config_sub="$SHELL $ac_aux_dir/config.sub" # Please don't use this var. -ac_configure="$SHELL $ac_aux_dir/configure" # Please don't use this var. - - - -# We don't want -g -O2 by default in CFLAGS -: ${CFLAGS=""} - -# Checks for build, host and target systems. -# Make sure we can run config.sub. -$SHELL "$ac_aux_dir/config.sub" sun4 >/dev/null 2>&1 || - as_fn_error $? "cannot run $SHELL $ac_aux_dir/config.sub" "$LINENO" 5 - -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking build system type" >&5 -$as_echo_n "checking build system type... " >&6; } -if ${ac_cv_build+:} false; then : - $as_echo_n "(cached) " >&6 -else - ac_build_alias=$build_alias -test "x$ac_build_alias" = x && - ac_build_alias=`$SHELL "$ac_aux_dir/config.guess"` -test "x$ac_build_alias" = x && - as_fn_error $? "cannot guess build type; you must specify one" "$LINENO" 5 -ac_cv_build=`$SHELL "$ac_aux_dir/config.sub" $ac_build_alias` || - as_fn_error $? "$SHELL $ac_aux_dir/config.sub $ac_build_alias failed" "$LINENO" 5 - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_build" >&5 -$as_echo "$ac_cv_build" >&6; } -case $ac_cv_build in -*-*-*) ;; -*) as_fn_error $? "invalid value of canonical build" "$LINENO" 5;; -esac -build=$ac_cv_build -ac_save_IFS=$IFS; IFS='-' -set x $ac_cv_build -shift -build_cpu=$1 -build_vendor=$2 -shift; shift -# Remember, the first character of IFS is used to create $*, -# except with old shells: -build_os=$* -IFS=$ac_save_IFS -case $build_os in *\ *) build_os=`echo "$build_os" | sed 's/ /-/g'`;; esac - - -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking host system type" >&5 -$as_echo_n "checking host system type... " >&6; } -if ${ac_cv_host+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test "x$host_alias" = x; then - ac_cv_host=$ac_cv_build -else - ac_cv_host=`$SHELL "$ac_aux_dir/config.sub" $host_alias` || - as_fn_error $? "$SHELL $ac_aux_dir/config.sub $host_alias failed" "$LINENO" 5 -fi - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_host" >&5 -$as_echo "$ac_cv_host" >&6; } -case $ac_cv_host in -*-*-*) ;; -*) as_fn_error $? "invalid value of canonical host" "$LINENO" 5;; -esac -host=$ac_cv_host -ac_save_IFS=$IFS; IFS='-' -set x $ac_cv_host -shift -host_cpu=$1 -host_vendor=$2 -shift; shift -# Remember, the first character of IFS is used to create $*, -# except with old shells: -host_os=$* -IFS=$ac_save_IFS -case $host_os in *\ *) host_os=`echo "$host_os" | sed 's/ /-/g'`;; esac - - -save_program_prefix="${program_prefix}" -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking target system type" >&5 -$as_echo_n "checking target system type... " >&6; } -if ${ac_cv_target+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test "x$target_alias" = x; then - ac_cv_target=$ac_cv_host -else - ac_cv_target=`$SHELL "$ac_aux_dir/config.sub" $target_alias` || - as_fn_error $? "$SHELL $ac_aux_dir/config.sub $target_alias failed" "$LINENO" 5 -fi - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_target" >&5 -$as_echo "$ac_cv_target" >&6; } -case $ac_cv_target in -*-*-*) ;; -*) as_fn_error $? "invalid value of canonical target" "$LINENO" 5;; -esac -target=$ac_cv_target -ac_save_IFS=$IFS; IFS='-' -set x $ac_cv_target -shift -target_cpu=$1 -target_vendor=$2 -shift; shift -# Remember, the first character of IFS is used to create $*, -# except with old shells: -target_os=$* -IFS=$ac_save_IFS -case $target_os in *\ *) target_os=`echo "$target_os" | sed 's/ /-/g'`;; esac - - -# The aliases save the names the user supplied, while $host etc. -# will get canonicalized. -test -n "$target_alias" && - test "$program_prefix$program_suffix$program_transform_name" = \ - NONENONEs,x,x, && - program_prefix=${target_alias}- -program_prefix="${save_program_prefix}" - -am__api_version='1.15' - -# Find a good install program. We prefer a C program (faster), -# so one script is as good as another. But avoid the broken or -# incompatible versions: -# SysV /etc/install, /usr/sbin/install -# SunOS /usr/etc/install -# IRIX /sbin/install -# AIX /bin/install -# AmigaOS /C/install, which installs bootblocks on floppy discs -# AIX 4 /usr/bin/installbsd, which doesn't work without a -g flag -# AFS /usr/afsws/bin/install, which mishandles nonexistent args -# SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff" -# OS/2's system install, which has a completely different semantic -# ./install, which can be erroneously created by make from ./install.sh. -# Reject install programs that cannot install multiple files. -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for a BSD-compatible install" >&5 -$as_echo_n "checking for a BSD-compatible install... " >&6; } -if test -z "$INSTALL"; then -if ${ac_cv_path_install+:} false; then : - $as_echo_n "(cached) " >&6 -else - as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - # Account for people who put trailing slashes in PATH elements. -case $as_dir/ in #(( - ./ | .// | /[cC]/* | \ - /etc/* | /usr/sbin/* | /usr/etc/* | /sbin/* | /usr/afsws/bin/* | \ - ?:[\\/]os2[\\/]install[\\/]* | ?:[\\/]OS2[\\/]INSTALL[\\/]* | \ - /usr/ucb/* ) ;; - *) - # OSF1 and SCO ODT 3.0 have their own names for install. - # Don't use installbsd from OSF since it installs stuff as root - # by default. - for ac_prog in ginstall scoinst install; do - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_prog$ac_exec_ext"; then - if test $ac_prog = install && - grep dspmsg "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then - # AIX install. It has an incompatible calling convention. - : - elif test $ac_prog = install && - grep pwplus "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then - # program-specific install script used by HP pwplus--don't use. - : - else - rm -rf conftest.one conftest.two conftest.dir - echo one > conftest.one - echo two > conftest.two - mkdir conftest.dir - if "$as_dir/$ac_prog$ac_exec_ext" -c conftest.one conftest.two "`pwd`/conftest.dir" && - test -s conftest.one && test -s conftest.two && - test -s conftest.dir/conftest.one && - test -s conftest.dir/conftest.two - then - ac_cv_path_install="$as_dir/$ac_prog$ac_exec_ext -c" - break 3 - fi - fi - fi - done - done - ;; -esac - - done -IFS=$as_save_IFS - -rm -rf conftest.one conftest.two conftest.dir - -fi - if test "${ac_cv_path_install+set}" = set; then - INSTALL=$ac_cv_path_install - else - # As a last resort, use the slow shell script. Don't cache a - # value for INSTALL within a source directory, because that will - # break other packages using the cache if that directory is - # removed, or if the value is a relative name. - INSTALL=$ac_install_sh - fi -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $INSTALL" >&5 -$as_echo "$INSTALL" >&6; } - -# Use test -z because SunOS4 sh mishandles braces in ${var-val}. -# It thinks the first close brace ends the variable substitution. -test -z "$INSTALL_PROGRAM" && INSTALL_PROGRAM='${INSTALL}' - -test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL}' - -test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644' - -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether build environment is sane" >&5 -$as_echo_n "checking whether build environment is sane... " >&6; } -# Reject unsafe characters in $srcdir or the absolute working directory -# name. Accept space and tab only in the latter. -am_lf=' -' -case `pwd` in - *[\\\"\#\$\&\'\`$am_lf]*) - as_fn_error $? "unsafe absolute working directory name" "$LINENO" 5;; -esac -case $srcdir in - *[\\\"\#\$\&\'\`$am_lf\ \ ]*) - as_fn_error $? "unsafe srcdir value: '$srcdir'" "$LINENO" 5;; -esac - -# Do 'set' in a subshell so we don't clobber the current shell's -# arguments. Must try -L first in case configure is actually a -# symlink; some systems play weird games with the mod time of symlinks -# (eg FreeBSD returns the mod time of the symlink's containing -# directory). -if ( - am_has_slept=no - for am_try in 1 2; do - echo "timestamp, slept: $am_has_slept" > conftest.file - set X `ls -Lt "$srcdir/configure" conftest.file 2> /dev/null` - if test "$*" = "X"; then - # -L didn't work. - set X `ls -t "$srcdir/configure" conftest.file` - fi - if test "$*" != "X $srcdir/configure conftest.file" \ - && test "$*" != "X conftest.file $srcdir/configure"; then - - # If neither matched, then we have a broken ls. This can happen - # if, for instance, CONFIG_SHELL is bash and it inherits a - # broken ls alias from the environment. This has actually - # happened. Such a system could not be considered "sane". - as_fn_error $? "ls -t appears to fail. Make sure there is not a broken - alias in your environment" "$LINENO" 5 - fi - if test "$2" = conftest.file || test $am_try -eq 2; then - break - fi - # Just in case. - sleep 1 - am_has_slept=yes - done - test "$2" = conftest.file - ) -then - # Ok. - : -else - as_fn_error $? "newly created file is older than distributed files! -Check your system clock" "$LINENO" 5 -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -$as_echo "yes" >&6; } -# If we didn't sleep, we still need to ensure time stamps of config.status and -# generated files are strictly newer. -am_sleep_pid= -if grep 'slept: no' conftest.file >/dev/null 2>&1; then - ( sleep 1 ) & - am_sleep_pid=$! -fi - -rm -f conftest.file - -test "$program_prefix" != NONE && - program_transform_name="s&^&$program_prefix&;$program_transform_name" -# Use a double $ so make ignores it. -test "$program_suffix" != NONE && - program_transform_name="s&\$&$program_suffix&;$program_transform_name" -# Double any \ or $. -# By default was `s,x,x', remove it if useless. -ac_script='s/[\\$]/&&/g;s/;s,x,x,$//' -program_transform_name=`$as_echo "$program_transform_name" | sed "$ac_script"` - -# Expand $ac_aux_dir to an absolute path. -am_aux_dir=`cd "$ac_aux_dir" && pwd` - -if test x"${MISSING+set}" != xset; then - case $am_aux_dir in - *\ * | *\ *) - MISSING="\${SHELL} \"$am_aux_dir/missing\"" ;; - *) - MISSING="\${SHELL} $am_aux_dir/missing" ;; - esac -fi -# Use eval to expand $SHELL -if eval "$MISSING --is-lightweight"; then - am_missing_run="$MISSING " -else - am_missing_run= - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: 'missing' script is too old or missing" >&5 -$as_echo "$as_me: WARNING: 'missing' script is too old or missing" >&2;} -fi - -if test x"${install_sh+set}" != xset; then - case $am_aux_dir in - *\ * | *\ *) - install_sh="\${SHELL} '$am_aux_dir/install-sh'" ;; - *) - install_sh="\${SHELL} $am_aux_dir/install-sh" - esac -fi - -# Installed binaries are usually stripped using 'strip' when the user -# run "make install-strip". However 'strip' might not be the right -# tool to use in cross-compilation environments, therefore Automake -# will honor the 'STRIP' environment variable to overrule this program. -if test "$cross_compiling" != no; then - if test -n "$ac_tool_prefix"; then - # Extract the first word of "${ac_tool_prefix}strip", so it can be a program name with args. -set dummy ${ac_tool_prefix}strip; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_STRIP+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test -n "$STRIP"; then - ac_cv_prog_STRIP="$STRIP" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_STRIP="${ac_tool_prefix}strip" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -STRIP=$ac_cv_prog_STRIP -if test -n "$STRIP"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $STRIP" >&5 -$as_echo "$STRIP" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - - -fi -if test -z "$ac_cv_prog_STRIP"; then - ac_ct_STRIP=$STRIP - # Extract the first word of "strip", so it can be a program name with args. -set dummy strip; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_ac_ct_STRIP+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test -n "$ac_ct_STRIP"; then - ac_cv_prog_ac_ct_STRIP="$ac_ct_STRIP" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_ac_ct_STRIP="strip" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -ac_ct_STRIP=$ac_cv_prog_ac_ct_STRIP -if test -n "$ac_ct_STRIP"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_STRIP" >&5 -$as_echo "$ac_ct_STRIP" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - - if test "x$ac_ct_STRIP" = x; then - STRIP=":" - else - case $cross_compiling:$ac_tool_warned in -yes:) -{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 -$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} -ac_tool_warned=yes ;; -esac - STRIP=$ac_ct_STRIP - fi -else - STRIP="$ac_cv_prog_STRIP" -fi - -fi -INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s" - -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for a thread-safe mkdir -p" >&5 -$as_echo_n "checking for a thread-safe mkdir -p... " >&6; } -if test -z "$MKDIR_P"; then - if ${ac_cv_path_mkdir+:} false; then : - $as_echo_n "(cached) " >&6 -else - as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH$PATH_SEPARATOR/opt/sfw/bin -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_prog in mkdir gmkdir; do - for ac_exec_ext in '' $ac_executable_extensions; do - as_fn_executable_p "$as_dir/$ac_prog$ac_exec_ext" || continue - case `"$as_dir/$ac_prog$ac_exec_ext" --version 2>&1` in #( - 'mkdir (GNU coreutils) '* | \ - 'mkdir (coreutils) '* | \ - 'mkdir (fileutils) '4.1*) - ac_cv_path_mkdir=$as_dir/$ac_prog$ac_exec_ext - break 3;; - esac - done - done - done -IFS=$as_save_IFS - -fi - - test -d ./--version && rmdir ./--version - if test "${ac_cv_path_mkdir+set}" = set; then - MKDIR_P="$ac_cv_path_mkdir -p" - else - # As a last resort, use the slow shell script. Don't cache a - # value for MKDIR_P within a source directory, because that will - # break other packages using the cache if that directory is - # removed, or if the value is a relative name. - MKDIR_P="$ac_install_sh -d" - fi -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $MKDIR_P" >&5 -$as_echo "$MKDIR_P" >&6; } - -for ac_prog in gawk mawk nawk awk -do - # Extract the first word of "$ac_prog", so it can be a program name with args. -set dummy $ac_prog; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_AWK+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test -n "$AWK"; then - ac_cv_prog_AWK="$AWK" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_AWK="$ac_prog" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -AWK=$ac_cv_prog_AWK -if test -n "$AWK"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $AWK" >&5 -$as_echo "$AWK" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - - - test -n "$AWK" && break -done - -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether ${MAKE-make} sets \$(MAKE)" >&5 -$as_echo_n "checking whether ${MAKE-make} sets \$(MAKE)... " >&6; } -set x ${MAKE-make} -ac_make=`$as_echo "$2" | sed 's/+/p/g; s/[^a-zA-Z0-9_]/_/g'` -if eval \${ac_cv_prog_make_${ac_make}_set+:} false; then : - $as_echo_n "(cached) " >&6 -else - cat >conftest.make <<\_ACEOF -SHELL = /bin/sh -all: - @echo '@@@%%%=$(MAKE)=@@@%%%' -_ACEOF -# GNU make sometimes prints "make[1]: Entering ...", which would confuse us. -case `${MAKE-make} -f conftest.make 2>/dev/null` in - *@@@%%%=?*=@@@%%%*) - eval ac_cv_prog_make_${ac_make}_set=yes;; - *) - eval ac_cv_prog_make_${ac_make}_set=no;; -esac -rm -f conftest.make -fi -if eval test \$ac_cv_prog_make_${ac_make}_set = yes; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -$as_echo "yes" >&6; } - SET_MAKE= -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } - SET_MAKE="MAKE=${MAKE-make}" -fi - -rm -rf .tst 2>/dev/null -mkdir .tst 2>/dev/null -if test -d .tst; then - am__leading_dot=. -else - am__leading_dot=_ -fi -rmdir .tst 2>/dev/null - -# Check whether --enable-silent-rules was given. -if test "${enable_silent_rules+set}" = set; then : - enableval=$enable_silent_rules; -fi - -case $enable_silent_rules in # ((( - yes) AM_DEFAULT_VERBOSITY=0;; - no) AM_DEFAULT_VERBOSITY=1;; - *) AM_DEFAULT_VERBOSITY=1;; -esac -am_make=${MAKE-make} -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $am_make supports nested variables" >&5 -$as_echo_n "checking whether $am_make supports nested variables... " >&6; } -if ${am_cv_make_support_nested_variables+:} false; then : - $as_echo_n "(cached) " >&6 -else - if $as_echo 'TRUE=$(BAR$(V)) -BAR0=false -BAR1=true -V=1 -am__doit: - @$(TRUE) -.PHONY: am__doit' | $am_make -f - >/dev/null 2>&1; then - am_cv_make_support_nested_variables=yes -else - am_cv_make_support_nested_variables=no -fi -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_make_support_nested_variables" >&5 -$as_echo "$am_cv_make_support_nested_variables" >&6; } -if test $am_cv_make_support_nested_variables = yes; then - AM_V='$(V)' - AM_DEFAULT_V='$(AM_DEFAULT_VERBOSITY)' -else - AM_V=$AM_DEFAULT_VERBOSITY - AM_DEFAULT_V=$AM_DEFAULT_VERBOSITY -fi -AM_BACKSLASH='\' - -if test "`cd $srcdir && pwd`" != "`pwd`"; then - # Use -I$(srcdir) only when $(srcdir) != ., so that make's output - # is not polluted with repeated "-I." - am__isrc=' -I$(srcdir)' - # test to see if srcdir already configured - if test -f $srcdir/config.status; then - as_fn_error $? "source directory already configured; run \"make distclean\" there first" "$LINENO" 5 - fi -fi - -# test whether we have cygpath -if test -z "$CYGPATH_W"; then - if (cygpath --version) >/dev/null 2>/dev/null; then - CYGPATH_W='cygpath -w' - else - CYGPATH_W=echo - fi -fi - - -# Define the identity of the package. - PACKAGE='grub' - VERSION='2.04' - - -cat >>confdefs.h <<_ACEOF -#define PACKAGE "$PACKAGE" -_ACEOF - - -cat >>confdefs.h <<_ACEOF -#define VERSION "$VERSION" -_ACEOF - -# Some tools Automake needs. - -ACLOCAL=${ACLOCAL-"${am_missing_run}aclocal-${am__api_version}"} - - -AUTOCONF=${AUTOCONF-"${am_missing_run}autoconf"} - - -AUTOMAKE=${AUTOMAKE-"${am_missing_run}automake-${am__api_version}"} - - -AUTOHEADER=${AUTOHEADER-"${am_missing_run}autoheader"} - - -MAKEINFO=${MAKEINFO-"${am_missing_run}makeinfo"} - -# For better backward compatibility. To be removed once Automake 1.9.x -# dies out for good. For more background, see: -# -# -mkdir_p='$(MKDIR_P)' - -# We need awk for the "check" target (and possibly the TAP driver). The -# system "awk" is bad on some platforms. -# Always define AMTAR for backward compatibility. Yes, it's still used -# in the wild :-( We should find a proper way to deprecate it ... -AMTAR='$${TAR-tar}' - - -# We'll loop over all known methods to create a tar archive until one works. -_am_tools='gnutar pax cpio none' - -am__tar='$${TAR-tar} chof - "$$tardir"' am__untar='$${TAR-tar} xf -' - - - - - - -# POSIX will say in a future version that running "rm -f" with no argument -# is OK; and we want to be able to make that assumption in our Makefile -# recipes. So use an aggressive probe to check that the usage we want is -# actually supported "in the wild" to an acceptable degree. -# See automake bug#10828. -# To make any issue more visible, cause the running configure to be aborted -# by default if the 'rm' program in use doesn't match our expectations; the -# user can still override this though. -if rm -f && rm -fr && rm -rf; then : OK; else - cat >&2 <<'END' -Oops! - -Your 'rm' program seems unable to run without file operands specified -on the command line, even when the '-f' option is present. This is contrary -to the behaviour of most rm programs out there, and not conforming with -the upcoming POSIX standard: - -Please tell bug-automake@gnu.org about your system, including the value -of your $PATH and any error possibly output before this message. This -can help us improve future automake versions. - -END - if test x"$ACCEPT_INFERIOR_RM_PROGRAM" = x"yes"; then - echo 'Configuration will proceed anyway, since you have set the' >&2 - echo 'ACCEPT_INFERIOR_RM_PROGRAM variable to "yes"' >&2 - echo >&2 - else - cat >&2 <<'END' -Aborting the configuration process, to ensure you take notice of the issue. - -You can download and install GNU coreutils to get an 'rm' implementation -that behaves properly: . - -If you want to complete the configuration process using your problematic -'rm' anyway, export the environment variable ACCEPT_INFERIOR_RM_PROGRAM -to "yes", and re-run configure. - -END - as_fn_error $? "Your 'rm' program is bad, sorry." "$LINENO" 5 - fi -fi - - - -ac_config_headers="$ac_config_headers config-util.h" - - -# Explicitly check for pkg-config early on, since otherwise conditional -# calls are problematic. - - - - - - - -if test "x$ac_cv_env_PKG_CONFIG_set" != "xset"; then - if test -n "$ac_tool_prefix"; then - # Extract the first word of "${ac_tool_prefix}pkg-config", so it can be a program name with args. -set dummy ${ac_tool_prefix}pkg-config; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_path_PKG_CONFIG+:} false; then : - $as_echo_n "(cached) " >&6 -else - case $PKG_CONFIG in - [\\/]* | ?:[\\/]*) - ac_cv_path_PKG_CONFIG="$PKG_CONFIG" # Let the user override the test with a path. - ;; - *) - as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_path_PKG_CONFIG="$as_dir/$ac_word$ac_exec_ext" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - - ;; -esac -fi -PKG_CONFIG=$ac_cv_path_PKG_CONFIG -if test -n "$PKG_CONFIG"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PKG_CONFIG" >&5 -$as_echo "$PKG_CONFIG" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - - -fi -if test -z "$ac_cv_path_PKG_CONFIG"; then - ac_pt_PKG_CONFIG=$PKG_CONFIG - # Extract the first word of "pkg-config", so it can be a program name with args. -set dummy pkg-config; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_path_ac_pt_PKG_CONFIG+:} false; then : - $as_echo_n "(cached) " >&6 -else - case $ac_pt_PKG_CONFIG in - [\\/]* | ?:[\\/]*) - ac_cv_path_ac_pt_PKG_CONFIG="$ac_pt_PKG_CONFIG" # Let the user override the test with a path. - ;; - *) - as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_path_ac_pt_PKG_CONFIG="$as_dir/$ac_word$ac_exec_ext" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - - ;; -esac -fi -ac_pt_PKG_CONFIG=$ac_cv_path_ac_pt_PKG_CONFIG -if test -n "$ac_pt_PKG_CONFIG"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_pt_PKG_CONFIG" >&5 -$as_echo "$ac_pt_PKG_CONFIG" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - - if test "x$ac_pt_PKG_CONFIG" = x; then - PKG_CONFIG="" - else - case $cross_compiling:$ac_tool_warned in -yes:) -{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 -$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} -ac_tool_warned=yes ;; -esac - PKG_CONFIG=$ac_pt_PKG_CONFIG - fi -else - PKG_CONFIG="$ac_cv_path_PKG_CONFIG" -fi - -fi -if test -n "$PKG_CONFIG"; then - _pkg_min_version=0.9.0 - { $as_echo "$as_me:${as_lineno-$LINENO}: checking pkg-config is at least version $_pkg_min_version" >&5 -$as_echo_n "checking pkg-config is at least version $_pkg_min_version... " >&6; } - if $PKG_CONFIG --atleast-pkgconfig-version $_pkg_min_version; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -$as_echo "yes" >&6; } - else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } - PKG_CONFIG="" - fi -fi - -# Program name transformations - -grub_bios_setup=`$as_echo grub-bios-setup | sed "$program_transform_name"` - -grub_editenv=`$as_echo grub-editenv | sed "$program_transform_name"` - -grub_install=`$as_echo grub-install | sed "$program_transform_name"` - -grub_mkconfig=`$as_echo grub-mkconfig | sed "$program_transform_name"` - -grub_mkfont=`$as_echo grub-mkfont | sed "$program_transform_name"` - -grub_mkimage=`$as_echo grub-mkimage | sed "$program_transform_name"` - -grub_glue_efi=`$as_echo grub-glue-efi | sed "$program_transform_name"` - -grub_mklayout=`$as_echo grub-mklayout | sed "$program_transform_name"` - -grub_mkpasswd_pbkdf2=`$as_echo grub-mkpasswd-pbkdf2 | sed "$program_transform_name"` - -grub_mkrelpath=`$as_echo grub-mkrelpath | sed "$program_transform_name"` - -grub_mkrescue=`$as_echo grub-mkrescue | sed "$program_transform_name"` - -grub_probe=`$as_echo grub-probe | sed "$program_transform_name"` - -grub_reboot=`$as_echo grub-reboot | sed "$program_transform_name"` - -grub_script_check=`$as_echo grub-script-check | sed "$program_transform_name"` - -grub_set_default=`$as_echo grub-set-default | sed "$program_transform_name"` - -grub_sparc64_setup=`$as_echo grub-sparc64-setup | sed "$program_transform_name"` - -grub_render_label=`$as_echo grub-render-label | sed "$program_transform_name"` - -grub_file=`$as_echo grub-file | sed "$program_transform_name"` - - -# Optimization flag. Allow user to override. -if test "x$TARGET_CFLAGS" = x; then - TARGET_CFLAGS="$TARGET_CFLAGS -Os" -fi - -# Default HOST_CPPFLAGS -HOST_CPPFLAGS="$HOST_CPPFLAGS -Wall -W" -HOST_CPPFLAGS="$HOST_CPPFLAGS -DGRUB_UTIL=1" - -TARGET_CPPFLAGS="$TARGET_CPPFLAGS -Wall -W" - -case "$target_cpu" in - i[3456]86) target_cpu=i386 ;; - amd64) target_cpu=x86_64 ;; - sparc) target_cpu=sparc64 ;; - mipsel|mips64el) - target_cpu=mipsel - machine_CPPFLAGS="$machine_CPPFLAGS -DGRUB_CPU_MIPSEL=1" - ;; - mips|mips64) - target_cpu=mips - machine_CPPFLAGS="$machine_CPPFLAGS -DGRUB_CPU_MIPS=1" - ;; - arm*) - target_cpu=arm - ;; - aarch64*) - target_cpu=arm64 - ;; - riscv32*) - target_cpu=riscv32 - ;; - riscv64*) - target_cpu=riscv64 - ;; -esac - -# Specify the platform (such as firmware). - -# Check whether --with-platform was given. -if test "${with_platform+set}" = set; then : - withval=$with_platform; -fi - - -# Guess the platform if not specified. -if test "x$with_platform" = x; then - case "$target_cpu"-"$target_vendor" in - i386-apple) platform=efi ;; - i386-*) platform=pc ;; - x86_64-apple) platform=efi ;; - x86_64-*) platform=pc ;; - powerpc-*) platform=ieee1275 ;; - powerpc64-*) platform=ieee1275 ;; - powerpc64le-*) platform=ieee1275 ;; - sparc64-*) platform=ieee1275 ;; - mipsel-*) platform=loongson ;; - mips-*) platform=arc ;; - ia64-*) platform=efi ;; - arm-*) platform=uboot ;; - arm64-*) platform=efi ;; - riscv32-*) platform=efi ;; - riscv64-*) platform=efi ;; - *) - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: unsupported CPU: \"$target_cpu\" - only building utilities" >&5 -$as_echo "$as_me: WARNING: unsupported CPU: \"$target_cpu\" - only building utilities" >&2;} - platform=none - ;; - esac -else - platform="$with_platform" -fi - -case "$target_cpu"-"$platform" in - x86_64-efi) ;; - x86_64-emu) ;; - x86_64-xen) ;; - x86_64-none) ;; - x86_64-*) target_cpu=i386 ;; - powerpc64-ieee1275) target_cpu=powerpc ;; - powerpc64le-ieee1275) target_cpu=powerpc ;; -esac - -# Check if the platform is supported, make final adjustments. -case "$target_cpu"-"$platform" in - i386-efi) ;; - x86_64-efi) ;; - i386-xen) ;; - i386-xen_pvh) ;; - x86_64-xen) ;; - i386-pc) ;; - i386-multiboot) ;; - i386-coreboot) ;; - i386-linuxbios) platform=coreboot ;; - i386-ieee1275) ;; - i386-qemu) ;; - powerpc-ieee1275) ;; - sparc64-ieee1275) ;; - ia64-efi) ;; - mips-qemu_mips) ;; - mips-qemu-mips) platform=qemu_mips;; - mips-arc) ;; - mipsel-arc) ;; - mipsel-qemu_mips) ;; - mipsel-qemu-mips) platform=qemu_mips;; - mipsel-yeeloong) platform=loongson ;; - mipsel-fuloong) platform=loongson ;; - mipsel-loongson) ;; - arm-uboot) ;; - arm-coreboot) ;; - arm-efi) ;; - arm64-efi) ;; - riscv32-efi) ;; - riscv64-efi) ;; - *-emu) ;; - *-none) ;; - *) as_fn_error $? "platform \"$platform\" is not supported for target CPU \"$target_cpu\"" "$LINENO" 5 ;; -esac - -if test x$platform != xemu ; then - case "$target_cpu" in - i386 | powerpc) target_m32=1 ;; - x86_64 | sparc64) target_m64=1 ;; - esac -fi - -if test x"$target_cpu-$platform" = xsparc64-emu ; then - target_m64=1 -fi - -case "$target_os" in - windows* | mingw32*) target_os=cygwin ;; -esac - -# This normalizes the names, and creates a new variable ("host_kernel") -# while at it, since the mapping is not always 1:1 (e.g. different OSes -# using the same kernel type). -case "$host_os" in - gnu*) host_kernel=hurd ;; - linux*) host_kernel=linux ;; - freebsd* | kfreebsd*-gnu) host_kernel=kfreebsd ;; - netbsd*) host_kernel=netbsd ;; - solaris*) host_kernel=illumos ;; - darwin*) host_kernel=xnu ;; - cygwin | windows* | mingw32*) host_kernel=windows ;; -esac - -case "$host_os" in - cygwin) have_exec=y ;; - windows* | mingw32*) have_exec=n ;; - aros*) have_exec=n ;; - *) have_exec=y;; -esac - -case "$platform" in - coreboot) machine_CPPFLAGS="$machine_CPPFLAGS -DGRUB_MACHINE_COREBOOT=1" ;; - multiboot) machine_CPPFLAGS="$machine_CPPFLAGS -DGRUB_MACHINE_MULTIBOOT=1" ;; - efi) machine_CPPFLAGS="$machine_CPPFLAGS -DGRUB_MACHINE_EFI=1" ;; - xen) machine_CPPFLAGS="$machine_CPPFLAGS -DGRUB_MACHINE_XEN=1" ;; - xen_pvh) machine_CPPFLAGS="$machine_CPPFLAGS -DGRUB_MACHINE_XEN_PVH=1" ;; - ieee1275) machine_CPPFLAGS="$machine_CPPFLAGS -DGRUB_MACHINE_IEEE1275=1" ;; - uboot) machine_CPPFLAGS="$machine_CPPFLAGS -DGRUB_MACHINE_UBOOT=1" ;; - qemu) machine_CPPFLAGS="$machine_CPPFLAGS -DGRUB_MACHINE_QEMU=1" ;; - pc) machine_CPPFLAGS="$machine_CPPFLAGS -DGRUB_MACHINE_PCBIOS=1" ;; - emu) machine_CPPFLAGS="$machine_CPPFLAGS -DGRUB_MACHINE_EMU=1" ;; - loongson) machine_CPPFLAGS="$machine_CPPFLAGS -DGRUB_MACHINE_MIPS_LOONGSON=1" ;; - qemu_mips) machine_CPPFLAGS="$machine_CPPFLAGS -DGRUB_MACHINE_MIPS_QEMU_MIPS=1" ;; - arc) machine_CPPFLAGS="$machine_CPPFLAGS -DGRUB_MACHINE_ARC=1" ;; -esac -if test x${target_cpu} = xmipsel ; then - machine_CPPFLAGS="$machine_CPPFLAGS -DGRUB_MACHINE=`echo mips_$platform | sed y,abcdefghijklmnopqrstuvwxyz,ABCDEFGHIJKLMNOPQRSTUVWXYZ,`" -else - machine_CPPFLAGS="$machine_CPPFLAGS -DGRUB_MACHINE=`echo ${target_cpu}_$platform | sed y,abcdefghijklmnopqrstuvwxyz,ABCDEFGHIJKLMNOPQRSTUVWXYZ,`" -fi - -case "${target_cpu}-$platform" in - mips-arc) - TARGET_LINK_ADDR=0x88200000 - TARGET_DECOMPRESSOR_LINK_ADDR=0x88100000 - ;; - mipsel-arc) - TARGET_LINK_ADDR=0x80700000 - TARGET_DECOMPRESSOR_LINK_ADDR=0x80600000 - ;; - mips*-qemu_mips | mips*-loongson) - TARGET_DECOMPRESSOR_LINK_ADDR=0x80100000 - ;; -esac - - - - -TARGET_CPPFLAGS="$TARGET_CPPFLAGS $machine_CPPFLAGS" - - - - - - - - -# Define default variables - -have_with_bootdir=n - -# Check whether --with-bootdir was given. -if test "${with_bootdir+set}" = set; then : - withval=$with_bootdir; have_with_bootdir=y -else - have_with_bootdir=n -fi - -if test x$have_with_bootdir = xy; then - bootdirname="$with_bootdir" -else - case "$host_os" in - netbsd* | openbsd*) - # Because /boot is used for the boot block in NetBSD and OpenBSD, - bootdirname='' ;; - *) bootdirname='boot' ;; - esac -fi - - - -cat >>confdefs.h <<_ACEOF -#define GRUB_BOOT_DIR_NAME "$bootdirname" -_ACEOF - - - -# Check whether --with-grubdir was given. -if test "${with_grubdir+set}" = set; then : - withval=$with_grubdir; grubdirname="$with_grubdir" -else - grubdirname="$PACKAGE" -fi - - - - -cat >>confdefs.h <<_ACEOF -#define GRUB_DIR_NAME "$grubdirname" -_ACEOF - - -# -# Checks for build programs. -# - -# Although cmp is listed in the GNU Coding Standards as a command which -# can used directly, OpenBSD lacks cmp in the default installation. -for ac_prog in cmp -do - # Extract the first word of "$ac_prog", so it can be a program name with args. -set dummy $ac_prog; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_CMP+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test -n "$CMP"; then - ac_cv_prog_CMP="$CMP" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_CMP="$ac_prog" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -CMP=$ac_cv_prog_CMP -if test -n "$CMP"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CMP" >&5 -$as_echo "$CMP" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - - - test -n "$CMP" && break -done - -if test "x$CMP" = x; then - as_fn_error $? "cmp is not found" "$LINENO" 5 -fi - -for ac_prog in bison -do - # Extract the first word of "$ac_prog", so it can be a program name with args. -set dummy $ac_prog; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_YACC+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test -n "$YACC"; then - ac_cv_prog_YACC="$YACC" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_YACC="$ac_prog" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -YACC=$ac_cv_prog_YACC -if test -n "$YACC"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $YACC" >&5 -$as_echo "$YACC" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - - - test -n "$YACC" && break -done - -if test "x$YACC" = x; then - as_fn_error $? "bison is not found" "$LINENO" 5 -fi - -if test -n "$ac_tool_prefix"; then - # Extract the first word of "${ac_tool_prefix}ranlib", so it can be a program name with args. -set dummy ${ac_tool_prefix}ranlib; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_RANLIB+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test -n "$RANLIB"; then - ac_cv_prog_RANLIB="$RANLIB" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_RANLIB="${ac_tool_prefix}ranlib" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -RANLIB=$ac_cv_prog_RANLIB -if test -n "$RANLIB"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $RANLIB" >&5 -$as_echo "$RANLIB" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - - -fi -if test -z "$ac_cv_prog_RANLIB"; then - ac_ct_RANLIB=$RANLIB - # Extract the first word of "ranlib", so it can be a program name with args. -set dummy ranlib; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_ac_ct_RANLIB+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test -n "$ac_ct_RANLIB"; then - ac_cv_prog_ac_ct_RANLIB="$ac_ct_RANLIB" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_ac_ct_RANLIB="ranlib" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -ac_ct_RANLIB=$ac_cv_prog_ac_ct_RANLIB -if test -n "$ac_ct_RANLIB"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_RANLIB" >&5 -$as_echo "$ac_ct_RANLIB" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - - if test "x$ac_ct_RANLIB" = x; then - RANLIB=":" - else - case $cross_compiling:$ac_tool_warned in -yes:) -{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 -$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} -ac_tool_warned=yes ;; -esac - RANLIB=$ac_ct_RANLIB - fi -else - RANLIB="$ac_cv_prog_RANLIB" -fi - - -for ac_prog in gawk mawk nawk awk -do - # Extract the first word of "$ac_prog", so it can be a program name with args. -set dummy $ac_prog; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_AWK+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test -n "$AWK"; then - ac_cv_prog_AWK="$AWK" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_AWK="$ac_prog" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -AWK=$ac_cv_prog_AWK -if test -n "$AWK"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $AWK" >&5 -$as_echo "$AWK" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - - - test -n "$AWK" && break -done - -DEPDIR="${am__leading_dot}deps" - -ac_config_commands="$ac_config_commands depfiles" - - -am_make=${MAKE-make} -cat > confinc << 'END' -am__doit: - @echo this is the am__doit target -.PHONY: am__doit -END -# If we don't find an include directive, just comment out the code. -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for style of include used by $am_make" >&5 -$as_echo_n "checking for style of include used by $am_make... " >&6; } -am__include="#" -am__quote= -_am_result=none -# First try GNU make style include. -echo "include confinc" > confmf -# Ignore all kinds of additional output from 'make'. -case `$am_make -s -f confmf 2> /dev/null` in #( -*the\ am__doit\ target*) - am__include=include - am__quote= - _am_result=GNU - ;; -esac -# Now try BSD make style include. -if test "$am__include" = "#"; then - echo '.include "confinc"' > confmf - case `$am_make -s -f confmf 2> /dev/null` in #( - *the\ am__doit\ target*) - am__include=.include - am__quote="\"" - _am_result=BSD - ;; - esac -fi - - -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $_am_result" >&5 -$as_echo "$_am_result" >&6; } -rm -f confinc confmf - -# Check whether --enable-dependency-tracking was given. -if test "${enable_dependency_tracking+set}" = set; then : - enableval=$enable_dependency_tracking; -fi - -if test "x$enable_dependency_tracking" != xno; then - am_depcomp="$ac_aux_dir/depcomp" - AMDEPBACKSLASH='\' - am__nodep='_no' -fi - if test "x$enable_dependency_tracking" != xno; then - AMDEP_TRUE= - AMDEP_FALSE='#' -else - AMDEP_TRUE='#' - AMDEP_FALSE= -fi - - -ac_ext=c -ac_cpp='$CPP $CPPFLAGS' -ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' -ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' -ac_compiler_gnu=$ac_cv_c_compiler_gnu -if test -n "$ac_tool_prefix"; then - # Extract the first word of "${ac_tool_prefix}gcc", so it can be a program name with args. -set dummy ${ac_tool_prefix}gcc; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_CC+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test -n "$CC"; then - ac_cv_prog_CC="$CC" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_CC="${ac_tool_prefix}gcc" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -CC=$ac_cv_prog_CC -if test -n "$CC"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 -$as_echo "$CC" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - - -fi -if test -z "$ac_cv_prog_CC"; then - ac_ct_CC=$CC - # Extract the first word of "gcc", so it can be a program name with args. -set dummy gcc; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_ac_ct_CC+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test -n "$ac_ct_CC"; then - ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_ac_ct_CC="gcc" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -ac_ct_CC=$ac_cv_prog_ac_ct_CC -if test -n "$ac_ct_CC"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5 -$as_echo "$ac_ct_CC" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - - if test "x$ac_ct_CC" = x; then - CC="" - else - case $cross_compiling:$ac_tool_warned in -yes:) -{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 -$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} -ac_tool_warned=yes ;; -esac - CC=$ac_ct_CC - fi -else - CC="$ac_cv_prog_CC" -fi - -if test -z "$CC"; then - if test -n "$ac_tool_prefix"; then - # Extract the first word of "${ac_tool_prefix}cc", so it can be a program name with args. -set dummy ${ac_tool_prefix}cc; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_CC+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test -n "$CC"; then - ac_cv_prog_CC="$CC" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_CC="${ac_tool_prefix}cc" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -CC=$ac_cv_prog_CC -if test -n "$CC"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 -$as_echo "$CC" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - - - fi -fi -if test -z "$CC"; then - # Extract the first word of "cc", so it can be a program name with args. -set dummy cc; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_CC+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test -n "$CC"; then - ac_cv_prog_CC="$CC" # Let the user override the test. -else - ac_prog_rejected=no -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - if test "$as_dir/$ac_word$ac_exec_ext" = "/usr/ucb/cc"; then - ac_prog_rejected=yes - continue - fi - ac_cv_prog_CC="cc" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -if test $ac_prog_rejected = yes; then - # We found a bogon in the path, so make sure we never use it. - set dummy $ac_cv_prog_CC - shift - if test $# != 0; then - # We chose a different compiler from the bogus one. - # However, it has the same basename, so the bogon will be chosen - # first if we set CC to just the basename; use the full file name. - shift - ac_cv_prog_CC="$as_dir/$ac_word${1+' '}$@" - fi -fi -fi -fi -CC=$ac_cv_prog_CC -if test -n "$CC"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 -$as_echo "$CC" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - - -fi -if test -z "$CC"; then - if test -n "$ac_tool_prefix"; then - for ac_prog in cl.exe - do - # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args. -set dummy $ac_tool_prefix$ac_prog; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_CC+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test -n "$CC"; then - ac_cv_prog_CC="$CC" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_CC="$ac_tool_prefix$ac_prog" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -CC=$ac_cv_prog_CC -if test -n "$CC"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 -$as_echo "$CC" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - - - test -n "$CC" && break - done -fi -if test -z "$CC"; then - ac_ct_CC=$CC - for ac_prog in cl.exe -do - # Extract the first word of "$ac_prog", so it can be a program name with args. -set dummy $ac_prog; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_ac_ct_CC+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test -n "$ac_ct_CC"; then - ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_ac_ct_CC="$ac_prog" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -ac_ct_CC=$ac_cv_prog_ac_ct_CC -if test -n "$ac_ct_CC"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5 -$as_echo "$ac_ct_CC" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - - - test -n "$ac_ct_CC" && break -done - - if test "x$ac_ct_CC" = x; then - CC="" - else - case $cross_compiling:$ac_tool_warned in -yes:) -{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 -$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} -ac_tool_warned=yes ;; -esac - CC=$ac_ct_CC - fi -fi - -fi - - -test -z "$CC" && { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 -$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} -as_fn_error $? "no acceptable C compiler found in \$PATH -See \`config.log' for more details" "$LINENO" 5; } - -# Provide some information about the compiler. -$as_echo "$as_me:${as_lineno-$LINENO}: checking for C compiler version" >&5 -set X $ac_compile -ac_compiler=$2 -for ac_option in --version -v -V -qversion; do - { { ac_try="$ac_compiler $ac_option >&5" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" -$as_echo "$ac_try_echo"; } >&5 - (eval "$ac_compiler $ac_option >&5") 2>conftest.err - ac_status=$? - if test -s conftest.err; then - sed '10a\ -... rest of stderr output deleted ... - 10q' conftest.err >conftest.er1 - cat conftest.er1 >&5 - fi - rm -f conftest.er1 conftest.err - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; } -done - -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -int -main (void) -{ - - ; - return 0; -} -_ACEOF -ac_clean_files_save=$ac_clean_files -ac_clean_files="$ac_clean_files a.out a.out.dSYM a.exe b.out" -# Try to create an executable without -o first, disregard a.out. -# It will help us diagnose broken compilers, and finding out an intuition -# of exeext. -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the C compiler works" >&5 -$as_echo_n "checking whether the C compiler works... " >&6; } -ac_link_default=`$as_echo "$ac_link" | sed 's/ -o *conftest[^ ]*//'` - -# The possible output files: -ac_files="a.out conftest.exe conftest a.exe a_out.exe b.out conftest.*" - -ac_rmfiles= -for ac_file in $ac_files -do - case $ac_file in - *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM | *.o | *.obj ) ;; - * ) ac_rmfiles="$ac_rmfiles $ac_file";; - esac -done -rm -f $ac_rmfiles - -if { { ac_try="$ac_link_default" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" -$as_echo "$ac_try_echo"; } >&5 - (eval "$ac_link_default") 2>&5 - ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; then : - # Autoconf-2.13 could set the ac_cv_exeext variable to `no'. -# So ignore a value of `no', otherwise this would lead to `EXEEXT = no' -# in a Makefile. We should not override ac_cv_exeext if it was cached, -# so that the user can short-circuit this test for compilers unknown to -# Autoconf. -for ac_file in $ac_files '' -do - test -f "$ac_file" || continue - case $ac_file in - *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM | *.o | *.obj ) - ;; - [ab].out ) - # We found the default executable, but exeext='' is most - # certainly right. - break;; - *.* ) - if test "${ac_cv_exeext+set}" = set && test "$ac_cv_exeext" != no; - then :; else - ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'` - fi - # We set ac_cv_exeext here because the later test for it is not - # safe: cross compilers may not add the suffix if given an `-o' - # argument, so we may need to know it at that point already. - # Even if this section looks crufty: it has the advantage of - # actually working. - break;; - * ) - break;; - esac -done -test "$ac_cv_exeext" = no && ac_cv_exeext= - -else - ac_file='' -fi -if test -z "$ac_file"; then : - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -$as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 -$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} -as_fn_error 77 "C compiler cannot create executables -See \`config.log' for more details" "$LINENO" 5; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -$as_echo "yes" >&6; } -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for C compiler default output file name" >&5 -$as_echo_n "checking for C compiler default output file name... " >&6; } -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_file" >&5 -$as_echo "$ac_file" >&6; } -ac_exeext=$ac_cv_exeext - -rm -f -r a.out a.out.dSYM a.exe conftest$ac_cv_exeext b.out -ac_clean_files=$ac_clean_files_save -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for suffix of executables" >&5 -$as_echo_n "checking for suffix of executables... " >&6; } -if { { ac_try="$ac_link" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" -$as_echo "$ac_try_echo"; } >&5 - (eval "$ac_link") 2>&5 - ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; then : - # If both `conftest.exe' and `conftest' are `present' (well, observable) -# catch `conftest.exe'. For instance with Cygwin, `ls conftest' will -# work properly (i.e., refer to `conftest.exe'), while it won't with -# `rm'. -for ac_file in conftest.exe conftest conftest.*; do - test -f "$ac_file" || continue - case $ac_file in - *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM | *.o | *.obj ) ;; - *.* ) ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'` - break;; - * ) break;; - esac -done -else - { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 -$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} -as_fn_error $? "cannot compute suffix of executables: cannot compile and link -See \`config.log' for more details" "$LINENO" 5; } -fi -rm -f conftest conftest$ac_cv_exeext -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_exeext" >&5 -$as_echo "$ac_cv_exeext" >&6; } - -rm -f conftest.$ac_ext -EXEEXT=$ac_cv_exeext -ac_exeext=$EXEEXT -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include -int -main (void) -{ -FILE *f = fopen ("conftest.out", "w"); - return ferror (f) || fclose (f) != 0; - - ; - return 0; -} -_ACEOF -ac_clean_files="$ac_clean_files conftest.out" -# Check that the compiler produces executables we can run. If not, either -# the compiler is broken, or we cross compile. -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are cross compiling" >&5 -$as_echo_n "checking whether we are cross compiling... " >&6; } -if test "$cross_compiling" != yes; then - { { ac_try="$ac_link" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" -$as_echo "$ac_try_echo"; } >&5 - (eval "$ac_link") 2>&5 - ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; } - if { ac_try='./conftest$ac_cv_exeext' - { { case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" -$as_echo "$ac_try_echo"; } >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; }; then - cross_compiling=no - else - if test "$cross_compiling" = maybe; then - cross_compiling=yes - else - { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 -$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} -as_fn_error $? "cannot run C compiled programs. -If you meant to cross compile, use \`--host'. -See \`config.log' for more details" "$LINENO" 5; } - fi - fi -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $cross_compiling" >&5 -$as_echo "$cross_compiling" >&6; } - -rm -f conftest.$ac_ext conftest$ac_cv_exeext conftest.out -ac_clean_files=$ac_clean_files_save -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for suffix of object files" >&5 -$as_echo_n "checking for suffix of object files... " >&6; } -if ${ac_cv_objext+:} false; then : - $as_echo_n "(cached) " >&6 -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -int -main (void) -{ - - ; - return 0; -} -_ACEOF -rm -f conftest.o conftest.obj -if { { ac_try="$ac_compile" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" -$as_echo "$ac_try_echo"; } >&5 - (eval "$ac_compile") 2>&5 - ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; then : - for ac_file in conftest.o conftest.obj conftest.*; do - test -f "$ac_file" || continue; - case $ac_file in - *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM ) ;; - *) ac_cv_objext=`expr "$ac_file" : '.*\.\(.*\)'` - break;; - esac -done -else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 -$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} -as_fn_error $? "cannot compute suffix of object files: cannot compile -See \`config.log' for more details" "$LINENO" 5; } -fi -rm -f conftest.$ac_cv_objext conftest.$ac_ext -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_objext" >&5 -$as_echo "$ac_cv_objext" >&6; } -OBJEXT=$ac_cv_objext -ac_objext=$OBJEXT -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are using the GNU C compiler" >&5 -$as_echo_n "checking whether we are using the GNU C compiler... " >&6; } -if ${ac_cv_c_compiler_gnu+:} false; then : - $as_echo_n "(cached) " >&6 -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -int -main (void) -{ -#ifndef __GNUC__ - choke me -#endif - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - ac_compiler_gnu=yes -else - ac_compiler_gnu=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -ac_cv_c_compiler_gnu=$ac_compiler_gnu - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_compiler_gnu" >&5 -$as_echo "$ac_cv_c_compiler_gnu" >&6; } -if test $ac_compiler_gnu = yes; then - GCC=yes -else - GCC= -fi -ac_test_CFLAGS=${CFLAGS+set} -ac_save_CFLAGS=$CFLAGS -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC accepts -g" >&5 -$as_echo_n "checking whether $CC accepts -g... " >&6; } -if ${ac_cv_prog_cc_g+:} false; then : - $as_echo_n "(cached) " >&6 -else - ac_save_c_werror_flag=$ac_c_werror_flag - ac_c_werror_flag=yes - ac_cv_prog_cc_g=no - CFLAGS="-g" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -int -main (void) -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - ac_cv_prog_cc_g=yes -else - CFLAGS="" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -int -main (void) -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - -else - ac_c_werror_flag=$ac_save_c_werror_flag - CFLAGS="-g" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -int -main (void) -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - ac_cv_prog_cc_g=yes -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - ac_c_werror_flag=$ac_save_c_werror_flag -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_g" >&5 -$as_echo "$ac_cv_prog_cc_g" >&6; } -if test "$ac_test_CFLAGS" = set; then - CFLAGS=$ac_save_CFLAGS -elif test $ac_cv_prog_cc_g = yes; then - if test "$GCC" = yes; then - CFLAGS="-g -O2" - else - CFLAGS="-g" - fi -else - if test "$GCC" = yes; then - CFLAGS="-O2" - else - CFLAGS= - fi -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $CC option to accept ISO C89" >&5 -$as_echo_n "checking for $CC option to accept ISO C89... " >&6; } -if ${ac_cv_prog_cc_c89+:} false; then : - $as_echo_n "(cached) " >&6 -else - ac_cv_prog_cc_c89=no -ac_save_CC=$CC -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include -#include -struct stat; -/* Most of the following tests are stolen from RCS 5.7's src/conf.sh. */ -struct buf { int x; }; -FILE * (*rcsopen) (struct buf *, struct stat *, int); -static char *e (p, i) - char **p; - int i; -{ - return p[i]; -} -static char *f (char * (*g) (char **, int), char **p, ...) -{ - char *s; - va_list v; - va_start (v,p); - s = g (p, va_arg (v,int)); - va_end (v); - return s; -} - -/* OSF 4.0 Compaq cc is some sort of almost-ANSI by default. It has - function prototypes and stuff, but not '\xHH' hex character constants. - These don't provoke an error unfortunately, instead are silently treated - as 'x'. The following induces an error, until -std is added to get - proper ANSI mode. Curiously '\x00'!='x' always comes out true, for an - array size at least. It's necessary to write '\x00'==0 to get something - that's true only with -std. */ -int osf4_cc_array ['\x00' == 0 ? 1 : -1]; - -/* IBM C 6 for AIX is almost-ANSI by default, but it replaces macro parameters - inside strings and character constants. */ -#define FOO(x) 'x' -int xlc6_cc_array[FOO(a) == 'x' ? 1 : -1]; - -int test (int i, double x); -struct s1 {int (*f) (int a);}; -struct s2 {int (*f) (double a);}; -int pairnames (int, char **, FILE *(*)(struct buf *, struct stat *, int), int, int); -int argc; -char **argv; -int -main (void) -{ -return f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1]; - ; - return 0; -} -_ACEOF -for ac_arg in '' -qlanglvl=extc89 -qlanglvl=ansi -std \ - -Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__" -do - CC="$ac_save_CC $ac_arg" - if ac_fn_c_try_compile "$LINENO"; then : - ac_cv_prog_cc_c89=$ac_arg -fi -rm -f core conftest.err conftest.$ac_objext - test "x$ac_cv_prog_cc_c89" != "xno" && break -done -rm -f conftest.$ac_ext -CC=$ac_save_CC - -fi -# AC_CACHE_VAL -case "x$ac_cv_prog_cc_c89" in - x) - { $as_echo "$as_me:${as_lineno-$LINENO}: result: none needed" >&5 -$as_echo "none needed" >&6; } ;; - xno) - { $as_echo "$as_me:${as_lineno-$LINENO}: result: unsupported" >&5 -$as_echo "unsupported" >&6; } ;; - *) - CC="$CC $ac_cv_prog_cc_c89" - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_c89" >&5 -$as_echo "$ac_cv_prog_cc_c89" >&6; } ;; -esac -if test "x$ac_cv_prog_cc_c89" != xno; then : - -fi - -ac_ext=c -ac_cpp='$CPP $CPPFLAGS' -ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' -ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' -ac_compiler_gnu=$ac_cv_c_compiler_gnu - -ac_ext=c -ac_cpp='$CPP $CPPFLAGS' -ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' -ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' -ac_compiler_gnu=$ac_cv_c_compiler_gnu -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC understands -c and -o together" >&5 -$as_echo_n "checking whether $CC understands -c and -o together... " >&6; } -if ${am_cv_prog_cc_c_o+:} false; then : - $as_echo_n "(cached) " >&6 -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -int -main (void) -{ - - ; - return 0; -} -_ACEOF - # Make sure it works both with $CC and with simple cc. - # Following AC_PROG_CC_C_O, we do the test twice because some - # compilers refuse to overwrite an existing .o file with -o, - # though they will create one. - am_cv_prog_cc_c_o=yes - for am_i in 1 2; do - if { echo "$as_me:$LINENO: $CC -c conftest.$ac_ext -o conftest2.$ac_objext" >&5 - ($CC -c conftest.$ac_ext -o conftest2.$ac_objext) >&5 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } \ - && test -f conftest2.$ac_objext; then - : OK - else - am_cv_prog_cc_c_o=no - break - fi - done - rm -f core conftest* - unset am_i -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_prog_cc_c_o" >&5 -$as_echo "$am_cv_prog_cc_c_o" >&6; } -if test "$am_cv_prog_cc_c_o" != yes; then - # Losing compiler, so override with the script. - # FIXME: It is wrong to rewrite CC. - # But if we don't then we get into trouble of one sort or another. - # A longer-term fix would be to have automake use am__CC in this case, - # and then we could set am__CC="\$(top_srcdir)/compile \$(CC)" - CC="$am_aux_dir/compile $CC" -fi -ac_ext=c -ac_cpp='$CPP $CPPFLAGS' -ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' -ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' -ac_compiler_gnu=$ac_cv_c_compiler_gnu - - -depcc="$CC" am_compiler_list= - -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking dependency style of $depcc" >&5 -$as_echo_n "checking dependency style of $depcc... " >&6; } -if ${am_cv_CC_dependencies_compiler_type+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then - # We make a subdir and do the tests there. Otherwise we can end up - # making bogus files that we don't know about and never remove. For - # instance it was reported that on HP-UX the gcc test will end up - # making a dummy file named 'D' -- because '-MD' means "put the output - # in D". - rm -rf conftest.dir - mkdir conftest.dir - # Copy depcomp to subdir because otherwise we won't find it if we're - # using a relative directory. - cp "$am_depcomp" conftest.dir - cd conftest.dir - # We will build objects and dependencies in a subdirectory because - # it helps to detect inapplicable dependency modes. For instance - # both Tru64's cc and ICC support -MD to output dependencies as a - # side effect of compilation, but ICC will put the dependencies in - # the current directory while Tru64 will put them in the object - # directory. - mkdir sub - - am_cv_CC_dependencies_compiler_type=none - if test "$am_compiler_list" = ""; then - am_compiler_list=`sed -n 's/^#*\([a-zA-Z0-9]*\))$/\1/p' < ./depcomp` - fi - am__universal=false - case " $depcc " in #( - *\ -arch\ *\ -arch\ *) am__universal=true ;; - esac - - for depmode in $am_compiler_list; do - # Setup a source with many dependencies, because some compilers - # like to wrap large dependency lists on column 80 (with \), and - # we should not choose a depcomp mode which is confused by this. - # - # We need to recreate these files for each test, as the compiler may - # overwrite some of them when testing with obscure command lines. - # This happens at least with the AIX C compiler. - : > sub/conftest.c - for i in 1 2 3 4 5 6; do - echo '#include "conftst'$i'.h"' >> sub/conftest.c - # Using ": > sub/conftst$i.h" creates only sub/conftst1.h with - # Solaris 10 /bin/sh. - echo '/* dummy */' > sub/conftst$i.h - done - echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf - - # We check with '-c' and '-o' for the sake of the "dashmstdout" - # mode. It turns out that the SunPro C++ compiler does not properly - # handle '-M -o', and we need to detect this. Also, some Intel - # versions had trouble with output in subdirs. - am__obj=sub/conftest.${OBJEXT-o} - am__minus_obj="-o $am__obj" - case $depmode in - gcc) - # This depmode causes a compiler race in universal mode. - test "$am__universal" = false || continue - ;; - nosideeffect) - # After this tag, mechanisms are not by side-effect, so they'll - # only be used when explicitly requested. - if test "x$enable_dependency_tracking" = xyes; then - continue - else - break - fi - ;; - msvc7 | msvc7msys | msvisualcpp | msvcmsys) - # This compiler won't grok '-c -o', but also, the minuso test has - # not run yet. These depmodes are late enough in the game, and - # so weak that their functioning should not be impacted. - am__obj=conftest.${OBJEXT-o} - am__minus_obj= - ;; - none) break ;; - esac - if depmode=$depmode \ - source=sub/conftest.c object=$am__obj \ - depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \ - $SHELL ./depcomp $depcc -c $am__minus_obj sub/conftest.c \ - >/dev/null 2>conftest.err && - grep sub/conftst1.h sub/conftest.Po > /dev/null 2>&1 && - grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 && - grep $am__obj sub/conftest.Po > /dev/null 2>&1 && - ${MAKE-make} -s -f confmf > /dev/null 2>&1; then - # icc doesn't choke on unknown options, it will just issue warnings - # or remarks (even with -Werror). So we grep stderr for any message - # that says an option was ignored or not supported. - # When given -MP, icc 7.0 and 7.1 complain thusly: - # icc: Command line warning: ignoring option '-M'; no argument required - # The diagnosis changed in icc 8.0: - # icc: Command line remark: option '-MP' not supported - if (grep 'ignoring option' conftest.err || - grep 'not supported' conftest.err) >/dev/null 2>&1; then :; else - am_cv_CC_dependencies_compiler_type=$depmode - break - fi - fi - done - - cd .. - rm -rf conftest.dir -else - am_cv_CC_dependencies_compiler_type=none -fi - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_CC_dependencies_compiler_type" >&5 -$as_echo "$am_cv_CC_dependencies_compiler_type" >&6; } -CCDEPMODE=depmode=$am_cv_CC_dependencies_compiler_type - - if - test "x$enable_dependency_tracking" != xno \ - && test "$am_cv_CC_dependencies_compiler_type" = gcc3; then - am__fastdepCC_TRUE= - am__fastdepCC_FALSE='#' -else - am__fastdepCC_TRUE='#' - am__fastdepCC_FALSE= -fi - - - -for ac_prog in flex lex -do - # Extract the first word of "$ac_prog", so it can be a program name with args. -set dummy $ac_prog; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_LEX+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test -n "$LEX"; then - ac_cv_prog_LEX="$LEX" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_LEX="$ac_prog" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -LEX=$ac_cv_prog_LEX -if test -n "$LEX"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $LEX" >&5 -$as_echo "$LEX" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - - - test -n "$LEX" && break -done -test -n "$LEX" || LEX=":" - -if test "x$LEX" != "x:"; then - cat >conftest.l <<_ACEOF -%% -a { ECHO; } -b { REJECT; } -c { yymore (); } -d { yyless (1); } -e { /* IRIX 6.5 flex 2.5.4 underquotes its yyless argument. */ - yyless ((input () != 0)); } -f { unput (yytext[0]); } -. { BEGIN INITIAL; } -%% -#ifdef YYTEXT_POINTER -extern char *yytext; -#endif -int -main (void) -{ - return ! yylex () + ! yywrap (); -} -_ACEOF -{ { ac_try="$LEX conftest.l" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" -$as_echo "$ac_try_echo"; } >&5 - (eval "$LEX conftest.l") 2>&5 - ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; } -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking lex output file root" >&5 -$as_echo_n "checking lex output file root... " >&6; } -if ${ac_cv_prog_lex_root+:} false; then : - $as_echo_n "(cached) " >&6 -else - -if test -f lex.yy.c; then - ac_cv_prog_lex_root=lex.yy -elif test -f lexyy.c; then - ac_cv_prog_lex_root=lexyy -else - as_fn_error $? "cannot find output from $LEX; giving up" "$LINENO" 5 -fi -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_lex_root" >&5 -$as_echo "$ac_cv_prog_lex_root" >&6; } -LEX_OUTPUT_ROOT=$ac_cv_prog_lex_root - -if test -z "${LEXLIB+set}"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: checking lex library" >&5 -$as_echo_n "checking lex library... " >&6; } -if ${ac_cv_lib_lex+:} false; then : - $as_echo_n "(cached) " >&6 -else - - ac_save_LIBS=$LIBS - ac_cv_lib_lex='none needed' - for ac_lib in '' -lfl -ll; do - LIBS="$ac_lib $ac_save_LIBS" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -`cat $LEX_OUTPUT_ROOT.c` -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - ac_cv_lib_lex=$ac_lib -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext - test "$ac_cv_lib_lex" != 'none needed' && break - done - LIBS=$ac_save_LIBS - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_lex" >&5 -$as_echo "$ac_cv_lib_lex" >&6; } - test "$ac_cv_lib_lex" != 'none needed' && LEXLIB=$ac_cv_lib_lex -fi - - -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether yytext is a pointer" >&5 -$as_echo_n "checking whether yytext is a pointer... " >&6; } -if ${ac_cv_prog_lex_yytext_pointer+:} false; then : - $as_echo_n "(cached) " >&6 -else - # POSIX says lex can declare yytext either as a pointer or an array; the -# default is implementation-dependent. Figure out which it is, since -# not all implementations provide the %pointer and %array declarations. -ac_cv_prog_lex_yytext_pointer=no -ac_save_LIBS=$LIBS -LIBS="$LEXLIB $ac_save_LIBS" -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - - #define YYTEXT_POINTER 1 -`cat $LEX_OUTPUT_ROOT.c` -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - ac_cv_prog_lex_yytext_pointer=yes -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -LIBS=$ac_save_LIBS - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_lex_yytext_pointer" >&5 -$as_echo "$ac_cv_prog_lex_yytext_pointer" >&6; } -if test $ac_cv_prog_lex_yytext_pointer = yes; then - -$as_echo "#define YYTEXT_POINTER 1" >>confdefs.h - -fi -rm -f conftest.l $LEX_OUTPUT_ROOT.c - -fi -for ac_prog in 'bison -y' byacc -do - # Extract the first word of "$ac_prog", so it can be a program name with args. -set dummy $ac_prog; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_YACC+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test -n "$YACC"; then - ac_cv_prog_YACC="$YACC" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_YACC="$ac_prog" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -YACC=$ac_cv_prog_YACC -if test -n "$YACC"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $YACC" >&5 -$as_echo "$YACC" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - - - test -n "$YACC" && break -done -test -n "$YACC" || YACC="yacc" - -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether ${MAKE-make} sets \$(MAKE)" >&5 -$as_echo_n "checking whether ${MAKE-make} sets \$(MAKE)... " >&6; } -set x ${MAKE-make} -ac_make=`$as_echo "$2" | sed 's/+/p/g; s/[^a-zA-Z0-9_]/_/g'` -if eval \${ac_cv_prog_make_${ac_make}_set+:} false; then : - $as_echo_n "(cached) " >&6 -else - cat >conftest.make <<\_ACEOF -SHELL = /bin/sh -all: - @echo '@@@%%%=$(MAKE)=@@@%%%' -_ACEOF -# GNU make sometimes prints "make[1]: Entering ...", which would confuse us. -case `${MAKE-make} -f conftest.make 2>/dev/null` in - *@@@%%%=?*=@@@%%%*) - eval ac_cv_prog_make_${ac_make}_set=yes;; - *) - eval ac_cv_prog_make_${ac_make}_set=no;; -esac -rm -f conftest.make -fi -if eval test \$ac_cv_prog_make_${ac_make}_set = yes; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -$as_echo "yes" >&6; } - SET_MAKE= -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } - SET_MAKE="MAKE=${MAKE-make}" -fi - - -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether ln -s works" >&5 -$as_echo_n "checking whether ln -s works... " >&6; } -LN_S=$as_ln_s -if test "$LN_S" = "ln -s"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -$as_echo "yes" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no, using $LN_S" >&5 -$as_echo "no, using $LN_S" >&6; } -fi - - -if test "x$LEX" = "x:"; then - as_fn_error $? "flex is not found" "$LINENO" 5 -else - version=`$LEX --version | $AWK '{ split($2,x,"."); print x[1]*10000+x[2]*100+x[3]; }'` - if test -n "$version" -a "$version" -ge 20535; then - : - else - as_fn_error $? "flex is too old. GRUB requires 2.5.35 or above" "$LINENO" 5 - fi -fi - -# These are not a "must". -for ac_prog in makeinfo true -do - # Extract the first word of "$ac_prog", so it can be a program name with args. -set dummy $ac_prog; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_path_MAKEINFO+:} false; then : - $as_echo_n "(cached) " >&6 -else - case $MAKEINFO in - [\\/]* | ?:[\\/]*) - ac_cv_path_MAKEINFO="$MAKEINFO" # Let the user override the test with a path. - ;; - *) - as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_path_MAKEINFO="$as_dir/$ac_word$ac_exec_ext" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - - ;; -esac -fi -MAKEINFO=$ac_cv_path_MAKEINFO -if test -n "$MAKEINFO"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MAKEINFO" >&5 -$as_echo "$MAKEINFO" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - - - test -n "$MAKEINFO" && break -done - - -# -# Checks for host programs. -# - -ac_ext=c -ac_cpp='$CPP $CPPFLAGS' -ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' -ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' -ac_compiler_gnu=$ac_cv_c_compiler_gnu -if test -n "$ac_tool_prefix"; then - # Extract the first word of "${ac_tool_prefix}gcc", so it can be a program name with args. -set dummy ${ac_tool_prefix}gcc; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_CC+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test -n "$CC"; then - ac_cv_prog_CC="$CC" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_CC="${ac_tool_prefix}gcc" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -CC=$ac_cv_prog_CC -if test -n "$CC"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 -$as_echo "$CC" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - - -fi -if test -z "$ac_cv_prog_CC"; then - ac_ct_CC=$CC - # Extract the first word of "gcc", so it can be a program name with args. -set dummy gcc; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_ac_ct_CC+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test -n "$ac_ct_CC"; then - ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_ac_ct_CC="gcc" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -ac_ct_CC=$ac_cv_prog_ac_ct_CC -if test -n "$ac_ct_CC"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5 -$as_echo "$ac_ct_CC" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - - if test "x$ac_ct_CC" = x; then - CC="" - else - case $cross_compiling:$ac_tool_warned in -yes:) -{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 -$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} -ac_tool_warned=yes ;; -esac - CC=$ac_ct_CC - fi -else - CC="$ac_cv_prog_CC" -fi - -if test -z "$CC"; then - if test -n "$ac_tool_prefix"; then - # Extract the first word of "${ac_tool_prefix}cc", so it can be a program name with args. -set dummy ${ac_tool_prefix}cc; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_CC+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test -n "$CC"; then - ac_cv_prog_CC="$CC" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_CC="${ac_tool_prefix}cc" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -CC=$ac_cv_prog_CC -if test -n "$CC"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 -$as_echo "$CC" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - - - fi -fi -if test -z "$CC"; then - # Extract the first word of "cc", so it can be a program name with args. -set dummy cc; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_CC+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test -n "$CC"; then - ac_cv_prog_CC="$CC" # Let the user override the test. -else - ac_prog_rejected=no -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - if test "$as_dir/$ac_word$ac_exec_ext" = "/usr/ucb/cc"; then - ac_prog_rejected=yes - continue - fi - ac_cv_prog_CC="cc" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -if test $ac_prog_rejected = yes; then - # We found a bogon in the path, so make sure we never use it. - set dummy $ac_cv_prog_CC - shift - if test $# != 0; then - # We chose a different compiler from the bogus one. - # However, it has the same basename, so the bogon will be chosen - # first if we set CC to just the basename; use the full file name. - shift - ac_cv_prog_CC="$as_dir/$ac_word${1+' '}$@" - fi -fi -fi -fi -CC=$ac_cv_prog_CC -if test -n "$CC"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 -$as_echo "$CC" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - - -fi -if test -z "$CC"; then - if test -n "$ac_tool_prefix"; then - for ac_prog in cl.exe - do - # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args. -set dummy $ac_tool_prefix$ac_prog; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_CC+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test -n "$CC"; then - ac_cv_prog_CC="$CC" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_CC="$ac_tool_prefix$ac_prog" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -CC=$ac_cv_prog_CC -if test -n "$CC"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 -$as_echo "$CC" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - - - test -n "$CC" && break - done -fi -if test -z "$CC"; then - ac_ct_CC=$CC - for ac_prog in cl.exe -do - # Extract the first word of "$ac_prog", so it can be a program name with args. -set dummy $ac_prog; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_ac_ct_CC+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test -n "$ac_ct_CC"; then - ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_ac_ct_CC="$ac_prog" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -ac_ct_CC=$ac_cv_prog_ac_ct_CC -if test -n "$ac_ct_CC"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5 -$as_echo "$ac_ct_CC" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - - - test -n "$ac_ct_CC" && break -done - - if test "x$ac_ct_CC" = x; then - CC="" - else - case $cross_compiling:$ac_tool_warned in -yes:) -{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 -$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} -ac_tool_warned=yes ;; -esac - CC=$ac_ct_CC - fi -fi - -fi - - -test -z "$CC" && { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 -$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} -as_fn_error $? "no acceptable C compiler found in \$PATH -See \`config.log' for more details" "$LINENO" 5; } - -# Provide some information about the compiler. -$as_echo "$as_me:${as_lineno-$LINENO}: checking for C compiler version" >&5 -set X $ac_compile -ac_compiler=$2 -for ac_option in --version -v -V -qversion; do - { { ac_try="$ac_compiler $ac_option >&5" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" -$as_echo "$ac_try_echo"; } >&5 - (eval "$ac_compiler $ac_option >&5") 2>conftest.err - ac_status=$? - if test -s conftest.err; then - sed '10a\ -... rest of stderr output deleted ... - 10q' conftest.err >conftest.er1 - cat conftest.er1 >&5 - fi - rm -f conftest.er1 conftest.err - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; } -done - -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are using the GNU C compiler" >&5 -$as_echo_n "checking whether we are using the GNU C compiler... " >&6; } -if ${ac_cv_c_compiler_gnu+:} false; then : - $as_echo_n "(cached) " >&6 -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -int -main (void) -{ -#ifndef __GNUC__ - choke me -#endif - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - ac_compiler_gnu=yes -else - ac_compiler_gnu=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -ac_cv_c_compiler_gnu=$ac_compiler_gnu - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_compiler_gnu" >&5 -$as_echo "$ac_cv_c_compiler_gnu" >&6; } -if test $ac_compiler_gnu = yes; then - GCC=yes -else - GCC= -fi -ac_test_CFLAGS=${CFLAGS+set} -ac_save_CFLAGS=$CFLAGS -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC accepts -g" >&5 -$as_echo_n "checking whether $CC accepts -g... " >&6; } -if ${ac_cv_prog_cc_g+:} false; then : - $as_echo_n "(cached) " >&6 -else - ac_save_c_werror_flag=$ac_c_werror_flag - ac_c_werror_flag=yes - ac_cv_prog_cc_g=no - CFLAGS="-g" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -int -main (void) -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - ac_cv_prog_cc_g=yes -else - CFLAGS="" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -int -main (void) -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - -else - ac_c_werror_flag=$ac_save_c_werror_flag - CFLAGS="-g" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -int -main (void) -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - ac_cv_prog_cc_g=yes -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - ac_c_werror_flag=$ac_save_c_werror_flag -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_g" >&5 -$as_echo "$ac_cv_prog_cc_g" >&6; } -if test "$ac_test_CFLAGS" = set; then - CFLAGS=$ac_save_CFLAGS -elif test $ac_cv_prog_cc_g = yes; then - if test "$GCC" = yes; then - CFLAGS="-g -O2" - else - CFLAGS="-g" - fi -else - if test "$GCC" = yes; then - CFLAGS="-O2" - else - CFLAGS= - fi -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $CC option to accept ISO C89" >&5 -$as_echo_n "checking for $CC option to accept ISO C89... " >&6; } -if ${ac_cv_prog_cc_c89+:} false; then : - $as_echo_n "(cached) " >&6 -else - ac_cv_prog_cc_c89=no -ac_save_CC=$CC -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include -#include -struct stat; -/* Most of the following tests are stolen from RCS 5.7's src/conf.sh. */ -struct buf { int x; }; -FILE * (*rcsopen) (struct buf *, struct stat *, int); -static char *e (p, i) - char **p; - int i; -{ - return p[i]; -} -static char *f (char * (*g) (char **, int), char **p, ...) -{ - char *s; - va_list v; - va_start (v,p); - s = g (p, va_arg (v,int)); - va_end (v); - return s; -} - -/* OSF 4.0 Compaq cc is some sort of almost-ANSI by default. It has - function prototypes and stuff, but not '\xHH' hex character constants. - These don't provoke an error unfortunately, instead are silently treated - as 'x'. The following induces an error, until -std is added to get - proper ANSI mode. Curiously '\x00'!='x' always comes out true, for an - array size at least. It's necessary to write '\x00'==0 to get something - that's true only with -std. */ -int osf4_cc_array ['\x00' == 0 ? 1 : -1]; - -/* IBM C 6 for AIX is almost-ANSI by default, but it replaces macro parameters - inside strings and character constants. */ -#define FOO(x) 'x' -int xlc6_cc_array[FOO(a) == 'x' ? 1 : -1]; - -int test (int i, double x); -struct s1 {int (*f) (int a);}; -struct s2 {int (*f) (double a);}; -int pairnames (int, char **, FILE *(*)(struct buf *, struct stat *, int), int, int); -int argc; -char **argv; -int -main (void) -{ -return f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1]; - ; - return 0; -} -_ACEOF -for ac_arg in '' -qlanglvl=extc89 -qlanglvl=ansi -std \ - -Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__" -do - CC="$ac_save_CC $ac_arg" - if ac_fn_c_try_compile "$LINENO"; then : - ac_cv_prog_cc_c89=$ac_arg -fi -rm -f core conftest.err conftest.$ac_objext - test "x$ac_cv_prog_cc_c89" != "xno" && break -done -rm -f conftest.$ac_ext -CC=$ac_save_CC - -fi -# AC_CACHE_VAL -case "x$ac_cv_prog_cc_c89" in - x) - { $as_echo "$as_me:${as_lineno-$LINENO}: result: none needed" >&5 -$as_echo "none needed" >&6; } ;; - xno) - { $as_echo "$as_me:${as_lineno-$LINENO}: result: unsupported" >&5 -$as_echo "unsupported" >&6; } ;; - *) - CC="$CC $ac_cv_prog_cc_c89" - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_c89" >&5 -$as_echo "$ac_cv_prog_cc_c89" >&6; } ;; -esac -if test "x$ac_cv_prog_cc_c89" != xno; then : - -fi - -ac_ext=c -ac_cpp='$CPP $CPPFLAGS' -ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' -ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' -ac_compiler_gnu=$ac_cv_c_compiler_gnu - -ac_ext=c -ac_cpp='$CPP $CPPFLAGS' -ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' -ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' -ac_compiler_gnu=$ac_cv_c_compiler_gnu -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC understands -c and -o together" >&5 -$as_echo_n "checking whether $CC understands -c and -o together... " >&6; } -if ${am_cv_prog_cc_c_o+:} false; then : - $as_echo_n "(cached) " >&6 -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -int -main (void) -{ - - ; - return 0; -} -_ACEOF - # Make sure it works both with $CC and with simple cc. - # Following AC_PROG_CC_C_O, we do the test twice because some - # compilers refuse to overwrite an existing .o file with -o, - # though they will create one. - am_cv_prog_cc_c_o=yes - for am_i in 1 2; do - if { echo "$as_me:$LINENO: $CC -c conftest.$ac_ext -o conftest2.$ac_objext" >&5 - ($CC -c conftest.$ac_ext -o conftest2.$ac_objext) >&5 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } \ - && test -f conftest2.$ac_objext; then - : OK - else - am_cv_prog_cc_c_o=no - break - fi - done - rm -f core conftest* - unset am_i -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_prog_cc_c_o" >&5 -$as_echo "$am_cv_prog_cc_c_o" >&6; } -if test "$am_cv_prog_cc_c_o" != yes; then - # Losing compiler, so override with the script. - # FIXME: It is wrong to rewrite CC. - # But if we don't then we get into trouble of one sort or another. - # A longer-term fix would be to have automake use am__CC in this case, - # and then we could set am__CC="\$(top_srcdir)/compile \$(CC)" - CC="$am_aux_dir/compile $CC" -fi -ac_ext=c -ac_cpp='$CPP $CPPFLAGS' -ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' -ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' -ac_compiler_gnu=$ac_cv_c_compiler_gnu - - -depcc="$CC" am_compiler_list= - -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking dependency style of $depcc" >&5 -$as_echo_n "checking dependency style of $depcc... " >&6; } -if ${am_cv_CC_dependencies_compiler_type+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then - # We make a subdir and do the tests there. Otherwise we can end up - # making bogus files that we don't know about and never remove. For - # instance it was reported that on HP-UX the gcc test will end up - # making a dummy file named 'D' -- because '-MD' means "put the output - # in D". - rm -rf conftest.dir - mkdir conftest.dir - # Copy depcomp to subdir because otherwise we won't find it if we're - # using a relative directory. - cp "$am_depcomp" conftest.dir - cd conftest.dir - # We will build objects and dependencies in a subdirectory because - # it helps to detect inapplicable dependency modes. For instance - # both Tru64's cc and ICC support -MD to output dependencies as a - # side effect of compilation, but ICC will put the dependencies in - # the current directory while Tru64 will put them in the object - # directory. - mkdir sub - - am_cv_CC_dependencies_compiler_type=none - if test "$am_compiler_list" = ""; then - am_compiler_list=`sed -n 's/^#*\([a-zA-Z0-9]*\))$/\1/p' < ./depcomp` - fi - am__universal=false - case " $depcc " in #( - *\ -arch\ *\ -arch\ *) am__universal=true ;; - esac - - for depmode in $am_compiler_list; do - # Setup a source with many dependencies, because some compilers - # like to wrap large dependency lists on column 80 (with \), and - # we should not choose a depcomp mode which is confused by this. - # - # We need to recreate these files for each test, as the compiler may - # overwrite some of them when testing with obscure command lines. - # This happens at least with the AIX C compiler. - : > sub/conftest.c - for i in 1 2 3 4 5 6; do - echo '#include "conftst'$i'.h"' >> sub/conftest.c - # Using ": > sub/conftst$i.h" creates only sub/conftst1.h with - # Solaris 10 /bin/sh. - echo '/* dummy */' > sub/conftst$i.h - done - echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf - - # We check with '-c' and '-o' for the sake of the "dashmstdout" - # mode. It turns out that the SunPro C++ compiler does not properly - # handle '-M -o', and we need to detect this. Also, some Intel - # versions had trouble with output in subdirs. - am__obj=sub/conftest.${OBJEXT-o} - am__minus_obj="-o $am__obj" - case $depmode in - gcc) - # This depmode causes a compiler race in universal mode. - test "$am__universal" = false || continue - ;; - nosideeffect) - # After this tag, mechanisms are not by side-effect, so they'll - # only be used when explicitly requested. - if test "x$enable_dependency_tracking" = xyes; then - continue - else - break - fi - ;; - msvc7 | msvc7msys | msvisualcpp | msvcmsys) - # This compiler won't grok '-c -o', but also, the minuso test has - # not run yet. These depmodes are late enough in the game, and - # so weak that their functioning should not be impacted. - am__obj=conftest.${OBJEXT-o} - am__minus_obj= - ;; - none) break ;; - esac - if depmode=$depmode \ - source=sub/conftest.c object=$am__obj \ - depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \ - $SHELL ./depcomp $depcc -c $am__minus_obj sub/conftest.c \ - >/dev/null 2>conftest.err && - grep sub/conftst1.h sub/conftest.Po > /dev/null 2>&1 && - grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 && - grep $am__obj sub/conftest.Po > /dev/null 2>&1 && - ${MAKE-make} -s -f confmf > /dev/null 2>&1; then - # icc doesn't choke on unknown options, it will just issue warnings - # or remarks (even with -Werror). So we grep stderr for any message - # that says an option was ignored or not supported. - # When given -MP, icc 7.0 and 7.1 complain thusly: - # icc: Command line warning: ignoring option '-M'; no argument required - # The diagnosis changed in icc 8.0: - # icc: Command line remark: option '-MP' not supported - if (grep 'ignoring option' conftest.err || - grep 'not supported' conftest.err) >/dev/null 2>&1; then :; else - am_cv_CC_dependencies_compiler_type=$depmode - break - fi - fi - done - - cd .. - rm -rf conftest.dir -else - am_cv_CC_dependencies_compiler_type=none -fi - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_CC_dependencies_compiler_type" >&5 -$as_echo "$am_cv_CC_dependencies_compiler_type" >&6; } -CCDEPMODE=depmode=$am_cv_CC_dependencies_compiler_type - - if - test "x$enable_dependency_tracking" != xno \ - && test "$am_cv_CC_dependencies_compiler_type" = gcc3; then - am__fastdepCC_TRUE= - am__fastdepCC_FALSE='#' -else - am__fastdepCC_TRUE='#' - am__fastdepCC_FALSE= -fi - - -ac_ext=c -ac_cpp='$CPP $CPPFLAGS' -ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' -ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' -ac_compiler_gnu=$ac_cv_c_compiler_gnu -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to run the C preprocessor" >&5 -$as_echo_n "checking how to run the C preprocessor... " >&6; } -# On Suns, sometimes $CPP names a directory. -if test -n "$CPP" && test -d "$CPP"; then - CPP= -fi -if test -z "$CPP"; then - if ${ac_cv_prog_CPP+:} false; then : - $as_echo_n "(cached) " >&6 -else - # Double quotes because CPP needs to be expanded - for CPP in "$CC -E" "$CC -E -traditional-cpp" "/lib/cpp" - do - ac_preproc_ok=false -for ac_c_preproc_warn_flag in '' yes -do - # Use a header file that comes with gcc, so configuring glibc - # with a fresh cross-compiler works. - # Prefer to if __STDC__ is defined, since - # exists even on freestanding compilers. - # On the NeXT, cc -E runs the code through the compiler's parser, - # not just through cpp. "Syntax error" is here to catch this case. - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#ifdef __STDC__ -# include -#else -# include -#endif - Syntax error -_ACEOF -if ac_fn_c_try_cpp "$LINENO"; then : - -else - # Broken: fails on valid input. -continue -fi -rm -f conftest.err conftest.i conftest.$ac_ext - - # OK, works on sane cases. Now check whether nonexistent headers - # can be detected and how. - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include -_ACEOF -if ac_fn_c_try_cpp "$LINENO"; then : - # Broken: success on invalid input. -continue -else - # Passes both tests. -ac_preproc_ok=: -break -fi -rm -f conftest.err conftest.i conftest.$ac_ext - -done -# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped. -rm -f conftest.i conftest.err conftest.$ac_ext -if $ac_preproc_ok; then : - break -fi - - done - ac_cv_prog_CPP=$CPP - -fi - CPP=$ac_cv_prog_CPP -else - ac_cv_prog_CPP=$CPP -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $CPP" >&5 -$as_echo "$CPP" >&6; } -ac_preproc_ok=false -for ac_c_preproc_warn_flag in '' yes -do - # Use a header file that comes with gcc, so configuring glibc - # with a fresh cross-compiler works. - # Prefer to if __STDC__ is defined, since - # exists even on freestanding compilers. - # On the NeXT, cc -E runs the code through the compiler's parser, - # not just through cpp. "Syntax error" is here to catch this case. - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#ifdef __STDC__ -# include -#else -# include -#endif - Syntax error -_ACEOF -if ac_fn_c_try_cpp "$LINENO"; then : - -else - # Broken: fails on valid input. -continue -fi -rm -f conftest.err conftest.i conftest.$ac_ext - - # OK, works on sane cases. Now check whether nonexistent headers - # can be detected and how. - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include -_ACEOF -if ac_fn_c_try_cpp "$LINENO"; then : - # Broken: success on invalid input. -continue -else - # Passes both tests. -ac_preproc_ok=: -break -fi -rm -f conftest.err conftest.i conftest.$ac_ext - -done -# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped. -rm -f conftest.i conftest.err conftest.$ac_ext -if $ac_preproc_ok; then : - -else - { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 -$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} -as_fn_error $? "C preprocessor \"$CPP\" fails sanity check -See \`config.log' for more details" "$LINENO" 5; } -fi - -ac_ext=c -ac_cpp='$CPP $CPPFLAGS' -ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' -ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' -ac_compiler_gnu=$ac_cv_c_compiler_gnu - - -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for grep that handles long lines and -e" >&5 -$as_echo_n "checking for grep that handles long lines and -e... " >&6; } -if ${ac_cv_path_GREP+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test -z "$GREP"; then - ac_path_GREP_found=false - # Loop through the user's path and test for each of PROGNAME-LIST - as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_prog in grep ggrep; do - for ac_exec_ext in '' $ac_executable_extensions; do - ac_path_GREP="$as_dir/$ac_prog$ac_exec_ext" - as_fn_executable_p "$ac_path_GREP" || continue -# Check for GNU ac_path_GREP and select it if it is found. - # Check for GNU $ac_path_GREP -case `"$ac_path_GREP" --version 2>&1` in -*GNU*) - ac_cv_path_GREP="$ac_path_GREP" ac_path_GREP_found=:;; -*) - ac_count=0 - $as_echo_n 0123456789 >"conftest.in" - while : - do - cat "conftest.in" "conftest.in" >"conftest.tmp" - mv "conftest.tmp" "conftest.in" - cp "conftest.in" "conftest.nl" - $as_echo 'GREP' >> "conftest.nl" - "$ac_path_GREP" -e 'GREP$' -e '-(cannot match)-' < "conftest.nl" >"conftest.out" 2>/dev/null || break - diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break - as_fn_arith $ac_count + 1 && ac_count=$as_val - if test $ac_count -gt ${ac_path_GREP_max-0}; then - # Best one so far, save it but keep looking for a better one - ac_cv_path_GREP="$ac_path_GREP" - ac_path_GREP_max=$ac_count - fi - # 10*(2^10) chars as input seems more than enough - test $ac_count -gt 10 && break - done - rm -f conftest.in conftest.tmp conftest.nl conftest.out;; -esac - - $ac_path_GREP_found && break 3 - done - done - done -IFS=$as_save_IFS - if test -z "$ac_cv_path_GREP"; then - as_fn_error $? "no acceptable grep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5 - fi -else - ac_cv_path_GREP=$GREP -fi - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_GREP" >&5 -$as_echo "$ac_cv_path_GREP" >&6; } - GREP="$ac_cv_path_GREP" - - -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for egrep" >&5 -$as_echo_n "checking for egrep... " >&6; } -if ${ac_cv_path_EGREP+:} false; then : - $as_echo_n "(cached) " >&6 -else - if echo a | $GREP -E '(a|b)' >/dev/null 2>&1 - then ac_cv_path_EGREP="$GREP -E" - else - if test -z "$EGREP"; then - ac_path_EGREP_found=false - # Loop through the user's path and test for each of PROGNAME-LIST - as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_prog in egrep; do - for ac_exec_ext in '' $ac_executable_extensions; do - ac_path_EGREP="$as_dir/$ac_prog$ac_exec_ext" - as_fn_executable_p "$ac_path_EGREP" || continue -# Check for GNU ac_path_EGREP and select it if it is found. - # Check for GNU $ac_path_EGREP -case `"$ac_path_EGREP" --version 2>&1` in -*GNU*) - ac_cv_path_EGREP="$ac_path_EGREP" ac_path_EGREP_found=:;; -*) - ac_count=0 - $as_echo_n 0123456789 >"conftest.in" - while : - do - cat "conftest.in" "conftest.in" >"conftest.tmp" - mv "conftest.tmp" "conftest.in" - cp "conftest.in" "conftest.nl" - $as_echo 'EGREP' >> "conftest.nl" - "$ac_path_EGREP" 'EGREP$' < "conftest.nl" >"conftest.out" 2>/dev/null || break - diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break - as_fn_arith $ac_count + 1 && ac_count=$as_val - if test $ac_count -gt ${ac_path_EGREP_max-0}; then - # Best one so far, save it but keep looking for a better one - ac_cv_path_EGREP="$ac_path_EGREP" - ac_path_EGREP_max=$ac_count - fi - # 10*(2^10) chars as input seems more than enough - test $ac_count -gt 10 && break - done - rm -f conftest.in conftest.tmp conftest.nl conftest.out;; -esac - - $ac_path_EGREP_found && break 3 - done - done - done -IFS=$as_save_IFS - if test -z "$ac_cv_path_EGREP"; then - as_fn_error $? "no acceptable egrep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5 - fi -else - ac_cv_path_EGREP=$EGREP -fi - - fi -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_EGREP" >&5 -$as_echo "$ac_cv_path_EGREP" >&6; } - EGREP="$ac_cv_path_EGREP" - - -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for ANSI C header files" >&5 -$as_echo_n "checking for ANSI C header files... " >&6; } -if ${ac_cv_header_stdc+:} false; then : - $as_echo_n "(cached) " >&6 -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include -#include -#include -#include - -int -main (void) -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - ac_cv_header_stdc=yes -else - ac_cv_header_stdc=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - -if test $ac_cv_header_stdc = yes; then - # SunOS 4.x string.h does not declare mem*, contrary to ANSI. - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include - -_ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "memchr" >/dev/null 2>&1; then : - -else - ac_cv_header_stdc=no -fi -rm -f conftest* - -fi - -if test $ac_cv_header_stdc = yes; then - # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI. - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include - -_ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "free" >/dev/null 2>&1; then : - -else - ac_cv_header_stdc=no -fi -rm -f conftest* - -fi - -if test $ac_cv_header_stdc = yes; then - # /bin/cc in Irix-4.0.5 gets non-ANSI ctype macros unless using -ansi. - if test "$cross_compiling" = yes; then : - : -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include -#include -#if ((' ' & 0x0FF) == 0x020) -# define ISLOWER(c) ('a' <= (c) && (c) <= 'z') -# define TOUPPER(c) (ISLOWER(c) ? 'A' + ((c) - 'a') : (c)) -#else -# define ISLOWER(c) \ - (('a' <= (c) && (c) <= 'i') \ - || ('j' <= (c) && (c) <= 'r') \ - || ('s' <= (c) && (c) <= 'z')) -# define TOUPPER(c) (ISLOWER(c) ? ((c) | 0x40) : (c)) -#endif - -#define XOR(e, f) (((e) && !(f)) || (!(e) && (f))) -int -main () -{ - int i; - for (i = 0; i < 256; i++) - if (XOR (islower (i), ISLOWER (i)) - || toupper (i) != TOUPPER (i)) - return 2; - return 0; -} -_ACEOF -if ac_fn_c_try_run "$LINENO"; then : - -else - ac_cv_header_stdc=no -fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext -fi - -fi -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_stdc" >&5 -$as_echo "$ac_cv_header_stdc" >&6; } -if test $ac_cv_header_stdc = yes; then - -$as_echo "#define STDC_HEADERS 1" >>confdefs.h - -fi - -# On IRIX 5.3, sys/types and inttypes.h are conflicting. -for ac_header in sys/types.h sys/stat.h stdlib.h string.h memory.h strings.h \ - inttypes.h stdint.h unistd.h -do : - as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh` -ac_fn_c_check_header_compile "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default -" -if eval test \"x\$"$as_ac_Header"\" = x"yes"; then : - cat >>confdefs.h <<_ACEOF -#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1 -_ACEOF - -fi - -done - - - - ac_fn_c_check_header_mongrel "$LINENO" "minix/config.h" "ac_cv_header_minix_config_h" "$ac_includes_default" -if test "x$ac_cv_header_minix_config_h" = xyes; then : - MINIX=yes -else - MINIX= -fi - - - if test "$MINIX" = yes; then - -$as_echo "#define _POSIX_SOURCE 1" >>confdefs.h - - -$as_echo "#define _POSIX_1_SOURCE 2" >>confdefs.h - - -$as_echo "#define _MINIX 1" >>confdefs.h - - -$as_echo "#define _NETBSD_SOURCE 1" >>confdefs.h - - fi - - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether it is safe to define __EXTENSIONS__" >&5 -$as_echo_n "checking whether it is safe to define __EXTENSIONS__... " >&6; } -if ${ac_cv_safe_to_define___extensions__+:} false; then : - $as_echo_n "(cached) " >&6 -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -# define __EXTENSIONS__ 1 - $ac_includes_default -int -main (void) -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - ac_cv_safe_to_define___extensions__=yes -else - ac_cv_safe_to_define___extensions__=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_safe_to_define___extensions__" >&5 -$as_echo "$ac_cv_safe_to_define___extensions__" >&6; } - test $ac_cv_safe_to_define___extensions__ = yes && - $as_echo "#define __EXTENSIONS__ 1" >>confdefs.h - - $as_echo "#define _ALL_SOURCE 1" >>confdefs.h - - $as_echo "#define _DARWIN_C_SOURCE 1" >>confdefs.h - - $as_echo "#define _GNU_SOURCE 1" >>confdefs.h - - $as_echo "#define _NETBSD_SOURCE 1" >>confdefs.h - - $as_echo "#define _OPENBSD_SOURCE 1" >>confdefs.h - - $as_echo "#define _POSIX_PTHREAD_SEMANTICS 1" >>confdefs.h - - $as_echo "#define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1" >>confdefs.h - - $as_echo "#define __STDC_WANT_IEC_60559_BFP_EXT__ 1" >>confdefs.h - - $as_echo "#define __STDC_WANT_IEC_60559_DFP_EXT__ 1" >>confdefs.h - - $as_echo "#define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1" >>confdefs.h - - $as_echo "#define __STDC_WANT_IEC_60559_TYPES_EXT__ 1" >>confdefs.h - - $as_echo "#define __STDC_WANT_LIB_EXT2__ 1" >>confdefs.h - - $as_echo "#define __STDC_WANT_MATH_SPEC_FUNCS__ 1" >>confdefs.h - - $as_echo "#define _TANDEM_SOURCE 1" >>confdefs.h - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether _XOPEN_SOURCE should be defined" >&5 -$as_echo_n "checking whether _XOPEN_SOURCE should be defined... " >&6; } -if ${ac_cv_should_define__xopen_source+:} false; then : - $as_echo_n "(cached) " >&6 -else - ac_cv_should_define__xopen_source=no - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - - #include - mbstate_t x; -int -main (void) -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - - #define _XOPEN_SOURCE 500 - #include - mbstate_t x; -int -main (void) -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - ac_cv_should_define__xopen_source=yes -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_should_define__xopen_source" >&5 -$as_echo "$ac_cv_should_define__xopen_source" >&6; } - test $ac_cv_should_define__xopen_source = yes && - $as_echo "#define _XOPEN_SOURCE 500" >>confdefs.h - - $as_echo "#define _HPUX_ALT_XOPEN_SOCKET_API 1" >>confdefs.h - - - - - - - - - - - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for Minix Amsterdam compiler" >&5 -$as_echo_n "checking for Minix Amsterdam compiler... " >&6; } -if ${gl_cv_c_amsterdam_compiler+:} false; then : - $as_echo_n "(cached) " >&6 -else - - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -#ifdef __ACK__ -Amsterdam -#endif - -_ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "Amsterdam" >/dev/null 2>&1; then : - gl_cv_c_amsterdam_compiler=yes -else - gl_cv_c_amsterdam_compiler=no -fi -rm -f conftest* - - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_c_amsterdam_compiler" >&5 -$as_echo "$gl_cv_c_amsterdam_compiler" >&6; } - - if test $gl_cv_c_amsterdam_compiler = yes; then - if test -z "$AR"; then - AR='cc -c.a' - fi - if test -z "$ARFLAGS"; then - ARFLAGS='-o' - fi - else - : - fi - - if test -n "$ac_tool_prefix"; then - # Extract the first word of "${ac_tool_prefix}ar", so it can be a program name with args. -set dummy ${ac_tool_prefix}ar; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_AR+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test -n "$AR"; then - ac_cv_prog_AR="$AR" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_AR="${ac_tool_prefix}ar" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -AR=$ac_cv_prog_AR -if test -n "$AR"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $AR" >&5 -$as_echo "$AR" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - - -fi -if test -z "$ac_cv_prog_AR"; then - ac_ct_AR=$AR - # Extract the first word of "ar", so it can be a program name with args. -set dummy ar; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_ac_ct_AR+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test -n "$ac_ct_AR"; then - ac_cv_prog_ac_ct_AR="$ac_ct_AR" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_ac_ct_AR="ar" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -ac_ct_AR=$ac_cv_prog_ac_ct_AR -if test -n "$ac_ct_AR"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_AR" >&5 -$as_echo "$ac_ct_AR" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - - if test "x$ac_ct_AR" = x; then - AR="ar" - else - case $cross_compiling:$ac_tool_warned in -yes:) -{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 -$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} -ac_tool_warned=yes ;; -esac - AR=$ac_ct_AR - fi -else - AR="$ac_cv_prog_AR" -fi - - if test -z "$ARFLAGS"; then - ARFLAGS='cr' - fi - - - - if test -z "$RANLIB"; then - if test $gl_cv_c_amsterdam_compiler = yes; then - RANLIB=':' - else - if test -n "$ac_tool_prefix"; then - # Extract the first word of "${ac_tool_prefix}ranlib", so it can be a program name with args. -set dummy ${ac_tool_prefix}ranlib; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_RANLIB+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test -n "$RANLIB"; then - ac_cv_prog_RANLIB="$RANLIB" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_RANLIB="${ac_tool_prefix}ranlib" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -RANLIB=$ac_cv_prog_RANLIB -if test -n "$RANLIB"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $RANLIB" >&5 -$as_echo "$RANLIB" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - - -fi -if test -z "$ac_cv_prog_RANLIB"; then - ac_ct_RANLIB=$RANLIB - # Extract the first word of "ranlib", so it can be a program name with args. -set dummy ranlib; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_ac_ct_RANLIB+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test -n "$ac_ct_RANLIB"; then - ac_cv_prog_ac_ct_RANLIB="$ac_ct_RANLIB" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_ac_ct_RANLIB="ranlib" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -ac_ct_RANLIB=$ac_cv_prog_ac_ct_RANLIB -if test -n "$ac_ct_RANLIB"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_RANLIB" >&5 -$as_echo "$ac_ct_RANLIB" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - - if test "x$ac_ct_RANLIB" = x; then - RANLIB=":" - else - case $cross_compiling:$ac_tool_warned in -yes:) -{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 -$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} -ac_tool_warned=yes ;; -esac - RANLIB=$ac_ct_RANLIB - fi -else - RANLIB="$ac_cv_prog_RANLIB" -fi - - fi - fi - - - -# Check whether --enable-largefile was given. -if test "${enable_largefile+set}" = set; then : - enableval=$enable_largefile; -fi - -if test "$enable_largefile" != no; then - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for special C compiler options needed for large files" >&5 -$as_echo_n "checking for special C compiler options needed for large files... " >&6; } -if ${ac_cv_sys_largefile_CC+:} false; then : - $as_echo_n "(cached) " >&6 -else - ac_cv_sys_largefile_CC=no - if test "$GCC" != yes; then - ac_save_CC=$CC - while :; do - # IRIX 6.2 and later do not support large files by default, - # so use the C compiler's -n32 option if that helps. - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include - /* Check that off_t can represent 2**63 - 1 correctly. - We can't simply define LARGE_OFF_T to be 9223372036854775807, - since some C++ compilers masquerading as C compilers - incorrectly reject 9223372036854775807. */ -#define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62)) - int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721 - && LARGE_OFF_T % 2147483647 == 1) - ? 1 : -1]; -int -main (void) -{ - - ; - return 0; -} -_ACEOF - if ac_fn_c_try_compile "$LINENO"; then : - break -fi -rm -f core conftest.err conftest.$ac_objext - CC="$CC -n32" - if ac_fn_c_try_compile "$LINENO"; then : - ac_cv_sys_largefile_CC=' -n32'; break -fi -rm -f core conftest.err conftest.$ac_objext - break - done - CC=$ac_save_CC - rm -f conftest.$ac_ext - fi -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sys_largefile_CC" >&5 -$as_echo "$ac_cv_sys_largefile_CC" >&6; } - if test "$ac_cv_sys_largefile_CC" != no; then - CC=$CC$ac_cv_sys_largefile_CC - fi - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for _FILE_OFFSET_BITS value needed for large files" >&5 -$as_echo_n "checking for _FILE_OFFSET_BITS value needed for large files... " >&6; } -if ${ac_cv_sys_file_offset_bits+:} false; then : - $as_echo_n "(cached) " >&6 -else - while :; do - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include - /* Check that off_t can represent 2**63 - 1 correctly. - We can't simply define LARGE_OFF_T to be 9223372036854775807, - since some C++ compilers masquerading as C compilers - incorrectly reject 9223372036854775807. */ -#define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62)) - int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721 - && LARGE_OFF_T % 2147483647 == 1) - ? 1 : -1]; -int -main (void) -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - ac_cv_sys_file_offset_bits=no; break -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#define _FILE_OFFSET_BITS 64 -#include - /* Check that off_t can represent 2**63 - 1 correctly. - We can't simply define LARGE_OFF_T to be 9223372036854775807, - since some C++ compilers masquerading as C compilers - incorrectly reject 9223372036854775807. */ -#define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62)) - int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721 - && LARGE_OFF_T % 2147483647 == 1) - ? 1 : -1]; -int -main (void) -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - ac_cv_sys_file_offset_bits=64; break -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - ac_cv_sys_file_offset_bits=unknown - break -done -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sys_file_offset_bits" >&5 -$as_echo "$ac_cv_sys_file_offset_bits" >&6; } -case $ac_cv_sys_file_offset_bits in #( - no | unknown) ;; - *) -cat >>confdefs.h <<_ACEOF -#define _FILE_OFFSET_BITS $ac_cv_sys_file_offset_bits -_ACEOF -;; -esac -rm -rf conftest* - if test $ac_cv_sys_file_offset_bits = unknown; then - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for _LARGE_FILES value needed for large files" >&5 -$as_echo_n "checking for _LARGE_FILES value needed for large files... " >&6; } -if ${ac_cv_sys_large_files+:} false; then : - $as_echo_n "(cached) " >&6 -else - while :; do - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include - /* Check that off_t can represent 2**63 - 1 correctly. - We can't simply define LARGE_OFF_T to be 9223372036854775807, - since some C++ compilers masquerading as C compilers - incorrectly reject 9223372036854775807. */ -#define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62)) - int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721 - && LARGE_OFF_T % 2147483647 == 1) - ? 1 : -1]; -int -main (void) -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - ac_cv_sys_large_files=no; break -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#define _LARGE_FILES 1 -#include - /* Check that off_t can represent 2**63 - 1 correctly. - We can't simply define LARGE_OFF_T to be 9223372036854775807, - since some C++ compilers masquerading as C compilers - incorrectly reject 9223372036854775807. */ -#define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62)) - int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721 - && LARGE_OFF_T % 2147483647 == 1) - ? 1 : -1]; -int -main (void) -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - ac_cv_sys_large_files=1; break -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - ac_cv_sys_large_files=unknown - break -done -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sys_large_files" >&5 -$as_echo "$ac_cv_sys_large_files" >&6; } -case $ac_cv_sys_large_files in #( - no | unknown) ;; - *) -cat >>confdefs.h <<_ACEOF -#define _LARGE_FILES $ac_cv_sys_large_files -_ACEOF -;; -esac -rm -rf conftest* - fi - - -$as_echo "#define _DARWIN_USE_64_BIT_INODE 1" >>confdefs.h - -fi - - - - - - - # Check whether --enable-threads was given. -if test "${enable_threads+set}" = set; then : - enableval=$enable_threads; gl_use_threads=$enableval -else - if test -n "$gl_use_threads_default"; then - gl_use_threads="$gl_use_threads_default" - else - case "$host_os" in - osf*) gl_use_threads=no ;; - cygwin*) - case `uname -r` in - 1.[0-5].*) gl_use_threads=no ;; - *) gl_use_threads=yes ;; - esac - ;; - *) gl_use_threads=yes ;; - esac - fi - -fi - - if test "$gl_use_threads" = yes || test "$gl_use_threads" = posix; then - # For using : - case "$host_os" in - osf*) - # On OSF/1, the compiler needs the flag -D_REENTRANT so that it - # groks . cc also understands the flag -pthread, but - # we don't use it because 1. gcc-2.95 doesn't understand -pthread, - # 2. putting a flag into CPPFLAGS that has an effect on the linker - # causes the AC_LINK_IFELSE test below to succeed unexpectedly, - # leading to wrong values of LIBTHREAD and LTLIBTHREAD. - CPPFLAGS="$CPPFLAGS -D_REENTRANT" - ;; - esac - # Some systems optimize for single-threaded programs by default, and - # need special flags to disable these optimizations. For example, the - # definition of 'errno' in . - case "$host_os" in - aix* | freebsd*) CPPFLAGS="$CPPFLAGS -D_THREAD_SAFE" ;; - solaris*) CPPFLAGS="$CPPFLAGS -D_REENTRANT" ;; - esac - fi - - - - # Pre-early section. - - - - - # Code from module absolute-header: - # Code from module alloca: - # Code from module alloca-opt: - # Code from module argp: - # Code from module assure: - # Code from module at-internal: - # Code from module btowc: - # Code from module builtin-expect: - # Code from module chdir: - # Code from module chdir-long: - # Code from module cloexec: - # Code from module close: - # Code from module dirent: - # Code from module dirfd: - # Code from module dirname-lgpl: - # Code from module dosname: - # Code from module double-slash-root: - # Code from module dup2: - # Code from module errno: - # Code from module error: - # Code from module exitfail: - # Code from module extensions: - # Code from module extern-inline: - # Code from module fchdir: - # Code from module fcntl: - # Code from module fcntl-h: - # Code from module fd-hook: - # Code from module fd-safer-flag: - # Code from module filename: - # Code from module filenamecat-lgpl: - # Code from module flexmember: - # Code from module float: - # Code from module fnmatch: - # Code from module fnmatch-h: - # Code from module fstat: - # Code from module getcwd-lgpl: - # Code from module getdelim: - # Code from module getdtablesize: - # Code from module getline: - # Code from module getopt-gnu: - # Code from module getopt-posix: - # Code from module getprogname: - # Code from module gettext-h: - # Code from module gitlog-to-changelog: - # Code from module hard-locale: - # Code from module havelib: - # Code from module include_next: - # Code from module intprops: - # Code from module langinfo: - # Code from module largefile: - - # Code from module libc-config: - # Code from module limits-h: - # Code from module localcharset: - # Code from module locale: - # Code from module localeconv: - # Code from module lock: - # Code from module malloc-gnu: - # Code from module malloc-posix: - # Code from module malloca: - # Code from module mbrtowc: - # Code from module mbsinit: - # Code from module mbsrtowcs: - # Code from module mbswidth: - # Code from module mbtowc: - # Code from module memchr: - # Code from module mempcpy: - # Code from module memrchr: - # Code from module msvc-inval: - # Code from module msvc-nothrow: - # Code from module multiarch: - # Code from module nl_langinfo: - # Code from module nocrash: - # Code from module open: - # Code from module openat: - # Code from module openat-die: - # Code from module openat-h: - # Code from module pathmax: - # Code from module progname: - # Code from module rawmemchr: - # Code from module realloc-gnu: - # Code from module realloc-posix: - # Code from module regex: - # Code from module save-cwd: - # Code from module size_max: - # Code from module sleep: - # Code from module snippet/_Noreturn: - # Code from module snippet/arg-nonnull: - # Code from module snippet/c++defs: - # Code from module snippet/warn-on-use: - # Code from module ssize_t: - # Code from module stat: - # Code from module stat-time: - # Code from module stdalign: - # Code from module stdbool: - # Code from module stddef: - # Code from module stdint: - # Code from module stdio: - # Code from module stdlib: - # Code from module strcase: - # Code from module strchrnul: - # Code from module strdup-posix: - # Code from module streq: - # Code from module strerror: - # Code from module strerror-override: - # Code from module string: - # Code from module strings: - # Code from module strndup: - # Code from module strnlen: - # Code from module strnlen1: - # Code from module sys_stat: - # Code from module sys_types: - # Code from module sysexits: - # Code from module threadlib: - - - - # Code from module time: - # Code from module unistd: - # Code from module unistd-safer: - # Code from module unitypes: - # Code from module uniwidth/base: - # Code from module uniwidth/width: - # Code from module vasnprintf: - # Code from module verify: - # Code from module vsnprintf: - # Code from module wchar: - # Code from module wcrtomb: - # Code from module wctype-h: - # Code from module wcwidth: - # Code from module xalloc-oversized: - # Code from module xsize: - -ac_ext=cpp -ac_cpp='$CXXCPP $CPPFLAGS' -ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5' -ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' -ac_compiler_gnu=$ac_cv_cxx_compiler_gnu -if test -z "$CXX"; then - if test -n "$CCC"; then - CXX=$CCC - else - if test -n "$ac_tool_prefix"; then - for ac_prog in g++ c++ gpp aCC CC cxx cc++ cl.exe FCC KCC RCC xlC_r xlC - do - # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args. -set dummy $ac_tool_prefix$ac_prog; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_CXX+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test -n "$CXX"; then - ac_cv_prog_CXX="$CXX" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_CXX="$ac_tool_prefix$ac_prog" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -CXX=$ac_cv_prog_CXX -if test -n "$CXX"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CXX" >&5 -$as_echo "$CXX" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - - - test -n "$CXX" && break - done -fi -if test -z "$CXX"; then - ac_ct_CXX=$CXX - for ac_prog in g++ c++ gpp aCC CC cxx cc++ cl.exe FCC KCC RCC xlC_r xlC -do - # Extract the first word of "$ac_prog", so it can be a program name with args. -set dummy $ac_prog; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_ac_ct_CXX+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test -n "$ac_ct_CXX"; then - ac_cv_prog_ac_ct_CXX="$ac_ct_CXX" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_ac_ct_CXX="$ac_prog" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -ac_ct_CXX=$ac_cv_prog_ac_ct_CXX -if test -n "$ac_ct_CXX"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CXX" >&5 -$as_echo "$ac_ct_CXX" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - - - test -n "$ac_ct_CXX" && break -done - - if test "x$ac_ct_CXX" = x; then - CXX="g++" - else - case $cross_compiling:$ac_tool_warned in -yes:) -{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 -$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} -ac_tool_warned=yes ;; -esac - CXX=$ac_ct_CXX - fi -fi - - fi -fi -# Provide some information about the compiler. -$as_echo "$as_me:${as_lineno-$LINENO}: checking for C++ compiler version" >&5 -set X $ac_compile -ac_compiler=$2 -for ac_option in --version -v -V -qversion; do - { { ac_try="$ac_compiler $ac_option >&5" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" -$as_echo "$ac_try_echo"; } >&5 - (eval "$ac_compiler $ac_option >&5") 2>conftest.err - ac_status=$? - if test -s conftest.err; then - sed '10a\ -... rest of stderr output deleted ... - 10q' conftest.err >conftest.er1 - cat conftest.er1 >&5 - fi - rm -f conftest.er1 conftest.err - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; } -done - -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are using the GNU C++ compiler" >&5 -$as_echo_n "checking whether we are using the GNU C++ compiler... " >&6; } -if ${ac_cv_cxx_compiler_gnu+:} false; then : - $as_echo_n "(cached) " >&6 -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -int -main () -{ -#ifndef __GNUC__ - choke me -#endif - - ; - return 0; -} -_ACEOF -if ac_fn_cxx_try_compile "$LINENO"; then : - ac_compiler_gnu=yes -else - ac_compiler_gnu=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -ac_cv_cxx_compiler_gnu=$ac_compiler_gnu - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_cxx_compiler_gnu" >&5 -$as_echo "$ac_cv_cxx_compiler_gnu" >&6; } -if test $ac_compiler_gnu = yes; then - GXX=yes -else - GXX= -fi -ac_test_CXXFLAGS=${CXXFLAGS+set} -ac_save_CXXFLAGS=$CXXFLAGS -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CXX accepts -g" >&5 -$as_echo_n "checking whether $CXX accepts -g... " >&6; } -if ${ac_cv_prog_cxx_g+:} false; then : - $as_echo_n "(cached) " >&6 -else - ac_save_cxx_werror_flag=$ac_cxx_werror_flag - ac_cxx_werror_flag=yes - ac_cv_prog_cxx_g=no - CXXFLAGS="-g" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -int -main () -{ - - ; - return 0; -} -_ACEOF -if ac_fn_cxx_try_compile "$LINENO"; then : - ac_cv_prog_cxx_g=yes -else - CXXFLAGS="" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -int -main () -{ - - ; - return 0; -} -_ACEOF -if ac_fn_cxx_try_compile "$LINENO"; then : - -else - ac_cxx_werror_flag=$ac_save_cxx_werror_flag - CXXFLAGS="-g" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -int -main () -{ - - ; - return 0; -} -_ACEOF -if ac_fn_cxx_try_compile "$LINENO"; then : - ac_cv_prog_cxx_g=yes -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - ac_cxx_werror_flag=$ac_save_cxx_werror_flag -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cxx_g" >&5 -$as_echo "$ac_cv_prog_cxx_g" >&6; } -if test "$ac_test_CXXFLAGS" = set; then - CXXFLAGS=$ac_save_CXXFLAGS -elif test $ac_cv_prog_cxx_g = yes; then - if test "$GXX" = yes; then - CXXFLAGS="-g -O2" - else - CXXFLAGS="-g" - fi -else - if test "$GXX" = yes; then - CXXFLAGS="-O2" - else - CXXFLAGS= - fi -fi -ac_ext=c -ac_cpp='$CPP $CPPFLAGS' -ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' -ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' -ac_compiler_gnu=$ac_cv_c_compiler_gnu - -depcc="$CXX" am_compiler_list= - -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking dependency style of $depcc" >&5 -$as_echo_n "checking dependency style of $depcc... " >&6; } -if ${am_cv_CXX_dependencies_compiler_type+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then - # We make a subdir and do the tests there. Otherwise we can end up - # making bogus files that we don't know about and never remove. For - # instance it was reported that on HP-UX the gcc test will end up - # making a dummy file named 'D' -- because '-MD' means "put the output - # in D". - rm -rf conftest.dir - mkdir conftest.dir - # Copy depcomp to subdir because otherwise we won't find it if we're - # using a relative directory. - cp "$am_depcomp" conftest.dir - cd conftest.dir - # We will build objects and dependencies in a subdirectory because - # it helps to detect inapplicable dependency modes. For instance - # both Tru64's cc and ICC support -MD to output dependencies as a - # side effect of compilation, but ICC will put the dependencies in - # the current directory while Tru64 will put them in the object - # directory. - mkdir sub - - am_cv_CXX_dependencies_compiler_type=none - if test "$am_compiler_list" = ""; then - am_compiler_list=`sed -n 's/^#*\([a-zA-Z0-9]*\))$/\1/p' < ./depcomp` - fi - am__universal=false - case " $depcc " in #( - *\ -arch\ *\ -arch\ *) am__universal=true ;; - esac - - for depmode in $am_compiler_list; do - # Setup a source with many dependencies, because some compilers - # like to wrap large dependency lists on column 80 (with \), and - # we should not choose a depcomp mode which is confused by this. - # - # We need to recreate these files for each test, as the compiler may - # overwrite some of them when testing with obscure command lines. - # This happens at least with the AIX C compiler. - : > sub/conftest.c - for i in 1 2 3 4 5 6; do - echo '#include "conftst'$i'.h"' >> sub/conftest.c - # Using ": > sub/conftst$i.h" creates only sub/conftst1.h with - # Solaris 10 /bin/sh. - echo '/* dummy */' > sub/conftst$i.h - done - echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf - - # We check with '-c' and '-o' for the sake of the "dashmstdout" - # mode. It turns out that the SunPro C++ compiler does not properly - # handle '-M -o', and we need to detect this. Also, some Intel - # versions had trouble with output in subdirs. - am__obj=sub/conftest.${OBJEXT-o} - am__minus_obj="-o $am__obj" - case $depmode in - gcc) - # This depmode causes a compiler race in universal mode. - test "$am__universal" = false || continue - ;; - nosideeffect) - # After this tag, mechanisms are not by side-effect, so they'll - # only be used when explicitly requested. - if test "x$enable_dependency_tracking" = xyes; then - continue - else - break - fi - ;; - msvc7 | msvc7msys | msvisualcpp | msvcmsys) - # This compiler won't grok '-c -o', but also, the minuso test has - # not run yet. These depmodes are late enough in the game, and - # so weak that their functioning should not be impacted. - am__obj=conftest.${OBJEXT-o} - am__minus_obj= - ;; - none) break ;; - esac - if depmode=$depmode \ - source=sub/conftest.c object=$am__obj \ - depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \ - $SHELL ./depcomp $depcc -c $am__minus_obj sub/conftest.c \ - >/dev/null 2>conftest.err && - grep sub/conftst1.h sub/conftest.Po > /dev/null 2>&1 && - grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 && - grep $am__obj sub/conftest.Po > /dev/null 2>&1 && - ${MAKE-make} -s -f confmf > /dev/null 2>&1; then - # icc doesn't choke on unknown options, it will just issue warnings - # or remarks (even with -Werror). So we grep stderr for any message - # that says an option was ignored or not supported. - # When given -MP, icc 7.0 and 7.1 complain thusly: - # icc: Command line warning: ignoring option '-M'; no argument required - # The diagnosis changed in icc 8.0: - # icc: Command line remark: option '-MP' not supported - if (grep 'ignoring option' conftest.err || - grep 'not supported' conftest.err) >/dev/null 2>&1; then :; else - am_cv_CXX_dependencies_compiler_type=$depmode - break - fi - fi - done - - cd .. - rm -rf conftest.dir -else - am_cv_CXX_dependencies_compiler_type=none -fi - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_CXX_dependencies_compiler_type" >&5 -$as_echo "$am_cv_CXX_dependencies_compiler_type" >&6; } -CXXDEPMODE=depmode=$am_cv_CXX_dependencies_compiler_type - - if - test "x$enable_dependency_tracking" != xno \ - && test "$am_cv_CXX_dependencies_compiler_type" = gcc3; then - am__fastdepCXX_TRUE= - am__fastdepCXX_FALSE='#' -else - am__fastdepCXX_TRUE='#' - am__fastdepCXX_FALSE= -fi - - - -# By default we simply use the C compiler to build assembly code. - -test "${CCAS+set}" = set || CCAS=$CC -test "${CCASFLAGS+set}" = set || CCASFLAGS=$CFLAGS - - - -depcc="$CCAS" am_compiler_list= - -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking dependency style of $depcc" >&5 -$as_echo_n "checking dependency style of $depcc... " >&6; } -if ${am_cv_CCAS_dependencies_compiler_type+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then - # We make a subdir and do the tests there. Otherwise we can end up - # making bogus files that we don't know about and never remove. For - # instance it was reported that on HP-UX the gcc test will end up - # making a dummy file named 'D' -- because '-MD' means "put the output - # in D". - rm -rf conftest.dir - mkdir conftest.dir - # Copy depcomp to subdir because otherwise we won't find it if we're - # using a relative directory. - cp "$am_depcomp" conftest.dir - cd conftest.dir - # We will build objects and dependencies in a subdirectory because - # it helps to detect inapplicable dependency modes. For instance - # both Tru64's cc and ICC support -MD to output dependencies as a - # side effect of compilation, but ICC will put the dependencies in - # the current directory while Tru64 will put them in the object - # directory. - mkdir sub - - am_cv_CCAS_dependencies_compiler_type=none - if test "$am_compiler_list" = ""; then - am_compiler_list=`sed -n 's/^#*\([a-zA-Z0-9]*\))$/\1/p' < ./depcomp` - fi - am__universal=false - - - for depmode in $am_compiler_list; do - # Setup a source with many dependencies, because some compilers - # like to wrap large dependency lists on column 80 (with \), and - # we should not choose a depcomp mode which is confused by this. - # - # We need to recreate these files for each test, as the compiler may - # overwrite some of them when testing with obscure command lines. - # This happens at least with the AIX C compiler. - : > sub/conftest.c - for i in 1 2 3 4 5 6; do - echo '#include "conftst'$i'.h"' >> sub/conftest.c - # Using ": > sub/conftst$i.h" creates only sub/conftst1.h with - # Solaris 10 /bin/sh. - echo '/* dummy */' > sub/conftst$i.h - done - echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf - - # We check with '-c' and '-o' for the sake of the "dashmstdout" - # mode. It turns out that the SunPro C++ compiler does not properly - # handle '-M -o', and we need to detect this. Also, some Intel - # versions had trouble with output in subdirs. - am__obj=sub/conftest.${OBJEXT-o} - am__minus_obj="-o $am__obj" - case $depmode in - gcc) - # This depmode causes a compiler race in universal mode. - test "$am__universal" = false || continue - ;; - nosideeffect) - # After this tag, mechanisms are not by side-effect, so they'll - # only be used when explicitly requested. - if test "x$enable_dependency_tracking" = xyes; then - continue - else - break - fi - ;; - msvc7 | msvc7msys | msvisualcpp | msvcmsys) - # This compiler won't grok '-c -o', but also, the minuso test has - # not run yet. These depmodes are late enough in the game, and - # so weak that their functioning should not be impacted. - am__obj=conftest.${OBJEXT-o} - am__minus_obj= - ;; - none) break ;; - esac - if depmode=$depmode \ - source=sub/conftest.c object=$am__obj \ - depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \ - $SHELL ./depcomp $depcc -c $am__minus_obj sub/conftest.c \ - >/dev/null 2>conftest.err && - grep sub/conftst1.h sub/conftest.Po > /dev/null 2>&1 && - grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 && - grep $am__obj sub/conftest.Po > /dev/null 2>&1 && - ${MAKE-make} -s -f confmf > /dev/null 2>&1; then - # icc doesn't choke on unknown options, it will just issue warnings - # or remarks (even with -Werror). So we grep stderr for any message - # that says an option was ignored or not supported. - # When given -MP, icc 7.0 and 7.1 complain thusly: - # icc: Command line warning: ignoring option '-M'; no argument required - # The diagnosis changed in icc 8.0: - # icc: Command line remark: option '-MP' not supported - if (grep 'ignoring option' conftest.err || - grep 'not supported' conftest.err) >/dev/null 2>&1; then :; else - am_cv_CCAS_dependencies_compiler_type=$depmode - break - fi - fi - done - - cd .. - rm -rf conftest.dir -else - am_cv_CCAS_dependencies_compiler_type=none -fi - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_CCAS_dependencies_compiler_type" >&5 -$as_echo "$am_cv_CCAS_dependencies_compiler_type" >&6; } -CCASDEPMODE=depmode=$am_cv_CCAS_dependencies_compiler_type - - if - test "x$enable_dependency_tracking" != xno \ - && test "$am_cv_CCAS_dependencies_compiler_type" = gcc3; then - am__fastdepCCAS_TRUE= - am__fastdepCCAS_FALSE='#' -else - am__fastdepCCAS_TRUE='#' - am__fastdepCCAS_FALSE= -fi - - - - - - - - - if test -n "$PYTHON"; then - # If the user set $PYTHON, use it and don't search something else. - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $PYTHON version is >= 2.6" >&5 -$as_echo_n "checking whether $PYTHON version is >= 2.6... " >&6; } - prog="import sys -# split strings by '.' and convert to numeric. Append some zeros -# because we need at least 4 digits for the hex conversion. -# map returns an iterator in Python 3.0 and a list in 2.x -minver = list(map(int, '2.6'.split('.'))) + [0, 0, 0] -minverhex = 0 -# xrange is not present in Python 3.0 and range returns an iterator -for i in list(range(0, 4)): minverhex = (minverhex << 8) + minver[i] -sys.exit(sys.hexversion < minverhex)" - if { echo "$as_me:$LINENO: $PYTHON -c "$prog"" >&5 - ($PYTHON -c "$prog") >&5 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; then : - { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -$as_echo "yes" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } - as_fn_error $? "Python interpreter is too old" "$LINENO" 5 -fi - am_display_PYTHON=$PYTHON - else - # Otherwise, try each interpreter until we find one that satisfies - # VERSION. - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for a Python interpreter with version >= 2.6" >&5 -$as_echo_n "checking for a Python interpreter with version >= 2.6... " >&6; } -if ${am_cv_pathless_PYTHON+:} false; then : - $as_echo_n "(cached) " >&6 -else - - for am_cv_pathless_PYTHON in python python2 python3 python3.3 python3.2 python3.1 python3.0 python2.7 python2.6 python2.5 python2.4 python2.3 python2.2 python2.1 python2.0 none; do - test "$am_cv_pathless_PYTHON" = none && break - prog="import sys -# split strings by '.' and convert to numeric. Append some zeros -# because we need at least 4 digits for the hex conversion. -# map returns an iterator in Python 3.0 and a list in 2.x -minver = list(map(int, '2.6'.split('.'))) + [0, 0, 0] -minverhex = 0 -# xrange is not present in Python 3.0 and range returns an iterator -for i in list(range(0, 4)): minverhex = (minverhex << 8) + minver[i] -sys.exit(sys.hexversion < minverhex)" - if { echo "$as_me:$LINENO: $am_cv_pathless_PYTHON -c "$prog"" >&5 - ($am_cv_pathless_PYTHON -c "$prog") >&5 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; then : - break -fi - done -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_pathless_PYTHON" >&5 -$as_echo "$am_cv_pathless_PYTHON" >&6; } - # Set $PYTHON to the absolute path of $am_cv_pathless_PYTHON. - if test "$am_cv_pathless_PYTHON" = none; then - PYTHON=: - else - # Extract the first word of "$am_cv_pathless_PYTHON", so it can be a program name with args. -set dummy $am_cv_pathless_PYTHON; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_path_PYTHON+:} false; then : - $as_echo_n "(cached) " >&6 -else - case $PYTHON in - [\\/]* | ?:[\\/]*) - ac_cv_path_PYTHON="$PYTHON" # Let the user override the test with a path. - ;; - *) - as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_path_PYTHON="$as_dir/$ac_word$ac_exec_ext" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - - ;; -esac -fi -PYTHON=$ac_cv_path_PYTHON -if test -n "$PYTHON"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PYTHON" >&5 -$as_echo "$PYTHON" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - - - fi - am_display_PYTHON=$am_cv_pathless_PYTHON - fi - - - if test "$PYTHON" = :; then - as_fn_error $? "no suitable Python interpreter found" "$LINENO" 5 - else - - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $am_display_PYTHON version" >&5 -$as_echo_n "checking for $am_display_PYTHON version... " >&6; } -if ${am_cv_python_version+:} false; then : - $as_echo_n "(cached) " >&6 -else - am_cv_python_version=`$PYTHON -c "import sys; sys.stdout.write(sys.version[:3])"` -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_python_version" >&5 -$as_echo "$am_cv_python_version" >&6; } - PYTHON_VERSION=$am_cv_python_version - - - - PYTHON_PREFIX='${prefix}' - - PYTHON_EXEC_PREFIX='${exec_prefix}' - - - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $am_display_PYTHON platform" >&5 -$as_echo_n "checking for $am_display_PYTHON platform... " >&6; } -if ${am_cv_python_platform+:} false; then : - $as_echo_n "(cached) " >&6 -else - am_cv_python_platform=`$PYTHON -c "import sys; sys.stdout.write(sys.platform)"` -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_python_platform" >&5 -$as_echo "$am_cv_python_platform" >&6; } - PYTHON_PLATFORM=$am_cv_python_platform - - - # Just factor out some code duplication. - am_python_setup_sysconfig="\ -import sys -# Prefer sysconfig over distutils.sysconfig, for better compatibility -# with python 3.x. See automake bug#10227. -try: - import sysconfig -except ImportError: - can_use_sysconfig = 0 -else: - can_use_sysconfig = 1 -# Can't use sysconfig in CPython 2.7, since it's broken in virtualenvs: -# -try: - from platform import python_implementation - if python_implementation() == 'CPython' and sys.version[:3] == '2.7': - can_use_sysconfig = 0 -except ImportError: - pass" - - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $am_display_PYTHON script directory" >&5 -$as_echo_n "checking for $am_display_PYTHON script directory... " >&6; } -if ${am_cv_python_pythondir+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test "x$prefix" = xNONE - then - am_py_prefix=$ac_default_prefix - else - am_py_prefix=$prefix - fi - am_cv_python_pythondir=`$PYTHON -c " -$am_python_setup_sysconfig -if can_use_sysconfig: - sitedir = sysconfig.get_path('purelib', vars={'base':'$am_py_prefix'}) -else: - from distutils import sysconfig - sitedir = sysconfig.get_python_lib(0, 0, prefix='$am_py_prefix') -sys.stdout.write(sitedir)"` - case $am_cv_python_pythondir in - $am_py_prefix*) - am__strip_prefix=`echo "$am_py_prefix" | sed 's|.|.|g'` - am_cv_python_pythondir=`echo "$am_cv_python_pythondir" | sed "s,^$am__strip_prefix,$PYTHON_PREFIX,"` - ;; - *) - case $am_py_prefix in - /usr|/System*) ;; - *) - am_cv_python_pythondir=$PYTHON_PREFIX/lib/python$PYTHON_VERSION/site-packages - ;; - esac - ;; - esac - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_python_pythondir" >&5 -$as_echo "$am_cv_python_pythondir" >&6; } - pythondir=$am_cv_python_pythondir - - - - pkgpythondir=\${pythondir}/$PACKAGE - - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $am_display_PYTHON extension module directory" >&5 -$as_echo_n "checking for $am_display_PYTHON extension module directory... " >&6; } -if ${am_cv_python_pyexecdir+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test "x$exec_prefix" = xNONE - then - am_py_exec_prefix=$am_py_prefix - else - am_py_exec_prefix=$exec_prefix - fi - am_cv_python_pyexecdir=`$PYTHON -c " -$am_python_setup_sysconfig -if can_use_sysconfig: - sitedir = sysconfig.get_path('platlib', vars={'platbase':'$am_py_prefix'}) -else: - from distutils import sysconfig - sitedir = sysconfig.get_python_lib(1, 0, prefix='$am_py_prefix') -sys.stdout.write(sitedir)"` - case $am_cv_python_pyexecdir in - $am_py_exec_prefix*) - am__strip_prefix=`echo "$am_py_exec_prefix" | sed 's|.|.|g'` - am_cv_python_pyexecdir=`echo "$am_cv_python_pyexecdir" | sed "s,^$am__strip_prefix,$PYTHON_EXEC_PREFIX,"` - ;; - *) - case $am_py_exec_prefix in - /usr|/System*) ;; - *) - am_cv_python_pyexecdir=$PYTHON_EXEC_PREFIX/lib/python$PYTHON_VERSION/site-packages - ;; - esac - ;; - esac - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_python_pyexecdir" >&5 -$as_echo "$am_cv_python_pyexecdir" >&6; } - pyexecdir=$am_cv_python_pyexecdir - - - - pkgpyexecdir=\${pyexecdir}/$PACKAGE - - - - fi - - - -# Must be GCC. -test "x$GCC" = xyes || as_fn_error $? "GCC is required" "$LINENO" 5 - -# Extract the first word of "$CXX", so it can be a program name with args. -set dummy $CXX; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_HAVE_CXX+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test -n "$HAVE_CXX"; then - ac_cv_prog_HAVE_CXX="$HAVE_CXX" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_HAVE_CXX="yes" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - - test -z "$ac_cv_prog_HAVE_CXX" && ac_cv_prog_HAVE_CXX="no" -fi -fi -HAVE_CXX=$ac_cv_prog_HAVE_CXX -if test -n "$HAVE_CXX"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $HAVE_CXX" >&5 -$as_echo "$HAVE_CXX" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - - - - -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for a sed that does not truncate output" >&5 -$as_echo_n "checking for a sed that does not truncate output... " >&6; } -if ${ac_cv_path_SED+:} false; then : - $as_echo_n "(cached) " >&6 -else - ac_script=s/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb/ - for ac_i in 1 2 3 4 5 6 7; do - ac_script="$ac_script$as_nl$ac_script" - done - echo "$ac_script" 2>/dev/null | sed 99q >conftest.sed - { ac_script=; unset ac_script;} - if test -z "$SED"; then - ac_path_SED_found=false - # Loop through the user's path and test for each of PROGNAME-LIST - as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_prog in sed gsed; do - for ac_exec_ext in '' $ac_executable_extensions; do - ac_path_SED="$as_dir/$ac_prog$ac_exec_ext" - as_fn_executable_p "$ac_path_SED" || continue -# Check for GNU ac_path_SED and select it if it is found. - # Check for GNU $ac_path_SED -case `"$ac_path_SED" --version 2>&1` in -*GNU*) - ac_cv_path_SED="$ac_path_SED" ac_path_SED_found=:;; -*) - ac_count=0 - $as_echo_n 0123456789 >"conftest.in" - while : - do - cat "conftest.in" "conftest.in" >"conftest.tmp" - mv "conftest.tmp" "conftest.in" - cp "conftest.in" "conftest.nl" - $as_echo '' >> "conftest.nl" - "$ac_path_SED" -f conftest.sed < "conftest.nl" >"conftest.out" 2>/dev/null || break - diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break - as_fn_arith $ac_count + 1 && ac_count=$as_val - if test $ac_count -gt ${ac_path_SED_max-0}; then - # Best one so far, save it but keep looking for a better one - ac_cv_path_SED="$ac_path_SED" - ac_path_SED_max=$ac_count - fi - # 10*(2^10) chars as input seems more than enough - test $ac_count -gt 10 && break - done - rm -f conftest.in conftest.tmp conftest.nl conftest.out;; -esac - - $ac_path_SED_found && break 3 - done - done - done -IFS=$as_save_IFS - if test -z "$ac_cv_path_SED"; then - as_fn_error $? "no acceptable sed could be found in \$PATH" "$LINENO" 5 - fi -else - ac_cv_path_SED=$SED -fi - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_SED" >&5 -$as_echo "$ac_cv_path_SED" >&6; } - SED="$ac_cv_path_SED" - rm -f conftest.sed - - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether NLS is requested" >&5 -$as_echo_n "checking whether NLS is requested... " >&6; } - # Check whether --enable-nls was given. -if test "${enable_nls+set}" = set; then : - enableval=$enable_nls; USE_NLS=$enableval -else - USE_NLS=yes -fi - - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $USE_NLS" >&5 -$as_echo "$USE_NLS" >&6; } - - - - - GETTEXT_MACRO_VERSION=0.18 - - - - -# Prepare PATH_SEPARATOR. -# The user is always right. -if test "${PATH_SEPARATOR+set}" != set; then - # Determine PATH_SEPARATOR by trying to find /bin/sh in a PATH which - # contains only /bin. Note that ksh looks also at the FPATH variable, - # so we have to set that as well for the test. - PATH_SEPARATOR=: - (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 \ - && { (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 \ - || PATH_SEPARATOR=';' - } -fi - -# Find out how to test for executable files. Don't use a zero-byte file, -# as systems may use methods other than mode bits to determine executability. -cat >conf$$.file <<_ASEOF -#! /bin/sh -exit 0 -_ASEOF -chmod +x conf$$.file -if test -x conf$$.file >/dev/null 2>&1; then - ac_executable_p="test -x" -else - ac_executable_p="test -f" -fi -rm -f conf$$.file - -# Extract the first word of "msgfmt", so it can be a program name with args. -set dummy msgfmt; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_path_MSGFMT+:} false; then : - $as_echo_n "(cached) " >&6 -else - case "$MSGFMT" in - [\\/]* | ?:[\\/]*) - ac_cv_path_MSGFMT="$MSGFMT" # Let the user override the test with a path. - ;; - *) - ac_save_IFS="$IFS"; IFS=$PATH_SEPARATOR - for ac_dir in $PATH; do - IFS="$ac_save_IFS" - test -z "$ac_dir" && ac_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if $ac_executable_p "$ac_dir/$ac_word$ac_exec_ext"; then - echo "$as_me: trying $ac_dir/$ac_word..." >&5 - if $ac_dir/$ac_word --statistics /dev/null >&5 2>&1 && - (if $ac_dir/$ac_word --statistics /dev/null 2>&1 >/dev/null | grep usage >/dev/null; then exit 1; else exit 0; fi); then - ac_cv_path_MSGFMT="$ac_dir/$ac_word$ac_exec_ext" - break 2 - fi - fi - done - done - IFS="$ac_save_IFS" - test -z "$ac_cv_path_MSGFMT" && ac_cv_path_MSGFMT=":" - ;; -esac -fi -MSGFMT="$ac_cv_path_MSGFMT" -if test "$MSGFMT" != ":"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MSGFMT" >&5 -$as_echo "$MSGFMT" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - - # Extract the first word of "gmsgfmt", so it can be a program name with args. -set dummy gmsgfmt; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_path_GMSGFMT+:} false; then : - $as_echo_n "(cached) " >&6 -else - case $GMSGFMT in - [\\/]* | ?:[\\/]*) - ac_cv_path_GMSGFMT="$GMSGFMT" # Let the user override the test with a path. - ;; - *) - as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_path_GMSGFMT="$as_dir/$ac_word$ac_exec_ext" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - - test -z "$ac_cv_path_GMSGFMT" && ac_cv_path_GMSGFMT="$MSGFMT" - ;; -esac -fi -GMSGFMT=$ac_cv_path_GMSGFMT -if test -n "$GMSGFMT"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $GMSGFMT" >&5 -$as_echo "$GMSGFMT" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - - - - case `$MSGFMT --version | sed 1q | sed -e 's,^[^0-9]*,,'` in - '' | 0.[0-9] | 0.[0-9].* | 0.1[0-4] | 0.1[0-4].*) MSGFMT_015=: ;; - *) MSGFMT_015=$MSGFMT ;; - esac - - case `$GMSGFMT --version | sed 1q | sed -e 's,^[^0-9]*,,'` in - '' | 0.[0-9] | 0.[0-9].* | 0.1[0-4] | 0.1[0-4].*) GMSGFMT_015=: ;; - *) GMSGFMT_015=$GMSGFMT ;; - esac - - - -# Prepare PATH_SEPARATOR. -# The user is always right. -if test "${PATH_SEPARATOR+set}" != set; then - # Determine PATH_SEPARATOR by trying to find /bin/sh in a PATH which - # contains only /bin. Note that ksh looks also at the FPATH variable, - # so we have to set that as well for the test. - PATH_SEPARATOR=: - (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 \ - && { (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 \ - || PATH_SEPARATOR=';' - } -fi - -# Find out how to test for executable files. Don't use a zero-byte file, -# as systems may use methods other than mode bits to determine executability. -cat >conf$$.file <<_ASEOF -#! /bin/sh -exit 0 -_ASEOF -chmod +x conf$$.file -if test -x conf$$.file >/dev/null 2>&1; then - ac_executable_p="test -x" -else - ac_executable_p="test -f" -fi -rm -f conf$$.file - -# Extract the first word of "xgettext", so it can be a program name with args. -set dummy xgettext; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_path_XGETTEXT+:} false; then : - $as_echo_n "(cached) " >&6 -else - case "$XGETTEXT" in - [\\/]* | ?:[\\/]*) - ac_cv_path_XGETTEXT="$XGETTEXT" # Let the user override the test with a path. - ;; - *) - ac_save_IFS="$IFS"; IFS=$PATH_SEPARATOR - for ac_dir in $PATH; do - IFS="$ac_save_IFS" - test -z "$ac_dir" && ac_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if $ac_executable_p "$ac_dir/$ac_word$ac_exec_ext"; then - echo "$as_me: trying $ac_dir/$ac_word..." >&5 - if $ac_dir/$ac_word --omit-header --copyright-holder= --msgid-bugs-address= /dev/null >&5 2>&1 && - (if $ac_dir/$ac_word --omit-header --copyright-holder= --msgid-bugs-address= /dev/null 2>&1 >/dev/null | grep usage >/dev/null; then exit 1; else exit 0; fi); then - ac_cv_path_XGETTEXT="$ac_dir/$ac_word$ac_exec_ext" - break 2 - fi - fi - done - done - IFS="$ac_save_IFS" - test -z "$ac_cv_path_XGETTEXT" && ac_cv_path_XGETTEXT=":" - ;; -esac -fi -XGETTEXT="$ac_cv_path_XGETTEXT" -if test "$XGETTEXT" != ":"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $XGETTEXT" >&5 -$as_echo "$XGETTEXT" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - - rm -f messages.po - - case `$XGETTEXT --version | sed 1q | sed -e 's,^[^0-9]*,,'` in - '' | 0.[0-9] | 0.[0-9].* | 0.1[0-4] | 0.1[0-4].*) XGETTEXT_015=: ;; - *) XGETTEXT_015=$XGETTEXT ;; - esac - - - -# Prepare PATH_SEPARATOR. -# The user is always right. -if test "${PATH_SEPARATOR+set}" != set; then - # Determine PATH_SEPARATOR by trying to find /bin/sh in a PATH which - # contains only /bin. Note that ksh looks also at the FPATH variable, - # so we have to set that as well for the test. - PATH_SEPARATOR=: - (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 \ - && { (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 \ - || PATH_SEPARATOR=';' - } -fi - -# Find out how to test for executable files. Don't use a zero-byte file, -# as systems may use methods other than mode bits to determine executability. -cat >conf$$.file <<_ASEOF -#! /bin/sh -exit 0 -_ASEOF -chmod +x conf$$.file -if test -x conf$$.file >/dev/null 2>&1; then - ac_executable_p="test -x" -else - ac_executable_p="test -f" -fi -rm -f conf$$.file - -# Extract the first word of "msgmerge", so it can be a program name with args. -set dummy msgmerge; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_path_MSGMERGE+:} false; then : - $as_echo_n "(cached) " >&6 -else - case "$MSGMERGE" in - [\\/]* | ?:[\\/]*) - ac_cv_path_MSGMERGE="$MSGMERGE" # Let the user override the test with a path. - ;; - *) - ac_save_IFS="$IFS"; IFS=$PATH_SEPARATOR - for ac_dir in $PATH; do - IFS="$ac_save_IFS" - test -z "$ac_dir" && ac_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if $ac_executable_p "$ac_dir/$ac_word$ac_exec_ext"; then - echo "$as_me: trying $ac_dir/$ac_word..." >&5 - if $ac_dir/$ac_word --update -q /dev/null /dev/null >&5 2>&1; then - ac_cv_path_MSGMERGE="$ac_dir/$ac_word$ac_exec_ext" - break 2 - fi - fi - done - done - IFS="$ac_save_IFS" - test -z "$ac_cv_path_MSGMERGE" && ac_cv_path_MSGMERGE=":" - ;; -esac -fi -MSGMERGE="$ac_cv_path_MSGMERGE" -if test "$MSGMERGE" != ":"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MSGMERGE" >&5 -$as_echo "$MSGMERGE" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - - - test -n "$localedir" || localedir='${datadir}/locale' - - - test -n "${XGETTEXT_EXTRA_OPTIONS+set}" || XGETTEXT_EXTRA_OPTIONS= - - - ac_config_commands="$ac_config_commands po-directories" - - - - if test "X$prefix" = "XNONE"; then - acl_final_prefix="$ac_default_prefix" - else - acl_final_prefix="$prefix" - fi - if test "X$exec_prefix" = "XNONE"; then - acl_final_exec_prefix='${prefix}' - else - acl_final_exec_prefix="$exec_prefix" - fi - acl_save_prefix="$prefix" - prefix="$acl_final_prefix" - eval acl_final_exec_prefix=\"$acl_final_exec_prefix\" - prefix="$acl_save_prefix" - - - -# Check whether --with-gnu-ld was given. -if test "${with_gnu_ld+set}" = set; then : - withval=$with_gnu_ld; test "$withval" = no || with_gnu_ld=yes -else - with_gnu_ld=no -fi - -# Prepare PATH_SEPARATOR. -# The user is always right. -if test "${PATH_SEPARATOR+set}" != set; then - # Determine PATH_SEPARATOR by trying to find /bin/sh in a PATH which - # contains only /bin. Note that ksh looks also at the FPATH variable, - # so we have to set that as well for the test. - PATH_SEPARATOR=: - (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 \ - && { (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 \ - || PATH_SEPARATOR=';' - } -fi - -if test -n "$LD"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ld" >&5 -$as_echo_n "checking for ld... " >&6; } -elif test "$GCC" = yes; then - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ld used by $CC" >&5 -$as_echo_n "checking for ld used by $CC... " >&6; } -elif test "$with_gnu_ld" = yes; then - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for GNU ld" >&5 -$as_echo_n "checking for GNU ld... " >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for non-GNU ld" >&5 -$as_echo_n "checking for non-GNU ld... " >&6; } -fi -if test -n "$LD"; then - # Let the user override the test with a path. - : -else - if ${acl_cv_path_LD+:} false; then : - $as_echo_n "(cached) " >&6 -else - - acl_cv_path_LD= # Final result of this test - ac_prog=ld # Program to search in $PATH - if test "$GCC" = yes; then - # Check if gcc -print-prog-name=ld gives a path. - case $host in - *-*-mingw*) - # gcc leaves a trailing carriage return which upsets mingw - acl_output=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;; - *) - acl_output=`($CC -print-prog-name=ld) 2>&5` ;; - esac - case $acl_output in - # Accept absolute paths. - [\\/]* | ?:[\\/]*) - re_direlt='/[^/][^/]*/\.\./' - # Canonicalize the pathname of ld - acl_output=`echo "$acl_output" | sed 's%\\\\%/%g'` - while echo "$acl_output" | grep "$re_direlt" > /dev/null 2>&1; do - acl_output=`echo $acl_output | sed "s%$re_direlt%/%"` - done - # Got the pathname. No search in PATH is needed. - acl_cv_path_LD="$acl_output" - ac_prog= - ;; - "") - # If it fails, then pretend we aren't using GCC. - ;; - *) - # If it is relative, then search for the first ld in PATH. - with_gnu_ld=unknown - ;; - esac - fi - if test -n "$ac_prog"; then - # Search for $ac_prog in $PATH. - acl_save_ifs="$IFS"; IFS=$PATH_SEPARATOR - for ac_dir in $PATH; do - IFS="$acl_save_ifs" - test -z "$ac_dir" && ac_dir=. - if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then - acl_cv_path_LD="$ac_dir/$ac_prog" - # Check to see if the program is GNU ld. I'd rather use --version, - # but apparently some variants of GNU ld only accept -v. - # Break only if it was the GNU/non-GNU ld that we prefer. - case `"$acl_cv_path_LD" -v 2>&1 conftest.$ac_ext -/* end confdefs.h. */ -#if defined __powerpc64__ || defined _ARCH_PPC64 - int ok; - #else - error fail - #endif - -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - # The compiler produces 64-bit code. Add option '-b64' so that the - # linker groks 64-bit object files. - case "$acl_cv_path_LD " in - *" -b64 "*) ;; - *) acl_cv_path_LD="$acl_cv_path_LD -b64" ;; - esac - -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - ;; - sparc64-*-netbsd*) - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#if defined __sparcv9 || defined __arch64__ - int ok; - #else - error fail - #endif - -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - -else - # The compiler produces 32-bit code. Add option '-m elf32_sparc' - # so that the linker groks 32-bit object files. - case "$acl_cv_path_LD " in - *" -m elf32_sparc "*) ;; - *) acl_cv_path_LD="$acl_cv_path_LD -m elf32_sparc" ;; - esac - -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - ;; - esac - -fi - - LD="$acl_cv_path_LD" -fi -if test -n "$LD"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $LD" >&5 -$as_echo "$LD" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } - as_fn_error $? "no acceptable ld found in \$PATH" "$LINENO" 5 -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if the linker ($LD) is GNU ld" >&5 -$as_echo_n "checking if the linker ($LD) is GNU ld... " >&6; } -if ${acl_cv_prog_gnu_ld+:} false; then : - $as_echo_n "(cached) " >&6 -else - # I'd rather use --version here, but apparently some GNU lds only accept -v. -case `$LD -v 2>&1 &5 -$as_echo "$acl_cv_prog_gnu_ld" >&6; } -with_gnu_ld=$acl_cv_prog_gnu_ld - - - - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for shared library run path origin" >&5 -$as_echo_n "checking for shared library run path origin... " >&6; } -if ${acl_cv_rpath+:} false; then : - $as_echo_n "(cached) " >&6 -else - - CC="$CC" GCC="$GCC" LDFLAGS="$LDFLAGS" LD="$LD" with_gnu_ld="$with_gnu_ld" \ - ${CONFIG_SHELL-/bin/sh} "$ac_aux_dir/config.rpath" "$host" > conftest.sh - . ./conftest.sh - rm -f ./conftest.sh - acl_cv_rpath=done - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $acl_cv_rpath" >&5 -$as_echo "$acl_cv_rpath" >&6; } - wl="$acl_cv_wl" - acl_libext="$acl_cv_libext" - acl_shlibext="$acl_cv_shlibext" - acl_libname_spec="$acl_cv_libname_spec" - acl_library_names_spec="$acl_cv_library_names_spec" - acl_hardcode_libdir_flag_spec="$acl_cv_hardcode_libdir_flag_spec" - acl_hardcode_libdir_separator="$acl_cv_hardcode_libdir_separator" - acl_hardcode_direct="$acl_cv_hardcode_direct" - acl_hardcode_minus_L="$acl_cv_hardcode_minus_L" - # Check whether --enable-rpath was given. -if test "${enable_rpath+set}" = set; then : - enableval=$enable_rpath; : -else - enable_rpath=yes -fi - - - - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking 32-bit host C ABI" >&5 -$as_echo_n "checking 32-bit host C ABI... " >&6; } -if ${gl_cv_host_cpu_c_abi_32bit+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test -n "$gl_cv_host_cpu_c_abi"; then - case "$gl_cv_host_cpu_c_abi" in - i386 | x86_64-x32 | arm | armhf | arm64-ilp32 | hppa | ia64-ilp32 | mips | mipsn32 | powerpc | riscv*-ilp32* | s390 | sparc) - gl_cv_host_cpu_c_abi_32bit=yes ;; - *) - gl_cv_host_cpu_c_abi_32bit=no ;; - esac - else - case "$host_cpu" in - - i[4567]86 ) - gl_cv_host_cpu_c_abi_32bit=yes - ;; - - x86_64 ) - # On x86_64 systems, the C compiler may be generating code in one of - # these ABIs: - # - 64-bit instruction set, 64-bit pointers, 64-bit 'long': x86_64. - # - 64-bit instruction set, 64-bit pointers, 32-bit 'long': x86_64 - # with native Windows (mingw, MSVC). - # - 64-bit instruction set, 32-bit pointers, 32-bit 'long': x86_64-x32. - # - 32-bit instruction set, 32-bit pointers, 32-bit 'long': i386. - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#if (defined __x86_64__ || defined __amd64__ \ - || defined _M_X64 || defined _M_AMD64) \ - && !(defined __ILP32__ || defined _ILP32) - int ok; - #else - error fail - #endif - -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - gl_cv_host_cpu_c_abi_32bit=no -else - gl_cv_host_cpu_c_abi_32bit=yes -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - ;; - - arm* | aarch64 ) - # Assume arm with EABI. - # On arm64 systems, the C compiler may be generating code in one of - # these ABIs: - # - aarch64 instruction set, 64-bit pointers, 64-bit 'long': arm64. - # - aarch64 instruction set, 32-bit pointers, 32-bit 'long': arm64-ilp32. - # - 32-bit instruction set, 32-bit pointers, 32-bit 'long': arm or armhf. - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#if defined __aarch64__ && !(defined __ILP32__ || defined _ILP32) - int ok; - #else - error fail - #endif - -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - gl_cv_host_cpu_c_abi_32bit=no -else - gl_cv_host_cpu_c_abi_32bit=yes -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - ;; - - hppa1.0 | hppa1.1 | hppa2.0* | hppa64 ) - # On hppa, the C compiler may be generating 32-bit code or 64-bit - # code. In the latter case, it defines _LP64 and __LP64__. - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#ifdef __LP64__ - int ok; - #else - error fail - #endif - -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - gl_cv_host_cpu_c_abi_32bit=no -else - gl_cv_host_cpu_c_abi_32bit=yes -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - ;; - - ia64* ) - # On ia64 on HP-UX, the C compiler may be generating 64-bit code or - # 32-bit code. In the latter case, it defines _ILP32. - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#ifdef _ILP32 - int ok; - #else - error fail - #endif - -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - gl_cv_host_cpu_c_abi_32bit=yes -else - gl_cv_host_cpu_c_abi_32bit=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - ;; - - mips* ) - # We should also check for (_MIPS_SZPTR == 64), but gcc keeps this - # at 32. - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#if defined _MIPS_SZLONG && (_MIPS_SZLONG == 64) - int ok; - #else - error fail - #endif - -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - gl_cv_host_cpu_c_abi_32bit=no -else - gl_cv_host_cpu_c_abi_32bit=yes -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - ;; - - powerpc* ) - # Different ABIs are in use on AIX vs. Mac OS X vs. Linux,*BSD. - # No need to distinguish them here; the caller may distinguish - # them based on the OS. - # On powerpc64 systems, the C compiler may still be generating - # 32-bit code. And on powerpc-ibm-aix systems, the C compiler may - # be generating 64-bit code. - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#if defined __powerpc64__ || defined _ARCH_PPC64 - int ok; - #else - error fail - #endif - -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - gl_cv_host_cpu_c_abi_32bit=no -else - gl_cv_host_cpu_c_abi_32bit=yes -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - ;; - - rs6000 ) - gl_cv_host_cpu_c_abi_32bit=yes - ;; - - riscv32 | riscv64 ) - # There are 6 ABIs: ilp32, ilp32f, ilp32d, lp64, lp64f, lp64d. - # Size of 'long' and 'void *': - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#if defined __LP64__ - int ok; - #else - error fail - #endif - -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - gl_cv_host_cpu_c_abi_32bit=no -else - gl_cv_host_cpu_c_abi_32bit=yes -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - ;; - - s390* ) - # On s390x, the C compiler may be generating 64-bit (= s390x) code - # or 31-bit (= s390) code. - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#if defined __LP64__ || defined __s390x__ - int ok; - #else - error fail - #endif - -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - gl_cv_host_cpu_c_abi_32bit=no -else - gl_cv_host_cpu_c_abi_32bit=yes -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - ;; - - sparc | sparc64 ) - # UltraSPARCs running Linux have `uname -m` = "sparc64", but the - # C compiler still generates 32-bit code. - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#if defined __sparcv9 || defined __arch64__ - int ok; - #else - error fail - #endif - -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - gl_cv_host_cpu_c_abi_32bit=no -else - gl_cv_host_cpu_c_abi_32bit=yes -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - ;; - - *) - gl_cv_host_cpu_c_abi_32bit=no - ;; - esac - fi - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_host_cpu_c_abi_32bit" >&5 -$as_echo "$gl_cv_host_cpu_c_abi_32bit" >&6; } - - HOST_CPU_C_ABI_32BIT="$gl_cv_host_cpu_c_abi_32bit" - - - - - - case "$host_os" in - solaris*) - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for 64-bit host" >&5 -$as_echo_n "checking for 64-bit host... " >&6; } -if ${gl_cv_solaris_64bit+:} false; then : - $as_echo_n "(cached) " >&6 -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#ifdef _LP64 - int ok; - #else - error fail - #endif - -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - gl_cv_solaris_64bit=yes -else - gl_cv_solaris_64bit=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_solaris_64bit" >&5 -$as_echo "$gl_cv_solaris_64bit" >&6; };; - esac - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for the common suffixes of directories in the library search path" >&5 -$as_echo_n "checking for the common suffixes of directories in the library search path... " >&6; } -if ${acl_cv_libdirstems+:} false; then : - $as_echo_n "(cached) " >&6 -else - acl_libdirstem=lib - acl_libdirstem2= - case "$host_os" in - solaris*) - if test $gl_cv_solaris_64bit = yes; then - acl_libdirstem=lib/64 - case "$host_cpu" in - sparc*) acl_libdirstem2=lib/sparcv9 ;; - i*86 | x86_64) acl_libdirstem2=lib/amd64 ;; - esac - fi - ;; - *) - if test "$HOST_CPU_C_ABI_32BIT" != yes; then - searchpath=`(if test -f /usr/bin/gcc \ - && LC_ALL=C /usr/bin/gcc -print-search-dirs >/dev/null 2>/dev/null; then \ - LC_ALL=C /usr/bin/gcc -print-search-dirs; \ - else \ - LC_ALL=C $CC -print-search-dirs; \ - fi) 2>/dev/null \ - | sed -n -e 's,^libraries: ,,p' | sed -e 's,^=,,'` - if test -n "$searchpath"; then - acl_save_IFS="${IFS= }"; IFS=":" - for searchdir in $searchpath; do - if test -d "$searchdir"; then - case "$searchdir" in - */lib64/ | */lib64 ) acl_libdirstem=lib64 ;; - */../ | */.. ) - # Better ignore directories of this form. They are misleading. - ;; - *) searchdir=`cd "$searchdir" && pwd` - case "$searchdir" in - */lib64 ) acl_libdirstem=lib64 ;; - esac ;; - esac - fi - done - IFS="$acl_save_IFS" - fi - fi - ;; - esac - test -n "$acl_libdirstem2" || acl_libdirstem2="$acl_libdirstem" - acl_cv_libdirstems="$acl_libdirstem,$acl_libdirstem2" - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $acl_cv_libdirstems" >&5 -$as_echo "$acl_cv_libdirstems" >&6; } - # Decompose acl_cv_libdirstems into acl_libdirstem and acl_libdirstem2. - acl_libdirstem=`echo "$acl_cv_libdirstems" | sed -e 's/,.*//'` - acl_libdirstem2=`echo "$acl_cv_libdirstems" | sed -e '/,/s/.*,//'` - - - - - - - - - - - - use_additional=yes - - acl_save_prefix="$prefix" - prefix="$acl_final_prefix" - acl_save_exec_prefix="$exec_prefix" - exec_prefix="$acl_final_exec_prefix" - - eval additional_includedir=\"$includedir\" - eval additional_libdir=\"$libdir\" - - exec_prefix="$acl_save_exec_prefix" - prefix="$acl_save_prefix" - - -# Check whether --with-libiconv-prefix was given. -if test "${with_libiconv_prefix+set}" = set; then : - withval=$with_libiconv_prefix; - if test "X$withval" = "Xno"; then - use_additional=no - else - if test "X$withval" = "X"; then - - acl_save_prefix="$prefix" - prefix="$acl_final_prefix" - acl_save_exec_prefix="$exec_prefix" - exec_prefix="$acl_final_exec_prefix" - - eval additional_includedir=\"$includedir\" - eval additional_libdir=\"$libdir\" - - exec_prefix="$acl_save_exec_prefix" - prefix="$acl_save_prefix" - - else - additional_includedir="$withval/include" - additional_libdir="$withval/$acl_libdirstem" - if test "$acl_libdirstem2" != "$acl_libdirstem" \ - && test ! -d "$withval/$acl_libdirstem"; then - additional_libdir="$withval/$acl_libdirstem2" - fi - fi - fi - -fi - - LIBICONV= - LTLIBICONV= - INCICONV= - LIBICONV_PREFIX= - HAVE_LIBICONV= - rpathdirs= - ltrpathdirs= - names_already_handled= - names_next_round='iconv ' - while test -n "$names_next_round"; do - names_this_round="$names_next_round" - names_next_round= - for name in $names_this_round; do - already_handled= - for n in $names_already_handled; do - if test "$n" = "$name"; then - already_handled=yes - break - fi - done - if test -z "$already_handled"; then - names_already_handled="$names_already_handled $name" - uppername=`echo "$name" | sed -e 'y|abcdefghijklmnopqrstuvwxyz./+-|ABCDEFGHIJKLMNOPQRSTUVWXYZ____|'` - eval value=\"\$HAVE_LIB$uppername\" - if test -n "$value"; then - if test "$value" = yes; then - eval value=\"\$LIB$uppername\" - test -z "$value" || LIBICONV="${LIBICONV}${LIBICONV:+ }$value" - eval value=\"\$LTLIB$uppername\" - test -z "$value" || LTLIBICONV="${LTLIBICONV}${LTLIBICONV:+ }$value" - else - : - fi - else - found_dir= - found_la= - found_so= - found_a= - eval libname=\"$acl_libname_spec\" # typically: libname=lib$name - if test -n "$acl_shlibext"; then - shrext=".$acl_shlibext" # typically: shrext=.so - else - shrext= - fi - if test $use_additional = yes; then - dir="$additional_libdir" - if test -n "$acl_shlibext"; then - if test -f "$dir/$libname$shrext"; then - found_dir="$dir" - found_so="$dir/$libname$shrext" - else - if test "$acl_library_names_spec" = '$libname$shrext$versuffix'; then - ver=`(cd "$dir" && \ - for f in "$libname$shrext".*; do echo "$f"; done \ - | sed -e "s,^$libname$shrext\\\\.,," \ - | sort -t '.' -n -r -k1,1 -k2,2 -k3,3 -k4,4 -k5,5 \ - | sed 1q ) 2>/dev/null` - if test -n "$ver" && test -f "$dir/$libname$shrext.$ver"; then - found_dir="$dir" - found_so="$dir/$libname$shrext.$ver" - fi - else - eval library_names=\"$acl_library_names_spec\" - for f in $library_names; do - if test -f "$dir/$f"; then - found_dir="$dir" - found_so="$dir/$f" - break - fi - done - fi - fi - fi - if test "X$found_dir" = "X"; then - if test -f "$dir/$libname.$acl_libext"; then - found_dir="$dir" - found_a="$dir/$libname.$acl_libext" - fi - fi - if test "X$found_dir" != "X"; then - if test -f "$dir/$libname.la"; then - found_la="$dir/$libname.la" - fi - fi - fi - if test "X$found_dir" = "X"; then - for x in $LDFLAGS $LTLIBICONV; do - - acl_save_prefix="$prefix" - prefix="$acl_final_prefix" - acl_save_exec_prefix="$exec_prefix" - exec_prefix="$acl_final_exec_prefix" - eval x=\"$x\" - exec_prefix="$acl_save_exec_prefix" - prefix="$acl_save_prefix" - - case "$x" in - -L*) - dir=`echo "X$x" | sed -e 's/^X-L//'` - if test -n "$acl_shlibext"; then - if test -f "$dir/$libname$shrext"; then - found_dir="$dir" - found_so="$dir/$libname$shrext" - else - if test "$acl_library_names_spec" = '$libname$shrext$versuffix'; then - ver=`(cd "$dir" && \ - for f in "$libname$shrext".*; do echo "$f"; done \ - | sed -e "s,^$libname$shrext\\\\.,," \ - | sort -t '.' -n -r -k1,1 -k2,2 -k3,3 -k4,4 -k5,5 \ - | sed 1q ) 2>/dev/null` - if test -n "$ver" && test -f "$dir/$libname$shrext.$ver"; then - found_dir="$dir" - found_so="$dir/$libname$shrext.$ver" - fi - else - eval library_names=\"$acl_library_names_spec\" - for f in $library_names; do - if test -f "$dir/$f"; then - found_dir="$dir" - found_so="$dir/$f" - break - fi - done - fi - fi - fi - if test "X$found_dir" = "X"; then - if test -f "$dir/$libname.$acl_libext"; then - found_dir="$dir" - found_a="$dir/$libname.$acl_libext" - fi - fi - if test "X$found_dir" != "X"; then - if test -f "$dir/$libname.la"; then - found_la="$dir/$libname.la" - fi - fi - ;; - esac - if test "X$found_dir" != "X"; then - break - fi - done - fi - if test "X$found_dir" != "X"; then - LTLIBICONV="${LTLIBICONV}${LTLIBICONV:+ }-L$found_dir -l$name" - if test "X$found_so" != "X"; then - if test "$enable_rpath" = no \ - || test "X$found_dir" = "X/usr/$acl_libdirstem" \ - || test "X$found_dir" = "X/usr/$acl_libdirstem2"; then - LIBICONV="${LIBICONV}${LIBICONV:+ }$found_so" - else - haveit= - for x in $ltrpathdirs; do - if test "X$x" = "X$found_dir"; then - haveit=yes - break - fi - done - if test -z "$haveit"; then - ltrpathdirs="$ltrpathdirs $found_dir" - fi - if test "$acl_hardcode_direct" = yes; then - LIBICONV="${LIBICONV}${LIBICONV:+ }$found_so" - else - if test -n "$acl_hardcode_libdir_flag_spec" && test "$acl_hardcode_minus_L" = no; then - LIBICONV="${LIBICONV}${LIBICONV:+ }$found_so" - haveit= - for x in $rpathdirs; do - if test "X$x" = "X$found_dir"; then - haveit=yes - break - fi - done - if test -z "$haveit"; then - rpathdirs="$rpathdirs $found_dir" - fi - else - haveit= - for x in $LDFLAGS $LIBICONV; do - - acl_save_prefix="$prefix" - prefix="$acl_final_prefix" - acl_save_exec_prefix="$exec_prefix" - exec_prefix="$acl_final_exec_prefix" - eval x=\"$x\" - exec_prefix="$acl_save_exec_prefix" - prefix="$acl_save_prefix" - - if test "X$x" = "X-L$found_dir"; then - haveit=yes - break - fi - done - if test -z "$haveit"; then - LIBICONV="${LIBICONV}${LIBICONV:+ }-L$found_dir" - fi - if test "$acl_hardcode_minus_L" != no; then - LIBICONV="${LIBICONV}${LIBICONV:+ }$found_so" - else - LIBICONV="${LIBICONV}${LIBICONV:+ }-l$name" - fi - fi - fi - fi - else - if test "X$found_a" != "X"; then - LIBICONV="${LIBICONV}${LIBICONV:+ }$found_a" - else - LIBICONV="${LIBICONV}${LIBICONV:+ }-L$found_dir -l$name" - fi - fi - additional_includedir= - case "$found_dir" in - */$acl_libdirstem | */$acl_libdirstem/) - basedir=`echo "X$found_dir" | sed -e 's,^X,,' -e "s,/$acl_libdirstem/"'*$,,'` - if test "$name" = 'iconv'; then - LIBICONV_PREFIX="$basedir" - fi - additional_includedir="$basedir/include" - ;; - */$acl_libdirstem2 | */$acl_libdirstem2/) - basedir=`echo "X$found_dir" | sed -e 's,^X,,' -e "s,/$acl_libdirstem2/"'*$,,'` - if test "$name" = 'iconv'; then - LIBICONV_PREFIX="$basedir" - fi - additional_includedir="$basedir/include" - ;; - esac - if test "X$additional_includedir" != "X"; then - if test "X$additional_includedir" != "X/usr/include"; then - haveit= - if test "X$additional_includedir" = "X/usr/local/include"; then - if test -n "$GCC"; then - case $host_os in - linux* | gnu* | k*bsd*-gnu) haveit=yes;; - esac - fi - fi - if test -z "$haveit"; then - for x in $CPPFLAGS $INCICONV; do - - acl_save_prefix="$prefix" - prefix="$acl_final_prefix" - acl_save_exec_prefix="$exec_prefix" - exec_prefix="$acl_final_exec_prefix" - eval x=\"$x\" - exec_prefix="$acl_save_exec_prefix" - prefix="$acl_save_prefix" - - if test "X$x" = "X-I$additional_includedir"; then - haveit=yes - break - fi - done - if test -z "$haveit"; then - if test -d "$additional_includedir"; then - INCICONV="${INCICONV}${INCICONV:+ }-I$additional_includedir" - fi - fi - fi - fi - fi - if test -n "$found_la"; then - save_libdir="$libdir" - case "$found_la" in - */* | *\\*) . "$found_la" ;; - *) . "./$found_la" ;; - esac - libdir="$save_libdir" - for dep in $dependency_libs; do - case "$dep" in - -L*) - additional_libdir=`echo "X$dep" | sed -e 's/^X-L//'` - if test "X$additional_libdir" != "X/usr/$acl_libdirstem" \ - && test "X$additional_libdir" != "X/usr/$acl_libdirstem2"; then - haveit= - if test "X$additional_libdir" = "X/usr/local/$acl_libdirstem" \ - || test "X$additional_libdir" = "X/usr/local/$acl_libdirstem2"; then - if test -n "$GCC"; then - case $host_os in - linux* | gnu* | k*bsd*-gnu) haveit=yes;; - esac - fi - fi - if test -z "$haveit"; then - haveit= - for x in $LDFLAGS $LIBICONV; do - - acl_save_prefix="$prefix" - prefix="$acl_final_prefix" - acl_save_exec_prefix="$exec_prefix" - exec_prefix="$acl_final_exec_prefix" - eval x=\"$x\" - exec_prefix="$acl_save_exec_prefix" - prefix="$acl_save_prefix" - - if test "X$x" = "X-L$additional_libdir"; then - haveit=yes - break - fi - done - if test -z "$haveit"; then - if test -d "$additional_libdir"; then - LIBICONV="${LIBICONV}${LIBICONV:+ }-L$additional_libdir" - fi - fi - haveit= - for x in $LDFLAGS $LTLIBICONV; do - - acl_save_prefix="$prefix" - prefix="$acl_final_prefix" - acl_save_exec_prefix="$exec_prefix" - exec_prefix="$acl_final_exec_prefix" - eval x=\"$x\" - exec_prefix="$acl_save_exec_prefix" - prefix="$acl_save_prefix" - - if test "X$x" = "X-L$additional_libdir"; then - haveit=yes - break - fi - done - if test -z "$haveit"; then - if test -d "$additional_libdir"; then - LTLIBICONV="${LTLIBICONV}${LTLIBICONV:+ }-L$additional_libdir" - fi - fi - fi - fi - ;; - -R*) - dir=`echo "X$dep" | sed -e 's/^X-R//'` - if test "$enable_rpath" != no; then - haveit= - for x in $rpathdirs; do - if test "X$x" = "X$dir"; then - haveit=yes - break - fi - done - if test -z "$haveit"; then - rpathdirs="$rpathdirs $dir" - fi - haveit= - for x in $ltrpathdirs; do - if test "X$x" = "X$dir"; then - haveit=yes - break - fi - done - if test -z "$haveit"; then - ltrpathdirs="$ltrpathdirs $dir" - fi - fi - ;; - -l*) - names_next_round="$names_next_round "`echo "X$dep" | sed -e 's/^X-l//'` - ;; - *.la) - names_next_round="$names_next_round "`echo "X$dep" | sed -e 's,^X.*/,,' -e 's,^lib,,' -e 's,\.la$,,'` - ;; - *) - LIBICONV="${LIBICONV}${LIBICONV:+ }$dep" - LTLIBICONV="${LTLIBICONV}${LTLIBICONV:+ }$dep" - ;; - esac - done - fi - else - LIBICONV="${LIBICONV}${LIBICONV:+ }-l$name" - LTLIBICONV="${LTLIBICONV}${LTLIBICONV:+ }-l$name" - fi - fi - fi - done - done - if test "X$rpathdirs" != "X"; then - if test -n "$acl_hardcode_libdir_separator"; then - alldirs= - for found_dir in $rpathdirs; do - alldirs="${alldirs}${alldirs:+$acl_hardcode_libdir_separator}$found_dir" - done - acl_save_libdir="$libdir" - libdir="$alldirs" - eval flag=\"$acl_hardcode_libdir_flag_spec\" - libdir="$acl_save_libdir" - LIBICONV="${LIBICONV}${LIBICONV:+ }$flag" - else - for found_dir in $rpathdirs; do - acl_save_libdir="$libdir" - libdir="$found_dir" - eval flag=\"$acl_hardcode_libdir_flag_spec\" - libdir="$acl_save_libdir" - LIBICONV="${LIBICONV}${LIBICONV:+ }$flag" - done - fi - fi - if test "X$ltrpathdirs" != "X"; then - for found_dir in $ltrpathdirs; do - LTLIBICONV="${LTLIBICONV}${LTLIBICONV:+ }-R$found_dir" - done - fi - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for CFPreferencesCopyAppValue" >&5 -$as_echo_n "checking for CFPreferencesCopyAppValue... " >&6; } -if ${gt_cv_func_CFPreferencesCopyAppValue+:} false; then : - $as_echo_n "(cached) " >&6 -else - gt_save_LIBS="$LIBS" - LIBS="$LIBS -Wl,-framework -Wl,CoreFoundation" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include -int -main (void) -{ -CFPreferencesCopyAppValue(NULL, NULL) - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - gt_cv_func_CFPreferencesCopyAppValue=yes -else - gt_cv_func_CFPreferencesCopyAppValue=no -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext - LIBS="$gt_save_LIBS" -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gt_cv_func_CFPreferencesCopyAppValue" >&5 -$as_echo "$gt_cv_func_CFPreferencesCopyAppValue" >&6; } - if test $gt_cv_func_CFPreferencesCopyAppValue = yes; then - -$as_echo "#define HAVE_CFPREFERENCESCOPYAPPVALUE 1" >>confdefs.h - - fi - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for CFLocaleCopyCurrent" >&5 -$as_echo_n "checking for CFLocaleCopyCurrent... " >&6; } -if ${gt_cv_func_CFLocaleCopyCurrent+:} false; then : - $as_echo_n "(cached) " >&6 -else - gt_save_LIBS="$LIBS" - LIBS="$LIBS -Wl,-framework -Wl,CoreFoundation" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include -int -main (void) -{ -CFLocaleCopyCurrent(); - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - gt_cv_func_CFLocaleCopyCurrent=yes -else - gt_cv_func_CFLocaleCopyCurrent=no -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext - LIBS="$gt_save_LIBS" -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gt_cv_func_CFLocaleCopyCurrent" >&5 -$as_echo "$gt_cv_func_CFLocaleCopyCurrent" >&6; } - if test $gt_cv_func_CFLocaleCopyCurrent = yes; then - -$as_echo "#define HAVE_CFLOCALECOPYCURRENT 1" >>confdefs.h - - fi - INTL_MACOSX_LIBS= - if test $gt_cv_func_CFPreferencesCopyAppValue = yes || test $gt_cv_func_CFLocaleCopyCurrent = yes; then - INTL_MACOSX_LIBS="-Wl,-framework -Wl,CoreFoundation" - fi - - - - - - - LIBINTL= - LTLIBINTL= - POSUB= - - case " $gt_needs " in - *" need-formatstring-macros "*) gt_api_version=3 ;; - *" need-ngettext "*) gt_api_version=2 ;; - *) gt_api_version=1 ;; - esac - gt_func_gnugettext_libc="gt_cv_func_gnugettext${gt_api_version}_libc" - gt_func_gnugettext_libintl="gt_cv_func_gnugettext${gt_api_version}_libintl" - - if test "$USE_NLS" = "yes"; then - gt_use_preinstalled_gnugettext=no - - - if test $gt_api_version -ge 3; then - gt_revision_test_code=' -#ifndef __GNU_GETTEXT_SUPPORTED_REVISION -#define __GNU_GETTEXT_SUPPORTED_REVISION(major) ((major) == 0 ? 0 : -1) -#endif -typedef int array [2 * (__GNU_GETTEXT_SUPPORTED_REVISION(0) >= 1) - 1]; -' - else - gt_revision_test_code= - fi - if test $gt_api_version -ge 2; then - gt_expression_test_code=' + * ngettext ("", "", 0)' - else - gt_expression_test_code= - fi - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for GNU gettext in libc" >&5 -$as_echo_n "checking for GNU gettext in libc... " >&6; } -if eval \${$gt_func_gnugettext_libc+:} false; then : - $as_echo_n "(cached) " >&6 -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -#include -$gt_revision_test_code -extern int _nl_msg_cat_cntr; -extern int *_nl_domain_bindings; - -int -main (void) -{ - -bindtextdomain ("", ""); -return * gettext ("")$gt_expression_test_code + _nl_msg_cat_cntr + *_nl_domain_bindings - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - eval "$gt_func_gnugettext_libc=yes" -else - eval "$gt_func_gnugettext_libc=no" -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -fi -eval ac_res=\$$gt_func_gnugettext_libc - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 -$as_echo "$ac_res" >&6; } - - if { eval "gt_val=\$$gt_func_gnugettext_libc"; test "$gt_val" != "yes"; }; then - - - - - - am_save_CPPFLAGS="$CPPFLAGS" - - for element in $INCICONV; do - haveit= - for x in $CPPFLAGS; do - - acl_save_prefix="$prefix" - prefix="$acl_final_prefix" - acl_save_exec_prefix="$exec_prefix" - exec_prefix="$acl_final_exec_prefix" - eval x=\"$x\" - exec_prefix="$acl_save_exec_prefix" - prefix="$acl_save_prefix" - - if test "X$x" = "X$element"; then - haveit=yes - break - fi - done - if test -z "$haveit"; then - CPPFLAGS="${CPPFLAGS}${CPPFLAGS:+ }$element" - fi - done - - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for iconv" >&5 -$as_echo_n "checking for iconv... " >&6; } -if ${am_cv_func_iconv+:} false; then : - $as_echo_n "(cached) " >&6 -else - - am_cv_func_iconv="no, consider installing GNU libiconv" - am_cv_lib_iconv=no - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -#include -#include - -int -main (void) -{ -iconv_t cd = iconv_open("",""); - iconv(cd,NULL,NULL,NULL,NULL); - iconv_close(cd); - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - am_cv_func_iconv=yes -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext - if test "$am_cv_func_iconv" != yes; then - am_save_LIBS="$LIBS" - LIBS="$LIBS $LIBICONV" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -#include -#include - -int -main (void) -{ -iconv_t cd = iconv_open("",""); - iconv(cd,NULL,NULL,NULL,NULL); - iconv_close(cd); - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - am_cv_lib_iconv=yes - am_cv_func_iconv=yes -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext - LIBS="$am_save_LIBS" - fi - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_func_iconv" >&5 -$as_echo "$am_cv_func_iconv" >&6; } - if test "$am_cv_func_iconv" = yes; then - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for working iconv" >&5 -$as_echo_n "checking for working iconv... " >&6; } -if ${am_cv_func_iconv_works+:} false; then : - $as_echo_n "(cached) " >&6 -else - - am_save_LIBS="$LIBS" - if test $am_cv_lib_iconv = yes; then - LIBS="$LIBS $LIBICONV" - fi - if test "$cross_compiling" = yes; then : - - case "$host_os" in - aix* | hpux*) am_cv_func_iconv_works="guessing no" ;; - *) am_cv_func_iconv_works="guessing yes" ;; - esac - -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -#include -#include -int main () -{ - int result = 0; - /* Test against AIX 5.1 bug: Failures are not distinguishable from successful - returns. */ - { - iconv_t cd_utf8_to_88591 = iconv_open ("ISO8859-1", "UTF-8"); - if (cd_utf8_to_88591 != (iconv_t)(-1)) - { - static const char input[] = "\342\202\254"; /* EURO SIGN */ - char buf[10]; - const char *inptr = input; - size_t inbytesleft = strlen (input); - char *outptr = buf; - size_t outbytesleft = sizeof (buf); - size_t res = iconv (cd_utf8_to_88591, - (char **) &inptr, &inbytesleft, - &outptr, &outbytesleft); - if (res == 0) - result |= 1; - iconv_close (cd_utf8_to_88591); - } - } - /* Test against Solaris 10 bug: Failures are not distinguishable from - successful returns. */ - { - iconv_t cd_ascii_to_88591 = iconv_open ("ISO8859-1", "646"); - if (cd_ascii_to_88591 != (iconv_t)(-1)) - { - static const char input[] = "\263"; - char buf[10]; - const char *inptr = input; - size_t inbytesleft = strlen (input); - char *outptr = buf; - size_t outbytesleft = sizeof (buf); - size_t res = iconv (cd_ascii_to_88591, - (char **) &inptr, &inbytesleft, - &outptr, &outbytesleft); - if (res == 0) - result |= 2; - iconv_close (cd_ascii_to_88591); - } - } - /* Test against AIX 6.1..7.1 bug: Buffer overrun. */ - { - iconv_t cd_88591_to_utf8 = iconv_open ("UTF-8", "ISO-8859-1"); - if (cd_88591_to_utf8 != (iconv_t)(-1)) - { - static const char input[] = "\304"; - static char buf[2] = { (char)0xDE, (char)0xAD }; - const char *inptr = input; - size_t inbytesleft = 1; - char *outptr = buf; - size_t outbytesleft = 1; - size_t res = iconv (cd_88591_to_utf8, - (char **) &inptr, &inbytesleft, - &outptr, &outbytesleft); - if (res != (size_t)(-1) || outptr - buf > 1 || buf[1] != (char)0xAD) - result |= 4; - iconv_close (cd_88591_to_utf8); - } - } -#if 0 /* This bug could be worked around by the caller. */ - /* Test against HP-UX 11.11 bug: Positive return value instead of 0. */ - { - iconv_t cd_88591_to_utf8 = iconv_open ("utf8", "iso88591"); - if (cd_88591_to_utf8 != (iconv_t)(-1)) - { - static const char input[] = "\304rger mit b\366sen B\374bchen ohne Augenma\337"; - char buf[50]; - const char *inptr = input; - size_t inbytesleft = strlen (input); - char *outptr = buf; - size_t outbytesleft = sizeof (buf); - size_t res = iconv (cd_88591_to_utf8, - (char **) &inptr, &inbytesleft, - &outptr, &outbytesleft); - if ((int)res > 0) - result |= 8; - iconv_close (cd_88591_to_utf8); - } - } -#endif - /* Test against HP-UX 11.11 bug: No converter from EUC-JP to UTF-8 is - provided. */ - if (/* Try standardized names. */ - iconv_open ("UTF-8", "EUC-JP") == (iconv_t)(-1) - /* Try IRIX, OSF/1 names. */ - && iconv_open ("UTF-8", "eucJP") == (iconv_t)(-1) - /* Try AIX names. */ - && iconv_open ("UTF-8", "IBM-eucJP") == (iconv_t)(-1) - /* Try HP-UX names. */ - && iconv_open ("utf8", "eucJP") == (iconv_t)(-1)) - result |= 16; - return result; -} -_ACEOF -if ac_fn_c_try_run "$LINENO"; then : - am_cv_func_iconv_works=yes -else - am_cv_func_iconv_works=no -fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext -fi - - LIBS="$am_save_LIBS" - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_func_iconv_works" >&5 -$as_echo "$am_cv_func_iconv_works" >&6; } - case "$am_cv_func_iconv_works" in - *no) am_func_iconv=no am_cv_lib_iconv=no ;; - *) am_func_iconv=yes ;; - esac - else - am_func_iconv=no am_cv_lib_iconv=no - fi - if test "$am_func_iconv" = yes; then - -$as_echo "#define HAVE_ICONV 1" >>confdefs.h - - fi - if test "$am_cv_lib_iconv" = yes; then - { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to link with libiconv" >&5 -$as_echo_n "checking how to link with libiconv... " >&6; } - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $LIBICONV" >&5 -$as_echo "$LIBICONV" >&6; } - else - CPPFLAGS="$am_save_CPPFLAGS" - LIBICONV= - LTLIBICONV= - fi - - - - - - - - - - - use_additional=yes - - acl_save_prefix="$prefix" - prefix="$acl_final_prefix" - acl_save_exec_prefix="$exec_prefix" - exec_prefix="$acl_final_exec_prefix" - - eval additional_includedir=\"$includedir\" - eval additional_libdir=\"$libdir\" - - exec_prefix="$acl_save_exec_prefix" - prefix="$acl_save_prefix" - - -# Check whether --with-libintl-prefix was given. -if test "${with_libintl_prefix+set}" = set; then : - withval=$with_libintl_prefix; - if test "X$withval" = "Xno"; then - use_additional=no - else - if test "X$withval" = "X"; then - - acl_save_prefix="$prefix" - prefix="$acl_final_prefix" - acl_save_exec_prefix="$exec_prefix" - exec_prefix="$acl_final_exec_prefix" - - eval additional_includedir=\"$includedir\" - eval additional_libdir=\"$libdir\" - - exec_prefix="$acl_save_exec_prefix" - prefix="$acl_save_prefix" - - else - additional_includedir="$withval/include" - additional_libdir="$withval/$acl_libdirstem" - if test "$acl_libdirstem2" != "$acl_libdirstem" \ - && test ! -d "$withval/$acl_libdirstem"; then - additional_libdir="$withval/$acl_libdirstem2" - fi - fi - fi - -fi - - LIBINTL= - LTLIBINTL= - INCINTL= - LIBINTL_PREFIX= - HAVE_LIBINTL= - rpathdirs= - ltrpathdirs= - names_already_handled= - names_next_round='intl ' - while test -n "$names_next_round"; do - names_this_round="$names_next_round" - names_next_round= - for name in $names_this_round; do - already_handled= - for n in $names_already_handled; do - if test "$n" = "$name"; then - already_handled=yes - break - fi - done - if test -z "$already_handled"; then - names_already_handled="$names_already_handled $name" - uppername=`echo "$name" | sed -e 'y|abcdefghijklmnopqrstuvwxyz./+-|ABCDEFGHIJKLMNOPQRSTUVWXYZ____|'` - eval value=\"\$HAVE_LIB$uppername\" - if test -n "$value"; then - if test "$value" = yes; then - eval value=\"\$LIB$uppername\" - test -z "$value" || LIBINTL="${LIBINTL}${LIBINTL:+ }$value" - eval value=\"\$LTLIB$uppername\" - test -z "$value" || LTLIBINTL="${LTLIBINTL}${LTLIBINTL:+ }$value" - else - : - fi - else - found_dir= - found_la= - found_so= - found_a= - eval libname=\"$acl_libname_spec\" # typically: libname=lib$name - if test -n "$acl_shlibext"; then - shrext=".$acl_shlibext" # typically: shrext=.so - else - shrext= - fi - if test $use_additional = yes; then - dir="$additional_libdir" - if test -n "$acl_shlibext"; then - if test -f "$dir/$libname$shrext"; then - found_dir="$dir" - found_so="$dir/$libname$shrext" - else - if test "$acl_library_names_spec" = '$libname$shrext$versuffix'; then - ver=`(cd "$dir" && \ - for f in "$libname$shrext".*; do echo "$f"; done \ - | sed -e "s,^$libname$shrext\\\\.,," \ - | sort -t '.' -n -r -k1,1 -k2,2 -k3,3 -k4,4 -k5,5 \ - | sed 1q ) 2>/dev/null` - if test -n "$ver" && test -f "$dir/$libname$shrext.$ver"; then - found_dir="$dir" - found_so="$dir/$libname$shrext.$ver" - fi - else - eval library_names=\"$acl_library_names_spec\" - for f in $library_names; do - if test -f "$dir/$f"; then - found_dir="$dir" - found_so="$dir/$f" - break - fi - done - fi - fi - fi - if test "X$found_dir" = "X"; then - if test -f "$dir/$libname.$acl_libext"; then - found_dir="$dir" - found_a="$dir/$libname.$acl_libext" - fi - fi - if test "X$found_dir" != "X"; then - if test -f "$dir/$libname.la"; then - found_la="$dir/$libname.la" - fi - fi - fi - if test "X$found_dir" = "X"; then - for x in $LDFLAGS $LTLIBINTL; do - - acl_save_prefix="$prefix" - prefix="$acl_final_prefix" - acl_save_exec_prefix="$exec_prefix" - exec_prefix="$acl_final_exec_prefix" - eval x=\"$x\" - exec_prefix="$acl_save_exec_prefix" - prefix="$acl_save_prefix" - - case "$x" in - -L*) - dir=`echo "X$x" | sed -e 's/^X-L//'` - if test -n "$acl_shlibext"; then - if test -f "$dir/$libname$shrext"; then - found_dir="$dir" - found_so="$dir/$libname$shrext" - else - if test "$acl_library_names_spec" = '$libname$shrext$versuffix'; then - ver=`(cd "$dir" && \ - for f in "$libname$shrext".*; do echo "$f"; done \ - | sed -e "s,^$libname$shrext\\\\.,," \ - | sort -t '.' -n -r -k1,1 -k2,2 -k3,3 -k4,4 -k5,5 \ - | sed 1q ) 2>/dev/null` - if test -n "$ver" && test -f "$dir/$libname$shrext.$ver"; then - found_dir="$dir" - found_so="$dir/$libname$shrext.$ver" - fi - else - eval library_names=\"$acl_library_names_spec\" - for f in $library_names; do - if test -f "$dir/$f"; then - found_dir="$dir" - found_so="$dir/$f" - break - fi - done - fi - fi - fi - if test "X$found_dir" = "X"; then - if test -f "$dir/$libname.$acl_libext"; then - found_dir="$dir" - found_a="$dir/$libname.$acl_libext" - fi - fi - if test "X$found_dir" != "X"; then - if test -f "$dir/$libname.la"; then - found_la="$dir/$libname.la" - fi - fi - ;; - esac - if test "X$found_dir" != "X"; then - break - fi - done - fi - if test "X$found_dir" != "X"; then - LTLIBINTL="${LTLIBINTL}${LTLIBINTL:+ }-L$found_dir -l$name" - if test "X$found_so" != "X"; then - if test "$enable_rpath" = no \ - || test "X$found_dir" = "X/usr/$acl_libdirstem" \ - || test "X$found_dir" = "X/usr/$acl_libdirstem2"; then - LIBINTL="${LIBINTL}${LIBINTL:+ }$found_so" - else - haveit= - for x in $ltrpathdirs; do - if test "X$x" = "X$found_dir"; then - haveit=yes - break - fi - done - if test -z "$haveit"; then - ltrpathdirs="$ltrpathdirs $found_dir" - fi - if test "$acl_hardcode_direct" = yes; then - LIBINTL="${LIBINTL}${LIBINTL:+ }$found_so" - else - if test -n "$acl_hardcode_libdir_flag_spec" && test "$acl_hardcode_minus_L" = no; then - LIBINTL="${LIBINTL}${LIBINTL:+ }$found_so" - haveit= - for x in $rpathdirs; do - if test "X$x" = "X$found_dir"; then - haveit=yes - break - fi - done - if test -z "$haveit"; then - rpathdirs="$rpathdirs $found_dir" - fi - else - haveit= - for x in $LDFLAGS $LIBINTL; do - - acl_save_prefix="$prefix" - prefix="$acl_final_prefix" - acl_save_exec_prefix="$exec_prefix" - exec_prefix="$acl_final_exec_prefix" - eval x=\"$x\" - exec_prefix="$acl_save_exec_prefix" - prefix="$acl_save_prefix" - - if test "X$x" = "X-L$found_dir"; then - haveit=yes - break - fi - done - if test -z "$haveit"; then - LIBINTL="${LIBINTL}${LIBINTL:+ }-L$found_dir" - fi - if test "$acl_hardcode_minus_L" != no; then - LIBINTL="${LIBINTL}${LIBINTL:+ }$found_so" - else - LIBINTL="${LIBINTL}${LIBINTL:+ }-l$name" - fi - fi - fi - fi - else - if test "X$found_a" != "X"; then - LIBINTL="${LIBINTL}${LIBINTL:+ }$found_a" - else - LIBINTL="${LIBINTL}${LIBINTL:+ }-L$found_dir -l$name" - fi - fi - additional_includedir= - case "$found_dir" in - */$acl_libdirstem | */$acl_libdirstem/) - basedir=`echo "X$found_dir" | sed -e 's,^X,,' -e "s,/$acl_libdirstem/"'*$,,'` - if test "$name" = 'intl'; then - LIBINTL_PREFIX="$basedir" - fi - additional_includedir="$basedir/include" - ;; - */$acl_libdirstem2 | */$acl_libdirstem2/) - basedir=`echo "X$found_dir" | sed -e 's,^X,,' -e "s,/$acl_libdirstem2/"'*$,,'` - if test "$name" = 'intl'; then - LIBINTL_PREFIX="$basedir" - fi - additional_includedir="$basedir/include" - ;; - esac - if test "X$additional_includedir" != "X"; then - if test "X$additional_includedir" != "X/usr/include"; then - haveit= - if test "X$additional_includedir" = "X/usr/local/include"; then - if test -n "$GCC"; then - case $host_os in - linux* | gnu* | k*bsd*-gnu) haveit=yes;; - esac - fi - fi - if test -z "$haveit"; then - for x in $CPPFLAGS $INCINTL; do - - acl_save_prefix="$prefix" - prefix="$acl_final_prefix" - acl_save_exec_prefix="$exec_prefix" - exec_prefix="$acl_final_exec_prefix" - eval x=\"$x\" - exec_prefix="$acl_save_exec_prefix" - prefix="$acl_save_prefix" - - if test "X$x" = "X-I$additional_includedir"; then - haveit=yes - break - fi - done - if test -z "$haveit"; then - if test -d "$additional_includedir"; then - INCINTL="${INCINTL}${INCINTL:+ }-I$additional_includedir" - fi - fi - fi - fi - fi - if test -n "$found_la"; then - save_libdir="$libdir" - case "$found_la" in - */* | *\\*) . "$found_la" ;; - *) . "./$found_la" ;; - esac - libdir="$save_libdir" - for dep in $dependency_libs; do - case "$dep" in - -L*) - additional_libdir=`echo "X$dep" | sed -e 's/^X-L//'` - if test "X$additional_libdir" != "X/usr/$acl_libdirstem" \ - && test "X$additional_libdir" != "X/usr/$acl_libdirstem2"; then - haveit= - if test "X$additional_libdir" = "X/usr/local/$acl_libdirstem" \ - || test "X$additional_libdir" = "X/usr/local/$acl_libdirstem2"; then - if test -n "$GCC"; then - case $host_os in - linux* | gnu* | k*bsd*-gnu) haveit=yes;; - esac - fi - fi - if test -z "$haveit"; then - haveit= - for x in $LDFLAGS $LIBINTL; do - - acl_save_prefix="$prefix" - prefix="$acl_final_prefix" - acl_save_exec_prefix="$exec_prefix" - exec_prefix="$acl_final_exec_prefix" - eval x=\"$x\" - exec_prefix="$acl_save_exec_prefix" - prefix="$acl_save_prefix" - - if test "X$x" = "X-L$additional_libdir"; then - haveit=yes - break - fi - done - if test -z "$haveit"; then - if test -d "$additional_libdir"; then - LIBINTL="${LIBINTL}${LIBINTL:+ }-L$additional_libdir" - fi - fi - haveit= - for x in $LDFLAGS $LTLIBINTL; do - - acl_save_prefix="$prefix" - prefix="$acl_final_prefix" - acl_save_exec_prefix="$exec_prefix" - exec_prefix="$acl_final_exec_prefix" - eval x=\"$x\" - exec_prefix="$acl_save_exec_prefix" - prefix="$acl_save_prefix" - - if test "X$x" = "X-L$additional_libdir"; then - haveit=yes - break - fi - done - if test -z "$haveit"; then - if test -d "$additional_libdir"; then - LTLIBINTL="${LTLIBINTL}${LTLIBINTL:+ }-L$additional_libdir" - fi - fi - fi - fi - ;; - -R*) - dir=`echo "X$dep" | sed -e 's/^X-R//'` - if test "$enable_rpath" != no; then - haveit= - for x in $rpathdirs; do - if test "X$x" = "X$dir"; then - haveit=yes - break - fi - done - if test -z "$haveit"; then - rpathdirs="$rpathdirs $dir" - fi - haveit= - for x in $ltrpathdirs; do - if test "X$x" = "X$dir"; then - haveit=yes - break - fi - done - if test -z "$haveit"; then - ltrpathdirs="$ltrpathdirs $dir" - fi - fi - ;; - -l*) - names_next_round="$names_next_round "`echo "X$dep" | sed -e 's/^X-l//'` - ;; - *.la) - names_next_round="$names_next_round "`echo "X$dep" | sed -e 's,^X.*/,,' -e 's,^lib,,' -e 's,\.la$,,'` - ;; - *) - LIBINTL="${LIBINTL}${LIBINTL:+ }$dep" - LTLIBINTL="${LTLIBINTL}${LTLIBINTL:+ }$dep" - ;; - esac - done - fi - else - LIBINTL="${LIBINTL}${LIBINTL:+ }-l$name" - LTLIBINTL="${LTLIBINTL}${LTLIBINTL:+ }-l$name" - fi - fi - fi - done - done - if test "X$rpathdirs" != "X"; then - if test -n "$acl_hardcode_libdir_separator"; then - alldirs= - for found_dir in $rpathdirs; do - alldirs="${alldirs}${alldirs:+$acl_hardcode_libdir_separator}$found_dir" - done - acl_save_libdir="$libdir" - libdir="$alldirs" - eval flag=\"$acl_hardcode_libdir_flag_spec\" - libdir="$acl_save_libdir" - LIBINTL="${LIBINTL}${LIBINTL:+ }$flag" - else - for found_dir in $rpathdirs; do - acl_save_libdir="$libdir" - libdir="$found_dir" - eval flag=\"$acl_hardcode_libdir_flag_spec\" - libdir="$acl_save_libdir" - LIBINTL="${LIBINTL}${LIBINTL:+ }$flag" - done - fi - fi - if test "X$ltrpathdirs" != "X"; then - for found_dir in $ltrpathdirs; do - LTLIBINTL="${LTLIBINTL}${LTLIBINTL:+ }-R$found_dir" - done - fi - - - - - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for GNU gettext in libintl" >&5 -$as_echo_n "checking for GNU gettext in libintl... " >&6; } -if eval \${$gt_func_gnugettext_libintl+:} false; then : - $as_echo_n "(cached) " >&6 -else - gt_save_CPPFLAGS="$CPPFLAGS" - CPPFLAGS="$CPPFLAGS $INCINTL" - gt_save_LIBS="$LIBS" - LIBS="$LIBS $LIBINTL" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -#include -$gt_revision_test_code -extern int _nl_msg_cat_cntr; -extern -#ifdef __cplusplus -"C" -#endif -const char *_nl_expand_alias (const char *); - -int -main (void) -{ - -bindtextdomain ("", ""); -return * gettext ("")$gt_expression_test_code + _nl_msg_cat_cntr + *_nl_expand_alias ("") - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - eval "$gt_func_gnugettext_libintl=yes" -else - eval "$gt_func_gnugettext_libintl=no" -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext - if { eval "gt_val=\$$gt_func_gnugettext_libintl"; test "$gt_val" != yes; } && test -n "$LIBICONV"; then - LIBS="$LIBS $LIBICONV" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -#include -$gt_revision_test_code -extern int _nl_msg_cat_cntr; -extern -#ifdef __cplusplus -"C" -#endif -const char *_nl_expand_alias (const char *); - -int -main (void) -{ - -bindtextdomain ("", ""); -return * gettext ("")$gt_expression_test_code + _nl_msg_cat_cntr + *_nl_expand_alias ("") - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - LIBINTL="$LIBINTL $LIBICONV" - LTLIBINTL="$LTLIBINTL $LTLIBICONV" - eval "$gt_func_gnugettext_libintl=yes" - -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext - fi - CPPFLAGS="$gt_save_CPPFLAGS" - LIBS="$gt_save_LIBS" -fi -eval ac_res=\$$gt_func_gnugettext_libintl - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 -$as_echo "$ac_res" >&6; } - fi - - if { eval "gt_val=\$$gt_func_gnugettext_libc"; test "$gt_val" = "yes"; } \ - || { { eval "gt_val=\$$gt_func_gnugettext_libintl"; test "$gt_val" = "yes"; } \ - && test "$PACKAGE" != gettext-runtime \ - && test "$PACKAGE" != gettext-tools; }; then - gt_use_preinstalled_gnugettext=yes - else - LIBINTL= - LTLIBINTL= - INCINTL= - fi - - - - if test -n "$INTL_MACOSX_LIBS"; then - if test "$gt_use_preinstalled_gnugettext" = "yes" \ - || test "$nls_cv_use_gnu_gettext" = "yes"; then - LIBINTL="$LIBINTL $INTL_MACOSX_LIBS" - LTLIBINTL="$LTLIBINTL $INTL_MACOSX_LIBS" - fi - fi - - if test "$gt_use_preinstalled_gnugettext" = "yes" \ - || test "$nls_cv_use_gnu_gettext" = "yes"; then - -$as_echo "#define ENABLE_NLS 1" >>confdefs.h - - else - USE_NLS=no - fi - fi - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to use NLS" >&5 -$as_echo_n "checking whether to use NLS... " >&6; } - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $USE_NLS" >&5 -$as_echo "$USE_NLS" >&6; } - if test "$USE_NLS" = "yes"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: checking where the gettext function comes from" >&5 -$as_echo_n "checking where the gettext function comes from... " >&6; } - if test "$gt_use_preinstalled_gnugettext" = "yes"; then - if { eval "gt_val=\$$gt_func_gnugettext_libintl"; test "$gt_val" = "yes"; }; then - gt_source="external libintl" - else - gt_source="libc" - fi - else - gt_source="included intl directory" - fi - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $gt_source" >&5 -$as_echo "$gt_source" >&6; } - fi - - if test "$USE_NLS" = "yes"; then - - if test "$gt_use_preinstalled_gnugettext" = "yes"; then - if { eval "gt_val=\$$gt_func_gnugettext_libintl"; test "$gt_val" = "yes"; }; then - { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to link with libintl" >&5 -$as_echo_n "checking how to link with libintl... " >&6; } - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $LIBINTL" >&5 -$as_echo "$LIBINTL" >&6; } - - for element in $INCINTL; do - haveit= - for x in $CPPFLAGS; do - - acl_save_prefix="$prefix" - prefix="$acl_final_prefix" - acl_save_exec_prefix="$exec_prefix" - exec_prefix="$acl_final_exec_prefix" - eval x=\"$x\" - exec_prefix="$acl_save_exec_prefix" - prefix="$acl_save_prefix" - - if test "X$x" = "X$element"; then - haveit=yes - break - fi - done - if test -z "$haveit"; then - CPPFLAGS="${CPPFLAGS}${CPPFLAGS:+ }$element" - fi - done - - fi - - -$as_echo "#define HAVE_GETTEXT 1" >>confdefs.h - - -$as_echo "#define HAVE_DCGETTEXT 1" >>confdefs.h - - fi - - POSUB=po - fi - - - - INTLLIBS="$LIBINTL" - - - - - - - -# Check whether --enable-largefile was given. -if test "${enable_largefile+set}" = set; then : - enableval=$enable_largefile; -fi - -if test "$enable_largefile" != no; then - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for special C compiler options needed for large files" >&5 -$as_echo_n "checking for special C compiler options needed for large files... " >&6; } -if ${ac_cv_sys_largefile_CC+:} false; then : - $as_echo_n "(cached) " >&6 -else - ac_cv_sys_largefile_CC=no - if test "$GCC" != yes; then - ac_save_CC=$CC - while :; do - # IRIX 6.2 and later do not support large files by default, - # so use the C compiler's -n32 option if that helps. - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include - /* Check that off_t can represent 2**63 - 1 correctly. - We can't simply define LARGE_OFF_T to be 9223372036854775807, - since some C++ compilers masquerading as C compilers - incorrectly reject 9223372036854775807. */ -#define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62)) - int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721 - && LARGE_OFF_T % 2147483647 == 1) - ? 1 : -1]; -int -main (void) -{ - - ; - return 0; -} -_ACEOF - if ac_fn_c_try_compile "$LINENO"; then : - break -fi -rm -f core conftest.err conftest.$ac_objext - CC="$CC -n32" - if ac_fn_c_try_compile "$LINENO"; then : - ac_cv_sys_largefile_CC=' -n32'; break -fi -rm -f core conftest.err conftest.$ac_objext - break - done - CC=$ac_save_CC - rm -f conftest.$ac_ext - fi -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sys_largefile_CC" >&5 -$as_echo "$ac_cv_sys_largefile_CC" >&6; } - if test "$ac_cv_sys_largefile_CC" != no; then - CC=$CC$ac_cv_sys_largefile_CC - fi - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for _FILE_OFFSET_BITS value needed for large files" >&5 -$as_echo_n "checking for _FILE_OFFSET_BITS value needed for large files... " >&6; } -if ${ac_cv_sys_file_offset_bits+:} false; then : - $as_echo_n "(cached) " >&6 -else - while :; do - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include - /* Check that off_t can represent 2**63 - 1 correctly. - We can't simply define LARGE_OFF_T to be 9223372036854775807, - since some C++ compilers masquerading as C compilers - incorrectly reject 9223372036854775807. */ -#define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62)) - int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721 - && LARGE_OFF_T % 2147483647 == 1) - ? 1 : -1]; -int -main (void) -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - ac_cv_sys_file_offset_bits=no; break -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#define _FILE_OFFSET_BITS 64 -#include - /* Check that off_t can represent 2**63 - 1 correctly. - We can't simply define LARGE_OFF_T to be 9223372036854775807, - since some C++ compilers masquerading as C compilers - incorrectly reject 9223372036854775807. */ -#define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62)) - int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721 - && LARGE_OFF_T % 2147483647 == 1) - ? 1 : -1]; -int -main (void) -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - ac_cv_sys_file_offset_bits=64; break -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - ac_cv_sys_file_offset_bits=unknown - break -done -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sys_file_offset_bits" >&5 -$as_echo "$ac_cv_sys_file_offset_bits" >&6; } -case $ac_cv_sys_file_offset_bits in #( - no | unknown) ;; - *) -cat >>confdefs.h <<_ACEOF -#define _FILE_OFFSET_BITS $ac_cv_sys_file_offset_bits -_ACEOF -;; -esac -rm -rf conftest* - if test $ac_cv_sys_file_offset_bits = unknown; then - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for _LARGE_FILES value needed for large files" >&5 -$as_echo_n "checking for _LARGE_FILES value needed for large files... " >&6; } -if ${ac_cv_sys_large_files+:} false; then : - $as_echo_n "(cached) " >&6 -else - while :; do - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include - /* Check that off_t can represent 2**63 - 1 correctly. - We can't simply define LARGE_OFF_T to be 9223372036854775807, - since some C++ compilers masquerading as C compilers - incorrectly reject 9223372036854775807. */ -#define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62)) - int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721 - && LARGE_OFF_T % 2147483647 == 1) - ? 1 : -1]; -int -main (void) -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - ac_cv_sys_large_files=no; break -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#define _LARGE_FILES 1 -#include - /* Check that off_t can represent 2**63 - 1 correctly. - We can't simply define LARGE_OFF_T to be 9223372036854775807, - since some C++ compilers masquerading as C compilers - incorrectly reject 9223372036854775807. */ -#define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62)) - int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721 - && LARGE_OFF_T % 2147483647 == 1) - ? 1 : -1]; -int -main (void) -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - ac_cv_sys_large_files=1; break -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - ac_cv_sys_large_files=unknown - break -done -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sys_large_files" >&5 -$as_echo "$ac_cv_sys_large_files" >&6; } -case $ac_cv_sys_large_files in #( - no | unknown) ;; - *) -cat >>confdefs.h <<_ACEOF -#define _LARGE_FILES $ac_cv_sys_large_files -_ACEOF -;; -esac -rm -rf conftest* - fi - - -$as_echo "#define _DARWIN_USE_64_BIT_INODE 1" >>confdefs.h - -fi - - -# Identify characteristics of the host architecture. -unset ac_cv_c_bigendian - -if test x"$target_cpu-$platform" = xsparc64-emu ; then - CFLAGS="$CFLAGS -m64" - HOST_CFLAGS="$HOST_CFLAGS -m64" -fi - -CPPFLAGS="$CPPFLAGS -D_FILE_OFFSET_BITS=64" -HOST_CPPFLAGS="$HOST_CPPFLAGS -D_FILE_OFFSET_BITS=64" - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether byte ordering is bigendian" >&5 -$as_echo_n "checking whether byte ordering is bigendian... " >&6; } -if ${ac_cv_c_bigendian+:} false; then : - $as_echo_n "(cached) " >&6 -else - ac_cv_c_bigendian=unknown - # See if we're dealing with a universal compiler. - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#ifndef __APPLE_CC__ - not a universal capable compiler - #endif - typedef int dummy; - -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - - # Check for potential -arch flags. It is not universal unless - # there are at least two -arch flags with different values. - ac_arch= - ac_prev= - for ac_word in $CC $CFLAGS $CPPFLAGS $LDFLAGS; do - if test -n "$ac_prev"; then - case $ac_word in - i?86 | x86_64 | ppc | ppc64) - if test -z "$ac_arch" || test "$ac_arch" = "$ac_word"; then - ac_arch=$ac_word - else - ac_cv_c_bigendian=universal - break - fi - ;; - esac - ac_prev= - elif test "x$ac_word" = "x-arch"; then - ac_prev=arch - fi - done -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - if test $ac_cv_c_bigendian = unknown; then - # See if sys/param.h defines the BYTE_ORDER macro. - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include - #include - -int -main (void) -{ -#if ! (defined BYTE_ORDER && defined BIG_ENDIAN \ - && defined LITTLE_ENDIAN && BYTE_ORDER && BIG_ENDIAN \ - && LITTLE_ENDIAN) - bogus endian macros - #endif - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - # It does; now see whether it defined to BIG_ENDIAN or not. - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include - #include - -int -main (void) -{ -#if BYTE_ORDER != BIG_ENDIAN - not big endian - #endif - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - ac_cv_c_bigendian=yes -else - ac_cv_c_bigendian=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - fi - if test $ac_cv_c_bigendian = unknown; then - # See if defines _LITTLE_ENDIAN or _BIG_ENDIAN (e.g., Solaris). - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include - -int -main (void) -{ -#if ! (defined _LITTLE_ENDIAN || defined _BIG_ENDIAN) - bogus endian macros - #endif - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - # It does; now see whether it defined to _BIG_ENDIAN or not. - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include - -int -main (void) -{ -#ifndef _BIG_ENDIAN - not big endian - #endif - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - ac_cv_c_bigendian=yes -else - ac_cv_c_bigendian=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - fi - if test $ac_cv_c_bigendian = unknown; then - # Compile a test program. - if test "$cross_compiling" = yes; then : - # Try to guess by grepping values from an object file. - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -short int ascii_mm[] = - { 0x4249, 0x4765, 0x6E44, 0x6961, 0x6E53, 0x7953, 0 }; - short int ascii_ii[] = - { 0x694C, 0x5454, 0x656C, 0x6E45, 0x6944, 0x6E61, 0 }; - int use_ascii (int i) { - return ascii_mm[i] + ascii_ii[i]; - } - short int ebcdic_ii[] = - { 0x89D3, 0xE3E3, 0x8593, 0x95C5, 0x89C4, 0x9581, 0 }; - short int ebcdic_mm[] = - { 0xC2C9, 0xC785, 0x95C4, 0x8981, 0x95E2, 0xA8E2, 0 }; - int use_ebcdic (int i) { - return ebcdic_mm[i] + ebcdic_ii[i]; - } - extern int foo; - -int -main (void) -{ -return use_ascii (foo) == use_ebcdic (foo); - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - if grep BIGenDianSyS conftest.$ac_objext >/dev/null; then - ac_cv_c_bigendian=yes - fi - if grep LiTTleEnDian conftest.$ac_objext >/dev/null ; then - if test "$ac_cv_c_bigendian" = unknown; then - ac_cv_c_bigendian=no - else - # finding both strings is unlikely to happen, but who knows? - ac_cv_c_bigendian=unknown - fi - fi -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -$ac_includes_default -int -main (void) -{ - - /* Are we little or big endian? From Harbison&Steele. */ - union - { - long int l; - char c[sizeof (long int)]; - } u; - u.l = 1; - return u.c[sizeof (long int) - 1] == 1; - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_run "$LINENO"; then : - ac_cv_c_bigendian=no -else - ac_cv_c_bigendian=yes -fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext -fi - - fi -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_bigendian" >&5 -$as_echo "$ac_cv_c_bigendian" >&6; } - case $ac_cv_c_bigendian in #( - yes) - $as_echo "#define WORDS_BIGENDIAN 1" >>confdefs.h -;; #( - no) - ;; #( - universal) - -$as_echo "#define AC_APPLE_UNIVERSAL_BUILD 1" >>confdefs.h - - ;; #( - *) - as_fn_error $? "unknown endianness - presetting ac_cv_c_bigendian=no (or yes) will help" "$LINENO" 5 ;; - esac - -# The cast to long int works around a bug in the HP C Compiler -# version HP92453-01 B.11.11.23709.GP, which incorrectly rejects -# declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'. -# This bug is HP SR number 8606223364. -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking size of void *" >&5 -$as_echo_n "checking size of void *... " >&6; } -if ${ac_cv_sizeof_void_p+:} false; then : - $as_echo_n "(cached) " >&6 -else - if ac_fn_c_compute_int "$LINENO" "(long int) (sizeof (void *))" "ac_cv_sizeof_void_p" "$ac_includes_default"; then : - -else - if test "$ac_cv_type_void_p" = yes; then - { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 -$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} -as_fn_error 77 "cannot compute sizeof (void *) -See \`config.log' for more details" "$LINENO" 5; } - else - ac_cv_sizeof_void_p=0 - fi -fi - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof_void_p" >&5 -$as_echo "$ac_cv_sizeof_void_p" >&6; } - - - -cat >>confdefs.h <<_ACEOF -#define SIZEOF_VOID_P $ac_cv_sizeof_void_p -_ACEOF - - -# The cast to long int works around a bug in the HP C Compiler -# version HP92453-01 B.11.11.23709.GP, which incorrectly rejects -# declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'. -# This bug is HP SR number 8606223364. -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking size of long" >&5 -$as_echo_n "checking size of long... " >&6; } -if ${ac_cv_sizeof_long+:} false; then : - $as_echo_n "(cached) " >&6 -else - if ac_fn_c_compute_int "$LINENO" "(long int) (sizeof (long))" "ac_cv_sizeof_long" "$ac_includes_default"; then : - -else - if test "$ac_cv_type_long" = yes; then - { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 -$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} -as_fn_error 77 "cannot compute sizeof (long) -See \`config.log' for more details" "$LINENO" 5; } - else - ac_cv_sizeof_long=0 - fi -fi - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof_long" >&5 -$as_echo "$ac_cv_sizeof_long" >&6; } - - - -cat >>confdefs.h <<_ACEOF -#define SIZEOF_LONG $ac_cv_sizeof_long -_ACEOF - - - -case "$host_os" in - cygwin | windows* | mingw32*) - HOST_CPPFLAGS="$HOST_CPPFLAGS -DUNICODE=1 -D_WIN32_WINNT=0x0500" - CPPFLAGS="$CPPFLAGS -DUNICODE=1 -D_WIN32_WINNT=0x0500" - # The cast to long int works around a bug in the HP C Compiler -# version HP92453-01 B.11.11.23709.GP, which incorrectly rejects -# declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'. -# This bug is HP SR number 8606223364. -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking size of TCHAR" >&5 -$as_echo_n "checking size of TCHAR... " >&6; } -if ${ac_cv_sizeof_TCHAR+:} false; then : - $as_echo_n "(cached) " >&6 -else - if ac_fn_c_compute_int "$LINENO" "(long int) (sizeof (TCHAR))" "ac_cv_sizeof_TCHAR" "#include -"; then : - -else - if test "$ac_cv_type_TCHAR" = yes; then - { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 -$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} -as_fn_error 77 "cannot compute sizeof (TCHAR) -See \`config.log' for more details" "$LINENO" 5; } - else - ac_cv_sizeof_TCHAR=0 - fi -fi - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof_TCHAR" >&5 -$as_echo "$ac_cv_sizeof_TCHAR" >&6; } - - - -cat >>confdefs.h <<_ACEOF -#define SIZEOF_TCHAR $ac_cv_sizeof_TCHAR -_ACEOF - - - ;; -esac - -case "$host_os" in - cygwin | windows* | mingw32* | aros*) - ;; - *) - # The cast to long int works around a bug in the HP C Compiler -# version HP92453-01 B.11.11.23709.GP, which incorrectly rejects -# declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'. -# This bug is HP SR number 8606223364. -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking size of off_t" >&5 -$as_echo_n "checking size of off_t... " >&6; } -if ${ac_cv_sizeof_off_t+:} false; then : - $as_echo_n "(cached) " >&6 -else - if ac_fn_c_compute_int "$LINENO" "(long int) (sizeof (off_t))" "ac_cv_sizeof_off_t" "$ac_includes_default"; then : - -else - if test "$ac_cv_type_off_t" = yes; then - { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 -$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} -as_fn_error 77 "cannot compute sizeof (off_t) -See \`config.log' for more details" "$LINENO" 5; } - else - ac_cv_sizeof_off_t=0 - fi -fi - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof_off_t" >&5 -$as_echo "$ac_cv_sizeof_off_t" >&6; } - - - -cat >>confdefs.h <<_ACEOF -#define SIZEOF_OFF_T $ac_cv_sizeof_off_t -_ACEOF - - - if test x"$ac_cv_sizeof_off_t" != x8 ; then - # The cast to long int works around a bug in the HP C Compiler -# version HP92453-01 B.11.11.23709.GP, which incorrectly rejects -# declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'. -# This bug is HP SR number 8606223364. -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking size of off64_t" >&5 -$as_echo_n "checking size of off64_t... " >&6; } -if ${ac_cv_sizeof_off64_t+:} false; then : - $as_echo_n "(cached) " >&6 -else - if ac_fn_c_compute_int "$LINENO" "(long int) (sizeof (off64_t))" "ac_cv_sizeof_off64_t" "$ac_includes_default"; then : - -else - if test "$ac_cv_type_off64_t" = yes; then - { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 -$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} -as_fn_error 77 "cannot compute sizeof (off64_t) -See \`config.log' for more details" "$LINENO" 5; } - else - ac_cv_sizeof_off64_t=0 - fi -fi - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof_off64_t" >&5 -$as_echo "$ac_cv_sizeof_off64_t" >&6; } - - - -cat >>confdefs.h <<_ACEOF -#define SIZEOF_OFF64_T $ac_cv_sizeof_off64_t -_ACEOF - - - test x"$ac_cv_sizeof_off64_t" = x8 || as_fn_error $? "Large file support is required" "$LINENO" 5 - fi;; -esac - -if test x$USE_NLS = xno; then - HOST_CFLAGS="$HOST_CFLAGS -fno-builtin-gettext" -fi - -if test "x$cross_compiling" = xyes; then - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cannot generate manual pages while cross compiling" >&5 -$as_echo "$as_me: WARNING: cannot generate manual pages while cross compiling" >&2;} -else - # Extract the first word of "help2man", so it can be a program name with args. -set dummy help2man; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_path_HELP2MAN+:} false; then : - $as_echo_n "(cached) " >&6 -else - case $HELP2MAN in - [\\/]* | ?:[\\/]*) - ac_cv_path_HELP2MAN="$HELP2MAN" # Let the user override the test with a path. - ;; - *) - as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_path_HELP2MAN="$as_dir/$ac_word$ac_exec_ext" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - - ;; -esac -fi -HELP2MAN=$ac_cv_path_HELP2MAN -if test -n "$HELP2MAN"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $HELP2MAN" >&5 -$as_echo "$HELP2MAN" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - - -fi - -# Check for functions and headers. -for ac_func in posix_memalign memalign getextmntent -do : - as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` -ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var" -if eval test \"x\$"$as_ac_var"\" = x"yes"; then : - cat >>confdefs.h <<_ACEOF -#define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1 -_ACEOF - -fi -done - -for ac_header in sys/param.h sys/mount.h sys/mnttab.h limits.h -do : - as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh` -ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default" -if eval test \"x\$"$as_ac_Header"\" = x"yes"; then : - cat >>confdefs.h <<_ACEOF -#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1 -_ACEOF - -fi - -done - - -# glibc 2.25 still includes sys/sysmacros.h in sys/types.h but emits deprecation -# warning which causes compilation failure later with -Werror. So use -Werror here -# as well to force proper sys/sysmacros.h detection. -SAVED_CFLAGS="$CFLAGS" -CFLAGS="$HOST_CFLAGS -Werror" - - - - for ac_header in $ac_header_list -do : - as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh` -ac_fn_c_check_header_compile "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default -" -if eval test \"x\$"$as_ac_Header"\" = x"yes"; then : - cat >>confdefs.h <<_ACEOF -#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1 -_ACEOF - -fi - -done - - - - -ac_fn_c_check_header_mongrel "$LINENO" "sys/mkdev.h" "ac_cv_header_sys_mkdev_h" "$ac_includes_default" -if test "x$ac_cv_header_sys_mkdev_h" = xyes; then : - -$as_echo "#define MAJOR_IN_MKDEV 1" >>confdefs.h - -fi - - -if test $ac_cv_header_sys_mkdev_h = no; then - ac_fn_c_check_header_mongrel "$LINENO" "sys/sysmacros.h" "ac_cv_header_sys_sysmacros_h" "$ac_includes_default" -if test "x$ac_cv_header_sys_sysmacros_h" = xyes; then : - -$as_echo "#define MAJOR_IN_SYSMACROS 1" >>confdefs.h - -fi - - -fi - -CFLAGS="$SAVED_CFLAGS" - -ac_fn_c_check_member "$LINENO" "struct statfs" "f_fstypename" "ac_cv_member_struct_statfs_f_fstypename" "$ac_includes_default -#include -#include -" -if test "x$ac_cv_member_struct_statfs_f_fstypename" = xyes; then : - -cat >>confdefs.h <<_ACEOF -#define HAVE_STRUCT_STATFS_F_FSTYPENAME 1 -_ACEOF - - -fi - - -ac_fn_c_check_member "$LINENO" "struct statfs" "f_mntfromname" "ac_cv_member_struct_statfs_f_mntfromname" "$ac_includes_default -#include -#include -" -if test "x$ac_cv_member_struct_statfs_f_mntfromname" = xyes; then : - -cat >>confdefs.h <<_ACEOF -#define HAVE_STRUCT_STATFS_F_MNTFROMNAME 1 -_ACEOF - - -fi - - -# For opendisk() and getrawpartition() on NetBSD. -# Used in util/deviceiter.c and in util/hostdisk.c. -ac_fn_c_check_header_mongrel "$LINENO" "util.h" "ac_cv_header_util_h" "$ac_includes_default" -if test "x$ac_cv_header_util_h" = xyes; then : - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for opendisk in -lutil" >&5 -$as_echo_n "checking for opendisk in -lutil... " >&6; } -if ${ac_cv_lib_util_opendisk+:} false; then : - $as_echo_n "(cached) " >&6 -else - ac_check_lib_save_LIBS=$LIBS -LIBS="-lutil $LIBS" -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -/* Override any GCC internal prototype to avoid an error. - Use char because int might match the return type of a GCC - builtin and then its argument prototype would still apply. */ -#ifdef __cplusplus -extern "C" -#endif -char opendisk (); -int -main (void) -{ -return opendisk (); - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - ac_cv_lib_util_opendisk=yes -else - ac_cv_lib_util_opendisk=no -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -LIBS=$ac_check_lib_save_LIBS -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_util_opendisk" >&5 -$as_echo "$ac_cv_lib_util_opendisk" >&6; } -if test "x$ac_cv_lib_util_opendisk" = xyes; then : - - LIBUTIL="-lutil" - -$as_echo "#define HAVE_OPENDISK 1" >>confdefs.h - - -fi - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for getrawpartition in -lutil" >&5 -$as_echo_n "checking for getrawpartition in -lutil... " >&6; } -if ${ac_cv_lib_util_getrawpartition+:} false; then : - $as_echo_n "(cached) " >&6 -else - ac_check_lib_save_LIBS=$LIBS -LIBS="-lutil $LIBS" -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -/* Override any GCC internal prototype to avoid an error. - Use char because int might match the return type of a GCC - builtin and then its argument prototype would still apply. */ -#ifdef __cplusplus -extern "C" -#endif -char getrawpartition (); -int -main (void) -{ -return getrawpartition (); - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - ac_cv_lib_util_getrawpartition=yes -else - ac_cv_lib_util_getrawpartition=no -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -LIBS=$ac_check_lib_save_LIBS -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_util_getrawpartition" >&5 -$as_echo "$ac_cv_lib_util_getrawpartition" >&6; } -if test "x$ac_cv_lib_util_getrawpartition" = xyes; then : - - LIBUTIL="-lutil" - -$as_echo "#define HAVE_GETRAWPARTITION 1" >>confdefs.h - - -fi - - -fi - - - - -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether -Wtrampolines work" >&5 -$as_echo_n "checking whether -Wtrampolines work... " >&6; } -if ${grub_cv_host_cc_wtrampolines+:} false; then : - $as_echo_n "(cached) " >&6 -else - - SAVED_CFLAGS="$CFLAGS" - CFLAGS="$HOST_CFLAGS -Wtrampolines -Werror" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include -int va_arg_func (int fixed, va_list args); -int -main (void) -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - grub_cv_host_cc_wtrampolines=yes -else - grub_cv_host_cc_wtrampolines=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - CFLAGS="$SAVED_CFLAGS" - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $grub_cv_host_cc_wtrampolines" >&5 -$as_echo "$grub_cv_host_cc_wtrampolines" >&6; } - -if test x"$grub_host_cv_cc_wtrampolines" = xyes ; then - HOST_CFLAGS="$HOST_CFLAGS -Wtrampolines" -fi - -# -# Check for host and build compilers. -# -HOST_CC=$CC -for ac_prog in gcc egcs cc -do - # Extract the first word of "$ac_prog", so it can be a program name with args. -set dummy $ac_prog; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_BUILD_CC+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test -n "$BUILD_CC"; then - ac_cv_prog_BUILD_CC="$BUILD_CC" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_BUILD_CC="$ac_prog" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -BUILD_CC=$ac_cv_prog_BUILD_CC -if test -n "$BUILD_CC"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $BUILD_CC" >&5 -$as_echo "$BUILD_CC" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - - - test -n "$BUILD_CC" && break -done - -test -z "$BUILD_CC" && as_fn_error $? "none of gcc, egcs and cc is found. set BUILD_CC manually." "$LINENO" 5 -BUILD_CPP="$BUILD_CC -E" - -case "$build_os" in - haiku*) BUILD_LIBM= ;; - *) BUILD_LIBM=-lm ;; -esac - - -case "$build_os" in - cygwin*|mingw32*|mingw64*) BUILD_EXEEXT=.exe ;; - *) BUILD_EXEEXT= ;; -esac - - -# In some build environments like termux /bin/sh is not a valid -# shebang. Use $SHELL instead if it's executable and /bin/sh isn't -BUILD_SHEBANG=/bin/sh -for she in /bin/sh "$SHELL"; do - if test -x "$she" ; then - BUILD_SHEBANG="$she" - fi -done - - -# For gnulib. - - - - - - LIBC_FATAL_STDERR_=1 - export LIBC_FATAL_STDERR_ - -ac_fn_c_check_type "$LINENO" "size_t" "ac_cv_type_size_t" "$ac_includes_default" -if test "x$ac_cv_type_size_t" = xyes; then : - -else - -cat >>confdefs.h <<_ACEOF -#define size_t unsigned int -_ACEOF - -fi - -# The Ultrix 4.2 mips builtin alloca declared by alloca.h only works -# for constant arguments. Useless! -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for working alloca.h" >&5 -$as_echo_n "checking for working alloca.h... " >&6; } -if ${ac_cv_working_alloca_h+:} false; then : - $as_echo_n "(cached) " >&6 -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include -int -main (void) -{ -char *p = (char *) alloca (2 * sizeof (int)); - if (p) return 0; - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - ac_cv_working_alloca_h=yes -else - ac_cv_working_alloca_h=no -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_working_alloca_h" >&5 -$as_echo "$ac_cv_working_alloca_h" >&6; } -if test $ac_cv_working_alloca_h = yes; then - -$as_echo "#define HAVE_ALLOCA_H 1" >>confdefs.h - -fi - -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for alloca" >&5 -$as_echo_n "checking for alloca... " >&6; } -if ${ac_cv_func_alloca_works+:} false; then : - $as_echo_n "(cached) " >&6 -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#ifdef __GNUC__ -# define alloca __builtin_alloca -#else -# ifdef _MSC_VER -# include -# define alloca _alloca -# else -# ifdef HAVE_ALLOCA_H -# include -# else -# ifdef _AIX - #pragma alloca -# else -# ifndef alloca /* predefined by HP cc +Olibcalls */ -void *alloca (size_t); -# endif -# endif -# endif -# endif -#endif - -int -main (void) -{ -char *p = (char *) alloca (1); - if (p) return 0; - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - ac_cv_func_alloca_works=yes -else - ac_cv_func_alloca_works=no -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_func_alloca_works" >&5 -$as_echo "$ac_cv_func_alloca_works" >&6; } - -if test $ac_cv_func_alloca_works = yes; then - -$as_echo "#define HAVE_ALLOCA 1" >>confdefs.h - -else - # The SVR3 libPW and SVR4 libucb both contain incompatible functions -# that cause trouble. Some versions do not even contain alloca or -# contain a buggy version. If you still want to use their alloca, -# use ar to extract alloca.o from them instead of compiling alloca.c. - - - - - -ALLOCA=\${LIBOBJDIR}alloca.$ac_objext - -$as_echo "#define C_ALLOCA 1" >>confdefs.h - - -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether \`alloca.c' needs Cray hooks" >&5 -$as_echo_n "checking whether \`alloca.c' needs Cray hooks... " >&6; } -if ${ac_cv_os_cray+:} false; then : - $as_echo_n "(cached) " >&6 -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#if defined CRAY && ! defined CRAY2 -webecray -#else -wenotbecray -#endif - -_ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "webecray" >/dev/null 2>&1; then : - ac_cv_os_cray=yes -else - ac_cv_os_cray=no -fi -rm -f conftest* - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_os_cray" >&5 -$as_echo "$ac_cv_os_cray" >&6; } -if test $ac_cv_os_cray = yes; then - for ac_func in _getb67 GETB67 getb67; do - as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` -ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var" -if eval test \"x\$"$as_ac_var"\" = x"yes"; then : - -cat >>confdefs.h <<_ACEOF -#define CRAY_STACKSEG_END $ac_func -_ACEOF - - break -fi - - done -fi - -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking stack direction for C alloca" >&5 -$as_echo_n "checking stack direction for C alloca... " >&6; } -if ${ac_cv_c_stack_direction+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test "$cross_compiling" = yes; then : - ac_cv_c_stack_direction=0 -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -$ac_includes_default -int -find_stack_direction (int *addr, int depth) -{ - int dir, dummy = 0; - if (! addr) - addr = &dummy; - *addr = addr < &dummy ? 1 : addr == &dummy ? 0 : -1; - dir = depth ? find_stack_direction (addr, depth - 1) : 0; - return dir + dummy; -} - -int -main (int argc, char **argv) -{ - return find_stack_direction (0, argc + !argv + 20) < 0; -} -_ACEOF -if ac_fn_c_try_run "$LINENO"; then : - ac_cv_c_stack_direction=1 -else - ac_cv_c_stack_direction=-1 -fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext -fi - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_stack_direction" >&5 -$as_echo "$ac_cv_c_stack_direction" >&6; } -cat >>confdefs.h <<_ACEOF -#define STACK_DIRECTION $ac_cv_c_stack_direction -_ACEOF - - -fi - -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for inline" >&5 -$as_echo_n "checking for inline... " >&6; } -if ${ac_cv_c_inline+:} false; then : - $as_echo_n "(cached) " >&6 -else - ac_cv_c_inline=no -for ac_kw in inline __inline__ __inline; do - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#ifndef __cplusplus -typedef int foo_t; -static $ac_kw foo_t static_foo () {return 0; } -$ac_kw foo_t foo () {return 0; } -#endif - -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - ac_cv_c_inline=$ac_kw -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - test "$ac_cv_c_inline" != no && break -done - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_inline" >&5 -$as_echo "$ac_cv_c_inline" >&6; } - -case $ac_cv_c_inline in - inline | yes) ;; - *) - case $ac_cv_c_inline in - no) ac_val=;; - *) ac_val=$ac_cv_c_inline;; - esac - cat >>confdefs.h <<_ACEOF -#ifndef __cplusplus -#define inline $ac_val -#endif -_ACEOF - ;; -esac - -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for C/C++ restrict keyword" >&5 -$as_echo_n "checking for C/C++ restrict keyword... " >&6; } -if ${ac_cv_c_restrict+:} false; then : - $as_echo_n "(cached) " >&6 -else - ac_cv_c_restrict=no - # The order here caters to the fact that C++ does not require restrict. - for ac_kw in __restrict __restrict__ _Restrict restrict; do - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -typedef int *int_ptr; - int foo (int_ptr $ac_kw ip) { return ip[0]; } - int bar (int [$ac_kw]); /* Catch GCC bug 14050. */ - int bar (int ip[$ac_kw]) { return ip[0]; } - -int -main (void) -{ -int s[1]; - int *$ac_kw t = s; - t[0] = 0; - return foo (t) + bar (t); - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - ac_cv_c_restrict=$ac_kw -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - test "$ac_cv_c_restrict" != no && break - done - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_restrict" >&5 -$as_echo "$ac_cv_c_restrict" >&6; } - - case $ac_cv_c_restrict in - restrict) ;; - no) $as_echo "#define restrict /**/" >>confdefs.h - ;; - *) cat >>confdefs.h <<_ACEOF -#define restrict $ac_cv_c_restrict -_ACEOF - ;; - esac - -ac_fn_c_check_decl "$LINENO" "clearerr_unlocked" "ac_cv_have_decl_clearerr_unlocked" "$ac_includes_default" -if test "x$ac_cv_have_decl_clearerr_unlocked" = xyes; then : - ac_have_decl=1 -else - ac_have_decl=0 -fi - -cat >>confdefs.h <<_ACEOF -#define HAVE_DECL_CLEARERR_UNLOCKED $ac_have_decl -_ACEOF - -ac_fn_c_check_decl "$LINENO" "feof_unlocked" "ac_cv_have_decl_feof_unlocked" "$ac_includes_default" -if test "x$ac_cv_have_decl_feof_unlocked" = xyes; then : - ac_have_decl=1 -else - ac_have_decl=0 -fi - -cat >>confdefs.h <<_ACEOF -#define HAVE_DECL_FEOF_UNLOCKED $ac_have_decl -_ACEOF - -ac_fn_c_check_decl "$LINENO" "ferror_unlocked" "ac_cv_have_decl_ferror_unlocked" "$ac_includes_default" -if test "x$ac_cv_have_decl_ferror_unlocked" = xyes; then : - ac_have_decl=1 -else - ac_have_decl=0 -fi - -cat >>confdefs.h <<_ACEOF -#define HAVE_DECL_FERROR_UNLOCKED $ac_have_decl -_ACEOF - -ac_fn_c_check_decl "$LINENO" "fflush_unlocked" "ac_cv_have_decl_fflush_unlocked" "$ac_includes_default" -if test "x$ac_cv_have_decl_fflush_unlocked" = xyes; then : - ac_have_decl=1 -else - ac_have_decl=0 -fi - -cat >>confdefs.h <<_ACEOF -#define HAVE_DECL_FFLUSH_UNLOCKED $ac_have_decl -_ACEOF - -ac_fn_c_check_decl "$LINENO" "fgets_unlocked" "ac_cv_have_decl_fgets_unlocked" "$ac_includes_default" -if test "x$ac_cv_have_decl_fgets_unlocked" = xyes; then : - ac_have_decl=1 -else - ac_have_decl=0 -fi - -cat >>confdefs.h <<_ACEOF -#define HAVE_DECL_FGETS_UNLOCKED $ac_have_decl -_ACEOF - -ac_fn_c_check_decl "$LINENO" "fputc_unlocked" "ac_cv_have_decl_fputc_unlocked" "$ac_includes_default" -if test "x$ac_cv_have_decl_fputc_unlocked" = xyes; then : - ac_have_decl=1 -else - ac_have_decl=0 -fi - -cat >>confdefs.h <<_ACEOF -#define HAVE_DECL_FPUTC_UNLOCKED $ac_have_decl -_ACEOF - -ac_fn_c_check_decl "$LINENO" "fputs_unlocked" "ac_cv_have_decl_fputs_unlocked" "$ac_includes_default" -if test "x$ac_cv_have_decl_fputs_unlocked" = xyes; then : - ac_have_decl=1 -else - ac_have_decl=0 -fi - -cat >>confdefs.h <<_ACEOF -#define HAVE_DECL_FPUTS_UNLOCKED $ac_have_decl -_ACEOF - -ac_fn_c_check_decl "$LINENO" "fread_unlocked" "ac_cv_have_decl_fread_unlocked" "$ac_includes_default" -if test "x$ac_cv_have_decl_fread_unlocked" = xyes; then : - ac_have_decl=1 -else - ac_have_decl=0 -fi - -cat >>confdefs.h <<_ACEOF -#define HAVE_DECL_FREAD_UNLOCKED $ac_have_decl -_ACEOF - -ac_fn_c_check_decl "$LINENO" "fwrite_unlocked" "ac_cv_have_decl_fwrite_unlocked" "$ac_includes_default" -if test "x$ac_cv_have_decl_fwrite_unlocked" = xyes; then : - ac_have_decl=1 -else - ac_have_decl=0 -fi - -cat >>confdefs.h <<_ACEOF -#define HAVE_DECL_FWRITE_UNLOCKED $ac_have_decl -_ACEOF - -ac_fn_c_check_decl "$LINENO" "getc_unlocked" "ac_cv_have_decl_getc_unlocked" "$ac_includes_default" -if test "x$ac_cv_have_decl_getc_unlocked" = xyes; then : - ac_have_decl=1 -else - ac_have_decl=0 -fi - -cat >>confdefs.h <<_ACEOF -#define HAVE_DECL_GETC_UNLOCKED $ac_have_decl -_ACEOF - -ac_fn_c_check_decl "$LINENO" "getchar_unlocked" "ac_cv_have_decl_getchar_unlocked" "$ac_includes_default" -if test "x$ac_cv_have_decl_getchar_unlocked" = xyes; then : - ac_have_decl=1 -else - ac_have_decl=0 -fi - -cat >>confdefs.h <<_ACEOF -#define HAVE_DECL_GETCHAR_UNLOCKED $ac_have_decl -_ACEOF - -ac_fn_c_check_decl "$LINENO" "putc_unlocked" "ac_cv_have_decl_putc_unlocked" "$ac_includes_default" -if test "x$ac_cv_have_decl_putc_unlocked" = xyes; then : - ac_have_decl=1 -else - ac_have_decl=0 -fi - -cat >>confdefs.h <<_ACEOF -#define HAVE_DECL_PUTC_UNLOCKED $ac_have_decl -_ACEOF - -ac_fn_c_check_decl "$LINENO" "putchar_unlocked" "ac_cv_have_decl_putchar_unlocked" "$ac_includes_default" -if test "x$ac_cv_have_decl_putchar_unlocked" = xyes; then : - ac_have_decl=1 -else - ac_have_decl=0 -fi - -cat >>confdefs.h <<_ACEOF -#define HAVE_DECL_PUTCHAR_UNLOCKED $ac_have_decl -_ACEOF - - - - - for ac_func in $ac_func_list -do : - as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` -ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var" -if eval test \"x\$"$as_ac_var"\" = x"yes"; then : - cat >>confdefs.h <<_ACEOF -#define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1 -_ACEOF - -fi -done - - - - - - - - - -ac_fn_c_check_decl "$LINENO" "strerror_r" "ac_cv_have_decl_strerror_r" "$ac_includes_default" -if test "x$ac_cv_have_decl_strerror_r" = xyes; then : - ac_have_decl=1 -else - ac_have_decl=0 -fi - -cat >>confdefs.h <<_ACEOF -#define HAVE_DECL_STRERROR_R $ac_have_decl -_ACEOF - -for ac_func in strerror_r -do : - ac_fn_c_check_func "$LINENO" "strerror_r" "ac_cv_func_strerror_r" -if test "x$ac_cv_func_strerror_r" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_STRERROR_R 1 -_ACEOF - -fi -done - -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether strerror_r returns char *" >&5 -$as_echo_n "checking whether strerror_r returns char *... " >&6; } -if ${ac_cv_func_strerror_r_char_p+:} false; then : - $as_echo_n "(cached) " >&6 -else - - ac_cv_func_strerror_r_char_p=no - if test $ac_cv_have_decl_strerror_r = yes; then - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -$ac_includes_default -int -main (void) -{ - - char buf[100]; - char x = *strerror_r (0, buf, sizeof buf); - char *p = strerror_r (0, buf, sizeof buf); - return !p || x; - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - ac_cv_func_strerror_r_char_p=yes -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - else - # strerror_r is not declared. Choose between - # systems that have relatively inaccessible declarations for the - # function. BeOS and DEC UNIX 4.0 fall in this category, but the - # former has a strerror_r that returns char*, while the latter - # has a strerror_r that returns `int'. - # This test should segfault on the DEC system. - if test "$cross_compiling" = yes; then : - : -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -$ac_includes_default - extern char *strerror_r (); -int -main (void) -{ -char buf[100]; - char x = *strerror_r (0, buf, sizeof buf); - return ! isalpha (x); - ; - return 0; -} -_ACEOF -if ac_fn_c_try_run "$LINENO"; then : - ac_cv_func_strerror_r_char_p=yes -fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext -fi - - fi - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_func_strerror_r_char_p" >&5 -$as_echo "$ac_cv_func_strerror_r_char_p" >&6; } -if test $ac_cv_func_strerror_r_char_p = yes; then - -$as_echo "#define STRERROR_R_CHAR_P 1" >>confdefs.h - -fi - - - XGETTEXT_EXTRA_OPTIONS= - - - GNULIB_BTOWC=0; - GNULIB_WCTOB=0; - GNULIB_MBSINIT=0; - GNULIB_MBRTOWC=0; - GNULIB_MBRLEN=0; - GNULIB_MBSRTOWCS=0; - GNULIB_MBSNRTOWCS=0; - GNULIB_WCRTOMB=0; - GNULIB_WCSRTOMBS=0; - GNULIB_WCSNRTOMBS=0; - GNULIB_WCWIDTH=0; - GNULIB_WMEMCHR=0; - GNULIB_WMEMCMP=0; - GNULIB_WMEMCPY=0; - GNULIB_WMEMMOVE=0; - GNULIB_WMEMSET=0; - GNULIB_WCSLEN=0; - GNULIB_WCSNLEN=0; - GNULIB_WCSCPY=0; - GNULIB_WCPCPY=0; - GNULIB_WCSNCPY=0; - GNULIB_WCPNCPY=0; - GNULIB_WCSCAT=0; - GNULIB_WCSNCAT=0; - GNULIB_WCSCMP=0; - GNULIB_WCSNCMP=0; - GNULIB_WCSCASECMP=0; - GNULIB_WCSNCASECMP=0; - GNULIB_WCSCOLL=0; - GNULIB_WCSXFRM=0; - GNULIB_WCSDUP=0; - GNULIB_WCSCHR=0; - GNULIB_WCSRCHR=0; - GNULIB_WCSCSPN=0; - GNULIB_WCSSPN=0; - GNULIB_WCSPBRK=0; - GNULIB_WCSSTR=0; - GNULIB_WCSTOK=0; - GNULIB_WCSWIDTH=0; - GNULIB_WCSFTIME=0; - HAVE_BTOWC=1; - HAVE_MBSINIT=1; - HAVE_MBRTOWC=1; - HAVE_MBRLEN=1; - HAVE_MBSRTOWCS=1; - HAVE_MBSNRTOWCS=1; - HAVE_WCRTOMB=1; - HAVE_WCSRTOMBS=1; - HAVE_WCSNRTOMBS=1; - HAVE_WMEMCHR=1; - HAVE_WMEMCMP=1; - HAVE_WMEMCPY=1; - HAVE_WMEMMOVE=1; - HAVE_WMEMSET=1; - HAVE_WCSLEN=1; - HAVE_WCSNLEN=1; - HAVE_WCSCPY=1; - HAVE_WCPCPY=1; - HAVE_WCSNCPY=1; - HAVE_WCPNCPY=1; - HAVE_WCSCAT=1; - HAVE_WCSNCAT=1; - HAVE_WCSCMP=1; - HAVE_WCSNCMP=1; - HAVE_WCSCASECMP=1; - HAVE_WCSNCASECMP=1; - HAVE_WCSCOLL=1; - HAVE_WCSXFRM=1; - HAVE_WCSDUP=1; - HAVE_WCSCHR=1; - HAVE_WCSRCHR=1; - HAVE_WCSCSPN=1; - HAVE_WCSSPN=1; - HAVE_WCSPBRK=1; - HAVE_WCSSTR=1; - HAVE_WCSTOK=1; - HAVE_WCSWIDTH=1; - HAVE_WCSFTIME=1; - HAVE_DECL_WCTOB=1; - HAVE_DECL_WCWIDTH=1; - REPLACE_MBSTATE_T=0; - REPLACE_BTOWC=0; - REPLACE_WCTOB=0; - REPLACE_MBSINIT=0; - REPLACE_MBRTOWC=0; - REPLACE_MBRLEN=0; - REPLACE_MBSRTOWCS=0; - REPLACE_MBSNRTOWCS=0; - REPLACE_WCRTOMB=0; - REPLACE_WCSRTOMBS=0; - REPLACE_WCSNRTOMBS=0; - REPLACE_WCWIDTH=0; - REPLACE_WCSWIDTH=0; - REPLACE_WCSFTIME=0; - - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether uses 'inline' correctly" >&5 -$as_echo_n "checking whether uses 'inline' correctly... " >&6; } -if ${gl_cv_header_wchar_h_correct_inline+:} false; then : - $as_echo_n "(cached) " >&6 -else - gl_cv_header_wchar_h_correct_inline=yes - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - - #define wcstod renamed_wcstod -/* Tru64 with Desktop Toolkit C has a bug: must be included before - . - BSD/OS 4.0.1 has a bug: , and must be - included before . */ -#include -#include -#include -#include -extern int zero (void); -int main () { return zero(); } - -_ACEOF - save_ac_compile="$ac_compile" - ac_compile=`echo "$save_ac_compile" | sed s/conftest/conftest1/` - if echo '#include "conftest.c"' >conftest1.c && - { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5 - (eval $ac_compile) 2>&5 - ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; then - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - - #define wcstod renamed_wcstod -/* Tru64 with Desktop Toolkit C has a bug: must be included before - . - BSD/OS 4.0.1 has a bug: , and must be - included before . */ -#include -#include -#include -#include -int zero (void) { return 0; } - -_ACEOF - ac_compile=`echo "$save_ac_compile" | sed s/conftest/conftest2/` - if echo '#include "conftest.c"' >conftest2.c && - { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5 - (eval $ac_compile) 2>&5 - ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; then - if $CC -o conftest$ac_exeext $CFLAGS $LDFLAGS conftest1.$ac_objext conftest2.$ac_objext $LIBS >&5 2>&1; then - : - else - gl_cv_header_wchar_h_correct_inline=no - fi - fi - fi - ac_compile="$save_ac_compile" - rm -f conftest12.c conftest12.$ac_objext conftest$ac_exeext - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_header_wchar_h_correct_inline" >&5 -$as_echo "$gl_cv_header_wchar_h_correct_inline" >&6; } - if test $gl_cv_header_wchar_h_correct_inline = no; then - as_fn_error $? " cannot be used with this compiler ($CC $CFLAGS $CPPFLAGS). -This is a known interoperability problem of glibc <= 2.5 with gcc >= 4.3 in -C99 mode. You have four options: - - Add the flag -fgnu89-inline to CC and reconfigure, or - - Fix your include files, using parts of - , or - - Use a gcc version older than 4.3, or - - Don't use the flags -std=c99 or -std=gnu99. -Configuration aborted." "$LINENO" 5 - fi - - - - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for nl_langinfo and CODESET" >&5 -$as_echo_n "checking for nl_langinfo and CODESET... " >&6; } -if ${am_cv_langinfo_codeset+:} false; then : - $as_echo_n "(cached) " >&6 -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include -int -main (void) -{ -char* cs = nl_langinfo(CODESET); return !cs; - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - am_cv_langinfo_codeset=yes -else - am_cv_langinfo_codeset=no -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_langinfo_codeset" >&5 -$as_echo "$am_cv_langinfo_codeset" >&6; } - if test $am_cv_langinfo_codeset = yes; then - -$as_echo "#define HAVE_LANGINFO_CODESET 1" >>confdefs.h - - fi - - - - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for a traditional french locale" >&5 -$as_echo_n "checking for a traditional french locale... " >&6; } -if ${gt_cv_locale_fr+:} false; then : - $as_echo_n "(cached) " >&6 -else - - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -#include -#include -#if HAVE_LANGINFO_CODESET -# include -#endif -#include -#include -struct tm t; -char buf[16]; -int main () { - /* On BeOS and Haiku, locales are not implemented in libc. Rather, libintl - imitates locale dependent behaviour by looking at the environment - variables, and all locales use the UTF-8 encoding. */ -#if defined __BEOS__ || defined __HAIKU__ - return 1; -#else - /* Check whether the given locale name is recognized by the system. */ -# if defined _WIN32 && !defined __CYGWIN__ - /* On native Windows, setlocale(category, "") looks at the system settings, - not at the environment variables. Also, when an encoding suffix such - as ".65001" or ".54936" is specified, it succeeds but sets the LC_CTYPE - category of the locale to "C". */ - if (setlocale (LC_ALL, getenv ("LC_ALL")) == NULL - || strcmp (setlocale (LC_CTYPE, NULL), "C") == 0) - return 1; -# else - if (setlocale (LC_ALL, "") == NULL) return 1; -# endif - /* Check whether nl_langinfo(CODESET) is nonempty and not "ASCII" or "646". - On Mac OS X 10.3.5 (Darwin 7.5) in the fr_FR locale, nl_langinfo(CODESET) - is empty, and the behaviour of Tcl 8.4 in this locale is not useful. - On OpenBSD 4.0, when an unsupported locale is specified, setlocale() - succeeds but then nl_langinfo(CODESET) is "646". In this situation, - some unit tests fail. - On MirBSD 10, when an unsupported locale is specified, setlocale() - succeeds but then nl_langinfo(CODESET) is "UTF-8". */ -# if HAVE_LANGINFO_CODESET - { - const char *cs = nl_langinfo (CODESET); - if (cs[0] == '\0' || strcmp (cs, "ASCII") == 0 || strcmp (cs, "646") == 0 - || strcmp (cs, "UTF-8") == 0) - return 1; - } -# endif -# ifdef __CYGWIN__ - /* On Cygwin, avoid locale names without encoding suffix, because the - locale_charset() function relies on the encoding suffix. Note that - LC_ALL is set on the command line. */ - if (strchr (getenv ("LC_ALL"), '.') == NULL) return 1; -# endif - /* Check whether in the abbreviation of the second month, the second - character (should be U+00E9: LATIN SMALL LETTER E WITH ACUTE) is only - one byte long. This excludes the UTF-8 encoding. */ - t.tm_year = 1975 - 1900; t.tm_mon = 2 - 1; t.tm_mday = 4; - if (strftime (buf, sizeof (buf), "%b", &t) < 3 || buf[2] != 'v') return 1; -# if !defined __BIONIC__ /* Bionic libc's 'struct lconv' is just a dummy. */ - /* Check whether the decimal separator is a comma. - On NetBSD 3.0 in the fr_FR.ISO8859-1 locale, localeconv()->decimal_point - are nl_langinfo(RADIXCHAR) are both ".". */ - if (localeconv () ->decimal_point[0] != ',') return 1; -# endif - return 0; -#endif -} - -_ACEOF - if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5 - (eval $ac_link) 2>&5 - ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; } && test -s conftest$ac_exeext; then - case "$host_os" in - # Handle native Windows specially, because there setlocale() interprets - # "ar" as "Arabic" or "Arabic_Saudi Arabia.1256", - # "fr" or "fra" as "French" or "French_France.1252", - # "ge"(!) or "deu"(!) as "German" or "German_Germany.1252", - # "ja" as "Japanese" or "Japanese_Japan.932", - # and similar. - mingw*) - # Test for the native Windows locale name. - if (LC_ALL=French_France.1252 LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_fr=French_France.1252 - else - # None found. - gt_cv_locale_fr=none - fi - ;; - *) - # Setting LC_ALL is not enough. Need to set LC_TIME to empty, because - # otherwise on Mac OS X 10.3.5 the LC_TIME=C from the beginning of the - # configure script would override the LC_ALL setting. Likewise for - # LC_CTYPE, which is also set at the beginning of the configure script. - # Test for the usual locale name. - if (LC_ALL=fr_FR LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_fr=fr_FR - else - # Test for the locale name with explicit encoding suffix. - if (LC_ALL=fr_FR.ISO-8859-1 LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_fr=fr_FR.ISO-8859-1 - else - # Test for the AIX, OSF/1, FreeBSD, NetBSD, OpenBSD locale name. - if (LC_ALL=fr_FR.ISO8859-1 LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_fr=fr_FR.ISO8859-1 - else - # Test for the HP-UX locale name. - if (LC_ALL=fr_FR.iso88591 LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_fr=fr_FR.iso88591 - else - # Test for the Solaris 7 locale name. - if (LC_ALL=fr LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_fr=fr - else - # None found. - gt_cv_locale_fr=none - fi - fi - fi - fi - fi - ;; - esac - fi - rm -fr conftest* - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gt_cv_locale_fr" >&5 -$as_echo "$gt_cv_locale_fr" >&6; } - LOCALE_FR=$gt_cv_locale_fr - - - - GNULIB_CHDIR=0; - GNULIB_CHOWN=0; - GNULIB_CLOSE=0; - GNULIB_DUP=0; - GNULIB_DUP2=0; - GNULIB_DUP3=0; - GNULIB_ENVIRON=0; - GNULIB_EUIDACCESS=0; - GNULIB_FACCESSAT=0; - GNULIB_FCHDIR=0; - GNULIB_FCHOWNAT=0; - GNULIB_FDATASYNC=0; - GNULIB_FSYNC=0; - GNULIB_FTRUNCATE=0; - GNULIB_GETCWD=0; - GNULIB_GETDOMAINNAME=0; - GNULIB_GETDTABLESIZE=0; - GNULIB_GETGROUPS=0; - GNULIB_GETHOSTNAME=0; - GNULIB_GETLOGIN=0; - GNULIB_GETLOGIN_R=0; - GNULIB_GETPAGESIZE=0; - GNULIB_GETPASS=0; - GNULIB_GETUSERSHELL=0; - GNULIB_GROUP_MEMBER=0; - GNULIB_ISATTY=0; - GNULIB_LCHOWN=0; - GNULIB_LINK=0; - GNULIB_LINKAT=0; - GNULIB_LSEEK=0; - GNULIB_PIPE=0; - GNULIB_PIPE2=0; - GNULIB_PREAD=0; - GNULIB_PWRITE=0; - GNULIB_READ=0; - GNULIB_READLINK=0; - GNULIB_READLINKAT=0; - GNULIB_RMDIR=0; - GNULIB_SETHOSTNAME=0; - GNULIB_SLEEP=0; - GNULIB_SYMLINK=0; - GNULIB_SYMLINKAT=0; - GNULIB_TRUNCATE=0; - GNULIB_TTYNAME_R=0; - GNULIB_UNISTD_H_NONBLOCKING=0; - GNULIB_UNISTD_H_SIGPIPE=0; - GNULIB_UNLINK=0; - GNULIB_UNLINKAT=0; - GNULIB_USLEEP=0; - GNULIB_WRITE=0; - HAVE_CHOWN=1; - HAVE_DUP2=1; - HAVE_DUP3=1; - HAVE_EUIDACCESS=1; - HAVE_FACCESSAT=1; - HAVE_FCHDIR=1; - HAVE_FCHOWNAT=1; - HAVE_FDATASYNC=1; - HAVE_FSYNC=1; - HAVE_FTRUNCATE=1; - HAVE_GETDTABLESIZE=1; - HAVE_GETGROUPS=1; - HAVE_GETHOSTNAME=1; - HAVE_GETLOGIN=1; - HAVE_GETPAGESIZE=1; - HAVE_GETPASS=1; - HAVE_GROUP_MEMBER=1; - HAVE_LCHOWN=1; - HAVE_LINK=1; - HAVE_LINKAT=1; - HAVE_PIPE=1; - HAVE_PIPE2=1; - HAVE_PREAD=1; - HAVE_PWRITE=1; - HAVE_READLINK=1; - HAVE_READLINKAT=1; - HAVE_SETHOSTNAME=1; - HAVE_SLEEP=1; - HAVE_SYMLINK=1; - HAVE_SYMLINKAT=1; - HAVE_UNLINKAT=1; - HAVE_USLEEP=1; - HAVE_DECL_ENVIRON=1; - HAVE_DECL_FCHDIR=1; - HAVE_DECL_FDATASYNC=1; - HAVE_DECL_GETDOMAINNAME=1; - HAVE_DECL_GETLOGIN=1; - HAVE_DECL_GETLOGIN_R=1; - HAVE_DECL_GETPAGESIZE=1; - HAVE_DECL_GETUSERSHELL=1; - HAVE_DECL_SETHOSTNAME=1; - HAVE_DECL_TRUNCATE=1; - HAVE_DECL_TTYNAME_R=1; - HAVE_OS_H=0; - HAVE_SYS_PARAM_H=0; - REPLACE_CHOWN=0; - REPLACE_CLOSE=0; - REPLACE_DUP=0; - REPLACE_DUP2=0; - REPLACE_FACCESSAT=0; - REPLACE_FCHOWNAT=0; - REPLACE_FTRUNCATE=0; - REPLACE_GETCWD=0; - REPLACE_GETDOMAINNAME=0; - REPLACE_GETDTABLESIZE=0; - REPLACE_GETLOGIN_R=0; - REPLACE_GETGROUPS=0; - REPLACE_GETPAGESIZE=0; - REPLACE_GETPASS=0; - REPLACE_ISATTY=0; - REPLACE_LCHOWN=0; - REPLACE_LINK=0; - REPLACE_LINKAT=0; - REPLACE_LSEEK=0; - REPLACE_PREAD=0; - REPLACE_PWRITE=0; - REPLACE_READ=0; - REPLACE_READLINK=0; - REPLACE_READLINKAT=0; - REPLACE_RMDIR=0; - REPLACE_SLEEP=0; - REPLACE_SYMLINK=0; - REPLACE_SYMLINKAT=0; - REPLACE_TRUNCATE=0; - REPLACE_TTYNAME_R=0; - REPLACE_UNLINK=0; - REPLACE_UNLINKAT=0; - REPLACE_USLEEP=0; - REPLACE_WRITE=0; - UNISTD_H_HAVE_WINSOCK2_H=0; - UNISTD_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS=0; - - - - - - - - - - - - - - if test $ac_cv_func__set_invalid_parameter_handler = yes; then - HAVE_MSVC_INVALID_PARAMETER_HANDLER=1 - -$as_echo "#define HAVE_MSVC_INVALID_PARAMETER_HANDLER 1" >>confdefs.h - - else - HAVE_MSVC_INVALID_PARAMETER_HANDLER=0 - fi - - - - - - - - GNULIB_OPENDIR=0; - GNULIB_READDIR=0; - GNULIB_REWINDDIR=0; - GNULIB_CLOSEDIR=0; - GNULIB_DIRFD=0; - GNULIB_FDOPENDIR=0; - GNULIB_SCANDIR=0; - GNULIB_ALPHASORT=0; - HAVE_OPENDIR=1; - HAVE_READDIR=1; - HAVE_REWINDDIR=1; - HAVE_CLOSEDIR=1; - HAVE_DECL_DIRFD=1; - HAVE_DECL_FDOPENDIR=1; - HAVE_FDOPENDIR=1; - HAVE_SCANDIR=1; - HAVE_ALPHASORT=1; - REPLACE_OPENDIR=0; - REPLACE_CLOSEDIR=0; - REPLACE_DIRFD=0; - REPLACE_FDOPENDIR=0; - - - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the preprocessor supports include_next" >&5 -$as_echo_n "checking whether the preprocessor supports include_next... " >&6; } -if ${gl_cv_have_include_next+:} false; then : - $as_echo_n "(cached) " >&6 -else - rm -rf conftestd1a conftestd1b conftestd2 - mkdir conftestd1a conftestd1b conftestd2 - cat < conftestd1a/conftest.h -#define DEFINED_IN_CONFTESTD1 -#include_next -#ifdef DEFINED_IN_CONFTESTD2 -int foo; -#else -#error "include_next doesn't work" -#endif -EOF - cat < conftestd1b/conftest.h -#define DEFINED_IN_CONFTESTD1 -#include -#include_next -#ifdef DEFINED_IN_CONFTESTD2 -int foo; -#else -#error "include_next doesn't work" -#endif -EOF - cat < conftestd2/conftest.h -#ifndef DEFINED_IN_CONFTESTD1 -#error "include_next test doesn't work" -#endif -#define DEFINED_IN_CONFTESTD2 -EOF - gl_save_CPPFLAGS="$CPPFLAGS" - CPPFLAGS="$gl_save_CPPFLAGS -Iconftestd1b -Iconftestd2" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - gl_cv_have_include_next=yes -else - CPPFLAGS="$gl_save_CPPFLAGS -Iconftestd1a -Iconftestd2" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - gl_cv_have_include_next=buggy -else - gl_cv_have_include_next=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - CPPFLAGS="$gl_save_CPPFLAGS" - rm -rf conftestd1a conftestd1b conftestd2 - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_have_include_next" >&5 -$as_echo "$gl_cv_have_include_next" >&6; } - PRAGMA_SYSTEM_HEADER= - if test $gl_cv_have_include_next = yes; then - INCLUDE_NEXT=include_next - INCLUDE_NEXT_AS_FIRST_DIRECTIVE=include_next - if test -n "$GCC"; then - PRAGMA_SYSTEM_HEADER='#pragma GCC system_header' - fi - else - if test $gl_cv_have_include_next = buggy; then - INCLUDE_NEXT=include - INCLUDE_NEXT_AS_FIRST_DIRECTIVE=include_next - else - INCLUDE_NEXT=include - INCLUDE_NEXT_AS_FIRST_DIRECTIVE=include - fi - fi - - - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether system header files limit the line length" >&5 -$as_echo_n "checking whether system header files limit the line length... " >&6; } -if ${gl_cv_pragma_columns+:} false; then : - $as_echo_n "(cached) " >&6 -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -#ifdef __TANDEM -choke me -#endif - -_ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "choke me" >/dev/null 2>&1; then : - gl_cv_pragma_columns=yes -else - gl_cv_pragma_columns=no -fi -rm -f conftest* - - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_pragma_columns" >&5 -$as_echo "$gl_cv_pragma_columns" >&6; } - if test $gl_cv_pragma_columns = yes; then - PRAGMA_COLUMNS="#pragma COLUMNS 10000" - else - PRAGMA_COLUMNS= - fi - - - - - - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether // is distinct from /" >&5 -$as_echo_n "checking whether // is distinct from /... " >&6; } -if ${gl_cv_double_slash_root+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test x"$cross_compiling" = xyes ; then - # When cross-compiling, there is no way to tell whether // is special - # short of a list of hosts. However, the only known hosts to date - # that have a distinct // are Apollo DomainOS (too old to port to), - # Cygwin, and z/OS. If anyone knows of another system for which // has - # special semantics and is distinct from /, please report it to - # . - case $host in - *-cygwin | i370-ibm-openedition) - gl_cv_double_slash_root=yes ;; - *) - # Be optimistic and assume that / and // are the same when we - # don't know. - gl_cv_double_slash_root='unknown, assuming no' ;; - esac - else - set x `ls -di / // 2>/dev/null` - if test "$2" = "$4" && wc //dev/null >/dev/null 2>&1; then - gl_cv_double_slash_root=no - else - gl_cv_double_slash_root=yes - fi - fi -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_double_slash_root" >&5 -$as_echo "$gl_cv_double_slash_root" >&6; } - if test "$gl_cv_double_slash_root" = yes; then - -$as_echo "#define DOUBLE_SLASH_IS_DISTINCT_ROOT 1" >>confdefs.h - - fi - - - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for complete errno.h" >&5 -$as_echo_n "checking for complete errno.h... " >&6; } -if ${gl_cv_header_errno_h_complete+:} false; then : - $as_echo_n "(cached) " >&6 -else - - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -#include -#if !defined ETXTBSY -booboo -#endif -#if !defined ENOMSG -booboo -#endif -#if !defined EIDRM -booboo -#endif -#if !defined ENOLINK -booboo -#endif -#if !defined EPROTO -booboo -#endif -#if !defined EMULTIHOP -booboo -#endif -#if !defined EBADMSG -booboo -#endif -#if !defined EOVERFLOW -booboo -#endif -#if !defined ENOTSUP -booboo -#endif -#if !defined ENETRESET -booboo -#endif -#if !defined ECONNABORTED -booboo -#endif -#if !defined ESTALE -booboo -#endif -#if !defined EDQUOT -booboo -#endif -#if !defined ECANCELED -booboo -#endif -#if !defined EOWNERDEAD -booboo -#endif -#if !defined ENOTRECOVERABLE -booboo -#endif -#if !defined EILSEQ -booboo -#endif - -_ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "booboo" >/dev/null 2>&1; then : - gl_cv_header_errno_h_complete=no -else - gl_cv_header_errno_h_complete=yes -fi -rm -f conftest* - - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_header_errno_h_complete" >&5 -$as_echo "$gl_cv_header_errno_h_complete" >&6; } - if test $gl_cv_header_errno_h_complete = yes; then - ERRNO_H='' - else - - - - - - - - - if test $gl_cv_have_include_next = yes; then - gl_cv_next_errno_h='<'errno.h'>' - else - { $as_echo "$as_me:${as_lineno-$LINENO}: checking absolute name of " >&5 -$as_echo_n "checking absolute name of ... " >&6; } -if ${gl_cv_next_errno_h+:} false; then : - $as_echo_n "(cached) " >&6 -else - - - - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include -_ACEOF - case "$host_os" in - aix*) gl_absname_cpp="$ac_cpp -C" ;; - *) gl_absname_cpp="$ac_cpp" ;; - esac - - case "$host_os" in - mingw*) - gl_dirsep_regex='[/\\]' - ;; - *) - gl_dirsep_regex='\/' - ;; - esac - gl_make_literal_regex_sed='s,[]$^\\.*/[],\\&,g' - gl_header_literal_regex=`echo 'errno.h' \ - | sed -e "$gl_make_literal_regex_sed"` - gl_absolute_header_sed="/${gl_dirsep_regex}${gl_header_literal_regex}/"'{ - s/.*"\(.*'"${gl_dirsep_regex}${gl_header_literal_regex}"'\)".*/\1/ - s|^/[^/]|//&| - p - q - }' - - gl_cv_absolute_errno_h=`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 | - sed -n "$gl_absolute_header_sed"` - - gl_header=$gl_cv_absolute_errno_h - gl_cv_next_errno_h='"'$gl_header'"' - - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_next_errno_h" >&5 -$as_echo "$gl_cv_next_errno_h" >&6; } - fi - NEXT_ERRNO_H=$gl_cv_next_errno_h - - if test $gl_cv_have_include_next = yes || test $gl_cv_have_include_next = buggy; then - # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include_next' - gl_next_as_first_directive='<'errno.h'>' - else - # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include' - gl_next_as_first_directive=$gl_cv_next_errno_h - fi - NEXT_AS_FIRST_DIRECTIVE_ERRNO_H=$gl_next_as_first_directive - - - - - ERRNO_H='errno.h' - fi - - if test -n "$ERRNO_H"; then - GL_GENERATE_ERRNO_H_TRUE= - GL_GENERATE_ERRNO_H_FALSE='#' -else - GL_GENERATE_ERRNO_H_TRUE='#' - GL_GENERATE_ERRNO_H_FALSE= -fi - - - if test -n "$ERRNO_H"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for EMULTIHOP value" >&5 -$as_echo_n "checking for EMULTIHOP value... " >&6; } -if ${gl_cv_header_errno_h_EMULTIHOP+:} false; then : - $as_echo_n "(cached) " >&6 -else - - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -#include -#ifdef EMULTIHOP -yes -#endif - -_ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "yes" >/dev/null 2>&1; then : - gl_cv_header_errno_h_EMULTIHOP=yes -else - gl_cv_header_errno_h_EMULTIHOP=no -fi -rm -f conftest* - - if test $gl_cv_header_errno_h_EMULTIHOP = no; then - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -#define _XOPEN_SOURCE_EXTENDED 1 -#include -#ifdef EMULTIHOP -yes -#endif - -_ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "yes" >/dev/null 2>&1; then : - gl_cv_header_errno_h_EMULTIHOP=hidden -fi -rm -f conftest* - - if test $gl_cv_header_errno_h_EMULTIHOP = hidden; then - if ac_fn_c_compute_int "$LINENO" "EMULTIHOP" "gl_cv_header_errno_h_EMULTIHOP" " -#define _XOPEN_SOURCE_EXTENDED 1 -#include -/* The following two lines are a workaround against an autoconf-2.52 bug. */ -#include -#include -"; then : - -fi - - fi - fi - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_header_errno_h_EMULTIHOP" >&5 -$as_echo "$gl_cv_header_errno_h_EMULTIHOP" >&6; } - case $gl_cv_header_errno_h_EMULTIHOP in - yes | no) - EMULTIHOP_HIDDEN=0; EMULTIHOP_VALUE= - ;; - *) - EMULTIHOP_HIDDEN=1; EMULTIHOP_VALUE="$gl_cv_header_errno_h_EMULTIHOP" - ;; - esac - - - fi - - - if test -n "$ERRNO_H"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ENOLINK value" >&5 -$as_echo_n "checking for ENOLINK value... " >&6; } -if ${gl_cv_header_errno_h_ENOLINK+:} false; then : - $as_echo_n "(cached) " >&6 -else - - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -#include -#ifdef ENOLINK -yes -#endif - -_ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "yes" >/dev/null 2>&1; then : - gl_cv_header_errno_h_ENOLINK=yes -else - gl_cv_header_errno_h_ENOLINK=no -fi -rm -f conftest* - - if test $gl_cv_header_errno_h_ENOLINK = no; then - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -#define _XOPEN_SOURCE_EXTENDED 1 -#include -#ifdef ENOLINK -yes -#endif - -_ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "yes" >/dev/null 2>&1; then : - gl_cv_header_errno_h_ENOLINK=hidden -fi -rm -f conftest* - - if test $gl_cv_header_errno_h_ENOLINK = hidden; then - if ac_fn_c_compute_int "$LINENO" "ENOLINK" "gl_cv_header_errno_h_ENOLINK" " -#define _XOPEN_SOURCE_EXTENDED 1 -#include -/* The following two lines are a workaround against an autoconf-2.52 bug. */ -#include -#include -"; then : - -fi - - fi - fi - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_header_errno_h_ENOLINK" >&5 -$as_echo "$gl_cv_header_errno_h_ENOLINK" >&6; } - case $gl_cv_header_errno_h_ENOLINK in - yes | no) - ENOLINK_HIDDEN=0; ENOLINK_VALUE= - ;; - *) - ENOLINK_HIDDEN=1; ENOLINK_VALUE="$gl_cv_header_errno_h_ENOLINK" - ;; - esac - - - fi - - - if test -n "$ERRNO_H"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for EOVERFLOW value" >&5 -$as_echo_n "checking for EOVERFLOW value... " >&6; } -if ${gl_cv_header_errno_h_EOVERFLOW+:} false; then : - $as_echo_n "(cached) " >&6 -else - - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -#include -#ifdef EOVERFLOW -yes -#endif - -_ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "yes" >/dev/null 2>&1; then : - gl_cv_header_errno_h_EOVERFLOW=yes -else - gl_cv_header_errno_h_EOVERFLOW=no -fi -rm -f conftest* - - if test $gl_cv_header_errno_h_EOVERFLOW = no; then - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -#define _XOPEN_SOURCE_EXTENDED 1 -#include -#ifdef EOVERFLOW -yes -#endif - -_ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "yes" >/dev/null 2>&1; then : - gl_cv_header_errno_h_EOVERFLOW=hidden -fi -rm -f conftest* - - if test $gl_cv_header_errno_h_EOVERFLOW = hidden; then - if ac_fn_c_compute_int "$LINENO" "EOVERFLOW" "gl_cv_header_errno_h_EOVERFLOW" " -#define _XOPEN_SOURCE_EXTENDED 1 -#include -/* The following two lines are a workaround against an autoconf-2.52 bug. */ -#include -#include -"; then : - -fi - - fi - fi - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_header_errno_h_EOVERFLOW" >&5 -$as_echo "$gl_cv_header_errno_h_EOVERFLOW" >&6; } - case $gl_cv_header_errno_h_EOVERFLOW in - yes | no) - EOVERFLOW_HIDDEN=0; EOVERFLOW_VALUE= - ;; - *) - EOVERFLOW_HIDDEN=1; EOVERFLOW_VALUE="$gl_cv_header_errno_h_EOVERFLOW" - ;; - esac - - - fi - - - - - -ac_fn_c_check_decl "$LINENO" "fchdir" "ac_cv_have_decl_fchdir" "$ac_includes_default" -if test "x$ac_cv_have_decl_fchdir" = xyes; then : - ac_have_decl=1 -else - ac_have_decl=0 -fi - -cat >>confdefs.h <<_ACEOF -#define HAVE_DECL_FCHDIR $ac_have_decl -_ACEOF - - - GNULIB_FCNTL=0; - GNULIB_NONBLOCKING=0; - GNULIB_OPEN=0; - GNULIB_OPENAT=0; - HAVE_FCNTL=1; - HAVE_OPENAT=1; - REPLACE_FCNTL=0; - REPLACE_OPEN=0; - REPLACE_OPENAT=0; - - - - - - - - - - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for working fcntl.h" >&5 -$as_echo_n "checking for working fcntl.h... " >&6; } -if ${gl_cv_header_working_fcntl_h+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test "$cross_compiling" = yes; then : - case "$host_os" in - # Guess 'no' on native Windows. - mingw*) gl_cv_header_working_fcntl_h='no' ;; - *) gl_cv_header_working_fcntl_h=cross-compiling ;; - esac - -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include - #include - #if HAVE_UNISTD_H - # include - #else /* on Windows with MSVC */ - # include - # include - # defined sleep(n) _sleep ((n) * 1000) - #endif - #include - #ifndef O_NOATIME - #define O_NOATIME 0 - #endif - #ifndef O_NOFOLLOW - #define O_NOFOLLOW 0 - #endif - static int const constants[] = - { - O_CREAT, O_EXCL, O_NOCTTY, O_TRUNC, O_APPEND, - O_NONBLOCK, O_SYNC, O_ACCMODE, O_RDONLY, O_RDWR, O_WRONLY - }; - -int -main (void) -{ - - int result = !constants; - #if HAVE_SYMLINK - { - static char const sym[] = "conftest.sym"; - if (symlink ("/dev/null", sym) != 0) - result |= 2; - else - { - int fd = open (sym, O_WRONLY | O_NOFOLLOW | O_CREAT, 0); - if (fd >= 0) - { - close (fd); - result |= 4; - } - } - if (unlink (sym) != 0 || symlink (".", sym) != 0) - result |= 2; - else - { - int fd = open (sym, O_RDONLY | O_NOFOLLOW); - if (fd >= 0) - { - close (fd); - result |= 4; - } - } - unlink (sym); - } - #endif - { - static char const file[] = "confdefs.h"; - int fd = open (file, O_RDONLY | O_NOATIME); - if (fd < 0) - result |= 8; - else - { - struct stat st0; - if (fstat (fd, &st0) != 0) - result |= 16; - else - { - char c; - sleep (1); - if (read (fd, &c, 1) != 1) - result |= 24; - else - { - if (close (fd) != 0) - result |= 32; - else - { - struct stat st1; - if (stat (file, &st1) != 0) - result |= 40; - else - if (st0.st_atime != st1.st_atime) - result |= 64; - } - } - } - } - } - return result; - ; - return 0; -} -_ACEOF -if ac_fn_c_try_run "$LINENO"; then : - gl_cv_header_working_fcntl_h=yes -else - case $? in #( - 4) gl_cv_header_working_fcntl_h='no (bad O_NOFOLLOW)';; #( - 64) gl_cv_header_working_fcntl_h='no (bad O_NOATIME)';; #( - 68) gl_cv_header_working_fcntl_h='no (bad O_NOATIME, O_NOFOLLOW)';; #( - *) gl_cv_header_working_fcntl_h='no';; - esac -fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext -fi - - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_header_working_fcntl_h" >&5 -$as_echo "$gl_cv_header_working_fcntl_h" >&6; } - - case $gl_cv_header_working_fcntl_h in #( - *O_NOATIME* | no | cross-compiling) ac_val=0;; #( - *) ac_val=1;; - esac - -cat >>confdefs.h <<_ACEOF -#define HAVE_WORKING_O_NOATIME $ac_val -_ACEOF - - - case $gl_cv_header_working_fcntl_h in #( - *O_NOFOLLOW* | no | cross-compiling) ac_val=0;; #( - *) ac_val=1;; - esac - -cat >>confdefs.h <<_ACEOF -#define HAVE_WORKING_O_NOFOLLOW $ac_val -_ACEOF - - -ac_fn_c_check_type "$LINENO" "pid_t" "ac_cv_type_pid_t" "$ac_includes_default" -if test "x$ac_cv_type_pid_t" = xyes; then : - -else - -cat >>confdefs.h <<_ACEOF -#define pid_t int -_ACEOF - -fi - -ac_fn_c_check_type "$LINENO" "mode_t" "ac_cv_type_mode_t" "$ac_includes_default" -if test "x$ac_cv_type_mode_t" = xyes; then : - -else - -cat >>confdefs.h <<_ACEOF -#define mode_t int -_ACEOF - -fi - - - - - GNULIB_FNMATCH=0; - HAVE_FNMATCH=1; - REPLACE_FNMATCH=0; - - - - - - - - - - - - - - - - - if test $gl_cv_have_include_next = yes; then - gl_cv_next_fnmatch_h='<'fnmatch.h'>' - else - { $as_echo "$as_me:${as_lineno-$LINENO}: checking absolute name of " >&5 -$as_echo_n "checking absolute name of ... " >&6; } -if ${gl_cv_next_fnmatch_h+:} false; then : - $as_echo_n "(cached) " >&6 -else - - if test $ac_cv_header_fnmatch_h = yes; then - - - - - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include -_ACEOF - case "$host_os" in - aix*) gl_absname_cpp="$ac_cpp -C" ;; - *) gl_absname_cpp="$ac_cpp" ;; - esac - - case "$host_os" in - mingw*) - gl_dirsep_regex='[/\\]' - ;; - *) - gl_dirsep_regex='\/' - ;; - esac - gl_make_literal_regex_sed='s,[]$^\\.*/[],\\&,g' - gl_header_literal_regex=`echo 'fnmatch.h' \ - | sed -e "$gl_make_literal_regex_sed"` - gl_absolute_header_sed="/${gl_dirsep_regex}${gl_header_literal_regex}/"'{ - s/.*"\(.*'"${gl_dirsep_regex}${gl_header_literal_regex}"'\)".*/\1/ - s|^/[^/]|//&| - p - q - }' - - gl_cv_absolute_fnmatch_h=`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 | - sed -n "$gl_absolute_header_sed"` - - gl_header=$gl_cv_absolute_fnmatch_h - gl_cv_next_fnmatch_h='"'$gl_header'"' - else - gl_cv_next_fnmatch_h='<'fnmatch.h'>' - fi - - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_next_fnmatch_h" >&5 -$as_echo "$gl_cv_next_fnmatch_h" >&6; } - fi - NEXT_FNMATCH_H=$gl_cv_next_fnmatch_h - - if test $gl_cv_have_include_next = yes || test $gl_cv_have_include_next = buggy; then - # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include_next' - gl_next_as_first_directive='<'fnmatch.h'>' - else - # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include' - gl_next_as_first_directive=$gl_cv_next_fnmatch_h - fi - NEXT_AS_FIRST_DIRECTIVE_FNMATCH_H=$gl_next_as_first_directive - - - - - - - - if test $ac_cv_header_fnmatch_h = yes; then - HAVE_FNMATCH_H=1 - else - HAVE_FNMATCH_H=0 - fi - - - FNMATCH_H='' - if false; then - FNMATCH_H=fnmatch.h - else - if test $ac_cv_header_fnmatch_h != yes; then - FNMATCH_H=fnmatch.h - fi - fi - - - if test -n "$FNMATCH_H"; then - GL_GENERATE_FNMATCH_H_TRUE= - GL_GENERATE_FNMATCH_H_FALSE='#' -else - GL_GENERATE_FNMATCH_H_TRUE='#' - GL_GENERATE_FNMATCH_H_FALSE= -fi - - - - - - - - - - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for mbstate_t" >&5 -$as_echo_n "checking for mbstate_t... " >&6; } -if ${ac_cv_type_mbstate_t+:} false; then : - $as_echo_n "(cached) " >&6 -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -$ac_includes_default -/* Tru64 with Desktop Toolkit C has a bug: must be included before - . - BSD/OS 4.0.1 has a bug: , and must be - included before . */ -#include -#include -#include -#include -int -main (void) -{ -mbstate_t x; return sizeof x; - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - ac_cv_type_mbstate_t=yes -else - ac_cv_type_mbstate_t=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_type_mbstate_t" >&5 -$as_echo "$ac_cv_type_mbstate_t" >&6; } - if test $ac_cv_type_mbstate_t = yes; then - -$as_echo "#define HAVE_MBSTATE_T 1" >>confdefs.h - - else - -$as_echo "#define mbstate_t int" >>confdefs.h - - fi - - - - - - - - - - - - - - - - - GNULIB_FCHMODAT=0; - GNULIB_FSTAT=0; - GNULIB_FSTATAT=0; - GNULIB_FUTIMENS=0; - GNULIB_LCHMOD=0; - GNULIB_LSTAT=0; - GNULIB_MKDIRAT=0; - GNULIB_MKFIFO=0; - GNULIB_MKFIFOAT=0; - GNULIB_MKNOD=0; - GNULIB_MKNODAT=0; - GNULIB_STAT=0; - GNULIB_UTIMENSAT=0; - GNULIB_OVERRIDES_STRUCT_STAT=0; - HAVE_FCHMODAT=1; - HAVE_FSTATAT=1; - HAVE_FUTIMENS=1; - HAVE_LCHMOD=1; - HAVE_LSTAT=1; - HAVE_MKDIRAT=1; - HAVE_MKFIFO=1; - HAVE_MKFIFOAT=1; - HAVE_MKNOD=1; - HAVE_MKNODAT=1; - HAVE_UTIMENSAT=1; - REPLACE_FSTAT=0; - REPLACE_FSTATAT=0; - REPLACE_FUTIMENS=0; - REPLACE_LSTAT=0; - REPLACE_MKDIR=0; - REPLACE_MKFIFO=0; - REPLACE_MKNOD=0; - REPLACE_STAT=0; - REPLACE_UTIMENSAT=0; - -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether stat file-mode macros are broken" >&5 -$as_echo_n "checking whether stat file-mode macros are broken... " >&6; } -if ${ac_cv_header_stat_broken+:} false; then : - $as_echo_n "(cached) " >&6 -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include -#include - -#if defined S_ISBLK && defined S_IFDIR -extern char c1[S_ISBLK (S_IFDIR) ? -1 : 1]; -#endif - -#if defined S_ISBLK && defined S_IFCHR -extern char c2[S_ISBLK (S_IFCHR) ? -1 : 1]; -#endif - -#if defined S_ISLNK && defined S_IFREG -extern char c3[S_ISLNK (S_IFREG) ? -1 : 1]; -#endif - -#if defined S_ISSOCK && defined S_IFREG -extern char c4[S_ISSOCK (S_IFREG) ? -1 : 1]; -#endif - -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - ac_cv_header_stat_broken=no -else - ac_cv_header_stat_broken=yes -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_stat_broken" >&5 -$as_echo "$ac_cv_header_stat_broken" >&6; } -if test $ac_cv_header_stat_broken = yes; then - -$as_echo "#define STAT_MACROS_BROKEN 1" >>confdefs.h - -fi - - - - - - case "$host_os" in - mingw*) - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for 64-bit off_t" >&5 -$as_echo_n "checking for 64-bit off_t... " >&6; } -if ${gl_cv_type_off_t_64+:} false; then : - $as_echo_n "(cached) " >&6 -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include - int verify_off_t_size[sizeof (off_t) >= 8 ? 1 : -1]; - -int -main (void) -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - gl_cv_type_off_t_64=yes -else - gl_cv_type_off_t_64=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_type_off_t_64" >&5 -$as_echo "$gl_cv_type_off_t_64" >&6; } - if test $gl_cv_type_off_t_64 = no; then - WINDOWS_64_BIT_OFF_T=1 - else - WINDOWS_64_BIT_OFF_T=0 - fi - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for 64-bit st_size" >&5 -$as_echo_n "checking for 64-bit st_size... " >&6; } -if ${gl_cv_member_st_size_64+:} false; then : - $as_echo_n "(cached) " >&6 -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include - struct stat buf; - int verify_st_size_size[sizeof (buf.st_size) >= 8 ? 1 : -1]; - -int -main (void) -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - gl_cv_member_st_size_64=yes -else - gl_cv_member_st_size_64=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_member_st_size_64" >&5 -$as_echo "$gl_cv_member_st_size_64" >&6; } - if test $gl_cv_member_st_size_64 = no; then - WINDOWS_64_BIT_ST_SIZE=1 - else - WINDOWS_64_BIT_ST_SIZE=0 - fi - ;; - *) - WINDOWS_64_BIT_OFF_T=0 - WINDOWS_64_BIT_ST_SIZE=0 - ;; - esac - - - - - - - - - - - - - - - - if test $gl_cv_have_include_next = yes; then - gl_cv_next_sys_stat_h='<'sys/stat.h'>' - else - { $as_echo "$as_me:${as_lineno-$LINENO}: checking absolute name of " >&5 -$as_echo_n "checking absolute name of ... " >&6; } -if ${gl_cv_next_sys_stat_h+:} false; then : - $as_echo_n "(cached) " >&6 -else - - if test $ac_cv_header_sys_stat_h = yes; then - - - - - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include -_ACEOF - case "$host_os" in - aix*) gl_absname_cpp="$ac_cpp -C" ;; - *) gl_absname_cpp="$ac_cpp" ;; - esac - - case "$host_os" in - mingw*) - gl_dirsep_regex='[/\\]' - ;; - *) - gl_dirsep_regex='\/' - ;; - esac - gl_make_literal_regex_sed='s,[]$^\\.*/[],\\&,g' - gl_header_literal_regex=`echo 'sys/stat.h' \ - | sed -e "$gl_make_literal_regex_sed"` - gl_absolute_header_sed="/${gl_dirsep_regex}${gl_header_literal_regex}/"'{ - s/.*"\(.*'"${gl_dirsep_regex}${gl_header_literal_regex}"'\)".*/\1/ - s|^/[^/]|//&| - p - q - }' - - gl_cv_absolute_sys_stat_h=`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 | - sed -n "$gl_absolute_header_sed"` - - gl_header=$gl_cv_absolute_sys_stat_h - gl_cv_next_sys_stat_h='"'$gl_header'"' - else - gl_cv_next_sys_stat_h='<'sys/stat.h'>' - fi - - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_next_sys_stat_h" >&5 -$as_echo "$gl_cv_next_sys_stat_h" >&6; } - fi - NEXT_SYS_STAT_H=$gl_cv_next_sys_stat_h - - if test $gl_cv_have_include_next = yes || test $gl_cv_have_include_next = buggy; then - # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include_next' - gl_next_as_first_directive='<'sys/stat.h'>' - else - # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include' - gl_next_as_first_directive=$gl_cv_next_sys_stat_h - fi - NEXT_AS_FIRST_DIRECTIVE_SYS_STAT_H=$gl_next_as_first_directive - - - - - - - - - WINDOWS_STAT_TIMESPEC=0 - - - - - - - - - ac_fn_c_check_type "$LINENO" "nlink_t" "ac_cv_type_nlink_t" "#include - #include -" -if test "x$ac_cv_type_nlink_t" = xyes; then : - -else - -$as_echo "#define nlink_t int" >>confdefs.h - -fi - - - - - - - - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether getcwd (NULL, 0) allocates memory for result" >&5 -$as_echo_n "checking whether getcwd (NULL, 0) allocates memory for result... " >&6; } -if ${gl_cv_func_getcwd_null+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test "$cross_compiling" = yes; then : - case "$host_os" in - # Guess yes on glibc systems. - *-gnu* | gnu*) gl_cv_func_getcwd_null="guessing yes";; - # Guess yes on Cygwin. - cygwin*) gl_cv_func_getcwd_null="guessing yes";; - # If we don't know, assume the worst. - *) gl_cv_func_getcwd_null="guessing no";; - esac - -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -# include -# if HAVE_UNISTD_H -# include -# else /* on Windows with MSVC */ -# include -# endif -# ifndef getcwd - char *getcwd (); -# endif - -int -main (void) -{ - -#if defined _WIN32 && ! defined __CYGWIN__ -/* mingw cwd does not start with '/', but getcwd does allocate. - However, mingw fails to honor non-zero size. */ -#else - if (chdir ("/") != 0) - return 1; - else - { - char *f = getcwd (NULL, 0); - if (! f) - return 2; - if (f[0] != '/') - { free (f); return 3; } - if (f[1] != '\0') - { free (f); return 4; } - free (f); - return 0; - } -#endif - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_run "$LINENO"; then : - gl_cv_func_getcwd_null=yes -else - gl_cv_func_getcwd_null=no -fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext -fi - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_getcwd_null" >&5 -$as_echo "$gl_cv_func_getcwd_null" >&6; } - - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for getcwd with POSIX signature" >&5 -$as_echo_n "checking for getcwd with POSIX signature... " >&6; } -if ${gl_cv_func_getcwd_posix_signature+:} false; then : - $as_echo_n "(cached) " >&6 -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include -int -main (void) -{ -extern - #ifdef __cplusplus - "C" - #endif - char *getcwd (char *, size_t); - - ; - return 0; -} - -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - gl_cv_func_getcwd_posix_signature=yes -else - gl_cv_func_getcwd_posix_signature=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_getcwd_posix_signature" >&5 -$as_echo "$gl_cv_func_getcwd_posix_signature" >&6; } - - - GNULIB_DPRINTF=0; - GNULIB_FCLOSE=0; - GNULIB_FDOPEN=0; - GNULIB_FFLUSH=0; - GNULIB_FGETC=0; - GNULIB_FGETS=0; - GNULIB_FOPEN=0; - GNULIB_FPRINTF=0; - GNULIB_FPRINTF_POSIX=0; - GNULIB_FPURGE=0; - GNULIB_FPUTC=0; - GNULIB_FPUTS=0; - GNULIB_FREAD=0; - GNULIB_FREOPEN=0; - GNULIB_FSCANF=0; - GNULIB_FSEEK=0; - GNULIB_FSEEKO=0; - GNULIB_FTELL=0; - GNULIB_FTELLO=0; - GNULIB_FWRITE=0; - GNULIB_GETC=0; - GNULIB_GETCHAR=0; - GNULIB_GETDELIM=0; - GNULIB_GETLINE=0; - GNULIB_OBSTACK_PRINTF=0; - GNULIB_OBSTACK_PRINTF_POSIX=0; - GNULIB_PCLOSE=0; - GNULIB_PERROR=0; - GNULIB_POPEN=0; - GNULIB_PRINTF=0; - GNULIB_PRINTF_POSIX=0; - GNULIB_PUTC=0; - GNULIB_PUTCHAR=0; - GNULIB_PUTS=0; - GNULIB_REMOVE=0; - GNULIB_RENAME=0; - GNULIB_RENAMEAT=0; - GNULIB_SCANF=0; - GNULIB_SNPRINTF=0; - GNULIB_SPRINTF_POSIX=0; - GNULIB_STDIO_H_NONBLOCKING=0; - GNULIB_STDIO_H_SIGPIPE=0; - GNULIB_TMPFILE=0; - GNULIB_VASPRINTF=0; - GNULIB_VFSCANF=0; - GNULIB_VSCANF=0; - GNULIB_VDPRINTF=0; - GNULIB_VFPRINTF=0; - GNULIB_VFPRINTF_POSIX=0; - GNULIB_VPRINTF=0; - GNULIB_VPRINTF_POSIX=0; - GNULIB_VSNPRINTF=0; - GNULIB_VSPRINTF_POSIX=0; - HAVE_DECL_FPURGE=1; - HAVE_DECL_FSEEKO=1; - HAVE_DECL_FTELLO=1; - HAVE_DECL_GETDELIM=1; - HAVE_DECL_GETLINE=1; - HAVE_DECL_OBSTACK_PRINTF=1; - HAVE_DECL_SNPRINTF=1; - HAVE_DECL_VSNPRINTF=1; - HAVE_DPRINTF=1; - HAVE_FSEEKO=1; - HAVE_FTELLO=1; - HAVE_PCLOSE=1; - HAVE_POPEN=1; - HAVE_RENAMEAT=1; - HAVE_VASPRINTF=1; - HAVE_VDPRINTF=1; - REPLACE_DPRINTF=0; - REPLACE_FCLOSE=0; - REPLACE_FDOPEN=0; - REPLACE_FFLUSH=0; - REPLACE_FOPEN=0; - REPLACE_FPRINTF=0; - REPLACE_FPURGE=0; - REPLACE_FREOPEN=0; - REPLACE_FSEEK=0; - REPLACE_FSEEKO=0; - REPLACE_FTELL=0; - REPLACE_FTELLO=0; - REPLACE_GETDELIM=0; - REPLACE_GETLINE=0; - REPLACE_OBSTACK_PRINTF=0; - REPLACE_PERROR=0; - REPLACE_POPEN=0; - REPLACE_PRINTF=0; - REPLACE_REMOVE=0; - REPLACE_RENAME=0; - REPLACE_RENAMEAT=0; - REPLACE_SNPRINTF=0; - REPLACE_SPRINTF=0; - REPLACE_STDIO_READ_FUNCS=0; - REPLACE_STDIO_WRITE_FUNCS=0; - REPLACE_TMPFILE=0; - REPLACE_VASPRINTF=0; - REPLACE_VDPRINTF=0; - REPLACE_VFPRINTF=0; - REPLACE_VPRINTF=0; - REPLACE_VSNPRINTF=0; - REPLACE_VSPRINTF=0; - -ac_fn_c_check_decl "$LINENO" "getdelim" "ac_cv_have_decl_getdelim" "$ac_includes_default" -if test "x$ac_cv_have_decl_getdelim" = xyes; then : - ac_have_decl=1 -else - ac_have_decl=0 -fi - -cat >>confdefs.h <<_ACEOF -#define HAVE_DECL_GETDELIM $ac_have_decl -_ACEOF - - - - - -ac_fn_c_check_decl "$LINENO" "getdtablesize" "ac_cv_have_decl_getdtablesize" "$ac_includes_default" -if test "x$ac_cv_have_decl_getdtablesize" = xyes; then : - ac_have_decl=1 -else - ac_have_decl=0 -fi - -cat >>confdefs.h <<_ACEOF -#define HAVE_DECL_GETDTABLESIZE $ac_have_decl -_ACEOF - -ac_fn_c_check_decl "$LINENO" "getline" "ac_cv_have_decl_getline" "$ac_includes_default" -if test "x$ac_cv_have_decl_getline" = xyes; then : - ac_have_decl=1 -else - ac_have_decl=0 -fi - -cat >>confdefs.h <<_ACEOF -#define HAVE_DECL_GETLINE $ac_have_decl -_ACEOF - - - - - - - - - - - - - - - - - if test $gl_cv_have_include_next = yes; then - gl_cv_next_getopt_h='<'getopt.h'>' - else - { $as_echo "$as_me:${as_lineno-$LINENO}: checking absolute name of " >&5 -$as_echo_n "checking absolute name of ... " >&6; } -if ${gl_cv_next_getopt_h+:} false; then : - $as_echo_n "(cached) " >&6 -else - - if test $ac_cv_header_getopt_h = yes; then - - - - - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include -_ACEOF - case "$host_os" in - aix*) gl_absname_cpp="$ac_cpp -C" ;; - *) gl_absname_cpp="$ac_cpp" ;; - esac - - case "$host_os" in - mingw*) - gl_dirsep_regex='[/\\]' - ;; - *) - gl_dirsep_regex='\/' - ;; - esac - gl_make_literal_regex_sed='s,[]$^\\.*/[],\\&,g' - gl_header_literal_regex=`echo 'getopt.h' \ - | sed -e "$gl_make_literal_regex_sed"` - gl_absolute_header_sed="/${gl_dirsep_regex}${gl_header_literal_regex}/"'{ - s/.*"\(.*'"${gl_dirsep_regex}${gl_header_literal_regex}"'\)".*/\1/ - s|^/[^/]|//&| - p - q - }' - - gl_cv_absolute_getopt_h=`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 | - sed -n "$gl_absolute_header_sed"` - - gl_header=$gl_cv_absolute_getopt_h - gl_cv_next_getopt_h='"'$gl_header'"' - else - gl_cv_next_getopt_h='<'getopt.h'>' - fi - - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_next_getopt_h" >&5 -$as_echo "$gl_cv_next_getopt_h" >&6; } - fi - NEXT_GETOPT_H=$gl_cv_next_getopt_h - - if test $gl_cv_have_include_next = yes || test $gl_cv_have_include_next = buggy; then - # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include_next' - gl_next_as_first_directive='<'getopt.h'>' - else - # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include' - gl_next_as_first_directive=$gl_cv_next_getopt_h - fi - NEXT_AS_FIRST_DIRECTIVE_GETOPT_H=$gl_next_as_first_directive - - - - - if test $ac_cv_header_getopt_h = yes; then - HAVE_GETOPT_H=1 - else - HAVE_GETOPT_H=0 - fi - - - gl_replace_getopt= - - if test -z "$gl_replace_getopt" && test $gl_getopt_required = GNU; then - for ac_header in getopt.h -do : - ac_fn_c_check_header_mongrel "$LINENO" "getopt.h" "ac_cv_header_getopt_h" "$ac_includes_default" -if test "x$ac_cv_header_getopt_h" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_GETOPT_H 1 -_ACEOF - -else - gl_replace_getopt=yes -fi - -done - - fi - - if test -z "$gl_replace_getopt" && test $gl_getopt_required = GNU; then - for ac_func in getopt_long_only -do : - ac_fn_c_check_func "$LINENO" "getopt_long_only" "ac_cv_func_getopt_long_only" -if test "x$ac_cv_func_getopt_long_only" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_GETOPT_LONG_ONLY 1 -_ACEOF - -else - gl_replace_getopt=yes -fi -done - - fi - - if test -z "$gl_replace_getopt"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether getopt is POSIX compatible" >&5 -$as_echo_n "checking whether getopt is POSIX compatible... " >&6; } -if ${gl_cv_func_getopt_posix+:} false; then : - $as_echo_n "(cached) " >&6 -else - - if test $cross_compiling = no; then - if test "$cross_compiling" = yes; then : - { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 -$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} -as_fn_error $? "cannot run test program while cross compiling -See \`config.log' for more details" "$LINENO" 5; } -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -#include -#include -#include - -int -main () -{ - static char program[] = "program"; - static char a[] = "-a"; - static char foo[] = "foo"; - static char bar[] = "bar"; - char *argv[] = { program, a, foo, bar, NULL }; - int c; - - c = getopt (4, argv, "ab"); - if (!(c == 'a')) - return 1; - c = getopt (4, argv, "ab"); - if (!(c == -1)) - return 2; - if (!(optind == 2)) - return 3; - return 0; -} - -_ACEOF -if ac_fn_c_try_run "$LINENO"; then : - gl_cv_func_getopt_posix=maybe -else - gl_cv_func_getopt_posix=no -fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext -fi - - if test $gl_cv_func_getopt_posix = maybe; then - if test "$cross_compiling" = yes; then : - { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 -$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} -as_fn_error $? "cannot run test program while cross compiling -See \`config.log' for more details" "$LINENO" 5; } -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -#include -#include -#include - -int -main () -{ - static char program[] = "program"; - static char donald[] = "donald"; - static char p[] = "-p"; - static char billy[] = "billy"; - static char duck[] = "duck"; - static char a[] = "-a"; - static char bar[] = "bar"; - char *argv[] = { program, donald, p, billy, duck, a, bar, NULL }; - int c; - - c = getopt (7, argv, "+abp:q:"); - if (!(c == -1)) - return 4; - if (!(strcmp (argv[0], "program") == 0)) - return 5; - if (!(strcmp (argv[1], "donald") == 0)) - return 6; - if (!(strcmp (argv[2], "-p") == 0)) - return 7; - if (!(strcmp (argv[3], "billy") == 0)) - return 8; - if (!(strcmp (argv[4], "duck") == 0)) - return 9; - if (!(strcmp (argv[5], "-a") == 0)) - return 10; - if (!(strcmp (argv[6], "bar") == 0)) - return 11; - if (!(optind == 1)) - return 12; - return 0; -} - -_ACEOF -if ac_fn_c_try_run "$LINENO"; then : - gl_cv_func_getopt_posix=maybe -else - gl_cv_func_getopt_posix=no -fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext -fi - - fi - if test $gl_cv_func_getopt_posix = maybe; then - if test "$cross_compiling" = yes; then : - { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 -$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} -as_fn_error $? "cannot run test program while cross compiling -See \`config.log' for more details" "$LINENO" 5; } -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -#include -#include -#include - -int -main () -{ - static char program[] = "program"; - static char ab[] = "-ab"; - char *argv[3] = { program, ab, NULL }; - if (getopt (2, argv, "ab:") != 'a') - return 13; - if (getopt (2, argv, "ab:") != '?') - return 14; - if (optopt != 'b') - return 15; - if (optind != 2) - return 16; - return 0; -} - -_ACEOF -if ac_fn_c_try_run "$LINENO"; then : - gl_cv_func_getopt_posix=yes -else - gl_cv_func_getopt_posix=no -fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext -fi - - fi - else - case "$host_os" in - darwin* | aix* | mingw*) gl_cv_func_getopt_posix="guessing no";; - *) gl_cv_func_getopt_posix="guessing yes";; - esac - fi - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_getopt_posix" >&5 -$as_echo "$gl_cv_func_getopt_posix" >&6; } - case "$gl_cv_func_getopt_posix" in - *no) gl_replace_getopt=yes ;; - esac - fi - - if test -z "$gl_replace_getopt" && test $gl_getopt_required = GNU; then - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for working GNU getopt function" >&5 -$as_echo_n "checking for working GNU getopt function... " >&6; } -if ${gl_cv_func_getopt_gnu+:} false; then : - $as_echo_n "(cached) " >&6 -else - # Even with POSIXLY_CORRECT, the GNU extension of leading '-' in the - # optstring is necessary for programs like m4 that have POSIX-mandated - # semantics for supporting options interspersed with files. - # Also, since getopt_long is a GNU extension, we require optind=0. - # Bash ties 'set -o posix' to a non-exported POSIXLY_CORRECT; - # so take care to revert to the correct (non-)export state. - gl_awk_probe='BEGIN { if ("POSIXLY_CORRECT" in ENVIRON) print "x" }' - case ${POSIXLY_CORRECT+x}`$AWK "$gl_awk_probe" conftest.$ac_ext -/* end confdefs.h. */ -#include - #include - #include - -#include -#if defined __MACH__ && defined __APPLE__ -/* Avoid a crash on Mac OS X. */ -#include -#include -#include -#include -#include -#include -/* The exception port on which our thread listens. */ -static mach_port_t our_exception_port; -/* The main function of the thread listening for exceptions of type - EXC_BAD_ACCESS. */ -static void * -mach_exception_thread (void *arg) -{ - /* Buffer for a message to be received. */ - struct { - mach_msg_header_t head; - mach_msg_body_t msgh_body; - char data[1024]; - } msg; - mach_msg_return_t retval; - /* Wait for a message on the exception port. */ - retval = mach_msg (&msg.head, MACH_RCV_MSG | MACH_RCV_LARGE, 0, sizeof (msg), - our_exception_port, MACH_MSG_TIMEOUT_NONE, MACH_PORT_NULL); - if (retval != MACH_MSG_SUCCESS) - abort (); - exit (1); -} -static void -nocrash_init (void) -{ - mach_port_t self = mach_task_self (); - /* Allocate a port on which the thread shall listen for exceptions. */ - if (mach_port_allocate (self, MACH_PORT_RIGHT_RECEIVE, &our_exception_port) - == KERN_SUCCESS) { - /* See http://web.mit.edu/darwin/src/modules/xnu/osfmk/man/mach_port_insert_right.html. */ - if (mach_port_insert_right (self, our_exception_port, our_exception_port, - MACH_MSG_TYPE_MAKE_SEND) - == KERN_SUCCESS) { - /* The exceptions we want to catch. Only EXC_BAD_ACCESS is interesting - for us. */ - exception_mask_t mask = EXC_MASK_BAD_ACCESS; - /* Create the thread listening on the exception port. */ - pthread_attr_t attr; - pthread_t thread; - if (pthread_attr_init (&attr) == 0 - && pthread_attr_setdetachstate (&attr, PTHREAD_CREATE_DETACHED) == 0 - && pthread_create (&thread, &attr, mach_exception_thread, NULL) == 0) { - pthread_attr_destroy (&attr); - /* Replace the exception port info for these exceptions with our own. - Note that we replace the exception port for the entire task, not only - for a particular thread. This has the effect that when our exception - port gets the message, the thread specific exception port has already - been asked, and we don't need to bother about it. - See http://web.mit.edu/darwin/src/modules/xnu/osfmk/man/task_set_exception_ports.html. */ - task_set_exception_ports (self, mask, our_exception_port, - EXCEPTION_DEFAULT, MACHINE_THREAD_STATE); - } - } - } -} -#elif defined _WIN32 && ! defined __CYGWIN__ -/* Avoid a crash on native Windows. */ -#define WIN32_LEAN_AND_MEAN -#include -#include -static LONG WINAPI -exception_filter (EXCEPTION_POINTERS *ExceptionInfo) -{ - switch (ExceptionInfo->ExceptionRecord->ExceptionCode) - { - case EXCEPTION_ACCESS_VIOLATION: - case EXCEPTION_IN_PAGE_ERROR: - case EXCEPTION_STACK_OVERFLOW: - case EXCEPTION_GUARD_PAGE: - case EXCEPTION_PRIV_INSTRUCTION: - case EXCEPTION_ILLEGAL_INSTRUCTION: - case EXCEPTION_DATATYPE_MISALIGNMENT: - case EXCEPTION_ARRAY_BOUNDS_EXCEEDED: - case EXCEPTION_NONCONTINUABLE_EXCEPTION: - exit (1); - } - return EXCEPTION_CONTINUE_SEARCH; -} -static void -nocrash_init (void) -{ - SetUnhandledExceptionFilter ((LPTOP_LEVEL_EXCEPTION_FILTER) exception_filter); -} -#else -/* Avoid a crash on POSIX systems. */ -#include -#include -/* A POSIX signal handler. */ -static void -exception_handler (int sig) -{ - _exit (1); -} -static void -nocrash_init (void) -{ -#ifdef SIGSEGV - signal (SIGSEGV, exception_handler); -#endif -#ifdef SIGBUS - signal (SIGBUS, exception_handler); -#endif -} -#endif - - -int -main (void) -{ - - int result = 0; - - nocrash_init(); - - /* This code succeeds on glibc 2.8, OpenBSD 4.0, Cygwin, mingw, - and fails on Mac OS X 10.5, AIX 5.2, HP-UX 11, IRIX 6.5, - OSF/1 5.1, Solaris 10. */ - { - static char conftest[] = "conftest"; - static char plus[] = "-+"; - char *argv[3] = { conftest, plus, NULL }; - opterr = 0; - if (getopt (2, argv, "+a") != '?') - result |= 1; - } - /* This code succeeds on glibc 2.8, mingw, - and fails on Mac OS X 10.5, OpenBSD 4.0, AIX 5.2, HP-UX 11, - IRIX 6.5, OSF/1 5.1, Solaris 10, Cygwin 1.5.x. */ - { - static char program[] = "program"; - static char p[] = "-p"; - static char foo[] = "foo"; - static char bar[] = "bar"; - char *argv[] = { program, p, foo, bar, NULL }; - - optind = 1; - if (getopt (4, argv, "p::") != 'p') - result |= 2; - else if (optarg != NULL) - result |= 4; - else if (getopt (4, argv, "p::") != -1) - result |= 6; - else if (optind != 2) - result |= 8; - } - /* This code succeeds on glibc 2.8 and fails on Cygwin 1.7.0. */ - { - static char program[] = "program"; - static char foo[] = "foo"; - static char p[] = "-p"; - char *argv[] = { program, foo, p, NULL }; - optind = 0; - if (getopt (3, argv, "-p") != 1) - result |= 16; - else if (getopt (3, argv, "-p") != 'p') - result |= 16; - } - /* This code fails on glibc 2.11. */ - { - static char program[] = "program"; - static char b[] = "-b"; - static char a[] = "-a"; - char *argv[] = { program, b, a, NULL }; - optind = opterr = 0; - if (getopt (3, argv, "+:a:b") != 'b') - result |= 32; - else if (getopt (3, argv, "+:a:b") != ':') - result |= 32; - } - /* This code dumps core on glibc 2.14. */ - { - static char program[] = "program"; - static char w[] = "-W"; - static char dummy[] = "dummy"; - char *argv[] = { program, w, dummy, NULL }; - optind = opterr = 1; - if (getopt (3, argv, "W;") != 'W') - result |= 64; - } - return result; - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_run "$LINENO"; then : - gl_cv_func_getopt_gnu=yes -else - gl_cv_func_getopt_gnu=no -fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext -fi - - case $gl_had_POSIXLY_CORRECT in - exported) ;; - yes) { POSIXLY_CORRECT=; unset POSIXLY_CORRECT;}; POSIXLY_CORRECT=1 ;; - *) { POSIXLY_CORRECT=; unset POSIXLY_CORRECT;} ;; - esac - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_getopt_gnu" >&5 -$as_echo "$gl_cv_func_getopt_gnu" >&6; } - if test "$gl_cv_func_getopt_gnu" != yes; then - gl_replace_getopt=yes - else - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for working GNU getopt_long function" >&5 -$as_echo_n "checking for working GNU getopt_long function... " >&6; } -if ${gl_cv_func_getopt_long_gnu+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test "$cross_compiling" = yes; then : - case "$host_os" in - openbsd*) gl_cv_func_getopt_long_gnu="guessing no";; - *) gl_cv_func_getopt_long_gnu="guessing yes";; - esac - -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include - #include - #include - -int -main (void) -{ -static const struct option long_options[] = - { - { "xtremely-",no_argument, NULL, 1003 }, - { "xtra", no_argument, NULL, 1001 }, - { "xtreme", no_argument, NULL, 1002 }, - { "xtremely", no_argument, NULL, 1003 }, - { NULL, 0, NULL, 0 } - }; - /* This code fails on OpenBSD 5.0. */ - { - static char program[] = "program"; - static char xtremel[] = "--xtremel"; - char *argv[] = { program, xtremel, NULL }; - int option_index; - optind = 1; opterr = 0; - if (getopt_long (2, argv, "", long_options, &option_index) != 1003) - return 1; - } - return 0; - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_run "$LINENO"; then : - gl_cv_func_getopt_long_gnu=yes -else - gl_cv_func_getopt_long_gnu=no -fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext -fi - - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_getopt_long_gnu" >&5 -$as_echo "$gl_cv_func_getopt_long_gnu" >&6; } - case "$gl_cv_func_getopt_long_gnu" in - *yes) ;; - *) gl_replace_getopt=yes ;; - esac - fi - fi - - - - - - - - - GNULIB_NL_LANGINFO=0; - HAVE_NL_LANGINFO=1; - REPLACE_NL_LANGINFO=0; - - - - - - - - - - - - - - - - if test $gl_cv_have_include_next = yes; then - gl_cv_next_limits_h='<'limits.h'>' - else - { $as_echo "$as_me:${as_lineno-$LINENO}: checking absolute name of " >&5 -$as_echo_n "checking absolute name of ... " >&6; } -if ${gl_cv_next_limits_h+:} false; then : - $as_echo_n "(cached) " >&6 -else - - if test $ac_cv_header_limits_h = yes; then - - - - - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include -_ACEOF - case "$host_os" in - aix*) gl_absname_cpp="$ac_cpp -C" ;; - *) gl_absname_cpp="$ac_cpp" ;; - esac - - case "$host_os" in - mingw*) - gl_dirsep_regex='[/\\]' - ;; - *) - gl_dirsep_regex='\/' - ;; - esac - gl_make_literal_regex_sed='s,[]$^\\.*/[],\\&,g' - gl_header_literal_regex=`echo 'limits.h' \ - | sed -e "$gl_make_literal_regex_sed"` - gl_absolute_header_sed="/${gl_dirsep_regex}${gl_header_literal_regex}/"'{ - s/.*"\(.*'"${gl_dirsep_regex}${gl_header_literal_regex}"'\)".*/\1/ - s|^/[^/]|//&| - p - q - }' - - gl_cv_absolute_limits_h=`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 | - sed -n "$gl_absolute_header_sed"` - - gl_header=$gl_cv_absolute_limits_h - gl_cv_next_limits_h='"'$gl_header'"' - else - gl_cv_next_limits_h='<'limits.h'>' - fi - - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_next_limits_h" >&5 -$as_echo "$gl_cv_next_limits_h" >&6; } - fi - NEXT_LIMITS_H=$gl_cv_next_limits_h - - if test $gl_cv_have_include_next = yes || test $gl_cv_have_include_next = buggy; then - # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include_next' - gl_next_as_first_directive='<'limits.h'>' - else - # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include' - gl_next_as_first_directive=$gl_cv_next_limits_h - fi - NEXT_AS_FIRST_DIRECTIVE_LIMITS_H=$gl_next_as_first_directive - - - - - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether limits.h has LLONG_MAX, WORD_BIT, ULLONG_WIDTH etc." >&5 -$as_echo_n "checking whether limits.h has LLONG_MAX, WORD_BIT, ULLONG_WIDTH etc.... " >&6; } -if ${gl_cv_header_limits_width+:} false; then : - $as_echo_n "(cached) " >&6 -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#ifndef __STDC_WANT_IEC_60559_BFP_EXT__ - #define __STDC_WANT_IEC_60559_BFP_EXT__ 1 - #endif - #include - long long llm = LLONG_MAX; - int wb = WORD_BIT; - int ullw = ULLONG_WIDTH; - -int -main (void) -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - gl_cv_header_limits_width=yes -else - gl_cv_header_limits_width=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_header_limits_width" >&5 -$as_echo "$gl_cv_header_limits_width" >&6; } - if test "$gl_cv_header_limits_width" = yes; then - LIMITS_H= - else - LIMITS_H=limits.h - fi - - if test -n "$LIMITS_H"; then - GL_GENERATE_LIMITS_H_TRUE= - GL_GENERATE_LIMITS_H_FALSE='#' -else - GL_GENERATE_LIMITS_H_TRUE='#' - GL_GENERATE_LIMITS_H_FALSE= -fi - - - - GNULIB_LOCALECONV=0; - GNULIB_SETLOCALE=0; - GNULIB_DUPLOCALE=0; - GNULIB_LOCALENAME=0; - HAVE_NEWLOCALE=1; - HAVE_DUPLOCALE=1; - HAVE_FREELOCALE=1; - REPLACE_LOCALECONV=0; - REPLACE_SETLOCALE=0; - REPLACE_NEWLOCALE=0; - REPLACE_DUPLOCALE=0; - REPLACE_FREELOCALE=0; - REPLACE_STRUCT_LCONV=0; - - - REPLACE_NULL=0; - HAVE_MAX_ALIGN_T=1; - HAVE_WCHAR_T=1; - - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for wchar_t" >&5 -$as_echo_n "checking for wchar_t... " >&6; } -if ${gt_cv_c_wchar_t+:} false; then : - $as_echo_n "(cached) " >&6 -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include - wchar_t foo = (wchar_t)'\0'; -int -main (void) -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - gt_cv_c_wchar_t=yes -else - gt_cv_c_wchar_t=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gt_cv_c_wchar_t" >&5 -$as_echo "$gt_cv_c_wchar_t" >&6; } - if test $gt_cv_c_wchar_t = yes; then - -$as_echo "#define HAVE_WCHAR_T 1" >>confdefs.h - - fi - - - - - STDDEF_H= - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for good max_align_t" >&5 -$as_echo_n "checking for good max_align_t... " >&6; } -if ${gl_cv_type_max_align_t+:} false; then : - $as_echo_n "(cached) " >&6 -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include - unsigned int s = sizeof (max_align_t); - #if defined __GNUC__ || defined __IBM__ALIGNOF__ - int check1[2 * (__alignof__ (double) <= __alignof__ (max_align_t)) - 1]; - int check2[2 * (__alignof__ (long double) <= __alignof__ (max_align_t)) - 1]; - #endif - -int -main (void) -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - gl_cv_type_max_align_t=yes -else - gl_cv_type_max_align_t=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_type_max_align_t" >&5 -$as_echo "$gl_cv_type_max_align_t" >&6; } - if test $gl_cv_type_max_align_t = no; then - HAVE_MAX_ALIGN_T=0 - STDDEF_H=stddef.h - fi - - if test $gt_cv_c_wchar_t = no; then - HAVE_WCHAR_T=0 - STDDEF_H=stddef.h - fi - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether NULL can be used in arbitrary expressions" >&5 -$as_echo_n "checking whether NULL can be used in arbitrary expressions... " >&6; } -if ${gl_cv_decl_null_works+:} false; then : - $as_echo_n "(cached) " >&6 -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include - int test[2 * (sizeof NULL == sizeof (void *)) -1]; - -int -main (void) -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - gl_cv_decl_null_works=yes -else - gl_cv_decl_null_works=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_decl_null_works" >&5 -$as_echo "$gl_cv_decl_null_works" >&6; } - if test $gl_cv_decl_null_works = no; then - REPLACE_NULL=1 - STDDEF_H=stddef.h - fi - - - if test -n "$STDDEF_H"; then - GL_GENERATE_STDDEF_H_TRUE= - GL_GENERATE_STDDEF_H_FALSE='#' -else - GL_GENERATE_STDDEF_H_TRUE='#' - GL_GENERATE_STDDEF_H_FALSE= -fi - - if test -n "$STDDEF_H"; then - - - - - - - - - if test $gl_cv_have_include_next = yes; then - gl_cv_next_stddef_h='<'stddef.h'>' - else - { $as_echo "$as_me:${as_lineno-$LINENO}: checking absolute name of " >&5 -$as_echo_n "checking absolute name of ... " >&6; } -if ${gl_cv_next_stddef_h+:} false; then : - $as_echo_n "(cached) " >&6 -else - - - - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include -_ACEOF - case "$host_os" in - aix*) gl_absname_cpp="$ac_cpp -C" ;; - *) gl_absname_cpp="$ac_cpp" ;; - esac - - case "$host_os" in - mingw*) - gl_dirsep_regex='[/\\]' - ;; - *) - gl_dirsep_regex='\/' - ;; - esac - gl_make_literal_regex_sed='s,[]$^\\.*/[],\\&,g' - gl_header_literal_regex=`echo 'stddef.h' \ - | sed -e "$gl_make_literal_regex_sed"` - gl_absolute_header_sed="/${gl_dirsep_regex}${gl_header_literal_regex}/"'{ - s/.*"\(.*'"${gl_dirsep_regex}${gl_header_literal_regex}"'\)".*/\1/ - s|^/[^/]|//&| - p - q - }' - - gl_cv_absolute_stddef_h=`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 | - sed -n "$gl_absolute_header_sed"` - - gl_header=$gl_cv_absolute_stddef_h - gl_cv_next_stddef_h='"'$gl_header'"' - - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_next_stddef_h" >&5 -$as_echo "$gl_cv_next_stddef_h" >&6; } - fi - NEXT_STDDEF_H=$gl_cv_next_stddef_h - - if test $gl_cv_have_include_next = yes || test $gl_cv_have_include_next = buggy; then - # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include_next' - gl_next_as_first_directive='<'stddef.h'>' - else - # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include' - gl_next_as_first_directive=$gl_cv_next_stddef_h - fi - NEXT_AS_FIRST_DIRECTIVE_STDDEF_H=$gl_next_as_first_directive - - - - - fi - - - - - - gl_threads_api=none - LIBTHREAD= - LTLIBTHREAD= - LIBMULTITHREAD= - LTLIBMULTITHREAD= - if test "$gl_use_threads" != no; then - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether imported symbols can be declared weak" >&5 -$as_echo_n "checking whether imported symbols can be declared weak... " >&6; } -if ${gl_cv_have_weak+:} false; then : - $as_echo_n "(cached) " >&6 -else - gl_cv_have_weak=no - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -extern void xyzzy (); -#pragma weak xyzzy -int -main (void) -{ -xyzzy(); - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - gl_cv_have_weak=maybe -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext - if test $gl_cv_have_weak = maybe; then - if test "$cross_compiling" = yes; then : - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#ifdef __ELF__ - Extensible Linking Format - #endif - -_ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "Extensible Linking Format" >/dev/null 2>&1; then : - gl_cv_have_weak="guessing yes" -else - gl_cv_have_weak="guessing no" -fi -rm -f conftest* - - -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -#include -#pragma weak fputs -int main () -{ - return (fputs == NULL); -} -_ACEOF -if ac_fn_c_try_run "$LINENO"; then : - gl_cv_have_weak=yes -else - gl_cv_have_weak=no -fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext -fi - - fi - case " $LDFLAGS " in - *" -static "*) gl_cv_have_weak=no ;; - esac - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_have_weak" >&5 -$as_echo "$gl_cv_have_weak" >&6; } - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the linker supports --as-needed" >&5 -$as_echo_n "checking whether the linker supports --as-needed... " >&6; } -if ${gl_cv_linker_have_as_needed+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test -n "$GCC"; then - gl_saved_ldflags="$LDFLAGS" - LDFLAGS="$gl_saved_ldflags -Wl,--as-needed -Wl,--no-as-needed" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -int -main (void) -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - gl_cv_linker_have_as_needed=yes -else - gl_cv_linker_have_as_needed=no -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext - LDFLAGS="$gl_saved_ldflags" - else - gl_cv_linker_have_as_needed=no - fi - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_linker_have_as_needed" >&5 -$as_echo "$gl_cv_linker_have_as_needed" >&6; } - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the linker supports --push-state" >&5 -$as_echo_n "checking whether the linker supports --push-state... " >&6; } -if ${gl_cv_linker_have_push_state+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test -n "$GCC"; then - gl_saved_ldflags="$LDFLAGS" - LDFLAGS="$gl_saved_ldflags -Wl,--push-state -Wl,--pop-state" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -int -main (void) -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - gl_cv_linker_have_push_state=yes -else - gl_cv_linker_have_push_state=no -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext - LDFLAGS="$gl_saved_ldflags" - else - gl_cv_linker_have_push_state=no - fi - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_linker_have_push_state" >&5 -$as_echo "$gl_cv_linker_have_push_state" >&6; } - if test "$gl_use_threads" = yes || test "$gl_use_threads" = posix; then - # On OSF/1, the compiler needs the flag -pthread or -D_REENTRANT so that - # it groks . It's added above, in gl_THREADLIB_EARLY_BODY. - ac_fn_c_check_header_mongrel "$LINENO" "pthread.h" "ac_cv_header_pthread_h" "$ac_includes_default" -if test "x$ac_cv_header_pthread_h" = xyes; then : - gl_have_pthread_h=yes -else - gl_have_pthread_h=no -fi - - - if test "$gl_have_pthread_h" = yes; then - # Other possible tests: - # -lpthreads (FSU threads, PCthreads) - # -lgthreads - gl_have_pthread= - # Test whether both pthread_mutex_lock and pthread_mutexattr_init exist - # in libc. IRIX 6.5 has the first one in both libc and libpthread, but - # the second one only in libpthread, and lock.c needs it. - # - # If -pthread works, prefer it to -lpthread, since Ubuntu 14.04 - # needs -pthread for some reason. See: - # https://lists.gnu.org/r/bug-gnulib/2014-09/msg00023.html - save_LIBS=$LIBS - for gl_pthread in '' '-pthread'; do - LIBS="$LIBS $gl_pthread" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include - pthread_mutex_t m; - pthread_mutexattr_t ma; - -int -main (void) -{ -pthread_mutex_lock (&m); - pthread_mutexattr_init (&ma); - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - gl_have_pthread=yes - LIBTHREAD=$gl_pthread LTLIBTHREAD=$gl_pthread - LIBMULTITHREAD=$gl_pthread LTLIBMULTITHREAD=$gl_pthread -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext - LIBS=$save_LIBS - test -n "$gl_have_pthread" && break - done - - # Test for libpthread by looking for pthread_kill. (Not pthread_self, - # since it is defined as a macro on OSF/1.) - if test -n "$gl_have_pthread" && test -z "$LIBTHREAD"; then - # The program links fine without libpthread. But it may actually - # need to link with libpthread in order to create multiple threads. - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for pthread_kill in -lpthread" >&5 -$as_echo_n "checking for pthread_kill in -lpthread... " >&6; } -if ${ac_cv_lib_pthread_pthread_kill+:} false; then : - $as_echo_n "(cached) " >&6 -else - ac_check_lib_save_LIBS=$LIBS -LIBS="-lpthread $LIBS" -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -/* Override any GCC internal prototype to avoid an error. - Use char because int might match the return type of a GCC - builtin and then its argument prototype would still apply. */ -#ifdef __cplusplus -extern "C" -#endif -char pthread_kill (); -int -main (void) -{ -return pthread_kill (); - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - ac_cv_lib_pthread_pthread_kill=yes -else - ac_cv_lib_pthread_pthread_kill=no -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -LIBS=$ac_check_lib_save_LIBS -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_pthread_pthread_kill" >&5 -$as_echo "$ac_cv_lib_pthread_pthread_kill" >&6; } -if test "x$ac_cv_lib_pthread_pthread_kill" = xyes; then : - LIBMULTITHREAD=-lpthread LTLIBMULTITHREAD=-lpthread - # On Solaris and HP-UX, most pthread functions exist also in libc. - # Therefore pthread_in_use() needs to actually try to create a - # thread: pthread_create from libc will fail, whereas - # pthread_create will actually create a thread. - # On Solaris 10 or newer, this test is no longer needed, because - # libc contains the fully functional pthread functions. - case "$host_os" in - solaris | solaris2.1-9 | solaris2.1-9.* | hpux*) - -$as_echo "#define PTHREAD_IN_USE_DETECTION_HARD 1" >>confdefs.h - - esac - -fi - - elif test -z "$gl_have_pthread"; then - # Some library is needed. Try libpthread and libc_r. - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for pthread_kill in -lpthread" >&5 -$as_echo_n "checking for pthread_kill in -lpthread... " >&6; } -if ${ac_cv_lib_pthread_pthread_kill+:} false; then : - $as_echo_n "(cached) " >&6 -else - ac_check_lib_save_LIBS=$LIBS -LIBS="-lpthread $LIBS" -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -/* Override any GCC internal prototype to avoid an error. - Use char because int might match the return type of a GCC - builtin and then its argument prototype would still apply. */ -#ifdef __cplusplus -extern "C" -#endif -char pthread_kill (); -int -main (void) -{ -return pthread_kill (); - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - ac_cv_lib_pthread_pthread_kill=yes -else - ac_cv_lib_pthread_pthread_kill=no -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -LIBS=$ac_check_lib_save_LIBS -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_pthread_pthread_kill" >&5 -$as_echo "$ac_cv_lib_pthread_pthread_kill" >&6; } -if test "x$ac_cv_lib_pthread_pthread_kill" = xyes; then : - gl_have_pthread=yes - LIBTHREAD=-lpthread LTLIBTHREAD=-lpthread - LIBMULTITHREAD=-lpthread LTLIBMULTITHREAD=-lpthread -fi - - if test -z "$gl_have_pthread"; then - # For FreeBSD 4. - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for pthread_kill in -lc_r" >&5 -$as_echo_n "checking for pthread_kill in -lc_r... " >&6; } -if ${ac_cv_lib_c_r_pthread_kill+:} false; then : - $as_echo_n "(cached) " >&6 -else - ac_check_lib_save_LIBS=$LIBS -LIBS="-lc_r $LIBS" -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -/* Override any GCC internal prototype to avoid an error. - Use char because int might match the return type of a GCC - builtin and then its argument prototype would still apply. */ -#ifdef __cplusplus -extern "C" -#endif -char pthread_kill (); -int -main (void) -{ -return pthread_kill (); - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - ac_cv_lib_c_r_pthread_kill=yes -else - ac_cv_lib_c_r_pthread_kill=no -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -LIBS=$ac_check_lib_save_LIBS -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_c_r_pthread_kill" >&5 -$as_echo "$ac_cv_lib_c_r_pthread_kill" >&6; } -if test "x$ac_cv_lib_c_r_pthread_kill" = xyes; then : - gl_have_pthread=yes - LIBTHREAD=-lc_r LTLIBTHREAD=-lc_r - LIBMULTITHREAD=-lc_r LTLIBMULTITHREAD=-lc_r -fi - - fi - fi - if test -n "$gl_have_pthread"; then - gl_threads_api=posix - -$as_echo "#define USE_POSIX_THREADS 1" >>confdefs.h - - if test -n "$LIBMULTITHREAD" || test -n "$LTLIBMULTITHREAD"; then - if case "$gl_cv_have_weak" in *yes) true;; *) false;; esac; then - -$as_echo "#define USE_POSIX_THREADS_WEAK 1" >>confdefs.h - - LIBTHREAD= - LTLIBTHREAD= - case "$LIBMULTITHREAD" in - "") ;; - -pthread) - if test $gl_cv_linker_have_as_needed = yes; then - if test $gl_cv_linker_have_push_state = yes; then - LIBMULTITHREAD="$LIBMULTITHREAD -Wl,--push-state -Wl,--no-as-needed -lpthread -Wl,--pop-state" - else - LIBMULTITHREAD="$LIBMULTITHREAD -Wl,--no-as-needed -lpthread" - fi - fi - ;; - *) - if test $gl_cv_linker_have_as_needed = yes; then - if test $gl_cv_linker_have_push_state = yes; then - LIBMULTITHREAD="-Wl,--push-state -Wl,--no-as-needed $LIBMULTITHREAD -Wl,--pop-state" - else - LIBMULTITHREAD="-Wl,--no-as-needed $LIBMULTITHREAD" - fi - fi - ;; - esac - # TODO: May need to modify LTLIBMULTITHREAD similarly. - fi - fi - fi - fi - fi - if test -z "$gl_have_pthread"; then - if test "$gl_use_threads" = yes || test "$gl_use_threads" = solaris; then - gl_have_solaristhread= - gl_save_LIBS="$LIBS" - LIBS="$LIBS -lthread" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -#include -#include - -int -main (void) -{ -thr_self(); - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - gl_have_solaristhread=yes -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext - LIBS="$gl_save_LIBS" - if test -n "$gl_have_solaristhread"; then - gl_threads_api=solaris - LIBTHREAD=-lthread - LTLIBTHREAD=-lthread - LIBMULTITHREAD="$LIBTHREAD" - LTLIBMULTITHREAD="$LTLIBTHREAD" - -$as_echo "#define USE_SOLARIS_THREADS 1" >>confdefs.h - - if case "$gl_cv_have_weak" in *yes) true;; *) false;; esac; then - -$as_echo "#define USE_SOLARIS_THREADS_WEAK 1" >>confdefs.h - - LIBTHREAD= - LTLIBTHREAD= - if test $gl_cv_linker_have_as_needed = yes; then - if test $gl_cv_linker_have_push_state = yes; then - LIBMULTITHREAD="-Wl,--push-state -Wl,--no-as-needed $LIBMULTITHREAD -Wl,--pop-state" - else - LIBMULTITHREAD="-Wl,--no-as-needed $LIBMULTITHREAD" - fi - fi - # TODO: May need to modify LTLIBMULTITHREAD similarly. - fi - fi - fi - fi - if test "$gl_use_threads" = pth; then - gl_save_CPPFLAGS="$CPPFLAGS" - - - - - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to link with libpth" >&5 -$as_echo_n "checking how to link with libpth... " >&6; } -if ${ac_cv_libpth_libs+:} false; then : - $as_echo_n "(cached) " >&6 -else - - - - - - - - use_additional=yes - - acl_save_prefix="$prefix" - prefix="$acl_final_prefix" - acl_save_exec_prefix="$exec_prefix" - exec_prefix="$acl_final_exec_prefix" - - eval additional_includedir=\"$includedir\" - eval additional_libdir=\"$libdir\" - - exec_prefix="$acl_save_exec_prefix" - prefix="$acl_save_prefix" - - -# Check whether --with-libpth-prefix was given. -if test "${with_libpth_prefix+set}" = set; then : - withval=$with_libpth_prefix; - if test "X$withval" = "Xno"; then - use_additional=no - else - if test "X$withval" = "X"; then - - acl_save_prefix="$prefix" - prefix="$acl_final_prefix" - acl_save_exec_prefix="$exec_prefix" - exec_prefix="$acl_final_exec_prefix" - - eval additional_includedir=\"$includedir\" - eval additional_libdir=\"$libdir\" - - exec_prefix="$acl_save_exec_prefix" - prefix="$acl_save_prefix" - - else - additional_includedir="$withval/include" - additional_libdir="$withval/$acl_libdirstem" - if test "$acl_libdirstem2" != "$acl_libdirstem" \ - && test ! -d "$withval/$acl_libdirstem"; then - additional_libdir="$withval/$acl_libdirstem2" - fi - fi - fi - -fi - - LIBPTH= - LTLIBPTH= - INCPTH= - LIBPTH_PREFIX= - HAVE_LIBPTH= - rpathdirs= - ltrpathdirs= - names_already_handled= - names_next_round='pth ' - while test -n "$names_next_round"; do - names_this_round="$names_next_round" - names_next_round= - for name in $names_this_round; do - already_handled= - for n in $names_already_handled; do - if test "$n" = "$name"; then - already_handled=yes - break - fi - done - if test -z "$already_handled"; then - names_already_handled="$names_already_handled $name" - uppername=`echo "$name" | sed -e 'y|abcdefghijklmnopqrstuvwxyz./+-|ABCDEFGHIJKLMNOPQRSTUVWXYZ____|'` - eval value=\"\$HAVE_LIB$uppername\" - if test -n "$value"; then - if test "$value" = yes; then - eval value=\"\$LIB$uppername\" - test -z "$value" || LIBPTH="${LIBPTH}${LIBPTH:+ }$value" - eval value=\"\$LTLIB$uppername\" - test -z "$value" || LTLIBPTH="${LTLIBPTH}${LTLIBPTH:+ }$value" - else - : - fi - else - found_dir= - found_la= - found_so= - found_a= - eval libname=\"$acl_libname_spec\" # typically: libname=lib$name - if test -n "$acl_shlibext"; then - shrext=".$acl_shlibext" # typically: shrext=.so - else - shrext= - fi - if test $use_additional = yes; then - dir="$additional_libdir" - if test -n "$acl_shlibext"; then - if test -f "$dir/$libname$shrext"; then - found_dir="$dir" - found_so="$dir/$libname$shrext" - else - if test "$acl_library_names_spec" = '$libname$shrext$versuffix'; then - ver=`(cd "$dir" && \ - for f in "$libname$shrext".*; do echo "$f"; done \ - | sed -e "s,^$libname$shrext\\\\.,," \ - | sort -t '.' -n -r -k1,1 -k2,2 -k3,3 -k4,4 -k5,5 \ - | sed 1q ) 2>/dev/null` - if test -n "$ver" && test -f "$dir/$libname$shrext.$ver"; then - found_dir="$dir" - found_so="$dir/$libname$shrext.$ver" - fi - else - eval library_names=\"$acl_library_names_spec\" - for f in $library_names; do - if test -f "$dir/$f"; then - found_dir="$dir" - found_so="$dir/$f" - break - fi - done - fi - fi - fi - if test "X$found_dir" = "X"; then - if test -f "$dir/$libname.$acl_libext"; then - found_dir="$dir" - found_a="$dir/$libname.$acl_libext" - fi - fi - if test "X$found_dir" != "X"; then - if test -f "$dir/$libname.la"; then - found_la="$dir/$libname.la" - fi - fi - fi - if test "X$found_dir" = "X"; then - for x in $LDFLAGS $LTLIBPTH; do - - acl_save_prefix="$prefix" - prefix="$acl_final_prefix" - acl_save_exec_prefix="$exec_prefix" - exec_prefix="$acl_final_exec_prefix" - eval x=\"$x\" - exec_prefix="$acl_save_exec_prefix" - prefix="$acl_save_prefix" - - case "$x" in - -L*) - dir=`echo "X$x" | sed -e 's/^X-L//'` - if test -n "$acl_shlibext"; then - if test -f "$dir/$libname$shrext"; then - found_dir="$dir" - found_so="$dir/$libname$shrext" - else - if test "$acl_library_names_spec" = '$libname$shrext$versuffix'; then - ver=`(cd "$dir" && \ - for f in "$libname$shrext".*; do echo "$f"; done \ - | sed -e "s,^$libname$shrext\\\\.,," \ - | sort -t '.' -n -r -k1,1 -k2,2 -k3,3 -k4,4 -k5,5 \ - | sed 1q ) 2>/dev/null` - if test -n "$ver" && test -f "$dir/$libname$shrext.$ver"; then - found_dir="$dir" - found_so="$dir/$libname$shrext.$ver" - fi - else - eval library_names=\"$acl_library_names_spec\" - for f in $library_names; do - if test -f "$dir/$f"; then - found_dir="$dir" - found_so="$dir/$f" - break - fi - done - fi - fi - fi - if test "X$found_dir" = "X"; then - if test -f "$dir/$libname.$acl_libext"; then - found_dir="$dir" - found_a="$dir/$libname.$acl_libext" - fi - fi - if test "X$found_dir" != "X"; then - if test -f "$dir/$libname.la"; then - found_la="$dir/$libname.la" - fi - fi - ;; - esac - if test "X$found_dir" != "X"; then - break - fi - done - fi - if test "X$found_dir" != "X"; then - LTLIBPTH="${LTLIBPTH}${LTLIBPTH:+ }-L$found_dir -l$name" - if test "X$found_so" != "X"; then - if test "$enable_rpath" = no \ - || test "X$found_dir" = "X/usr/$acl_libdirstem" \ - || test "X$found_dir" = "X/usr/$acl_libdirstem2"; then - LIBPTH="${LIBPTH}${LIBPTH:+ }$found_so" - else - haveit= - for x in $ltrpathdirs; do - if test "X$x" = "X$found_dir"; then - haveit=yes - break - fi - done - if test -z "$haveit"; then - ltrpathdirs="$ltrpathdirs $found_dir" - fi - if test "$acl_hardcode_direct" = yes; then - LIBPTH="${LIBPTH}${LIBPTH:+ }$found_so" - else - if test -n "$acl_hardcode_libdir_flag_spec" && test "$acl_hardcode_minus_L" = no; then - LIBPTH="${LIBPTH}${LIBPTH:+ }$found_so" - haveit= - for x in $rpathdirs; do - if test "X$x" = "X$found_dir"; then - haveit=yes - break - fi - done - if test -z "$haveit"; then - rpathdirs="$rpathdirs $found_dir" - fi - else - haveit= - for x in $LDFLAGS $LIBPTH; do - - acl_save_prefix="$prefix" - prefix="$acl_final_prefix" - acl_save_exec_prefix="$exec_prefix" - exec_prefix="$acl_final_exec_prefix" - eval x=\"$x\" - exec_prefix="$acl_save_exec_prefix" - prefix="$acl_save_prefix" - - if test "X$x" = "X-L$found_dir"; then - haveit=yes - break - fi - done - if test -z "$haveit"; then - LIBPTH="${LIBPTH}${LIBPTH:+ }-L$found_dir" - fi - if test "$acl_hardcode_minus_L" != no; then - LIBPTH="${LIBPTH}${LIBPTH:+ }$found_so" - else - LIBPTH="${LIBPTH}${LIBPTH:+ }-l$name" - fi - fi - fi - fi - else - if test "X$found_a" != "X"; then - LIBPTH="${LIBPTH}${LIBPTH:+ }$found_a" - else - LIBPTH="${LIBPTH}${LIBPTH:+ }-L$found_dir -l$name" - fi - fi - additional_includedir= - case "$found_dir" in - */$acl_libdirstem | */$acl_libdirstem/) - basedir=`echo "X$found_dir" | sed -e 's,^X,,' -e "s,/$acl_libdirstem/"'*$,,'` - if test "$name" = 'pth'; then - LIBPTH_PREFIX="$basedir" - fi - additional_includedir="$basedir/include" - ;; - */$acl_libdirstem2 | */$acl_libdirstem2/) - basedir=`echo "X$found_dir" | sed -e 's,^X,,' -e "s,/$acl_libdirstem2/"'*$,,'` - if test "$name" = 'pth'; then - LIBPTH_PREFIX="$basedir" - fi - additional_includedir="$basedir/include" - ;; - esac - if test "X$additional_includedir" != "X"; then - if test "X$additional_includedir" != "X/usr/include"; then - haveit= - if test "X$additional_includedir" = "X/usr/local/include"; then - if test -n "$GCC"; then - case $host_os in - linux* | gnu* | k*bsd*-gnu) haveit=yes;; - esac - fi - fi - if test -z "$haveit"; then - for x in $CPPFLAGS $INCPTH; do - - acl_save_prefix="$prefix" - prefix="$acl_final_prefix" - acl_save_exec_prefix="$exec_prefix" - exec_prefix="$acl_final_exec_prefix" - eval x=\"$x\" - exec_prefix="$acl_save_exec_prefix" - prefix="$acl_save_prefix" - - if test "X$x" = "X-I$additional_includedir"; then - haveit=yes - break - fi - done - if test -z "$haveit"; then - if test -d "$additional_includedir"; then - INCPTH="${INCPTH}${INCPTH:+ }-I$additional_includedir" - fi - fi - fi - fi - fi - if test -n "$found_la"; then - save_libdir="$libdir" - case "$found_la" in - */* | *\\*) . "$found_la" ;; - *) . "./$found_la" ;; - esac - libdir="$save_libdir" - for dep in $dependency_libs; do - case "$dep" in - -L*) - additional_libdir=`echo "X$dep" | sed -e 's/^X-L//'` - if test "X$additional_libdir" != "X/usr/$acl_libdirstem" \ - && test "X$additional_libdir" != "X/usr/$acl_libdirstem2"; then - haveit= - if test "X$additional_libdir" = "X/usr/local/$acl_libdirstem" \ - || test "X$additional_libdir" = "X/usr/local/$acl_libdirstem2"; then - if test -n "$GCC"; then - case $host_os in - linux* | gnu* | k*bsd*-gnu) haveit=yes;; - esac - fi - fi - if test -z "$haveit"; then - haveit= - for x in $LDFLAGS $LIBPTH; do - - acl_save_prefix="$prefix" - prefix="$acl_final_prefix" - acl_save_exec_prefix="$exec_prefix" - exec_prefix="$acl_final_exec_prefix" - eval x=\"$x\" - exec_prefix="$acl_save_exec_prefix" - prefix="$acl_save_prefix" - - if test "X$x" = "X-L$additional_libdir"; then - haveit=yes - break - fi - done - if test -z "$haveit"; then - if test -d "$additional_libdir"; then - LIBPTH="${LIBPTH}${LIBPTH:+ }-L$additional_libdir" - fi - fi - haveit= - for x in $LDFLAGS $LTLIBPTH; do - - acl_save_prefix="$prefix" - prefix="$acl_final_prefix" - acl_save_exec_prefix="$exec_prefix" - exec_prefix="$acl_final_exec_prefix" - eval x=\"$x\" - exec_prefix="$acl_save_exec_prefix" - prefix="$acl_save_prefix" - - if test "X$x" = "X-L$additional_libdir"; then - haveit=yes - break - fi - done - if test -z "$haveit"; then - if test -d "$additional_libdir"; then - LTLIBPTH="${LTLIBPTH}${LTLIBPTH:+ }-L$additional_libdir" - fi - fi - fi - fi - ;; - -R*) - dir=`echo "X$dep" | sed -e 's/^X-R//'` - if test "$enable_rpath" != no; then - haveit= - for x in $rpathdirs; do - if test "X$x" = "X$dir"; then - haveit=yes - break - fi - done - if test -z "$haveit"; then - rpathdirs="$rpathdirs $dir" - fi - haveit= - for x in $ltrpathdirs; do - if test "X$x" = "X$dir"; then - haveit=yes - break - fi - done - if test -z "$haveit"; then - ltrpathdirs="$ltrpathdirs $dir" - fi - fi - ;; - -l*) - names_next_round="$names_next_round "`echo "X$dep" | sed -e 's/^X-l//'` - ;; - *.la) - names_next_round="$names_next_round "`echo "X$dep" | sed -e 's,^X.*/,,' -e 's,^lib,,' -e 's,\.la$,,'` - ;; - *) - LIBPTH="${LIBPTH}${LIBPTH:+ }$dep" - LTLIBPTH="${LTLIBPTH}${LTLIBPTH:+ }$dep" - ;; - esac - done - fi - else - LIBPTH="${LIBPTH}${LIBPTH:+ }-l$name" - LTLIBPTH="${LTLIBPTH}${LTLIBPTH:+ }-l$name" - fi - fi - fi - done - done - if test "X$rpathdirs" != "X"; then - if test -n "$acl_hardcode_libdir_separator"; then - alldirs= - for found_dir in $rpathdirs; do - alldirs="${alldirs}${alldirs:+$acl_hardcode_libdir_separator}$found_dir" - done - acl_save_libdir="$libdir" - libdir="$alldirs" - eval flag=\"$acl_hardcode_libdir_flag_spec\" - libdir="$acl_save_libdir" - LIBPTH="${LIBPTH}${LIBPTH:+ }$flag" - else - for found_dir in $rpathdirs; do - acl_save_libdir="$libdir" - libdir="$found_dir" - eval flag=\"$acl_hardcode_libdir_flag_spec\" - libdir="$acl_save_libdir" - LIBPTH="${LIBPTH}${LIBPTH:+ }$flag" - done - fi - fi - if test "X$ltrpathdirs" != "X"; then - for found_dir in $ltrpathdirs; do - LTLIBPTH="${LTLIBPTH}${LTLIBPTH:+ }-R$found_dir" - done - fi - - - - - - ac_cv_libpth_libs="$LIBPTH" - ac_cv_libpth_ltlibs="$LTLIBPTH" - ac_cv_libpth_cppflags="$INCPTH" - ac_cv_libpth_prefix="$LIBPTH_PREFIX" - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_libpth_libs" >&5 -$as_echo "$ac_cv_libpth_libs" >&6; } - LIBPTH="$ac_cv_libpth_libs" - LTLIBPTH="$ac_cv_libpth_ltlibs" - INCPTH="$ac_cv_libpth_cppflags" - LIBPTH_PREFIX="$ac_cv_libpth_prefix" - - for element in $INCPTH; do - haveit= - for x in $CPPFLAGS; do - - acl_save_prefix="$prefix" - prefix="$acl_final_prefix" - acl_save_exec_prefix="$exec_prefix" - exec_prefix="$acl_final_exec_prefix" - eval x=\"$x\" - exec_prefix="$acl_save_exec_prefix" - prefix="$acl_save_prefix" - - if test "X$x" = "X$element"; then - haveit=yes - break - fi - done - if test -z "$haveit"; then - CPPFLAGS="${CPPFLAGS}${CPPFLAGS:+ }$element" - fi - done - - - - - HAVE_LIBPTH=yes - - - - gl_have_pth= - gl_save_LIBS="$LIBS" - LIBS="$LIBS $LIBPTH" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include -int -main (void) -{ -pth_self(); - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - gl_have_pth=yes -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext - LIBS="$gl_save_LIBS" - if test -n "$gl_have_pth"; then - gl_threads_api=pth - LIBTHREAD="$LIBPTH" - LTLIBTHREAD="$LTLIBPTH" - LIBMULTITHREAD="$LIBTHREAD" - LTLIBMULTITHREAD="$LTLIBTHREAD" - -$as_echo "#define USE_PTH_THREADS 1" >>confdefs.h - - if test -n "$LIBMULTITHREAD" || test -n "$LTLIBMULTITHREAD"; then - if case "$gl_cv_have_weak" in *yes) true;; *) false;; esac; then - -$as_echo "#define USE_PTH_THREADS_WEAK 1" >>confdefs.h - - LIBTHREAD= - LTLIBTHREAD= - if test $gl_cv_linker_have_as_needed = yes; then - if test $gl_cv_linker_have_push_state = yes; then - LIBMULTITHREAD="-Wl,--push-state -Wl,--no-as-needed $LIBMULTITHREAD -Wl,--pop-state" - else - LIBMULTITHREAD="-Wl,--no-as-needed $LIBMULTITHREAD" - fi - fi - # TODO: May need to modify LTLIBMULTITHREAD similarly. - fi - fi - else - CPPFLAGS="$gl_save_CPPFLAGS" - fi - fi - if test -z "$gl_have_pthread"; then - case "$gl_use_threads" in - yes | windows | win32) # The 'win32' is for backward compatibility. - if { case "$host_os" in - mingw*) true;; - *) false;; - esac - }; then - gl_threads_api=windows - -$as_echo "#define USE_WINDOWS_THREADS 1" >>confdefs.h - - fi - ;; - esac - fi - fi - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for multithread API to use" >&5 -$as_echo_n "checking for multithread API to use... " >&6; } - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_threads_api" >&5 -$as_echo "$gl_threads_api" >&6; } - - - - - - - - - - - GNULIB__EXIT=0; - GNULIB_ATOLL=0; - GNULIB_CALLOC_POSIX=0; - GNULIB_CANONICALIZE_FILE_NAME=0; - GNULIB_GETLOADAVG=0; - GNULIB_GETSUBOPT=0; - GNULIB_GRANTPT=0; - GNULIB_MALLOC_POSIX=0; - GNULIB_MBTOWC=0; - GNULIB_MKDTEMP=0; - GNULIB_MKOSTEMP=0; - GNULIB_MKOSTEMPS=0; - GNULIB_MKSTEMP=0; - GNULIB_MKSTEMPS=0; - GNULIB_POSIX_OPENPT=0; - GNULIB_PTSNAME=0; - GNULIB_PTSNAME_R=0; - GNULIB_PUTENV=0; - GNULIB_QSORT_R=0; - GNULIB_RANDOM=0; - GNULIB_RANDOM_R=0; - GNULIB_REALLOCARRAY=0; - GNULIB_REALLOC_POSIX=0; - GNULIB_REALPATH=0; - GNULIB_RPMATCH=0; - GNULIB_SECURE_GETENV=0; - GNULIB_SETENV=0; - GNULIB_STRTOD=0; - GNULIB_STRTOLL=0; - GNULIB_STRTOULL=0; - GNULIB_SYSTEM_POSIX=0; - GNULIB_UNLOCKPT=0; - GNULIB_UNSETENV=0; - GNULIB_WCTOMB=0; - HAVE__EXIT=1; - HAVE_ATOLL=1; - HAVE_CANONICALIZE_FILE_NAME=1; - HAVE_DECL_GETLOADAVG=1; - HAVE_GETSUBOPT=1; - HAVE_GRANTPT=1; - HAVE_DECL_INITSTATE=1; - HAVE_MKDTEMP=1; - HAVE_MKOSTEMP=1; - HAVE_MKOSTEMPS=1; - HAVE_MKSTEMP=1; - HAVE_MKSTEMPS=1; - HAVE_POSIX_OPENPT=1; - HAVE_PTSNAME=1; - HAVE_PTSNAME_R=1; - HAVE_QSORT_R=1; - HAVE_RANDOM=1; - HAVE_RANDOM_H=1; - HAVE_RANDOM_R=1; - HAVE_REALLOCARRAY=1; - HAVE_REALPATH=1; - HAVE_RPMATCH=1; - HAVE_SECURE_GETENV=1; - HAVE_SETENV=1; - HAVE_DECL_SETENV=1; - HAVE_DECL_SETSTATE=1; - HAVE_STRTOD=1; - HAVE_STRTOLL=1; - HAVE_STRTOULL=1; - HAVE_STRUCT_RANDOM_DATA=1; - HAVE_SYS_LOADAVG_H=0; - HAVE_UNLOCKPT=1; - HAVE_DECL_UNSETENV=1; - REPLACE_CALLOC=0; - REPLACE_CANONICALIZE_FILE_NAME=0; - REPLACE_MALLOC=0; - REPLACE_MBTOWC=0; - REPLACE_MKSTEMP=0; - REPLACE_PTSNAME=0; - REPLACE_PTSNAME_R=0; - REPLACE_PUTENV=0; - REPLACE_QSORT_R=0; - REPLACE_RANDOM_R=0; - REPLACE_REALLOC=0; - REPLACE_REALPATH=0; - REPLACE_SETENV=0; - REPLACE_STRTOD=0; - REPLACE_UNSETENV=0; - REPLACE_WCTOMB=0; - - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether malloc, realloc, calloc are POSIX compliant" >&5 -$as_echo_n "checking whether malloc, realloc, calloc are POSIX compliant... " >&6; } -if ${gl_cv_func_malloc_posix+:} false; then : - $as_echo_n "(cached) " >&6 -else - - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -int -main (void) -{ -#if defined _WIN32 && ! defined __CYGWIN__ - choke me - #endif - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - gl_cv_func_malloc_posix=yes -else - gl_cv_func_malloc_posix=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_malloc_posix" >&5 -$as_echo "$gl_cv_func_malloc_posix" >&6; } - - - - for ac_header in stdlib.h -do : - ac_fn_c_check_header_mongrel "$LINENO" "stdlib.h" "ac_cv_header_stdlib_h" "$ac_includes_default" -if test "x$ac_cv_header_stdlib_h" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_STDLIB_H 1 -_ACEOF - -fi - -done - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for GNU libc compatible malloc" >&5 -$as_echo_n "checking for GNU libc compatible malloc... " >&6; } -if ${ac_cv_func_malloc_0_nonnull+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test "$cross_compiling" = yes; then : - case "$host_os" in - # Guess yes on platforms where we know the result. - *-gnu* | gnu* | freebsd* | netbsd* | openbsd* \ - | hpux* | solaris* | cygwin* | mingw*) - ac_cv_func_malloc_0_nonnull=yes ;; - # If we don't know, assume the worst. - *) ac_cv_func_malloc_0_nonnull=no ;; - esac - -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#if defined STDC_HEADERS || defined HAVE_STDLIB_H - # include - #else - char *malloc (); - #endif - -int -main (void) -{ -char *p = malloc (0); - int result = !p; - free (p); - return result; - ; - return 0; -} - -_ACEOF -if ac_fn_c_try_run "$LINENO"; then : - ac_cv_func_malloc_0_nonnull=yes -else - ac_cv_func_malloc_0_nonnull=no -fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext -fi - - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_func_malloc_0_nonnull" >&5 -$as_echo "$ac_cv_func_malloc_0_nonnull" >&6; } - if test $ac_cv_func_malloc_0_nonnull = yes; then : - gl_cv_func_malloc_0_nonnull=1 -else - gl_cv_func_malloc_0_nonnull=0 -fi - - -cat >>confdefs.h <<_ACEOF -#define MALLOC_0_IS_NONNULL $gl_cv_func_malloc_0_nonnull -_ACEOF - - - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for unsigned long long int" >&5 -$as_echo_n "checking for unsigned long long int... " >&6; } -if ${ac_cv_type_unsigned_long_long_int+:} false; then : - $as_echo_n "(cached) " >&6 -else - ac_cv_type_unsigned_long_long_int=yes - if test "x${ac_cv_prog_cc_c99-no}" = xno; then - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - - /* For now, do not test the preprocessor; as of 2007 there are too many - implementations with broken preprocessors. Perhaps this can - be revisited in 2012. In the meantime, code should not expect - #if to work with literals wider than 32 bits. */ - /* Test literals. */ - long long int ll = 9223372036854775807ll; - long long int nll = -9223372036854775807LL; - unsigned long long int ull = 18446744073709551615ULL; - /* Test constant expressions. */ - typedef int a[((-9223372036854775807LL < 0 && 0 < 9223372036854775807ll) - ? 1 : -1)]; - typedef int b[(18446744073709551615ULL <= (unsigned long long int) -1 - ? 1 : -1)]; - int i = 63; -int -main (void) -{ -/* Test availability of runtime routines for shift and division. */ - long long int llmax = 9223372036854775807ll; - unsigned long long int ullmax = 18446744073709551615ull; - return ((ll << 63) | (ll >> 63) | (ll < i) | (ll > i) - | (llmax / ll) | (llmax % ll) - | (ull << 63) | (ull >> 63) | (ull << i) | (ull >> i) - | (ullmax / ull) | (ullmax % ull)); - ; - return 0; -} - -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - -else - ac_cv_type_unsigned_long_long_int=no -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext - fi -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_type_unsigned_long_long_int" >&5 -$as_echo "$ac_cv_type_unsigned_long_long_int" >&6; } - if test $ac_cv_type_unsigned_long_long_int = yes; then - -$as_echo "#define HAVE_UNSIGNED_LONG_LONG_INT 1" >>confdefs.h - - fi - - - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for long long int" >&5 -$as_echo_n "checking for long long int... " >&6; } -if ${ac_cv_type_long_long_int+:} false; then : - $as_echo_n "(cached) " >&6 -else - ac_cv_type_long_long_int=yes - if test "x${ac_cv_prog_cc_c99-no}" = xno; then - ac_cv_type_long_long_int=$ac_cv_type_unsigned_long_long_int - if test $ac_cv_type_long_long_int = yes; then - if test "$cross_compiling" = yes; then : - : -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include - #ifndef LLONG_MAX - # define HALF \ - (1LL << (sizeof (long long int) * CHAR_BIT - 2)) - # define LLONG_MAX (HALF - 1 + HALF) - #endif -int -main (void) -{ -long long int n = 1; - int i; - for (i = 0; ; i++) - { - long long int m = n << i; - if (m >> i != n) - return 1; - if (LLONG_MAX / 2 < m) - break; - } - return 0; - ; - return 0; -} -_ACEOF -if ac_fn_c_try_run "$LINENO"; then : - -else - ac_cv_type_long_long_int=no -fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext -fi - - fi - fi -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_type_long_long_int" >&5 -$as_echo "$ac_cv_type_long_long_int" >&6; } - if test $ac_cv_type_long_long_int = yes; then - -$as_echo "#define HAVE_LONG_LONG_INT 1" >>confdefs.h - - fi - - - - - - - - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for a traditional japanese locale" >&5 -$as_echo_n "checking for a traditional japanese locale... " >&6; } -if ${gt_cv_locale_ja+:} false; then : - $as_echo_n "(cached) " >&6 -else - - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -#include -#include -#if HAVE_LANGINFO_CODESET -# include -#endif -#include -#include -struct tm t; -char buf[16]; -int main () -{ - /* On BeOS and Haiku, locales are not implemented in libc. Rather, libintl - imitates locale dependent behaviour by looking at the environment - variables, and all locales use the UTF-8 encoding. */ -#if defined __BEOS__ || defined __HAIKU__ - return 1; -#else - /* Check whether the given locale name is recognized by the system. */ -# if defined _WIN32 && !defined __CYGWIN__ - /* On native Windows, setlocale(category, "") looks at the system settings, - not at the environment variables. Also, when an encoding suffix such - as ".65001" or ".54936" is specified, it succeeds but sets the LC_CTYPE - category of the locale to "C". */ - if (setlocale (LC_ALL, getenv ("LC_ALL")) == NULL - || strcmp (setlocale (LC_CTYPE, NULL), "C") == 0) - return 1; -# else - if (setlocale (LC_ALL, "") == NULL) return 1; -# endif - /* Check whether nl_langinfo(CODESET) is nonempty and not "ASCII" or "646". - On Mac OS X 10.3.5 (Darwin 7.5) in the fr_FR locale, nl_langinfo(CODESET) - is empty, and the behaviour of Tcl 8.4 in this locale is not useful. - On OpenBSD 4.0, when an unsupported locale is specified, setlocale() - succeeds but then nl_langinfo(CODESET) is "646". In this situation, - some unit tests fail. - On MirBSD 10, when an unsupported locale is specified, setlocale() - succeeds but then nl_langinfo(CODESET) is "UTF-8". */ -# if HAVE_LANGINFO_CODESET - { - const char *cs = nl_langinfo (CODESET); - if (cs[0] == '\0' || strcmp (cs, "ASCII") == 0 || strcmp (cs, "646") == 0 - || strcmp (cs, "UTF-8") == 0) - return 1; - } -# endif -# ifdef __CYGWIN__ - /* On Cygwin, avoid locale names without encoding suffix, because the - locale_charset() function relies on the encoding suffix. Note that - LC_ALL is set on the command line. */ - if (strchr (getenv ("LC_ALL"), '.') == NULL) return 1; -# endif - /* Check whether MB_CUR_MAX is > 1. This excludes the dysfunctional locales - on Cygwin 1.5.x. */ - if (MB_CUR_MAX == 1) - return 1; - /* Check whether in a month name, no byte in the range 0x80..0x9F occurs. - This excludes the UTF-8 encoding (except on MirBSD). */ - { - const char *p; - t.tm_year = 1975 - 1900; t.tm_mon = 2 - 1; t.tm_mday = 4; - if (strftime (buf, sizeof (buf), "%B", &t) < 2) return 1; - for (p = buf; *p != '\0'; p++) - if ((unsigned char) *p >= 0x80 && (unsigned char) *p < 0xa0) - return 1; - } - return 0; -#endif -} - -_ACEOF - if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5 - (eval $ac_link) 2>&5 - ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; } && test -s conftest$ac_exeext; then - case "$host_os" in - # Handle native Windows specially, because there setlocale() interprets - # "ar" as "Arabic" or "Arabic_Saudi Arabia.1256", - # "fr" or "fra" as "French" or "French_France.1252", - # "ge"(!) or "deu"(!) as "German" or "German_Germany.1252", - # "ja" as "Japanese" or "Japanese_Japan.932", - # and similar. - mingw*) - # Note that on native Windows, the Japanese locale is - # Japanese_Japan.932, and CP932 is very different from EUC-JP, so we - # cannot use it here. - gt_cv_locale_ja=none - ;; - *) - # Setting LC_ALL is not enough. Need to set LC_TIME to empty, because - # otherwise on Mac OS X 10.3.5 the LC_TIME=C from the beginning of the - # configure script would override the LC_ALL setting. Likewise for - # LC_CTYPE, which is also set at the beginning of the configure script. - # Test for the AIX locale name. - if (LC_ALL=ja_JP LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_ja=ja_JP - else - # Test for the locale name with explicit encoding suffix. - if (LC_ALL=ja_JP.EUC-JP LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_ja=ja_JP.EUC-JP - else - # Test for the HP-UX, OSF/1, NetBSD locale name. - if (LC_ALL=ja_JP.eucJP LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_ja=ja_JP.eucJP - else - # Test for the IRIX, FreeBSD locale name. - if (LC_ALL=ja_JP.EUC LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_ja=ja_JP.EUC - else - # Test for the Solaris 7 locale name. - if (LC_ALL=ja LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_ja=ja - else - # Special test for NetBSD 1.6. - if test -f /usr/share/locale/ja_JP.eucJP/LC_CTYPE; then - gt_cv_locale_ja=ja_JP.eucJP - else - # None found. - gt_cv_locale_ja=none - fi - fi - fi - fi - fi - fi - ;; - esac - fi - rm -fr conftest* - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gt_cv_locale_ja" >&5 -$as_echo "$gt_cv_locale_ja" >&6; } - LOCALE_JA=$gt_cv_locale_ja - - - - - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for a transitional chinese locale" >&5 -$as_echo_n "checking for a transitional chinese locale... " >&6; } -if ${gt_cv_locale_zh_CN+:} false; then : - $as_echo_n "(cached) " >&6 -else - - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -#include -#include -#include -#if HAVE_LANGINFO_CODESET -# include -#endif -#include -#include -struct tm t; -char buf[16]; -int main () -{ - /* On BeOS and Haiku, locales are not implemented in libc. Rather, libintl - imitates locale dependent behaviour by looking at the environment - variables, and all locales use the UTF-8 encoding. */ -#if defined __BEOS__ || defined __HAIKU__ - return 1; -#else - /* Check whether the given locale name is recognized by the system. */ -# if defined _WIN32 && !defined __CYGWIN__ - /* On native Windows, setlocale(category, "") looks at the system settings, - not at the environment variables. Also, when an encoding suffix such - as ".65001" or ".54936" is specified, it succeeds but sets the LC_CTYPE - category of the locale to "C". */ - if (setlocale (LC_ALL, getenv ("LC_ALL")) == NULL - || strcmp (setlocale (LC_CTYPE, NULL), "C") == 0) - return 1; -# else - if (setlocale (LC_ALL, "") == NULL) return 1; -# endif - /* Check whether nl_langinfo(CODESET) is nonempty and not "ASCII" or "646". - On Mac OS X 10.3.5 (Darwin 7.5) in the fr_FR locale, nl_langinfo(CODESET) - is empty, and the behaviour of Tcl 8.4 in this locale is not useful. - On OpenBSD 4.0, when an unsupported locale is specified, setlocale() - succeeds but then nl_langinfo(CODESET) is "646". In this situation, - some unit tests fail. - On MirBSD 10, when an unsupported locale is specified, setlocale() - succeeds but then nl_langinfo(CODESET) is "UTF-8". */ -# if HAVE_LANGINFO_CODESET - { - const char *cs = nl_langinfo (CODESET); - if (cs[0] == '\0' || strcmp (cs, "ASCII") == 0 || strcmp (cs, "646") == 0 - || strcmp (cs, "UTF-8") == 0) - return 1; - } -# endif -# ifdef __CYGWIN__ - /* On Cygwin, avoid locale names without encoding suffix, because the - locale_charset() function relies on the encoding suffix. Note that - LC_ALL is set on the command line. */ - if (strchr (getenv ("LC_ALL"), '.') == NULL) return 1; -# endif - /* Check whether in a month name, no byte in the range 0x80..0x9F occurs. - This excludes the UTF-8 encoding (except on MirBSD). */ - { - const char *p; - t.tm_year = 1975 - 1900; t.tm_mon = 2 - 1; t.tm_mday = 4; - if (strftime (buf, sizeof (buf), "%B", &t) < 2) return 1; - for (p = buf; *p != '\0'; p++) - if ((unsigned char) *p >= 0x80 && (unsigned char) *p < 0xa0) - return 1; - } - /* Check whether a typical GB18030 multibyte sequence is recognized as a - single wide character. This excludes the GB2312 and GBK encodings. */ - if (mblen ("\203\062\332\066", 5) != 4) - return 1; - return 0; -#endif -} - -_ACEOF - if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5 - (eval $ac_link) 2>&5 - ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; } && test -s conftest$ac_exeext; then - case "$host_os" in - # Handle native Windows specially, because there setlocale() interprets - # "ar" as "Arabic" or "Arabic_Saudi Arabia.1256", - # "fr" or "fra" as "French" or "French_France.1252", - # "ge"(!) or "deu"(!) as "German" or "German_Germany.1252", - # "ja" as "Japanese" or "Japanese_Japan.932", - # and similar. - mingw*) - # Test for the hypothetical native Windows locale name. - if (LC_ALL=Chinese_China.54936 LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_zh_CN=Chinese_China.54936 - else - # None found. - gt_cv_locale_zh_CN=none - fi - ;; - solaris2.8) - # On Solaris 8, the locales zh_CN.GB18030, zh_CN.GBK, zh.GBK are - # broken. One witness is the test case in gl_MBRTOWC_SANITYCHECK. - # Another witness is that "LC_ALL=zh_CN.GB18030 bash -c true" dumps core. - gt_cv_locale_zh_CN=none - ;; - *) - # Setting LC_ALL is not enough. Need to set LC_TIME to empty, because - # otherwise on Mac OS X 10.3.5 the LC_TIME=C from the beginning of the - # configure script would override the LC_ALL setting. Likewise for - # LC_CTYPE, which is also set at the beginning of the configure script. - # Test for the locale name without encoding suffix. - if (LC_ALL=zh_CN LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_zh_CN=zh_CN - else - # Test for the locale name with explicit encoding suffix. - if (LC_ALL=zh_CN.GB18030 LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_zh_CN=zh_CN.GB18030 - else - # None found. - gt_cv_locale_zh_CN=none - fi - fi - ;; - esac - else - # If there was a link error, due to mblen(), the system is so old that - # it certainly doesn't have a chinese locale. - gt_cv_locale_zh_CN=none - fi - rm -fr conftest* - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gt_cv_locale_zh_CN" >&5 -$as_echo "$gt_cv_locale_zh_CN" >&6; } - LOCALE_ZH_CN=$gt_cv_locale_zh_CN - - - - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for a french Unicode locale" >&5 -$as_echo_n "checking for a french Unicode locale... " >&6; } -if ${gt_cv_locale_fr_utf8+:} false; then : - $as_echo_n "(cached) " >&6 -else - - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -#include -#include -#if HAVE_LANGINFO_CODESET -# include -#endif -#include -#include -struct tm t; -char buf[16]; -int main () { - /* On BeOS and Haiku, locales are not implemented in libc. Rather, libintl - imitates locale dependent behaviour by looking at the environment - variables, and all locales use the UTF-8 encoding. */ -#if !(defined __BEOS__ || defined __HAIKU__) - /* Check whether the given locale name is recognized by the system. */ -# if defined _WIN32 && !defined __CYGWIN__ - /* On native Windows, setlocale(category, "") looks at the system settings, - not at the environment variables. Also, when an encoding suffix such - as ".65001" or ".54936" is specified, it succeeds but sets the LC_CTYPE - category of the locale to "C". */ - if (setlocale (LC_ALL, getenv ("LC_ALL")) == NULL - || strcmp (setlocale (LC_CTYPE, NULL), "C") == 0) - return 1; -# else - if (setlocale (LC_ALL, "") == NULL) return 1; -# endif - /* Check whether nl_langinfo(CODESET) is nonempty and not "ASCII" or "646". - On Mac OS X 10.3.5 (Darwin 7.5) in the fr_FR locale, nl_langinfo(CODESET) - is empty, and the behaviour of Tcl 8.4 in this locale is not useful. - On OpenBSD 4.0, when an unsupported locale is specified, setlocale() - succeeds but then nl_langinfo(CODESET) is "646". In this situation, - some unit tests fail. */ -# if HAVE_LANGINFO_CODESET - { - const char *cs = nl_langinfo (CODESET); - if (cs[0] == '\0' || strcmp (cs, "ASCII") == 0 || strcmp (cs, "646") == 0) - return 1; - } -# endif -# ifdef __CYGWIN__ - /* On Cygwin, avoid locale names without encoding suffix, because the - locale_charset() function relies on the encoding suffix. Note that - LC_ALL is set on the command line. */ - if (strchr (getenv ("LC_ALL"), '.') == NULL) return 1; -# endif - /* Check whether in the abbreviation of the second month, the second - character (should be U+00E9: LATIN SMALL LETTER E WITH ACUTE) is - two bytes long, with UTF-8 encoding. */ - t.tm_year = 1975 - 1900; t.tm_mon = 2 - 1; t.tm_mday = 4; - if (strftime (buf, sizeof (buf), "%b", &t) < 4 - || buf[1] != (char) 0xc3 || buf[2] != (char) 0xa9 || buf[3] != 'v') - return 1; -#endif -#if !defined __BIONIC__ /* Bionic libc's 'struct lconv' is just a dummy. */ - /* Check whether the decimal separator is a comma. - On NetBSD 3.0 in the fr_FR.ISO8859-1 locale, localeconv()->decimal_point - are nl_langinfo(RADIXCHAR) are both ".". */ - if (localeconv () ->decimal_point[0] != ',') return 1; -#endif - return 0; -} - -_ACEOF - if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5 - (eval $ac_link) 2>&5 - ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; } && test -s conftest$ac_exeext; then - case "$host_os" in - # Handle native Windows specially, because there setlocale() interprets - # "ar" as "Arabic" or "Arabic_Saudi Arabia.1256", - # "fr" or "fra" as "French" or "French_France.1252", - # "ge"(!) or "deu"(!) as "German" or "German_Germany.1252", - # "ja" as "Japanese" or "Japanese_Japan.932", - # and similar. - mingw*) - # Test for the hypothetical native Windows locale name. - if (LC_ALL=French_France.65001 LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_fr_utf8=French_France.65001 - else - # None found. - gt_cv_locale_fr_utf8=none - fi - ;; - *) - # Setting LC_ALL is not enough. Need to set LC_TIME to empty, because - # otherwise on Mac OS X 10.3.5 the LC_TIME=C from the beginning of the - # configure script would override the LC_ALL setting. Likewise for - # LC_CTYPE, which is also set at the beginning of the configure script. - # Test for the usual locale name. - if (LC_ALL=fr_FR LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_fr_utf8=fr_FR - else - # Test for the locale name with explicit encoding suffix. - if (LC_ALL=fr_FR.UTF-8 LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_fr_utf8=fr_FR.UTF-8 - else - # Test for the Solaris 7 locale name. - if (LC_ALL=fr.UTF-8 LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_fr_utf8=fr.UTF-8 - else - # None found. - gt_cv_locale_fr_utf8=none - fi - fi - fi - ;; - esac - fi - rm -fr conftest* - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gt_cv_locale_fr_utf8" >&5 -$as_echo "$gt_cv_locale_fr_utf8" >&6; } - LOCALE_FR_UTF8=$gt_cv_locale_fr_utf8 - - - - - - - - - - - - GNULIB_EXPLICIT_BZERO=0; - GNULIB_FFSL=0; - GNULIB_FFSLL=0; - GNULIB_MEMCHR=0; - GNULIB_MEMMEM=0; - GNULIB_MEMPCPY=0; - GNULIB_MEMRCHR=0; - GNULIB_RAWMEMCHR=0; - GNULIB_STPCPY=0; - GNULIB_STPNCPY=0; - GNULIB_STRCHRNUL=0; - GNULIB_STRDUP=0; - GNULIB_STRNCAT=0; - GNULIB_STRNDUP=0; - GNULIB_STRNLEN=0; - GNULIB_STRPBRK=0; - GNULIB_STRSEP=0; - GNULIB_STRSTR=0; - GNULIB_STRCASESTR=0; - GNULIB_STRTOK_R=0; - GNULIB_MBSLEN=0; - GNULIB_MBSNLEN=0; - GNULIB_MBSCHR=0; - GNULIB_MBSRCHR=0; - GNULIB_MBSSTR=0; - GNULIB_MBSCASECMP=0; - GNULIB_MBSNCASECMP=0; - GNULIB_MBSPCASECMP=0; - GNULIB_MBSCASESTR=0; - GNULIB_MBSCSPN=0; - GNULIB_MBSPBRK=0; - GNULIB_MBSSPN=0; - GNULIB_MBSSEP=0; - GNULIB_MBSTOK_R=0; - GNULIB_STRERROR=0; - GNULIB_STRERROR_R=0; - GNULIB_STRSIGNAL=0; - GNULIB_STRVERSCMP=0; - HAVE_MBSLEN=0; - HAVE_EXPLICIT_BZERO=1; - HAVE_FFSL=1; - HAVE_FFSLL=1; - HAVE_MEMCHR=1; - HAVE_DECL_MEMMEM=1; - HAVE_MEMPCPY=1; - HAVE_DECL_MEMRCHR=1; - HAVE_RAWMEMCHR=1; - HAVE_STPCPY=1; - HAVE_STPNCPY=1; - HAVE_STRCHRNUL=1; - HAVE_DECL_STRDUP=1; - HAVE_DECL_STRNDUP=1; - HAVE_DECL_STRNLEN=1; - HAVE_STRPBRK=1; - HAVE_STRSEP=1; - HAVE_STRCASESTR=1; - HAVE_DECL_STRTOK_R=1; - HAVE_DECL_STRERROR_R=1; - HAVE_DECL_STRSIGNAL=1; - HAVE_STRVERSCMP=1; - REPLACE_MEMCHR=0; - REPLACE_MEMMEM=0; - REPLACE_STPNCPY=0; - REPLACE_STRCHRNUL=0; - REPLACE_STRDUP=0; - REPLACE_STRNCAT=0; - REPLACE_STRNDUP=0; - REPLACE_STRNLEN=0; - REPLACE_STRSTR=0; - REPLACE_STRCASESTR=0; - REPLACE_STRTOK_R=0; - REPLACE_STRERROR=0; - REPLACE_STRERROR_R=0; - REPLACE_STRSIGNAL=0; - UNDEFINE_STRTOK_R=0; - - - - - - - # Check for mmap(). Don't use AC_FUNC_MMAP, because it checks too much: it - # fails on HP-UX 11, because MAP_FIXED mappings do not work. But this is - # irrelevant for anonymous mappings. - ac_fn_c_check_func "$LINENO" "mmap" "ac_cv_func_mmap" -if test "x$ac_cv_func_mmap" = xyes; then : - gl_have_mmap=yes -else - gl_have_mmap=no -fi - - - # Try to allow MAP_ANONYMOUS. - gl_have_mmap_anonymous=no - if test $gl_have_mmap = yes; then - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for MAP_ANONYMOUS" >&5 -$as_echo_n "checking for MAP_ANONYMOUS... " >&6; } - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -#include -#ifdef MAP_ANONYMOUS - I cannot identify this map -#endif - -_ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "I cannot identify this map" >/dev/null 2>&1; then : - gl_have_mmap_anonymous=yes -fi -rm -f conftest* - - if test $gl_have_mmap_anonymous != yes; then - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -#include -#ifdef MAP_ANON - I cannot identify this map -#endif - -_ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "I cannot identify this map" >/dev/null 2>&1; then : - -$as_echo "#define MAP_ANONYMOUS MAP_ANON" >>confdefs.h - - gl_have_mmap_anonymous=yes -fi -rm -f conftest* - - fi - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_have_mmap_anonymous" >&5 -$as_echo "$gl_have_mmap_anonymous" >&6; } - if test $gl_have_mmap_anonymous = yes; then - -$as_echo "#define HAVE_MAP_ANONYMOUS 1" >>confdefs.h - - fi - fi - - - - - - - if test $HAVE_MEMCHR = 1; then - # Detect platform-specific bugs in some versions of glibc: - # memchr should not dereference anything with length 0 - # https://bugzilla.redhat.com/show_bug.cgi?id=499689 - # memchr should not dereference overestimated length after a match - # https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=521737 - # https://sourceware.org/bugzilla/show_bug.cgi?id=10162 - # Assume that memchr works on platforms that lack mprotect. - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether memchr works" >&5 -$as_echo_n "checking whether memchr works... " >&6; } -if ${gl_cv_func_memchr_works+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test "$cross_compiling" = yes; then : - case "$host_os" in - # Guess yes on native Windows. - mingw*) gl_cv_func_memchr_works="guessing yes" ;; - # Be pessimistic for now. - *) gl_cv_func_memchr_works="guessing no" ;; - esac - -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -#include -#if HAVE_SYS_MMAN_H -# include -# include -# include -# include -# ifndef MAP_FILE -# define MAP_FILE 0 -# endif -#endif - -int -main (void) -{ - - int result = 0; - char *fence = NULL; -#if HAVE_SYS_MMAN_H && HAVE_MPROTECT -# if HAVE_MAP_ANONYMOUS - const int flags = MAP_ANONYMOUS | MAP_PRIVATE; - const int fd = -1; -# else /* !HAVE_MAP_ANONYMOUS */ - const int flags = MAP_FILE | MAP_PRIVATE; - int fd = open ("/dev/zero", O_RDONLY, 0666); - if (fd >= 0) -# endif - { - int pagesize = getpagesize (); - char *two_pages = - (char *) mmap (NULL, 2 * pagesize, PROT_READ | PROT_WRITE, - flags, fd, 0); - if (two_pages != (char *)(-1) - && mprotect (two_pages + pagesize, pagesize, PROT_NONE) == 0) - fence = two_pages + pagesize; - } -#endif - if (fence) - { - if (memchr (fence, 0, 0)) - result |= 1; - strcpy (fence - 9, "12345678"); - if (memchr (fence - 9, 0, 79) != fence - 1) - result |= 2; - if (memchr (fence - 1, 0, 3) != fence - 1) - result |= 4; - } - return result; - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_run "$LINENO"; then : - gl_cv_func_memchr_works=yes -else - gl_cv_func_memchr_works=no -fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext -fi - - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_memchr_works" >&5 -$as_echo "$gl_cv_func_memchr_works" >&6; } - case "$gl_cv_func_memchr_works" in - *yes) ;; - *) REPLACE_MEMCHR=1 ;; - esac - fi - -ac_fn_c_check_decl "$LINENO" "memrchr" "ac_cv_have_decl_memrchr" "$ac_includes_default" -if test "x$ac_cv_have_decl_memrchr" = xyes; then : - ac_have_decl=1 -else - ac_have_decl=0 -fi - -cat >>confdefs.h <<_ACEOF -#define HAVE_DECL_MEMRCHR $ac_have_decl -_ACEOF - - - - - - gl_cv_c_multiarch=no - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#ifndef __APPLE_CC__ - not a universal capable compiler - #endif - typedef int dummy; - -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - - arch= - prev= - for word in ${CC} ${CFLAGS} ${CPPFLAGS} ${LDFLAGS}; do - if test -n "$prev"; then - case $word in - i?86 | x86_64 | ppc | ppc64) - if test -z "$arch" || test "$arch" = "$word"; then - arch="$word" - else - gl_cv_c_multiarch=yes - fi - ;; - esac - prev= - else - if test "x$word" = "x-arch"; then - prev=arch - fi - fi - done - -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - if test $gl_cv_c_multiarch = yes; then - APPLE_UNIVERSAL_BUILD=1 - else - APPLE_UNIVERSAL_BUILD=0 - fi - - - - - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for O_CLOEXEC" >&5 -$as_echo_n "checking for O_CLOEXEC... " >&6; } -if ${gl_cv_macro_O_CLOEXEC+:} false; then : - $as_echo_n "(cached) " >&6 -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include - #ifndef O_CLOEXEC - choke me; - #endif - -int -main (void) -{ -return O_CLOEXEC; - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - gl_cv_macro_O_CLOEXEC=yes -else - gl_cv_macro_O_CLOEXEC=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_macro_O_CLOEXEC" >&5 -$as_echo "$gl_cv_macro_O_CLOEXEC" >&6; } - - - - - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for promoted mode_t type" >&5 -$as_echo_n "checking for promoted mode_t type... " >&6; } -if ${gl_cv_promoted_mode_t+:} false; then : - $as_echo_n "(cached) " >&6 -else - - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include -int -main (void) -{ -typedef int array[2 * (sizeof (mode_t) < sizeof (int)) - 1]; - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - gl_cv_promoted_mode_t='int' -else - gl_cv_promoted_mode_t='mode_t' -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_promoted_mode_t" >&5 -$as_echo "$gl_cv_promoted_mode_t" >&6; } - -cat >>confdefs.h <<_ACEOF -#define PROMOTED_MODE_T $gl_cv_promoted_mode_t -_ACEOF - - - - - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether lstat correctly handles trailing slash" >&5 -$as_echo_n "checking whether lstat correctly handles trailing slash... " >&6; } -if ${gl_cv_func_lstat_dereferences_slashed_symlink+:} false; then : - $as_echo_n "(cached) " >&6 -else - rm -f conftest.sym conftest.file - echo >conftest.file - if test "$cross_compiling" = yes; then : - case "$host_os" in - linux-* | linux) - # Guess yes on Linux systems. - gl_cv_func_lstat_dereferences_slashed_symlink="guessing yes" ;; - *-gnu* | gnu*) - # Guess yes on glibc systems. - gl_cv_func_lstat_dereferences_slashed_symlink="guessing yes" ;; - mingw*) - # Guess no on native Windows. - gl_cv_func_lstat_dereferences_slashed_symlink="guessing no" ;; - *) - # If we don't know, assume the worst. - gl_cv_func_lstat_dereferences_slashed_symlink="guessing no" ;; - esac - -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -$ac_includes_default -int -main (void) -{ -struct stat sbuf; - if (symlink ("conftest.file", "conftest.sym") != 0) - return 1; - /* Linux will dereference the symlink and fail, as required by - POSIX. That is better in the sense that it means we will not - have to compile and use the lstat wrapper. */ - return lstat ("conftest.sym/", &sbuf) == 0; - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_run "$LINENO"; then : - gl_cv_func_lstat_dereferences_slashed_symlink=yes -else - gl_cv_func_lstat_dereferences_slashed_symlink=no -fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext -fi - - rm -f conftest.sym conftest.file - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_lstat_dereferences_slashed_symlink" >&5 -$as_echo "$gl_cv_func_lstat_dereferences_slashed_symlink" >&6; } - case "$gl_cv_func_lstat_dereferences_slashed_symlink" in - *yes) - -cat >>confdefs.h <<_ACEOF -#define LSTAT_FOLLOWS_SLASHED_SYMLINK 1 -_ACEOF - - ;; - esac - -ac_fn_c_check_decl "$LINENO" "alarm" "ac_cv_have_decl_alarm" "$ac_includes_default" -if test "x$ac_cv_have_decl_alarm" = xyes; then : - ac_have_decl=1 -else - ac_have_decl=0 -fi - -cat >>confdefs.h <<_ACEOF -#define HAVE_DECL_ALARM $ac_have_decl -_ACEOF - - - - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are using the GNU C Library >= 2.1 or uClibc" >&5 -$as_echo_n "checking whether we are using the GNU C Library >= 2.1 or uClibc... " >&6; } -if ${ac_cv_gnu_library_2_1+:} false; then : - $as_echo_n "(cached) " >&6 -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -#include -#ifdef __GNU_LIBRARY__ - #if (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 1) || (__GLIBC__ > 2) - Lucky GNU user - #endif -#endif -#ifdef __UCLIBC__ - Lucky user -#endif - -_ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "Lucky" >/dev/null 2>&1; then : - ac_cv_gnu_library_2_1=yes -else - ac_cv_gnu_library_2_1=no -fi -rm -f conftest* - - - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_gnu_library_2_1" >&5 -$as_echo "$ac_cv_gnu_library_2_1" >&6; } - - GLIBC21="$ac_cv_gnu_library_2_1" - - - - - - -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdbool.h that conforms to C99" >&5 -$as_echo_n "checking for stdbool.h that conforms to C99... " >&6; } -if ${ac_cv_header_stdbool_h+:} false; then : - $as_echo_n "(cached) " >&6 -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - - #include - - #ifdef __cplusplus - typedef bool Bool; - #else - typedef _Bool Bool; - #ifndef bool - "error: bool is not defined" - #endif - #ifndef false - "error: false is not defined" - #endif - #if false - "error: false is not 0" - #endif - #ifndef true - "error: true is not defined" - #endif - #if true != 1 - "error: true is not 1" - #endif - #endif - - #ifndef __bool_true_false_are_defined - "error: __bool_true_false_are_defined is not defined" - #endif - - struct s { Bool s: 1; Bool t; bool u: 1; bool v; } s; - - char a[true == 1 ? 1 : -1]; - char b[false == 0 ? 1 : -1]; - char c[__bool_true_false_are_defined == 1 ? 1 : -1]; - char d[(bool) 0.5 == true ? 1 : -1]; - /* See body of main program for 'e'. */ - char f[(Bool) 0.0 == false ? 1 : -1]; - char g[true]; - char h[sizeof (Bool)]; - char i[sizeof s.t]; - enum { j = false, k = true, l = false * true, m = true * 256 }; - /* The following fails for - HP aC++/ANSI C B3910B A.05.55 [Dec 04 2003]. */ - Bool n[m]; - char o[sizeof n == m * sizeof n[0] ? 1 : -1]; - char p[-1 - (Bool) 0 < 0 && -1 - (bool) 0 < 0 ? 1 : -1]; - /* Catch a bug in an HP-UX C compiler. See - https://gcc.gnu.org/ml/gcc-patches/2003-12/msg02303.html - https://lists.gnu.org/r/bug-coreutils/2005-11/msg00161.html - */ - Bool q = true; - Bool *pq = &q; - bool *qq = &q; - -int -main (void) -{ - - bool e = &s; - *pq |= q; *pq |= ! q; - *qq |= q; *qq |= ! q; - /* Refer to every declared value, to avoid compiler optimizations. */ - return (!a + !b + !c + !d + !e + !f + !g + !h + !i + !!j + !k + !!l - + !m + !n + !o + !p + !q + !pq + !qq); - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - ac_cv_header_stdbool_h=yes -else - ac_cv_header_stdbool_h=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_stdbool_h" >&5 -$as_echo "$ac_cv_header_stdbool_h" >&6; } - ac_fn_c_check_type "$LINENO" "_Bool" "ac_cv_type__Bool" "$ac_includes_default" -if test "x$ac_cv_type__Bool" = xyes; then : - -cat >>confdefs.h <<_ACEOF -#define HAVE__BOOL 1 -_ACEOF - - -fi - - - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for wint_t" >&5 -$as_echo_n "checking for wint_t... " >&6; } -if ${gt_cv_c_wint_t+:} false; then : - $as_echo_n "(cached) " >&6 -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -/* Tru64 with Desktop Toolkit C has a bug: must be included before - . - BSD/OS 4.0.1 has a bug: , and must be included - before . */ -#include -#include -#include -#include - wint_t foo = (wchar_t)'\0'; -int -main (void) -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - gt_cv_c_wint_t=yes -else - gt_cv_c_wint_t=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gt_cv_c_wint_t" >&5 -$as_echo "$gt_cv_c_wint_t" >&6; } - if test $gt_cv_c_wint_t = yes; then - -$as_echo "#define HAVE_WINT_T 1" >>confdefs.h - - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether wint_t is too small" >&5 -$as_echo_n "checking whether wint_t is too small... " >&6; } -if ${gl_cv_type_wint_t_too_small+:} false; then : - $as_echo_n "(cached) " >&6 -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -/* Tru64 with Desktop Toolkit C has a bug: must be included before - . - BSD/OS 4.0.1 has a bug: , and must be - included before . */ -#if !(defined __GLIBC__ && !defined __UCLIBC__) -# include -# include -# include -#endif -#include - int verify[sizeof (wint_t) < sizeof (int) ? -1 : 1]; - -int -main (void) -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - gl_cv_type_wint_t_too_small=no -else - gl_cv_type_wint_t_too_small=yes -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_type_wint_t_too_small" >&5 -$as_echo "$gl_cv_type_wint_t_too_small" >&6; } - if test $gl_cv_type_wint_t_too_small = yes; then - GNULIB_OVERRIDES_WINT_T=1 - else - GNULIB_OVERRIDES_WINT_T=0 - fi - else - GNULIB_OVERRIDES_WINT_T=0 - fi - - - - - - - - - - - if test $ac_cv_type_long_long_int = yes; then - HAVE_LONG_LONG_INT=1 - else - HAVE_LONG_LONG_INT=0 - fi - - - if test $ac_cv_type_unsigned_long_long_int = yes; then - HAVE_UNSIGNED_LONG_LONG_INT=1 - else - HAVE_UNSIGNED_LONG_LONG_INT=0 - fi - - - - if test $ac_cv_header_wchar_h = yes; then - HAVE_WCHAR_H=1 - else - HAVE_WCHAR_H=0 - fi - - - if test $ac_cv_header_inttypes_h = yes; then - HAVE_INTTYPES_H=1 - else - HAVE_INTTYPES_H=0 - fi - - - if test $ac_cv_header_sys_types_h = yes; then - HAVE_SYS_TYPES_H=1 - else - HAVE_SYS_TYPES_H=0 - fi - - - - - - - - - - - - if test $gl_cv_have_include_next = yes; then - gl_cv_next_stdint_h='<'stdint.h'>' - else - { $as_echo "$as_me:${as_lineno-$LINENO}: checking absolute name of " >&5 -$as_echo_n "checking absolute name of ... " >&6; } -if ${gl_cv_next_stdint_h+:} false; then : - $as_echo_n "(cached) " >&6 -else - - if test $ac_cv_header_stdint_h = yes; then - - - - - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include -_ACEOF - case "$host_os" in - aix*) gl_absname_cpp="$ac_cpp -C" ;; - *) gl_absname_cpp="$ac_cpp" ;; - esac - - case "$host_os" in - mingw*) - gl_dirsep_regex='[/\\]' - ;; - *) - gl_dirsep_regex='\/' - ;; - esac - gl_make_literal_regex_sed='s,[]$^\\.*/[],\\&,g' - gl_header_literal_regex=`echo 'stdint.h' \ - | sed -e "$gl_make_literal_regex_sed"` - gl_absolute_header_sed="/${gl_dirsep_regex}${gl_header_literal_regex}/"'{ - s/.*"\(.*'"${gl_dirsep_regex}${gl_header_literal_regex}"'\)".*/\1/ - s|^/[^/]|//&| - p - q - }' - - gl_cv_absolute_stdint_h=`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 | - sed -n "$gl_absolute_header_sed"` - - gl_header=$gl_cv_absolute_stdint_h - gl_cv_next_stdint_h='"'$gl_header'"' - else - gl_cv_next_stdint_h='<'stdint.h'>' - fi - - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_next_stdint_h" >&5 -$as_echo "$gl_cv_next_stdint_h" >&6; } - fi - NEXT_STDINT_H=$gl_cv_next_stdint_h - - if test $gl_cv_have_include_next = yes || test $gl_cv_have_include_next = buggy; then - # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include_next' - gl_next_as_first_directive='<'stdint.h'>' - else - # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include' - gl_next_as_first_directive=$gl_cv_next_stdint_h - fi - NEXT_AS_FIRST_DIRECTIVE_STDINT_H=$gl_next_as_first_directive - - - - - if test $ac_cv_header_stdint_h = yes; then - HAVE_STDINT_H=1 - else - HAVE_STDINT_H=0 - fi - - - if test $ac_cv_header_stdint_h = yes; then - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether stdint.h conforms to C99" >&5 -$as_echo_n "checking whether stdint.h conforms to C99... " >&6; } -if ${gl_cv_header_working_stdint_h+:} false; then : - $as_echo_n "(cached) " >&6 -else - gl_cv_header_working_stdint_h=no - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - - -#define _GL_JUST_INCLUDE_SYSTEM_STDINT_H 1 /* work if build isn't clean */ -#define __STDC_CONSTANT_MACROS 1 -#define __STDC_LIMIT_MACROS 1 -#include -/* Dragonfly defines WCHAR_MIN, WCHAR_MAX only in . */ -#if !(defined WCHAR_MIN && defined WCHAR_MAX) -#error "WCHAR_MIN, WCHAR_MAX not defined in " -#endif - - - /* BSD/OS 4.0.1 has a bug: , and must be - included before . */ - #include - #include - #if HAVE_WCHAR_H - # include - # include - # include - #endif - - -#ifdef INT8_MAX -int8_t a1 = INT8_MAX; -int8_t a1min = INT8_MIN; -#endif -#ifdef INT16_MAX -int16_t a2 = INT16_MAX; -int16_t a2min = INT16_MIN; -#endif -#ifdef INT32_MAX -int32_t a3 = INT32_MAX; -int32_t a3min = INT32_MIN; -#endif -#ifdef INT64_MAX -int64_t a4 = INT64_MAX; -int64_t a4min = INT64_MIN; -#endif -#ifdef UINT8_MAX -uint8_t b1 = UINT8_MAX; -#else -typedef int b1[(unsigned char) -1 != 255 ? 1 : -1]; -#endif -#ifdef UINT16_MAX -uint16_t b2 = UINT16_MAX; -#endif -#ifdef UINT32_MAX -uint32_t b3 = UINT32_MAX; -#endif -#ifdef UINT64_MAX -uint64_t b4 = UINT64_MAX; -#endif -int_least8_t c1 = INT8_C (0x7f); -int_least8_t c1max = INT_LEAST8_MAX; -int_least8_t c1min = INT_LEAST8_MIN; -int_least16_t c2 = INT16_C (0x7fff); -int_least16_t c2max = INT_LEAST16_MAX; -int_least16_t c2min = INT_LEAST16_MIN; -int_least32_t c3 = INT32_C (0x7fffffff); -int_least32_t c3max = INT_LEAST32_MAX; -int_least32_t c3min = INT_LEAST32_MIN; -int_least64_t c4 = INT64_C (0x7fffffffffffffff); -int_least64_t c4max = INT_LEAST64_MAX; -int_least64_t c4min = INT_LEAST64_MIN; -uint_least8_t d1 = UINT8_C (0xff); -uint_least8_t d1max = UINT_LEAST8_MAX; -uint_least16_t d2 = UINT16_C (0xffff); -uint_least16_t d2max = UINT_LEAST16_MAX; -uint_least32_t d3 = UINT32_C (0xffffffff); -uint_least32_t d3max = UINT_LEAST32_MAX; -uint_least64_t d4 = UINT64_C (0xffffffffffffffff); -uint_least64_t d4max = UINT_LEAST64_MAX; -int_fast8_t e1 = INT_FAST8_MAX; -int_fast8_t e1min = INT_FAST8_MIN; -int_fast16_t e2 = INT_FAST16_MAX; -int_fast16_t e2min = INT_FAST16_MIN; -int_fast32_t e3 = INT_FAST32_MAX; -int_fast32_t e3min = INT_FAST32_MIN; -int_fast64_t e4 = INT_FAST64_MAX; -int_fast64_t e4min = INT_FAST64_MIN; -uint_fast8_t f1 = UINT_FAST8_MAX; -uint_fast16_t f2 = UINT_FAST16_MAX; -uint_fast32_t f3 = UINT_FAST32_MAX; -uint_fast64_t f4 = UINT_FAST64_MAX; -#ifdef INTPTR_MAX -intptr_t g = INTPTR_MAX; -intptr_t gmin = INTPTR_MIN; -#endif -#ifdef UINTPTR_MAX -uintptr_t h = UINTPTR_MAX; -#endif -intmax_t i = INTMAX_MAX; -uintmax_t j = UINTMAX_MAX; - -/* Check that SIZE_MAX has the correct type, if possible. */ -#if 201112 <= __STDC_VERSION__ -int k = _Generic (SIZE_MAX, size_t: 0); -#elif (2 <= __GNUC__ || defined __IBM__TYPEOF__ \ - || (0x5110 <= __SUNPRO_C && !__STDC__)) -extern size_t k; -extern __typeof__ (SIZE_MAX) k; -#endif - -#include /* for CHAR_BIT */ -#define TYPE_MINIMUM(t) \ - ((t) ((t) 0 < (t) -1 ? (t) 0 : ~ TYPE_MAXIMUM (t))) -#define TYPE_MAXIMUM(t) \ - ((t) ((t) 0 < (t) -1 \ - ? (t) -1 \ - : ((((t) 1 << (sizeof (t) * CHAR_BIT - 2)) - 1) * 2 + 1))) -struct s { - int check_PTRDIFF: - PTRDIFF_MIN == TYPE_MINIMUM (ptrdiff_t) - && PTRDIFF_MAX == TYPE_MAXIMUM (ptrdiff_t) - ? 1 : -1; - /* Detect bug in FreeBSD 6.0 / ia64. */ - int check_SIG_ATOMIC: - SIG_ATOMIC_MIN == TYPE_MINIMUM (sig_atomic_t) - && SIG_ATOMIC_MAX == TYPE_MAXIMUM (sig_atomic_t) - ? 1 : -1; - int check_SIZE: SIZE_MAX == TYPE_MAXIMUM (size_t) ? 1 : -1; - int check_WCHAR: - WCHAR_MIN == TYPE_MINIMUM (wchar_t) - && WCHAR_MAX == TYPE_MAXIMUM (wchar_t) - ? 1 : -1; - /* Detect bug in mingw. */ - int check_WINT: - WINT_MIN == TYPE_MINIMUM (wint_t) - && WINT_MAX == TYPE_MAXIMUM (wint_t) - ? 1 : -1; - - /* Detect bugs in glibc 2.4 and Solaris 10 stdint.h, among others. */ - int check_UINT8_C: - (-1 < UINT8_C (0)) == (-1 < (uint_least8_t) 0) ? 1 : -1; - int check_UINT16_C: - (-1 < UINT16_C (0)) == (-1 < (uint_least16_t) 0) ? 1 : -1; - - /* Detect bugs in OpenBSD 3.9 stdint.h. */ -#ifdef UINT8_MAX - int check_uint8: (uint8_t) -1 == UINT8_MAX ? 1 : -1; -#endif -#ifdef UINT16_MAX - int check_uint16: (uint16_t) -1 == UINT16_MAX ? 1 : -1; -#endif -#ifdef UINT32_MAX - int check_uint32: (uint32_t) -1 == UINT32_MAX ? 1 : -1; -#endif -#ifdef UINT64_MAX - int check_uint64: (uint64_t) -1 == UINT64_MAX ? 1 : -1; -#endif - int check_uint_least8: (uint_least8_t) -1 == UINT_LEAST8_MAX ? 1 : -1; - int check_uint_least16: (uint_least16_t) -1 == UINT_LEAST16_MAX ? 1 : -1; - int check_uint_least32: (uint_least32_t) -1 == UINT_LEAST32_MAX ? 1 : -1; - int check_uint_least64: (uint_least64_t) -1 == UINT_LEAST64_MAX ? 1 : -1; - int check_uint_fast8: (uint_fast8_t) -1 == UINT_FAST8_MAX ? 1 : -1; - int check_uint_fast16: (uint_fast16_t) -1 == UINT_FAST16_MAX ? 1 : -1; - int check_uint_fast32: (uint_fast32_t) -1 == UINT_FAST32_MAX ? 1 : -1; - int check_uint_fast64: (uint_fast64_t) -1 == UINT_FAST64_MAX ? 1 : -1; - int check_uintptr: (uintptr_t) -1 == UINTPTR_MAX ? 1 : -1; - int check_uintmax: (uintmax_t) -1 == UINTMAX_MAX ? 1 : -1; - int check_size: (size_t) -1 == SIZE_MAX ? 1 : -1; -}; - -int -main (void) -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - if test "$cross_compiling" = yes; then : - case "$host_os" in - # Guess yes on native Windows. - mingw*) gl_cv_header_working_stdint_h="guessing yes" ;; - # In general, assume it works. - *) gl_cv_header_working_stdint_h="guessing yes" ;; - esac - -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - - -#define _GL_JUST_INCLUDE_SYSTEM_STDINT_H 1 /* work if build isn't clean */ -#define __STDC_CONSTANT_MACROS 1 -#define __STDC_LIMIT_MACROS 1 -#include - - - /* BSD/OS 4.0.1 has a bug: , and must be - included before . */ - #include - #include - #if HAVE_WCHAR_H - # include - # include - # include - #endif - - -#include -#include -#define MVAL(macro) MVAL1(macro) -#define MVAL1(expression) #expression -static const char *macro_values[] = - { -#ifdef INT8_MAX - MVAL (INT8_MAX), -#endif -#ifdef INT16_MAX - MVAL (INT16_MAX), -#endif -#ifdef INT32_MAX - MVAL (INT32_MAX), -#endif -#ifdef INT64_MAX - MVAL (INT64_MAX), -#endif -#ifdef UINT8_MAX - MVAL (UINT8_MAX), -#endif -#ifdef UINT16_MAX - MVAL (UINT16_MAX), -#endif -#ifdef UINT32_MAX - MVAL (UINT32_MAX), -#endif -#ifdef UINT64_MAX - MVAL (UINT64_MAX), -#endif - NULL - }; - -int -main (void) -{ - - const char **mv; - for (mv = macro_values; *mv != NULL; mv++) - { - const char *value = *mv; - /* Test whether it looks like a cast expression. */ - if (strncmp (value, "((unsigned int)"/*)*/, 15) == 0 - || strncmp (value, "((unsigned short)"/*)*/, 17) == 0 - || strncmp (value, "((unsigned char)"/*)*/, 16) == 0 - || strncmp (value, "((int)"/*)*/, 6) == 0 - || strncmp (value, "((signed short)"/*)*/, 15) == 0 - || strncmp (value, "((signed char)"/*)*/, 14) == 0) - return mv - macro_values + 1; - } - return 0; - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_run "$LINENO"; then : - gl_cv_header_working_stdint_h=yes -fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext -fi - - -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_header_working_stdint_h" >&5 -$as_echo "$gl_cv_header_working_stdint_h" >&6; } - fi - - HAVE_C99_STDINT_H=0 - HAVE_SYS_BITYPES_H=0 - HAVE_SYS_INTTYPES_H=0 - STDINT_H=stdint.h - case "$gl_cv_header_working_stdint_h" in - *yes) - HAVE_C99_STDINT_H=1 - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether stdint.h predates C++11" >&5 -$as_echo_n "checking whether stdint.h predates C++11... " >&6; } -if ${gl_cv_header_stdint_predates_cxx11_h+:} false; then : - $as_echo_n "(cached) " >&6 -else - gl_cv_header_stdint_predates_cxx11_h=yes - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - - -#define _GL_JUST_INCLUDE_SYSTEM_STDINT_H 1 /* work if build isn't clean */ -#include - - - /* BSD/OS 4.0.1 has a bug: , and must be - included before . */ - #include - #include - #if HAVE_WCHAR_H - # include - # include - # include - #endif - - -intmax_t im = INTMAX_MAX; -int32_t i32 = INT32_C (0x7fffffff); - -int -main (void) -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - gl_cv_header_stdint_predates_cxx11_h=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_header_stdint_predates_cxx11_h" >&5 -$as_echo "$gl_cv_header_stdint_predates_cxx11_h" >&6; } - - if test "$gl_cv_header_stdint_predates_cxx11_h" = yes; then - -$as_echo "#define __STDC_CONSTANT_MACROS 1" >>confdefs.h - - -$as_echo "#define __STDC_LIMIT_MACROS 1" >>confdefs.h - - fi - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether stdint.h has UINTMAX_WIDTH etc." >&5 -$as_echo_n "checking whether stdint.h has UINTMAX_WIDTH etc.... " >&6; } -if ${gl_cv_header_stdint_width+:} false; then : - $as_echo_n "(cached) " >&6 -else - gl_cv_header_stdint_width=no - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - - /* Work if build is not clean. */ - #define _GL_JUST_INCLUDE_SYSTEM_STDINT_H 1 - #ifndef __STDC_WANT_IEC_60559_BFP_EXT__ - #define __STDC_WANT_IEC_60559_BFP_EXT__ 1 - #endif - #include - - /* BSD/OS 4.0.1 has a bug: , and must be - included before . */ - #include - #include - #if HAVE_WCHAR_H - # include - # include - # include - #endif - - int iw = UINTMAX_WIDTH; - -int -main (void) -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - gl_cv_header_stdint_width=yes -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_header_stdint_width" >&5 -$as_echo "$gl_cv_header_stdint_width" >&6; } - if test "$gl_cv_header_stdint_width" = yes; then - STDINT_H= - fi - ;; - *) - for ac_header in sys/inttypes.h sys/bitypes.h -do : - as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh` -ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default" -if eval test \"x\$"$as_ac_Header"\" = x"yes"; then : - cat >>confdefs.h <<_ACEOF -#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1 -_ACEOF - -fi - -done - - if test $ac_cv_header_sys_inttypes_h = yes; then - HAVE_SYS_INTTYPES_H=1 - fi - if test $ac_cv_header_sys_bitypes_h = yes; then - HAVE_SYS_BITYPES_H=1 - fi - - - if test $APPLE_UNIVERSAL_BUILD = 0; then - - - for gltype in ptrdiff_t size_t ; do - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for bit size of $gltype" >&5 -$as_echo_n "checking for bit size of $gltype... " >&6; } -if eval \${gl_cv_bitsizeof_${gltype}+:} false; then : - $as_echo_n "(cached) " >&6 -else - if ac_fn_c_compute_int "$LINENO" "sizeof ($gltype) * CHAR_BIT" "result" " - /* BSD/OS 4.0.1 has a bug: , and must be - included before . */ - #include - #include - #if HAVE_WCHAR_H - # include - # include - # include - #endif - -#include "; then : - -else - result=unknown -fi - - eval gl_cv_bitsizeof_${gltype}=\$result - -fi -eval ac_res=\$gl_cv_bitsizeof_${gltype} - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 -$as_echo "$ac_res" >&6; } - eval result=\$gl_cv_bitsizeof_${gltype} - if test $result = unknown; then - result=0 - fi - GLTYPE=`echo "$gltype" | tr 'abcdefghijklmnopqrstuvwxyz ' 'ABCDEFGHIJKLMNOPQRSTUVWXYZ_'` - cat >>confdefs.h <<_ACEOF -#define BITSIZEOF_${GLTYPE} $result -_ACEOF - - eval BITSIZEOF_${GLTYPE}=\$result - done - - - fi - - - for gltype in sig_atomic_t wchar_t wint_t ; do - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for bit size of $gltype" >&5 -$as_echo_n "checking for bit size of $gltype... " >&6; } -if eval \${gl_cv_bitsizeof_${gltype}+:} false; then : - $as_echo_n "(cached) " >&6 -else - if ac_fn_c_compute_int "$LINENO" "sizeof ($gltype) * CHAR_BIT" "result" " - /* BSD/OS 4.0.1 has a bug: , and must be - included before . */ - #include - #include - #if HAVE_WCHAR_H - # include - # include - # include - #endif - -#include "; then : - -else - result=unknown -fi - - eval gl_cv_bitsizeof_${gltype}=\$result - -fi -eval ac_res=\$gl_cv_bitsizeof_${gltype} - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 -$as_echo "$ac_res" >&6; } - eval result=\$gl_cv_bitsizeof_${gltype} - if test $result = unknown; then - result=0 - fi - GLTYPE=`echo "$gltype" | tr 'abcdefghijklmnopqrstuvwxyz ' 'ABCDEFGHIJKLMNOPQRSTUVWXYZ_'` - cat >>confdefs.h <<_ACEOF -#define BITSIZEOF_${GLTYPE} $result -_ACEOF - - eval BITSIZEOF_${GLTYPE}=\$result - done - - - - - for gltype in sig_atomic_t wchar_t wint_t ; do - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $gltype is signed" >&5 -$as_echo_n "checking whether $gltype is signed... " >&6; } -if eval \${gl_cv_type_${gltype}_signed+:} false; then : - $as_echo_n "(cached) " >&6 -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - - /* BSD/OS 4.0.1 has a bug: , and must be - included before . */ - #include - #include - #if HAVE_WCHAR_H - # include - # include - # include - #endif - - int verify[2 * (($gltype) -1 < ($gltype) 0) - 1]; -int -main (void) -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - result=yes -else - result=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - eval gl_cv_type_${gltype}_signed=\$result - -fi -eval ac_res=\$gl_cv_type_${gltype}_signed - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 -$as_echo "$ac_res" >&6; } - eval result=\$gl_cv_type_${gltype}_signed - GLTYPE=`echo $gltype | tr 'abcdefghijklmnopqrstuvwxyz ' 'ABCDEFGHIJKLMNOPQRSTUVWXYZ_'` - if test "$result" = yes; then - cat >>confdefs.h <<_ACEOF -#define HAVE_SIGNED_${GLTYPE} 1 -_ACEOF - - eval HAVE_SIGNED_${GLTYPE}=1 - else - eval HAVE_SIGNED_${GLTYPE}=0 - fi - done - - - gl_cv_type_ptrdiff_t_signed=yes - gl_cv_type_size_t_signed=no - if test $APPLE_UNIVERSAL_BUILD = 0; then - - - for gltype in ptrdiff_t size_t ; do - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $gltype integer literal suffix" >&5 -$as_echo_n "checking for $gltype integer literal suffix... " >&6; } -if eval \${gl_cv_type_${gltype}_suffix+:} false; then : - $as_echo_n "(cached) " >&6 -else - eval gl_cv_type_${gltype}_suffix=no - eval result=\$gl_cv_type_${gltype}_signed - if test "$result" = yes; then - glsufu= - else - glsufu=u - fi - for glsuf in "$glsufu" ${glsufu}l ${glsufu}ll ${glsufu}i64; do - case $glsuf in - '') gltype1='int';; - l) gltype1='long int';; - ll) gltype1='long long int';; - i64) gltype1='__int64';; - u) gltype1='unsigned int';; - ul) gltype1='unsigned long int';; - ull) gltype1='unsigned long long int';; - ui64)gltype1='unsigned __int64';; - esac - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - - /* BSD/OS 4.0.1 has a bug: , and must be - included before . */ - #include - #include - #if HAVE_WCHAR_H - # include - # include - # include - #endif - - extern $gltype foo; - extern $gltype1 foo; -int -main (void) -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - eval gl_cv_type_${gltype}_suffix=\$glsuf -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - eval result=\$gl_cv_type_${gltype}_suffix - test "$result" != no && break - done -fi -eval ac_res=\$gl_cv_type_${gltype}_suffix - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 -$as_echo "$ac_res" >&6; } - GLTYPE=`echo $gltype | tr 'abcdefghijklmnopqrstuvwxyz ' 'ABCDEFGHIJKLMNOPQRSTUVWXYZ_'` - eval result=\$gl_cv_type_${gltype}_suffix - test "$result" = no && result= - eval ${GLTYPE}_SUFFIX=\$result - cat >>confdefs.h <<_ACEOF -#define ${GLTYPE}_SUFFIX $result -_ACEOF - - done - - - fi - - - for gltype in sig_atomic_t wchar_t wint_t ; do - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $gltype integer literal suffix" >&5 -$as_echo_n "checking for $gltype integer literal suffix... " >&6; } -if eval \${gl_cv_type_${gltype}_suffix+:} false; then : - $as_echo_n "(cached) " >&6 -else - eval gl_cv_type_${gltype}_suffix=no - eval result=\$gl_cv_type_${gltype}_signed - if test "$result" = yes; then - glsufu= - else - glsufu=u - fi - for glsuf in "$glsufu" ${glsufu}l ${glsufu}ll ${glsufu}i64; do - case $glsuf in - '') gltype1='int';; - l) gltype1='long int';; - ll) gltype1='long long int';; - i64) gltype1='__int64';; - u) gltype1='unsigned int';; - ul) gltype1='unsigned long int';; - ull) gltype1='unsigned long long int';; - ui64)gltype1='unsigned __int64';; - esac - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - - /* BSD/OS 4.0.1 has a bug: , and must be - included before . */ - #include - #include - #if HAVE_WCHAR_H - # include - # include - # include - #endif - - extern $gltype foo; - extern $gltype1 foo; -int -main (void) -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - eval gl_cv_type_${gltype}_suffix=\$glsuf -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - eval result=\$gl_cv_type_${gltype}_suffix - test "$result" != no && break - done -fi -eval ac_res=\$gl_cv_type_${gltype}_suffix - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 -$as_echo "$ac_res" >&6; } - GLTYPE=`echo $gltype | tr 'abcdefghijklmnopqrstuvwxyz ' 'ABCDEFGHIJKLMNOPQRSTUVWXYZ_'` - eval result=\$gl_cv_type_${gltype}_suffix - test "$result" = no && result= - eval ${GLTYPE}_SUFFIX=\$result - cat >>confdefs.h <<_ACEOF -#define ${GLTYPE}_SUFFIX $result -_ACEOF - - done - - - - if test $GNULIB_OVERRIDES_WINT_T = 1; then - BITSIZEOF_WINT_T=32 - fi - - ;; - esac - - - - LIMITS_H='limits.h' - if test -n "$LIMITS_H"; then - GL_GENERATE_LIMITS_H_TRUE= - GL_GENERATE_LIMITS_H_FALSE='#' -else - GL_GENERATE_LIMITS_H_TRUE='#' - GL_GENERATE_LIMITS_H_FALSE= -fi - - - - - - - - if test -n "$STDINT_H"; then - GL_GENERATE_STDINT_H_TRUE= - GL_GENERATE_STDINT_H_FALSE='#' -else - GL_GENERATE_STDINT_H_TRUE='#' - GL_GENERATE_STDINT_H_FALSE= -fi - - - - GNULIB_FFS=0; - HAVE_FFS=1; - HAVE_STRCASECMP=1; - HAVE_DECL_STRNCASECMP=1; - - - -ac_fn_c_check_decl "$LINENO" "strdup" "ac_cv_have_decl_strdup" "$ac_includes_default" -if test "x$ac_cv_have_decl_strdup" = xyes; then : - ac_have_decl=1 -else - ac_have_decl=0 -fi - -cat >>confdefs.h <<_ACEOF -#define HAVE_DECL_STRDUP $ac_have_decl -_ACEOF - - - REPLACE_STRERROR_0=0 - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether strerror(0) succeeds" >&5 -$as_echo_n "checking whether strerror(0) succeeds... " >&6; } -if ${gl_cv_func_strerror_0_works+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test "$cross_compiling" = yes; then : - case "$host_os" in - # Guess yes on glibc systems. - *-gnu* | gnu*) gl_cv_func_strerror_0_works="guessing yes" ;; - # Guess yes on native Windows. - mingw*) gl_cv_func_strerror_0_works="guessing yes" ;; - # If we don't know, assume the worst. - *) gl_cv_func_strerror_0_works="guessing no" ;; - esac - -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include - #include - -int -main (void) -{ -int result = 0; - char *str; - errno = 0; - str = strerror (0); - if (!*str) result |= 1; - if (errno) result |= 2; - if (strstr (str, "nknown") || strstr (str, "ndefined")) - result |= 4; - return result; - ; - return 0; -} -_ACEOF -if ac_fn_c_try_run "$LINENO"; then : - gl_cv_func_strerror_0_works=yes -else - gl_cv_func_strerror_0_works=no -fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext -fi - - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_strerror_0_works" >&5 -$as_echo "$gl_cv_func_strerror_0_works" >&6; } - case "$gl_cv_func_strerror_0_works" in - *yes) ;; - *) - REPLACE_STRERROR_0=1 - -$as_echo "#define REPLACE_STRERROR_0 1" >>confdefs.h - - ;; - esac - - - - - - - - - - - - - if test $gl_cv_have_include_next = yes; then - gl_cv_next_string_h='<'string.h'>' - else - { $as_echo "$as_me:${as_lineno-$LINENO}: checking absolute name of " >&5 -$as_echo_n "checking absolute name of ... " >&6; } -if ${gl_cv_next_string_h+:} false; then : - $as_echo_n "(cached) " >&6 -else - - - - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include -_ACEOF - case "$host_os" in - aix*) gl_absname_cpp="$ac_cpp -C" ;; - *) gl_absname_cpp="$ac_cpp" ;; - esac - - case "$host_os" in - mingw*) - gl_dirsep_regex='[/\\]' - ;; - *) - gl_dirsep_regex='\/' - ;; - esac - gl_make_literal_regex_sed='s,[]$^\\.*/[],\\&,g' - gl_header_literal_regex=`echo 'string.h' \ - | sed -e "$gl_make_literal_regex_sed"` - gl_absolute_header_sed="/${gl_dirsep_regex}${gl_header_literal_regex}/"'{ - s/.*"\(.*'"${gl_dirsep_regex}${gl_header_literal_regex}"'\)".*/\1/ - s|^/[^/]|//&| - p - q - }' - - gl_cv_absolute_string_h=`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 | - sed -n "$gl_absolute_header_sed"` - - gl_header=$gl_cv_absolute_string_h - gl_cv_next_string_h='"'$gl_header'"' - - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_next_string_h" >&5 -$as_echo "$gl_cv_next_string_h" >&6; } - fi - NEXT_STRING_H=$gl_cv_next_string_h - - if test $gl_cv_have_include_next = yes || test $gl_cv_have_include_next = buggy; then - # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include_next' - gl_next_as_first_directive='<'string.h'>' - else - # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include' - gl_next_as_first_directive=$gl_cv_next_string_h - fi - NEXT_AS_FIRST_DIRECTIVE_STRING_H=$gl_next_as_first_directive - - - - - - - - - - - - - - - - - - - - - - - - if test $gl_cv_have_include_next = yes; then - gl_cv_next_strings_h='<'strings.h'>' - else - { $as_echo "$as_me:${as_lineno-$LINENO}: checking absolute name of " >&5 -$as_echo_n "checking absolute name of ... " >&6; } -if ${gl_cv_next_strings_h+:} false; then : - $as_echo_n "(cached) " >&6 -else - - if test $ac_cv_header_strings_h = yes; then - - - - - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include -_ACEOF - case "$host_os" in - aix*) gl_absname_cpp="$ac_cpp -C" ;; - *) gl_absname_cpp="$ac_cpp" ;; - esac - - case "$host_os" in - mingw*) - gl_dirsep_regex='[/\\]' - ;; - *) - gl_dirsep_regex='\/' - ;; - esac - gl_make_literal_regex_sed='s,[]$^\\.*/[],\\&,g' - gl_header_literal_regex=`echo 'strings.h' \ - | sed -e "$gl_make_literal_regex_sed"` - gl_absolute_header_sed="/${gl_dirsep_regex}${gl_header_literal_regex}/"'{ - s/.*"\(.*'"${gl_dirsep_regex}${gl_header_literal_regex}"'\)".*/\1/ - s|^/[^/]|//&| - p - q - }' - - gl_cv_absolute_strings_h=`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 | - sed -n "$gl_absolute_header_sed"` - - gl_header=$gl_cv_absolute_strings_h - gl_cv_next_strings_h='"'$gl_header'"' - else - gl_cv_next_strings_h='<'strings.h'>' - fi - - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_next_strings_h" >&5 -$as_echo "$gl_cv_next_strings_h" >&6; } - fi - NEXT_STRINGS_H=$gl_cv_next_strings_h - - if test $gl_cv_have_include_next = yes || test $gl_cv_have_include_next = buggy; then - # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include_next' - gl_next_as_first_directive='<'strings.h'>' - else - # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include' - gl_next_as_first_directive=$gl_cv_next_strings_h - fi - NEXT_AS_FIRST_DIRECTIVE_STRINGS_H=$gl_next_as_first_directive - - - - - if test $ac_cv_header_strings_h = yes; then - HAVE_STRINGS_H=1 - else - HAVE_STRINGS_H=0 - fi - - - - - - -ac_fn_c_check_decl "$LINENO" "strndup" "ac_cv_have_decl_strndup" "$ac_includes_default" -if test "x$ac_cv_have_decl_strndup" = xyes; then : - ac_have_decl=1 -else - ac_have_decl=0 -fi - -cat >>confdefs.h <<_ACEOF -#define HAVE_DECL_STRNDUP $ac_have_decl -_ACEOF - - - -ac_fn_c_check_decl "$LINENO" "strnlen" "ac_cv_have_decl_strnlen" "$ac_includes_default" -if test "x$ac_cv_have_decl_strnlen" = xyes; then : - ac_have_decl=1 -else - ac_have_decl=0 -fi - -cat >>confdefs.h <<_ACEOF -#define HAVE_DECL_STRNLEN $ac_have_decl -_ACEOF - - - - - - - - - - - -$as_echo "#define _USE_STD_STAT 1" >>confdefs.h - - - - - - - - - - - - if test $gl_cv_have_include_next = yes; then - gl_cv_next_sys_types_h='<'sys/types.h'>' - else - { $as_echo "$as_me:${as_lineno-$LINENO}: checking absolute name of " >&5 -$as_echo_n "checking absolute name of ... " >&6; } -if ${gl_cv_next_sys_types_h+:} false; then : - $as_echo_n "(cached) " >&6 -else - - - - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include -_ACEOF - case "$host_os" in - aix*) gl_absname_cpp="$ac_cpp -C" ;; - *) gl_absname_cpp="$ac_cpp" ;; - esac - - case "$host_os" in - mingw*) - gl_dirsep_regex='[/\\]' - ;; - *) - gl_dirsep_regex='\/' - ;; - esac - gl_make_literal_regex_sed='s,[]$^\\.*/[],\\&,g' - gl_header_literal_regex=`echo 'sys/types.h' \ - | sed -e "$gl_make_literal_regex_sed"` - gl_absolute_header_sed="/${gl_dirsep_regex}${gl_header_literal_regex}/"'{ - s/.*"\(.*'"${gl_dirsep_regex}${gl_header_literal_regex}"'\)".*/\1/ - s|^/[^/]|//&| - p - q - }' - - gl_cv_absolute_sys_types_h=`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 | - sed -n "$gl_absolute_header_sed"` - - gl_header=$gl_cv_absolute_sys_types_h - gl_cv_next_sys_types_h='"'$gl_header'"' - - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_next_sys_types_h" >&5 -$as_echo "$gl_cv_next_sys_types_h" >&6; } - fi - NEXT_SYS_TYPES_H=$gl_cv_next_sys_types_h - - if test $gl_cv_have_include_next = yes || test $gl_cv_have_include_next = buggy; then - # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include_next' - gl_next_as_first_directive='<'sys/types.h'>' - else - # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include' - gl_next_as_first_directive=$gl_cv_next_sys_types_h - fi - NEXT_AS_FIRST_DIRECTIVE_SYS_TYPES_H=$gl_next_as_first_directive - - - - - - - - - - - - - WINDOWS_STAT_INODES=0 - - - - - - - GNULIB_CTIME=0; - GNULIB_MKTIME=0; - GNULIB_LOCALTIME=0; - GNULIB_NANOSLEEP=0; - GNULIB_STRFTIME=0; - GNULIB_STRPTIME=0; - GNULIB_TIMEGM=0; - GNULIB_TIME_R=0; - GNULIB_TIME_RZ=0; - GNULIB_TZSET=0; - HAVE_DECL_LOCALTIME_R=1; - HAVE_NANOSLEEP=1; - HAVE_STRPTIME=1; - HAVE_TIMEGM=1; - HAVE_TZSET=1; - HAVE_TIMEZONE_T=0; - REPLACE_CTIME=GNULIB_PORTCHECK; - REPLACE_LOCALTIME_R=GNULIB_PORTCHECK; - REPLACE_MKTIME=GNULIB_PORTCHECK; - REPLACE_NANOSLEEP=GNULIB_PORTCHECK; - REPLACE_STRFTIME=GNULIB_PORTCHECK; - REPLACE_TIMEGM=GNULIB_PORTCHECK; - REPLACE_TZSET=GNULIB_PORTCHECK; - - : ${GNULIB_GETTIMEOFDAY=0}; - REPLACE_GMTIME=0; - REPLACE_LOCALTIME=0; - - - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for struct timespec in " >&5 -$as_echo_n "checking for struct timespec in ... " >&6; } -if ${gl_cv_sys_struct_timespec_in_time_h+:} false; then : - $as_echo_n "(cached) " >&6 -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include - -int -main (void) -{ -static struct timespec x; x.tv_sec = x.tv_nsec; - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - gl_cv_sys_struct_timespec_in_time_h=yes -else - gl_cv_sys_struct_timespec_in_time_h=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_sys_struct_timespec_in_time_h" >&5 -$as_echo "$gl_cv_sys_struct_timespec_in_time_h" >&6; } - - TIME_H_DEFINES_STRUCT_TIMESPEC=0 - SYS_TIME_H_DEFINES_STRUCT_TIMESPEC=0 - PTHREAD_H_DEFINES_STRUCT_TIMESPEC=0 - UNISTD_H_DEFINES_STRUCT_TIMESPEC=0 - if test $gl_cv_sys_struct_timespec_in_time_h = yes; then - TIME_H_DEFINES_STRUCT_TIMESPEC=1 - else - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for struct timespec in " >&5 -$as_echo_n "checking for struct timespec in ... " >&6; } -if ${gl_cv_sys_struct_timespec_in_sys_time_h+:} false; then : - $as_echo_n "(cached) " >&6 -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include - -int -main (void) -{ -static struct timespec x; x.tv_sec = x.tv_nsec; - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - gl_cv_sys_struct_timespec_in_sys_time_h=yes -else - gl_cv_sys_struct_timespec_in_sys_time_h=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_sys_struct_timespec_in_sys_time_h" >&5 -$as_echo "$gl_cv_sys_struct_timespec_in_sys_time_h" >&6; } - if test $gl_cv_sys_struct_timespec_in_sys_time_h = yes; then - SYS_TIME_H_DEFINES_STRUCT_TIMESPEC=1 - else - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for struct timespec in " >&5 -$as_echo_n "checking for struct timespec in ... " >&6; } -if ${gl_cv_sys_struct_timespec_in_pthread_h+:} false; then : - $as_echo_n "(cached) " >&6 -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include - -int -main (void) -{ -static struct timespec x; x.tv_sec = x.tv_nsec; - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - gl_cv_sys_struct_timespec_in_pthread_h=yes -else - gl_cv_sys_struct_timespec_in_pthread_h=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_sys_struct_timespec_in_pthread_h" >&5 -$as_echo "$gl_cv_sys_struct_timespec_in_pthread_h" >&6; } - if test $gl_cv_sys_struct_timespec_in_pthread_h = yes; then - PTHREAD_H_DEFINES_STRUCT_TIMESPEC=1 - else - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for struct timespec in " >&5 -$as_echo_n "checking for struct timespec in ... " >&6; } -if ${gl_cv_sys_struct_timespec_in_unistd_h+:} false; then : - $as_echo_n "(cached) " >&6 -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include - -int -main (void) -{ -static struct timespec x; x.tv_sec = x.tv_nsec; - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - gl_cv_sys_struct_timespec_in_unistd_h=yes -else - gl_cv_sys_struct_timespec_in_unistd_h=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_sys_struct_timespec_in_unistd_h" >&5 -$as_echo "$gl_cv_sys_struct_timespec_in_unistd_h" >&6; } - if test $gl_cv_sys_struct_timespec_in_unistd_h = yes; then - UNISTD_H_DEFINES_STRUCT_TIMESPEC=1 - fi - fi - fi - fi - - - - - - - - - - - - - - - - - if test $gl_cv_have_include_next = yes; then - gl_cv_next_time_h='<'time.h'>' - else - { $as_echo "$as_me:${as_lineno-$LINENO}: checking absolute name of " >&5 -$as_echo_n "checking absolute name of ... " >&6; } -if ${gl_cv_next_time_h+:} false; then : - $as_echo_n "(cached) " >&6 -else - - - - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include -_ACEOF - case "$host_os" in - aix*) gl_absname_cpp="$ac_cpp -C" ;; - *) gl_absname_cpp="$ac_cpp" ;; - esac - - case "$host_os" in - mingw*) - gl_dirsep_regex='[/\\]' - ;; - *) - gl_dirsep_regex='\/' - ;; - esac - gl_make_literal_regex_sed='s,[]$^\\.*/[],\\&,g' - gl_header_literal_regex=`echo 'time.h' \ - | sed -e "$gl_make_literal_regex_sed"` - gl_absolute_header_sed="/${gl_dirsep_regex}${gl_header_literal_regex}/"'{ - s/.*"\(.*'"${gl_dirsep_regex}${gl_header_literal_regex}"'\)".*/\1/ - s|^/[^/]|//&| - p - q - }' - - gl_cv_absolute_time_h=`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 | - sed -n "$gl_absolute_header_sed"` - - gl_header=$gl_cv_absolute_time_h - gl_cv_next_time_h='"'$gl_header'"' - - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_next_time_h" >&5 -$as_echo "$gl_cv_next_time_h" >&6; } - fi - NEXT_TIME_H=$gl_cv_next_time_h - - if test $gl_cv_have_include_next = yes || test $gl_cv_have_include_next = buggy; then - # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include_next' - gl_next_as_first_directive='<'time.h'>' - else - # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include' - gl_next_as_first_directive=$gl_cv_next_time_h - fi - NEXT_AS_FIRST_DIRECTIVE_TIME_H=$gl_next_as_first_directive - - - - - - - - - - - - - - -gl_libunistring_sed_extract_major='/^[0-9]/{s/^\([0-9]*\).*/\1/p;q;} -i\ -0 -q -' -gl_libunistring_sed_extract_minor='/^[0-9][0-9]*[.][0-9]/{s/^[0-9]*[.]\([0-9]*\).*/\1/p;q;} -i\ -0 -q -' -gl_libunistring_sed_extract_subminor='/^[0-9][0-9]*[.][0-9][0-9]*[.][0-9]/{s/^[0-9]*[.][0-9]*[.]\([0-9]*\).*/\1/p;q;} -i\ -0 -q -' - - - if test "$HAVE_LIBUNISTRING" = yes; then - LIBUNISTRING_VERSION_MAJOR=`echo "$LIBUNISTRING_VERSION" | sed -n -e "$gl_libunistring_sed_extract_major"` - LIBUNISTRING_VERSION_MINOR=`echo "$LIBUNISTRING_VERSION" | sed -n -e "$gl_libunistring_sed_extract_minor"` - LIBUNISTRING_VERSION_SUBMINOR=`echo "$LIBUNISTRING_VERSION" | sed -n -e "$gl_libunistring_sed_extract_subminor"` - fi - - - - - - if test $ac_cv_header_features_h = yes; then - HAVE_FEATURES_H=1 - else - HAVE_FEATURES_H=0 - fi - - - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for inttypes.h" >&5 -$as_echo_n "checking for inttypes.h... " >&6; } -if ${gl_cv_header_inttypes_h+:} false; then : - $as_echo_n "(cached) " >&6 -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -#include -#include - -int -main (void) -{ -uintmax_t i = (uintmax_t) -1; return !i; - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - gl_cv_header_inttypes_h=yes -else - gl_cv_header_inttypes_h=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_header_inttypes_h" >&5 -$as_echo "$gl_cv_header_inttypes_h" >&6; } - if test $gl_cv_header_inttypes_h = yes; then - -cat >>confdefs.h <<_ACEOF -#define HAVE_INTTYPES_H_WITH_UINTMAX 1 -_ACEOF - - fi - - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdint.h" >&5 -$as_echo_n "checking for stdint.h... " >&6; } -if ${gl_cv_header_stdint_h+:} false; then : - $as_echo_n "(cached) " >&6 -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include - #include -int -main (void) -{ -uintmax_t i = (uintmax_t) -1; return !i; - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - gl_cv_header_stdint_h=yes -else - gl_cv_header_stdint_h=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_header_stdint_h" >&5 -$as_echo "$gl_cv_header_stdint_h" >&6; } - if test $gl_cv_header_stdint_h = yes; then - -cat >>confdefs.h <<_ACEOF -#define HAVE_STDINT_H_WITH_UINTMAX 1 -_ACEOF - - fi - - - - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for intmax_t" >&5 -$as_echo_n "checking for intmax_t... " >&6; } -if ${gt_cv_c_intmax_t+:} false; then : - $as_echo_n "(cached) " >&6 -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -#include -#include -#if HAVE_STDINT_H_WITH_UINTMAX -#include -#endif -#if HAVE_INTTYPES_H_WITH_UINTMAX -#include -#endif - -int -main (void) -{ -intmax_t x = -1; return !x; - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - gt_cv_c_intmax_t=yes -else - gt_cv_c_intmax_t=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gt_cv_c_intmax_t" >&5 -$as_echo "$gt_cv_c_intmax_t" >&6; } - if test $gt_cv_c_intmax_t = yes; then - -$as_echo "#define HAVE_INTMAX_T 1" >>confdefs.h - - else - - test $ac_cv_type_long_long_int = yes \ - && ac_type='long long' \ - || ac_type='long' - -cat >>confdefs.h <<_ACEOF -#define intmax_t $ac_type -_ACEOF - - fi - - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking where to find the exponent in a 'double'" >&5 -$as_echo_n "checking where to find the exponent in a 'double'... " >&6; } -if ${gl_cv_cc_double_expbit0+:} false; then : - $as_echo_n "(cached) " >&6 -else - - if test "$cross_compiling" = yes; then : - - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -#if defined arm || defined __arm || defined __arm__ - mixed_endianness -#endif - -_ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "mixed_endianness" >/dev/null 2>&1; then : - gl_cv_cc_double_expbit0="unknown" -else - - : -if ${ac_cv_c_bigendian+:} false; then : - $as_echo_n "(cached) " >&6 -else - ac_cv_c_bigendian=unknown - # See if we're dealing with a universal compiler. - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#ifndef __APPLE_CC__ - not a universal capable compiler - #endif - typedef int dummy; - -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - - # Check for potential -arch flags. It is not universal unless - # there are at least two -arch flags with different values. - ac_arch= - ac_prev= - for ac_word in $CC $CFLAGS $CPPFLAGS $LDFLAGS; do - if test -n "$ac_prev"; then - case $ac_word in - i?86 | x86_64 | ppc | ppc64) - if test -z "$ac_arch" || test "$ac_arch" = "$ac_word"; then - ac_arch=$ac_word - else - ac_cv_c_bigendian=universal - break - fi - ;; - esac - ac_prev= - elif test "x$ac_word" = "x-arch"; then - ac_prev=arch - fi - done -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - if test $ac_cv_c_bigendian = unknown; then - # See if sys/param.h defines the BYTE_ORDER macro. - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include - #include - -int -main (void) -{ -#if ! (defined BYTE_ORDER && defined BIG_ENDIAN \ - && defined LITTLE_ENDIAN && BYTE_ORDER && BIG_ENDIAN \ - && LITTLE_ENDIAN) - bogus endian macros - #endif - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - # It does; now see whether it defined to BIG_ENDIAN or not. - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include - #include - -int -main (void) -{ -#if BYTE_ORDER != BIG_ENDIAN - not big endian - #endif - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - ac_cv_c_bigendian=yes -else - ac_cv_c_bigendian=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - fi - if test $ac_cv_c_bigendian = unknown; then - # See if defines _LITTLE_ENDIAN or _BIG_ENDIAN (e.g., Solaris). - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include - -int -main (void) -{ -#if ! (defined _LITTLE_ENDIAN || defined _BIG_ENDIAN) - bogus endian macros - #endif - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - # It does; now see whether it defined to _BIG_ENDIAN or not. - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include - -int -main (void) -{ -#ifndef _BIG_ENDIAN - not big endian - #endif - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - ac_cv_c_bigendian=yes -else - ac_cv_c_bigendian=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - fi - if test $ac_cv_c_bigendian = unknown; then - # Compile a test program. - if test "$cross_compiling" = yes; then : - # Try to guess by grepping values from an object file. - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -short int ascii_mm[] = - { 0x4249, 0x4765, 0x6E44, 0x6961, 0x6E53, 0x7953, 0 }; - short int ascii_ii[] = - { 0x694C, 0x5454, 0x656C, 0x6E45, 0x6944, 0x6E61, 0 }; - int use_ascii (int i) { - return ascii_mm[i] + ascii_ii[i]; - } - short int ebcdic_ii[] = - { 0x89D3, 0xE3E3, 0x8593, 0x95C5, 0x89C4, 0x9581, 0 }; - short int ebcdic_mm[] = - { 0xC2C9, 0xC785, 0x95C4, 0x8981, 0x95E2, 0xA8E2, 0 }; - int use_ebcdic (int i) { - return ebcdic_mm[i] + ebcdic_ii[i]; - } - extern int foo; - -int -main (void) -{ -return use_ascii (foo) == use_ebcdic (foo); - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - if grep BIGenDianSyS conftest.$ac_objext >/dev/null; then - ac_cv_c_bigendian=yes - fi - if grep LiTTleEnDian conftest.$ac_objext >/dev/null ; then - if test "$ac_cv_c_bigendian" = unknown; then - ac_cv_c_bigendian=no - else - # finding both strings is unlikely to happen, but who knows? - ac_cv_c_bigendian=unknown - fi - fi -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -$ac_includes_default -int -main (void) -{ - - /* Are we little or big endian? From Harbison&Steele. */ - union - { - long int l; - char c[sizeof (long int)]; - } u; - u.l = 1; - return u.c[sizeof (long int) - 1] == 1; - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_run "$LINENO"; then : - ac_cv_c_bigendian=no -else - ac_cv_c_bigendian=yes -fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext -fi - - fi -fi -: - case $ac_cv_c_bigendian in #( - yes) - gl_cv_cc_double_expbit0="word 0 bit 20";; #( - no) - gl_cv_cc_double_expbit0="word 1 bit 20" ;; #( - universal) - -$as_echo "#define AC_APPLE_UNIVERSAL_BUILD 1" >>confdefs.h - - ;; #( - *) - gl_cv_cc_double_expbit0="unknown" ;; - esac - - -fi -rm -f conftest* - - -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -#include -#include -#include -#include -#define NWORDS \ - ((sizeof (double) + sizeof (unsigned int) - 1) / sizeof (unsigned int)) -typedef union { double value; unsigned int word[NWORDS]; } memory_double; -static unsigned int ored_words[NWORDS]; -static unsigned int anded_words[NWORDS]; -static void add_to_ored_words (double x) -{ - memory_double m; - size_t i; - /* Clear it first, in case sizeof (double) < sizeof (memory_double). */ - memset (&m, 0, sizeof (memory_double)); - m.value = x; - for (i = 0; i < NWORDS; i++) - { - ored_words[i] |= m.word[i]; - anded_words[i] &= m.word[i]; - } -} -int main () -{ - size_t j; - FILE *fp = fopen ("conftest.out", "w"); - if (fp == NULL) - return 1; - for (j = 0; j < NWORDS; j++) - anded_words[j] = ~ (unsigned int) 0; - add_to_ored_words (0.25); - add_to_ored_words (0.5); - add_to_ored_words (1.0); - add_to_ored_words (2.0); - add_to_ored_words (4.0); - /* Remove bits that are common (e.g. if representation of the first mantissa - bit is explicit). */ - for (j = 0; j < NWORDS; j++) - ored_words[j] &= ~anded_words[j]; - /* Now find the nonzero word. */ - for (j = 0; j < NWORDS; j++) - if (ored_words[j] != 0) - break; - if (j < NWORDS) - { - size_t i; - for (i = j + 1; i < NWORDS; i++) - if (ored_words[i] != 0) - { - fprintf (fp, "unknown"); - return (fclose (fp) != 0); - } - for (i = 0; ; i++) - if ((ored_words[j] >> i) & 1) - { - fprintf (fp, "word %d bit %d", (int) j, (int) i); - return (fclose (fp) != 0); - } - } - fprintf (fp, "unknown"); - return (fclose (fp) != 0); -} - -_ACEOF -if ac_fn_c_try_run "$LINENO"; then : - gl_cv_cc_double_expbit0=`cat conftest.out` -else - gl_cv_cc_double_expbit0="unknown" -fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext -fi - - rm -f conftest.out - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_cc_double_expbit0" >&5 -$as_echo "$gl_cv_cc_double_expbit0" >&6; } - case "$gl_cv_cc_double_expbit0" in - word*bit*) - word=`echo "$gl_cv_cc_double_expbit0" | sed -e 's/word //' -e 's/ bit.*//'` - bit=`echo "$gl_cv_cc_double_expbit0" | sed -e 's/word.*bit //'` - -cat >>confdefs.h <<_ACEOF -#define DBL_EXPBIT0_WORD $word -_ACEOF - - -cat >>confdefs.h <<_ACEOF -#define DBL_EXPBIT0_BIT $bit -_ACEOF - - ;; - esac - - - - - - - - - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether snprintf returns a byte count as in C99" >&5 -$as_echo_n "checking whether snprintf returns a byte count as in C99... " >&6; } -if ${gl_cv_func_snprintf_retval_c99+:} false; then : - $as_echo_n "(cached) " >&6 -else - - if test "$cross_compiling" = yes; then : - case "$host_os" in - # Guess yes on glibc systems. - *-gnu* | gnu*) gl_cv_func_snprintf_retval_c99="guessing yes";; - # Guess yes on FreeBSD >= 5. - freebsd[1-4].*) gl_cv_func_snprintf_retval_c99="guessing no";; - freebsd* | kfreebsd*) gl_cv_func_snprintf_retval_c99="guessing yes";; - # Guess yes on Mac OS X >= 10.3. - darwin[1-6].*) gl_cv_func_snprintf_retval_c99="guessing no";; - darwin*) gl_cv_func_snprintf_retval_c99="guessing yes";; - # Guess yes on OpenBSD >= 3.9. - openbsd[1-2].* | openbsd3.[0-8] | openbsd3.[0-8].*) - gl_cv_func_snprintf_retval_c99="guessing no";; - openbsd*) gl_cv_func_snprintf_retval_c99="guessing yes";; - # Guess yes on Solaris >= 2.10. - solaris2.[1-9][0-9]*) gl_cv_func_printf_sizes_c99="guessing yes";; - solaris*) gl_cv_func_printf_sizes_c99="guessing no";; - # Guess yes on AIX >= 4. - aix[1-3]*) gl_cv_func_snprintf_retval_c99="guessing no";; - aix*) gl_cv_func_snprintf_retval_c99="guessing yes";; - # Guess yes on NetBSD >= 3. - netbsd[1-2]* | netbsdelf[1-2]* | netbsdaout[1-2]* | netbsdcoff[1-2]*) - gl_cv_func_snprintf_retval_c99="guessing no";; - netbsd*) gl_cv_func_snprintf_retval_c99="guessing yes";; - # Guess yes on BeOS. - beos*) gl_cv_func_snprintf_retval_c99="guessing yes";; - # Guess yes on MSVC, no on mingw. - mingw*) cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -#ifdef _MSC_VER - Known -#endif - -_ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "Known" >/dev/null 2>&1; then : - gl_cv_func_snprintf_retval_c99="guessing yes" -else - gl_cv_func_snprintf_retval_c99="guessing no" -fi -rm -f conftest* - - ;; - # If we don't know, assume the worst. - *) gl_cv_func_snprintf_retval_c99="guessing no";; - esac - -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -#include -#include -#if HAVE_SNPRINTF -# define my_snprintf snprintf -#else -# include -static int my_snprintf (char *buf, int size, const char *format, ...) -{ - va_list args; - int ret; - va_start (args, format); - ret = vsnprintf (buf, size, format, args); - va_end (args); - return ret; -} -#endif -static char buf[100]; -int main () -{ - strcpy (buf, "ABCDEF"); - if (my_snprintf (buf, 3, "%d %d", 4567, 89) != 7) - return 1; - if (my_snprintf (buf, 0, "%d %d", 4567, 89) != 7) - return 2; - if (my_snprintf (NULL, 0, "%d %d", 4567, 89) != 7) - return 3; - return 0; -} -_ACEOF -if ac_fn_c_try_run "$LINENO"; then : - gl_cv_func_snprintf_retval_c99=yes -else - gl_cv_func_snprintf_retval_c99=no -fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext -fi - - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_snprintf_retval_c99" >&5 -$as_echo "$gl_cv_func_snprintf_retval_c99" >&6; } - - - - - - - for ac_func in snprintf strnlen wcslen wcsnlen mbrtowc wcrtomb -do : - as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` -ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var" -if eval test \"x\$"$as_ac_var"\" = x"yes"; then : - cat >>confdefs.h <<_ACEOF -#define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1 -_ACEOF - -fi -done - - ac_fn_c_check_decl "$LINENO" "_snprintf" "ac_cv_have_decl__snprintf" "#include -" -if test "x$ac_cv_have_decl__snprintf" = xyes; then : - ac_have_decl=1 -else - ac_have_decl=0 -fi - -cat >>confdefs.h <<_ACEOF -#define HAVE_DECL__SNPRINTF $ac_have_decl -_ACEOF - - - - case "$gl_cv_func_snprintf_retval_c99" in - *yes) - -$as_echo "#define HAVE_SNPRINTF_RETVAL_C99 1" >>confdefs.h - - ;; - esac - -ac_fn_c_check_decl "$LINENO" "vsnprintf" "ac_cv_have_decl_vsnprintf" "$ac_includes_default" -if test "x$ac_cv_have_decl_vsnprintf" = xyes; then : - ac_have_decl=1 -else - ac_have_decl=0 -fi - -cat >>confdefs.h <<_ACEOF -#define HAVE_DECL_VSNPRINTF $ac_have_decl -_ACEOF - - - - - - if test $ac_cv_header_crtdefs_h = yes; then - HAVE_CRTDEFS_H=1 - else - HAVE_CRTDEFS_H=0 - fi - - - - - - GNULIB_ISWBLANK=0; - GNULIB_WCTYPE=0; - GNULIB_ISWCTYPE=0; - GNULIB_WCTRANS=0; - GNULIB_TOWCTRANS=0; - HAVE_ISWBLANK=1; - HAVE_WCTYPE_T=1; - HAVE_WCTRANS_T=1; - REPLACE_ISWBLANK=0; - - - - - - - if false; then - GL_COND_LIBTOOL_TRUE= - GL_COND_LIBTOOL_FALSE='#' -else - GL_COND_LIBTOOL_TRUE='#' - GL_COND_LIBTOOL_FALSE= -fi - - gl_cond_libtool=false - gl_libdeps= - gl_ltlibdeps= - gl_m4_base='m4' - - - - - - - - - - gl_source_base='grub-core/lib/gnulib' - - - if test $ac_cv_func_alloca_works = no; then - : - fi - - # Define an additional variable used in the Makefile substitution. - if test $ac_cv_working_alloca_h = yes; then - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for alloca as a compiler built-in" >&5 -$as_echo_n "checking for alloca as a compiler built-in... " >&6; } -if ${gl_cv_rpl_alloca+:} false; then : - $as_echo_n "(cached) " >&6 -else - - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -#if defined __GNUC__ || defined _AIX || defined _MSC_VER - Need own alloca -#endif - -_ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "Need own alloca" >/dev/null 2>&1; then : - gl_cv_rpl_alloca=yes -else - gl_cv_rpl_alloca=no -fi -rm -f conftest* - - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_rpl_alloca" >&5 -$as_echo "$gl_cv_rpl_alloca" >&6; } - if test $gl_cv_rpl_alloca = yes; then - -$as_echo "#define HAVE_ALLOCA 1" >>confdefs.h - - ALLOCA_H=alloca.h - else - ALLOCA_H= - fi - else - ALLOCA_H=alloca.h - fi - - if test -n "$ALLOCA_H"; then - GL_GENERATE_ALLOCA_H_TRUE= - GL_GENERATE_ALLOCA_H_FALSE='#' -else - GL_GENERATE_ALLOCA_H_TRUE='#' - GL_GENERATE_ALLOCA_H_FALSE= -fi - - - - - - - - ac_fn_c_check_decl "$LINENO" "program_invocation_name" "ac_cv_have_decl_program_invocation_name" "#include -" -if test "x$ac_cv_have_decl_program_invocation_name" = xyes; then : - ac_have_decl=1 -else - ac_have_decl=0 -fi - -cat >>confdefs.h <<_ACEOF -#define HAVE_DECL_PROGRAM_INVOCATION_NAME $ac_have_decl -_ACEOF -if test $ac_have_decl = 1; then : - -else - -$as_echo "#define GNULIB_PROGRAM_INVOCATION_NAME 1" >>confdefs.h - -fi - - ac_fn_c_check_decl "$LINENO" "program_invocation_short_name" "ac_cv_have_decl_program_invocation_short_name" "#include -" -if test "x$ac_cv_have_decl_program_invocation_short_name" = xyes; then : - ac_have_decl=1 -else - ac_have_decl=0 -fi - -cat >>confdefs.h <<_ACEOF -#define HAVE_DECL_PROGRAM_INVOCATION_SHORT_NAME $ac_have_decl -_ACEOF -if test $ac_have_decl = 1; then : - -else - -$as_echo "#define GNULIB_PROGRAM_INVOCATION_SHORT_NAME 1" >>confdefs.h - -fi - - - # Check if program_invocation_name and program_invocation_short_name - # are defined elsewhere. It is improbable that only one of them will - # be defined and other not, I prefer to stay on the safe side and to - # test each one separately. - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether program_invocation_name is defined" >&5 -$as_echo_n "checking whether program_invocation_name is defined... " >&6; } - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include -int -main (void) -{ -program_invocation_name = "test"; - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - -$as_echo "#define HAVE_PROGRAM_INVOCATION_NAME 1" >>confdefs.h - - { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -$as_echo "yes" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether program_invocation_short_name is defined" >&5 -$as_echo_n "checking whether program_invocation_short_name is defined... " >&6; } - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include -int -main (void) -{ -program_invocation_short_name = "test"; - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - -$as_echo "#define HAVE_PROGRAM_INVOCATION_SHORT_NAME 1" >>confdefs.h - - { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -$as_echo "yes" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext - - - - - - - - - - - - - - - - - - - - - XGETTEXT_EXTRA_OPTIONS="$XGETTEXT_EXTRA_OPTIONS --flag=argp_error:2:c-format" - - - - XGETTEXT_EXTRA_OPTIONS="$XGETTEXT_EXTRA_OPTIONS --flag=argp_failure:4:c-format" - - - - - - - - - - gl_LIBOBJS="$gl_LIBOBJS openat-proc.$ac_objext" - - - - - - - - if test $ac_cv_func_btowc = no; then - HAVE_BTOWC=0 - else - - - - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether btowc(0) is correct" >&5 -$as_echo_n "checking whether btowc(0) is correct... " >&6; } -if ${gl_cv_func_btowc_nul+:} false; then : - $as_echo_n "(cached) " >&6 -else - - if test "$cross_compiling" = yes; then : - - case "$host_os" in - # Guess no on Cygwin. - cygwin*) gl_cv_func_btowc_nul="guessing no" ;; - # Guess yes on native Windows. - mingw*) gl_cv_func_btowc_nul="guessing yes" ;; - # Guess yes otherwise. - *) gl_cv_func_btowc_nul="guessing yes" ;; - esac - -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -#include -/* Tru64 with Desktop Toolkit C has a bug: must be included before - . - BSD/OS 4.0.1 has a bug: , and must be - included before . */ -#include -#include -#include -#include -int main () -{ - if (btowc ('\0') != 0) - return 1; - return 0; -} -_ACEOF -if ac_fn_c_try_run "$LINENO"; then : - gl_cv_func_btowc_nul=yes -else - gl_cv_func_btowc_nul=no -fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext -fi - - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_btowc_nul" >&5 -$as_echo "$gl_cv_func_btowc_nul" >&6; } - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether btowc(EOF) is correct" >&5 -$as_echo_n "checking whether btowc(EOF) is correct... " >&6; } -if ${gl_cv_func_btowc_eof+:} false; then : - $as_echo_n "(cached) " >&6 -else - - case "$host_os" in - # Guess no on IRIX. - irix*) gl_cv_func_btowc_eof="guessing no" ;; - # Guess yes on native Windows. - mingw*) gl_cv_func_btowc_eof="guessing yes" ;; - # Guess yes otherwise. - *) gl_cv_func_btowc_eof="guessing yes" ;; - esac - if test $LOCALE_FR != none; then - if test "$cross_compiling" = yes; then : - : -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -#include -#include -/* Tru64 with Desktop Toolkit C has a bug: must be included before - . - BSD/OS 4.0.1 has a bug: , and must be - included before . */ -#include -#include -#include -#include -int main () -{ - if (setlocale (LC_ALL, "$LOCALE_FR") != NULL) - { - if (btowc (EOF) != WEOF) - return 1; - } - return 0; -} -_ACEOF -if ac_fn_c_try_run "$LINENO"; then : - gl_cv_func_btowc_eof=yes -else - gl_cv_func_btowc_eof=no -fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext -fi - - fi - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_btowc_eof" >&5 -$as_echo "$gl_cv_func_btowc_eof" >&6; } - - case "$gl_cv_func_btowc_nul" in - *yes) ;; - *) REPLACE_BTOWC=1 ;; - esac - case "$gl_cv_func_btowc_eof" in - *yes) ;; - *) REPLACE_BTOWC=1 ;; - esac - fi - - if test $HAVE_BTOWC = 0 || test $REPLACE_BTOWC = 1; then - - - - - - - - - gl_LIBOBJS="$gl_LIBOBJS btowc.$ac_objext" - - - : - - fi - - - - - - GNULIB_BTOWC=1 - - - - - -$as_echo "#define GNULIB_TEST_BTOWC 1" >>confdefs.h - - - - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for __builtin_expect" >&5 -$as_echo_n "checking for __builtin_expect... " >&6; } -if ${gl_cv___builtin_expect+:} false; then : - $as_echo_n "(cached) " >&6 -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - - int - main (int argc, char **argv) - { - argc = __builtin_expect (argc, 100); - return argv[argc != 100][0]; - } -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - gl_cv___builtin_expect=yes -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - - #include - int - main (int argc, char **argv) - { - argc = __builtin_expect (argc, 100); - return argv[argc != 100][0]; - } -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - gl_cv___builtin_expect="in " -else - gl_cv___builtin_expect=no -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv___builtin_expect" >&5 -$as_echo "$gl_cv___builtin_expect" >&6; } - if test "$gl_cv___builtin_expect" = yes; then - $as_echo "#define HAVE___BUILTIN_EXPECT 1" >>confdefs.h - - elif test "$gl_cv___builtin_expect" = "in "; then - $as_echo "#define HAVE___BUILTIN_EXPECT 2" >>confdefs.h - - fi - - - - - - - - GNULIB_CHDIR=1 - - - - - -$as_echo "#define GNULIB_TEST_CHDIR 1" >>confdefs.h - - - - - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether this system has an arbitrary file name length limit" >&5 -$as_echo_n "checking whether this system has an arbitrary file name length limit... " >&6; } -if ${gl_cv_have_arbitrary_file_name_length_limit+:} false; then : - $as_echo_n "(cached) " >&6 -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -/* Arrange to define PATH_MAX, like "pathmax.h" does. */ -#if HAVE_UNISTD_H -# include -#endif -#include -#if defined HAVE_SYS_PARAM_H && !defined PATH_MAX && !defined MAXPATHLEN -# include -#endif -#if !defined PATH_MAX && defined MAXPATHLEN -# define PATH_MAX MAXPATHLEN -#endif -#ifdef __hpux -# undef PATH_MAX -# define PATH_MAX 1024 -#endif -#if defined _WIN32 && ! defined __CYGWIN__ -# undef PATH_MAX -# define PATH_MAX 260 -#endif - -#ifdef PATH_MAX -have_arbitrary_file_name_length_limit -#endif -_ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "have_arbitrary_file_name_length_limit" >/dev/null 2>&1; then : - gl_cv_have_arbitrary_file_name_length_limit=yes -else - gl_cv_have_arbitrary_file_name_length_limit=no -fi -rm -f conftest* - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_have_arbitrary_file_name_length_limit" >&5 -$as_echo "$gl_cv_have_arbitrary_file_name_length_limit" >&6; } - - if test $gl_cv_have_arbitrary_file_name_length_limit = yes; then - - - - - - - - - gl_LIBOBJS="$gl_LIBOBJS chdir-long.$ac_objext" - - : - fi - - -$as_echo "#define GNULIB_TEST_CLOEXEC 1" >>confdefs.h - - - - - - - if test $HAVE_MSVC_INVALID_PARAMETER_HANDLER = 1; then - REPLACE_CLOSE=1 - fi - - - - - - - if test $ac_cv_header_sys_socket_h != yes; then - for ac_header in winsock2.h -do : - ac_fn_c_check_header_mongrel "$LINENO" "winsock2.h" "ac_cv_header_winsock2_h" "$ac_includes_default" -if test "x$ac_cv_header_winsock2_h" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_WINSOCK2_H 1 -_ACEOF - -fi - -done - - fi - if test "$ac_cv_header_winsock2_h" = yes; then - HAVE_WINSOCK2_H=1 - UNISTD_H_HAVE_WINSOCK2_H=1 - SYS_IOCTL_H_HAVE_WINSOCK2_H=1 - else - HAVE_WINSOCK2_H=0 - fi - - - if test $UNISTD_H_HAVE_WINSOCK2_H = 1; then - REPLACE_CLOSE=1 - fi - - - if test $REPLACE_CLOSE = 0; then - - - - if test $ac_cv_func_fchdir = no; then - HAVE_FCHDIR=0 - fi - - if test $HAVE_FCHDIR = 0; then - REPLACE_CLOSE=1 - fi - fi - - - if test $REPLACE_CLOSE = 1; then - - - - - - - - - gl_LIBOBJS="$gl_LIBOBJS close.$ac_objext" - - fi - - - - - - GNULIB_CLOSE=1 - - - - - -$as_echo "#define GNULIB_TEST_CLOSE 1" >>confdefs.h - - - - - - - - - - - - - - - - if test $gl_cv_have_include_next = yes; then - gl_cv_next_dirent_h='<'dirent.h'>' - else - { $as_echo "$as_me:${as_lineno-$LINENO}: checking absolute name of " >&5 -$as_echo_n "checking absolute name of ... " >&6; } -if ${gl_cv_next_dirent_h+:} false; then : - $as_echo_n "(cached) " >&6 -else - - if test $ac_cv_header_dirent_h = yes; then - - - - - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include -_ACEOF - case "$host_os" in - aix*) gl_absname_cpp="$ac_cpp -C" ;; - *) gl_absname_cpp="$ac_cpp" ;; - esac - - case "$host_os" in - mingw*) - gl_dirsep_regex='[/\\]' - ;; - *) - gl_dirsep_regex='\/' - ;; - esac - gl_make_literal_regex_sed='s,[]$^\\.*/[],\\&,g' - gl_header_literal_regex=`echo 'dirent.h' \ - | sed -e "$gl_make_literal_regex_sed"` - gl_absolute_header_sed="/${gl_dirsep_regex}${gl_header_literal_regex}/"'{ - s/.*"\(.*'"${gl_dirsep_regex}${gl_header_literal_regex}"'\)".*/\1/ - s|^/[^/]|//&| - p - q - }' - - gl_cv_absolute_dirent_h=`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 | - sed -n "$gl_absolute_header_sed"` - - gl_header=$gl_cv_absolute_dirent_h - gl_cv_next_dirent_h='"'$gl_header'"' - else - gl_cv_next_dirent_h='<'dirent.h'>' - fi - - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_next_dirent_h" >&5 -$as_echo "$gl_cv_next_dirent_h" >&6; } - fi - NEXT_DIRENT_H=$gl_cv_next_dirent_h - - if test $gl_cv_have_include_next = yes || test $gl_cv_have_include_next = buggy; then - # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include_next' - gl_next_as_first_directive='<'dirent.h'>' - else - # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include' - gl_next_as_first_directive=$gl_cv_next_dirent_h - fi - NEXT_AS_FIRST_DIRECTIVE_DIRENT_H=$gl_next_as_first_directive - - - - - if test $ac_cv_header_dirent_h = yes; then - HAVE_DIRENT_H=1 - else - HAVE_DIRENT_H=0 - fi - - - - - - - - - - - - for ac_func in dirfd -do : - ac_fn_c_check_func "$LINENO" "dirfd" "ac_cv_func_dirfd" -if test "x$ac_cv_func_dirfd" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_DIRFD 1 -_ACEOF - -fi -done - - ac_fn_c_check_decl "$LINENO" "dirfd" "ac_cv_have_decl_dirfd" "#include - #include -" -if test "x$ac_cv_have_decl_dirfd" = xyes; then : - ac_have_decl=1 -else - ac_have_decl=0 -fi - -cat >>confdefs.h <<_ACEOF -#define HAVE_DECL_DIRFD $ac_have_decl -_ACEOF - - if test $ac_cv_have_decl_dirfd = no; then - HAVE_DECL_DIRFD=0 - fi - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether dirfd is a macro" >&5 -$as_echo_n "checking whether dirfd is a macro... " >&6; } -if ${gl_cv_func_dirfd_macro+:} false; then : - $as_echo_n "(cached) " >&6 -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -#include -#include -#ifdef dirfd - dirent_header_defines_dirfd -#endif -_ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "dirent_header_defines_dirfd" >/dev/null 2>&1; then : - gl_cv_func_dirfd_macro=yes -else - gl_cv_func_dirfd_macro=no -fi -rm -f conftest* - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_dirfd_macro" >&5 -$as_echo "$gl_cv_func_dirfd_macro" >&6; } - - # Use the replacement if we have no function or macro with that name, - # or if OS/2 kLIBC whose dirfd() does not work. - # Replace only if the system declares dirfd already. - case $ac_cv_func_dirfd,$gl_cv_func_dirfd_macro,$host_os,$ac_cv_have_decl_dirfd in - no,no,*,yes | *,*,os2*,yes) - REPLACE_DIRFD=1 - -$as_echo "#define REPLACE_DIRFD 1" >>confdefs.h -;; - esac - - if test $ac_cv_func_dirfd = no && test $gl_cv_func_dirfd_macro = no \ - || test $REPLACE_DIRFD = 1; then - - - - - - - - - gl_LIBOBJS="$gl_LIBOBJS dirfd.$ac_objext" - - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to get the file descriptor associated with an open DIR*" >&5 -$as_echo_n "checking how to get the file descriptor associated with an open DIR*... " >&6; } -if ${gl_cv_sys_dir_fd_member_name+:} false; then : - $as_echo_n "(cached) " >&6 -else - - dirfd_save_CFLAGS=$CFLAGS - for ac_expr in d_fd dd_fd; do - - CFLAGS="$CFLAGS -DDIR_FD_MEMBER_NAME=$ac_expr" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - - #include - #include -int -main (void) -{ -DIR *dir_p = opendir("."); (void) dir_p->DIR_FD_MEMBER_NAME; - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - dir_fd_found=yes - -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - CFLAGS=$dirfd_save_CFLAGS - test "$dir_fd_found" = yes && break - done - test "$dir_fd_found" = yes || ac_expr=no_such_member - - gl_cv_sys_dir_fd_member_name=$ac_expr - - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_sys_dir_fd_member_name" >&5 -$as_echo "$gl_cv_sys_dir_fd_member_name" >&6; } - if test $gl_cv_sys_dir_fd_member_name != no_such_member; then - -cat >>confdefs.h <<_ACEOF -#define DIR_FD_MEMBER_NAME $gl_cv_sys_dir_fd_member_name -_ACEOF - - fi - - - fi - - - - - - GNULIB_DIRFD=1 - - - - - -$as_echo "#define GNULIB_TEST_DIRFD 1" >>confdefs.h - - - - - - - - - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether // is distinct from /" >&5 -$as_echo_n "checking whether // is distinct from /... " >&6; } -if ${gl_cv_double_slash_root+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test x"$cross_compiling" = xyes ; then - # When cross-compiling, there is no way to tell whether // is special - # short of a list of hosts. However, the only known hosts to date - # that have a distinct // are Apollo DomainOS (too old to port to), - # Cygwin, and z/OS. If anyone knows of another system for which // has - # special semantics and is distinct from /, please report it to - # . - case $host in - *-cygwin | i370-ibm-openedition) - gl_cv_double_slash_root=yes ;; - *) - # Be optimistic and assume that / and // are the same when we - # don't know. - gl_cv_double_slash_root='unknown, assuming no' ;; - esac - else - set x `ls -di / // 2>/dev/null` - if test "$2" = "$4" && wc //dev/null >/dev/null 2>&1; then - gl_cv_double_slash_root=no - else - gl_cv_double_slash_root=yes - fi - fi -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_double_slash_root" >&5 -$as_echo "$gl_cv_double_slash_root" >&6; } - if test "$gl_cv_double_slash_root" = yes; then - -$as_echo "#define DOUBLE_SLASH_IS_DISTINCT_ROOT 1" >>confdefs.h - - fi - - - - - - -$as_echo "#define HAVE_DUP2 1" >>confdefs.h - - - if test $HAVE_DUP2 = 1; then - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether dup2 works" >&5 -$as_echo_n "checking whether dup2 works... " >&6; } -if ${gl_cv_func_dup2_works+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test "$cross_compiling" = yes; then : - case "$host_os" in - mingw*) # on this platform, dup2 always returns 0 for success - gl_cv_func_dup2_works="guessing no" ;; - cygwin*) # on cygwin 1.5.x, dup2(1,1) returns 0 - gl_cv_func_dup2_works="guessing no" ;; - aix* | freebsd*) - # on AIX 7.1 and FreeBSD 6.1, dup2 (1,toobig) gives EMFILE, - # not EBADF. - gl_cv_func_dup2_works="guessing no" ;; - haiku*) # on Haiku alpha 2, dup2(1, 1) resets FD_CLOEXEC. - gl_cv_func_dup2_works="guessing no" ;; - *-android*) # implemented using dup3(), which fails if oldfd == newfd - gl_cv_func_dup2_works="guessing no" ;; - os2*) # on OS/2 kLIBC, dup2() does not work on a directory fd. - gl_cv_func_dup2_works="guessing no" ;; - *) gl_cv_func_dup2_works="guessing yes" ;; - esac -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - - #include - #include - #include - #include - #include - #ifndef RLIM_SAVED_CUR - # define RLIM_SAVED_CUR RLIM_INFINITY - #endif - #ifndef RLIM_SAVED_MAX - # define RLIM_SAVED_MAX RLIM_INFINITY - #endif - -int -main (void) -{ -int result = 0; - int bad_fd = INT_MAX; - struct rlimit rlim; - if (getrlimit (RLIMIT_NOFILE, &rlim) == 0 - && 0 <= rlim.rlim_cur && rlim.rlim_cur <= INT_MAX - && rlim.rlim_cur != RLIM_INFINITY - && rlim.rlim_cur != RLIM_SAVED_MAX - && rlim.rlim_cur != RLIM_SAVED_CUR) - bad_fd = rlim.rlim_cur; - #ifdef FD_CLOEXEC - if (fcntl (1, F_SETFD, FD_CLOEXEC) == -1) - result |= 1; - #endif - if (dup2 (1, 1) != 1) - result |= 2; - #ifdef FD_CLOEXEC - if (fcntl (1, F_GETFD) != FD_CLOEXEC) - result |= 4; - #endif - close (0); - if (dup2 (0, 0) != -1) - result |= 8; - /* Many gnulib modules require POSIX conformance of EBADF. */ - if (dup2 (2, bad_fd) == -1 && errno != EBADF) - result |= 16; - /* Flush out some cygwin core dumps. */ - if (dup2 (2, -1) != -1 || errno != EBADF) - result |= 32; - dup2 (2, 255); - dup2 (2, 256); - /* On OS/2 kLIBC, dup2() does not work on a directory fd. */ - { - int fd = open (".", O_RDONLY); - if (fd == -1) - result |= 64; - else if (dup2 (fd, fd + 1) == -1) - result |= 128; - - close (fd); - } - return result; - ; - return 0; -} - -_ACEOF -if ac_fn_c_try_run "$LINENO"; then : - gl_cv_func_dup2_works=yes -else - gl_cv_func_dup2_works=no -fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext -fi - - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_dup2_works" >&5 -$as_echo "$gl_cv_func_dup2_works" >&6; } - case "$gl_cv_func_dup2_works" in - *yes) ;; - *) - REPLACE_DUP2=1 - for ac_func in setdtablesize -do : - ac_fn_c_check_func "$LINENO" "setdtablesize" "ac_cv_func_setdtablesize" -if test "x$ac_cv_func_setdtablesize" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_SETDTABLESIZE 1 -_ACEOF - -fi -done - - ;; - esac - fi - - - - - if test $ac_cv_func_fchdir = no; then - HAVE_FCHDIR=0 - fi - - if test $HAVE_FCHDIR = 0; then - if test $HAVE_DUP2 = 1; then - REPLACE_DUP2=1 - fi - fi - - - if test $HAVE_DUP2 = 0 || test $REPLACE_DUP2 = 1; then - - - - - - - - - gl_LIBOBJS="$gl_LIBOBJS dup2.$ac_objext" - - - fi - - - - - - GNULIB_DUP2=1 - - - - - -$as_echo "#define GNULIB_TEST_DUP2 1" >>confdefs.h - - - - - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for error_at_line" >&5 -$as_echo_n "checking for error_at_line... " >&6; } -if ${ac_cv_lib_error_at_line+:} false; then : - $as_echo_n "(cached) " >&6 -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include -int -main (void) -{ -error_at_line (0, 0, "", 0, "an error occurred"); - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - ac_cv_lib_error_at_line=yes -else - ac_cv_lib_error_at_line=no -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_error_at_line" >&5 -$as_echo "$ac_cv_lib_error_at_line" >&6; } - - if test $ac_cv_lib_error_at_line = no; then - - - - - - - - - gl_LIBOBJS="$gl_LIBOBJS error.$ac_objext" - - - - : - - fi - - - XGETTEXT_EXTRA_OPTIONS="$XGETTEXT_EXTRA_OPTIONS --flag=error:3:c-format" - - - - XGETTEXT_EXTRA_OPTIONS="$XGETTEXT_EXTRA_OPTIONS --flag=error_at_line:5:c-format" - - - - - - - - if test $ac_cv_have_decl_fchdir = no; then - HAVE_DECL_FCHDIR=0 - fi - - - if test $HAVE_FCHDIR = 0; then - - - - - - - - - gl_LIBOBJS="$gl_LIBOBJS fchdir.$ac_objext" - - : - -$as_echo "#define REPLACE_FCHDIR 1" >>confdefs.h - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether open can visit directories" >&5 -$as_echo_n "checking whether open can visit directories... " >&6; } -if ${gl_cv_func_open_directory_works+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test "$cross_compiling" = yes; then : - case "$host_os" in - # Guess yes on Linux systems. - linux-* | linux) gl_cv_func_open_directory_works="guessing yes" ;; - # Guess yes on glibc systems. - *-gnu* | gnu*) gl_cv_func_open_directory_works="guessing yes" ;; - # Guess no on native Windows. - mingw*) gl_cv_func_open_directory_works="guessing no" ;; - # If we don't know, assume the worst. - *) gl_cv_func_open_directory_works="guessing no" ;; - esac - -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include - -int -main (void) -{ -return open(".", O_RDONLY) < 0; - ; - return 0; -} -_ACEOF -if ac_fn_c_try_run "$LINENO"; then : - gl_cv_func_open_directory_works=yes -else - gl_cv_func_open_directory_works=no -fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext -fi - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_open_directory_works" >&5 -$as_echo "$gl_cv_func_open_directory_works" >&6; } - case "$gl_cv_func_open_directory_works" in - *yes) ;; - *) - -$as_echo "#define REPLACE_OPEN_DIRECTORY 1" >>confdefs.h - - ;; - esac - fi - - - - - - - GNULIB_FCHDIR=1 - - - - - -$as_echo "#define GNULIB_TEST_FCHDIR 1" >>confdefs.h - - - - - - - - - if test $ac_cv_func_fcntl = no; then - - - - if test $ac_cv_func_fcntl = no; then - HAVE_FCNTL=0 - else - REPLACE_FCNTL=1 - fi - - else - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether fcntl handles F_DUPFD correctly" >&5 -$as_echo_n "checking whether fcntl handles F_DUPFD correctly... " >&6; } -if ${gl_cv_func_fcntl_f_dupfd_works+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test "$cross_compiling" = yes; then : - case $host_os in - aix* | cygwin* | haiku*) - gl_cv_func_fcntl_f_dupfd_works="guessing no" ;; - *) gl_cv_func_fcntl_f_dupfd_works="guessing yes" ;; - esac -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include - #include - #include - #include - #include - #ifndef RLIM_SAVED_CUR - # define RLIM_SAVED_CUR RLIM_INFINITY - #endif - #ifndef RLIM_SAVED_MAX - # define RLIM_SAVED_MAX RLIM_INFINITY - #endif - -int -main (void) -{ -int result = 0; - int bad_fd = INT_MAX; - struct rlimit rlim; - if (getrlimit (RLIMIT_NOFILE, &rlim) == 0 - && 0 <= rlim.rlim_cur && rlim.rlim_cur <= INT_MAX - && rlim.rlim_cur != RLIM_INFINITY - && rlim.rlim_cur != RLIM_SAVED_MAX - && rlim.rlim_cur != RLIM_SAVED_CUR) - bad_fd = rlim.rlim_cur; - if (fcntl (0, F_DUPFD, -1) != -1) result |= 1; - if (errno != EINVAL) result |= 2; - if (fcntl (0, F_DUPFD, bad_fd) != -1) result |= 4; - if (errno != EINVAL) result |= 8; - /* On OS/2 kLIBC, F_DUPFD does not work on a directory fd */ - { - int fd; - fd = open (".", O_RDONLY); - if (fd == -1) - result |= 16; - else if (fcntl (fd, F_DUPFD, STDERR_FILENO + 1) == -1) - result |= 32; - - close (fd); - } - return result; - ; - return 0; -} -_ACEOF -if ac_fn_c_try_run "$LINENO"; then : - gl_cv_func_fcntl_f_dupfd_works=yes -else - gl_cv_func_fcntl_f_dupfd_works=no -fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext -fi - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_fcntl_f_dupfd_works" >&5 -$as_echo "$gl_cv_func_fcntl_f_dupfd_works" >&6; } - case $gl_cv_func_fcntl_f_dupfd_works in - *yes) ;; - *) - - - if test $ac_cv_func_fcntl = no; then - HAVE_FCNTL=0 - else - REPLACE_FCNTL=1 - fi - - -$as_echo "#define FCNTL_DUPFD_BUGGY 1" >>confdefs.h - ;; - esac - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether fcntl understands F_DUPFD_CLOEXEC" >&5 -$as_echo_n "checking whether fcntl understands F_DUPFD_CLOEXEC... " >&6; } -if ${gl_cv_func_fcntl_f_dupfd_cloexec+:} false; then : - $as_echo_n "(cached) " >&6 -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -#include -#ifndef F_DUPFD_CLOEXEC -choke me -#endif - -int -main (void) -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -#ifdef __linux__ -/* The Linux kernel only added F_DUPFD_CLOEXEC in 2.6.24, so we always replace - it to support the semantics on older kernels that failed with EINVAL. */ -choke me -#endif - -int -main (void) -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - gl_cv_func_fcntl_f_dupfd_cloexec=yes -else - gl_cv_func_fcntl_f_dupfd_cloexec="needs runtime check" -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -else - gl_cv_func_fcntl_f_dupfd_cloexec=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_fcntl_f_dupfd_cloexec" >&5 -$as_echo "$gl_cv_func_fcntl_f_dupfd_cloexec" >&6; } - if test "$gl_cv_func_fcntl_f_dupfd_cloexec" != yes; then - - - - if test $ac_cv_func_fcntl = no; then - HAVE_FCNTL=0 - else - REPLACE_FCNTL=1 - fi - - fi - fi - - - - - if test $ac_cv_func_fchdir = no; then - HAVE_FCHDIR=0 - fi - - if test $HAVE_FCHDIR = 0; then - - - - if test $ac_cv_func_fcntl = no; then - HAVE_FCNTL=0 - else - REPLACE_FCNTL=1 - fi - - fi - - - if test $HAVE_FCNTL = 0 || test $REPLACE_FCNTL = 1; then - - - - - - - - - gl_LIBOBJS="$gl_LIBOBJS fcntl.$ac_objext" - - fi - - - - - - GNULIB_FCNTL=1 - - - - - -$as_echo "#define GNULIB_TEST_FCNTL 1" >>confdefs.h - - - - - - - - - - - - - - - if test $gl_cv_have_include_next = yes; then - gl_cv_next_fcntl_h='<'fcntl.h'>' - else - { $as_echo "$as_me:${as_lineno-$LINENO}: checking absolute name of " >&5 -$as_echo_n "checking absolute name of ... " >&6; } -if ${gl_cv_next_fcntl_h+:} false; then : - $as_echo_n "(cached) " >&6 -else - - - - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include -_ACEOF - case "$host_os" in - aix*) gl_absname_cpp="$ac_cpp -C" ;; - *) gl_absname_cpp="$ac_cpp" ;; - esac - - case "$host_os" in - mingw*) - gl_dirsep_regex='[/\\]' - ;; - *) - gl_dirsep_regex='\/' - ;; - esac - gl_make_literal_regex_sed='s,[]$^\\.*/[],\\&,g' - gl_header_literal_regex=`echo 'fcntl.h' \ - | sed -e "$gl_make_literal_regex_sed"` - gl_absolute_header_sed="/${gl_dirsep_regex}${gl_header_literal_regex}/"'{ - s/.*"\(.*'"${gl_dirsep_regex}${gl_header_literal_regex}"'\)".*/\1/ - s|^/[^/]|//&| - p - q - }' - - gl_cv_absolute_fcntl_h=`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 | - sed -n "$gl_absolute_header_sed"` - - gl_header=$gl_cv_absolute_fcntl_h - gl_cv_next_fcntl_h='"'$gl_header'"' - - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_next_fcntl_h" >&5 -$as_echo "$gl_cv_next_fcntl_h" >&6; } - fi - NEXT_FCNTL_H=$gl_cv_next_fcntl_h - - if test $gl_cv_have_include_next = yes || test $gl_cv_have_include_next = buggy; then - # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include_next' - gl_next_as_first_directive='<'fcntl.h'>' - else - # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include' - gl_next_as_first_directive=$gl_cv_next_fcntl_h - fi - NEXT_AS_FIRST_DIRECTIVE_FCNTL_H=$gl_next_as_first_directive - - - - - - - - - - - - - - - -cat >>confdefs.h <<_ACEOF -#define GNULIB_FD_SAFER_FLAG 1 -_ACEOF - - - - - - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for flexible array member" >&5 -$as_echo_n "checking for flexible array member... " >&6; } -if ${ac_cv_c_flexmember+:} false; then : - $as_echo_n "(cached) " >&6 -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include - #include - #include - struct m { struct m *next, **list; char name[]; }; - struct s { struct s *p; struct m *m; int n; double d[]; }; -int -main (void) -{ -int m = getchar (); - size_t nbytes = offsetof (struct s, d) + m * sizeof (double); - nbytes += sizeof (struct s) - 1; - nbytes -= nbytes % sizeof (struct s); - struct s *p = malloc (nbytes); - p->p = p; - p->m = NULL; - p->d[0] = 0.0; - return p->d != (double *) NULL; - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - ac_cv_c_flexmember=yes -else - ac_cv_c_flexmember=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_flexmember" >&5 -$as_echo "$ac_cv_c_flexmember" >&6; } - if test $ac_cv_c_flexmember = yes; then - -$as_echo "#define FLEXIBLE_ARRAY_MEMBER /**/" >>confdefs.h - - else - $as_echo "#define FLEXIBLE_ARRAY_MEMBER 1" >>confdefs.h - - fi - - - - - FLOAT_H= - REPLACE_FLOAT_LDBL=0 - case "$host_os" in - aix* | beos* | openbsd* | mirbsd* | irix*) - FLOAT_H=float.h - ;; - freebsd* | dragonfly*) - case "$host_cpu" in - i[34567]86 ) - FLOAT_H=float.h - ;; - x86_64 ) - # On x86_64 systems, the C compiler may still be generating - # 32-bit code. - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#if defined __LP64__ || defined __x86_64__ || defined __amd64__ - int ok; - #else - error fail - #endif - -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - -else - FLOAT_H=float.h -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - ;; - esac - ;; - linux*) - case "$host_cpu" in - powerpc*) - FLOAT_H=float.h - ;; - esac - ;; - esac - case "$host_os" in - aix* | freebsd* | dragonfly* | linux*) - if test -n "$FLOAT_H"; then - REPLACE_FLOAT_LDBL=1 - fi - ;; - esac - - REPLACE_ITOLD=0 - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether conversion from 'int' to 'long double' works" >&5 -$as_echo_n "checking whether conversion from 'int' to 'long double' works... " >&6; } -if ${gl_cv_func_itold_works+:} false; then : - $as_echo_n "(cached) " >&6 -else - - if test "$cross_compiling" = yes; then : - case "$host" in - sparc*-*-linux*) - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#if defined __LP64__ || defined __arch64__ - int ok; - #else - error fail - #endif - -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - gl_cv_func_itold_works="guessing no" -else - gl_cv_func_itold_works="guessing yes" -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - ;; - # Guess yes on native Windows. - mingw*) gl_cv_func_itold_works="guessing yes" ;; - *) gl_cv_func_itold_works="guessing yes" ;; - esac - -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -int i = -1; -volatile long double ld; -int main () -{ - ld += i * 1.0L; - if (ld > 0) - return 1; - return 0; -} -_ACEOF -if ac_fn_c_try_run "$LINENO"; then : - gl_cv_func_itold_works=yes -else - gl_cv_func_itold_works=no -fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext -fi - - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_itold_works" >&5 -$as_echo "$gl_cv_func_itold_works" >&6; } - case "$gl_cv_func_itold_works" in - *no) - REPLACE_ITOLD=1 - FLOAT_H=float.h - ;; - esac - - if test -n "$FLOAT_H"; then - - - - - - - - - if test $gl_cv_have_include_next = yes; then - gl_cv_next_float_h='<'float.h'>' - else - { $as_echo "$as_me:${as_lineno-$LINENO}: checking absolute name of " >&5 -$as_echo_n "checking absolute name of ... " >&6; } -if ${gl_cv_next_float_h+:} false; then : - $as_echo_n "(cached) " >&6 -else - - - - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include -_ACEOF - case "$host_os" in - aix*) gl_absname_cpp="$ac_cpp -C" ;; - *) gl_absname_cpp="$ac_cpp" ;; - esac - - case "$host_os" in - mingw*) - gl_dirsep_regex='[/\\]' - ;; - *) - gl_dirsep_regex='\/' - ;; - esac - gl_make_literal_regex_sed='s,[]$^\\.*/[],\\&,g' - gl_header_literal_regex=`echo 'float.h' \ - | sed -e "$gl_make_literal_regex_sed"` - gl_absolute_header_sed="/${gl_dirsep_regex}${gl_header_literal_regex}/"'{ - s/.*"\(.*'"${gl_dirsep_regex}${gl_header_literal_regex}"'\)".*/\1/ - s|^/[^/]|//&| - p - q - }' - - gl_cv_absolute_float_h=`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 | - sed -n "$gl_absolute_header_sed"` - - gl_header=$gl_cv_absolute_float_h - gl_cv_next_float_h='"'$gl_header'"' - - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_next_float_h" >&5 -$as_echo "$gl_cv_next_float_h" >&6; } - fi - NEXT_FLOAT_H=$gl_cv_next_float_h - - if test $gl_cv_have_include_next = yes || test $gl_cv_have_include_next = buggy; then - # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include_next' - gl_next_as_first_directive='<'float.h'>' - else - # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include' - gl_next_as_first_directive=$gl_cv_next_float_h - fi - NEXT_AS_FIRST_DIRECTIVE_FLOAT_H=$gl_next_as_first_directive - - - - - fi - - if test -n "$FLOAT_H"; then - GL_GENERATE_FLOAT_H_TRUE= - GL_GENERATE_FLOAT_H_FALSE='#' -else - GL_GENERATE_FLOAT_H_TRUE='#' - GL_GENERATE_FLOAT_H_FALSE= -fi - - - - if test $REPLACE_FLOAT_LDBL = 1; then - - - - - - - - - gl_LIBOBJS="$gl_LIBOBJS float.$ac_objext" - - fi - if test $REPLACE_ITOLD = 1; then - - - - - - - - - gl_LIBOBJS="$gl_LIBOBJS itold.$ac_objext" - - fi - - - - - gl_fnmatch_required_lowercase=` - echo $gl_fnmatch_required | LC_ALL=C tr '[A-Z]' '[a-z]' - ` - - if test $ac_cv_func_fnmatch = no; then - HAVE_FNMATCH=0 - else - gl_fnmatch_cache_var="gl_cv_func_fnmatch_${gl_fnmatch_required_lowercase}" - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for working $gl_fnmatch_required fnmatch" >&5 -$as_echo_n "checking for working $gl_fnmatch_required fnmatch... " >&6; } -if eval \${$gl_fnmatch_cache_var+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test $gl_fnmatch_required = GNU; then - gl_fnmatch_gnu_start= - gl_fnmatch_gnu_end= - else - gl_fnmatch_gnu_start='#if 0' - gl_fnmatch_gnu_end='#endif' - fi - if test "$cross_compiling" = yes; then : - eval "$gl_fnmatch_cache_var=\"guessing no\"" -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include - static int - y (char const *pattern, char const *string, int flags) - { - return fnmatch (pattern, string, flags) == 0; - } - static int - n (char const *pattern, char const *string, int flags) - { - return fnmatch (pattern, string, flags) == FNM_NOMATCH; - } - -int -main (void) -{ -char const *Apat = 'A' < '\\\\' ? "[A-\\\\\\\\]" : "[\\\\\\\\-A]"; - char const *apat = 'a' < '\\\\' ? "[a-\\\\\\\\]" : "[\\\\\\\\-a]"; - static char const A_1[] = { 'A' - 1, 0 }; - static char const A01[] = { 'A' + 1, 0 }; - static char const a_1[] = { 'a' - 1, 0 }; - static char const a01[] = { 'a' + 1, 0 }; - static char const bs_1[] = { '\\\\' - 1, 0 }; - static char const bs01[] = { '\\\\' + 1, 0 }; - int result = 0; - if (!n ("a*", "", 0)) - return 1; - if (!y ("a*", "abc", 0)) - return 1; - if (!y ("[/b", "[/b", 0)) /*"]]"*/ /* glibc Bugzilla bug 12378 */ - return 1; - if (!n ("d*/*1", "d/s/1", FNM_PATHNAME)) - return 2; - if (!y ("a\\\\bc", "abc", 0)) - return 3; - if (!n ("a\\\\bc", "abc", FNM_NOESCAPE)) - return 3; - if (!y ("*x", ".x", 0)) - return 4; - if (!n ("*x", ".x", FNM_PERIOD)) - return 4; - if (!y (Apat, "\\\\", 0)) - return 5; - if (!y (Apat, "A", 0)) - return 5; - if (!y (apat, "\\\\", 0)) - return 5; - if (!y (apat, "a", 0)) - return 5; - if (!(n (Apat, A_1, 0) == ('A' < '\\\\'))) - return 5; - if (!(n (apat, a_1, 0) == ('a' < '\\\\'))) - return 5; - if (!(y (Apat, A01, 0) == ('A' < '\\\\'))) - return 5; - if (!(y (apat, a01, 0) == ('a' < '\\\\'))) - return 5; - if (!(y (Apat, bs_1, 0) == ('A' < '\\\\'))) - return 5; - if (!(y (apat, bs_1, 0) == ('a' < '\\\\'))) - return 5; - if (!(n (Apat, bs01, 0) == ('A' < '\\\\'))) - return 5; - if (!(n (apat, bs01, 0) == ('a' < '\\\\'))) - return 5; - $gl_fnmatch_gnu_start - if (!y ("xxXX", "xXxX", FNM_CASEFOLD)) - result |= 8; - if (!y ("a++(x|yy)b", "a+xyyyyxb", FNM_EXTMATCH)) - result |= 16; - if (!n ("d*/*1", "d/s/1", FNM_FILE_NAME)) - result |= 32; - if (!y ("*", "x", FNM_FILE_NAME | FNM_LEADING_DIR)) - result |= 64; - if (!y ("x*", "x/y/z", FNM_FILE_NAME | FNM_LEADING_DIR)) - result |= 64; - if (!y ("*c*", "c/x", FNM_FILE_NAME | FNM_LEADING_DIR)) - result |= 64; - $gl_fnmatch_gnu_end - return result; - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_run "$LINENO"; then : - eval "$gl_fnmatch_cache_var=yes" -else - eval "$gl_fnmatch_cache_var=no" -fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext -fi - - -fi -eval ac_res=\$$gl_fnmatch_cache_var - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 -$as_echo "$ac_res" >&6; } - eval "gl_fnmatch_result=\"\$$gl_fnmatch_cache_var\"" - if test "$gl_fnmatch_result" != yes; then - REPLACE_FNMATCH=1 - fi - fi - if test $HAVE_FNMATCH = 0 || test $REPLACE_FNMATCH = 1; then - - - FNMATCH_H='fnmatch.h' - if test -n "$FNMATCH_H"; then - GL_GENERATE_FNMATCH_H_TRUE= - GL_GENERATE_FNMATCH_H_FALSE='#' -else - GL_GENERATE_FNMATCH_H_TRUE='#' - GL_GENERATE_FNMATCH_H_FALSE= -fi - - - fi - - if test $HAVE_FNMATCH = 0 || test $REPLACE_FNMATCH = 1; then - - - - - - - - - gl_LIBOBJS="$gl_LIBOBJS fnmatch.$ac_objext" - - - - ac_fn_c_check_decl "$LINENO" "isblank" "ac_cv_have_decl_isblank" "#include -" -if test "x$ac_cv_have_decl_isblank" = xyes; then : - ac_have_decl=1 -else - ac_have_decl=0 -fi - -cat >>confdefs.h <<_ACEOF -#define HAVE_DECL_ISBLANK $ac_have_decl -_ACEOF - - - - - fi - - - - - - GNULIB_FNMATCH=1 - - - - - -$as_echo "#define GNULIB_TEST_FNMATCH 1" >>confdefs.h - - - - - - - - - case "$host_os" in - mingw* | solaris*) - REPLACE_FSTAT=1 - ;; - esac - - - - - - if test $ac_cv_func_fchdir = no; then - HAVE_FCHDIR=0 - fi - - if test $HAVE_FCHDIR = 0; then - case "$gl_cv_func_open_directory_works" in - *yes) ;; - *) - REPLACE_FSTAT=1 - ;; - esac - fi - - - if test $REPLACE_FSTAT = 1; then - - - - - - - - - gl_LIBOBJS="$gl_LIBOBJS fstat.$ac_objext" - - case "$host_os" in - mingw*) - - - - - - - - - gl_LIBOBJS="$gl_LIBOBJS stat-w32.$ac_objext" - - ;; - esac - - - : - - fi - - - - - - GNULIB_FSTAT=1 - - - - - -$as_echo "#define GNULIB_TEST_FSTAT 1" >>confdefs.h - - - - - - - - - case $gl_cv_func_getcwd_null,$gl_cv_func_getcwd_posix_signature in - *yes,yes) ;; - *) - REPLACE_GETCWD=1 - ;; - esac - - if test $REPLACE_GETCWD = 1; then - - - - - - - - - gl_LIBOBJS="$gl_LIBOBJS getcwd-lgpl.$ac_objext" - - fi - - - - - - GNULIB_GETCWD=1 - - - - - -$as_echo "#define GNULIB_TEST_GETCWD 1" >>confdefs.h - - - - - - - - - - - - if test $ac_cv_func_getdelim = yes; then - HAVE_GETDELIM=1 - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for working getdelim function" >&5 -$as_echo_n "checking for working getdelim function... " >&6; } -if ${gl_cv_func_working_getdelim+:} false; then : - $as_echo_n "(cached) " >&6 -else - echo fooNbarN | tr -d '\012' | tr N '\012' > conftest.data - if test "$cross_compiling" = yes; then : - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -#include -#ifdef __GNU_LIBRARY__ - #if (__GLIBC__ >= 2) && !defined __UCLIBC__ - Lucky GNU user - #endif -#endif - -_ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "Lucky GNU user" >/dev/null 2>&1; then : - gl_cv_func_working_getdelim="guessing yes" -else - gl_cv_func_working_getdelim="guessing no" -fi -rm -f conftest* - - -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -# include -# include -# include - int main () - { - FILE *in = fopen ("./conftest.data", "r"); - if (!in) - return 1; - { - /* Test result for a NULL buffer and a zero size. - Based on a test program from Karl Heuer. */ - char *line = NULL; - size_t siz = 0; - int len = getdelim (&line, &siz, '\n', in); - if (!(len == 4 && line && strcmp (line, "foo\n") == 0)) - { free (line); fclose (in); return 2; } - } - { - /* Test result for a NULL buffer and a non-zero size. - This crashes on FreeBSD 8.0. */ - char *line = NULL; - size_t siz = (size_t)(~0) / 4; - if (getdelim (&line, &siz, '\n', in) == -1) - { fclose (in); return 3; } - free (line); - } - fclose (in); - return 0; - } - -_ACEOF -if ac_fn_c_try_run "$LINENO"; then : - gl_cv_func_working_getdelim=yes -else - gl_cv_func_working_getdelim=no -fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext -fi - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_working_getdelim" >&5 -$as_echo "$gl_cv_func_working_getdelim" >&6; } - case "$gl_cv_func_working_getdelim" in - *no) - REPLACE_GETDELIM=1 - ;; - esac - else - HAVE_GETDELIM=0 - fi - - if test $ac_cv_have_decl_getdelim = no; then - HAVE_DECL_GETDELIM=0 - fi - - if test $HAVE_GETDELIM = 0 || test $REPLACE_GETDELIM = 1; then - - - - - - - - - gl_LIBOBJS="$gl_LIBOBJS getdelim.$ac_objext" - - - for ac_func in flockfile funlockfile -do : - as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` -ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var" -if eval test \"x\$"$as_ac_var"\" = x"yes"; then : - cat >>confdefs.h <<_ACEOF -#define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1 -_ACEOF - -fi -done - - ac_fn_c_check_decl "$LINENO" "getc_unlocked" "ac_cv_have_decl_getc_unlocked" "$ac_includes_default" -if test "x$ac_cv_have_decl_getc_unlocked" = xyes; then : - ac_have_decl=1 -else - ac_have_decl=0 -fi - -cat >>confdefs.h <<_ACEOF -#define HAVE_DECL_GETC_UNLOCKED $ac_have_decl -_ACEOF - - - fi - - - - - - GNULIB_GETDELIM=1 - - - - - -$as_echo "#define GNULIB_TEST_GETDELIM 1" >>confdefs.h - - - - - - - - - if test $ac_cv_func_getdtablesize = yes && - test $ac_cv_have_decl_getdtablesize = yes; then - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether getdtablesize works" >&5 -$as_echo_n "checking whether getdtablesize works... " >&6; } -if ${gl_cv_func_getdtablesize_works+:} false; then : - $as_echo_n "(cached) " >&6 -else - case "$host_os" in - vms*) gl_cv_func_getdtablesize_works="no (limitation)" ;; - *) - if test "$cross_compiling" = yes; then : - case "$host_os" in - cygwin*) # on cygwin 1.5.25, getdtablesize() automatically grows - gl_cv_func_getdtablesize_works="guessing no" ;; - *) gl_cv_func_getdtablesize_works="guessing yes" ;; - esac - -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - - #include -int -main (void) -{ -int size = getdtablesize(); - if (dup2 (0, getdtablesize()) != -1) - return 1; - if (size != getdtablesize()) - return 2; - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_run "$LINENO"; then : - gl_cv_func_getdtablesize_works=yes -else - gl_cv_func_getdtablesize_works=no -fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext -fi - - ;; - esac - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_getdtablesize_works" >&5 -$as_echo "$gl_cv_func_getdtablesize_works" >&6; } - case "$gl_cv_func_getdtablesize_works" in - *yes | "no (limitation)") ;; - *) REPLACE_GETDTABLESIZE=1 ;; - esac - else - HAVE_GETDTABLESIZE=0 - fi - - if test $HAVE_GETDTABLESIZE = 0 || test $REPLACE_GETDTABLESIZE = 1; then - - - - - - - - - gl_LIBOBJS="$gl_LIBOBJS getdtablesize.$ac_objext" - - : - fi - - - - - - GNULIB_GETDTABLESIZE=1 - - - - - -$as_echo "#define GNULIB_TEST_GETDTABLESIZE 1" >>confdefs.h - - - - - - - - - - - gl_getline_needs_run_time_check=no - ac_fn_c_check_func "$LINENO" "getline" "ac_cv_func_getline" -if test "x$ac_cv_func_getline" = xyes; then : - gl_getline_needs_run_time_check=yes -else - am_cv_func_working_getline=no -fi - - if test $gl_getline_needs_run_time_check = yes; then - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for working getline function" >&5 -$as_echo_n "checking for working getline function... " >&6; } -if ${am_cv_func_working_getline+:} false; then : - $as_echo_n "(cached) " >&6 -else - echo fooNbarN | tr -d '\012' | tr N '\012' > conftest.data - if test "$cross_compiling" = yes; then : - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -#include -#ifdef __GNU_LIBRARY__ - #if (__GLIBC__ >= 2) && !defined __UCLIBC__ - Lucky GNU user - #endif -#endif - -_ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "Lucky GNU user" >/dev/null 2>&1; then : - am_cv_func_working_getline="guessing yes" -else - am_cv_func_working_getline="guessing no" -fi -rm -f conftest* - - -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -# include -# include -# include - int main () - { - FILE *in = fopen ("./conftest.data", "r"); - if (!in) - return 1; - { - /* Test result for a NULL buffer and a zero size. - Based on a test program from Karl Heuer. */ - char *line = NULL; - size_t siz = 0; - int len = getline (&line, &siz, in); - if (!(len == 4 && line && strcmp (line, "foo\n") == 0)) - { free (line); fclose (in); return 2; } - free (line); - } - { - /* Test result for a NULL buffer and a non-zero size. - This crashes on FreeBSD 8.0. */ - char *line = NULL; - size_t siz = (size_t)(~0) / 4; - if (getline (&line, &siz, in) == -1) - { fclose (in); return 3; } - free (line); - } - fclose (in); - return 0; - } - -_ACEOF -if ac_fn_c_try_run "$LINENO"; then : - am_cv_func_working_getline=yes -else - am_cv_func_working_getline=no -fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext -fi - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_func_working_getline" >&5 -$as_echo "$am_cv_func_working_getline" >&6; } - fi - - if test $ac_cv_have_decl_getline = no; then - HAVE_DECL_GETLINE=0 - fi - - case "$am_cv_func_working_getline" in - *no) - REPLACE_GETLINE=1 - ;; - esac - - if test $REPLACE_GETLINE = 1; then - - - - - - - - - gl_LIBOBJS="$gl_LIBOBJS getline.$ac_objext" - - - : - - fi - - - - - - GNULIB_GETLINE=1 - - - - - -$as_echo "#define GNULIB_TEST_GETLINE 1" >>confdefs.h - - - - - - - - - - - - - REPLACE_GETOPT=1 - - if test $REPLACE_GETOPT = 1; then - - - if test $ac_cv_header_sys_cdefs_h = yes; then - HAVE_SYS_CDEFS_H=1 - else - HAVE_SYS_CDEFS_H=0 - fi - - - -$as_echo "#define __GETOPT_PREFIX rpl_" >>confdefs.h - - GETOPT_H=getopt.h - GETOPT_CDEFS_H=getopt-cdefs.h - - - - fi - - if test $REPLACE_GETOPT = 1; then - - - - - - - - - gl_LIBOBJS="$gl_LIBOBJS getopt.$ac_objext" - - - - - - - - - - gl_LIBOBJS="$gl_LIBOBJS getopt1.$ac_objext" - - GNULIB_GL_UNISTD_H_GETOPT=1 - fi - - - - - ac_found=0 - ac_fn_c_check_decl "$LINENO" "program_invocation_name" "ac_cv_have_decl_program_invocation_name" "#include -" -if test "x$ac_cv_have_decl_program_invocation_name" = xyes; then : - ac_have_decl=1 -else - ac_have_decl=0 -fi - -cat >>confdefs.h <<_ACEOF -#define HAVE_DECL_PROGRAM_INVOCATION_NAME $ac_have_decl -_ACEOF -if test $ac_have_decl = 1; then : - ac_found=1 -fi - - ac_fn_c_check_decl "$LINENO" "program_invocation_short_name" "ac_cv_have_decl_program_invocation_short_name" "#include -" -if test "x$ac_cv_have_decl_program_invocation_short_name" = xyes; then : - ac_have_decl=1 -else - ac_have_decl=0 -fi - -cat >>confdefs.h <<_ACEOF -#define HAVE_DECL_PROGRAM_INVOCATION_SHORT_NAME $ac_have_decl -_ACEOF -if test $ac_have_decl = 1; then : - ac_found=1 -fi - - ac_fn_c_check_decl "$LINENO" "__argv" "ac_cv_have_decl___argv" "#include -" -if test "x$ac_cv_have_decl___argv" = xyes; then : - ac_have_decl=1 -else - ac_have_decl=0 -fi - -cat >>confdefs.h <<_ACEOF -#define HAVE_DECL___ARGV $ac_have_decl -_ACEOF -if test $ac_have_decl = 1; then : - ac_found=1 -fi - - - # Incur the cost of this test only if none of the above worked. - if test $ac_found = 0; then - # On OpenBSD 5.1, using the global __progname variable appears to be - # the only way to implement getprogname. - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether __progname is defined in default libraries" >&5 -$as_echo_n "checking whether __progname is defined in default libraries... " >&6; } -if ${gl_cv_var___progname+:} false; then : - $as_echo_n "(cached) " >&6 -else - - gl_cv_var___progname= - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -extern char *__progname; -int -main (void) -{ -return *__progname; - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - gl_cv_var___progname=yes - -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext - - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_var___progname" >&5 -$as_echo "$gl_cv_var___progname" >&6; } - if test "$gl_cv_var___progname" = yes; then - -$as_echo "#define HAVE_VAR___PROGNAME 1" >>confdefs.h - - fi - fi - - - - - - - - - - - - - - - - - - if test $gl_cv_have_include_next = yes; then - gl_cv_next_langinfo_h='<'langinfo.h'>' - else - { $as_echo "$as_me:${as_lineno-$LINENO}: checking absolute name of " >&5 -$as_echo_n "checking absolute name of ... " >&6; } -if ${gl_cv_next_langinfo_h+:} false; then : - $as_echo_n "(cached) " >&6 -else - - if test $ac_cv_header_langinfo_h = yes; then - - - - - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include -_ACEOF - case "$host_os" in - aix*) gl_absname_cpp="$ac_cpp -C" ;; - *) gl_absname_cpp="$ac_cpp" ;; - esac - - case "$host_os" in - mingw*) - gl_dirsep_regex='[/\\]' - ;; - *) - gl_dirsep_regex='\/' - ;; - esac - gl_make_literal_regex_sed='s,[]$^\\.*/[],\\&,g' - gl_header_literal_regex=`echo 'langinfo.h' \ - | sed -e "$gl_make_literal_regex_sed"` - gl_absolute_header_sed="/${gl_dirsep_regex}${gl_header_literal_regex}/"'{ - s/.*"\(.*'"${gl_dirsep_regex}${gl_header_literal_regex}"'\)".*/\1/ - s|^/[^/]|//&| - p - q - }' - - gl_cv_absolute_langinfo_h=`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 | - sed -n "$gl_absolute_header_sed"` - - gl_header=$gl_cv_absolute_langinfo_h - gl_cv_next_langinfo_h='"'$gl_header'"' - else - gl_cv_next_langinfo_h='<'langinfo.h'>' - fi - - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_next_langinfo_h" >&5 -$as_echo "$gl_cv_next_langinfo_h" >&6; } - fi - NEXT_LANGINFO_H=$gl_cv_next_langinfo_h - - if test $gl_cv_have_include_next = yes || test $gl_cv_have_include_next = buggy; then - # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include_next' - gl_next_as_first_directive='<'langinfo.h'>' - else - # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include' - gl_next_as_first_directive=$gl_cv_next_langinfo_h - fi - NEXT_AS_FIRST_DIRECTIVE_LANGINFO_H=$gl_next_as_first_directive - - - - - - HAVE_LANGINFO_CODESET=0 - HAVE_LANGINFO_T_FMT_AMPM=0 - HAVE_LANGINFO_ALTMON=0 - HAVE_LANGINFO_ERA=0 - HAVE_LANGINFO_YESEXPR=0 - - if test $ac_cv_header_langinfo_h = yes; then - HAVE_LANGINFO_H=1 - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether langinfo.h defines CODESET" >&5 -$as_echo_n "checking whether langinfo.h defines CODESET... " >&6; } -if ${gl_cv_header_langinfo_codeset+:} false; then : - $as_echo_n "(cached) " >&6 -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include -int a = CODESET; - -int -main (void) -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - gl_cv_header_langinfo_codeset=yes -else - gl_cv_header_langinfo_codeset=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_header_langinfo_codeset" >&5 -$as_echo "$gl_cv_header_langinfo_codeset" >&6; } - if test $gl_cv_header_langinfo_codeset = yes; then - HAVE_LANGINFO_CODESET=1 - fi - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether langinfo.h defines T_FMT_AMPM" >&5 -$as_echo_n "checking whether langinfo.h defines T_FMT_AMPM... " >&6; } -if ${gl_cv_header_langinfo_t_fmt_ampm+:} false; then : - $as_echo_n "(cached) " >&6 -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include -int a = T_FMT_AMPM; - -int -main (void) -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - gl_cv_header_langinfo_t_fmt_ampm=yes -else - gl_cv_header_langinfo_t_fmt_ampm=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_header_langinfo_t_fmt_ampm" >&5 -$as_echo "$gl_cv_header_langinfo_t_fmt_ampm" >&6; } - if test $gl_cv_header_langinfo_t_fmt_ampm = yes; then - HAVE_LANGINFO_T_FMT_AMPM=1 - fi - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether langinfo.h defines ALTMON_1" >&5 -$as_echo_n "checking whether langinfo.h defines ALTMON_1... " >&6; } -if ${gl_cv_header_langinfo_altmon+:} false; then : - $as_echo_n "(cached) " >&6 -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include -int a = ALTMON_1; - -int -main (void) -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - gl_cv_header_langinfo_altmon=yes -else - gl_cv_header_langinfo_altmon=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_header_langinfo_altmon" >&5 -$as_echo "$gl_cv_header_langinfo_altmon" >&6; } - if test $gl_cv_header_langinfo_altmon = yes; then - HAVE_LANGINFO_ALTMON=1 - fi - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether langinfo.h defines ERA" >&5 -$as_echo_n "checking whether langinfo.h defines ERA... " >&6; } -if ${gl_cv_header_langinfo_era+:} false; then : - $as_echo_n "(cached) " >&6 -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include -int a = ERA; - -int -main (void) -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - gl_cv_header_langinfo_era=yes -else - gl_cv_header_langinfo_era=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_header_langinfo_era" >&5 -$as_echo "$gl_cv_header_langinfo_era" >&6; } - if test $gl_cv_header_langinfo_era = yes; then - HAVE_LANGINFO_ERA=1 - fi - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether langinfo.h defines YESEXPR" >&5 -$as_echo_n "checking whether langinfo.h defines YESEXPR... " >&6; } -if ${gl_cv_header_langinfo_yesexpr+:} false; then : - $as_echo_n "(cached) " >&6 -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include -int a = YESEXPR; - -int -main (void) -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - gl_cv_header_langinfo_yesexpr=yes -else - gl_cv_header_langinfo_yesexpr=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_header_langinfo_yesexpr" >&5 -$as_echo "$gl_cv_header_langinfo_yesexpr" >&6; } - if test $gl_cv_header_langinfo_yesexpr = yes; then - HAVE_LANGINFO_YESEXPR=1 - fi - else - HAVE_LANGINFO_H=0 - fi - - - - - - - - - - - - - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the compiler supports the __inline keyword" >&5 -$as_echo_n "checking whether the compiler supports the __inline keyword... " >&6; } -if ${gl_cv_c___inline+:} false; then : - $as_echo_n "(cached) " >&6 -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -typedef int foo_t; - static __inline foo_t foo (void) { return 0; } -int -main (void) -{ -return foo (); - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - gl_cv_c___inline=yes -else - gl_cv_c___inline=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_c___inline" >&5 -$as_echo "$gl_cv_c___inline" >&6; } - if test $gl_cv_c___inline = yes; then - -$as_echo "#define HAVE___INLINE 1" >>confdefs.h - - fi - - - - - - LOCALCHARSET_TESTS_ENVIRONMENT= - - - - - - - - - - case "$host_os" in - solaris*) - -$as_echo "#define _LCONV_C99 1" >>confdefs.h - - ;; - esac - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether locale.h conforms to POSIX:2001" >&5 -$as_echo_n "checking whether locale.h conforms to POSIX:2001... " >&6; } -if ${gl_cv_header_locale_h_posix2001+:} false; then : - $as_echo_n "(cached) " >&6 -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include - int x = LC_MESSAGES; - int y = sizeof (((struct lconv *) 0)->decimal_point); -int -main (void) -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - gl_cv_header_locale_h_posix2001=yes -else - gl_cv_header_locale_h_posix2001=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_header_locale_h_posix2001" >&5 -$as_echo "$gl_cv_header_locale_h_posix2001" >&6; } - - - if test $ac_cv_header_xlocale_h = yes; then - HAVE_XLOCALE_H=1 - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether locale.h defines locale_t" >&5 -$as_echo_n "checking whether locale.h defines locale_t... " >&6; } -if ${gl_cv_header_locale_has_locale_t+:} false; then : - $as_echo_n "(cached) " >&6 -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include - locale_t x; -int -main (void) -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - gl_cv_header_locale_has_locale_t=yes -else - gl_cv_header_locale_has_locale_t=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_header_locale_has_locale_t" >&5 -$as_echo "$gl_cv_header_locale_has_locale_t" >&6; } - if test $gl_cv_header_locale_has_locale_t = yes; then - gl_cv_header_locale_h_needs_xlocale_h=no - else - gl_cv_header_locale_h_needs_xlocale_h=yes - fi - else - HAVE_XLOCALE_H=0 - gl_cv_header_locale_h_needs_xlocale_h=no - fi - - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether struct lconv is properly defined" >&5 -$as_echo_n "checking whether struct lconv is properly defined... " >&6; } -if ${gl_cv_sys_struct_lconv_ok+:} false; then : - $as_echo_n "(cached) " >&6 -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include - struct lconv l; - int x = sizeof (l.decimal_point); - int y = sizeof (l.int_p_cs_precedes); -int -main (void) -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - gl_cv_sys_struct_lconv_ok=yes -else - gl_cv_sys_struct_lconv_ok=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_sys_struct_lconv_ok" >&5 -$as_echo "$gl_cv_sys_struct_lconv_ok" >&6; } - if test $gl_cv_sys_struct_lconv_ok = no; then - REPLACE_STRUCT_LCONV=1 - fi - - - - - - - - - - if test $gl_cv_have_include_next = yes; then - gl_cv_next_locale_h='<'locale.h'>' - else - { $as_echo "$as_me:${as_lineno-$LINENO}: checking absolute name of " >&5 -$as_echo_n "checking absolute name of ... " >&6; } -if ${gl_cv_next_locale_h+:} false; then : - $as_echo_n "(cached) " >&6 -else - - - - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include -_ACEOF - case "$host_os" in - aix*) gl_absname_cpp="$ac_cpp -C" ;; - *) gl_absname_cpp="$ac_cpp" ;; - esac - - case "$host_os" in - mingw*) - gl_dirsep_regex='[/\\]' - ;; - *) - gl_dirsep_regex='\/' - ;; - esac - gl_make_literal_regex_sed='s,[]$^\\.*/[],\\&,g' - gl_header_literal_regex=`echo 'locale.h' \ - | sed -e "$gl_make_literal_regex_sed"` - gl_absolute_header_sed="/${gl_dirsep_regex}${gl_header_literal_regex}/"'{ - s/.*"\(.*'"${gl_dirsep_regex}${gl_header_literal_regex}"'\)".*/\1/ - s|^/[^/]|//&| - p - q - }' - - gl_cv_absolute_locale_h=`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 | - sed -n "$gl_absolute_header_sed"` - - gl_header=$gl_cv_absolute_locale_h - gl_cv_next_locale_h='"'$gl_header'"' - - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_next_locale_h" >&5 -$as_echo "$gl_cv_next_locale_h" >&6; } - fi - NEXT_LOCALE_H=$gl_cv_next_locale_h - - if test $gl_cv_have_include_next = yes || test $gl_cv_have_include_next = buggy; then - # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include_next' - gl_next_as_first_directive='<'locale.h'>' - else - # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include' - gl_next_as_first_directive=$gl_cv_next_locale_h - fi - NEXT_AS_FIRST_DIRECTIVE_LOCALE_H=$gl_next_as_first_directive - - - - - - - - - - - - - - if test $REPLACE_STRUCT_LCONV = 1; then - REPLACE_LOCALECONV=1 - fi - - if test $REPLACE_LOCALECONV = 1; then - - - - - - - - - gl_LIBOBJS="$gl_LIBOBJS localeconv.$ac_objext" - - - ac_fn_c_check_member "$LINENO" "struct lconv" "decimal_point" "ac_cv_member_struct_lconv_decimal_point" "#include -" -if test "x$ac_cv_member_struct_lconv_decimal_point" = xyes; then : - -cat >>confdefs.h <<_ACEOF -#define HAVE_STRUCT_LCONV_DECIMAL_POINT 1 -_ACEOF - - -fi - - - fi - - - - - - GNULIB_LOCALECONV=1 - - - - - -$as_echo "#define GNULIB_TEST_LOCALECONV 1" >>confdefs.h - - - - - - if test "$gl_threads_api" = posix; then - # OSF/1 4.0 and Mac OS X 10.1 lack the pthread_rwlock_t type and the - # pthread_rwlock_* functions. - has_rwlock=false - ac_fn_c_check_type "$LINENO" "pthread_rwlock_t" "ac_cv_type_pthread_rwlock_t" "#include -" -if test "x$ac_cv_type_pthread_rwlock_t" = xyes; then : - has_rwlock=true - -$as_echo "#define HAVE_PTHREAD_RWLOCK 1" >>confdefs.h - -fi - - if $has_rwlock; then - - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether pthread_rwlock_rdlock prefers a writer to a reader" >&5 -$as_echo_n "checking whether pthread_rwlock_rdlock prefers a writer to a reader... " >&6; } -if ${gl_cv_pthread_rwlock_rdlock_prefer_writer+:} false; then : - $as_echo_n "(cached) " >&6 -else - save_LIBS="$LIBS" - LIBS="$LIBS $LIBMULTITHREAD" - if test "$cross_compiling" = yes; then : - gl_cv_pthread_rwlock_rdlock_prefer_writer="guessing yes" -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -#include -#include -#include -#include - -#define SUCCEED() exit (0) -#define FAILURE() exit (1) -#define UNEXPECTED(n) (exit (10 + (n))) - -/* The main thread creates the waiting writer and the requesting reader threads - in the default way; this guarantees that they have the same priority. - We can reuse the main thread as first reader thread. */ - -static pthread_rwlock_t lock; -static pthread_t reader1; -static pthread_t writer; -static pthread_t reader2; -static pthread_t timer; -/* Used to pass control from writer to reader2 and from reader2 to timer, - as in a relay race. - Passing control from one running thread to another running thread - is most likely faster than to create the second thread. */ -static pthread_mutex_t baton; - -static void * -timer_func (void *ignored) -{ - /* Step 13 (can be before or after step 12): - The timer thread takes the baton, then waits a moment to make sure - it can tell whether the second reader thread is blocked at step 12. */ - if (pthread_mutex_lock (&baton)) - UNEXPECTED (13); - usleep (100000); - /* By the time we get here, it's clear that the second reader thread is - blocked at step 12. This is the desired behaviour. */ - SUCCEED (); -} - -static void * -reader2_func (void *ignored) -{ - int err; - - /* Step 8 (can be before or after step 7): - The second reader thread takes the baton, then waits a moment to make sure - the writer thread has reached step 7. */ - if (pthread_mutex_lock (&baton)) - UNEXPECTED (8); - usleep (100000); - /* Step 9: The second reader thread requests the lock. */ - err = pthread_rwlock_tryrdlock (&lock); - if (err == 0) - FAILURE (); - else if (err != EBUSY) - UNEXPECTED (9); - /* Step 10: Launch a timer, to test whether the next call blocks. */ - if (pthread_create (&timer, NULL, timer_func, NULL)) - UNEXPECTED (10); - /* Step 11: Release the baton. */ - if (pthread_mutex_unlock (&baton)) - UNEXPECTED (11); - /* Step 12: The second reader thread requests the lock. */ - err = pthread_rwlock_rdlock (&lock); - if (err == 0) - FAILURE (); - else - UNEXPECTED (12); -} - -static void * -writer_func (void *ignored) -{ - /* Step 4: Take the baton, so that the second reader thread does not go ahead - too early. */ - if (pthread_mutex_lock (&baton)) - UNEXPECTED (4); - /* Step 5: Create the second reader thread. */ - if (pthread_create (&reader2, NULL, reader2_func, NULL)) - UNEXPECTED (5); - /* Step 6: Release the baton. */ - if (pthread_mutex_unlock (&baton)) - UNEXPECTED (6); - /* Step 7: The writer thread requests the lock. */ - if (pthread_rwlock_wrlock (&lock)) - UNEXPECTED (7); - return NULL; -} - -int -main () -{ - reader1 = pthread_self (); - - /* Step 1: The main thread initializes the lock and the baton. */ - if (pthread_rwlock_init (&lock, NULL)) - UNEXPECTED (1); - if (pthread_mutex_init (&baton, NULL)) - UNEXPECTED (1); - /* Step 2: The main thread acquires the lock as a reader. */ - if (pthread_rwlock_rdlock (&lock)) - UNEXPECTED (2); - /* Step 3: Create the writer thread. */ - if (pthread_create (&writer, NULL, writer_func, NULL)) - UNEXPECTED (3); - /* Job done. Go to sleep. */ - for (;;) - { - sleep (1); - } -} - -_ACEOF -if ac_fn_c_try_run "$LINENO"; then : - gl_cv_pthread_rwlock_rdlock_prefer_writer=yes -else - gl_cv_pthread_rwlock_rdlock_prefer_writer=no -fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext -fi - - LIBS="$save_LIBS" - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_pthread_rwlock_rdlock_prefer_writer" >&5 -$as_echo "$gl_cv_pthread_rwlock_rdlock_prefer_writer" >&6; } - case "$gl_cv_pthread_rwlock_rdlock_prefer_writer" in - *yes) - -$as_echo "#define HAVE_PTHREAD_RWLOCK_RDLOCK_PREFER_WRITER 1" >>confdefs.h - - ;; - esac - - fi - # glibc defines PTHREAD_MUTEX_RECURSIVE as enum, not as a macro. - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - - #include -int -main (void) -{ - -#if __FreeBSD__ == 4 -error "No, in FreeBSD 4.0 recursive mutexes actually don't work." -#elif (defined __ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__ \ - && __ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__ < 1070) -error "No, in Mac OS X < 10.7 recursive mutexes actually don't work." -#else -int x = (int)PTHREAD_MUTEX_RECURSIVE; -return !x; -#endif - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - -$as_echo "#define HAVE_PTHREAD_MUTEX_RECURSIVE 1" >>confdefs.h - -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - fi - : - - - -cat >>confdefs.h <<_ACEOF -#define GNULIB_LOCK 1 -_ACEOF - - - - - - for ac_header in stdlib.h -do : - ac_fn_c_check_header_mongrel "$LINENO" "stdlib.h" "ac_cv_header_stdlib_h" "$ac_includes_default" -if test "x$ac_cv_header_stdlib_h" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_STDLIB_H 1 -_ACEOF - -fi - -done - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for GNU libc compatible malloc" >&5 -$as_echo_n "checking for GNU libc compatible malloc... " >&6; } -if ${ac_cv_func_malloc_0_nonnull+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test "$cross_compiling" = yes; then : - case "$host_os" in - # Guess yes on platforms where we know the result. - *-gnu* | gnu* | freebsd* | netbsd* | openbsd* \ - | hpux* | solaris* | cygwin* | mingw*) - ac_cv_func_malloc_0_nonnull=yes ;; - # If we don't know, assume the worst. - *) ac_cv_func_malloc_0_nonnull=no ;; - esac - -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#if defined STDC_HEADERS || defined HAVE_STDLIB_H - # include - #else - char *malloc (); - #endif - -int -main (void) -{ -char *p = malloc (0); - int result = !p; - free (p); - return result; - ; - return 0; -} - -_ACEOF -if ac_fn_c_try_run "$LINENO"; then : - ac_cv_func_malloc_0_nonnull=yes -else - ac_cv_func_malloc_0_nonnull=no -fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext -fi - - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_func_malloc_0_nonnull" >&5 -$as_echo "$ac_cv_func_malloc_0_nonnull" >&6; } - if test $ac_cv_func_malloc_0_nonnull = yes; then : - -$as_echo "#define HAVE_MALLOC_GNU 1" >>confdefs.h - -else - $as_echo "#define HAVE_MALLOC_GNU 0" >>confdefs.h - - REPLACE_MALLOC=1 - -fi - - - if test $REPLACE_MALLOC = 1; then - - - - - - - - - gl_LIBOBJS="$gl_LIBOBJS malloc.$ac_objext" - - fi - - -cat >>confdefs.h <<_ACEOF -#define GNULIB_MALLOC_GNU 1 -_ACEOF - - - - - - if test $gl_cv_func_malloc_posix = yes; then - -$as_echo "#define HAVE_MALLOC_POSIX 1" >>confdefs.h - - else - REPLACE_MALLOC=1 - fi - - if test $REPLACE_MALLOC = 1; then - - - - - - - - - gl_LIBOBJS="$gl_LIBOBJS malloc.$ac_objext" - - fi - - - - - - GNULIB_MALLOC_POSIX=1 - - - - - -$as_echo "#define GNULIB_TEST_MALLOC_POSIX 1" >>confdefs.h - - - - - - - - - - - - - - - - - - if test $ac_cv_func_mbsinit = yes && test $ac_cv_func_mbrtowc = yes; then - - - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether mbrtowc handles incomplete characters" >&5 -$as_echo_n "checking whether mbrtowc handles incomplete characters... " >&6; } -if ${gl_cv_func_mbrtowc_incomplete_state+:} false; then : - $as_echo_n "(cached) " >&6 -else - - case "$host_os" in - # Guess no on AIX and OSF/1. - aix* | osf*) gl_cv_func_mbrtowc_incomplete_state="guessing no" ;; - # Guess yes otherwise. - *) gl_cv_func_mbrtowc_incomplete_state="guessing yes" ;; - esac - if test $LOCALE_JA != none; then - if test "$cross_compiling" = yes; then : - : -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -#include -#include -/* Tru64 with Desktop Toolkit C has a bug: must be included before - . - BSD/OS 4.0.1 has a bug: , and must be - included before . */ -#include -#include -#include -#include -int main () -{ - if (setlocale (LC_ALL, "$LOCALE_JA") != NULL) - { - const char input[] = "B\217\253\344\217\251\316er"; /* "Büßer" */ - mbstate_t state; - wchar_t wc; - - memset (&state, '\0', sizeof (mbstate_t)); - if (mbrtowc (&wc, input + 1, 1, &state) == (size_t)(-2)) - if (mbsinit (&state)) - return 2; - } - return 0; -} -_ACEOF -if ac_fn_c_try_run "$LINENO"; then : - gl_cv_func_mbrtowc_incomplete_state=yes -else - gl_cv_func_mbrtowc_incomplete_state=no -fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext -fi - - fi - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_mbrtowc_incomplete_state" >&5 -$as_echo "$gl_cv_func_mbrtowc_incomplete_state" >&6; } - - - - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether mbrtowc works as well as mbtowc" >&5 -$as_echo_n "checking whether mbrtowc works as well as mbtowc... " >&6; } -if ${gl_cv_func_mbrtowc_sanitycheck+:} false; then : - $as_echo_n "(cached) " >&6 -else - - case "$host_os" in - # Guess no on Solaris 8. - solaris2.8) gl_cv_func_mbrtowc_sanitycheck="guessing no" ;; - # Guess yes otherwise. - *) gl_cv_func_mbrtowc_sanitycheck="guessing yes" ;; - esac - if test $LOCALE_ZH_CN != none; then - if test "$cross_compiling" = yes; then : - : -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -#include -#include -#include -/* Tru64 with Desktop Toolkit C has a bug: must be included before - . - BSD/OS 4.0.1 has a bug: , and must be - included before . */ -#include -#include -#include -#include -int main () -{ - /* This fails on Solaris 8: - mbrtowc returns 2, and sets wc to 0x00F0. - mbtowc returns 4 (correct) and sets wc to 0x5EDC. */ - if (setlocale (LC_ALL, "$LOCALE_ZH_CN") != NULL) - { - char input[] = "B\250\271\201\060\211\070er"; /* "Büßer" */ - mbstate_t state; - wchar_t wc; - - memset (&state, '\0', sizeof (mbstate_t)); - if (mbrtowc (&wc, input + 3, 6, &state) != 4 - && mbtowc (&wc, input + 3, 6) == 4) - return 2; - } - return 0; -} -_ACEOF -if ac_fn_c_try_run "$LINENO"; then : - gl_cv_func_mbrtowc_sanitycheck=yes -else - gl_cv_func_mbrtowc_sanitycheck=no -fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext -fi - - fi - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_mbrtowc_sanitycheck" >&5 -$as_echo "$gl_cv_func_mbrtowc_sanitycheck" >&6; } - - REPLACE_MBSTATE_T=0 - case "$gl_cv_func_mbrtowc_incomplete_state" in - *yes) ;; - *) REPLACE_MBSTATE_T=1 ;; - esac - case "$gl_cv_func_mbrtowc_sanitycheck" in - *yes) ;; - *) REPLACE_MBSTATE_T=1 ;; - esac - else - REPLACE_MBSTATE_T=1 - fi - - - - if test $ac_cv_func_mbrtowc = no; then - HAVE_MBRTOWC=0 - ac_fn_c_check_decl "$LINENO" "mbrtowc" "ac_cv_have_decl_mbrtowc" " -/* Tru64 with Desktop Toolkit C has a bug: must be included before - . - BSD/OS 4.0.1 has a bug: , and must be - included before . */ -#include -#include -#include -#include - -" -if test "x$ac_cv_have_decl_mbrtowc" = xyes; then : - ac_have_decl=1 -else - ac_have_decl=0 -fi - -cat >>confdefs.h <<_ACEOF -#define HAVE_DECL_MBRTOWC $ac_have_decl -_ACEOF - - if test $ac_cv_have_decl_mbrtowc = yes; then - REPLACE_MBRTOWC=1 - fi - else - if test $REPLACE_MBSTATE_T = 1; then - REPLACE_MBRTOWC=1 - else - - - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether mbrtowc handles a NULL pwc argument" >&5 -$as_echo_n "checking whether mbrtowc handles a NULL pwc argument... " >&6; } -if ${gl_cv_func_mbrtowc_null_arg1+:} false; then : - $as_echo_n "(cached) " >&6 -else - - case "$host_os" in - # Guess no on Solaris. - solaris*) gl_cv_func_mbrtowc_null_arg1="guessing no" ;; - # Guess yes otherwise. - *) gl_cv_func_mbrtowc_null_arg1="guessing yes" ;; - esac - if test $LOCALE_FR_UTF8 != none; then - if test "$cross_compiling" = yes; then : - : -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -#include -#include -#include -/* Tru64 with Desktop Toolkit C has a bug: must be included before - . - BSD/OS 4.0.1 has a bug: , and must be - included before . */ -#include -#include -#include -#include -int main () -{ - int result = 0; - - if (setlocale (LC_ALL, "$LOCALE_FR_UTF8") != NULL) - { - char input[] = "\303\237er"; - mbstate_t state; - wchar_t wc; - size_t ret; - - memset (&state, '\0', sizeof (mbstate_t)); - wc = (wchar_t) 0xBADFACE; - ret = mbrtowc (&wc, input, 5, &state); - if (ret != 2) - result |= 1; - if (!mbsinit (&state)) - result |= 2; - - memset (&state, '\0', sizeof (mbstate_t)); - ret = mbrtowc (NULL, input, 5, &state); - if (ret != 2) /* Solaris 7 fails here: ret is -1. */ - result |= 4; - if (!mbsinit (&state)) - result |= 8; - } - return result; -} -_ACEOF -if ac_fn_c_try_run "$LINENO"; then : - gl_cv_func_mbrtowc_null_arg1=yes -else - gl_cv_func_mbrtowc_null_arg1=no -fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext -fi - - fi - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_mbrtowc_null_arg1" >&5 -$as_echo "$gl_cv_func_mbrtowc_null_arg1" >&6; } - - - - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether mbrtowc handles a NULL string argument" >&5 -$as_echo_n "checking whether mbrtowc handles a NULL string argument... " >&6; } -if ${gl_cv_func_mbrtowc_null_arg2+:} false; then : - $as_echo_n "(cached) " >&6 -else - - case "$host_os" in - # Guess no on OSF/1. - osf*) gl_cv_func_mbrtowc_null_arg2="guessing no" ;; - # Guess yes otherwise. - *) gl_cv_func_mbrtowc_null_arg2="guessing yes" ;; - esac - if test $LOCALE_FR_UTF8 != none; then - if test "$cross_compiling" = yes; then : - : -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -#include -#include -/* Tru64 with Desktop Toolkit C has a bug: must be included before - . - BSD/OS 4.0.1 has a bug: , and must be - included before . */ -#include -#include -#include -#include -int main () -{ - if (setlocale (LC_ALL, "$LOCALE_FR_UTF8") != NULL) - { - mbstate_t state; - wchar_t wc; - int ret; - - memset (&state, '\0', sizeof (mbstate_t)); - wc = (wchar_t) 0xBADFACE; - mbrtowc (&wc, NULL, 5, &state); - /* Check that wc was not modified. */ - if (wc != (wchar_t) 0xBADFACE) - return 2; - } - return 0; -} -_ACEOF -if ac_fn_c_try_run "$LINENO"; then : - gl_cv_func_mbrtowc_null_arg2=yes -else - gl_cv_func_mbrtowc_null_arg2=no -fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext -fi - - fi - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_mbrtowc_null_arg2" >&5 -$as_echo "$gl_cv_func_mbrtowc_null_arg2" >&6; } - - - - - - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether mbrtowc has a correct return value" >&5 -$as_echo_n "checking whether mbrtowc has a correct return value... " >&6; } -if ${gl_cv_func_mbrtowc_retval+:} false; then : - $as_echo_n "(cached) " >&6 -else - - case "$host_os" in - # Guess no on HP-UX, Solaris, native Windows. - hpux* | solaris* | mingw*) gl_cv_func_mbrtowc_retval="guessing no" ;; - # Guess yes otherwise. - *) gl_cv_func_mbrtowc_retval="guessing yes" ;; - esac - if test $LOCALE_FR_UTF8 != none || test $LOCALE_JA != none \ - || { case "$host_os" in mingw*) true;; *) false;; esac; }; then - if test "$cross_compiling" = yes; then : - : -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -#include -#include -/* Tru64 with Desktop Toolkit C has a bug: must be included before - . - BSD/OS 4.0.1 has a bug: , and must be - included before . */ -#include -#include -#include -#include -int main () -{ - int result = 0; - int found_some_locale = 0; - /* This fails on Solaris. */ - if (setlocale (LC_ALL, "$LOCALE_FR_UTF8") != NULL) - { - char input[] = "B\303\274\303\237er"; /* "Büßer" */ - mbstate_t state; - wchar_t wc; - - memset (&state, '\0', sizeof (mbstate_t)); - if (mbrtowc (&wc, input + 1, 1, &state) == (size_t)(-2)) - { - input[1] = '\0'; - if (mbrtowc (&wc, input + 2, 5, &state) != 1) - result |= 1; - } - found_some_locale = 1; - } - /* This fails on HP-UX 11.11. */ - if (setlocale (LC_ALL, "$LOCALE_JA") != NULL) - { - char input[] = "B\217\253\344\217\251\316er"; /* "Büßer" */ - mbstate_t state; - wchar_t wc; - - memset (&state, '\0', sizeof (mbstate_t)); - if (mbrtowc (&wc, input + 1, 1, &state) == (size_t)(-2)) - { - input[1] = '\0'; - if (mbrtowc (&wc, input + 2, 5, &state) != 2) - result |= 2; - } - found_some_locale = 1; - } - /* This fails on native Windows. */ - if (setlocale (LC_ALL, "Japanese_Japan.932") != NULL) - { - char input[] = "<\223\372\226\173\214\352>"; /* "<日本語>" */ - mbstate_t state; - wchar_t wc; - - memset (&state, '\0', sizeof (mbstate_t)); - if (mbrtowc (&wc, input + 3, 1, &state) == (size_t)(-2)) - { - input[3] = '\0'; - if (mbrtowc (&wc, input + 4, 4, &state) != 1) - result |= 4; - } - found_some_locale = 1; - } - if (setlocale (LC_ALL, "Chinese_Taiwan.950") != NULL) - { - char input[] = "<\244\351\245\273\273\171>"; /* "<日本語>" */ - mbstate_t state; - wchar_t wc; - - memset (&state, '\0', sizeof (mbstate_t)); - if (mbrtowc (&wc, input + 3, 1, &state) == (size_t)(-2)) - { - input[3] = '\0'; - if (mbrtowc (&wc, input + 4, 4, &state) != 1) - result |= 8; - } - found_some_locale = 1; - } - if (setlocale (LC_ALL, "Chinese_China.936") != NULL) - { - char input[] = "<\310\325\261\276\325\132>"; /* "<日本語>" */ - mbstate_t state; - wchar_t wc; - - memset (&state, '\0', sizeof (mbstate_t)); - if (mbrtowc (&wc, input + 3, 1, &state) == (size_t)(-2)) - { - input[3] = '\0'; - if (mbrtowc (&wc, input + 4, 4, &state) != 1) - result |= 16; - } - found_some_locale = 1; - } - return (found_some_locale ? result : 77); -} -_ACEOF -if ac_fn_c_try_run "$LINENO"; then : - gl_cv_func_mbrtowc_retval=yes -else - if test $? != 77; then - gl_cv_func_mbrtowc_retval=no - fi - -fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext -fi - - fi - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_mbrtowc_retval" >&5 -$as_echo "$gl_cv_func_mbrtowc_retval" >&6; } - - - - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether mbrtowc returns 0 when parsing a NUL character" >&5 -$as_echo_n "checking whether mbrtowc returns 0 when parsing a NUL character... " >&6; } -if ${gl_cv_func_mbrtowc_nul_retval+:} false; then : - $as_echo_n "(cached) " >&6 -else - - case "$host_os" in - # Guess no on Solaris 8 and 9. - solaris2.[89]) gl_cv_func_mbrtowc_nul_retval="guessing no" ;; - # Guess yes otherwise. - *) gl_cv_func_mbrtowc_nul_retval="guessing yes" ;; - esac - if test $LOCALE_ZH_CN != none; then - if test "$cross_compiling" = yes; then : - : -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -#include -#include -/* Tru64 with Desktop Toolkit C has a bug: must be included before - . - BSD/OS 4.0.1 has a bug: , and must be - included before . */ -#include -#include -#include -#include -int main () -{ - /* This fails on Solaris 8 and 9. */ - if (setlocale (LC_ALL, "$LOCALE_ZH_CN") != NULL) - { - mbstate_t state; - wchar_t wc; - - memset (&state, '\0', sizeof (mbstate_t)); - if (mbrtowc (&wc, "", 1, &state) != 0) - return 2; - } - return 0; -} -_ACEOF -if ac_fn_c_try_run "$LINENO"; then : - gl_cv_func_mbrtowc_nul_retval=yes -else - gl_cv_func_mbrtowc_nul_retval=no -fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext -fi - - fi - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_mbrtowc_nul_retval" >&5 -$as_echo "$gl_cv_func_mbrtowc_nul_retval" >&6; } - - - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether mbrtowc works on empty input" >&5 -$as_echo_n "checking whether mbrtowc works on empty input... " >&6; } -if ${gl_cv_func_mbrtowc_empty_input+:} false; then : - $as_echo_n "(cached) " >&6 -else - - case "$host_os" in - # Guess no on AIX and glibc systems. - aix* | *-gnu* | gnu*) gl_cv_func_mbrtowc_empty_input="guessing no" ;; - # Guess yes on native Windows. - mingw*) gl_cv_func_mbrtowc_empty_input="guessing yes" ;; - *) gl_cv_func_mbrtowc_empty_input="guessing yes" ;; - esac - if test "$cross_compiling" = yes; then : - : -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - - #include - static wchar_t wc; - static mbstate_t mbs; - int - main (void) - { - return mbrtowc (&wc, "", 0, &mbs) != (size_t) -2; - } -_ACEOF -if ac_fn_c_try_run "$LINENO"; then : - gl_cv_func_mbrtowc_empty_input=yes -else - gl_cv_func_mbrtowc_empty_input=no -fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext -fi - - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_mbrtowc_empty_input" >&5 -$as_echo "$gl_cv_func_mbrtowc_empty_input" >&6; } - - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the C locale is free of encoding errors" >&5 -$as_echo_n "checking whether the C locale is free of encoding errors... " >&6; } -if ${gl_cv_C_locale_sans_EILSEQ+:} false; then : - $as_echo_n "(cached) " >&6 -else - - gl_cv_C_locale_sans_EILSEQ="guessing no" - - if test "$cross_compiling" = yes; then : - case "$host_os" in - # Guess yes on native Windows. - mingw*) gl_cv_C_locale_sans_EILSEQ="guessing yes" ;; - esac - -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include - #include - #include - -int -main (void) -{ - - int i; - char *locale = setlocale (LC_ALL, "C"); - if (! locale) - return 2; - for (i = CHAR_MIN; i <= CHAR_MAX; i++) - { - char c = i; - wchar_t wc; - mbstate_t mbs = { 0, }; - size_t ss = mbrtowc (&wc, &c, 1, &mbs); - if (1 < ss) - return 3; - } - return 0; - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_run "$LINENO"; then : - gl_cv_C_locale_sans_EILSEQ=yes -else - gl_cv_C_locale_sans_EILSEQ=no -fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext -fi - - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_C_locale_sans_EILSEQ" >&5 -$as_echo "$gl_cv_C_locale_sans_EILSEQ" >&6; } - - case "$gl_cv_func_mbrtowc_null_arg1" in - *yes) ;; - *) -$as_echo "#define MBRTOWC_NULL_ARG1_BUG 1" >>confdefs.h - - REPLACE_MBRTOWC=1 - ;; - esac - case "$gl_cv_func_mbrtowc_null_arg2" in - *yes) ;; - *) -$as_echo "#define MBRTOWC_NULL_ARG2_BUG 1" >>confdefs.h - - REPLACE_MBRTOWC=1 - ;; - esac - case "$gl_cv_func_mbrtowc_retval" in - *yes) ;; - *) -$as_echo "#define MBRTOWC_RETVAL_BUG 1" >>confdefs.h - - REPLACE_MBRTOWC=1 - ;; - esac - case "$gl_cv_func_mbrtowc_nul_retval" in - *yes) ;; - *) -$as_echo "#define MBRTOWC_NUL_RETVAL_BUG 1" >>confdefs.h - - REPLACE_MBRTOWC=1 - ;; - esac - case "$gl_cv_func_mbrtowc_empty_input" in - *yes) ;; - *) -$as_echo "#define MBRTOWC_EMPTY_INPUT_BUG 1" >>confdefs.h - - REPLACE_MBRTOWC=1 - ;; - esac - case $gl_cv_C_locale_sans_EILSEQ in - *yes) ;; - *) -$as_echo "#define C_LOCALE_MAYBE_EILSEQ 1" >>confdefs.h - - REPLACE_MBRTOWC=1 - ;; - esac - fi - fi - - if test $HAVE_MBRTOWC = 0 || test $REPLACE_MBRTOWC = 1; then - - - - - - - - - gl_LIBOBJS="$gl_LIBOBJS mbrtowc.$ac_objext" - - - - : - - fi - - - - - - GNULIB_MBRTOWC=1 - - - - - -$as_echo "#define GNULIB_TEST_MBRTOWC 1" >>confdefs.h - - - - - - - - - - - - - - - if test $ac_cv_func_mbsinit = yes && test $ac_cv_func_mbrtowc = yes; then - - - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether mbrtowc handles incomplete characters" >&5 -$as_echo_n "checking whether mbrtowc handles incomplete characters... " >&6; } -if ${gl_cv_func_mbrtowc_incomplete_state+:} false; then : - $as_echo_n "(cached) " >&6 -else - - case "$host_os" in - # Guess no on AIX and OSF/1. - aix* | osf*) gl_cv_func_mbrtowc_incomplete_state="guessing no" ;; - # Guess yes otherwise. - *) gl_cv_func_mbrtowc_incomplete_state="guessing yes" ;; - esac - if test $LOCALE_JA != none; then - if test "$cross_compiling" = yes; then : - : -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -#include -#include -/* Tru64 with Desktop Toolkit C has a bug: must be included before - . - BSD/OS 4.0.1 has a bug: , and must be - included before . */ -#include -#include -#include -#include -int main () -{ - if (setlocale (LC_ALL, "$LOCALE_JA") != NULL) - { - const char input[] = "B\217\253\344\217\251\316er"; /* "Büßer" */ - mbstate_t state; - wchar_t wc; - - memset (&state, '\0', sizeof (mbstate_t)); - if (mbrtowc (&wc, input + 1, 1, &state) == (size_t)(-2)) - if (mbsinit (&state)) - return 2; - } - return 0; -} -_ACEOF -if ac_fn_c_try_run "$LINENO"; then : - gl_cv_func_mbrtowc_incomplete_state=yes -else - gl_cv_func_mbrtowc_incomplete_state=no -fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext -fi - - fi - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_mbrtowc_incomplete_state" >&5 -$as_echo "$gl_cv_func_mbrtowc_incomplete_state" >&6; } - - - - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether mbrtowc works as well as mbtowc" >&5 -$as_echo_n "checking whether mbrtowc works as well as mbtowc... " >&6; } -if ${gl_cv_func_mbrtowc_sanitycheck+:} false; then : - $as_echo_n "(cached) " >&6 -else - - case "$host_os" in - # Guess no on Solaris 8. - solaris2.8) gl_cv_func_mbrtowc_sanitycheck="guessing no" ;; - # Guess yes otherwise. - *) gl_cv_func_mbrtowc_sanitycheck="guessing yes" ;; - esac - if test $LOCALE_ZH_CN != none; then - if test "$cross_compiling" = yes; then : - : -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -#include -#include -#include -/* Tru64 with Desktop Toolkit C has a bug: must be included before - . - BSD/OS 4.0.1 has a bug: , and must be - included before . */ -#include -#include -#include -#include -int main () -{ - /* This fails on Solaris 8: - mbrtowc returns 2, and sets wc to 0x00F0. - mbtowc returns 4 (correct) and sets wc to 0x5EDC. */ - if (setlocale (LC_ALL, "$LOCALE_ZH_CN") != NULL) - { - char input[] = "B\250\271\201\060\211\070er"; /* "Büßer" */ - mbstate_t state; - wchar_t wc; - - memset (&state, '\0', sizeof (mbstate_t)); - if (mbrtowc (&wc, input + 3, 6, &state) != 4 - && mbtowc (&wc, input + 3, 6) == 4) - return 2; - } - return 0; -} -_ACEOF -if ac_fn_c_try_run "$LINENO"; then : - gl_cv_func_mbrtowc_sanitycheck=yes -else - gl_cv_func_mbrtowc_sanitycheck=no -fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext -fi - - fi - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_mbrtowc_sanitycheck" >&5 -$as_echo "$gl_cv_func_mbrtowc_sanitycheck" >&6; } - - REPLACE_MBSTATE_T=0 - case "$gl_cv_func_mbrtowc_incomplete_state" in - *yes) ;; - *) REPLACE_MBSTATE_T=1 ;; - esac - case "$gl_cv_func_mbrtowc_sanitycheck" in - *yes) ;; - *) REPLACE_MBSTATE_T=1 ;; - esac - else - REPLACE_MBSTATE_T=1 - fi - - - - if test $ac_cv_func_mbsinit = no; then - HAVE_MBSINIT=0 - ac_fn_c_check_decl "$LINENO" "mbsinit" "ac_cv_have_decl_mbsinit" " -/* Tru64 with Desktop Toolkit C has a bug: must be included before - . - BSD/OS 4.0.1 has a bug: , and must be - included before . */ -#include -#include -#include -#include - -" -if test "x$ac_cv_have_decl_mbsinit" = xyes; then : - ac_have_decl=1 -else - ac_have_decl=0 -fi - -cat >>confdefs.h <<_ACEOF -#define HAVE_DECL_MBSINIT $ac_have_decl -_ACEOF - - if test $ac_cv_have_decl_mbsinit = yes; then - REPLACE_MBSINIT=1 - fi - else - if test $REPLACE_MBSTATE_T = 1; then - REPLACE_MBSINIT=1 - else - case "$host_os" in - mingw*) REPLACE_MBSINIT=1 ;; - esac - fi - fi - - if test $HAVE_MBSINIT = 0 || test $REPLACE_MBSINIT = 1; then - - - - - - - - - gl_LIBOBJS="$gl_LIBOBJS mbsinit.$ac_objext" - - - : - - fi - - - - - - GNULIB_MBSINIT=1 - - - - - -$as_echo "#define GNULIB_TEST_MBSINIT 1" >>confdefs.h - - - - - - - - - - - - - - if test $ac_cv_func_mbsinit = yes && test $ac_cv_func_mbrtowc = yes; then - - - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether mbrtowc handles incomplete characters" >&5 -$as_echo_n "checking whether mbrtowc handles incomplete characters... " >&6; } -if ${gl_cv_func_mbrtowc_incomplete_state+:} false; then : - $as_echo_n "(cached) " >&6 -else - - case "$host_os" in - # Guess no on AIX and OSF/1. - aix* | osf*) gl_cv_func_mbrtowc_incomplete_state="guessing no" ;; - # Guess yes otherwise. - *) gl_cv_func_mbrtowc_incomplete_state="guessing yes" ;; - esac - if test $LOCALE_JA != none; then - if test "$cross_compiling" = yes; then : - : -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -#include -#include -/* Tru64 with Desktop Toolkit C has a bug: must be included before - . - BSD/OS 4.0.1 has a bug: , and must be - included before . */ -#include -#include -#include -#include -int main () -{ - if (setlocale (LC_ALL, "$LOCALE_JA") != NULL) - { - const char input[] = "B\217\253\344\217\251\316er"; /* "Büßer" */ - mbstate_t state; - wchar_t wc; - - memset (&state, '\0', sizeof (mbstate_t)); - if (mbrtowc (&wc, input + 1, 1, &state) == (size_t)(-2)) - if (mbsinit (&state)) - return 2; - } - return 0; -} -_ACEOF -if ac_fn_c_try_run "$LINENO"; then : - gl_cv_func_mbrtowc_incomplete_state=yes -else - gl_cv_func_mbrtowc_incomplete_state=no -fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext -fi - - fi - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_mbrtowc_incomplete_state" >&5 -$as_echo "$gl_cv_func_mbrtowc_incomplete_state" >&6; } - - - - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether mbrtowc works as well as mbtowc" >&5 -$as_echo_n "checking whether mbrtowc works as well as mbtowc... " >&6; } -if ${gl_cv_func_mbrtowc_sanitycheck+:} false; then : - $as_echo_n "(cached) " >&6 -else - - case "$host_os" in - # Guess no on Solaris 8. - solaris2.8) gl_cv_func_mbrtowc_sanitycheck="guessing no" ;; - # Guess yes otherwise. - *) gl_cv_func_mbrtowc_sanitycheck="guessing yes" ;; - esac - if test $LOCALE_ZH_CN != none; then - if test "$cross_compiling" = yes; then : - : -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -#include -#include -#include -/* Tru64 with Desktop Toolkit C has a bug: must be included before - . - BSD/OS 4.0.1 has a bug: , and must be - included before . */ -#include -#include -#include -#include -int main () -{ - /* This fails on Solaris 8: - mbrtowc returns 2, and sets wc to 0x00F0. - mbtowc returns 4 (correct) and sets wc to 0x5EDC. */ - if (setlocale (LC_ALL, "$LOCALE_ZH_CN") != NULL) - { - char input[] = "B\250\271\201\060\211\070er"; /* "Büßer" */ - mbstate_t state; - wchar_t wc; - - memset (&state, '\0', sizeof (mbstate_t)); - if (mbrtowc (&wc, input + 3, 6, &state) != 4 - && mbtowc (&wc, input + 3, 6) == 4) - return 2; - } - return 0; -} -_ACEOF -if ac_fn_c_try_run "$LINENO"; then : - gl_cv_func_mbrtowc_sanitycheck=yes -else - gl_cv_func_mbrtowc_sanitycheck=no -fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext -fi - - fi - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_mbrtowc_sanitycheck" >&5 -$as_echo "$gl_cv_func_mbrtowc_sanitycheck" >&6; } - - REPLACE_MBSTATE_T=0 - case "$gl_cv_func_mbrtowc_incomplete_state" in - *yes) ;; - *) REPLACE_MBSTATE_T=1 ;; - esac - case "$gl_cv_func_mbrtowc_sanitycheck" in - *yes) ;; - *) REPLACE_MBSTATE_T=1 ;; - esac - else - REPLACE_MBSTATE_T=1 - fi - - - - if test $ac_cv_func_mbsrtowcs = no; then - HAVE_MBSRTOWCS=0 - ac_fn_c_check_decl "$LINENO" "mbsrtowcs" "ac_cv_have_decl_mbsrtowcs" " -/* Tru64 with Desktop Toolkit C has a bug: must be included before - . - BSD/OS 4.0.1 has a bug: , and must be - included before . */ -#include -#include -#include -#include - -" -if test "x$ac_cv_have_decl_mbsrtowcs" = xyes; then : - ac_have_decl=1 -else - ac_have_decl=0 -fi - -cat >>confdefs.h <<_ACEOF -#define HAVE_DECL_MBSRTOWCS $ac_have_decl -_ACEOF - - if test $ac_cv_have_decl_mbsrtowcs = yes; then - REPLACE_MBSRTOWCS=1 - fi - else - if test $REPLACE_MBSTATE_T = 1; then - REPLACE_MBSRTOWCS=1 - else - - - - - - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether mbsrtowcs works" >&5 -$as_echo_n "checking whether mbsrtowcs works... " >&6; } -if ${gl_cv_func_mbsrtowcs_works+:} false; then : - $as_echo_n "(cached) " >&6 -else - - case "$host_os" in - # Guess no on HP-UX, Solaris, mingw. - hpux* | solaris* | mingw*) gl_cv_func_mbsrtowcs_works="guessing no" ;; - # Guess yes otherwise. - *) gl_cv_func_mbsrtowcs_works="guessing yes" ;; - esac - if test $LOCALE_FR != none || test $LOCALE_FR_UTF8 != none || test $LOCALE_JA != none || test $LOCALE_ZH_CN != none; then - if test "$cross_compiling" = yes; then : - : -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -#include -#include -/* Tru64 with Desktop Toolkit C has a bug: must be included before - . - BSD/OS 4.0.1 has a bug: , and must be - included before . */ -#include -#include -#include -#include -int main () -{ - int result = 0; - /* Test whether the function supports a NULL destination argument. - This fails on native Windows. */ - if (setlocale (LC_ALL, "$LOCALE_FR") != NULL) - { - const char input[] = "\337er"; - const char *src = input; - mbstate_t state; - - memset (&state, '\0', sizeof (mbstate_t)); - if (mbsrtowcs (NULL, &src, 1, &state) != 3 - || src != input) - result |= 1; - } - /* Test whether the function works when started with a conversion state - in non-initial state. This fails on HP-UX 11.11 and Solaris 10. */ - if (setlocale (LC_ALL, "$LOCALE_FR_UTF8") != NULL) - { - const char input[] = "B\303\274\303\237er"; - mbstate_t state; - - memset (&state, '\0', sizeof (mbstate_t)); - if (mbrtowc (NULL, input + 1, 1, &state) == (size_t)(-2)) - if (!mbsinit (&state)) - { - const char *src = input + 2; - if (mbsrtowcs (NULL, &src, 10, &state) != 4) - result |= 2; - } - } - if (setlocale (LC_ALL, "$LOCALE_JA") != NULL) - { - const char input[] = "<\306\374\313\334\270\354>"; - mbstate_t state; - - memset (&state, '\0', sizeof (mbstate_t)); - if (mbrtowc (NULL, input + 3, 1, &state) == (size_t)(-2)) - if (!mbsinit (&state)) - { - const char *src = input + 4; - if (mbsrtowcs (NULL, &src, 10, &state) != 3) - result |= 4; - } - } - if (setlocale (LC_ALL, "$LOCALE_ZH_CN") != NULL) - { - const char input[] = "B\250\271\201\060\211\070er"; - mbstate_t state; - - memset (&state, '\0', sizeof (mbstate_t)); - if (mbrtowc (NULL, input + 1, 1, &state) == (size_t)(-2)) - if (!mbsinit (&state)) - { - const char *src = input + 2; - if (mbsrtowcs (NULL, &src, 10, &state) != 4) - result |= 8; - } - } - return result; -} -_ACEOF -if ac_fn_c_try_run "$LINENO"; then : - gl_cv_func_mbsrtowcs_works=yes -else - gl_cv_func_mbsrtowcs_works=no -fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext -fi - - fi - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_mbsrtowcs_works" >&5 -$as_echo "$gl_cv_func_mbsrtowcs_works" >&6; } - - case "$gl_cv_func_mbsrtowcs_works" in - *yes) ;; - *) REPLACE_MBSRTOWCS=1 ;; - esac - fi - fi - - if test $HAVE_MBSRTOWCS = 0 || test $REPLACE_MBSRTOWCS = 1; then - - - - - - - - - gl_LIBOBJS="$gl_LIBOBJS mbsrtowcs.$ac_objext" - - - - - - - - - - gl_LIBOBJS="$gl_LIBOBJS mbsrtowcs-state.$ac_objext" - - - : - - fi - - - - - - GNULIB_MBSRTOWCS=1 - - - - - -$as_echo "#define GNULIB_TEST_MBSRTOWCS 1" >>confdefs.h - - - - - - - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether mbswidth is declared in " >&5 -$as_echo_n "checking whether mbswidth is declared in ... " >&6; } -if ${ac_cv_have_decl_mbswidth+:} false; then : - $as_echo_n "(cached) " >&6 -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -/* Tru64 with Desktop Toolkit C has a bug: must be included before - . - BSD/OS 4.0.1 has a bug: , and must be included - before . */ -#include -#include -#include -#include - -int -main (void) -{ - - char *p = (char *) mbswidth; - return !p; - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - ac_cv_have_decl_mbswidth=yes -else - ac_cv_have_decl_mbswidth=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_have_decl_mbswidth" >&5 -$as_echo "$ac_cv_have_decl_mbswidth" >&6; } - if test $ac_cv_have_decl_mbswidth = yes; then - ac_val=1 - else - ac_val=0 - fi - -cat >>confdefs.h <<_ACEOF -#define HAVE_DECL_MBSWIDTH_IN_WCHAR_H $ac_val -_ACEOF - - - - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for mbstate_t" >&5 -$as_echo_n "checking for mbstate_t... " >&6; } -if ${ac_cv_type_mbstate_t+:} false; then : - $as_echo_n "(cached) " >&6 -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -$ac_includes_default -/* Tru64 with Desktop Toolkit C has a bug: must be included before - . - BSD/OS 4.0.1 has a bug: , and must be - included before . */ -#include -#include -#include -#include -int -main (void) -{ -mbstate_t x; return sizeof x; - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - ac_cv_type_mbstate_t=yes -else - ac_cv_type_mbstate_t=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_type_mbstate_t" >&5 -$as_echo "$ac_cv_type_mbstate_t" >&6; } - if test $ac_cv_type_mbstate_t = yes; then - -$as_echo "#define HAVE_MBSTATE_T 1" >>confdefs.h - - else - -$as_echo "#define mbstate_t int" >>confdefs.h - - fi - - - - - - if false; then - REPLACE_MBTOWC=1 - fi - - if test $REPLACE_MBTOWC = 1; then - - - - - - - - - gl_LIBOBJS="$gl_LIBOBJS mbtowc.$ac_objext" - - - : - - fi - - - - - - GNULIB_MBTOWC=1 - - - - - -$as_echo "#define GNULIB_TEST_MBTOWC 1" >>confdefs.h - - - - - if test $HAVE_MEMCHR = 0 || test $REPLACE_MEMCHR = 1; then - - - - - - - - - gl_LIBOBJS="$gl_LIBOBJS memchr.$ac_objext" - - - for ac_header in bp-sym.h -do : - ac_fn_c_check_header_mongrel "$LINENO" "bp-sym.h" "ac_cv_header_bp_sym_h" "$ac_includes_default" -if test "x$ac_cv_header_bp_sym_h" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_BP_SYM_H 1 -_ACEOF - -fi - -done - - - fi - - - - - - GNULIB_MEMCHR=1 - - - - - -$as_echo "#define GNULIB_TEST_MEMCHR 1" >>confdefs.h - - - - - - - - - - for ac_func in mempcpy -do : - ac_fn_c_check_func "$LINENO" "mempcpy" "ac_cv_func_mempcpy" -if test "x$ac_cv_func_mempcpy" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_MEMPCPY 1 -_ACEOF - -fi -done - - if test $ac_cv_func_mempcpy = no; then - HAVE_MEMPCPY=0 - fi - - if test $HAVE_MEMPCPY = 0; then - - - - - - - - - gl_LIBOBJS="$gl_LIBOBJS mempcpy.$ac_objext" - - - : - - fi - - - - - - GNULIB_MEMPCPY=1 - - - - - -$as_echo "#define GNULIB_TEST_MEMPCPY 1" >>confdefs.h - - - - - - - - - if test $ac_cv_have_decl_memrchr = no; then - HAVE_DECL_MEMRCHR=0 - fi - - for ac_func in memrchr -do : - ac_fn_c_check_func "$LINENO" "memrchr" "ac_cv_func_memrchr" -if test "x$ac_cv_func_memrchr" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_MEMRCHR 1 -_ACEOF - -fi -done - - - if test $ac_cv_func_memrchr = no; then - - - - - - - - - gl_LIBOBJS="$gl_LIBOBJS memrchr.$ac_objext" - - : - fi - - - - - - GNULIB_MEMRCHR=1 - - - - - -$as_echo "#define GNULIB_TEST_MEMRCHR 1" >>confdefs.h - - - - - if test $HAVE_MSVC_INVALID_PARAMETER_HANDLER = 1; then - - - - - - - - - gl_LIBOBJS="$gl_LIBOBJS msvc-inval.$ac_objext" - - fi - - if test $HAVE_MSVC_INVALID_PARAMETER_HANDLER = 1; then - - - - - - - - - gl_LIBOBJS="$gl_LIBOBJS msvc-nothrow.$ac_objext" - - fi - - -cat >>confdefs.h <<_ACEOF -#define GNULIB_MSVC_NOTHROW 1 -_ACEOF - - - - - - - - if test $ac_cv_func_nl_langinfo = yes; then - # On Irix 6.5, YESEXPR is defined, but nl_langinfo(YESEXPR) is broken. - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether YESEXPR works" >&5 -$as_echo_n "checking whether YESEXPR works... " >&6; } -if ${gl_cv_func_nl_langinfo_yesexpr_works+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test "$cross_compiling" = yes; then : - - case "$host_os" in - # Guess no on irix systems. - irix*) gl_cv_func_nl_langinfo_yesexpr_works="guessing no";; - # Guess yes elsewhere. - *) gl_cv_func_nl_langinfo_yesexpr_works="guessing yes";; - esac - -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include - -int -main (void) -{ -return !*nl_langinfo(YESEXPR); - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_run "$LINENO"; then : - gl_cv_func_nl_langinfo_yesexpr_works=yes -else - gl_cv_func_nl_langinfo_yesexpr_works=no -fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext -fi - - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_nl_langinfo_yesexpr_works" >&5 -$as_echo "$gl_cv_func_nl_langinfo_yesexpr_works" >&6; } - case $gl_cv_func_nl_langinfo_yesexpr_works in - *yes) FUNC_NL_LANGINFO_YESEXPR_WORKS=1 ;; - *) FUNC_NL_LANGINFO_YESEXPR_WORKS=0 ;; - esac - -cat >>confdefs.h <<_ACEOF -#define FUNC_NL_LANGINFO_YESEXPR_WORKS $FUNC_NL_LANGINFO_YESEXPR_WORKS -_ACEOF - - if test $HAVE_LANGINFO_CODESET = 1 \ - && test $HAVE_LANGINFO_T_FMT_AMPM = 1 \ - && test $HAVE_LANGINFO_ALTMON = 1 \ - && test $HAVE_LANGINFO_ERA = 1 \ - && test $FUNC_NL_LANGINFO_YESEXPR_WORKS = 1; then - : - else - REPLACE_NL_LANGINFO=1 - -$as_echo "#define REPLACE_NL_LANGINFO 1" >>confdefs.h - - fi - else - HAVE_NL_LANGINFO=0 - fi - - if test $HAVE_NL_LANGINFO = 0 || test $REPLACE_NL_LANGINFO = 1; then - - - - - - - - - gl_LIBOBJS="$gl_LIBOBJS nl_langinfo.$ac_objext" - - fi - - - - - - GNULIB_NL_LANGINFO=1 - - - - - -$as_echo "#define GNULIB_TEST_NL_LANGINFO 1" >>confdefs.h - - - - - - - case "$host_os" in - mingw* | pw*) - REPLACE_OPEN=1 - ;; - *) - - if test "$gl_cv_macro_O_CLOEXEC" != yes; then - REPLACE_OPEN=1 - fi - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether open recognizes a trailing slash" >&5 -$as_echo_n "checking whether open recognizes a trailing slash... " >&6; } -if ${gl_cv_func_open_slash+:} false; then : - $as_echo_n "(cached) " >&6 -else - # Assume that if we have lstat, we can also check symlinks. - if test $ac_cv_func_lstat = yes; then - touch conftest.tmp - ln -s conftest.tmp conftest.lnk - fi - if test "$cross_compiling" = yes; then : - - case "$host_os" in - freebsd* | aix* | hpux* | solaris2.[0-9] | solaris2.[0-9].*) - gl_cv_func_open_slash="guessing no" ;; - *) - gl_cv_func_open_slash="guessing yes" ;; - esac - -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -#include -#if HAVE_UNISTD_H -# include -#endif -int main () -{ - int result = 0; -#if HAVE_LSTAT - if (open ("conftest.lnk/", O_RDONLY) != -1) - result |= 1; -#endif - if (open ("conftest.sl/", O_CREAT, 0600) >= 0) - result |= 2; - return result; -} -_ACEOF -if ac_fn_c_try_run "$LINENO"; then : - gl_cv_func_open_slash=yes -else - gl_cv_func_open_slash=no -fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext -fi - - rm -f conftest.sl conftest.tmp conftest.lnk - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_open_slash" >&5 -$as_echo "$gl_cv_func_open_slash" >&6; } - case "$gl_cv_func_open_slash" in - *no) - -$as_echo "#define OPEN_TRAILING_SLASH_BUG 1" >>confdefs.h - - REPLACE_OPEN=1 - ;; - esac - ;; - esac - - if test $REPLACE_OPEN = 0; then - - - - if test $ac_cv_func_fchdir = no; then - HAVE_FCHDIR=0 - fi - - if test $HAVE_FCHDIR = 0; then - REPLACE_OPEN=1 - fi - fi - - - - if test $REPLACE_OPEN = 1; then - - - - - - - - - gl_LIBOBJS="$gl_LIBOBJS open.$ac_objext" - - - - : - - fi - - - - - - GNULIB_OPEN=1 - - - - - -$as_echo "#define GNULIB_TEST_OPEN 1" >>confdefs.h - - - - - - - - - - case $ac_cv_func_openat+$gl_cv_func_lstat_dereferences_slashed_symlink+$gl_cv_macro_O_CLOEXEC in - yes+*yes+yes) - ;; - yes+*) - # Solaris 10 lacks O_CLOEXEC. - # Solaris 9 has *at functions, but uniformly mishandles trailing - # slash in all of them. - REPLACE_OPENAT=1 - ;; - *) - HAVE_OPENAT=0 - ;; - esac - - if test $HAVE_OPENAT = 0 || test $REPLACE_OPENAT = 1; then - - - - - - - - - gl_LIBOBJS="$gl_LIBOBJS openat.$ac_objext" - - - - : - - fi - - -cat >>confdefs.h <<_ACEOF -#define GNULIB_OPENAT 1 -_ACEOF - - - - - - - GNULIB_OPENAT=1 - - - - - -$as_echo "#define GNULIB_TEST_OPENAT 1" >>confdefs.h - - - - - - - ac_fn_c_check_decl "$LINENO" "program_invocation_name" "ac_cv_have_decl_program_invocation_name" "#include -" -if test "x$ac_cv_have_decl_program_invocation_name" = xyes; then : - ac_have_decl=1 -else - ac_have_decl=0 -fi - -cat >>confdefs.h <<_ACEOF -#define HAVE_DECL_PROGRAM_INVOCATION_NAME $ac_have_decl -_ACEOF - - ac_fn_c_check_decl "$LINENO" "program_invocation_short_name" "ac_cv_have_decl_program_invocation_short_name" "#include -" -if test "x$ac_cv_have_decl_program_invocation_short_name" = xyes; then : - ac_have_decl=1 -else - ac_have_decl=0 -fi - -cat >>confdefs.h <<_ACEOF -#define HAVE_DECL_PROGRAM_INVOCATION_SHORT_NAME $ac_have_decl -_ACEOF - - - - - - for ac_func in rawmemchr -do : - ac_fn_c_check_func "$LINENO" "rawmemchr" "ac_cv_func_rawmemchr" -if test "x$ac_cv_func_rawmemchr" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_RAWMEMCHR 1 -_ACEOF - -fi -done - - if test $ac_cv_func_rawmemchr = no; then - HAVE_RAWMEMCHR=0 - fi - - if test $HAVE_RAWMEMCHR = 0; then - - - - - - - - - gl_LIBOBJS="$gl_LIBOBJS rawmemchr.$ac_objext" - - : - fi - - - - - - GNULIB_RAWMEMCHR=1 - - - - - -$as_echo "#define GNULIB_TEST_RAWMEMCHR 1" >>confdefs.h - - - - - - - for ac_header in stdlib.h -do : - ac_fn_c_check_header_mongrel "$LINENO" "stdlib.h" "ac_cv_header_stdlib_h" "$ac_includes_default" -if test "x$ac_cv_header_stdlib_h" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_STDLIB_H 1 -_ACEOF - -fi - -done - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for GNU libc compatible realloc" >&5 -$as_echo_n "checking for GNU libc compatible realloc... " >&6; } -if ${ac_cv_func_realloc_0_nonnull+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test "$cross_compiling" = yes; then : - case "$host_os" in - # Guess yes on platforms where we know the result. - *-gnu* | gnu* | freebsd* | netbsd* | openbsd* \ - | hpux* | solaris* | cygwin* | mingw*) - ac_cv_func_realloc_0_nonnull=yes ;; - # If we don't know, assume the worst. - *) ac_cv_func_realloc_0_nonnull=no ;; - esac - -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#if defined STDC_HEADERS || defined HAVE_STDLIB_H - # include - #else - char *realloc (); - #endif - -int -main (void) -{ -char *p = realloc (0, 0); - int result = !p; - free (p); - return result; - ; - return 0; -} - -_ACEOF -if ac_fn_c_try_run "$LINENO"; then : - ac_cv_func_realloc_0_nonnull=yes -else - ac_cv_func_realloc_0_nonnull=no -fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext -fi - - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_func_realloc_0_nonnull" >&5 -$as_echo "$ac_cv_func_realloc_0_nonnull" >&6; } - if test $ac_cv_func_realloc_0_nonnull = yes; then : - -$as_echo "#define HAVE_REALLOC_GNU 1" >>confdefs.h - -else - $as_echo "#define HAVE_REALLOC_GNU 0" >>confdefs.h - - REPLACE_REALLOC=1 - -fi - - - if test $REPLACE_REALLOC = 1; then - - - - - - - - - gl_LIBOBJS="$gl_LIBOBJS realloc.$ac_objext" - - fi - - -cat >>confdefs.h <<_ACEOF -#define GNULIB_REALLOC_GNU 1 -_ACEOF - - - - - - if test $gl_cv_func_malloc_posix = yes; then - -$as_echo "#define HAVE_REALLOC_POSIX 1" >>confdefs.h - - else - REPLACE_REALLOC=1 - fi - - if test $REPLACE_REALLOC = 1; then - - - - - - - - - gl_LIBOBJS="$gl_LIBOBJS realloc.$ac_objext" - - fi - - - - - - GNULIB_REALLOC_POSIX=1 - - - - - -$as_echo "#define GNULIB_TEST_REALLOC_POSIX 1" >>confdefs.h - - - - - -# Check whether --with-included-regex was given. -if test "${with_included_regex+set}" = set; then : - withval=$with_included_regex; -fi - - - case $with_included_regex in #( - yes|no) ac_use_included_regex=$with_included_regex - ;; - '') - # If the system regex support is good enough that it passes the - # following run test, then default to *not* using the included regex.c. - # If cross compiling, assume the test would fail and use the included - # regex.c. - - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for working re_compile_pattern" >&5 -$as_echo_n "checking for working re_compile_pattern... " >&6; } -if ${gl_cv_func_re_compile_pattern_working+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test "$cross_compiling" = yes; then : - case "$host_os" in - # Guess no on native Windows. - mingw*) gl_cv_func_re_compile_pattern_working="guessing no" ;; - # Otherwise, assume it is not working. - *) gl_cv_func_re_compile_pattern_working="guessing no" ;; - esac - -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include - - #include - #include - #include - - #if defined M_CHECK_ACTION || HAVE_DECL_ALARM - # include - # include - #endif - - #if HAVE_MALLOC_H - # include - #endif - - #ifdef M_CHECK_ACTION - /* Exit with distinguishable exit code. */ - static void sigabrt_no_core (int sig) { raise (SIGTERM); } - #endif - -int -main (void) -{ -int result = 0; - static struct re_pattern_buffer regex; - unsigned char folded_chars[UCHAR_MAX + 1]; - int i; - const char *s; - struct re_registers regs; - - /* Some builds of glibc go into an infinite loop on this - test. Use alarm to force death, and mallopt to avoid - malloc recursion in diagnosing the corrupted heap. */ -#if HAVE_DECL_ALARM - signal (SIGALRM, SIG_DFL); - alarm (2); -#endif -#ifdef M_CHECK_ACTION - signal (SIGABRT, sigabrt_no_core); - mallopt (M_CHECK_ACTION, 2); -#endif - - if (setlocale (LC_ALL, "en_US.UTF-8")) - { - { - /* https://sourceware.org/ml/libc-hacker/2006-09/msg00008.html - This test needs valgrind to catch the bug on Debian - GNU/Linux 3.1 x86, but it might catch the bug better - on other platforms and it shouldn't hurt to try the - test here. */ - static char const pat[] = "insert into"; - static char const data[] = - "\xFF\0\x12\xA2\xAA\xC4\xB1,K\x12\xC4\xB1*\xACK"; - re_set_syntax (RE_SYNTAX_GREP | RE_HAT_LISTS_NOT_NEWLINE - | RE_ICASE); - memset (®ex, 0, sizeof regex); - s = re_compile_pattern (pat, sizeof pat - 1, ®ex); - if (s) - result |= 1; - else if (re_search (®ex, data, sizeof data - 1, - 0, sizeof data - 1, ®s) - != -1) - result |= 1; - regfree (®ex); - } - - { - /* This test is from glibc bug 15078. - The test case is from Andreas Schwab in - . - */ - static char const pat[] = "[^x]x"; - static char const data[] = - /* */ - "\xe1\x80\x80" - "\xe1\x80\xbb" - "\xe1\x80\xbd" - "\xe1\x80\x94" - "\xe1\x80\xba" - "\xe1\x80\xaf" - "\xe1\x80\x95" - "\xe1\x80\xba" - "x"; - re_set_syntax (0); - memset (®ex, 0, sizeof regex); - s = re_compile_pattern (pat, sizeof pat - 1, ®ex); - if (s) - result |= 1; - else - { - i = re_search (®ex, data, sizeof data - 1, - 0, sizeof data - 1, 0); - if (i != 0 && i != 21) - result |= 1; - } - regfree (®ex); - } - - if (! setlocale (LC_ALL, "C")) - return 1; - } - - /* This test is from glibc bug 3957, reported by Andrew Mackey. */ - re_set_syntax (RE_SYNTAX_EGREP | RE_HAT_LISTS_NOT_NEWLINE); - memset (®ex, 0, sizeof regex); - s = re_compile_pattern ("a[^x]b", 6, ®ex); - if (s) - result |= 2; - /* This should fail, but succeeds for glibc-2.5. */ - else if (re_search (®ex, "a\nb", 3, 0, 3, ®s) != -1) - result |= 2; - - /* This regular expression is from Spencer ere test number 75 - in grep-2.3. */ - re_set_syntax (RE_SYNTAX_POSIX_EGREP); - memset (®ex, 0, sizeof regex); - for (i = 0; i <= UCHAR_MAX; i++) - folded_chars[i] = i; - regex.translate = folded_chars; - s = re_compile_pattern ("a[[:]:]]b\n", 11, ®ex); - /* This should fail with _Invalid character class name_ error. */ - if (!s) - result |= 4; - - /* Ensure that [b-a] is diagnosed as invalid, when - using RE_NO_EMPTY_RANGES. */ - re_set_syntax (RE_SYNTAX_POSIX_EGREP | RE_NO_EMPTY_RANGES); - memset (®ex, 0, sizeof regex); - s = re_compile_pattern ("a[b-a]", 6, ®ex); - if (s == 0) - result |= 8; - - /* This should succeed, but does not for glibc-2.1.3. */ - memset (®ex, 0, sizeof regex); - s = re_compile_pattern ("{1", 2, ®ex); - if (s) - result |= 8; - - /* The following example is derived from a problem report - against gawk from Jorge Stolfi . */ - memset (®ex, 0, sizeof regex); - s = re_compile_pattern ("[an\371]*n", 7, ®ex); - if (s) - result |= 8; - /* This should match, but does not for glibc-2.2.1. */ - else if (re_match (®ex, "an", 2, 0, ®s) != 2) - result |= 8; - - memset (®ex, 0, sizeof regex); - s = re_compile_pattern ("x", 1, ®ex); - if (s) - result |= 8; - /* glibc-2.2.93 does not work with a negative RANGE argument. */ - else if (re_search (®ex, "wxy", 3, 2, -2, ®s) != 1) - result |= 8; - - /* The version of regex.c in older versions of gnulib - ignored RE_ICASE. Detect that problem too. */ - re_set_syntax (RE_SYNTAX_EMACS | RE_ICASE); - memset (®ex, 0, sizeof regex); - s = re_compile_pattern ("x", 1, ®ex); - if (s) - result |= 16; - else if (re_search (®ex, "WXY", 3, 0, 3, ®s) < 0) - result |= 16; - - /* Catch a bug reported by Vin Shelton in - https://lists.gnu.org/r/bug-coreutils/2007-06/msg00089.html - */ - re_set_syntax (RE_SYNTAX_POSIX_BASIC - & ~RE_CONTEXT_INVALID_DUP - & ~RE_NO_EMPTY_RANGES); - memset (®ex, 0, sizeof regex); - s = re_compile_pattern ("[[:alnum:]_-]\\\\+$", 16, ®ex); - if (s) - result |= 32; - - /* REG_STARTEND was added to glibc on 2004-01-15. - Reject older versions. */ - if (! REG_STARTEND) - result |= 64; - - /* Matching with the compiled form of this regexp would provoke - an assertion failure prior to glibc-2.28: - regexec.c:1375: pop_fail_stack: Assertion 'num >= 0' failed - With glibc-2.28, compilation fails and reports the invalid - back reference. */ - re_set_syntax (RE_SYNTAX_POSIX_EGREP); - memset (®ex, 0, sizeof regex); - s = re_compile_pattern ("0|()0|\\1|0", 10, ®ex); - if (!s || strcmp (s, "Invalid back reference")) - result |= 64; - -#if 0 - /* It would be nice to reject hosts whose regoff_t values are too - narrow (including glibc on hosts with 64-bit ptrdiff_t and - 32-bit int), but we should wait until glibc implements this - feature. Otherwise, support for equivalence classes and - multibyte collation symbols would always be broken except - when compiling --without-included-regex. */ - if (sizeof (regoff_t) < sizeof (ptrdiff_t) - || sizeof (regoff_t) < sizeof (ssize_t)) - result |= 64; -#endif - - return result; - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_run "$LINENO"; then : - gl_cv_func_re_compile_pattern_working=yes -else - gl_cv_func_re_compile_pattern_working=no -fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext -fi - - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_re_compile_pattern_working" >&5 -$as_echo "$gl_cv_func_re_compile_pattern_working" >&6; } - case "$gl_cv_func_re_compile_pattern_working" in #( - *yes) ac_use_included_regex=no;; #( - *no) ac_use_included_regex=yes;; - esac - ;; - *) as_fn_error $? "Invalid value for --with-included-regex: $with_included_regex" "$LINENO" 5 - ;; - esac - - if test $ac_use_included_regex = yes; then - -$as_echo "#define _REGEX_INCLUDE_LIMITS_H 1" >>confdefs.h - - -$as_echo "#define _REGEX_LARGE_OFFSETS 1" >>confdefs.h - - -$as_echo "#define re_syntax_options rpl_re_syntax_options" >>confdefs.h - - -$as_echo "#define re_set_syntax rpl_re_set_syntax" >>confdefs.h - - -$as_echo "#define re_compile_pattern rpl_re_compile_pattern" >>confdefs.h - - -$as_echo "#define re_compile_fastmap rpl_re_compile_fastmap" >>confdefs.h - - -$as_echo "#define re_search rpl_re_search" >>confdefs.h - - -$as_echo "#define re_search_2 rpl_re_search_2" >>confdefs.h - - -$as_echo "#define re_match rpl_re_match" >>confdefs.h - - -$as_echo "#define re_match_2 rpl_re_match_2" >>confdefs.h - - -$as_echo "#define re_set_registers rpl_re_set_registers" >>confdefs.h - - -$as_echo "#define re_comp rpl_re_comp" >>confdefs.h - - -$as_echo "#define re_exec rpl_re_exec" >>confdefs.h - - -$as_echo "#define regcomp rpl_regcomp" >>confdefs.h - - -$as_echo "#define regexec rpl_regexec" >>confdefs.h - - -$as_echo "#define regerror rpl_regerror" >>confdefs.h - - -$as_echo "#define regfree rpl_regfree" >>confdefs.h - - fi - - if test $ac_use_included_regex = yes; then - - - - - - - - - gl_LIBOBJS="$gl_LIBOBJS regex.$ac_objext" - - - - - - - - - for ac_header in libintl.h -do : - ac_fn_c_check_header_mongrel "$LINENO" "libintl.h" "ac_cv_header_libintl_h" "$ac_includes_default" -if test "x$ac_cv_header_libintl_h" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_LIBINTL_H 1 -_ACEOF - -fi - -done - - - ac_fn_c_check_decl "$LINENO" "isblank" "ac_cv_have_decl_isblank" "#include -" -if test "x$ac_cv_have_decl_isblank" = xyes; then : - ac_have_decl=1 -else - ac_have_decl=0 -fi - -cat >>confdefs.h <<_ACEOF -#define HAVE_DECL_ISBLANK $ac_have_decl -_ACEOF - - - fi - - - - - for ac_header in stdint.h -do : - ac_fn_c_check_header_mongrel "$LINENO" "stdint.h" "ac_cv_header_stdint_h" "$ac_includes_default" -if test "x$ac_cv_header_stdint_h" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_STDINT_H 1 -_ACEOF - -fi - -done - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for SIZE_MAX" >&5 -$as_echo_n "checking for SIZE_MAX... " >&6; } -if ${gl_cv_size_max+:} false; then : - $as_echo_n "(cached) " >&6 -else - - gl_cv_size_max= - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -#include -#if HAVE_STDINT_H -#include -#endif -#ifdef SIZE_MAX -Found it -#endif - -_ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "Found it" >/dev/null 2>&1; then : - gl_cv_size_max=yes -fi -rm -f conftest* - - if test -z "$gl_cv_size_max"; then - if ac_fn_c_compute_int "$LINENO" "sizeof (size_t) * CHAR_BIT - 1" "size_t_bits_minus_1" "#include -#include "; then : - -else - size_t_bits_minus_1= -fi - - if ac_fn_c_compute_int "$LINENO" "sizeof (size_t) <= sizeof (unsigned int)" "fits_in_uint" "#include "; then : - -else - fits_in_uint= -fi - - if test -n "$size_t_bits_minus_1" && test -n "$fits_in_uint"; then - if test $fits_in_uint = 1; then - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include - extern size_t foo; - extern unsigned long foo; - -int -main (void) -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - fits_in_uint=0 -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - fi - if test $fits_in_uint = 1; then - gl_cv_size_max="(((1U << $size_t_bits_minus_1) - 1) * 2 + 1)" - else - gl_cv_size_max="(((1UL << $size_t_bits_minus_1) - 1) * 2 + 1)" - fi - else - gl_cv_size_max='((size_t)~(size_t)0)' - fi - fi - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_size_max" >&5 -$as_echo "$gl_cv_size_max" >&6; } - if test "$gl_cv_size_max" != yes; then - -cat >>confdefs.h <<_ACEOF -#define SIZE_MAX $gl_cv_size_max -_ACEOF - - fi - - - - - ac_fn_c_check_decl "$LINENO" "sleep" "ac_cv_have_decl_sleep" "#include -" -if test "x$ac_cv_have_decl_sleep" = xyes; then : - ac_have_decl=1 -else - ac_have_decl=0 -fi - -cat >>confdefs.h <<_ACEOF -#define HAVE_DECL_SLEEP $ac_have_decl -_ACEOF - - - if test $ac_cv_have_decl_sleep != yes; then - HAVE_SLEEP=0 - else - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for working sleep" >&5 -$as_echo_n "checking for working sleep... " >&6; } -if ${gl_cv_func_sleep_works+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test "$cross_compiling" = yes; then : - case "$host_os" in - # Guess yes on glibc systems. - *-gnu* | gnu*) gl_cv_func_sleep_works="guessing yes" ;; - # Guess no on native Windows. - mingw*) gl_cv_func_sleep_works="guessing no" ;; - # If we don't know, assume the worst. - *) gl_cv_func_sleep_works="guessing no" ;; - esac - -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -#include -#include -#include -static void -handle_alarm (int sig) -{ - if (sig != SIGALRM) - _exit (2); -} - -int -main (void) -{ - - /* Failure to compile this test due to missing alarm is okay, - since all such platforms (mingw) also lack sleep. */ - unsigned int pentecost = 50 * 24 * 60 * 60; /* 50 days. */ - unsigned int remaining; - signal (SIGALRM, handle_alarm); - alarm (1); - remaining = sleep (pentecost); - if (remaining > pentecost) - return 3; - if (remaining <= pentecost - 10) - return 4; - return 0; - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_run "$LINENO"; then : - gl_cv_func_sleep_works=yes -else - gl_cv_func_sleep_works=no -fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext -fi - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_sleep_works" >&5 -$as_echo "$gl_cv_func_sleep_works" >&6; } - case "$gl_cv_func_sleep_works" in - *yes) ;; - *) - REPLACE_SLEEP=1 - ;; - esac - fi - - if test $HAVE_SLEEP = 0 || test $REPLACE_SLEEP = 1; then - - - - - - - - - gl_LIBOBJS="$gl_LIBOBJS sleep.$ac_objext" - - fi - - - - - - GNULIB_SLEEP=1 - - - - - -$as_echo "#define GNULIB_TEST_SLEEP 1" >>confdefs.h - - - - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ssize_t" >&5 -$as_echo_n "checking for ssize_t... " >&6; } -if ${gt_cv_ssize_t+:} false; then : - $as_echo_n "(cached) " >&6 -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include -int -main (void) -{ -int x = sizeof (ssize_t *) + sizeof (ssize_t); - return !x; - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - gt_cv_ssize_t=yes -else - gt_cv_ssize_t=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gt_cv_ssize_t" >&5 -$as_echo "$gt_cv_ssize_t" >&6; } - if test $gt_cv_ssize_t = no; then - -$as_echo "#define ssize_t int" >>confdefs.h - - fi - - - - - - case "$host_os" in - mingw*) - REPLACE_STAT=1 - ;; - *) - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether stat handles trailing slashes on files" >&5 -$as_echo_n "checking whether stat handles trailing slashes on files... " >&6; } -if ${gl_cv_func_stat_file_slash+:} false; then : - $as_echo_n "(cached) " >&6 -else - touch conftest.tmp - # Assume that if we have lstat, we can also check symlinks. - if test $ac_cv_func_lstat = yes; then - ln -s conftest.tmp conftest.lnk - fi - if test "$cross_compiling" = yes; then : - case "$host_os" in - # Guess yes on Linux systems. - linux-* | linux) gl_cv_func_stat_file_slash="guessing yes" ;; - # Guess yes on glibc systems. - *-gnu* | gnu*) gl_cv_func_stat_file_slash="guessing yes" ;; - # If we don't know, assume the worst. - *) gl_cv_func_stat_file_slash="guessing no" ;; - esac - -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include - -int -main (void) -{ -int result = 0; - struct stat st; - if (!stat ("conftest.tmp/", &st)) - result |= 1; -#if HAVE_LSTAT - if (!stat ("conftest.lnk/", &st)) - result |= 2; -#endif - return result; - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_run "$LINENO"; then : - gl_cv_func_stat_file_slash=yes -else - gl_cv_func_stat_file_slash=no -fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext -fi - - rm -f conftest.tmp conftest.lnk -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_stat_file_slash" >&5 -$as_echo "$gl_cv_func_stat_file_slash" >&6; } - case $gl_cv_func_stat_file_slash in - *no) - REPLACE_STAT=1 - -$as_echo "#define REPLACE_FUNC_STAT_FILE 1" >>confdefs.h -;; - esac - case $host_os in - solaris*) - REPLACE_FSTAT=1 ;; - esac - ;; - esac - - if test $REPLACE_STAT = 1; then - - - - - - - - - gl_LIBOBJS="$gl_LIBOBJS stat.$ac_objext" - - case "$host_os" in - mingw*) - - - - - - - - - gl_LIBOBJS="$gl_LIBOBJS stat-w32.$ac_objext" - - ;; - esac - - - : - - fi - - - - - - GNULIB_STAT=1 - - - - - -$as_echo "#define GNULIB_TEST_STAT 1" >>confdefs.h - - - - - - - - ac_fn_c_check_member "$LINENO" "struct stat" "st_atim.tv_nsec" "ac_cv_member_struct_stat_st_atim_tv_nsec" "#include - #include -" -if test "x$ac_cv_member_struct_stat_st_atim_tv_nsec" = xyes; then : - -cat >>confdefs.h <<_ACEOF -#define HAVE_STRUCT_STAT_ST_ATIM_TV_NSEC 1 -_ACEOF - -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether struct stat.st_atim is of type struct timespec" >&5 -$as_echo_n "checking whether struct stat.st_atim is of type struct timespec... " >&6; } -if ${ac_cv_typeof_struct_stat_st_atim_is_struct_timespec+:} false; then : - $as_echo_n "(cached) " >&6 -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - - #include - #include - #if HAVE_SYS_TIME_H - # include - #endif - #include - struct timespec ts; - struct stat st; - -int -main (void) -{ - - st.st_atim = ts; - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - ac_cv_typeof_struct_stat_st_atim_is_struct_timespec=yes -else - ac_cv_typeof_struct_stat_st_atim_is_struct_timespec=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_typeof_struct_stat_st_atim_is_struct_timespec" >&5 -$as_echo "$ac_cv_typeof_struct_stat_st_atim_is_struct_timespec" >&6; } - if test $ac_cv_typeof_struct_stat_st_atim_is_struct_timespec = yes; then - -$as_echo "#define TYPEOF_STRUCT_STAT_ST_ATIM_IS_STRUCT_TIMESPEC 1" >>confdefs.h - - fi -else - ac_fn_c_check_member "$LINENO" "struct stat" "st_atimespec.tv_nsec" "ac_cv_member_struct_stat_st_atimespec_tv_nsec" "#include - #include -" -if test "x$ac_cv_member_struct_stat_st_atimespec_tv_nsec" = xyes; then : - -cat >>confdefs.h <<_ACEOF -#define HAVE_STRUCT_STAT_ST_ATIMESPEC_TV_NSEC 1 -_ACEOF - - -else - ac_fn_c_check_member "$LINENO" "struct stat" "st_atimensec" "ac_cv_member_struct_stat_st_atimensec" "#include - #include -" -if test "x$ac_cv_member_struct_stat_st_atimensec" = xyes; then : - -cat >>confdefs.h <<_ACEOF -#define HAVE_STRUCT_STAT_ST_ATIMENSEC 1 -_ACEOF - - -else - ac_fn_c_check_member "$LINENO" "struct stat" "st_atim.st__tim.tv_nsec" "ac_cv_member_struct_stat_st_atim_st__tim_tv_nsec" "#include - #include -" -if test "x$ac_cv_member_struct_stat_st_atim_st__tim_tv_nsec" = xyes; then : - -cat >>confdefs.h <<_ACEOF -#define HAVE_STRUCT_STAT_ST_ATIM_ST__TIM_TV_NSEC 1 -_ACEOF - - -fi - -fi - -fi - -fi - - - - - - ac_fn_c_check_member "$LINENO" "struct stat" "st_birthtimespec.tv_nsec" "ac_cv_member_struct_stat_st_birthtimespec_tv_nsec" "#include - #include -" -if test "x$ac_cv_member_struct_stat_st_birthtimespec_tv_nsec" = xyes; then : - -cat >>confdefs.h <<_ACEOF -#define HAVE_STRUCT_STAT_ST_BIRTHTIMESPEC_TV_NSEC 1 -_ACEOF - - -else - ac_fn_c_check_member "$LINENO" "struct stat" "st_birthtimensec" "ac_cv_member_struct_stat_st_birthtimensec" "#include - #include -" -if test "x$ac_cv_member_struct_stat_st_birthtimensec" = xyes; then : - -cat >>confdefs.h <<_ACEOF -#define HAVE_STRUCT_STAT_ST_BIRTHTIMENSEC 1 -_ACEOF - - -else - ac_fn_c_check_member "$LINENO" "struct stat" "st_birthtim.tv_nsec" "ac_cv_member_struct_stat_st_birthtim_tv_nsec" "#include - #include -" -if test "x$ac_cv_member_struct_stat_st_birthtim_tv_nsec" = xyes; then : - -cat >>confdefs.h <<_ACEOF -#define HAVE_STRUCT_STAT_ST_BIRTHTIM_TV_NSEC 1 -_ACEOF - - -fi - -fi - -fi - - - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for working stdalign.h" >&5 -$as_echo_n "checking for working stdalign.h... " >&6; } -if ${gl_cv_header_working_stdalign_h+:} false; then : - $as_echo_n "(cached) " >&6 -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include - #include - - /* Test that alignof yields a result consistent with offsetof. - This catches GCC bug 52023 - . */ - #ifdef __cplusplus - template struct alignof_helper { char a; t b; }; - # define ao(type) offsetof (alignof_helper, b) - #else - # define ao(type) offsetof (struct { char a; type b; }, b) - #endif - char test_double[ao (double) % _Alignof (double) == 0 ? 1 : -1]; - char test_long[ao (long int) % _Alignof (long int) == 0 ? 1 : -1]; - char test_alignof[alignof (double) == _Alignof (double) ? 1 : -1]; - - /* Test _Alignas only on platforms where gnulib can help. */ - #if \ - ((defined __cplusplus && 201103 <= __cplusplus) \ - || (defined __APPLE__ && defined __MACH__ \ - ? 4 < __GNUC__ + (1 <= __GNUC_MINOR__) \ - : __GNUC__) \ - || (__ia64 && (61200 <= __HP_cc || 61200 <= __HP_aCC)) \ - || __ICC || 0x590 <= __SUNPRO_C || 0x0600 <= __xlC__ \ - || 1300 <= _MSC_VER) - struct alignas_test { char c; char alignas (8) alignas_8; }; - char test_alignas[offsetof (struct alignas_test, alignas_8) == 8 - ? 1 : -1]; - #endif - -int -main (void) -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - gl_cv_header_working_stdalign_h=yes -else - gl_cv_header_working_stdalign_h=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_header_working_stdalign_h" >&5 -$as_echo "$gl_cv_header_working_stdalign_h" >&6; } - - if test $gl_cv_header_working_stdalign_h = yes; then - STDALIGN_H='' - else - STDALIGN_H='stdalign.h' - fi - - - if test -n "$STDALIGN_H"; then - GL_GENERATE_STDALIGN_H_TRUE= - GL_GENERATE_STDALIGN_H_FALSE='#' -else - GL_GENERATE_STDALIGN_H_TRUE='#' - GL_GENERATE_STDALIGN_H_FALSE= -fi - - - - - - # Define two additional variables used in the Makefile substitution. - - if test "$ac_cv_header_stdbool_h" = yes; then - STDBOOL_H='' - else - STDBOOL_H='stdbool.h' - fi - - if test -n "$STDBOOL_H"; then - GL_GENERATE_STDBOOL_H_TRUE= - GL_GENERATE_STDBOOL_H_FALSE='#' -else - GL_GENERATE_STDBOOL_H_TRUE='#' - GL_GENERATE_STDBOOL_H_FALSE= -fi - - - if test "$ac_cv_type__Bool" = yes; then - HAVE__BOOL=1 - else - HAVE__BOOL=0 - fi - - - - - - STDDEF_H= - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for good max_align_t" >&5 -$as_echo_n "checking for good max_align_t... " >&6; } -if ${gl_cv_type_max_align_t+:} false; then : - $as_echo_n "(cached) " >&6 -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include - unsigned int s = sizeof (max_align_t); - #if defined __GNUC__ || defined __IBM__ALIGNOF__ - int check1[2 * (__alignof__ (double) <= __alignof__ (max_align_t)) - 1]; - int check2[2 * (__alignof__ (long double) <= __alignof__ (max_align_t)) - 1]; - #endif - -int -main (void) -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - gl_cv_type_max_align_t=yes -else - gl_cv_type_max_align_t=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_type_max_align_t" >&5 -$as_echo "$gl_cv_type_max_align_t" >&6; } - if test $gl_cv_type_max_align_t = no; then - HAVE_MAX_ALIGN_T=0 - STDDEF_H=stddef.h - fi - - if test $gt_cv_c_wchar_t = no; then - HAVE_WCHAR_T=0 - STDDEF_H=stddef.h - fi - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether NULL can be used in arbitrary expressions" >&5 -$as_echo_n "checking whether NULL can be used in arbitrary expressions... " >&6; } -if ${gl_cv_decl_null_works+:} false; then : - $as_echo_n "(cached) " >&6 -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include - int test[2 * (sizeof NULL == sizeof (void *)) -1]; - -int -main (void) -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - gl_cv_decl_null_works=yes -else - gl_cv_decl_null_works=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_decl_null_works" >&5 -$as_echo "$gl_cv_decl_null_works" >&6; } - if test $gl_cv_decl_null_works = no; then - REPLACE_NULL=1 - STDDEF_H=stddef.h - fi - - - if test -n "$STDDEF_H"; then - GL_GENERATE_STDDEF_H_TRUE= - GL_GENERATE_STDDEF_H_FALSE='#' -else - GL_GENERATE_STDDEF_H_TRUE='#' - GL_GENERATE_STDDEF_H_FALSE= -fi - - if test -n "$STDDEF_H"; then - - - - - - - - - if test $gl_cv_have_include_next = yes; then - gl_cv_next_stddef_h='<'stddef.h'>' - else - { $as_echo "$as_me:${as_lineno-$LINENO}: checking absolute name of " >&5 -$as_echo_n "checking absolute name of ... " >&6; } -if ${gl_cv_next_stddef_h+:} false; then : - $as_echo_n "(cached) " >&6 -else - - - - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include -_ACEOF - case "$host_os" in - aix*) gl_absname_cpp="$ac_cpp -C" ;; - *) gl_absname_cpp="$ac_cpp" ;; - esac - - case "$host_os" in - mingw*) - gl_dirsep_regex='[/\\]' - ;; - *) - gl_dirsep_regex='\/' - ;; - esac - gl_make_literal_regex_sed='s,[]$^\\.*/[],\\&,g' - gl_header_literal_regex=`echo 'stddef.h' \ - | sed -e "$gl_make_literal_regex_sed"` - gl_absolute_header_sed="/${gl_dirsep_regex}${gl_header_literal_regex}/"'{ - s/.*"\(.*'"${gl_dirsep_regex}${gl_header_literal_regex}"'\)".*/\1/ - s|^/[^/]|//&| - p - q - }' - - gl_cv_absolute_stddef_h=`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 | - sed -n "$gl_absolute_header_sed"` - - gl_header=$gl_cv_absolute_stddef_h - gl_cv_next_stddef_h='"'$gl_header'"' - - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_next_stddef_h" >&5 -$as_echo "$gl_cv_next_stddef_h" >&6; } - fi - NEXT_STDDEF_H=$gl_cv_next_stddef_h - - if test $gl_cv_have_include_next = yes || test $gl_cv_have_include_next = buggy; then - # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include_next' - gl_next_as_first_directive='<'stddef.h'>' - else - # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include' - gl_next_as_first_directive=$gl_cv_next_stddef_h - fi - NEXT_AS_FIRST_DIRECTIVE_STDDEF_H=$gl_next_as_first_directive - - - - - fi - - - - - $as_echo "#define __USE_MINGW_ANSI_STDIO 1" >>confdefs.h - - - - - - - - - - - if test $gl_cv_have_include_next = yes; then - gl_cv_next_stdio_h='<'stdio.h'>' - else - { $as_echo "$as_me:${as_lineno-$LINENO}: checking absolute name of " >&5 -$as_echo_n "checking absolute name of ... " >&6; } -if ${gl_cv_next_stdio_h+:} false; then : - $as_echo_n "(cached) " >&6 -else - - - - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include -_ACEOF - case "$host_os" in - aix*) gl_absname_cpp="$ac_cpp -C" ;; - *) gl_absname_cpp="$ac_cpp" ;; - esac - - case "$host_os" in - mingw*) - gl_dirsep_regex='[/\\]' - ;; - *) - gl_dirsep_regex='\/' - ;; - esac - gl_make_literal_regex_sed='s,[]$^\\.*/[],\\&,g' - gl_header_literal_regex=`echo 'stdio.h' \ - | sed -e "$gl_make_literal_regex_sed"` - gl_absolute_header_sed="/${gl_dirsep_regex}${gl_header_literal_regex}/"'{ - s/.*"\(.*'"${gl_dirsep_regex}${gl_header_literal_regex}"'\)".*/\1/ - s|^/[^/]|//&| - p - q - }' - - gl_cv_absolute_stdio_h=`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 | - sed -n "$gl_absolute_header_sed"` - - gl_header=$gl_cv_absolute_stdio_h - gl_cv_next_stdio_h='"'$gl_header'"' - - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_next_stdio_h" >&5 -$as_echo "$gl_cv_next_stdio_h" >&6; } - fi - NEXT_STDIO_H=$gl_cv_next_stdio_h - - if test $gl_cv_have_include_next = yes || test $gl_cv_have_include_next = buggy; then - # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include_next' - gl_next_as_first_directive='<'stdio.h'>' - else - # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include' - gl_next_as_first_directive=$gl_cv_next_stdio_h - fi - NEXT_AS_FIRST_DIRECTIVE_STDIO_H=$gl_next_as_first_directive - - - - - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking which flavor of printf attribute matches inttypes macros" >&5 -$as_echo_n "checking which flavor of printf attribute matches inttypes macros... " >&6; } -if ${gl_cv_func_printf_attribute_flavor+:} false; then : - $as_echo_n "(cached) " >&6 -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - - #define __STDC_FORMAT_MACROS 1 - #include - #include - /* For non-mingw systems, compilation will trivially succeed. - For mingw, compilation will succeed for older mingw (system - printf, "I64d") and fail for newer mingw (gnu printf, "lld"). */ - #if (defined _WIN32 && ! defined __CYGWIN__) && \ - (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 4)) - extern char PRIdMAX_probe[sizeof PRIdMAX == sizeof "I64d" ? 1 : -1]; - #endif - -int -main (void) -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - gl_cv_func_printf_attribute_flavor=system -else - gl_cv_func_printf_attribute_flavor=gnu -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_printf_attribute_flavor" >&5 -$as_echo "$gl_cv_func_printf_attribute_flavor" >&6; } - if test "$gl_cv_func_printf_attribute_flavor" = gnu; then - -$as_echo "#define GNULIB_PRINTF_ATTRIBUTE_FLAVOR_GNU 1" >>confdefs.h - - fi - - GNULIB_FSCANF=1 - - -cat >>confdefs.h <<_ACEOF -#define GNULIB_FSCANF 1 -_ACEOF - - - GNULIB_SCANF=1 - - -cat >>confdefs.h <<_ACEOF -#define GNULIB_SCANF 1 -_ACEOF - - - GNULIB_FGETC=1 - GNULIB_GETC=1 - GNULIB_GETCHAR=1 - GNULIB_FGETS=1 - GNULIB_FREAD=1 - - - GNULIB_FPRINTF=1 - GNULIB_PRINTF=1 - GNULIB_VFPRINTF=1 - GNULIB_VPRINTF=1 - GNULIB_FPUTC=1 - GNULIB_PUTC=1 - GNULIB_PUTCHAR=1 - GNULIB_FPUTS=1 - GNULIB_PUTS=1 - GNULIB_FWRITE=1 - - - - - - - - - - - - - - - - - - if test $gl_cv_have_include_next = yes; then - gl_cv_next_stdlib_h='<'stdlib.h'>' - else - { $as_echo "$as_me:${as_lineno-$LINENO}: checking absolute name of " >&5 -$as_echo_n "checking absolute name of ... " >&6; } -if ${gl_cv_next_stdlib_h+:} false; then : - $as_echo_n "(cached) " >&6 -else - - - - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include -_ACEOF - case "$host_os" in - aix*) gl_absname_cpp="$ac_cpp -C" ;; - *) gl_absname_cpp="$ac_cpp" ;; - esac - - case "$host_os" in - mingw*) - gl_dirsep_regex='[/\\]' - ;; - *) - gl_dirsep_regex='\/' - ;; - esac - gl_make_literal_regex_sed='s,[]$^\\.*/[],\\&,g' - gl_header_literal_regex=`echo 'stdlib.h' \ - | sed -e "$gl_make_literal_regex_sed"` - gl_absolute_header_sed="/${gl_dirsep_regex}${gl_header_literal_regex}/"'{ - s/.*"\(.*'"${gl_dirsep_regex}${gl_header_literal_regex}"'\)".*/\1/ - s|^/[^/]|//&| - p - q - }' - - gl_cv_absolute_stdlib_h=`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 | - sed -n "$gl_absolute_header_sed"` - - gl_header=$gl_cv_absolute_stdlib_h - gl_cv_next_stdlib_h='"'$gl_header'"' - - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_next_stdlib_h" >&5 -$as_echo "$gl_cv_next_stdlib_h" >&6; } - fi - NEXT_STDLIB_H=$gl_cv_next_stdlib_h - - if test $gl_cv_have_include_next = yes || test $gl_cv_have_include_next = buggy; then - # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include_next' - gl_next_as_first_directive='<'stdlib.h'>' - else - # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include' - gl_next_as_first_directive=$gl_cv_next_stdlib_h - fi - NEXT_AS_FIRST_DIRECTIVE_STDLIB_H=$gl_next_as_first_directive - - - - - - - - - - - - - for ac_func in strcasecmp -do : - ac_fn_c_check_func "$LINENO" "strcasecmp" "ac_cv_func_strcasecmp" -if test "x$ac_cv_func_strcasecmp" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_STRCASECMP 1 -_ACEOF - -fi -done - - if test $ac_cv_func_strcasecmp = no; then - HAVE_STRCASECMP=0 - fi - - - - for ac_func in strncasecmp -do : - ac_fn_c_check_func "$LINENO" "strncasecmp" "ac_cv_func_strncasecmp" -if test "x$ac_cv_func_strncasecmp" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_STRNCASECMP 1 -_ACEOF - -fi -done - - if test $ac_cv_func_strncasecmp = yes; then - HAVE_STRNCASECMP=1 - else - HAVE_STRNCASECMP=0 - fi - ac_fn_c_check_decl "$LINENO" "strncasecmp" "ac_cv_have_decl_strncasecmp" "$ac_includes_default" -if test "x$ac_cv_have_decl_strncasecmp" = xyes; then : - ac_have_decl=1 -else - ac_have_decl=0 -fi - -cat >>confdefs.h <<_ACEOF -#define HAVE_DECL_STRNCASECMP $ac_have_decl -_ACEOF - - if test $ac_cv_have_decl_strncasecmp = no; then - HAVE_DECL_STRNCASECMP=0 - fi - - - if test $HAVE_STRCASECMP = 0; then - - - - - - - - - gl_LIBOBJS="$gl_LIBOBJS strcasecmp.$ac_objext" - - - : - - fi - if test $HAVE_STRNCASECMP = 0; then - - - - - - - - - gl_LIBOBJS="$gl_LIBOBJS strncasecmp.$ac_objext" - - - : - - fi - - - - - for ac_func in strchrnul -do : - ac_fn_c_check_func "$LINENO" "strchrnul" "ac_cv_func_strchrnul" -if test "x$ac_cv_func_strchrnul" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_STRCHRNUL 1 -_ACEOF - -fi -done - - if test $ac_cv_func_strchrnul = no; then - HAVE_STRCHRNUL=0 - else - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether strchrnul works" >&5 -$as_echo_n "checking whether strchrnul works... " >&6; } -if ${gl_cv_func_strchrnul_works+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test "$cross_compiling" = yes; then : - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -#if defined __CYGWIN__ - #include - #if CYGWIN_VERSION_DLL_COMBINED > CYGWIN_VERSION_DLL_MAKE_COMBINED (1007, 9) - Lucky user - #endif -#else - Lucky user -#endif - -_ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "Lucky user" >/dev/null 2>&1; then : - gl_cv_func_strchrnul_works="guessing yes" -else - gl_cv_func_strchrnul_works="guessing no" -fi -rm -f conftest* - - -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -#include /* for strchrnul */ - -int -main (void) -{ -const char *buf = "a"; - return strchrnul (buf, 'b') != buf + 1; - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_run "$LINENO"; then : - gl_cv_func_strchrnul_works=yes -else - gl_cv_func_strchrnul_works=no -fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext -fi - - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_strchrnul_works" >&5 -$as_echo "$gl_cv_func_strchrnul_works" >&6; } - case "$gl_cv_func_strchrnul_works" in - *yes) ;; - *) REPLACE_STRCHRNUL=1 ;; - esac - fi - - if test $HAVE_STRCHRNUL = 0 || test $REPLACE_STRCHRNUL = 1; then - - - - - - - - - gl_LIBOBJS="$gl_LIBOBJS strchrnul.$ac_objext" - - : - fi - - - - - - GNULIB_STRCHRNUL=1 - - - - - -$as_echo "#define GNULIB_TEST_STRCHRNUL 1" >>confdefs.h - - - - - - - - if test $ac_cv_func_strdup = yes; then - if test $gl_cv_func_malloc_posix != yes; then - REPLACE_STRDUP=1 - fi - fi - - if test $ac_cv_have_decl_strdup = no; then - HAVE_DECL_STRDUP=0 - fi - - if test $ac_cv_func_strdup = no || test $REPLACE_STRDUP = 1; then - - - - - - - - - gl_LIBOBJS="$gl_LIBOBJS strdup.$ac_objext" - - : - fi - - - - - - GNULIB_STRDUP=1 - - - - - -$as_echo "#define GNULIB_TEST_STRDUP 1" >>confdefs.h - - - - - - - - - if test "$ERRNO_H:$REPLACE_STRERROR_0" = :0; then - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for working strerror function" >&5 -$as_echo_n "checking for working strerror function... " >&6; } -if ${gl_cv_func_working_strerror+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test "$cross_compiling" = yes; then : - case "$host_os" in - # Guess yes on glibc systems. - *-gnu* | gnu*) gl_cv_func_working_strerror="guessing yes" ;; - # If we don't know, assume the worst. - *) gl_cv_func_working_strerror="guessing no" ;; - esac - -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include - -int -main (void) -{ -if (!*strerror (-2)) return 1; - ; - return 0; -} -_ACEOF -if ac_fn_c_try_run "$LINENO"; then : - gl_cv_func_working_strerror=yes -else - gl_cv_func_working_strerror=no -fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext -fi - - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_working_strerror" >&5 -$as_echo "$gl_cv_func_working_strerror" >&6; } - case "$gl_cv_func_working_strerror" in - *yes) ;; - *) - REPLACE_STRERROR=1 - ;; - esac - - else - REPLACE_STRERROR=1 - fi - - if test $REPLACE_STRERROR = 1; then - - - - - - - - - gl_LIBOBJS="$gl_LIBOBJS strerror.$ac_objext" - - fi - - -cat >>confdefs.h <<_ACEOF -#define GNULIB_STRERROR 1 -_ACEOF - - - - - - - - GNULIB_STRERROR=1 - - - - - -$as_echo "#define GNULIB_TEST_STRERROR 1" >>confdefs.h - - - - - - if test -n "$ERRNO_H" || test $REPLACE_STRERROR_0 = 1; then - - - - - - - - - gl_LIBOBJS="$gl_LIBOBJS strerror-override.$ac_objext" - - - - - - if test $ac_cv_header_sys_socket_h != yes; then - for ac_header in winsock2.h -do : - ac_fn_c_check_header_mongrel "$LINENO" "winsock2.h" "ac_cv_header_winsock2_h" "$ac_includes_default" -if test "x$ac_cv_header_winsock2_h" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_WINSOCK2_H 1 -_ACEOF - -fi - -done - - fi - if test "$ac_cv_header_winsock2_h" = yes; then - HAVE_WINSOCK2_H=1 - UNISTD_H_HAVE_WINSOCK2_H=1 - SYS_IOCTL_H_HAVE_WINSOCK2_H=1 - else - HAVE_WINSOCK2_H=0 - fi - - - fi - - - - - - - - - - - - - if test $ac_cv_have_decl_strndup = no; then - HAVE_DECL_STRNDUP=0 - fi - - if test $ac_cv_func_strndup = yes; then - HAVE_STRNDUP=1 - # AIX 4.3.3, AIX 5.1 have a function that fails to add the terminating '\0'. - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for working strndup" >&5 -$as_echo_n "checking for working strndup... " >&6; } -if ${gl_cv_func_strndup_works+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test "$cross_compiling" = yes; then : - - case $host_os in - aix | aix[3-6]*) gl_cv_func_strndup_works="guessing no";; - *) gl_cv_func_strndup_works="guessing yes";; - esac - -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - - #include - #include -int -main (void) -{ - -#if !HAVE_DECL_STRNDUP - extern - #ifdef __cplusplus - "C" - #endif - char *strndup (const char *, size_t); -#endif - int result; - char *s; - s = strndup ("some longer string", 15); - free (s); - s = strndup ("shorter string", 13); - result = s[13] != '\0'; - free (s); - return result; - ; - return 0; -} -_ACEOF -if ac_fn_c_try_run "$LINENO"; then : - gl_cv_func_strndup_works=yes -else - gl_cv_func_strndup_works=no -fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext -fi - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_strndup_works" >&5 -$as_echo "$gl_cv_func_strndup_works" >&6; } - case $gl_cv_func_strndup_works in - *no) REPLACE_STRNDUP=1 ;; - esac - else - HAVE_STRNDUP=0 - fi - - if test $HAVE_STRNDUP = 0 || test $REPLACE_STRNDUP = 1; then - - - - - - - - - gl_LIBOBJS="$gl_LIBOBJS strndup.$ac_objext" - - fi - - - - - - GNULIB_STRNDUP=1 - - - - - -$as_echo "#define GNULIB_TEST_STRNDUP 1" >>confdefs.h - - - - - - - - - - if test $ac_cv_have_decl_strnlen = no; then - HAVE_DECL_STRNLEN=0 - else - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for working strnlen" >&5 -$as_echo_n "checking for working strnlen... " >&6; } -if ${ac_cv_func_strnlen_working+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test "$cross_compiling" = yes; then : - # Guess no on AIX systems, yes otherwise. - case "$host_os" in - aix*) ac_cv_func_strnlen_working=no;; - *) ac_cv_func_strnlen_working=yes;; - esac -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -$ac_includes_default -int -main (void) -{ - -#define S "foobar" -#define S_LEN (sizeof S - 1) - - /* At least one implementation is buggy: that of AIX 4.3 would - give strnlen (S, 1) == 3. */ - - int i; - for (i = 0; i < S_LEN + 1; ++i) - { - int expected = i <= S_LEN ? i : S_LEN; - if (strnlen (S, i) != expected) - return 1; - } - return 0; - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_run "$LINENO"; then : - ac_cv_func_strnlen_working=yes -else - ac_cv_func_strnlen_working=no -fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext -fi - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_func_strnlen_working" >&5 -$as_echo "$ac_cv_func_strnlen_working" >&6; } -test $ac_cv_func_strnlen_working = no && : - - - if test $ac_cv_func_strnlen_working = no; then - REPLACE_STRNLEN=1 - fi - fi - - if test $HAVE_DECL_STRNLEN = 0 || test $REPLACE_STRNLEN = 1; then - - - - - - - - - gl_LIBOBJS="$gl_LIBOBJS strnlen.$ac_objext" - - : - fi - - - - - - GNULIB_STRNLEN=1 - - - - - -$as_echo "#define GNULIB_TEST_STRNLEN 1" >>confdefs.h - - - - - - - - - - - - - - - - - - if test $gl_cv_have_include_next = yes; then - gl_cv_next_sys_stat_h='<'sys/stat.h'>' - else - { $as_echo "$as_me:${as_lineno-$LINENO}: checking absolute name of " >&5 -$as_echo_n "checking absolute name of ... " >&6; } -if ${gl_cv_next_sys_stat_h+:} false; then : - $as_echo_n "(cached) " >&6 -else - - if test $ac_cv_header_sys_stat_h = yes; then - - - - - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include -_ACEOF - case "$host_os" in - aix*) gl_absname_cpp="$ac_cpp -C" ;; - *) gl_absname_cpp="$ac_cpp" ;; - esac - - case "$host_os" in - mingw*) - gl_dirsep_regex='[/\\]' - ;; - *) - gl_dirsep_regex='\/' - ;; - esac - gl_make_literal_regex_sed='s,[]$^\\.*/[],\\&,g' - gl_header_literal_regex=`echo 'sys/stat.h' \ - | sed -e "$gl_make_literal_regex_sed"` - gl_absolute_header_sed="/${gl_dirsep_regex}${gl_header_literal_regex}/"'{ - s/.*"\(.*'"${gl_dirsep_regex}${gl_header_literal_regex}"'\)".*/\1/ - s|^/[^/]|//&| - p - q - }' - - gl_cv_absolute_sys_stat_h=`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 | - sed -n "$gl_absolute_header_sed"` - - gl_header=$gl_cv_absolute_sys_stat_h - gl_cv_next_sys_stat_h='"'$gl_header'"' - else - gl_cv_next_sys_stat_h='<'sys/stat.h'>' - fi - - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_next_sys_stat_h" >&5 -$as_echo "$gl_cv_next_sys_stat_h" >&6; } - fi - NEXT_SYS_STAT_H=$gl_cv_next_sys_stat_h - - if test $gl_cv_have_include_next = yes || test $gl_cv_have_include_next = buggy; then - # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include_next' - gl_next_as_first_directive='<'sys/stat.h'>' - else - # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include' - gl_next_as_first_directive=$gl_cv_next_sys_stat_h - fi - NEXT_AS_FIRST_DIRECTIVE_SYS_STAT_H=$gl_next_as_first_directive - - - - - - - - - WINDOWS_STAT_TIMESPEC=0 - - - - - - - - - ac_fn_c_check_type "$LINENO" "nlink_t" "ac_cv_type_nlink_t" "#include - #include -" -if test "x$ac_cv_type_nlink_t" = xyes; then : - -else - -$as_echo "#define nlink_t int" >>confdefs.h - -fi - - - - - - - - - - - - if test $ac_cv_header_sysexits_h = yes; then - HAVE_SYSEXITS_H=1 - - - - - - - - - - if test $gl_cv_have_include_next = yes; then - gl_cv_next_sysexits_h='<'sysexits.h'>' - else - { $as_echo "$as_me:${as_lineno-$LINENO}: checking absolute name of " >&5 -$as_echo_n "checking absolute name of ... " >&6; } -if ${gl_cv_next_sysexits_h+:} false; then : - $as_echo_n "(cached) " >&6 -else - - if test $ac_cv_header_sysexits_h = yes; then - - - - - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include -_ACEOF - case "$host_os" in - aix*) gl_absname_cpp="$ac_cpp -C" ;; - *) gl_absname_cpp="$ac_cpp" ;; - esac - - case "$host_os" in - mingw*) - gl_dirsep_regex='[/\\]' - ;; - *) - gl_dirsep_regex='\/' - ;; - esac - gl_make_literal_regex_sed='s,[]$^\\.*/[],\\&,g' - gl_header_literal_regex=`echo 'sysexits.h' \ - | sed -e "$gl_make_literal_regex_sed"` - gl_absolute_header_sed="/${gl_dirsep_regex}${gl_header_literal_regex}/"'{ - s/.*"\(.*'"${gl_dirsep_regex}${gl_header_literal_regex}"'\)".*/\1/ - s|^/[^/]|//&| - p - q - }' - - gl_cv_absolute_sysexits_h=`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 | - sed -n "$gl_absolute_header_sed"` - - gl_header=$gl_cv_absolute_sysexits_h - gl_cv_next_sysexits_h='"'$gl_header'"' - else - gl_cv_next_sysexits_h='<'sysexits.h'>' - fi - - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_next_sysexits_h" >&5 -$as_echo "$gl_cv_next_sysexits_h" >&6; } - fi - NEXT_SYSEXITS_H=$gl_cv_next_sysexits_h - - if test $gl_cv_have_include_next = yes || test $gl_cv_have_include_next = buggy; then - # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include_next' - gl_next_as_first_directive='<'sysexits.h'>' - else - # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include' - gl_next_as_first_directive=$gl_cv_next_sysexits_h - fi - NEXT_AS_FIRST_DIRECTIVE_SYSEXITS_H=$gl_next_as_first_directive - - - - - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include -int -main (void) -{ -switch (0) - { - case EX_OK: - case EX_USAGE: - case EX_DATAERR: - case EX_NOINPUT: - case EX_NOUSER: - case EX_NOHOST: - case EX_UNAVAILABLE: - case EX_SOFTWARE: - case EX_OSERR: - case EX_OSFILE: - case EX_CANTCREAT: - case EX_IOERR: - case EX_TEMPFAIL: - case EX_PROTOCOL: - case EX_NOPERM: - case EX_CONFIG: - break; - } - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - SYSEXITS_H= -else - SYSEXITS_H=sysexits.h -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - else - HAVE_SYSEXITS_H=0 - SYSEXITS_H=sysexits.h - fi - - - if test -n "$SYSEXITS_H"; then - GL_GENERATE_SYSEXITS_H_TRUE= - GL_GENERATE_SYSEXITS_H_FALSE='#' -else - GL_GENERATE_SYSEXITS_H_TRUE='#' - GL_GENERATE_SYSEXITS_H_FALSE= -fi - - - - - - - - - - - - - - - - - - - - - - if test $gl_cv_have_include_next = yes; then - gl_cv_next_unistd_h='<'unistd.h'>' - else - { $as_echo "$as_me:${as_lineno-$LINENO}: checking absolute name of " >&5 -$as_echo_n "checking absolute name of ... " >&6; } -if ${gl_cv_next_unistd_h+:} false; then : - $as_echo_n "(cached) " >&6 -else - - if test $ac_cv_header_unistd_h = yes; then - - - - - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include -_ACEOF - case "$host_os" in - aix*) gl_absname_cpp="$ac_cpp -C" ;; - *) gl_absname_cpp="$ac_cpp" ;; - esac - - case "$host_os" in - mingw*) - gl_dirsep_regex='[/\\]' - ;; - *) - gl_dirsep_regex='\/' - ;; - esac - gl_make_literal_regex_sed='s,[]$^\\.*/[],\\&,g' - gl_header_literal_regex=`echo 'unistd.h' \ - | sed -e "$gl_make_literal_regex_sed"` - gl_absolute_header_sed="/${gl_dirsep_regex}${gl_header_literal_regex}/"'{ - s/.*"\(.*'"${gl_dirsep_regex}${gl_header_literal_regex}"'\)".*/\1/ - s|^/[^/]|//&| - p - q - }' - - gl_cv_absolute_unistd_h=`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 | - sed -n "$gl_absolute_header_sed"` - - gl_header=$gl_cv_absolute_unistd_h - gl_cv_next_unistd_h='"'$gl_header'"' - else - gl_cv_next_unistd_h='<'unistd.h'>' - fi - - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_next_unistd_h" >&5 -$as_echo "$gl_cv_next_unistd_h" >&6; } - fi - NEXT_UNISTD_H=$gl_cv_next_unistd_h - - if test $gl_cv_have_include_next = yes || test $gl_cv_have_include_next = buggy; then - # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include_next' - gl_next_as_first_directive='<'unistd.h'>' - else - # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include' - gl_next_as_first_directive=$gl_cv_next_unistd_h - fi - NEXT_AS_FIRST_DIRECTIVE_UNISTD_H=$gl_next_as_first_directive - - - - - if test $ac_cv_header_unistd_h = yes; then - HAVE_UNISTD_H=1 - else - HAVE_UNISTD_H=0 - fi - - - - - - - - - - - - - - - - if { test "$HAVE_LIBUNISTRING" != yes \ - || { - - - - test $LIBUNISTRING_VERSION_MAJOR -lt 0 \ - || { test $LIBUNISTRING_VERSION_MAJOR -eq 0 \ - && { test $LIBUNISTRING_VERSION_MINOR -lt 9 \ - || { test $LIBUNISTRING_VERSION_MINOR -eq 9 \ - && test $LIBUNISTRING_VERSION_SUBMINOR -lt 4 - } - } - } - - - - - } - }; then - LIBUNISTRING_UNITYPES_H='unitypes.h' - else - LIBUNISTRING_UNITYPES_H= - fi - - - - - if { test "$HAVE_LIBUNISTRING" != yes \ - || { - - - - test $LIBUNISTRING_VERSION_MAJOR -lt 0 \ - || { test $LIBUNISTRING_VERSION_MAJOR -eq 0 \ - && { test $LIBUNISTRING_VERSION_MINOR -lt 9 \ - || { test $LIBUNISTRING_VERSION_MINOR -eq 9 \ - && test $LIBUNISTRING_VERSION_SUBMINOR -lt 4 - } - } - } - - - - - } - }; then - LIBUNISTRING_UNIWIDTH_H='uniwidth.h' - else - LIBUNISTRING_UNIWIDTH_H= - fi - - - - - if { test "$HAVE_LIBUNISTRING" != yes \ - || { - - - - test $LIBUNISTRING_VERSION_MAJOR -lt 0 \ - || { test $LIBUNISTRING_VERSION_MAJOR -eq 0 \ - && { test $LIBUNISTRING_VERSION_MINOR -lt 9 \ - || { test $LIBUNISTRING_VERSION_MINOR -eq 9 \ - && test $LIBUNISTRING_VERSION_SUBMINOR -lt 8 - } - } - } - - - - - } - }; then - LIBUNISTRING_COMPILE_UNIWIDTH_WIDTH_TRUE= - LIBUNISTRING_COMPILE_UNIWIDTH_WIDTH_FALSE='#' -else - LIBUNISTRING_COMPILE_UNIWIDTH_WIDTH_TRUE='#' - LIBUNISTRING_COMPILE_UNIWIDTH_WIDTH_FALSE= -fi - - - - - if test $ac_cv_func_vasnprintf = no; then - - - - - - - - - - - gl_LIBOBJS="$gl_LIBOBJS vasnprintf.$ac_objext" - - - - - - - - - - gl_LIBOBJS="$gl_LIBOBJS printf-args.$ac_objext" - - - - - - - - - - gl_LIBOBJS="$gl_LIBOBJS printf-parse.$ac_objext" - - - - - - - - - - gl_LIBOBJS="$gl_LIBOBJS asnprintf.$ac_objext" - - if test $ac_cv_func_vasnprintf = yes; then - -$as_echo "#define REPLACE_VASNPRINTF 1" >>confdefs.h - - fi - - - - - - - - - - - - ac_fn_c_check_type "$LINENO" "ptrdiff_t" "ac_cv_type_ptrdiff_t" "$ac_includes_default" -if test "x$ac_cv_type_ptrdiff_t" = xyes; then : - -else - -$as_echo "#define ptrdiff_t long" >>confdefs.h - - -fi - - - - - - - - fi - - - - gl_cv_func_vsnprintf_usable=no - for ac_func in vsnprintf -do : - ac_fn_c_check_func "$LINENO" "vsnprintf" "ac_cv_func_vsnprintf" -if test "x$ac_cv_func_vsnprintf" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_VSNPRINTF 1 -_ACEOF - -fi -done - - if test $ac_cv_func_vsnprintf = yes; then - - - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether snprintf respects a size of 1" >&5 -$as_echo_n "checking whether snprintf respects a size of 1... " >&6; } -if ${gl_cv_func_snprintf_size1+:} false; then : - $as_echo_n "(cached) " >&6 -else - - if test "$cross_compiling" = yes; then : - case "$host_os" in - # Guess yes on native Windows. - mingw*) gl_cv_func_snprintf_size1="guessing yes" ;; - *) gl_cv_func_snprintf_size1="guessing yes" ;; - esac - -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -#include -#if HAVE_SNPRINTF -# define my_snprintf snprintf -#else -# include -static int my_snprintf (char *buf, int size, const char *format, ...) -{ - va_list args; - int ret; - va_start (args, format); - ret = vsnprintf (buf, size, format, args); - va_end (args); - return ret; -} -#endif -int main() -{ - static char buf[8] = { 'D', 'E', 'A', 'D', 'B', 'E', 'E', 'F' }; - my_snprintf (buf, 1, "%d", 12345); - return buf[1] != 'E'; -} -_ACEOF -if ac_fn_c_try_run "$LINENO"; then : - gl_cv_func_snprintf_size1=yes -else - gl_cv_func_snprintf_size1=no -fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext -fi - - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_snprintf_size1" >&5 -$as_echo "$gl_cv_func_snprintf_size1" >&6; } - - case "$gl_cv_func_snprintf_size1" in - *yes) - - case "$gl_cv_func_snprintf_retval_c99" in - *yes) - - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether printf supports POSIX/XSI format strings with positions" >&5 -$as_echo_n "checking whether printf supports POSIX/XSI format strings with positions... " >&6; } -if ${gl_cv_func_printf_positions+:} false; then : - $as_echo_n "(cached) " >&6 -else - - if test "$cross_compiling" = yes; then : - - case "$host_os" in - netbsd[1-3]* | netbsdelf[1-3]* | netbsdaout[1-3]* | netbsdcoff[1-3]*) - gl_cv_func_printf_positions="guessing no";; - beos*) gl_cv_func_printf_positions="guessing no";; - # Guess no on native Windows. - mingw* | pw*) gl_cv_func_printf_positions="guessing no";; - *) gl_cv_func_printf_positions="guessing yes";; - esac - -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -#include -#include -/* The string "%2$d %1$d", with dollar characters protected from the shell's - dollar expansion (possibly an autoconf bug). */ -static char format[] = { '%', '2', '$', 'd', ' ', '%', '1', '$', 'd', '\0' }; -static char buf[100]; -int main () -{ - sprintf (buf, format, 33, 55); - return (strcmp (buf, "55 33") != 0); -} -_ACEOF -if ac_fn_c_try_run "$LINENO"; then : - gl_cv_func_printf_positions=yes -else - gl_cv_func_printf_positions=no -fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext -fi - - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_printf_positions" >&5 -$as_echo "$gl_cv_func_printf_positions" >&6; } - - case "$gl_cv_func_printf_positions" in - *yes) - gl_cv_func_vsnprintf_usable=yes - ;; - esac - ;; - esac - ;; - esac - fi - if test $gl_cv_func_vsnprintf_usable = no; then - - - - - - - - - - - gl_LIBOBJS="$gl_LIBOBJS vsnprintf.$ac_objext" - - if test $ac_cv_func_vsnprintf = yes; then - REPLACE_VSNPRINTF=1 - else - - if test $ac_cv_have_decl_vsnprintf = yes; then - REPLACE_VSNPRINTF=1 - fi - fi - : - - fi - - if test $ac_cv_have_decl_vsnprintf = no; then - HAVE_DECL_VSNPRINTF=0 - fi - - - - - - - GNULIB_VSNPRINTF=1 - - - - - -$as_echo "#define GNULIB_TEST_VSNPRINTF 1" >>confdefs.h - - - - - - - - - - - - - - - - if test $gl_cv_have_include_next = yes; then - gl_cv_next_wchar_h='<'wchar.h'>' - else - { $as_echo "$as_me:${as_lineno-$LINENO}: checking absolute name of " >&5 -$as_echo_n "checking absolute name of ... " >&6; } -if ${gl_cv_next_wchar_h+:} false; then : - $as_echo_n "(cached) " >&6 -else - - if test $ac_cv_header_wchar_h = yes; then - - - - - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include -_ACEOF - case "$host_os" in - aix*) gl_absname_cpp="$ac_cpp -C" ;; - *) gl_absname_cpp="$ac_cpp" ;; - esac - - case "$host_os" in - mingw*) - gl_dirsep_regex='[/\\]' - ;; - *) - gl_dirsep_regex='\/' - ;; - esac - gl_make_literal_regex_sed='s,[]$^\\.*/[],\\&,g' - gl_header_literal_regex=`echo 'wchar.h' \ - | sed -e "$gl_make_literal_regex_sed"` - gl_absolute_header_sed="/${gl_dirsep_regex}${gl_header_literal_regex}/"'{ - s/.*"\(.*'"${gl_dirsep_regex}${gl_header_literal_regex}"'\)".*/\1/ - s|^/[^/]|//&| - p - q - }' - - gl_cv_absolute_wchar_h=`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 | - sed -n "$gl_absolute_header_sed"` - - gl_header=$gl_cv_absolute_wchar_h - gl_cv_next_wchar_h='"'$gl_header'"' - else - gl_cv_next_wchar_h='<'wchar.h'>' - fi - - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_next_wchar_h" >&5 -$as_echo "$gl_cv_next_wchar_h" >&6; } - fi - NEXT_WCHAR_H=$gl_cv_next_wchar_h - - if test $gl_cv_have_include_next = yes || test $gl_cv_have_include_next = buggy; then - # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include_next' - gl_next_as_first_directive='<'wchar.h'>' - else - # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include' - gl_next_as_first_directive=$gl_cv_next_wchar_h - fi - NEXT_AS_FIRST_DIRECTIVE_WCHAR_H=$gl_next_as_first_directive - - - - - if test $ac_cv_header_wchar_h = yes; then - HAVE_WCHAR_H=1 - else - HAVE_WCHAR_H=0 - fi - - - - - - if test $gt_cv_c_wint_t = yes; then - HAVE_WINT_T=1 - else - HAVE_WINT_T=0 - fi - - - - - - - - - - - - - - - - - - - if test $ac_cv_func_mbsinit = yes && test $ac_cv_func_mbrtowc = yes; then - - - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether mbrtowc handles incomplete characters" >&5 -$as_echo_n "checking whether mbrtowc handles incomplete characters... " >&6; } -if ${gl_cv_func_mbrtowc_incomplete_state+:} false; then : - $as_echo_n "(cached) " >&6 -else - - case "$host_os" in - # Guess no on AIX and OSF/1. - aix* | osf*) gl_cv_func_mbrtowc_incomplete_state="guessing no" ;; - # Guess yes otherwise. - *) gl_cv_func_mbrtowc_incomplete_state="guessing yes" ;; - esac - if test $LOCALE_JA != none; then - if test "$cross_compiling" = yes; then : - : -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -#include -#include -/* Tru64 with Desktop Toolkit C has a bug: must be included before - . - BSD/OS 4.0.1 has a bug: , and must be - included before . */ -#include -#include -#include -#include -int main () -{ - if (setlocale (LC_ALL, "$LOCALE_JA") != NULL) - { - const char input[] = "B\217\253\344\217\251\316er"; /* "Büßer" */ - mbstate_t state; - wchar_t wc; - - memset (&state, '\0', sizeof (mbstate_t)); - if (mbrtowc (&wc, input + 1, 1, &state) == (size_t)(-2)) - if (mbsinit (&state)) - return 2; - } - return 0; -} -_ACEOF -if ac_fn_c_try_run "$LINENO"; then : - gl_cv_func_mbrtowc_incomplete_state=yes -else - gl_cv_func_mbrtowc_incomplete_state=no -fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext -fi - - fi - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_mbrtowc_incomplete_state" >&5 -$as_echo "$gl_cv_func_mbrtowc_incomplete_state" >&6; } - - - - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether mbrtowc works as well as mbtowc" >&5 -$as_echo_n "checking whether mbrtowc works as well as mbtowc... " >&6; } -if ${gl_cv_func_mbrtowc_sanitycheck+:} false; then : - $as_echo_n "(cached) " >&6 -else - - case "$host_os" in - # Guess no on Solaris 8. - solaris2.8) gl_cv_func_mbrtowc_sanitycheck="guessing no" ;; - # Guess yes otherwise. - *) gl_cv_func_mbrtowc_sanitycheck="guessing yes" ;; - esac - if test $LOCALE_ZH_CN != none; then - if test "$cross_compiling" = yes; then : - : -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -#include -#include -#include -/* Tru64 with Desktop Toolkit C has a bug: must be included before - . - BSD/OS 4.0.1 has a bug: , and must be - included before . */ -#include -#include -#include -#include -int main () -{ - /* This fails on Solaris 8: - mbrtowc returns 2, and sets wc to 0x00F0. - mbtowc returns 4 (correct) and sets wc to 0x5EDC. */ - if (setlocale (LC_ALL, "$LOCALE_ZH_CN") != NULL) - { - char input[] = "B\250\271\201\060\211\070er"; /* "Büßer" */ - mbstate_t state; - wchar_t wc; - - memset (&state, '\0', sizeof (mbstate_t)); - if (mbrtowc (&wc, input + 3, 6, &state) != 4 - && mbtowc (&wc, input + 3, 6) == 4) - return 2; - } - return 0; -} -_ACEOF -if ac_fn_c_try_run "$LINENO"; then : - gl_cv_func_mbrtowc_sanitycheck=yes -else - gl_cv_func_mbrtowc_sanitycheck=no -fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext -fi - - fi - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_mbrtowc_sanitycheck" >&5 -$as_echo "$gl_cv_func_mbrtowc_sanitycheck" >&6; } - - REPLACE_MBSTATE_T=0 - case "$gl_cv_func_mbrtowc_incomplete_state" in - *yes) ;; - *) REPLACE_MBSTATE_T=1 ;; - esac - case "$gl_cv_func_mbrtowc_sanitycheck" in - *yes) ;; - *) REPLACE_MBSTATE_T=1 ;; - esac - else - REPLACE_MBSTATE_T=1 - fi - - - - if test $ac_cv_func_wcrtomb = no; then - HAVE_WCRTOMB=0 - ac_fn_c_check_decl "$LINENO" "wcrtomb" "ac_cv_have_decl_wcrtomb" " -/* Tru64 with Desktop Toolkit C has a bug: must be included before - . - BSD/OS 4.0.1 has a bug: , and must be - included before . */ -#include -#include -#include -#include - -" -if test "x$ac_cv_have_decl_wcrtomb" = xyes; then : - ac_have_decl=1 -else - ac_have_decl=0 -fi - -cat >>confdefs.h <<_ACEOF -#define HAVE_DECL_WCRTOMB $ac_have_decl -_ACEOF - - if test $ac_cv_have_decl_wcrtomb = yes; then - REPLACE_WCRTOMB=1 - fi - else - if test $REPLACE_MBSTATE_T = 1; then - REPLACE_WCRTOMB=1 - else - - - - - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether wcrtomb return value is correct" >&5 -$as_echo_n "checking whether wcrtomb return value is correct... " >&6; } -if ${gl_cv_func_wcrtomb_retval+:} false; then : - $as_echo_n "(cached) " >&6 -else - - case "$host_os" in - # Guess no on AIX 4, OSF/1 and Solaris. - aix4* | osf* | solaris*) gl_cv_func_wcrtomb_retval="guessing no" ;; - # Guess yes on native Windows. - mingw*) gl_cv_func_wcrtomb_retval="guessing yes" ;; - # Guess yes otherwise. - *) gl_cv_func_wcrtomb_retval="guessing yes" ;; - esac - if test $LOCALE_FR != none || test $LOCALE_FR_UTF8 != none || test $LOCALE_JA != none || test $LOCALE_ZH_CN != none; then - if test "$cross_compiling" = yes; then : - : -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -#include -#include -/* Tru64 with Desktop Toolkit C has a bug: must be included before - . - BSD/OS 4.0.1 has a bug: , and must be - included before . */ -#include -#include -#include -#include -int main () -{ - int result = 0; - if (setlocale (LC_ALL, "$LOCALE_FR") != NULL) - { - if (wcrtomb (NULL, 0, NULL) != 1) - result |= 1; - } - if (setlocale (LC_ALL, "$LOCALE_FR_UTF8") != NULL) - { - if (wcrtomb (NULL, 0, NULL) != 1) - result |= 2; - } - if (setlocale (LC_ALL, "$LOCALE_JA") != NULL) - { - if (wcrtomb (NULL, 0, NULL) != 1) - result |= 4; - } - if (setlocale (LC_ALL, "$LOCALE_ZH_CN") != NULL) - { - if (wcrtomb (NULL, 0, NULL) != 1) - result |= 8; - } - return result; -} -_ACEOF -if ac_fn_c_try_run "$LINENO"; then : - gl_cv_func_wcrtomb_retval=yes -else - gl_cv_func_wcrtomb_retval=no -fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext -fi - - fi - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_wcrtomb_retval" >&5 -$as_echo "$gl_cv_func_wcrtomb_retval" >&6; } - case "$gl_cv_func_wcrtomb_retval" in - *yes) ;; - *) REPLACE_WCRTOMB=1 ;; - esac - fi - fi - - if test $HAVE_WCRTOMB = 0 || test $REPLACE_WCRTOMB = 1; then - - - - - - - - - gl_LIBOBJS="$gl_LIBOBJS wcrtomb.$ac_objext" - - - : - - fi - - - - - - GNULIB_WCRTOMB=1 - - - - - -$as_echo "#define GNULIB_TEST_WCRTOMB 1" >>confdefs.h - - - - - - - - - if test $ac_cv_func_iswcntrl = yes; then - HAVE_ISWCNTRL=1 - else - HAVE_ISWCNTRL=0 - fi - - - - if test $gt_cv_c_wint_t = yes; then - HAVE_WINT_T=1 - else - HAVE_WINT_T=0 - fi - - - - - - - - - - - - - - if test $gl_cv_have_include_next = yes; then - gl_cv_next_wctype_h='<'wctype.h'>' - else - { $as_echo "$as_me:${as_lineno-$LINENO}: checking absolute name of " >&5 -$as_echo_n "checking absolute name of ... " >&6; } -if ${gl_cv_next_wctype_h+:} false; then : - $as_echo_n "(cached) " >&6 -else - - if test $ac_cv_header_wctype_h = yes; then - - - - - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include -_ACEOF - case "$host_os" in - aix*) gl_absname_cpp="$ac_cpp -C" ;; - *) gl_absname_cpp="$ac_cpp" ;; - esac - - case "$host_os" in - mingw*) - gl_dirsep_regex='[/\\]' - ;; - *) - gl_dirsep_regex='\/' - ;; - esac - gl_make_literal_regex_sed='s,[]$^\\.*/[],\\&,g' - gl_header_literal_regex=`echo 'wctype.h' \ - | sed -e "$gl_make_literal_regex_sed"` - gl_absolute_header_sed="/${gl_dirsep_regex}${gl_header_literal_regex}/"'{ - s/.*"\(.*'"${gl_dirsep_regex}${gl_header_literal_regex}"'\)".*/\1/ - s|^/[^/]|//&| - p - q - }' - - gl_cv_absolute_wctype_h=`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 | - sed -n "$gl_absolute_header_sed"` - - gl_header=$gl_cv_absolute_wctype_h - gl_cv_next_wctype_h='"'$gl_header'"' - else - gl_cv_next_wctype_h='<'wctype.h'>' - fi - - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_next_wctype_h" >&5 -$as_echo "$gl_cv_next_wctype_h" >&6; } - fi - NEXT_WCTYPE_H=$gl_cv_next_wctype_h - - if test $gl_cv_have_include_next = yes || test $gl_cv_have_include_next = buggy; then - # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include_next' - gl_next_as_first_directive='<'wctype.h'>' - else - # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include' - gl_next_as_first_directive=$gl_cv_next_wctype_h - fi - NEXT_AS_FIRST_DIRECTIVE_WCTYPE_H=$gl_next_as_first_directive - - - - - if test $ac_cv_header_wctype_h = yes; then - if test $ac_cv_func_iswcntrl = yes; then - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether iswcntrl works" >&5 -$as_echo_n "checking whether iswcntrl works... " >&6; } -if ${gl_cv_func_iswcntrl_works+:} false; then : - $as_echo_n "(cached) " >&6 -else - - if test "$cross_compiling" = yes; then : - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include - #if __GNU_LIBRARY__ == 1 - Linux libc5 i18n is broken. - #endif -int -main (void) -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - gl_cv_func_iswcntrl_works="guessing yes" -else - gl_cv_func_iswcntrl_works="guessing no" -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - - /* Tru64 with Desktop Toolkit C has a bug: must be - included before . - BSD/OS 4.0.1 has a bug: , and - must be included before . */ - #include - #include - #include - #include - #include - int main () { return iswprint ('x') == 0; } - -_ACEOF -if ac_fn_c_try_run "$LINENO"; then : - gl_cv_func_iswcntrl_works=yes -else - gl_cv_func_iswcntrl_works=no -fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext -fi - - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_iswcntrl_works" >&5 -$as_echo "$gl_cv_func_iswcntrl_works" >&6; } - fi - HAVE_WCTYPE_H=1 - else - HAVE_WCTYPE_H=0 - fi - - - case "$gl_cv_func_iswcntrl_works" in - *yes) REPLACE_ISWCNTRL=0 ;; - *) REPLACE_ISWCNTRL=1 ;; - esac - - - if test $HAVE_ISWCNTRL = 0 || test $REPLACE_ISWCNTRL = 1; then - : - fi - - if test $REPLACE_ISWCNTRL = 1; then - REPLACE_TOWLOWER=1 - else - for ac_func in towlower -do : - ac_fn_c_check_func "$LINENO" "towlower" "ac_cv_func_towlower" -if test "x$ac_cv_func_towlower" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_TOWLOWER 1 -_ACEOF - -fi -done - - if test $ac_cv_func_towlower = yes; then - REPLACE_TOWLOWER=0 - else - ac_fn_c_check_decl "$LINENO" "towlower" "ac_cv_have_decl_towlower" "/* Tru64 with Desktop Toolkit C has a bug: must be - included before . - BSD/OS 4.0.1 has a bug: , and - must be included before . */ - #include - #include - #include - #include - #if HAVE_WCTYPE_H - # include - #endif - -" -if test "x$ac_cv_have_decl_towlower" = xyes; then : - ac_have_decl=1 -else - ac_have_decl=0 -fi - -cat >>confdefs.h <<_ACEOF -#define HAVE_DECL_TOWLOWER $ac_have_decl -_ACEOF - - if test $ac_cv_have_decl_towlower = yes; then - REPLACE_TOWLOWER=1 - else - REPLACE_TOWLOWER=0 - fi - fi - fi - - - if test $HAVE_ISWCNTRL = 0 || test $REPLACE_TOWLOWER = 1; then - : - fi - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for wctype_t" >&5 -$as_echo_n "checking for wctype_t... " >&6; } -if ${gl_cv_type_wctype_t+:} false; then : - $as_echo_n "(cached) " >&6 -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -/* Tru64 with Desktop Toolkit C has a bug: must be - included before . - BSD/OS 4.0.1 has a bug: , and - must be included before . */ - #include - #include - #include - #include - #if HAVE_WCTYPE_H - # include - #endif - wctype_t a; - -int -main (void) -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - gl_cv_type_wctype_t=yes -else - gl_cv_type_wctype_t=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_type_wctype_t" >&5 -$as_echo "$gl_cv_type_wctype_t" >&6; } - if test $gl_cv_type_wctype_t = no; then - HAVE_WCTYPE_T=0 - fi - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for wctrans_t" >&5 -$as_echo_n "checking for wctrans_t... " >&6; } -if ${gl_cv_type_wctrans_t+:} false; then : - $as_echo_n "(cached) " >&6 -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -/* Tru64 with Desktop Toolkit C has a bug: must be - included before . - BSD/OS 4.0.1 has a bug: , and - must be included before . */ - #include - #include - #include - #include - #include - wctrans_t a; - -int -main (void) -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - gl_cv_type_wctrans_t=yes -else - gl_cv_type_wctrans_t=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_type_wctrans_t" >&5 -$as_echo "$gl_cv_type_wctrans_t" >&6; } - if test $gl_cv_type_wctrans_t = no; then - HAVE_WCTRANS_T=0 - fi - - - - - - - - - - - - - - - - - ac_fn_c_check_decl "$LINENO" "wcwidth" "ac_cv_have_decl_wcwidth" " -/* AIX 3.2.5 declares wcwidth in . */ -#include -/* Tru64 with Desktop Toolkit C has a bug: must be included before - . - BSD/OS 4.0.1 has a bug: , and must be included - before . */ -#include -#include -#include -#include - -" -if test "x$ac_cv_have_decl_wcwidth" = xyes; then : - ac_have_decl=1 -else - ac_have_decl=0 -fi - -cat >>confdefs.h <<_ACEOF -#define HAVE_DECL_WCWIDTH $ac_have_decl -_ACEOF - - if test $ac_cv_have_decl_wcwidth != yes; then - HAVE_DECL_WCWIDTH=0 - fi - - if test $ac_cv_func_wcwidth != yes; then - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether wcwidth is a macro" >&5 -$as_echo_n "checking whether wcwidth is a macro... " >&6; } -if ${gl_cv_func_wcwidth_macro+:} false; then : - $as_echo_n "(cached) " >&6 -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -#include -#ifdef wcwidth - wchar_header_defines_wcwidth -#endif -_ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "wchar_header_defines_wcwidth" >/dev/null 2>&1; then : - gl_cv_func_wcwidth_macro=yes -else - gl_cv_func_wcwidth_macro=no -fi -rm -f conftest* - - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_wcwidth_macro" >&5 -$as_echo "$gl_cv_func_wcwidth_macro" >&6; } - fi - - if test $ac_cv_func_wcwidth = yes || test $gl_cv_func_wcwidth_macro = yes; then - HAVE_WCWIDTH=1 - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether wcwidth works reasonably in UTF-8 locales" >&5 -$as_echo_n "checking whether wcwidth works reasonably in UTF-8 locales... " >&6; } -if ${gl_cv_func_wcwidth_works+:} false; then : - $as_echo_n "(cached) " >&6 -else - - if test "$cross_compiling" = yes; then : - - case "$host_os" in - # Guess yes on glibc and AIX 7 systems. - *-gnu* | gnu* | aix[7-9]*) gl_cv_func_wcwidth_works="guessing yes";; - *) gl_cv_func_wcwidth_works="guessing no";; - esac - -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -#include -/* AIX 3.2.5 declares wcwidth in . */ -#include -/* Tru64 with Desktop Toolkit C has a bug: must be included before - . - BSD/OS 4.0.1 has a bug: , and must be included - before . */ -#include -#include -#include -#include -#if !HAVE_DECL_WCWIDTH -extern -# ifdef __cplusplus -"C" -# endif -int wcwidth (int); -#endif -int main () -{ - int result = 0; - if (setlocale (LC_ALL, "fr_FR.UTF-8") != NULL) - { - if (wcwidth (0x0301) > 0) - result |= 1; - if (wcwidth (0x05B0) > 0) - result |= 2; - if (wcwidth (0x200B) > 0) - result |= 4; - if (wcwidth (0xFF1A) == 0) - result |= 8; - } - return result; -} -_ACEOF -if ac_fn_c_try_run "$LINENO"; then : - gl_cv_func_wcwidth_works=yes -else - gl_cv_func_wcwidth_works=no -fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext -fi - - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_wcwidth_works" >&5 -$as_echo "$gl_cv_func_wcwidth_works" >&6; } - case "$gl_cv_func_wcwidth_works" in - *yes) ;; - *no) REPLACE_WCWIDTH=1 ;; - esac - else - HAVE_WCWIDTH=0 - fi - - if test $HAVE_WCWIDTH = 0 || test $REPLACE_WCWIDTH = 1; then - - - - - - - - - gl_LIBOBJS="$gl_LIBOBJS wcwidth.$ac_objext" - - - - : - - fi - - - - - - GNULIB_WCWIDTH=1 - - - - - -$as_echo "#define GNULIB_TEST_WCWIDTH 1" >>confdefs.h - - - - - - for ac_header in stdint.h -do : - ac_fn_c_check_header_mongrel "$LINENO" "stdint.h" "ac_cv_header_stdint_h" "$ac_includes_default" -if test "x$ac_cv_header_stdint_h" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_STDINT_H 1 -_ACEOF - -fi - -done - - - # End of code from modules - - - - - - - - - - gltests_libdeps= - gltests_ltlibdeps= - - - - - - - - - - gl_source_base='tests' - gltests_WITNESS=IN_`echo "${PACKAGE-$PACKAGE_TARNAME}" | LC_ALL=C tr abcdefghijklmnopqrstuvwxyz ABCDEFGHIJKLMNOPQRSTUVWXYZ | LC_ALL=C sed -e 's/[^A-Z0-9_]/_/g'`_GNULIB_TESTS - - gl_module_indicator_condition=$gltests_WITNESS - - - - - - - - - - LIBGNU_LIBDEPS="$gl_libdeps" - - LIBGNU_LTLIBDEPS="$gl_ltlibdeps" - - - -WARN_FLAGS="-Wall -W -Wshadow -Wpointer-arith -Wundef -Wchar-subscripts -Wcomment -Wdeprecated-declarations -Wdisabled-optimization -Wdiv-by-zero -Wfloat-equal -Wformat-extra-args -Wformat-security -Wformat-y2k -Wimplicit -Wimplicit-function-declaration -Wimplicit-int -Wmain -Wmissing-braces -Wmissing-format-attribute -Wmultichar -Wparentheses -Wreturn-type -Wsequence-point -Wshadow -Wsign-compare -Wswitch -Wtrigraphs -Wunknown-pragmas -Wunused -Wunused-function -Wunused-label -Wunused-parameter -Wunused-value -Wunused-variable -Wwrite-strings -Wnested-externs -Wstrict-prototypes" -EXTRA_WARN_FLAGS="-Wextra -Wattributes -Wendif-labels -Winit-self -Wint-to-pointer-cast -Winvalid-pch -Wmissing-field-initializers -Wnonnull -Woverflow -Wvla -Wpointer-to-int-cast -Wstrict-aliasing -Wvariadic-macros -Wvolatile-register-var -Wpointer-sign -Wmissing-include-dirs -Wmissing-prototypes -Wmissing-declarations -Wformat=2" - -HOST_CFLAGS="$HOST_CFLAGS $WARN_FLAGS -Wcast-align" - -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking which extra warnings work" >&5 -$as_echo_n "checking which extra warnings work... " >&6; } -if ${grub_cv_cc_w_extra_flags+:} false; then : - $as_echo_n "(cached) " >&6 -else - - SAVED_CFLAGS="$CFLAGS" - grub_cv_cc_w_extra_flags= - for x in $EXTRA_WARN_FLAGS; do - CFLAGS="$HOST_CFLAGS $x -Werror" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -int -main (void) -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - flag=1 -else - flag=0 -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext - if test x$flag = x1 ; then - grub_cv_cc_w_extra_flags="$grub_cv_cc_w_extra_flags $x" - fi - done - CFLAGS="$SAVED_CFLAGS" - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $grub_cv_cc_w_extra_flags" >&5 -$as_echo "$grub_cv_cc_w_extra_flags" >&6; } - -HOST_CFLAGS="$HOST_CFLAGS $grub_cv_cc_w_extra_flags" - -# -# Check for target programs. -# - -# Find tools for the target. -if test "x$target_alias" != x && test "x$host_alias" != "x$target_alias"; then - tmp_ac_tool_prefix="$ac_tool_prefix" - ac_tool_prefix=$target_alias- - - if test -n "$ac_tool_prefix"; then - for ac_prog in gcc egcs cc - do - # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args. -set dummy $ac_tool_prefix$ac_prog; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_TARGET_CC+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test -n "$TARGET_CC"; then - ac_cv_prog_TARGET_CC="$TARGET_CC" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_TARGET_CC="$ac_tool_prefix$ac_prog" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -TARGET_CC=$ac_cv_prog_TARGET_CC -if test -n "$TARGET_CC"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $TARGET_CC" >&5 -$as_echo "$TARGET_CC" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - - - test -n "$TARGET_CC" && break - done -fi -if test -z "$TARGET_CC"; then - ac_ct_TARGET_CC=$TARGET_CC - for ac_prog in gcc egcs cc -do - # Extract the first word of "$ac_prog", so it can be a program name with args. -set dummy $ac_prog; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_ac_ct_TARGET_CC+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test -n "$ac_ct_TARGET_CC"; then - ac_cv_prog_ac_ct_TARGET_CC="$ac_ct_TARGET_CC" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_ac_ct_TARGET_CC="$ac_prog" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -ac_ct_TARGET_CC=$ac_cv_prog_ac_ct_TARGET_CC -if test -n "$ac_ct_TARGET_CC"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_TARGET_CC" >&5 -$as_echo "$ac_ct_TARGET_CC" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - - - test -n "$ac_ct_TARGET_CC" && break -done - - if test "x$ac_ct_TARGET_CC" = x; then - TARGET_CC="as_fn_error $? "none of gcc, egcs and cc is found. set TARGET_CC manually." "$LINENO" 5" - else - case $cross_compiling:$ac_tool_warned in -yes:) -{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 -$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} -ac_tool_warned=yes ;; -esac - TARGET_CC=$ac_ct_TARGET_CC - fi -fi - - if test -n "$ac_tool_prefix"; then - # Extract the first word of "${ac_tool_prefix}objcopy", so it can be a program name with args. -set dummy ${ac_tool_prefix}objcopy; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_TARGET_OBJCOPY+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test -n "$TARGET_OBJCOPY"; then - ac_cv_prog_TARGET_OBJCOPY="$TARGET_OBJCOPY" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_TARGET_OBJCOPY="${ac_tool_prefix}objcopy" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -TARGET_OBJCOPY=$ac_cv_prog_TARGET_OBJCOPY -if test -n "$TARGET_OBJCOPY"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $TARGET_OBJCOPY" >&5 -$as_echo "$TARGET_OBJCOPY" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - - -fi -if test -z "$ac_cv_prog_TARGET_OBJCOPY"; then - ac_ct_TARGET_OBJCOPY=$TARGET_OBJCOPY - # Extract the first word of "objcopy", so it can be a program name with args. -set dummy objcopy; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_ac_ct_TARGET_OBJCOPY+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test -n "$ac_ct_TARGET_OBJCOPY"; then - ac_cv_prog_ac_ct_TARGET_OBJCOPY="$ac_ct_TARGET_OBJCOPY" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_ac_ct_TARGET_OBJCOPY="objcopy" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -ac_ct_TARGET_OBJCOPY=$ac_cv_prog_ac_ct_TARGET_OBJCOPY -if test -n "$ac_ct_TARGET_OBJCOPY"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_TARGET_OBJCOPY" >&5 -$as_echo "$ac_ct_TARGET_OBJCOPY" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - - if test "x$ac_ct_TARGET_OBJCOPY" = x; then - TARGET_OBJCOPY="" - else - case $cross_compiling:$ac_tool_warned in -yes:) -{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 -$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} -ac_tool_warned=yes ;; -esac - TARGET_OBJCOPY=$ac_ct_TARGET_OBJCOPY - fi -else - TARGET_OBJCOPY="$ac_cv_prog_TARGET_OBJCOPY" -fi - - if test -n "$ac_tool_prefix"; then - # Extract the first word of "${ac_tool_prefix}strip", so it can be a program name with args. -set dummy ${ac_tool_prefix}strip; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_TARGET_STRIP+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test -n "$TARGET_STRIP"; then - ac_cv_prog_TARGET_STRIP="$TARGET_STRIP" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_TARGET_STRIP="${ac_tool_prefix}strip" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -TARGET_STRIP=$ac_cv_prog_TARGET_STRIP -if test -n "$TARGET_STRIP"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $TARGET_STRIP" >&5 -$as_echo "$TARGET_STRIP" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - - -fi -if test -z "$ac_cv_prog_TARGET_STRIP"; then - ac_ct_TARGET_STRIP=$TARGET_STRIP - # Extract the first word of "strip", so it can be a program name with args. -set dummy strip; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_ac_ct_TARGET_STRIP+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test -n "$ac_ct_TARGET_STRIP"; then - ac_cv_prog_ac_ct_TARGET_STRIP="$ac_ct_TARGET_STRIP" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_ac_ct_TARGET_STRIP="strip" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -ac_ct_TARGET_STRIP=$ac_cv_prog_ac_ct_TARGET_STRIP -if test -n "$ac_ct_TARGET_STRIP"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_TARGET_STRIP" >&5 -$as_echo "$ac_ct_TARGET_STRIP" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - - if test "x$ac_ct_TARGET_STRIP" = x; then - TARGET_STRIP="" - else - case $cross_compiling:$ac_tool_warned in -yes:) -{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 -$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} -ac_tool_warned=yes ;; -esac - TARGET_STRIP=$ac_ct_TARGET_STRIP - fi -else - TARGET_STRIP="$ac_cv_prog_TARGET_STRIP" -fi - - if test -n "$ac_tool_prefix"; then - # Extract the first word of "${ac_tool_prefix}nm", so it can be a program name with args. -set dummy ${ac_tool_prefix}nm; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_TARGET_NM+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test -n "$TARGET_NM"; then - ac_cv_prog_TARGET_NM="$TARGET_NM" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_TARGET_NM="${ac_tool_prefix}nm" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -TARGET_NM=$ac_cv_prog_TARGET_NM -if test -n "$TARGET_NM"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $TARGET_NM" >&5 -$as_echo "$TARGET_NM" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - - -fi -if test -z "$ac_cv_prog_TARGET_NM"; then - ac_ct_TARGET_NM=$TARGET_NM - # Extract the first word of "nm", so it can be a program name with args. -set dummy nm; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_ac_ct_TARGET_NM+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test -n "$ac_ct_TARGET_NM"; then - ac_cv_prog_ac_ct_TARGET_NM="$ac_ct_TARGET_NM" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_ac_ct_TARGET_NM="nm" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -ac_ct_TARGET_NM=$ac_cv_prog_ac_ct_TARGET_NM -if test -n "$ac_ct_TARGET_NM"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_TARGET_NM" >&5 -$as_echo "$ac_ct_TARGET_NM" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - - if test "x$ac_ct_TARGET_NM" = x; then - TARGET_NM="" - else - case $cross_compiling:$ac_tool_warned in -yes:) -{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 -$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} -ac_tool_warned=yes ;; -esac - TARGET_NM=$ac_ct_TARGET_NM - fi -else - TARGET_NM="$ac_cv_prog_TARGET_NM" -fi - - if test -n "$ac_tool_prefix"; then - # Extract the first word of "${ac_tool_prefix}ranlib", so it can be a program name with args. -set dummy ${ac_tool_prefix}ranlib; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_TARGET_RANLIB+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test -n "$TARGET_RANLIB"; then - ac_cv_prog_TARGET_RANLIB="$TARGET_RANLIB" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_TARGET_RANLIB="${ac_tool_prefix}ranlib" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -TARGET_RANLIB=$ac_cv_prog_TARGET_RANLIB -if test -n "$TARGET_RANLIB"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $TARGET_RANLIB" >&5 -$as_echo "$TARGET_RANLIB" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - - -fi -if test -z "$ac_cv_prog_TARGET_RANLIB"; then - ac_ct_TARGET_RANLIB=$TARGET_RANLIB - # Extract the first word of "ranlib", so it can be a program name with args. -set dummy ranlib; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_ac_ct_TARGET_RANLIB+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test -n "$ac_ct_TARGET_RANLIB"; then - ac_cv_prog_ac_ct_TARGET_RANLIB="$ac_ct_TARGET_RANLIB" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_ac_ct_TARGET_RANLIB="ranlib" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -ac_ct_TARGET_RANLIB=$ac_cv_prog_ac_ct_TARGET_RANLIB -if test -n "$ac_ct_TARGET_RANLIB"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_TARGET_RANLIB" >&5 -$as_echo "$ac_ct_TARGET_RANLIB" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - - if test "x$ac_ct_TARGET_RANLIB" = x; then - TARGET_RANLIB="" - else - case $cross_compiling:$ac_tool_warned in -yes:) -{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 -$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} -ac_tool_warned=yes ;; -esac - TARGET_RANLIB=$ac_ct_TARGET_RANLIB - fi -else - TARGET_RANLIB="$ac_cv_prog_TARGET_RANLIB" -fi - - - ac_tool_prefix="$tmp_ac_tool_prefix" -else - if test "x$TARGET_CC" = x; then - TARGET_CC=$CC - fi - if test -n "$ac_tool_prefix"; then - # Extract the first word of "${ac_tool_prefix}objcopy", so it can be a program name with args. -set dummy ${ac_tool_prefix}objcopy; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_TARGET_OBJCOPY+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test -n "$TARGET_OBJCOPY"; then - ac_cv_prog_TARGET_OBJCOPY="$TARGET_OBJCOPY" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_TARGET_OBJCOPY="${ac_tool_prefix}objcopy" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -TARGET_OBJCOPY=$ac_cv_prog_TARGET_OBJCOPY -if test -n "$TARGET_OBJCOPY"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $TARGET_OBJCOPY" >&5 -$as_echo "$TARGET_OBJCOPY" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - - -fi -if test -z "$ac_cv_prog_TARGET_OBJCOPY"; then - ac_ct_TARGET_OBJCOPY=$TARGET_OBJCOPY - # Extract the first word of "objcopy", so it can be a program name with args. -set dummy objcopy; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_ac_ct_TARGET_OBJCOPY+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test -n "$ac_ct_TARGET_OBJCOPY"; then - ac_cv_prog_ac_ct_TARGET_OBJCOPY="$ac_ct_TARGET_OBJCOPY" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_ac_ct_TARGET_OBJCOPY="objcopy" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -ac_ct_TARGET_OBJCOPY=$ac_cv_prog_ac_ct_TARGET_OBJCOPY -if test -n "$ac_ct_TARGET_OBJCOPY"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_TARGET_OBJCOPY" >&5 -$as_echo "$ac_ct_TARGET_OBJCOPY" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - - if test "x$ac_ct_TARGET_OBJCOPY" = x; then - TARGET_OBJCOPY="" - else - case $cross_compiling:$ac_tool_warned in -yes:) -{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 -$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} -ac_tool_warned=yes ;; -esac - TARGET_OBJCOPY=$ac_ct_TARGET_OBJCOPY - fi -else - TARGET_OBJCOPY="$ac_cv_prog_TARGET_OBJCOPY" -fi - - if test -n "$ac_tool_prefix"; then - # Extract the first word of "${ac_tool_prefix}strip", so it can be a program name with args. -set dummy ${ac_tool_prefix}strip; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_TARGET_STRIP+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test -n "$TARGET_STRIP"; then - ac_cv_prog_TARGET_STRIP="$TARGET_STRIP" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_TARGET_STRIP="${ac_tool_prefix}strip" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -TARGET_STRIP=$ac_cv_prog_TARGET_STRIP -if test -n "$TARGET_STRIP"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $TARGET_STRIP" >&5 -$as_echo "$TARGET_STRIP" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - - -fi -if test -z "$ac_cv_prog_TARGET_STRIP"; then - ac_ct_TARGET_STRIP=$TARGET_STRIP - # Extract the first word of "strip", so it can be a program name with args. -set dummy strip; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_ac_ct_TARGET_STRIP+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test -n "$ac_ct_TARGET_STRIP"; then - ac_cv_prog_ac_ct_TARGET_STRIP="$ac_ct_TARGET_STRIP" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_ac_ct_TARGET_STRIP="strip" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -ac_ct_TARGET_STRIP=$ac_cv_prog_ac_ct_TARGET_STRIP -if test -n "$ac_ct_TARGET_STRIP"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_TARGET_STRIP" >&5 -$as_echo "$ac_ct_TARGET_STRIP" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - - if test "x$ac_ct_TARGET_STRIP" = x; then - TARGET_STRIP="" - else - case $cross_compiling:$ac_tool_warned in -yes:) -{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 -$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} -ac_tool_warned=yes ;; -esac - TARGET_STRIP=$ac_ct_TARGET_STRIP - fi -else - TARGET_STRIP="$ac_cv_prog_TARGET_STRIP" -fi - - if test -n "$ac_tool_prefix"; then - # Extract the first word of "${ac_tool_prefix}nm", so it can be a program name with args. -set dummy ${ac_tool_prefix}nm; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_TARGET_NM+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test -n "$TARGET_NM"; then - ac_cv_prog_TARGET_NM="$TARGET_NM" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_TARGET_NM="${ac_tool_prefix}nm" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -TARGET_NM=$ac_cv_prog_TARGET_NM -if test -n "$TARGET_NM"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $TARGET_NM" >&5 -$as_echo "$TARGET_NM" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - - -fi -if test -z "$ac_cv_prog_TARGET_NM"; then - ac_ct_TARGET_NM=$TARGET_NM - # Extract the first word of "nm", so it can be a program name with args. -set dummy nm; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_ac_ct_TARGET_NM+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test -n "$ac_ct_TARGET_NM"; then - ac_cv_prog_ac_ct_TARGET_NM="$ac_ct_TARGET_NM" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_ac_ct_TARGET_NM="nm" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -ac_ct_TARGET_NM=$ac_cv_prog_ac_ct_TARGET_NM -if test -n "$ac_ct_TARGET_NM"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_TARGET_NM" >&5 -$as_echo "$ac_ct_TARGET_NM" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - - if test "x$ac_ct_TARGET_NM" = x; then - TARGET_NM="" - else - case $cross_compiling:$ac_tool_warned in -yes:) -{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 -$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} -ac_tool_warned=yes ;; -esac - TARGET_NM=$ac_ct_TARGET_NM - fi -else - TARGET_NM="$ac_cv_prog_TARGET_NM" -fi - - if test -n "$ac_tool_prefix"; then - # Extract the first word of "${ac_tool_prefix}ranlib", so it can be a program name with args. -set dummy ${ac_tool_prefix}ranlib; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_TARGET_RANLIB+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test -n "$TARGET_RANLIB"; then - ac_cv_prog_TARGET_RANLIB="$TARGET_RANLIB" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_TARGET_RANLIB="${ac_tool_prefix}ranlib" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -TARGET_RANLIB=$ac_cv_prog_TARGET_RANLIB -if test -n "$TARGET_RANLIB"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $TARGET_RANLIB" >&5 -$as_echo "$TARGET_RANLIB" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - - -fi -if test -z "$ac_cv_prog_TARGET_RANLIB"; then - ac_ct_TARGET_RANLIB=$TARGET_RANLIB - # Extract the first word of "ranlib", so it can be a program name with args. -set dummy ranlib; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_ac_ct_TARGET_RANLIB+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test -n "$ac_ct_TARGET_RANLIB"; then - ac_cv_prog_ac_ct_TARGET_RANLIB="$ac_ct_TARGET_RANLIB" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_ac_ct_TARGET_RANLIB="ranlib" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -ac_ct_TARGET_RANLIB=$ac_cv_prog_ac_ct_TARGET_RANLIB -if test -n "$ac_ct_TARGET_RANLIB"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_TARGET_RANLIB" >&5 -$as_echo "$ac_ct_TARGET_RANLIB" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - - if test "x$ac_ct_TARGET_RANLIB" = x; then - TARGET_RANLIB="" - else - case $cross_compiling:$ac_tool_warned in -yes:) -{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 -$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} -ac_tool_warned=yes ;; -esac - TARGET_RANLIB=$ac_ct_TARGET_RANLIB - fi -else - TARGET_RANLIB="$ac_cv_prog_TARGET_RANLIB" -fi - -fi - - - - - - - - - - - - -# Test the C compiler for the target environment. -tmp_CC="$CC" -tmp_CFLAGS="$CFLAGS" -tmp_LDFLAGS="$LDFLAGS" -tmp_CPPFLAGS="$CPPFLAGS" -tmp_LIBS="$LIBS" -CC="$TARGET_CC" -CFLAGS="$TARGET_CFLAGS" -CPPFLAGS="$TARGET_CPPFLAGS" -LDFLAGS="$TARGET_LDFLAGS" -LIBS="" - -# debug flags. -TARGET_CFLAGS="$TARGET_CFLAGS $WARN_FLAGS -g -Wredundant-decls -Wmissing-prototypes -Wmissing-declarations" -TARGET_CCASFLAGS="$TARGET_CCASFLAGS -g" - -if test "x$target_cpu" != xi386 && test "x$target_cpu" != xx86_64; then -TARGET_CFLAGS="$TARGET_CFLAGS -Wcast-align" -fi - -TARGET_CC_VERSION="$(LC_ALL=C $TARGET_CC --version | head -n1)" - -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking which extra warnings work" >&5 -$as_echo_n "checking which extra warnings work... " >&6; } -if ${grub_cv_target_cc_w_extra_flags+:} false; then : - $as_echo_n "(cached) " >&6 -else - - LDFLAGS="$TARGET_LDFLAGS -nostdlib -static" - - grub_cv_target_cc_w_extra_flags= - for x in $EXTRA_WARN_FLAGS; do - CFLAGS="$TARGET_CFLAGS $x -Werror" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -asm (".globl start; start:"); -void __main (void); -void __main (void) {} -int main (void); - -int -main (void) -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - flag=1 -else - flag=0 -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext - if test x$flag = x1 ; then - grub_cv_target_cc_w_extra_flags="$grub_cv_target_cc_w_extra_flags $x" - fi - done - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $grub_cv_target_cc_w_extra_flags" >&5 -$as_echo "$grub_cv_target_cc_w_extra_flags" >&6; } - -TARGET_CFLAGS="$TARGET_CFLAGS $grub_cv_target_cc_w_extra_flags" - -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if compiling with clang" >&5 -$as_echo_n "checking if compiling with clang... " >&6; } -if ${grub_cv_cc_target_clang+:} false; then : - $as_echo_n "(cached) " >&6 -else - -CFLAGS="$TARGET_CFLAGS" -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -int -main (void) -{ - -#ifdef __clang__ -#error "is clang" -#endif - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - grub_cv_cc_target_clang=no -else - grub_cv_cc_target_clang=yes -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $grub_cv_cc_target_clang" >&5 -$as_echo "$grub_cv_cc_target_clang" >&6; } - -if test x$target_cpu = xpowerpc -o x$target_cpu = xmips; then - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for options to get big-endian compilation" >&5 -$as_echo_n "checking for options to get big-endian compilation... " >&6; } -if ${grub_cv_target_cc_big_endian+:} false; then : - $as_echo_n "(cached) " >&6 -else - - grub_cv_target_cc_big_endian=no - for cand in "-target $target_cpu -Wl,-EB" "-target $target_cpu" \ - "-target $target_cpu-linux-gnu -Wl,-EB" "-target $target_cpu-linux-gnu" \ - "-EB" "-mbig-endian"; do - if test x"$grub_cv_target_cc_big_endian" != xno ; then - break - fi - CFLAGS="$TARGET_CFLAGS $cand -Werror" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -#if defined(__BYTE_ORDER__) && defined(__ORDER_BIG_ENDIAN__) && (__ORDER_BIG_ENDIAN__ != __BYTE_ORDER__) -#error still little endian -#endif -asm (".globl start; start:"); -asm (".globl _start; _start:"); -asm (".globl __start; __start:"); -void __main (void); -void __main (void) {} -int main (void); - -int -main (void) -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - grub_cv_target_cc_big_endian="$cand" -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext - done - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $grub_cv_target_cc_big_endian" >&5 -$as_echo "$grub_cv_target_cc_big_endian" >&6; } - - if test x"$grub_cv_target_cc_big_endian" = xno ; then - as_fn_error $? "could not force big-endian" "$LINENO" 5 - fi - - skip_linkflags="$(echo "$grub_cv_target_cc_big_endian"|sed 's@-Wl,-EB@@')" - - TARGET_CFLAGS="$TARGET_CFLAGS $skip_linkflags" - TARGET_CPPFLAGS="$TARGET_CPPFLAGS $skip_linkflags" - TARGET_CCASFLAGS="$TARGET_CCASFLAGS $skip_linkflags" - TARGET_LDFLAGS="$TARGET_LDFLAGS $grub_cv_target_cc_big_endian" -elif test x$target_cpu = xmipsel; then - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for options to get little-endian compilation" >&5 -$as_echo_n "checking for options to get little-endian compilation... " >&6; } -if ${grub_cv_target_cc_little_endian+:} false; then : - $as_echo_n "(cached) " >&6 -else - - grub_cv_target_cc_little_endian=no - for cand in "-target $target_cpu -Wl,-EL" "-target $target_cpu" \ - "-target $target_cpu-linux-gnu -Wl,-EL" "-target $target_cpu-linux-gnu" \ - "-EL"; do - if test x"$grub_cv_target_cc_little_endian" != xno ; then - break - fi - CFLAGS="$TARGET_CFLAGS $cand -Werror" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -#if defined(__BYTE_ORDER__) && defined(__ORDER_BIG_ENDIAN__) && (__ORDER_BIG_ENDIAN__ == __BYTE_ORDER__) -#error still big endian -#endif -asm (".globl start; start:"); -asm (".globl _start; _start:"); -asm (".globl __start; __start:"); -void __main (void); -void __main (void) {} -int main (void); - -int -main (void) -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - grub_cv_target_cc_little_endian="$cand" -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext - done - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $grub_cv_target_cc_little_endian" >&5 -$as_echo "$grub_cv_target_cc_little_endian" >&6; } - - if test x"$grub_cv_target_cc_little_endian" = xno ; then - as_fn_error $? "could not force little-endian" "$LINENO" 5 - fi - - skip_linkflags="$(echo "$grub_cv_target_cc_little_endian"|sed 's@-Wl,-EL@@')" - - TARGET_CFLAGS="$TARGET_CFLAGS $skip_linkflags" - TARGET_CPPFLAGS="$TARGET_CPPFLAGS $skip_linkflags" - TARGET_CCASFLAGS="$TARGET_CCASFLAGS $skip_linkflags" - TARGET_LDFLAGS="$TARGET_LDFLAGS $grub_cv_target_cc_little_endian" -fi - -# GRUB code is N32-compliant but it's experimental and we would prefer to -# avoid having too much variety when it doesn't result in any real improvement. -# Moreover N64 isn't supported. -if test "x$target_cpu" = xmips || test "x$target_cpu" = xmipsel ; then - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for options to force MIPS o32 ABI" >&5 -$as_echo_n "checking for options to force MIPS o32 ABI... " >&6; } -if ${grub_cv_target_cc_mips_o32_abi+:} false; then : - $as_echo_n "(cached) " >&6 -else - - grub_cv_target_cc_mips_o32_abi=no - for arg in "" "-mabi=32" "-target $target_cpu -mabi=32" ; do - if test x"$grub_cv_target_cc_mips_o32_abi" != xno ; then - break - fi - CFLAGS="$TARGET_CFLAGS $arg -Werror" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -#if !defined(_ABIO32) || !defined(_MIPS_SIM) || (_MIPS_SIM != _ABIO32) -#error not o32 ABI -#endif -asm (".globl start; start:"); -asm (".globl _start; _start:"); -asm (".globl __start; __start:"); -void __main (void); -void __main (void) {} -int main (void); - -int -main (void) -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - grub_cv_target_cc_mips_o32_abi="$arg" -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext - done - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $grub_cv_target_cc_mips_o32_abi" >&5 -$as_echo "$grub_cv_target_cc_mips_o32_abi" >&6; } - - if test x"$grub_cv_target_cc_mips_o32_abi" = xno ; then - as_fn_error $? "could not force MIPS o32 ABI" "$LINENO" 5 - fi - - TARGET_CFLAGS="$TARGET_CFLAGS $grub_cv_target_cc_mips_o32_abi" - TARGET_CCASFLAGS="$TARGET_CCASFLAGS $grub_cv_target_cc_mips_o32_abi" -fi - -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for options to compile assembly" >&5 -$as_echo_n "checking for options to compile assembly... " >&6; } -if ${grub_cv_cc_target_asm_compile+:} false; then : - $as_echo_n "(cached) " >&6 -else - -test_program= -case "x$target_cpu-$platform" in - xmips-* | xmipsel-*) - test_program=mips - ;; - xi386-pc) - test_program=i386-pc - ;; - xi386-* | xx86_64-*) - test_program=i386 - ;; - xpowerpc-* | xsparc64-* | xarm-*) - test_program=$target_cpu - ;; -esac -if test x"$test_program" = x ; then - grub_cv_cc_target_asm_compile= -else - found=no - for arg in "" "-no-integrated-as"; do - cmdline="$TARGET_CC -c -o /dev/null $TARGET_CCASFLAGS $arg $TARGET_CPPFLAGS $srcdir/asm-tests/$test_program.S" - echo "Running $cmdline" >&5 - if $cmdline >&5 2>&5; then - grub_cv_cc_target_asm_compile="$arg" - found=yes - break - fi - done - if test x"$found" = xno ; then - as_fn_error $? "could not compile assembly" "$LINENO" 5 - fi -fi - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $grub_cv_cc_target_asm_compile" >&5 -$as_echo "$grub_cv_cc_target_asm_compile" >&6; } - -TARGET_CCASFLAGS="$TARGET_CCASFLAGS $grub_cv_cc_target_asm_compile" - -if test "x$target_cpu" = xi386 && test "x$platform" != xemu; then - TARGET_CFLAGS="$TARGET_CFLAGS -march=i386" -fi - -if test "x$target_m32" = x1; then - # Force 32-bit mode. - TARGET_CFLAGS="$TARGET_CFLAGS -m32" - TARGET_CCASFLAGS="$TARGET_CCASFLAGS -m32" - TARGET_CPPFLAGS="$TARGET_CPPFLAGS -m32" - TARGET_LDFLAGS="$TARGET_LDFLAGS -m32" - TARGET_MODULE_FORMAT="elf32" -fi - -if test "x$target_m64" = x1; then - # Force 64-bit mode. - TARGET_CFLAGS="$TARGET_CFLAGS -m64" - TARGET_CCASFLAGS="$TARGET_CCASFLAGS -m64" - TARGET_CPPFLAGS="$TARGET_CPPFLAGS -m64" - TARGET_LDFLAGS="$TARGET_LDFLAGS -m64" - TARGET_MODULE_FORMAT="elf64" -fi - -if test "x$grub_cv_cc_target_clang" = xno && test "x$target_cpu" = xi386 && test "x$platform" != xemu && test "x$platform" != xefi; then - TARGET_CFLAGS="$TARGET_CFLAGS -mrtd -mregparm=3" -fi - -# on mips redirect cache flushing function to non-existant one. -if test "x$target_cpu" = xmips || test "x$target_cpu" = xmipsel ; then - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether -mflush-func=grub_red_herring works" >&5 -$as_echo_n "checking whether -mflush-func=grub_red_herring works... " >&6; } -if ${grub_cv_cc_mflush_func+:} false; then : - $as_echo_n "(cached) " >&6 -else - - CFLAGS="$TARGET_CFLAGS -mflush-func=grub_red_herring -Werror" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -int -main (void) -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - grub_cv_cc_mflush_func=yes -else - grub_cv_cc_mflush_func=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $grub_cv_cc_mflush_func" >&5 -$as_echo "$grub_cv_cc_mflush_func" >&6; } - - if test "x$grub_cv_cc_mflush_func" = xyes; then - TARGET_CFLAGS="$TARGET_CFLAGS -mflush-func=grub_red_herring" - fi -fi - - -# Force no alignment to save space on i386. -if test "x$target_cpu" = xi386; then - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether -falign-loops works" >&5 -$as_echo_n "checking whether -falign-loops works... " >&6; } -if ${grub_cv_cc_falign_loop+:} false; then : - $as_echo_n "(cached) " >&6 -else - - CFLAGS="$TARGET_CFLAGS -falign-loops=1 -Werror" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -int -main (void) -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - grub_cv_cc_falign_loop=yes -else - grub_cv_cc_falign_loop=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $grub_cv_cc_falign_loop" >&5 -$as_echo "$grub_cv_cc_falign_loop" >&6; } - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether -malign-loops works" >&5 -$as_echo_n "checking whether -malign-loops works... " >&6; } -if ${grub_cv_cc_malign_loop+:} false; then : - $as_echo_n "(cached) " >&6 -else - - CFLAGS="$TARGET_CFLAGS -malign-loops=1 -Werror" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -int -main (void) -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - grub_cv_cc_malign_loop=yes -else - grub_cv_cc_malign_loop=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $grub_cv_cc_malign_loop" >&5 -$as_echo "$grub_cv_cc_malign_loop" >&6; } - - if test "x$grub_cv_cc_falign_loop" = xyes; then - TARGET_CFLAGS="$TARGET_CFLAGS -falign-jumps=1 -falign-loops=1 -falign-functions=1" - elif test "x$grub_cv_cc_malign_loop" = xyes; then - TARGET_CFLAGS="$TARGET_CFLAGS -malign-jumps=1 -malign-loops=1 -malign-functions=1" - fi -fi - -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether -freg-struct-return works" >&5 -$as_echo_n "checking whether -freg-struct-return works... " >&6; } -if ${grub_cv_cc_freg_struct_return+:} false; then : - $as_echo_n "(cached) " >&6 -else - - CFLAGS="$TARGET_CFLAGS -freg-struct-return -Werror" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -int -main (void) -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - grub_cv_cc_freg_struct_return=yes -else - grub_cv_cc_freg_struct_return=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $grub_cv_cc_freg_struct_return" >&5 -$as_echo "$grub_cv_cc_freg_struct_return" >&6; } - -if test "x$grub_cv_cc_freg_struct_return" = xyes; then - TARGET_CFLAGS="$TARGET_CFLAGS -freg-struct-return" -fi - -if ( test "x$target_cpu" = xi386 || test "x$target_cpu" = xx86_64 ) && test "x$platform" != xemu; then - # Some toolchains enable these features by default, but they need - # registers that aren't set up properly in GRUB. - TARGET_CFLAGS="$TARGET_CFLAGS -mno-mmx -mno-sse -mno-sse2 -mno-sse3 -mno-3dnow" -fi - -# GRUB doesn't use float or doubles at all. Yet some toolchains may decide -# that floats are a good fit to run instead of what's written in the code. -# Given that floating point unit is disabled (if present to begin with) -# when GRUB is running which may result in various hard crashes. -if test x"$platform" != xemu ; then - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for options to get soft-float" >&5 -$as_echo_n "checking for options to get soft-float... " >&6; } -if ${grub_cv_target_cc_soft_float+:} false; then : - $as_echo_n "(cached) " >&6 -else - - grub_cv_target_cc_soft_float=no - if test "x$target_cpu" = xarm64; then - CFLAGS="$TARGET_CFLAGS -mgeneral-regs-only -Werror" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -int -main (void) -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - grub_cv_target_cc_soft_float="-mgeneral-regs-only" -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - fi - if test "x$target_cpu" = xriscv32; then - CFLAGS="$TARGET_CFLAGS -march=rv32imac -mabi=ilp32 -Werror" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -int -main (void) -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - grub_cv_target_cc_soft_float="-march=rv32imac -mabi=ilp32" -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - fi - if test "x$target_cpu" = xriscv64; then - CFLAGS="$TARGET_CFLAGS -march=rv64imac -mabi=lp64 -Werror" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -int -main (void) -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - grub_cv_target_cc_soft_float="-march=rv64imac -mabi=lp64" -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - fi - if test "x$target_cpu" = xia64; then - CFLAGS="$TARGET_CFLAGS -mno-inline-float-divide -mno-inline-sqrt -Werror" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -int -main (void) -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - grub_cv_target_cc_soft_float="-mno-inline-float-divide -mno-inline-sqrt" -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - fi - for cand in "-msoft-float -Xclang -msoft-float -Xclang -no-implicit-float" \ - "-Xclang -msoft-float -Xclang -no-implicit-float" \ - "-Xclang -msoft-float" "-msoft-float"; do - if test x"$grub_cv_target_cc_soft_float" != xno ; then - break - fi - CFLAGS="$TARGET_CFLAGS $cand -Werror" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -int -main (void) -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - grub_cv_target_cc_soft_float="$cand" -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - done - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $grub_cv_target_cc_soft_float" >&5 -$as_echo "$grub_cv_target_cc_soft_float" >&6; } - - if test x"$grub_cv_target_cc_soft_float" = xno ; then - as_fn_error $? "could not force soft-float" "$LINENO" 5 - fi - - case x"$grub_cv_target_cc_soft_float" in - x*"-Xclang"*) - # A trick so that clang doesn't see it on link stаge - TARGET_CPPFLAGS="$TARGET_CPPFLAGS $grub_cv_target_cc_soft_float" - ;; - *) - TARGET_CFLAGS="$TARGET_CFLAGS $grub_cv_target_cc_soft_float" - ;; - esac - TARGET_CCASFLAGS="$TARGET_CCASFLAGS $grub_cv_target_cc_soft_float" - -fi - -if test x"$target_cpu" = xsparc64 ; then - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for options to reserve application registers" >&5 -$as_echo_n "checking for options to reserve application registers... " >&6; } -if ${grub_cv_target_cc_mno_app_regs+:} false; then : - $as_echo_n "(cached) " >&6 -else - - grub_cv_target_cc_mno_app_regs=no - for cand in "-mllvm -sparc-reserve-app-registers" \ - "-mno-app-regs"; do - if test x"$grub_cv_target_cc_mno_app_regs" != xno ; then - break - fi - CFLAGS="$TARGET_CFLAGS $cand -Werror" - CPPFLAGS="$TARGET_CPPFLAGS" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -int -main (void) -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - grub_cv_target_cc_mno_app_regs="$cand" -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - done - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $grub_cv_target_cc_mno_app_regs" >&5 -$as_echo "$grub_cv_target_cc_mno_app_regs" >&6; } - - if test x"$grub_cv_target_cc_mno_app_regs" = xno ; then - as_fn_error $? "could not reserve application registers" "$LINENO" 5 - fi - if test x"$grub_cv_target_cc_mno_app_regs" = x"-mllvm -sparc-reserve-app-registers" ; then - # A trick so that clang doesn't see it on link stаge - TARGET_CPPFLAGS="$TARGET_CPPFLAGS $grub_cv_target_cc_mno_app_regs" - else - TARGET_CFLAGS="$TARGET_CFLAGS $grub_cv_target_cc_mno_app_regs" - fi - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for no-relax options" >&5 -$as_echo_n "checking for no-relax options... " >&6; } -if ${grub_cv_target_cc_mno_relax+:} false; then : - $as_echo_n "(cached) " >&6 -else - - grub_cv_target_cc_mno_relax=no - for cand in "-mno-relax" "-Wl,--no-relax"; do - if test x"$grub_cv_target_cc_mno_relax" != xno ; then - break - fi - LDFLAGS="$TARGET_LDFLAGS $cand -nostdlib -static" - CFLAGS="$TARGET_CFLAGS -Werror" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - - asm (".globl start; start:"); - void __main (void); - void __main (void) {} - int main (void); - -int -main (void) -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - grub_cv_target_cc_mno_relax="$cand" -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext - done - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $grub_cv_target_cc_mno_relax" >&5 -$as_echo "$grub_cv_target_cc_mno_relax" >&6; } - LDFLAGS="$TARGET_LDFLAGS" - CFLAGS="$TARGET_CFLAGS" - - if test x"$grub_cv_target_cc_mno_relax" = xno ; then - as_fn_error $? "could not find no-relax options" "$LINENO" 5 - fi - TARGET_LDFLAGS="$TARGET_LDFLAGS $grub_cv_target_cc_mno_relax" -fi - -# By default, GCC 4.4 generates .eh_frame sections containing unwind -# information in some cases where it previously did not. GRUB doesn't need -# these and they just use up vital space. Restore the old compiler -# behaviour. -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether -fno-dwarf2-cfi-asm works" >&5 -$as_echo_n "checking whether -fno-dwarf2-cfi-asm works... " >&6; } -if ${grub_cv_cc_fno_dwarf2_cfi_asm+:} false; then : - $as_echo_n "(cached) " >&6 -else - - CFLAGS="$TARGET_CFLAGS -fno-dwarf2-cfi-asm" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -int -main (void) -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - grub_cv_cc_fno_dwarf2_cfi_asm=yes -else - grub_cv_cc_fno_dwarf2_cfi_asm=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $grub_cv_cc_fno_dwarf2_cfi_asm" >&5 -$as_echo "$grub_cv_cc_fno_dwarf2_cfi_asm" >&6; } - -if test "x$grub_cv_cc_fno_dwarf2_cfi_asm" = xyes; then - TARGET_CFLAGS="$TARGET_CFLAGS -fno-dwarf2-cfi-asm" -fi - -if test x"$target_os" = xcygwin; then - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether option -fno-reorder-functions works" >&5 -$as_echo_n "checking whether option -fno-reorder-functions works... " >&6; } -if ${grub_cv_cc_no_reorder_functions+:} false; then : - $as_echo_n "(cached) " >&6 -else - - CFLAGS="$TARGET_CFLAGS -fno-reorder-functions" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -int -main (void) -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - grub_cv_cc_no_reorder_functions=yes -else - grub_cv_cc_no_reorder_functions=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $grub_cv_cc_no_reorder_functions" >&5 -$as_echo "$grub_cv_cc_no_reorder_functions" >&6; } -fi - -if test x"$target_os" = xcygwin && test "x$grub_cv_cc_no_reorder_functions" = xyes; then - TARGET_CFLAGS="$TARGET_CFLAGS -fno-reorder-functions" -fi - -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether -mno-stack-arg-probe works" >&5 -$as_echo_n "checking whether -mno-stack-arg-probe works... " >&6; } -if ${grub_cv_cc_mno_stack_arg_probe+:} false; then : - $as_echo_n "(cached) " >&6 -else - - CFLAGS="$TARGET_CFLAGS -mno-stack-arg-probe" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -int -main (void) -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - grub_cv_cc_mno_stack_arg_probe=yes -else - grub_cv_cc_mno_stack_arg_probe=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $grub_cv_cc_mno_stack_arg_probe" >&5 -$as_echo "$grub_cv_cc_mno_stack_arg_probe" >&6; } - -if test "x$grub_cv_cc_mno_stack_arg_probe" = xyes; then - TARGET_CFLAGS="$TARGET_CFLAGS -mno-stack-arg-probe" -fi - - -# By default, GCC 4.6 generates .eh_frame sections containing unwind -# information in some cases where it previously did not. GRUB doesn't need -# these and they just use up vital space. Restore the old compiler -# behaviour. -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether -fno-asynchronous-unwind-tables works" >&5 -$as_echo_n "checking whether -fno-asynchronous-unwind-tables works... " >&6; } -if ${grub_cv_cc_fno_asynchronous_unwind_tables+:} false; then : - $as_echo_n "(cached) " >&6 -else - - CFLAGS="$TARGET_CFLAGS -fno-asynchronous-unwind-tables" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -int -main (void) -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - grub_cv_cc_fno_asynchronous_unwind_tables=yes -else - grub_cv_cc_fno_asynchronous_unwind_tables=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $grub_cv_cc_fno_asynchronous_unwind_tables" >&5 -$as_echo "$grub_cv_cc_fno_asynchronous_unwind_tables" >&6; } - -if test "x$grub_cv_cc_fno_asynchronous_unwind_tables" = xyes; then - TARGET_CFLAGS="$TARGET_CFLAGS -fno-asynchronous-unwind-tables" -fi - -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether -fno-unwind-tables works" >&5 -$as_echo_n "checking whether -fno-unwind-tables works... " >&6; } -if ${grub_cv_cc_fno_unwind_tables+:} false; then : - $as_echo_n "(cached) " >&6 -else - - CFLAGS="$TARGET_CFLAGS -fno-unwind-tables" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -int -main (void) -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - grub_cv_cc_fno_unwind_tables=yes -else - grub_cv_cc_fno_unwind_tables=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $grub_cv_cc_fno_unwind_tables" >&5 -$as_echo "$grub_cv_cc_fno_unwind_tables" >&6; } - -if test "x$grub_cv_cc_fno_unwind_tables" = xyes; then - TARGET_CFLAGS="$TARGET_CFLAGS -fno-unwind-tables" -fi - - -CFLAGS="$TARGET_CFLAGS" - - -if test x"$platform" = xemu ; then - TARGET_OBJ2ELF= - grub_cv_target_cc_link_format= - case "$host_os" in - *darwin* | *mac*) - grub_cv_target_cc_link_format="-arch,${target_cpu}" - TARGET_LDFLAGS="$TARGET_LDFLAGS -Wl,$grub_cv_target_cc_link_format" - ;; - *windows* | *cygwin* | *mingw*) - if test x${target_cpu} = xi386 ; then - grub_cv_target_cc_link_format=-mi386pe - TARGET_OBJ2ELF='./build-grub-pe2elf$(BUILD_EXEEXT)' - fi - if test x${target_cpu} = xx86_64 ; then - grub_cv_target_cc_link_format=-mi386pep - TARGET_OBJ2ELF='./build-grub-pep2elf$(BUILD_EXEEXT)' - fi - TARGET_LDFLAGS="$TARGET_LDFLAGS -Wl,$grub_cv_target_cc_link_format" - ;; - esac -elif test x"$target_cpu" = xi386 || test x"$target_cpu" = xx86_64; then - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for target linking format" >&5 -$as_echo_n "checking for target linking format... " >&6; } -if ${grub_cv_target_cc_link_format+:} false; then : - $as_echo_n "(cached) " >&6 -else - - grub_cv_target_cc_link_format=unknown - for format in -melf_${target_cpu} -melf_${target_cpu}_fbsd -melf_${target_cpu}_obsd -melf_${target_cpu}_haiku -mi386pe -mi386pep -arch,${target_cpu}; do - if test x${target_cpu} != xi386 && test x$format = x-mi386pe; then - continue - fi - if test x${target_cpu} != xx86_64 && test x$format = x-mi386pep; then - continue - fi - CFLAGS="$TARGET_CFLAGS" - LDFLAGS="$TARGET_LDFLAGS -Wl,$format -nostdlib -static" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - - asm (".globl start; start:"); - asm (".globl _start; _start:"); - asm (".globl __start; __start:"); - void __main (void); - void __main (void) {} - -int -main (void) -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - flag=1 -else - flag=0 -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext - if test x"$flag" = x1; then - grub_cv_target_cc_link_format="$format" - break - fi - done -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $grub_cv_target_cc_link_format" >&5 -$as_echo "$grub_cv_target_cc_link_format" >&6; } - if test x"$grub_cv_target_cc_link_format" = xunknown; then - as_fn_error $? "no suitable link format found" "$LINENO" 5 - fi - TARGET_LDFLAGS="$TARGET_LDFLAGS -Wl,$grub_cv_target_cc_link_format" - if test x"$grub_cv_target_cc_link_format" = x-mi386pe ; then - TARGET_OBJ2ELF='./build-grub-pe2elf$(BUILD_EXEEXT)' - fi - if test x"$grub_cv_target_cc_link_format" = x-mi386pep ; then - TARGET_OBJ2ELF='./build-grub-pep2elf$(BUILD_EXEEXT)' - fi -fi - -if test x$grub_cv_target_cc_link_format = x-arch,i386 || test x$grub_cv_target_cc_link_format = x-arch,x86_64; then - TARGET_APPLE_LINKER=1 - # Extract the first word of "objconv", so it can be a program name with args. -set dummy objconv; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_TARGET_OBJCONV+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test -n "$TARGET_OBJCONV"; then - ac_cv_prog_TARGET_OBJCONV="$TARGET_OBJCONV" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_TARGET_OBJCONV="objconv" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -TARGET_OBJCONV=$ac_cv_prog_TARGET_OBJCONV -if test -n "$TARGET_OBJCONV"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $TARGET_OBJCONV" >&5 -$as_echo "$TARGET_OBJCONV" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - - - if test "x$TARGET_OBJCONV" = x ; then - # Extract the first word of "objconv", so it can be a program name with args. -set dummy objconv; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_TARGET_OBJCONV+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test -n "$TARGET_OBJCONV"; then - ac_cv_prog_TARGET_OBJCONV="$TARGET_OBJCONV" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in . -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_TARGET_OBJCONV="./objconv" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -TARGET_OBJCONV=$ac_cv_prog_TARGET_OBJCONV -if test -n "$TARGET_OBJCONV"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $TARGET_OBJCONV" >&5 -$as_echo "$TARGET_OBJCONV" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - - - fi - if test "x$TARGET_OBJCONV" = x ; then - as_fn_error $? "objconv not found which is required when building with apple compiler" "$LINENO" 5 - fi - TARGET_IMG_LDSCRIPT= - TARGET_IMG_CFLAGS="-static" - TARGET_IMG_LDFLAGS='-nostdlib -static -Wl,-preload -Wl,-segalign,20' - TARGET_IMG_LDFLAGS_AC='-nostdlib -static -Wl,-preload -Wl,-segalign,20' - TARGET_IMG_BASE_LDOPT="-Wl,-image_base" - TARGET_LDFLAGS_OLDMAGIC="" -elif test x$grub_cv_target_cc_link_format = x-mi386pe || test x$grub_cv_target_cc_link_format = x-mi386pep ; then - TARGET_APPLE_LINKER=0 - TARGET_LDFLAGS_OLDMAGIC="-Wl,-N" - TARGET_IMG_LDSCRIPT='$(top_srcdir)'"/${grub_coredir}/conf/i386-cygwin-img-ld.sc" - TARGET_IMG_LDFLAGS="-Wl,-T${TARGET_IMG_LDSCRIPT}" - TARGET_IMG_LDFLAGS_AC="-Wl,-T${srcdir}/${grub_coredir}/conf/i386-cygwin-img-ld.sc" - TARGET_IMG_BASE_LDOPT="-Wl,-Ttext" - TARGET_IMG_CFLAGS= -else - TARGET_APPLE_LINKER=0 - TARGET_LDFLAGS_OLDMAGIC="-Wl,-N" - TARGET_IMG_LDSCRIPT= - TARGET_IMG_LDFLAGS='-Wl,-N' - TARGET_IMG_LDFLAGS_AC='-Wl,-N' - TARGET_IMG_BASE_LDOPT="-Wl,-Ttext" - TARGET_IMG_CFLAGS= -fi - -CFLAGS="$TARGET_CFLAGS" - -# Check whether --enable-efiemu was given. -if test "${enable_efiemu+set}" = set; then : - enableval=$enable_efiemu; -fi - -if test x"$enable_efiemu" = xno ; then - efiemu_excuse="explicitly disabled" -fi - -if test x"$grub_cv_target_cc_link_format" = x-mi386pe || test x"$grub_cv_target_cc_link_format" = x-mi386pep ; then - efiemu_excuse="not available on cygwin" -fi -if test x"$target_cpu" != xi386 ; then - efiemu_excuse="only available on i386" -fi -if test x"$platform" = xefi ; then - efiemu_excuse="not available on efi" -fi - -if test x"$efiemu_excuse" = x ; then - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether options required for efiemu work" >&5 -$as_echo_n "checking whether options required for efiemu work... " >&6; } -if ${grub_cv_cc_efiemu+:} false; then : - $as_echo_n "(cached) " >&6 -else - - CFLAGS="-m64 -nostdlib -O2 -mcmodel=large -mno-red-zone" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -int -main (void) -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - grub_cv_cc_efiemu=yes -else - grub_cv_cc_efiemu=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $grub_cv_cc_efiemu" >&5 -$as_echo "$grub_cv_cc_efiemu" >&6; } - if test x$grub_cv_cc_efiemu = xno; then - efiemu_excuse="cannot compile with -m64 -mcmodel=large -mno-red-zone -nostdlib" - fi -fi -if test x"$efiemu_excuse" = x ; then - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for efiemu64 linking format" >&5 -$as_echo_n "checking for efiemu64 linking format... " >&6; } -if ${grub_cv_target_cc_efiemu64_link_format+:} false; then : - $as_echo_n "(cached) " >&6 -else - - grub_cv_target_cc_efiemu64_link_format=unknown - for format in -melf_x86_64 -melf_x86_64_fbsd -melf_x86_64_obsd -melf_x86_64_haiku -arch,x86_64; do - CFLAGS="-m64 -nostdlib -O2 -mcmodel=large -mno-red-zone" - LDFLAGS="-m64 -Wl,$format -nostdlib -static" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - - asm (".globl start; start:"); - asm (".globl _start; _start:"); - asm (".globl __start; __start:"); - void __main (void); - void __main (void) {} - -int -main (void) -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - flag=1 -else - flag=0 -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext - if test x"$flag" = x1; then - grub_cv_target_cc_efiemu64_link_format="$format" - break - fi - done -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $grub_cv_target_cc_efiemu64_link_format" >&5 -$as_echo "$grub_cv_target_cc_efiemu64_link_format" >&6; } - if test x"$grub_cv_target_cc_efiemu64_link_format" = xunknown; then - efiemu_excuse="no suitable link format for efiemu64 found" - else - EFIEMU64_LINK_FORMAT="-Wl,$grub_cv_target_cc_efiemu64_link_format" - fi -fi -if test x"$enable_efiemu" = xyes && test x"$efiemu_excuse" != x ; then - as_fn_error $? "efiemu runtime was explicitly requested but can't be compiled ($efiemu_excuse)" "$LINENO" 5 -fi -if test x"$efiemu_excuse" = x ; then -enable_efiemu=yes -else -enable_efiemu=no -fi - - - -CFLAGS="$TARGET_CFLAGS" - - - - -LDFLAGS="$TARGET_LDFLAGS" - -if test "$target_cpu" = x86_64 || test "$target_cpu" = sparc64 || test "$target_cpu" = riscv64 ; then - # Use large model to support 4G memory - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether option -mcmodel=large works" >&5 -$as_echo_n "checking whether option -mcmodel=large works... " >&6; } -if ${grub_cv_cc_mcmodel+:} false; then : - $as_echo_n "(cached) " >&6 -else - - CFLAGS="$TARGET_CFLAGS -mcmodel=large" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -int -main (void) -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - grub_cv_cc_mcmodel=yes -else - grub_cv_cc_mcmodel=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $grub_cv_cc_mcmodel" >&5 -$as_echo "$grub_cv_cc_mcmodel" >&6; } - if test "x$grub_cv_cc_mcmodel" = xyes; then - TARGET_CFLAGS="$TARGET_CFLAGS -mcmodel=large" - elif test "$target_cpu" = sparc64 || test "$target_cpu" = riscv64; then - TARGET_CFLAGS="$TARGET_CFLAGS -mcmodel=medany" - fi -fi - -if test "$target_cpu"-"$platform" = x86_64-efi; then - # EFI writes to stack below %rsp, we must not use the red zone - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether option -mno-red-zone works" >&5 -$as_echo_n "checking whether option -mno-red-zone works... " >&6; } -if ${grub_cv_cc_no_red_zone+:} false; then : - $as_echo_n "(cached) " >&6 -else - - CFLAGS="$TARGET_CFLAGS -mno-red-zone" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -int -main (void) -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - grub_cv_cc_no_red_zone=yes -else - grub_cv_cc_no_red_zone=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $grub_cv_cc_no_red_zone" >&5 -$as_echo "$grub_cv_cc_no_red_zone" >&6; } - if test "x$grub_cv_cc_no_red_zone" = xno; then - as_fn_error $? "-mno-red-zone not supported, upgrade your gcc" "$LINENO" 5 - fi - - TARGET_CFLAGS="$TARGET_CFLAGS -mno-red-zone" -fi - -if test "x$target_cpu" = xarm; then - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for options to disable movt and movw" >&5 -$as_echo_n "checking for options to disable movt and movw... " >&6; } -if ${grub_cv_target_cc_mno_movt+:} false; then : - $as_echo_n "(cached) " >&6 -else - - grub_cv_target_cc_mno_movt=no - for cand in "-mno-movt" \ - "-mllvm -arm-use-movt=0"; do - if test x"$grub_cv_target_cc_mno_movt" != xno ; then - break - fi - CFLAGS="$TARGET_CFLAGS $cand -Werror" - CPPFLAGS="$TARGET_CPPFLAGS" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -int -main (void) -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - grub_cv_target_cc_mno_movt="$cand" -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - done - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $grub_cv_target_cc_mno_movt" >&5 -$as_echo "$grub_cv_target_cc_mno_movt" >&6; } - - if test x"$grub_cv_target_cc_mno_movt" != xno ; then - # A trick so that clang doesn't see it on link stage - TARGET_CPPFLAGS="$TARGET_CPPFLAGS $grub_cv_target_cc_mno_movt" - fi - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether option -mthumb-interwork works" >&5 -$as_echo_n "checking whether option -mthumb-interwork works... " >&6; } -if ${grub_cv_cc_mthumb_interwork+:} false; then : - $as_echo_n "(cached) " >&6 -else - - CFLAGS="$TARGET_CFLAGS -mthumb-interwork -Werror" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -int -main (void) -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - grub_cv_cc_mthumb_interwork=yes -else - grub_cv_cc_mthumb_interwork=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $grub_cv_cc_mthumb_interwork" >&5 -$as_echo "$grub_cv_cc_mthumb_interwork" >&6; } - if test "x$grub_cv_cc_mthumb_interwork" = xyes; then - TARGET_CFLAGS="$TARGET_CFLAGS -mthumb-interwork" - # Clang defaults to thumb interworking - elif test "x$grub_cv_cc_target_clang" = xno ; then - as_fn_error $? "your compiler doesn't support -mthumb-interwork" "$LINENO" 5 - fi -fi - -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether option -Qn works" >&5 -$as_echo_n "checking whether option -Qn works... " >&6; } -if ${grub_cv_target_cc_qn+:} false; then : - $as_echo_n "(cached) " >&6 -else - - CFLAGS="$TARGET_CFLAGS -Qn -Qunused-arguments -Werror" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -int -main (void) -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - grub_cv_target_cc_qn=yes -else - grub_cv_target_cc_qn=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $grub_cv_target_cc_qn" >&5 -$as_echo "$grub_cv_target_cc_qn" >&6; } -if test "x$grub_cv_target_cc_qn" = xyes; then - TARGET_CFLAGS="$TARGET_CFLAGS -Qn -Qunused-arguments" -fi - -# -# Compiler features. -# - -CFLAGS="$TARGET_CFLAGS" - -# Position independent executable. - -# Position independent executable. -pie_possible=yes -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether \`$CC' has \`-fPIE' as default" >&5 -$as_echo_n "checking whether \`$CC' has \`-fPIE' as default... " >&6; } -# Is this a reliable test case? -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -#ifdef __PIE__ -int main() { - return 0; -} -#else -#error NO __PIE__ DEFINED -#endif - -_ACEOF - -# `$CC -c -o ...' might not be portable. But, oh, well... Is calling -# `ac_compile' like this correct, after all? -if eval "$ac_compile -S -o conftest.s" 2> /dev/null; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -$as_echo "yes" >&6; } - # Should we clear up other files as well, having called `AC_LANG_CONFTEST'? - rm -f conftest.s -else - pie_possible=no - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether linker accepts -no-pie" >&5 -$as_echo_n "checking whether linker accepts -no-pie... " >&6; } -if ${grub_cv_cc_ld_no_pie+:} false; then : - $as_echo_n "(cached) " >&6 -else - save_LDFLAGS="$LDFLAGS" -LDFLAGS="$LDFLAGS -no-pie -nostdlib -Werror" -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -int -main (void) -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - grub_cv_cc_ld_no_pie=yes -else - grub_cv_cc_ld_no_pie=no -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -LDFLAGS="$save_LDFLAGS" - -fi - -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $grub_cv_cc_ld_no_pie" >&5 -$as_echo "$grub_cv_cc_ld_no_pie" >&6; } -nopie_possible=no -if test "x$grub_cv_cc_ld_no_pie" = xyes ; then - nopie_possible=yes -fi - -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether linker accepts -nopie" >&5 -$as_echo_n "checking whether linker accepts -nopie... " >&6; } -if ${grub_cv_cc_ld_no_pie_oneword+:} false; then : - $as_echo_n "(cached) " >&6 -else - save_LDFLAGS="$LDFLAGS" -LDFLAGS="$LDFLAGS -nopie -nostdlib -Werror" -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -int -main (void) -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - grub_cv_cc_ld_no_pie_oneword=yes -else - grub_cv_cc_ld_no_pie_oneword=no -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -LDFLAGS="$save_LDFLAGS" - -fi - -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $grub_cv_cc_ld_no_pie_oneword" >&5 -$as_echo "$grub_cv_cc_ld_no_pie_oneword" >&6; } -nopie_oneword_possible=no -if test "x$grub_cv_cc_ld_no_pie_oneword" = xyes ; then - nopie_oneword_possible=yes -fi - - -# Position independent executable. -link_nopie_needed=no -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether linker needs disabling of PIE to work" >&5 -$as_echo_n "checking whether linker needs disabling of PIE to work... " >&6; } -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -_ACEOF - -if eval "$ac_compile -Wl,-r,-d -nostdlib -Werror -o conftest.o" 2> /dev/null; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } - # Should we clear up other files as well, having called `AC_LANG_CONFTEST'? - rm -f conftest.o -else - link_nopie_needed=yes - { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -$as_echo "yes" >&6; } -fi - -# Need that, because some distributions ship compilers that include -# `-fPIE' or '-fpie' and '-pie' in the default specs. -if [ x"$pie_possible" = xyes ]; then - TARGET_CFLAGS="$TARGET_CFLAGS -fno-PIE -fno-pie" -fi - -if [ x"$link_nopie_needed" = xyes ] || [ x"$pie_possible" = xyes ]; then - if [ x"$nopie_possible" = xyes ]; then - TARGET_LDFLAGS="$TARGET_LDFLAGS -no-pie" - fi - if [ x"$nopie_oneword_possible" = xyes ]; then - TARGET_LDFLAGS="$TARGET_LDFLAGS -nopie" - fi -fi - -CFLAGS="$TARGET_CFLAGS" -LDFLAGS="$TARGET_LDFLAGS" - -# Position independent executable. - -# Position independent executable. -pic_possible=yes -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether \`$CC' has \`-fPIC' as default" >&5 -$as_echo_n "checking whether \`$CC' has \`-fPIC' as default... " >&6; } -# Is this a reliable test case? -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -#ifdef __PIC__ -int main() { - return 0; -} -#else -#error NO __PIC__ DEFINED -#endif - -_ACEOF - -# `$CC -c -o ...' might not be portable. But, oh, well... Is calling -# `ac_compile' like this correct, after all? -if eval "$ac_compile -S -o conftest.s" 2> /dev/null; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -$as_echo "yes" >&6; } - # Should we clear up other files as well, having called `AC_LANG_CONFTEST'? - rm -f conftest.s -else - pic_possible=no - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - -# On most platforms we don't want PIC as it only makes relocations harder -# and code less efficient. On mips we want to have one got table per module -# and reload $gp in every function. -# GCC implements it using symbol __gnu_local_gp in non-PIC as well. -# However with clang we need PIC for this reloading to happen. -# With arm64 we need relocations that are in some way representable in -# PE as we need to support arm64-efi. Without -fPIC clang generates -# movk's which aren't representable. -# Since default varies across dictributions use either -fPIC or -fno-PIC -# explicitly. -if ( test x$target_cpu = xmips || test x$target_cpu = xmipsel || test x$target_cpu = xarm64 ) && test "x$grub_cv_cc_target_clang" = xyes ; then - TARGET_CFLAGS="$TARGET_CFLAGS -fPIC" -elif [ x"$pic_possible" = xyes ]; then - TARGET_CFLAGS="$TARGET_CFLAGS -fno-PIC" -fi - -CFLAGS="$TARGET_CFLAGS" - -# Smashing stack protector. - -# Smashing stack protector. -ssp_possible=yes -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether \`$CC' accepts \`-fstack-protector'" >&5 -$as_echo_n "checking whether \`$CC' accepts \`-fstack-protector'... " >&6; } -# Is this a reliable test case? -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -void foo (void) { volatile char a[8]; a[3]; } - -_ACEOF -# `$CC -c -o ...' might not be portable. But, oh, well... Is calling -# `ac_compile' like this correct, after all? -if eval "$ac_compile -S -fstack-protector -o conftest.s" 2> /dev/null; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -$as_echo "yes" >&6; } - # Should we clear up other files as well, having called `AC_LANG_CONFTEST'? - rm -f conftest.s -else - ssp_possible=no - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - -# Need that, because some distributions ship compilers that include -# `-fstack-protector' in the default specs. -if test "x$ssp_possible" = xyes; then - TARGET_CFLAGS="$TARGET_CFLAGS -fno-stack-protector" -fi - -CFLAGS="$TARGET_CFLAGS" - - -# Smashing stack arg probe. -sap_possible=yes -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether \`$CC' accepts \`-mstack-arg-probe'" >&5 -$as_echo_n "checking whether \`$CC' accepts \`-mstack-arg-probe'... " >&6; } -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -void foo (void) { volatile char a[8]; a[3]; } - -_ACEOF -if eval "$ac_compile -S -mstack-arg-probe -Werror -o conftest.s" 2> /dev/null; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -$as_echo "yes" >&6; } - # Should we clear up other files as well, having called `AC_LANG_CONFTEST'? - rm -f conftest.s -else - sap_possible=no - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - -# Cygwin's GCC uses alloca() to probe the stackframe on static -# stack allocations above some threshold. -if test x"$sap_possible" = xyes; then - TARGET_CFLAGS="$TARGET_CFLAGS -mno-stack-arg-probe" -fi - -CFLAGS="$TARGET_CFLAGS" - -# -mno-unaligned-access -mstrict-align -if test "$target_cpu" = arm; then - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for compile options to get strict alignment" >&5 -$as_echo_n "checking for compile options to get strict alignment... " >&6; } -if ${grub_cv_target_cc_strict_align+:} false; then : - $as_echo_n "(cached) " >&6 -else - - grub_cv_target_cc_strict_align= - for arg in -mno-unaligned-access "-Xclang -mstrict-align" -mstrict-align; do - CFLAGS="$TARGET_CFLAGS $arg -Werror" - LDFLAGS="$TARGET_LDFLAGS" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -int -main (void) -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - flag=1 -else - flag=0 -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - if test x"$flag" = x1; then - grub_cv_target_cc_strict_align="$arg" - break - fi - done -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $grub_cv_target_cc_strict_align" >&5 -$as_echo "$grub_cv_target_cc_strict_align" >&6; } - - TARGET_CFLAGS="$TARGET_CFLAGS $grub_cv_target_cc_strict_align" - if test x"$grub_cv_target_cc_strict_align" = x"-Xclang -mstrict-align"; then - TARGET_LDFLAGS="$TARGET_LDFLAGS -Qunused-arguments" - fi - { $as_echo "$as_me:${as_lineno-$LINENO}: checking if compiler generates unaligned accesses" >&5 -$as_echo_n "checking if compiler generates unaligned accesses... " >&6; } -if ${grub_cv_cc_target_emits_unaligned+:} false; then : - $as_echo_n "(cached) " >&6 -else - CFLAGS="$TARGET_CFLAGS" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -int -main (void) -{ - -#ifdef __ARM_FEATURE_UNALIGNED -#error "unaligned" -#endif - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - grub_cv_cc_target_emits_unaligned=no -else - grub_cv_cc_target_emits_unaligned=yes -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $grub_cv_cc_target_emits_unaligned" >&5 -$as_echo "$grub_cv_cc_target_emits_unaligned" >&6; } - if test x$grub_cv_cc_target_emits_unaligned = xyes; then - as_fn_error $? "compiler generates unaligned accesses" "$LINENO" 5 - fi -fi - -# Set them to their new values for the tests below. -CC="$TARGET_CC" -if test x"$platform" = xemu ; then -CFLAGS="$TARGET_CFLAGS -Wno-error" -elif test "x$TARGET_APPLE_LINKER" = x1 ; then -CFLAGS="$TARGET_CFLAGS -nostdlib -static -Wno-error" -else -CFLAGS="$TARGET_CFLAGS -nostdlib -Wno-error" -fi -CPPFLAGS="$TARGET_CPPFLAGS" - - - -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if C symbols get an underscore after compilation" >&5 -$as_echo_n "checking if C symbols get an underscore after compilation... " >&6; } -if ${grub_cv_asm_uscore+:} false; then : - $as_echo_n "(cached) " >&6 -else - cat > conftest.c <<\EOF -int func (int *); -int -func (int *list) -{ - *list = 0; - return *list; -} -EOF - -if { ac_try='${CC-cc} ${CFLAGS} -S conftest.c' - { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5 - (eval $ac_try) 2>&5 - ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; } && test -s conftest.s; then - true -else - as_fn_error $? "${CC-cc} failed to produce assembly code" "$LINENO" 5 -fi - -if $EGREP '(^|^_[:alnum])_func' conftest.s >/dev/null 2>&1; then - HAVE_ASM_USCORE=1 - grub_cv_asm_uscore=yes -else - HAVE_ASM_USCORE=0 - grub_cv_asm_uscore=no -fi - -rm -f conftest* -fi - - -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $grub_cv_asm_uscore" >&5 -$as_echo "$grub_cv_asm_uscore" >&6; } - -if test "x$TARGET_APPLE_LINKER" = x0 && test x"$platform" != xemu; then -if test x$grub_cv_asm_uscore = xyes; then -DEFSYM="-Wl,--defsym,_abort=_main -Wl,--defsym,__main=_main" -else -DEFSYM="-Wl,--defsym,abort=main -Wl,--defsym,_main=main -Wl,--defsym,__main=main" -fi -CFLAGS="$TARGET_CFLAGS -nostdlib $DEFSYM" -fi - -# Check for libgcc symbols -if test x"$platform" = xemu; then -for ac_func in __udivsi3 __umodsi3 __divsi3 __modsi3 __divdi3 __moddi3 __udivdi3 __umoddi3 __ctzdi2 __ctzsi2 __aeabi_uidiv __aeabi_uidivmod __aeabi_idiv __aeabi_idivmod __aeabi_ulcmp __muldi3 __aeabi_lmul __aeabi_memcpy __aeabi_memcpy4 __aeabi_memcpy8 __aeabi_memclr __aeabi_memclr4 __aeabi_memclr8 __aeabi_memset __aeabi_lasr __aeabi_llsl __aeabi_llsr _restgpr_14_x __ucmpdi2 __ashldi3 __ashrdi3 __lshrdi3 __bswapsi2 __bswapdi2 __bzero __register_frame_info __deregister_frame_info ___chkstk_ms __chkstk_ms -do : - as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` -ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var" -if eval test \"x\$"$as_ac_var"\" = x"yes"; then : - cat >>confdefs.h <<_ACEOF -#define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1 -_ACEOF - -fi -done - -fi - -if test "x$TARGET_APPLE_LINKER" = x1 ; then -CFLAGS="$TARGET_CFLAGS -nostdlib -static" -else -CFLAGS="$TARGET_CFLAGS -nostdlib" -fi -LIBS="" - -# Defined in aclocal.m4. -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether target compiler is working" >&5 -$as_echo_n "checking whether target compiler is working... " >&6; } -if ${grub_cv_prog_target_cc+:} false; then : - $as_echo_n "(cached) " >&6 -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -asm (".globl start; start:"); -void __main (void); -void __main (void) {} -int main (void); - -int -main (void) -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - grub_cv_prog_target_cc=yes -else - grub_cv_prog_target_cc=no -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext - -fi - -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $grub_cv_prog_target_cc" >&5 -$as_echo "$grub_cv_prog_target_cc" >&6; } - -if test "x$grub_cv_prog_target_cc" = xno; then - as_fn_error $? "cannot compile for the target" "$LINENO" 5 -fi - -if test "x$TARGET_APPLE_LINKER" != x1 ; then -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether ${TARGET_OBJCOPY} works for absolute addresses" >&5 -$as_echo_n "checking whether ${TARGET_OBJCOPY} works for absolute addresses... " >&6; } -if ${grub_cv_prog_objcopy_absolute+:} false; then : - $as_echo_n "(cached) " >&6 -else - cat > conftest.c <<\EOF -void cmain (void); -void -cmain (void) -{ - *((int *) 0x1000) = 2; -} -EOF - -if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5 - (eval $ac_compile) 2>&5 - ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; } && test -s conftest.o; then : -else - as_fn_error $? "${CC-cc} cannot compile C source code" "$LINENO" 5 -fi -grub_cv_prog_objcopy_absolute=yes -for link_addr in 0x2000 0x8000 0x7C00; do - if { ac_try='${CC-cc} ${TARGET_CFLAGS} ${TARGET_LDFLAGS} -nostdlib ${TARGET_IMG_LDFLAGS_AC} ${TARGET_IMG_BASE_LDOPT},$link_addr conftest.o -o conftest.exec' - { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5 - (eval $ac_try) 2>&5 - ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; }; then : - else - as_fn_error $? "${CC-cc} cannot link at address $link_addr" "$LINENO" 5 - fi - if { ac_try='${TARGET_OBJCOPY-objcopy} --only-section=.text -O binary conftest.exec conftest' - { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5 - (eval $ac_try) 2>&5 - ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; }; then : - else - as_fn_error $? "${TARGET_OBJCOPY-objcopy} cannot create binary files" "$LINENO" 5 - fi - if test ! -f conftest.old || { ac_try='cmp -s conftest.old conftest' - { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5 - (eval $ac_try) 2>&5 - ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; }; then - mv -f conftest conftest.old - else - grub_cv_prog_objcopy_absolute=no - break - fi -done -rm -f conftest* -fi - -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $grub_cv_prog_objcopy_absolute" >&5 -$as_echo "$grub_cv_prog_objcopy_absolute" >&6; } - -if test "x$grub_cv_prog_objcopy_absolute" = xno; then - as_fn_error $? "GRUB requires a working absolute objcopy; upgrade your binutils" "$LINENO" 5 -fi - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether linker accepts --build-id=none" >&5 -$as_echo_n "checking whether linker accepts --build-id=none... " >&6; } -if ${grub_cv_prog_ld_build_id_none+:} false; then : - $as_echo_n "(cached) " >&6 -else - save_LDFLAGS="$LDFLAGS" -LDFLAGS="$LDFLAGS -Wl,--build-id=none" -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -int -main (void) -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - grub_cv_prog_ld_build_id_none=yes -else - grub_cv_prog_ld_build_id_none=no -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -LDFLAGS="$save_LDFLAGS" - -fi - -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $grub_cv_prog_ld_build_id_none" >&5 -$as_echo "$grub_cv_prog_ld_build_id_none" >&6; } - -if test "x$grub_cv_prog_ld_build_id_none" = xyes; then - TARGET_LDFLAGS="$TARGET_LDFLAGS -Wl,--build-id=none" -fi - -if test "x$target_cpu" = xi386; then - if test "$platform" != emu && test "x$TARGET_APPLE_LINKER" != x1 ; then - if test ! -z "$TARGET_IMG_LDSCRIPT"; then - # Check symbols provided by linker script. - CFLAGS="$TARGET_CFLAGS -nostdlib ${TARGET_IMG_LDFLAGS_AC} ${TARGET_IMG_BASE_LDOPT},0x8000" - fi - -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if __bss_start is defined by the compiler" >&5 -$as_echo_n "checking if __bss_start is defined by the compiler... " >&6; } -if ${grub_cv_check_uscore_uscore_bss_start_symbol+:} false; then : - $as_echo_n "(cached) " >&6 -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -asm (".globl start; start:"); -void __main (void); -void __main (void) {} -int main (void); - -int -main (void) -{ -asm ("incl __bss_start") - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - grub_cv_check_uscore_uscore_bss_start_symbol=yes -else - grub_cv_check_uscore_uscore_bss_start_symbol=no -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -fi - - -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $grub_cv_check_uscore_uscore_bss_start_symbol" >&5 -$as_echo "$grub_cv_check_uscore_uscore_bss_start_symbol" >&6; } - -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if edata is defined by the compiler" >&5 -$as_echo_n "checking if edata is defined by the compiler... " >&6; } -if ${grub_cv_check_edata_symbol+:} false; then : - $as_echo_n "(cached) " >&6 -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -asm (".globl start; start:"); -void __main (void); -void __main (void) {} -int main (void); -int -main (void) -{ -asm ("incl edata") - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - grub_cv_check_edata_symbol=yes -else - grub_cv_check_edata_symbol=no -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -fi - - -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $grub_cv_check_edata_symbol" >&5 -$as_echo "$grub_cv_check_edata_symbol" >&6; } - -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if _edata is defined by the compiler" >&5 -$as_echo_n "checking if _edata is defined by the compiler... " >&6; } -if ${grub_cv_check_uscore_edata_symbol+:} false; then : - $as_echo_n "(cached) " >&6 -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -asm (".globl start; start:"); -void __main (void); -void __main (void) {} -int main (void); -int -main (void) -{ -asm ("incl _edata") - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - grub_cv_check_uscore_edata_symbol=yes -else - grub_cv_check_uscore_edata_symbol=no -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -fi - - -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $grub_cv_check_uscore_edata_symbol" >&5 -$as_echo "$grub_cv_check_uscore_edata_symbol" >&6; } - -if test "x$grub_cv_check_uscore_uscore_bss_start_symbol" = xyes; then - BSS_START_SYMBOL=__bss_start -elif test "x$grub_cv_check_edata_symbol" = xyes; then - BSS_START_SYMBOL=edata -elif test "x$grub_cv_check_uscore_edata_symbol" = xyes; then - BSS_START_SYMBOL=_edata -else - as_fn_error $? "none of __bss_start, edata or _edata is defined" "$LINENO" 5 -fi - - -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if end is defined by the compiler" >&5 -$as_echo_n "checking if end is defined by the compiler... " >&6; } -if ${grub_cv_check_end_symbol+:} false; then : - $as_echo_n "(cached) " >&6 -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -asm (".globl start; start:"); -void __main (void); -void __main (void) {} -int main (void); -int -main (void) -{ -asm ("incl end") - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - grub_cv_check_end_symbol=yes -else - grub_cv_check_end_symbol=no -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -fi - - -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $grub_cv_check_end_symbol" >&5 -$as_echo "$grub_cv_check_end_symbol" >&6; } - -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if _end is defined by the compiler" >&5 -$as_echo_n "checking if _end is defined by the compiler... " >&6; } -if ${grub_cv_check_uscore_end_symbol+:} false; then : - $as_echo_n "(cached) " >&6 -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -asm (".globl start; start:"); -void __main (void); -void __main (void) {} -int main (void); -int -main (void) -{ -asm ("incl _end") - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - grub_cv_check_uscore_end_symbol=yes -else - grub_cv_check_uscore_end_symbol=no -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -fi - - -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $grub_cv_check_uscore_end_symbol" >&5 -$as_echo "$grub_cv_check_uscore_end_symbol" >&6; } - -if test "x$grub_cv_check_end_symbol" = xyes; then - END_SYMBOL=end -elif test "x$grub_cv_check_uscore_end_symbol" = xyes; then - END_SYMBOL=_end -else - as_fn_error $? "neither end nor _end is defined" "$LINENO" 5 -fi - - fi - CFLAGS="$TARGET_CFLAGS" -fi - -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether nm works" >&5 -$as_echo_n "checking whether nm works... " >&6; } -if ${grub_cv_prog_nm_works+:} false; then : - $as_echo_n "(cached) " >&6 -else - -nm_works_tmp_dir="$(mktemp -d "./confXXXXXX")" -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -int -main (void) -{ - - ; - return 0; -} -_ACEOF -$TARGET_CC $TARGET_CFLAGS -c conftest.c -o "$nm_works_tmp_dir/ef" -if $TARGET_NM "$nm_works_tmp_dir/ef" > /dev/null; then - grub_cv_prog_nm_works=yes -else - grub_cv_prog_nm_minus_p=no -fi -rm "$nm_works_tmp_dir/ef" -rmdir "$nm_works_tmp_dir" - -fi - -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $grub_cv_prog_nm_works" >&5 -$as_echo "$grub_cv_prog_nm_works" >&6; } - -if test "x$grub_cv_prog_nm_works" != xyes; then - as_fn_error $? "nm does not work" "$LINENO" 5 -fi - -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether nm accepts -P" >&5 -$as_echo_n "checking whether nm accepts -P... " >&6; } -if ${grub_cv_prog_nm_minus_p+:} false; then : - $as_echo_n "(cached) " >&6 -else - -nm_minus_p_tmp_dir="$(mktemp -d "./confXXXXXX")" -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -int -main (void) -{ - - ; - return 0; -} -_ACEOF -$TARGET_CC $TARGET_CFLAGS -c conftest.c -o "$nm_minus_p_tmp_dir/ef" -if $TARGET_NM -P "$nm_minus_p_tmp_dir/ef" 2>&1 > /dev/null; then - grub_cv_prog_nm_minus_p=yes -else - grub_cv_prog_nm_minus_p=no -fi -rm "$nm_minus_p_tmp_dir/ef" -rmdir "$nm_minus_p_tmp_dir" - -fi - -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $grub_cv_prog_nm_minus_p" >&5 -$as_echo "$grub_cv_prog_nm_minus_p" >&6; } - -if test "x$grub_cv_prog_nm_minus_p" = xyes; then - TARGET_NMFLAGS_MINUS_P="-P" -else - TARGET_NMFLAGS_MINUS_P= -fi - -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether nm accepts --defined-only" >&5 -$as_echo_n "checking whether nm accepts --defined-only... " >&6; } -if ${grub_cv_prog_nm_defined_only+:} false; then : - $as_echo_n "(cached) " >&6 -else - -nm_defined_only_tmp_dir="$(mktemp -d "./confXXXXXX")" -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -int -main (void) -{ - - ; - return 0; -} -_ACEOF -$TARGET_CC $TARGET_CFLAGS -c conftest.c -o "$nm_defined_only_tmp_dir/ef" -if $TARGET_NM --defined-only "$nm_defined_only_tmp_dir/ef" 2>&1 > /dev/null; then - grub_cv_prog_nm_defined_only=yes -else - grub_cv_prog_nm_defined_only=no -fi -rm "$nm_defined_only_tmp_dir/ef" -rmdir "$nm_defined_only_tmp_dir" - -fi - -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $grub_cv_prog_nm_defined_only" >&5 -$as_echo "$grub_cv_prog_nm_defined_only" >&6; } - -if test "x$grub_cv_prog_nm_defined_only" = xyes; then - TARGET_NMFLAGS_DEFINED_ONLY=--defined-only -else - TARGET_NMFLAGS_DEFINED_ONLY= -fi - - - - -if test "$platform" != emu; then -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether -nostdinc -isystem works" >&5 -$as_echo_n "checking whether -nostdinc -isystem works... " >&6; } -if ${grub_cv_cc_isystem+:} false; then : - $as_echo_n "(cached) " >&6 -else - - SAVED_CPPFLAGS="$CPPFLAGS" - CPPFLAGS="$TARGET_CPPFLAGS -nostdlib -nostdinc -isystem `$TARGET_CC -print-file-name=include`" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include -#include -int va_arg_func (int fixed, va_list args); -int -main (void) -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - grub_cv_cc_isystem=yes -else - grub_cv_cc_isystem=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - CPPFLAGS="$SAVED_CPPFLAGS" - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $grub_cv_cc_isystem" >&5 -$as_echo "$grub_cv_cc_isystem" >&6; } - -if test x"$grub_cv_cc_isystem" = xyes ; then - TARGET_CPPFLAGS="$TARGET_CPPFLAGS -nostdinc -isystem `$TARGET_CC -print-file-name=include`" -fi -fi - -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether -Wtrampolines work" >&5 -$as_echo_n "checking whether -Wtrampolines work... " >&6; } -if ${grub_cv_cc_wtrampolines+:} false; then : - $as_echo_n "(cached) " >&6 -else - - CFLAGS="$TARGET_CFLAGS -Wtrampolines -Werror" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include -int va_arg_func (int fixed, va_list args); -int -main (void) -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - grub_cv_cc_wtrampolines=yes -else - grub_cv_cc_wtrampolines=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $grub_cv_cc_wtrampolines" >&5 -$as_echo "$grub_cv_cc_wtrampolines" >&6; } - -if test x"$grub_cv_cc_wtrampolines" = xyes ; then - TARGET_CFLAGS="$TARGET_CFLAGS -Wtrampolines" -fi - -# Restore the flags. -CC="$tmp_CC" -CFLAGS="$tmp_CFLAGS" -CPPFLAGS="$tmp_CPPFLAGS" -LDFLAGS="$tmp_LDFLAGS" -LIBS="$tmp_LIBS" - -# -# Check for options. -# - -# Memory manager debugging. -# Check whether --enable-mm-debug was given. -if test "${enable_mm_debug+set}" = set; then : - enableval=$enable_mm_debug; -$as_echo "#define MM_DEBUG 1" >>confdefs.h - -fi - - -# Check whether --enable-cache-stats was given. -if test "${enable_cache_stats+set}" = set; then : - enableval=$enable_cache_stats; -fi - - -if test x$enable_cache_stats = xyes; then - DISK_CACHE_STATS=1 -else - DISK_CACHE_STATS=0 -fi - - -# Check whether --enable-boot-time was given. -if test "${enable_boot_time+set}" = set; then : - enableval=$enable_boot_time; -fi - - -if test x$enable_boot_time = xyes; then - BOOT_TIME_STATS=1 -else - BOOT_TIME_STATS=0 -fi - - -# Check whether --enable-grub-emu-sdl was given. -if test "${enable_grub_emu_sdl+set}" = set; then : - enableval=$enable_grub_emu_sdl; -fi - - -# Check whether --enable-grub-emu-pci was given. -if test "${enable_grub_emu_pci+set}" = set; then : - enableval=$enable_grub_emu_pci; -fi - - -if test "$platform" = emu; then - -if test x"$enable_grub_emu_sdl" = xno ; then - grub_emu_sdl_excuse="explicitly disabled" -fi -if [ x"$grub_emu_sdl_excuse" = x ]; then - # Check for libSDL libraries. -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for SDL_Init in -lSDL" >&5 -$as_echo_n "checking for SDL_Init in -lSDL... " >&6; } -if ${ac_cv_lib_SDL_SDL_Init+:} false; then : - $as_echo_n "(cached) " >&6 -else - ac_check_lib_save_LIBS=$LIBS -LIBS="-lSDL $LIBS" -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -/* Override any GCC internal prototype to avoid an error. - Use char because int might match the return type of a GCC - builtin and then its argument prototype would still apply. */ -#ifdef __cplusplus -extern "C" -#endif -char SDL_Init (); -int -main (void) -{ -return SDL_Init (); - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - ac_cv_lib_SDL_SDL_Init=yes -else - ac_cv_lib_SDL_SDL_Init=no -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -LIBS=$ac_check_lib_save_LIBS -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_SDL_SDL_Init" >&5 -$as_echo "$ac_cv_lib_SDL_SDL_Init" >&6; } -if test "x$ac_cv_lib_SDL_SDL_Init" = xyes; then : - LIBSDL="-lSDL" -else - grub_emu_sdl_excuse="libSDL libraries are required to build \`grub-emu' with SDL support" -fi - - -fi - -if [ x"$grub_emu_sdl_excuse" = x ]; then - # Check for headers. - for ac_header in SDL/SDL.h -do : - ac_fn_c_check_header_mongrel "$LINENO" "SDL/SDL.h" "ac_cv_header_SDL_SDL_h" "$ac_includes_default" -if test "x$ac_cv_header_SDL_SDL_h" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_SDL_SDL_H 1 -_ACEOF - -else - grub_emu_sdl_excuse="libSDL header file is required to build \`grub-emu' with SDL support" -fi - -done - -fi - -if test x"enable_grub_emu_sdl" = xyes && test x"$grub_emu_sdl_excuse" != x ; then - as_fn_error $? "SDL support for grub-emu was explicitly requested but can't be compiled ($grub_emu_sdl_excuse)" "$LINENO" 5 -fi -if test x"$grub_emu_sdl_excuse" = x ; then -enable_grub_emu_sdl=yes -else -enable_grub_emu_sdl=no -fi - -if test x"$enable_grub_emu_pci" != xyes ; then - grub_emu_pci_excuse="not enabled" -fi - -if [ x"$grub_emu_pci_excuse" = x ]; then - # Check for libpci libraries. - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for pci_system_init in -lpciaccess" >&5 -$as_echo_n "checking for pci_system_init in -lpciaccess... " >&6; } -if ${ac_cv_lib_pciaccess_pci_system_init+:} false; then : - $as_echo_n "(cached) " >&6 -else - ac_check_lib_save_LIBS=$LIBS -LIBS="-lpciaccess $LIBS" -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -/* Override any GCC internal prototype to avoid an error. - Use char because int might match the return type of a GCC - builtin and then its argument prototype would still apply. */ -#ifdef __cplusplus -extern "C" -#endif -char pci_system_init (); -int -main (void) -{ -return pci_system_init (); - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - ac_cv_lib_pciaccess_pci_system_init=yes -else - ac_cv_lib_pciaccess_pci_system_init=no -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -LIBS=$ac_check_lib_save_LIBS -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_pciaccess_pci_system_init" >&5 -$as_echo "$ac_cv_lib_pciaccess_pci_system_init" >&6; } -if test "x$ac_cv_lib_pciaccess_pci_system_init" = xyes; then : - LIBPCIACCESS="-lpciaccess" -else - grub_emu_pci_excuse="need libpciaccess library" -fi - - -fi -if [ x"$grub_emu_pci_excuse" = x ]; then - # Check for headers. - for ac_header in pciaccess.h -do : - ac_fn_c_check_header_mongrel "$LINENO" "pciaccess.h" "ac_cv_header_pciaccess_h" "$ac_includes_default" -if test "x$ac_cv_header_pciaccess_h" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_PCIACCESS_H 1 -_ACEOF - -else - grub_emu_pci_excuse="need libpciaccess headers" -fi - -done - -fi - -if test x"$grub_emu_pci_excuse" = x ; then -enable_grub_emu_pci=yes -else - -enable_grub_emu_pci=no -fi - - - - -else - -# Ignore --enable-emu-* if platform is not emu -enable_grub_emu_sdl=no -enable_grub_emu_pci=no -fi - -# Check whether --enable-grub-mkfont was given. -if test "${enable_grub_mkfont+set}" = set; then : - enableval=$enable_grub_mkfont; -fi - -if test x"$enable_grub_mkfont" = xno ; then - grub_mkfont_excuse="explicitly disabled" -fi - -unset ac_cv_header_ft2build_h - -if test x"$grub_mkfont_excuse" = x ; then - # Check for freetype libraries. - -pkg_failed=no -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for FREETYPE" >&5 -$as_echo_n "checking for FREETYPE... " >&6; } - -if test -n "$FREETYPE_CFLAGS"; then - pkg_cv_FREETYPE_CFLAGS="$FREETYPE_CFLAGS" - elif test -n "$PKG_CONFIG"; then - if test -n "$PKG_CONFIG" && \ - { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"freetype2\""; } >&5 - ($PKG_CONFIG --exists --print-errors "freetype2") 2>&5 - ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; then - pkg_cv_FREETYPE_CFLAGS=`$PKG_CONFIG --cflags "freetype2" 2>/dev/null` - test "x$?" != "x0" && pkg_failed=yes -else - pkg_failed=yes -fi - else - pkg_failed=untried -fi -if test -n "$FREETYPE_LIBS"; then - pkg_cv_FREETYPE_LIBS="$FREETYPE_LIBS" - elif test -n "$PKG_CONFIG"; then - if test -n "$PKG_CONFIG" && \ - { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"freetype2\""; } >&5 - ($PKG_CONFIG --exists --print-errors "freetype2") 2>&5 - ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; then - pkg_cv_FREETYPE_LIBS=`$PKG_CONFIG --libs "freetype2" 2>/dev/null` - test "x$?" != "x0" && pkg_failed=yes -else - pkg_failed=yes -fi - else - pkg_failed=untried -fi - - - -if test $pkg_failed = yes; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } - -if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then - _pkg_short_errors_supported=yes -else - _pkg_short_errors_supported=no -fi - if test $_pkg_short_errors_supported = yes; then - FREETYPE_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "freetype2" 2>&1` - else - FREETYPE_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "freetype2" 2>&1` - fi - # Put the nasty error message in config.log where it belongs - echo "$FREETYPE_PKG_ERRORS" >&5 - - grub_mkfont_excuse="need freetype2 library" -elif test $pkg_failed = untried; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } - grub_mkfont_excuse="need freetype2 library" -else - FREETYPE_CFLAGS=$pkg_cv_FREETYPE_CFLAGS - FREETYPE_LIBS=$pkg_cv_FREETYPE_LIBS - { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -$as_echo "yes" >&6; } - - SAVED_CPPFLAGS="$CPPFLAGS" - SAVED_LIBS="$LIBS" - CPPFLAGS="$CPPFLAGS $FREETYPE_CFLAGS" - LIBS="$LIBS $FREETYPE_LIBS" - for ac_header in ft2build.h -do : - ac_fn_c_check_header_mongrel "$LINENO" "ft2build.h" "ac_cv_header_ft2build_h" "$ac_includes_default" -if test "x$ac_cv_header_ft2build_h" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_FT2BUILD_H 1 -_ACEOF - -else - grub_mkfont_excuse="need freetype2 headers" -fi - -done - - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -/* Override any GCC internal prototype to avoid an error. - Use char because int might match the return type of a GCC - builtin and then its argument prototype would still apply. */ -#ifdef __cplusplus -extern "C" -#endif -char FT_Load_Glyph (); -int -main (void) -{ -return FT_Load_Glyph (); - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - -else - grub_mkfont_excuse="freetype2 library unusable" -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext - CPPFLAGS="$SAVED_CPPFLAGS" - LIBS="$SAVED_LIBS" - -fi -fi - -if test x"$enable_grub_mkfont" = xyes && test x"$grub_mkfont_excuse" != x ; then - as_fn_error $? "grub-mkfont was explicitly requested but can't be compiled ($grub_mkfont_excuse)" "$LINENO" 5 -fi -if test x"$grub_mkfont_excuse" = x ; then -enable_grub_mkfont=yes -else -enable_grub_mkfont=no -fi - - -SAVED_CC="$CC" -SAVED_CPP="$CPP" -SAVED_CFLAGS="$CFLAGS" -SAVED_CPPFLAGS="$CPPFLAGS" -SAVED_LDFLAGS="$LDFLAGS" -CC="$BUILD_CC" -CPP="$BUILD_CPP" -CFLAGS="$BUILD_CFLAGS" -CPPFLAGS="$BUILD_CPPFLAGS" -LDFLAGS="$BUILD_LDFAGS" - -unset ac_cv_c_bigendian -unset ac_cv_header_ft2build_h - -if ac_fn_c_compute_int "$LINENO" "sizeof (void *)" "BUILD_SIZEOF_VOID_P" ""; then : - -fi - -if ac_fn_c_compute_int "$LINENO" "sizeof (long)" "BUILD_SIZEOF_LONG" ""; then : - -fi - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether byte ordering is bigendian" >&5 -$as_echo_n "checking whether byte ordering is bigendian... " >&6; } -if ${ac_cv_c_bigendian+:} false; then : - $as_echo_n "(cached) " >&6 -else - ac_cv_c_bigendian=unknown - # See if we're dealing with a universal compiler. - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#ifndef __APPLE_CC__ - not a universal capable compiler - #endif - typedef int dummy; - -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - - # Check for potential -arch flags. It is not universal unless - # there are at least two -arch flags with different values. - ac_arch= - ac_prev= - for ac_word in $CC $CFLAGS $CPPFLAGS $LDFLAGS; do - if test -n "$ac_prev"; then - case $ac_word in - i?86 | x86_64 | ppc | ppc64) - if test -z "$ac_arch" || test "$ac_arch" = "$ac_word"; then - ac_arch=$ac_word - else - ac_cv_c_bigendian=universal - break - fi - ;; - esac - ac_prev= - elif test "x$ac_word" = "x-arch"; then - ac_prev=arch - fi - done -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - if test $ac_cv_c_bigendian = unknown; then - # See if sys/param.h defines the BYTE_ORDER macro. - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include - #include - -int -main (void) -{ -#if ! (defined BYTE_ORDER && defined BIG_ENDIAN \ - && defined LITTLE_ENDIAN && BYTE_ORDER && BIG_ENDIAN \ - && LITTLE_ENDIAN) - bogus endian macros - #endif - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - # It does; now see whether it defined to BIG_ENDIAN or not. - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include - #include - -int -main (void) -{ -#if BYTE_ORDER != BIG_ENDIAN - not big endian - #endif - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - ac_cv_c_bigendian=yes -else - ac_cv_c_bigendian=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - fi - if test $ac_cv_c_bigendian = unknown; then - # See if defines _LITTLE_ENDIAN or _BIG_ENDIAN (e.g., Solaris). - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include - -int -main (void) -{ -#if ! (defined _LITTLE_ENDIAN || defined _BIG_ENDIAN) - bogus endian macros - #endif - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - # It does; now see whether it defined to _BIG_ENDIAN or not. - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include - -int -main (void) -{ -#ifndef _BIG_ENDIAN - not big endian - #endif - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - ac_cv_c_bigendian=yes -else - ac_cv_c_bigendian=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - fi - if test $ac_cv_c_bigendian = unknown; then - # Compile a test program. - if test "$cross_compiling" = yes; then : - # Try to guess by grepping values from an object file. - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -short int ascii_mm[] = - { 0x4249, 0x4765, 0x6E44, 0x6961, 0x6E53, 0x7953, 0 }; - short int ascii_ii[] = - { 0x694C, 0x5454, 0x656C, 0x6E45, 0x6944, 0x6E61, 0 }; - int use_ascii (int i) { - return ascii_mm[i] + ascii_ii[i]; - } - short int ebcdic_ii[] = - { 0x89D3, 0xE3E3, 0x8593, 0x95C5, 0x89C4, 0x9581, 0 }; - short int ebcdic_mm[] = - { 0xC2C9, 0xC785, 0x95C4, 0x8981, 0x95E2, 0xA8E2, 0 }; - int use_ebcdic (int i) { - return ebcdic_mm[i] + ebcdic_ii[i]; - } - extern int foo; - -int -main (void) -{ -return use_ascii (foo) == use_ebcdic (foo); - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - if grep BIGenDianSyS conftest.$ac_objext >/dev/null; then - ac_cv_c_bigendian=yes - fi - if grep LiTTleEnDian conftest.$ac_objext >/dev/null ; then - if test "$ac_cv_c_bigendian" = unknown; then - ac_cv_c_bigendian=no - else - # finding both strings is unlikely to happen, but who knows? - ac_cv_c_bigendian=unknown - fi - fi -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -$ac_includes_default -int -main (void) -{ - - /* Are we little or big endian? From Harbison&Steele. */ - union - { - long int l; - char c[sizeof (long int)]; - } u; - u.l = 1; - return u.c[sizeof (long int) - 1] == 1; - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_run "$LINENO"; then : - ac_cv_c_bigendian=no -else - ac_cv_c_bigendian=yes -fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext -fi - - fi -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_bigendian" >&5 -$as_echo "$ac_cv_c_bigendian" >&6; } - case $ac_cv_c_bigendian in #( - yes) - BUILD_WORDS_BIGENDIAN=1;; #( - no) - BUILD_WORDS_BIGENDIAN=0 ;; #( - universal) - BUILD_WORDS_BIGENDIAN=err - ;; #( - *) - BUILD_WORDS_BIGENDIAN=err ;; - esac - - -if test x$BUILD_WORDS_BIGENDIAN = xerr ; then - as_fn_error $? "couldnt determine build endianness" "$LINENO" 5 -fi - - - - - -if test x"$grub_build_mkfont_excuse" = x ; then - # Check for freetype libraries. - SAVED_PKG_CONFIG="$PKG_CONFIG" - test -z "$BUILD_PKG_CONFIG" || PKG_CONFIG="$BUILD_PKG_CONFIG" - -pkg_failed=no -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for BUILD_FREETYPE" >&5 -$as_echo_n "checking for BUILD_FREETYPE... " >&6; } - -if test -n "$BUILD_FREETYPE_CFLAGS"; then - pkg_cv_BUILD_FREETYPE_CFLAGS="$BUILD_FREETYPE_CFLAGS" - elif test -n "$PKG_CONFIG"; then - if test -n "$PKG_CONFIG" && \ - { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"freetype2\""; } >&5 - ($PKG_CONFIG --exists --print-errors "freetype2") 2>&5 - ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; then - pkg_cv_BUILD_FREETYPE_CFLAGS=`$PKG_CONFIG --cflags "freetype2" 2>/dev/null` - test "x$?" != "x0" && pkg_failed=yes -else - pkg_failed=yes -fi - else - pkg_failed=untried -fi -if test -n "$BUILD_FREETYPE_LIBS"; then - pkg_cv_BUILD_FREETYPE_LIBS="$BUILD_FREETYPE_LIBS" - elif test -n "$PKG_CONFIG"; then - if test -n "$PKG_CONFIG" && \ - { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"freetype2\""; } >&5 - ($PKG_CONFIG --exists --print-errors "freetype2") 2>&5 - ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; then - pkg_cv_BUILD_FREETYPE_LIBS=`$PKG_CONFIG --libs "freetype2" 2>/dev/null` - test "x$?" != "x0" && pkg_failed=yes -else - pkg_failed=yes -fi - else - pkg_failed=untried -fi - - - -if test $pkg_failed = yes; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } - -if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then - _pkg_short_errors_supported=yes -else - _pkg_short_errors_supported=no -fi - if test $_pkg_short_errors_supported = yes; then - BUILD_FREETYPE_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "freetype2" 2>&1` - else - BUILD_FREETYPE_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "freetype2" 2>&1` - fi - # Put the nasty error message in config.log where it belongs - echo "$BUILD_FREETYPE_PKG_ERRORS" >&5 - - grub_build_mkfont_excuse="need freetype2 library" -elif test $pkg_failed = untried; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } - grub_build_mkfont_excuse="need freetype2 library" -else - BUILD_FREETYPE_CFLAGS=$pkg_cv_BUILD_FREETYPE_CFLAGS - BUILD_FREETYPE_LIBS=$pkg_cv_BUILD_FREETYPE_LIBS - { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -$as_echo "yes" >&6; } - - SAVED_CPPFLAGS_2="$CPPFLAGS" - SAVED_LIBS="$LIBS" - CPPFLAGS="$CPPFLAGS $BUILD_FREETYPE_CFLAGS" - LIBS="$LIBS $BUILD_FREETYPE_LIBS" - for ac_header in ft2build.h -do : - ac_fn_c_check_header_mongrel "$LINENO" "ft2build.h" "ac_cv_header_ft2build_h" "$ac_includes_default" -if test "x$ac_cv_header_ft2build_h" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_FT2BUILD_H 1 -_ACEOF - -else - grub_build_mkfont_excuse="need freetype2 headers" -fi - -done - - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -/* Override any GCC internal prototype to avoid an error. - Use char because int might match the return type of a GCC - builtin and then its argument prototype would still apply. */ -#ifdef __cplusplus -extern "C" -#endif -char FT_Load_Glyph (); -int -main (void) -{ -return FT_Load_Glyph (); - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - -else - grub_build_mkfont_excuse="freetype2 library unusable" -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext - LIBS="$SAVED_LIBS" - CPPFLAGS="$SAVED_CPPFLAGS_2" - -fi - PKG_CONFIG="$SAVED_PKG_CONFIG" -fi - -if test x"$enable_build_grub_mkfont" = xyes && test x"$grub_build_mkfont_excuse" != x ; then - as_fn_error $? "build-grub-mkfont was explicitly requested but can't be compiled ($grub_build_mkfont_excuse)" "$LINENO" 5 -fi -if test x"$grub_build_mkfont_excuse" = x ; then - enable_build_grub_mkfont=yes -else - enable_build_grub_mkfont=no -fi -if test x"$enable_build_grub_mkfont" = xno && ( test "x$platform" = xqemu || test "x$platform" = xloongson || test "x$platform" = xqemu_mips || test "x$platform" = xcoreboot ); then - if test x"$grub_build_mkfont_excuse" = x ; then - as_fn_error $? "qemu, coreboot and loongson ports need build-time grub-mkfont" "$LINENO" 5 - else - as_fn_error $? "qemu, coreboot and loongson ports need build-time grub-mkfont ($grub_build_mkfont_excuse)" "$LINENO" 5 - fi -fi - -CC="$SAVED_CC" -CPP="$SAVED_CPP" -CFLAGS="$SAVED_CFLAGS" -CPPFLAGS="$SAVED_CPPFLAGS" -LDFLAGS="$SAVED_LDFLAGS" - - -DJVU_FONT_SOURCE= - -starfield_excuse= - -# Check whether --enable-grub-themes was given. -if test "${enable_grub_themes+set}" = set; then : - enableval=$enable_grub_themes; -fi - -if test x"$enable_grub_themes" = xno ; then - starfield_excuse="explicitly disabled" -fi - -if test x"$starfield_excuse" = x && test x"$enable_build_grub_mkfont" = xno ; then - starfield_excuse="No build-time grub-mkfont" -fi - -if test x"$starfield_excuse" = x; then - for ext in pcf pcf.gz bdf bdf.gz ttf ttf.gz; do - for dir in . /usr/src /usr/share/fonts/X11/misc /usr/share/fonts/truetype/ttf-dejavu /usr/share/fonts/dejavu /usr/share/fonts/truetype; do - if test -f "$dir/DejaVuSans.$ext"; then - DJVU_FONT_SOURCE="$dir/DejaVuSans.$ext" - break 2 - fi - done - done - - if test "x$DJVU_FONT_SOURCE" = x; then - starfield_excuse="No DejaVu found" - fi -fi - -if test x"$enable_grub_themes" = xyes && test x"$starfield_excuse" != x; then - as_fn_error $? "themes were explicitly requested but requirements are not satisfied ($starfield_excuse)" "$LINENO" 5 -fi - - - -FONT_SOURCE= - -for ext in pcf pcf.gz bdf bdf.gz ttf ttf.gz; do - for dir in . /usr/src /usr/share/fonts/X11/misc /usr/share/fonts/unifont /usr/share/fonts/uni /usr/share/fonts/truetype/unifont /usr/share/fonts/misc; do - if test -f "$dir/unifont.$ext"; then - md5="$(md5sum "$dir/unifont.$ext"|awk '{ print $1; }')" - # PCF and BDF from version 6.3 isn't hanled properly by libfreetype. - if test "$md5" = 0a54834d2788c83886a3e1785a6a1e61 || test "$md5" = 28f2565c7a41d8d407e2551159385edb || test "$md5" = dae5e588461b3b92b87b6ffee734f936 || test "$md5" = 4a3d687aa5bb329ed05f4263a1016791 ; then - continue - fi - FONT_SOURCE="$dir/unifont.$ext" - break 2 - fi - done -done - -if test x"$enable_build_grub_mkfont" = xno ; then - FONT_SOURCE= -fi - -if test "x$FONT_SOURCE" = x && ( test "x$platform" = xqemu || test "x$platform" = xloongson || test "x$platform" = xqemu_mips || test "x$platform" = xcoreboot ); then - if test x"$grub_build_mkfont_excuse" = x ; then - as_fn_error $? "qemu, coreboot and loongson ports need unifont" "$LINENO" 5 - else - as_fn_error $? "qemu, coreboot and loongson ports need unifont ($grub_build_mkfont_excuse)" "$LINENO" 5 - fi -fi - - - -if test x"$FONT_SOURCE" = x && test x"$DJVU_FONT_SOURCE" = x && test x"$grub_build_mkfont_excuse" = x; then - grub_build_mkfont_excuse="no fonts" -fi - - -# Check whether --enable-grub-mount was given. -if test "${enable_grub_mount+set}" = set; then : - enableval=$enable_grub_mount; -fi - -if test x"$enable_grub_mount" = xno ; then - grub_mount_excuse="explicitly disabled" -fi - -if test x"$grub_mount_excuse" = x ; then - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for fuse_main_real in -lfuse" >&5 -$as_echo_n "checking for fuse_main_real in -lfuse... " >&6; } -if ${ac_cv_lib_fuse_fuse_main_real+:} false; then : - $as_echo_n "(cached) " >&6 -else - ac_check_lib_save_LIBS=$LIBS -LIBS="-lfuse $LIBS" -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -/* Override any GCC internal prototype to avoid an error. - Use char because int might match the return type of a GCC - builtin and then its argument prototype would still apply. */ -#ifdef __cplusplus -extern "C" -#endif -char fuse_main_real (); -int -main (void) -{ -return fuse_main_real (); - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - ac_cv_lib_fuse_fuse_main_real=yes -else - ac_cv_lib_fuse_fuse_main_real=no -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -LIBS=$ac_check_lib_save_LIBS -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_fuse_fuse_main_real" >&5 -$as_echo "$ac_cv_lib_fuse_fuse_main_real" >&6; } -if test "x$ac_cv_lib_fuse_fuse_main_real" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_LIBFUSE 1 -_ACEOF - - LIBS="-lfuse $LIBS" - -else - grub_mount_excuse="need FUSE library" -fi - -fi - -if test x"$grub_mount_excuse" = x ; then - # Check for fuse headers. - SAVED_CPPFLAGS="$CPPFLAGS" - CPPFLAGS="$CPPFLAGS -DFUSE_USE_VERSION=26" - for ac_header in fuse/fuse.h -do : - ac_fn_c_check_header_mongrel "$LINENO" "fuse/fuse.h" "ac_cv_header_fuse_fuse_h" "$ac_includes_default" -if test "x$ac_cv_header_fuse_fuse_h" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_FUSE_FUSE_H 1 -_ACEOF - -else - grub_mount_excuse="need FUSE headers" -fi - -done - - CPPFLAGS="$SAVED_CPPFLAGS" -fi - -if test x"$enable_grub_mount" = xyes && test x"$grub_mount_excuse" != x ; then - as_fn_error $? "grub-mount was explicitly requested but can't be compiled ($grub_mount_excuse)" "$LINENO" 5 -fi -if test x"$grub_mount_excuse" = x ; then -enable_grub_mount=yes -else -enable_grub_mount=no -fi - - -# Check whether --enable-device-mapper was given. -if test "${enable_device_mapper+set}" = set; then : - enableval=$enable_device_mapper; -fi - -if test x"$enable_device_mapper" = xno ; then - device_mapper_excuse="explicitly disabled" -fi - -if test x"$device_mapper_excuse" = x ; then - # Check for device-mapper header. - ac_fn_c_check_header_mongrel "$LINENO" "libdevmapper.h" "ac_cv_header_libdevmapper_h" "$ac_includes_default" -if test "x$ac_cv_header_libdevmapper_h" = xyes; then : - -else - device_mapper_excuse="need libdevmapper header" -fi - - -fi - -if test x"$device_mapper_excuse" = x ; then - # Check for device-mapper library. - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dm_task_create in -ldevmapper" >&5 -$as_echo_n "checking for dm_task_create in -ldevmapper... " >&6; } -if ${ac_cv_lib_devmapper_dm_task_create+:} false; then : - $as_echo_n "(cached) " >&6 -else - ac_check_lib_save_LIBS=$LIBS -LIBS="-ldevmapper $LIBS" -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -/* Override any GCC internal prototype to avoid an error. - Use char because int might match the return type of a GCC - builtin and then its argument prototype would still apply. */ -#ifdef __cplusplus -extern "C" -#endif -char dm_task_create (); -int -main (void) -{ -return dm_task_create (); - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - ac_cv_lib_devmapper_dm_task_create=yes -else - ac_cv_lib_devmapper_dm_task_create=no -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -LIBS=$ac_check_lib_save_LIBS -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_devmapper_dm_task_create" >&5 -$as_echo "$ac_cv_lib_devmapper_dm_task_create" >&6; } -if test "x$ac_cv_lib_devmapper_dm_task_create" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_LIBDEVMAPPER 1 -_ACEOF - - LIBS="-ldevmapper $LIBS" - -else - device_mapper_excuse="need devmapper library" -fi - -fi - -if test x"$device_mapper_excuse" = x ; then - # Check for device-mapper library. - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dm_log_with_errno_init in -ldevmapper" >&5 -$as_echo_n "checking for dm_log_with_errno_init in -ldevmapper... " >&6; } -if ${ac_cv_lib_devmapper_dm_log_with_errno_init+:} false; then : - $as_echo_n "(cached) " >&6 -else - ac_check_lib_save_LIBS=$LIBS -LIBS="-ldevmapper $LIBS" -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -/* Override any GCC internal prototype to avoid an error. - Use char because int might match the return type of a GCC - builtin and then its argument prototype would still apply. */ -#ifdef __cplusplus -extern "C" -#endif -char dm_log_with_errno_init (); -int -main (void) -{ -return dm_log_with_errno_init (); - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - ac_cv_lib_devmapper_dm_log_with_errno_init=yes -else - ac_cv_lib_devmapper_dm_log_with_errno_init=no -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -LIBS=$ac_check_lib_save_LIBS -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_devmapper_dm_log_with_errno_init" >&5 -$as_echo "$ac_cv_lib_devmapper_dm_log_with_errno_init" >&6; } -if test "x$ac_cv_lib_devmapper_dm_log_with_errno_init" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_LIBDEVMAPPER 1 -_ACEOF - - LIBS="-ldevmapper $LIBS" - -else - device_mapper_excuse="need devmapper library" -fi - -fi - -if test x"$device_mapper_excuse" = x ; then - LIBDEVMAPPER="-ldevmapper" - -$as_echo "#define HAVE_DEVICE_MAPPER 1" >>confdefs.h - -fi - - - -LIBGEOM= -if test x$host_kernel = xkfreebsd; then - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for geom_gettree in -lgeom" >&5 -$as_echo_n "checking for geom_gettree in -lgeom... " >&6; } -if ${ac_cv_lib_geom_geom_gettree+:} false; then : - $as_echo_n "(cached) " >&6 -else - ac_check_lib_save_LIBS=$LIBS -LIBS="-lgeom $LIBS" -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -/* Override any GCC internal prototype to avoid an error. - Use char because int might match the return type of a GCC - builtin and then its argument prototype would still apply. */ -#ifdef __cplusplus -extern "C" -#endif -char geom_gettree (); -int -main (void) -{ -return geom_gettree (); - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - ac_cv_lib_geom_geom_gettree=yes -else - ac_cv_lib_geom_geom_gettree=no -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -LIBS=$ac_check_lib_save_LIBS -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_geom_geom_gettree" >&5 -$as_echo "$ac_cv_lib_geom_geom_gettree" >&6; } -if test "x$ac_cv_lib_geom_geom_gettree" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_LIBGEOM 1 -_ACEOF - - LIBS="-lgeom $LIBS" - -else - as_fn_error $? "Your platform requires libgeom" "$LINENO" 5 -fi - - LIBGEOM="-lgeom" -fi - - - -# Check whether --enable-liblzma was given. -if test "${enable_liblzma+set}" = set; then : - enableval=$enable_liblzma; -fi - -if test x"$enable_liblzma" = xno ; then - liblzma_excuse="explicitly disabled" -fi - -if test x"$liblzma_excuse" = x ; then -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for lzma_code in -llzma" >&5 -$as_echo_n "checking for lzma_code in -llzma... " >&6; } -if ${ac_cv_lib_lzma_lzma_code+:} false; then : - $as_echo_n "(cached) " >&6 -else - ac_check_lib_save_LIBS=$LIBS -LIBS="-llzma $LIBS" -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -/* Override any GCC internal prototype to avoid an error. - Use char because int might match the return type of a GCC - builtin and then its argument prototype would still apply. */ -#ifdef __cplusplus -extern "C" -#endif -char lzma_code (); -int -main (void) -{ -return lzma_code (); - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - ac_cv_lib_lzma_lzma_code=yes -else - ac_cv_lib_lzma_lzma_code=no -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -LIBS=$ac_check_lib_save_LIBS -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_lzma_lzma_code" >&5 -$as_echo "$ac_cv_lib_lzma_lzma_code" >&6; } -if test "x$ac_cv_lib_lzma_lzma_code" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_LIBLZMA 1 -_ACEOF - - LIBS="-llzma $LIBS" - -else - liblzma_excuse="need lzma library" -fi - -fi -if test x"$liblzma_excuse" = x ; then -ac_fn_c_check_header_mongrel "$LINENO" "lzma.h" "ac_cv_header_lzma_h" "$ac_includes_default" -if test "x$ac_cv_header_lzma_h" = xyes; then : - -else - liblzma_excuse="need lzma header" -fi - - -fi - -if test x"$enable_liblzma" = xyes && test x"$liblzma_excuse" != x ; then - as_fn_error $? "liblzma support was explicitly requested but requirements are not satisfied ($liblzma_excuse)" "$LINENO" 5 -fi - - -if test x"$liblzma_excuse" = x ; then - LIBLZMA="-llzma" - -$as_echo "#define USE_LIBLZMA 1" >>confdefs.h - -fi - - - -# Check whether --enable-libzfs was given. -if test "${enable_libzfs+set}" = set; then : - enableval=$enable_libzfs; -fi - -if test x"$enable_libzfs" = xno ; then - libzfs_excuse="explicitly disabled" -fi - -if test x"$libzfs_excuse" = x ; then - # Only check for system headers if libzfs support has not been disabled. - for ac_header in libzfs.h libnvpair.h -do : - as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh` -ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default" -if eval test \"x\$"$as_ac_Header"\" = x"yes"; then : - cat >>confdefs.h <<_ACEOF -#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1 -_ACEOF - -fi - -done - -fi - -if test x"$libzfs_excuse" = x ; then - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for libzfs_init in -lzfs" >&5 -$as_echo_n "checking for libzfs_init in -lzfs... " >&6; } -if ${ac_cv_lib_zfs_libzfs_init+:} false; then : - $as_echo_n "(cached) " >&6 -else - ac_check_lib_save_LIBS=$LIBS -LIBS="-lzfs $LIBS" -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -/* Override any GCC internal prototype to avoid an error. - Use char because int might match the return type of a GCC - builtin and then its argument prototype would still apply. */ -#ifdef __cplusplus -extern "C" -#endif -char libzfs_init (); -int -main (void) -{ -return libzfs_init (); - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - ac_cv_lib_zfs_libzfs_init=yes -else - ac_cv_lib_zfs_libzfs_init=no -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -LIBS=$ac_check_lib_save_LIBS -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_zfs_libzfs_init" >&5 -$as_echo "$ac_cv_lib_zfs_libzfs_init" >&6; } -if test "x$ac_cv_lib_zfs_libzfs_init" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_LIBZFS 1 -_ACEOF - - LIBS="-lzfs $LIBS" - -else - libzfs_excuse="need zfs library" -fi - -fi - -if test x"$libzfs_excuse" = x ; then - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for nvlist_lookup_string in -lnvpair" >&5 -$as_echo_n "checking for nvlist_lookup_string in -lnvpair... " >&6; } -if ${ac_cv_lib_nvpair_nvlist_lookup_string+:} false; then : - $as_echo_n "(cached) " >&6 -else - ac_check_lib_save_LIBS=$LIBS -LIBS="-lnvpair $LIBS" -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -/* Override any GCC internal prototype to avoid an error. - Use char because int might match the return type of a GCC - builtin and then its argument prototype would still apply. */ -#ifdef __cplusplus -extern "C" -#endif -char nvlist_lookup_string (); -int -main (void) -{ -return nvlist_lookup_string (); - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - ac_cv_lib_nvpair_nvlist_lookup_string=yes -else - ac_cv_lib_nvpair_nvlist_lookup_string=no -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -LIBS=$ac_check_lib_save_LIBS -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_nvpair_nvlist_lookup_string" >&5 -$as_echo "$ac_cv_lib_nvpair_nvlist_lookup_string" >&6; } -if test "x$ac_cv_lib_nvpair_nvlist_lookup_string" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_LIBNVPAIR 1 -_ACEOF - - LIBS="-lnvpair $LIBS" - -else - libzfs_excuse="need nvpair library" -fi - -fi - -if test x"$enable_libzfs" = xyes && test x"$libzfs_excuse" != x ; then - as_fn_error $? "libzfs support was explicitly requested but requirements are not satisfied ($libzfs_excuse)" "$LINENO" 5 -fi - -if test x"$libzfs_excuse" = x ; then - # We need both libzfs and libnvpair for a successful build. - LIBZFS="-lzfs" - -$as_echo "#define HAVE_LIBZFS 1" >>confdefs.h - - LIBNVPAIR="-lnvpair" - -$as_echo "#define HAVE_LIBNVPAIR 1" >>confdefs.h - -fi - - - - -LIBS="" - - -if test x$target_cpu = xi386 -a x$platform = xqemu; then : - GRUB_BOOT_MACHINE_LINK_ADDR=0xffe00 - -fi - - - - - - - -# Check whether --enable-werror was given. -if test "${enable_werror+set}" = set; then : - enableval=$enable_werror; -fi - -if test x"$enable_werror" != xno ; then - TARGET_CFLAGS="$TARGET_CFLAGS -Werror" - HOST_CFLAGS="$HOST_CFLAGS -Werror" -fi - -TARGET_CPP="$TARGET_CC -E" -TARGET_CCAS=$TARGET_CC - -# Includes which include make-time substitutions. They must come last -# as to avoid executing top_builddir in shell. -HOST_CPPFLAGS="$HOST_CPPFLAGS -I\$(top_builddir)/include" -TARGET_CPPFLAGS="$TARGET_CPPFLAGS -I\$(top_srcdir)/include" -TARGET_CPPFLAGS="$TARGET_CPPFLAGS -I\$(top_builddir)/include" - -GRUB_TARGET_CPU="${target_cpu}" -GRUB_PLATFORM="${platform}" - - - - - - - - - - - - - - - - - - - - - - - - - - - - -# -# Automake conditionals -# - - if test x$platform != xnone; then - COND_real_platform_TRUE= - COND_real_platform_FALSE='#' -else - COND_real_platform_TRUE='#' - COND_real_platform_FALSE= -fi - - if test x$platform = xemu; then - COND_emu_TRUE= - COND_emu_FALSE='#' -else - COND_emu_TRUE='#' - COND_emu_FALSE= -fi - - if test x$target_cpu = xi386 -a x$platform = xpc; then - COND_i386_pc_TRUE= - COND_i386_pc_FALSE='#' -else - COND_i386_pc_TRUE='#' - COND_i386_pc_FALSE= -fi - - if test x$target_cpu = xi386 -a x$platform = xefi; then - COND_i386_efi_TRUE= - COND_i386_efi_FALSE='#' -else - COND_i386_efi_TRUE='#' - COND_i386_efi_FALSE= -fi - - if test x$target_cpu = xia64 -a x$platform = xefi; then - COND_ia64_efi_TRUE= - COND_ia64_efi_FALSE='#' -else - COND_ia64_efi_TRUE='#' - COND_ia64_efi_FALSE= -fi - - if test x$target_cpu = xi386 -a x$platform = xqemu; then - COND_i386_qemu_TRUE= - COND_i386_qemu_FALSE='#' -else - COND_i386_qemu_TRUE='#' - COND_i386_qemu_FALSE= -fi - - if test x$target_cpu = xi386 -a x$platform = xieee1275; then - COND_i386_ieee1275_TRUE= - COND_i386_ieee1275_FALSE='#' -else - COND_i386_ieee1275_TRUE='#' - COND_i386_ieee1275_FALSE= -fi - - if test x$target_cpu = xi386 -a x$platform = xcoreboot; then - COND_i386_coreboot_TRUE= - COND_i386_coreboot_FALSE='#' -else - COND_i386_coreboot_TRUE='#' - COND_i386_coreboot_FALSE= -fi - - if test x$target_cpu = xi386 -a x$platform = xmultiboot; then - COND_i386_multiboot_TRUE= - COND_i386_multiboot_FALSE='#' -else - COND_i386_multiboot_TRUE='#' - COND_i386_multiboot_FALSE= -fi - - if test x$target_cpu = xx86_64 -a x$platform = xefi; then - COND_x86_64_efi_TRUE= - COND_x86_64_efi_FALSE='#' -else - COND_x86_64_efi_TRUE='#' - COND_x86_64_efi_FALSE= -fi - - if test x$target_cpu = xi386 -a x$platform = xxen; then - COND_i386_xen_TRUE= - COND_i386_xen_FALSE='#' -else - COND_i386_xen_TRUE='#' - COND_i386_xen_FALSE= -fi - - if test x$target_cpu = xi386 -a x$platform = xxen_pvh; then - COND_i386_xen_pvh_TRUE= - COND_i386_xen_pvh_FALSE='#' -else - COND_i386_xen_pvh_TRUE='#' - COND_i386_xen_pvh_FALSE= -fi - - if test x$target_cpu = xx86_64 -a x$platform = xxen; then - COND_x86_64_xen_TRUE= - COND_x86_64_xen_FALSE='#' -else - COND_x86_64_xen_TRUE='#' - COND_x86_64_xen_FALSE= -fi - - if test x$target_cpu = xmipsel -a x$platform = xloongson; then - COND_mips_loongson_TRUE= - COND_mips_loongson_FALSE='#' -else - COND_mips_loongson_TRUE='#' - COND_mips_loongson_FALSE= -fi - - if test "(" x$target_cpu = xmips -o x$target_cpu = xmipsel ")" -a x$platform = xqemu_mips; then - COND_mips_qemu_mips_TRUE= - COND_mips_qemu_mips_FALSE='#' -else - COND_mips_qemu_mips_TRUE='#' - COND_mips_qemu_mips_FALSE= -fi - - if test "(" x$target_cpu = xmips -o x$target_cpu = xmipsel ")" -a x$platform = xarc; then - COND_mips_arc_TRUE= - COND_mips_arc_FALSE='#' -else - COND_mips_arc_TRUE='#' - COND_mips_arc_FALSE= -fi - - if test x$target_cpu = xsparc64 -a x$platform = xieee1275; then - COND_sparc64_ieee1275_TRUE= - COND_sparc64_ieee1275_FALSE='#' -else - COND_sparc64_ieee1275_TRUE='#' - COND_sparc64_ieee1275_FALSE= -fi - - if test x$target_cpu = xsparc64 -a x$platform = xemu; then - COND_sparc64_emu_TRUE= - COND_sparc64_emu_FALSE='#' -else - COND_sparc64_emu_TRUE='#' - COND_sparc64_emu_FALSE= -fi - - if test x$target_cpu = xpowerpc -a x$platform = xieee1275; then - COND_powerpc_ieee1275_TRUE= - COND_powerpc_ieee1275_FALSE='#' -else - COND_powerpc_ieee1275_TRUE='#' - COND_powerpc_ieee1275_FALSE= -fi - - if test x$target_cpu = xmips -o x$target_cpu = xmipsel; then - COND_mips_TRUE= - COND_mips_FALSE='#' -else - COND_mips_TRUE='#' - COND_mips_FALSE= -fi - - if test x$target_cpu = xmipsel; then - COND_mipsel_TRUE= - COND_mipsel_FALSE='#' -else - COND_mipsel_TRUE='#' - COND_mipsel_FALSE= -fi - - if test x$target_cpu = xmips; then - COND_mipseb_TRUE= - COND_mipseb_FALSE='#' -else - COND_mipseb_TRUE='#' - COND_mipseb_FALSE= -fi - - if test x$target_cpu = xarm ; then - COND_arm_TRUE= - COND_arm_FALSE='#' -else - COND_arm_TRUE='#' - COND_arm_FALSE= -fi - - if test x$target_cpu = xarm -a x$platform = xuboot; then - COND_arm_uboot_TRUE= - COND_arm_uboot_FALSE='#' -else - COND_arm_uboot_TRUE='#' - COND_arm_uboot_FALSE= -fi - - if test x$target_cpu = xarm -a x$platform = xcoreboot; then - COND_arm_coreboot_TRUE= - COND_arm_coreboot_FALSE='#' -else - COND_arm_coreboot_TRUE='#' - COND_arm_coreboot_FALSE= -fi - - if test x$target_cpu = xarm -a x$platform = xefi; then - COND_arm_efi_TRUE= - COND_arm_efi_FALSE='#' -else - COND_arm_efi_TRUE='#' - COND_arm_efi_FALSE= -fi - - if test x$target_cpu = xarm64 ; then - COND_arm64_TRUE= - COND_arm64_FALSE='#' -else - COND_arm64_TRUE='#' - COND_arm64_FALSE= -fi - - if test x$target_cpu = xarm64 -a x$platform = xefi; then - COND_arm64_efi_TRUE= - COND_arm64_efi_FALSE='#' -else - COND_arm64_efi_TRUE='#' - COND_arm64_efi_FALSE= -fi - - if test x$target_cpu = xriscv32 ; then - COND_riscv32_TRUE= - COND_riscv32_FALSE='#' -else - COND_riscv32_TRUE='#' - COND_riscv32_FALSE= -fi - - if test x$target_cpu = xriscv64 ; then - COND_riscv64_TRUE= - COND_riscv64_FALSE='#' -else - COND_riscv64_TRUE='#' - COND_riscv64_FALSE= -fi - - if test x$target_cpu = xriscv32 -a x$platform = xefi; then - COND_riscv32_efi_TRUE= - COND_riscv32_efi_FALSE='#' -else - COND_riscv32_efi_TRUE='#' - COND_riscv32_efi_FALSE= -fi - - if test x$target_cpu = xriscv64 -a x$platform = xefi; then - COND_riscv64_efi_TRUE= - COND_riscv64_efi_FALSE='#' -else - COND_riscv64_efi_TRUE='#' - COND_riscv64_efi_FALSE= -fi - - - if test x$host_kernel = xhurd; then - COND_HOST_HURD_TRUE= - COND_HOST_HURD_FALSE='#' -else - COND_HOST_HURD_TRUE='#' - COND_HOST_HURD_FALSE= -fi - - if test x$host_kernel = xlinux; then - COND_HOST_LINUX_TRUE= - COND_HOST_LINUX_FALSE='#' -else - COND_HOST_LINUX_TRUE='#' - COND_HOST_LINUX_FALSE= -fi - - if test x$host_kernel = xnetbsd; then - COND_HOST_NETBSD_TRUE= - COND_HOST_NETBSD_FALSE='#' -else - COND_HOST_NETBSD_TRUE='#' - COND_HOST_NETBSD_FALSE= -fi - - if test x$host_kernel = xwindows; then - COND_HOST_WINDOWS_TRUE= - COND_HOST_WINDOWS_FALSE='#' -else - COND_HOST_WINDOWS_TRUE='#' - COND_HOST_WINDOWS_FALSE= -fi - - if test x$host_kernel = xkfreebsd; then - COND_HOST_KFREEBSD_TRUE= - COND_HOST_KFREEBSD_FALSE='#' -else - COND_HOST_KFREEBSD_TRUE='#' - COND_HOST_KFREEBSD_FALSE= -fi - - if test x$host_kernel = xxnu; then - COND_HOST_XNU_TRUE= - COND_HOST_XNU_FALSE='#' -else - COND_HOST_XNU_TRUE='#' - COND_HOST_XNU_FALSE= -fi - - if test x$host_kernel = xillumos; then - COND_HOST_ILLUMOS_TRUE= - COND_HOST_ILLUMOS_FALSE='#' -else - COND_HOST_ILLUMOS_TRUE='#' - COND_HOST_ILLUMOS_FALSE= -fi - - - if test x$cross_compiling = xno -a x$HELP2MAN != x; then - COND_MAN_PAGES_TRUE= - COND_MAN_PAGES_FALSE='#' -else - COND_MAN_PAGES_TRUE='#' - COND_MAN_PAGES_FALSE= -fi - - if test x$enable_grub_emu_sdl = xyes; then - COND_GRUB_EMU_SDL_TRUE= - COND_GRUB_EMU_SDL_FALSE='#' -else - COND_GRUB_EMU_SDL_TRUE='#' - COND_GRUB_EMU_SDL_FALSE= -fi - - if test x$enable_grub_emu_pci = xyes; then - COND_GRUB_EMU_PCI_TRUE= - COND_GRUB_EMU_PCI_FALSE='#' -else - COND_GRUB_EMU_PCI_TRUE='#' - COND_GRUB_EMU_PCI_FALSE= -fi - - if test x$enable_grub_mkfont = xyes; then - COND_GRUB_MKFONT_TRUE= - COND_GRUB_MKFONT_FALSE='#' -else - COND_GRUB_MKFONT_TRUE='#' - COND_GRUB_MKFONT_FALSE= -fi - - if test x$enable_grub_mount = xyes; then - COND_GRUB_MOUNT_TRUE= - COND_GRUB_MOUNT_FALSE='#' -else - COND_GRUB_MOUNT_TRUE='#' - COND_GRUB_MOUNT_FALSE= -fi - - if test x$FONT_SOURCE != x; then - COND_HAVE_FONT_SOURCE_TRUE= - COND_HAVE_FONT_SOURCE_FALSE='#' -else - COND_HAVE_FONT_SOURCE_TRUE='#' - COND_HAVE_FONT_SOURCE_FALSE= -fi - -if test x$FONT_SOURCE != x ; then - HAVE_FONT_SOURCE=1 -else - HAVE_FONT_SOURCE=0 -fi - - if test x$TARGET_APPLE_LINKER = x1; then - COND_APPLE_LINKER_TRUE= - COND_APPLE_LINKER_FALSE='#' -else - COND_APPLE_LINKER_TRUE='#' - COND_APPLE_LINKER_FALSE= -fi - - if test x$enable_efiemu = xyes; then - COND_ENABLE_EFIEMU_TRUE= - COND_ENABLE_EFIEMU_FALSE='#' -else - COND_ENABLE_EFIEMU_TRUE='#' - COND_ENABLE_EFIEMU_FALSE= -fi - - if test x$DISK_CACHE_STATS = x1; then - COND_ENABLE_CACHE_STATS_TRUE= - COND_ENABLE_CACHE_STATS_FALSE='#' -else - COND_ENABLE_CACHE_STATS_TRUE='#' - COND_ENABLE_CACHE_STATS_FALSE= -fi - - if test x$BOOT_TIME_STATS = x1; then - COND_ENABLE_BOOT_TIME_STATS_TRUE= - COND_ENABLE_BOOT_TIME_STATS_FALSE='#' -else - COND_ENABLE_BOOT_TIME_STATS_TRUE='#' - COND_ENABLE_BOOT_TIME_STATS_FALSE= -fi - - - if test x$HAVE_CXX = xyes; then - COND_HAVE_CXX_TRUE= - COND_HAVE_CXX_FALSE='#' -else - COND_HAVE_CXX_TRUE='#' - COND_HAVE_CXX_FALSE= -fi - - - if test x$HAVE_ASM_USCORE = x1; then - COND_HAVE_ASM_USCORE_TRUE= - COND_HAVE_ASM_USCORE_FALSE='#' -else - COND_HAVE_ASM_USCORE_TRUE='#' - COND_HAVE_ASM_USCORE_FALSE= -fi - - if test "x$starfield_excuse" = x; then - COND_STARFIELD_TRUE= - COND_STARFIELD_FALSE='#' -else - COND_STARFIELD_TRUE='#' - COND_STARFIELD_FALSE= -fi - - if test "x$have_exec" = xy; then - COND_HAVE_EXEC_TRUE= - COND_HAVE_EXEC_FALSE='#' -else - COND_HAVE_EXEC_TRUE='#' - COND_HAVE_EXEC_FALSE= -fi - - -test "x$prefix" = xNONE && prefix="$ac_default_prefix" -test "x$exec_prefix" = xNONE && exec_prefix="${prefix}" -datarootdir="$(eval echo "$datarootdir")" -grub_libdir="$(eval echo "$libdir")" -grub_localedir="$(eval echo "$localedir")" -grub_datadir="$(eval echo "$datadir")" -grub_sysconfdir="$(eval echo "$sysconfdir")" - -cat >>confdefs.h <<_ACEOF -#define LOCALEDIR "$grub_localedir" -_ACEOF - - -cat >>confdefs.h <<_ACEOF -#define GRUB_LIBDIR "$grub_libdir" -_ACEOF - - -cat >>confdefs.h <<_ACEOF -#define GRUB_DATADIR "$grub_datadir" -_ACEOF - - -cat >>confdefs.h <<_ACEOF -#define GRUB_SYSCONFDIR "$grub_sysconfdir" -_ACEOF - - - -# Output files. -if test "$platform" != none; then - cpudir="${target_cpu}" - if test x${cpudir} = xmipsel; then - cpudir=mips; - fi - -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether ln -s can handle directories properly" >&5 -$as_echo_n "checking whether ln -s can handle directories properly... " >&6; } -mkdir testdir 2>/dev/null -case $srcdir in -[\\/$]* | ?:[\\/]* ) reldir=$srcdir/include/grub/util ;; - *) reldir=../$srcdir/include/grub/util ;; -esac -if ln -s $reldir testdir/util 2>/dev/null && rm -f testdir/util 2>/dev/null ; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -$as_echo "yes" >&6; } - link_dir=yes -else - link_dir=no - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi -rm -rf testdir - - if test x"$link_dir" = xyes ; then - ac_config_links="$ac_config_links include/grub/cpu:include/grub/$cpudir" - - if test "$platform" != emu ; then - ac_config_links="$ac_config_links include/grub/machine:include/grub/$cpudir/$platform" - - fi - else - mkdir -p include/grub 2>/dev/null - rm -rf include/grub/cpu - cp -rp $srcdir/include/grub/$cpudir include/grub/cpu 2>/dev/null - if test "$platform" != emu ; then - rm -rf include/grub/machine - cp -rp $srcdir/include/grub/$cpudir/$platform include/grub/machine 2>/dev/null - fi - fi -else - # Just enough to stop the compiler failing with -I$(srcdir)/include. - mkdir -p include 2>/dev/null - rm -rf include/grub/cpu include/grub/machine -fi - -ac_config_files="$ac_config_files Makefile" - -ac_config_files="$ac_config_files grub-core/Makefile" - -ac_config_files="$ac_config_files grub-core/lib/gnulib/Makefile" - -ac_config_files="$ac_config_files po/Makefile.in" - -ac_config_files="$ac_config_files docs/Makefile" - -ac_config_files="$ac_config_files util/bash-completion.d/Makefile" - -ac_config_files="$ac_config_files stamp-h" - -ac_config_files="$ac_config_files config.h" - - -cat >confcache <<\_ACEOF -# This file is a shell script that caches the results of configure -# tests run on this system so they can be shared between configure -# scripts and configure runs, see configure's option --config-cache. -# It is not useful on other systems. If it contains results you don't -# want to keep, you may remove or edit it. -# -# config.status only pays attention to the cache file if you give it -# the --recheck option to rerun configure. -# -# `ac_cv_env_foo' variables (set or unset) will be overridden when -# loading this file, other *unset* `ac_cv_foo' will be assigned the -# following values. - -_ACEOF - -# The following way of writing the cache mishandles newlines in values, -# but we know of no workaround that is simple, portable, and efficient. -# So, we kill variables containing newlines. -# Ultrix sh set writes to stderr and can't be redirected directly, -# and sets the high bit in the cache file unless we assign to the vars. -( - for ac_var in `(set) 2>&1 | sed -n 's/^\([a-zA-Z_][a-zA-Z0-9_]*\)=.*/\1/p'`; do - eval ac_val=\$$ac_var - case $ac_val in #( - *${as_nl}*) - case $ac_var in #( - *_cv_*) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cache variable $ac_var contains a newline" >&5 -$as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;; - esac - case $ac_var in #( - _ | IFS | as_nl) ;; #( - BASH_ARGV | BASH_SOURCE) eval $ac_var= ;; #( - *) { eval $ac_var=; unset $ac_var;} ;; - esac ;; - esac - done - - (set) 2>&1 | - case $as_nl`(ac_space=' '; set) 2>&1` in #( - *${as_nl}ac_space=\ *) - # `set' does not quote correctly, so add quotes: double-quote - # substitution turns \\\\ into \\, and sed turns \\ into \. - sed -n \ - "s/'/'\\\\''/g; - s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\\2'/p" - ;; #( - *) - # `set' quotes correctly as required by POSIX, so do not add quotes. - sed -n "/^[_$as_cr_alnum]*_cv_[_$as_cr_alnum]*=/p" - ;; - esac | - sort -) | - sed ' - /^ac_cv_env_/b end - t clear - :clear - s/^\([^=]*\)=\(.*[{}].*\)$/test "${\1+set}" = set || &/ - t end - s/^\([^=]*\)=\(.*\)$/\1=${\1=\2}/ - :end' >>confcache -if diff "$cache_file" confcache >/dev/null 2>&1; then :; else - if test -w "$cache_file"; then - if test "x$cache_file" != "x/dev/null"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: updating cache $cache_file" >&5 -$as_echo "$as_me: updating cache $cache_file" >&6;} - if test ! -f "$cache_file" || test -h "$cache_file"; then - cat confcache >"$cache_file" - else - case $cache_file in #( - */* | ?:*) - mv -f confcache "$cache_file"$$ && - mv -f "$cache_file"$$ "$cache_file" ;; #( - *) - mv -f confcache "$cache_file" ;; - esac - fi - fi - else - { $as_echo "$as_me:${as_lineno-$LINENO}: not updating unwritable cache $cache_file" >&5 -$as_echo "$as_me: not updating unwritable cache $cache_file" >&6;} - fi -fi -rm -f confcache - -test "x$prefix" = xNONE && prefix=$ac_default_prefix -# Let make expand exec_prefix. -test "x$exec_prefix" = xNONE && exec_prefix='${prefix}' - -DEFS=-DHAVE_CONFIG_H - -ac_libobjs= -ac_ltlibobjs= -U= -for ac_i in : $LIBOBJS; do test "x$ac_i" = x: && continue - # 1. Remove the extension, and $U if already installed. - ac_script='s/\$U\././;s/\.o$//;s/\.obj$//' - ac_i=`$as_echo "$ac_i" | sed "$ac_script"` - # 2. Prepend LIBOBJDIR. When used with automake>=1.10 LIBOBJDIR - # will be set to the directory where LIBOBJS objects are built. - as_fn_append ac_libobjs " \${LIBOBJDIR}$ac_i\$U.$ac_objext" - as_fn_append ac_ltlibobjs " \${LIBOBJDIR}$ac_i"'$U.lo' -done -LIBOBJS=$ac_libobjs - -LTLIBOBJS=$ac_ltlibobjs - - -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking that generated files are newer than configure" >&5 -$as_echo_n "checking that generated files are newer than configure... " >&6; } - if test -n "$am_sleep_pid"; then - # Hide warnings about reused PIDs. - wait $am_sleep_pid 2>/dev/null - fi - { $as_echo "$as_me:${as_lineno-$LINENO}: result: done" >&5 -$as_echo "done" >&6; } - if test -n "$EXEEXT"; then - am__EXEEXT_TRUE= - am__EXEEXT_FALSE='#' -else - am__EXEEXT_TRUE='#' - am__EXEEXT_FALSE= -fi - -if test -z "${AMDEP_TRUE}" && test -z "${AMDEP_FALSE}"; then - as_fn_error $? "conditional \"AMDEP\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi -if test -z "${am__fastdepCC_TRUE}" && test -z "${am__fastdepCC_FALSE}"; then - as_fn_error $? "conditional \"am__fastdepCC\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi -if test -z "${am__fastdepCC_TRUE}" && test -z "${am__fastdepCC_FALSE}"; then - as_fn_error $? "conditional \"am__fastdepCC\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi -if test -z "${am__fastdepCXX_TRUE}" && test -z "${am__fastdepCXX_FALSE}"; then - as_fn_error $? "conditional \"am__fastdepCXX\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi -if test -z "${am__fastdepCCAS_TRUE}" && test -z "${am__fastdepCCAS_FALSE}"; then - as_fn_error $? "conditional \"am__fastdepCCAS\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi - -if test -z "${GL_COND_LIBTOOL_TRUE}" && test -z "${GL_COND_LIBTOOL_FALSE}"; then - as_fn_error $? "conditional \"GL_COND_LIBTOOL\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi -if test -z "${GL_GENERATE_ALLOCA_H_TRUE}" && test -z "${GL_GENERATE_ALLOCA_H_FALSE}"; then - as_fn_error $? "conditional \"GL_GENERATE_ALLOCA_H\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi -if test -z "${GL_GENERATE_ERRNO_H_TRUE}" && test -z "${GL_GENERATE_ERRNO_H_FALSE}"; then - as_fn_error $? "conditional \"GL_GENERATE_ERRNO_H\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi -if test -z "${GL_GENERATE_FLOAT_H_TRUE}" && test -z "${GL_GENERATE_FLOAT_H_FALSE}"; then - as_fn_error $? "conditional \"GL_GENERATE_FLOAT_H\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi -if test -z "${GL_GENERATE_FNMATCH_H_TRUE}" && test -z "${GL_GENERATE_FNMATCH_H_FALSE}"; then - as_fn_error $? "conditional \"GL_GENERATE_FNMATCH_H\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi -if test -z "${GL_GENERATE_FNMATCH_H_TRUE}" && test -z "${GL_GENERATE_FNMATCH_H_FALSE}"; then - as_fn_error $? "conditional \"GL_GENERATE_FNMATCH_H\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi -if test -z "${GL_GENERATE_LIMITS_H_TRUE}" && test -z "${GL_GENERATE_LIMITS_H_FALSE}"; then - as_fn_error $? "conditional \"GL_GENERATE_LIMITS_H\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi -if test -z "${GL_GENERATE_STDDEF_H_TRUE}" && test -z "${GL_GENERATE_STDDEF_H_FALSE}"; then - as_fn_error $? "conditional \"GL_GENERATE_STDDEF_H\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi -if test -z "${GL_GENERATE_STDALIGN_H_TRUE}" && test -z "${GL_GENERATE_STDALIGN_H_FALSE}"; then - as_fn_error $? "conditional \"GL_GENERATE_STDALIGN_H\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi -if test -z "${GL_GENERATE_STDBOOL_H_TRUE}" && test -z "${GL_GENERATE_STDBOOL_H_FALSE}"; then - as_fn_error $? "conditional \"GL_GENERATE_STDBOOL_H\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi -if test -z "${GL_GENERATE_STDDEF_H_TRUE}" && test -z "${GL_GENERATE_STDDEF_H_FALSE}"; then - as_fn_error $? "conditional \"GL_GENERATE_STDDEF_H\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi -if test -z "${GL_GENERATE_LIMITS_H_TRUE}" && test -z "${GL_GENERATE_LIMITS_H_FALSE}"; then - as_fn_error $? "conditional \"GL_GENERATE_LIMITS_H\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi -if test -z "${GL_GENERATE_STDINT_H_TRUE}" && test -z "${GL_GENERATE_STDINT_H_FALSE}"; then - as_fn_error $? "conditional \"GL_GENERATE_STDINT_H\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi -if test -z "${GL_GENERATE_SYSEXITS_H_TRUE}" && test -z "${GL_GENERATE_SYSEXITS_H_FALSE}"; then - as_fn_error $? "conditional \"GL_GENERATE_SYSEXITS_H\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi -if test -z "${LIBUNISTRING_COMPILE_UNIWIDTH_WIDTH_TRUE}" && test -z "${LIBUNISTRING_COMPILE_UNIWIDTH_WIDTH_FALSE}"; then - as_fn_error $? "conditional \"LIBUNISTRING_COMPILE_UNIWIDTH_WIDTH\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi - - - gl_libobjs= - gl_ltlibobjs= - if test -n "$gl_LIBOBJS"; then - # Remove the extension. - sed_drop_objext='s/\.o$//;s/\.obj$//' - for i in `for i in $gl_LIBOBJS; do echo "$i"; done | sed -e "$sed_drop_objext" | sort | uniq`; do - gl_libobjs="$gl_libobjs $i.$ac_objext" - gl_ltlibobjs="$gl_ltlibobjs $i.lo" - done - fi - gl_LIBOBJS=$gl_libobjs - - gl_LTLIBOBJS=$gl_ltlibobjs - - - - gltests_libobjs= - gltests_ltlibobjs= - if test -n "$gltests_LIBOBJS"; then - # Remove the extension. - sed_drop_objext='s/\.o$//;s/\.obj$//' - for i in `for i in $gltests_LIBOBJS; do echo "$i"; done | sed -e "$sed_drop_objext" | sort | uniq`; do - gltests_libobjs="$gltests_libobjs $i.$ac_objext" - gltests_ltlibobjs="$gltests_ltlibobjs $i.lo" - done - fi - gltests_LIBOBJS=$gltests_libobjs - - gltests_LTLIBOBJS=$gltests_ltlibobjs - - -if test -z "${COND_real_platform_TRUE}" && test -z "${COND_real_platform_FALSE}"; then - as_fn_error $? "conditional \"COND_real_platform\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi -if test -z "${COND_emu_TRUE}" && test -z "${COND_emu_FALSE}"; then - as_fn_error $? "conditional \"COND_emu\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi -if test -z "${COND_i386_pc_TRUE}" && test -z "${COND_i386_pc_FALSE}"; then - as_fn_error $? "conditional \"COND_i386_pc\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi -if test -z "${COND_i386_efi_TRUE}" && test -z "${COND_i386_efi_FALSE}"; then - as_fn_error $? "conditional \"COND_i386_efi\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi -if test -z "${COND_ia64_efi_TRUE}" && test -z "${COND_ia64_efi_FALSE}"; then - as_fn_error $? "conditional \"COND_ia64_efi\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi -if test -z "${COND_i386_qemu_TRUE}" && test -z "${COND_i386_qemu_FALSE}"; then - as_fn_error $? "conditional \"COND_i386_qemu\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi -if test -z "${COND_i386_ieee1275_TRUE}" && test -z "${COND_i386_ieee1275_FALSE}"; then - as_fn_error $? "conditional \"COND_i386_ieee1275\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi -if test -z "${COND_i386_coreboot_TRUE}" && test -z "${COND_i386_coreboot_FALSE}"; then - as_fn_error $? "conditional \"COND_i386_coreboot\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi -if test -z "${COND_i386_multiboot_TRUE}" && test -z "${COND_i386_multiboot_FALSE}"; then - as_fn_error $? "conditional \"COND_i386_multiboot\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi -if test -z "${COND_x86_64_efi_TRUE}" && test -z "${COND_x86_64_efi_FALSE}"; then - as_fn_error $? "conditional \"COND_x86_64_efi\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi -if test -z "${COND_i386_xen_TRUE}" && test -z "${COND_i386_xen_FALSE}"; then - as_fn_error $? "conditional \"COND_i386_xen\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi -if test -z "${COND_i386_xen_pvh_TRUE}" && test -z "${COND_i386_xen_pvh_FALSE}"; then - as_fn_error $? "conditional \"COND_i386_xen_pvh\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi -if test -z "${COND_x86_64_xen_TRUE}" && test -z "${COND_x86_64_xen_FALSE}"; then - as_fn_error $? "conditional \"COND_x86_64_xen\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi -if test -z "${COND_mips_loongson_TRUE}" && test -z "${COND_mips_loongson_FALSE}"; then - as_fn_error $? "conditional \"COND_mips_loongson\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi -if test -z "${COND_mips_qemu_mips_TRUE}" && test -z "${COND_mips_qemu_mips_FALSE}"; then - as_fn_error $? "conditional \"COND_mips_qemu_mips\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi -if test -z "${COND_mips_arc_TRUE}" && test -z "${COND_mips_arc_FALSE}"; then - as_fn_error $? "conditional \"COND_mips_arc\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi -if test -z "${COND_sparc64_ieee1275_TRUE}" && test -z "${COND_sparc64_ieee1275_FALSE}"; then - as_fn_error $? "conditional \"COND_sparc64_ieee1275\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi -if test -z "${COND_sparc64_emu_TRUE}" && test -z "${COND_sparc64_emu_FALSE}"; then - as_fn_error $? "conditional \"COND_sparc64_emu\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi -if test -z "${COND_powerpc_ieee1275_TRUE}" && test -z "${COND_powerpc_ieee1275_FALSE}"; then - as_fn_error $? "conditional \"COND_powerpc_ieee1275\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi -if test -z "${COND_mips_TRUE}" && test -z "${COND_mips_FALSE}"; then - as_fn_error $? "conditional \"COND_mips\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi -if test -z "${COND_mipsel_TRUE}" && test -z "${COND_mipsel_FALSE}"; then - as_fn_error $? "conditional \"COND_mipsel\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi -if test -z "${COND_mipseb_TRUE}" && test -z "${COND_mipseb_FALSE}"; then - as_fn_error $? "conditional \"COND_mipseb\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi -if test -z "${COND_arm_TRUE}" && test -z "${COND_arm_FALSE}"; then - as_fn_error $? "conditional \"COND_arm\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi -if test -z "${COND_arm_uboot_TRUE}" && test -z "${COND_arm_uboot_FALSE}"; then - as_fn_error $? "conditional \"COND_arm_uboot\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi -if test -z "${COND_arm_coreboot_TRUE}" && test -z "${COND_arm_coreboot_FALSE}"; then - as_fn_error $? "conditional \"COND_arm_coreboot\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi -if test -z "${COND_arm_efi_TRUE}" && test -z "${COND_arm_efi_FALSE}"; then - as_fn_error $? "conditional \"COND_arm_efi\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi -if test -z "${COND_arm64_TRUE}" && test -z "${COND_arm64_FALSE}"; then - as_fn_error $? "conditional \"COND_arm64\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi -if test -z "${COND_arm64_efi_TRUE}" && test -z "${COND_arm64_efi_FALSE}"; then - as_fn_error $? "conditional \"COND_arm64_efi\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi -if test -z "${COND_riscv32_TRUE}" && test -z "${COND_riscv32_FALSE}"; then - as_fn_error $? "conditional \"COND_riscv32\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi -if test -z "${COND_riscv64_TRUE}" && test -z "${COND_riscv64_FALSE}"; then - as_fn_error $? "conditional \"COND_riscv64\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi -if test -z "${COND_riscv32_efi_TRUE}" && test -z "${COND_riscv32_efi_FALSE}"; then - as_fn_error $? "conditional \"COND_riscv32_efi\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi -if test -z "${COND_riscv64_efi_TRUE}" && test -z "${COND_riscv64_efi_FALSE}"; then - as_fn_error $? "conditional \"COND_riscv64_efi\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi -if test -z "${COND_HOST_HURD_TRUE}" && test -z "${COND_HOST_HURD_FALSE}"; then - as_fn_error $? "conditional \"COND_HOST_HURD\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi -if test -z "${COND_HOST_LINUX_TRUE}" && test -z "${COND_HOST_LINUX_FALSE}"; then - as_fn_error $? "conditional \"COND_HOST_LINUX\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi -if test -z "${COND_HOST_NETBSD_TRUE}" && test -z "${COND_HOST_NETBSD_FALSE}"; then - as_fn_error $? "conditional \"COND_HOST_NETBSD\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi -if test -z "${COND_HOST_WINDOWS_TRUE}" && test -z "${COND_HOST_WINDOWS_FALSE}"; then - as_fn_error $? "conditional \"COND_HOST_WINDOWS\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi -if test -z "${COND_HOST_KFREEBSD_TRUE}" && test -z "${COND_HOST_KFREEBSD_FALSE}"; then - as_fn_error $? "conditional \"COND_HOST_KFREEBSD\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi -if test -z "${COND_HOST_XNU_TRUE}" && test -z "${COND_HOST_XNU_FALSE}"; then - as_fn_error $? "conditional \"COND_HOST_XNU\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi -if test -z "${COND_HOST_ILLUMOS_TRUE}" && test -z "${COND_HOST_ILLUMOS_FALSE}"; then - as_fn_error $? "conditional \"COND_HOST_ILLUMOS\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi -if test -z "${COND_MAN_PAGES_TRUE}" && test -z "${COND_MAN_PAGES_FALSE}"; then - as_fn_error $? "conditional \"COND_MAN_PAGES\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi -if test -z "${COND_GRUB_EMU_SDL_TRUE}" && test -z "${COND_GRUB_EMU_SDL_FALSE}"; then - as_fn_error $? "conditional \"COND_GRUB_EMU_SDL\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi -if test -z "${COND_GRUB_EMU_PCI_TRUE}" && test -z "${COND_GRUB_EMU_PCI_FALSE}"; then - as_fn_error $? "conditional \"COND_GRUB_EMU_PCI\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi -if test -z "${COND_GRUB_MKFONT_TRUE}" && test -z "${COND_GRUB_MKFONT_FALSE}"; then - as_fn_error $? "conditional \"COND_GRUB_MKFONT\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi -if test -z "${COND_GRUB_MOUNT_TRUE}" && test -z "${COND_GRUB_MOUNT_FALSE}"; then - as_fn_error $? "conditional \"COND_GRUB_MOUNT\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi -if test -z "${COND_HAVE_FONT_SOURCE_TRUE}" && test -z "${COND_HAVE_FONT_SOURCE_FALSE}"; then - as_fn_error $? "conditional \"COND_HAVE_FONT_SOURCE\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi -if test -z "${COND_APPLE_LINKER_TRUE}" && test -z "${COND_APPLE_LINKER_FALSE}"; then - as_fn_error $? "conditional \"COND_APPLE_LINKER\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi -if test -z "${COND_ENABLE_EFIEMU_TRUE}" && test -z "${COND_ENABLE_EFIEMU_FALSE}"; then - as_fn_error $? "conditional \"COND_ENABLE_EFIEMU\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi -if test -z "${COND_ENABLE_CACHE_STATS_TRUE}" && test -z "${COND_ENABLE_CACHE_STATS_FALSE}"; then - as_fn_error $? "conditional \"COND_ENABLE_CACHE_STATS\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi -if test -z "${COND_ENABLE_BOOT_TIME_STATS_TRUE}" && test -z "${COND_ENABLE_BOOT_TIME_STATS_FALSE}"; then - as_fn_error $? "conditional \"COND_ENABLE_BOOT_TIME_STATS\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi -if test -z "${COND_HAVE_CXX_TRUE}" && test -z "${COND_HAVE_CXX_FALSE}"; then - as_fn_error $? "conditional \"COND_HAVE_CXX\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi -if test -z "${COND_HAVE_ASM_USCORE_TRUE}" && test -z "${COND_HAVE_ASM_USCORE_FALSE}"; then - as_fn_error $? "conditional \"COND_HAVE_ASM_USCORE\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi -if test -z "${COND_STARFIELD_TRUE}" && test -z "${COND_STARFIELD_FALSE}"; then - as_fn_error $? "conditional \"COND_STARFIELD\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi -if test -z "${COND_HAVE_EXEC_TRUE}" && test -z "${COND_HAVE_EXEC_FALSE}"; then - as_fn_error $? "conditional \"COND_HAVE_EXEC\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi - -: "${CONFIG_STATUS=./config.status}" -ac_write_fail=0 -ac_clean_files_save=$ac_clean_files -ac_clean_files="$ac_clean_files $CONFIG_STATUS" -{ $as_echo "$as_me:${as_lineno-$LINENO}: creating $CONFIG_STATUS" >&5 -$as_echo "$as_me: creating $CONFIG_STATUS" >&6;} -as_write_fail=0 -cat >$CONFIG_STATUS <<_ASEOF || as_write_fail=1 -#! $SHELL -# Generated by $as_me. -# Run this file to recreate the current configuration. -# Compiler output produced by configure, useful for debugging -# configure, is in config.log if it exists. - -debug=false -ac_cs_recheck=false -ac_cs_silent=false - -SHELL=\${CONFIG_SHELL-$SHELL} -export SHELL -_ASEOF -cat >>$CONFIG_STATUS <<\_ASEOF || as_write_fail=1 -## -------------------- ## -## M4sh Initialization. ## -## -------------------- ## - -# Be more Bourne compatible -DUALCASE=1; export DUALCASE # for MKS sh -if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then : - emulate sh - NULLCMD=: - # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which - # is contrary to our usage. Disable this feature. - alias -g '${1+"$@"}'='"$@"' - setopt NO_GLOB_SUBST -else - case `(set -o) 2>/dev/null` in #( - *posix*) : - set -o posix ;; #( - *) : - ;; -esac -fi - - -as_nl=' -' -export as_nl -# Printing a long string crashes Solaris 7 /usr/bin/printf. -as_echo='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\' -as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo -as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo$as_echo -# Prefer a ksh shell builtin over an external printf program on Solaris, -# but without wasting forks for bash or zsh. -if test -z "$BASH_VERSION$ZSH_VERSION" \ - && (test "X`print -r -- $as_echo`" = "X$as_echo") 2>/dev/null; then - as_echo='print -r --' - as_echo_n='print -rn --' -elif (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then - as_echo='printf %s\n' - as_echo_n='printf %s' -else - if test "X`(/usr/ucb/echo -n -n $as_echo) 2>/dev/null`" = "X-n $as_echo"; then - as_echo_body='eval /usr/ucb/echo -n "$1$as_nl"' - as_echo_n='/usr/ucb/echo -n' - else - as_echo_body='eval expr "X$1" : "X\\(.*\\)"' - as_echo_n_body='eval - arg=$1; - case $arg in #( - *"$as_nl"*) - expr "X$arg" : "X\\(.*\\)$as_nl"; - arg=`expr "X$arg" : ".*$as_nl\\(.*\\)"`;; - esac; - expr "X$arg" : "X\\(.*\\)" | tr -d "$as_nl" - ' - export as_echo_n_body - as_echo_n='sh -c $as_echo_n_body as_echo' - fi - export as_echo_body - as_echo='sh -c $as_echo_body as_echo' -fi - -# The user is always right. -if test "${PATH_SEPARATOR+set}" != set; then - PATH_SEPARATOR=: - (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 && { - (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 || - PATH_SEPARATOR=';' - } -fi - - -# IFS -# We need space, tab and new line, in precisely that order. Quoting is -# there to prevent editors from complaining about space-tab. -# (If _AS_PATH_WALK were called with IFS unset, it would disable word -# splitting by setting IFS to empty value.) -IFS=" "" $as_nl" - -# Find who we are. Look in the path if we contain no directory separator. -as_myself= -case $0 in #(( - *[\\/]* ) as_myself=$0 ;; - *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break - done -IFS=$as_save_IFS - - ;; -esac -# We did not find ourselves, most probably we were run as `sh COMMAND' -# in which case we are not to be found in the path. -if test "x$as_myself" = x; then - as_myself=$0 -fi -if test ! -f "$as_myself"; then - $as_echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2 - exit 1 -fi - -# Unset variables that we do not need and which cause bugs (e.g. in -# pre-3.0 UWIN ksh). But do not cause bugs in bash 2.01; the "|| exit 1" -# suppresses any "Segmentation fault" message there. '((' could -# trigger a bug in pdksh 5.2.14. -for as_var in BASH_ENV ENV MAIL MAILPATH -do eval test x\${$as_var+set} = xset \ - && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || : -done -PS1='$ ' -PS2='> ' -PS4='+ ' - -# NLS nuisances. -LC_ALL=C -export LC_ALL -LANGUAGE=C -export LANGUAGE - -# CDPATH. -(unset CDPATH) >/dev/null 2>&1 && unset CDPATH - - -# as_fn_error STATUS ERROR [LINENO LOG_FD] -# ---------------------------------------- -# Output "`basename $0`: error: ERROR" to stderr. If LINENO and LOG_FD are -# provided, also output the error to LOG_FD, referencing LINENO. Then exit the -# script with STATUS, using 1 if that was 0. -as_fn_error () -{ - as_status=$1; test $as_status -eq 0 && as_status=1 - if test "$4"; then - as_lineno=${as_lineno-"$3"} as_lineno_stack=as_lineno_stack=$as_lineno_stack - $as_echo "$as_me:${as_lineno-$LINENO}: error: $2" >&$4 - fi - $as_echo "$as_me: error: $2" >&2 - as_fn_exit $as_status -} # as_fn_error - - -# as_fn_set_status STATUS -# ----------------------- -# Set $? to STATUS, without forking. -as_fn_set_status () -{ - return $1 -} # as_fn_set_status - -# as_fn_exit STATUS -# ----------------- -# Exit the shell with STATUS, even in a "trap 0" or "set -e" context. -as_fn_exit () -{ - set +e - as_fn_set_status $1 - exit $1 -} # as_fn_exit - -# as_fn_unset VAR -# --------------- -# Portably unset VAR. -as_fn_unset () -{ - { eval $1=; unset $1;} -} -as_unset=as_fn_unset -# as_fn_append VAR VALUE -# ---------------------- -# Append the text in VALUE to the end of the definition contained in VAR. Take -# advantage of any shell optimizations that allow amortized linear growth over -# repeated appends, instead of the typical quadratic growth present in naive -# implementations. -if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null; then : - eval 'as_fn_append () - { - eval $1+=\$2 - }' -else - as_fn_append () - { - eval $1=\$$1\$2 - } -fi # as_fn_append - -# as_fn_arith ARG... -# ------------------ -# Perform arithmetic evaluation on the ARGs, and store the result in the -# global $as_val. Take advantage of shells that can avoid forks. The arguments -# must be portable across $(()) and expr. -if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null; then : - eval 'as_fn_arith () - { - as_val=$(( $* )) - }' -else - as_fn_arith () - { - as_val=`expr "$@" || test $? -eq 1` - } -fi # as_fn_arith - - -if expr a : '\(a\)' >/dev/null 2>&1 && - test "X`expr 00001 : '.*\(...\)'`" = X001; then - as_expr=expr -else - as_expr=false -fi - -if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then - as_basename=basename -else - as_basename=false -fi - -if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then - as_dirname=dirname -else - as_dirname=false -fi - -as_me=`$as_basename -- "$0" || -$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \ - X"$0" : 'X\(//\)$' \| \ - X"$0" : 'X\(/\)' \| . 2>/dev/null || -$as_echo X/"$0" | - sed '/^.*\/\([^/][^/]*\)\/*$/{ - s//\1/ - q - } - /^X\/\(\/\/\)$/{ - s//\1/ - q - } - /^X\/\(\/\).*/{ - s//\1/ - q - } - s/.*/./; q'` - -# Avoid depending upon Character Ranges. -as_cr_letters='abcdefghijklmnopqrstuvwxyz' -as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ' -as_cr_Letters=$as_cr_letters$as_cr_LETTERS -as_cr_digits='0123456789' -as_cr_alnum=$as_cr_Letters$as_cr_digits - -ECHO_C= ECHO_N= ECHO_T= -case `echo -n x` in #((((( --n*) - case `echo 'xy\c'` in - *c*) ECHO_T=' ';; # ECHO_T is single tab character. - xy) ECHO_C='\c';; - *) echo `echo ksh88 bug on AIX 6.1` > /dev/null - ECHO_T=' ';; - esac;; -*) - ECHO_N='-n';; -esac - -rm -f conf$$ conf$$.exe conf$$.file -if test -d conf$$.dir; then - rm -f conf$$.dir/conf$$.file -else - rm -f conf$$.dir - mkdir conf$$.dir 2>/dev/null -fi -if (echo >conf$$.file) 2>/dev/null; then - if ln -s conf$$.file conf$$ 2>/dev/null; then - as_ln_s='ln -s' - # ... but there are two gotchas: - # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail. - # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable. - # In both cases, we have to default to `cp -pR'. - ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe || - as_ln_s='cp -pR' - elif ln conf$$.file conf$$ 2>/dev/null; then - as_ln_s=ln - else - as_ln_s='cp -pR' - fi -else - as_ln_s='cp -pR' -fi -rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file -rmdir conf$$.dir 2>/dev/null - - -# as_fn_mkdir_p -# ------------- -# Create "$as_dir" as a directory, including parents if necessary. -as_fn_mkdir_p () -{ - - case $as_dir in #( - -*) as_dir=./$as_dir;; - esac - test -d "$as_dir" || eval $as_mkdir_p || { - as_dirs= - while :; do - case $as_dir in #( - *\'*) as_qdir=`$as_echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'( - *) as_qdir=$as_dir;; - esac - as_dirs="'$as_qdir' $as_dirs" - as_dir=`$as_dirname -- "$as_dir" || -$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$as_dir" : 'X\(//\)[^/]' \| \ - X"$as_dir" : 'X\(//\)$' \| \ - X"$as_dir" : 'X\(/\)' \| . 2>/dev/null || -$as_echo X"$as_dir" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ - s//\1/ - q - } - /^X\(\/\/\)[^/].*/{ - s//\1/ - q - } - /^X\(\/\/\)$/{ - s//\1/ - q - } - /^X\(\/\).*/{ - s//\1/ - q - } - s/.*/./; q'` - test -d "$as_dir" && break - done - test -z "$as_dirs" || eval "mkdir $as_dirs" - } || test -d "$as_dir" || as_fn_error $? "cannot create directory $as_dir" - - -} # as_fn_mkdir_p -if mkdir -p . 2>/dev/null; then - as_mkdir_p='mkdir -p "$as_dir"' -else - test -d ./-p && rmdir ./-p - as_mkdir_p=false -fi - - -# as_fn_executable_p FILE -# ----------------------- -# Test if FILE is an executable regular file. -as_fn_executable_p () -{ - test -f "$1" && test -x "$1" -} # as_fn_executable_p -as_test_x='test -x' -as_executable_p=as_fn_executable_p - -# Sed expression to map a string onto a valid CPP name. -as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'" - -# Sed expression to map a string onto a valid variable name. -as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'" - - -exec 6>&1 -## ----------------------------------- ## -## Main body of $CONFIG_STATUS script. ## -## ----------------------------------- ## -_ASEOF -test $as_write_fail = 0 && chmod +x $CONFIG_STATUS || ac_write_fail=1 - -cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 -# Save the log message, to keep $0 and so on meaningful, and to -# report actual input values of CONFIG_FILES etc. instead of their -# values after options handling. -ac_log=" -This file was extended by GRUB $as_me 2.04, which was -generated by GNU Autoconf 2.69. Invocation command line was - - CONFIG_FILES = $CONFIG_FILES - CONFIG_HEADERS = $CONFIG_HEADERS - CONFIG_LINKS = $CONFIG_LINKS - CONFIG_COMMANDS = $CONFIG_COMMANDS - $ $0 $@ - -on `(hostname || uname -n) 2>/dev/null | sed 1q` -" - -_ACEOF - -case $ac_config_files in *" -"*) set x $ac_config_files; shift; ac_config_files=$*;; -esac - -case $ac_config_headers in *" -"*) set x $ac_config_headers; shift; ac_config_headers=$*;; -esac - - -cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 -# Files that config.status was made for. -config_files="$ac_config_files" -config_headers="$ac_config_headers" -config_links="$ac_config_links" -config_commands="$ac_config_commands" - -_ACEOF - -cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 -ac_cs_usage="\ -\`$as_me' instantiates files and other configuration actions -from templates according to the current configuration. Unless the files -and actions are specified as TAGs, all are instantiated by default. - -Usage: $0 [OPTION]... [TAG]... - - -h, --help print this help, then exit - -V, --version print version number and configuration settings, then exit - --config print configuration, then exit - -q, --quiet, --silent - do not print progress messages - -d, --debug don't remove temporary files - --recheck update $as_me by reconfiguring in the same conditions - --file=FILE[:TEMPLATE] - instantiate the configuration file FILE - --header=FILE[:TEMPLATE] - instantiate the configuration header FILE - -Configuration files: -$config_files - -Configuration headers: -$config_headers - -Configuration links: -$config_links - -Configuration commands: -$config_commands - -Report bugs to ." - -_ACEOF -cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 -ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`" -ac_cs_version="\\ -GRUB config.status 2.04 -configured by $0, generated by GNU Autoconf 2.69, - with options \\"\$ac_cs_config\\" - -Copyright (C) 2012 Free Software Foundation, Inc. -This config.status script is free software; the Free Software Foundation -gives unlimited permission to copy, distribute and modify it." - -ac_pwd='$ac_pwd' -srcdir='$srcdir' -INSTALL='$INSTALL' -MKDIR_P='$MKDIR_P' -AWK='$AWK' -test -n "\$AWK" || AWK=awk -_ACEOF - -cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 -# The default lists apply if the user does not specify any file. -ac_need_defaults=: -while test $# != 0 -do - case $1 in - --*=?*) - ac_option=`expr "X$1" : 'X\([^=]*\)='` - ac_optarg=`expr "X$1" : 'X[^=]*=\(.*\)'` - ac_shift=: - ;; - --*=) - ac_option=`expr "X$1" : 'X\([^=]*\)='` - ac_optarg= - ac_shift=: - ;; - *) - ac_option=$1 - ac_optarg=$2 - ac_shift=shift - ;; - esac - - case $ac_option in - # Handling of the options. - -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r) - ac_cs_recheck=: ;; - --version | --versio | --versi | --vers | --ver | --ve | --v | -V ) - $as_echo "$ac_cs_version"; exit ;; - --config | --confi | --conf | --con | --co | --c ) - $as_echo "$ac_cs_config"; exit ;; - --debug | --debu | --deb | --de | --d | -d ) - debug=: ;; - --file | --fil | --fi | --f ) - $ac_shift - case $ac_optarg in - *\'*) ac_optarg=`$as_echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;; - '') as_fn_error $? "missing file argument" ;; - esac - as_fn_append CONFIG_FILES " '$ac_optarg'" - ac_need_defaults=false;; - --header | --heade | --head | --hea ) - $ac_shift - case $ac_optarg in - *\'*) ac_optarg=`$as_echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;; - esac - as_fn_append CONFIG_HEADERS " '$ac_optarg'" - ac_need_defaults=false;; - --he | --h) - # Conflict between --help and --header - as_fn_error $? "ambiguous option: \`$1' -Try \`$0 --help' for more information.";; - --help | --hel | -h ) - $as_echo "$ac_cs_usage"; exit ;; - -q | -quiet | --quiet | --quie | --qui | --qu | --q \ - | -silent | --silent | --silen | --sile | --sil | --si | --s) - ac_cs_silent=: ;; - - # This is an error. - -*) as_fn_error $? "unrecognized option: \`$1' -Try \`$0 --help' for more information." ;; - - *) as_fn_append ac_config_targets " $1" - ac_need_defaults=false ;; - - esac - shift -done - -ac_configure_extra_args= - -if $ac_cs_silent; then - exec 6>/dev/null - ac_configure_extra_args="$ac_configure_extra_args --silent" -fi - -_ACEOF -cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 -if \$ac_cs_recheck; then - set X $SHELL '$0' $ac_configure_args \$ac_configure_extra_args --no-create --no-recursion - shift - \$as_echo "running CONFIG_SHELL=$SHELL \$*" >&6 - CONFIG_SHELL='$SHELL' - export CONFIG_SHELL - exec "\$@" -fi - -_ACEOF -cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 -exec 5>>config.log -{ - echo - sed 'h;s/./-/g;s/^.../## /;s/...$/ ##/;p;x;p;x' <<_ASBOX -## Running $as_me. ## -_ASBOX - $as_echo "$ac_log" -} >&5 - -_ACEOF -cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 -# -# INIT-COMMANDS -# -AMDEP_TRUE="$AMDEP_TRUE" ac_aux_dir="$ac_aux_dir" -# Capture the value of obsolete ALL_LINGUAS because we need it to compute - # POFILES, UPDATEPOFILES, DUMMYPOFILES, GMOFILES, CATALOGS. But hide it - # from automake < 1.5. - eval 'OBSOLETE_ALL_LINGUAS''="$ALL_LINGUAS"' - # Capture the value of LINGUAS because we need it to compute CATALOGS. - LINGUAS="${LINGUAS-%UNSET%}" - - -_ACEOF - -cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 - -# Handling of arguments. -for ac_config_target in $ac_config_targets -do - case $ac_config_target in - "config-util.h") CONFIG_HEADERS="$CONFIG_HEADERS config-util.h" ;; - "depfiles") CONFIG_COMMANDS="$CONFIG_COMMANDS depfiles" ;; - "po-directories") CONFIG_COMMANDS="$CONFIG_COMMANDS po-directories" ;; - "include/grub/cpu") CONFIG_LINKS="$CONFIG_LINKS include/grub/cpu:include/grub/$cpudir" ;; - "include/grub/machine") CONFIG_LINKS="$CONFIG_LINKS include/grub/machine:include/grub/$cpudir/$platform" ;; - "Makefile") CONFIG_FILES="$CONFIG_FILES Makefile" ;; - "grub-core/Makefile") CONFIG_FILES="$CONFIG_FILES grub-core/Makefile" ;; - "grub-core/lib/gnulib/Makefile") CONFIG_FILES="$CONFIG_FILES grub-core/lib/gnulib/Makefile" ;; - "po/Makefile.in") CONFIG_FILES="$CONFIG_FILES po/Makefile.in" ;; - "docs/Makefile") CONFIG_FILES="$CONFIG_FILES docs/Makefile" ;; - "util/bash-completion.d/Makefile") CONFIG_FILES="$CONFIG_FILES util/bash-completion.d/Makefile" ;; - "stamp-h") CONFIG_FILES="$CONFIG_FILES stamp-h" ;; - "config.h") CONFIG_FILES="$CONFIG_FILES config.h" ;; - - *) as_fn_error $? "invalid argument: \`$ac_config_target'" "$LINENO" 5;; - esac -done - - -# If the user did not use the arguments to specify the items to instantiate, -# then the envvar interface is used. Set only those that are not. -# We use the long form for the default assignment because of an extremely -# bizarre bug on SunOS 4.1.3. -if $ac_need_defaults; then - test "${CONFIG_FILES+set}" = set || CONFIG_FILES=$config_files - test "${CONFIG_HEADERS+set}" = set || CONFIG_HEADERS=$config_headers - test "${CONFIG_LINKS+set}" = set || CONFIG_LINKS=$config_links - test "${CONFIG_COMMANDS+set}" = set || CONFIG_COMMANDS=$config_commands -fi - -# Have a temporary directory for convenience. Make it in the build tree -# simply because there is no reason against having it here, and in addition, -# creating and moving files from /tmp can sometimes cause problems. -# Hook for its removal unless debugging. -# Note that there is a small window in which the directory will not be cleaned: -# after its creation but before its name has been assigned to `$tmp'. -$debug || -{ - tmp= ac_tmp= - trap 'exit_status=$? - : "${ac_tmp:=$tmp}" - { test ! -d "$ac_tmp" || rm -fr "$ac_tmp"; } && exit $exit_status -' 0 - trap 'as_fn_exit 1' 1 2 13 15 -} -# Create a (secure) tmp directory for tmp files. - -{ - tmp=`(umask 077 && mktemp -d "./confXXXXXX") 2>/dev/null` && - test -d "$tmp" -} || -{ - tmp=./conf$$-$RANDOM - (umask 077 && mkdir "$tmp") -} || as_fn_error $? "cannot create a temporary directory in ." "$LINENO" 5 -ac_tmp=$tmp - -# Set up the scripts for CONFIG_FILES section. -# No need to generate them if there are no CONFIG_FILES. -# This happens for instance with `./config.status config.h'. -if test -n "$CONFIG_FILES"; then - - -ac_cr=`echo X | tr X '\015'` -# On cygwin, bash can eat \r inside `` if the user requested igncr. -# But we know of no other shell where ac_cr would be empty at this -# point, so we can use a bashism as a fallback. -if test "x$ac_cr" = x; then - eval ac_cr=\$\'\\r\' -fi -ac_cs_awk_cr=`$AWK 'BEGIN { print "a\rb" }' /dev/null` -if test "$ac_cs_awk_cr" = "a${ac_cr}b"; then - ac_cs_awk_cr='\\r' -else - ac_cs_awk_cr=$ac_cr -fi - -echo 'BEGIN {' >"$ac_tmp/subs1.awk" && -_ACEOF - - -{ - echo "cat >conf$$subs.awk <<_ACEOF" && - echo "$ac_subst_vars" | sed 's/.*/&!$&$ac_delim/' && - echo "_ACEOF" -} >conf$$subs.sh || - as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5 -ac_delim_num=`echo "$ac_subst_vars" | grep -c '^'` -ac_delim='%!_!# ' -for ac_last_try in false false false false false :; do - . ./conf$$subs.sh || - as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5 - - ac_delim_n=`sed -n "s/.*$ac_delim\$/X/p" conf$$subs.awk | grep -c X` - if test $ac_delim_n = $ac_delim_num; then - break - elif $ac_last_try; then - as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5 - else - ac_delim="$ac_delim!$ac_delim _$ac_delim!! " - fi -done -rm -f conf$$subs.sh - -cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 -cat >>"\$ac_tmp/subs1.awk" <<\\_ACAWK && -_ACEOF -sed -n ' -h -s/^/S["/; s/!.*/"]=/ -p -g -s/^[^!]*!// -:repl -t repl -s/'"$ac_delim"'$// -t delim -:nl -h -s/\(.\{148\}\)..*/\1/ -t more1 -s/["\\]/\\&/g; s/^/"/; s/$/\\n"\\/ -p -n -b repl -:more1 -s/["\\]/\\&/g; s/^/"/; s/$/"\\/ -p -g -s/.\{148\}// -t nl -:delim -h -s/\(.\{148\}\)..*/\1/ -t more2 -s/["\\]/\\&/g; s/^/"/; s/$/"/ -p -b -:more2 -s/["\\]/\\&/g; s/^/"/; s/$/"\\/ -p -g -s/.\{148\}// -t delim -' >$CONFIG_STATUS || ac_write_fail=1 -rm -f conf$$subs.awk -cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 -_ACAWK -cat >>"\$ac_tmp/subs1.awk" <<_ACAWK && - for (key in S) S_is_set[key] = 1 - FS = "" - -} -{ - line = $ 0 - nfields = split(line, field, "@") - substed = 0 - len = length(field[1]) - for (i = 2; i < nfields; i++) { - key = field[i] - keylen = length(key) - if (S_is_set[key]) { - value = S[key] - line = substr(line, 1, len) "" value "" substr(line, len + keylen + 3) - len += length(value) + length(field[++i]) - substed = 1 - } else - len += 1 + keylen - } - - print line -} - -_ACAWK -_ACEOF -cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 -if sed "s/$ac_cr//" < /dev/null > /dev/null 2>&1; then - sed "s/$ac_cr\$//; s/$ac_cr/$ac_cs_awk_cr/g" -else - cat -fi < "$ac_tmp/subs1.awk" > "$ac_tmp/subs.awk" \ - || as_fn_error $? "could not setup config files machinery" "$LINENO" 5 -_ACEOF - -# VPATH may cause trouble with some makes, so we remove sole $(srcdir), -# ${srcdir} and @srcdir@ entries from VPATH if srcdir is ".", strip leading and -# trailing colons and then remove the whole line if VPATH becomes empty -# (actually we leave an empty line to preserve line numbers). -if test "x$srcdir" = x.; then - ac_vpsub='/^[ ]*VPATH[ ]*=[ ]*/{ -h -s/// -s/^/:/ -s/[ ]*$/:/ -s/:\$(srcdir):/:/g -s/:\${srcdir}:/:/g -s/:@srcdir@:/:/g -s/^:*// -s/:*$// -x -s/\(=[ ]*\).*/\1/ -G -s/\n// -s/^[^=]*=[ ]*$// -}' -fi - -cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 -fi # test -n "$CONFIG_FILES" - -# Set up the scripts for CONFIG_HEADERS section. -# No need to generate them if there are no CONFIG_HEADERS. -# This happens for instance with `./config.status Makefile'. -if test -n "$CONFIG_HEADERS"; then -cat >"$ac_tmp/defines.awk" <<\_ACAWK || -BEGIN { -_ACEOF - -# Transform confdefs.h into an awk script `defines.awk', embedded as -# here-document in config.status, that substitutes the proper values into -# config.h.in to produce config.h. - -# Create a delimiter string that does not exist in confdefs.h, to ease -# handling of long lines. -ac_delim='%!_!# ' -for ac_last_try in false false :; do - ac_tt=`sed -n "/$ac_delim/p" confdefs.h` - if test -z "$ac_tt"; then - break - elif $ac_last_try; then - as_fn_error $? "could not make $CONFIG_HEADERS" "$LINENO" 5 - else - ac_delim="$ac_delim!$ac_delim _$ac_delim!! " - fi -done - -# For the awk script, D is an array of macro values keyed by name, -# likewise P contains macro parameters if any. Preserve backslash -# newline sequences. - -ac_word_re=[_$as_cr_Letters][_$as_cr_alnum]* -sed -n ' -s/.\{148\}/&'"$ac_delim"'/g -t rset -:rset -s/^[ ]*#[ ]*define[ ][ ]*/ / -t def -d -:def -s/\\$// -t bsnl -s/["\\]/\\&/g -s/^ \('"$ac_word_re"'\)\(([^()]*)\)[ ]*\(.*\)/P["\1"]="\2"\ -D["\1"]=" \3"/p -s/^ \('"$ac_word_re"'\)[ ]*\(.*\)/D["\1"]=" \2"/p -d -:bsnl -s/["\\]/\\&/g -s/^ \('"$ac_word_re"'\)\(([^()]*)\)[ ]*\(.*\)/P["\1"]="\2"\ -D["\1"]=" \3\\\\\\n"\\/p -t cont -s/^ \('"$ac_word_re"'\)[ ]*\(.*\)/D["\1"]=" \2\\\\\\n"\\/p -t cont -d -:cont -n -s/.\{148\}/&'"$ac_delim"'/g -t clear -:clear -s/\\$// -t bsnlc -s/["\\]/\\&/g; s/^/"/; s/$/"/p -d -:bsnlc -s/["\\]/\\&/g; s/^/"/; s/$/\\\\\\n"\\/p -b cont -' >$CONFIG_STATUS || ac_write_fail=1 - -cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 - for (key in D) D_is_set[key] = 1 - FS = "" -} -/^[\t ]*#[\t ]*(define|undef)[\t ]+$ac_word_re([\t (]|\$)/ { - line = \$ 0 - split(line, arg, " ") - if (arg[1] == "#") { - defundef = arg[2] - mac1 = arg[3] - } else { - defundef = substr(arg[1], 2) - mac1 = arg[2] - } - split(mac1, mac2, "(") #) - macro = mac2[1] - prefix = substr(line, 1, index(line, defundef) - 1) - if (D_is_set[macro]) { - # Preserve the white space surrounding the "#". - print prefix "define", macro P[macro] D[macro] - next - } else { - # Replace #undef with comments. This is necessary, for example, - # in the case of _POSIX_SOURCE, which is predefined and required - # on some systems where configure will not decide to define it. - if (defundef == "undef") { - print "/*", prefix defundef, macro, "*/" - next - } - } -} -{ print } -_ACAWK -_ACEOF -cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 - as_fn_error $? "could not setup config headers machinery" "$LINENO" 5 -fi # test -n "$CONFIG_HEADERS" - - -eval set X " :F $CONFIG_FILES :H $CONFIG_HEADERS :L $CONFIG_LINKS :C $CONFIG_COMMANDS" -shift -for ac_tag -do - case $ac_tag in - :[FHLC]) ac_mode=$ac_tag; continue;; - esac - case $ac_mode$ac_tag in - :[FHL]*:*);; - :L* | :C*:*) as_fn_error $? "invalid tag \`$ac_tag'" "$LINENO" 5;; - :[FH]-) ac_tag=-:-;; - :[FH]*) ac_tag=$ac_tag:$ac_tag.in;; - esac - ac_save_IFS=$IFS - IFS=: - set x $ac_tag - IFS=$ac_save_IFS - shift - ac_file=$1 - shift - - case $ac_mode in - :L) ac_source=$1;; - :[FH]) - ac_file_inputs= - for ac_f - do - case $ac_f in - -) ac_f="$ac_tmp/stdin";; - *) # Look for the file first in the build tree, then in the source tree - # (if the path is not absolute). The absolute path cannot be DOS-style, - # because $ac_f cannot contain `:'. - test -f "$ac_f" || - case $ac_f in - [\\/$]*) false;; - *) test -f "$srcdir/$ac_f" && ac_f="$srcdir/$ac_f";; - esac || - as_fn_error 1 "cannot find input file: \`$ac_f'" "$LINENO" 5;; - esac - case $ac_f in *\'*) ac_f=`$as_echo "$ac_f" | sed "s/'/'\\\\\\\\''/g"`;; esac - as_fn_append ac_file_inputs " '$ac_f'" - done - - # Let's still pretend it is `configure' which instantiates (i.e., don't - # use $as_me), people would be surprised to read: - # /* config.h. Generated by config.status. */ - configure_input='Generated from '` - $as_echo "$*" | sed 's|^[^:]*/||;s|:[^:]*/|, |g' - `' by configure.' - if test x"$ac_file" != x-; then - configure_input="$ac_file. $configure_input" - { $as_echo "$as_me:${as_lineno-$LINENO}: creating $ac_file" >&5 -$as_echo "$as_me: creating $ac_file" >&6;} - fi - # Neutralize special characters interpreted by sed in replacement strings. - case $configure_input in #( - *\&* | *\|* | *\\* ) - ac_sed_conf_input=`$as_echo "$configure_input" | - sed 's/[\\\\&|]/\\\\&/g'`;; #( - *) ac_sed_conf_input=$configure_input;; - esac - - case $ac_tag in - *:-:* | *:-) cat >"$ac_tmp/stdin" \ - || as_fn_error $? "could not create $ac_file" "$LINENO" 5 ;; - esac - ;; - esac - - ac_dir=`$as_dirname -- "$ac_file" || -$as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$ac_file" : 'X\(//\)[^/]' \| \ - X"$ac_file" : 'X\(//\)$' \| \ - X"$ac_file" : 'X\(/\)' \| . 2>/dev/null || -$as_echo X"$ac_file" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ - s//\1/ - q - } - /^X\(\/\/\)[^/].*/{ - s//\1/ - q - } - /^X\(\/\/\)$/{ - s//\1/ - q - } - /^X\(\/\).*/{ - s//\1/ - q - } - s/.*/./; q'` - as_dir="$ac_dir"; as_fn_mkdir_p - ac_builddir=. - -case "$ac_dir" in -.) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;; -*) - ac_dir_suffix=/`$as_echo "$ac_dir" | sed 's|^\.[\\/]||'` - # A ".." for each directory in $ac_dir_suffix. - ac_top_builddir_sub=`$as_echo "$ac_dir_suffix" | sed 's|/[^\\/]*|/..|g;s|/||'` - case $ac_top_builddir_sub in - "") ac_top_builddir_sub=. ac_top_build_prefix= ;; - *) ac_top_build_prefix=$ac_top_builddir_sub/ ;; - esac ;; -esac -ac_abs_top_builddir=$ac_pwd -ac_abs_builddir=$ac_pwd$ac_dir_suffix -# for backward compatibility: -ac_top_builddir=$ac_top_build_prefix - -case $srcdir in - .) # We are building in place. - ac_srcdir=. - ac_top_srcdir=$ac_top_builddir_sub - ac_abs_top_srcdir=$ac_pwd ;; - [\\/]* | ?:[\\/]* ) # Absolute name. - ac_srcdir=$srcdir$ac_dir_suffix; - ac_top_srcdir=$srcdir - ac_abs_top_srcdir=$srcdir ;; - *) # Relative name. - ac_srcdir=$ac_top_build_prefix$srcdir$ac_dir_suffix - ac_top_srcdir=$ac_top_build_prefix$srcdir - ac_abs_top_srcdir=$ac_pwd/$srcdir ;; -esac -ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix - - - case $ac_mode in - :F) - # - # CONFIG_FILE - # - - case $INSTALL in - [\\/$]* | ?:[\\/]* ) ac_INSTALL=$INSTALL ;; - *) ac_INSTALL=$ac_top_build_prefix$INSTALL ;; - esac - ac_MKDIR_P=$MKDIR_P - case $MKDIR_P in - [\\/$]* | ?:[\\/]* ) ;; - */*) ac_MKDIR_P=$ac_top_build_prefix$MKDIR_P ;; - esac -_ACEOF - -cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 -# If the template does not know about datarootdir, expand it. -# FIXME: This hack should be removed a few years after 2.60. -ac_datarootdir_hack=; ac_datarootdir_seen= -ac_sed_dataroot=' -/datarootdir/ { - p - q -} -/@datadir@/p -/@docdir@/p -/@infodir@/p -/@localedir@/p -/@mandir@/p' -case `eval "sed -n \"\$ac_sed_dataroot\" $ac_file_inputs"` in -*datarootdir*) ac_datarootdir_seen=yes;; -*@datadir@*|*@docdir@*|*@infodir@*|*@localedir@*|*@mandir@*) - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&5 -$as_echo "$as_me: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&2;} -_ACEOF -cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 - ac_datarootdir_hack=' - s&@datadir@&$datadir&g - s&@docdir@&$docdir&g - s&@infodir@&$infodir&g - s&@localedir@&$localedir&g - s&@mandir@&$mandir&g - s&\\\${datarootdir}&$datarootdir&g' ;; -esac -_ACEOF - -# Neutralize VPATH when `$srcdir' = `.'. -# Shell code in configure.ac might set extrasub. -# FIXME: do we really want to maintain this feature? -cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 -ac_sed_extra="$ac_vpsub -$extrasub -_ACEOF -cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 -:t -/@[a-zA-Z_][a-zA-Z_0-9]*@/!b -s|@configure_input@|$ac_sed_conf_input|;t t -s&@top_builddir@&$ac_top_builddir_sub&;t t -s&@top_build_prefix@&$ac_top_build_prefix&;t t -s&@srcdir@&$ac_srcdir&;t t -s&@abs_srcdir@&$ac_abs_srcdir&;t t -s&@top_srcdir@&$ac_top_srcdir&;t t -s&@abs_top_srcdir@&$ac_abs_top_srcdir&;t t -s&@builddir@&$ac_builddir&;t t -s&@abs_builddir@&$ac_abs_builddir&;t t -s&@abs_top_builddir@&$ac_abs_top_builddir&;t t -s&@INSTALL@&$ac_INSTALL&;t t -s&@MKDIR_P@&$ac_MKDIR_P&;t t -$ac_datarootdir_hack -" -eval sed \"\$ac_sed_extra\" "$ac_file_inputs" | $AWK -f "$ac_tmp/subs.awk" \ - >$ac_tmp/out || as_fn_error $? "could not create $ac_file" "$LINENO" 5 - -test -z "$ac_datarootdir_hack$ac_datarootdir_seen" && - { ac_out=`sed -n '/\${datarootdir}/p' "$ac_tmp/out"`; test -n "$ac_out"; } && - { ac_out=`sed -n '/^[ ]*datarootdir[ ]*:*=/p' \ - "$ac_tmp/out"`; test -z "$ac_out"; } && - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file contains a reference to the variable \`datarootdir' -which seems to be undefined. Please make sure it is defined" >&5 -$as_echo "$as_me: WARNING: $ac_file contains a reference to the variable \`datarootdir' -which seems to be undefined. Please make sure it is defined" >&2;} - - rm -f "$ac_tmp/stdin" - case $ac_file in - -) cat "$ac_tmp/out" && rm -f "$ac_tmp/out";; - *) rm -f "$ac_file" && mv "$ac_tmp/out" "$ac_file";; - esac \ - || as_fn_error $? "could not create $ac_file" "$LINENO" 5 - ;; - :H) - # - # CONFIG_HEADER - # - if test x"$ac_file" != x-; then - { - $as_echo "/* $configure_input */" \ - && eval '$AWK -f "$ac_tmp/defines.awk"' "$ac_file_inputs" - } >"$ac_tmp/config.h" \ - || as_fn_error $? "could not create $ac_file" "$LINENO" 5 - if diff "$ac_file" "$ac_tmp/config.h" >/dev/null 2>&1; then - { $as_echo "$as_me:${as_lineno-$LINENO}: $ac_file is unchanged" >&5 -$as_echo "$as_me: $ac_file is unchanged" >&6;} - else - rm -f "$ac_file" - mv "$ac_tmp/config.h" "$ac_file" \ - || as_fn_error $? "could not create $ac_file" "$LINENO" 5 - fi - else - $as_echo "/* $configure_input */" \ - && eval '$AWK -f "$ac_tmp/defines.awk"' "$ac_file_inputs" \ - || as_fn_error $? "could not create -" "$LINENO" 5 - fi -# Compute "$ac_file"'s index in $config_headers. -_am_arg="$ac_file" -_am_stamp_count=1 -for _am_header in $config_headers :; do - case $_am_header in - $_am_arg | $_am_arg:* ) - break ;; - * ) - _am_stamp_count=`expr $_am_stamp_count + 1` ;; - esac -done -echo "timestamp for $_am_arg" >`$as_dirname -- "$_am_arg" || -$as_expr X"$_am_arg" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$_am_arg" : 'X\(//\)[^/]' \| \ - X"$_am_arg" : 'X\(//\)$' \| \ - X"$_am_arg" : 'X\(/\)' \| . 2>/dev/null || -$as_echo X"$_am_arg" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ - s//\1/ - q - } - /^X\(\/\/\)[^/].*/{ - s//\1/ - q - } - /^X\(\/\/\)$/{ - s//\1/ - q - } - /^X\(\/\).*/{ - s//\1/ - q - } - s/.*/./; q'`/stamp-h$_am_stamp_count - ;; - :L) - # - # CONFIG_LINK - # - - if test "$ac_source" = "$ac_file" && test "$srcdir" = '.'; then - : - else - # Prefer the file from the source tree if names are identical. - if test "$ac_source" = "$ac_file" || test ! -r "$ac_source"; then - ac_source=$srcdir/$ac_source - fi - - { $as_echo "$as_me:${as_lineno-$LINENO}: linking $ac_source to $ac_file" >&5 -$as_echo "$as_me: linking $ac_source to $ac_file" >&6;} - - if test ! -r "$ac_source"; then - as_fn_error $? "$ac_source: file not found" "$LINENO" 5 - fi - rm -f "$ac_file" - - # Try a relative symlink, then a hard link, then a copy. - case $ac_source in - [\\/$]* | ?:[\\/]* ) ac_rel_source=$ac_source ;; - *) ac_rel_source=$ac_top_build_prefix$ac_source ;; - esac - ln -s "$ac_rel_source" "$ac_file" 2>/dev/null || - ln "$ac_source" "$ac_file" 2>/dev/null || - cp -p "$ac_source" "$ac_file" || - as_fn_error $? "cannot link or copy $ac_source to $ac_file" "$LINENO" 5 - fi - ;; - :C) { $as_echo "$as_me:${as_lineno-$LINENO}: executing $ac_file commands" >&5 -$as_echo "$as_me: executing $ac_file commands" >&6;} - ;; - esac - - - case $ac_file$ac_mode in - "depfiles":C) test x"$AMDEP_TRUE" != x"" || { - # Older Autoconf quotes --file arguments for eval, but not when files - # are listed without --file. Let's play safe and only enable the eval - # if we detect the quoting. - case $CONFIG_FILES in - *\'*) eval set x "$CONFIG_FILES" ;; - *) set x $CONFIG_FILES ;; - esac - shift - for mf - do - # Strip MF so we end up with the name of the file. - mf=`echo "$mf" | sed -e 's/:.*$//'` - # Check whether this is an Automake generated Makefile or not. - # We used to match only the files named 'Makefile.in', but - # some people rename them; so instead we look at the file content. - # Grep'ing the first line is not enough: some people post-process - # each Makefile.in and add a new line on top of each file to say so. - # Grep'ing the whole file is not good either: AIX grep has a line - # limit of 2048, but all sed's we know have understand at least 4000. - if sed -n 's,^#.*generated by automake.*,X,p' "$mf" | grep X >/dev/null 2>&1; then - dirpart=`$as_dirname -- "$mf" || -$as_expr X"$mf" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$mf" : 'X\(//\)[^/]' \| \ - X"$mf" : 'X\(//\)$' \| \ - X"$mf" : 'X\(/\)' \| . 2>/dev/null || -$as_echo X"$mf" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ - s//\1/ - q - } - /^X\(\/\/\)[^/].*/{ - s//\1/ - q - } - /^X\(\/\/\)$/{ - s//\1/ - q - } - /^X\(\/\).*/{ - s//\1/ - q - } - s/.*/./; q'` - else - continue - fi - # Extract the definition of DEPDIR, am__include, and am__quote - # from the Makefile without running 'make'. - DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"` - test -z "$DEPDIR" && continue - am__include=`sed -n 's/^am__include = //p' < "$mf"` - test -z "$am__include" && continue - am__quote=`sed -n 's/^am__quote = //p' < "$mf"` - # Find all dependency output files, they are included files with - # $(DEPDIR) in their names. We invoke sed twice because it is the - # simplest approach to changing $(DEPDIR) to its actual value in the - # expansion. - for file in `sed -n " - s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \ - sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g'`; do - # Make sure the directory exists. - test -f "$dirpart/$file" && continue - fdir=`$as_dirname -- "$file" || -$as_expr X"$file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$file" : 'X\(//\)[^/]' \| \ - X"$file" : 'X\(//\)$' \| \ - X"$file" : 'X\(/\)' \| . 2>/dev/null || -$as_echo X"$file" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ - s//\1/ - q - } - /^X\(\/\/\)[^/].*/{ - s//\1/ - q - } - /^X\(\/\/\)$/{ - s//\1/ - q - } - /^X\(\/\).*/{ - s//\1/ - q - } - s/.*/./; q'` - as_dir=$dirpart/$fdir; as_fn_mkdir_p - # echo "creating $dirpart/$file" - echo '# dummy' > "$dirpart/$file" - done - done -} - ;; - "po-directories":C) - for ac_file in $CONFIG_FILES; do - # Support "outfile[:infile[:infile...]]" - case "$ac_file" in - *:*) ac_file=`echo "$ac_file"|sed 's%:.*%%'` ;; - esac - # PO directories have a Makefile.in generated from Makefile.in.in. - case "$ac_file" in */Makefile.in) - # Adjust a relative srcdir. - ac_dir=`echo "$ac_file"|sed 's%/[^/][^/]*$%%'` - ac_dir_suffix=/`echo "$ac_dir"|sed 's%^\./%%'` - ac_dots=`echo "$ac_dir_suffix"|sed 's%/[^/]*%../%g'` - # In autoconf-2.13 it is called $ac_given_srcdir. - # In autoconf-2.50 it is called $srcdir. - test -n "$ac_given_srcdir" || ac_given_srcdir="$srcdir" - case "$ac_given_srcdir" in - .) top_srcdir=`echo $ac_dots|sed 's%/$%%'` ;; - /*) top_srcdir="$ac_given_srcdir" ;; - *) top_srcdir="$ac_dots$ac_given_srcdir" ;; - esac - # Treat a directory as a PO directory if and only if it has a - # POTFILES.in file. This allows packages to have multiple PO - # directories under different names or in different locations. - if test -f "$ac_given_srcdir/$ac_dir/POTFILES.in"; then - rm -f "$ac_dir/POTFILES" - test -n "$as_me" && echo "$as_me: creating $ac_dir/POTFILES" || echo "creating $ac_dir/POTFILES" - gt_tab=`printf '\t'` - cat "$ac_given_srcdir/$ac_dir/POTFILES.in" | sed -e "/^#/d" -e "/^[ ${gt_tab}]*\$/d" -e "s,.*, $top_srcdir/& \\\\," | sed -e "\$s/\(.*\) \\\\/\1/" > "$ac_dir/POTFILES" - POMAKEFILEDEPS="POTFILES.in" - # ALL_LINGUAS, POFILES, UPDATEPOFILES, DUMMYPOFILES, GMOFILES depend - # on $ac_dir but don't depend on user-specified configuration - # parameters. - if test -f "$ac_given_srcdir/$ac_dir/LINGUAS"; then - # The LINGUAS file contains the set of available languages. - if test -n "$OBSOLETE_ALL_LINGUAS"; then - test -n "$as_me" && echo "$as_me: setting ALL_LINGUAS in configure.in is obsolete" || echo "setting ALL_LINGUAS in configure.in is obsolete" - fi - ALL_LINGUAS_=`sed -e "/^#/d" -e "s/#.*//" "$ac_given_srcdir/$ac_dir/LINGUAS"` - # Hide the ALL_LINGUAS assignment from automake < 1.5. - eval 'ALL_LINGUAS''=$ALL_LINGUAS_' - POMAKEFILEDEPS="$POMAKEFILEDEPS LINGUAS" - else - # The set of available languages was given in configure.in. - # Hide the ALL_LINGUAS assignment from automake < 1.5. - eval 'ALL_LINGUAS''=$OBSOLETE_ALL_LINGUAS' - fi - # Compute POFILES - # as $(foreach lang, $(ALL_LINGUAS), $(srcdir)/$(lang).po) - # Compute UPDATEPOFILES - # as $(foreach lang, $(ALL_LINGUAS), $(lang).po-update) - # Compute DUMMYPOFILES - # as $(foreach lang, $(ALL_LINGUAS), $(lang).nop) - # Compute GMOFILES - # as $(foreach lang, $(ALL_LINGUAS), $(srcdir)/$(lang).gmo) - case "$ac_given_srcdir" in - .) srcdirpre= ;; - *) srcdirpre='$(srcdir)/' ;; - esac - POFILES= - UPDATEPOFILES= - DUMMYPOFILES= - GMOFILES= - for lang in $ALL_LINGUAS; do - POFILES="$POFILES $srcdirpre$lang.po" - UPDATEPOFILES="$UPDATEPOFILES $lang.po-update" - DUMMYPOFILES="$DUMMYPOFILES $lang.nop" - GMOFILES="$GMOFILES $srcdirpre$lang.gmo" - done - # CATALOGS depends on both $ac_dir and the user's LINGUAS - # environment variable. - INST_LINGUAS= - if test -n "$ALL_LINGUAS"; then - for presentlang in $ALL_LINGUAS; do - useit=no - if test "%UNSET%" != "$LINGUAS"; then - desiredlanguages="$LINGUAS" - else - desiredlanguages="$ALL_LINGUAS" - fi - for desiredlang in $desiredlanguages; do - # Use the presentlang catalog if desiredlang is - # a. equal to presentlang, or - # b. a variant of presentlang (because in this case, - # presentlang can be used as a fallback for messages - # which are not translated in the desiredlang catalog). - case "$desiredlang" in - "$presentlang"*) useit=yes;; - esac - done - if test $useit = yes; then - INST_LINGUAS="$INST_LINGUAS $presentlang" - fi - done - fi - CATALOGS= - if test -n "$INST_LINGUAS"; then - for lang in $INST_LINGUAS; do - CATALOGS="$CATALOGS $lang.gmo" - done - fi - test -n "$as_me" && echo "$as_me: creating $ac_dir/Makefile" || echo "creating $ac_dir/Makefile" - sed -e "/^POTFILES =/r $ac_dir/POTFILES" -e "/^# Makevars/r $ac_given_srcdir/$ac_dir/Makevars" -e "s|@POFILES@|$POFILES|g" -e "s|@UPDATEPOFILES@|$UPDATEPOFILES|g" -e "s|@DUMMYPOFILES@|$DUMMYPOFILES|g" -e "s|@GMOFILES@|$GMOFILES|g" -e "s|@CATALOGS@|$CATALOGS|g" -e "s|@POMAKEFILEDEPS@|$POMAKEFILEDEPS|g" "$ac_dir/Makefile.in" > "$ac_dir/Makefile" - for f in "$ac_given_srcdir/$ac_dir"/Rules-*; do - if test -f "$f"; then - case "$f" in - *.orig | *.bak | *~) ;; - *) cat "$f" >> "$ac_dir/Makefile" ;; - esac - fi - done - fi - ;; - esac - done ;; - "stamp-h":F) echo timestamp > stamp-h ;; - - esac -done # for ac_tag - - -as_fn_exit 0 -_ACEOF -ac_clean_files=$ac_clean_files_save - -test $ac_write_fail = 0 || - as_fn_error $? "write failure creating $CONFIG_STATUS" "$LINENO" 5 - - -# configure is writing to config.log, and then calls config.status. -# config.status does its own redirection, appending to config.log. -# Unfortunately, on DOS this fails, as config.log is still kept open -# by configure, so config.status won't be able to write to it; its -# output is simply discarded. So we exec the FD to /dev/null, -# effectively closing config.log, so it can be properly (re)opened and -# appended to by config.status. When coming back to configure, we -# need to make the FD available again. -if test "$no_create" != yes; then - ac_cs_success=: - ac_config_status_args= - test "$silent" = yes && - ac_config_status_args="$ac_config_status_args --quiet" - exec 5>/dev/null - $SHELL $CONFIG_STATUS $ac_config_status_args || ac_cs_success=false - exec 5>>config.log - # Use ||, not &&, to avoid exiting from the if with $? = 1, which - # would make configure fail if this is the last instruction. - $ac_cs_success || as_fn_exit 1 -fi -if test -n "$ac_unrecognized_opts" && test "$enable_option_checking" != no; then - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: unrecognized options: $ac_unrecognized_opts" >&5 -$as_echo "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2;} -fi - - -echo "*******************************************************" -echo GRUB2 will be compiled with following components: -echo Platform: "$target_cpu"-"$platform" -if [ x"$platform" = xemu ]; then -if [ x"$grub_emu_sdl_excuse" = x ]; then -echo SDL support for grub-emu: Yes -else -echo SDL support for grub-emu: No "($grub_emu_sdl_excuse)" -fi -if [ x"$grub_emu_pci_excuse" = x ]; then -echo PCI support for grub-emu: Yes -else -echo PCI support for grub-emu: No "($grub_emu_pci_excuse)" -fi -fi -if test x"$device_mapper_excuse" = x ; then -echo With devmapper support: Yes -else -echo With devmapper support: No "($device_mapper_excuse)" -fi -if [ x"$enable_mm_debug" = xyes ]; then -echo With memory debugging: Yes -else -echo With memory debugging: No -fi -if [ x"$enable_cache_stats" = xyes ]; then -echo With disk cache statistics: Yes -else -echo With disk cache statistics: No -fi - -if [ x"$enable_boot_time" = xyes ]; then -echo With boot time statistics: Yes -else -echo With boot time statistics: No -fi - -if [ x"$efiemu_excuse" = x ]; then -echo efiemu runtime: Yes -else -echo efiemu runtime: No "($efiemu_excuse)" -fi -if [ x"$grub_mkfont_excuse" = x ]; then -echo grub-mkfont: Yes -else -echo grub-mkfont: No "($grub_mkfont_excuse)" -fi -if [ x"$grub_mount_excuse" = x ]; then -echo grub-mount: Yes -else -echo grub-mount: No "($grub_mount_excuse)" -fi -if [ x"$starfield_excuse" = x ]; then -echo starfield theme: Yes -echo With DejaVuSans font from $DJVU_FONT_SOURCE -else -echo starfield theme: No "($starfield_excuse)" -fi -if [ x"$libzfs_excuse" = x ]; then -echo With libzfs support: Yes -else -echo With libzfs support: No "($libzfs_excuse)" -fi -if [ x"$grub_build_mkfont_excuse" = x ]; then - echo Build-time grub-mkfont: Yes - if test "x$FONT_SOURCE" = x ; then - echo "Without unifont" - else - echo "With unifont from $FONT_SOURCE" - fi -else - echo Build-time grub-mkfont: No "($grub_build_mkfont_excuse)" - echo "Without unifont (no build-time grub-mkfont)" -fi -if test x"$liblzma_excuse" != x ; then -echo "Without liblzma (no support for XZ-compressed mips images) ($liblzma_excuse)" -else -echo "With liblzma from $LIBLZMA (support for XZ-compressed mips images)" -fi -echo "*******************************************************" - diff --git a/thirdparty/grub-2.04/configure.ac b/thirdparty/grub-2.04/configure.ac deleted file mode 100644 index 7656f2434..000000000 --- a/thirdparty/grub-2.04/configure.ac +++ /dev/null @@ -1,2107 +0,0 @@ -# -*- autoconf -*- - -# Process this file with autoconf to produce a configure script. - -# Copyright (C) 2002,2003,2004,2005,2006,2007,2008,2009,2010 Free Software Foundation, Inc. -# -# This configure.ac is free software; the author -# gives unlimited permission to copy and/or distribute it, -# with or without modifications, as long as this notice is preserved. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY, to the extent permitted by law; without -# even the implied warranty of MERCHANTABILITY or FITNESS FOR A -# PARTICULAR PURPOSE. - -dnl This configure script is complicated, because GRUB needs to deal -dnl with three potentially different types: -dnl -dnl build -- the environment for building GRUB -dnl host -- the environment for running utilities -dnl target -- the environment for running GRUB -dnl -dnl In addition, GRUB needs to deal with a platform specification -dnl which specifies the system running GRUB, such as firmware. -dnl This is necessary because the target type in autoconf does not -dnl describe such a system very well. -dnl -dnl The current strategy is to use variables with no prefix (such as -dnl CC, CFLAGS, etc.) for the host type, variables with prefix "BUILD_" -dnl (such as BUILD_CC, BUILD_CFLAGS, etc.) for the build type and variables -dnl with the prefix "TARGET_" (such as TARGET_CC, TARGET_CFLAGS, etc.) are -dnl used for the target type. See INSTALL for full list of variables. - -AC_INIT([GRUB],[2.04],[bug-grub@gnu.org]) - -AC_CONFIG_AUX_DIR([build-aux]) - -# We don't want -g -O2 by default in CFLAGS -: ${CFLAGS=""} - -# Checks for build, host and target systems. -AC_CANONICAL_BUILD -AC_CANONICAL_HOST -save_program_prefix="${program_prefix}" -AC_CANONICAL_TARGET -program_prefix="${save_program_prefix}" - -AM_INIT_AUTOMAKE([1.11]) -AC_PREREQ(2.63) -AC_CONFIG_SRCDIR([include/grub/dl.h]) -AC_CONFIG_HEADER([config-util.h]) - -# Explicitly check for pkg-config early on, since otherwise conditional -# calls are problematic. -PKG_PROG_PKG_CONFIG - -# Program name transformations -AC_ARG_PROGRAM -grub_TRANSFORM([grub-bios-setup]) -grub_TRANSFORM([grub-editenv]) -grub_TRANSFORM([grub-install]) -grub_TRANSFORM([grub-mkconfig]) -grub_TRANSFORM([grub-mkfont]) -grub_TRANSFORM([grub-mkimage]) -grub_TRANSFORM([grub-glue-efi]) -grub_TRANSFORM([grub-mklayout]) -grub_TRANSFORM([grub-mkpasswd-pbkdf2]) -grub_TRANSFORM([grub-mkrelpath]) -grub_TRANSFORM([grub-mkrescue]) -grub_TRANSFORM([grub-probe]) -grub_TRANSFORM([grub-reboot]) -grub_TRANSFORM([grub-script-check]) -grub_TRANSFORM([grub-set-default]) -grub_TRANSFORM([grub-sparc64-setup]) -grub_TRANSFORM([grub-render-label]) -grub_TRANSFORM([grub-file]) - -# Optimization flag. Allow user to override. -if test "x$TARGET_CFLAGS" = x; then - TARGET_CFLAGS="$TARGET_CFLAGS -Os" -fi - -# Default HOST_CPPFLAGS -HOST_CPPFLAGS="$HOST_CPPFLAGS -Wall -W" -HOST_CPPFLAGS="$HOST_CPPFLAGS -DGRUB_UTIL=1" - -TARGET_CPPFLAGS="$TARGET_CPPFLAGS -Wall -W" - -case "$target_cpu" in - i[[3456]]86) target_cpu=i386 ;; - amd64) target_cpu=x86_64 ;; - sparc) target_cpu=sparc64 ;; - mipsel|mips64el) - target_cpu=mipsel - machine_CPPFLAGS="$machine_CPPFLAGS -DGRUB_CPU_MIPSEL=1" - ;; - mips|mips64) - target_cpu=mips - machine_CPPFLAGS="$machine_CPPFLAGS -DGRUB_CPU_MIPS=1" - ;; - arm*) - target_cpu=arm - ;; - aarch64*) - target_cpu=arm64 - ;; - riscv32*) - target_cpu=riscv32 - ;; - riscv64*) - target_cpu=riscv64 - ;; -esac - -# Specify the platform (such as firmware). -AC_ARG_WITH([platform], - AS_HELP_STRING([--with-platform=PLATFORM], - [select the host platform [[guessed]]])) - -# Guess the platform if not specified. -if test "x$with_platform" = x; then - case "$target_cpu"-"$target_vendor" in - i386-apple) platform=efi ;; - i386-*) platform=pc ;; - x86_64-apple) platform=efi ;; - x86_64-*) platform=pc ;; - powerpc-*) platform=ieee1275 ;; - powerpc64-*) platform=ieee1275 ;; - powerpc64le-*) platform=ieee1275 ;; - sparc64-*) platform=ieee1275 ;; - mipsel-*) platform=loongson ;; - mips-*) platform=arc ;; - ia64-*) platform=efi ;; - arm-*) platform=uboot ;; - arm64-*) platform=efi ;; - riscv32-*) platform=efi ;; - riscv64-*) platform=efi ;; - *) - AC_MSG_WARN([unsupported CPU: "$target_cpu" - only building utilities]) - platform=none - ;; - esac -else - platform="$with_platform" -fi - -case "$target_cpu"-"$platform" in - x86_64-efi) ;; - x86_64-emu) ;; - x86_64-xen) ;; - x86_64-none) ;; - x86_64-*) target_cpu=i386 ;; - powerpc64-ieee1275) target_cpu=powerpc ;; - powerpc64le-ieee1275) target_cpu=powerpc ;; -esac - -# Check if the platform is supported, make final adjustments. -case "$target_cpu"-"$platform" in - i386-efi) ;; - x86_64-efi) ;; - i386-xen) ;; - i386-xen_pvh) ;; - x86_64-xen) ;; - i386-pc) ;; - i386-multiboot) ;; - i386-coreboot) ;; - i386-linuxbios) platform=coreboot ;; - i386-ieee1275) ;; - i386-qemu) ;; - powerpc-ieee1275) ;; - sparc64-ieee1275) ;; - ia64-efi) ;; - mips-qemu_mips) ;; - mips-qemu-mips) platform=qemu_mips;; - mips-arc) ;; - mipsel-arc) ;; - mipsel-qemu_mips) ;; - mipsel-qemu-mips) platform=qemu_mips;; - mipsel-yeeloong) platform=loongson ;; - mipsel-fuloong) platform=loongson ;; - mipsel-loongson) ;; - arm-uboot) ;; - arm-coreboot) ;; - arm-efi) ;; - arm64-efi) ;; - riscv32-efi) ;; - riscv64-efi) ;; - *-emu) ;; - *-none) ;; - *) AC_MSG_ERROR([platform "$platform" is not supported for target CPU "$target_cpu"]) ;; -esac - -if test x$platform != xemu ; then - case "$target_cpu" in - i386 | powerpc) target_m32=1 ;; - x86_64 | sparc64) target_m64=1 ;; - esac -fi - -if test x"$target_cpu-$platform" = xsparc64-emu ; then - target_m64=1 -fi - -case "$target_os" in - windows* | mingw32*) target_os=cygwin ;; -esac - -# This normalizes the names, and creates a new variable ("host_kernel") -# while at it, since the mapping is not always 1:1 (e.g. different OSes -# using the same kernel type). -case "$host_os" in - gnu*) host_kernel=hurd ;; - linux*) host_kernel=linux ;; - freebsd* | kfreebsd*-gnu) host_kernel=kfreebsd ;; - netbsd*) host_kernel=netbsd ;; - solaris*) host_kernel=illumos ;; - darwin*) host_kernel=xnu ;; - cygwin | windows* | mingw32*) host_kernel=windows ;; -esac - -case "$host_os" in - cygwin) have_exec=y ;; - windows* | mingw32*) have_exec=n ;; - aros*) have_exec=n ;; - *) have_exec=y;; -esac - -case "$platform" in - coreboot) machine_CPPFLAGS="$machine_CPPFLAGS -DGRUB_MACHINE_COREBOOT=1" ;; - multiboot) machine_CPPFLAGS="$machine_CPPFLAGS -DGRUB_MACHINE_MULTIBOOT=1" ;; - efi) machine_CPPFLAGS="$machine_CPPFLAGS -DGRUB_MACHINE_EFI=1" ;; - xen) machine_CPPFLAGS="$machine_CPPFLAGS -DGRUB_MACHINE_XEN=1" ;; - xen_pvh) machine_CPPFLAGS="$machine_CPPFLAGS -DGRUB_MACHINE_XEN_PVH=1" ;; - ieee1275) machine_CPPFLAGS="$machine_CPPFLAGS -DGRUB_MACHINE_IEEE1275=1" ;; - uboot) machine_CPPFLAGS="$machine_CPPFLAGS -DGRUB_MACHINE_UBOOT=1" ;; - qemu) machine_CPPFLAGS="$machine_CPPFLAGS -DGRUB_MACHINE_QEMU=1" ;; - pc) machine_CPPFLAGS="$machine_CPPFLAGS -DGRUB_MACHINE_PCBIOS=1" ;; - emu) machine_CPPFLAGS="$machine_CPPFLAGS -DGRUB_MACHINE_EMU=1" ;; - loongson) machine_CPPFLAGS="$machine_CPPFLAGS -DGRUB_MACHINE_MIPS_LOONGSON=1" ;; - qemu_mips) machine_CPPFLAGS="$machine_CPPFLAGS -DGRUB_MACHINE_MIPS_QEMU_MIPS=1" ;; - arc) machine_CPPFLAGS="$machine_CPPFLAGS -DGRUB_MACHINE_ARC=1" ;; -esac -if test x${target_cpu} = xmipsel ; then - machine_CPPFLAGS="$machine_CPPFLAGS -DGRUB_MACHINE=`echo mips_$platform | sed y,abcdefghijklmnopqrstuvwxyz,ABCDEFGHIJKLMNOPQRSTUVWXYZ,`" -else - machine_CPPFLAGS="$machine_CPPFLAGS -DGRUB_MACHINE=`echo ${target_cpu}_$platform | sed y,abcdefghijklmnopqrstuvwxyz,ABCDEFGHIJKLMNOPQRSTUVWXYZ,`" -fi - -case "${target_cpu}-$platform" in - mips-arc) - TARGET_LINK_ADDR=0x88200000 - TARGET_DECOMPRESSOR_LINK_ADDR=0x88100000 - ;; - mipsel-arc) - TARGET_LINK_ADDR=0x80700000 - TARGET_DECOMPRESSOR_LINK_ADDR=0x80600000 - ;; - mips*-qemu_mips | mips*-loongson) - TARGET_DECOMPRESSOR_LINK_ADDR=0x80100000 - ;; -esac - -AC_SUBST(TARGET_LINK_ADDR) -AC_SUBST(TARGET_DECOMPRESSOR_LINK_ADDR) - -TARGET_CPPFLAGS="$TARGET_CPPFLAGS $machine_CPPFLAGS" - -AC_SUBST(host_cpu) -AC_SUBST(host_os) -AC_SUBST(host_kernel) - -AC_SUBST(target_cpu) -AC_SUBST(platform) - -# Define default variables - -have_with_bootdir=n -AC_ARG_WITH([bootdir], - AS_HELP_STRING([--with-bootdir=DIR], - [set the name of /boot directory [[guessed]]]), - [have_with_bootdir=y], - [have_with_bootdir=n]) -if test x$have_with_bootdir = xy; then - bootdirname="$with_bootdir" -else - case "$host_os" in - netbsd* | openbsd*) - # Because /boot is used for the boot block in NetBSD and OpenBSD, - bootdirname='' ;; - *) bootdirname='boot' ;; - esac -fi - -AC_SUBST(bootdirname) -AC_DEFINE_UNQUOTED(GRUB_BOOT_DIR_NAME, "$bootdirname", - [Default boot directory name]) - -AC_ARG_WITH([grubdir], - AS_HELP_STRING([--with-grubdir=DIR], - [set the name of grub directory [[guessed]]]), - [grubdirname="$with_grubdir"], - [grubdirname="$PACKAGE"]) - -AC_SUBST(grubdirname) -AC_DEFINE_UNQUOTED(GRUB_DIR_NAME, "$grubdirname", - [Default grub directory name]) - -# -# Checks for build programs. -# - -# Although cmp is listed in the GNU Coding Standards as a command which -# can used directly, OpenBSD lacks cmp in the default installation. -AC_CHECK_PROGS([CMP], [cmp]) -if test "x$CMP" = x; then - AC_MSG_ERROR([cmp is not found]) -fi - -AC_CHECK_PROGS([YACC], [bison]) -if test "x$YACC" = x; then - AC_MSG_ERROR([bison is not found]) -fi - -AC_PROG_RANLIB -AC_PROG_INSTALL -AC_PROG_AWK -AC_PROG_LEX -AC_PROG_YACC -AC_PROG_MAKE_SET -AC_PROG_MKDIR_P -AC_PROG_LN_S - -if test "x$LEX" = "x:"; then - AC_MSG_ERROR([flex is not found]) -else - version=`$LEX --version | $AWK '{ split($2,x,"."); print x[[1]]*10000+x[[2]]*100+x[[3]]; }'` - if test -n "$version" -a "$version" -ge 20535; then - : - else - AC_MSG_ERROR([flex is too old. GRUB requires 2.5.35 or above]) - fi -fi - -# These are not a "must". -AC_PATH_PROGS(MAKEINFO, makeinfo true) - -# -# Checks for host programs. -# - -AC_PROG_CC -gl_EARLY -AC_PROG_CXX -AM_PROG_CC_C_O -AM_PROG_AS -AM_PATH_PYTHON([2.6]) - -# Must be GCC. -test "x$GCC" = xyes || AC_MSG_ERROR([GCC is required]) - -AC_CHECK_PROG(HAVE_CXX, $CXX, yes, no) - -AC_GNU_SOURCE -AM_GNU_GETTEXT([external]) -AM_GNU_GETTEXT_VERSION([0.18.3]) -AC_SYS_LARGEFILE - -# Identify characteristics of the host architecture. -unset ac_cv_c_bigendian - -if test x"$target_cpu-$platform" = xsparc64-emu ; then - CFLAGS="$CFLAGS -m64" - HOST_CFLAGS="$HOST_CFLAGS -m64" -fi - -CPPFLAGS="$CPPFLAGS -D_FILE_OFFSET_BITS=64" -HOST_CPPFLAGS="$HOST_CPPFLAGS -D_FILE_OFFSET_BITS=64" - -AC_C_BIGENDIAN -AC_CHECK_SIZEOF(void *) -AC_CHECK_SIZEOF(long) - -case "$host_os" in - cygwin | windows* | mingw32*) - HOST_CPPFLAGS="$HOST_CPPFLAGS -DUNICODE=1 -D_WIN32_WINNT=0x0500" - CPPFLAGS="$CPPFLAGS -DUNICODE=1 -D_WIN32_WINNT=0x0500" - AC_CHECK_SIZEOF(TCHAR,,[#include ]) - ;; -esac - -case "$host_os" in - cygwin | windows* | mingw32* | aros*) - ;; - *) - AC_CHECK_SIZEOF(off_t) - if test x"$ac_cv_sizeof_off_t" != x8 ; then - AC_CHECK_SIZEOF(off64_t) - test x"$ac_cv_sizeof_off64_t" = x8 || AC_MSG_ERROR([Large file support is required]) - fi;; -esac - -if test x$USE_NLS = xno; then - HOST_CFLAGS="$HOST_CFLAGS -fno-builtin-gettext" -fi - -if test "x$cross_compiling" = xyes; then - AC_MSG_WARN([cannot generate manual pages while cross compiling]) -else - AC_PATH_PROG(HELP2MAN, help2man) -fi - -# Check for functions and headers. -AC_CHECK_FUNCS(posix_memalign memalign getextmntent) -AC_CHECK_HEADERS(sys/param.h sys/mount.h sys/mnttab.h limits.h) - -# glibc 2.25 still includes sys/sysmacros.h in sys/types.h but emits deprecation -# warning which causes compilation failure later with -Werror. So use -Werror here -# as well to force proper sys/sysmacros.h detection. -SAVED_CFLAGS="$CFLAGS" -CFLAGS="$HOST_CFLAGS -Werror" -AC_HEADER_MAJOR -CFLAGS="$SAVED_CFLAGS" - -AC_CHECK_MEMBERS([struct statfs.f_fstypename],,,[$ac_includes_default -#include -#include ]) - -AC_CHECK_MEMBERS([struct statfs.f_mntfromname],,,[$ac_includes_default -#include -#include ]) - -# For opendisk() and getrawpartition() on NetBSD. -# Used in util/deviceiter.c and in util/hostdisk.c. -AC_CHECK_HEADER([util.h], [ - AC_CHECK_LIB([util], [opendisk], [ - LIBUTIL="-lutil" - AC_DEFINE(HAVE_OPENDISK, 1, [Define if opendisk() in -lutil can be used]) - ]) - AC_CHECK_LIB([util], [getrawpartition], [ - LIBUTIL="-lutil" - AC_DEFINE(HAVE_GETRAWPARTITION, 1, [Define if getrawpartition() in -lutil can be used]) - ]) -]) -AC_SUBST([LIBUTIL]) - -AC_CACHE_CHECK([whether -Wtrampolines work], [grub_cv_host_cc_wtrampolines], [ - SAVED_CFLAGS="$CFLAGS" - CFLAGS="$HOST_CFLAGS -Wtrampolines -Werror" - AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include -int va_arg_func (int fixed, va_list args);]], [[]])], - [grub_cv_host_cc_wtrampolines=yes], - [grub_cv_host_cc_wtrampolines=no]) - CFLAGS="$SAVED_CFLAGS" -]) - -if test x"$grub_host_cv_cc_wtrampolines" = xyes ; then - HOST_CFLAGS="$HOST_CFLAGS -Wtrampolines" -fi - -# -# Check for host and build compilers. -# -HOST_CC=$CC -AC_CHECK_PROGS(BUILD_CC, [gcc egcs cc]) -test -z "$BUILD_CC" && AC_MSG_ERROR([none of gcc, egcs and cc is found. set BUILD_CC manually.]) -BUILD_CPP="$BUILD_CC -E" - -case "$build_os" in - haiku*) BUILD_LIBM= ;; - *) BUILD_LIBM=-lm ;; -esac - -dnl FIXME proper test seems to require too deep dive into Autoconf internals. -dnl For now just list known platforms that we support. - -case "$build_os" in - cygwin*|mingw32*|mingw64*) BUILD_EXEEXT=.exe ;; - *) BUILD_EXEEXT= ;; -esac -AC_SUBST(BUILD_EXEEXT) - -# In some build environments like termux /bin/sh is not a valid -# shebang. Use $SHELL instead if it's executable and /bin/sh isn't -BUILD_SHEBANG=/bin/sh -for she in /bin/sh "$SHELL"; do - if test -x "$she" ; then - BUILD_SHEBANG="$she" - fi -done -AC_SUBST(BUILD_SHEBANG) - -# For gnulib. -gl_INIT - -WARN_FLAGS="-Wall -W -Wshadow -Wpointer-arith -Wundef -Wchar-subscripts -Wcomment -Wdeprecated-declarations -Wdisabled-optimization -Wdiv-by-zero -Wfloat-equal -Wformat-extra-args -Wformat-security -Wformat-y2k -Wimplicit -Wimplicit-function-declaration -Wimplicit-int -Wmain -Wmissing-braces -Wmissing-format-attribute -Wmultichar -Wparentheses -Wreturn-type -Wsequence-point -Wshadow -Wsign-compare -Wswitch -Wtrigraphs -Wunknown-pragmas -Wunused -Wunused-function -Wunused-label -Wunused-parameter -Wunused-value -Wunused-variable -Wwrite-strings -Wnested-externs -Wstrict-prototypes" -EXTRA_WARN_FLAGS="-Wextra -Wattributes -Wendif-labels -Winit-self -Wint-to-pointer-cast -Winvalid-pch -Wmissing-field-initializers -Wnonnull -Woverflow -Wvla -Wpointer-to-int-cast -Wstrict-aliasing -Wvariadic-macros -Wvolatile-register-var -Wpointer-sign -Wmissing-include-dirs -Wmissing-prototypes -Wmissing-declarations -Wformat=2" - -HOST_CFLAGS="$HOST_CFLAGS $WARN_FLAGS -Wcast-align" - -AC_CACHE_CHECK([which extra warnings work], [grub_cv_cc_w_extra_flags], [ - SAVED_CFLAGS="$CFLAGS" - grub_cv_cc_w_extra_flags= - for x in $EXTRA_WARN_FLAGS; do - CFLAGS="$HOST_CFLAGS $x -Werror" - AC_LINK_IFELSE([AC_LANG_PROGRAM([[]], [[]])], [flag=1], [flag=0]) - if test x$flag = x1 ; then - grub_cv_cc_w_extra_flags="$grub_cv_cc_w_extra_flags $x" - fi - done - CFLAGS="$SAVED_CFLAGS" -]) - -HOST_CFLAGS="$HOST_CFLAGS $grub_cv_cc_w_extra_flags" - -# -# Check for target programs. -# - -# Find tools for the target. -if test "x$target_alias" != x && test "x$host_alias" != "x$target_alias"; then - tmp_ac_tool_prefix="$ac_tool_prefix" - ac_tool_prefix=$target_alias- - - AC_CHECK_TOOLS(TARGET_CC, [gcc egcs cc], - [AC_MSG_ERROR([none of gcc, egcs and cc is found. set TARGET_CC manually.])]) - AC_CHECK_TOOL(TARGET_OBJCOPY, objcopy) - AC_CHECK_TOOL(TARGET_STRIP, strip) - AC_CHECK_TOOL(TARGET_NM, nm) - AC_CHECK_TOOL(TARGET_RANLIB, ranlib) - - ac_tool_prefix="$tmp_ac_tool_prefix" -else - if test "x$TARGET_CC" = x; then - TARGET_CC=$CC - fi - AC_CHECK_TOOL(TARGET_OBJCOPY, objcopy) - AC_CHECK_TOOL(TARGET_STRIP, strip) - AC_CHECK_TOOL(TARGET_NM, nm) - AC_CHECK_TOOL(TARGET_RANLIB, ranlib) -fi - -AC_SUBST(HOST_CC) -AC_SUBST(BUILD_CC) -AC_SUBST(BUILD_CFLAGS) -AC_SUBST(BUILD_CPPFLAGS) -AC_SUBST(BUILD_LDFLAGS) -AC_SUBST(TARGET_CC) -AC_SUBST(TARGET_NM) -AC_SUBST(TARGET_RANLIB) -AC_SUBST(TARGET_STRIP) -AC_SUBST(TARGET_OBJCOPY) - -# Test the C compiler for the target environment. -tmp_CC="$CC" -tmp_CFLAGS="$CFLAGS" -tmp_LDFLAGS="$LDFLAGS" -tmp_CPPFLAGS="$CPPFLAGS" -tmp_LIBS="$LIBS" -CC="$TARGET_CC" -CFLAGS="$TARGET_CFLAGS" -CPPFLAGS="$TARGET_CPPFLAGS" -LDFLAGS="$TARGET_LDFLAGS" -LIBS="" - -# debug flags. -TARGET_CFLAGS="$TARGET_CFLAGS $WARN_FLAGS -g -Wredundant-decls -Wmissing-prototypes -Wmissing-declarations" -TARGET_CCASFLAGS="$TARGET_CCASFLAGS -g" - -if test "x$target_cpu" != xi386 && test "x$target_cpu" != xx86_64; then -TARGET_CFLAGS="$TARGET_CFLAGS -Wcast-align" -fi - -TARGET_CC_VERSION="$(LC_ALL=C $TARGET_CC --version | head -n1)" - -AC_CACHE_CHECK([which extra warnings work], [grub_cv_target_cc_w_extra_flags], [ - LDFLAGS="$TARGET_LDFLAGS -nostdlib -static" - - grub_cv_target_cc_w_extra_flags= - for x in $EXTRA_WARN_FLAGS; do - CFLAGS="$TARGET_CFLAGS $x -Werror" - AC_LINK_IFELSE([AC_LANG_PROGRAM([[ -asm (".globl start; start:"); -void __main (void); -void __main (void) {} -int main (void); -]], [[]])], [flag=1], [flag=0]) - if test x$flag = x1 ; then - grub_cv_target_cc_w_extra_flags="$grub_cv_target_cc_w_extra_flags $x" - fi - done -]) - -TARGET_CFLAGS="$TARGET_CFLAGS $grub_cv_target_cc_w_extra_flags" - -AC_CACHE_CHECK([if compiling with clang], [grub_cv_cc_target_clang], -[ -CFLAGS="$TARGET_CFLAGS" -AC_COMPILE_IFELSE( -[AC_LANG_PROGRAM([], [[ -#ifdef __clang__ -#error "is clang" -#endif -]])], -[grub_cv_cc_target_clang=no], [grub_cv_cc_target_clang=yes])]) - -if test x$target_cpu = xpowerpc -o x$target_cpu = xmips; then - AC_CACHE_CHECK([for options to get big-endian compilation], grub_cv_target_cc_big_endian, [ - grub_cv_target_cc_big_endian=no - for cand in "-target $target_cpu -Wl,-EB" "-target $target_cpu" \ - "-target $target_cpu-linux-gnu -Wl,-EB" "-target $target_cpu-linux-gnu" \ - "-EB" "-mbig-endian"; do - if test x"$grub_cv_target_cc_big_endian" != xno ; then - break - fi - CFLAGS="$TARGET_CFLAGS $cand -Werror" - AC_LINK_IFELSE([AC_LANG_PROGRAM([[ -#if defined(__BYTE_ORDER__) && defined(__ORDER_BIG_ENDIAN__) && (__ORDER_BIG_ENDIAN__ != __BYTE_ORDER__) -#error still little endian -#endif -asm (".globl start; start:"); -asm (".globl _start; _start:"); -asm (".globl __start; __start:"); -void __main (void); -void __main (void) {} -int main (void); -]], [[]])], - [grub_cv_target_cc_big_endian="$cand"], []) - done - ]) - - if test x"$grub_cv_target_cc_big_endian" = xno ; then - AC_MSG_ERROR([could not force big-endian]) - fi - - skip_linkflags="$(echo "$grub_cv_target_cc_big_endian"|sed 's@-Wl,-EB@@')" - - TARGET_CFLAGS="$TARGET_CFLAGS $skip_linkflags" - TARGET_CPPFLAGS="$TARGET_CPPFLAGS $skip_linkflags" - TARGET_CCASFLAGS="$TARGET_CCASFLAGS $skip_linkflags" - TARGET_LDFLAGS="$TARGET_LDFLAGS $grub_cv_target_cc_big_endian" -elif test x$target_cpu = xmipsel; then - AC_CACHE_CHECK([for options to get little-endian compilation], grub_cv_target_cc_little_endian, [ - grub_cv_target_cc_little_endian=no - for cand in "-target $target_cpu -Wl,-EL" "-target $target_cpu" \ - "-target $target_cpu-linux-gnu -Wl,-EL" "-target $target_cpu-linux-gnu" \ - "-EL"; do - if test x"$grub_cv_target_cc_little_endian" != xno ; then - break - fi - CFLAGS="$TARGET_CFLAGS $cand -Werror" - AC_LINK_IFELSE([AC_LANG_PROGRAM([[ -#if defined(__BYTE_ORDER__) && defined(__ORDER_BIG_ENDIAN__) && (__ORDER_BIG_ENDIAN__ == __BYTE_ORDER__) -#error still big endian -#endif -asm (".globl start; start:"); -asm (".globl _start; _start:"); -asm (".globl __start; __start:"); -void __main (void); -void __main (void) {} -int main (void); -]], [[]])], - [grub_cv_target_cc_little_endian="$cand"], []) - done - ]) - - if test x"$grub_cv_target_cc_little_endian" = xno ; then - AC_MSG_ERROR([could not force little-endian]) - fi - - skip_linkflags="$(echo "$grub_cv_target_cc_little_endian"|sed 's@-Wl,-EL@@')" - - TARGET_CFLAGS="$TARGET_CFLAGS $skip_linkflags" - TARGET_CPPFLAGS="$TARGET_CPPFLAGS $skip_linkflags" - TARGET_CCASFLAGS="$TARGET_CCASFLAGS $skip_linkflags" - TARGET_LDFLAGS="$TARGET_LDFLAGS $grub_cv_target_cc_little_endian" -fi - -# GRUB code is N32-compliant but it's experimental and we would prefer to -# avoid having too much variety when it doesn't result in any real improvement. -# Moreover N64 isn't supported. -if test "x$target_cpu" = xmips || test "x$target_cpu" = xmipsel ; then - AC_CACHE_CHECK([for options to force MIPS o32 ABI], grub_cv_target_cc_mips_o32_abi, [ - grub_cv_target_cc_mips_o32_abi=no - for arg in "" "-mabi=32" "-target $target_cpu -mabi=32" ; do - if test x"$grub_cv_target_cc_mips_o32_abi" != xno ; then - break - fi - CFLAGS="$TARGET_CFLAGS $arg -Werror" - AC_LINK_IFELSE([AC_LANG_PROGRAM([[ -#if !defined(_ABIO32) || !defined(_MIPS_SIM) || (_MIPS_SIM != _ABIO32) -#error not o32 ABI -#endif -asm (".globl start; start:"); -asm (".globl _start; _start:"); -asm (".globl __start; __start:"); -void __main (void); -void __main (void) {} -int main (void); -]], [[]])], - [grub_cv_target_cc_mips_o32_abi="$arg"], []) - done - ]) - - if test x"$grub_cv_target_cc_mips_o32_abi" = xno ; then - AC_MSG_ERROR([could not force MIPS o32 ABI]) - fi - - TARGET_CFLAGS="$TARGET_CFLAGS $grub_cv_target_cc_mips_o32_abi" - TARGET_CCASFLAGS="$TARGET_CCASFLAGS $grub_cv_target_cc_mips_o32_abi" -fi - -AC_CACHE_CHECK([for options to compile assembly], [grub_cv_cc_target_asm_compile], [ -test_program= -case "x$target_cpu-$platform" in - xmips-* | xmipsel-*) - test_program=mips - ;; - xi386-pc) - test_program=i386-pc - ;; - xi386-* | xx86_64-*) - test_program=i386 - ;; - xpowerpc-* | xsparc64-* | xarm-*) - test_program=$target_cpu - ;; -esac -if test x"$test_program" = x ; then - grub_cv_cc_target_asm_compile= -else - found=no - for arg in "" "-no-integrated-as"; do - cmdline="$TARGET_CC -c -o /dev/null $TARGET_CCASFLAGS $arg $TARGET_CPPFLAGS $srcdir/asm-tests/$test_program.S" - echo "Running $cmdline" >&AS_MESSAGE_LOG_FD - if $cmdline >&AS_MESSAGE_LOG_FD 2>&AS_MESSAGE_LOG_FD; then - grub_cv_cc_target_asm_compile="$arg" - found=yes - break - fi - done - if test x"$found" = xno ; then - AC_MSG_ERROR([could not compile assembly]) - fi -fi -]) - -TARGET_CCASFLAGS="$TARGET_CCASFLAGS $grub_cv_cc_target_asm_compile" - -if test "x$target_cpu" = xi386 && test "x$platform" != xemu; then - TARGET_CFLAGS="$TARGET_CFLAGS -march=i386" -fi - -if test "x$target_m32" = x1; then - # Force 32-bit mode. - TARGET_CFLAGS="$TARGET_CFLAGS -m32" - TARGET_CCASFLAGS="$TARGET_CCASFLAGS -m32" - TARGET_CPPFLAGS="$TARGET_CPPFLAGS -m32" - TARGET_LDFLAGS="$TARGET_LDFLAGS -m32" - TARGET_MODULE_FORMAT="elf32" -fi - -if test "x$target_m64" = x1; then - # Force 64-bit mode. - TARGET_CFLAGS="$TARGET_CFLAGS -m64" - TARGET_CCASFLAGS="$TARGET_CCASFLAGS -m64" - TARGET_CPPFLAGS="$TARGET_CPPFLAGS -m64" - TARGET_LDFLAGS="$TARGET_LDFLAGS -m64" - TARGET_MODULE_FORMAT="elf64" -fi - -if test "x$grub_cv_cc_target_clang" = xno && test "x$target_cpu" = xi386 && test "x$platform" != xemu && test "x$platform" != xefi; then - TARGET_CFLAGS="$TARGET_CFLAGS -mrtd -mregparm=3" -fi - -# on mips redirect cache flushing function to non-existant one. -if test "x$target_cpu" = xmips || test "x$target_cpu" = xmipsel ; then - AC_CACHE_CHECK([whether -mflush-func=grub_red_herring works], [grub_cv_cc_mflush_func], [ - CFLAGS="$TARGET_CFLAGS -mflush-func=grub_red_herring -Werror" - AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[]])], - [grub_cv_cc_mflush_func=yes], - [grub_cv_cc_mflush_func=no]) - ]) - - if test "x$grub_cv_cc_mflush_func" = xyes; then - TARGET_CFLAGS="$TARGET_CFLAGS -mflush-func=grub_red_herring" - fi -fi - - -# Force no alignment to save space on i386. -if test "x$target_cpu" = xi386; then - AC_CACHE_CHECK([whether -falign-loops works], [grub_cv_cc_falign_loop], [ - CFLAGS="$TARGET_CFLAGS -falign-loops=1 -Werror" - AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[]])], - [grub_cv_cc_falign_loop=yes], - [grub_cv_cc_falign_loop=no]) - ]) - - AC_CACHE_CHECK([whether -malign-loops works], [grub_cv_cc_malign_loop], [ - CFLAGS="$TARGET_CFLAGS -malign-loops=1 -Werror" - AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[]])], - [grub_cv_cc_malign_loop=yes], - [grub_cv_cc_malign_loop=no]) - ]) - - if test "x$grub_cv_cc_falign_loop" = xyes; then - TARGET_CFLAGS="$TARGET_CFLAGS -falign-jumps=1 -falign-loops=1 -falign-functions=1" - elif test "x$grub_cv_cc_malign_loop" = xyes; then - TARGET_CFLAGS="$TARGET_CFLAGS -malign-jumps=1 -malign-loops=1 -malign-functions=1" - fi -fi - -AC_CACHE_CHECK([whether -freg-struct-return works], [grub_cv_cc_freg_struct_return], [ - CFLAGS="$TARGET_CFLAGS -freg-struct-return -Werror" - AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[]])], - [grub_cv_cc_freg_struct_return=yes], - [grub_cv_cc_freg_struct_return=no]) -]) - -if test "x$grub_cv_cc_freg_struct_return" = xyes; then - TARGET_CFLAGS="$TARGET_CFLAGS -freg-struct-return" -fi - -if ( test "x$target_cpu" = xi386 || test "x$target_cpu" = xx86_64 ) && test "x$platform" != xemu; then - # Some toolchains enable these features by default, but they need - # registers that aren't set up properly in GRUB. - TARGET_CFLAGS="$TARGET_CFLAGS -mno-mmx -mno-sse -mno-sse2 -mno-sse3 -mno-3dnow" -fi - -# GRUB doesn't use float or doubles at all. Yet some toolchains may decide -# that floats are a good fit to run instead of what's written in the code. -# Given that floating point unit is disabled (if present to begin with) -# when GRUB is running which may result in various hard crashes. -if test x"$platform" != xemu ; then - AC_CACHE_CHECK([for options to get soft-float], grub_cv_target_cc_soft_float, [ - grub_cv_target_cc_soft_float=no - if test "x$target_cpu" = xarm64; then - CFLAGS="$TARGET_CFLAGS -mgeneral-regs-only -Werror" - AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[]])], - [grub_cv_target_cc_soft_float="-mgeneral-regs-only"], []) - fi - if test "x$target_cpu" = xriscv32; then - CFLAGS="$TARGET_CFLAGS -march=rv32imac -mabi=ilp32 -Werror" - AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[]])], - [grub_cv_target_cc_soft_float="-march=rv32imac -mabi=ilp32"], []) - fi - if test "x$target_cpu" = xriscv64; then - CFLAGS="$TARGET_CFLAGS -march=rv64imac -mabi=lp64 -Werror" - AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[]])], - [grub_cv_target_cc_soft_float="-march=rv64imac -mabi=lp64"], []) - fi - if test "x$target_cpu" = xia64; then - CFLAGS="$TARGET_CFLAGS -mno-inline-float-divide -mno-inline-sqrt -Werror" - AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[]])], - [grub_cv_target_cc_soft_float="-mno-inline-float-divide -mno-inline-sqrt"], []) - fi - for cand in "-msoft-float -Xclang -msoft-float -Xclang -no-implicit-float" \ - "-Xclang -msoft-float -Xclang -no-implicit-float" \ - "-Xclang -msoft-float" "-msoft-float"; do - if test x"$grub_cv_target_cc_soft_float" != xno ; then - break - fi - CFLAGS="$TARGET_CFLAGS $cand -Werror" - AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[]])], - [grub_cv_target_cc_soft_float="$cand"], []) - done - ]) - - if test x"$grub_cv_target_cc_soft_float" = xno ; then - AC_MSG_ERROR([could not force soft-float]) - fi - - case x"$grub_cv_target_cc_soft_float" in - x*"-Xclang"*) - # A trick so that clang doesn't see it on link stаge - TARGET_CPPFLAGS="$TARGET_CPPFLAGS $grub_cv_target_cc_soft_float" - ;; - *) - TARGET_CFLAGS="$TARGET_CFLAGS $grub_cv_target_cc_soft_float" - ;; - esac - TARGET_CCASFLAGS="$TARGET_CCASFLAGS $grub_cv_target_cc_soft_float" - -fi - -if test x"$target_cpu" = xsparc64 ; then - AC_CACHE_CHECK([for options to reserve application registers], grub_cv_target_cc_mno_app_regs, [ - grub_cv_target_cc_mno_app_regs=no - for cand in "-mllvm -sparc-reserve-app-registers" \ - "-mno-app-regs"; do - if test x"$grub_cv_target_cc_mno_app_regs" != xno ; then - break - fi - CFLAGS="$TARGET_CFLAGS $cand -Werror" - CPPFLAGS="$TARGET_CPPFLAGS" - AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[]])], - [grub_cv_target_cc_mno_app_regs="$cand"], []) - done - ]) - - if test x"$grub_cv_target_cc_mno_app_regs" = xno ; then - AC_MSG_ERROR([could not reserve application registers]) - fi - if test x"$grub_cv_target_cc_mno_app_regs" = x"-mllvm -sparc-reserve-app-registers" ; then - # A trick so that clang doesn't see it on link stаge - TARGET_CPPFLAGS="$TARGET_CPPFLAGS $grub_cv_target_cc_mno_app_regs" - else - TARGET_CFLAGS="$TARGET_CFLAGS $grub_cv_target_cc_mno_app_regs" - fi - - AC_CACHE_CHECK([for no-relax options], grub_cv_target_cc_mno_relax, [ - grub_cv_target_cc_mno_relax=no - for cand in "-mno-relax" "-Wl,--no-relax"; do - if test x"$grub_cv_target_cc_mno_relax" != xno ; then - break - fi - LDFLAGS="$TARGET_LDFLAGS $cand -nostdlib -static" - CFLAGS="$TARGET_CFLAGS -Werror" - AC_LINK_IFELSE([AC_LANG_PROGRAM([[ - asm (".globl start; start:"); - void __main (void); - void __main (void) {} - int main (void); - ]], [[]])], [grub_cv_target_cc_mno_relax="$cand"], []) - done - ]) - LDFLAGS="$TARGET_LDFLAGS" - CFLAGS="$TARGET_CFLAGS" - - if test x"$grub_cv_target_cc_mno_relax" = xno ; then - AC_MSG_ERROR([could not find no-relax options]) - fi - TARGET_LDFLAGS="$TARGET_LDFLAGS $grub_cv_target_cc_mno_relax" -fi - -# By default, GCC 4.4 generates .eh_frame sections containing unwind -# information in some cases where it previously did not. GRUB doesn't need -# these and they just use up vital space. Restore the old compiler -# behaviour. -AC_CACHE_CHECK([whether -fno-dwarf2-cfi-asm works], [grub_cv_cc_fno_dwarf2_cfi_asm], [ - CFLAGS="$TARGET_CFLAGS -fno-dwarf2-cfi-asm" - AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[]])], - [grub_cv_cc_fno_dwarf2_cfi_asm=yes], - [grub_cv_cc_fno_dwarf2_cfi_asm=no]) -]) - -if test "x$grub_cv_cc_fno_dwarf2_cfi_asm" = xyes; then - TARGET_CFLAGS="$TARGET_CFLAGS -fno-dwarf2-cfi-asm" -fi - -if test x"$target_os" = xcygwin; then - AC_CACHE_CHECK([whether option -fno-reorder-functions works], grub_cv_cc_no_reorder_functions, [ - CFLAGS="$TARGET_CFLAGS -fno-reorder-functions" - AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[]])], - [grub_cv_cc_no_reorder_functions=yes], - [grub_cv_cc_no_reorder_functions=no]) - ]) -fi - -if test x"$target_os" = xcygwin && test "x$grub_cv_cc_no_reorder_functions" = xyes; then - TARGET_CFLAGS="$TARGET_CFLAGS -fno-reorder-functions" -fi - -AC_CACHE_CHECK([whether -mno-stack-arg-probe works], [grub_cv_cc_mno_stack_arg_probe], [ - CFLAGS="$TARGET_CFLAGS -mno-stack-arg-probe" - AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[]])], - [grub_cv_cc_mno_stack_arg_probe=yes], - [grub_cv_cc_mno_stack_arg_probe=no]) -]) - -if test "x$grub_cv_cc_mno_stack_arg_probe" = xyes; then - TARGET_CFLAGS="$TARGET_CFLAGS -mno-stack-arg-probe" -fi - - -# By default, GCC 4.6 generates .eh_frame sections containing unwind -# information in some cases where it previously did not. GRUB doesn't need -# these and they just use up vital space. Restore the old compiler -# behaviour. -AC_CACHE_CHECK([whether -fno-asynchronous-unwind-tables works], [grub_cv_cc_fno_asynchronous_unwind_tables], [ - CFLAGS="$TARGET_CFLAGS -fno-asynchronous-unwind-tables" - AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[]])], - [grub_cv_cc_fno_asynchronous_unwind_tables=yes], - [grub_cv_cc_fno_asynchronous_unwind_tables=no]) -]) - -if test "x$grub_cv_cc_fno_asynchronous_unwind_tables" = xyes; then - TARGET_CFLAGS="$TARGET_CFLAGS -fno-asynchronous-unwind-tables" -fi - -AC_CACHE_CHECK([whether -fno-unwind-tables works], [grub_cv_cc_fno_unwind_tables], [ - CFLAGS="$TARGET_CFLAGS -fno-unwind-tables" - AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[]])], - [grub_cv_cc_fno_unwind_tables=yes], - [grub_cv_cc_fno_unwind_tables=no]) -]) - -if test "x$grub_cv_cc_fno_unwind_tables" = xyes; then - TARGET_CFLAGS="$TARGET_CFLAGS -fno-unwind-tables" -fi - - -CFLAGS="$TARGET_CFLAGS" - - -if test x"$platform" = xemu ; then - TARGET_OBJ2ELF= - grub_cv_target_cc_link_format= - case "$host_os" in - *darwin* | *mac*) - grub_cv_target_cc_link_format="-arch,${target_cpu}" - TARGET_LDFLAGS="$TARGET_LDFLAGS -Wl,$grub_cv_target_cc_link_format" - ;; - *windows* | *cygwin* | *mingw*) - if test x${target_cpu} = xi386 ; then - grub_cv_target_cc_link_format=-mi386pe - TARGET_OBJ2ELF='./build-grub-pe2elf$(BUILD_EXEEXT)' - fi - if test x${target_cpu} = xx86_64 ; then - grub_cv_target_cc_link_format=-mi386pep - TARGET_OBJ2ELF='./build-grub-pep2elf$(BUILD_EXEEXT)' - fi - TARGET_LDFLAGS="$TARGET_LDFLAGS -Wl,$grub_cv_target_cc_link_format" - ;; - esac -elif test x"$target_cpu" = xi386 || test x"$target_cpu" = xx86_64; then - AC_CACHE_CHECK([for target linking format], [grub_cv_target_cc_link_format], [ - grub_cv_target_cc_link_format=unknown - for format in -melf_${target_cpu} -melf_${target_cpu}_fbsd -melf_${target_cpu}_obsd -melf_${target_cpu}_haiku -mi386pe -mi386pep -arch,${target_cpu}; do - if test x${target_cpu} != xi386 && test x$format = x-mi386pe; then - continue - fi - if test x${target_cpu} != xx86_64 && test x$format = x-mi386pep; then - continue - fi - CFLAGS="$TARGET_CFLAGS" - LDFLAGS="$TARGET_LDFLAGS -Wl,$format -nostdlib -static" - AC_LINK_IFELSE([AC_LANG_PROGRAM([[ - asm (".globl start; start:"); - asm (".globl _start; _start:"); - asm (".globl __start; __start:"); - void __main (void); - void __main (void) {} - ]], [[]])], [flag=1], [flag=0]) - if test x"$flag" = x1; then - grub_cv_target_cc_link_format="$format" - break - fi - done]) - if test x"$grub_cv_target_cc_link_format" = xunknown; then - AC_MSG_ERROR([no suitable link format found]) - fi - TARGET_LDFLAGS="$TARGET_LDFLAGS -Wl,$grub_cv_target_cc_link_format" - if test x"$grub_cv_target_cc_link_format" = x-mi386pe ; then - TARGET_OBJ2ELF='./build-grub-pe2elf$(BUILD_EXEEXT)' - fi - if test x"$grub_cv_target_cc_link_format" = x-mi386pep ; then - TARGET_OBJ2ELF='./build-grub-pep2elf$(BUILD_EXEEXT)' - fi -fi - -if test x$grub_cv_target_cc_link_format = x-arch,i386 || test x$grub_cv_target_cc_link_format = x-arch,x86_64; then - TARGET_APPLE_LINKER=1 - AC_CHECK_PROG([TARGET_OBJCONV], [objconv], [objconv], []) - if test "x$TARGET_OBJCONV" = x ; then - AC_CHECK_PROG([TARGET_OBJCONV], [objconv], [./objconv], [], [.]) - fi - if test "x$TARGET_OBJCONV" = x ; then - AC_MSG_ERROR([objconv not found which is required when building with apple compiler]) - fi - TARGET_IMG_LDSCRIPT= - TARGET_IMG_CFLAGS="-static" - TARGET_IMG_LDFLAGS='-nostdlib -static -Wl,-preload -Wl,-segalign,20' - TARGET_IMG_LDFLAGS_AC='-nostdlib -static -Wl,-preload -Wl,-segalign,20' - TARGET_IMG_BASE_LDOPT="-Wl,-image_base" - TARGET_LDFLAGS_OLDMAGIC="" -elif test x$grub_cv_target_cc_link_format = x-mi386pe || test x$grub_cv_target_cc_link_format = x-mi386pep ; then - TARGET_APPLE_LINKER=0 - TARGET_LDFLAGS_OLDMAGIC="-Wl,-N" - TARGET_IMG_LDSCRIPT='$(top_srcdir)'"/${grub_coredir}/conf/i386-cygwin-img-ld.sc" - TARGET_IMG_LDFLAGS="-Wl,-T${TARGET_IMG_LDSCRIPT}" - TARGET_IMG_LDFLAGS_AC="-Wl,-T${srcdir}/${grub_coredir}/conf/i386-cygwin-img-ld.sc" - TARGET_IMG_BASE_LDOPT="-Wl,-Ttext" - TARGET_IMG_CFLAGS= -else - TARGET_APPLE_LINKER=0 - TARGET_LDFLAGS_OLDMAGIC="-Wl,-N" - TARGET_IMG_LDSCRIPT= - TARGET_IMG_LDFLAGS='-Wl,-N' - TARGET_IMG_LDFLAGS_AC='-Wl,-N' - TARGET_IMG_BASE_LDOPT="-Wl,-Ttext" - TARGET_IMG_CFLAGS= -fi - -CFLAGS="$TARGET_CFLAGS" - -AC_ARG_ENABLE([efiemu], - [AS_HELP_STRING([--enable-efiemu], - [build and install the efiemu runtimes (default=guessed)])]) -if test x"$enable_efiemu" = xno ; then - efiemu_excuse="explicitly disabled" -fi - -if test x"$grub_cv_target_cc_link_format" = x-mi386pe || test x"$grub_cv_target_cc_link_format" = x-mi386pep ; then - efiemu_excuse="not available on cygwin" -fi -if test x"$target_cpu" != xi386 ; then - efiemu_excuse="only available on i386" -fi -if test x"$platform" = xefi ; then - efiemu_excuse="not available on efi" -fi - -if test x"$efiemu_excuse" = x ; then - AC_CACHE_CHECK([whether options required for efiemu work], grub_cv_cc_efiemu, [ - CFLAGS="-m64 -nostdlib -O2 -mcmodel=large -mno-red-zone" - AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[]])], - [grub_cv_cc_efiemu=yes], - [grub_cv_cc_efiemu=no]) - ]) - if test x$grub_cv_cc_efiemu = xno; then - efiemu_excuse="cannot compile with -m64 -mcmodel=large -mno-red-zone -nostdlib" - fi -fi -if test x"$efiemu_excuse" = x ; then - AC_CACHE_CHECK([for efiemu64 linking format], [grub_cv_target_cc_efiemu64_link_format], [ - grub_cv_target_cc_efiemu64_link_format=unknown - for format in -melf_x86_64 -melf_x86_64_fbsd -melf_x86_64_obsd -melf_x86_64_haiku -arch,x86_64; do - CFLAGS="-m64 -nostdlib -O2 -mcmodel=large -mno-red-zone" - LDFLAGS="-m64 -Wl,$format -nostdlib -static" - AC_LINK_IFELSE([AC_LANG_PROGRAM([[ - asm (".globl start; start:"); - asm (".globl _start; _start:"); - asm (".globl __start; __start:"); - void __main (void); - void __main (void) {} - ]], [[]])], [flag=1], [flag=0]) - if test x"$flag" = x1; then - grub_cv_target_cc_efiemu64_link_format="$format" - break - fi - done]) - if test x"$grub_cv_target_cc_efiemu64_link_format" = xunknown; then - efiemu_excuse="no suitable link format for efiemu64 found" - else - EFIEMU64_LINK_FORMAT="-Wl,$grub_cv_target_cc_efiemu64_link_format" - fi -fi -if test x"$enable_efiemu" = xyes && test x"$efiemu_excuse" != x ; then - AC_MSG_ERROR([efiemu runtime was explicitly requested but can't be compiled ($efiemu_excuse)]) -fi -if test x"$efiemu_excuse" = x ; then -enable_efiemu=yes -else -enable_efiemu=no -fi -AC_SUBST([enable_efiemu]) -AC_SUBST([EFIEMU64_LINK_FORMAT]) - -CFLAGS="$TARGET_CFLAGS" - -AC_SUBST(TARGET_LDFLAGS_OLDMAGIC) - - -LDFLAGS="$TARGET_LDFLAGS" - -if test "$target_cpu" = x86_64 || test "$target_cpu" = sparc64 || test "$target_cpu" = riscv64 ; then - # Use large model to support 4G memory - AC_CACHE_CHECK([whether option -mcmodel=large works], grub_cv_cc_mcmodel, [ - CFLAGS="$TARGET_CFLAGS -mcmodel=large" - AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[]])], - [grub_cv_cc_mcmodel=yes], - [grub_cv_cc_mcmodel=no]) - ]) - if test "x$grub_cv_cc_mcmodel" = xyes; then - TARGET_CFLAGS="$TARGET_CFLAGS -mcmodel=large" - elif test "$target_cpu" = sparc64 || test "$target_cpu" = riscv64; then - TARGET_CFLAGS="$TARGET_CFLAGS -mcmodel=medany" - fi -fi - -if test "$target_cpu"-"$platform" = x86_64-efi; then - # EFI writes to stack below %rsp, we must not use the red zone - AC_CACHE_CHECK([whether option -mno-red-zone works], grub_cv_cc_no_red_zone, [ - CFLAGS="$TARGET_CFLAGS -mno-red-zone" - AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[]])], - [grub_cv_cc_no_red_zone=yes], - [grub_cv_cc_no_red_zone=no]) - ]) - if test "x$grub_cv_cc_no_red_zone" = xno; then - AC_MSG_ERROR([-mno-red-zone not supported, upgrade your gcc]) - fi - - TARGET_CFLAGS="$TARGET_CFLAGS -mno-red-zone" -fi - -if test "x$target_cpu" = xarm; then - AC_CACHE_CHECK([for options to disable movt and movw], grub_cv_target_cc_mno_movt, [ - grub_cv_target_cc_mno_movt=no - for cand in "-mno-movt" \ - "-mllvm -arm-use-movt=0"; do - if test x"$grub_cv_target_cc_mno_movt" != xno ; then - break - fi - CFLAGS="$TARGET_CFLAGS $cand -Werror" - CPPFLAGS="$TARGET_CPPFLAGS" - AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[]])], - [grub_cv_target_cc_mno_movt="$cand"], []) - done - ]) - - if test x"$grub_cv_target_cc_mno_movt" != xno ; then - # A trick so that clang doesn't see it on link stage - TARGET_CPPFLAGS="$TARGET_CPPFLAGS $grub_cv_target_cc_mno_movt" - fi - AC_CACHE_CHECK([whether option -mthumb-interwork works], grub_cv_cc_mthumb_interwork, [ - CFLAGS="$TARGET_CFLAGS -mthumb-interwork -Werror" - AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[]])], - [grub_cv_cc_mthumb_interwork=yes], - [grub_cv_cc_mthumb_interwork=no]) - ]) - if test "x$grub_cv_cc_mthumb_interwork" = xyes; then - TARGET_CFLAGS="$TARGET_CFLAGS -mthumb-interwork" - # Clang defaults to thumb interworking - elif test "x$grub_cv_cc_target_clang" = xno ; then - AC_MSG_ERROR([your compiler doesn't support -mthumb-interwork]) - fi -fi - -AC_CACHE_CHECK([whether option -Qn works], grub_cv_target_cc_qn, [ - CFLAGS="$TARGET_CFLAGS -Qn -Qunused-arguments -Werror" - AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[]])], - [grub_cv_target_cc_qn=yes], - [grub_cv_target_cc_qn=no])]) -if test "x$grub_cv_target_cc_qn" = xyes; then - TARGET_CFLAGS="$TARGET_CFLAGS -Qn -Qunused-arguments" -fi - -# -# Compiler features. -# - -CFLAGS="$TARGET_CFLAGS" - -# Position independent executable. -grub_CHECK_PIE -grub_CHECK_NO_PIE -grub_CHECK_NO_PIE_ONEWORD -grub_CHECK_LINK_PIE -[# Need that, because some distributions ship compilers that include -# `-fPIE' or '-fpie' and '-pie' in the default specs. -if [ x"$pie_possible" = xyes ]; then - TARGET_CFLAGS="$TARGET_CFLAGS -fno-PIE -fno-pie" -fi - -if [ x"$link_nopie_needed" = xyes ] || [ x"$pie_possible" = xyes ]; then - if [ x"$nopie_possible" = xyes ]; then - TARGET_LDFLAGS="$TARGET_LDFLAGS -no-pie" - fi - if [ x"$nopie_oneword_possible" = xyes ]; then - TARGET_LDFLAGS="$TARGET_LDFLAGS -nopie" - fi -fi] - -CFLAGS="$TARGET_CFLAGS" -LDFLAGS="$TARGET_LDFLAGS" - -# Position independent executable. -grub_CHECK_PIC -[# On most platforms we don't want PIC as it only makes relocations harder -# and code less efficient. On mips we want to have one got table per module -# and reload $gp in every function. -# GCC implements it using symbol __gnu_local_gp in non-PIC as well. -# However with clang we need PIC for this reloading to happen. -# With arm64 we need relocations that are in some way representable in -# PE as we need to support arm64-efi. Without -fPIC clang generates -# movk's which aren't representable. -# Since default varies across dictributions use either -fPIC or -fno-PIC -# explicitly. -if ( test x$target_cpu = xmips || test x$target_cpu = xmipsel || test x$target_cpu = xarm64 ) && test "x$grub_cv_cc_target_clang" = xyes ; then - TARGET_CFLAGS="$TARGET_CFLAGS -fPIC" -elif [ x"$pic_possible" = xyes ]; then - TARGET_CFLAGS="$TARGET_CFLAGS -fno-PIC" -fi] - -CFLAGS="$TARGET_CFLAGS" - -# Smashing stack protector. -grub_CHECK_STACK_PROTECTOR -# Need that, because some distributions ship compilers that include -# `-fstack-protector' in the default specs. -if test "x$ssp_possible" = xyes; then - TARGET_CFLAGS="$TARGET_CFLAGS -fno-stack-protector" -fi - -CFLAGS="$TARGET_CFLAGS" - -grub_CHECK_STACK_ARG_PROBE -# Cygwin's GCC uses alloca() to probe the stackframe on static -# stack allocations above some threshold. -if test x"$sap_possible" = xyes; then - TARGET_CFLAGS="$TARGET_CFLAGS -mno-stack-arg-probe" -fi - -CFLAGS="$TARGET_CFLAGS" - -# -mno-unaligned-access -mstrict-align -if test "$target_cpu" = arm; then - AC_CACHE_CHECK([for compile options to get strict alignment], [grub_cv_target_cc_strict_align], [ - grub_cv_target_cc_strict_align= - for arg in -mno-unaligned-access "-Xclang -mstrict-align" -mstrict-align; do - CFLAGS="$TARGET_CFLAGS $arg -Werror" - LDFLAGS="$TARGET_LDFLAGS" - AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[]])], [flag=1], [flag=0]) - if test x"$flag" = x1; then - grub_cv_target_cc_strict_align="$arg" - break - fi - done]) - - TARGET_CFLAGS="$TARGET_CFLAGS $grub_cv_target_cc_strict_align" - if test x"$grub_cv_target_cc_strict_align" = x"-Xclang -mstrict-align"; then - TARGET_LDFLAGS="$TARGET_LDFLAGS -Qunused-arguments" - fi - AC_CACHE_CHECK([if compiler generates unaligned accesses], [grub_cv_cc_target_emits_unaligned], - [CFLAGS="$TARGET_CFLAGS" - AC_COMPILE_IFELSE([AC_LANG_PROGRAM([], [[ -#ifdef __ARM_FEATURE_UNALIGNED -#error "unaligned" -#endif - ]])], - [grub_cv_cc_target_emits_unaligned=no], [grub_cv_cc_target_emits_unaligned=yes])]) - if test x$grub_cv_cc_target_emits_unaligned = xyes; then - AC_MSG_ERROR([compiler generates unaligned accesses]) - fi -fi - -# Set them to their new values for the tests below. -CC="$TARGET_CC" -if test x"$platform" = xemu ; then -CFLAGS="$TARGET_CFLAGS -Wno-error" -elif test "x$TARGET_APPLE_LINKER" = x1 ; then -CFLAGS="$TARGET_CFLAGS -nostdlib -static -Wno-error" -else -CFLAGS="$TARGET_CFLAGS -nostdlib -Wno-error" -fi -CPPFLAGS="$TARGET_CPPFLAGS" - -grub_ASM_USCORE -if test "x$TARGET_APPLE_LINKER" = x0 && test x"$platform" != xemu; then -if test x$grub_cv_asm_uscore = xyes; then -DEFSYM="-Wl,--defsym,_abort=_main -Wl,--defsym,__main=_main" -else -DEFSYM="-Wl,--defsym,abort=main -Wl,--defsym,_main=main -Wl,--defsym,__main=main" -fi -CFLAGS="$TARGET_CFLAGS -nostdlib $DEFSYM" -fi - -# Check for libgcc symbols -if test x"$platform" = xemu; then -AC_CHECK_FUNCS(__udivsi3 __umodsi3 __divsi3 __modsi3 __divdi3 __moddi3 __udivdi3 __umoddi3 __ctzdi2 __ctzsi2 __aeabi_uidiv __aeabi_uidivmod __aeabi_idiv __aeabi_idivmod __aeabi_ulcmp __muldi3 __aeabi_lmul __aeabi_memcpy __aeabi_memcpy4 __aeabi_memcpy8 __aeabi_memclr __aeabi_memclr4 __aeabi_memclr8 __aeabi_memset __aeabi_lasr __aeabi_llsl __aeabi_llsr _restgpr_14_x __ucmpdi2 __ashldi3 __ashrdi3 __lshrdi3 __bswapsi2 __bswapdi2 __bzero __register_frame_info __deregister_frame_info ___chkstk_ms __chkstk_ms) -fi - -if test "x$TARGET_APPLE_LINKER" = x1 ; then -CFLAGS="$TARGET_CFLAGS -nostdlib -static" -else -CFLAGS="$TARGET_CFLAGS -nostdlib" -fi -LIBS="" - -# Defined in aclocal.m4. -grub_PROG_TARGET_CC -if test "x$TARGET_APPLE_LINKER" != x1 ; then -grub_PROG_OBJCOPY_ABSOLUTE -fi -grub_PROG_LD_BUILD_ID_NONE -if test "x$target_cpu" = xi386; then - if test "$platform" != emu && test "x$TARGET_APPLE_LINKER" != x1 ; then - if test ! -z "$TARGET_IMG_LDSCRIPT"; then - # Check symbols provided by linker script. - CFLAGS="$TARGET_CFLAGS -nostdlib ${TARGET_IMG_LDFLAGS_AC} ${TARGET_IMG_BASE_LDOPT},0x8000" - fi - grub_CHECK_BSS_START_SYMBOL - grub_CHECK_END_SYMBOL - fi - CFLAGS="$TARGET_CFLAGS" -fi - -grub_PROG_NM_WORKS -grub_PROG_NM_MINUS_P -grub_PROG_NM_DEFINED_ONLY -AC_SUBST(TARGET_NMFLAGS_MINUS_P) -AC_SUBST(TARGET_NMFLAGS_DEFINED_ONLY) - -if test "$platform" != emu; then -AC_CACHE_CHECK([whether -nostdinc -isystem works], [grub_cv_cc_isystem], [ - SAVED_CPPFLAGS="$CPPFLAGS" - CPPFLAGS="$TARGET_CPPFLAGS -nostdlib -nostdinc -isystem `$TARGET_CC -print-file-name=include`" - AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include -#include -int va_arg_func (int fixed, va_list args);]], [[]])], - [grub_cv_cc_isystem=yes], - [grub_cv_cc_isystem=no]) - CPPFLAGS="$SAVED_CPPFLAGS" -]) - -if test x"$grub_cv_cc_isystem" = xyes ; then - TARGET_CPPFLAGS="$TARGET_CPPFLAGS -nostdinc -isystem `$TARGET_CC -print-file-name=include`" -fi -fi - -AC_CACHE_CHECK([whether -Wtrampolines work], [grub_cv_cc_wtrampolines], [ - CFLAGS="$TARGET_CFLAGS -Wtrampolines -Werror" - AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include -int va_arg_func (int fixed, va_list args);]], [[]])], - [grub_cv_cc_wtrampolines=yes], - [grub_cv_cc_wtrampolines=no]) -]) - -if test x"$grub_cv_cc_wtrampolines" = xyes ; then - TARGET_CFLAGS="$TARGET_CFLAGS -Wtrampolines" -fi - -# Restore the flags. -CC="$tmp_CC" -CFLAGS="$tmp_CFLAGS" -CPPFLAGS="$tmp_CPPFLAGS" -LDFLAGS="$tmp_LDFLAGS" -LIBS="$tmp_LIBS" - -# -# Check for options. -# - -# Memory manager debugging. -AC_ARG_ENABLE([mm-debug], - AS_HELP_STRING([--enable-mm-debug], - [include memory manager debugging]), - [AC_DEFINE([MM_DEBUG], [1], - [Define to 1 if you enable memory manager debugging.])]) - -AC_ARG_ENABLE([cache-stats], - AS_HELP_STRING([--enable-cache-stats], - [enable disk cache statistics collection])) - -if test x$enable_cache_stats = xyes; then - DISK_CACHE_STATS=1 -else - DISK_CACHE_STATS=0 -fi -AC_SUBST([DISK_CACHE_STATS]) - -AC_ARG_ENABLE([boot-time], - AS_HELP_STRING([--enable-boot-time], - [enable boot time statistics collection])) - -if test x$enable_boot_time = xyes; then - BOOT_TIME_STATS=1 -else - BOOT_TIME_STATS=0 -fi -AC_SUBST([BOOT_TIME_STATS]) - -AC_ARG_ENABLE([grub-emu-sdl], - [AS_HELP_STRING([--enable-grub-emu-sdl], - [build and install the `grub-emu' debugging utility with SDL support (default=guessed)])]) - -AC_ARG_ENABLE([grub-emu-pci], - [AS_HELP_STRING([--enable-grub-emu-pci], - [build and install the `grub-emu' debugging utility with PCI support (potentially dangerous) (default=no)])]) - -if test "$platform" = emu; then - -if test x"$enable_grub_emu_sdl" = xno ; then - grub_emu_sdl_excuse="explicitly disabled" -fi -[if [ x"$grub_emu_sdl_excuse" = x ]; then - # Check for libSDL libraries.] -AC_CHECK_LIB([SDL], [SDL_Init], [LIBSDL="-lSDL"], - [grub_emu_sdl_excuse=["libSDL libraries are required to build \`grub-emu' with SDL support"]]) - AC_SUBST([LIBSDL]) -[fi] - -[if [ x"$grub_emu_sdl_excuse" = x ]; then - # Check for headers.] - AC_CHECK_HEADERS([SDL/SDL.h], [], - [grub_emu_sdl_excuse=["libSDL header file is required to build \`grub-emu' with SDL support"]]) -[fi] - -if test x"enable_grub_emu_sdl" = xyes && test x"$grub_emu_sdl_excuse" != x ; then - AC_MSG_ERROR([SDL support for grub-emu was explicitly requested but can't be compiled ($grub_emu_sdl_excuse)]) -fi -if test x"$grub_emu_sdl_excuse" = x ; then -enable_grub_emu_sdl=yes -else -enable_grub_emu_sdl=no -fi - -if test x"$enable_grub_emu_pci" != xyes ; then - grub_emu_pci_excuse="not enabled" -fi - -[if [ x"$grub_emu_pci_excuse" = x ]; then - # Check for libpci libraries.] - AC_CHECK_LIB([pciaccess], [pci_system_init], [LIBPCIACCESS="-lpciaccess"], - [grub_emu_pci_excuse=["need libpciaccess library"]]) - AC_SUBST([LIBPCIACCESS]) -[fi] -[if [ x"$grub_emu_pci_excuse" = x ]; then - # Check for headers.] - AC_CHECK_HEADERS([pciaccess.h], [], - [grub_emu_pci_excuse=["need libpciaccess headers"]]) -[fi] - -if test x"$grub_emu_pci_excuse" = x ; then -enable_grub_emu_pci=yes -else - -enable_grub_emu_pci=no -fi - -AC_SUBST([enable_grub_emu_sdl]) -AC_SUBST([enable_grub_emu_pci]) - -else - -# Ignore --enable-emu-* if platform is not emu -enable_grub_emu_sdl=no -enable_grub_emu_pci=no -fi - -AC_ARG_ENABLE([grub-mkfont], - [AS_HELP_STRING([--enable-grub-mkfont], - [build and install the `grub-mkfont' utility (default=guessed)])]) -if test x"$enable_grub_mkfont" = xno ; then - grub_mkfont_excuse="explicitly disabled" -fi - -unset ac_cv_header_ft2build_h - -if test x"$grub_mkfont_excuse" = x ; then - # Check for freetype libraries. - PKG_CHECK_MODULES([FREETYPE], [freetype2], [ - SAVED_CPPFLAGS="$CPPFLAGS" - SAVED_LIBS="$LIBS" - CPPFLAGS="$CPPFLAGS $FREETYPE_CFLAGS" - LIBS="$LIBS $FREETYPE_LIBS" - AC_CHECK_HEADERS([ft2build.h], [], - [grub_mkfont_excuse=["need freetype2 headers"]]) - AC_LINK_IFELSE([AC_LANG_CALL([], [FT_Load_Glyph])], [], - [grub_mkfont_excuse=["freetype2 library unusable"]]) - CPPFLAGS="$SAVED_CPPFLAGS" - LIBS="$SAVED_LIBS" - ], [grub_mkfont_excuse=["need freetype2 library"]]) -fi - -if test x"$enable_grub_mkfont" = xyes && test x"$grub_mkfont_excuse" != x ; then - AC_MSG_ERROR([grub-mkfont was explicitly requested but can't be compiled ($grub_mkfont_excuse)]) -fi -if test x"$grub_mkfont_excuse" = x ; then -enable_grub_mkfont=yes -else -enable_grub_mkfont=no -fi -AC_SUBST([enable_grub_mkfont]) - -SAVED_CC="$CC" -SAVED_CPP="$CPP" -SAVED_CFLAGS="$CFLAGS" -SAVED_CPPFLAGS="$CPPFLAGS" -SAVED_LDFLAGS="$LDFLAGS" -CC="$BUILD_CC" -CPP="$BUILD_CPP" -CFLAGS="$BUILD_CFLAGS" -CPPFLAGS="$BUILD_CPPFLAGS" -LDFLAGS="$BUILD_LDFAGS" - -unset ac_cv_c_bigendian -unset ac_cv_header_ft2build_h - -AC_COMPUTE_INT([BUILD_SIZEOF_VOID_P], [sizeof (void *)]) -AC_COMPUTE_INT([BUILD_SIZEOF_LONG], [sizeof (long)]) -AC_C_BIGENDIAN([BUILD_WORDS_BIGENDIAN=1], [BUILD_WORDS_BIGENDIAN=0], [BUILD_WORDS_BIGENDIAN=err], [BUILD_WORDS_BIGENDIAN=err]) - -if test x$BUILD_WORDS_BIGENDIAN = xerr ; then - AC_MSG_ERROR([couldnt determine build endianness]) -fi - -AC_SUBST([BUILD_SIZEOF_LONG]) -AC_SUBST([BUILD_SIZEOF_VOID_P]) -AC_SUBST([BUILD_WORDS_BIGENDIAN]) - -if test x"$grub_build_mkfont_excuse" = x ; then - # Check for freetype libraries. - SAVED_PKG_CONFIG="$PKG_CONFIG" - test -z "$BUILD_PKG_CONFIG" || PKG_CONFIG="$BUILD_PKG_CONFIG" - PKG_CHECK_MODULES([BUILD_FREETYPE], [freetype2], [ - SAVED_CPPFLAGS_2="$CPPFLAGS" - SAVED_LIBS="$LIBS" - CPPFLAGS="$CPPFLAGS $BUILD_FREETYPE_CFLAGS" - LIBS="$LIBS $BUILD_FREETYPE_LIBS" - AC_CHECK_HEADERS([ft2build.h], [], - [grub_build_mkfont_excuse=["need freetype2 headers"]]) - AC_LINK_IFELSE([AC_LANG_CALL([], [FT_Load_Glyph])], [], - [grub_build_mkfont_excuse=["freetype2 library unusable"]]) - LIBS="$SAVED_LIBS" - CPPFLAGS="$SAVED_CPPFLAGS_2" - ], [grub_build_mkfont_excuse=["need freetype2 library"]]) - PKG_CONFIG="$SAVED_PKG_CONFIG" -fi - -if test x"$enable_build_grub_mkfont" = xyes && test x"$grub_build_mkfont_excuse" != x ; then - AC_MSG_ERROR([build-grub-mkfont was explicitly requested but can't be compiled ($grub_build_mkfont_excuse)]) -fi -if test x"$grub_build_mkfont_excuse" = x ; then - enable_build_grub_mkfont=yes -else - enable_build_grub_mkfont=no -fi -if test x"$enable_build_grub_mkfont" = xno && ( test "x$platform" = xqemu || test "x$platform" = xloongson || test "x$platform" = xqemu_mips || test "x$platform" = xcoreboot ); then - if test x"$grub_build_mkfont_excuse" = x ; then - AC_MSG_ERROR([qemu, coreboot and loongson ports need build-time grub-mkfont]) - else - AC_MSG_ERROR([qemu, coreboot and loongson ports need build-time grub-mkfont ($grub_build_mkfont_excuse)]) - fi -fi - -CC="$SAVED_CC" -CPP="$SAVED_CPP" -CFLAGS="$SAVED_CFLAGS" -CPPFLAGS="$SAVED_CPPFLAGS" -LDFLAGS="$SAVED_LDFLAGS" - - -DJVU_FONT_SOURCE= - -starfield_excuse= - -AC_ARG_ENABLE([grub-themes], - [AS_HELP_STRING([--enable-grub-themes], - [build and install GRUB themes (default=guessed)])]) -if test x"$enable_grub_themes" = xno ; then - starfield_excuse="explicitly disabled" -fi - -if test x"$starfield_excuse" = x && test x"$enable_build_grub_mkfont" = xno ; then - starfield_excuse="No build-time grub-mkfont" -fi - -if test x"$starfield_excuse" = x; then - for ext in pcf pcf.gz bdf bdf.gz ttf ttf.gz; do - for dir in . /usr/src /usr/share/fonts/X11/misc /usr/share/fonts/truetype/ttf-dejavu /usr/share/fonts/dejavu /usr/share/fonts/truetype; do - if test -f "$dir/DejaVuSans.$ext"; then - DJVU_FONT_SOURCE="$dir/DejaVuSans.$ext" - break 2 - fi - done - done - - if test "x$DJVU_FONT_SOURCE" = x; then - starfield_excuse="No DejaVu found" - fi -fi - -if test x"$enable_grub_themes" = xyes && test x"$starfield_excuse" != x; then - AC_MSG_ERROR([themes were explicitly requested but requirements are not satisfied ($starfield_excuse)]) -fi - -AC_SUBST([DJVU_FONT_SOURCE]) - -FONT_SOURCE= - -for ext in pcf pcf.gz bdf bdf.gz ttf ttf.gz; do - for dir in . /usr/src /usr/share/fonts/X11/misc /usr/share/fonts/unifont /usr/share/fonts/uni /usr/share/fonts/truetype/unifont /usr/share/fonts/misc; do - if test -f "$dir/unifont.$ext"; then - md5="$(md5sum "$dir/unifont.$ext"|awk '{ print $1; }')" - # PCF and BDF from version 6.3 isn't hanled properly by libfreetype. - if test "$md5" = 0a54834d2788c83886a3e1785a6a1e61 || test "$md5" = 28f2565c7a41d8d407e2551159385edb || test "$md5" = dae5e588461b3b92b87b6ffee734f936 || test "$md5" = 4a3d687aa5bb329ed05f4263a1016791 ; then - continue - fi - FONT_SOURCE="$dir/unifont.$ext" - break 2 - fi - done -done - -if test x"$enable_build_grub_mkfont" = xno ; then - FONT_SOURCE= -fi - -if test "x$FONT_SOURCE" = x && ( test "x$platform" = xqemu || test "x$platform" = xloongson || test "x$platform" = xqemu_mips || test "x$platform" = xcoreboot ); then - if test x"$grub_build_mkfont_excuse" = x ; then - AC_MSG_ERROR([qemu, coreboot and loongson ports need unifont]) - else - AC_MSG_ERROR([qemu, coreboot and loongson ports need unifont ($grub_build_mkfont_excuse)]) - fi -fi - -AC_SUBST([FONT_SOURCE]) - -if test x"$FONT_SOURCE" = x && test x"$DJVU_FONT_SOURCE" = x && test x"$grub_build_mkfont_excuse" = x; then - grub_build_mkfont_excuse="no fonts" -fi - - -AC_ARG_ENABLE([grub-mount], - [AS_HELP_STRING([--enable-grub-mount], - [build and install the `grub-mount' utility (default=guessed)])]) -if test x"$enable_grub_mount" = xno ; then - grub_mount_excuse="explicitly disabled" -fi - -if test x"$grub_mount_excuse" = x ; then - AC_CHECK_LIB([fuse], [fuse_main_real], [], - [grub_mount_excuse="need FUSE library"]) -fi - -if test x"$grub_mount_excuse" = x ; then - # Check for fuse headers. - SAVED_CPPFLAGS="$CPPFLAGS" - CPPFLAGS="$CPPFLAGS -DFUSE_USE_VERSION=26" - AC_CHECK_HEADERS([fuse/fuse.h], [], - [grub_mount_excuse=["need FUSE headers"]]) - CPPFLAGS="$SAVED_CPPFLAGS" -fi - -if test x"$enable_grub_mount" = xyes && test x"$grub_mount_excuse" != x ; then - AC_MSG_ERROR([grub-mount was explicitly requested but can't be compiled ($grub_mount_excuse)]) -fi -if test x"$grub_mount_excuse" = x ; then -enable_grub_mount=yes -else -enable_grub_mount=no -fi -AC_SUBST([enable_grub_mount]) - -AC_ARG_ENABLE([device-mapper], - [AS_HELP_STRING([--enable-device-mapper], - [enable Linux device-mapper support (default=guessed)])]) -if test x"$enable_device_mapper" = xno ; then - device_mapper_excuse="explicitly disabled" -fi - -if test x"$device_mapper_excuse" = x ; then - # Check for device-mapper header. - AC_CHECK_HEADER([libdevmapper.h], [], - [device_mapper_excuse="need libdevmapper header"]) -fi - -if test x"$device_mapper_excuse" = x ; then - # Check for device-mapper library. - AC_CHECK_LIB([devmapper], [dm_task_create], [], - [device_mapper_excuse="need devmapper library"]) -fi - -if test x"$device_mapper_excuse" = x ; then - # Check for device-mapper library. - AC_CHECK_LIB([devmapper], [dm_log_with_errno_init], - [], - [device_mapper_excuse="need devmapper library"]) -fi - -if test x"$device_mapper_excuse" = x ; then - LIBDEVMAPPER="-ldevmapper" - AC_DEFINE([HAVE_DEVICE_MAPPER], [1], - [Define to 1 if you have the devmapper library.]) -fi - -AC_SUBST([LIBDEVMAPPER]) - -LIBGEOM= -if test x$host_kernel = xkfreebsd; then - AC_CHECK_LIB([geom], [geom_gettree], [], - [AC_MSG_ERROR([Your platform requires libgeom])]) - LIBGEOM="-lgeom" -fi - -AC_SUBST([LIBGEOM]) - -AC_ARG_ENABLE([liblzma], - [AS_HELP_STRING([--enable-liblzma], - [enable liblzma integration (default=guessed)])]) -if test x"$enable_liblzma" = xno ; then - liblzma_excuse="explicitly disabled" -fi - -if test x"$liblzma_excuse" = x ; then -AC_CHECK_LIB([lzma], [lzma_code], - [],[liblzma_excuse="need lzma library"]) -fi -if test x"$liblzma_excuse" = x ; then -AC_CHECK_HEADER([lzma.h], [], [liblzma_excuse="need lzma header"]) -fi - -if test x"$enable_liblzma" = xyes && test x"$liblzma_excuse" != x ; then - AC_MSG_ERROR([liblzma support was explicitly requested but requirements are not satisfied ($liblzma_excuse)]) -fi - - -if test x"$liblzma_excuse" = x ; then - LIBLZMA="-llzma" - AC_DEFINE([USE_LIBLZMA], [1], - [Define to 1 if you have the LZMA library.]) -fi - -AC_SUBST([LIBLZMA]) - -AC_ARG_ENABLE([libzfs], - [AS_HELP_STRING([--enable-libzfs], - [enable libzfs integration (default=guessed)])]) -if test x"$enable_libzfs" = xno ; then - libzfs_excuse="explicitly disabled" -fi - -if test x"$libzfs_excuse" = x ; then - # Only check for system headers if libzfs support has not been disabled. - AC_CHECK_HEADERS(libzfs.h libnvpair.h) -fi - -if test x"$libzfs_excuse" = x ; then - AC_CHECK_LIB([zfs], [libzfs_init], - [], - [libzfs_excuse="need zfs library"]) -fi - -if test x"$libzfs_excuse" = x ; then - AC_CHECK_LIB([nvpair], [nvlist_lookup_string], - [], - [libzfs_excuse="need nvpair library"]) -fi - -if test x"$enable_libzfs" = xyes && test x"$libzfs_excuse" != x ; then - AC_MSG_ERROR([libzfs support was explicitly requested but requirements are not satisfied ($libzfs_excuse)]) -fi - -if test x"$libzfs_excuse" = x ; then - # We need both libzfs and libnvpair for a successful build. - LIBZFS="-lzfs" - AC_DEFINE([HAVE_LIBZFS], [1], - [Define to 1 if you have the ZFS library.]) - LIBNVPAIR="-lnvpair" - AC_DEFINE([HAVE_LIBNVPAIR], [1], - [Define to 1 if you have the NVPAIR library.]) -fi - -AC_SUBST([LIBZFS]) -AC_SUBST([LIBNVPAIR]) - -LIBS="" - -AC_SUBST([FONT_SOURCE]) -AS_IF([test x$target_cpu = xi386 -a x$platform = xqemu], - [AC_SUBST([GRUB_BOOT_MACHINE_LINK_ADDR], 0xffe00)]) - -AC_SUBST(HAVE_ASM_USCORE) -AC_SUBST(BSS_START_SYMBOL) -AC_SUBST(END_SYMBOL) -AC_SUBST(PACKAGE) -AC_SUBST(VERSION) - -AC_ARG_ENABLE([werror], - [AS_HELP_STRING([--disable-werror], - [do not use -Werror when building GRUB])]) -if test x"$enable_werror" != xno ; then - TARGET_CFLAGS="$TARGET_CFLAGS -Werror" - HOST_CFLAGS="$HOST_CFLAGS -Werror" -fi - -TARGET_CPP="$TARGET_CC -E" -TARGET_CCAS=$TARGET_CC - -# Includes which include make-time substitutions. They must come last -# as to avoid executing top_builddir in shell. -HOST_CPPFLAGS="$HOST_CPPFLAGS -I\$(top_builddir)/include" -TARGET_CPPFLAGS="$TARGET_CPPFLAGS -I\$(top_srcdir)/include" -TARGET_CPPFLAGS="$TARGET_CPPFLAGS -I\$(top_builddir)/include" - -GRUB_TARGET_CPU="${target_cpu}" -GRUB_PLATFORM="${platform}" - -AC_SUBST(GRUB_TARGET_CPU) -AC_SUBST(GRUB_PLATFORM) - -AC_SUBST(TARGET_OBJCONV) -AC_SUBST(TARGET_CPP) -AC_SUBST(TARGET_CCAS) -AC_SUBST(TARGET_OBJ2ELF) -AC_SUBST(TARGET_MODULE_FORMAT) -AC_SUBST(TARGET_CC_VERSION) - -AC_SUBST(TARGET_CFLAGS) -AC_SUBST(TARGET_LDFLAGS) -AC_SUBST(TARGET_CPPFLAGS) -AC_SUBST(TARGET_CCASFLAGS) - -AC_SUBST(TARGET_IMG_LDFLAGS) -AC_SUBST(TARGET_IMG_CFLAGS) -AC_SUBST(TARGET_IMG_BASE_LDOPT) -AC_SUBST(TARGET_APPLE_LINKER) - -AC_SUBST(HOST_CFLAGS) -AC_SUBST(HOST_LDFLAGS) -AC_SUBST(HOST_CPPFLAGS) -AC_SUBST(HOST_CCASFLAGS) - -AC_SUBST(BUILD_LIBM) - -# -# Automake conditionals -# - -AM_CONDITIONAL([COND_real_platform], [test x$platform != xnone]) -AM_CONDITIONAL([COND_emu], [test x$platform = xemu]) -AM_CONDITIONAL([COND_i386_pc], [test x$target_cpu = xi386 -a x$platform = xpc]) -AM_CONDITIONAL([COND_i386_efi], [test x$target_cpu = xi386 -a x$platform = xefi]) -AM_CONDITIONAL([COND_ia64_efi], [test x$target_cpu = xia64 -a x$platform = xefi]) -AM_CONDITIONAL([COND_i386_qemu], [test x$target_cpu = xi386 -a x$platform = xqemu]) -AM_CONDITIONAL([COND_i386_ieee1275], [test x$target_cpu = xi386 -a x$platform = xieee1275]) -AM_CONDITIONAL([COND_i386_coreboot], [test x$target_cpu = xi386 -a x$platform = xcoreboot]) -AM_CONDITIONAL([COND_i386_multiboot], [test x$target_cpu = xi386 -a x$platform = xmultiboot]) -AM_CONDITIONAL([COND_x86_64_efi], [test x$target_cpu = xx86_64 -a x$platform = xefi]) -AM_CONDITIONAL([COND_i386_xen], [test x$target_cpu = xi386 -a x$platform = xxen]) -AM_CONDITIONAL([COND_i386_xen_pvh], [test x$target_cpu = xi386 -a x$platform = xxen_pvh]) -AM_CONDITIONAL([COND_x86_64_xen], [test x$target_cpu = xx86_64 -a x$platform = xxen]) -AM_CONDITIONAL([COND_mips_loongson], [test x$target_cpu = xmipsel -a x$platform = xloongson]) -AM_CONDITIONAL([COND_mips_qemu_mips], [test "(" x$target_cpu = xmips -o x$target_cpu = xmipsel ")" -a x$platform = xqemu_mips]) -AM_CONDITIONAL([COND_mips_arc], [test "(" x$target_cpu = xmips -o x$target_cpu = xmipsel ")" -a x$platform = xarc]) -AM_CONDITIONAL([COND_sparc64_ieee1275], [test x$target_cpu = xsparc64 -a x$platform = xieee1275]) -AM_CONDITIONAL([COND_sparc64_emu], [test x$target_cpu = xsparc64 -a x$platform = xemu]) -AM_CONDITIONAL([COND_powerpc_ieee1275], [test x$target_cpu = xpowerpc -a x$platform = xieee1275]) -AM_CONDITIONAL([COND_mips], [test x$target_cpu = xmips -o x$target_cpu = xmipsel]) -AM_CONDITIONAL([COND_mipsel], [test x$target_cpu = xmipsel]) -AM_CONDITIONAL([COND_mipseb], [test x$target_cpu = xmips]) -AM_CONDITIONAL([COND_arm], [test x$target_cpu = xarm ]) -AM_CONDITIONAL([COND_arm_uboot], [test x$target_cpu = xarm -a x$platform = xuboot]) -AM_CONDITIONAL([COND_arm_coreboot], [test x$target_cpu = xarm -a x$platform = xcoreboot]) -AM_CONDITIONAL([COND_arm_efi], [test x$target_cpu = xarm -a x$platform = xefi]) -AM_CONDITIONAL([COND_arm64], [test x$target_cpu = xarm64 ]) -AM_CONDITIONAL([COND_arm64_efi], [test x$target_cpu = xarm64 -a x$platform = xefi]) -AM_CONDITIONAL([COND_riscv32], [test x$target_cpu = xriscv32 ]) -AM_CONDITIONAL([COND_riscv64], [test x$target_cpu = xriscv64 ]) -AM_CONDITIONAL([COND_riscv32_efi], [test x$target_cpu = xriscv32 -a x$platform = xefi]) -AM_CONDITIONAL([COND_riscv64_efi], [test x$target_cpu = xriscv64 -a x$platform = xefi]) - -AM_CONDITIONAL([COND_HOST_HURD], [test x$host_kernel = xhurd]) -AM_CONDITIONAL([COND_HOST_LINUX], [test x$host_kernel = xlinux]) -AM_CONDITIONAL([COND_HOST_NETBSD], [test x$host_kernel = xnetbsd]) -AM_CONDITIONAL([COND_HOST_WINDOWS], [test x$host_kernel = xwindows]) -AM_CONDITIONAL([COND_HOST_KFREEBSD], [test x$host_kernel = xkfreebsd]) -AM_CONDITIONAL([COND_HOST_XNU], [test x$host_kernel = xxnu]) -AM_CONDITIONAL([COND_HOST_ILLUMOS], [test x$host_kernel = xillumos]) - -AM_CONDITIONAL([COND_MAN_PAGES], [test x$cross_compiling = xno -a x$HELP2MAN != x]) -AM_CONDITIONAL([COND_GRUB_EMU_SDL], [test x$enable_grub_emu_sdl = xyes]) -AM_CONDITIONAL([COND_GRUB_EMU_PCI], [test x$enable_grub_emu_pci = xyes]) -AM_CONDITIONAL([COND_GRUB_MKFONT], [test x$enable_grub_mkfont = xyes]) -AM_CONDITIONAL([COND_GRUB_MOUNT], [test x$enable_grub_mount = xyes]) -AM_CONDITIONAL([COND_HAVE_FONT_SOURCE], [test x$FONT_SOURCE != x]) -if test x$FONT_SOURCE != x ; then - HAVE_FONT_SOURCE=1 -else - HAVE_FONT_SOURCE=0 -fi -AC_SUBST(HAVE_FONT_SOURCE) -AM_CONDITIONAL([COND_APPLE_LINKER], [test x$TARGET_APPLE_LINKER = x1]) -AM_CONDITIONAL([COND_ENABLE_EFIEMU], [test x$enable_efiemu = xyes]) -AM_CONDITIONAL([COND_ENABLE_CACHE_STATS], [test x$DISK_CACHE_STATS = x1]) -AM_CONDITIONAL([COND_ENABLE_BOOT_TIME_STATS], [test x$BOOT_TIME_STATS = x1]) - -AM_CONDITIONAL([COND_HAVE_CXX], [test x$HAVE_CXX = xyes]) - -AM_CONDITIONAL([COND_HAVE_ASM_USCORE], [test x$HAVE_ASM_USCORE = x1]) -AM_CONDITIONAL([COND_STARFIELD], [test "x$starfield_excuse" = x]) -AM_CONDITIONAL([COND_HAVE_EXEC], [test "x$have_exec" = xy]) - -test "x$prefix" = xNONE && prefix="$ac_default_prefix" -test "x$exec_prefix" = xNONE && exec_prefix="${prefix}" -datarootdir="$(eval echo "$datarootdir")" -grub_libdir="$(eval echo "$libdir")" -grub_localedir="$(eval echo "$localedir")" -grub_datadir="$(eval echo "$datadir")" -grub_sysconfdir="$(eval echo "$sysconfdir")" -AC_DEFINE_UNQUOTED(LOCALEDIR, "$grub_localedir", [Locale dir]) -AC_DEFINE_UNQUOTED(GRUB_LIBDIR, "$grub_libdir", [Library dir]) -AC_DEFINE_UNQUOTED(GRUB_DATADIR, "$grub_datadir", [Data dir]) -AC_DEFINE_UNQUOTED(GRUB_SYSCONFDIR, "$grub_sysconfdir", [Configuration dir]) - - -# Output files. -if test "$platform" != none; then - cpudir="${target_cpu}" - if test x${cpudir} = xmipsel; then - cpudir=mips; - fi - grub_CHECK_LINK_DIR - if test x"$link_dir" = xyes ; then - AC_CONFIG_LINKS([include/grub/cpu:include/grub/$cpudir]) - if test "$platform" != emu ; then - AC_CONFIG_LINKS([include/grub/machine:include/grub/$cpudir/$platform]) - fi - else - mkdir -p include/grub 2>/dev/null - rm -rf include/grub/cpu - cp -rp $srcdir/include/grub/$cpudir include/grub/cpu 2>/dev/null - if test "$platform" != emu ; then - rm -rf include/grub/machine - cp -rp $srcdir/include/grub/$cpudir/$platform include/grub/machine 2>/dev/null - fi - fi -else - # Just enough to stop the compiler failing with -I$(srcdir)/include. - mkdir -p include 2>/dev/null - rm -rf include/grub/cpu include/grub/machine -fi - -AC_CONFIG_FILES([Makefile]) -AC_CONFIG_FILES([grub-core/Makefile]) -AC_CONFIG_FILES([grub-core/lib/gnulib/Makefile]) -AC_CONFIG_FILES([po/Makefile.in]) -AC_CONFIG_FILES([docs/Makefile]) -AC_CONFIG_FILES([util/bash-completion.d/Makefile]) -AC_CONFIG_FILES([stamp-h], [echo timestamp > stamp-h]) -AC_CONFIG_FILES([config.h]) - -AC_OUTPUT -[ -echo "*******************************************************" -echo GRUB2 will be compiled with following components: -echo Platform: "$target_cpu"-"$platform" -if [ x"$platform" = xemu ]; then -if [ x"$grub_emu_sdl_excuse" = x ]; then -echo SDL support for grub-emu: Yes -else -echo SDL support for grub-emu: No "($grub_emu_sdl_excuse)" -fi -if [ x"$grub_emu_pci_excuse" = x ]; then -echo PCI support for grub-emu: Yes -else -echo PCI support for grub-emu: No "($grub_emu_pci_excuse)" -fi -fi -if test x"$device_mapper_excuse" = x ; then -echo With devmapper support: Yes -else -echo With devmapper support: No "($device_mapper_excuse)" -fi -if [ x"$enable_mm_debug" = xyes ]; then -echo With memory debugging: Yes -else -echo With memory debugging: No -fi -if [ x"$enable_cache_stats" = xyes ]; then -echo With disk cache statistics: Yes -else -echo With disk cache statistics: No -fi - -if [ x"$enable_boot_time" = xyes ]; then -echo With boot time statistics: Yes -else -echo With boot time statistics: No -fi - -if [ x"$efiemu_excuse" = x ]; then -echo efiemu runtime: Yes -else -echo efiemu runtime: No "($efiemu_excuse)" -fi -if [ x"$grub_mkfont_excuse" = x ]; then -echo grub-mkfont: Yes -else -echo grub-mkfont: No "($grub_mkfont_excuse)" -fi -if [ x"$grub_mount_excuse" = x ]; then -echo grub-mount: Yes -else -echo grub-mount: No "($grub_mount_excuse)" -fi -if [ x"$starfield_excuse" = x ]; then -echo starfield theme: Yes -echo With DejaVuSans font from $DJVU_FONT_SOURCE -else -echo starfield theme: No "($starfield_excuse)" -fi -if [ x"$libzfs_excuse" = x ]; then -echo With libzfs support: Yes -else -echo With libzfs support: No "($libzfs_excuse)" -fi -if [ x"$grub_build_mkfont_excuse" = x ]; then - echo Build-time grub-mkfont: Yes - if test "x$FONT_SOURCE" = x ; then - echo "Without unifont" - else - echo "With unifont from $FONT_SOURCE" - fi -else - echo Build-time grub-mkfont: No "($grub_build_mkfont_excuse)" - echo "Without unifont (no build-time grub-mkfont)" -fi -if test x"$liblzma_excuse" != x ; then -echo "Without liblzma (no support for XZ-compressed mips images) ($liblzma_excuse)" -else -echo "With liblzma from $LIBLZMA (support for XZ-compressed mips images)" -fi -echo "*******************************************************" -] diff --git a/thirdparty/grub-2.04/coreboot.cfg b/thirdparty/grub-2.04/coreboot.cfg deleted file mode 100644 index 188090d3a..000000000 --- a/thirdparty/grub-2.04/coreboot.cfg +++ /dev/null @@ -1,3 +0,0 @@ -if test -f (cbfsdisk)/etc/grub.cfg; then - source (cbfsdisk)/etc/grub.cfg -fi diff --git a/thirdparty/grub-2.04/docs/Makefile.am b/thirdparty/grub-2.04/docs/Makefile.am deleted file mode 100644 index 93eb39627..000000000 --- a/thirdparty/grub-2.04/docs/Makefile.am +++ /dev/null @@ -1,9 +0,0 @@ -AUTOMAKE_OPTIONS = subdir-objects - -# AM_MAKEINFOFLAGS = --no-split --no-validate -info_TEXINFOS = grub.texi grub-dev.texi -grub_TEXINFOS = fdl.texi - -EXTRA_DIST = font_char_metrics.png font_char_metrics.txt - - diff --git a/thirdparty/grub-2.04/docs/Makefile.in b/thirdparty/grub-2.04/docs/Makefile.in deleted file mode 100644 index f2f975472..000000000 --- a/thirdparty/grub-2.04/docs/Makefile.in +++ /dev/null @@ -1,1750 +0,0 @@ -# Makefile.in generated by automake 1.15 from Makefile.am. -# @configure_input@ - -# Copyright (C) 1994-2014 Free Software Foundation, Inc. - -# This Makefile.in is free software; the Free Software Foundation -# gives unlimited permission to copy and/or distribute it, -# with or without modifications, as long as this notice is preserved. - -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY, to the extent permitted by law; without -# even the implied warranty of MERCHANTABILITY or FITNESS FOR A -# PARTICULAR PURPOSE. - -@SET_MAKE@ -VPATH = @srcdir@ -am__is_gnu_make = { \ - if test -z '$(MAKELEVEL)'; then \ - false; \ - elif test -n '$(MAKE_HOST)'; then \ - true; \ - elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \ - true; \ - else \ - false; \ - fi; \ -} -am__make_running_with_option = \ - case $${target_option-} in \ - ?) ;; \ - *) echo "am__make_running_with_option: internal error: invalid" \ - "target option '$${target_option-}' specified" >&2; \ - exit 1;; \ - esac; \ - has_opt=no; \ - sane_makeflags=$$MAKEFLAGS; \ - if $(am__is_gnu_make); then \ - sane_makeflags=$$MFLAGS; \ - else \ - case $$MAKEFLAGS in \ - *\\[\ \ ]*) \ - bs=\\; \ - sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \ - | sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \ - esac; \ - fi; \ - skip_next=no; \ - strip_trailopt () \ - { \ - flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \ - }; \ - for flg in $$sane_makeflags; do \ - test $$skip_next = yes && { skip_next=no; continue; }; \ - case $$flg in \ - *=*|--*) continue;; \ - -*I) strip_trailopt 'I'; skip_next=yes;; \ - -*I?*) strip_trailopt 'I';; \ - -*O) strip_trailopt 'O'; skip_next=yes;; \ - -*O?*) strip_trailopt 'O';; \ - -*l) strip_trailopt 'l'; skip_next=yes;; \ - -*l?*) strip_trailopt 'l';; \ - -[dEDm]) skip_next=yes;; \ - -[JT]) skip_next=yes;; \ - esac; \ - case $$flg in \ - *$$target_option*) has_opt=yes; break;; \ - esac; \ - done; \ - test $$has_opt = yes -am__make_dryrun = (target_option=n; $(am__make_running_with_option)) -am__make_keepgoing = (target_option=k; $(am__make_running_with_option)) -pkgdatadir = $(datadir)/@PACKAGE@ -pkgincludedir = $(includedir)/@PACKAGE@ -pkglibdir = $(libdir)/@PACKAGE@ -pkglibexecdir = $(libexecdir)/@PACKAGE@ -am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd -install_sh_DATA = $(install_sh) -c -m 644 -install_sh_PROGRAM = $(install_sh) -c -install_sh_SCRIPT = $(install_sh) -c -INSTALL_HEADER = $(INSTALL_DATA) -transform = $(program_transform_name) -NORMAL_INSTALL = : -PRE_INSTALL = : -POST_INSTALL = : -NORMAL_UNINSTALL = : -PRE_UNINSTALL = : -POST_UNINSTALL = : -build_triplet = @build@ -host_triplet = @host@ -target_triplet = @target@ -subdir = docs -ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 -am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \ - $(top_srcdir)/m4/__inline.m4 \ - $(top_srcdir)/m4/absolute-header.m4 $(top_srcdir)/m4/alloca.m4 \ - $(top_srcdir)/m4/argp.m4 $(top_srcdir)/m4/btowc.m4 \ - $(top_srcdir)/m4/builtin-expect.m4 \ - $(top_srcdir)/m4/chdir-long.m4 $(top_srcdir)/m4/close.m4 \ - $(top_srcdir)/m4/codeset.m4 $(top_srcdir)/m4/dirent_h.m4 \ - $(top_srcdir)/m4/dirfd.m4 $(top_srcdir)/m4/dirname.m4 \ - $(top_srcdir)/m4/double-slash-root.m4 $(top_srcdir)/m4/dup2.m4 \ - $(top_srcdir)/m4/eealloc.m4 $(top_srcdir)/m4/errno_h.m4 \ - $(top_srcdir)/m4/error.m4 $(top_srcdir)/m4/exponentd.m4 \ - $(top_srcdir)/m4/extensions.m4 \ - $(top_srcdir)/m4/extern-inline.m4 $(top_srcdir)/m4/fchdir.m4 \ - $(top_srcdir)/m4/fcntl-o.m4 $(top_srcdir)/m4/fcntl.m4 \ - $(top_srcdir)/m4/fcntl_h.m4 $(top_srcdir)/m4/filenamecat.m4 \ - $(top_srcdir)/m4/flexmember.m4 $(top_srcdir)/m4/float_h.m4 \ - $(top_srcdir)/m4/fnmatch.m4 $(top_srcdir)/m4/fnmatch_h.m4 \ - $(top_srcdir)/m4/fstat.m4 $(top_srcdir)/m4/getcwd.m4 \ - $(top_srcdir)/m4/getdelim.m4 $(top_srcdir)/m4/getdtablesize.m4 \ - $(top_srcdir)/m4/getline.m4 $(top_srcdir)/m4/getopt.m4 \ - $(top_srcdir)/m4/getprogname.m4 $(top_srcdir)/m4/gettext.m4 \ - $(top_srcdir)/m4/glibc21.m4 $(top_srcdir)/m4/gnulib-common.m4 \ - $(top_srcdir)/m4/gnulib-comp.m4 \ - $(top_srcdir)/m4/host-cpu-c-abi.m4 $(top_srcdir)/m4/iconv.m4 \ - $(top_srcdir)/m4/include_next.m4 \ - $(top_srcdir)/m4/intlmacosx.m4 $(top_srcdir)/m4/intmax_t.m4 \ - $(top_srcdir)/m4/inttypes_h.m4 $(top_srcdir)/m4/langinfo_h.m4 \ - $(top_srcdir)/m4/largefile.m4 $(top_srcdir)/m4/lib-ld.m4 \ - $(top_srcdir)/m4/lib-link.m4 $(top_srcdir)/m4/lib-prefix.m4 \ - $(top_srcdir)/m4/libunistring-base.m4 \ - $(top_srcdir)/m4/limits-h.m4 $(top_srcdir)/m4/localcharset.m4 \ - $(top_srcdir)/m4/locale-fr.m4 $(top_srcdir)/m4/locale-ja.m4 \ - $(top_srcdir)/m4/locale-zh.m4 $(top_srcdir)/m4/locale_h.m4 \ - $(top_srcdir)/m4/localeconv.m4 $(top_srcdir)/m4/lock.m4 \ - $(top_srcdir)/m4/longlong.m4 $(top_srcdir)/m4/lstat.m4 \ - $(top_srcdir)/m4/malloc.m4 $(top_srcdir)/m4/malloca.m4 \ - $(top_srcdir)/m4/mbrtowc.m4 $(top_srcdir)/m4/mbsinit.m4 \ - $(top_srcdir)/m4/mbsrtowcs.m4 $(top_srcdir)/m4/mbstate_t.m4 \ - $(top_srcdir)/m4/mbswidth.m4 $(top_srcdir)/m4/mbtowc.m4 \ - $(top_srcdir)/m4/memchr.m4 $(top_srcdir)/m4/mempcpy.m4 \ - $(top_srcdir)/m4/memrchr.m4 $(top_srcdir)/m4/mmap-anon.m4 \ - $(top_srcdir)/m4/mode_t.m4 $(top_srcdir)/m4/msvc-inval.m4 \ - $(top_srcdir)/m4/msvc-nothrow.m4 $(top_srcdir)/m4/multiarch.m4 \ - $(top_srcdir)/m4/nl_langinfo.m4 $(top_srcdir)/m4/nls.m4 \ - $(top_srcdir)/m4/nocrash.m4 $(top_srcdir)/m4/off_t.m4 \ - $(top_srcdir)/m4/open-cloexec.m4 $(top_srcdir)/m4/open.m4 \ - $(top_srcdir)/m4/openat.m4 $(top_srcdir)/m4/pathmax.m4 \ - $(top_srcdir)/m4/po.m4 $(top_srcdir)/m4/printf.m4 \ - $(top_srcdir)/m4/progtest.m4 \ - $(top_srcdir)/m4/pthread_rwlock_rdlock.m4 \ - $(top_srcdir)/m4/rawmemchr.m4 $(top_srcdir)/m4/realloc.m4 \ - $(top_srcdir)/m4/regex.m4 $(top_srcdir)/m4/save-cwd.m4 \ - $(top_srcdir)/m4/size_max.m4 $(top_srcdir)/m4/sleep.m4 \ - $(top_srcdir)/m4/ssize_t.m4 $(top_srcdir)/m4/stat-time.m4 \ - $(top_srcdir)/m4/stat.m4 $(top_srcdir)/m4/stdalign.m4 \ - $(top_srcdir)/m4/stdbool.m4 $(top_srcdir)/m4/stddef_h.m4 \ - $(top_srcdir)/m4/stdint.m4 $(top_srcdir)/m4/stdint_h.m4 \ - $(top_srcdir)/m4/stdio_h.m4 $(top_srcdir)/m4/stdlib_h.m4 \ - $(top_srcdir)/m4/strcase.m4 $(top_srcdir)/m4/strchrnul.m4 \ - $(top_srcdir)/m4/strdup.m4 $(top_srcdir)/m4/strerror.m4 \ - $(top_srcdir)/m4/string_h.m4 $(top_srcdir)/m4/strings_h.m4 \ - $(top_srcdir)/m4/strndup.m4 $(top_srcdir)/m4/strnlen.m4 \ - $(top_srcdir)/m4/sys_socket_h.m4 \ - $(top_srcdir)/m4/sys_stat_h.m4 $(top_srcdir)/m4/sys_types_h.m4 \ - $(top_srcdir)/m4/sysexits.m4 $(top_srcdir)/m4/threadlib.m4 \ - $(top_srcdir)/m4/time_h.m4 $(top_srcdir)/m4/unistd-safer.m4 \ - $(top_srcdir)/m4/unistd_h.m4 $(top_srcdir)/m4/vasnprintf.m4 \ - $(top_srcdir)/m4/vsnprintf.m4 $(top_srcdir)/m4/warn-on-use.m4 \ - $(top_srcdir)/m4/wchar_h.m4 $(top_srcdir)/m4/wchar_t.m4 \ - $(top_srcdir)/m4/wcrtomb.m4 $(top_srcdir)/m4/wctype_h.m4 \ - $(top_srcdir)/m4/wcwidth.m4 $(top_srcdir)/m4/wint_t.m4 \ - $(top_srcdir)/m4/xsize.m4 $(top_srcdir)/acinclude.m4 \ - $(top_srcdir)/configure.ac -am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ - $(ACLOCAL_M4) -DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/version.texi \ - $(srcdir)/stamp-vti $(srcdir)/version-dev.texi \ - $(srcdir)/stamp-1 $(am__DIST_COMMON) -mkinstalldirs = $(install_sh) -d -CONFIG_HEADER = $(top_builddir)/config-util.h -CONFIG_CLEAN_FILES = -CONFIG_CLEAN_VPATH_FILES = -AM_V_P = $(am__v_P_@AM_V@) -am__v_P_ = $(am__v_P_@AM_DEFAULT_V@) -am__v_P_0 = false -am__v_P_1 = : -AM_V_GEN = $(am__v_GEN_@AM_V@) -am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@) -am__v_GEN_0 = @echo " GEN " $@; -am__v_GEN_1 = -AM_V_at = $(am__v_at_@AM_V@) -am__v_at_ = $(am__v_at_@AM_DEFAULT_V@) -am__v_at_0 = @ -am__v_at_1 = -SOURCES = -DIST_SOURCES = -AM_V_DVIPS = $(am__v_DVIPS_@AM_V@) -am__v_DVIPS_ = $(am__v_DVIPS_@AM_DEFAULT_V@) -am__v_DVIPS_0 = @echo " DVIPS " $@; -am__v_DVIPS_1 = -AM_V_MAKEINFO = $(am__v_MAKEINFO_@AM_V@) -am__v_MAKEINFO_ = $(am__v_MAKEINFO_@AM_DEFAULT_V@) -am__v_MAKEINFO_0 = @echo " MAKEINFO" $@; -am__v_MAKEINFO_1 = -AM_V_INFOHTML = $(am__v_INFOHTML_@AM_V@) -am__v_INFOHTML_ = $(am__v_INFOHTML_@AM_DEFAULT_V@) -am__v_INFOHTML_0 = @echo " INFOHTML" $@; -am__v_INFOHTML_1 = -AM_V_TEXI2DVI = $(am__v_TEXI2DVI_@AM_V@) -am__v_TEXI2DVI_ = $(am__v_TEXI2DVI_@AM_DEFAULT_V@) -am__v_TEXI2DVI_0 = @echo " TEXI2DVI" $@; -am__v_TEXI2DVI_1 = -AM_V_TEXI2PDF = $(am__v_TEXI2PDF_@AM_V@) -am__v_TEXI2PDF_ = $(am__v_TEXI2PDF_@AM_DEFAULT_V@) -am__v_TEXI2PDF_0 = @echo " TEXI2PDF" $@; -am__v_TEXI2PDF_1 = -AM_V_texinfo = $(am__v_texinfo_@AM_V@) -am__v_texinfo_ = $(am__v_texinfo_@AM_DEFAULT_V@) -am__v_texinfo_0 = -q -am__v_texinfo_1 = -AM_V_texidevnull = $(am__v_texidevnull_@AM_V@) -am__v_texidevnull_ = $(am__v_texidevnull_@AM_DEFAULT_V@) -am__v_texidevnull_0 = > /dev/null -am__v_texidevnull_1 = -INFO_DEPS = $(srcdir)/grub.info $(srcdir)/grub-dev.info -TEXINFO_TEX = $(top_srcdir)/build-aux/texinfo.tex -am__TEXINFO_TEX_DIR = $(top_srcdir)/build-aux -DVIS = grub.dvi grub-dev.dvi -PDFS = grub.pdf grub-dev.pdf -PSS = grub.ps grub-dev.ps -HTMLS = grub.html grub-dev.html -TEXINFOS = grub.texi grub-dev.texi -TEXI2DVI = texi2dvi -TEXI2PDF = $(TEXI2DVI) --pdf --batch -MAKEINFOHTML = $(MAKEINFO) --html -AM_MAKEINFOHTMLFLAGS = $(AM_MAKEINFOFLAGS) -DVIPS = dvips -am__can_run_installinfo = \ - case $$AM_UPDATE_INFO_DIR in \ - n|no|NO) false;; \ - *) (install-info --version) >/dev/null 2>&1;; \ - esac -am__installdirs = "$(DESTDIR)$(infodir)" -am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; -am__vpath_adj = case $$p in \ - $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \ - *) f=$$p;; \ - esac; -am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`; -am__install_max = 40 -am__nobase_strip_setup = \ - srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'` -am__nobase_strip = \ - for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||" -am__nobase_list = $(am__nobase_strip_setup); \ - for p in $$list; do echo "$$p $$p"; done | \ - sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \ - $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \ - if (++n[$$2] == $(am__install_max)) \ - { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \ - END { for (dir in files) print dir, files[dir] }' -am__base_list = \ - sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \ - sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g' -am__uninstall_files_from_dir = { \ - test -z "$$files" \ - || { test ! -d "$$dir" && test ! -f "$$dir" && test ! -r "$$dir"; } \ - || { echo " ( cd '$$dir' && rm -f" $$files ")"; \ - $(am__cd) "$$dir" && rm -f $$files; }; \ - } -am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) -am__DIST_COMMON = $(grub_TEXINFOS) $(srcdir)/Makefile.in \ - $(top_srcdir)/build-aux/mdate-sh \ - $(top_srcdir)/build-aux/texinfo.tex mdate-sh texinfo.tex -DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) -ACLOCAL = @ACLOCAL@ -ALLOCA = @ALLOCA@ -ALLOCA_H = @ALLOCA_H@ -AMTAR = @AMTAR@ -AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ -APPLE_UNIVERSAL_BUILD = @APPLE_UNIVERSAL_BUILD@ -AR = @AR@ -ARFLAGS = @ARFLAGS@ -AUTOCONF = @AUTOCONF@ -AUTOHEADER = @AUTOHEADER@ -AUTOMAKE = @AUTOMAKE@ -AWK = @AWK@ -BITSIZEOF_PTRDIFF_T = @BITSIZEOF_PTRDIFF_T@ -BITSIZEOF_SIG_ATOMIC_T = @BITSIZEOF_SIG_ATOMIC_T@ -BITSIZEOF_SIZE_T = @BITSIZEOF_SIZE_T@ -BITSIZEOF_WCHAR_T = @BITSIZEOF_WCHAR_T@ -BITSIZEOF_WINT_T = @BITSIZEOF_WINT_T@ -BOOT_TIME_STATS = @BOOT_TIME_STATS@ -BSS_START_SYMBOL = @BSS_START_SYMBOL@ -BUILD_CC = @BUILD_CC@ -BUILD_CFLAGS = @BUILD_CFLAGS@ -BUILD_CPPFLAGS = @BUILD_CPPFLAGS@ -BUILD_EXEEXT = @BUILD_EXEEXT@ -BUILD_FREETYPE_CFLAGS = @BUILD_FREETYPE_CFLAGS@ -BUILD_FREETYPE_LIBS = @BUILD_FREETYPE_LIBS@ -BUILD_LDFLAGS = @BUILD_LDFLAGS@ -BUILD_LIBM = @BUILD_LIBM@ -BUILD_SHEBANG = @BUILD_SHEBANG@ -BUILD_SIZEOF_LONG = @BUILD_SIZEOF_LONG@ -BUILD_SIZEOF_VOID_P = @BUILD_SIZEOF_VOID_P@ -BUILD_WORDS_BIGENDIAN = @BUILD_WORDS_BIGENDIAN@ -CC = @CC@ -CCAS = @CCAS@ -CCASDEPMODE = @CCASDEPMODE@ -CCASFLAGS = @CCASFLAGS@ -CCDEPMODE = @CCDEPMODE@ -CFLAGS = @CFLAGS@ -CMP = @CMP@ -CPP = @CPP@ -CPPFLAGS = @CPPFLAGS@ -CXX = @CXX@ -CXXDEPMODE = @CXXDEPMODE@ -CXXFLAGS = @CXXFLAGS@ -CYGPATH_W = @CYGPATH_W@ -DEFS = @DEFS@ -DEPDIR = @DEPDIR@ -DISK_CACHE_STATS = @DISK_CACHE_STATS@ -DJVU_FONT_SOURCE = @DJVU_FONT_SOURCE@ -ECHO_C = @ECHO_C@ -ECHO_N = @ECHO_N@ -ECHO_T = @ECHO_T@ -EFIEMU64_LINK_FORMAT = @EFIEMU64_LINK_FORMAT@ -EGREP = @EGREP@ -EMULTIHOP_HIDDEN = @EMULTIHOP_HIDDEN@ -EMULTIHOP_VALUE = @EMULTIHOP_VALUE@ -END_SYMBOL = @END_SYMBOL@ -ENOLINK_HIDDEN = @ENOLINK_HIDDEN@ -ENOLINK_VALUE = @ENOLINK_VALUE@ -EOVERFLOW_HIDDEN = @EOVERFLOW_HIDDEN@ -EOVERFLOW_VALUE = @EOVERFLOW_VALUE@ -ERRNO_H = @ERRNO_H@ -EXEEXT = @EXEEXT@ -FLOAT_H = @FLOAT_H@ -FNMATCH_H = @FNMATCH_H@ -FONT_SOURCE = @FONT_SOURCE@ -FREETYPE_CFLAGS = @FREETYPE_CFLAGS@ -FREETYPE_LIBS = @FREETYPE_LIBS@ -GETOPT_CDEFS_H = @GETOPT_CDEFS_H@ -GETOPT_H = @GETOPT_H@ -GETTEXT_MACRO_VERSION = @GETTEXT_MACRO_VERSION@ -GLIBC21 = @GLIBC21@ -GMSGFMT = @GMSGFMT@ -GMSGFMT_015 = @GMSGFMT_015@ -GNULIB_ALPHASORT = @GNULIB_ALPHASORT@ -GNULIB_ATOLL = @GNULIB_ATOLL@ -GNULIB_BTOWC = @GNULIB_BTOWC@ -GNULIB_CALLOC_POSIX = @GNULIB_CALLOC_POSIX@ -GNULIB_CANONICALIZE_FILE_NAME = @GNULIB_CANONICALIZE_FILE_NAME@ -GNULIB_CHDIR = @GNULIB_CHDIR@ -GNULIB_CHOWN = @GNULIB_CHOWN@ -GNULIB_CLOSE = @GNULIB_CLOSE@ -GNULIB_CLOSEDIR = @GNULIB_CLOSEDIR@ -GNULIB_CTIME = @GNULIB_CTIME@ -GNULIB_DIRFD = @GNULIB_DIRFD@ -GNULIB_DPRINTF = @GNULIB_DPRINTF@ -GNULIB_DUP = @GNULIB_DUP@ -GNULIB_DUP2 = @GNULIB_DUP2@ -GNULIB_DUP3 = @GNULIB_DUP3@ -GNULIB_DUPLOCALE = @GNULIB_DUPLOCALE@ -GNULIB_ENVIRON = @GNULIB_ENVIRON@ -GNULIB_EUIDACCESS = @GNULIB_EUIDACCESS@ -GNULIB_EXPLICIT_BZERO = @GNULIB_EXPLICIT_BZERO@ -GNULIB_FACCESSAT = @GNULIB_FACCESSAT@ -GNULIB_FCHDIR = @GNULIB_FCHDIR@ -GNULIB_FCHMODAT = @GNULIB_FCHMODAT@ -GNULIB_FCHOWNAT = @GNULIB_FCHOWNAT@ -GNULIB_FCLOSE = @GNULIB_FCLOSE@ -GNULIB_FCNTL = @GNULIB_FCNTL@ -GNULIB_FDATASYNC = @GNULIB_FDATASYNC@ -GNULIB_FDOPEN = @GNULIB_FDOPEN@ -GNULIB_FDOPENDIR = @GNULIB_FDOPENDIR@ -GNULIB_FFLUSH = @GNULIB_FFLUSH@ -GNULIB_FFS = @GNULIB_FFS@ -GNULIB_FFSL = @GNULIB_FFSL@ -GNULIB_FFSLL = @GNULIB_FFSLL@ -GNULIB_FGETC = @GNULIB_FGETC@ -GNULIB_FGETS = @GNULIB_FGETS@ -GNULIB_FNMATCH = @GNULIB_FNMATCH@ -GNULIB_FOPEN = @GNULIB_FOPEN@ -GNULIB_FPRINTF = @GNULIB_FPRINTF@ -GNULIB_FPRINTF_POSIX = @GNULIB_FPRINTF_POSIX@ -GNULIB_FPURGE = @GNULIB_FPURGE@ -GNULIB_FPUTC = @GNULIB_FPUTC@ -GNULIB_FPUTS = @GNULIB_FPUTS@ -GNULIB_FREAD = @GNULIB_FREAD@ -GNULIB_FREOPEN = @GNULIB_FREOPEN@ -GNULIB_FSCANF = @GNULIB_FSCANF@ -GNULIB_FSEEK = @GNULIB_FSEEK@ -GNULIB_FSEEKO = @GNULIB_FSEEKO@ -GNULIB_FSTAT = @GNULIB_FSTAT@ -GNULIB_FSTATAT = @GNULIB_FSTATAT@ -GNULIB_FSYNC = @GNULIB_FSYNC@ -GNULIB_FTELL = @GNULIB_FTELL@ -GNULIB_FTELLO = @GNULIB_FTELLO@ -GNULIB_FTRUNCATE = @GNULIB_FTRUNCATE@ -GNULIB_FUTIMENS = @GNULIB_FUTIMENS@ -GNULIB_FWRITE = @GNULIB_FWRITE@ -GNULIB_GETC = @GNULIB_GETC@ -GNULIB_GETCHAR = @GNULIB_GETCHAR@ -GNULIB_GETCWD = @GNULIB_GETCWD@ -GNULIB_GETDELIM = @GNULIB_GETDELIM@ -GNULIB_GETDOMAINNAME = @GNULIB_GETDOMAINNAME@ -GNULIB_GETDTABLESIZE = @GNULIB_GETDTABLESIZE@ -GNULIB_GETGROUPS = @GNULIB_GETGROUPS@ -GNULIB_GETHOSTNAME = @GNULIB_GETHOSTNAME@ -GNULIB_GETLINE = @GNULIB_GETLINE@ -GNULIB_GETLOADAVG = @GNULIB_GETLOADAVG@ -GNULIB_GETLOGIN = @GNULIB_GETLOGIN@ -GNULIB_GETLOGIN_R = @GNULIB_GETLOGIN_R@ -GNULIB_GETPAGESIZE = @GNULIB_GETPAGESIZE@ -GNULIB_GETPASS = @GNULIB_GETPASS@ -GNULIB_GETSUBOPT = @GNULIB_GETSUBOPT@ -GNULIB_GETTIMEOFDAY = @GNULIB_GETTIMEOFDAY@ -GNULIB_GETUSERSHELL = @GNULIB_GETUSERSHELL@ -GNULIB_GL_UNISTD_H_GETOPT = @GNULIB_GL_UNISTD_H_GETOPT@ -GNULIB_GRANTPT = @GNULIB_GRANTPT@ -GNULIB_GROUP_MEMBER = @GNULIB_GROUP_MEMBER@ -GNULIB_ISATTY = @GNULIB_ISATTY@ -GNULIB_ISWBLANK = @GNULIB_ISWBLANK@ -GNULIB_ISWCTYPE = @GNULIB_ISWCTYPE@ -GNULIB_LCHMOD = @GNULIB_LCHMOD@ -GNULIB_LCHOWN = @GNULIB_LCHOWN@ -GNULIB_LINK = @GNULIB_LINK@ -GNULIB_LINKAT = @GNULIB_LINKAT@ -GNULIB_LOCALECONV = @GNULIB_LOCALECONV@ -GNULIB_LOCALENAME = @GNULIB_LOCALENAME@ -GNULIB_LOCALTIME = @GNULIB_LOCALTIME@ -GNULIB_LSEEK = @GNULIB_LSEEK@ -GNULIB_LSTAT = @GNULIB_LSTAT@ -GNULIB_MALLOC_POSIX = @GNULIB_MALLOC_POSIX@ -GNULIB_MBRLEN = @GNULIB_MBRLEN@ -GNULIB_MBRTOWC = @GNULIB_MBRTOWC@ -GNULIB_MBSCASECMP = @GNULIB_MBSCASECMP@ -GNULIB_MBSCASESTR = @GNULIB_MBSCASESTR@ -GNULIB_MBSCHR = @GNULIB_MBSCHR@ -GNULIB_MBSCSPN = @GNULIB_MBSCSPN@ -GNULIB_MBSINIT = @GNULIB_MBSINIT@ -GNULIB_MBSLEN = @GNULIB_MBSLEN@ -GNULIB_MBSNCASECMP = @GNULIB_MBSNCASECMP@ -GNULIB_MBSNLEN = @GNULIB_MBSNLEN@ -GNULIB_MBSNRTOWCS = @GNULIB_MBSNRTOWCS@ -GNULIB_MBSPBRK = @GNULIB_MBSPBRK@ -GNULIB_MBSPCASECMP = @GNULIB_MBSPCASECMP@ -GNULIB_MBSRCHR = @GNULIB_MBSRCHR@ -GNULIB_MBSRTOWCS = @GNULIB_MBSRTOWCS@ -GNULIB_MBSSEP = @GNULIB_MBSSEP@ -GNULIB_MBSSPN = @GNULIB_MBSSPN@ -GNULIB_MBSSTR = @GNULIB_MBSSTR@ -GNULIB_MBSTOK_R = @GNULIB_MBSTOK_R@ -GNULIB_MBTOWC = @GNULIB_MBTOWC@ -GNULIB_MEMCHR = @GNULIB_MEMCHR@ -GNULIB_MEMMEM = @GNULIB_MEMMEM@ -GNULIB_MEMPCPY = @GNULIB_MEMPCPY@ -GNULIB_MEMRCHR = @GNULIB_MEMRCHR@ -GNULIB_MKDIRAT = @GNULIB_MKDIRAT@ -GNULIB_MKDTEMP = @GNULIB_MKDTEMP@ -GNULIB_MKFIFO = @GNULIB_MKFIFO@ -GNULIB_MKFIFOAT = @GNULIB_MKFIFOAT@ -GNULIB_MKNOD = @GNULIB_MKNOD@ -GNULIB_MKNODAT = @GNULIB_MKNODAT@ -GNULIB_MKOSTEMP = @GNULIB_MKOSTEMP@ -GNULIB_MKOSTEMPS = @GNULIB_MKOSTEMPS@ -GNULIB_MKSTEMP = @GNULIB_MKSTEMP@ -GNULIB_MKSTEMPS = @GNULIB_MKSTEMPS@ -GNULIB_MKTIME = @GNULIB_MKTIME@ -GNULIB_NANOSLEEP = @GNULIB_NANOSLEEP@ -GNULIB_NL_LANGINFO = @GNULIB_NL_LANGINFO@ -GNULIB_NONBLOCKING = @GNULIB_NONBLOCKING@ -GNULIB_OBSTACK_PRINTF = @GNULIB_OBSTACK_PRINTF@ -GNULIB_OBSTACK_PRINTF_POSIX = @GNULIB_OBSTACK_PRINTF_POSIX@ -GNULIB_OPEN = @GNULIB_OPEN@ -GNULIB_OPENAT = @GNULIB_OPENAT@ -GNULIB_OPENDIR = @GNULIB_OPENDIR@ -GNULIB_OVERRIDES_STRUCT_STAT = @GNULIB_OVERRIDES_STRUCT_STAT@ -GNULIB_OVERRIDES_WINT_T = @GNULIB_OVERRIDES_WINT_T@ -GNULIB_PCLOSE = @GNULIB_PCLOSE@ -GNULIB_PERROR = @GNULIB_PERROR@ -GNULIB_PIPE = @GNULIB_PIPE@ -GNULIB_PIPE2 = @GNULIB_PIPE2@ -GNULIB_POPEN = @GNULIB_POPEN@ -GNULIB_POSIX_OPENPT = @GNULIB_POSIX_OPENPT@ -GNULIB_PREAD = @GNULIB_PREAD@ -GNULIB_PRINTF = @GNULIB_PRINTF@ -GNULIB_PRINTF_POSIX = @GNULIB_PRINTF_POSIX@ -GNULIB_PTSNAME = @GNULIB_PTSNAME@ -GNULIB_PTSNAME_R = @GNULIB_PTSNAME_R@ -GNULIB_PUTC = @GNULIB_PUTC@ -GNULIB_PUTCHAR = @GNULIB_PUTCHAR@ -GNULIB_PUTENV = @GNULIB_PUTENV@ -GNULIB_PUTS = @GNULIB_PUTS@ -GNULIB_PWRITE = @GNULIB_PWRITE@ -GNULIB_QSORT_R = @GNULIB_QSORT_R@ -GNULIB_RANDOM = @GNULIB_RANDOM@ -GNULIB_RANDOM_R = @GNULIB_RANDOM_R@ -GNULIB_RAWMEMCHR = @GNULIB_RAWMEMCHR@ -GNULIB_READ = @GNULIB_READ@ -GNULIB_READDIR = @GNULIB_READDIR@ -GNULIB_READLINK = @GNULIB_READLINK@ -GNULIB_READLINKAT = @GNULIB_READLINKAT@ -GNULIB_REALLOCARRAY = @GNULIB_REALLOCARRAY@ -GNULIB_REALLOC_POSIX = @GNULIB_REALLOC_POSIX@ -GNULIB_REALPATH = @GNULIB_REALPATH@ -GNULIB_REMOVE = @GNULIB_REMOVE@ -GNULIB_RENAME = @GNULIB_RENAME@ -GNULIB_RENAMEAT = @GNULIB_RENAMEAT@ -GNULIB_REWINDDIR = @GNULIB_REWINDDIR@ -GNULIB_RMDIR = @GNULIB_RMDIR@ -GNULIB_RPMATCH = @GNULIB_RPMATCH@ -GNULIB_SCANDIR = @GNULIB_SCANDIR@ -GNULIB_SCANF = @GNULIB_SCANF@ -GNULIB_SECURE_GETENV = @GNULIB_SECURE_GETENV@ -GNULIB_SETENV = @GNULIB_SETENV@ -GNULIB_SETHOSTNAME = @GNULIB_SETHOSTNAME@ -GNULIB_SETLOCALE = @GNULIB_SETLOCALE@ -GNULIB_SLEEP = @GNULIB_SLEEP@ -GNULIB_SNPRINTF = @GNULIB_SNPRINTF@ -GNULIB_SPRINTF_POSIX = @GNULIB_SPRINTF_POSIX@ -GNULIB_STAT = @GNULIB_STAT@ -GNULIB_STDIO_H_NONBLOCKING = @GNULIB_STDIO_H_NONBLOCKING@ -GNULIB_STDIO_H_SIGPIPE = @GNULIB_STDIO_H_SIGPIPE@ -GNULIB_STPCPY = @GNULIB_STPCPY@ -GNULIB_STPNCPY = @GNULIB_STPNCPY@ -GNULIB_STRCASESTR = @GNULIB_STRCASESTR@ -GNULIB_STRCHRNUL = @GNULIB_STRCHRNUL@ -GNULIB_STRDUP = @GNULIB_STRDUP@ -GNULIB_STRERROR = @GNULIB_STRERROR@ -GNULIB_STRERROR_R = @GNULIB_STRERROR_R@ -GNULIB_STRFTIME = @GNULIB_STRFTIME@ -GNULIB_STRNCAT = @GNULIB_STRNCAT@ -GNULIB_STRNDUP = @GNULIB_STRNDUP@ -GNULIB_STRNLEN = @GNULIB_STRNLEN@ -GNULIB_STRPBRK = @GNULIB_STRPBRK@ -GNULIB_STRPTIME = @GNULIB_STRPTIME@ -GNULIB_STRSEP = @GNULIB_STRSEP@ -GNULIB_STRSIGNAL = @GNULIB_STRSIGNAL@ -GNULIB_STRSTR = @GNULIB_STRSTR@ -GNULIB_STRTOD = @GNULIB_STRTOD@ -GNULIB_STRTOK_R = @GNULIB_STRTOK_R@ -GNULIB_STRTOLL = @GNULIB_STRTOLL@ -GNULIB_STRTOULL = @GNULIB_STRTOULL@ -GNULIB_STRVERSCMP = @GNULIB_STRVERSCMP@ -GNULIB_SYMLINK = @GNULIB_SYMLINK@ -GNULIB_SYMLINKAT = @GNULIB_SYMLINKAT@ -GNULIB_SYSTEM_POSIX = @GNULIB_SYSTEM_POSIX@ -GNULIB_TIMEGM = @GNULIB_TIMEGM@ -GNULIB_TIME_R = @GNULIB_TIME_R@ -GNULIB_TIME_RZ = @GNULIB_TIME_RZ@ -GNULIB_TMPFILE = @GNULIB_TMPFILE@ -GNULIB_TOWCTRANS = @GNULIB_TOWCTRANS@ -GNULIB_TRUNCATE = @GNULIB_TRUNCATE@ -GNULIB_TTYNAME_R = @GNULIB_TTYNAME_R@ -GNULIB_TZSET = @GNULIB_TZSET@ -GNULIB_UNISTD_H_NONBLOCKING = @GNULIB_UNISTD_H_NONBLOCKING@ -GNULIB_UNISTD_H_SIGPIPE = @GNULIB_UNISTD_H_SIGPIPE@ -GNULIB_UNLINK = @GNULIB_UNLINK@ -GNULIB_UNLINKAT = @GNULIB_UNLINKAT@ -GNULIB_UNLOCKPT = @GNULIB_UNLOCKPT@ -GNULIB_UNSETENV = @GNULIB_UNSETENV@ -GNULIB_USLEEP = @GNULIB_USLEEP@ -GNULIB_UTIMENSAT = @GNULIB_UTIMENSAT@ -GNULIB_VASPRINTF = @GNULIB_VASPRINTF@ -GNULIB_VDPRINTF = @GNULIB_VDPRINTF@ -GNULIB_VFPRINTF = @GNULIB_VFPRINTF@ -GNULIB_VFPRINTF_POSIX = @GNULIB_VFPRINTF_POSIX@ -GNULIB_VFSCANF = @GNULIB_VFSCANF@ -GNULIB_VPRINTF = @GNULIB_VPRINTF@ -GNULIB_VPRINTF_POSIX = @GNULIB_VPRINTF_POSIX@ -GNULIB_VSCANF = @GNULIB_VSCANF@ -GNULIB_VSNPRINTF = @GNULIB_VSNPRINTF@ -GNULIB_VSPRINTF_POSIX = @GNULIB_VSPRINTF_POSIX@ -GNULIB_WCPCPY = @GNULIB_WCPCPY@ -GNULIB_WCPNCPY = @GNULIB_WCPNCPY@ -GNULIB_WCRTOMB = @GNULIB_WCRTOMB@ -GNULIB_WCSCASECMP = @GNULIB_WCSCASECMP@ -GNULIB_WCSCAT = @GNULIB_WCSCAT@ -GNULIB_WCSCHR = @GNULIB_WCSCHR@ -GNULIB_WCSCMP = @GNULIB_WCSCMP@ -GNULIB_WCSCOLL = @GNULIB_WCSCOLL@ -GNULIB_WCSCPY = @GNULIB_WCSCPY@ -GNULIB_WCSCSPN = @GNULIB_WCSCSPN@ -GNULIB_WCSDUP = @GNULIB_WCSDUP@ -GNULIB_WCSFTIME = @GNULIB_WCSFTIME@ -GNULIB_WCSLEN = @GNULIB_WCSLEN@ -GNULIB_WCSNCASECMP = @GNULIB_WCSNCASECMP@ -GNULIB_WCSNCAT = @GNULIB_WCSNCAT@ -GNULIB_WCSNCMP = @GNULIB_WCSNCMP@ -GNULIB_WCSNCPY = @GNULIB_WCSNCPY@ -GNULIB_WCSNLEN = @GNULIB_WCSNLEN@ -GNULIB_WCSNRTOMBS = @GNULIB_WCSNRTOMBS@ -GNULIB_WCSPBRK = @GNULIB_WCSPBRK@ -GNULIB_WCSRCHR = @GNULIB_WCSRCHR@ -GNULIB_WCSRTOMBS = @GNULIB_WCSRTOMBS@ -GNULIB_WCSSPN = @GNULIB_WCSSPN@ -GNULIB_WCSSTR = @GNULIB_WCSSTR@ -GNULIB_WCSTOK = @GNULIB_WCSTOK@ -GNULIB_WCSWIDTH = @GNULIB_WCSWIDTH@ -GNULIB_WCSXFRM = @GNULIB_WCSXFRM@ -GNULIB_WCTOB = @GNULIB_WCTOB@ -GNULIB_WCTOMB = @GNULIB_WCTOMB@ -GNULIB_WCTRANS = @GNULIB_WCTRANS@ -GNULIB_WCTYPE = @GNULIB_WCTYPE@ -GNULIB_WCWIDTH = @GNULIB_WCWIDTH@ -GNULIB_WMEMCHR = @GNULIB_WMEMCHR@ -GNULIB_WMEMCMP = @GNULIB_WMEMCMP@ -GNULIB_WMEMCPY = @GNULIB_WMEMCPY@ -GNULIB_WMEMMOVE = @GNULIB_WMEMMOVE@ -GNULIB_WMEMSET = @GNULIB_WMEMSET@ -GNULIB_WRITE = @GNULIB_WRITE@ -GNULIB__EXIT = @GNULIB__EXIT@ -GREP = @GREP@ -GRUB_BOOT_MACHINE_LINK_ADDR = @GRUB_BOOT_MACHINE_LINK_ADDR@ -GRUB_PLATFORM = @GRUB_PLATFORM@ -GRUB_TARGET_CPU = @GRUB_TARGET_CPU@ -HAVE_ALPHASORT = @HAVE_ALPHASORT@ -HAVE_ASM_USCORE = @HAVE_ASM_USCORE@ -HAVE_ATOLL = @HAVE_ATOLL@ -HAVE_BTOWC = @HAVE_BTOWC@ -HAVE_C99_STDINT_H = @HAVE_C99_STDINT_H@ -HAVE_CANONICALIZE_FILE_NAME = @HAVE_CANONICALIZE_FILE_NAME@ -HAVE_CHOWN = @HAVE_CHOWN@ -HAVE_CLOSEDIR = @HAVE_CLOSEDIR@ -HAVE_CRTDEFS_H = @HAVE_CRTDEFS_H@ -HAVE_CXX = @HAVE_CXX@ -HAVE_DECL_DIRFD = @HAVE_DECL_DIRFD@ -HAVE_DECL_ENVIRON = @HAVE_DECL_ENVIRON@ -HAVE_DECL_FCHDIR = @HAVE_DECL_FCHDIR@ -HAVE_DECL_FDATASYNC = @HAVE_DECL_FDATASYNC@ -HAVE_DECL_FDOPENDIR = @HAVE_DECL_FDOPENDIR@ -HAVE_DECL_FPURGE = @HAVE_DECL_FPURGE@ -HAVE_DECL_FSEEKO = @HAVE_DECL_FSEEKO@ -HAVE_DECL_FTELLO = @HAVE_DECL_FTELLO@ -HAVE_DECL_GETDELIM = @HAVE_DECL_GETDELIM@ -HAVE_DECL_GETDOMAINNAME = @HAVE_DECL_GETDOMAINNAME@ -HAVE_DECL_GETLINE = @HAVE_DECL_GETLINE@ -HAVE_DECL_GETLOADAVG = @HAVE_DECL_GETLOADAVG@ -HAVE_DECL_GETLOGIN = @HAVE_DECL_GETLOGIN@ -HAVE_DECL_GETLOGIN_R = @HAVE_DECL_GETLOGIN_R@ -HAVE_DECL_GETPAGESIZE = @HAVE_DECL_GETPAGESIZE@ -HAVE_DECL_GETUSERSHELL = @HAVE_DECL_GETUSERSHELL@ -HAVE_DECL_INITSTATE = @HAVE_DECL_INITSTATE@ -HAVE_DECL_LOCALTIME_R = @HAVE_DECL_LOCALTIME_R@ -HAVE_DECL_MEMMEM = @HAVE_DECL_MEMMEM@ -HAVE_DECL_MEMRCHR = @HAVE_DECL_MEMRCHR@ -HAVE_DECL_OBSTACK_PRINTF = @HAVE_DECL_OBSTACK_PRINTF@ -HAVE_DECL_SETENV = @HAVE_DECL_SETENV@ -HAVE_DECL_SETHOSTNAME = @HAVE_DECL_SETHOSTNAME@ -HAVE_DECL_SETSTATE = @HAVE_DECL_SETSTATE@ -HAVE_DECL_SNPRINTF = @HAVE_DECL_SNPRINTF@ -HAVE_DECL_STRDUP = @HAVE_DECL_STRDUP@ -HAVE_DECL_STRERROR_R = @HAVE_DECL_STRERROR_R@ -HAVE_DECL_STRNCASECMP = @HAVE_DECL_STRNCASECMP@ -HAVE_DECL_STRNDUP = @HAVE_DECL_STRNDUP@ -HAVE_DECL_STRNLEN = @HAVE_DECL_STRNLEN@ -HAVE_DECL_STRSIGNAL = @HAVE_DECL_STRSIGNAL@ -HAVE_DECL_STRTOK_R = @HAVE_DECL_STRTOK_R@ -HAVE_DECL_TRUNCATE = @HAVE_DECL_TRUNCATE@ -HAVE_DECL_TTYNAME_R = @HAVE_DECL_TTYNAME_R@ -HAVE_DECL_UNSETENV = @HAVE_DECL_UNSETENV@ -HAVE_DECL_VSNPRINTF = @HAVE_DECL_VSNPRINTF@ -HAVE_DECL_WCTOB = @HAVE_DECL_WCTOB@ -HAVE_DECL_WCWIDTH = @HAVE_DECL_WCWIDTH@ -HAVE_DIRENT_H = @HAVE_DIRENT_H@ -HAVE_DPRINTF = @HAVE_DPRINTF@ -HAVE_DUP2 = @HAVE_DUP2@ -HAVE_DUP3 = @HAVE_DUP3@ -HAVE_DUPLOCALE = @HAVE_DUPLOCALE@ -HAVE_EUIDACCESS = @HAVE_EUIDACCESS@ -HAVE_EXPLICIT_BZERO = @HAVE_EXPLICIT_BZERO@ -HAVE_FACCESSAT = @HAVE_FACCESSAT@ -HAVE_FCHDIR = @HAVE_FCHDIR@ -HAVE_FCHMODAT = @HAVE_FCHMODAT@ -HAVE_FCHOWNAT = @HAVE_FCHOWNAT@ -HAVE_FCNTL = @HAVE_FCNTL@ -HAVE_FDATASYNC = @HAVE_FDATASYNC@ -HAVE_FDOPENDIR = @HAVE_FDOPENDIR@ -HAVE_FEATURES_H = @HAVE_FEATURES_H@ -HAVE_FFS = @HAVE_FFS@ -HAVE_FFSL = @HAVE_FFSL@ -HAVE_FFSLL = @HAVE_FFSLL@ -HAVE_FNMATCH = @HAVE_FNMATCH@ -HAVE_FNMATCH_H = @HAVE_FNMATCH_H@ -HAVE_FONT_SOURCE = @HAVE_FONT_SOURCE@ -HAVE_FREELOCALE = @HAVE_FREELOCALE@ -HAVE_FSEEKO = @HAVE_FSEEKO@ -HAVE_FSTATAT = @HAVE_FSTATAT@ -HAVE_FSYNC = @HAVE_FSYNC@ -HAVE_FTELLO = @HAVE_FTELLO@ -HAVE_FTRUNCATE = @HAVE_FTRUNCATE@ -HAVE_FUTIMENS = @HAVE_FUTIMENS@ -HAVE_GETDTABLESIZE = @HAVE_GETDTABLESIZE@ -HAVE_GETGROUPS = @HAVE_GETGROUPS@ -HAVE_GETHOSTNAME = @HAVE_GETHOSTNAME@ -HAVE_GETLOGIN = @HAVE_GETLOGIN@ -HAVE_GETOPT_H = @HAVE_GETOPT_H@ -HAVE_GETPAGESIZE = @HAVE_GETPAGESIZE@ -HAVE_GETPASS = @HAVE_GETPASS@ -HAVE_GETSUBOPT = @HAVE_GETSUBOPT@ -HAVE_GRANTPT = @HAVE_GRANTPT@ -HAVE_GROUP_MEMBER = @HAVE_GROUP_MEMBER@ -HAVE_INTTYPES_H = @HAVE_INTTYPES_H@ -HAVE_ISWBLANK = @HAVE_ISWBLANK@ -HAVE_ISWCNTRL = @HAVE_ISWCNTRL@ -HAVE_LANGINFO_ALTMON = @HAVE_LANGINFO_ALTMON@ -HAVE_LANGINFO_CODESET = @HAVE_LANGINFO_CODESET@ -HAVE_LANGINFO_ERA = @HAVE_LANGINFO_ERA@ -HAVE_LANGINFO_H = @HAVE_LANGINFO_H@ -HAVE_LANGINFO_T_FMT_AMPM = @HAVE_LANGINFO_T_FMT_AMPM@ -HAVE_LANGINFO_YESEXPR = @HAVE_LANGINFO_YESEXPR@ -HAVE_LCHMOD = @HAVE_LCHMOD@ -HAVE_LCHOWN = @HAVE_LCHOWN@ -HAVE_LINK = @HAVE_LINK@ -HAVE_LINKAT = @HAVE_LINKAT@ -HAVE_LONG_LONG_INT = @HAVE_LONG_LONG_INT@ -HAVE_LSTAT = @HAVE_LSTAT@ -HAVE_MAX_ALIGN_T = @HAVE_MAX_ALIGN_T@ -HAVE_MBRLEN = @HAVE_MBRLEN@ -HAVE_MBRTOWC = @HAVE_MBRTOWC@ -HAVE_MBSINIT = @HAVE_MBSINIT@ -HAVE_MBSLEN = @HAVE_MBSLEN@ -HAVE_MBSNRTOWCS = @HAVE_MBSNRTOWCS@ -HAVE_MBSRTOWCS = @HAVE_MBSRTOWCS@ -HAVE_MEMCHR = @HAVE_MEMCHR@ -HAVE_MEMPCPY = @HAVE_MEMPCPY@ -HAVE_MKDIRAT = @HAVE_MKDIRAT@ -HAVE_MKDTEMP = @HAVE_MKDTEMP@ -HAVE_MKFIFO = @HAVE_MKFIFO@ -HAVE_MKFIFOAT = @HAVE_MKFIFOAT@ -HAVE_MKNOD = @HAVE_MKNOD@ -HAVE_MKNODAT = @HAVE_MKNODAT@ -HAVE_MKOSTEMP = @HAVE_MKOSTEMP@ -HAVE_MKOSTEMPS = @HAVE_MKOSTEMPS@ -HAVE_MKSTEMP = @HAVE_MKSTEMP@ -HAVE_MKSTEMPS = @HAVE_MKSTEMPS@ -HAVE_MSVC_INVALID_PARAMETER_HANDLER = @HAVE_MSVC_INVALID_PARAMETER_HANDLER@ -HAVE_NANOSLEEP = @HAVE_NANOSLEEP@ -HAVE_NEWLOCALE = @HAVE_NEWLOCALE@ -HAVE_NL_LANGINFO = @HAVE_NL_LANGINFO@ -HAVE_OPENAT = @HAVE_OPENAT@ -HAVE_OPENDIR = @HAVE_OPENDIR@ -HAVE_OS_H = @HAVE_OS_H@ -HAVE_PCLOSE = @HAVE_PCLOSE@ -HAVE_PIPE = @HAVE_PIPE@ -HAVE_PIPE2 = @HAVE_PIPE2@ -HAVE_POPEN = @HAVE_POPEN@ -HAVE_POSIX_OPENPT = @HAVE_POSIX_OPENPT@ -HAVE_PREAD = @HAVE_PREAD@ -HAVE_PTSNAME = @HAVE_PTSNAME@ -HAVE_PTSNAME_R = @HAVE_PTSNAME_R@ -HAVE_PWRITE = @HAVE_PWRITE@ -HAVE_QSORT_R = @HAVE_QSORT_R@ -HAVE_RANDOM = @HAVE_RANDOM@ -HAVE_RANDOM_H = @HAVE_RANDOM_H@ -HAVE_RANDOM_R = @HAVE_RANDOM_R@ -HAVE_RAWMEMCHR = @HAVE_RAWMEMCHR@ -HAVE_READDIR = @HAVE_READDIR@ -HAVE_READLINK = @HAVE_READLINK@ -HAVE_READLINKAT = @HAVE_READLINKAT@ -HAVE_REALLOCARRAY = @HAVE_REALLOCARRAY@ -HAVE_REALPATH = @HAVE_REALPATH@ -HAVE_RENAMEAT = @HAVE_RENAMEAT@ -HAVE_REWINDDIR = @HAVE_REWINDDIR@ -HAVE_RPMATCH = @HAVE_RPMATCH@ -HAVE_SCANDIR = @HAVE_SCANDIR@ -HAVE_SECURE_GETENV = @HAVE_SECURE_GETENV@ -HAVE_SETENV = @HAVE_SETENV@ -HAVE_SETHOSTNAME = @HAVE_SETHOSTNAME@ -HAVE_SIGNED_SIG_ATOMIC_T = @HAVE_SIGNED_SIG_ATOMIC_T@ -HAVE_SIGNED_WCHAR_T = @HAVE_SIGNED_WCHAR_T@ -HAVE_SIGNED_WINT_T = @HAVE_SIGNED_WINT_T@ -HAVE_SLEEP = @HAVE_SLEEP@ -HAVE_STDINT_H = @HAVE_STDINT_H@ -HAVE_STPCPY = @HAVE_STPCPY@ -HAVE_STPNCPY = @HAVE_STPNCPY@ -HAVE_STRCASECMP = @HAVE_STRCASECMP@ -HAVE_STRCASESTR = @HAVE_STRCASESTR@ -HAVE_STRCHRNUL = @HAVE_STRCHRNUL@ -HAVE_STRINGS_H = @HAVE_STRINGS_H@ -HAVE_STRPBRK = @HAVE_STRPBRK@ -HAVE_STRPTIME = @HAVE_STRPTIME@ -HAVE_STRSEP = @HAVE_STRSEP@ -HAVE_STRTOD = @HAVE_STRTOD@ -HAVE_STRTOLL = @HAVE_STRTOLL@ -HAVE_STRTOULL = @HAVE_STRTOULL@ -HAVE_STRUCT_RANDOM_DATA = @HAVE_STRUCT_RANDOM_DATA@ -HAVE_STRVERSCMP = @HAVE_STRVERSCMP@ -HAVE_SYMLINK = @HAVE_SYMLINK@ -HAVE_SYMLINKAT = @HAVE_SYMLINKAT@ -HAVE_SYSEXITS_H = @HAVE_SYSEXITS_H@ -HAVE_SYS_BITYPES_H = @HAVE_SYS_BITYPES_H@ -HAVE_SYS_CDEFS_H = @HAVE_SYS_CDEFS_H@ -HAVE_SYS_INTTYPES_H = @HAVE_SYS_INTTYPES_H@ -HAVE_SYS_LOADAVG_H = @HAVE_SYS_LOADAVG_H@ -HAVE_SYS_PARAM_H = @HAVE_SYS_PARAM_H@ -HAVE_SYS_TYPES_H = @HAVE_SYS_TYPES_H@ -HAVE_TIMEGM = @HAVE_TIMEGM@ -HAVE_TIMEZONE_T = @HAVE_TIMEZONE_T@ -HAVE_TZSET = @HAVE_TZSET@ -HAVE_UNISTD_H = @HAVE_UNISTD_H@ -HAVE_UNLINKAT = @HAVE_UNLINKAT@ -HAVE_UNLOCKPT = @HAVE_UNLOCKPT@ -HAVE_UNSIGNED_LONG_LONG_INT = @HAVE_UNSIGNED_LONG_LONG_INT@ -HAVE_USLEEP = @HAVE_USLEEP@ -HAVE_UTIMENSAT = @HAVE_UTIMENSAT@ -HAVE_VASPRINTF = @HAVE_VASPRINTF@ -HAVE_VDPRINTF = @HAVE_VDPRINTF@ -HAVE_WCHAR_H = @HAVE_WCHAR_H@ -HAVE_WCHAR_T = @HAVE_WCHAR_T@ -HAVE_WCPCPY = @HAVE_WCPCPY@ -HAVE_WCPNCPY = @HAVE_WCPNCPY@ -HAVE_WCRTOMB = @HAVE_WCRTOMB@ -HAVE_WCSCASECMP = @HAVE_WCSCASECMP@ -HAVE_WCSCAT = @HAVE_WCSCAT@ -HAVE_WCSCHR = @HAVE_WCSCHR@ -HAVE_WCSCMP = @HAVE_WCSCMP@ -HAVE_WCSCOLL = @HAVE_WCSCOLL@ -HAVE_WCSCPY = @HAVE_WCSCPY@ -HAVE_WCSCSPN = @HAVE_WCSCSPN@ -HAVE_WCSDUP = @HAVE_WCSDUP@ -HAVE_WCSFTIME = @HAVE_WCSFTIME@ -HAVE_WCSLEN = @HAVE_WCSLEN@ -HAVE_WCSNCASECMP = @HAVE_WCSNCASECMP@ -HAVE_WCSNCAT = @HAVE_WCSNCAT@ -HAVE_WCSNCMP = @HAVE_WCSNCMP@ -HAVE_WCSNCPY = @HAVE_WCSNCPY@ -HAVE_WCSNLEN = @HAVE_WCSNLEN@ -HAVE_WCSNRTOMBS = @HAVE_WCSNRTOMBS@ -HAVE_WCSPBRK = @HAVE_WCSPBRK@ -HAVE_WCSRCHR = @HAVE_WCSRCHR@ -HAVE_WCSRTOMBS = @HAVE_WCSRTOMBS@ -HAVE_WCSSPN = @HAVE_WCSSPN@ -HAVE_WCSSTR = @HAVE_WCSSTR@ -HAVE_WCSTOK = @HAVE_WCSTOK@ -HAVE_WCSWIDTH = @HAVE_WCSWIDTH@ -HAVE_WCSXFRM = @HAVE_WCSXFRM@ -HAVE_WCTRANS_T = @HAVE_WCTRANS_T@ -HAVE_WCTYPE_H = @HAVE_WCTYPE_H@ -HAVE_WCTYPE_T = @HAVE_WCTYPE_T@ -HAVE_WINSOCK2_H = @HAVE_WINSOCK2_H@ -HAVE_WINT_T = @HAVE_WINT_T@ -HAVE_WMEMCHR = @HAVE_WMEMCHR@ -HAVE_WMEMCMP = @HAVE_WMEMCMP@ -HAVE_WMEMCPY = @HAVE_WMEMCPY@ -HAVE_WMEMMOVE = @HAVE_WMEMMOVE@ -HAVE_WMEMSET = @HAVE_WMEMSET@ -HAVE_XLOCALE_H = @HAVE_XLOCALE_H@ -HAVE__BOOL = @HAVE__BOOL@ -HAVE__EXIT = @HAVE__EXIT@ -HELP2MAN = @HELP2MAN@ -HOST_CC = @HOST_CC@ -HOST_CCASFLAGS = @HOST_CCASFLAGS@ -HOST_CFLAGS = @HOST_CFLAGS@ -HOST_CPPFLAGS = @HOST_CPPFLAGS@ -HOST_LDFLAGS = @HOST_LDFLAGS@ -INCLUDE_NEXT = @INCLUDE_NEXT@ -INCLUDE_NEXT_AS_FIRST_DIRECTIVE = @INCLUDE_NEXT_AS_FIRST_DIRECTIVE@ -INSTALL = @INSTALL@ -INSTALL_DATA = @INSTALL_DATA@ -INSTALL_PROGRAM = @INSTALL_PROGRAM@ -INSTALL_SCRIPT = @INSTALL_SCRIPT@ -INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ -INTLLIBS = @INTLLIBS@ -INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -LDFLAGS = @LDFLAGS@ -LEX = @LEX@ -LEXLIB = @LEXLIB@ -LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@ -LIBDEVMAPPER = @LIBDEVMAPPER@ -LIBGEOM = @LIBGEOM@ -LIBGNU_LIBDEPS = @LIBGNU_LIBDEPS@ -LIBGNU_LTLIBDEPS = @LIBGNU_LTLIBDEPS@ -LIBICONV = @LIBICONV@ -LIBINTL = @LIBINTL@ -LIBLZMA = @LIBLZMA@ -LIBMULTITHREAD = @LIBMULTITHREAD@ -LIBNVPAIR = @LIBNVPAIR@ -LIBOBJS = @LIBOBJS@ -LIBPCIACCESS = @LIBPCIACCESS@ -LIBPTH = @LIBPTH@ -LIBPTH_PREFIX = @LIBPTH_PREFIX@ -LIBS = @LIBS@ -LIBSDL = @LIBSDL@ -LIBTHREAD = @LIBTHREAD@ -LIBUNISTRING_UNITYPES_H = @LIBUNISTRING_UNITYPES_H@ -LIBUNISTRING_UNIWIDTH_H = @LIBUNISTRING_UNIWIDTH_H@ -LIBUTIL = @LIBUTIL@ -LIBZFS = @LIBZFS@ -LIMITS_H = @LIMITS_H@ -LN_S = @LN_S@ -LOCALCHARSET_TESTS_ENVIRONMENT = @LOCALCHARSET_TESTS_ENVIRONMENT@ -LOCALE_FR = @LOCALE_FR@ -LOCALE_FR_UTF8 = @LOCALE_FR_UTF8@ -LOCALE_JA = @LOCALE_JA@ -LOCALE_ZH_CN = @LOCALE_ZH_CN@ -LTLIBICONV = @LTLIBICONV@ -LTLIBINTL = @LTLIBINTL@ -LTLIBMULTITHREAD = @LTLIBMULTITHREAD@ -LTLIBOBJS = @LTLIBOBJS@ -LTLIBPTH = @LTLIBPTH@ -LTLIBTHREAD = @LTLIBTHREAD@ -MAKEINFO = @MAKEINFO@ -MKDIR_P = @MKDIR_P@ -MSGFMT = @MSGFMT@ -MSGFMT_015 = @MSGFMT_015@ -MSGMERGE = @MSGMERGE@ -NEXT_AS_FIRST_DIRECTIVE_DIRENT_H = @NEXT_AS_FIRST_DIRECTIVE_DIRENT_H@ -NEXT_AS_FIRST_DIRECTIVE_ERRNO_H = @NEXT_AS_FIRST_DIRECTIVE_ERRNO_H@ -NEXT_AS_FIRST_DIRECTIVE_FCNTL_H = @NEXT_AS_FIRST_DIRECTIVE_FCNTL_H@ -NEXT_AS_FIRST_DIRECTIVE_FLOAT_H = @NEXT_AS_FIRST_DIRECTIVE_FLOAT_H@ -NEXT_AS_FIRST_DIRECTIVE_FNMATCH_H = @NEXT_AS_FIRST_DIRECTIVE_FNMATCH_H@ -NEXT_AS_FIRST_DIRECTIVE_GETOPT_H = @NEXT_AS_FIRST_DIRECTIVE_GETOPT_H@ -NEXT_AS_FIRST_DIRECTIVE_LANGINFO_H = @NEXT_AS_FIRST_DIRECTIVE_LANGINFO_H@ -NEXT_AS_FIRST_DIRECTIVE_LIMITS_H = @NEXT_AS_FIRST_DIRECTIVE_LIMITS_H@ -NEXT_AS_FIRST_DIRECTIVE_LOCALE_H = @NEXT_AS_FIRST_DIRECTIVE_LOCALE_H@ -NEXT_AS_FIRST_DIRECTIVE_STDDEF_H = @NEXT_AS_FIRST_DIRECTIVE_STDDEF_H@ -NEXT_AS_FIRST_DIRECTIVE_STDINT_H = @NEXT_AS_FIRST_DIRECTIVE_STDINT_H@ -NEXT_AS_FIRST_DIRECTIVE_STDIO_H = @NEXT_AS_FIRST_DIRECTIVE_STDIO_H@ -NEXT_AS_FIRST_DIRECTIVE_STDLIB_H = @NEXT_AS_FIRST_DIRECTIVE_STDLIB_H@ -NEXT_AS_FIRST_DIRECTIVE_STRINGS_H = @NEXT_AS_FIRST_DIRECTIVE_STRINGS_H@ -NEXT_AS_FIRST_DIRECTIVE_STRING_H = @NEXT_AS_FIRST_DIRECTIVE_STRING_H@ -NEXT_AS_FIRST_DIRECTIVE_SYSEXITS_H = @NEXT_AS_FIRST_DIRECTIVE_SYSEXITS_H@ -NEXT_AS_FIRST_DIRECTIVE_SYS_STAT_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_STAT_H@ -NEXT_AS_FIRST_DIRECTIVE_SYS_TYPES_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_TYPES_H@ -NEXT_AS_FIRST_DIRECTIVE_TIME_H = @NEXT_AS_FIRST_DIRECTIVE_TIME_H@ -NEXT_AS_FIRST_DIRECTIVE_UNISTD_H = @NEXT_AS_FIRST_DIRECTIVE_UNISTD_H@ -NEXT_AS_FIRST_DIRECTIVE_WCHAR_H = @NEXT_AS_FIRST_DIRECTIVE_WCHAR_H@ -NEXT_AS_FIRST_DIRECTIVE_WCTYPE_H = @NEXT_AS_FIRST_DIRECTIVE_WCTYPE_H@ -NEXT_DIRENT_H = @NEXT_DIRENT_H@ -NEXT_ERRNO_H = @NEXT_ERRNO_H@ -NEXT_FCNTL_H = @NEXT_FCNTL_H@ -NEXT_FLOAT_H = @NEXT_FLOAT_H@ -NEXT_FNMATCH_H = @NEXT_FNMATCH_H@ -NEXT_GETOPT_H = @NEXT_GETOPT_H@ -NEXT_LANGINFO_H = @NEXT_LANGINFO_H@ -NEXT_LIMITS_H = @NEXT_LIMITS_H@ -NEXT_LOCALE_H = @NEXT_LOCALE_H@ -NEXT_STDDEF_H = @NEXT_STDDEF_H@ -NEXT_STDINT_H = @NEXT_STDINT_H@ -NEXT_STDIO_H = @NEXT_STDIO_H@ -NEXT_STDLIB_H = @NEXT_STDLIB_H@ -NEXT_STRINGS_H = @NEXT_STRINGS_H@ -NEXT_STRING_H = @NEXT_STRING_H@ -NEXT_SYSEXITS_H = @NEXT_SYSEXITS_H@ -NEXT_SYS_STAT_H = @NEXT_SYS_STAT_H@ -NEXT_SYS_TYPES_H = @NEXT_SYS_TYPES_H@ -NEXT_TIME_H = @NEXT_TIME_H@ -NEXT_UNISTD_H = @NEXT_UNISTD_H@ -NEXT_WCHAR_H = @NEXT_WCHAR_H@ -NEXT_WCTYPE_H = @NEXT_WCTYPE_H@ -OBJEXT = @OBJEXT@ -PACKAGE = @PACKAGE@ -PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ -PACKAGE_NAME = @PACKAGE_NAME@ -PACKAGE_STRING = @PACKAGE_STRING@ -PACKAGE_TARNAME = @PACKAGE_TARNAME@ -PACKAGE_URL = @PACKAGE_URL@ -PACKAGE_VERSION = @PACKAGE_VERSION@ -PATH_SEPARATOR = @PATH_SEPARATOR@ -PKG_CONFIG = @PKG_CONFIG@ -PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ -PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ -POSUB = @POSUB@ -PRAGMA_COLUMNS = @PRAGMA_COLUMNS@ -PRAGMA_SYSTEM_HEADER = @PRAGMA_SYSTEM_HEADER@ -PTHREAD_H_DEFINES_STRUCT_TIMESPEC = @PTHREAD_H_DEFINES_STRUCT_TIMESPEC@ -PTRDIFF_T_SUFFIX = @PTRDIFF_T_SUFFIX@ -PYTHON = @PYTHON@ -PYTHON_EXEC_PREFIX = @PYTHON_EXEC_PREFIX@ -PYTHON_PLATFORM = @PYTHON_PLATFORM@ -PYTHON_PREFIX = @PYTHON_PREFIX@ -PYTHON_VERSION = @PYTHON_VERSION@ -RANLIB = @RANLIB@ -REPLACE_BTOWC = @REPLACE_BTOWC@ -REPLACE_CALLOC = @REPLACE_CALLOC@ -REPLACE_CANONICALIZE_FILE_NAME = @REPLACE_CANONICALIZE_FILE_NAME@ -REPLACE_CHOWN = @REPLACE_CHOWN@ -REPLACE_CLOSE = @REPLACE_CLOSE@ -REPLACE_CLOSEDIR = @REPLACE_CLOSEDIR@ -REPLACE_CTIME = @REPLACE_CTIME@ -REPLACE_DIRFD = @REPLACE_DIRFD@ -REPLACE_DPRINTF = @REPLACE_DPRINTF@ -REPLACE_DUP = @REPLACE_DUP@ -REPLACE_DUP2 = @REPLACE_DUP2@ -REPLACE_DUPLOCALE = @REPLACE_DUPLOCALE@ -REPLACE_FACCESSAT = @REPLACE_FACCESSAT@ -REPLACE_FCHOWNAT = @REPLACE_FCHOWNAT@ -REPLACE_FCLOSE = @REPLACE_FCLOSE@ -REPLACE_FCNTL = @REPLACE_FCNTL@ -REPLACE_FDOPEN = @REPLACE_FDOPEN@ -REPLACE_FDOPENDIR = @REPLACE_FDOPENDIR@ -REPLACE_FFLUSH = @REPLACE_FFLUSH@ -REPLACE_FNMATCH = @REPLACE_FNMATCH@ -REPLACE_FOPEN = @REPLACE_FOPEN@ -REPLACE_FPRINTF = @REPLACE_FPRINTF@ -REPLACE_FPURGE = @REPLACE_FPURGE@ -REPLACE_FREELOCALE = @REPLACE_FREELOCALE@ -REPLACE_FREOPEN = @REPLACE_FREOPEN@ -REPLACE_FSEEK = @REPLACE_FSEEK@ -REPLACE_FSEEKO = @REPLACE_FSEEKO@ -REPLACE_FSTAT = @REPLACE_FSTAT@ -REPLACE_FSTATAT = @REPLACE_FSTATAT@ -REPLACE_FTELL = @REPLACE_FTELL@ -REPLACE_FTELLO = @REPLACE_FTELLO@ -REPLACE_FTRUNCATE = @REPLACE_FTRUNCATE@ -REPLACE_FUTIMENS = @REPLACE_FUTIMENS@ -REPLACE_GETCWD = @REPLACE_GETCWD@ -REPLACE_GETDELIM = @REPLACE_GETDELIM@ -REPLACE_GETDOMAINNAME = @REPLACE_GETDOMAINNAME@ -REPLACE_GETDTABLESIZE = @REPLACE_GETDTABLESIZE@ -REPLACE_GETGROUPS = @REPLACE_GETGROUPS@ -REPLACE_GETLINE = @REPLACE_GETLINE@ -REPLACE_GETLOGIN_R = @REPLACE_GETLOGIN_R@ -REPLACE_GETPAGESIZE = @REPLACE_GETPAGESIZE@ -REPLACE_GETPASS = @REPLACE_GETPASS@ -REPLACE_GMTIME = @REPLACE_GMTIME@ -REPLACE_ISATTY = @REPLACE_ISATTY@ -REPLACE_ISWBLANK = @REPLACE_ISWBLANK@ -REPLACE_ISWCNTRL = @REPLACE_ISWCNTRL@ -REPLACE_ITOLD = @REPLACE_ITOLD@ -REPLACE_LCHOWN = @REPLACE_LCHOWN@ -REPLACE_LINK = @REPLACE_LINK@ -REPLACE_LINKAT = @REPLACE_LINKAT@ -REPLACE_LOCALECONV = @REPLACE_LOCALECONV@ -REPLACE_LOCALTIME = @REPLACE_LOCALTIME@ -REPLACE_LOCALTIME_R = @REPLACE_LOCALTIME_R@ -REPLACE_LSEEK = @REPLACE_LSEEK@ -REPLACE_LSTAT = @REPLACE_LSTAT@ -REPLACE_MALLOC = @REPLACE_MALLOC@ -REPLACE_MBRLEN = @REPLACE_MBRLEN@ -REPLACE_MBRTOWC = @REPLACE_MBRTOWC@ -REPLACE_MBSINIT = @REPLACE_MBSINIT@ -REPLACE_MBSNRTOWCS = @REPLACE_MBSNRTOWCS@ -REPLACE_MBSRTOWCS = @REPLACE_MBSRTOWCS@ -REPLACE_MBSTATE_T = @REPLACE_MBSTATE_T@ -REPLACE_MBTOWC = @REPLACE_MBTOWC@ -REPLACE_MEMCHR = @REPLACE_MEMCHR@ -REPLACE_MEMMEM = @REPLACE_MEMMEM@ -REPLACE_MKDIR = @REPLACE_MKDIR@ -REPLACE_MKFIFO = @REPLACE_MKFIFO@ -REPLACE_MKNOD = @REPLACE_MKNOD@ -REPLACE_MKSTEMP = @REPLACE_MKSTEMP@ -REPLACE_MKTIME = @REPLACE_MKTIME@ -REPLACE_NANOSLEEP = @REPLACE_NANOSLEEP@ -REPLACE_NEWLOCALE = @REPLACE_NEWLOCALE@ -REPLACE_NL_LANGINFO = @REPLACE_NL_LANGINFO@ -REPLACE_NULL = @REPLACE_NULL@ -REPLACE_OBSTACK_PRINTF = @REPLACE_OBSTACK_PRINTF@ -REPLACE_OPEN = @REPLACE_OPEN@ -REPLACE_OPENAT = @REPLACE_OPENAT@ -REPLACE_OPENDIR = @REPLACE_OPENDIR@ -REPLACE_PERROR = @REPLACE_PERROR@ -REPLACE_POPEN = @REPLACE_POPEN@ -REPLACE_PREAD = @REPLACE_PREAD@ -REPLACE_PRINTF = @REPLACE_PRINTF@ -REPLACE_PTSNAME = @REPLACE_PTSNAME@ -REPLACE_PTSNAME_R = @REPLACE_PTSNAME_R@ -REPLACE_PUTENV = @REPLACE_PUTENV@ -REPLACE_PWRITE = @REPLACE_PWRITE@ -REPLACE_QSORT_R = @REPLACE_QSORT_R@ -REPLACE_RANDOM_R = @REPLACE_RANDOM_R@ -REPLACE_READ = @REPLACE_READ@ -REPLACE_READLINK = @REPLACE_READLINK@ -REPLACE_READLINKAT = @REPLACE_READLINKAT@ -REPLACE_REALLOC = @REPLACE_REALLOC@ -REPLACE_REALPATH = @REPLACE_REALPATH@ -REPLACE_REMOVE = @REPLACE_REMOVE@ -REPLACE_RENAME = @REPLACE_RENAME@ -REPLACE_RENAMEAT = @REPLACE_RENAMEAT@ -REPLACE_RMDIR = @REPLACE_RMDIR@ -REPLACE_SETENV = @REPLACE_SETENV@ -REPLACE_SETLOCALE = @REPLACE_SETLOCALE@ -REPLACE_SLEEP = @REPLACE_SLEEP@ -REPLACE_SNPRINTF = @REPLACE_SNPRINTF@ -REPLACE_SPRINTF = @REPLACE_SPRINTF@ -REPLACE_STAT = @REPLACE_STAT@ -REPLACE_STDIO_READ_FUNCS = @REPLACE_STDIO_READ_FUNCS@ -REPLACE_STDIO_WRITE_FUNCS = @REPLACE_STDIO_WRITE_FUNCS@ -REPLACE_STPNCPY = @REPLACE_STPNCPY@ -REPLACE_STRCASESTR = @REPLACE_STRCASESTR@ -REPLACE_STRCHRNUL = @REPLACE_STRCHRNUL@ -REPLACE_STRDUP = @REPLACE_STRDUP@ -REPLACE_STRERROR = @REPLACE_STRERROR@ -REPLACE_STRERROR_R = @REPLACE_STRERROR_R@ -REPLACE_STRFTIME = @REPLACE_STRFTIME@ -REPLACE_STRNCAT = @REPLACE_STRNCAT@ -REPLACE_STRNDUP = @REPLACE_STRNDUP@ -REPLACE_STRNLEN = @REPLACE_STRNLEN@ -REPLACE_STRSIGNAL = @REPLACE_STRSIGNAL@ -REPLACE_STRSTR = @REPLACE_STRSTR@ -REPLACE_STRTOD = @REPLACE_STRTOD@ -REPLACE_STRTOK_R = @REPLACE_STRTOK_R@ -REPLACE_STRUCT_LCONV = @REPLACE_STRUCT_LCONV@ -REPLACE_SYMLINK = @REPLACE_SYMLINK@ -REPLACE_SYMLINKAT = @REPLACE_SYMLINKAT@ -REPLACE_TIMEGM = @REPLACE_TIMEGM@ -REPLACE_TMPFILE = @REPLACE_TMPFILE@ -REPLACE_TOWLOWER = @REPLACE_TOWLOWER@ -REPLACE_TRUNCATE = @REPLACE_TRUNCATE@ -REPLACE_TTYNAME_R = @REPLACE_TTYNAME_R@ -REPLACE_TZSET = @REPLACE_TZSET@ -REPLACE_UNLINK = @REPLACE_UNLINK@ -REPLACE_UNLINKAT = @REPLACE_UNLINKAT@ -REPLACE_UNSETENV = @REPLACE_UNSETENV@ -REPLACE_USLEEP = @REPLACE_USLEEP@ -REPLACE_UTIMENSAT = @REPLACE_UTIMENSAT@ -REPLACE_VASPRINTF = @REPLACE_VASPRINTF@ -REPLACE_VDPRINTF = @REPLACE_VDPRINTF@ -REPLACE_VFPRINTF = @REPLACE_VFPRINTF@ -REPLACE_VPRINTF = @REPLACE_VPRINTF@ -REPLACE_VSNPRINTF = @REPLACE_VSNPRINTF@ -REPLACE_VSPRINTF = @REPLACE_VSPRINTF@ -REPLACE_WCRTOMB = @REPLACE_WCRTOMB@ -REPLACE_WCSFTIME = @REPLACE_WCSFTIME@ -REPLACE_WCSNRTOMBS = @REPLACE_WCSNRTOMBS@ -REPLACE_WCSRTOMBS = @REPLACE_WCSRTOMBS@ -REPLACE_WCSWIDTH = @REPLACE_WCSWIDTH@ -REPLACE_WCTOB = @REPLACE_WCTOB@ -REPLACE_WCTOMB = @REPLACE_WCTOMB@ -REPLACE_WCWIDTH = @REPLACE_WCWIDTH@ -REPLACE_WRITE = @REPLACE_WRITE@ -SED = @SED@ -SET_MAKE = @SET_MAKE@ -SHELL = @SHELL@ -SIG_ATOMIC_T_SUFFIX = @SIG_ATOMIC_T_SUFFIX@ -SIZE_T_SUFFIX = @SIZE_T_SUFFIX@ -STDALIGN_H = @STDALIGN_H@ -STDBOOL_H = @STDBOOL_H@ -STDDEF_H = @STDDEF_H@ -STDINT_H = @STDINT_H@ -STRIP = @STRIP@ -SYSEXITS_H = @SYSEXITS_H@ -SYS_TIME_H_DEFINES_STRUCT_TIMESPEC = @SYS_TIME_H_DEFINES_STRUCT_TIMESPEC@ -TARGET_APPLE_LINKER = @TARGET_APPLE_LINKER@ -TARGET_CC = @TARGET_CC@ -TARGET_CCAS = @TARGET_CCAS@ -TARGET_CCASFLAGS = @TARGET_CCASFLAGS@ -TARGET_CC_VERSION = @TARGET_CC_VERSION@ -TARGET_CFLAGS = @TARGET_CFLAGS@ -TARGET_CPP = @TARGET_CPP@ -TARGET_CPPFLAGS = @TARGET_CPPFLAGS@ -TARGET_DECOMPRESSOR_LINK_ADDR = @TARGET_DECOMPRESSOR_LINK_ADDR@ -TARGET_IMG_BASE_LDOPT = @TARGET_IMG_BASE_LDOPT@ -TARGET_IMG_CFLAGS = @TARGET_IMG_CFLAGS@ -TARGET_IMG_LDFLAGS = @TARGET_IMG_LDFLAGS@ -TARGET_LDFLAGS = @TARGET_LDFLAGS@ -TARGET_LDFLAGS_OLDMAGIC = @TARGET_LDFLAGS_OLDMAGIC@ -TARGET_LINK_ADDR = @TARGET_LINK_ADDR@ -TARGET_MODULE_FORMAT = @TARGET_MODULE_FORMAT@ -TARGET_NM = @TARGET_NM@ -TARGET_NMFLAGS_DEFINED_ONLY = @TARGET_NMFLAGS_DEFINED_ONLY@ -TARGET_NMFLAGS_MINUS_P = @TARGET_NMFLAGS_MINUS_P@ -TARGET_OBJ2ELF = @TARGET_OBJ2ELF@ -TARGET_OBJCONV = @TARGET_OBJCONV@ -TARGET_OBJCOPY = @TARGET_OBJCOPY@ -TARGET_RANLIB = @TARGET_RANLIB@ -TARGET_STRIP = @TARGET_STRIP@ -TIME_H_DEFINES_STRUCT_TIMESPEC = @TIME_H_DEFINES_STRUCT_TIMESPEC@ -UNDEFINE_STRTOK_R = @UNDEFINE_STRTOK_R@ -UNISTD_H_DEFINES_STRUCT_TIMESPEC = @UNISTD_H_DEFINES_STRUCT_TIMESPEC@ -UNISTD_H_HAVE_WINSOCK2_H = @UNISTD_H_HAVE_WINSOCK2_H@ -UNISTD_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS = @UNISTD_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS@ -USE_NLS = @USE_NLS@ -VERSION = @VERSION@ -WCHAR_T_SUFFIX = @WCHAR_T_SUFFIX@ -WINDOWS_64_BIT_OFF_T = @WINDOWS_64_BIT_OFF_T@ -WINDOWS_64_BIT_ST_SIZE = @WINDOWS_64_BIT_ST_SIZE@ -WINDOWS_STAT_INODES = @WINDOWS_STAT_INODES@ -WINDOWS_STAT_TIMESPEC = @WINDOWS_STAT_TIMESPEC@ -WINT_T_SUFFIX = @WINT_T_SUFFIX@ -XGETTEXT = @XGETTEXT@ -XGETTEXT_015 = @XGETTEXT_015@ -XGETTEXT_EXTRA_OPTIONS = @XGETTEXT_EXTRA_OPTIONS@ -YACC = @YACC@ -YFLAGS = @YFLAGS@ -abs_builddir = @abs_builddir@ -abs_srcdir = @abs_srcdir@ -abs_top_builddir = @abs_top_builddir@ -abs_top_srcdir = @abs_top_srcdir@ -ac_ct_CC = @ac_ct_CC@ -ac_ct_CXX = @ac_ct_CXX@ -ac_ct_TARGET_CC = @ac_ct_TARGET_CC@ -am__include = @am__include@ -am__leading_dot = @am__leading_dot@ -am__quote = @am__quote@ -am__tar = @am__tar@ -am__untar = @am__untar@ -bindir = @bindir@ -bootdirname = @bootdirname@ -build = @build@ -build_alias = @build_alias@ -build_cpu = @build_cpu@ -build_os = @build_os@ -build_vendor = @build_vendor@ -builddir = @builddir@ -datadir = @datadir@ -datarootdir = @datarootdir@ -docdir = @docdir@ -dvidir = @dvidir@ -enable_efiemu = @enable_efiemu@ -enable_grub_emu_pci = @enable_grub_emu_pci@ -enable_grub_emu_sdl = @enable_grub_emu_sdl@ -enable_grub_mkfont = @enable_grub_mkfont@ -enable_grub_mount = @enable_grub_mount@ -exec_prefix = @exec_prefix@ -gl_LIBOBJS = @gl_LIBOBJS@ -gl_LTLIBOBJS = @gl_LTLIBOBJS@ -gltests_LIBOBJS = @gltests_LIBOBJS@ -gltests_LTLIBOBJS = @gltests_LTLIBOBJS@ -gltests_WITNESS = @gltests_WITNESS@ -grub_bios_setup = @grub_bios_setup@ -grub_editenv = @grub_editenv@ -grub_file = @grub_file@ -grub_glue_efi = @grub_glue_efi@ -grub_install = @grub_install@ -grub_mkconfig = @grub_mkconfig@ -grub_mkfont = @grub_mkfont@ -grub_mkimage = @grub_mkimage@ -grub_mklayout = @grub_mklayout@ -grub_mkpasswd_pbkdf2 = @grub_mkpasswd_pbkdf2@ -grub_mkrelpath = @grub_mkrelpath@ -grub_mkrescue = @grub_mkrescue@ -grub_probe = @grub_probe@ -grub_reboot = @grub_reboot@ -grub_render_label = @grub_render_label@ -grub_script_check = @grub_script_check@ -grub_set_default = @grub_set_default@ -grub_sparc64_setup = @grub_sparc64_setup@ -grubdirname = @grubdirname@ -host = @host@ -host_alias = @host_alias@ -host_cpu = @host_cpu@ -host_kernel = @host_kernel@ -host_os = @host_os@ -host_vendor = @host_vendor@ -htmldir = @htmldir@ -includedir = @includedir@ -infodir = @infodir@ -install_sh = @install_sh@ -libdir = @libdir@ -libexecdir = @libexecdir@ -localedir = @localedir@ -localstatedir = @localstatedir@ -mandir = @mandir@ -mkdir_p = @mkdir_p@ -oldincludedir = @oldincludedir@ -pdfdir = @pdfdir@ -pkgpyexecdir = @pkgpyexecdir@ -pkgpythondir = @pkgpythondir@ -platform = @platform@ -prefix = @prefix@ -program_transform_name = @program_transform_name@ -psdir = @psdir@ -pyexecdir = @pyexecdir@ -pythondir = @pythondir@ -runstatedir = @runstatedir@ -sbindir = @sbindir@ -sharedstatedir = @sharedstatedir@ -srcdir = @srcdir@ -sysconfdir = @sysconfdir@ -target = @target@ -target_alias = @target_alias@ -target_cpu = @target_cpu@ -target_os = @target_os@ -target_vendor = @target_vendor@ -top_build_prefix = @top_build_prefix@ -top_builddir = @top_builddir@ -top_srcdir = @top_srcdir@ -AUTOMAKE_OPTIONS = subdir-objects - -# AM_MAKEINFOFLAGS = --no-split --no-validate -info_TEXINFOS = grub.texi grub-dev.texi -grub_TEXINFOS = fdl.texi -EXTRA_DIST = font_char_metrics.png font_char_metrics.txt -all: all-am - -.SUFFIXES: -.SUFFIXES: .dvi .html .info .pdf .ps .texi -$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps) - @for dep in $?; do \ - case '$(am__configure_deps)' in \ - *$$dep*) \ - ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \ - && { if test -f $@; then exit 0; else break; fi; }; \ - exit 1;; \ - esac; \ - done; \ - echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu docs/Makefile'; \ - $(am__cd) $(top_srcdir) && \ - $(AUTOMAKE) --gnu docs/Makefile -Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status - @case '$?' in \ - *config.status*) \ - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ - *) \ - echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ - esac; - -$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh - -$(top_srcdir)/configure: $(am__configure_deps) - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh -$(ACLOCAL_M4): $(am__aclocal_m4_deps) - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh -$(am__aclocal_m4_deps): - -.texi.info: - $(AM_V_MAKEINFO)restore=: && backupdir="$(am__leading_dot)am$$$$" && \ - am__cwd=`pwd` && $(am__cd) $(srcdir) && \ - rm -rf $$backupdir && mkdir $$backupdir && \ - if ($(MAKEINFO) --version) >/dev/null 2>&1; then \ - for f in $@ $@-[0-9] $@-[0-9][0-9] $(@:.info=).i[0-9] $(@:.info=).i[0-9][0-9]; do \ - if test -f $$f; then mv $$f $$backupdir; restore=mv; else :; fi; \ - done; \ - else :; fi && \ - cd "$$am__cwd"; \ - if $(MAKEINFO) $(AM_MAKEINFOFLAGS) $(MAKEINFOFLAGS) -I $(srcdir) \ - -o $@ $<; \ - then \ - rc=0; \ - $(am__cd) $(srcdir); \ - else \ - rc=$$?; \ - $(am__cd) $(srcdir) && \ - $$restore $$backupdir/* `echo "./$@" | sed 's|[^/]*$$||'`; \ - fi; \ - rm -rf $$backupdir; exit $$rc - -.texi.dvi: - $(AM_V_TEXI2DVI)TEXINPUTS="$(am__TEXINFO_TEX_DIR)$(PATH_SEPARATOR)$$TEXINPUTS" \ - MAKEINFO='$(MAKEINFO) $(AM_MAKEINFOFLAGS) $(MAKEINFOFLAGS) -I $(srcdir)' \ - $(TEXI2DVI) $(AM_V_texinfo) --build-dir=$(@:.dvi=.t2d) -o $@ $(AM_V_texidevnull) \ - $< - -.texi.pdf: - $(AM_V_TEXI2PDF)TEXINPUTS="$(am__TEXINFO_TEX_DIR)$(PATH_SEPARATOR)$$TEXINPUTS" \ - MAKEINFO='$(MAKEINFO) $(AM_MAKEINFOFLAGS) $(MAKEINFOFLAGS) -I $(srcdir)' \ - $(TEXI2PDF) $(AM_V_texinfo) --build-dir=$(@:.pdf=.t2p) -o $@ $(AM_V_texidevnull) \ - $< - -.texi.html: - $(AM_V_MAKEINFO)rm -rf $(@:.html=.htp) - $(AM_V_at)if $(MAKEINFOHTML) $(AM_MAKEINFOHTMLFLAGS) $(MAKEINFOFLAGS) -I $(srcdir) \ - -o $(@:.html=.htp) $<; \ - then \ - rm -rf $@ && mv $(@:.html=.htp) $@; \ - else \ - rm -rf $(@:.html=.htp); exit 1; \ - fi -$(srcdir)/grub.info: grub.texi $(srcdir)/version.texi $(grub_TEXINFOS) -grub.dvi: grub.texi $(srcdir)/version.texi $(grub_TEXINFOS) -grub.pdf: grub.texi $(srcdir)/version.texi $(grub_TEXINFOS) -grub.html: grub.texi $(srcdir)/version.texi $(grub_TEXINFOS) -$(srcdir)/version.texi: $(srcdir)/stamp-vti -$(srcdir)/stamp-vti: grub.texi $(top_srcdir)/configure - @(dir=.; test -f ./grub.texi || dir=$(srcdir); \ - set `$(SHELL) $(top_srcdir)/build-aux/mdate-sh $$dir/grub.texi`; \ - echo "@set UPDATED $$1 $$2 $$3"; \ - echo "@set UPDATED-MONTH $$2 $$3"; \ - echo "@set EDITION $(VERSION)"; \ - echo "@set VERSION $(VERSION)") > vti.tmp$$$$ && \ - (cmp -s vti.tmp$$$$ $(srcdir)/version.texi \ - || (echo "Updating $(srcdir)/version.texi" && \ - cp vti.tmp$$$$ $(srcdir)/version.texi.tmp$$$$ && \ - mv $(srcdir)/version.texi.tmp$$$$ $(srcdir)/version.texi)) && \ - rm -f vti.tmp$$$$ $(srcdir)/version.texi.$$$$ - @cp $(srcdir)/version.texi $@ - -mostlyclean-vti: - -rm -f vti.tmp* $(srcdir)/version.texi.tmp* - -maintainer-clean-vti: - -rm -f $(srcdir)/stamp-vti $(srcdir)/version.texi -$(srcdir)/grub-dev.info: grub-dev.texi $(srcdir)/version-dev.texi -grub-dev.dvi: grub-dev.texi $(srcdir)/version-dev.texi -grub-dev.pdf: grub-dev.texi $(srcdir)/version-dev.texi -grub-dev.html: grub-dev.texi $(srcdir)/version-dev.texi -$(srcdir)/version-dev.texi: $(srcdir)/stamp-1 -$(srcdir)/stamp-1: grub-dev.texi $(top_srcdir)/configure - @(dir=.; test -f ./grub-dev.texi || dir=$(srcdir); \ - set `$(SHELL) $(top_srcdir)/build-aux/mdate-sh $$dir/grub-dev.texi`; \ - echo "@set UPDATED $$1 $$2 $$3"; \ - echo "@set UPDATED-MONTH $$2 $$3"; \ - echo "@set EDITION $(VERSION)"; \ - echo "@set VERSION $(VERSION)") > 1.tmp$$$$ && \ - (cmp -s 1.tmp$$$$ $(srcdir)/version-dev.texi \ - || (echo "Updating $(srcdir)/version-dev.texi" && \ - cp 1.tmp$$$$ $(srcdir)/version-dev.texi.tmp$$$$ && \ - mv $(srcdir)/version-dev.texi.tmp$$$$ $(srcdir)/version-dev.texi)) && \ - rm -f 1.tmp$$$$ $(srcdir)/version-dev.texi.$$$$ - @cp $(srcdir)/version-dev.texi $@ - -mostlyclean-1: - -rm -f 1.tmp* $(srcdir)/version-dev.texi.tmp* - -maintainer-clean-1: - -rm -f $(srcdir)/stamp-1 $(srcdir)/version-dev.texi -.dvi.ps: - $(AM_V_DVIPS)TEXINPUTS="$(am__TEXINFO_TEX_DIR)$(PATH_SEPARATOR)$$TEXINPUTS" \ - $(DVIPS) $(AM_V_texinfo) -o $@ $< - -uninstall-dvi-am: - @$(NORMAL_UNINSTALL) - @list='$(DVIS)'; test -n "$(dvidir)" || list=; \ - for p in $$list; do \ - $(am__strip_dir) \ - echo " rm -f '$(DESTDIR)$(dvidir)/$$f'"; \ - rm -f "$(DESTDIR)$(dvidir)/$$f"; \ - done - -uninstall-html-am: - @$(NORMAL_UNINSTALL) - @list='$(HTMLS)'; test -n "$(htmldir)" || list=; \ - for p in $$list; do \ - $(am__strip_dir) \ - echo " rm -rf '$(DESTDIR)$(htmldir)/$$f'"; \ - rm -rf "$(DESTDIR)$(htmldir)/$$f"; \ - done - -uninstall-info-am: - @$(PRE_UNINSTALL) - @if test -d '$(DESTDIR)$(infodir)' && $(am__can_run_installinfo); then \ - list='$(INFO_DEPS)'; \ - for file in $$list; do \ - relfile=`echo "$$file" | sed 's|^.*/||'`; \ - echo " install-info --info-dir='$(DESTDIR)$(infodir)' --remove '$(DESTDIR)$(infodir)/$$relfile'"; \ - if install-info --info-dir="$(DESTDIR)$(infodir)" --remove "$(DESTDIR)$(infodir)/$$relfile"; \ - then :; else test ! -f "$(DESTDIR)$(infodir)/$$relfile" || exit 1; fi; \ - done; \ - else :; fi - @$(NORMAL_UNINSTALL) - @list='$(INFO_DEPS)'; \ - for file in $$list; do \ - relfile=`echo "$$file" | sed 's|^.*/||'`; \ - relfile_i=`echo "$$relfile" | sed 's|\.info$$||;s|$$|.i|'`; \ - (if test -d "$(DESTDIR)$(infodir)" && cd "$(DESTDIR)$(infodir)"; then \ - echo " cd '$(DESTDIR)$(infodir)' && rm -f $$relfile $$relfile-[0-9] $$relfile-[0-9][0-9] $$relfile_i[0-9] $$relfile_i[0-9][0-9]"; \ - rm -f $$relfile $$relfile-[0-9] $$relfile-[0-9][0-9] $$relfile_i[0-9] $$relfile_i[0-9][0-9]; \ - else :; fi); \ - done - -uninstall-pdf-am: - @$(NORMAL_UNINSTALL) - @list='$(PDFS)'; test -n "$(pdfdir)" || list=; \ - for p in $$list; do \ - $(am__strip_dir) \ - echo " rm -f '$(DESTDIR)$(pdfdir)/$$f'"; \ - rm -f "$(DESTDIR)$(pdfdir)/$$f"; \ - done - -uninstall-ps-am: - @$(NORMAL_UNINSTALL) - @list='$(PSS)'; test -n "$(psdir)" || list=; \ - for p in $$list; do \ - $(am__strip_dir) \ - echo " rm -f '$(DESTDIR)$(psdir)/$$f'"; \ - rm -f "$(DESTDIR)$(psdir)/$$f"; \ - done - -dist-info: $(INFO_DEPS) - @srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \ - list='$(INFO_DEPS)'; \ - for base in $$list; do \ - case $$base in \ - $(srcdir)/*) base=`echo "$$base" | sed "s|^$$srcdirstrip/||"`;; \ - esac; \ - if test -f $$base; then d=.; else d=$(srcdir); fi; \ - base_i=`echo "$$base" | sed 's|\.info$$||;s|$$|.i|'`; \ - for file in $$d/$$base $$d/$$base-[0-9] $$d/$$base-[0-9][0-9] $$d/$$base_i[0-9] $$d/$$base_i[0-9][0-9]; do \ - if test -f $$file; then \ - relfile=`expr "$$file" : "$$d/\(.*\)"`; \ - test -f "$(distdir)/$$relfile" || \ - cp -p $$file "$(distdir)/$$relfile"; \ - else :; fi; \ - done; \ - done - -mostlyclean-aminfo: - -rm -rf grub.t2d grub.t2p grub-dev.t2d grub-dev.t2p - -clean-aminfo: - -test -z "grub.dvi grub.pdf grub.ps grub.html grub-dev.dvi grub-dev.pdf \ - grub-dev.ps grub-dev.html" \ - || rm -rf grub.dvi grub.pdf grub.ps grub.html grub-dev.dvi grub-dev.pdf \ - grub-dev.ps grub-dev.html - -maintainer-clean-aminfo: - @list='$(INFO_DEPS)'; for i in $$list; do \ - i_i=`echo "$$i" | sed 's|\.info$$||;s|$$|.i|'`; \ - echo " rm -f $$i $$i-[0-9] $$i-[0-9][0-9] $$i_i[0-9] $$i_i[0-9][0-9]"; \ - rm -f $$i $$i-[0-9] $$i-[0-9][0-9] $$i_i[0-9] $$i_i[0-9][0-9]; \ - done -tags TAGS: - -ctags CTAGS: - -cscope cscopelist: - - -distdir: $(DISTFILES) - @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ - topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ - list='$(DISTFILES)'; \ - dist_files=`for file in $$list; do echo $$file; done | \ - sed -e "s|^$$srcdirstrip/||;t" \ - -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ - case $$dist_files in \ - */*) $(MKDIR_P) `echo "$$dist_files" | \ - sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ - sort -u` ;; \ - esac; \ - for file in $$dist_files; do \ - if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ - if test -d $$d/$$file; then \ - dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ - if test -d "$(distdir)/$$file"; then \ - find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ - fi; \ - if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ - cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ - find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ - fi; \ - cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ - else \ - test -f "$(distdir)/$$file" \ - || cp -p $$d/$$file "$(distdir)/$$file" \ - || exit 1; \ - fi; \ - done - $(MAKE) $(AM_MAKEFLAGS) \ - top_distdir="$(top_distdir)" distdir="$(distdir)" \ - dist-info -check-am: all-am -check: check-am -all-am: Makefile $(INFO_DEPS) -installdirs: - for dir in "$(DESTDIR)$(infodir)"; do \ - test -z "$$dir" || $(MKDIR_P) "$$dir"; \ - done -install: install-am -install-exec: install-exec-am -install-data: install-data-am -uninstall: uninstall-am - -install-am: all-am - @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am - -installcheck: installcheck-am -install-strip: - if test -z '$(STRIP)'; then \ - $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ - install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ - install; \ - else \ - $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ - install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ - "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \ - fi -mostlyclean-generic: - -clean-generic: - -distclean-generic: - -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) - -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) - -maintainer-clean-generic: - @echo "This command is intended for maintainers to use" - @echo "it deletes files that may require special tools to rebuild." -clean: clean-am - -clean-am: clean-aminfo clean-generic mostlyclean-am - -distclean: distclean-am - -rm -f Makefile -distclean-am: clean-am distclean-generic - -dvi: dvi-am - -dvi-am: $(DVIS) - -html: html-am - -html-am: $(HTMLS) - -info: info-am - -info-am: $(INFO_DEPS) - -install-data-am: install-info-am - -install-dvi: install-dvi-am - -install-dvi-am: $(DVIS) - @$(NORMAL_INSTALL) - @list='$(DVIS)'; test -n "$(dvidir)" || list=; \ - if test -n "$$list"; then \ - echo " $(MKDIR_P) '$(DESTDIR)$(dvidir)'"; \ - $(MKDIR_P) "$(DESTDIR)$(dvidir)" || exit 1; \ - fi; \ - for p in $$list; do \ - if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ - echo "$$d$$p"; \ - done | $(am__base_list) | \ - while read files; do \ - echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(dvidir)'"; \ - $(INSTALL_DATA) $$files "$(DESTDIR)$(dvidir)" || exit $$?; \ - done -install-exec-am: - -install-html: install-html-am - -install-html-am: $(HTMLS) - @$(NORMAL_INSTALL) - @list='$(HTMLS)'; list2=; test -n "$(htmldir)" || list=; \ - if test -n "$$list"; then \ - echo " $(MKDIR_P) '$(DESTDIR)$(htmldir)'"; \ - $(MKDIR_P) "$(DESTDIR)$(htmldir)" || exit 1; \ - fi; \ - for p in $$list; do \ - if test -f "$$p" || test -d "$$p"; then d=; else d="$(srcdir)/"; fi; \ - $(am__strip_dir) \ - d2=$$d$$p; \ - if test -d "$$d2"; then \ - echo " $(MKDIR_P) '$(DESTDIR)$(htmldir)/$$f'"; \ - $(MKDIR_P) "$(DESTDIR)$(htmldir)/$$f" || exit 1; \ - echo " $(INSTALL_DATA) '$$d2'/* '$(DESTDIR)$(htmldir)/$$f'"; \ - $(INSTALL_DATA) "$$d2"/* "$(DESTDIR)$(htmldir)/$$f" || exit $$?; \ - else \ - list2="$$list2 $$d2"; \ - fi; \ - done; \ - test -z "$$list2" || { echo "$$list2" | $(am__base_list) | \ - while read files; do \ - echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(htmldir)'"; \ - $(INSTALL_DATA) $$files "$(DESTDIR)$(htmldir)" || exit $$?; \ - done; } -install-info: install-info-am - -install-info-am: $(INFO_DEPS) - @$(NORMAL_INSTALL) - @srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \ - list='$(INFO_DEPS)'; test -n "$(infodir)" || list=; \ - if test -n "$$list"; then \ - echo " $(MKDIR_P) '$(DESTDIR)$(infodir)'"; \ - $(MKDIR_P) "$(DESTDIR)$(infodir)" || exit 1; \ - fi; \ - for file in $$list; do \ - case $$file in \ - $(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \ - esac; \ - if test -f $$file; then d=.; else d=$(srcdir); fi; \ - file_i=`echo "$$file" | sed 's|\.info$$||;s|$$|.i|'`; \ - for ifile in $$d/$$file $$d/$$file-[0-9] $$d/$$file-[0-9][0-9] \ - $$d/$$file_i[0-9] $$d/$$file_i[0-9][0-9] ; do \ - if test -f $$ifile; then \ - echo "$$ifile"; \ - else : ; fi; \ - done; \ - done | $(am__base_list) | \ - while read files; do \ - echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(infodir)'"; \ - $(INSTALL_DATA) $$files "$(DESTDIR)$(infodir)" || exit $$?; done - @$(POST_INSTALL) - @if $(am__can_run_installinfo); then \ - list='$(INFO_DEPS)'; test -n "$(infodir)" || list=; \ - for file in $$list; do \ - relfile=`echo "$$file" | sed 's|^.*/||'`; \ - echo " install-info --info-dir='$(DESTDIR)$(infodir)' '$(DESTDIR)$(infodir)/$$relfile'";\ - install-info --info-dir="$(DESTDIR)$(infodir)" "$(DESTDIR)$(infodir)/$$relfile" || :;\ - done; \ - else : ; fi -install-man: - -install-pdf: install-pdf-am - -install-pdf-am: $(PDFS) - @$(NORMAL_INSTALL) - @list='$(PDFS)'; test -n "$(pdfdir)" || list=; \ - if test -n "$$list"; then \ - echo " $(MKDIR_P) '$(DESTDIR)$(pdfdir)'"; \ - $(MKDIR_P) "$(DESTDIR)$(pdfdir)" || exit 1; \ - fi; \ - for p in $$list; do \ - if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ - echo "$$d$$p"; \ - done | $(am__base_list) | \ - while read files; do \ - echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(pdfdir)'"; \ - $(INSTALL_DATA) $$files "$(DESTDIR)$(pdfdir)" || exit $$?; done -install-ps: install-ps-am - -install-ps-am: $(PSS) - @$(NORMAL_INSTALL) - @list='$(PSS)'; test -n "$(psdir)" || list=; \ - if test -n "$$list"; then \ - echo " $(MKDIR_P) '$(DESTDIR)$(psdir)'"; \ - $(MKDIR_P) "$(DESTDIR)$(psdir)" || exit 1; \ - fi; \ - for p in $$list; do \ - if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ - echo "$$d$$p"; \ - done | $(am__base_list) | \ - while read files; do \ - echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(psdir)'"; \ - $(INSTALL_DATA) $$files "$(DESTDIR)$(psdir)" || exit $$?; done -installcheck-am: - -maintainer-clean: maintainer-clean-am - -rm -f Makefile -maintainer-clean-am: distclean-am maintainer-clean-1 \ - maintainer-clean-aminfo maintainer-clean-generic \ - maintainer-clean-vti - -mostlyclean: mostlyclean-am - -mostlyclean-am: mostlyclean-1 mostlyclean-aminfo mostlyclean-generic \ - mostlyclean-vti - -pdf: pdf-am - -pdf-am: $(PDFS) - -ps: ps-am - -ps-am: $(PSS) - -uninstall-am: uninstall-dvi-am uninstall-html-am uninstall-info-am \ - uninstall-pdf-am uninstall-ps-am - -.MAKE: install-am install-strip - -.PHONY: all all-am check check-am clean clean-aminfo clean-generic \ - cscopelist-am ctags-am dist-info distclean distclean-generic \ - distdir dvi dvi-am html html-am info info-am install \ - install-am install-data install-data-am install-dvi \ - install-dvi-am install-exec install-exec-am install-html \ - install-html-am install-info install-info-am install-man \ - install-pdf install-pdf-am install-ps install-ps-am \ - install-strip installcheck installcheck-am installdirs \ - maintainer-clean maintainer-clean-1 maintainer-clean-aminfo \ - maintainer-clean-generic maintainer-clean-vti mostlyclean \ - mostlyclean-1 mostlyclean-aminfo mostlyclean-generic \ - mostlyclean-vti pdf pdf-am ps ps-am tags-am uninstall \ - uninstall-am uninstall-dvi-am uninstall-html-am \ - uninstall-info-am uninstall-pdf-am uninstall-ps-am - -.PRECIOUS: Makefile - - -# Tell versions [3.59,3.63) of GNU make to not export all variables. -# Otherwise a system limit (for SysV at least) may be exceeded. -.NOEXPORT: diff --git a/thirdparty/grub-2.04/docs/autoiso.cfg b/thirdparty/grub-2.04/docs/autoiso.cfg deleted file mode 100644 index 9ce51c692..000000000 --- a/thirdparty/grub-2.04/docs/autoiso.cfg +++ /dev/null @@ -1,244 +0,0 @@ -# Sample GRUB script to autodetect operating systems -# -# Copyright (C) 2010 Free Software Foundation, Inc. -# -# GRUB is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# GRUB is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with GRUB. If not, see . - -function pathname { regexp -s 2:"$2" '^(\(.*\))?(/.*)$' "$1"; } -function devname { regexp -s "$2" '^(\(.*\)).*$' "$1"; } - -function loopback_iso_entry { - realdev="$1" - isopath="$2" - loopdev="$3" - - if test -f /boot/grub/loopback.cfg; then - cfgpath=/boot/grub/loopback.cfg - elif test -f /grub/loopback.cfg; then - cfgpath=/grub/loopback.cfg - else - return 1; - fi - - echo loopback.cfg $isopath: yes - menuentry "Boot GRUB Loopback Config from ${realdev}${isopath}" "$realdev" "$isopath" "$cfgpath" { - set device="$2" - set iso_path="$3" - set cfg_path="$4" - - export iso_path - loopback loopdev_cfg "${device}${iso_path}" - set root=(loopdev_cfg) - configfile $cfg_path - loopback -d loopdev_cfg - } - return 0 -} - -function grml_iso_entry { - realdev="$1" - isopath="$2" - loopdev="$3" - - result=1 - for dir in /boot/grml /boot/grmlsmall /boot/grmlmedium; do - if ! test -f ${dir}/linux26 -a -f ${dir}/initrd.gz; then continue; fi - - echo grml $isopath: yes - result=0 - menuentry "GRML Linux from ${realdev}${isopath}" \ - "$realdev" "$isopath" "$dir" { - set device="$2" - set isopath="$3" - set grmldir="$4" - - loopback loopdev_grml "${device}${isopath}" - set root=(loopdev_grml) - linux $grmldir/linux26 findiso="$isopath" apm=power-off quiet \ - boot=live nomce - initrd $grmldir/initrd.gz - loopback -d loopdev_grml - } - done - return $result -} - -function pmagic_iso_entry { - realdev="$1" - isopath="$2" - loopdev="$3" - - if ! test -f /pmagic/bzImage -a -f /pmagic/initramfs; then return 1; fi - - echo pmagic $isopath: yes - menuentry "Parted Magic from ${realdev}${isopath}" "$realdev" "$isopath" { - set device="$2" - set isopath="$3" - - loopback loopdev_pmagic "${device}${isopath}" - set root=(loopdev_pmagic) - linux /pmagic/bzImage iso_filename="$isopath" edd=off noapic \ - load_ramdisk=1 prompt_ramdisk=0 rw sleep=10 loglevel=0 \ - keymap=$langcode - initrd /pmagic/initramfs - loopback -d loopdev_pmagic - } - return 0 -} - -function sidux_iso_entry { - realdev="$1" - isopath="$2" - loopdev="$3" - - result=1 - for kernel in /boot/vmlinuz-*-sidux-*; do - if ! test -f "$kernel"; then continue; fi - regexp -s 1:v1 -s 2:v2 '/boot/vmlinuz-(.*)-sidux-(.*)' "$kernel" - - initrd="/boot/initrd.img-$v1-sidux-$v2" - if ! test -f "$initrd"; then continue; fi - - result=0 - echo sidux $isopath: yes - menuentry "Sidux vmlinux-$v1-sidux-$v2 from ${realdev}${isopath}" "$realdev" "$isopath" "$kernel" "$initrd" { - set device="$2" - set isopath="$3" - set kernel="$4" - set initrd="$5" - - loopback loopdev_sidux "${device}${isopath}" - set root=(loopdev_sidux) - linux $kernel fromiso=$isopath boot=fll quiet - initrd $initrd - loopback -d loopdev_sidux - } - done - return $result -} - -function slax_iso_entry { - realdev="$1" - isopath="$2" - loopdev="$3" - - if ! test -f /boot/vmlinuz -a -f /boot/initrd.gz; then return 1; fi - - echo slax $isopath: yes - menuentry "Slax Linux from ${realdev}${isopath}" "$realdev" "$isopath" { - set device="$2" - set isopath="$3" - - loopback loopdev_slax "${device}${isopath}" - set root=(loopdev_slax) - linux /boot/vmlinuz from=$isopath ramdisk_size=6666 root=/dev/ram0 rw - initrd /boot/initrd.gz - loopback -d loopdev_slax - } - return 0 -} - -function tinycore_iso_entry { - realpath="$1" - isopath="$2" - loopdev="$3" - - if ! test -f /boot/bzImage -a -f /boot/tinycore.gz; then return 1; fi - - echo tinycore $isopath: yes - menuentry "Tinycore Linux from ${realdev}${isopath}" "$realdev" "$isopath" { - set device="$2" - set isopath="$3" - - loopback loopdev_tiny "${device}${isopath}" - set root=(loopdev_tiny) - linux /boot/bzImage - initrd /boot/tinycore.gz - loopback -d loopdev_tiny - } - return 0 -} - -function casper_iso_entry { - realpath="$1" - isopath="$2" - loopdev="$3" - - if ! test -f /casper/vmlinuz; then return 1; fi - initrd= - for f in /casper/initrd.*z; do - if ! test -f "$f"; then continue; fi - pathname "$f" initrd - done - if test -z "$initrd"; then return 1; fi - - echo casper $isopath: yes - menuentry "Casper based Linux from ${realdev}${isopath}" "$realdev" "$isopath" "$initrd" { - set device="$2" - set isopath="$3" - set initrd="$4" - - loopback loopdev_casper "${device}${isopath}" - set root=(loopdev_casper) - linux /casper/vmlinuz boot=casper iso-scan/filename="$isopath" quiet splash noprompt keyb="$langcode" \ - debian-installer/language="$langcode" console-setup/layoutcode?="$langcode" -- - initrd $initrd - loopback -d loopdev_casper - } - return 0 -} - -function scan_isos { - isodirs="$1" - - for dev in (*); do - for dir in $isodirs; do - for file in ${dev}${dir}/*.iso ${dev}${dir}/*.ISO; do - if ! test -f "$file"; then continue; fi - - pathname $file isopath - if test -z "$dev" -o -z "$isopath"; then continue; fi - - if ! loopback loopdev_scan "$file"; then continue; fi - saved_root=$root - set root=(loopdev_scan) - - if loopback_iso_entry $dev $isopath (loopdev_scan); then true; - elif grml_iso_entry $dev $isopath (loopdev_scan); then true; - elif pmagic_iso_entry $dev $isopath (loopdev_scan); then true; - elif sidux_iso_entry $dev $isopath (loopdev_scan); then true; - elif slax_iso_entry $dev $isopath (loopdev_scan); then true; - elif tinycore_iso_entry $dev $isopath (loopdev_scan); then true; - elif casper_iso_entry $dev $isopath (loopdev_scan); then true; - else true; fi - - set root=$saved_root - loopback -d loopdev_scan - done - done - done - return 0 -} - -# XXX Remove later -insmod serial -serial -terminal_output --append serial -# terminal_input --append serial - -langcode="$lang" - -insmod regexp -scan_isos /iso /boot/iso - diff --git a/thirdparty/grub-2.04/docs/fdl.texi b/thirdparty/grub-2.04/docs/fdl.texi deleted file mode 100644 index fe78df8d5..000000000 --- a/thirdparty/grub-2.04/docs/fdl.texi +++ /dev/null @@ -1,452 +0,0 @@ - -@node GNU Free Documentation License -@appendixsec GNU Free Documentation License - -@cindex FDL, GNU Free Documentation License -@center Version 1.2, November 2002 - -@display -Copyright @copyright{} 2000,2001,2002 Free Software Foundation, Inc. -51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA - -Everyone is permitted to copy and distribute verbatim copies -of this license document, but changing it is not allowed. -@end display - -@enumerate 0 -@item -PREAMBLE - -The purpose of this License is to make a manual, textbook, or other -functional and useful document @dfn{free} in the sense of freedom: to -assure everyone the effective freedom to copy and redistribute it, -with or without modifying it, either commercially or noncommercially. -Secondarily, this License preserves for the author and publisher a way -to get credit for their work, while not being considered responsible -for modifications made by others. - -This License is a kind of ``copyleft'', which means that derivative -works of the document must themselves be free in the same sense. It -complements the GNU General Public License, which is a copyleft -license designed for free software. - -We have designed this License in order to use it for manuals for free -software, because free software needs free documentation: a free -program should come with manuals providing the same freedoms that the -software does. But this License is not limited to software manuals; -it can be used for any textual work, regardless of subject matter or -whether it is published as a printed book. We recommend this License -principally for works whose purpose is instruction or reference. - -@item -APPLICABILITY AND DEFINITIONS - -This License applies to any manual or other work, in any medium, that -contains a notice placed by the copyright holder saying it can be -distributed under the terms of this License. Such a notice grants a -world-wide, royalty-free license, unlimited in duration, to use that -work under the conditions stated herein. The ``Document'', below, -refers to any such manual or work. Any member of the public is a -licensee, and is addressed as ``you''. You accept the license if you -copy, modify or distribute the work in a way requiring permission -under copyright law. - -A ``Modified Version'' of the Document means any work containing the -Document or a portion of it, either copied verbatim, or with -modifications and/or translated into another language. - -A ``Secondary Section'' is a named appendix or a front-matter section -of the Document that deals exclusively with the relationship of the -publishers or authors of the Document to the Document's overall -subject (or to related matters) and contains nothing that could fall -directly within that overall subject. (Thus, if the Document is in -part a textbook of mathematics, a Secondary Section may not explain -any mathematics.) The relationship could be a matter of historical -connection with the subject or with related matters, or of legal, -commercial, philosophical, ethical or political position regarding -them. - -The ``Invariant Sections'' are certain Secondary Sections whose titles -are designated, as being those of Invariant Sections, in the notice -that says that the Document is released under this License. If a -section does not fit the above definition of Secondary then it is not -allowed to be designated as Invariant. The Document may contain zero -Invariant Sections. If the Document does not identify any Invariant -Sections then there are none. - -The ``Cover Texts'' are certain short passages of text that are listed, -as Front-Cover Texts or Back-Cover Texts, in the notice that says that -the Document is released under this License. A Front-Cover Text may -be at most 5 words, and a Back-Cover Text may be at most 25 words. - -A ``Transparent'' copy of the Document means a machine-readable copy, -represented in a format whose specification is available to the -general public, that is suitable for revising the document -straightforwardly with generic text editors or (for images composed of -pixels) generic paint programs or (for drawings) some widely available -drawing editor, and that is suitable for input to text formatters or -for automatic translation to a variety of formats suitable for input -to text formatters. A copy made in an otherwise Transparent file -format whose markup, or absence of markup, has been arranged to thwart -or discourage subsequent modification by readers is not Transparent. -An image format is not Transparent if used for any substantial amount -of text. A copy that is not ``Transparent'' is called ``Opaque''. - -Examples of suitable formats for Transparent copies include plain -@sc{ascii} without markup, Texinfo input format, La@TeX{} input -format, @acronym{SGML} or @acronym{XML} using a publicly available -@acronym{DTD}, and standard-conforming simple @acronym{HTML}, -PostScript or @acronym{PDF} designed for human modification. Examples -of transparent image formats include @acronym{PNG}, @acronym{XCF} and -@acronym{JPG}. Opaque formats include proprietary formats that can be -read and edited only by proprietary word processors, @acronym{SGML} or -@acronym{XML} for which the @acronym{DTD} and/or processing tools are -not generally available, and the machine-generated @acronym{HTML}, -PostScript or @acronym{PDF} produced by some word processors for -output purposes only. - -The ``Title Page'' means, for a printed book, the title page itself, -plus such following pages as are needed to hold, legibly, the material -this License requires to appear in the title page. For works in -formats which do not have any title page as such, ``Title Page'' means -the text near the most prominent appearance of the work's title, -preceding the beginning of the body of the text. - -A section ``Entitled XYZ'' means a named subunit of the Document whose -title either is precisely XYZ or contains XYZ in parentheses following -text that translates XYZ in another language. (Here XYZ stands for a -specific section name mentioned below, such as ``Acknowledgements'', -``Dedications'', ``Endorsements'', or ``History''.) To ``Preserve the Title'' -of such a section when you modify the Document means that it remains a -section ``Entitled XYZ'' according to this definition. - -The Document may include Warranty Disclaimers next to the notice which -states that this License applies to the Document. These Warranty -Disclaimers are considered to be included by reference in this -License, but only as regards disclaiming warranties: any other -implication that these Warranty Disclaimers may have is void and has -no effect on the meaning of this License. - -@item -VERBATIM COPYING - -You may copy and distribute the Document in any medium, either -commercially or noncommercially, provided that this License, the -copyright notices, and the license notice saying this License applies -to the Document are reproduced in all copies, and that you add no other -conditions whatsoever to those of this License. You may not use -technical measures to obstruct or control the reading or further -copying of the copies you make or distribute. However, you may accept -compensation in exchange for copies. If you distribute a large enough -number of copies you must also follow the conditions in section 3. - -You may also lend copies, under the same conditions stated above, and -you may publicly display copies. - -@item -COPYING IN QUANTITY - -If you publish printed copies (or copies in media that commonly have -printed covers) of the Document, numbering more than 100, and the -Document's license notice requires Cover Texts, you must enclose the -copies in covers that carry, clearly and legibly, all these Cover -Texts: Front-Cover Texts on the front cover, and Back-Cover Texts on -the back cover. Both covers must also clearly and legibly identify -you as the publisher of these copies. The front cover must present -the full title with all words of the title equally prominent and -visible. You may add other material on the covers in addition. -Copying with changes limited to the covers, as long as they preserve -the title of the Document and satisfy these conditions, can be treated -as verbatim copying in other respects. - -If the required texts for either cover are too voluminous to fit -legibly, you should put the first ones listed (as many as fit -reasonably) on the actual cover, and continue the rest onto adjacent -pages. - -If you publish or distribute Opaque copies of the Document numbering -more than 100, you must either include a machine-readable Transparent -copy along with each Opaque copy, or state in or with each Opaque copy -a computer-network location from which the general network-using -public has access to download using public-standard network protocols -a complete Transparent copy of the Document, free of added material. -If you use the latter option, you must take reasonably prudent steps, -when you begin distribution of Opaque copies in quantity, to ensure -that this Transparent copy will remain thus accessible at the stated -location until at least one year after the last time you distribute an -Opaque copy (directly or through your agents or retailers) of that -edition to the public. - -It is requested, but not required, that you contact the authors of the -Document well before redistributing any large number of copies, to give -them a chance to provide you with an updated version of the Document. - -@item -MODIFICATIONS - -You may copy and distribute a Modified Version of the Document under -the conditions of sections 2 and 3 above, provided that you release -the Modified Version under precisely this License, with the Modified -Version filling the role of the Document, thus licensing distribution -and modification of the Modified Version to whoever possesses a copy -of it. In addition, you must do these things in the Modified Version: - -@enumerate A -@item -Use in the Title Page (and on the covers, if any) a title distinct -from that of the Document, and from those of previous versions -(which should, if there were any, be listed in the History section -of the Document). You may use the same title as a previous version -if the original publisher of that version gives permission. - -@item -List on the Title Page, as authors, one or more persons or entities -responsible for authorship of the modifications in the Modified -Version, together with at least five of the principal authors of the -Document (all of its principal authors, if it has fewer than five), -unless they release you from this requirement. - -@item -State on the Title page the name of the publisher of the -Modified Version, as the publisher. - -@item -Preserve all the copyright notices of the Document. - -@item -Add an appropriate copyright notice for your modifications -adjacent to the other copyright notices. - -@item -Include, immediately after the copyright notices, a license notice -giving the public permission to use the Modified Version under the -terms of this License, in the form shown in the Addendum below. - -@item -Preserve in that license notice the full lists of Invariant Sections -and required Cover Texts given in the Document's license notice. - -@item -Include an unaltered copy of this License. - -@item -Preserve the section Entitled ``History'', Preserve its Title, and add -to it an item stating at least the title, year, new authors, and -publisher of the Modified Version as given on the Title Page. If -there is no section Entitled ``History'' in the Document, create one -stating the title, year, authors, and publisher of the Document as -given on its Title Page, then add an item describing the Modified -Version as stated in the previous sentence. - -@item -Preserve the network location, if any, given in the Document for -public access to a Transparent copy of the Document, and likewise -the network locations given in the Document for previous versions -it was based on. These may be placed in the ``History'' section. -You may omit a network location for a work that was published at -least four years before the Document itself, or if the original -publisher of the version it refers to gives permission. - -@item -For any section Entitled ``Acknowledgements'' or ``Dedications'', Preserve -the Title of the section, and preserve in the section all the -substance and tone of each of the contributor acknowledgements and/or -dedications given therein. - -@item -Preserve all the Invariant Sections of the Document, -unaltered in their text and in their titles. Section numbers -or the equivalent are not considered part of the section titles. - -@item -Delete any section Entitled ``Endorsements''. Such a section -may not be included in the Modified Version. - -@item -Do not retitle any existing section to be Entitled ``Endorsements'' or -to conflict in title with any Invariant Section. - -@item -Preserve any Warranty Disclaimers. -@end enumerate - -If the Modified Version includes new front-matter sections or -appendices that qualify as Secondary Sections and contain no material -copied from the Document, you may at your option designate some or all -of these sections as invariant. To do this, add their titles to the -list of Invariant Sections in the Modified Version's license notice. -These titles must be distinct from any other section titles. - -You may add a section Entitled ``Endorsements'', provided it contains -nothing but endorsements of your Modified Version by various -parties---for example, statements of peer review or that the text has -been approved by an organization as the authoritative definition of a -standard. - -You may add a passage of up to five words as a Front-Cover Text, and a -passage of up to 25 words as a Back-Cover Text, to the end of the list -of Cover Texts in the Modified Version. Only one passage of -Front-Cover Text and one of Back-Cover Text may be added by (or -through arrangements made by) any one entity. If the Document already -includes a cover text for the same cover, previously added by you or -by arrangement made by the same entity you are acting on behalf of, -you may not add another; but you may replace the old one, on explicit -permission from the previous publisher that added the old one. - -The author(s) and publisher(s) of the Document do not by this License -give permission to use their names for publicity for or to assert or -imply endorsement of any Modified Version. - -@item -COMBINING DOCUMENTS - -You may combine the Document with other documents released under this -License, under the terms defined in section 4 above for modified -versions, provided that you include in the combination all of the -Invariant Sections of all of the original documents, unmodified, and -list them all as Invariant Sections of your combined work in its -license notice, and that you preserve all their Warranty Disclaimers. - -The combined work need only contain one copy of this License, and -multiple identical Invariant Sections may be replaced with a single -copy. If there are multiple Invariant Sections with the same name but -different contents, make the title of each such section unique by -adding at the end of it, in parentheses, the name of the original -author or publisher of that section if known, or else a unique number. -Make the same adjustment to the section titles in the list of -Invariant Sections in the license notice of the combined work. - -In the combination, you must combine any sections Entitled ``History'' -in the various original documents, forming one section Entitled -``History''; likewise combine any sections Entitled ``Acknowledgements'', -and any sections Entitled ``Dedications''. You must delete all -sections Entitled ``Endorsements.'' - -@item -COLLECTIONS OF DOCUMENTS - -You may make a collection consisting of the Document and other documents -released under this License, and replace the individual copies of this -License in the various documents with a single copy that is included in -the collection, provided that you follow the rules of this License for -verbatim copying of each of the documents in all other respects. - -You may extract a single document from such a collection, and distribute -it individually under this License, provided you insert a copy of this -License into the extracted document, and follow this License in all -other respects regarding verbatim copying of that document. - -@item -AGGREGATION WITH INDEPENDENT WORKS - -A compilation of the Document or its derivatives with other separate -and independent documents or works, in or on a volume of a storage or -distribution medium, is called an ``aggregate'' if the copyright -resulting from the compilation is not used to limit the legal rights -of the compilation's users beyond what the individual works permit. -When the Document is included in an aggregate, this License does not -apply to the other works in the aggregate which are not themselves -derivative works of the Document. - -If the Cover Text requirement of section 3 is applicable to these -copies of the Document, then if the Document is less than one half of -the entire aggregate, the Document's Cover Texts may be placed on -covers that bracket the Document within the aggregate, or the -electronic equivalent of covers if the Document is in electronic form. -Otherwise they must appear on printed covers that bracket the whole -aggregate. - -@item -TRANSLATION - -Translation is considered a kind of modification, so you may -distribute translations of the Document under the terms of section 4. -Replacing Invariant Sections with translations requires special -permission from their copyright holders, but you may include -translations of some or all Invariant Sections in addition to the -original versions of these Invariant Sections. You may include a -translation of this License, and all the license notices in the -Document, and any Warranty Disclaimers, provided that you also include -the original English version of this License and the original versions -of those notices and disclaimers. In case of a disagreement between -the translation and the original version of this License or a notice -or disclaimer, the original version will prevail. - -If a section in the Document is Entitled ``Acknowledgements'', -``Dedications'', or ``History'', the requirement (section 4) to Preserve -its Title (section 1) will typically require changing the actual -title. - -@item -TERMINATION - -You may not copy, modify, sublicense, or distribute the Document except -as expressly provided for under this License. Any other attempt to -copy, modify, sublicense or distribute the Document is void, and will -automatically terminate your rights under this License. However, -parties who have received copies, or rights, from you under this -License will not have their licenses terminated so long as such -parties remain in full compliance. - -@item -FUTURE REVISIONS OF THIS LICENSE - -The Free Software Foundation may publish new, revised versions -of the GNU Free Documentation License from time to time. Such new -versions will be similar in spirit to the present version, but may -differ in detail to address new problems or concerns. See -@uref{http://www.gnu.org/copyleft/}. - -Each version of the License is given a distinguishing version number. -If the Document specifies that a particular numbered version of this -License ``or any later version'' applies to it, you have the option of -following the terms and conditions either of that specified version or -of any later version that has been published (not as a draft) by the -Free Software Foundation. If the Document does not specify a version -number of this License, you may choose any version ever published (not -as a draft) by the Free Software Foundation. -@end enumerate - -@page -@appendixsubsec ADDENDUM: How to use this License for your documents - -To use this License in a document you have written, include a copy of -the License in the document and put the following copyright and -license notices just after the title page: - -@smallexample -@group - Copyright (C) @var{year} @var{your name}. - Permission is granted to copy, distribute and/or modify this document - under the terms of the GNU Free Documentation License, Version 1.2 - or any later version published by the Free Software Foundation; - with no Invariant Sections, no Front-Cover Texts, and no Back-Cover - Texts. A copy of the license is included in the section entitled ``GNU - Free Documentation License''. -@end group -@end smallexample - -If you have Invariant Sections, Front-Cover Texts and Back-Cover Texts, -replace the ``with...Texts.'' line with this: - -@smallexample -@group - with the Invariant Sections being @var{list their titles}, with - the Front-Cover Texts being @var{list}, and with the Back-Cover Texts - being @var{list}. -@end group -@end smallexample - -If you have Invariant Sections without Cover Texts, or some other -combination of the three, merge those two alternatives to suit the -situation. - -If your document contains nontrivial examples of program code, we -recommend releasing these examples in parallel under your choice of -free software license, such as the GNU General Public License, -to permit their use in free software. - -@c Local Variables: -@c ispell-local-pdict: "ispell-dict" -@c End: - diff --git a/thirdparty/grub-2.04/docs/font_char_metrics.png b/thirdparty/grub-2.04/docs/font_char_metrics.png deleted file mode 100644 index 8d10d1f645e3a22b1535716256adc73f262e56cb..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 16443 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. To fetch: - - git clone git://git.sv.gnu.org/grub.git - - Web access is available under - http://git.savannah.gnu.org/cgit/grub.git/ - - The branches available are: - -'master' - Main development branch. -'grub-legacy' - GRUB 0.97 codebase. Kept for reference and legal reasons -'multiboot' - Multiboot specfication -'multiboot2' - Multiboot2 specfication -'developer branches' - Prefixed with developer name. Every developer of a team manages - his own branches. Developer branches do not need changelog - entries. - - Once you have used 'git clone' to fetch an initial copy of a branch, -you can use 'git pull' to keep it up to date. If you have modified your -local version, you may need to resolve conflicts when pulling. - - -File: grub-dev.info, Node: Coding style, Next: Finding your way around, Prev: Getting the source code, Up: Top - -2 Coding style -************** - -Basically we follow the GNU Coding Standards -(http://www.gnu.org/prep/standards_toc.html). We define additional -conventions for GRUB here. - -* Menu: - -* Naming Conventions:: -* Functions:: -* Variables:: -* Types:: -* Macros:: -* Comments:: -* Multi-Line Comments:: - - -File: grub-dev.info, Node: Naming Conventions, Next: Functions, Up: Coding style - -2.1 Naming Conventions -====================== - -All global symbols (i.e. functions, variables, types, and macros) must -have the prefix grub_ or GRUB_. The all capital form is used only by -macros. - - -File: grub-dev.info, Node: Functions, Next: Variables, Prev: Naming Conventions, Up: Coding style - -2.2 Functions -============= - -If a function is global, its name must be prefixed with grub_ and must -consist of only small letters. If the function belongs to a specific -function module, the name must also be prefixed with the module name. -For example, if a function is for file systems, its name is prefixed -with grub_fs_. If a function is for FAT file system but not for all -file systems, its name is prefixed with grub_fs_fat_. The hierarchy is -noted this way. - - After a prefix, a function name must start with a verb (such as get -or is). It must not be a noun. Some kind of abbreviation is permitted, -as long as it wouldn't make code less readable (e.g. init). - - If a function is local, its name may not start with any prefix. It -must start with a verb. - - -File: grub-dev.info, Node: Variables, Next: Types, Prev: Functions, Up: Coding style - -2.3 Variables -============= - -The rule is mostly the same as functions, as noted above. If a variable -is global, its name must be prefixed with grub_ and must consist of only -small letters. If the variable belongs to a specific function module, -the name must also be prefixed with the module name. For example, if a -function is for dynamic loading, its name is prefixed with grub_dl_. If -a variable is for ELF but not for all dynamic loading systems, its name -is prefixed with grub_dl_elf_. - - After a prefix, a variable name must start with a noun or an -adjective (such as name or long) and it should end with a noun. Some -kind of abbreviation is permitted, as long as it wouldn't make code less -readable (e.g. i18n). - - If a variable is global in the scope of a single file (i.e. it is -declared with static), its name may not start with any prefix. It must -start with a noun or an adjective. - - If a variable is local, you may choose any shorter name, as long as -it wouldn't make code less readable (e.g. i). - - -File: grub-dev.info, Node: Types, Next: Macros, Prev: Variables, Up: Coding style - -2.4 Types -========= - -The name of a type must be prefixed with grub_ and must consist of only -small letters. If the type belongs to a specific function module, the -name must also be prefixed with the module name. For example, if a type -is for OS loaders, its name is prefixed with grub_loader_. If a type is -for Multiboot but not for all OS loaders, its name is prefixed with -grub_loader_linux_. - - The name must be suffixed with _t, to emphasize the fact that it is a -type but not a variable or a function. - - -File: grub-dev.info, Node: Macros, Next: Comments, Prev: Types, Up: Coding style - -2.5 Macros -========== - -If a macro is global, its name must be prefixed with GRUB_ and must -consist of only large letters. Other rules are the same as functions or -variables, depending on whether a macro is used like a function or a -variable. - - -File: grub-dev.info, Node: Comments, Next: Multi-Line Comments, Prev: Macros, Up: Coding style - -2.6 Comments -============ - -All comments shall be C-style comments, of the form '/* ... */'. A -comment can be placed immediately preceding the entity it describes or -it can be placed together with code, variable declarations, or other -non-comment entities. However, it is recommended to not mix various -forms especially in types/structs descriptions. - - Acceptable: - /* The page # that is the front buffer. */ - int displayed_page; - - int render_page; /* The page # that is the back buffer. */ - - -File: grub-dev.info, Node: Multi-Line Comments, Prev: Comments, Up: Coding style - -2.7 Multi-Line Comments -======================= - -Comments spanning multiple lines shall be formatted with all lines after -the first aligned with the first line. Asterisk characters should be -repeated at the start of each subsequent line. - - Acceptable: - /* - * This is a comment - * which spans multiple lines. - * It is long. - */ - - Unacceptable: - /* This is a comment - which spans multiple lines. - It is long. */ - - /* - * This is a comment - * which spans multiple lines. - * It is long. */ - - /* This is a comment - * which spans multiple lines. - * It is long. - */ - - In particular first unacceptable form makes comment difficult to -distinguish from the code itself. Especially if it contains the code -snippets and/or is long. So, its usage is disallowed. - - -File: grub-dev.info, Node: Finding your way around, Next: Contributing Changes, Prev: Coding style, Up: Top - -3 Finding your way around -************************* - -Here is a brief map of the GRUB code base. - - GRUB uses Autoconf and Automake, with most of the Automake input -generated by a Python script. The top-level build rules are in -'configure.ac', 'grub-core/Makefile.core.def', and 'Makefile.util.def'. -Each block in a '*.def' file represents a build target, and specifies -the source files used to build it on various platforms. The '*.def' -files are processed into Automake input by 'gentpl.py' (which you only -need to look at if you are extending the build system). If you are -adding a new module which follows an existing pattern, such as a new -command or a new filesystem implementation, it is usually easiest to -grep 'grub-core/Makefile.core.def' and 'Makefile.util.def' for an -existing example of that pattern to find out where it should be added. - - In general, code that may be run at boot time is in a subdirectory of -'grub-core', while code that is only run from within a full operating -system is in a subdirectory of the top level. - - Low-level boot code, such as the MBR implementation on PC BIOS -systems, is in the 'grub-core/boot/' directory. - - The GRUB kernel is in 'grub-core/kern/'. This contains core -facilities such as the device, disk, and file frameworks, environment -variable handling, list processing, and so on. The kernel should -contain enough to get up to a rescue prompt. Header files for kernel -facilities, among others, are in 'include/'. - - Terminal implementations are in 'grub-core/term/'. - - Disk access code is spread across 'grub-core/disk/' (for accessing -the disk devices themselves), 'grub-core/partmap/' (for interpreting -partition table data), and 'grub-core/fs/' (for accessing filesystems). -Note that, with the odd specialised exception, GRUB only contains code -to _read_ from filesystems and tries to avoid containing any code to -_write_ to filesystems; this lets us confidently assure users that GRUB -cannot be responsible for filesystem corruption. - - PCI and USB bus handling is in 'grub-core/bus/'. - - Video handling code is in 'grub-core/video/'. The graphical menu -system uses this heavily, but is in a separate directory, -'grub-core/gfxmenu/'. - - Most commands are implemented by files in 'grub-core/commands/', with -the following exceptions: - - * A few core commands live in 'grub-core/kern/corecmd.c'. - - * Commands related to normal mode live under 'grub-core/normal/'. - - * Commands that load and boot kernels live under 'grub-core/loader/'. - - * The 'loopback' command is really a disk device, and so lives in - 'grub-core/disk/loopback.c'. - - * The 'gettext' command lives under 'grub-core/gettext/'. - - * The 'loadfont' and 'lsfonts' commands live under 'grub-core/font/'. - - * The 'serial', 'terminfo', and 'background_image' commands live - under 'grub-core/term/'. - - * The 'efiemu_*' commands live under 'grub-core/efiemu/'. - - * OS-dependent code should be under 'grub-core/osdep/' - - * Utility programs meant to be run from a full operating system - (except OS-dependent code mentioned previously) are in 'util/'. - - There are a few other special-purpose exceptions; grep for them if -they matter to you. - - -File: grub-dev.info, Node: Contributing Changes, Next: Updating External Code, Prev: Finding your way around, Up: Top - -4 Contributing changes -********************** - -Contributing changes to GRUB 2 is welcomed activity. However we have a -bit of control what kind of changes will be accepted to GRUB 2. -Therefore it is important to discuss your changes on grub-devel mailing -list (see MailingLists). On this page there are some basic details on -the development process and activities. - - First of all you should come up with the idea yourself what you want -to contribute. If you do not have that beforehand you are advised to -study this manual and try GRUB 2 out to see what you think is missing -from there. - - Here are additional pointers: - * - * - - If you intended to make changes to GRUB Legacy (<=0.97) those are not -accepted anymore. - -* Menu: - -* Getting started:: -* Typical Developer Experience:: -* When you are approved for write access to project's files:: - - -File: grub-dev.info, Node: Getting started, Next: Typical Developer Experience, Up: Contributing Changes - -4.1 Getting started -=================== - - * Always use latest GRUB 2 source code. So get that first. - - For developers it is recommended always to use the newest - development version of GRUB 2. If development takes a long period - of time, please remember to keep in sync with newest developments - regularly so it is much easier to integrate your change in the - future. GRUB 2 is being developed in a GIT repository. - - Please check Savannah's GRUB project page for details how to get - newest git: GRUB 2 git Repository - (https://savannah.gnu.org/git/?group=grub) - - * Compile it and try it out. - - It is always good idea to first see that things work somehow and - after that to start to implement new features or develop fixes to - bugs. - - * Study the code. - - There are sometimes odd ways to do things in GRUB 2 code base. - This is mainly related to limited environment where GRUB 2 is being - executed. You usually do not need to understand it all so it is - better to only try to look at places that relates to your work. - Please do not hesitate to ask for help if there is something that - you do not understand. - - * Develop a new feature. - - Now that you know what to do and how it should work in GRUB 2 code - base, please be free to develop it. If you have not so far - announced your idea on grub-devel mailing list, please do it now. - This is to make sure you are not wasting your time working on the - solution that will not be integrated to GRUB 2 code base. - - You might want to study our coding style before starting - development so you do not need to change much of the code when your - patch is being reviewed. (see *note Coding style::) - - For every accepted patch there has to exist a ChangeLog entry. Our - ChangeLog consist of changes within source code and are not - describing about what the change logically does. Please see - examples from previous entries. - - Also remember that GRUB 2 is licensed under GPLv3 license and that - usually means that you are not allowed to copy pieces of code from - other projects. Even if the source project's license would be - compatible with GPLv3, please discuss it beforehand on grub-devel - mailing list. - - * Test your change. - - Test that your change works properly. Try it out a couple of - times, preferably on different systems, and try to find problems - with it. - - * Publish your change. - - When you are happy with your change, first make sure it is - compilable with latest development version of GRUB 2. After that - please send a patch to grub-devel for review. Please describe in - your email why you made the change, what it changes and so on. - Please be prepared to receive even discouraging comments about your - patch. There is usually at least something that needs to be - improved in every patch. - - Please use unified diff to make your patch (good match of arguments - for diff is '-pruN'). - - * Respond to received feedback. - - If you are asked to modify your patch, please do that and resubmit - it for review. If your change is large you are required to submit - a copyright agreement to FSF. Please keep in mind that if you are - asked to submit for copyright agreement, process can take some time - and is mandatory in order to get your changes integrated. - - If you are not on grub-devel to respond to questions, most likely - your patch will not be accepted. Also if problems arise from your - changes later on, it would be preferable that you also fix the - problem. So stay around for a while. - - * Your patch is accepted. - - Good job! Your patch will now be integrated into GRUB 2 mainline, - and if it didn't break anything it will be publicly available in - the next release. - - Now you are welcome to do further improvements :) - - -File: grub-dev.info, Node: Typical Developer Experience, Next: When you are approved for write access to project's files, Prev: Getting started, Up: Contributing Changes - -4.2 Typical Developer Experience -================================ - -The typical experience for a developer in this project is the following: - - 1. You find yourself wanting to do something (e.g. fixing a bug). - 2. You show some result in the mailing list or the IRC. - 3. You are getting to be known to other developers. - 4. You accumulate significant amount of contribution, so copyright - assignment is processed. - 5. You are free to check in your changes on your own, legally - speaking. - - At this point, it is rather annoying that you ought to ask somebody -else every change to be checked in. For efficiency, it is far better, -if you can commit it yourself. Therefore, our policy is to give you the -write permission to our official repository, once you have shown your -skill and will, and the FSF clerks have dealt with your copyright -assignment. - - -File: grub-dev.info, Node: When you are approved for write access to project's files, Prev: Typical Developer Experience, Up: Contributing Changes - -4.3 When you are approved for write access to project's files -============================================================= - -As you might know, GRUB is hosted on -, thus the membership -is managed by Savannah. This means that, if you want to be a member of -this project: - - 1. You need to create your own account on Savannah. - 2. You can submit "Request for Inclusion" from "My Groups" on - Savannah. - - Then, one of the admins can approve your request, and you will be a -member. If you don't want to use the Savannah interface to submit a -request, you can simply notify the admins by email or something else, -alternatively. But you still need to create an account beforehand. - - NOTE: we sometimes receive a "Request for Inclusion" from an unknown -person. In this case, the request would be just discarded, since it is -too dangerous to allow a stranger to be a member, which automatically -gives him a commit right to the repository, both for a legal reason and -for a technical reason. - - If your intention is to just get started, please do not submit a -inclusion request. Instead, please subscribe to the mailing list, and -communicate first (e.g. sending a patch, asking a question, commenting -on another message...). - - -File: grub-dev.info, Node: Updating External Code, Next: Porting, Prev: Contributing Changes, Up: Top - -5 Updating external code -************************ - -GRUB includes some code from other projects, and it is sometimes -necessary to update it. - -* Menu: - -* Gnulib:: - - -File: grub-dev.info, Node: Gnulib, Up: Updating External Code - -5.1 Gnulib -========== - -Gnulib is a source code library that provides basic functionality to -programs and libraries. Many software packages make use of Gnulib to -avoid reinventing the portability wheel. - - GRUB imports Gnulib using its 'bootstrap' utility, identifying a -particular Git commit in 'bootstrap.conf'. To upgrade to a new Gnulib -commit, set 'GNULIB_REVISION' in 'bootstrap.conf' to the new commit ID, -then run './bootstrap' and whatever else you need to make sure it works. -Check for changes to Gnulib's 'NEWS' file between the old and new -commits; in some cases it will be necessary to adjust GRUB to match. -You may also need to update the patches in -'grub-core/lib/gnulib-patches/'. - - To add a new Gnulib module or remove one that is no longer needed, -change 'gnulib_modules' in 'bootstrap.conf'. Again, run './bootstrap' -and whatever else you need to make sure it works. - - Bootstrapping from an older distribution containing gettext version < -0.18.3, will require a patch similar to this to be applied first before -running the './bootstrap' utility: - - diff --git a/bootstrap.conf b/bootstrap.conf - index 988dda0..a3193a9 100644 - --- a/bootstrap.conf - +++ b/bootstrap.conf - @ -67,7 +67,7 @ SKIP_PO=t - buildreq="\ - autoconf 2.63 - automake 1.11 - -gettext 0.18.3 - +gettext 0.17 - git 1.5.5 - tar - - " - diff --git a/configure.ac b/configure.ac - index 08b518f..99f5b36 100644 - --- a/configure.ac - +++ b/configure.ac - @ -362,7 +362,7 @ AC_CHECK_PROG(HAVE_CXX, $CXX, yes, no) - - AC_GNU_SOURCE - AM_GNU_GETTEXT([external]) - -AM_GNU_GETTEXT_VERSION([0.18.3]) - +AM_GNU_GETTEXT_VERSION([0.17]) - AC_SYS_LARGEFILE - - # Identify characteristics of the host architecture. - - - -File: grub-dev.info, Node: Porting, Next: Error Handling, Prev: Updating External Code, Up: Top - -6 Porting -********* - -GRUB2 is designed to be easily portable accross platforms. But because -of the nature of bootloader every new port must be done separately. -Here is how I did MIPS (loongson and ARC) and Xen ports. Note than this -is more of suggestions, not absolute truth. - - First of all grab any architecture specifications you can find in -public (please avoid NDA). - - First stage is "Hello world". I've done it outside of GRUB for -simplicity. Your task is to have a small program which is loadable as -bootloader and clearly shows its presence to you. If you have easily -accessible console you can just print a message. If you have a mapped -framebuffer you know address of, you can draw a square. If you have a -debug facility, just hanging without crashing might be enough. For the -first stage you can choose to load the bootloader across the network -since format for network image is often easier than for local boot and -it skips the need of small intermediary stages and nvram handling. -Additionally you can often have a good idea of the needed format by -running "file" on any netbootable executable for given platform. - - This program should probably have 2 parts: an assembler and C one. -Assembler one handles BSS cleaning and other needed setup (on some -platforms you may need to switch modes or copy the executable to its -definitive position). So your code may look like (x86 assembly for -illustration purposes) - - .globl _start - _start: - movl $_bss_start, %edi - movl $_end, %ecx - subl %edi, %ecx - xorl %eax, %eax - cld - rep - stosb - call main - - - static const char msg[] = "Hello, world"; - - void - putchar (int c) - { - ... - } - - void - main (void) - { - const char *ptr = msg; - while (*ptr) - putchar (*ptr++); - while (1); - } - - Sometimes you need a third file: assembly stubs for -ABI-compatibility. - - Once this file is functional it's time to move it into GRUB2. The -startup assembly file goes to grub-core/kern/$cpu/$platform/startup.S. -You should also include grub/symbol.h and replace call to entry point -with call to EXT_C(grub_main). The C file goes to -grub-core/kern/$cpu/$platform/init.c and its entry point is renamed to -void grub_machine_init (void). Keep final infinite loop for now. Stubs -file if any goes to grub-core/kern/$cpu/$platform/callwrap.S. Sometimes -either $cpu or $platform is dropped if file is used on several cpus -respectivelyplatforms. Check those locations if they already have what -you're looking for. - - Then modify in configure.ac the following parts: - - CPU names: - - case "$target_cpu" in - i[[3456]]86) target_cpu=i386 ;; - amd64) target_cpu=x86_64 ;; - sparc) target_cpu=sparc64 ;; - s390x) target_cpu=s390 ;; - ... - esac - - Sometimes CPU have additional architecture names which don't -influence booting. You might want to have some canonical name to avoid -having bunch of identical platforms with different names. - - NOTE: it doesn't influence compile optimisations which depend solely -on chosen compiler and compile options. - - if test "x$with_platform" = x; then - case "$target_cpu"-"$target_vendor" in - i386-apple) platform=efi ;; - i386-*) platform=pc ;; - x86_64-apple) platform=efi ;; - x86_64-*) platform=pc ;; - powerpc-*) platform=ieee1275 ;; - ... - esac - else - ... - fi - - This part deals with guessing the platform from CPU and vendor. -Sometimes you need to use 32-bit mode for booting even if OS runs in -64-bit one. If so add your platform to: - - case "$target_cpu"-"$platform" in - x86_64-efi) ;; - x86_64-emu) ;; - x86_64-*) target_cpu=i386 ;; - powerpc64-ieee1275) target_cpu=powerpc ;; - esac - - Add your platform to the list of supported ones: - - case "$target_cpu"-"$platform" in - i386-efi) ;; - x86_64-efi) ;; - i386-pc) ;; - i386-multiboot) ;; - i386-coreboot) ;; - ... - esac - - If explicit -m32 or -m64 is needed add it to: - - case "$target_cpu" in - i386 | powerpc) target_m32=1 ;; - x86_64 | sparc64) target_m64=1 ;; - esac - - Finally you need to add a conditional to the following block: - - AM_CONDITIONAL([COND_mips_arc], [test x$target_cpu = xmips -a x$platform = xarc]) - AM_CONDITIONAL([COND_sparc64_ieee1275], [test x$target_cpu = xsparc64 -a x$platform = xieee1275]) - AM_CONDITIONAL([COND_powerpc_ieee1275], [test x$target_cpu = xpowerpc -a x$platform = xieee1275]) - - Next stop is gentpl.py. You need to add your platform to the list of -supported ones (sorry that this list is duplicated): - - GRUB_PLATFORMS = [ "emu", "i386_pc", "i386_efi", "i386_qemu", "i386_coreboot", - "i386_multiboot", "i386_ieee1275", "x86_64_efi", - "mips_loongson", "sparc64_ieee1275", - "powerpc_ieee1275", "mips_arc", "ia64_efi", - "mips_qemu_mips", "s390_mainframe" ] - - You may also want already to add new platform to one or several of -available groups. In particular we always have a group for each CPU -even when only one platform for given CPU is available. - - Then comes grub-core/Makefile.core.def. In the block "kernel" you'll -need to define ldflags for your platform ($cpu_$platform_ldflags). You -also need to declare startup asm file ($cpu_$platform_startup) as well -as any other files (e.g. init.c and callwrap.S) (e.g. $cpu_$platform = -kern/$cpu/$platform/init.c). At this stage you will also need to add -dummy dl.c and cache.S with functions grub_err_t -grub_arch_dl_check_header (void *ehdr), grub_err_t -grub_arch_dl_relocate_symbols (grub_dl_t mod, void *ehdr) (dl.c) and -void grub_arch_sync_caches (void *address, grub_size_t len) (cache.S). -They won't be used for now. - - You will need to create directory include/$cpu/$platform and a file -include/$cpu/types.h. The later folowing this template: - - #ifndef GRUB_TYPES_CPU_HEADER - #define GRUB_TYPES_CPU_HEADER 1 - - /* The size of void *. */ - #define GRUB_TARGET_SIZEOF_VOID_P 4 - - /* The size of long. */ - #define GRUB_TARGET_SIZEOF_LONG 4 - - /* mycpu is big-endian. */ - #define GRUB_TARGET_WORDS_BIGENDIAN 1 - /* Alternatively: mycpu is little-endian. */ - #undef GRUB_TARGET_WORDS_BIGENDIAN - - #endif /* ! GRUB_TYPES_CPU_HEADER */ - - You will also need to add a dummy file to datetime and setjmp modules -to avoid any of it having no files. It can be just completely empty at -this stage. - - You'll need to make grub-mkimage.c (util/grub_mkimage.c) aware of the -needed format. For most commonly used formats like ELF, PE, aout or raw -the support is already present and you'll need to make it follow the -existant code paths for your platform adding adjustments if necessary. -When done compile: - - ./bootstrap - ./configure --target=$cpu --with-platform=$platform TARGET_CC=.. OBJCOPY=... STRIP=... - make > /dev/null - - And create image - - ./grub-mkimage -d grub-core -O $format_id -o test.img - - And it's time to test your test.img. - - If it works next stage is to have heap, console and timer. - - To have the heap working you need to determine which regions are -suitable for heap usage, allocate them from firmware and map (if -applicable). Then call grub_mm_init_region (vois *start, grub_size_t s) -for every of this region. As a shortcut for early port you can allocate -right after _end or have a big static array for heap. If you do you'll -probably need to come back to this later. As for output console you -should distinguish between an array of text, terminfo or graphics-based -console. Many of real-world examples don't fit perfectly into any of -these categories but one of the models is easier to be used as base. In -second and third case you should add your platform to terminfokernel -respectively videoinkernel group. A good example of array of text is -i386-pc (kern/i386/pc/init.c and term/i386/pc/console.c). Of terminfo -is ieee1275 (kern/ieee1275/init.c and term/ieee1275/console.c). Of -video is loongson (kern/mips/loongson/init.c). Note that terminfo has -to be inited in 2 stages: one before (to get at least rudimentary -console as early as possible) and another after the heap (to get -full-featured console). For the input there are string of keys, -terminfo and direct hardware. For string of keys look at i386-pc (same -files), for termino ieee1275 (same files) and for hardware loongson -(kern/mips/loongson/init.c and term/at_keyboard.c). - - For the timer you'll need to call grub_install_get_time_ms (...) -with as sole argument a function returning a grub_uint64_t of a number -of milliseconds elapsed since arbitrary point in the past. - - Once these steps accomplished you can remove the inifinite loop and -you should be able to get to the minimal console. Next step is to have -module loading working. For this you'll need to fill kern/$cpu/dl.c and -kern/$cpu/cache.S with real handling of relocations and respectively the -real sync of I and D caches. Also you'll need to decide where in the -image to store the modules. Usual way is to have it concatenated at the -end. In this case you'll need to modify startup.S to copy modules out -of bss to let's say ALIGN_UP (_end, 8) before cleaning out bss. You'll -probably find useful to add total_module_size field to startup.S. In -init.c you need to set grub_modbase to the address where modules can be -found. You may need grub_modules_get_end () to avoid declaring the -space occupied by modules as usable for heap. You can test modules -with: - - ./grub-mkimage -d grub-core -O $format_id -o test.img hello - - and then running "hello" in the shell. - - Once this works, you should think of implementing disk access. Look -around disk/ for examples. - - Then, very importantly, you probably need to implement the actual -loader (examples available in loader/) - - Last step to have minimally usable port is to add support to -grub-install to put GRUB in a place where firmware or platform will pick -it up. - - Next steps are: filling datetime.c, setjmp.S, network (net/drivers), -video (video/), halt (lib/), reboot (lib/). - - Please add your platform to Platform limitations and Supported -kernels chapter in user documentation and mention any steps you skipped -which result in reduced features or performance. Here is the quick -checklist of features. Some of them are less important than others and -skipping them is completely ok, just needs to be mentioned in user -documentation. - - Checklist: - * Is heap big enough? - * Which charset is supported by console? - * Does platform have disk driver? - * Do you have network card support? - * Are you able to retrieve datetime (with date)? - * Are you able to set datetime (with date)? - * Is serial supported? - * Do you have direct disk support? - * Do you have direct keyboard support? - * Do you have USB support? - * Do you support loading through network? - * Do you support loading from disk? - * Do you support chainloading? - * Do you support network chainloading? - * Does cpuid command supports checking all CPU features that the user - might want conditionalise on (64-bit mode, hypervisor,...) - * Do you support hints? How reliable are they? - * Does platform have ACPI? If so do "acpi" and "lsacpi" modules work? - * Do any of platform-specific operations mentioned in the relevant - section of user manual makes sense on your platform? - * Does your platform support PCI? If so is there an appropriate - driver for GRUB? - * Do you support badram? - - -File: grub-dev.info, Node: Error Handling, Next: Stack and heap size, Prev: Porting, Up: Top - -7 Error Handling -**************** - -Error handling in GRUB 2 is based on exception handling model. As C -language doesn't directly support exceptions, exception handling -behavior is emulated in software. - - When exception is raised, function must return to calling function. -If calling function does not provide handling of the exception it must -return back to its calling function and so on, until exception is -handled. If exception is not handled before prompt is displayed, error -message will be shown to user. - - Exception information is stored on 'grub_errno' global variable. If -'grub_errno' variable contains value 'GRUB_ERR_NONE', there is no active -exception and application can continue normal processing. When -'grub_errno' has other value, it is required that application code -either handles this error or returns instantly to caller. If function -is with return type 'grub_err_t' is about to return 'GRUB_ERR_NONE', it -should not set 'grub_errno' to that value. Only set 'grub_errno' in -cases where there is error situation. - - Simple exception forwarder. - grub_err_t - forwarding_example (void) - { - /* Call function that might cause exception. */ - foobar (); - - /* No special exception handler, just forward possible exceptions. */ - if (grub_errno != GRUB_ERR_NONE) - { - return grub_errno; - } - - /* All is OK, do more processing. */ - - /* Return OK signal, to caller. */ - return GRUB_ERR_NONE; - } - - Error reporting has two components, the actual error code (of type -'grub_err_t') and textual message that will be displayed to user. List -of valid error codes is listed in header file 'include/grub/err.h'. -Textual error message can contain any textual data. At time of writing, -error message can contain up to 256 characters (including terminating -NUL). To ease error reporting there is a helper function 'grub_error' -that allows easier formatting of error messages and should be used -instead of writing directly to global variables. - - Example of error reporting. - grub_err_t - failing_example () - { - return grub_error (GRUB_ERR_FILE_NOT_FOUND, - "Failed to read %s, tried %d times.", - "test.txt", - 10); - } - - If there is a special reason that error code does not need to be -taken account, 'grub_errno' can be zeroed back to 'GRUB_ERR_NONE'. In -cases like this all previous error codes should have been handled -correctly. This makes sure that there are no unhandled exceptions. - - Example of zeroing 'grub_errno'. - grub_err_t - probe_example () - { - /* Try to probe device type 1. */ - probe_for_device (); - if (grub_errno == GRUB_ERR_NONE) - { - /* Device type 1 was found on system. */ - register_device (); - return GRUB_ERR_NONE; - } - /* Zero out error code. */ - grub_errno = GRUB_ERR_NONE; - - /* No device type 1 found, try to probe device type 2. */ - probe_for_device2 (); - if (grub_errno == GRUB_ERR_NONE) - { - /* Device type 2 was found on system. */ - register_device2 (); - return GRUB_ERR_NONE; - } - /* Zero out error code. */ - grub_errno = GRUB_ERR_NONE; - - /* Return custom error message. */ - return grub_error (GRUB_ERR_UNKNOWN_DEVICE, "No device type 1 or 2 found."); - } - - Some times there is a need to continue processing even if there is a -error state in application. In situations like this, there is a needed -to save old error state and then call other functions that might fail. -To aid in this, there is a error stack implemented. Error state can be -pushed to error stack by calling function 'grub_error_push ()'. When -processing has been completed, 'grub_error_pop ()' can be used to pop -error state from stack. Error stack contains predefined amount of error -stack items. Error stack is protected for overflow and marks these -situations so overflow error does not get unseen. If there is no space -available to store error message, it is simply discarded and overflow -will be marked as happened. When overflow happens, it most likely will -corrupt error stack consistency as for pushed error there is no matching -pop, but overflow message will be shown to inform user about the -situation. Overflow message will be shown at time when prompt is about -to be drawn. - - Example usage of error stack. - /* Save possible old error message. */ - grub_error_push (); - - /* Do your stuff here. */ - call_possibly_failing_function (); - - if (grub_errno != GRUB_ERR_NONE) - { - /* Inform rest of the code that there is error (grub_errno - is set). There is no pop here as we want both error states - to be displayed. */ - return; - } - - /* Restore old error state by popping previous item from stack. */ - grub_error_pop (); - - -File: grub-dev.info, Node: Stack and heap size, Next: BIOS port memory map, Prev: Error Handling, Up: Top - -8 Stack and heap size -********************* - -On emu stack and heap are just normal host OS stack and heap. Stack is -typically 8 MiB although it's OS-dependent. - - On i386-pc, i386-coreboot, i386-qemu and i386-multiboot the stack is -60KiB. All available space between 1MiB and 4GiB marks is part of heap. - - On *-xen stack is 4MiB. If compiled for x86-64 with GCC 4.4 or later -adressable space is unlimited. When compiled for x86-64 with older GCC -version adressable space is limited to 2GiB. When compiling for i386 -adressable space is limited to 4GiB. All adressable pages except the -ones for stack, GRUB binary, special pages and page table are in the -heap. - - On *-efi GRUB uses same stack as EFI. If compiled for x86-64 with GCC -4.4 or later adressable space is unlimited. When compiled for x86-64 -with older GCC version adressable space is limited to 2GiB. For all -other platforms adressable space is limited to 4GiB. GRUB allocates -pages from EFI for its heap, at most 1.6 GiB. - - On i386-ieee1275 and powerpc-ieee1275 GRUB uses same stack as -IEEE1275. It allocates at most 32MiB for its heap. - - On sparc64-ieee1275 stack is 256KiB and heap is 2MiB. - - On mips(el)-qemu_mips and mipsel-loongson stack is 2MiB (everything -below GRUB image) and everything above GRUB image (from 2MiB + kernel -size) until 256MiB is part of heap. - - On mips-arc stack is 2MiB (everything below GRUB image) and -everything above GRUB image(from 2MiB + kernel size) until 128MiB is -part of heap. - - On mipsel-arc stack is 2MiB (everything below GRUB image which is not -part of ARC) and everything above GRUB image (from 7MiB + kernel size) -until 256MiB is part of heap. - - On arm-uboot stack is 256KiB and heap is 2MiB. - - In short: - -Platform Stack Heap --------------------------------------------------------------------- -emu 8 MiB ? -i386-pc 60 KiB < 4 GiB -i386-coreboot60 KiB < 4 GiB -i386-multiboot60 KiB < 4 GiB -i386-qemu 60 KiB < 4 GiB -*-efi ? < 1.6 GiB -i386-ieee1275? < 32 MiB -powerpc-ieee1275? < 32 MiB -sparc64-ieee1275256KiB 2 MiB -arm-uboot 256KiB 2 MiB -mips(el)-qemu_mips2MiB 253 MiB -mipsel-loongson2MiB 253 MiB -mips-arc 2MiB 125 MiB -mipsel-arc 2MiB 248 MiB -x86_64-xen 4MiB unlimited -(GCC >= -4.4) -x86_64-xen 4MiB < 2GiB -(GCC < -4.4) -i386-xen 4MiB < 4GiB - - -File: grub-dev.info, Node: BIOS port memory map, Next: Video Subsystem, Prev: Stack and heap size, Up: Top - -9 BIOS port memory map -********************** - -Start End Usage --------------------------------------------------------------------- -0 0x1000 - 1 BIOS and real mode interrupts -0x07BE 0x07FF Partition table passed to another - boot loader -? 0x2000 - 1 Real mode stack -0x7C00 0x7D00 - 1 Boot sector -0x8000 ? GRUB kernel -0x68000 0x71000 - 1 Disk buffer -? 0x80000 - 1 Protected mode stack -? 0xA0000 - 1 Extended BIOS Data Area -0xA0000 0xC0000 - 1 Video RAM -0xC0000 0x100000 - 1 BIOS -0x100000 ? Heap and module code - - -File: grub-dev.info, Node: Video Subsystem, Next: PFF2 Font File Format, Prev: BIOS port memory map, Up: Top - -10 Video Subsystem -****************** - -This document contains specification for Video Subsystem for GRUB2. -Currently only the usage interface is described in this document. -Internal structure of how video drivers are registering and how video -driver manager works are not included here. - -* Menu: - -* Video API:: -* Example usage of Video API:: -* Bitmap API:: - - -File: grub-dev.info, Node: Video API, Next: Example usage of Video API, Up: Video Subsystem - -10.1 Video API -============== - -10.1.1 grub_video_setup ------------------------ - - * Prototype: - grub_err_t - grub_video_setup (unsigned int width, unsigned int height, unsigned int mode_type); - * Description: - - Driver will use information provided to it to select best possible - video mode and switch to it. Supported values for 'mode_type' are - 'GRUB_VIDEO_MODE_TYPE_INDEX_COLOR' for index color modes, - 'GRUB_VIDEO_MODE_TYPE_RGB' for direct RGB color modes and - 'GRUB_VIDEO_MODE_TYPE_DOUBLE_BUFFERED' for double buffering. When - requesting RGB mode, highest bits per pixel mode will be selected. - When requesting Index color mode, mode with highest number of - colors will be selected. If all parameters are specified as zero, - video adapter will try to figure out best possible mode and - initialize it, platform specific differences are allowed here. If - there is no mode matching request, error X will be returned. If - there are no problems, function returns 'GRUB_ERR_NONE'. - - This function also performs following task upon succesful mode - switch. Active rendering target is changed to screen and viewport - is maximized to allow whole screen to be used when performing - graphics operations. In RGB modes, emulated palette gets 16 - entries containing default values for VGA palette, other colors are - defined as black. When switching to Indexed Color mode, driver may - set default VGA palette to screen if the video card allows the - operation. - -10.1.2 grub_video_restore -------------------------- - - * Prototype: - - grub_err_t - grub_video_restore (void); - * Description: - - Video subsystem will deinitialize activated video driver to restore - old state of video device. This can be used to switch back to text - mode. - -10.1.3 grub_video_get_info --------------------------- - - * Prototype: - - grub_err_t - grub_video_get_info (struct grub_video_mode_info *mode_info); - struct grub_video_mode_info - { - /* Width of the screen. */ - unsigned int width; - /* Height of the screen. */ - unsigned int height; - /* Mode type bitmask. Contains information like is it Index color or - RGB mode. */ - unsigned int mode_type; - /* Bits per pixel. */ - unsigned int bpp; - /* Bytes per pixel. */ - unsigned int bytes_per_pixel; - /* Pitch of one scanline. How many bytes there are for scanline. */ - unsigned int pitch; - /* In index color mode, number of colors. In RGB mode this is 256. */ - unsigned int number_of_colors; - /* Optimization hint how binary data is coded. */ - enum grub_video_blit_format blit_format; - /* How many bits are reserved for red color. */ - unsigned int red_mask_size; - /* What is location of red color bits. In Index Color mode, this is 0. */ - unsigned int red_field_pos; - /* How many bits are reserved for green color. */ - unsigned int green_mask_size; - /* What is location of green color bits. In Index Color mode, this is 0. */ - unsigned int green_field_pos; - /* How many bits are reserved for blue color. */ - unsigned int blue_mask_size; - /* What is location of blue color bits. In Index Color mode, this is 0. */ - unsigned int blue_field_pos; - /* How many bits are reserved in color. */ - unsigned int reserved_mask_size; - /* What is location of reserved color bits. In Index Color mode, - this is 0. */ - unsigned int reserved_field_pos; - }; - * Description: - - Software developer can use this function to query properties of - active rendering taget. Information provided here can be used by - other parts of GRUB, like image loaders to convert loaded images to - correct screen format to allow more optimized blitters to be used. - If there there is no configured video driver with active screen, - error 'GRUB_ERR_BAD_DEVICE' is returned, otherwise 'mode_info' is - filled with valid information and 'GRUB_ERR_NONE' is returned. - -10.1.4 grub_video_get_blit_format ---------------------------------- - - * Prototype: - - enum grub_video_blit_format - grub_video_get_blit_format (struct grub_video_mode_info *mode_info); - enum grub_video_blit_format - { - /* Follow exactly field & mask information. */ - GRUB_VIDEO_BLIT_FORMAT_RGBA, - /* Make optimization assumption. */ - GRUB_VIDEO_BLIT_FORMAT_R8G8B8A8, - /* Follow exactly field & mask information. */ - GRUB_VIDEO_BLIT_FORMAT_RGB, - /* Make optimization assumption. */ - GRUB_VIDEO_BLIT_FORMAT_R8G8B8, - /* When needed, decode color or just use value as is. */ - GRUB_VIDEO_BLIT_FORMAT_INDEXCOLOR - }; - * Description: - - Used to query how data could be optimized to suit specified video - mode. Returns exact video format type, or a generic one if there - is no definition for the type. For generic formats, use - 'grub_video_get_info' to query video color coding settings. - -10.1.5 grub_video_set_palette ------------------------------ - - * Prototype: - - grub_err_t - grub_video_set_palette (unsigned int start, unsigned int count, struct grub_video_palette_data *palette_data); - struct grub_video_palette_data - { - grub_uint8_t r; /* Red color value (0-255). */ - grub_uint8_t g; /* Green color value (0-255). */ - grub_uint8_t b; /* Blue color value (0-255). */ - grub_uint8_t a; /* Reserved bits value (0-255). */ - }; - * Description: - - Used to setup indexed color palettes. If mode is RGB mode, colors - will be set to emulated palette data. In Indexed Color modes, - palettes will be set to hardware. Color values will be converted - to suit requirements of the video mode. 'start' will tell what - hardware color index (or emulated color index) will be set to - according information in first indice of 'palette_data', after that - both hardware color index and 'palette_data' index will be - incremented until 'count' number of colors have been set. - -10.1.6 grub_video_get_palette ------------------------------ - - * Prototype: - - grub_err_t - grub_video_get_palette (unsigned int start, unsigned int count, struct grub_video_palette_data *palette_data); - struct grub_video_palette_data - { - grub_uint8_t r; /* Red color value (0-255). */ - grub_uint8_t g; /* Green color value (0-255). */ - grub_uint8_t b; /* Blue color value (0-255). */ - grub_uint8_t a; /* Reserved bits value (0-255). */ - }; - * Description: - - Used to query indexed color palettes. If mode is RGB mode, colors - will be copied from emulated palette data. In Indexed Color modes, - palettes will be read from hardware. Color values will be - converted to suit structure format. 'start' will tell what - hardware color index (or emulated color index) will be used as a - source for first indice of 'palette_data', after that both hardware - color index and 'palette_data' index will be incremented until - 'count' number of colors have been read. - -10.1.7 grub_video_set_area_status ---------------------------------- - - * Prototype: - grub_err_t - grub_video_set_area_status (grub_video_area_status_t area_status); - enum grub_video_area_status_t - { - GRUB_VIDEO_AREA_DISABLED, - GRUB_VIDEO_AREA_ENABLED - }; - - * Description: - - Used to set area drawing mode for redrawing the specified region. - Draw commands are performed in the intersection of the viewport and - the region called area. Coordinates remain related to the - viewport. If draw commands try to draw over the area, they are - clipped. Set status to DISABLED if you need to draw everything. - Set status to ENABLED and region to the desired rectangle to redraw - everything inside the region leaving everything else intact. - Should be used for redrawing of active elements. - -10.1.8 grub_video_get_area_status ---------------------------------- - - * Prototype: - grub_err_r - grub_video_get_area_status (grub_video_area_status_t *area_status); - - * Description: Used to query the area status. - -10.1.9 grub_video_set_viewport ------------------------------- - - * Prototype: - - grub_err_t - grub_video_set_viewport (unsigned int x, unsigned int y, unsigned int width, unsigned int height); - * Description: - - Used to specify viewport where draw commands are performed. When - viewport is set, all draw commands coordinates relate to those - specified by 'x' and 'y'. If draw commands try to draw over - viewport, they are clipped. If developer requests larger than - possible viewport, width and height will be clamped to fit screen. - If 'x' and 'y' are out of bounds, all functions drawing to screen - will not be displayed. In order to maximize viewport, use - 'grub_video_get_info' to query actual screen dimensions and provide - that information to this function. - -10.1.10 grub_video_get_viewport -------------------------------- - - * Prototype: - - grub_err_t - grub_video_get_viewport (unsigned int *x, unsigned int *y, unsigned int *width, unsigned int *height); - * Description: - - Used to query current viewport dimensions. Software developer can - use this to choose best way to render contents of the viewport. - -10.1.11 grub_video_set_region ------------------------------ - - * Prototype: - - grub_err_t - grub_video_set_region (unsigned int x, unsigned int y, unsigned int width, unsigned int height); - * Description: - - Used to specify the region of the screen which should be redrawn. - Use absolute values. When the region is set and area status is - ENABLE all draw commands will be performed inside the interseption - of region and viewport named area. If draw commands try to draw - over viewport, they are clipped. If developer requests larger than - possible region, width and height will be clamped to fit screen. - Should be used for redrawing of active elements. - -10.1.12 grub_video_get_region ------------------------------ - - * Prototype: - - grub_err_t - grub_video_get_region (unsigned int *x, unsigned int *y, unsigned int *width, unsigned int *height); - * Description: - - Used to query current region dimensions. - -10.1.13 grub_video_map_color ----------------------------- - - * Prototype: - - grub_video_color_t - grub_video_map_color (grub_uint32_t color_name); - * Description: - - Map color can be used to support color themes in GRUB. There will - be collection of color names that can be used to query actual - screen mapped color data. Examples could be - 'GRUB_COLOR_CONSOLE_BACKGROUND', 'GRUB_COLOR_CONSOLE_TEXT'. The - actual color defines are not specified at this point. - -10.1.14 grub_video_map_rgb --------------------------- - - * Prototype: - - grub_video_color_t - grub_video_map_rgb (grub_uint8_t red, grub_uint8_t green, grub_uint8_t blue); - * Description: - - Map RGB values to compatible screen color data. Values are - expected to be in range 0-255 and in RGB modes they will be - converted to screen color data. In index color modes, index color - palette will be searched for specified color and then index is - returned. - -10.1.15 grub_video_map_rgba ---------------------------- - - * Prototype: - - grub_video_color_t - grub_video_map_rgba (grub_uint8_t red, grub_uint8_t green, grub_uint8_t blue, grub_uint8_t alpha); - * Description: - - Map RGBA values to compatible screen color data. Values are - expected to be in range 0-255. In RGBA modes they will be - converted to screen color data. In index color modes, index color - palette will be searched for best matching color and its index is - returned. - -10.1.16 grub_video_unmap_color ------------------------------- - - * Prototype: - - grub_err_t - grub_video_unmap_color (grub_video_color_t color, grub_uint8_t *red, grub_uint8_t *green, grub_uint8_t *blue, grub_uint8_t *alpha); - * Description: - - Unmap color value from 'color' to color channels in 'red', 'green', - 'blue' and 'alpha'. Values will be in range 0-255. Active - rendering target will be used for color domain. In case alpha - information is not available in rendering target, it is assumed to - be opaque (having value 255). - -10.1.17 grub_video_fill_rect ----------------------------- - - * Prototype: - - grub_err_t - grub_video_fill_rect (grub_video_color_t color, int x, int y, unsigned int width, unsigned int height); - * Description: - - Fill specified area limited by given coordinates within specified - viewport. Negative coordinates are accepted in order to allow easy - moving of rectangle within viewport. If coordinates are negative, - area of the rectangle will be shrinken to follow size limits of the - viewport. - - Software developer should use either 'grub_video_map_color', - 'grub_video_map_rgb' or 'grub_video_map_rgba' to map requested - color to 'color' parameter. - -10.1.18 grub_video_blit_glyph ------------------------------ - - * Prototype: - - grub_err_t - grub_video_blit_glyph (struct grub_font_glyph *glyph, grub_video_color_t color, int x, int y); - struct grub_font_glyph { - /* TBD. */ - }; - * Description: - - Used to blit glyph to viewport in specified coodinates. If glyph - is at edge of viewport, pixels outside of viewport will be clipped - out. Software developer should use either 'grub_video_map_rgb' or - 'grub_video_map_rgba' to map requested color to 'color' parameter. - -10.1.19 grub_video_blit_bitmap ------------------------------- - - * Prototype: - - grub_err_t - grub_video_blit_bitmap (struct grub_video_bitmap *bitmap, enum grub_video_blit_operators oper, int x, int y, int offset_x, int offset_y, unsigned int width, unsigned int height); - struct grub_video_bitmap - { - /* TBD. */ - }; - - enum grub_video_blit_operators - { - GRUB_VIDEO_BLIT_REPLACE, - GRUB_VIDEO_BLIT_BLEND - }; - * Description: - - Used to blit bitmap to viewport in specified coordinates. If part - of bitmap is outside of viewport region, it will be clipped out. - Offsets affect bitmap position where data will be copied from. - Negative values for both viewport coordinates and bitmap offset - coordinates are allowed. If data is looked out of bounds of - bitmap, color value will be assumed to be transparent. If viewport - coordinates are negative, area of the blitted rectangle will be - shrinken to follow size limits of the viewport and bitmap. - Blitting operator 'oper' specifies should source pixel replace data - in screen or blend with pixel alpha value. - - Software developer should use 'grub_video_bitmap_create' or - 'grub_video_bitmap_load' to create or load bitmap data. - -10.1.20 grub_video_blit_render_target -------------------------------------- - - * Prototype: - - grub_err_t - grub_video_blit_render_target (struct grub_video_render_target *source, enum grub_video_blit_operators oper, int x, int y, int offset_x, int offset_y, unsigned int width, unsigned int height); - struct grub_video_render_target { - /* This is private data for video driver. Should not be accessed from elsewhere directly. */ - }; - - enum grub_video_blit_operators - { - GRUB_VIDEO_BLIT_REPLACE, - GRUB_VIDEO_BLIT_BLEND - }; - * Description: - - Used to blit source render target to viewport in specified - coordinates. If part of source render target is outside of - viewport region, it will be clipped out. If blitting operator is - specified and source contains alpha values, resulting pixel color - components will be calculated using formula ((src_color * - src_alpha) + (dst_color * (255 - src_alpha)) / 255, if target - buffer has alpha, it will be set to src_alpha. Offsets affect - render target position where data will be copied from. If data is - looked out of bounds of render target, color value will be assumed - to be transparent. Blitting operator 'oper' specifies should - source pixel replace data in screen or blend with pixel alpha - value. - -10.1.21 grub_video_scroll -------------------------- - - * Prototype: - - grub_err_t - grub_video_scroll (grub_video_color_t color, int dx, int dy); - * Description: - - Used to scroll viewport to specified direction. New areas are - filled with specified color. This function is used when screen is - scroller up in video terminal. - -10.1.22 grub_video_swap_buffers -------------------------------- - - * Prototype: - - grub_err_t - grub_video_swap_buffers (void); - * Description: - - If double buffering is enabled, this swaps frontbuffer and - backbuffer, in order to show values drawn to back buffer. Video - driver is free to choose how this operation is techincally done. - -10.1.23 grub_video_create_render_target ---------------------------------------- - - * Prototype: - - grub_err_t - grub_video_create_render_target (struct grub_video_render_target **result, unsigned int width, unsigned int height, unsigned int mode_type); - struct grub_video_render_target { - /* This is private data for video driver. Should not be accessed from elsewhere directly. */ - }; - * Description: - - Driver will use information provided to it to create best fitting - render target. 'mode_type' will be used to guide on selecting what - features are wanted for render target. Supported values for - 'mode_type' are 'GRUB_VIDEO_MODE_TYPE_INDEX_COLOR' for index color - modes, 'GRUB_VIDEO_MODE_TYPE_RGB' for direct RGB color modes and - 'GRUB_VIDEO_MODE_TYPE_ALPHA' for alpha component. - -10.1.24 grub_video_delete_render_target ---------------------------------------- - - * Prototype: - - grub_err_t - grub_video_delete_render_target (struct grub_video_render_target *target); - * Description: - - Used to delete previously created render target. If 'target' - contains 'NULL' pointer, nothing will be done. If render target is - correctly destroyed, GRUB_ERR_NONE is returned. - -10.1.25 grub_video_set_active_render_target -------------------------------------------- - - * Prototype: - - grub_err_t - grub_video_set_active_render_target (struct grub_video_render_target *target); - * Description: - - Sets active render target. If this comand is successful all - drawing commands will be done to specified 'target'. There is also - special values for target, 'GRUB_VIDEO_RENDER_TARGET_DISPLAY' used - to reference screen's front buffer, - 'GRUB_VIDEO_RENDER_TARGET_FRONT_BUFFER' used to reference screen's - front buffer (alias for 'GRUB_VIDEO_RENDER_TARGET_DISPLAY') and - 'GRUB_VIDEO_RENDER_TARGET_BACK_BUFFER' used to reference back - buffer (if double buffering is enabled). If render target is - correclty switched GRUB_ERR_NONE is returned. In no any event - shall there be non drawable active render target. - -10.1.26 grub_video_get_active_render_target -------------------------------------------- - - * Prototype: - - grub_err_t - grub_video_get_active_render_target (struct grub_video_render_target **target); - * Description: - - Returns currently active render target. It returns value in - 'target' that can be subsequently issued back to - 'grub_video_set_active_render_target'. - - -File: grub-dev.info, Node: Example usage of Video API, Next: Bitmap API, Prev: Video API, Up: Video Subsystem - -10.2 Example usage of Video API -=============================== - -10.2.1 Example of screen setup ------------------------------- - - grub_err_t rc; - /* Try to initialize video mode 1024 x 768 with direct RGB. */ - rc = grub_video_setup (1024, 768, GRUB_VIDEO_MODE_TYPE_RGB); - if (rc != GRUB_ERR_NONE) - { - /* Fall back to standard VGA Index Color mode. */ - rc = grub_video_setup (640, 480, GRUB_VIDEO_MODE_TYPE_INDEX); - if (rc != GRUB_ERR_NONE) - { - /* Handle error. */ - } - } - -10.2.2 Example of setting up console viewport ---------------------------------------------- - - grub_uint32_t x, y, width, height; - grub_video_color_t color; - struct grub_font_glyph glyph; - grub_err_t rc; - /* Query existing viewport. */ - grub_video_get_viewport (&x, &y, &width, &height); - /* Fill background. */ - color = grub_video_map_color (GRUB_COLOR_BACKGROUND); - grub_video_fill_rect (color, 0, 0, width, height); - /* Setup console viewport. */ - grub_video_set_viewport (x + 10, y + 10, width - 20, height - 20); - grub_video_get_viewport (&x, &y, &width, &height); - color = grub_video_map_color (GRUB_COLOR_CONSOLE_BACKGROUND); - grub_video_fill_rect (color, 0, 0, width, height); - /* Draw text to viewport. */ - color = grub_video_map_color (GRUB_COLOR_CONSOLE_TEXT); - grub_font_get_glyph ('X', &glyph); - grub_video_blit_glyph (&glyph, color, 0, 0); - - -File: grub-dev.info, Node: Bitmap API, Prev: Example usage of Video API, Up: Video Subsystem - -10.3 Bitmap API -=============== - -10.3.1 grub_video_bitmap_create -------------------------------- - - * Prototype: - grub_err_t grub_video_bitmap_create (struct grub_video_bitmap **bitmap, unsigned int width, unsigned int height, enum grub_video_blit_format blit_format) - - * Description: - - Creates a new bitmap with given dimensions and blitting format. - Allocated bitmap data can then be modified freely and finally - blitted with 'grub_video_blit_bitmap' to rendering target. - -10.3.2 grub_video_bitmap_destroy --------------------------------- - - * Prototype: - grub_err_t grub_video_bitmap_destroy (struct grub_video_bitmap *bitmap); - - * Description: - - When bitmap is no longer needed, it can be freed from memory using - this command. 'bitmap' is previously allocated bitmap with - 'grub_video_bitmap_create' or loaded with 'grub_video_bitmap_load'. - -10.3.3 grub_video_bitmap_load ------------------------------ - - * Prototype: - grub_err_t grub_video_bitmap_load (struct grub_video_bitmap **bitmap, const char *filename); - - * Description: - - Tries to load given bitmap ('filename') using registered bitmap - loaders. In case bitmap format is not recognized or supported - error 'GRUB_ERR_BAD_FILE_TYPE' is returned. - -10.3.4 grub_video_bitmap_get_width ----------------------------------- - - * Prototype: - unsigned int grub_video_bitmap_get_width (struct grub_video_bitmap *bitmap); - - * Description: - - Returns bitmap width. - -10.3.5 grub_video_bitmap_get_height ------------------------------------ - - * Prototype: - unsigned int grub_video_bitmap_get_height (struct grub_video_bitmap *bitmap); - - * Description: - - Return bitmap height. - -10.3.6 grub_video_bitmap_get_mode_info --------------------------------------- - - * Prototype: - void grub_video_bitmap_get_mode_info (struct grub_video_bitmap *bitmap, struct grub_video_mode_info *mode_info); - - * Description: - - Returns bitmap format details in form of 'grub_video_mode_info'. - -10.3.7 grub_video_bitmap_get_data ---------------------------------- - - * Prototype: - void *grub_video_bitmap_get_data (struct grub_video_bitmap *bitmap); - - * Description: - - Return pointer to bitmap data. Contents of the pointed data can be - freely modified. There is no extra protection against going off - the bounds so you have to be carefull how to access the data. - - -File: grub-dev.info, Node: PFF2 Font File Format, Next: Graphical Menu Software Design, Prev: Video Subsystem, Up: Top - -11 PFF2 Font File Format -************************ - -* Menu: - -* Introduction:: -* File Structure:: -* Font Metrics:: - - -File: grub-dev.info, Node: Introduction, Next: File Structure, Up: PFF2 Font File Format - -11.1 Introduction -================= - -The goal of this format is to provide a bitmap font format that is -simple to use, compact, and cleanly supports Unicode. - -11.1.1 Goals of the GRUB Font Format ------------------------------------- - - * Simple to read and use. Since GRUB will only be reading the font - files, we are more concerned with making the code to read the font - simple than we are with writing the font. - - * Compact storage. The fonts will generally be stored in a small - boot partition where GRUB is located, and this may be on a - removable storage device such as a CD or USB flash drive where - space is more limited than it is on most hard drives. - - * Unicode. GRUB should not have to deal with multiple character - encodings. The font should always use Unicode character codes for - simple internationalization. - -11.1.2 Why Another Font Format? -------------------------------- - -There are many existing bitmap font formats that GRUB could use. -However, there are aspects of these formats that may make them less than -suitable for use in GRUB at this time: - -'BDF' - Inefficient storage; uses ASCII to describe properties and - hexadecimal numbers in ASCII for the bitmap rows. -'PCF' - Many format variations such as byte order and bitmap padding (rows - padded to byte, word, etc.) would result in more complex code to - handle the font format. - - -File: grub-dev.info, Node: File Structure, Next: Font Metrics, Prev: Introduction, Up: PFF2 Font File Format - -11.2 File Structure -=================== - -A file *section* consists of a 4-byte name, a 32-bit big-endian length -(not including the name or length), and then LENGTH more -section-type-specific bytes. - - The standard file extension for PFF2 font files is '.pf2'. - -11.2.1 Section Types --------------------- - -'FILE' - *File type ID* (ASCII string). This must be the first section in - the file. It has length 4 and the contents are the four bytes of - the ASCII string 'PFF2'. - -'NAME' - *Font name* (ASCII string). This is the full font name including - family, weight, style, and point size. For instance, "Helvetica - Bold Italic 14". - -'FAMI' - *Font family name* (ASCII string). For instance, "Helvetica". - This should be included so that intelligent font substitution can - take place. - -'WEIG' - *Font weight* (ASCII string). Valid values are 'bold' and - 'normal'. This should be included so that intelligent font - substitution can take place. - -'SLAN' - *Font slant* (ASCII string). Valid values are 'italic' and - 'normal'. This should be included so that intelligent font - substitution can take place. - -'PTSZ' - *Font point size* (uint16be). - -'MAXW' - *Maximum character width in pixels* (uint16be). - -'MAXH' - *Maximum character height in pixels* (uint16be). - -'ASCE' - *Ascent in pixels* (uint16be). *Note Font Metrics::, for details. - -'DESC' - *Descent in pixels* (uint16be). *Note Font Metrics::, for details. - -'CHIX' - *Character index.* The character index begins with a 32-bit - big-endian unsigned integer indicating the total size of the - section, not including this size value. For each character, there - is an instance of the following entry structure: - - * *Unicode code point.* (32-bit big-endian integer.) - - * *Storage flags.* (byte.) - - * Bits 2..0: - - If equal to 000 binary, then the character data is stored - uncompressed beginning at the offset indicated by the - character's *offset* value. - - If equal to 001 binary, then the character data is stored - within a compressed character definition block that - begins at the offset within the file indicated by the - character's *offset* value. - - * *Offset.* (32-bit big-endian integer.) - - A marker that indicates the remainder of the file is data - accessed via the character index (CHIX) section. When reading - this font file, the rest of the file can be ignored when - scanning the sections. The length should be set to -1 - (0xFFFFFFFF). - - Supported data structures: - - Character definition Each character definition consists of: - - * *Width.* Width of the bitmap in pixels. The bitmap's - extents represent the glyph's bounding box. 'uint16be'. - - * *Height.* Height of the bitmap in pixels. The bitmap's - extents represent the glyph's bounding box. 'uint16be'. - - * *X offset.* The number of pixels to shift the bitmap by - horizontally before drawing the character. 'int16be'. - - * *Y offset.* The number of pixels to shift the bitmap by - vertically before drawing the character. 'int16be'. - - * *Device width.* The number of pixels to advance - horizontally from this character's origin to the origin - of the next character. 'int16be'. - - * *Bitmap data.* This is encoded as a string of bits. It - is organized as a row-major, top-down, left-to-right - bitmap. The most significant bit of each byte is taken - to be the leftmost or uppermost bit in the byte. For the - sake of compact storage, rows are not padded to byte - boundaries (i.e., a single byte may contain bits - belonging to multiple rows). The last byte of the bitmap - *is* padded with zero bits in the bits positions to the - right of the last used bit if the bitmap data does not - fill the last byte. - - The length of the *bitmap data* field is (WIDTH * HEIGHT - + 7) / 8 using integer arithmetic, which is equivalent to - ceil(WIDTH * HEIGHT / 8) using real number arithmetic. - - It remains to be determined whether bitmap fonts usually - make all glyph bitmaps the same height, or if smaller - glyphs are stored with bitmaps having a lesser height. - In the latter case, the baseline would have to be used to - calculate the location the bitmap should be anchored at - on screen. - - -File: grub-dev.info, Node: Font Metrics, Prev: File Structure, Up: PFF2 Font File Format - -11.3 Font Metrics -================= - - * Ascent. The distance from the baseline to the top of most - characters. Note that in some cases characters may extend above - the ascent. - - * Descent. The distance from the baseline to the bottom of most - characters. Note that in some cases characters may extend below - the descent. - - * Leading. The amount of space, in pixels, to leave between the - descent of one line of text and the ascent of the next line. This - metrics is not specified in the current file format; instead, the - font rendering engine calculates a reasonable leading value based - on the other font metrics. - - * Horizonal leading. The amount of space, in pixels, to leave - horizontally between the left and right edges of two adjacent - glyphs. The *device width* field determines the effective leading - value that is used to render the font. - -[image src="font_char_metrics.png" text="Please fill this in."] - - An illustration of how the various font metrics apply to characters. - - -File: grub-dev.info, Node: Graphical Menu Software Design, Next: Verifiers framework, Prev: PFF2 Font File Format, Up: Top - -12 Graphical Menu Software Design -********************************* - -* Menu: - -* Introduction_2:: -* Startup Sequence:: -* GUI Components:: -* Command Line Window:: - - -File: grub-dev.info, Node: Introduction_2, Next: Startup Sequence, Up: Graphical Menu Software Design - -12.1 Introduction -================= - -The 'gfxmenu' module provides a graphical menu interface for GRUB 2. It -functions as an alternative to the menu interface provided by the -'normal' module, which uses the grub terminal interface to display a -menu on a character-oriented terminal. - - The graphical menu uses the GRUB video API, which is currently for -the VESA BIOS extensions (VBE) 2.0+. This is supported on the i386-pc -platform. However, the graphical menu itself does not depend on using -VBE, so if another GRUB video driver were implemented, the 'gfxmenu' -graphical menu would work on the new video driver as well. - - -File: grub-dev.info, Node: Startup Sequence, Next: GUI Components, Prev: Introduction_2, Up: Graphical Menu Software Design - -12.2 Startup Sequence -===================== - - * grub_enter_normal_mode [normal/main.c] - * grub_normal_execute [normal/main.c] - * read_config_file [normal/main.c] - * (When 'gfxmenu.mod' is loaded with 'insmod', it will call - 'grub_menu_viewer_register()' to register itself.) - * GRUB_MOD_INIT (gfxmenu) [gfxmenu/gfxmenu.c] - * grub_menu_viewer_register [kern/menu_viewer.c] - * grub_menu_viewer_show_menu [kern/menu_viewer.c] - * get_current_menu_viewer() [kern/menu_viewer.c] - * show_menu() [gfxmenu/gfxmenu.c] - * grub_gfxmenu_model_new [gfxmenu/model.c] - * grub_gfxmenu_view_new [gfxmenu/view.c] - * set_graphics_mode [gfxmenu/view.c] - * grub_gfxmenu_view_load_theme [gfxmenu/theme_loader.c] - - -File: grub-dev.info, Node: GUI Components, Next: Command Line Window, Prev: Startup Sequence, Up: Graphical Menu Software Design - -12.3 GUI Components -=================== - -The graphical menu implements a GUI component system that supports a -container-based layout system. Components can be added to containers, -and containers (which are a type of component) can then be added to -other containers, to form a tree of components. Currently, the root -component of this tree is a 'canvas' component, which allows manual -layout of its child components. - - Components (non-container): - - * label - * image - * progress_bar - * circular_progress - * list (currently hard coded to be a boot menu list) - - Containers: - - * canvas - * hbox - * vbox - - The GUI component instances are created by the theme loader in -'gfxmenu/theme_loader.c' when a theme is loaded. Theme files specify -statements such as '+vbox{ +label { text="Hello" } +label{ text="World" -} }' to add components to the component tree root. By nesting the -component creation statements in the theme file, the instantiated -components are nested the same way. - - When a component is added to a container, that new child is -considered *owned* by the container. Great care should be taken if the -caller retains a reference to the child component, since it will be -destroyed if its parent container is destroyed. A better choice instead -of storing a pointer to the child component is to use the component ID -to find the desired component. Component IDs do not have to be unique -(it is often useful to have multiple components with an ID of -"__timeout__", for instance). - - In order to access and use components in the component tree, there -are two functions (defined in 'gfxmenu/gui_util.c') that are -particularly useful: - - * 'grub_gui_find_by_id (root, id, callback, userdata)': - - This function ecursively traverses the component tree rooted at - ROOT, and for every component that has an ID equal to ID, calls the - function pointed to by CALLBACK with the matching component and the - void pointer USERDATA as arguments. The callback function can do - whatever is desired to use the component passed in. - - * 'grub_gui_iterate_recursively (root, callback, userdata)': - - This function calls the function pointed to by CALLBACK for every - component that is a descendant of ROOT in the component tree. When - the callback function is called, the component and the void pointer - USERDATA as arguments. The callback function can do whatever is - desired to use the component passed in. - - -File: grub-dev.info, Node: Command Line Window, Prev: GUI Components, Up: Graphical Menu Software Design - -12.4 Command Line Window -======================== - -The terminal window used to provide command line access within the -graphical menu is managed by 'gfxmenu/view.c'. The 'gfxterm' terminal -is used, and it has been modified to allow rendering to an offscreen -render target to allow it to be composed into the double buffering -system that the graphical menu view uses. This is bad for performance, -however, so it would probably be a good idea to make it possible to -temporarily disable double buffering as long as the terminal window is -visible. There are still unresolved problems that occur when commands -are executed from the terminal window that change the graphics mode. -It's possible that making 'grub_video_restore()' return to the graphics -mode that was in use before 'grub_video_setup()' was called might fix -some of the problems. - - -File: grub-dev.info, Node: Verifiers framework, Next: Copying This Manual, Prev: Graphical Menu Software Design, Up: Top - -13 Verifiers framework -********************** - -To register your own verifier call 'grub_verifier_register' with a -structure pointing to your functions. - - The interface is inspired by the hash interface with -'init'/'write'/'fini'. - - There are essentially 2 ways of using it, hashing and whole-file -verification. - - With the hashing approach: During 'init' you decide whether you want -to check the given file and init context. In 'write' you update your -hashing state. In 'fini' you check that the hash matches the expected -value/passes some check/... - - With whole-file verification: During 'init' you decide whether you -want to check the given file and init context. In 'write' you verify -the file and return an error if it fails. You don't have 'fini'. - - Additional 'verify_string' receives various strings like kernel -parameters to verify. Returning no error means successful verification -and an error stops the current action. - - Detailed description of the API: - - Every time a file is opened your 'init' function is called with file -descriptor and file type. Your function can have the following -outcomes: - - * returning no error and setting '*flags' to - 'GRUB_VERIFY_FLAGS_DEFER_AUTH'. In this case verification is - deferred to other active verifiers. Verification fails if nobody - cares or selected verifier fails. - - * returning no error and setting '*flags' to - 'GRUB_VERIFY_FLAGS_SKIP_VERIFICATION'. In this case your verifier - will not be called anymore and it is assumed to have skipped - verification. - - * returning no error and not setting '*flags' to - 'GRUB_VERIFY_FLAGS_SKIP_VERIFICATION' In this case verification is - done as described in the following section. - - * returning an error. Then opening of the file will fail due to - failed verification. - - In the third case your 'write' will be called with chunks of the -file. If you need the whole file in a single chunk then during 'init' -set the bit 'GRUB_VERIFY_FLAGS_SINGLE_CHUNK' in '*flags'. During 'init' -you may set '*context' if you need additional context. At every -iteration you may return an error and the file will be considered as -having failed the verification. If you return no error then -verification continues. - - Optionally at the end of the file 'fini', if it exists, is called -with just the context. If you return no error during any of 'init', -'write' and 'fini' then the file is considered as having succeded -verification. - - -File: grub-dev.info, Node: Copying This Manual, Next: Index, Prev: Verifiers framework, Up: Top - -Appendix A Copying This Manual -****************************** - -* Menu: - -* GNU Free Documentation License:: License for copying this manual. - - -File: grub-dev.info, Node: GNU Free Documentation License, Up: Copying This Manual - -A.1 GNU Free Documentation License -================================== - - Version 1.2, November 2002 - - Copyright (C) 2000,2001,2002 Free Software Foundation, Inc. - 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA - - Everyone is permitted to copy and distribute verbatim copies - of this license document, but changing it is not allowed. - - 0. PREAMBLE - - The purpose of this License is to make a manual, textbook, or other - functional and useful document "free" in the sense of freedom: to - assure everyone the effective freedom to copy and redistribute it, - with or without modifying it, either commercially or - noncommercially. Secondarily, this License preserves for the - author and publisher a way to get credit for their work, while not - being considered responsible for modifications made by others. - - This License is a kind of "copyleft", which means that derivative - works of the document must themselves be free in the same sense. - It complements the GNU General Public License, which is a copyleft - license designed for free software. - - We have designed this License in order to use it for manuals for - free software, because free software needs free documentation: a - free program should come with manuals providing the same freedoms - that the software does. But this License is not limited to - software manuals; it can be used for any textual work, regardless - of subject matter or whether it is published as a printed book. We - recommend this License principally for works whose purpose is - instruction or reference. - - 1. APPLICABILITY AND DEFINITIONS - - This License applies to any manual or other work, in any medium, - that contains a notice placed by the copyright holder saying it can - be distributed under the terms of this License. Such a notice - grants a world-wide, royalty-free license, unlimited in duration, - to use that work under the conditions stated herein. The - "Document", below, refers to any such manual or work. Any member - of the public is a licensee, and is addressed as "you". You accept - the license if you copy, modify or distribute the work in a way - requiring permission under copyright law. - - A "Modified Version" of the Document means any work containing the - Document or a portion of it, either copied verbatim, or with - modifications and/or translated into another language. - - A "Secondary Section" is a named appendix or a front-matter section - of the Document that deals exclusively with the relationship of the - publishers or authors of the Document to the Document's overall - subject (or to related matters) and contains nothing that could - fall directly within that overall subject. (Thus, if the Document - is in part a textbook of mathematics, a Secondary Section may not - explain any mathematics.) The relationship could be a matter of - historical connection with the subject or with related matters, or - of legal, commercial, philosophical, ethical or political position - regarding them. - - The "Invariant Sections" are certain Secondary Sections whose - titles are designated, as being those of Invariant Sections, in the - notice that says that the Document is released under this License. - If a section does not fit the above definition of Secondary then it - is not allowed to be designated as Invariant. The Document may - contain zero Invariant Sections. If the Document does not identify - any Invariant Sections then there are none. - - The "Cover Texts" are certain short passages of text that are - listed, as Front-Cover Texts or Back-Cover Texts, in the notice - that says that the Document is released under this License. A - Front-Cover Text may be at most 5 words, and a Back-Cover Text may - be at most 25 words. - - A "Transparent" copy of the Document means a machine-readable copy, - represented in a format whose specification is available to the - general public, that is suitable for revising the document - straightforwardly with generic text editors or (for images composed - of pixels) generic paint programs or (for drawings) some widely - available drawing editor, and that is suitable for input to text - formatters or for automatic translation to a variety of formats - suitable for input to text formatters. A copy made in an otherwise - Transparent file format whose markup, or absence of markup, has - been arranged to thwart or discourage subsequent modification by - readers is not Transparent. An image format is not Transparent if - used for any substantial amount of text. A copy that is not - "Transparent" is called "Opaque". - - Examples of suitable formats for Transparent copies include plain - ASCII without markup, Texinfo input format, LaTeX input format, - SGML or XML using a publicly available DTD, and standard-conforming - simple HTML, PostScript or PDF designed for human modification. - Examples of transparent image formats include PNG, XCF and JPG. - Opaque formats include proprietary formats that can be read and - edited only by proprietary word processors, SGML or XML for which - the DTD and/or processing tools are not generally available, and - the machine-generated HTML, PostScript or PDF produced by some word - processors for output purposes only. - - The "Title Page" means, for a printed book, the title page itself, - plus such following pages as are needed to hold, legibly, the - material this License requires to appear in the title page. For - works in formats which do not have any title page as such, "Title - Page" means the text near the most prominent appearance of the - work's title, preceding the beginning of the body of the text. - - A section "Entitled XYZ" means a named subunit of the Document - whose title either is precisely XYZ or contains XYZ in parentheses - following text that translates XYZ in another language. (Here XYZ - stands for a specific section name mentioned below, such as - "Acknowledgements", "Dedications", "Endorsements", or "History".) - To "Preserve the Title" of such a section when you modify the - Document means that it remains a section "Entitled XYZ" according - to this definition. - - The Document may include Warranty Disclaimers next to the notice - which states that this License applies to the Document. These - Warranty Disclaimers are considered to be included by reference in - this License, but only as regards disclaiming warranties: any other - implication that these Warranty Disclaimers may have is void and - has no effect on the meaning of this License. - - 2. VERBATIM COPYING - - You may copy and distribute the Document in any medium, either - commercially or noncommercially, provided that this License, the - copyright notices, and the license notice saying this License - applies to the Document are reproduced in all copies, and that you - add no other conditions whatsoever to those of this License. You - may not use technical measures to obstruct or control the reading - or further copying of the copies you make or distribute. However, - you may accept compensation in exchange for copies. If you - distribute a large enough number of copies you must also follow the - conditions in section 3. - - You may also lend copies, under the same conditions stated above, - and you may publicly display copies. - - 3. COPYING IN QUANTITY - - If you publish printed copies (or copies in media that commonly - have printed covers) of the Document, numbering more than 100, and - the Document's license notice requires Cover Texts, you must - enclose the copies in covers that carry, clearly and legibly, all - these Cover Texts: Front-Cover Texts on the front cover, and - Back-Cover Texts on the back cover. Both covers must also clearly - and legibly identify you as the publisher of these copies. The - front cover must present the full title with all words of the title - equally prominent and visible. You may add other material on the - covers in addition. Copying with changes limited to the covers, as - long as they preserve the title of the Document and satisfy these - conditions, can be treated as verbatim copying in other respects. - - If the required texts for either cover are too voluminous to fit - legibly, you should put the first ones listed (as many as fit - reasonably) on the actual cover, and continue the rest onto - adjacent pages. - - If you publish or distribute Opaque copies of the Document - numbering more than 100, you must either include a machine-readable - Transparent copy along with each Opaque copy, or state in or with - each Opaque copy a computer-network location from which the general - network-using public has access to download using public-standard - network protocols a complete Transparent copy of the Document, free - of added material. If you use the latter option, you must take - reasonably prudent steps, when you begin distribution of Opaque - copies in quantity, to ensure that this Transparent copy will - remain thus accessible at the stated location until at least one - year after the last time you distribute an Opaque copy (directly or - through your agents or retailers) of that edition to the public. - - It is requested, but not required, that you contact the authors of - the Document well before redistributing any large number of copies, - to give them a chance to provide you with an updated version of the - Document. - - 4. MODIFICATIONS - - You may copy and distribute a Modified Version of the Document - under the conditions of sections 2 and 3 above, provided that you - release the Modified Version under precisely this License, with the - Modified Version filling the role of the Document, thus licensing - distribution and modification of the Modified Version to whoever - possesses a copy of it. In addition, you must do these things in - the Modified Version: - - A. Use in the Title Page (and on the covers, if any) a title - distinct from that of the Document, and from those of previous - versions (which should, if there were any, be listed in the - History section of the Document). You may use the same title - as a previous version if the original publisher of that - version gives permission. - - B. List on the Title Page, as authors, one or more persons or - entities responsible for authorship of the modifications in - the Modified Version, together with at least five of the - principal authors of the Document (all of its principal - authors, if it has fewer than five), unless they release you - from this requirement. - - C. State on the Title page the name of the publisher of the - Modified Version, as the publisher. - - D. Preserve all the copyright notices of the Document. - - E. Add an appropriate copyright notice for your modifications - adjacent to the other copyright notices. - - F. Include, immediately after the copyright notices, a license - notice giving the public permission to use the Modified - Version under the terms of this License, in the form shown in - the Addendum below. - - G. Preserve in that license notice the full lists of Invariant - Sections and required Cover Texts given in the Document's - license notice. - - H. Include an unaltered copy of this License. - - I. Preserve the section Entitled "History", Preserve its Title, - and add to it an item stating at least the title, year, new - authors, and publisher of the Modified Version as given on the - Title Page. If there is no section Entitled "History" in the - Document, create one stating the title, year, authors, and - publisher of the Document as given on its Title Page, then add - an item describing the Modified Version as stated in the - previous sentence. - - J. Preserve the network location, if any, given in the Document - for public access to a Transparent copy of the Document, and - likewise the network locations given in the Document for - previous versions it was based on. These may be placed in the - "History" section. You may omit a network location for a work - that was published at least four years before the Document - itself, or if the original publisher of the version it refers - to gives permission. - - K. For any section Entitled "Acknowledgements" or "Dedications", - Preserve the Title of the section, and preserve in the section - all the substance and tone of each of the contributor - acknowledgements and/or dedications given therein. - - L. Preserve all the Invariant Sections of the Document, unaltered - in their text and in their titles. Section numbers or the - equivalent are not considered part of the section titles. - - M. Delete any section Entitled "Endorsements". Such a section - may not be included in the Modified Version. - - N. Do not retitle any existing section to be Entitled - "Endorsements" or to conflict in title with any Invariant - Section. - - O. Preserve any Warranty Disclaimers. - - If the Modified Version includes new front-matter sections or - appendices that qualify as Secondary Sections and contain no - material copied from the Document, you may at your option designate - some or all of these sections as invariant. To do this, add their - titles to the list of Invariant Sections in the Modified Version's - license notice. These titles must be distinct from any other - section titles. - - You may add a section Entitled "Endorsements", provided it contains - nothing but endorsements of your Modified Version by various - parties--for example, statements of peer review or that the text - has been approved by an organization as the authoritative - definition of a standard. - - You may add a passage of up to five words as a Front-Cover Text, - and a passage of up to 25 words as a Back-Cover Text, to the end of - the list of Cover Texts in the Modified Version. Only one passage - of Front-Cover Text and one of Back-Cover Text may be added by (or - through arrangements made by) any one entity. If the Document - already includes a cover text for the same cover, previously added - by you or by arrangement made by the same entity you are acting on - behalf of, you may not add another; but you may replace the old - one, on explicit permission from the previous publisher that added - the old one. - - The author(s) and publisher(s) of the Document do not by this - License give permission to use their names for publicity for or to - assert or imply endorsement of any Modified Version. - - 5. COMBINING DOCUMENTS - - You may combine the Document with other documents released under - this License, under the terms defined in section 4 above for - modified versions, provided that you include in the combination all - of the Invariant Sections of all of the original documents, - unmodified, and list them all as Invariant Sections of your - combined work in its license notice, and that you preserve all - their Warranty Disclaimers. - - The combined work need only contain one copy of this License, and - multiple identical Invariant Sections may be replaced with a single - copy. If there are multiple Invariant Sections with the same name - but different contents, make the title of each such section unique - by adding at the end of it, in parentheses, the name of the - original author or publisher of that section if known, or else a - unique number. Make the same adjustment to the section titles in - the list of Invariant Sections in the license notice of the - combined work. - - In the combination, you must combine any sections Entitled - "History" in the various original documents, forming one section - Entitled "History"; likewise combine any sections Entitled - "Acknowledgements", and any sections Entitled "Dedications". You - must delete all sections Entitled "Endorsements." - - 6. COLLECTIONS OF DOCUMENTS - - You may make a collection consisting of the Document and other - documents released under this License, and replace the individual - copies of this License in the various documents with a single copy - that is included in the collection, provided that you follow the - rules of this License for verbatim copying of each of the documents - in all other respects. - - You may extract a single document from such a collection, and - distribute it individually under this License, provided you insert - a copy of this License into the extracted document, and follow this - License in all other respects regarding verbatim copying of that - document. - - 7. AGGREGATION WITH INDEPENDENT WORKS - - A compilation of the Document or its derivatives with other - separate and independent documents or works, in or on a volume of a - storage or distribution medium, is called an "aggregate" if the - copyright resulting from the compilation is not used to limit the - legal rights of the compilation's users beyond what the individual - works permit. When the Document is included in an aggregate, this - License does not apply to the other works in the aggregate which - are not themselves derivative works of the Document. - - If the Cover Text requirement of section 3 is applicable to these - copies of the Document, then if the Document is less than one half - of the entire aggregate, the Document's Cover Texts may be placed - on covers that bracket the Document within the aggregate, or the - electronic equivalent of covers if the Document is in electronic - form. Otherwise they must appear on printed covers that bracket - the whole aggregate. - - 8. TRANSLATION - - Translation is considered a kind of modification, so you may - distribute translations of the Document under the terms of section - 4. Replacing Invariant Sections with translations requires special - permission from their copyright holders, but you may include - translations of some or all Invariant Sections in addition to the - original versions of these Invariant Sections. You may include a - translation of this License, and all the license notices in the - Document, and any Warranty Disclaimers, provided that you also - include the original English version of this License and the - original versions of those notices and disclaimers. In case of a - disagreement between the translation and the original version of - this License or a notice or disclaimer, the original version will - prevail. - - If a section in the Document is Entitled "Acknowledgements", - "Dedications", or "History", the requirement (section 4) to - Preserve its Title (section 1) will typically require changing the - actual title. - - 9. TERMINATION - - You may not copy, modify, sublicense, or distribute the Document - except as expressly provided for under this License. Any other - attempt to copy, modify, sublicense or distribute the Document is - void, and will automatically terminate your rights under this - License. However, parties who have received copies, or rights, - from you under this License will not have their licenses terminated - so long as such parties remain in full compliance. - - 10. FUTURE REVISIONS OF THIS LICENSE - - The Free Software Foundation may publish new, revised versions of - the GNU Free Documentation License from time to time. Such new - versions will be similar in spirit to the present version, but may - differ in detail to address new problems or concerns. See - . - - Each version of the License is given a distinguishing version - number. If the Document specifies that a particular numbered - version of this License "or any later version" applies to it, you - have the option of following the terms and conditions either of - that specified version or of any later version that has been - published (not as a draft) by the Free Software Foundation. If the - Document does not specify a version number of this License, you may - choose any version ever published (not as a draft) by the Free - Software Foundation. - -A.1.1 ADDENDUM: How to use this License for your documents ----------------------------------------------------------- - -To use this License in a document you have written, include a copy of -the License in the document and put the following copyright and license -notices just after the title page: - - Copyright (C) YEAR YOUR NAME. - Permission is granted to copy, distribute and/or modify this document - under the terms of the GNU Free Documentation License, Version 1.2 - or any later version published by the Free Software Foundation; - with no Invariant Sections, no Front-Cover Texts, and no Back-Cover - Texts. A copy of the license is included in the section entitled ``GNU - Free Documentation License''. - - If you have Invariant Sections, Front-Cover Texts and Back-Cover -Texts, replace the "with...Texts." line with this: - - with the Invariant Sections being LIST THEIR TITLES, with - the Front-Cover Texts being LIST, and with the Back-Cover Texts - being LIST. - - If you have Invariant Sections without Cover Texts, or some other -combination of the three, merge those two alternatives to suit the -situation. - - If your document contains nontrivial examples of program code, we -recommend releasing these examples in parallel under your choice of free -software license, such as the GNU General Public License, to permit -their use in free software. - - -File: grub-dev.info, Node: Index, Prev: Copying This Manual, Up: Top - -Index -***** - -[index] -* Menu: - -* FDL, GNU Free Documentation License: GNU Free Documentation License. - (line 6) - - - -Tag Table: -Node: Top637 -Node: Getting the source code1777 -Node: Coding style2738 -Node: Naming Conventions3147 -Node: Functions3432 -Node: Variables4306 -Node: Types5421 -Node: Macros6022 -Node: Comments6354 -Node: Multi-Line Comments6963 -Node: Finding your way around7888 -Node: Contributing Changes11204 -Node: Getting started12309 -Node: Typical Developer Experience16361 -Node: When you are approved for write access to project's files17403 -Node: Updating External Code18836 -Node: Gnulib19107 -Node: Porting20969 -Node: Error Handling32733 -Node: Stack and heap size37825 -Node: BIOS port memory map40458 -Node: Video Subsystem41307 -Node: Video API41781 -Node: Example usage of Video API62230 -Node: Bitmap API63810 -Node: PFF2 Font File Format66343 -Node: Introduction66583 -Node: File Structure68086 -Node: Font Metrics73004 -Node: Graphical Menu Software Design74152 -Node: Introduction_274444 -Node: Startup Sequence75178 -Node: GUI Components76029 -Node: Command Line Window78629 -Node: Verifiers framework79581 -Node: Copying This Manual82189 -Node: GNU Free Documentation License82434 -Node: Index104827 - -End Tag Table diff --git a/thirdparty/grub-2.04/docs/grub-dev.texi b/thirdparty/grub-2.04/docs/grub-dev.texi deleted file mode 100644 index ee389fd83..000000000 --- a/thirdparty/grub-2.04/docs/grub-dev.texi +++ /dev/null @@ -1,2105 +0,0 @@ -\input texinfo -@c -*-texinfo-*- -@c %**start of header -@setfilename grub-dev.info -@include version-dev.texi -@settitle GNU GRUB Developers Manual @value{VERSION} -@c Unify all our little indices for now. -@syncodeindex fn cp -@syncodeindex vr cp -@syncodeindex ky cp -@syncodeindex pg cp -@syncodeindex tp cp -@c %**end of header - -@footnotestyle separate -@paragraphindent 3 -@finalout - -@copying -This developer manual is for GNU GRUB (version @value{VERSION}, -@value{UPDATED}). - -Copyright @copyright{} 1999,2000,2001,2002,2004,2005,2006,2008,2009,2010,2011 Free Software Foundation, Inc. - -@quotation -Permission is granted to copy, distribute and/or modify this document -under the terms of the GNU Free Documentation License, Version 1.2 or -any later version published by the Free Software Foundation; with no -Invariant Sections. -@end quotation -@end copying - -@dircategory Kernel -@direntry -* grub-dev: (grub-dev). The GRand Unified Bootloader Dev -@end direntry - -@setchapternewpage odd - -@titlepage -@sp 10 -@title the GNU GRUB developer manual -@subtitle The GRand Unified Bootloader, version @value{VERSION}, @value{UPDATED}. -@author Yoshinori K. Okuji -@author Colin D Bennett -@author Vesa Jääskeläinen -@author Colin Watson -@author Robert Millan -@author Carles Pina -@c The following two commands start the copyright page. -@page -@vskip 0pt plus 1filll -@insertcopying -@end titlepage - -@c Output the table of contents at the beginning. -@contents - -@finalout -@headings double - -@ifnottex -@node Top -@top GNU GRUB developer manual - -This is the developer documentation of GNU GRUB, the GRand Unified Bootloader, -a flexible and powerful boot loader program for a wide range of -architectures. - -This edition documents version @value{VERSION}. - -@insertcopying -@end ifnottex - -@menu -* Getting the source code:: -* Coding style:: -* Finding your way around:: -* Contributing Changes:: -* Updating External Code:: -* Porting:: -* Error Handling:: -* Stack and heap size:: -* BIOS port memory map:: -* Video Subsystem:: -* PFF2 Font File Format:: -* Graphical Menu Software Design:: -* Verifiers framework:: -* Copying This Manual:: Copying This Manual -* Index:: -@end menu - - -@node Getting the source code -@chapter Getting the source code - -GRUB is maintained using the @uref{GIT revision -control system}. To fetch: - -@example -git clone git://git.sv.gnu.org/grub.git -@end example - -Web access is available under -@example -http://git.savannah.gnu.org/cgit/grub.git/ -@end example - -The branches available are: - -@table @samp -@item master - Main development branch. -@item grub-legacy - GRUB 0.97 codebase. Kept for reference and legal reasons -@item multiboot - Multiboot specfication -@item multiboot2 - Multiboot2 specfication -@item developer branches - Prefixed with developer name. Every developer of a team manages his own branches. - Developer branches do not need changelog entries. -@end table - -Once you have used @kbd{git clone} to fetch an initial copy of a branch, you -can use @kbd{git pull} to keep it up to date. If you have modified your -local version, you may need to resolve conflicts when pulling. - -@node Coding style -@chapter Coding style -@c By YoshinoriOkuji, VesaJääskeläinen and ColinBennett - -Basically we follow the @uref{http://www.gnu.org/prep/standards_toc.html, GNU Coding Standards}. We define additional conventions for GRUB here. - -@menu -* Naming Conventions:: -* Functions:: -* Variables:: -* Types:: -* Macros:: -* Comments:: -* Multi-Line Comments:: -@end menu - -@node Naming Conventions -@section Naming Conventions - -All global symbols (i.e. functions, variables, types, and macros) must have the prefix grub_ or GRUB_. The all capital form is used only by macros. - -@node Functions -@section Functions - -If a function is global, its name must be prefixed with grub_ and must consist of only small letters. If the function belongs to a specific function module, the name must also be prefixed with the module name. For example, if a function is for file systems, its name is prefixed with grub_fs_. If a function is for FAT file system but not for all file systems, its name is prefixed with grub_fs_fat_. The hierarchy is noted this way. - -After a prefix, a function name must start with a verb (such as get or is). It must not be a noun. Some kind of abbreviation is permitted, as long as it wouldn't make code less readable (e.g. init). - -If a function is local, its name may not start with any prefix. It must start with a verb. - -@node Variables -@section Variables - -The rule is mostly the same as functions, as noted above. If a variable is global, its name must be prefixed with grub_ and must consist of only small letters. If the variable belongs to a specific function module, the name must also be prefixed with the module name. For example, if a function is for dynamic loading, its name is prefixed with grub_dl_. If a variable is for ELF but not for all dynamic loading systems, its name is prefixed with grub_dl_elf_. - -After a prefix, a variable name must start with a noun or an adjective (such as name or long) and it should end with a noun. Some kind of abbreviation is permitted, as long as it wouldn't make code less readable (e.g. i18n). - -If a variable is global in the scope of a single file (i.e. it is declared with static), its name may not start with any prefix. It must start with a noun or an adjective. - -If a variable is local, you may choose any shorter name, as long as it wouldn't make code less readable (e.g. i). - -@node Types -@section Types - -The name of a type must be prefixed with grub_ and must consist of only small letters. If the type belongs to a specific function module, the name must also be prefixed with the module name. For example, if a type is for OS loaders, its name is prefixed with grub_loader_. If a type is for Multiboot but not for all OS loaders, its name is prefixed with grub_loader_linux_. - -The name must be suffixed with _t, to emphasize the fact that it is a type but not a variable or a function. - -@node Macros -@section Macros - -If a macro is global, its name must be prefixed with GRUB_ and must consist of only large letters. Other rules are the same as functions or variables, depending on whether a macro is used like a function or a variable. - -@node Comments -@section Comments - -All comments shall be C-style comments, of the form @samp{/* @dots{} */}. -A comment can be placed immediately preceding the entity it describes or it -can be placed together with code, variable declarations, or other non-comment -entities. However, it is recommended to not mix various forms especially in -types/structs descriptions. - -Acceptable: -@example -/* The page # that is the front buffer. */ -int displayed_page; -@end example - -@example -int render_page; /* The page # that is the back buffer. */ -@end example - -@node Multi-Line Comments -@section Multi-Line Comments - -Comments spanning multiple lines shall be formatted with all lines after the -first aligned with the first line. Asterisk characters should be repeated at -the start of each subsequent line. - -Acceptable: -@example -/* - * This is a comment - * which spans multiple lines. - * It is long. - */ -@end example - -Unacceptable: -@example -/* This is a comment - which spans multiple lines. - It is long. */ -@end example - -@example -/* - * This is a comment - * which spans multiple lines. - * It is long. */ -@end example - -@example -/* This is a comment - * which spans multiple lines. - * It is long. - */ -@end example - -In particular first unacceptable form makes comment difficult to distinguish -from the code itself. Especially if it contains the code snippets and/or is -long. So, its usage is disallowed. - -@node Finding your way around -@chapter Finding your way around - -Here is a brief map of the GRUB code base. - -GRUB uses Autoconf and Automake, with most of the Automake input generated -by a Python script. The top-level build rules are in @file{configure.ac}, -@file{grub-core/Makefile.core.def}, and @file{Makefile.util.def}. Each -block in a @file{*.def} file represents a build target, and specifies the -source files used to build it on various platforms. The @file{*.def} files -are processed into Automake input by @file{gentpl.py} (which you only need -to look at if you are extending the build system). If you are adding a new -module which follows an existing pattern, such as a new command or a new -filesystem implementation, it is usually easiest to grep -@file{grub-core/Makefile.core.def} and @file{Makefile.util.def} for an -existing example of that pattern to find out where it should be added. - -In general, code that may be run at boot time is in a subdirectory of -@file{grub-core}, while code that is only run from within a full operating -system is in a subdirectory of the top level. - -Low-level boot code, such as the MBR implementation on PC BIOS systems, is -in the @file{grub-core/boot/} directory. - -The GRUB kernel is in @file{grub-core/kern/}. This contains core facilities -such as the device, disk, and file frameworks, environment variable -handling, list processing, and so on. The kernel should contain enough to -get up to a rescue prompt. Header files for kernel facilities, among -others, are in @file{include/}. - -Terminal implementations are in @file{grub-core/term/}. - -Disk access code is spread across @file{grub-core/disk/} (for accessing the -disk devices themselves), @file{grub-core/partmap/} (for interpreting -partition table data), and @file{grub-core/fs/} (for accessing filesystems). -Note that, with the odd specialised exception, GRUB only contains code to -@emph{read} from filesystems and tries to avoid containing any code to -@emph{write} to filesystems; this lets us confidently assure users that GRUB -cannot be responsible for filesystem corruption. - -PCI and USB bus handling is in @file{grub-core/bus/}. - -Video handling code is in @file{grub-core/video/}. The graphical menu -system uses this heavily, but is in a separate directory, -@file{grub-core/gfxmenu/}. - -Most commands are implemented by files in @file{grub-core/commands/}, with -the following exceptions: - -@itemize -@item -A few core commands live in @file{grub-core/kern/corecmd.c}. - -@item -Commands related to normal mode live under @file{grub-core/normal/}. - -@item -Commands that load and boot kernels live under @file{grub-core/loader/}. - -@item -The @samp{loopback} command is really a disk device, and so lives in -@file{grub-core/disk/loopback.c}. - -@item -The @samp{gettext} command lives under @file{grub-core/gettext/}. - -@item -The @samp{loadfont} and @samp{lsfonts} commands live under -@file{grub-core/font/}. - -@item -The @samp{serial}, @samp{terminfo}, and @samp{background_image} commands -live under @file{grub-core/term/}. - -@item -The @samp{efiemu_*} commands live under @file{grub-core/efiemu/}. - -@item -OS-dependent code should be under @file{grub-core/osdep/} - -@item -Utility programs meant to be run from a full operating system -(except OS-dependent code mentioned previously) are in @file{util/}. - -@end itemize - -There are a few other special-purpose exceptions; grep for them if they -matter to you. - -@node Contributing Changes -@chapter Contributing changes -@c By YoshinoriOkuji, VesaJääskeläinen, ColinWatson - -Contributing changes to GRUB 2 is welcomed activity. However we have a -bit of control what kind of changes will be accepted to GRUB 2. -Therefore it is important to discuss your changes on grub-devel mailing list -(see MailingLists). On this page there are some basic details on the -development process and activities. - -First of all you should come up with the idea yourself what you want to -contribute. If you do not have that beforehand you are advised to study this -manual and try GRUB 2 out to see what you think is missing from there. - -Here are additional pointers: -@itemize -@item @url{https://savannah.gnu.org/task/?group=grub GRUB's Task Tracker} -@item @url{https://savannah.gnu.org/bugs/?group=grub GRUB's Bug Tracker} -@end itemize - -If you intended to make changes to GRUB Legacy (<=0.97) those are not accepted -anymore. - -@menu -* Getting started:: -* Typical Developer Experience:: -* When you are approved for write access to project's files:: -@end menu - -@node Getting started -@section Getting started - -@itemize -@item Always use latest GRUB 2 source code. So get that first. - -For developers it is recommended always to use the newest development version of GRUB 2. If development takes a long period of time, please remember to keep in sync with newest developments regularly so it is much easier to integrate your change in the future. GRUB 2 is being developed in a GIT repository. - -Please check Savannah's GRUB project page for details how to get newest git: -@uref{https://savannah.gnu.org/git/?group=grub, GRUB 2 git Repository} - -@item Compile it and try it out. - -It is always good idea to first see that things work somehow and after that -to start to implement new features or develop fixes to bugs. - -@item Study the code. - -There are sometimes odd ways to do things in GRUB 2 code base. -This is mainly related to limited environment where GRUB 2 is being executed. -You usually do not need to understand it all so it is better to only try to -look at places that relates to your work. Please do not hesitate to ask for -help if there is something that you do not understand. - -@item Develop a new feature. - -Now that you know what to do and how it should work in GRUB 2 code base, please -be free to develop it. If you have not so far announced your idea on grub-devel -mailing list, please do it now. This is to make sure you are not wasting your -time working on the solution that will not be integrated to GRUB 2 code base. - -You might want to study our coding style before starting development so you -do not need to change much of the code when your patch is being reviewed. -(see @ref{Coding style}) - -For every accepted patch there has to exist a ChangeLog entry. Our ChangeLog -consist of changes within source code and are not describing about what the -change logically does. Please see examples from previous entries. - -Also remember that GRUB 2 is licensed under GPLv3 license and that usually -means that you are not allowed to copy pieces of code from other projects. -Even if the source project's license would be compatible with GPLv3, please -discuss it beforehand on grub-devel mailing list. - -@item Test your change. - -Test that your change works properly. Try it out a couple of times, preferably on different systems, and try to find problems with it. - -@item Publish your change. - -When you are happy with your change, first make sure it is compilable with -latest development version of GRUB 2. After that please send a patch to -grub-devel for review. Please describe in your email why you made the change, -what it changes and so on. Please be prepared to receive even discouraging -comments about your patch. There is usually at least something that needs -to be improved in every patch. - -Please use unified diff to make your patch (good match of arguments for diff is @samp{-pruN}). - -@item Respond to received feedback. - -If you are asked to modify your patch, please do that and resubmit it for -review. If your change is large you are required to submit a copyright -agreement to FSF. Please keep in mind that if you are asked to submit -for copyright agreement, process can take some time and is mandatory -in order to get your changes integrated. - -If you are not on grub-devel to respond to questions, most likely your patch -will not be accepted. Also if problems arise from your changes later on, -it would be preferable that you also fix the problem. So stay around -for a while. - -@item Your patch is accepted. - -Good job! Your patch will now be integrated into GRUB 2 mainline, and if it didn't break anything it will be publicly available in the next release. - -Now you are welcome to do further improvements :) -@end itemize - -@node Typical Developer Experience -@section Typical Developer Experience - -The typical experience for a developer in this project is the following: - -@enumerate -@item You find yourself wanting to do something (e.g. fixing a bug). -@item You show some result in the mailing list or the IRC. -@item You are getting to be known to other developers. -@item You accumulate significant amount of contribution, so copyright assignment is processed. -@item You are free to check in your changes on your own, legally speaking. -@end enumerate - -At this point, it is rather annoying that you ought to ask somebody else every -change to be checked in. For efficiency, it is far better, if you can commit -it yourself. Therefore, our policy is to give you the write permission to our -official repository, once you have shown your skill and will, -and the FSF clerks have dealt with your copyright assignment. - -@node When you are approved for write access to project's files -@section When you are approved for write access to project's files - -As you might know, GRUB is hosted on -@url{https://savannah.gnu.org/projects/grub Savannah}, thus the membership -is managed by Savannah. This means that, if you want to be a member of this -project: - -@enumerate -@item You need to create your own account on Savannah. -@item You can submit ``Request for Inclusion'' from ``My Groups'' on Savannah. -@end enumerate - -Then, one of the admins can approve your request, and you will be a member. -If you don't want to use the Savannah interface to submit a request, you can -simply notify the admins by email or something else, alternatively. But you -still need to create an account beforehand. - -NOTE: we sometimes receive a ``Request for Inclusion'' from an unknown person. -In this case, the request would be just discarded, since it is too dangerous -to allow a stranger to be a member, which automatically gives him a commit -right to the repository, both for a legal reason and for a technical reason. - -If your intention is to just get started, please do not submit a inclusion -request. Instead, please subscribe to the mailing list, and communicate first -(e.g. sending a patch, asking a question, commenting on another message...). - -@node Updating External Code -@chapter Updating external code - -GRUB includes some code from other projects, and it is sometimes necessary -to update it. - -@menu -* Gnulib:: -@end menu - -@node Gnulib -@section Gnulib - -Gnulib is a source code library that provides basic functionality to -programs and libraries. Many software packages make use of Gnulib -to avoid reinventing the portability wheel. - -GRUB imports Gnulib using its @command{bootstrap} utility, identifying a -particular Git commit in @file{bootstrap.conf}. To upgrade to a new Gnulib -commit, set @code{GNULIB_REVISION} in @file{bootstrap.conf} to the new commit -ID, then run @kbd{./bootstrap} and whatever else you need to make sure it -works. Check for changes to Gnulib's @file{NEWS} file between the old and new -commits; in some cases it will be necessary to adjust GRUB to match. You may -also need to update the patches in @file{grub-core/lib/gnulib-patches/}. - -To add a new Gnulib module or remove one that is no longer needed, change -@code{gnulib_modules} in @file{bootstrap.conf}. Again, run @kbd{./bootstrap} -and whatever else you need to make sure it works. - -Bootstrapping from an older distribution containing gettext version < 0.18.3, -will require a patch similar to this to be applied first before running the -@command{./bootstrap} utility: - -@example -diff --git a/bootstrap.conf b/bootstrap.conf -index 988dda0..a3193a9 100644 ---- a/bootstrap.conf -+++ b/bootstrap.conf -@@ -67,7 +67,7 @@ SKIP_PO=t -buildreq="\ -autoconf 2.63 -automake 1.11 --gettext 0.18.3 -+gettext 0.17 -git 1.5.5 -tar - -" -diff --git a/configure.ac b/configure.ac -index 08b518f..99f5b36 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -362,7 +362,7 @@ AC_CHECK_PROG(HAVE_CXX, $CXX, yes, no) - -AC_GNU_SOURCE -AM_GNU_GETTEXT([external]) --AM_GNU_GETTEXT_VERSION([0.18.3]) -+AM_GNU_GETTEXT_VERSION([0.17]) -AC_SYS_LARGEFILE - -# Identify characteristics of the host architecture. - -@end example - -@node Porting -@chapter Porting - -GRUB2 is designed to be easily portable accross platforms. But because of the -nature of bootloader every new port must be done separately. Here is how I did -MIPS (loongson and ARC) and Xen ports. Note than this is more of suggestions, -not absolute truth. - -First of all grab any architecture specifications you can find in public -(please avoid NDA). - -First stage is ``Hello world''. I've done it outside of GRUB for simplicity. -Your task is to have a small program which is loadable as bootloader and -clearly shows its presence to you. If you have easily accessible console -you can just print a message. If you have a mapped framebuffer you know address -of, you can draw a square. If you have a debug facility, just hanging without -crashing might be enough. For the first stage you can choose to load the -bootloader across the network since format for network image is often easier -than for local boot and it skips the need of small intermediary stages and -nvram handling. Additionally you can often have a good idea of the needed -format by running ``file'' on any netbootable executable for given platform. - -This program should probably have 2 parts: an assembler and C one. Assembler one -handles BSS cleaning and other needed setup (on some platforms you may need -to switch modes or copy the executable to its definitive position). So your code -may look like (x86 assembly for illustration purposes) - -@example - .globl _start -_start: - movl $_bss_start, %edi - movl $_end, %ecx - subl %edi, %ecx - xorl %eax, %eax - cld - rep - stosb - call main -@end example - -@example - -static const char msg[] = "Hello, world"; - -void -putchar (int c) -@{ - ... -@} - -void -main (void) -@{ - const char *ptr = msg; - while (*ptr) - putchar (*ptr++); - while (1); -@} -@end example - -Sometimes you need a third file: assembly stubs for ABI-compatibility. - -Once this file is functional it's time to move it into GRUB2. The startup -assembly file goes to grub-core/kern/$cpu/$platform/startup.S. You should also -include grub/symbol.h and replace call to entry point with call to -EXT_C(grub_main). The C file goes to grub-core/kern/$cpu/$platform/init.c -and its entry point is renamed to void grub_machine_init (void). Keep final -infinite loop for now. Stubs file if any goes to -grub-core/kern/$cpu/$platform/callwrap.S. Sometimes either $cpu or $platform -is dropped if file is used on several cpus respectivelyplatforms. -Check those locations if they already have what you're looking for. - -Then modify in configure.ac the following parts: - -CPU names: - -@example -case "$target_cpu" in - i[[3456]]86) target_cpu=i386 ;; - amd64) target_cpu=x86_64 ;; - sparc) target_cpu=sparc64 ;; - s390x) target_cpu=s390 ;; - ... -esac -@end example - -Sometimes CPU have additional architecture names which don't influence booting. -You might want to have some canonical name to avoid having bunch of identical -platforms with different names. - -NOTE: it doesn't influence compile optimisations which depend solely on -chosen compiler and compile options. - -@example -if test "x$with_platform" = x; then - case "$target_cpu"-"$target_vendor" in - i386-apple) platform=efi ;; - i386-*) platform=pc ;; - x86_64-apple) platform=efi ;; - x86_64-*) platform=pc ;; - powerpc-*) platform=ieee1275 ;; - ... - esac -else - ... -fi -@end example - -This part deals with guessing the platform from CPU and vendor. Sometimes you -need to use 32-bit mode for booting even if OS runs in 64-bit one. If so add -your platform to: - -@example -case "$target_cpu"-"$platform" in - x86_64-efi) ;; - x86_64-emu) ;; - x86_64-*) target_cpu=i386 ;; - powerpc64-ieee1275) target_cpu=powerpc ;; -esac -@end example - -Add your platform to the list of supported ones: - -@example -case "$target_cpu"-"$platform" in - i386-efi) ;; - x86_64-efi) ;; - i386-pc) ;; - i386-multiboot) ;; - i386-coreboot) ;; - ... -esac -@end example - -If explicit -m32 or -m64 is needed add it to: - -@example -case "$target_cpu" in - i386 | powerpc) target_m32=1 ;; - x86_64 | sparc64) target_m64=1 ;; -esac -@end example - -Finally you need to add a conditional to the following block: - -@example -AM_CONDITIONAL([COND_mips_arc], [test x$target_cpu = xmips -a x$platform = xarc]) -AM_CONDITIONAL([COND_sparc64_ieee1275], [test x$target_cpu = xsparc64 -a x$platform = xieee1275]) -AM_CONDITIONAL([COND_powerpc_ieee1275], [test x$target_cpu = xpowerpc -a x$platform = xieee1275]) -@end example - -Next stop is gentpl.py. You need to add your platform to the list of supported -ones (sorry that this list is duplicated): - -@example -GRUB_PLATFORMS = [ "emu", "i386_pc", "i386_efi", "i386_qemu", "i386_coreboot", - "i386_multiboot", "i386_ieee1275", "x86_64_efi", - "mips_loongson", "sparc64_ieee1275", - "powerpc_ieee1275", "mips_arc", "ia64_efi", - "mips_qemu_mips", "s390_mainframe" ] -@end example - -You may also want already to add new platform to one or several of available -groups. In particular we always have a group for each CPU even when only -one platform for given CPU is available. - -Then comes grub-core/Makefile.core.def. In the block ``kernel'' you'll need -to define ldflags for your platform ($cpu_$platform_ldflags). You also need to -declare startup asm file ($cpu_$platform_startup) as well as any other files -(e.g. init.c and callwrap.S) (e.g. $cpu_$platform = kern/$cpu/$platform/init.c). -At this stage you will also need to add dummy dl.c and cache.S with functions -grub_err_t grub_arch_dl_check_header (void *ehdr), grub_err_t -grub_arch_dl_relocate_symbols (grub_dl_t mod, void *ehdr) (dl.c) and -void grub_arch_sync_caches (void *address, grub_size_t len) (cache.S). They -won't be used for now. - -You will need to create directory include/$cpu/$platform and a file -include/$cpu/types.h. The later folowing this template: - -@example -#ifndef GRUB_TYPES_CPU_HEADER -#define GRUB_TYPES_CPU_HEADER 1 - -/* The size of void *. */ -#define GRUB_TARGET_SIZEOF_VOID_P 4 - -/* The size of long. */ -#define GRUB_TARGET_SIZEOF_LONG 4 - -/* mycpu is big-endian. */ -#define GRUB_TARGET_WORDS_BIGENDIAN 1 -/* Alternatively: mycpu is little-endian. */ -#undef GRUB_TARGET_WORDS_BIGENDIAN - -#endif /* ! GRUB_TYPES_CPU_HEADER */ -@end example - -You will also need to add a dummy file to datetime and setjmp modules to -avoid any of it having no files. It can be just completely empty at this stage. - -You'll need to make grub-mkimage.c (util/grub_mkimage.c) aware of the needed -format. For most commonly used formats like ELF, PE, aout or raw the support -is already present and you'll need to make it follow the existant code paths -for your platform adding adjustments if necessary. When done compile: - -@example -./bootstrap -./configure --target=$cpu --with-platform=$platform TARGET_CC=.. OBJCOPY=... STRIP=... -make > /dev/null -@end example - -And create image - -@example -./grub-mkimage -d grub-core -O $format_id -o test.img -@end example - -And it's time to test your test.img. - -If it works next stage is to have heap, console and timer. - -To have the heap working you need to determine which regions are suitable for -heap usage, allocate them from firmware and map (if applicable). Then call -grub_mm_init_region (vois *start, grub_size_t s) for every of this region. -As a shortcut for early port you can allocate right after _end or have -a big static array for heap. If you do you'll probably need to come back to -this later. As for output console you should distinguish between an array of -text, terminfo or graphics-based console. Many of real-world examples don't -fit perfectly into any of these categories but one of the models is easier -to be used as base. In second and third case you should add your platform to -terminfokernel respectively videoinkernel group. A good example of array of -text is i386-pc (kern/i386/pc/init.c and term/i386/pc/console.c). -Of terminfo is ieee1275 (kern/ieee1275/init.c and term/ieee1275/console.c). -Of video is loongson (kern/mips/loongson/init.c). Note that terminfo has -to be inited in 2 stages: one before (to get at least rudimentary console -as early as possible) and another after the heap (to get full-featured console). -For the input there are string of keys, terminfo and direct hardware. For string -of keys look at i386-pc (same files), for termino ieee1275 (same files) and for -hardware loongson (kern/mips/loongson/init.c and term/at_keyboard.c). - -For the timer you'll need to call grub_install_get_time_ms (...) with as sole -argument a function returning a grub_uint64_t of a number of milliseconds -elapsed since arbitrary point in the past. - -Once these steps accomplished you can remove the inifinite loop and you should -be able to get to the minimal console. Next step is to have module loading -working. For this you'll need to fill kern/$cpu/dl.c and kern/$cpu/cache.S -with real handling of relocations and respectively the real sync of I and D -caches. Also you'll need to decide where in the image to store the modules. -Usual way is to have it concatenated at the end. In this case you'll need to -modify startup.S to copy modules out of bss to let's say ALIGN_UP (_end, 8) -before cleaning out bss. You'll probably find useful to add total_module_size -field to startup.S. In init.c you need to set grub_modbase to the address -where modules can be found. You may need grub_modules_get_end () to avoid -declaring the space occupied by modules as usable for heap. You can test modules -with: - -@example -./grub-mkimage -d grub-core -O $format_id -o test.img hello -@end example - -and then running ``hello'' in the shell. - -Once this works, you should think of implementing disk access. Look around -disk/ for examples. - -Then, very importantly, you probably need to implement the actual loader -(examples available in loader/) - -Last step to have minimally usable port is to add support to grub-install to -put GRUB in a place where firmware or platform will pick it up. - -Next steps are: filling datetime.c, setjmp.S, network (net/drivers), -video (video/), halt (lib/), reboot (lib/). - -Please add your platform to Platform limitations and Supported kernels chapter -in user documentation and mention any steps you skipped which result in reduced -features or performance. Here is the quick checklist of features. Some of them -are less important than others and skipping them is completely ok, just needs -to be mentioned in user documentation. - -Checklist: -@itemize -@item Is heap big enough? -@item Which charset is supported by console? -@item Does platform have disk driver? -@item Do you have network card support? -@item Are you able to retrieve datetime (with date)? -@item Are you able to set datetime (with date)? -@item Is serial supported? -@item Do you have direct disk support? -@item Do you have direct keyboard support? -@item Do you have USB support? -@item Do you support loading through network? -@item Do you support loading from disk? -@item Do you support chainloading? -@item Do you support network chainloading? -@item Does cpuid command supports checking all -CPU features that the user might want conditionalise on -(64-bit mode, hypervisor,...) -@item Do you support hints? How reliable are they? -@item Does platform have ACPI? If so do ``acpi'' and ``lsacpi'' modules work? -@item Do any of platform-specific operations mentioned in the relevant section of -user manual makes sense on your platform? -@item Does your platform support PCI? If so is there an appropriate driver for -GRUB? -@item Do you support badram? -@end itemize - -@node Error Handling -@chapter Error Handling - -Error handling in GRUB 2 is based on exception handling model. As C language -doesn't directly support exceptions, exception handling behavior is emulated -in software. - -When exception is raised, function must return to calling function. If calling -function does not provide handling of the exception it must return back to its -calling function and so on, until exception is handled. If exception is not -handled before prompt is displayed, error message will be shown to user. - -Exception information is stored on @code{grub_errno} global variable. If -@code{grub_errno} variable contains value @code{GRUB_ERR_NONE}, there is no active -exception and application can continue normal processing. When @code{grub_errno} has -other value, it is required that application code either handles this error or -returns instantly to caller. If function is with return type @code{grub_err_t} is -about to return @code{GRUB_ERR_NONE}, it should not set @code{grub_errno} to that -value. Only set @code{grub_errno} in cases where there is error situation. - -Simple exception forwarder. -@example -grub_err_t -forwarding_example (void) -@{ - /* Call function that might cause exception. */ - foobar (); - - /* No special exception handler, just forward possible exceptions. */ - if (grub_errno != GRUB_ERR_NONE) - @{ - return grub_errno; - @} - - /* All is OK, do more processing. */ - - /* Return OK signal, to caller. */ - return GRUB_ERR_NONE; -@} -@end example - -Error reporting has two components, the actual error code (of type -@code{grub_err_t}) and textual message that will be displayed to user. List of -valid error codes is listed in header file @file{include/grub/err.h}. Textual -error message can contain any textual data. At time of writing, error message -can contain up to 256 characters (including terminating NUL). To ease error -reporting there is a helper function @code{grub_error} that allows easier -formatting of error messages and should be used instead of writing directly to -global variables. - -Example of error reporting. -@example -grub_err_t -failing_example () -@{ - return grub_error (GRUB_ERR_FILE_NOT_FOUND, - "Failed to read %s, tried %d times.", - "test.txt", - 10); -@} -@end example - -If there is a special reason that error code does not need to be taken account, -@code{grub_errno} can be zeroed back to @code{GRUB_ERR_NONE}. In cases like this all -previous error codes should have been handled correctly. This makes sure that -there are no unhandled exceptions. - -Example of zeroing @code{grub_errno}. -@example -grub_err_t -probe_example () -@{ - /* Try to probe device type 1. */ - probe_for_device (); - if (grub_errno == GRUB_ERR_NONE) - @{ - /* Device type 1 was found on system. */ - register_device (); - return GRUB_ERR_NONE; - @} - /* Zero out error code. */ - grub_errno = GRUB_ERR_NONE; - - /* No device type 1 found, try to probe device type 2. */ - probe_for_device2 (); - if (grub_errno == GRUB_ERR_NONE) - @{ - /* Device type 2 was found on system. */ - register_device2 (); - return GRUB_ERR_NONE; - @} - /* Zero out error code. */ - grub_errno = GRUB_ERR_NONE; - - /* Return custom error message. */ - return grub_error (GRUB_ERR_UNKNOWN_DEVICE, "No device type 1 or 2 found."); -@} -@end example - -Some times there is a need to continue processing even if there is a error -state in application. In situations like this, there is a needed to save old -error state and then call other functions that might fail. To aid in this, -there is a error stack implemented. Error state can be pushed to error stack -by calling function @code{grub_error_push ()}. When processing has been completed, -@code{grub_error_pop ()} can be used to pop error state from stack. Error stack -contains predefined amount of error stack items. Error stack is protected for -overflow and marks these situations so overflow error does not get unseen. -If there is no space available to store error message, it is simply discarded -and overflow will be marked as happened. When overflow happens, it most likely -will corrupt error stack consistency as for pushed error there is no matching -pop, but overflow message will be shown to inform user about the situation. -Overflow message will be shown at time when prompt is about to be drawn. - -Example usage of error stack. -@example -/* Save possible old error message. */ -grub_error_push (); - -/* Do your stuff here. */ -call_possibly_failing_function (); - -if (grub_errno != GRUB_ERR_NONE) - @{ - /* Inform rest of the code that there is error (grub_errno - is set). There is no pop here as we want both error states - to be displayed. */ - return; - @} - -/* Restore old error state by popping previous item from stack. */ -grub_error_pop (); -@end example - -@node Stack and heap size -@chapter Stack and heap size - -On emu stack and heap are just normal host OS stack and heap. Stack is typically -8 MiB although it's OS-dependent. - -On i386-pc, i386-coreboot, i386-qemu and i386-multiboot the stack is 60KiB. -All available space between 1MiB and 4GiB marks is part of heap. - -On *-xen stack is 4MiB. If compiled for x86-64 with GCC 4.4 or later adressable -space is unlimited. When compiled for x86-64 with older GCC version adressable -space is limited to 2GiB. When compiling for i386 adressable space is limited -to 4GiB. All adressable pages except the ones for stack, GRUB binary, special -pages and page table are in the heap. - -On *-efi GRUB uses same stack as EFI. If compiled for x86-64 with GCC 4.4 or -later adressable space is unlimited. When compiled for x86-64 with older GCC -version adressable space is limited to 2GiB. For all other platforms adressable -space is limited to 4GiB. GRUB allocates pages from EFI for its heap, at most -1.6 GiB. - -On i386-ieee1275 and powerpc-ieee1275 GRUB uses same stack as IEEE1275. -It allocates at most 32MiB for its heap. - -On sparc64-ieee1275 stack is 256KiB and heap is 2MiB. - -On mips(el)-qemu_mips and mipsel-loongson stack is 2MiB (everything below -GRUB image) and everything above GRUB image (from 2MiB + kernel size) -until 256MiB is part of heap. - -On mips-arc stack is 2MiB (everything below GRUB image) and everything above -GRUB image(from 2MiB + kernel size) until 128MiB is part of heap. - -On mipsel-arc stack is 2MiB (everything below GRUB image which is not part -of ARC) and everything above GRUB image (from 7MiB + kernel size) -until 256MiB is part of heap. - -On arm-uboot stack is 256KiB and heap is 2MiB. - -In short: - -@multitable @columnfractions .15 .25 .5 -@headitem Platform @tab Stack @tab Heap -@item emu @tab 8 MiB @tab ? -@item i386-pc @tab 60 KiB @tab < 4 GiB -@item i386-coreboot @tab 60 KiB @tab < 4 GiB -@item i386-multiboot @tab 60 KiB @tab < 4 GiB -@item i386-qemu @tab 60 KiB @tab < 4 GiB -@item *-efi @tab ? @tab < 1.6 GiB -@item i386-ieee1275 @tab ? @tab < 32 MiB -@item powerpc-ieee1275 @tab ? @tab < 32 MiB -@item sparc64-ieee1275 @tab 256KiB @tab 2 MiB -@item arm-uboot @tab 256KiB @tab 2 MiB -@item mips(el)-qemu_mips @tab 2MiB @tab 253 MiB -@item mipsel-loongson @tab 2MiB @tab 253 MiB -@item mips-arc @tab 2MiB @tab 125 MiB -@item mipsel-arc @tab 2MiB @tab 248 MiB -@item x86_64-xen (GCC >= 4.4) @tab 4MiB @tab unlimited -@item x86_64-xen (GCC < 4.4) @tab 4MiB @tab < 2GiB -@item i386-xen @tab 4MiB @tab < 4GiB -@end multitable - - -@node BIOS port memory map -@chapter BIOS port memory map -@c By Yoshinori K Okuji - -@multitable @columnfractions .15 .25 .5 -@headitem Start @tab End @tab Usage -@item 0 @tab 0x1000 - 1 @tab BIOS and real mode interrupts -@item 0x07BE @tab 0x07FF @tab Partition table passed to another boot loader -@item ? @tab 0x2000 - 1 @tab Real mode stack -@item 0x7C00 @tab 0x7D00 - 1 @tab Boot sector -@item 0x8000 @tab ? @tab GRUB kernel -@item 0x68000 @tab 0x71000 - 1 @tab Disk buffer -@item ? @tab 0x80000 - 1 @tab Protected mode stack -@item ? @tab 0xA0000 - 1 @tab Extended BIOS Data Area -@item 0xA0000 @tab 0xC0000 - 1 @tab Video RAM -@item 0xC0000 @tab 0x100000 - 1 @tab BIOS -@item 0x100000 @tab ? @tab Heap and module code -@end multitable - -@node Video Subsystem -@chapter Video Subsystem -@c By VesaJääskeläinen -This document contains specification for Video Subsystem for GRUB2. -Currently only the usage interface is described in this document. -Internal structure of how video drivers are registering and how video -driver manager works are not included here. - -@menu -* Video API:: -* Example usage of Video API:: -* Bitmap API:: -@end menu - -@node Video API -@section Video API - -@subsection grub_video_setup - -@itemize -@item Prototype: -@example -grub_err_t -grub_video_setup (unsigned int width, unsigned int height, unsigned int mode_type); -@end example -@item Description: - -Driver will use information provided to it to select best possible video mode and switch to it. Supported values for @code{mode_type} are @code{GRUB_VIDEO_MODE_TYPE_INDEX_COLOR} for index color modes, @code{GRUB_VIDEO_MODE_TYPE_RGB} for direct RGB color modes and @code{GRUB_VIDEO_MODE_TYPE_DOUBLE_BUFFERED} for double buffering. When requesting RGB mode, highest bits per pixel mode will be selected. When requesting Index color mode, mode with highest number of colors will be selected. If all parameters are specified as zero, video adapter will try to figure out best possible mode and initialize it, platform specific differences are allowed here. If there is no mode matching request, error X will be returned. If there are no problems, function returns @code{GRUB_ERR_NONE}. - -This function also performs following task upon succesful mode switch. Active rendering target is changed to screen and viewport is maximized to allow whole screen to be used when performing graphics operations. In RGB modes, emulated palette gets 16 entries containing default values for VGA palette, other colors are defined as black. When switching to Indexed Color mode, driver may set default VGA palette to screen if the video card allows the operation. - -@end itemize - -@subsection grub_video_restore -@itemize -@item Prototype: - -@example -grub_err_t -grub_video_restore (void); -@end example -@item Description: - -Video subsystem will deinitialize activated video driver to restore old state of video device. This can be used to switch back to text mode. -@end itemize - -@subsection grub_video_get_info -@itemize -@item Prototype: - -@example -grub_err_t -grub_video_get_info (struct grub_video_mode_info *mode_info); -@end example -@example -struct grub_video_mode_info -@{ - /* Width of the screen. */ - unsigned int width; - /* Height of the screen. */ - unsigned int height; - /* Mode type bitmask. Contains information like is it Index color or - RGB mode. */ - unsigned int mode_type; - /* Bits per pixel. */ - unsigned int bpp; - /* Bytes per pixel. */ - unsigned int bytes_per_pixel; - /* Pitch of one scanline. How many bytes there are for scanline. */ - unsigned int pitch; - /* In index color mode, number of colors. In RGB mode this is 256. */ - unsigned int number_of_colors; - /* Optimization hint how binary data is coded. */ - enum grub_video_blit_format blit_format; - /* How many bits are reserved for red color. */ - unsigned int red_mask_size; - /* What is location of red color bits. In Index Color mode, this is 0. */ - unsigned int red_field_pos; - /* How many bits are reserved for green color. */ - unsigned int green_mask_size; - /* What is location of green color bits. In Index Color mode, this is 0. */ - unsigned int green_field_pos; - /* How many bits are reserved for blue color. */ - unsigned int blue_mask_size; - /* What is location of blue color bits. In Index Color mode, this is 0. */ - unsigned int blue_field_pos; - /* How many bits are reserved in color. */ - unsigned int reserved_mask_size; - /* What is location of reserved color bits. In Index Color mode, - this is 0. */ - unsigned int reserved_field_pos; -@}; -@end example -@item Description: - -Software developer can use this function to query properties of active rendering taget. Information provided here can be used by other parts of GRUB, like image loaders to convert loaded images to correct screen format to allow more optimized blitters to be used. If there there is no configured video driver with active screen, error @code{GRUB_ERR_BAD_DEVICE} is returned, otherwise @code{mode_info} is filled with valid information and @code{GRUB_ERR_NONE} is returned. -@end itemize - -@subsection grub_video_get_blit_format -@itemize -@item Prototype: - -@example -enum grub_video_blit_format -grub_video_get_blit_format (struct grub_video_mode_info *mode_info); -@end example -@example -enum grub_video_blit_format - @{ - /* Follow exactly field & mask information. */ - GRUB_VIDEO_BLIT_FORMAT_RGBA, - /* Make optimization assumption. */ - GRUB_VIDEO_BLIT_FORMAT_R8G8B8A8, - /* Follow exactly field & mask information. */ - GRUB_VIDEO_BLIT_FORMAT_RGB, - /* Make optimization assumption. */ - GRUB_VIDEO_BLIT_FORMAT_R8G8B8, - /* When needed, decode color or just use value as is. */ - GRUB_VIDEO_BLIT_FORMAT_INDEXCOLOR - @}; -@end example -@item Description: - -Used to query how data could be optimized to suit specified video mode. Returns exact video format type, or a generic one if there is no definition for the type. For generic formats, use @code{grub_video_get_info} to query video color coding settings. -@end itemize - -@subsection grub_video_set_palette -@itemize -@item Prototype: - -@example -grub_err_t -grub_video_set_palette (unsigned int start, unsigned int count, struct grub_video_palette_data *palette_data); -@end example -@example -struct grub_video_palette_data -@{ - grub_uint8_t r; /* Red color value (0-255). */ - grub_uint8_t g; /* Green color value (0-255). */ - grub_uint8_t b; /* Blue color value (0-255). */ - grub_uint8_t a; /* Reserved bits value (0-255). */ -@}; -@end example -@item Description: - -Used to setup indexed color palettes. If mode is RGB mode, colors will be set to emulated palette data. In Indexed Color modes, palettes will be set to hardware. Color values will be converted to suit requirements of the video mode. @code{start} will tell what hardware color index (or emulated color index) will be set to according information in first indice of @code{palette_data}, after that both hardware color index and @code{palette_data} index will be incremented until @code{count} number of colors have been set. -@end itemize - -@subsection grub_video_get_palette -@itemize -@item Prototype: - -@example -grub_err_t -grub_video_get_palette (unsigned int start, unsigned int count, struct grub_video_palette_data *palette_data); -@end example -@example -struct grub_video_palette_data -@{ - grub_uint8_t r; /* Red color value (0-255). */ - grub_uint8_t g; /* Green color value (0-255). */ - grub_uint8_t b; /* Blue color value (0-255). */ - grub_uint8_t a; /* Reserved bits value (0-255). */ -@}; -@end example -@item Description: - -Used to query indexed color palettes. If mode is RGB mode, colors will be copied from emulated palette data. In Indexed Color modes, palettes will be read from hardware. Color values will be converted to suit structure format. @code{start} will tell what hardware color index (or emulated color index) will be used as a source for first indice of @code{palette_data}, after that both hardware color index and @code{palette_data} index will be incremented until @code{count} number of colors have been read. -@end itemize - -@subsection grub_video_set_area_status -@itemize - -@item Prototype: -@example -grub_err_t -grub_video_set_area_status (grub_video_area_status_t area_status); -@end example -@example -enum grub_video_area_status_t - @{ - GRUB_VIDEO_AREA_DISABLED, - GRUB_VIDEO_AREA_ENABLED - @}; -@end example - -@item Description: - -Used to set area drawing mode for redrawing the specified region. Draw commands -are performed in the intersection of the viewport and the region called area. -Coordinates remain related to the viewport. If draw commands try to draw over -the area, they are clipped. -Set status to DISABLED if you need to draw everything. -Set status to ENABLED and region to the desired rectangle to redraw everything -inside the region leaving everything else intact. -Should be used for redrawing of active elements. -@end itemize - -@subsection grub_video_get_area_status -@itemize - -@item Prototype: -@example -grub_err_r -grub_video_get_area_status (grub_video_area_status_t *area_status); -@end example - -@item Description: -Used to query the area status. -@end itemize - -@subsection grub_video_set_viewport -@itemize -@item Prototype: - -@example -grub_err_t -grub_video_set_viewport (unsigned int x, unsigned int y, unsigned int width, unsigned int height); -@end example -@item Description: - -Used to specify viewport where draw commands are performed. When viewport is set, all draw commands coordinates relate to those specified by @code{x} and @code{y}. If draw commands try to draw over viewport, they are clipped. If developer requests larger than possible viewport, width and height will be clamped to fit screen. If @code{x} and @code{y} are out of bounds, all functions drawing to screen will not be displayed. In order to maximize viewport, use @code{grub_video_get_info} to query actual screen dimensions and provide that information to this function. -@end itemize - -@subsection grub_video_get_viewport -@itemize -@item Prototype: - -@example -grub_err_t -grub_video_get_viewport (unsigned int *x, unsigned int *y, unsigned int *width, unsigned int *height); -@end example -@item Description: - -Used to query current viewport dimensions. Software developer can use this to choose best way to render contents of the viewport. -@end itemize - -@subsection grub_video_set_region -@itemize -@item Prototype: - -@example -grub_err_t -grub_video_set_region (unsigned int x, unsigned int y, unsigned int width, unsigned int height); -@end example -@item Description: - -Used to specify the region of the screen which should be redrawn. Use absolute -values. When the region is set and area status is ENABLE all draw commands will -be performed inside the interseption of region and viewport named area. -If draw commands try to draw over viewport, they are clipped. If developer -requests larger than possible region, width and height will be clamped to fit -screen. Should be used for redrawing of active elements. -@end itemize - -@subsection grub_video_get_region -@itemize -@item Prototype: - -@example -grub_err_t -grub_video_get_region (unsigned int *x, unsigned int *y, unsigned int *width, unsigned int *height); -@end example -@item Description: - -Used to query current region dimensions. -@end itemize - -@subsection grub_video_map_color -@itemize -@item Prototype: - -@example -grub_video_color_t -grub_video_map_color (grub_uint32_t color_name); -@end example -@item Description: - -Map color can be used to support color themes in GRUB. There will be collection of color names that can be used to query actual screen mapped color data. Examples could be @code{GRUB_COLOR_CONSOLE_BACKGROUND}, @code{GRUB_COLOR_CONSOLE_TEXT}. The actual color defines are not specified at this point. -@end itemize - -@subsection grub_video_map_rgb -@itemize -@item Prototype: - -@example -grub_video_color_t -grub_video_map_rgb (grub_uint8_t red, grub_uint8_t green, grub_uint8_t blue); -@end example -@item Description: - -Map RGB values to compatible screen color data. Values are expected to be in range 0-255 and in RGB modes they will be converted to screen color data. In index color modes, index color palette will be searched for specified color and then index is returned. -@end itemize - -@subsection grub_video_map_rgba -@itemize -@item Prototype: - -@example -grub_video_color_t -grub_video_map_rgba (grub_uint8_t red, grub_uint8_t green, grub_uint8_t blue, grub_uint8_t alpha); -@end example -@item Description: - -Map RGBA values to compatible screen color data. Values are expected to be in range 0-255. In RGBA modes they will be converted to screen color data. In index color modes, index color palette will be searched for best matching color and its index is returned. -@end itemize - -@subsection grub_video_unmap_color -@itemize -@item Prototype: - -@example -grub_err_t -grub_video_unmap_color (grub_video_color_t color, grub_uint8_t *red, grub_uint8_t *green, grub_uint8_t *blue, grub_uint8_t *alpha); -@end example -@item Description: - -Unmap color value from @code{color} to color channels in @code{red}, @code{green}, @code{blue} and @code{alpha}. Values will be in range 0-255. Active rendering target will be used for color domain. In case alpha information is not available in rendering target, it is assumed to be opaque (having value 255). -@end itemize - -@subsection grub_video_fill_rect -@itemize -@item Prototype: - -@example -grub_err_t -grub_video_fill_rect (grub_video_color_t color, int x, int y, unsigned int width, unsigned int height); -@end example -@item Description: - -Fill specified area limited by given coordinates within specified viewport. Negative coordinates are accepted in order to allow easy moving of rectangle within viewport. If coordinates are negative, area of the rectangle will be shrinken to follow size limits of the viewport. - -Software developer should use either @code{grub_video_map_color}, @code{grub_video_map_rgb} or @code{grub_video_map_rgba} to map requested color to @code{color} parameter. -@end itemize - -@subsection grub_video_blit_glyph -@itemize -@item Prototype: - -@example -grub_err_t -grub_video_blit_glyph (struct grub_font_glyph *glyph, grub_video_color_t color, int x, int y); -@end example -@example -struct grub_font_glyph @{ - /* TBD. */ -@}; -@end example -@item Description: - -Used to blit glyph to viewport in specified coodinates. If glyph is at edge of viewport, pixels outside of viewport will be clipped out. Software developer should use either @code{grub_video_map_rgb} or @code{grub_video_map_rgba} to map requested color to @code{color} parameter. -@end itemize - -@subsection grub_video_blit_bitmap -@itemize -@item Prototype: - -@example -grub_err_t -grub_video_blit_bitmap (struct grub_video_bitmap *bitmap, enum grub_video_blit_operators oper, int x, int y, int offset_x, int offset_y, unsigned int width, unsigned int height); -@end example -@example -struct grub_video_bitmap -@{ - /* TBD. */ -@}; - -enum grub_video_blit_operators - @{ - GRUB_VIDEO_BLIT_REPLACE, - GRUB_VIDEO_BLIT_BLEND - @}; -@end example -@item Description: - -Used to blit bitmap to viewport in specified coordinates. If part of bitmap is outside of viewport region, it will be clipped out. Offsets affect bitmap position where data will be copied from. Negative values for both viewport coordinates and bitmap offset coordinates are allowed. If data is looked out of bounds of bitmap, color value will be assumed to be transparent. If viewport coordinates are negative, area of the blitted rectangle will be shrinken to follow size limits of the viewport and bitmap. Blitting operator @code{oper} specifies should source pixel replace data in screen or blend with pixel alpha value. - -Software developer should use @code{grub_video_bitmap_create} or @code{grub_video_bitmap_load} to create or load bitmap data. -@end itemize - -@subsection grub_video_blit_render_target -@itemize -@item Prototype: - -@example -grub_err_t -grub_video_blit_render_target (struct grub_video_render_target *source, enum grub_video_blit_operators oper, int x, int y, int offset_x, int offset_y, unsigned int width, unsigned int height); -@end example -@example -struct grub_video_render_target @{ - /* This is private data for video driver. Should not be accessed from elsewhere directly. */ -@}; - -enum grub_video_blit_operators - @{ - GRUB_VIDEO_BLIT_REPLACE, - GRUB_VIDEO_BLIT_BLEND - @}; -@end example -@item Description: - -Used to blit source render target to viewport in specified coordinates. If part of source render target is outside of viewport region, it will be clipped out. If blitting operator is specified and source contains alpha values, resulting pixel color components will be calculated using formula ((src_color * src_alpha) + (dst_color * (255 - src_alpha)) / 255, if target buffer has alpha, it will be set to src_alpha. Offsets affect render target position where data will be copied from. If data is looked out of bounds of render target, color value will be assumed to be transparent. Blitting operator @code{oper} specifies should source pixel replace data in screen or blend with pixel alpha value. -@end itemize - -@subsection grub_video_scroll -@itemize -@item Prototype: - -@example -grub_err_t -grub_video_scroll (grub_video_color_t color, int dx, int dy); -@end example -@item Description: - -Used to scroll viewport to specified direction. New areas are filled with specified color. This function is used when screen is scroller up in video terminal. -@end itemize - -@subsection grub_video_swap_buffers -@itemize -@item Prototype: - -@example -grub_err_t -grub_video_swap_buffers (void); -@end example -@item Description: - -If double buffering is enabled, this swaps frontbuffer and backbuffer, in order to show values drawn to back buffer. Video driver is free to choose how this operation is techincally done. -@end itemize - -@subsection grub_video_create_render_target -@itemize -@item Prototype: - -@example -grub_err_t -grub_video_create_render_target (struct grub_video_render_target **result, unsigned int width, unsigned int height, unsigned int mode_type); -@end example -@example -struct grub_video_render_target @{ - /* This is private data for video driver. Should not be accessed from elsewhere directly. */ -@}; -@end example -@item Description: - -Driver will use information provided to it to create best fitting render target. @code{mode_type} will be used to guide on selecting what features are wanted for render target. Supported values for @code{mode_type} are @code{GRUB_VIDEO_MODE_TYPE_INDEX_COLOR} for index color modes, @code{GRUB_VIDEO_MODE_TYPE_RGB} for direct RGB color modes and @code{GRUB_VIDEO_MODE_TYPE_ALPHA} for alpha component. -@end itemize - -@subsection grub_video_delete_render_target -@itemize -@item Prototype: - -@example -grub_err_t -grub_video_delete_render_target (struct grub_video_render_target *target); -@end example -@item Description: - -Used to delete previously created render target. If @code{target} contains @code{NULL} pointer, nothing will be done. If render target is correctly destroyed, GRUB_ERR_NONE is returned. -@end itemize - -@subsection grub_video_set_active_render_target -@itemize -@item Prototype: - -@example -grub_err_t -grub_video_set_active_render_target (struct grub_video_render_target *target); -@end example -@item Description: - -Sets active render target. If this comand is successful all drawing commands will be done to specified @code{target}. There is also special values for target, @code{GRUB_VIDEO_RENDER_TARGET_DISPLAY} used to reference screen's front buffer, @code{GRUB_VIDEO_RENDER_TARGET_FRONT_BUFFER} used to reference screen's front buffer (alias for @code{GRUB_VIDEO_RENDER_TARGET_DISPLAY}) and @code{GRUB_VIDEO_RENDER_TARGET_BACK_BUFFER} used to reference back buffer (if double buffering is enabled). If render target is correclty switched GRUB_ERR_NONE is returned. In no any event shall there be non drawable active render target. - -@end itemize -@subsection grub_video_get_active_render_target -@itemize -@item Prototype: - -@example -grub_err_t -grub_video_get_active_render_target (struct grub_video_render_target **target); -@end example -@item Description: - -Returns currently active render target. It returns value in @code{target} that can be subsequently issued back to @code{grub_video_set_active_render_target}. -@end itemize - -@node Example usage of Video API -@section Example usage of Video API -@subsection Example of screen setup -@example -grub_err_t rc; -/* Try to initialize video mode 1024 x 768 with direct RGB. */ -rc = grub_video_setup (1024, 768, GRUB_VIDEO_MODE_TYPE_RGB); -if (rc != GRUB_ERR_NONE) -@{ - /* Fall back to standard VGA Index Color mode. */ - rc = grub_video_setup (640, 480, GRUB_VIDEO_MODE_TYPE_INDEX); - if (rc != GRUB_ERR_NONE) - @{ - /* Handle error. */ - @} -@} -@end example -@subsection Example of setting up console viewport -@example -grub_uint32_t x, y, width, height; -grub_video_color_t color; -struct grub_font_glyph glyph; -grub_err_t rc; -/* Query existing viewport. */ -grub_video_get_viewport (&x, &y, &width, &height); -/* Fill background. */ -color = grub_video_map_color (GRUB_COLOR_BACKGROUND); -grub_video_fill_rect (color, 0, 0, width, height); -/* Setup console viewport. */ -grub_video_set_viewport (x + 10, y + 10, width - 20, height - 20); -grub_video_get_viewport (&x, &y, &width, &height); -color = grub_video_map_color (GRUB_COLOR_CONSOLE_BACKGROUND); -grub_video_fill_rect (color, 0, 0, width, height); -/* Draw text to viewport. */ -color = grub_video_map_color (GRUB_COLOR_CONSOLE_TEXT); -grub_font_get_glyph ('X', &glyph); -grub_video_blit_glyph (&glyph, color, 0, 0); -@end example - -@node Bitmap API -@section Bitmap API -@subsection grub_video_bitmap_create -@itemize -@item Prototype: -@example -grub_err_t grub_video_bitmap_create (struct grub_video_bitmap **bitmap, unsigned int width, unsigned int height, enum grub_video_blit_format blit_format) -@end example - -@item Description: - -Creates a new bitmap with given dimensions and blitting format. Allocated bitmap data can then be modified freely and finally blitted with @code{grub_video_blit_bitmap} to rendering target. -@end itemize - -@subsection grub_video_bitmap_destroy -@itemize -@item Prototype: -@example -grub_err_t grub_video_bitmap_destroy (struct grub_video_bitmap *bitmap); -@end example - -@item Description: - -When bitmap is no longer needed, it can be freed from memory using this command. @code{bitmap} is previously allocated bitmap with @code{grub_video_bitmap_create} or loaded with @code{grub_video_bitmap_load}. -@end itemize - -@subsection grub_video_bitmap_load -@itemize -@item Prototype: -@example -grub_err_t grub_video_bitmap_load (struct grub_video_bitmap **bitmap, const char *filename); -@end example - -@item Description: - -Tries to load given bitmap (@code{filename}) using registered bitmap loaders. In case bitmap format is not recognized or supported error @code{GRUB_ERR_BAD_FILE_TYPE} is returned. -@end itemize - -@subsection grub_video_bitmap_get_width -@itemize -@item Prototype: -@example -unsigned int grub_video_bitmap_get_width (struct grub_video_bitmap *bitmap); -@end example - -@item Description: - -Returns bitmap width. -@end itemize - -@subsection grub_video_bitmap_get_height -@itemize -@item Prototype: -@example -unsigned int grub_video_bitmap_get_height (struct grub_video_bitmap *bitmap); -@end example - -@item Description: - -Return bitmap height. -@end itemize - -@subsection grub_video_bitmap_get_mode_info -@itemize -@item Prototype: -@example -void grub_video_bitmap_get_mode_info (struct grub_video_bitmap *bitmap, struct grub_video_mode_info *mode_info); -@end example - -@item Description: - -Returns bitmap format details in form of @code{grub_video_mode_info}. -@end itemize - -@subsection grub_video_bitmap_get_data -@itemize -@item Prototype: -@example -void *grub_video_bitmap_get_data (struct grub_video_bitmap *bitmap); -@end example - -@item Description: - -Return pointer to bitmap data. Contents of the pointed data can be freely modified. There is no extra protection against going off the bounds so you have to be carefull how to access the data. -@end itemize - -@node PFF2 Font File Format -@chapter PFF2 Font File Format - -@c Author: Colin D. Bennett -@c Date: 8 January 2009 - -@menu -* Introduction:: -* File Structure:: -* Font Metrics:: -@end menu - - -@node Introduction -@section Introduction - -The goal of this format is to provide a bitmap font format that is simple to -use, compact, and cleanly supports Unicode. - - -@subsection Goals of the GRUB Font Format - -@itemize -@item Simple to read and use. -Since GRUB will only be reading the font files, -we are more concerned with making the code to read the font simple than we -are with writing the font. - -@item Compact storage. -The fonts will generally be stored in a small boot -partition where GRUB is located, and this may be on a removable storage -device such as a CD or USB flash drive where space is more limited than it -is on most hard drives. - -@item Unicode. -GRUB should not have to deal with multiple character -encodings. The font should always use Unicode character codes for simple -internationalization. -@end itemize - -@subsection Why Another Font Format? - -There are many existing bitmap font formats that GRUB could use. However, -there are aspects of these formats that may make them less than suitable for -use in GRUB at this time: - -@table @samp -@item BDF -Inefficient storage; uses ASCII to describe properties and -hexadecimal numbers in ASCII for the bitmap rows. -@item PCF -Many format variations such as byte order and bitmap padding (rows -padded to byte, word, etc.) would result in more complex code to -handle the font format. -@end table - -@node File Structure -@section File Structure - -A file @strong{section} consists of a 4-byte name, a 32-bit big-endian length (not -including the name or length), and then @var{length} more section-type-specific -bytes. - -The standard file extension for PFF2 font files is @file{.pf2}. - - -@subsection Section Types - -@table @samp -@item FILE -@strong{File type ID} (ASCII string). This must be the first section in the file. It has length 4 -and the contents are the four bytes of the ASCII string @samp{PFF2}. - -@item NAME -@strong{Font name} (ASCII string). This is the full font name including family, -weight, style, and point size. For instance, "Helvetica Bold Italic 14". - -@item FAMI -@strong{Font family name} (ASCII string). For instance, "Helvetica". This should -be included so that intelligent font substitution can take place. - -@item WEIG -@strong{Font weight} (ASCII string). Valid values are @samp{bold} and @samp{normal}. -This should be included so that intelligent font substitution can take -place. - -@item SLAN -@strong{Font slant} (ASCII string). Valid values are @samp{italic} and @samp{normal}. -This should be included so that intelligent font substitution can take -place. - -@item PTSZ -@strong{Font point size} (uint16be). - -@item MAXW -@strong{Maximum character width in pixels} (uint16be). - -@item MAXH -@strong{Maximum character height in pixels} (uint16be). - -@item ASCE -@strong{Ascent in pixels} (uint16be). @xref{Font Metrics}, for details. - -@item DESC -@strong{Descent in pixels} (uint16be). @xref{Font Metrics}, for details. - -@item CHIX -@strong{Character index.} -The character index begins with a 32-bit big-endian unsigned integer -indicating the total size of the section, not including this size value. -For each character, there is an instance of the following entry structure: - -@itemize -@item @strong{Unicode code point.} (32-bit big-endian integer.) - -@item @strong{Storage flags.} (byte.) - -@itemize -@item Bits 2..0: - -If equal to 000 binary, then the character data is stored -uncompressed beginning at the offset indicated by the character's -@strong{offset} value. - -If equal to 001 binary, then the character data is stored within a -compressed character definition block that begins at the offset -within the file indicated by the character's @strong{offset} value. -@end itemize - -@item @strong{Offset.} (32-bit big-endian integer.) - -A marker that indicates the remainder of the file is data accessed via -the character index (CHIX) section. When reading this font file, the rest -of the file can be ignored when scanning the sections. The length should -be set to -1 (0xFFFFFFFF). - -Supported data structures: - -Character definition -Each character definition consists of: - -@itemize -@item @strong{Width.} -Width of the bitmap in pixels. The bitmap's extents -represent the glyph's bounding box. @code{uint16be}. - -@item @strong{Height.} -Height of the bitmap in pixels. The bitmap's extents -represent the glyph's bounding box. @code{uint16be}. - -@item @strong{X offset.} -The number of pixels to shift the bitmap by -horizontally before drawing the character. @code{int16be}. - -@item @strong{Y offset.} -The number of pixels to shift the bitmap by -vertically before drawing the character. @code{int16be}. - -@item @strong{Device width.} -The number of pixels to advance horizontally from -this character's origin to the origin of the next character. -@code{int16be}. - -@item @strong{Bitmap data.} -This is encoded as a string of bits. It is -organized as a row-major, top-down, left-to-right bitmap. The most -significant bit of each byte is taken to be the leftmost or uppermost -bit in the byte. For the sake of compact storage, rows are not padded -to byte boundaries (i.e., a single byte may contain bits belonging to -multiple rows). The last byte of the bitmap @strong{is} padded with zero -bits in the bits positions to the right of the last used bit if the -bitmap data does not fill the last byte. - -The length of the @strong{bitmap data} field is (@var{width} * @var{height} + 7) / 8 -using integer arithmetic, which is equivalent to ceil(@var{width} * -@var{height} / 8) using real number arithmetic. - -It remains to be determined whether bitmap fonts usually make all -glyph bitmaps the same height, or if smaller glyphs are stored with -bitmaps having a lesser height. In the latter case, the baseline -would have to be used to calculate the location the bitmap should be -anchored at on screen. -@end itemize - -@end itemize -@end table - -@node Font Metrics -@section Font Metrics - -@itemize -@item Ascent. -The distance from the baseline to the top of most characters. -Note that in some cases characters may extend above the ascent. - -@item Descent. -The distance from the baseline to the bottom of most characters. Note that -in some cases characters may extend below the descent. - -@item Leading. -The amount of space, in pixels, to leave between the descent of one line of -text and the ascent of the next line. This metrics is not specified in the -current file format; instead, the font rendering engine calculates a -reasonable leading value based on the other font metrics. - -@item Horizonal leading. -The amount of space, in pixels, to leave horizontally between the left and -right edges of two adjacent glyphs. The @strong{device width} field determines -the effective leading value that is used to render the font. - -@end itemize -@ifnottex -@image{font_char_metrics,,,,.png} -@end ifnottex - -An illustration of how the various font metrics apply to characters. - - - -@node Graphical Menu Software Design -@chapter Graphical Menu Software Design - -@c By Colin D. Bennett -@c Date: 17 August 2008 - -@menu -* Introduction_2:: -* Startup Sequence:: -* GUI Components:: -* Command Line Window:: -@end menu - -@node Introduction_2 -@section Introduction - -The @samp{gfxmenu} module provides a graphical menu interface for GRUB 2. It -functions as an alternative to the menu interface provided by the @samp{normal} -module, which uses the grub terminal interface to display a menu on a -character-oriented terminal. - -The graphical menu uses the GRUB video API, which is currently for the VESA -BIOS extensions (VBE) 2.0+. This is supported on the i386-pc platform. -However, the graphical menu itself does not depend on using VBE, so if another -GRUB video driver were implemented, the @samp{gfxmenu} graphical menu would work -on the new video driver as well. - - -@node Startup Sequence -@section Startup Sequence - -@itemize -@item grub_enter_normal_mode [normal/main.c] -@item grub_normal_execute [normal/main.c] -@item read_config_file [normal/main.c] -@item (When @file{gfxmenu.mod} is loaded with @command{insmod}, it will call @code{grub_menu_viewer_register()} to register itself.) -@item GRUB_MOD_INIT (gfxmenu) [gfxmenu/gfxmenu.c] -@item grub_menu_viewer_register [kern/menu_viewer.c] -@item grub_menu_viewer_show_menu [kern/menu_viewer.c] -@item get_current_menu_viewer() [kern/menu_viewer.c] -@item show_menu() [gfxmenu/gfxmenu.c] -@item grub_gfxmenu_model_new [gfxmenu/model.c] -@item grub_gfxmenu_view_new [gfxmenu/view.c] -@item set_graphics_mode [gfxmenu/view.c] -@item grub_gfxmenu_view_load_theme [gfxmenu/theme_loader.c] -@end itemize - - -@node GUI Components -@section GUI Components - -The graphical menu implements a GUI component system that supports a -container-based layout system. Components can be added to containers, and -containers (which are a type of component) can then be added to other -containers, to form a tree of components. Currently, the root component of -this tree is a @samp{canvas} component, which allows manual layout of its child -components. - -Components (non-container): - -@itemize -@item label -@item image -@item progress_bar -@item circular_progress -@item list (currently hard coded to be a boot menu list) -@end itemize - -Containers: - -@itemize -@item canvas -@item hbox -@item vbox -@end itemize - -The GUI component instances are created by the theme loader in -@file{gfxmenu/theme_loader.c} when a theme is loaded. Theme files specify -statements such as @samp{+vbox@{ +label @{ text="Hello" @} +label@{ text="World" @} @}} -to add components to the component tree root. By nesting the component -creation statements in the theme file, the instantiated components are nested -the same way. - -When a component is added to a container, that new child is considered @strong{owned} -by the container. Great care should be taken if the caller retains a -reference to the child component, since it will be destroyed if its parent -container is destroyed. A better choice instead of storing a pointer to the -child component is to use the component ID to find the desired component. -Component IDs do not have to be unique (it is often useful to have multiple -components with an ID of "__timeout__", for instance). - -In order to access and use components in the component tree, there are two -functions (defined in @file{gfxmenu/gui_util.c}) that are particularly useful: - -@itemize - -@item @code{grub_gui_find_by_id (root, id, callback, userdata)}: - -This function ecursively traverses the component tree rooted at @var{root}, and -for every component that has an ID equal to @var{id}, calls the function pointed -to by @var{callback} with the matching component and the void pointer @var{userdata} -as arguments. The callback function can do whatever is desired to use the -component passed in. - -@item @code{grub_gui_iterate_recursively (root, callback, userdata)}: - -This function calls the function pointed to by @var{callback} for every -component that is a descendant of @var{root} in the component tree. When the -callback function is called, the component and the void pointer @var{userdata} -as arguments. The callback function can do whatever is desired to use the -component passed in. -@end itemize - -@node Command Line Window -@section Command Line Window - -The terminal window used to provide command line access within the graphical -menu is managed by @file{gfxmenu/view.c}. The @samp{gfxterm} terminal is used, and -it has been modified to allow rendering to an offscreen render target to allow -it to be composed into the double buffering system that the graphical menu -view uses. This is bad for performance, however, so it would probably be a -good idea to make it possible to temporarily disable double buffering as long -as the terminal window is visible. There are still unresolved problems that -occur when commands are executed from the terminal window that change the -graphics mode. It's possible that making @code{grub_video_restore()} return to -the graphics mode that was in use before @code{grub_video_setup()} was called -might fix some of the problems. - - -@node Verifiers framework -@chapter Verifiers framework - -To register your own verifier call @samp{grub_verifier_register} with a structure -pointing to your functions. - -The interface is inspired by the hash interface with @samp{init}/@samp{write}/@samp{fini}. - -There are essentially 2 ways of using it, hashing and whole-file verification. - -With the hashing approach: -During @samp{init} you decide whether you want to check the given file and init context. -In @samp{write} you update your hashing state. -In @samp{fini} you check that the hash matches the expected value/passes some check/... - -With whole-file verification: -During @samp{init} you decide whether you want to check the given file and init context. -In @samp{write} you verify the file and return an error if it fails. -You don't have @samp{fini}. - -Additional @samp{verify_string} receives various strings like kernel parameters -to verify. Returning no error means successful verification and an error stops -the current action. - -Detailed description of the API: - -Every time a file is opened your @samp{init} function is called with file descriptor -and file type. Your function can have the following outcomes: - -@itemize - -@item returning no error and setting @samp{*flags} to @samp{GRUB_VERIFY_FLAGS_DEFER_AUTH}. -In this case verification is deferred to other active verifiers. Verification -fails if nobody cares or selected verifier fails. - -@item returning no error and setting @samp{*flags} to @samp{GRUB_VERIFY_FLAGS_SKIP_VERIFICATION}. -In this case your verifier will not be called anymore and it is assumed to have -skipped verification. - -@item returning no error and not setting @samp{*flags} to @samp{GRUB_VERIFY_FLAGS_SKIP_VERIFICATION} -In this case verification is done as described in the following section. - -@item returning an error. Then opening of the file will fail due to failed verification. - -@end itemize - -In the third case your @samp{write} will be called with chunks of the file. If -you need the whole file in a single chunk then during @samp{init} set the bit -@samp{GRUB_VERIFY_FLAGS_SINGLE_CHUNK} in @samp{*flags}. During @samp{init} you -may set @samp{*context} if you need additional context. At every iteration you -may return an error and the file will be considered as having failed the -verification. If you return no error then verification continues. - -Optionally at the end of the file @samp{fini}, if it exists, is called with just -the context. If you return no error during any of @samp{init}, @samp{write} and -@samp{fini} then the file is considered as having succeded verification. - -@node Copying This Manual -@appendix Copying This Manual - -@menu -* GNU Free Documentation License:: License for copying this manual. -@end menu - -@include fdl.texi - - -@node Index -@unnumbered Index - -@c Currently, we use only the Concept Index. -@printindex cp - -@bye diff --git a/thirdparty/grub-2.04/docs/grub.cfg b/thirdparty/grub-2.04/docs/grub.cfg deleted file mode 100644 index dc184d7d9..000000000 --- a/thirdparty/grub-2.04/docs/grub.cfg +++ /dev/null @@ -1,76 +0,0 @@ -# -# Sample GRUB configuration file -# - -# Boot automatically after 30 secs. -set timeout=30 - -# By default, boot the GNU/Linux -set default=gnulinux - -# Fallback to GNU/Hurd. -set fallback=gnuhurd - -# For booting GNU/Linux -menuentry "GNU/Linux" --id gnulinux { - set root=(hd0,msdos1) - linux /vmlinuz root=/dev/sda1 - initrd /initrd.img -} - -# For booting GNU/Hurd -menuentry "GNU (aka GNU/Hurd)" --id gnuhurd { - set root=(hd0,msdos1) - multiboot /boot/gnumach.gz root=device:hd0s1 - module /hurd/ext2fs.static ext2fs --readonly \ - --multiboot-command-line='${kernel-command-line}' \ - --host-priv-port='${host-port}' \ - --device-master-port='${device-port}' \ - --exec-server-task='${exec-task}' -T typed '${root}' \ - '$(task-create)' '$(task-resume)' - module /lib/ld.so.1 exec /hurd/exec '$(exec-task=task-create)' -} - -# For booting FreeBSD -menuentry "FreeBSD (or GNU/kFreeBSD), direct boot" { - set root=(hd0,msdos1,bsd1) - kfreebsd /boot/kernel/kernel - kfreebsd_loadenv /boot/device.hints - kfreebsd_module /boot/splash.bmp type=splash_image_data - set kFreeBSD.vfs.root.mountfrom=ufs:ad0s1a -} - -menuentry "FreeBSD (or GNU/kFreeBSD), via /boot/loader" { - set root=(hd0,msdos1,bsd1) - kfreebsd /boot/loader -} - -# For booting NetBSD -menuentry "NetBSD" { - set root=(hd0,netbsd1) - knetbsd /netbsd -} - -# For booting OpenBSD -menuentry "OpenBSD" { - set root=(hd0,openbsd1) - kopenbsd /bsd -} - -# For booting Microsoft Windows -menuentry "Microsoft Windows" { - set root=(hd0,msdos1) - chainloader +1 -} - -# For booting Memtest86+ -menuentry "Memtest86+" { - set root=(hd0,1) - linux16 /memtest86+.bin -} - -# Change the colors. -menuentry "Change the colors" { - set menu_color_normal=light-green/brown - set menu_color_highlight=red/blue -} diff --git a/thirdparty/grub-2.04/docs/grub.info b/thirdparty/grub-2.04/docs/grub.info deleted file mode 100644 index 7cc7d9212..000000000 --- a/thirdparty/grub-2.04/docs/grub.info +++ /dev/null @@ -1,7651 +0,0 @@ -This is grub.info, produced by makeinfo version 6.3 from grub.texi. - -This manual is for GNU GRUB (version 2.04, 24 June 2019). - - Copyright (C) -1999,2000,2001,2002,2004,2006,2008,2009,2010,2011,2012,2013 Free -Software Foundation, Inc. - - Permission is granted to copy, distribute and/or modify this - document under the terms of the GNU Free Documentation License, - Version 1.2 or any later version published by the Free Software - Foundation; with no Invariant Sections. -INFO-DIR-SECTION Kernel -START-INFO-DIR-ENTRY -* GRUB: (grub). The GRand Unified Bootloader -* grub-install: (grub)Invoking grub-install. Install GRUB on your drive -* grub-mkconfig: (grub)Invoking grub-mkconfig. Generate GRUB configuration -* grub-mkpasswd-pbkdf2: (grub)Invoking grub-mkpasswd-pbkdf2. -* grub-mkrelpath: (grub)Invoking grub-mkrelpath. -* grub-mkrescue: (grub)Invoking grub-mkrescue. Make a GRUB rescue image -* grub-mount: (grub)Invoking grub-mount. Mount a file system using GRUB -* grub-probe: (grub)Invoking grub-probe. Probe device information -* grub-script-check: (grub)Invoking grub-script-check. -END-INFO-DIR-ENTRY - - -File: grub.info, Node: Top, Next: Introduction, Up: (dir) - -GNU GRUB manual -*************** - -This is the documentation of GNU GRUB, the GRand Unified Bootloader, a -flexible and powerful boot loader program for a wide range of -architectures. - - This edition documents version 2.04. - - This manual is for GNU GRUB (version 2.04, 24 June 2019). - - Copyright (C) -1999,2000,2001,2002,2004,2006,2008,2009,2010,2011,2012,2013 Free -Software Foundation, Inc. - - Permission is granted to copy, distribute and/or modify this - document under the terms of the GNU Free Documentation License, - Version 1.2 or any later version published by the Free Software - Foundation; with no Invariant Sections. - -* Menu: - -* Introduction:: Capturing the spirit of GRUB -* Naming convention:: Names of your drives in GRUB -* OS-specific notes about grub tools:: - Some notes about OS-specific behaviour of GRUB - tools -* Installation:: Installing GRUB on your drive -* Booting:: How to boot different operating systems -* Configuration:: Writing your own configuration file -* Theme file format:: Format of GRUB theme files -* Network:: Downloading OS images from a network -* Serial terminal:: Using GRUB via a serial line -* Vendor power-on keys:: Changing GRUB behaviour on vendor power-on keys -* Images:: GRUB image files -* Core image size limitation:: GRUB image files size limitations -* Filesystem:: Filesystem syntax and semantics -* Interface:: The menu and the command-line -* Environment:: GRUB environment variables -* Commands:: The list of available builtin commands -* Internationalisation:: Topics relating to language support -* Security:: Authentication, authorisation, and signatures -* Platform limitations:: The list of platform-specific limitations -* Platform-specific operations:: Platform-specific operations -* Supported kernels:: The list of supported kernels -* Troubleshooting:: Error messages produced by GRUB -* Invoking grub-install:: How to use the GRUB installer -* Invoking grub-mkconfig:: Generate a GRUB configuration file -* Invoking grub-mkpasswd-pbkdf2:: - Generate GRUB password hashes -* Invoking grub-mkrelpath:: Make system path relative to its root -* Invoking grub-mkrescue:: Make a GRUB rescue image -* Invoking grub-mount:: Mount a file system using GRUB -* Invoking grub-probe:: Probe device information for GRUB -* Invoking grub-script-check:: Check GRUB script file for syntax errors -* Obtaining and Building GRUB:: How to obtain and build GRUB -* Reporting bugs:: Where you should send a bug report -* Future:: Some future plans on GRUB -* Copying This Manual:: Copying This Manual -* Index:: - - -File: grub.info, Node: Introduction, Next: Naming convention, Prev: Top, Up: Top - -1 Introduction to GRUB -********************** - -* Menu: - -* Overview:: What exactly GRUB is and how to use it -* History:: From maggot to house fly -* Changes from GRUB Legacy:: Differences from previous versions -* Features:: GRUB features -* Role of a boot loader:: The role of a boot loader - - -File: grub.info, Node: Overview, Next: History, Up: Introduction - -1.1 Overview -============ - -Briefly, a "boot loader" is the first software program that runs when a -computer starts. It is responsible for loading and transferring control -to an operating system "kernel" software (such as Linux or GNU Mach). -The kernel, in turn, initializes the rest of the operating system (e.g. -a GNU system). - - GNU GRUB is a very powerful boot loader, which can load a wide -variety of free operating systems, as well as proprietary operating -systems with chain-loading(1) (*note Overview-Footnote-1::). GRUB is -designed to address the complexity of booting a personal computer; both -the program and this manual are tightly bound to that computer platform, -although porting to other platforms may be addressed in the future. - - One of the important features in GRUB is flexibility; GRUB -understands filesystems and kernel executable formats, so you can load -an arbitrary operating system the way you like, without recording the -physical position of your kernel on the disk. Thus you can load the -kernel just by specifying its file name and the drive and partition -where the kernel resides. - - When booting with GRUB, you can use either a command-line interface -(*note Command-line interface::), or a menu interface (*note Menu -interface::). Using the command-line interface, you type the drive -specification and file name of the kernel manually. In the menu -interface, you just select an OS using the arrow keys. The menu is -based on a configuration file which you prepare beforehand (*note -Configuration::). While in the menu, you can switch to the command-line -mode, and vice-versa. You can even edit menu entries before using them. - - In the following chapters, you will learn how to specify a drive, a -partition, and a file name (*note Naming convention::) to GRUB, how to -install GRUB on your drive (*note Installation::), and how to boot your -OSes (*note Booting::), step by step. - - -File: grub.info, Node: Overview-Footnotes, Up: Overview - - (1) "chain-load" is the mechanism for loading unsupported operating -systems by loading another boot loader. It is typically used for -loading DOS or Windows. - - -File: grub.info, Node: History, Next: Changes from GRUB Legacy, Prev: Overview, Up: Introduction - -1.2 History of GRUB -=================== - -GRUB originated in 1995 when Erich Boleyn was trying to boot the GNU -Hurd with the University of Utah's Mach 4 microkernel (now known as GNU -Mach). Erich and Brian Ford designed the Multiboot Specification (*note -Multiboot Specification: (multiboot)Top.), because they were determined -not to add to the large number of mutually-incompatible PC boot methods. - - Erich then began modifying the FreeBSD boot loader so that it would -understand Multiboot. He soon realized that it would be a lot easier to -write his own boot loader from scratch than to keep working on the -FreeBSD boot loader, and so GRUB was born. - - Erich added many features to GRUB, but other priorities prevented him -from keeping up with the demands of its quickly-expanding user base. In -1999, Gordon Matzigkeit and Yoshinori K. Okuji adopted GRUB as an -official GNU package, and opened its development by making the latest -sources available via anonymous CVS. *Note Obtaining and Building -GRUB::, for more information. - - Over the next few years, GRUB was extended to meet many needs, but it -quickly became clear that its design was not keeping up with the -extensions being made to it, and we reached the point where it was very -difficult to make any further changes without breaking existing -features. Around 2002, Yoshinori K. Okuji started work on PUPA -(Preliminary Universal Programming Architecture for GNU GRUB), aiming to -rewrite the core of GRUB to make it cleaner, safer, more robust, and -more powerful. PUPA was eventually renamed to GRUB 2, and the original -version of GRUB was renamed to GRUB Legacy. Small amounts of -maintenance continued to be done on GRUB Legacy, but the last release -(0.97) was made in 2005 and at the time of writing it seems unlikely -that there will be another. - - By around 2007, GNU/Linux distributions started to use GRUB 2 to -limited extents, and by the end of 2009 multiple major distributions -were installing it by default. - - -File: grub.info, Node: Changes from GRUB Legacy, Next: Features, Prev: History, Up: Introduction - -1.3 Differences from previous versions -====================================== - -GRUB 2 is a rewrite of GRUB (*note History::), although it shares many -characteristics with the previous version, now known as GRUB Legacy. -Users of GRUB Legacy may need some guidance to find their way around -this new version. - - * The configuration file has a new name ('grub.cfg' rather than - 'menu.lst' or 'grub.conf'), new syntax (*note Configuration::) and - many new commands (*note Commands::). Configuration cannot be - copied over directly, although most GRUB Legacy users should not - find the syntax too surprising. - - * 'grub.cfg' is typically automatically generated by 'grub-mkconfig' - (*note Simple configuration::). This makes it easier to handle - versioned kernel upgrades. - - * Partition numbers in GRUB device names now start at 1, not 0 (*note - Naming convention::). - - * The configuration file is now written in something closer to a full - scripting language: variables, conditionals, and loops are - available. - - * A small amount of persistent storage is available across reboots, - using the 'save_env' and 'load_env' commands in GRUB and the - 'grub-editenv' utility. This is not available in all - configurations (*note Environment block::). - - * GRUB 2 has more reliable ways to find its own files and those of - target kernels on multiple-disk systems, and has commands (*note - search::) to find devices using file system labels or Universally - Unique Identifiers (UUIDs). - - * GRUB 2 is available for several other types of system in addition - to the PC BIOS systems supported by GRUB Legacy: PC EFI, PC - coreboot, PowerPC, SPARC, and MIPS Lemote Yeeloong are all - supported. - - * Many more file systems are supported, including but not limited to - ext4, HFS+, and NTFS. - - * GRUB 2 can read files directly from LVM and RAID devices. - - * A graphical terminal and a graphical menu system are available. - - * GRUB 2's interface can be translated, including menu entry names. - - * The image files (*note Images::) that make up GRUB have been - reorganised; Stage 1, Stage 1.5, and Stage 2 are no more. - - * GRUB 2 puts many facilities in dynamically loaded modules, allowing - the core image to be smaller, and allowing the core image to be - built in more flexible ways. - - -File: grub.info, Node: Features, Next: Role of a boot loader, Prev: Changes from GRUB Legacy, Up: Introduction - -1.4 GRUB features -================= - -The primary requirement for GRUB is that it be compliant with the -"Multiboot Specification", which is described in *note Multiboot -Specification: (multiboot)Top. - - The other goals, listed in approximate order of importance, are: - - * Basic functions must be straightforward for end-users. - - * Rich functionality to support kernel experts and designers. - - * Backward compatibility for booting FreeBSD, NetBSD, OpenBSD, and - Linux. Proprietary kernels (such as DOS, Windows NT, and OS/2) are - supported via a chain-loading function. - - Except for specific compatibility modes (chain-loading and the Linux -"piggyback" format), all kernels will be started in much the same state -as in the Multiboot Specification. Only kernels loaded at 1 megabyte or -above are presently supported. Any attempt to load below that boundary -will simply result in immediate failure and an error message reporting -the problem. - - In addition to the requirements above, GRUB has the following -features (note that the Multiboot Specification doesn't require all the -features that GRUB supports): - -Recognize multiple executable formats - Support many of the "a.out" variants plus "ELF". Symbol tables are - also loaded. - -Support non-Multiboot kernels - Support many of the various free 32-bit kernels that lack Multiboot - compliance (primarily FreeBSD, NetBSD(1) (*note - Features-Footnote-1::), OpenBSD, and Linux). Chain-loading of - other boot loaders is also supported. - -Load multiples modules - Fully support the Multiboot feature of loading multiple modules. - -Load a configuration file - Support a human-readable text configuration file with preset boot - commands. You can also load another configuration file dynamically - and embed a preset configuration file in a GRUB image file. The - list of commands (*note Commands::) are a superset of those - supported on the command-line. An example configuration file is - provided in *note Configuration::. - -Provide a menu interface - A menu interface listing preset boot commands, with a programmable - timeout, is available. There is no fixed limit on the number of - boot entries, and the current implementation has space for several - hundred. - -Have a flexible command-line interface - A fairly flexible command-line interface, accessible from the menu, - is available to edit any preset commands, or write a new boot - command set from scratch. If no configuration file is present, - GRUB drops to the command-line. - - The list of commands (*note Commands::) are a subset of those - supported for configuration files. Editing commands closely - resembles the Bash command-line (*note Bash: (features)Command Line - Editing.), with -completion of commands, devices, partitions, - and files in a directory depending on context. - -Support multiple filesystem types - Support multiple filesystem types transparently, plus a useful - explicit blocklist notation. The currently supported filesystem - types are "Amiga Fast FileSystem (AFFS)", "AtheOS fs", "BeFS", - "BtrFS" (including raid0, raid1, raid10, gzip and lzo), "cpio" - (little- and big-endian bin, odc and newc variants), "Linux - ext2/ext3/ext4", "DOS FAT12/FAT16/FAT32", "exFAT", "F2FS", "HFS", - "HFS+", "ISO9660" (including Joliet, Rock-ridge and multi-chunk - files), "JFS", "Minix fs" (versions 1, 2 and 3), "nilfs2", "NTFS" - (including compression), "ReiserFS", "ROMFS", "Amiga Smart - FileSystem (SFS)", "Squash4", "tar", "UDF", "BSD UFS/UFS2", "XFS", - and "ZFS" (including lzjb, gzip, zle, mirror, stripe, raidz1/2/3 - and encryption in AES-CCM and AES-GCM). *Note Filesystem::, for - more information. - -Support automatic decompression - Can decompress files which were compressed by 'gzip' or 'xz'(2) - (*note Features-Footnote-2::). This function is both automatic and - transparent to the user (i.e. all functions operate upon the - uncompressed contents of the specified files). This greatly - reduces a file size and loading time, a particularly great benefit - for floppies.(3) (*note Features-Footnote-3::) - - It is conceivable that some kernel modules should be loaded in a - compressed state, so a different module-loading command can be - specified to avoid uncompressing the modules. - -Access data on any installed device - Support reading data from any or all floppies or hard disk(s) - recognized by the BIOS, independent of the setting of the root - device. - -Be independent of drive geometry translations - Unlike many other boot loaders, GRUB makes the particular drive - translation irrelevant. A drive installed and running with one - translation may be converted to another translation without any - adverse effects or changes in GRUB's configuration. - -Detect all installed RAM - GRUB can generally find all the installed RAM on a PC-compatible - machine. It uses an advanced BIOS query technique for finding all - memory regions. As described on the Multiboot Specification (*note - Multiboot Specification: (multiboot)Top.), not all kernels make use - of this information, but GRUB provides it for those who do. - -Support Logical Block Address mode - In traditional disk calls (called "CHS mode"), there is a geometry - translation problem, that is, the BIOS cannot access over 1024 - cylinders, so the accessible space is limited to at least 508 MB - and to at most 8GB. GRUB can't universally solve this problem, as - there is no standard interface used in all machines. However, - several newer machines have the new interface, Logical Block - Address ("LBA") mode. GRUB automatically detects if LBA mode is - available and uses it if available. In LBA mode, GRUB can access - the entire disk. - -Support network booting - GRUB is basically a disk-based boot loader but also has network - support. You can load OS images from a network by using the "TFTP" - protocol. - -Support remote terminals - To support computers with no console, GRUB provides remote terminal - support, so that you can control GRUB from a remote host. Only - serial terminal support is implemented at the moment. - - -File: grub.info, Node: Features-Footnotes, Up: Features - - (1) The NetBSD/i386 kernel is Multiboot-compliant, but lacks support -for Multiboot modules. - - (2) Only CRC32 data integrity check is supported (xz default is CRC64 -so one should use -check=crc32 option). LZMA BCJ filters are supported. - - (3) There are a few pathological cases where loading a very badly -organized ELF kernel might take longer, but in practice this never -happen. - - -File: grub.info, Node: Role of a boot loader, Prev: Features, Up: Introduction - -1.5 The role of a boot loader -============================= - -The following is a quotation from Gordon Matzigkeit, a GRUB fanatic: - - Some people like to acknowledge both the operating system and - kernel when they talk about their computers, so they might say they - use "GNU/Linux" or "GNU/Hurd". Other people seem to think that the - kernel is the most important part of the system, so they like to - call their GNU operating systems "Linux systems." - - I, personally, believe that this is a grave injustice, because the - _boot loader_ is the most important software of all. I used to - refer to the above systems as either "LILO"(1) (*note Role of a - boot loader-Footnote-1::) or "GRUB" systems. - - Unfortunately, nobody ever understood what I was talking about; now - I just use the word "GNU" as a pseudonym for GRUB. - - So, if you ever hear people talking about their alleged "GNU" - systems, remember that they are actually paying homage to the best - boot loader around... GRUB! - - We, the GRUB maintainers, do not (usually) encourage Gordon's level -of fanaticism, but it helps to remember that boot loaders deserve -recognition. We hope that you enjoy using GNU GRUB as much as we did -writing it. - - -File: grub.info, Node: Role of a boot loader-Footnotes, Up: Role of a boot loader - - (1) The LInux LOader, a boot loader that everybody uses, but nobody -likes. - - -File: grub.info, Node: Naming convention, Next: OS-specific notes about grub tools, Prev: Introduction, Up: Top - -2 Naming convention -******************* - -The device syntax used in GRUB is a wee bit different from what you may -have seen before in your operating system(s), and you need to know it so -that you can specify a drive/partition. - - Look at the following examples and explanations: - - (fd0) - - First of all, GRUB requires that the device name be enclosed with '(' -and ')'. The 'fd' part means that it is a floppy disk. The number '0' -is the drive number, which is counted from _zero_. This expression -means that GRUB will use the whole floppy disk. - - (hd0,msdos2) - - Here, 'hd' means it is a hard disk drive. The first integer '0' -indicates the drive number, that is, the first hard disk, the string -'msdos' indicates the partition scheme, while the second integer, '2', -indicates the partition number (or the PC slice number in the BSD -terminology). The partition numbers are counted from _one_, not from -zero (as was the case in previous versions of GRUB). This expression -means the second partition of the first hard disk drive. In this case, -GRUB uses one partition of the disk, instead of the whole disk. - - (hd0,msdos5) - - This specifies the first "extended partition" of the first hard disk -drive. Note that the partition numbers for extended partitions are -counted from '5', regardless of the actual number of primary partitions -on your hard disk. - - (hd1,msdos1,bsd1) - - This means the BSD 'a' partition on first PC slice number of the -second hard disk. - - Of course, to actually access the disks or partitions with GRUB, you -need to use the device specification in a command, like 'set root=(fd0)' -or 'parttool (hd0,msdos3) hidden-'. To help you find out which number -specifies a partition you want, the GRUB command-line (*note -Command-line interface::) options have argument completion. This means -that, for example, you only need to type - - set root=( - - followed by a , and GRUB will display the list of drives, -partitions, or file names. So it should be quite easy to determine the -name of your target partition, even with minimal knowledge of the -syntax. - - Note that GRUB does _not_ distinguish IDE from SCSI - it simply -counts the drive numbers from zero, regardless of their type. Normally, -any IDE drive number is less than any SCSI drive number, although that -is not true if you change the boot sequence by swapping IDE and SCSI -drives in your BIOS. - - Now the question is, how to specify a file? Again, consider an -example: - - (hd0,msdos1)/vmlinuz - - This specifies the file named 'vmlinuz', found on the first partition -of the first hard disk drive. Note that the argument completion works -with file names, too. - - That was easy, admit it. Now read the next chapter, to find out how -to actually install GRUB on your drive. - - -File: grub.info, Node: OS-specific notes about grub tools, Next: Installation, Prev: Naming convention, Up: Top - -3 OS-specific notes about grub tools -************************************ - -On OS which have device nodes similar to Unix-like OS GRUB tools use the -OS name. E.g. for GNU/Linux: - - # grub-install /dev/sda - - On AROS we use another syntax. For volumes: - - //: - - E.g. - - //:DH0 - - For disks we use syntax: - //:/unit/flags - - E.g. - - # grub-install //:ata.device/0/0 - - On Windows we use UNC path. For volumes it's typically - - \\?\Volume{} - \\?\: - - E.g. - - \\?\Volume{17f34d50-cf64-4b02-800e-51d79c3aa2ff} - \\?\C: - - For disks it's - - \\?\PhysicalDrive - - E.g. - - # grub-install \\?\PhysicalDrive0 - - Beware that you may need to further escape the backslashes depending -on your shell. - - When compiled with cygwin support then cygwin drive names are -automatically when needed. E.g. - - # grub-install /dev/sda - - -File: grub.info, Node: Installation, Next: Booting, Prev: OS-specific notes about grub tools, Up: Top - -4 Installation -************** - -In order to install GRUB as your boot loader, you need to first install -the GRUB system and utilities under your UNIX-like operating system -(*note Obtaining and Building GRUB::). You can do this either from the -source tarball, or as a package for your OS. - - After you have done that, you need to install the boot loader on a -drive (floppy or hard disk) by using the utility 'grub-install' (*note -Invoking grub-install::) on a UNIX-like OS. - - GRUB comes with boot images, which are normally put in the directory -'/usr/lib/grub/-' (for BIOS-based machines -'/usr/lib/grub/i386-pc'). Hereafter, the directory where GRUB images -are initially placed (normally '/usr/lib/grub/-') will be -called the "image directory", and the directory where the boot loader -needs to find them (usually '/boot') will be called the "boot -directory". - -* Menu: - -* Installing GRUB using grub-install:: -* Making a GRUB bootable CD-ROM:: -* Device map:: -* BIOS installation:: - - -File: grub.info, Node: Installing GRUB using grub-install, Next: Making a GRUB bootable CD-ROM, Up: Installation - -4.1 Installing GRUB using grub-install -====================================== - -For information on where GRUB should be installed on PC BIOS platforms, -*note BIOS installation::. - - In order to install GRUB under a UNIX-like OS (such as GNU), invoke -the program 'grub-install' (*note Invoking grub-install::) as the -superuser ("root"). - - The usage is basically very simple. You only need to specify one -argument to the program, namely, where to install the boot loader. The -argument has to be either a device file (like '/dev/hda'). For example, -under Linux the following will install GRUB into the MBR of the first -IDE disk: - - # grub-install /dev/sda - - Likewise, under GNU/Hurd, this has the same effect: - - # grub-install /dev/hd0 - - But all the above examples assume that GRUB should put images under -the '/boot' directory. If you want GRUB to put images under a directory -other than '/boot', you need to specify the option '--boot-directory'. -The typical usage is that you create a GRUB boot floppy with a -filesystem. Here is an example: - - # mke2fs /dev/fd0 - # mount -t ext2 /dev/fd0 /mnt - # mkdir /mnt/boot - # grub-install --boot-directory=/mnt/boot /dev/fd0 - # umount /mnt - - Some BIOSes have a bug of exposing the first partition of a USB drive -as a floppy instead of exposing the USB drive as a hard disk (they call -it "USB-FDD" boot). In such cases, you need to install like this: - - # losetup /dev/loop0 /dev/sdb1 - # mount /dev/loop0 /mnt/usb - # grub-install --boot-directory=/mnt/usb/bugbios --force --allow-floppy /dev/loop0 - - This install doesn't conflict with standard install as long as they -are in separate directories. - - Note that 'grub-install' is actually just a shell script and the real -task is done by other tools such as 'grub-mkimage'. Therefore, you may -run those commands directly to install GRUB, without using -'grub-install'. Don't do that, however, unless you are very familiar -with the internals of GRUB. Installing a boot loader on a running OS may -be extremely dangerous. - - On EFI systems for fixed disk install you have to mount EFI System -Partition. If you mount it at '/boot/efi' then you don't need any -special arguments: - - # grub-install - - Otherwise you need to specify where your EFI System partition is -mounted: - - # grub-install --efi-directory=/mnt/efi - - For removable installs you have to use '--removable' and specify both -'--boot-directory' and '--efi-directory': - - # grub-install --efi-directory=/mnt/usb --boot-directory=/mnt/usb/boot --removable - - -File: grub.info, Node: Making a GRUB bootable CD-ROM, Next: Device map, Prev: Installing GRUB using grub-install, Up: Installation - -4.2 Making a GRUB bootable CD-ROM -================================= - -GRUB supports the "no emulation mode" in the El Torito specification(1) -(*note Making a GRUB bootable CD-ROM-Footnote-1::). This means that you -can use the whole CD-ROM from GRUB and you don't have to make a floppy -or hard disk image file, which can cause compatibility problems. - - For booting from a CD-ROM, GRUB uses a special image called -'cdboot.img', which is concatenated with 'core.img'. The 'core.img' -used for this should be built with at least the 'iso9660' and 'biosdisk' -modules. Your bootable CD-ROM will usually also need to include a -configuration file 'grub.cfg' and some other GRUB modules. - - To make a simple generic GRUB rescue CD, you can use the -'grub-mkrescue' program (*note Invoking grub-mkrescue::): - - $ grub-mkrescue -o grub.iso - - You will often need to include other files in your image. To do -this, first make a top directory for the bootable image, say, 'iso': - - $ mkdir iso - - Make a directory for GRUB: - - $ mkdir -p iso/boot/grub - - If desired, make the config file 'grub.cfg' under 'iso/boot/grub' -(*note Configuration::), and copy any files and directories for the disc -to the directory 'iso/'. - - Finally, make the image: - - $ grub-mkrescue -o grub.iso iso - - This produces a file named 'grub.iso', which then can be burned into -a CD (or a DVD), or written to a USB mass storage device. - - The root device will be set up appropriately on entering your -'grub.cfg' configuration file, so you can refer to file names on the CD -without needing to use an explicit device name. This makes it easier to -produce rescue images that will work on both optical drives and USB mass -storage devices. - - -File: grub.info, Node: Making a GRUB bootable CD-ROM-Footnotes, Up: Making a GRUB bootable CD-ROM - - (1) El Torito is a specification for bootable CD using BIOS -functions. - - -File: grub.info, Node: Device map, Next: BIOS installation, Prev: Making a GRUB bootable CD-ROM, Up: Installation - -4.3 The map between BIOS drives and OS devices -============================================== - -If the device map file exists, the GRUB utilities ('grub-probe', etc.) -read it to map BIOS drives to OS devices. This file consists of lines -like this: - - (DEVICE) FILE - - DEVICE is a drive specified in the GRUB syntax (*note Device -syntax::), and FILE is an OS file, which is normally a device file. - - Historically, the device map file was used because GRUB device names -had to be used in the configuration file, and they were derived from -BIOS drive numbers. The map between BIOS drives and OS devices cannot -always be guessed correctly: for example, GRUB will get the order wrong -if you exchange the boot sequence between IDE and SCSI in your BIOS. - - Unfortunately, even OS device names are not always stable. Modern -versions of the Linux kernel may probe drives in a different order from -boot to boot, and the prefix ('/dev/hd*' versus '/dev/sd*') may change -depending on the driver subsystem in use. As a result, the device map -file required frequent editing on some systems. - - GRUB avoids this problem nowadays by using UUIDs or file system -labels when generating 'grub.cfg', and we advise that you do the same -for any custom menu entries you write. If the device map file does not -exist, then the GRUB utilities will assume a temporary device map on the -fly. This is often good enough, particularly in the common case of -single-disk systems. - - However, the device map file is not entirely obsolete yet, and it is -used for overriding when current environment is different from the one -on boot. Most common case is if you use a partition or logical volume -as a disk for virtual machine. You can put any comments in the file if -needed, as the GRUB utilities assume that a line is just a comment if -the first character is '#'. - - -File: grub.info, Node: BIOS installation, Prev: Device map, Up: Installation - -4.4 BIOS installation -===================== - -MBR -=== - -The partition table format traditionally used on PC BIOS platforms is -called the Master Boot Record (MBR) format; this is the format that -allows up to four primary partitions and additional logical partitions. -With this partition table format, there are two ways to install GRUB: it -can be embedded in the area between the MBR and the first partition -(called by various names, such as the "boot track", "MBR gap", or -"embedding area", and which is usually at least 31 KiB), or the core -image can be installed in a file system and a list of the blocks that -make it up can be stored in the first sector of that partition. - - Each of these has different problems. There is no way to reserve -space in the embedding area with complete safety, and some proprietary -software is known to use it to make it difficult for users to work -around licensing restrictions; and systems are sometimes partitioned -without leaving enough space before the first partition. On the other -hand, installing to a filesystem means that GRUB is vulnerable to its -blocks being moved around by filesystem features such as tail packing, -or even by aggressive fsck implementations, so this approach is quite -fragile; and this approach can only be used if the '/boot' filesystem is -on the same disk that the BIOS boots from, so that GRUB does not have to -rely on guessing BIOS drive numbers. - - The GRUB development team generally recommends embedding GRUB before -the first partition, unless you have special requirements. You must -ensure that the first partition starts at least 31 KiB (63 sectors) from -the start of the disk; on modern disks, it is often a performance -advantage to align partitions on larger boundaries anyway, so the first -partition might start 1 MiB from the start of the disk. - -GPT -=== - -Some newer systems use the GUID Partition Table (GPT) format. This was -specified as part of the Extensible Firmware Interface (EFI), but it can -also be used on BIOS platforms if system software supports it; for -example, GRUB and GNU/Linux can be used in this configuration. With -this format, it is possible to reserve a whole partition for GRUB, -called the BIOS Boot Partition. GRUB can then be embedded into that -partition without the risk of being overwritten by other software and -without being contained in a filesystem which might move its blocks -around. - - When creating a BIOS Boot Partition on a GPT system, you should make -sure that it is at least 31 KiB in size. (GPT-formatted disks are not -usually particularly small, so we recommend that you make it larger than -the bare minimum, such as 1 MiB, to allow plenty of room for growth.) -You must also make sure that it has the proper partition type. Using -GNU Parted, you can set this using a command such as the following: - - # parted /dev/DISK set PARTITION-NUMBER bios_grub on - - If you are using gdisk, set the partition type to '0xEF02'. With -partitioning programs that require setting the GUID directly, it should -be '21686148-6449-6e6f-744e656564454649'. - - *Caution:* Be very careful which partition you select! When GRUB -finds a BIOS Boot Partition during installation, it will automatically -overwrite part of it. Make sure that the partition does not contain any -other data. - - -File: grub.info, Node: Booting, Next: Configuration, Prev: Installation, Up: Top - -5 Booting -********* - -GRUB can load Multiboot-compliant kernels in a consistent way, but for -some free operating systems you need to use some OS-specific magic. - -* Menu: - -* General boot methods:: How to boot OSes with GRUB generally -* Loopback booting:: Notes on booting from loopbacks -* OS-specific notes:: Notes on some operating systems - - -File: grub.info, Node: General boot methods, Next: Loopback booting, Up: Booting - -5.1 How to boot operating systems -================================= - -GRUB has two distinct boot methods. One of the two is to load an -operating system directly, and the other is to chain-load another boot -loader which then will load an operating system actually. Generally -speaking, the former is more desirable, because you don't need to -install or maintain other boot loaders and GRUB is flexible enough to -load an operating system from an arbitrary disk/partition. However, the -latter is sometimes required, since GRUB doesn't support all the -existing operating systems natively. - -* Menu: - -* Loading an operating system directly:: -* Chain-loading:: - - -File: grub.info, Node: Loading an operating system directly, Next: Chain-loading, Up: General boot methods - -5.1.1 How to boot an OS directly with GRUB ------------------------------------------- - -Multiboot (*note Multiboot Specification: (multiboot)Top.) is the native -format supported by GRUB. For the sake of convenience, there is also -support for Linux, FreeBSD, NetBSD and OpenBSD. If you want to boot -other operating systems, you will have to chain-load them (*note -Chain-loading::). - - FIXME: this section is incomplete. - - 1. Run the command 'boot' (*note boot::). - - However, DOS and Windows have some deficiencies, so you might have to -use more complicated instructions. *Note DOS/Windows::, for more -information. - - -File: grub.info, Node: Chain-loading, Prev: Loading an operating system directly, Up: General boot methods - -5.1.2 Chain-loading an OS -------------------------- - -Operating systems that do not support Multiboot and do not have specific -support in GRUB (specific support is available for Linux, FreeBSD, -NetBSD and OpenBSD) must be chain-loaded, which involves loading another -boot loader and jumping to it in real mode. - - The 'chainloader' command (*note chainloader::) is used to set this -up. It is normally also necessary to load some GRUB modules and set the -appropriate root device. Putting this together, we get something like -this, for a Windows system on the first partition of the first hard -disk: - -menuentry "Windows" { - insmod chain - insmod ntfs - set root=(hd0,1) - chainloader +1 -} - - On systems with multiple hard disks, an additional workaround may be -required. *Note DOS/Windows::. - - Chain-loading is only supported on PC BIOS and EFI platforms. - - -File: grub.info, Node: Loopback booting, Next: OS-specific notes, Prev: General boot methods, Up: Booting - -5.2 Loopback booting -==================== - -GRUB is able to read from an image (be it one of CD or HDD) stored on -any of its accessible storages (refer to *note loopback:: command). -However the OS itself should be able to find its root. This usually -involves running a userspace program running before the real root is -discovered. This is achieved by GRUB loading a specially made small -image and passing it as ramdisk to the kernel. This is achieved by -commands 'kfreebsd_module', 'knetbsd_module_elf', 'kopenbsd_ramdisk', -'initrd' (*note initrd::), 'initrd16' (*note initrd::), -'multiboot_module', 'multiboot2_module' or 'xnu_ramdisk' depending on -the loader. Note that for knetbsd the image must be put inside -miniroot.kmod and the whole miniroot.kmod has to be loaded. In kopenbsd -payload this is disabled by default. Aditionally behaviour of initial -ramdisk depends on command line options. Several distributors provide -the image for this purpose or it's integrated in their standard ramdisk -and activated by special option. Consult your kernel and distribution -manual for more details. Other loaders like appleloader, chainloader -(BIOS, EFI, coreboot), freedos, ntldr and plan9 provide no possibility -of loading initial ramdisk and as far as author is aware the payloads in -question don't support either initial ramdisk or discovering loopback -boot in other way and as such not bootable this way. Please consider -alternative boot methods like copying all files from the image to actual -partition. Consult your OS documentation for more details - - -File: grub.info, Node: OS-specific notes, Prev: Loopback booting, Up: Booting - -5.3 Some caveats on OS-specific issues -====================================== - -Here, we describe some caveats on several operating systems. - -* Menu: - -* GNU/Hurd:: -* GNU/Linux:: -* NetBSD:: -* DOS/Windows:: - - -File: grub.info, Node: GNU/Hurd, Next: GNU/Linux, Up: OS-specific notes - -5.3.1 GNU/Hurd --------------- - -Since GNU/Hurd is Multiboot-compliant, it is easy to boot it; there is -nothing special about it. But do not forget that you have to specify a -root partition to the kernel. - - 1. Set GRUB's root device to the same drive as GNU/Hurd's. The - command 'search --set=root --file /boot/gnumach.gz' or similar may - help you (*note search::). - - 2. Load the kernel and the modules, like this: - - grub> multiboot /boot/gnumach.gz root=device:hd0s1 - grub> module /hurd/ext2fs.static ext2fs --readonly \ - --multiboot-command-line='${kernel-command-line}' \ - --host-priv-port='${host-port}' \ - --device-master-port='${device-port}' \ - --exec-server-task='${exec-task}' -T typed '${root}' \ - '$(task-create)' '$(task-resume)' - grub> module /lib/ld.so.1 exec /hurd/exec '$(exec-task=task-create)' - - 3. Finally, run the command 'boot' (*note boot::). - - -File: grub.info, Node: GNU/Linux, Next: NetBSD, Prev: GNU/Hurd, Up: OS-specific notes - -5.3.2 GNU/Linux ---------------- - -It is relatively easy to boot GNU/Linux from GRUB, because it somewhat -resembles to boot a Multiboot-compliant OS. - - 1. Set GRUB's root device to the same drive as GNU/Linux's. The - command 'search --set=root --file /vmlinuz' or similar may help you - (*note search::). - - 2. Load the kernel using the command 'linux' (*note linux::): - - grub> linux /vmlinuz root=/dev/sda1 - - If you need to specify some kernel parameters, just append them to - the command. For example, to set 'acpi' to 'off', do this: - - grub> linux /vmlinuz root=/dev/sda1 acpi=off - - See the documentation in the Linux source tree for complete - information on the available options. - - With 'linux' GRUB uses 32-bit protocol. Some BIOS services like - APM or EDD aren't available with this protocol. In this case you - need to use 'linux16' - - grub> linux16 /vmlinuz root=/dev/sda1 acpi=off - - 3. If you use an initrd, execute the command 'initrd' (*note initrd::) - after 'linux': - - grub> initrd /initrd - - If you used 'linux16' you need to use 'initrd16': - - grub> initrd16 /initrd - - 4. Finally, run the command 'boot' (*note boot::). - - *Caution:* If you use an initrd and specify the 'mem=' option to the -kernel to let it use less than actual memory size, you will also have to -specify the same memory size to GRUB. To let GRUB know the size, run the -command 'uppermem' _before_ loading the kernel. *Note uppermem::, for -more information. - - -File: grub.info, Node: NetBSD, Next: DOS/Windows, Prev: GNU/Linux, Up: OS-specific notes - -5.3.3 NetBSD ------------- - -Booting a NetBSD kernel from GRUB is also relatively easy: first set -GRUB's root device, then load the kernel and the modules, and finally -run 'boot'. - - 1. Set GRUB's root device to the partition holding the NetBSD root - file system. For a disk with a NetBSD disk label, this is usually - the first partition (a:). In that case, and assuming that the - partition is on the first hard disk, set GRUB's root device as - follows: - - grub> insmod part_bsd - grub> set root=(hd0,netbsd1) - - For a disk with a GUID Partition Table (GPT), and assuming that the - NetBSD root partition is the third GPT partition, do this: - - grub> insmod part_gpt - grub> set root=(hd0,gpt3) - - 2. Load the kernel using the command 'knetbsd': - - grub> knetbsd /netbsd - - Various options may be given to 'knetbsd'. These options are, for - the most part, the same as in the NetBSD boot loader. For - instance, to boot the system in single-user mode and with verbose - messages, do this: - - grub> knetbsd /netbsd -s -v - - 3. If needed, load kernel modules with the command - 'knetbsd_module_elf'. A typical example is the module for the root - file system: - - grub> knetbsd_module_elf /stand/amd64/6.0/modules/ffs/ffs.kmod - - 4. Finally, run the command 'boot' (*note boot::). - - -File: grub.info, Node: DOS/Windows, Prev: NetBSD, Up: OS-specific notes - -5.3.4 DOS/Windows ------------------ - -GRUB cannot boot DOS or Windows directly, so you must chain-load them -(*note Chain-loading::). However, their boot loaders have some critical -deficiencies, so it may not work to just chain-load them. To overcome -the problems, GRUB provides you with two helper functions. - - If you have installed DOS (or Windows) on a non-first hard disk, you -have to use the disk swapping technique, because that OS cannot boot -from any disks but the first one. The workaround used in GRUB is the -command 'drivemap' (*note drivemap::), like this: - - drivemap -s (hd0) (hd1) - - This performs a "virtual" swap between your first and second hard -drive. - - *Caution:* This is effective only if DOS (or Windows) uses BIOS to -access the swapped disks. If that OS uses a special driver for the -disks, this probably won't work. - - Another problem arises if you installed more than one set of -DOS/Windows onto one disk, because they could be confused if there are -more than one primary partitions for DOS/Windows. Certainly you should -avoid doing this, but there is a solution if you do want to do so. Use -the partition hiding/unhiding technique. - - If GRUB "hides" a DOS (or Windows) partition (*note parttool::), DOS -(or Windows) will ignore the partition. If GRUB "unhides" a DOS (or -Windows) partition, DOS (or Windows) will detect the partition. Thus, -if you have installed DOS (or Windows) on the first and the second -partition of the first hard disk, and you want to boot the copy on the -first partition, do the following: - - parttool (hd0,1) hidden- - parttool (hd0,2) hidden+ - set root=(hd0,1) - chainloader +1 - parttool ${root} boot+ - boot - - -File: grub.info, Node: Configuration, Next: Theme file format, Prev: Booting, Up: Top - -6 Writing your own configuration file -************************************* - -GRUB is configured using 'grub.cfg', usually located under '/boot/grub'. -This file is quite flexible, but most users will not need to write the -whole thing by hand. - -* Menu: - -* Simple configuration:: Recommended for most users -* Root Identifcation Heuristics:: Summary on how the root file system is identified. -* Shell-like scripting:: For power users and developers -* Multi-boot manual config:: For non-standard multi-OS scenarios -* Embedded configuration:: Embedding a configuration file into GRUB - - -File: grub.info, Node: Simple configuration, Next: Root Identifcation Heuristics, Up: Configuration - -6.1 Simple configuration handling -================================= - -The program 'grub-mkconfig' (*note Invoking grub-mkconfig::) generates -'grub.cfg' files suitable for most cases. It is suitable for use when -upgrading a distribution, and will discover available kernels and -attempt to generate menu entries for them. - - 'grub-mkconfig' does have some limitations. While adding extra -custom menu entries to the end of the list can be done by editing -'/etc/grub.d/40_custom' or creating '/boot/grub/custom.cfg', changing -the order of menu entries or changing their titles may require making -complex changes to shell scripts stored in '/etc/grub.d/'. This may be -improved in the future. In the meantime, those who feel that it would -be easier to write 'grub.cfg' directly are encouraged to do so (*note -Booting::, and *note Shell-like scripting::), and to disable any system -provided by their distribution to automatically run 'grub-mkconfig'. - - The file '/etc/default/grub' controls the operation of -'grub-mkconfig'. It is sourced by a shell script, and so must be valid -POSIX shell input; normally, it will just be a sequence of 'KEY=value' -lines, but if the value contains spaces or other special characters then -it must be quoted. For example: - - GRUB_TERMINAL_INPUT="console serial" - - Valid keys in '/etc/default/grub' are as follows: - -'GRUB_DEFAULT' - The default menu entry. This may be a number, in which case it - identifies the Nth entry in the generated menu counted from zero, - or the title of a menu entry, or the special string 'saved'. Using - the id may be useful if you want to set a menu entry as the default - even though there may be a variable number of entries before it. - - For example, if you have: - - menuentry 'Example GNU/Linux distribution' --class gnu-linux --id example-gnu-linux { - ... - } - - then you can make this the default using: - - GRUB_DEFAULT=example-gnu-linux - - Previously it was documented the way to use entry title. While - this still works it's not recommended since titles often contain - unstable device names and may be translated - - If you set this to 'saved', then the default menu entry will be - that saved by 'GRUB_SAVEDEFAULT' or 'grub-set-default'. This - relies on the environment block, which may not be available in all - situations (*note Environment block::). - - The default is '0'. - -'GRUB_SAVEDEFAULT' - If this option is set to 'true', then, when an entry is selected, - save it as a new default entry for use by future runs of GRUB. This - is only useful if 'GRUB_DEFAULT=saved'; it is a separate option - because 'GRUB_DEFAULT=saved' is useful without this option, in - conjunction with 'grub-set-default'. Unset by default. This - option relies on the environment block, which may not be available - in all situations (*note Environment block::). - -'GRUB_TIMEOUT' - Boot the default entry this many seconds after the menu is - displayed, unless a key is pressed. The default is '5'. Set to - '0' to boot immediately without displaying the menu, or to '-1' to - wait indefinitely. - - If 'GRUB_TIMEOUT_STYLE' is set to 'countdown' or 'hidden', the - timeout is instead counted before the menu is displayed. - -'GRUB_TIMEOUT_STYLE' - If this option is unset or set to 'menu', then GRUB will display - the menu and then wait for the timeout set by 'GRUB_TIMEOUT' to - expire before booting the default entry. Pressing a key interrupts - the timeout. - - If this option is set to 'countdown' or 'hidden', then, before - displaying the menu, GRUB will wait for the timeout set by - 'GRUB_TIMEOUT' to expire. If is pressed during that time, it - will display the menu and wait for input. If a hotkey associated - with a menu entry is pressed, it will boot the associated menu - entry immediately. If the timeout expires before either of these - happens, it will boot the default entry. In the 'countdown' case, - it will show a one-line indication of the remaining time. - -'GRUB_DEFAULT_BUTTON' -'GRUB_TIMEOUT_BUTTON' -'GRUB_TIMEOUT_STYLE_BUTTON' -'GRUB_BUTTON_CMOS_ADDRESS' - Variants of the corresponding variables without the '_BUTTON' - suffix, used to support vendor-specific power buttons. *Note - Vendor power-on keys::. - -'GRUB_DISTRIBUTOR' - Set by distributors of GRUB to their identifying name. This is - used to generate more informative menu entry titles. - -'GRUB_TERMINAL_INPUT' - Select the terminal input device. You may select multiple devices - here, separated by spaces. - - Valid terminal input names depend on the platform, but may include - 'console' (native platform console), 'serial' (serial terminal), - 'serial_' (serial terminal with explicit port selection), - 'at_keyboard' (PC AT keyboard), or 'usb_keyboard' (USB keyboard - using the HID Boot Protocol, for cases where the firmware does not - handle this). - - The default is to use the platform's native terminal input. - -'GRUB_TERMINAL_OUTPUT' - Select the terminal output device. You may select multiple devices - here, separated by spaces. - - Valid terminal output names depend on the platform, but may include - 'console' (native platform console), 'serial' (serial terminal), - 'serial_' (serial terminal with explicit port selection), - 'gfxterm' (graphics-mode output), 'vga_text' (VGA text output), - 'mda_text' (MDA text output), 'morse' (Morse-coding using system - beeper) or 'spkmodem' (simple data protocol using system speaker). - - 'spkmodem' is useful when no serial port is available. Connect the - output of sending system (where GRUB is running) to line-in of - receiving system (usually developer machine). On receiving system - compile 'spkmodem-recv' from 'util/spkmodem-recv.c' and run: - - parecord --channels=1 --rate=48000 --format=s16le | ./spkmodem-recv - - The default is to use the platform's native terminal output. - -'GRUB_TERMINAL' - If this option is set, it overrides both 'GRUB_TERMINAL_INPUT' and - 'GRUB_TERMINAL_OUTPUT' to the same value. - -'GRUB_SERIAL_COMMAND' - A command to configure the serial port when using the serial - console. *Note serial::. Defaults to 'serial'. - -'GRUB_CMDLINE_LINUX' - Command-line arguments to add to menu entries for the Linux kernel. - -'GRUB_CMDLINE_LINUX_DEFAULT' - Unless 'GRUB_DISABLE_RECOVERY' is set to 'true', two menu entries - will be generated for each Linux kernel: one default entry and one - entry for recovery mode. This option lists command-line arguments - to add only to the default menu entry, after those listed in - 'GRUB_CMDLINE_LINUX'. - -'GRUB_CMDLINE_NETBSD' -'GRUB_CMDLINE_NETBSD_DEFAULT' - As 'GRUB_CMDLINE_LINUX' and 'GRUB_CMDLINE_LINUX_DEFAULT', but for - NetBSD. - -'GRUB_CMDLINE_GNUMACH' - As 'GRUB_CMDLINE_LINUX', but for GNU Mach. - -'GRUB_CMDLINE_XEN' -'GRUB_CMDLINE_XEN_DEFAULT' - The values of these options are passed to Xen hypervisor Xen menu - entries, for all respectively normal entries. - -'GRUB_CMDLINE_LINUX_XEN_REPLACE' -'GRUB_CMDLINE_LINUX_XEN_REPLACE_DEFAULT' - The values of these options replace the values of - 'GRUB_CMDLINE_LINUX' and 'GRUB_CMDLINE_LINUX_DEFAULT' for Linux and - Xen menu entries. - -'GRUB_EARLY_INITRD_LINUX_CUSTOM' -'GRUB_EARLY_INITRD_LINUX_STOCK' - List of space-separated early initrd images to be loaded from - '/boot'. This is for loading things like CPU microcode, firmware, - ACPI tables, crypto keys, and so on. These early images will be - loaded in the order declared, and all will be loaded before the - actual functional initrd image. - - 'GRUB_EARLY_INITRD_LINUX_STOCK' is for your distribution to declare - images that are provided by the distribution. It should not be - modified without understanding the consequences. They will be - loaded first. - - 'GRUB_EARLY_INITRD_LINUX_CUSTOM' is for your custom created images. - - The default stock images are as follows, though they may be - overridden by your distribution: - intel-uc.img intel-ucode.img amd-uc.img amd-ucode.img early_ucode.cpio microcode.cpio - -'GRUB_DISABLE_LINUX_UUID' - Normally, 'grub-mkconfig' will generate menu entries that use - universally-unique identifiers (UUIDs) to identify the root - filesystem to the Linux kernel, using a 'root=UUID=...' kernel - parameter. This is usually more reliable, but in some cases it may - not be appropriate. To disable the use of UUIDs, set this option - to 'true'. - -'GRUB_DISABLE_LINUX_PARTUUID' - If 'grub-mkconfig' cannot identify the root filesystem via its - universally-unique indentifier (UUID), 'grub-mkconfig' can use the - UUID of the partition containing the filesystem to identify the - root filesystem to the Linux kernel via a 'root=PARTUUID=...' - kernel parameter. This is not as reliable as using the filesystem - UUID, but is more reliable than using the Linux device names. When - 'GRUB_DISABLE_LINUX_PARTUUID' is set to 'false', the Linux kernel - version must be 2.6.37 (3.10 for systems using the MSDOS partition - scheme) or newer. This option defaults to 'true'. To enable the - use of partition UUIDs, set this option to 'false'. - -'GRUB_DISABLE_RECOVERY' - If this option is set to 'true', disable the generation of recovery - mode menu entries. - -'GRUB_VIDEO_BACKEND' - If graphical video support is required, either because the - 'gfxterm' graphical terminal is in use or because - 'GRUB_GFXPAYLOAD_LINUX' is set, then 'grub-mkconfig' will normally - load all available GRUB video drivers and use the one most - appropriate for your hardware. If you need to override this for - some reason, then you can set this option. - - After 'grub-install' has been run, the available video drivers are - listed in '/boot/grub/video.lst'. - -'GRUB_GFXMODE' - Set the resolution used on the 'gfxterm' graphical terminal. Note - that you can only use modes which your graphics card supports via - VESA BIOS Extensions (VBE), so for example native LCD panel - resolutions may not be available. The default is 'auto', which - tries to select a preferred resolution. *Note gfxmode::. - -'GRUB_BACKGROUND' - Set a background image for use with the 'gfxterm' graphical - terminal. The value of this option must be a file readable by GRUB - at boot time, and it must end with '.png', '.tga', '.jpg', or - '.jpeg'. The image will be scaled if necessary to fit the screen. - -'GRUB_THEME' - Set a theme for use with the 'gfxterm' graphical terminal. - -'GRUB_GFXPAYLOAD_LINUX' - Set to 'text' to force the Linux kernel to boot in normal text - mode, 'keep' to preserve the graphics mode set using - 'GRUB_GFXMODE', 'WIDTHxHEIGHT'['xDEPTH'] to set a particular - graphics mode, or a sequence of these separated by commas or - semicolons to try several modes in sequence. *Note gfxpayload::. - - Depending on your kernel, your distribution, your graphics card, - and the phase of the moon, note that using this option may cause - GNU/Linux to suffer from various display problems, particularly - during the early part of the boot sequence. If you have problems, - set this option to 'text' and GRUB will tell Linux to boot in - normal text mode. - -'GRUB_DISABLE_OS_PROBER' - Normally, 'grub-mkconfig' will try to use the external 'os-prober' - program, if installed, to discover other operating systems - installed on the same system and generate appropriate menu entries - for them. Set this option to 'true' to disable this. - -'GRUB_OS_PROBER_SKIP_LIST' - List of space-separated FS UUIDs of filesystems to be ignored from - os-prober output. For efi chainloaders it's @ - -'GRUB_DISABLE_SUBMENU' - Normally, 'grub-mkconfig' will generate top level menu entry for - the kernel with highest version number and put all other found - kernels or alternative menu entries for recovery mode in submenu. - For entries returned by 'os-prober' first entry will be put on top - level and all others in submenu. If this option is set to 'y', - flat menu with all entries on top level will be generated instead. - Changing this option will require changing existing values of - 'GRUB_DEFAULT', 'fallback' (*note fallback::) and 'default' (*note - default::) environment variables as well as saved default entry - using 'grub-set-default' and value used with 'grub-reboot'. - -'GRUB_ENABLE_CRYPTODISK' - If set to 'y', 'grub-mkconfig' and 'grub-install' will check for - encrypted disks and generate additional commands needed to access - them during boot. Note that in this case unattended boot is not - possible because GRUB will wait for passphrase to unlock encrypted - container. - -'GRUB_INIT_TUNE' - Play a tune on the speaker when GRUB starts. This is particularly - useful for users unable to see the screen. The value of this - option is passed directly to *note play::. - -'GRUB_BADRAM' - If this option is set, GRUB will issue a *note badram:: command to - filter out specified regions of RAM. - -'GRUB_PRELOAD_MODULES' - This option may be set to a list of GRUB module names separated by - spaces. Each module will be loaded as early as possible, at the - start of 'grub.cfg'. - - The following options are still accepted for compatibility with -existing configurations, but have better replacements: - -'GRUB_HIDDEN_TIMEOUT' - Wait this many seconds before displaying the menu. If is - pressed during that time, display the menu and wait for input - according to 'GRUB_TIMEOUT'. If a hotkey associated with a menu - entry is pressed, boot the associated menu entry immediately. If - the timeout expires before either of these happens, display the - menu for the number of seconds specified in 'GRUB_TIMEOUT' before - booting the default entry. - - If you set 'GRUB_HIDDEN_TIMEOUT', you should also set - 'GRUB_TIMEOUT=0' so that the menu is not displayed at all unless - is pressed. - - This option is unset by default, and is deprecated in favour of the - less confusing 'GRUB_TIMEOUT_STYLE=countdown' or - 'GRUB_TIMEOUT_STYLE=hidden'. - -'GRUB_HIDDEN_TIMEOUT_QUIET' - In conjunction with 'GRUB_HIDDEN_TIMEOUT', set this to 'true' to - suppress the verbose countdown while waiting for a key to be - pressed before displaying the menu. - - This option is unset by default, and is deprecated in favour of the - less confusing 'GRUB_TIMEOUT_STYLE=countdown'. - -'GRUB_HIDDEN_TIMEOUT_BUTTON' - Variant of 'GRUB_HIDDEN_TIMEOUT', used to support vendor-specific - power buttons. *Note Vendor power-on keys::. - - This option is unset by default, and is deprecated in favour of the - less confusing 'GRUB_TIMEOUT_STYLE=countdown' or - 'GRUB_TIMEOUT_STYLE=hidden'. - - For more detailed customisation of 'grub-mkconfig''s output, you may -edit the scripts in '/etc/grub.d' directly. '/etc/grub.d/40_custom' is -particularly useful for adding entire custom menu entries; simply type -the menu entries you want to add at the end of that file, making sure to -leave at least the first two lines intact. - - -File: grub.info, Node: Root Identifcation Heuristics, Next: Shell-like scripting, Prev: Simple configuration, Up: Configuration - -6.2 Root Identifcation Heuristics -================================= - -If the target operating system uses the Linux kernel, 'grub-mkconfig' -attempts to identify the root file system via a heuristic algoirthm. -This algorithm selects the identification method of the root file system -by considering three factors. The first is if an initrd for the target -operating system is also present. The second is -'GRUB_DISABLE_LINUX_UUID' and if set to 'true', prevents 'grub-mkconfig' -from identifying the root file system by its UUID. The third is -'GRUB_DISABLE_LINUX_PARTUUID' and if set to 'true', prevents -'grub-mkconfig' from identifying the root file system via the UUID of -its enclosing partition. If the variables are assigned any other value, -that value is considered equivalent to 'false'. The variables are also -considered to be set to 'false' if they are not set. - - When booting, the Linux kernel will delegate the task of mounting the -root filesystem to the initrd. Most initrd images determine the root -file system by checking the Linux kernel's command-line for the 'root' -key and use its value as the identification method of the root file -system. To improve the reliability of booting, most initrd images also -allow the root file system to be identified by its UUID. Because of this -behavior, the 'grub-mkconfig' command will set 'root' to 'root=UUID=...' -to provide the initrd with the filesystem UUID of the root file system. - - If no initrd is detected or 'GRUB_DISABLE_LINUX_UUID' is set to -'true' then 'grub-command' will identify the root filesystem by setting -the kernel command-line variable 'root' to 'root=PARTUUID=...' unless -'GRUB_DISABLE_LINUX_PARTUUID' is also set to 'true'. If -'GRUB_DISABLE_LINUX_PARTUUID' is also set to 'true', 'grub-command' will -identify by its Linux device name. - - The following table summarizes the behavior of the 'grub-mkconfig' -command. - -Initrd GRUB_DISABLE_LINUX_PARTUUID GRUB_DISABLE_LINUX_UUID Linux Root -detected Set To Set To ID Method --------------------------------------------------------------------------------- -false false false part UUID -false false true part UUID -false true false dev name -false true true dev name -true false false fs UUID -true false true part UUID -true true false fs UUID -true true true dev name - - Remember, 'GRUB_DISABLE_LINUX_PARTUUID' and 'GRUB_DISABLE_LINUX_UUID' -are also considered to be set to 'false' when they are unset. - - -File: grub.info, Node: Shell-like scripting, Next: Multi-boot manual config, Prev: Root Identifcation Heuristics, Up: Configuration - -6.3 Writing full configuration files directly -============================================= - -'grub.cfg' is written in GRUB's built-in scripting language, which has a -syntax quite similar to that of GNU Bash and other Bourne shell -derivatives. - -Words -===== - -A "word" is a sequence of characters considered as a single unit by -GRUB. Words are separated by "metacharacters", which are the following -plus space, tab, and newline: - - { } | & $ ; < > - - Quoting may be used to include metacharacters in words; see below. - -Reserved words -============== - -Reserved words have a special meaning to GRUB. The following words are -recognised as reserved when unquoted and either the first word of a -simple command or the third word of a 'for' command: - - ! [[ ]] { } - case do done elif else esac fi for function - if in menuentry select then time until while - - Not all of these reserved words have a useful purpose yet; some are -reserved for future expansion. - -Quoting -======= - -Quoting is used to remove the special meaning of certain characters or -words. It can be used to treat metacharacters as part of a word, to -prevent reserved words from being recognised as such, and to prevent -variable expansion. - - There are three quoting mechanisms: the escape character, single -quotes, and double quotes. - - A non-quoted backslash (\) is the "escape character". It preserves -the literal value of the next character that follows, with the exception -of newline. - - Enclosing characters in single quotes preserves the literal value of -each character within the quotes. A single quote may not occur between -single quotes, even when preceded by a backslash. - - Enclosing characters in double quotes preserves the literal value of -all characters within the quotes, with the exception of '$' and '\'. -The '$' character retains its special meaning within double quotes. The -backslash retains its special meaning only when followed by one of the -following characters: '$', '"', '\', or newline. A backslash-newline -pair is treated as a line continuation (that is, it is removed from the -input stream and effectively ignored(1) (*note Shell-like -scripting-Footnote-1::)). A double quote may be quoted within double -quotes by preceding it with a backslash. - -Variable expansion -================== - -The '$' character introduces variable expansion. The variable name to -be expanded may be enclosed in braces, which are optional but serve to -protect the variable to be expanded from characters immediately -following it which could be interpreted as part of the name. - - Normal variable names begin with an alphabetic character, followed by -zero or more alphanumeric characters. These names refer to entries in -the GRUB environment (*note Environment::). - - Positional variable names consist of one or more digits. They -represent parameters passed to function calls, with '$1' representing -the first parameter, and so on. - - The special variable name '?' expands to the exit status of the most -recently executed command. When positional variable names are active, -other special variable names '@', '*' and '#' are defined and they -expand to all positional parameters with necessary quoting, positional -parameters without any quoting, and positional parameter count -respectively. - -Comments -======== - -A word beginning with '#' causes that word and all remaining characters -on that line to be ignored. - -Simple commands -=============== - -A "simple command" is a sequence of words separated by spaces or tabs -and terminated by a semicolon or a newline. The first word specifies -the command to be executed. The remaining words are passed as arguments -to the invoked command. - - The return value of a simple command is its exit status. If the -reserved word '!' precedes the command, then the return value is instead -the logical negation of the command's exit status. - -Compound commands -================= - -A "compound command" is one of the following: - -for NAME in WORD ...; do LIST; done - The list of words following 'in' is expanded, generating a list of - items. The variable NAME is set to each element of this list in - turn, and LIST is executed each time. The return value is the exit - status of the last command that executes. If the expansion of the - items following 'in' results in an empty list, no commands are - executed, and the return status is 0. - -if LIST; then LIST; [elif LIST; then LIST;] ... [else LIST;] fi - The 'if' LIST is executed. If its exit status is zero, the 'then' - LIST is executed. Otherwise, each 'elif' LIST is executed in turn, - and if its exit status is zero, the corresponding 'then' LIST is - executed and the command completes. Otherwise, the 'else' LIST is - executed, if present. The exit status is the exit status of the - last command executed, or zero if no condition tested true. - -while COND; do LIST; done -until COND; do LIST; done - The 'while' command continuously executes the 'do' LIST as long as - the last command in COND returns an exit status of zero. The - 'until' command is identical to the 'while' command, except that - the test is negated; the 'do' LIST is executed as long as the last - command in COND returns a non-zero exit status. The exit status of - the 'while' and 'until' commands is the exit status of the last - 'do' LIST command executed, or zero if none was executed. - -function NAME { COMMAND; ... } - This defines a function named NAME. The "body" of the function is - the list of commands within braces, each of which must be - terminated with a semicolon or a newline. This list of commands - will be executed whenever NAME is specified as the name of a simple - command. Function definitions do not affect the exit status in - '$?'. When executed, the exit status of a function is the exit - status of the last command executed in the body. - -menuentry TITLE ['--class=class' ...] ['--users=users'] ['--unrestricted'] ['--hotkey=key'] ['--id=id'] { COMMAND; ... } - *Note menuentry::. - -Built-in Commands -================= - -Some built-in commands are also provided by GRUB script to help script -writers perform actions that are otherwise not possible. For example, -these include commands to jump out of a loop without fully completing -it, etc. - -break ['n'] - Exit from within a 'for', 'while', or 'until' loop. If 'n' is - specified, break 'n' levels. 'n' must be greater than or equal to - 1. If 'n' is greater than the number of enclosing loops, all - enclosing loops are exited. The return value is 0 unless 'n' is - not greater than or equal to 1. - -continue ['n'] - Resume the next iteration of the enclosing 'for', 'while' or - 'until' loop. If 'n' is specified, resume at the 'n'th enclosing - loop. 'n' must be greater than or equal to 1. If 'n' is greater - than the number of enclosing loops, the last enclosing loop (the - "top-level" loop) is resumed. The return value is 0 unless 'n' is - not greater than or equal to 1. - -return ['n'] - Causes a function to exit with the return value specified by 'n'. - If 'n' is omitted, the return status is that of the last command - executed in the function body. If used outside a function the - return status is false. - -setparams ['arg'] ... - Replace positional parameters starting with '$1' with arguments to - 'setparams'. - -shift ['n'] - The positional parameters from 'n'+1 ... are renamed to '$1'.... - Parameters represented by the numbers '$#' down to '$#'-'n'+1 are - unset. 'n' must be a non-negative number less than or equal to - '$#'. If 'n' is 0, no parameters are changed. If 'n' is not - given, it is assumed to be 1. If 'n' is greater than '$#', the - positional parameters are not changed. The return status is - greater than zero if 'n' is greater than '$#' or less than zero; - otherwise 0. - - -File: grub.info, Node: Shell-like scripting-Footnotes, Up: Shell-like scripting - - (1) Currently a backslash-newline pair within a variable name is not -handled properly, so use this feature with some care. - - -File: grub.info, Node: Multi-boot manual config, Next: Embedded configuration, Prev: Shell-like scripting, Up: Configuration - -6.4 Multi-boot manual config -============================ - -Currently autogenerating config files for multi-boot environments -depends on os-prober and has several shortcomings. While fixing it is -scheduled for the next release, meanwhile you can make use of the power -of GRUB syntax and do it yourself. A possible configuration is detailed -here, feel free to adjust to your needs. - - First create a separate GRUB partition, big enough to hold GRUB. Some -of the following entries show how to load OS installer images from this -same partition, for that you obviously need to make the partition large -enough to hold those images as well. Mount this partition on/mnt/boot -and disable GRUB in all OSes and manually install self-compiled latest -GRUB with: - - 'grub-install --boot-directory=/mnt/boot /dev/sda' - - In all the OSes install GRUB tools but disable installing GRUB in -bootsector, so you'll have menu.lst and grub.cfg available for use. -Also disable os-prober use by setting: - - 'GRUB_DISABLE_OS_PROBER=true' - - in /etc/default/grub - - Then write a grub.cfg (/mnt/boot/grub/grub.cfg): - - - menuentry "OS using grub2" { - insmod xfs - search --set=root --label OS1 --hint hd0,msdos8 - configfile /boot/grub/grub.cfg - } - - menuentry "OS using grub2-legacy" { - insmod ext2 - search --set=root --label OS2 --hint hd0,msdos6 - legacy_configfile /boot/grub/menu.lst - } - - menuentry "Windows XP" { - insmod ntfs - search --set=root --label WINDOWS_XP --hint hd0,msdos1 - ntldr /ntldr - } - - menuentry "Windows 7" { - insmod ntfs - search --set=root --label WINDOWS_7 --hint hd0,msdos2 - ntldr /bootmgr - } - - menuentry "FreeBSD" { - insmod zfs - search --set=root --label freepool --hint hd0,msdos7 - kfreebsd /freebsd@/boot/kernel/kernel - kfreebsd_module_elf /freebsd@/boot/kernel/opensolaris.ko - kfreebsd_module_elf /freebsd@/boot/kernel/zfs.ko - kfreebsd_module /freebsd@/boot/zfs/zpool.cache type=/boot/zfs/zpool.cache - set kFreeBSD.vfs.root.mountfrom=zfs:freepool/freebsd - set kFreeBSD.hw.psm.synaptics_support=1 - } - - menuentry "experimental GRUB" { - search --set=root --label GRUB --hint hd0,msdos5 - multiboot /experimental/grub/i386-pc/core.img - } - - menuentry "Fedora 16 installer" { - search --set=root --label GRUB --hint hd0,msdos5 - linux /fedora/vmlinuz lang=en_US keymap=sg resolution=1280x800 - initrd /fedora/initrd.img - } - - menuentry "Fedora rawhide installer" { - search --set=root --label GRUB --hint hd0,msdos5 - linux /fedora/vmlinuz repo=ftp://mirror.switch.ch/mirror/fedora/linux/development/rawhide/x86_64 lang=en_US keymap=sg resolution=1280x800 - initrd /fedora/initrd.img - } - - menuentry "Debian sid installer" { - search --set=root --label GRUB --hint hd0,msdos5 - linux /debian/dists/sid/main/installer-amd64/current/images/hd-media/vmlinuz - initrd /debian/dists/sid/main/installer-amd64/current/images/hd-media/initrd.gz - } - - - Notes: - * Argument to search after -label is FS LABEL. You can also use UUIDs - with -fs-uuid UUID instead of -label LABEL. You could also use - direct 'root=hd0,msdosX' but this is not recommended due to device - name instability. - - -File: grub.info, Node: Embedded configuration, Prev: Multi-boot manual config, Up: Configuration - -6.5 Embedding a configuration file into GRUB -============================================ - -GRUB supports embedding a configuration file directly into the core -image, so that it is loaded before entering normal mode. This is -useful, for example, when it is not straightforward to find the real -configuration file, or when you need to debug problems with loading that -file. 'grub-install' uses this feature when it is not using BIOS disk -functions or when installing to a different disk from the one containing -'/boot/grub', in which case it needs to use the 'search' command (*note -search::) to find '/boot/grub'. - - To embed a configuration file, use the '-c' option to 'grub-mkimage'. -The file is copied into the core image, so it may reside anywhere on the -file system, and may be removed after running 'grub-mkimage'. - - After the embedded configuration file (if any) is executed, GRUB will -load the 'normal' module (*note normal::), which will then read the real -configuration file from '$prefix/grub.cfg'. By this point, the 'root' -variable will also have been set to the root device name. For example, -'prefix' might be set to '(hd0,1)/boot/grub', and 'root' might be set to -'hd0,1'. Thus, in most cases, the embedded configuration file only -needs to set the 'prefix' and 'root' variables, and then drop through to -GRUB's normal processing. A typical example of this might look like -this: - - search.fs_uuid 01234567-89ab-cdef-0123-456789abcdef root - set prefix=($root)/boot/grub - - (The 'search_fs_uuid' module must be included in the core image for -this example to work.) - - In more complex cases, it may be useful to read other configuration -files directly from the embedded configuration file. This allows such -things as reading files not called 'grub.cfg', or reading files from a -directory other than that where GRUB's loadable modules are installed. -To do this, include the 'configfile' and 'normal' modules in the core -image, and embed a configuration file that uses the 'configfile' command -to load another file. The following example of this also requires the -'echo', 'search_label', and 'test' modules to be included in the core -image: - - search.fs_label grub root - if [ -e /boot/grub/example/test1.cfg ]; then - set prefix=($root)/boot/grub - configfile /boot/grub/example/test1.cfg - else - if [ -e /boot/grub/example/test2.cfg ]; then - set prefix=($root)/boot/grub - configfile /boot/grub/example/test2.cfg - else - echo "Could not find an example configuration file!" - fi - fi - - The embedded configuration file may not contain menu entries -directly, but may only read them from elsewhere using 'configfile'. - - -File: grub.info, Node: Theme file format, Next: Network, Prev: Configuration, Up: Top - -7 Theme file format -******************* - -7.1 Introduction -================ - -The GRUB graphical menu supports themes that can customize the layout -and appearance of the GRUB boot menu. The theme is configured through a -plain text file that specifies the layout of the various GUI components -(including the boot menu, timeout progress bar, and text messages) as -well as the appearance using colors, fonts, and images. Example is -available in docs/example_theme.txt - -7.2 Theme Elements -================== - -7.2.1 Colors ------------- - -Colors can be specified in several ways: - - * HTML-style "#RRGGBB" or "#RGB" format, where *R*, *G*, and *B* are - hexadecimal digits (e.g., "#8899FF") - * as comma-separated decimal RGB values (e.g., "128, 128, 255") - * with "SVG 1.0 color names" (e.g., "cornflowerblue") which must be - specified in lowercase. - -7.2.2 Fonts ------------ - -The fonts GRUB uses "PFF2 font format" bitmap fonts. Fonts are -specified with full font names. Currently there is no provision for a -preference list of fonts, or deriving one font from another. Fonts are -loaded with the "loadfont" command in GRUB (*note loadfont::). To see -the list of loaded fonts, execute the "lsfonts" command (*note -lsfonts::). If there are too many fonts to fit on screen, do "set -pager=1" before executing "lsfonts". - -7.2.3 Progress Bar ------------------- - -Figure 7.1 - -Figure 7.2 - -Progress bars are used to display the remaining time before GRUB boots -the default menu entry. To create a progress bar that will display the -remaining time before automatic boot, simply create a "progress_bar" -component with the id "__timeout__". This indicates to GRUB that the -progress bar should be updated as time passes, and it should be made -invisible if the countdown to automatic boot is interrupted by the user. - - Progress bars may optionally have text displayed on them. This text -is controlled by variable "text" which contains a printf template with -the only argument %d is the number of seconds remaining. Additionally -special values "@TIMEOUT_NOTIFICATION_SHORT@", -"@TIMEOUT_NOTIFICATION_MIDDLE@", "@TIMEOUT_NOTIFICATION_LONG@" are -replaced with standard and translated templates. - -7.2.4 Circular Progress Indicator ---------------------------------- - -The circular progress indicator functions similarly to the progress bar. -When given an id of "__timeout__", GRUB updates the circular progress -indicator's value to indicate the time remaining. For the circular -progress indicator, there are two images used to render it: the *center* -image, and the *tick* image. The center image is rendered in the center -of the component, while the tick image is used to render each mark along -the circumference of the indicator. - -7.2.5 Labels ------------- - -Text labels can be placed on the boot screen. The font, color, and -horizontal alignment can be specified for labels. If a label is given -the id "__timeout__", then the "text" property for that label is also -updated with a message informing the user of the number of seconds -remaining until automatic boot. This is useful in case you want the -text displayed somewhere else instead of directly on the progress bar. - -7.2.6 Boot Menu ---------------- - -The boot menu where GRUB displays the menu entries from the "grub.cfg" -file. It is a list of items, where each item has a title and an -optional icon. The icon is selected based on the *classes* specified -for the menu entry. If there is a PNG file named "myclass.png" in the -"grub/themes/icons" directory, it will be displayed for items which have -the class *myclass*. The boot menu can be customized in several ways, -such as the font and color used for the menu entry title, and by -specifying styled boxes for the menu itself and for the selected item -highlight. - -7.2.7 Styled Boxes ------------------- - -One of the most important features for customizing the layout is the use -of *styled boxes*. A styled box is composed of 9 rectangular (and -potentially empty) regions, which are used to seamlessly draw the styled -box on screen: - -Northwest (nw) North (n) Northeast (ne) -West (w) Center (c) East (e) -Southwest (sw) South (s) Southeast (se) - - To support any size of box on screen, the center slice and the slices -for the top, bottom, and sides are all scaled to the correct size for -the component on screen, using the following rules: - - 1. The edge slices (north, south, east, and west) are scaled in the - direction of the edge they are adjacent to. For instance, the west - slice is scaled vertically. - 2. The corner slices (northwest, northeast, southeast, and southwest) - are not scaled. - 3. The center slice is scaled to fill the remaining space in the - middle. - - As an example of how an image might be sliced up, consider the styled -box used for a terminal view. - -Figure 7.3 - -7.2.8 Creating Styled Box Images --------------------------------- - -The Inkscape_ scalable vector graphics editor is a very useful tool for -creating styled box images. One process that works well for slicing a -drawing into the necessary image slices is: - - 1. Create or open the drawing you'd like use. - 2. Create a new layer on the top of the layer stack. Make it visible. - Select this layer as the current layer. - 3. Draw 9 rectangles on your drawing where you'd like the slices to - be. Clear the fill option, and set the stroke to 1 pixel wide - solid stroke. The corners of the slices must meet precisely; if it - is off by a single pixel, it will probably be evident when the - styled box is rendered in the GRUB menu. You should probably go to - File | Document Properties | Grids and enable a grid or create a - guide (click on one of the rulers next to the drawing and drag over - the drawing; release the mouse button to place the guide) to help - place the rectangles precisely. - 4. Right click on the center slice rectangle and choose Object - Properties. Change the "Id" to "slice_c" and click Set. Repeat - this for the remaining 8 rectangles, giving them Id values of - "slice_n", "slice_ne", "slice_e", and so on according to the - location. - 5. Save the drawing. - 6. Select all the slice rectangles. With the slice layer selected, - you can simply press Ctrl+A to select all rectangles. The status - bar should indicate that 9 rectangles are selected. - 7. Click the layer hide icon for the slice layer in the layer palette. - The rectangles will remain selected, even though they are hidden. - 8. Choose File | Export Bitmap and check the *Batch export 9 selected - objects* box. Make sure that *Hide all except selected* is - unchecked. click *Export*. This will create PNG files in the same - directory as the drawing, named after the slices. These can now be - used for a styled box in a GRUB theme. - -7.3 Theme File Manual -===================== - -The theme file is a plain text file. Lines that begin with "#" are -ignored and considered comments. (Note: This may not be the case if the -previous line ended where a value was expected.) - - The theme file contains two types of statements: - 1. Global properties. - 2. Component construction. - -7.3.1 Global Properties ------------------------ - -7.3.2 Format ------------- - -Global properties are specified with the simple format: - * name1: value1 - * name2: "value which may contain spaces" - * name3: #88F - - In this example, name3 is assigned a color value. - -7.3.3 Global Property List --------------------------- - -title-text Specifies the text to display at the top - center of the screen as a title. -title-font Defines the font used for the title - message at the top of the screen. -title-color Defines the color of the title message. -message-font Currently unused. Left for backward - compatibility. -message-color Currently unused. Left for backward - compatibility. -message-bg-color Currently unused. Left for backward - compatibility. -desktop-image Specifies the image to use as the - background. It will be scaled to fit the - screen size or proportionally scaled - depending on the scale method. -desktop-image-scale-methodSpecifies the scaling method for the - *desktop-image*. Options are "stretch", - "crop", "padding", "fitwidth", - "fitheight". "stretch" for fitting the - screen size. Otherwise it is - proportional scaling of a part of - *desktop-image* to the part of the - screen. "crop" part of the - *desktop-image* will be proportionally - scaled to fit the screen sizes. - "padding" the entire *desktop-image* will - be contained on the screen. "fitwidth" - for fitting the *desktop-image*'s width - with screen width. "fitheight" for - fitting the *desktop-image*'s height with - the screen height. Default is "stretch". -desktop-image-h-align Specifies the horizontal alignment of the - *desktop-image* if - *desktop-image-scale-method* isn't equeal - to "stretch". Options are "left", - "center", "right". Default is "center". -desktop-image-v-align Specifies the vertical alignment of the - *desktop-image* if - *desktop-image-scale-method* isn't equeal - to "stretch". Options are "top", - "center", "bottom". Default is "center". -desktop-color Specifies the color for the background if - *desktop-image* is not specified. -terminal-box Specifies the file name pattern for the - styled box slices used for the command - line terminal window. For example, - "terminal-box: terminal_*.png" will use - the images "terminal_c.png" as the center - area, "terminal_n.png" as the north (top) - edge, "terminal_nw.png" as the northwest - (upper left) corner, and so on. If the - image for any slice is not found, it will - simply be left empty. -terminal-border Specifies the border width of the - terminal window. -terminal-left Specifies the left coordinate of the - terminal window. -terminal-top Specifies the top coordinate of the - terminal window. -terminal-width Specifies the width of the terminal - window. -terminal-height Specifies the height of the terminal - window. - -7.3.4 Component Construction ----------------------------- - -Greater customizability comes is provided by components. A tree of -components forms the user interface. *Containers* are components that -can contain other components, and there is always a single root -component which is an instance of a *canvas* container. - - Components are created in the theme file by prefixing the type of -component with a '+' sign: - - ' + label { text="GRUB" font="aqui 11" color="#8FF" } ' - - properties of a component are specified as "name = value" (whitespace -surrounding tokens is optional and is ignored) where *value* may be: - * a single word (e.g., "align = center", "color = #FF8080"), - * a quoted string (e.g., "text = "Hello, World!""), or - * a tuple (e.g., "preferred_size = (120, 80)"). - -7.3.5 Component List --------------------- - -The following is a list of the components and the properties they -support. - - * label A label displays a line of text. - - Properties: - id Set to "__timeout__" to display the time elapsed - to an automatical boot of the default entry. - text The text to display. If "id" is set to - "__timeout__" and no "text" property is set then - the amount of seconds will be shown. If set to - "@KEYMAP_SHORT@", "@KEYMAP_MIDDLE@" or - "@KEYMAP_LONG@" then predefined hotkey - information will be shown. - font The font to use for text display. - color The color of the text. - align The horizontal alignment of the text within the - component. Options are "left", "center" and - "right". - visible Set to "false" to hide the label. - - * image A component that displays an image. The image is scaled to - fit the component. - - Properties: - - file The full path to the image file to load. - - * progress_bar Displays a horizontally oriented progress bar. It can - be rendered using simple solid filled rectangles, or using a pair - of pixmap styled boxes. - - Properties: - - id Set to "__timeout__" to display the time elapsed - to an automatical boot of the default entry. - fg_color The foreground color for plain solid color - rendering. - bg_color The background color for plain solid color - rendering. - border_color The border color for plain solid color - rendering. - text_color The text color. - bar_style The styled box specification for the frame of - the progress bar. Example: - "progress_frame_*.png" If the value is equal to - "highlight_style" then no styled boxes will be - shown. - highlight_styleThe styled box specification for the highlighted - region of the progress bar. This box will be - used to paint just the highlighted region of the - bar, and will be increased in size as the bar - nears completion. Example: "progress_hl_*.png". - If the value is equal to "bar_style" then no - styled boxes will be shown. - highlight_overlayIf this option is set to "true" then the - highlight box side slices (every slice except - the center slice) will overlay the frame box - side slices. And the center slice of the - highlight box can move all the way (from top to - bottom), being drawn on the center slice of the - frame box. That way we can make a progress bar - with round-shaped edges so there won't be a free - space from the highlight to the frame in top and - bottom scrollbar positions. Default is "false". - font The font to use for progress bar. - text The text to display on the progress bar. If the - progress bar's ID is set to "__timeout__" and - the value of this property is set to - "@TIMEOUT_NOTIFICATION_SHORT@", - "@TIMEOUT_NOTIFICATION_MIDDLE@" or - "@TIMEOUT_NOTIFICATION_LONG@", then GRUB will - update this property with an informative message - as the timeout approaches. - - * circular_progress Displays a circular progress indicator. The - appearance of this component is determined by two images: the - *center* image and the *tick* image. The center image is generally - larger and will be drawn in the center of the component. Around - the circumference of a circle within the component, the tick image - will be drawn a certain number of times, depending on the - properties of the component. - - Properties: - - id Set to "__timeout__" to display the time - elapsed to an automatical boot of the - default entry. - center_bitmap The file name of the image to draw in the - center of the component. - tick_bitmap The file name of the image to draw for - the tick marks. - num_ticks The number of ticks that make up a full - circle. - ticks_disappear Boolean value indicating whether tick - marks should progressively appear, or - progressively disappear as *value* - approaches *end*. Specify "true" or - "false". Default is "false". - start_angle The position of the first tick mark to - appear or disappear. Measured in - "parrots", 1 "parrot" = 1 / 256 of the - full circle. Use values "xxx deg" or - "xxx \xc2\xb0" to set the angle in - degrees. - - * boot_menu Displays the GRUB boot menu. It allows selecting items - and executing them. - - Properties: - - item_font The font to use for the menu item - titles. - selected_item_font The font to use for the selected - menu item, or "inherit" (the - default) to use "item_font" for - the selected menu item as well. - item_color The color to use for the menu item - titles. - selected_item_color The color to use for the selected - menu item, or "inherit" (the - default) to use "item_color" for - the selected menu item as well. - icon_width The width of menu item icons. - Icons are scaled to the specified - size. - icon_height The height of menu item icons. - item_height The height of each menu item in - pixels. - item_padding The amount of space in pixels to - leave on each side of the menu - item contents. - item_icon_space The space between an item's icon - and the title text, in pixels. - item_spacing The amount of space to leave - between menu items, in pixels. - menu_pixmap_style The image file pattern for the - menu frame styled box. Example: - "menu_*.png" (this will use images - such as "menu_c.png", - "menu_w.png", 'menu_nw.png", etc.) - item_pixmap_style The image file pattern for the - item styled box. - selected_item_pixmap_style The image file pattern for the - selected item highlight styled - box. - scrollbar Boolean value indicating whether - the scroll bar should be drawn if - the frame and thumb styled boxes - are configured. - scrollbar_frame The image file pattern for the - entire scroll bar. Example: - "scrollbar_*.png" - scrollbar_thumb The image file pattern for the - scroll bar thumb (the part of the - scroll bar that moves as scrolling - occurs). Example: - "scrollbar_thumb_*.png" - scrollbar_thumb_overlay If this option is set to "true" - then the scrollbar thumb side - slices (every slice except the - center slice) will overlay the - scrollbar frame side slices. And - the center slice of the - scrollbar_thumb can move all the - way (from top to bottom), being - drawn on the center slice of the - scrollbar frame. That way we can - make a scrollbar with round-shaped - edges so there won't be a free - space from the thumb to the frame - in top and bottom scrollbar - positions. Default is "false". - scrollbar_slice The menu frame styled box's slice - in which the scrollbar will be - drawn. Possible values are - "west", "center", "east" - (default). "west" - the scrollbar - will be drawn in the west slice - (right-aligned). "east" - the - scrollbar will be drawn in the - east slice (left-aligned). - "center" - the scrollbar will be - drawn in the center slice. Note: - in case of "center" slice: a) If - the scrollbar should be drawn then - boot menu entry's width is - decreased by the scrollbar's width - and the scrollbar is drawn at the - right side of the center slice. - b) If the scrollbar won't be drawn - then the boot menu entry's width - is the width of the center slice. - c) We don't necessary need the - menu pixmap box to display the - scrollbar. - scrollbar_left_pad The left scrollbar padding in - pixels. Unused if - "scrollbar_slice" is "west". - scrollbar_right_pad The right scrollbar padding in - pixels. Unused if - "scrollbar_slice" is "east". - scrollbar_top_pad The top scrollbar padding in - pixels. - scrollbar_bottom_pad The bottom scrollbar padding in - pixels. - visible Set to "false" to hide the boot - menu. - - * canvas Canvas is a container that allows manual placement of - components within it. It does not alter the positions of its child - components. It assigns all child components their preferred sizes. - - * hbox The *hbox* container lays out its children from left to right, - giving each one its preferred width. The height of each child is - set to the maximum of the preferred heights of all children. - - * vbox The *vbox* container lays out its children from top to bottom, - giving each one its preferred height. The width of each child is - set to the maximum of the preferred widths of all children. - -7.3.6 Common properties ------------------------ - -The following properties are supported by all components: -'left' - The distance from the left border of container to left border of - the object in either of three formats: - x Value in pixels - p% Percentage - p%+x mixture of both -'top' - The distance from the left border of container to left border of - the object in same format. -'width' - The width of object in same format. -'height' - The height of object in same format. -'id' - The identifier for the component. This can be any arbitrary - string. The ID can be used by scripts to refer to various - components in the GUI component tree. Currently, there is one - special ID value that GRUB recognizes: - - "__timeout__" Component with this ID will be updated by GRUB - and will indicate time elapsed to an automatical - boot of the default entry. Affected components: - "label", "circular_progress", "progress_bar". - - -File: grub.info, Node: Network, Next: Serial terminal, Prev: Theme file format, Up: Top - -8 Booting GRUB from the network -******************************* - -The following instructions don't work for *-emu, i386-qemu, -i386-coreboot, i386-multiboot, mips_loongson, mips-arc and -mips_qemu_mips - - To generate a netbootable directory, run: - - grub-mknetdir --net-directory=/srv/tftp --subdir=/boot/grub -d /usr/lib/grub/ - - E.g. for i386-pc: - - grub-mknetdir --net-directory=/srv/tftp --subdir=/boot/grub -d /usr/lib/grub/i386-pc - - Then follow instructions printed out by grub-mknetdir on configuring -your DHCP server. - - After GRUB has started, files on the TFTP server will be accessible -via the '(tftp)' device. - - The server IP address can be controlled by changing the '(tftp)' -device name to '(tftp,SERVER-IP)'. Note that this should be changed -both in the prefix and in any references to the device name in the -configuration file. - - GRUB provides several environment variables which may be used to -inspect or change the behaviour of the PXE device. In the following -description is placeholder for the name of network interface -(platform dependent): - -'net__ip' - The network interface's IP address. Read-only. - -'net__mac' - The network interface's MAC address. Read-only. - -'net__hostname' - The client host name provided by DHCP. Read-only. - -'net__domain' - The client domain name provided by DHCP. Read-only. - -'net__rootpath' - The path to the client's root disk provided by DHCP. Read-only. - -'net__extensionspath' - The path to additional DHCP vendor extensions provided by DHCP. - Read-only. - -'net__boot_file' - The boot file name provided by DHCP. Read-only. - -'net__dhcp_server_name' - The name of the DHCP server responsible for these boot parameters. - Read-only. - -'net__next_server' - The IP address of the next (usually, TFTP) server provided by DHCP. - Read-only. - -'net_default_interface' - Initially set to name of network interface that was used to load - grub. Read-write, although setting it affects only interpretation - of 'net_default_ip' and 'net_default_mac' - -'net_default_ip' - The IP address of default interface. Read-only. This is alias for - the 'net_${net_default_interface}_ip'. - -'net_default_mac' - The default interface's MAC address. Read-only. This is alias for - the 'net_${net_default_interface}_mac'. - -'net_default_server' - The default server used by network drives (*note Device syntax::). - Read-write, although setting this is only useful before opening a - network device. - - -File: grub.info, Node: Serial terminal, Next: Vendor power-on keys, Prev: Network, Up: Top - -9 Using GRUB via a serial line -****************************** - -This chapter describes how to use the serial terminal support in GRUB. - - If you have many computers or computers with no display/keyboard, it -could be very useful to control the computers through serial -communications. To connect one computer with another via a serial line, -you need to prepare a null-modem (cross) serial cable, and you may need -to have multiport serial boards, if your computer doesn't have extra -serial ports. In addition, a terminal emulator is also required, such -as minicom. Refer to a manual of your operating system, for more -information. - - As for GRUB, the instruction to set up a serial terminal is quite -simple. Here is an example: - - grub> serial --unit=0 --speed=9600 - grub> terminal_input serial; terminal_output serial - - The command 'serial' initializes the serial unit 0 with the speed -9600bps. The serial unit 0 is usually called 'COM1', so, if you want to -use COM2, you must specify '--unit=1' instead. This command accepts -many other options, so please refer to *note serial::, for more details. - - The commands 'terminal_input' (*note terminal_input::) and -'terminal_output' (*note terminal_output::) choose which type of -terminal you want to use. In the case above, the terminal will be a -serial terminal, but you can also pass 'console' to the command, as -'terminal_input serial console'. In this case, a terminal in which you -press any key will be selected as a GRUB terminal. In the example -above, note that you need to put both commands on the same command line, -as you will lose the ability to type commands on the console after the -first command. - - However, note that GRUB assumes that your terminal emulator is -compatible with VT100 by default. This is true for most terminal -emulators nowadays, but you should pass the option '--dumb' to the -command if your terminal emulator is not VT100-compatible or implements -few VT100 escape sequences. If you specify this option then GRUB -provides you with an alternative menu interface, because the normal menu -requires several fancy features of your terminal. - - -File: grub.info, Node: Vendor power-on keys, Next: Images, Prev: Serial terminal, Up: Top - -10 Using GRUB with vendor power-on keys -*************************************** - -Some laptop vendors provide an additional power-on button which boots -another OS. GRUB supports such buttons with the 'GRUB_TIMEOUT_BUTTON', -'GRUB_TIMEOUT_STYLE_BUTTON', 'GRUB_DEFAULT_BUTTON', and -'GRUB_BUTTON_CMOS_ADDRESS' variables in default/grub (*note Simple -configuration::). 'GRUB_TIMEOUT_BUTTON', 'GRUB_TIMEOUT_STYLE_BUTTON', -and 'GRUB_DEFAULT_BUTTON' are used instead of the corresponding -variables without the '_BUTTON' suffix when powered on using the special -button. 'GRUB_BUTTON_CMOS_ADDRESS' is vendor-specific and partially -model-specific. Values known to the GRUB team are: - - - 121:3 - - 85:3 - - 85:3 - - 84:1 (unconfirmed) - - 101:3 - - To take full advantage of this function, install GRUB into the MBR -(*note Installing GRUB using grub-install::). - - If you have a laptop which has a similar feature and not in the above -list could you figure your address and contribute? To discover the -address do the following: - * boot normally - * sudo modprobe nvram - sudo cat /dev/nvram | xxd > normal_button.txt - * boot using vendor button - * sudo modprobe nvram - sudo cat /dev/nvram | xxd > normal_vendor.txt - - Then compare these text files and find where a bit was toggled. E.g. -in case of Dell XPS it was: - byte 0x47: 20 --> 28 - It's a bit number 3 as seen from following table: -0 01 -1 02 -2 04 -3 08 -4 10 -5 20 -6 40 -7 80 - - 0x47 is decimal 71. Linux nvram implementation cuts first 14 bytes -of CMOS. So the real byte address in CMOS is 71+14=85 So complete -address is 85:3 - - -File: grub.info, Node: Images, Next: Core image size limitation, Prev: Vendor power-on keys, Up: Top - -11 GRUB image files -******************* - -GRUB consists of several images: a variety of bootstrap images for -starting GRUB in various ways, a kernel image, and a set of modules -which are combined with the kernel image to form a core image. Here is -a short overview of them. - -'boot.img' - On PC BIOS systems, this image is the first part of GRUB to start. - It is written to a master boot record (MBR) or to the boot sector - of a partition. Because a PC boot sector is 512 bytes, the size of - this image is exactly 512 bytes. - - The sole function of 'boot.img' is to read the first sector of the - core image from a local disk and jump to it. Because of the size - restriction, 'boot.img' cannot understand any file system - structure, so 'grub-install' hardcodes the location of the first - sector of the core image into 'boot.img' when installing GRUB. - -'diskboot.img' - This image is used as the first sector of the core image when - booting from a hard disk. It reads the rest of the core image into - memory and starts the kernel. Since file system handling is not - yet available, it encodes the location of the core image using a - block list format. - -'cdboot.img' - This image is used as the first sector of the core image when - booting from a CD-ROM drive. It performs a similar function to - 'diskboot.img'. - -'pxeboot.img' - This image is used as the start of the core image when booting from - the network using PXE. *Note Network::. - -'lnxboot.img' - This image may be placed at the start of the core image in order to - make GRUB look enough like a Linux kernel that it can be booted by - LILO using an 'image=' section. - -'kernel.img' - This image contains GRUB's basic run-time facilities: frameworks - for device and file handling, environment variables, the rescue - mode command-line parser, and so on. It is rarely used directly, - but is built into all core images. - -'core.img' - This is the core image of GRUB. It is built dynamically from the - kernel image and an arbitrary list of modules by the 'grub-mkimage' - program. Usually, it contains enough modules to access - '/boot/grub', and loads everything else (including menu handling, - the ability to load target operating systems, and so on) from the - file system at run-time. The modular design allows the core image - to be kept small, since the areas of disk where it must be - installed are often as small as 32KB. - - *Note BIOS installation::, for details on where the core image can - be installed on PC systems. - -'*.mod' - Everything else in GRUB resides in dynamically loadable modules. - These are often loaded automatically, or built into the core image - if they are essential, but may also be loaded manually using the - 'insmod' command (*note insmod::). - -For GRUB Legacy users -===================== - -GRUB 2 has a different design from GRUB Legacy, and so correspondences -with the images it used cannot be exact. Nevertheless, GRUB Legacy -users often ask questions in the terms they are familiar with, and so -here is a brief guide to how GRUB 2's images relate to that. - -'stage1' - Stage 1 from GRUB Legacy was very similar to 'boot.img' in GRUB 2, - and they serve the same function. - -'*_stage1_5' - In GRUB Legacy, Stage 1.5's function was to include enough - filesystem code to allow the much larger Stage 2 to be read from an - ordinary filesystem. In this respect, its function was similar to - 'core.img' in GRUB 2. However, 'core.img' is much more capable - than Stage 1.5 was; since it offers a rescue shell, it is sometimes - possible to recover manually in the event that it is unable to load - any other modules, for example if partition numbers have changed. - 'core.img' is built in a more flexible way, allowing GRUB 2 to - support reading modules from advanced disk types such as LVM and - RAID. - - GRUB Legacy could run with only Stage 1 and Stage 2 in some limited - configurations, while GRUB 2 requires 'core.img' and cannot work - without it. - -'stage2' - GRUB 2 has no single Stage 2 image. Instead, it loads modules from - '/boot/grub' at run-time. - -'stage2_eltorito' - In GRUB 2, images for booting from CD-ROM drives are now - constructed using 'cdboot.img' and 'core.img', making sure that the - core image contains the 'iso9660' module. It is usually best to - use the 'grub-mkrescue' program for this. - -'nbgrub' - There is as yet no equivalent for 'nbgrub' in GRUB 2; it was used - by Etherboot and some other network boot loaders. - -'pxegrub' - In GRUB 2, images for PXE network booting are now constructed using - 'pxeboot.img' and 'core.img', making sure that the core image - contains the 'pxe' and 'pxecmd' modules. *Note Network::. - - -File: grub.info, Node: Core image size limitation, Next: Filesystem, Prev: Images, Up: Top - -12 Core image size limitation -***************************** - -Heavily limited platforms: - * i386-pc (normal and PXE): the core image size (compressed) is - limited by 458240 bytes. kernel.img (.text + .data + .bss, - uncompressed) is limited by 392704 bytes. module size - (uncompressed) + kernel.img (.text + .data, uncompressed) is - limited by the size of contiguous chunk at 1M address. - * sparc64-ieee1275: kernel.img (.text + .data + .bss) + modules + - 256K (stack) + 2M (heap) is limited by space available at 0x4400. - On most platforms it's just 3 or 4M since ieee1275 maps only so - much. - * i386-ieee1275: kernel.img (.text + .data + .bss) + modules is - limited by memory available at 0x10000, at most 596K - - Lightly limited platforms: - - * *-xen: limited only by adress space and RAM size. - * i386-qemu: kernel.img (.text + .data + .bss) is limited by 392704 - bytes. (core.img would be limited by ROM size but it's unlimited - on qemu - * All EFI platforms: limited by contiguous RAM size and possibly - firmware bugs - * Coreboot and multiboot. kernel.img (.text + .data + .bss) is - limited by 392704 bytes. module size is limited by the size of - contiguous chunk at 1M address. - * mipsel-loongson (ELF), mips(el)-qemu_mips (ELF): if uncompressed: - kernel.img (.text + .data) + modules is limited by the space from - 80200000 forward if compressed: kernel.img (.text + .data, - uncompressed) + modules (uncompressed) + (modules + kernel.img - (.text + .data)) (compressed) + decompressor is limited by the - space from 80200000 forward - * mipsel-loongson (Flash), mips(el)-qemu_mips (Flash): kernel.img - (.text + .data) + modules is limited by the space from 80200000 - forward core.img (final) is limited by flash size (512K on yeeloong - and fulooong) - * mips-arc: if uncompressed: kernel.img (.text + .data) is limited by - the space from 8bd00000 forward modules + dummy decompressor is - limited by the space from 8bd00000 backward if compressed: - kernel.img (.text + .data, uncompressed) is limited by the space - from 8bd00000 forward modules (uncompressed) + (modules + - kernel.img (.text + .data)) (compressed, aligned to 1M) + 1M - (decompressor + scratch space) is limited by the space from - 8bd00000 backward - * powerpc-ieee1275: kernel.img (.text + .data + .bss) + modules is - limited by space available at 0x200000 - - -File: grub.info, Node: Filesystem, Next: Interface, Prev: Core image size limitation, Up: Top - -13 Filesystem syntax and semantics -********************************** - -GRUB uses a special syntax for specifying disk drives which can be -accessed by BIOS. Because of BIOS limitations, GRUB cannot distinguish -between IDE, ESDI, SCSI, or others. You must know yourself which BIOS -device is equivalent to which OS device. Normally, that will be clear -if you see the files in a device or use the command 'search' (*note -search::). - -* Menu: - -* Device syntax:: How to specify devices -* File name syntax:: How to specify files -* Block list syntax:: How to specify block lists - - -File: grub.info, Node: Device syntax, Next: File name syntax, Up: Filesystem - -13.1 How to specify devices -=========================== - -The device syntax is like this: - - (DEVICE[,PARTMAP-NAME1PART-NUM1[,PARTMAP-NAME2PART-NUM2[,...]]]) - - '[]' means the parameter is optional. DEVICE depends on the disk -driver in use. BIOS and EFI disks use either 'fd' or 'hd' followed by a -digit, like 'fd0', or 'cd'. AHCI, PATA (ata), crypto, USB use the name -of driver followed by a number. Memdisk and host are limited to one -disk and so it's refered just by driver name. RAID (md), ofdisk -(ieee1275 and nand), LVM (lvm), LDM, virtio (vdsk) and arcdisk (arc) use -intrinsic name of disk prefixed by driver name. Additionally just -"nand" refers to the disk aliased as "nand". Conflicts are solved by -suffixing a number if necessarry. Commas need to be escaped. Loopback -uses whatever name specified to 'loopback' command. Hostdisk uses names -specified in device.map as long as it's of the form [fhc]d[0-9]* or -hostdisk/. For crypto and RAID (md) additionally you can use -the syntax uuid/. For LVM additionally you can use -the syntax lvmid//. - - (fd0) - (hd0) - (cd) - (ahci0) - (ata0) - (crypto0) - (usb0) - (cryptouuid/123456789abcdef0123456789abcdef0) - (mduuid/123456789abcdef0123456789abcdef0) - (lvm/system-root) - (lvmid/F1ikgD-2RES-306G-il9M-7iwa-4NKW-EbV1NV/eLGuCQ-L4Ka-XUgR-sjtJ-ffch-bajr-fCNfz5) - (md/myraid) - (md/0) - (ieee1275/disk2) - (ieee1275//pci@1f\,0/ide@d/disk@2) - (nand) - (memdisk) - (host) - (myloop) - (hostdisk//dev/sda) - - PART-NUM represents the partition number of DEVICE, starting from -one. PARTNAME is optional but is recommended since disk may have -several top-level partmaps. Specifying third and later component you -can access to subpartitions. - - The syntax '(hd0)' represents using the entire disk (or the MBR when -installing GRUB), while the syntax '(hd0,1)' represents using the first -partition of the disk (or the boot sector of the partition when -installing GRUB). - - (hd0,msdos1) - (hd0,msdos1,msdos5) - (hd0,msdos1,bsd3) - (hd0,netbsd1) - (hd0,gpt1) - (hd0,1,3) - - If you enabled the network support, the special drives -'(PROTOCOL[,SERVER])' are also available. Supported protocols are -'http' and 'tftp'. If SERVER is omitted, value of environment variable -'net_default_server' is used. Before using the network drive, you must -initialize the network. *Note Network::, for more information. - - If you boot GRUB from a CD-ROM, '(cd)' is available. *Note Making a -GRUB bootable CD-ROM::, for details. - - -File: grub.info, Node: File name syntax, Next: Block list syntax, Prev: Device syntax, Up: Filesystem - -13.2 How to specify files -========================= - -There are two ways to specify files, by "absolute file name" and by -"block list". - - An absolute file name resembles a Unix absolute file name, using '/' -for the directory separator (not '\' as in DOS). One example is -'(hd0,1)/boot/grub/grub.cfg'. This means the file '/boot/grub/grub.cfg' -in the first partition of the first hard disk. If you omit the device -name in an absolute file name, GRUB uses GRUB's "root device" -implicitly. So if you set the root device to, say, '(hd1,1)' by the -command 'set root=(hd1,1)' (*note set::), then '/boot/kernel' is the -same as '(hd1,1)/boot/kernel'. - - On ZFS filesystem the first path component must be -VOLUME'@'[SNAPSHOT]. So '/rootvol@snap-129/boot/grub/grub.cfg' refers -to file '/boot/grub/grub.cfg' in snapshot of volume 'rootvol' with name -'snap-129'. Trailing '@' after volume name is mandatory even if -snapshot name is omitted. - - -File: grub.info, Node: Block list syntax, Prev: File name syntax, Up: Filesystem - -13.3 How to specify block lists -=============================== - -A block list is used for specifying a file that doesn't appear in the -filesystem, like a chainloader. The syntax is -'[OFFSET]+LENGTH[,[OFFSET]+LENGTH]...'. Here is an example: - - 0+100,200+1,300+300 - - This represents that GRUB should read blocks 0 through 99, block 200, -and blocks 300 through 599. If you omit an offset, then GRUB assumes -the offset is zero. - - Like the file name syntax (*note File name syntax::), if a blocklist -does not contain a device name, then GRUB uses GRUB's "root device". So -'(hd0,2)+1' is the same as '+1' when the root device is '(hd0,2)'. - - -File: grub.info, Node: Interface, Next: Environment, Prev: Filesystem, Up: Top - -14 GRUB's user interface -************************ - -GRUB has both a simple menu interface for choosing preset entries from a -configuration file, and a highly flexible command-line for performing -any desired combination of boot commands. - - GRUB looks for its configuration file as soon as it is loaded. If -one is found, then the full menu interface is activated using whatever -entries were found in the file. If you choose the "command-line" menu -option, or if the configuration file was not found, then GRUB drops to -the command-line interface. - -* Menu: - -* Command-line interface:: The flexible command-line interface -* Menu interface:: The simple menu interface -* Menu entry editor:: Editing a menu entry - - -File: grub.info, Node: Command-line interface, Next: Menu interface, Up: Interface - -14.1 The flexible command-line interface -======================================== - -The command-line interface provides a prompt and after it an editable -text area much like a command-line in Unix or DOS. Each command is -immediately executed after it is entered(1) (*note Command-line -interface-Footnote-1::). The commands (*note Command-line and menu -entry commands::) are a subset of those available in the configuration -file, used with exactly the same syntax. - - Cursor movement and editing of the text on the line can be done via a -subset of the functions available in the Bash shell: - - - - Move forward one character. - - - - Move back one character. - - - - Move to the start of the line. - - - - Move the the end of the line. - - - - Delete the character underneath the cursor. - - - - Delete the character to the left of the cursor. - - - Kill the text from the current cursor position to the end of the - line. - - - Kill backward from the cursor to the beginning of the line. - - - Yank the killed text back into the buffer at the cursor. - - - - Move up through the history list. - - - - Move down through the history list. - - When typing commands interactively, if the cursor is within or before -the first word in the command-line, pressing the key (or ) -will display a listing of the available commands, and if the cursor is -after the first word, the '' will provide a completion listing of -disks, partitions, and file names depending on the context. Note that -to obtain a list of drives, one must open a parenthesis, as 'root ('. - - Note that you cannot use the completion functionality in the TFTP -filesystem. This is because TFTP doesn't support file name listing for -the security. - - -File: grub.info, Node: Command-line interface-Footnotes, Up: Command-line interface - - (1) However, this behavior will be changed in the future version, in -a user-invisible way. - - -File: grub.info, Node: Menu interface, Next: Menu entry editor, Prev: Command-line interface, Up: Interface - -14.2 The simple menu interface -============================== - -The menu interface is quite easy to use. Its commands are both -reasonably intuitive and described on screen. - - Basically, the menu interface provides a list of "boot entries" to -the user to choose from. Use the arrow keys to select the entry of -choice, then press to run it. An optional timeout is available to -boot the default entry (the first one if not set), which is aborted by -pressing any key. - - Commands are available to enter a bare command-line by pressing -(which operates exactly like the non-config-file version of GRUB, but -allows one to return to the menu if desired by pressing ) or to -edit any of the "boot entries" by pressing . - - If you protect the menu interface with a password (*note Security::), -all you can do is choose an entry by pressing , or press

to -enter the password. - - -File: grub.info, Node: Menu entry editor, Prev: Menu interface, Up: Interface - -14.3 Editing a menu entry -========================= - -The menu entry editor looks much like the main menu interface, but the -lines in the menu are individual commands in the selected entry instead -of entry names. - - If an is pressed in the editor, it aborts all the changes made -to the configuration entry and returns to the main menu interface. - - Each line in the menu entry can be edited freely, and you can add new -lines by pressing at the end of a line. To boot the edited entry, -press . - - Although GRUB unfortunately does not support "undo", you can do -almost the same thing by just returning to the main menu using . - - -File: grub.info, Node: Environment, Next: Commands, Prev: Interface, Up: Top - -15 GRUB environment variables -***************************** - -GRUB supports environment variables which are rather like those offered -by all Unix-like systems. Environment variables have a name, which is -unique and is usually a short identifier, and a value, which is an -arbitrary string of characters. They may be set (*note set::), unset -(*note unset::), or looked up (*note Shell-like scripting::) by name. - - A number of environment variables have special meanings to various -parts of GRUB. Others may be used freely in GRUB configuration files. - -* Menu: - -* Special environment variables:: -* Environment block:: - - -File: grub.info, Node: Special environment variables, Next: Environment block, Up: Environment - -15.1 Special environment variables -================================== - -These variables have special meaning to GRUB. - -* Menu: - -* biosnum:: -* check_signatures:: -* chosen:: -* cmdpath:: -* color_highlight:: -* color_normal:: -* config_directory:: -* config_file:: -* debug:: -* default:: -* fallback:: -* gfxmode:: -* gfxpayload:: -* gfxterm_font:: -* grub_cpu:: -* grub_platform:: -* icondir:: -* lang:: -* locale_dir:: -* menu_color_highlight:: -* menu_color_normal:: -* net__boot_file:: -* net__dhcp_server_name:: -* net__domain:: -* net__extensionspath:: -* net__hostname:: -* net__ip:: -* net__mac:: -* net__next_server:: -* net__rootpath:: -* net_default_interface:: -* net_default_ip:: -* net_default_mac:: -* net_default_server:: -* pager:: -* prefix:: -* pxe_blksize:: -* pxe_default_gateway:: -* pxe_default_server:: -* root:: -* superusers:: -* theme:: -* timeout:: -* timeout_style:: - - -File: grub.info, Node: biosnum, Next: check_signatures, Up: Special environment variables - -15.1.1 biosnum --------------- - -When chain-loading another boot loader (*note Chain-loading::), GRUB may -need to know what BIOS drive number corresponds to the root device -(*note root::) so that it can set up registers properly. If the BIOSNUM -variable is set, it overrides GRUB's own means of guessing this. - - For an alternative approach which also changes BIOS drive mappings -for the chain-loaded system, *note drivemap::. - - -File: grub.info, Node: check_signatures, Next: chosen, Prev: biosnum, Up: Special environment variables - -15.1.2 check_signatures ------------------------ - -This variable controls whether GRUB enforces digital signature -validation on loaded files. *Note Using digital signatures::. - - -File: grub.info, Node: chosen, Next: cmdpath, Prev: check_signatures, Up: Special environment variables - -15.1.3 chosen -------------- - -When executing a menu entry, GRUB sets the CHOSEN variable to the title -of the entry being executed. - - If the menu entry is in one or more submenus, then CHOSEN is set to -the titles of each of the submenus starting from the top level followed -by the title of the menu entry itself, separated by '>'. - - -File: grub.info, Node: cmdpath, Next: color_highlight, Prev: chosen, Up: Special environment variables - -15.1.4 cmdpath --------------- - -The location from which 'core.img' was loaded as an absolute directory -name (*note File name syntax::). This is set by GRUB at startup based -on information returned by platform firmware. Not every platform -provides this information and some may return only device without path -name. - - -File: grub.info, Node: color_highlight, Next: color_normal, Prev: cmdpath, Up: Special environment variables - -15.1.5 color_highlight ----------------------- - -This variable contains the "highlight" foreground and background -terminal colors, separated by a slash ('/'). Setting this variable -changes those colors. For the available color names, *note -color_normal::. - - The default is 'black/light-gray'. - - -File: grub.info, Node: color_normal, Next: config_directory, Prev: color_highlight, Up: Special environment variables - -15.1.6 color_normal -------------------- - -This variable contains the "normal" foreground and background terminal -colors, separated by a slash ('/'). Setting this variable changes those -colors. Each color must be a name from the following list: - - * black - * blue - * green - * cyan - * red - * magenta - * brown - * light-gray - * dark-gray - * light-blue - * light-green - * light-cyan - * light-red - * light-magenta - * yellow - * white - - The default is 'light-gray/black'. - - The color support support varies from terminal to terminal. - - 'morse' has no color support at all. - - 'mda_text' color support is limited to highlighting by black/white -reversal. - - 'console' on ARC, EMU and IEEE1275, 'serial_*' and 'spkmodem' are -governed by terminfo and support only 8 colors if in modes 'vt100-color' -(default for console on emu), 'arc' (default for console on ARC), -'ieee1275' (default for console on IEEE1275). When in mode 'vt100' then -the color support is limited to highlighting by black/white reversal. -When in mode 'dumb' there is no color support. - - When console supports no colors this setting is ignored. When -console supports 8 colors, then the colors from the second half of the -previous list are mapped to the matching colors of first half. - - 'console' on EFI and BIOS and 'vga_text' support all 16 colors. - - 'gfxterm' supports all 16 colors and would be theoretically -extendable to support whole rgb24 palette but currently there is no -compelling reason to go beyond the current 16 colors. - - -File: grub.info, Node: config_directory, Next: config_file, Prev: color_normal, Up: Special environment variables - -15.1.7 config_directory ------------------------ - -This variable is automatically set by GRUB to the directory part of -current configuration file name (*note config_file::). - - -File: grub.info, Node: config_file, Next: debug, Prev: config_directory, Up: Special environment variables - -15.1.8 config_file ------------------- - -This variable is automatically set by GRUB to the name of configuration -file that is being processed by commands 'configfile' (*note -configfile::) or 'normal' (*note normal::). It is restored to the -previous value when command completes. - - -File: grub.info, Node: debug, Next: default, Prev: config_file, Up: Special environment variables - -15.1.9 debug ------------- - -This variable may be set to enable debugging output from various -components of GRUB. The value is a list of debug facility names -separated by whitespace or ',', or 'all' to enable all available -debugging output. The facility names are the first argument to -grub_dprintf. Consult source for more details. - - -File: grub.info, Node: default, Next: fallback, Prev: debug, Up: Special environment variables - -15.1.10 default ---------------- - -If this variable is set, it identifies a menu entry that should be -selected by default, possibly after a timeout (*note timeout::). The -entry may be identified by number (starting from 0 at each level of the -hierarchy), by title, or by id. - - For example, if you have: - -menuentry 'Example GNU/Linux distribution' --class gnu-linux --id example-gnu-linux { - ... -} - - then you can make this the default using: - - default=example-gnu-linux - - If the entry is in a submenu, then it must be identified using the -number, title, or id of each of the submenus starting from the top -level, followed by the number, title, or id of the menu entry itself, -with each element separated by '>'. For example, take the following -menu structure: - - GNU/Hurd --id gnu-hurd - Standard Boot --id=gnu-hurd-std - Rescue shell --id=gnu-hurd-rescue - Other platforms --id=other - Minix --id=minix - Version 3.4.0 --id=minix-3.4.0 - Version 3.3.0 --id=minix-3.3.0 - GRUB Invaders --id=grub-invaders - - The more recent release of Minix would then be identified as 'Other -platforms>Minix>Version 3.4.0', or as '1>0>0', or as -'other>minix>minix-3.4.0'. - - This variable is often set by 'GRUB_DEFAULT' (*note Simple -configuration::), 'grub-set-default', or 'grub-reboot'. - - -File: grub.info, Node: fallback, Next: gfxmode, Prev: default, Up: Special environment variables - -15.1.11 fallback ----------------- - -If this variable is set, it identifies a menu entry that should be -selected if the default menu entry fails to boot. Entries are -identified in the same way as for 'default' (*note default::). - - -File: grub.info, Node: gfxmode, Next: gfxpayload, Prev: fallback, Up: Special environment variables - -15.1.12 gfxmode ---------------- - -If this variable is set, it sets the resolution used on the 'gfxterm' -graphical terminal. Note that you can only use modes which your -graphics card supports via VESA BIOS Extensions (VBE), so for example -native LCD panel resolutions may not be available. The default is -'auto', which selects a platform-specific default that should look -reasonable. Supported modes can be listed by 'videoinfo' command in -GRUB. - - The resolution may be specified as a sequence of one or more modes, -separated by commas (',') or semicolons (';'); each will be tried in -turn until one is found. Each mode should be either 'auto', -'WIDTHxHEIGHT', or 'WIDTHxHEIGHTxDEPTH'. - - -File: grub.info, Node: gfxpayload, Next: gfxterm_font, Prev: gfxmode, Up: Special environment variables - -15.1.13 gfxpayload ------------------- - -If this variable is set, it controls the video mode in which the Linux -kernel starts up, replacing the 'vga=' boot option (*note linux::). It -may be set to 'text' to force the Linux kernel to boot in normal text -mode, 'keep' to preserve the graphics mode set using 'gfxmode', or any -of the permitted values for 'gfxmode' to set a particular graphics mode -(*note gfxmode::). - - Depending on your kernel, your distribution, your graphics card, and -the phase of the moon, note that using this option may cause GNU/Linux -to suffer from various display problems, particularly during the early -part of the boot sequence. If you have problems, set this variable to -'text' and GRUB will tell Linux to boot in normal text mode. - - The default is platform-specific. On platforms with a native text -mode (such as PC BIOS platforms), the default is 'text'. Otherwise the -default may be 'auto' or a specific video mode. - - This variable is often set by 'GRUB_GFXPAYLOAD_LINUX' (*note Simple -configuration::). - - -File: grub.info, Node: gfxterm_font, Next: grub_cpu, Prev: gfxpayload, Up: Special environment variables - -15.1.14 gfxterm_font --------------------- - -If this variable is set, it names a font to use for text on the -'gfxterm' graphical terminal. Otherwise, 'gfxterm' may use any -available font. - - -File: grub.info, Node: grub_cpu, Next: grub_platform, Prev: gfxterm_font, Up: Special environment variables - -15.1.15 grub_cpu ----------------- - -In normal mode (*note normal::), GRUB sets the 'grub_cpu' variable to -the CPU type for which GRUB was built (e.g. 'i386' or 'powerpc'). - - -File: grub.info, Node: grub_platform, Next: icondir, Prev: grub_cpu, Up: Special environment variables - -15.1.16 grub_platform ---------------------- - -In normal mode (*note normal::), GRUB sets the 'grub_platform' variable -to the platform for which GRUB was built (e.g. 'pc' or 'efi'). - - -File: grub.info, Node: icondir, Next: lang, Prev: grub_platform, Up: Special environment variables - -15.1.17 icondir ---------------- - -If this variable is set, it names a directory in which the GRUB -graphical menu should look for icons after looking in the theme's -'icons' directory. *Note Theme file format::. - - -File: grub.info, Node: lang, Next: locale_dir, Prev: icondir, Up: Special environment variables - -15.1.18 lang ------------- - -If this variable is set, it names the language code that the 'gettext' -command (*note gettext::) uses to translate strings. For example, -French would be named as 'fr', and Simplified Chinese as 'zh_CN'. - - 'grub-mkconfig' (*note Simple configuration::) will try to set a -reasonable default for this variable based on the system locale. - - -File: grub.info, Node: locale_dir, Next: menu_color_highlight, Prev: lang, Up: Special environment variables - -15.1.19 locale_dir ------------------- - -If this variable is set, it names the directory where translation files -may be found (*note gettext::), usually '/boot/grub/locale'. Otherwise, -internationalization is disabled. - - 'grub-mkconfig' (*note Simple configuration::) will set a reasonable -default for this variable if internationalization is needed and any -translation files are available. - - -File: grub.info, Node: menu_color_highlight, Next: menu_color_normal, Prev: locale_dir, Up: Special environment variables - -15.1.20 menu_color_highlight ----------------------------- - -This variable contains the foreground and background colors to be used -for the highlighted menu entry, separated by a slash ('/'). Setting -this variable changes those colors. For the available color names, -*note color_normal::. - - The default is the value of 'color_highlight' (*note -color_highlight::). - - -File: grub.info, Node: menu_color_normal, Next: net__boot_file, Prev: menu_color_highlight, Up: Special environment variables - -15.1.21 menu_color_normal -------------------------- - -This variable contains the foreground and background colors to be used -for non-highlighted menu entries, separated by a slash ('/'). Setting -this variable changes those colors. For the available color names, -*note color_normal::. - - The default is the value of 'color_normal' (*note color_normal::). - - -File: grub.info, Node: net__boot_file, Next: net__dhcp_server_name, Prev: menu_color_normal, Up: Special environment variables - -15.1.22 net__boot_file ---------------------------------- - -*Note Network::. - - -File: grub.info, Node: net__dhcp_server_name, Next: net__domain, Prev: net__boot_file, Up: Special environment variables - -15.1.23 net__dhcp_server_name ----------------------------------------- - -*Note Network::. - - -File: grub.info, Node: net__domain, Next: net__extensionspath, Prev: net__dhcp_server_name, Up: Special environment variables - -15.1.24 net__domain ------------------------------- - -*Note Network::. - - -File: grub.info, Node: net__extensionspath, Next: net__hostname, Prev: net__domain, Up: Special environment variables - -15.1.25 net__extensionspath --------------------------------------- - -*Note Network::. - - -File: grub.info, Node: net__hostname, Next: net__ip, Prev: net__extensionspath, Up: Special environment variables - -15.1.26 net__hostname --------------------------------- - -*Note Network::. - - -File: grub.info, Node: net__ip, Next: net__mac, Prev: net__hostname, Up: Special environment variables - -15.1.27 net__ip --------------------------- - -*Note Network::. - - -File: grub.info, Node: net__mac, Next: net__next_server, Prev: net__ip, Up: Special environment variables - -15.1.28 net__mac ---------------------------- - -*Note Network::. - - -File: grub.info, Node: net__next_server, Next: net__rootpath, Prev: net__mac, Up: Special environment variables - -15.1.29 net__next_server ------------------------------------ - -*Note Network::. - - -File: grub.info, Node: net__rootpath, Next: net_default_interface, Prev: net__next_server, Up: Special environment variables - -15.1.30 net__rootpath --------------------------------- - -*Note Network::. - - -File: grub.info, Node: net_default_interface, Next: net_default_ip, Prev: net__rootpath, Up: Special environment variables - -15.1.31 net_default_interface ------------------------------ - -*Note Network::. - - -File: grub.info, Node: net_default_ip, Next: net_default_mac, Prev: net_default_interface, Up: Special environment variables - -15.1.32 net_default_ip ----------------------- - -*Note Network::. - - -File: grub.info, Node: net_default_mac, Next: net_default_server, Prev: net_default_ip, Up: Special environment variables - -15.1.33 net_default_mac ------------------------ - -*Note Network::. - - -File: grub.info, Node: net_default_server, Next: pager, Prev: net_default_mac, Up: Special environment variables - -15.1.34 net_default_server --------------------------- - -*Note Network::. - - -File: grub.info, Node: pager, Next: prefix, Prev: net_default_server, Up: Special environment variables - -15.1.35 pager -------------- - -If set to '1', pause output after each screenful and wait for keyboard -input. The default is not to pause output. - - -File: grub.info, Node: prefix, Next: pxe_blksize, Prev: pager, Up: Special environment variables - -15.1.36 prefix --------------- - -The location of the '/boot/grub' directory as an absolute file name -(*note File name syntax::). This is normally set by GRUB at startup -based on information provided by 'grub-install'. GRUB modules are -dynamically loaded from this directory, so it must be set correctly in -order for many parts of GRUB to work. - - -File: grub.info, Node: pxe_blksize, Next: pxe_default_gateway, Prev: prefix, Up: Special environment variables - -15.1.37 pxe_blksize -------------------- - -*Note Network::. - - -File: grub.info, Node: pxe_default_gateway, Next: pxe_default_server, Prev: pxe_blksize, Up: Special environment variables - -15.1.38 pxe_default_gateway ---------------------------- - -*Note Network::. - - -File: grub.info, Node: pxe_default_server, Next: root, Prev: pxe_default_gateway, Up: Special environment variables - -15.1.39 pxe_default_server --------------------------- - -*Note Network::. - - -File: grub.info, Node: root, Next: superusers, Prev: pxe_default_server, Up: Special environment variables - -15.1.40 root ------------- - -The root device name (*note Device syntax::). Any file names that do -not specify an explicit device name are read from this device. The -default is normally set by GRUB at startup based on the value of -'prefix' (*note prefix::). - - For example, if GRUB was installed to the first partition of the -first hard disk, then 'prefix' might be set to '(hd0,msdos1)/boot/grub' -and 'root' to 'hd0,msdos1'. - - -File: grub.info, Node: superusers, Next: theme, Prev: root, Up: Special environment variables - -15.1.41 superusers ------------------- - -This variable may be set to a list of superuser names to enable -authentication support. *Note Security::. - - -File: grub.info, Node: theme, Next: timeout, Prev: superusers, Up: Special environment variables - -15.1.42 theme -------------- - -This variable may be set to a directory containing a GRUB graphical menu -theme. *Note Theme file format::. - - This variable is often set by 'GRUB_THEME' (*note Simple -configuration::). - - -File: grub.info, Node: timeout, Next: timeout_style, Prev: theme, Up: Special environment variables - -15.1.43 timeout ---------------- - -If this variable is set, it specifies the time in seconds to wait for -keyboard input before booting the default menu entry. A timeout of '0' -means to boot the default entry immediately without displaying the menu; -a timeout of '-1' (or unset) means to wait indefinitely. - - If 'timeout_style' (*note timeout_style::) is set to 'countdown' or -'hidden', the timeout is instead counted before the menu is displayed. - - This variable is often set by 'GRUB_TIMEOUT' (*note Simple -configuration::). - - -File: grub.info, Node: timeout_style, Prev: timeout, Up: Special environment variables - -15.1.44 timeout_style ---------------------- - -This variable may be set to 'menu', 'countdown', or 'hidden' to control -the way in which the timeout (*note timeout::) interacts with displaying -the menu. See the documentation of 'GRUB_TIMEOUT_STYLE' (*note Simple -configuration::) for details. - - -File: grub.info, Node: Environment block, Prev: Special environment variables, Up: Environment - -15.2 The GRUB environment block -=============================== - -It is often useful to be able to remember a small amount of information -from one boot to the next. For example, you might want to set the -default menu entry based on what was selected the last time. GRUB -deliberately does not implement support for writing files in order to -minimise the possibility of the boot loader being responsible for file -system corruption, so a GRUB configuration file cannot just create a -file in the ordinary way. However, GRUB provides an "environment block" -which can be used to save a small amount of state. - - The environment block is a preallocated 1024-byte file, which -normally lives in '/boot/grub/grubenv' (although you should not assume -this). At boot time, the 'load_env' command (*note load_env::) loads -environment variables from it, and the 'save_env' (*note save_env::) -command saves environment variables to it. From a running system, the -'grub-editenv' utility can be used to edit the environment block. - - For safety reasons, this storage is only available when installed on -a plain disk (no LVM or RAID), using a non-checksumming filesystem (no -ZFS), and using BIOS or EFI functions (no ATA, USB or IEEE1275). - - 'grub-mkconfig' uses this facility to implement 'GRUB_SAVEDEFAULT' -(*note Simple configuration::). - - -File: grub.info, Node: Commands, Next: Internationalisation, Prev: Environment, Up: Top - -16 The list of available commands -********************************* - -In this chapter, we list all commands that are available in GRUB. - - Commands belong to different groups. A few can only be used in the -global section of the configuration file (or "menu"); most of them can -be entered on the command-line and can be used either anywhere in the -menu or specifically in the menu entries. - - In rescue mode, only the 'insmod' (*note insmod::), 'ls' (*note -ls::), 'set' (*note set::), and 'unset' (*note unset::) commands are -normally available. If you end up in rescue mode and do not know what -to do, then *note GRUB only offers a rescue shell::. - -* Menu: - -* Menu-specific commands:: -* General commands:: -* Command-line and menu entry commands:: -* Networking commands:: - - -File: grub.info, Node: Menu-specific commands, Next: General commands, Up: Commands - -16.1 The list of commands for the menu only -=========================================== - -The semantics used in parsing the configuration file are the following: - - * The files _must_ be in plain-text format. - - * '#' at the beginning of a line in a configuration file means it is - only a comment. - - * Options are separated by spaces. - - * All numbers can be either decimal or hexadecimal. A hexadecimal - number must be preceded by '0x', and is case-insensitive. - - These commands can only be used in the menu: - -* Menu: - -* menuentry:: Start a menu entry -* submenu:: Group menu entries - - -File: grub.info, Node: menuentry, Next: submenu, Up: Menu-specific commands - -16.1.1 menuentry ----------------- - - -- Command: menuentry TITLE ['--class=class' ...] ['--users=users'] - ['--unrestricted'] ['--hotkey=key'] ['--id=id'] [ARG ...] { - COMMAND; ... } - This defines a GRUB menu entry named TITLE. When this entry is - selected from the menu, GRUB will set the CHOSEN environment - variable to value of '--id' if '--id' is given, execute the list of - commands given within braces, and if the last command in the list - returned successfully and a kernel was loaded it will execute the - 'boot' command. - - The '--class' option may be used any number of times to group menu - entries into classes. Menu themes may display different classes - using different styles. - - The '--users' option grants specific users access to specific menu - entries. *Note Security::. - - The '--unrestricted' option grants all users access to specific - menu entries. *Note Security::. - - The '--hotkey' option associates a hotkey with a menu entry. KEY - may be a single letter, or one of the aliases 'backspace', 'tab', - or 'delete'. - - The '--id' may be used to associate unique identifier with a menu - entry. ID is string of ASCII aphanumeric characters, underscore - and hyphen and should not start with a digit. - - All other arguments including TITLE are passed as positional - parameters when list of commands is executed with TITLE always - assigned to '$1'. - - -File: grub.info, Node: submenu, Prev: menuentry, Up: Menu-specific commands - -16.1.2 submenu --------------- - - -- Command: submenu TITLE ['--class=class' ...] ['--users=users'] - ['--unrestricted'] ['--hotkey=key'] ['--id=id'] { MENU ENTRIES - ... } - This defines a submenu. An entry called TITLE will be added to the - menu; when that entry is selected, a new menu will be displayed - showing all the entries within this submenu. - - All options are the same as in the 'menuentry' command (*note - menuentry::). - - -File: grub.info, Node: General commands, Next: Command-line and menu entry commands, Prev: Menu-specific commands, Up: Commands - -16.2 The list of general commands -================================= - -Commands usable anywhere in the menu and in the command-line. - -* Menu: - -* serial:: Set up a serial device -* terminal_input:: Manage input terminals -* terminal_output:: Manage output terminals -* terminfo:: Define terminal type - - -File: grub.info, Node: serial, Next: terminal_input, Up: General commands - -16.2.1 serial -------------- - - -- Command: serial ['--unit=unit'] ['--port=port'] ['--speed=speed'] - ['--word=word'] ['--parity=parity'] ['--stop=stop'] - Initialize a serial device. UNIT is a number in the range 0-3 - specifying which serial port to use; default is 0, which - corresponds to the port often called COM1. PORT is the I/O port - where the UART is to be found; if specified it takes precedence - over UNIT. SPEED is the transmission speed; default is 9600. WORD - and STOP are the number of data bits and stop bits. Data bits must - be in the range 5-8 and stop bits must be 1 or 2. Default is 8 - data bits and one stop bit. PARITY is one of 'no', 'odd', 'even' - and defaults to 'no'. - - The serial port is not used as a communication channel unless the - 'terminal_input' or 'terminal_output' command is used (*note - terminal_input::, *note terminal_output::). - - See also *note Serial terminal::. - - -File: grub.info, Node: terminal_input, Next: terminal_output, Prev: serial, Up: General commands - -16.2.2 terminal_input ---------------------- - - -- Command: terminal_input ['--append'|'--remove'] [terminal1] - [terminal2] ... - List or select an input terminal. - - With no arguments, list the active and available input terminals. - - With '--append', add the named terminals to the list of active - input terminals; any of these may be used to provide input to GRUB. - - With '--remove', remove the named terminals from the active list. - - With no options but a list of terminal names, make only the listed - terminal names active. - - -File: grub.info, Node: terminal_output, Next: terminfo, Prev: terminal_input, Up: General commands - -16.2.3 terminal_output ----------------------- - - -- Command: terminal_output ['--append'|'--remove'] [terminal1] - [terminal2] ... - List or select an output terminal. - - With no arguments, list the active and available output terminals. - - With '--append', add the named terminals to the list of active - output terminals; all of these will receive output from GRUB. - - With '--remove', remove the named terminals from the active list. - - With no options but a list of terminal names, make only the listed - terminal names active. - - -File: grub.info, Node: terminfo, Prev: terminal_output, Up: General commands - -16.2.4 terminfo ---------------- - - -- Command: terminfo [-a|-u|-v] [term] - Define the capabilities of your terminal by giving the name of an - entry in the terminfo database, which should correspond roughly to - a 'TERM' environment variable in Unix. - - The currently available terminal types are 'vt100', 'vt100-color', - 'ieee1275', and 'dumb'. If you need other terminal types, please - contact us to discuss the best way to include support for these in - GRUB. - - The '-a' ('--ascii'), '-u' ('--utf8'), and '-v' ('--visual-utf8') - options control how non-ASCII text is displayed. '-a' specifies an - ASCII-only terminal; '-u' specifies logically-ordered UTF-8; and - '-v' specifies "visually-ordered UTF-8" (in other words, arranged - such that a terminal emulator without bidirectional text support - will display right-to-left text in the proper order; this is not - really proper UTF-8, but a workaround). - - If no option or terminal type is specified, the current terminal - type is printed. - - -File: grub.info, Node: Command-line and menu entry commands, Next: Networking commands, Prev: General commands, Up: Commands - -16.3 The list of command-line and menu entry commands -===================================================== - -These commands are usable in the command-line and in menu entries. If -you forget a command, you can run the command 'help' (*note help::). - -* Menu: - -* [:: Check file types and compare values -* acpi:: Load ACPI tables -* authenticate:: Check whether user is in user list -* background_color:: Set background color for active terminal -* background_image:: Load background image for active terminal -* badram:: Filter out bad regions of RAM -* blocklist:: Print a block list -* boot:: Start up your operating system -* cat:: Show the contents of a file -* chainloader:: Chain-load another boot loader -* clear:: Clear the screen -* cmosclean:: Clear bit in CMOS -* cmosdump:: Dump CMOS contents -* cmostest:: Test bit in CMOS -* cmp:: Compare two files -* configfile:: Load a configuration file -* cpuid:: Check for CPU features -* crc:: Compute or check CRC32 checksums -* cryptomount:: Mount a crypto device -* date:: Display or set current date and time -* devicetree:: Load a device tree blob -* distrust:: Remove a pubkey from trusted keys -* drivemap:: Map a drive to another -* echo:: Display a line of text -* eval:: Evaluate agruments as GRUB commands -* export:: Export an environment variable -* false:: Do nothing, unsuccessfully -* gettext:: Translate a string -* gptsync:: Fill an MBR based on GPT entries -* halt:: Shut down your computer -* hashsum:: Compute or check hash checksum -* help:: Show help messages -* initrd:: Load a Linux initrd -* initrd16:: Load a Linux initrd (16-bit mode) -* insmod:: Insert a module -* keystatus:: Check key modifier status -* linux:: Load a Linux kernel -* linux16:: Load a Linux kernel (16-bit mode) -* list_env:: List variables in environment block -* list_trusted:: List trusted public keys -* load_env:: Load variables from environment block -* loadfont:: Load font files -* loopback:: Make a device from a filesystem image -* ls:: List devices or files -* lsfonts:: List loaded fonts -* lsmod:: Show loaded modules -* md5sum:: Compute or check MD5 hash -* module:: Load module for multiboot kernel -* multiboot:: Load multiboot compliant kernel -* nativedisk:: Switch to native disk drivers -* normal:: Enter normal mode -* normal_exit:: Exit from normal mode -* parttool:: Modify partition table entries -* password:: Set a clear-text password -* password_pbkdf2:: Set a hashed password -* play:: Play a tune -* probe:: Retrieve device info -* pxe_unload:: Unload the PXE environment -* rdmsr:: Read values from model-specific registers -* read:: Read user input -* reboot:: Reboot your computer -* regexp:: Test if regular expression matches string -* rmmod:: Remove a module -* save_env:: Save variables to environment block -* search:: Search devices by file, label, or UUID -* sendkey:: Emulate keystrokes -* set:: Set an environment variable -* sha1sum:: Compute or check SHA1 hash -* sha256sum:: Compute or check SHA256 hash -* sha512sum:: Compute or check SHA512 hash -* sleep:: Wait for a specified number of seconds -* source:: Read a configuration file in same context -* test:: Check file types and compare values -* true:: Do nothing, successfully -* trust:: Add public key to list of trusted keys -* unset:: Unset an environment variable -* uppermem:: Set the upper memory size -* verify_detached:: Verify detached digital signature -* videoinfo:: List available video modes -* wrmsr:: Write values to model-specific registers -* xen_hypervisor:: Load xen hypervisor binary (only on AArch64) -* xen_module:: Load xen modules for xen hypervisor (only on AArch64) - - -File: grub.info, Node: [, Next: acpi, Up: Command-line and menu entry commands - -16.3.1 [ --------- - - -- Command: '[' expression ']' - Alias for 'test EXPRESSION' (*note test::). - - -File: grub.info, Node: acpi, Next: authenticate, Prev: [, Up: Command-line and menu entry commands - -16.3.2 acpi ------------ - - -- Command: acpi ['-1'|'-2'] - ['--exclude=table1,...'|'--load-only=table1,...'] - ['--oemid=id'] ['--oemtable=table'] ['--oemtablerev=rev'] - ['--oemtablecreator=creator'] ['--oemtablecreatorrev=rev'] - ['--no-ebda'] filename ... - Modern BIOS systems normally implement the Advanced Configuration - and Power Interface (ACPI), and define various tables that describe - the interface between an ACPI-compliant operating system and the - firmware. In some cases, the tables provided by default only work - well with certain operating systems, and it may be necessary to - replace some of them. - - Normally, this command will replace the Root System Description - Pointer (RSDP) in the Extended BIOS Data Area to point to the new - tables. If the '--no-ebda' option is used, the new tables will be - known only to GRUB, but may be used by GRUB's EFI emulation. - - -File: grub.info, Node: authenticate, Next: background_color, Prev: acpi, Up: Command-line and menu entry commands - -16.3.3 authenticate -------------------- - - -- Command: authenticate [userlist] - Check whether user is in USERLIST or listed in the value of - variable 'superusers'. See *note superusers:: for valid user list - format. If 'superusers' is empty, this command returns true. - *Note Security::. - - -File: grub.info, Node: background_color, Next: background_image, Prev: authenticate, Up: Command-line and menu entry commands - -16.3.4 background_color ------------------------ - - -- Command: background_color color - Set background color for active terminal. For valid color - specifications see *note Colors: Theme file format. Background - color can be changed only when using 'gfxterm' for terminal output. - - This command sets color of empty areas without text. Text - background color is controlled by environment variables - COLOR_NORMAL, COLOR_HIGHLIGHT, MENU_COLOR_NORMAL, - MENU_COLOR_HIGHLIGHT. *Note Special environment variables::. - - -File: grub.info, Node: background_image, Next: badram, Prev: background_color, Up: Command-line and menu entry commands - -16.3.5 background_image ------------------------ - - -- Command: background_image [['--mode' 'stretch'|'normal'] file] - Load background image for active terminal from FILE. Image is - stretched to fill up entire screen unless option '--mode' 'normal' - is given. Without arguments remove currently loaded background - image. Background image can be changed only when using 'gfxterm' - for terminal output. - - -File: grub.info, Node: badram, Next: blocklist, Prev: background_image, Up: Command-line and menu entry commands - -16.3.6 badram -------------- - - -- Command: badram addr,mask[,addr,mask...] - Filter out bad RAM. - - This command notifies the memory manager that specified regions of -RAM ought to be filtered out (usually, because they're damaged). This -remains in effect after a payload kernel has been loaded by GRUB, as -long as the loaded kernel obtains its memory map from GRUB. Kernels that -support this include Linux, GNU Mach, the kernel of FreeBSD and -Multiboot kernels in general. - - Syntax is the same as provided by the Memtest86+ utility -(http://www.memtest.org/): a list of address/mask pairs. Given a -page-aligned address and a base address / mask pair, if all the bits of -the page-aligned address that are enabled by the mask match with the -base address, it means this page is to be filtered. This syntax makes -it easy to represent patterns that are often result of memory damage, -due to physical distribution of memory cells. - - -File: grub.info, Node: blocklist, Next: boot, Prev: badram, Up: Command-line and menu entry commands - -16.3.7 blocklist ----------------- - - -- Command: blocklist file - Print a block list (*note Block list syntax::) for FILE. - - -File: grub.info, Node: boot, Next: cat, Prev: blocklist, Up: Command-line and menu entry commands - -16.3.8 boot ------------ - - -- Command: boot - Boot the OS or chain-loader which has been loaded. Only necessary - if running the fully interactive command-line (it is implicit at - the end of a menu entry). - - -File: grub.info, Node: cat, Next: chainloader, Prev: boot, Up: Command-line and menu entry commands - -16.3.9 cat ----------- - - -- Command: cat ['--dos'] file - Display the contents of the file FILE. This command may be useful - to remind you of your OS's root partition: - - grub> cat /etc/fstab - - If the '--dos' option is used, then carriage return / new line - pairs will be displayed as a simple new line. Otherwise, the - carriage return will be displayed as a control character ('') to - make it easier to see when boot problems are caused by a file - formatted using DOS-style line endings. - - -File: grub.info, Node: chainloader, Next: clear, Prev: cat, Up: Command-line and menu entry commands - -16.3.10 chainloader -------------------- - - -- Command: chainloader ['--force'] file - Load FILE as a chain-loader. Like any other file loaded by the - filesystem code, it can use the blocklist notation (*note Block - list syntax::) to grab the first sector of the current partition - with '+1'. If you specify the option '--force', then load FILE - forcibly, whether it has a correct signature or not. This is - required when you want to load a defective boot loader, such as SCO - UnixWare 7.1. - - -File: grub.info, Node: clear, Next: cmosclean, Prev: chainloader, Up: Command-line and menu entry commands - -16.3.11 clear -------------- - - -- Command: clear - Clear the screen. - - -File: grub.info, Node: cmosclean, Next: cmosdump, Prev: clear, Up: Command-line and menu entry commands - -16.3.12 cmosclean ------------------ - - -- Command: cmosclean byte:bit - Clear value of bit in CMOS at location BYTE:BIT. This command is - available only on platforms that support CMOS. - - -File: grub.info, Node: cmosdump, Next: cmostest, Prev: cmosclean, Up: Command-line and menu entry commands - -16.3.13 cmosdump ----------------- - - -- Dump: CMOS contents - Dump full CMOS contents as hexadecimal values. This command is - available only on platforms that support CMOS. - - -File: grub.info, Node: cmostest, Next: cmp, Prev: cmosdump, Up: Command-line and menu entry commands - -16.3.14 cmostest ----------------- - - -- Command: cmostest byte:bit - Test value of bit in CMOS at location BYTE:BIT. Exit status is - zero if bit is set, non zero otherwise. This command is available - only on platforms that support CMOS. - - -File: grub.info, Node: cmp, Next: configfile, Prev: cmostest, Up: Command-line and menu entry commands - -16.3.15 cmp ------------ - - -- Command: cmp file1 file2 - Compare the file FILE1 with the file FILE2. If they differ in - size, print the sizes like this: - - Differ in size: 0x1234 [foo], 0x4321 [bar] - - If the sizes are equal but the bytes at an offset differ, then - print the bytes like this: - - Differ at the offset 777: 0xbe [foo], 0xef [bar] - - If they are completely identical, nothing will be printed. - - -File: grub.info, Node: configfile, Next: cpuid, Prev: cmp, Up: Command-line and menu entry commands - -16.3.16 configfile ------------------- - - -- Command: configfile file - Load FILE as a configuration file. If FILE defines any menu - entries, then show a menu containing them immediately. Any - environment variable changes made by the commands in FILE will not - be preserved after 'configfile' returns. - - -File: grub.info, Node: cpuid, Next: crc, Prev: configfile, Up: Command-line and menu entry commands - -16.3.17 cpuid -------------- - - -- Command: cpuid [-l] [-p] - Check for CPU features. This command is only available on x86 - systems. - - With the '-l' option, return true if the CPU supports long mode - (64-bit). - - With the '-p' option, return true if the CPU supports Physical - Address Extension (PAE). - - If invoked without options, this command currently behaves as if it - had been invoked with '-l'. This may change in the future. - - -File: grub.info, Node: crc, Next: cryptomount, Prev: cpuid, Up: Command-line and menu entry commands - -16.3.18 crc ------------ - - -- Command: crc arg ... - Alias for 'hashsum --hash crc32 arg ...'. See command 'hashsum' - (*note hashsum::) for full description. - - -File: grub.info, Node: cryptomount, Next: date, Prev: crc, Up: Command-line and menu entry commands - -16.3.19 cryptomount -------------------- - - -- Command: cryptomount device|'-u' uuid|'-a'|'-b' - Setup access to encrypted device. If necessary, passphrase is - requested interactively. Option DEVICE configures specific grub - device (*note Naming convention::); option '-u' UUID configures - device with specified UUID; option '-a' configures all detected - encrypted devices; option '-b' configures all geli containers that - have boot flag set. - - GRUB suports devices encrypted using LUKS and geli. Note that - necessary modules (LUKS and GELI) have to be loaded manually before - this command can be used. - - -File: grub.info, Node: date, Next: devicetree, Prev: cryptomount, Up: Command-line and menu entry commands - -16.3.20 date ------------- - - -- Command: date [[year-]month-day] [hour:minute[:second]] - With no arguments, print the current date and time. - - Otherwise, take the current date and time, change any elements - specified as arguments, and set the result as the new date and - time. For example, 'date 01-01' will set the current month and day - to January 1, but leave the year, hour, minute, and second - unchanged. - - -File: grub.info, Node: devicetree, Next: distrust, Prev: date, Up: Command-line and menu entry commands - -16.3.21 linux -------------- - - -- Command: devicetree file - Load a device tree blob (.dtb) from a filesystem, for later use by - a Linux kernel. Does not perform merging with any device tree - supplied by firmware, but rather replaces it completely. *note - GNU/Linux::. - - -File: grub.info, Node: distrust, Next: drivemap, Prev: devicetree, Up: Command-line and menu entry commands - -16.3.22 distrust ----------------- - - -- Command: distrust pubkey_id - Remove public key PUBKEY_ID from GRUB's keyring of trusted keys. - PUBKEY_ID is the last four bytes (eight hexadecimal digits) of the - GPG v4 key id, which is also the output of 'list_trusted' (*note - list_trusted::). Outside of GRUB, the key id can be obtained using - 'gpg --fingerprint'). These keys are used to validate signatures - when environment variable 'check_signatures' is set to 'enforce' - (*note check_signatures::), and by some invocations of - 'verify_detached' (*note verify_detached::). *Note Using digital - signatures::, for more information. - - -File: grub.info, Node: drivemap, Next: echo, Prev: distrust, Up: Command-line and menu entry commands - -16.3.23 drivemap ----------------- - - -- Command: drivemap '-l'|'-r'|['-s'] from_drive to_drive - Without options, map the drive FROM_DRIVE to the drive TO_DRIVE. - This is necessary when you chain-load some operating systems, such - as DOS, if such an OS resides at a non-first drive. For - convenience, any partition suffix on the drive is ignored, so you - can safely use ${root} as a drive specification. - - With the '-s' option, perform the reverse mapping as well, swapping - the two drives. - - With the '-l' option, list the current mappings. - - With the '-r' option, reset all mappings to the default values. - - For example: - - drivemap -s (hd0) (hd1) - - -File: grub.info, Node: echo, Next: eval, Prev: drivemap, Up: Command-line and menu entry commands - -16.3.24 echo ------------- - - -- Command: echo ['-n'] ['-e'] string ... - Display the requested text and, unless the '-n' option is used, a - trailing new line. If there is more than one string, they are - separated by spaces in the output. As usual in GRUB commands, - variables may be substituted using '${var}'. - - The '-e' option enables interpretation of backslash escapes. The - following sequences are recognised: - - '\\' - backslash - - '\a' - alert (BEL) - - '\c' - suppress trailing new line - - '\f' - form feed - - '\n' - new line - - '\r' - carriage return - - '\t' - horizontal tab - - '\v' - vertical tab - - When interpreting backslash escapes, backslash followed by any - other character will print that character. - - -File: grub.info, Node: eval, Next: export, Prev: echo, Up: Command-line and menu entry commands - -16.3.25 eval ------------- - - -- Command: eval string ... - Concatenate arguments together using single space as separator and - evaluate result as sequence of GRUB commands. - - -File: grub.info, Node: export, Next: false, Prev: eval, Up: Command-line and menu entry commands - -16.3.26 export --------------- - - -- Command: export envvar - Export the environment variable ENVVAR. Exported variables are - visible to subsidiary configuration files loaded using - 'configfile'. - - -File: grub.info, Node: false, Next: gettext, Prev: export, Up: Command-line and menu entry commands - -16.3.27 false -------------- - - -- Command: false - Do nothing, unsuccessfully. This is mainly useful in control - constructs such as 'if' and 'while' (*note Shell-like scripting::). - - -File: grub.info, Node: gettext, Next: gptsync, Prev: false, Up: Command-line and menu entry commands - -16.3.28 gettext ---------------- - - -- Command: gettext string - Translate STRING into the current language. - - The current language code is stored in the 'lang' variable in - GRUB's environment (*note lang::). Translation files in MO format - are read from 'locale_dir' (*note locale_dir::), usually - '/boot/grub/locale'. - - -File: grub.info, Node: gptsync, Next: halt, Prev: gettext, Up: Command-line and menu entry commands - -16.3.29 gptsync ---------------- - - -- Command: gptsync device [partition[+/-[type]]] ... - Disks using the GUID Partition Table (GPT) also have a legacy - Master Boot Record (MBR) partition table for compatibility with the - BIOS and with older operating systems. The legacy MBR can only - represent a limited subset of GPT partition entries. - - This command populates the legacy MBR with the specified PARTITION - entries on DEVICE. Up to three partitions may be used. - - TYPE is an MBR partition type code; prefix with '0x' if you want to - enter this in hexadecimal. The separator between PARTITION and - TYPE may be '+' to make the partition active, or '-' to make it - inactive; only one partition may be active. If both the separator - and type are omitted, then the partition will be inactive. - - -File: grub.info, Node: halt, Next: hashsum, Prev: gptsync, Up: Command-line and menu entry commands - -16.3.30 halt ------------- - - -- Command: halt '--no-apm' - The command halts the computer. If the '--no-apm' option is - specified, no APM BIOS call is performed. Otherwise, the computer - is shut down using APM. - - -File: grub.info, Node: hashsum, Next: help, Prev: halt, Up: Command-line and menu entry commands - -16.3.31 hashsum ---------------- - - -- Command: hashsum '--hash' hash '--keep-going' '--uncompress' - '--check' file ['--prefix' dir]|file ... - Compute or verify file hashes. Hash type is selected with option - '--hash'. Supported hashes are: 'adler32', 'crc64', 'crc32', - 'crc32rfc1510', 'crc24rfc2440', 'md4', 'md5', 'ripemd160', 'sha1', - 'sha224', 'sha256', 'sha512', 'sha384', 'tiger192', 'tiger', - 'tiger2', 'whirlpool'. Option '--uncompress' uncompresses files - before computing hash. - - When list of files is given, hash of each file is computed and - printed, followed by file name, each file on a new line. - - When option '--check' is given, it points to a file that contains - list of HASH NAME pairs in the same format as used by UNIX 'md5sum' - command. Option '--prefix' may be used to give directory where - files are located. Hash verification stops after the first - mismatch was found unless option '--keep-going' was given. The - exit code '$?' is set to 0 if hash verification is successful. If - it fails, '$?' is set to a nonzero value. - - -File: grub.info, Node: help, Next: initrd, Prev: hashsum, Up: Command-line and menu entry commands - -16.3.32 help ------------- - - -- Command: help [pattern ...] - Display helpful information about builtin commands. If you do not - specify PATTERN, this command shows short descriptions of all - available commands. - - If you specify any PATTERNS, it displays longer information about - each of the commands whose names begin with those PATTERNS. - - -File: grub.info, Node: initrd, Next: initrd16, Prev: help, Up: Command-line and menu entry commands - -16.3.33 initrd --------------- - - -- Command: initrd file - Load an initial ramdisk for a Linux kernel image, and set the - appropriate parameters in the Linux setup area in memory. This may - only be used after the 'linux' command (*note linux::) has been - run. See also *note GNU/Linux::. - - -File: grub.info, Node: initrd16, Next: insmod, Prev: initrd, Up: Command-line and menu entry commands - -16.3.34 initrd16 ----------------- - - -- Command: initrd16 file - Load an initial ramdisk for a Linux kernel image to be booted in - 16-bit mode, and set the appropriate parameters in the Linux setup - area in memory. This may only be used after the 'linux16' command - (*note linux16::) has been run. See also *note GNU/Linux::. - - This command is only available on x86 systems. - - -File: grub.info, Node: insmod, Next: keystatus, Prev: initrd16, Up: Command-line and menu entry commands - -16.3.35 insmod --------------- - - -- Command: insmod module - Insert the dynamic GRUB module called MODULE. - - -File: grub.info, Node: keystatus, Next: linux, Prev: insmod, Up: Command-line and menu entry commands - -16.3.36 keystatus ------------------ - - -- Command: keystatus ['--shift'] ['--ctrl'] ['--alt'] - Return true if the Shift, Control, or Alt modifier keys are held - down, as requested by options. This is useful in scripting, to - allow some user control over behaviour without having to wait for a - keypress. - - Checking key modifier status is only supported on some platforms. - If invoked without any options, the 'keystatus' command returns - true if and only if checking key modifier status is supported. - - -File: grub.info, Node: linux, Next: linux16, Prev: keystatus, Up: Command-line and menu entry commands - -16.3.37 linux -------------- - - -- Command: linux file ... - Load a Linux kernel image from FILE. The rest of the line is - passed verbatim as the "kernel command-line". Any initrd must be - reloaded after using this command (*note initrd::). - - On x86 systems, the kernel will be booted using the 32-bit boot - protocol. Note that this means that the 'vga=' boot option will - not work; if you want to set a special video mode, you will need to - use GRUB commands such as 'set gfxpayload=1024x768' or 'set - gfxpayload=keep' (to keep the same mode as used in GRUB) instead. - GRUB can automatically detect some uses of 'vga=' and translate - them to appropriate settings of 'gfxpayload'. The 'linux16' - command (*note linux16::) avoids this restriction. - - -File: grub.info, Node: linux16, Next: list_env, Prev: linux, Up: Command-line and menu entry commands - -16.3.38 linux16 ---------------- - - -- Command: linux16 file ... - Load a Linux kernel image from FILE in 16-bit mode. The rest of - the line is passed verbatim as the "kernel command-line". Any - initrd must be reloaded after using this command (*note - initrd16::). - - The kernel will be booted using the traditional 16-bit boot - protocol. As well as bypassing problems with 'vga=' described in - *note linux::, this permits booting some other programs that - implement the Linux boot protocol for the sake of convenience. - - This command is only available on x86 systems. - - -File: grub.info, Node: list_env, Next: list_trusted, Prev: linux16, Up: Command-line and menu entry commands - -16.3.39 list_env ----------------- - - -- Command: list_env ['--file' file] - List all variables in the environment block file. *Note - Environment block::. - - The '--file' option overrides the default location of the - environment block. - - -File: grub.info, Node: list_trusted, Next: load_env, Prev: list_env, Up: Command-line and menu entry commands - -16.3.40 list_trusted --------------------- - - -- Command: list_trusted - List all public keys trusted by GRUB for validating signatures. - The output is in GPG's v4 key fingerprint format (i.e., the output - of 'gpg --fingerprint'). The least significant four bytes (last - eight hexadecimal digits) can be used as an argument to 'distrust' - (*note distrust::). *Note Using digital signatures::, for more - information about uses for these keys. - - -File: grub.info, Node: load_env, Next: loadfont, Prev: list_trusted, Up: Command-line and menu entry commands - -16.3.41 load_env ----------------- - - -- Command: load_env ['--file' file] ['--skip-sig'] - [whitelisted_variable_name] ... - Load all variables from the environment block file into the - environment. *Note Environment block::. - - The '--file' option overrides the default location of the - environment block. - - The '--skip-sig' option skips signature checking even when the - value of environment variable 'check_signatures' is set to - 'enforce' (*note check_signatures::). - - If one or more variable names are provided as arguments, they are - interpreted as a whitelist of variables to load from the - environment block file. Variables set in the file but not present - in the whitelist are ignored. - - The '--skip-sig' option should be used with care, and should always - be used in concert with a whitelist of acceptable variables whose - values should be set. Failure to employ a carefully constructed - whitelist could result in reading a malicious value into critical - environment variables from the file, such as setting - 'check_signatures=no', modifying 'prefix' to boot from an - unexpected location or not at all, etc. - - When used with care, '--skip-sig' and the whitelist enable an - administrator to configure a system to boot only signed - configurations, but to allow the user to select from among multiple - configurations, and to enable "one-shot" boot attempts and - "savedefault" behavior. *Note Using digital signatures::, for more - information. - - -File: grub.info, Node: loadfont, Next: loopback, Prev: load_env, Up: Command-line and menu entry commands - -16.3.42 loadfont ----------------- - - -- Command: loadfont file ... - Load specified font files. Unless absolute pathname is given, FILE - is assumed to be in directory '$prefix/fonts' with suffix '.pf2' - appended. *Note Fonts: Theme file format. - - -File: grub.info, Node: loopback, Next: ls, Prev: loadfont, Up: Command-line and menu entry commands - -16.3.43 loopback ----------------- - - -- Command: loopback ['-d'] device file - Make the device named DEVICE correspond to the contents of the - filesystem image in FILE. For example: - - loopback loop0 /path/to/image - ls (loop0)/ - - With the '-d' option, delete a device previously created using this - command. - - -File: grub.info, Node: ls, Next: lsfonts, Prev: loopback, Up: Command-line and menu entry commands - -16.3.44 ls ----------- - - -- Command: ls [arg ...] - List devices or files. - - With no arguments, print all devices known to GRUB. - - If the argument is a device name enclosed in parentheses (*note - Device syntax::), then print the name of the filesystem of that - device. - - If the argument is a directory given as an absolute file name - (*note File name syntax::), then list the contents of that - directory. - - -File: grub.info, Node: lsfonts, Next: lsmod, Prev: ls, Up: Command-line and menu entry commands - -16.3.45 lsfonts ---------------- - - -- Command: lsfonts - List loaded fonts. - - -File: grub.info, Node: lsmod, Next: md5sum, Prev: lsfonts, Up: Command-line and menu entry commands - -16.3.46 lsmod -------------- - - -- Command: lsmod - Show list of loaded modules. - - -File: grub.info, Node: md5sum, Next: module, Prev: lsmod, Up: Command-line and menu entry commands - -16.3.47 md5sum --------------- - - -- Command: md5sum arg ... - Alias for 'hashsum --hash md5 arg ...'. See command 'hashsum' - (*note hashsum::) for full description. - - -File: grub.info, Node: module, Next: multiboot, Prev: md5sum, Up: Command-line and menu entry commands - -16.3.48 module --------------- - - -- Command: module [--nounzip] file [arguments] - Load a module for multiboot kernel image. The rest of the line is - passed verbatim as the module command line. - - -File: grub.info, Node: multiboot, Next: nativedisk, Prev: module, Up: Command-line and menu entry commands - -16.3.49 multiboot ------------------ - - -- Command: multiboot [--quirk-bad-kludge] - [--quirk-modules-after-kernel] file ... - Load a multiboot kernel image from FILE. The rest of the line is - passed verbatim as the "kernel command-line". Any module must be - reloaded after using this command (*note module::). - - Some kernels have known problems. You need to specify -quirk-* for - those. -quirk-bad-kludge is a problem seen in several products - that they include loading kludge information with invalid data in - ELF file. GRUB prior to 0.97 and some custom builds prefered ELF - information while 0.97 and GRUB 2 use kludge. Use this option to - ignore kludge. Known affected systems: old Solaris, SkyOS. - - -quirk-modules-after-kernel is needed for kernels which load at - relatively high address e.g. 16MiB mark and can't cope with - modules stuffed between 1MiB mark and beginning of the kernel. - Known afftected systems: VMWare. - - -File: grub.info, Node: nativedisk, Next: normal, Prev: multiboot, Up: Command-line and menu entry commands - -16.3.50 nativedisk ------------------- - - -- Command: nativedisk - Switch from firmware disk drivers to native ones. Really useful - only on platforms where both firmware and native disk drives are - available. Currently i386-pc, i386-efi, i386-ieee1275 and - x86_64-efi. - - -File: grub.info, Node: normal, Next: normal_exit, Prev: nativedisk, Up: Command-line and menu entry commands - -16.3.51 normal --------------- - - -- Command: normal [file] - Enter normal mode and display the GRUB menu. - - In normal mode, commands, filesystem modules, and cryptography - modules are automatically loaded, and the full GRUB script parser - is available. Other modules may be explicitly loaded using - 'insmod' (*note insmod::). - - If a FILE is given, then commands will be read from that file. - Otherwise, they will be read from '$prefix/grub.cfg' if it exists. - - 'normal' may be called from within normal mode, creating a nested - environment. It is more usual to use 'configfile' (*note - configfile::) for this. - - -File: grub.info, Node: normal_exit, Next: parttool, Prev: normal, Up: Command-line and menu entry commands - -16.3.52 normal_exit -------------------- - - -- Command: normal_exit - Exit normal mode (*note normal::). If this instance of normal mode - was not nested within another one, then return to rescue mode. - - -File: grub.info, Node: parttool, Next: password, Prev: normal_exit, Up: Command-line and menu entry commands - -16.3.53 parttool ----------------- - - -- Command: parttool partition commands - Make various modifications to partition table entries. - - Each COMMAND is either a boolean option, in which case it must be - followed with '+' or '-' (with no intervening space) to enable or - disable that option, or else it takes a value in the form - 'COMMAND=VALUE'. - - Currently, 'parttool' is only useful on DOS partition tables (also - known as Master Boot Record, or MBR). On these partition tables, - the following commands are available: - - 'boot' (boolean) - When enabled, this makes the selected partition be the active - (bootable) partition on its disk, clearing the active flag on - all other partitions. This command is limited to _primary_ - partitions. - - 'type' (value) - Change the type of an existing partition. The value must be a - number in the range 0-0xFF (prefix with '0x' to enter it in - hexadecimal). - - 'hidden' (boolean) - When enabled, this hides the selected partition by setting the - "hidden" bit in its partition type code; when disabled, - unhides the selected partition by clearing this bit. This is - useful only when booting DOS or Windows and multiple primary - FAT partitions exist in one disk. See also *note - DOS/Windows::. - - -File: grub.info, Node: password, Next: password_pbkdf2, Prev: parttool, Up: Command-line and menu entry commands - -16.3.54 password ----------------- - - -- Command: password user clear-password - Define a user named USER with password CLEAR-PASSWORD. *Note - Security::. - - -File: grub.info, Node: password_pbkdf2, Next: play, Prev: password, Up: Command-line and menu entry commands - -16.3.55 password_pbkdf2 ------------------------ - - -- Command: password_pbkdf2 user hashed-password - Define a user named USER with password hash HASHED-PASSWORD. Use - 'grub-mkpasswd-pbkdf2' (*note Invoking grub-mkpasswd-pbkdf2::) to - generate password hashes. *Note Security::. - - -File: grub.info, Node: play, Next: probe, Prev: password_pbkdf2, Up: Command-line and menu entry commands - -16.3.56 play ------------- - - -- Command: play file | tempo [pitch1 duration1] [pitch2 duration2] ... - Plays a tune - - If the argument is a file name (*note File name syntax::), play the - tune recorded in it. The file format is first the tempo as an - unsigned 32bit little-endian number, then pairs of unsigned 16bit - little-endian numbers for pitch and duration pairs. - - If the arguments are a series of numbers, play the inline tune. - - The tempo is the base for all note durations. 60 gives a 1-second - base, 120 gives a half-second base, etc. Pitches are Hz. Set - pitch to 0 to produce a rest. - - -File: grub.info, Node: probe, Next: pxe_unload, Prev: play, Up: Command-line and menu entry commands - -16.3.57 probe -------------- - - -- Command: probe ['--set' var] - '--driver'|'--partmap'|'--fs'|'--fs-uuid'|'--label' device - Retrieve device information. If option '--set' is given, assign - result to variable VAR, otherwise print information on the screen. - - -File: grub.info, Node: pxe_unload, Next: rdmsr, Prev: probe, Up: Command-line and menu entry commands - -16.3.58 pxe_unload ------------------- - - -- Command: pxe_unload - Unload the PXE environment (*note Network::). - - This command is only available on PC BIOS systems. - - -File: grub.info, Node: rdmsr, Next: read, Prev: pxe_unload, Up: Command-line and menu entry commands - -16.3.59 rdmsr -------------- - - -- Command:: rdmsr 0xADDR [-v VARNAME] - Read a model-specific register at address 0xADDR. If the parameter - '-v' is used and an environment variable VARNAME is given, set that - environment variable to the value that was read. - - Please note that on SMP systems, reading from a MSR that has a - scope per hardware thread, implies that the value that is returned - only applies to the particular cpu/core/thread that runs the - command. - - Also, if you specify a reserved or unimplemented MSR address, it - will cause a general protection exception (which is not currently - being handled) and the system will reboot. - - -File: grub.info, Node: read, Next: reboot, Prev: rdmsr, Up: Command-line and menu entry commands - -16.3.60 read ------------- - - -- Command: read [var] - Read a line of input from the user. If an environment variable VAR - is given, set that environment variable to the line of input that - was read, with no terminating newline. - - -File: grub.info, Node: reboot, Next: regexp, Prev: read, Up: Command-line and menu entry commands - -16.3.61 reboot --------------- - - -- Command: reboot - Reboot the computer. - - -File: grub.info, Node: regexp, Next: rmmod, Prev: reboot, Up: Command-line and menu entry commands - -16.3.62 regexp --------------- - - -- Command: regexp ['--set' [number:]var] regexp string - Test if regular expression REGEXP matches STRING. Supported - regular expressions are POSIX.2 Extended Regular Expressions. If - option '--set' is given, store NUMBERth matched subexpression in - variable VAR. Subexpressions are numbered in order of their - opening parentheses starting from '1'. NUMBER defaults to '1'. - - -File: grub.info, Node: rmmod, Next: save_env, Prev: regexp, Up: Command-line and menu entry commands - -16.3.63 rmmod -------------- - - -- Command: rmmod module - Remove a loaded MODULE. - - -File: grub.info, Node: save_env, Next: search, Prev: rmmod, Up: Command-line and menu entry commands - -16.3.64 save_env ----------------- - - -- Command: save_env ['--file' file] var ... - Save the named variables from the environment to the environment - block file. *Note Environment block::. - - The '--file' option overrides the default location of the - environment block. - - This command will operate successfully even when environment - variable 'check_signatures' is set to 'enforce' (*note - check_signatures::), since it writes to disk and does not alter the - behavior of GRUB based on any contents of disk that have been read. - It is possible to modify a digitally signed environment block file - from within GRUB using this command, such that its signature will - no longer be valid on subsequent boots. Care should be taken in - such advanced configurations to avoid rendering the system - unbootable. *Note Using digital signatures::, for more - information. - - -File: grub.info, Node: search, Next: sendkey, Prev: save_env, Up: Command-line and menu entry commands - -16.3.65 search --------------- - - -- Command: search ['--file'|'--label'|'--fs-uuid'] ['--set' [var]] - ['--no-floppy'] name - Search devices by file ('-f', '--file'), filesystem label ('-l', - '--label'), or filesystem UUID ('-u', '--fs-uuid'). - - If the '--set' option is used, the first device found is set as the - value of environment variable VAR. The default variable is 'root'. - - The '--no-floppy' option prevents searching floppy devices, which - can be slow. - - The 'search.file', 'search.fs_label', and 'search.fs_uuid' commands - are aliases for 'search --file', 'search --label', and 'search - --fs-uuid' respectively. - - -File: grub.info, Node: sendkey, Next: set, Prev: search, Up: Command-line and menu entry commands - -16.3.66 sendkey ---------------- - - -- Command: sendkey - ['--num'|'--caps'|'--scroll'|'--insert'|'--pause'|'--left-shift'|'--right-shift'|'--sysrq'|'--numkey'|'--capskey'|'--scrollkey'|'--insertkey'|'--left-alt'|'--right-alt'|'--left-ctrl'|'--right-ctrl' - 'on'|'off']... ['no-led'] keystroke - Insert keystrokes into the keyboard buffer when booting. Sometimes - an operating system or chainloaded boot loader requires particular - keys to be pressed: for example, one might need to press a - particular key to enter "safe mode", or when chainloading another - boot loader one might send keystrokes to it to navigate its menu. - - You may provide up to 16 keystrokes (the length of the BIOS - keyboard buffer). Keystroke names may be upper-case or lower-case - letters, digits, or taken from the following table: - - Name Key - ------------------------------------------------------------------- - escape Escape - exclam ! - at @ - numbersign # - dollar $ - percent % - caret ^ - ampersand & - asterisk * - parenleft ( - parenright ) - minus - - underscore _ - equal = - plus + - backspace Backspace - tab Tab - bracketleft [ - braceleft { - bracketright ] - braceright } - enter Enter - control press and release Control - semicolon ; - colon : - quote ' - doublequote " - backquote ' - tilde ~ - shift press and release left Shift - backslash \ - bar | - comma , - less < - period . - greater > - slash / - question ? - rshift press and release right Shift - alt press and release Alt - space space bar - capslock Caps Lock - F1 F1 - F2 F2 - F3 F3 - F4 F4 - F5 F5 - F6 F6 - F7 F7 - F8 F8 - F9 F9 - F10 F10 - F11 F11 - F12 F12 - num1 1 (numeric keypad) - num2 2 (numeric keypad) - num3 3 (numeric keypad) - num4 4 (numeric keypad) - num5 5 (numeric keypad) - num6 6 (numeric keypad) - num7 7 (numeric keypad) - num8 8 (numeric keypad) - num9 9 (numeric keypad) - num0 0 (numeric keypad) - numperiod . (numeric keypad) - numend End (numeric keypad) - numdown Down (numeric keypad) - numpgdown Page Down (numeric keypad) - numleft Left (numeric keypad) - numcenter 5 with Num Lock inactive (numeric - keypad) - numright Right (numeric keypad) - numhome Home (numeric keypad) - numup Up (numeric keypad) - numpgup Page Up (numeric keypad) - numinsert Insert (numeric keypad) - numdelete Delete (numeric keypad) - numasterisk * (numeric keypad) - numminus - (numeric keypad) - numplus + (numeric keypad) - numslash / (numeric keypad) - numenter Enter (numeric keypad) - delete Delete - insert Insert - home Home - end End - pgdown Page Down - pgup Page Up - down Down - up Up - left Left - right Right - - As well as keystrokes, the 'sendkey' command takes various options - that affect the BIOS keyboard status flags. These options take an - 'on' or 'off' parameter, specifying that the corresponding status - flag be set or unset; omitting the option for a given status flag - will leave that flag at its initial state at boot. The '--num', - '--caps', '--scroll', and '--insert' options emulate setting the - corresponding mode, while the '--numkey', '--capskey', - '--scrollkey', and '--insertkey' options emulate pressing and - holding the corresponding key. The other status flag options are - self-explanatory. - - If the '--no-led' option is given, the status flag options will - have no effect on keyboard LEDs. - - If the 'sendkey' command is given multiple times, then only the - last invocation has any effect. - - Since 'sendkey' manipulates the BIOS keyboard buffer, it may cause - hangs, reboots, or other misbehaviour on some systems. If the - operating system or boot loader that runs after GRUB uses its own - keyboard driver rather than the BIOS keyboard functions, then - 'sendkey' will have no effect. - - This command is only available on PC BIOS systems. - - -File: grub.info, Node: set, Next: sha1sum, Prev: sendkey, Up: Command-line and menu entry commands - -16.3.67 set ------------ - - -- Command: set [envvar=value] - Set the environment variable ENVVAR to VALUE. If invoked with no - arguments, print all environment variables with their values. - - -File: grub.info, Node: sha1sum, Next: sha256sum, Prev: set, Up: Command-line and menu entry commands - -16.3.68 sha1sum ---------------- - - -- Command: sha1sum arg ... - Alias for 'hashsum --hash sha1 arg ...'. See command 'hashsum' - (*note hashsum::) for full description. - - -File: grub.info, Node: sha256sum, Next: sha512sum, Prev: sha1sum, Up: Command-line and menu entry commands - -16.3.69 sha256sum ------------------ - - -- Command: sha256sum arg ... - Alias for 'hashsum --hash sha256 arg ...'. See command 'hashsum' - (*note hashsum::) for full description. - - -File: grub.info, Node: sha512sum, Next: sleep, Prev: sha256sum, Up: Command-line and menu entry commands - -16.3.70 sha512sum ------------------ - - -- Command: sha512sum arg ... - Alias for 'hashsum --hash sha512 arg ...'. See command 'hashsum' - (*note hashsum::) for full description. - - -File: grub.info, Node: sleep, Next: source, Prev: sha512sum, Up: Command-line and menu entry commands - -16.3.71 sleep -------------- - - -- Command: sleep ['--verbose'] ['--interruptible'] count - Sleep for COUNT seconds. If option '--interruptible' is given, - allow to interrupt sleep. With '--verbose' show countdown of - remaining seconds. Exit code is set to 0 if timeout expired and to - 1 if timeout was interrupted by . - - -File: grub.info, Node: source, Next: test, Prev: sleep, Up: Command-line and menu entry commands - -16.3.72 source --------------- - - -- Command: source file - Read FILE as a configuration file, as if its contents had been - incorporated directly into the sourcing file. Unlike 'configfile' - (*note configfile::), this executes the contents of FILE without - changing context: any environment variable changes made by the - commands in FILE will be preserved after 'source' returns, and the - menu will not be shown immediately. - - -File: grub.info, Node: test, Next: true, Prev: source, Up: Command-line and menu entry commands - -16.3.73 test ------------- - - -- Command: test expression - Evaluate EXPRESSION and return zero exit status if result is true, - non zero status otherwise. - - EXPRESSION is one of: - - STRING1 '==' STRING2 - the strings are equal - STRING1 '!=' STRING2 - the strings are not equal - STRING1 '<' STRING2 - STRING1 is lexicographically less than STRING2 - STRING1 '<=' STRING2 - STRING1 is lexicographically less or equal than STRING2 - STRING1 '>' STRING2 - STRING1 is lexicographically greater than STRING2 - STRING1 '>=' STRING2 - STRING1 is lexicographically greater or equal than STRING2 - INTEGER1 '-eq' INTEGER2 - INTEGER1 is equal to INTEGER2 - INTEGER1 '-ge' INTEGER2 - INTEGER1 is greater than or equal to INTEGER2 - INTEGER1 '-gt' INTEGER2 - INTEGER1 is greater than INTEGER2 - INTEGER1 '-le' INTEGER2 - INTEGER1 is less than or equal to INTEGER2 - INTEGER1 '-lt' INTEGER2 - INTEGER1 is less than INTEGER2 - INTEGER1 '-ne' INTEGER2 - INTEGER1 is not equal to INTEGER2 - PREFIXINTEGER1 '-pgt' PREFIXINTEGER2 - INTEGER1 is greater than INTEGER2 after stripping off common - non-numeric PREFIX. - PREFIXINTEGER1 '-plt' PREFIXINTEGER2 - INTEGER1 is less than INTEGER2 after stripping off common - non-numeric PREFIX. - FILE1 '-nt' FILE2 - FILE1 is newer than FILE2 (modification time). Optionally - numeric BIAS may be directly appended to '-nt' in which case - it is added to the first file modification time. - FILE1 '-ot' FILE2 - FILE1 is older than FILE2 (modification time). Optionally - numeric BIAS may be directly appended to '-ot' in which case - it is added to the first file modification time. - '-d' FILE - FILE exists and is a directory - '-e' FILE - FILE exists - '-f' FILE - FILE exists and is not a directory - '-s' FILE - FILE exists and has a size greater than zero - '-n' STRING - the length of STRING is nonzero - STRING - STRING is equivalent to '-n STRING' - '-z' STRING - the length of STRING is zero - '(' EXPRESSION ')' - EXPRESSION is true - '!' EXPRESSION - EXPRESSION is false - EXPRESSION1 '-a' EXPRESSION2 - both EXPRESSION1 and EXPRESSION2 are true - EXPRESSION1 EXPRESSION2 - both EXPRESSION1 and EXPRESSION2 are true. This syntax is not - POSIX-compliant and is not recommended. - EXPRESSION1 '-o' EXPRESSION2 - either EXPRESSION1 or EXPRESSION2 is true - - -File: grub.info, Node: true, Next: trust, Prev: test, Up: Command-line and menu entry commands - -16.3.74 true ------------- - - -- Command: true - Do nothing, successfully. This is mainly useful in control - constructs such as 'if' and 'while' (*note Shell-like scripting::). - - -File: grub.info, Node: trust, Next: unset, Prev: true, Up: Command-line and menu entry commands - -16.3.75 trust -------------- - - -- Command: trust ['--skip-sig'] pubkey_file - Read public key from PUBKEY_FILE and add it to GRUB's internal list - of trusted public keys. These keys are used to validate digital - signatures when environment variable 'check_signatures' is set to - 'enforce'. Note that if 'check_signatures' is set to 'enforce' - when 'trust' executes, then PUBKEY_FILE must itself be properly - signed. The '--skip-sig' option can be used to disable - signature-checking when reading PUBKEY_FILE itself. It is expected - that '--skip-sig' is useful for testing and manual booting. *Note - Using digital signatures::, for more information. - - -File: grub.info, Node: unset, Next: uppermem, Prev: trust, Up: Command-line and menu entry commands - -16.3.76 unset -------------- - - -- Command: unset envvar - Unset the environment variable ENVVAR. - - -File: grub.info, Node: uppermem, Next: verify_detached, Prev: unset, Up: Command-line and menu entry commands - -16.3.77 uppermem ----------------- - -This command is not yet implemented for GRUB 2, although it is planned. - - -File: grub.info, Node: verify_detached, Next: videoinfo, Prev: uppermem, Up: Command-line and menu entry commands - -16.3.78 verify_detached ------------------------ - - -- Command: verify_detached ['--skip-sig'] file signature_file - [pubkey_file] - Verifies a GPG-style detached signature, where the signed file is - FILE, and the signature itself is in file SIGNATURE_FILE. - Optionally, a specific public key to use can be specified using - PUBKEY_FILE. When environment variable 'check_signatures' is set - to 'enforce', then PUBKEY_FILE must itself be properly signed by an - already-trusted key. An unsigned PUBKEY_FILE can be loaded by - specifying '--skip-sig'. If PUBKEY_FILE is omitted, then public - keys from GRUB's trusted keys (*note list_trusted::, *note trust::, - and *note distrust::) are tried. - - Exit code '$?' is set to 0 if the signature validates successfully. - If validation fails, it is set to a non-zero value. *Note Using - digital signatures::, for more information. - - -File: grub.info, Node: videoinfo, Next: wrmsr, Prev: verify_detached, Up: Command-line and menu entry commands - -16.3.79 videoinfo ------------------ - - -- Command: videoinfo [[WxH]xD] - List available video modes. If resolution is given, show only - matching modes. - - -File: grub.info, Node: wrmsr, Next: xen_hypervisor, Prev: videoinfo, Up: Command-line and menu entry commands - -16.3.80 wrmsr -------------- - - -- Command:: wrmsr 0xADDR 0xVALUE - Write a 0xVALUE to a model-specific register at address 0xADDR. - - Please note that on SMP systems, writing to a MSR that has a scope - per hardware thread, implies that the value that is written only - applies to the particular cpu/core/thread that runs the command. - - Also, if you specify a reserved or unimplemented MSR address, it - will cause a general protection exception (which is not currently - being handled) and the system will reboot. - - -File: grub.info, Node: xen_hypervisor, Next: xen_module, Prev: wrmsr, Up: Command-line and menu entry commands - -16.3.81 xen_hypervisor ----------------------- - - -- Command: xen_hypervisor file [arguments] ... - Load a Xen hypervisor binary from FILE. The rest of the line is - passed verbatim as the "kernel command-line". Any other binaries - must be reloaded after using this command. This command is only - available on AArch64 systems. - - -File: grub.info, Node: xen_module, Prev: xen_hypervisor, Up: Command-line and menu entry commands - -16.3.82 xen_module ------------------- - - -- Command: xen_module [--nounzip] file [arguments] - Load a module for xen hypervisor at the booting process of xen. - The rest of the line is passed verbatim as the module command line. - Modules should be loaded in the following order: - dom0 kernel - image - dom0 ramdisk if present - XSM policy if present This - command is only available on AArch64 systems. - - -File: grub.info, Node: Networking commands, Prev: Command-line and menu entry commands, Up: Commands - -16.4 The list of networking commands -==================================== - -* Menu: - -* net_add_addr:: Add a network address -* net_add_dns:: Add a DNS server -* net_add_route:: Add routing entry -* net_bootp:: Perform a bootp autoconfiguration -* net_del_addr:: Remove IP address from interface -* net_del_dns:: Remove a DNS server -* net_del_route:: Remove a route entry -* net_get_dhcp_option:: Retrieve DHCP options -* net_ipv6_autoconf:: Perform IPv6 autoconfiguration -* net_ls_addr:: List interfaces -* net_ls_cards:: List network cards -* net_ls_dns:: List DNS servers -* net_ls_routes:: List routing entries -* net_nslookup:: Perform a DNS lookup - - -File: grub.info, Node: net_add_addr, Next: net_add_dns, Up: Networking commands - -16.4.1 net_add_addr -------------------- - - -- Command: net_add_addr INTERFACE CARD ADDRESS - Configure additional network INTERFACE with ADDRESS on a network - CARD. ADDRESS can be either IP in dotted decimal notation, or - symbolic name which is resolved using DNS lookup. If successful, - this command also adds local link routing entry to the default - subnet of ADDRESS with name INTERFACE':local' via INTERFACE. - - -File: grub.info, Node: net_add_dns, Next: net_add_route, Prev: net_add_addr, Up: Networking commands - -16.4.2 net_add_dns ------------------- - - -- Command: net_add_dns SERVER - Resolve SERVER IP address and add to the list of DNS servers used - during name lookup. - - -File: grub.info, Node: net_add_route, Next: net_bootp, Prev: net_add_dns, Up: Networking commands - -16.4.3 net_add_route --------------------- - - -- Command: net_add_route SHORTNAME IP[/PREFIX] [INTERFACE | 'gw' - GATEWAY] - Add route to network with address IP as modified by PREFIX via - either local INTERFACE or GATEWAY. PREFIX is optional and defaults - to 32 for IPv4 address and 128 for IPv6 address. Route is - identified by SHORTNAME which can be used to remove it (*note - net_del_route::). - - -File: grub.info, Node: net_bootp, Next: net_del_addr, Prev: net_add_route, Up: Networking commands - -16.4.4 net_bootp ----------------- - - -- Command: net_bootp [CARD] - Perform configuration of CARD using DHCP protocol. If no card name - is specified, try to configure all existing cards. If - configuration was successful, interface with name CARD':dhcp' and - configured address is added to CARD. Additionally the following - DHCP options are recognized and processed: - - '1 (Subnet Mask)' - Used to calculate network local routing entry for interface - CARD':dhcp'. - '3 (Router)' - Adds default route entry with the name CARD':dhcp:default' via - gateway from DHCP option. Note that only option with single - route is accepted. - '6 (Domain Name Server)' - Adds all servers from option value to the list of servers used - during name resolution. - '12 (Host Name)' - Sets environment variable 'net_''_dhcp_hostname' (*note - net__hostname::) to the value of option. - '15 (Domain Name)' - Sets environment variable 'net_''_dhcp_domain' (*note - net__domain::) to the value of option. - '17 (Root Path)' - Sets environment variable 'net_''_dhcp_rootpath' (*note - net__rootpath::) to the value of option. - '18 (Extensions Path)' - Sets environment variable 'net_''_dhcp_extensionspath' - (*note net__extensionspath::) to the value of - option. - - -File: grub.info, Node: net_del_addr, Next: net_del_dns, Prev: net_bootp, Up: Networking commands - -16.4.5 net_del_addr -------------------- - - -- Command: net_del_addr INTERFACE - Remove configured INTERFACE with associated address. - - -File: grub.info, Node: net_del_dns, Next: net_del_route, Prev: net_del_addr, Up: Networking commands - -16.4.6 net_del_dns ------------------- - - -- Command: net_del_dns ADDRESS - Remove ADDRESS from list of servers used during name lookup. - - -File: grub.info, Node: net_del_route, Next: net_get_dhcp_option, Prev: net_del_dns, Up: Networking commands - -16.4.7 net_del_route --------------------- - - -- Command: net_del_route SHORTNAME - Remove route entry identified by SHORTNAME. - - -File: grub.info, Node: net_get_dhcp_option, Next: net_ipv6_autoconf, Prev: net_del_route, Up: Networking commands - -16.4.8 net_get_dhcp_option --------------------------- - - -- Command: net_get_dhcp_option VAR INTERFACE NUMBER TYPE - Request DHCP option NUMBER of TYPE via INTERFACE. TYPE can be one - of 'string', 'number' or 'hex'. If option is found, assign its - value to variable VAR. Values of types 'number' and 'hex' are - converted to string representation. - - -File: grub.info, Node: net_ipv6_autoconf, Next: net_ls_addr, Prev: net_get_dhcp_option, Up: Networking commands - -16.4.9 net_ipv6_autoconf ------------------------- - - -- Command: net_ipv6_autoconf [CARD] - Perform IPv6 autoconfiguration by adding to the CARD interface with - name CARD':link' and link local MAC-based address. If no card is - specified, perform autoconfiguration for all existing cards. - - -File: grub.info, Node: net_ls_addr, Next: net_ls_cards, Prev: net_ipv6_autoconf, Up: Networking commands - -16.4.10 net_ls_addr -------------------- - - -- Command: net_ls_addr - List all configured interfaces with their MAC and IP addresses. - - -File: grub.info, Node: net_ls_cards, Next: net_ls_dns, Prev: net_ls_addr, Up: Networking commands - -16.4.11 net_ls_cards --------------------- - - -- Command: net_ls_cards - List all detected network cards with their MAC address. - - -File: grub.info, Node: net_ls_dns, Next: net_ls_routes, Prev: net_ls_cards, Up: Networking commands - -16.4.12 net_ls_dns ------------------- - - -- Command: net_ls_dns - List addresses of DNS servers used during name lookup. - - -File: grub.info, Node: net_ls_routes, Next: net_nslookup, Prev: net_ls_dns, Up: Networking commands - -16.4.13 net_ls_routes ---------------------- - - -- Command: net_ls_routes - List routing entries. - - -File: grub.info, Node: net_nslookup, Prev: net_ls_routes, Up: Networking commands - -16.4.14 net_nslookup --------------------- - - -- Command: net_nslookup NAME [SERVER] - Resolve address of NAME using DNS server SERVER. If no server is - given, use default list of servers. - - -File: grub.info, Node: Internationalisation, Next: Security, Prev: Commands, Up: Top - -17 Internationalisation -*********************** - -17.1 Charset -============ - -GRUB uses UTF-8 internally other than in rendering where some -GRUB-specific appropriate representation is used. All text files -(including config) are assumed to be encoded in UTF-8. - -17.2 Filesystems -================ - -NTFS, JFS, UDF, HFS+, exFAT, long filenames in FAT, Joliet part of -ISO9660 are treated as UTF-16 as per specification. AFS and BFS are -read as UTF-8, again according to specification. BtrFS, cpio, tar, -squash4, minix, minix2, minix3, ROMFS, ReiserFS, XFS, ext2, ext3, ext4, -FAT (short names), F2FS, RockRidge part of ISO9660, nilfs2, UFS1, UFS2 -and ZFS are assumed to be UTF-8. This might be false on systems -configured with legacy charset but as long as the charset used is -superset of ASCII you should be able to access ASCII-named files. And -it's recommended to configure your system to use UTF-8 to access the -filesystem, convmv may help with migration. ISO9660 (plain) filenames -are specified as being ASCII or being described with unspecified escape -sequences. GRUB assumes that the ISO9660 names are UTF-8 (since any -ASCII is valid UTF-8). There are some old CD-ROMs which use CP437 in -non-compliant way. You're still able to access files with names -containing only ASCII characters on such filesystems though. You're -also able to access any file if the filesystem contains valid Joliet -(UTF-16) or RockRidge (UTF-8). AFFS, SFS and HFS never use unicode and -GRUB assumes them to be in Latin1, Latin1 and MacRoman respectively. -GRUB handles filesystem case-insensitivity however no attempt is -performed at case conversion of international characters so e.g. a file -named lowercase greek alpha is treated as different from the one named -as uppercase alpha. The filesystems in questions are NTFS (except POSIX -namespace), HFS+ (configurable at mkfs time, default insensitive), SFS -(configurable at mkfs time, default insensitive), JFS (configurable at -mkfs time, default sensitive), HFS, AFFS, FAT, exFAT and ZFS -(configurable on per-subvolume basis by property "casesensitivity", -default sensitive). On ZFS subvolumes marked as case insensitive files -containing lowercase international characters are inaccessible. Also -like all supported filesystems except HFS+ and ZFS (configurable on -per-subvolume basis by property "normalization", default none) GRUB -makes no attempt at check of canonical equivalence so a file name -u-diaresis is treated as distinct from u+combining diaresis. This -however means that in order to access file on HFS+ its name must be -specified in normalisation form D. On normalized ZFS subvolumes -filenames out of normalisation are inaccessible. - -17.3 Output terminal -==================== - -Firmware output console "console" on ARC and IEEE1275 are limited to -ASCII. - - BIOS firmware console and VGA text are limited to ASCII and some -pseudographics. - - None of above mentioned is appropriate for displaying international -and any unsupported character is replaced with question mark except -pseudographics which we attempt to approximate with ASCII. - - EFI console on the other hand nominally supports UTF-16 but actual -language coverage depends on firmware and may be very limited. - - The encoding used on serial can be chosen with 'terminfo' as either -ASCII, UTF-8 or "visual UTF-8". Last one is against the specification -but results in correct rendering of right-to-left on some readers which -don't have own bidi implementation. - - On emu GRUB checks if charset is UTF-8 and uses it if so and uses -ASCII otherwise. - - When using gfxterm or gfxmenu GRUB itself is responsible for -rendering the text. In this case GRUB is limited by loaded fonts. If -fonts contain all required characters then bidirectional text, cursive -variants and combining marks other than enclosing, half (e.g. left half -tilde or combining overline) and double ones. Ligatures aren't -supported though. This should cover European, Middle Eastern (if you -don't mind lack of lam-alif ligature in Arabic) and East Asian scripts. -Notable unsupported scripts are Brahmic family and derived as well as -Mongolian, Tifinagh, Korean Jamo (precomposed characters have no -problem) and tonal writing (2e5-2e9). GRUB also ignores deprecated (as -specified in Unicode) characters (e.g. tags). GRUB also doesn't handle -so called "annotation characters" If you can complete either of two -lists or, better, propose a patch to improve rendering, please contact -developer team. - -17.4 Input terminal -=================== - -Firmware console on BIOS, IEEE1275 and ARC doesn't allow you to enter -non-ASCII characters. EFI specification allows for such but author is -unaware of any actual implementations. Serial input is currently -limited for latin1 (unlikely to change). Own keyboard implementations -(at_keyboard and usb_keyboard) supports any key but work on -one-char-per-keystroke. So no dead keys or advanced input method. Also -there is no keymap change hotkey. In practice it makes difficult to -enter any text using non-Latin alphabet. Moreover all current input -consumers are limited to ASCII. - -17.5 Gettext -============ - -GRUB supports being translated. For this you need to have language *.mo -files in $prefix/locale, load gettext module and set "lang" variable. - -17.6 Regexp -=========== - -Regexps work on unicode characters, however no attempt at checking -cannonical equivalence has been made. Moreover the classes like -[:alpha:] match only ASCII subset. - -17.7 Other -========== - -Currently GRUB always uses YEAR-MONTH-DAY HOUR:MINUTE:SECOND [WEEKDAY] -24-hour datetime format but weekdays are translated. GRUB always uses -the decimal number format with [0-9] as digits and . as descimal -separator and no group separator. IEEE1275 aliases are matched -case-insensitively except non-ASCII which is matched as binary. Similar -behaviour is for matching OSBundleRequired. Since IEEE1275 aliases and -OSBundleRequired don't contain any non-ASCII it should never be a -problem in practice. Case-sensitive identifiers are matched as raw -strings, no canonical equivalence check is performed. Case-insenstive -identifiers are matched as RAW but additionally [a-z] is equivalent to -[A-Z]. GRUB-defined identifiers use only ASCII and so should -user-defined ones. Identifiers containing non-ASCII may work but aren't -supported. Only the ASCII space characters (space U+0020, tab U+000b, -CR U+000d and LF U+000a) are recognised. Other unicode space characters -aren't a valid field separator. 'test' (*note test::) tests <, >, <=, ->=, -pgt and -plt compare the strings in the lexicographical order of -unicode codepoints, replicating the behaviour of test from coreutils. -environment variables and commands are listed in the same order. - - -File: grub.info, Node: Security, Next: Platform limitations, Prev: Internationalisation, Up: Top - -18 Security -*********** - -* Menu: - -* Authentication and authorisation:: Users and access control -* Using digital signatures:: Booting digitally signed code -* UEFI secure boot and shim:: Booting digitally signed PE files -* Measured Boot:: Measuring boot components - - -File: grub.info, Node: Authentication and authorisation, Next: Using digital signatures, Up: Security - -18.1 Authentication and authorisation in GRUB -============================================= - -By default, the boot loader interface is accessible to anyone with -physical access to the console: anyone can select and edit any menu -entry, and anyone can get direct access to a GRUB shell prompt. For -most systems, this is reasonable since anyone with direct physical -access has a variety of other ways to gain full access, and requiring -authentication at the boot loader level would only serve to make it -difficult to recover broken systems. - - However, in some environments, such as kiosks, it may be appropriate -to lock down the boot loader to require authentication before performing -certain operations. - - The 'password' (*note password::) and 'password_pbkdf2' (*note -password_pbkdf2::) commands can be used to define users, each of which -has an associated password. 'password' sets the password in plain text, -requiring 'grub.cfg' to be secure; 'password_pbkdf2' sets the password -hashed using the Password-Based Key Derivation Function (RFC 2898), -requiring the use of 'grub-mkpasswd-pbkdf2' (*note Invoking -grub-mkpasswd-pbkdf2::) to generate password hashes. - - In order to enable authentication support, the 'superusers' -environment variable must be set to a list of usernames, separated by -any of spaces, commas, semicolons, pipes, or ampersands. Superusers are -permitted to use the GRUB command line, edit menu entries, and execute -any menu entry. If 'superusers' is set, then use of the command line -and editing of menu entries are automatically restricted to superusers. -Setting 'superusers' to empty string effectively disables both access to -CLI and editing of menu entries. - - Other users may be allowed to execute specific menu entries by giving -a list of usernames (as above) using the '--users' option to the -'menuentry' command (*note menuentry::). If the '--unrestricted' option -is used for a menu entry, then that entry is unrestricted. If the -'--users' option is not used for a menu entry, then that only superusers -are able to use it. - - Putting this together, a typical 'grub.cfg' fragment might look like -this: - - set superusers="root" - password_pbkdf2 root grub.pbkdf2.sha512.10000.biglongstring - password user1 insecure - - menuentry "May be run by any user" --unrestricted { - set root=(hd0,1) - linux /vmlinuz - } - - menuentry "Superusers only" --users "" { - set root=(hd0,1) - linux /vmlinuz single - } - - menuentry "May be run by user1 or a superuser" --users user1 { - set root=(hd0,2) - chainloader +1 - } - - The 'grub-mkconfig' program does not yet have built-in support for -generating configuration files with authentication. You can use -'/etc/grub.d/40_custom' to add simple superuser authentication, by -adding 'set superusers=' and 'password' or 'password_pbkdf2' commands. - - -File: grub.info, Node: Using digital signatures, Next: UEFI secure boot and shim, Prev: Authentication and authorisation, Up: Security - -18.2 Using digital signatures in GRUB -===================================== - -GRUB's 'core.img' can optionally provide enforcement that all files -subsequently read from disk are covered by a valid digital signature. -This document does *not* cover how to ensure that your platform's -firmware (e.g., Coreboot) validates 'core.img'. - - If environment variable 'check_signatures' (*note check_signatures::) -is set to 'enforce', then every attempt by the GRUB 'core.img' to load -another file 'foo' implicitly invokes 'verify_detached foo foo.sig' -(*note verify_detached::). 'foo.sig' must contain a valid digital -signature over the contents of 'foo', which can be verified with a -public key currently trusted by GRUB (*note list_trusted::, *note -trust::, and *note distrust::). If validation fails, then file 'foo' -cannot be opened. This failure may halt or otherwise impact the boot -process. - - GRUB uses GPG-style detached signatures (meaning that a file -'foo.sig' will be produced when file 'foo' is signed), and currently -supports the DSA and RSA signing algorithms. A signing key can be -generated as follows: - - gpg --gen-key - - An individual file can be signed as follows: - - gpg --detach-sign /path/to/file - - For successful validation of all of GRUB's subcomponents and the -loaded OS kernel, they must all be signed. One way to accomplish this -is the following (after having already produced the desired 'grub.cfg' -file, e.g., by running 'grub-mkconfig' (*note Invoking grub-mkconfig::): - - # Edit /dev/shm/passphrase.txt to contain your signing key's passphrase - for i in `find /boot -name "*.cfg" -or -name "*.lst" -or \ - -name "*.mod" -or -name "vmlinuz*" -or -name "initrd*" -or \ - -name "grubenv"`; - do - gpg --batch --detach-sign --passphrase-fd 0 $i < \ - /dev/shm/passphrase.txt - done - shred /dev/shm/passphrase.txt - - See also: *note check_signatures::, *note verify_detached::, *note -trust::, *note list_trusted::, *note distrust::, *note load_env::, *note -save_env::. - - Note that internally signature enforcement is controlled by setting -the environment variable 'check_signatures' equal to 'enforce'. Passing -one or more '--pubkey' options to 'grub-mkimage' implicitly defines -'check_signatures' equal to 'enforce' in 'core.img' prior to processing -any configuration files. - - Note that signature checking does *not* prevent an attacker with -(serial, physical, ...) console access from dropping manually to the -GRUB console and executing: - - set check_signatures=no - - To prevent this, password-protection (*note Authentication and -authorisation::) is essential. Note that even with GRUB password -protection, GRUB itself cannot prevent someone with physical access to -the machine from altering that machine's firmware (e.g., Coreboot or -BIOS) configuration to cause the machine to boot from a different -(attacker-controlled) device. GRUB is at best only one link in a secure -boot chain. - - -File: grub.info, Node: UEFI secure boot and shim, Next: Measured Boot, Prev: Using digital signatures, Up: Security - -18.3 UEFI secure boot and shim support -====================================== - -The GRUB, except the 'chainloader' command, works with the UEFI secure -boot and the shim. This functionality is provided by the shim_lock -module. It is recommend to build in this and other required modules -into the 'core.img'. All modules not stored in the 'core.img' and the -ACPI tables for the 'acpi' command have to be signed, e.g. using PGP. -Additionally, the 'iorw', the 'memrw' and the 'wrmsr' commands are -prohibited if the UEFI secure boot is enabled. This is done due to -security reasons. All above mentioned requirements are enforced by the -shim_lock module. And itself it is a persistent module which means that -it cannot be unloaded if it was loaded into the memory. - - -File: grub.info, Node: Measured Boot, Prev: UEFI secure boot and shim, Up: Security - -18.4 Measuring boot components -============================== - -If the tpm module is loaded and the platform has a Trusted Platform -Module installed, GRUB will log each command executed and each file -loaded into the TPM event log and extend the PCR values in the TPM -correspondingly. All events will be logged into the PCR described below -with a type of EV_IPL and an event description as described below. - -Event type PCR Description ---------------------------------------------------------------------------- -Command 8 All executed commands (including those - from configuration files) will be logged - and measured as entered with a prefix of - "grub_cmd: " -Kernel command line 8 Any command line passed to a kernel will - be logged and measured as entered with a - prefix of "kernel_cmdline: " -Module command line 8 Any command line passed to a kernel - module will be logged and measured as - entered with a prefix of "module_cmdline: - " -Files 9 Any file read by GRUB will be logged and - measured with a descriptive text - corresponding to the filename. - - GRUB will not measure its own 'core.img' - it is expected that -firmware will carry this out. GRUB will also not perform any -measurements until the tpm module is loaded. As such it is recommended -that the tpm module be built into 'core.img' in order to avoid a -potential gap in measurement between 'core.img' being loaded and the tpm -module being loaded. - - Measured boot is currently only supported on EFI platforms. - - -File: grub.info, Node: Platform limitations, Next: Platform-specific operations, Prev: Security, Up: Top - -19 Platform limitations -*********************** - -GRUB2 is designed to be portable and is actually ported across -platforms. We try to keep all platforms at the level. Unfortunately -some platforms are better supported than others. This is detailed in -current and 2 following sections. - - ARC platform is unable to change datetime (firmware doesn't seem to -provide a function for it). EMU has similar limitation. - - On EMU platform no serial port is available. - - Console charset refers only to firmware-assisted console. gfxterm is -always Unicode (see Internationalisation section for its limitations). -Serial is configurable to UTF-8 or ASCII (see Internationalisation). In -case of qemu and coreboot ports the refered console is vga_text. -Loongson always uses gfxterm. - - Most limited one is ASCII. CP437 provides additionally -pseudographics. GRUB2 doesn't use any language characters from CP437 as -often CP437 is replaced by national encoding compatible only in -pseudographics. Unicode is the most versatile charset which supports -many languages. However the actual console may be much more limited -depending on firmware - - On BIOS network is supported only if the image is loaded through -network. On sparc64 GRUB is unable to determine which server it was -booted from. - - Direct ATA/AHCI support allows to circumvent various firmware -limitations but isn't needed for normal operation except on baremetal -ports. - - AT keyboard support allows keyboard layout remapping and support for -keys not available through firmware. It isn't needed for normal -operation except baremetal ports. - - Speaker allows morse and spkmodem communication. - - USB support provides benefits similar to ATA (for USB disks) or AT -(for USB keyboards). In addition it allows USBserial. - - Chainloading refers to the ability to load another bootloader through -the same protocol - - Hints allow faster disk discovery by already knowing in advance which -is the disk in question. On some platforms hints are correct unless you -move the disk between boots. On other platforms it's just an educated -guess. Note that hint failure results in just reduced performance, not -a failure - - BadRAM is the ability to mark some of the RAM as "bad". Note: due to -protocol limitations mips-loongson (with Linux protocol) and -mips-qemu_mips can use only memory up to first hole. - - Bootlocation is ability of GRUB to automatically detect where it -boots from. "disk" means the detection is limited to detecting the disk -with partition being discovered on install time. "partition" means that -disk and partiton can be automatically discovered. "file" means that -boot image file name as well as disk and partition can be discovered. -For consistency default install ignores partition and relies solely on -disk detection. If no bootlocation discovery is available or boot and -grub-root disks are different, UUID is used instead. On ARC if no -device to install to is specified, UUID is used instead as well. - - BIOS Coreboot Multiboot Qemu -video yes yes yes yes -console CP437 CP437 CP437 CP437 -charset -network yes (*) no no no -ATA/AHCI yes yes yes yes -AT keyboard yes yes yes yes -Speaker yes yes yes yes -USB yes yes yes yes -chainloader local yes yes no -cpuid partial partial partial partial -rdmsr partial partial partial partial -wrmsr partial partial partial partial -hints guess guess guess guess -PCI yes yes yes yes -badram yes yes yes yes -compression always pointless no no -exit yes no no no -bootlocation disk no no no - - ia32 EFI amd64 EFI ia32 Itanium - IEEE1275 -video yes yes no no -console Unicode Unicode ASCII Unicode -charset -network yes yes yes yes -ATA/AHCI yes yes yes no -AT keyboard yes yes yes no -Speaker yes yes yes no -USB yes yes yes no -chainloader local local no local -cpuid partial partial partial no -rdmsr partial partial partial no -wrmsr partial partial partial no -hints guess guess good guess -PCI yes yes yes no -badram yes yes no yes -compression no no no no -exit yes yes yes yes -bootlocation file file file, file - ignored - - Loongson sparc64 Powerpc ARC -video yes no yes no -console N/A ASCII ASCII ASCII -charset -network no yes (*) yes no -ATA/AHCI yes no no no -AT keyboard yes no no no -Speaker no no no no -USB yes no no no -chainloader yes no no no -cpuid no no no no -rdmsr no no no no -wrmsr no no no no -hints good good good no -PCI yes no no no -badram yes (*) no no no -compression configurable no no configurable -exit no yes yes yes -bootlocation no partition file file (*) - - MIPS qemu emu xen -video no yes no -console CP437 Unicode (*) ASCII -charset -network no yes no -ATA/AHCI yes no no -AT keyboard yes no no -Speaker no no no -USB N/A yes no -chainloader yes no yes -cpuid no no yes -rdmsr no no yes -wrmsr no no yes -hints guess no no -PCI no no no -badram yes (*) no no -compression configurable no no -exit no yes no -bootlocation no file no - - -File: grub.info, Node: Platform-specific operations, Next: Supported kernels, Prev: Platform limitations, Up: Top - -20 Outline -********** - -Some platforms have features which allows to implement some commands -useless or not implementable on others. - - Quick summary: - - Information retrieval: - - * mipsel-loongson: lsspd - * mips-arc: lsdev - * efi: lsefisystab, lssal, lsefimmap, lsefi - * i386-pc: lsapm - * i386-coreboot: lscoreboot, coreboot_boottime, cbmemc - * acpi-enabled (i386-pc, i386-coreboot, i386-multiboot, *-efi): - lsacpi - - Workarounds for platform-specific issues: - * i386-efi/x86_64-efi: loadbios, fakebios, fix_video - * acpi-enabled (i386-pc, i386-coreboot, i386-multiboot, *-efi): acpi - (override ACPI tables) - * i386-pc: drivemap - * i386-pc: sendkey - - Advanced operations for power users: - * x86: iorw (direct access to I/O ports) - - Miscelaneous: - * cmos (x86-*, ieee1275, mips-qemu_mips, mips-loongson): cmostest - (used on some laptops to check for special power-on key), cmosclean - * i386-pc: play - - -File: grub.info, Node: Supported kernels, Next: Troubleshooting, Prev: Platform-specific operations, Up: Top - -21 Supported boot targets -************************* - -X86 support is summarised in the following table. "Yes" means that the -kernel works on the given platform, "crashes" means an early kernel -crash which we hope will be fixed by concerned kernel developers. "no" -means GRUB doesn't load the given kernel on a given platform. -"headless" means that the kernel works but lacks console drivers (you -can still use serial or network console). In case of "no" and "crashes" -the reason is given in footnote. - BIOS Coreboot -BIOS chainloading yes no (1) -NTLDR yes no (1) -Plan9 yes no (1) -Freedos yes no (1) -FreeBSD bootloader yes crashes (1) -32-bit kFreeBSD yes crashes (5) -64-bit kFreeBSD yes crashes (5) -32-bit kNetBSD yes crashes (1) -64-bit kNetBSD yes crashes -32-bit kOpenBSD yes yes -64-bit kOpenBSD yes yes -Multiboot yes yes -Multiboot2 yes yes -32-bit Linux (legacy protocol) yes no (1) -64-bit Linux (legacy protocol) yes no (1) -32-bit Linux (modern protocol) yes yes -64-bit Linux (modern protocol) yes yes -32-bit XNU yes ? -64-bit XNU yes ? -32-bit EFI chainloader no (2) no (2) -64-bit EFI chainloader no (2) no (2) -Appleloader no (2) no (2) - - Multiboot Qemu -BIOS chainloading no (1) no (1) -NTLDR no (1) no (1) -Plan9 no (1) no (1) -FreeDOS no (1) no (1) -FreeBSD bootloader crashes (1) crashes (1) -32-bit kFreeBSD crashes (5) crashes (5) -64-bit kFreeBSD crashes (5) crashes (5) -32-bit kNetBSD crashes (1) crashes (1) -64-bit kNetBSD yes yes -32-bit kOpenBSD yes yes -64-bit kOpenBSD yes yes -Multiboot yes yes -Multiboot2 yes yes -32-bit Linux (legacy protocol) no (1) no (1) -64-bit Linux (legacy protocol) no (1) no (1) -32-bit Linux (modern protocol) yes yes -64-bit Linux (modern protocol) yes yes -32-bit XNU ? ? -64-bit XNU ? ? -32-bit EFI chainloader no (2) no (2) -64-bit EFI chainloader no (2) no (2) -Appleloader no (2) no (2) - - ia32 EFI amd64 EFI -BIOS chainloading no (1) no (1) -NTLDR no (1) no (1) -Plan9 no (1) no (1) -FreeDOS no (1) no (1) -FreeBSD bootloader crashes (1) crashes (1) -32-bit kFreeBSD headless headless -64-bit kFreeBSD headless headless -32-bit kNetBSD crashes (1) crashes (1) -64-bit kNetBSD yes yes -32-bit kOpenBSD headless headless -64-bit kOpenBSD headless headless -Multiboot yes yes -Multiboot2 yes yes -32-bit Linux (legacy protocol) no (1) no (1) -64-bit Linux (legacy protocol) no (1) no (1) -32-bit Linux (modern protocol) yes yes -64-bit Linux (modern protocol) yes yes -32-bit XNU yes yes -64-bit XNU yes (4) yes -32-bit EFI chainloader yes no (3) -64-bit EFI chainloader no (3) yes -Appleloader yes yes - - ia32 IEEE1275 -BIOS chainloading no (1) -NTLDR no (1) -Plan9 no (1) -FreeDOS no (1) -FreeBSD bootloader crashes (1) -32-bit kFreeBSD crashes (5) -64-bit kFreeBSD crashes (5) -32-bit kNetBSD crashes (1) -64-bit kNetBSD ? -32-bit kOpenBSD ? -64-bit kOpenBSD ? -Multiboot ? -Multiboot2 ? -32-bit Linux (legacy protocol) no (1) -64-bit Linux (legacy protocol) no (1) -32-bit Linux (modern protocol) ? -64-bit Linux (modern protocol) ? -32-bit XNU ? -64-bit XNU ? -32-bit EFI chainloader no (2) -64-bit EFI chainloader no (2) -Appleloader no (2) - - 1. Requires BIOS - 2. EFI only - 3. 32-bit and 64-bit EFI have different structures and work in - different CPU modes so it's not possible to chainload 32-bit - bootloader on 64-bit platform and vice-versa - 4. Some modules may need to be disabled - 5. Requires ACPI - - PowerPC, IA64 and Sparc64 ports support only Linux. MIPS port -supports Linux and multiboot2. - -21.1 Boot tests -=============== - -As you have seen in previous chapter the support matrix is pretty big -and some of the configurations are only rarely used. To ensure the -quality bootchecks are available for all x86 targets except EFI -chainloader, Appleloader and XNU. All x86 platforms have bootcheck -facility except ieee1275. Multiboot, multiboot2, BIOS chainloader, -ntldr and freebsd-bootloader boot targets are tested only with a fake -kernel images. Only Linux is tested among the payloads using Linux -protocols. - - Following variables must be defined: - -GRUB_PAYLOADS_DIR directory containing the required kernels -GRUB_CBFSTOOL cbfstool from Coreboot package (for coreboot - platform only) -GRUB_COREBOOT_ROM empty Coreboot ROM -GRUB_QEMU_OPTS additional options to be supplied to QEMU - - Required files are: - -kfreebsd_env.i386 32-bit kFreeBSD device hints -kfreebsd.i386 32-bit FreeBSD kernel image -kfreebsd.x86_64, same from 64-bit kFreeBSD -kfreebsd_env.x86_64 -knetbsd.i386 32-bit NetBSD kernel image -knetbsd.miniroot.i386 32-bit kNetBSD miniroot.kmod. -knetbsd.x86_64, same from 64-bit kNetBSD -knetbsd.miniroot.x86_64 -kopenbsd.i386 32-bit OpenBSD kernel bsd.rd image -kopenbsd.x86_64 same from 64-bit kOpenBSD -linux.i386 32-bit Linux -linux.x86_64 64-bit Linux - - -File: grub.info, Node: Troubleshooting, Next: Invoking grub-install, Prev: Supported kernels, Up: Top - -22 Error messages produced by GRUB -********************************** - -* Menu: - -* GRUB only offers a rescue shell:: -* Firmware stalls instead of booting GRUB:: - - -File: grub.info, Node: GRUB only offers a rescue shell, Next: Firmware stalls instead of booting GRUB, Up: Troubleshooting - -22.1 GRUB only offers a rescue shell -==================================== - -GRUB's normal start-up procedure involves setting the 'prefix' -environment variable to a value set in the core image by 'grub-install', -setting the 'root' variable to match, loading the 'normal' module from -the prefix, and running the 'normal' command (*note normal::). This -command is responsible for reading '/boot/grub/grub.cfg', running the -menu, and doing all the useful things GRUB is supposed to do. - - If, instead, you only get a rescue shell, this usually means that -GRUB failed to load the 'normal' module for some reason. It may be -possible to work around this temporarily: for instance, if the reason -for the failure is that 'prefix' is wrong (perhaps it refers to the -wrong device, or perhaps the path to '/boot/grub' was not correctly made -relative to the device), then you can correct this and enter normal mode -manually: - - # Inspect the current prefix (and other preset variables): - set - # Find out which devices are available: - ls - # Set to the correct value, which might be something like this: - set prefix=(hd0,1)/grub - set root=(hd0,1) - insmod normal - normal - - However, any problem that leaves you in the rescue shell probably -means that GRUB was not correctly installed. It may be more useful to -try to reinstall it properly using 'grub-install DEVICE' (*note Invoking -grub-install::). When doing this, there are a few things to remember: - - * Drive ordering in your operating system may not be the same as the - boot drive ordering used by your firmware. Do not assume that your - first hard drive (e.g. '/dev/sda') is the one that your firmware - will boot from. 'device.map' (*note Device map::) can be used to - override this, but it is usually better to use UUIDs or file system - labels and avoid depending on drive ordering entirely. - - * At least on BIOS systems, if you tell 'grub-install' to install - GRUB to a partition but GRUB has already been installed in the - master boot record, then the GRUB installation in the partition - will be ignored. - - * If possible, it is generally best to avoid installing GRUB to a - partition (unless it is a special partition for the use of GRUB - alone, such as the BIOS Boot Partition used on GPT). Doing this - means that GRUB may stop being able to read its core image due to a - file system moving blocks around, such as while defragmenting, - running checks, or even during normal operation. Installing to the - whole disk device is normally more robust. - - * Check that GRUB actually knows how to read from the device and file - system containing '/boot/grub'. It will not be able to read from - encrypted devices with unsupported encryption scheme, nor from file - systems for which support has not yet been added to GRUB. - - -File: grub.info, Node: Firmware stalls instead of booting GRUB, Prev: GRUB only offers a rescue shell, Up: Troubleshooting - -22.2 Firmware stalls instead of booting GRUB -============================================ - -The EFI implementation of some older MacBook laptops stalls when it gets -presented a grub-mkrescue ISO image for x86_64-efi target on an USB -stick. Affected are models of year 2010 or earlier. Workaround is to -zeroize the bytes 446 to 461 of the EFI partition, where mformat has put -a partition table entry which claims partition start at block 0. This -change will not hamper bootability on other machines. - - -File: grub.info, Node: Invoking grub-install, Next: Invoking grub-mkconfig, Prev: Troubleshooting, Up: Top - -23 Invoking grub-install -************************ - -The program 'grub-install' generates a GRUB core image using -'grub-mkimage' and installs it on your system. You must specify the -device name on which you want to install GRUB, like this: - - grub-install INSTALL_DEVICE - - The device name INSTALL_DEVICE is an OS device name or a GRUB device -name. - - 'grub-install' accepts the following options: - -'--help' - Print a summary of the command-line options and exit. - -'--version' - Print the version number of GRUB and exit. - -'--boot-directory=DIR' - Install GRUB images under the directory 'DIR/grub/' This option is - useful when you want to install GRUB into a separate partition or a - removable disk. If this option is not specified then it defaults - to '/boot', so - - grub-install /dev/sda - - is equivalent to - - grub-install --boot-directory=/boot/ /dev/sda - - Here is an example in which you have a separate "boot" partition - which is mounted on '/mnt/boot': - - grub-install --boot-directory=/mnt/boot /dev/sdb - -'--recheck' - Recheck the device map, even if '/boot/grub/device.map' already - exists. You should use this option whenever you add/remove a disk - into/from your computer. - -'--no-rs-codes' - By default on x86 BIOS systems, 'grub-install' will use some extra - space in the bootloader embedding area for Reed-Solomon - error-correcting codes. This enables GRUB to still boot - successfully if some blocks are corrupted. The exact amount of - protection offered is dependent on available space in the embedding - area. R sectors of redundancy can tolerate up to R/2 corrupted - sectors. This redundancy may be cumbersome if attempting to - cryptographically validate the contents of the bootloader embedding - area, or in more modern systems with GPT-style partition tables - (*note BIOS installation::) where GRUB does not reside in any - unpartitioned space outside of the MBR. Disable the Reed-Solomon - codes with this option. - - -File: grub.info, Node: Invoking grub-mkconfig, Next: Invoking grub-mkpasswd-pbkdf2, Prev: Invoking grub-install, Up: Top - -24 Invoking grub-mkconfig -************************* - -The program 'grub-mkconfig' generates a configuration file for GRUB -(*note Simple configuration::). - - grub-mkconfig -o /boot/grub/grub.cfg - - 'grub-mkconfig' accepts the following options: - -'--help' - Print a summary of the command-line options and exit. - -'--version' - Print the version number of GRUB and exit. - -'-o FILE' -'--output=FILE' - Send the generated configuration file to FILE. The default is to - send it to standard output. - - -File: grub.info, Node: Invoking grub-mkpasswd-pbkdf2, Next: Invoking grub-mkrelpath, Prev: Invoking grub-mkconfig, Up: Top - -25 Invoking grub-mkpasswd-pbkdf2 -******************************** - -The program 'grub-mkpasswd-pbkdf2' generates password hashes for GRUB -(*note Security::). - - grub-mkpasswd-pbkdf2 - - 'grub-mkpasswd-pbkdf2' accepts the following options: - -'-c NUMBER' -'--iteration-count=NUMBER' - Number of iterations of the underlying pseudo-random function. - Defaults to 10000. - -'-l NUMBER' -'--buflen=NUMBER' - Length of the generated hash. Defaults to 64. - -'-s NUMBER' -'--salt=NUMBER' - Length of the salt. Defaults to 64. - - -File: grub.info, Node: Invoking grub-mkrelpath, Next: Invoking grub-mkrescue, Prev: Invoking grub-mkpasswd-pbkdf2, Up: Top - -26 Invoking grub-mkrelpath -************************** - -The program 'grub-mkrelpath' makes a file system path relative to the -root of its containing file system. For instance, if '/usr' is a mount -point, then: - - $ grub-mkrelpath /usr/share/grub/unicode.pf2 - '/share/grub/unicode.pf2' - - This is mainly used internally by other GRUB utilities such as -'grub-mkconfig' (*note Invoking grub-mkconfig::), but may occasionally -also be useful for debugging. - - 'grub-mkrelpath' accepts the following options: - -'--help' - Print a summary of the command-line options and exit. - -'--version' - Print the version number of GRUB and exit. - - -File: grub.info, Node: Invoking grub-mkrescue, Next: Invoking grub-mount, Prev: Invoking grub-mkrelpath, Up: Top - -27 Invoking grub-mkrescue -************************* - -The program 'grub-mkrescue' generates a bootable GRUB rescue image -(*note Making a GRUB bootable CD-ROM::). - - grub-mkrescue -o grub.iso - - All arguments not explicitly listed as 'grub-mkrescue' options are -passed on directly to 'xorriso' in 'mkisofs' emulation mode. Options -passed to 'xorriso' will normally be interpreted as 'mkisofs' options; -if the option '--' is used, then anything after that will be interpreted -as native 'xorriso' options. - - Non-option arguments specify additional source directories. This is -commonly used to add extra files to the image: - - mkdir -p disk/boot/grub - (add extra files to 'disk/boot/grub') - grub-mkrescue -o grub.iso disk - - 'grub-mkrescue' accepts the following options: - -'--help' - Print a summary of the command-line options and exit. - -'--version' - Print the version number of GRUB and exit. - -'-o FILE' -'--output=FILE' - Save output in FILE. This "option" is required. - -'--modules=MODULES' - Pre-load the named GRUB modules in the image. Multiple entries in - MODULES should be separated by whitespace (so you will probably - need to quote this for your shell). - -'--rom-directory=DIR' - If generating images for the QEMU or Coreboot platforms, copy the - resulting 'qemu.img' or 'coreboot.elf' files respectively to the - DIR directory as well as including them in the image. - -'--xorriso=FILE' - Use FILE as the 'xorriso' program, rather than the built-in - default. - -'--grub-mkimage=FILE' - Use FILE as the 'grub-mkimage' program, rather than the built-in - default. - - -File: grub.info, Node: Invoking grub-mount, Next: Invoking grub-probe, Prev: Invoking grub-mkrescue, Up: Top - -28 Invoking grub-mount -********************** - -The program 'grub-mount' performs a read-only mount of any file system -or file system image that GRUB understands, using GRUB's file system -drivers via FUSE. (It is only available if FUSE development files were -present when GRUB was built.) This has a number of uses: - - * It provides a convenient way to check how GRUB will view a file - system at boot time. You can use normal command-line tools to - compare that view with that of your operating system, making it - easy to find bugs. - - * It offers true read-only mounts. Linux does not have these for - journalling file systems, because it will always attempt to replay - the journal at mount time; while you can temporarily mark the block - device read-only to avoid this, that causes the mount to fail. - Since GRUB intentionally contains no code for writing to file - systems, it can easily provide a guaranteed read-only mount - mechanism. - - * It allows you to examine any file system that GRUB understands - without needing to load additional modules into your running - kernel, which may be useful in constrained environments such as - installers. - - * Since it can examine file system images (contained in regular - files) just as easily as file systems on block devices, you can use - it to inspect any file system image that GRUB understands with only - enough privileges to use FUSE, even if nobody has yet written a - FUSE module specifically for that file system type. - - Using 'grub-mount' is normally as simple as: - - grub-mount /dev/sda1 /mnt - - 'grub-mount' must be given one or more images and a mount point as -non-option arguments (if it is given more than one image, it will treat -them as a RAID set), and also accepts the following options: - -'--help' - Print a summary of the command-line options and exit. - -'--version' - Print the version number of GRUB and exit. - -'-C' -'--crypto' - Mount encrypted devices, prompting for a passphrase if necessary. - -'-d STRING' -'--debug=STRING' - Show debugging output for conditions matching STRING. - -'-K prompt|FILE' -'--zfs-key=prompt|FILE' - Load a ZFS encryption key. If you use 'prompt' as the argument, - 'grub-mount' will read a passphrase from the terminal; otherwise, - it will read key material from the specified file. - -'-r DEVICE' -'--root=DEVICE' - Set the GRUB root device to DEVICE. You do not normally need to - set this; 'grub-mount' will automatically set the root device to - the root of the supplied file system. - - If DEVICE is just a number, then it will be treated as a partition - number within the supplied image. This means that, if you have an - image of an entire disk in 'disk.img', then you can use this - command to mount its second partition: - - grub-mount -r 2 disk.img mount-point - -'-v' -'--verbose' - Print verbose messages. - - -File: grub.info, Node: Invoking grub-probe, Next: Invoking grub-script-check, Prev: Invoking grub-mount, Up: Top - -29 Invoking grub-probe -********************** - -The program 'grub-probe' probes device information for a given path or -device. - - grub-probe --target=fs /boot/grub - grub-probe --target=drive --device /dev/sda1 - - 'grub-probe' must be given a path or device as a non-option argument, -and also accepts the following options: - -'--help' - Print a summary of the command-line options and exit. - -'--version' - Print the version number of GRUB and exit. - -'-d' -'--device' - If this option is given, then the non-option argument is a system - device name (such as '/dev/sda1'), and 'grub-probe' will print - information about that device. If it is not given, then the - non-option argument is a filesystem path (such as '/boot/grub'), - and 'grub-probe' will print information about the device containing - that part of the filesystem. - -'-m FILE' -'--device-map=FILE' - Use FILE as the device map (*note Device map::) rather than the - default, usually '/boot/grub/device.map'. - -'-t TARGET' -'--target=TARGET' - Print information about the given path or device as defined by - TARGET. The available targets and their meanings are: - - 'fs' - GRUB filesystem module. - 'fs_uuid' - Filesystem Universally Unique Identifier (UUID). - 'fs_label' - Filesystem label. - 'drive' - GRUB device name. - 'device' - System device name. - 'partmap' - GRUB partition map module. - 'abstraction' - GRUB abstraction module (e.g. 'lvm'). - 'cryptodisk_uuid' - Crypto device UUID. - 'msdos_parttype' - MBR partition type code (two hexadecimal digits). - 'hints_string' - A string of platform search hints suitable for passing to the - 'search' command (*note search::). - 'bios_hints' - Search hints for the PC BIOS platform. - 'ieee1275_hints' - Search hints for the IEEE1275 platform. - 'baremetal_hints' - Search hints for platforms where disks are addressed directly - rather than via firmware. - 'efi_hints' - Search hints for the EFI platform. - 'arc_hints' - Search hints for the ARC platform. - 'compatibility_hint' - A guess at a reasonable GRUB drive name for this device, which - may be used as a fallback if the 'search' command fails. - 'disk' - System device name for the whole disk. - -'-v' -'--verbose' - Print verbose messages. - - -File: grub.info, Node: Invoking grub-script-check, Next: Obtaining and Building GRUB, Prev: Invoking grub-probe, Up: Top - -30 Invoking grub-script-check -***************************** - -The program 'grub-script-check' takes a GRUB script file (*note -Shell-like scripting::) and checks it for syntax errors, similar to -commands such as 'sh -n'. It may take a PATH as a non-option argument; -if none is supplied, it will read from standard input. - - grub-script-check /boot/grub/grub.cfg - - 'grub-script-check' accepts the following options: - -'--help' - Print a summary of the command-line options and exit. - -'--version' - Print the version number of GRUB and exit. - -'-v' -'--verbose' - Print each line of input after reading it. - - -File: grub.info, Node: Obtaining and Building GRUB, Next: Reporting bugs, Prev: Invoking grub-script-check, Up: Top - -Appendix A How to obtain and build GRUB -*************************************** - - *Caution:* GRUB requires binutils-2.9.1.0.23 or later because the - GNU assembler has been changed so that it can produce real 16bits - machine code between 2.9.1 and 2.9.1.0.x. See - , to obtain information on how - to get the latest version. - - GRUB is available from the GNU alpha archive site - or any of its mirrors. The file will be -named grub-version.tar.gz. The current version is 2.04, so the file you -should grab is: - - - - To unbundle GRUB use the instruction: - - zcat grub-2.04.tar.gz | tar xvf - - - which will create a directory called 'grub-2.04' with all the -sources. You can look at the file 'INSTALL' for detailed instructions -on how to build and install GRUB, but you should be able to just do: - - cd grub-2.04 - ./configure - make install - - Also, the latest version is available using Git. See - for more -information. - - -File: grub.info, Node: Reporting bugs, Next: Future, Prev: Obtaining and Building GRUB, Up: Top - -Appendix B Reporting bugs -************************* - -These are the guideline for how to report bugs. Take a look at this -list below before you submit bugs: - - 1. Before getting unsettled, read this manual through and through. - Also, see the GNU GRUB FAQ - (http://www.gnu.org/software/grub/grub-faq.html). - - 2. Always mention the information on your GRUB. The version number and - the configuration are quite important. If you build it yourself, - write the options specified to the configure script and your - operating system, including the versions of gcc and binutils. - - 3. If you have trouble with the installation, inform us of how you - installed GRUB. Don't omit error messages, if any. Just 'GRUB - hangs up when it boots' is not enough. - - The information on your hardware is also essential. These are - especially important: the geometries and the partition tables of - your hard disk drives and your BIOS. - - 4. If GRUB cannot boot your operating system, write down _everything_ - you see on the screen. Don't paraphrase them, like 'The foo OS - crashes with GRUB, even though it can boot with the bar boot loader - just fine'. Mention the commands you executed, the messages - printed by them, and information on your operating system including - the version number. - - 5. Explain what you wanted to do. It is very useful to know your - purpose and your wish, and how GRUB didn't satisfy you. - - 6. If you can investigate the problem yourself, please do. That will - give you and us much more information on the problem. Attaching a - patch is even better. - - When you attach a patch, make the patch in unified diff format, and - write ChangeLog entries. But, even when you make a patch, don't - forget to explain the problem, so that we can understand what your - patch is for. - - 7. Write down anything that you think might be related. Please - understand that we often need to reproduce the same problem you - encountered in our environment. So your information should be - sufficient for us to do the same thing--Don't forget that we cannot - see your computer directly. If you are not sure whether to state a - fact or leave it out, state it! Reporting too many things is much - better than omitting something important. - - If you follow the guideline above, submit a report to the Bug -Tracking System (http://savannah.gnu.org/bugs/?group=grub). -Alternatively, you can submit a report via electronic mail to -, but we strongly recommend that you use the Bug -Tracking System, because e-mail can be passed over easily. - - Once we get your report, we will try to fix the bugs. - - -File: grub.info, Node: Future, Next: Copying This Manual, Prev: Reporting bugs, Up: Top - -Appendix C Where GRUB will go -***************************** - -GRUB 2 is now quite stable and used in many production systems. We are -currently working towards a 2.0 release. - - If you are interested in the development of GRUB 2, take a look at -the homepage (http://www.gnu.org/software/grub/grub.html). - - -File: grub.info, Node: Copying This Manual, Next: Index, Prev: Future, Up: Top - -Appendix D Copying This Manual -****************************** - -* Menu: - -* GNU Free Documentation License:: License for copying this manual. - - -File: grub.info, Node: GNU Free Documentation License, Up: Copying This Manual - -D.1 GNU Free Documentation License -================================== - - Version 1.2, November 2002 - - Copyright (C) 2000,2001,2002 Free Software Foundation, Inc. - 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA - - Everyone is permitted to copy and distribute verbatim copies - of this license document, but changing it is not allowed. - - 0. PREAMBLE - - The purpose of this License is to make a manual, textbook, or other - functional and useful document "free" in the sense of freedom: to - assure everyone the effective freedom to copy and redistribute it, - with or without modifying it, either commercially or - noncommercially. Secondarily, this License preserves for the - author and publisher a way to get credit for their work, while not - being considered responsible for modifications made by others. - - This License is a kind of "copyleft", which means that derivative - works of the document must themselves be free in the same sense. - It complements the GNU General Public License, which is a copyleft - license designed for free software. - - We have designed this License in order to use it for manuals for - free software, because free software needs free documentation: a - free program should come with manuals providing the same freedoms - that the software does. But this License is not limited to - software manuals; it can be used for any textual work, regardless - of subject matter or whether it is published as a printed book. We - recommend this License principally for works whose purpose is - instruction or reference. - - 1. APPLICABILITY AND DEFINITIONS - - This License applies to any manual or other work, in any medium, - that contains a notice placed by the copyright holder saying it can - be distributed under the terms of this License. Such a notice - grants a world-wide, royalty-free license, unlimited in duration, - to use that work under the conditions stated herein. The - "Document", below, refers to any such manual or work. Any member - of the public is a licensee, and is addressed as "you". You accept - the license if you copy, modify or distribute the work in a way - requiring permission under copyright law. - - A "Modified Version" of the Document means any work containing the - Document or a portion of it, either copied verbatim, or with - modifications and/or translated into another language. - - A "Secondary Section" is a named appendix or a front-matter section - of the Document that deals exclusively with the relationship of the - publishers or authors of the Document to the Document's overall - subject (or to related matters) and contains nothing that could - fall directly within that overall subject. (Thus, if the Document - is in part a textbook of mathematics, a Secondary Section may not - explain any mathematics.) The relationship could be a matter of - historical connection with the subject or with related matters, or - of legal, commercial, philosophical, ethical or political position - regarding them. - - The "Invariant Sections" are certain Secondary Sections whose - titles are designated, as being those of Invariant Sections, in the - notice that says that the Document is released under this License. - If a section does not fit the above definition of Secondary then it - is not allowed to be designated as Invariant. The Document may - contain zero Invariant Sections. If the Document does not identify - any Invariant Sections then there are none. - - The "Cover Texts" are certain short passages of text that are - listed, as Front-Cover Texts or Back-Cover Texts, in the notice - that says that the Document is released under this License. A - Front-Cover Text may be at most 5 words, and a Back-Cover Text may - be at most 25 words. - - A "Transparent" copy of the Document means a machine-readable copy, - represented in a format whose specification is available to the - general public, that is suitable for revising the document - straightforwardly with generic text editors or (for images composed - of pixels) generic paint programs or (for drawings) some widely - available drawing editor, and that is suitable for input to text - formatters or for automatic translation to a variety of formats - suitable for input to text formatters. A copy made in an otherwise - Transparent file format whose markup, or absence of markup, has - been arranged to thwart or discourage subsequent modification by - readers is not Transparent. An image format is not Transparent if - used for any substantial amount of text. A copy that is not - "Transparent" is called "Opaque". - - Examples of suitable formats for Transparent copies include plain - ASCII without markup, Texinfo input format, LaTeX input format, - SGML or XML using a publicly available DTD, and standard-conforming - simple HTML, PostScript or PDF designed for human modification. - Examples of transparent image formats include PNG, XCF and JPG. - Opaque formats include proprietary formats that can be read and - edited only by proprietary word processors, SGML or XML for which - the DTD and/or processing tools are not generally available, and - the machine-generated HTML, PostScript or PDF produced by some word - processors for output purposes only. - - The "Title Page" means, for a printed book, the title page itself, - plus such following pages as are needed to hold, legibly, the - material this License requires to appear in the title page. For - works in formats which do not have any title page as such, "Title - Page" means the text near the most prominent appearance of the - work's title, preceding the beginning of the body of the text. - - A section "Entitled XYZ" means a named subunit of the Document - whose title either is precisely XYZ or contains XYZ in parentheses - following text that translates XYZ in another language. (Here XYZ - stands for a specific section name mentioned below, such as - "Acknowledgements", "Dedications", "Endorsements", or "History".) - To "Preserve the Title" of such a section when you modify the - Document means that it remains a section "Entitled XYZ" according - to this definition. - - The Document may include Warranty Disclaimers next to the notice - which states that this License applies to the Document. These - Warranty Disclaimers are considered to be included by reference in - this License, but only as regards disclaiming warranties: any other - implication that these Warranty Disclaimers may have is void and - has no effect on the meaning of this License. - - 2. VERBATIM COPYING - - You may copy and distribute the Document in any medium, either - commercially or noncommercially, provided that this License, the - copyright notices, and the license notice saying this License - applies to the Document are reproduced in all copies, and that you - add no other conditions whatsoever to those of this License. You - may not use technical measures to obstruct or control the reading - or further copying of the copies you make or distribute. However, - you may accept compensation in exchange for copies. If you - distribute a large enough number of copies you must also follow the - conditions in section 3. - - You may also lend copies, under the same conditions stated above, - and you may publicly display copies. - - 3. COPYING IN QUANTITY - - If you publish printed copies (or copies in media that commonly - have printed covers) of the Document, numbering more than 100, and - the Document's license notice requires Cover Texts, you must - enclose the copies in covers that carry, clearly and legibly, all - these Cover Texts: Front-Cover Texts on the front cover, and - Back-Cover Texts on the back cover. Both covers must also clearly - and legibly identify you as the publisher of these copies. The - front cover must present the full title with all words of the title - equally prominent and visible. You may add other material on the - covers in addition. Copying with changes limited to the covers, as - long as they preserve the title of the Document and satisfy these - conditions, can be treated as verbatim copying in other respects. - - If the required texts for either cover are too voluminous to fit - legibly, you should put the first ones listed (as many as fit - reasonably) on the actual cover, and continue the rest onto - adjacent pages. - - If you publish or distribute Opaque copies of the Document - numbering more than 100, you must either include a machine-readable - Transparent copy along with each Opaque copy, or state in or with - each Opaque copy a computer-network location from which the general - network-using public has access to download using public-standard - network protocols a complete Transparent copy of the Document, free - of added material. If you use the latter option, you must take - reasonably prudent steps, when you begin distribution of Opaque - copies in quantity, to ensure that this Transparent copy will - remain thus accessible at the stated location until at least one - year after the last time you distribute an Opaque copy (directly or - through your agents or retailers) of that edition to the public. - - It is requested, but not required, that you contact the authors of - the Document well before redistributing any large number of copies, - to give them a chance to provide you with an updated version of the - Document. - - 4. MODIFICATIONS - - You may copy and distribute a Modified Version of the Document - under the conditions of sections 2 and 3 above, provided that you - release the Modified Version under precisely this License, with the - Modified Version filling the role of the Document, thus licensing - distribution and modification of the Modified Version to whoever - possesses a copy of it. In addition, you must do these things in - the Modified Version: - - A. Use in the Title Page (and on the covers, if any) a title - distinct from that of the Document, and from those of previous - versions (which should, if there were any, be listed in the - History section of the Document). You may use the same title - as a previous version if the original publisher of that - version gives permission. - - B. List on the Title Page, as authors, one or more persons or - entities responsible for authorship of the modifications in - the Modified Version, together with at least five of the - principal authors of the Document (all of its principal - authors, if it has fewer than five), unless they release you - from this requirement. - - C. State on the Title page the name of the publisher of the - Modified Version, as the publisher. - - D. Preserve all the copyright notices of the Document. - - E. Add an appropriate copyright notice for your modifications - adjacent to the other copyright notices. - - F. Include, immediately after the copyright notices, a license - notice giving the public permission to use the Modified - Version under the terms of this License, in the form shown in - the Addendum below. - - G. Preserve in that license notice the full lists of Invariant - Sections and required Cover Texts given in the Document's - license notice. - - H. Include an unaltered copy of this License. - - I. Preserve the section Entitled "History", Preserve its Title, - and add to it an item stating at least the title, year, new - authors, and publisher of the Modified Version as given on the - Title Page. If there is no section Entitled "History" in the - Document, create one stating the title, year, authors, and - publisher of the Document as given on its Title Page, then add - an item describing the Modified Version as stated in the - previous sentence. - - J. Preserve the network location, if any, given in the Document - for public access to a Transparent copy of the Document, and - likewise the network locations given in the Document for - previous versions it was based on. These may be placed in the - "History" section. You may omit a network location for a work - that was published at least four years before the Document - itself, or if the original publisher of the version it refers - to gives permission. - - K. For any section Entitled "Acknowledgements" or "Dedications", - Preserve the Title of the section, and preserve in the section - all the substance and tone of each of the contributor - acknowledgements and/or dedications given therein. - - L. Preserve all the Invariant Sections of the Document, unaltered - in their text and in their titles. Section numbers or the - equivalent are not considered part of the section titles. - - M. Delete any section Entitled "Endorsements". Such a section - may not be included in the Modified Version. - - N. Do not retitle any existing section to be Entitled - "Endorsements" or to conflict in title with any Invariant - Section. - - O. Preserve any Warranty Disclaimers. - - If the Modified Version includes new front-matter sections or - appendices that qualify as Secondary Sections and contain no - material copied from the Document, you may at your option designate - some or all of these sections as invariant. To do this, add their - titles to the list of Invariant Sections in the Modified Version's - license notice. These titles must be distinct from any other - section titles. - - You may add a section Entitled "Endorsements", provided it contains - nothing but endorsements of your Modified Version by various - parties--for example, statements of peer review or that the text - has been approved by an organization as the authoritative - definition of a standard. - - You may add a passage of up to five words as a Front-Cover Text, - and a passage of up to 25 words as a Back-Cover Text, to the end of - the list of Cover Texts in the Modified Version. Only one passage - of Front-Cover Text and one of Back-Cover Text may be added by (or - through arrangements made by) any one entity. If the Document - already includes a cover text for the same cover, previously added - by you or by arrangement made by the same entity you are acting on - behalf of, you may not add another; but you may replace the old - one, on explicit permission from the previous publisher that added - the old one. - - The author(s) and publisher(s) of the Document do not by this - License give permission to use their names for publicity for or to - assert or imply endorsement of any Modified Version. - - 5. COMBINING DOCUMENTS - - You may combine the Document with other documents released under - this License, under the terms defined in section 4 above for - modified versions, provided that you include in the combination all - of the Invariant Sections of all of the original documents, - unmodified, and list them all as Invariant Sections of your - combined work in its license notice, and that you preserve all - their Warranty Disclaimers. - - The combined work need only contain one copy of this License, and - multiple identical Invariant Sections may be replaced with a single - copy. If there are multiple Invariant Sections with the same name - but different contents, make the title of each such section unique - by adding at the end of it, in parentheses, the name of the - original author or publisher of that section if known, or else a - unique number. Make the same adjustment to the section titles in - the list of Invariant Sections in the license notice of the - combined work. - - In the combination, you must combine any sections Entitled - "History" in the various original documents, forming one section - Entitled "History"; likewise combine any sections Entitled - "Acknowledgements", and any sections Entitled "Dedications". You - must delete all sections Entitled "Endorsements." - - 6. COLLECTIONS OF DOCUMENTS - - You may make a collection consisting of the Document and other - documents released under this License, and replace the individual - copies of this License in the various documents with a single copy - that is included in the collection, provided that you follow the - rules of this License for verbatim copying of each of the documents - in all other respects. - - You may extract a single document from such a collection, and - distribute it individually under this License, provided you insert - a copy of this License into the extracted document, and follow this - License in all other respects regarding verbatim copying of that - document. - - 7. AGGREGATION WITH INDEPENDENT WORKS - - A compilation of the Document or its derivatives with other - separate and independent documents or works, in or on a volume of a - storage or distribution medium, is called an "aggregate" if the - copyright resulting from the compilation is not used to limit the - legal rights of the compilation's users beyond what the individual - works permit. When the Document is included in an aggregate, this - License does not apply to the other works in the aggregate which - are not themselves derivative works of the Document. - - If the Cover Text requirement of section 3 is applicable to these - copies of the Document, then if the Document is less than one half - of the entire aggregate, the Document's Cover Texts may be placed - on covers that bracket the Document within the aggregate, or the - electronic equivalent of covers if the Document is in electronic - form. Otherwise they must appear on printed covers that bracket - the whole aggregate. - - 8. TRANSLATION - - Translation is considered a kind of modification, so you may - distribute translations of the Document under the terms of section - 4. Replacing Invariant Sections with translations requires special - permission from their copyright holders, but you may include - translations of some or all Invariant Sections in addition to the - original versions of these Invariant Sections. You may include a - translation of this License, and all the license notices in the - Document, and any Warranty Disclaimers, provided that you also - include the original English version of this License and the - original versions of those notices and disclaimers. In case of a - disagreement between the translation and the original version of - this License or a notice or disclaimer, the original version will - prevail. - - If a section in the Document is Entitled "Acknowledgements", - "Dedications", or "History", the requirement (section 4) to - Preserve its Title (section 1) will typically require changing the - actual title. - - 9. TERMINATION - - You may not copy, modify, sublicense, or distribute the Document - except as expressly provided for under this License. Any other - attempt to copy, modify, sublicense or distribute the Document is - void, and will automatically terminate your rights under this - License. However, parties who have received copies, or rights, - from you under this License will not have their licenses terminated - so long as such parties remain in full compliance. - - 10. FUTURE REVISIONS OF THIS LICENSE - - The Free Software Foundation may publish new, revised versions of - the GNU Free Documentation License from time to time. Such new - versions will be similar in spirit to the present version, but may - differ in detail to address new problems or concerns. See - . - - Each version of the License is given a distinguishing version - number. If the Document specifies that a particular numbered - version of this License "or any later version" applies to it, you - have the option of following the terms and conditions either of - that specified version or of any later version that has been - published (not as a draft) by the Free Software Foundation. If the - Document does not specify a version number of this License, you may - choose any version ever published (not as a draft) by the Free - Software Foundation. - -D.1.1 ADDENDUM: How to use this License for your documents ----------------------------------------------------------- - -To use this License in a document you have written, include a copy of -the License in the document and put the following copyright and license -notices just after the title page: - - Copyright (C) YEAR YOUR NAME. - Permission is granted to copy, distribute and/or modify this document - under the terms of the GNU Free Documentation License, Version 1.2 - or any later version published by the Free Software Foundation; - with no Invariant Sections, no Front-Cover Texts, and no Back-Cover - Texts. A copy of the license is included in the section entitled ``GNU - Free Documentation License''. - - If you have Invariant Sections, Front-Cover Texts and Back-Cover -Texts, replace the "with...Texts." line with this: - - with the Invariant Sections being LIST THEIR TITLES, with - the Front-Cover Texts being LIST, and with the Back-Cover Texts - being LIST. - - If you have Invariant Sections without Cover Texts, or some other -combination of the three, merge those two alternatives to suit the -situation. - - If your document contains nontrivial examples of program code, we -recommend releasing these examples in parallel under your choice of free -software license, such as the GNU General Public License, to permit -their use in free software. - - -File: grub.info, Node: Index, Prev: Copying This Manual, Up: Top - -Index -***** - -[index] -* Menu: - -* [: [. (line 6) -* acpi: acpi. (line 6) -* authenticate: authenticate. (line 6) -* background_color: background_color. (line 6) -* background_image: background_image. (line 6) -* badram: badram. (line 6) -* blocklist: blocklist. (line 6) -* boot: boot. (line 6) -* cat: cat. (line 6) -* chainloader: chainloader. (line 6) -* clear: clear. (line 6) -* CMOS: cmosdump. (line 6) -* cmosclean: cmosclean. (line 6) -* cmostest: cmostest. (line 6) -* cmp: cmp. (line 6) -* configfile: configfile. (line 6) -* cpuid: cpuid. (line 6) -* crc: crc. (line 6) -* cryptomount: cryptomount. (line 6) -* date: date. (line 6) -* devicetree: devicetree. (line 6) -* distrust: distrust. (line 6) -* drivemap: drivemap. (line 6) -* echo: echo. (line 6) -* eval: eval. (line 6) -* export: export. (line 6) -* false: false. (line 6) -* FDL, GNU Free Documentation License: GNU Free Documentation License. - (line 6) -* gettext: gettext. (line 6) -* gptsync: gptsync. (line 6) -* halt: halt. (line 6) -* hashsum: hashsum. (line 6) -* help: help. (line 6) -* initrd: initrd. (line 6) -* initrd16: initrd16. (line 6) -* insmod: insmod. (line 6) -* keystatus: keystatus. (line 6) -* linux: linux. (line 6) -* linux16: linux16. (line 6) -* list_env: list_env. (line 6) -* list_trusted: list_trusted. (line 6) -* loadfont: loadfont. (line 6) -* load_env: load_env. (line 6) -* loopback: loopback. (line 6) -* ls: ls. (line 6) -* lsfonts: lsfonts. (line 6) -* lsmod: lsmod. (line 6) -* md5sum: md5sum. (line 6) -* menuentry: menuentry. (line 6) -* module: module. (line 6) -* multiboot: multiboot. (line 6) -* nativedisk: nativedisk. (line 6) -* net_add_addr: net_add_addr. (line 6) -* net_add_dns: net_add_dns. (line 6) -* net_add_route: net_add_route. (line 6) -* net_bootp: net_bootp. (line 6) -* net_del_addr: net_del_addr. (line 6) -* net_del_dns: net_del_dns. (line 6) -* net_del_route: net_del_route. (line 6) -* net_get_dhcp_option: net_get_dhcp_option. (line 6) -* net_ipv6_autoconf: net_ipv6_autoconf. (line 6) -* net_ls_addr: net_ls_addr. (line 6) -* net_ls_cards: net_ls_cards. (line 6) -* net_ls_dns: net_ls_dns. (line 6) -* net_ls_routes: net_ls_routes. (line 6) -* net_nslookup: net_nslookup. (line 6) -* normal: normal. (line 6) -* normal_exit: normal_exit. (line 6) -* parttool: parttool. (line 6) -* password: password. (line 6) -* password_pbkdf2: password_pbkdf2. (line 6) -* play: play. (line 6) -* probe: probe. (line 6) -* pxe_unload: pxe_unload. (line 6) -* rdmsr: rdmsr. (line 6) -* read: read. (line 6) -* reboot: reboot. (line 6) -* regexp: regexp. (line 6) -* rmmod: rmmod. (line 6) -* save_env: save_env. (line 6) -* search: search. (line 6) -* sendkey: sendkey. (line 6) -* serial: serial. (line 6) -* set: set. (line 6) -* sha1sum: sha1sum. (line 6) -* sha256sum: sha256sum. (line 6) -* sha512sum: sha512sum. (line 6) -* sleep: sleep. (line 6) -* source: source. (line 6) -* submenu: submenu. (line 6) -* terminal_input: terminal_input. (line 6) -* terminal_output: terminal_output. (line 6) -* terminfo: terminfo. (line 6) -* test: test. (line 6) -* true: true. (line 6) -* trust: trust. (line 6) -* unset: unset. (line 6) -* verify_detached: verify_detached. (line 6) -* videoinfo: videoinfo. (line 6) -* wrmsr: wrmsr. (line 6) -* xen_hypervisor: xen_hypervisor. (line 6) -* xen_module: xen_module. (line 6) - - - -Tag Table: -Node: Top1153 -Node: Introduction4202 -Node: Overview4646 -Node: Overview-Footnotes6636 -Ref: Overview-Footnote-16697 -Node: History6859 -Node: Changes from GRUB Legacy8949 -Node: Features11425 -Node: Features-Footnotes17852 -Ref: Features-Footnote-117913 -Ref: Features-Footnote-218009 -Ref: Features-Footnote-318156 -Node: Role of a boot loader18301 -Node: Role of a boot loader-Footnotes19640 -Ref: Role of a boot loader-Footnote-119727 -Node: Naming convention19806 -Node: OS-specific notes about grub tools22717 -Node: Installation23753 -Node: Installing GRUB using grub-install24875 -Node: Making a GRUB bootable CD-ROM27562 -Node: Making a GRUB bootable CD-ROM-Footnotes29421 -Ref: Making a GRUB bootable CD-ROM-Footnote-129524 -Node: Device map29599 -Node: BIOS installation31566 -Node: Booting34942 -Node: General boot methods35398 -Node: Loading an operating system directly36141 -Node: Chain-loading36872 -Node: Loopback booting37843 -Node: OS-specific notes39517 -Node: GNU/Hurd39806 -Node: GNU/Linux40929 -Node: NetBSD42555 -Node: DOS/Windows44029 -Node: Configuration45807 -Node: Simple configuration46519 -Node: Root Identifcation Heuristics61992 -Node: Shell-like scripting65006 -Node: Shell-like scripting-Footnotes73069 -Ref: Shell-like scripting-Footnote-173154 -Node: Multi-boot manual config73281 -Node: Embedded configuration76910 -Node: Theme file format79746 -Ref: Pixmap-styled progress bar81205 -Ref: Plain progress bar, drawn with solid color.81217 -Ref: An example of the slices (in red) used for a terminal window. This drawing was created and sliced in Inkscape_, as the next section explains.84709 -Node: Network105121 -Node: Serial terminal107848 -Node: Vendor power-on keys110085 -Node: Images112020 -Node: Core image size limitation116995 -Node: Filesystem119559 -Node: Device syntax120268 -Node: File name syntax122969 -Node: Block list syntax124015 -Node: Interface124749 -Node: Command-line interface125573 -Node: Command-line interface-Footnotes127517 -Ref: Command-line interface-Footnote-1127606 -Node: Menu interface127701 -Node: Menu entry editor128713 -Node: Environment129451 -Node: Special environment variables130154 -Node: biosnum131208 -Node: check_signatures131732 -Node: chosen132019 -Node: cmdpath132462 -Node: color_highlight132889 -Node: color_normal133301 -Node: config_directory134964 -Node: config_file135258 -Node: debug135651 -Node: default136090 -Node: fallback137518 -Node: gfxmode137851 -Node: gfxpayload138649 -Node: gfxterm_font139803 -Node: grub_cpu140103 -Node: grub_platform140391 -Node: icondir140683 -Node: lang141000 -Node: locale_dir141469 -Node: menu_color_highlight141978 -Node: menu_color_normal142474 -Node: net__boot_file142975 -Node: net__dhcp_server_name143218 -Node: net__domain143480 -Node: net__extensionspath143727 -Node: net__hostname143982 -Node: net__ip144221 -Node: net__mac144437 -Node: net__next_server144658 -Node: net__rootpath144901 -Node: net_default_interface145140 -Node: net_default_ip145360 -Node: net_default_mac145557 -Node: net_default_server145753 -Node: pager145946 -Node: prefix146202 -Node: pxe_blksize146651 -Node: pxe_default_gateway146828 -Node: pxe_default_server147033 -Node: root147229 -Node: superusers147770 -Node: theme148018 -Node: timeout148339 -Node: timeout_style148976 -Node: Environment block149361 -Node: Commands150793 -Node: Menu-specific commands151663 -Node: menuentry152391 -Node: submenu153942 -Node: General commands154491 -Node: serial154987 -Node: terminal_input156038 -Node: terminal_output156704 -Node: terminfo157371 -Node: Command-line and menu entry commands158506 -Node: [163831 -Node: acpi164017 -Node: authenticate165074 -Node: background_color165501 -Node: background_image166174 -Node: badram166724 -Node: blocklist167777 -Node: boot168011 -Node: cat168333 -Node: chainloader168969 -Node: clear169597 -Node: cmosclean169783 -Node: cmosdump170087 -Node: cmostest170382 -Node: cmp170740 -Node: configfile171291 -Node: cpuid171716 -Node: crc172287 -Node: cryptomount172561 -Node: date173308 -Node: devicetree173857 -Node: distrust174254 -Node: drivemap175035 -Node: echo175842 -Node: eval176785 -Node: export177068 -Node: false177379 -Node: gettext177675 -Node: gptsync178122 -Node: halt179067 -Node: hashsum179398 -Node: help180624 -Node: initrd181091 -Node: initrd16181503 -Node: insmod182008 -Node: keystatus182230 -Node: linux182869 -Node: linux16183772 -Node: list_env184486 -Node: list_trusted184852 -Node: load_env185435 -Node: loadfont187108 -Node: loopback187479 -Node: ls187927 -Node: lsfonts188469 -Node: lsmod188651 -Node: md5sum188841 -Node: module189120 -Node: multiboot189432 -Node: nativedisk190540 -Node: normal190939 -Node: normal_exit191706 -Node: parttool192028 -Node: password193534 -Node: password_pbkdf2193816 -Node: play194224 -Node: probe194972 -Node: pxe_unload195354 -Node: rdmsr195635 -Node: read196423 -Node: reboot196767 -Node: regexp196950 -Node: rmmod197487 -Node: save_env197680 -Node: search198702 -Node: sendkey199480 -Node: set205906 -Node: sha1sum206208 -Node: sha256sum206493 -Node: sha512sum206792 -Node: sleep207089 -Node: source207546 -Node: test208098 -Node: true210867 -Node: trust211153 -Node: unset211945 -Node: uppermem212152 -Node: verify_detached212377 -Node: videoinfo213425 -Node: wrmsr213703 -Node: xen_hypervisor214357 -Node: xen_module214818 -Node: Networking commands215342 -Node: net_add_addr216294 -Node: net_add_dns216814 -Node: net_add_route217090 -Node: net_bootp217620 -Node: net_del_addr219209 -Node: net_del_dns219449 -Node: net_del_route219696 -Node: net_get_dhcp_option219941 -Node: net_ipv6_autoconf220427 -Node: net_ls_addr220846 -Node: net_ls_cards221094 -Node: net_ls_dns221330 -Node: net_ls_routes221561 -Node: net_nslookup221768 -Node: Internationalisation222052 -Node: Security228884 -Node: Authentication and authorisation229286 -Node: Using digital signatures232270 -Node: UEFI secure boot and shim235384 -Node: Measured Boot236273 -Node: Platform limitations238216 -Node: Platform-specific operations245806 -Node: Supported kernels246871 -Node: Troubleshooting254508 -Node: GRUB only offers a rescue shell254778 -Node: Firmware stalls instead of booting GRUB257787 -Node: Invoking grub-install258418 -Node: Invoking grub-mkconfig260588 -Node: Invoking grub-mkpasswd-pbkdf2261225 -Node: Invoking grub-mkrelpath261884 -Node: Invoking grub-mkrescue262657 -Node: Invoking grub-mount264406 -Node: Invoking grub-probe267455 -Node: Invoking grub-script-check270049 -Node: Obtaining and Building GRUB270793 -Node: Reporting bugs272036 -Node: Future274852 -Node: Copying This Manual275252 -Node: GNU Free Documentation License275480 -Node: Index297869 - -End Tag Table diff --git a/thirdparty/grub-2.04/docs/grub.texi b/thirdparty/grub-2.04/docs/grub.texi deleted file mode 100644 index 87795075a..000000000 --- a/thirdparty/grub-2.04/docs/grub.texi +++ /dev/null @@ -1,6765 +0,0 @@ -\input texinfo -@c -*-texinfo-*- -@c %**start of header -@setfilename grub.info -@include version.texi -@settitle GNU GRUB Manual @value{VERSION} -@c Unify all our little indices for now. -@syncodeindex fn cp -@syncodeindex vr cp -@syncodeindex ky cp -@syncodeindex pg cp -@syncodeindex tp cp -@c %**end of header - -@footnotestyle separate -@paragraphindent 3 -@finalout - -@copying -This manual is for GNU GRUB (version @value{VERSION}, -@value{UPDATED}). - -Copyright @copyright{} 1999,2000,2001,2002,2004,2006,2008,2009,2010,2011,2012,2013 Free Software Foundation, Inc. - -@quotation -Permission is granted to copy, distribute and/or modify this document -under the terms of the GNU Free Documentation License, Version 1.2 or -any later version published by the Free Software Foundation; with no -Invariant Sections. -@end quotation -@end copying - -@dircategory Kernel -@direntry -* GRUB: (grub). The GRand Unified Bootloader -* grub-install: (grub)Invoking grub-install. Install GRUB on your drive -* grub-mkconfig: (grub)Invoking grub-mkconfig. Generate GRUB configuration -* grub-mkpasswd-pbkdf2: (grub)Invoking grub-mkpasswd-pbkdf2. -* grub-mkrelpath: (grub)Invoking grub-mkrelpath. -* grub-mkrescue: (grub)Invoking grub-mkrescue. Make a GRUB rescue image -* grub-mount: (grub)Invoking grub-mount. Mount a file system using GRUB -* grub-probe: (grub)Invoking grub-probe. Probe device information -* grub-script-check: (grub)Invoking grub-script-check. -@end direntry - -@setchapternewpage odd - -@titlepage -@sp 10 -@title the GNU GRUB manual -@subtitle The GRand Unified Bootloader, version @value{VERSION}, @value{UPDATED}. -@author Gordon Matzigkeit -@author Yoshinori K. Okuji -@author Colin Watson -@author Colin D. Bennett -@c The following two commands start the copyright page. -@page -@vskip 0pt plus 1filll -@insertcopying -@end titlepage - -@c Output the table of contents at the beginning. -@contents - -@finalout -@headings double - -@ifnottex -@node Top -@top GNU GRUB manual - -This is the documentation of GNU GRUB, the GRand Unified Bootloader, -a flexible and powerful boot loader program for a wide range of -architectures. - -This edition documents version @value{VERSION}. - -@insertcopying -@end ifnottex - -@menu -* Introduction:: Capturing the spirit of GRUB -* Naming convention:: Names of your drives in GRUB -* OS-specific notes about grub tools:: - Some notes about OS-specific behaviour of GRUB - tools -* Installation:: Installing GRUB on your drive -* Booting:: How to boot different operating systems -* Configuration:: Writing your own configuration file -* Theme file format:: Format of GRUB theme files -* Network:: Downloading OS images from a network -* Serial terminal:: Using GRUB via a serial line -* Vendor power-on keys:: Changing GRUB behaviour on vendor power-on keys -* Images:: GRUB image files -* Core image size limitation:: GRUB image files size limitations -* Filesystem:: Filesystem syntax and semantics -* Interface:: The menu and the command-line -* Environment:: GRUB environment variables -* Commands:: The list of available builtin commands -* Internationalisation:: Topics relating to language support -* Security:: Authentication, authorisation, and signatures -* Platform limitations:: The list of platform-specific limitations -* Platform-specific operations:: Platform-specific operations -* Supported kernels:: The list of supported kernels -* Troubleshooting:: Error messages produced by GRUB -* Invoking grub-install:: How to use the GRUB installer -* Invoking grub-mkconfig:: Generate a GRUB configuration file -* Invoking grub-mkpasswd-pbkdf2:: - Generate GRUB password hashes -* Invoking grub-mkrelpath:: Make system path relative to its root -* Invoking grub-mkrescue:: Make a GRUB rescue image -* Invoking grub-mount:: Mount a file system using GRUB -* Invoking grub-probe:: Probe device information for GRUB -* Invoking grub-script-check:: Check GRUB script file for syntax errors -* Obtaining and Building GRUB:: How to obtain and build GRUB -* Reporting bugs:: Where you should send a bug report -* Future:: Some future plans on GRUB -* Copying This Manual:: Copying This Manual -* Index:: -@end menu - - -@node Introduction -@chapter Introduction to GRUB - -@menu -* Overview:: What exactly GRUB is and how to use it -* History:: From maggot to house fly -* Changes from GRUB Legacy:: Differences from previous versions -* Features:: GRUB features -* Role of a boot loader:: The role of a boot loader -@end menu - - -@node Overview -@section Overview - -Briefly, a @dfn{boot loader} is the first software program that runs when -a computer starts. It is responsible for loading and transferring -control to an operating system @dfn{kernel} software (such as Linux or -GNU Mach). The kernel, in turn, initializes the rest of the operating -system (e.g. a GNU system). - -GNU GRUB is a very powerful boot loader, which can load a wide variety -of free operating systems, as well as proprietary operating systems with -chain-loading@footnote{@dfn{chain-load} is the mechanism for loading -unsupported operating systems by loading another boot loader. It is -typically used for loading DOS or Windows.}. GRUB is designed to -address the complexity of booting a personal computer; both the -program and this manual are tightly bound to that computer platform, -although porting to other platforms may be addressed in the future. - -One of the important features in GRUB is flexibility; GRUB understands -filesystems and kernel executable formats, so you can load an arbitrary -operating system the way you like, without recording the physical -position of your kernel on the disk. Thus you can load the kernel -just by specifying its file name and the drive and partition where the -kernel resides. - -When booting with GRUB, you can use either a command-line interface -(@pxref{Command-line interface}), or a menu interface (@pxref{Menu -interface}). Using the command-line interface, you type the drive -specification and file name of the kernel manually. In the menu -interface, you just select an OS using the arrow keys. The menu is -based on a configuration file which you prepare beforehand -(@pxref{Configuration}). While in the menu, you can switch to the -command-line mode, and vice-versa. You can even edit menu entries -before using them. - -In the following chapters, you will learn how to specify a drive, a -partition, and a file name (@pxref{Naming convention}) to GRUB, how to -install GRUB on your drive (@pxref{Installation}), and how to boot your -OSes (@pxref{Booting}), step by step. - - -@node History -@section History of GRUB - -GRUB originated in 1995 when Erich Boleyn was trying to boot the GNU -Hurd with the University of Utah's Mach 4 microkernel (now known as GNU -Mach). Erich and Brian Ford designed the Multiboot Specification -(@pxref{Top, Multiboot Specification, Motivation, multiboot, The Multiboot -Specification}), because they were determined not to add to the large -number of mutually-incompatible PC boot methods. - -Erich then began modifying the FreeBSD boot loader so that it would -understand Multiboot. He soon realized that it would be a lot easier -to write his own boot loader from scratch than to keep working on the -FreeBSD boot loader, and so GRUB was born. - -Erich added many features to GRUB, but other priorities prevented him -from keeping up with the demands of its quickly-expanding user base. In -1999, Gordon Matzigkeit and Yoshinori K. Okuji adopted GRUB as an -official GNU package, and opened its development by making the latest -sources available via anonymous CVS. @xref{Obtaining and Building -GRUB}, for more information. - -Over the next few years, GRUB was extended to meet many needs, but it -quickly became clear that its design was not keeping up with the extensions -being made to it, and we reached the point where it was very difficult to -make any further changes without breaking existing features. Around 2002, -Yoshinori K. Okuji started work on PUPA (Preliminary Universal Programming -Architecture for GNU GRUB), aiming to rewrite the core of GRUB to make it -cleaner, safer, more robust, and more powerful. PUPA was eventually renamed -to GRUB 2, and the original version of GRUB was renamed to GRUB Legacy. -Small amounts of maintenance continued to be done on GRUB Legacy, but the -last release (0.97) was made in 2005 and at the time of writing it seems -unlikely that there will be another. - -By around 2007, GNU/Linux distributions started to use GRUB 2 to limited -extents, and by the end of 2009 multiple major distributions were installing -it by default. - - -@node Changes from GRUB Legacy -@section Differences from previous versions - -GRUB 2 is a rewrite of GRUB (@pxref{History}), although it shares many -characteristics with the previous version, now known as GRUB Legacy. Users -of GRUB Legacy may need some guidance to find their way around this new -version. - -@itemize @bullet -@item -The configuration file has a new name (@file{grub.cfg} rather than -@file{menu.lst} or @file{grub.conf}), new syntax (@pxref{Configuration}) and -many new commands (@pxref{Commands}). Configuration cannot be copied over -directly, although most GRUB Legacy users should not find the syntax too -surprising. - -@item -@file{grub.cfg} is typically automatically generated by -@command{grub-mkconfig} (@pxref{Simple configuration}). This makes it -easier to handle versioned kernel upgrades. - -@item -Partition numbers in GRUB device names now start at 1, not 0 (@pxref{Naming -convention}). - -@item -The configuration file is now written in something closer to a full -scripting language: variables, conditionals, and loops are available. - -@item -A small amount of persistent storage is available across reboots, using the -@command{save_env} and @command{load_env} commands in GRUB and the -@command{grub-editenv} utility. This is not available in all configurations -(@pxref{Environment block}). - -@item -GRUB 2 has more reliable ways to find its own files and those of target -kernels on multiple-disk systems, and has commands (@pxref{search}) to find -devices using file system labels or Universally Unique Identifiers (UUIDs). - -@item -GRUB 2 is available for several other types of system in addition to the PC -BIOS systems supported by GRUB Legacy: PC EFI, PC coreboot, PowerPC, SPARC, -and MIPS Lemote Yeeloong are all supported. - -@item -Many more file systems are supported, including but not limited to ext4, -HFS+, and NTFS. - -@item -GRUB 2 can read files directly from LVM and RAID devices. - -@item -A graphical terminal and a graphical menu system are available. - -@item -GRUB 2's interface can be translated, including menu entry names. - -@item -The image files (@pxref{Images}) that make up GRUB have been reorganised; -Stage 1, Stage 1.5, and Stage 2 are no more. - -@item -GRUB 2 puts many facilities in dynamically loaded modules, allowing the core -image to be smaller, and allowing the core image to be built in more -flexible ways. -@end itemize - - -@node Features -@section GRUB features - -The primary requirement for GRUB is that it be compliant with the -@dfn{Multiboot Specification}, which is described in @ref{Top, Multiboot -Specification, Motivation, multiboot, The Multiboot Specification}. - -The other goals, listed in approximate order of importance, are: - -@itemize @bullet{} -@item -Basic functions must be straightforward for end-users. - -@item -Rich functionality to support kernel experts and designers. - -@item -Backward compatibility for booting FreeBSD, NetBSD, OpenBSD, and -Linux. Proprietary kernels (such as DOS, Windows NT, and OS/2) are -supported via a chain-loading function. -@end itemize - -Except for specific compatibility modes (chain-loading and the Linux -@dfn{piggyback} format), all kernels will be started in much the same -state as in the Multiboot Specification. Only kernels loaded at 1 megabyte -or above are presently supported. Any attempt to load below that -boundary will simply result in immediate failure and an error message -reporting the problem. - -In addition to the requirements above, GRUB has the following features -(note that the Multiboot Specification doesn't require all the features -that GRUB supports): - -@table @asis -@item Recognize multiple executable formats -Support many of the @dfn{a.out} variants plus @dfn{ELF}. Symbol -tables are also loaded. - -@item Support non-Multiboot kernels -Support many of the various free 32-bit kernels that lack Multiboot -compliance (primarily FreeBSD, NetBSD@footnote{The NetBSD/i386 kernel -is Multiboot-compliant, but lacks support for Multiboot modules.}, -OpenBSD, and Linux). Chain-loading of other boot loaders is also -supported. - -@item Load multiples modules -Fully support the Multiboot feature of loading multiple modules. - -@item Load a configuration file -Support a human-readable text configuration file with preset boot -commands. You can also load another configuration file dynamically and -embed a preset configuration file in a GRUB image file. The list of -commands (@pxref{Commands}) are a superset of those supported on the -command-line. An example configuration file is provided in -@ref{Configuration}. - -@item Provide a menu interface -A menu interface listing preset boot commands, with a programmable -timeout, is available. There is no fixed limit on the number of boot -entries, and the current implementation has space for several hundred. - -@item Have a flexible command-line interface -A fairly flexible command-line interface, accessible from the menu, -is available to edit any preset commands, or write a new boot command -set from scratch. If no configuration file is present, GRUB drops to -the command-line. - -The list of commands (@pxref{Commands}) are a subset of those supported -for configuration files. Editing commands closely resembles the Bash -command-line (@pxref{Command Line Editing, Bash, Command Line Editing, -features, Bash Features}), with @key{TAB}-completion of commands, -devices, partitions, and files in a directory depending on context. - -@item Support multiple filesystem types -Support multiple filesystem types transparently, plus a useful explicit -blocklist notation. The currently supported filesystem types are @dfn{Amiga -Fast FileSystem (AFFS)}, @dfn{AtheOS fs}, @dfn{BeFS}, -@dfn{BtrFS} (including raid0, raid1, raid10, gzip and lzo), -@dfn{cpio} (little- and big-endian bin, odc and newc variants), -@dfn{Linux ext2/ext3/ext4}, @dfn{DOS FAT12/FAT16/FAT32}, -@dfn{exFAT}, @dfn{F2FS}, @dfn{HFS}, @dfn{HFS+}, -@dfn{ISO9660} (including Joliet, Rock-ridge and multi-chunk files), -@dfn{JFS}, @dfn{Minix fs} (versions 1, 2 and 3), @dfn{nilfs2}, -@dfn{NTFS} (including compression), @dfn{ReiserFS}, @dfn{ROMFS}, -@dfn{Amiga Smart FileSystem (SFS)}, @dfn{Squash4}, @dfn{tar}, @dfn{UDF}, -@dfn{BSD UFS/UFS2}, @dfn{XFS}, and @dfn{ZFS} (including lzjb, gzip, -zle, mirror, stripe, raidz1/2/3 and encryption in AES-CCM and AES-GCM). -@xref{Filesystem}, for more information. - -@item Support automatic decompression -Can decompress files which were compressed by @command{gzip} or -@command{xz}@footnote{Only CRC32 data integrity check is supported (xz default -is CRC64 so one should use --check=crc32 option). LZMA BCJ filters are -supported.}. This function is both automatic and transparent to the user -(i.e. all functions operate upon the uncompressed contents of the specified -files). This greatly reduces a file size and loading time, a -particularly great benefit for floppies.@footnote{There are a few -pathological cases where loading a very badly organized ELF kernel might -take longer, but in practice this never happen.} - -It is conceivable that some kernel modules should be loaded in a -compressed state, so a different module-loading command can be specified -to avoid uncompressing the modules. - -@item Access data on any installed device -Support reading data from any or all floppies or hard disk(s) recognized -by the BIOS, independent of the setting of the root device. - -@item Be independent of drive geometry translations -Unlike many other boot loaders, GRUB makes the particular drive -translation irrelevant. A drive installed and running with one -translation may be converted to another translation without any adverse -effects or changes in GRUB's configuration. - -@item Detect all installed @sc{ram} -GRUB can generally find all the installed @sc{ram} on a PC-compatible -machine. It uses an advanced BIOS query technique for finding all -memory regions. As described on the Multiboot Specification (@pxref{Top, -Multiboot Specification, Motivation, multiboot, The Multiboot -Specification}), not all kernels make use of this information, but GRUB -provides it for those who do. - -@item Support Logical Block Address mode -In traditional disk calls (called @dfn{CHS mode}), there is a geometry -translation problem, that is, the BIOS cannot access over 1024 -cylinders, so the accessible space is limited to at least 508 MB and to -at most 8GB. GRUB can't universally solve this problem, as there is no -standard interface used in all machines. However, several newer machines -have the new interface, Logical Block Address (@dfn{LBA}) mode. GRUB -automatically detects if LBA mode is available and uses it if -available. In LBA mode, GRUB can access the entire disk. - -@item Support network booting -GRUB is basically a disk-based boot loader but also has network -support. You can load OS images from a network by using the @dfn{TFTP} -protocol. - -@item Support remote terminals -To support computers with no console, GRUB provides remote terminal -support, so that you can control GRUB from a remote host. Only serial -terminal support is implemented at the moment. -@end table - - -@node Role of a boot loader -@section The role of a boot loader - -The following is a quotation from Gordon Matzigkeit, a GRUB fanatic: - -@quotation -Some people like to acknowledge both the operating system and kernel when -they talk about their computers, so they might say they use -``GNU/Linux'' or ``GNU/Hurd''. Other people seem to think that the -kernel is the most important part of the system, so they like to call -their GNU operating systems ``Linux systems.'' - -I, personally, believe that this is a grave injustice, because the -@emph{boot loader} is the most important software of all. I used to -refer to the above systems as either ``LILO''@footnote{The LInux LOader, -a boot loader that everybody uses, but nobody likes.} or ``GRUB'' -systems. - -Unfortunately, nobody ever understood what I was talking about; now I -just use the word ``GNU'' as a pseudonym for GRUB. - -So, if you ever hear people talking about their alleged ``GNU'' systems, -remember that they are actually paying homage to the best boot loader -around@dots{} GRUB! -@end quotation - -We, the GRUB maintainers, do not (usually) encourage Gordon's level of -fanaticism, but it helps to remember that boot loaders deserve -recognition. We hope that you enjoy using GNU GRUB as much as we did -writing it. - - -@node Naming convention -@chapter Naming convention - -The device syntax used in GRUB is a wee bit different from what you may -have seen before in your operating system(s), and you need to know it so -that you can specify a drive/partition. - -Look at the following examples and explanations: - -@example -(fd0) -@end example - -First of all, GRUB requires that the device name be enclosed with -@samp{(} and @samp{)}. The @samp{fd} part means that it is a floppy -disk. The number @samp{0} is the drive number, which is counted from -@emph{zero}. This expression means that GRUB will use the whole floppy -disk. - -@example -(hd0,msdos2) -@end example - -Here, @samp{hd} means it is a hard disk drive. The first integer -@samp{0} indicates the drive number, that is, the first hard disk, -the string @samp{msdos} indicates the partition scheme, while -the second integer, @samp{2}, indicates the partition number (or the -@sc{pc} slice number in the BSD terminology). The partition numbers are -counted from @emph{one}, not from zero (as was the case in previous -versions of GRUB). This expression means the second partition of the -first hard disk drive. In this case, GRUB uses one partition of the -disk, instead of the whole disk. - -@example -(hd0,msdos5) -@end example - -This specifies the first @dfn{extended partition} of the first hard disk -drive. Note that the partition numbers for extended partitions are -counted from @samp{5}, regardless of the actual number of primary -partitions on your hard disk. - -@example -(hd1,msdos1,bsd1) -@end example - -This means the BSD @samp{a} partition on first @sc{pc} slice number -of the second hard disk. - -Of course, to actually access the disks or partitions with GRUB, you -need to use the device specification in a command, like @samp{set -root=(fd0)} or @samp{parttool (hd0,msdos3) hidden-}. To help you find out -which number specifies a partition you want, the GRUB command-line -(@pxref{Command-line interface}) options have argument -completion. This means that, for example, you only need to type - -@example -set root=( -@end example - -followed by a @key{TAB}, and GRUB will display the list of drives, -partitions, or file names. So it should be quite easy to determine the -name of your target partition, even with minimal knowledge of the -syntax. - -Note that GRUB does @emph{not} distinguish IDE from SCSI - it simply -counts the drive numbers from zero, regardless of their type. Normally, -any IDE drive number is less than any SCSI drive number, although that -is not true if you change the boot sequence by swapping IDE and SCSI -drives in your BIOS. - -Now the question is, how to specify a file? Again, consider an -example: - -@example -(hd0,msdos1)/vmlinuz -@end example - -This specifies the file named @samp{vmlinuz}, found on the first -partition of the first hard disk drive. Note that the argument -completion works with file names, too. - -That was easy, admit it. Now read the next chapter, to find out how to -actually install GRUB on your drive. - -@node OS-specific notes about grub tools -@chapter OS-specific notes about grub tools - -On OS which have device nodes similar to Unix-like OS GRUB tools use the -OS name. E.g. for GNU/Linux: - -@example -# @kbd{grub-install /dev/sda} -@end example - -On AROS we use another syntax. For volumes: - -@example -//: -@end example - -E.g. - -@example -//:DH0 -@end example - -For disks we use syntax: -@example -//:/unit/flags -@end example - -E.g. - -@example -# @kbd{grub-install //:ata.device/0/0} -@end example - -On Windows we use UNC path. For volumes it's typically - -@example -\\?\Volume@{@} -\\?\: -@end example - -E.g. - -@example -\\?\Volume@{17f34d50-cf64-4b02-800e-51d79c3aa2ff@} -\\?\C: -@end example - - -For disks it's - -@example -\\?\PhysicalDrive -@end example - -E.g. - -@example -# @kbd{grub-install \\?\PhysicalDrive0} -@end example - -Beware that you may need to further escape the backslashes depending on your -shell. - -When compiled with cygwin support then cygwin drive names are automatically -when needed. E.g. - -@example -# @kbd{grub-install /dev/sda} -@end example - -@node Installation -@chapter Installation - -In order to install GRUB as your boot loader, you need to first -install the GRUB system and utilities under your UNIX-like operating -system (@pxref{Obtaining and Building GRUB}). You can do this either -from the source tarball, or as a package for your OS. - -After you have done that, you need to install the boot loader on a -drive (floppy or hard disk) by using the utility -@command{grub-install} (@pxref{Invoking grub-install}) on a UNIX-like OS. - -GRUB comes with boot images, which are normally put in the directory -@file{/usr/lib/grub/-} (for BIOS-based machines -@file{/usr/lib/grub/i386-pc}). Hereafter, the directory where GRUB images are -initially placed (normally @file{/usr/lib/grub/-}) will be -called the @dfn{image directory}, and the directory where the boot -loader needs to find them (usually @file{/boot}) will be called -the @dfn{boot directory}. - -@menu -* Installing GRUB using grub-install:: -* Making a GRUB bootable CD-ROM:: -* Device map:: -* BIOS installation:: -@end menu - - -@node Installing GRUB using grub-install -@section Installing GRUB using grub-install - -For information on where GRUB should be installed on PC BIOS platforms, -@pxref{BIOS installation}. - -In order to install GRUB under a UNIX-like OS (such -as @sc{gnu}), invoke the program @command{grub-install} (@pxref{Invoking -grub-install}) as the superuser (@dfn{root}). - -The usage is basically very simple. You only need to specify one -argument to the program, namely, where to install the boot loader. The -argument has to be either a device file (like @samp{/dev/hda}). -For example, under Linux the following will install GRUB into the MBR -of the first IDE disk: - -@example -# @kbd{grub-install /dev/sda} -@end example - -Likewise, under GNU/Hurd, this has the same effect: - -@example -# @kbd{grub-install /dev/hd0} -@end example - -But all the above examples assume that GRUB should put images under -the @file{/boot} directory. If you want GRUB to put images under a directory -other than @file{/boot}, you need to specify the option -@option{--boot-directory}. The typical usage is that you create a GRUB -boot floppy with a filesystem. Here is an example: - -@example -@group -# @kbd{mke2fs /dev/fd0} -# @kbd{mount -t ext2 /dev/fd0 /mnt} -# @kbd{mkdir /mnt/boot} -# @kbd{grub-install --boot-directory=/mnt/boot /dev/fd0} -# @kbd{umount /mnt} -@end group -@end example - -Some BIOSes have a bug of exposing the first partition of a USB drive as a -floppy instead of exposing the USB drive as a hard disk (they call it -``USB-FDD'' boot). In such cases, you need to install like this: - -@example -# @kbd{losetup /dev/loop0 /dev/sdb1} -# @kbd{mount /dev/loop0 /mnt/usb} -# @kbd{grub-install --boot-directory=/mnt/usb/bugbios --force --allow-floppy /dev/loop0} -@end example - -This install doesn't conflict with standard install as long as they are in -separate directories. - -Note that @command{grub-install} is actually just a shell script and the -real task is done by other tools such as @command{grub-mkimage}. Therefore, -you may run those commands directly to install GRUB, without using -@command{grub-install}. Don't do that, however, unless you are very familiar -with the internals of GRUB. Installing a boot loader on a running OS may be -extremely dangerous. - -On EFI systems for fixed disk install you have to mount EFI System Partition. -If you mount it at @file{/boot/efi} then you don't need any special arguments: - -@example -# @kbd{grub-install} -@end example - -Otherwise you need to specify where your EFI System partition is mounted: - -@example -# @kbd{grub-install --efi-directory=/mnt/efi} -@end example - -For removable installs you have to use @option{--removable} and specify both -@option{--boot-directory} and @option{--efi-directory}: - -@example -# @kbd{grub-install --efi-directory=/mnt/usb --boot-directory=/mnt/usb/boot --removable} -@end example - -@node Making a GRUB bootable CD-ROM -@section Making a GRUB bootable CD-ROM - -GRUB supports the @dfn{no emulation mode} in the El Torito -specification@footnote{El Torito is a specification for bootable CD -using BIOS functions.}. This means that you can use the whole CD-ROM -from GRUB and you don't have to make a floppy or hard disk image file, -which can cause compatibility problems. - -For booting from a CD-ROM, GRUB uses a special image called -@file{cdboot.img}, which is concatenated with @file{core.img}. The -@file{core.img} used for this should be built with at least the -@samp{iso9660} and @samp{biosdisk} modules. Your bootable CD-ROM will -usually also need to include a configuration file @file{grub.cfg} and some -other GRUB modules. - -To make a simple generic GRUB rescue CD, you can use the -@command{grub-mkrescue} program (@pxref{Invoking grub-mkrescue}): - -@example -$ @kbd{grub-mkrescue -o grub.iso} -@end example - -You will often need to include other files in your image. To do this, first -make a top directory for the bootable image, say, @samp{iso}: - -@example -$ @kbd{mkdir iso} -@end example - -Make a directory for GRUB: - -@example -$ @kbd{mkdir -p iso/boot/grub} -@end example - -If desired, make the config file @file{grub.cfg} under @file{iso/boot/grub} -(@pxref{Configuration}), and copy any files and directories for the disc to the -directory @file{iso/}. - -Finally, make the image: - -@example -$ @kbd{grub-mkrescue -o grub.iso iso} -@end example - -This produces a file named @file{grub.iso}, which then can be burned -into a CD (or a DVD), or written to a USB mass storage device. - -The root device will be set up appropriately on entering your -@file{grub.cfg} configuration file, so you can refer to file names on the CD -without needing to use an explicit device name. This makes it easier to -produce rescue images that will work on both optical drives and USB mass -storage devices. - - -@node Device map -@section The map between BIOS drives and OS devices - -If the device map file exists, the GRUB utilities (@command{grub-probe}, -etc.) read it to map BIOS drives to OS devices. This file consists of lines -like this: - -@example -(@var{device}) @var{file} -@end example - -@var{device} is a drive specified in the GRUB syntax (@pxref{Device -syntax}), and @var{file} is an OS file, which is normally a device file. - -Historically, the device map file was used because GRUB device names had to -be used in the configuration file, and they were derived from BIOS drive -numbers. The map between BIOS drives and OS devices cannot always be -guessed correctly: for example, GRUB will get the order wrong if you -exchange the boot sequence between IDE and SCSI in your BIOS. - -Unfortunately, even OS device names are not always stable. Modern versions -of the Linux kernel may probe drives in a different order from boot to boot, -and the prefix (@file{/dev/hd*} versus @file{/dev/sd*}) may change depending -on the driver subsystem in use. As a result, the device map file required -frequent editing on some systems. - -GRUB avoids this problem nowadays by using UUIDs or file system labels when -generating @file{grub.cfg}, and we advise that you do the same for any -custom menu entries you write. If the device map file does not exist, then -the GRUB utilities will assume a temporary device map on the fly. This is -often good enough, particularly in the common case of single-disk systems. - -However, the device map file is not entirely obsolete yet, and it is -used for overriding when current environment is different from the one on boot. -Most common case is if you use a partition or logical volume as a disk for -virtual machine. You can put any comments in the file if needed, -as the GRUB utilities assume that a line is just a comment if -the first character is @samp{#}. - - -@node BIOS installation -@section BIOS installation - -@heading MBR - -The partition table format traditionally used on PC BIOS platforms is called -the Master Boot Record (MBR) format; this is the format that allows up to -four primary partitions and additional logical partitions. With this -partition table format, there are two ways to install GRUB: it can be -embedded in the area between the MBR and the first partition (called by -various names, such as the "boot track", "MBR gap", or "embedding area", and -which is usually at least 31 KiB), or the core image can be installed in a -file system and a list of the blocks that make it up can be stored in the -first sector of that partition. - -Each of these has different problems. There is no way to reserve space in -the embedding area with complete safety, and some proprietary software is -known to use it to make it difficult for users to work around licensing -restrictions; and systems are sometimes partitioned without leaving enough -space before the first partition. On the other hand, installing to a -filesystem means that GRUB is vulnerable to its blocks being moved around by -filesystem features such as tail packing, or even by aggressive fsck -implementations, so this approach is quite fragile; and this approach can -only be used if the @file{/boot} filesystem is on the same disk that the -BIOS boots from, so that GRUB does not have to rely on guessing BIOS drive -numbers. - -The GRUB development team generally recommends embedding GRUB before the -first partition, unless you have special requirements. You must ensure that -the first partition starts at least 31 KiB (63 sectors) from the start of -the disk; on modern disks, it is often a performance advantage to align -partitions on larger boundaries anyway, so the first partition might start 1 -MiB from the start of the disk. - -@heading GPT - -Some newer systems use the GUID Partition Table (GPT) format. This was -specified as part of the Extensible Firmware Interface (EFI), but it can -also be used on BIOS platforms if system software supports it; for example, -GRUB and GNU/Linux can be used in this configuration. With this format, it -is possible to reserve a whole partition for GRUB, called the BIOS Boot -Partition. GRUB can then be embedded into that partition without the risk -of being overwritten by other software and without being contained in a -filesystem which might move its blocks around. - -When creating a BIOS Boot Partition on a GPT system, you should make sure -that it is at least 31 KiB in size. (GPT-formatted disks are not usually -particularly small, so we recommend that you make it larger than the bare -minimum, such as 1 MiB, to allow plenty of room for growth.) You must also -make sure that it has the proper partition type. Using GNU Parted, you can -set this using a command such as the following: - -@example -# @kbd{parted /dev/@var{disk} set @var{partition-number} bios_grub on} -@end example - -If you are using gdisk, set the partition type to @samp{0xEF02}. With -partitioning programs that require setting the GUID directly, it should be -@samp{21686148-6449-6e6f-744e656564454649}. - -@strong{Caution:} Be very careful which partition you select! When GRUB -finds a BIOS Boot Partition during installation, it will automatically -overwrite part of it. Make sure that the partition does not contain any -other data. - - -@node Booting -@chapter Booting - -GRUB can load Multiboot-compliant kernels in a consistent way, -but for some free operating systems you need to use some OS-specific -magic. - -@menu -* General boot methods:: How to boot OSes with GRUB generally -* Loopback booting:: Notes on booting from loopbacks -* OS-specific notes:: Notes on some operating systems -@end menu - - -@node General boot methods -@section How to boot operating systems - -GRUB has two distinct boot methods. One of the two is to load an -operating system directly, and the other is to chain-load another boot -loader which then will load an operating system actually. Generally -speaking, the former is more desirable, because you don't need to -install or maintain other boot loaders and GRUB is flexible enough to -load an operating system from an arbitrary disk/partition. However, -the latter is sometimes required, since GRUB doesn't support all the -existing operating systems natively. - -@menu -* Loading an operating system directly:: -* Chain-loading:: -@end menu - - -@node Loading an operating system directly -@subsection How to boot an OS directly with GRUB - -Multiboot (@pxref{Top, Multiboot Specification, Motivation, multiboot, -The Multiboot Specification}) is the native format supported by GRUB. -For the sake of convenience, there is also support for Linux, FreeBSD, -NetBSD and OpenBSD. If you want to boot other operating systems, you -will have to chain-load them (@pxref{Chain-loading}). - -FIXME: this section is incomplete. - -@enumerate -@item -Run the command @command{boot} (@pxref{boot}). -@end enumerate - -However, DOS and Windows have some deficiencies, so you might have to -use more complicated instructions. @xref{DOS/Windows}, for more -information. - - -@node Chain-loading -@subsection Chain-loading an OS - -Operating systems that do not support Multiboot and do not have specific -support in GRUB (specific support is available for Linux, FreeBSD, NetBSD -and OpenBSD) must be chain-loaded, which involves loading another boot -loader and jumping to it in real mode. - -The @command{chainloader} command (@pxref{chainloader}) is used to set this -up. It is normally also necessary to load some GRUB modules and set the -appropriate root device. Putting this together, we get something like this, -for a Windows system on the first partition of the first hard disk: - -@verbatim -menuentry "Windows" { - insmod chain - insmod ntfs - set root=(hd0,1) - chainloader +1 -} -@end verbatim -@c FIXME: document UUIDs. - -On systems with multiple hard disks, an additional workaround may be -required. @xref{DOS/Windows}. - -Chain-loading is only supported on PC BIOS and EFI platforms. - -@node Loopback booting -@section Loopback booting -GRUB is able to read from an image (be it one of CD or HDD) stored on -any of its accessible storages (refer to @pxref{loopback} command). -However the OS itself should be able to find its root. This usually -involves running a userspace program running before the real root -is discovered. This is achieved by GRUB loading a specially made -small image and passing it as ramdisk to the kernel. This is achieved -by commands @command{kfreebsd_module}, @command{knetbsd_module_elf}, -@command{kopenbsd_ramdisk}, @command{initrd} (@pxref{initrd}), -@command{initrd16} (@pxref{initrd}), @command{multiboot_module}, -@command{multiboot2_module} or @command{xnu_ramdisk} -depending on the loader. Note that for knetbsd the image must be put -inside miniroot.kmod and the whole miniroot.kmod has to be loaded. In -kopenbsd payload this is disabled by default. Aditionally behaviour of -initial ramdisk depends on command line options. Several distributors provide -the image for this purpose or it's integrated in their standard ramdisk and -activated by special option. Consult your kernel and distribution manual for -more details. Other loaders like appleloader, chainloader (BIOS, EFI, coreboot), -freedos, ntldr and plan9 provide no possibility of loading initial ramdisk and -as far as author is aware the payloads in question don't support either initial -ramdisk or discovering loopback boot in other way and as such not bootable this -way. Please consider alternative boot methods like copying all files -from the image to actual partition. Consult your OS documentation for -more details - -@node OS-specific notes -@section Some caveats on OS-specific issues - -Here, we describe some caveats on several operating systems. - -@menu -* GNU/Hurd:: -* GNU/Linux:: -* NetBSD:: -* DOS/Windows:: -@end menu - - -@node GNU/Hurd -@subsection GNU/Hurd - -Since GNU/Hurd is Multiboot-compliant, it is easy to boot it; there is -nothing special about it. But do not forget that you have to specify a -root partition to the kernel. - -@enumerate -@item -Set GRUB's root device to the same drive as GNU/Hurd's. The command -@code{search --set=root --file /boot/gnumach.gz} or similar may help you -(@pxref{search}). - -@item -Load the kernel and the modules, like this: - -@example -@group -grub> @kbd{multiboot /boot/gnumach.gz root=device:hd0s1} -grub> @kbd{module /hurd/ext2fs.static ext2fs --readonly \ - --multiboot-command-line='$@{kernel-command-line@}' \ - --host-priv-port='$@{host-port@}' \ - --device-master-port='$@{device-port@}' \ - --exec-server-task='$@{exec-task@}' -T typed '$@{root@}' \ - '$(task-create)' '$(task-resume)'} -grub> @kbd{module /lib/ld.so.1 exec /hurd/exec '$(exec-task=task-create)'} -@end group -@end example - -@item -Finally, run the command @command{boot} (@pxref{boot}). -@end enumerate - - -@node GNU/Linux -@subsection GNU/Linux - -It is relatively easy to boot GNU/Linux from GRUB, because it somewhat -resembles to boot a Multiboot-compliant OS. - -@enumerate -@item -Set GRUB's root device to the same drive as GNU/Linux's. The command -@code{search --set=root --file /vmlinuz} or similar may help you -(@pxref{search}). - -@item -Load the kernel using the command @command{linux} (@pxref{linux}): - -@example -grub> @kbd{linux /vmlinuz root=/dev/sda1} -@end example - -If you need to specify some kernel parameters, just append them to the -command. For example, to set @option{acpi} to @samp{off}, do this: - -@example -grub> @kbd{linux /vmlinuz root=/dev/sda1 acpi=off} -@end example - -See the documentation in the Linux source tree for complete information on -the available options. - -With @command{linux} GRUB uses 32-bit protocol. Some BIOS services like APM -or EDD aren't available with this protocol. In this case you need to use -@command{linux16} - -@example -grub> @kbd{linux16 /vmlinuz root=/dev/sda1 acpi=off} -@end example - -@item -If you use an initrd, execute the command @command{initrd} (@pxref{initrd}) -after @command{linux}: - -@example -grub> @kbd{initrd /initrd} -@end example - -If you used @command{linux16} you need to use @command{initrd16}: - -@example -grub> @kbd{initrd16 /initrd} -@end example - -@item -Finally, run the command @command{boot} (@pxref{boot}). -@end enumerate - -@strong{Caution:} If you use an initrd and specify the @samp{mem=} -option to the kernel to let it use less than actual memory size, you -will also have to specify the same memory size to GRUB. To let GRUB know -the size, run the command @command{uppermem} @emph{before} loading the -kernel. @xref{uppermem}, for more information. - - -@node NetBSD -@subsection NetBSD - -Booting a NetBSD kernel from GRUB is also relatively easy: first set -GRUB's root device, then load the kernel and the modules, and finally -run @command{boot}. - -@enumerate -@item -Set GRUB's root device to the partition holding the NetBSD root file -system. For a disk with a NetBSD disk label, this is usually the first -partition (a:). In that case, and assuming that the partition is on the -first hard disk, set GRUB's root device as follows: - -@example -grub> @kbd{insmod part_bsd} -grub> @kbd{set root=(hd0,netbsd1)} -@end example - -For a disk with a GUID Partition Table (GPT), and assuming that the -NetBSD root partition is the third GPT partition, do this: - -@example -grub> @kbd{insmod part_gpt} -grub> @kbd{set root=(hd0,gpt3)} -@end example - -@item -Load the kernel using the command @command{knetbsd}: - -@example -grub> @kbd{knetbsd /netbsd} -@end example - -Various options may be given to @command{knetbsd}. These options are, -for the most part, the same as in the NetBSD boot loader. For instance, -to boot the system in single-user mode and with verbose messages, do -this: - -@example -grub> @kbd{knetbsd /netbsd -s -v} -@end example - -@item -If needed, load kernel modules with the command -@command{knetbsd_module_elf}. A typical example is the module for the -root file system: - -@example -grub> @kbd{knetbsd_module_elf /stand/amd64/6.0/modules/ffs/ffs.kmod} -@end example - -@item -Finally, run the command @command{boot} (@pxref{boot}). -@end enumerate - - -@node DOS/Windows -@subsection DOS/Windows - -GRUB cannot boot DOS or Windows directly, so you must chain-load them -(@pxref{Chain-loading}). However, their boot loaders have some critical -deficiencies, so it may not work to just chain-load them. To overcome -the problems, GRUB provides you with two helper functions. - -If you have installed DOS (or Windows) on a non-first hard disk, you -have to use the disk swapping technique, because that OS cannot boot -from any disks but the first one. The workaround used in GRUB is the -command @command{drivemap} (@pxref{drivemap}), like this: - -@example -drivemap -s (hd0) (hd1) -@end example - -This performs a @dfn{virtual} swap between your first and second hard -drive. - -@strong{Caution:} This is effective only if DOS (or Windows) uses BIOS -to access the swapped disks. If that OS uses a special driver for the -disks, this probably won't work. - -Another problem arises if you installed more than one set of DOS/Windows -onto one disk, because they could be confused if there are more than one -primary partitions for DOS/Windows. Certainly you should avoid doing -this, but there is a solution if you do want to do so. Use the partition -hiding/unhiding technique. - -If GRUB @dfn{hides} a DOS (or Windows) partition (@pxref{parttool}), DOS (or -Windows) will ignore the partition. If GRUB @dfn{unhides} a DOS (or Windows) -partition, DOS (or Windows) will detect the partition. Thus, if you have -installed DOS (or Windows) on the first and the second partition of the -first hard disk, and you want to boot the copy on the first partition, do -the following: - -@example -@group -parttool (hd0,1) hidden- -parttool (hd0,2) hidden+ -set root=(hd0,1) -chainloader +1 -parttool @verb{'${root}'} boot+ -boot -@end group -@end example - - -@node Configuration -@chapter Writing your own configuration file - -GRUB is configured using @file{grub.cfg}, usually located under -@file{/boot/grub}. This file is quite flexible, but most users will not -need to write the whole thing by hand. - -@menu -* Simple configuration:: Recommended for most users -* Root Identifcation Heuristics:: Summary on how the root file system is identified. -* Shell-like scripting:: For power users and developers -* Multi-boot manual config:: For non-standard multi-OS scenarios -* Embedded configuration:: Embedding a configuration file into GRUB -@end menu - - -@node Simple configuration -@section Simple configuration handling - -The program @command{grub-mkconfig} (@pxref{Invoking grub-mkconfig}) -generates @file{grub.cfg} files suitable for most cases. It is suitable for -use when upgrading a distribution, and will discover available kernels and -attempt to generate menu entries for them. - -@command{grub-mkconfig} does have some limitations. While adding extra -custom menu entries to the end of the list can be done by editing -@file{/etc/grub.d/40_custom} or creating @file{/boot/grub/custom.cfg}, -changing the order of menu entries or changing their titles may require -making complex changes to shell scripts stored in @file{/etc/grub.d/}. This -may be improved in the future. In the meantime, those who feel that it -would be easier to write @file{grub.cfg} directly are encouraged to do so -(@pxref{Booting}, and @ref{Shell-like scripting}), and to disable any system -provided by their distribution to automatically run @command{grub-mkconfig}. - -The file @file{/etc/default/grub} controls the operation of -@command{grub-mkconfig}. It is sourced by a shell script, and so must be -valid POSIX shell input; normally, it will just be a sequence of -@samp{KEY=value} lines, but if the value contains spaces or other special -characters then it must be quoted. For example: - -@example -GRUB_TERMINAL_INPUT="console serial" -@end example - -Valid keys in @file{/etc/default/grub} are as follows: - -@table @samp -@item GRUB_DEFAULT -The default menu entry. This may be a number, in which case it identifies -the Nth entry in the generated menu counted from zero, or the title of a -menu entry, or the special string @samp{saved}. Using the id may be -useful if you want to set a menu entry as the default even though there may -be a variable number of entries before it. - -For example, if you have: - -@verbatim -menuentry 'Example GNU/Linux distribution' --class gnu-linux --id example-gnu-linux { - ... -} -@end verbatim - -then you can make this the default using: - -@example -GRUB_DEFAULT=example-gnu-linux -@end example - -Previously it was documented the way to use entry title. While this still -works it's not recommended since titles often contain unstable device names -and may be translated - -If you set this to @samp{saved}, then the default menu entry will be that -saved by @samp{GRUB_SAVEDEFAULT} or @command{grub-set-default}. This relies on -the environment block, which may not be available in all situations -(@pxref{Environment block}). - -The default is @samp{0}. - -@item GRUB_SAVEDEFAULT -If this option is set to @samp{true}, then, when an entry is selected, save -it as a new default entry for use by future runs of GRUB. This is only -useful if @samp{GRUB_DEFAULT=saved}; it is a separate option because -@samp{GRUB_DEFAULT=saved} is useful without this option, in conjunction with -@command{grub-set-default}. Unset by default. -This option relies on the environment block, which may not be available in -all situations (@pxref{Environment block}). - -@item GRUB_TIMEOUT -Boot the default entry this many seconds after the menu is displayed, unless -a key is pressed. The default is @samp{5}. Set to @samp{0} to boot -immediately without displaying the menu, or to @samp{-1} to wait -indefinitely. - -If @samp{GRUB_TIMEOUT_STYLE} is set to @samp{countdown} or @samp{hidden}, -the timeout is instead counted before the menu is displayed. - -@item GRUB_TIMEOUT_STYLE -If this option is unset or set to @samp{menu}, then GRUB will display the -menu and then wait for the timeout set by @samp{GRUB_TIMEOUT} to expire -before booting the default entry. Pressing a key interrupts the timeout. - -If this option is set to @samp{countdown} or @samp{hidden}, then, before -displaying the menu, GRUB will wait for the timeout set by -@samp{GRUB_TIMEOUT} to expire. If @key{ESC} is pressed during that time, it -will display the menu and wait for input. If a hotkey associated with a -menu entry is pressed, it will boot the associated menu entry immediately. -If the timeout expires before either of these happens, it will boot the -default entry. In the @samp{countdown} case, it will show a one-line -indication of the remaining time. - -@item GRUB_DEFAULT_BUTTON -@itemx GRUB_TIMEOUT_BUTTON -@itemx GRUB_TIMEOUT_STYLE_BUTTON -@itemx GRUB_BUTTON_CMOS_ADDRESS -Variants of the corresponding variables without the @samp{_BUTTON} suffix, -used to support vendor-specific power buttons. @xref{Vendor power-on keys}. - -@item GRUB_DISTRIBUTOR -Set by distributors of GRUB to their identifying name. This is used to -generate more informative menu entry titles. - -@item GRUB_TERMINAL_INPUT -Select the terminal input device. You may select multiple devices here, -separated by spaces. - -Valid terminal input names depend on the platform, but may include -@samp{console} (native platform console), @samp{serial} (serial terminal), -@samp{serial_} (serial terminal with explicit port selection), -@samp{at_keyboard} (PC AT keyboard), or @samp{usb_keyboard} (USB keyboard -using the HID Boot Protocol, for cases where the firmware does not handle -this). - -The default is to use the platform's native terminal input. - -@item GRUB_TERMINAL_OUTPUT -Select the terminal output device. You may select multiple devices here, -separated by spaces. - -Valid terminal output names depend on the platform, but may include -@samp{console} (native platform console), @samp{serial} (serial terminal), -@samp{serial_} (serial terminal with explicit port selection), -@samp{gfxterm} (graphics-mode output), @samp{vga_text} (VGA text output), -@samp{mda_text} (MDA text output), @samp{morse} (Morse-coding using system -beeper) or @samp{spkmodem} (simple data protocol using system speaker). - -@samp{spkmodem} is useful when no serial port is available. Connect the output -of sending system (where GRUB is running) to line-in of receiving system -(usually developer machine). -On receiving system compile @samp{spkmodem-recv} from -@samp{util/spkmodem-recv.c} and run: - -@example -parecord --channels=1 --rate=48000 --format=s16le | ./spkmodem-recv -@end example - -The default is to use the platform's native terminal output. - -@item GRUB_TERMINAL -If this option is set, it overrides both @samp{GRUB_TERMINAL_INPUT} and -@samp{GRUB_TERMINAL_OUTPUT} to the same value. - -@item GRUB_SERIAL_COMMAND -A command to configure the serial port when using the serial console. -@xref{serial}. Defaults to @samp{serial}. - -@item GRUB_CMDLINE_LINUX -Command-line arguments to add to menu entries for the Linux kernel. - -@item GRUB_CMDLINE_LINUX_DEFAULT -Unless @samp{GRUB_DISABLE_RECOVERY} is set to @samp{true}, two menu -entries will be generated for each Linux kernel: one default entry and one -entry for recovery mode. This option lists command-line arguments to add -only to the default menu entry, after those listed in -@samp{GRUB_CMDLINE_LINUX}. - -@item GRUB_CMDLINE_NETBSD -@itemx GRUB_CMDLINE_NETBSD_DEFAULT -As @samp{GRUB_CMDLINE_LINUX} and @samp{GRUB_CMDLINE_LINUX_DEFAULT}, but for -NetBSD. - -@item GRUB_CMDLINE_GNUMACH -As @samp{GRUB_CMDLINE_LINUX}, but for GNU Mach. - -@item GRUB_CMDLINE_XEN -@itemx GRUB_CMDLINE_XEN_DEFAULT -The values of these options are passed to Xen hypervisor Xen menu entries, -for all respectively normal entries. - -@item GRUB_CMDLINE_LINUX_XEN_REPLACE -@item GRUB_CMDLINE_LINUX_XEN_REPLACE_DEFAULT -The values of these options replace the values of @samp{GRUB_CMDLINE_LINUX} -and @samp{GRUB_CMDLINE_LINUX_DEFAULT} for Linux and Xen menu entries. - -@item GRUB_EARLY_INITRD_LINUX_CUSTOM -@itemx GRUB_EARLY_INITRD_LINUX_STOCK -List of space-separated early initrd images to be loaded from @samp{/boot}. -This is for loading things like CPU microcode, firmware, ACPI tables, crypto -keys, and so on. These early images will be loaded in the order declared, -and all will be loaded before the actual functional initrd image. - -@samp{GRUB_EARLY_INITRD_LINUX_STOCK} is for your distribution to declare -images that are provided by the distribution. It should not be modified -without understanding the consequences. They will be loaded first. - -@samp{GRUB_EARLY_INITRD_LINUX_CUSTOM} is for your custom created images. - -The default stock images are as follows, though they may be overridden by -your distribution: -@example -intel-uc.img intel-ucode.img amd-uc.img amd-ucode.img early_ucode.cpio microcode.cpio -@end example - -@item GRUB_DISABLE_LINUX_UUID -Normally, @command{grub-mkconfig} will generate menu entries that use -universally-unique identifiers (UUIDs) to identify the root filesystem to -the Linux kernel, using a @samp{root=UUID=...} kernel parameter. This is -usually more reliable, but in some cases it may not be appropriate. To -disable the use of UUIDs, set this option to @samp{true}. - -@item GRUB_DISABLE_LINUX_PARTUUID -If @command{grub-mkconfig} cannot identify the root filesystem via its -universally-unique indentifier (UUID), @command{grub-mkconfig} can use the UUID -of the partition containing the filesystem to identify the root filesystem to -the Linux kernel via a @samp{root=PARTUUID=...} kernel parameter. This is not -as reliable as using the filesystem UUID, but is more reliable than using the -Linux device names. When @samp{GRUB_DISABLE_LINUX_PARTUUID} is set to -@samp{false}, the Linux kernel version must be 2.6.37 (3.10 for systems using -the MSDOS partition scheme) or newer. This option defaults to @samp{true}. To -enable the use of partition UUIDs, set this option to @samp{false}. - -@item GRUB_DISABLE_RECOVERY -If this option is set to @samp{true}, disable the generation of recovery -mode menu entries. - -@item GRUB_VIDEO_BACKEND -If graphical video support is required, either because the @samp{gfxterm} -graphical terminal is in use or because @samp{GRUB_GFXPAYLOAD_LINUX} is set, -then @command{grub-mkconfig} will normally load all available GRUB video -drivers and use the one most appropriate for your hardware. If you need to -override this for some reason, then you can set this option. - -After @command{grub-install} has been run, the available video drivers are -listed in @file{/boot/grub/video.lst}. - -@item GRUB_GFXMODE -Set the resolution used on the @samp{gfxterm} graphical terminal. Note that -you can only use modes which your graphics card supports via VESA BIOS -Extensions (VBE), so for example native LCD panel resolutions may not be -available. The default is @samp{auto}, which tries to select a preferred -resolution. @xref{gfxmode}. - -@item GRUB_BACKGROUND -Set a background image for use with the @samp{gfxterm} graphical terminal. -The value of this option must be a file readable by GRUB at boot time, and -it must end with @file{.png}, @file{.tga}, @file{.jpg}, or @file{.jpeg}. -The image will be scaled if necessary to fit the screen. - -@item GRUB_THEME -Set a theme for use with the @samp{gfxterm} graphical terminal. - -@item GRUB_GFXPAYLOAD_LINUX -Set to @samp{text} to force the Linux kernel to boot in normal text mode, -@samp{keep} to preserve the graphics mode set using @samp{GRUB_GFXMODE}, -@samp{@var{width}x@var{height}}[@samp{x@var{depth}}] to set a particular -graphics mode, or a sequence of these separated by commas or semicolons to -try several modes in sequence. @xref{gfxpayload}. - -Depending on your kernel, your distribution, your graphics card, and the -phase of the moon, note that using this option may cause GNU/Linux to suffer -from various display problems, particularly during the early part of the -boot sequence. If you have problems, set this option to @samp{text} and -GRUB will tell Linux to boot in normal text mode. - -@item GRUB_DISABLE_OS_PROBER -Normally, @command{grub-mkconfig} will try to use the external -@command{os-prober} program, if installed, to discover other operating -systems installed on the same system and generate appropriate menu entries -for them. Set this option to @samp{true} to disable this. - -@item GRUB_OS_PROBER_SKIP_LIST -List of space-separated FS UUIDs of filesystems to be ignored from os-prober -output. For efi chainloaders it's @@ - -@item GRUB_DISABLE_SUBMENU -Normally, @command{grub-mkconfig} will generate top level menu entry for -the kernel with highest version number and put all other found kernels -or alternative menu entries for recovery mode in submenu. For entries returned -by @command{os-prober} first entry will be put on top level and all others -in submenu. If this option is set to @samp{y}, flat menu with all entries -on top level will be generated instead. Changing this option will require -changing existing values of @samp{GRUB_DEFAULT}, @samp{fallback} (@pxref{fallback}) -and @samp{default} (@pxref{default}) environment variables as well as saved -default entry using @command{grub-set-default} and value used with -@command{grub-reboot}. - -@item GRUB_ENABLE_CRYPTODISK -If set to @samp{y}, @command{grub-mkconfig} and @command{grub-install} will -check for encrypted disks and generate additional commands needed to access -them during boot. Note that in this case unattended boot is not possible -because GRUB will wait for passphrase to unlock encrypted container. - -@item GRUB_INIT_TUNE -Play a tune on the speaker when GRUB starts. This is particularly useful -for users unable to see the screen. The value of this option is passed -directly to @ref{play}. - -@item GRUB_BADRAM -If this option is set, GRUB will issue a @ref{badram} command to filter -out specified regions of RAM. - -@item GRUB_PRELOAD_MODULES -This option may be set to a list of GRUB module names separated by spaces. -Each module will be loaded as early as possible, at the start of -@file{grub.cfg}. - -@end table - -The following options are still accepted for compatibility with existing -configurations, but have better replacements: - -@table @samp -@item GRUB_HIDDEN_TIMEOUT -Wait this many seconds before displaying the menu. If @key{ESC} is pressed -during that time, display the menu and wait for input according to -@samp{GRUB_TIMEOUT}. If a hotkey associated with a menu entry is pressed, -boot the associated menu entry immediately. If the timeout expires before -either of these happens, display the menu for the number of seconds -specified in @samp{GRUB_TIMEOUT} before booting the default entry. - -If you set @samp{GRUB_HIDDEN_TIMEOUT}, you should also set -@samp{GRUB_TIMEOUT=0} so that the menu is not displayed at all unless -@key{ESC} is pressed. - -This option is unset by default, and is deprecated in favour of the less -confusing @samp{GRUB_TIMEOUT_STYLE=countdown} or -@samp{GRUB_TIMEOUT_STYLE=hidden}. - -@item GRUB_HIDDEN_TIMEOUT_QUIET -In conjunction with @samp{GRUB_HIDDEN_TIMEOUT}, set this to @samp{true} to -suppress the verbose countdown while waiting for a key to be pressed before -displaying the menu. - -This option is unset by default, and is deprecated in favour of the less -confusing @samp{GRUB_TIMEOUT_STYLE=countdown}. - -@item GRUB_HIDDEN_TIMEOUT_BUTTON -Variant of @samp{GRUB_HIDDEN_TIMEOUT}, used to support vendor-specific power -buttons. @xref{Vendor power-on keys}. - -This option is unset by default, and is deprecated in favour of the less -confusing @samp{GRUB_TIMEOUT_STYLE=countdown} or -@samp{GRUB_TIMEOUT_STYLE=hidden}. - -@end table - -For more detailed customisation of @command{grub-mkconfig}'s output, you may -edit the scripts in @file{/etc/grub.d} directly. -@file{/etc/grub.d/40_custom} is particularly useful for adding entire custom -menu entries; simply type the menu entries you want to add at the end of -that file, making sure to leave at least the first two lines intact. - -@node Root Identifcation Heuristics -@section Root Identifcation Heuristics -If the target operating system uses the Linux kernel, @command{grub-mkconfig} -attempts to identify the root file system via a heuristic algoirthm. This -algorithm selects the identification method of the root file system by -considering three factors. The first is if an initrd for the target operating -system is also present. The second is @samp{GRUB_DISABLE_LINUX_UUID} and if set -to @samp{true}, prevents @command{grub-mkconfig} from identifying the root file -system by its UUID. The third is @samp{GRUB_DISABLE_LINUX_PARTUUID} and if set -to @samp{true}, prevents @command{grub-mkconfig} from identifying the root file -system via the UUID of its enclosing partition. If the variables are assigned -any other value, that value is considered equivalent to @samp{false}. The -variables are also considered to be set to @samp{false} if they are not set. - -When booting, the Linux kernel will delegate the task of mounting the root -filesystem to the initrd. Most initrd images determine the root file system by -checking the Linux kernel's command-line for the @samp{root} key and use its -value as the identification method of the root file system. To improve the -reliability of booting, most initrd images also allow the root file system to be -identified by its UUID. Because of this behavior, the @command{grub-mkconfig} -command will set @samp{root} to @samp{root=UUID=...} to provide the initrd with -the filesystem UUID of the root file system. - -If no initrd is detected or @samp{GRUB_DISABLE_LINUX_UUID} is set to @samp{true} -then @command{grub-command} will identify the root filesystem by setting the -kernel command-line variable @samp{root} to @samp{root=PARTUUID=...} unless -@samp{GRUB_DISABLE_LINUX_PARTUUID} is also set to @samp{true}. If -@samp{GRUB_DISABLE_LINUX_PARTUUID} is also set to @samp{true}, -@command{grub-command} will identify by its Linux device name. - -The following table summarizes the behavior of the @command{grub-mkconfig} -command. - -@multitable {detected} {GRUB_DISABLE_LINUX_PARTUUID} {GRUB_DISABLE_LINUX_UUID} {Linux Root} -@headitem Initrd detected @tab GRUB_DISABLE_LINUX_PARTUUID Set To @tab GRUB_DISABLE_LINUX_UUID Set To @tab Linux Root ID Method -@item false @tab false @tab false @tab part UUID -@item false @tab false @tab true @tab part UUID -@item false @tab true @tab false @tab dev name -@item false @tab true @tab true @tab dev name -@item true @tab false @tab false @tab fs UUID -@item true @tab false @tab true @tab part UUID -@item true @tab true @tab false @tab fs UUID -@item true @tab true @tab true @tab dev name -@end multitable - -Remember, @samp{GRUB_DISABLE_LINUX_PARTUUID} and @samp{GRUB_DISABLE_LINUX_UUID} -are also considered to be set to @samp{false} when they are unset. - -@node Shell-like scripting -@section Writing full configuration files directly - -@c Some of this section is derived from the GNU Bash manual page, also -@c copyrighted by the FSF. - -@file{grub.cfg} is written in GRUB's built-in scripting language, which has -a syntax quite similar to that of GNU Bash and other Bourne shell -derivatives. - -@heading Words - -A @dfn{word} is a sequence of characters considered as a single unit by -GRUB. Words are separated by @dfn{metacharacters}, which are the following -plus space, tab, and newline: - -@example -@{ @} | & $ ; < > -@end example - -Quoting may be used to include metacharacters in words; see below. - -@heading Reserved words - -Reserved words have a special meaning to GRUB. The following words are -recognised as reserved when unquoted and either the first word of a simple -command or the third word of a @code{for} command: - -@example -! [[ ]] @{ @} -case do done elif else esac fi for function -if in menuentry select then time until while -@end example - -Not all of these reserved words have a useful purpose yet; some are reserved -for future expansion. - -@heading Quoting - -Quoting is used to remove the special meaning of certain characters or -words. It can be used to treat metacharacters as part of a word, to prevent -reserved words from being recognised as such, and to prevent variable -expansion. - -There are three quoting mechanisms: the escape character, single quotes, and -double quotes. - -A non-quoted backslash (\) is the @dfn{escape character}. It preserves the -literal value of the next character that follows, with the exception of -newline. - -Enclosing characters in single quotes preserves the literal value of each -character within the quotes. A single quote may not occur between single -quotes, even when preceded by a backslash. - -Enclosing characters in double quotes preserves the literal value of all -characters within the quotes, with the exception of @samp{$} and @samp{\}. -The @samp{$} character retains its special meaning within double quotes. -The backslash retains its special meaning only when followed by one of the -following characters: @samp{$}, @samp{"}, @samp{\}, or newline. A -backslash-newline pair is treated as a line continuation (that is, it is -removed from the input stream and effectively ignored@footnote{Currently a -backslash-newline pair within a variable name is not handled properly, so -use this feature with some care.}). A double quote may be quoted within -double quotes by preceding it with a backslash. - -@heading Variable expansion - -The @samp{$} character introduces variable expansion. The variable name to -be expanded may be enclosed in braces, which are optional but serve to -protect the variable to be expanded from characters immediately following it -which could be interpreted as part of the name. - -Normal variable names begin with an alphabetic character, followed by zero -or more alphanumeric characters. These names refer to entries in the GRUB -environment (@pxref{Environment}). - -Positional variable names consist of one or more digits. They represent -parameters passed to function calls, with @samp{$1} representing the first -parameter, and so on. - -The special variable name @samp{?} expands to the exit status of the most -recently executed command. When positional variable names are active, other -special variable names @samp{@@}, @samp{*} and @samp{#} are defined and they -expand to all positional parameters with necessary quoting, positional -parameters without any quoting, and positional parameter count respectively. - -@heading Comments - -A word beginning with @samp{#} causes that word and all remaining characters -on that line to be ignored. - -@heading Simple commands - -A @dfn{simple command} is a sequence of words separated by spaces or tabs -and terminated by a semicolon or a newline. The first word specifies the -command to be executed. The remaining words are passed as arguments to the -invoked command. - -The return value of a simple command is its exit status. If the reserved -word @code{!} precedes the command, then the return value is instead the -logical negation of the command's exit status. - -@heading Compound commands - -A @dfn{compound command} is one of the following: - -@table @asis -@item for @var{name} in @var{word} @dots{}; do @var{list}; done -The list of words following @code{in} is expanded, generating a list of -items. The variable @var{name} is set to each element of this list in turn, -and @var{list} is executed each time. The return value is the exit status -of the last command that executes. If the expansion of the items following -@code{in} results in an empty list, no commands are executed, and the return -status is 0. - -@item if @var{list}; then @var{list}; [elif @var{list}; then @var{list};] @dots{} [else @var{list};] fi -The @code{if} @var{list} is executed. If its exit status is zero, the -@code{then} @var{list} is executed. Otherwise, each @code{elif} @var{list} -is executed in turn, and if its exit status is zero, the corresponding -@code{then} @var{list} is executed and the command completes. Otherwise, -the @code{else} @var{list} is executed, if present. The exit status is the -exit status of the last command executed, or zero if no condition tested -true. - -@item while @var{cond}; do @var{list}; done -@itemx until @var{cond}; do @var{list}; done -The @code{while} command continuously executes the @code{do} @var{list} as -long as the last command in @var{cond} returns an exit status of zero. The -@code{until} command is identical to the @code{while} command, except that -the test is negated; the @code{do} @var{list} is executed as long as the -last command in @var{cond} returns a non-zero exit status. The exit status -of the @code{while} and @code{until} commands is the exit status of the last -@code{do} @var{list} command executed, or zero if none was executed. - -@item function @var{name} @{ @var{command}; @dots{} @} -This defines a function named @var{name}. The @dfn{body} of the function is -the list of commands within braces, each of which must be terminated with a -semicolon or a newline. This list of commands will be executed whenever -@var{name} is specified as the name of a simple command. Function -definitions do not affect the exit status in @code{$?}. When executed, the -exit status of a function is the exit status of the last command executed in -the body. - -@item menuentry @var{title} [@option{--class=class} @dots{}] [@option{--users=users}] [@option{--unrestricted}] [@option{--hotkey=key}] [@option{--id=id}] @{ @var{command}; @dots{} @} -@xref{menuentry}. -@end table - -@heading Built-in Commands - -Some built-in commands are also provided by GRUB script to help script -writers perform actions that are otherwise not possible. For example, these -include commands to jump out of a loop without fully completing it, etc. - -@table @asis -@item break [@code{n}] -Exit from within a @code{for}, @code{while}, or @code{until} loop. If -@code{n} is specified, break @code{n} levels. @code{n} must be greater than -or equal to 1. If @code{n} is greater than the number of enclosing loops, -all enclosing loops are exited. The return value is 0 unless @code{n} is -not greater than or equal to 1. - -@item continue [@code{n}] -Resume the next iteration of the enclosing @code{for}, @code{while} or -@code{until} loop. If @code{n} is specified, resume at the @code{n}th -enclosing loop. @code{n} must be greater than or equal to 1. If @code{n} -is greater than the number of enclosing loops, the last enclosing loop (the -@dfn{top-level} loop) is resumed. The return value is 0 unless @code{n} is -not greater than or equal to 1. - -@item return [@code{n}] -Causes a function to exit with the return value specified by @code{n}. If -@code{n} is omitted, the return status is that of the last command executed -in the function body. If used outside a function the return status is -false. - -@item setparams [@code{arg}] @dots{} -Replace positional parameters starting with @code{$1} with arguments to -@command{setparams}. - -@item shift [@code{n}] -The positional parameters from @code{n}+1 @dots{} are renamed to -@code{$1}@dots{}. Parameters represented by the numbers @code{$#} down to -@code{$#}-@code{n}+1 are unset. @code{n} must be a non-negative number less -than or equal to @code{$#}. If @code{n} is 0, no parameters are changed. -If @code{n} is not given, it is assumed to be 1. If @code{n} is greater -than @code{$#}, the positional parameters are not changed. The return -status is greater than zero if @code{n} is greater than @code{$#} or less -than zero; otherwise 0. - -@end table - -@node Multi-boot manual config -@section Multi-boot manual config - -Currently autogenerating config files for multi-boot environments depends on -os-prober and has several shortcomings. While fixing it is scheduled for the -next release, meanwhile you can make use of the power of GRUB syntax and do it -yourself. A possible configuration is detailed here, feel free to adjust to your -needs. - -First create a separate GRUB partition, big enough to hold GRUB. Some of the -following entries show how to load OS installer images from this same partition, -for that you obviously need to make the partition large enough to hold those -images as well. -Mount this partition on/mnt/boot and disable GRUB in all OSes and manually -install self-compiled latest GRUB with: - -@code{grub-install --boot-directory=/mnt/boot /dev/sda} - -In all the OSes install GRUB tools but disable installing GRUB in bootsector, -so you'll have menu.lst and grub.cfg available for use. Also disable os-prober -use by setting: - -@code{GRUB_DISABLE_OS_PROBER=true} - -in /etc/default/grub - -Then write a grub.cfg (/mnt/boot/grub/grub.cfg): - -@example - -menuentry "OS using grub2" @{ - insmod xfs - search --set=root --label OS1 --hint hd0,msdos8 - configfile /boot/grub/grub.cfg -@} - -menuentry "OS using grub2-legacy" @{ - insmod ext2 - search --set=root --label OS2 --hint hd0,msdos6 - legacy_configfile /boot/grub/menu.lst -@} - -menuentry "Windows XP" @{ - insmod ntfs - search --set=root --label WINDOWS_XP --hint hd0,msdos1 - ntldr /ntldr -@} - -menuentry "Windows 7" @{ - insmod ntfs - search --set=root --label WINDOWS_7 --hint hd0,msdos2 - ntldr /bootmgr -@} - -menuentry "FreeBSD" @{ - insmod zfs - search --set=root --label freepool --hint hd0,msdos7 - kfreebsd /freebsd@@/boot/kernel/kernel - kfreebsd_module_elf /freebsd@@/boot/kernel/opensolaris.ko - kfreebsd_module_elf /freebsd@@/boot/kernel/zfs.ko - kfreebsd_module /freebsd@@/boot/zfs/zpool.cache type=/boot/zfs/zpool.cache - set kFreeBSD.vfs.root.mountfrom=zfs:freepool/freebsd - set kFreeBSD.hw.psm.synaptics_support=1 -@} - -menuentry "experimental GRUB" @{ - search --set=root --label GRUB --hint hd0,msdos5 - multiboot /experimental/grub/i386-pc/core.img -@} - -menuentry "Fedora 16 installer" @{ - search --set=root --label GRUB --hint hd0,msdos5 - linux /fedora/vmlinuz lang=en_US keymap=sg resolution=1280x800 - initrd /fedora/initrd.img -@} - -menuentry "Fedora rawhide installer" @{ - search --set=root --label GRUB --hint hd0,msdos5 - linux /fedora/vmlinuz repo=ftp://mirror.switch.ch/mirror/fedora/linux/development/rawhide/x86_64 lang=en_US keymap=sg resolution=1280x800 - initrd /fedora/initrd.img -@} - -menuentry "Debian sid installer" @{ - search --set=root --label GRUB --hint hd0,msdos5 - linux /debian/dists/sid/main/installer-amd64/current/images/hd-media/vmlinuz - initrd /debian/dists/sid/main/installer-amd64/current/images/hd-media/initrd.gz -@} - -@end example - -Notes: -@itemize -@item Argument to search after --label is FS LABEL. You can also use UUIDs with --fs-uuid UUID instead of --label LABEL. You could also use direct @code{root=hd0,msdosX} but this is not recommended due to device name instability. -@end itemize - -@node Embedded configuration -@section Embedding a configuration file into GRUB - -GRUB supports embedding a configuration file directly into the core image, -so that it is loaded before entering normal mode. This is useful, for -example, when it is not straightforward to find the real configuration file, -or when you need to debug problems with loading that file. -@command{grub-install} uses this feature when it is not using BIOS disk -functions or when installing to a different disk from the one containing -@file{/boot/grub}, in which case it needs to use the @command{search} -command (@pxref{search}) to find @file{/boot/grub}. - -To embed a configuration file, use the @option{-c} option to -@command{grub-mkimage}. The file is copied into the core image, so it may -reside anywhere on the file system, and may be removed after running -@command{grub-mkimage}. - -After the embedded configuration file (if any) is executed, GRUB will load -the @samp{normal} module (@pxref{normal}), which will then read the real -configuration file from @file{$prefix/grub.cfg}. By this point, the -@code{root} variable will also have been set to the root device name. For -example, @code{prefix} might be set to @samp{(hd0,1)/boot/grub}, and -@code{root} might be set to @samp{hd0,1}. Thus, in most cases, the embedded -configuration file only needs to set the @code{prefix} and @code{root} -variables, and then drop through to GRUB's normal processing. A typical -example of this might look like this: - -@example -@group -search.fs_uuid 01234567-89ab-cdef-0123-456789abcdef root -set prefix=($root)/boot/grub -@end group -@end example - -(The @samp{search_fs_uuid} module must be included in the core image for this -example to work.) - -In more complex cases, it may be useful to read other configuration files -directly from the embedded configuration file. This allows such things as -reading files not called @file{grub.cfg}, or reading files from a directory -other than that where GRUB's loadable modules are installed. To do this, -include the @samp{configfile} and @samp{normal} modules in the core image, -and embed a configuration file that uses the @command{configfile} command to -load another file. The following example of this also requires the -@command{echo}, @command{search_label}, and @command{test} modules to be -included in the core image: - -@example -@group -search.fs_label grub root -if [ -e /boot/grub/example/test1.cfg ]; then - set prefix=($root)/boot/grub - configfile /boot/grub/example/test1.cfg -else - if [ -e /boot/grub/example/test2.cfg ]; then - set prefix=($root)/boot/grub - configfile /boot/grub/example/test2.cfg - else - echo "Could not find an example configuration file!" - fi -fi -@end group -@end example - -The embedded configuration file may not contain menu entries directly, but -may only read them from elsewhere using @command{configfile}. - -@node Theme file format -@chapter Theme file format -@section Introduction -The GRUB graphical menu supports themes that can customize the layout and -appearance of the GRUB boot menu. The theme is configured through a plain -text file that specifies the layout of the various GUI components (including -the boot menu, timeout progress bar, and text messages) as well as the -appearance using colors, fonts, and images. Example is available in docs/example_theme.txt - -@section Theme Elements -@subsection Colors - -Colors can be specified in several ways: - -@itemize -@item HTML-style ``#RRGGBB'' or ``#RGB'' format, where *R*, *G*, and *B* are hexadecimal digits (e.g., ``#8899FF'') -@item as comma-separated decimal RGB values (e.g., ``128, 128, 255'') -@item with ``SVG 1.0 color names'' (e.g., ``cornflowerblue'') which must be specified in lowercase. -@end itemize -@subsection Fonts -The fonts GRUB uses ``PFF2 font format'' bitmap fonts. Fonts are specified -with full font names. Currently there is no -provision for a preference list of fonts, or deriving one font from another. -Fonts are loaded with the ``loadfont'' command in GRUB (@ref{loadfont}). To see the list of -loaded fonts, execute the ``lsfonts'' command (@ref{lsfonts}). If there are too many fonts to -fit on screen, do ``set pager=1'' before executing ``lsfonts''. - - -@subsection Progress Bar - -@float Figure, Pixmap-styled progress bar -@c @image{Theme_progress_bar,,,,png} -@end float - -@float Figure, Plain progress bar, drawn with solid color. -@c @image{Theme_progress_bar_filled,,,,png} -@end float - -Progress bars are used to display the remaining time before GRUB boots the -default menu entry. To create a progress bar that will display the remaining -time before automatic boot, simply create a ``progress_bar'' component with -the id ``__timeout__''. This indicates to GRUB that the progress bar should -be updated as time passes, and it should be made invisible if the countdown to -automatic boot is interrupted by the user. - -Progress bars may optionally have text displayed on them. This text is -controlled by variable ``text'' which contains a printf template with the -only argument %d is the number of seconds remaining. Additionally special -values ``@@TIMEOUT_NOTIFICATION_SHORT@@'', ``@@TIMEOUT_NOTIFICATION_MIDDLE@@'', -``@@TIMEOUT_NOTIFICATION_LONG@@'' are replaced with standard and translated -templates. - -@subsection Circular Progress Indicator - -@c @image{Theme_circular_progress,,,,.png} - -The circular progress indicator functions similarly to the progress bar. When -given an id of ``__timeout__'', GRUB updates the circular progress indicator's -value to indicate the time remaining. For the circular progress indicator, -there are two images used to render it: the *center* image, and the *tick* -image. The center image is rendered in the center of the component, while the -tick image is used to render each mark along the circumference of the -indicator. - - -@subsection Labels - -Text labels can be placed on the boot screen. The font, color, and horizontal -alignment can be specified for labels. If a label is given the id -``__timeout__'', then the ``text'' property for that label is also updated -with a message informing the user of the number of seconds remaining until -automatic boot. This is useful in case you want the text displayed somewhere -else instead of directly on the progress bar. - - -@subsection Boot Menu - -@c @image{Theme_boot_menu,,,,.png} - -The boot menu where GRUB displays the menu entries from the ``grub.cfg'' file. -It is a list of items, where each item has a title and an optional icon. The -icon is selected based on the *classes* specified for the menu entry. If -there is a PNG file named ``myclass.png'' in the ``grub/themes/icons'' -directory, it will be displayed for items which have the class *myclass*. The -boot menu can be customized in several ways, such as the font and color used -for the menu entry title, and by specifying styled boxes for the menu itself -and for the selected item highlight. - - -@subsection Styled Boxes - -One of the most important features for customizing the layout is the use of - *styled boxes*. A styled box is composed of 9 rectangular (and potentially -empty) regions, which are used to seamlessly draw the styled box on screen: - -@multitable @columnfractions 0.3 0.3 0.3 -@item Northwest (nw) @tab North (n) @tab Northeast (ne) -@item West (w) @tab Center (c) @tab East (e) -@item Southwest (sw) @tab South (s) @tab Southeast (se) -@end multitable - -To support any size of box on screen, the center slice and the slices for the -top, bottom, and sides are all scaled to the correct size for the component on -screen, using the following rules: - -@enumerate -@item The edge slices (north, south, east, and west) are scaled in the direction of the edge they are adjacent to. For instance, the west slice is scaled vertically. -@item The corner slices (northwest, northeast, southeast, and southwest) are not scaled. -@item The center slice is scaled to fill the remaining space in the middle. -@end enumerate - -As an example of how an image might be sliced up, consider the styled box -used for a terminal view. - -@float Figure, An example of the slices (in red) used for a terminal window. This drawing was created and sliced in Inkscape_, as the next section explains. -@c @image{Box_slice_example_terminal,,,,.png} -@end float - -@subsection Creating Styled Box Images - -The Inkscape_ scalable vector graphics editor is a very useful tool for -creating styled box images. One process that works well for slicing a drawing -into the necessary image slices is: - -@enumerate -@item Create or open the drawing you'd like use. -@item Create a new layer on the top of the layer stack. Make it visible. Select this layer as the current layer. -@item Draw 9 rectangles on your drawing where you'd like the slices to be. Clear the fill option, and set the stroke to 1 pixel wide solid stroke. The corners of the slices must meet precisely; if it is off by a single pixel, it will probably be evident when the styled box is rendered in the GRUB menu. You should probably go to File | Document Properties | Grids and enable a grid or create a guide (click on one of the rulers next to the drawing and drag over the drawing; release the mouse button to place the guide) to help place the rectangles precisely. -@item Right click on the center slice rectangle and choose Object Properties. Change the "Id" to ``slice_c`` and click Set. Repeat this for the remaining 8 rectangles, giving them Id values of ``slice_n``, ``slice_ne``, ``slice_e``, and so on according to the location. -@item Save the drawing. -@item Select all the slice rectangles. With the slice layer selected, you can simply press Ctrl+A to select all rectangles. The status bar should indicate that 9 rectangles are selected. -@item Click the layer hide icon for the slice layer in the layer palette. The rectangles will remain selected, even though they are hidden. -@item Choose File | Export Bitmap and check the *Batch export 9 selected objects* box. Make sure that *Hide all except selected* is unchecked. click *Export*. This will create PNG files in the same directory as the drawing, named after the slices. These can now be used for a styled box in a GRUB theme. -@end enumerate - -@section Theme File Manual - -The theme file is a plain text file. Lines that begin with ``#`` are ignored -and considered comments. (Note: This may not be the case if the previous line -ended where a value was expected.) - -The theme file contains two types of statements: -@enumerate -@item Global properties. -@item Component construction. -@end enumerate - -@subsection Global Properties - -@subsection Format - -Global properties are specified with the simple format: -@itemize -@item name1: value1 -@item name2: "value which may contain spaces" -@item name3: #88F -@end itemize - -In this example, name3 is assigned a color value. - - -@subsection Global Property List - -@multitable @columnfractions 0.3 0.6 -@item title-text - @tab Specifies the text to display at the top center of the screen as a title. -@item title-font - @tab Defines the font used for the title message at the top of the screen. -@item title-color - @tab Defines the color of the title message. -@item message-font - @tab Currently unused. Left for backward compatibility. -@item message-color - @tab Currently unused. Left for backward compatibility. -@item message-bg-color - @tab Currently unused. Left for backward compatibility. -@item desktop-image - @tab Specifies the image to use as the background. It will be scaled - to fit the screen size or proportionally scaled depending on the scale - method. -@item desktop-image-scale-method - @tab Specifies the scaling method for the *desktop-image*. Options are - ``stretch``, ``crop``, ``padding``, ``fitwidth``, ``fitheight``. - ``stretch`` for fitting the screen size. Otherwise it is proportional - scaling of a part of *desktop-image* to the part of the screen. - ``crop`` part of the *desktop-image* will be proportionally scaled to - fit the screen sizes. ``padding`` the entire *desktop-image* will be - contained on the screen. ``fitwidth`` for fitting the *desktop-image*'s - width with screen width. ``fitheight`` for fitting the *desktop-image*'s - height with the screen height. Default is ``stretch``. -@item desktop-image-h-align - @tab Specifies the horizontal alignment of the *desktop-image* if - *desktop-image-scale-method* isn't equeal to ``stretch``. Options are - ``left``, ``center``, ``right``. Default is ``center``. -@item desktop-image-v-align - @tab Specifies the vertical alignment of the *desktop-image* if - *desktop-image-scale-method* isn't equeal to ``stretch``. Options are - ``top``, ``center``, ``bottom``. Default is ``center``. -@item desktop-color - @tab Specifies the color for the background if *desktop-image* is not - specified. -@item terminal-box - @tab Specifies the file name pattern for the styled box slices used for the - command line terminal window. For example, ``terminal-box: terminal_*.png`` - will use the images ``terminal_c.png`` as the center area, ``terminal_n.png`` - as the north (top) edge, ``terminal_nw.png`` as the northwest (upper left) - corner, and so on. If the image for any slice is not found, it will simply - be left empty. -@item terminal-border - @tab Specifies the border width of the terminal window. -@item terminal-left - @tab Specifies the left coordinate of the terminal window. -@item terminal-top - @tab Specifies the top coordinate of the terminal window. -@item terminal-width - @tab Specifies the width of the terminal window. -@item terminal-height - @tab Specifies the height of the terminal window. -@end multitable - - -@subsection Component Construction - -Greater customizability comes is provided by components. A tree of components -forms the user interface. *Containers* are components that can contain other -components, and there is always a single root component which is an instance -of a *canvas* container. - -Components are created in the theme file by prefixing the type of component -with a '+' sign: - -@code{ + label @{ text="GRUB" font="aqui 11" color="#8FF" @} } - -properties of a component are specified as "name = value" (whitespace -surrounding tokens is optional and is ignored) where *value* may be: -@itemize -@item a single word (e.g., ``align = center``, ``color = #FF8080``), -@item a quoted string (e.g., ``text = "Hello, World!"``), or -@item a tuple (e.g., ``preferred_size = (120, 80)``). -@end itemize - -@subsection Component List - -The following is a list of the components and the properties they support. - -@itemize -@item label - A label displays a line of text. - - Properties: - @multitable @columnfractions 0.2 0.7 - @item id - @tab Set to ``__timeout__`` to display the time elapsed to an automatical - boot of the default entry. - @item text - @tab The text to display. If ``id`` is set to ``__timeout__`` and no - ``text`` property is set then the amount of seconds will be shown. - If set to ``@@KEYMAP_SHORT@@``, ``@@KEYMAP_MIDDLE@@`` or - ``@@KEYMAP_LONG@@`` then predefined hotkey information will be shown. - @item font - @tab The font to use for text display. - @item color - @tab The color of the text. - @item align - @tab The horizontal alignment of the text within the component. - Options are ``left``, ``center`` and ``right``. - @item visible - @tab Set to ``false`` to hide the label. - @end multitable - -@item image - A component that displays an image. The image is scaled to fit - the component. - - Properties: - - @multitable @columnfractions 0.2 0.7 - @item file - @tab The full path to the image file to load. - @end multitable - -@item progress_bar - Displays a horizontally oriented progress bar. It can be rendered using - simple solid filled rectangles, or using a pair of pixmap styled boxes. - - Properties: - - @multitable @columnfractions 0.2 0.7 - @item id - @tab Set to ``__timeout__`` to display the time elapsed to an automatical - boot of the default entry. - @item fg_color - @tab The foreground color for plain solid color rendering. - @item bg_color - @tab The background color for plain solid color rendering. - @item border_color - @tab The border color for plain solid color rendering. - @item text_color - @tab The text color. - @item bar_style - @tab The styled box specification for the frame of the progress bar. - Example: ``progress_frame_*.png`` - If the value is equal to ``highlight_style`` then no styled boxes - will be shown. - @item highlight_style - @tab The styled box specification for the highlighted region of the - progress bar. This box will be used to paint just the highlighted region - of the bar, and will be increased in size as the bar nears completion. - Example: ``progress_hl_*.png``. - If the value is equal to ``bar_style`` then no styled boxes - will be shown. - @item highlight_overlay - @tab If this option is set to ``true`` then the highlight box - side slices (every slice except the center slice) will overlay the - frame box side slices. And the center slice of the highlight box - can move all the way (from top to bottom), being drawn on the center - slice of the frame box. That way we can make a progress bar with - round-shaped edges so there won't be a free space from the highlight to - the frame in top and bottom scrollbar positions. Default is ``false``. - @item font - @tab The font to use for progress bar. - @item text - @tab The text to display on the progress bar. If the progress bar's ID - is set to ``__timeout__`` and the value of this property is set to - ``@@TIMEOUT_NOTIFICATION_SHORT@@``, ``@@TIMEOUT_NOTIFICATION_MIDDLE@@`` - or ``@@TIMEOUT_NOTIFICATION_LONG@@``, then GRUB will update this - property with an informative message as the timeout approaches. - @end multitable - -@item circular_progress - Displays a circular progress indicator. The appearance of this component - is determined by two images: the *center* image and the *tick* image. The - center image is generally larger and will be drawn in the center of the - component. Around the circumference of a circle within the component, the - tick image will be drawn a certain number of times, depending on the - properties of the component. - - Properties: - - @multitable @columnfractions 0.3 0.6 - @item id - @tab Set to ``__timeout__`` to display the time elapsed to an automatical - boot of the default entry. - @item center_bitmap - @tab The file name of the image to draw in the center of the component. - @item tick_bitmap - @tab The file name of the image to draw for the tick marks. - @item num_ticks - @tab The number of ticks that make up a full circle. - @item ticks_disappear - @tab Boolean value indicating whether tick marks should progressively appear, - or progressively disappear as *value* approaches *end*. Specify - ``true`` or ``false``. Default is ``false``. - @item start_angle - @tab The position of the first tick mark to appear or disappear. - Measured in "parrots", 1 "parrot" = 1 / 256 of the full circle. - Use values ``xxx deg`` or ``xxx \xc2\xb0`` to set the angle in degrees. - @end multitable - -@item boot_menu - Displays the GRUB boot menu. It allows selecting items and executing them. - - Properties: - - @multitable @columnfractions 0.4 0.5 - @item item_font - @tab The font to use for the menu item titles. - @item selected_item_font - @tab The font to use for the selected menu item, or ``inherit`` (the default) - to use ``item_font`` for the selected menu item as well. - @item item_color - @tab The color to use for the menu item titles. - @item selected_item_color - @tab The color to use for the selected menu item, or ``inherit`` (the default) - to use ``item_color`` for the selected menu item as well. - @item icon_width - @tab The width of menu item icons. Icons are scaled to the specified size. - @item icon_height - @tab The height of menu item icons. - @item item_height - @tab The height of each menu item in pixels. - @item item_padding - @tab The amount of space in pixels to leave on each side of the menu item - contents. - @item item_icon_space - @tab The space between an item's icon and the title text, in pixels. - @item item_spacing - @tab The amount of space to leave between menu items, in pixels. - @item menu_pixmap_style - @tab The image file pattern for the menu frame styled box. - Example: ``menu_*.png`` (this will use images such as ``menu_c.png``, - ``menu_w.png``, `menu_nw.png``, etc.) - @item item_pixmap_style - @tab The image file pattern for the item styled box. - @item selected_item_pixmap_style - @tab The image file pattern for the selected item highlight styled box. - @item scrollbar - @tab Boolean value indicating whether the scroll bar should be drawn if the - frame and thumb styled boxes are configured. - @item scrollbar_frame - @tab The image file pattern for the entire scroll bar. - Example: ``scrollbar_*.png`` - @item scrollbar_thumb - @tab The image file pattern for the scroll bar thumb (the part of the scroll - bar that moves as scrolling occurs). - Example: ``scrollbar_thumb_*.png`` - @item scrollbar_thumb_overlay - @tab If this option is set to ``true`` then the scrollbar thumb - side slices (every slice except the center slice) will overlay the - scrollbar frame side slices. And the center slice of the scrollbar_thumb - can move all the way (from top to bottom), being drawn on the center - slice of the scrollbar frame. That way we can make a scrollbar with - round-shaped edges so there won't be a free space from the thumb to - the frame in top and bottom scrollbar positions. Default is ``false``. - @item scrollbar_slice - @tab The menu frame styled box's slice in which the scrollbar will be - drawn. Possible values are ``west``, ``center``, ``east`` (default). - ``west`` - the scrollbar will be drawn in the west slice (right-aligned). - ``east`` - the scrollbar will be drawn in the east slice (left-aligned). - ``center`` - the scrollbar will be drawn in the center slice. - Note: in case of ``center`` slice: - a) If the scrollbar should be drawn then boot menu entry's width is - decreased by the scrollbar's width and the scrollbar is drawn at the - right side of the center slice. - b) If the scrollbar won't be drawn then the boot menu entry's width - is the width of the center slice. - c) We don't necessary need the menu pixmap box to display the scrollbar. - @item scrollbar_left_pad - @tab The left scrollbar padding in pixels. - Unused if ``scrollbar_slice`` is ``west``. - @item scrollbar_right_pad - @tab The right scrollbar padding in pixels. - Unused if ``scrollbar_slice`` is ``east``. - @item scrollbar_top_pad - @tab The top scrollbar padding in pixels. - @item scrollbar_bottom_pad - @tab The bottom scrollbar padding in pixels. - @item visible - @tab Set to ``false`` to hide the boot menu. - @end multitable - -@item canvas - Canvas is a container that allows manual placement of components within it. - It does not alter the positions of its child components. It assigns all - child components their preferred sizes. - -@item hbox - The *hbox* container lays out its children from left to right, giving each - one its preferred width. The height of each child is set to the maximum of - the preferred heights of all children. - -@item vbox - The *vbox* container lays out its children from top to bottom, giving each - one its preferred height. The width of each child is set to the maximum of - the preferred widths of all children. -@end itemize - - -@subsection Common properties - -The following properties are supported by all components: -@table @samp -@item left - The distance from the left border of container to left border of the object in either of three formats: - @multitable @columnfractions 0.2 0.7 - @item x @tab Value in pixels - @item p% @tab Percentage - @item p%+x @tab mixture of both - @end multitable -@item top - The distance from the left border of container to left border of the object in same format. -@item width - The width of object in same format. -@item height - The height of object in same format. -@item id - The identifier for the component. This can be any arbitrary string. - The ID can be used by scripts to refer to various components in the GUI - component tree. Currently, there is one special ID value that GRUB - recognizes: - - @multitable @columnfractions 0.2 0.7 - @item ``__timeout__`` - @tab Component with this ID will be updated by GRUB and will indicate - time elapsed to an automatical boot of the default entry. - Affected components: ``label``, ``circular_progress``, ``progress_bar``. - @end multitable -@end table - - - -@node Network -@chapter Booting GRUB from the network - -The following instructions don't work for *-emu, i386-qemu, i386-coreboot, -i386-multiboot, mips_loongson, mips-arc and mips_qemu_mips - -To generate a netbootable directory, run: - -@example -@group -grub-mknetdir --net-directory=/srv/tftp --subdir=/boot/grub -d /usr/lib/grub/ -@end group -@end example - -E.g. for i386-pc: - -@example -@group -grub-mknetdir --net-directory=/srv/tftp --subdir=/boot/grub -d /usr/lib/grub/i386-pc -@end group -@end example - -Then follow instructions printed out by grub-mknetdir on configuring your DHCP -server. - -After GRUB has started, files on the TFTP server will be accessible via the -@samp{(tftp)} device. - -The server IP address can be controlled by changing the -@samp{(tftp)} device name to @samp{(tftp,@var{server-ip})}. Note that -this should be changed both in the prefix and in any references to the -device name in the configuration file. - -GRUB provides several environment variables which may be used to inspect or -change the behaviour of the PXE device. In the following description -@var{} is placeholder for the name of network interface (platform -dependent): - -@table @samp -@item net_@var{}_ip -The network interface's IP address. Read-only. - -@item net_@var{}_mac -The network interface's MAC address. Read-only. - -@item net_@var{}_hostname -The client host name provided by DHCP. Read-only. - -@item net_@var{}_domain -The client domain name provided by DHCP. Read-only. - -@item net_@var{}_rootpath -The path to the client's root disk provided by DHCP. Read-only. - -@item net_@var{}_extensionspath -The path to additional DHCP vendor extensions provided by DHCP. Read-only. - -@item net_@var{}_boot_file -The boot file name provided by DHCP. Read-only. - -@item net_@var{}_dhcp_server_name -The name of the DHCP server responsible for these boot parameters. -Read-only. - -@item net_@var{}_next_server -The IP address of the next (usually, TFTP) server provided by DHCP. -Read-only. - -@item net_default_interface -Initially set to name of network interface that was used to load grub. -Read-write, although setting it affects only interpretation of -@samp{net_default_ip} and @samp{net_default_mac} - -@item net_default_ip -The IP address of default interface. Read-only. This is alias for the -@samp{net_$@{net_default_interface@}_ip}. - -@item net_default_mac -The default interface's MAC address. Read-only. This is alias for the -@samp{net_$@{net_default_interface@}_mac}. - -@item net_default_server -The default server used by network drives (@pxref{Device syntax}). Read-write, -although setting this is only useful before opening a network device. - -@end table - - -@node Serial terminal -@chapter Using GRUB via a serial line - -This chapter describes how to use the serial terminal support in GRUB. - -If you have many computers or computers with no display/keyboard, it -could be very useful to control the computers through serial -communications. To connect one computer with another via a serial line, -you need to prepare a null-modem (cross) serial cable, and you may need -to have multiport serial boards, if your computer doesn't have extra -serial ports. In addition, a terminal emulator is also required, such as -minicom. Refer to a manual of your operating system, for more -information. - -As for GRUB, the instruction to set up a serial terminal is quite -simple. Here is an example: - -@example -@group -grub> @kbd{serial --unit=0 --speed=9600} -grub> @kbd{terminal_input serial; terminal_output serial} -@end group -@end example - -The command @command{serial} initializes the serial unit 0 with the -speed 9600bps. The serial unit 0 is usually called @samp{COM1}, so, if -you want to use COM2, you must specify @samp{--unit=1} instead. This -command accepts many other options, so please refer to @ref{serial}, -for more details. - -The commands @command{terminal_input} (@pxref{terminal_input}) and -@command{terminal_output} (@pxref{terminal_output}) choose which type of -terminal you want to use. In the case above, the terminal will be a -serial terminal, but you can also pass @code{console} to the command, -as @samp{terminal_input serial console}. In this case, a terminal in which -you press any key will be selected as a GRUB terminal. In the example above, -note that you need to put both commands on the same command line, as you -will lose the ability to type commands on the console after the first -command. - -However, note that GRUB assumes that your terminal emulator is -compatible with VT100 by default. This is true for most terminal -emulators nowadays, but you should pass the option @option{--dumb} to -the command if your terminal emulator is not VT100-compatible or -implements few VT100 escape sequences. If you specify this option then -GRUB provides you with an alternative menu interface, because the normal -menu requires several fancy features of your terminal. - - -@node Vendor power-on keys -@chapter Using GRUB with vendor power-on keys - -Some laptop vendors provide an additional power-on button which boots -another OS. GRUB supports such buttons with the @samp{GRUB_TIMEOUT_BUTTON}, -@samp{GRUB_TIMEOUT_STYLE_BUTTON}, @samp{GRUB_DEFAULT_BUTTON}, and -@samp{GRUB_BUTTON_CMOS_ADDRESS} variables in default/grub (@pxref{Simple -configuration}). @samp{GRUB_TIMEOUT_BUTTON}, -@samp{GRUB_TIMEOUT_STYLE_BUTTON}, and @samp{GRUB_DEFAULT_BUTTON} are used -instead of the corresponding variables without the @samp{_BUTTON} suffix -when powered on using the special button. @samp{GRUB_BUTTON_CMOS_ADDRESS} -is vendor-specific and partially model-specific. Values known to the GRUB -team are: - -@table @key -@item Dell XPS M1330M -121:3 -@item Dell XPS M1530 -85:3 -@item Dell Latitude E4300 -85:3 -@item Asus EeePC 1005PE -84:1 (unconfirmed) -@item LENOVO ThinkPad T410s (2912W1C) -101:3 -@end table - -To take full advantage of this function, install GRUB into the MBR -(@pxref{Installing GRUB using grub-install}). - -If you have a laptop which has a similar feature and not in the above list -could you figure your address and contribute? -To discover the address do the following: -@itemize -@item boot normally -@item -@example -sudo modprobe nvram -sudo cat /dev/nvram | xxd > normal_button.txt -@end example -@item boot using vendor button -@item -@example -sudo modprobe nvram -sudo cat /dev/nvram | xxd > normal_vendor.txt -@end example -@end itemize - -Then compare these text files and find where a bit was toggled. E.g. in -case of Dell XPS it was: -@example -byte 0x47: 20 --> 28 -@end example -It's a bit number 3 as seen from following table: -@multitable @columnfractions .2 .2 -@item 0 @tab 01 -@item 1 @tab 02 -@item 2 @tab 04 -@item 3 @tab 08 -@item 4 @tab 10 -@item 5 @tab 20 -@item 6 @tab 40 -@item 7 @tab 80 -@end multitable - -0x47 is decimal 71. Linux nvram implementation cuts first 14 bytes of -CMOS. So the real byte address in CMOS is 71+14=85 -So complete address is 85:3 - -@node Images -@chapter GRUB image files - -@c FIXME: parts of this section are specific to PC BIOS right now. - -GRUB consists of several images: a variety of bootstrap images for starting -GRUB in various ways, a kernel image, and a set of modules which are -combined with the kernel image to form a core image. Here is a short -overview of them. - -@table @file -@item boot.img -On PC BIOS systems, this image is the first part of GRUB to start. It is -written to a master boot record (MBR) or to the boot sector of a partition. -Because a PC boot sector is 512 bytes, the size of this image is exactly 512 -bytes. - -The sole function of @file{boot.img} is to read the first sector of the core -image from a local disk and jump to it. Because of the size restriction, -@file{boot.img} cannot understand any file system structure, so -@command{grub-install} hardcodes the location of the first sector of the -core image into @file{boot.img} when installing GRUB. - -@item diskboot.img -This image is used as the first sector of the core image when booting from a -hard disk. It reads the rest of the core image into memory and starts the -kernel. Since file system handling is not yet available, it encodes the -location of the core image using a block list format. - -@item cdboot.img -This image is used as the first sector of the core image when booting from a -CD-ROM drive. It performs a similar function to @file{diskboot.img}. - -@item pxeboot.img -This image is used as the start of the core image when booting from the -network using PXE. @xref{Network}. - -@item lnxboot.img -This image may be placed at the start of the core image in order to make -GRUB look enough like a Linux kernel that it can be booted by LILO using an -@samp{image=} section. - -@item kernel.img -This image contains GRUB's basic run-time facilities: frameworks for device -and file handling, environment variables, the rescue mode command-line -parser, and so on. It is rarely used directly, but is built into all core -images. - -@item core.img -This is the core image of GRUB. It is built dynamically from the kernel -image and an arbitrary list of modules by the @command{grub-mkimage} -program. Usually, it contains enough modules to access @file{/boot/grub}, -and loads everything else (including menu handling, the ability to load -target operating systems, and so on) from the file system at run-time. The -modular design allows the core image to be kept small, since the areas of -disk where it must be installed are often as small as 32KB. - -@xref{BIOS installation}, for details on where the core image can be -installed on PC systems. - -@item *.mod -Everything else in GRUB resides in dynamically loadable modules. These are -often loaded automatically, or built into the core image if they are -essential, but may also be loaded manually using the @command{insmod} -command (@pxref{insmod}). -@end table - -@heading For GRUB Legacy users - -GRUB 2 has a different design from GRUB Legacy, and so correspondences with -the images it used cannot be exact. Nevertheless, GRUB Legacy users often -ask questions in the terms they are familiar with, and so here is a brief -guide to how GRUB 2's images relate to that. - -@table @file -@item stage1 -Stage 1 from GRUB Legacy was very similar to @file{boot.img} in GRUB 2, and -they serve the same function. - -@item *_stage1_5 -In GRUB Legacy, Stage 1.5's function was to include enough filesystem code -to allow the much larger Stage 2 to be read from an ordinary filesystem. In -this respect, its function was similar to @file{core.img} in GRUB 2. -However, @file{core.img} is much more capable than Stage 1.5 was; since it -offers a rescue shell, it is sometimes possible to recover manually in the -event that it is unable to load any other modules, for example if partition -numbers have changed. @file{core.img} is built in a more flexible way, -allowing GRUB 2 to support reading modules from advanced disk types such as -LVM and RAID. - -GRUB Legacy could run with only Stage 1 and Stage 2 in some limited -configurations, while GRUB 2 requires @file{core.img} and cannot work -without it. - -@item stage2 -GRUB 2 has no single Stage 2 image. Instead, it loads modules from -@file{/boot/grub} at run-time. - -@item stage2_eltorito -In GRUB 2, images for booting from CD-ROM drives are now constructed using -@file{cdboot.img} and @file{core.img}, making sure that the core image -contains the @samp{iso9660} module. It is usually best to use the -@command{grub-mkrescue} program for this. - -@item nbgrub -There is as yet no equivalent for @file{nbgrub} in GRUB 2; it was used by -Etherboot and some other network boot loaders. - -@item pxegrub -In GRUB 2, images for PXE network booting are now constructed using -@file{pxeboot.img} and @file{core.img}, making sure that the core image -contains the @samp{pxe} and @samp{pxecmd} modules. @xref{Network}. -@end table - -@node Core image size limitation -@chapter Core image size limitation - -Heavily limited platforms: -@itemize -@item i386-pc (normal and PXE): the core image size (compressed) is limited by 458240 bytes. - kernel.img (.text + .data + .bss, uncompressed) is limited by 392704 bytes. - module size (uncompressed) + kernel.img (.text + .data, uncompressed) is limited by the size of contiguous chunk at 1M address. -@item sparc64-ieee1275: kernel.img (.text + .data + .bss) + modules + 256K (stack) + 2M (heap) is limited by space available at 0x4400. On most platforms it's just 3 or 4M since ieee1275 maps only so much. -@item i386-ieee1275: kernel.img (.text + .data + .bss) + modules is limited by memory available at 0x10000, at most 596K -@end itemize - -Lightly limited platforms: - -@itemize -@item *-xen: limited only by adress space and RAM size. -@item i386-qemu: kernel.img (.text + .data + .bss) is limited by 392704 bytes. - (core.img would be limited by ROM size but it's unlimited on qemu -@item All EFI platforms: limited by contiguous RAM size and possibly firmware bugs -@item Coreboot and multiboot. kernel.img (.text + .data + .bss) is limited by 392704 bytes. - module size is limited by the size of contiguous chunk at 1M address. -@item mipsel-loongson (ELF), mips(el)-qemu_mips (ELF): if uncompressed: - kernel.img (.text + .data) + modules is limited by the space from 80200000 forward - if compressed: - kernel.img (.text + .data, uncompressed) + modules (uncompressed) - + (modules + kernel.img (.text + .data)) (compressed) - + decompressor is limited by the space from 80200000 forward -@item mipsel-loongson (Flash), mips(el)-qemu_mips (Flash): kernel.img (.text + .data) + modules is limited by the space from 80200000 forward - core.img (final) is limited by flash size (512K on yeeloong and fulooong) -@item mips-arc: if uncompressed: - kernel.img (.text + .data) is limited by the space from 8bd00000 forward - modules + dummy decompressor is limited by the space from 8bd00000 backward - if compressed: - kernel.img (.text + .data, uncompressed) is limited by the space from 8bd00000 forward - modules (uncompressed) + (modules + kernel.img (.text + .data)) (compressed, aligned to 1M) - + 1M (decompressor + scratch space) is limited by the space from 8bd00000 backward -@item powerpc-ieee1275: kernel.img (.text + .data + .bss) + modules is limited by space available at 0x200000 -@end itemize - -@node Filesystem -@chapter Filesystem syntax and semantics - -GRUB uses a special syntax for specifying disk drives which can be -accessed by BIOS. Because of BIOS limitations, GRUB cannot distinguish -between IDE, ESDI, SCSI, or others. You must know yourself which BIOS -device is equivalent to which OS device. Normally, that will be clear if -you see the files in a device or use the command @command{search} -(@pxref{search}). - -@menu -* Device syntax:: How to specify devices -* File name syntax:: How to specify files -* Block list syntax:: How to specify block lists -@end menu - - -@node Device syntax -@section How to specify devices - -The device syntax is like this: - -@example -@code{(@var{device}[,@var{partmap-name1}@var{part-num1}[,@var{partmap-name2}@var{part-num2}[,...]]])} -@end example - -@samp{[]} means the parameter is optional. @var{device} depends on the disk -driver in use. BIOS and EFI disks use either @samp{fd} or @samp{hd} followed -by a digit, like @samp{fd0}, or @samp{cd}. -AHCI, PATA (ata), crypto, USB use the name of driver followed by a number. -Memdisk and host are limited to one disk and so it's refered just by driver -name. -RAID (md), ofdisk (ieee1275 and nand), LVM (lvm), LDM, virtio (vdsk) -and arcdisk (arc) use intrinsic name of disk prefixed by driver name. -Additionally just ``nand'' refers to the disk aliased as ``nand''. -Conflicts are solved by suffixing a number if necessarry. -Commas need to be escaped. -Loopback uses whatever name specified to @command{loopback} command. -Hostdisk uses names specified in device.map as long as it's of the form -[fhc]d[0-9]* or hostdisk/. -For crypto and RAID (md) additionally you can use the syntax -uuid/. For LVM additionally you can use the syntax -lvmid//. - -@example -(fd0) -(hd0) -(cd) -(ahci0) -(ata0) -(crypto0) -(usb0) -(cryptouuid/123456789abcdef0123456789abcdef0) -(mduuid/123456789abcdef0123456789abcdef0) -(lvm/system-root) -(lvmid/F1ikgD-2RES-306G-il9M-7iwa-4NKW-EbV1NV/eLGuCQ-L4Ka-XUgR-sjtJ-ffch-bajr-fCNfz5) -(md/myraid) -(md/0) -(ieee1275/disk2) -(ieee1275//pci@@1f\,0/ide@@d/disk@@2) -(nand) -(memdisk) -(host) -(myloop) -(hostdisk//dev/sda) -@end example - -@var{part-num} represents the partition number of @var{device}, starting -from one. @var{partname} is optional but is recommended since disk may have -several top-level partmaps. Specifying third and later component you can access -to subpartitions. - -The syntax @samp{(hd0)} represents using the entire disk (or the -MBR when installing GRUB), while the syntax @samp{(hd0,1)} -represents using the first partition of the disk (or the boot sector -of the partition when installing GRUB). - -@example -(hd0,msdos1) -(hd0,msdos1,msdos5) -(hd0,msdos1,bsd3) -(hd0,netbsd1) -(hd0,gpt1) -(hd0,1,3) -@end example - -If you enabled the network support, the special drives -@code{(@var{protocol}[,@var{server}])} are also available. Supported protocols -are @samp{http} and @samp{tftp}. If @var{server} is omitted, value of -environment variable @samp{net_default_server} is used. -Before using the network drive, you must initialize the network. -@xref{Network}, for more information. - -If you boot GRUB from a CD-ROM, @samp{(cd)} is available. @xref{Making -a GRUB bootable CD-ROM}, for details. - - -@node File name syntax -@section How to specify files - -There are two ways to specify files, by @dfn{absolute file name} and by -@dfn{block list}. - -An absolute file name resembles a Unix absolute file name, using -@samp{/} for the directory separator (not @samp{\} as in DOS). One -example is @samp{(hd0,1)/boot/grub/grub.cfg}. This means the file -@file{/boot/grub/grub.cfg} in the first partition of the first hard -disk. If you omit the device name in an absolute file name, GRUB uses -GRUB's @dfn{root device} implicitly. So if you set the root device to, -say, @samp{(hd1,1)} by the command @samp{set root=(hd1,1)} (@pxref{set}), -then @code{/boot/kernel} is the same as @code{(hd1,1)/boot/kernel}. - -On ZFS filesystem the first path component must be -@var{volume}@samp{@@}[@var{snapshot}]. -So @samp{/rootvol@@snap-129/boot/grub/grub.cfg} refers to file -@samp{/boot/grub/grub.cfg} in snapshot of volume @samp{rootvol} with name -@samp{snap-129}. Trailing @samp{@@} after volume name is mandatory even if -snapshot name is omitted. - - -@node Block list syntax -@section How to specify block lists - -A block list is used for specifying a file that doesn't appear in the -filesystem, like a chainloader. The syntax is -@code{[@var{offset}]+@var{length}[,[@var{offset}]+@var{length}]@dots{}}. -Here is an example: - -@example -@code{0+100,200+1,300+300} -@end example - -This represents that GRUB should read blocks 0 through 99, block 200, -and blocks 300 through 599. If you omit an offset, then GRUB assumes -the offset is zero. - -Like the file name syntax (@pxref{File name syntax}), if a blocklist -does not contain a device name, then GRUB uses GRUB's @dfn{root -device}. So @code{(hd0,2)+1} is the same as @code{+1} when the root -device is @samp{(hd0,2)}. - - -@node Interface -@chapter GRUB's user interface - -GRUB has both a simple menu interface for choosing preset entries from a -configuration file, and a highly flexible command-line for performing -any desired combination of boot commands. - -GRUB looks for its configuration file as soon as it is loaded. If one -is found, then the full menu interface is activated using whatever -entries were found in the file. If you choose the @dfn{command-line} menu -option, or if the configuration file was not found, then GRUB drops to -the command-line interface. - -@menu -* Command-line interface:: The flexible command-line interface -* Menu interface:: The simple menu interface -* Menu entry editor:: Editing a menu entry -@end menu - - -@node Command-line interface -@section The flexible command-line interface - -The command-line interface provides a prompt and after it an editable -text area much like a command-line in Unix or DOS. Each command is -immediately executed after it is entered@footnote{However, this -behavior will be changed in the future version, in a user-invisible -way.}. The commands (@pxref{Command-line and menu entry commands}) are a -subset of those available in the configuration file, used with exactly -the same syntax. - -Cursor movement and editing of the text on the line can be done via a -subset of the functions available in the Bash shell: - -@table @key -@item C-f -@itemx PC right key -Move forward one character. - -@item C-b -@itemx PC left key -Move back one character. - -@item C-a -@itemx HOME -Move to the start of the line. - -@item C-e -@itemx END -Move the the end of the line. - -@item C-d -@itemx DEL -Delete the character underneath the cursor. - -@item C-h -@itemx BS -Delete the character to the left of the cursor. - -@item C-k -Kill the text from the current cursor position to the end of the line. - -@item C-u -Kill backward from the cursor to the beginning of the line. - -@item C-y -Yank the killed text back into the buffer at the cursor. - -@item C-p -@itemx PC up key -Move up through the history list. - -@item C-n -@itemx PC down key -Move down through the history list. -@end table - -When typing commands interactively, if the cursor is within or before -the first word in the command-line, pressing the @key{TAB} key (or -@key{C-i}) will display a listing of the available commands, and if the -cursor is after the first word, the @kbd{@key{TAB}} will provide a -completion listing of disks, partitions, and file names depending on the -context. Note that to obtain a list of drives, one must open a -parenthesis, as @command{root (}. - -Note that you cannot use the completion functionality in the TFTP -filesystem. This is because TFTP doesn't support file name listing for -the security. - - -@node Menu interface -@section The simple menu interface - -The menu interface is quite easy to use. Its commands are both -reasonably intuitive and described on screen. - -Basically, the menu interface provides a list of @dfn{boot entries} to -the user to choose from. Use the arrow keys to select the entry of -choice, then press @key{RET} to run it. An optional timeout is -available to boot the default entry (the first one if not set), which is -aborted by pressing any key. - -Commands are available to enter a bare command-line by pressing @key{c} -(which operates exactly like the non-config-file version of GRUB, but -allows one to return to the menu if desired by pressing @key{ESC}) or to -edit any of the @dfn{boot entries} by pressing @key{e}. - -If you protect the menu interface with a password (@pxref{Security}), -all you can do is choose an entry by pressing @key{RET}, or press -@key{p} to enter the password. - - -@node Menu entry editor -@section Editing a menu entry - -The menu entry editor looks much like the main menu interface, but the -lines in the menu are individual commands in the selected entry instead -of entry names. - -If an @key{ESC} is pressed in the editor, it aborts all the changes made -to the configuration entry and returns to the main menu interface. - -Each line in the menu entry can be edited freely, and you can add new lines -by pressing @key{RET} at the end of a line. To boot the edited entry, press -@key{Ctrl-x}. - -Although GRUB unfortunately does not support @dfn{undo}, you can do almost -the same thing by just returning to the main menu using @key{ESC}. - - -@node Environment -@chapter GRUB environment variables - -GRUB supports environment variables which are rather like those offered by -all Unix-like systems. Environment variables have a name, which is unique -and is usually a short identifier, and a value, which is an arbitrary string -of characters. They may be set (@pxref{set}), unset (@pxref{unset}), or -looked up (@pxref{Shell-like scripting}) by name. - -A number of environment variables have special meanings to various parts of -GRUB. Others may be used freely in GRUB configuration files. - - -@menu -* Special environment variables:: -* Environment block:: -@end menu - - -@node Special environment variables -@section Special environment variables - -These variables have special meaning to GRUB. - -@menu -* biosnum:: -* check_signatures:: -* chosen:: -* cmdpath:: -* color_highlight:: -* color_normal:: -* config_directory:: -* config_file:: -* debug:: -* default:: -* fallback:: -* gfxmode:: -* gfxpayload:: -* gfxterm_font:: -* grub_cpu:: -* grub_platform:: -* icondir:: -* lang:: -* locale_dir:: -* menu_color_highlight:: -* menu_color_normal:: -* net_@var{}_boot_file:: -* net_@var{}_dhcp_server_name:: -* net_@var{}_domain:: -* net_@var{}_extensionspath:: -* net_@var{}_hostname:: -* net_@var{}_ip:: -* net_@var{}_mac:: -* net_@var{}_next_server:: -* net_@var{}_rootpath:: -* net_default_interface:: -* net_default_ip:: -* net_default_mac:: -* net_default_server:: -* pager:: -* prefix:: -* pxe_blksize:: -* pxe_default_gateway:: -* pxe_default_server:: -* root:: -* superusers:: -* theme:: -* timeout:: -* timeout_style:: -@end menu - - -@node biosnum -@subsection biosnum - -When chain-loading another boot loader (@pxref{Chain-loading}), GRUB may -need to know what BIOS drive number corresponds to the root device -(@pxref{root}) so that it can set up registers properly. If the -@var{biosnum} variable is set, it overrides GRUB's own means of guessing -this. - -For an alternative approach which also changes BIOS drive mappings for the -chain-loaded system, @pxref{drivemap}. - - -@node check_signatures -@subsection check_signatures - -This variable controls whether GRUB enforces digital signature -validation on loaded files. @xref{Using digital signatures}. - -@node chosen -@subsection chosen - -When executing a menu entry, GRUB sets the @var{chosen} variable to the -title of the entry being executed. - -If the menu entry is in one or more submenus, then @var{chosen} is set to -the titles of each of the submenus starting from the top level followed by -the title of the menu entry itself, separated by @samp{>}. - - -@node cmdpath -@subsection cmdpath - -The location from which @file{core.img} was loaded as an absolute -directory name (@pxref{File name syntax}). This is set by GRUB at -startup based on information returned by platform firmware. Not every -platform provides this information and some may return only device -without path name. - - -@node color_highlight -@subsection color_highlight - -This variable contains the ``highlight'' foreground and background terminal -colors, separated by a slash (@samp{/}). Setting this variable changes -those colors. For the available color names, @pxref{color_normal}. - -The default is @samp{black/light-gray}. - - -@node color_normal -@subsection color_normal - -This variable contains the ``normal'' foreground and background terminal -colors, separated by a slash (@samp{/}). Setting this variable changes -those colors. Each color must be a name from the following list: - -@itemize @bullet -@item black -@item blue -@item green -@item cyan -@item red -@item magenta -@item brown -@item light-gray -@item dark-gray -@item light-blue -@item light-green -@item light-cyan -@item light-red -@item light-magenta -@item yellow -@item white -@end itemize - -The default is @samp{light-gray/black}. - -The color support support varies from terminal to terminal. - -@samp{morse} has no color support at all. - -@samp{mda_text} color support is limited to highlighting by -black/white reversal. - -@samp{console} on ARC, EMU and IEEE1275, @samp{serial_*} and -@samp{spkmodem} are governed by terminfo and support -only 8 colors if in modes @samp{vt100-color} (default for console on emu), -@samp{arc} (default for console on ARC), @samp{ieee1275} (default -for console on IEEE1275). When in mode @samp{vt100} -then the color support is limited to highlighting by black/white -reversal. When in mode @samp{dumb} there is no color support. - -When console supports no colors this setting is ignored. -When console supports 8 colors, then the colors from the -second half of the previous list are mapped to the -matching colors of first half. - -@samp{console} on EFI and BIOS and @samp{vga_text} support all 16 colors. - -@samp{gfxterm} supports all 16 colors and would be theoretically extendable -to support whole rgb24 palette but currently there is no compelling reason -to go beyond the current 16 colors. - - -@node config_directory -@subsection config_directory - -This variable is automatically set by GRUB to the directory part of -current configuration file name (@pxref{config_file}). - - -@node config_file -@subsection config_file - -This variable is automatically set by GRUB to the name of configuration file that is being -processed by commands @command{configfile} (@pxref{configfile}) or @command{normal} -(@pxref{normal}). It is restored to the previous value when command completes. - - -@node debug -@subsection debug - -This variable may be set to enable debugging output from various components -of GRUB. The value is a list of debug facility names separated by -whitespace or @samp{,}, or @samp{all} to enable all available debugging -output. The facility names are the first argument to grub_dprintf. Consult -source for more details. - - -@node default -@subsection default - -If this variable is set, it identifies a menu entry that should be -selected by default, possibly after a timeout (@pxref{timeout}). The -entry may be identified by number (starting from 0 at each level of -the hierarchy), by title, or by id. - -For example, if you have: - -@verbatim -menuentry 'Example GNU/Linux distribution' --class gnu-linux --id example-gnu-linux { - ... -} -@end verbatim - -then you can make this the default using: - -@example -default=example-gnu-linux -@end example - -If the entry is in a submenu, then it must be identified using the -number, title, or id of each of the submenus starting from the top -level, followed by the number, title, or id of the menu entry itself, -with each element separated by @samp{>}. For example, take the -following menu structure: - -@example -GNU/Hurd --id gnu-hurd - Standard Boot --id=gnu-hurd-std - Rescue shell --id=gnu-hurd-rescue -Other platforms --id=other - Minix --id=minix - Version 3.4.0 --id=minix-3.4.0 - Version 3.3.0 --id=minix-3.3.0 - GRUB Invaders --id=grub-invaders -@end example - -The more recent release of Minix would then be identified as -@samp{Other platforms>Minix>Version 3.4.0}, or as @samp{1>0>0}, or as -@samp{other>minix>minix-3.4.0}. - -This variable is often set by @samp{GRUB_DEFAULT} (@pxref{Simple -configuration}), @command{grub-set-default}, or @command{grub-reboot}. - - -@node fallback -@subsection fallback - -If this variable is set, it identifies a menu entry that should be selected -if the default menu entry fails to boot. Entries are identified in the same -way as for @samp{default} (@pxref{default}). - - -@node gfxmode -@subsection gfxmode - -If this variable is set, it sets the resolution used on the @samp{gfxterm} -graphical terminal. Note that you can only use modes which your graphics -card supports via VESA BIOS Extensions (VBE), so for example native LCD -panel resolutions may not be available. The default is @samp{auto}, which -selects a platform-specific default that should look reasonable. Supported -modes can be listed by @samp{videoinfo} command in GRUB. - -The resolution may be specified as a sequence of one or more modes, -separated by commas (@samp{,}) or semicolons (@samp{;}); each will be tried -in turn until one is found. Each mode should be either @samp{auto}, -@samp{@var{width}x@var{height}}, or -@samp{@var{width}x@var{height}x@var{depth}}. - - -@node gfxpayload -@subsection gfxpayload - -If this variable is set, it controls the video mode in which the Linux -kernel starts up, replacing the @samp{vga=} boot option (@pxref{linux}). It -may be set to @samp{text} to force the Linux kernel to boot in normal text -mode, @samp{keep} to preserve the graphics mode set using @samp{gfxmode}, or -any of the permitted values for @samp{gfxmode} to set a particular graphics -mode (@pxref{gfxmode}). - -Depending on your kernel, your distribution, your graphics card, and the -phase of the moon, note that using this option may cause GNU/Linux to suffer -from various display problems, particularly during the early part of the -boot sequence. If you have problems, set this variable to @samp{text} and -GRUB will tell Linux to boot in normal text mode. - -The default is platform-specific. On platforms with a native text mode -(such as PC BIOS platforms), the default is @samp{text}. Otherwise the -default may be @samp{auto} or a specific video mode. - -This variable is often set by @samp{GRUB_GFXPAYLOAD_LINUX} (@pxref{Simple -configuration}). - - -@node gfxterm_font -@subsection gfxterm_font - -If this variable is set, it names a font to use for text on the -@samp{gfxterm} graphical terminal. Otherwise, @samp{gfxterm} may use any -available font. - - -@node grub_cpu -@subsection grub_cpu - -In normal mode (@pxref{normal}), GRUB sets the @samp{grub_cpu} variable to -the CPU type for which GRUB was built (e.g. @samp{i386} or @samp{powerpc}). - - -@node grub_platform -@subsection grub_platform - -In normal mode (@pxref{normal}), GRUB sets the @samp{grub_platform} variable -to the platform for which GRUB was built (e.g. @samp{pc} or @samp{efi}). - - -@node icondir -@subsection icondir - -If this variable is set, it names a directory in which the GRUB graphical -menu should look for icons after looking in the theme's @samp{icons} -directory. @xref{Theme file format}. - - -@node lang -@subsection lang - -If this variable is set, it names the language code that the -@command{gettext} command (@pxref{gettext}) uses to translate strings. For -example, French would be named as @samp{fr}, and Simplified Chinese as -@samp{zh_CN}. - -@command{grub-mkconfig} (@pxref{Simple configuration}) will try to set a -reasonable default for this variable based on the system locale. - - -@node locale_dir -@subsection locale_dir - -If this variable is set, it names the directory where translation files may -be found (@pxref{gettext}), usually @file{/boot/grub/locale}. Otherwise, -internationalization is disabled. - -@command{grub-mkconfig} (@pxref{Simple configuration}) will set a reasonable -default for this variable if internationalization is needed and any -translation files are available. - - -@node menu_color_highlight -@subsection menu_color_highlight - -This variable contains the foreground and background colors to be used for -the highlighted menu entry, separated by a slash (@samp{/}). Setting this -variable changes those colors. For the available color names, -@pxref{color_normal}. - -The default is the value of @samp{color_highlight} -(@pxref{color_highlight}). - - -@node menu_color_normal -@subsection menu_color_normal - -This variable contains the foreground and background colors to be used for -non-highlighted menu entries, separated by a slash (@samp{/}). Setting this -variable changes those colors. For the available color names, -@pxref{color_normal}. - -The default is the value of @samp{color_normal} (@pxref{color_normal}). - - -@node net_@var{}_boot_file -@subsection net_@var{}_boot_file - -@xref{Network}. - - -@node net_@var{}_dhcp_server_name -@subsection net_@var{}_dhcp_server_name - -@xref{Network}. - - -@node net_@var{}_domain -@subsection net_@var{}_domain - -@xref{Network}. - - -@node net_@var{}_extensionspath -@subsection net_@var{}_extensionspath - -@xref{Network}. - - -@node net_@var{}_hostname -@subsection net_@var{}_hostname - -@xref{Network}. - - -@node net_@var{}_ip -@subsection net_@var{}_ip - -@xref{Network}. - - -@node net_@var{}_mac -@subsection net_@var{}_mac - -@xref{Network}. - - -@node net_@var{}_next_server -@subsection net_@var{}_next_server - -@xref{Network}. - - -@node net_@var{}_rootpath -@subsection net_@var{}_rootpath - -@xref{Network}. - - -@node net_default_interface -@subsection net_default_interface - -@xref{Network}. - - -@node net_default_ip -@subsection net_default_ip - -@xref{Network}. - - -@node net_default_mac -@subsection net_default_mac - -@xref{Network}. - - -@node net_default_server -@subsection net_default_server - -@xref{Network}. - - -@node pager -@subsection pager - -If set to @samp{1}, pause output after each screenful and wait for keyboard -input. The default is not to pause output. - - -@node prefix -@subsection prefix - -The location of the @samp{/boot/grub} directory as an absolute file name -(@pxref{File name syntax}). This is normally set by GRUB at startup based -on information provided by @command{grub-install}. GRUB modules are -dynamically loaded from this directory, so it must be set correctly in order -for many parts of GRUB to work. - - -@node pxe_blksize -@subsection pxe_blksize - -@xref{Network}. - - -@node pxe_default_gateway -@subsection pxe_default_gateway - -@xref{Network}. - - -@node pxe_default_server -@subsection pxe_default_server - -@xref{Network}. - - -@node root -@subsection root - -The root device name (@pxref{Device syntax}). Any file names that do not -specify an explicit device name are read from this device. The default is -normally set by GRUB at startup based on the value of @samp{prefix} -(@pxref{prefix}). - -For example, if GRUB was installed to the first partition of the first hard -disk, then @samp{prefix} might be set to @samp{(hd0,msdos1)/boot/grub} and -@samp{root} to @samp{hd0,msdos1}. - - -@node superusers -@subsection superusers - -This variable may be set to a list of superuser names to enable -authentication support. @xref{Security}. - - -@node theme -@subsection theme - -This variable may be set to a directory containing a GRUB graphical menu -theme. @xref{Theme file format}. - -This variable is often set by @samp{GRUB_THEME} (@pxref{Simple -configuration}). - - -@node timeout -@subsection timeout - -If this variable is set, it specifies the time in seconds to wait for -keyboard input before booting the default menu entry. A timeout of @samp{0} -means to boot the default entry immediately without displaying the menu; a -timeout of @samp{-1} (or unset) means to wait indefinitely. - -If @samp{timeout_style} (@pxref{timeout_style}) is set to @samp{countdown} -or @samp{hidden}, the timeout is instead counted before the menu is -displayed. - -This variable is often set by @samp{GRUB_TIMEOUT} (@pxref{Simple -configuration}). - - -@node timeout_style -@subsection timeout_style - -This variable may be set to @samp{menu}, @samp{countdown}, or @samp{hidden} -to control the way in which the timeout (@pxref{timeout}) interacts with -displaying the menu. See the documentation of @samp{GRUB_TIMEOUT_STYLE} -(@pxref{Simple configuration}) for details. - - -@node Environment block -@section The GRUB environment block - -It is often useful to be able to remember a small amount of information from -one boot to the next. For example, you might want to set the default menu -entry based on what was selected the last time. GRUB deliberately does not -implement support for writing files in order to minimise the possibility of -the boot loader being responsible for file system corruption, so a GRUB -configuration file cannot just create a file in the ordinary way. However, -GRUB provides an ``environment block'' which can be used to save a small -amount of state. - -The environment block is a preallocated 1024-byte file, which normally lives -in @file{/boot/grub/grubenv} (although you should not assume this). At boot -time, the @command{load_env} command (@pxref{load_env}) loads environment -variables from it, and the @command{save_env} (@pxref{save_env}) command -saves environment variables to it. From a running system, the -@command{grub-editenv} utility can be used to edit the environment block. - -For safety reasons, this storage is only available when installed on a plain -disk (no LVM or RAID), using a non-checksumming filesystem (no ZFS), and -using BIOS or EFI functions (no ATA, USB or IEEE1275). - -@command{grub-mkconfig} uses this facility to implement -@samp{GRUB_SAVEDEFAULT} (@pxref{Simple configuration}). - - -@node Commands -@chapter The list of available commands - -In this chapter, we list all commands that are available in GRUB. - -Commands belong to different groups. A few can only be used in -the global section of the configuration file (or ``menu''); most -of them can be entered on the command-line and can be used either -anywhere in the menu or specifically in the menu entries. - -In rescue mode, only the @command{insmod} (@pxref{insmod}), @command{ls} -(@pxref{ls}), @command{set} (@pxref{set}), and @command{unset} -(@pxref{unset}) commands are normally available. If you end up in rescue -mode and do not know what to do, then @pxref{GRUB only offers a rescue -shell}. - -@menu -* Menu-specific commands:: -* General commands:: -* Command-line and menu entry commands:: -* Networking commands:: -@end menu - - -@node Menu-specific commands -@section The list of commands for the menu only - -The semantics used in parsing the configuration file are the following: - -@itemize @bullet -@item -The files @emph{must} be in plain-text format. - -@item -@samp{#} at the beginning of a line in a configuration file means it is -only a comment. - -@item -Options are separated by spaces. - -@item -All numbers can be either decimal or hexadecimal. A hexadecimal number -must be preceded by @samp{0x}, and is case-insensitive. -@end itemize - -These commands can only be used in the menu: - -@menu -* menuentry:: Start a menu entry -* submenu:: Group menu entries -@end menu - - -@node menuentry -@subsection menuentry - -@deffn Command menuentry @var{title} @ - [@option{--class=class} @dots{}] [@option{--users=users}] @ - [@option{--unrestricted}] [@option{--hotkey=key}] [@option{--id=id}] @ - [@var{arg} @dots{}] @{ @var{command}; @dots{} @} -This defines a GRUB menu entry named @var{title}. When this entry is -selected from the menu, GRUB will set the @var{chosen} environment variable -to value of @option{--id} if @option{--id} is given, execute the list of -commands given within braces, and if the last command in the list returned -successfully and a kernel was loaded it will execute the @command{boot} command. - -The @option{--class} option may be used any number of times to group menu -entries into classes. Menu themes may display different classes using -different styles. - -The @option{--users} option grants specific users access to specific menu -entries. @xref{Security}. - -The @option{--unrestricted} option grants all users access to specific menu -entries. @xref{Security}. - -The @option{--hotkey} option associates a hotkey with a menu entry. -@var{key} may be a single letter, or one of the aliases @samp{backspace}, -@samp{tab}, or @samp{delete}. - -The @option{--id} may be used to associate unique identifier with a menu entry. -@var{id} is string of ASCII aphanumeric characters, underscore and hyphen -and should not start with a digit. - -All other arguments including @var{title} are passed as positional parameters -when list of commands is executed with @var{title} always assigned to @code{$1}. -@end deffn - - -@node submenu -@subsection submenu - -@deffn Command submenu @var{title} @ - [@option{--class=class} @dots{}] [@option{--users=users}] @ - [@option{--unrestricted}] [@option{--hotkey=key}] [@option{--id=id}] @ - @{ @var{menu entries} @dots{} @} -This defines a submenu. An entry called @var{title} will be added to the -menu; when that entry is selected, a new menu will be displayed showing all -the entries within this submenu. - -All options are the same as in the @command{menuentry} command -(@pxref{menuentry}). -@end deffn - - -@node General commands -@section The list of general commands - -Commands usable anywhere in the menu and in the command-line. - -@menu -* serial:: Set up a serial device -* terminal_input:: Manage input terminals -* terminal_output:: Manage output terminals -* terminfo:: Define terminal type -@end menu - - -@node serial -@subsection serial - -@deffn Command serial [@option{--unit=unit}] [@option{--port=port}] [@option{--speed=speed}] [@option{--word=word}] [@option{--parity=parity}] [@option{--stop=stop}] -Initialize a serial device. @var{unit} is a number in the range 0-3 -specifying which serial port to use; default is 0, which corresponds to -the port often called COM1. @var{port} is the I/O port where the UART -is to be found; if specified it takes precedence over @var{unit}. -@var{speed} is the transmission speed; default is 9600. @var{word} and -@var{stop} are the number of data bits and stop bits. Data bits must -be in the range 5-8 and stop bits must be 1 or 2. Default is 8 data -bits and one stop bit. @var{parity} is one of @samp{no}, @samp{odd}, -@samp{even} and defaults to @samp{no}. - -The serial port is not used as a communication channel unless the -@command{terminal_input} or @command{terminal_output} command is used -(@pxref{terminal_input}, @pxref{terminal_output}). - -See also @ref{Serial terminal}. -@end deffn - - -@node terminal_input -@subsection terminal_input - -@deffn Command terminal_input [@option{--append}|@option{--remove}] @ - [terminal1] [terminal2] @dots{} -List or select an input terminal. - -With no arguments, list the active and available input terminals. - -With @option{--append}, add the named terminals to the list of active input -terminals; any of these may be used to provide input to GRUB. - -With @option{--remove}, remove the named terminals from the active list. - -With no options but a list of terminal names, make only the listed terminal -names active. -@end deffn - - -@node terminal_output -@subsection terminal_output - -@deffn Command terminal_output [@option{--append}|@option{--remove}] @ - [terminal1] [terminal2] @dots{} -List or select an output terminal. - -With no arguments, list the active and available output terminals. - -With @option{--append}, add the named terminals to the list of active output -terminals; all of these will receive output from GRUB. - -With @option{--remove}, remove the named terminals from the active list. - -With no options but a list of terminal names, make only the listed terminal -names active. -@end deffn - - -@node terminfo -@subsection terminfo - -@deffn Command terminfo [-a|-u|-v] [term] -Define the capabilities of your terminal by giving the name of an entry in -the terminfo database, which should correspond roughly to a @samp{TERM} -environment variable in Unix. - -The currently available terminal types are @samp{vt100}, @samp{vt100-color}, -@samp{ieee1275}, and @samp{dumb}. If you need other terminal types, please -contact us to discuss the best way to include support for these in GRUB. - -The @option{-a} (@option{--ascii}), @option{-u} (@option{--utf8}), and -@option{-v} (@option{--visual-utf8}) options control how non-ASCII text is -displayed. @option{-a} specifies an ASCII-only terminal; @option{-u} -specifies logically-ordered UTF-8; and @option{-v} specifies -"visually-ordered UTF-8" (in other words, arranged such that a terminal -emulator without bidirectional text support will display right-to-left text -in the proper order; this is not really proper UTF-8, but a workaround). - -If no option or terminal type is specified, the current terminal type is -printed. -@end deffn - - -@node Command-line and menu entry commands -@section The list of command-line and menu entry commands - -These commands are usable in the command-line and in menu entries. If -you forget a command, you can run the command @command{help} -(@pxref{help}). - -@menu -* [:: Check file types and compare values -* acpi:: Load ACPI tables -* authenticate:: Check whether user is in user list -* background_color:: Set background color for active terminal -* background_image:: Load background image for active terminal -* badram:: Filter out bad regions of RAM -* blocklist:: Print a block list -* boot:: Start up your operating system -* cat:: Show the contents of a file -* chainloader:: Chain-load another boot loader -* clear:: Clear the screen -* cmosclean:: Clear bit in CMOS -* cmosdump:: Dump CMOS contents -* cmostest:: Test bit in CMOS -* cmp:: Compare two files -* configfile:: Load a configuration file -* cpuid:: Check for CPU features -* crc:: Compute or check CRC32 checksums -* cryptomount:: Mount a crypto device -* date:: Display or set current date and time -* devicetree:: Load a device tree blob -* distrust:: Remove a pubkey from trusted keys -* drivemap:: Map a drive to another -* echo:: Display a line of text -* eval:: Evaluate agruments as GRUB commands -* export:: Export an environment variable -* false:: Do nothing, unsuccessfully -* gettext:: Translate a string -* gptsync:: Fill an MBR based on GPT entries -* halt:: Shut down your computer -* hashsum:: Compute or check hash checksum -* help:: Show help messages -* initrd:: Load a Linux initrd -* initrd16:: Load a Linux initrd (16-bit mode) -* insmod:: Insert a module -* keystatus:: Check key modifier status -* linux:: Load a Linux kernel -* linux16:: Load a Linux kernel (16-bit mode) -* list_env:: List variables in environment block -* list_trusted:: List trusted public keys -* load_env:: Load variables from environment block -* loadfont:: Load font files -* loopback:: Make a device from a filesystem image -* ls:: List devices or files -* lsfonts:: List loaded fonts -* lsmod:: Show loaded modules -* md5sum:: Compute or check MD5 hash -* module:: Load module for multiboot kernel -* multiboot:: Load multiboot compliant kernel -* nativedisk:: Switch to native disk drivers -* normal:: Enter normal mode -* normal_exit:: Exit from normal mode -* parttool:: Modify partition table entries -* password:: Set a clear-text password -* password_pbkdf2:: Set a hashed password -* play:: Play a tune -* probe:: Retrieve device info -* pxe_unload:: Unload the PXE environment -* rdmsr:: Read values from model-specific registers -* read:: Read user input -* reboot:: Reboot your computer -* regexp:: Test if regular expression matches string -* rmmod:: Remove a module -* save_env:: Save variables to environment block -* search:: Search devices by file, label, or UUID -* sendkey:: Emulate keystrokes -* set:: Set an environment variable -* sha1sum:: Compute or check SHA1 hash -* sha256sum:: Compute or check SHA256 hash -* sha512sum:: Compute or check SHA512 hash -* sleep:: Wait for a specified number of seconds -* source:: Read a configuration file in same context -* test:: Check file types and compare values -* true:: Do nothing, successfully -* trust:: Add public key to list of trusted keys -* unset:: Unset an environment variable -* uppermem:: Set the upper memory size -@comment * vbeinfo:: List available video modes -* verify_detached:: Verify detached digital signature -* videoinfo:: List available video modes -@comment * xen_*:: Xen boot commands for AArch64 -* wrmsr:: Write values to model-specific registers -* xen_hypervisor:: Load xen hypervisor binary (only on AArch64) -* xen_module:: Load xen modules for xen hypervisor (only on AArch64) -@end menu - - -@node [ -@subsection [ -@deffn Command @code{[} expression @code{]} -Alias for @code{test @var{expression}} (@pxref{test}). -@end deffn - - -@node acpi -@subsection acpi - -@deffn Command acpi [@option{-1}|@option{-2}] @ - [@option{--exclude=table1,@dots{}}|@option{--load-only=table1,@dots{}}] @ - [@option{--oemid=id}] [@option{--oemtable=table}] @ - [@option{--oemtablerev=rev}] [@option{--oemtablecreator=creator}] @ - [@option{--oemtablecreatorrev=rev}] [@option{--no-ebda}] @ - filename @dots{} -Modern BIOS systems normally implement the Advanced Configuration and Power -Interface (ACPI), and define various tables that describe the interface -between an ACPI-compliant operating system and the firmware. In some cases, -the tables provided by default only work well with certain operating -systems, and it may be necessary to replace some of them. - -Normally, this command will replace the Root System Description Pointer -(RSDP) in the Extended BIOS Data Area to point to the new tables. If the -@option{--no-ebda} option is used, the new tables will be known only to -GRUB, but may be used by GRUB's EFI emulation. -@end deffn - - -@node authenticate -@subsection authenticate -@deffn Command authenticate [userlist] -Check whether user is in @var{userlist} or listed in the value of variable -@samp{superusers}. See @pxref{superusers} for valid user list format. -If @samp{superusers} is empty, this command returns true. @xref{Security}. -@end deffn - - -@node background_color -@subsection background_color - -@deffn Command background_color color -Set background color for active terminal. For valid color specifications see -@pxref{Theme file format, ,Colors}. Background color can be changed only when -using @samp{gfxterm} for terminal output. - -This command sets color of empty areas without text. Text background color -is controlled by environment variables @var{color_normal}, @var{color_highlight}, -@var{menu_color_normal}, @var{menu_color_highlight}. @xref{Special environment variables}. -@end deffn - - -@node background_image -@subsection background_image - -@deffn Command background_image [[@option{--mode} @samp{stretch}|@samp{normal}] file] -Load background image for active terminal from @var{file}. Image is stretched -to fill up entire screen unless option @option{--mode} @samp{normal} is given. -Without arguments remove currently loaded background image. Background image -can be changed only when using @samp{gfxterm} for terminal output. - -@end deffn - - -@node badram -@subsection badram - -@deffn Command badram addr,mask[,addr,mask...] -Filter out bad RAM. -@end deffn - -This command notifies the memory manager that specified regions of -RAM ought to be filtered out (usually, because they're damaged). This -remains in effect after a payload kernel has been loaded by GRUB, as -long as the loaded kernel obtains its memory map from GRUB. Kernels that -support this include Linux, GNU Mach, the kernel of FreeBSD and Multiboot -kernels in general. - -Syntax is the same as provided by the @uref{http://www.memtest.org/, -Memtest86+ utility}: a list of address/mask pairs. Given a page-aligned -address and a base address / mask pair, if all the bits of the page-aligned -address that are enabled by the mask match with the base address, it means -this page is to be filtered. This syntax makes it easy to represent patterns -that are often result of memory damage, due to physical distribution of memory -cells. - -@node blocklist -@subsection blocklist - -@deffn Command blocklist file -Print a block list (@pxref{Block list syntax}) for @var{file}. -@end deffn - - -@node boot -@subsection boot - -@deffn Command boot -Boot the OS or chain-loader which has been loaded. Only necessary if -running the fully interactive command-line (it is implicit at the end of -a menu entry). -@end deffn - - -@node cat -@subsection cat - -@deffn Command cat [@option{--dos}] file -Display the contents of the file @var{file}. This command may be useful -to remind you of your OS's root partition: - -@example -grub> @kbd{cat /etc/fstab} -@end example - -If the @option{--dos} option is used, then carriage return / new line pairs -will be displayed as a simple new line. Otherwise, the carriage return will -be displayed as a control character (@samp{}) to make it easier to see -when boot problems are caused by a file formatted using DOS-style line -endings. -@end deffn - - -@node chainloader -@subsection chainloader - -@deffn Command chainloader [@option{--force}] file -Load @var{file} as a chain-loader. Like any other file loaded by the -filesystem code, it can use the blocklist notation (@pxref{Block list -syntax}) to grab the first sector of the current partition with @samp{+1}. -If you specify the option @option{--force}, then load @var{file} forcibly, -whether it has a correct signature or not. This is required when you want to -load a defective boot loader, such as SCO UnixWare 7.1. -@end deffn - - -@node clear -@subsection clear - -@deffn Command clear -Clear the screen. -@end deffn - - -@node cmosclean -@subsection cmosclean - -@deffn Command cmosclean byte:bit -Clear value of bit in CMOS at location @var{byte}:@var{bit}. This command -is available only on platforms that support CMOS. -@end deffn - - -@node cmosdump -@subsection cmosdump - -@deffn Dump CMOS contents -Dump full CMOS contents as hexadecimal values. This command is available only -on platforms that support CMOS. -@end deffn - - -@node cmostest -@subsection cmostest - -@deffn Command cmostest byte:bit -Test value of bit in CMOS at location @var{byte}:@var{bit}. Exit status -is zero if bit is set, non zero otherwise. This command is available only -on platforms that support CMOS. -@end deffn - - -@node cmp -@subsection cmp - -@deffn Command cmp file1 file2 -Compare the file @var{file1} with the file @var{file2}. If they differ -in size, print the sizes like this: - -@example -Differ in size: 0x1234 [foo], 0x4321 [bar] -@end example - -If the sizes are equal but the bytes at an offset differ, then print the -bytes like this: - -@example -Differ at the offset 777: 0xbe [foo], 0xef [bar] -@end example - -If they are completely identical, nothing will be printed. -@end deffn - - -@node configfile -@subsection configfile - -@deffn Command configfile file -Load @var{file} as a configuration file. If @var{file} defines any menu -entries, then show a menu containing them immediately. Any environment -variable changes made by the commands in @var{file} will not be preserved -after @command{configfile} returns. -@end deffn - - -@node cpuid -@subsection cpuid - -@deffn Command cpuid [-l] [-p] -Check for CPU features. This command is only available on x86 systems. - -With the @option{-l} option, return true if the CPU supports long mode -(64-bit). - -With the @option{-p} option, return true if the CPU supports Physical -Address Extension (PAE). - -If invoked without options, this command currently behaves as if it had been -invoked with @option{-l}. This may change in the future. -@end deffn - - -@node crc -@subsection crc - -@deffn Command crc arg @dots{} -Alias for @code{hashsum --hash crc32 arg @dots{}}. See command @command{hashsum} -(@pxref{hashsum}) for full description. -@end deffn - - -@node cryptomount -@subsection cryptomount - -@deffn Command cryptomount device|@option{-u} uuid|@option{-a}|@option{-b} -Setup access to encrypted device. If necessary, passphrase -is requested interactively. Option @var{device} configures specific grub device -(@pxref{Naming convention}); option @option{-u} @var{uuid} configures device -with specified @var{uuid}; option @option{-a} configures all detected encrypted -devices; option @option{-b} configures all geli containers that have boot flag set. - -GRUB suports devices encrypted using LUKS and geli. Note that necessary modules (@var{luks} and @var{geli}) have to be loaded manually before this command can -be used. -@end deffn - - -@node date -@subsection date - -@deffn Command date [[year-]month-day] [hour:minute[:second]] -With no arguments, print the current date and time. - -Otherwise, take the current date and time, change any elements specified as -arguments, and set the result as the new date and time. For example, `date -01-01' will set the current month and day to January 1, but leave the year, -hour, minute, and second unchanged. -@end deffn - - -@node devicetree -@subsection linux - -@deffn Command devicetree file -Load a device tree blob (.dtb) from a filesystem, for later use by a Linux -kernel. Does not perform merging with any device tree supplied by firmware, -but rather replaces it completely. -@ref{GNU/Linux}. -@end deffn - -@node distrust -@subsection distrust - -@deffn Command distrust pubkey_id -Remove public key @var{pubkey_id} from GRUB's keyring of trusted keys. -@var{pubkey_id} is the last four bytes (eight hexadecimal digits) of -the GPG v4 key id, which is also the output of @command{list_trusted} -(@pxref{list_trusted}). Outside of GRUB, the key id can be obtained -using @code{gpg --fingerprint}). -These keys are used to validate signatures when environment variable -@code{check_signatures} is set to @code{enforce} -(@pxref{check_signatures}), and by some invocations of -@command{verify_detached} (@pxref{verify_detached}). @xref{Using -digital signatures}, for more information. -@end deffn - -@node drivemap -@subsection drivemap - -@deffn Command drivemap @option{-l}|@option{-r}|[@option{-s}] @ - from_drive to_drive -Without options, map the drive @var{from_drive} to the drive @var{to_drive}. -This is necessary when you chain-load some operating systems, such as DOS, -if such an OS resides at a non-first drive. For convenience, any partition -suffix on the drive is ignored, so you can safely use @verb{'${root}'} as a -drive specification. - -With the @option{-s} option, perform the reverse mapping as well, swapping -the two drives. - -With the @option{-l} option, list the current mappings. - -With the @option{-r} option, reset all mappings to the default values. - -For example: - -@example -drivemap -s (hd0) (hd1) -@end example -@end deffn - - -@node echo -@subsection echo - -@deffn Command echo [@option{-n}] [@option{-e}] string @dots{} -Display the requested text and, unless the @option{-n} option is used, a -trailing new line. If there is more than one string, they are separated by -spaces in the output. As usual in GRUB commands, variables may be -substituted using @samp{$@{var@}}. - -The @option{-e} option enables interpretation of backslash escapes. The -following sequences are recognised: - -@table @code -@item \\ -backslash - -@item \a -alert (BEL) - -@item \c -suppress trailing new line - -@item \f -form feed - -@item \n -new line - -@item \r -carriage return - -@item \t -horizontal tab - -@item \v -vertical tab -@end table - -When interpreting backslash escapes, backslash followed by any other -character will print that character. -@end deffn - - -@node eval -@subsection eval - -@deffn Command eval string ... -Concatenate arguments together using single space as separator and evaluate -result as sequence of GRUB commands. -@end deffn - - -@node export -@subsection export - -@deffn Command export envvar -Export the environment variable @var{envvar}. Exported variables are visible -to subsidiary configuration files loaded using @command{configfile}. -@end deffn - - -@node false -@subsection false - -@deffn Command false -Do nothing, unsuccessfully. This is mainly useful in control constructs -such as @code{if} and @code{while} (@pxref{Shell-like scripting}). -@end deffn - - -@node gettext -@subsection gettext - -@deffn Command gettext string -Translate @var{string} into the current language. - -The current language code is stored in the @samp{lang} variable in GRUB's -environment (@pxref{lang}). Translation files in MO format are read from -@samp{locale_dir} (@pxref{locale_dir}), usually @file{/boot/grub/locale}. -@end deffn - - -@node gptsync -@subsection gptsync - -@deffn Command gptsync device [partition[+/-[type]]] @dots{} -Disks using the GUID Partition Table (GPT) also have a legacy Master Boot -Record (MBR) partition table for compatibility with the BIOS and with older -operating systems. The legacy MBR can only represent a limited subset of -GPT partition entries. - -This command populates the legacy MBR with the specified @var{partition} -entries on @var{device}. Up to three partitions may be used. - -@var{type} is an MBR partition type code; prefix with @samp{0x} if you want -to enter this in hexadecimal. The separator between @var{partition} and -@var{type} may be @samp{+} to make the partition active, or @samp{-} to make -it inactive; only one partition may be active. If both the separator and -type are omitted, then the partition will be inactive. -@end deffn - - -@node halt -@subsection halt - -@deffn Command halt @option{--no-apm} -The command halts the computer. If the @option{--no-apm} option -is specified, no APM BIOS call is performed. Otherwise, the computer -is shut down using APM. -@end deffn - - -@node hashsum -@subsection hashsum - -@deffn Command hashsum @option{--hash} hash @option{--keep-going} @option{--uncompress} @option{--check} file [@option{--prefix} dir]|file @dots{} -Compute or verify file hashes. Hash type is selected with option @option{--hash}. -Supported hashes are: @samp{adler32}, @samp{crc64}, @samp{crc32}, -@samp{crc32rfc1510}, @samp{crc24rfc2440}, @samp{md4}, @samp{md5}, -@samp{ripemd160}, @samp{sha1}, @samp{sha224}, @samp{sha256}, @samp{sha512}, -@samp{sha384}, @samp{tiger192}, @samp{tiger}, @samp{tiger2}, @samp{whirlpool}. -Option @option{--uncompress} uncompresses files before computing hash. - -When list of files is given, hash of each file is computed and printed, -followed by file name, each file on a new line. - -When option @option{--check} is given, it points to a file that contains -list of @var{hash name} pairs in the same format as used by UNIX -@command{md5sum} command. Option @option{--prefix} -may be used to give directory where files are located. Hash verification -stops after the first mismatch was found unless option @option{--keep-going} -was given. The exit code @code{$?} is set to 0 if hash verification -is successful. If it fails, @code{$?} is set to a nonzero value. -@end deffn - - -@node help -@subsection help - -@deffn Command help [pattern @dots{}] -Display helpful information about builtin commands. If you do not -specify @var{pattern}, this command shows short descriptions of all -available commands. - -If you specify any @var{patterns}, it displays longer information -about each of the commands whose names begin with those @var{patterns}. -@end deffn - - -@node initrd -@subsection initrd - -@deffn Command initrd file -Load an initial ramdisk for a Linux kernel image, and set the appropriate -parameters in the Linux setup area in memory. This may only be used after -the @command{linux} command (@pxref{linux}) has been run. See also -@ref{GNU/Linux}. -@end deffn - - -@node initrd16 -@subsection initrd16 - -@deffn Command initrd16 file -Load an initial ramdisk for a Linux kernel image to be booted in 16-bit -mode, and set the appropriate parameters in the Linux setup area in memory. -This may only be used after the @command{linux16} command (@pxref{linux16}) -has been run. See also @ref{GNU/Linux}. - -This command is only available on x86 systems. -@end deffn - - -@node insmod -@subsection insmod - -@deffn Command insmod module -Insert the dynamic GRUB module called @var{module}. -@end deffn - - -@node keystatus -@subsection keystatus - -@deffn Command keystatus [@option{--shift}] [@option{--ctrl}] [@option{--alt}] -Return true if the Shift, Control, or Alt modifier keys are held down, as -requested by options. This is useful in scripting, to allow some user -control over behaviour without having to wait for a keypress. - -Checking key modifier status is only supported on some platforms. If invoked -without any options, the @command{keystatus} command returns true if and -only if checking key modifier status is supported. -@end deffn - - -@node linux -@subsection linux - -@deffn Command linux file @dots{} -Load a Linux kernel image from @var{file}. The rest of the line is passed -verbatim as the @dfn{kernel command-line}. Any initrd must be reloaded -after using this command (@pxref{initrd}). - -On x86 systems, the kernel will be booted using the 32-bit boot protocol. -Note that this means that the @samp{vga=} boot option will not work; if you -want to set a special video mode, you will need to use GRUB commands such as -@samp{set gfxpayload=1024x768} or @samp{set gfxpayload=keep} (to keep the -same mode as used in GRUB) instead. GRUB can automatically detect some uses -of @samp{vga=} and translate them to appropriate settings of -@samp{gfxpayload}. The @command{linux16} command (@pxref{linux16}) avoids -this restriction. -@end deffn - - -@node linux16 -@subsection linux16 - -@deffn Command linux16 file @dots{} -Load a Linux kernel image from @var{file} in 16-bit mode. The rest of the -line is passed verbatim as the @dfn{kernel command-line}. Any initrd must -be reloaded after using this command (@pxref{initrd16}). - -The kernel will be booted using the traditional 16-bit boot protocol. As -well as bypassing problems with @samp{vga=} described in @ref{linux}, this -permits booting some other programs that implement the Linux boot protocol -for the sake of convenience. - -This command is only available on x86 systems. -@end deffn - - -@node list_env -@subsection list_env - -@deffn Command list_env [@option{--file} file] -List all variables in the environment block file. @xref{Environment block}. - -The @option{--file} option overrides the default location of the -environment block. -@end deffn - -@node list_trusted -@subsection list_trusted - -@deffn Command list_trusted -List all public keys trusted by GRUB for validating signatures. -The output is in GPG's v4 key fingerprint format (i.e., the output of -@code{gpg --fingerprint}). The least significant four bytes (last -eight hexadecimal digits) can be used as an argument to -@command{distrust} (@pxref{distrust}). -@xref{Using digital signatures}, for more information about uses for -these keys. -@end deffn - -@node load_env -@subsection load_env - -@deffn Command load_env [@option{--file} file] [@option{--skip-sig}] [whitelisted_variable_name] @dots{} -Load all variables from the environment block file into the environment. -@xref{Environment block}. - -The @option{--file} option overrides the default location of the environment -block. - -The @option{--skip-sig} option skips signature checking even when the -value of environment variable @code{check_signatures} is set to -@code{enforce} (@pxref{check_signatures}). - -If one or more variable names are provided as arguments, they are -interpreted as a whitelist of variables to load from the environment -block file. Variables set in the file but not present in the -whitelist are ignored. - -The @option{--skip-sig} option should be used with care, and should -always be used in concert with a whitelist of acceptable variables -whose values should be set. Failure to employ a carefully constructed -whitelist could result in reading a malicious value into critical -environment variables from the file, such as setting -@code{check_signatures=no}, modifying @code{prefix} to boot from an -unexpected location or not at all, etc. - -When used with care, @option{--skip-sig} and the whitelist enable an -administrator to configure a system to boot only signed -configurations, but to allow the user to select from among multiple -configurations, and to enable ``one-shot'' boot attempts and -``savedefault'' behavior. @xref{Using digital signatures}, for more -information. -@end deffn - - -@node loadfont -@subsection loadfont - -@deffn Command loadfont file @dots{} -Load specified font files. Unless absolute pathname is given, @var{file} -is assumed to be in directory @samp{$prefix/fonts} with -suffix @samp{.pf2} appended. @xref{Theme file format,,Fonts}. -@end deffn - - -@node loopback -@subsection loopback - -@deffn Command loopback [@option{-d}] device file -Make the device named @var{device} correspond to the contents of the -filesystem image in @var{file}. For example: - -@example -loopback loop0 /path/to/image -ls (loop0)/ -@end example - -With the @option{-d} option, delete a device previously created using this -command. -@end deffn - - -@node ls -@subsection ls - -@deffn Command ls [arg @dots{}] -List devices or files. - -With no arguments, print all devices known to GRUB. - -If the argument is a device name enclosed in parentheses (@pxref{Device -syntax}), then print the name of the filesystem of that device. - -If the argument is a directory given as an absolute file name (@pxref{File -name syntax}), then list the contents of that directory. -@end deffn - - -@node lsfonts -@subsection lsfonts - -@deffn Command lsfonts -List loaded fonts. -@end deffn - - -@node lsmod -@subsection lsmod - -@deffn Command lsmod -Show list of loaded modules. -@end deffn - -@node md5sum -@subsection md5sum - -@deffn Command md5sum arg @dots{} -Alias for @code{hashsum --hash md5 arg @dots{}}. See command @command{hashsum} -(@pxref{hashsum}) for full description. -@end deffn - -@node module -@subsection module - -@deffn Command module [--nounzip] file [arguments] -Load a module for multiboot kernel image. The rest of the -line is passed verbatim as the module command line. -@end deffn - -@node multiboot -@subsection multiboot - -@deffn Command multiboot [--quirk-bad-kludge] [--quirk-modules-after-kernel] file @dots{} -Load a multiboot kernel image from @var{file}. The rest of the -line is passed verbatim as the @dfn{kernel command-line}. Any module must -be reloaded after using this command (@pxref{module}). - -Some kernels have known problems. You need to specify --quirk-* for those. ---quirk-bad-kludge is a problem seen in several products that they include -loading kludge information with invalid data in ELF file. GRUB prior to 0.97 -and some custom builds prefered ELF information while 0.97 and GRUB 2 -use kludge. Use this option to ignore kludge. -Known affected systems: old Solaris, SkyOS. - ---quirk-modules-after-kernel is needed for kernels which load at relatively -high address e.g. 16MiB mark and can't cope with modules stuffed between -1MiB mark and beginning of the kernel. -Known afftected systems: VMWare. -@end deffn - -@node nativedisk -@subsection nativedisk - -@deffn Command nativedisk -Switch from firmware disk drivers to native ones. -Really useful only on platforms where both -firmware and native disk drives are available. -Currently i386-pc, i386-efi, i386-ieee1275 and -x86_64-efi. -@end deffn - -@node normal -@subsection normal - -@deffn Command normal [file] -Enter normal mode and display the GRUB menu. - -In normal mode, commands, filesystem modules, and cryptography modules are -automatically loaded, and the full GRUB script parser is available. Other -modules may be explicitly loaded using @command{insmod} (@pxref{insmod}). - -If a @var{file} is given, then commands will be read from that file. -Otherwise, they will be read from @file{$prefix/grub.cfg} if it exists. - -@command{normal} may be called from within normal mode, creating a nested -environment. It is more usual to use @command{configfile} -(@pxref{configfile}) for this. -@end deffn - - -@node normal_exit -@subsection normal_exit - -@deffn Command normal_exit -Exit normal mode (@pxref{normal}). If this instance of normal mode was not -nested within another one, then return to rescue mode. -@end deffn - - -@node parttool -@subsection parttool - -@deffn Command parttool partition commands -Make various modifications to partition table entries. - -Each @var{command} is either a boolean option, in which case it must be -followed with @samp{+} or @samp{-} (with no intervening space) to enable or -disable that option, or else it takes a value in the form -@samp{@var{command}=@var{value}}. - -Currently, @command{parttool} is only useful on DOS partition tables (also -known as Master Boot Record, or MBR). On these partition tables, the -following commands are available: - -@table @asis -@item @samp{boot} (boolean) -When enabled, this makes the selected partition be the active (bootable) -partition on its disk, clearing the active flag on all other partitions. -This command is limited to @emph{primary} partitions. - -@item @samp{type} (value) -Change the type of an existing partition. The value must be a number in the -range 0-0xFF (prefix with @samp{0x} to enter it in hexadecimal). - -@item @samp{hidden} (boolean) -When enabled, this hides the selected partition by setting the @dfn{hidden} -bit in its partition type code; when disabled, unhides the selected -partition by clearing this bit. This is useful only when booting DOS or -Windows and multiple primary FAT partitions exist in one disk. See also -@ref{DOS/Windows}. -@end table -@end deffn - - -@node password -@subsection password - -@deffn Command password user clear-password -Define a user named @var{user} with password @var{clear-password}. -@xref{Security}. -@end deffn - - -@node password_pbkdf2 -@subsection password_pbkdf2 - -@deffn Command password_pbkdf2 user hashed-password -Define a user named @var{user} with password hash @var{hashed-password}. -Use @command{grub-mkpasswd-pbkdf2} (@pxref{Invoking grub-mkpasswd-pbkdf2}) -to generate password hashes. @xref{Security}. -@end deffn - - -@node play -@subsection play - -@deffn Command play file | tempo [pitch1 duration1] [pitch2 duration2] @dots{} -Plays a tune - -If the argument is a file name (@pxref{File name syntax}), play the tune -recorded in it. The file format is first the tempo as an unsigned 32bit -little-endian number, then pairs of unsigned 16bit little-endian numbers for -pitch and duration pairs. - -If the arguments are a series of numbers, play the inline tune. - -The tempo is the base for all note durations. 60 gives a 1-second base, 120 -gives a half-second base, etc. Pitches are Hz. Set pitch to 0 to produce -a rest. -@end deffn - - -@node probe -@subsection probe - -@deffn Command probe [@option{--set} var] @option{--driver}|@option{--partmap}|@option{--fs}|@option{--fs-uuid}|@option{--label} device -Retrieve device information. If option @option{--set} is given, assign result -to variable @var{var}, otherwise print information on the screen. -@end deffn - - -@node pxe_unload -@subsection pxe_unload - -@deffn Command pxe_unload -Unload the PXE environment (@pxref{Network}). - -This command is only available on PC BIOS systems. -@end deffn - - -@node rdmsr -@subsection rdmsr - -@deffn Command: rdmsr 0xADDR [-v VARNAME] -Read a model-specific register at address 0xADDR. If the parameter -@option{-v} is used and an environment variable @var{VARNAME} is -given, set that environment variable to the value that was read. - -Please note that on SMP systems, reading from a MSR that has a -scope per hardware thread, implies that the value that is returned -only applies to the particular cpu/core/thread that runs the command. - -Also, if you specify a reserved or unimplemented MSR address, it will -cause a general protection exception (which is not currently being handled) -and the system will reboot. -@end deffn - - -@node read -@subsection read - -@deffn Command read [var] -Read a line of input from the user. If an environment variable @var{var} is -given, set that environment variable to the line of input that was read, -with no terminating newline. -@end deffn - - -@node reboot -@subsection reboot - -@deffn Command reboot -Reboot the computer. -@end deffn - - -@node regexp -@subsection regexp - -@deffn Command regexp [@option{--set} [number:]var] regexp string -Test if regular expression @var{regexp} matches @var{string}. Supported -regular expressions are POSIX.2 Extended Regular Expressions. If option -@option{--set} is given, store @var{number}th matched subexpression in -variable @var{var}. Subexpressions are numbered in order of their opening -parentheses starting from @samp{1}. @var{number} defaults to @samp{1}. -@end deffn - - -@node rmmod -@subsection rmmod - -@deffn Command rmmod module -Remove a loaded @var{module}. -@end deffn - - -@node save_env -@subsection save_env - -@deffn Command save_env [@option{--file} file] var @dots{} -Save the named variables from the environment to the environment block file. -@xref{Environment block}. - -The @option{--file} option overrides the default location of the environment -block. - -This command will operate successfully even when environment variable -@code{check_signatures} is set to @code{enforce} -(@pxref{check_signatures}), since it writes to disk and does not alter -the behavior of GRUB based on any contents of disk that have been -read. It is possible to modify a digitally signed environment block -file from within GRUB using this command, such that its signature will -no longer be valid on subsequent boots. Care should be taken in such -advanced configurations to avoid rendering the system -unbootable. @xref{Using digital signatures}, for more information. -@end deffn - - -@node search -@subsection search - -@deffn Command search @ - [@option{--file}|@option{--label}|@option{--fs-uuid}] @ - [@option{--set} [var]] [@option{--no-floppy}] name -Search devices by file (@option{-f}, @option{--file}), filesystem label -(@option{-l}, @option{--label}), or filesystem UUID (@option{-u}, -@option{--fs-uuid}). - -If the @option{--set} option is used, the first device found is set as the -value of environment variable @var{var}. The default variable is -@samp{root}. - -The @option{--no-floppy} option prevents searching floppy devices, which can -be slow. - -The @samp{search.file}, @samp{search.fs_label}, and @samp{search.fs_uuid} -commands are aliases for @samp{search --file}, @samp{search --label}, and -@samp{search --fs-uuid} respectively. -@end deffn - - -@node sendkey -@subsection sendkey - -@deffn Command sendkey @ - [@option{--num}|@option{--caps}|@option{--scroll}|@option{--insert}|@ -@option{--pause}|@option{--left-shift}|@option{--right-shift}|@ -@option{--sysrq}|@option{--numkey}|@option{--capskey}|@option{--scrollkey}|@ -@option{--insertkey}|@option{--left-alt}|@option{--right-alt}|@ -@option{--left-ctrl}|@option{--right-ctrl} @ - @samp{on}|@samp{off}]@dots{} @ - [@option{no-led}] @ - keystroke -Insert keystrokes into the keyboard buffer when booting. Sometimes an -operating system or chainloaded boot loader requires particular keys to be -pressed: for example, one might need to press a particular key to enter -"safe mode", or when chainloading another boot loader one might send -keystrokes to it to navigate its menu. - -You may provide up to 16 keystrokes (the length of the BIOS keyboard -buffer). Keystroke names may be upper-case or lower-case letters, digits, -or taken from the following table: - -@c Please keep this table in the same order as in -@c commands/i386/pc/sendkey.c, for ease of maintenance. -@c Exception: The function and numeric keys are sorted, for aesthetics. - -@multitable @columnfractions .4 .5 -@headitem Name @tab Key -@item escape @tab Escape -@item exclam @tab ! -@item at @tab @@ -@item numbersign @tab # -@item dollar @tab $ -@item percent @tab % -@item caret @tab ^ -@item ampersand @tab & -@item asterisk @tab * -@item parenleft @tab ( -@item parenright @tab ) -@item minus @tab - -@item underscore @tab _ -@item equal @tab = -@item plus @tab + -@item backspace @tab Backspace -@item tab @tab Tab -@item bracketleft @tab [ -@item braceleft @tab @{ -@item bracketright @tab ] -@item braceright @tab @} -@item enter @tab Enter -@item control @tab press and release Control -@item semicolon @tab ; -@item colon @tab : -@item quote @tab ' -@item doublequote @tab " -@item backquote @tab ` -@item tilde @tab ~ -@item shift @tab press and release left Shift -@item backslash @tab \ -@item bar @tab | -@item comma @tab , -@item less @tab < -@item period @tab . -@item greater @tab > -@item slash @tab / -@item question @tab ? -@item rshift @tab press and release right Shift -@item alt @tab press and release Alt -@item space @tab space bar -@item capslock @tab Caps Lock -@item F1 @tab F1 -@item F2 @tab F2 -@item F3 @tab F3 -@item F4 @tab F4 -@item F5 @tab F5 -@item F6 @tab F6 -@item F7 @tab F7 -@item F8 @tab F8 -@item F9 @tab F9 -@item F10 @tab F10 -@item F11 @tab F11 -@item F12 @tab F12 -@item num1 @tab 1 (numeric keypad) -@item num2 @tab 2 (numeric keypad) -@item num3 @tab 3 (numeric keypad) -@item num4 @tab 4 (numeric keypad) -@item num5 @tab 5 (numeric keypad) -@item num6 @tab 6 (numeric keypad) -@item num7 @tab 7 (numeric keypad) -@item num8 @tab 8 (numeric keypad) -@item num9 @tab 9 (numeric keypad) -@item num0 @tab 0 (numeric keypad) -@item numperiod @tab . (numeric keypad) -@item numend @tab End (numeric keypad) -@item numdown @tab Down (numeric keypad) -@item numpgdown @tab Page Down (numeric keypad) -@item numleft @tab Left (numeric keypad) -@item numcenter @tab 5 with Num Lock inactive (numeric keypad) -@item numright @tab Right (numeric keypad) -@item numhome @tab Home (numeric keypad) -@item numup @tab Up (numeric keypad) -@item numpgup @tab Page Up (numeric keypad) -@item numinsert @tab Insert (numeric keypad) -@item numdelete @tab Delete (numeric keypad) -@item numasterisk @tab * (numeric keypad) -@item numminus @tab - (numeric keypad) -@item numplus @tab + (numeric keypad) -@item numslash @tab / (numeric keypad) -@item numenter @tab Enter (numeric keypad) -@item delete @tab Delete -@item insert @tab Insert -@item home @tab Home -@item end @tab End -@item pgdown @tab Page Down -@item pgup @tab Page Up -@item down @tab Down -@item up @tab Up -@item left @tab Left -@item right @tab Right -@end multitable - -As well as keystrokes, the @command{sendkey} command takes various options -that affect the BIOS keyboard status flags. These options take an @samp{on} -or @samp{off} parameter, specifying that the corresponding status flag be -set or unset; omitting the option for a given status flag will leave that -flag at its initial state at boot. The @option{--num}, @option{--caps}, -@option{--scroll}, and @option{--insert} options emulate setting the -corresponding mode, while the @option{--numkey}, @option{--capskey}, -@option{--scrollkey}, and @option{--insertkey} options emulate pressing and -holding the corresponding key. The other status flag options are -self-explanatory. - -If the @option{--no-led} option is given, the status flag options will have -no effect on keyboard LEDs. - -If the @command{sendkey} command is given multiple times, then only the last -invocation has any effect. - -Since @command{sendkey} manipulates the BIOS keyboard buffer, it may cause -hangs, reboots, or other misbehaviour on some systems. If the operating -system or boot loader that runs after GRUB uses its own keyboard driver -rather than the BIOS keyboard functions, then @command{sendkey} will have no -effect. - -This command is only available on PC BIOS systems. -@end deffn - - -@node set -@subsection set - -@deffn Command set [envvar=value] -Set the environment variable @var{envvar} to @var{value}. If invoked with no -arguments, print all environment variables with their values. -@end deffn - - -@node sha1sum -@subsection sha1sum - -@deffn Command sha1sum arg @dots{} -Alias for @code{hashsum --hash sha1 arg @dots{}}. See command @command{hashsum} -(@pxref{hashsum}) for full description. -@end deffn - - -@node sha256sum -@subsection sha256sum - -@deffn Command sha256sum arg @dots{} -Alias for @code{hashsum --hash sha256 arg @dots{}}. See command @command{hashsum} -(@pxref{hashsum}) for full description. -@end deffn - - -@node sha512sum -@subsection sha512sum - -@deffn Command sha512sum arg @dots{} -Alias for @code{hashsum --hash sha512 arg @dots{}}. See command @command{hashsum} -(@pxref{hashsum}) for full description. -@end deffn - - -@node sleep -@subsection sleep - -@deffn Command sleep [@option{--verbose}] [@option{--interruptible}] count -Sleep for @var{count} seconds. If option @option{--interruptible} is given, -allow @key{ESC} to interrupt sleep. With @option{--verbose} show countdown -of remaining seconds. Exit code is set to 0 if timeout expired and to 1 -if timeout was interrupted by @key{ESC}. -@end deffn - - -@node source -@subsection source - -@deffn Command source file -Read @var{file} as a configuration file, as if its contents had been -incorporated directly into the sourcing file. Unlike @command{configfile} -(@pxref{configfile}), this executes the contents of @var{file} without -changing context: any environment variable changes made by the commands in -@var{file} will be preserved after @command{source} returns, and the menu -will not be shown immediately. -@end deffn - - -@node test -@subsection test - -@deffn Command test expression -Evaluate @var{expression} and return zero exit status if result is true, -non zero status otherwise. - -@var{expression} is one of: - -@table @asis -@item @var{string1} @code{==} @var{string2} -the strings are equal -@item @var{string1} @code{!=} @var{string2} -the strings are not equal -@item @var{string1} @code{<} @var{string2} -@var{string1} is lexicographically less than @var{string2} -@item @var{string1} @code{<=} @var{string2} -@var{string1} is lexicographically less or equal than @var{string2} -@item @var{string1} @code{>} @var{string2} -@var{string1} is lexicographically greater than @var{string2} -@item @var{string1} @code{>=} @var{string2} -@var{string1} is lexicographically greater or equal than @var{string2} -@item @var{integer1} @code{-eq} @var{integer2} -@var{integer1} is equal to @var{integer2} -@item @var{integer1} @code{-ge} @var{integer2} -@var{integer1} is greater than or equal to @var{integer2} -@item @var{integer1} @code{-gt} @var{integer2} -@var{integer1} is greater than @var{integer2} -@item @var{integer1} @code{-le} @var{integer2} -@var{integer1} is less than or equal to @var{integer2} -@item @var{integer1} @code{-lt} @var{integer2} -@var{integer1} is less than @var{integer2} -@item @var{integer1} @code{-ne} @var{integer2} -@var{integer1} is not equal to @var{integer2} -@item @var{prefix}@var{integer1} @code{-pgt} @var{prefix}@var{integer2} -@var{integer1} is greater than @var{integer2} after stripping off common non-numeric @var{prefix}. -@item @var{prefix}@var{integer1} @code{-plt} @var{prefix}@var{integer2} -@var{integer1} is less than @var{integer2} after stripping off common non-numeric @var{prefix}. -@item @var{file1} @code{-nt} @var{file2} -@var{file1} is newer than @var{file2} (modification time). Optionally numeric @var{bias} may be directly appended to @code{-nt} in which case it is added to the first file modification time. -@item @var{file1} @code{-ot} @var{file2} -@var{file1} is older than @var{file2} (modification time). Optionally numeric @var{bias} may be directly appended to @code{-ot} in which case it is added to the first file modification time. -@item @code{-d} @var{file} -@var{file} exists and is a directory -@item @code{-e} @var{file} -@var{file} exists -@item @code{-f} @var{file} -@var{file} exists and is not a directory -@item @code{-s} @var{file} -@var{file} exists and has a size greater than zero -@item @code{-n} @var{string} -the length of @var{string} is nonzero -@item @var{string} -@var{string} is equivalent to @code{-n @var{string}} -@item @code{-z} @var{string} -the length of @var{string} is zero -@item @code{(} @var{expression} @code{)} -@var{expression} is true -@item @code{!} @var{expression} -@var{expression} is false -@item @var{expression1} @code{-a} @var{expression2} -both @var{expression1} and @var{expression2} are true -@item @var{expression1} @var{expression2} -both @var{expression1} and @var{expression2} are true. This syntax is not POSIX-compliant and is not recommended. -@item @var{expression1} @code{-o} @var{expression2} -either @var{expression1} or @var{expression2} is true -@end table -@end deffn - - -@node true -@subsection true - -@deffn Command true -Do nothing, successfully. This is mainly useful in control constructs such -as @code{if} and @code{while} (@pxref{Shell-like scripting}). -@end deffn - -@node trust -@subsection trust - -@deffn Command trust [@option{--skip-sig}] pubkey_file -Read public key from @var{pubkey_file} and add it to GRUB's internal -list of trusted public keys. These keys are used to validate digital -signatures when environment variable @code{check_signatures} is set to -@code{enforce}. Note that if @code{check_signatures} is set to -@code{enforce} when @command{trust} executes, then @var{pubkey_file} -must itself be properly signed. The @option{--skip-sig} option can be -used to disable signature-checking when reading @var{pubkey_file} -itself. It is expected that @option{--skip-sig} is useful for testing -and manual booting. @xref{Using digital signatures}, for more -information. -@end deffn - - -@node unset -@subsection unset - -@deffn Command unset envvar -Unset the environment variable @var{envvar}. -@end deffn - - -@node uppermem -@subsection uppermem - -This command is not yet implemented for GRUB 2, although it is planned. - - -@ignore -@node vbeinfo -@subsection vbeinfo - -@deffn Command vbeinfo [[WxH]xD] -Alias for command @command{videoinfo} (@pxref{videoinfo}). It is available -only on PC BIOS platforms. -@end deffn -@end ignore - - -@node verify_detached -@subsection verify_detached - -@deffn Command verify_detached [@option{--skip-sig}] file signature_file [pubkey_file] -Verifies a GPG-style detached signature, where the signed file is -@var{file}, and the signature itself is in file @var{signature_file}. -Optionally, a specific public key to use can be specified using -@var{pubkey_file}. When environment variable @code{check_signatures} -is set to @code{enforce}, then @var{pubkey_file} must itself be -properly signed by an already-trusted key. An unsigned -@var{pubkey_file} can be loaded by specifying @option{--skip-sig}. -If @var{pubkey_file} is omitted, then public keys from GRUB's trusted keys -(@pxref{list_trusted}, @pxref{trust}, and @pxref{distrust}) are -tried. - -Exit code @code{$?} is set to 0 if the signature validates -successfully. If validation fails, it is set to a non-zero value. -@xref{Using digital signatures}, for more information. -@end deffn - -@node videoinfo -@subsection videoinfo - -@deffn Command videoinfo [[WxH]xD] -List available video modes. If resolution is given, show only matching modes. -@end deffn - -@node wrmsr -@subsection wrmsr - -@deffn Command: wrmsr 0xADDR 0xVALUE -Write a 0xVALUE to a model-specific register at address 0xADDR. - -Please note that on SMP systems, writing to a MSR that has a scope -per hardware thread, implies that the value that is written -only applies to the particular cpu/core/thread that runs the command. - -Also, if you specify a reserved or unimplemented MSR address, it will -cause a general protection exception (which is not currently being handled) -and the system will reboot. -@end deffn - -@node xen_hypervisor -@subsection xen_hypervisor - -@deffn Command xen_hypervisor file [arguments] @dots{} -Load a Xen hypervisor binary from @var{file}. The rest of the line is passed -verbatim as the @dfn{kernel command-line}. Any other binaries must be -reloaded after using this command. -This command is only available on AArch64 systems. -@end deffn - -@node xen_module -@subsection xen_module - -@deffn Command xen_module [--nounzip] file [arguments] -Load a module for xen hypervisor at the booting process of xen. -The rest of the line is passed verbatim as the module command line. -Modules should be loaded in the following order: - - dom0 kernel image - - dom0 ramdisk if present - - XSM policy if present -This command is only available on AArch64 systems. -@end deffn - -@node Networking commands -@section The list of networking commands - -@menu -* net_add_addr:: Add a network address -* net_add_dns:: Add a DNS server -* net_add_route:: Add routing entry -* net_bootp:: Perform a bootp autoconfiguration -* net_del_addr:: Remove IP address from interface -* net_del_dns:: Remove a DNS server -* net_del_route:: Remove a route entry -* net_get_dhcp_option:: Retrieve DHCP options -* net_ipv6_autoconf:: Perform IPv6 autoconfiguration -* net_ls_addr:: List interfaces -* net_ls_cards:: List network cards -* net_ls_dns:: List DNS servers -* net_ls_routes:: List routing entries -* net_nslookup:: Perform a DNS lookup -@end menu - - -@node net_add_addr -@subsection net_add_addr - -@deffn Command net_add_addr @var{interface} @var{card} @var{address} -Configure additional network @var{interface} with @var{address} on a -network @var{card}. @var{address} can be either IP in dotted decimal notation, -or symbolic name which is resolved using DNS lookup. If successful, this command -also adds local link routing entry to the default subnet of @var{address} -with name @var{interface}@samp{:local} via @var{interface}. -@end deffn - - -@node net_add_dns -@subsection net_add_dns - -@deffn Command net_add_dns @var{server} -Resolve @var{server} IP address and add to the list of DNS servers used during -name lookup. -@end deffn - - -@node net_add_route -@subsection net_add_route - -@deffn Command net_add_route @var{shortname} @var{ip}[/@var{prefix}] [@var{interface} | @samp{gw} @var{gateway}] -Add route to network with address @var{ip} as modified by @var{prefix} via -either local @var{interface} or @var{gateway}. @var{prefix} is optional and -defaults to 32 for IPv4 address and 128 for IPv6 address. Route is identified -by @var{shortname} which can be used to remove it (@pxref{net_del_route}). -@end deffn - - -@node net_bootp -@subsection net_bootp - -@deffn Command net_bootp [@var{card}] -Perform configuration of @var{card} using DHCP protocol. If no card name -is specified, try to configure all existing cards. If configuration was -successful, interface with name @var{card}@samp{:dhcp} and configured -address is added to @var{card}. -@comment If server provided gateway information in -@comment DHCP ACK packet, it is added as route entry with the name @var{card}@samp{:dhcp:gw}. -Additionally the following DHCP options are recognized and processed: - -@table @samp -@item 1 (Subnet Mask) -Used to calculate network local routing entry for interface @var{card}@samp{:dhcp}. -@item 3 (Router) -Adds default route entry with the name @var{card}@samp{:dhcp:default} via gateway -from DHCP option. Note that only option with single route is accepted. -@item 6 (Domain Name Server) -Adds all servers from option value to the list of servers used during name resolution. -@item 12 (Host Name) -Sets environment variable @samp{net_}@var{}@samp{_dhcp_hostname} -(@pxref{net_@var{}_hostname}) to the value of option. -@item 15 (Domain Name) -Sets environment variable @samp{net_}@var{}@samp{_dhcp_domain} -(@pxref{net_@var{}_domain}) to the value of option. -@item 17 (Root Path) -Sets environment variable @samp{net_}@var{}@samp{_dhcp_rootpath} -(@pxref{net_@var{}_rootpath}) to the value of option. -@item 18 (Extensions Path) -Sets environment variable @samp{net_}@var{}@samp{_dhcp_extensionspath} -(@pxref{net_@var{}_extensionspath}) to the value of option. -@end table - -@end deffn - - -@node net_del_addr -@subsection net_del_addr - -@deffn Command net_del_addr @var{interface} -Remove configured @var{interface} with associated address. -@end deffn - - -@node net_del_dns -@subsection net_del_dns - -@deffn Command net_del_dns @var{address} -Remove @var{address} from list of servers used during name lookup. -@end deffn - - -@node net_del_route -@subsection net_del_route - -@deffn Command net_del_route @var{shortname} -Remove route entry identified by @var{shortname}. -@end deffn - - -@node net_get_dhcp_option -@subsection net_get_dhcp_option - -@deffn Command net_get_dhcp_option @var{var} @var{interface} @var{number} @var{type} -Request DHCP option @var{number} of @var{type} via @var{interface}. @var{type} -can be one of @samp{string}, @samp{number} or @samp{hex}. If option is found, -assign its value to variable @var{var}. Values of types @samp{number} and @samp{hex} -are converted to string representation. -@end deffn - - -@node net_ipv6_autoconf -@subsection net_ipv6_autoconf - -@deffn Command net_ipv6_autoconf [@var{card}] -Perform IPv6 autoconfiguration by adding to the @var{card} interface with name -@var{card}@samp{:link} and link local MAC-based address. If no card is specified, -perform autoconfiguration for all existing cards. -@end deffn - - -@node net_ls_addr -@subsection net_ls_addr - -@deffn Command net_ls_addr -List all configured interfaces with their MAC and IP addresses. -@end deffn - - -@node net_ls_cards -@subsection net_ls_cards - -@deffn Command net_ls_cards -List all detected network cards with their MAC address. -@end deffn - - -@node net_ls_dns -@subsection net_ls_dns - -@deffn Command net_ls_dns -List addresses of DNS servers used during name lookup. -@end deffn - - -@node net_ls_routes -@subsection net_ls_routes - -@deffn Command net_ls_routes -List routing entries. -@end deffn - - -@node net_nslookup -@subsection net_nslookup - -@deffn Command net_nslookup @var{name} [@var{server}] -Resolve address of @var{name} using DNS server @var{server}. If no server -is given, use default list of servers. -@end deffn - - -@node Internationalisation -@chapter Internationalisation - -@section Charset -GRUB uses UTF-8 internally other than in rendering where some GRUB-specific -appropriate representation is used. All text files (including config) are -assumed to be encoded in UTF-8. - -@section Filesystems -NTFS, JFS, UDF, HFS+, exFAT, long filenames in FAT, Joliet part of -ISO9660 are treated as UTF-16 as per specification. AFS and BFS are read -as UTF-8, again according to specification. BtrFS, cpio, tar, squash4, minix, -minix2, minix3, ROMFS, ReiserFS, XFS, ext2, ext3, ext4, FAT (short names), -F2FS, RockRidge part of ISO9660, nilfs2, UFS1, UFS2 and ZFS are assumed -to be UTF-8. This might be false on systems configured with legacy charset -but as long as the charset used is superset of ASCII you should be able to -access ASCII-named files. And it's recommended to configure your system to use -UTF-8 to access the filesystem, convmv may help with migration. ISO9660 (plain) -filenames are specified as being ASCII or being described with unspecified -escape sequences. GRUB assumes that the ISO9660 names are UTF-8 (since -any ASCII is valid UTF-8). There are some old CD-ROMs which use CP437 -in non-compliant way. You're still able to access files with names containing -only ASCII characters on such filesystems though. You're also able to access -any file if the filesystem contains valid Joliet (UTF-16) or RockRidge (UTF-8). -AFFS, SFS and HFS never use unicode and GRUB assumes them to be in Latin1, -Latin1 and MacRoman respectively. GRUB handles filesystem case-insensitivity -however no attempt is performed at case conversion of international characters -so e.g. a file named lowercase greek alpha is treated as different from -the one named as uppercase alpha. The filesystems in questions are -NTFS (except POSIX namespace), HFS+ (configurable at mkfs time, default -insensitive), SFS (configurable at mkfs time, default insensitive), -JFS (configurable at mkfs time, default sensitive), HFS, AFFS, FAT, exFAT -and ZFS (configurable on per-subvolume basis by property ``casesensitivity'', -default sensitive). On ZFS subvolumes marked as case insensitive files -containing lowercase international characters are inaccessible. -Also like all supported filesystems except HFS+ and ZFS (configurable on -per-subvolume basis by property ``normalization'', default none) GRUB makes -no attempt at check of canonical equivalence so a file name u-diaresis is -treated as distinct from u+combining diaresis. This however means that in -order to access file on HFS+ its name must be specified in normalisation form D. -On normalized ZFS subvolumes filenames out of normalisation are inaccessible. - -@section Output terminal -Firmware output console ``console'' on ARC and IEEE1275 are limited to ASCII. - -BIOS firmware console and VGA text are limited to ASCII and some pseudographics. - -None of above mentioned is appropriate for displaying international and any -unsupported character is replaced with question mark except pseudographics -which we attempt to approximate with ASCII. - -EFI console on the other hand nominally supports UTF-16 but actual language -coverage depends on firmware and may be very limited. - -The encoding used on serial can be chosen with @command{terminfo} as -either ASCII, UTF-8 or ``visual UTF-8''. Last one is against the specification -but results in correct rendering of right-to-left on some readers which don't -have own bidi implementation. - -On emu GRUB checks if charset is UTF-8 and uses it if so and uses ASCII -otherwise. - -When using gfxterm or gfxmenu GRUB itself is responsible for rendering the -text. In this case GRUB is limited by loaded fonts. If fonts contain all -required characters then bidirectional text, cursive variants and combining -marks other than enclosing, half (e.g. left half tilde or combining overline) -and double ones. Ligatures aren't supported though. This should cover European, -Middle Eastern (if you don't mind lack of lam-alif ligature in Arabic) and -East Asian scripts. Notable unsupported scripts are Brahmic family and -derived as well as Mongolian, Tifinagh, Korean Jamo (precomposed characters -have no problem) and tonal writing (2e5-2e9). GRUB also ignores deprecated -(as specified in Unicode) characters (e.g. tags). GRUB also doesn't handle so -called ``annotation characters'' If you can complete either of -two lists or, better, propose a patch to improve rendering, please contact -developer team. - -@section Input terminal -Firmware console on BIOS, IEEE1275 and ARC doesn't allow you to enter non-ASCII -characters. EFI specification allows for such but author is unaware of any -actual implementations. Serial input is currently limited for latin1 (unlikely -to change). Own keyboard implementations (at_keyboard and usb_keyboard) -supports any key but work on one-char-per-keystroke. -So no dead keys or advanced input method. Also there is no keymap change hotkey. -In practice it makes difficult to enter any text using non-Latin alphabet. -Moreover all current input consumers are limited to ASCII. - -@section Gettext -GRUB supports being translated. For this you need to have language *.mo files in $prefix/locale, load gettext module and set ``lang'' variable. - -@section Regexp -Regexps work on unicode characters, however no attempt at checking cannonical -equivalence has been made. Moreover the classes like [:alpha:] match only -ASCII subset. - -@section Other -Currently GRUB always uses YEAR-MONTH-DAY HOUR:MINUTE:SECOND [WEEKDAY] 24-hour -datetime format but weekdays are translated. -GRUB always uses the decimal number format with [0-9] as digits and . as -descimal separator and no group separator. -IEEE1275 aliases are matched case-insensitively except non-ASCII which is -matched as binary. Similar behaviour is for matching OSBundleRequired. -Since IEEE1275 aliases and OSBundleRequired don't contain any non-ASCII it -should never be a problem in practice. -Case-sensitive identifiers are matched as raw strings, no canonical -equivalence check is performed. Case-insenstive identifiers are matched -as RAW but additionally [a-z] is equivalent to [A-Z]. GRUB-defined -identifiers use only ASCII and so should user-defined ones. -Identifiers containing non-ASCII may work but aren't supported. -Only the ASCII space characters (space U+0020, tab U+000b, CR U+000d and -LF U+000a) are recognised. Other unicode space characters aren't a valid -field separator. -@command{test} (@pxref{test}) tests <, >, <=, >=, -pgt and -plt compare the strings in the -lexicographical order of unicode codepoints, replicating the behaviour of -test from coreutils. -environment variables and commands are listed in the same order. - -@node Security -@chapter Security - -@menu -* Authentication and authorisation:: Users and access control -* Using digital signatures:: Booting digitally signed code -* UEFI secure boot and shim:: Booting digitally signed PE files -* Measured Boot:: Measuring boot components -@end menu - -@node Authentication and authorisation -@section Authentication and authorisation in GRUB - -By default, the boot loader interface is accessible to anyone with physical -access to the console: anyone can select and edit any menu entry, and anyone -can get direct access to a GRUB shell prompt. For most systems, this is -reasonable since anyone with direct physical access has a variety of other -ways to gain full access, and requiring authentication at the boot loader -level would only serve to make it difficult to recover broken systems. - -However, in some environments, such as kiosks, it may be appropriate to lock -down the boot loader to require authentication before performing certain -operations. - -The @samp{password} (@pxref{password}) and @samp{password_pbkdf2} -(@pxref{password_pbkdf2}) commands can be used to define users, each of -which has an associated password. @samp{password} sets the password in -plain text, requiring @file{grub.cfg} to be secure; @samp{password_pbkdf2} -sets the password hashed using the Password-Based Key Derivation Function -(RFC 2898), requiring the use of @command{grub-mkpasswd-pbkdf2} -(@pxref{Invoking grub-mkpasswd-pbkdf2}) to generate password hashes. - -In order to enable authentication support, the @samp{superusers} environment -variable must be set to a list of usernames, separated by any of spaces, -commas, semicolons, pipes, or ampersands. Superusers are permitted to use -the GRUB command line, edit menu entries, and execute any menu entry. If -@samp{superusers} is set, then use of the command line and editing of menu -entries are automatically restricted to superusers. Setting @samp{superusers} -to empty string effectively disables both access to CLI and editing of menu -entries. - -Other users may be allowed to execute specific menu entries by giving a list of -usernames (as above) using the @option{--users} option to the -@samp{menuentry} command (@pxref{menuentry}). If the @option{--unrestricted} -option is used for a menu entry, then that entry is unrestricted. -If the @option{--users} option is not used for a menu entry, then that -only superusers are able to use it. - -Putting this together, a typical @file{grub.cfg} fragment might look like -this: - -@example -@group -set superusers="root" -password_pbkdf2 root grub.pbkdf2.sha512.10000.biglongstring -password user1 insecure - -menuentry "May be run by any user" --unrestricted @{ - set root=(hd0,1) - linux /vmlinuz -@} - -menuentry "Superusers only" --users "" @{ - set root=(hd0,1) - linux /vmlinuz single -@} - -menuentry "May be run by user1 or a superuser" --users user1 @{ - set root=(hd0,2) - chainloader +1 -@} -@end group -@end example - -The @command{grub-mkconfig} program does not yet have built-in support for -generating configuration files with authentication. You can use -@file{/etc/grub.d/40_custom} to add simple superuser authentication, by -adding @kbd{set superusers=} and @kbd{password} or @kbd{password_pbkdf2} -commands. - -@node Using digital signatures -@section Using digital signatures in GRUB - -GRUB's @file{core.img} can optionally provide enforcement that all files -subsequently read from disk are covered by a valid digital signature. -This document does @strong{not} cover how to ensure that your -platform's firmware (e.g., Coreboot) validates @file{core.img}. - -If environment variable @code{check_signatures} -(@pxref{check_signatures}) is set to @code{enforce}, then every -attempt by the GRUB @file{core.img} to load another file @file{foo} -implicitly invokes @code{verify_detached foo foo.sig} -(@pxref{verify_detached}). @code{foo.sig} must contain a valid -digital signature over the contents of @code{foo}, which can be -verified with a public key currently trusted by GRUB -(@pxref{list_trusted}, @pxref{trust}, and @pxref{distrust}). If -validation fails, then file @file{foo} cannot be opened. This failure -may halt or otherwise impact the boot process. - -@comment Unfortunately --pubkey is not yet supported by grub-install, -@comment but we should not bring up internal detail grub-mkimage here -@comment in the user guide (as opposed to developer's manual). - -@comment An initial trusted public key can be embedded within the GRUB -@comment @file{core.img} using the @code{--pubkey} option to -@comment @command{grub-mkimage} (@pxref{Invoking grub-install}). Presently it -@comment is necessary to write a custom wrapper around @command{grub-mkimage} -@comment using the @code{--grub-mkimage} flag to @command{grub-install}. - -GRUB uses GPG-style detached signatures (meaning that a file -@file{foo.sig} will be produced when file @file{foo} is signed), and -currently supports the DSA and RSA signing algorithms. A signing key -can be generated as follows: - -@example -gpg --gen-key -@end example - -An individual file can be signed as follows: - -@example -gpg --detach-sign /path/to/file -@end example - -For successful validation of all of GRUB's subcomponents and the -loaded OS kernel, they must all be signed. One way to accomplish this -is the following (after having already produced the desired -@file{grub.cfg} file, e.g., by running @command{grub-mkconfig} -(@pxref{Invoking grub-mkconfig}): - -@example -@group -# Edit /dev/shm/passphrase.txt to contain your signing key's passphrase -for i in `find /boot -name "*.cfg" -or -name "*.lst" -or \ - -name "*.mod" -or -name "vmlinuz*" -or -name "initrd*" -or \ - -name "grubenv"`; -do - gpg --batch --detach-sign --passphrase-fd 0 $i < \ - /dev/shm/passphrase.txt -done -shred /dev/shm/passphrase.txt -@end group -@end example - -See also: @ref{check_signatures}, @ref{verify_detached}, @ref{trust}, -@ref{list_trusted}, @ref{distrust}, @ref{load_env}, @ref{save_env}. - -Note that internally signature enforcement is controlled by setting -the environment variable @code{check_signatures} equal to -@code{enforce}. Passing one or more @code{--pubkey} options to -@command{grub-mkimage} implicitly defines @code{check_signatures} -equal to @code{enforce} in @file{core.img} prior to processing any -configuration files. - -Note that signature checking does @strong{not} prevent an attacker -with (serial, physical, ...) console access from dropping manually to -the GRUB console and executing: - -@example -set check_signatures=no -@end example - -To prevent this, password-protection (@pxref{Authentication and -authorisation}) is essential. Note that even with GRUB password -protection, GRUB itself cannot prevent someone with physical access to -the machine from altering that machine's firmware (e.g., Coreboot -or BIOS) configuration to cause the machine to boot from a different -(attacker-controlled) device. GRUB is at best only one link in a -secure boot chain. - -@node UEFI secure boot and shim -@section UEFI secure boot and shim support - -The GRUB, except the @command{chainloader} command, works with the UEFI secure -boot and the shim. This functionality is provided by the shim_lock module. It -is recommend to build in this and other required modules into the @file{core.img}. -All modules not stored in the @file{core.img} and the ACPI tables for the -@command{acpi} command have to be signed, e.g. using PGP. Additionally, the -@command{iorw}, the @command{memrw} and the @command{wrmsr} commands are -prohibited if the UEFI secure boot is enabled. This is done due to -security reasons. All above mentioned requirements are enforced by the -shim_lock module. And itself it is a persistent module which means that -it cannot be unloaded if it was loaded into the memory. - -@node Measured Boot -@section Measuring boot components - -If the tpm module is loaded and the platform has a Trusted Platform Module -installed, GRUB will log each command executed and each file loaded into the -TPM event log and extend the PCR values in the TPM correspondingly. All events -will be logged into the PCR described below with a type of EV_IPL and an -event description as described below. - -@multitable @columnfractions 0.3 0.1 0.6 -@headitem Event type @tab PCR @tab Description -@item Command -@tab 8 -@tab All executed commands (including those from configuration files) will be -logged and measured as entered with a prefix of ``grub_cmd: `` -@item Kernel command line -@tab 8 -@tab Any command line passed to a kernel will be logged and measured as entered -with a prefix of ``kernel_cmdline: '' -@item Module command line -@tab 8 -@tab Any command line passed to a kernel module will be logged and measured as -entered with a prefix of ``module_cmdline: `` -@item Files -@tab 9 -@tab Any file read by GRUB will be logged and measured with a descriptive text -corresponding to the filename. -@end multitable - -GRUB will not measure its own @file{core.img} - it is expected that firmware -will carry this out. GRUB will also not perform any measurements until the -tpm module is loaded. As such it is recommended that the tpm module be built -into @file{core.img} in order to avoid a potential gap in measurement between -@file{core.img} being loaded and the tpm module being loaded. - -Measured boot is currently only supported on EFI platforms. - -@node Platform limitations -@chapter Platform limitations - -GRUB2 is designed to be portable and is actually ported across platforms. We -try to keep all platforms at the level. Unfortunately some platforms are better -supported than others. This is detailed in current and 2 following sections. - -ARC platform is unable to change datetime (firmware doesn't seem to provide a -function for it). -EMU has similar limitation. - -On EMU platform no serial port is available. - -Console charset refers only to firmware-assisted console. gfxterm is always -Unicode (see Internationalisation section for its limitations). Serial is -configurable to UTF-8 or ASCII (see Internationalisation). In case of qemu -and coreboot ports the refered console is vga_text. Loongson always uses -gfxterm. - -Most limited one is ASCII. CP437 provides additionally pseudographics. -GRUB2 doesn't use any language characters from CP437 as often CP437 is replaced -by national encoding compatible only in pseudographics. -Unicode is the most versatile charset which supports many languages. However -the actual console may be much more limited depending on firmware - -On BIOS network is supported only if the image is loaded through network. -On sparc64 GRUB is unable to determine which server it was booted from. - -Direct ATA/AHCI support allows to circumvent various firmware limitations but -isn't needed for normal operation except on baremetal ports. - -AT keyboard support allows keyboard layout remapping and support for keys not -available through firmware. It isn't needed for normal operation except -baremetal ports. - -Speaker allows morse and spkmodem communication. - -USB support provides benefits similar to ATA (for USB disks) or AT (for USB -keyboards). In addition it allows USBserial. - -Chainloading refers to the ability to load another bootloader through the same protocol - -Hints allow faster disk discovery by already knowing in advance which is the disk in -question. On some platforms hints are correct unless you move the disk between boots. -On other platforms it's just an educated guess. -Note that hint failure results in just reduced performance, not a failure - -BadRAM is the ability to mark some of the RAM as ``bad''. Note: due to protocol -limitations mips-loongson (with Linux protocol) -and mips-qemu_mips can use only memory up to first hole. - -Bootlocation is ability of GRUB to automatically detect where it boots from. -``disk'' means the detection is limited to detecting the disk with partition -being discovered on install time. ``partition'' means that disk and partiton -can be automatically discovered. ``file'' means that boot image file name as -well as disk and partition can be discovered. For consistency default install ignores -partition and relies solely on disk detection. If no bootlocation discovery is available -or boot and grub-root disks are different, UUID is used instead. On ARC if no device -to install to is specified, UUID is used instead as well. - - -@multitable @columnfractions .20 .20 .20 .20 .20 -@item @tab BIOS @tab Coreboot @tab Multiboot @tab Qemu -@item video @tab yes @tab yes @tab yes @tab yes -@item console charset @tab CP437 @tab CP437 @tab CP437 @tab CP437 -@item network @tab yes (*) @tab no @tab no @tab no -@item ATA/AHCI @tab yes @tab yes @tab yes @tab yes -@item AT keyboard @tab yes @tab yes @tab yes @tab yes -@item Speaker @tab yes @tab yes @tab yes @tab yes -@item USB @tab yes @tab yes @tab yes @tab yes -@item chainloader @tab local @tab yes @tab yes @tab no -@item cpuid @tab partial @tab partial @tab partial @tab partial -@item rdmsr @tab partial @tab partial @tab partial @tab partial -@item wrmsr @tab partial @tab partial @tab partial @tab partial -@item hints @tab guess @tab guess @tab guess @tab guess -@item PCI @tab yes @tab yes @tab yes @tab yes -@item badram @tab yes @tab yes @tab yes @tab yes -@item compression @tab always @tab pointless @tab no @tab no -@item exit @tab yes @tab no @tab no @tab no -@item bootlocation @tab disk @tab no @tab no @tab no -@end multitable - -@multitable @columnfractions .20 .20 .20 .20 .20 -@item @tab ia32 EFI @tab amd64 EFI @tab ia32 IEEE1275 @tab Itanium -@item video @tab yes @tab yes @tab no @tab no -@item console charset @tab Unicode @tab Unicode @tab ASCII @tab Unicode -@item network @tab yes @tab yes @tab yes @tab yes -@item ATA/AHCI @tab yes @tab yes @tab yes @tab no -@item AT keyboard @tab yes @tab yes @tab yes @tab no -@item Speaker @tab yes @tab yes @tab yes @tab no -@item USB @tab yes @tab yes @tab yes @tab no -@item chainloader @tab local @tab local @tab no @tab local -@item cpuid @tab partial @tab partial @tab partial @tab no -@item rdmsr @tab partial @tab partial @tab partial @tab no -@item wrmsr @tab partial @tab partial @tab partial @tab no -@item hints @tab guess @tab guess @tab good @tab guess -@item PCI @tab yes @tab yes @tab yes @tab no -@item badram @tab yes @tab yes @tab no @tab yes -@item compression @tab no @tab no @tab no @tab no -@item exit @tab yes @tab yes @tab yes @tab yes -@item bootlocation @tab file @tab file @tab file, ignored @tab file -@end multitable - -@multitable @columnfractions .20 .20 .20 .20 .20 -@item @tab Loongson @tab sparc64 @tab Powerpc @tab ARC -@item video @tab yes @tab no @tab yes @tab no -@item console charset @tab N/A @tab ASCII @tab ASCII @tab ASCII -@item network @tab no @tab yes (*) @tab yes @tab no -@item ATA/AHCI @tab yes @tab no @tab no @tab no -@item AT keyboard @tab yes @tab no @tab no @tab no -@item Speaker @tab no @tab no @tab no @tab no -@item USB @tab yes @tab no @tab no @tab no -@item chainloader @tab yes @tab no @tab no @tab no -@item cpuid @tab no @tab no @tab no @tab no -@item rdmsr @tab no @tab no @tab no @tab no -@item wrmsr @tab no @tab no @tab no @tab no -@item hints @tab good @tab good @tab good @tab no -@item PCI @tab yes @tab no @tab no @tab no -@item badram @tab yes (*) @tab no @tab no @tab no -@item compression @tab configurable @tab no @tab no @tab configurable -@item exit @tab no @tab yes @tab yes @tab yes -@item bootlocation @tab no @tab partition @tab file @tab file (*) -@end multitable - -@multitable @columnfractions .20 .20 .20 .20 .20 -@item @tab MIPS qemu @tab emu @tab xen -@item video @tab no @tab yes @tab no -@item console charset @tab CP437 @tab Unicode (*) @tab ASCII -@item network @tab no @tab yes @tab no -@item ATA/AHCI @tab yes @tab no @tab no -@item AT keyboard @tab yes @tab no @tab no -@item Speaker @tab no @tab no @tab no -@item USB @tab N/A @tab yes @tab no -@item chainloader @tab yes @tab no @tab yes -@item cpuid @tab no @tab no @tab yes -@item rdmsr @tab no @tab no @tab yes -@item wrmsr @tab no @tab no @tab yes -@item hints @tab guess @tab no @tab no -@item PCI @tab no @tab no @tab no -@item badram @tab yes (*) @tab no @tab no -@item compression @tab configurable @tab no @tab no -@item exit @tab no @tab yes @tab no -@item bootlocation @tab no @tab file @tab no -@end multitable - -@node Platform-specific operations -@chapter Outline - -Some platforms have features which allows to implement -some commands useless or not implementable on others. - -Quick summary: - -Information retrieval: - -@itemize -@item mipsel-loongson: lsspd -@item mips-arc: lsdev -@item efi: lsefisystab, lssal, lsefimmap, lsefi -@item i386-pc: lsapm -@item i386-coreboot: lscoreboot, coreboot_boottime, cbmemc -@item acpi-enabled (i386-pc, i386-coreboot, i386-multiboot, *-efi): lsacpi -@end itemize - -Workarounds for platform-specific issues: -@itemize -@item i386-efi/x86_64-efi: loadbios, fakebios, fix_video -@item acpi-enabled (i386-pc, i386-coreboot, i386-multiboot, *-efi): - acpi (override ACPI tables) -@item i386-pc: drivemap -@item i386-pc: sendkey -@end itemize - -Advanced operations for power users: -@itemize -@item x86: iorw (direct access to I/O ports) -@end itemize - -Miscelaneous: -@itemize -@item cmos (x86-*, ieee1275, mips-qemu_mips, mips-loongson): cmostest - (used on some laptops to check for special power-on key), cmosclean -@item i386-pc: play -@end itemize - -@node Supported kernels -@chapter Supported boot targets - -X86 support is summarised in the following table. ``Yes'' means that the kernel works on the given platform, ``crashes'' means an early kernel crash which we hope will be fixed by concerned kernel developers. ``no'' means GRUB doesn't load the given kernel on a given platform. ``headless'' means that the kernel works but lacks console drivers (you can still use serial or network console). In case of ``no'' and ``crashes'' the reason is given in footnote. -@multitable @columnfractions .50 .22 .22 -@item @tab BIOS @tab Coreboot -@item BIOS chainloading @tab yes @tab no (1) -@item NTLDR @tab yes @tab no (1) -@item Plan9 @tab yes @tab no (1) -@item Freedos @tab yes @tab no (1) -@item FreeBSD bootloader @tab yes @tab crashes (1) -@item 32-bit kFreeBSD @tab yes @tab crashes (5) -@item 64-bit kFreeBSD @tab yes @tab crashes (5) -@item 32-bit kNetBSD @tab yes @tab crashes (1) -@item 64-bit kNetBSD @tab yes @tab crashes -@item 32-bit kOpenBSD @tab yes @tab yes -@item 64-bit kOpenBSD @tab yes @tab yes -@item Multiboot @tab yes @tab yes -@item Multiboot2 @tab yes @tab yes -@item 32-bit Linux (legacy protocol) @tab yes @tab no (1) -@item 64-bit Linux (legacy protocol) @tab yes @tab no (1) -@item 32-bit Linux (modern protocol) @tab yes @tab yes -@item 64-bit Linux (modern protocol) @tab yes @tab yes -@item 32-bit XNU @tab yes @tab ? -@item 64-bit XNU @tab yes @tab ? -@item 32-bit EFI chainloader @tab no (2) @tab no (2) -@item 64-bit EFI chainloader @tab no (2) @tab no (2) -@item Appleloader @tab no (2) @tab no (2) -@end multitable - -@multitable @columnfractions .50 .22 .22 -@item @tab Multiboot @tab Qemu -@item BIOS chainloading @tab no (1) @tab no (1) -@item NTLDR @tab no (1) @tab no (1) -@item Plan9 @tab no (1) @tab no (1) -@item FreeDOS @tab no (1) @tab no (1) -@item FreeBSD bootloader @tab crashes (1) @tab crashes (1) -@item 32-bit kFreeBSD @tab crashes (5) @tab crashes (5) -@item 64-bit kFreeBSD @tab crashes (5) @tab crashes (5) -@item 32-bit kNetBSD @tab crashes (1) @tab crashes (1) -@item 64-bit kNetBSD @tab yes @tab yes -@item 32-bit kOpenBSD @tab yes @tab yes -@item 64-bit kOpenBSD @tab yes @tab yes -@item Multiboot @tab yes @tab yes -@item Multiboot2 @tab yes @tab yes -@item 32-bit Linux (legacy protocol) @tab no (1) @tab no (1) -@item 64-bit Linux (legacy protocol) @tab no (1) @tab no (1) -@item 32-bit Linux (modern protocol) @tab yes @tab yes -@item 64-bit Linux (modern protocol) @tab yes @tab yes -@item 32-bit XNU @tab ? @tab ? -@item 64-bit XNU @tab ? @tab ? -@item 32-bit EFI chainloader @tab no (2) @tab no (2) -@item 64-bit EFI chainloader @tab no (2) @tab no (2) -@item Appleloader @tab no (2) @tab no (2) -@end multitable - -@multitable @columnfractions .50 .22 .22 -@item @tab ia32 EFI @tab amd64 EFI -@item BIOS chainloading @tab no (1) @tab no (1) -@item NTLDR @tab no (1) @tab no (1) -@item Plan9 @tab no (1) @tab no (1) -@item FreeDOS @tab no (1) @tab no (1) -@item FreeBSD bootloader @tab crashes (1) @tab crashes (1) -@item 32-bit kFreeBSD @tab headless @tab headless -@item 64-bit kFreeBSD @tab headless @tab headless -@item 32-bit kNetBSD @tab crashes (1) @tab crashes (1) -@item 64-bit kNetBSD @tab yes @tab yes -@item 32-bit kOpenBSD @tab headless @tab headless -@item 64-bit kOpenBSD @tab headless @tab headless -@item Multiboot @tab yes @tab yes -@item Multiboot2 @tab yes @tab yes -@item 32-bit Linux (legacy protocol) @tab no (1) @tab no (1) -@item 64-bit Linux (legacy protocol) @tab no (1) @tab no (1) -@item 32-bit Linux (modern protocol) @tab yes @tab yes -@item 64-bit Linux (modern protocol) @tab yes @tab yes -@item 32-bit XNU @tab yes @tab yes -@item 64-bit XNU @tab yes (4) @tab yes -@item 32-bit EFI chainloader @tab yes @tab no (3) -@item 64-bit EFI chainloader @tab no (3) @tab yes -@item Appleloader @tab yes @tab yes -@end multitable - -@multitable @columnfractions .50 .22 .22 -@item @tab ia32 IEEE1275 -@item BIOS chainloading @tab no (1) -@item NTLDR @tab no (1) -@item Plan9 @tab no (1) -@item FreeDOS @tab no (1) -@item FreeBSD bootloader @tab crashes (1) -@item 32-bit kFreeBSD @tab crashes (5) -@item 64-bit kFreeBSD @tab crashes (5) -@item 32-bit kNetBSD @tab crashes (1) -@item 64-bit kNetBSD @tab ? -@item 32-bit kOpenBSD @tab ? -@item 64-bit kOpenBSD @tab ? -@item Multiboot @tab ? -@item Multiboot2 @tab ? -@item 32-bit Linux (legacy protocol) @tab no (1) -@item 64-bit Linux (legacy protocol) @tab no (1) -@item 32-bit Linux (modern protocol) @tab ? -@item 64-bit Linux (modern protocol) @tab ? -@item 32-bit XNU @tab ? -@item 64-bit XNU @tab ? -@item 32-bit EFI chainloader @tab no (2) -@item 64-bit EFI chainloader @tab no (2) -@item Appleloader @tab no (2) -@end multitable - -@enumerate -@item Requires BIOS -@item EFI only -@item 32-bit and 64-bit EFI have different structures and work in different CPU modes so it's not possible to chainload 32-bit bootloader on 64-bit platform and vice-versa -@item Some modules may need to be disabled -@item Requires ACPI -@end enumerate - -PowerPC, IA64 and Sparc64 ports support only Linux. MIPS port supports Linux -and multiboot2. - -@section Boot tests - -As you have seen in previous chapter the support matrix is pretty big and some of the configurations are only rarely used. To ensure the quality bootchecks are available for all x86 targets except EFI chainloader, Appleloader and XNU. All x86 platforms have bootcheck facility except ieee1275. Multiboot, multiboot2, BIOS chainloader, ntldr and freebsd-bootloader boot targets are tested only with a fake kernel images. Only Linux is tested among the payloads using Linux protocols. - -Following variables must be defined: - -@multitable @columnfractions .30 .65 -@item GRUB_PAYLOADS_DIR @tab directory containing the required kernels -@item GRUB_CBFSTOOL @tab cbfstool from Coreboot package (for coreboot platform only) -@item GRUB_COREBOOT_ROM @tab empty Coreboot ROM -@item GRUB_QEMU_OPTS @tab additional options to be supplied to QEMU -@end multitable - -Required files are: - -@multitable @columnfractions .40 .55 -@item kfreebsd_env.i386 @tab 32-bit kFreeBSD device hints -@item kfreebsd.i386 @tab 32-bit FreeBSD kernel image -@item kfreebsd.x86_64, kfreebsd_env.x86_64 @tab same from 64-bit kFreeBSD -@item knetbsd.i386 @tab 32-bit NetBSD kernel image -@item knetbsd.miniroot.i386 @tab 32-bit kNetBSD miniroot.kmod. -@item knetbsd.x86_64, knetbsd.miniroot.x86_64 @tab same from 64-bit kNetBSD -@item kopenbsd.i386 @tab 32-bit OpenBSD kernel bsd.rd image -@item kopenbsd.x86_64 @tab same from 64-bit kOpenBSD -@item linux.i386 @tab 32-bit Linux -@item linux.x86_64 @tab 64-bit Linux -@end multitable - -@node Troubleshooting -@chapter Error messages produced by GRUB - -@menu -* GRUB only offers a rescue shell:: -* Firmware stalls instead of booting GRUB:: -@end menu - - -@node GRUB only offers a rescue shell -@section GRUB only offers a rescue shell - -GRUB's normal start-up procedure involves setting the @samp{prefix} -environment variable to a value set in the core image by -@command{grub-install}, setting the @samp{root} variable to match, loading -the @samp{normal} module from the prefix, and running the @samp{normal} -command (@pxref{normal}). This command is responsible for reading -@file{/boot/grub/grub.cfg}, running the menu, and doing all the useful -things GRUB is supposed to do. - -If, instead, you only get a rescue shell, this usually means that GRUB -failed to load the @samp{normal} module for some reason. It may be possible -to work around this temporarily: for instance, if the reason for the failure -is that @samp{prefix} is wrong (perhaps it refers to the wrong device, or -perhaps the path to @file{/boot/grub} was not correctly made relative to the -device), then you can correct this and enter normal mode manually: - -@example -@group -# Inspect the current prefix (and other preset variables): -set -# Find out which devices are available: -ls -# Set to the correct value, which might be something like this: -set prefix=(hd0,1)/grub -set root=(hd0,1) -insmod normal -normal -@end group -@end example - -However, any problem that leaves you in the rescue shell probably means that -GRUB was not correctly installed. It may be more useful to try to reinstall -it properly using @kbd{grub-install @var{device}} (@pxref{Invoking -grub-install}). When doing this, there are a few things to remember: - -@itemize @bullet{} -@item -Drive ordering in your operating system may not be the same as the boot -drive ordering used by your firmware. Do not assume that your first hard -drive (e.g. @samp{/dev/sda}) is the one that your firmware will boot from. -@file{device.map} (@pxref{Device map}) can be used to override this, but it -is usually better to use UUIDs or file system labels and avoid depending on -drive ordering entirely. - -@item -At least on BIOS systems, if you tell @command{grub-install} to install GRUB -to a partition but GRUB has already been installed in the master boot -record, then the GRUB installation in the partition will be ignored. - -@item -If possible, it is generally best to avoid installing GRUB to a partition -(unless it is a special partition for the use of GRUB alone, such as the -BIOS Boot Partition used on GPT). Doing this means that GRUB may stop being -able to read its core image due to a file system moving blocks around, such -as while defragmenting, running checks, or even during normal operation. -Installing to the whole disk device is normally more robust. - -@item -Check that GRUB actually knows how to read from the device and file system -containing @file{/boot/grub}. It will not be able to read from encrypted -devices with unsupported encryption scheme, nor from file systems for which -support has not yet been added to GRUB. -@end itemize - - -@node Firmware stalls instead of booting GRUB -@section Firmware stalls instead of booting GRUB - -The EFI implementation of some older MacBook laptops stalls when it gets -presented a grub-mkrescue ISO image for x86_64-efi target on an USB stick. -Affected are models of year 2010 or earlier. Workaround is to zeroize the -bytes 446 to 461 of the EFI partition, where mformat has put a partition table -entry which claims partition start at block 0. This change will not hamper -bootability on other machines. - - -@node Invoking grub-install -@chapter Invoking grub-install - -The program @command{grub-install} generates a GRUB core image using -@command{grub-mkimage} and installs it on your system. You must specify the -device name on which you want to install GRUB, like this: - -@example -grub-install @var{install_device} -@end example - -The device name @var{install_device} is an OS device name or a GRUB -device name. - -@command{grub-install} accepts the following options: - -@table @option -@item --help -Print a summary of the command-line options and exit. - -@item --version -Print the version number of GRUB and exit. - -@item --boot-directory=@var{dir} -Install GRUB images under the directory @file{@var{dir}/grub/} -This option is useful when you want to install GRUB into a -separate partition or a removable disk. -If this option is not specified then it defaults to @file{/boot}, so - -@example -@kbd{grub-install /dev/sda} -@end example - -is equivalent to - -@example -@kbd{grub-install --boot-directory=/boot/ /dev/sda} -@end example - -Here is an example in which you have a separate @dfn{boot} partition which is -mounted on -@file{/mnt/boot}: - -@example -@kbd{grub-install --boot-directory=/mnt/boot /dev/sdb} -@end example - -@item --recheck -Recheck the device map, even if @file{/boot/grub/device.map} already -exists. You should use this option whenever you add/remove a disk -into/from your computer. - -@item --no-rs-codes -By default on x86 BIOS systems, @command{grub-install} will use some -extra space in the bootloader embedding area for Reed-Solomon -error-correcting codes. This enables GRUB to still boot successfully -if some blocks are corrupted. The exact amount of protection offered -is dependent on available space in the embedding area. R sectors of -redundancy can tolerate up to R/2 corrupted sectors. This -redundancy may be cumbersome if attempting to cryptographically -validate the contents of the bootloader embedding area, or in more -modern systems with GPT-style partition tables (@pxref{BIOS -installation}) where GRUB does not reside in any unpartitioned space -outside of the MBR. Disable the Reed-Solomon codes with this option. -@end table - -@node Invoking grub-mkconfig -@chapter Invoking grub-mkconfig - -The program @command{grub-mkconfig} generates a configuration file for GRUB -(@pxref{Simple configuration}). - -@example -grub-mkconfig -o /boot/grub/grub.cfg -@end example - -@command{grub-mkconfig} accepts the following options: - -@table @option -@item --help -Print a summary of the command-line options and exit. - -@item --version -Print the version number of GRUB and exit. - -@item -o @var{file} -@itemx --output=@var{file} -Send the generated configuration file to @var{file}. The default is to send -it to standard output. -@end table - - -@node Invoking grub-mkpasswd-pbkdf2 -@chapter Invoking grub-mkpasswd-pbkdf2 - -The program @command{grub-mkpasswd-pbkdf2} generates password hashes for -GRUB (@pxref{Security}). - -@example -grub-mkpasswd-pbkdf2 -@end example - -@command{grub-mkpasswd-pbkdf2} accepts the following options: - -@table @option -@item -c @var{number} -@itemx --iteration-count=@var{number} -Number of iterations of the underlying pseudo-random function. Defaults to -10000. - -@item -l @var{number} -@itemx --buflen=@var{number} -Length of the generated hash. Defaults to 64. - -@item -s @var{number} -@itemx --salt=@var{number} -Length of the salt. Defaults to 64. -@end table - - -@node Invoking grub-mkrelpath -@chapter Invoking grub-mkrelpath - -The program @command{grub-mkrelpath} makes a file system path relative to -the root of its containing file system. For instance, if @file{/usr} is a -mount point, then: - -@example -$ @kbd{grub-mkrelpath /usr/share/grub/unicode.pf2} -@samp{/share/grub/unicode.pf2} -@end example - -This is mainly used internally by other GRUB utilities such as -@command{grub-mkconfig} (@pxref{Invoking grub-mkconfig}), but may -occasionally also be useful for debugging. - -@command{grub-mkrelpath} accepts the following options: - -@table @option -@item --help -Print a summary of the command-line options and exit. - -@item --version -Print the version number of GRUB and exit. -@end table - - -@node Invoking grub-mkrescue -@chapter Invoking grub-mkrescue - -The program @command{grub-mkrescue} generates a bootable GRUB rescue image -(@pxref{Making a GRUB bootable CD-ROM}). - -@example -grub-mkrescue -o grub.iso -@end example - -All arguments not explicitly listed as @command{grub-mkrescue} options are -passed on directly to @command{xorriso} in @command{mkisofs} emulation mode. -Options passed to @command{xorriso} will normally be interpreted as -@command{mkisofs} options; if the option @samp{--} is used, then anything -after that will be interpreted as native @command{xorriso} options. - -Non-option arguments specify additional source directories. This is -commonly used to add extra files to the image: - -@example -mkdir -p disk/boot/grub -@r{(add extra files to @file{disk/boot/grub})} -grub-mkrescue -o grub.iso disk -@end example - -@command{grub-mkrescue} accepts the following options: - -@table @option -@item --help -Print a summary of the command-line options and exit. - -@item --version -Print the version number of GRUB and exit. - -@item -o @var{file} -@itemx --output=@var{file} -Save output in @var{file}. This "option" is required. - -@item --modules=@var{modules} -Pre-load the named GRUB modules in the image. Multiple entries in -@var{modules} should be separated by whitespace (so you will probably need -to quote this for your shell). - -@item --rom-directory=@var{dir} -If generating images for the QEMU or Coreboot platforms, copy the resulting -@file{qemu.img} or @file{coreboot.elf} files respectively to the @var{dir} -directory as well as including them in the image. - -@item --xorriso=@var{file} -Use @var{file} as the @command{xorriso} program, rather than the built-in -default. - -@item --grub-mkimage=@var{file} -Use @var{file} as the @command{grub-mkimage} program, rather than the -built-in default. -@end table - - -@node Invoking grub-mount -@chapter Invoking grub-mount - -The program @command{grub-mount} performs a read-only mount of any file -system or file system image that GRUB understands, using GRUB's file system -drivers via FUSE. (It is only available if FUSE development files were -present when GRUB was built.) This has a number of uses: - -@itemize @bullet -@item -It provides a convenient way to check how GRUB will view a file system at -boot time. You can use normal command-line tools to compare that view with -that of your operating system, making it easy to find bugs. - -@item -It offers true read-only mounts. Linux does not have these for journalling -file systems, because it will always attempt to replay the journal at mount -time; while you can temporarily mark the block device read-only to avoid -this, that causes the mount to fail. Since GRUB intentionally contains no -code for writing to file systems, it can easily provide a guaranteed -read-only mount mechanism. - -@item -It allows you to examine any file system that GRUB understands without -needing to load additional modules into your running kernel, which may be -useful in constrained environments such as installers. - -@item -Since it can examine file system images (contained in regular files) just as -easily as file systems on block devices, you can use it to inspect any file -system image that GRUB understands with only enough privileges to use FUSE, -even if nobody has yet written a FUSE module specifically for that file -system type. -@end itemize - -Using @command{grub-mount} is normally as simple as: - -@example -grub-mount /dev/sda1 /mnt -@end example - -@command{grub-mount} must be given one or more images and a mount point as -non-option arguments (if it is given more than one image, it will treat them -as a RAID set), and also accepts the following options: - -@table @option -@item --help -Print a summary of the command-line options and exit. - -@item --version -Print the version number of GRUB and exit. - -@item -C -@itemx --crypto -Mount encrypted devices, prompting for a passphrase if necessary. - -@item -d @var{string} -@itemx --debug=@var{string} -Show debugging output for conditions matching @var{string}. - -@item -K prompt|@var{file} -@itemx --zfs-key=prompt|@var{file} -Load a ZFS encryption key. If you use @samp{prompt} as the argument, -@command{grub-mount} will read a passphrase from the terminal; otherwise, it -will read key material from the specified file. - -@item -r @var{device} -@itemx --root=@var{device} -Set the GRUB root device to @var{device}. You do not normally need to set -this; @command{grub-mount} will automatically set the root device to the -root of the supplied file system. - -If @var{device} is just a number, then it will be treated as a partition -number within the supplied image. This means that, if you have an image of -an entire disk in @file{disk.img}, then you can use this command to mount -its second partition: - -@example -grub-mount -r 2 disk.img mount-point -@end example - -@item -v -@itemx --verbose -Print verbose messages. -@end table - - -@node Invoking grub-probe -@chapter Invoking grub-probe - -The program @command{grub-probe} probes device information for a given path -or device. - -@example -grub-probe --target=fs /boot/grub -grub-probe --target=drive --device /dev/sda1 -@end example - -@command{grub-probe} must be given a path or device as a non-option -argument, and also accepts the following options: - -@table @option -@item --help -Print a summary of the command-line options and exit. - -@item --version -Print the version number of GRUB and exit. - -@item -d -@itemx --device -If this option is given, then the non-option argument is a system device -name (such as @samp{/dev/sda1}), and @command{grub-probe} will print -information about that device. If it is not given, then the non-option -argument is a filesystem path (such as @samp{/boot/grub}), and -@command{grub-probe} will print information about the device containing that -part of the filesystem. - -@item -m @var{file} -@itemx --device-map=@var{file} -Use @var{file} as the device map (@pxref{Device map}) rather than the -default, usually @samp{/boot/grub/device.map}. - -@item -t @var{target} -@itemx --target=@var{target} -Print information about the given path or device as defined by @var{target}. -The available targets and their meanings are: - -@table @samp -@item fs -GRUB filesystem module. -@item fs_uuid -Filesystem Universally Unique Identifier (UUID). -@item fs_label -Filesystem label. -@item drive -GRUB device name. -@item device -System device name. -@item partmap -GRUB partition map module. -@item abstraction -GRUB abstraction module (e.g. @samp{lvm}). -@item cryptodisk_uuid -Crypto device UUID. -@item msdos_parttype -MBR partition type code (two hexadecimal digits). -@item hints_string -A string of platform search hints suitable for passing to the -@command{search} command (@pxref{search}). -@item bios_hints -Search hints for the PC BIOS platform. -@item ieee1275_hints -Search hints for the IEEE1275 platform. -@item baremetal_hints -Search hints for platforms where disks are addressed directly rather than -via firmware. -@item efi_hints -Search hints for the EFI platform. -@item arc_hints -Search hints for the ARC platform. -@item compatibility_hint -A guess at a reasonable GRUB drive name for this device, which may be -used as a fallback if the @command{search} command fails. -@item disk -System device name for the whole disk. -@end table - -@item -v -@itemx --verbose -Print verbose messages. -@end table - - -@node Invoking grub-script-check -@chapter Invoking grub-script-check - -The program @command{grub-script-check} takes a GRUB script file -(@pxref{Shell-like scripting}) and checks it for syntax errors, similar to -commands such as @command{sh -n}. It may take a @var{path} as a non-option -argument; if none is supplied, it will read from standard input. - -@example -grub-script-check /boot/grub/grub.cfg -@end example - -@command{grub-script-check} accepts the following options: - -@table @option -@item --help -Print a summary of the command-line options and exit. - -@item --version -Print the version number of GRUB and exit. - -@item -v -@itemx --verbose -Print each line of input after reading it. -@end table - - -@node Obtaining and Building GRUB -@appendix How to obtain and build GRUB - -@quotation -@strong{Caution:} GRUB requires binutils-2.9.1.0.23 or later because the -GNU assembler has been changed so that it can produce real 16bits -machine code between 2.9.1 and 2.9.1.0.x. See -@uref{http://sources.redhat.com/binutils/}, to obtain information on -how to get the latest version. -@end quotation - -GRUB is available from the GNU alpha archive site -@uref{ftp://ftp.gnu.org/gnu/grub} or any of its mirrors. The file -will be named grub-version.tar.gz. The current version is -@value{VERSION}, so the file you should grab is: - -@uref{ftp://ftp.gnu.org/gnu/grub/grub-@value{VERSION}.tar.gz} - -To unbundle GRUB use the instruction: - -@example -@kbd{zcat grub-@value{VERSION}.tar.gz | tar xvf -} -@end example - -which will create a directory called @file{grub-@value{VERSION}} with -all the sources. You can look at the file @file{INSTALL} for detailed -instructions on how to build and install GRUB, but you should be able to -just do: - -@example -@group -@kbd{cd grub-@value{VERSION}} -@kbd{./configure} -@kbd{make install} -@end group -@end example - -Also, the latest version is available using Git. See -@uref{http://www.gnu.org/software/grub/grub-download.html} for more -information. - -@node Reporting bugs -@appendix Reporting bugs - -These are the guideline for how to report bugs. Take a look at this -list below before you submit bugs: - -@enumerate -@item -Before getting unsettled, read this manual through and through. Also, -see the @uref{http://www.gnu.org/software/grub/grub-faq.html, GNU GRUB FAQ}. - -@item -Always mention the information on your GRUB. The version number and the -configuration are quite important. If you build it yourself, write the -options specified to the configure script and your operating system, -including the versions of gcc and binutils. - -@item -If you have trouble with the installation, inform us of how you -installed GRUB. Don't omit error messages, if any. Just @samp{GRUB hangs -up when it boots} is not enough. - -The information on your hardware is also essential. These are especially -important: the geometries and the partition tables of your hard disk -drives and your BIOS. - -@item -If GRUB cannot boot your operating system, write down -@emph{everything} you see on the screen. Don't paraphrase them, like -@samp{The foo OS crashes with GRUB, even though it can boot with the -bar boot loader just fine}. Mention the commands you executed, the -messages printed by them, and information on your operating system -including the version number. - -@item -Explain what you wanted to do. It is very useful to know your purpose -and your wish, and how GRUB didn't satisfy you. - -@item -If you can investigate the problem yourself, please do. That will give -you and us much more information on the problem. Attaching a patch is -even better. - -When you attach a patch, make the patch in unified diff format, and -write ChangeLog entries. But, even when you make a patch, don't forget -to explain the problem, so that we can understand what your patch is -for. - -@item -Write down anything that you think might be related. Please understand -that we often need to reproduce the same problem you encountered in our -environment. So your information should be sufficient for us to do the -same thing---Don't forget that we cannot see your computer directly. If -you are not sure whether to state a fact or leave it out, state it! -Reporting too many things is much better than omitting something -important. -@end enumerate - -If you follow the guideline above, submit a report to the -@uref{http://savannah.gnu.org/bugs/?group=grub, Bug Tracking System}. -Alternatively, you can submit a report via electronic mail to -@email{bug-grub@@gnu.org}, but we strongly recommend that you use the -Bug Tracking System, because e-mail can be passed over easily. - -Once we get your report, we will try to fix the bugs. - - -@node Future -@appendix Where GRUB will go - -GRUB 2 is now quite stable and used in many production systems. We are -currently working towards a 2.0 release. - -If you are interested in the development of GRUB 2, take a look at -@uref{http://www.gnu.org/software/grub/grub.html, the homepage}. - - - - - -@node Copying This Manual -@appendix Copying This Manual - -@menu -* GNU Free Documentation License:: License for copying this manual. -@end menu - -@include fdl.texi - - -@node Index -@unnumbered Index - -@c Currently, we use only the Concept Index. -@printindex cp - - -@bye - -Some notes: - - This is an attempt to make a manual for GRUB 2. The contents are - copied from the GRUB manual in GRUB Legacy, so they are not always - appropriate yet for GRUB 2. diff --git a/thirdparty/grub-2.04/docs/man/grub-bios-setup.h2m b/thirdparty/grub-2.04/docs/man/grub-bios-setup.h2m deleted file mode 100644 index ac6ede362..000000000 --- a/thirdparty/grub-2.04/docs/man/grub-bios-setup.h2m +++ /dev/null @@ -1,6 +0,0 @@ -[NAME] -grub-bios-setup \- set up a device to boot using GRUB -[SEE ALSO] -.BR grub-install (8), -.BR grub-mkimage (1), -.BR grub-mkrescue (1) diff --git a/thirdparty/grub-2.04/docs/man/grub-editenv.h2m b/thirdparty/grub-2.04/docs/man/grub-editenv.h2m deleted file mode 100644 index 3859d3d4c..000000000 --- a/thirdparty/grub-2.04/docs/man/grub-editenv.h2m +++ /dev/null @@ -1,5 +0,0 @@ -[NAME] -grub-editenv \- edit GRUB environment block -[SEE ALSO] -.BR grub-reboot (8), -.BR grub-set-default (8) diff --git a/thirdparty/grub-2.04/docs/man/grub-emu.h2m b/thirdparty/grub-2.04/docs/man/grub-emu.h2m deleted file mode 100644 index ef1c00065..000000000 --- a/thirdparty/grub-2.04/docs/man/grub-emu.h2m +++ /dev/null @@ -1,6 +0,0 @@ -[NAME] -grub-emu \- GRUB emulator -[SEE ALSO] -If you are trying to install GRUB, then you should use -.BR grub-install (8) -rather than this program. diff --git a/thirdparty/grub-2.04/docs/man/grub-file.h2m b/thirdparty/grub-2.04/docs/man/grub-file.h2m deleted file mode 100644 index e09bb4d31..000000000 --- a/thirdparty/grub-2.04/docs/man/grub-file.h2m +++ /dev/null @@ -1,2 +0,0 @@ -[NAME] -grub-file \- check file type diff --git a/thirdparty/grub-2.04/docs/man/grub-fstest.h2m b/thirdparty/grub-2.04/docs/man/grub-fstest.h2m deleted file mode 100644 index 9676b159a..000000000 --- a/thirdparty/grub-2.04/docs/man/grub-fstest.h2m +++ /dev/null @@ -1,4 +0,0 @@ -[NAME] -grub-fstest \- debug tool for GRUB filesystem drivers -[SEE ALSO] -.BR grub-probe (8) diff --git a/thirdparty/grub-2.04/docs/man/grub-glue-efi.h2m b/thirdparty/grub-2.04/docs/man/grub-glue-efi.h2m deleted file mode 100644 index c1c6ded49..000000000 --- a/thirdparty/grub-2.04/docs/man/grub-glue-efi.h2m +++ /dev/null @@ -1,4 +0,0 @@ -[NAME] -grub-glue-efi \- generate a fat binary for EFI -[DESCRIPTION] -grub-glue-efi processes ia32 and amd64 EFI images and glues them according to Apple format. diff --git a/thirdparty/grub-2.04/docs/man/grub-install.h2m b/thirdparty/grub-2.04/docs/man/grub-install.h2m deleted file mode 100644 index 8cbbc87a0..000000000 --- a/thirdparty/grub-2.04/docs/man/grub-install.h2m +++ /dev/null @@ -1,6 +0,0 @@ -[NAME] -grub-install \- install GRUB to a device -[SEE ALSO] -.BR grub-mkconfig (8), -.BR grub-mkimage (1), -.BR grub-mkrescue (1) diff --git a/thirdparty/grub-2.04/docs/man/grub-kbdcomp.h2m b/thirdparty/grub-2.04/docs/man/grub-kbdcomp.h2m deleted file mode 100644 index d81f9157e..000000000 --- a/thirdparty/grub-2.04/docs/man/grub-kbdcomp.h2m +++ /dev/null @@ -1,10 +0,0 @@ -[NAME] -grub-kbdcomp \- generate a GRUB keyboard layout file -[DESCRIPTION] -grub-kbdcomp processes a X keyboard layout description in -.BR keymaps (5) -format into a format that can be used by GRUB's -.B keymap -command. -[SEE ALSO] -.BR grub-mklayout (8) diff --git a/thirdparty/grub-2.04/docs/man/grub-macbless.h2m b/thirdparty/grub-2.04/docs/man/grub-macbless.h2m deleted file mode 100644 index 0197c0087..000000000 --- a/thirdparty/grub-2.04/docs/man/grub-macbless.h2m +++ /dev/null @@ -1,4 +0,0 @@ -[NAME] -grub-macbless \- bless a mac file/directory -[SEE ALSO] -.BR grub-install (1) diff --git a/thirdparty/grub-2.04/docs/man/grub-macho2img.h2m b/thirdparty/grub-2.04/docs/man/grub-macho2img.h2m deleted file mode 100644 index d79aaeed8..000000000 --- a/thirdparty/grub-2.04/docs/man/grub-macho2img.h2m +++ /dev/null @@ -1,4 +0,0 @@ -[NAME] -grub-macho2img \- convert Mach-O to raw image -[SEE ALSO] -.BR grub-mkimage (1) diff --git a/thirdparty/grub-2.04/docs/man/grub-menulst2cfg.h2m b/thirdparty/grub-2.04/docs/man/grub-menulst2cfg.h2m deleted file mode 100644 index c2e0055ed..000000000 --- a/thirdparty/grub-2.04/docs/man/grub-menulst2cfg.h2m +++ /dev/null @@ -1,4 +0,0 @@ -[NAME] -grub-menulst2cfg \- transform legacy menu.lst into grub.cfg -[SEE ALSO] -.BR grub-mkconfig (8) diff --git a/thirdparty/grub-2.04/docs/man/grub-mkconfig.h2m b/thirdparty/grub-2.04/docs/man/grub-mkconfig.h2m deleted file mode 100644 index 9b42f8130..000000000 --- a/thirdparty/grub-2.04/docs/man/grub-mkconfig.h2m +++ /dev/null @@ -1,4 +0,0 @@ -[NAME] -grub-mkconfig \- generate a GRUB configuration file -[SEE ALSO] -.BR grub-install (8) diff --git a/thirdparty/grub-2.04/docs/man/grub-mkfont.h2m b/thirdparty/grub-2.04/docs/man/grub-mkfont.h2m deleted file mode 100644 index d46fe600e..000000000 --- a/thirdparty/grub-2.04/docs/man/grub-mkfont.h2m +++ /dev/null @@ -1,4 +0,0 @@ -[NAME] -grub-mkfont \- make GRUB font files -[SEE ALSO] -.BR grub-mkconfig (8) diff --git a/thirdparty/grub-2.04/docs/man/grub-mkimage.h2m b/thirdparty/grub-2.04/docs/man/grub-mkimage.h2m deleted file mode 100644 index f0fbc2bb1..000000000 --- a/thirdparty/grub-2.04/docs/man/grub-mkimage.h2m +++ /dev/null @@ -1,6 +0,0 @@ -[NAME] -grub-mkimage \- make a bootable image of GRUB -[SEE ALSO] -.BR grub-install (8), -.BR grub-mkrescue (1), -.BR grub-mknetdir (8) diff --git a/thirdparty/grub-2.04/docs/man/grub-mklayout.h2m b/thirdparty/grub-2.04/docs/man/grub-mklayout.h2m deleted file mode 100644 index 1e43409c0..000000000 --- a/thirdparty/grub-2.04/docs/man/grub-mklayout.h2m +++ /dev/null @@ -1,10 +0,0 @@ -[NAME] -grub-mklayout \- generate a GRUB keyboard layout file -[DESCRIPTION] -grub-mklayout processes a keyboard layout description in -.BR keymaps (5) -format into a format that can be used by GRUB's -.B keymap -command. -[SEE ALSO] -.BR grub-mkconfig (8) diff --git a/thirdparty/grub-2.04/docs/man/grub-mknetdir.h2m b/thirdparty/grub-2.04/docs/man/grub-mknetdir.h2m deleted file mode 100644 index a2ef13ec1..000000000 --- a/thirdparty/grub-2.04/docs/man/grub-mknetdir.h2m +++ /dev/null @@ -1,4 +0,0 @@ -[NAME] -grub-mknetdir \- prepare a GRUB netboot directory. -[SEE ALSO] -.BR grub-mkimage (1) diff --git a/thirdparty/grub-2.04/docs/man/grub-mkpasswd-pbkdf2.h2m b/thirdparty/grub-2.04/docs/man/grub-mkpasswd-pbkdf2.h2m deleted file mode 100644 index 4d202f3da..000000000 --- a/thirdparty/grub-2.04/docs/man/grub-mkpasswd-pbkdf2.h2m +++ /dev/null @@ -1,4 +0,0 @@ -[NAME] -grub-mkpasswd-pbkdf2 \- generate hashed password for GRUB -[SEE ALSO] -.BR grub-mkconfig (8) diff --git a/thirdparty/grub-2.04/docs/man/grub-mkrelpath.h2m b/thirdparty/grub-2.04/docs/man/grub-mkrelpath.h2m deleted file mode 100644 index d01f3961e..000000000 --- a/thirdparty/grub-2.04/docs/man/grub-mkrelpath.h2m +++ /dev/null @@ -1,4 +0,0 @@ -[NAME] -grub-mkrelpath \- make a system path relative to its root -[SEE ALSO] -.BR grub-probe (8) diff --git a/thirdparty/grub-2.04/docs/man/grub-mkrescue.h2m b/thirdparty/grub-2.04/docs/man/grub-mkrescue.h2m deleted file mode 100644 index a427f02e3..000000000 --- a/thirdparty/grub-2.04/docs/man/grub-mkrescue.h2m +++ /dev/null @@ -1,4 +0,0 @@ -[NAME] -grub-mkrescue \- make a GRUB rescue image -[SEE ALSO] -.BR grub-mkimage (1) diff --git a/thirdparty/grub-2.04/docs/man/grub-mkstandalone.h2m b/thirdparty/grub-2.04/docs/man/grub-mkstandalone.h2m deleted file mode 100644 index c77313978..000000000 --- a/thirdparty/grub-2.04/docs/man/grub-mkstandalone.h2m +++ /dev/null @@ -1,4 +0,0 @@ -[NAME] -grub-mkstandalone \- make a memdisk-based GRUB image -[SEE ALSO] -.BR grub-mkimage (1) diff --git a/thirdparty/grub-2.04/docs/man/grub-mount.h2m b/thirdparty/grub-2.04/docs/man/grub-mount.h2m deleted file mode 100644 index 8d168982d..000000000 --- a/thirdparty/grub-2.04/docs/man/grub-mount.h2m +++ /dev/null @@ -1,2 +0,0 @@ -[NAME] -grub-mount \- export GRUB filesystem with FUSE diff --git a/thirdparty/grub-2.04/docs/man/grub-ofpathname.h2m b/thirdparty/grub-2.04/docs/man/grub-ofpathname.h2m deleted file mode 100644 index 74b43eea0..000000000 --- a/thirdparty/grub-2.04/docs/man/grub-ofpathname.h2m +++ /dev/null @@ -1,4 +0,0 @@ -[NAME] -grub-ofpathname \- find OpenBOOT path for a device -[SEE ALSO] -.BR grub-probe (8) diff --git a/thirdparty/grub-2.04/docs/man/grub-pe2elf.h2m b/thirdparty/grub-2.04/docs/man/grub-pe2elf.h2m deleted file mode 100644 index 7ca29bd70..000000000 --- a/thirdparty/grub-2.04/docs/man/grub-pe2elf.h2m +++ /dev/null @@ -1,4 +0,0 @@ -[NAME] -grub-pe2elf \- convert PE image to ELF -[SEE ALSO] -.BR grub-mkimage (1) diff --git a/thirdparty/grub-2.04/docs/man/grub-probe.h2m b/thirdparty/grub-2.04/docs/man/grub-probe.h2m deleted file mode 100644 index 6e1ffdcf9..000000000 --- a/thirdparty/grub-2.04/docs/man/grub-probe.h2m +++ /dev/null @@ -1,4 +0,0 @@ -[NAME] -grub-probe \- probe device information for GRUB -[SEE ALSO] -.BR grub-fstest (1) diff --git a/thirdparty/grub-2.04/docs/man/grub-reboot.h2m b/thirdparty/grub-2.04/docs/man/grub-reboot.h2m deleted file mode 100644 index e4acace65..000000000 --- a/thirdparty/grub-2.04/docs/man/grub-reboot.h2m +++ /dev/null @@ -1,5 +0,0 @@ -[NAME] -grub-reboot \- set the default boot entry for GRUB, for the next boot only -[SEE ALSO] -.BR grub-set-default (8), -.BR grub-editenv (1) diff --git a/thirdparty/grub-2.04/docs/man/grub-render-label.h2m b/thirdparty/grub-2.04/docs/man/grub-render-label.h2m deleted file mode 100644 index 50ae5247c..000000000 --- a/thirdparty/grub-2.04/docs/man/grub-render-label.h2m +++ /dev/null @@ -1,3 +0,0 @@ -[NAME] -grub-render-label \- generate a .disk_label for Apple Macs. - diff --git a/thirdparty/grub-2.04/docs/man/grub-script-check.h2m b/thirdparty/grub-2.04/docs/man/grub-script-check.h2m deleted file mode 100644 index 365368267..000000000 --- a/thirdparty/grub-2.04/docs/man/grub-script-check.h2m +++ /dev/null @@ -1,4 +0,0 @@ -[NAME] -grub-script-check \- check grub.cfg for syntax errors -[SEE ALSO] -.BR grub-mkconfig (8) diff --git a/thirdparty/grub-2.04/docs/man/grub-set-default.h2m b/thirdparty/grub-2.04/docs/man/grub-set-default.h2m deleted file mode 100644 index 7945001c1..000000000 --- a/thirdparty/grub-2.04/docs/man/grub-set-default.h2m +++ /dev/null @@ -1,5 +0,0 @@ -[NAME] -grub-set-default \- set the saved default boot entry for GRUB -[SEE ALSO] -.BR grub-reboot (8), -.BR grub-editenv (1) diff --git a/thirdparty/grub-2.04/docs/man/grub-sparc64-setup.h2m b/thirdparty/grub-2.04/docs/man/grub-sparc64-setup.h2m deleted file mode 100644 index 18f803a50..000000000 --- a/thirdparty/grub-2.04/docs/man/grub-sparc64-setup.h2m +++ /dev/null @@ -1,6 +0,0 @@ -[NAME] -grub-sparc64-setup \- set up a device to boot using GRUB -[SEE ALSO] -.BR grub-install (8), -.BR grub-mkimage (1), -.BR grub-mkrescue (1) diff --git a/thirdparty/grub-2.04/docs/man/grub-syslinux2cfg.h2m b/thirdparty/grub-2.04/docs/man/grub-syslinux2cfg.h2m deleted file mode 100644 index ad25c8ab7..000000000 --- a/thirdparty/grub-2.04/docs/man/grub-syslinux2cfg.h2m +++ /dev/null @@ -1,4 +0,0 @@ -[NAME] -grub-syslinux2cfg \- transform syslinux config into grub.cfg -[SEE ALSO] -.BR grub-menulst2cfg (8) diff --git a/thirdparty/grub-2.04/docs/mdate-sh b/thirdparty/grub-2.04/docs/mdate-sh deleted file mode 100644 index 22f2f8be9..000000000 --- a/thirdparty/grub-2.04/docs/mdate-sh +++ /dev/null @@ -1,205 +0,0 @@ -#!/bin/sh -# Get modification time of a file or directory and pretty-print it. - -scriptversion=2007-03-30.02 - -# Copyright (C) 1995, 1996, 1997, 2003, 2004, 2005, 2007 Free Software -# Foundation, Inc. -# written by Ulrich Drepper , June 1995 -# -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 3, or (at your option) -# any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software Foundation, -# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. - -# As a special exception to the GNU General Public License, if you -# distribute this file as part of a program that contains a -# configuration script generated by Autoconf, you may include it under -# the same distribution terms that you use for the rest of that program. - -# This file is maintained in Automake, please report -# bugs to or send patches to -# . - -case $1 in - '') - echo "$0: No file. Try \`$0 --help' for more information." 1>&2 - exit 1; - ;; - -h | --h*) - cat <<\EOF -Usage: mdate-sh [--help] [--version] FILE - -Pretty-print the modification time of FILE. - -Report bugs to . -EOF - exit $? - ;; - -v | --v*) - echo "mdate-sh $scriptversion" - exit $? - ;; -esac - -# Prevent date giving response in another language. -LANG=C -export LANG -LC_ALL=C -export LC_ALL -LC_TIME=C -export LC_TIME - -# GNU ls changes its time format in response to the TIME_STYLE -# variable. Since we cannot assume `unset' works, revert this -# variable to its documented default. -if test "${TIME_STYLE+set}" = set; then - TIME_STYLE=posix-long-iso - export TIME_STYLE -fi - -save_arg1=$1 - -# Find out how to get the extended ls output of a file or directory. -if ls -L /dev/null 1>/dev/null 2>&1; then - ls_command='ls -L -l -d' -else - ls_command='ls -l -d' -fi -# Avoid user/group names that might have spaces, when possible. -if ls -n /dev/null 1>/dev/null 2>&1; then - ls_command="$ls_command -n" -fi - -# A `ls -l' line looks as follows on OS/2. -# drwxrwx--- 0 Aug 11 2001 foo -# This differs from Unix, which adds ownership information. -# drwxrwx--- 2 root root 4096 Aug 11 2001 foo -# -# To find the date, we split the line on spaces and iterate on words -# until we find a month. This cannot work with files whose owner is a -# user named `Jan', or `Feb', etc. However, it's unlikely that `/' -# will be owned by a user whose name is a month. So we first look at -# the extended ls output of the root directory to decide how many -# words should be skipped to get the date. - -# On HPUX /bin/sh, "set" interprets "-rw-r--r--" as options, so the "x" below. -set x`$ls_command /` - -# Find which argument is the month. -month= -command= -until test $month -do - shift - # Add another shift to the command. - command="$command shift;" - case $1 in - Jan) month=January; nummonth=1;; - Feb) month=February; nummonth=2;; - Mar) month=March; nummonth=3;; - Apr) month=April; nummonth=4;; - May) month=May; nummonth=5;; - Jun) month=June; nummonth=6;; - Jul) month=July; nummonth=7;; - Aug) month=August; nummonth=8;; - Sep) month=September; nummonth=9;; - Oct) month=October; nummonth=10;; - Nov) month=November; nummonth=11;; - Dec) month=December; nummonth=12;; - esac -done - -# Get the extended ls output of the file or directory. -set dummy x`eval "$ls_command \"\$save_arg1\""` - -# Remove all preceding arguments -eval $command - -# Because of the dummy argument above, month is in $2. -# -# On a POSIX system, we should have -# -# $# = 5 -# $1 = file size -# $2 = month -# $3 = day -# $4 = year or time -# $5 = filename -# -# On Darwin 7.7.0 and 7.6.0, we have -# -# $# = 4 -# $1 = day -# $2 = month -# $3 = year or time -# $4 = filename - -# Get the month. -case $2 in - Jan) month=January; nummonth=1;; - Feb) month=February; nummonth=2;; - Mar) month=March; nummonth=3;; - Apr) month=April; nummonth=4;; - May) month=May; nummonth=5;; - Jun) month=June; nummonth=6;; - Jul) month=July; nummonth=7;; - Aug) month=August; nummonth=8;; - Sep) month=September; nummonth=9;; - Oct) month=October; nummonth=10;; - Nov) month=November; nummonth=11;; - Dec) month=December; nummonth=12;; -esac - -case $3 in - ???*) day=$1;; - *) day=$3; shift;; -esac - -# Here we have to deal with the problem that the ls output gives either -# the time of day or the year. -case $3 in - *:*) set `date`; eval year=\$$# - case $2 in - Jan) nummonthtod=1;; - Feb) nummonthtod=2;; - Mar) nummonthtod=3;; - Apr) nummonthtod=4;; - May) nummonthtod=5;; - Jun) nummonthtod=6;; - Jul) nummonthtod=7;; - Aug) nummonthtod=8;; - Sep) nummonthtod=9;; - Oct) nummonthtod=10;; - Nov) nummonthtod=11;; - Dec) nummonthtod=12;; - esac - # For the first six month of the year the time notation can also - # be used for files modified in the last year. - if (expr $nummonth \> $nummonthtod) > /dev/null; - then - year=`expr $year - 1` - fi;; - *) year=$3;; -esac - -# The result. -echo $day $month $year - -# Local Variables: -# mode: shell-script -# sh-indentation: 2 -# eval: (add-hook 'write-file-hooks 'time-stamp) -# time-stamp-start: "scriptversion=" -# time-stamp-format: "%:y-%02m-%02d.%02H" -# time-stamp-end: "$" -# End: diff --git a/thirdparty/grub-2.04/docs/osdetect.cfg b/thirdparty/grub-2.04/docs/osdetect.cfg deleted file mode 100644 index 47455601d..000000000 --- a/thirdparty/grub-2.04/docs/osdetect.cfg +++ /dev/null @@ -1,331 +0,0 @@ -# Sample GRUB script to autodetect operating systems -# -# Copyright (C) 2010 Free Software Foundation, Inc. -# -# GRUB is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# GRUB is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with GRUB. If not, see . - -set saved_root=$root - -function freebsd_ufs_variants { - set device=$1 - set fstype=$2 - set uuid=$3 - - menuentry "FreeBSD (on $fstype $device)" $device $uuid { - set root=$2 - set uuid=$3 - - freebsd /boot/kernel/kernel - set FreeBSD.acpi_load=YES - set FreeBSD.hint.acpi.0.disabled=0 - set FreeBSD.vfs.root.mountfrom=ufs:ufsid/$uuid - frebsd_loadenv /boot/device.hints - } - - menuentry "FreeBSD (on $fstype $device) (single)" $device $uuid { - set root=$2 - set uuid=$3 - - freebsd /boot/kernel/kernel --single - set FreeBSD.acpi_load=YES - set FreeBSD.hint.acpi.0.disabled=0 - set FreeBSD.vfs.root.mountfrom=ufs:ufsid/$uuid - frebsd_loadenv /boot/device.hints - } - - menuentry "FreeBSD (on $fstype $device) (verbose)" $device $uuid { - set root=$2 - set uuid=$3 - - freebsd /boot/kernel/kernel --verbose - set FreeBSD.acpi_load=YES - set FreeBSD.hint.acpi.0.disabled=0 - set FreeBSD.vfs.root.mountfrom=ufs:ufsid/$uuid - frebsd_loadenv /boot/device.hints - } - - menuentry "FreeBSD (on $fstype $device) (without ACPI)" $device $uuid { - set root=$2 - set uuid=$3 - - freebsd /boot/kernel/kernel --verbose - unset FreeBSD.acpi_load - set FreeBSD.hint.acpi.0.disabled=1 - set FreeBSD.loader.acpi_disabled_by_user=1 - set FreeBSD.vfs.root.mountfrom=ufs:ufsid/$uuid - frebsd_loadenv /boot/device.hints - } - - menuentry "FreeBSD (on $fstype $device) (safe mode)" $device $uuid { - set root=$2 - set uuid=$3 - - freebsd /boot/kernel/kernel --verbose - unset FreeBSD.acpi_load - set FreeBSD.hint.acpi.0.disabled=1 - set FreeBSD.loader.acpi_disabled_by_user=1 - set FreeBSD.hint.apic.0.disabled=1 - set FreeBSD.hw.ata.ata_dma=0 - set FreeBSD.hw.ata.atapi_dma=0 - set FreeBSD.hw.ata.wc=0 - set FreeBSD.hw.eisa_slots=0 - set FreeBSD.hint.kbdmux.0.disabled=1 - set FreeBSD.vfs.root.mountfrom=ufs:ufsid/$uuid - frebsd_loadenv /boot/device.hints - } -} - -function freebsd_zfs_variants { - set device=$1 - set fstype=zfs - - menuentry "FreeBSD (on $fstype $device)" $device { - set root=$2 - - freebsd /@/boot/kernel/kernel - set FreeBSD.acpi_load=YES - set FreeBSD.hint.acpi.0.disabled=0 - freebsd_module_elf /@/boot/kernel/opensolaris.ko - freebsd_module_elf /@/boot/kernel/zfs.ko - freebsd_module /@/boot/zfs/zpool.cache type=/boot/zfs/zpool.cache - probe -l -s name $root - set FreeBSD.vfs.root.mountfrom=zfs:$name - freebsd_loadenv /@/boot/device.hints - } - - menuentry "FreeBSD (on $fstype $device) (single)" $device { - set root=$2 - - freebsd /@/boot/kernel/kernel --single - set FreeBSD.acpi_load=YES - set FreeBSD.hint.acpi.0.disabled=0 - freebsd_module_elf /@/boot/kernel/opensolaris.ko - freebsd_module_elf /@/boot/kernel/zfs.ko - freebsd_module /@/boot/zfs/zpool.cache type=/boot/zfs/zpool.cache - probe -l -s name $root - set FreeBSD.vfs.root.mountfrom=zfs:$name - freebsd_loadenv /@/boot/device.hints - } - - menuentry "FreeBSD (on $fstype $device) (verbose)" $device { - set root=$2 - - freebsd /@/boot/kernel/kernel --verbose - set FreeBSD.acpi_load=YES - set FreeBSD.hint.acpi.0.disabled=0 - freebsd_module_elf /@/boot/kernel/opensolaris.ko - freebsd_module_elf /@/boot/kernel/zfs.ko - freebsd_module /@/boot/zfs/zpool.cache type=/boot/zfs/zpool.cache - probe -l -s name $root - set FreeBSD.vfs.root.mountfrom=zfs:$name - freebsd_loadenv /@/boot/device.hints - } - - menuentry "FreeBSD (on $fstype $device) (without ACPI)" $device { - set root=$2 - - freebsd /@/boot/kernel/kernel --verbose - unset FreeBSD.acpi_load - set FreeBSD.hint.acpi.0.disabled=1 - set FreeBSD.loader.acpi_disabled_by_user=1 - freebsd_module_elf /@/boot/kernel/opensolaris.ko - freebsd_module_elf /@/boot/kernel/zfs.ko - freebsd_module /@/boot/zfs/zpool.cache type=/boot/zfs/zpool.cache - probe -l -s name $root - set FreeBSD.vfs.root.mountfrom=zfs:$name - freebsd_loadenv /@/boot/device.hints - } - - menuentry "FreeBSD (on $fstype $device) (safe mode)" $device { - set root=$2 - - freebsd /@/boot/kernel/kernel --verbose - unset FreeBSD.acpi_load - set FreeBSD.hint.acpi.0.disabled=1 - set FreeBSD.loader.acpi_disabled_by_user=1 - set FreeBSD.hint.apic.0.disabled=1 - set FreeBSD.hw.ata.ata_dma=0 - set FreeBSD.hw.ata.atapi_dma=0 - set FreeBSD.hw.ata.wc=0 - set FreeBSD.hw.eisa_slots=0 - set FreeBSD.hint.kbdmux.0.disabled=1 - freebsd_module_elf /@/boot/kernel/opensolaris.ko - freebsd_module_elf /@/boot/kernel/zfs.ko - freebsd_module /@/boot/zfs/zpool.cache type=/boot/zfs/zpool.cache - probe -l -s name $root - set FreeBSD.vfs.root.mountfrom=zfs:$name - freebsd_loadenv /@/boot/device.hints - } -} - -insmod regexp -for dev in (*); do - # $device: parenthesis removed from $dev - regexp -s device '\((.*)\)' $dev - # $fstype: filesystem type identified - probe -s fstype -f $dev - # uuid: filesystem UUID - probe -s uuid -u $dev - - if test -f ($device)/isolinux/isolinux.cfg ; then - menuentry "ISOLINUX config (on $device)" $device { - set root=$2 - syslinux_configfile -i /isolinux/isolinux.cfg - } - fi - if test -f ($device)/bootmgr -a -f ($device)/boot/bcd; then - menuentry "Windows Vista bootmgr (on $device)" $device { - set root=$2 - chainloader +1 - } - elif test -f ($device)/ntldr -a \ - -e ($device)/ntdetect.com -a -f ($device)/boot.ini; then - menuentry "Windows NT/2000/XP loader (on $device)" $device { - set root=$2 - regexp -s devnum 'hd([0-9]+)' $root - if test "$devnum" != "0"; then - drivemap -s hd0 $root - fi - chainloader +1 - } - elif test -f ($device)/windows/win.com; then - menuentry "Windows 98/ME (on $device)" $device { - set root=$2 - regexp -s devnum 'hd([0-9]+)' $root - if test "$devnum" != "0"; then - drivemap -s hd0 $root - fi - chainloader +1 - } - elif test -f ($device)/io.sys -a -f ($device)/command.com; then - menuentry "MS-DOS (on $device)" $device { - set root=$2 - regexp -s devnum 'hd([0-9]+)' $root - if test "$devnum" != "0"; then - drivemap -s hd0 $root - fi - chainloader +1 - } - elif test -f ($device)/kernel.sys; then - menuentry "FreeDOS (on $device)" $device { - set root=$2 - regexp -s type '([fh])d[0-9]+' $root - regexp -s devnum '[fh]d([0-9]+)' $root - if test $type = 'h' -a "$devnum" != "0"; then - drivemap -s hd0 $root - fi - chainloader +1 - } - elif test "$fstype" = ufs1 -o "$fstype" = ufs2 -a \ - -e ($device)/boot/kernel/kernel -a \ - -e ($device)/boot/device.hints; then - - freebsd_ufs_variants $device $fstype $uuid - - elif test "$fstype" = zfs -a \ - -e ($device)/@/boot/kernel/kernel -a \ - -e ($device)/@/boot/device.hints; then - - freebsd_zfs_variants $device - - elif test "$fstype" = hfsplus -a -f ($device)/mach_kernel; then - menuentry "Mac OS X/Darwin" $device $uuid { - set root=$2 - set uuid=$3 - - insmod vbe - do_resume=0 - if [ /var/vm/sleepimage -nt10 / ]; then - if xnu_resume /var/vm/sleepimage; then - do_resume=1 - fi - fi - if [ $do_resume = 1 ]; then - xnu_uuid $uuid uuid - if [ -f /Extra/DSDT.aml ]; then - acpi -e /Extra/DSDT.aml - fi - xnu_kernel /mach_kernel boot-uuid=${uuid} rd=*uuid - if [ /System/Library/Extensions.mkext -nt /System/Library/Extensions ]; then - xnu_mkext /System/Library/Extensions.mkext - else - xnu_mkext /System/Library/Extensions - fi - if [ -f /Extra/Extensions.mkext ]; then - xnu_mkext /Extra/Extensions.mkext - fi - if [ -d /Extra/Extensions ]; then - xnu_kextdir /Extra/Extensions - fi - if [ -f /Extra/devtree.txt ]; then - xnu_devtree /Extra/devtree.txt - fi - if [ -f /Extra/splash.jpg ]; then - insmod jpeg - xnu_splash /Extra/splash.jpg - fi - if [ -f /Extra/splash.png ]; then - insmod png - xnu_splash /Extra/splash.png - fi - if [ -f /Extra/splash.tga ]; then - insmod tga - xnu_splash /Extra/splash.tga - fi - fi - } - else - set root=$device - for file in /boot/vmlinuz-* /boot/linux-*; do - if test -f $file; then - regexp -s version '/boot/vmlinuz-(.*)' $file - regexp -s version '/boot/linux-(.*)' $file - - menuentry "Linux $file" $device $uuid $file $version { - set root=$2 - set uuid=$3 - set kernel=$4 - set version=$5 - - linux $kernel root=UUID=$uuid ro - if test -f /boot/initrd-$version.img; then - initrd /boot/initrd-$version.img - elif test -f /boot/initrd.img-$version; then - initrd /boot/initrd.img-$version - elif test -f /boot/initrd-$version; then - initrd /boot/initrd-$version - fi - } - - menuentry "Linux $file (single)" $device $uuid $file $version { - set root=$2 - set uuid=$3 - set kernel=$4 - set version=$5 - - linux $kernel root=UUID=$uuid ro single - if test -f /boot/initrd-$version.img; then - initrd /boot/initrd-$version.img - elif test -f /boot/initrd.img-$version; then - initrd /boot/initrd.img-$version - elif test -f /boot/initrd-$version; then - initrd /boot/initrd-$version - fi - } - fi - done - fi -done - -set root=$saved_root diff --git a/thirdparty/grub-2.04/docs/stamp-1 b/thirdparty/grub-2.04/docs/stamp-1 deleted file mode 100644 index be8a676cb..000000000 --- a/thirdparty/grub-2.04/docs/stamp-1 +++ /dev/null @@ -1,4 +0,0 @@ -@set UPDATED 24 June 2019 -@set UPDATED-MONTH June 2019 -@set EDITION 2.04 -@set VERSION 2.04 diff --git a/thirdparty/grub-2.04/docs/stamp-vti b/thirdparty/grub-2.04/docs/stamp-vti deleted file mode 100644 index be8a676cb..000000000 --- a/thirdparty/grub-2.04/docs/stamp-vti +++ /dev/null @@ -1,4 +0,0 @@ -@set UPDATED 24 June 2019 -@set UPDATED-MONTH June 2019 -@set EDITION 2.04 -@set VERSION 2.04 diff --git a/thirdparty/grub-2.04/docs/texinfo.tex b/thirdparty/grub-2.04/docs/texinfo.tex deleted file mode 100644 index 0135d0c7c..000000000 --- a/thirdparty/grub-2.04/docs/texinfo.tex +++ /dev/null @@ -1,8959 +0,0 @@ -% texinfo.tex -- TeX macros to handle Texinfo files. -% -% Load plain if necessary, i.e., if running under initex. -\expandafter\ifx\csname fmtname\endcsname\relax\input plain\fi -% -\def\texinfoversion{2007-09-03.05} -% -% Copyright (C) 1985, 1986, 1988, 1990, 1991, 1992, 1993, 1994, 1995, 2007, -% 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, -% 2007 Free Software Foundation, Inc. -% -% This texinfo.tex file is free software: you can redistribute it and/or -% modify it under the terms of the GNU General Public License as -% published by the Free Software Foundation, either version 3 of the -% License, or (at your option) any later version. -% -% This texinfo.tex file is distributed in the hope that it will be -% useful, but WITHOUT ANY WARRANTY; without even the implied warranty -% of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -% General Public License for more details. -% -% You should have received a copy of the GNU General Public License -% along with this program. If not, see . -% -% As a special exception, when this file is read by TeX when processing -% a Texinfo source document, you may use the result without -% restriction. (This has been our intent since Texinfo was invented.) -% -% Please try the latest version of texinfo.tex before submitting bug -% reports; you can get the latest version from: -% http://www.gnu.org/software/texinfo/ (the Texinfo home page), or -% ftp://tug.org/tex/texinfo.tex -% (and all CTAN mirrors, see http://www.ctan.org). -% The texinfo.tex in any given distribution could well be out -% of date, so if that's what you're using, please check. -% -% Send bug reports to bug-texinfo@gnu.org. Please include including a -% complete document in each bug report with which we can reproduce the -% problem. Patches are, of course, greatly appreciated. -% -% To process a Texinfo manual with TeX, it's most reliable to use the -% texi2dvi shell script that comes with the distribution. For a simple -% manual foo.texi, however, you can get away with this: -% tex foo.texi -% texindex foo.?? -% tex foo.texi -% tex foo.texi -% dvips foo.dvi -o # or whatever; this makes foo.ps. -% The extra TeX runs get the cross-reference information correct. -% Sometimes one run after texindex suffices, and sometimes you need more -% than two; texi2dvi does it as many times as necessary. -% -% It is possible to adapt texinfo.tex for other languages, to some -% extent. You can get the existing language-specific files from the -% full Texinfo distribution. -% -% The GNU Texinfo home page is http://www.gnu.org/software/texinfo. - - -\message{Loading texinfo [version \texinfoversion]:} - -% If in a .fmt file, print the version number -% and turn on active characters that we couldn't do earlier because -% they might have appeared in the input file name. -\everyjob{\message{[Texinfo version \texinfoversion]}% - \catcode`+=\active \catcode`\_=\active} - - -\chardef\other=12 - -% We never want plain's \outer definition of \+ in Texinfo. -% For @tex, we can use \tabalign. -\let\+ = \relax - -% Save some plain tex macros whose names we will redefine. -\let\ptexb=\b -\let\ptexbullet=\bullet -\let\ptexc=\c -\let\ptexcomma=\, -\let\ptexdot=\. -\let\ptexdots=\dots -\let\ptexend=\end -\let\ptexequiv=\equiv -\let\ptexexclam=\! -\let\ptexfootnote=\footnote -\let\ptexgtr=> -\let\ptexhat=^ -\let\ptexi=\i -\let\ptexindent=\indent -\let\ptexinsert=\insert -\let\ptexlbrace=\{ -\let\ptexless=< -\let\ptexnewwrite\newwrite -\let\ptexnoindent=\noindent -\let\ptexplus=+ -\let\ptexrbrace=\} -\let\ptexslash=\/ -\let\ptexstar=\* -\let\ptext=\t - -% If this character appears in an error message or help string, it -% starts a new line in the output. -\newlinechar = `^^J - -% Use TeX 3.0's \inputlineno to get the line number, for better error -% messages, but if we're using an old version of TeX, don't do anything. -% -\ifx\inputlineno\thisisundefined - \let\linenumber = \empty % Pre-3.0. -\else - \def\linenumber{l.\the\inputlineno:\space} -\fi - -% Set up fixed words for English if not already set. -\ifx\putwordAppendix\undefined \gdef\putwordAppendix{Appendix}\fi -\ifx\putwordChapter\undefined \gdef\putwordChapter{Chapter}\fi -\ifx\putwordfile\undefined \gdef\putwordfile{file}\fi -\ifx\putwordin\undefined \gdef\putwordin{in}\fi -\ifx\putwordIndexIsEmpty\undefined \gdef\putwordIndexIsEmpty{(Index is empty)}\fi -\ifx\putwordIndexNonexistent\undefined \gdef\putwordIndexNonexistent{(Index is nonexistent)}\fi -\ifx\putwordInfo\undefined \gdef\putwordInfo{Info}\fi -\ifx\putwordInstanceVariableof\undefined \gdef\putwordInstanceVariableof{Instance Variable of}\fi -\ifx\putwordMethodon\undefined \gdef\putwordMethodon{Method on}\fi -\ifx\putwordNoTitle\undefined \gdef\putwordNoTitle{No Title}\fi -\ifx\putwordof\undefined \gdef\putwordof{of}\fi -\ifx\putwordon\undefined \gdef\putwordon{on}\fi -\ifx\putwordpage\undefined \gdef\putwordpage{page}\fi -\ifx\putwordsection\undefined \gdef\putwordsection{section}\fi -\ifx\putwordSection\undefined \gdef\putwordSection{Section}\fi -\ifx\putwordsee\undefined \gdef\putwordsee{see}\fi -\ifx\putwordSee\undefined \gdef\putwordSee{See}\fi -\ifx\putwordShortTOC\undefined \gdef\putwordShortTOC{Short Contents}\fi -\ifx\putwordTOC\undefined \gdef\putwordTOC{Table of Contents}\fi -% -\ifx\putwordMJan\undefined \gdef\putwordMJan{January}\fi -\ifx\putwordMFeb\undefined \gdef\putwordMFeb{February}\fi -\ifx\putwordMMar\undefined \gdef\putwordMMar{March}\fi -\ifx\putwordMApr\undefined \gdef\putwordMApr{April}\fi -\ifx\putwordMMay\undefined \gdef\putwordMMay{May}\fi -\ifx\putwordMJun\undefined \gdef\putwordMJun{June}\fi -\ifx\putwordMJul\undefined \gdef\putwordMJul{July}\fi -\ifx\putwordMAug\undefined \gdef\putwordMAug{August}\fi -\ifx\putwordMSep\undefined \gdef\putwordMSep{September}\fi -\ifx\putwordMOct\undefined \gdef\putwordMOct{October}\fi -\ifx\putwordMNov\undefined \gdef\putwordMNov{November}\fi -\ifx\putwordMDec\undefined \gdef\putwordMDec{December}\fi -% -\ifx\putwordDefmac\undefined \gdef\putwordDefmac{Macro}\fi -\ifx\putwordDefspec\undefined \gdef\putwordDefspec{Special Form}\fi -\ifx\putwordDefvar\undefined \gdef\putwordDefvar{Variable}\fi -\ifx\putwordDefopt\undefined \gdef\putwordDefopt{User Option}\fi -\ifx\putwordDeffunc\undefined \gdef\putwordDeffunc{Function}\fi - -% Since the category of space is not known, we have to be careful. -\chardef\spacecat = 10 -\def\spaceisspace{\catcode`\ =\spacecat} - -% sometimes characters are active, so we need control sequences. -\chardef\colonChar = `\: -\chardef\commaChar = `\, -\chardef\dashChar = `\- -\chardef\dotChar = `\. -\chardef\exclamChar= `\! -\chardef\lquoteChar= `\` -\chardef\questChar = `\? -\chardef\rquoteChar= `\' -\chardef\semiChar = `\; -\chardef\underChar = `\_ - -% Ignore a token. -% -\def\gobble#1{} - -% The following is used inside several \edef's. -\def\makecsname#1{\expandafter\noexpand\csname#1\endcsname} - -% Hyphenation fixes. -\hyphenation{ - Flor-i-da Ghost-script Ghost-view Mac-OS Post-Script - ap-pen-dix bit-map bit-maps - data-base data-bases eshell fall-ing half-way long-est man-u-script - man-u-scripts mini-buf-fer mini-buf-fers over-view par-a-digm - par-a-digms rath-er rec-tan-gu-lar ro-bot-ics se-vere-ly set-up spa-ces - spell-ing spell-ings - stand-alone strong-est time-stamp time-stamps which-ever white-space - wide-spread wrap-around -} - -% Margin to add to right of even pages, to left of odd pages. -\newdimen\bindingoffset -\newdimen\normaloffset -\newdimen\pagewidth \newdimen\pageheight - -% For a final copy, take out the rectangles -% that mark overfull boxes (in case you have decided -% that the text looks ok even though it passes the margin). -% -\def\finalout{\overfullrule=0pt} - -% @| inserts a changebar to the left of the current line. It should -% surround any changed text. This approach does *not* work if the -% change spans more than two lines of output. To handle that, we would -% have adopt a much more difficult approach (putting marks into the main -% vertical list for the beginning and end of each change). -% -\def\|{% - % \vadjust can only be used in horizontal mode. - \leavevmode - % - % Append this vertical mode material after the current line in the output. - \vadjust{% - % We want to insert a rule with the height and depth of the current - % leading; that is exactly what \strutbox is supposed to record. - \vskip-\baselineskip - % - % \vadjust-items are inserted at the left edge of the type. So - % the \llap here moves out into the left-hand margin. - \llap{% - % - % For a thicker or thinner bar, change the `1pt'. - \vrule height\baselineskip width1pt - % - % This is the space between the bar and the text. - \hskip 12pt - }% - }% -} - -% Sometimes it is convenient to have everything in the transcript file -% and nothing on the terminal. We don't just call \tracingall here, -% since that produces some useless output on the terminal. We also make -% some effort to order the tracing commands to reduce output in the log -% file; cf. trace.sty in LaTeX. -% -\def\gloggingall{\begingroup \globaldefs = 1 \loggingall \endgroup}% -\def\loggingall{% - \tracingstats2 - \tracingpages1 - \tracinglostchars2 % 2 gives us more in etex - \tracingparagraphs1 - \tracingoutput1 - \tracingmacros2 - \tracingrestores1 - \showboxbreadth\maxdimen \showboxdepth\maxdimen - \ifx\eTeXversion\undefined\else % etex gives us more logging - \tracingscantokens1 - \tracingifs1 - \tracinggroups1 - \tracingnesting2 - \tracingassigns1 - \fi - \tracingcommands3 % 3 gives us more in etex - \errorcontextlines16 -}% - -% add check for \lastpenalty to plain's definitions. If the last thing -% we did was a \nobreak, we don't want to insert more space. -% -\def\smallbreak{\ifnum\lastpenalty<10000\par\ifdim\lastskip<\smallskipamount - \removelastskip\penalty-50\smallskip\fi\fi} -\def\medbreak{\ifnum\lastpenalty<10000\par\ifdim\lastskip<\medskipamount - \removelastskip\penalty-100\medskip\fi\fi} -\def\bigbreak{\ifnum\lastpenalty<10000\par\ifdim\lastskip<\bigskipamount - \removelastskip\penalty-200\bigskip\fi\fi} - -% For @cropmarks command. -% Do @cropmarks to get crop marks. -% -\newif\ifcropmarks -\let\cropmarks = \cropmarkstrue -% -% Dimensions to add cropmarks at corners. -% Added by P. A. MacKay, 12 Nov. 1986 -% -\newdimen\outerhsize \newdimen\outervsize % set by the paper size routines -\newdimen\cornerlong \cornerlong=1pc -\newdimen\cornerthick \cornerthick=.3pt -\newdimen\topandbottommargin \topandbottommargin=.75in - -% Output a mark which sets \thischapter, \thissection and \thiscolor. -% We dump everything together because we only have one kind of mark. -% This works because we only use \botmark / \topmark, not \firstmark. -% -% A mark contains a subexpression of the \ifcase ... \fi construct. -% \get*marks macros below extract the needed part using \ifcase. -% -% Another complication is to let the user choose whether \thischapter -% (\thissection) refers to the chapter (section) in effect at the top -% of a page, or that at the bottom of a page. The solution is -% described on page 260 of The TeXbook. It involves outputting two -% marks for the sectioning macros, one before the section break, and -% one after. I won't pretend I can describe this better than DEK... -\def\domark{% - \toks0=\expandafter{\lastchapterdefs}% - \toks2=\expandafter{\lastsectiondefs}% - \toks4=\expandafter{\prevchapterdefs}% - \toks6=\expandafter{\prevsectiondefs}% - \toks8=\expandafter{\lastcolordefs}% - \mark{% - \the\toks0 \the\toks2 - \noexpand\or \the\toks4 \the\toks6 - \noexpand\else \the\toks8 - }% -} -% \topmark doesn't work for the very first chapter (after the title -% page or the contents), so we use \firstmark there -- this gets us -% the mark with the chapter defs, unless the user sneaks in, e.g., -% @setcolor (or @url, or @link, etc.) between @contents and the very -% first @chapter. -\def\gettopheadingmarks{% - \ifcase0\topmark\fi - \ifx\thischapter\empty \ifcase0\firstmark\fi \fi -} -\def\getbottomheadingmarks{\ifcase1\botmark\fi} -\def\getcolormarks{\ifcase2\topmark\fi} - -% Avoid "undefined control sequence" errors. -\def\lastchapterdefs{} -\def\lastsectiondefs{} -\def\prevchapterdefs{} -\def\prevsectiondefs{} -\def\lastcolordefs{} - -% Main output routine. -\chardef\PAGE = 255 -\output = {\onepageout{\pagecontents\PAGE}} - -\newbox\headlinebox -\newbox\footlinebox - -% \onepageout takes a vbox as an argument. Note that \pagecontents -% does insertions, but you have to call it yourself. -\def\onepageout#1{% - \ifcropmarks \hoffset=0pt \else \hoffset=\normaloffset \fi - % - \ifodd\pageno \advance\hoffset by \bindingoffset - \else \advance\hoffset by -\bindingoffset\fi - % - % Do this outside of the \shipout so @code etc. will be expanded in - % the headline as they should be, not taken literally (outputting ''code). - \ifodd\pageno \getoddheadingmarks \else \getevenheadingmarks \fi - \setbox\headlinebox = \vbox{\let\hsize=\pagewidth \makeheadline}% - \ifodd\pageno \getoddfootingmarks \else \getevenfootingmarks \fi - \setbox\footlinebox = \vbox{\let\hsize=\pagewidth \makefootline}% - % - {% - % Have to do this stuff outside the \shipout because we want it to - % take effect in \write's, yet the group defined by the \vbox ends - % before the \shipout runs. - % - \indexdummies % don't expand commands in the output. - \normalturnoffactive % \ in index entries must not stay \, e.g., if - % the page break happens to be in the middle of an example. - % We don't want .vr (or whatever) entries like this: - % \entry{{\tt \indexbackslash }acronym}{32}{\code {\acronym}} - % "\acronym" won't work when it's read back in; - % it needs to be - % {\code {{\tt \backslashcurfont }acronym} - \shipout\vbox{% - % Do this early so pdf references go to the beginning of the page. - \ifpdfmakepagedest \pdfdest name{\the\pageno} xyz\fi - % - \ifcropmarks \vbox to \outervsize\bgroup - \hsize = \outerhsize - \vskip-\topandbottommargin - \vtop to0pt{% - \line{\ewtop\hfil\ewtop}% - \nointerlineskip - \line{% - \vbox{\moveleft\cornerthick\nstop}% - \hfill - \vbox{\moveright\cornerthick\nstop}% - }% - \vss}% - \vskip\topandbottommargin - \line\bgroup - \hfil % center the page within the outer (page) hsize. - \ifodd\pageno\hskip\bindingoffset\fi - \vbox\bgroup - \fi - % - \unvbox\headlinebox - \pagebody{#1}% - \ifdim\ht\footlinebox > 0pt - % Only leave this space if the footline is nonempty. - % (We lessened \vsize for it in \oddfootingyyy.) - % The \baselineskip=24pt in plain's \makefootline has no effect. - \vskip 24pt - \unvbox\footlinebox - \fi - % - \ifcropmarks - \egroup % end of \vbox\bgroup - \hfil\egroup % end of (centering) \line\bgroup - \vskip\topandbottommargin plus1fill minus1fill - \boxmaxdepth = \cornerthick - \vbox to0pt{\vss - \line{% - \vbox{\moveleft\cornerthick\nsbot}% - \hfill - \vbox{\moveright\cornerthick\nsbot}% - }% - \nointerlineskip - \line{\ewbot\hfil\ewbot}% - }% - \egroup % \vbox from first cropmarks clause - \fi - }% end of \shipout\vbox - }% end of group with \indexdummies - \advancepageno - \ifnum\outputpenalty>-20000 \else\dosupereject\fi -} - -\newinsert\margin \dimen\margin=\maxdimen - -\def\pagebody#1{\vbox to\pageheight{\boxmaxdepth=\maxdepth #1}} -{\catcode`\@ =11 -\gdef\pagecontents#1{\ifvoid\topins\else\unvbox\topins\fi -% marginal hacks, juha@viisa.uucp (Juha Takala) -\ifvoid\margin\else % marginal info is present - \rlap{\kern\hsize\vbox to\z@{\kern1pt\box\margin \vss}}\fi -\dimen@=\dp#1\relax \unvbox#1\relax -\ifvoid\footins\else\vskip\skip\footins\footnoterule \unvbox\footins\fi -\ifr@ggedbottom \kern-\dimen@ \vfil \fi} -} - -% Here are the rules for the cropmarks. Note that they are -% offset so that the space between them is truly \outerhsize or \outervsize -% (P. A. MacKay, 12 November, 1986) -% -\def\ewtop{\vrule height\cornerthick depth0pt width\cornerlong} -\def\nstop{\vbox - {\hrule height\cornerthick depth\cornerlong width\cornerthick}} -\def\ewbot{\vrule height0pt depth\cornerthick width\cornerlong} -\def\nsbot{\vbox - {\hrule height\cornerlong depth\cornerthick width\cornerthick}} - -% Parse an argument, then pass it to #1. The argument is the rest of -% the input line (except we remove a trailing comment). #1 should be a -% macro which expects an ordinary undelimited TeX argument. -% -\def\parsearg{\parseargusing{}} -\def\parseargusing#1#2{% - \def\argtorun{#2}% - \begingroup - \obeylines - \spaceisspace - #1% - \parseargline\empty% Insert the \empty token, see \finishparsearg below. -} - -{\obeylines % - \gdef\parseargline#1^^M{% - \endgroup % End of the group started in \parsearg. - \argremovecomment #1\comment\ArgTerm% - }% -} - -% First remove any @comment, then any @c comment. -\def\argremovecomment#1\comment#2\ArgTerm{\argremovec #1\c\ArgTerm} -\def\argremovec#1\c#2\ArgTerm{\argcheckspaces#1\^^M\ArgTerm} - -% Each occurence of `\^^M' or `\^^M' is replaced by a single space. -% -% \argremovec might leave us with trailing space, e.g., -% @end itemize @c foo -% This space token undergoes the same procedure and is eventually removed -% by \finishparsearg. -% -\def\argcheckspaces#1\^^M{\argcheckspacesX#1\^^M \^^M} -\def\argcheckspacesX#1 \^^M{\argcheckspacesY#1\^^M} -\def\argcheckspacesY#1\^^M#2\^^M#3\ArgTerm{% - \def\temp{#3}% - \ifx\temp\empty - % Do not use \next, perhaps the caller of \parsearg uses it; reuse \temp: - \let\temp\finishparsearg - \else - \let\temp\argcheckspaces - \fi - % Put the space token in: - \temp#1 #3\ArgTerm -} - -% If a _delimited_ argument is enclosed in braces, they get stripped; so -% to get _exactly_ the rest of the line, we had to prevent such situation. -% We prepended an \empty token at the very beginning and we expand it now, -% just before passing the control to \argtorun. -% (Similarily, we have to think about #3 of \argcheckspacesY above: it is -% either the null string, or it ends with \^^M---thus there is no danger -% that a pair of braces would be stripped. -% -% But first, we have to remove the trailing space token. -% -\def\finishparsearg#1 \ArgTerm{\expandafter\argtorun\expandafter{#1}} - -% \parseargdef\foo{...} -% is roughly equivalent to -% \def\foo{\parsearg\Xfoo} -% \def\Xfoo#1{...} -% -% Actually, I use \csname\string\foo\endcsname, ie. \\foo, as it is my -% favourite TeX trick. --kasal, 16nov03 - -\def\parseargdef#1{% - \expandafter \doparseargdef \csname\string#1\endcsname #1% -} -\def\doparseargdef#1#2{% - \def#2{\parsearg#1}% - \def#1##1% -} - -% Several utility definitions with active space: -{ - \obeyspaces - \gdef\obeyedspace{ } - - % Make each space character in the input produce a normal interword - % space in the output. Don't allow a line break at this space, as this - % is used only in environments like @example, where each line of input - % should produce a line of output anyway. - % - \gdef\sepspaces{\obeyspaces\let =\tie} - - % If an index command is used in an @example environment, any spaces - % therein should become regular spaces in the raw index file, not the - % expansion of \tie (\leavevmode \penalty \@M \ ). - \gdef\unsepspaces{\let =\space} -} - - -\def\flushcr{\ifx\par\lisppar \def\next##1{}\else \let\next=\relax \fi \next} - -% Define the framework for environments in texinfo.tex. It's used like this: -% -% \envdef\foo{...} -% \def\Efoo{...} -% -% It's the responsibility of \envdef to insert \begingroup before the -% actual body; @end closes the group after calling \Efoo. \envdef also -% defines \thisenv, so the current environment is known; @end checks -% whether the environment name matches. The \checkenv macro can also be -% used to check whether the current environment is the one expected. -% -% Non-false conditionals (@iftex, @ifset) don't fit into this, so they -% are not treated as enviroments; they don't open a group. (The -% implementation of @end takes care not to call \endgroup in this -% special case.) - - -% At runtime, environments start with this: -\def\startenvironment#1{\begingroup\def\thisenv{#1}} -% initialize -\let\thisenv\empty - -% ... but they get defined via ``\envdef\foo{...}'': -\long\def\envdef#1#2{\def#1{\startenvironment#1#2}} -\def\envparseargdef#1#2{\parseargdef#1{\startenvironment#1#2}} - -% Check whether we're in the right environment: -\def\checkenv#1{% - \def\temp{#1}% - \ifx\thisenv\temp - \else - \badenverr - \fi -} - -% Evironment mismatch, #1 expected: -\def\badenverr{% - \errhelp = \EMsimple - \errmessage{This command can appear only \inenvironment\temp, - not \inenvironment\thisenv}% -} -\def\inenvironment#1{% - \ifx#1\empty - out of any environment% - \else - in environment \expandafter\string#1% - \fi -} - -% @end foo executes the definition of \Efoo. -% But first, it executes a specialized version of \checkenv -% -\parseargdef\end{% - \if 1\csname iscond.#1\endcsname - \else - % The general wording of \badenverr may not be ideal, but... --kasal, 06nov03 - \expandafter\checkenv\csname#1\endcsname - \csname E#1\endcsname - \endgroup - \fi -} - -\newhelp\EMsimple{Press RETURN to continue.} - - -%% Simple single-character @ commands - -% @@ prints an @ -% Kludge this until the fonts are right (grr). -\def\@{{\tt\char64}} - -% This is turned off because it was never documented -% and you can use @w{...} around a quote to suppress ligatures. -%% Define @` and @' to be the same as ` and ' -%% but suppressing ligatures. -%\def\`{{`}} -%\def\'{{'}} - -% Used to generate quoted braces. -\def\mylbrace {{\tt\char123}} -\def\myrbrace {{\tt\char125}} -\let\{=\mylbrace -\let\}=\myrbrace -\begingroup - % Definitions to produce \{ and \} commands for indices, - % and @{ and @} for the aux/toc files. - \catcode`\{ = \other \catcode`\} = \other - \catcode`\[ = 1 \catcode`\] = 2 - \catcode`\! = 0 \catcode`\\ = \other - !gdef!lbracecmd[\{]% - !gdef!rbracecmd[\}]% - !gdef!lbraceatcmd[@{]% - !gdef!rbraceatcmd[@}]% -!endgroup - -% @comma{} to avoid , parsing problems. -\let\comma = , - -% Accents: @, @dotaccent @ringaccent @ubaraccent @udotaccent -% Others are defined by plain TeX: @` @' @" @^ @~ @= @u @v @H. -\let\, = \c -\let\dotaccent = \. -\def\ringaccent#1{{\accent23 #1}} -\let\tieaccent = \t -\let\ubaraccent = \b -\let\udotaccent = \d - -% Other special characters: @questiondown @exclamdown @ordf @ordm -% Plain TeX defines: @AA @AE @O @OE @L (plus lowercase versions) @ss. -\def\questiondown{?`} -\def\exclamdown{!`} -\def\ordf{\leavevmode\raise1ex\hbox{\selectfonts\lllsize \underbar{a}}} -\def\ordm{\leavevmode\raise1ex\hbox{\selectfonts\lllsize \underbar{o}}} - -% Dotless i and dotless j, used for accents. -\def\imacro{i} -\def\jmacro{j} -\def\dotless#1{% - \def\temp{#1}% - \ifx\temp\imacro \ptexi - \else\ifx\temp\jmacro \j - \else \errmessage{@dotless can be used only with i or j}% - \fi\fi -} - -% The \TeX{} logo, as in plain, but resetting the spacing so that a -% period following counts as ending a sentence. (Idea found in latex.) -% -\edef\TeX{\TeX \spacefactor=1000 } - -% @LaTeX{} logo. Not quite the same results as the definition in -% latex.ltx, since we use a different font for the raised A; it's most -% convenient for us to use an explicitly smaller font, rather than using -% the \scriptstyle font (since we don't reset \scriptstyle and -% \scriptscriptstyle). -% -\def\LaTeX{% - L\kern-.36em - {\setbox0=\hbox{T}% - \vbox to \ht0{\hbox{\selectfonts\lllsize A}\vss}}% - \kern-.15em - \TeX -} - -% Be sure we're in horizontal mode when doing a tie, since we make space -% equivalent to this in @example-like environments. Otherwise, a space -% at the beginning of a line will start with \penalty -- and -% since \penalty is valid in vertical mode, we'd end up putting the -% penalty on the vertical list instead of in the new paragraph. -{\catcode`@ = 11 - % Avoid using \@M directly, because that causes trouble - % if the definition is written into an index file. - \global\let\tiepenalty = \@M - \gdef\tie{\leavevmode\penalty\tiepenalty\ } -} - -% @: forces normal size whitespace following. -\def\:{\spacefactor=1000 } - -% @* forces a line break. -\def\*{\hfil\break\hbox{}\ignorespaces} - -% @/ allows a line break. -\let\/=\allowbreak - -% @. is an end-of-sentence period. -\def\.{.\spacefactor=\endofsentencespacefactor\space} - -% @! is an end-of-sentence bang. -\def\!{!\spacefactor=\endofsentencespacefactor\space} - -% @? is an end-of-sentence query. -\def\?{?\spacefactor=\endofsentencespacefactor\space} - -% @frenchspacing on|off says whether to put extra space after punctuation. -% -\def\onword{on} -\def\offword{off} -% -\parseargdef\frenchspacing{% - \def\temp{#1}% - \ifx\temp\onword \plainfrenchspacing - \else\ifx\temp\offword \plainnonfrenchspacing - \else - \errhelp = \EMsimple - \errmessage{Unknown @frenchspacing option `\temp', must be on/off}% - \fi\fi -} - -% @w prevents a word break. Without the \leavevmode, @w at the -% beginning of a paragraph, when TeX is still in vertical mode, would -% produce a whole line of output instead of starting the paragraph. -\def\w#1{\leavevmode\hbox{#1}} - -% @group ... @end group forces ... to be all on one page, by enclosing -% it in a TeX vbox. We use \vtop instead of \vbox to construct the box -% to keep its height that of a normal line. According to the rules for -% \topskip (p.114 of the TeXbook), the glue inserted is -% max (\topskip - \ht (first item), 0). If that height is large, -% therefore, no glue is inserted, and the space between the headline and -% the text is small, which looks bad. -% -% Another complication is that the group might be very large. This can -% cause the glue on the previous page to be unduly stretched, because it -% does not have much material. In this case, it's better to add an -% explicit \vfill so that the extra space is at the bottom. The -% threshold for doing this is if the group is more than \vfilllimit -% percent of a page (\vfilllimit can be changed inside of @tex). -% -\newbox\groupbox -\def\vfilllimit{0.7} -% -\envdef\group{% - \ifnum\catcode`\^^M=\active \else - \errhelp = \groupinvalidhelp - \errmessage{@group invalid in context where filling is enabled}% - \fi - \startsavinginserts - % - \setbox\groupbox = \vtop\bgroup - % Do @comment since we are called inside an environment such as - % @example, where each end-of-line in the input causes an - % end-of-line in the output. We don't want the end-of-line after - % the `@group' to put extra space in the output. Since @group - % should appear on a line by itself (according to the Texinfo - % manual), we don't worry about eating any user text. - \comment -} -% -% The \vtop produces a box with normal height and large depth; thus, TeX puts -% \baselineskip glue before it, and (when the next line of text is done) -% \lineskip glue after it. Thus, space below is not quite equal to space -% above. But it's pretty close. -\def\Egroup{% - % To get correct interline space between the last line of the group - % and the first line afterwards, we have to propagate \prevdepth. - \endgraf % Not \par, as it may have been set to \lisppar. - \global\dimen1 = \prevdepth - \egroup % End the \vtop. - % \dimen0 is the vertical size of the group's box. - \dimen0 = \ht\groupbox \advance\dimen0 by \dp\groupbox - % \dimen2 is how much space is left on the page (more or less). - \dimen2 = \pageheight \advance\dimen2 by -\pagetotal - % if the group doesn't fit on the current page, and it's a big big - % group, force a page break. - \ifdim \dimen0 > \dimen2 - \ifdim \pagetotal < \vfilllimit\pageheight - \page - \fi - \fi - \box\groupbox - \prevdepth = \dimen1 - \checkinserts -} -% -% TeX puts in an \escapechar (i.e., `@') at the beginning of the help -% message, so this ends up printing `@group can only ...'. -% -\newhelp\groupinvalidhelp{% -group can only be used in environments such as @example,^^J% -where each line of input produces a line of output.} - -% @need space-in-mils -% forces a page break if there is not space-in-mils remaining. - -\newdimen\mil \mil=0.001in - -% Old definition--didn't work. -%\parseargdef\need{\par % -%% This method tries to make TeX break the page naturally -%% if the depth of the box does not fit. -%{\baselineskip=0pt% -%\vtop to #1\mil{\vfil}\kern -#1\mil\nobreak -%\prevdepth=-1000pt -%}} - -\parseargdef\need{% - % Ensure vertical mode, so we don't make a big box in the middle of a - % paragraph. - \par - % - % If the @need value is less than one line space, it's useless. - \dimen0 = #1\mil - \dimen2 = \ht\strutbox - \advance\dimen2 by \dp\strutbox - \ifdim\dimen0 > \dimen2 - % - % Do a \strut just to make the height of this box be normal, so the - % normal leading is inserted relative to the preceding line. - % And a page break here is fine. - \vtop to #1\mil{\strut\vfil}% - % - % TeX does not even consider page breaks if a penalty added to the - % main vertical list is 10000 or more. But in order to see if the - % empty box we just added fits on the page, we must make it consider - % page breaks. On the other hand, we don't want to actually break the - % page after the empty box. So we use a penalty of 9999. - % - % There is an extremely small chance that TeX will actually break the - % page at this \penalty, if there are no other feasible breakpoints in - % sight. (If the user is using lots of big @group commands, which - % almost-but-not-quite fill up a page, TeX will have a hard time doing - % good page breaking, for example.) However, I could not construct an - % example where a page broke at this \penalty; if it happens in a real - % document, then we can reconsider our strategy. - \penalty9999 - % - % Back up by the size of the box, whether we did a page break or not. - \kern -#1\mil - % - % Do not allow a page break right after this kern. - \nobreak - \fi -} - -% @br forces paragraph break (and is undocumented). - -\let\br = \par - -% @page forces the start of a new page. -% -\def\page{\par\vfill\supereject} - -% @exdent text.... -% outputs text on separate line in roman font, starting at standard page margin - -% This records the amount of indent in the innermost environment. -% That's how much \exdent should take out. -\newskip\exdentamount - -% This defn is used inside fill environments such as @defun. -\parseargdef\exdent{\hfil\break\hbox{\kern -\exdentamount{\rm#1}}\hfil\break} - -% This defn is used inside nofill environments such as @example. -\parseargdef\nofillexdent{{\advance \leftskip by -\exdentamount - \leftline{\hskip\leftskip{\rm#1}}}} - -% @inmargin{WHICH}{TEXT} puts TEXT in the WHICH margin next to the current -% paragraph. For more general purposes, use the \margin insertion -% class. WHICH is `l' or `r'. -% -\newskip\inmarginspacing \inmarginspacing=1cm -\def\strutdepth{\dp\strutbox} -% -\def\doinmargin#1#2{\strut\vadjust{% - \nobreak - \kern-\strutdepth - \vtop to \strutdepth{% - \baselineskip=\strutdepth - \vss - % if you have multiple lines of stuff to put here, you'll need to - % make the vbox yourself of the appropriate size. - \ifx#1l% - \llap{\ignorespaces #2\hskip\inmarginspacing}% - \else - \rlap{\hskip\hsize \hskip\inmarginspacing \ignorespaces #2}% - \fi - \null - }% -}} -\def\inleftmargin{\doinmargin l} -\def\inrightmargin{\doinmargin r} -% -% @inmargin{TEXT [, RIGHT-TEXT]} -% (if RIGHT-TEXT is given, use TEXT for left page, RIGHT-TEXT for right; -% else use TEXT for both). -% -\def\inmargin#1{\parseinmargin #1,,\finish} -\def\parseinmargin#1,#2,#3\finish{% not perfect, but better than nothing. - \setbox0 = \hbox{\ignorespaces #2}% - \ifdim\wd0 > 0pt - \def\lefttext{#1}% have both texts - \def\righttext{#2}% - \else - \def\lefttext{#1}% have only one text - \def\righttext{#1}% - \fi - % - \ifodd\pageno - \def\temp{\inrightmargin\righttext}% odd page -> outside is right margin - \else - \def\temp{\inleftmargin\lefttext}% - \fi - \temp -} - -% @include file insert text of that file as input. -% -\def\include{\parseargusing\filenamecatcodes\includezzz} -\def\includezzz#1{% - \pushthisfilestack - \def\thisfile{#1}% - {% - \makevalueexpandable - \def\temp{\input #1 }% - \expandafter - }\temp - \popthisfilestack -} -\def\filenamecatcodes{% - \catcode`\\=\other - \catcode`~=\other - \catcode`^=\other - \catcode`_=\other - \catcode`|=\other - \catcode`<=\other - \catcode`>=\other - \catcode`+=\other - \catcode`-=\other -} - -\def\pushthisfilestack{% - \expandafter\pushthisfilestackX\popthisfilestack\StackTerm -} -\def\pushthisfilestackX{% - \expandafter\pushthisfilestackY\thisfile\StackTerm -} -\def\pushthisfilestackY #1\StackTerm #2\StackTerm {% - \gdef\popthisfilestack{\gdef\thisfile{#1}\gdef\popthisfilestack{#2}}% -} - -\def\popthisfilestack{\errthisfilestackempty} -\def\errthisfilestackempty{\errmessage{Internal error: - the stack of filenames is empty.}} - -\def\thisfile{} - -% @center line -% outputs that line, centered. -% -\parseargdef\center{% - \ifhmode - \let\next\centerH - \else - \let\next\centerV - \fi - \next{\hfil \ignorespaces#1\unskip \hfil}% -} -\def\centerH#1{% - {% - \hfil\break - \advance\hsize by -\leftskip - \advance\hsize by -\rightskip - \line{#1}% - \break - }% -} -\def\centerV#1{\line{\kern\leftskip #1\kern\rightskip}} - -% @sp n outputs n lines of vertical space - -\parseargdef\sp{\vskip #1\baselineskip} - -% @comment ...line which is ignored... -% @c is the same as @comment -% @ignore ... @end ignore is another way to write a comment - -\def\comment{\begingroup \catcode`\^^M=\other% -\catcode`\@=\other \catcode`\{=\other \catcode`\}=\other% -\commentxxx} -{\catcode`\^^M=\other \gdef\commentxxx#1^^M{\endgroup}} - -\let\c=\comment - -% @paragraphindent NCHARS -% We'll use ems for NCHARS, close enough. -% NCHARS can also be the word `asis' or `none'. -% We cannot feasibly implement @paragraphindent asis, though. -% -\def\asisword{asis} % no translation, these are keywords -\def\noneword{none} -% -\parseargdef\paragraphindent{% - \def\temp{#1}% - \ifx\temp\asisword - \else - \ifx\temp\noneword - \defaultparindent = 0pt - \else - \defaultparindent = #1em - \fi - \fi - \parindent = \defaultparindent -} - -% @exampleindent NCHARS -% We'll use ems for NCHARS like @paragraphindent. -% It seems @exampleindent asis isn't necessary, but -% I preserve it to make it similar to @paragraphindent. -\parseargdef\exampleindent{% - \def\temp{#1}% - \ifx\temp\asisword - \else - \ifx\temp\noneword - \lispnarrowing = 0pt - \else - \lispnarrowing = #1em - \fi - \fi -} - -% @firstparagraphindent WORD -% If WORD is `none', then suppress indentation of the first paragraph -% after a section heading. If WORD is `insert', then do indent at such -% paragraphs. -% -% The paragraph indentation is suppressed or not by calling -% \suppressfirstparagraphindent, which the sectioning commands do. -% We switch the definition of this back and forth according to WORD. -% By default, we suppress indentation. -% -\def\suppressfirstparagraphindent{\dosuppressfirstparagraphindent} -\def\insertword{insert} -% -\parseargdef\firstparagraphindent{% - \def\temp{#1}% - \ifx\temp\noneword - \let\suppressfirstparagraphindent = \dosuppressfirstparagraphindent - \else\ifx\temp\insertword - \let\suppressfirstparagraphindent = \relax - \else - \errhelp = \EMsimple - \errmessage{Unknown @firstparagraphindent option `\temp'}% - \fi\fi -} - -% Here is how we actually suppress indentation. Redefine \everypar to -% \kern backwards by \parindent, and then reset itself to empty. -% -% We also make \indent itself not actually do anything until the next -% paragraph. -% -\gdef\dosuppressfirstparagraphindent{% - \gdef\indent{% - \restorefirstparagraphindent - \indent - }% - \gdef\noindent{% - \restorefirstparagraphindent - \noindent - }% - \global\everypar = {% - \kern -\parindent - \restorefirstparagraphindent - }% -} - -\gdef\restorefirstparagraphindent{% - \global \let \indent = \ptexindent - \global \let \noindent = \ptexnoindent - \global \everypar = {}% -} - - -% @asis just yields its argument. Used with @table, for example. -% -\def\asis#1{#1} - -% @math outputs its argument in math mode. -% -% One complication: _ usually means subscripts, but it could also mean -% an actual _ character, as in @math{@var{some_variable} + 1}. So make -% _ active, and distinguish by seeing if the current family is \slfam, -% which is what @var uses. -{ - \catcode`\_ = \active - \gdef\mathunderscore{% - \catcode`\_=\active - \def_{\ifnum\fam=\slfam \_\else\sb\fi}% - } -} -% Another complication: we want \\ (and @\) to output a \ character. -% FYI, plain.tex uses \\ as a temporary control sequence (why?), but -% this is not advertised and we don't care. Texinfo does not -% otherwise define @\. -% -% The \mathchar is class=0=ordinary, family=7=ttfam, position=5C=\. -\def\mathbackslash{\ifnum\fam=\ttfam \mathchar"075C \else\backslash \fi} -% -\def\math{% - \tex - \mathunderscore - \let\\ = \mathbackslash - \mathactive - $\finishmath -} -\def\finishmath#1{#1$\endgroup} % Close the group opened by \tex. - -% Some active characters (such as <) are spaced differently in math. -% We have to reset their definitions in case the @math was an argument -% to a command which sets the catcodes (such as @item or @section). -% -{ - \catcode`^ = \active - \catcode`< = \active - \catcode`> = \active - \catcode`+ = \active - \gdef\mathactive{% - \let^ = \ptexhat - \let< = \ptexless - \let> = \ptexgtr - \let+ = \ptexplus - } -} - -% @bullet and @minus need the same treatment as @math, just above. -\def\bullet{$\ptexbullet$} -\def\minus{$-$} - -% @dots{} outputs an ellipsis using the current font. -% We do .5em per period so that it has the same spacing in the cm -% typewriter fonts as three actual period characters; on the other hand, -% in other typewriter fonts three periods are wider than 1.5em. So do -% whichever is larger. -% -\def\dots{% - \leavevmode - \setbox0=\hbox{...}% get width of three periods - \ifdim\wd0 > 1.5em - \dimen0 = \wd0 - \else - \dimen0 = 1.5em - \fi - \hbox to \dimen0{% - \hskip 0pt plus.25fil - .\hskip 0pt plus1fil - .\hskip 0pt plus1fil - .\hskip 0pt plus.5fil - }% -} - -% @enddots{} is an end-of-sentence ellipsis. -% -\def\enddots{% - \dots - \spacefactor=\endofsentencespacefactor -} - -% @comma{} is so commas can be inserted into text without messing up -% Texinfo's parsing. -% -\let\comma = , - -% @refill is a no-op. -\let\refill=\relax - -% If working on a large document in chapters, it is convenient to -% be able to disable indexing, cross-referencing, and contents, for test runs. -% This is done with @novalidate (before @setfilename). -% -\newif\iflinks \linkstrue % by default we want the aux files. -\let\novalidate = \linksfalse - -% @setfilename is done at the beginning of every texinfo file. -% So open here the files we need to have open while reading the input. -% This makes it possible to make a .fmt file for texinfo. -\def\setfilename{% - \fixbackslash % Turn off hack to swallow `\input texinfo'. - \iflinks - \tryauxfile - % Open the new aux file. TeX will close it automatically at exit. - \immediate\openout\auxfile=\jobname.aux - \fi % \openindices needs to do some work in any case. - \openindices - \let\setfilename=\comment % Ignore extra @setfilename cmds. - % - % If texinfo.cnf is present on the system, read it. - % Useful for site-wide @afourpaper, etc. - \openin 1 texinfo.cnf - \ifeof 1 \else \input texinfo.cnf \fi - \closein 1 - % - \comment % Ignore the actual filename. -} - -% Called from \setfilename. -% -\def\openindices{% - \newindex{cp}% - \newcodeindex{fn}% - \newcodeindex{vr}% - \newcodeindex{tp}% - \newcodeindex{ky}% - \newcodeindex{pg}% -} - -% @bye. -\outer\def\bye{\pagealignmacro\tracingstats=1\ptexend} - - -\message{pdf,} -% adobe `portable' document format -\newcount\tempnum -\newcount\lnkcount -\newtoks\filename -\newcount\filenamelength -\newcount\pgn -\newtoks\toksA -\newtoks\toksB -\newtoks\toksC -\newtoks\toksD -\newbox\boxA -\newcount\countA -\newif\ifpdf -\newif\ifpdfmakepagedest - -% when pdftex is run in dvi mode, \pdfoutput is defined (so \pdfoutput=1 -% can be set). So we test for \relax and 0 as well as \undefined, -% borrowed from ifpdf.sty. -\ifx\pdfoutput\undefined -\else - \ifx\pdfoutput\relax - \else - \ifcase\pdfoutput - \else - \pdftrue - \fi - \fi -\fi - -% PDF uses PostScript string constants for the names of xref targets, -% for display in the outlines, and in other places. Thus, we have to -% double any backslashes. Otherwise, a name like "\node" will be -% interpreted as a newline (\n), followed by o, d, e. Not good. -% http://www.ntg.nl/pipermail/ntg-pdftex/2004-July/000654.html -% (and related messages, the final outcome is that it is up to the TeX -% user to double the backslashes and otherwise make the string valid, so -% that's what we do). - -% double active backslashes. -% -{\catcode`\@=0 \catcode`\\=\active - @gdef@activebackslashdouble{% - @catcode`@\=@active - @let\=@doublebackslash} -} - -% To handle parens, we must adopt a different approach, since parens are -% not active characters. hyperref.dtx (which has the same problem as -% us) handles it with this amazing macro to replace tokens, with minor -% changes for Texinfo. It is included here under the GPL by permission -% from the author, Heiko Oberdiek. -% -% #1 is the tokens to replace. -% #2 is the replacement. -% #3 is the control sequence with the string. -% -\def\HyPsdSubst#1#2#3{% - \def\HyPsdReplace##1#1##2\END{% - ##1% - \ifx\\##2\\% - \else - #2% - \HyReturnAfterFi{% - \HyPsdReplace##2\END - }% - \fi - }% - \xdef#3{\expandafter\HyPsdReplace#3#1\END}% -} -\long\def\HyReturnAfterFi#1\fi{\fi#1} - -% #1 is a control sequence in which to do the replacements. -\def\backslashparens#1{% - \xdef#1{#1}% redefine it as its expansion; the definition is simply - % \lastnode when called from \setref -> \pdfmkdest. - \HyPsdSubst{(}{\realbackslash(}{#1}% - \HyPsdSubst{)}{\realbackslash)}{#1}% -} - -\newhelp\nopdfimagehelp{Texinfo supports .png, .jpg, .jpeg, and .pdf images -with PDF output, and none of those formats could be found. (.eps cannot -be supported due to the design of the PDF format; use regular TeX (DVI -output) for that.)} - -\ifpdf - % - % Color manipulation macros based on pdfcolor.tex. - \def\cmykDarkRed{0.28 1 1 0.35} - \def\cmykBlack{0 0 0 1} - % - \def\pdfsetcolor#1{\pdfliteral{#1 k}} - % Set color, and create a mark which defines \thiscolor accordingly, - % so that \makeheadline knows which color to restore. - \def\setcolor#1{% - \xdef\lastcolordefs{\gdef\noexpand\thiscolor{#1}}% - \domark - \pdfsetcolor{#1}% - } - % - \def\maincolor{\cmykBlack} - \pdfsetcolor{\maincolor} - \edef\thiscolor{\maincolor} - \def\lastcolordefs{} - % - \def\makefootline{% - \baselineskip24pt - \line{\pdfsetcolor{\maincolor}\the\footline}% - } - % - \def\makeheadline{% - \vbox to 0pt{% - \vskip-22.5pt - \line{% - \vbox to8.5pt{}% - % Extract \thiscolor definition from the marks. - \getcolormarks - % Typeset the headline with \maincolor, then restore the color. - \pdfsetcolor{\maincolor}\the\headline\pdfsetcolor{\thiscolor}% - }% - \vss - }% - \nointerlineskip - } - % - % - \pdfcatalog{/PageMode /UseOutlines} - % - % #1 is image name, #2 width (might be empty/whitespace), #3 height (ditto). - \def\dopdfimage#1#2#3{% - \def\imagewidth{#2}\setbox0 = \hbox{\ignorespaces #2}% - \def\imageheight{#3}\setbox2 = \hbox{\ignorespaces #3}% - % - % pdftex (and the PDF format) support .png, .jpg, .pdf (among - % others). Let's try in that order. - \let\pdfimgext=\empty - \begingroup - \openin 1 #1.png \ifeof 1 - \openin 1 #1.jpg \ifeof 1 - \openin 1 #1.jpeg \ifeof 1 - \openin 1 #1.JPG \ifeof 1 - \openin 1 #1.pdf \ifeof 1 - \errhelp = \nopdfimagehelp - \errmessage{Could not find image file #1 for pdf}% - \else \gdef\pdfimgext{pdf}% - \fi - \else \gdef\pdfimgext{JPG}% - \fi - \else \gdef\pdfimgext{jpeg}% - \fi - \else \gdef\pdfimgext{jpg}% - \fi - \else \gdef\pdfimgext{png}% - \fi - \closein 1 - \endgroup - % - % without \immediate, pdftex seg faults when the same image is - % included twice. (Version 3.14159-pre-1.0-unofficial-20010704.) - \ifnum\pdftexversion < 14 - \immediate\pdfimage - \else - \immediate\pdfximage - \fi - \ifdim \wd0 >0pt width \imagewidth \fi - \ifdim \wd2 >0pt height \imageheight \fi - \ifnum\pdftexversion<13 - #1.\pdfimgext - \else - {#1.\pdfimgext}% - \fi - \ifnum\pdftexversion < 14 \else - \pdfrefximage \pdflastximage - \fi} - % - \def\pdfmkdest#1{{% - % We have to set dummies so commands such as @code, and characters - % such as \, aren't expanded when present in a section title. - \indexnofonts - \turnoffactive - \activebackslashdouble - \makevalueexpandable - \def\pdfdestname{#1}% - \backslashparens\pdfdestname - \safewhatsit{\pdfdest name{\pdfdestname} xyz}% - }} - % - % used to mark target names; must be expandable. - \def\pdfmkpgn#1{#1} - % - % by default, use a color that is dark enough to print on paper as - % nearly black, but still distinguishable for online viewing. - \def\urlcolor{\cmykDarkRed} - \def\linkcolor{\cmykDarkRed} - \def\endlink{\setcolor{\maincolor}\pdfendlink} - % - % Adding outlines to PDF; macros for calculating structure of outlines - % come from Petr Olsak - \def\expnumber#1{\expandafter\ifx\csname#1\endcsname\relax 0% - \else \csname#1\endcsname \fi} - \def\advancenumber#1{\tempnum=\expnumber{#1}\relax - \advance\tempnum by 1 - \expandafter\xdef\csname#1\endcsname{\the\tempnum}} - % - % #1 is the section text, which is what will be displayed in the - % outline by the pdf viewer. #2 is the pdf expression for the number - % of subentries (or empty, for subsubsections). #3 is the node text, - % which might be empty if this toc entry had no corresponding node. - % #4 is the page number - % - \def\dopdfoutline#1#2#3#4{% - % Generate a link to the node text if that exists; else, use the - % page number. We could generate a destination for the section - % text in the case where a section has no node, but it doesn't - % seem worth the trouble, since most documents are normally structured. - \def\pdfoutlinedest{#3}% - \ifx\pdfoutlinedest\empty - \def\pdfoutlinedest{#4}% - \else - % Doubled backslashes in the name. - {\activebackslashdouble \xdef\pdfoutlinedest{#3}% - \backslashparens\pdfoutlinedest}% - \fi - % - % Also double the backslashes in the display string. - {\activebackslashdouble \xdef\pdfoutlinetext{#1}% - \backslashparens\pdfoutlinetext}% - % - \pdfoutline goto name{\pdfmkpgn{\pdfoutlinedest}}#2{\pdfoutlinetext}% - } - % - \def\pdfmakeoutlines{% - \begingroup - % Thanh's hack / proper braces in bookmarks - \edef\mylbrace{\iftrue \string{\else}\fi}\let\{=\mylbrace - \edef\myrbrace{\iffalse{\else\string}\fi}\let\}=\myrbrace - % - % Read toc silently, to get counts of subentries for \pdfoutline. - \def\numchapentry##1##2##3##4{% - \def\thischapnum{##2}% - \def\thissecnum{0}% - \def\thissubsecnum{0}% - }% - \def\numsecentry##1##2##3##4{% - \advancenumber{chap\thischapnum}% - \def\thissecnum{##2}% - \def\thissubsecnum{0}% - }% - \def\numsubsecentry##1##2##3##4{% - \advancenumber{sec\thissecnum}% - \def\thissubsecnum{##2}% - }% - \def\numsubsubsecentry##1##2##3##4{% - \advancenumber{subsec\thissubsecnum}% - }% - \def\thischapnum{0}% - \def\thissecnum{0}% - \def\thissubsecnum{0}% - % - % use \def rather than \let here because we redefine \chapentry et - % al. a second time, below. - \def\appentry{\numchapentry}% - \def\appsecentry{\numsecentry}% - \def\appsubsecentry{\numsubsecentry}% - \def\appsubsubsecentry{\numsubsubsecentry}% - \def\unnchapentry{\numchapentry}% - \def\unnsecentry{\numsecentry}% - \def\unnsubsecentry{\numsubsecentry}% - \def\unnsubsubsecentry{\numsubsubsecentry}% - \readdatafile{toc}% - % - % Read toc second time, this time actually producing the outlines. - % The `-' means take the \expnumber as the absolute number of - % subentries, which we calculated on our first read of the .toc above. - % - % We use the node names as the destinations. - \def\numchapentry##1##2##3##4{% - \dopdfoutline{##1}{count-\expnumber{chap##2}}{##3}{##4}}% - \def\numsecentry##1##2##3##4{% - \dopdfoutline{##1}{count-\expnumber{sec##2}}{##3}{##4}}% - \def\numsubsecentry##1##2##3##4{% - \dopdfoutline{##1}{count-\expnumber{subsec##2}}{##3}{##4}}% - \def\numsubsubsecentry##1##2##3##4{% count is always zero - \dopdfoutline{##1}{}{##3}{##4}}% - % - % PDF outlines are displayed using system fonts, instead of - % document fonts. Therefore we cannot use special characters, - % since the encoding is unknown. For example, the eogonek from - % Latin 2 (0xea) gets translated to a | character. Info from - % Staszek Wawrykiewicz, 19 Jan 2004 04:09:24 +0100. - % - % xx to do this right, we have to translate 8-bit characters to - % their "best" equivalent, based on the @documentencoding. Right - % now, I guess we'll just let the pdf reader have its way. - \indexnofonts - \setupdatafile - \catcode`\\=\active \otherbackslash - \input \tocreadfilename - \endgroup - } - % - \def\skipspaces#1{\def\PP{#1}\def\D{|}% - \ifx\PP\D\let\nextsp\relax - \else\let\nextsp\skipspaces - \ifx\p\space\else\addtokens{\filename}{\PP}% - \advance\filenamelength by 1 - \fi - \fi - \nextsp} - \def\getfilename#1{\filenamelength=0\expandafter\skipspaces#1|\relax} - \ifnum\pdftexversion < 14 - \let \startlink \pdfannotlink - \else - \let \startlink \pdfstartlink - \fi - % make a live url in pdf output. - \def\pdfurl#1{% - \begingroup - % it seems we really need yet another set of dummies; have not - % tried to figure out what each command should do in the context - % of @url. for now, just make @/ a no-op, that's the only one - % people have actually reported a problem with. - % - \normalturnoffactive - \def\@{@}% - \let\/=\empty - \makevalueexpandable - \leavevmode\setcolor{\urlcolor}% - \startlink attr{/Border [0 0 0]}% - user{/Subtype /Link /A << /S /URI /URI (#1) >>}% - \endgroup} - \def\pdfgettoks#1.{\setbox\boxA=\hbox{\toksA={#1.}\toksB={}\maketoks}} - \def\addtokens#1#2{\edef\addtoks{\noexpand#1={\the#1#2}}\addtoks} - \def\adn#1{\addtokens{\toksC}{#1}\global\countA=1\let\next=\maketoks} - \def\poptoks#1#2|ENDTOKS|{\let\first=#1\toksD={#1}\toksA={#2}} - \def\maketoks{% - \expandafter\poptoks\the\toksA|ENDTOKS|\relax - \ifx\first0\adn0 - \else\ifx\first1\adn1 \else\ifx\first2\adn2 \else\ifx\first3\adn3 - \else\ifx\first4\adn4 \else\ifx\first5\adn5 \else\ifx\first6\adn6 - \else\ifx\first7\adn7 \else\ifx\first8\adn8 \else\ifx\first9\adn9 - \else - \ifnum0=\countA\else\makelink\fi - \ifx\first.\let\next=\done\else - \let\next=\maketoks - \addtokens{\toksB}{\the\toksD} - \ifx\first,\addtokens{\toksB}{\space}\fi - \fi - \fi\fi\fi\fi\fi\fi\fi\fi\fi\fi - \next} - \def\makelink{\addtokens{\toksB}% - {\noexpand\pdflink{\the\toksC}}\toksC={}\global\countA=0} - \def\pdflink#1{% - \startlink attr{/Border [0 0 0]} goto name{\pdfmkpgn{#1}} - \setcolor{\linkcolor}#1\endlink} - \def\done{\edef\st{\global\noexpand\toksA={\the\toksB}}\st} -\else - \let\pdfmkdest = \gobble - \let\pdfurl = \gobble - \let\endlink = \relax - \let\setcolor = \gobble - \let\pdfsetcolor = \gobble - \let\pdfmakeoutlines = \relax -\fi % \ifx\pdfoutput - - -\message{fonts,} - -% Change the current font style to #1, remembering it in \curfontstyle. -% For now, we do not accumulate font styles: @b{@i{foo}} prints foo in -% italics, not bold italics. -% -\def\setfontstyle#1{% - \def\curfontstyle{#1}% not as a control sequence, because we are \edef'd. - \csname ten#1\endcsname % change the current font -} - -% Select #1 fonts with the current style. -% -\def\selectfonts#1{\csname #1fonts\endcsname \csname\curfontstyle\endcsname} - -\def\rm{\fam=0 \setfontstyle{rm}} -\def\it{\fam=\itfam \setfontstyle{it}} -\def\sl{\fam=\slfam \setfontstyle{sl}} -\def\bf{\fam=\bffam \setfontstyle{bf}}\def\bfstylename{bf} -\def\tt{\fam=\ttfam \setfontstyle{tt}} - -% Texinfo sort of supports the sans serif font style, which plain TeX does not. -% So we set up a \sf. -\newfam\sffam -\def\sf{\fam=\sffam \setfontstyle{sf}} -\let\li = \sf % Sometimes we call it \li, not \sf. - -% We don't need math for this font style. -\def\ttsl{\setfontstyle{ttsl}} - - -% Default leading. -\newdimen\textleading \textleading = 13.2pt - -% Set the baselineskip to #1, and the lineskip and strut size -% correspondingly. There is no deep meaning behind these magic numbers -% used as factors; they just match (closely enough) what Knuth defined. -% -\def\lineskipfactor{.08333} -\def\strutheightpercent{.70833} -\def\strutdepthpercent {.29167} -% -% can get a sort of poor man's double spacing by redefining this. -\def\baselinefactor{1} -% -\def\setleading#1{% - \dimen0 = #1\relax - \normalbaselineskip = \baselinefactor\dimen0 - \normallineskip = \lineskipfactor\normalbaselineskip - \normalbaselines - \setbox\strutbox =\hbox{% - \vrule width0pt height\strutheightpercent\baselineskip - depth \strutdepthpercent \baselineskip - }% -} - -% -% PDF CMaps. See also LaTeX's t1.cmap. -% -% \cmapOT1 -\ifpdf - \begingroup - \catcode`\^^M=\active \def^^M{^^J}% Output line endings as the ^^J char. - \catcode`\%=12 \immediate\pdfobj stream {%!PS-Adobe-3.0 Resource-CMap -%%DocumentNeededResources: ProcSet (CIDInit) -%%IncludeResource: ProcSet (CIDInit) -%%BeginResource: CMap (TeX-OT1-0) -%%Title: (TeX-OT1-0 TeX OT1 0) -%%Version: 1.000 -%%EndComments -/CIDInit /ProcSet findresource begin -12 dict begin -begincmap -/CIDSystemInfo -<< /Registry (TeX) -/Ordering (OT1) -/Supplement 0 ->> def -/CMapName /TeX-OT1-0 def -/CMapType 2 def -1 begincodespacerange -<00> <7F> -endcodespacerange -8 beginbfrange -<00> <01> <0393> -<09> <0A> <03A8> -<23> <26> <0023> -<28> <3B> <0028> -<3F> <5B> <003F> -<5D> <5E> <005D> -<61> <7A> <0061> -<7B> <7C> <2013> -endbfrange -40 beginbfchar -<02> <0398> -<03> <039B> -<04> <039E> -<05> <03A0> -<06> <03A3> -<07> <03D2> -<08> <03A6> -<0B> <00660066> -<0C> <00660069> -<0D> <0066006C> -<0E> <006600660069> -<0F> <00660066006C> -<10> <0131> -<11> <0237> -<12> <0060> -<13> <00B4> -<14> <02C7> -<15> <02D8> -<16> <00AF> -<17> <02DA> -<18> <00B8> -<19> <00DF> -<1A> <00E6> -<1B> <0153> -<1C> <00F8> -<1D> <00C6> -<1E> <0152> -<1F> <00D8> -<21> <0021> -<22> <201D> -<27> <2019> -<3C> <00A1> -<3D> <003D> -<3E> <00BF> -<5C> <201C> -<5F> <02D9> -<60> <2018> -<7D> <02DD> -<7E> <007E> -<7F> <00A8> -endbfchar -endcmap -CMapName currentdict /CMap defineresource pop -end -end -%%EndResource -%%EOF - }\endgroup - \expandafter\edef\csname cmapOT1\endcsname#1{% - \pdffontattr#1{/ToUnicode \the\pdflastobj\space 0 R}% - }% -% -% \cmapOT1IT - \begingroup - \catcode`\^^M=\active \def^^M{^^J}% Output line endings as the ^^J char. - \catcode`\%=12 \immediate\pdfobj stream {%!PS-Adobe-3.0 Resource-CMap -%%DocumentNeededResources: ProcSet (CIDInit) -%%IncludeResource: ProcSet (CIDInit) -%%BeginResource: CMap (TeX-OT1IT-0) -%%Title: (TeX-OT1IT-0 TeX OT1IT 0) -%%Version: 1.000 -%%EndComments -/CIDInit /ProcSet findresource begin -12 dict begin -begincmap -/CIDSystemInfo -<< /Registry (TeX) -/Ordering (OT1IT) -/Supplement 0 ->> def -/CMapName /TeX-OT1IT-0 def -/CMapType 2 def -1 begincodespacerange -<00> <7F> -endcodespacerange -8 beginbfrange -<00> <01> <0393> -<09> <0A> <03A8> -<25> <26> <0025> -<28> <3B> <0028> -<3F> <5B> <003F> -<5D> <5E> <005D> -<61> <7A> <0061> -<7B> <7C> <2013> -endbfrange -42 beginbfchar -<02> <0398> -<03> <039B> -<04> <039E> -<05> <03A0> -<06> <03A3> -<07> <03D2> -<08> <03A6> -<0B> <00660066> -<0C> <00660069> -<0D> <0066006C> -<0E> <006600660069> -<0F> <00660066006C> -<10> <0131> -<11> <0237> -<12> <0060> -<13> <00B4> -<14> <02C7> -<15> <02D8> -<16> <00AF> -<17> <02DA> -<18> <00B8> -<19> <00DF> -<1A> <00E6> -<1B> <0153> -<1C> <00F8> -<1D> <00C6> -<1E> <0152> -<1F> <00D8> -<21> <0021> -<22> <201D> -<23> <0023> -<24> <00A3> -<27> <2019> -<3C> <00A1> -<3D> <003D> -<3E> <00BF> -<5C> <201C> -<5F> <02D9> -<60> <2018> -<7D> <02DD> -<7E> <007E> -<7F> <00A8> -endbfchar -endcmap -CMapName currentdict /CMap defineresource pop -end -end -%%EndResource -%%EOF - }\endgroup - \expandafter\edef\csname cmapOT1IT\endcsname#1{% - \pdffontattr#1{/ToUnicode \the\pdflastobj\space 0 R}% - }% -% -% \cmapOT1TT - \begingroup - \catcode`\^^M=\active \def^^M{^^J}% Output line endings as the ^^J char. - \catcode`\%=12 \immediate\pdfobj stream {%!PS-Adobe-3.0 Resource-CMap -%%DocumentNeededResources: ProcSet (CIDInit) -%%IncludeResource: ProcSet (CIDInit) -%%BeginResource: CMap (TeX-OT1TT-0) -%%Title: (TeX-OT1TT-0 TeX OT1TT 0) -%%Version: 1.000 -%%EndComments -/CIDInit /ProcSet findresource begin -12 dict begin -begincmap -/CIDSystemInfo -<< /Registry (TeX) -/Ordering (OT1TT) -/Supplement 0 ->> def -/CMapName /TeX-OT1TT-0 def -/CMapType 2 def -1 begincodespacerange -<00> <7F> -endcodespacerange -5 beginbfrange -<00> <01> <0393> -<09> <0A> <03A8> -<21> <26> <0021> -<28> <5F> <0028> -<61> <7E> <0061> -endbfrange -32 beginbfchar -<02> <0398> -<03> <039B> -<04> <039E> -<05> <03A0> -<06> <03A3> -<07> <03D2> -<08> <03A6> -<0B> <2191> -<0C> <2193> -<0D> <0027> -<0E> <00A1> -<0F> <00BF> -<10> <0131> -<11> <0237> -<12> <0060> -<13> <00B4> -<14> <02C7> -<15> <02D8> -<16> <00AF> -<17> <02DA> -<18> <00B8> -<19> <00DF> -<1A> <00E6> -<1B> <0153> -<1C> <00F8> -<1D> <00C6> -<1E> <0152> -<1F> <00D8> -<20> <2423> -<27> <2019> -<60> <2018> -<7F> <00A8> -endbfchar -endcmap -CMapName currentdict /CMap defineresource pop -end -end -%%EndResource -%%EOF - }\endgroup - \expandafter\edef\csname cmapOT1TT\endcsname#1{% - \pdffontattr#1{/ToUnicode \the\pdflastobj\space 0 R}% - }% -\else - \expandafter\let\csname cmapOT1\endcsname\gobble - \expandafter\let\csname cmapOT1IT\endcsname\gobble - \expandafter\let\csname cmapOT1TT\endcsname\gobble -\fi - - -% Set the font macro #1 to the font named #2, adding on the -% specified font prefix (normally `cm'). -% #3 is the font's design size, #4 is a scale factor, #5 is the CMap -% encoding (currently only OT1, OT1IT and OT1TT are allowed, pass -% empty to omit). -\def\setfont#1#2#3#4#5{% - \font#1=\fontprefix#2#3 scaled #4 - \csname cmap#5\endcsname#1% -} -% This is what gets called when #5 of \setfont is empty. -\let\cmap\gobble - - -% Use cm as the default font prefix. -% To specify the font prefix, you must define \fontprefix -% before you read in texinfo.tex. -\ifx\fontprefix\undefined -\def\fontprefix{cm} -\fi -% Support font families that don't use the same naming scheme as CM. -\def\rmshape{r} -\def\rmbshape{bx} %where the normal face is bold -\def\bfshape{b} -\def\bxshape{bx} -\def\ttshape{tt} -\def\ttbshape{tt} -\def\ttslshape{sltt} -\def\itshape{ti} -\def\itbshape{bxti} -\def\slshape{sl} -\def\slbshape{bxsl} -\def\sfshape{ss} -\def\sfbshape{ss} -\def\scshape{csc} -\def\scbshape{csc} - -% Definitions for a main text size of 11pt. This is the default in -% Texinfo. -% -\def\definetextfontsizexi{% -% Text fonts (11.2pt, magstep1). -\def\textnominalsize{11pt} -\edef\mainmagstep{\magstephalf} -\setfont\textrm\rmshape{10}{\mainmagstep}{OT1} -\setfont\texttt\ttshape{10}{\mainmagstep}{OT1TT} -\setfont\textbf\bfshape{10}{\mainmagstep}{OT1} -\setfont\textit\itshape{10}{\mainmagstep}{OT1IT} -\setfont\textsl\slshape{10}{\mainmagstep}{OT1} -\setfont\textsf\sfshape{10}{\mainmagstep}{OT1} -\setfont\textsc\scshape{10}{\mainmagstep}{OT1} -\setfont\textttsl\ttslshape{10}{\mainmagstep}{OT1TT} -\font\texti=cmmi10 scaled \mainmagstep -\font\textsy=cmsy10 scaled \mainmagstep -\def\textecsize{1095} - -% A few fonts for @defun names and args. -\setfont\defbf\bfshape{10}{\magstep1}{OT1} -\setfont\deftt\ttshape{10}{\magstep1}{OT1TT} -\setfont\defttsl\ttslshape{10}{\magstep1}{OT1TT} -\def\df{\let\tentt=\deftt \let\tenbf = \defbf \let\tenttsl=\defttsl \bf} - -% Fonts for indices, footnotes, small examples (9pt). -\def\smallnominalsize{9pt} -\setfont\smallrm\rmshape{9}{1000}{OT1} -\setfont\smalltt\ttshape{9}{1000}{OT1TT} -\setfont\smallbf\bfshape{10}{900}{OT1} -\setfont\smallit\itshape{9}{1000}{OT1IT} -\setfont\smallsl\slshape{9}{1000}{OT1} -\setfont\smallsf\sfshape{9}{1000}{OT1} -\setfont\smallsc\scshape{10}{900}{OT1} -\setfont\smallttsl\ttslshape{10}{900}{OT1TT} -\font\smalli=cmmi9 -\font\smallsy=cmsy9 -\def\smallecsize{0900} - -% Fonts for small examples (8pt). -\def\smallernominalsize{8pt} -\setfont\smallerrm\rmshape{8}{1000}{OT1} -\setfont\smallertt\ttshape{8}{1000}{OT1TT} -\setfont\smallerbf\bfshape{10}{800}{OT1} -\setfont\smallerit\itshape{8}{1000}{OT1IT} -\setfont\smallersl\slshape{8}{1000}{OT1} -\setfont\smallersf\sfshape{8}{1000}{OT1} -\setfont\smallersc\scshape{10}{800}{OT1} -\setfont\smallerttsl\ttslshape{10}{800}{OT1TT} -\font\smalleri=cmmi8 -\font\smallersy=cmsy8 -\def\smallerecsize{0800} - -% Fonts for title page (20.4pt): -\def\titlenominalsize{20pt} -\setfont\titlerm\rmbshape{12}{\magstep3}{OT1} -\setfont\titleit\itbshape{10}{\magstep4}{OT1IT} -\setfont\titlesl\slbshape{10}{\magstep4}{OT1} -\setfont\titlett\ttbshape{12}{\magstep3}{OT1TT} -\setfont\titlettsl\ttslshape{10}{\magstep4}{OT1TT} -\setfont\titlesf\sfbshape{17}{\magstep1}{OT1} -\let\titlebf=\titlerm -\setfont\titlesc\scbshape{10}{\magstep4}{OT1} -\font\titlei=cmmi12 scaled \magstep3 -\font\titlesy=cmsy10 scaled \magstep4 -\def\authorrm{\secrm} -\def\authortt{\sectt} -\def\titleecsize{2074} - -% Chapter (and unnumbered) fonts (17.28pt). -\def\chapnominalsize{17pt} -\setfont\chaprm\rmbshape{12}{\magstep2}{OT1} -\setfont\chapit\itbshape{10}{\magstep3}{OT1IT} -\setfont\chapsl\slbshape{10}{\magstep3}{OT1} -\setfont\chaptt\ttbshape{12}{\magstep2}{OT1TT} -\setfont\chapttsl\ttslshape{10}{\magstep3}{OT1TT} -\setfont\chapsf\sfbshape{17}{1000}{OT1} -\let\chapbf=\chaprm -\setfont\chapsc\scbshape{10}{\magstep3}{OT1} -\font\chapi=cmmi12 scaled \magstep2 -\font\chapsy=cmsy10 scaled \magstep3 -\def\chapecsize{1728} - -% Section fonts (14.4pt). -\def\secnominalsize{14pt} -\setfont\secrm\rmbshape{12}{\magstep1}{OT1} -\setfont\secit\itbshape{10}{\magstep2}{OT1IT} -\setfont\secsl\slbshape{10}{\magstep2}{OT1} -\setfont\sectt\ttbshape{12}{\magstep1}{OT1TT} -\setfont\secttsl\ttslshape{10}{\magstep2}{OT1TT} -\setfont\secsf\sfbshape{12}{\magstep1}{OT1} -\let\secbf\secrm -\setfont\secsc\scbshape{10}{\magstep2}{OT1} -\font\seci=cmmi12 scaled \magstep1 -\font\secsy=cmsy10 scaled \magstep2 -\def\sececsize{1440} - -% Subsection fonts (13.15pt). -\def\ssecnominalsize{13pt} -\setfont\ssecrm\rmbshape{12}{\magstephalf}{OT1} -\setfont\ssecit\itbshape{10}{1315}{OT1IT} -\setfont\ssecsl\slbshape{10}{1315}{OT1} -\setfont\ssectt\ttbshape{12}{\magstephalf}{OT1TT} -\setfont\ssecttsl\ttslshape{10}{1315}{OT1TT} -\setfont\ssecsf\sfbshape{12}{\magstephalf}{OT1} -\let\ssecbf\ssecrm -\setfont\ssecsc\scbshape{10}{1315}{OT1} -\font\sseci=cmmi12 scaled \magstephalf -\font\ssecsy=cmsy10 scaled 1315 -\def\ssececsize{1200} - -% Reduced fonts for @acro in text (10pt). -\def\reducednominalsize{10pt} -\setfont\reducedrm\rmshape{10}{1000}{OT1} -\setfont\reducedtt\ttshape{10}{1000}{OT1TT} -\setfont\reducedbf\bfshape{10}{1000}{OT1} -\setfont\reducedit\itshape{10}{1000}{OT1IT} -\setfont\reducedsl\slshape{10}{1000}{OT1} -\setfont\reducedsf\sfshape{10}{1000}{OT1} -\setfont\reducedsc\scshape{10}{1000}{OT1} -\setfont\reducedttsl\ttslshape{10}{1000}{OT1TT} -\font\reducedi=cmmi10 -\font\reducedsy=cmsy10 -\def\reducedecsize{1000} - -% reset the current fonts -\textfonts -\rm -} % end of 11pt text font size definitions - - -% Definitions to make the main text be 10pt Computer Modern, with -% section, chapter, etc., sizes following suit. This is for the GNU -% Press printing of the Emacs 22 manual. Maybe other manuals in the -% future. Used with @smallbook, which sets the leading to 12pt. -% -\def\definetextfontsizex{% -% Text fonts (10pt). -\def\textnominalsize{10pt} -\edef\mainmagstep{1000} -\setfont\textrm\rmshape{10}{\mainmagstep}{OT1} -\setfont\texttt\ttshape{10}{\mainmagstep}{OT1TT} -\setfont\textbf\bfshape{10}{\mainmagstep}{OT1} -\setfont\textit\itshape{10}{\mainmagstep}{OT1IT} -\setfont\textsl\slshape{10}{\mainmagstep}{OT1} -\setfont\textsf\sfshape{10}{\mainmagstep}{OT1} -\setfont\textsc\scshape{10}{\mainmagstep}{OT1} -\setfont\textttsl\ttslshape{10}{\mainmagstep}{OT1TT} -\font\texti=cmmi10 scaled \mainmagstep -\font\textsy=cmsy10 scaled \mainmagstep -\def\textecsize{1000} - -% A few fonts for @defun names and args. -\setfont\defbf\bfshape{10}{\magstephalf}{OT1} -\setfont\deftt\ttshape{10}{\magstephalf}{OT1TT} -\setfont\defttsl\ttslshape{10}{\magstephalf}{OT1TT} -\def\df{\let\tentt=\deftt \let\tenbf = \defbf \let\tenttsl=\defttsl \bf} - -% Fonts for indices, footnotes, small examples (9pt). -\def\smallnominalsize{9pt} -\setfont\smallrm\rmshape{9}{1000}{OT1} -\setfont\smalltt\ttshape{9}{1000}{OT1TT} -\setfont\smallbf\bfshape{10}{900}{OT1} -\setfont\smallit\itshape{9}{1000}{OT1IT} -\setfont\smallsl\slshape{9}{1000}{OT1} -\setfont\smallsf\sfshape{9}{1000}{OT1} -\setfont\smallsc\scshape{10}{900}{OT1} -\setfont\smallttsl\ttslshape{10}{900}{OT1TT} -\font\smalli=cmmi9 -\font\smallsy=cmsy9 -\def\smallecsize{0900} - -% Fonts for small examples (8pt). -\def\smallernominalsize{8pt} -\setfont\smallerrm\rmshape{8}{1000}{OT1} -\setfont\smallertt\ttshape{8}{1000}{OT1TT} -\setfont\smallerbf\bfshape{10}{800}{OT1} -\setfont\smallerit\itshape{8}{1000}{OT1IT} -\setfont\smallersl\slshape{8}{1000}{OT1} -\setfont\smallersf\sfshape{8}{1000}{OT1} -\setfont\smallersc\scshape{10}{800}{OT1} -\setfont\smallerttsl\ttslshape{10}{800}{OT1TT} -\font\smalleri=cmmi8 -\font\smallersy=cmsy8 -\def\smallerecsize{0800} - -% Fonts for title page (20.4pt): -\def\titlenominalsize{20pt} -\setfont\titlerm\rmbshape{12}{\magstep3}{OT1} -\setfont\titleit\itbshape{10}{\magstep4}{OT1IT} -\setfont\titlesl\slbshape{10}{\magstep4}{OT1} -\setfont\titlett\ttbshape{12}{\magstep3}{OT1TT} -\setfont\titlettsl\ttslshape{10}{\magstep4}{OT1TT} -\setfont\titlesf\sfbshape{17}{\magstep1}{OT1} -\let\titlebf=\titlerm -\setfont\titlesc\scbshape{10}{\magstep4}{OT1} -\font\titlei=cmmi12 scaled \magstep3 -\font\titlesy=cmsy10 scaled \magstep4 -\def\authorrm{\secrm} -\def\authortt{\sectt} -\def\titleecsize{2074} - -% Chapter fonts (14.4pt). -\def\chapnominalsize{14pt} -\setfont\chaprm\rmbshape{12}{\magstep1}{OT1} -\setfont\chapit\itbshape{10}{\magstep2}{OT1IT} -\setfont\chapsl\slbshape{10}{\magstep2}{OT1} -\setfont\chaptt\ttbshape{12}{\magstep1}{OT1TT} -\setfont\chapttsl\ttslshape{10}{\magstep2}{OT1TT} -\setfont\chapsf\sfbshape{12}{\magstep1}{OT1} -\let\chapbf\chaprm -\setfont\chapsc\scbshape{10}{\magstep2}{OT1} -\font\chapi=cmmi12 scaled \magstep1 -\font\chapsy=cmsy10 scaled \magstep2 -\def\chapecsize{1440} - -% Section fonts (12pt). -\def\secnominalsize{12pt} -\setfont\secrm\rmbshape{12}{1000}{OT1} -\setfont\secit\itbshape{10}{\magstep1}{OT1IT} -\setfont\secsl\slbshape{10}{\magstep1}{OT1} -\setfont\sectt\ttbshape{12}{1000}{OT1TT} -\setfont\secttsl\ttslshape{10}{\magstep1}{OT1TT} -\setfont\secsf\sfbshape{12}{1000}{OT1} -\let\secbf\secrm -\setfont\secsc\scbshape{10}{\magstep1}{OT1} -\font\seci=cmmi12 -\font\secsy=cmsy10 scaled \magstep1 -\def\sececsize{1200} - -% Subsection fonts (10pt). -\def\ssecnominalsize{10pt} -\setfont\ssecrm\rmbshape{10}{1000}{OT1} -\setfont\ssecit\itbshape{10}{1000}{OT1IT} -\setfont\ssecsl\slbshape{10}{1000}{OT1} -\setfont\ssectt\ttbshape{10}{1000}{OT1TT} -\setfont\ssecttsl\ttslshape{10}{1000}{OT1TT} -\setfont\ssecsf\sfbshape{10}{1000}{OT1} -\let\ssecbf\ssecrm -\setfont\ssecsc\scbshape{10}{1000}{OT1} -\font\sseci=cmmi10 -\font\ssecsy=cmsy10 -\def\ssececsize{1000} - -% Reduced fonts for @acro in text (9pt). -\def\reducednominalsize{9pt} -\setfont\reducedrm\rmshape{9}{1000}{OT1} -\setfont\reducedtt\ttshape{9}{1000}{OT1TT} -\setfont\reducedbf\bfshape{10}{900}{OT1} -\setfont\reducedit\itshape{9}{1000}{OT1IT} -\setfont\reducedsl\slshape{9}{1000}{OT1} -\setfont\reducedsf\sfshape{9}{1000}{OT1} -\setfont\reducedsc\scshape{10}{900}{OT1} -\setfont\reducedttsl\ttslshape{10}{900}{OT1TT} -\font\reducedi=cmmi9 -\font\reducedsy=cmsy9 -\def\reducedecsize{0900} - -% reduce space between paragraphs -\divide\parskip by 2 - -% reset the current fonts -\textfonts -\rm -} % end of 10pt text font size definitions - - -% We provide the user-level command -% @fonttextsize 10 -% (or 11) to redefine the text font size. pt is assumed. -% -\def\xword{10} -\def\xiword{11} -% -\parseargdef\fonttextsize{% - \def\textsizearg{#1}% - \wlog{doing @fonttextsize \textsizearg}% - % - % Set \globaldefs so that documents can use this inside @tex, since - % makeinfo 4.8 does not support it, but we need it nonetheless. - % - \begingroup \globaldefs=1 - \ifx\textsizearg\xword \definetextfontsizex - \else \ifx\textsizearg\xiword \definetextfontsizexi - \else - \errhelp=\EMsimple - \errmessage{@fonttextsize only supports `10' or `11', not `\textsizearg'} - \fi\fi - \endgroup -} - - -% In order for the font changes to affect most math symbols and letters, -% we have to define the \textfont of the standard families. Since -% texinfo doesn't allow for producing subscripts and superscripts except -% in the main text, we don't bother to reset \scriptfont and -% \scriptscriptfont (which would also require loading a lot more fonts). -% -\def\resetmathfonts{% - \textfont0=\tenrm \textfont1=\teni \textfont2=\tensy - \textfont\itfam=\tenit \textfont\slfam=\tensl \textfont\bffam=\tenbf - \textfont\ttfam=\tentt \textfont\sffam=\tensf -} - -% The font-changing commands redefine the meanings of \tenSTYLE, instead -% of just \STYLE. We do this because \STYLE needs to also set the -% current \fam for math mode. Our \STYLE (e.g., \rm) commands hardwire -% \tenSTYLE to set the current font. -% -% Each font-changing command also sets the names \lsize (one size lower) -% and \lllsize (three sizes lower). These relative commands are used in -% the LaTeX logo and acronyms. -% -% This all needs generalizing, badly. -% -\def\textfonts{% - \let\tenrm=\textrm \let\tenit=\textit \let\tensl=\textsl - \let\tenbf=\textbf \let\tentt=\texttt \let\smallcaps=\textsc - \let\tensf=\textsf \let\teni=\texti \let\tensy=\textsy - \let\tenttsl=\textttsl - \def\curfontsize{text}% - \def\lsize{reduced}\def\lllsize{smaller}% - \resetmathfonts \setleading{\textleading}} -\def\titlefonts{% - \let\tenrm=\titlerm \let\tenit=\titleit \let\tensl=\titlesl - \let\tenbf=\titlebf \let\tentt=\titlett \let\smallcaps=\titlesc - \let\tensf=\titlesf \let\teni=\titlei \let\tensy=\titlesy - \let\tenttsl=\titlettsl - \def\curfontsize{title}% - \def\lsize{chap}\def\lllsize{subsec}% - \resetmathfonts \setleading{25pt}} -\def\titlefont#1{{\titlefonts\rm #1}} -\def\chapfonts{% - \let\tenrm=\chaprm \let\tenit=\chapit \let\tensl=\chapsl - \let\tenbf=\chapbf \let\tentt=\chaptt \let\smallcaps=\chapsc - \let\tensf=\chapsf \let\teni=\chapi \let\tensy=\chapsy - \let\tenttsl=\chapttsl - \def\curfontsize{chap}% - \def\lsize{sec}\def\lllsize{text}% - \resetmathfonts \setleading{19pt}} -\def\secfonts{% - \let\tenrm=\secrm \let\tenit=\secit \let\tensl=\secsl - \let\tenbf=\secbf \let\tentt=\sectt \let\smallcaps=\secsc - \let\tensf=\secsf \let\teni=\seci \let\tensy=\secsy - \let\tenttsl=\secttsl - \def\curfontsize{sec}% - \def\lsize{subsec}\def\lllsize{reduced}% - \resetmathfonts \setleading{16pt}} -\def\subsecfonts{% - \let\tenrm=\ssecrm \let\tenit=\ssecit \let\tensl=\ssecsl - \let\tenbf=\ssecbf \let\tentt=\ssectt \let\smallcaps=\ssecsc - \let\tensf=\ssecsf \let\teni=\sseci \let\tensy=\ssecsy - \let\tenttsl=\ssecttsl - \def\curfontsize{ssec}% - \def\lsize{text}\def\lllsize{small}% - \resetmathfonts \setleading{15pt}} -\let\subsubsecfonts = \subsecfonts -\def\reducedfonts{% - \let\tenrm=\reducedrm \let\tenit=\reducedit \let\tensl=\reducedsl - \let\tenbf=\reducedbf \let\tentt=\reducedtt \let\reducedcaps=\reducedsc - \let\tensf=\reducedsf \let\teni=\reducedi \let\tensy=\reducedsy - \let\tenttsl=\reducedttsl - \def\curfontsize{reduced}% - \def\lsize{small}\def\lllsize{smaller}% - \resetmathfonts \setleading{10.5pt}} -\def\smallfonts{% - \let\tenrm=\smallrm \let\tenit=\smallit \let\tensl=\smallsl - \let\tenbf=\smallbf \let\tentt=\smalltt \let\smallcaps=\smallsc - \let\tensf=\smallsf \let\teni=\smalli \let\tensy=\smallsy - \let\tenttsl=\smallttsl - \def\curfontsize{small}% - \def\lsize{smaller}\def\lllsize{smaller}% - \resetmathfonts \setleading{10.5pt}} -\def\smallerfonts{% - \let\tenrm=\smallerrm \let\tenit=\smallerit \let\tensl=\smallersl - \let\tenbf=\smallerbf \let\tentt=\smallertt \let\smallcaps=\smallersc - \let\tensf=\smallersf \let\teni=\smalleri \let\tensy=\smallersy - \let\tenttsl=\smallerttsl - \def\curfontsize{smaller}% - \def\lsize{smaller}\def\lllsize{smaller}% - \resetmathfonts \setleading{9.5pt}} - -% Set the fonts to use with the @small... environments. -\let\smallexamplefonts = \smallfonts - -% About \smallexamplefonts. If we use \smallfonts (9pt), @smallexample -% can fit this many characters: -% 8.5x11=86 smallbook=72 a4=90 a5=69 -% If we use \scriptfonts (8pt), then we can fit this many characters: -% 8.5x11=90+ smallbook=80 a4=90+ a5=77 -% For me, subjectively, the few extra characters that fit aren't worth -% the additional smallness of 8pt. So I'm making the default 9pt. -% -% By the way, for comparison, here's what fits with @example (10pt): -% 8.5x11=71 smallbook=60 a4=75 a5=58 -% -% I wish the USA used A4 paper. -% --karl, 24jan03. - - -% Set up the default fonts, so we can use them for creating boxes. -% -\definetextfontsizexi - -% Define these so they can be easily changed for other fonts. -\def\angleleft{$\langle$} -\def\angleright{$\rangle$} - -% Count depth in font-changes, for error checks -\newcount\fontdepth \fontdepth=0 - -% Fonts for short table of contents. -\setfont\shortcontrm\rmshape{12}{1000}{OT1} -\setfont\shortcontbf\bfshape{10}{\magstep1}{OT1} % no cmb12 -\setfont\shortcontsl\slshape{12}{1000}{OT1} -\setfont\shortconttt\ttshape{12}{1000}{OT1TT} - -%% Add scribe-like font environments, plus @l for inline lisp (usually sans -%% serif) and @ii for TeX italic - -% \smartitalic{ARG} outputs arg in italics, followed by an italic correction -% unless the following character is such as not to need one. -\def\smartitalicx{\ifx\next,\else\ifx\next-\else\ifx\next.\else - \ptexslash\fi\fi\fi} -\def\smartslanted#1{{\ifusingtt\ttsl\sl #1}\futurelet\next\smartitalicx} -\def\smartitalic#1{{\ifusingtt\ttsl\it #1}\futurelet\next\smartitalicx} - -% like \smartslanted except unconditionally uses \ttsl. -% @var is set to this for defun arguments. -\def\ttslanted#1{{\ttsl #1}\futurelet\next\smartitalicx} - -% like \smartslanted except unconditionally use \sl. We never want -% ttsl for book titles, do we? -\def\cite#1{{\sl #1}\futurelet\next\smartitalicx} - -\let\i=\smartitalic -\let\slanted=\smartslanted -\let\var=\smartslanted -\let\dfn=\smartslanted -\let\emph=\smartitalic - -% @b, explicit bold. -\def\b#1{{\bf #1}} -\let\strong=\b - -% @sansserif, explicit sans. -\def\sansserif#1{{\sf #1}} - -% We can't just use \exhyphenpenalty, because that only has effect at -% the end of a paragraph. Restore normal hyphenation at the end of the -% group within which \nohyphenation is presumably called. -% -\def\nohyphenation{\hyphenchar\font = -1 \aftergroup\restorehyphenation} -\def\restorehyphenation{\hyphenchar\font = `- } - -% Set sfcode to normal for the chars that usually have another value. -% Can't use plain's \frenchspacing because it uses the `\x notation, and -% sometimes \x has an active definition that messes things up. -% -\catcode`@=11 - \def\plainfrenchspacing{% - \sfcode\dotChar =\@m \sfcode\questChar=\@m \sfcode\exclamChar=\@m - \sfcode\colonChar=\@m \sfcode\semiChar =\@m \sfcode\commaChar =\@m - \def\endofsentencespacefactor{1000}% for @. and friends - } - \def\plainnonfrenchspacing{% - \sfcode`\.3000\sfcode`\?3000\sfcode`\!3000 - \sfcode`\:2000\sfcode`\;1500\sfcode`\,1250 - \def\endofsentencespacefactor{3000}% for @. and friends - } -\catcode`@=\other -\def\endofsentencespacefactor{3000}% default - -\def\t#1{% - {\tt \rawbackslash \plainfrenchspacing #1}% - \null -} -\def\samp#1{`\tclose{#1}'\null} -\setfont\keyrm\rmshape{8}{1000}{OT1} -\font\keysy=cmsy9 -\def\key#1{{\keyrm\textfont2=\keysy \leavevmode\hbox{% - \raise0.4pt\hbox{\angleleft}\kern-.08em\vtop{% - \vbox{\hrule\kern-0.4pt - \hbox{\raise0.4pt\hbox{\vphantom{\angleleft}}#1}}% - \kern-0.4pt\hrule}% - \kern-.06em\raise0.4pt\hbox{\angleright}}}} -\def\key #1{{\nohyphenation \uppercase{#1}}\null} -% The old definition, with no lozenge: -%\def\key #1{{\ttsl \nohyphenation \uppercase{#1}}\null} -\def\ctrl #1{{\tt \rawbackslash \hat}#1} - -% @file, @option are the same as @samp. -\let\file=\samp -\let\option=\samp - -% @code is a modification of @t, -% which makes spaces the same size as normal in the surrounding text. -\def\tclose#1{% - {% - % Change normal interword space to be same as for the current font. - \spaceskip = \fontdimen2\font - % - % Switch to typewriter. - \tt - % - % But `\ ' produces the large typewriter interword space. - \def\ {{\spaceskip = 0pt{} }}% - % - % Turn off hyphenation. - \nohyphenation - % - \rawbackslash - \plainfrenchspacing - #1% - }% - \null -} - -% We *must* turn on hyphenation at `-' and `_' in @code. -% Otherwise, it is too hard to avoid overfull hboxes -% in the Emacs manual, the Library manual, etc. - -% Unfortunately, TeX uses one parameter (\hyphenchar) to control -% both hyphenation at - and hyphenation within words. -% We must therefore turn them both off (\tclose does that) -% and arrange explicitly to hyphenate at a dash. -% -- rms. -{ - \catcode`\-=\active \catcode`\_=\active - \catcode`\'=\active \catcode`\`=\active - % - \global\def\code{\begingroup - \catcode\rquoteChar=\active \catcode\lquoteChar=\active - \let'\codequoteright \let`\codequoteleft - % - \catcode\dashChar=\active \catcode\underChar=\active - \ifallowcodebreaks - \let-\codedash - \let_\codeunder - \else - \let-\realdash - \let_\realunder - \fi - \codex - } -} - -\def\realdash{-} -\def\codedash{-\discretionary{}{}{}} -\def\codeunder{% - % this is all so @math{@code{var_name}+1} can work. In math mode, _ - % is "active" (mathcode"8000) and \normalunderscore (or \char95, etc.) - % will therefore expand the active definition of _, which is us - % (inside @code that is), therefore an endless loop. - \ifusingtt{\ifmmode - \mathchar"075F % class 0=ordinary, family 7=ttfam, pos 0x5F=_. - \else\normalunderscore \fi - \discretionary{}{}{}}% - {\_}% -} -\def\codex #1{\tclose{#1}\endgroup} - -% An additional complication: the above will allow breaks after, e.g., -% each of the four underscores in __typeof__. This is undesirable in -% some manuals, especially if they don't have long identifiers in -% general. @allowcodebreaks provides a way to control this. -% -\newif\ifallowcodebreaks \allowcodebreakstrue - -\def\keywordtrue{true} -\def\keywordfalse{false} - -\parseargdef\allowcodebreaks{% - \def\txiarg{#1}% - \ifx\txiarg\keywordtrue - \allowcodebreakstrue - \else\ifx\txiarg\keywordfalse - \allowcodebreaksfalse - \else - \errhelp = \EMsimple - \errmessage{Unknown @allowcodebreaks option `\txiarg'}% - \fi\fi -} - -% @kbd is like @code, except that if the argument is just one @key command, -% then @kbd has no effect. - -% @kbdinputstyle -- arg is `distinct' (@kbd uses slanted tty font always), -% `example' (@kbd uses ttsl only inside of @example and friends), -% or `code' (@kbd uses normal tty font always). -\parseargdef\kbdinputstyle{% - \def\txiarg{#1}% - \ifx\txiarg\worddistinct - \gdef\kbdexamplefont{\ttsl}\gdef\kbdfont{\ttsl}% - \else\ifx\txiarg\wordexample - \gdef\kbdexamplefont{\ttsl}\gdef\kbdfont{\tt}% - \else\ifx\txiarg\wordcode - \gdef\kbdexamplefont{\tt}\gdef\kbdfont{\tt}% - \else - \errhelp = \EMsimple - \errmessage{Unknown @kbdinputstyle option `\txiarg'}% - \fi\fi\fi -} -\def\worddistinct{distinct} -\def\wordexample{example} -\def\wordcode{code} - -% Default is `distinct.' -\kbdinputstyle distinct - -\def\xkey{\key} -\def\kbdfoo#1#2#3\par{\def\one{#1}\def\three{#3}\def\threex{??}% -\ifx\one\xkey\ifx\threex\three \key{#2}% -\else{\tclose{\kbdfont\look}}\fi -\else{\tclose{\kbdfont\look}}\fi} - -% For @indicateurl, @env, @command quotes seem unnecessary, so use \code. -\let\indicateurl=\code -\let\env=\code -\let\command=\code - -% @uref (abbreviation for `urlref') takes an optional (comma-separated) -% second argument specifying the text to display and an optional third -% arg as text to display instead of (rather than in addition to) the url -% itself. First (mandatory) arg is the url. Perhaps eventually put in -% a hypertex \special here. -% -\def\uref#1{\douref #1,,,\finish} -\def\douref#1,#2,#3,#4\finish{\begingroup - \unsepspaces - \pdfurl{#1}% - \setbox0 = \hbox{\ignorespaces #3}% - \ifdim\wd0 > 0pt - \unhbox0 % third arg given, show only that - \else - \setbox0 = \hbox{\ignorespaces #2}% - \ifdim\wd0 > 0pt - \ifpdf - \unhbox0 % PDF: 2nd arg given, show only it - \else - \unhbox0\ (\code{#1})% DVI: 2nd arg given, show both it and url - \fi - \else - \code{#1}% only url given, so show it - \fi - \fi - \endlink -\endgroup} - -% @url synonym for @uref, since that's how everyone uses it. -% -\let\url=\uref - -% rms does not like angle brackets --karl, 17may97. -% So now @email is just like @uref, unless we are pdf. -% -%\def\email#1{\angleleft{\tt #1}\angleright} -\ifpdf - \def\email#1{\doemail#1,,\finish} - \def\doemail#1,#2,#3\finish{\begingroup - \unsepspaces - \pdfurl{mailto:#1}% - \setbox0 = \hbox{\ignorespaces #2}% - \ifdim\wd0>0pt\unhbox0\else\code{#1}\fi - \endlink - \endgroup} -\else - \let\email=\uref -\fi - -% Check if we are currently using a typewriter font. Since all the -% Computer Modern typewriter fonts have zero interword stretch (and -% shrink), and it is reasonable to expect all typewriter fonts to have -% this property, we can check that font parameter. -% -\def\ifmonospace{\ifdim\fontdimen3\font=0pt } - -% Typeset a dimension, e.g., `in' or `pt'. The only reason for the -% argument is to make the input look right: @dmn{pt} instead of @dmn{}pt. -% -\def\dmn#1{\thinspace #1} - -\def\kbd#1{\def\look{#1}\expandafter\kbdfoo\look??\par} - -% @l was never documented to mean ``switch to the Lisp font'', -% and it is not used as such in any manual I can find. We need it for -% Polish suppressed-l. --karl, 22sep96. -%\def\l#1{{\li #1}\null} - -% Explicit font changes: @r, @sc, undocumented @ii. -\def\r#1{{\rm #1}} % roman font -\def\sc#1{{\smallcaps#1}} % smallcaps font -\def\ii#1{{\it #1}} % italic font - -% @acronym for "FBI", "NATO", and the like. -% We print this one point size smaller, since it's intended for -% all-uppercase. -% -\def\acronym#1{\doacronym #1,,\finish} -\def\doacronym#1,#2,#3\finish{% - {\selectfonts\lsize #1}% - \def\temp{#2}% - \ifx\temp\empty \else - \space ({\unsepspaces \ignorespaces \temp \unskip})% - \fi -} - -% @abbr for "Comput. J." and the like. -% No font change, but don't do end-of-sentence spacing. -% -\def\abbr#1{\doabbr #1,,\finish} -\def\doabbr#1,#2,#3\finish{% - {\plainfrenchspacing #1}% - \def\temp{#2}% - \ifx\temp\empty \else - \space ({\unsepspaces \ignorespaces \temp \unskip})% - \fi -} - -% @pounds{} is a sterling sign, which Knuth put in the CM italic font. -% -\def\pounds{{\it\$}} - -% @euro{} comes from a separate font, depending on the current style. -% We use the free feym* fonts from the eurosym package by Henrik -% Theiling, which support regular, slanted, bold and bold slanted (and -% "outlined" (blackboard board, sort of) versions, which we don't need). -% It is available from http://www.ctan.org/tex-archive/fonts/eurosym. -% -% Although only regular is the truly official Euro symbol, we ignore -% that. The Euro is designed to be slightly taller than the regular -% font height. -% -% feymr - regular -% feymo - slanted -% feybr - bold -% feybo - bold slanted -% -% There is no good (free) typewriter version, to my knowledge. -% A feymr10 euro is ~7.3pt wide, while a normal cmtt10 char is ~5.25pt wide. -% Hmm. -% -% Also doesn't work in math. Do we need to do math with euro symbols? -% Hope not. -% -% -\def\euro{{\eurofont e}} -\def\eurofont{% - % We set the font at each command, rather than predefining it in - % \textfonts and the other font-switching commands, so that - % installations which never need the symbol don't have to have the - % font installed. - % - % There is only one designed size (nominal 10pt), so we always scale - % that to the current nominal size. - % - % By the way, simply using "at 1em" works for cmr10 and the like, but - % does not work for cmbx10 and other extended/shrunken fonts. - % - \def\eurosize{\csname\curfontsize nominalsize\endcsname}% - % - \ifx\curfontstyle\bfstylename - % bold: - \font\thiseurofont = \ifusingit{feybo10}{feybr10} at \eurosize - \else - % regular: - \font\thiseurofont = \ifusingit{feymo10}{feymr10} at \eurosize - \fi - \thiseurofont -} - -% Hacks for glyphs from the EC fonts similar to \euro. We don't -% use \let for the aliases, because sometimes we redefine the original -% macro, and the alias should reflect the redefinition. -\def\guillemetleft{{\ecfont \char"13}} -\def\guillemotleft{\guillemetleft} -\def\guillemetright{{\ecfont \char"14}} -\def\guillemotright{\guillemetright} -\def\guilsinglleft{{\ecfont \char"0E}} -\def\guilsinglright{{\ecfont \char"0F}} -\def\quotedblbase{{\ecfont \char"12}} -\def\quotesinglbase{{\ecfont \char"0D}} -% -\def\ecfont{% - % We can't distinguish serif/sanserif and italic/slanted, but this - % is used for crude hacks anyway (like adding French and German - % quotes to documents typeset with CM, where we lose kerning), so - % hopefully nobody will notice/care. - \edef\ecsize{\csname\curfontsize ecsize\endcsname}% - \edef\nominalsize{\csname\curfontsize nominalsize\endcsname}% - \ifx\curfontstyle\bfstylename - % bold: - \font\thisecfont = ecb\ifusingit{i}{x}\ecsize \space at \nominalsize - \else - % regular: - \font\thisecfont = ec\ifusingit{ti}{rm}\ecsize \space at \nominalsize - \fi - \thisecfont -} - -% @registeredsymbol - R in a circle. The font for the R should really -% be smaller yet, but lllsize is the best we can do for now. -% Adapted from the plain.tex definition of \copyright. -% -\def\registeredsymbol{% - $^{{\ooalign{\hfil\raise.07ex\hbox{\selectfonts\lllsize R}% - \hfil\crcr\Orb}}% - }$% -} - -% @textdegree - the normal degrees sign. -% -\def\textdegree{$^\circ$} - -% Laurent Siebenmann reports \Orb undefined with: -% Textures 1.7.7 (preloaded format=plain 93.10.14) (68K) 16 APR 2004 02:38 -% so we'll define it if necessary. -% -\ifx\Orb\undefined -\def\Orb{\mathhexbox20D} -\fi - -% Quotes. -\chardef\quotedblleft="5C -\chardef\quotedblright=`\" -\chardef\quoteleft=`\` -\chardef\quoteright=`\' - -\message{page headings,} - -\newskip\titlepagetopglue \titlepagetopglue = 1.5in -\newskip\titlepagebottomglue \titlepagebottomglue = 2pc - -% First the title page. Must do @settitle before @titlepage. -\newif\ifseenauthor -\newif\iffinishedtitlepage - -% Do an implicit @contents or @shortcontents after @end titlepage if the -% user says @setcontentsaftertitlepage or @setshortcontentsaftertitlepage. -% -\newif\ifsetcontentsaftertitlepage - \let\setcontentsaftertitlepage = \setcontentsaftertitlepagetrue -\newif\ifsetshortcontentsaftertitlepage - \let\setshortcontentsaftertitlepage = \setshortcontentsaftertitlepagetrue - -\parseargdef\shorttitlepage{\begingroup\hbox{}\vskip 1.5in \chaprm \centerline{#1}% - \endgroup\page\hbox{}\page} - -\envdef\titlepage{% - % Open one extra group, as we want to close it in the middle of \Etitlepage. - \begingroup - \parindent=0pt \textfonts - % Leave some space at the very top of the page. - \vglue\titlepagetopglue - % No rule at page bottom unless we print one at the top with @title. - \finishedtitlepagetrue - % - % Most title ``pages'' are actually two pages long, with space - % at the top of the second. We don't want the ragged left on the second. - \let\oldpage = \page - \def\page{% - \iffinishedtitlepage\else - \finishtitlepage - \fi - \let\page = \oldpage - \page - \null - }% -} - -\def\Etitlepage{% - \iffinishedtitlepage\else - \finishtitlepage - \fi - % It is important to do the page break before ending the group, - % because the headline and footline are only empty inside the group. - % If we use the new definition of \page, we always get a blank page - % after the title page, which we certainly don't want. - \oldpage - \endgroup - % - % Need this before the \...aftertitlepage checks so that if they are - % in effect the toc pages will come out with page numbers. - \HEADINGSon - % - % If they want short, they certainly want long too. - \ifsetshortcontentsaftertitlepage - \shortcontents - \contents - \global\let\shortcontents = \relax - \global\let\contents = \relax - \fi - % - \ifsetcontentsaftertitlepage - \contents - \global\let\contents = \relax - \global\let\shortcontents = \relax - \fi -} - -\def\finishtitlepage{% - \vskip4pt \hrule height 2pt width \hsize - \vskip\titlepagebottomglue - \finishedtitlepagetrue -} - -%%% Macros to be used within @titlepage: - -\let\subtitlerm=\tenrm -\def\subtitlefont{\subtitlerm \normalbaselineskip = 13pt \normalbaselines} - -\def\authorfont{\authorrm \normalbaselineskip = 16pt \normalbaselines - \let\tt=\authortt} - -\parseargdef\title{% - \checkenv\titlepage - \leftline{\titlefonts\rm #1} - % print a rule at the page bottom also. - \finishedtitlepagefalse - \vskip4pt \hrule height 4pt width \hsize \vskip4pt -} - -\parseargdef\subtitle{% - \checkenv\titlepage - {\subtitlefont \rightline{#1}}% -} - -% @author should come last, but may come many times. -% It can also be used inside @quotation. -% -\parseargdef\author{% - \def\temp{\quotation}% - \ifx\thisenv\temp - \def\quotationauthor{#1}% printed in \Equotation. - \else - \checkenv\titlepage - \ifseenauthor\else \vskip 0pt plus 1filll \seenauthortrue \fi - {\authorfont \leftline{#1}}% - \fi -} - - -%%% Set up page headings and footings. - -\let\thispage=\folio - -\newtoks\evenheadline % headline on even pages -\newtoks\oddheadline % headline on odd pages -\newtoks\evenfootline % footline on even pages -\newtoks\oddfootline % footline on odd pages - -% Now make TeX use those variables -\headline={{\textfonts\rm \ifodd\pageno \the\oddheadline - \else \the\evenheadline \fi}} -\footline={{\textfonts\rm \ifodd\pageno \the\oddfootline - \else \the\evenfootline \fi}\HEADINGShook} -\let\HEADINGShook=\relax - -% Commands to set those variables. -% For example, this is what @headings on does -% @evenheading @thistitle|@thispage|@thischapter -% @oddheading @thischapter|@thispage|@thistitle -% @evenfooting @thisfile|| -% @oddfooting ||@thisfile - - -\def\evenheading{\parsearg\evenheadingxxx} -\def\evenheadingxxx #1{\evenheadingyyy #1\|\|\|\|\finish} -\def\evenheadingyyy #1\|#2\|#3\|#4\finish{% -\global\evenheadline={\rlap{\centerline{#2}}\line{#1\hfil#3}}} - -\def\oddheading{\parsearg\oddheadingxxx} -\def\oddheadingxxx #1{\oddheadingyyy #1\|\|\|\|\finish} -\def\oddheadingyyy #1\|#2\|#3\|#4\finish{% -\global\oddheadline={\rlap{\centerline{#2}}\line{#1\hfil#3}}} - -\parseargdef\everyheading{\oddheadingxxx{#1}\evenheadingxxx{#1}}% - -\def\evenfooting{\parsearg\evenfootingxxx} -\def\evenfootingxxx #1{\evenfootingyyy #1\|\|\|\|\finish} -\def\evenfootingyyy #1\|#2\|#3\|#4\finish{% -\global\evenfootline={\rlap{\centerline{#2}}\line{#1\hfil#3}}} - -\def\oddfooting{\parsearg\oddfootingxxx} -\def\oddfootingxxx #1{\oddfootingyyy #1\|\|\|\|\finish} -\def\oddfootingyyy #1\|#2\|#3\|#4\finish{% - \global\oddfootline = {\rlap{\centerline{#2}}\line{#1\hfil#3}}% - % - % Leave some space for the footline. Hopefully ok to assume - % @evenfooting will not be used by itself. - \global\advance\pageheight by -12pt - \global\advance\vsize by -12pt -} - -\parseargdef\everyfooting{\oddfootingxxx{#1}\evenfootingxxx{#1}} - -% @evenheadingmarks top \thischapter <- chapter at the top of a page -% @evenheadingmarks bottom \thischapter <- chapter at the bottom of a page -% -% The same set of arguments for: -% -% @oddheadingmarks -% @evenfootingmarks -% @oddfootingmarks -% @everyheadingmarks -% @everyfootingmarks - -\def\evenheadingmarks{\headingmarks{even}{heading}} -\def\oddheadingmarks{\headingmarks{odd}{heading}} -\def\evenfootingmarks{\headingmarks{even}{footing}} -\def\oddfootingmarks{\headingmarks{odd}{footing}} -\def\everyheadingmarks#1 {\headingmarks{even}{heading}{#1} - \headingmarks{odd}{heading}{#1} } -\def\everyfootingmarks#1 {\headingmarks{even}{footing}{#1} - \headingmarks{odd}{footing}{#1} } -% #1 = even/odd, #2 = heading/footing, #3 = top/bottom. -\def\headingmarks#1#2#3 {% - \expandafter\let\expandafter\temp \csname get#3headingmarks\endcsname - \global\expandafter\let\csname get#1#2marks\endcsname \temp -} - -\everyheadingmarks bottom -\everyfootingmarks bottom - -% @headings double turns headings on for double-sided printing. -% @headings single turns headings on for single-sided printing. -% @headings off turns them off. -% @headings on same as @headings double, retained for compatibility. -% @headings after turns on double-sided headings after this page. -% @headings doubleafter turns on double-sided headings after this page. -% @headings singleafter turns on single-sided headings after this page. -% By default, they are off at the start of a document, -% and turned `on' after @end titlepage. - -\def\headings #1 {\csname HEADINGS#1\endcsname} - -\def\HEADINGSoff{% -\global\evenheadline={\hfil} \global\evenfootline={\hfil} -\global\oddheadline={\hfil} \global\oddfootline={\hfil}} -\HEADINGSoff -% When we turn headings on, set the page number to 1. -% For double-sided printing, put current file name in lower left corner, -% chapter name on inside top of right hand pages, document -% title on inside top of left hand pages, and page numbers on outside top -% edge of all pages. -\def\HEADINGSdouble{% -\global\pageno=1 -\global\evenfootline={\hfil} -\global\oddfootline={\hfil} -\global\evenheadline={\line{\folio\hfil\thistitle}} -\global\oddheadline={\line{\thischapter\hfil\folio}} -\global\let\contentsalignmacro = \chapoddpage -} -\let\contentsalignmacro = \chappager - -% For single-sided printing, chapter title goes across top left of page, -% page number on top right. -\def\HEADINGSsingle{% -\global\pageno=1 -\global\evenfootline={\hfil} -\global\oddfootline={\hfil} -\global\evenheadline={\line{\thischapter\hfil\folio}} -\global\oddheadline={\line{\thischapter\hfil\folio}} -\global\let\contentsalignmacro = \chappager -} -\def\HEADINGSon{\HEADINGSdouble} - -\def\HEADINGSafter{\let\HEADINGShook=\HEADINGSdoublex} -\let\HEADINGSdoubleafter=\HEADINGSafter -\def\HEADINGSdoublex{% -\global\evenfootline={\hfil} -\global\oddfootline={\hfil} -\global\evenheadline={\line{\folio\hfil\thistitle}} -\global\oddheadline={\line{\thischapter\hfil\folio}} -\global\let\contentsalignmacro = \chapoddpage -} - -\def\HEADINGSsingleafter{\let\HEADINGShook=\HEADINGSsinglex} -\def\HEADINGSsinglex{% -\global\evenfootline={\hfil} -\global\oddfootline={\hfil} -\global\evenheadline={\line{\thischapter\hfil\folio}} -\global\oddheadline={\line{\thischapter\hfil\folio}} -\global\let\contentsalignmacro = \chappager -} - -% Subroutines used in generating headings -% This produces Day Month Year style of output. -% Only define if not already defined, in case a txi-??.tex file has set -% up a different format (e.g., txi-cs.tex does this). -\ifx\today\undefined -\def\today{% - \number\day\space - \ifcase\month - \or\putwordMJan\or\putwordMFeb\or\putwordMMar\or\putwordMApr - \or\putwordMMay\or\putwordMJun\or\putwordMJul\or\putwordMAug - \or\putwordMSep\or\putwordMOct\or\putwordMNov\or\putwordMDec - \fi - \space\number\year} -\fi - -% @settitle line... specifies the title of the document, for headings. -% It generates no output of its own. -\def\thistitle{\putwordNoTitle} -\def\settitle{\parsearg{\gdef\thistitle}} - - -\message{tables,} -% Tables -- @table, @ftable, @vtable, @item(x). - -% default indentation of table text -\newdimen\tableindent \tableindent=.8in -% default indentation of @itemize and @enumerate text -\newdimen\itemindent \itemindent=.3in -% margin between end of table item and start of table text. -\newdimen\itemmargin \itemmargin=.1in - -% used internally for \itemindent minus \itemmargin -\newdimen\itemmax - -% Note @table, @ftable, and @vtable define @item, @itemx, etc., with -% these defs. -% They also define \itemindex -% to index the item name in whatever manner is desired (perhaps none). - -\newif\ifitemxneedsnegativevskip - -\def\itemxpar{\par\ifitemxneedsnegativevskip\nobreak\vskip-\parskip\nobreak\fi} - -\def\internalBitem{\smallbreak \parsearg\itemzzz} -\def\internalBitemx{\itemxpar \parsearg\itemzzz} - -\def\itemzzz #1{\begingroup % - \advance\hsize by -\rightskip - \advance\hsize by -\tableindent - \setbox0=\hbox{\itemindicate{#1}}% - \itemindex{#1}% - \nobreak % This prevents a break before @itemx. - % - % If the item text does not fit in the space we have, put it on a line - % by itself, and do not allow a page break either before or after that - % line. We do not start a paragraph here because then if the next - % command is, e.g., @kindex, the whatsit would get put into the - % horizontal list on a line by itself, resulting in extra blank space. - \ifdim \wd0>\itemmax - % - % Make this a paragraph so we get the \parskip glue and wrapping, - % but leave it ragged-right. - \begingroup - \advance\leftskip by-\tableindent - \advance\hsize by\tableindent - \advance\rightskip by0pt plus1fil - \leavevmode\unhbox0\par - \endgroup - % - % We're going to be starting a paragraph, but we don't want the - % \parskip glue -- logically it's part of the @item we just started. - \nobreak \vskip-\parskip - % - % Stop a page break at the \parskip glue coming up. However, if - % what follows is an environment such as @example, there will be no - % \parskip glue; then the negative vskip we just inserted would - % cause the example and the item to crash together. So we use this - % bizarre value of 10001 as a signal to \aboveenvbreak to insert - % \parskip glue after all. Section titles are handled this way also. - % - \penalty 10001 - \endgroup - \itemxneedsnegativevskipfalse - \else - % The item text fits into the space. Start a paragraph, so that the - % following text (if any) will end up on the same line. - \noindent - % Do this with kerns and \unhbox so that if there is a footnote in - % the item text, it can migrate to the main vertical list and - % eventually be printed. - \nobreak\kern-\tableindent - \dimen0 = \itemmax \advance\dimen0 by \itemmargin \advance\dimen0 by -\wd0 - \unhbox0 - \nobreak\kern\dimen0 - \endgroup - \itemxneedsnegativevskiptrue - \fi -} - -\def\item{\errmessage{@item while not in a list environment}} -\def\itemx{\errmessage{@itemx while not in a list environment}} - -% @table, @ftable, @vtable. -\envdef\table{% - \let\itemindex\gobble - \tablecheck{table}% -} -\envdef\ftable{% - \def\itemindex ##1{\doind {fn}{\code{##1}}}% - \tablecheck{ftable}% -} -\envdef\vtable{% - \def\itemindex ##1{\doind {vr}{\code{##1}}}% - \tablecheck{vtable}% -} -\def\tablecheck#1{% - \ifnum \the\catcode`\^^M=\active - \endgroup - \errmessage{This command won't work in this context; perhaps the problem is - that we are \inenvironment\thisenv}% - \def\next{\doignore{#1}}% - \else - \let\next\tablex - \fi - \next -} -\def\tablex#1{% - \def\itemindicate{#1}% - \parsearg\tabley -} -\def\tabley#1{% - {% - \makevalueexpandable - \edef\temp{\noexpand\tablez #1\space\space\space}% - \expandafter - }\temp \endtablez -} -\def\tablez #1 #2 #3 #4\endtablez{% - \aboveenvbreak - \ifnum 0#1>0 \advance \leftskip by #1\mil \fi - \ifnum 0#2>0 \tableindent=#2\mil \fi - \ifnum 0#3>0 \advance \rightskip by #3\mil \fi - \itemmax=\tableindent - \advance \itemmax by -\itemmargin - \advance \leftskip by \tableindent - \exdentamount=\tableindent - \parindent = 0pt - \parskip = \smallskipamount - \ifdim \parskip=0pt \parskip=2pt \fi - \let\item = \internalBitem - \let\itemx = \internalBitemx -} -\def\Etable{\endgraf\afterenvbreak} -\let\Eftable\Etable -\let\Evtable\Etable -\let\Eitemize\Etable -\let\Eenumerate\Etable - -% This is the counter used by @enumerate, which is really @itemize - -\newcount \itemno - -\envdef\itemize{\parsearg\doitemize} - -\def\doitemize#1{% - \aboveenvbreak - \itemmax=\itemindent - \advance\itemmax by -\itemmargin - \advance\leftskip by \itemindent - \exdentamount=\itemindent - \parindent=0pt - \parskip=\smallskipamount - \ifdim\parskip=0pt \parskip=2pt \fi - \def\itemcontents{#1}% - % @itemize with no arg is equivalent to @itemize @bullet. - \ifx\itemcontents\empty\def\itemcontents{\bullet}\fi - \let\item=\itemizeitem -} - -% Definition of @item while inside @itemize and @enumerate. -% -\def\itemizeitem{% - \advance\itemno by 1 % for enumerations - {\let\par=\endgraf \smallbreak}% reasonable place to break - {% - % If the document has an @itemize directly after a section title, a - % \nobreak will be last on the list, and \sectionheading will have - % done a \vskip-\parskip. In that case, we don't want to zero - % parskip, or the item text will crash with the heading. On the - % other hand, when there is normal text preceding the item (as there - % usually is), we do want to zero parskip, or there would be too much - % space. In that case, we won't have a \nobreak before. At least - % that's the theory. - \ifnum\lastpenalty<10000 \parskip=0in \fi - \noindent - \hbox to 0pt{\hss \itemcontents \kern\itemmargin}% - \vadjust{\penalty 1200}}% not good to break after first line of item. - \flushcr -} - -% \splitoff TOKENS\endmark defines \first to be the first token in -% TOKENS, and \rest to be the remainder. -% -\def\splitoff#1#2\endmark{\def\first{#1}\def\rest{#2}}% - -% Allow an optional argument of an uppercase letter, lowercase letter, -% or number, to specify the first label in the enumerated list. No -% argument is the same as `1'. -% -\envparseargdef\enumerate{\enumeratey #1 \endenumeratey} -\def\enumeratey #1 #2\endenumeratey{% - % If we were given no argument, pretend we were given `1'. - \def\thearg{#1}% - \ifx\thearg\empty \def\thearg{1}\fi - % - % Detect if the argument is a single token. If so, it might be a - % letter. Otherwise, the only valid thing it can be is a number. - % (We will always have one token, because of the test we just made. - % This is a good thing, since \splitoff doesn't work given nothing at - % all -- the first parameter is undelimited.) - \expandafter\splitoff\thearg\endmark - \ifx\rest\empty - % Only one token in the argument. It could still be anything. - % A ``lowercase letter'' is one whose \lccode is nonzero. - % An ``uppercase letter'' is one whose \lccode is both nonzero, and - % not equal to itself. - % Otherwise, we assume it's a number. - % - % We need the \relax at the end of the \ifnum lines to stop TeX from - % continuing to look for a . - % - \ifnum\lccode\expandafter`\thearg=0\relax - \numericenumerate % a number (we hope) - \else - % It's a letter. - \ifnum\lccode\expandafter`\thearg=\expandafter`\thearg\relax - \lowercaseenumerate % lowercase letter - \else - \uppercaseenumerate % uppercase letter - \fi - \fi - \else - % Multiple tokens in the argument. We hope it's a number. - \numericenumerate - \fi -} - -% An @enumerate whose labels are integers. The starting integer is -% given in \thearg. -% -\def\numericenumerate{% - \itemno = \thearg - \startenumeration{\the\itemno}% -} - -% The starting (lowercase) letter is in \thearg. -\def\lowercaseenumerate{% - \itemno = \expandafter`\thearg - \startenumeration{% - % Be sure we're not beyond the end of the alphabet. - \ifnum\itemno=0 - \errmessage{No more lowercase letters in @enumerate; get a bigger - alphabet}% - \fi - \char\lccode\itemno - }% -} - -% The starting (uppercase) letter is in \thearg. -\def\uppercaseenumerate{% - \itemno = \expandafter`\thearg - \startenumeration{% - % Be sure we're not beyond the end of the alphabet. - \ifnum\itemno=0 - \errmessage{No more uppercase letters in @enumerate; get a bigger - alphabet} - \fi - \char\uccode\itemno - }% -} - -% Call \doitemize, adding a period to the first argument and supplying the -% common last two arguments. Also subtract one from the initial value in -% \itemno, since @item increments \itemno. -% -\def\startenumeration#1{% - \advance\itemno by -1 - \doitemize{#1.}\flushcr -} - -% @alphaenumerate and @capsenumerate are abbreviations for giving an arg -% to @enumerate. -% -\def\alphaenumerate{\enumerate{a}} -\def\capsenumerate{\enumerate{A}} -\def\Ealphaenumerate{\Eenumerate} -\def\Ecapsenumerate{\Eenumerate} - - -% @multitable macros -% Amy Hendrickson, 8/18/94, 3/6/96 -% -% @multitable ... @end multitable will make as many columns as desired. -% Contents of each column will wrap at width given in preamble. Width -% can be specified either with sample text given in a template line, -% or in percent of \hsize, the current width of text on page. - -% Table can continue over pages but will only break between lines. - -% To make preamble: -% -% Either define widths of columns in terms of percent of \hsize: -% @multitable @columnfractions .25 .3 .45 -% @item ... -% -% Numbers following @columnfractions are the percent of the total -% current hsize to be used for each column. You may use as many -% columns as desired. - - -% Or use a template: -% @multitable {Column 1 template} {Column 2 template} {Column 3 template} -% @item ... -% using the widest term desired in each column. - -% Each new table line starts with @item, each subsequent new column -% starts with @tab. Empty columns may be produced by supplying @tab's -% with nothing between them for as many times as empty columns are needed, -% ie, @tab@tab@tab will produce two empty columns. - -% @item, @tab do not need to be on their own lines, but it will not hurt -% if they are. - -% Sample multitable: - -% @multitable {Column 1 template} {Column 2 template} {Column 3 template} -% @item first col stuff @tab second col stuff @tab third col -% @item -% first col stuff -% @tab -% second col stuff -% @tab -% third col -% @item first col stuff @tab second col stuff -% @tab Many paragraphs of text may be used in any column. -% -% They will wrap at the width determined by the template. -% @item@tab@tab This will be in third column. -% @end multitable - -% Default dimensions may be reset by user. -% @multitableparskip is vertical space between paragraphs in table. -% @multitableparindent is paragraph indent in table. -% @multitablecolmargin is horizontal space to be left between columns. -% @multitablelinespace is space to leave between table items, baseline -% to baseline. -% 0pt means it depends on current normal line spacing. -% -\newskip\multitableparskip -\newskip\multitableparindent -\newdimen\multitablecolspace -\newskip\multitablelinespace -\multitableparskip=0pt -\multitableparindent=6pt -\multitablecolspace=12pt -\multitablelinespace=0pt - -% Macros used to set up halign preamble: -% -\let\endsetuptable\relax -\def\xendsetuptable{\endsetuptable} -\let\columnfractions\relax -\def\xcolumnfractions{\columnfractions} -\newif\ifsetpercent - -% #1 is the @columnfraction, usually a decimal number like .5, but might -% be just 1. We just use it, whatever it is. -% -\def\pickupwholefraction#1 {% - \global\advance\colcount by 1 - \expandafter\xdef\csname col\the\colcount\endcsname{#1\hsize}% - \setuptable -} - -\newcount\colcount -\def\setuptable#1{% - \def\firstarg{#1}% - \ifx\firstarg\xendsetuptable - \let\go = \relax - \else - \ifx\firstarg\xcolumnfractions - \global\setpercenttrue - \else - \ifsetpercent - \let\go\pickupwholefraction - \else - \global\advance\colcount by 1 - \setbox0=\hbox{#1\unskip\space}% Add a normal word space as a - % separator; typically that is always in the input, anyway. - \expandafter\xdef\csname col\the\colcount\endcsname{\the\wd0}% - \fi - \fi - \ifx\go\pickupwholefraction - % Put the argument back for the \pickupwholefraction call, so - % we'll always have a period there to be parsed. - \def\go{\pickupwholefraction#1}% - \else - \let\go = \setuptable - \fi% - \fi - \go -} - -% multitable-only commands. -% -% @headitem starts a heading row, which we typeset in bold. -% Assignments have to be global since we are inside the implicit group -% of an alignment entry. Note that \everycr resets \everytab. -\def\headitem{\checkenv\multitable \crcr \global\everytab={\bf}\the\everytab}% -% -% A \tab used to include \hskip1sp. But then the space in a template -% line is not enough. That is bad. So let's go back to just `&' until -% we encounter the problem it was intended to solve again. -% --karl, nathan@acm.org, 20apr99. -\def\tab{\checkenv\multitable &\the\everytab}% - -% @multitable ... @end multitable definitions: -% -\newtoks\everytab % insert after every tab. -% -\envdef\multitable{% - \vskip\parskip - \startsavinginserts - % - % @item within a multitable starts a normal row. - % We use \def instead of \let so that if one of the multitable entries - % contains an @itemize, we don't choke on the \item (seen as \crcr aka - % \endtemplate) expanding \doitemize. - \def\item{\crcr}% - % - \tolerance=9500 - \hbadness=9500 - \setmultitablespacing - \parskip=\multitableparskip - \parindent=\multitableparindent - \overfullrule=0pt - \global\colcount=0 - % - \everycr = {% - \noalign{% - \global\everytab={}% - \global\colcount=0 % Reset the column counter. - % Check for saved footnotes, etc. - \checkinserts - % Keeps underfull box messages off when table breaks over pages. - %\filbreak - % Maybe so, but it also creates really weird page breaks when the - % table breaks over pages. Wouldn't \vfil be better? Wait until the - % problem manifests itself, so it can be fixed for real --karl. - }% - }% - % - \parsearg\domultitable -} -\def\domultitable#1{% - % To parse everything between @multitable and @item: - \setuptable#1 \endsetuptable - % - % This preamble sets up a generic column definition, which will - % be used as many times as user calls for columns. - % \vtop will set a single line and will also let text wrap and - % continue for many paragraphs if desired. - \halign\bgroup &% - \global\advance\colcount by 1 - \multistrut - \vtop{% - % Use the current \colcount to find the correct column width: - \hsize=\expandafter\csname col\the\colcount\endcsname - % - % In order to keep entries from bumping into each other - % we will add a \leftskip of \multitablecolspace to all columns after - % the first one. - % - % If a template has been used, we will add \multitablecolspace - % to the width of each template entry. - % - % If the user has set preamble in terms of percent of \hsize we will - % use that dimension as the width of the column, and the \leftskip - % will keep entries from bumping into each other. Table will start at - % left margin and final column will justify at right margin. - % - % Make sure we don't inherit \rightskip from the outer environment. - \rightskip=0pt - \ifnum\colcount=1 - % The first column will be indented with the surrounding text. - \advance\hsize by\leftskip - \else - \ifsetpercent \else - % If user has not set preamble in terms of percent of \hsize - % we will advance \hsize by \multitablecolspace. - \advance\hsize by \multitablecolspace - \fi - % In either case we will make \leftskip=\multitablecolspace: - \leftskip=\multitablecolspace - \fi - % Ignoring space at the beginning and end avoids an occasional spurious - % blank line, when TeX decides to break the line at the space before the - % box from the multistrut, so the strut ends up on a line by itself. - % For example: - % @multitable @columnfractions .11 .89 - % @item @code{#} - % @tab Legal holiday which is valid in major parts of the whole country. - % Is automatically provided with highlighting sequences respectively - % marking characters. - \noindent\ignorespaces##\unskip\multistrut - }\cr -} -\def\Emultitable{% - \crcr - \egroup % end the \halign - \global\setpercentfalse -} - -\def\setmultitablespacing{% - \def\multistrut{\strut}% just use the standard line spacing - % - % Compute \multitablelinespace (if not defined by user) for use in - % \multitableparskip calculation. We used define \multistrut based on - % this, but (ironically) that caused the spacing to be off. - % See bug-texinfo report from Werner Lemberg, 31 Oct 2004 12:52:20 +0100. -\ifdim\multitablelinespace=0pt -\setbox0=\vbox{X}\global\multitablelinespace=\the\baselineskip -\global\advance\multitablelinespace by-\ht0 -\fi -%% Test to see if parskip is larger than space between lines of -%% table. If not, do nothing. -%% If so, set to same dimension as multitablelinespace. -\ifdim\multitableparskip>\multitablelinespace -\global\multitableparskip=\multitablelinespace -\global\advance\multitableparskip-7pt %% to keep parskip somewhat smaller - %% than skip between lines in the table. -\fi% -\ifdim\multitableparskip=0pt -\global\multitableparskip=\multitablelinespace -\global\advance\multitableparskip-7pt %% to keep parskip somewhat smaller - %% than skip between lines in the table. -\fi} - - -\message{conditionals,} - -% @iftex, @ifnotdocbook, @ifnothtml, @ifnotinfo, @ifnotplaintext, -% @ifnotxml always succeed. They currently do nothing; we don't -% attempt to check whether the conditionals are properly nested. But we -% have to remember that they are conditionals, so that @end doesn't -% attempt to close an environment group. -% -\def\makecond#1{% - \expandafter\let\csname #1\endcsname = \relax - \expandafter\let\csname iscond.#1\endcsname = 1 -} -\makecond{iftex} -\makecond{ifnotdocbook} -\makecond{ifnothtml} -\makecond{ifnotinfo} -\makecond{ifnotplaintext} -\makecond{ifnotxml} - -% Ignore @ignore, @ifhtml, @ifinfo, and the like. -% -\def\direntry{\doignore{direntry}} -\def\documentdescription{\doignore{documentdescription}} -\def\docbook{\doignore{docbook}} -\def\html{\doignore{html}} -\def\ifdocbook{\doignore{ifdocbook}} -\def\ifhtml{\doignore{ifhtml}} -\def\ifinfo{\doignore{ifinfo}} -\def\ifnottex{\doignore{ifnottex}} -\def\ifplaintext{\doignore{ifplaintext}} -\def\ifxml{\doignore{ifxml}} -\def\ignore{\doignore{ignore}} -\def\menu{\doignore{menu}} -\def\xml{\doignore{xml}} - -% Ignore text until a line `@end #1', keeping track of nested conditionals. -% -% A count to remember the depth of nesting. -\newcount\doignorecount - -\def\doignore#1{\begingroup - % Scan in ``verbatim'' mode: - \obeylines - \catcode`\@ = \other - \catcode`\{ = \other - \catcode`\} = \other - % - % Make sure that spaces turn into tokens that match what \doignoretext wants. - \spaceisspace - % - % Count number of #1's that we've seen. - \doignorecount = 0 - % - % Swallow text until we reach the matching `@end #1'. - \dodoignore{#1}% -} - -{ \catcode`_=11 % We want to use \_STOP_ which cannot appear in texinfo source. - \obeylines % - % - \gdef\dodoignore#1{% - % #1 contains the command name as a string, e.g., `ifinfo'. - % - % Define a command to find the next `@end #1'. - \long\def\doignoretext##1^^M@end #1{% - \doignoretextyyy##1^^M@#1\_STOP_}% - % - % And this command to find another #1 command, at the beginning of a - % line. (Otherwise, we would consider a line `@c @ifset', for - % example, to count as an @ifset for nesting.) - \long\def\doignoretextyyy##1^^M@#1##2\_STOP_{\doignoreyyy{##2}\_STOP_}% - % - % And now expand that command. - \doignoretext ^^M% - }% -} - -\def\doignoreyyy#1{% - \def\temp{#1}% - \ifx\temp\empty % Nothing found. - \let\next\doignoretextzzz - \else % Found a nested condition, ... - \advance\doignorecount by 1 - \let\next\doignoretextyyy % ..., look for another. - % If we're here, #1 ends with ^^M\ifinfo (for example). - \fi - \next #1% the token \_STOP_ is present just after this macro. -} - -% We have to swallow the remaining "\_STOP_". -% -\def\doignoretextzzz#1{% - \ifnum\doignorecount = 0 % We have just found the outermost @end. - \let\next\enddoignore - \else % Still inside a nested condition. - \advance\doignorecount by -1 - \let\next\doignoretext % Look for the next @end. - \fi - \next -} - -% Finish off ignored text. -{ \obeylines% - % Ignore anything after the last `@end #1'; this matters in verbatim - % environments, where otherwise the newline after an ignored conditional - % would result in a blank line in the output. - \gdef\enddoignore#1^^M{\endgroup\ignorespaces}% -} - - -% @set VAR sets the variable VAR to an empty value. -% @set VAR REST-OF-LINE sets VAR to the value REST-OF-LINE. -% -% Since we want to separate VAR from REST-OF-LINE (which might be -% empty), we can't just use \parsearg; we have to insert a space of our -% own to delimit the rest of the line, and then take it out again if we -% didn't need it. -% We rely on the fact that \parsearg sets \catcode`\ =10. -% -\parseargdef\set{\setyyy#1 \endsetyyy} -\def\setyyy#1 #2\endsetyyy{% - {% - \makevalueexpandable - \def\temp{#2}% - \edef\next{\gdef\makecsname{SET#1}}% - \ifx\temp\empty - \next{}% - \else - \setzzz#2\endsetzzz - \fi - }% -} -% Remove the trailing space \setxxx inserted. -\def\setzzz#1 \endsetzzz{\next{#1}} - -% @clear VAR clears (i.e., unsets) the variable VAR. -% -\parseargdef\clear{% - {% - \makevalueexpandable - \global\expandafter\let\csname SET#1\endcsname=\relax - }% -} - -% @value{foo} gets the text saved in variable foo. -\def\value{\begingroup\makevalueexpandable\valuexxx} -\def\valuexxx#1{\expandablevalue{#1}\endgroup} -{ - \catcode`\- = \active \catcode`\_ = \active - % - \gdef\makevalueexpandable{% - \let\value = \expandablevalue - % We don't want these characters active, ... - \catcode`\-=\other \catcode`\_=\other - % ..., but we might end up with active ones in the argument if - % we're called from @code, as @code{@value{foo-bar_}}, though. - % So \let them to their normal equivalents. - \let-\realdash \let_\normalunderscore - } -} - -% We have this subroutine so that we can handle at least some @value's -% properly in indexes (we call \makevalueexpandable in \indexdummies). -% The command has to be fully expandable (if the variable is set), since -% the result winds up in the index file. This means that if the -% variable's value contains other Texinfo commands, it's almost certain -% it will fail (although perhaps we could fix that with sufficient work -% to do a one-level expansion on the result, instead of complete). -% -\def\expandablevalue#1{% - \expandafter\ifx\csname SET#1\endcsname\relax - {[No value for ``#1'']}% - \message{Variable `#1', used in @value, is not set.}% - \else - \csname SET#1\endcsname - \fi -} - -% @ifset VAR ... @end ifset reads the `...' iff VAR has been defined -% with @set. -% -% To get special treatment of `@end ifset,' call \makeond and the redefine. -% -\makecond{ifset} -\def\ifset{\parsearg{\doifset{\let\next=\ifsetfail}}} -\def\doifset#1#2{% - {% - \makevalueexpandable - \let\next=\empty - \expandafter\ifx\csname SET#2\endcsname\relax - #1% If not set, redefine \next. - \fi - \expandafter - }\next -} -\def\ifsetfail{\doignore{ifset}} - -% @ifclear VAR ... @end ifclear reads the `...' iff VAR has never been -% defined with @set, or has been undefined with @clear. -% -% The `\else' inside the `\doifset' parameter is a trick to reuse the -% above code: if the variable is not set, do nothing, if it is set, -% then redefine \next to \ifclearfail. -% -\makecond{ifclear} -\def\ifclear{\parsearg{\doifset{\else \let\next=\ifclearfail}}} -\def\ifclearfail{\doignore{ifclear}} - -% @dircategory CATEGORY -- specify a category of the dir file -% which this file should belong to. Ignore this in TeX. -\let\dircategory=\comment - -% @defininfoenclose. -\let\definfoenclose=\comment - - -\message{indexing,} -% Index generation facilities - -% Define \newwrite to be identical to plain tex's \newwrite -% except not \outer, so it can be used within macros and \if's. -\edef\newwrite{\makecsname{ptexnewwrite}} - -% \newindex {foo} defines an index named foo. -% It automatically defines \fooindex such that -% \fooindex ...rest of line... puts an entry in the index foo. -% It also defines \fooindfile to be the number of the output channel for -% the file that accumulates this index. The file's extension is foo. -% The name of an index should be no more than 2 characters long -% for the sake of vms. -% -\def\newindex#1{% - \iflinks - \expandafter\newwrite \csname#1indfile\endcsname - \openout \csname#1indfile\endcsname \jobname.#1 % Open the file - \fi - \expandafter\xdef\csname#1index\endcsname{% % Define @#1index - \noexpand\doindex{#1}} -} - -% @defindex foo == \newindex{foo} -% -\def\defindex{\parsearg\newindex} - -% Define @defcodeindex, like @defindex except put all entries in @code. -% -\def\defcodeindex{\parsearg\newcodeindex} -% -\def\newcodeindex#1{% - \iflinks - \expandafter\newwrite \csname#1indfile\endcsname - \openout \csname#1indfile\endcsname \jobname.#1 - \fi - \expandafter\xdef\csname#1index\endcsname{% - \noexpand\docodeindex{#1}}% -} - - -% @synindex foo bar makes index foo feed into index bar. -% Do this instead of @defindex foo if you don't want it as a separate index. -% -% @syncodeindex foo bar similar, but put all entries made for index foo -% inside @code. -% -\def\synindex#1 #2 {\dosynindex\doindex{#1}{#2}} -\def\syncodeindex#1 #2 {\dosynindex\docodeindex{#1}{#2}} - -% #1 is \doindex or \docodeindex, #2 the index getting redefined (foo), -% #3 the target index (bar). -\def\dosynindex#1#2#3{% - % Only do \closeout if we haven't already done it, else we'll end up - % closing the target index. - \expandafter \ifx\csname donesynindex#2\endcsname \undefined - % The \closeout helps reduce unnecessary open files; the limit on the - % Acorn RISC OS is a mere 16 files. - \expandafter\closeout\csname#2indfile\endcsname - \expandafter\let\csname\donesynindex#2\endcsname = 1 - \fi - % redefine \fooindfile: - \expandafter\let\expandafter\temp\expandafter=\csname#3indfile\endcsname - \expandafter\let\csname#2indfile\endcsname=\temp - % redefine \fooindex: - \expandafter\xdef\csname#2index\endcsname{\noexpand#1{#3}}% -} - -% Define \doindex, the driver for all \fooindex macros. -% Argument #1 is generated by the calling \fooindex macro, -% and it is "foo", the name of the index. - -% \doindex just uses \parsearg; it calls \doind for the actual work. -% This is because \doind is more useful to call from other macros. - -% There is also \dosubind {index}{topic}{subtopic} -% which makes an entry in a two-level index such as the operation index. - -\def\doindex#1{\edef\indexname{#1}\parsearg\singleindexer} -\def\singleindexer #1{\doind{\indexname}{#1}} - -% like the previous two, but they put @code around the argument. -\def\docodeindex#1{\edef\indexname{#1}\parsearg\singlecodeindexer} -\def\singlecodeindexer #1{\doind{\indexname}{\code{#1}}} - -% Take care of Texinfo commands that can appear in an index entry. -% Since there are some commands we want to expand, and others we don't, -% we have to laboriously prevent expansion for those that we don't. -% -\def\indexdummies{% - \escapechar = `\\ % use backslash in output files. - \def\@{@}% change to @@ when we switch to @ as escape char in index files. - \def\ {\realbackslash\space }% - % - % Need these in case \tex is in effect and \{ is a \delimiter again. - % But can't use \lbracecmd and \rbracecmd because texindex assumes - % braces and backslashes are used only as delimiters. - \let\{ = \mylbrace - \let\} = \myrbrace - % - % I don't entirely understand this, but when an index entry is - % generated from a macro call, the \endinput which \scanmacro inserts - % causes processing to be prematurely terminated. This is, - % apparently, because \indexsorttmp is fully expanded, and \endinput - % is an expandable command. The redefinition below makes \endinput - % disappear altogether for that purpose -- although logging shows that - % processing continues to some further point. On the other hand, it - % seems \endinput does not hurt in the printed index arg, since that - % is still getting written without apparent harm. - % - % Sample source (mac-idx3.tex, reported by Graham Percival to - % help-texinfo, 22may06): - % @macro funindex {WORD} - % @findex xyz - % @end macro - % ... - % @funindex commtest - % - % The above is not enough to reproduce the bug, but it gives the flavor. - % - % Sample whatsit resulting: - % .@write3{\entry{xyz}{@folio }{@code {xyz@endinput }}} - % - % So: - \let\endinput = \empty - % - % Do the redefinitions. - \commondummies -} - -% For the aux and toc files, @ is the escape character. So we want to -% redefine everything using @ as the escape character (instead of -% \realbackslash, still used for index files). When everything uses @, -% this will be simpler. -% -\def\atdummies{% - \def\@{@@}% - \def\ {@ }% - \let\{ = \lbraceatcmd - \let\} = \rbraceatcmd - % - % Do the redefinitions. - \commondummies - \otherbackslash -} - -% Called from \indexdummies and \atdummies. -% -\def\commondummies{% - % - % \definedummyword defines \#1 as \string\#1\space, thus effectively - % preventing its expansion. This is used only for control% words, - % not control letters, because the \space would be incorrect for - % control characters, but is needed to separate the control word - % from whatever follows. - % - % For control letters, we have \definedummyletter, which omits the - % space. - % - % These can be used both for control words that take an argument and - % those that do not. If it is followed by {arg} in the input, then - % that will dutifully get written to the index (or wherever). - % - \def\definedummyword ##1{\def##1{\string##1\space}}% - \def\definedummyletter##1{\def##1{\string##1}}% - \let\definedummyaccent\definedummyletter - % - \commondummiesnofonts - % - \definedummyletter\_% - % - % Non-English letters. - \definedummyword\AA - \definedummyword\AE - \definedummyword\L - \definedummyword\OE - \definedummyword\O - \definedummyword\aa - \definedummyword\ae - \definedummyword\l - \definedummyword\oe - \definedummyword\o - \definedummyword\ss - \definedummyword\exclamdown - \definedummyword\questiondown - \definedummyword\ordf - \definedummyword\ordm - % - % Although these internal commands shouldn't show up, sometimes they do. - \definedummyword\bf - \definedummyword\gtr - \definedummyword\hat - \definedummyword\less - \definedummyword\sf - \definedummyword\sl - \definedummyword\tclose - \definedummyword\tt - % - \definedummyword\LaTeX - \definedummyword\TeX - % - % Assorted special characters. - \definedummyword\bullet - \definedummyword\comma - \definedummyword\copyright - \definedummyword\registeredsymbol - \definedummyword\dots - \definedummyword\enddots - \definedummyword\equiv - \definedummyword\error - \definedummyword\euro - \definedummyword\guillemetleft - \definedummyword\guillemetright - \definedummyword\guilsinglleft - \definedummyword\guilsinglright - \definedummyword\expansion - \definedummyword\minus - \definedummyword\pounds - \definedummyword\point - \definedummyword\print - \definedummyword\quotedblbase - \definedummyword\quotedblleft - \definedummyword\quotedblright - \definedummyword\quoteleft - \definedummyword\quoteright - \definedummyword\quotesinglbase - \definedummyword\result - \definedummyword\textdegree - % - % We want to disable all macros so that they are not expanded by \write. - \macrolist - % - \normalturnoffactive - % - % Handle some cases of @value -- where it does not contain any - % (non-fully-expandable) commands. - \makevalueexpandable -} - -% \commondummiesnofonts: common to \commondummies and \indexnofonts. -% -\def\commondummiesnofonts{% - % Control letters and accents. - \definedummyletter\!% - \definedummyaccent\"% - \definedummyaccent\'% - \definedummyletter\*% - \definedummyaccent\,% - \definedummyletter\.% - \definedummyletter\/% - \definedummyletter\:% - \definedummyaccent\=% - \definedummyletter\?% - \definedummyaccent\^% - \definedummyaccent\`% - \definedummyaccent\~% - \definedummyword\u - \definedummyword\v - \definedummyword\H - \definedummyword\dotaccent - \definedummyword\ringaccent - \definedummyword\tieaccent - \definedummyword\ubaraccent - \definedummyword\udotaccent - \definedummyword\dotless - % - % Texinfo font commands. - \definedummyword\b - \definedummyword\i - \definedummyword\r - \definedummyword\sc - \definedummyword\t - % - % Commands that take arguments. - \definedummyword\acronym - \definedummyword\cite - \definedummyword\code - \definedummyword\command - \definedummyword\dfn - \definedummyword\emph - \definedummyword\env - \definedummyword\file - \definedummyword\kbd - \definedummyword\key - \definedummyword\math - \definedummyword\option - \definedummyword\pxref - \definedummyword\ref - \definedummyword\samp - \definedummyword\strong - \definedummyword\tie - \definedummyword\uref - \definedummyword\url - \definedummyword\var - \definedummyword\verb - \definedummyword\w - \definedummyword\xref -} - -% \indexnofonts is used when outputting the strings to sort the index -% by, and when constructing control sequence names. It eliminates all -% control sequences and just writes whatever the best ASCII sort string -% would be for a given command (usually its argument). -% -\def\indexnofonts{% - % Accent commands should become @asis. - \def\definedummyaccent##1{\let##1\asis}% - % We can just ignore other control letters. - \def\definedummyletter##1{\let##1\empty}% - % Hopefully, all control words can become @asis. - \let\definedummyword\definedummyaccent - % - \commondummiesnofonts - % - % Don't no-op \tt, since it isn't a user-level command - % and is used in the definitions of the active chars like <, >, |, etc. - % Likewise with the other plain tex font commands. - %\let\tt=\asis - % - \def\ { }% - \def\@{@}% - % how to handle braces? - \def\_{\normalunderscore}% - % - % Non-English letters. - \def\AA{AA}% - \def\AE{AE}% - \def\L{L}% - \def\OE{OE}% - \def\O{O}% - \def\aa{aa}% - \def\ae{ae}% - \def\l{l}% - \def\oe{oe}% - \def\o{o}% - \def\ss{ss}% - \def\exclamdown{!}% - \def\questiondown{?}% - \def\ordf{a}% - \def\ordm{o}% - % - \def\LaTeX{LaTeX}% - \def\TeX{TeX}% - % - % Assorted special characters. - % (The following {} will end up in the sort string, but that's ok.) - \def\bullet{bullet}% - \def\comma{,}% - \def\copyright{copyright}% - \def\registeredsymbol{R}% - \def\dots{...}% - \def\enddots{...}% - \def\equiv{==}% - \def\error{error}% - \def\euro{euro}% - \def\guillemetleft{<<}% - \def\guillemetright{>>}% - \def\guilsinglleft{<}% - \def\guilsinglright{>}% - \def\expansion{==>}% - \def\minus{-}% - \def\pounds{pounds}% - \def\point{.}% - \def\print{-|}% - \def\quotedblbase{"}% - \def\quotedblleft{"}% - \def\quotedblright{"}% - \def\quoteleft{`}% - \def\quoteright{'}% - \def\quotesinglbase{,}% - \def\result{=>}% - \def\textdegree{degrees}% - % - % We need to get rid of all macros, leaving only the arguments (if present). - % Of course this is not nearly correct, but it is the best we can do for now. - % makeinfo does not expand macros in the argument to @deffn, which ends up - % writing an index entry, and texindex isn't prepared for an index sort entry - % that starts with \. - % - % Since macro invocations are followed by braces, we can just redefine them - % to take a single TeX argument. The case of a macro invocation that - % goes to end-of-line is not handled. - % - \macrolist -} - -\let\indexbackslash=0 %overridden during \printindex. -\let\SETmarginindex=\relax % put index entries in margin (undocumented)? - -% Most index entries go through here, but \dosubind is the general case. -% #1 is the index name, #2 is the entry text. -\def\doind#1#2{\dosubind{#1}{#2}{}} - -% Workhorse for all \fooindexes. -% #1 is name of index, #2 is stuff to put there, #3 is subentry -- -% empty if called from \doind, as we usually are (the main exception -% is with most defuns, which call us directly). -% -\def\dosubind#1#2#3{% - \iflinks - {% - % Store the main index entry text (including the third arg). - \toks0 = {#2}% - % If third arg is present, precede it with a space. - \def\thirdarg{#3}% - \ifx\thirdarg\empty \else - \toks0 = \expandafter{\the\toks0 \space #3}% - \fi - % - \edef\writeto{\csname#1indfile\endcsname}% - % - \safewhatsit\dosubindwrite - }% - \fi -} - -% Write the entry in \toks0 to the index file: -% -\def\dosubindwrite{% - % Put the index entry in the margin if desired. - \ifx\SETmarginindex\relax\else - \insert\margin{\hbox{\vrule height8pt depth3pt width0pt \the\toks0}}% - \fi - % - % Remember, we are within a group. - \indexdummies % Must do this here, since \bf, etc expand at this stage - \def\backslashcurfont{\indexbackslash}% \indexbackslash isn't defined now - % so it will be output as is; and it will print as backslash. - % - % Process the index entry with all font commands turned off, to - % get the string to sort by. - {\indexnofonts - \edef\temp{\the\toks0}% need full expansion - \xdef\indexsorttmp{\temp}% - }% - % - % Set up the complete index entry, with both the sort key and - % the original text, including any font commands. We write - % three arguments to \entry to the .?? file (four in the - % subentry case), texindex reduces to two when writing the .??s - % sorted result. - \edef\temp{% - \write\writeto{% - \string\entry{\indexsorttmp}{\noexpand\folio}{\the\toks0}}% - }% - \temp -} - -% Take care of unwanted page breaks/skips around a whatsit: -% -% If a skip is the last thing on the list now, preserve it -% by backing up by \lastskip, doing the \write, then inserting -% the skip again. Otherwise, the whatsit generated by the -% \write or \pdfdest will make \lastskip zero. The result is that -% sequences like this: -% @end defun -% @tindex whatever -% @defun ... -% will have extra space inserted, because the \medbreak in the -% start of the @defun won't see the skip inserted by the @end of -% the previous defun. -% -% But don't do any of this if we're not in vertical mode. We -% don't want to do a \vskip and prematurely end a paragraph. -% -% Avoid page breaks due to these extra skips, too. -% -% But wait, there is a catch there: -% We'll have to check whether \lastskip is zero skip. \ifdim is not -% sufficient for this purpose, as it ignores stretch and shrink parts -% of the skip. The only way seems to be to check the textual -% representation of the skip. -% -% The following is almost like \def\zeroskipmacro{0.0pt} except that -% the ``p'' and ``t'' characters have catcode \other, not 11 (letter). -% -\edef\zeroskipmacro{\expandafter\the\csname z@skip\endcsname} -% -\newskip\whatsitskip -\newcount\whatsitpenalty -% -% ..., ready, GO: -% -\def\safewhatsit#1{% -\ifhmode - #1% -\else - % \lastskip and \lastpenalty cannot both be nonzero simultaneously. - \whatsitskip = \lastskip - \edef\lastskipmacro{\the\lastskip}% - \whatsitpenalty = \lastpenalty - % - % If \lastskip is nonzero, that means the last item was a - % skip. And since a skip is discardable, that means this - % -\whatsitskip glue we're inserting is preceded by a - % non-discardable item, therefore it is not a potential - % breakpoint, therefore no \nobreak needed. - \ifx\lastskipmacro\zeroskipmacro - \else - \vskip-\whatsitskip - \fi - % - #1% - % - \ifx\lastskipmacro\zeroskipmacro - % If \lastskip was zero, perhaps the last item was a penalty, and - % perhaps it was >=10000, e.g., a \nobreak. In that case, we want - % to re-insert the same penalty (values >10000 are used for various - % signals); since we just inserted a non-discardable item, any - % following glue (such as a \parskip) would be a breakpoint. For example: - % - % @deffn deffn-whatever - % @vindex index-whatever - % Description. - % would allow a break between the index-whatever whatsit - % and the "Description." paragraph. - \ifnum\whatsitpenalty>9999 \penalty\whatsitpenalty \fi - \else - % On the other hand, if we had a nonzero \lastskip, - % this make-up glue would be preceded by a non-discardable item - % (the whatsit from the \write), so we must insert a \nobreak. - \nobreak\vskip\whatsitskip - \fi -\fi -} - -% The index entry written in the file actually looks like -% \entry {sortstring}{page}{topic} -% or -% \entry {sortstring}{page}{topic}{subtopic} -% The texindex program reads in these files and writes files -% containing these kinds of lines: -% \initial {c} -% before the first topic whose initial is c -% \entry {topic}{pagelist} -% for a topic that is used without subtopics -% \primary {topic} -% for the beginning of a topic that is used with subtopics -% \secondary {subtopic}{pagelist} -% for each subtopic. - -% Define the user-accessible indexing commands -% @findex, @vindex, @kindex, @cindex. - -\def\findex {\fnindex} -\def\kindex {\kyindex} -\def\cindex {\cpindex} -\def\vindex {\vrindex} -\def\tindex {\tpindex} -\def\pindex {\pgindex} - -\def\cindexsub {\begingroup\obeylines\cindexsub} -{\obeylines % -\gdef\cindexsub "#1" #2^^M{\endgroup % -\dosubind{cp}{#2}{#1}}} - -% Define the macros used in formatting output of the sorted index material. - -% @printindex causes a particular index (the ??s file) to get printed. -% It does not print any chapter heading (usually an @unnumbered). -% -\parseargdef\printindex{\begingroup - \dobreak \chapheadingskip{10000}% - % - \smallfonts \rm - \tolerance = 9500 - \plainfrenchspacing - \everypar = {}% don't want the \kern\-parindent from indentation suppression. - % - % See if the index file exists and is nonempty. - % Change catcode of @ here so that if the index file contains - % \initial {@} - % as its first line, TeX doesn't complain about mismatched braces - % (because it thinks @} is a control sequence). - \catcode`\@ = 11 - \openin 1 \jobname.#1s - \ifeof 1 - % \enddoublecolumns gets confused if there is no text in the index, - % and it loses the chapter title and the aux file entries for the - % index. The easiest way to prevent this problem is to make sure - % there is some text. - \putwordIndexNonexistent - \else - % - % If the index file exists but is empty, then \openin leaves \ifeof - % false. We have to make TeX try to read something from the file, so - % it can discover if there is anything in it. - \read 1 to \temp - \ifeof 1 - \putwordIndexIsEmpty - \else - % Index files are almost Texinfo source, but we use \ as the escape - % character. It would be better to use @, but that's too big a change - % to make right now. - \def\indexbackslash{\backslashcurfont}% - \catcode`\\ = 0 - \escapechar = `\\ - \begindoublecolumns - \input \jobname.#1s - \enddoublecolumns - \fi - \fi - \closein 1 -\endgroup} - -% These macros are used by the sorted index file itself. -% Change them to control the appearance of the index. - -\def\initial#1{{% - % Some minor font changes for the special characters. - \let\tentt=\sectt \let\tt=\sectt \let\sf=\sectt - % - % Remove any glue we may have, we'll be inserting our own. - \removelastskip - % - % We like breaks before the index initials, so insert a bonus. - \nobreak - \vskip 0pt plus 3\baselineskip - \penalty 0 - \vskip 0pt plus -3\baselineskip - % - % Typeset the initial. Making this add up to a whole number of - % baselineskips increases the chance of the dots lining up from column - % to column. It still won't often be perfect, because of the stretch - % we need before each entry, but it's better. - % - % No shrink because it confuses \balancecolumns. - \vskip 1.67\baselineskip plus .5\baselineskip - \leftline{\secbf #1}% - % Do our best not to break after the initial. - \nobreak - \vskip .33\baselineskip plus .1\baselineskip -}} - -% \entry typesets a paragraph consisting of the text (#1), dot leaders, and -% then page number (#2) flushed to the right margin. It is used for index -% and table of contents entries. The paragraph is indented by \leftskip. -% -% A straightforward implementation would start like this: -% \def\entry#1#2{... -% But this frozes the catcodes in the argument, and can cause problems to -% @code, which sets - active. This problem was fixed by a kludge--- -% ``-'' was active throughout whole index, but this isn't really right. -% -% The right solution is to prevent \entry from swallowing the whole text. -% --kasal, 21nov03 -\def\entry{% - \begingroup - % - % Start a new paragraph if necessary, so our assignments below can't - % affect previous text. - \par - % - % Do not fill out the last line with white space. - \parfillskip = 0in - % - % No extra space above this paragraph. - \parskip = 0in - % - % Do not prefer a separate line ending with a hyphen to fewer lines. - \finalhyphendemerits = 0 - % - % \hangindent is only relevant when the entry text and page number - % don't both fit on one line. In that case, bob suggests starting the - % dots pretty far over on the line. Unfortunately, a large - % indentation looks wrong when the entry text itself is broken across - % lines. So we use a small indentation and put up with long leaders. - % - % \hangafter is reset to 1 (which is the value we want) at the start - % of each paragraph, so we need not do anything with that. - \hangindent = 2em - % - % When the entry text needs to be broken, just fill out the first line - % with blank space. - \rightskip = 0pt plus1fil - % - % A bit of stretch before each entry for the benefit of balancing - % columns. - \vskip 0pt plus1pt - % - % Swallow the left brace of the text (first parameter): - \afterassignment\doentry - \let\temp = -} -\def\doentry{% - \bgroup % Instead of the swallowed brace. - \noindent - \aftergroup\finishentry - % And now comes the text of the entry. -} -\def\finishentry#1{% - % #1 is the page number. - % - % The following is kludged to not output a line of dots in the index if - % there are no page numbers. The next person who breaks this will be - % cursed by a Unix daemon. - \setbox\boxA = \hbox{#1}% - \ifdim\wd\boxA = 0pt - \ % - \else - % - % If we must, put the page number on a line of its own, and fill out - % this line with blank space. (The \hfil is overwhelmed with the - % fill leaders glue in \indexdotfill if the page number does fit.) - \hfil\penalty50 - \null\nobreak\indexdotfill % Have leaders before the page number. - % - % The `\ ' here is removed by the implicit \unskip that TeX does as - % part of (the primitive) \par. Without it, a spurious underfull - % \hbox ensues. - \ifpdf - \pdfgettoks#1.% - \ \the\toksA - \else - \ #1% - \fi - \fi - \par - \endgroup -} - -% Like plain.tex's \dotfill, except uses up at least 1 em. -\def\indexdotfill{\cleaders - \hbox{$\mathsurround=0pt \mkern1.5mu.\mkern1.5mu$}\hskip 1em plus 1fill} - -\def\primary #1{\line{#1\hfil}} - -\newskip\secondaryindent \secondaryindent=0.5cm -\def\secondary#1#2{{% - \parfillskip=0in - \parskip=0in - \hangindent=1in - \hangafter=1 - \noindent\hskip\secondaryindent\hbox{#1}\indexdotfill - \ifpdf - \pdfgettoks#2.\ \the\toksA % The page number ends the paragraph. - \else - #2 - \fi - \par -}} - -% Define two-column mode, which we use to typeset indexes. -% Adapted from the TeXbook, page 416, which is to say, -% the manmac.tex format used to print the TeXbook itself. -\catcode`\@=11 - -\newbox\partialpage -\newdimen\doublecolumnhsize - -\def\begindoublecolumns{\begingroup % ended by \enddoublecolumns - % Grab any single-column material above us. - \output = {% - % - % Here is a possibility not foreseen in manmac: if we accumulate a - % whole lot of material, we might end up calling this \output - % routine twice in a row (see the doublecol-lose test, which is - % essentially a couple of indexes with @setchapternewpage off). In - % that case we just ship out what is in \partialpage with the normal - % output routine. Generally, \partialpage will be empty when this - % runs and this will be a no-op. See the indexspread.tex test case. - \ifvoid\partialpage \else - \onepageout{\pagecontents\partialpage}% - \fi - % - \global\setbox\partialpage = \vbox{% - % Unvbox the main output page. - \unvbox\PAGE - \kern-\topskip \kern\baselineskip - }% - }% - \eject % run that output routine to set \partialpage - % - % Use the double-column output routine for subsequent pages. - \output = {\doublecolumnout}% - % - % Change the page size parameters. We could do this once outside this - % routine, in each of @smallbook, @afourpaper, and the default 8.5x11 - % format, but then we repeat the same computation. Repeating a couple - % of assignments once per index is clearly meaningless for the - % execution time, so we may as well do it in one place. - % - % First we halve the line length, less a little for the gutter between - % the columns. We compute the gutter based on the line length, so it - % changes automatically with the paper format. The magic constant - % below is chosen so that the gutter has the same value (well, +-<1pt) - % as it did when we hard-coded it. - % - % We put the result in a separate register, \doublecolumhsize, so we - % can restore it in \pagesofar, after \hsize itself has (potentially) - % been clobbered. - % - \doublecolumnhsize = \hsize - \advance\doublecolumnhsize by -.04154\hsize - \divide\doublecolumnhsize by 2 - \hsize = \doublecolumnhsize - % - % Double the \vsize as well. (We don't need a separate register here, - % since nobody clobbers \vsize.) - \vsize = 2\vsize -} - -% The double-column output routine for all double-column pages except -% the last. -% -\def\doublecolumnout{% - \splittopskip=\topskip \splitmaxdepth=\maxdepth - % Get the available space for the double columns -- the normal - % (undoubled) page height minus any material left over from the - % previous page. - \dimen@ = \vsize - \divide\dimen@ by 2 - \advance\dimen@ by -\ht\partialpage - % - % box0 will be the left-hand column, box2 the right. - \setbox0=\vsplit255 to\dimen@ \setbox2=\vsplit255 to\dimen@ - \onepageout\pagesofar - \unvbox255 - \penalty\outputpenalty -} -% -% Re-output the contents of the output page -- any previous material, -% followed by the two boxes we just split, in box0 and box2. -\def\pagesofar{% - \unvbox\partialpage - % - \hsize = \doublecolumnhsize - \wd0=\hsize \wd2=\hsize - \hbox to\pagewidth{\box0\hfil\box2}% -} -% -% All done with double columns. -\def\enddoublecolumns{% - % The following penalty ensures that the page builder is exercised - % _before_ we change the output routine. This is necessary in the - % following situation: - % - % The last section of the index consists only of a single entry. - % Before this section, \pagetotal is less than \pagegoal, so no - % break occurs before the last section starts. However, the last - % section, consisting of \initial and the single \entry, does not - % fit on the page and has to be broken off. Without the following - % penalty the page builder will not be exercised until \eject - % below, and by that time we'll already have changed the output - % routine to the \balancecolumns version, so the next-to-last - % double-column page will be processed with \balancecolumns, which - % is wrong: The two columns will go to the main vertical list, with - % the broken-off section in the recent contributions. As soon as - % the output routine finishes, TeX starts reconsidering the page - % break. The two columns and the broken-off section both fit on the - % page, because the two columns now take up only half of the page - % goal. When TeX sees \eject from below which follows the final - % section, it invokes the new output routine that we've set after - % \balancecolumns below; \onepageout will try to fit the two columns - % and the final section into the vbox of \pageheight (see - % \pagebody), causing an overfull box. - % - % Note that glue won't work here, because glue does not exercise the - % page builder, unlike penalties (see The TeXbook, pp. 280-281). - \penalty0 - % - \output = {% - % Split the last of the double-column material. Leave it on the - % current page, no automatic page break. - \balancecolumns - % - % If we end up splitting too much material for the current page, - % though, there will be another page break right after this \output - % invocation ends. Having called \balancecolumns once, we do not - % want to call it again. Therefore, reset \output to its normal - % definition right away. (We hope \balancecolumns will never be - % called on to balance too much material, but if it is, this makes - % the output somewhat more palatable.) - \global\output = {\onepageout{\pagecontents\PAGE}}% - }% - \eject - \endgroup % started in \begindoublecolumns - % - % \pagegoal was set to the doubled \vsize above, since we restarted - % the current page. We're now back to normal single-column - % typesetting, so reset \pagegoal to the normal \vsize (after the - % \endgroup where \vsize got restored). - \pagegoal = \vsize -} -% -% Called at the end of the double column material. -\def\balancecolumns{% - \setbox0 = \vbox{\unvbox255}% like \box255 but more efficient, see p.120. - \dimen@ = \ht0 - \advance\dimen@ by \topskip - \advance\dimen@ by-\baselineskip - \divide\dimen@ by 2 % target to split to - %debug\message{final 2-column material height=\the\ht0, target=\the\dimen@.}% - \splittopskip = \topskip - % Loop until we get a decent breakpoint. - {% - \vbadness = 10000 - \loop - \global\setbox3 = \copy0 - \global\setbox1 = \vsplit3 to \dimen@ - \ifdim\ht3>\dimen@ - \global\advance\dimen@ by 1pt - \repeat - }% - %debug\message{split to \the\dimen@, column heights: \the\ht1, \the\ht3.}% - \setbox0=\vbox to\dimen@{\unvbox1}% - \setbox2=\vbox to\dimen@{\unvbox3}% - % - \pagesofar -} -\catcode`\@ = \other - - -\message{sectioning,} -% Chapters, sections, etc. - -% \unnumberedno is an oxymoron, of course. But we count the unnumbered -% sections so that we can refer to them unambiguously in the pdf -% outlines by their "section number". We avoid collisions with chapter -% numbers by starting them at 10000. (If a document ever has 10000 -% chapters, we're in trouble anyway, I'm sure.) -\newcount\unnumberedno \unnumberedno = 10000 -\newcount\chapno -\newcount\secno \secno=0 -\newcount\subsecno \subsecno=0 -\newcount\subsubsecno \subsubsecno=0 - -% This counter is funny since it counts through charcodes of letters A, B, ... -\newcount\appendixno \appendixno = `\@ -% -% \def\appendixletter{\char\the\appendixno} -% We do the following ugly conditional instead of the above simple -% construct for the sake of pdftex, which needs the actual -% letter in the expansion, not just typeset. -% -\def\appendixletter{% - \ifnum\appendixno=`A A% - \else\ifnum\appendixno=`B B% - \else\ifnum\appendixno=`C C% - \else\ifnum\appendixno=`D D% - \else\ifnum\appendixno=`E E% - \else\ifnum\appendixno=`F F% - \else\ifnum\appendixno=`G G% - \else\ifnum\appendixno=`H H% - \else\ifnum\appendixno=`I I% - \else\ifnum\appendixno=`J J% - \else\ifnum\appendixno=`K K% - \else\ifnum\appendixno=`L L% - \else\ifnum\appendixno=`M M% - \else\ifnum\appendixno=`N N% - \else\ifnum\appendixno=`O O% - \else\ifnum\appendixno=`P P% - \else\ifnum\appendixno=`Q Q% - \else\ifnum\appendixno=`R R% - \else\ifnum\appendixno=`S S% - \else\ifnum\appendixno=`T T% - \else\ifnum\appendixno=`U U% - \else\ifnum\appendixno=`V V% - \else\ifnum\appendixno=`W W% - \else\ifnum\appendixno=`X X% - \else\ifnum\appendixno=`Y Y% - \else\ifnum\appendixno=`Z Z% - % The \the is necessary, despite appearances, because \appendixletter is - % expanded while writing the .toc file. \char\appendixno is not - % expandable, thus it is written literally, thus all appendixes come out - % with the same letter (or @) in the toc without it. - \else\char\the\appendixno - \fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi - \fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi} - -% Each @chapter defines these (using marks) as the number+name, number -% and name of the chapter. Page headings and footings can use -% these. @section does likewise. -\def\thischapter{} -\def\thischapternum{} -\def\thischaptername{} -\def\thissection{} -\def\thissectionnum{} -\def\thissectionname{} - -\newcount\absseclevel % used to calculate proper heading level -\newcount\secbase\secbase=0 % @raisesections/@lowersections modify this count - -% @raisesections: treat @section as chapter, @subsection as section, etc. -\def\raisesections{\global\advance\secbase by -1} -\let\up=\raisesections % original BFox name - -% @lowersections: treat @chapter as section, @section as subsection, etc. -\def\lowersections{\global\advance\secbase by 1} -\let\down=\lowersections % original BFox name - -% we only have subsub. -\chardef\maxseclevel = 3 -% -% A numbered section within an unnumbered changes to unnumbered too. -% To achive this, remember the "biggest" unnum. sec. we are currently in: -\chardef\unmlevel = \maxseclevel -% -% Trace whether the current chapter is an appendix or not: -% \chapheadtype is "N" or "A", unnumbered chapters are ignored. -\def\chapheadtype{N} - -% Choose a heading macro -% #1 is heading type -% #2 is heading level -% #3 is text for heading -\def\genhead#1#2#3{% - % Compute the abs. sec. level: - \absseclevel=#2 - \advance\absseclevel by \secbase - % Make sure \absseclevel doesn't fall outside the range: - \ifnum \absseclevel < 0 - \absseclevel = 0 - \else - \ifnum \absseclevel > 3 - \absseclevel = 3 - \fi - \fi - % The heading type: - \def\headtype{#1}% - \if \headtype U% - \ifnum \absseclevel < \unmlevel - \chardef\unmlevel = \absseclevel - \fi - \else - % Check for appendix sections: - \ifnum \absseclevel = 0 - \edef\chapheadtype{\headtype}% - \else - \if \headtype A\if \chapheadtype N% - \errmessage{@appendix... within a non-appendix chapter}% - \fi\fi - \fi - % Check for numbered within unnumbered: - \ifnum \absseclevel > \unmlevel - \def\headtype{U}% - \else - \chardef\unmlevel = 3 - \fi - \fi - % Now print the heading: - \if \headtype U% - \ifcase\absseclevel - \unnumberedzzz{#3}% - \or \unnumberedseczzz{#3}% - \or \unnumberedsubseczzz{#3}% - \or \unnumberedsubsubseczzz{#3}% - \fi - \else - \if \headtype A% - \ifcase\absseclevel - \appendixzzz{#3}% - \or \appendixsectionzzz{#3}% - \or \appendixsubseczzz{#3}% - \or \appendixsubsubseczzz{#3}% - \fi - \else - \ifcase\absseclevel - \chapterzzz{#3}% - \or \seczzz{#3}% - \or \numberedsubseczzz{#3}% - \or \numberedsubsubseczzz{#3}% - \fi - \fi - \fi - \suppressfirstparagraphindent -} - -% an interface: -\def\numhead{\genhead N} -\def\apphead{\genhead A} -\def\unnmhead{\genhead U} - -% @chapter, @appendix, @unnumbered. Increment top-level counter, reset -% all lower-level sectioning counters to zero. -% -% Also set \chaplevelprefix, which we prepend to @float sequence numbers -% (e.g., figures), q.v. By default (before any chapter), that is empty. -\let\chaplevelprefix = \empty -% -\outer\parseargdef\chapter{\numhead0{#1}} % normally numhead0 calls chapterzzz -\def\chapterzzz#1{% - % section resetting is \global in case the chapter is in a group, such - % as an @include file. - \global\secno=0 \global\subsecno=0 \global\subsubsecno=0 - \global\advance\chapno by 1 - % - % Used for \float. - \gdef\chaplevelprefix{\the\chapno.}% - \resetallfloatnos - % - \message{\putwordChapter\space \the\chapno}% - % - % Write the actual heading. - \chapmacro{#1}{Ynumbered}{\the\chapno}% - % - % So @section and the like are numbered underneath this chapter. - \global\let\section = \numberedsec - \global\let\subsection = \numberedsubsec - \global\let\subsubsection = \numberedsubsubsec -} - -\outer\parseargdef\appendix{\apphead0{#1}} % normally apphead0 calls appendixzzz -\def\appendixzzz#1{% - \global\secno=0 \global\subsecno=0 \global\subsubsecno=0 - \global\advance\appendixno by 1 - \gdef\chaplevelprefix{\appendixletter.}% - \resetallfloatnos - % - \def\appendixnum{\putwordAppendix\space \appendixletter}% - \message{\appendixnum}% - % - \chapmacro{#1}{Yappendix}{\appendixletter}% - % - \global\let\section = \appendixsec - \global\let\subsection = \appendixsubsec - \global\let\subsubsection = \appendixsubsubsec -} - -\outer\parseargdef\unnumbered{\unnmhead0{#1}} % normally unnmhead0 calls unnumberedzzz -\def\unnumberedzzz#1{% - \global\secno=0 \global\subsecno=0 \global\subsubsecno=0 - \global\advance\unnumberedno by 1 - % - % Since an unnumbered has no number, no prefix for figures. - \global\let\chaplevelprefix = \empty - \resetallfloatnos - % - % This used to be simply \message{#1}, but TeX fully expands the - % argument to \message. Therefore, if #1 contained @-commands, TeX - % expanded them. For example, in `@unnumbered The @cite{Book}', TeX - % expanded @cite (which turns out to cause errors because \cite is meant - % to be executed, not expanded). - % - % Anyway, we don't want the fully-expanded definition of @cite to appear - % as a result of the \message, we just want `@cite' itself. We use - % \the to achieve this: TeX expands \the only once, - % simply yielding the contents of . (We also do this for - % the toc entries.) - \toks0 = {#1}% - \message{(\the\toks0)}% - % - \chapmacro{#1}{Ynothing}{\the\unnumberedno}% - % - \global\let\section = \unnumberedsec - \global\let\subsection = \unnumberedsubsec - \global\let\subsubsection = \unnumberedsubsubsec -} - -% @centerchap is like @unnumbered, but the heading is centered. -\outer\parseargdef\centerchap{% - % Well, we could do the following in a group, but that would break - % an assumption that \chapmacro is called at the outermost level. - % Thus we are safer this way: --kasal, 24feb04 - \let\centerparametersmaybe = \centerparameters - \unnmhead0{#1}% - \let\centerparametersmaybe = \relax -} - -% @top is like @unnumbered. -\let\top\unnumbered - -% Sections. -\outer\parseargdef\numberedsec{\numhead1{#1}} % normally calls seczzz -\def\seczzz#1{% - \global\subsecno=0 \global\subsubsecno=0 \global\advance\secno by 1 - \sectionheading{#1}{sec}{Ynumbered}{\the\chapno.\the\secno}% -} - -\outer\parseargdef\appendixsection{\apphead1{#1}} % normally calls appendixsectionzzz -\def\appendixsectionzzz#1{% - \global\subsecno=0 \global\subsubsecno=0 \global\advance\secno by 1 - \sectionheading{#1}{sec}{Yappendix}{\appendixletter.\the\secno}% -} -\let\appendixsec\appendixsection - -\outer\parseargdef\unnumberedsec{\unnmhead1{#1}} % normally calls unnumberedseczzz -\def\unnumberedseczzz#1{% - \global\subsecno=0 \global\subsubsecno=0 \global\advance\secno by 1 - \sectionheading{#1}{sec}{Ynothing}{\the\unnumberedno.\the\secno}% -} - -% Subsections. -\outer\parseargdef\numberedsubsec{\numhead2{#1}} % normally calls numberedsubseczzz -\def\numberedsubseczzz#1{% - \global\subsubsecno=0 \global\advance\subsecno by 1 - \sectionheading{#1}{subsec}{Ynumbered}{\the\chapno.\the\secno.\the\subsecno}% -} - -\outer\parseargdef\appendixsubsec{\apphead2{#1}} % normally calls appendixsubseczzz -\def\appendixsubseczzz#1{% - \global\subsubsecno=0 \global\advance\subsecno by 1 - \sectionheading{#1}{subsec}{Yappendix}% - {\appendixletter.\the\secno.\the\subsecno}% -} - -\outer\parseargdef\unnumberedsubsec{\unnmhead2{#1}} %normally calls unnumberedsubseczzz -\def\unnumberedsubseczzz#1{% - \global\subsubsecno=0 \global\advance\subsecno by 1 - \sectionheading{#1}{subsec}{Ynothing}% - {\the\unnumberedno.\the\secno.\the\subsecno}% -} - -% Subsubsections. -\outer\parseargdef\numberedsubsubsec{\numhead3{#1}} % normally numberedsubsubseczzz -\def\numberedsubsubseczzz#1{% - \global\advance\subsubsecno by 1 - \sectionheading{#1}{subsubsec}{Ynumbered}% - {\the\chapno.\the\secno.\the\subsecno.\the\subsubsecno}% -} - -\outer\parseargdef\appendixsubsubsec{\apphead3{#1}} % normally appendixsubsubseczzz -\def\appendixsubsubseczzz#1{% - \global\advance\subsubsecno by 1 - \sectionheading{#1}{subsubsec}{Yappendix}% - {\appendixletter.\the\secno.\the\subsecno.\the\subsubsecno}% -} - -\outer\parseargdef\unnumberedsubsubsec{\unnmhead3{#1}} %normally unnumberedsubsubseczzz -\def\unnumberedsubsubseczzz#1{% - \global\advance\subsubsecno by 1 - \sectionheading{#1}{subsubsec}{Ynothing}% - {\the\unnumberedno.\the\secno.\the\subsecno.\the\subsubsecno}% -} - -% These macros control what the section commands do, according -% to what kind of chapter we are in (ordinary, appendix, or unnumbered). -% Define them by default for a numbered chapter. -\let\section = \numberedsec -\let\subsection = \numberedsubsec -\let\subsubsection = \numberedsubsubsec - -% Define @majorheading, @heading and @subheading - -% NOTE on use of \vbox for chapter headings, section headings, and such: -% 1) We use \vbox rather than the earlier \line to permit -% overlong headings to fold. -% 2) \hyphenpenalty is set to 10000 because hyphenation in a -% heading is obnoxious; this forbids it. -% 3) Likewise, headings look best if no \parindent is used, and -% if justification is not attempted. Hence \raggedright. - - -\def\majorheading{% - {\advance\chapheadingskip by 10pt \chapbreak }% - \parsearg\chapheadingzzz -} - -\def\chapheading{\chapbreak \parsearg\chapheadingzzz} -\def\chapheadingzzz#1{% - {\chapfonts \vbox{\hyphenpenalty=10000\tolerance=5000 - \parindent=0pt\raggedright - \rm #1\hfill}}% - \bigskip \par\penalty 200\relax - \suppressfirstparagraphindent -} - -% @heading, @subheading, @subsubheading. -\parseargdef\heading{\sectionheading{#1}{sec}{Yomitfromtoc}{} - \suppressfirstparagraphindent} -\parseargdef\subheading{\sectionheading{#1}{subsec}{Yomitfromtoc}{} - \suppressfirstparagraphindent} -\parseargdef\subsubheading{\sectionheading{#1}{subsubsec}{Yomitfromtoc}{} - \suppressfirstparagraphindent} - -% These macros generate a chapter, section, etc. heading only -% (including whitespace, linebreaking, etc. around it), -% given all the information in convenient, parsed form. - -%%% Args are the skip and penalty (usually negative) -\def\dobreak#1#2{\par\ifdim\lastskip<#1\removelastskip\penalty#2\vskip#1\fi} - -%%% Define plain chapter starts, and page on/off switching for it -% Parameter controlling skip before chapter headings (if needed) - -\newskip\chapheadingskip - -\def\chapbreak{\dobreak \chapheadingskip {-4000}} -\def\chappager{\par\vfill\supereject} -% Because \domark is called before \chapoddpage, the filler page will -% get the headings for the next chapter, which is wrong. But we don't -% care -- we just disable all headings on the filler page. -\def\chapoddpage{% - \chappager - \ifodd\pageno \else - \begingroup - \evenheadline={\hfil}\evenfootline={\hfil}% - \oddheadline={\hfil}\oddfootline={\hfil}% - \hbox to 0pt{}% - \chappager - \endgroup - \fi -} - -\def\setchapternewpage #1 {\csname CHAPPAG#1\endcsname} - -\def\CHAPPAGoff{% -\global\let\contentsalignmacro = \chappager -\global\let\pchapsepmacro=\chapbreak -\global\let\pagealignmacro=\chappager} - -\def\CHAPPAGon{% -\global\let\contentsalignmacro = \chappager -\global\let\pchapsepmacro=\chappager -\global\let\pagealignmacro=\chappager -\global\def\HEADINGSon{\HEADINGSsingle}} - -\def\CHAPPAGodd{% -\global\let\contentsalignmacro = \chapoddpage -\global\let\pchapsepmacro=\chapoddpage -\global\let\pagealignmacro=\chapoddpage -\global\def\HEADINGSon{\HEADINGSdouble}} - -\CHAPPAGon - -% Chapter opening. -% -% #1 is the text, #2 is the section type (Ynumbered, Ynothing, -% Yappendix, Yomitfromtoc), #3 the chapter number. -% -% To test against our argument. -\def\Ynothingkeyword{Ynothing} -\def\Yomitfromtockeyword{Yomitfromtoc} -\def\Yappendixkeyword{Yappendix} -% -\def\chapmacro#1#2#3{% - % Insert the first mark before the heading break (see notes for \domark). - \let\prevchapterdefs=\lastchapterdefs - \let\prevsectiondefs=\lastsectiondefs - \gdef\lastsectiondefs{\gdef\thissectionname{}\gdef\thissectionnum{}% - \gdef\thissection{}}% - % - \def\temptype{#2}% - \ifx\temptype\Ynothingkeyword - \gdef\lastchapterdefs{\gdef\thischaptername{#1}\gdef\thischapternum{}% - \gdef\thischapter{\thischaptername}}% - \else\ifx\temptype\Yomitfromtockeyword - \gdef\lastchapterdefs{\gdef\thischaptername{#1}\gdef\thischapternum{}% - \gdef\thischapter{}}% - \else\ifx\temptype\Yappendixkeyword - \toks0={#1}% - \xdef\lastchapterdefs{% - \gdef\noexpand\thischaptername{\the\toks0}% - \gdef\noexpand\thischapternum{\appendixletter}% - \gdef\noexpand\thischapter{\putwordAppendix{} \noexpand\thischapternum: - \noexpand\thischaptername}% - }% - \else - \toks0={#1}% - \xdef\lastchapterdefs{% - \gdef\noexpand\thischaptername{\the\toks0}% - \gdef\noexpand\thischapternum{\the\chapno}% - \gdef\noexpand\thischapter{\putwordChapter{} \noexpand\thischapternum: - \noexpand\thischaptername}% - }% - \fi\fi\fi - % - % Output the mark. Pass it through \safewhatsit, to take care of - % the preceding space. - \safewhatsit\domark - % - % Insert the chapter heading break. - \pchapsepmacro - % - % Now the second mark, after the heading break. No break points - % between here and the heading. - \let\prevchapterdefs=\lastchapterdefs - \let\prevsectiondefs=\lastsectiondefs - \domark - % - {% - \chapfonts \rm - % - % Have to define \lastsection before calling \donoderef, because the - % xref code eventually uses it. On the other hand, it has to be called - % after \pchapsepmacro, or the headline will change too soon. - \gdef\lastsection{#1}% - % - % Only insert the separating space if we have a chapter/appendix - % number, and don't print the unnumbered ``number''. - \ifx\temptype\Ynothingkeyword - \setbox0 = \hbox{}% - \def\toctype{unnchap}% - \else\ifx\temptype\Yomitfromtockeyword - \setbox0 = \hbox{}% contents like unnumbered, but no toc entry - \def\toctype{omit}% - \else\ifx\temptype\Yappendixkeyword - \setbox0 = \hbox{\putwordAppendix{} #3\enspace}% - \def\toctype{app}% - \else - \setbox0 = \hbox{#3\enspace}% - \def\toctype{numchap}% - \fi\fi\fi - % - % Write the toc entry for this chapter. Must come before the - % \donoderef, because we include the current node name in the toc - % entry, and \donoderef resets it to empty. - \writetocentry{\toctype}{#1}{#3}% - % - % For pdftex, we have to write out the node definition (aka, make - % the pdfdest) after any page break, but before the actual text has - % been typeset. If the destination for the pdf outline is after the - % text, then jumping from the outline may wind up with the text not - % being visible, for instance under high magnification. - \donoderef{#2}% - % - % Typeset the actual heading. - \nobreak % Avoid page breaks at the interline glue. - \vbox{\hyphenpenalty=10000 \tolerance=5000 \parindent=0pt \raggedright - \hangindent=\wd0 \centerparametersmaybe - \unhbox0 #1\par}% - }% - \nobreak\bigskip % no page break after a chapter title - \nobreak -} - -% @centerchap -- centered and unnumbered. -\let\centerparametersmaybe = \relax -\def\centerparameters{% - \advance\rightskip by 3\rightskip - \leftskip = \rightskip - \parfillskip = 0pt -} - - -% I don't think this chapter style is supported any more, so I'm not -% updating it with the new noderef stuff. We'll see. --karl, 11aug03. -% -\def\setchapterstyle #1 {\csname CHAPF#1\endcsname} -% -\def\unnchfopen #1{% -\chapoddpage {\chapfonts \vbox{\hyphenpenalty=10000\tolerance=5000 - \parindent=0pt\raggedright - \rm #1\hfill}}\bigskip \par\nobreak -} -\def\chfopen #1#2{\chapoddpage {\chapfonts -\vbox to 3in{\vfil \hbox to\hsize{\hfil #2} \hbox to\hsize{\hfil #1} \vfil}}% -\par\penalty 5000 % -} -\def\centerchfopen #1{% -\chapoddpage {\chapfonts \vbox{\hyphenpenalty=10000\tolerance=5000 - \parindent=0pt - \hfill {\rm #1}\hfill}}\bigskip \par\nobreak -} -\def\CHAPFopen{% - \global\let\chapmacro=\chfopen - \global\let\centerchapmacro=\centerchfopen} - - -% Section titles. These macros combine the section number parts and -% call the generic \sectionheading to do the printing. -% -\newskip\secheadingskip -\def\secheadingbreak{\dobreak \secheadingskip{-1000}} - -% Subsection titles. -\newskip\subsecheadingskip -\def\subsecheadingbreak{\dobreak \subsecheadingskip{-500}} - -% Subsubsection titles. -\def\subsubsecheadingskip{\subsecheadingskip} -\def\subsubsecheadingbreak{\subsecheadingbreak} - - -% Print any size, any type, section title. -% -% #1 is the text, #2 is the section level (sec/subsec/subsubsec), #3 is -% the section type for xrefs (Ynumbered, Ynothing, Yappendix), #4 is the -% section number. -% -\def\seckeyword{sec} -% -\def\sectionheading#1#2#3#4{% - {% - % Switch to the right set of fonts. - \csname #2fonts\endcsname \rm - % - \def\sectionlevel{#2}% - \def\temptype{#3}% - % - % Insert first mark before the heading break (see notes for \domark). - \let\prevsectiondefs=\lastsectiondefs - \ifx\temptype\Ynothingkeyword - \ifx\sectionlevel\seckeyword - \gdef\lastsectiondefs{\gdef\thissectionname{#1}\gdef\thissectionnum{}% - \gdef\thissection{\thissectionname}}% - \fi - \else\ifx\temptype\Yomitfromtockeyword - % Don't redefine \thissection. - \else\ifx\temptype\Yappendixkeyword - \ifx\sectionlevel\seckeyword - \toks0={#1}% - \xdef\lastsectiondefs{% - \gdef\noexpand\thissectionname{\the\toks0}% - \gdef\noexpand\thissectionnum{#4}% - \gdef\noexpand\thissection{\putwordSection{} \noexpand\thissectionnum: - \noexpand\thissectionname}% - }% - \fi - \else - \ifx\sectionlevel\seckeyword - \toks0={#1}% - \xdef\lastsectiondefs{% - \gdef\noexpand\thissectionname{\the\toks0}% - \gdef\noexpand\thissectionnum{#4}% - \gdef\noexpand\thissection{\putwordSection{} \noexpand\thissectionnum: - \noexpand\thissectionname}% - }% - \fi - \fi\fi\fi - % - % Output the mark. Pass it through \safewhatsit, to take care of - % the preceding space. - \safewhatsit\domark - % - % Insert space above the heading. - \csname #2headingbreak\endcsname - % - % Now the second mark, after the heading break. No break points - % between here and the heading. - \let\prevsectiondefs=\lastsectiondefs - \domark - % - % Only insert the space after the number if we have a section number. - \ifx\temptype\Ynothingkeyword - \setbox0 = \hbox{}% - \def\toctype{unn}% - \gdef\lastsection{#1}% - \else\ifx\temptype\Yomitfromtockeyword - % for @headings -- no section number, don't include in toc, - % and don't redefine \lastsection. - \setbox0 = \hbox{}% - \def\toctype{omit}% - \let\sectionlevel=\empty - \else\ifx\temptype\Yappendixkeyword - \setbox0 = \hbox{#4\enspace}% - \def\toctype{app}% - \gdef\lastsection{#1}% - \else - \setbox0 = \hbox{#4\enspace}% - \def\toctype{num}% - \gdef\lastsection{#1}% - \fi\fi\fi - % - % Write the toc entry (before \donoderef). See comments in \chapmacro. - \writetocentry{\toctype\sectionlevel}{#1}{#4}% - % - % Write the node reference (= pdf destination for pdftex). - % Again, see comments in \chapmacro. - \donoderef{#3}% - % - % Interline glue will be inserted when the vbox is completed. - % That glue will be a valid breakpoint for the page, since it'll be - % preceded by a whatsit (usually from the \donoderef, or from the - % \writetocentry if there was no node). We don't want to allow that - % break, since then the whatsits could end up on page n while the - % section is on page n+1, thus toc/etc. are wrong. Debian bug 276000. - \nobreak - % - % Output the actual section heading. - \vbox{\hyphenpenalty=10000 \tolerance=5000 \parindent=0pt \raggedright - \hangindent=\wd0 % zero if no section number - \unhbox0 #1}% - }% - % Add extra space after the heading -- half of whatever came above it. - % Don't allow stretch, though. - \kern .5 \csname #2headingskip\endcsname - % - % Do not let the kern be a potential breakpoint, as it would be if it - % was followed by glue. - \nobreak - % - % We'll almost certainly start a paragraph next, so don't let that - % glue accumulate. (Not a breakpoint because it's preceded by a - % discardable item.) - \vskip-\parskip - % - % This is purely so the last item on the list is a known \penalty > - % 10000. This is so \startdefun can avoid allowing breakpoints after - % section headings. Otherwise, it would insert a valid breakpoint between: - % - % @section sec-whatever - % @deffn def-whatever - \penalty 10001 -} - - -\message{toc,} -% Table of contents. -\newwrite\tocfile - -% Write an entry to the toc file, opening it if necessary. -% Called from @chapter, etc. -% -% Example usage: \writetocentry{sec}{Section Name}{\the\chapno.\the\secno} -% We append the current node name (if any) and page number as additional -% arguments for the \{chap,sec,...}entry macros which will eventually -% read this. The node name is used in the pdf outlines as the -% destination to jump to. -% -% We open the .toc file for writing here instead of at @setfilename (or -% any other fixed time) so that @contents can be anywhere in the document. -% But if #1 is `omit', then we don't do anything. This is used for the -% table of contents chapter openings themselves. -% -\newif\iftocfileopened -\def\omitkeyword{omit}% -% -\def\writetocentry#1#2#3{% - \edef\writetoctype{#1}% - \ifx\writetoctype\omitkeyword \else - \iftocfileopened\else - \immediate\openout\tocfile = \jobname.toc - \global\tocfileopenedtrue - \fi - % - \iflinks - {\atdummies - \edef\temp{% - \write\tocfile{@#1entry{#2}{#3}{\lastnode}{\noexpand\folio}}}% - \temp - }% - \fi - \fi - % - % Tell \shipout to create a pdf destination on each page, if we're - % writing pdf. These are used in the table of contents. We can't - % just write one on every page because the title pages are numbered - % 1 and 2 (the page numbers aren't printed), and so are the first - % two pages of the document. Thus, we'd have two destinations named - % `1', and two named `2'. - \ifpdf \global\pdfmakepagedesttrue \fi -} - - -% These characters do not print properly in the Computer Modern roman -% fonts, so we must take special care. This is more or less redundant -% with the Texinfo input format setup at the end of this file. -% -\def\activecatcodes{% - \catcode`\"=\active - \catcode`\$=\active - \catcode`\<=\active - \catcode`\>=\active - \catcode`\\=\active - \catcode`\^=\active - \catcode`\_=\active - \catcode`\|=\active - \catcode`\~=\active -} - - -% Read the toc file, which is essentially Texinfo input. -\def\readtocfile{% - \setupdatafile - \activecatcodes - \input \tocreadfilename -} - -\newskip\contentsrightmargin \contentsrightmargin=1in -\newcount\savepageno -\newcount\lastnegativepageno \lastnegativepageno = -1 - -% Prepare to read what we've written to \tocfile. -% -\def\startcontents#1{% - % If @setchapternewpage on, and @headings double, the contents should - % start on an odd page, unlike chapters. Thus, we maintain - % \contentsalignmacro in parallel with \pagealignmacro. - % From: Torbjorn Granlund - \contentsalignmacro - \immediate\closeout\tocfile - % - % Don't need to put `Contents' or `Short Contents' in the headline. - % It is abundantly clear what they are. - \chapmacro{#1}{Yomitfromtoc}{}% - % - \savepageno = \pageno - \begingroup % Set up to handle contents files properly. - \raggedbottom % Worry more about breakpoints than the bottom. - \advance\hsize by -\contentsrightmargin % Don't use the full line length. - % - % Roman numerals for page numbers. - \ifnum \pageno>0 \global\pageno = \lastnegativepageno \fi -} - -% redefined for the two-volume lispref. We always output on -% \jobname.toc even if this is redefined. -% -\def\tocreadfilename{\jobname.toc} - -% Normal (long) toc. -% -\def\contents{% - \startcontents{\putwordTOC}% - \openin 1 \tocreadfilename\space - \ifeof 1 \else - \readtocfile - \fi - \vfill \eject - \contentsalignmacro % in case @setchapternewpage odd is in effect - \ifeof 1 \else - \pdfmakeoutlines - \fi - \closein 1 - \endgroup - \lastnegativepageno = \pageno - \global\pageno = \savepageno -} - -% And just the chapters. -\def\summarycontents{% - \startcontents{\putwordShortTOC}% - % - \let\numchapentry = \shortchapentry - \let\appentry = \shortchapentry - \let\unnchapentry = \shortunnchapentry - % We want a true roman here for the page numbers. - \secfonts - \let\rm=\shortcontrm \let\bf=\shortcontbf - \let\sl=\shortcontsl \let\tt=\shortconttt - \rm - \hyphenpenalty = 10000 - \advance\baselineskip by 1pt % Open it up a little. - \def\numsecentry##1##2##3##4{} - \let\appsecentry = \numsecentry - \let\unnsecentry = \numsecentry - \let\numsubsecentry = \numsecentry - \let\appsubsecentry = \numsecentry - \let\unnsubsecentry = \numsecentry - \let\numsubsubsecentry = \numsecentry - \let\appsubsubsecentry = \numsecentry - \let\unnsubsubsecentry = \numsecentry - \openin 1 \tocreadfilename\space - \ifeof 1 \else - \readtocfile - \fi - \closein 1 - \vfill \eject - \contentsalignmacro % in case @setchapternewpage odd is in effect - \endgroup - \lastnegativepageno = \pageno - \global\pageno = \savepageno -} -\let\shortcontents = \summarycontents - -% Typeset the label for a chapter or appendix for the short contents. -% The arg is, e.g., `A' for an appendix, or `3' for a chapter. -% -\def\shortchaplabel#1{% - % This space should be enough, since a single number is .5em, and the - % widest letter (M) is 1em, at least in the Computer Modern fonts. - % But use \hss just in case. - % (This space doesn't include the extra space that gets added after - % the label; that gets put in by \shortchapentry above.) - % - % We'd like to right-justify chapter numbers, but that looks strange - % with appendix letters. And right-justifying numbers and - % left-justifying letters looks strange when there is less than 10 - % chapters. Have to read the whole toc once to know how many chapters - % there are before deciding ... - \hbox to 1em{#1\hss}% -} - -% These macros generate individual entries in the table of contents. -% The first argument is the chapter or section name. -% The last argument is the page number. -% The arguments in between are the chapter number, section number, ... - -% Chapters, in the main contents. -\def\numchapentry#1#2#3#4{\dochapentry{#2\labelspace#1}{#4}} -% -% Chapters, in the short toc. -% See comments in \dochapentry re vbox and related settings. -\def\shortchapentry#1#2#3#4{% - \tocentry{\shortchaplabel{#2}\labelspace #1}{\doshortpageno\bgroup#4\egroup}% -} - -% Appendices, in the main contents. -% Need the word Appendix, and a fixed-size box. -% -\def\appendixbox#1{% - % We use M since it's probably the widest letter. - \setbox0 = \hbox{\putwordAppendix{} M}% - \hbox to \wd0{\putwordAppendix{} #1\hss}} -% -\def\appentry#1#2#3#4{\dochapentry{\appendixbox{#2}\labelspace#1}{#4}} - -% Unnumbered chapters. -\def\unnchapentry#1#2#3#4{\dochapentry{#1}{#4}} -\def\shortunnchapentry#1#2#3#4{\tocentry{#1}{\doshortpageno\bgroup#4\egroup}} - -% Sections. -\def\numsecentry#1#2#3#4{\dosecentry{#2\labelspace#1}{#4}} -\let\appsecentry=\numsecentry -\def\unnsecentry#1#2#3#4{\dosecentry{#1}{#4}} - -% Subsections. -\def\numsubsecentry#1#2#3#4{\dosubsecentry{#2\labelspace#1}{#4}} -\let\appsubsecentry=\numsubsecentry -\def\unnsubsecentry#1#2#3#4{\dosubsecentry{#1}{#4}} - -% And subsubsections. -\def\numsubsubsecentry#1#2#3#4{\dosubsubsecentry{#2\labelspace#1}{#4}} -\let\appsubsubsecentry=\numsubsubsecentry -\def\unnsubsubsecentry#1#2#3#4{\dosubsubsecentry{#1}{#4}} - -% This parameter controls the indentation of the various levels. -% Same as \defaultparindent. -\newdimen\tocindent \tocindent = 15pt - -% Now for the actual typesetting. In all these, #1 is the text and #2 is the -% page number. -% -% If the toc has to be broken over pages, we want it to be at chapters -% if at all possible; hence the \penalty. -\def\dochapentry#1#2{% - \penalty-300 \vskip1\baselineskip plus.33\baselineskip minus.25\baselineskip - \begingroup - \chapentryfonts - \tocentry{#1}{\dopageno\bgroup#2\egroup}% - \endgroup - \nobreak\vskip .25\baselineskip plus.1\baselineskip -} - -\def\dosecentry#1#2{\begingroup - \secentryfonts \leftskip=\tocindent - \tocentry{#1}{\dopageno\bgroup#2\egroup}% -\endgroup} - -\def\dosubsecentry#1#2{\begingroup - \subsecentryfonts \leftskip=2\tocindent - \tocentry{#1}{\dopageno\bgroup#2\egroup}% -\endgroup} - -\def\dosubsubsecentry#1#2{\begingroup - \subsubsecentryfonts \leftskip=3\tocindent - \tocentry{#1}{\dopageno\bgroup#2\egroup}% -\endgroup} - -% We use the same \entry macro as for the index entries. -\let\tocentry = \entry - -% Space between chapter (or whatever) number and the title. -\def\labelspace{\hskip1em \relax} - -\def\dopageno#1{{\rm #1}} -\def\doshortpageno#1{{\rm #1}} - -\def\chapentryfonts{\secfonts \rm} -\def\secentryfonts{\textfonts} -\def\subsecentryfonts{\textfonts} -\def\subsubsecentryfonts{\textfonts} - - -\message{environments,} -% @foo ... @end foo. - -% @point{}, @result{}, @expansion{}, @print{}, @equiv{}. -% -% Since these characters are used in examples, it should be an even number of -% \tt widths. Each \tt character is 1en, so two makes it 1em. -% -\def\point{$\star$} -\def\result{\leavevmode\raise.15ex\hbox to 1em{\hfil$\Rightarrow$\hfil}} -\def\expansion{\leavevmode\raise.1ex\hbox to 1em{\hfil$\mapsto$\hfil}} -\def\print{\leavevmode\lower.1ex\hbox to 1em{\hfil$\dashv$\hfil}} -\def\equiv{\leavevmode\lower.1ex\hbox to 1em{\hfil$\ptexequiv$\hfil}} - -% The @error{} command. -% Adapted from the TeXbook's \boxit. -% -\newbox\errorbox -% -{\tentt \global\dimen0 = 3em}% Width of the box. -\dimen2 = .55pt % Thickness of rules -% The text. (`r' is open on the right, `e' somewhat less so on the left.) -\setbox0 = \hbox{\kern-.75pt \reducedsf error\kern-1.5pt} -% -\setbox\errorbox=\hbox to \dimen0{\hfil - \hsize = \dimen0 \advance\hsize by -5.8pt % Space to left+right. - \advance\hsize by -2\dimen2 % Rules. - \vbox{% - \hrule height\dimen2 - \hbox{\vrule width\dimen2 \kern3pt % Space to left of text. - \vtop{\kern2.4pt \box0 \kern2.4pt}% Space above/below. - \kern3pt\vrule width\dimen2}% Space to right. - \hrule height\dimen2} - \hfil} -% -\def\error{\leavevmode\lower.7ex\copy\errorbox} - -% @tex ... @end tex escapes into raw Tex temporarily. -% One exception: @ is still an escape character, so that @end tex works. -% But \@ or @@ will get a plain tex @ character. - -\envdef\tex{% - \catcode `\\=0 \catcode `\{=1 \catcode `\}=2 - \catcode `\$=3 \catcode `\&=4 \catcode `\#=6 - \catcode `\^=7 \catcode `\_=8 \catcode `\~=\active \let~=\tie - \catcode `\%=14 - \catcode `\+=\other - \catcode `\"=\other - \catcode `\|=\other - \catcode `\<=\other - \catcode `\>=\other - \escapechar=`\\ - % - \let\b=\ptexb - \let\bullet=\ptexbullet - \let\c=\ptexc - \let\,=\ptexcomma - \let\.=\ptexdot - \let\dots=\ptexdots - \let\equiv=\ptexequiv - \let\!=\ptexexclam - \let\i=\ptexi - \let\indent=\ptexindent - \let\noindent=\ptexnoindent - \let\{=\ptexlbrace - \let\+=\tabalign - \let\}=\ptexrbrace - \let\/=\ptexslash - \let\*=\ptexstar - \let\t=\ptext - \let\frenchspacing=\plainfrenchspacing - % - \def\endldots{\mathinner{\ldots\ldots\ldots\ldots}}% - \def\enddots{\relax\ifmmode\endldots\else$\mathsurround=0pt \endldots\,$\fi}% - \def\@{@}% -} -% There is no need to define \Etex. - -% Define @lisp ... @end lisp. -% @lisp environment forms a group so it can rebind things, -% including the definition of @end lisp (which normally is erroneous). - -% Amount to narrow the margins by for @lisp. -\newskip\lispnarrowing \lispnarrowing=0.4in - -% This is the definition that ^^M gets inside @lisp, @example, and other -% such environments. \null is better than a space, since it doesn't -% have any width. -\def\lisppar{\null\endgraf} - -% This space is always present above and below environments. -\newskip\envskipamount \envskipamount = 0pt - -% Make spacing and below environment symmetrical. We use \parskip here -% to help in doing that, since in @example-like environments \parskip -% is reset to zero; thus the \afterenvbreak inserts no space -- but the -% start of the next paragraph will insert \parskip. -% -\def\aboveenvbreak{{% - % =10000 instead of <10000 because of a special case in \itemzzz and - % \sectionheading, q.v. - \ifnum \lastpenalty=10000 \else - \advance\envskipamount by \parskip - \endgraf - \ifdim\lastskip<\envskipamount - \removelastskip - % it's not a good place to break if the last penalty was \nobreak - % or better ... - \ifnum\lastpenalty<10000 \penalty-50 \fi - \vskip\envskipamount - \fi - \fi -}} - -\let\afterenvbreak = \aboveenvbreak - -% \nonarrowing is a flag. If "set", @lisp etc don't narrow margins; it will -% also clear it, so that its embedded environments do the narrowing again. -\let\nonarrowing=\relax - -% @cartouche ... @end cartouche: draw rectangle w/rounded corners around -% environment contents. -\font\circle=lcircle10 -\newdimen\circthick -\newdimen\cartouter\newdimen\cartinner -\newskip\normbskip\newskip\normpskip\newskip\normlskip -\circthick=\fontdimen8\circle -% -\def\ctl{{\circle\char'013\hskip -6pt}}% 6pt from pl file: 1/2charwidth -\def\ctr{{\hskip 6pt\circle\char'010}} -\def\cbl{{\circle\char'012\hskip -6pt}} -\def\cbr{{\hskip 6pt\circle\char'011}} -\def\carttop{\hbox to \cartouter{\hskip\lskip - \ctl\leaders\hrule height\circthick\hfil\ctr - \hskip\rskip}} -\def\cartbot{\hbox to \cartouter{\hskip\lskip - \cbl\leaders\hrule height\circthick\hfil\cbr - \hskip\rskip}} -% -\newskip\lskip\newskip\rskip - -\envdef\cartouche{% - \ifhmode\par\fi % can't be in the midst of a paragraph. - \startsavinginserts - \lskip=\leftskip \rskip=\rightskip - \leftskip=0pt\rightskip=0pt % we want these *outside*. - \cartinner=\hsize \advance\cartinner by-\lskip - \advance\cartinner by-\rskip - \cartouter=\hsize - \advance\cartouter by 18.4pt % allow for 3pt kerns on either - % side, and for 6pt waste from - % each corner char, and rule thickness - \normbskip=\baselineskip \normpskip=\parskip \normlskip=\lineskip - % Flag to tell @lisp, etc., not to narrow margin. - \let\nonarrowing = t% - \vbox\bgroup - \baselineskip=0pt\parskip=0pt\lineskip=0pt - \carttop - \hbox\bgroup - \hskip\lskip - \vrule\kern3pt - \vbox\bgroup - \kern3pt - \hsize=\cartinner - \baselineskip=\normbskip - \lineskip=\normlskip - \parskip=\normpskip - \vskip -\parskip - \comment % For explanation, see the end of \def\group. -} -\def\Ecartouche{% - \ifhmode\par\fi - \kern3pt - \egroup - \kern3pt\vrule - \hskip\rskip - \egroup - \cartbot - \egroup - \checkinserts -} - - -% This macro is called at the beginning of all the @example variants, -% inside a group. -\def\nonfillstart{% - \aboveenvbreak - \hfuzz = 12pt % Don't be fussy - \sepspaces % Make spaces be word-separators rather than space tokens. - \let\par = \lisppar % don't ignore blank lines - \obeylines % each line of input is a line of output - \parskip = 0pt - \parindent = 0pt - \emergencystretch = 0pt % don't try to avoid overfull boxes - \ifx\nonarrowing\relax - \advance \leftskip by \lispnarrowing - \exdentamount=\lispnarrowing - \else - \let\nonarrowing = \relax - \fi - \let\exdent=\nofillexdent -} - -% If you want all examples etc. small: @set dispenvsize small. -% If you want even small examples the full size: @set dispenvsize nosmall. -% This affects the following displayed environments: -% @example, @display, @format, @lisp -% -\def\smallword{small} -\def\nosmallword{nosmall} -\let\SETdispenvsize\relax -\def\setnormaldispenv{% - \ifx\SETdispenvsize\smallword - % end paragraph for sake of leading, in case document has no blank - % line. This is redundant with what happens in \aboveenvbreak, but - % we need to do it before changing the fonts, and it's inconvenient - % to change the fonts afterward. - \ifnum \lastpenalty=10000 \else \endgraf \fi - \smallexamplefonts \rm - \fi -} -\def\setsmalldispenv{% - \ifx\SETdispenvsize\nosmallword - \else - \ifnum \lastpenalty=10000 \else \endgraf \fi - \smallexamplefonts \rm - \fi -} - -% We often define two environments, @foo and @smallfoo. -% Let's do it by one command: -\def\makedispenv #1#2{ - \expandafter\envdef\csname#1\endcsname {\setnormaldispenv #2} - \expandafter\envdef\csname small#1\endcsname {\setsmalldispenv #2} - \expandafter\let\csname E#1\endcsname \afterenvbreak - \expandafter\let\csname Esmall#1\endcsname \afterenvbreak -} - -% Define two synonyms: -\def\maketwodispenvs #1#2#3{ - \makedispenv{#1}{#3} - \makedispenv{#2}{#3} -} - -% @lisp: indented, narrowed, typewriter font; @example: same as @lisp. -% -% @smallexample and @smalllisp: use smaller fonts. -% Originally contributed by Pavel@xerox. -% -\maketwodispenvs {lisp}{example}{% - \nonfillstart - \tt\quoteexpand - \let\kbdfont = \kbdexamplefont % Allow @kbd to do something special. - \gobble % eat return -} -% @display/@smalldisplay: same as @lisp except keep current font. -% -\makedispenv {display}{% - \nonfillstart - \gobble -} - -% @format/@smallformat: same as @display except don't narrow margins. -% -\makedispenv{format}{% - \let\nonarrowing = t% - \nonfillstart - \gobble -} - -% @flushleft: same as @format, but doesn't obey \SETdispenvsize. -\envdef\flushleft{% - \let\nonarrowing = t% - \nonfillstart - \gobble -} -\let\Eflushleft = \afterenvbreak - -% @flushright. -% -\envdef\flushright{% - \let\nonarrowing = t% - \nonfillstart - \advance\leftskip by 0pt plus 1fill - \gobble -} -\let\Eflushright = \afterenvbreak - - -% @quotation does normal linebreaking (hence we can't use \nonfillstart) -% and narrows the margins. We keep \parskip nonzero in general, since -% we're doing normal filling. So, when using \aboveenvbreak and -% \afterenvbreak, temporarily make \parskip 0. -% -\envdef\quotation{% - {\parskip=0pt \aboveenvbreak}% because \aboveenvbreak inserts \parskip - \parindent=0pt - % - % @cartouche defines \nonarrowing to inhibit narrowing at next level down. - \ifx\nonarrowing\relax - \advance\leftskip by \lispnarrowing - \advance\rightskip by \lispnarrowing - \exdentamount = \lispnarrowing - \else - \let\nonarrowing = \relax - \fi - \parsearg\quotationlabel -} - -% We have retained a nonzero parskip for the environment, since we're -% doing normal filling. -% -\def\Equotation{% - \par - \ifx\quotationauthor\undefined\else - % indent a bit. - \leftline{\kern 2\leftskip \sl ---\quotationauthor}% - \fi - {\parskip=0pt \afterenvbreak}% -} - -% If we're given an argument, typeset it in bold with a colon after. -\def\quotationlabel#1{% - \def\temp{#1}% - \ifx\temp\empty \else - {\bf #1: }% - \fi -} - - -% LaTeX-like @verbatim...@end verbatim and @verb{...} -% If we want to allow any as delimiter, -% we need the curly braces so that makeinfo sees the @verb command, eg: -% `@verbx...x' would look like the '@verbx' command. --janneke@gnu.org -% -% [Knuth]: Donald Ervin Knuth, 1996. The TeXbook. -% -% [Knuth] p.344; only we need to do the other characters Texinfo sets -% active too. Otherwise, they get lost as the first character on a -% verbatim line. -\def\dospecials{% - \do\ \do\\\do\{\do\}\do\$\do\&% - \do\#\do\^\do\^^K\do\_\do\^^A\do\%\do\~% - \do\<\do\>\do\|\do\@\do+\do\"% -} -% -% [Knuth] p. 380 -\def\uncatcodespecials{% - \def\do##1{\catcode`##1=\other}\dospecials} -% -% [Knuth] pp. 380,381,391 -% Disable Spanish ligatures ?` and !` of \tt font -\begingroup - \catcode`\`=\active\gdef`{\relax\lq} -\endgroup -% -% Setup for the @verb command. -% -% Eight spaces for a tab -\begingroup - \catcode`\^^I=\active - \gdef\tabeightspaces{\catcode`\^^I=\active\def^^I{\ \ \ \ \ \ \ \ }} -\endgroup -% -\def\setupverb{% - \tt % easiest (and conventionally used) font for verbatim - \def\par{\leavevmode\endgraf}% - \catcode`\`=\active - \tabeightspaces - % Respect line breaks, - % print special symbols as themselves, and - % make each space count - % must do in this order: - \obeylines \uncatcodespecials \sepspaces -} - -% Setup for the @verbatim environment -% -% Real tab expansion -\newdimen\tabw \setbox0=\hbox{\tt\space} \tabw=8\wd0 % tab amount -% -\def\starttabbox{\setbox0=\hbox\bgroup} - -% Allow an option to not replace quotes with a regular directed right -% quote/apostrophe (char 0x27), but instead use the undirected quote -% from cmtt (char 0x0d). The undirected quote is ugly, so don't make it -% the default, but it works for pasting with more pdf viewers (at least -% evince), the lilypond developers report. xpdf does work with the -% regular 0x27. -% -\def\codequoteright{% - \expandafter\ifx\csname SETtxicodequoteundirected\endcsname\relax - \expandafter\ifx\csname SETcodequoteundirected\endcsname\relax - '% - \else \char'15 \fi - \else \char'15 \fi -} -% -% and a similar option for the left quote char vs. a grave accent. -% Modern fonts display ASCII 0x60 as a grave accent, so some people like -% the code environments to do likewise. -% -\def\codequoteleft{% - \expandafter\ifx\csname SETtxicodequotebacktick\endcsname\relax - \expandafter\ifx\csname SETcodequotebacktick\endcsname\relax - `% - \else \char'22 \fi - \else \char'22 \fi -} -% -\begingroup - \catcode`\^^I=\active - \gdef\tabexpand{% - \catcode`\^^I=\active - \def^^I{\leavevmode\egroup - \dimen0=\wd0 % the width so far, or since the previous tab - \divide\dimen0 by\tabw - \multiply\dimen0 by\tabw % compute previous multiple of \tabw - \advance\dimen0 by\tabw % advance to next multiple of \tabw - \wd0=\dimen0 \box0 \starttabbox - }% - } - \catcode`\'=\active - \gdef\rquoteexpand{\catcode\rquoteChar=\active \def'{\codequoteright}}% - % - \catcode`\`=\active - \gdef\lquoteexpand{\catcode\lquoteChar=\active \def`{\codequoteleft}}% - % - \gdef\quoteexpand{\rquoteexpand \lquoteexpand}% -\endgroup - -% start the verbatim environment. -\def\setupverbatim{% - \let\nonarrowing = t% - \nonfillstart - % Easiest (and conventionally used) font for verbatim - \tt - \def\par{\leavevmode\egroup\box0\endgraf}% - \catcode`\`=\active - \tabexpand - \quoteexpand - % Respect line breaks, - % print special symbols as themselves, and - % make each space count - % must do in this order: - \obeylines \uncatcodespecials \sepspaces - \everypar{\starttabbox}% -} - -% Do the @verb magic: verbatim text is quoted by unique -% delimiter characters. Before first delimiter expect a -% right brace, after last delimiter expect closing brace: -% -% \def\doverb'{'#1'}'{#1} -% -% [Knuth] p. 382; only eat outer {} -\begingroup - \catcode`[=1\catcode`]=2\catcode`\{=\other\catcode`\}=\other - \gdef\doverb{#1[\def\next##1#1}[##1\endgroup]\next] -\endgroup -% -\def\verb{\begingroup\setupverb\doverb} -% -% -% Do the @verbatim magic: define the macro \doverbatim so that -% the (first) argument ends when '@end verbatim' is reached, ie: -% -% \def\doverbatim#1@end verbatim{#1} -% -% For Texinfo it's a lot easier than for LaTeX, -% because texinfo's \verbatim doesn't stop at '\end{verbatim}': -% we need not redefine '\', '{' and '}'. -% -% Inspired by LaTeX's verbatim command set [latex.ltx] -% -\begingroup - \catcode`\ =\active - \obeylines % - % ignore everything up to the first ^^M, that's the newline at the end - % of the @verbatim input line itself. Otherwise we get an extra blank - % line in the output. - \xdef\doverbatim#1^^M#2@end verbatim{#2\noexpand\end\gobble verbatim}% - % We really want {...\end verbatim} in the body of the macro, but - % without the active space; thus we have to use \xdef and \gobble. -\endgroup -% -\envdef\verbatim{% - \setupverbatim\doverbatim -} -\let\Everbatim = \afterenvbreak - - -% @verbatiminclude FILE - insert text of file in verbatim environment. -% -\def\verbatiminclude{\parseargusing\filenamecatcodes\doverbatiminclude} -% -\def\doverbatiminclude#1{% - {% - \makevalueexpandable - \setupverbatim - \input #1 - \afterenvbreak - }% -} - -% @copying ... @end copying. -% Save the text away for @insertcopying later. -% -% We save the uninterpreted tokens, rather than creating a box. -% Saving the text in a box would be much easier, but then all the -% typesetting commands (@smallbook, font changes, etc.) have to be done -% beforehand -- and a) we want @copying to be done first in the source -% file; b) letting users define the frontmatter in as flexible order as -% possible is very desirable. -% -\def\copying{\checkenv{}\begingroup\scanargctxt\docopying} -\def\docopying#1@end copying{\endgroup\def\copyingtext{#1}} -% -\def\insertcopying{% - \begingroup - \parindent = 0pt % paragraph indentation looks wrong on title page - \scanexp\copyingtext - \endgroup -} - - -\message{defuns,} -% @defun etc. - -\newskip\defbodyindent \defbodyindent=.4in -\newskip\defargsindent \defargsindent=50pt -\newskip\deflastargmargin \deflastargmargin=18pt -\newcount\defunpenalty - -% Start the processing of @deffn: -\def\startdefun{% - \ifnum\lastpenalty<10000 - \medbreak - \defunpenalty=10003 % Will keep this @deffn together with the - % following @def command, see below. - \else - % If there are two @def commands in a row, we'll have a \nobreak, - % which is there to keep the function description together with its - % header. But if there's nothing but headers, we need to allow a - % break somewhere. Check specifically for penalty 10002, inserted - % by \printdefunline, instead of 10000, since the sectioning - % commands also insert a nobreak penalty, and we don't want to allow - % a break between a section heading and a defun. - % - % As a minor refinement, we avoid "club" headers by signalling - % with penalty of 10003 after the very first @deffn in the - % sequence (see above), and penalty of 10002 after any following - % @def command. - \ifnum\lastpenalty=10002 \penalty2000 \else \defunpenalty=10002 \fi - % - % Similarly, after a section heading, do not allow a break. - % But do insert the glue. - \medskip % preceded by discardable penalty, so not a breakpoint - \fi - % - \parindent=0in - \advance\leftskip by \defbodyindent - \exdentamount=\defbodyindent -} - -\def\dodefunx#1{% - % First, check whether we are in the right environment: - \checkenv#1% - % - % As above, allow line break if we have multiple x headers in a row. - % It's not a great place, though. - \ifnum\lastpenalty=10002 \penalty3000 \else \defunpenalty=10002 \fi - % - % And now, it's time to reuse the body of the original defun: - \expandafter\gobbledefun#1% -} -\def\gobbledefun#1\startdefun{} - -% \printdefunline \deffnheader{text} -% -\def\printdefunline#1#2{% - \begingroup - % call \deffnheader: - #1#2 \endheader - % common ending: - \interlinepenalty = 10000 - \advance\rightskip by 0pt plus 1fil - \endgraf - \nobreak\vskip -\parskip - \penalty\defunpenalty % signal to \startdefun and \dodefunx - % Some of the @defun-type tags do not enable magic parentheses, - % rendering the following check redundant. But we don't optimize. - \checkparencounts - \endgroup -} - -\def\Edefun{\endgraf\medbreak} - -% \makedefun{deffn} creates \deffn, \deffnx and \Edeffn; -% the only thing remainnig is to define \deffnheader. -% -\def\makedefun#1{% - \expandafter\let\csname E#1\endcsname = \Edefun - \edef\temp{\noexpand\domakedefun - \makecsname{#1}\makecsname{#1x}\makecsname{#1header}}% - \temp -} - -% \domakedefun \deffn \deffnx \deffnheader -% -% Define \deffn and \deffnx, without parameters. -% \deffnheader has to be defined explicitly. -% -\def\domakedefun#1#2#3{% - \envdef#1{% - \startdefun - \parseargusing\activeparens{\printdefunline#3}% - }% - \def#2{\dodefunx#1}% - \def#3% -} - -%%% Untyped functions: - -% @deffn category name args -\makedefun{deffn}{\deffngeneral{}} - -% @deffn category class name args -\makedefun{defop}#1 {\defopon{#1\ \putwordon}} - -% \defopon {category on}class name args -\def\defopon#1#2 {\deffngeneral{\putwordon\ \code{#2}}{#1\ \code{#2}} } - -% \deffngeneral {subind}category name args -% -\def\deffngeneral#1#2 #3 #4\endheader{% - % Remember that \dosubind{fn}{foo}{} is equivalent to \doind{fn}{foo}. - \dosubind{fn}{\code{#3}}{#1}% - \defname{#2}{}{#3}\magicamp\defunargs{#4\unskip}% -} - -%%% Typed functions: - -% @deftypefn category type name args -\makedefun{deftypefn}{\deftypefngeneral{}} - -% @deftypeop category class type name args -\makedefun{deftypeop}#1 {\deftypeopon{#1\ \putwordon}} - -% \deftypeopon {category on}class type name args -\def\deftypeopon#1#2 {\deftypefngeneral{\putwordon\ \code{#2}}{#1\ \code{#2}} } - -% \deftypefngeneral {subind}category type name args -% -\def\deftypefngeneral#1#2 #3 #4 #5\endheader{% - \dosubind{fn}{\code{#4}}{#1}% - \defname{#2}{#3}{#4}\defunargs{#5\unskip}% -} - -%%% Typed variables: - -% @deftypevr category type var args -\makedefun{deftypevr}{\deftypecvgeneral{}} - -% @deftypecv category class type var args -\makedefun{deftypecv}#1 {\deftypecvof{#1\ \putwordof}} - -% \deftypecvof {category of}class type var args -\def\deftypecvof#1#2 {\deftypecvgeneral{\putwordof\ \code{#2}}{#1\ \code{#2}} } - -% \deftypecvgeneral {subind}category type var args -% -\def\deftypecvgeneral#1#2 #3 #4 #5\endheader{% - \dosubind{vr}{\code{#4}}{#1}% - \defname{#2}{#3}{#4}\defunargs{#5\unskip}% -} - -%%% Untyped variables: - -% @defvr category var args -\makedefun{defvr}#1 {\deftypevrheader{#1} {} } - -% @defcv category class var args -\makedefun{defcv}#1 {\defcvof{#1\ \putwordof}} - -% \defcvof {category of}class var args -\def\defcvof#1#2 {\deftypecvof{#1}#2 {} } - -%%% Type: -% @deftp category name args -\makedefun{deftp}#1 #2 #3\endheader{% - \doind{tp}{\code{#2}}% - \defname{#1}{}{#2}\defunargs{#3\unskip}% -} - -% Remaining @defun-like shortcuts: -\makedefun{defun}{\deffnheader{\putwordDeffunc} } -\makedefun{defmac}{\deffnheader{\putwordDefmac} } -\makedefun{defspec}{\deffnheader{\putwordDefspec} } -\makedefun{deftypefun}{\deftypefnheader{\putwordDeffunc} } -\makedefun{defvar}{\defvrheader{\putwordDefvar} } -\makedefun{defopt}{\defvrheader{\putwordDefopt} } -\makedefun{deftypevar}{\deftypevrheader{\putwordDefvar} } -\makedefun{defmethod}{\defopon\putwordMethodon} -\makedefun{deftypemethod}{\deftypeopon\putwordMethodon} -\makedefun{defivar}{\defcvof\putwordInstanceVariableof} -\makedefun{deftypeivar}{\deftypecvof\putwordInstanceVariableof} - -% \defname, which formats the name of the @def (not the args). -% #1 is the category, such as "Function". -% #2 is the return type, if any. -% #3 is the function name. -% -% We are followed by (but not passed) the arguments, if any. -% -\def\defname#1#2#3{% - % Get the values of \leftskip and \rightskip as they were outside the @def... - \advance\leftskip by -\defbodyindent - % - % How we'll format the type name. Putting it in brackets helps - % distinguish it from the body text that may end up on the next line - % just below it. - \def\temp{#1}% - \setbox0=\hbox{\kern\deflastargmargin \ifx\temp\empty\else [\rm\temp]\fi} - % - % Figure out line sizes for the paragraph shape. - % The first line needs space for \box0; but if \rightskip is nonzero, - % we need only space for the part of \box0 which exceeds it: - \dimen0=\hsize \advance\dimen0 by -\wd0 \advance\dimen0 by \rightskip - % The continuations: - \dimen2=\hsize \advance\dimen2 by -\defargsindent - % (plain.tex says that \dimen1 should be used only as global.) - \parshape 2 0in \dimen0 \defargsindent \dimen2 - % - % Put the type name to the right margin. - \noindent - \hbox to 0pt{% - \hfil\box0 \kern-\hsize - % \hsize has to be shortened this way: - \kern\leftskip - % Intentionally do not respect \rightskip, since we need the space. - }% - % - % Allow all lines to be underfull without complaint: - \tolerance=10000 \hbadness=10000 - \exdentamount=\defbodyindent - {% - % defun fonts. We use typewriter by default (used to be bold) because: - % . we're printing identifiers, they should be in tt in principle. - % . in languages with many accents, such as Czech or French, it's - % common to leave accents off identifiers. The result looks ok in - % tt, but exceedingly strange in rm. - % . we don't want -- and --- to be treated as ligatures. - % . this still does not fix the ?` and !` ligatures, but so far no - % one has made identifiers using them :). - \df \tt - \def\temp{#2}% return value type - \ifx\temp\empty\else \tclose{\temp} \fi - #3% output function name - }% - {\rm\enskip}% hskip 0.5 em of \tenrm - % - \boldbrax - % arguments will be output next, if any. -} - -% Print arguments in slanted roman (not ttsl), inconsistently with using -% tt for the name. This is because literal text is sometimes needed in -% the argument list (groff manual), and ttsl and tt are not very -% distinguishable. Prevent hyphenation at `-' chars. -% -\def\defunargs#1{% - % use sl by default (not ttsl), - % tt for the names. - \df \sl \hyphenchar\font=0 - % - % On the other hand, if an argument has two dashes (for instance), we - % want a way to get ttsl. Let's try @var for that. - \let\var=\ttslanted - #1% - \sl\hyphenchar\font=45 -} - -% We want ()&[] to print specially on the defun line. -% -\def\activeparens{% - \catcode`\(=\active \catcode`\)=\active - \catcode`\[=\active \catcode`\]=\active - \catcode`\&=\active -} - -% Make control sequences which act like normal parenthesis chars. -\let\lparen = ( \let\rparen = ) - -% Be sure that we always have a definition for `(', etc. For example, -% if the fn name has parens in it, \boldbrax will not be in effect yet, -% so TeX would otherwise complain about undefined control sequence. -{ - \activeparens - \global\let(=\lparen \global\let)=\rparen - \global\let[=\lbrack \global\let]=\rbrack - \global\let& = \& - - \gdef\boldbrax{\let(=\opnr\let)=\clnr\let[=\lbrb\let]=\rbrb} - \gdef\magicamp{\let&=\amprm} -} - -\newcount\parencount - -% If we encounter &foo, then turn on ()-hacking afterwards -\newif\ifampseen -\def\amprm#1 {\ampseentrue{\bf\ }} - -\def\parenfont{% - \ifampseen - % At the first level, print parens in roman, - % otherwise use the default font. - \ifnum \parencount=1 \rm \fi - \else - % The \sf parens (in \boldbrax) actually are a little bolder than - % the contained text. This is especially needed for [ and ] . - \sf - \fi -} -\def\infirstlevel#1{% - \ifampseen - \ifnum\parencount=1 - #1% - \fi - \fi -} -\def\bfafterword#1 {#1 \bf} - -\def\opnr{% - \global\advance\parencount by 1 - {\parenfont(}% - \infirstlevel \bfafterword -} -\def\clnr{% - {\parenfont)}% - \infirstlevel \sl - \global\advance\parencount by -1 -} - -\newcount\brackcount -\def\lbrb{% - \global\advance\brackcount by 1 - {\bf[}% -} -\def\rbrb{% - {\bf]}% - \global\advance\brackcount by -1 -} - -\def\checkparencounts{% - \ifnum\parencount=0 \else \badparencount \fi - \ifnum\brackcount=0 \else \badbrackcount \fi -} -% these should not use \errmessage; the glibc manual, at least, actually -% has such constructs (when documenting function pointers). -\def\badparencount{% - \message{Warning: unbalanced parentheses in @def...}% - \global\parencount=0 -} -\def\badbrackcount{% - \message{Warning: unbalanced square brackets in @def...}% - \global\brackcount=0 -} - - -\message{macros,} -% @macro. - -% To do this right we need a feature of e-TeX, \scantokens, -% which we arrange to emulate with a temporary file in ordinary TeX. -\ifx\eTeXversion\undefined - \newwrite\macscribble - \def\scantokens#1{% - \toks0={#1}% - \immediate\openout\macscribble=\jobname.tmp - \immediate\write\macscribble{\the\toks0}% - \immediate\closeout\macscribble - \input \jobname.tmp - } -\fi - -\def\scanmacro#1{% - \begingroup - \newlinechar`\^^M - \let\xeatspaces\eatspaces - % Undo catcode changes of \startcontents and \doprintindex - % When called from @insertcopying or (short)caption, we need active - % backslash to get it printed correctly. Previously, we had - % \catcode`\\=\other instead. We'll see whether a problem appears - % with macro expansion. --kasal, 19aug04 - \catcode`\@=0 \catcode`\\=\active \escapechar=`\@ - % ... and \example - \spaceisspace - % - % Append \endinput to make sure that TeX does not see the ending newline. - % I've verified that it is necessary both for e-TeX and for ordinary TeX - % --kasal, 29nov03 - \scantokens{#1\endinput}% - \endgroup -} - -\def\scanexp#1{% - \edef\temp{\noexpand\scanmacro{#1}}% - \temp -} - -\newcount\paramno % Count of parameters -\newtoks\macname % Macro name -\newif\ifrecursive % Is it recursive? - -% List of all defined macros in the form -% \definedummyword\macro1\definedummyword\macro2... -% Currently is also contains all @aliases; the list can be split -% if there is a need. -\def\macrolist{} - -% Add the macro to \macrolist -\def\addtomacrolist#1{\expandafter \addtomacrolistxxx \csname#1\endcsname} -\def\addtomacrolistxxx#1{% - \toks0 = \expandafter{\macrolist\definedummyword#1}% - \xdef\macrolist{\the\toks0}% -} - -% Utility routines. -% This does \let #1 = #2, with \csnames; that is, -% \let \csname#1\endcsname = \csname#2\endcsname -% (except of course we have to play expansion games). -% -\def\cslet#1#2{% - \expandafter\let - \csname#1\expandafter\endcsname - \csname#2\endcsname -} - -% Trim leading and trailing spaces off a string. -% Concepts from aro-bend problem 15 (see CTAN). -{\catcode`\@=11 -\gdef\eatspaces #1{\expandafter\trim@\expandafter{#1 }} -\gdef\trim@ #1{\trim@@ @#1 @ #1 @ @@} -\gdef\trim@@ #1@ #2@ #3@@{\trim@@@\empty #2 @} -\def\unbrace#1{#1} -\unbrace{\gdef\trim@@@ #1 } #2@{#1} -} - -% Trim a single trailing ^^M off a string. -{\catcode`\^^M=\other \catcode`\Q=3% -\gdef\eatcr #1{\eatcra #1Q^^MQ}% -\gdef\eatcra#1^^MQ{\eatcrb#1Q}% -\gdef\eatcrb#1Q#2Q{#1}% -} - -% Macro bodies are absorbed as an argument in a context where -% all characters are catcode 10, 11 or 12, except \ which is active -% (as in normal texinfo). It is necessary to change the definition of \. - -% Non-ASCII encodings make 8-bit characters active, so un-activate -% them to avoid their expansion. Must do this non-globally, to -% confine the change to the current group. - -% It's necessary to have hard CRs when the macro is executed. This is -% done by making ^^M (\endlinechar) catcode 12 when reading the macro -% body, and then making it the \newlinechar in \scanmacro. - -\def\scanctxt{% - \catcode`\"=\other - \catcode`\+=\other - \catcode`\<=\other - \catcode`\>=\other - \catcode`\@=\other - \catcode`\^=\other - \catcode`\_=\other - \catcode`\|=\other - \catcode`\~=\other - \ifx\declaredencoding\ascii \else \setnonasciicharscatcodenonglobal\other \fi -} - -\def\scanargctxt{% - \scanctxt - \catcode`\\=\other - \catcode`\^^M=\other -} - -\def\macrobodyctxt{% - \scanctxt - \catcode`\{=\other - \catcode`\}=\other - \catcode`\^^M=\other - \usembodybackslash -} - -\def\macroargctxt{% - \scanctxt - \catcode`\\=\other -} - -% \mbodybackslash is the definition of \ in @macro bodies. -% It maps \foo\ => \csname macarg.foo\endcsname => #N -% where N is the macro parameter number. -% We define \csname macarg.\endcsname to be \realbackslash, so -% \\ in macro replacement text gets you a backslash. - -{\catcode`@=0 @catcode`@\=@active - @gdef@usembodybackslash{@let\=@mbodybackslash} - @gdef@mbodybackslash#1\{@csname macarg.#1@endcsname} -} -\expandafter\def\csname macarg.\endcsname{\realbackslash} - -\def\macro{\recursivefalse\parsearg\macroxxx} -\def\rmacro{\recursivetrue\parsearg\macroxxx} - -\def\macroxxx#1{% - \getargs{#1}% now \macname is the macname and \argl the arglist - \ifx\argl\empty % no arguments - \paramno=0% - \else - \expandafter\parsemargdef \argl;% - \fi - \if1\csname ismacro.\the\macname\endcsname - \message{Warning: redefining \the\macname}% - \else - \expandafter\ifx\csname \the\macname\endcsname \relax - \else \errmessage{Macro name \the\macname\space already defined}\fi - \global\cslet{macsave.\the\macname}{\the\macname}% - \global\expandafter\let\csname ismacro.\the\macname\endcsname=1% - \addtomacrolist{\the\macname}% - \fi - \begingroup \macrobodyctxt - \ifrecursive \expandafter\parsermacbody - \else \expandafter\parsemacbody - \fi} - -\parseargdef\unmacro{% - \if1\csname ismacro.#1\endcsname - \global\cslet{#1}{macsave.#1}% - \global\expandafter\let \csname ismacro.#1\endcsname=0% - % Remove the macro name from \macrolist: - \begingroup - \expandafter\let\csname#1\endcsname \relax - \let\definedummyword\unmacrodo - \xdef\macrolist{\macrolist}% - \endgroup - \else - \errmessage{Macro #1 not defined}% - \fi -} - -% Called by \do from \dounmacro on each macro. The idea is to omit any -% macro definitions that have been changed to \relax. -% -\def\unmacrodo#1{% - \ifx #1\relax - % remove this - \else - \noexpand\definedummyword \noexpand#1% - \fi -} - -% This makes use of the obscure feature that if the last token of a -% is #, then the preceding argument is delimited by -% an opening brace, and that opening brace is not consumed. -\def\getargs#1{\getargsxxx#1{}} -\def\getargsxxx#1#{\getmacname #1 \relax\getmacargs} -\def\getmacname #1 #2\relax{\macname={#1}} -\def\getmacargs#1{\def\argl{#1}} - -% Parse the optional {params} list. Set up \paramno and \paramlist -% so \defmacro knows what to do. Define \macarg.blah for each blah -% in the params list, to be ##N where N is the position in that list. -% That gets used by \mbodybackslash (above). - -% We need to get `macro parameter char #' into several definitions. -% The technique used is stolen from LaTeX: let \hash be something -% unexpandable, insert that wherever you need a #, and then redefine -% it to # just before using the token list produced. -% -% The same technique is used to protect \eatspaces till just before -% the macro is used. - -\def\parsemargdef#1;{\paramno=0\def\paramlist{}% - \let\hash\relax\let\xeatspaces\relax\parsemargdefxxx#1,;,} -\def\parsemargdefxxx#1,{% - \if#1;\let\next=\relax - \else \let\next=\parsemargdefxxx - \advance\paramno by 1% - \expandafter\edef\csname macarg.\eatspaces{#1}\endcsname - {\xeatspaces{\hash\the\paramno}}% - \edef\paramlist{\paramlist\hash\the\paramno,}% - \fi\next} - -% These two commands read recursive and nonrecursive macro bodies. -% (They're different since rec and nonrec macros end differently.) - -\long\def\parsemacbody#1@end macro% -{\xdef\temp{\eatcr{#1}}\endgroup\defmacro}% -\long\def\parsermacbody#1@end rmacro% -{\xdef\temp{\eatcr{#1}}\endgroup\defmacro}% - -% This defines the macro itself. There are six cases: recursive and -% nonrecursive macros of zero, one, and many arguments. -% Much magic with \expandafter here. -% \xdef is used so that macro definitions will survive the file -% they're defined in; @include reads the file inside a group. -\def\defmacro{% - \let\hash=##% convert placeholders to macro parameter chars - \ifrecursive - \ifcase\paramno - % 0 - \expandafter\xdef\csname\the\macname\endcsname{% - \noexpand\scanmacro{\temp}}% - \or % 1 - \expandafter\xdef\csname\the\macname\endcsname{% - \bgroup\noexpand\macroargctxt - \noexpand\braceorline - \expandafter\noexpand\csname\the\macname xxx\endcsname}% - \expandafter\xdef\csname\the\macname xxx\endcsname##1{% - \egroup\noexpand\scanmacro{\temp}}% - \else % many - \expandafter\xdef\csname\the\macname\endcsname{% - \bgroup\noexpand\macroargctxt - \noexpand\csname\the\macname xx\endcsname}% - \expandafter\xdef\csname\the\macname xx\endcsname##1{% - \expandafter\noexpand\csname\the\macname xxx\endcsname ##1,}% - \expandafter\expandafter - \expandafter\xdef - \expandafter\expandafter - \csname\the\macname xxx\endcsname - \paramlist{\egroup\noexpand\scanmacro{\temp}}% - \fi - \else - \ifcase\paramno - % 0 - \expandafter\xdef\csname\the\macname\endcsname{% - \noexpand\norecurse{\the\macname}% - \noexpand\scanmacro{\temp}\egroup}% - \or % 1 - \expandafter\xdef\csname\the\macname\endcsname{% - \bgroup\noexpand\macroargctxt - \noexpand\braceorline - \expandafter\noexpand\csname\the\macname xxx\endcsname}% - \expandafter\xdef\csname\the\macname xxx\endcsname##1{% - \egroup - \noexpand\norecurse{\the\macname}% - \noexpand\scanmacro{\temp}\egroup}% - \else % many - \expandafter\xdef\csname\the\macname\endcsname{% - \bgroup\noexpand\macroargctxt - \expandafter\noexpand\csname\the\macname xx\endcsname}% - \expandafter\xdef\csname\the\macname xx\endcsname##1{% - \expandafter\noexpand\csname\the\macname xxx\endcsname ##1,}% - \expandafter\expandafter - \expandafter\xdef - \expandafter\expandafter - \csname\the\macname xxx\endcsname - \paramlist{% - \egroup - \noexpand\norecurse{\the\macname}% - \noexpand\scanmacro{\temp}\egroup}% - \fi - \fi} - -\def\norecurse#1{\bgroup\cslet{#1}{macsave.#1}} - -% \braceorline decides whether the next nonwhitespace character is a -% {. If so it reads up to the closing }, if not, it reads the whole -% line. Whatever was read is then fed to the next control sequence -% as an argument (by \parsebrace or \parsearg) -\def\braceorline#1{\let\macnamexxx=#1\futurelet\nchar\braceorlinexxx} -\def\braceorlinexxx{% - \ifx\nchar\bgroup\else - \expandafter\parsearg - \fi \macnamexxx} - - -% @alias. -% We need some trickery to remove the optional spaces around the equal -% sign. Just make them active and then expand them all to nothing. -\def\alias{\parseargusing\obeyspaces\aliasxxx} -\def\aliasxxx #1{\aliasyyy#1\relax} -\def\aliasyyy #1=#2\relax{% - {% - \expandafter\let\obeyedspace=\empty - \addtomacrolist{#1}% - \xdef\next{\global\let\makecsname{#1}=\makecsname{#2}}% - }% - \next -} - - -\message{cross references,} - -\newwrite\auxfile -\newif\ifhavexrefs % True if xref values are known. -\newif\ifwarnedxrefs % True if we warned once that they aren't known. - -% @inforef is relatively simple. -\def\inforef #1{\inforefzzz #1,,,,**} -\def\inforefzzz #1,#2,#3,#4**{\putwordSee{} \putwordInfo{} \putwordfile{} \file{\ignorespaces #3{}}, - node \samp{\ignorespaces#1{}}} - -% @node's only job in TeX is to define \lastnode, which is used in -% cross-references. The @node line might or might not have commas, and -% might or might not have spaces before the first comma, like: -% @node foo , bar , ... -% We don't want such trailing spaces in the node name. -% -\parseargdef\node{\checkenv{}\donode #1 ,\finishnodeparse} -% -% also remove a trailing comma, in case of something like this: -% @node Help-Cross, , , Cross-refs -\def\donode#1 ,#2\finishnodeparse{\dodonode #1,\finishnodeparse} -\def\dodonode#1,#2\finishnodeparse{\gdef\lastnode{#1}} - -\let\nwnode=\node -\let\lastnode=\empty - -% Write a cross-reference definition for the current node. #1 is the -% type (Ynumbered, Yappendix, Ynothing). -% -\def\donoderef#1{% - \ifx\lastnode\empty\else - \setref{\lastnode}{#1}% - \global\let\lastnode=\empty - \fi -} - -% @anchor{NAME} -- define xref target at arbitrary point. -% -\newcount\savesfregister -% -\def\savesf{\relax \ifhmode \savesfregister=\spacefactor \fi} -\def\restoresf{\relax \ifhmode \spacefactor=\savesfregister \fi} -\def\anchor#1{\savesf \setref{#1}{Ynothing}\restoresf \ignorespaces} - -% \setref{NAME}{SNT} defines a cross-reference point NAME (a node or an -% anchor), which consists of three parts: -% 1) NAME-title - the current sectioning name taken from \lastsection, -% or the anchor name. -% 2) NAME-snt - section number and type, passed as the SNT arg, or -% empty for anchors. -% 3) NAME-pg - the page number. -% -% This is called from \donoderef, \anchor, and \dofloat. In the case of -% floats, there is an additional part, which is not written here: -% 4) NAME-lof - the text as it should appear in a @listoffloats. -% -\def\setref#1#2{% - \pdfmkdest{#1}% - \iflinks - {% - \atdummies % preserve commands, but don't expand them - \edef\writexrdef##1##2{% - \write\auxfile{@xrdef{#1-% #1 of \setref, expanded by the \edef - ##1}{##2}}% these are parameters of \writexrdef - }% - \toks0 = \expandafter{\lastsection}% - \immediate \writexrdef{title}{\the\toks0 }% - \immediate \writexrdef{snt}{\csname #2\endcsname}% \Ynumbered etc. - \safewhatsit{\writexrdef{pg}{\folio}}% will be written later, during \shipout - }% - \fi -} - -% @xref, @pxref, and @ref generate cross-references. For \xrefX, #1 is -% the node name, #2 the name of the Info cross-reference, #3 the printed -% node name, #4 the name of the Info file, #5 the name of the printed -% manual. All but the node name can be omitted. -% -\def\pxref#1{\putwordsee{} \xrefX[#1,,,,,,,]} -\def\xref#1{\putwordSee{} \xrefX[#1,,,,,,,]} -\def\ref#1{\xrefX[#1,,,,,,,]} -\def\xrefX[#1,#2,#3,#4,#5,#6]{\begingroup - \unsepspaces - \def\printedmanual{\ignorespaces #5}% - \def\printedrefname{\ignorespaces #3}% - \setbox1=\hbox{\printedmanual\unskip}% - \setbox0=\hbox{\printedrefname\unskip}% - \ifdim \wd0 = 0pt - % No printed node name was explicitly given. - \expandafter\ifx\csname SETxref-automatic-section-title\endcsname\relax - % Use the node name inside the square brackets. - \def\printedrefname{\ignorespaces #1}% - \else - % Use the actual chapter/section title appear inside - % the square brackets. Use the real section title if we have it. - \ifdim \wd1 > 0pt - % It is in another manual, so we don't have it. - \def\printedrefname{\ignorespaces #1}% - \else - \ifhavexrefs - % We know the real title if we have the xref values. - \def\printedrefname{\refx{#1-title}{}}% - \else - % Otherwise just copy the Info node name. - \def\printedrefname{\ignorespaces #1}% - \fi% - \fi - \fi - \fi - % - % Make link in pdf output. - \ifpdf - \leavevmode - \getfilename{#4}% - {\indexnofonts - \turnoffactive - % See comments at \activebackslashdouble. - {\activebackslashdouble \xdef\pdfxrefdest{#1}% - \backslashparens\pdfxrefdest}% - % - \ifnum\filenamelength>0 - \startlink attr{/Border [0 0 0]}% - goto file{\the\filename.pdf} name{\pdfxrefdest}% - \else - \startlink attr{/Border [0 0 0]}% - goto name{\pdfmkpgn{\pdfxrefdest}}% - \fi - }% - \setcolor{\linkcolor}% - \fi - % - % Float references are printed completely differently: "Figure 1.2" - % instead of "[somenode], p.3". We distinguish them by the - % LABEL-title being set to a magic string. - {% - % Have to otherify everything special to allow the \csname to - % include an _ in the xref name, etc. - \indexnofonts - \turnoffactive - \expandafter\global\expandafter\let\expandafter\Xthisreftitle - \csname XR#1-title\endcsname - }% - \iffloat\Xthisreftitle - % If the user specified the print name (third arg) to the ref, - % print it instead of our usual "Figure 1.2". - \ifdim\wd0 = 0pt - \refx{#1-snt}{}% - \else - \printedrefname - \fi - % - % if the user also gave the printed manual name (fifth arg), append - % "in MANUALNAME". - \ifdim \wd1 > 0pt - \space \putwordin{} \cite{\printedmanual}% - \fi - \else - % node/anchor (non-float) references. - % - % If we use \unhbox0 and \unhbox1 to print the node names, TeX does not - % insert empty discretionaries after hyphens, which means that it will - % not find a line break at a hyphen in a node names. Since some manuals - % are best written with fairly long node names, containing hyphens, this - % is a loss. Therefore, we give the text of the node name again, so it - % is as if TeX is seeing it for the first time. - \ifdim \wd1 > 0pt - \putwordSection{} ``\printedrefname'' \putwordin{} \cite{\printedmanual}% - \else - % _ (for example) has to be the character _ for the purposes of the - % control sequence corresponding to the node, but it has to expand - % into the usual \leavevmode...\vrule stuff for purposes of - % printing. So we \turnoffactive for the \refx-snt, back on for the - % printing, back off for the \refx-pg. - {\turnoffactive - % Only output a following space if the -snt ref is nonempty; for - % @unnumbered and @anchor, it won't be. - \setbox2 = \hbox{\ignorespaces \refx{#1-snt}{}}% - \ifdim \wd2 > 0pt \refx{#1-snt}\space\fi - }% - % output the `[mynode]' via a macro so it can be overridden. - \xrefprintnodename\printedrefname - % - % But we always want a comma and a space: - ,\space - % - % output the `page 3'. - \turnoffactive \putwordpage\tie\refx{#1-pg}{}% - \fi - \fi - \endlink -\endgroup} - -% This macro is called from \xrefX for the `[nodename]' part of xref -% output. It's a separate macro only so it can be changed more easily, -% since square brackets don't work well in some documents. Particularly -% one that Bob is working on :). -% -\def\xrefprintnodename#1{[#1]} - -% Things referred to by \setref. -% -\def\Ynothing{} -\def\Yomitfromtoc{} -\def\Ynumbered{% - \ifnum\secno=0 - \putwordChapter@tie \the\chapno - \else \ifnum\subsecno=0 - \putwordSection@tie \the\chapno.\the\secno - \else \ifnum\subsubsecno=0 - \putwordSection@tie \the\chapno.\the\secno.\the\subsecno - \else - \putwordSection@tie \the\chapno.\the\secno.\the\subsecno.\the\subsubsecno - \fi\fi\fi -} -\def\Yappendix{% - \ifnum\secno=0 - \putwordAppendix@tie @char\the\appendixno{}% - \else \ifnum\subsecno=0 - \putwordSection@tie @char\the\appendixno.\the\secno - \else \ifnum\subsubsecno=0 - \putwordSection@tie @char\the\appendixno.\the\secno.\the\subsecno - \else - \putwordSection@tie - @char\the\appendixno.\the\secno.\the\subsecno.\the\subsubsecno - \fi\fi\fi -} - -% Define \refx{NAME}{SUFFIX} to reference a cross-reference string named NAME. -% If its value is nonempty, SUFFIX is output afterward. -% -\def\refx#1#2{% - {% - \indexnofonts - \otherbackslash - \expandafter\global\expandafter\let\expandafter\thisrefX - \csname XR#1\endcsname - }% - \ifx\thisrefX\relax - % If not defined, say something at least. - \angleleft un\-de\-fined\angleright - \iflinks - \ifhavexrefs - \message{\linenumber Undefined cross reference `#1'.}% - \else - \ifwarnedxrefs\else - \global\warnedxrefstrue - \message{Cross reference values unknown; you must run TeX again.}% - \fi - \fi - \fi - \else - % It's defined, so just use it. - \thisrefX - \fi - #2% Output the suffix in any case. -} - -% This is the macro invoked by entries in the aux file. Usually it's -% just a \def (we prepend XR to the control sequence name to avoid -% collisions). But if this is a float type, we have more work to do. -% -\def\xrdef#1#2{% - {% The node name might contain 8-bit characters, which in our current - % implementation are changed to commands like @'e. Don't let these - % mess up the control sequence name. - \indexnofonts - \turnoffactive - \xdef\safexrefname{#1}% - }% - % - \expandafter\gdef\csname XR\safexrefname\endcsname{#2}% remember this xref - % - % Was that xref control sequence that we just defined for a float? - \expandafter\iffloat\csname XR\safexrefname\endcsname - % it was a float, and we have the (safe) float type in \iffloattype. - \expandafter\let\expandafter\floatlist - \csname floatlist\iffloattype\endcsname - % - % Is this the first time we've seen this float type? - \expandafter\ifx\floatlist\relax - \toks0 = {\do}% yes, so just \do - \else - % had it before, so preserve previous elements in list. - \toks0 = \expandafter{\floatlist\do}% - \fi - % - % Remember this xref in the control sequence \floatlistFLOATTYPE, - % for later use in \listoffloats. - \expandafter\xdef\csname floatlist\iffloattype\endcsname{\the\toks0 - {\safexrefname}}% - \fi -} - -% Read the last existing aux file, if any. No error if none exists. -% -\def\tryauxfile{% - \openin 1 \jobname.aux - \ifeof 1 \else - \readdatafile{aux}% - \global\havexrefstrue - \fi - \closein 1 -} - -\def\setupdatafile{% - \catcode`\^^@=\other - \catcode`\^^A=\other - \catcode`\^^B=\other - \catcode`\^^C=\other - \catcode`\^^D=\other - \catcode`\^^E=\other - \catcode`\^^F=\other - \catcode`\^^G=\other - \catcode`\^^H=\other - \catcode`\^^K=\other - \catcode`\^^L=\other - \catcode`\^^N=\other - \catcode`\^^P=\other - \catcode`\^^Q=\other - \catcode`\^^R=\other - \catcode`\^^S=\other - \catcode`\^^T=\other - \catcode`\^^U=\other - \catcode`\^^V=\other - \catcode`\^^W=\other - \catcode`\^^X=\other - \catcode`\^^Z=\other - \catcode`\^^[=\other - \catcode`\^^\=\other - \catcode`\^^]=\other - \catcode`\^^^=\other - \catcode`\^^_=\other - % It was suggested to set the catcode of ^ to 7, which would allow ^^e4 etc. - % in xref tags, i.e., node names. But since ^^e4 notation isn't - % supported in the main text, it doesn't seem desirable. Furthermore, - % that is not enough: for node names that actually contain a ^ - % character, we would end up writing a line like this: 'xrdef {'hat - % b-title}{'hat b} and \xrdef does a \csname...\endcsname on the first - % argument, and \hat is not an expandable control sequence. It could - % all be worked out, but why? Either we support ^^ or we don't. - % - % The other change necessary for this was to define \auxhat: - % \def\auxhat{\def^{'hat }}% extra space so ok if followed by letter - % and then to call \auxhat in \setq. - % - \catcode`\^=\other - % - % Special characters. Should be turned off anyway, but... - \catcode`\~=\other - \catcode`\[=\other - \catcode`\]=\other - \catcode`\"=\other - \catcode`\_=\other - \catcode`\|=\other - \catcode`\<=\other - \catcode`\>=\other - \catcode`\$=\other - \catcode`\#=\other - \catcode`\&=\other - \catcode`\%=\other - \catcode`+=\other % avoid \+ for paranoia even though we've turned it off - % - % This is to support \ in node names and titles, since the \ - % characters end up in a \csname. It's easier than - % leaving it active and making its active definition an actual \ - % character. What I don't understand is why it works in the *value* - % of the xrdef. Seems like it should be a catcode12 \, and that - % should not typeset properly. But it works, so I'm moving on for - % now. --karl, 15jan04. - \catcode`\\=\other - % - % Make the characters 128-255 be printing characters. - {% - \count1=128 - \def\loop{% - \catcode\count1=\other - \advance\count1 by 1 - \ifnum \count1<256 \loop \fi - }% - }% - % - % @ is our escape character in .aux files, and we need braces. - \catcode`\{=1 - \catcode`\}=2 - \catcode`\@=0 -} - -\def\readdatafile#1{% -\begingroup - \setupdatafile - \input\jobname.#1 -\endgroup} - - -\message{insertions,} -% including footnotes. - -\newcount \footnoteno - -% The trailing space in the following definition for supereject is -% vital for proper filling; pages come out unaligned when you do a -% pagealignmacro call if that space before the closing brace is -% removed. (Generally, numeric constants should always be followed by a -% space to prevent strange expansion errors.) -\def\supereject{\par\penalty -20000\footnoteno =0 } - -% @footnotestyle is meaningful for info output only. -\let\footnotestyle=\comment - -{\catcode `\@=11 -% -% Auto-number footnotes. Otherwise like plain. -\gdef\footnote{% - \let\indent=\ptexindent - \let\noindent=\ptexnoindent - \global\advance\footnoteno by \@ne - \edef\thisfootno{$^{\the\footnoteno}$}% - % - % In case the footnote comes at the end of a sentence, preserve the - % extra spacing after we do the footnote number. - \let\@sf\empty - \ifhmode\edef\@sf{\spacefactor\the\spacefactor}\ptexslash\fi - % - % Remove inadvertent blank space before typesetting the footnote number. - \unskip - \thisfootno\@sf - \dofootnote -}% - -% Don't bother with the trickery in plain.tex to not require the -% footnote text as a parameter. Our footnotes don't need to be so general. -% -% Oh yes, they do; otherwise, @ifset (and anything else that uses -% \parseargline) fails inside footnotes because the tokens are fixed when -% the footnote is read. --karl, 16nov96. -% -\gdef\dofootnote{% - \insert\footins\bgroup - % We want to typeset this text as a normal paragraph, even if the - % footnote reference occurs in (for example) a display environment. - % So reset some parameters. - \hsize=\pagewidth - \interlinepenalty\interfootnotelinepenalty - \splittopskip\ht\strutbox % top baseline for broken footnotes - \splitmaxdepth\dp\strutbox - \floatingpenalty\@MM - \leftskip\z@skip - \rightskip\z@skip - \spaceskip\z@skip - \xspaceskip\z@skip - \parindent\defaultparindent - % - \smallfonts \rm - % - % Because we use hanging indentation in footnotes, a @noindent appears - % to exdent this text, so make it be a no-op. makeinfo does not use - % hanging indentation so @noindent can still be needed within footnote - % text after an @example or the like (not that this is good style). - \let\noindent = \relax - % - % Hang the footnote text off the number. Use \everypar in case the - % footnote extends for more than one paragraph. - \everypar = {\hang}% - \textindent{\thisfootno}% - % - % Don't crash into the line above the footnote text. Since this - % expands into a box, it must come within the paragraph, lest it - % provide a place where TeX can split the footnote. - \footstrut - \futurelet\next\fo@t -} -}%end \catcode `\@=11 - -% In case a @footnote appears in a vbox, save the footnote text and create -% the real \insert just after the vbox finished. Otherwise, the insertion -% would be lost. -% Similarily, if a @footnote appears inside an alignment, save the footnote -% text to a box and make the \insert when a row of the table is finished. -% And the same can be done for other insert classes. --kasal, 16nov03. - -% Replace the \insert primitive by a cheating macro. -% Deeper inside, just make sure that the saved insertions are not spilled -% out prematurely. -% -\def\startsavinginserts{% - \ifx \insert\ptexinsert - \let\insert\saveinsert - \else - \let\checkinserts\relax - \fi -} - -% This \insert replacement works for both \insert\footins{foo} and -% \insert\footins\bgroup foo\egroup, but it doesn't work for \insert27{foo}. -% -\def\saveinsert#1{% - \edef\next{\noexpand\savetobox \makeSAVEname#1}% - \afterassignment\next - % swallow the left brace - \let\temp = -} -\def\makeSAVEname#1{\makecsname{SAVE\expandafter\gobble\string#1}} -\def\savetobox#1{\global\setbox#1 = \vbox\bgroup \unvbox#1} - -\def\checksaveins#1{\ifvoid#1\else \placesaveins#1\fi} - -\def\placesaveins#1{% - \ptexinsert \csname\expandafter\gobblesave\string#1\endcsname - {\box#1}% -} - -% eat @SAVE -- beware, all of them have catcode \other: -{ - \def\dospecials{\do S\do A\do V\do E} \uncatcodespecials % ;-) - \gdef\gobblesave @SAVE{} -} - -% initialization: -\def\newsaveins #1{% - \edef\next{\noexpand\newsaveinsX \makeSAVEname#1}% - \next -} -\def\newsaveinsX #1{% - \csname newbox\endcsname #1% - \expandafter\def\expandafter\checkinserts\expandafter{\checkinserts - \checksaveins #1}% -} - -% initialize: -\let\checkinserts\empty -\newsaveins\footins -\newsaveins\margin - - -% @image. We use the macros from epsf.tex to support this. -% If epsf.tex is not installed and @image is used, we complain. -% -% Check for and read epsf.tex up front. If we read it only at @image -% time, we might be inside a group, and then its definitions would get -% undone and the next image would fail. -\openin 1 = epsf.tex -\ifeof 1 \else - % Do not bother showing banner with epsf.tex v2.7k (available in - % doc/epsf.tex and on ctan). - \def\epsfannounce{\toks0 = }% - \input epsf.tex -\fi -\closein 1 -% -% We will only complain once about lack of epsf.tex. -\newif\ifwarnednoepsf -\newhelp\noepsfhelp{epsf.tex must be installed for images to - work. It is also included in the Texinfo distribution, or you can get - it from ftp://tug.org/tex/epsf.tex.} -% -\def\image#1{% - \ifx\epsfbox\undefined - \ifwarnednoepsf \else - \errhelp = \noepsfhelp - \errmessage{epsf.tex not found, images will be ignored}% - \global\warnednoepsftrue - \fi - \else - \imagexxx #1,,,,,\finish - \fi -} -% -% Arguments to @image: -% #1 is (mandatory) image filename; we tack on .eps extension. -% #2 is (optional) width, #3 is (optional) height. -% #4 is (ignored optional) html alt text. -% #5 is (ignored optional) extension. -% #6 is just the usual extra ignored arg for parsing this stuff. -\newif\ifimagevmode -\def\imagexxx#1,#2,#3,#4,#5,#6\finish{\begingroup - \catcode`\^^M = 5 % in case we're inside an example - \normalturnoffactive % allow _ et al. in names - % If the image is by itself, center it. - \ifvmode - \imagevmodetrue - \nobreak\bigskip - % Usually we'll have text after the image which will insert - % \parskip glue, so insert it here too to equalize the space - % above and below. - \nobreak\vskip\parskip - \nobreak - \line\bgroup - \fi - % - % Output the image. - \ifpdf - \dopdfimage{#1}{#2}{#3}% - \else - % \epsfbox itself resets \epsf?size at each figure. - \setbox0 = \hbox{\ignorespaces #2}\ifdim\wd0 > 0pt \epsfxsize=#2\relax \fi - \setbox0 = \hbox{\ignorespaces #3}\ifdim\wd0 > 0pt \epsfysize=#3\relax \fi - \epsfbox{#1.eps}% - \fi - % - \ifimagevmode \egroup \bigbreak \fi % space after the image -\endgroup} - - -% @float FLOATTYPE,LABEL,LOC ... @end float for displayed figures, tables, -% etc. We don't actually implement floating yet, we always include the -% float "here". But it seemed the best name for the future. -% -\envparseargdef\float{\eatcommaspace\eatcommaspace\dofloat#1, , ,\finish} - -% There may be a space before second and/or third parameter; delete it. -\def\eatcommaspace#1, {#1,} - -% #1 is the optional FLOATTYPE, the text label for this float, typically -% "Figure", "Table", "Example", etc. Can't contain commas. If omitted, -% this float will not be numbered and cannot be referred to. -% -% #2 is the optional xref label. Also must be present for the float to -% be referable. -% -% #3 is the optional positioning argument; for now, it is ignored. It -% will somehow specify the positions allowed to float to (here, top, bottom). -% -% We keep a separate counter for each FLOATTYPE, which we reset at each -% chapter-level command. -\let\resetallfloatnos=\empty -% -\def\dofloat#1,#2,#3,#4\finish{% - \let\thiscaption=\empty - \let\thisshortcaption=\empty - % - % don't lose footnotes inside @float. - % - % BEWARE: when the floats start float, we have to issue warning whenever an - % insert appears inside a float which could possibly float. --kasal, 26may04 - % - \startsavinginserts - % - % We can't be used inside a paragraph. - \par - % - \vtop\bgroup - \def\floattype{#1}% - \def\floatlabel{#2}% - \def\floatloc{#3}% we do nothing with this yet. - % - \ifx\floattype\empty - \let\safefloattype=\empty - \else - {% - % the floattype might have accents or other special characters, - % but we need to use it in a control sequence name. - \indexnofonts - \turnoffactive - \xdef\safefloattype{\floattype}% - }% - \fi - % - % If label is given but no type, we handle that as the empty type. - \ifx\floatlabel\empty \else - % We want each FLOATTYPE to be numbered separately (Figure 1, - % Table 1, Figure 2, ...). (And if no label, no number.) - % - \expandafter\getfloatno\csname\safefloattype floatno\endcsname - \global\advance\floatno by 1 - % - {% - % This magic value for \lastsection is output by \setref as the - % XREFLABEL-title value. \xrefX uses it to distinguish float - % labels (which have a completely different output format) from - % node and anchor labels. And \xrdef uses it to construct the - % lists of floats. - % - \edef\lastsection{\floatmagic=\safefloattype}% - \setref{\floatlabel}{Yfloat}% - }% - \fi - % - % start with \parskip glue, I guess. - \vskip\parskip - % - % Don't suppress indentation if a float happens to start a section. - \restorefirstparagraphindent -} - -% we have these possibilities: -% @float Foo,lbl & @caption{Cap}: Foo 1.1: Cap -% @float Foo,lbl & no caption: Foo 1.1 -% @float Foo & @caption{Cap}: Foo: Cap -% @float Foo & no caption: Foo -% @float ,lbl & Caption{Cap}: 1.1: Cap -% @float ,lbl & no caption: 1.1 -% @float & @caption{Cap}: Cap -% @float & no caption: -% -\def\Efloat{% - \let\floatident = \empty - % - % In all cases, if we have a float type, it comes first. - \ifx\floattype\empty \else \def\floatident{\floattype}\fi - % - % If we have an xref label, the number comes next. - \ifx\floatlabel\empty \else - \ifx\floattype\empty \else % if also had float type, need tie first. - \appendtomacro\floatident{\tie}% - \fi - % the number. - \appendtomacro\floatident{\chaplevelprefix\the\floatno}% - \fi - % - % Start the printed caption with what we've constructed in - % \floatident, but keep it separate; we need \floatident again. - \let\captionline = \floatident - % - \ifx\thiscaption\empty \else - \ifx\floatident\empty \else - \appendtomacro\captionline{: }% had ident, so need a colon between - \fi - % - % caption text. - \appendtomacro\captionline{\scanexp\thiscaption}% - \fi - % - % If we have anything to print, print it, with space before. - % Eventually this needs to become an \insert. - \ifx\captionline\empty \else - \vskip.5\parskip - \captionline - % - % Space below caption. - \vskip\parskip - \fi - % - % If have an xref label, write the list of floats info. Do this - % after the caption, to avoid chance of it being a breakpoint. - \ifx\floatlabel\empty \else - % Write the text that goes in the lof to the aux file as - % \floatlabel-lof. Besides \floatident, we include the short - % caption if specified, else the full caption if specified, else nothing. - {% - \atdummies - % - % since we read the caption text in the macro world, where ^^M - % is turned into a normal character, we have to scan it back, so - % we don't write the literal three characters "^^M" into the aux file. - \scanexp{% - \xdef\noexpand\gtemp{% - \ifx\thisshortcaption\empty - \thiscaption - \else - \thisshortcaption - \fi - }% - }% - \immediate\write\auxfile{@xrdef{\floatlabel-lof}{\floatident - \ifx\gtemp\empty \else : \gtemp \fi}}% - }% - \fi - \egroup % end of \vtop - % - % place the captured inserts - % - % BEWARE: when the floats start floating, we have to issue warning - % whenever an insert appears inside a float which could possibly - % float. --kasal, 26may04 - % - \checkinserts -} - -% Append the tokens #2 to the definition of macro #1, not expanding either. -% -\def\appendtomacro#1#2{% - \expandafter\def\expandafter#1\expandafter{#1#2}% -} - -% @caption, @shortcaption -% -\def\caption{\docaption\thiscaption} -\def\shortcaption{\docaption\thisshortcaption} -\def\docaption{\checkenv\float \bgroup\scanargctxt\defcaption} -\def\defcaption#1#2{\egroup \def#1{#2}} - -% The parameter is the control sequence identifying the counter we are -% going to use. Create it if it doesn't exist and assign it to \floatno. -\def\getfloatno#1{% - \ifx#1\relax - % Haven't seen this figure type before. - \csname newcount\endcsname #1% - % - % Remember to reset this floatno at the next chap. - \expandafter\gdef\expandafter\resetallfloatnos - \expandafter{\resetallfloatnos #1=0 }% - \fi - \let\floatno#1% -} - -% \setref calls this to get the XREFLABEL-snt value. We want an @xref -% to the FLOATLABEL to expand to "Figure 3.1". We call \setref when we -% first read the @float command. -% -\def\Yfloat{\floattype@tie \chaplevelprefix\the\floatno}% - -% Magic string used for the XREFLABEL-title value, so \xrefX can -% distinguish floats from other xref types. -\def\floatmagic{!!float!!} - -% #1 is the control sequence we are passed; we expand into a conditional -% which is true if #1 represents a float ref. That is, the magic -% \lastsection value which we \setref above. -% -\def\iffloat#1{\expandafter\doiffloat#1==\finish} -% -% #1 is (maybe) the \floatmagic string. If so, #2 will be the -% (safe) float type for this float. We set \iffloattype to #2. -% -\def\doiffloat#1=#2=#3\finish{% - \def\temp{#1}% - \def\iffloattype{#2}% - \ifx\temp\floatmagic -} - -% @listoffloats FLOATTYPE - print a list of floats like a table of contents. -% -\parseargdef\listoffloats{% - \def\floattype{#1}% floattype - {% - % the floattype might have accents or other special characters, - % but we need to use it in a control sequence name. - \indexnofonts - \turnoffactive - \xdef\safefloattype{\floattype}% - }% - % - % \xrdef saves the floats as a \do-list in \floatlistSAFEFLOATTYPE. - \expandafter\ifx\csname floatlist\safefloattype\endcsname \relax - \ifhavexrefs - % if the user said @listoffloats foo but never @float foo. - \message{\linenumber No `\safefloattype' floats to list.}% - \fi - \else - \begingroup - \leftskip=\tocindent % indent these entries like a toc - \let\do=\listoffloatsdo - \csname floatlist\safefloattype\endcsname - \endgroup - \fi -} - -% This is called on each entry in a list of floats. We're passed the -% xref label, in the form LABEL-title, which is how we save it in the -% aux file. We strip off the -title and look up \XRLABEL-lof, which -% has the text we're supposed to typeset here. -% -% Figures without xref labels will not be included in the list (since -% they won't appear in the aux file). -% -\def\listoffloatsdo#1{\listoffloatsdoentry#1\finish} -\def\listoffloatsdoentry#1-title\finish{{% - % Can't fully expand XR#1-lof because it can contain anything. Just - % pass the control sequence. On the other hand, XR#1-pg is just the - % page number, and we want to fully expand that so we can get a link - % in pdf output. - \toksA = \expandafter{\csname XR#1-lof\endcsname}% - % - % use the same \entry macro we use to generate the TOC and index. - \edef\writeentry{\noexpand\entry{\the\toksA}{\csname XR#1-pg\endcsname}}% - \writeentry -}} - - -\message{localization,} - -% @documentlanguage is usually given very early, just after -% @setfilename. If done too late, it may not override everything -% properly. Single argument is the language (de) or locale (de_DE) -% abbreviation. It would be nice if we could set up a hyphenation file. -% -{ - \catcode`\_ = \active - \globaldefs=1 -\parseargdef\documentlanguage{\begingroup - \let_=\normalunderscore % normal _ character for filenames - \tex % read txi-??.tex file in plain TeX. - % Read the file by the name they passed if it exists. - \openin 1 txi-#1.tex - \ifeof 1 - \documentlanguagetrywithoutunderscore{#1_\finish}% - \else - \input txi-#1.tex - \fi - \closein 1 - \endgroup -\endgroup} -} -% -% If they passed de_DE, and txi-de_DE.tex doesn't exist, -% try txi-de.tex. -% -\def\documentlanguagetrywithoutunderscore#1_#2\finish{% - \openin 1 txi-#1.tex - \ifeof 1 - \errhelp = \nolanghelp - \errmessage{Cannot read language file txi-#1.tex}% - \else - \input txi-#1.tex - \fi - \closein 1 -} -% -\newhelp\nolanghelp{The given language definition file cannot be found or -is empty. Maybe you need to install it? In the current directory -should work if nowhere else does.} - -% Set the catcode of characters 128 through 255 to the specified number. -% -\def\setnonasciicharscatcode#1{% - \count255=128 - \loop\ifnum\count255<256 - \global\catcode\count255=#1\relax - \advance\count255 by 1 - \repeat -} - -\def\setnonasciicharscatcodenonglobal#1{% - \count255=128 - \loop\ifnum\count255<256 - \catcode\count255=#1\relax - \advance\count255 by 1 - \repeat -} - -% @documentencoding sets the definition of non-ASCII characters -% according to the specified encoding. -% -\parseargdef\documentencoding{% - % Encoding being declared for the document. - \def\declaredencoding{\csname #1.enc\endcsname}% - % - % Supported encodings: names converted to tokens in order to be able - % to compare them with \ifx. - \def\ascii{\csname US-ASCII.enc\endcsname}% - \def\latnine{\csname ISO-8859-15.enc\endcsname}% - \def\latone{\csname ISO-8859-1.enc\endcsname}% - \def\lattwo{\csname ISO-8859-2.enc\endcsname}% - \def\utfeight{\csname UTF-8.enc\endcsname}% - % - \ifx \declaredencoding \ascii - \asciichardefs - % - \else \ifx \declaredencoding \lattwo - \setnonasciicharscatcode\active - \lattwochardefs - % - \else \ifx \declaredencoding \latone - \setnonasciicharscatcode\active - \latonechardefs - % - \else \ifx \declaredencoding \latnine - \setnonasciicharscatcode\active - \latninechardefs - % - \else \ifx \declaredencoding \utfeight - \setnonasciicharscatcode\active - \utfeightchardefs - % - \else - \message{Unknown document encoding #1, ignoring.}% - % - \fi % utfeight - \fi % latnine - \fi % latone - \fi % lattwo - \fi % ascii -} - -% A message to be logged when using a character that isn't available -% the default font encoding (OT1). -% -\def\missingcharmsg#1{\message{Character missing in OT1 encoding: #1.}} - -% Take account of \c (plain) vs. \, (Texinfo) difference. -\def\cedilla#1{\ifx\c\ptexc\c{#1}\else\,{#1}\fi} - -% First, make active non-ASCII characters in order for them to be -% correctly categorized when TeX reads the replacement text of -% macros containing the character definitions. -\setnonasciicharscatcode\active -% -% Latin1 (ISO-8859-1) character definitions. -\def\latonechardefs{% - \gdef^^a0{~} - \gdef^^a1{\exclamdown} - \gdef^^a2{\missingcharmsg{CENT SIGN}} - \gdef^^a3{{\pounds}} - \gdef^^a4{\missingcharmsg{CURRENCY SIGN}} - \gdef^^a5{\missingcharmsg{YEN SIGN}} - \gdef^^a6{\missingcharmsg{BROKEN BAR}} - \gdef^^a7{\S} - \gdef^^a8{\"{}} - \gdef^^a9{\copyright} - \gdef^^aa{\ordf} - \gdef^^ab{\missingcharmsg{LEFT-POINTING DOUBLE ANGLE QUOTATION MARK}} - \gdef^^ac{$\lnot$} - \gdef^^ad{\-} - \gdef^^ae{\registeredsymbol} - \gdef^^af{\={}} - % - \gdef^^b0{\textdegree} - \gdef^^b1{$\pm$} - \gdef^^b2{$^2$} - \gdef^^b3{$^3$} - \gdef^^b4{\'{}} - \gdef^^b5{$\mu$} - \gdef^^b6{\P} - % - \gdef^^b7{$^.$} - \gdef^^b8{\cedilla\ } - \gdef^^b9{$^1$} - \gdef^^ba{\ordm} - % - \gdef^^bb{\missingcharmsg{RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK}} - \gdef^^bc{$1\over4$} - \gdef^^bd{$1\over2$} - \gdef^^be{$3\over4$} - \gdef^^bf{\questiondown} - % - \gdef^^c0{\`A} - \gdef^^c1{\'A} - \gdef^^c2{\^A} - \gdef^^c3{\~A} - \gdef^^c4{\"A} - \gdef^^c5{\ringaccent A} - \gdef^^c6{\AE} - \gdef^^c7{\cedilla C} - \gdef^^c8{\`E} - \gdef^^c9{\'E} - \gdef^^ca{\^E} - \gdef^^cb{\"E} - \gdef^^cc{\`I} - \gdef^^cd{\'I} - \gdef^^ce{\^I} - \gdef^^cf{\"I} - % - \gdef^^d0{\missingcharmsg{LATIN CAPITAL LETTER ETH}} - \gdef^^d1{\~N} - \gdef^^d2{\`O} - \gdef^^d3{\'O} - \gdef^^d4{\^O} - \gdef^^d5{\~O} - \gdef^^d6{\"O} - \gdef^^d7{$\times$} - \gdef^^d8{\O} - \gdef^^d9{\`U} - \gdef^^da{\'U} - \gdef^^db{\^U} - \gdef^^dc{\"U} - \gdef^^dd{\'Y} - \gdef^^de{\missingcharmsg{LATIN CAPITAL LETTER THORN}} - \gdef^^df{\ss} - % - \gdef^^e0{\`a} - \gdef^^e1{\'a} - \gdef^^e2{\^a} - \gdef^^e3{\~a} - \gdef^^e4{\"a} - \gdef^^e5{\ringaccent a} - \gdef^^e6{\ae} - \gdef^^e7{\cedilla c} - \gdef^^e8{\`e} - \gdef^^e9{\'e} - \gdef^^ea{\^e} - \gdef^^eb{\"e} - \gdef^^ec{\`{\dotless i}} - \gdef^^ed{\'{\dotless i}} - \gdef^^ee{\^{\dotless i}} - \gdef^^ef{\"{\dotless i}} - % - \gdef^^f0{\missingcharmsg{LATIN SMALL LETTER ETH}} - \gdef^^f1{\~n} - \gdef^^f2{\`o} - \gdef^^f3{\'o} - \gdef^^f4{\^o} - \gdef^^f5{\~o} - \gdef^^f6{\"o} - \gdef^^f7{$\div$} - \gdef^^f8{\o} - \gdef^^f9{\`u} - \gdef^^fa{\'u} - \gdef^^fb{\^u} - \gdef^^fc{\"u} - \gdef^^fd{\'y} - \gdef^^fe{\missingcharmsg{LATIN SMALL LETTER THORN}} - \gdef^^ff{\"y} -} - -% Latin9 (ISO-8859-15) encoding character definitions. -\def\latninechardefs{% - % Encoding is almost identical to Latin1. - \latonechardefs - % - \gdef^^a4{\euro} - \gdef^^a6{\v S} - \gdef^^a8{\v s} - \gdef^^b4{\v Z} - \gdef^^b8{\v z} - \gdef^^bc{\OE} - \gdef^^bd{\oe} - \gdef^^be{\"Y} -} - -% Latin2 (ISO-8859-2) character definitions. -\def\lattwochardefs{% - \gdef^^a0{~} - \gdef^^a1{\missingcharmsg{LATIN CAPITAL LETTER A WITH OGONEK}} - \gdef^^a2{\u{}} - \gdef^^a3{\L} - \gdef^^a4{\missingcharmsg{CURRENCY SIGN}} - \gdef^^a5{\v L} - \gdef^^a6{\'S} - \gdef^^a7{\S} - \gdef^^a8{\"{}} - \gdef^^a9{\v S} - \gdef^^aa{\cedilla S} - \gdef^^ab{\v T} - \gdef^^ac{\'Z} - \gdef^^ad{\-} - \gdef^^ae{\v Z} - \gdef^^af{\dotaccent Z} - % - \gdef^^b0{\textdegree} - \gdef^^b1{\missingcharmsg{LATIN SMALL LETTER A WITH OGONEK}} - \gdef^^b2{\missingcharmsg{OGONEK}} - \gdef^^b3{\l} - \gdef^^b4{\'{}} - \gdef^^b5{\v l} - \gdef^^b6{\'s} - \gdef^^b7{\v{}} - \gdef^^b8{\cedilla\ } - \gdef^^b9{\v s} - \gdef^^ba{\cedilla s} - \gdef^^bb{\v t} - \gdef^^bc{\'z} - \gdef^^bd{\H{}} - \gdef^^be{\v z} - \gdef^^bf{\dotaccent z} - % - \gdef^^c0{\'R} - \gdef^^c1{\'A} - \gdef^^c2{\^A} - \gdef^^c3{\u A} - \gdef^^c4{\"A} - \gdef^^c5{\'L} - \gdef^^c6{\'C} - \gdef^^c7{\cedilla C} - \gdef^^c8{\v C} - \gdef^^c9{\'E} - \gdef^^ca{\missingcharmsg{LATIN CAPITAL LETTER E WITH OGONEK}} - \gdef^^cb{\"E} - \gdef^^cc{\v E} - \gdef^^cd{\'I} - \gdef^^ce{\^I} - \gdef^^cf{\v D} - % - \gdef^^d0{\missingcharmsg{LATIN CAPITAL LETTER D WITH STROKE}} - \gdef^^d1{\'N} - \gdef^^d2{\v N} - \gdef^^d3{\'O} - \gdef^^d4{\^O} - \gdef^^d5{\H O} - \gdef^^d6{\"O} - \gdef^^d7{$\times$} - \gdef^^d8{\v R} - \gdef^^d9{\ringaccent U} - \gdef^^da{\'U} - \gdef^^db{\H U} - \gdef^^dc{\"U} - \gdef^^dd{\'Y} - \gdef^^de{\cedilla T} - \gdef^^df{\ss} - % - \gdef^^e0{\'r} - \gdef^^e1{\'a} - \gdef^^e2{\^a} - \gdef^^e3{\u a} - \gdef^^e4{\"a} - \gdef^^e5{\'l} - \gdef^^e6{\'c} - \gdef^^e7{\cedilla c} - \gdef^^e8{\v c} - \gdef^^e9{\'e} - \gdef^^ea{\missingcharmsg{LATIN SMALL LETTER E WITH OGONEK}} - \gdef^^eb{\"e} - \gdef^^ec{\v e} - \gdef^^ed{\'\i} - \gdef^^ee{\^\i} - \gdef^^ef{\v d} - % - \gdef^^f0{\missingcharmsg{LATIN SMALL LETTER D WITH STROKE}} - \gdef^^f1{\'n} - \gdef^^f2{\v n} - \gdef^^f3{\'o} - \gdef^^f4{\^o} - \gdef^^f5{\H o} - \gdef^^f6{\"o} - \gdef^^f7{$\div$} - \gdef^^f8{\v r} - \gdef^^f9{\ringaccent u} - \gdef^^fa{\'u} - \gdef^^fb{\H u} - \gdef^^fc{\"u} - \gdef^^fd{\'y} - \gdef^^fe{\cedilla t} - \gdef^^ff{\dotaccent{}} -} - -% UTF-8 character definitions. -% -% This code to support UTF-8 is based on LaTeX's utf8.def, with some -% changes for Texinfo conventions. It is included here under the GPL by -% permission from Frank Mittelbach and the LaTeX team. -% -\newcount\countUTFx -\newcount\countUTFy -\newcount\countUTFz - -\gdef\UTFviiiTwoOctets#1#2{\expandafter - \UTFviiiDefined\csname u8:#1\string #2\endcsname} -% -\gdef\UTFviiiThreeOctets#1#2#3{\expandafter - \UTFviiiDefined\csname u8:#1\string #2\string #3\endcsname} -% -\gdef\UTFviiiFourOctets#1#2#3#4{\expandafter - \UTFviiiDefined\csname u8:#1\string #2\string #3\string #4\endcsname} - -\gdef\UTFviiiDefined#1{% - \ifx #1\relax - \message{\linenumber Unicode char \string #1 not defined for Texinfo}% - \else - \expandafter #1% - \fi -} - -\begingroup - \catcode`\~13 - \catcode`\"12 - - \def\UTFviiiLoop{% - \global\catcode\countUTFx\active - \uccode`\~\countUTFx - \uppercase\expandafter{\UTFviiiTmp}% - \advance\countUTFx by 1 - \ifnum\countUTFx < \countUTFy - \expandafter\UTFviiiLoop - \fi} - - \countUTFx = "C2 - \countUTFy = "E0 - \def\UTFviiiTmp{% - \xdef~{\noexpand\UTFviiiTwoOctets\string~}} - \UTFviiiLoop - - \countUTFx = "E0 - \countUTFy = "F0 - \def\UTFviiiTmp{% - \xdef~{\noexpand\UTFviiiThreeOctets\string~}} - \UTFviiiLoop - - \countUTFx = "F0 - \countUTFy = "F4 - \def\UTFviiiTmp{% - \xdef~{\noexpand\UTFviiiFourOctets\string~}} - \UTFviiiLoop -\endgroup - -\begingroup - \catcode`\"=12 - \catcode`\<=12 - \catcode`\.=12 - \catcode`\,=12 - \catcode`\;=12 - \catcode`\!=12 - \catcode`\~=13 - - \gdef\DeclareUnicodeCharacter#1#2{% - \countUTFz = "#1\relax - \wlog{\space\space defining Unicode char U+#1 (decimal \the\countUTFz)}% - \begingroup - \parseXMLCharref - \def\UTFviiiTwoOctets##1##2{% - \csname u8:##1\string ##2\endcsname}% - \def\UTFviiiThreeOctets##1##2##3{% - \csname u8:##1\string ##2\string ##3\endcsname}% - \def\UTFviiiFourOctets##1##2##3##4{% - \csname u8:##1\string ##2\string ##3\string ##4\endcsname}% - \expandafter\expandafter\expandafter\expandafter - \expandafter\expandafter\expandafter - \gdef\UTFviiiTmp{#2}% - \endgroup} - - \gdef\parseXMLCharref{% - \ifnum\countUTFz < "A0\relax - \errhelp = \EMsimple - \errmessage{Cannot define Unicode char value < 00A0}% - \else\ifnum\countUTFz < "800\relax - \parseUTFviiiA,% - \parseUTFviiiB C\UTFviiiTwoOctets.,% - \else\ifnum\countUTFz < "10000\relax - \parseUTFviiiA;% - \parseUTFviiiA,% - \parseUTFviiiB E\UTFviiiThreeOctets.{,;}% - \else - \parseUTFviiiA;% - \parseUTFviiiA,% - \parseUTFviiiA!% - \parseUTFviiiB F\UTFviiiFourOctets.{!,;}% - \fi\fi\fi - } - - \gdef\parseUTFviiiA#1{% - \countUTFx = \countUTFz - \divide\countUTFz by 64 - \countUTFy = \countUTFz - \multiply\countUTFz by 64 - \advance\countUTFx by -\countUTFz - \advance\countUTFx by 128 - \uccode `#1\countUTFx - \countUTFz = \countUTFy} - - \gdef\parseUTFviiiB#1#2#3#4{% - \advance\countUTFz by "#10\relax - \uccode `#3\countUTFz - \uppercase{\gdef\UTFviiiTmp{#2#3#4}}} -\endgroup - -\def\utfeightchardefs{% - \DeclareUnicodeCharacter{00A0}{\tie} - \DeclareUnicodeCharacter{00A1}{\exclamdown} - \DeclareUnicodeCharacter{00A3}{\pounds} - \DeclareUnicodeCharacter{00A8}{\"{ }} - \DeclareUnicodeCharacter{00A9}{\copyright} - \DeclareUnicodeCharacter{00AA}{\ordf} - \DeclareUnicodeCharacter{00AB}{\guillemetleft} - \DeclareUnicodeCharacter{00AD}{\-} - \DeclareUnicodeCharacter{00AE}{\registeredsymbol} - \DeclareUnicodeCharacter{00AF}{\={ }} - - \DeclareUnicodeCharacter{00B0}{\ringaccent{ }} - \DeclareUnicodeCharacter{00B4}{\'{ }} - \DeclareUnicodeCharacter{00B8}{\cedilla{ }} - \DeclareUnicodeCharacter{00BA}{\ordm} - \DeclareUnicodeCharacter{00BB}{\guillemetright} - \DeclareUnicodeCharacter{00BF}{\questiondown} - - \DeclareUnicodeCharacter{00C0}{\`A} - \DeclareUnicodeCharacter{00C1}{\'A} - \DeclareUnicodeCharacter{00C2}{\^A} - \DeclareUnicodeCharacter{00C3}{\~A} - \DeclareUnicodeCharacter{00C4}{\"A} - \DeclareUnicodeCharacter{00C5}{\AA} - \DeclareUnicodeCharacter{00C6}{\AE} - \DeclareUnicodeCharacter{00C7}{\cedilla{C}} - \DeclareUnicodeCharacter{00C8}{\`E} - \DeclareUnicodeCharacter{00C9}{\'E} - \DeclareUnicodeCharacter{00CA}{\^E} - \DeclareUnicodeCharacter{00CB}{\"E} - \DeclareUnicodeCharacter{00CC}{\`I} - \DeclareUnicodeCharacter{00CD}{\'I} - \DeclareUnicodeCharacter{00CE}{\^I} - \DeclareUnicodeCharacter{00CF}{\"I} - - \DeclareUnicodeCharacter{00D1}{\~N} - \DeclareUnicodeCharacter{00D2}{\`O} - \DeclareUnicodeCharacter{00D3}{\'O} - \DeclareUnicodeCharacter{00D4}{\^O} - \DeclareUnicodeCharacter{00D5}{\~O} - \DeclareUnicodeCharacter{00D6}{\"O} - \DeclareUnicodeCharacter{00D8}{\O} - \DeclareUnicodeCharacter{00D9}{\`U} - \DeclareUnicodeCharacter{00DA}{\'U} - \DeclareUnicodeCharacter{00DB}{\^U} - \DeclareUnicodeCharacter{00DC}{\"U} - \DeclareUnicodeCharacter{00DD}{\'Y} - \DeclareUnicodeCharacter{00DF}{\ss} - - \DeclareUnicodeCharacter{00E0}{\`a} - \DeclareUnicodeCharacter{00E1}{\'a} - \DeclareUnicodeCharacter{00E2}{\^a} - \DeclareUnicodeCharacter{00E3}{\~a} - \DeclareUnicodeCharacter{00E4}{\"a} - \DeclareUnicodeCharacter{00E5}{\aa} - \DeclareUnicodeCharacter{00E6}{\ae} - \DeclareUnicodeCharacter{00E7}{\cedilla{c}} - \DeclareUnicodeCharacter{00E8}{\`e} - \DeclareUnicodeCharacter{00E9}{\'e} - \DeclareUnicodeCharacter{00EA}{\^e} - \DeclareUnicodeCharacter{00EB}{\"e} - \DeclareUnicodeCharacter{00EC}{\`{\dotless{i}}} - \DeclareUnicodeCharacter{00ED}{\'{\dotless{i}}} - \DeclareUnicodeCharacter{00EE}{\^{\dotless{i}}} - \DeclareUnicodeCharacter{00EF}{\"{\dotless{i}}} - - \DeclareUnicodeCharacter{00F1}{\~n} - \DeclareUnicodeCharacter{00F2}{\`o} - \DeclareUnicodeCharacter{00F3}{\'o} - \DeclareUnicodeCharacter{00F4}{\^o} - \DeclareUnicodeCharacter{00F5}{\~o} - \DeclareUnicodeCharacter{00F6}{\"o} - \DeclareUnicodeCharacter{00F8}{\o} - \DeclareUnicodeCharacter{00F9}{\`u} - \DeclareUnicodeCharacter{00FA}{\'u} - \DeclareUnicodeCharacter{00FB}{\^u} - \DeclareUnicodeCharacter{00FC}{\"u} - \DeclareUnicodeCharacter{00FD}{\'y} - \DeclareUnicodeCharacter{00FF}{\"y} - - \DeclareUnicodeCharacter{0100}{\=A} - \DeclareUnicodeCharacter{0101}{\=a} - \DeclareUnicodeCharacter{0102}{\u{A}} - \DeclareUnicodeCharacter{0103}{\u{a}} - \DeclareUnicodeCharacter{0106}{\'C} - \DeclareUnicodeCharacter{0107}{\'c} - \DeclareUnicodeCharacter{0108}{\^C} - \DeclareUnicodeCharacter{0109}{\^c} - \DeclareUnicodeCharacter{010A}{\dotaccent{C}} - \DeclareUnicodeCharacter{010B}{\dotaccent{c}} - \DeclareUnicodeCharacter{010C}{\v{C}} - \DeclareUnicodeCharacter{010D}{\v{c}} - \DeclareUnicodeCharacter{010E}{\v{D}} - - \DeclareUnicodeCharacter{0112}{\=E} - \DeclareUnicodeCharacter{0113}{\=e} - \DeclareUnicodeCharacter{0114}{\u{E}} - \DeclareUnicodeCharacter{0115}{\u{e}} - \DeclareUnicodeCharacter{0116}{\dotaccent{E}} - \DeclareUnicodeCharacter{0117}{\dotaccent{e}} - \DeclareUnicodeCharacter{011A}{\v{E}} - \DeclareUnicodeCharacter{011B}{\v{e}} - \DeclareUnicodeCharacter{011C}{\^G} - \DeclareUnicodeCharacter{011D}{\^g} - \DeclareUnicodeCharacter{011E}{\u{G}} - \DeclareUnicodeCharacter{011F}{\u{g}} - - \DeclareUnicodeCharacter{0120}{\dotaccent{G}} - \DeclareUnicodeCharacter{0121}{\dotaccent{g}} - \DeclareUnicodeCharacter{0124}{\^H} - \DeclareUnicodeCharacter{0125}{\^h} - \DeclareUnicodeCharacter{0128}{\~I} - \DeclareUnicodeCharacter{0129}{\~{\dotless{i}}} - \DeclareUnicodeCharacter{012A}{\=I} - \DeclareUnicodeCharacter{012B}{\={\dotless{i}}} - \DeclareUnicodeCharacter{012C}{\u{I}} - \DeclareUnicodeCharacter{012D}{\u{\dotless{i}}} - - \DeclareUnicodeCharacter{0130}{\dotaccent{I}} - \DeclareUnicodeCharacter{0131}{\dotless{i}} - \DeclareUnicodeCharacter{0132}{IJ} - \DeclareUnicodeCharacter{0133}{ij} - \DeclareUnicodeCharacter{0134}{\^J} - \DeclareUnicodeCharacter{0135}{\^{\dotless{j}}} - \DeclareUnicodeCharacter{0139}{\'L} - \DeclareUnicodeCharacter{013A}{\'l} - - \DeclareUnicodeCharacter{0141}{\L} - \DeclareUnicodeCharacter{0142}{\l} - \DeclareUnicodeCharacter{0143}{\'N} - \DeclareUnicodeCharacter{0144}{\'n} - \DeclareUnicodeCharacter{0147}{\v{N}} - \DeclareUnicodeCharacter{0148}{\v{n}} - \DeclareUnicodeCharacter{014C}{\=O} - \DeclareUnicodeCharacter{014D}{\=o} - \DeclareUnicodeCharacter{014E}{\u{O}} - \DeclareUnicodeCharacter{014F}{\u{o}} - - \DeclareUnicodeCharacter{0150}{\H{O}} - \DeclareUnicodeCharacter{0151}{\H{o}} - \DeclareUnicodeCharacter{0152}{\OE} - \DeclareUnicodeCharacter{0153}{\oe} - \DeclareUnicodeCharacter{0154}{\'R} - \DeclareUnicodeCharacter{0155}{\'r} - \DeclareUnicodeCharacter{0158}{\v{R}} - \DeclareUnicodeCharacter{0159}{\v{r}} - \DeclareUnicodeCharacter{015A}{\'S} - \DeclareUnicodeCharacter{015B}{\'s} - \DeclareUnicodeCharacter{015C}{\^S} - \DeclareUnicodeCharacter{015D}{\^s} - \DeclareUnicodeCharacter{015E}{\cedilla{S}} - \DeclareUnicodeCharacter{015F}{\cedilla{s}} - - \DeclareUnicodeCharacter{0160}{\v{S}} - \DeclareUnicodeCharacter{0161}{\v{s}} - \DeclareUnicodeCharacter{0162}{\cedilla{t}} - \DeclareUnicodeCharacter{0163}{\cedilla{T}} - \DeclareUnicodeCharacter{0164}{\v{T}} - - \DeclareUnicodeCharacter{0168}{\~U} - \DeclareUnicodeCharacter{0169}{\~u} - \DeclareUnicodeCharacter{016A}{\=U} - \DeclareUnicodeCharacter{016B}{\=u} - \DeclareUnicodeCharacter{016C}{\u{U}} - \DeclareUnicodeCharacter{016D}{\u{u}} - \DeclareUnicodeCharacter{016E}{\ringaccent{U}} - \DeclareUnicodeCharacter{016F}{\ringaccent{u}} - - \DeclareUnicodeCharacter{0170}{\H{U}} - \DeclareUnicodeCharacter{0171}{\H{u}} - \DeclareUnicodeCharacter{0174}{\^W} - \DeclareUnicodeCharacter{0175}{\^w} - \DeclareUnicodeCharacter{0176}{\^Y} - \DeclareUnicodeCharacter{0177}{\^y} - \DeclareUnicodeCharacter{0178}{\"Y} - \DeclareUnicodeCharacter{0179}{\'Z} - \DeclareUnicodeCharacter{017A}{\'z} - \DeclareUnicodeCharacter{017B}{\dotaccent{Z}} - \DeclareUnicodeCharacter{017C}{\dotaccent{z}} - \DeclareUnicodeCharacter{017D}{\v{Z}} - \DeclareUnicodeCharacter{017E}{\v{z}} - - \DeclareUnicodeCharacter{01C4}{D\v{Z}} - \DeclareUnicodeCharacter{01C5}{D\v{z}} - \DeclareUnicodeCharacter{01C6}{d\v{z}} - \DeclareUnicodeCharacter{01C7}{LJ} - \DeclareUnicodeCharacter{01C8}{Lj} - \DeclareUnicodeCharacter{01C9}{lj} - \DeclareUnicodeCharacter{01CA}{NJ} - \DeclareUnicodeCharacter{01CB}{Nj} - \DeclareUnicodeCharacter{01CC}{nj} - \DeclareUnicodeCharacter{01CD}{\v{A}} - \DeclareUnicodeCharacter{01CE}{\v{a}} - \DeclareUnicodeCharacter{01CF}{\v{I}} - - \DeclareUnicodeCharacter{01D0}{\v{\dotless{i}}} - \DeclareUnicodeCharacter{01D1}{\v{O}} - \DeclareUnicodeCharacter{01D2}{\v{o}} - \DeclareUnicodeCharacter{01D3}{\v{U}} - \DeclareUnicodeCharacter{01D4}{\v{u}} - - \DeclareUnicodeCharacter{01E2}{\={\AE}} - \DeclareUnicodeCharacter{01E3}{\={\ae}} - \DeclareUnicodeCharacter{01E6}{\v{G}} - \DeclareUnicodeCharacter{01E7}{\v{g}} - \DeclareUnicodeCharacter{01E8}{\v{K}} - \DeclareUnicodeCharacter{01E9}{\v{k}} - - \DeclareUnicodeCharacter{01F0}{\v{\dotless{j}}} - \DeclareUnicodeCharacter{01F1}{DZ} - \DeclareUnicodeCharacter{01F2}{Dz} - \DeclareUnicodeCharacter{01F3}{dz} - \DeclareUnicodeCharacter{01F4}{\'G} - \DeclareUnicodeCharacter{01F5}{\'g} - \DeclareUnicodeCharacter{01F8}{\`N} - \DeclareUnicodeCharacter{01F9}{\`n} - \DeclareUnicodeCharacter{01FC}{\'{\AE}} - \DeclareUnicodeCharacter{01FD}{\'{\ae}} - \DeclareUnicodeCharacter{01FE}{\'{\O}} - \DeclareUnicodeCharacter{01FF}{\'{\o}} - - \DeclareUnicodeCharacter{021E}{\v{H}} - \DeclareUnicodeCharacter{021F}{\v{h}} - - \DeclareUnicodeCharacter{0226}{\dotaccent{A}} - \DeclareUnicodeCharacter{0227}{\dotaccent{a}} - \DeclareUnicodeCharacter{0228}{\cedilla{E}} - \DeclareUnicodeCharacter{0229}{\cedilla{e}} - \DeclareUnicodeCharacter{022E}{\dotaccent{O}} - \DeclareUnicodeCharacter{022F}{\dotaccent{o}} - - \DeclareUnicodeCharacter{0232}{\=Y} - \DeclareUnicodeCharacter{0233}{\=y} - \DeclareUnicodeCharacter{0237}{\dotless{j}} - - \DeclareUnicodeCharacter{1E02}{\dotaccent{B}} - \DeclareUnicodeCharacter{1E03}{\dotaccent{b}} - \DeclareUnicodeCharacter{1E04}{\udotaccent{B}} - \DeclareUnicodeCharacter{1E05}{\udotaccent{b}} - \DeclareUnicodeCharacter{1E06}{\ubaraccent{B}} - \DeclareUnicodeCharacter{1E07}{\ubaraccent{b}} - \DeclareUnicodeCharacter{1E0A}{\dotaccent{D}} - \DeclareUnicodeCharacter{1E0B}{\dotaccent{d}} - \DeclareUnicodeCharacter{1E0C}{\udotaccent{D}} - \DeclareUnicodeCharacter{1E0D}{\udotaccent{d}} - \DeclareUnicodeCharacter{1E0E}{\ubaraccent{D}} - \DeclareUnicodeCharacter{1E0F}{\ubaraccent{d}} - - \DeclareUnicodeCharacter{1E1E}{\dotaccent{F}} - \DeclareUnicodeCharacter{1E1F}{\dotaccent{f}} - - \DeclareUnicodeCharacter{1E20}{\=G} - \DeclareUnicodeCharacter{1E21}{\=g} - \DeclareUnicodeCharacter{1E22}{\dotaccent{H}} - \DeclareUnicodeCharacter{1E23}{\dotaccent{h}} - \DeclareUnicodeCharacter{1E24}{\udotaccent{H}} - \DeclareUnicodeCharacter{1E25}{\udotaccent{h}} - \DeclareUnicodeCharacter{1E26}{\"H} - \DeclareUnicodeCharacter{1E27}{\"h} - - \DeclareUnicodeCharacter{1E30}{\'K} - \DeclareUnicodeCharacter{1E31}{\'k} - \DeclareUnicodeCharacter{1E32}{\udotaccent{K}} - \DeclareUnicodeCharacter{1E33}{\udotaccent{k}} - \DeclareUnicodeCharacter{1E34}{\ubaraccent{K}} - \DeclareUnicodeCharacter{1E35}{\ubaraccent{k}} - \DeclareUnicodeCharacter{1E36}{\udotaccent{L}} - \DeclareUnicodeCharacter{1E37}{\udotaccent{l}} - \DeclareUnicodeCharacter{1E3A}{\ubaraccent{L}} - \DeclareUnicodeCharacter{1E3B}{\ubaraccent{l}} - \DeclareUnicodeCharacter{1E3E}{\'M} - \DeclareUnicodeCharacter{1E3F}{\'m} - - \DeclareUnicodeCharacter{1E40}{\dotaccent{M}} - \DeclareUnicodeCharacter{1E41}{\dotaccent{m}} - \DeclareUnicodeCharacter{1E42}{\udotaccent{M}} - \DeclareUnicodeCharacter{1E43}{\udotaccent{m}} - \DeclareUnicodeCharacter{1E44}{\dotaccent{N}} - \DeclareUnicodeCharacter{1E45}{\dotaccent{n}} - \DeclareUnicodeCharacter{1E46}{\udotaccent{N}} - \DeclareUnicodeCharacter{1E47}{\udotaccent{n}} - \DeclareUnicodeCharacter{1E48}{\ubaraccent{N}} - \DeclareUnicodeCharacter{1E49}{\ubaraccent{n}} - - \DeclareUnicodeCharacter{1E54}{\'P} - \DeclareUnicodeCharacter{1E55}{\'p} - \DeclareUnicodeCharacter{1E56}{\dotaccent{P}} - \DeclareUnicodeCharacter{1E57}{\dotaccent{p}} - \DeclareUnicodeCharacter{1E58}{\dotaccent{R}} - \DeclareUnicodeCharacter{1E59}{\dotaccent{r}} - \DeclareUnicodeCharacter{1E5A}{\udotaccent{R}} - \DeclareUnicodeCharacter{1E5B}{\udotaccent{r}} - \DeclareUnicodeCharacter{1E5E}{\ubaraccent{R}} - \DeclareUnicodeCharacter{1E5F}{\ubaraccent{r}} - - \DeclareUnicodeCharacter{1E60}{\dotaccent{S}} - \DeclareUnicodeCharacter{1E61}{\dotaccent{s}} - \DeclareUnicodeCharacter{1E62}{\udotaccent{S}} - \DeclareUnicodeCharacter{1E63}{\udotaccent{s}} - \DeclareUnicodeCharacter{1E6A}{\dotaccent{T}} - \DeclareUnicodeCharacter{1E6B}{\dotaccent{t}} - \DeclareUnicodeCharacter{1E6C}{\udotaccent{T}} - \DeclareUnicodeCharacter{1E6D}{\udotaccent{t}} - \DeclareUnicodeCharacter{1E6E}{\ubaraccent{T}} - \DeclareUnicodeCharacter{1E6F}{\ubaraccent{t}} - - \DeclareUnicodeCharacter{1E7C}{\~V} - \DeclareUnicodeCharacter{1E7D}{\~v} - \DeclareUnicodeCharacter{1E7E}{\udotaccent{V}} - \DeclareUnicodeCharacter{1E7F}{\udotaccent{v}} - - \DeclareUnicodeCharacter{1E80}{\`W} - \DeclareUnicodeCharacter{1E81}{\`w} - \DeclareUnicodeCharacter{1E82}{\'W} - \DeclareUnicodeCharacter{1E83}{\'w} - \DeclareUnicodeCharacter{1E84}{\"W} - \DeclareUnicodeCharacter{1E85}{\"w} - \DeclareUnicodeCharacter{1E86}{\dotaccent{W}} - \DeclareUnicodeCharacter{1E87}{\dotaccent{w}} - \DeclareUnicodeCharacter{1E88}{\udotaccent{W}} - \DeclareUnicodeCharacter{1E89}{\udotaccent{w}} - \DeclareUnicodeCharacter{1E8A}{\dotaccent{X}} - \DeclareUnicodeCharacter{1E8B}{\dotaccent{x}} - \DeclareUnicodeCharacter{1E8C}{\"X} - \DeclareUnicodeCharacter{1E8D}{\"x} - \DeclareUnicodeCharacter{1E8E}{\dotaccent{Y}} - \DeclareUnicodeCharacter{1E8F}{\dotaccent{y}} - - \DeclareUnicodeCharacter{1E90}{\^Z} - \DeclareUnicodeCharacter{1E91}{\^z} - \DeclareUnicodeCharacter{1E92}{\udotaccent{Z}} - \DeclareUnicodeCharacter{1E93}{\udotaccent{z}} - \DeclareUnicodeCharacter{1E94}{\ubaraccent{Z}} - \DeclareUnicodeCharacter{1E95}{\ubaraccent{z}} - \DeclareUnicodeCharacter{1E96}{\ubaraccent{h}} - \DeclareUnicodeCharacter{1E97}{\"t} - \DeclareUnicodeCharacter{1E98}{\ringaccent{w}} - \DeclareUnicodeCharacter{1E99}{\ringaccent{y}} - - \DeclareUnicodeCharacter{1EA0}{\udotaccent{A}} - \DeclareUnicodeCharacter{1EA1}{\udotaccent{a}} - - \DeclareUnicodeCharacter{1EB8}{\udotaccent{E}} - \DeclareUnicodeCharacter{1EB9}{\udotaccent{e}} - \DeclareUnicodeCharacter{1EBC}{\~E} - \DeclareUnicodeCharacter{1EBD}{\~e} - - \DeclareUnicodeCharacter{1ECA}{\udotaccent{I}} - \DeclareUnicodeCharacter{1ECB}{\udotaccent{i}} - \DeclareUnicodeCharacter{1ECC}{\udotaccent{O}} - \DeclareUnicodeCharacter{1ECD}{\udotaccent{o}} - - \DeclareUnicodeCharacter{1EE4}{\udotaccent{U}} - \DeclareUnicodeCharacter{1EE5}{\udotaccent{u}} - - \DeclareUnicodeCharacter{1EF2}{\`Y} - \DeclareUnicodeCharacter{1EF3}{\`y} - \DeclareUnicodeCharacter{1EF4}{\udotaccent{Y}} - - \DeclareUnicodeCharacter{1EF8}{\~Y} - \DeclareUnicodeCharacter{1EF9}{\~y} - - \DeclareUnicodeCharacter{2013}{--} - \DeclareUnicodeCharacter{2014}{---} - \DeclareUnicodeCharacter{2018}{\quoteleft} - \DeclareUnicodeCharacter{2019}{\quoteright} - \DeclareUnicodeCharacter{201A}{\quotesinglbase} - \DeclareUnicodeCharacter{201C}{\quotedblleft} - \DeclareUnicodeCharacter{201D}{\quotedblright} - \DeclareUnicodeCharacter{201E}{\quotedblbase} - \DeclareUnicodeCharacter{2022}{\bullet} - \DeclareUnicodeCharacter{2026}{\dots} - \DeclareUnicodeCharacter{2039}{\guilsinglleft} - \DeclareUnicodeCharacter{203A}{\guilsinglright} - \DeclareUnicodeCharacter{20AC}{\euro} - - \DeclareUnicodeCharacter{2192}{\expansion} - \DeclareUnicodeCharacter{21D2}{\result} - - \DeclareUnicodeCharacter{2212}{\minus} - \DeclareUnicodeCharacter{2217}{\point} - \DeclareUnicodeCharacter{2261}{\equiv} -}% end of \utfeightchardefs - - -% US-ASCII character definitions. -\def\asciichardefs{% nothing need be done - \relax -} - -% Make non-ASCII characters printable again for compatibility with -% existing Texinfo documents that may use them, even without declaring a -% document encoding. -% -\setnonasciicharscatcode \other - - -\message{formatting,} - -\newdimen\defaultparindent \defaultparindent = 15pt - -\chapheadingskip = 15pt plus 4pt minus 2pt -\secheadingskip = 12pt plus 3pt minus 2pt -\subsecheadingskip = 9pt plus 2pt minus 2pt - -% Prevent underfull vbox error messages. -\vbadness = 10000 - -% Don't be so finicky about underfull hboxes, either. -\hbadness = 2000 - -% Following George Bush, get rid of widows and orphans. -\widowpenalty=10000 -\clubpenalty=10000 - -% Use TeX 3.0's \emergencystretch to help line breaking, but if we're -% using an old version of TeX, don't do anything. We want the amount of -% stretch added to depend on the line length, hence the dependence on -% \hsize. We call this whenever the paper size is set. -% -\def\setemergencystretch{% - \ifx\emergencystretch\thisisundefined - % Allow us to assign to \emergencystretch anyway. - \def\emergencystretch{\dimen0}% - \else - \emergencystretch = .15\hsize - \fi -} - -% Parameters in order: 1) textheight; 2) textwidth; -% 3) voffset; 4) hoffset; 5) binding offset; 6) topskip; -% 7) physical page height; 8) physical page width. -% -% We also call \setleading{\textleading}, so the caller should define -% \textleading. The caller should also set \parskip. -% -\def\internalpagesizes#1#2#3#4#5#6#7#8{% - \voffset = #3\relax - \topskip = #6\relax - \splittopskip = \topskip - % - \vsize = #1\relax - \advance\vsize by \topskip - \outervsize = \vsize - \advance\outervsize by 2\topandbottommargin - \pageheight = \vsize - % - \hsize = #2\relax - \outerhsize = \hsize - \advance\outerhsize by 0.5in - \pagewidth = \hsize - % - \normaloffset = #4\relax - \bindingoffset = #5\relax - % - \ifpdf - \pdfpageheight #7\relax - \pdfpagewidth #8\relax - % if we don't reset these, they will remain at "1 true in" of - % whatever layout pdftex was dumped with. - \pdfhorigin = 1 true in - \pdfvorigin = 1 true in - \fi - % - \setleading{\textleading} - % - \parindent = \defaultparindent - \setemergencystretch -} - -% @letterpaper (the default). -\def\letterpaper{{\globaldefs = 1 - \parskip = 3pt plus 2pt minus 1pt - \textleading = 13.2pt - % - % If page is nothing but text, make it come out even. - \internalpagesizes{607.2pt}{6in}% that's 46 lines - {\voffset}{.25in}% - {\bindingoffset}{36pt}% - {11in}{8.5in}% -}} - -% Use @smallbook to reset parameters for 7x9.25 trim size. -\def\smallbook{{\globaldefs = 1 - \parskip = 2pt plus 1pt - \textleading = 12pt - % - \internalpagesizes{7.5in}{5in}% - {-.2in}{0in}% - {\bindingoffset}{16pt}% - {9.25in}{7in}% - % - \lispnarrowing = 0.3in - \tolerance = 700 - \hfuzz = 1pt - \contentsrightmargin = 0pt - \defbodyindent = .5cm -}} - -% Use @smallerbook to reset parameters for 6x9 trim size. -% (Just testing, parameters still in flux.) -\def\smallerbook{{\globaldefs = 1 - \parskip = 1.5pt plus 1pt - \textleading = 12pt - % - \internalpagesizes{7.4in}{4.8in}% - {-.2in}{-.4in}% - {0pt}{14pt}% - {9in}{6in}% - % - \lispnarrowing = 0.25in - \tolerance = 700 - \hfuzz = 1pt - \contentsrightmargin = 0pt - \defbodyindent = .4cm -}} - -% Use @afourpaper to print on European A4 paper. -\def\afourpaper{{\globaldefs = 1 - \parskip = 3pt plus 2pt minus 1pt - \textleading = 13.2pt - % - % Double-side printing via postscript on Laserjet 4050 - % prints double-sided nicely when \bindingoffset=10mm and \hoffset=-6mm. - % To change the settings for a different printer or situation, adjust - % \normaloffset until the front-side and back-side texts align. Then - % do the same for \bindingoffset. You can set these for testing in - % your texinfo source file like this: - % @tex - % \global\normaloffset = -6mm - % \global\bindingoffset = 10mm - % @end tex - \internalpagesizes{673.2pt}{160mm}% that's 51 lines - {\voffset}{\hoffset}% - {\bindingoffset}{44pt}% - {297mm}{210mm}% - % - \tolerance = 700 - \hfuzz = 1pt - \contentsrightmargin = 0pt - \defbodyindent = 5mm -}} - -% Use @afivepaper to print on European A5 paper. -% From romildo@urano.iceb.ufop.br, 2 July 2000. -% He also recommends making @example and @lisp be small. -\def\afivepaper{{\globaldefs = 1 - \parskip = 2pt plus 1pt minus 0.1pt - \textleading = 12.5pt - % - \internalpagesizes{160mm}{120mm}% - {\voffset}{\hoffset}% - {\bindingoffset}{8pt}% - {210mm}{148mm}% - % - \lispnarrowing = 0.2in - \tolerance = 800 - \hfuzz = 1.2pt - \contentsrightmargin = 0pt - \defbodyindent = 2mm - \tableindent = 12mm -}} - -% A specific text layout, 24x15cm overall, intended for A4 paper. -\def\afourlatex{{\globaldefs = 1 - \afourpaper - \internalpagesizes{237mm}{150mm}% - {\voffset}{4.6mm}% - {\bindingoffset}{7mm}% - {297mm}{210mm}% - % - % Must explicitly reset to 0 because we call \afourpaper. - \globaldefs = 0 -}} - -% Use @afourwide to print on A4 paper in landscape format. -\def\afourwide{{\globaldefs = 1 - \afourpaper - \internalpagesizes{241mm}{165mm}% - {\voffset}{-2.95mm}% - {\bindingoffset}{7mm}% - {297mm}{210mm}% - \globaldefs = 0 -}} - -% @pagesizes TEXTHEIGHT[,TEXTWIDTH] -% Perhaps we should allow setting the margins, \topskip, \parskip, -% and/or leading, also. Or perhaps we should compute them somehow. -% -\parseargdef\pagesizes{\pagesizesyyy #1,,\finish} -\def\pagesizesyyy#1,#2,#3\finish{{% - \setbox0 = \hbox{\ignorespaces #2}\ifdim\wd0 > 0pt \hsize=#2\relax \fi - \globaldefs = 1 - % - \parskip = 3pt plus 2pt minus 1pt - \setleading{\textleading}% - % - \dimen0 = #1\relax - \advance\dimen0 by \voffset - % - \dimen2 = \hsize - \advance\dimen2 by \normaloffset - % - \internalpagesizes{#1}{\hsize}% - {\voffset}{\normaloffset}% - {\bindingoffset}{44pt}% - {\dimen0}{\dimen2}% -}} - -% Set default to letter. -% -\letterpaper - - -\message{and turning on texinfo input format.} - -% Define macros to output various characters with catcode for normal text. -\catcode`\"=\other -\catcode`\~=\other -\catcode`\^=\other -\catcode`\_=\other -\catcode`\|=\other -\catcode`\<=\other -\catcode`\>=\other -\catcode`\+=\other -\catcode`\$=\other -\def\normaldoublequote{"} -\def\normaltilde{~} -\def\normalcaret{^} -\def\normalunderscore{_} -\def\normalverticalbar{|} -\def\normalless{<} -\def\normalgreater{>} -\def\normalplus{+} -\def\normaldollar{$}%$ font-lock fix - -% This macro is used to make a character print one way in \tt -% (where it can probably be output as-is), and another way in other fonts, -% where something hairier probably needs to be done. -% -% #1 is what to print if we are indeed using \tt; #2 is what to print -% otherwise. Since all the Computer Modern typewriter fonts have zero -% interword stretch (and shrink), and it is reasonable to expect all -% typewriter fonts to have this, we can check that font parameter. -% -\def\ifusingtt#1#2{\ifdim \fontdimen3\font=0pt #1\else #2\fi} - -% Same as above, but check for italic font. Actually this also catches -% non-italic slanted fonts since it is impossible to distinguish them from -% italic fonts. But since this is only used by $ and it uses \sl anyway -% this is not a problem. -\def\ifusingit#1#2{\ifdim \fontdimen1\font>0pt #1\else #2\fi} - -% Turn off all special characters except @ -% (and those which the user can use as if they were ordinary). -% Most of these we simply print from the \tt font, but for some, we can -% use math or other variants that look better in normal text. - -\catcode`\"=\active -\def\activedoublequote{{\tt\char34}} -\let"=\activedoublequote -\catcode`\~=\active -\def~{{\tt\char126}} -\chardef\hat=`\^ -\catcode`\^=\active -\def^{{\tt \hat}} - -\catcode`\_=\active -\def_{\ifusingtt\normalunderscore\_} -\let\realunder=_ -% Subroutine for the previous macro. -\def\_{\leavevmode \kern.07em \vbox{\hrule width.3em height.1ex}\kern .07em } - -\catcode`\|=\active -\def|{{\tt\char124}} -\chardef \less=`\< -\catcode`\<=\active -\def<{{\tt \less}} -\chardef \gtr=`\> -\catcode`\>=\active -\def>{{\tt \gtr}} -\catcode`\+=\active -\def+{{\tt \char 43}} -\catcode`\$=\active -\def${\ifusingit{{\sl\$}}\normaldollar}%$ font-lock fix - -% If a .fmt file is being used, characters that might appear in a file -% name cannot be active until we have parsed the command line. -% So turn them off again, and have \everyjob (or @setfilename) turn them on. -% \otherifyactive is called near the end of this file. -\def\otherifyactive{\catcode`+=\other \catcode`\_=\other} - -% Used sometimes to turn off (effectively) the active characters even after -% parsing them. -\def\turnoffactive{% - \normalturnoffactive - \otherbackslash -} - -\catcode`\@=0 - -% \backslashcurfont outputs one backslash character in current font, -% as in \char`\\. -\global\chardef\backslashcurfont=`\\ -\global\let\rawbackslashxx=\backslashcurfont % let existing .??s files work - -% \realbackslash is an actual character `\' with catcode other, and -% \doublebackslash is two of them (for the pdf outlines). -{\catcode`\\=\other @gdef@realbackslash{\} @gdef@doublebackslash{\\}} - -% In texinfo, backslash is an active character; it prints the backslash -% in fixed width font. -\catcode`\\=\active -@def@normalbackslash{{@tt@backslashcurfont}} -% On startup, @fixbackslash assigns: -% @let \ = @normalbackslash - -% \rawbackslash defines an active \ to do \backslashcurfont. -% \otherbackslash defines an active \ to be a literal `\' character with -% catcode other. -@gdef@rawbackslash{@let\=@backslashcurfont} -@gdef@otherbackslash{@let\=@realbackslash} - -% Same as @turnoffactive except outputs \ as {\tt\char`\\} instead of -% the literal character `\'. -% -@def@normalturnoffactive{% - @let\=@normalbackslash - @let"=@normaldoublequote - @let~=@normaltilde - @let^=@normalcaret - @let_=@normalunderscore - @let|=@normalverticalbar - @let<=@normalless - @let>=@normalgreater - @let+=@normalplus - @let$=@normaldollar %$ font-lock fix - @unsepspaces -} - -% Make _ and + \other characters, temporarily. -% This is canceled by @fixbackslash. -@otherifyactive - -% If a .fmt file is being used, we don't want the `\input texinfo' to show up. -% That is what \eatinput is for; after that, the `\' should revert to printing -% a backslash. -% -@gdef@eatinput input texinfo{@fixbackslash} -@global@let\ = @eatinput - -% On the other hand, perhaps the file did not have a `\input texinfo'. Then -% the first `\' in the file would cause an error. This macro tries to fix -% that, assuming it is called before the first `\' could plausibly occur. -% Also turn back on active characters that might appear in the input -% file name, in case not using a pre-dumped format. -% -@gdef@fixbackslash{% - @ifx\@eatinput @let\ = @normalbackslash @fi - @catcode`+=@active - @catcode`@_=@active -} - -% Say @foo, not \foo, in error messages. -@escapechar = `@@ - -% These look ok in all fonts, so just make them not special. -@catcode`@& = @other -@catcode`@# = @other -@catcode`@% = @other - - -@c Local variables: -@c eval: (add-hook 'write-file-hooks 'time-stamp) -@c page-delimiter: "^\\\\message" -@c time-stamp-start: "def\\\\texinfoversion{" -@c time-stamp-format: "%:y-%02m-%02d.%02H" -@c time-stamp-end: "}" -@c End: - -@c vim:sw=2: - -@ignore - arch-tag: e1b36e32-c96e-4135-a41a-0b2efa2ea115 -@end ignore diff --git a/thirdparty/grub-2.04/docs/version-dev.texi b/thirdparty/grub-2.04/docs/version-dev.texi deleted file mode 100644 index be8a676cb..000000000 --- a/thirdparty/grub-2.04/docs/version-dev.texi +++ /dev/null @@ -1,4 +0,0 @@ -@set UPDATED 24 June 2019 -@set UPDATED-MONTH June 2019 -@set EDITION 2.04 -@set VERSION 2.04 diff --git a/thirdparty/grub-2.04/docs/version.texi b/thirdparty/grub-2.04/docs/version.texi deleted file mode 100644 index be8a676cb..000000000 --- a/thirdparty/grub-2.04/docs/version.texi +++ /dev/null @@ -1,4 +0,0 @@ -@set UPDATED 24 June 2019 -@set UPDATED-MONTH June 2019 -@set EDITION 2.04 -@set VERSION 2.04 diff --git a/thirdparty/grub-2.04/geninit.sh b/thirdparty/grub-2.04/geninit.sh deleted file mode 100644 index f0810120f..000000000 --- a/thirdparty/grub-2.04/geninit.sh +++ /dev/null @@ -1,69 +0,0 @@ -#! /bin/sh -# -# Copyright (C) 2002,2005,2007 Free Software Foundation, Inc. -# -# This gensymlist.sh is free software; the author -# gives unlimited permission to copy and/or distribute it, -# with or without modifications, as long as this notice is preserved. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY, to the extent permitted by law; without -# even the implied warranty of MERCHANTABILITY or FITNESS FOR A -# PARTICULAR PURPOSE. - -cat <. - */ - -#include - -EOF - -for mod in "$@"; do - echo "extern void grub_${mod}_init (void);" - echo "extern void grub_${mod}_fini (void);" -done - -cat <. - -from __future__ import print_function - -__metaclass__ = type - -from optparse import OptionParser -import re - -# -# This is the python script used to generate Makefile.*.am -# - -GRUB_PLATFORMS = [ "emu", "i386_pc", "i386_efi", "i386_qemu", "i386_coreboot", - "i386_multiboot", "i386_ieee1275", "x86_64_efi", - "i386_xen", "x86_64_xen", "i386_xen_pvh", - "mips_loongson", "sparc64_ieee1275", - "powerpc_ieee1275", "mips_arc", "ia64_efi", - "mips_qemu_mips", "arm_uboot", "arm_efi", "arm64_efi", - "arm_coreboot", "riscv32_efi", "riscv64_efi" ] - -GROUPS = {} - -GROUPS["common"] = GRUB_PLATFORMS[:] - -# Groups based on CPU -GROUPS["i386"] = [ "i386_pc", "i386_efi", "i386_qemu", "i386_coreboot", "i386_multiboot", "i386_ieee1275" ] -GROUPS["x86_64"] = [ "x86_64_efi" ] -GROUPS["x86"] = GROUPS["i386"] + GROUPS["x86_64"] -GROUPS["mips"] = [ "mips_loongson", "mips_qemu_mips", "mips_arc" ] -GROUPS["sparc64"] = [ "sparc64_ieee1275" ] -GROUPS["powerpc"] = [ "powerpc_ieee1275" ] -GROUPS["arm"] = [ "arm_uboot", "arm_efi", "arm_coreboot" ] -GROUPS["arm64"] = [ "arm64_efi" ] -GROUPS["riscv32"] = [ "riscv32_efi" ] -GROUPS["riscv64"] = [ "riscv64_efi" ] - -# Groups based on firmware -GROUPS["efi"] = [ "i386_efi", "x86_64_efi", "ia64_efi", "arm_efi", "arm64_efi", - "riscv32_efi", "riscv64_efi" ] -GROUPS["ieee1275"] = [ "i386_ieee1275", "sparc64_ieee1275", "powerpc_ieee1275" ] -GROUPS["uboot"] = [ "arm_uboot" ] -GROUPS["xen"] = [ "i386_xen", "x86_64_xen" ] -GROUPS["coreboot"] = [ "i386_coreboot", "arm_coreboot" ] - -# emu is a special case so many core functionality isn't needed on this platform -GROUPS["noemu"] = GRUB_PLATFORMS[:]; GROUPS["noemu"].remove("emu") - -# Groups based on hardware features -GROUPS["cmos"] = GROUPS["x86"][:] + ["mips_loongson", "mips_qemu_mips", - "sparc64_ieee1275", "powerpc_ieee1275"] -GROUPS["cmos"].remove("i386_efi"); GROUPS["cmos"].remove("x86_64_efi"); -GROUPS["pci"] = GROUPS["x86"] + ["mips_loongson"] -GROUPS["usb"] = GROUPS["pci"] + ["arm_coreboot"] - -# If gfxterm is main output console integrate it into kernel -GROUPS["videoinkernel"] = ["mips_loongson", "i386_coreboot", "arm_coreboot" ] -GROUPS["videomodules"] = GRUB_PLATFORMS[:]; -for i in GROUPS["videoinkernel"]: GROUPS["videomodules"].remove(i) - -# Similar for terminfo -GROUPS["terminfoinkernel"] = [ "emu", "mips_loongson", "mips_arc", "mips_qemu_mips", "i386_xen_pvh" ] + GROUPS["xen"] + GROUPS["ieee1275"] + GROUPS["uboot"]; -GROUPS["terminfomodule"] = GRUB_PLATFORMS[:]; -for i in GROUPS["terminfoinkernel"]: GROUPS["terminfomodule"].remove(i) - -# Flattened Device Trees (FDT) -GROUPS["fdt"] = [ "arm64_efi", "arm_uboot", "arm_efi", "riscv32_efi", "riscv64_efi" ] - -# Needs software helpers for division -# Must match GRUB_DIVISION_IN_SOFTWARE in misc.h -GROUPS["softdiv"] = GROUPS["arm"] + ["ia64_efi"] + GROUPS["riscv32"] -GROUPS["no_softdiv"] = GRUB_PLATFORMS[:] -for i in GROUPS["softdiv"]: GROUPS["no_softdiv"].remove(i) - -# Miscellaneous groups scheduled to disappear in future -GROUPS["i386_coreboot_multiboot_qemu"] = ["i386_coreboot", "i386_multiboot", "i386_qemu"] -GROUPS["nopc"] = GRUB_PLATFORMS[:]; GROUPS["nopc"].remove("i386_pc") - -# -# Create platform => groups reverse map, where groups covering that -# platform are ordered by their sizes -# -RMAP = {} -for platform in GRUB_PLATFORMS: - # initialize with platform itself as a group - RMAP[platform] = [ platform ] - - for k in GROUPS.keys(): - v = GROUPS[k] - # skip groups that don't cover this platform - if platform not in v: continue - - bigger = [] - smaller = [] - # partition currently known groups based on their size - for group in RMAP[platform]: - if group in GRUB_PLATFORMS: smaller.append(group) - elif len(GROUPS[group]) < len(v): smaller.append(group) - else: bigger.append(group) - # insert in the middle - RMAP[platform] = smaller + [ k ] + bigger - -# -# Input -# - -# We support a subset of the AutoGen definitions file syntax. Specifically, -# compound names are disallowed; some preprocessing directives are -# disallowed (though #if/#endif are allowed; note that, like AutoGen, #if -# skips everything to the next #endif regardless of the value of the -# conditional); and shell-generated strings, Scheme-generated strings, and -# here strings are disallowed. - -class AutogenToken: - (autogen, definitions, eof, var_name, other_name, string, number, - semicolon, equals, comma, lbrace, rbrace, lbracket, rbracket) = range(14) - -class AutogenState: - (init, need_def, need_tpl, need_semi, need_name, have_name, need_value, - need_idx, need_rbracket, indx_name, have_value, done) = range(12) - -class AutogenParseError(Exception): - def __init__(self, message, path, line): - super(AutogenParseError, self).__init__(message) - self.path = path - self.line = line - - def __str__(self): - return ( - super(AutogenParseError, self).__str__() + - " at file %s line %d" % (self.path, self.line)) - -class AutogenDefinition(list): - def __getitem__(self, key): - try: - return super(AutogenDefinition, self).__getitem__(key) - except TypeError: - for name, value in self: - if name == key: - return value - - def __contains__(self, key): - for name, value in self: - if name == key: - return True - return False - - def get(self, key, default): - for name, value in self: - if name == key: - return value - else: - return default - - def find_all(self, key): - for name, value in self: - if name == key: - yield value - -class AutogenParser: - def __init__(self): - self.definitions = AutogenDefinition() - self.def_stack = [("", self.definitions)] - self.curdef = None - self.new_name = None - self.cur_path = None - self.cur_line = 0 - - @staticmethod - def is_unquotable_char(c): - return (ord(c) in range(ord("!"), ord("~") + 1) and - c not in "#,;<=>[\\]`{}?*'\"()") - - @staticmethod - def is_value_name_char(c): - return c in ":^-_" or c.isalnum() - - def error(self, message): - raise AutogenParseError(message, self.cur_file, self.cur_line) - - def read_tokens(self, f): - data = f.read() - end = len(data) - offset = 0 - while offset < end: - while offset < end and data[offset].isspace(): - if data[offset] == "\n": - self.cur_line += 1 - offset += 1 - if offset >= end: - break - c = data[offset] - if c == "#": - offset += 1 - try: - end_directive = data.index("\n", offset) - directive = data[offset:end_directive] - offset = end_directive - except ValueError: - directive = data[offset:] - offset = end - name, value = directive.split(None, 1) - if name == "if": - try: - end_if = data.index("\n#endif", offset) - new_offset = end_if + len("\n#endif") - self.cur_line += data[offset:new_offset].count("\n") - offset = new_offset - except ValueError: - self.error("#if without matching #endif") - else: - self.error("Unhandled directive '#%s'" % name) - elif c == "{": - yield AutogenToken.lbrace, c - offset += 1 - elif c == "=": - yield AutogenToken.equals, c - offset += 1 - elif c == "}": - yield AutogenToken.rbrace, c - offset += 1 - elif c == "[": - yield AutogenToken.lbracket, c - offset += 1 - elif c == "]": - yield AutogenToken.rbracket, c - offset += 1 - elif c == ";": - yield AutogenToken.semicolon, c - offset += 1 - elif c == ",": - yield AutogenToken.comma, c - offset += 1 - elif c in ("'", '"'): - s = [] - while True: - offset += 1 - if offset >= end: - self.error("EOF in quoted string") - if data[offset] == "\n": - self.cur_line += 1 - if data[offset] == "\\": - offset += 1 - if offset >= end: - self.error("EOF in quoted string") - if data[offset] == "\n": - self.cur_line += 1 - # Proper escaping unimplemented; this can be filled - # out if needed. - s.append("\\") - s.append(data[offset]) - elif data[offset] == c: - offset += 1 - break - else: - s.append(data[offset]) - yield AutogenToken.string, "".join(s) - elif c == "/": - offset += 1 - if data[offset] == "*": - offset += 1 - try: - end_comment = data.index("*/", offset) - new_offset = end_comment + len("*/") - self.cur_line += data[offset:new_offset].count("\n") - offset = new_offset - except ValueError: - self.error("/* without matching */") - elif data[offset] == "/": - try: - offset = data.index("\n", offset) - except ValueError: - pass - elif (c.isdigit() or - (c == "-" and offset < end - 1 and - data[offset + 1].isdigit())): - end_number = offset + 1 - while end_number < end and data[end_number].isdigit(): - end_number += 1 - yield AutogenToken.number, data[offset:end_number] - offset = end_number - elif self.is_unquotable_char(c): - end_name = offset - while (end_name < end and - self.is_value_name_char(data[end_name])): - end_name += 1 - if end_name < end and self.is_unquotable_char(data[end_name]): - while (end_name < end and - self.is_unquotable_char(data[end_name])): - end_name += 1 - yield AutogenToken.other_name, data[offset:end_name] - offset = end_name - else: - s = data[offset:end_name] - if s.lower() == "autogen": - yield AutogenToken.autogen, s - elif s.lower() == "definitions": - yield AutogenToken.definitions, s - else: - yield AutogenToken.var_name, s - offset = end_name - else: - self.error("Invalid input character '%s'" % c) - yield AutogenToken.eof, None - - def do_need_name_end(self, token): - if len(self.def_stack) > 1: - self.error("Definition blocks were left open") - - def do_need_name_var_name(self, token): - self.new_name = token - - def do_end_block(self, token): - if len(self.def_stack) <= 1: - self.error("Too many close braces") - new_name, parent_def = self.def_stack.pop() - parent_def.append((new_name, self.curdef)) - self.curdef = parent_def - - def do_empty_val(self, token): - self.curdef.append((self.new_name, "")) - - def do_str_value(self, token): - self.curdef.append((self.new_name, token)) - - def do_start_block(self, token): - self.def_stack.append((self.new_name, self.curdef)) - self.curdef = AutogenDefinition() - - def do_indexed_name(self, token): - self.new_name = token - - def read_definitions_file(self, f): - self.curdef = self.definitions - self.cur_line = 0 - state = AutogenState.init - - # The following transition table was reduced from the Autogen - # documentation: - # info -f autogen -n 'Full Syntax' - transitions = { - AutogenState.init: { - AutogenToken.autogen: (AutogenState.need_def, None), - }, - AutogenState.need_def: { - AutogenToken.definitions: (AutogenState.need_tpl, None), - }, - AutogenState.need_tpl: { - AutogenToken.var_name: (AutogenState.need_semi, None), - AutogenToken.other_name: (AutogenState.need_semi, None), - AutogenToken.string: (AutogenState.need_semi, None), - }, - AutogenState.need_semi: { - AutogenToken.semicolon: (AutogenState.need_name, None), - }, - AutogenState.need_name: { - AutogenToken.autogen: (AutogenState.need_def, None), - AutogenToken.eof: (AutogenState.done, self.do_need_name_end), - AutogenToken.var_name: ( - AutogenState.have_name, self.do_need_name_var_name), - AutogenToken.rbrace: ( - AutogenState.have_value, self.do_end_block), - }, - AutogenState.have_name: { - AutogenToken.semicolon: ( - AutogenState.need_name, self.do_empty_val), - AutogenToken.equals: (AutogenState.need_value, None), - AutogenToken.lbracket: (AutogenState.need_idx, None), - }, - AutogenState.need_value: { - AutogenToken.var_name: ( - AutogenState.have_value, self.do_str_value), - AutogenToken.other_name: ( - AutogenState.have_value, self.do_str_value), - AutogenToken.string: ( - AutogenState.have_value, self.do_str_value), - AutogenToken.number: ( - AutogenState.have_value, self.do_str_value), - AutogenToken.lbrace: ( - AutogenState.need_name, self.do_start_block), - }, - AutogenState.need_idx: { - AutogenToken.var_name: ( - AutogenState.need_rbracket, self.do_indexed_name), - AutogenToken.number: ( - AutogenState.need_rbracket, self.do_indexed_name), - }, - AutogenState.need_rbracket: { - AutogenToken.rbracket: (AutogenState.indx_name, None), - }, - AutogenState.indx_name: { - AutogenToken.semicolon: ( - AutogenState.need_name, self.do_empty_val), - AutogenToken.equals: (AutogenState.need_value, None), - }, - AutogenState.have_value: { - AutogenToken.semicolon: (AutogenState.need_name, None), - AutogenToken.comma: (AutogenState.need_value, None), - }, - } - - for code, token in self.read_tokens(f): - if code in transitions[state]: - state, handler = transitions[state][code] - if handler is not None: - handler(token) - else: - self.error( - "Parse error in state %s: unexpected token '%s'" % ( - state, token)) - if state == AutogenState.done: - break - - def read_definitions(self, path): - self.cur_file = path - with open(path) as f: - self.read_definitions_file(f) - -defparser = AutogenParser() - -# -# Output -# - -outputs = {} - -def output(s, section=''): - if s == "": - return - outputs.setdefault(section, []) - outputs[section].append(s) - -def write_output(section=''): - for s in outputs.get(section, []): - print(s, end='') - -# -# Global variables -# - -def gvar_add(var, value): - output(var + " += " + value + "\n") - -# -# Per PROGRAM/SCRIPT variables -# - -seen_vars = set() - -def vars_init(defn, *var_list): - name = defn['name'] - - if name not in seen_target and name not in seen_vars: - for var in var_list: - output(var + " = \n", section='decl') - seen_vars.add(name) - -def var_set(var, value): - output(var + " = " + value + "\n") - -def var_add(var, value): - output(var + " += " + value + "\n") - -# -# Variable names and rules -# - -canonical_name_re = re.compile(r'[^0-9A-Za-z@_]') -canonical_name_suffix = "" - -def set_canonical_name_suffix(suffix): - global canonical_name_suffix - canonical_name_suffix = suffix - -def cname(defn): - return canonical_name_re.sub('_', defn['name'] + canonical_name_suffix) - -def rule(target, source, cmd): - if cmd[0] == "\n": - output("\n" + target + ": " + source + cmd.replace("\n", "\n\t") + "\n") - else: - output("\n" + target + ": " + source + "\n\t" + cmd.replace("\n", "\n\t") + "\n") - -# -# Handle keys with platform names as values, for example: -# -# kernel = { -# nostrip = emu; -# ... -# } -# -def platform_tagged(defn, platform, tag): - for value in defn.find_all(tag): - for group in RMAP[platform]: - if value == group: - return True - return False - -def if_platform_tagged(defn, platform, tag, snippet_if, snippet_else=None): - if platform_tagged(defn, platform, tag): - return snippet_if - elif snippet_else is not None: - return snippet_else - -# -# Handle tagged values -# -# module = { -# extra_dist = ... -# extra_dist = ... -# ... -# }; -# -def foreach_value(defn, tag, closure): - r = [] - for value in defn.find_all(tag): - r.append(closure(value)) - return ''.join(r) - -# -# Handle best matched values for a platform, for example: -# -# module = { -# cflags = '-Wall'; -# emu_cflags = '-Wall -DGRUB_EMU=1'; -# ... -# } -# -def foreach_platform_specific_value(defn, platform, suffix, nonetag, closure): - r = [] - for group in RMAP[platform]: - values = list(defn.find_all(group + suffix)) - if values: - for value in values: - r.append(closure(value)) - break - else: - for value in defn.find_all(nonetag): - r.append(closure(value)) - return ''.join(r) - -# -# Handle values from sum of all groups for a platform, for example: -# -# module = { -# common = kern/misc.c; -# emu = kern/emu/misc.c; -# ... -# } -# -def foreach_platform_value(defn, platform, suffix, closure): - r = [] - for group in RMAP[platform]: - for value in defn.find_all(group + suffix): - r.append(closure(value)) - return ''.join(r) - -def platform_conditional(platform, closure): - output("\nif COND_" + platform + "\n") - closure(platform) - output("endif\n") - -# -# Handle guarding with platform-specific "enable" keys, for example: -# -# module = { -# name = pci; -# noemu = bus/pci.c; -# emu = bus/emu/pci.c; -# emu = commands/lspci.c; -# -# enable = emu; -# enable = i386_pc; -# enable = x86_efi; -# enable = i386_ieee1275; -# enable = i386_coreboot; -# }; -# -def foreach_enabled_platform(defn, closure): - if 'enable' in defn: - for platform in GRUB_PLATFORMS: - if platform_tagged(defn, platform, "enable"): - platform_conditional(platform, closure) - else: - for platform in GRUB_PLATFORMS: - platform_conditional(platform, closure) - -# -# Handle guarding with platform-specific automake conditionals, for example: -# -# module = { -# name = usb; -# common = bus/usb/usb.c; -# noemu = bus/usb/usbtrans.c; -# noemu = bus/usb/usbhub.c; -# enable = emu; -# enable = i386; -# enable = mips_loongson; -# emu_condition = COND_GRUB_EMU_SDL; -# }; -# -def under_platform_specific_conditionals(defn, platform, closure): - output(foreach_platform_specific_value(defn, platform, "_condition", "condition", lambda cond: "if " + cond + "\n")) - closure(defn, platform) - output(foreach_platform_specific_value(defn, platform, "_condition", "condition", lambda cond: "endif " + cond + "\n")) - -def platform_specific_values(defn, platform, suffix, nonetag): - return foreach_platform_specific_value(defn, platform, suffix, nonetag, - lambda value: value + " ") - -def platform_values(defn, platform, suffix): - return foreach_platform_value(defn, platform, suffix, lambda value: value + " ") - -def extra_dist(defn): - return foreach_value(defn, "extra_dist", lambda value: value + " ") - -def platform_sources(defn, p): return platform_values(defn, p, "") -def platform_nodist_sources(defn, p): return platform_values(defn, p, "_nodist") - -def platform_startup(defn, p): return platform_specific_values(defn, p, "_startup", "startup") -def platform_ldadd(defn, p): return platform_specific_values(defn, p, "_ldadd", "ldadd") -def platform_dependencies(defn, p): return platform_specific_values(defn, p, "_dependencies", "dependencies") -def platform_cflags(defn, p): return platform_specific_values(defn, p, "_cflags", "cflags") -def platform_ldflags(defn, p): return platform_specific_values(defn, p, "_ldflags", "ldflags") -def platform_cppflags(defn, p): return platform_specific_values(defn, p, "_cppflags", "cppflags") -def platform_ccasflags(defn, p): return platform_specific_values(defn, p, "_ccasflags", "ccasflags") -def platform_stripflags(defn, p): return platform_specific_values(defn, p, "_stripflags", "stripflags") -def platform_objcopyflags(defn, p): return platform_specific_values(defn, p, "_objcopyflags", "objcopyflags") - -# -# Emit snippet only the first time through for the current name. -# -seen_target = set() - -def first_time(defn, snippet): - if defn['name'] not in seen_target: - return snippet - return '' - -def is_platform_independent(defn): - if 'enable' in defn: - return False - for suffix in [ "", "_nodist" ]: - template = platform_values(defn, GRUB_PLATFORMS[0], suffix) - for platform in GRUB_PLATFORMS[1:]: - if template != platform_values(defn, platform, suffix): - return False - - for suffix in [ "startup", "ldadd", "dependencies", "cflags", "ldflags", "cppflags", "ccasflags", "stripflags", "objcopyflags", "condition" ]: - template = platform_specific_values(defn, GRUB_PLATFORMS[0], "_" + suffix, suffix) - for platform in GRUB_PLATFORMS[1:]: - if template != platform_specific_values(defn, platform, "_" + suffix, suffix): - return False - for tag in [ "nostrip" ]: - template = platform_tagged(defn, GRUB_PLATFORMS[0], tag) - for platform in GRUB_PLATFORMS[1:]: - if template != platform_tagged(defn, platform, tag): - return False - - return True - -def module(defn, platform): - name = defn['name'] - set_canonical_name_suffix(".module") - - gvar_add("platform_PROGRAMS", name + ".module") - gvar_add("MODULE_FILES", name + ".module$(EXEEXT)") - - var_set(cname(defn) + "_SOURCES", platform_sources(defn, platform) + " ## platform sources") - var_set("nodist_" + cname(defn) + "_SOURCES", platform_nodist_sources(defn, platform) + " ## platform nodist sources") - var_set(cname(defn) + "_LDADD", platform_ldadd(defn, platform)) - var_set(cname(defn) + "_CFLAGS", "$(AM_CFLAGS) $(CFLAGS_MODULE) " + platform_cflags(defn, platform)) - var_set(cname(defn) + "_LDFLAGS", "$(AM_LDFLAGS) $(LDFLAGS_MODULE) " + platform_ldflags(defn, platform)) - var_set(cname(defn) + "_CPPFLAGS", "$(AM_CPPFLAGS) $(CPPFLAGS_MODULE) " + platform_cppflags(defn, platform)) - var_set(cname(defn) + "_CCASFLAGS", "$(AM_CCASFLAGS) $(CCASFLAGS_MODULE) " + platform_ccasflags(defn, platform)) - var_set(cname(defn) + "_DEPENDENCIES", "$(TARGET_OBJ2ELF) " + platform_dependencies(defn, platform)) - - gvar_add("dist_noinst_DATA", extra_dist(defn)) - gvar_add("BUILT_SOURCES", "$(nodist_" + cname(defn) + "_SOURCES)") - gvar_add("CLEANFILES", "$(nodist_" + cname(defn) + "_SOURCES)") - - gvar_add("MOD_FILES", name + ".mod") - gvar_add("MARKER_FILES", name + ".marker") - gvar_add("CLEANFILES", name + ".marker") - output(""" -""" + name + """.marker: $(""" + cname(defn) + """_SOURCES) $(nodist_""" + cname(defn) + """_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(""" + cname(defn) + """_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -""") - -def kernel(defn, platform): - name = defn['name'] - set_canonical_name_suffix(".exec") - gvar_add("platform_PROGRAMS", name + ".exec") - var_set(cname(defn) + "_SOURCES", platform_startup(defn, platform)) - var_add(cname(defn) + "_SOURCES", platform_sources(defn, platform)) - var_set("nodist_" + cname(defn) + "_SOURCES", platform_nodist_sources(defn, platform) + " ## platform nodist sources") - var_set(cname(defn) + "_LDADD", platform_ldadd(defn, platform)) - var_set(cname(defn) + "_CFLAGS", "$(AM_CFLAGS) $(CFLAGS_KERNEL) " + platform_cflags(defn, platform)) - var_set(cname(defn) + "_LDFLAGS", "$(AM_LDFLAGS) $(LDFLAGS_KERNEL) " + platform_ldflags(defn, platform)) - var_set(cname(defn) + "_CPPFLAGS", "$(AM_CPPFLAGS) $(CPPFLAGS_KERNEL) " + platform_cppflags(defn, platform)) - var_set(cname(defn) + "_CCASFLAGS", "$(AM_CCASFLAGS) $(CCASFLAGS_KERNEL) " + platform_ccasflags(defn, platform)) - var_set(cname(defn) + "_STRIPFLAGS", "$(AM_STRIPFLAGS) $(STRIPFLAGS_KERNEL) " + platform_stripflags(defn, platform)) - var_set(cname(defn) + "_DEPENDENCIES", "$(TARGET_OBJ2ELF)") - - gvar_add("dist_noinst_DATA", extra_dist(defn)) - gvar_add("BUILT_SOURCES", "$(nodist_" + cname(defn) + "_SOURCES)") - gvar_add("CLEANFILES", "$(nodist_" + cname(defn) + "_SOURCES)") - - gvar_add("platform_DATA", name + ".img") - gvar_add("CLEANFILES", name + ".img") - rule(name + ".img", name + ".exec$(EXEEXT)", - if_platform_tagged(defn, platform, "nostrip", -"""if test x$(TARGET_APPLE_LINKER) = x1; then \ - $(TARGET_OBJCONV) -f$(TARGET_MODULE_FORMAT) -nr:_grub_mod_init:grub_mod_init -nr:_grub_mod_fini:grub_mod_fini -ed2022 -wd1106 -nu -nd $< $@; \ - elif test ! -z '$(TARGET_OBJ2ELF)'; then \ - $(TARGET_OBJ2ELF) $< $@ || (rm -f $@; exit 1); \ - else cp $< $@; fi""", -"""if test x$(TARGET_APPLE_LINKER) = x1; then \ - $(TARGET_STRIP) -S -x $(""" + cname(defn) + """) -o $@.bin $<; \ - $(TARGET_OBJCONV) -f$(TARGET_MODULE_FORMAT) -nr:_grub_mod_init:grub_mod_init -nr:_grub_mod_fini:grub_mod_fini -ed2022 -ed2016 -wd1106 -nu -nd $@.bin $@; \ - rm -f $@.bin; \ - elif test ! -z '$(TARGET_OBJ2ELF)'; then \ - """ + "$(TARGET_STRIP) $(" + cname(defn) + "_STRIPFLAGS) -o $@.bin $< && \ - $(TARGET_OBJ2ELF) $@.bin $@ || (rm -f $@; rm -f $@.bin; exit 1); \ - rm -f $@.bin; \ -else """ + "$(TARGET_STRIP) $(" + cname(defn) + "_STRIPFLAGS) -o $@ $<; \ -fi""")) - -def image(defn, platform): - name = defn['name'] - set_canonical_name_suffix(".image") - gvar_add("platform_PROGRAMS", name + ".image") - var_set(cname(defn) + "_SOURCES", platform_sources(defn, platform)) - var_set("nodist_" + cname(defn) + "_SOURCES", platform_nodist_sources(defn, platform) + "## platform nodist sources") - var_set(cname(defn) + "_LDADD", platform_ldadd(defn, platform)) - var_set(cname(defn) + "_CFLAGS", "$(AM_CFLAGS) $(CFLAGS_IMAGE) " + platform_cflags(defn, platform)) - var_set(cname(defn) + "_LDFLAGS", "$(AM_LDFLAGS) $(LDFLAGS_IMAGE) " + platform_ldflags(defn, platform)) - var_set(cname(defn) + "_CPPFLAGS", "$(AM_CPPFLAGS) $(CPPFLAGS_IMAGE) " + platform_cppflags(defn, platform)) - var_set(cname(defn) + "_CCASFLAGS", "$(AM_CCASFLAGS) $(CCASFLAGS_IMAGE) " + platform_ccasflags(defn, platform)) - var_set(cname(defn) + "_OBJCOPYFLAGS", "$(OBJCOPYFLAGS_IMAGE) " + platform_objcopyflags(defn, platform)) - # var_set(cname(defn) + "_DEPENDENCIES", platform_dependencies(defn, platform) + " " + platform_ldadd(defn, platform)) - - gvar_add("dist_noinst_DATA", extra_dist(defn)) - gvar_add("BUILT_SOURCES", "$(nodist_" + cname(defn) + "_SOURCES)") - gvar_add("CLEANFILES", "$(nodist_" + cname(defn) + "_SOURCES)") - - gvar_add("platform_DATA", name + ".img") - gvar_add("CLEANFILES", name + ".img") - rule(name + ".img", name + ".image$(EXEEXT)", """ -if test x$(TARGET_APPLE_LINKER) = x1; then \ - $(MACHO2IMG) $< $@; \ -else \ - $(TARGET_OBJCOPY) $(""" + cname(defn) + """_OBJCOPYFLAGS) --strip-unneeded -R .note -R .comment -R .note.gnu.build-id -R .MIPS.abiflags -R .reginfo -R .rel.dyn -R .note.gnu.gold-version -R .ARM.exidx $< $@; \ -fi -""") - -def library(defn, platform): - name = defn['name'] - set_canonical_name_suffix("") - - vars_init(defn, - cname(defn) + "_SOURCES", - "nodist_" + cname(defn) + "_SOURCES", - cname(defn) + "_CFLAGS", - cname(defn) + "_CPPFLAGS", - cname(defn) + "_CCASFLAGS") - # cname(defn) + "_DEPENDENCIES") - - if name not in seen_target: - gvar_add("noinst_LIBRARIES", name) - var_add(cname(defn) + "_SOURCES", platform_sources(defn, platform)) - var_add("nodist_" + cname(defn) + "_SOURCES", platform_nodist_sources(defn, platform)) - var_add(cname(defn) + "_CFLAGS", first_time(defn, "$(AM_CFLAGS) $(CFLAGS_LIBRARY) ") + platform_cflags(defn, platform)) - var_add(cname(defn) + "_CPPFLAGS", first_time(defn, "$(AM_CPPFLAGS) $(CPPFLAGS_LIBRARY) ") + platform_cppflags(defn, platform)) - var_add(cname(defn) + "_CCASFLAGS", first_time(defn, "$(AM_CCASFLAGS) $(CCASFLAGS_LIBRARY) ") + platform_ccasflags(defn, platform)) - # var_add(cname(defn) + "_DEPENDENCIES", platform_dependencies(defn, platform) + " " + platform_ldadd(defn, platform)) - - gvar_add("dist_noinst_DATA", extra_dist(defn)) - if name not in seen_target: - gvar_add("BUILT_SOURCES", "$(nodist_" + cname(defn) + "_SOURCES)") - gvar_add("CLEANFILES", "$(nodist_" + cname(defn) + "_SOURCES)") - -def installdir(defn, default="bin"): - return defn.get('installdir', default) - -def manpage(defn, adddeps): - name = defn['name'] - mansection = defn['mansection'] - - output("if COND_MAN_PAGES\n") - gvar_add("man_MANS", name + "." + mansection) - rule(name + "." + mansection, name + " " + adddeps, """ -chmod a+x """ + name + """ -PATH=$(builddir):$$PATH pkgdatadir=$(builddir) $(HELP2MAN) --section=""" + mansection + """ -i $(top_srcdir)/docs/man/""" + name + """.h2m -o $@ """ + name + """ -""") - gvar_add("CLEANFILES", name + "." + mansection) - output("endif\n") - -def program(defn, platform, test=False): - name = defn['name'] - set_canonical_name_suffix("") - - if 'testcase' in defn: - gvar_add("check_PROGRAMS", name) - gvar_add("TESTS", name) - else: - var_add(installdir(defn) + "_PROGRAMS", name) - if 'mansection' in defn: - manpage(defn, "") - - var_set(cname(defn) + "_SOURCES", platform_sources(defn, platform)) - var_set("nodist_" + cname(defn) + "_SOURCES", platform_nodist_sources(defn, platform)) - var_set(cname(defn) + "_LDADD", platform_ldadd(defn, platform)) - var_set(cname(defn) + "_CFLAGS", "$(AM_CFLAGS) $(CFLAGS_PROGRAM) " + platform_cflags(defn, platform)) - var_set(cname(defn) + "_LDFLAGS", "$(AM_LDFLAGS) $(LDFLAGS_PROGRAM) " + platform_ldflags(defn, platform)) - var_set(cname(defn) + "_CPPFLAGS", "$(AM_CPPFLAGS) $(CPPFLAGS_PROGRAM) " + platform_cppflags(defn, platform)) - var_set(cname(defn) + "_CCASFLAGS", "$(AM_CCASFLAGS) $(CCASFLAGS_PROGRAM) " + platform_ccasflags(defn, platform)) - # var_set(cname(defn) + "_DEPENDENCIES", platform_dependencies(defn, platform) + " " + platform_ldadd(defn, platform)) - - gvar_add("dist_noinst_DATA", extra_dist(defn)) - gvar_add("BUILT_SOURCES", "$(nodist_" + cname(defn) + "_SOURCES)") - gvar_add("CLEANFILES", "$(nodist_" + cname(defn) + "_SOURCES)") - -def data(defn, platform): - var_add("dist_" + installdir(defn) + "_DATA", platform_sources(defn, platform)) - gvar_add("dist_noinst_DATA", extra_dist(defn)) - -def transform_data(defn, platform): - name = defn['name'] - - var_add(installdir(defn) + "_DATA", name) - - rule(name, "$(top_builddir)/config.status " + platform_sources(defn, platform) + platform_dependencies(defn, platform), """ -(for x in """ + platform_sources(defn, platform) + """; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- -chmod a+x """ + name + """ -""") - - gvar_add("CLEANFILES", name) - gvar_add("EXTRA_DIST", extra_dist(defn)) - gvar_add("dist_noinst_DATA", platform_sources(defn, platform)) - -def script(defn, platform): - name = defn['name'] - - if 'testcase' in defn: - gvar_add("check_SCRIPTS", name) - gvar_add ("TESTS", name) - else: - var_add(installdir(defn) + "_SCRIPTS", name) - if 'mansection' in defn: - manpage(defn, "grub-mkconfig_lib") - - rule(name, "$(top_builddir)/config.status " + platform_sources(defn, platform) + platform_dependencies(defn, platform), """ -(for x in """ + platform_sources(defn, platform) + """; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- -chmod a+x """ + name + """ -""") - - gvar_add("CLEANFILES", name) - gvar_add("EXTRA_DIST", extra_dist(defn)) - gvar_add("dist_noinst_DATA", platform_sources(defn, platform)) - -def rules(target, closure): - seen_target.clear() - seen_vars.clear() - - for defn in defparser.definitions.find_all(target): - if is_platform_independent(defn): - under_platform_specific_conditionals(defn, GRUB_PLATFORMS[0], closure) - else: - foreach_enabled_platform( - defn, - lambda p: under_platform_specific_conditionals(defn, p, closure)) - # Remember that we've seen this target. - seen_target.add(defn['name']) - -parser = OptionParser(usage="%prog DEFINITION-FILES") -_, args = parser.parse_args() - -for arg in args: - defparser.read_definitions(arg) - -rules("module", module) -rules("kernel", kernel) -rules("image", image) -rules("library", library) -rules("program", program) -rules("script", script) -rules("data", data) -rules("transform_data", transform_data) - -write_output(section='decl') -write_output() diff --git a/thirdparty/grub-2.04/grub-core/Makefile.am b/thirdparty/grub-2.04/grub-core/Makefile.am deleted file mode 100644 index 3ea8e7ff4..000000000 --- a/thirdparty/grub-2.04/grub-core/Makefile.am +++ /dev/null @@ -1,500 +0,0 @@ -AUTOMAKE_OPTIONS = subdir-objects -Wno-portability - -DEPDIR=.deps-core - -include $(top_srcdir)/conf/Makefile.common - -CC=$(TARGET_CC) -CPP=$(TARGET_CC) -CCAS=$(TARGET_CC) -RANLIB=$(TARGET_RANLIB) -STRIP=$(TARGET_STRIP) - -MACHO2IMG=$(top_builddir)/grub-macho2img - -AM_CFLAGS = $(TARGET_CFLAGS) -AM_LDFLAGS = $(TARGET_LDFLAGS) -AM_CPPFLAGS = $(TARGET_CPPFLAGS) $(CPPFLAGS_DEFAULT) -AM_CCASFLAGS = $(TARGET_CCASFLAGS) $(CCASFLAGS_DEFAULT) - -CFLAGS_PROGRAM += $(CFLAGS_PLATFORM) -LDFLAGS_PROGRAM += $(LDFLAGS_PLATFORM) -CPPFLAGS_PROGRAM += $(CPPFLAGS_PLATFORM) -CCASFLAGS_PROGRAM += $(CCASFLAGS_PLATFORM) - -CFLAGS_LIBRARY += $(CFLAGS_PLATFORM) -fno-builtin -CPPFLAGS_LIBRARY += $(CPPFLAGS_PLATFORM) -CCASFLAGS_LIBRARY += $(CCASFLAGS_PLATFORM) - -build-grub-pep2elf$(BUILD_EXEEXT): $(top_srcdir)/util/grub-pe2elf.c $(top_srcdir)/grub-core/kern/emu/misc.c $(top_srcdir)/util/misc.c - $(BUILD_CC) -o $@ -I$(top_srcdir)/include $(BUILD_CFLAGS) $(BUILD_CPPFLAGS) $(BUILD_LDFLAGS) -DGRUB_BUILD=1 -DGRUB_TARGET_WORDSIZE=64 -DGRUB_UTIL=1 -DGRUB_BUILD_PROGRAM_NAME=\"build-grub-pep2elf\" $^ -CLEANFILES += build-grub-pep2elf$(BUILD_EXEEXT) - -build-grub-pe2elf$(BUILD_EXEEXT): $(top_srcdir)/util/grub-pe2elf.c $(top_srcdir)/grub-core/kern/emu/misc.c $(top_srcdir)/util/misc.c - $(BUILD_CC) -o $@ -I$(top_srcdir)/include $(BUILD_CFLAGS) $(BUILD_CPPFLAGS) $(BUILD_LDFLAGS) -DGRUB_BUILD=1 -DGRUB_TARGET_WORDSIZE=32 -DGRUB_UTIL=1 -DGRUB_BUILD_PROGRAM_NAME=\"build-grub-pe2elf\" $^ -CLEANFILES += build-grub-pe2elf$(BUILD_EXEEXT) - -# gentrigtables -gentrigtables$(BUILD_EXEEXT): gentrigtables.c - $(BUILD_CC) -o $@ -I$(top_srcdir)/include $(BUILD_CFLAGS) $(BUILD_CPPFLAGS) $(BUILD_LDFLAGS) $< $(BUILD_LIBM) -CLEANFILES += gentrigtables$(BUILD_EXEEXT) - -build-grub-module-verifier$(BUILD_EXEEXT): $(top_srcdir)/util/grub-module-verifier.c $(top_srcdir)/util/grub-module-verifier32.c $(top_srcdir)/util/grub-module-verifier64.c $(top_srcdir)/grub-core/kern/emu/misc.c $(top_srcdir)/util/misc.c - $(BUILD_CC) -o $@ -I$(top_srcdir)/include $(BUILD_CFLAGS) $(BUILD_CPPFLAGS) $(BUILD_LDFLAGS) -DGRUB_BUILD=1 -DGRUB_UTIL=1 -DGRUB_BUILD_PROGRAM_NAME=\"build-grub-module-verifier\" $^ -CLEANFILES += build-grub-module-verifier$(BUILD_EXEEXT) - -# trigtables.c -trigtables.c: gentrigtables$(BUILD_EXEEXT) gentrigtables.c $(top_srcdir)/configure.ac - ./gentrigtables$(BUILD_EXEEXT) > $@ -CLEANFILES += trigtables.c - -# XXX Use Automake's LEX & YACC support -grub_script.tab.h: script/parser.y - $(YACC) -d -p grub_script_yy -b grub_script $< -grub_script.tab.c: grub_script.tab.h -CLEANFILES += grub_script.tab.c grub_script.tab.h - -# For the lexer. -grub_script.yy.h: script/yylex.l - $(LEX) -o grub_script.yy.c --header-file=grub_script.yy.h $< -grub_script.yy.c: grub_script.yy.h - -rs_decoder.h: $(srcdir)/lib/reed_solomon.c - $(TARGET_CC) $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) -Os -I$(top_builddir) -S -DSTANDALONE -o $@ $< -g0 -mregparm=3 -ffreestanding - -CLEANFILES += grub_script.yy.c grub_script.yy.h - -include $(srcdir)/Makefile.core.am - -KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/cache.h -KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/command.h -KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/device.h -KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/disk.h -KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/dl.h -KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/env.h -KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/env_private.h -KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/err.h -KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/file.h -KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/fs.h -KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/i18n.h -KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/kernel.h -KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/list.h -KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/misc.h -if COND_emu -KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/compiler-rt-emu.h -else -KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/compiler-rt.h -endif -KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/mm.h -KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/parser.h -KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/partition.h -KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/term.h -KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/time.h -KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/mm_private.h -KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/net.h -KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/memory.h - -if COND_i386_pc -KERNEL_HEADER_FILES += $(top_builddir)/include/grub/machine/kernel.h -KERNEL_HEADER_FILES += $(top_builddir)/include/grub/machine/pxe.h -KERNEL_HEADER_FILES += $(top_builddir)/include/grub/machine/int.h -KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/i386/tsc.h -endif - -if COND_i386_xen_pvh -KERNEL_HEADER_FILES += $(top_builddir)/include/grub/machine/kernel.h -KERNEL_HEADER_FILES += $(top_builddir)/include/grub/machine/int.h -KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/i386/tsc.h -KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/terminfo.h -KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/extcmd.h -KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/loader.h -KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/lib/arg.h -KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/xen.h -KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/i386/xen/hypercall.h -endif - -if COND_i386_efi -KERNEL_HEADER_FILES += $(top_builddir)/include/grub/machine/kernel.h -KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/efi/efi.h -KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/efi/disk.h -KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/i386/tsc.h -KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/acpi.h -KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/pci.h -KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/i386/pmtimer.h -endif - -if COND_i386_coreboot -KERNEL_HEADER_FILES += $(top_builddir)/include/grub/machine/kernel.h -KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/i386/tsc.h -KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/coreboot/lbio.h -KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/video.h -KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/video_fb.h -KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/gfxterm.h -KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/font.h -KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/bufio.h -KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/acpi.h -endif - -if COND_i386_multiboot -KERNEL_HEADER_FILES += $(top_builddir)/include/grub/machine/kernel.h -KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/i386/tsc.h -KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/acpi.h -endif - -if COND_i386_qemu -KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/pci.h -KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/i386/tsc.h -endif - -if COND_i386_ieee1275 -KERNEL_HEADER_FILES += $(top_builddir)/include/grub/machine/kernel.h -KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/ieee1275/ieee1275.h -KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/terminfo.h -KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/extcmd.h -KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/lib/arg.h -KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/i386/tsc.h -endif - -if COND_i386_xen -KERNEL_HEADER_FILES += $(top_builddir)/include/grub/machine/kernel.h -KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/xen.h -KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/i386/xen/hypercall.h -KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/terminfo.h -KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/extcmd.h -KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/lib/arg.h -KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/loader.h -endif - -if COND_x86_64_xen -KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/xen.h -KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/x86_64/xen/hypercall.h -KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/terminfo.h -KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/extcmd.h -KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/lib/arg.h -KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/loader.h -endif - -if COND_x86_64_efi -KERNEL_HEADER_FILES += $(top_builddir)/include/grub/machine/kernel.h -KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/efi/efi.h -KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/efi/disk.h -KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/i386/tsc.h -KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/pci.h -KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/acpi.h -KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/i386/pmtimer.h -endif - -if COND_ia64_efi -KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/efi/efi.h -KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/efi/disk.h -KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/acpi.h -endif - -if COND_mips -KERNEL_HEADER_FILES += $(top_builddir)/include/grub/cpu/kernel.h -endif - -if COND_mips_arc -KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/extcmd.h -KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/arc/arc.h -KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/terminfo.h -endif - -if COND_mips_qemu_mips -KERNEL_HEADER_FILES += $(top_builddir)/include/grub/keyboard_layouts.h -KERNEL_HEADER_FILES += $(top_builddir)/include/grub/machine/kernel.h -KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/serial.h -KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/loader.h -KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/terminfo.h -KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/extcmd.h -KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/lib/arg.h -endif - -if COND_mips_loongson -KERNEL_HEADER_FILES += $(top_builddir)/include/grub/keyboard_layouts.h -KERNEL_HEADER_FILES += $(top_builddir)/include/grub/machine/kernel.h -KERNEL_HEADER_FILES += $(top_builddir)/include/grub/machine/time.h -KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/video.h -KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/video_fb.h -KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/gfxterm.h -KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/font.h -KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/bufio.h -KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/pci.h -KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/cs5536.h -KERNEL_HEADER_FILES += $(top_builddir)/include/grub/machine/pci.h -KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/serial.h -KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/loader.h -KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/terminfo.h -KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/extcmd.h -KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/lib/arg.h -endif - -if COND_mips_qemu_mips -KERNEL_HEADER_FILES += $(top_builddir)/include/grub/machine/memory.h -KERNEL_HEADER_FILES += $(top_builddir)/include/grub/machine/kernel.h -endif - -if COND_powerpc_ieee1275 -KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/ieee1275/ieee1275.h -KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/terminfo.h -KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/extcmd.h -KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/lib/arg.h -endif - -if COND_sparc64_ieee1275 -KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/ieee1275/ieee1275.h -KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/sparc64/ieee1275/ieee1275.h -KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/terminfo.h -KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/extcmd.h -KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/lib/arg.h -endif - -if COND_arm_uboot -KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/uboot/uboot.h -KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/uboot/disk.h -KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/extcmd.h -KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/lib/arg.h -KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/arm/system.h -endif - -if COND_arm_coreboot -KERNEL_HEADER_FILES += $(top_builddir)/include/grub/keyboard_layouts.h -KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/arm/system.h -KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/video.h -KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/video_fb.h -KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/gfxterm.h -KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/font.h -KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/bufio.h -KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/fdt.h -KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/dma.h -KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/arm/coreboot/kernel.h -KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/fdtbus.h -endif - -if COND_arm_efi -KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/efi/efi.h -KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/efi/disk.h -KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/arm/system.h -KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/acpi.h -endif - -if COND_arm64_efi -KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/efi/efi.h -KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/efi/disk.h -KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/acpi.h -endif - -if COND_riscv32_efi -KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/efi/efi.h -KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/efi/disk.h -KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/acpi.h -endif - -if COND_riscv64_efi -KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/efi/efi.h -KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/efi/disk.h -KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/acpi.h -endif - -if COND_emu -KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/datetime.h -KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/emu/misc.h -KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/emu/net.h -KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/emu/hostdisk.h -KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/emu/hostfile.h -KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/extcmd.h -if COND_GRUB_EMU_SDL -KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/sdl.h -endif -if COND_GRUB_EMU_PCI -KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/libpciaccess.h -endif -endif - -symlist.h: $(top_builddir)/config.h $(KERNEL_HEADER_FILES) - @list='$^'; \ - for p in $$list; do \ - echo "#include <$$p>" >> $@ || (rm -f $@; exit 1); \ - done -CLEANFILES += symlist.h -BUILT_SOURCES += symlist.h - -symlist.c: symlist.h gensymlist.sh - $(TARGET_CPP) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS_KERNEL) $(CPPFLAGS) -DGRUB_SYMBOL_GENERATOR=1 symlist.h > symlist.p || (rm -f symlist.p; exit 1) - cat symlist.p | $(SHELL) $(srcdir)/gensymlist.sh $(top_builddir)/config.h $(KERNEL_HEADER_FILES) >$@ || (rm -f $@; exit 1) - rm -f symlist.p -CLEANFILES += symlist.c -BUILT_SOURCES += symlist.c - -if COND_HAVE_ASM_USCORE -ASM_PREFIX=_ -else -ASM_PREFIX= -endif - -noinst_DATA += kernel_syms.lst - -kernel_syms.lst: $(KERNEL_HEADER_FILES) $(top_builddir)/config.h - $(TARGET_CPP) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS_KERNEL) $(CPPFLAGS) $(CFLAGS) -DGRUB_SYMBOL_GENERATOR=1 $^ >kernel_syms.input - cat kernel_syms.input | grep -v '^#' | sed -n \ - -e '/EXPORT_FUNC *([a-zA-Z0-9_]*)/{s/.*EXPORT_FUNC *(\([a-zA-Z0-9_]*\)).*/defined kernel '"$(ASM_PREFIX)"'\1/;p;}' \ - -e '/EXPORT_VAR *([a-zA-Z0-9_]*)/{s/.*EXPORT_VAR *(\([a-zA-Z0-9_]*\)).*/defined kernel '"$(ASM_PREFIX)"'\1/;p;}' \ - | sort -u >$@ - rm -f kernel_syms.input -CLEANFILES += kernel_syms.lst - -if COND_emu -kern/emu/grub_emu-main.$(OBJEXT):grub_emu_init.h -grub_emu-grub_emu_init.$(OBJEXT):grub_emu_init.h -kern/emu/grub_emu_dyn-main.$(OBJEXT):grub_emu_init.h -grub_emu_dyn-grub_emu_init.$(OBJEXT):grub_emu_init.h - -grub_emu_init.h: genemuinitheader.sh $(MODULE_FILES) - rm -f $@; echo $(MODULE_FILES) | sh $(srcdir)/genemuinitheader.sh $(TARGET_NM) > $@ -CLEANFILES += grub_emu_init.h - -grub_emu_init.c: grub_emu_init.h genemuinit.sh $(MODULE_FILES) - rm -f $@; echo $(MODULE_FILES) | sh $(srcdir)/genemuinit.sh $(TARGET_NM) > $@ -CLEANFILES += grub_emu_init.c -endif - -# List files - -fs.lst: $(MARKER_FILES) - (for pp in $^; do \ - b=`basename $$pp .marker`; \ - if grep 'FS_LIST_MARKER' $$pp >/dev/null 2>&1; then \ - echo $$b; \ - fi; \ - done) | sort -u > $@ -platform_DATA += fs.lst -CLEANFILES += fs.lst - -command.lst: $(MARKER_FILES) - (for pp in $^; do \ - b=`basename $$pp .marker`; \ - sed -n \ - -e "/EXTCOMMAND_LIST_MARKER *( *\"/{s/.*( *\"\([^\"]*\)\".*/*\1: $$b/;p;}" \ - -e "/P1COMMAND_LIST_MARKER *( *\"/{s/.*( *\"\([^\"]*\)\".*/*\1: $$b/;p;}" \ - -e "/COMMAND_LIST_MARKER *( *\"/{s/.*( *\"\([^\"]*\)\".*/\1: $$b/;p;}" $$pp; \ - done) | sort -u > $@ -platform_DATA += command.lst -CLEANFILES += command.lst - -partmap.lst: $(MARKER_FILES) - (for pp in $^; do \ - b=`basename $$pp .marker`; \ - if grep 'PARTMAP_LIST_MARKER' $$pp >/dev/null 2>&1; then \ - echo $$b; \ - fi; \ - done) | sort -u > $@ -platform_DATA += partmap.lst -CLEANFILES += partmap.lst - -terminal.lst: $(MARKER_FILES) - (for pp in $^; do \ - b=`basename $$pp .marker`; \ - sed -n \ - -e "/INPUT_TERMINAL_LIST_MARKER *( *\"/{s/.*( *\"\([^\"]*\)\".*/i\1: $$b/;p;}" \ - -e "/OUTPUT_TERMINAL_LIST_MARKER *( *\"/{s/.*( *\"\([^\"]*\)\".*/o\1: $$b/;p;}" $$pp; \ - done) | sort -u > $@ -platform_DATA += terminal.lst -CLEANFILES += terminal.lst - -fdt.lst: $(MARKER_FILES) - (for pp in $^; do \ - b=`basename $$pp .marker`; \ - sed -n \ - -e "/FDT_DRIVER_LIST_MARKER *( *\"/{s/.*( *\"\([^\"]*\)\".*/i\1: $$b/;p;}" \ - -e "/FDT_DRIVER_LIST_MARKER *( *\"/{s/.*( *\"\([^\"]*\)\".*/o\1: $$b/;p;}" $$pp; \ - done) | sort -u > $@ -platform_DATA += fdt.lst -CLEANFILES += fdt.lst - -parttool.lst: $(MARKER_FILES) - (for pp in $^; do \ - b=`basename $$pp .marker`; \ - sed -n \ - -e "/PARTTOOL_LIST_MARKER *( *\"/{s/.*( *\"\([^\"]*\)\".*/\1: $$b/;p;}" $$pp; \ - done) | sort -u > $@ -platform_DATA += parttool.lst -CLEANFILES += parttool.lst - -video.lst: $(MARKER_FILES) - (for pp in $^; do \ - b=`basename $$pp .marker`; \ - if grep 'VIDEO_LIST_MARKER' $$pp >/dev/null 2>&1; then \ - echo $$b; \ - fi; \ - done) | sort -u > $@ -platform_DATA += video.lst -CLEANFILES += video.lst - -# but, crypto.lst is simply copied -crypto.lst: $(srcdir)/lib/libgcrypt-grub/cipher/crypto.lst - cp $^ $@ -platform_DATA += crypto.lst -CLEANFILES += crypto.lst - -syminfo.lst: gensyminfo.sh kernel_syms.lst $(MODULE_FILES) - cat kernel_syms.lst > $@.new - for m in $(MODULE_FILES); do \ - sh $< $$m >> $@.new || exit 1; \ - done - mv $@.new $@ - -# generate global module dependencies list -moddep.lst: syminfo.lst genmoddep.awk video.lst - cat $< | sort | $(AWK) -f $(srcdir)/genmoddep.awk > $@ || (rm -f $@; exit 1) -platform_DATA += moddep.lst -CLEANFILES += config.log syminfo.lst moddep.lst - -$(MOD_FILES): %.mod : genmod.sh moddep.lst %.module$(EXEEXT) build-grub-module-verifier$(BUILD_EXEEXT) - TARGET_OBJ2ELF=@TARGET_OBJ2ELF@ sh $^ $@ -platform_DATA += $(MOD_FILES) -platform_DATA += modinfo.sh -CLEANFILES += $(MOD_FILES) - -if COND_ENABLE_EFIEMU -efiemu32.o: efiemu/runtime/efiemu.c $(TARGET_OBJ2ELF) - -rm -f $@ - -rm -f $@.bin - $(TARGET_CC) $(DEFS) $(INCLUDES) $(CPPFLAGS_EFIEMU) $(CPPFLAGS_DEFAULT) -m32 -Wall -Werror -nostdlib -static -O2 -c -o $@.bin $< - if test "x$(TARGET_APPLE_LINKER)" = x1; then \ - $(TARGET_OBJCONV) -felf32 -nu -nd $@.bin $@ || exit 1; \ - rm -f $@.bin ; \ - elif test ! -z "$(TARGET_OBJ2ELF)"; then \ - $(TARGET_OBJ2ELF) $@.bin || (rm -f $@.bin; exit 1); \ - mv $@.bin $@ ; \ - else \ - mv $@.bin $@ ; \ - fi - -# Link format -arch,x86_64 means Apple linker -efiemu64_c.o: efiemu/runtime/efiemu.c - $(TARGET_CC) $(DEFS) $(INCLUDES) $(CPPFLAGS_EFIEMU) $(CPPFLAGS_DEFAULT) -m64 -nostdlib -Wall -Werror -O2 -mcmodel=large -mno-red-zone -c -o $@ $< - -efiemu64_s.o: efiemu/runtime/efiemu.S - $(TARGET_CC) $(DEFS) $(INCLUDES) $(CPPFLAGS_EFIEMU) $(CPPFLAGS_DEFAULT) -m64 -Wall -Werror -nostdlib -O2 -mcmodel=large -mno-red-zone -c -o $@ $< - -efiemu64.o: efiemu64_c.o efiemu64_s.o $(TARGET_OBJ2ELEF) - -rm -f $@ - -rm -f $@.bin - $(TARGET_CC) -m64 $(EFIEMU64_LINK_FORMAT) -nostdlib -static -Wl,-r -o $@.bin $^ - if test "x$(EFIEMU64_LINK_FORMAT)" = x-arch,x86_64; then \ - $(TARGET_OBJCONV) -felf64 -nu -nd $@.bin $@ || exit 1; \ - rm -f $@.bin; \ - else \ - mv $@.bin $@ ; \ - fi - -platform_DATA += efiemu32.o efiemu64.o -CLEANFILES += efiemu32.o efiemu64.o efiemu64_c.o efiemu64_s.o -endif - -windowsdir=$(top_builddir)/$(PACKAGE)-$(VERSION)-for-windows -windowsdir: $(PROGRAMS) $(starfield_DATA) $(platform_DATA) - test -d $(windowsdir)/$(target_cpu)-$(platform) || mkdir $(windowsdir)/$(target_cpu)-$(platform) - for x in $(platform_DATA); do \ - cp -fp $$x $(windowsdir)/$(target_cpu)-$(platform)/$$x; \ - done diff --git a/thirdparty/grub-2.04/grub-core/Makefile.core.am b/thirdparty/grub-2.04/grub-core/Makefile.core.am deleted file mode 100644 index d94425e0c..000000000 --- a/thirdparty/grub-2.04/grub-core/Makefile.core.am +++ /dev/null @@ -1,23386 +0,0 @@ -platform_PROGRAMS += disk.module -MODULE_FILES += disk.module$(EXEEXT) -disk_module_SOURCES = lib/disk.c ## platform sources -nodist_disk_module_SOURCES = ## platform nodist sources -disk_module_LDADD = -disk_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -disk_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -disk_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -disk_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -disk_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += kern/disk_common.c -BUILT_SOURCES += $(nodist_disk_module_SOURCES) -CLEANFILES += $(nodist_disk_module_SOURCES) -MOD_FILES += disk.mod -MARKER_FILES += disk.marker -CLEANFILES += disk.marker - -disk.marker: $(disk_module_SOURCES) $(nodist_disk_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(disk_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += trig.module -MODULE_FILES += trig.module$(EXEEXT) -trig_module_SOURCES = ## platform sources -nodist_trig_module_SOURCES = trigtables.c ## platform nodist sources -trig_module_LDADD = -trig_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -trig_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -trig_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -trig_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -trig_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += gentrigtables.c -BUILT_SOURCES += $(nodist_trig_module_SOURCES) -CLEANFILES += $(nodist_trig_module_SOURCES) -MOD_FILES += trig.mod -MARKER_FILES += trig.marker -CLEANFILES += trig.marker - -trig.marker: $(trig_module_SOURCES) $(nodist_trig_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(trig_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -if COND_i386_pc -platform_PROGRAMS += cs5536.module -MODULE_FILES += cs5536.module$(EXEEXT) -cs5536_module_SOURCES = bus/cs5536.c ## platform sources -nodist_cs5536_module_SOURCES = ## platform nodist sources -cs5536_module_LDADD = -cs5536_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -cs5536_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -cs5536_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -cs5536_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -cs5536_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_cs5536_module_SOURCES) -CLEANFILES += $(nodist_cs5536_module_SOURCES) -MOD_FILES += cs5536.mod -MARKER_FILES += cs5536.marker -CLEANFILES += cs5536.marker - -cs5536.marker: $(cs5536_module_SOURCES) $(nodist_cs5536_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cs5536_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_efi -platform_PROGRAMS += cs5536.module -MODULE_FILES += cs5536.module$(EXEEXT) -cs5536_module_SOURCES = bus/cs5536.c ## platform sources -nodist_cs5536_module_SOURCES = ## platform nodist sources -cs5536_module_LDADD = -cs5536_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -cs5536_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -cs5536_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -cs5536_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -cs5536_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_cs5536_module_SOURCES) -CLEANFILES += $(nodist_cs5536_module_SOURCES) -MOD_FILES += cs5536.mod -MARKER_FILES += cs5536.marker -CLEANFILES += cs5536.marker - -cs5536.marker: $(cs5536_module_SOURCES) $(nodist_cs5536_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cs5536_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_qemu -platform_PROGRAMS += cs5536.module -MODULE_FILES += cs5536.module$(EXEEXT) -cs5536_module_SOURCES = bus/cs5536.c ## platform sources -nodist_cs5536_module_SOURCES = ## platform nodist sources -cs5536_module_LDADD = -cs5536_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -cs5536_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -cs5536_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -cs5536_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -cs5536_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_cs5536_module_SOURCES) -CLEANFILES += $(nodist_cs5536_module_SOURCES) -MOD_FILES += cs5536.mod -MARKER_FILES += cs5536.marker -CLEANFILES += cs5536.marker - -cs5536.marker: $(cs5536_module_SOURCES) $(nodist_cs5536_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cs5536_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_coreboot -platform_PROGRAMS += cs5536.module -MODULE_FILES += cs5536.module$(EXEEXT) -cs5536_module_SOURCES = bus/cs5536.c ## platform sources -nodist_cs5536_module_SOURCES = ## platform nodist sources -cs5536_module_LDADD = -cs5536_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -cs5536_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -cs5536_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -cs5536_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -cs5536_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_cs5536_module_SOURCES) -CLEANFILES += $(nodist_cs5536_module_SOURCES) -MOD_FILES += cs5536.mod -MARKER_FILES += cs5536.marker -CLEANFILES += cs5536.marker - -cs5536.marker: $(cs5536_module_SOURCES) $(nodist_cs5536_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cs5536_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_multiboot -platform_PROGRAMS += cs5536.module -MODULE_FILES += cs5536.module$(EXEEXT) -cs5536_module_SOURCES = bus/cs5536.c ## platform sources -nodist_cs5536_module_SOURCES = ## platform nodist sources -cs5536_module_LDADD = -cs5536_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -cs5536_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -cs5536_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -cs5536_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -cs5536_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_cs5536_module_SOURCES) -CLEANFILES += $(nodist_cs5536_module_SOURCES) -MOD_FILES += cs5536.mod -MARKER_FILES += cs5536.marker -CLEANFILES += cs5536.marker - -cs5536.marker: $(cs5536_module_SOURCES) $(nodist_cs5536_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cs5536_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_ieee1275 -platform_PROGRAMS += cs5536.module -MODULE_FILES += cs5536.module$(EXEEXT) -cs5536_module_SOURCES = bus/cs5536.c ## platform sources -nodist_cs5536_module_SOURCES = ## platform nodist sources -cs5536_module_LDADD = -cs5536_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -cs5536_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -cs5536_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -cs5536_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -cs5536_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_cs5536_module_SOURCES) -CLEANFILES += $(nodist_cs5536_module_SOURCES) -MOD_FILES += cs5536.mod -MARKER_FILES += cs5536.marker -CLEANFILES += cs5536.marker - -cs5536.marker: $(cs5536_module_SOURCES) $(nodist_cs5536_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cs5536_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_x86_64_efi -platform_PROGRAMS += cs5536.module -MODULE_FILES += cs5536.module$(EXEEXT) -cs5536_module_SOURCES = bus/cs5536.c ## platform sources -nodist_cs5536_module_SOURCES = ## platform nodist sources -cs5536_module_LDADD = -cs5536_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -cs5536_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -cs5536_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -cs5536_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -cs5536_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_cs5536_module_SOURCES) -CLEANFILES += $(nodist_cs5536_module_SOURCES) -MOD_FILES += cs5536.mod -MARKER_FILES += cs5536.marker -CLEANFILES += cs5536.marker - -cs5536.marker: $(cs5536_module_SOURCES) $(nodist_cs5536_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cs5536_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_mips_loongson -platform_PROGRAMS += lsspd.module -MODULE_FILES += lsspd.module$(EXEEXT) -lsspd_module_SOURCES = commands/mips/loongson/lsspd.c ## platform sources -nodist_lsspd_module_SOURCES = ## platform nodist sources -lsspd_module_LDADD = -lsspd_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -lsspd_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -lsspd_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -lsspd_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -lsspd_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_lsspd_module_SOURCES) -CLEANFILES += $(nodist_lsspd_module_SOURCES) -MOD_FILES += lsspd.mod -MARKER_FILES += lsspd.marker -CLEANFILES += lsspd.marker - -lsspd.marker: $(lsspd_module_SOURCES) $(nodist_lsspd_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lsspd_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_pc -platform_PROGRAMS += usb.module -MODULE_FILES += usb.module$(EXEEXT) -usb_module_SOURCES = bus/usb/usb.c bus/usb/usbtrans.c bus/usb/usbhub.c ## platform sources -nodist_usb_module_SOURCES = ## platform nodist sources -usb_module_LDADD = -usb_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -usb_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -usb_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -usb_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -usb_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_usb_module_SOURCES) -CLEANFILES += $(nodist_usb_module_SOURCES) -MOD_FILES += usb.mod -MARKER_FILES += usb.marker -CLEANFILES += usb.marker - -usb.marker: $(usb_module_SOURCES) $(nodist_usb_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usb_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_efi -platform_PROGRAMS += usb.module -MODULE_FILES += usb.module$(EXEEXT) -usb_module_SOURCES = bus/usb/usb.c bus/usb/usbtrans.c bus/usb/usbhub.c ## platform sources -nodist_usb_module_SOURCES = ## platform nodist sources -usb_module_LDADD = -usb_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -usb_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -usb_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -usb_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -usb_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_usb_module_SOURCES) -CLEANFILES += $(nodist_usb_module_SOURCES) -MOD_FILES += usb.mod -MARKER_FILES += usb.marker -CLEANFILES += usb.marker - -usb.marker: $(usb_module_SOURCES) $(nodist_usb_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usb_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_qemu -platform_PROGRAMS += usb.module -MODULE_FILES += usb.module$(EXEEXT) -usb_module_SOURCES = bus/usb/usb.c bus/usb/usbtrans.c bus/usb/usbhub.c ## platform sources -nodist_usb_module_SOURCES = ## platform nodist sources -usb_module_LDADD = -usb_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -usb_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -usb_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -usb_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -usb_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_usb_module_SOURCES) -CLEANFILES += $(nodist_usb_module_SOURCES) -MOD_FILES += usb.mod -MARKER_FILES += usb.marker -CLEANFILES += usb.marker - -usb.marker: $(usb_module_SOURCES) $(nodist_usb_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usb_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_coreboot -platform_PROGRAMS += usb.module -MODULE_FILES += usb.module$(EXEEXT) -usb_module_SOURCES = bus/usb/usb.c bus/usb/usbtrans.c bus/usb/usbhub.c ## platform sources -nodist_usb_module_SOURCES = ## platform nodist sources -usb_module_LDADD = -usb_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -usb_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -usb_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -usb_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -usb_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_usb_module_SOURCES) -CLEANFILES += $(nodist_usb_module_SOURCES) -MOD_FILES += usb.mod -MARKER_FILES += usb.marker -CLEANFILES += usb.marker - -usb.marker: $(usb_module_SOURCES) $(nodist_usb_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usb_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_multiboot -platform_PROGRAMS += usb.module -MODULE_FILES += usb.module$(EXEEXT) -usb_module_SOURCES = bus/usb/usb.c bus/usb/usbtrans.c bus/usb/usbhub.c ## platform sources -nodist_usb_module_SOURCES = ## platform nodist sources -usb_module_LDADD = -usb_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -usb_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -usb_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -usb_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -usb_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_usb_module_SOURCES) -CLEANFILES += $(nodist_usb_module_SOURCES) -MOD_FILES += usb.mod -MARKER_FILES += usb.marker -CLEANFILES += usb.marker - -usb.marker: $(usb_module_SOURCES) $(nodist_usb_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usb_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_ieee1275 -platform_PROGRAMS += usb.module -MODULE_FILES += usb.module$(EXEEXT) -usb_module_SOURCES = bus/usb/usb.c bus/usb/usbtrans.c bus/usb/usbhub.c ## platform sources -nodist_usb_module_SOURCES = ## platform nodist sources -usb_module_LDADD = -usb_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -usb_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -usb_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -usb_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -usb_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_usb_module_SOURCES) -CLEANFILES += $(nodist_usb_module_SOURCES) -MOD_FILES += usb.mod -MARKER_FILES += usb.marker -CLEANFILES += usb.marker - -usb.marker: $(usb_module_SOURCES) $(nodist_usb_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usb_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_x86_64_efi -platform_PROGRAMS += usb.module -MODULE_FILES += usb.module$(EXEEXT) -usb_module_SOURCES = bus/usb/usb.c bus/usb/usbtrans.c bus/usb/usbhub.c ## platform sources -nodist_usb_module_SOURCES = ## platform nodist sources -usb_module_LDADD = -usb_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -usb_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -usb_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -usb_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -usb_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_usb_module_SOURCES) -CLEANFILES += $(nodist_usb_module_SOURCES) -MOD_FILES += usb.mod -MARKER_FILES += usb.marker -CLEANFILES += usb.marker - -usb.marker: $(usb_module_SOURCES) $(nodist_usb_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usb_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_mips_loongson -platform_PROGRAMS += usb.module -MODULE_FILES += usb.module$(EXEEXT) -usb_module_SOURCES = bus/usb/usb.c bus/usb/usbtrans.c bus/usb/usbhub.c ## platform sources -nodist_usb_module_SOURCES = ## platform nodist sources -usb_module_LDADD = -usb_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -usb_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -usb_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -usb_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -usb_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_usb_module_SOURCES) -CLEANFILES += $(nodist_usb_module_SOURCES) -MOD_FILES += usb.mod -MARKER_FILES += usb.marker -CLEANFILES += usb.marker - -usb.marker: $(usb_module_SOURCES) $(nodist_usb_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usb_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_arm_coreboot -platform_PROGRAMS += usb.module -MODULE_FILES += usb.module$(EXEEXT) -usb_module_SOURCES = bus/usb/usb.c bus/usb/usbtrans.c bus/usb/usbhub.c ## platform sources -nodist_usb_module_SOURCES = ## platform nodist sources -usb_module_LDADD = -usb_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -usb_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -usb_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -usb_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -usb_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_usb_module_SOURCES) -CLEANFILES += $(nodist_usb_module_SOURCES) -MOD_FILES += usb.mod -MARKER_FILES += usb.marker -CLEANFILES += usb.marker - -usb.marker: $(usb_module_SOURCES) $(nodist_usb_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usb_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_pc -platform_PROGRAMS += usbserial_common.module -MODULE_FILES += usbserial_common.module$(EXEEXT) -usbserial_common_module_SOURCES = bus/usb/serial/common.c ## platform sources -nodist_usbserial_common_module_SOURCES = ## platform nodist sources -usbserial_common_module_LDADD = -usbserial_common_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -usbserial_common_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -usbserial_common_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -usbserial_common_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -usbserial_common_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_usbserial_common_module_SOURCES) -CLEANFILES += $(nodist_usbserial_common_module_SOURCES) -MOD_FILES += usbserial_common.mod -MARKER_FILES += usbserial_common.marker -CLEANFILES += usbserial_common.marker - -usbserial_common.marker: $(usbserial_common_module_SOURCES) $(nodist_usbserial_common_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usbserial_common_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_efi -platform_PROGRAMS += usbserial_common.module -MODULE_FILES += usbserial_common.module$(EXEEXT) -usbserial_common_module_SOURCES = bus/usb/serial/common.c ## platform sources -nodist_usbserial_common_module_SOURCES = ## platform nodist sources -usbserial_common_module_LDADD = -usbserial_common_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -usbserial_common_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -usbserial_common_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -usbserial_common_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -usbserial_common_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_usbserial_common_module_SOURCES) -CLEANFILES += $(nodist_usbserial_common_module_SOURCES) -MOD_FILES += usbserial_common.mod -MARKER_FILES += usbserial_common.marker -CLEANFILES += usbserial_common.marker - -usbserial_common.marker: $(usbserial_common_module_SOURCES) $(nodist_usbserial_common_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usbserial_common_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_qemu -platform_PROGRAMS += usbserial_common.module -MODULE_FILES += usbserial_common.module$(EXEEXT) -usbserial_common_module_SOURCES = bus/usb/serial/common.c ## platform sources -nodist_usbserial_common_module_SOURCES = ## platform nodist sources -usbserial_common_module_LDADD = -usbserial_common_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -usbserial_common_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -usbserial_common_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -usbserial_common_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -usbserial_common_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_usbserial_common_module_SOURCES) -CLEANFILES += $(nodist_usbserial_common_module_SOURCES) -MOD_FILES += usbserial_common.mod -MARKER_FILES += usbserial_common.marker -CLEANFILES += usbserial_common.marker - -usbserial_common.marker: $(usbserial_common_module_SOURCES) $(nodist_usbserial_common_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usbserial_common_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_coreboot -platform_PROGRAMS += usbserial_common.module -MODULE_FILES += usbserial_common.module$(EXEEXT) -usbserial_common_module_SOURCES = bus/usb/serial/common.c ## platform sources -nodist_usbserial_common_module_SOURCES = ## platform nodist sources -usbserial_common_module_LDADD = -usbserial_common_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -usbserial_common_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -usbserial_common_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -usbserial_common_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -usbserial_common_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_usbserial_common_module_SOURCES) -CLEANFILES += $(nodist_usbserial_common_module_SOURCES) -MOD_FILES += usbserial_common.mod -MARKER_FILES += usbserial_common.marker -CLEANFILES += usbserial_common.marker - -usbserial_common.marker: $(usbserial_common_module_SOURCES) $(nodist_usbserial_common_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usbserial_common_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_multiboot -platform_PROGRAMS += usbserial_common.module -MODULE_FILES += usbserial_common.module$(EXEEXT) -usbserial_common_module_SOURCES = bus/usb/serial/common.c ## platform sources -nodist_usbserial_common_module_SOURCES = ## platform nodist sources -usbserial_common_module_LDADD = -usbserial_common_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -usbserial_common_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -usbserial_common_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -usbserial_common_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -usbserial_common_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_usbserial_common_module_SOURCES) -CLEANFILES += $(nodist_usbserial_common_module_SOURCES) -MOD_FILES += usbserial_common.mod -MARKER_FILES += usbserial_common.marker -CLEANFILES += usbserial_common.marker - -usbserial_common.marker: $(usbserial_common_module_SOURCES) $(nodist_usbserial_common_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usbserial_common_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_ieee1275 -platform_PROGRAMS += usbserial_common.module -MODULE_FILES += usbserial_common.module$(EXEEXT) -usbserial_common_module_SOURCES = bus/usb/serial/common.c ## platform sources -nodist_usbserial_common_module_SOURCES = ## platform nodist sources -usbserial_common_module_LDADD = -usbserial_common_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -usbserial_common_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -usbserial_common_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -usbserial_common_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -usbserial_common_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_usbserial_common_module_SOURCES) -CLEANFILES += $(nodist_usbserial_common_module_SOURCES) -MOD_FILES += usbserial_common.mod -MARKER_FILES += usbserial_common.marker -CLEANFILES += usbserial_common.marker - -usbserial_common.marker: $(usbserial_common_module_SOURCES) $(nodist_usbserial_common_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usbserial_common_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_x86_64_efi -platform_PROGRAMS += usbserial_common.module -MODULE_FILES += usbserial_common.module$(EXEEXT) -usbserial_common_module_SOURCES = bus/usb/serial/common.c ## platform sources -nodist_usbserial_common_module_SOURCES = ## platform nodist sources -usbserial_common_module_LDADD = -usbserial_common_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -usbserial_common_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -usbserial_common_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -usbserial_common_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -usbserial_common_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_usbserial_common_module_SOURCES) -CLEANFILES += $(nodist_usbserial_common_module_SOURCES) -MOD_FILES += usbserial_common.mod -MARKER_FILES += usbserial_common.marker -CLEANFILES += usbserial_common.marker - -usbserial_common.marker: $(usbserial_common_module_SOURCES) $(nodist_usbserial_common_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usbserial_common_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_mips_loongson -platform_PROGRAMS += usbserial_common.module -MODULE_FILES += usbserial_common.module$(EXEEXT) -usbserial_common_module_SOURCES = bus/usb/serial/common.c ## platform sources -nodist_usbserial_common_module_SOURCES = ## platform nodist sources -usbserial_common_module_LDADD = -usbserial_common_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -usbserial_common_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -usbserial_common_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -usbserial_common_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -usbserial_common_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_usbserial_common_module_SOURCES) -CLEANFILES += $(nodist_usbserial_common_module_SOURCES) -MOD_FILES += usbserial_common.mod -MARKER_FILES += usbserial_common.marker -CLEANFILES += usbserial_common.marker - -usbserial_common.marker: $(usbserial_common_module_SOURCES) $(nodist_usbserial_common_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usbserial_common_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_arm_coreboot -platform_PROGRAMS += usbserial_common.module -MODULE_FILES += usbserial_common.module$(EXEEXT) -usbserial_common_module_SOURCES = bus/usb/serial/common.c ## platform sources -nodist_usbserial_common_module_SOURCES = ## platform nodist sources -usbserial_common_module_LDADD = -usbserial_common_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -usbserial_common_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -usbserial_common_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -usbserial_common_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -usbserial_common_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_usbserial_common_module_SOURCES) -CLEANFILES += $(nodist_usbserial_common_module_SOURCES) -MOD_FILES += usbserial_common.mod -MARKER_FILES += usbserial_common.marker -CLEANFILES += usbserial_common.marker - -usbserial_common.marker: $(usbserial_common_module_SOURCES) $(nodist_usbserial_common_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usbserial_common_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_pc -platform_PROGRAMS += usbserial_pl2303.module -MODULE_FILES += usbserial_pl2303.module$(EXEEXT) -usbserial_pl2303_module_SOURCES = bus/usb/serial/pl2303.c ## platform sources -nodist_usbserial_pl2303_module_SOURCES = ## platform nodist sources -usbserial_pl2303_module_LDADD = -usbserial_pl2303_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -usbserial_pl2303_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -usbserial_pl2303_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -usbserial_pl2303_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -usbserial_pl2303_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_usbserial_pl2303_module_SOURCES) -CLEANFILES += $(nodist_usbserial_pl2303_module_SOURCES) -MOD_FILES += usbserial_pl2303.mod -MARKER_FILES += usbserial_pl2303.marker -CLEANFILES += usbserial_pl2303.marker - -usbserial_pl2303.marker: $(usbserial_pl2303_module_SOURCES) $(nodist_usbserial_pl2303_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usbserial_pl2303_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_efi -platform_PROGRAMS += usbserial_pl2303.module -MODULE_FILES += usbserial_pl2303.module$(EXEEXT) -usbserial_pl2303_module_SOURCES = bus/usb/serial/pl2303.c ## platform sources -nodist_usbserial_pl2303_module_SOURCES = ## platform nodist sources -usbserial_pl2303_module_LDADD = -usbserial_pl2303_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -usbserial_pl2303_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -usbserial_pl2303_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -usbserial_pl2303_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -usbserial_pl2303_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_usbserial_pl2303_module_SOURCES) -CLEANFILES += $(nodist_usbserial_pl2303_module_SOURCES) -MOD_FILES += usbserial_pl2303.mod -MARKER_FILES += usbserial_pl2303.marker -CLEANFILES += usbserial_pl2303.marker - -usbserial_pl2303.marker: $(usbserial_pl2303_module_SOURCES) $(nodist_usbserial_pl2303_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usbserial_pl2303_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_qemu -platform_PROGRAMS += usbserial_pl2303.module -MODULE_FILES += usbserial_pl2303.module$(EXEEXT) -usbserial_pl2303_module_SOURCES = bus/usb/serial/pl2303.c ## platform sources -nodist_usbserial_pl2303_module_SOURCES = ## platform nodist sources -usbserial_pl2303_module_LDADD = -usbserial_pl2303_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -usbserial_pl2303_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -usbserial_pl2303_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -usbserial_pl2303_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -usbserial_pl2303_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_usbserial_pl2303_module_SOURCES) -CLEANFILES += $(nodist_usbserial_pl2303_module_SOURCES) -MOD_FILES += usbserial_pl2303.mod -MARKER_FILES += usbserial_pl2303.marker -CLEANFILES += usbserial_pl2303.marker - -usbserial_pl2303.marker: $(usbserial_pl2303_module_SOURCES) $(nodist_usbserial_pl2303_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usbserial_pl2303_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_coreboot -platform_PROGRAMS += usbserial_pl2303.module -MODULE_FILES += usbserial_pl2303.module$(EXEEXT) -usbserial_pl2303_module_SOURCES = bus/usb/serial/pl2303.c ## platform sources -nodist_usbserial_pl2303_module_SOURCES = ## platform nodist sources -usbserial_pl2303_module_LDADD = -usbserial_pl2303_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -usbserial_pl2303_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -usbserial_pl2303_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -usbserial_pl2303_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -usbserial_pl2303_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_usbserial_pl2303_module_SOURCES) -CLEANFILES += $(nodist_usbserial_pl2303_module_SOURCES) -MOD_FILES += usbserial_pl2303.mod -MARKER_FILES += usbserial_pl2303.marker -CLEANFILES += usbserial_pl2303.marker - -usbserial_pl2303.marker: $(usbserial_pl2303_module_SOURCES) $(nodist_usbserial_pl2303_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usbserial_pl2303_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_multiboot -platform_PROGRAMS += usbserial_pl2303.module -MODULE_FILES += usbserial_pl2303.module$(EXEEXT) -usbserial_pl2303_module_SOURCES = bus/usb/serial/pl2303.c ## platform sources -nodist_usbserial_pl2303_module_SOURCES = ## platform nodist sources -usbserial_pl2303_module_LDADD = -usbserial_pl2303_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -usbserial_pl2303_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -usbserial_pl2303_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -usbserial_pl2303_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -usbserial_pl2303_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_usbserial_pl2303_module_SOURCES) -CLEANFILES += $(nodist_usbserial_pl2303_module_SOURCES) -MOD_FILES += usbserial_pl2303.mod -MARKER_FILES += usbserial_pl2303.marker -CLEANFILES += usbserial_pl2303.marker - -usbserial_pl2303.marker: $(usbserial_pl2303_module_SOURCES) $(nodist_usbserial_pl2303_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usbserial_pl2303_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_ieee1275 -platform_PROGRAMS += usbserial_pl2303.module -MODULE_FILES += usbserial_pl2303.module$(EXEEXT) -usbserial_pl2303_module_SOURCES = bus/usb/serial/pl2303.c ## platform sources -nodist_usbserial_pl2303_module_SOURCES = ## platform nodist sources -usbserial_pl2303_module_LDADD = -usbserial_pl2303_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -usbserial_pl2303_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -usbserial_pl2303_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -usbserial_pl2303_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -usbserial_pl2303_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_usbserial_pl2303_module_SOURCES) -CLEANFILES += $(nodist_usbserial_pl2303_module_SOURCES) -MOD_FILES += usbserial_pl2303.mod -MARKER_FILES += usbserial_pl2303.marker -CLEANFILES += usbserial_pl2303.marker - -usbserial_pl2303.marker: $(usbserial_pl2303_module_SOURCES) $(nodist_usbserial_pl2303_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usbserial_pl2303_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_x86_64_efi -platform_PROGRAMS += usbserial_pl2303.module -MODULE_FILES += usbserial_pl2303.module$(EXEEXT) -usbserial_pl2303_module_SOURCES = bus/usb/serial/pl2303.c ## platform sources -nodist_usbserial_pl2303_module_SOURCES = ## platform nodist sources -usbserial_pl2303_module_LDADD = -usbserial_pl2303_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -usbserial_pl2303_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -usbserial_pl2303_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -usbserial_pl2303_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -usbserial_pl2303_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_usbserial_pl2303_module_SOURCES) -CLEANFILES += $(nodist_usbserial_pl2303_module_SOURCES) -MOD_FILES += usbserial_pl2303.mod -MARKER_FILES += usbserial_pl2303.marker -CLEANFILES += usbserial_pl2303.marker - -usbserial_pl2303.marker: $(usbserial_pl2303_module_SOURCES) $(nodist_usbserial_pl2303_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usbserial_pl2303_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_mips_loongson -platform_PROGRAMS += usbserial_pl2303.module -MODULE_FILES += usbserial_pl2303.module$(EXEEXT) -usbserial_pl2303_module_SOURCES = bus/usb/serial/pl2303.c ## platform sources -nodist_usbserial_pl2303_module_SOURCES = ## platform nodist sources -usbserial_pl2303_module_LDADD = -usbserial_pl2303_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -usbserial_pl2303_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -usbserial_pl2303_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -usbserial_pl2303_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -usbserial_pl2303_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_usbserial_pl2303_module_SOURCES) -CLEANFILES += $(nodist_usbserial_pl2303_module_SOURCES) -MOD_FILES += usbserial_pl2303.mod -MARKER_FILES += usbserial_pl2303.marker -CLEANFILES += usbserial_pl2303.marker - -usbserial_pl2303.marker: $(usbserial_pl2303_module_SOURCES) $(nodist_usbserial_pl2303_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usbserial_pl2303_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_arm_coreboot -platform_PROGRAMS += usbserial_pl2303.module -MODULE_FILES += usbserial_pl2303.module$(EXEEXT) -usbserial_pl2303_module_SOURCES = bus/usb/serial/pl2303.c ## platform sources -nodist_usbserial_pl2303_module_SOURCES = ## platform nodist sources -usbserial_pl2303_module_LDADD = -usbserial_pl2303_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -usbserial_pl2303_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -usbserial_pl2303_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -usbserial_pl2303_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -usbserial_pl2303_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_usbserial_pl2303_module_SOURCES) -CLEANFILES += $(nodist_usbserial_pl2303_module_SOURCES) -MOD_FILES += usbserial_pl2303.mod -MARKER_FILES += usbserial_pl2303.marker -CLEANFILES += usbserial_pl2303.marker - -usbserial_pl2303.marker: $(usbserial_pl2303_module_SOURCES) $(nodist_usbserial_pl2303_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usbserial_pl2303_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_pc -platform_PROGRAMS += usbserial_ftdi.module -MODULE_FILES += usbserial_ftdi.module$(EXEEXT) -usbserial_ftdi_module_SOURCES = bus/usb/serial/ftdi.c ## platform sources -nodist_usbserial_ftdi_module_SOURCES = ## platform nodist sources -usbserial_ftdi_module_LDADD = -usbserial_ftdi_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -usbserial_ftdi_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -usbserial_ftdi_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -usbserial_ftdi_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -usbserial_ftdi_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_usbserial_ftdi_module_SOURCES) -CLEANFILES += $(nodist_usbserial_ftdi_module_SOURCES) -MOD_FILES += usbserial_ftdi.mod -MARKER_FILES += usbserial_ftdi.marker -CLEANFILES += usbserial_ftdi.marker - -usbserial_ftdi.marker: $(usbserial_ftdi_module_SOURCES) $(nodist_usbserial_ftdi_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usbserial_ftdi_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_efi -platform_PROGRAMS += usbserial_ftdi.module -MODULE_FILES += usbserial_ftdi.module$(EXEEXT) -usbserial_ftdi_module_SOURCES = bus/usb/serial/ftdi.c ## platform sources -nodist_usbserial_ftdi_module_SOURCES = ## platform nodist sources -usbserial_ftdi_module_LDADD = -usbserial_ftdi_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -usbserial_ftdi_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -usbserial_ftdi_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -usbserial_ftdi_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -usbserial_ftdi_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_usbserial_ftdi_module_SOURCES) -CLEANFILES += $(nodist_usbserial_ftdi_module_SOURCES) -MOD_FILES += usbserial_ftdi.mod -MARKER_FILES += usbserial_ftdi.marker -CLEANFILES += usbserial_ftdi.marker - -usbserial_ftdi.marker: $(usbserial_ftdi_module_SOURCES) $(nodist_usbserial_ftdi_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usbserial_ftdi_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_qemu -platform_PROGRAMS += usbserial_ftdi.module -MODULE_FILES += usbserial_ftdi.module$(EXEEXT) -usbserial_ftdi_module_SOURCES = bus/usb/serial/ftdi.c ## platform sources -nodist_usbserial_ftdi_module_SOURCES = ## platform nodist sources -usbserial_ftdi_module_LDADD = -usbserial_ftdi_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -usbserial_ftdi_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -usbserial_ftdi_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -usbserial_ftdi_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -usbserial_ftdi_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_usbserial_ftdi_module_SOURCES) -CLEANFILES += $(nodist_usbserial_ftdi_module_SOURCES) -MOD_FILES += usbserial_ftdi.mod -MARKER_FILES += usbserial_ftdi.marker -CLEANFILES += usbserial_ftdi.marker - -usbserial_ftdi.marker: $(usbserial_ftdi_module_SOURCES) $(nodist_usbserial_ftdi_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usbserial_ftdi_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_coreboot -platform_PROGRAMS += usbserial_ftdi.module -MODULE_FILES += usbserial_ftdi.module$(EXEEXT) -usbserial_ftdi_module_SOURCES = bus/usb/serial/ftdi.c ## platform sources -nodist_usbserial_ftdi_module_SOURCES = ## platform nodist sources -usbserial_ftdi_module_LDADD = -usbserial_ftdi_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -usbserial_ftdi_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -usbserial_ftdi_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -usbserial_ftdi_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -usbserial_ftdi_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_usbserial_ftdi_module_SOURCES) -CLEANFILES += $(nodist_usbserial_ftdi_module_SOURCES) -MOD_FILES += usbserial_ftdi.mod -MARKER_FILES += usbserial_ftdi.marker -CLEANFILES += usbserial_ftdi.marker - -usbserial_ftdi.marker: $(usbserial_ftdi_module_SOURCES) $(nodist_usbserial_ftdi_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usbserial_ftdi_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_multiboot -platform_PROGRAMS += usbserial_ftdi.module -MODULE_FILES += usbserial_ftdi.module$(EXEEXT) -usbserial_ftdi_module_SOURCES = bus/usb/serial/ftdi.c ## platform sources -nodist_usbserial_ftdi_module_SOURCES = ## platform nodist sources -usbserial_ftdi_module_LDADD = -usbserial_ftdi_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -usbserial_ftdi_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -usbserial_ftdi_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -usbserial_ftdi_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -usbserial_ftdi_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_usbserial_ftdi_module_SOURCES) -CLEANFILES += $(nodist_usbserial_ftdi_module_SOURCES) -MOD_FILES += usbserial_ftdi.mod -MARKER_FILES += usbserial_ftdi.marker -CLEANFILES += usbserial_ftdi.marker - -usbserial_ftdi.marker: $(usbserial_ftdi_module_SOURCES) $(nodist_usbserial_ftdi_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usbserial_ftdi_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_ieee1275 -platform_PROGRAMS += usbserial_ftdi.module -MODULE_FILES += usbserial_ftdi.module$(EXEEXT) -usbserial_ftdi_module_SOURCES = bus/usb/serial/ftdi.c ## platform sources -nodist_usbserial_ftdi_module_SOURCES = ## platform nodist sources -usbserial_ftdi_module_LDADD = -usbserial_ftdi_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -usbserial_ftdi_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -usbserial_ftdi_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -usbserial_ftdi_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -usbserial_ftdi_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_usbserial_ftdi_module_SOURCES) -CLEANFILES += $(nodist_usbserial_ftdi_module_SOURCES) -MOD_FILES += usbserial_ftdi.mod -MARKER_FILES += usbserial_ftdi.marker -CLEANFILES += usbserial_ftdi.marker - -usbserial_ftdi.marker: $(usbserial_ftdi_module_SOURCES) $(nodist_usbserial_ftdi_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usbserial_ftdi_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_x86_64_efi -platform_PROGRAMS += usbserial_ftdi.module -MODULE_FILES += usbserial_ftdi.module$(EXEEXT) -usbserial_ftdi_module_SOURCES = bus/usb/serial/ftdi.c ## platform sources -nodist_usbserial_ftdi_module_SOURCES = ## platform nodist sources -usbserial_ftdi_module_LDADD = -usbserial_ftdi_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -usbserial_ftdi_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -usbserial_ftdi_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -usbserial_ftdi_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -usbserial_ftdi_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_usbserial_ftdi_module_SOURCES) -CLEANFILES += $(nodist_usbserial_ftdi_module_SOURCES) -MOD_FILES += usbserial_ftdi.mod -MARKER_FILES += usbserial_ftdi.marker -CLEANFILES += usbserial_ftdi.marker - -usbserial_ftdi.marker: $(usbserial_ftdi_module_SOURCES) $(nodist_usbserial_ftdi_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usbserial_ftdi_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_mips_loongson -platform_PROGRAMS += usbserial_ftdi.module -MODULE_FILES += usbserial_ftdi.module$(EXEEXT) -usbserial_ftdi_module_SOURCES = bus/usb/serial/ftdi.c ## platform sources -nodist_usbserial_ftdi_module_SOURCES = ## platform nodist sources -usbserial_ftdi_module_LDADD = -usbserial_ftdi_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -usbserial_ftdi_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -usbserial_ftdi_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -usbserial_ftdi_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -usbserial_ftdi_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_usbserial_ftdi_module_SOURCES) -CLEANFILES += $(nodist_usbserial_ftdi_module_SOURCES) -MOD_FILES += usbserial_ftdi.mod -MARKER_FILES += usbserial_ftdi.marker -CLEANFILES += usbserial_ftdi.marker - -usbserial_ftdi.marker: $(usbserial_ftdi_module_SOURCES) $(nodist_usbserial_ftdi_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usbserial_ftdi_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_arm_coreboot -platform_PROGRAMS += usbserial_ftdi.module -MODULE_FILES += usbserial_ftdi.module$(EXEEXT) -usbserial_ftdi_module_SOURCES = bus/usb/serial/ftdi.c ## platform sources -nodist_usbserial_ftdi_module_SOURCES = ## platform nodist sources -usbserial_ftdi_module_LDADD = -usbserial_ftdi_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -usbserial_ftdi_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -usbserial_ftdi_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -usbserial_ftdi_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -usbserial_ftdi_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_usbserial_ftdi_module_SOURCES) -CLEANFILES += $(nodist_usbserial_ftdi_module_SOURCES) -MOD_FILES += usbserial_ftdi.mod -MARKER_FILES += usbserial_ftdi.marker -CLEANFILES += usbserial_ftdi.marker - -usbserial_ftdi.marker: $(usbserial_ftdi_module_SOURCES) $(nodist_usbserial_ftdi_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usbserial_ftdi_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_pc -platform_PROGRAMS += usbserial_usbdebug.module -MODULE_FILES += usbserial_usbdebug.module$(EXEEXT) -usbserial_usbdebug_module_SOURCES = bus/usb/serial/usbdebug_late.c ## platform sources -nodist_usbserial_usbdebug_module_SOURCES = ## platform nodist sources -usbserial_usbdebug_module_LDADD = -usbserial_usbdebug_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -usbserial_usbdebug_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -usbserial_usbdebug_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -usbserial_usbdebug_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -usbserial_usbdebug_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_usbserial_usbdebug_module_SOURCES) -CLEANFILES += $(nodist_usbserial_usbdebug_module_SOURCES) -MOD_FILES += usbserial_usbdebug.mod -MARKER_FILES += usbserial_usbdebug.marker -CLEANFILES += usbserial_usbdebug.marker - -usbserial_usbdebug.marker: $(usbserial_usbdebug_module_SOURCES) $(nodist_usbserial_usbdebug_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usbserial_usbdebug_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_efi -platform_PROGRAMS += usbserial_usbdebug.module -MODULE_FILES += usbserial_usbdebug.module$(EXEEXT) -usbserial_usbdebug_module_SOURCES = bus/usb/serial/usbdebug_late.c ## platform sources -nodist_usbserial_usbdebug_module_SOURCES = ## platform nodist sources -usbserial_usbdebug_module_LDADD = -usbserial_usbdebug_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -usbserial_usbdebug_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -usbserial_usbdebug_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -usbserial_usbdebug_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -usbserial_usbdebug_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_usbserial_usbdebug_module_SOURCES) -CLEANFILES += $(nodist_usbserial_usbdebug_module_SOURCES) -MOD_FILES += usbserial_usbdebug.mod -MARKER_FILES += usbserial_usbdebug.marker -CLEANFILES += usbserial_usbdebug.marker - -usbserial_usbdebug.marker: $(usbserial_usbdebug_module_SOURCES) $(nodist_usbserial_usbdebug_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usbserial_usbdebug_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_qemu -platform_PROGRAMS += usbserial_usbdebug.module -MODULE_FILES += usbserial_usbdebug.module$(EXEEXT) -usbserial_usbdebug_module_SOURCES = bus/usb/serial/usbdebug_late.c ## platform sources -nodist_usbserial_usbdebug_module_SOURCES = ## platform nodist sources -usbserial_usbdebug_module_LDADD = -usbserial_usbdebug_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -usbserial_usbdebug_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -usbserial_usbdebug_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -usbserial_usbdebug_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -usbserial_usbdebug_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_usbserial_usbdebug_module_SOURCES) -CLEANFILES += $(nodist_usbserial_usbdebug_module_SOURCES) -MOD_FILES += usbserial_usbdebug.mod -MARKER_FILES += usbserial_usbdebug.marker -CLEANFILES += usbserial_usbdebug.marker - -usbserial_usbdebug.marker: $(usbserial_usbdebug_module_SOURCES) $(nodist_usbserial_usbdebug_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usbserial_usbdebug_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_coreboot -platform_PROGRAMS += usbserial_usbdebug.module -MODULE_FILES += usbserial_usbdebug.module$(EXEEXT) -usbserial_usbdebug_module_SOURCES = bus/usb/serial/usbdebug_late.c ## platform sources -nodist_usbserial_usbdebug_module_SOURCES = ## platform nodist sources -usbserial_usbdebug_module_LDADD = -usbserial_usbdebug_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -usbserial_usbdebug_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -usbserial_usbdebug_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -usbserial_usbdebug_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -usbserial_usbdebug_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_usbserial_usbdebug_module_SOURCES) -CLEANFILES += $(nodist_usbserial_usbdebug_module_SOURCES) -MOD_FILES += usbserial_usbdebug.mod -MARKER_FILES += usbserial_usbdebug.marker -CLEANFILES += usbserial_usbdebug.marker - -usbserial_usbdebug.marker: $(usbserial_usbdebug_module_SOURCES) $(nodist_usbserial_usbdebug_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usbserial_usbdebug_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_multiboot -platform_PROGRAMS += usbserial_usbdebug.module -MODULE_FILES += usbserial_usbdebug.module$(EXEEXT) -usbserial_usbdebug_module_SOURCES = bus/usb/serial/usbdebug_late.c ## platform sources -nodist_usbserial_usbdebug_module_SOURCES = ## platform nodist sources -usbserial_usbdebug_module_LDADD = -usbserial_usbdebug_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -usbserial_usbdebug_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -usbserial_usbdebug_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -usbserial_usbdebug_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -usbserial_usbdebug_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_usbserial_usbdebug_module_SOURCES) -CLEANFILES += $(nodist_usbserial_usbdebug_module_SOURCES) -MOD_FILES += usbserial_usbdebug.mod -MARKER_FILES += usbserial_usbdebug.marker -CLEANFILES += usbserial_usbdebug.marker - -usbserial_usbdebug.marker: $(usbserial_usbdebug_module_SOURCES) $(nodist_usbserial_usbdebug_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usbserial_usbdebug_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_ieee1275 -platform_PROGRAMS += usbserial_usbdebug.module -MODULE_FILES += usbserial_usbdebug.module$(EXEEXT) -usbserial_usbdebug_module_SOURCES = bus/usb/serial/usbdebug_late.c ## platform sources -nodist_usbserial_usbdebug_module_SOURCES = ## platform nodist sources -usbserial_usbdebug_module_LDADD = -usbserial_usbdebug_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -usbserial_usbdebug_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -usbserial_usbdebug_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -usbserial_usbdebug_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -usbserial_usbdebug_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_usbserial_usbdebug_module_SOURCES) -CLEANFILES += $(nodist_usbserial_usbdebug_module_SOURCES) -MOD_FILES += usbserial_usbdebug.mod -MARKER_FILES += usbserial_usbdebug.marker -CLEANFILES += usbserial_usbdebug.marker - -usbserial_usbdebug.marker: $(usbserial_usbdebug_module_SOURCES) $(nodist_usbserial_usbdebug_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usbserial_usbdebug_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_x86_64_efi -platform_PROGRAMS += usbserial_usbdebug.module -MODULE_FILES += usbserial_usbdebug.module$(EXEEXT) -usbserial_usbdebug_module_SOURCES = bus/usb/serial/usbdebug_late.c ## platform sources -nodist_usbserial_usbdebug_module_SOURCES = ## platform nodist sources -usbserial_usbdebug_module_LDADD = -usbserial_usbdebug_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -usbserial_usbdebug_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -usbserial_usbdebug_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -usbserial_usbdebug_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -usbserial_usbdebug_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_usbserial_usbdebug_module_SOURCES) -CLEANFILES += $(nodist_usbserial_usbdebug_module_SOURCES) -MOD_FILES += usbserial_usbdebug.mod -MARKER_FILES += usbserial_usbdebug.marker -CLEANFILES += usbserial_usbdebug.marker - -usbserial_usbdebug.marker: $(usbserial_usbdebug_module_SOURCES) $(nodist_usbserial_usbdebug_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usbserial_usbdebug_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_mips_loongson -platform_PROGRAMS += usbserial_usbdebug.module -MODULE_FILES += usbserial_usbdebug.module$(EXEEXT) -usbserial_usbdebug_module_SOURCES = bus/usb/serial/usbdebug_late.c ## platform sources -nodist_usbserial_usbdebug_module_SOURCES = ## platform nodist sources -usbserial_usbdebug_module_LDADD = -usbserial_usbdebug_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -usbserial_usbdebug_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -usbserial_usbdebug_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -usbserial_usbdebug_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -usbserial_usbdebug_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_usbserial_usbdebug_module_SOURCES) -CLEANFILES += $(nodist_usbserial_usbdebug_module_SOURCES) -MOD_FILES += usbserial_usbdebug.mod -MARKER_FILES += usbserial_usbdebug.marker -CLEANFILES += usbserial_usbdebug.marker - -usbserial_usbdebug.marker: $(usbserial_usbdebug_module_SOURCES) $(nodist_usbserial_usbdebug_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usbserial_usbdebug_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_arm_coreboot -platform_PROGRAMS += usbserial_usbdebug.module -MODULE_FILES += usbserial_usbdebug.module$(EXEEXT) -usbserial_usbdebug_module_SOURCES = bus/usb/serial/usbdebug_late.c ## platform sources -nodist_usbserial_usbdebug_module_SOURCES = ## platform nodist sources -usbserial_usbdebug_module_LDADD = -usbserial_usbdebug_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -usbserial_usbdebug_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -usbserial_usbdebug_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -usbserial_usbdebug_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -usbserial_usbdebug_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_usbserial_usbdebug_module_SOURCES) -CLEANFILES += $(nodist_usbserial_usbdebug_module_SOURCES) -MOD_FILES += usbserial_usbdebug.mod -MARKER_FILES += usbserial_usbdebug.marker -CLEANFILES += usbserial_usbdebug.marker - -usbserial_usbdebug.marker: $(usbserial_usbdebug_module_SOURCES) $(nodist_usbserial_usbdebug_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usbserial_usbdebug_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_pc -platform_PROGRAMS += uhci.module -MODULE_FILES += uhci.module$(EXEEXT) -uhci_module_SOURCES = bus/usb/uhci.c ## platform sources -nodist_uhci_module_SOURCES = ## platform nodist sources -uhci_module_LDADD = -uhci_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -uhci_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -uhci_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -uhci_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -uhci_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_uhci_module_SOURCES) -CLEANFILES += $(nodist_uhci_module_SOURCES) -MOD_FILES += uhci.mod -MARKER_FILES += uhci.marker -CLEANFILES += uhci.marker - -uhci.marker: $(uhci_module_SOURCES) $(nodist_uhci_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(uhci_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_efi -platform_PROGRAMS += uhci.module -MODULE_FILES += uhci.module$(EXEEXT) -uhci_module_SOURCES = bus/usb/uhci.c ## platform sources -nodist_uhci_module_SOURCES = ## platform nodist sources -uhci_module_LDADD = -uhci_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -uhci_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -uhci_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -uhci_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -uhci_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_uhci_module_SOURCES) -CLEANFILES += $(nodist_uhci_module_SOURCES) -MOD_FILES += uhci.mod -MARKER_FILES += uhci.marker -CLEANFILES += uhci.marker - -uhci.marker: $(uhci_module_SOURCES) $(nodist_uhci_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(uhci_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_qemu -platform_PROGRAMS += uhci.module -MODULE_FILES += uhci.module$(EXEEXT) -uhci_module_SOURCES = bus/usb/uhci.c ## platform sources -nodist_uhci_module_SOURCES = ## platform nodist sources -uhci_module_LDADD = -uhci_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -uhci_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -uhci_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -uhci_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -uhci_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_uhci_module_SOURCES) -CLEANFILES += $(nodist_uhci_module_SOURCES) -MOD_FILES += uhci.mod -MARKER_FILES += uhci.marker -CLEANFILES += uhci.marker - -uhci.marker: $(uhci_module_SOURCES) $(nodist_uhci_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(uhci_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_coreboot -platform_PROGRAMS += uhci.module -MODULE_FILES += uhci.module$(EXEEXT) -uhci_module_SOURCES = bus/usb/uhci.c ## platform sources -nodist_uhci_module_SOURCES = ## platform nodist sources -uhci_module_LDADD = -uhci_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -uhci_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -uhci_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -uhci_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -uhci_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_uhci_module_SOURCES) -CLEANFILES += $(nodist_uhci_module_SOURCES) -MOD_FILES += uhci.mod -MARKER_FILES += uhci.marker -CLEANFILES += uhci.marker - -uhci.marker: $(uhci_module_SOURCES) $(nodist_uhci_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(uhci_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_multiboot -platform_PROGRAMS += uhci.module -MODULE_FILES += uhci.module$(EXEEXT) -uhci_module_SOURCES = bus/usb/uhci.c ## platform sources -nodist_uhci_module_SOURCES = ## platform nodist sources -uhci_module_LDADD = -uhci_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -uhci_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -uhci_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -uhci_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -uhci_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_uhci_module_SOURCES) -CLEANFILES += $(nodist_uhci_module_SOURCES) -MOD_FILES += uhci.mod -MARKER_FILES += uhci.marker -CLEANFILES += uhci.marker - -uhci.marker: $(uhci_module_SOURCES) $(nodist_uhci_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(uhci_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_ieee1275 -platform_PROGRAMS += uhci.module -MODULE_FILES += uhci.module$(EXEEXT) -uhci_module_SOURCES = bus/usb/uhci.c ## platform sources -nodist_uhci_module_SOURCES = ## platform nodist sources -uhci_module_LDADD = -uhci_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -uhci_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -uhci_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -uhci_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -uhci_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_uhci_module_SOURCES) -CLEANFILES += $(nodist_uhci_module_SOURCES) -MOD_FILES += uhci.mod -MARKER_FILES += uhci.marker -CLEANFILES += uhci.marker - -uhci.marker: $(uhci_module_SOURCES) $(nodist_uhci_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(uhci_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_x86_64_efi -platform_PROGRAMS += uhci.module -MODULE_FILES += uhci.module$(EXEEXT) -uhci_module_SOURCES = bus/usb/uhci.c ## platform sources -nodist_uhci_module_SOURCES = ## platform nodist sources -uhci_module_LDADD = -uhci_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -uhci_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -uhci_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -uhci_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -uhci_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_uhci_module_SOURCES) -CLEANFILES += $(nodist_uhci_module_SOURCES) -MOD_FILES += uhci.mod -MARKER_FILES += uhci.marker -CLEANFILES += uhci.marker - -uhci.marker: $(uhci_module_SOURCES) $(nodist_uhci_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(uhci_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_mips_loongson -platform_PROGRAMS += uhci.module -MODULE_FILES += uhci.module$(EXEEXT) -uhci_module_SOURCES = bus/usb/uhci.c ## platform sources -nodist_uhci_module_SOURCES = ## platform nodist sources -uhci_module_LDADD = -uhci_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -uhci_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -uhci_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -uhci_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -uhci_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_uhci_module_SOURCES) -CLEANFILES += $(nodist_uhci_module_SOURCES) -MOD_FILES += uhci.mod -MARKER_FILES += uhci.marker -CLEANFILES += uhci.marker - -uhci.marker: $(uhci_module_SOURCES) $(nodist_uhci_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(uhci_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_pc -platform_PROGRAMS += ohci.module -MODULE_FILES += ohci.module$(EXEEXT) -ohci_module_SOURCES = bus/usb/ohci.c ## platform sources -nodist_ohci_module_SOURCES = ## platform nodist sources -ohci_module_LDADD = -ohci_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -ohci_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -ohci_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -ohci_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -ohci_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_ohci_module_SOURCES) -CLEANFILES += $(nodist_ohci_module_SOURCES) -MOD_FILES += ohci.mod -MARKER_FILES += ohci.marker -CLEANFILES += ohci.marker - -ohci.marker: $(ohci_module_SOURCES) $(nodist_ohci_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ohci_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_efi -platform_PROGRAMS += ohci.module -MODULE_FILES += ohci.module$(EXEEXT) -ohci_module_SOURCES = bus/usb/ohci.c ## platform sources -nodist_ohci_module_SOURCES = ## platform nodist sources -ohci_module_LDADD = -ohci_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -ohci_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -ohci_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -ohci_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -ohci_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_ohci_module_SOURCES) -CLEANFILES += $(nodist_ohci_module_SOURCES) -MOD_FILES += ohci.mod -MARKER_FILES += ohci.marker -CLEANFILES += ohci.marker - -ohci.marker: $(ohci_module_SOURCES) $(nodist_ohci_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ohci_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_qemu -platform_PROGRAMS += ohci.module -MODULE_FILES += ohci.module$(EXEEXT) -ohci_module_SOURCES = bus/usb/ohci.c ## platform sources -nodist_ohci_module_SOURCES = ## platform nodist sources -ohci_module_LDADD = -ohci_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -ohci_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -ohci_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -ohci_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -ohci_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_ohci_module_SOURCES) -CLEANFILES += $(nodist_ohci_module_SOURCES) -MOD_FILES += ohci.mod -MARKER_FILES += ohci.marker -CLEANFILES += ohci.marker - -ohci.marker: $(ohci_module_SOURCES) $(nodist_ohci_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ohci_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_coreboot -platform_PROGRAMS += ohci.module -MODULE_FILES += ohci.module$(EXEEXT) -ohci_module_SOURCES = bus/usb/ohci.c ## platform sources -nodist_ohci_module_SOURCES = ## platform nodist sources -ohci_module_LDADD = -ohci_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -ohci_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -ohci_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -ohci_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -ohci_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_ohci_module_SOURCES) -CLEANFILES += $(nodist_ohci_module_SOURCES) -MOD_FILES += ohci.mod -MARKER_FILES += ohci.marker -CLEANFILES += ohci.marker - -ohci.marker: $(ohci_module_SOURCES) $(nodist_ohci_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ohci_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_multiboot -platform_PROGRAMS += ohci.module -MODULE_FILES += ohci.module$(EXEEXT) -ohci_module_SOURCES = bus/usb/ohci.c ## platform sources -nodist_ohci_module_SOURCES = ## platform nodist sources -ohci_module_LDADD = -ohci_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -ohci_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -ohci_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -ohci_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -ohci_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_ohci_module_SOURCES) -CLEANFILES += $(nodist_ohci_module_SOURCES) -MOD_FILES += ohci.mod -MARKER_FILES += ohci.marker -CLEANFILES += ohci.marker - -ohci.marker: $(ohci_module_SOURCES) $(nodist_ohci_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ohci_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_ieee1275 -platform_PROGRAMS += ohci.module -MODULE_FILES += ohci.module$(EXEEXT) -ohci_module_SOURCES = bus/usb/ohci.c ## platform sources -nodist_ohci_module_SOURCES = ## platform nodist sources -ohci_module_LDADD = -ohci_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -ohci_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -ohci_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -ohci_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -ohci_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_ohci_module_SOURCES) -CLEANFILES += $(nodist_ohci_module_SOURCES) -MOD_FILES += ohci.mod -MARKER_FILES += ohci.marker -CLEANFILES += ohci.marker - -ohci.marker: $(ohci_module_SOURCES) $(nodist_ohci_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ohci_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_x86_64_efi -platform_PROGRAMS += ohci.module -MODULE_FILES += ohci.module$(EXEEXT) -ohci_module_SOURCES = bus/usb/ohci.c ## platform sources -nodist_ohci_module_SOURCES = ## platform nodist sources -ohci_module_LDADD = -ohci_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -ohci_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -ohci_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -ohci_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -ohci_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_ohci_module_SOURCES) -CLEANFILES += $(nodist_ohci_module_SOURCES) -MOD_FILES += ohci.mod -MARKER_FILES += ohci.marker -CLEANFILES += ohci.marker - -ohci.marker: $(ohci_module_SOURCES) $(nodist_ohci_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ohci_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_mips_loongson -platform_PROGRAMS += ohci.module -MODULE_FILES += ohci.module$(EXEEXT) -ohci_module_SOURCES = bus/usb/ohci.c ## platform sources -nodist_ohci_module_SOURCES = ## platform nodist sources -ohci_module_LDADD = -ohci_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -ohci_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -ohci_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -ohci_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -ohci_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_ohci_module_SOURCES) -CLEANFILES += $(nodist_ohci_module_SOURCES) -MOD_FILES += ohci.mod -MARKER_FILES += ohci.marker -CLEANFILES += ohci.marker - -ohci.marker: $(ohci_module_SOURCES) $(nodist_ohci_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ohci_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_pc -platform_PROGRAMS += ehci.module -MODULE_FILES += ehci.module$(EXEEXT) -ehci_module_SOURCES = bus/usb/ehci-pci.c bus/usb/ehci.c ## platform sources -nodist_ehci_module_SOURCES = ## platform nodist sources -ehci_module_LDADD = -ehci_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -ehci_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -ehci_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -ehci_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -ehci_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_ehci_module_SOURCES) -CLEANFILES += $(nodist_ehci_module_SOURCES) -MOD_FILES += ehci.mod -MARKER_FILES += ehci.marker -CLEANFILES += ehci.marker - -ehci.marker: $(ehci_module_SOURCES) $(nodist_ehci_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ehci_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_efi -platform_PROGRAMS += ehci.module -MODULE_FILES += ehci.module$(EXEEXT) -ehci_module_SOURCES = bus/usb/ehci-pci.c bus/usb/ehci.c ## platform sources -nodist_ehci_module_SOURCES = ## platform nodist sources -ehci_module_LDADD = -ehci_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -ehci_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -ehci_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -ehci_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -ehci_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_ehci_module_SOURCES) -CLEANFILES += $(nodist_ehci_module_SOURCES) -MOD_FILES += ehci.mod -MARKER_FILES += ehci.marker -CLEANFILES += ehci.marker - -ehci.marker: $(ehci_module_SOURCES) $(nodist_ehci_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ehci_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_qemu -platform_PROGRAMS += ehci.module -MODULE_FILES += ehci.module$(EXEEXT) -ehci_module_SOURCES = bus/usb/ehci-pci.c bus/usb/ehci.c ## platform sources -nodist_ehci_module_SOURCES = ## platform nodist sources -ehci_module_LDADD = -ehci_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -ehci_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -ehci_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -ehci_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -ehci_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_ehci_module_SOURCES) -CLEANFILES += $(nodist_ehci_module_SOURCES) -MOD_FILES += ehci.mod -MARKER_FILES += ehci.marker -CLEANFILES += ehci.marker - -ehci.marker: $(ehci_module_SOURCES) $(nodist_ehci_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ehci_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_coreboot -platform_PROGRAMS += ehci.module -MODULE_FILES += ehci.module$(EXEEXT) -ehci_module_SOURCES = bus/usb/ehci-pci.c bus/usb/ehci.c ## platform sources -nodist_ehci_module_SOURCES = ## platform nodist sources -ehci_module_LDADD = -ehci_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -ehci_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -ehci_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -ehci_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -ehci_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_ehci_module_SOURCES) -CLEANFILES += $(nodist_ehci_module_SOURCES) -MOD_FILES += ehci.mod -MARKER_FILES += ehci.marker -CLEANFILES += ehci.marker - -ehci.marker: $(ehci_module_SOURCES) $(nodist_ehci_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ehci_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_multiboot -platform_PROGRAMS += ehci.module -MODULE_FILES += ehci.module$(EXEEXT) -ehci_module_SOURCES = bus/usb/ehci-pci.c bus/usb/ehci.c ## platform sources -nodist_ehci_module_SOURCES = ## platform nodist sources -ehci_module_LDADD = -ehci_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -ehci_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -ehci_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -ehci_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -ehci_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_ehci_module_SOURCES) -CLEANFILES += $(nodist_ehci_module_SOURCES) -MOD_FILES += ehci.mod -MARKER_FILES += ehci.marker -CLEANFILES += ehci.marker - -ehci.marker: $(ehci_module_SOURCES) $(nodist_ehci_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ehci_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_ieee1275 -platform_PROGRAMS += ehci.module -MODULE_FILES += ehci.module$(EXEEXT) -ehci_module_SOURCES = bus/usb/ehci-pci.c bus/usb/ehci.c ## platform sources -nodist_ehci_module_SOURCES = ## platform nodist sources -ehci_module_LDADD = -ehci_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -ehci_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -ehci_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -ehci_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -ehci_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_ehci_module_SOURCES) -CLEANFILES += $(nodist_ehci_module_SOURCES) -MOD_FILES += ehci.mod -MARKER_FILES += ehci.marker -CLEANFILES += ehci.marker - -ehci.marker: $(ehci_module_SOURCES) $(nodist_ehci_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ehci_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_x86_64_efi -platform_PROGRAMS += ehci.module -MODULE_FILES += ehci.module$(EXEEXT) -ehci_module_SOURCES = bus/usb/ehci-pci.c bus/usb/ehci.c ## platform sources -nodist_ehci_module_SOURCES = ## platform nodist sources -ehci_module_LDADD = -ehci_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -ehci_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -ehci_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -ehci_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -ehci_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_ehci_module_SOURCES) -CLEANFILES += $(nodist_ehci_module_SOURCES) -MOD_FILES += ehci.mod -MARKER_FILES += ehci.marker -CLEANFILES += ehci.marker - -ehci.marker: $(ehci_module_SOURCES) $(nodist_ehci_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ehci_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_mips_loongson -platform_PROGRAMS += ehci.module -MODULE_FILES += ehci.module$(EXEEXT) -ehci_module_SOURCES = bus/usb/ehci-pci.c bus/usb/ehci.c ## platform sources -nodist_ehci_module_SOURCES = ## platform nodist sources -ehci_module_LDADD = -ehci_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -ehci_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -ehci_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -ehci_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -ehci_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_ehci_module_SOURCES) -CLEANFILES += $(nodist_ehci_module_SOURCES) -MOD_FILES += ehci.mod -MARKER_FILES += ehci.marker -CLEANFILES += ehci.marker - -ehci.marker: $(ehci_module_SOURCES) $(nodist_ehci_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ehci_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_arm_coreboot -platform_PROGRAMS += ehci.module -MODULE_FILES += ehci.module$(EXEEXT) -ehci_module_SOURCES = bus/usb/ehci-fdt.c bus/usb/ehci.c ## platform sources -nodist_ehci_module_SOURCES = ## platform nodist sources -ehci_module_LDADD = -ehci_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -ehci_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -ehci_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -ehci_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -ehci_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_ehci_module_SOURCES) -CLEANFILES += $(nodist_ehci_module_SOURCES) -MOD_FILES += ehci.mod -MARKER_FILES += ehci.marker -CLEANFILES += ehci.marker - -ehci.marker: $(ehci_module_SOURCES) $(nodist_ehci_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ehci_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_pc -platform_PROGRAMS += pci.module -MODULE_FILES += pci.module$(EXEEXT) -pci_module_SOURCES = bus/pci.c ## platform sources -nodist_pci_module_SOURCES = ## platform nodist sources -pci_module_LDADD = -pci_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -pci_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -pci_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -pci_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -pci_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_pci_module_SOURCES) -CLEANFILES += $(nodist_pci_module_SOURCES) -MOD_FILES += pci.mod -MARKER_FILES += pci.marker -CLEANFILES += pci.marker - -pci.marker: $(pci_module_SOURCES) $(nodist_pci_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(pci_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_coreboot -platform_PROGRAMS += pci.module -MODULE_FILES += pci.module$(EXEEXT) -pci_module_SOURCES = bus/pci.c ## platform sources -nodist_pci_module_SOURCES = ## platform nodist sources -pci_module_LDADD = -pci_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -pci_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -pci_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -pci_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -pci_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_pci_module_SOURCES) -CLEANFILES += $(nodist_pci_module_SOURCES) -MOD_FILES += pci.mod -MARKER_FILES += pci.marker -CLEANFILES += pci.marker - -pci.marker: $(pci_module_SOURCES) $(nodist_pci_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(pci_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_multiboot -platform_PROGRAMS += pci.module -MODULE_FILES += pci.module$(EXEEXT) -pci_module_SOURCES = bus/pci.c ## platform sources -nodist_pci_module_SOURCES = ## platform nodist sources -pci_module_LDADD = -pci_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -pci_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -pci_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -pci_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -pci_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_pci_module_SOURCES) -CLEANFILES += $(nodist_pci_module_SOURCES) -MOD_FILES += pci.mod -MARKER_FILES += pci.marker -CLEANFILES += pci.marker - -pci.marker: $(pci_module_SOURCES) $(nodist_pci_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(pci_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_ieee1275 -platform_PROGRAMS += pci.module -MODULE_FILES += pci.module$(EXEEXT) -pci_module_SOURCES = bus/i386/ieee1275/pci.c bus/pci.c ## platform sources -nodist_pci_module_SOURCES = ## platform nodist sources -pci_module_LDADD = -pci_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -pci_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -pci_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -pci_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -pci_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_pci_module_SOURCES) -CLEANFILES += $(nodist_pci_module_SOURCES) -MOD_FILES += pci.mod -MARKER_FILES += pci.marker -CLEANFILES += pci.marker - -pci.marker: $(pci_module_SOURCES) $(nodist_pci_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(pci_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_pc -platform_PROGRAMS += nativedisk.module -MODULE_FILES += nativedisk.module$(EXEEXT) -nativedisk_module_SOURCES = commands/nativedisk.c ## platform sources -nodist_nativedisk_module_SOURCES = ## platform nodist sources -nativedisk_module_LDADD = -nativedisk_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -nativedisk_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -nativedisk_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -nativedisk_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -nativedisk_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_nativedisk_module_SOURCES) -CLEANFILES += $(nodist_nativedisk_module_SOURCES) -MOD_FILES += nativedisk.mod -MARKER_FILES += nativedisk.marker -CLEANFILES += nativedisk.marker - -nativedisk.marker: $(nativedisk_module_SOURCES) $(nodist_nativedisk_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(nativedisk_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_efi -platform_PROGRAMS += nativedisk.module -MODULE_FILES += nativedisk.module$(EXEEXT) -nativedisk_module_SOURCES = commands/nativedisk.c ## platform sources -nodist_nativedisk_module_SOURCES = ## platform nodist sources -nativedisk_module_LDADD = -nativedisk_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -nativedisk_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -nativedisk_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -nativedisk_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -nativedisk_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_nativedisk_module_SOURCES) -CLEANFILES += $(nodist_nativedisk_module_SOURCES) -MOD_FILES += nativedisk.mod -MARKER_FILES += nativedisk.marker -CLEANFILES += nativedisk.marker - -nativedisk.marker: $(nativedisk_module_SOURCES) $(nodist_nativedisk_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(nativedisk_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_qemu -platform_PROGRAMS += nativedisk.module -MODULE_FILES += nativedisk.module$(EXEEXT) -nativedisk_module_SOURCES = commands/nativedisk.c ## platform sources -nodist_nativedisk_module_SOURCES = ## platform nodist sources -nativedisk_module_LDADD = -nativedisk_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -nativedisk_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -nativedisk_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -nativedisk_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -nativedisk_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_nativedisk_module_SOURCES) -CLEANFILES += $(nodist_nativedisk_module_SOURCES) -MOD_FILES += nativedisk.mod -MARKER_FILES += nativedisk.marker -CLEANFILES += nativedisk.marker - -nativedisk.marker: $(nativedisk_module_SOURCES) $(nodist_nativedisk_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(nativedisk_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_coreboot -platform_PROGRAMS += nativedisk.module -MODULE_FILES += nativedisk.module$(EXEEXT) -nativedisk_module_SOURCES = commands/nativedisk.c ## platform sources -nodist_nativedisk_module_SOURCES = ## platform nodist sources -nativedisk_module_LDADD = -nativedisk_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -nativedisk_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -nativedisk_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -nativedisk_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -nativedisk_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_nativedisk_module_SOURCES) -CLEANFILES += $(nodist_nativedisk_module_SOURCES) -MOD_FILES += nativedisk.mod -MARKER_FILES += nativedisk.marker -CLEANFILES += nativedisk.marker - -nativedisk.marker: $(nativedisk_module_SOURCES) $(nodist_nativedisk_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(nativedisk_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_multiboot -platform_PROGRAMS += nativedisk.module -MODULE_FILES += nativedisk.module$(EXEEXT) -nativedisk_module_SOURCES = commands/nativedisk.c ## platform sources -nodist_nativedisk_module_SOURCES = ## platform nodist sources -nativedisk_module_LDADD = -nativedisk_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -nativedisk_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -nativedisk_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -nativedisk_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -nativedisk_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_nativedisk_module_SOURCES) -CLEANFILES += $(nodist_nativedisk_module_SOURCES) -MOD_FILES += nativedisk.mod -MARKER_FILES += nativedisk.marker -CLEANFILES += nativedisk.marker - -nativedisk.marker: $(nativedisk_module_SOURCES) $(nodist_nativedisk_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(nativedisk_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_ieee1275 -platform_PROGRAMS += nativedisk.module -MODULE_FILES += nativedisk.module$(EXEEXT) -nativedisk_module_SOURCES = commands/nativedisk.c ## platform sources -nodist_nativedisk_module_SOURCES = ## platform nodist sources -nativedisk_module_LDADD = -nativedisk_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -nativedisk_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -nativedisk_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -nativedisk_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -nativedisk_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_nativedisk_module_SOURCES) -CLEANFILES += $(nodist_nativedisk_module_SOURCES) -MOD_FILES += nativedisk.mod -MARKER_FILES += nativedisk.marker -CLEANFILES += nativedisk.marker - -nativedisk.marker: $(nativedisk_module_SOURCES) $(nodist_nativedisk_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(nativedisk_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_x86_64_efi -platform_PROGRAMS += nativedisk.module -MODULE_FILES += nativedisk.module$(EXEEXT) -nativedisk_module_SOURCES = commands/nativedisk.c ## platform sources -nodist_nativedisk_module_SOURCES = ## platform nodist sources -nativedisk_module_LDADD = -nativedisk_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -nativedisk_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -nativedisk_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -nativedisk_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -nativedisk_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_nativedisk_module_SOURCES) -CLEANFILES += $(nodist_nativedisk_module_SOURCES) -MOD_FILES += nativedisk.mod -MARKER_FILES += nativedisk.marker -CLEANFILES += nativedisk.marker - -nativedisk.marker: $(nativedisk_module_SOURCES) $(nodist_nativedisk_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(nativedisk_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_mips_loongson -platform_PROGRAMS += nativedisk.module -MODULE_FILES += nativedisk.module$(EXEEXT) -nativedisk_module_SOURCES = commands/nativedisk.c ## platform sources -nodist_nativedisk_module_SOURCES = ## platform nodist sources -nativedisk_module_LDADD = -nativedisk_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -nativedisk_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -nativedisk_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -nativedisk_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -nativedisk_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_nativedisk_module_SOURCES) -CLEANFILES += $(nodist_nativedisk_module_SOURCES) -MOD_FILES += nativedisk.mod -MARKER_FILES += nativedisk.marker -CLEANFILES += nativedisk.marker - -nativedisk.marker: $(nativedisk_module_SOURCES) $(nodist_nativedisk_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(nativedisk_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_mips_qemu_mips -platform_PROGRAMS += nativedisk.module -MODULE_FILES += nativedisk.module$(EXEEXT) -nativedisk_module_SOURCES = commands/nativedisk.c ## platform sources -nodist_nativedisk_module_SOURCES = ## platform nodist sources -nativedisk_module_LDADD = -nativedisk_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -nativedisk_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -nativedisk_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -nativedisk_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -nativedisk_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_nativedisk_module_SOURCES) -CLEANFILES += $(nodist_nativedisk_module_SOURCES) -MOD_FILES += nativedisk.mod -MARKER_FILES += nativedisk.marker -CLEANFILES += nativedisk.marker - -nativedisk.marker: $(nativedisk_module_SOURCES) $(nodist_nativedisk_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(nativedisk_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_emu -if COND_GRUB_EMU_PCI -platform_PROGRAMS += emupci.module -MODULE_FILES += emupci.module$(EXEEXT) -emupci_module_SOURCES = bus/emu/pci.c commands/lspci.c ## platform sources -nodist_emupci_module_SOURCES = ## platform nodist sources -emupci_module_LDADD = -emupci_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -emupci_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -emupci_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -emupci_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -emupci_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_emupci_module_SOURCES) -CLEANFILES += $(nodist_emupci_module_SOURCES) -MOD_FILES += emupci.mod -MARKER_FILES += emupci.marker -CLEANFILES += emupci.marker - -emupci.marker: $(emupci_module_SOURCES) $(nodist_emupci_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(emupci_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif COND_GRUB_EMU_PCI -endif - -if COND_mips_arc -platform_PROGRAMS += lsdev.module -MODULE_FILES += lsdev.module$(EXEEXT) -lsdev_module_SOURCES = commands/arc/lsdev.c ## platform sources -nodist_lsdev_module_SOURCES = ## platform nodist sources -lsdev_module_LDADD = -lsdev_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -lsdev_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -lsdev_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -lsdev_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -lsdev_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_lsdev_module_SOURCES) -CLEANFILES += $(nodist_lsdev_module_SOURCES) -MOD_FILES += lsdev.mod -MARKER_FILES += lsdev.marker -CLEANFILES += lsdev.marker - -lsdev.marker: $(lsdev_module_SOURCES) $(nodist_lsdev_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lsdev_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_xen -platform_PROGRAMS += lsxen.module -MODULE_FILES += lsxen.module$(EXEEXT) -lsxen_module_SOURCES = commands/xen/lsxen.c ## platform sources -nodist_lsxen_module_SOURCES = ## platform nodist sources -lsxen_module_LDADD = -lsxen_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -lsxen_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -lsxen_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -lsxen_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -lsxen_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_lsxen_module_SOURCES) -CLEANFILES += $(nodist_lsxen_module_SOURCES) -MOD_FILES += lsxen.mod -MARKER_FILES += lsxen.marker -CLEANFILES += lsxen.marker - -lsxen.marker: $(lsxen_module_SOURCES) $(nodist_lsxen_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lsxen_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_x86_64_xen -platform_PROGRAMS += lsxen.module -MODULE_FILES += lsxen.module$(EXEEXT) -lsxen_module_SOURCES = commands/xen/lsxen.c ## platform sources -nodist_lsxen_module_SOURCES = ## platform nodist sources -lsxen_module_LDADD = -lsxen_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -lsxen_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -lsxen_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -lsxen_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -lsxen_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_lsxen_module_SOURCES) -CLEANFILES += $(nodist_lsxen_module_SOURCES) -MOD_FILES += lsxen.mod -MARKER_FILES += lsxen.marker -CLEANFILES += lsxen.marker - -lsxen.marker: $(lsxen_module_SOURCES) $(nodist_lsxen_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lsxen_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_pc -platform_PROGRAMS += cmostest.module -MODULE_FILES += cmostest.module$(EXEEXT) -cmostest_module_SOURCES = commands/i386/cmostest.c ## platform sources -nodist_cmostest_module_SOURCES = ## platform nodist sources -cmostest_module_LDADD = -cmostest_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -cmostest_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -cmostest_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -cmostest_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -cmostest_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_cmostest_module_SOURCES) -CLEANFILES += $(nodist_cmostest_module_SOURCES) -MOD_FILES += cmostest.mod -MARKER_FILES += cmostest.marker -CLEANFILES += cmostest.marker - -cmostest.marker: $(cmostest_module_SOURCES) $(nodist_cmostest_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cmostest_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_qemu -platform_PROGRAMS += cmostest.module -MODULE_FILES += cmostest.module$(EXEEXT) -cmostest_module_SOURCES = commands/i386/cmostest.c ## platform sources -nodist_cmostest_module_SOURCES = ## platform nodist sources -cmostest_module_LDADD = -cmostest_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -cmostest_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -cmostest_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -cmostest_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -cmostest_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_cmostest_module_SOURCES) -CLEANFILES += $(nodist_cmostest_module_SOURCES) -MOD_FILES += cmostest.mod -MARKER_FILES += cmostest.marker -CLEANFILES += cmostest.marker - -cmostest.marker: $(cmostest_module_SOURCES) $(nodist_cmostest_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cmostest_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_coreboot -platform_PROGRAMS += cmostest.module -MODULE_FILES += cmostest.module$(EXEEXT) -cmostest_module_SOURCES = commands/i386/cmostest.c ## platform sources -nodist_cmostest_module_SOURCES = ## platform nodist sources -cmostest_module_LDADD = -cmostest_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -cmostest_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -cmostest_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -cmostest_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -cmostest_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_cmostest_module_SOURCES) -CLEANFILES += $(nodist_cmostest_module_SOURCES) -MOD_FILES += cmostest.mod -MARKER_FILES += cmostest.marker -CLEANFILES += cmostest.marker - -cmostest.marker: $(cmostest_module_SOURCES) $(nodist_cmostest_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cmostest_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_multiboot -platform_PROGRAMS += cmostest.module -MODULE_FILES += cmostest.module$(EXEEXT) -cmostest_module_SOURCES = commands/i386/cmostest.c ## platform sources -nodist_cmostest_module_SOURCES = ## platform nodist sources -cmostest_module_LDADD = -cmostest_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -cmostest_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -cmostest_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -cmostest_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -cmostest_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_cmostest_module_SOURCES) -CLEANFILES += $(nodist_cmostest_module_SOURCES) -MOD_FILES += cmostest.mod -MARKER_FILES += cmostest.marker -CLEANFILES += cmostest.marker - -cmostest.marker: $(cmostest_module_SOURCES) $(nodist_cmostest_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cmostest_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_ieee1275 -platform_PROGRAMS += cmostest.module -MODULE_FILES += cmostest.module$(EXEEXT) -cmostest_module_SOURCES = commands/i386/cmostest.c ## platform sources -nodist_cmostest_module_SOURCES = ## platform nodist sources -cmostest_module_LDADD = -cmostest_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -cmostest_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -cmostest_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -cmostest_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -cmostest_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_cmostest_module_SOURCES) -CLEANFILES += $(nodist_cmostest_module_SOURCES) -MOD_FILES += cmostest.mod -MARKER_FILES += cmostest.marker -CLEANFILES += cmostest.marker - -cmostest.marker: $(cmostest_module_SOURCES) $(nodist_cmostest_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cmostest_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_mips_loongson -platform_PROGRAMS += cmostest.module -MODULE_FILES += cmostest.module$(EXEEXT) -cmostest_module_SOURCES = commands/i386/cmostest.c ## platform sources -nodist_cmostest_module_SOURCES = ## platform nodist sources -cmostest_module_LDADD = -cmostest_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -cmostest_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -cmostest_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -cmostest_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -cmostest_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_cmostest_module_SOURCES) -CLEANFILES += $(nodist_cmostest_module_SOURCES) -MOD_FILES += cmostest.mod -MARKER_FILES += cmostest.marker -CLEANFILES += cmostest.marker - -cmostest.marker: $(cmostest_module_SOURCES) $(nodist_cmostest_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cmostest_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_sparc64_ieee1275 -platform_PROGRAMS += cmostest.module -MODULE_FILES += cmostest.module$(EXEEXT) -cmostest_module_SOURCES = commands/i386/cmostest.c ## platform sources -nodist_cmostest_module_SOURCES = ## platform nodist sources -cmostest_module_LDADD = -cmostest_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -cmostest_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -cmostest_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -cmostest_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -cmostest_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_cmostest_module_SOURCES) -CLEANFILES += $(nodist_cmostest_module_SOURCES) -MOD_FILES += cmostest.mod -MARKER_FILES += cmostest.marker -CLEANFILES += cmostest.marker - -cmostest.marker: $(cmostest_module_SOURCES) $(nodist_cmostest_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cmostest_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_powerpc_ieee1275 -platform_PROGRAMS += cmostest.module -MODULE_FILES += cmostest.module$(EXEEXT) -cmostest_module_SOURCES = commands/i386/cmostest.c ## platform sources -nodist_cmostest_module_SOURCES = ## platform nodist sources -cmostest_module_LDADD = -cmostest_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -cmostest_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -cmostest_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -cmostest_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -cmostest_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_cmostest_module_SOURCES) -CLEANFILES += $(nodist_cmostest_module_SOURCES) -MOD_FILES += cmostest.mod -MARKER_FILES += cmostest.marker -CLEANFILES += cmostest.marker - -cmostest.marker: $(cmostest_module_SOURCES) $(nodist_cmostest_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cmostest_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_mips_qemu_mips -platform_PROGRAMS += cmostest.module -MODULE_FILES += cmostest.module$(EXEEXT) -cmostest_module_SOURCES = commands/i386/cmostest.c ## platform sources -nodist_cmostest_module_SOURCES = ## platform nodist sources -cmostest_module_LDADD = -cmostest_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -cmostest_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -cmostest_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -cmostest_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -cmostest_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_cmostest_module_SOURCES) -CLEANFILES += $(nodist_cmostest_module_SOURCES) -MOD_FILES += cmostest.mod -MARKER_FILES += cmostest.marker -CLEANFILES += cmostest.marker - -cmostest.marker: $(cmostest_module_SOURCES) $(nodist_cmostest_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cmostest_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_pc -platform_PROGRAMS += cmosdump.module -MODULE_FILES += cmosdump.module$(EXEEXT) -cmosdump_module_SOURCES = commands/i386/cmosdump.c ## platform sources -nodist_cmosdump_module_SOURCES = ## platform nodist sources -cmosdump_module_LDADD = -cmosdump_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -cmosdump_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -cmosdump_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -cmosdump_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -cmosdump_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_cmosdump_module_SOURCES) -CLEANFILES += $(nodist_cmosdump_module_SOURCES) -MOD_FILES += cmosdump.mod -MARKER_FILES += cmosdump.marker -CLEANFILES += cmosdump.marker - -cmosdump.marker: $(cmosdump_module_SOURCES) $(nodist_cmosdump_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cmosdump_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_qemu -platform_PROGRAMS += cmosdump.module -MODULE_FILES += cmosdump.module$(EXEEXT) -cmosdump_module_SOURCES = commands/i386/cmosdump.c ## platform sources -nodist_cmosdump_module_SOURCES = ## platform nodist sources -cmosdump_module_LDADD = -cmosdump_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -cmosdump_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -cmosdump_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -cmosdump_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -cmosdump_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_cmosdump_module_SOURCES) -CLEANFILES += $(nodist_cmosdump_module_SOURCES) -MOD_FILES += cmosdump.mod -MARKER_FILES += cmosdump.marker -CLEANFILES += cmosdump.marker - -cmosdump.marker: $(cmosdump_module_SOURCES) $(nodist_cmosdump_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cmosdump_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_coreboot -platform_PROGRAMS += cmosdump.module -MODULE_FILES += cmosdump.module$(EXEEXT) -cmosdump_module_SOURCES = commands/i386/cmosdump.c ## platform sources -nodist_cmosdump_module_SOURCES = ## platform nodist sources -cmosdump_module_LDADD = -cmosdump_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -cmosdump_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -cmosdump_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -cmosdump_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -cmosdump_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_cmosdump_module_SOURCES) -CLEANFILES += $(nodist_cmosdump_module_SOURCES) -MOD_FILES += cmosdump.mod -MARKER_FILES += cmosdump.marker -CLEANFILES += cmosdump.marker - -cmosdump.marker: $(cmosdump_module_SOURCES) $(nodist_cmosdump_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cmosdump_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_multiboot -platform_PROGRAMS += cmosdump.module -MODULE_FILES += cmosdump.module$(EXEEXT) -cmosdump_module_SOURCES = commands/i386/cmosdump.c ## platform sources -nodist_cmosdump_module_SOURCES = ## platform nodist sources -cmosdump_module_LDADD = -cmosdump_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -cmosdump_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -cmosdump_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -cmosdump_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -cmosdump_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_cmosdump_module_SOURCES) -CLEANFILES += $(nodist_cmosdump_module_SOURCES) -MOD_FILES += cmosdump.mod -MARKER_FILES += cmosdump.marker -CLEANFILES += cmosdump.marker - -cmosdump.marker: $(cmosdump_module_SOURCES) $(nodist_cmosdump_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cmosdump_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_ieee1275 -platform_PROGRAMS += cmosdump.module -MODULE_FILES += cmosdump.module$(EXEEXT) -cmosdump_module_SOURCES = commands/i386/cmosdump.c ## platform sources -nodist_cmosdump_module_SOURCES = ## platform nodist sources -cmosdump_module_LDADD = -cmosdump_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -cmosdump_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -cmosdump_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -cmosdump_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -cmosdump_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_cmosdump_module_SOURCES) -CLEANFILES += $(nodist_cmosdump_module_SOURCES) -MOD_FILES += cmosdump.mod -MARKER_FILES += cmosdump.marker -CLEANFILES += cmosdump.marker - -cmosdump.marker: $(cmosdump_module_SOURCES) $(nodist_cmosdump_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cmosdump_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_mips_loongson -platform_PROGRAMS += cmosdump.module -MODULE_FILES += cmosdump.module$(EXEEXT) -cmosdump_module_SOURCES = commands/i386/cmosdump.c ## platform sources -nodist_cmosdump_module_SOURCES = ## platform nodist sources -cmosdump_module_LDADD = -cmosdump_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -cmosdump_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -cmosdump_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -cmosdump_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -cmosdump_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_cmosdump_module_SOURCES) -CLEANFILES += $(nodist_cmosdump_module_SOURCES) -MOD_FILES += cmosdump.mod -MARKER_FILES += cmosdump.marker -CLEANFILES += cmosdump.marker - -cmosdump.marker: $(cmosdump_module_SOURCES) $(nodist_cmosdump_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cmosdump_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_sparc64_ieee1275 -platform_PROGRAMS += cmosdump.module -MODULE_FILES += cmosdump.module$(EXEEXT) -cmosdump_module_SOURCES = commands/i386/cmosdump.c ## platform sources -nodist_cmosdump_module_SOURCES = ## platform nodist sources -cmosdump_module_LDADD = -cmosdump_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -cmosdump_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -cmosdump_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -cmosdump_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -cmosdump_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_cmosdump_module_SOURCES) -CLEANFILES += $(nodist_cmosdump_module_SOURCES) -MOD_FILES += cmosdump.mod -MARKER_FILES += cmosdump.marker -CLEANFILES += cmosdump.marker - -cmosdump.marker: $(cmosdump_module_SOURCES) $(nodist_cmosdump_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cmosdump_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_powerpc_ieee1275 -platform_PROGRAMS += cmosdump.module -MODULE_FILES += cmosdump.module$(EXEEXT) -cmosdump_module_SOURCES = commands/i386/cmosdump.c ## platform sources -nodist_cmosdump_module_SOURCES = ## platform nodist sources -cmosdump_module_LDADD = -cmosdump_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -cmosdump_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -cmosdump_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -cmosdump_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -cmosdump_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_cmosdump_module_SOURCES) -CLEANFILES += $(nodist_cmosdump_module_SOURCES) -MOD_FILES += cmosdump.mod -MARKER_FILES += cmosdump.marker -CLEANFILES += cmosdump.marker - -cmosdump.marker: $(cmosdump_module_SOURCES) $(nodist_cmosdump_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cmosdump_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_mips_qemu_mips -platform_PROGRAMS += cmosdump.module -MODULE_FILES += cmosdump.module$(EXEEXT) -cmosdump_module_SOURCES = commands/i386/cmosdump.c ## platform sources -nodist_cmosdump_module_SOURCES = ## platform nodist sources -cmosdump_module_LDADD = -cmosdump_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -cmosdump_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -cmosdump_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -cmosdump_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -cmosdump_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_cmosdump_module_SOURCES) -CLEANFILES += $(nodist_cmosdump_module_SOURCES) -MOD_FILES += cmosdump.mod -MARKER_FILES += cmosdump.marker -CLEANFILES += cmosdump.marker - -cmosdump.marker: $(cmosdump_module_SOURCES) $(nodist_cmosdump_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cmosdump_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_pc -platform_PROGRAMS += iorw.module -MODULE_FILES += iorw.module$(EXEEXT) -iorw_module_SOURCES = commands/iorw.c ## platform sources -nodist_iorw_module_SOURCES = ## platform nodist sources -iorw_module_LDADD = -iorw_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -iorw_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -iorw_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -iorw_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -iorw_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_iorw_module_SOURCES) -CLEANFILES += $(nodist_iorw_module_SOURCES) -MOD_FILES += iorw.mod -MARKER_FILES += iorw.marker -CLEANFILES += iorw.marker - -iorw.marker: $(iorw_module_SOURCES) $(nodist_iorw_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(iorw_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_efi -platform_PROGRAMS += iorw.module -MODULE_FILES += iorw.module$(EXEEXT) -iorw_module_SOURCES = commands/iorw.c ## platform sources -nodist_iorw_module_SOURCES = ## platform nodist sources -iorw_module_LDADD = -iorw_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -iorw_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -iorw_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -iorw_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -iorw_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_iorw_module_SOURCES) -CLEANFILES += $(nodist_iorw_module_SOURCES) -MOD_FILES += iorw.mod -MARKER_FILES += iorw.marker -CLEANFILES += iorw.marker - -iorw.marker: $(iorw_module_SOURCES) $(nodist_iorw_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(iorw_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_qemu -platform_PROGRAMS += iorw.module -MODULE_FILES += iorw.module$(EXEEXT) -iorw_module_SOURCES = commands/iorw.c ## platform sources -nodist_iorw_module_SOURCES = ## platform nodist sources -iorw_module_LDADD = -iorw_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -iorw_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -iorw_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -iorw_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -iorw_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_iorw_module_SOURCES) -CLEANFILES += $(nodist_iorw_module_SOURCES) -MOD_FILES += iorw.mod -MARKER_FILES += iorw.marker -CLEANFILES += iorw.marker - -iorw.marker: $(iorw_module_SOURCES) $(nodist_iorw_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(iorw_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_coreboot -platform_PROGRAMS += iorw.module -MODULE_FILES += iorw.module$(EXEEXT) -iorw_module_SOURCES = commands/iorw.c ## platform sources -nodist_iorw_module_SOURCES = ## platform nodist sources -iorw_module_LDADD = -iorw_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -iorw_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -iorw_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -iorw_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -iorw_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_iorw_module_SOURCES) -CLEANFILES += $(nodist_iorw_module_SOURCES) -MOD_FILES += iorw.mod -MARKER_FILES += iorw.marker -CLEANFILES += iorw.marker - -iorw.marker: $(iorw_module_SOURCES) $(nodist_iorw_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(iorw_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_multiboot -platform_PROGRAMS += iorw.module -MODULE_FILES += iorw.module$(EXEEXT) -iorw_module_SOURCES = commands/iorw.c ## platform sources -nodist_iorw_module_SOURCES = ## platform nodist sources -iorw_module_LDADD = -iorw_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -iorw_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -iorw_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -iorw_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -iorw_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_iorw_module_SOURCES) -CLEANFILES += $(nodist_iorw_module_SOURCES) -MOD_FILES += iorw.mod -MARKER_FILES += iorw.marker -CLEANFILES += iorw.marker - -iorw.marker: $(iorw_module_SOURCES) $(nodist_iorw_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(iorw_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_ieee1275 -platform_PROGRAMS += iorw.module -MODULE_FILES += iorw.module$(EXEEXT) -iorw_module_SOURCES = commands/iorw.c ## platform sources -nodist_iorw_module_SOURCES = ## platform nodist sources -iorw_module_LDADD = -iorw_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -iorw_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -iorw_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -iorw_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -iorw_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_iorw_module_SOURCES) -CLEANFILES += $(nodist_iorw_module_SOURCES) -MOD_FILES += iorw.mod -MARKER_FILES += iorw.marker -CLEANFILES += iorw.marker - -iorw.marker: $(iorw_module_SOURCES) $(nodist_iorw_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(iorw_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_x86_64_efi -platform_PROGRAMS += iorw.module -MODULE_FILES += iorw.module$(EXEEXT) -iorw_module_SOURCES = commands/iorw.c ## platform sources -nodist_iorw_module_SOURCES = ## platform nodist sources -iorw_module_LDADD = -iorw_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -iorw_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -iorw_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -iorw_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -iorw_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_iorw_module_SOURCES) -CLEANFILES += $(nodist_iorw_module_SOURCES) -MOD_FILES += iorw.mod -MARKER_FILES += iorw.marker -CLEANFILES += iorw.marker - -iorw.marker: $(iorw_module_SOURCES) $(nodist_iorw_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(iorw_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_pc -platform_PROGRAMS += cbtable.module -MODULE_FILES += cbtable.module$(EXEEXT) -cbtable_module_SOURCES = kern/i386/coreboot/cbtable.c kern/coreboot/cbtable.c ## platform sources -nodist_cbtable_module_SOURCES = ## platform nodist sources -cbtable_module_LDADD = -cbtable_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -cbtable_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -cbtable_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -cbtable_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -cbtable_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_cbtable_module_SOURCES) -CLEANFILES += $(nodist_cbtable_module_SOURCES) -MOD_FILES += cbtable.mod -MARKER_FILES += cbtable.marker -CLEANFILES += cbtable.marker - -cbtable.marker: $(cbtable_module_SOURCES) $(nodist_cbtable_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cbtable_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_efi -platform_PROGRAMS += cbtable.module -MODULE_FILES += cbtable.module$(EXEEXT) -cbtable_module_SOURCES = kern/i386/coreboot/cbtable.c kern/coreboot/cbtable.c ## platform sources -nodist_cbtable_module_SOURCES = ## platform nodist sources -cbtable_module_LDADD = -cbtable_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -cbtable_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -cbtable_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -cbtable_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -cbtable_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_cbtable_module_SOURCES) -CLEANFILES += $(nodist_cbtable_module_SOURCES) -MOD_FILES += cbtable.mod -MARKER_FILES += cbtable.marker -CLEANFILES += cbtable.marker - -cbtable.marker: $(cbtable_module_SOURCES) $(nodist_cbtable_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cbtable_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_qemu -platform_PROGRAMS += cbtable.module -MODULE_FILES += cbtable.module$(EXEEXT) -cbtable_module_SOURCES = kern/i386/coreboot/cbtable.c kern/coreboot/cbtable.c ## platform sources -nodist_cbtable_module_SOURCES = ## platform nodist sources -cbtable_module_LDADD = -cbtable_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -cbtable_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -cbtable_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -cbtable_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -cbtable_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_cbtable_module_SOURCES) -CLEANFILES += $(nodist_cbtable_module_SOURCES) -MOD_FILES += cbtable.mod -MARKER_FILES += cbtable.marker -CLEANFILES += cbtable.marker - -cbtable.marker: $(cbtable_module_SOURCES) $(nodist_cbtable_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cbtable_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_multiboot -platform_PROGRAMS += cbtable.module -MODULE_FILES += cbtable.module$(EXEEXT) -cbtable_module_SOURCES = kern/i386/coreboot/cbtable.c kern/coreboot/cbtable.c ## platform sources -nodist_cbtable_module_SOURCES = ## platform nodist sources -cbtable_module_LDADD = -cbtable_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -cbtable_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -cbtable_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -cbtable_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -cbtable_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_cbtable_module_SOURCES) -CLEANFILES += $(nodist_cbtable_module_SOURCES) -MOD_FILES += cbtable.mod -MARKER_FILES += cbtable.marker -CLEANFILES += cbtable.marker - -cbtable.marker: $(cbtable_module_SOURCES) $(nodist_cbtable_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cbtable_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_ieee1275 -platform_PROGRAMS += cbtable.module -MODULE_FILES += cbtable.module$(EXEEXT) -cbtable_module_SOURCES = kern/i386/coreboot/cbtable.c kern/coreboot/cbtable.c ## platform sources -nodist_cbtable_module_SOURCES = ## platform nodist sources -cbtable_module_LDADD = -cbtable_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -cbtable_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -cbtable_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -cbtable_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -cbtable_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_cbtable_module_SOURCES) -CLEANFILES += $(nodist_cbtable_module_SOURCES) -MOD_FILES += cbtable.mod -MARKER_FILES += cbtable.marker -CLEANFILES += cbtable.marker - -cbtable.marker: $(cbtable_module_SOURCES) $(nodist_cbtable_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cbtable_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_x86_64_efi -platform_PROGRAMS += cbtable.module -MODULE_FILES += cbtable.module$(EXEEXT) -cbtable_module_SOURCES = kern/i386/coreboot/cbtable.c kern/coreboot/cbtable.c ## platform sources -nodist_cbtable_module_SOURCES = ## platform nodist sources -cbtable_module_LDADD = -cbtable_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -cbtable_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -cbtable_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -cbtable_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -cbtable_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_cbtable_module_SOURCES) -CLEANFILES += $(nodist_cbtable_module_SOURCES) -MOD_FILES += cbtable.mod -MARKER_FILES += cbtable.marker -CLEANFILES += cbtable.marker - -cbtable.marker: $(cbtable_module_SOURCES) $(nodist_cbtable_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cbtable_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_pc -platform_PROGRAMS += cbtime.module -MODULE_FILES += cbtime.module$(EXEEXT) -cbtime_module_SOURCES = commands/i386/coreboot/cb_timestamps.c ## platform sources -nodist_cbtime_module_SOURCES = ## platform nodist sources -cbtime_module_LDADD = -cbtime_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -cbtime_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -cbtime_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -cbtime_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -cbtime_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_cbtime_module_SOURCES) -CLEANFILES += $(nodist_cbtime_module_SOURCES) -MOD_FILES += cbtime.mod -MARKER_FILES += cbtime.marker -CLEANFILES += cbtime.marker - -cbtime.marker: $(cbtime_module_SOURCES) $(nodist_cbtime_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cbtime_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_efi -platform_PROGRAMS += cbtime.module -MODULE_FILES += cbtime.module$(EXEEXT) -cbtime_module_SOURCES = commands/i386/coreboot/cb_timestamps.c ## platform sources -nodist_cbtime_module_SOURCES = ## platform nodist sources -cbtime_module_LDADD = -cbtime_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -cbtime_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -cbtime_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -cbtime_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -cbtime_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_cbtime_module_SOURCES) -CLEANFILES += $(nodist_cbtime_module_SOURCES) -MOD_FILES += cbtime.mod -MARKER_FILES += cbtime.marker -CLEANFILES += cbtime.marker - -cbtime.marker: $(cbtime_module_SOURCES) $(nodist_cbtime_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cbtime_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_qemu -platform_PROGRAMS += cbtime.module -MODULE_FILES += cbtime.module$(EXEEXT) -cbtime_module_SOURCES = commands/i386/coreboot/cb_timestamps.c ## platform sources -nodist_cbtime_module_SOURCES = ## platform nodist sources -cbtime_module_LDADD = -cbtime_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -cbtime_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -cbtime_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -cbtime_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -cbtime_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_cbtime_module_SOURCES) -CLEANFILES += $(nodist_cbtime_module_SOURCES) -MOD_FILES += cbtime.mod -MARKER_FILES += cbtime.marker -CLEANFILES += cbtime.marker - -cbtime.marker: $(cbtime_module_SOURCES) $(nodist_cbtime_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cbtime_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_coreboot -platform_PROGRAMS += cbtime.module -MODULE_FILES += cbtime.module$(EXEEXT) -cbtime_module_SOURCES = commands/i386/coreboot/cb_timestamps.c ## platform sources -nodist_cbtime_module_SOURCES = ## platform nodist sources -cbtime_module_LDADD = -cbtime_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -cbtime_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -cbtime_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -cbtime_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -cbtime_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_cbtime_module_SOURCES) -CLEANFILES += $(nodist_cbtime_module_SOURCES) -MOD_FILES += cbtime.mod -MARKER_FILES += cbtime.marker -CLEANFILES += cbtime.marker - -cbtime.marker: $(cbtime_module_SOURCES) $(nodist_cbtime_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cbtime_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_multiboot -platform_PROGRAMS += cbtime.module -MODULE_FILES += cbtime.module$(EXEEXT) -cbtime_module_SOURCES = commands/i386/coreboot/cb_timestamps.c ## platform sources -nodist_cbtime_module_SOURCES = ## platform nodist sources -cbtime_module_LDADD = -cbtime_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -cbtime_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -cbtime_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -cbtime_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -cbtime_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_cbtime_module_SOURCES) -CLEANFILES += $(nodist_cbtime_module_SOURCES) -MOD_FILES += cbtime.mod -MARKER_FILES += cbtime.marker -CLEANFILES += cbtime.marker - -cbtime.marker: $(cbtime_module_SOURCES) $(nodist_cbtime_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cbtime_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_ieee1275 -platform_PROGRAMS += cbtime.module -MODULE_FILES += cbtime.module$(EXEEXT) -cbtime_module_SOURCES = commands/i386/coreboot/cb_timestamps.c ## platform sources -nodist_cbtime_module_SOURCES = ## platform nodist sources -cbtime_module_LDADD = -cbtime_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -cbtime_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -cbtime_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -cbtime_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -cbtime_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_cbtime_module_SOURCES) -CLEANFILES += $(nodist_cbtime_module_SOURCES) -MOD_FILES += cbtime.mod -MARKER_FILES += cbtime.marker -CLEANFILES += cbtime.marker - -cbtime.marker: $(cbtime_module_SOURCES) $(nodist_cbtime_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cbtime_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_x86_64_efi -platform_PROGRAMS += cbtime.module -MODULE_FILES += cbtime.module$(EXEEXT) -cbtime_module_SOURCES = commands/i386/coreboot/cb_timestamps.c ## platform sources -nodist_cbtime_module_SOURCES = ## platform nodist sources -cbtime_module_LDADD = -cbtime_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -cbtime_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -cbtime_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -cbtime_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -cbtime_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_cbtime_module_SOURCES) -CLEANFILES += $(nodist_cbtime_module_SOURCES) -MOD_FILES += cbtime.mod -MARKER_FILES += cbtime.marker -CLEANFILES += cbtime.marker - -cbtime.marker: $(cbtime_module_SOURCES) $(nodist_cbtime_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cbtime_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_pc -platform_PROGRAMS += cbls.module -MODULE_FILES += cbls.module$(EXEEXT) -cbls_module_SOURCES = commands/i386/coreboot/cbls.c ## platform sources -nodist_cbls_module_SOURCES = ## platform nodist sources -cbls_module_LDADD = -cbls_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -cbls_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -cbls_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -cbls_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -cbls_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_cbls_module_SOURCES) -CLEANFILES += $(nodist_cbls_module_SOURCES) -MOD_FILES += cbls.mod -MARKER_FILES += cbls.marker -CLEANFILES += cbls.marker - -cbls.marker: $(cbls_module_SOURCES) $(nodist_cbls_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cbls_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_efi -platform_PROGRAMS += cbls.module -MODULE_FILES += cbls.module$(EXEEXT) -cbls_module_SOURCES = commands/i386/coreboot/cbls.c ## platform sources -nodist_cbls_module_SOURCES = ## platform nodist sources -cbls_module_LDADD = -cbls_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -cbls_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -cbls_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -cbls_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -cbls_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_cbls_module_SOURCES) -CLEANFILES += $(nodist_cbls_module_SOURCES) -MOD_FILES += cbls.mod -MARKER_FILES += cbls.marker -CLEANFILES += cbls.marker - -cbls.marker: $(cbls_module_SOURCES) $(nodist_cbls_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cbls_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_qemu -platform_PROGRAMS += cbls.module -MODULE_FILES += cbls.module$(EXEEXT) -cbls_module_SOURCES = commands/i386/coreboot/cbls.c ## platform sources -nodist_cbls_module_SOURCES = ## platform nodist sources -cbls_module_LDADD = -cbls_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -cbls_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -cbls_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -cbls_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -cbls_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_cbls_module_SOURCES) -CLEANFILES += $(nodist_cbls_module_SOURCES) -MOD_FILES += cbls.mod -MARKER_FILES += cbls.marker -CLEANFILES += cbls.marker - -cbls.marker: $(cbls_module_SOURCES) $(nodist_cbls_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cbls_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_coreboot -platform_PROGRAMS += cbls.module -MODULE_FILES += cbls.module$(EXEEXT) -cbls_module_SOURCES = commands/i386/coreboot/cbls.c ## platform sources -nodist_cbls_module_SOURCES = ## platform nodist sources -cbls_module_LDADD = -cbls_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -cbls_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -cbls_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -cbls_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -cbls_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_cbls_module_SOURCES) -CLEANFILES += $(nodist_cbls_module_SOURCES) -MOD_FILES += cbls.mod -MARKER_FILES += cbls.marker -CLEANFILES += cbls.marker - -cbls.marker: $(cbls_module_SOURCES) $(nodist_cbls_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cbls_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_multiboot -platform_PROGRAMS += cbls.module -MODULE_FILES += cbls.module$(EXEEXT) -cbls_module_SOURCES = commands/i386/coreboot/cbls.c ## platform sources -nodist_cbls_module_SOURCES = ## platform nodist sources -cbls_module_LDADD = -cbls_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -cbls_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -cbls_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -cbls_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -cbls_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_cbls_module_SOURCES) -CLEANFILES += $(nodist_cbls_module_SOURCES) -MOD_FILES += cbls.mod -MARKER_FILES += cbls.marker -CLEANFILES += cbls.marker - -cbls.marker: $(cbls_module_SOURCES) $(nodist_cbls_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cbls_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_ieee1275 -platform_PROGRAMS += cbls.module -MODULE_FILES += cbls.module$(EXEEXT) -cbls_module_SOURCES = commands/i386/coreboot/cbls.c ## platform sources -nodist_cbls_module_SOURCES = ## platform nodist sources -cbls_module_LDADD = -cbls_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -cbls_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -cbls_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -cbls_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -cbls_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_cbls_module_SOURCES) -CLEANFILES += $(nodist_cbls_module_SOURCES) -MOD_FILES += cbls.mod -MARKER_FILES += cbls.marker -CLEANFILES += cbls.marker - -cbls.marker: $(cbls_module_SOURCES) $(nodist_cbls_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cbls_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_x86_64_efi -platform_PROGRAMS += cbls.module -MODULE_FILES += cbls.module$(EXEEXT) -cbls_module_SOURCES = commands/i386/coreboot/cbls.c ## platform sources -nodist_cbls_module_SOURCES = ## platform nodist sources -cbls_module_LDADD = -cbls_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -cbls_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -cbls_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -cbls_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -cbls_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_cbls_module_SOURCES) -CLEANFILES += $(nodist_cbls_module_SOURCES) -MOD_FILES += cbls.mod -MARKER_FILES += cbls.marker -CLEANFILES += cbls.marker - -cbls.marker: $(cbls_module_SOURCES) $(nodist_cbls_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cbls_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_pc -platform_PROGRAMS += cbmemc.module -MODULE_FILES += cbmemc.module$(EXEEXT) -cbmemc_module_SOURCES = term/i386/coreboot/cbmemc.c ## platform sources -nodist_cbmemc_module_SOURCES = ## platform nodist sources -cbmemc_module_LDADD = -cbmemc_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -cbmemc_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -cbmemc_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -cbmemc_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -cbmemc_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_cbmemc_module_SOURCES) -CLEANFILES += $(nodist_cbmemc_module_SOURCES) -MOD_FILES += cbmemc.mod -MARKER_FILES += cbmemc.marker -CLEANFILES += cbmemc.marker - -cbmemc.marker: $(cbmemc_module_SOURCES) $(nodist_cbmemc_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cbmemc_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_efi -platform_PROGRAMS += cbmemc.module -MODULE_FILES += cbmemc.module$(EXEEXT) -cbmemc_module_SOURCES = term/i386/coreboot/cbmemc.c ## platform sources -nodist_cbmemc_module_SOURCES = ## platform nodist sources -cbmemc_module_LDADD = -cbmemc_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -cbmemc_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -cbmemc_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -cbmemc_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -cbmemc_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_cbmemc_module_SOURCES) -CLEANFILES += $(nodist_cbmemc_module_SOURCES) -MOD_FILES += cbmemc.mod -MARKER_FILES += cbmemc.marker -CLEANFILES += cbmemc.marker - -cbmemc.marker: $(cbmemc_module_SOURCES) $(nodist_cbmemc_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cbmemc_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_qemu -platform_PROGRAMS += cbmemc.module -MODULE_FILES += cbmemc.module$(EXEEXT) -cbmemc_module_SOURCES = term/i386/coreboot/cbmemc.c ## platform sources -nodist_cbmemc_module_SOURCES = ## platform nodist sources -cbmemc_module_LDADD = -cbmemc_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -cbmemc_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -cbmemc_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -cbmemc_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -cbmemc_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_cbmemc_module_SOURCES) -CLEANFILES += $(nodist_cbmemc_module_SOURCES) -MOD_FILES += cbmemc.mod -MARKER_FILES += cbmemc.marker -CLEANFILES += cbmemc.marker - -cbmemc.marker: $(cbmemc_module_SOURCES) $(nodist_cbmemc_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cbmemc_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_coreboot -platform_PROGRAMS += cbmemc.module -MODULE_FILES += cbmemc.module$(EXEEXT) -cbmemc_module_SOURCES = term/i386/coreboot/cbmemc.c ## platform sources -nodist_cbmemc_module_SOURCES = ## platform nodist sources -cbmemc_module_LDADD = -cbmemc_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -cbmemc_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -cbmemc_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -cbmemc_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -cbmemc_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_cbmemc_module_SOURCES) -CLEANFILES += $(nodist_cbmemc_module_SOURCES) -MOD_FILES += cbmemc.mod -MARKER_FILES += cbmemc.marker -CLEANFILES += cbmemc.marker - -cbmemc.marker: $(cbmemc_module_SOURCES) $(nodist_cbmemc_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cbmemc_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_multiboot -platform_PROGRAMS += cbmemc.module -MODULE_FILES += cbmemc.module$(EXEEXT) -cbmemc_module_SOURCES = term/i386/coreboot/cbmemc.c ## platform sources -nodist_cbmemc_module_SOURCES = ## platform nodist sources -cbmemc_module_LDADD = -cbmemc_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -cbmemc_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -cbmemc_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -cbmemc_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -cbmemc_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_cbmemc_module_SOURCES) -CLEANFILES += $(nodist_cbmemc_module_SOURCES) -MOD_FILES += cbmemc.mod -MARKER_FILES += cbmemc.marker -CLEANFILES += cbmemc.marker - -cbmemc.marker: $(cbmemc_module_SOURCES) $(nodist_cbmemc_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cbmemc_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_ieee1275 -platform_PROGRAMS += cbmemc.module -MODULE_FILES += cbmemc.module$(EXEEXT) -cbmemc_module_SOURCES = term/i386/coreboot/cbmemc.c ## platform sources -nodist_cbmemc_module_SOURCES = ## platform nodist sources -cbmemc_module_LDADD = -cbmemc_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -cbmemc_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -cbmemc_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -cbmemc_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -cbmemc_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_cbmemc_module_SOURCES) -CLEANFILES += $(nodist_cbmemc_module_SOURCES) -MOD_FILES += cbmemc.mod -MARKER_FILES += cbmemc.marker -CLEANFILES += cbmemc.marker - -cbmemc.marker: $(cbmemc_module_SOURCES) $(nodist_cbmemc_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cbmemc_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_x86_64_efi -platform_PROGRAMS += cbmemc.module -MODULE_FILES += cbmemc.module$(EXEEXT) -cbmemc_module_SOURCES = term/i386/coreboot/cbmemc.c ## platform sources -nodist_cbmemc_module_SOURCES = ## platform nodist sources -cbmemc_module_LDADD = -cbmemc_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -cbmemc_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -cbmemc_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -cbmemc_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -cbmemc_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_cbmemc_module_SOURCES) -CLEANFILES += $(nodist_cbmemc_module_SOURCES) -MOD_FILES += cbmemc.mod -MARKER_FILES += cbmemc.marker -CLEANFILES += cbmemc.marker - -cbmemc.marker: $(cbmemc_module_SOURCES) $(nodist_cbmemc_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cbmemc_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif -platform_PROGRAMS += regexp.module -MODULE_FILES += regexp.module$(EXEEXT) -regexp_module_SOURCES = commands/regexp.c commands/wildcard.c lib/gnulib/regex.c ## platform sources -nodist_regexp_module_SOURCES = ## platform nodist sources -regexp_module_LDADD = -regexp_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) $(CFLAGS_POSIX) $(CFLAGS_GNULIB) -regexp_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -regexp_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) $(CPPFLAGS_POSIX) $(CPPFLAGS_GNULIB) -regexp_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -regexp_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_regexp_module_SOURCES) -CLEANFILES += $(nodist_regexp_module_SOURCES) -MOD_FILES += regexp.mod -MARKER_FILES += regexp.marker -CLEANFILES += regexp.marker - -regexp.marker: $(regexp_module_SOURCES) $(nodist_regexp_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(regexp_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -if COND_i386_pc -platform_PROGRAMS += acpi.module -MODULE_FILES += acpi.module$(EXEEXT) -acpi_module_SOURCES = kern/acpi.c kern/i386/pc/acpi.c commands/acpi.c ## platform sources -nodist_acpi_module_SOURCES = ## platform nodist sources -acpi_module_LDADD = -acpi_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -acpi_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -acpi_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -acpi_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -acpi_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_acpi_module_SOURCES) -CLEANFILES += $(nodist_acpi_module_SOURCES) -MOD_FILES += acpi.mod -MARKER_FILES += acpi.marker -CLEANFILES += acpi.marker - -acpi.marker: $(acpi_module_SOURCES) $(nodist_acpi_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(acpi_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_efi -platform_PROGRAMS += acpi.module -MODULE_FILES += acpi.module$(EXEEXT) -acpi_module_SOURCES = commands/acpi.c ## platform sources -nodist_acpi_module_SOURCES = ## platform nodist sources -acpi_module_LDADD = -acpi_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -acpi_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -acpi_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -acpi_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -acpi_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_acpi_module_SOURCES) -CLEANFILES += $(nodist_acpi_module_SOURCES) -MOD_FILES += acpi.mod -MARKER_FILES += acpi.marker -CLEANFILES += acpi.marker - -acpi.marker: $(acpi_module_SOURCES) $(nodist_acpi_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(acpi_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_coreboot -platform_PROGRAMS += acpi.module -MODULE_FILES += acpi.module$(EXEEXT) -acpi_module_SOURCES = commands/acpi.c ## platform sources -nodist_acpi_module_SOURCES = ## platform nodist sources -acpi_module_LDADD = -acpi_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -acpi_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -acpi_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -acpi_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -acpi_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_acpi_module_SOURCES) -CLEANFILES += $(nodist_acpi_module_SOURCES) -MOD_FILES += acpi.mod -MARKER_FILES += acpi.marker -CLEANFILES += acpi.marker - -acpi.marker: $(acpi_module_SOURCES) $(nodist_acpi_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(acpi_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_multiboot -platform_PROGRAMS += acpi.module -MODULE_FILES += acpi.module$(EXEEXT) -acpi_module_SOURCES = commands/acpi.c ## platform sources -nodist_acpi_module_SOURCES = ## platform nodist sources -acpi_module_LDADD = -acpi_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -acpi_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -acpi_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -acpi_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -acpi_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_acpi_module_SOURCES) -CLEANFILES += $(nodist_acpi_module_SOURCES) -MOD_FILES += acpi.mod -MARKER_FILES += acpi.marker -CLEANFILES += acpi.marker - -acpi.marker: $(acpi_module_SOURCES) $(nodist_acpi_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(acpi_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_x86_64_efi -platform_PROGRAMS += acpi.module -MODULE_FILES += acpi.module$(EXEEXT) -acpi_module_SOURCES = commands/acpi.c ## platform sources -nodist_acpi_module_SOURCES = ## platform nodist sources -acpi_module_LDADD = -acpi_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -acpi_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -acpi_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -acpi_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -acpi_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_acpi_module_SOURCES) -CLEANFILES += $(nodist_acpi_module_SOURCES) -MOD_FILES += acpi.mod -MARKER_FILES += acpi.marker -CLEANFILES += acpi.marker - -acpi.marker: $(acpi_module_SOURCES) $(nodist_acpi_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(acpi_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_ia64_efi -platform_PROGRAMS += acpi.module -MODULE_FILES += acpi.module$(EXEEXT) -acpi_module_SOURCES = commands/acpi.c ## platform sources -nodist_acpi_module_SOURCES = ## platform nodist sources -acpi_module_LDADD = -acpi_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -acpi_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -acpi_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -acpi_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -acpi_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_acpi_module_SOURCES) -CLEANFILES += $(nodist_acpi_module_SOURCES) -MOD_FILES += acpi.mod -MARKER_FILES += acpi.marker -CLEANFILES += acpi.marker - -acpi.marker: $(acpi_module_SOURCES) $(nodist_acpi_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(acpi_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_arm_efi -platform_PROGRAMS += acpi.module -MODULE_FILES += acpi.module$(EXEEXT) -acpi_module_SOURCES = commands/acpi.c ## platform sources -nodist_acpi_module_SOURCES = ## platform nodist sources -acpi_module_LDADD = -acpi_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -acpi_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -acpi_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -acpi_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -acpi_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_acpi_module_SOURCES) -CLEANFILES += $(nodist_acpi_module_SOURCES) -MOD_FILES += acpi.mod -MARKER_FILES += acpi.marker -CLEANFILES += acpi.marker - -acpi.marker: $(acpi_module_SOURCES) $(nodist_acpi_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(acpi_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_arm64_efi -platform_PROGRAMS += acpi.module -MODULE_FILES += acpi.module$(EXEEXT) -acpi_module_SOURCES = commands/acpi.c ## platform sources -nodist_acpi_module_SOURCES = ## platform nodist sources -acpi_module_LDADD = -acpi_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -acpi_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -acpi_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -acpi_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -acpi_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_acpi_module_SOURCES) -CLEANFILES += $(nodist_acpi_module_SOURCES) -MOD_FILES += acpi.mod -MARKER_FILES += acpi.marker -CLEANFILES += acpi.marker - -acpi.marker: $(acpi_module_SOURCES) $(nodist_acpi_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(acpi_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_riscv32_efi -platform_PROGRAMS += acpi.module -MODULE_FILES += acpi.module$(EXEEXT) -acpi_module_SOURCES = commands/acpi.c ## platform sources -nodist_acpi_module_SOURCES = ## platform nodist sources -acpi_module_LDADD = -acpi_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -acpi_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -acpi_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -acpi_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -acpi_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_acpi_module_SOURCES) -CLEANFILES += $(nodist_acpi_module_SOURCES) -MOD_FILES += acpi.mod -MARKER_FILES += acpi.marker -CLEANFILES += acpi.marker - -acpi.marker: $(acpi_module_SOURCES) $(nodist_acpi_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(acpi_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_riscv64_efi -platform_PROGRAMS += acpi.module -MODULE_FILES += acpi.module$(EXEEXT) -acpi_module_SOURCES = commands/acpi.c ## platform sources -nodist_acpi_module_SOURCES = ## platform nodist sources -acpi_module_LDADD = -acpi_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -acpi_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -acpi_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -acpi_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -acpi_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_acpi_module_SOURCES) -CLEANFILES += $(nodist_acpi_module_SOURCES) -MOD_FILES += acpi.mod -MARKER_FILES += acpi.marker -CLEANFILES += acpi.marker - -acpi.marker: $(acpi_module_SOURCES) $(nodist_acpi_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(acpi_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_pc -platform_PROGRAMS += lsacpi.module -MODULE_FILES += lsacpi.module$(EXEEXT) -lsacpi_module_SOURCES = commands/lsacpi.c ## platform sources -nodist_lsacpi_module_SOURCES = ## platform nodist sources -lsacpi_module_LDADD = -lsacpi_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -lsacpi_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -lsacpi_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -lsacpi_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -lsacpi_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_lsacpi_module_SOURCES) -CLEANFILES += $(nodist_lsacpi_module_SOURCES) -MOD_FILES += lsacpi.mod -MARKER_FILES += lsacpi.marker -CLEANFILES += lsacpi.marker - -lsacpi.marker: $(lsacpi_module_SOURCES) $(nodist_lsacpi_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lsacpi_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_efi -platform_PROGRAMS += lsacpi.module -MODULE_FILES += lsacpi.module$(EXEEXT) -lsacpi_module_SOURCES = commands/lsacpi.c ## platform sources -nodist_lsacpi_module_SOURCES = ## platform nodist sources -lsacpi_module_LDADD = -lsacpi_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -lsacpi_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -lsacpi_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -lsacpi_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -lsacpi_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_lsacpi_module_SOURCES) -CLEANFILES += $(nodist_lsacpi_module_SOURCES) -MOD_FILES += lsacpi.mod -MARKER_FILES += lsacpi.marker -CLEANFILES += lsacpi.marker - -lsacpi.marker: $(lsacpi_module_SOURCES) $(nodist_lsacpi_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lsacpi_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_coreboot -platform_PROGRAMS += lsacpi.module -MODULE_FILES += lsacpi.module$(EXEEXT) -lsacpi_module_SOURCES = commands/lsacpi.c ## platform sources -nodist_lsacpi_module_SOURCES = ## platform nodist sources -lsacpi_module_LDADD = -lsacpi_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -lsacpi_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -lsacpi_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -lsacpi_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -lsacpi_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_lsacpi_module_SOURCES) -CLEANFILES += $(nodist_lsacpi_module_SOURCES) -MOD_FILES += lsacpi.mod -MARKER_FILES += lsacpi.marker -CLEANFILES += lsacpi.marker - -lsacpi.marker: $(lsacpi_module_SOURCES) $(nodist_lsacpi_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lsacpi_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_multiboot -platform_PROGRAMS += lsacpi.module -MODULE_FILES += lsacpi.module$(EXEEXT) -lsacpi_module_SOURCES = commands/lsacpi.c ## platform sources -nodist_lsacpi_module_SOURCES = ## platform nodist sources -lsacpi_module_LDADD = -lsacpi_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -lsacpi_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -lsacpi_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -lsacpi_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -lsacpi_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_lsacpi_module_SOURCES) -CLEANFILES += $(nodist_lsacpi_module_SOURCES) -MOD_FILES += lsacpi.mod -MARKER_FILES += lsacpi.marker -CLEANFILES += lsacpi.marker - -lsacpi.marker: $(lsacpi_module_SOURCES) $(nodist_lsacpi_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lsacpi_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_x86_64_efi -platform_PROGRAMS += lsacpi.module -MODULE_FILES += lsacpi.module$(EXEEXT) -lsacpi_module_SOURCES = commands/lsacpi.c ## platform sources -nodist_lsacpi_module_SOURCES = ## platform nodist sources -lsacpi_module_LDADD = -lsacpi_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -lsacpi_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -lsacpi_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -lsacpi_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -lsacpi_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_lsacpi_module_SOURCES) -CLEANFILES += $(nodist_lsacpi_module_SOURCES) -MOD_FILES += lsacpi.mod -MARKER_FILES += lsacpi.marker -CLEANFILES += lsacpi.marker - -lsacpi.marker: $(lsacpi_module_SOURCES) $(nodist_lsacpi_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lsacpi_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_ia64_efi -platform_PROGRAMS += lsacpi.module -MODULE_FILES += lsacpi.module$(EXEEXT) -lsacpi_module_SOURCES = commands/lsacpi.c ## platform sources -nodist_lsacpi_module_SOURCES = ## platform nodist sources -lsacpi_module_LDADD = -lsacpi_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -lsacpi_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -lsacpi_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -lsacpi_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -lsacpi_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_lsacpi_module_SOURCES) -CLEANFILES += $(nodist_lsacpi_module_SOURCES) -MOD_FILES += lsacpi.mod -MARKER_FILES += lsacpi.marker -CLEANFILES += lsacpi.marker - -lsacpi.marker: $(lsacpi_module_SOURCES) $(nodist_lsacpi_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lsacpi_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_arm_efi -platform_PROGRAMS += lsacpi.module -MODULE_FILES += lsacpi.module$(EXEEXT) -lsacpi_module_SOURCES = commands/lsacpi.c ## platform sources -nodist_lsacpi_module_SOURCES = ## platform nodist sources -lsacpi_module_LDADD = -lsacpi_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -lsacpi_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -lsacpi_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -lsacpi_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -lsacpi_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_lsacpi_module_SOURCES) -CLEANFILES += $(nodist_lsacpi_module_SOURCES) -MOD_FILES += lsacpi.mod -MARKER_FILES += lsacpi.marker -CLEANFILES += lsacpi.marker - -lsacpi.marker: $(lsacpi_module_SOURCES) $(nodist_lsacpi_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lsacpi_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_arm64_efi -platform_PROGRAMS += lsacpi.module -MODULE_FILES += lsacpi.module$(EXEEXT) -lsacpi_module_SOURCES = commands/lsacpi.c ## platform sources -nodist_lsacpi_module_SOURCES = ## platform nodist sources -lsacpi_module_LDADD = -lsacpi_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -lsacpi_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -lsacpi_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -lsacpi_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -lsacpi_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_lsacpi_module_SOURCES) -CLEANFILES += $(nodist_lsacpi_module_SOURCES) -MOD_FILES += lsacpi.mod -MARKER_FILES += lsacpi.marker -CLEANFILES += lsacpi.marker - -lsacpi.marker: $(lsacpi_module_SOURCES) $(nodist_lsacpi_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lsacpi_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_riscv32_efi -platform_PROGRAMS += lsacpi.module -MODULE_FILES += lsacpi.module$(EXEEXT) -lsacpi_module_SOURCES = commands/lsacpi.c ## platform sources -nodist_lsacpi_module_SOURCES = ## platform nodist sources -lsacpi_module_LDADD = -lsacpi_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -lsacpi_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -lsacpi_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -lsacpi_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -lsacpi_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_lsacpi_module_SOURCES) -CLEANFILES += $(nodist_lsacpi_module_SOURCES) -MOD_FILES += lsacpi.mod -MARKER_FILES += lsacpi.marker -CLEANFILES += lsacpi.marker - -lsacpi.marker: $(lsacpi_module_SOURCES) $(nodist_lsacpi_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lsacpi_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_riscv64_efi -platform_PROGRAMS += lsacpi.module -MODULE_FILES += lsacpi.module$(EXEEXT) -lsacpi_module_SOURCES = commands/lsacpi.c ## platform sources -nodist_lsacpi_module_SOURCES = ## platform nodist sources -lsacpi_module_LDADD = -lsacpi_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -lsacpi_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -lsacpi_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -lsacpi_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -lsacpi_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_lsacpi_module_SOURCES) -CLEANFILES += $(nodist_lsacpi_module_SOURCES) -MOD_FILES += lsacpi.mod -MARKER_FILES += lsacpi.marker -CLEANFILES += lsacpi.marker - -lsacpi.marker: $(lsacpi_module_SOURCES) $(nodist_lsacpi_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lsacpi_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_efi -platform_PROGRAMS += lsefisystab.module -MODULE_FILES += lsefisystab.module$(EXEEXT) -lsefisystab_module_SOURCES = commands/efi/lsefisystab.c ## platform sources -nodist_lsefisystab_module_SOURCES = ## platform nodist sources -lsefisystab_module_LDADD = -lsefisystab_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -lsefisystab_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -lsefisystab_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -lsefisystab_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -lsefisystab_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_lsefisystab_module_SOURCES) -CLEANFILES += $(nodist_lsefisystab_module_SOURCES) -MOD_FILES += lsefisystab.mod -MARKER_FILES += lsefisystab.marker -CLEANFILES += lsefisystab.marker - -lsefisystab.marker: $(lsefisystab_module_SOURCES) $(nodist_lsefisystab_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lsefisystab_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_x86_64_efi -platform_PROGRAMS += lsefisystab.module -MODULE_FILES += lsefisystab.module$(EXEEXT) -lsefisystab_module_SOURCES = commands/efi/lsefisystab.c ## platform sources -nodist_lsefisystab_module_SOURCES = ## platform nodist sources -lsefisystab_module_LDADD = -lsefisystab_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -lsefisystab_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -lsefisystab_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -lsefisystab_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -lsefisystab_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_lsefisystab_module_SOURCES) -CLEANFILES += $(nodist_lsefisystab_module_SOURCES) -MOD_FILES += lsefisystab.mod -MARKER_FILES += lsefisystab.marker -CLEANFILES += lsefisystab.marker - -lsefisystab.marker: $(lsefisystab_module_SOURCES) $(nodist_lsefisystab_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lsefisystab_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_ia64_efi -platform_PROGRAMS += lsefisystab.module -MODULE_FILES += lsefisystab.module$(EXEEXT) -lsefisystab_module_SOURCES = commands/efi/lsefisystab.c ## platform sources -nodist_lsefisystab_module_SOURCES = ## platform nodist sources -lsefisystab_module_LDADD = -lsefisystab_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -lsefisystab_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -lsefisystab_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -lsefisystab_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -lsefisystab_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_lsefisystab_module_SOURCES) -CLEANFILES += $(nodist_lsefisystab_module_SOURCES) -MOD_FILES += lsefisystab.mod -MARKER_FILES += lsefisystab.marker -CLEANFILES += lsefisystab.marker - -lsefisystab.marker: $(lsefisystab_module_SOURCES) $(nodist_lsefisystab_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lsefisystab_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_arm_efi -platform_PROGRAMS += lsefisystab.module -MODULE_FILES += lsefisystab.module$(EXEEXT) -lsefisystab_module_SOURCES = commands/efi/lsefisystab.c ## platform sources -nodist_lsefisystab_module_SOURCES = ## platform nodist sources -lsefisystab_module_LDADD = -lsefisystab_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -lsefisystab_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -lsefisystab_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -lsefisystab_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -lsefisystab_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_lsefisystab_module_SOURCES) -CLEANFILES += $(nodist_lsefisystab_module_SOURCES) -MOD_FILES += lsefisystab.mod -MARKER_FILES += lsefisystab.marker -CLEANFILES += lsefisystab.marker - -lsefisystab.marker: $(lsefisystab_module_SOURCES) $(nodist_lsefisystab_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lsefisystab_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_arm64_efi -platform_PROGRAMS += lsefisystab.module -MODULE_FILES += lsefisystab.module$(EXEEXT) -lsefisystab_module_SOURCES = commands/efi/lsefisystab.c ## platform sources -nodist_lsefisystab_module_SOURCES = ## platform nodist sources -lsefisystab_module_LDADD = -lsefisystab_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -lsefisystab_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -lsefisystab_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -lsefisystab_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -lsefisystab_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_lsefisystab_module_SOURCES) -CLEANFILES += $(nodist_lsefisystab_module_SOURCES) -MOD_FILES += lsefisystab.mod -MARKER_FILES += lsefisystab.marker -CLEANFILES += lsefisystab.marker - -lsefisystab.marker: $(lsefisystab_module_SOURCES) $(nodist_lsefisystab_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lsefisystab_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_riscv32_efi -platform_PROGRAMS += lsefisystab.module -MODULE_FILES += lsefisystab.module$(EXEEXT) -lsefisystab_module_SOURCES = commands/efi/lsefisystab.c ## platform sources -nodist_lsefisystab_module_SOURCES = ## platform nodist sources -lsefisystab_module_LDADD = -lsefisystab_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -lsefisystab_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -lsefisystab_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -lsefisystab_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -lsefisystab_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_lsefisystab_module_SOURCES) -CLEANFILES += $(nodist_lsefisystab_module_SOURCES) -MOD_FILES += lsefisystab.mod -MARKER_FILES += lsefisystab.marker -CLEANFILES += lsefisystab.marker - -lsefisystab.marker: $(lsefisystab_module_SOURCES) $(nodist_lsefisystab_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lsefisystab_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_riscv64_efi -platform_PROGRAMS += lsefisystab.module -MODULE_FILES += lsefisystab.module$(EXEEXT) -lsefisystab_module_SOURCES = commands/efi/lsefisystab.c ## platform sources -nodist_lsefisystab_module_SOURCES = ## platform nodist sources -lsefisystab_module_LDADD = -lsefisystab_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -lsefisystab_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -lsefisystab_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -lsefisystab_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -lsefisystab_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_lsefisystab_module_SOURCES) -CLEANFILES += $(nodist_lsefisystab_module_SOURCES) -MOD_FILES += lsefisystab.mod -MARKER_FILES += lsefisystab.marker -CLEANFILES += lsefisystab.marker - -lsefisystab.marker: $(lsefisystab_module_SOURCES) $(nodist_lsefisystab_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lsefisystab_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_efi -platform_PROGRAMS += lssal.module -MODULE_FILES += lssal.module$(EXEEXT) -lssal_module_SOURCES = commands/efi/lssal.c ## platform sources -nodist_lssal_module_SOURCES = ## platform nodist sources -lssal_module_LDADD = -lssal_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -lssal_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -lssal_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -lssal_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -lssal_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_lssal_module_SOURCES) -CLEANFILES += $(nodist_lssal_module_SOURCES) -MOD_FILES += lssal.mod -MARKER_FILES += lssal.marker -CLEANFILES += lssal.marker - -lssal.marker: $(lssal_module_SOURCES) $(nodist_lssal_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lssal_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_x86_64_efi -platform_PROGRAMS += lssal.module -MODULE_FILES += lssal.module$(EXEEXT) -lssal_module_SOURCES = commands/efi/lssal.c ## platform sources -nodist_lssal_module_SOURCES = ## platform nodist sources -lssal_module_LDADD = -lssal_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -lssal_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -lssal_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -lssal_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -lssal_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_lssal_module_SOURCES) -CLEANFILES += $(nodist_lssal_module_SOURCES) -MOD_FILES += lssal.mod -MARKER_FILES += lssal.marker -CLEANFILES += lssal.marker - -lssal.marker: $(lssal_module_SOURCES) $(nodist_lssal_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lssal_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_ia64_efi -platform_PROGRAMS += lssal.module -MODULE_FILES += lssal.module$(EXEEXT) -lssal_module_SOURCES = commands/efi/lssal.c ## platform sources -nodist_lssal_module_SOURCES = ## platform nodist sources -lssal_module_LDADD = -lssal_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -lssal_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -lssal_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -lssal_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -lssal_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_lssal_module_SOURCES) -CLEANFILES += $(nodist_lssal_module_SOURCES) -MOD_FILES += lssal.mod -MARKER_FILES += lssal.marker -CLEANFILES += lssal.marker - -lssal.marker: $(lssal_module_SOURCES) $(nodist_lssal_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lssal_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_arm_efi -platform_PROGRAMS += lssal.module -MODULE_FILES += lssal.module$(EXEEXT) -lssal_module_SOURCES = commands/efi/lssal.c ## platform sources -nodist_lssal_module_SOURCES = ## platform nodist sources -lssal_module_LDADD = -lssal_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -lssal_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -lssal_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -lssal_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -lssal_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_lssal_module_SOURCES) -CLEANFILES += $(nodist_lssal_module_SOURCES) -MOD_FILES += lssal.mod -MARKER_FILES += lssal.marker -CLEANFILES += lssal.marker - -lssal.marker: $(lssal_module_SOURCES) $(nodist_lssal_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lssal_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_arm64_efi -platform_PROGRAMS += lssal.module -MODULE_FILES += lssal.module$(EXEEXT) -lssal_module_SOURCES = commands/efi/lssal.c ## platform sources -nodist_lssal_module_SOURCES = ## platform nodist sources -lssal_module_LDADD = -lssal_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -lssal_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -lssal_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -lssal_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -lssal_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_lssal_module_SOURCES) -CLEANFILES += $(nodist_lssal_module_SOURCES) -MOD_FILES += lssal.mod -MARKER_FILES += lssal.marker -CLEANFILES += lssal.marker - -lssal.marker: $(lssal_module_SOURCES) $(nodist_lssal_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lssal_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_riscv32_efi -platform_PROGRAMS += lssal.module -MODULE_FILES += lssal.module$(EXEEXT) -lssal_module_SOURCES = commands/efi/lssal.c ## platform sources -nodist_lssal_module_SOURCES = ## platform nodist sources -lssal_module_LDADD = -lssal_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -lssal_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -lssal_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -lssal_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -lssal_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_lssal_module_SOURCES) -CLEANFILES += $(nodist_lssal_module_SOURCES) -MOD_FILES += lssal.mod -MARKER_FILES += lssal.marker -CLEANFILES += lssal.marker - -lssal.marker: $(lssal_module_SOURCES) $(nodist_lssal_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lssal_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_riscv64_efi -platform_PROGRAMS += lssal.module -MODULE_FILES += lssal.module$(EXEEXT) -lssal_module_SOURCES = commands/efi/lssal.c ## platform sources -nodist_lssal_module_SOURCES = ## platform nodist sources -lssal_module_LDADD = -lssal_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -lssal_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -lssal_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -lssal_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -lssal_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_lssal_module_SOURCES) -CLEANFILES += $(nodist_lssal_module_SOURCES) -MOD_FILES += lssal.mod -MARKER_FILES += lssal.marker -CLEANFILES += lssal.marker - -lssal.marker: $(lssal_module_SOURCES) $(nodist_lssal_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lssal_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_efi -platform_PROGRAMS += lsefimmap.module -MODULE_FILES += lsefimmap.module$(EXEEXT) -lsefimmap_module_SOURCES = commands/efi/lsefimmap.c ## platform sources -nodist_lsefimmap_module_SOURCES = ## platform nodist sources -lsefimmap_module_LDADD = -lsefimmap_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -lsefimmap_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -lsefimmap_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -lsefimmap_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -lsefimmap_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_lsefimmap_module_SOURCES) -CLEANFILES += $(nodist_lsefimmap_module_SOURCES) -MOD_FILES += lsefimmap.mod -MARKER_FILES += lsefimmap.marker -CLEANFILES += lsefimmap.marker - -lsefimmap.marker: $(lsefimmap_module_SOURCES) $(nodist_lsefimmap_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lsefimmap_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_x86_64_efi -platform_PROGRAMS += lsefimmap.module -MODULE_FILES += lsefimmap.module$(EXEEXT) -lsefimmap_module_SOURCES = commands/efi/lsefimmap.c ## platform sources -nodist_lsefimmap_module_SOURCES = ## platform nodist sources -lsefimmap_module_LDADD = -lsefimmap_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -lsefimmap_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -lsefimmap_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -lsefimmap_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -lsefimmap_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_lsefimmap_module_SOURCES) -CLEANFILES += $(nodist_lsefimmap_module_SOURCES) -MOD_FILES += lsefimmap.mod -MARKER_FILES += lsefimmap.marker -CLEANFILES += lsefimmap.marker - -lsefimmap.marker: $(lsefimmap_module_SOURCES) $(nodist_lsefimmap_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lsefimmap_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_ia64_efi -platform_PROGRAMS += lsefimmap.module -MODULE_FILES += lsefimmap.module$(EXEEXT) -lsefimmap_module_SOURCES = commands/efi/lsefimmap.c ## platform sources -nodist_lsefimmap_module_SOURCES = ## platform nodist sources -lsefimmap_module_LDADD = -lsefimmap_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -lsefimmap_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -lsefimmap_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -lsefimmap_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -lsefimmap_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_lsefimmap_module_SOURCES) -CLEANFILES += $(nodist_lsefimmap_module_SOURCES) -MOD_FILES += lsefimmap.mod -MARKER_FILES += lsefimmap.marker -CLEANFILES += lsefimmap.marker - -lsefimmap.marker: $(lsefimmap_module_SOURCES) $(nodist_lsefimmap_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lsefimmap_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_arm_efi -platform_PROGRAMS += lsefimmap.module -MODULE_FILES += lsefimmap.module$(EXEEXT) -lsefimmap_module_SOURCES = commands/efi/lsefimmap.c ## platform sources -nodist_lsefimmap_module_SOURCES = ## platform nodist sources -lsefimmap_module_LDADD = -lsefimmap_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -lsefimmap_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -lsefimmap_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -lsefimmap_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -lsefimmap_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_lsefimmap_module_SOURCES) -CLEANFILES += $(nodist_lsefimmap_module_SOURCES) -MOD_FILES += lsefimmap.mod -MARKER_FILES += lsefimmap.marker -CLEANFILES += lsefimmap.marker - -lsefimmap.marker: $(lsefimmap_module_SOURCES) $(nodist_lsefimmap_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lsefimmap_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_arm64_efi -platform_PROGRAMS += lsefimmap.module -MODULE_FILES += lsefimmap.module$(EXEEXT) -lsefimmap_module_SOURCES = commands/efi/lsefimmap.c ## platform sources -nodist_lsefimmap_module_SOURCES = ## platform nodist sources -lsefimmap_module_LDADD = -lsefimmap_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -lsefimmap_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -lsefimmap_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -lsefimmap_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -lsefimmap_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_lsefimmap_module_SOURCES) -CLEANFILES += $(nodist_lsefimmap_module_SOURCES) -MOD_FILES += lsefimmap.mod -MARKER_FILES += lsefimmap.marker -CLEANFILES += lsefimmap.marker - -lsefimmap.marker: $(lsefimmap_module_SOURCES) $(nodist_lsefimmap_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lsefimmap_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_riscv32_efi -platform_PROGRAMS += lsefimmap.module -MODULE_FILES += lsefimmap.module$(EXEEXT) -lsefimmap_module_SOURCES = commands/efi/lsefimmap.c ## platform sources -nodist_lsefimmap_module_SOURCES = ## platform nodist sources -lsefimmap_module_LDADD = -lsefimmap_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -lsefimmap_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -lsefimmap_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -lsefimmap_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -lsefimmap_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_lsefimmap_module_SOURCES) -CLEANFILES += $(nodist_lsefimmap_module_SOURCES) -MOD_FILES += lsefimmap.mod -MARKER_FILES += lsefimmap.marker -CLEANFILES += lsefimmap.marker - -lsefimmap.marker: $(lsefimmap_module_SOURCES) $(nodist_lsefimmap_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lsefimmap_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_riscv64_efi -platform_PROGRAMS += lsefimmap.module -MODULE_FILES += lsefimmap.module$(EXEEXT) -lsefimmap_module_SOURCES = commands/efi/lsefimmap.c ## platform sources -nodist_lsefimmap_module_SOURCES = ## platform nodist sources -lsefimmap_module_LDADD = -lsefimmap_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -lsefimmap_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -lsefimmap_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -lsefimmap_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -lsefimmap_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_lsefimmap_module_SOURCES) -CLEANFILES += $(nodist_lsefimmap_module_SOURCES) -MOD_FILES += lsefimmap.mod -MARKER_FILES += lsefimmap.marker -CLEANFILES += lsefimmap.marker - -lsefimmap.marker: $(lsefimmap_module_SOURCES) $(nodist_lsefimmap_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lsefimmap_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_efi -platform_PROGRAMS += lsefi.module -MODULE_FILES += lsefi.module$(EXEEXT) -lsefi_module_SOURCES = commands/efi/lsefi.c ## platform sources -nodist_lsefi_module_SOURCES = ## platform nodist sources -lsefi_module_LDADD = -lsefi_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -lsefi_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -lsefi_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -lsefi_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -lsefi_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_lsefi_module_SOURCES) -CLEANFILES += $(nodist_lsefi_module_SOURCES) -MOD_FILES += lsefi.mod -MARKER_FILES += lsefi.marker -CLEANFILES += lsefi.marker - -lsefi.marker: $(lsefi_module_SOURCES) $(nodist_lsefi_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lsefi_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_x86_64_efi -platform_PROGRAMS += lsefi.module -MODULE_FILES += lsefi.module$(EXEEXT) -lsefi_module_SOURCES = commands/efi/lsefi.c ## platform sources -nodist_lsefi_module_SOURCES = ## platform nodist sources -lsefi_module_LDADD = -lsefi_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -lsefi_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -lsefi_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -lsefi_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -lsefi_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_lsefi_module_SOURCES) -CLEANFILES += $(nodist_lsefi_module_SOURCES) -MOD_FILES += lsefi.mod -MARKER_FILES += lsefi.marker -CLEANFILES += lsefi.marker - -lsefi.marker: $(lsefi_module_SOURCES) $(nodist_lsefi_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lsefi_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_ia64_efi -platform_PROGRAMS += lsefi.module -MODULE_FILES += lsefi.module$(EXEEXT) -lsefi_module_SOURCES = commands/efi/lsefi.c ## platform sources -nodist_lsefi_module_SOURCES = ## platform nodist sources -lsefi_module_LDADD = -lsefi_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -lsefi_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -lsefi_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -lsefi_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -lsefi_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_lsefi_module_SOURCES) -CLEANFILES += $(nodist_lsefi_module_SOURCES) -MOD_FILES += lsefi.mod -MARKER_FILES += lsefi.marker -CLEANFILES += lsefi.marker - -lsefi.marker: $(lsefi_module_SOURCES) $(nodist_lsefi_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lsefi_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_arm_efi -platform_PROGRAMS += lsefi.module -MODULE_FILES += lsefi.module$(EXEEXT) -lsefi_module_SOURCES = commands/efi/lsefi.c ## platform sources -nodist_lsefi_module_SOURCES = ## platform nodist sources -lsefi_module_LDADD = -lsefi_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -lsefi_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -lsefi_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -lsefi_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -lsefi_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_lsefi_module_SOURCES) -CLEANFILES += $(nodist_lsefi_module_SOURCES) -MOD_FILES += lsefi.mod -MARKER_FILES += lsefi.marker -CLEANFILES += lsefi.marker - -lsefi.marker: $(lsefi_module_SOURCES) $(nodist_lsefi_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lsefi_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_arm64_efi -platform_PROGRAMS += lsefi.module -MODULE_FILES += lsefi.module$(EXEEXT) -lsefi_module_SOURCES = commands/efi/lsefi.c ## platform sources -nodist_lsefi_module_SOURCES = ## platform nodist sources -lsefi_module_LDADD = -lsefi_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -lsefi_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -lsefi_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -lsefi_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -lsefi_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_lsefi_module_SOURCES) -CLEANFILES += $(nodist_lsefi_module_SOURCES) -MOD_FILES += lsefi.mod -MARKER_FILES += lsefi.marker -CLEANFILES += lsefi.marker - -lsefi.marker: $(lsefi_module_SOURCES) $(nodist_lsefi_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lsefi_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_riscv32_efi -platform_PROGRAMS += lsefi.module -MODULE_FILES += lsefi.module$(EXEEXT) -lsefi_module_SOURCES = commands/efi/lsefi.c ## platform sources -nodist_lsefi_module_SOURCES = ## platform nodist sources -lsefi_module_LDADD = -lsefi_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -lsefi_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -lsefi_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -lsefi_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -lsefi_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_lsefi_module_SOURCES) -CLEANFILES += $(nodist_lsefi_module_SOURCES) -MOD_FILES += lsefi.mod -MARKER_FILES += lsefi.marker -CLEANFILES += lsefi.marker - -lsefi.marker: $(lsefi_module_SOURCES) $(nodist_lsefi_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lsefi_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_riscv64_efi -platform_PROGRAMS += lsefi.module -MODULE_FILES += lsefi.module$(EXEEXT) -lsefi_module_SOURCES = commands/efi/lsefi.c ## platform sources -nodist_lsefi_module_SOURCES = ## platform nodist sources -lsefi_module_LDADD = -lsefi_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -lsefi_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -lsefi_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -lsefi_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -lsefi_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_lsefi_module_SOURCES) -CLEANFILES += $(nodist_lsefi_module_SOURCES) -MOD_FILES += lsefi.mod -MARKER_FILES += lsefi.marker -CLEANFILES += lsefi.marker - -lsefi.marker: $(lsefi_module_SOURCES) $(nodist_lsefi_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lsefi_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_efi -platform_PROGRAMS += efifwsetup.module -MODULE_FILES += efifwsetup.module$(EXEEXT) -efifwsetup_module_SOURCES = commands/efi/efifwsetup.c ## platform sources -nodist_efifwsetup_module_SOURCES = ## platform nodist sources -efifwsetup_module_LDADD = -efifwsetup_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -efifwsetup_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -efifwsetup_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -efifwsetup_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -efifwsetup_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_efifwsetup_module_SOURCES) -CLEANFILES += $(nodist_efifwsetup_module_SOURCES) -MOD_FILES += efifwsetup.mod -MARKER_FILES += efifwsetup.marker -CLEANFILES += efifwsetup.marker - -efifwsetup.marker: $(efifwsetup_module_SOURCES) $(nodist_efifwsetup_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(efifwsetup_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_x86_64_efi -platform_PROGRAMS += efifwsetup.module -MODULE_FILES += efifwsetup.module$(EXEEXT) -efifwsetup_module_SOURCES = commands/efi/efifwsetup.c ## platform sources -nodist_efifwsetup_module_SOURCES = ## platform nodist sources -efifwsetup_module_LDADD = -efifwsetup_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -efifwsetup_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -efifwsetup_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -efifwsetup_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -efifwsetup_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_efifwsetup_module_SOURCES) -CLEANFILES += $(nodist_efifwsetup_module_SOURCES) -MOD_FILES += efifwsetup.mod -MARKER_FILES += efifwsetup.marker -CLEANFILES += efifwsetup.marker - -efifwsetup.marker: $(efifwsetup_module_SOURCES) $(nodist_efifwsetup_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(efifwsetup_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_ia64_efi -platform_PROGRAMS += efifwsetup.module -MODULE_FILES += efifwsetup.module$(EXEEXT) -efifwsetup_module_SOURCES = commands/efi/efifwsetup.c ## platform sources -nodist_efifwsetup_module_SOURCES = ## platform nodist sources -efifwsetup_module_LDADD = -efifwsetup_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -efifwsetup_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -efifwsetup_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -efifwsetup_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -efifwsetup_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_efifwsetup_module_SOURCES) -CLEANFILES += $(nodist_efifwsetup_module_SOURCES) -MOD_FILES += efifwsetup.mod -MARKER_FILES += efifwsetup.marker -CLEANFILES += efifwsetup.marker - -efifwsetup.marker: $(efifwsetup_module_SOURCES) $(nodist_efifwsetup_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(efifwsetup_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_arm_efi -platform_PROGRAMS += efifwsetup.module -MODULE_FILES += efifwsetup.module$(EXEEXT) -efifwsetup_module_SOURCES = commands/efi/efifwsetup.c ## platform sources -nodist_efifwsetup_module_SOURCES = ## platform nodist sources -efifwsetup_module_LDADD = -efifwsetup_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -efifwsetup_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -efifwsetup_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -efifwsetup_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -efifwsetup_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_efifwsetup_module_SOURCES) -CLEANFILES += $(nodist_efifwsetup_module_SOURCES) -MOD_FILES += efifwsetup.mod -MARKER_FILES += efifwsetup.marker -CLEANFILES += efifwsetup.marker - -efifwsetup.marker: $(efifwsetup_module_SOURCES) $(nodist_efifwsetup_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(efifwsetup_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_arm64_efi -platform_PROGRAMS += efifwsetup.module -MODULE_FILES += efifwsetup.module$(EXEEXT) -efifwsetup_module_SOURCES = commands/efi/efifwsetup.c ## platform sources -nodist_efifwsetup_module_SOURCES = ## platform nodist sources -efifwsetup_module_LDADD = -efifwsetup_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -efifwsetup_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -efifwsetup_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -efifwsetup_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -efifwsetup_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_efifwsetup_module_SOURCES) -CLEANFILES += $(nodist_efifwsetup_module_SOURCES) -MOD_FILES += efifwsetup.mod -MARKER_FILES += efifwsetup.marker -CLEANFILES += efifwsetup.marker - -efifwsetup.marker: $(efifwsetup_module_SOURCES) $(nodist_efifwsetup_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(efifwsetup_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_riscv32_efi -platform_PROGRAMS += efifwsetup.module -MODULE_FILES += efifwsetup.module$(EXEEXT) -efifwsetup_module_SOURCES = commands/efi/efifwsetup.c ## platform sources -nodist_efifwsetup_module_SOURCES = ## platform nodist sources -efifwsetup_module_LDADD = -efifwsetup_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -efifwsetup_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -efifwsetup_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -efifwsetup_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -efifwsetup_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_efifwsetup_module_SOURCES) -CLEANFILES += $(nodist_efifwsetup_module_SOURCES) -MOD_FILES += efifwsetup.mod -MARKER_FILES += efifwsetup.marker -CLEANFILES += efifwsetup.marker - -efifwsetup.marker: $(efifwsetup_module_SOURCES) $(nodist_efifwsetup_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(efifwsetup_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_riscv64_efi -platform_PROGRAMS += efifwsetup.module -MODULE_FILES += efifwsetup.module$(EXEEXT) -efifwsetup_module_SOURCES = commands/efi/efifwsetup.c ## platform sources -nodist_efifwsetup_module_SOURCES = ## platform nodist sources -efifwsetup_module_LDADD = -efifwsetup_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -efifwsetup_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -efifwsetup_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -efifwsetup_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -efifwsetup_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_efifwsetup_module_SOURCES) -CLEANFILES += $(nodist_efifwsetup_module_SOURCES) -MOD_FILES += efifwsetup.mod -MARKER_FILES += efifwsetup.marker -CLEANFILES += efifwsetup.marker - -efifwsetup.marker: $(efifwsetup_module_SOURCES) $(nodist_efifwsetup_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(efifwsetup_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif -platform_PROGRAMS += blocklist.module -MODULE_FILES += blocklist.module$(EXEEXT) -blocklist_module_SOURCES = commands/blocklist.c ## platform sources -nodist_blocklist_module_SOURCES = ## platform nodist sources -blocklist_module_LDADD = -blocklist_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -blocklist_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -blocklist_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -blocklist_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -blocklist_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_blocklist_module_SOURCES) -CLEANFILES += $(nodist_blocklist_module_SOURCES) -MOD_FILES += blocklist.mod -MARKER_FILES += blocklist.marker -CLEANFILES += blocklist.marker - -blocklist.marker: $(blocklist_module_SOURCES) $(nodist_blocklist_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(blocklist_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -if COND_emu -platform_PROGRAMS += boot.module -MODULE_FILES += boot.module$(EXEEXT) -boot_module_SOURCES = commands/boot.c ## platform sources -nodist_boot_module_SOURCES = ## platform nodist sources -boot_module_LDADD = -boot_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -boot_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -boot_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -boot_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -boot_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_boot_module_SOURCES) -CLEANFILES += $(nodist_boot_module_SOURCES) -MOD_FILES += boot.mod -MARKER_FILES += boot.marker -CLEANFILES += boot.marker - -boot.marker: $(boot_module_SOURCES) $(nodist_boot_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(boot_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_pc -platform_PROGRAMS += boot.module -MODULE_FILES += boot.module$(EXEEXT) -boot_module_SOURCES = lib/i386/pc/biosnum.c commands/boot.c ## platform sources -nodist_boot_module_SOURCES = ## platform nodist sources -boot_module_LDADD = -boot_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -boot_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -boot_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -boot_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -boot_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_boot_module_SOURCES) -CLEANFILES += $(nodist_boot_module_SOURCES) -MOD_FILES += boot.mod -MARKER_FILES += boot.marker -CLEANFILES += boot.marker - -boot.marker: $(boot_module_SOURCES) $(nodist_boot_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(boot_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_efi -platform_PROGRAMS += boot.module -MODULE_FILES += boot.module$(EXEEXT) -boot_module_SOURCES = commands/boot.c ## platform sources -nodist_boot_module_SOURCES = ## platform nodist sources -boot_module_LDADD = -boot_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -boot_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -boot_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -boot_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -boot_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_boot_module_SOURCES) -CLEANFILES += $(nodist_boot_module_SOURCES) -MOD_FILES += boot.mod -MARKER_FILES += boot.marker -CLEANFILES += boot.marker - -boot.marker: $(boot_module_SOURCES) $(nodist_boot_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(boot_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_qemu -platform_PROGRAMS += boot.module -MODULE_FILES += boot.module$(EXEEXT) -boot_module_SOURCES = commands/boot.c ## platform sources -nodist_boot_module_SOURCES = ## platform nodist sources -boot_module_LDADD = -boot_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -boot_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -boot_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -boot_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -boot_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_boot_module_SOURCES) -CLEANFILES += $(nodist_boot_module_SOURCES) -MOD_FILES += boot.mod -MARKER_FILES += boot.marker -CLEANFILES += boot.marker - -boot.marker: $(boot_module_SOURCES) $(nodist_boot_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(boot_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_coreboot -platform_PROGRAMS += boot.module -MODULE_FILES += boot.module$(EXEEXT) -boot_module_SOURCES = commands/boot.c ## platform sources -nodist_boot_module_SOURCES = ## platform nodist sources -boot_module_LDADD = -boot_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -boot_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -boot_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -boot_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -boot_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_boot_module_SOURCES) -CLEANFILES += $(nodist_boot_module_SOURCES) -MOD_FILES += boot.mod -MARKER_FILES += boot.marker -CLEANFILES += boot.marker - -boot.marker: $(boot_module_SOURCES) $(nodist_boot_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(boot_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_multiboot -platform_PROGRAMS += boot.module -MODULE_FILES += boot.module$(EXEEXT) -boot_module_SOURCES = commands/boot.c ## platform sources -nodist_boot_module_SOURCES = ## platform nodist sources -boot_module_LDADD = -boot_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -boot_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -boot_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -boot_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -boot_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_boot_module_SOURCES) -CLEANFILES += $(nodist_boot_module_SOURCES) -MOD_FILES += boot.mod -MARKER_FILES += boot.marker -CLEANFILES += boot.marker - -boot.marker: $(boot_module_SOURCES) $(nodist_boot_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(boot_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_ieee1275 -platform_PROGRAMS += boot.module -MODULE_FILES += boot.module$(EXEEXT) -boot_module_SOURCES = commands/boot.c ## platform sources -nodist_boot_module_SOURCES = ## platform nodist sources -boot_module_LDADD = -boot_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -boot_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -boot_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -boot_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -boot_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_boot_module_SOURCES) -CLEANFILES += $(nodist_boot_module_SOURCES) -MOD_FILES += boot.mod -MARKER_FILES += boot.marker -CLEANFILES += boot.marker - -boot.marker: $(boot_module_SOURCES) $(nodist_boot_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(boot_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_x86_64_efi -platform_PROGRAMS += boot.module -MODULE_FILES += boot.module$(EXEEXT) -boot_module_SOURCES = commands/boot.c ## platform sources -nodist_boot_module_SOURCES = ## platform nodist sources -boot_module_LDADD = -boot_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -boot_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -boot_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -boot_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -boot_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_boot_module_SOURCES) -CLEANFILES += $(nodist_boot_module_SOURCES) -MOD_FILES += boot.mod -MARKER_FILES += boot.marker -CLEANFILES += boot.marker - -boot.marker: $(boot_module_SOURCES) $(nodist_boot_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(boot_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_sparc64_ieee1275 -platform_PROGRAMS += boot.module -MODULE_FILES += boot.module$(EXEEXT) -boot_module_SOURCES = commands/boot.c ## platform sources -nodist_boot_module_SOURCES = ## platform nodist sources -boot_module_LDADD = -boot_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -boot_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -boot_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -boot_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -boot_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_boot_module_SOURCES) -CLEANFILES += $(nodist_boot_module_SOURCES) -MOD_FILES += boot.mod -MARKER_FILES += boot.marker -CLEANFILES += boot.marker - -boot.marker: $(boot_module_SOURCES) $(nodist_boot_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(boot_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_powerpc_ieee1275 -platform_PROGRAMS += boot.module -MODULE_FILES += boot.module$(EXEEXT) -boot_module_SOURCES = commands/boot.c ## platform sources -nodist_boot_module_SOURCES = ## platform nodist sources -boot_module_LDADD = -boot_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -boot_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -boot_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -boot_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -boot_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_boot_module_SOURCES) -CLEANFILES += $(nodist_boot_module_SOURCES) -MOD_FILES += boot.mod -MARKER_FILES += boot.marker -CLEANFILES += boot.marker - -boot.marker: $(boot_module_SOURCES) $(nodist_boot_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(boot_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_mips_arc -platform_PROGRAMS += boot.module -MODULE_FILES += boot.module$(EXEEXT) -boot_module_SOURCES = commands/boot.c ## platform sources -nodist_boot_module_SOURCES = ## platform nodist sources -boot_module_LDADD = -boot_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -boot_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -boot_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -boot_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -boot_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_boot_module_SOURCES) -CLEANFILES += $(nodist_boot_module_SOURCES) -MOD_FILES += boot.mod -MARKER_FILES += boot.marker -CLEANFILES += boot.marker - -boot.marker: $(boot_module_SOURCES) $(nodist_boot_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(boot_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_ia64_efi -platform_PROGRAMS += boot.module -MODULE_FILES += boot.module$(EXEEXT) -boot_module_SOURCES = commands/boot.c ## platform sources -nodist_boot_module_SOURCES = ## platform nodist sources -boot_module_LDADD = -boot_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -boot_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -boot_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -boot_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -boot_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_boot_module_SOURCES) -CLEANFILES += $(nodist_boot_module_SOURCES) -MOD_FILES += boot.mod -MARKER_FILES += boot.marker -CLEANFILES += boot.marker - -boot.marker: $(boot_module_SOURCES) $(nodist_boot_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(boot_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_arm_uboot -platform_PROGRAMS += boot.module -MODULE_FILES += boot.module$(EXEEXT) -boot_module_SOURCES = commands/boot.c ## platform sources -nodist_boot_module_SOURCES = ## platform nodist sources -boot_module_LDADD = -boot_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -boot_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -boot_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -boot_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -boot_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_boot_module_SOURCES) -CLEANFILES += $(nodist_boot_module_SOURCES) -MOD_FILES += boot.mod -MARKER_FILES += boot.marker -CLEANFILES += boot.marker - -boot.marker: $(boot_module_SOURCES) $(nodist_boot_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(boot_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_arm_efi -platform_PROGRAMS += boot.module -MODULE_FILES += boot.module$(EXEEXT) -boot_module_SOURCES = commands/boot.c ## platform sources -nodist_boot_module_SOURCES = ## platform nodist sources -boot_module_LDADD = -boot_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -boot_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -boot_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -boot_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -boot_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_boot_module_SOURCES) -CLEANFILES += $(nodist_boot_module_SOURCES) -MOD_FILES += boot.mod -MARKER_FILES += boot.marker -CLEANFILES += boot.marker - -boot.marker: $(boot_module_SOURCES) $(nodist_boot_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(boot_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_arm64_efi -platform_PROGRAMS += boot.module -MODULE_FILES += boot.module$(EXEEXT) -boot_module_SOURCES = commands/boot.c ## platform sources -nodist_boot_module_SOURCES = ## platform nodist sources -boot_module_LDADD = -boot_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -boot_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -boot_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -boot_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -boot_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_boot_module_SOURCES) -CLEANFILES += $(nodist_boot_module_SOURCES) -MOD_FILES += boot.mod -MARKER_FILES += boot.marker -CLEANFILES += boot.marker - -boot.marker: $(boot_module_SOURCES) $(nodist_boot_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(boot_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_arm_coreboot -platform_PROGRAMS += boot.module -MODULE_FILES += boot.module$(EXEEXT) -boot_module_SOURCES = commands/boot.c ## platform sources -nodist_boot_module_SOURCES = ## platform nodist sources -boot_module_LDADD = -boot_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -boot_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -boot_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -boot_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -boot_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_boot_module_SOURCES) -CLEANFILES += $(nodist_boot_module_SOURCES) -MOD_FILES += boot.mod -MARKER_FILES += boot.marker -CLEANFILES += boot.marker - -boot.marker: $(boot_module_SOURCES) $(nodist_boot_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(boot_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_riscv32_efi -platform_PROGRAMS += boot.module -MODULE_FILES += boot.module$(EXEEXT) -boot_module_SOURCES = commands/boot.c ## platform sources -nodist_boot_module_SOURCES = ## platform nodist sources -boot_module_LDADD = -boot_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -boot_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -boot_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -boot_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -boot_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_boot_module_SOURCES) -CLEANFILES += $(nodist_boot_module_SOURCES) -MOD_FILES += boot.mod -MARKER_FILES += boot.marker -CLEANFILES += boot.marker - -boot.marker: $(boot_module_SOURCES) $(nodist_boot_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(boot_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_riscv64_efi -platform_PROGRAMS += boot.module -MODULE_FILES += boot.module$(EXEEXT) -boot_module_SOURCES = commands/boot.c ## platform sources -nodist_boot_module_SOURCES = ## platform nodist sources -boot_module_LDADD = -boot_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -boot_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -boot_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -boot_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -boot_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_boot_module_SOURCES) -CLEANFILES += $(nodist_boot_module_SOURCES) -MOD_FILES += boot.mod -MARKER_FILES += boot.marker -CLEANFILES += boot.marker - -boot.marker: $(boot_module_SOURCES) $(nodist_boot_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(boot_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif -platform_PROGRAMS += cat.module -MODULE_FILES += cat.module$(EXEEXT) -cat_module_SOURCES = commands/cat.c ## platform sources -nodist_cat_module_SOURCES = ## platform nodist sources -cat_module_LDADD = -cat_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -cat_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -cat_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -cat_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -cat_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_cat_module_SOURCES) -CLEANFILES += $(nodist_cat_module_SOURCES) -MOD_FILES += cat.mod -MARKER_FILES += cat.marker -CLEANFILES += cat.marker - -cat.marker: $(cat_module_SOURCES) $(nodist_cat_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cat_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += cmp.module -MODULE_FILES += cmp.module$(EXEEXT) -cmp_module_SOURCES = commands/cmp.c ## platform sources -nodist_cmp_module_SOURCES = ## platform nodist sources -cmp_module_LDADD = -cmp_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -cmp_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -cmp_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -cmp_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -cmp_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_cmp_module_SOURCES) -CLEANFILES += $(nodist_cmp_module_SOURCES) -MOD_FILES += cmp.mod -MARKER_FILES += cmp.marker -CLEANFILES += cmp.marker - -cmp.marker: $(cmp_module_SOURCES) $(nodist_cmp_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cmp_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += configfile.module -MODULE_FILES += configfile.module$(EXEEXT) -configfile_module_SOURCES = commands/configfile.c ## platform sources -nodist_configfile_module_SOURCES = ## platform nodist sources -configfile_module_LDADD = -configfile_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -configfile_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -configfile_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -configfile_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -configfile_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_configfile_module_SOURCES) -CLEANFILES += $(nodist_configfile_module_SOURCES) -MOD_FILES += configfile.mod -MARKER_FILES += configfile.marker -CLEANFILES += configfile.marker - -configfile.marker: $(configfile_module_SOURCES) $(nodist_configfile_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(configfile_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -if COND_i386_pc -platform_PROGRAMS += cpuid.module -MODULE_FILES += cpuid.module$(EXEEXT) -cpuid_module_SOURCES = commands/i386/cpuid.c ## platform sources -nodist_cpuid_module_SOURCES = ## platform nodist sources -cpuid_module_LDADD = -cpuid_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -cpuid_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -cpuid_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -cpuid_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -cpuid_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_cpuid_module_SOURCES) -CLEANFILES += $(nodist_cpuid_module_SOURCES) -MOD_FILES += cpuid.mod -MARKER_FILES += cpuid.marker -CLEANFILES += cpuid.marker - -cpuid.marker: $(cpuid_module_SOURCES) $(nodist_cpuid_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cpuid_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_efi -platform_PROGRAMS += cpuid.module -MODULE_FILES += cpuid.module$(EXEEXT) -cpuid_module_SOURCES = commands/i386/cpuid.c ## platform sources -nodist_cpuid_module_SOURCES = ## platform nodist sources -cpuid_module_LDADD = -cpuid_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -cpuid_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -cpuid_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -cpuid_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -cpuid_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_cpuid_module_SOURCES) -CLEANFILES += $(nodist_cpuid_module_SOURCES) -MOD_FILES += cpuid.mod -MARKER_FILES += cpuid.marker -CLEANFILES += cpuid.marker - -cpuid.marker: $(cpuid_module_SOURCES) $(nodist_cpuid_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cpuid_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_qemu -platform_PROGRAMS += cpuid.module -MODULE_FILES += cpuid.module$(EXEEXT) -cpuid_module_SOURCES = commands/i386/cpuid.c ## platform sources -nodist_cpuid_module_SOURCES = ## platform nodist sources -cpuid_module_LDADD = -cpuid_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -cpuid_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -cpuid_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -cpuid_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -cpuid_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_cpuid_module_SOURCES) -CLEANFILES += $(nodist_cpuid_module_SOURCES) -MOD_FILES += cpuid.mod -MARKER_FILES += cpuid.marker -CLEANFILES += cpuid.marker - -cpuid.marker: $(cpuid_module_SOURCES) $(nodist_cpuid_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cpuid_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_coreboot -platform_PROGRAMS += cpuid.module -MODULE_FILES += cpuid.module$(EXEEXT) -cpuid_module_SOURCES = commands/i386/cpuid.c ## platform sources -nodist_cpuid_module_SOURCES = ## platform nodist sources -cpuid_module_LDADD = -cpuid_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -cpuid_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -cpuid_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -cpuid_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -cpuid_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_cpuid_module_SOURCES) -CLEANFILES += $(nodist_cpuid_module_SOURCES) -MOD_FILES += cpuid.mod -MARKER_FILES += cpuid.marker -CLEANFILES += cpuid.marker - -cpuid.marker: $(cpuid_module_SOURCES) $(nodist_cpuid_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cpuid_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_multiboot -platform_PROGRAMS += cpuid.module -MODULE_FILES += cpuid.module$(EXEEXT) -cpuid_module_SOURCES = commands/i386/cpuid.c ## platform sources -nodist_cpuid_module_SOURCES = ## platform nodist sources -cpuid_module_LDADD = -cpuid_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -cpuid_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -cpuid_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -cpuid_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -cpuid_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_cpuid_module_SOURCES) -CLEANFILES += $(nodist_cpuid_module_SOURCES) -MOD_FILES += cpuid.mod -MARKER_FILES += cpuid.marker -CLEANFILES += cpuid.marker - -cpuid.marker: $(cpuid_module_SOURCES) $(nodist_cpuid_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cpuid_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_ieee1275 -platform_PROGRAMS += cpuid.module -MODULE_FILES += cpuid.module$(EXEEXT) -cpuid_module_SOURCES = commands/i386/cpuid.c ## platform sources -nodist_cpuid_module_SOURCES = ## platform nodist sources -cpuid_module_LDADD = -cpuid_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -cpuid_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -cpuid_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -cpuid_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -cpuid_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_cpuid_module_SOURCES) -CLEANFILES += $(nodist_cpuid_module_SOURCES) -MOD_FILES += cpuid.mod -MARKER_FILES += cpuid.marker -CLEANFILES += cpuid.marker - -cpuid.marker: $(cpuid_module_SOURCES) $(nodist_cpuid_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cpuid_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_x86_64_efi -platform_PROGRAMS += cpuid.module -MODULE_FILES += cpuid.module$(EXEEXT) -cpuid_module_SOURCES = commands/i386/cpuid.c ## platform sources -nodist_cpuid_module_SOURCES = ## platform nodist sources -cpuid_module_LDADD = -cpuid_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -cpuid_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -cpuid_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -cpuid_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -cpuid_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_cpuid_module_SOURCES) -CLEANFILES += $(nodist_cpuid_module_SOURCES) -MOD_FILES += cpuid.mod -MARKER_FILES += cpuid.marker -CLEANFILES += cpuid.marker - -cpuid.marker: $(cpuid_module_SOURCES) $(nodist_cpuid_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cpuid_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_xen -platform_PROGRAMS += cpuid.module -MODULE_FILES += cpuid.module$(EXEEXT) -cpuid_module_SOURCES = commands/i386/cpuid.c ## platform sources -nodist_cpuid_module_SOURCES = ## platform nodist sources -cpuid_module_LDADD = -cpuid_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -cpuid_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -cpuid_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -cpuid_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -cpuid_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_cpuid_module_SOURCES) -CLEANFILES += $(nodist_cpuid_module_SOURCES) -MOD_FILES += cpuid.mod -MARKER_FILES += cpuid.marker -CLEANFILES += cpuid.marker - -cpuid.marker: $(cpuid_module_SOURCES) $(nodist_cpuid_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cpuid_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_x86_64_xen -platform_PROGRAMS += cpuid.module -MODULE_FILES += cpuid.module$(EXEEXT) -cpuid_module_SOURCES = commands/i386/cpuid.c ## platform sources -nodist_cpuid_module_SOURCES = ## platform nodist sources -cpuid_module_LDADD = -cpuid_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -cpuid_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -cpuid_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -cpuid_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -cpuid_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_cpuid_module_SOURCES) -CLEANFILES += $(nodist_cpuid_module_SOURCES) -MOD_FILES += cpuid.mod -MARKER_FILES += cpuid.marker -CLEANFILES += cpuid.marker - -cpuid.marker: $(cpuid_module_SOURCES) $(nodist_cpuid_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cpuid_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_xen_pvh -platform_PROGRAMS += cpuid.module -MODULE_FILES += cpuid.module$(EXEEXT) -cpuid_module_SOURCES = commands/i386/cpuid.c ## platform sources -nodist_cpuid_module_SOURCES = ## platform nodist sources -cpuid_module_LDADD = -cpuid_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -cpuid_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -cpuid_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -cpuid_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -cpuid_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_cpuid_module_SOURCES) -CLEANFILES += $(nodist_cpuid_module_SOURCES) -MOD_FILES += cpuid.mod -MARKER_FILES += cpuid.marker -CLEANFILES += cpuid.marker - -cpuid.marker: $(cpuid_module_SOURCES) $(nodist_cpuid_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cpuid_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif -platform_PROGRAMS += date.module -MODULE_FILES += date.module$(EXEEXT) -date_module_SOURCES = commands/date.c ## platform sources -nodist_date_module_SOURCES = ## platform nodist sources -date_module_LDADD = -date_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -date_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -date_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -date_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -date_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_date_module_SOURCES) -CLEANFILES += $(nodist_date_module_SOURCES) -MOD_FILES += date.mod -MARKER_FILES += date.marker -CLEANFILES += date.marker - -date.marker: $(date_module_SOURCES) $(nodist_date_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(date_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -if COND_i386_pc -platform_PROGRAMS += drivemap.module -MODULE_FILES += drivemap.module$(EXEEXT) -drivemap_module_SOURCES = commands/i386/pc/drivemap.c commands/i386/pc/drivemap_int13h.S ## platform sources -nodist_drivemap_module_SOURCES = ## platform nodist sources -drivemap_module_LDADD = -drivemap_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -drivemap_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -drivemap_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -drivemap_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -drivemap_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_drivemap_module_SOURCES) -CLEANFILES += $(nodist_drivemap_module_SOURCES) -MOD_FILES += drivemap.mod -MARKER_FILES += drivemap.marker -CLEANFILES += drivemap.marker - -drivemap.marker: $(drivemap_module_SOURCES) $(nodist_drivemap_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(drivemap_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif -platform_PROGRAMS += echo.module -MODULE_FILES += echo.module$(EXEEXT) -echo_module_SOURCES = commands/echo.c ## platform sources -nodist_echo_module_SOURCES = ## platform nodist sources -echo_module_LDADD = -echo_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -echo_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -echo_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -echo_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -echo_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_echo_module_SOURCES) -CLEANFILES += $(nodist_echo_module_SOURCES) -MOD_FILES += echo.mod -MARKER_FILES += echo.marker -CLEANFILES += echo.marker - -echo.marker: $(echo_module_SOURCES) $(nodist_echo_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(echo_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += eval.module -MODULE_FILES += eval.module$(EXEEXT) -eval_module_SOURCES = commands/eval.c ## platform sources -nodist_eval_module_SOURCES = ## platform nodist sources -eval_module_LDADD = -eval_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -eval_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -eval_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -eval_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -eval_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_eval_module_SOURCES) -CLEANFILES += $(nodist_eval_module_SOURCES) -MOD_FILES += eval.mod -MARKER_FILES += eval.marker -CLEANFILES += eval.marker - -eval.marker: $(eval_module_SOURCES) $(nodist_eval_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(eval_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -if COND_i386_pc -platform_PROGRAMS += extcmd.module -MODULE_FILES += extcmd.module$(EXEEXT) -extcmd_module_SOURCES = commands/extcmd.c lib/arg.c ## platform sources -nodist_extcmd_module_SOURCES = ## platform nodist sources -extcmd_module_LDADD = -extcmd_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -extcmd_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -extcmd_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -extcmd_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -extcmd_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_extcmd_module_SOURCES) -CLEANFILES += $(nodist_extcmd_module_SOURCES) -MOD_FILES += extcmd.mod -MARKER_FILES += extcmd.marker -CLEANFILES += extcmd.marker - -extcmd.marker: $(extcmd_module_SOURCES) $(nodist_extcmd_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(extcmd_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_efi -platform_PROGRAMS += extcmd.module -MODULE_FILES += extcmd.module$(EXEEXT) -extcmd_module_SOURCES = commands/extcmd.c lib/arg.c ## platform sources -nodist_extcmd_module_SOURCES = ## platform nodist sources -extcmd_module_LDADD = -extcmd_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -extcmd_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -extcmd_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -extcmd_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -extcmd_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_extcmd_module_SOURCES) -CLEANFILES += $(nodist_extcmd_module_SOURCES) -MOD_FILES += extcmd.mod -MARKER_FILES += extcmd.marker -CLEANFILES += extcmd.marker - -extcmd.marker: $(extcmd_module_SOURCES) $(nodist_extcmd_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(extcmd_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_qemu -platform_PROGRAMS += extcmd.module -MODULE_FILES += extcmd.module$(EXEEXT) -extcmd_module_SOURCES = commands/extcmd.c lib/arg.c ## platform sources -nodist_extcmd_module_SOURCES = ## platform nodist sources -extcmd_module_LDADD = -extcmd_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -extcmd_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -extcmd_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -extcmd_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -extcmd_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_extcmd_module_SOURCES) -CLEANFILES += $(nodist_extcmd_module_SOURCES) -MOD_FILES += extcmd.mod -MARKER_FILES += extcmd.marker -CLEANFILES += extcmd.marker - -extcmd.marker: $(extcmd_module_SOURCES) $(nodist_extcmd_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(extcmd_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_coreboot -platform_PROGRAMS += extcmd.module -MODULE_FILES += extcmd.module$(EXEEXT) -extcmd_module_SOURCES = commands/extcmd.c lib/arg.c ## platform sources -nodist_extcmd_module_SOURCES = ## platform nodist sources -extcmd_module_LDADD = -extcmd_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -extcmd_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -extcmd_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -extcmd_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -extcmd_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_extcmd_module_SOURCES) -CLEANFILES += $(nodist_extcmd_module_SOURCES) -MOD_FILES += extcmd.mod -MARKER_FILES += extcmd.marker -CLEANFILES += extcmd.marker - -extcmd.marker: $(extcmd_module_SOURCES) $(nodist_extcmd_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(extcmd_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_multiboot -platform_PROGRAMS += extcmd.module -MODULE_FILES += extcmd.module$(EXEEXT) -extcmd_module_SOURCES = commands/extcmd.c lib/arg.c ## platform sources -nodist_extcmd_module_SOURCES = ## platform nodist sources -extcmd_module_LDADD = -extcmd_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -extcmd_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -extcmd_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -extcmd_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -extcmd_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_extcmd_module_SOURCES) -CLEANFILES += $(nodist_extcmd_module_SOURCES) -MOD_FILES += extcmd.mod -MARKER_FILES += extcmd.marker -CLEANFILES += extcmd.marker - -extcmd.marker: $(extcmd_module_SOURCES) $(nodist_extcmd_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(extcmd_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_x86_64_efi -platform_PROGRAMS += extcmd.module -MODULE_FILES += extcmd.module$(EXEEXT) -extcmd_module_SOURCES = commands/extcmd.c lib/arg.c ## platform sources -nodist_extcmd_module_SOURCES = ## platform nodist sources -extcmd_module_LDADD = -extcmd_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -extcmd_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -extcmd_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -extcmd_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -extcmd_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_extcmd_module_SOURCES) -CLEANFILES += $(nodist_extcmd_module_SOURCES) -MOD_FILES += extcmd.mod -MARKER_FILES += extcmd.marker -CLEANFILES += extcmd.marker - -extcmd.marker: $(extcmd_module_SOURCES) $(nodist_extcmd_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(extcmd_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_ia64_efi -platform_PROGRAMS += extcmd.module -MODULE_FILES += extcmd.module$(EXEEXT) -extcmd_module_SOURCES = commands/extcmd.c lib/arg.c ## platform sources -nodist_extcmd_module_SOURCES = ## platform nodist sources -extcmd_module_LDADD = -extcmd_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -extcmd_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -extcmd_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -extcmd_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -extcmd_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_extcmd_module_SOURCES) -CLEANFILES += $(nodist_extcmd_module_SOURCES) -MOD_FILES += extcmd.mod -MARKER_FILES += extcmd.marker -CLEANFILES += extcmd.marker - -extcmd.marker: $(extcmd_module_SOURCES) $(nodist_extcmd_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(extcmd_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_arm_efi -platform_PROGRAMS += extcmd.module -MODULE_FILES += extcmd.module$(EXEEXT) -extcmd_module_SOURCES = commands/extcmd.c lib/arg.c ## platform sources -nodist_extcmd_module_SOURCES = ## platform nodist sources -extcmd_module_LDADD = -extcmd_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -extcmd_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -extcmd_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -extcmd_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -extcmd_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_extcmd_module_SOURCES) -CLEANFILES += $(nodist_extcmd_module_SOURCES) -MOD_FILES += extcmd.mod -MARKER_FILES += extcmd.marker -CLEANFILES += extcmd.marker - -extcmd.marker: $(extcmd_module_SOURCES) $(nodist_extcmd_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(extcmd_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_arm64_efi -platform_PROGRAMS += extcmd.module -MODULE_FILES += extcmd.module$(EXEEXT) -extcmd_module_SOURCES = commands/extcmd.c lib/arg.c ## platform sources -nodist_extcmd_module_SOURCES = ## platform nodist sources -extcmd_module_LDADD = -extcmd_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -extcmd_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -extcmd_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -extcmd_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -extcmd_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_extcmd_module_SOURCES) -CLEANFILES += $(nodist_extcmd_module_SOURCES) -MOD_FILES += extcmd.mod -MARKER_FILES += extcmd.marker -CLEANFILES += extcmd.marker - -extcmd.marker: $(extcmd_module_SOURCES) $(nodist_extcmd_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(extcmd_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_arm_coreboot -platform_PROGRAMS += extcmd.module -MODULE_FILES += extcmd.module$(EXEEXT) -extcmd_module_SOURCES = commands/extcmd.c lib/arg.c ## platform sources -nodist_extcmd_module_SOURCES = ## platform nodist sources -extcmd_module_LDADD = -extcmd_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -extcmd_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -extcmd_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -extcmd_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -extcmd_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_extcmd_module_SOURCES) -CLEANFILES += $(nodist_extcmd_module_SOURCES) -MOD_FILES += extcmd.mod -MARKER_FILES += extcmd.marker -CLEANFILES += extcmd.marker - -extcmd.marker: $(extcmd_module_SOURCES) $(nodist_extcmd_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(extcmd_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_riscv32_efi -platform_PROGRAMS += extcmd.module -MODULE_FILES += extcmd.module$(EXEEXT) -extcmd_module_SOURCES = commands/extcmd.c lib/arg.c ## platform sources -nodist_extcmd_module_SOURCES = ## platform nodist sources -extcmd_module_LDADD = -extcmd_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -extcmd_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -extcmd_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -extcmd_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -extcmd_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_extcmd_module_SOURCES) -CLEANFILES += $(nodist_extcmd_module_SOURCES) -MOD_FILES += extcmd.mod -MARKER_FILES += extcmd.marker -CLEANFILES += extcmd.marker - -extcmd.marker: $(extcmd_module_SOURCES) $(nodist_extcmd_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(extcmd_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_riscv64_efi -platform_PROGRAMS += extcmd.module -MODULE_FILES += extcmd.module$(EXEEXT) -extcmd_module_SOURCES = commands/extcmd.c lib/arg.c ## platform sources -nodist_extcmd_module_SOURCES = ## platform nodist sources -extcmd_module_LDADD = -extcmd_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -extcmd_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -extcmd_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -extcmd_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -extcmd_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_extcmd_module_SOURCES) -CLEANFILES += $(nodist_extcmd_module_SOURCES) -MOD_FILES += extcmd.mod -MARKER_FILES += extcmd.marker -CLEANFILES += extcmd.marker - -extcmd.marker: $(extcmd_module_SOURCES) $(nodist_extcmd_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(extcmd_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_efi -platform_PROGRAMS += fixvideo.module -MODULE_FILES += fixvideo.module$(EXEEXT) -fixvideo_module_SOURCES = commands/efi/fixvideo.c ## platform sources -nodist_fixvideo_module_SOURCES = ## platform nodist sources -fixvideo_module_LDADD = -fixvideo_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -fixvideo_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -fixvideo_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -fixvideo_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -fixvideo_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_fixvideo_module_SOURCES) -CLEANFILES += $(nodist_fixvideo_module_SOURCES) -MOD_FILES += fixvideo.mod -MARKER_FILES += fixvideo.marker -CLEANFILES += fixvideo.marker - -fixvideo.marker: $(fixvideo_module_SOURCES) $(nodist_fixvideo_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(fixvideo_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_x86_64_efi -platform_PROGRAMS += fixvideo.module -MODULE_FILES += fixvideo.module$(EXEEXT) -fixvideo_module_SOURCES = commands/efi/fixvideo.c ## platform sources -nodist_fixvideo_module_SOURCES = ## platform nodist sources -fixvideo_module_LDADD = -fixvideo_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -fixvideo_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -fixvideo_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -fixvideo_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -fixvideo_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_fixvideo_module_SOURCES) -CLEANFILES += $(nodist_fixvideo_module_SOURCES) -MOD_FILES += fixvideo.mod -MARKER_FILES += fixvideo.marker -CLEANFILES += fixvideo.marker - -fixvideo.marker: $(fixvideo_module_SOURCES) $(nodist_fixvideo_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(fixvideo_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif -platform_PROGRAMS += gptsync.module -MODULE_FILES += gptsync.module$(EXEEXT) -gptsync_module_SOURCES = commands/gptsync.c ## platform sources -nodist_gptsync_module_SOURCES = ## platform nodist sources -gptsync_module_LDADD = -gptsync_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -gptsync_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -gptsync_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -gptsync_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -gptsync_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_gptsync_module_SOURCES) -CLEANFILES += $(nodist_gptsync_module_SOURCES) -MOD_FILES += gptsync.mod -MARKER_FILES += gptsync.marker -CLEANFILES += gptsync.marker - -gptsync.marker: $(gptsync_module_SOURCES) $(nodist_gptsync_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gptsync_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -if COND_emu -platform_PROGRAMS += halt.module -MODULE_FILES += halt.module$(EXEEXT) -halt_module_SOURCES = lib/emu/halt.c commands/halt.c ## platform sources -nodist_halt_module_SOURCES = ## platform nodist sources -halt_module_LDADD = -halt_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -halt_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -halt_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -halt_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -halt_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_halt_module_SOURCES) -CLEANFILES += $(nodist_halt_module_SOURCES) -MOD_FILES += halt.mod -MARKER_FILES += halt.marker -CLEANFILES += halt.marker - -halt.marker: $(halt_module_SOURCES) $(nodist_halt_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(halt_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_pc -platform_PROGRAMS += halt.module -MODULE_FILES += halt.module$(EXEEXT) -halt_module_SOURCES = commands/i386/pc/halt.c commands/acpihalt.c ## platform sources -nodist_halt_module_SOURCES = ## platform nodist sources -halt_module_LDADD = -halt_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -halt_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -halt_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -halt_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -halt_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_halt_module_SOURCES) -CLEANFILES += $(nodist_halt_module_SOURCES) -MOD_FILES += halt.mod -MARKER_FILES += halt.marker -CLEANFILES += halt.marker - -halt.marker: $(halt_module_SOURCES) $(nodist_halt_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(halt_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_efi -platform_PROGRAMS += halt.module -MODULE_FILES += halt.module$(EXEEXT) -halt_module_SOURCES = commands/acpihalt.c lib/efi/halt.c commands/halt.c ## platform sources -nodist_halt_module_SOURCES = ## platform nodist sources -halt_module_LDADD = -halt_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -halt_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -halt_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -halt_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -halt_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_halt_module_SOURCES) -CLEANFILES += $(nodist_halt_module_SOURCES) -MOD_FILES += halt.mod -MARKER_FILES += halt.marker -CLEANFILES += halt.marker - -halt.marker: $(halt_module_SOURCES) $(nodist_halt_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(halt_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_qemu -platform_PROGRAMS += halt.module -MODULE_FILES += halt.module$(EXEEXT) -halt_module_SOURCES = lib/i386/halt.c commands/halt.c ## platform sources -nodist_halt_module_SOURCES = ## platform nodist sources -halt_module_LDADD = -halt_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -halt_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -halt_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -halt_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -halt_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_halt_module_SOURCES) -CLEANFILES += $(nodist_halt_module_SOURCES) -MOD_FILES += halt.mod -MARKER_FILES += halt.marker -CLEANFILES += halt.marker - -halt.marker: $(halt_module_SOURCES) $(nodist_halt_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(halt_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_coreboot -platform_PROGRAMS += halt.module -MODULE_FILES += halt.module$(EXEEXT) -halt_module_SOURCES = commands/acpihalt.c lib/i386/halt.c commands/halt.c ## platform sources -nodist_halt_module_SOURCES = ## platform nodist sources -halt_module_LDADD = -halt_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -halt_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -halt_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -halt_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -halt_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_halt_module_SOURCES) -CLEANFILES += $(nodist_halt_module_SOURCES) -MOD_FILES += halt.mod -MARKER_FILES += halt.marker -CLEANFILES += halt.marker - -halt.marker: $(halt_module_SOURCES) $(nodist_halt_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(halt_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_multiboot -platform_PROGRAMS += halt.module -MODULE_FILES += halt.module$(EXEEXT) -halt_module_SOURCES = commands/acpihalt.c lib/i386/halt.c commands/halt.c ## platform sources -nodist_halt_module_SOURCES = ## platform nodist sources -halt_module_LDADD = -halt_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -halt_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -halt_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -halt_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -halt_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_halt_module_SOURCES) -CLEANFILES += $(nodist_halt_module_SOURCES) -MOD_FILES += halt.mod -MARKER_FILES += halt.marker -CLEANFILES += halt.marker - -halt.marker: $(halt_module_SOURCES) $(nodist_halt_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(halt_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_ieee1275 -platform_PROGRAMS += halt.module -MODULE_FILES += halt.module$(EXEEXT) -halt_module_SOURCES = lib/ieee1275/halt.c commands/halt.c ## platform sources -nodist_halt_module_SOURCES = ## platform nodist sources -halt_module_LDADD = -halt_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -halt_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -halt_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -halt_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -halt_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_halt_module_SOURCES) -CLEANFILES += $(nodist_halt_module_SOURCES) -MOD_FILES += halt.mod -MARKER_FILES += halt.marker -CLEANFILES += halt.marker - -halt.marker: $(halt_module_SOURCES) $(nodist_halt_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(halt_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_x86_64_efi -platform_PROGRAMS += halt.module -MODULE_FILES += halt.module$(EXEEXT) -halt_module_SOURCES = commands/acpihalt.c lib/efi/halt.c commands/halt.c ## platform sources -nodist_halt_module_SOURCES = ## platform nodist sources -halt_module_LDADD = -halt_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -halt_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -halt_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -halt_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -halt_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_halt_module_SOURCES) -CLEANFILES += $(nodist_halt_module_SOURCES) -MOD_FILES += halt.mod -MARKER_FILES += halt.marker -CLEANFILES += halt.marker - -halt.marker: $(halt_module_SOURCES) $(nodist_halt_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(halt_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_xen -platform_PROGRAMS += halt.module -MODULE_FILES += halt.module$(EXEEXT) -halt_module_SOURCES = lib/xen/halt.c commands/halt.c ## platform sources -nodist_halt_module_SOURCES = ## platform nodist sources -halt_module_LDADD = -halt_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -halt_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -halt_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -halt_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -halt_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_halt_module_SOURCES) -CLEANFILES += $(nodist_halt_module_SOURCES) -MOD_FILES += halt.mod -MARKER_FILES += halt.marker -CLEANFILES += halt.marker - -halt.marker: $(halt_module_SOURCES) $(nodist_halt_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(halt_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_x86_64_xen -platform_PROGRAMS += halt.module -MODULE_FILES += halt.module$(EXEEXT) -halt_module_SOURCES = lib/xen/halt.c commands/halt.c ## platform sources -nodist_halt_module_SOURCES = ## platform nodist sources -halt_module_LDADD = -halt_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -halt_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -halt_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -halt_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -halt_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_halt_module_SOURCES) -CLEANFILES += $(nodist_halt_module_SOURCES) -MOD_FILES += halt.mod -MARKER_FILES += halt.marker -CLEANFILES += halt.marker - -halt.marker: $(halt_module_SOURCES) $(nodist_halt_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(halt_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_xen_pvh -platform_PROGRAMS += halt.module -MODULE_FILES += halt.module$(EXEEXT) -halt_module_SOURCES = lib/xen/halt.c commands/halt.c ## platform sources -nodist_halt_module_SOURCES = ## platform nodist sources -halt_module_LDADD = -halt_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -halt_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -halt_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -halt_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -halt_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_halt_module_SOURCES) -CLEANFILES += $(nodist_halt_module_SOURCES) -MOD_FILES += halt.mod -MARKER_FILES += halt.marker -CLEANFILES += halt.marker - -halt.marker: $(halt_module_SOURCES) $(nodist_halt_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(halt_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_mips_loongson -platform_PROGRAMS += halt.module -MODULE_FILES += halt.module$(EXEEXT) -halt_module_SOURCES = commands/halt.c ## platform sources -nodist_halt_module_SOURCES = ## platform nodist sources -halt_module_LDADD = -halt_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -halt_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -halt_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -halt_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -halt_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_halt_module_SOURCES) -CLEANFILES += $(nodist_halt_module_SOURCES) -MOD_FILES += halt.mod -MARKER_FILES += halt.marker -CLEANFILES += halt.marker - -halt.marker: $(halt_module_SOURCES) $(nodist_halt_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(halt_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_sparc64_ieee1275 -platform_PROGRAMS += halt.module -MODULE_FILES += halt.module$(EXEEXT) -halt_module_SOURCES = lib/ieee1275/halt.c commands/halt.c ## platform sources -nodist_halt_module_SOURCES = ## platform nodist sources -halt_module_LDADD = -halt_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -halt_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -halt_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -halt_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -halt_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_halt_module_SOURCES) -CLEANFILES += $(nodist_halt_module_SOURCES) -MOD_FILES += halt.mod -MARKER_FILES += halt.marker -CLEANFILES += halt.marker - -halt.marker: $(halt_module_SOURCES) $(nodist_halt_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(halt_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_powerpc_ieee1275 -platform_PROGRAMS += halt.module -MODULE_FILES += halt.module$(EXEEXT) -halt_module_SOURCES = lib/ieee1275/halt.c commands/halt.c ## platform sources -nodist_halt_module_SOURCES = ## platform nodist sources -halt_module_LDADD = -halt_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -halt_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -halt_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -halt_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -halt_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_halt_module_SOURCES) -CLEANFILES += $(nodist_halt_module_SOURCES) -MOD_FILES += halt.mod -MARKER_FILES += halt.marker -CLEANFILES += halt.marker - -halt.marker: $(halt_module_SOURCES) $(nodist_halt_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(halt_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_mips_arc -platform_PROGRAMS += halt.module -MODULE_FILES += halt.module$(EXEEXT) -halt_module_SOURCES = commands/halt.c ## platform sources -nodist_halt_module_SOURCES = ## platform nodist sources -halt_module_LDADD = -halt_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -halt_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -halt_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -halt_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -halt_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_halt_module_SOURCES) -CLEANFILES += $(nodist_halt_module_SOURCES) -MOD_FILES += halt.mod -MARKER_FILES += halt.marker -CLEANFILES += halt.marker - -halt.marker: $(halt_module_SOURCES) $(nodist_halt_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(halt_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_ia64_efi -platform_PROGRAMS += halt.module -MODULE_FILES += halt.module$(EXEEXT) -halt_module_SOURCES = lib/efi/halt.c commands/halt.c ## platform sources -nodist_halt_module_SOURCES = ## platform nodist sources -halt_module_LDADD = -halt_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -halt_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -halt_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -halt_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -halt_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_halt_module_SOURCES) -CLEANFILES += $(nodist_halt_module_SOURCES) -MOD_FILES += halt.mod -MARKER_FILES += halt.marker -CLEANFILES += halt.marker - -halt.marker: $(halt_module_SOURCES) $(nodist_halt_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(halt_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_mips_qemu_mips -platform_PROGRAMS += halt.module -MODULE_FILES += halt.module$(EXEEXT) -halt_module_SOURCES = commands/halt.c ## platform sources -nodist_halt_module_SOURCES = ## platform nodist sources -halt_module_LDADD = -halt_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -halt_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -halt_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -halt_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -halt_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_halt_module_SOURCES) -CLEANFILES += $(nodist_halt_module_SOURCES) -MOD_FILES += halt.mod -MARKER_FILES += halt.marker -CLEANFILES += halt.marker - -halt.marker: $(halt_module_SOURCES) $(nodist_halt_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(halt_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_arm_uboot -platform_PROGRAMS += halt.module -MODULE_FILES += halt.module$(EXEEXT) -halt_module_SOURCES = lib/dummy/halt.c commands/halt.c ## platform sources -nodist_halt_module_SOURCES = ## platform nodist sources -halt_module_LDADD = -halt_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -halt_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -halt_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -halt_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -halt_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_halt_module_SOURCES) -CLEANFILES += $(nodist_halt_module_SOURCES) -MOD_FILES += halt.mod -MARKER_FILES += halt.marker -CLEANFILES += halt.marker - -halt.marker: $(halt_module_SOURCES) $(nodist_halt_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(halt_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_arm_efi -platform_PROGRAMS += halt.module -MODULE_FILES += halt.module$(EXEEXT) -halt_module_SOURCES = lib/efi/halt.c commands/halt.c ## platform sources -nodist_halt_module_SOURCES = ## platform nodist sources -halt_module_LDADD = -halt_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -halt_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -halt_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -halt_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -halt_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_halt_module_SOURCES) -CLEANFILES += $(nodist_halt_module_SOURCES) -MOD_FILES += halt.mod -MARKER_FILES += halt.marker -CLEANFILES += halt.marker - -halt.marker: $(halt_module_SOURCES) $(nodist_halt_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(halt_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_arm64_efi -platform_PROGRAMS += halt.module -MODULE_FILES += halt.module$(EXEEXT) -halt_module_SOURCES = lib/efi/halt.c commands/halt.c ## platform sources -nodist_halt_module_SOURCES = ## platform nodist sources -halt_module_LDADD = -halt_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -halt_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -halt_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -halt_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -halt_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_halt_module_SOURCES) -CLEANFILES += $(nodist_halt_module_SOURCES) -MOD_FILES += halt.mod -MARKER_FILES += halt.marker -CLEANFILES += halt.marker - -halt.marker: $(halt_module_SOURCES) $(nodist_halt_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(halt_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_arm_coreboot -platform_PROGRAMS += halt.module -MODULE_FILES += halt.module$(EXEEXT) -halt_module_SOURCES = lib/dummy/halt.c commands/halt.c ## platform sources -nodist_halt_module_SOURCES = ## platform nodist sources -halt_module_LDADD = -halt_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -halt_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -halt_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -halt_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -halt_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_halt_module_SOURCES) -CLEANFILES += $(nodist_halt_module_SOURCES) -MOD_FILES += halt.mod -MARKER_FILES += halt.marker -CLEANFILES += halt.marker - -halt.marker: $(halt_module_SOURCES) $(nodist_halt_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(halt_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_riscv32_efi -platform_PROGRAMS += halt.module -MODULE_FILES += halt.module$(EXEEXT) -halt_module_SOURCES = lib/efi/halt.c commands/halt.c ## platform sources -nodist_halt_module_SOURCES = ## platform nodist sources -halt_module_LDADD = -halt_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -halt_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -halt_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -halt_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -halt_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_halt_module_SOURCES) -CLEANFILES += $(nodist_halt_module_SOURCES) -MOD_FILES += halt.mod -MARKER_FILES += halt.marker -CLEANFILES += halt.marker - -halt.marker: $(halt_module_SOURCES) $(nodist_halt_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(halt_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_riscv64_efi -platform_PROGRAMS += halt.module -MODULE_FILES += halt.module$(EXEEXT) -halt_module_SOURCES = lib/efi/halt.c commands/halt.c ## platform sources -nodist_halt_module_SOURCES = ## platform nodist sources -halt_module_LDADD = -halt_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -halt_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -halt_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -halt_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -halt_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_halt_module_SOURCES) -CLEANFILES += $(nodist_halt_module_SOURCES) -MOD_FILES += halt.mod -MARKER_FILES += halt.marker -CLEANFILES += halt.marker - -halt.marker: $(halt_module_SOURCES) $(nodist_halt_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(halt_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_emu -platform_PROGRAMS += reboot.module -MODULE_FILES += reboot.module$(EXEEXT) -reboot_module_SOURCES = commands/reboot.c ## platform sources -nodist_reboot_module_SOURCES = ## platform nodist sources -reboot_module_LDADD = -reboot_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -reboot_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -reboot_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -reboot_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -reboot_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_reboot_module_SOURCES) -CLEANFILES += $(nodist_reboot_module_SOURCES) -MOD_FILES += reboot.mod -MARKER_FILES += reboot.marker -CLEANFILES += reboot.marker - -reboot.marker: $(reboot_module_SOURCES) $(nodist_reboot_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(reboot_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_pc -platform_PROGRAMS += reboot.module -MODULE_FILES += reboot.module$(EXEEXT) -reboot_module_SOURCES = lib/i386/reboot.c lib/i386/reboot_trampoline.S commands/reboot.c ## platform sources -nodist_reboot_module_SOURCES = ## platform nodist sources -reboot_module_LDADD = -reboot_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -reboot_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -reboot_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -reboot_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -reboot_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_reboot_module_SOURCES) -CLEANFILES += $(nodist_reboot_module_SOURCES) -MOD_FILES += reboot.mod -MARKER_FILES += reboot.marker -CLEANFILES += reboot.marker - -reboot.marker: $(reboot_module_SOURCES) $(nodist_reboot_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(reboot_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_efi -platform_PROGRAMS += reboot.module -MODULE_FILES += reboot.module$(EXEEXT) -reboot_module_SOURCES = lib/i386/reboot.c lib/i386/reboot_trampoline.S commands/reboot.c ## platform sources -nodist_reboot_module_SOURCES = ## platform nodist sources -reboot_module_LDADD = -reboot_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -reboot_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -reboot_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -reboot_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -reboot_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_reboot_module_SOURCES) -CLEANFILES += $(nodist_reboot_module_SOURCES) -MOD_FILES += reboot.mod -MARKER_FILES += reboot.marker -CLEANFILES += reboot.marker - -reboot.marker: $(reboot_module_SOURCES) $(nodist_reboot_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(reboot_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_qemu -platform_PROGRAMS += reboot.module -MODULE_FILES += reboot.module$(EXEEXT) -reboot_module_SOURCES = lib/i386/reboot.c lib/i386/reboot_trampoline.S commands/reboot.c ## platform sources -nodist_reboot_module_SOURCES = ## platform nodist sources -reboot_module_LDADD = -reboot_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -reboot_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -reboot_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -reboot_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -reboot_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_reboot_module_SOURCES) -CLEANFILES += $(nodist_reboot_module_SOURCES) -MOD_FILES += reboot.mod -MARKER_FILES += reboot.marker -CLEANFILES += reboot.marker - -reboot.marker: $(reboot_module_SOURCES) $(nodist_reboot_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(reboot_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_coreboot -platform_PROGRAMS += reboot.module -MODULE_FILES += reboot.module$(EXEEXT) -reboot_module_SOURCES = lib/i386/reboot.c lib/i386/reboot_trampoline.S commands/reboot.c ## platform sources -nodist_reboot_module_SOURCES = ## platform nodist sources -reboot_module_LDADD = -reboot_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -reboot_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -reboot_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -reboot_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -reboot_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_reboot_module_SOURCES) -CLEANFILES += $(nodist_reboot_module_SOURCES) -MOD_FILES += reboot.mod -MARKER_FILES += reboot.marker -CLEANFILES += reboot.marker - -reboot.marker: $(reboot_module_SOURCES) $(nodist_reboot_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(reboot_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_multiboot -platform_PROGRAMS += reboot.module -MODULE_FILES += reboot.module$(EXEEXT) -reboot_module_SOURCES = lib/i386/reboot.c lib/i386/reboot_trampoline.S commands/reboot.c ## platform sources -nodist_reboot_module_SOURCES = ## platform nodist sources -reboot_module_LDADD = -reboot_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -reboot_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -reboot_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -reboot_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -reboot_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_reboot_module_SOURCES) -CLEANFILES += $(nodist_reboot_module_SOURCES) -MOD_FILES += reboot.mod -MARKER_FILES += reboot.marker -CLEANFILES += reboot.marker - -reboot.marker: $(reboot_module_SOURCES) $(nodist_reboot_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(reboot_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_ieee1275 -platform_PROGRAMS += reboot.module -MODULE_FILES += reboot.module$(EXEEXT) -reboot_module_SOURCES = lib/i386/reboot.c lib/i386/reboot_trampoline.S commands/reboot.c ## platform sources -nodist_reboot_module_SOURCES = ## platform nodist sources -reboot_module_LDADD = -reboot_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -reboot_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -reboot_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -reboot_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -reboot_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_reboot_module_SOURCES) -CLEANFILES += $(nodist_reboot_module_SOURCES) -MOD_FILES += reboot.mod -MARKER_FILES += reboot.marker -CLEANFILES += reboot.marker - -reboot.marker: $(reboot_module_SOURCES) $(nodist_reboot_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(reboot_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_x86_64_efi -platform_PROGRAMS += reboot.module -MODULE_FILES += reboot.module$(EXEEXT) -reboot_module_SOURCES = commands/reboot.c ## platform sources -nodist_reboot_module_SOURCES = ## platform nodist sources -reboot_module_LDADD = -reboot_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -reboot_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -reboot_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -reboot_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -reboot_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_reboot_module_SOURCES) -CLEANFILES += $(nodist_reboot_module_SOURCES) -MOD_FILES += reboot.mod -MARKER_FILES += reboot.marker -CLEANFILES += reboot.marker - -reboot.marker: $(reboot_module_SOURCES) $(nodist_reboot_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(reboot_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_xen -platform_PROGRAMS += reboot.module -MODULE_FILES += reboot.module$(EXEEXT) -reboot_module_SOURCES = lib/xen/reboot.c commands/reboot.c ## platform sources -nodist_reboot_module_SOURCES = ## platform nodist sources -reboot_module_LDADD = -reboot_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -reboot_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -reboot_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -reboot_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -reboot_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_reboot_module_SOURCES) -CLEANFILES += $(nodist_reboot_module_SOURCES) -MOD_FILES += reboot.mod -MARKER_FILES += reboot.marker -CLEANFILES += reboot.marker - -reboot.marker: $(reboot_module_SOURCES) $(nodist_reboot_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(reboot_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_x86_64_xen -platform_PROGRAMS += reboot.module -MODULE_FILES += reboot.module$(EXEEXT) -reboot_module_SOURCES = lib/xen/reboot.c commands/reboot.c ## platform sources -nodist_reboot_module_SOURCES = ## platform nodist sources -reboot_module_LDADD = -reboot_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -reboot_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -reboot_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -reboot_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -reboot_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_reboot_module_SOURCES) -CLEANFILES += $(nodist_reboot_module_SOURCES) -MOD_FILES += reboot.mod -MARKER_FILES += reboot.marker -CLEANFILES += reboot.marker - -reboot.marker: $(reboot_module_SOURCES) $(nodist_reboot_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(reboot_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_xen_pvh -platform_PROGRAMS += reboot.module -MODULE_FILES += reboot.module$(EXEEXT) -reboot_module_SOURCES = lib/xen/reboot.c commands/reboot.c ## platform sources -nodist_reboot_module_SOURCES = ## platform nodist sources -reboot_module_LDADD = -reboot_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -reboot_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -reboot_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -reboot_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -reboot_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_reboot_module_SOURCES) -CLEANFILES += $(nodist_reboot_module_SOURCES) -MOD_FILES += reboot.mod -MARKER_FILES += reboot.marker -CLEANFILES += reboot.marker - -reboot.marker: $(reboot_module_SOURCES) $(nodist_reboot_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(reboot_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_mips_loongson -platform_PROGRAMS += reboot.module -MODULE_FILES += reboot.module$(EXEEXT) -reboot_module_SOURCES = lib/mips/loongson/reboot.c commands/reboot.c ## platform sources -nodist_reboot_module_SOURCES = ## platform nodist sources -reboot_module_LDADD = -reboot_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -reboot_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -reboot_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -reboot_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -reboot_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_reboot_module_SOURCES) -CLEANFILES += $(nodist_reboot_module_SOURCES) -MOD_FILES += reboot.mod -MARKER_FILES += reboot.marker -CLEANFILES += reboot.marker - -reboot.marker: $(reboot_module_SOURCES) $(nodist_reboot_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(reboot_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_sparc64_ieee1275 -platform_PROGRAMS += reboot.module -MODULE_FILES += reboot.module$(EXEEXT) -reboot_module_SOURCES = lib/ieee1275/reboot.c commands/reboot.c ## platform sources -nodist_reboot_module_SOURCES = ## platform nodist sources -reboot_module_LDADD = -reboot_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -reboot_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -reboot_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -reboot_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -reboot_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_reboot_module_SOURCES) -CLEANFILES += $(nodist_reboot_module_SOURCES) -MOD_FILES += reboot.mod -MARKER_FILES += reboot.marker -CLEANFILES += reboot.marker - -reboot.marker: $(reboot_module_SOURCES) $(nodist_reboot_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(reboot_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_powerpc_ieee1275 -platform_PROGRAMS += reboot.module -MODULE_FILES += reboot.module$(EXEEXT) -reboot_module_SOURCES = lib/ieee1275/reboot.c commands/reboot.c ## platform sources -nodist_reboot_module_SOURCES = ## platform nodist sources -reboot_module_LDADD = -reboot_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -reboot_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -reboot_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -reboot_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -reboot_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_reboot_module_SOURCES) -CLEANFILES += $(nodist_reboot_module_SOURCES) -MOD_FILES += reboot.mod -MARKER_FILES += reboot.marker -CLEANFILES += reboot.marker - -reboot.marker: $(reboot_module_SOURCES) $(nodist_reboot_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(reboot_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_mips_arc -platform_PROGRAMS += reboot.module -MODULE_FILES += reboot.module$(EXEEXT) -reboot_module_SOURCES = lib/mips/arc/reboot.c commands/reboot.c ## platform sources -nodist_reboot_module_SOURCES = ## platform nodist sources -reboot_module_LDADD = -reboot_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -reboot_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -reboot_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -reboot_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -reboot_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_reboot_module_SOURCES) -CLEANFILES += $(nodist_reboot_module_SOURCES) -MOD_FILES += reboot.mod -MARKER_FILES += reboot.marker -CLEANFILES += reboot.marker - -reboot.marker: $(reboot_module_SOURCES) $(nodist_reboot_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(reboot_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_ia64_efi -platform_PROGRAMS += reboot.module -MODULE_FILES += reboot.module$(EXEEXT) -reboot_module_SOURCES = commands/reboot.c ## platform sources -nodist_reboot_module_SOURCES = ## platform nodist sources -reboot_module_LDADD = -reboot_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -reboot_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -reboot_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -reboot_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -reboot_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_reboot_module_SOURCES) -CLEANFILES += $(nodist_reboot_module_SOURCES) -MOD_FILES += reboot.mod -MARKER_FILES += reboot.marker -CLEANFILES += reboot.marker - -reboot.marker: $(reboot_module_SOURCES) $(nodist_reboot_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(reboot_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_mips_qemu_mips -platform_PROGRAMS += reboot.module -MODULE_FILES += reboot.module$(EXEEXT) -reboot_module_SOURCES = lib/mips/qemu_mips/reboot.c commands/reboot.c ## platform sources -nodist_reboot_module_SOURCES = ## platform nodist sources -reboot_module_LDADD = -reboot_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -reboot_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -reboot_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -reboot_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -reboot_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_reboot_module_SOURCES) -CLEANFILES += $(nodist_reboot_module_SOURCES) -MOD_FILES += reboot.mod -MARKER_FILES += reboot.marker -CLEANFILES += reboot.marker - -reboot.marker: $(reboot_module_SOURCES) $(nodist_reboot_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(reboot_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_arm_uboot -platform_PROGRAMS += reboot.module -MODULE_FILES += reboot.module$(EXEEXT) -reboot_module_SOURCES = lib/uboot/reboot.c commands/reboot.c ## platform sources -nodist_reboot_module_SOURCES = ## platform nodist sources -reboot_module_LDADD = -reboot_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -reboot_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -reboot_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -reboot_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -reboot_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_reboot_module_SOURCES) -CLEANFILES += $(nodist_reboot_module_SOURCES) -MOD_FILES += reboot.mod -MARKER_FILES += reboot.marker -CLEANFILES += reboot.marker - -reboot.marker: $(reboot_module_SOURCES) $(nodist_reboot_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(reboot_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_arm_efi -platform_PROGRAMS += reboot.module -MODULE_FILES += reboot.module$(EXEEXT) -reboot_module_SOURCES = commands/reboot.c ## platform sources -nodist_reboot_module_SOURCES = ## platform nodist sources -reboot_module_LDADD = -reboot_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -reboot_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -reboot_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -reboot_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -reboot_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_reboot_module_SOURCES) -CLEANFILES += $(nodist_reboot_module_SOURCES) -MOD_FILES += reboot.mod -MARKER_FILES += reboot.marker -CLEANFILES += reboot.marker - -reboot.marker: $(reboot_module_SOURCES) $(nodist_reboot_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(reboot_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_arm64_efi -platform_PROGRAMS += reboot.module -MODULE_FILES += reboot.module$(EXEEXT) -reboot_module_SOURCES = commands/reboot.c ## platform sources -nodist_reboot_module_SOURCES = ## platform nodist sources -reboot_module_LDADD = -reboot_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -reboot_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -reboot_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -reboot_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -reboot_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_reboot_module_SOURCES) -CLEANFILES += $(nodist_reboot_module_SOURCES) -MOD_FILES += reboot.mod -MARKER_FILES += reboot.marker -CLEANFILES += reboot.marker - -reboot.marker: $(reboot_module_SOURCES) $(nodist_reboot_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(reboot_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_arm_coreboot -platform_PROGRAMS += reboot.module -MODULE_FILES += reboot.module$(EXEEXT) -reboot_module_SOURCES = lib/dummy/reboot.c commands/reboot.c ## platform sources -nodist_reboot_module_SOURCES = ## platform nodist sources -reboot_module_LDADD = -reboot_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -reboot_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -reboot_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -reboot_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -reboot_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_reboot_module_SOURCES) -CLEANFILES += $(nodist_reboot_module_SOURCES) -MOD_FILES += reboot.mod -MARKER_FILES += reboot.marker -CLEANFILES += reboot.marker - -reboot.marker: $(reboot_module_SOURCES) $(nodist_reboot_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(reboot_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_riscv32_efi -platform_PROGRAMS += reboot.module -MODULE_FILES += reboot.module$(EXEEXT) -reboot_module_SOURCES = commands/reboot.c ## platform sources -nodist_reboot_module_SOURCES = ## platform nodist sources -reboot_module_LDADD = -reboot_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -reboot_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -reboot_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -reboot_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -reboot_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_reboot_module_SOURCES) -CLEANFILES += $(nodist_reboot_module_SOURCES) -MOD_FILES += reboot.mod -MARKER_FILES += reboot.marker -CLEANFILES += reboot.marker - -reboot.marker: $(reboot_module_SOURCES) $(nodist_reboot_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(reboot_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_riscv64_efi -platform_PROGRAMS += reboot.module -MODULE_FILES += reboot.module$(EXEEXT) -reboot_module_SOURCES = commands/reboot.c ## platform sources -nodist_reboot_module_SOURCES = ## platform nodist sources -reboot_module_LDADD = -reboot_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -reboot_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -reboot_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -reboot_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -reboot_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_reboot_module_SOURCES) -CLEANFILES += $(nodist_reboot_module_SOURCES) -MOD_FILES += reboot.mod -MARKER_FILES += reboot.marker -CLEANFILES += reboot.marker - -reboot.marker: $(reboot_module_SOURCES) $(nodist_reboot_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(reboot_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif -platform_PROGRAMS += hashsum.module -MODULE_FILES += hashsum.module$(EXEEXT) -hashsum_module_SOURCES = commands/hashsum.c ## platform sources -nodist_hashsum_module_SOURCES = ## platform nodist sources -hashsum_module_LDADD = -hashsum_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -hashsum_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -hashsum_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -hashsum_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -hashsum_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_hashsum_module_SOURCES) -CLEANFILES += $(nodist_hashsum_module_SOURCES) -MOD_FILES += hashsum.mod -MARKER_FILES += hashsum.marker -CLEANFILES += hashsum.marker - -hashsum.marker: $(hashsum_module_SOURCES) $(nodist_hashsum_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(hashsum_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += pgp.module -MODULE_FILES += pgp.module$(EXEEXT) -pgp_module_SOURCES = commands/pgp.c ## platform sources -nodist_pgp_module_SOURCES = ## platform nodist sources -pgp_module_LDADD = -pgp_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) $(CFLAGS_POSIX) -pgp_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -pgp_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -I$(srcdir)/lib/posix_wrap -pgp_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -pgp_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_pgp_module_SOURCES) -CLEANFILES += $(nodist_pgp_module_SOURCES) -MOD_FILES += pgp.mod -MARKER_FILES += pgp.marker -CLEANFILES += pgp.marker - -pgp.marker: $(pgp_module_SOURCES) $(nodist_pgp_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(pgp_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += verifiers.module -MODULE_FILES += verifiers.module$(EXEEXT) -verifiers_module_SOURCES = commands/verifiers.c ## platform sources -nodist_verifiers_module_SOURCES = ## platform nodist sources -verifiers_module_LDADD = -verifiers_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -verifiers_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -verifiers_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -verifiers_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -verifiers_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_verifiers_module_SOURCES) -CLEANFILES += $(nodist_verifiers_module_SOURCES) -MOD_FILES += verifiers.mod -MARKER_FILES += verifiers.marker -CLEANFILES += verifiers.marker - -verifiers.marker: $(verifiers_module_SOURCES) $(nodist_verifiers_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(verifiers_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -if COND_x86_64_efi -platform_PROGRAMS += shim_lock.module -MODULE_FILES += shim_lock.module$(EXEEXT) -shim_lock_module_SOURCES = commands/efi/shim_lock.c ## platform sources -nodist_shim_lock_module_SOURCES = ## platform nodist sources -shim_lock_module_LDADD = -shim_lock_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -shim_lock_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -shim_lock_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -shim_lock_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -shim_lock_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_shim_lock_module_SOURCES) -CLEANFILES += $(nodist_shim_lock_module_SOURCES) -MOD_FILES += shim_lock.mod -MARKER_FILES += shim_lock.marker -CLEANFILES += shim_lock.marker - -shim_lock.marker: $(shim_lock_module_SOURCES) $(nodist_shim_lock_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(shim_lock_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_pc -platform_PROGRAMS += hdparm.module -MODULE_FILES += hdparm.module$(EXEEXT) -hdparm_module_SOURCES = commands/hdparm.c ## platform sources -nodist_hdparm_module_SOURCES = ## platform nodist sources -hdparm_module_LDADD = -hdparm_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -hdparm_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -hdparm_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -hdparm_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -hdparm_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_hdparm_module_SOURCES) -CLEANFILES += $(nodist_hdparm_module_SOURCES) -MOD_FILES += hdparm.mod -MARKER_FILES += hdparm.marker -CLEANFILES += hdparm.marker - -hdparm.marker: $(hdparm_module_SOURCES) $(nodist_hdparm_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(hdparm_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_efi -platform_PROGRAMS += hdparm.module -MODULE_FILES += hdparm.module$(EXEEXT) -hdparm_module_SOURCES = commands/hdparm.c ## platform sources -nodist_hdparm_module_SOURCES = ## platform nodist sources -hdparm_module_LDADD = -hdparm_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -hdparm_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -hdparm_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -hdparm_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -hdparm_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_hdparm_module_SOURCES) -CLEANFILES += $(nodist_hdparm_module_SOURCES) -MOD_FILES += hdparm.mod -MARKER_FILES += hdparm.marker -CLEANFILES += hdparm.marker - -hdparm.marker: $(hdparm_module_SOURCES) $(nodist_hdparm_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(hdparm_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_qemu -platform_PROGRAMS += hdparm.module -MODULE_FILES += hdparm.module$(EXEEXT) -hdparm_module_SOURCES = commands/hdparm.c ## platform sources -nodist_hdparm_module_SOURCES = ## platform nodist sources -hdparm_module_LDADD = -hdparm_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -hdparm_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -hdparm_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -hdparm_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -hdparm_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_hdparm_module_SOURCES) -CLEANFILES += $(nodist_hdparm_module_SOURCES) -MOD_FILES += hdparm.mod -MARKER_FILES += hdparm.marker -CLEANFILES += hdparm.marker - -hdparm.marker: $(hdparm_module_SOURCES) $(nodist_hdparm_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(hdparm_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_coreboot -platform_PROGRAMS += hdparm.module -MODULE_FILES += hdparm.module$(EXEEXT) -hdparm_module_SOURCES = commands/hdparm.c ## platform sources -nodist_hdparm_module_SOURCES = ## platform nodist sources -hdparm_module_LDADD = -hdparm_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -hdparm_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -hdparm_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -hdparm_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -hdparm_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_hdparm_module_SOURCES) -CLEANFILES += $(nodist_hdparm_module_SOURCES) -MOD_FILES += hdparm.mod -MARKER_FILES += hdparm.marker -CLEANFILES += hdparm.marker - -hdparm.marker: $(hdparm_module_SOURCES) $(nodist_hdparm_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(hdparm_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_multiboot -platform_PROGRAMS += hdparm.module -MODULE_FILES += hdparm.module$(EXEEXT) -hdparm_module_SOURCES = commands/hdparm.c ## platform sources -nodist_hdparm_module_SOURCES = ## platform nodist sources -hdparm_module_LDADD = -hdparm_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -hdparm_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -hdparm_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -hdparm_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -hdparm_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_hdparm_module_SOURCES) -CLEANFILES += $(nodist_hdparm_module_SOURCES) -MOD_FILES += hdparm.mod -MARKER_FILES += hdparm.marker -CLEANFILES += hdparm.marker - -hdparm.marker: $(hdparm_module_SOURCES) $(nodist_hdparm_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(hdparm_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_ieee1275 -platform_PROGRAMS += hdparm.module -MODULE_FILES += hdparm.module$(EXEEXT) -hdparm_module_SOURCES = commands/hdparm.c ## platform sources -nodist_hdparm_module_SOURCES = ## platform nodist sources -hdparm_module_LDADD = -hdparm_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -hdparm_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -hdparm_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -hdparm_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -hdparm_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_hdparm_module_SOURCES) -CLEANFILES += $(nodist_hdparm_module_SOURCES) -MOD_FILES += hdparm.mod -MARKER_FILES += hdparm.marker -CLEANFILES += hdparm.marker - -hdparm.marker: $(hdparm_module_SOURCES) $(nodist_hdparm_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(hdparm_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_x86_64_efi -platform_PROGRAMS += hdparm.module -MODULE_FILES += hdparm.module$(EXEEXT) -hdparm_module_SOURCES = commands/hdparm.c ## platform sources -nodist_hdparm_module_SOURCES = ## platform nodist sources -hdparm_module_LDADD = -hdparm_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -hdparm_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -hdparm_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -hdparm_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -hdparm_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_hdparm_module_SOURCES) -CLEANFILES += $(nodist_hdparm_module_SOURCES) -MOD_FILES += hdparm.mod -MARKER_FILES += hdparm.marker -CLEANFILES += hdparm.marker - -hdparm.marker: $(hdparm_module_SOURCES) $(nodist_hdparm_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(hdparm_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_mips_loongson -platform_PROGRAMS += hdparm.module -MODULE_FILES += hdparm.module$(EXEEXT) -hdparm_module_SOURCES = commands/hdparm.c ## platform sources -nodist_hdparm_module_SOURCES = ## platform nodist sources -hdparm_module_LDADD = -hdparm_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -hdparm_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -hdparm_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -hdparm_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -hdparm_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_hdparm_module_SOURCES) -CLEANFILES += $(nodist_hdparm_module_SOURCES) -MOD_FILES += hdparm.mod -MARKER_FILES += hdparm.marker -CLEANFILES += hdparm.marker - -hdparm.marker: $(hdparm_module_SOURCES) $(nodist_hdparm_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(hdparm_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_mips_qemu_mips -platform_PROGRAMS += hdparm.module -MODULE_FILES += hdparm.module$(EXEEXT) -hdparm_module_SOURCES = commands/hdparm.c ## platform sources -nodist_hdparm_module_SOURCES = ## platform nodist sources -hdparm_module_LDADD = -hdparm_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -hdparm_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -hdparm_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -hdparm_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -hdparm_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_hdparm_module_SOURCES) -CLEANFILES += $(nodist_hdparm_module_SOURCES) -MOD_FILES += hdparm.mod -MARKER_FILES += hdparm.marker -CLEANFILES += hdparm.marker - -hdparm.marker: $(hdparm_module_SOURCES) $(nodist_hdparm_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(hdparm_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif -platform_PROGRAMS += help.module -MODULE_FILES += help.module$(EXEEXT) -help_module_SOURCES = commands/help.c ## platform sources -nodist_help_module_SOURCES = ## platform nodist sources -help_module_LDADD = -help_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -help_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -help_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -help_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -help_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_help_module_SOURCES) -CLEANFILES += $(nodist_help_module_SOURCES) -MOD_FILES += help.mod -MARKER_FILES += help.marker -CLEANFILES += help.marker - -help.marker: $(help_module_SOURCES) $(nodist_help_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(help_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += hexdump.module -MODULE_FILES += hexdump.module$(EXEEXT) -hexdump_module_SOURCES = commands/hexdump.c lib/hexdump.c ## platform sources -nodist_hexdump_module_SOURCES = ## platform nodist sources -hexdump_module_LDADD = -hexdump_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -hexdump_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -hexdump_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -hexdump_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -hexdump_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_hexdump_module_SOURCES) -CLEANFILES += $(nodist_hexdump_module_SOURCES) -MOD_FILES += hexdump.mod -MARKER_FILES += hexdump.marker -CLEANFILES += hexdump.marker - -hexdump.marker: $(hexdump_module_SOURCES) $(nodist_hexdump_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(hexdump_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += keystatus.module -MODULE_FILES += keystatus.module$(EXEEXT) -keystatus_module_SOURCES = commands/keystatus.c ## platform sources -nodist_keystatus_module_SOURCES = ## platform nodist sources -keystatus_module_LDADD = -keystatus_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -keystatus_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -keystatus_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -keystatus_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -keystatus_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_keystatus_module_SOURCES) -CLEANFILES += $(nodist_keystatus_module_SOURCES) -MOD_FILES += keystatus.mod -MARKER_FILES += keystatus.marker -CLEANFILES += keystatus.marker - -keystatus.marker: $(keystatus_module_SOURCES) $(nodist_keystatus_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(keystatus_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -if COND_i386_efi -platform_PROGRAMS += loadbios.module -MODULE_FILES += loadbios.module$(EXEEXT) -loadbios_module_SOURCES = commands/efi/loadbios.c ## platform sources -nodist_loadbios_module_SOURCES = ## platform nodist sources -loadbios_module_LDADD = -loadbios_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -loadbios_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -loadbios_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -loadbios_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -loadbios_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_loadbios_module_SOURCES) -CLEANFILES += $(nodist_loadbios_module_SOURCES) -MOD_FILES += loadbios.mod -MARKER_FILES += loadbios.marker -CLEANFILES += loadbios.marker - -loadbios.marker: $(loadbios_module_SOURCES) $(nodist_loadbios_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(loadbios_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_x86_64_efi -platform_PROGRAMS += loadbios.module -MODULE_FILES += loadbios.module$(EXEEXT) -loadbios_module_SOURCES = commands/efi/loadbios.c ## platform sources -nodist_loadbios_module_SOURCES = ## platform nodist sources -loadbios_module_LDADD = -loadbios_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -loadbios_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -loadbios_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -loadbios_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -loadbios_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_loadbios_module_SOURCES) -CLEANFILES += $(nodist_loadbios_module_SOURCES) -MOD_FILES += loadbios.mod -MARKER_FILES += loadbios.marker -CLEANFILES += loadbios.marker - -loadbios.marker: $(loadbios_module_SOURCES) $(nodist_loadbios_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(loadbios_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif -platform_PROGRAMS += loadenv.module -MODULE_FILES += loadenv.module$(EXEEXT) -loadenv_module_SOURCES = commands/loadenv.c lib/envblk.c ## platform sources -nodist_loadenv_module_SOURCES = ## platform nodist sources -loadenv_module_LDADD = -loadenv_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -loadenv_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -loadenv_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -loadenv_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -loadenv_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_loadenv_module_SOURCES) -CLEANFILES += $(nodist_loadenv_module_SOURCES) -MOD_FILES += loadenv.mod -MARKER_FILES += loadenv.marker -CLEANFILES += loadenv.marker - -loadenv.marker: $(loadenv_module_SOURCES) $(nodist_loadenv_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(loadenv_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += ls.module -MODULE_FILES += ls.module$(EXEEXT) -ls_module_SOURCES = commands/ls.c ## platform sources -nodist_ls_module_SOURCES = ## platform nodist sources -ls_module_LDADD = -ls_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -ls_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -ls_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -ls_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -ls_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_ls_module_SOURCES) -CLEANFILES += $(nodist_ls_module_SOURCES) -MOD_FILES += ls.mod -MARKER_FILES += ls.marker -CLEANFILES += ls.marker - -ls.marker: $(ls_module_SOURCES) $(nodist_ls_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ls_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += lsmmap.module -MODULE_FILES += lsmmap.module$(EXEEXT) -lsmmap_module_SOURCES = commands/lsmmap.c ## platform sources -nodist_lsmmap_module_SOURCES = ## platform nodist sources -lsmmap_module_LDADD = -lsmmap_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -lsmmap_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -lsmmap_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -lsmmap_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -lsmmap_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_lsmmap_module_SOURCES) -CLEANFILES += $(nodist_lsmmap_module_SOURCES) -MOD_FILES += lsmmap.mod -MARKER_FILES += lsmmap.marker -CLEANFILES += lsmmap.marker - -lsmmap.marker: $(lsmmap_module_SOURCES) $(nodist_lsmmap_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lsmmap_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -if COND_i386_pc -platform_PROGRAMS += lspci.module -MODULE_FILES += lspci.module$(EXEEXT) -lspci_module_SOURCES = commands/lspci.c ## platform sources -nodist_lspci_module_SOURCES = ## platform nodist sources -lspci_module_LDADD = -lspci_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -lspci_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -lspci_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -lspci_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -lspci_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_lspci_module_SOURCES) -CLEANFILES += $(nodist_lspci_module_SOURCES) -MOD_FILES += lspci.mod -MARKER_FILES += lspci.marker -CLEANFILES += lspci.marker - -lspci.marker: $(lspci_module_SOURCES) $(nodist_lspci_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lspci_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_efi -platform_PROGRAMS += lspci.module -MODULE_FILES += lspci.module$(EXEEXT) -lspci_module_SOURCES = commands/lspci.c ## platform sources -nodist_lspci_module_SOURCES = ## platform nodist sources -lspci_module_LDADD = -lspci_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -lspci_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -lspci_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -lspci_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -lspci_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_lspci_module_SOURCES) -CLEANFILES += $(nodist_lspci_module_SOURCES) -MOD_FILES += lspci.mod -MARKER_FILES += lspci.marker -CLEANFILES += lspci.marker - -lspci.marker: $(lspci_module_SOURCES) $(nodist_lspci_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lspci_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_qemu -platform_PROGRAMS += lspci.module -MODULE_FILES += lspci.module$(EXEEXT) -lspci_module_SOURCES = commands/lspci.c ## platform sources -nodist_lspci_module_SOURCES = ## platform nodist sources -lspci_module_LDADD = -lspci_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -lspci_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -lspci_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -lspci_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -lspci_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_lspci_module_SOURCES) -CLEANFILES += $(nodist_lspci_module_SOURCES) -MOD_FILES += lspci.mod -MARKER_FILES += lspci.marker -CLEANFILES += lspci.marker - -lspci.marker: $(lspci_module_SOURCES) $(nodist_lspci_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lspci_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_coreboot -platform_PROGRAMS += lspci.module -MODULE_FILES += lspci.module$(EXEEXT) -lspci_module_SOURCES = commands/lspci.c ## platform sources -nodist_lspci_module_SOURCES = ## platform nodist sources -lspci_module_LDADD = -lspci_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -lspci_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -lspci_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -lspci_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -lspci_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_lspci_module_SOURCES) -CLEANFILES += $(nodist_lspci_module_SOURCES) -MOD_FILES += lspci.mod -MARKER_FILES += lspci.marker -CLEANFILES += lspci.marker - -lspci.marker: $(lspci_module_SOURCES) $(nodist_lspci_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lspci_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_multiboot -platform_PROGRAMS += lspci.module -MODULE_FILES += lspci.module$(EXEEXT) -lspci_module_SOURCES = commands/lspci.c ## platform sources -nodist_lspci_module_SOURCES = ## platform nodist sources -lspci_module_LDADD = -lspci_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -lspci_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -lspci_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -lspci_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -lspci_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_lspci_module_SOURCES) -CLEANFILES += $(nodist_lspci_module_SOURCES) -MOD_FILES += lspci.mod -MARKER_FILES += lspci.marker -CLEANFILES += lspci.marker - -lspci.marker: $(lspci_module_SOURCES) $(nodist_lspci_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lspci_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_ieee1275 -platform_PROGRAMS += lspci.module -MODULE_FILES += lspci.module$(EXEEXT) -lspci_module_SOURCES = commands/lspci.c ## platform sources -nodist_lspci_module_SOURCES = ## platform nodist sources -lspci_module_LDADD = -lspci_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -lspci_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -lspci_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -lspci_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -lspci_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_lspci_module_SOURCES) -CLEANFILES += $(nodist_lspci_module_SOURCES) -MOD_FILES += lspci.mod -MARKER_FILES += lspci.marker -CLEANFILES += lspci.marker - -lspci.marker: $(lspci_module_SOURCES) $(nodist_lspci_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lspci_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_x86_64_efi -platform_PROGRAMS += lspci.module -MODULE_FILES += lspci.module$(EXEEXT) -lspci_module_SOURCES = commands/lspci.c ## platform sources -nodist_lspci_module_SOURCES = ## platform nodist sources -lspci_module_LDADD = -lspci_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -lspci_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -lspci_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -lspci_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -lspci_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_lspci_module_SOURCES) -CLEANFILES += $(nodist_lspci_module_SOURCES) -MOD_FILES += lspci.mod -MARKER_FILES += lspci.marker -CLEANFILES += lspci.marker - -lspci.marker: $(lspci_module_SOURCES) $(nodist_lspci_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lspci_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_mips_loongson -platform_PROGRAMS += lspci.module -MODULE_FILES += lspci.module$(EXEEXT) -lspci_module_SOURCES = commands/lspci.c ## platform sources -nodist_lspci_module_SOURCES = ## platform nodist sources -lspci_module_LDADD = -lspci_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -lspci_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -lspci_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -lspci_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -lspci_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_lspci_module_SOURCES) -CLEANFILES += $(nodist_lspci_module_SOURCES) -MOD_FILES += lspci.mod -MARKER_FILES += lspci.marker -CLEANFILES += lspci.marker - -lspci.marker: $(lspci_module_SOURCES) $(nodist_lspci_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lspci_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif -platform_PROGRAMS += memrw.module -MODULE_FILES += memrw.module$(EXEEXT) -memrw_module_SOURCES = commands/memrw.c ## platform sources -nodist_memrw_module_SOURCES = ## platform nodist sources -memrw_module_LDADD = -memrw_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -memrw_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -memrw_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -memrw_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -memrw_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_memrw_module_SOURCES) -CLEANFILES += $(nodist_memrw_module_SOURCES) -MOD_FILES += memrw.mod -MARKER_FILES += memrw.marker -CLEANFILES += memrw.marker - -memrw.marker: $(memrw_module_SOURCES) $(nodist_memrw_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(memrw_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += minicmd.module -MODULE_FILES += minicmd.module$(EXEEXT) -minicmd_module_SOURCES = commands/minicmd.c ## platform sources -nodist_minicmd_module_SOURCES = ## platform nodist sources -minicmd_module_LDADD = -minicmd_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -minicmd_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -minicmd_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -minicmd_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -minicmd_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_minicmd_module_SOURCES) -CLEANFILES += $(nodist_minicmd_module_SOURCES) -MOD_FILES += minicmd.mod -MARKER_FILES += minicmd.marker -CLEANFILES += minicmd.marker - -minicmd.marker: $(minicmd_module_SOURCES) $(nodist_minicmd_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(minicmd_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += parttool.module -MODULE_FILES += parttool.module$(EXEEXT) -parttool_module_SOURCES = commands/parttool.c ## platform sources -nodist_parttool_module_SOURCES = ## platform nodist sources -parttool_module_LDADD = -parttool_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -parttool_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -parttool_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -parttool_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -parttool_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_parttool_module_SOURCES) -CLEANFILES += $(nodist_parttool_module_SOURCES) -MOD_FILES += parttool.mod -MARKER_FILES += parttool.marker -CLEANFILES += parttool.marker - -parttool.marker: $(parttool_module_SOURCES) $(nodist_parttool_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(parttool_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += password.module -MODULE_FILES += password.module$(EXEEXT) -password_module_SOURCES = commands/password.c ## platform sources -nodist_password_module_SOURCES = ## platform nodist sources -password_module_LDADD = -password_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -password_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -password_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -password_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -password_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_password_module_SOURCES) -CLEANFILES += $(nodist_password_module_SOURCES) -MOD_FILES += password.mod -MARKER_FILES += password.marker -CLEANFILES += password.marker - -password.marker: $(password_module_SOURCES) $(nodist_password_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(password_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += password_pbkdf2.module -MODULE_FILES += password_pbkdf2.module$(EXEEXT) -password_pbkdf2_module_SOURCES = commands/password_pbkdf2.c ## platform sources -nodist_password_pbkdf2_module_SOURCES = ## platform nodist sources -password_pbkdf2_module_LDADD = -password_pbkdf2_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -password_pbkdf2_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -password_pbkdf2_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -password_pbkdf2_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -password_pbkdf2_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_password_pbkdf2_module_SOURCES) -CLEANFILES += $(nodist_password_pbkdf2_module_SOURCES) -MOD_FILES += password_pbkdf2.mod -MARKER_FILES += password_pbkdf2.marker -CLEANFILES += password_pbkdf2.marker - -password_pbkdf2.marker: $(password_pbkdf2_module_SOURCES) $(nodist_password_pbkdf2_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(password_pbkdf2_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -if COND_i386_pc -platform_PROGRAMS += play.module -MODULE_FILES += play.module$(EXEEXT) -play_module_SOURCES = commands/i386/pc/play.c ## platform sources -nodist_play_module_SOURCES = ## platform nodist sources -play_module_LDADD = -play_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -play_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -play_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -play_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -play_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_play_module_SOURCES) -CLEANFILES += $(nodist_play_module_SOURCES) -MOD_FILES += play.mod -MARKER_FILES += play.marker -CLEANFILES += play.marker - -play.marker: $(play_module_SOURCES) $(nodist_play_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(play_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_efi -platform_PROGRAMS += play.module -MODULE_FILES += play.module$(EXEEXT) -play_module_SOURCES = commands/i386/pc/play.c ## platform sources -nodist_play_module_SOURCES = ## platform nodist sources -play_module_LDADD = -play_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -play_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -play_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -play_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -play_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_play_module_SOURCES) -CLEANFILES += $(nodist_play_module_SOURCES) -MOD_FILES += play.mod -MARKER_FILES += play.marker -CLEANFILES += play.marker - -play.marker: $(play_module_SOURCES) $(nodist_play_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(play_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_qemu -platform_PROGRAMS += play.module -MODULE_FILES += play.module$(EXEEXT) -play_module_SOURCES = commands/i386/pc/play.c ## platform sources -nodist_play_module_SOURCES = ## platform nodist sources -play_module_LDADD = -play_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -play_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -play_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -play_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -play_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_play_module_SOURCES) -CLEANFILES += $(nodist_play_module_SOURCES) -MOD_FILES += play.mod -MARKER_FILES += play.marker -CLEANFILES += play.marker - -play.marker: $(play_module_SOURCES) $(nodist_play_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(play_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_coreboot -platform_PROGRAMS += play.module -MODULE_FILES += play.module$(EXEEXT) -play_module_SOURCES = commands/i386/pc/play.c ## platform sources -nodist_play_module_SOURCES = ## platform nodist sources -play_module_LDADD = -play_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -play_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -play_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -play_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -play_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_play_module_SOURCES) -CLEANFILES += $(nodist_play_module_SOURCES) -MOD_FILES += play.mod -MARKER_FILES += play.marker -CLEANFILES += play.marker - -play.marker: $(play_module_SOURCES) $(nodist_play_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(play_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_multiboot -platform_PROGRAMS += play.module -MODULE_FILES += play.module$(EXEEXT) -play_module_SOURCES = commands/i386/pc/play.c ## platform sources -nodist_play_module_SOURCES = ## platform nodist sources -play_module_LDADD = -play_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -play_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -play_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -play_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -play_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_play_module_SOURCES) -CLEANFILES += $(nodist_play_module_SOURCES) -MOD_FILES += play.mod -MARKER_FILES += play.marker -CLEANFILES += play.marker - -play.marker: $(play_module_SOURCES) $(nodist_play_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(play_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_ieee1275 -platform_PROGRAMS += play.module -MODULE_FILES += play.module$(EXEEXT) -play_module_SOURCES = commands/i386/pc/play.c ## platform sources -nodist_play_module_SOURCES = ## platform nodist sources -play_module_LDADD = -play_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -play_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -play_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -play_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -play_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_play_module_SOURCES) -CLEANFILES += $(nodist_play_module_SOURCES) -MOD_FILES += play.mod -MARKER_FILES += play.marker -CLEANFILES += play.marker - -play.marker: $(play_module_SOURCES) $(nodist_play_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(play_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_x86_64_efi -platform_PROGRAMS += play.module -MODULE_FILES += play.module$(EXEEXT) -play_module_SOURCES = commands/i386/pc/play.c ## platform sources -nodist_play_module_SOURCES = ## platform nodist sources -play_module_LDADD = -play_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -play_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -play_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -play_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -play_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_play_module_SOURCES) -CLEANFILES += $(nodist_play_module_SOURCES) -MOD_FILES += play.mod -MARKER_FILES += play.marker -CLEANFILES += play.marker - -play.marker: $(play_module_SOURCES) $(nodist_play_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(play_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_pc -platform_PROGRAMS += spkmodem.module -MODULE_FILES += spkmodem.module$(EXEEXT) -spkmodem_module_SOURCES = term/spkmodem.c ## platform sources -nodist_spkmodem_module_SOURCES = ## platform nodist sources -spkmodem_module_LDADD = -spkmodem_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -spkmodem_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -spkmodem_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -spkmodem_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -spkmodem_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_spkmodem_module_SOURCES) -CLEANFILES += $(nodist_spkmodem_module_SOURCES) -MOD_FILES += spkmodem.mod -MARKER_FILES += spkmodem.marker -CLEANFILES += spkmodem.marker - -spkmodem.marker: $(spkmodem_module_SOURCES) $(nodist_spkmodem_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(spkmodem_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_efi -platform_PROGRAMS += spkmodem.module -MODULE_FILES += spkmodem.module$(EXEEXT) -spkmodem_module_SOURCES = term/spkmodem.c ## platform sources -nodist_spkmodem_module_SOURCES = ## platform nodist sources -spkmodem_module_LDADD = -spkmodem_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -spkmodem_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -spkmodem_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -spkmodem_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -spkmodem_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_spkmodem_module_SOURCES) -CLEANFILES += $(nodist_spkmodem_module_SOURCES) -MOD_FILES += spkmodem.mod -MARKER_FILES += spkmodem.marker -CLEANFILES += spkmodem.marker - -spkmodem.marker: $(spkmodem_module_SOURCES) $(nodist_spkmodem_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(spkmodem_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_qemu -platform_PROGRAMS += spkmodem.module -MODULE_FILES += spkmodem.module$(EXEEXT) -spkmodem_module_SOURCES = term/spkmodem.c ## platform sources -nodist_spkmodem_module_SOURCES = ## platform nodist sources -spkmodem_module_LDADD = -spkmodem_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -spkmodem_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -spkmodem_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -spkmodem_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -spkmodem_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_spkmodem_module_SOURCES) -CLEANFILES += $(nodist_spkmodem_module_SOURCES) -MOD_FILES += spkmodem.mod -MARKER_FILES += spkmodem.marker -CLEANFILES += spkmodem.marker - -spkmodem.marker: $(spkmodem_module_SOURCES) $(nodist_spkmodem_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(spkmodem_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_coreboot -platform_PROGRAMS += spkmodem.module -MODULE_FILES += spkmodem.module$(EXEEXT) -spkmodem_module_SOURCES = term/spkmodem.c ## platform sources -nodist_spkmodem_module_SOURCES = ## platform nodist sources -spkmodem_module_LDADD = -spkmodem_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -spkmodem_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -spkmodem_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -spkmodem_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -spkmodem_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_spkmodem_module_SOURCES) -CLEANFILES += $(nodist_spkmodem_module_SOURCES) -MOD_FILES += spkmodem.mod -MARKER_FILES += spkmodem.marker -CLEANFILES += spkmodem.marker - -spkmodem.marker: $(spkmodem_module_SOURCES) $(nodist_spkmodem_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(spkmodem_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_multiboot -platform_PROGRAMS += spkmodem.module -MODULE_FILES += spkmodem.module$(EXEEXT) -spkmodem_module_SOURCES = term/spkmodem.c ## platform sources -nodist_spkmodem_module_SOURCES = ## platform nodist sources -spkmodem_module_LDADD = -spkmodem_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -spkmodem_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -spkmodem_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -spkmodem_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -spkmodem_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_spkmodem_module_SOURCES) -CLEANFILES += $(nodist_spkmodem_module_SOURCES) -MOD_FILES += spkmodem.mod -MARKER_FILES += spkmodem.marker -CLEANFILES += spkmodem.marker - -spkmodem.marker: $(spkmodem_module_SOURCES) $(nodist_spkmodem_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(spkmodem_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_ieee1275 -platform_PROGRAMS += spkmodem.module -MODULE_FILES += spkmodem.module$(EXEEXT) -spkmodem_module_SOURCES = term/spkmodem.c ## platform sources -nodist_spkmodem_module_SOURCES = ## platform nodist sources -spkmodem_module_LDADD = -spkmodem_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -spkmodem_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -spkmodem_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -spkmodem_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -spkmodem_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_spkmodem_module_SOURCES) -CLEANFILES += $(nodist_spkmodem_module_SOURCES) -MOD_FILES += spkmodem.mod -MARKER_FILES += spkmodem.marker -CLEANFILES += spkmodem.marker - -spkmodem.marker: $(spkmodem_module_SOURCES) $(nodist_spkmodem_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(spkmodem_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_x86_64_efi -platform_PROGRAMS += spkmodem.module -MODULE_FILES += spkmodem.module$(EXEEXT) -spkmodem_module_SOURCES = term/spkmodem.c ## platform sources -nodist_spkmodem_module_SOURCES = ## platform nodist sources -spkmodem_module_LDADD = -spkmodem_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -spkmodem_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -spkmodem_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -spkmodem_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -spkmodem_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_spkmodem_module_SOURCES) -CLEANFILES += $(nodist_spkmodem_module_SOURCES) -MOD_FILES += spkmodem.mod -MARKER_FILES += spkmodem.marker -CLEANFILES += spkmodem.marker - -spkmodem.marker: $(spkmodem_module_SOURCES) $(nodist_spkmodem_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(spkmodem_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_pc -platform_PROGRAMS += morse.module -MODULE_FILES += morse.module$(EXEEXT) -morse_module_SOURCES = term/morse.c ## platform sources -nodist_morse_module_SOURCES = ## platform nodist sources -morse_module_LDADD = -morse_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -morse_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -morse_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -morse_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -morse_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_morse_module_SOURCES) -CLEANFILES += $(nodist_morse_module_SOURCES) -MOD_FILES += morse.mod -MARKER_FILES += morse.marker -CLEANFILES += morse.marker - -morse.marker: $(morse_module_SOURCES) $(nodist_morse_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(morse_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_efi -platform_PROGRAMS += morse.module -MODULE_FILES += morse.module$(EXEEXT) -morse_module_SOURCES = term/morse.c ## platform sources -nodist_morse_module_SOURCES = ## platform nodist sources -morse_module_LDADD = -morse_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -morse_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -morse_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -morse_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -morse_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_morse_module_SOURCES) -CLEANFILES += $(nodist_morse_module_SOURCES) -MOD_FILES += morse.mod -MARKER_FILES += morse.marker -CLEANFILES += morse.marker - -morse.marker: $(morse_module_SOURCES) $(nodist_morse_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(morse_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_qemu -platform_PROGRAMS += morse.module -MODULE_FILES += morse.module$(EXEEXT) -morse_module_SOURCES = term/morse.c ## platform sources -nodist_morse_module_SOURCES = ## platform nodist sources -morse_module_LDADD = -morse_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -morse_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -morse_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -morse_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -morse_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_morse_module_SOURCES) -CLEANFILES += $(nodist_morse_module_SOURCES) -MOD_FILES += morse.mod -MARKER_FILES += morse.marker -CLEANFILES += morse.marker - -morse.marker: $(morse_module_SOURCES) $(nodist_morse_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(morse_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_coreboot -platform_PROGRAMS += morse.module -MODULE_FILES += morse.module$(EXEEXT) -morse_module_SOURCES = term/morse.c ## platform sources -nodist_morse_module_SOURCES = ## platform nodist sources -morse_module_LDADD = -morse_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -morse_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -morse_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -morse_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -morse_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_morse_module_SOURCES) -CLEANFILES += $(nodist_morse_module_SOURCES) -MOD_FILES += morse.mod -MARKER_FILES += morse.marker -CLEANFILES += morse.marker - -morse.marker: $(morse_module_SOURCES) $(nodist_morse_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(morse_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_multiboot -platform_PROGRAMS += morse.module -MODULE_FILES += morse.module$(EXEEXT) -morse_module_SOURCES = term/morse.c ## platform sources -nodist_morse_module_SOURCES = ## platform nodist sources -morse_module_LDADD = -morse_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -morse_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -morse_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -morse_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -morse_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_morse_module_SOURCES) -CLEANFILES += $(nodist_morse_module_SOURCES) -MOD_FILES += morse.mod -MARKER_FILES += morse.marker -CLEANFILES += morse.marker - -morse.marker: $(morse_module_SOURCES) $(nodist_morse_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(morse_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_ieee1275 -platform_PROGRAMS += morse.module -MODULE_FILES += morse.module$(EXEEXT) -morse_module_SOURCES = term/morse.c ## platform sources -nodist_morse_module_SOURCES = ## platform nodist sources -morse_module_LDADD = -morse_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -morse_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -morse_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -morse_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -morse_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_morse_module_SOURCES) -CLEANFILES += $(nodist_morse_module_SOURCES) -MOD_FILES += morse.mod -MARKER_FILES += morse.marker -CLEANFILES += morse.marker - -morse.marker: $(morse_module_SOURCES) $(nodist_morse_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(morse_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_x86_64_efi -platform_PROGRAMS += morse.module -MODULE_FILES += morse.module$(EXEEXT) -morse_module_SOURCES = term/morse.c ## platform sources -nodist_morse_module_SOURCES = ## platform nodist sources -morse_module_LDADD = -morse_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -morse_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -morse_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -morse_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -morse_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_morse_module_SOURCES) -CLEANFILES += $(nodist_morse_module_SOURCES) -MOD_FILES += morse.mod -MARKER_FILES += morse.marker -CLEANFILES += morse.marker - -morse.marker: $(morse_module_SOURCES) $(nodist_morse_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(morse_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif -platform_PROGRAMS += probe.module -MODULE_FILES += probe.module$(EXEEXT) -probe_module_SOURCES = commands/probe.c ## platform sources -nodist_probe_module_SOURCES = ## platform nodist sources -probe_module_LDADD = -probe_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -probe_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -probe_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -probe_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -probe_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_probe_module_SOURCES) -CLEANFILES += $(nodist_probe_module_SOURCES) -MOD_FILES += probe.mod -MARKER_FILES += probe.marker -CLEANFILES += probe.marker - -probe.marker: $(probe_module_SOURCES) $(nodist_probe_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(probe_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += read.module -MODULE_FILES += read.module$(EXEEXT) -read_module_SOURCES = commands/read.c ## platform sources -nodist_read_module_SOURCES = ## platform nodist sources -read_module_LDADD = -read_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -read_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -read_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -read_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -read_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_read_module_SOURCES) -CLEANFILES += $(nodist_read_module_SOURCES) -MOD_FILES += read.mod -MARKER_FILES += read.marker -CLEANFILES += read.marker - -read.marker: $(read_module_SOURCES) $(nodist_read_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(read_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += search.module -MODULE_FILES += search.module$(EXEEXT) -search_module_SOURCES = commands/search_wrap.c ## platform sources -nodist_search_module_SOURCES = ## platform nodist sources -search_module_LDADD = -search_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -search_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -search_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -search_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -search_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += commands/search.c -BUILT_SOURCES += $(nodist_search_module_SOURCES) -CLEANFILES += $(nodist_search_module_SOURCES) -MOD_FILES += search.mod -MARKER_FILES += search.marker -CLEANFILES += search.marker - -search.marker: $(search_module_SOURCES) $(nodist_search_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(search_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += search_fs_file.module -MODULE_FILES += search_fs_file.module$(EXEEXT) -search_fs_file_module_SOURCES = commands/search_file.c ## platform sources -nodist_search_fs_file_module_SOURCES = ## platform nodist sources -search_fs_file_module_LDADD = -search_fs_file_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -search_fs_file_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -search_fs_file_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -search_fs_file_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -search_fs_file_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_search_fs_file_module_SOURCES) -CLEANFILES += $(nodist_search_fs_file_module_SOURCES) -MOD_FILES += search_fs_file.mod -MARKER_FILES += search_fs_file.marker -CLEANFILES += search_fs_file.marker - -search_fs_file.marker: $(search_fs_file_module_SOURCES) $(nodist_search_fs_file_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(search_fs_file_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += search_fs_uuid.module -MODULE_FILES += search_fs_uuid.module$(EXEEXT) -search_fs_uuid_module_SOURCES = commands/search_uuid.c ## platform sources -nodist_search_fs_uuid_module_SOURCES = ## platform nodist sources -search_fs_uuid_module_LDADD = -search_fs_uuid_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -search_fs_uuid_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -search_fs_uuid_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -search_fs_uuid_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -search_fs_uuid_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_search_fs_uuid_module_SOURCES) -CLEANFILES += $(nodist_search_fs_uuid_module_SOURCES) -MOD_FILES += search_fs_uuid.mod -MARKER_FILES += search_fs_uuid.marker -CLEANFILES += search_fs_uuid.marker - -search_fs_uuid.marker: $(search_fs_uuid_module_SOURCES) $(nodist_search_fs_uuid_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(search_fs_uuid_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += search_label.module -MODULE_FILES += search_label.module$(EXEEXT) -search_label_module_SOURCES = commands/search_label.c ## platform sources -nodist_search_label_module_SOURCES = ## platform nodist sources -search_label_module_LDADD = -search_label_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -search_label_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -search_label_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -search_label_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -search_label_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_search_label_module_SOURCES) -CLEANFILES += $(nodist_search_label_module_SOURCES) -MOD_FILES += search_label.mod -MARKER_FILES += search_label.marker -CLEANFILES += search_label.marker - -search_label.marker: $(search_label_module_SOURCES) $(nodist_search_label_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(search_label_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -if COND_i386_pc -platform_PROGRAMS += setpci.module -MODULE_FILES += setpci.module$(EXEEXT) -setpci_module_SOURCES = commands/setpci.c ## platform sources -nodist_setpci_module_SOURCES = ## platform nodist sources -setpci_module_LDADD = -setpci_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -setpci_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -setpci_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -setpci_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -setpci_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_setpci_module_SOURCES) -CLEANFILES += $(nodist_setpci_module_SOURCES) -MOD_FILES += setpci.mod -MARKER_FILES += setpci.marker -CLEANFILES += setpci.marker - -setpci.marker: $(setpci_module_SOURCES) $(nodist_setpci_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(setpci_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_efi -platform_PROGRAMS += setpci.module -MODULE_FILES += setpci.module$(EXEEXT) -setpci_module_SOURCES = commands/setpci.c ## platform sources -nodist_setpci_module_SOURCES = ## platform nodist sources -setpci_module_LDADD = -setpci_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -setpci_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -setpci_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -setpci_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -setpci_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_setpci_module_SOURCES) -CLEANFILES += $(nodist_setpci_module_SOURCES) -MOD_FILES += setpci.mod -MARKER_FILES += setpci.marker -CLEANFILES += setpci.marker - -setpci.marker: $(setpci_module_SOURCES) $(nodist_setpci_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(setpci_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_qemu -platform_PROGRAMS += setpci.module -MODULE_FILES += setpci.module$(EXEEXT) -setpci_module_SOURCES = commands/setpci.c ## platform sources -nodist_setpci_module_SOURCES = ## platform nodist sources -setpci_module_LDADD = -setpci_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -setpci_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -setpci_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -setpci_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -setpci_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_setpci_module_SOURCES) -CLEANFILES += $(nodist_setpci_module_SOURCES) -MOD_FILES += setpci.mod -MARKER_FILES += setpci.marker -CLEANFILES += setpci.marker - -setpci.marker: $(setpci_module_SOURCES) $(nodist_setpci_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(setpci_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_coreboot -platform_PROGRAMS += setpci.module -MODULE_FILES += setpci.module$(EXEEXT) -setpci_module_SOURCES = commands/setpci.c ## platform sources -nodist_setpci_module_SOURCES = ## platform nodist sources -setpci_module_LDADD = -setpci_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -setpci_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -setpci_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -setpci_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -setpci_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_setpci_module_SOURCES) -CLEANFILES += $(nodist_setpci_module_SOURCES) -MOD_FILES += setpci.mod -MARKER_FILES += setpci.marker -CLEANFILES += setpci.marker - -setpci.marker: $(setpci_module_SOURCES) $(nodist_setpci_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(setpci_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_multiboot -platform_PROGRAMS += setpci.module -MODULE_FILES += setpci.module$(EXEEXT) -setpci_module_SOURCES = commands/setpci.c ## platform sources -nodist_setpci_module_SOURCES = ## platform nodist sources -setpci_module_LDADD = -setpci_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -setpci_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -setpci_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -setpci_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -setpci_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_setpci_module_SOURCES) -CLEANFILES += $(nodist_setpci_module_SOURCES) -MOD_FILES += setpci.mod -MARKER_FILES += setpci.marker -CLEANFILES += setpci.marker - -setpci.marker: $(setpci_module_SOURCES) $(nodist_setpci_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(setpci_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_ieee1275 -platform_PROGRAMS += setpci.module -MODULE_FILES += setpci.module$(EXEEXT) -setpci_module_SOURCES = commands/setpci.c ## platform sources -nodist_setpci_module_SOURCES = ## platform nodist sources -setpci_module_LDADD = -setpci_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -setpci_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -setpci_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -setpci_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -setpci_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_setpci_module_SOURCES) -CLEANFILES += $(nodist_setpci_module_SOURCES) -MOD_FILES += setpci.mod -MARKER_FILES += setpci.marker -CLEANFILES += setpci.marker - -setpci.marker: $(setpci_module_SOURCES) $(nodist_setpci_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(setpci_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_x86_64_efi -platform_PROGRAMS += setpci.module -MODULE_FILES += setpci.module$(EXEEXT) -setpci_module_SOURCES = commands/setpci.c ## platform sources -nodist_setpci_module_SOURCES = ## platform nodist sources -setpci_module_LDADD = -setpci_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -setpci_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -setpci_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -setpci_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -setpci_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_setpci_module_SOURCES) -CLEANFILES += $(nodist_setpci_module_SOURCES) -MOD_FILES += setpci.mod -MARKER_FILES += setpci.marker -CLEANFILES += setpci.marker - -setpci.marker: $(setpci_module_SOURCES) $(nodist_setpci_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(setpci_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_mips_loongson -platform_PROGRAMS += setpci.module -MODULE_FILES += setpci.module$(EXEEXT) -setpci_module_SOURCES = commands/setpci.c ## platform sources -nodist_setpci_module_SOURCES = ## platform nodist sources -setpci_module_LDADD = -setpci_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -setpci_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -setpci_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -setpci_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -setpci_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_setpci_module_SOURCES) -CLEANFILES += $(nodist_setpci_module_SOURCES) -MOD_FILES += setpci.mod -MARKER_FILES += setpci.marker -CLEANFILES += setpci.marker - -setpci.marker: $(setpci_module_SOURCES) $(nodist_setpci_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(setpci_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_pc -platform_PROGRAMS += pcidump.module -MODULE_FILES += pcidump.module$(EXEEXT) -pcidump_module_SOURCES = commands/pcidump.c ## platform sources -nodist_pcidump_module_SOURCES = ## platform nodist sources -pcidump_module_LDADD = -pcidump_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -pcidump_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -pcidump_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -pcidump_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -pcidump_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_pcidump_module_SOURCES) -CLEANFILES += $(nodist_pcidump_module_SOURCES) -MOD_FILES += pcidump.mod -MARKER_FILES += pcidump.marker -CLEANFILES += pcidump.marker - -pcidump.marker: $(pcidump_module_SOURCES) $(nodist_pcidump_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(pcidump_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_efi -platform_PROGRAMS += pcidump.module -MODULE_FILES += pcidump.module$(EXEEXT) -pcidump_module_SOURCES = commands/pcidump.c ## platform sources -nodist_pcidump_module_SOURCES = ## platform nodist sources -pcidump_module_LDADD = -pcidump_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -pcidump_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -pcidump_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -pcidump_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -pcidump_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_pcidump_module_SOURCES) -CLEANFILES += $(nodist_pcidump_module_SOURCES) -MOD_FILES += pcidump.mod -MARKER_FILES += pcidump.marker -CLEANFILES += pcidump.marker - -pcidump.marker: $(pcidump_module_SOURCES) $(nodist_pcidump_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(pcidump_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_qemu -platform_PROGRAMS += pcidump.module -MODULE_FILES += pcidump.module$(EXEEXT) -pcidump_module_SOURCES = commands/pcidump.c ## platform sources -nodist_pcidump_module_SOURCES = ## platform nodist sources -pcidump_module_LDADD = -pcidump_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -pcidump_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -pcidump_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -pcidump_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -pcidump_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_pcidump_module_SOURCES) -CLEANFILES += $(nodist_pcidump_module_SOURCES) -MOD_FILES += pcidump.mod -MARKER_FILES += pcidump.marker -CLEANFILES += pcidump.marker - -pcidump.marker: $(pcidump_module_SOURCES) $(nodist_pcidump_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(pcidump_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_coreboot -platform_PROGRAMS += pcidump.module -MODULE_FILES += pcidump.module$(EXEEXT) -pcidump_module_SOURCES = commands/pcidump.c ## platform sources -nodist_pcidump_module_SOURCES = ## platform nodist sources -pcidump_module_LDADD = -pcidump_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -pcidump_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -pcidump_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -pcidump_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -pcidump_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_pcidump_module_SOURCES) -CLEANFILES += $(nodist_pcidump_module_SOURCES) -MOD_FILES += pcidump.mod -MARKER_FILES += pcidump.marker -CLEANFILES += pcidump.marker - -pcidump.marker: $(pcidump_module_SOURCES) $(nodist_pcidump_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(pcidump_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_multiboot -platform_PROGRAMS += pcidump.module -MODULE_FILES += pcidump.module$(EXEEXT) -pcidump_module_SOURCES = commands/pcidump.c ## platform sources -nodist_pcidump_module_SOURCES = ## platform nodist sources -pcidump_module_LDADD = -pcidump_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -pcidump_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -pcidump_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -pcidump_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -pcidump_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_pcidump_module_SOURCES) -CLEANFILES += $(nodist_pcidump_module_SOURCES) -MOD_FILES += pcidump.mod -MARKER_FILES += pcidump.marker -CLEANFILES += pcidump.marker - -pcidump.marker: $(pcidump_module_SOURCES) $(nodist_pcidump_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(pcidump_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_ieee1275 -platform_PROGRAMS += pcidump.module -MODULE_FILES += pcidump.module$(EXEEXT) -pcidump_module_SOURCES = commands/pcidump.c ## platform sources -nodist_pcidump_module_SOURCES = ## platform nodist sources -pcidump_module_LDADD = -pcidump_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -pcidump_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -pcidump_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -pcidump_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -pcidump_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_pcidump_module_SOURCES) -CLEANFILES += $(nodist_pcidump_module_SOURCES) -MOD_FILES += pcidump.mod -MARKER_FILES += pcidump.marker -CLEANFILES += pcidump.marker - -pcidump.marker: $(pcidump_module_SOURCES) $(nodist_pcidump_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(pcidump_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_x86_64_efi -platform_PROGRAMS += pcidump.module -MODULE_FILES += pcidump.module$(EXEEXT) -pcidump_module_SOURCES = commands/pcidump.c ## platform sources -nodist_pcidump_module_SOURCES = ## platform nodist sources -pcidump_module_LDADD = -pcidump_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -pcidump_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -pcidump_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -pcidump_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -pcidump_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_pcidump_module_SOURCES) -CLEANFILES += $(nodist_pcidump_module_SOURCES) -MOD_FILES += pcidump.mod -MARKER_FILES += pcidump.marker -CLEANFILES += pcidump.marker - -pcidump.marker: $(pcidump_module_SOURCES) $(nodist_pcidump_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(pcidump_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_mips_loongson -platform_PROGRAMS += pcidump.module -MODULE_FILES += pcidump.module$(EXEEXT) -pcidump_module_SOURCES = commands/pcidump.c ## platform sources -nodist_pcidump_module_SOURCES = ## platform nodist sources -pcidump_module_LDADD = -pcidump_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -pcidump_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -pcidump_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -pcidump_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -pcidump_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_pcidump_module_SOURCES) -CLEANFILES += $(nodist_pcidump_module_SOURCES) -MOD_FILES += pcidump.mod -MARKER_FILES += pcidump.marker -CLEANFILES += pcidump.marker - -pcidump.marker: $(pcidump_module_SOURCES) $(nodist_pcidump_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(pcidump_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif -platform_PROGRAMS += sleep.module -MODULE_FILES += sleep.module$(EXEEXT) -sleep_module_SOURCES = commands/sleep.c ## platform sources -nodist_sleep_module_SOURCES = ## platform nodist sources -sleep_module_LDADD = -sleep_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -sleep_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -sleep_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -sleep_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -sleep_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_sleep_module_SOURCES) -CLEANFILES += $(nodist_sleep_module_SOURCES) -MOD_FILES += sleep.mod -MARKER_FILES += sleep.marker -CLEANFILES += sleep.marker - -sleep.marker: $(sleep_module_SOURCES) $(nodist_sleep_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(sleep_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -if COND_i386_ieee1275 -platform_PROGRAMS += suspend.module -MODULE_FILES += suspend.module$(EXEEXT) -suspend_module_SOURCES = commands/ieee1275/suspend.c ## platform sources -nodist_suspend_module_SOURCES = ## platform nodist sources -suspend_module_LDADD = -suspend_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -suspend_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -suspend_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -suspend_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -suspend_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_suspend_module_SOURCES) -CLEANFILES += $(nodist_suspend_module_SOURCES) -MOD_FILES += suspend.mod -MARKER_FILES += suspend.marker -CLEANFILES += suspend.marker - -suspend.marker: $(suspend_module_SOURCES) $(nodist_suspend_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(suspend_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_powerpc_ieee1275 -platform_PROGRAMS += suspend.module -MODULE_FILES += suspend.module$(EXEEXT) -suspend_module_SOURCES = commands/ieee1275/suspend.c ## platform sources -nodist_suspend_module_SOURCES = ## platform nodist sources -suspend_module_LDADD = -suspend_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -suspend_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -suspend_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -suspend_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -suspend_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_suspend_module_SOURCES) -CLEANFILES += $(nodist_suspend_module_SOURCES) -MOD_FILES += suspend.mod -MARKER_FILES += suspend.marker -CLEANFILES += suspend.marker - -suspend.marker: $(suspend_module_SOURCES) $(nodist_suspend_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(suspend_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_powerpc_ieee1275 -platform_PROGRAMS += escc.module -MODULE_FILES += escc.module$(EXEEXT) -escc_module_SOURCES = term/ieee1275/escc.c ## platform sources -nodist_escc_module_SOURCES = ## platform nodist sources -escc_module_LDADD = -escc_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -escc_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -escc_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -escc_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -escc_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_escc_module_SOURCES) -CLEANFILES += $(nodist_escc_module_SOURCES) -MOD_FILES += escc.mod -MARKER_FILES += escc.marker -CLEANFILES += escc.marker - -escc.marker: $(escc_module_SOURCES) $(nodist_escc_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(escc_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif -platform_PROGRAMS += terminal.module -MODULE_FILES += terminal.module$(EXEEXT) -terminal_module_SOURCES = commands/terminal.c ## platform sources -nodist_terminal_module_SOURCES = ## platform nodist sources -terminal_module_LDADD = -terminal_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -terminal_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -terminal_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -terminal_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -terminal_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_terminal_module_SOURCES) -CLEANFILES += $(nodist_terminal_module_SOURCES) -MOD_FILES += terminal.mod -MARKER_FILES += terminal.marker -CLEANFILES += terminal.marker - -terminal.marker: $(terminal_module_SOURCES) $(nodist_terminal_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(terminal_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += test.module -MODULE_FILES += test.module$(EXEEXT) -test_module_SOURCES = commands/test.c ## platform sources -nodist_test_module_SOURCES = ## platform nodist sources -test_module_LDADD = -test_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -test_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -test_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -test_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -test_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_test_module_SOURCES) -CLEANFILES += $(nodist_test_module_SOURCES) -MOD_FILES += test.mod -MARKER_FILES += test.marker -CLEANFILES += test.marker - -test.marker: $(test_module_SOURCES) $(nodist_test_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(test_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += true.module -MODULE_FILES += true.module$(EXEEXT) -true_module_SOURCES = commands/true.c ## platform sources -nodist_true_module_SOURCES = ## platform nodist sources -true_module_LDADD = -true_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -true_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -true_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -true_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -true_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_true_module_SOURCES) -CLEANFILES += $(nodist_true_module_SOURCES) -MOD_FILES += true.mod -MARKER_FILES += true.marker -CLEANFILES += true.marker - -true.marker: $(true_module_SOURCES) $(nodist_true_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(true_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -if COND_i386_pc -platform_PROGRAMS += usbtest.module -MODULE_FILES += usbtest.module$(EXEEXT) -usbtest_module_SOURCES = commands/usbtest.c ## platform sources -nodist_usbtest_module_SOURCES = ## platform nodist sources -usbtest_module_LDADD = -usbtest_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -usbtest_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -usbtest_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -usbtest_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -usbtest_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_usbtest_module_SOURCES) -CLEANFILES += $(nodist_usbtest_module_SOURCES) -MOD_FILES += usbtest.mod -MARKER_FILES += usbtest.marker -CLEANFILES += usbtest.marker - -usbtest.marker: $(usbtest_module_SOURCES) $(nodist_usbtest_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usbtest_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_efi -platform_PROGRAMS += usbtest.module -MODULE_FILES += usbtest.module$(EXEEXT) -usbtest_module_SOURCES = commands/usbtest.c ## platform sources -nodist_usbtest_module_SOURCES = ## platform nodist sources -usbtest_module_LDADD = -usbtest_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -usbtest_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -usbtest_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -usbtest_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -usbtest_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_usbtest_module_SOURCES) -CLEANFILES += $(nodist_usbtest_module_SOURCES) -MOD_FILES += usbtest.mod -MARKER_FILES += usbtest.marker -CLEANFILES += usbtest.marker - -usbtest.marker: $(usbtest_module_SOURCES) $(nodist_usbtest_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usbtest_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_qemu -platform_PROGRAMS += usbtest.module -MODULE_FILES += usbtest.module$(EXEEXT) -usbtest_module_SOURCES = commands/usbtest.c ## platform sources -nodist_usbtest_module_SOURCES = ## platform nodist sources -usbtest_module_LDADD = -usbtest_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -usbtest_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -usbtest_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -usbtest_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -usbtest_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_usbtest_module_SOURCES) -CLEANFILES += $(nodist_usbtest_module_SOURCES) -MOD_FILES += usbtest.mod -MARKER_FILES += usbtest.marker -CLEANFILES += usbtest.marker - -usbtest.marker: $(usbtest_module_SOURCES) $(nodist_usbtest_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usbtest_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_coreboot -platform_PROGRAMS += usbtest.module -MODULE_FILES += usbtest.module$(EXEEXT) -usbtest_module_SOURCES = commands/usbtest.c ## platform sources -nodist_usbtest_module_SOURCES = ## platform nodist sources -usbtest_module_LDADD = -usbtest_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -usbtest_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -usbtest_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -usbtest_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -usbtest_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_usbtest_module_SOURCES) -CLEANFILES += $(nodist_usbtest_module_SOURCES) -MOD_FILES += usbtest.mod -MARKER_FILES += usbtest.marker -CLEANFILES += usbtest.marker - -usbtest.marker: $(usbtest_module_SOURCES) $(nodist_usbtest_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usbtest_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_multiboot -platform_PROGRAMS += usbtest.module -MODULE_FILES += usbtest.module$(EXEEXT) -usbtest_module_SOURCES = commands/usbtest.c ## platform sources -nodist_usbtest_module_SOURCES = ## platform nodist sources -usbtest_module_LDADD = -usbtest_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -usbtest_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -usbtest_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -usbtest_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -usbtest_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_usbtest_module_SOURCES) -CLEANFILES += $(nodist_usbtest_module_SOURCES) -MOD_FILES += usbtest.mod -MARKER_FILES += usbtest.marker -CLEANFILES += usbtest.marker - -usbtest.marker: $(usbtest_module_SOURCES) $(nodist_usbtest_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usbtest_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_ieee1275 -platform_PROGRAMS += usbtest.module -MODULE_FILES += usbtest.module$(EXEEXT) -usbtest_module_SOURCES = commands/usbtest.c ## platform sources -nodist_usbtest_module_SOURCES = ## platform nodist sources -usbtest_module_LDADD = -usbtest_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -usbtest_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -usbtest_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -usbtest_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -usbtest_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_usbtest_module_SOURCES) -CLEANFILES += $(nodist_usbtest_module_SOURCES) -MOD_FILES += usbtest.mod -MARKER_FILES += usbtest.marker -CLEANFILES += usbtest.marker - -usbtest.marker: $(usbtest_module_SOURCES) $(nodist_usbtest_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usbtest_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_x86_64_efi -platform_PROGRAMS += usbtest.module -MODULE_FILES += usbtest.module$(EXEEXT) -usbtest_module_SOURCES = commands/usbtest.c ## platform sources -nodist_usbtest_module_SOURCES = ## platform nodist sources -usbtest_module_LDADD = -usbtest_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -usbtest_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -usbtest_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -usbtest_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -usbtest_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_usbtest_module_SOURCES) -CLEANFILES += $(nodist_usbtest_module_SOURCES) -MOD_FILES += usbtest.mod -MARKER_FILES += usbtest.marker -CLEANFILES += usbtest.marker - -usbtest.marker: $(usbtest_module_SOURCES) $(nodist_usbtest_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usbtest_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_mips_loongson -platform_PROGRAMS += usbtest.module -MODULE_FILES += usbtest.module$(EXEEXT) -usbtest_module_SOURCES = commands/usbtest.c ## platform sources -nodist_usbtest_module_SOURCES = ## platform nodist sources -usbtest_module_LDADD = -usbtest_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -usbtest_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -usbtest_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -usbtest_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -usbtest_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_usbtest_module_SOURCES) -CLEANFILES += $(nodist_usbtest_module_SOURCES) -MOD_FILES += usbtest.mod -MARKER_FILES += usbtest.marker -CLEANFILES += usbtest.marker - -usbtest.marker: $(usbtest_module_SOURCES) $(nodist_usbtest_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usbtest_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_arm_coreboot -platform_PROGRAMS += usbtest.module -MODULE_FILES += usbtest.module$(EXEEXT) -usbtest_module_SOURCES = commands/usbtest.c ## platform sources -nodist_usbtest_module_SOURCES = ## platform nodist sources -usbtest_module_LDADD = -usbtest_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -usbtest_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -usbtest_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -usbtest_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -usbtest_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_usbtest_module_SOURCES) -CLEANFILES += $(nodist_usbtest_module_SOURCES) -MOD_FILES += usbtest.mod -MARKER_FILES += usbtest.marker -CLEANFILES += usbtest.marker - -usbtest.marker: $(usbtest_module_SOURCES) $(nodist_usbtest_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usbtest_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif -platform_PROGRAMS += videoinfo.module -MODULE_FILES += videoinfo.module$(EXEEXT) -videoinfo_module_SOURCES = commands/videoinfo.c ## platform sources -nodist_videoinfo_module_SOURCES = ## platform nodist sources -videoinfo_module_LDADD = -videoinfo_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -videoinfo_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -videoinfo_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -videoinfo_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -videoinfo_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_videoinfo_module_SOURCES) -CLEANFILES += $(nodist_videoinfo_module_SOURCES) -MOD_FILES += videoinfo.mod -MARKER_FILES += videoinfo.marker -CLEANFILES += videoinfo.marker - -videoinfo.marker: $(videoinfo_module_SOURCES) $(nodist_videoinfo_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(videoinfo_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += videotest.module -MODULE_FILES += videotest.module$(EXEEXT) -videotest_module_SOURCES = commands/videotest.c ## platform sources -nodist_videotest_module_SOURCES = ## platform nodist sources -videotest_module_LDADD = -videotest_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -videotest_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -videotest_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -videotest_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -videotest_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_videotest_module_SOURCES) -CLEANFILES += $(nodist_videotest_module_SOURCES) -MOD_FILES += videotest.mod -MARKER_FILES += videotest.marker -CLEANFILES += videotest.marker - -videotest.marker: $(videotest_module_SOURCES) $(nodist_videotest_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(videotest_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += xnu_uuid.module -MODULE_FILES += xnu_uuid.module$(EXEEXT) -xnu_uuid_module_SOURCES = commands/xnu_uuid.c ## platform sources -nodist_xnu_uuid_module_SOURCES = ## platform nodist sources -xnu_uuid_module_LDADD = -xnu_uuid_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -xnu_uuid_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -xnu_uuid_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -xnu_uuid_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -xnu_uuid_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_xnu_uuid_module_SOURCES) -CLEANFILES += $(nodist_xnu_uuid_module_SOURCES) -MOD_FILES += xnu_uuid.mod -MARKER_FILES += xnu_uuid.marker -CLEANFILES += xnu_uuid.marker - -xnu_uuid.marker: $(xnu_uuid_module_SOURCES) $(nodist_xnu_uuid_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(xnu_uuid_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += dm_nv.module -MODULE_FILES += dm_nv.module$(EXEEXT) -dm_nv_module_SOURCES = disk/dmraid_nvidia.c ## platform sources -nodist_dm_nv_module_SOURCES = ## platform nodist sources -dm_nv_module_LDADD = -dm_nv_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -dm_nv_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -dm_nv_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -dm_nv_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -dm_nv_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_dm_nv_module_SOURCES) -CLEANFILES += $(nodist_dm_nv_module_SOURCES) -MOD_FILES += dm_nv.mod -MARKER_FILES += dm_nv.marker -CLEANFILES += dm_nv.marker - -dm_nv.marker: $(dm_nv_module_SOURCES) $(nodist_dm_nv_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(dm_nv_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += loopback.module -MODULE_FILES += loopback.module$(EXEEXT) -loopback_module_SOURCES = disk/loopback.c ## platform sources -nodist_loopback_module_SOURCES = ## platform nodist sources -loopback_module_LDADD = -loopback_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -loopback_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -loopback_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -loopback_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -loopback_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_loopback_module_SOURCES) -CLEANFILES += $(nodist_loopback_module_SOURCES) -MOD_FILES += loopback.mod -MARKER_FILES += loopback.marker -CLEANFILES += loopback.marker - -loopback.marker: $(loopback_module_SOURCES) $(nodist_loopback_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(loopback_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += cryptodisk.module -MODULE_FILES += cryptodisk.module$(EXEEXT) -cryptodisk_module_SOURCES = disk/cryptodisk.c ## platform sources -nodist_cryptodisk_module_SOURCES = ## platform nodist sources -cryptodisk_module_LDADD = -cryptodisk_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -cryptodisk_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -cryptodisk_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -cryptodisk_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -cryptodisk_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_cryptodisk_module_SOURCES) -CLEANFILES += $(nodist_cryptodisk_module_SOURCES) -MOD_FILES += cryptodisk.mod -MARKER_FILES += cryptodisk.marker -CLEANFILES += cryptodisk.marker - -cryptodisk.marker: $(cryptodisk_module_SOURCES) $(nodist_cryptodisk_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cryptodisk_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += luks.module -MODULE_FILES += luks.module$(EXEEXT) -luks_module_SOURCES = disk/luks.c disk/AFSplitter.c ## platform sources -nodist_luks_module_SOURCES = ## platform nodist sources -luks_module_LDADD = -luks_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -luks_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -luks_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -luks_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -luks_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_luks_module_SOURCES) -CLEANFILES += $(nodist_luks_module_SOURCES) -MOD_FILES += luks.mod -MARKER_FILES += luks.marker -CLEANFILES += luks.marker - -luks.marker: $(luks_module_SOURCES) $(nodist_luks_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(luks_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += geli.module -MODULE_FILES += geli.module$(EXEEXT) -geli_module_SOURCES = disk/geli.c ## platform sources -nodist_geli_module_SOURCES = ## platform nodist sources -geli_module_LDADD = -geli_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -geli_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -geli_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -geli_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -geli_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_geli_module_SOURCES) -CLEANFILES += $(nodist_geli_module_SOURCES) -MOD_FILES += geli.mod -MARKER_FILES += geli.marker -CLEANFILES += geli.marker - -geli.marker: $(geli_module_SOURCES) $(nodist_geli_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(geli_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += lvm.module -MODULE_FILES += lvm.module$(EXEEXT) -lvm_module_SOURCES = disk/lvm.c ## platform sources -nodist_lvm_module_SOURCES = ## platform nodist sources -lvm_module_LDADD = -lvm_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -lvm_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -lvm_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -lvm_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -lvm_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_lvm_module_SOURCES) -CLEANFILES += $(nodist_lvm_module_SOURCES) -MOD_FILES += lvm.mod -MARKER_FILES += lvm.marker -CLEANFILES += lvm.marker - -lvm.marker: $(lvm_module_SOURCES) $(nodist_lvm_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lvm_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += ldm.module -MODULE_FILES += ldm.module$(EXEEXT) -ldm_module_SOURCES = disk/ldm.c ## platform sources -nodist_ldm_module_SOURCES = ## platform nodist sources -ldm_module_LDADD = -ldm_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -ldm_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -ldm_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -ldm_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -ldm_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_ldm_module_SOURCES) -CLEANFILES += $(nodist_ldm_module_SOURCES) -MOD_FILES += ldm.mod -MARKER_FILES += ldm.marker -CLEANFILES += ldm.marker - -ldm.marker: $(ldm_module_SOURCES) $(nodist_ldm_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ldm_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += mdraid09.module -MODULE_FILES += mdraid09.module$(EXEEXT) -mdraid09_module_SOURCES = disk/mdraid_linux.c ## platform sources -nodist_mdraid09_module_SOURCES = ## platform nodist sources -mdraid09_module_LDADD = -mdraid09_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -mdraid09_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -mdraid09_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -mdraid09_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -mdraid09_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_mdraid09_module_SOURCES) -CLEANFILES += $(nodist_mdraid09_module_SOURCES) -MOD_FILES += mdraid09.mod -MARKER_FILES += mdraid09.marker -CLEANFILES += mdraid09.marker - -mdraid09.marker: $(mdraid09_module_SOURCES) $(nodist_mdraid09_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mdraid09_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += mdraid09_be.module -MODULE_FILES += mdraid09_be.module$(EXEEXT) -mdraid09_be_module_SOURCES = disk/mdraid_linux_be.c ## platform sources -nodist_mdraid09_be_module_SOURCES = ## platform nodist sources -mdraid09_be_module_LDADD = -mdraid09_be_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -mdraid09_be_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -mdraid09_be_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -mdraid09_be_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -mdraid09_be_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_mdraid09_be_module_SOURCES) -CLEANFILES += $(nodist_mdraid09_be_module_SOURCES) -MOD_FILES += mdraid09_be.mod -MARKER_FILES += mdraid09_be.marker -CLEANFILES += mdraid09_be.marker - -mdraid09_be.marker: $(mdraid09_be_module_SOURCES) $(nodist_mdraid09_be_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mdraid09_be_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += mdraid1x.module -MODULE_FILES += mdraid1x.module$(EXEEXT) -mdraid1x_module_SOURCES = disk/mdraid1x_linux.c ## platform sources -nodist_mdraid1x_module_SOURCES = ## platform nodist sources -mdraid1x_module_LDADD = -mdraid1x_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -mdraid1x_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -mdraid1x_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -mdraid1x_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -mdraid1x_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_mdraid1x_module_SOURCES) -CLEANFILES += $(nodist_mdraid1x_module_SOURCES) -MOD_FILES += mdraid1x.mod -MARKER_FILES += mdraid1x.marker -CLEANFILES += mdraid1x.marker - -mdraid1x.marker: $(mdraid1x_module_SOURCES) $(nodist_mdraid1x_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mdraid1x_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += diskfilter.module -MODULE_FILES += diskfilter.module$(EXEEXT) -diskfilter_module_SOURCES = disk/diskfilter.c ## platform sources -nodist_diskfilter_module_SOURCES = ## platform nodist sources -diskfilter_module_LDADD = -diskfilter_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -diskfilter_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -diskfilter_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -diskfilter_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -diskfilter_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_diskfilter_module_SOURCES) -CLEANFILES += $(nodist_diskfilter_module_SOURCES) -MOD_FILES += diskfilter.mod -MARKER_FILES += diskfilter.marker -CLEANFILES += diskfilter.marker - -diskfilter.marker: $(diskfilter_module_SOURCES) $(nodist_diskfilter_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(diskfilter_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += raid5rec.module -MODULE_FILES += raid5rec.module$(EXEEXT) -raid5rec_module_SOURCES = disk/raid5_recover.c ## platform sources -nodist_raid5rec_module_SOURCES = ## platform nodist sources -raid5rec_module_LDADD = -raid5rec_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -raid5rec_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -raid5rec_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -raid5rec_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -raid5rec_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_raid5rec_module_SOURCES) -CLEANFILES += $(nodist_raid5rec_module_SOURCES) -MOD_FILES += raid5rec.mod -MARKER_FILES += raid5rec.marker -CLEANFILES += raid5rec.marker - -raid5rec.marker: $(raid5rec_module_SOURCES) $(nodist_raid5rec_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(raid5rec_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += raid6rec.module -MODULE_FILES += raid6rec.module$(EXEEXT) -raid6rec_module_SOURCES = disk/raid6_recover.c ## platform sources -nodist_raid6rec_module_SOURCES = ## platform nodist sources -raid6rec_module_LDADD = -raid6rec_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -raid6rec_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -raid6rec_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -raid6rec_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -raid6rec_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_raid6rec_module_SOURCES) -CLEANFILES += $(nodist_raid6rec_module_SOURCES) -MOD_FILES += raid6rec.mod -MARKER_FILES += raid6rec.marker -CLEANFILES += raid6rec.marker - -raid6rec.marker: $(raid6rec_module_SOURCES) $(nodist_raid6rec_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(raid6rec_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += scsi.module -MODULE_FILES += scsi.module$(EXEEXT) -scsi_module_SOURCES = disk/scsi.c ## platform sources -nodist_scsi_module_SOURCES = ## platform nodist sources -scsi_module_LDADD = -scsi_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -scsi_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -scsi_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -scsi_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -scsi_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_scsi_module_SOURCES) -CLEANFILES += $(nodist_scsi_module_SOURCES) -MOD_FILES += scsi.mod -MARKER_FILES += scsi.marker -CLEANFILES += scsi.marker - -scsi.marker: $(scsi_module_SOURCES) $(nodist_scsi_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(scsi_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += memdisk.module -MODULE_FILES += memdisk.module$(EXEEXT) -memdisk_module_SOURCES = disk/memdisk.c ## platform sources -nodist_memdisk_module_SOURCES = ## platform nodist sources -memdisk_module_LDADD = -memdisk_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -memdisk_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -memdisk_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -memdisk_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -memdisk_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_memdisk_module_SOURCES) -CLEANFILES += $(nodist_memdisk_module_SOURCES) -MOD_FILES += memdisk.mod -MARKER_FILES += memdisk.marker -CLEANFILES += memdisk.marker - -memdisk.marker: $(memdisk_module_SOURCES) $(nodist_memdisk_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(memdisk_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -if COND_i386_pc -platform_PROGRAMS += ata.module -MODULE_FILES += ata.module$(EXEEXT) -ata_module_SOURCES = disk/ata.c ## platform sources -nodist_ata_module_SOURCES = ## platform nodist sources -ata_module_LDADD = -ata_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -ata_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -ata_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -ata_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -ata_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_ata_module_SOURCES) -CLEANFILES += $(nodist_ata_module_SOURCES) -MOD_FILES += ata.mod -MARKER_FILES += ata.marker -CLEANFILES += ata.marker - -ata.marker: $(ata_module_SOURCES) $(nodist_ata_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ata_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_efi -platform_PROGRAMS += ata.module -MODULE_FILES += ata.module$(EXEEXT) -ata_module_SOURCES = disk/ata.c ## platform sources -nodist_ata_module_SOURCES = ## platform nodist sources -ata_module_LDADD = -ata_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -ata_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -ata_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -ata_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -ata_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_ata_module_SOURCES) -CLEANFILES += $(nodist_ata_module_SOURCES) -MOD_FILES += ata.mod -MARKER_FILES += ata.marker -CLEANFILES += ata.marker - -ata.marker: $(ata_module_SOURCES) $(nodist_ata_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ata_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_qemu -platform_PROGRAMS += ata.module -MODULE_FILES += ata.module$(EXEEXT) -ata_module_SOURCES = disk/ata.c ## platform sources -nodist_ata_module_SOURCES = ## platform nodist sources -ata_module_LDADD = -ata_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -ata_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -ata_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -ata_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -ata_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_ata_module_SOURCES) -CLEANFILES += $(nodist_ata_module_SOURCES) -MOD_FILES += ata.mod -MARKER_FILES += ata.marker -CLEANFILES += ata.marker - -ata.marker: $(ata_module_SOURCES) $(nodist_ata_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ata_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_coreboot -platform_PROGRAMS += ata.module -MODULE_FILES += ata.module$(EXEEXT) -ata_module_SOURCES = disk/ata.c ## platform sources -nodist_ata_module_SOURCES = ## platform nodist sources -ata_module_LDADD = -ata_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -ata_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -ata_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -ata_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -ata_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_ata_module_SOURCES) -CLEANFILES += $(nodist_ata_module_SOURCES) -MOD_FILES += ata.mod -MARKER_FILES += ata.marker -CLEANFILES += ata.marker - -ata.marker: $(ata_module_SOURCES) $(nodist_ata_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ata_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_multiboot -platform_PROGRAMS += ata.module -MODULE_FILES += ata.module$(EXEEXT) -ata_module_SOURCES = disk/ata.c ## platform sources -nodist_ata_module_SOURCES = ## platform nodist sources -ata_module_LDADD = -ata_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -ata_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -ata_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -ata_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -ata_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_ata_module_SOURCES) -CLEANFILES += $(nodist_ata_module_SOURCES) -MOD_FILES += ata.mod -MARKER_FILES += ata.marker -CLEANFILES += ata.marker - -ata.marker: $(ata_module_SOURCES) $(nodist_ata_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ata_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_ieee1275 -platform_PROGRAMS += ata.module -MODULE_FILES += ata.module$(EXEEXT) -ata_module_SOURCES = disk/ata.c ## platform sources -nodist_ata_module_SOURCES = ## platform nodist sources -ata_module_LDADD = -ata_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -ata_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -ata_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -ata_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -ata_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_ata_module_SOURCES) -CLEANFILES += $(nodist_ata_module_SOURCES) -MOD_FILES += ata.mod -MARKER_FILES += ata.marker -CLEANFILES += ata.marker - -ata.marker: $(ata_module_SOURCES) $(nodist_ata_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ata_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_x86_64_efi -platform_PROGRAMS += ata.module -MODULE_FILES += ata.module$(EXEEXT) -ata_module_SOURCES = disk/ata.c ## platform sources -nodist_ata_module_SOURCES = ## platform nodist sources -ata_module_LDADD = -ata_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -ata_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -ata_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -ata_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -ata_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_ata_module_SOURCES) -CLEANFILES += $(nodist_ata_module_SOURCES) -MOD_FILES += ata.mod -MARKER_FILES += ata.marker -CLEANFILES += ata.marker - -ata.marker: $(ata_module_SOURCES) $(nodist_ata_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ata_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_mips_loongson -platform_PROGRAMS += ata.module -MODULE_FILES += ata.module$(EXEEXT) -ata_module_SOURCES = disk/ata.c ## platform sources -nodist_ata_module_SOURCES = ## platform nodist sources -ata_module_LDADD = -ata_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -ata_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -ata_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -ata_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -ata_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_ata_module_SOURCES) -CLEANFILES += $(nodist_ata_module_SOURCES) -MOD_FILES += ata.mod -MARKER_FILES += ata.marker -CLEANFILES += ata.marker - -ata.marker: $(ata_module_SOURCES) $(nodist_ata_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ata_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_mips_qemu_mips -platform_PROGRAMS += ata.module -MODULE_FILES += ata.module$(EXEEXT) -ata_module_SOURCES = disk/ata.c ## platform sources -nodist_ata_module_SOURCES = ## platform nodist sources -ata_module_LDADD = -ata_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -ata_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -ata_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -ata_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -ata_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_ata_module_SOURCES) -CLEANFILES += $(nodist_ata_module_SOURCES) -MOD_FILES += ata.mod -MARKER_FILES += ata.marker -CLEANFILES += ata.marker - -ata.marker: $(ata_module_SOURCES) $(nodist_ata_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ata_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_pc -platform_PROGRAMS += ahci.module -MODULE_FILES += ahci.module$(EXEEXT) -ahci_module_SOURCES = disk/ahci.c ## platform sources -nodist_ahci_module_SOURCES = ## platform nodist sources -ahci_module_LDADD = -ahci_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -ahci_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -ahci_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -ahci_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -ahci_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_ahci_module_SOURCES) -CLEANFILES += $(nodist_ahci_module_SOURCES) -MOD_FILES += ahci.mod -MARKER_FILES += ahci.marker -CLEANFILES += ahci.marker - -ahci.marker: $(ahci_module_SOURCES) $(nodist_ahci_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ahci_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_efi -platform_PROGRAMS += ahci.module -MODULE_FILES += ahci.module$(EXEEXT) -ahci_module_SOURCES = disk/ahci.c ## platform sources -nodist_ahci_module_SOURCES = ## platform nodist sources -ahci_module_LDADD = -ahci_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -ahci_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -ahci_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -ahci_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -ahci_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_ahci_module_SOURCES) -CLEANFILES += $(nodist_ahci_module_SOURCES) -MOD_FILES += ahci.mod -MARKER_FILES += ahci.marker -CLEANFILES += ahci.marker - -ahci.marker: $(ahci_module_SOURCES) $(nodist_ahci_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ahci_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_qemu -platform_PROGRAMS += ahci.module -MODULE_FILES += ahci.module$(EXEEXT) -ahci_module_SOURCES = disk/ahci.c ## platform sources -nodist_ahci_module_SOURCES = ## platform nodist sources -ahci_module_LDADD = -ahci_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -ahci_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -ahci_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -ahci_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -ahci_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_ahci_module_SOURCES) -CLEANFILES += $(nodist_ahci_module_SOURCES) -MOD_FILES += ahci.mod -MARKER_FILES += ahci.marker -CLEANFILES += ahci.marker - -ahci.marker: $(ahci_module_SOURCES) $(nodist_ahci_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ahci_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_coreboot -platform_PROGRAMS += ahci.module -MODULE_FILES += ahci.module$(EXEEXT) -ahci_module_SOURCES = disk/ahci.c ## platform sources -nodist_ahci_module_SOURCES = ## platform nodist sources -ahci_module_LDADD = -ahci_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -ahci_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -ahci_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -ahci_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -ahci_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_ahci_module_SOURCES) -CLEANFILES += $(nodist_ahci_module_SOURCES) -MOD_FILES += ahci.mod -MARKER_FILES += ahci.marker -CLEANFILES += ahci.marker - -ahci.marker: $(ahci_module_SOURCES) $(nodist_ahci_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ahci_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_multiboot -platform_PROGRAMS += ahci.module -MODULE_FILES += ahci.module$(EXEEXT) -ahci_module_SOURCES = disk/ahci.c ## platform sources -nodist_ahci_module_SOURCES = ## platform nodist sources -ahci_module_LDADD = -ahci_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -ahci_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -ahci_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -ahci_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -ahci_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_ahci_module_SOURCES) -CLEANFILES += $(nodist_ahci_module_SOURCES) -MOD_FILES += ahci.mod -MARKER_FILES += ahci.marker -CLEANFILES += ahci.marker - -ahci.marker: $(ahci_module_SOURCES) $(nodist_ahci_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ahci_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_ieee1275 -platform_PROGRAMS += ahci.module -MODULE_FILES += ahci.module$(EXEEXT) -ahci_module_SOURCES = disk/ahci.c ## platform sources -nodist_ahci_module_SOURCES = ## platform nodist sources -ahci_module_LDADD = -ahci_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -ahci_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -ahci_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -ahci_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -ahci_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_ahci_module_SOURCES) -CLEANFILES += $(nodist_ahci_module_SOURCES) -MOD_FILES += ahci.mod -MARKER_FILES += ahci.marker -CLEANFILES += ahci.marker - -ahci.marker: $(ahci_module_SOURCES) $(nodist_ahci_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ahci_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_x86_64_efi -platform_PROGRAMS += ahci.module -MODULE_FILES += ahci.module$(EXEEXT) -ahci_module_SOURCES = disk/ahci.c ## platform sources -nodist_ahci_module_SOURCES = ## platform nodist sources -ahci_module_LDADD = -ahci_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -ahci_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -ahci_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -ahci_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -ahci_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_ahci_module_SOURCES) -CLEANFILES += $(nodist_ahci_module_SOURCES) -MOD_FILES += ahci.mod -MARKER_FILES += ahci.marker -CLEANFILES += ahci.marker - -ahci.marker: $(ahci_module_SOURCES) $(nodist_ahci_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ahci_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_mips_loongson -platform_PROGRAMS += ahci.module -MODULE_FILES += ahci.module$(EXEEXT) -ahci_module_SOURCES = disk/ahci.c ## platform sources -nodist_ahci_module_SOURCES = ## platform nodist sources -ahci_module_LDADD = -ahci_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -ahci_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -ahci_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -ahci_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -ahci_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_ahci_module_SOURCES) -CLEANFILES += $(nodist_ahci_module_SOURCES) -MOD_FILES += ahci.mod -MARKER_FILES += ahci.marker -CLEANFILES += ahci.marker - -ahci.marker: $(ahci_module_SOURCES) $(nodist_ahci_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ahci_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_pc -platform_PROGRAMS += pata.module -MODULE_FILES += pata.module$(EXEEXT) -pata_module_SOURCES = disk/pata.c ## platform sources -nodist_pata_module_SOURCES = ## platform nodist sources -pata_module_LDADD = -pata_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -pata_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -pata_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -pata_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -pata_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_pata_module_SOURCES) -CLEANFILES += $(nodist_pata_module_SOURCES) -MOD_FILES += pata.mod -MARKER_FILES += pata.marker -CLEANFILES += pata.marker - -pata.marker: $(pata_module_SOURCES) $(nodist_pata_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(pata_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_efi -platform_PROGRAMS += pata.module -MODULE_FILES += pata.module$(EXEEXT) -pata_module_SOURCES = disk/pata.c ## platform sources -nodist_pata_module_SOURCES = ## platform nodist sources -pata_module_LDADD = -pata_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -pata_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -pata_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -pata_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -pata_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_pata_module_SOURCES) -CLEANFILES += $(nodist_pata_module_SOURCES) -MOD_FILES += pata.mod -MARKER_FILES += pata.marker -CLEANFILES += pata.marker - -pata.marker: $(pata_module_SOURCES) $(nodist_pata_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(pata_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_qemu -platform_PROGRAMS += pata.module -MODULE_FILES += pata.module$(EXEEXT) -pata_module_SOURCES = disk/pata.c ## platform sources -nodist_pata_module_SOURCES = ## platform nodist sources -pata_module_LDADD = -pata_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -pata_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -pata_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -pata_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -pata_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_pata_module_SOURCES) -CLEANFILES += $(nodist_pata_module_SOURCES) -MOD_FILES += pata.mod -MARKER_FILES += pata.marker -CLEANFILES += pata.marker - -pata.marker: $(pata_module_SOURCES) $(nodist_pata_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(pata_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_coreboot -platform_PROGRAMS += pata.module -MODULE_FILES += pata.module$(EXEEXT) -pata_module_SOURCES = disk/pata.c ## platform sources -nodist_pata_module_SOURCES = ## platform nodist sources -pata_module_LDADD = -pata_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -pata_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -pata_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -pata_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -pata_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_pata_module_SOURCES) -CLEANFILES += $(nodist_pata_module_SOURCES) -MOD_FILES += pata.mod -MARKER_FILES += pata.marker -CLEANFILES += pata.marker - -pata.marker: $(pata_module_SOURCES) $(nodist_pata_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(pata_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_multiboot -platform_PROGRAMS += pata.module -MODULE_FILES += pata.module$(EXEEXT) -pata_module_SOURCES = disk/pata.c ## platform sources -nodist_pata_module_SOURCES = ## platform nodist sources -pata_module_LDADD = -pata_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -pata_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -pata_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -pata_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -pata_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_pata_module_SOURCES) -CLEANFILES += $(nodist_pata_module_SOURCES) -MOD_FILES += pata.mod -MARKER_FILES += pata.marker -CLEANFILES += pata.marker - -pata.marker: $(pata_module_SOURCES) $(nodist_pata_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(pata_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_ieee1275 -platform_PROGRAMS += pata.module -MODULE_FILES += pata.module$(EXEEXT) -pata_module_SOURCES = disk/pata.c ## platform sources -nodist_pata_module_SOURCES = ## platform nodist sources -pata_module_LDADD = -pata_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -pata_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -pata_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -pata_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -pata_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_pata_module_SOURCES) -CLEANFILES += $(nodist_pata_module_SOURCES) -MOD_FILES += pata.mod -MARKER_FILES += pata.marker -CLEANFILES += pata.marker - -pata.marker: $(pata_module_SOURCES) $(nodist_pata_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(pata_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_x86_64_efi -platform_PROGRAMS += pata.module -MODULE_FILES += pata.module$(EXEEXT) -pata_module_SOURCES = disk/pata.c ## platform sources -nodist_pata_module_SOURCES = ## platform nodist sources -pata_module_LDADD = -pata_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -pata_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -pata_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -pata_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -pata_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_pata_module_SOURCES) -CLEANFILES += $(nodist_pata_module_SOURCES) -MOD_FILES += pata.mod -MARKER_FILES += pata.marker -CLEANFILES += pata.marker - -pata.marker: $(pata_module_SOURCES) $(nodist_pata_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(pata_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_mips_loongson -platform_PROGRAMS += pata.module -MODULE_FILES += pata.module$(EXEEXT) -pata_module_SOURCES = disk/pata.c ## platform sources -nodist_pata_module_SOURCES = ## platform nodist sources -pata_module_LDADD = -pata_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -pata_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -pata_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -pata_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -pata_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_pata_module_SOURCES) -CLEANFILES += $(nodist_pata_module_SOURCES) -MOD_FILES += pata.mod -MARKER_FILES += pata.marker -CLEANFILES += pata.marker - -pata.marker: $(pata_module_SOURCES) $(nodist_pata_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(pata_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_mips_qemu_mips -platform_PROGRAMS += pata.module -MODULE_FILES += pata.module$(EXEEXT) -pata_module_SOURCES = disk/pata.c ## platform sources -nodist_pata_module_SOURCES = ## platform nodist sources -pata_module_LDADD = -pata_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -pata_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -pata_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -pata_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -pata_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_pata_module_SOURCES) -CLEANFILES += $(nodist_pata_module_SOURCES) -MOD_FILES += pata.mod -MARKER_FILES += pata.marker -CLEANFILES += pata.marker - -pata.marker: $(pata_module_SOURCES) $(nodist_pata_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(pata_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_pc -platform_PROGRAMS += biosdisk.module -MODULE_FILES += biosdisk.module$(EXEEXT) -biosdisk_module_SOURCES = disk/i386/pc/biosdisk.c ## platform sources -nodist_biosdisk_module_SOURCES = ## platform nodist sources -biosdisk_module_LDADD = -biosdisk_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -biosdisk_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -biosdisk_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -biosdisk_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -biosdisk_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_biosdisk_module_SOURCES) -CLEANFILES += $(nodist_biosdisk_module_SOURCES) -MOD_FILES += biosdisk.mod -MARKER_FILES += biosdisk.marker -CLEANFILES += biosdisk.marker - -biosdisk.marker: $(biosdisk_module_SOURCES) $(nodist_biosdisk_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(biosdisk_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_pc -platform_PROGRAMS += usbms.module -MODULE_FILES += usbms.module$(EXEEXT) -usbms_module_SOURCES = disk/usbms.c ## platform sources -nodist_usbms_module_SOURCES = ## platform nodist sources -usbms_module_LDADD = -usbms_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -usbms_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -usbms_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -usbms_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -usbms_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_usbms_module_SOURCES) -CLEANFILES += $(nodist_usbms_module_SOURCES) -MOD_FILES += usbms.mod -MARKER_FILES += usbms.marker -CLEANFILES += usbms.marker - -usbms.marker: $(usbms_module_SOURCES) $(nodist_usbms_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usbms_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_efi -platform_PROGRAMS += usbms.module -MODULE_FILES += usbms.module$(EXEEXT) -usbms_module_SOURCES = disk/usbms.c ## platform sources -nodist_usbms_module_SOURCES = ## platform nodist sources -usbms_module_LDADD = -usbms_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -usbms_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -usbms_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -usbms_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -usbms_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_usbms_module_SOURCES) -CLEANFILES += $(nodist_usbms_module_SOURCES) -MOD_FILES += usbms.mod -MARKER_FILES += usbms.marker -CLEANFILES += usbms.marker - -usbms.marker: $(usbms_module_SOURCES) $(nodist_usbms_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usbms_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_qemu -platform_PROGRAMS += usbms.module -MODULE_FILES += usbms.module$(EXEEXT) -usbms_module_SOURCES = disk/usbms.c ## platform sources -nodist_usbms_module_SOURCES = ## platform nodist sources -usbms_module_LDADD = -usbms_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -usbms_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -usbms_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -usbms_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -usbms_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_usbms_module_SOURCES) -CLEANFILES += $(nodist_usbms_module_SOURCES) -MOD_FILES += usbms.mod -MARKER_FILES += usbms.marker -CLEANFILES += usbms.marker - -usbms.marker: $(usbms_module_SOURCES) $(nodist_usbms_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usbms_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_coreboot -platform_PROGRAMS += usbms.module -MODULE_FILES += usbms.module$(EXEEXT) -usbms_module_SOURCES = disk/usbms.c ## platform sources -nodist_usbms_module_SOURCES = ## platform nodist sources -usbms_module_LDADD = -usbms_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -usbms_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -usbms_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -usbms_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -usbms_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_usbms_module_SOURCES) -CLEANFILES += $(nodist_usbms_module_SOURCES) -MOD_FILES += usbms.mod -MARKER_FILES += usbms.marker -CLEANFILES += usbms.marker - -usbms.marker: $(usbms_module_SOURCES) $(nodist_usbms_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usbms_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_multiboot -platform_PROGRAMS += usbms.module -MODULE_FILES += usbms.module$(EXEEXT) -usbms_module_SOURCES = disk/usbms.c ## platform sources -nodist_usbms_module_SOURCES = ## platform nodist sources -usbms_module_LDADD = -usbms_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -usbms_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -usbms_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -usbms_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -usbms_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_usbms_module_SOURCES) -CLEANFILES += $(nodist_usbms_module_SOURCES) -MOD_FILES += usbms.mod -MARKER_FILES += usbms.marker -CLEANFILES += usbms.marker - -usbms.marker: $(usbms_module_SOURCES) $(nodist_usbms_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usbms_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_ieee1275 -platform_PROGRAMS += usbms.module -MODULE_FILES += usbms.module$(EXEEXT) -usbms_module_SOURCES = disk/usbms.c ## platform sources -nodist_usbms_module_SOURCES = ## platform nodist sources -usbms_module_LDADD = -usbms_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -usbms_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -usbms_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -usbms_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -usbms_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_usbms_module_SOURCES) -CLEANFILES += $(nodist_usbms_module_SOURCES) -MOD_FILES += usbms.mod -MARKER_FILES += usbms.marker -CLEANFILES += usbms.marker - -usbms.marker: $(usbms_module_SOURCES) $(nodist_usbms_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usbms_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_x86_64_efi -platform_PROGRAMS += usbms.module -MODULE_FILES += usbms.module$(EXEEXT) -usbms_module_SOURCES = disk/usbms.c ## platform sources -nodist_usbms_module_SOURCES = ## platform nodist sources -usbms_module_LDADD = -usbms_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -usbms_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -usbms_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -usbms_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -usbms_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_usbms_module_SOURCES) -CLEANFILES += $(nodist_usbms_module_SOURCES) -MOD_FILES += usbms.mod -MARKER_FILES += usbms.marker -CLEANFILES += usbms.marker - -usbms.marker: $(usbms_module_SOURCES) $(nodist_usbms_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usbms_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_mips_loongson -platform_PROGRAMS += usbms.module -MODULE_FILES += usbms.module$(EXEEXT) -usbms_module_SOURCES = disk/usbms.c ## platform sources -nodist_usbms_module_SOURCES = ## platform nodist sources -usbms_module_LDADD = -usbms_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -usbms_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -usbms_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -usbms_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -usbms_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_usbms_module_SOURCES) -CLEANFILES += $(nodist_usbms_module_SOURCES) -MOD_FILES += usbms.mod -MARKER_FILES += usbms.marker -CLEANFILES += usbms.marker - -usbms.marker: $(usbms_module_SOURCES) $(nodist_usbms_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usbms_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_arm_coreboot -platform_PROGRAMS += usbms.module -MODULE_FILES += usbms.module$(EXEEXT) -usbms_module_SOURCES = disk/usbms.c ## platform sources -nodist_usbms_module_SOURCES = ## platform nodist sources -usbms_module_LDADD = -usbms_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -usbms_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -usbms_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -usbms_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -usbms_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_usbms_module_SOURCES) -CLEANFILES += $(nodist_usbms_module_SOURCES) -MOD_FILES += usbms.mod -MARKER_FILES += usbms.marker -CLEANFILES += usbms.marker - -usbms.marker: $(usbms_module_SOURCES) $(nodist_usbms_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usbms_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_ieee1275 -platform_PROGRAMS += nand.module -MODULE_FILES += nand.module$(EXEEXT) -nand_module_SOURCES = disk/ieee1275/nand.c ## platform sources -nodist_nand_module_SOURCES = ## platform nodist sources -nand_module_LDADD = -nand_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -nand_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -nand_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -nand_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -nand_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_nand_module_SOURCES) -CLEANFILES += $(nodist_nand_module_SOURCES) -MOD_FILES += nand.mod -MARKER_FILES += nand.marker -CLEANFILES += nand.marker - -nand.marker: $(nand_module_SOURCES) $(nodist_nand_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(nand_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_pc -platform_PROGRAMS += efiemu.module -MODULE_FILES += efiemu.module$(EXEEXT) -efiemu_module_SOURCES = efiemu/i386/pc/cfgtables.c efiemu/main.c efiemu/i386/loadcore32.c efiemu/i386/loadcore64.c efiemu/mm.c efiemu/loadcore_common.c efiemu/symbols.c efiemu/loadcore32.c efiemu/loadcore64.c efiemu/prepare32.c efiemu/prepare64.c efiemu/pnvram.c efiemu/i386/coredetect.c ## platform sources -nodist_efiemu_module_SOURCES = ## platform nodist sources -efiemu_module_LDADD = -efiemu_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -efiemu_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -efiemu_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -efiemu_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -efiemu_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += efiemu/prepare.c efiemu/loadcore.c efiemu/runtime/efiemu.S efiemu/runtime/efiemu.c -BUILT_SOURCES += $(nodist_efiemu_module_SOURCES) -CLEANFILES += $(nodist_efiemu_module_SOURCES) -MOD_FILES += efiemu.mod -MARKER_FILES += efiemu.marker -CLEANFILES += efiemu.marker - -efiemu.marker: $(efiemu_module_SOURCES) $(nodist_efiemu_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(efiemu_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_qemu -platform_PROGRAMS += efiemu.module -MODULE_FILES += efiemu.module$(EXEEXT) -efiemu_module_SOURCES = efiemu/i386/nocfgtables.c efiemu/main.c efiemu/i386/loadcore32.c efiemu/i386/loadcore64.c efiemu/mm.c efiemu/loadcore_common.c efiemu/symbols.c efiemu/loadcore32.c efiemu/loadcore64.c efiemu/prepare32.c efiemu/prepare64.c efiemu/pnvram.c efiemu/i386/coredetect.c ## platform sources -nodist_efiemu_module_SOURCES = ## platform nodist sources -efiemu_module_LDADD = -efiemu_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -efiemu_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -efiemu_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -efiemu_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -efiemu_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += efiemu/prepare.c efiemu/loadcore.c efiemu/runtime/efiemu.S efiemu/runtime/efiemu.c -BUILT_SOURCES += $(nodist_efiemu_module_SOURCES) -CLEANFILES += $(nodist_efiemu_module_SOURCES) -MOD_FILES += efiemu.mod -MARKER_FILES += efiemu.marker -CLEANFILES += efiemu.marker - -efiemu.marker: $(efiemu_module_SOURCES) $(nodist_efiemu_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(efiemu_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_coreboot -platform_PROGRAMS += efiemu.module -MODULE_FILES += efiemu.module$(EXEEXT) -efiemu_module_SOURCES = efiemu/i386/pc/cfgtables.c efiemu/main.c efiemu/i386/loadcore32.c efiemu/i386/loadcore64.c efiemu/mm.c efiemu/loadcore_common.c efiemu/symbols.c efiemu/loadcore32.c efiemu/loadcore64.c efiemu/prepare32.c efiemu/prepare64.c efiemu/pnvram.c efiemu/i386/coredetect.c ## platform sources -nodist_efiemu_module_SOURCES = ## platform nodist sources -efiemu_module_LDADD = -efiemu_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -efiemu_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -efiemu_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -efiemu_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -efiemu_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += efiemu/prepare.c efiemu/loadcore.c efiemu/runtime/efiemu.S efiemu/runtime/efiemu.c -BUILT_SOURCES += $(nodist_efiemu_module_SOURCES) -CLEANFILES += $(nodist_efiemu_module_SOURCES) -MOD_FILES += efiemu.mod -MARKER_FILES += efiemu.marker -CLEANFILES += efiemu.marker - -efiemu.marker: $(efiemu_module_SOURCES) $(nodist_efiemu_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(efiemu_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_multiboot -platform_PROGRAMS += efiemu.module -MODULE_FILES += efiemu.module$(EXEEXT) -efiemu_module_SOURCES = efiemu/i386/pc/cfgtables.c efiemu/main.c efiemu/i386/loadcore32.c efiemu/i386/loadcore64.c efiemu/mm.c efiemu/loadcore_common.c efiemu/symbols.c efiemu/loadcore32.c efiemu/loadcore64.c efiemu/prepare32.c efiemu/prepare64.c efiemu/pnvram.c efiemu/i386/coredetect.c ## platform sources -nodist_efiemu_module_SOURCES = ## platform nodist sources -efiemu_module_LDADD = -efiemu_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -efiemu_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -efiemu_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -efiemu_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -efiemu_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += efiemu/prepare.c efiemu/loadcore.c efiemu/runtime/efiemu.S efiemu/runtime/efiemu.c -BUILT_SOURCES += $(nodist_efiemu_module_SOURCES) -CLEANFILES += $(nodist_efiemu_module_SOURCES) -MOD_FILES += efiemu.mod -MARKER_FILES += efiemu.marker -CLEANFILES += efiemu.marker - -efiemu.marker: $(efiemu_module_SOURCES) $(nodist_efiemu_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(efiemu_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_ieee1275 -platform_PROGRAMS += efiemu.module -MODULE_FILES += efiemu.module$(EXEEXT) -efiemu_module_SOURCES = efiemu/i386/nocfgtables.c efiemu/main.c efiemu/i386/loadcore32.c efiemu/i386/loadcore64.c efiemu/mm.c efiemu/loadcore_common.c efiemu/symbols.c efiemu/loadcore32.c efiemu/loadcore64.c efiemu/prepare32.c efiemu/prepare64.c efiemu/pnvram.c efiemu/i386/coredetect.c ## platform sources -nodist_efiemu_module_SOURCES = ## platform nodist sources -efiemu_module_LDADD = -efiemu_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -efiemu_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -efiemu_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -efiemu_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -efiemu_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += efiemu/prepare.c efiemu/loadcore.c efiemu/runtime/efiemu.S efiemu/runtime/efiemu.c -BUILT_SOURCES += $(nodist_efiemu_module_SOURCES) -CLEANFILES += $(nodist_efiemu_module_SOURCES) -MOD_FILES += efiemu.mod -MARKER_FILES += efiemu.marker -CLEANFILES += efiemu.marker - -efiemu.marker: $(efiemu_module_SOURCES) $(nodist_efiemu_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(efiemu_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_emu -platform_PROGRAMS += font.module -MODULE_FILES += font.module$(EXEEXT) -font_module_SOURCES = font/font.c font/font_cmd.c ## platform sources -nodist_font_module_SOURCES = ## platform nodist sources -font_module_LDADD = -font_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -font_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -font_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -font_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -font_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_font_module_SOURCES) -CLEANFILES += $(nodist_font_module_SOURCES) -MOD_FILES += font.mod -MARKER_FILES += font.marker -CLEANFILES += font.marker - -font.marker: $(font_module_SOURCES) $(nodist_font_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(font_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_pc -platform_PROGRAMS += font.module -MODULE_FILES += font.module$(EXEEXT) -font_module_SOURCES = font/font.c font/font_cmd.c ## platform sources -nodist_font_module_SOURCES = ## platform nodist sources -font_module_LDADD = -font_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -font_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -font_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -font_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -font_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_font_module_SOURCES) -CLEANFILES += $(nodist_font_module_SOURCES) -MOD_FILES += font.mod -MARKER_FILES += font.marker -CLEANFILES += font.marker - -font.marker: $(font_module_SOURCES) $(nodist_font_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(font_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_efi -platform_PROGRAMS += font.module -MODULE_FILES += font.module$(EXEEXT) -font_module_SOURCES = font/font.c font/font_cmd.c ## platform sources -nodist_font_module_SOURCES = ## platform nodist sources -font_module_LDADD = -font_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -font_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -font_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -font_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -font_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_font_module_SOURCES) -CLEANFILES += $(nodist_font_module_SOURCES) -MOD_FILES += font.mod -MARKER_FILES += font.marker -CLEANFILES += font.marker - -font.marker: $(font_module_SOURCES) $(nodist_font_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(font_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_qemu -platform_PROGRAMS += font.module -MODULE_FILES += font.module$(EXEEXT) -font_module_SOURCES = font/font.c font/font_cmd.c ## platform sources -nodist_font_module_SOURCES = ## platform nodist sources -font_module_LDADD = -font_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -font_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -font_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -font_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -font_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_font_module_SOURCES) -CLEANFILES += $(nodist_font_module_SOURCES) -MOD_FILES += font.mod -MARKER_FILES += font.marker -CLEANFILES += font.marker - -font.marker: $(font_module_SOURCES) $(nodist_font_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(font_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_multiboot -platform_PROGRAMS += font.module -MODULE_FILES += font.module$(EXEEXT) -font_module_SOURCES = font/font.c font/font_cmd.c ## platform sources -nodist_font_module_SOURCES = ## platform nodist sources -font_module_LDADD = -font_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -font_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -font_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -font_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -font_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_font_module_SOURCES) -CLEANFILES += $(nodist_font_module_SOURCES) -MOD_FILES += font.mod -MARKER_FILES += font.marker -CLEANFILES += font.marker - -font.marker: $(font_module_SOURCES) $(nodist_font_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(font_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_ieee1275 -platform_PROGRAMS += font.module -MODULE_FILES += font.module$(EXEEXT) -font_module_SOURCES = font/font.c font/font_cmd.c ## platform sources -nodist_font_module_SOURCES = ## platform nodist sources -font_module_LDADD = -font_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -font_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -font_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -font_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -font_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_font_module_SOURCES) -CLEANFILES += $(nodist_font_module_SOURCES) -MOD_FILES += font.mod -MARKER_FILES += font.marker -CLEANFILES += font.marker - -font.marker: $(font_module_SOURCES) $(nodist_font_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(font_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_x86_64_efi -platform_PROGRAMS += font.module -MODULE_FILES += font.module$(EXEEXT) -font_module_SOURCES = font/font.c font/font_cmd.c ## platform sources -nodist_font_module_SOURCES = ## platform nodist sources -font_module_LDADD = -font_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -font_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -font_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -font_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -font_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_font_module_SOURCES) -CLEANFILES += $(nodist_font_module_SOURCES) -MOD_FILES += font.mod -MARKER_FILES += font.marker -CLEANFILES += font.marker - -font.marker: $(font_module_SOURCES) $(nodist_font_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(font_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_xen -platform_PROGRAMS += font.module -MODULE_FILES += font.module$(EXEEXT) -font_module_SOURCES = font/font.c font/font_cmd.c ## platform sources -nodist_font_module_SOURCES = ## platform nodist sources -font_module_LDADD = -font_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -font_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -font_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -font_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -font_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_font_module_SOURCES) -CLEANFILES += $(nodist_font_module_SOURCES) -MOD_FILES += font.mod -MARKER_FILES += font.marker -CLEANFILES += font.marker - -font.marker: $(font_module_SOURCES) $(nodist_font_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(font_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_x86_64_xen -platform_PROGRAMS += font.module -MODULE_FILES += font.module$(EXEEXT) -font_module_SOURCES = font/font.c font/font_cmd.c ## platform sources -nodist_font_module_SOURCES = ## platform nodist sources -font_module_LDADD = -font_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -font_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -font_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -font_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -font_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_font_module_SOURCES) -CLEANFILES += $(nodist_font_module_SOURCES) -MOD_FILES += font.mod -MARKER_FILES += font.marker -CLEANFILES += font.marker - -font.marker: $(font_module_SOURCES) $(nodist_font_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(font_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_xen_pvh -platform_PROGRAMS += font.module -MODULE_FILES += font.module$(EXEEXT) -font_module_SOURCES = font/font.c font/font_cmd.c ## platform sources -nodist_font_module_SOURCES = ## platform nodist sources -font_module_LDADD = -font_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -font_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -font_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -font_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -font_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_font_module_SOURCES) -CLEANFILES += $(nodist_font_module_SOURCES) -MOD_FILES += font.mod -MARKER_FILES += font.marker -CLEANFILES += font.marker - -font.marker: $(font_module_SOURCES) $(nodist_font_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(font_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_sparc64_ieee1275 -platform_PROGRAMS += font.module -MODULE_FILES += font.module$(EXEEXT) -font_module_SOURCES = font/font.c font/font_cmd.c ## platform sources -nodist_font_module_SOURCES = ## platform nodist sources -font_module_LDADD = -font_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -font_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -font_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -font_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -font_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_font_module_SOURCES) -CLEANFILES += $(nodist_font_module_SOURCES) -MOD_FILES += font.mod -MARKER_FILES += font.marker -CLEANFILES += font.marker - -font.marker: $(font_module_SOURCES) $(nodist_font_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(font_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_powerpc_ieee1275 -platform_PROGRAMS += font.module -MODULE_FILES += font.module$(EXEEXT) -font_module_SOURCES = font/font.c font/font_cmd.c ## platform sources -nodist_font_module_SOURCES = ## platform nodist sources -font_module_LDADD = -font_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -font_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -font_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -font_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -font_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_font_module_SOURCES) -CLEANFILES += $(nodist_font_module_SOURCES) -MOD_FILES += font.mod -MARKER_FILES += font.marker -CLEANFILES += font.marker - -font.marker: $(font_module_SOURCES) $(nodist_font_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(font_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_mips_arc -platform_PROGRAMS += font.module -MODULE_FILES += font.module$(EXEEXT) -font_module_SOURCES = font/font.c font/font_cmd.c ## platform sources -nodist_font_module_SOURCES = ## platform nodist sources -font_module_LDADD = -font_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -font_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -font_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -font_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -font_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_font_module_SOURCES) -CLEANFILES += $(nodist_font_module_SOURCES) -MOD_FILES += font.mod -MARKER_FILES += font.marker -CLEANFILES += font.marker - -font.marker: $(font_module_SOURCES) $(nodist_font_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(font_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_ia64_efi -platform_PROGRAMS += font.module -MODULE_FILES += font.module$(EXEEXT) -font_module_SOURCES = font/font.c font/font_cmd.c ## platform sources -nodist_font_module_SOURCES = ## platform nodist sources -font_module_LDADD = -font_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -font_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -font_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -font_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -font_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_font_module_SOURCES) -CLEANFILES += $(nodist_font_module_SOURCES) -MOD_FILES += font.mod -MARKER_FILES += font.marker -CLEANFILES += font.marker - -font.marker: $(font_module_SOURCES) $(nodist_font_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(font_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_mips_qemu_mips -platform_PROGRAMS += font.module -MODULE_FILES += font.module$(EXEEXT) -font_module_SOURCES = font/font.c font/font_cmd.c ## platform sources -nodist_font_module_SOURCES = ## platform nodist sources -font_module_LDADD = -font_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -font_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -font_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -font_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -font_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_font_module_SOURCES) -CLEANFILES += $(nodist_font_module_SOURCES) -MOD_FILES += font.mod -MARKER_FILES += font.marker -CLEANFILES += font.marker - -font.marker: $(font_module_SOURCES) $(nodist_font_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(font_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_arm_uboot -platform_PROGRAMS += font.module -MODULE_FILES += font.module$(EXEEXT) -font_module_SOURCES = font/font.c font/font_cmd.c ## platform sources -nodist_font_module_SOURCES = ## platform nodist sources -font_module_LDADD = -font_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -font_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -font_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -font_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -font_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_font_module_SOURCES) -CLEANFILES += $(nodist_font_module_SOURCES) -MOD_FILES += font.mod -MARKER_FILES += font.marker -CLEANFILES += font.marker - -font.marker: $(font_module_SOURCES) $(nodist_font_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(font_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_arm_efi -platform_PROGRAMS += font.module -MODULE_FILES += font.module$(EXEEXT) -font_module_SOURCES = font/font.c font/font_cmd.c ## platform sources -nodist_font_module_SOURCES = ## platform nodist sources -font_module_LDADD = -font_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -font_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -font_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -font_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -font_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_font_module_SOURCES) -CLEANFILES += $(nodist_font_module_SOURCES) -MOD_FILES += font.mod -MARKER_FILES += font.marker -CLEANFILES += font.marker - -font.marker: $(font_module_SOURCES) $(nodist_font_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(font_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_arm64_efi -platform_PROGRAMS += font.module -MODULE_FILES += font.module$(EXEEXT) -font_module_SOURCES = font/font.c font/font_cmd.c ## platform sources -nodist_font_module_SOURCES = ## platform nodist sources -font_module_LDADD = -font_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -font_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -font_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -font_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -font_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_font_module_SOURCES) -CLEANFILES += $(nodist_font_module_SOURCES) -MOD_FILES += font.mod -MARKER_FILES += font.marker -CLEANFILES += font.marker - -font.marker: $(font_module_SOURCES) $(nodist_font_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(font_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_riscv32_efi -platform_PROGRAMS += font.module -MODULE_FILES += font.module$(EXEEXT) -font_module_SOURCES = font/font.c font/font_cmd.c ## platform sources -nodist_font_module_SOURCES = ## platform nodist sources -font_module_LDADD = -font_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -font_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -font_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -font_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -font_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_font_module_SOURCES) -CLEANFILES += $(nodist_font_module_SOURCES) -MOD_FILES += font.mod -MARKER_FILES += font.marker -CLEANFILES += font.marker - -font.marker: $(font_module_SOURCES) $(nodist_font_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(font_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_riscv64_efi -platform_PROGRAMS += font.module -MODULE_FILES += font.module$(EXEEXT) -font_module_SOURCES = font/font.c font/font_cmd.c ## platform sources -nodist_font_module_SOURCES = ## platform nodist sources -font_module_LDADD = -font_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -font_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -font_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -font_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -font_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_font_module_SOURCES) -CLEANFILES += $(nodist_font_module_SOURCES) -MOD_FILES += font.mod -MARKER_FILES += font.marker -CLEANFILES += font.marker - -font.marker: $(font_module_SOURCES) $(nodist_font_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(font_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif -platform_PROGRAMS += procfs.module -MODULE_FILES += procfs.module$(EXEEXT) -procfs_module_SOURCES = fs/proc.c ## platform sources -nodist_procfs_module_SOURCES = ## platform nodist sources -procfs_module_LDADD = -procfs_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -procfs_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -procfs_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -procfs_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -procfs_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_procfs_module_SOURCES) -CLEANFILES += $(nodist_procfs_module_SOURCES) -MOD_FILES += procfs.mod -MARKER_FILES += procfs.marker -CLEANFILES += procfs.marker - -procfs.marker: $(procfs_module_SOURCES) $(nodist_procfs_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(procfs_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += affs.module -MODULE_FILES += affs.module$(EXEEXT) -affs_module_SOURCES = fs/affs.c ## platform sources -nodist_affs_module_SOURCES = ## platform nodist sources -affs_module_LDADD = -affs_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -affs_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -affs_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -affs_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -affs_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_affs_module_SOURCES) -CLEANFILES += $(nodist_affs_module_SOURCES) -MOD_FILES += affs.mod -MARKER_FILES += affs.marker -CLEANFILES += affs.marker - -affs.marker: $(affs_module_SOURCES) $(nodist_affs_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(affs_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += afs.module -MODULE_FILES += afs.module$(EXEEXT) -afs_module_SOURCES = fs/afs.c ## platform sources -nodist_afs_module_SOURCES = ## platform nodist sources -afs_module_LDADD = -afs_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -afs_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -afs_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -afs_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -afs_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_afs_module_SOURCES) -CLEANFILES += $(nodist_afs_module_SOURCES) -MOD_FILES += afs.mod -MARKER_FILES += afs.marker -CLEANFILES += afs.marker - -afs.marker: $(afs_module_SOURCES) $(nodist_afs_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(afs_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += bfs.module -MODULE_FILES += bfs.module$(EXEEXT) -bfs_module_SOURCES = fs/bfs.c ## platform sources -nodist_bfs_module_SOURCES = ## platform nodist sources -bfs_module_LDADD = -bfs_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -bfs_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -bfs_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -bfs_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -bfs_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_bfs_module_SOURCES) -CLEANFILES += $(nodist_bfs_module_SOURCES) -MOD_FILES += bfs.mod -MARKER_FILES += bfs.marker -CLEANFILES += bfs.marker - -bfs.marker: $(bfs_module_SOURCES) $(nodist_bfs_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(bfs_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += zstd.module -MODULE_FILES += zstd.module$(EXEEXT) -zstd_module_SOURCES = lib/zstd/debug.c lib/zstd/entropy_common.c lib/zstd/error_private.c lib/zstd/fse_decompress.c lib/zstd/huf_decompress.c lib/zstd/module.c lib/zstd/xxhash.c lib/zstd/zstd_common.c lib/zstd/zstd_decompress.c ## platform sources -nodist_zstd_module_SOURCES = ## platform nodist sources -zstd_module_LDADD = -zstd_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) $(CFLAGS_POSIX) -Wno-undef -zstd_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -zstd_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -I$(srcdir)/lib/posix_wrap -I$(srcdir)/lib/zstd -zstd_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -zstd_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_zstd_module_SOURCES) -CLEANFILES += $(nodist_zstd_module_SOURCES) -MOD_FILES += zstd.mod -MARKER_FILES += zstd.marker -CLEANFILES += zstd.marker - -zstd.marker: $(zstd_module_SOURCES) $(nodist_zstd_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(zstd_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += btrfs.module -MODULE_FILES += btrfs.module$(EXEEXT) -btrfs_module_SOURCES = fs/btrfs.c lib/crc.c ## platform sources -nodist_btrfs_module_SOURCES = ## platform nodist sources -btrfs_module_LDADD = -btrfs_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) $(CFLAGS_POSIX) -Wno-undef -btrfs_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -btrfs_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -I$(srcdir)/lib/posix_wrap -I$(srcdir)/lib/minilzo -I$(srcdir)/lib/zstd -DMINILZO_HAVE_CONFIG_H -btrfs_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -btrfs_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_btrfs_module_SOURCES) -CLEANFILES += $(nodist_btrfs_module_SOURCES) -MOD_FILES += btrfs.mod -MARKER_FILES += btrfs.marker -CLEANFILES += btrfs.marker - -btrfs.marker: $(btrfs_module_SOURCES) $(nodist_btrfs_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(btrfs_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += archelp.module -MODULE_FILES += archelp.module$(EXEEXT) -archelp_module_SOURCES = fs/archelp.c ## platform sources -nodist_archelp_module_SOURCES = ## platform nodist sources -archelp_module_LDADD = -archelp_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -archelp_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -archelp_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -archelp_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -archelp_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_archelp_module_SOURCES) -CLEANFILES += $(nodist_archelp_module_SOURCES) -MOD_FILES += archelp.mod -MARKER_FILES += archelp.marker -CLEANFILES += archelp.marker - -archelp.marker: $(archelp_module_SOURCES) $(nodist_archelp_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(archelp_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += cbfs.module -MODULE_FILES += cbfs.module$(EXEEXT) -cbfs_module_SOURCES = fs/cbfs.c ## platform sources -nodist_cbfs_module_SOURCES = ## platform nodist sources -cbfs_module_LDADD = -cbfs_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -cbfs_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -cbfs_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -cbfs_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -cbfs_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_cbfs_module_SOURCES) -CLEANFILES += $(nodist_cbfs_module_SOURCES) -MOD_FILES += cbfs.mod -MARKER_FILES += cbfs.marker -CLEANFILES += cbfs.marker - -cbfs.marker: $(cbfs_module_SOURCES) $(nodist_cbfs_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cbfs_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += cpio.module -MODULE_FILES += cpio.module$(EXEEXT) -cpio_module_SOURCES = fs/cpio.c ## platform sources -nodist_cpio_module_SOURCES = ## platform nodist sources -cpio_module_LDADD = -cpio_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -cpio_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -cpio_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -cpio_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -cpio_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_cpio_module_SOURCES) -CLEANFILES += $(nodist_cpio_module_SOURCES) -MOD_FILES += cpio.mod -MARKER_FILES += cpio.marker -CLEANFILES += cpio.marker - -cpio.marker: $(cpio_module_SOURCES) $(nodist_cpio_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cpio_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += cpio_be.module -MODULE_FILES += cpio_be.module$(EXEEXT) -cpio_be_module_SOURCES = fs/cpio_be.c ## platform sources -nodist_cpio_be_module_SOURCES = ## platform nodist sources -cpio_be_module_LDADD = -cpio_be_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -cpio_be_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -cpio_be_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -cpio_be_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -cpio_be_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_cpio_be_module_SOURCES) -CLEANFILES += $(nodist_cpio_be_module_SOURCES) -MOD_FILES += cpio_be.mod -MARKER_FILES += cpio_be.marker -CLEANFILES += cpio_be.marker - -cpio_be.marker: $(cpio_be_module_SOURCES) $(nodist_cpio_be_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cpio_be_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += newc.module -MODULE_FILES += newc.module$(EXEEXT) -newc_module_SOURCES = fs/newc.c ## platform sources -nodist_newc_module_SOURCES = ## platform nodist sources -newc_module_LDADD = -newc_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -newc_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -newc_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -newc_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -newc_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_newc_module_SOURCES) -CLEANFILES += $(nodist_newc_module_SOURCES) -MOD_FILES += newc.mod -MARKER_FILES += newc.marker -CLEANFILES += newc.marker - -newc.marker: $(newc_module_SOURCES) $(nodist_newc_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(newc_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += odc.module -MODULE_FILES += odc.module$(EXEEXT) -odc_module_SOURCES = fs/odc.c ## platform sources -nodist_odc_module_SOURCES = ## platform nodist sources -odc_module_LDADD = -odc_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -odc_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -odc_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -odc_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -odc_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_odc_module_SOURCES) -CLEANFILES += $(nodist_odc_module_SOURCES) -MOD_FILES += odc.mod -MARKER_FILES += odc.marker -CLEANFILES += odc.marker - -odc.marker: $(odc_module_SOURCES) $(nodist_odc_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(odc_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += ext2.module -MODULE_FILES += ext2.module$(EXEEXT) -ext2_module_SOURCES = fs/ext2.c ## platform sources -nodist_ext2_module_SOURCES = ## platform nodist sources -ext2_module_LDADD = -ext2_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -ext2_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -ext2_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -ext2_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -ext2_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_ext2_module_SOURCES) -CLEANFILES += $(nodist_ext2_module_SOURCES) -MOD_FILES += ext2.mod -MARKER_FILES += ext2.marker -CLEANFILES += ext2.marker - -ext2.marker: $(ext2_module_SOURCES) $(nodist_ext2_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ext2_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += fat.module -MODULE_FILES += fat.module$(EXEEXT) -fat_module_SOURCES = fs/fat.c ## platform sources -nodist_fat_module_SOURCES = ## platform nodist sources -fat_module_LDADD = -fat_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -fat_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -fat_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -fat_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -fat_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_fat_module_SOURCES) -CLEANFILES += $(nodist_fat_module_SOURCES) -MOD_FILES += fat.mod -MARKER_FILES += fat.marker -CLEANFILES += fat.marker - -fat.marker: $(fat_module_SOURCES) $(nodist_fat_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(fat_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += exfat.module -MODULE_FILES += exfat.module$(EXEEXT) -exfat_module_SOURCES = fs/exfat.c ## platform sources -nodist_exfat_module_SOURCES = ## platform nodist sources -exfat_module_LDADD = -exfat_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -exfat_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -exfat_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -exfat_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -exfat_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_exfat_module_SOURCES) -CLEANFILES += $(nodist_exfat_module_SOURCES) -MOD_FILES += exfat.mod -MARKER_FILES += exfat.marker -CLEANFILES += exfat.marker - -exfat.marker: $(exfat_module_SOURCES) $(nodist_exfat_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(exfat_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += f2fs.module -MODULE_FILES += f2fs.module$(EXEEXT) -f2fs_module_SOURCES = fs/f2fs.c ## platform sources -nodist_f2fs_module_SOURCES = ## platform nodist sources -f2fs_module_LDADD = -f2fs_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -f2fs_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -f2fs_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -f2fs_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -f2fs_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_f2fs_module_SOURCES) -CLEANFILES += $(nodist_f2fs_module_SOURCES) -MOD_FILES += f2fs.mod -MARKER_FILES += f2fs.marker -CLEANFILES += f2fs.marker - -f2fs.marker: $(f2fs_module_SOURCES) $(nodist_f2fs_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(f2fs_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += fshelp.module -MODULE_FILES += fshelp.module$(EXEEXT) -fshelp_module_SOURCES = fs/fshelp.c ## platform sources -nodist_fshelp_module_SOURCES = ## platform nodist sources -fshelp_module_LDADD = -fshelp_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -fshelp_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -fshelp_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -fshelp_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -fshelp_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_fshelp_module_SOURCES) -CLEANFILES += $(nodist_fshelp_module_SOURCES) -MOD_FILES += fshelp.mod -MARKER_FILES += fshelp.marker -CLEANFILES += fshelp.marker - -fshelp.marker: $(fshelp_module_SOURCES) $(nodist_fshelp_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(fshelp_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += hfs.module -MODULE_FILES += hfs.module$(EXEEXT) -hfs_module_SOURCES = fs/hfs.c ## platform sources -nodist_hfs_module_SOURCES = ## platform nodist sources -hfs_module_LDADD = -hfs_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -hfs_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -hfs_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -hfs_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -hfs_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_hfs_module_SOURCES) -CLEANFILES += $(nodist_hfs_module_SOURCES) -MOD_FILES += hfs.mod -MARKER_FILES += hfs.marker -CLEANFILES += hfs.marker - -hfs.marker: $(hfs_module_SOURCES) $(nodist_hfs_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(hfs_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += hfsplus.module -MODULE_FILES += hfsplus.module$(EXEEXT) -hfsplus_module_SOURCES = fs/hfsplus.c ## platform sources -nodist_hfsplus_module_SOURCES = ## platform nodist sources -hfsplus_module_LDADD = -hfsplus_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -hfsplus_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -hfsplus_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -hfsplus_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -hfsplus_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_hfsplus_module_SOURCES) -CLEANFILES += $(nodist_hfsplus_module_SOURCES) -MOD_FILES += hfsplus.mod -MARKER_FILES += hfsplus.marker -CLEANFILES += hfsplus.marker - -hfsplus.marker: $(hfsplus_module_SOURCES) $(nodist_hfsplus_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(hfsplus_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += hfspluscomp.module -MODULE_FILES += hfspluscomp.module$(EXEEXT) -hfspluscomp_module_SOURCES = fs/hfspluscomp.c ## platform sources -nodist_hfspluscomp_module_SOURCES = ## platform nodist sources -hfspluscomp_module_LDADD = -hfspluscomp_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -hfspluscomp_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -hfspluscomp_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -hfspluscomp_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -hfspluscomp_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_hfspluscomp_module_SOURCES) -CLEANFILES += $(nodist_hfspluscomp_module_SOURCES) -MOD_FILES += hfspluscomp.mod -MARKER_FILES += hfspluscomp.marker -CLEANFILES += hfspluscomp.marker - -hfspluscomp.marker: $(hfspluscomp_module_SOURCES) $(nodist_hfspluscomp_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(hfspluscomp_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += iso9660.module -MODULE_FILES += iso9660.module$(EXEEXT) -iso9660_module_SOURCES = fs/iso9660.c ## platform sources -nodist_iso9660_module_SOURCES = ## platform nodist sources -iso9660_module_LDADD = -iso9660_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -iso9660_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -iso9660_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -iso9660_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -iso9660_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_iso9660_module_SOURCES) -CLEANFILES += $(nodist_iso9660_module_SOURCES) -MOD_FILES += iso9660.mod -MARKER_FILES += iso9660.marker -CLEANFILES += iso9660.marker - -iso9660.marker: $(iso9660_module_SOURCES) $(nodist_iso9660_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(iso9660_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += jfs.module -MODULE_FILES += jfs.module$(EXEEXT) -jfs_module_SOURCES = fs/jfs.c ## platform sources -nodist_jfs_module_SOURCES = ## platform nodist sources -jfs_module_LDADD = -jfs_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -jfs_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -jfs_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -jfs_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -jfs_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_jfs_module_SOURCES) -CLEANFILES += $(nodist_jfs_module_SOURCES) -MOD_FILES += jfs.mod -MARKER_FILES += jfs.marker -CLEANFILES += jfs.marker - -jfs.marker: $(jfs_module_SOURCES) $(nodist_jfs_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(jfs_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += minix.module -MODULE_FILES += minix.module$(EXEEXT) -minix_module_SOURCES = fs/minix.c ## platform sources -nodist_minix_module_SOURCES = ## platform nodist sources -minix_module_LDADD = -minix_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -minix_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -minix_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -minix_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -minix_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_minix_module_SOURCES) -CLEANFILES += $(nodist_minix_module_SOURCES) -MOD_FILES += minix.mod -MARKER_FILES += minix.marker -CLEANFILES += minix.marker - -minix.marker: $(minix_module_SOURCES) $(nodist_minix_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(minix_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += minix2.module -MODULE_FILES += minix2.module$(EXEEXT) -minix2_module_SOURCES = fs/minix2.c ## platform sources -nodist_minix2_module_SOURCES = ## platform nodist sources -minix2_module_LDADD = -minix2_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -minix2_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -minix2_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -minix2_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -minix2_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_minix2_module_SOURCES) -CLEANFILES += $(nodist_minix2_module_SOURCES) -MOD_FILES += minix2.mod -MARKER_FILES += minix2.marker -CLEANFILES += minix2.marker - -minix2.marker: $(minix2_module_SOURCES) $(nodist_minix2_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(minix2_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += minix3.module -MODULE_FILES += minix3.module$(EXEEXT) -minix3_module_SOURCES = fs/minix3.c ## platform sources -nodist_minix3_module_SOURCES = ## platform nodist sources -minix3_module_LDADD = -minix3_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -minix3_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -minix3_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -minix3_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -minix3_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_minix3_module_SOURCES) -CLEANFILES += $(nodist_minix3_module_SOURCES) -MOD_FILES += minix3.mod -MARKER_FILES += minix3.marker -CLEANFILES += minix3.marker - -minix3.marker: $(minix3_module_SOURCES) $(nodist_minix3_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(minix3_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += minix_be.module -MODULE_FILES += minix_be.module$(EXEEXT) -minix_be_module_SOURCES = fs/minix_be.c ## platform sources -nodist_minix_be_module_SOURCES = ## platform nodist sources -minix_be_module_LDADD = -minix_be_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -minix_be_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -minix_be_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -minix_be_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -minix_be_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_minix_be_module_SOURCES) -CLEANFILES += $(nodist_minix_be_module_SOURCES) -MOD_FILES += minix_be.mod -MARKER_FILES += minix_be.marker -CLEANFILES += minix_be.marker - -minix_be.marker: $(minix_be_module_SOURCES) $(nodist_minix_be_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(minix_be_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += minix2_be.module -MODULE_FILES += minix2_be.module$(EXEEXT) -minix2_be_module_SOURCES = fs/minix2_be.c ## platform sources -nodist_minix2_be_module_SOURCES = ## platform nodist sources -minix2_be_module_LDADD = -minix2_be_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -minix2_be_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -minix2_be_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -minix2_be_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -minix2_be_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_minix2_be_module_SOURCES) -CLEANFILES += $(nodist_minix2_be_module_SOURCES) -MOD_FILES += minix2_be.mod -MARKER_FILES += minix2_be.marker -CLEANFILES += minix2_be.marker - -minix2_be.marker: $(minix2_be_module_SOURCES) $(nodist_minix2_be_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(minix2_be_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += minix3_be.module -MODULE_FILES += minix3_be.module$(EXEEXT) -minix3_be_module_SOURCES = fs/minix3_be.c ## platform sources -nodist_minix3_be_module_SOURCES = ## platform nodist sources -minix3_be_module_LDADD = -minix3_be_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -minix3_be_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -minix3_be_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -minix3_be_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -minix3_be_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_minix3_be_module_SOURCES) -CLEANFILES += $(nodist_minix3_be_module_SOURCES) -MOD_FILES += minix3_be.mod -MARKER_FILES += minix3_be.marker -CLEANFILES += minix3_be.marker - -minix3_be.marker: $(minix3_be_module_SOURCES) $(nodist_minix3_be_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(minix3_be_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += nilfs2.module -MODULE_FILES += nilfs2.module$(EXEEXT) -nilfs2_module_SOURCES = fs/nilfs2.c ## platform sources -nodist_nilfs2_module_SOURCES = ## platform nodist sources -nilfs2_module_LDADD = -nilfs2_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -nilfs2_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -nilfs2_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -nilfs2_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -nilfs2_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_nilfs2_module_SOURCES) -CLEANFILES += $(nodist_nilfs2_module_SOURCES) -MOD_FILES += nilfs2.mod -MARKER_FILES += nilfs2.marker -CLEANFILES += nilfs2.marker - -nilfs2.marker: $(nilfs2_module_SOURCES) $(nodist_nilfs2_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(nilfs2_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += ntfs.module -MODULE_FILES += ntfs.module$(EXEEXT) -ntfs_module_SOURCES = fs/ntfs.c ## platform sources -nodist_ntfs_module_SOURCES = ## platform nodist sources -ntfs_module_LDADD = -ntfs_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -ntfs_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -ntfs_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -ntfs_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -ntfs_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_ntfs_module_SOURCES) -CLEANFILES += $(nodist_ntfs_module_SOURCES) -MOD_FILES += ntfs.mod -MARKER_FILES += ntfs.marker -CLEANFILES += ntfs.marker - -ntfs.marker: $(ntfs_module_SOURCES) $(nodist_ntfs_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ntfs_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += ntfscomp.module -MODULE_FILES += ntfscomp.module$(EXEEXT) -ntfscomp_module_SOURCES = fs/ntfscomp.c ## platform sources -nodist_ntfscomp_module_SOURCES = ## platform nodist sources -ntfscomp_module_LDADD = -ntfscomp_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -ntfscomp_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -ntfscomp_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -ntfscomp_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -ntfscomp_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_ntfscomp_module_SOURCES) -CLEANFILES += $(nodist_ntfscomp_module_SOURCES) -MOD_FILES += ntfscomp.mod -MARKER_FILES += ntfscomp.marker -CLEANFILES += ntfscomp.marker - -ntfscomp.marker: $(ntfscomp_module_SOURCES) $(nodist_ntfscomp_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ntfscomp_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += reiserfs.module -MODULE_FILES += reiserfs.module$(EXEEXT) -reiserfs_module_SOURCES = fs/reiserfs.c ## platform sources -nodist_reiserfs_module_SOURCES = ## platform nodist sources -reiserfs_module_LDADD = -reiserfs_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -reiserfs_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -reiserfs_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -reiserfs_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -reiserfs_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_reiserfs_module_SOURCES) -CLEANFILES += $(nodist_reiserfs_module_SOURCES) -MOD_FILES += reiserfs.mod -MARKER_FILES += reiserfs.marker -CLEANFILES += reiserfs.marker - -reiserfs.marker: $(reiserfs_module_SOURCES) $(nodist_reiserfs_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(reiserfs_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += romfs.module -MODULE_FILES += romfs.module$(EXEEXT) -romfs_module_SOURCES = fs/romfs.c ## platform sources -nodist_romfs_module_SOURCES = ## platform nodist sources -romfs_module_LDADD = -romfs_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -romfs_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -romfs_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -romfs_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -romfs_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_romfs_module_SOURCES) -CLEANFILES += $(nodist_romfs_module_SOURCES) -MOD_FILES += romfs.mod -MARKER_FILES += romfs.marker -CLEANFILES += romfs.marker - -romfs.marker: $(romfs_module_SOURCES) $(nodist_romfs_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(romfs_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += sfs.module -MODULE_FILES += sfs.module$(EXEEXT) -sfs_module_SOURCES = fs/sfs.c ## platform sources -nodist_sfs_module_SOURCES = ## platform nodist sources -sfs_module_LDADD = -sfs_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -sfs_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -sfs_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -sfs_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -sfs_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_sfs_module_SOURCES) -CLEANFILES += $(nodist_sfs_module_SOURCES) -MOD_FILES += sfs.mod -MARKER_FILES += sfs.marker -CLEANFILES += sfs.marker - -sfs.marker: $(sfs_module_SOURCES) $(nodist_sfs_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(sfs_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += squash4.module -MODULE_FILES += squash4.module$(EXEEXT) -squash4_module_SOURCES = fs/squash4.c ## platform sources -nodist_squash4_module_SOURCES = ## platform nodist sources -squash4_module_LDADD = -squash4_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) $(CFLAGS_POSIX) -Wno-undef -squash4_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -squash4_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -I$(srcdir)/lib/posix_wrap -I$(srcdir)/lib/xzembed -I$(srcdir)/lib/minilzo -DMINILZO_HAVE_CONFIG_H -squash4_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -squash4_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_squash4_module_SOURCES) -CLEANFILES += $(nodist_squash4_module_SOURCES) -MOD_FILES += squash4.mod -MARKER_FILES += squash4.marker -CLEANFILES += squash4.marker - -squash4.marker: $(squash4_module_SOURCES) $(nodist_squash4_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(squash4_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += tar.module -MODULE_FILES += tar.module$(EXEEXT) -tar_module_SOURCES = fs/tar.c ## platform sources -nodist_tar_module_SOURCES = ## platform nodist sources -tar_module_LDADD = -tar_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -tar_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -tar_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -tar_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -tar_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_tar_module_SOURCES) -CLEANFILES += $(nodist_tar_module_SOURCES) -MOD_FILES += tar.mod -MARKER_FILES += tar.marker -CLEANFILES += tar.marker - -tar.marker: $(tar_module_SOURCES) $(nodist_tar_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(tar_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += udf.module -MODULE_FILES += udf.module$(EXEEXT) -udf_module_SOURCES = fs/udf.c ## platform sources -nodist_udf_module_SOURCES = ## platform nodist sources -udf_module_LDADD = -udf_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -udf_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -udf_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -udf_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -udf_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_udf_module_SOURCES) -CLEANFILES += $(nodist_udf_module_SOURCES) -MOD_FILES += udf.mod -MARKER_FILES += udf.marker -CLEANFILES += udf.marker - -udf.marker: $(udf_module_SOURCES) $(nodist_udf_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(udf_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += ufs1.module -MODULE_FILES += ufs1.module$(EXEEXT) -ufs1_module_SOURCES = fs/ufs.c ## platform sources -nodist_ufs1_module_SOURCES = ## platform nodist sources -ufs1_module_LDADD = -ufs1_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -ufs1_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -ufs1_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -ufs1_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -ufs1_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_ufs1_module_SOURCES) -CLEANFILES += $(nodist_ufs1_module_SOURCES) -MOD_FILES += ufs1.mod -MARKER_FILES += ufs1.marker -CLEANFILES += ufs1.marker - -ufs1.marker: $(ufs1_module_SOURCES) $(nodist_ufs1_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ufs1_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += ufs1_be.module -MODULE_FILES += ufs1_be.module$(EXEEXT) -ufs1_be_module_SOURCES = fs/ufs_be.c ## platform sources -nodist_ufs1_be_module_SOURCES = ## platform nodist sources -ufs1_be_module_LDADD = -ufs1_be_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -ufs1_be_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -ufs1_be_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -ufs1_be_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -ufs1_be_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_ufs1_be_module_SOURCES) -CLEANFILES += $(nodist_ufs1_be_module_SOURCES) -MOD_FILES += ufs1_be.mod -MARKER_FILES += ufs1_be.marker -CLEANFILES += ufs1_be.marker - -ufs1_be.marker: $(ufs1_be_module_SOURCES) $(nodist_ufs1_be_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ufs1_be_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += ufs2.module -MODULE_FILES += ufs2.module$(EXEEXT) -ufs2_module_SOURCES = fs/ufs2.c ## platform sources -nodist_ufs2_module_SOURCES = ## platform nodist sources -ufs2_module_LDADD = -ufs2_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -ufs2_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -ufs2_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -ufs2_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -ufs2_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_ufs2_module_SOURCES) -CLEANFILES += $(nodist_ufs2_module_SOURCES) -MOD_FILES += ufs2.mod -MARKER_FILES += ufs2.marker -CLEANFILES += ufs2.marker - -ufs2.marker: $(ufs2_module_SOURCES) $(nodist_ufs2_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ufs2_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += xfs.module -MODULE_FILES += xfs.module$(EXEEXT) -xfs_module_SOURCES = fs/xfs.c ## platform sources -nodist_xfs_module_SOURCES = ## platform nodist sources -xfs_module_LDADD = -xfs_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -xfs_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -xfs_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -xfs_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -xfs_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_xfs_module_SOURCES) -CLEANFILES += $(nodist_xfs_module_SOURCES) -MOD_FILES += xfs.mod -MARKER_FILES += xfs.marker -CLEANFILES += xfs.marker - -xfs.marker: $(xfs_module_SOURCES) $(nodist_xfs_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(xfs_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += zfs.module -MODULE_FILES += zfs.module$(EXEEXT) -zfs_module_SOURCES = fs/zfs/zfs.c fs/zfs/zfs_lzjb.c fs/zfs/zfs_lz4.c fs/zfs/zfs_sha256.c fs/zfs/zfs_fletcher.c ## platform sources -nodist_zfs_module_SOURCES = ## platform nodist sources -zfs_module_LDADD = -zfs_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -zfs_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -zfs_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -zfs_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -zfs_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_zfs_module_SOURCES) -CLEANFILES += $(nodist_zfs_module_SOURCES) -MOD_FILES += zfs.mod -MARKER_FILES += zfs.marker -CLEANFILES += zfs.marker - -zfs.marker: $(zfs_module_SOURCES) $(nodist_zfs_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(zfs_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += zfscrypt.module -MODULE_FILES += zfscrypt.module$(EXEEXT) -zfscrypt_module_SOURCES = fs/zfs/zfscrypt.c ## platform sources -nodist_zfscrypt_module_SOURCES = ## platform nodist sources -zfscrypt_module_LDADD = -zfscrypt_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -zfscrypt_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -zfscrypt_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -zfscrypt_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -zfscrypt_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_zfscrypt_module_SOURCES) -CLEANFILES += $(nodist_zfscrypt_module_SOURCES) -MOD_FILES += zfscrypt.mod -MARKER_FILES += zfscrypt.marker -CLEANFILES += zfscrypt.marker - -zfscrypt.marker: $(zfscrypt_module_SOURCES) $(nodist_zfscrypt_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(zfscrypt_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += zfsinfo.module -MODULE_FILES += zfsinfo.module$(EXEEXT) -zfsinfo_module_SOURCES = fs/zfs/zfsinfo.c ## platform sources -nodist_zfsinfo_module_SOURCES = ## platform nodist sources -zfsinfo_module_LDADD = -zfsinfo_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -zfsinfo_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -zfsinfo_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -zfsinfo_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -zfsinfo_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_zfsinfo_module_SOURCES) -CLEANFILES += $(nodist_zfsinfo_module_SOURCES) -MOD_FILES += zfsinfo.mod -MARKER_FILES += zfsinfo.marker -CLEANFILES += zfsinfo.marker - -zfsinfo.marker: $(zfsinfo_module_SOURCES) $(nodist_zfsinfo_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(zfsinfo_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += macbless.module -MODULE_FILES += macbless.module$(EXEEXT) -macbless_module_SOURCES = commands/macbless.c ## platform sources -nodist_macbless_module_SOURCES = ## platform nodist sources -macbless_module_LDADD = -macbless_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -macbless_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -macbless_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -macbless_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -macbless_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_macbless_module_SOURCES) -CLEANFILES += $(nodist_macbless_module_SOURCES) -MOD_FILES += macbless.mod -MARKER_FILES += macbless.marker -CLEANFILES += macbless.marker - -macbless.marker: $(macbless_module_SOURCES) $(nodist_macbless_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(macbless_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -if COND_i386_pc -platform_PROGRAMS += pxe.module -MODULE_FILES += pxe.module$(EXEEXT) -pxe_module_SOURCES = net/drivers/i386/pc/pxe.c ## platform sources -nodist_pxe_module_SOURCES = ## platform nodist sources -pxe_module_LDADD = -pxe_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -pxe_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -pxe_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -pxe_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -pxe_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_pxe_module_SOURCES) -CLEANFILES += $(nodist_pxe_module_SOURCES) -MOD_FILES += pxe.mod -MARKER_FILES += pxe.marker -CLEANFILES += pxe.marker - -pxe.marker: $(pxe_module_SOURCES) $(nodist_pxe_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(pxe_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif -platform_PROGRAMS += gettext.module -MODULE_FILES += gettext.module$(EXEEXT) -gettext_module_SOURCES = gettext/gettext.c ## platform sources -nodist_gettext_module_SOURCES = ## platform nodist sources -gettext_module_LDADD = -gettext_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -gettext_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -gettext_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -gettext_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -gettext_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_gettext_module_SOURCES) -CLEANFILES += $(nodist_gettext_module_SOURCES) -MOD_FILES += gettext.mod -MARKER_FILES += gettext.marker -CLEANFILES += gettext.marker - -gettext.marker: $(gettext_module_SOURCES) $(nodist_gettext_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gettext_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += gfxmenu.module -MODULE_FILES += gfxmenu.module$(EXEEXT) -gfxmenu_module_SOURCES = gfxmenu/gfxmenu.c gfxmenu/view.c gfxmenu/font.c gfxmenu/icon_manager.c gfxmenu/theme_loader.c gfxmenu/widget-box.c gfxmenu/gui_canvas.c gfxmenu/gui_circular_progress.c gfxmenu/gui_box.c gfxmenu/gui_label.c gfxmenu/gui_list.c gfxmenu/gui_image.c gfxmenu/gui_progress_bar.c gfxmenu/gui_util.c gfxmenu/gui_string_util.c ## platform sources -nodist_gfxmenu_module_SOURCES = ## platform nodist sources -gfxmenu_module_LDADD = -gfxmenu_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -gfxmenu_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -gfxmenu_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -gfxmenu_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -gfxmenu_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_gfxmenu_module_SOURCES) -CLEANFILES += $(nodist_gfxmenu_module_SOURCES) -MOD_FILES += gfxmenu.mod -MARKER_FILES += gfxmenu.marker -CLEANFILES += gfxmenu.marker - -gfxmenu.marker: $(gfxmenu_module_SOURCES) $(nodist_gfxmenu_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gfxmenu_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += hello.module -MODULE_FILES += hello.module$(EXEEXT) -hello_module_SOURCES = hello/hello.c ## platform sources -nodist_hello_module_SOURCES = ## platform nodist sources -hello_module_LDADD = -hello_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -hello_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -hello_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -hello_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -hello_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_hello_module_SOURCES) -CLEANFILES += $(nodist_hello_module_SOURCES) -MOD_FILES += hello.mod -MARKER_FILES += hello.marker -CLEANFILES += hello.marker - -hello.marker: $(hello_module_SOURCES) $(nodist_hello_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(hello_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += gzio.module -MODULE_FILES += gzio.module$(EXEEXT) -gzio_module_SOURCES = io/gzio.c ## platform sources -nodist_gzio_module_SOURCES = ## platform nodist sources -gzio_module_LDADD = -gzio_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -gzio_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -gzio_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -gzio_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -gzio_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_gzio_module_SOURCES) -CLEANFILES += $(nodist_gzio_module_SOURCES) -MOD_FILES += gzio.mod -MARKER_FILES += gzio.marker -CLEANFILES += gzio.marker - -gzio.marker: $(gzio_module_SOURCES) $(nodist_gzio_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gzio_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += offsetio.module -MODULE_FILES += offsetio.module$(EXEEXT) -offsetio_module_SOURCES = io/offset.c ## platform sources -nodist_offsetio_module_SOURCES = ## platform nodist sources -offsetio_module_LDADD = -offsetio_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -offsetio_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -offsetio_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -offsetio_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -offsetio_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_offsetio_module_SOURCES) -CLEANFILES += $(nodist_offsetio_module_SOURCES) -MOD_FILES += offsetio.mod -MARKER_FILES += offsetio.marker -CLEANFILES += offsetio.marker - -offsetio.marker: $(offsetio_module_SOURCES) $(nodist_offsetio_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(offsetio_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -if COND_emu -platform_PROGRAMS += bufio.module -MODULE_FILES += bufio.module$(EXEEXT) -bufio_module_SOURCES = io/bufio.c ## platform sources -nodist_bufio_module_SOURCES = ## platform nodist sources -bufio_module_LDADD = -bufio_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -bufio_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -bufio_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -bufio_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -bufio_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_bufio_module_SOURCES) -CLEANFILES += $(nodist_bufio_module_SOURCES) -MOD_FILES += bufio.mod -MARKER_FILES += bufio.marker -CLEANFILES += bufio.marker - -bufio.marker: $(bufio_module_SOURCES) $(nodist_bufio_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(bufio_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_pc -platform_PROGRAMS += bufio.module -MODULE_FILES += bufio.module$(EXEEXT) -bufio_module_SOURCES = io/bufio.c ## platform sources -nodist_bufio_module_SOURCES = ## platform nodist sources -bufio_module_LDADD = -bufio_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -bufio_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -bufio_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -bufio_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -bufio_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_bufio_module_SOURCES) -CLEANFILES += $(nodist_bufio_module_SOURCES) -MOD_FILES += bufio.mod -MARKER_FILES += bufio.marker -CLEANFILES += bufio.marker - -bufio.marker: $(bufio_module_SOURCES) $(nodist_bufio_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(bufio_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_efi -platform_PROGRAMS += bufio.module -MODULE_FILES += bufio.module$(EXEEXT) -bufio_module_SOURCES = io/bufio.c ## platform sources -nodist_bufio_module_SOURCES = ## platform nodist sources -bufio_module_LDADD = -bufio_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -bufio_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -bufio_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -bufio_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -bufio_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_bufio_module_SOURCES) -CLEANFILES += $(nodist_bufio_module_SOURCES) -MOD_FILES += bufio.mod -MARKER_FILES += bufio.marker -CLEANFILES += bufio.marker - -bufio.marker: $(bufio_module_SOURCES) $(nodist_bufio_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(bufio_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_qemu -platform_PROGRAMS += bufio.module -MODULE_FILES += bufio.module$(EXEEXT) -bufio_module_SOURCES = io/bufio.c ## platform sources -nodist_bufio_module_SOURCES = ## platform nodist sources -bufio_module_LDADD = -bufio_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -bufio_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -bufio_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -bufio_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -bufio_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_bufio_module_SOURCES) -CLEANFILES += $(nodist_bufio_module_SOURCES) -MOD_FILES += bufio.mod -MARKER_FILES += bufio.marker -CLEANFILES += bufio.marker - -bufio.marker: $(bufio_module_SOURCES) $(nodist_bufio_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(bufio_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_multiboot -platform_PROGRAMS += bufio.module -MODULE_FILES += bufio.module$(EXEEXT) -bufio_module_SOURCES = io/bufio.c ## platform sources -nodist_bufio_module_SOURCES = ## platform nodist sources -bufio_module_LDADD = -bufio_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -bufio_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -bufio_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -bufio_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -bufio_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_bufio_module_SOURCES) -CLEANFILES += $(nodist_bufio_module_SOURCES) -MOD_FILES += bufio.mod -MARKER_FILES += bufio.marker -CLEANFILES += bufio.marker - -bufio.marker: $(bufio_module_SOURCES) $(nodist_bufio_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(bufio_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_ieee1275 -platform_PROGRAMS += bufio.module -MODULE_FILES += bufio.module$(EXEEXT) -bufio_module_SOURCES = io/bufio.c ## platform sources -nodist_bufio_module_SOURCES = ## platform nodist sources -bufio_module_LDADD = -bufio_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -bufio_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -bufio_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -bufio_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -bufio_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_bufio_module_SOURCES) -CLEANFILES += $(nodist_bufio_module_SOURCES) -MOD_FILES += bufio.mod -MARKER_FILES += bufio.marker -CLEANFILES += bufio.marker - -bufio.marker: $(bufio_module_SOURCES) $(nodist_bufio_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(bufio_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_x86_64_efi -platform_PROGRAMS += bufio.module -MODULE_FILES += bufio.module$(EXEEXT) -bufio_module_SOURCES = io/bufio.c ## platform sources -nodist_bufio_module_SOURCES = ## platform nodist sources -bufio_module_LDADD = -bufio_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -bufio_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -bufio_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -bufio_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -bufio_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_bufio_module_SOURCES) -CLEANFILES += $(nodist_bufio_module_SOURCES) -MOD_FILES += bufio.mod -MARKER_FILES += bufio.marker -CLEANFILES += bufio.marker - -bufio.marker: $(bufio_module_SOURCES) $(nodist_bufio_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(bufio_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_xen -platform_PROGRAMS += bufio.module -MODULE_FILES += bufio.module$(EXEEXT) -bufio_module_SOURCES = io/bufio.c ## platform sources -nodist_bufio_module_SOURCES = ## platform nodist sources -bufio_module_LDADD = -bufio_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -bufio_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -bufio_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -bufio_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -bufio_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_bufio_module_SOURCES) -CLEANFILES += $(nodist_bufio_module_SOURCES) -MOD_FILES += bufio.mod -MARKER_FILES += bufio.marker -CLEANFILES += bufio.marker - -bufio.marker: $(bufio_module_SOURCES) $(nodist_bufio_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(bufio_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_x86_64_xen -platform_PROGRAMS += bufio.module -MODULE_FILES += bufio.module$(EXEEXT) -bufio_module_SOURCES = io/bufio.c ## platform sources -nodist_bufio_module_SOURCES = ## platform nodist sources -bufio_module_LDADD = -bufio_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -bufio_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -bufio_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -bufio_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -bufio_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_bufio_module_SOURCES) -CLEANFILES += $(nodist_bufio_module_SOURCES) -MOD_FILES += bufio.mod -MARKER_FILES += bufio.marker -CLEANFILES += bufio.marker - -bufio.marker: $(bufio_module_SOURCES) $(nodist_bufio_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(bufio_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_xen_pvh -platform_PROGRAMS += bufio.module -MODULE_FILES += bufio.module$(EXEEXT) -bufio_module_SOURCES = io/bufio.c ## platform sources -nodist_bufio_module_SOURCES = ## platform nodist sources -bufio_module_LDADD = -bufio_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -bufio_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -bufio_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -bufio_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -bufio_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_bufio_module_SOURCES) -CLEANFILES += $(nodist_bufio_module_SOURCES) -MOD_FILES += bufio.mod -MARKER_FILES += bufio.marker -CLEANFILES += bufio.marker - -bufio.marker: $(bufio_module_SOURCES) $(nodist_bufio_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(bufio_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_sparc64_ieee1275 -platform_PROGRAMS += bufio.module -MODULE_FILES += bufio.module$(EXEEXT) -bufio_module_SOURCES = io/bufio.c ## platform sources -nodist_bufio_module_SOURCES = ## platform nodist sources -bufio_module_LDADD = -bufio_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -bufio_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -bufio_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -bufio_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -bufio_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_bufio_module_SOURCES) -CLEANFILES += $(nodist_bufio_module_SOURCES) -MOD_FILES += bufio.mod -MARKER_FILES += bufio.marker -CLEANFILES += bufio.marker - -bufio.marker: $(bufio_module_SOURCES) $(nodist_bufio_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(bufio_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_powerpc_ieee1275 -platform_PROGRAMS += bufio.module -MODULE_FILES += bufio.module$(EXEEXT) -bufio_module_SOURCES = io/bufio.c ## platform sources -nodist_bufio_module_SOURCES = ## platform nodist sources -bufio_module_LDADD = -bufio_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -bufio_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -bufio_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -bufio_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -bufio_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_bufio_module_SOURCES) -CLEANFILES += $(nodist_bufio_module_SOURCES) -MOD_FILES += bufio.mod -MARKER_FILES += bufio.marker -CLEANFILES += bufio.marker - -bufio.marker: $(bufio_module_SOURCES) $(nodist_bufio_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(bufio_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_mips_arc -platform_PROGRAMS += bufio.module -MODULE_FILES += bufio.module$(EXEEXT) -bufio_module_SOURCES = io/bufio.c ## platform sources -nodist_bufio_module_SOURCES = ## platform nodist sources -bufio_module_LDADD = -bufio_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -bufio_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -bufio_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -bufio_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -bufio_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_bufio_module_SOURCES) -CLEANFILES += $(nodist_bufio_module_SOURCES) -MOD_FILES += bufio.mod -MARKER_FILES += bufio.marker -CLEANFILES += bufio.marker - -bufio.marker: $(bufio_module_SOURCES) $(nodist_bufio_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(bufio_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_ia64_efi -platform_PROGRAMS += bufio.module -MODULE_FILES += bufio.module$(EXEEXT) -bufio_module_SOURCES = io/bufio.c ## platform sources -nodist_bufio_module_SOURCES = ## platform nodist sources -bufio_module_LDADD = -bufio_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -bufio_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -bufio_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -bufio_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -bufio_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_bufio_module_SOURCES) -CLEANFILES += $(nodist_bufio_module_SOURCES) -MOD_FILES += bufio.mod -MARKER_FILES += bufio.marker -CLEANFILES += bufio.marker - -bufio.marker: $(bufio_module_SOURCES) $(nodist_bufio_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(bufio_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_mips_qemu_mips -platform_PROGRAMS += bufio.module -MODULE_FILES += bufio.module$(EXEEXT) -bufio_module_SOURCES = io/bufio.c ## platform sources -nodist_bufio_module_SOURCES = ## platform nodist sources -bufio_module_LDADD = -bufio_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -bufio_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -bufio_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -bufio_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -bufio_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_bufio_module_SOURCES) -CLEANFILES += $(nodist_bufio_module_SOURCES) -MOD_FILES += bufio.mod -MARKER_FILES += bufio.marker -CLEANFILES += bufio.marker - -bufio.marker: $(bufio_module_SOURCES) $(nodist_bufio_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(bufio_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_arm_uboot -platform_PROGRAMS += bufio.module -MODULE_FILES += bufio.module$(EXEEXT) -bufio_module_SOURCES = io/bufio.c ## platform sources -nodist_bufio_module_SOURCES = ## platform nodist sources -bufio_module_LDADD = -bufio_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -bufio_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -bufio_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -bufio_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -bufio_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_bufio_module_SOURCES) -CLEANFILES += $(nodist_bufio_module_SOURCES) -MOD_FILES += bufio.mod -MARKER_FILES += bufio.marker -CLEANFILES += bufio.marker - -bufio.marker: $(bufio_module_SOURCES) $(nodist_bufio_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(bufio_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_arm_efi -platform_PROGRAMS += bufio.module -MODULE_FILES += bufio.module$(EXEEXT) -bufio_module_SOURCES = io/bufio.c ## platform sources -nodist_bufio_module_SOURCES = ## platform nodist sources -bufio_module_LDADD = -bufio_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -bufio_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -bufio_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -bufio_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -bufio_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_bufio_module_SOURCES) -CLEANFILES += $(nodist_bufio_module_SOURCES) -MOD_FILES += bufio.mod -MARKER_FILES += bufio.marker -CLEANFILES += bufio.marker - -bufio.marker: $(bufio_module_SOURCES) $(nodist_bufio_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(bufio_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_arm64_efi -platform_PROGRAMS += bufio.module -MODULE_FILES += bufio.module$(EXEEXT) -bufio_module_SOURCES = io/bufio.c ## platform sources -nodist_bufio_module_SOURCES = ## platform nodist sources -bufio_module_LDADD = -bufio_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -bufio_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -bufio_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -bufio_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -bufio_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_bufio_module_SOURCES) -CLEANFILES += $(nodist_bufio_module_SOURCES) -MOD_FILES += bufio.mod -MARKER_FILES += bufio.marker -CLEANFILES += bufio.marker - -bufio.marker: $(bufio_module_SOURCES) $(nodist_bufio_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(bufio_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_riscv32_efi -platform_PROGRAMS += bufio.module -MODULE_FILES += bufio.module$(EXEEXT) -bufio_module_SOURCES = io/bufio.c ## platform sources -nodist_bufio_module_SOURCES = ## platform nodist sources -bufio_module_LDADD = -bufio_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -bufio_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -bufio_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -bufio_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -bufio_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_bufio_module_SOURCES) -CLEANFILES += $(nodist_bufio_module_SOURCES) -MOD_FILES += bufio.mod -MARKER_FILES += bufio.marker -CLEANFILES += bufio.marker - -bufio.marker: $(bufio_module_SOURCES) $(nodist_bufio_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(bufio_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_riscv64_efi -platform_PROGRAMS += bufio.module -MODULE_FILES += bufio.module$(EXEEXT) -bufio_module_SOURCES = io/bufio.c ## platform sources -nodist_bufio_module_SOURCES = ## platform nodist sources -bufio_module_LDADD = -bufio_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -bufio_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -bufio_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -bufio_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -bufio_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_bufio_module_SOURCES) -CLEANFILES += $(nodist_bufio_module_SOURCES) -MOD_FILES += bufio.mod -MARKER_FILES += bufio.marker -CLEANFILES += bufio.marker - -bufio.marker: $(bufio_module_SOURCES) $(nodist_bufio_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(bufio_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif -platform_PROGRAMS += elf.module -MODULE_FILES += elf.module$(EXEEXT) -elf_module_SOURCES = kern/elf.c ## platform sources -nodist_elf_module_SOURCES = ## platform nodist sources -elf_module_LDADD = -elf_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -elf_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -elf_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -elf_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -elf_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += kern/elfXX.c -BUILT_SOURCES += $(nodist_elf_module_SOURCES) -CLEANFILES += $(nodist_elf_module_SOURCES) -MOD_FILES += elf.mod -MARKER_FILES += elf.marker -CLEANFILES += elf.marker - -elf.marker: $(elf_module_SOURCES) $(nodist_elf_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(elf_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += crypto.module -MODULE_FILES += crypto.module$(EXEEXT) -crypto_module_SOURCES = lib/crypto.c ## platform sources -nodist_crypto_module_SOURCES = ## platform nodist sources -crypto_module_LDADD = -crypto_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -crypto_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -crypto_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -crypto_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -crypto_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += lib/libgcrypt-grub/cipher/crypto.lst -BUILT_SOURCES += $(nodist_crypto_module_SOURCES) -CLEANFILES += $(nodist_crypto_module_SOURCES) -MOD_FILES += crypto.mod -MARKER_FILES += crypto.marker -CLEANFILES += crypto.marker - -crypto.marker: $(crypto_module_SOURCES) $(nodist_crypto_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(crypto_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += pbkdf2.module -MODULE_FILES += pbkdf2.module$(EXEEXT) -pbkdf2_module_SOURCES = lib/pbkdf2.c ## platform sources -nodist_pbkdf2_module_SOURCES = ## platform nodist sources -pbkdf2_module_LDADD = -pbkdf2_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -pbkdf2_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -pbkdf2_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -pbkdf2_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -pbkdf2_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_pbkdf2_module_SOURCES) -CLEANFILES += $(nodist_pbkdf2_module_SOURCES) -MOD_FILES += pbkdf2.mod -MARKER_FILES += pbkdf2.marker -CLEANFILES += pbkdf2.marker - -pbkdf2.marker: $(pbkdf2_module_SOURCES) $(nodist_pbkdf2_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(pbkdf2_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -if COND_i386_pc -platform_PROGRAMS += relocator.module -MODULE_FILES += relocator.module$(EXEEXT) -relocator_module_SOURCES = lib/i386/relocator_asm.S lib/i386/relocator16.S lib/i386/relocator32.S lib/i386/relocator64.S lib/i386/relocator.c lib/i386/relocator_common_c.c lib/relocator.c ## platform sources -nodist_relocator_module_SOURCES = ## platform nodist sources -relocator_module_LDADD = -relocator_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -relocator_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -relocator_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -relocator_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -relocator_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += lib/i386/relocator_common.S kern/powerpc/cache_flush.S -BUILT_SOURCES += $(nodist_relocator_module_SOURCES) -CLEANFILES += $(nodist_relocator_module_SOURCES) -MOD_FILES += relocator.mod -MARKER_FILES += relocator.marker -CLEANFILES += relocator.marker - -relocator.marker: $(relocator_module_SOURCES) $(nodist_relocator_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(relocator_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_efi -platform_PROGRAMS += relocator.module -MODULE_FILES += relocator.module$(EXEEXT) -relocator_module_SOURCES = lib/i386/relocator_asm.S lib/i386/relocator16.S lib/i386/relocator32.S lib/i386/relocator64.S lib/i386/relocator.c lib/i386/relocator_common_c.c lib/efi/relocator.c lib/relocator.c ## platform sources -nodist_relocator_module_SOURCES = ## platform nodist sources -relocator_module_LDADD = -relocator_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -relocator_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -relocator_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -relocator_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -relocator_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += lib/i386/relocator_common.S kern/powerpc/cache_flush.S -BUILT_SOURCES += $(nodist_relocator_module_SOURCES) -CLEANFILES += $(nodist_relocator_module_SOURCES) -MOD_FILES += relocator.mod -MARKER_FILES += relocator.marker -CLEANFILES += relocator.marker - -relocator.marker: $(relocator_module_SOURCES) $(nodist_relocator_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(relocator_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_qemu -platform_PROGRAMS += relocator.module -MODULE_FILES += relocator.module$(EXEEXT) -relocator_module_SOURCES = lib/i386/relocator_asm.S lib/i386/relocator16.S lib/i386/relocator32.S lib/i386/relocator64.S lib/i386/relocator.c lib/i386/relocator_common_c.c lib/relocator.c ## platform sources -nodist_relocator_module_SOURCES = ## platform nodist sources -relocator_module_LDADD = -relocator_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -relocator_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -relocator_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -relocator_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -relocator_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += lib/i386/relocator_common.S kern/powerpc/cache_flush.S -BUILT_SOURCES += $(nodist_relocator_module_SOURCES) -CLEANFILES += $(nodist_relocator_module_SOURCES) -MOD_FILES += relocator.mod -MARKER_FILES += relocator.marker -CLEANFILES += relocator.marker - -relocator.marker: $(relocator_module_SOURCES) $(nodist_relocator_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(relocator_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_coreboot -platform_PROGRAMS += relocator.module -MODULE_FILES += relocator.module$(EXEEXT) -relocator_module_SOURCES = lib/i386/relocator_asm.S lib/i386/relocator16.S lib/i386/relocator32.S lib/i386/relocator64.S lib/i386/relocator.c lib/i386/relocator_common_c.c lib/relocator.c ## platform sources -nodist_relocator_module_SOURCES = ## platform nodist sources -relocator_module_LDADD = -relocator_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -relocator_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -relocator_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -relocator_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -relocator_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += lib/i386/relocator_common.S kern/powerpc/cache_flush.S -BUILT_SOURCES += $(nodist_relocator_module_SOURCES) -CLEANFILES += $(nodist_relocator_module_SOURCES) -MOD_FILES += relocator.mod -MARKER_FILES += relocator.marker -CLEANFILES += relocator.marker - -relocator.marker: $(relocator_module_SOURCES) $(nodist_relocator_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(relocator_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_multiboot -platform_PROGRAMS += relocator.module -MODULE_FILES += relocator.module$(EXEEXT) -relocator_module_SOURCES = lib/i386/relocator_asm.S lib/i386/relocator16.S lib/i386/relocator32.S lib/i386/relocator64.S lib/i386/relocator.c lib/i386/relocator_common_c.c lib/relocator.c ## platform sources -nodist_relocator_module_SOURCES = ## platform nodist sources -relocator_module_LDADD = -relocator_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -relocator_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -relocator_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -relocator_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -relocator_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += lib/i386/relocator_common.S kern/powerpc/cache_flush.S -BUILT_SOURCES += $(nodist_relocator_module_SOURCES) -CLEANFILES += $(nodist_relocator_module_SOURCES) -MOD_FILES += relocator.mod -MARKER_FILES += relocator.marker -CLEANFILES += relocator.marker - -relocator.marker: $(relocator_module_SOURCES) $(nodist_relocator_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(relocator_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_ieee1275 -platform_PROGRAMS += relocator.module -MODULE_FILES += relocator.module$(EXEEXT) -relocator_module_SOURCES = lib/ieee1275/relocator.c lib/i386/relocator_asm.S lib/i386/relocator16.S lib/i386/relocator32.S lib/i386/relocator64.S lib/i386/relocator.c lib/i386/relocator_common_c.c lib/relocator.c ## platform sources -nodist_relocator_module_SOURCES = ## platform nodist sources -relocator_module_LDADD = -relocator_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -relocator_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -relocator_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -relocator_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -relocator_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += lib/i386/relocator_common.S kern/powerpc/cache_flush.S -BUILT_SOURCES += $(nodist_relocator_module_SOURCES) -CLEANFILES += $(nodist_relocator_module_SOURCES) -MOD_FILES += relocator.mod -MARKER_FILES += relocator.marker -CLEANFILES += relocator.marker - -relocator.marker: $(relocator_module_SOURCES) $(nodist_relocator_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(relocator_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_x86_64_efi -platform_PROGRAMS += relocator.module -MODULE_FILES += relocator.module$(EXEEXT) -relocator_module_SOURCES = lib/x86_64/efi/relocator.c lib/x86_64/relocator_asm.S lib/i386/relocator16.S lib/i386/relocator32.S lib/i386/relocator64.S lib/i386/relocator.c lib/i386/relocator_common_c.c lib/efi/relocator.c lib/relocator.c ## platform sources -nodist_relocator_module_SOURCES = ## platform nodist sources -relocator_module_LDADD = -relocator_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -relocator_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -relocator_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -relocator_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -relocator_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += lib/i386/relocator_common.S kern/powerpc/cache_flush.S -BUILT_SOURCES += $(nodist_relocator_module_SOURCES) -CLEANFILES += $(nodist_relocator_module_SOURCES) -MOD_FILES += relocator.mod -MARKER_FILES += relocator.marker -CLEANFILES += relocator.marker - -relocator.marker: $(relocator_module_SOURCES) $(nodist_relocator_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(relocator_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_xen -platform_PROGRAMS += relocator.module -MODULE_FILES += relocator.module$(EXEEXT) -relocator_module_SOURCES = lib/i386/relocator_asm.S lib/i386/xen/relocator.S lib/xen/relocator.c lib/i386/relocator_common_c.c lib/relocator.c ## platform sources -nodist_relocator_module_SOURCES = ## platform nodist sources -relocator_module_LDADD = -relocator_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -relocator_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -relocator_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -relocator_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -relocator_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += lib/i386/relocator_common.S kern/powerpc/cache_flush.S -BUILT_SOURCES += $(nodist_relocator_module_SOURCES) -CLEANFILES += $(nodist_relocator_module_SOURCES) -MOD_FILES += relocator.mod -MARKER_FILES += relocator.marker -CLEANFILES += relocator.marker - -relocator.marker: $(relocator_module_SOURCES) $(nodist_relocator_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(relocator_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_x86_64_xen -platform_PROGRAMS += relocator.module -MODULE_FILES += relocator.module$(EXEEXT) -relocator_module_SOURCES = lib/x86_64/relocator_asm.S lib/x86_64/xen/relocator.S lib/xen/relocator.c lib/i386/relocator_common_c.c lib/relocator.c ## platform sources -nodist_relocator_module_SOURCES = ## platform nodist sources -relocator_module_LDADD = -relocator_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -relocator_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -relocator_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -relocator_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -relocator_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += lib/i386/relocator_common.S kern/powerpc/cache_flush.S -BUILT_SOURCES += $(nodist_relocator_module_SOURCES) -CLEANFILES += $(nodist_relocator_module_SOURCES) -MOD_FILES += relocator.mod -MARKER_FILES += relocator.marker -CLEANFILES += relocator.marker - -relocator.marker: $(relocator_module_SOURCES) $(nodist_relocator_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(relocator_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_xen_pvh -platform_PROGRAMS += relocator.module -MODULE_FILES += relocator.module$(EXEEXT) -relocator_module_SOURCES = lib/i386/relocator16.S lib/i386/relocator32.S lib/i386/relocator64.S lib/i386/relocator_asm.S lib/i386/relocator.c lib/i386/relocator_common_c.c lib/relocator.c ## platform sources -nodist_relocator_module_SOURCES = ## platform nodist sources -relocator_module_LDADD = -relocator_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -relocator_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -relocator_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -relocator_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -relocator_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += lib/i386/relocator_common.S kern/powerpc/cache_flush.S -BUILT_SOURCES += $(nodist_relocator_module_SOURCES) -CLEANFILES += $(nodist_relocator_module_SOURCES) -MOD_FILES += relocator.mod -MARKER_FILES += relocator.marker -CLEANFILES += relocator.marker - -relocator.marker: $(relocator_module_SOURCES) $(nodist_relocator_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(relocator_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_mips_loongson -platform_PROGRAMS += relocator.module -MODULE_FILES += relocator.module$(EXEEXT) -relocator_module_SOURCES = lib/mips/relocator_asm.S lib/mips/relocator.c lib/relocator.c ## platform sources -nodist_relocator_module_SOURCES = ## platform nodist sources -relocator_module_LDADD = -relocator_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -relocator_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -relocator_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -relocator_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -relocator_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += lib/i386/relocator_common.S kern/powerpc/cache_flush.S -BUILT_SOURCES += $(nodist_relocator_module_SOURCES) -CLEANFILES += $(nodist_relocator_module_SOURCES) -MOD_FILES += relocator.mod -MARKER_FILES += relocator.marker -CLEANFILES += relocator.marker - -relocator.marker: $(relocator_module_SOURCES) $(nodist_relocator_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(relocator_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_powerpc_ieee1275 -platform_PROGRAMS += relocator.module -MODULE_FILES += relocator.module$(EXEEXT) -relocator_module_SOURCES = lib/powerpc/relocator_asm.S lib/powerpc/relocator.c lib/ieee1275/relocator.c lib/relocator.c ## platform sources -nodist_relocator_module_SOURCES = ## platform nodist sources -relocator_module_LDADD = -relocator_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -relocator_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -relocator_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -relocator_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -relocator_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += lib/i386/relocator_common.S kern/powerpc/cache_flush.S -BUILT_SOURCES += $(nodist_relocator_module_SOURCES) -CLEANFILES += $(nodist_relocator_module_SOURCES) -MOD_FILES += relocator.mod -MARKER_FILES += relocator.marker -CLEANFILES += relocator.marker - -relocator.marker: $(relocator_module_SOURCES) $(nodist_relocator_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(relocator_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_mips_arc -platform_PROGRAMS += relocator.module -MODULE_FILES += relocator.module$(EXEEXT) -relocator_module_SOURCES = lib/mips/relocator_asm.S lib/mips/relocator.c lib/relocator.c ## platform sources -nodist_relocator_module_SOURCES = ## platform nodist sources -relocator_module_LDADD = -relocator_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -relocator_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -relocator_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -relocator_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -relocator_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += lib/i386/relocator_common.S kern/powerpc/cache_flush.S -BUILT_SOURCES += $(nodist_relocator_module_SOURCES) -CLEANFILES += $(nodist_relocator_module_SOURCES) -MOD_FILES += relocator.mod -MARKER_FILES += relocator.marker -CLEANFILES += relocator.marker - -relocator.marker: $(relocator_module_SOURCES) $(nodist_relocator_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(relocator_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_mips_qemu_mips -platform_PROGRAMS += relocator.module -MODULE_FILES += relocator.module$(EXEEXT) -relocator_module_SOURCES = lib/mips/relocator_asm.S lib/mips/relocator.c lib/relocator.c ## platform sources -nodist_relocator_module_SOURCES = ## platform nodist sources -relocator_module_LDADD = -relocator_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -relocator_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -relocator_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -relocator_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -relocator_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += lib/i386/relocator_common.S kern/powerpc/cache_flush.S -BUILT_SOURCES += $(nodist_relocator_module_SOURCES) -CLEANFILES += $(nodist_relocator_module_SOURCES) -MOD_FILES += relocator.mod -MARKER_FILES += relocator.marker -CLEANFILES += relocator.marker - -relocator.marker: $(relocator_module_SOURCES) $(nodist_relocator_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(relocator_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_pc -platform_PROGRAMS += datetime.module -MODULE_FILES += datetime.module$(EXEEXT) -datetime_module_SOURCES = lib/cmos_datetime.c ## platform sources -nodist_datetime_module_SOURCES = ## platform nodist sources -datetime_module_LDADD = -datetime_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -datetime_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -datetime_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -datetime_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -datetime_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_datetime_module_SOURCES) -CLEANFILES += $(nodist_datetime_module_SOURCES) -MOD_FILES += datetime.mod -MARKER_FILES += datetime.marker -CLEANFILES += datetime.marker - -datetime.marker: $(datetime_module_SOURCES) $(nodist_datetime_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(datetime_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_efi -platform_PROGRAMS += datetime.module -MODULE_FILES += datetime.module$(EXEEXT) -datetime_module_SOURCES = lib/efi/datetime.c ## platform sources -nodist_datetime_module_SOURCES = ## platform nodist sources -datetime_module_LDADD = -datetime_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -datetime_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -datetime_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -datetime_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -datetime_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_datetime_module_SOURCES) -CLEANFILES += $(nodist_datetime_module_SOURCES) -MOD_FILES += datetime.mod -MARKER_FILES += datetime.marker -CLEANFILES += datetime.marker - -datetime.marker: $(datetime_module_SOURCES) $(nodist_datetime_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(datetime_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_qemu -platform_PROGRAMS += datetime.module -MODULE_FILES += datetime.module$(EXEEXT) -datetime_module_SOURCES = lib/cmos_datetime.c ## platform sources -nodist_datetime_module_SOURCES = ## platform nodist sources -datetime_module_LDADD = -datetime_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -datetime_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -datetime_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -datetime_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -datetime_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_datetime_module_SOURCES) -CLEANFILES += $(nodist_datetime_module_SOURCES) -MOD_FILES += datetime.mod -MARKER_FILES += datetime.marker -CLEANFILES += datetime.marker - -datetime.marker: $(datetime_module_SOURCES) $(nodist_datetime_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(datetime_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_coreboot -platform_PROGRAMS += datetime.module -MODULE_FILES += datetime.module$(EXEEXT) -datetime_module_SOURCES = lib/cmos_datetime.c ## platform sources -nodist_datetime_module_SOURCES = ## platform nodist sources -datetime_module_LDADD = -datetime_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -datetime_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -datetime_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -datetime_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -datetime_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_datetime_module_SOURCES) -CLEANFILES += $(nodist_datetime_module_SOURCES) -MOD_FILES += datetime.mod -MARKER_FILES += datetime.marker -CLEANFILES += datetime.marker - -datetime.marker: $(datetime_module_SOURCES) $(nodist_datetime_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(datetime_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_multiboot -platform_PROGRAMS += datetime.module -MODULE_FILES += datetime.module$(EXEEXT) -datetime_module_SOURCES = lib/cmos_datetime.c ## platform sources -nodist_datetime_module_SOURCES = ## platform nodist sources -datetime_module_LDADD = -datetime_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -datetime_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -datetime_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -datetime_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -datetime_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_datetime_module_SOURCES) -CLEANFILES += $(nodist_datetime_module_SOURCES) -MOD_FILES += datetime.mod -MARKER_FILES += datetime.marker -CLEANFILES += datetime.marker - -datetime.marker: $(datetime_module_SOURCES) $(nodist_datetime_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(datetime_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_ieee1275 -platform_PROGRAMS += datetime.module -MODULE_FILES += datetime.module$(EXEEXT) -datetime_module_SOURCES = lib/cmos_datetime.c ## platform sources -nodist_datetime_module_SOURCES = ## platform nodist sources -datetime_module_LDADD = -datetime_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -datetime_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -datetime_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -datetime_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -datetime_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_datetime_module_SOURCES) -CLEANFILES += $(nodist_datetime_module_SOURCES) -MOD_FILES += datetime.mod -MARKER_FILES += datetime.marker -CLEANFILES += datetime.marker - -datetime.marker: $(datetime_module_SOURCES) $(nodist_datetime_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(datetime_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_x86_64_efi -platform_PROGRAMS += datetime.module -MODULE_FILES += datetime.module$(EXEEXT) -datetime_module_SOURCES = lib/efi/datetime.c ## platform sources -nodist_datetime_module_SOURCES = ## platform nodist sources -datetime_module_LDADD = -datetime_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -datetime_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -datetime_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -datetime_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -datetime_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_datetime_module_SOURCES) -CLEANFILES += $(nodist_datetime_module_SOURCES) -MOD_FILES += datetime.mod -MARKER_FILES += datetime.marker -CLEANFILES += datetime.marker - -datetime.marker: $(datetime_module_SOURCES) $(nodist_datetime_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(datetime_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_xen -platform_PROGRAMS += datetime.module -MODULE_FILES += datetime.module$(EXEEXT) -datetime_module_SOURCES = lib/xen/datetime.c ## platform sources -nodist_datetime_module_SOURCES = ## platform nodist sources -datetime_module_LDADD = -datetime_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -datetime_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -datetime_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -datetime_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -datetime_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_datetime_module_SOURCES) -CLEANFILES += $(nodist_datetime_module_SOURCES) -MOD_FILES += datetime.mod -MARKER_FILES += datetime.marker -CLEANFILES += datetime.marker - -datetime.marker: $(datetime_module_SOURCES) $(nodist_datetime_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(datetime_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_x86_64_xen -platform_PROGRAMS += datetime.module -MODULE_FILES += datetime.module$(EXEEXT) -datetime_module_SOURCES = lib/xen/datetime.c ## platform sources -nodist_datetime_module_SOURCES = ## platform nodist sources -datetime_module_LDADD = -datetime_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -datetime_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -datetime_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -datetime_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -datetime_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_datetime_module_SOURCES) -CLEANFILES += $(nodist_datetime_module_SOURCES) -MOD_FILES += datetime.mod -MARKER_FILES += datetime.marker -CLEANFILES += datetime.marker - -datetime.marker: $(datetime_module_SOURCES) $(nodist_datetime_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(datetime_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_xen_pvh -platform_PROGRAMS += datetime.module -MODULE_FILES += datetime.module$(EXEEXT) -datetime_module_SOURCES = lib/xen/datetime.c ## platform sources -nodist_datetime_module_SOURCES = ## platform nodist sources -datetime_module_LDADD = -datetime_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -datetime_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -datetime_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -datetime_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -datetime_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_datetime_module_SOURCES) -CLEANFILES += $(nodist_datetime_module_SOURCES) -MOD_FILES += datetime.mod -MARKER_FILES += datetime.marker -CLEANFILES += datetime.marker - -datetime.marker: $(datetime_module_SOURCES) $(nodist_datetime_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(datetime_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_mips_loongson -platform_PROGRAMS += datetime.module -MODULE_FILES += datetime.module$(EXEEXT) -datetime_module_SOURCES = lib/cmos_datetime.c ## platform sources -nodist_datetime_module_SOURCES = ## platform nodist sources -datetime_module_LDADD = -datetime_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -datetime_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -datetime_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -datetime_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -datetime_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_datetime_module_SOURCES) -CLEANFILES += $(nodist_datetime_module_SOURCES) -MOD_FILES += datetime.mod -MARKER_FILES += datetime.marker -CLEANFILES += datetime.marker - -datetime.marker: $(datetime_module_SOURCES) $(nodist_datetime_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(datetime_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_sparc64_ieee1275 -platform_PROGRAMS += datetime.module -MODULE_FILES += datetime.module$(EXEEXT) -datetime_module_SOURCES = lib/ieee1275/datetime.c lib/ieee1275/cmos.c lib/cmos_datetime.c ## platform sources -nodist_datetime_module_SOURCES = ## platform nodist sources -datetime_module_LDADD = -datetime_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -datetime_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -datetime_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -datetime_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -datetime_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_datetime_module_SOURCES) -CLEANFILES += $(nodist_datetime_module_SOURCES) -MOD_FILES += datetime.mod -MARKER_FILES += datetime.marker -CLEANFILES += datetime.marker - -datetime.marker: $(datetime_module_SOURCES) $(nodist_datetime_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(datetime_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_powerpc_ieee1275 -platform_PROGRAMS += datetime.module -MODULE_FILES += datetime.module$(EXEEXT) -datetime_module_SOURCES = lib/ieee1275/datetime.c lib/ieee1275/cmos.c lib/cmos_datetime.c ## platform sources -nodist_datetime_module_SOURCES = ## platform nodist sources -datetime_module_LDADD = -datetime_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -datetime_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -datetime_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -datetime_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -datetime_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_datetime_module_SOURCES) -CLEANFILES += $(nodist_datetime_module_SOURCES) -MOD_FILES += datetime.mod -MARKER_FILES += datetime.marker -CLEANFILES += datetime.marker - -datetime.marker: $(datetime_module_SOURCES) $(nodist_datetime_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(datetime_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_mips_arc -platform_PROGRAMS += datetime.module -MODULE_FILES += datetime.module$(EXEEXT) -datetime_module_SOURCES = lib/arc/datetime.c ## platform sources -nodist_datetime_module_SOURCES = ## platform nodist sources -datetime_module_LDADD = -datetime_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -datetime_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -datetime_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -datetime_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -datetime_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_datetime_module_SOURCES) -CLEANFILES += $(nodist_datetime_module_SOURCES) -MOD_FILES += datetime.mod -MARKER_FILES += datetime.marker -CLEANFILES += datetime.marker - -datetime.marker: $(datetime_module_SOURCES) $(nodist_datetime_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(datetime_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_ia64_efi -platform_PROGRAMS += datetime.module -MODULE_FILES += datetime.module$(EXEEXT) -datetime_module_SOURCES = lib/efi/datetime.c ## platform sources -nodist_datetime_module_SOURCES = ## platform nodist sources -datetime_module_LDADD = -datetime_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -datetime_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -datetime_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -datetime_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -datetime_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_datetime_module_SOURCES) -CLEANFILES += $(nodist_datetime_module_SOURCES) -MOD_FILES += datetime.mod -MARKER_FILES += datetime.marker -CLEANFILES += datetime.marker - -datetime.marker: $(datetime_module_SOURCES) $(nodist_datetime_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(datetime_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_mips_qemu_mips -platform_PROGRAMS += datetime.module -MODULE_FILES += datetime.module$(EXEEXT) -datetime_module_SOURCES = lib/cmos_datetime.c ## platform sources -nodist_datetime_module_SOURCES = ## platform nodist sources -datetime_module_LDADD = -datetime_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -datetime_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -datetime_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -datetime_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -datetime_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_datetime_module_SOURCES) -CLEANFILES += $(nodist_datetime_module_SOURCES) -MOD_FILES += datetime.mod -MARKER_FILES += datetime.marker -CLEANFILES += datetime.marker - -datetime.marker: $(datetime_module_SOURCES) $(nodist_datetime_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(datetime_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_arm_uboot -platform_PROGRAMS += datetime.module -MODULE_FILES += datetime.module$(EXEEXT) -datetime_module_SOURCES = lib/dummy/datetime.c ## platform sources -nodist_datetime_module_SOURCES = ## platform nodist sources -datetime_module_LDADD = -datetime_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -datetime_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -datetime_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -datetime_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -datetime_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_datetime_module_SOURCES) -CLEANFILES += $(nodist_datetime_module_SOURCES) -MOD_FILES += datetime.mod -MARKER_FILES += datetime.marker -CLEANFILES += datetime.marker - -datetime.marker: $(datetime_module_SOURCES) $(nodist_datetime_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(datetime_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_arm_efi -platform_PROGRAMS += datetime.module -MODULE_FILES += datetime.module$(EXEEXT) -datetime_module_SOURCES = lib/efi/datetime.c ## platform sources -nodist_datetime_module_SOURCES = ## platform nodist sources -datetime_module_LDADD = -datetime_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -datetime_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -datetime_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -datetime_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -datetime_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_datetime_module_SOURCES) -CLEANFILES += $(nodist_datetime_module_SOURCES) -MOD_FILES += datetime.mod -MARKER_FILES += datetime.marker -CLEANFILES += datetime.marker - -datetime.marker: $(datetime_module_SOURCES) $(nodist_datetime_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(datetime_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_arm64_efi -platform_PROGRAMS += datetime.module -MODULE_FILES += datetime.module$(EXEEXT) -datetime_module_SOURCES = lib/efi/datetime.c ## platform sources -nodist_datetime_module_SOURCES = ## platform nodist sources -datetime_module_LDADD = -datetime_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -datetime_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -datetime_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -datetime_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -datetime_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_datetime_module_SOURCES) -CLEANFILES += $(nodist_datetime_module_SOURCES) -MOD_FILES += datetime.mod -MARKER_FILES += datetime.marker -CLEANFILES += datetime.marker - -datetime.marker: $(datetime_module_SOURCES) $(nodist_datetime_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(datetime_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_arm_coreboot -platform_PROGRAMS += datetime.module -MODULE_FILES += datetime.module$(EXEEXT) -datetime_module_SOURCES = lib/dummy/datetime.c ## platform sources -nodist_datetime_module_SOURCES = ## platform nodist sources -datetime_module_LDADD = -datetime_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -datetime_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -datetime_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -datetime_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -datetime_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_datetime_module_SOURCES) -CLEANFILES += $(nodist_datetime_module_SOURCES) -MOD_FILES += datetime.mod -MARKER_FILES += datetime.marker -CLEANFILES += datetime.marker - -datetime.marker: $(datetime_module_SOURCES) $(nodist_datetime_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(datetime_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_riscv32_efi -platform_PROGRAMS += datetime.module -MODULE_FILES += datetime.module$(EXEEXT) -datetime_module_SOURCES = lib/efi/datetime.c ## platform sources -nodist_datetime_module_SOURCES = ## platform nodist sources -datetime_module_LDADD = -datetime_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -datetime_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -datetime_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -datetime_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -datetime_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_datetime_module_SOURCES) -CLEANFILES += $(nodist_datetime_module_SOURCES) -MOD_FILES += datetime.mod -MARKER_FILES += datetime.marker -CLEANFILES += datetime.marker - -datetime.marker: $(datetime_module_SOURCES) $(nodist_datetime_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(datetime_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_riscv64_efi -platform_PROGRAMS += datetime.module -MODULE_FILES += datetime.module$(EXEEXT) -datetime_module_SOURCES = lib/efi/datetime.c ## platform sources -nodist_datetime_module_SOURCES = ## platform nodist sources -datetime_module_LDADD = -datetime_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -datetime_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -datetime_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -datetime_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -datetime_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_datetime_module_SOURCES) -CLEANFILES += $(nodist_datetime_module_SOURCES) -MOD_FILES += datetime.mod -MARKER_FILES += datetime.marker -CLEANFILES += datetime.marker - -datetime.marker: $(datetime_module_SOURCES) $(nodist_datetime_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(datetime_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif -platform_PROGRAMS += setjmp.module -MODULE_FILES += setjmp.module$(EXEEXT) -setjmp_module_SOURCES = lib/setjmp.S ## platform sources -nodist_setjmp_module_SOURCES = ## platform nodist sources -setjmp_module_LDADD = -setjmp_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -setjmp_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -setjmp_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -setjmp_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -setjmp_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += lib/i386/setjmp.S lib/mips/setjmp.S lib/x86_64/setjmp.S lib/sparc64/setjmp.S lib/powerpc/setjmp.S lib/ia64/setjmp.S lib/ia64/longjmp.S lib/arm/setjmp.S lib/arm64/setjmp.S lib/riscv/setjmp.S -BUILT_SOURCES += $(nodist_setjmp_module_SOURCES) -CLEANFILES += $(nodist_setjmp_module_SOURCES) -MOD_FILES += setjmp.mod -MARKER_FILES += setjmp.marker -CLEANFILES += setjmp.marker - -setjmp.marker: $(setjmp_module_SOURCES) $(nodist_setjmp_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(setjmp_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -if COND_i386_pc -platform_PROGRAMS += aout.module -MODULE_FILES += aout.module$(EXEEXT) -aout_module_SOURCES = loader/aout.c ## platform sources -nodist_aout_module_SOURCES = ## platform nodist sources -aout_module_LDADD = -aout_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -aout_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -aout_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -aout_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -aout_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_aout_module_SOURCES) -CLEANFILES += $(nodist_aout_module_SOURCES) -MOD_FILES += aout.mod -MARKER_FILES += aout.marker -CLEANFILES += aout.marker - -aout.marker: $(aout_module_SOURCES) $(nodist_aout_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(aout_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_efi -platform_PROGRAMS += aout.module -MODULE_FILES += aout.module$(EXEEXT) -aout_module_SOURCES = loader/aout.c ## platform sources -nodist_aout_module_SOURCES = ## platform nodist sources -aout_module_LDADD = -aout_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -aout_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -aout_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -aout_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -aout_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_aout_module_SOURCES) -CLEANFILES += $(nodist_aout_module_SOURCES) -MOD_FILES += aout.mod -MARKER_FILES += aout.marker -CLEANFILES += aout.marker - -aout.marker: $(aout_module_SOURCES) $(nodist_aout_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(aout_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_qemu -platform_PROGRAMS += aout.module -MODULE_FILES += aout.module$(EXEEXT) -aout_module_SOURCES = loader/aout.c ## platform sources -nodist_aout_module_SOURCES = ## platform nodist sources -aout_module_LDADD = -aout_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -aout_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -aout_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -aout_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -aout_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_aout_module_SOURCES) -CLEANFILES += $(nodist_aout_module_SOURCES) -MOD_FILES += aout.mod -MARKER_FILES += aout.marker -CLEANFILES += aout.marker - -aout.marker: $(aout_module_SOURCES) $(nodist_aout_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(aout_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_coreboot -platform_PROGRAMS += aout.module -MODULE_FILES += aout.module$(EXEEXT) -aout_module_SOURCES = loader/aout.c ## platform sources -nodist_aout_module_SOURCES = ## platform nodist sources -aout_module_LDADD = -aout_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -aout_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -aout_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -aout_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -aout_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_aout_module_SOURCES) -CLEANFILES += $(nodist_aout_module_SOURCES) -MOD_FILES += aout.mod -MARKER_FILES += aout.marker -CLEANFILES += aout.marker - -aout.marker: $(aout_module_SOURCES) $(nodist_aout_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(aout_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_multiboot -platform_PROGRAMS += aout.module -MODULE_FILES += aout.module$(EXEEXT) -aout_module_SOURCES = loader/aout.c ## platform sources -nodist_aout_module_SOURCES = ## platform nodist sources -aout_module_LDADD = -aout_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -aout_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -aout_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -aout_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -aout_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_aout_module_SOURCES) -CLEANFILES += $(nodist_aout_module_SOURCES) -MOD_FILES += aout.mod -MARKER_FILES += aout.marker -CLEANFILES += aout.marker - -aout.marker: $(aout_module_SOURCES) $(nodist_aout_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(aout_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_ieee1275 -platform_PROGRAMS += aout.module -MODULE_FILES += aout.module$(EXEEXT) -aout_module_SOURCES = loader/aout.c ## platform sources -nodist_aout_module_SOURCES = ## platform nodist sources -aout_module_LDADD = -aout_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -aout_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -aout_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -aout_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -aout_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_aout_module_SOURCES) -CLEANFILES += $(nodist_aout_module_SOURCES) -MOD_FILES += aout.mod -MARKER_FILES += aout.marker -CLEANFILES += aout.marker - -aout.marker: $(aout_module_SOURCES) $(nodist_aout_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(aout_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_x86_64_efi -platform_PROGRAMS += aout.module -MODULE_FILES += aout.module$(EXEEXT) -aout_module_SOURCES = loader/aout.c ## platform sources -nodist_aout_module_SOURCES = ## platform nodist sources -aout_module_LDADD = -aout_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -aout_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -aout_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -aout_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -aout_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_aout_module_SOURCES) -CLEANFILES += $(nodist_aout_module_SOURCES) -MOD_FILES += aout.mod -MARKER_FILES += aout.marker -CLEANFILES += aout.marker - -aout.marker: $(aout_module_SOURCES) $(nodist_aout_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(aout_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_pc -platform_PROGRAMS += bsd.module -MODULE_FILES += bsd.module$(EXEEXT) -bsd_module_SOURCES = loader/i386/bsd.c loader/i386/bsd32.c loader/i386/bsd64.c ## platform sources -nodist_bsd_module_SOURCES = ## platform nodist sources -bsd_module_LDADD = -bsd_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -bsd_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -bsd_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -bsd_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -bsd_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += loader/i386/bsdXX.c loader/i386/bsd_pagetable.c -BUILT_SOURCES += $(nodist_bsd_module_SOURCES) -CLEANFILES += $(nodist_bsd_module_SOURCES) -MOD_FILES += bsd.mod -MARKER_FILES += bsd.marker -CLEANFILES += bsd.marker - -bsd.marker: $(bsd_module_SOURCES) $(nodist_bsd_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(bsd_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_efi -platform_PROGRAMS += bsd.module -MODULE_FILES += bsd.module$(EXEEXT) -bsd_module_SOURCES = loader/i386/bsd.c loader/i386/bsd32.c loader/i386/bsd64.c ## platform sources -nodist_bsd_module_SOURCES = ## platform nodist sources -bsd_module_LDADD = -bsd_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -bsd_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -bsd_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -bsd_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -bsd_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += loader/i386/bsdXX.c loader/i386/bsd_pagetable.c -BUILT_SOURCES += $(nodist_bsd_module_SOURCES) -CLEANFILES += $(nodist_bsd_module_SOURCES) -MOD_FILES += bsd.mod -MARKER_FILES += bsd.marker -CLEANFILES += bsd.marker - -bsd.marker: $(bsd_module_SOURCES) $(nodist_bsd_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(bsd_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_qemu -platform_PROGRAMS += bsd.module -MODULE_FILES += bsd.module$(EXEEXT) -bsd_module_SOURCES = loader/i386/bsd.c loader/i386/bsd32.c loader/i386/bsd64.c ## platform sources -nodist_bsd_module_SOURCES = ## platform nodist sources -bsd_module_LDADD = -bsd_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -bsd_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -bsd_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -bsd_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -bsd_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += loader/i386/bsdXX.c loader/i386/bsd_pagetable.c -BUILT_SOURCES += $(nodist_bsd_module_SOURCES) -CLEANFILES += $(nodist_bsd_module_SOURCES) -MOD_FILES += bsd.mod -MARKER_FILES += bsd.marker -CLEANFILES += bsd.marker - -bsd.marker: $(bsd_module_SOURCES) $(nodist_bsd_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(bsd_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_coreboot -platform_PROGRAMS += bsd.module -MODULE_FILES += bsd.module$(EXEEXT) -bsd_module_SOURCES = loader/i386/bsd.c loader/i386/bsd32.c loader/i386/bsd64.c ## platform sources -nodist_bsd_module_SOURCES = ## platform nodist sources -bsd_module_LDADD = -bsd_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -bsd_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -bsd_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -bsd_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -bsd_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += loader/i386/bsdXX.c loader/i386/bsd_pagetable.c -BUILT_SOURCES += $(nodist_bsd_module_SOURCES) -CLEANFILES += $(nodist_bsd_module_SOURCES) -MOD_FILES += bsd.mod -MARKER_FILES += bsd.marker -CLEANFILES += bsd.marker - -bsd.marker: $(bsd_module_SOURCES) $(nodist_bsd_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(bsd_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_multiboot -platform_PROGRAMS += bsd.module -MODULE_FILES += bsd.module$(EXEEXT) -bsd_module_SOURCES = loader/i386/bsd.c loader/i386/bsd32.c loader/i386/bsd64.c ## platform sources -nodist_bsd_module_SOURCES = ## platform nodist sources -bsd_module_LDADD = -bsd_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -bsd_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -bsd_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -bsd_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -bsd_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += loader/i386/bsdXX.c loader/i386/bsd_pagetable.c -BUILT_SOURCES += $(nodist_bsd_module_SOURCES) -CLEANFILES += $(nodist_bsd_module_SOURCES) -MOD_FILES += bsd.mod -MARKER_FILES += bsd.marker -CLEANFILES += bsd.marker - -bsd.marker: $(bsd_module_SOURCES) $(nodist_bsd_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(bsd_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_ieee1275 -platform_PROGRAMS += bsd.module -MODULE_FILES += bsd.module$(EXEEXT) -bsd_module_SOURCES = loader/i386/bsd.c loader/i386/bsd32.c loader/i386/bsd64.c ## platform sources -nodist_bsd_module_SOURCES = ## platform nodist sources -bsd_module_LDADD = -bsd_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -bsd_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -bsd_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -bsd_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -bsd_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += loader/i386/bsdXX.c loader/i386/bsd_pagetable.c -BUILT_SOURCES += $(nodist_bsd_module_SOURCES) -CLEANFILES += $(nodist_bsd_module_SOURCES) -MOD_FILES += bsd.mod -MARKER_FILES += bsd.marker -CLEANFILES += bsd.marker - -bsd.marker: $(bsd_module_SOURCES) $(nodist_bsd_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(bsd_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_x86_64_efi -platform_PROGRAMS += bsd.module -MODULE_FILES += bsd.module$(EXEEXT) -bsd_module_SOURCES = loader/i386/bsd.c loader/i386/bsd32.c loader/i386/bsd64.c ## platform sources -nodist_bsd_module_SOURCES = ## platform nodist sources -bsd_module_LDADD = -bsd_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -bsd_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -bsd_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -bsd_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -bsd_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += loader/i386/bsdXX.c loader/i386/bsd_pagetable.c -BUILT_SOURCES += $(nodist_bsd_module_SOURCES) -CLEANFILES += $(nodist_bsd_module_SOURCES) -MOD_FILES += bsd.mod -MARKER_FILES += bsd.marker -CLEANFILES += bsd.marker - -bsd.marker: $(bsd_module_SOURCES) $(nodist_bsd_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(bsd_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_pc -platform_PROGRAMS += plan9.module -MODULE_FILES += plan9.module$(EXEEXT) -plan9_module_SOURCES = loader/i386/pc/plan9.c ## platform sources -nodist_plan9_module_SOURCES = ## platform nodist sources -plan9_module_LDADD = -plan9_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -plan9_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -plan9_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -plan9_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -plan9_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_plan9_module_SOURCES) -CLEANFILES += $(nodist_plan9_module_SOURCES) -MOD_FILES += plan9.mod -MARKER_FILES += plan9.marker -CLEANFILES += plan9.marker - -plan9.marker: $(plan9_module_SOURCES) $(nodist_plan9_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(plan9_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_pc -platform_PROGRAMS += linux16.module -MODULE_FILES += linux16.module$(EXEEXT) -linux16_module_SOURCES = loader/i386/pc/linux.c ## platform sources -nodist_linux16_module_SOURCES = ## platform nodist sources -linux16_module_LDADD = -linux16_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -linux16_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -linux16_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -linux16_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -linux16_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_linux16_module_SOURCES) -CLEANFILES += $(nodist_linux16_module_SOURCES) -MOD_FILES += linux16.mod -MARKER_FILES += linux16.marker -CLEANFILES += linux16.marker - -linux16.marker: $(linux16_module_SOURCES) $(nodist_linux16_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(linux16_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_efi -platform_PROGRAMS += linux16.module -MODULE_FILES += linux16.module$(EXEEXT) -linux16_module_SOURCES = loader/i386/pc/linux.c ## platform sources -nodist_linux16_module_SOURCES = ## platform nodist sources -linux16_module_LDADD = -linux16_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -linux16_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -linux16_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -linux16_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -linux16_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_linux16_module_SOURCES) -CLEANFILES += $(nodist_linux16_module_SOURCES) -MOD_FILES += linux16.mod -MARKER_FILES += linux16.marker -CLEANFILES += linux16.marker - -linux16.marker: $(linux16_module_SOURCES) $(nodist_linux16_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(linux16_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_qemu -platform_PROGRAMS += linux16.module -MODULE_FILES += linux16.module$(EXEEXT) -linux16_module_SOURCES = loader/i386/pc/linux.c ## platform sources -nodist_linux16_module_SOURCES = ## platform nodist sources -linux16_module_LDADD = -linux16_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -linux16_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -linux16_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -linux16_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -linux16_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_linux16_module_SOURCES) -CLEANFILES += $(nodist_linux16_module_SOURCES) -MOD_FILES += linux16.mod -MARKER_FILES += linux16.marker -CLEANFILES += linux16.marker - -linux16.marker: $(linux16_module_SOURCES) $(nodist_linux16_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(linux16_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_coreboot -platform_PROGRAMS += linux16.module -MODULE_FILES += linux16.module$(EXEEXT) -linux16_module_SOURCES = loader/i386/pc/linux.c ## platform sources -nodist_linux16_module_SOURCES = ## platform nodist sources -linux16_module_LDADD = -linux16_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -linux16_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -linux16_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -linux16_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -linux16_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_linux16_module_SOURCES) -CLEANFILES += $(nodist_linux16_module_SOURCES) -MOD_FILES += linux16.mod -MARKER_FILES += linux16.marker -CLEANFILES += linux16.marker - -linux16.marker: $(linux16_module_SOURCES) $(nodist_linux16_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(linux16_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_multiboot -platform_PROGRAMS += linux16.module -MODULE_FILES += linux16.module$(EXEEXT) -linux16_module_SOURCES = loader/i386/pc/linux.c ## platform sources -nodist_linux16_module_SOURCES = ## platform nodist sources -linux16_module_LDADD = -linux16_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -linux16_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -linux16_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -linux16_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -linux16_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_linux16_module_SOURCES) -CLEANFILES += $(nodist_linux16_module_SOURCES) -MOD_FILES += linux16.mod -MARKER_FILES += linux16.marker -CLEANFILES += linux16.marker - -linux16.marker: $(linux16_module_SOURCES) $(nodist_linux16_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(linux16_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_ieee1275 -platform_PROGRAMS += linux16.module -MODULE_FILES += linux16.module$(EXEEXT) -linux16_module_SOURCES = loader/i386/pc/linux.c ## platform sources -nodist_linux16_module_SOURCES = ## platform nodist sources -linux16_module_LDADD = -linux16_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -linux16_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -linux16_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -linux16_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -linux16_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_linux16_module_SOURCES) -CLEANFILES += $(nodist_linux16_module_SOURCES) -MOD_FILES += linux16.mod -MARKER_FILES += linux16.marker -CLEANFILES += linux16.marker - -linux16.marker: $(linux16_module_SOURCES) $(nodist_linux16_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(linux16_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_x86_64_efi -platform_PROGRAMS += linux16.module -MODULE_FILES += linux16.module$(EXEEXT) -linux16_module_SOURCES = loader/i386/pc/linux.c ## platform sources -nodist_linux16_module_SOURCES = ## platform nodist sources -linux16_module_LDADD = -linux16_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -linux16_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -linux16_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -linux16_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -linux16_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_linux16_module_SOURCES) -CLEANFILES += $(nodist_linux16_module_SOURCES) -MOD_FILES += linux16.mod -MARKER_FILES += linux16.marker -CLEANFILES += linux16.marker - -linux16.marker: $(linux16_module_SOURCES) $(nodist_linux16_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(linux16_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_pc -platform_PROGRAMS += ntldr.module -MODULE_FILES += ntldr.module$(EXEEXT) -ntldr_module_SOURCES = loader/i386/pc/ntldr.c ## platform sources -nodist_ntldr_module_SOURCES = ## platform nodist sources -ntldr_module_LDADD = -ntldr_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -ntldr_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -ntldr_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -ntldr_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -ntldr_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_ntldr_module_SOURCES) -CLEANFILES += $(nodist_ntldr_module_SOURCES) -MOD_FILES += ntldr.mod -MARKER_FILES += ntldr.marker -CLEANFILES += ntldr.marker - -ntldr.marker: $(ntldr_module_SOURCES) $(nodist_ntldr_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ntldr_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_pc -platform_PROGRAMS += truecrypt.module -MODULE_FILES += truecrypt.module$(EXEEXT) -truecrypt_module_SOURCES = loader/i386/pc/truecrypt.c ## platform sources -nodist_truecrypt_module_SOURCES = ## platform nodist sources -truecrypt_module_LDADD = -truecrypt_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -truecrypt_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -truecrypt_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -truecrypt_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -truecrypt_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_truecrypt_module_SOURCES) -CLEANFILES += $(nodist_truecrypt_module_SOURCES) -MOD_FILES += truecrypt.mod -MARKER_FILES += truecrypt.marker -CLEANFILES += truecrypt.marker - -truecrypt.marker: $(truecrypt_module_SOURCES) $(nodist_truecrypt_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(truecrypt_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_pc -platform_PROGRAMS += freedos.module -MODULE_FILES += freedos.module$(EXEEXT) -freedos_module_SOURCES = loader/i386/pc/freedos.c ## platform sources -nodist_freedos_module_SOURCES = ## platform nodist sources -freedos_module_LDADD = -freedos_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -freedos_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -freedos_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -freedos_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -freedos_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_freedos_module_SOURCES) -CLEANFILES += $(nodist_freedos_module_SOURCES) -MOD_FILES += freedos.mod -MARKER_FILES += freedos.marker -CLEANFILES += freedos.marker - -freedos.marker: $(freedos_module_SOURCES) $(nodist_freedos_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(freedos_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_pc -platform_PROGRAMS += pxechain.module -MODULE_FILES += pxechain.module$(EXEEXT) -pxechain_module_SOURCES = loader/i386/pc/pxechainloader.c ## platform sources -nodist_pxechain_module_SOURCES = ## platform nodist sources -pxechain_module_LDADD = -pxechain_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -pxechain_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -pxechain_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -pxechain_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -pxechain_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_pxechain_module_SOURCES) -CLEANFILES += $(nodist_pxechain_module_SOURCES) -MOD_FILES += pxechain.mod -MARKER_FILES += pxechain.marker -CLEANFILES += pxechain.marker - -pxechain.marker: $(pxechain_module_SOURCES) $(nodist_pxechain_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(pxechain_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_pc -platform_PROGRAMS += multiboot2.module -MODULE_FILES += multiboot2.module$(EXEEXT) -multiboot2_module_SOURCES = loader/multiboot.c loader/multiboot_mbi2.c ## platform sources -nodist_multiboot2_module_SOURCES = ## platform nodist sources -multiboot2_module_LDADD = -multiboot2_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -multiboot2_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -multiboot2_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -DGRUB_USE_MULTIBOOT2 -multiboot2_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -multiboot2_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_multiboot2_module_SOURCES) -CLEANFILES += $(nodist_multiboot2_module_SOURCES) -MOD_FILES += multiboot2.mod -MARKER_FILES += multiboot2.marker -CLEANFILES += multiboot2.marker - -multiboot2.marker: $(multiboot2_module_SOURCES) $(nodist_multiboot2_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(multiboot2_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_efi -platform_PROGRAMS += multiboot2.module -MODULE_FILES += multiboot2.module$(EXEEXT) -multiboot2_module_SOURCES = loader/multiboot.c loader/multiboot_mbi2.c ## platform sources -nodist_multiboot2_module_SOURCES = ## platform nodist sources -multiboot2_module_LDADD = -multiboot2_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -multiboot2_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -multiboot2_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -DGRUB_USE_MULTIBOOT2 -multiboot2_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -multiboot2_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_multiboot2_module_SOURCES) -CLEANFILES += $(nodist_multiboot2_module_SOURCES) -MOD_FILES += multiboot2.mod -MARKER_FILES += multiboot2.marker -CLEANFILES += multiboot2.marker - -multiboot2.marker: $(multiboot2_module_SOURCES) $(nodist_multiboot2_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(multiboot2_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_qemu -platform_PROGRAMS += multiboot2.module -MODULE_FILES += multiboot2.module$(EXEEXT) -multiboot2_module_SOURCES = loader/multiboot.c loader/multiboot_mbi2.c ## platform sources -nodist_multiboot2_module_SOURCES = ## platform nodist sources -multiboot2_module_LDADD = -multiboot2_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -multiboot2_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -multiboot2_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -DGRUB_USE_MULTIBOOT2 -multiboot2_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -multiboot2_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_multiboot2_module_SOURCES) -CLEANFILES += $(nodist_multiboot2_module_SOURCES) -MOD_FILES += multiboot2.mod -MARKER_FILES += multiboot2.marker -CLEANFILES += multiboot2.marker - -multiboot2.marker: $(multiboot2_module_SOURCES) $(nodist_multiboot2_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(multiboot2_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_coreboot -platform_PROGRAMS += multiboot2.module -MODULE_FILES += multiboot2.module$(EXEEXT) -multiboot2_module_SOURCES = loader/multiboot.c loader/multiboot_mbi2.c ## platform sources -nodist_multiboot2_module_SOURCES = ## platform nodist sources -multiboot2_module_LDADD = -multiboot2_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -multiboot2_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -multiboot2_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -DGRUB_USE_MULTIBOOT2 -multiboot2_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -multiboot2_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_multiboot2_module_SOURCES) -CLEANFILES += $(nodist_multiboot2_module_SOURCES) -MOD_FILES += multiboot2.mod -MARKER_FILES += multiboot2.marker -CLEANFILES += multiboot2.marker - -multiboot2.marker: $(multiboot2_module_SOURCES) $(nodist_multiboot2_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(multiboot2_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_multiboot -platform_PROGRAMS += multiboot2.module -MODULE_FILES += multiboot2.module$(EXEEXT) -multiboot2_module_SOURCES = loader/multiboot.c loader/multiboot_mbi2.c ## platform sources -nodist_multiboot2_module_SOURCES = ## platform nodist sources -multiboot2_module_LDADD = -multiboot2_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -multiboot2_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -multiboot2_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -DGRUB_USE_MULTIBOOT2 -multiboot2_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -multiboot2_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_multiboot2_module_SOURCES) -CLEANFILES += $(nodist_multiboot2_module_SOURCES) -MOD_FILES += multiboot2.mod -MARKER_FILES += multiboot2.marker -CLEANFILES += multiboot2.marker - -multiboot2.marker: $(multiboot2_module_SOURCES) $(nodist_multiboot2_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(multiboot2_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_ieee1275 -platform_PROGRAMS += multiboot2.module -MODULE_FILES += multiboot2.module$(EXEEXT) -multiboot2_module_SOURCES = loader/multiboot.c loader/multiboot_mbi2.c ## platform sources -nodist_multiboot2_module_SOURCES = ## platform nodist sources -multiboot2_module_LDADD = -multiboot2_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -multiboot2_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -multiboot2_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -DGRUB_USE_MULTIBOOT2 -multiboot2_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -multiboot2_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_multiboot2_module_SOURCES) -CLEANFILES += $(nodist_multiboot2_module_SOURCES) -MOD_FILES += multiboot2.mod -MARKER_FILES += multiboot2.marker -CLEANFILES += multiboot2.marker - -multiboot2.marker: $(multiboot2_module_SOURCES) $(nodist_multiboot2_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(multiboot2_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_x86_64_efi -platform_PROGRAMS += multiboot2.module -MODULE_FILES += multiboot2.module$(EXEEXT) -multiboot2_module_SOURCES = loader/multiboot.c loader/multiboot_mbi2.c ## platform sources -nodist_multiboot2_module_SOURCES = ## platform nodist sources -multiboot2_module_LDADD = -multiboot2_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -multiboot2_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -multiboot2_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -DGRUB_USE_MULTIBOOT2 -multiboot2_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -multiboot2_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_multiboot2_module_SOURCES) -CLEANFILES += $(nodist_multiboot2_module_SOURCES) -MOD_FILES += multiboot2.mod -MARKER_FILES += multiboot2.marker -CLEANFILES += multiboot2.marker - -multiboot2.marker: $(multiboot2_module_SOURCES) $(nodist_multiboot2_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(multiboot2_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_xen_pvh -platform_PROGRAMS += multiboot2.module -MODULE_FILES += multiboot2.module$(EXEEXT) -multiboot2_module_SOURCES = loader/multiboot.c loader/multiboot_mbi2.c ## platform sources -nodist_multiboot2_module_SOURCES = ## platform nodist sources -multiboot2_module_LDADD = -multiboot2_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -multiboot2_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -multiboot2_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -DGRUB_USE_MULTIBOOT2 -multiboot2_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -multiboot2_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_multiboot2_module_SOURCES) -CLEANFILES += $(nodist_multiboot2_module_SOURCES) -MOD_FILES += multiboot2.mod -MARKER_FILES += multiboot2.marker -CLEANFILES += multiboot2.marker - -multiboot2.marker: $(multiboot2_module_SOURCES) $(nodist_multiboot2_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(multiboot2_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_mips_loongson -platform_PROGRAMS += multiboot2.module -MODULE_FILES += multiboot2.module$(EXEEXT) -multiboot2_module_SOURCES = loader/multiboot.c loader/multiboot_mbi2.c ## platform sources -nodist_multiboot2_module_SOURCES = ## platform nodist sources -multiboot2_module_LDADD = -multiboot2_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -multiboot2_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -multiboot2_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -DGRUB_USE_MULTIBOOT2 -multiboot2_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -multiboot2_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_multiboot2_module_SOURCES) -CLEANFILES += $(nodist_multiboot2_module_SOURCES) -MOD_FILES += multiboot2.mod -MARKER_FILES += multiboot2.marker -CLEANFILES += multiboot2.marker - -multiboot2.marker: $(multiboot2_module_SOURCES) $(nodist_multiboot2_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(multiboot2_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_mips_arc -platform_PROGRAMS += multiboot2.module -MODULE_FILES += multiboot2.module$(EXEEXT) -multiboot2_module_SOURCES = loader/multiboot.c loader/multiboot_mbi2.c ## platform sources -nodist_multiboot2_module_SOURCES = ## platform nodist sources -multiboot2_module_LDADD = -multiboot2_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -multiboot2_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -multiboot2_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -DGRUB_USE_MULTIBOOT2 -multiboot2_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -multiboot2_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_multiboot2_module_SOURCES) -CLEANFILES += $(nodist_multiboot2_module_SOURCES) -MOD_FILES += multiboot2.mod -MARKER_FILES += multiboot2.marker -CLEANFILES += multiboot2.marker - -multiboot2.marker: $(multiboot2_module_SOURCES) $(nodist_multiboot2_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(multiboot2_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_mips_qemu_mips -platform_PROGRAMS += multiboot2.module -MODULE_FILES += multiboot2.module$(EXEEXT) -multiboot2_module_SOURCES = loader/multiboot.c loader/multiboot_mbi2.c ## platform sources -nodist_multiboot2_module_SOURCES = ## platform nodist sources -multiboot2_module_LDADD = -multiboot2_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -multiboot2_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -multiboot2_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -DGRUB_USE_MULTIBOOT2 -multiboot2_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -multiboot2_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_multiboot2_module_SOURCES) -CLEANFILES += $(nodist_multiboot2_module_SOURCES) -MOD_FILES += multiboot2.mod -MARKER_FILES += multiboot2.marker -CLEANFILES += multiboot2.marker - -multiboot2.marker: $(multiboot2_module_SOURCES) $(nodist_multiboot2_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(multiboot2_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_pc -platform_PROGRAMS += multiboot.module -MODULE_FILES += multiboot.module$(EXEEXT) -multiboot_module_SOURCES = loader/i386/multiboot_mbi.c loader/multiboot.c ## platform sources -nodist_multiboot_module_SOURCES = ## platform nodist sources -multiboot_module_LDADD = -multiboot_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -multiboot_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -multiboot_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -multiboot_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -multiboot_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += loader/multiboot_elfxx.c -BUILT_SOURCES += $(nodist_multiboot_module_SOURCES) -CLEANFILES += $(nodist_multiboot_module_SOURCES) -MOD_FILES += multiboot.mod -MARKER_FILES += multiboot.marker -CLEANFILES += multiboot.marker - -multiboot.marker: $(multiboot_module_SOURCES) $(nodist_multiboot_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(multiboot_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_efi -platform_PROGRAMS += multiboot.module -MODULE_FILES += multiboot.module$(EXEEXT) -multiboot_module_SOURCES = loader/i386/multiboot_mbi.c loader/multiboot.c ## platform sources -nodist_multiboot_module_SOURCES = ## platform nodist sources -multiboot_module_LDADD = -multiboot_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -multiboot_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -multiboot_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -multiboot_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -multiboot_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += loader/multiboot_elfxx.c -BUILT_SOURCES += $(nodist_multiboot_module_SOURCES) -CLEANFILES += $(nodist_multiboot_module_SOURCES) -MOD_FILES += multiboot.mod -MARKER_FILES += multiboot.marker -CLEANFILES += multiboot.marker - -multiboot.marker: $(multiboot_module_SOURCES) $(nodist_multiboot_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(multiboot_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_qemu -platform_PROGRAMS += multiboot.module -MODULE_FILES += multiboot.module$(EXEEXT) -multiboot_module_SOURCES = loader/i386/multiboot_mbi.c loader/multiboot.c ## platform sources -nodist_multiboot_module_SOURCES = ## platform nodist sources -multiboot_module_LDADD = -multiboot_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -multiboot_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -multiboot_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -multiboot_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -multiboot_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += loader/multiboot_elfxx.c -BUILT_SOURCES += $(nodist_multiboot_module_SOURCES) -CLEANFILES += $(nodist_multiboot_module_SOURCES) -MOD_FILES += multiboot.mod -MARKER_FILES += multiboot.marker -CLEANFILES += multiboot.marker - -multiboot.marker: $(multiboot_module_SOURCES) $(nodist_multiboot_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(multiboot_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_coreboot -platform_PROGRAMS += multiboot.module -MODULE_FILES += multiboot.module$(EXEEXT) -multiboot_module_SOURCES = loader/i386/multiboot_mbi.c loader/multiboot.c ## platform sources -nodist_multiboot_module_SOURCES = ## platform nodist sources -multiboot_module_LDADD = -multiboot_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -multiboot_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -multiboot_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -multiboot_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -multiboot_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += loader/multiboot_elfxx.c -BUILT_SOURCES += $(nodist_multiboot_module_SOURCES) -CLEANFILES += $(nodist_multiboot_module_SOURCES) -MOD_FILES += multiboot.mod -MARKER_FILES += multiboot.marker -CLEANFILES += multiboot.marker - -multiboot.marker: $(multiboot_module_SOURCES) $(nodist_multiboot_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(multiboot_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_multiboot -platform_PROGRAMS += multiboot.module -MODULE_FILES += multiboot.module$(EXEEXT) -multiboot_module_SOURCES = loader/i386/multiboot_mbi.c loader/multiboot.c ## platform sources -nodist_multiboot_module_SOURCES = ## platform nodist sources -multiboot_module_LDADD = -multiboot_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -multiboot_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -multiboot_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -multiboot_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -multiboot_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += loader/multiboot_elfxx.c -BUILT_SOURCES += $(nodist_multiboot_module_SOURCES) -CLEANFILES += $(nodist_multiboot_module_SOURCES) -MOD_FILES += multiboot.mod -MARKER_FILES += multiboot.marker -CLEANFILES += multiboot.marker - -multiboot.marker: $(multiboot_module_SOURCES) $(nodist_multiboot_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(multiboot_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_ieee1275 -platform_PROGRAMS += multiboot.module -MODULE_FILES += multiboot.module$(EXEEXT) -multiboot_module_SOURCES = loader/i386/multiboot_mbi.c loader/multiboot.c ## platform sources -nodist_multiboot_module_SOURCES = ## platform nodist sources -multiboot_module_LDADD = -multiboot_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -multiboot_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -multiboot_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -multiboot_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -multiboot_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += loader/multiboot_elfxx.c -BUILT_SOURCES += $(nodist_multiboot_module_SOURCES) -CLEANFILES += $(nodist_multiboot_module_SOURCES) -MOD_FILES += multiboot.mod -MARKER_FILES += multiboot.marker -CLEANFILES += multiboot.marker - -multiboot.marker: $(multiboot_module_SOURCES) $(nodist_multiboot_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(multiboot_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_x86_64_efi -platform_PROGRAMS += multiboot.module -MODULE_FILES += multiboot.module$(EXEEXT) -multiboot_module_SOURCES = loader/i386/multiboot_mbi.c loader/multiboot.c ## platform sources -nodist_multiboot_module_SOURCES = ## platform nodist sources -multiboot_module_LDADD = -multiboot_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -multiboot_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -multiboot_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -multiboot_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -multiboot_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += loader/multiboot_elfxx.c -BUILT_SOURCES += $(nodist_multiboot_module_SOURCES) -CLEANFILES += $(nodist_multiboot_module_SOURCES) -MOD_FILES += multiboot.mod -MARKER_FILES += multiboot.marker -CLEANFILES += multiboot.marker - -multiboot.marker: $(multiboot_module_SOURCES) $(nodist_multiboot_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(multiboot_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_xen_pvh -platform_PROGRAMS += multiboot.module -MODULE_FILES += multiboot.module$(EXEEXT) -multiboot_module_SOURCES = loader/i386/multiboot_mbi.c loader/multiboot.c ## platform sources -nodist_multiboot_module_SOURCES = ## platform nodist sources -multiboot_module_LDADD = -multiboot_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -multiboot_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -multiboot_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -multiboot_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -multiboot_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += loader/multiboot_elfxx.c -BUILT_SOURCES += $(nodist_multiboot_module_SOURCES) -CLEANFILES += $(nodist_multiboot_module_SOURCES) -MOD_FILES += multiboot.mod -MARKER_FILES += multiboot.marker -CLEANFILES += multiboot.marker - -multiboot.marker: $(multiboot_module_SOURCES) $(nodist_multiboot_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(multiboot_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_arm64_efi -platform_PROGRAMS += xen_boot.module -MODULE_FILES += xen_boot.module$(EXEEXT) -xen_boot_module_SOURCES = loader/arm64/xen_boot.c ## platform sources -nodist_xen_boot_module_SOURCES = ## platform nodist sources -xen_boot_module_LDADD = -xen_boot_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -xen_boot_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -xen_boot_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -xen_boot_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -xen_boot_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_xen_boot_module_SOURCES) -CLEANFILES += $(nodist_xen_boot_module_SOURCES) -MOD_FILES += xen_boot.mod -MARKER_FILES += xen_boot.marker -CLEANFILES += xen_boot.marker - -xen_boot.marker: $(xen_boot_module_SOURCES) $(nodist_xen_boot_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(xen_boot_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_pc -platform_PROGRAMS += linux.module -MODULE_FILES += linux.module$(EXEEXT) -linux_module_SOURCES = lib/i386/pc/vesa_modes_table.c loader/i386/linux.c loader/linux.c lib/cmdline.c ## platform sources -nodist_linux_module_SOURCES = ## platform nodist sources -linux_module_LDADD = -linux_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -linux_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -linux_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -linux_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -linux_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_linux_module_SOURCES) -CLEANFILES += $(nodist_linux_module_SOURCES) -MOD_FILES += linux.mod -MARKER_FILES += linux.marker -CLEANFILES += linux.marker - -linux.marker: $(linux_module_SOURCES) $(nodist_linux_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(linux_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_efi -platform_PROGRAMS += linux.module -MODULE_FILES += linux.module$(EXEEXT) -linux_module_SOURCES = loader/i386/linux.c loader/linux.c lib/cmdline.c ## platform sources -nodist_linux_module_SOURCES = ## platform nodist sources -linux_module_LDADD = -linux_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -linux_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -linux_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -linux_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -linux_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_linux_module_SOURCES) -CLEANFILES += $(nodist_linux_module_SOURCES) -MOD_FILES += linux.mod -MARKER_FILES += linux.marker -CLEANFILES += linux.marker - -linux.marker: $(linux_module_SOURCES) $(nodist_linux_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(linux_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_qemu -platform_PROGRAMS += linux.module -MODULE_FILES += linux.module$(EXEEXT) -linux_module_SOURCES = loader/i386/linux.c loader/linux.c lib/cmdline.c ## platform sources -nodist_linux_module_SOURCES = ## platform nodist sources -linux_module_LDADD = -linux_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -linux_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -linux_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -linux_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -linux_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_linux_module_SOURCES) -CLEANFILES += $(nodist_linux_module_SOURCES) -MOD_FILES += linux.mod -MARKER_FILES += linux.marker -CLEANFILES += linux.marker - -linux.marker: $(linux_module_SOURCES) $(nodist_linux_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(linux_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_coreboot -platform_PROGRAMS += linux.module -MODULE_FILES += linux.module$(EXEEXT) -linux_module_SOURCES = loader/i386/linux.c loader/linux.c lib/cmdline.c ## platform sources -nodist_linux_module_SOURCES = ## platform nodist sources -linux_module_LDADD = -linux_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -linux_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -linux_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -linux_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -linux_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_linux_module_SOURCES) -CLEANFILES += $(nodist_linux_module_SOURCES) -MOD_FILES += linux.mod -MARKER_FILES += linux.marker -CLEANFILES += linux.marker - -linux.marker: $(linux_module_SOURCES) $(nodist_linux_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(linux_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_multiboot -platform_PROGRAMS += linux.module -MODULE_FILES += linux.module$(EXEEXT) -linux_module_SOURCES = loader/i386/linux.c loader/linux.c lib/cmdline.c ## platform sources -nodist_linux_module_SOURCES = ## platform nodist sources -linux_module_LDADD = -linux_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -linux_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -linux_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -linux_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -linux_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_linux_module_SOURCES) -CLEANFILES += $(nodist_linux_module_SOURCES) -MOD_FILES += linux.mod -MARKER_FILES += linux.marker -CLEANFILES += linux.marker - -linux.marker: $(linux_module_SOURCES) $(nodist_linux_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(linux_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_ieee1275 -platform_PROGRAMS += linux.module -MODULE_FILES += linux.module$(EXEEXT) -linux_module_SOURCES = loader/i386/linux.c loader/linux.c lib/cmdline.c ## platform sources -nodist_linux_module_SOURCES = ## platform nodist sources -linux_module_LDADD = -linux_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -linux_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -linux_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -linux_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -linux_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_linux_module_SOURCES) -CLEANFILES += $(nodist_linux_module_SOURCES) -MOD_FILES += linux.mod -MARKER_FILES += linux.marker -CLEANFILES += linux.marker - -linux.marker: $(linux_module_SOURCES) $(nodist_linux_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(linux_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_x86_64_efi -platform_PROGRAMS += linux.module -MODULE_FILES += linux.module$(EXEEXT) -linux_module_SOURCES = loader/i386/linux.c loader/linux.c lib/cmdline.c ## platform sources -nodist_linux_module_SOURCES = ## platform nodist sources -linux_module_LDADD = -linux_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -linux_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -linux_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -linux_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -linux_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_linux_module_SOURCES) -CLEANFILES += $(nodist_linux_module_SOURCES) -MOD_FILES += linux.mod -MARKER_FILES += linux.marker -CLEANFILES += linux.marker - -linux.marker: $(linux_module_SOURCES) $(nodist_linux_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(linux_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_xen -platform_PROGRAMS += linux.module -MODULE_FILES += linux.module$(EXEEXT) -linux_module_SOURCES = loader/i386/xen.c loader/linux.c lib/cmdline.c ## platform sources -nodist_linux_module_SOURCES = ## platform nodist sources -linux_module_LDADD = -linux_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -linux_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -linux_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -linux_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -linux_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_linux_module_SOURCES) -CLEANFILES += $(nodist_linux_module_SOURCES) -MOD_FILES += linux.mod -MARKER_FILES += linux.marker -CLEANFILES += linux.marker - -linux.marker: $(linux_module_SOURCES) $(nodist_linux_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(linux_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_x86_64_xen -platform_PROGRAMS += linux.module -MODULE_FILES += linux.module$(EXEEXT) -linux_module_SOURCES = loader/i386/xen.c loader/linux.c lib/cmdline.c ## platform sources -nodist_linux_module_SOURCES = ## platform nodist sources -linux_module_LDADD = -linux_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -linux_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -linux_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -linux_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -linux_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_linux_module_SOURCES) -CLEANFILES += $(nodist_linux_module_SOURCES) -MOD_FILES += linux.mod -MARKER_FILES += linux.marker -CLEANFILES += linux.marker - -linux.marker: $(linux_module_SOURCES) $(nodist_linux_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(linux_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_xen_pvh -platform_PROGRAMS += linux.module -MODULE_FILES += linux.module$(EXEEXT) -linux_module_SOURCES = loader/i386/linux.c lib/i386/pc/vesa_modes_table.c loader/linux.c lib/cmdline.c ## platform sources -nodist_linux_module_SOURCES = ## platform nodist sources -linux_module_LDADD = -linux_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -linux_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -linux_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -linux_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -linux_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_linux_module_SOURCES) -CLEANFILES += $(nodist_linux_module_SOURCES) -MOD_FILES += linux.mod -MARKER_FILES += linux.marker -CLEANFILES += linux.marker - -linux.marker: $(linux_module_SOURCES) $(nodist_linux_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(linux_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_mips_loongson -platform_PROGRAMS += linux.module -MODULE_FILES += linux.module$(EXEEXT) -linux_module_SOURCES = loader/mips/linux.c loader/linux.c lib/cmdline.c ## platform sources -nodist_linux_module_SOURCES = ## platform nodist sources -linux_module_LDADD = -linux_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -linux_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -linux_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -linux_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -linux_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_linux_module_SOURCES) -CLEANFILES += $(nodist_linux_module_SOURCES) -MOD_FILES += linux.mod -MARKER_FILES += linux.marker -CLEANFILES += linux.marker - -linux.marker: $(linux_module_SOURCES) $(nodist_linux_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(linux_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_sparc64_ieee1275 -platform_PROGRAMS += linux.module -MODULE_FILES += linux.module$(EXEEXT) -linux_module_SOURCES = loader/sparc64/ieee1275/linux.c loader/linux.c lib/cmdline.c ## platform sources -nodist_linux_module_SOURCES = ## platform nodist sources -linux_module_LDADD = -linux_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -linux_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -linux_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -linux_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -linux_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_linux_module_SOURCES) -CLEANFILES += $(nodist_linux_module_SOURCES) -MOD_FILES += linux.mod -MARKER_FILES += linux.marker -CLEANFILES += linux.marker - -linux.marker: $(linux_module_SOURCES) $(nodist_linux_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(linux_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_powerpc_ieee1275 -platform_PROGRAMS += linux.module -MODULE_FILES += linux.module$(EXEEXT) -linux_module_SOURCES = loader/powerpc/ieee1275/linux.c loader/linux.c lib/cmdline.c ## platform sources -nodist_linux_module_SOURCES = ## platform nodist sources -linux_module_LDADD = -linux_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -linux_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -linux_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -linux_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -linux_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_linux_module_SOURCES) -CLEANFILES += $(nodist_linux_module_SOURCES) -MOD_FILES += linux.mod -MARKER_FILES += linux.marker -CLEANFILES += linux.marker - -linux.marker: $(linux_module_SOURCES) $(nodist_linux_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(linux_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_mips_arc -platform_PROGRAMS += linux.module -MODULE_FILES += linux.module$(EXEEXT) -linux_module_SOURCES = loader/mips/linux.c loader/linux.c lib/cmdline.c ## platform sources -nodist_linux_module_SOURCES = ## platform nodist sources -linux_module_LDADD = -linux_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -linux_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -linux_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -linux_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -linux_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_linux_module_SOURCES) -CLEANFILES += $(nodist_linux_module_SOURCES) -MOD_FILES += linux.mod -MARKER_FILES += linux.marker -CLEANFILES += linux.marker - -linux.marker: $(linux_module_SOURCES) $(nodist_linux_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(linux_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_ia64_efi -platform_PROGRAMS += linux.module -MODULE_FILES += linux.module$(EXEEXT) -linux_module_SOURCES = loader/ia64/efi/linux.c loader/linux.c lib/cmdline.c ## platform sources -nodist_linux_module_SOURCES = ## platform nodist sources -linux_module_LDADD = -linux_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -linux_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -linux_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -linux_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -linux_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_linux_module_SOURCES) -CLEANFILES += $(nodist_linux_module_SOURCES) -MOD_FILES += linux.mod -MARKER_FILES += linux.marker -CLEANFILES += linux.marker - -linux.marker: $(linux_module_SOURCES) $(nodist_linux_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(linux_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_mips_qemu_mips -platform_PROGRAMS += linux.module -MODULE_FILES += linux.module$(EXEEXT) -linux_module_SOURCES = loader/mips/linux.c loader/linux.c lib/cmdline.c ## platform sources -nodist_linux_module_SOURCES = ## platform nodist sources -linux_module_LDADD = -linux_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -linux_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -linux_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -linux_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -linux_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_linux_module_SOURCES) -CLEANFILES += $(nodist_linux_module_SOURCES) -MOD_FILES += linux.mod -MARKER_FILES += linux.marker -CLEANFILES += linux.marker - -linux.marker: $(linux_module_SOURCES) $(nodist_linux_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(linux_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_arm_uboot -platform_PROGRAMS += linux.module -MODULE_FILES += linux.module$(EXEEXT) -linux_module_SOURCES = loader/arm/linux.c loader/linux.c lib/cmdline.c ## platform sources -nodist_linux_module_SOURCES = ## platform nodist sources -linux_module_LDADD = -linux_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -linux_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -linux_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -linux_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -linux_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_linux_module_SOURCES) -CLEANFILES += $(nodist_linux_module_SOURCES) -MOD_FILES += linux.mod -MARKER_FILES += linux.marker -CLEANFILES += linux.marker - -linux.marker: $(linux_module_SOURCES) $(nodist_linux_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(linux_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_arm_efi -platform_PROGRAMS += linux.module -MODULE_FILES += linux.module$(EXEEXT) -linux_module_SOURCES = loader/arm64/linux.c loader/linux.c lib/cmdline.c ## platform sources -nodist_linux_module_SOURCES = ## platform nodist sources -linux_module_LDADD = -linux_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -linux_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -linux_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -linux_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -linux_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_linux_module_SOURCES) -CLEANFILES += $(nodist_linux_module_SOURCES) -MOD_FILES += linux.mod -MARKER_FILES += linux.marker -CLEANFILES += linux.marker - -linux.marker: $(linux_module_SOURCES) $(nodist_linux_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(linux_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_arm64_efi -platform_PROGRAMS += linux.module -MODULE_FILES += linux.module$(EXEEXT) -linux_module_SOURCES = loader/arm64/linux.c loader/linux.c lib/cmdline.c ## platform sources -nodist_linux_module_SOURCES = ## platform nodist sources -linux_module_LDADD = -linux_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -linux_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -linux_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -linux_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -linux_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_linux_module_SOURCES) -CLEANFILES += $(nodist_linux_module_SOURCES) -MOD_FILES += linux.mod -MARKER_FILES += linux.marker -CLEANFILES += linux.marker - -linux.marker: $(linux_module_SOURCES) $(nodist_linux_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(linux_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_arm_coreboot -platform_PROGRAMS += linux.module -MODULE_FILES += linux.module$(EXEEXT) -linux_module_SOURCES = loader/arm/linux.c loader/linux.c lib/cmdline.c ## platform sources -nodist_linux_module_SOURCES = ## platform nodist sources -linux_module_LDADD = -linux_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -linux_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -linux_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -linux_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -linux_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_linux_module_SOURCES) -CLEANFILES += $(nodist_linux_module_SOURCES) -MOD_FILES += linux.mod -MARKER_FILES += linux.marker -CLEANFILES += linux.marker - -linux.marker: $(linux_module_SOURCES) $(nodist_linux_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(linux_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_riscv32_efi -platform_PROGRAMS += linux.module -MODULE_FILES += linux.module$(EXEEXT) -linux_module_SOURCES = loader/riscv/linux.c loader/linux.c lib/cmdline.c ## platform sources -nodist_linux_module_SOURCES = ## platform nodist sources -linux_module_LDADD = -linux_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -linux_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -linux_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -linux_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -linux_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_linux_module_SOURCES) -CLEANFILES += $(nodist_linux_module_SOURCES) -MOD_FILES += linux.mod -MARKER_FILES += linux.marker -CLEANFILES += linux.marker - -linux.marker: $(linux_module_SOURCES) $(nodist_linux_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(linux_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_riscv64_efi -platform_PROGRAMS += linux.module -MODULE_FILES += linux.module$(EXEEXT) -linux_module_SOURCES = loader/riscv/linux.c loader/linux.c lib/cmdline.c ## platform sources -nodist_linux_module_SOURCES = ## platform nodist sources -linux_module_LDADD = -linux_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -linux_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -linux_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -linux_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -linux_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_linux_module_SOURCES) -CLEANFILES += $(nodist_linux_module_SOURCES) -MOD_FILES += linux.mod -MARKER_FILES += linux.marker -CLEANFILES += linux.marker - -linux.marker: $(linux_module_SOURCES) $(nodist_linux_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(linux_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_arm_uboot -platform_PROGRAMS += fdt.module -MODULE_FILES += fdt.module$(EXEEXT) -fdt_module_SOURCES = lib/fdt.c ## platform sources -nodist_fdt_module_SOURCES = ## platform nodist sources -fdt_module_LDADD = -fdt_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -fdt_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -fdt_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -fdt_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -fdt_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_fdt_module_SOURCES) -CLEANFILES += $(nodist_fdt_module_SOURCES) -MOD_FILES += fdt.mod -MARKER_FILES += fdt.marker -CLEANFILES += fdt.marker - -fdt.marker: $(fdt_module_SOURCES) $(nodist_fdt_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(fdt_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_arm_efi -platform_PROGRAMS += fdt.module -MODULE_FILES += fdt.module$(EXEEXT) -fdt_module_SOURCES = loader/efi/fdt.c lib/fdt.c ## platform sources -nodist_fdt_module_SOURCES = ## platform nodist sources -fdt_module_LDADD = -fdt_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -fdt_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -fdt_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -fdt_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -fdt_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_fdt_module_SOURCES) -CLEANFILES += $(nodist_fdt_module_SOURCES) -MOD_FILES += fdt.mod -MARKER_FILES += fdt.marker -CLEANFILES += fdt.marker - -fdt.marker: $(fdt_module_SOURCES) $(nodist_fdt_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(fdt_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_arm64_efi -platform_PROGRAMS += fdt.module -MODULE_FILES += fdt.module$(EXEEXT) -fdt_module_SOURCES = loader/efi/fdt.c lib/fdt.c ## platform sources -nodist_fdt_module_SOURCES = ## platform nodist sources -fdt_module_LDADD = -fdt_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -fdt_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -fdt_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -fdt_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -fdt_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_fdt_module_SOURCES) -CLEANFILES += $(nodist_fdt_module_SOURCES) -MOD_FILES += fdt.mod -MARKER_FILES += fdt.marker -CLEANFILES += fdt.marker - -fdt.marker: $(fdt_module_SOURCES) $(nodist_fdt_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(fdt_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_riscv32_efi -platform_PROGRAMS += fdt.module -MODULE_FILES += fdt.module$(EXEEXT) -fdt_module_SOURCES = loader/efi/fdt.c lib/fdt.c ## platform sources -nodist_fdt_module_SOURCES = ## platform nodist sources -fdt_module_LDADD = -fdt_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -fdt_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -fdt_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -fdt_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -fdt_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_fdt_module_SOURCES) -CLEANFILES += $(nodist_fdt_module_SOURCES) -MOD_FILES += fdt.mod -MARKER_FILES += fdt.marker -CLEANFILES += fdt.marker - -fdt.marker: $(fdt_module_SOURCES) $(nodist_fdt_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(fdt_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_riscv64_efi -platform_PROGRAMS += fdt.module -MODULE_FILES += fdt.module$(EXEEXT) -fdt_module_SOURCES = loader/efi/fdt.c lib/fdt.c ## platform sources -nodist_fdt_module_SOURCES = ## platform nodist sources -fdt_module_LDADD = -fdt_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -fdt_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -fdt_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -fdt_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -fdt_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_fdt_module_SOURCES) -CLEANFILES += $(nodist_fdt_module_SOURCES) -MOD_FILES += fdt.mod -MARKER_FILES += fdt.marker -CLEANFILES += fdt.marker - -fdt.marker: $(fdt_module_SOURCES) $(nodist_fdt_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(fdt_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_pc -platform_PROGRAMS += xnu.module -MODULE_FILES += xnu.module$(EXEEXT) -xnu_module_SOURCES = loader/xnu_resume.c loader/i386/xnu.c loader/xnu.c ## platform sources -nodist_xnu_module_SOURCES = ## platform nodist sources -xnu_module_LDADD = -xnu_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -xnu_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -xnu_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -xnu_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -xnu_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_xnu_module_SOURCES) -CLEANFILES += $(nodist_xnu_module_SOURCES) -MOD_FILES += xnu.mod -MARKER_FILES += xnu.marker -CLEANFILES += xnu.marker - -xnu.marker: $(xnu_module_SOURCES) $(nodist_xnu_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(xnu_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_efi -platform_PROGRAMS += xnu.module -MODULE_FILES += xnu.module$(EXEEXT) -xnu_module_SOURCES = loader/xnu_resume.c loader/i386/xnu.c loader/xnu.c ## platform sources -nodist_xnu_module_SOURCES = ## platform nodist sources -xnu_module_LDADD = -xnu_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -xnu_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -xnu_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -xnu_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -xnu_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_xnu_module_SOURCES) -CLEANFILES += $(nodist_xnu_module_SOURCES) -MOD_FILES += xnu.mod -MARKER_FILES += xnu.marker -CLEANFILES += xnu.marker - -xnu.marker: $(xnu_module_SOURCES) $(nodist_xnu_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(xnu_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_coreboot -platform_PROGRAMS += xnu.module -MODULE_FILES += xnu.module$(EXEEXT) -xnu_module_SOURCES = loader/xnu_resume.c loader/i386/xnu.c loader/xnu.c ## platform sources -nodist_xnu_module_SOURCES = ## platform nodist sources -xnu_module_LDADD = -xnu_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -xnu_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -xnu_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -xnu_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -xnu_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_xnu_module_SOURCES) -CLEANFILES += $(nodist_xnu_module_SOURCES) -MOD_FILES += xnu.mod -MARKER_FILES += xnu.marker -CLEANFILES += xnu.marker - -xnu.marker: $(xnu_module_SOURCES) $(nodist_xnu_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(xnu_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_multiboot -platform_PROGRAMS += xnu.module -MODULE_FILES += xnu.module$(EXEEXT) -xnu_module_SOURCES = loader/xnu_resume.c loader/i386/xnu.c loader/xnu.c ## platform sources -nodist_xnu_module_SOURCES = ## platform nodist sources -xnu_module_LDADD = -xnu_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -xnu_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -xnu_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -xnu_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -xnu_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_xnu_module_SOURCES) -CLEANFILES += $(nodist_xnu_module_SOURCES) -MOD_FILES += xnu.mod -MARKER_FILES += xnu.marker -CLEANFILES += xnu.marker - -xnu.marker: $(xnu_module_SOURCES) $(nodist_xnu_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(xnu_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_x86_64_efi -platform_PROGRAMS += xnu.module -MODULE_FILES += xnu.module$(EXEEXT) -xnu_module_SOURCES = loader/xnu_resume.c loader/i386/xnu.c loader/xnu.c ## platform sources -nodist_xnu_module_SOURCES = ## platform nodist sources -xnu_module_LDADD = -xnu_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -xnu_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -xnu_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -xnu_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -xnu_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_xnu_module_SOURCES) -CLEANFILES += $(nodist_xnu_module_SOURCES) -MOD_FILES += xnu.mod -MARKER_FILES += xnu.marker -CLEANFILES += xnu.marker - -xnu.marker: $(xnu_module_SOURCES) $(nodist_xnu_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(xnu_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_pc -platform_PROGRAMS += random.module -MODULE_FILES += random.module$(EXEEXT) -random_module_SOURCES = kern/i386/tsc_pmtimer.c lib/i386/random.c lib/random.c ## platform sources -nodist_random_module_SOURCES = ## platform nodist sources -random_module_LDADD = -random_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -random_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -random_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -random_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -random_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_random_module_SOURCES) -CLEANFILES += $(nodist_random_module_SOURCES) -MOD_FILES += random.mod -MARKER_FILES += random.marker -CLEANFILES += random.marker - -random.marker: $(random_module_SOURCES) $(nodist_random_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(random_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_efi -platform_PROGRAMS += random.module -MODULE_FILES += random.module$(EXEEXT) -random_module_SOURCES = lib/i386/random.c lib/random.c ## platform sources -nodist_random_module_SOURCES = ## platform nodist sources -random_module_LDADD = -random_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -random_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -random_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -random_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -random_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_random_module_SOURCES) -CLEANFILES += $(nodist_random_module_SOURCES) -MOD_FILES += random.mod -MARKER_FILES += random.marker -CLEANFILES += random.marker - -random.marker: $(random_module_SOURCES) $(nodist_random_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(random_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_coreboot -platform_PROGRAMS += random.module -MODULE_FILES += random.module$(EXEEXT) -random_module_SOURCES = kern/i386/tsc_pmtimer.c lib/i386/random.c lib/random.c ## platform sources -nodist_random_module_SOURCES = ## platform nodist sources -random_module_LDADD = -random_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -random_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -random_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -random_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -random_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_random_module_SOURCES) -CLEANFILES += $(nodist_random_module_SOURCES) -MOD_FILES += random.mod -MARKER_FILES += random.marker -CLEANFILES += random.marker - -random.marker: $(random_module_SOURCES) $(nodist_random_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(random_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_multiboot -platform_PROGRAMS += random.module -MODULE_FILES += random.module$(EXEEXT) -random_module_SOURCES = kern/i386/tsc_pmtimer.c lib/i386/random.c lib/random.c ## platform sources -nodist_random_module_SOURCES = ## platform nodist sources -random_module_LDADD = -random_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -random_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -random_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -random_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -random_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_random_module_SOURCES) -CLEANFILES += $(nodist_random_module_SOURCES) -MOD_FILES += random.mod -MARKER_FILES += random.marker -CLEANFILES += random.marker - -random.marker: $(random_module_SOURCES) $(nodist_random_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(random_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_x86_64_efi -platform_PROGRAMS += random.module -MODULE_FILES += random.module$(EXEEXT) -random_module_SOURCES = lib/i386/random.c lib/random.c ## platform sources -nodist_random_module_SOURCES = ## platform nodist sources -random_module_LDADD = -random_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -random_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -random_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -random_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -random_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_random_module_SOURCES) -CLEANFILES += $(nodist_random_module_SOURCES) -MOD_FILES += random.mod -MARKER_FILES += random.marker -CLEANFILES += random.marker - -random.marker: $(random_module_SOURCES) $(nodist_random_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(random_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif -platform_PROGRAMS += macho.module -MODULE_FILES += macho.module$(EXEEXT) -macho_module_SOURCES = loader/macho.c loader/macho32.c loader/macho64.c loader/lzss.c ## platform sources -nodist_macho_module_SOURCES = ## platform nodist sources -macho_module_LDADD = -macho_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -macho_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -macho_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -macho_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -macho_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += loader/machoXX.c -BUILT_SOURCES += $(nodist_macho_module_SOURCES) -CLEANFILES += $(nodist_macho_module_SOURCES) -MOD_FILES += macho.mod -MARKER_FILES += macho.marker -CLEANFILES += macho.marker - -macho.marker: $(macho_module_SOURCES) $(nodist_macho_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(macho_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -if COND_i386_efi -platform_PROGRAMS += appleldr.module -MODULE_FILES += appleldr.module$(EXEEXT) -appleldr_module_SOURCES = loader/efi/appleloader.c ## platform sources -nodist_appleldr_module_SOURCES = ## platform nodist sources -appleldr_module_LDADD = -appleldr_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -appleldr_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -appleldr_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -appleldr_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -appleldr_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_appleldr_module_SOURCES) -CLEANFILES += $(nodist_appleldr_module_SOURCES) -MOD_FILES += appleldr.mod -MARKER_FILES += appleldr.marker -CLEANFILES += appleldr.marker - -appleldr.marker: $(appleldr_module_SOURCES) $(nodist_appleldr_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(appleldr_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_x86_64_efi -platform_PROGRAMS += appleldr.module -MODULE_FILES += appleldr.module$(EXEEXT) -appleldr_module_SOURCES = loader/efi/appleloader.c ## platform sources -nodist_appleldr_module_SOURCES = ## platform nodist sources -appleldr_module_LDADD = -appleldr_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -appleldr_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -appleldr_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -appleldr_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -appleldr_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_appleldr_module_SOURCES) -CLEANFILES += $(nodist_appleldr_module_SOURCES) -MOD_FILES += appleldr.mod -MARKER_FILES += appleldr.marker -CLEANFILES += appleldr.marker - -appleldr.marker: $(appleldr_module_SOURCES) $(nodist_appleldr_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(appleldr_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_pc -platform_PROGRAMS += chain.module -MODULE_FILES += chain.module$(EXEEXT) -chain_module_SOURCES = loader/i386/pc/chainloader.c ## platform sources -nodist_chain_module_SOURCES = ## platform nodist sources -chain_module_LDADD = -chain_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -chain_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -chain_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -chain_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -chain_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_chain_module_SOURCES) -CLEANFILES += $(nodist_chain_module_SOURCES) -MOD_FILES += chain.mod -MARKER_FILES += chain.marker -CLEANFILES += chain.marker - -chain.marker: $(chain_module_SOURCES) $(nodist_chain_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(chain_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_efi -platform_PROGRAMS += chain.module -MODULE_FILES += chain.module$(EXEEXT) -chain_module_SOURCES = loader/efi/chainloader.c ## platform sources -nodist_chain_module_SOURCES = ## platform nodist sources -chain_module_LDADD = -chain_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -chain_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -chain_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -chain_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -chain_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_chain_module_SOURCES) -CLEANFILES += $(nodist_chain_module_SOURCES) -MOD_FILES += chain.mod -MARKER_FILES += chain.marker -CLEANFILES += chain.marker - -chain.marker: $(chain_module_SOURCES) $(nodist_chain_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(chain_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_coreboot -platform_PROGRAMS += chain.module -MODULE_FILES += chain.module$(EXEEXT) -chain_module_SOURCES = loader/i386/coreboot/chainloader.c lib/LzmaDec.c ## platform sources -nodist_chain_module_SOURCES = ## platform nodist sources -chain_module_LDADD = -chain_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -chain_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -chain_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -chain_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -chain_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_chain_module_SOURCES) -CLEANFILES += $(nodist_chain_module_SOURCES) -MOD_FILES += chain.mod -MARKER_FILES += chain.marker -CLEANFILES += chain.marker - -chain.marker: $(chain_module_SOURCES) $(nodist_chain_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(chain_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_x86_64_efi -platform_PROGRAMS += chain.module -MODULE_FILES += chain.module$(EXEEXT) -chain_module_SOURCES = loader/efi/chainloader.c ## platform sources -nodist_chain_module_SOURCES = ## platform nodist sources -chain_module_LDADD = -chain_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -chain_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -chain_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -chain_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -chain_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_chain_module_SOURCES) -CLEANFILES += $(nodist_chain_module_SOURCES) -MOD_FILES += chain.mod -MARKER_FILES += chain.marker -CLEANFILES += chain.marker - -chain.marker: $(chain_module_SOURCES) $(nodist_chain_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(chain_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_ia64_efi -platform_PROGRAMS += chain.module -MODULE_FILES += chain.module$(EXEEXT) -chain_module_SOURCES = loader/efi/chainloader.c ## platform sources -nodist_chain_module_SOURCES = ## platform nodist sources -chain_module_LDADD = -chain_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -chain_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -chain_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -chain_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -chain_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_chain_module_SOURCES) -CLEANFILES += $(nodist_chain_module_SOURCES) -MOD_FILES += chain.mod -MARKER_FILES += chain.marker -CLEANFILES += chain.marker - -chain.marker: $(chain_module_SOURCES) $(nodist_chain_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(chain_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_arm_efi -platform_PROGRAMS += chain.module -MODULE_FILES += chain.module$(EXEEXT) -chain_module_SOURCES = loader/efi/chainloader.c ## platform sources -nodist_chain_module_SOURCES = ## platform nodist sources -chain_module_LDADD = -chain_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -chain_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -chain_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -chain_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -chain_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_chain_module_SOURCES) -CLEANFILES += $(nodist_chain_module_SOURCES) -MOD_FILES += chain.mod -MARKER_FILES += chain.marker -CLEANFILES += chain.marker - -chain.marker: $(chain_module_SOURCES) $(nodist_chain_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(chain_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_arm64_efi -platform_PROGRAMS += chain.module -MODULE_FILES += chain.module$(EXEEXT) -chain_module_SOURCES = loader/efi/chainloader.c ## platform sources -nodist_chain_module_SOURCES = ## platform nodist sources -chain_module_LDADD = -chain_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -chain_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -chain_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -chain_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -chain_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_chain_module_SOURCES) -CLEANFILES += $(nodist_chain_module_SOURCES) -MOD_FILES += chain.mod -MARKER_FILES += chain.marker -CLEANFILES += chain.marker - -chain.marker: $(chain_module_SOURCES) $(nodist_chain_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(chain_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_riscv32_efi -platform_PROGRAMS += chain.module -MODULE_FILES += chain.module$(EXEEXT) -chain_module_SOURCES = loader/efi/chainloader.c ## platform sources -nodist_chain_module_SOURCES = ## platform nodist sources -chain_module_LDADD = -chain_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -chain_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -chain_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -chain_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -chain_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_chain_module_SOURCES) -CLEANFILES += $(nodist_chain_module_SOURCES) -MOD_FILES += chain.mod -MARKER_FILES += chain.marker -CLEANFILES += chain.marker - -chain.marker: $(chain_module_SOURCES) $(nodist_chain_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(chain_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_riscv64_efi -platform_PROGRAMS += chain.module -MODULE_FILES += chain.module$(EXEEXT) -chain_module_SOURCES = loader/efi/chainloader.c ## platform sources -nodist_chain_module_SOURCES = ## platform nodist sources -chain_module_LDADD = -chain_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -chain_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -chain_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -chain_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -chain_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_chain_module_SOURCES) -CLEANFILES += $(nodist_chain_module_SOURCES) -MOD_FILES += chain.mod -MARKER_FILES += chain.marker -CLEANFILES += chain.marker - -chain.marker: $(chain_module_SOURCES) $(nodist_chain_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(chain_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_pc -platform_PROGRAMS += mmap.module -MODULE_FILES += mmap.module$(EXEEXT) -mmap_module_SOURCES = mmap/i386/pc/mmap.c mmap/i386/pc/mmap_helper.S mmap/i386/uppermem.c mmap/i386/mmap.c mmap/mmap.c ## platform sources -nodist_mmap_module_SOURCES = ## platform nodist sources -mmap_module_LDADD = -mmap_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -mmap_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -mmap_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -mmap_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -mmap_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_mmap_module_SOURCES) -CLEANFILES += $(nodist_mmap_module_SOURCES) -MOD_FILES += mmap.mod -MARKER_FILES += mmap.marker -CLEANFILES += mmap.marker - -mmap.marker: $(mmap_module_SOURCES) $(nodist_mmap_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mmap_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_efi -platform_PROGRAMS += mmap.module -MODULE_FILES += mmap.module$(EXEEXT) -mmap_module_SOURCES = mmap/i386/uppermem.c mmap/i386/mmap.c mmap/efi/mmap.c mmap/mmap.c ## platform sources -nodist_mmap_module_SOURCES = ## platform nodist sources -mmap_module_LDADD = -mmap_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -mmap_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -mmap_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -mmap_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -mmap_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_mmap_module_SOURCES) -CLEANFILES += $(nodist_mmap_module_SOURCES) -MOD_FILES += mmap.mod -MARKER_FILES += mmap.marker -CLEANFILES += mmap.marker - -mmap.marker: $(mmap_module_SOURCES) $(nodist_mmap_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mmap_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_qemu -platform_PROGRAMS += mmap.module -MODULE_FILES += mmap.module$(EXEEXT) -mmap_module_SOURCES = mmap/i386/uppermem.c mmap/i386/mmap.c mmap/mmap.c ## platform sources -nodist_mmap_module_SOURCES = ## platform nodist sources -mmap_module_LDADD = -mmap_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -mmap_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -mmap_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -mmap_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -mmap_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_mmap_module_SOURCES) -CLEANFILES += $(nodist_mmap_module_SOURCES) -MOD_FILES += mmap.mod -MARKER_FILES += mmap.marker -CLEANFILES += mmap.marker - -mmap.marker: $(mmap_module_SOURCES) $(nodist_mmap_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mmap_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_coreboot -platform_PROGRAMS += mmap.module -MODULE_FILES += mmap.module$(EXEEXT) -mmap_module_SOURCES = mmap/i386/uppermem.c mmap/i386/mmap.c mmap/mmap.c ## platform sources -nodist_mmap_module_SOURCES = ## platform nodist sources -mmap_module_LDADD = -mmap_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -mmap_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -mmap_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -mmap_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -mmap_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_mmap_module_SOURCES) -CLEANFILES += $(nodist_mmap_module_SOURCES) -MOD_FILES += mmap.mod -MARKER_FILES += mmap.marker -CLEANFILES += mmap.marker - -mmap.marker: $(mmap_module_SOURCES) $(nodist_mmap_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mmap_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_multiboot -platform_PROGRAMS += mmap.module -MODULE_FILES += mmap.module$(EXEEXT) -mmap_module_SOURCES = mmap/i386/uppermem.c mmap/i386/mmap.c mmap/mmap.c ## platform sources -nodist_mmap_module_SOURCES = ## platform nodist sources -mmap_module_LDADD = -mmap_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -mmap_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -mmap_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -mmap_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -mmap_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_mmap_module_SOURCES) -CLEANFILES += $(nodist_mmap_module_SOURCES) -MOD_FILES += mmap.mod -MARKER_FILES += mmap.marker -CLEANFILES += mmap.marker - -mmap.marker: $(mmap_module_SOURCES) $(nodist_mmap_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mmap_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_ieee1275 -platform_PROGRAMS += mmap.module -MODULE_FILES += mmap.module$(EXEEXT) -mmap_module_SOURCES = mmap/i386/uppermem.c mmap/i386/mmap.c mmap/mmap.c ## platform sources -nodist_mmap_module_SOURCES = ## platform nodist sources -mmap_module_LDADD = -mmap_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -mmap_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -mmap_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -mmap_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -mmap_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_mmap_module_SOURCES) -CLEANFILES += $(nodist_mmap_module_SOURCES) -MOD_FILES += mmap.mod -MARKER_FILES += mmap.marker -CLEANFILES += mmap.marker - -mmap.marker: $(mmap_module_SOURCES) $(nodist_mmap_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mmap_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_x86_64_efi -platform_PROGRAMS += mmap.module -MODULE_FILES += mmap.module$(EXEEXT) -mmap_module_SOURCES = mmap/i386/uppermem.c mmap/i386/mmap.c mmap/efi/mmap.c mmap/mmap.c ## platform sources -nodist_mmap_module_SOURCES = ## platform nodist sources -mmap_module_LDADD = -mmap_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -mmap_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -mmap_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -mmap_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -mmap_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_mmap_module_SOURCES) -CLEANFILES += $(nodist_mmap_module_SOURCES) -MOD_FILES += mmap.mod -MARKER_FILES += mmap.marker -CLEANFILES += mmap.marker - -mmap.marker: $(mmap_module_SOURCES) $(nodist_mmap_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mmap_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_xen_pvh -platform_PROGRAMS += mmap.module -MODULE_FILES += mmap.module$(EXEEXT) -mmap_module_SOURCES = mmap/i386/uppermem.c mmap/i386/mmap.c mmap/mmap.c ## platform sources -nodist_mmap_module_SOURCES = ## platform nodist sources -mmap_module_LDADD = -mmap_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -mmap_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -mmap_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -mmap_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -mmap_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_mmap_module_SOURCES) -CLEANFILES += $(nodist_mmap_module_SOURCES) -MOD_FILES += mmap.mod -MARKER_FILES += mmap.marker -CLEANFILES += mmap.marker - -mmap.marker: $(mmap_module_SOURCES) $(nodist_mmap_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mmap_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_mips_loongson -platform_PROGRAMS += mmap.module -MODULE_FILES += mmap.module$(EXEEXT) -mmap_module_SOURCES = mmap/mips/uppermem.c mmap/mmap.c ## platform sources -nodist_mmap_module_SOURCES = ## platform nodist sources -mmap_module_LDADD = -mmap_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -mmap_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -mmap_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -mmap_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -mmap_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_mmap_module_SOURCES) -CLEANFILES += $(nodist_mmap_module_SOURCES) -MOD_FILES += mmap.mod -MARKER_FILES += mmap.marker -CLEANFILES += mmap.marker - -mmap.marker: $(mmap_module_SOURCES) $(nodist_mmap_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mmap_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_mips_arc -platform_PROGRAMS += mmap.module -MODULE_FILES += mmap.module$(EXEEXT) -mmap_module_SOURCES = mmap/mips/uppermem.c mmap/mmap.c ## platform sources -nodist_mmap_module_SOURCES = ## platform nodist sources -mmap_module_LDADD = -mmap_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -mmap_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -mmap_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -mmap_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -mmap_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_mmap_module_SOURCES) -CLEANFILES += $(nodist_mmap_module_SOURCES) -MOD_FILES += mmap.mod -MARKER_FILES += mmap.marker -CLEANFILES += mmap.marker - -mmap.marker: $(mmap_module_SOURCES) $(nodist_mmap_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mmap_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_ia64_efi -platform_PROGRAMS += mmap.module -MODULE_FILES += mmap.module$(EXEEXT) -mmap_module_SOURCES = mmap/efi/mmap.c mmap/mmap.c ## platform sources -nodist_mmap_module_SOURCES = ## platform nodist sources -mmap_module_LDADD = -mmap_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -mmap_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -mmap_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -mmap_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -mmap_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_mmap_module_SOURCES) -CLEANFILES += $(nodist_mmap_module_SOURCES) -MOD_FILES += mmap.mod -MARKER_FILES += mmap.marker -CLEANFILES += mmap.marker - -mmap.marker: $(mmap_module_SOURCES) $(nodist_mmap_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mmap_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_mips_qemu_mips -platform_PROGRAMS += mmap.module -MODULE_FILES += mmap.module$(EXEEXT) -mmap_module_SOURCES = mmap/mips/uppermem.c mmap/mmap.c ## platform sources -nodist_mmap_module_SOURCES = ## platform nodist sources -mmap_module_LDADD = -mmap_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -mmap_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -mmap_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -mmap_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -mmap_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_mmap_module_SOURCES) -CLEANFILES += $(nodist_mmap_module_SOURCES) -MOD_FILES += mmap.mod -MARKER_FILES += mmap.marker -CLEANFILES += mmap.marker - -mmap.marker: $(mmap_module_SOURCES) $(nodist_mmap_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mmap_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_arm_efi -platform_PROGRAMS += mmap.module -MODULE_FILES += mmap.module$(EXEEXT) -mmap_module_SOURCES = mmap/efi/mmap.c mmap/mmap.c ## platform sources -nodist_mmap_module_SOURCES = ## platform nodist sources -mmap_module_LDADD = -mmap_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -mmap_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -mmap_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -mmap_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -mmap_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_mmap_module_SOURCES) -CLEANFILES += $(nodist_mmap_module_SOURCES) -MOD_FILES += mmap.mod -MARKER_FILES += mmap.marker -CLEANFILES += mmap.marker - -mmap.marker: $(mmap_module_SOURCES) $(nodist_mmap_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mmap_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_arm64_efi -platform_PROGRAMS += mmap.module -MODULE_FILES += mmap.module$(EXEEXT) -mmap_module_SOURCES = mmap/efi/mmap.c mmap/mmap.c ## platform sources -nodist_mmap_module_SOURCES = ## platform nodist sources -mmap_module_LDADD = -mmap_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -mmap_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -mmap_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -mmap_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -mmap_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_mmap_module_SOURCES) -CLEANFILES += $(nodist_mmap_module_SOURCES) -MOD_FILES += mmap.mod -MARKER_FILES += mmap.marker -CLEANFILES += mmap.marker - -mmap.marker: $(mmap_module_SOURCES) $(nodist_mmap_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mmap_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_riscv32_efi -platform_PROGRAMS += mmap.module -MODULE_FILES += mmap.module$(EXEEXT) -mmap_module_SOURCES = mmap/efi/mmap.c mmap/mmap.c ## platform sources -nodist_mmap_module_SOURCES = ## platform nodist sources -mmap_module_LDADD = -mmap_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -mmap_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -mmap_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -mmap_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -mmap_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_mmap_module_SOURCES) -CLEANFILES += $(nodist_mmap_module_SOURCES) -MOD_FILES += mmap.mod -MARKER_FILES += mmap.marker -CLEANFILES += mmap.marker - -mmap.marker: $(mmap_module_SOURCES) $(nodist_mmap_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mmap_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_riscv64_efi -platform_PROGRAMS += mmap.module -MODULE_FILES += mmap.module$(EXEEXT) -mmap_module_SOURCES = mmap/efi/mmap.c mmap/mmap.c ## platform sources -nodist_mmap_module_SOURCES = ## platform nodist sources -mmap_module_LDADD = -mmap_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -mmap_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -mmap_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -mmap_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -mmap_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_mmap_module_SOURCES) -CLEANFILES += $(nodist_mmap_module_SOURCES) -MOD_FILES += mmap.mod -MARKER_FILES += mmap.marker -CLEANFILES += mmap.marker - -mmap.marker: $(mmap_module_SOURCES) $(nodist_mmap_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mmap_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif -platform_PROGRAMS += normal.module -MODULE_FILES += normal.module$(EXEEXT) -normal_module_SOURCES = normal/main.c normal/cmdline.c normal/dyncmd.c normal/auth.c normal/autofs.c normal/color.c normal/completion.c normal/datetime.c normal/menu.c normal/menu_entry.c normal/menu_text.c normal/misc.c normal/crypto.c normal/term.c normal/context.c normal/charset.c lib/getline.c script/main.c script/script.c script/execute.c script/function.c script/lexer.c script/argv.c commands/menuentry.c unidata.c ## platform sources -nodist_normal_module_SOURCES = grub_script.tab.c grub_script.yy.c grub_script.tab.h grub_script.yy.h ## platform nodist sources -normal_module_LDADD = -normal_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) $(CFLAGS_POSIX) -Wno-redundant-decls -normal_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -normal_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) $(CPPFLAGS_POSIX) -normal_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -normal_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += script/yylex.l script/parser.y -BUILT_SOURCES += $(nodist_normal_module_SOURCES) -CLEANFILES += $(nodist_normal_module_SOURCES) -MOD_FILES += normal.mod -MARKER_FILES += normal.marker -CLEANFILES += normal.marker - -normal.marker: $(normal_module_SOURCES) $(nodist_normal_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(normal_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += part_acorn.module -MODULE_FILES += part_acorn.module$(EXEEXT) -part_acorn_module_SOURCES = partmap/acorn.c ## platform sources -nodist_part_acorn_module_SOURCES = ## platform nodist sources -part_acorn_module_LDADD = -part_acorn_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -part_acorn_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -part_acorn_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -part_acorn_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -part_acorn_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_part_acorn_module_SOURCES) -CLEANFILES += $(nodist_part_acorn_module_SOURCES) -MOD_FILES += part_acorn.mod -MARKER_FILES += part_acorn.marker -CLEANFILES += part_acorn.marker - -part_acorn.marker: $(part_acorn_module_SOURCES) $(nodist_part_acorn_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(part_acorn_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += part_amiga.module -MODULE_FILES += part_amiga.module$(EXEEXT) -part_amiga_module_SOURCES = partmap/amiga.c ## platform sources -nodist_part_amiga_module_SOURCES = ## platform nodist sources -part_amiga_module_LDADD = -part_amiga_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -part_amiga_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -part_amiga_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -part_amiga_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -part_amiga_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_part_amiga_module_SOURCES) -CLEANFILES += $(nodist_part_amiga_module_SOURCES) -MOD_FILES += part_amiga.mod -MARKER_FILES += part_amiga.marker -CLEANFILES += part_amiga.marker - -part_amiga.marker: $(part_amiga_module_SOURCES) $(nodist_part_amiga_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(part_amiga_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += part_apple.module -MODULE_FILES += part_apple.module$(EXEEXT) -part_apple_module_SOURCES = partmap/apple.c ## platform sources -nodist_part_apple_module_SOURCES = ## platform nodist sources -part_apple_module_LDADD = -part_apple_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -part_apple_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -part_apple_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -part_apple_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -part_apple_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_part_apple_module_SOURCES) -CLEANFILES += $(nodist_part_apple_module_SOURCES) -MOD_FILES += part_apple.mod -MARKER_FILES += part_apple.marker -CLEANFILES += part_apple.marker - -part_apple.marker: $(part_apple_module_SOURCES) $(nodist_part_apple_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(part_apple_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += part_gpt.module -MODULE_FILES += part_gpt.module$(EXEEXT) -part_gpt_module_SOURCES = partmap/gpt.c ## platform sources -nodist_part_gpt_module_SOURCES = ## platform nodist sources -part_gpt_module_LDADD = -part_gpt_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -part_gpt_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -part_gpt_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -part_gpt_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -part_gpt_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_part_gpt_module_SOURCES) -CLEANFILES += $(nodist_part_gpt_module_SOURCES) -MOD_FILES += part_gpt.mod -MARKER_FILES += part_gpt.marker -CLEANFILES += part_gpt.marker - -part_gpt.marker: $(part_gpt_module_SOURCES) $(nodist_part_gpt_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(part_gpt_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += part_msdos.module -MODULE_FILES += part_msdos.module$(EXEEXT) -part_msdos_module_SOURCES = partmap/msdos.c ## platform sources -nodist_part_msdos_module_SOURCES = ## platform nodist sources -part_msdos_module_LDADD = -part_msdos_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -part_msdos_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -part_msdos_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -part_msdos_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -part_msdos_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_part_msdos_module_SOURCES) -CLEANFILES += $(nodist_part_msdos_module_SOURCES) -MOD_FILES += part_msdos.mod -MARKER_FILES += part_msdos.marker -CLEANFILES += part_msdos.marker - -part_msdos.marker: $(part_msdos_module_SOURCES) $(nodist_part_msdos_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(part_msdos_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += part_sun.module -MODULE_FILES += part_sun.module$(EXEEXT) -part_sun_module_SOURCES = partmap/sun.c ## platform sources -nodist_part_sun_module_SOURCES = ## platform nodist sources -part_sun_module_LDADD = -part_sun_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -part_sun_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -part_sun_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -part_sun_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -part_sun_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_part_sun_module_SOURCES) -CLEANFILES += $(nodist_part_sun_module_SOURCES) -MOD_FILES += part_sun.mod -MARKER_FILES += part_sun.marker -CLEANFILES += part_sun.marker - -part_sun.marker: $(part_sun_module_SOURCES) $(nodist_part_sun_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(part_sun_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += part_plan.module -MODULE_FILES += part_plan.module$(EXEEXT) -part_plan_module_SOURCES = partmap/plan.c ## platform sources -nodist_part_plan_module_SOURCES = ## platform nodist sources -part_plan_module_LDADD = -part_plan_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -part_plan_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -part_plan_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -part_plan_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -part_plan_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_part_plan_module_SOURCES) -CLEANFILES += $(nodist_part_plan_module_SOURCES) -MOD_FILES += part_plan.mod -MARKER_FILES += part_plan.marker -CLEANFILES += part_plan.marker - -part_plan.marker: $(part_plan_module_SOURCES) $(nodist_part_plan_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(part_plan_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += part_dvh.module -MODULE_FILES += part_dvh.module$(EXEEXT) -part_dvh_module_SOURCES = partmap/dvh.c ## platform sources -nodist_part_dvh_module_SOURCES = ## platform nodist sources -part_dvh_module_LDADD = -part_dvh_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -part_dvh_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -part_dvh_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -part_dvh_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -part_dvh_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_part_dvh_module_SOURCES) -CLEANFILES += $(nodist_part_dvh_module_SOURCES) -MOD_FILES += part_dvh.mod -MARKER_FILES += part_dvh.marker -CLEANFILES += part_dvh.marker - -part_dvh.marker: $(part_dvh_module_SOURCES) $(nodist_part_dvh_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(part_dvh_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += part_bsd.module -MODULE_FILES += part_bsd.module$(EXEEXT) -part_bsd_module_SOURCES = partmap/bsdlabel.c ## platform sources -nodist_part_bsd_module_SOURCES = ## platform nodist sources -part_bsd_module_LDADD = -part_bsd_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -part_bsd_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -part_bsd_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -part_bsd_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -part_bsd_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_part_bsd_module_SOURCES) -CLEANFILES += $(nodist_part_bsd_module_SOURCES) -MOD_FILES += part_bsd.mod -MARKER_FILES += part_bsd.marker -CLEANFILES += part_bsd.marker - -part_bsd.marker: $(part_bsd_module_SOURCES) $(nodist_part_bsd_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(part_bsd_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += part_sunpc.module -MODULE_FILES += part_sunpc.module$(EXEEXT) -part_sunpc_module_SOURCES = partmap/sunpc.c ## platform sources -nodist_part_sunpc_module_SOURCES = ## platform nodist sources -part_sunpc_module_LDADD = -part_sunpc_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -part_sunpc_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -part_sunpc_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -part_sunpc_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -part_sunpc_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_part_sunpc_module_SOURCES) -CLEANFILES += $(nodist_part_sunpc_module_SOURCES) -MOD_FILES += part_sunpc.mod -MARKER_FILES += part_sunpc.marker -CLEANFILES += part_sunpc.marker - -part_sunpc.marker: $(part_sunpc_module_SOURCES) $(nodist_part_sunpc_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(part_sunpc_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += part_dfly.module -MODULE_FILES += part_dfly.module$(EXEEXT) -part_dfly_module_SOURCES = partmap/dfly.c ## platform sources -nodist_part_dfly_module_SOURCES = ## platform nodist sources -part_dfly_module_LDADD = -part_dfly_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -part_dfly_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -part_dfly_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -part_dfly_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -part_dfly_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_part_dfly_module_SOURCES) -CLEANFILES += $(nodist_part_dfly_module_SOURCES) -MOD_FILES += part_dfly.mod -MARKER_FILES += part_dfly.marker -CLEANFILES += part_dfly.marker - -part_dfly.marker: $(part_dfly_module_SOURCES) $(nodist_part_dfly_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(part_dfly_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += msdospart.module -MODULE_FILES += msdospart.module$(EXEEXT) -msdospart_module_SOURCES = parttool/msdospart.c ## platform sources -nodist_msdospart_module_SOURCES = ## platform nodist sources -msdospart_module_LDADD = -msdospart_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -msdospart_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -msdospart_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -msdospart_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -msdospart_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_msdospart_module_SOURCES) -CLEANFILES += $(nodist_msdospart_module_SOURCES) -MOD_FILES += msdospart.mod -MARKER_FILES += msdospart.marker -CLEANFILES += msdospart.marker - -msdospart.marker: $(msdospart_module_SOURCES) $(nodist_msdospart_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(msdospart_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -if COND_i386_pc -platform_PROGRAMS += at_keyboard.module -MODULE_FILES += at_keyboard.module$(EXEEXT) -at_keyboard_module_SOURCES = term/at_keyboard.c term/ps2.c ## platform sources -nodist_at_keyboard_module_SOURCES = ## platform nodist sources -at_keyboard_module_LDADD = -at_keyboard_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -at_keyboard_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -at_keyboard_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -at_keyboard_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -at_keyboard_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_at_keyboard_module_SOURCES) -CLEANFILES += $(nodist_at_keyboard_module_SOURCES) -MOD_FILES += at_keyboard.mod -MARKER_FILES += at_keyboard.marker -CLEANFILES += at_keyboard.marker - -at_keyboard.marker: $(at_keyboard_module_SOURCES) $(nodist_at_keyboard_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(at_keyboard_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_efi -platform_PROGRAMS += at_keyboard.module -MODULE_FILES += at_keyboard.module$(EXEEXT) -at_keyboard_module_SOURCES = term/at_keyboard.c term/ps2.c ## platform sources -nodist_at_keyboard_module_SOURCES = ## platform nodist sources -at_keyboard_module_LDADD = -at_keyboard_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -at_keyboard_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -at_keyboard_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -at_keyboard_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -at_keyboard_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_at_keyboard_module_SOURCES) -CLEANFILES += $(nodist_at_keyboard_module_SOURCES) -MOD_FILES += at_keyboard.mod -MARKER_FILES += at_keyboard.marker -CLEANFILES += at_keyboard.marker - -at_keyboard.marker: $(at_keyboard_module_SOURCES) $(nodist_at_keyboard_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(at_keyboard_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_qemu -platform_PROGRAMS += at_keyboard.module -MODULE_FILES += at_keyboard.module$(EXEEXT) -at_keyboard_module_SOURCES = term/at_keyboard.c term/ps2.c ## platform sources -nodist_at_keyboard_module_SOURCES = ## platform nodist sources -at_keyboard_module_LDADD = -at_keyboard_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -at_keyboard_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -at_keyboard_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -at_keyboard_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -at_keyboard_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_at_keyboard_module_SOURCES) -CLEANFILES += $(nodist_at_keyboard_module_SOURCES) -MOD_FILES += at_keyboard.mod -MARKER_FILES += at_keyboard.marker -CLEANFILES += at_keyboard.marker - -at_keyboard.marker: $(at_keyboard_module_SOURCES) $(nodist_at_keyboard_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(at_keyboard_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_coreboot -platform_PROGRAMS += at_keyboard.module -MODULE_FILES += at_keyboard.module$(EXEEXT) -at_keyboard_module_SOURCES = term/at_keyboard.c term/ps2.c ## platform sources -nodist_at_keyboard_module_SOURCES = ## platform nodist sources -at_keyboard_module_LDADD = -at_keyboard_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -at_keyboard_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -at_keyboard_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -at_keyboard_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -at_keyboard_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_at_keyboard_module_SOURCES) -CLEANFILES += $(nodist_at_keyboard_module_SOURCES) -MOD_FILES += at_keyboard.mod -MARKER_FILES += at_keyboard.marker -CLEANFILES += at_keyboard.marker - -at_keyboard.marker: $(at_keyboard_module_SOURCES) $(nodist_at_keyboard_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(at_keyboard_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_multiboot -platform_PROGRAMS += at_keyboard.module -MODULE_FILES += at_keyboard.module$(EXEEXT) -at_keyboard_module_SOURCES = term/at_keyboard.c term/ps2.c ## platform sources -nodist_at_keyboard_module_SOURCES = ## platform nodist sources -at_keyboard_module_LDADD = -at_keyboard_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -at_keyboard_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -at_keyboard_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -at_keyboard_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -at_keyboard_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_at_keyboard_module_SOURCES) -CLEANFILES += $(nodist_at_keyboard_module_SOURCES) -MOD_FILES += at_keyboard.mod -MARKER_FILES += at_keyboard.marker -CLEANFILES += at_keyboard.marker - -at_keyboard.marker: $(at_keyboard_module_SOURCES) $(nodist_at_keyboard_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(at_keyboard_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_ieee1275 -platform_PROGRAMS += at_keyboard.module -MODULE_FILES += at_keyboard.module$(EXEEXT) -at_keyboard_module_SOURCES = term/at_keyboard.c term/ps2.c ## platform sources -nodist_at_keyboard_module_SOURCES = ## platform nodist sources -at_keyboard_module_LDADD = -at_keyboard_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -at_keyboard_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -at_keyboard_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -at_keyboard_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -at_keyboard_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_at_keyboard_module_SOURCES) -CLEANFILES += $(nodist_at_keyboard_module_SOURCES) -MOD_FILES += at_keyboard.mod -MARKER_FILES += at_keyboard.marker -CLEANFILES += at_keyboard.marker - -at_keyboard.marker: $(at_keyboard_module_SOURCES) $(nodist_at_keyboard_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(at_keyboard_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_x86_64_efi -platform_PROGRAMS += at_keyboard.module -MODULE_FILES += at_keyboard.module$(EXEEXT) -at_keyboard_module_SOURCES = term/at_keyboard.c term/ps2.c ## platform sources -nodist_at_keyboard_module_SOURCES = ## platform nodist sources -at_keyboard_module_LDADD = -at_keyboard_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -at_keyboard_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -at_keyboard_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -at_keyboard_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -at_keyboard_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_at_keyboard_module_SOURCES) -CLEANFILES += $(nodist_at_keyboard_module_SOURCES) -MOD_FILES += at_keyboard.mod -MARKER_FILES += at_keyboard.marker -CLEANFILES += at_keyboard.marker - -at_keyboard.marker: $(at_keyboard_module_SOURCES) $(nodist_at_keyboard_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(at_keyboard_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_emu -platform_PROGRAMS += gfxterm.module -MODULE_FILES += gfxterm.module$(EXEEXT) -gfxterm_module_SOURCES = term/gfxterm.c ## platform sources -nodist_gfxterm_module_SOURCES = ## platform nodist sources -gfxterm_module_LDADD = -gfxterm_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -gfxterm_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -gfxterm_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -gfxterm_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -gfxterm_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_gfxterm_module_SOURCES) -CLEANFILES += $(nodist_gfxterm_module_SOURCES) -MOD_FILES += gfxterm.mod -MARKER_FILES += gfxterm.marker -CLEANFILES += gfxterm.marker - -gfxterm.marker: $(gfxterm_module_SOURCES) $(nodist_gfxterm_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gfxterm_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_pc -platform_PROGRAMS += gfxterm.module -MODULE_FILES += gfxterm.module$(EXEEXT) -gfxterm_module_SOURCES = term/gfxterm.c ## platform sources -nodist_gfxterm_module_SOURCES = ## platform nodist sources -gfxterm_module_LDADD = -gfxterm_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -gfxterm_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -gfxterm_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -gfxterm_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -gfxterm_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_gfxterm_module_SOURCES) -CLEANFILES += $(nodist_gfxterm_module_SOURCES) -MOD_FILES += gfxterm.mod -MARKER_FILES += gfxterm.marker -CLEANFILES += gfxterm.marker - -gfxterm.marker: $(gfxterm_module_SOURCES) $(nodist_gfxterm_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gfxterm_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_efi -platform_PROGRAMS += gfxterm.module -MODULE_FILES += gfxterm.module$(EXEEXT) -gfxterm_module_SOURCES = term/gfxterm.c ## platform sources -nodist_gfxterm_module_SOURCES = ## platform nodist sources -gfxterm_module_LDADD = -gfxterm_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -gfxterm_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -gfxterm_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -gfxterm_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -gfxterm_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_gfxterm_module_SOURCES) -CLEANFILES += $(nodist_gfxterm_module_SOURCES) -MOD_FILES += gfxterm.mod -MARKER_FILES += gfxterm.marker -CLEANFILES += gfxterm.marker - -gfxterm.marker: $(gfxterm_module_SOURCES) $(nodist_gfxterm_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gfxterm_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_qemu -platform_PROGRAMS += gfxterm.module -MODULE_FILES += gfxterm.module$(EXEEXT) -gfxterm_module_SOURCES = term/gfxterm.c ## platform sources -nodist_gfxterm_module_SOURCES = ## platform nodist sources -gfxterm_module_LDADD = -gfxterm_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -gfxterm_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -gfxterm_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -gfxterm_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -gfxterm_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_gfxterm_module_SOURCES) -CLEANFILES += $(nodist_gfxterm_module_SOURCES) -MOD_FILES += gfxterm.mod -MARKER_FILES += gfxterm.marker -CLEANFILES += gfxterm.marker - -gfxterm.marker: $(gfxterm_module_SOURCES) $(nodist_gfxterm_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gfxterm_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_multiboot -platform_PROGRAMS += gfxterm.module -MODULE_FILES += gfxterm.module$(EXEEXT) -gfxterm_module_SOURCES = term/gfxterm.c ## platform sources -nodist_gfxterm_module_SOURCES = ## platform nodist sources -gfxterm_module_LDADD = -gfxterm_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -gfxterm_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -gfxterm_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -gfxterm_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -gfxterm_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_gfxterm_module_SOURCES) -CLEANFILES += $(nodist_gfxterm_module_SOURCES) -MOD_FILES += gfxterm.mod -MARKER_FILES += gfxterm.marker -CLEANFILES += gfxterm.marker - -gfxterm.marker: $(gfxterm_module_SOURCES) $(nodist_gfxterm_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gfxterm_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_ieee1275 -platform_PROGRAMS += gfxterm.module -MODULE_FILES += gfxterm.module$(EXEEXT) -gfxterm_module_SOURCES = term/gfxterm.c ## platform sources -nodist_gfxterm_module_SOURCES = ## platform nodist sources -gfxterm_module_LDADD = -gfxterm_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -gfxterm_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -gfxterm_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -gfxterm_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -gfxterm_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_gfxterm_module_SOURCES) -CLEANFILES += $(nodist_gfxterm_module_SOURCES) -MOD_FILES += gfxterm.mod -MARKER_FILES += gfxterm.marker -CLEANFILES += gfxterm.marker - -gfxterm.marker: $(gfxterm_module_SOURCES) $(nodist_gfxterm_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gfxterm_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_x86_64_efi -platform_PROGRAMS += gfxterm.module -MODULE_FILES += gfxterm.module$(EXEEXT) -gfxterm_module_SOURCES = term/gfxterm.c ## platform sources -nodist_gfxterm_module_SOURCES = ## platform nodist sources -gfxterm_module_LDADD = -gfxterm_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -gfxterm_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -gfxterm_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -gfxterm_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -gfxterm_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_gfxterm_module_SOURCES) -CLEANFILES += $(nodist_gfxterm_module_SOURCES) -MOD_FILES += gfxterm.mod -MARKER_FILES += gfxterm.marker -CLEANFILES += gfxterm.marker - -gfxterm.marker: $(gfxterm_module_SOURCES) $(nodist_gfxterm_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gfxterm_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_xen -platform_PROGRAMS += gfxterm.module -MODULE_FILES += gfxterm.module$(EXEEXT) -gfxterm_module_SOURCES = term/gfxterm.c ## platform sources -nodist_gfxterm_module_SOURCES = ## platform nodist sources -gfxterm_module_LDADD = -gfxterm_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -gfxterm_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -gfxterm_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -gfxterm_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -gfxterm_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_gfxterm_module_SOURCES) -CLEANFILES += $(nodist_gfxterm_module_SOURCES) -MOD_FILES += gfxterm.mod -MARKER_FILES += gfxterm.marker -CLEANFILES += gfxterm.marker - -gfxterm.marker: $(gfxterm_module_SOURCES) $(nodist_gfxterm_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gfxterm_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_x86_64_xen -platform_PROGRAMS += gfxterm.module -MODULE_FILES += gfxterm.module$(EXEEXT) -gfxterm_module_SOURCES = term/gfxterm.c ## platform sources -nodist_gfxterm_module_SOURCES = ## platform nodist sources -gfxterm_module_LDADD = -gfxterm_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -gfxterm_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -gfxterm_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -gfxterm_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -gfxterm_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_gfxterm_module_SOURCES) -CLEANFILES += $(nodist_gfxterm_module_SOURCES) -MOD_FILES += gfxterm.mod -MARKER_FILES += gfxterm.marker -CLEANFILES += gfxterm.marker - -gfxterm.marker: $(gfxterm_module_SOURCES) $(nodist_gfxterm_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gfxterm_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_xen_pvh -platform_PROGRAMS += gfxterm.module -MODULE_FILES += gfxterm.module$(EXEEXT) -gfxterm_module_SOURCES = term/gfxterm.c ## platform sources -nodist_gfxterm_module_SOURCES = ## platform nodist sources -gfxterm_module_LDADD = -gfxterm_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -gfxterm_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -gfxterm_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -gfxterm_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -gfxterm_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_gfxterm_module_SOURCES) -CLEANFILES += $(nodist_gfxterm_module_SOURCES) -MOD_FILES += gfxterm.mod -MARKER_FILES += gfxterm.marker -CLEANFILES += gfxterm.marker - -gfxterm.marker: $(gfxterm_module_SOURCES) $(nodist_gfxterm_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gfxterm_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_sparc64_ieee1275 -platform_PROGRAMS += gfxterm.module -MODULE_FILES += gfxterm.module$(EXEEXT) -gfxterm_module_SOURCES = term/gfxterm.c ## platform sources -nodist_gfxterm_module_SOURCES = ## platform nodist sources -gfxterm_module_LDADD = -gfxterm_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -gfxterm_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -gfxterm_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -gfxterm_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -gfxterm_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_gfxterm_module_SOURCES) -CLEANFILES += $(nodist_gfxterm_module_SOURCES) -MOD_FILES += gfxterm.mod -MARKER_FILES += gfxterm.marker -CLEANFILES += gfxterm.marker - -gfxterm.marker: $(gfxterm_module_SOURCES) $(nodist_gfxterm_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gfxterm_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_powerpc_ieee1275 -platform_PROGRAMS += gfxterm.module -MODULE_FILES += gfxterm.module$(EXEEXT) -gfxterm_module_SOURCES = term/gfxterm.c ## platform sources -nodist_gfxterm_module_SOURCES = ## platform nodist sources -gfxterm_module_LDADD = -gfxterm_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -gfxterm_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -gfxterm_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -gfxterm_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -gfxterm_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_gfxterm_module_SOURCES) -CLEANFILES += $(nodist_gfxterm_module_SOURCES) -MOD_FILES += gfxterm.mod -MARKER_FILES += gfxterm.marker -CLEANFILES += gfxterm.marker - -gfxterm.marker: $(gfxterm_module_SOURCES) $(nodist_gfxterm_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gfxterm_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_mips_arc -platform_PROGRAMS += gfxterm.module -MODULE_FILES += gfxterm.module$(EXEEXT) -gfxterm_module_SOURCES = term/gfxterm.c ## platform sources -nodist_gfxterm_module_SOURCES = ## platform nodist sources -gfxterm_module_LDADD = -gfxterm_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -gfxterm_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -gfxterm_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -gfxterm_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -gfxterm_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_gfxterm_module_SOURCES) -CLEANFILES += $(nodist_gfxterm_module_SOURCES) -MOD_FILES += gfxterm.mod -MARKER_FILES += gfxterm.marker -CLEANFILES += gfxterm.marker - -gfxterm.marker: $(gfxterm_module_SOURCES) $(nodist_gfxterm_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gfxterm_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_ia64_efi -platform_PROGRAMS += gfxterm.module -MODULE_FILES += gfxterm.module$(EXEEXT) -gfxterm_module_SOURCES = term/gfxterm.c ## platform sources -nodist_gfxterm_module_SOURCES = ## platform nodist sources -gfxterm_module_LDADD = -gfxterm_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -gfxterm_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -gfxterm_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -gfxterm_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -gfxterm_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_gfxterm_module_SOURCES) -CLEANFILES += $(nodist_gfxterm_module_SOURCES) -MOD_FILES += gfxterm.mod -MARKER_FILES += gfxterm.marker -CLEANFILES += gfxterm.marker - -gfxterm.marker: $(gfxterm_module_SOURCES) $(nodist_gfxterm_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gfxterm_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_mips_qemu_mips -platform_PROGRAMS += gfxterm.module -MODULE_FILES += gfxterm.module$(EXEEXT) -gfxterm_module_SOURCES = term/gfxterm.c ## platform sources -nodist_gfxterm_module_SOURCES = ## platform nodist sources -gfxterm_module_LDADD = -gfxterm_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -gfxterm_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -gfxterm_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -gfxterm_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -gfxterm_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_gfxterm_module_SOURCES) -CLEANFILES += $(nodist_gfxterm_module_SOURCES) -MOD_FILES += gfxterm.mod -MARKER_FILES += gfxterm.marker -CLEANFILES += gfxterm.marker - -gfxterm.marker: $(gfxterm_module_SOURCES) $(nodist_gfxterm_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gfxterm_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_arm_uboot -platform_PROGRAMS += gfxterm.module -MODULE_FILES += gfxterm.module$(EXEEXT) -gfxterm_module_SOURCES = term/gfxterm.c ## platform sources -nodist_gfxterm_module_SOURCES = ## platform nodist sources -gfxterm_module_LDADD = -gfxterm_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -gfxterm_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -gfxterm_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -gfxterm_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -gfxterm_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_gfxterm_module_SOURCES) -CLEANFILES += $(nodist_gfxterm_module_SOURCES) -MOD_FILES += gfxterm.mod -MARKER_FILES += gfxterm.marker -CLEANFILES += gfxterm.marker - -gfxterm.marker: $(gfxterm_module_SOURCES) $(nodist_gfxterm_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gfxterm_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_arm_efi -platform_PROGRAMS += gfxterm.module -MODULE_FILES += gfxterm.module$(EXEEXT) -gfxterm_module_SOURCES = term/gfxterm.c ## platform sources -nodist_gfxterm_module_SOURCES = ## platform nodist sources -gfxterm_module_LDADD = -gfxterm_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -gfxterm_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -gfxterm_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -gfxterm_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -gfxterm_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_gfxterm_module_SOURCES) -CLEANFILES += $(nodist_gfxterm_module_SOURCES) -MOD_FILES += gfxterm.mod -MARKER_FILES += gfxterm.marker -CLEANFILES += gfxterm.marker - -gfxterm.marker: $(gfxterm_module_SOURCES) $(nodist_gfxterm_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gfxterm_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_arm64_efi -platform_PROGRAMS += gfxterm.module -MODULE_FILES += gfxterm.module$(EXEEXT) -gfxterm_module_SOURCES = term/gfxterm.c ## platform sources -nodist_gfxterm_module_SOURCES = ## platform nodist sources -gfxterm_module_LDADD = -gfxterm_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -gfxterm_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -gfxterm_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -gfxterm_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -gfxterm_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_gfxterm_module_SOURCES) -CLEANFILES += $(nodist_gfxterm_module_SOURCES) -MOD_FILES += gfxterm.mod -MARKER_FILES += gfxterm.marker -CLEANFILES += gfxterm.marker - -gfxterm.marker: $(gfxterm_module_SOURCES) $(nodist_gfxterm_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gfxterm_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_riscv32_efi -platform_PROGRAMS += gfxterm.module -MODULE_FILES += gfxterm.module$(EXEEXT) -gfxterm_module_SOURCES = term/gfxterm.c ## platform sources -nodist_gfxterm_module_SOURCES = ## platform nodist sources -gfxterm_module_LDADD = -gfxterm_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -gfxterm_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -gfxterm_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -gfxterm_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -gfxterm_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_gfxterm_module_SOURCES) -CLEANFILES += $(nodist_gfxterm_module_SOURCES) -MOD_FILES += gfxterm.mod -MARKER_FILES += gfxterm.marker -CLEANFILES += gfxterm.marker - -gfxterm.marker: $(gfxterm_module_SOURCES) $(nodist_gfxterm_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gfxterm_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_riscv64_efi -platform_PROGRAMS += gfxterm.module -MODULE_FILES += gfxterm.module$(EXEEXT) -gfxterm_module_SOURCES = term/gfxterm.c ## platform sources -nodist_gfxterm_module_SOURCES = ## platform nodist sources -gfxterm_module_LDADD = -gfxterm_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -gfxterm_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -gfxterm_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -gfxterm_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -gfxterm_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_gfxterm_module_SOURCES) -CLEANFILES += $(nodist_gfxterm_module_SOURCES) -MOD_FILES += gfxterm.mod -MARKER_FILES += gfxterm.marker -CLEANFILES += gfxterm.marker - -gfxterm.marker: $(gfxterm_module_SOURCES) $(nodist_gfxterm_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gfxterm_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif -platform_PROGRAMS += gfxterm_background.module -MODULE_FILES += gfxterm_background.module$(EXEEXT) -gfxterm_background_module_SOURCES = term/gfxterm_background.c ## platform sources -nodist_gfxterm_background_module_SOURCES = ## platform nodist sources -gfxterm_background_module_LDADD = -gfxterm_background_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -gfxterm_background_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -gfxterm_background_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -gfxterm_background_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -gfxterm_background_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_gfxterm_background_module_SOURCES) -CLEANFILES += $(nodist_gfxterm_background_module_SOURCES) -MOD_FILES += gfxterm_background.mod -MARKER_FILES += gfxterm_background.marker -CLEANFILES += gfxterm_background.marker - -gfxterm_background.marker: $(gfxterm_background_module_SOURCES) $(nodist_gfxterm_background_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gfxterm_background_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -if COND_i386_pc -platform_PROGRAMS += serial.module -MODULE_FILES += serial.module$(EXEEXT) -serial_module_SOURCES = term/ns8250.c term/serial.c ## platform sources -nodist_serial_module_SOURCES = ## platform nodist sources -serial_module_LDADD = -serial_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -serial_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -serial_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -serial_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -serial_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_serial_module_SOURCES) -CLEANFILES += $(nodist_serial_module_SOURCES) -MOD_FILES += serial.mod -MARKER_FILES += serial.marker -CLEANFILES += serial.marker - -serial.marker: $(serial_module_SOURCES) $(nodist_serial_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(serial_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_efi -platform_PROGRAMS += serial.module -MODULE_FILES += serial.module$(EXEEXT) -serial_module_SOURCES = term/ns8250.c term/efi/serial.c term/serial.c ## platform sources -nodist_serial_module_SOURCES = ## platform nodist sources -serial_module_LDADD = -serial_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -serial_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -serial_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -serial_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -serial_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_serial_module_SOURCES) -CLEANFILES += $(nodist_serial_module_SOURCES) -MOD_FILES += serial.mod -MARKER_FILES += serial.marker -CLEANFILES += serial.marker - -serial.marker: $(serial_module_SOURCES) $(nodist_serial_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(serial_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_qemu -platform_PROGRAMS += serial.module -MODULE_FILES += serial.module$(EXEEXT) -serial_module_SOURCES = term/ns8250.c term/serial.c ## platform sources -nodist_serial_module_SOURCES = ## platform nodist sources -serial_module_LDADD = -serial_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -serial_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -serial_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -serial_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -serial_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_serial_module_SOURCES) -CLEANFILES += $(nodist_serial_module_SOURCES) -MOD_FILES += serial.mod -MARKER_FILES += serial.marker -CLEANFILES += serial.marker - -serial.marker: $(serial_module_SOURCES) $(nodist_serial_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(serial_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_coreboot -platform_PROGRAMS += serial.module -MODULE_FILES += serial.module$(EXEEXT) -serial_module_SOURCES = term/ns8250.c term/serial.c ## platform sources -nodist_serial_module_SOURCES = ## platform nodist sources -serial_module_LDADD = -serial_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -serial_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -serial_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -serial_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -serial_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_serial_module_SOURCES) -CLEANFILES += $(nodist_serial_module_SOURCES) -MOD_FILES += serial.mod -MARKER_FILES += serial.marker -CLEANFILES += serial.marker - -serial.marker: $(serial_module_SOURCES) $(nodist_serial_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(serial_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_multiboot -platform_PROGRAMS += serial.module -MODULE_FILES += serial.module$(EXEEXT) -serial_module_SOURCES = term/ns8250.c term/serial.c ## platform sources -nodist_serial_module_SOURCES = ## platform nodist sources -serial_module_LDADD = -serial_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -serial_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -serial_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -serial_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -serial_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_serial_module_SOURCES) -CLEANFILES += $(nodist_serial_module_SOURCES) -MOD_FILES += serial.mod -MARKER_FILES += serial.marker -CLEANFILES += serial.marker - -serial.marker: $(serial_module_SOURCES) $(nodist_serial_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(serial_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_ieee1275 -platform_PROGRAMS += serial.module -MODULE_FILES += serial.module$(EXEEXT) -serial_module_SOURCES = term/ieee1275/serial.c term/ns8250.c term/serial.c ## platform sources -nodist_serial_module_SOURCES = ## platform nodist sources -serial_module_LDADD = -serial_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -serial_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -serial_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -serial_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -serial_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_serial_module_SOURCES) -CLEANFILES += $(nodist_serial_module_SOURCES) -MOD_FILES += serial.mod -MARKER_FILES += serial.marker -CLEANFILES += serial.marker - -serial.marker: $(serial_module_SOURCES) $(nodist_serial_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(serial_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_x86_64_efi -platform_PROGRAMS += serial.module -MODULE_FILES += serial.module$(EXEEXT) -serial_module_SOURCES = term/ns8250.c term/efi/serial.c term/serial.c ## platform sources -nodist_serial_module_SOURCES = ## platform nodist sources -serial_module_LDADD = -serial_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -serial_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -serial_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -serial_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -serial_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_serial_module_SOURCES) -CLEANFILES += $(nodist_serial_module_SOURCES) -MOD_FILES += serial.mod -MARKER_FILES += serial.marker -CLEANFILES += serial.marker - -serial.marker: $(serial_module_SOURCES) $(nodist_serial_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(serial_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_sparc64_ieee1275 -platform_PROGRAMS += serial.module -MODULE_FILES += serial.module$(EXEEXT) -serial_module_SOURCES = term/ieee1275/serial.c term/serial.c ## platform sources -nodist_serial_module_SOURCES = ## platform nodist sources -serial_module_LDADD = -serial_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -serial_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -serial_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -serial_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -serial_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_serial_module_SOURCES) -CLEANFILES += $(nodist_serial_module_SOURCES) -MOD_FILES += serial.mod -MARKER_FILES += serial.marker -CLEANFILES += serial.marker - -serial.marker: $(serial_module_SOURCES) $(nodist_serial_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(serial_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_powerpc_ieee1275 -platform_PROGRAMS += serial.module -MODULE_FILES += serial.module$(EXEEXT) -serial_module_SOURCES = term/ieee1275/serial.c term/serial.c ## platform sources -nodist_serial_module_SOURCES = ## platform nodist sources -serial_module_LDADD = -serial_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -serial_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -serial_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -serial_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -serial_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_serial_module_SOURCES) -CLEANFILES += $(nodist_serial_module_SOURCES) -MOD_FILES += serial.mod -MARKER_FILES += serial.marker -CLEANFILES += serial.marker - -serial.marker: $(serial_module_SOURCES) $(nodist_serial_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(serial_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_mips_arc -platform_PROGRAMS += serial.module -MODULE_FILES += serial.module$(EXEEXT) -serial_module_SOURCES = term/arc/serial.c term/serial.c ## platform sources -nodist_serial_module_SOURCES = ## platform nodist sources -serial_module_LDADD = -serial_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -serial_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -serial_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -serial_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -serial_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_serial_module_SOURCES) -CLEANFILES += $(nodist_serial_module_SOURCES) -MOD_FILES += serial.mod -MARKER_FILES += serial.marker -CLEANFILES += serial.marker - -serial.marker: $(serial_module_SOURCES) $(nodist_serial_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(serial_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_ia64_efi -platform_PROGRAMS += serial.module -MODULE_FILES += serial.module$(EXEEXT) -serial_module_SOURCES = term/efi/serial.c term/serial.c ## platform sources -nodist_serial_module_SOURCES = ## platform nodist sources -serial_module_LDADD = -serial_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -serial_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -serial_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -serial_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -serial_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_serial_module_SOURCES) -CLEANFILES += $(nodist_serial_module_SOURCES) -MOD_FILES += serial.mod -MARKER_FILES += serial.marker -CLEANFILES += serial.marker - -serial.marker: $(serial_module_SOURCES) $(nodist_serial_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(serial_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_arm_efi -platform_PROGRAMS += serial.module -MODULE_FILES += serial.module$(EXEEXT) -serial_module_SOURCES = term/efi/serial.c term/serial.c ## platform sources -nodist_serial_module_SOURCES = ## platform nodist sources -serial_module_LDADD = -serial_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -serial_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -serial_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -serial_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -serial_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_serial_module_SOURCES) -CLEANFILES += $(nodist_serial_module_SOURCES) -MOD_FILES += serial.mod -MARKER_FILES += serial.marker -CLEANFILES += serial.marker - -serial.marker: $(serial_module_SOURCES) $(nodist_serial_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(serial_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_arm64_efi -platform_PROGRAMS += serial.module -MODULE_FILES += serial.module$(EXEEXT) -serial_module_SOURCES = term/efi/serial.c term/serial.c ## platform sources -nodist_serial_module_SOURCES = ## platform nodist sources -serial_module_LDADD = -serial_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -serial_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -serial_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -serial_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -serial_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_serial_module_SOURCES) -CLEANFILES += $(nodist_serial_module_SOURCES) -MOD_FILES += serial.mod -MARKER_FILES += serial.marker -CLEANFILES += serial.marker - -serial.marker: $(serial_module_SOURCES) $(nodist_serial_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(serial_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_arm_coreboot -platform_PROGRAMS += serial.module -MODULE_FILES += serial.module$(EXEEXT) -serial_module_SOURCES = term/serial.c ## platform sources -nodist_serial_module_SOURCES = ## platform nodist sources -serial_module_LDADD = -serial_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -serial_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -serial_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -serial_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -serial_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_serial_module_SOURCES) -CLEANFILES += $(nodist_serial_module_SOURCES) -MOD_FILES += serial.mod -MARKER_FILES += serial.marker -CLEANFILES += serial.marker - -serial.marker: $(serial_module_SOURCES) $(nodist_serial_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(serial_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_riscv32_efi -platform_PROGRAMS += serial.module -MODULE_FILES += serial.module$(EXEEXT) -serial_module_SOURCES = term/efi/serial.c term/serial.c ## platform sources -nodist_serial_module_SOURCES = ## platform nodist sources -serial_module_LDADD = -serial_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -serial_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -serial_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -serial_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -serial_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_serial_module_SOURCES) -CLEANFILES += $(nodist_serial_module_SOURCES) -MOD_FILES += serial.mod -MARKER_FILES += serial.marker -CLEANFILES += serial.marker - -serial.marker: $(serial_module_SOURCES) $(nodist_serial_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(serial_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_riscv64_efi -platform_PROGRAMS += serial.module -MODULE_FILES += serial.module$(EXEEXT) -serial_module_SOURCES = term/efi/serial.c term/serial.c ## platform sources -nodist_serial_module_SOURCES = ## platform nodist sources -serial_module_LDADD = -serial_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -serial_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -serial_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -serial_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -serial_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_serial_module_SOURCES) -CLEANFILES += $(nodist_serial_module_SOURCES) -MOD_FILES += serial.mod -MARKER_FILES += serial.marker -CLEANFILES += serial.marker - -serial.marker: $(serial_module_SOURCES) $(nodist_serial_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(serial_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_pc -platform_PROGRAMS += sendkey.module -MODULE_FILES += sendkey.module$(EXEEXT) -sendkey_module_SOURCES = commands/i386/pc/sendkey.c ## platform sources -nodist_sendkey_module_SOURCES = ## platform nodist sources -sendkey_module_LDADD = -sendkey_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -sendkey_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -sendkey_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -sendkey_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -sendkey_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_sendkey_module_SOURCES) -CLEANFILES += $(nodist_sendkey_module_SOURCES) -MOD_FILES += sendkey.mod -MARKER_FILES += sendkey.marker -CLEANFILES += sendkey.marker - -sendkey.marker: $(sendkey_module_SOURCES) $(nodist_sendkey_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(sendkey_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_pc -platform_PROGRAMS += terminfo.module -MODULE_FILES += terminfo.module$(EXEEXT) -terminfo_module_SOURCES = term/terminfo.c term/tparm.c ## platform sources -nodist_terminfo_module_SOURCES = ## platform nodist sources -terminfo_module_LDADD = -terminfo_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -terminfo_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -terminfo_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -terminfo_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -terminfo_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_terminfo_module_SOURCES) -CLEANFILES += $(nodist_terminfo_module_SOURCES) -MOD_FILES += terminfo.mod -MARKER_FILES += terminfo.marker -CLEANFILES += terminfo.marker - -terminfo.marker: $(terminfo_module_SOURCES) $(nodist_terminfo_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(terminfo_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_efi -platform_PROGRAMS += terminfo.module -MODULE_FILES += terminfo.module$(EXEEXT) -terminfo_module_SOURCES = term/terminfo.c term/tparm.c ## platform sources -nodist_terminfo_module_SOURCES = ## platform nodist sources -terminfo_module_LDADD = -terminfo_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -terminfo_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -terminfo_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -terminfo_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -terminfo_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_terminfo_module_SOURCES) -CLEANFILES += $(nodist_terminfo_module_SOURCES) -MOD_FILES += terminfo.mod -MARKER_FILES += terminfo.marker -CLEANFILES += terminfo.marker - -terminfo.marker: $(terminfo_module_SOURCES) $(nodist_terminfo_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(terminfo_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_qemu -platform_PROGRAMS += terminfo.module -MODULE_FILES += terminfo.module$(EXEEXT) -terminfo_module_SOURCES = term/terminfo.c term/tparm.c ## platform sources -nodist_terminfo_module_SOURCES = ## platform nodist sources -terminfo_module_LDADD = -terminfo_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -terminfo_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -terminfo_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -terminfo_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -terminfo_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_terminfo_module_SOURCES) -CLEANFILES += $(nodist_terminfo_module_SOURCES) -MOD_FILES += terminfo.mod -MARKER_FILES += terminfo.marker -CLEANFILES += terminfo.marker - -terminfo.marker: $(terminfo_module_SOURCES) $(nodist_terminfo_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(terminfo_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_coreboot -platform_PROGRAMS += terminfo.module -MODULE_FILES += terminfo.module$(EXEEXT) -terminfo_module_SOURCES = term/terminfo.c term/tparm.c ## platform sources -nodist_terminfo_module_SOURCES = ## platform nodist sources -terminfo_module_LDADD = -terminfo_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -terminfo_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -terminfo_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -terminfo_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -terminfo_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_terminfo_module_SOURCES) -CLEANFILES += $(nodist_terminfo_module_SOURCES) -MOD_FILES += terminfo.mod -MARKER_FILES += terminfo.marker -CLEANFILES += terminfo.marker - -terminfo.marker: $(terminfo_module_SOURCES) $(nodist_terminfo_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(terminfo_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_multiboot -platform_PROGRAMS += terminfo.module -MODULE_FILES += terminfo.module$(EXEEXT) -terminfo_module_SOURCES = term/terminfo.c term/tparm.c ## platform sources -nodist_terminfo_module_SOURCES = ## platform nodist sources -terminfo_module_LDADD = -terminfo_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -terminfo_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -terminfo_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -terminfo_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -terminfo_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_terminfo_module_SOURCES) -CLEANFILES += $(nodist_terminfo_module_SOURCES) -MOD_FILES += terminfo.mod -MARKER_FILES += terminfo.marker -CLEANFILES += terminfo.marker - -terminfo.marker: $(terminfo_module_SOURCES) $(nodist_terminfo_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(terminfo_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_x86_64_efi -platform_PROGRAMS += terminfo.module -MODULE_FILES += terminfo.module$(EXEEXT) -terminfo_module_SOURCES = term/terminfo.c term/tparm.c ## platform sources -nodist_terminfo_module_SOURCES = ## platform nodist sources -terminfo_module_LDADD = -terminfo_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -terminfo_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -terminfo_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -terminfo_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -terminfo_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_terminfo_module_SOURCES) -CLEANFILES += $(nodist_terminfo_module_SOURCES) -MOD_FILES += terminfo.mod -MARKER_FILES += terminfo.marker -CLEANFILES += terminfo.marker - -terminfo.marker: $(terminfo_module_SOURCES) $(nodist_terminfo_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(terminfo_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_ia64_efi -platform_PROGRAMS += terminfo.module -MODULE_FILES += terminfo.module$(EXEEXT) -terminfo_module_SOURCES = term/terminfo.c term/tparm.c ## platform sources -nodist_terminfo_module_SOURCES = ## platform nodist sources -terminfo_module_LDADD = -terminfo_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -terminfo_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -terminfo_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -terminfo_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -terminfo_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_terminfo_module_SOURCES) -CLEANFILES += $(nodist_terminfo_module_SOURCES) -MOD_FILES += terminfo.mod -MARKER_FILES += terminfo.marker -CLEANFILES += terminfo.marker - -terminfo.marker: $(terminfo_module_SOURCES) $(nodist_terminfo_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(terminfo_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_arm_efi -platform_PROGRAMS += terminfo.module -MODULE_FILES += terminfo.module$(EXEEXT) -terminfo_module_SOURCES = term/terminfo.c term/tparm.c ## platform sources -nodist_terminfo_module_SOURCES = ## platform nodist sources -terminfo_module_LDADD = -terminfo_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -terminfo_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -terminfo_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -terminfo_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -terminfo_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_terminfo_module_SOURCES) -CLEANFILES += $(nodist_terminfo_module_SOURCES) -MOD_FILES += terminfo.mod -MARKER_FILES += terminfo.marker -CLEANFILES += terminfo.marker - -terminfo.marker: $(terminfo_module_SOURCES) $(nodist_terminfo_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(terminfo_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_arm64_efi -platform_PROGRAMS += terminfo.module -MODULE_FILES += terminfo.module$(EXEEXT) -terminfo_module_SOURCES = term/terminfo.c term/tparm.c ## platform sources -nodist_terminfo_module_SOURCES = ## platform nodist sources -terminfo_module_LDADD = -terminfo_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -terminfo_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -terminfo_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -terminfo_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -terminfo_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_terminfo_module_SOURCES) -CLEANFILES += $(nodist_terminfo_module_SOURCES) -MOD_FILES += terminfo.mod -MARKER_FILES += terminfo.marker -CLEANFILES += terminfo.marker - -terminfo.marker: $(terminfo_module_SOURCES) $(nodist_terminfo_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(terminfo_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_arm_coreboot -platform_PROGRAMS += terminfo.module -MODULE_FILES += terminfo.module$(EXEEXT) -terminfo_module_SOURCES = term/terminfo.c term/tparm.c ## platform sources -nodist_terminfo_module_SOURCES = ## platform nodist sources -terminfo_module_LDADD = -terminfo_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -terminfo_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -terminfo_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -terminfo_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -terminfo_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_terminfo_module_SOURCES) -CLEANFILES += $(nodist_terminfo_module_SOURCES) -MOD_FILES += terminfo.mod -MARKER_FILES += terminfo.marker -CLEANFILES += terminfo.marker - -terminfo.marker: $(terminfo_module_SOURCES) $(nodist_terminfo_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(terminfo_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_riscv32_efi -platform_PROGRAMS += terminfo.module -MODULE_FILES += terminfo.module$(EXEEXT) -terminfo_module_SOURCES = term/terminfo.c term/tparm.c ## platform sources -nodist_terminfo_module_SOURCES = ## platform nodist sources -terminfo_module_LDADD = -terminfo_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -terminfo_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -terminfo_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -terminfo_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -terminfo_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_terminfo_module_SOURCES) -CLEANFILES += $(nodist_terminfo_module_SOURCES) -MOD_FILES += terminfo.mod -MARKER_FILES += terminfo.marker -CLEANFILES += terminfo.marker - -terminfo.marker: $(terminfo_module_SOURCES) $(nodist_terminfo_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(terminfo_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_riscv64_efi -platform_PROGRAMS += terminfo.module -MODULE_FILES += terminfo.module$(EXEEXT) -terminfo_module_SOURCES = term/terminfo.c term/tparm.c ## platform sources -nodist_terminfo_module_SOURCES = ## platform nodist sources -terminfo_module_LDADD = -terminfo_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -terminfo_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -terminfo_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -terminfo_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -terminfo_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_terminfo_module_SOURCES) -CLEANFILES += $(nodist_terminfo_module_SOURCES) -MOD_FILES += terminfo.mod -MARKER_FILES += terminfo.marker -CLEANFILES += terminfo.marker - -terminfo.marker: $(terminfo_module_SOURCES) $(nodist_terminfo_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(terminfo_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_pc -platform_PROGRAMS += usb_keyboard.module -MODULE_FILES += usb_keyboard.module$(EXEEXT) -usb_keyboard_module_SOURCES = term/usb_keyboard.c ## platform sources -nodist_usb_keyboard_module_SOURCES = ## platform nodist sources -usb_keyboard_module_LDADD = -usb_keyboard_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -usb_keyboard_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -usb_keyboard_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -usb_keyboard_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -usb_keyboard_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_usb_keyboard_module_SOURCES) -CLEANFILES += $(nodist_usb_keyboard_module_SOURCES) -MOD_FILES += usb_keyboard.mod -MARKER_FILES += usb_keyboard.marker -CLEANFILES += usb_keyboard.marker - -usb_keyboard.marker: $(usb_keyboard_module_SOURCES) $(nodist_usb_keyboard_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usb_keyboard_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_efi -platform_PROGRAMS += usb_keyboard.module -MODULE_FILES += usb_keyboard.module$(EXEEXT) -usb_keyboard_module_SOURCES = term/usb_keyboard.c ## platform sources -nodist_usb_keyboard_module_SOURCES = ## platform nodist sources -usb_keyboard_module_LDADD = -usb_keyboard_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -usb_keyboard_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -usb_keyboard_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -usb_keyboard_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -usb_keyboard_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_usb_keyboard_module_SOURCES) -CLEANFILES += $(nodist_usb_keyboard_module_SOURCES) -MOD_FILES += usb_keyboard.mod -MARKER_FILES += usb_keyboard.marker -CLEANFILES += usb_keyboard.marker - -usb_keyboard.marker: $(usb_keyboard_module_SOURCES) $(nodist_usb_keyboard_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usb_keyboard_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_qemu -platform_PROGRAMS += usb_keyboard.module -MODULE_FILES += usb_keyboard.module$(EXEEXT) -usb_keyboard_module_SOURCES = term/usb_keyboard.c ## platform sources -nodist_usb_keyboard_module_SOURCES = ## platform nodist sources -usb_keyboard_module_LDADD = -usb_keyboard_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -usb_keyboard_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -usb_keyboard_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -usb_keyboard_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -usb_keyboard_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_usb_keyboard_module_SOURCES) -CLEANFILES += $(nodist_usb_keyboard_module_SOURCES) -MOD_FILES += usb_keyboard.mod -MARKER_FILES += usb_keyboard.marker -CLEANFILES += usb_keyboard.marker - -usb_keyboard.marker: $(usb_keyboard_module_SOURCES) $(nodist_usb_keyboard_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usb_keyboard_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_coreboot -platform_PROGRAMS += usb_keyboard.module -MODULE_FILES += usb_keyboard.module$(EXEEXT) -usb_keyboard_module_SOURCES = term/usb_keyboard.c ## platform sources -nodist_usb_keyboard_module_SOURCES = ## platform nodist sources -usb_keyboard_module_LDADD = -usb_keyboard_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -usb_keyboard_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -usb_keyboard_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -usb_keyboard_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -usb_keyboard_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_usb_keyboard_module_SOURCES) -CLEANFILES += $(nodist_usb_keyboard_module_SOURCES) -MOD_FILES += usb_keyboard.mod -MARKER_FILES += usb_keyboard.marker -CLEANFILES += usb_keyboard.marker - -usb_keyboard.marker: $(usb_keyboard_module_SOURCES) $(nodist_usb_keyboard_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usb_keyboard_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_multiboot -platform_PROGRAMS += usb_keyboard.module -MODULE_FILES += usb_keyboard.module$(EXEEXT) -usb_keyboard_module_SOURCES = term/usb_keyboard.c ## platform sources -nodist_usb_keyboard_module_SOURCES = ## platform nodist sources -usb_keyboard_module_LDADD = -usb_keyboard_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -usb_keyboard_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -usb_keyboard_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -usb_keyboard_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -usb_keyboard_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_usb_keyboard_module_SOURCES) -CLEANFILES += $(nodist_usb_keyboard_module_SOURCES) -MOD_FILES += usb_keyboard.mod -MARKER_FILES += usb_keyboard.marker -CLEANFILES += usb_keyboard.marker - -usb_keyboard.marker: $(usb_keyboard_module_SOURCES) $(nodist_usb_keyboard_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usb_keyboard_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_ieee1275 -platform_PROGRAMS += usb_keyboard.module -MODULE_FILES += usb_keyboard.module$(EXEEXT) -usb_keyboard_module_SOURCES = term/usb_keyboard.c ## platform sources -nodist_usb_keyboard_module_SOURCES = ## platform nodist sources -usb_keyboard_module_LDADD = -usb_keyboard_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -usb_keyboard_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -usb_keyboard_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -usb_keyboard_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -usb_keyboard_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_usb_keyboard_module_SOURCES) -CLEANFILES += $(nodist_usb_keyboard_module_SOURCES) -MOD_FILES += usb_keyboard.mod -MARKER_FILES += usb_keyboard.marker -CLEANFILES += usb_keyboard.marker - -usb_keyboard.marker: $(usb_keyboard_module_SOURCES) $(nodist_usb_keyboard_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usb_keyboard_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_x86_64_efi -platform_PROGRAMS += usb_keyboard.module -MODULE_FILES += usb_keyboard.module$(EXEEXT) -usb_keyboard_module_SOURCES = term/usb_keyboard.c ## platform sources -nodist_usb_keyboard_module_SOURCES = ## platform nodist sources -usb_keyboard_module_LDADD = -usb_keyboard_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -usb_keyboard_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -usb_keyboard_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -usb_keyboard_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -usb_keyboard_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_usb_keyboard_module_SOURCES) -CLEANFILES += $(nodist_usb_keyboard_module_SOURCES) -MOD_FILES += usb_keyboard.mod -MARKER_FILES += usb_keyboard.marker -CLEANFILES += usb_keyboard.marker - -usb_keyboard.marker: $(usb_keyboard_module_SOURCES) $(nodist_usb_keyboard_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usb_keyboard_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_mips_loongson -platform_PROGRAMS += usb_keyboard.module -MODULE_FILES += usb_keyboard.module$(EXEEXT) -usb_keyboard_module_SOURCES = term/usb_keyboard.c ## platform sources -nodist_usb_keyboard_module_SOURCES = ## platform nodist sources -usb_keyboard_module_LDADD = -usb_keyboard_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -usb_keyboard_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -usb_keyboard_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -usb_keyboard_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -usb_keyboard_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_usb_keyboard_module_SOURCES) -CLEANFILES += $(nodist_usb_keyboard_module_SOURCES) -MOD_FILES += usb_keyboard.mod -MARKER_FILES += usb_keyboard.marker -CLEANFILES += usb_keyboard.marker - -usb_keyboard.marker: $(usb_keyboard_module_SOURCES) $(nodist_usb_keyboard_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usb_keyboard_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_arm_coreboot -platform_PROGRAMS += usb_keyboard.module -MODULE_FILES += usb_keyboard.module$(EXEEXT) -usb_keyboard_module_SOURCES = term/usb_keyboard.c ## platform sources -nodist_usb_keyboard_module_SOURCES = ## platform nodist sources -usb_keyboard_module_LDADD = -usb_keyboard_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -usb_keyboard_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -usb_keyboard_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -usb_keyboard_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -usb_keyboard_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_usb_keyboard_module_SOURCES) -CLEANFILES += $(nodist_usb_keyboard_module_SOURCES) -MOD_FILES += usb_keyboard.mod -MARKER_FILES += usb_keyboard.marker -CLEANFILES += usb_keyboard.marker - -usb_keyboard.marker: $(usb_keyboard_module_SOURCES) $(nodist_usb_keyboard_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usb_keyboard_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_pc -platform_PROGRAMS += vga.module -MODULE_FILES += vga.module$(EXEEXT) -vga_module_SOURCES = video/i386/pc/vga.c ## platform sources -nodist_vga_module_SOURCES = ## platform nodist sources -vga_module_LDADD = -vga_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -vga_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -vga_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -vga_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -vga_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_vga_module_SOURCES) -CLEANFILES += $(nodist_vga_module_SOURCES) -MOD_FILES += vga.mod -MARKER_FILES += vga.marker -CLEANFILES += vga.marker - -vga.marker: $(vga_module_SOURCES) $(nodist_vga_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(vga_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_pc -platform_PROGRAMS += vga_text.module -MODULE_FILES += vga_text.module$(EXEEXT) -vga_text_module_SOURCES = term/i386/pc/vga_text.c ## platform sources -nodist_vga_text_module_SOURCES = ## platform nodist sources -vga_text_module_LDADD = -vga_text_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -vga_text_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -vga_text_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -vga_text_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -vga_text_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_vga_text_module_SOURCES) -CLEANFILES += $(nodist_vga_text_module_SOURCES) -MOD_FILES += vga_text.mod -MARKER_FILES += vga_text.marker -CLEANFILES += vga_text.marker - -vga_text.marker: $(vga_text_module_SOURCES) $(nodist_vga_text_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(vga_text_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_pc -platform_PROGRAMS += mda_text.module -MODULE_FILES += mda_text.module$(EXEEXT) -mda_text_module_SOURCES = term/i386/pc/mda_text.c ## platform sources -nodist_mda_text_module_SOURCES = ## platform nodist sources -mda_text_module_LDADD = -mda_text_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -mda_text_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -mda_text_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -mda_text_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -mda_text_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_mda_text_module_SOURCES) -CLEANFILES += $(nodist_mda_text_module_SOURCES) -MOD_FILES += mda_text.mod -MARKER_FILES += mda_text.marker -CLEANFILES += mda_text.marker - -mda_text.marker: $(mda_text_module_SOURCES) $(nodist_mda_text_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mda_text_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_qemu -platform_PROGRAMS += mda_text.module -MODULE_FILES += mda_text.module$(EXEEXT) -mda_text_module_SOURCES = term/i386/pc/mda_text.c ## platform sources -nodist_mda_text_module_SOURCES = ## platform nodist sources -mda_text_module_LDADD = -mda_text_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -mda_text_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -mda_text_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -mda_text_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -mda_text_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_mda_text_module_SOURCES) -CLEANFILES += $(nodist_mda_text_module_SOURCES) -MOD_FILES += mda_text.mod -MARKER_FILES += mda_text.marker -CLEANFILES += mda_text.marker - -mda_text.marker: $(mda_text_module_SOURCES) $(nodist_mda_text_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mda_text_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_coreboot -platform_PROGRAMS += mda_text.module -MODULE_FILES += mda_text.module$(EXEEXT) -mda_text_module_SOURCES = term/i386/pc/mda_text.c ## platform sources -nodist_mda_text_module_SOURCES = ## platform nodist sources -mda_text_module_LDADD = -mda_text_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -mda_text_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -mda_text_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -mda_text_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -mda_text_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_mda_text_module_SOURCES) -CLEANFILES += $(nodist_mda_text_module_SOURCES) -MOD_FILES += mda_text.mod -MARKER_FILES += mda_text.marker -CLEANFILES += mda_text.marker - -mda_text.marker: $(mda_text_module_SOURCES) $(nodist_mda_text_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mda_text_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_multiboot -platform_PROGRAMS += mda_text.module -MODULE_FILES += mda_text.module$(EXEEXT) -mda_text_module_SOURCES = term/i386/pc/mda_text.c ## platform sources -nodist_mda_text_module_SOURCES = ## platform nodist sources -mda_text_module_LDADD = -mda_text_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -mda_text_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -mda_text_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -mda_text_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -mda_text_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_mda_text_module_SOURCES) -CLEANFILES += $(nodist_mda_text_module_SOURCES) -MOD_FILES += mda_text.mod -MARKER_FILES += mda_text.marker -CLEANFILES += mda_text.marker - -mda_text.marker: $(mda_text_module_SOURCES) $(nodist_mda_text_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mda_text_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_pc -platform_PROGRAMS += video_cirrus.module -MODULE_FILES += video_cirrus.module$(EXEEXT) -video_cirrus_module_SOURCES = video/cirrus.c ## platform sources -nodist_video_cirrus_module_SOURCES = ## platform nodist sources -video_cirrus_module_LDADD = -video_cirrus_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -video_cirrus_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -video_cirrus_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -video_cirrus_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -video_cirrus_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_video_cirrus_module_SOURCES) -CLEANFILES += $(nodist_video_cirrus_module_SOURCES) -MOD_FILES += video_cirrus.mod -MARKER_FILES += video_cirrus.marker -CLEANFILES += video_cirrus.marker - -video_cirrus.marker: $(video_cirrus_module_SOURCES) $(nodist_video_cirrus_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(video_cirrus_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_efi -platform_PROGRAMS += video_cirrus.module -MODULE_FILES += video_cirrus.module$(EXEEXT) -video_cirrus_module_SOURCES = video/cirrus.c ## platform sources -nodist_video_cirrus_module_SOURCES = ## platform nodist sources -video_cirrus_module_LDADD = -video_cirrus_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -video_cirrus_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -video_cirrus_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -video_cirrus_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -video_cirrus_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_video_cirrus_module_SOURCES) -CLEANFILES += $(nodist_video_cirrus_module_SOURCES) -MOD_FILES += video_cirrus.mod -MARKER_FILES += video_cirrus.marker -CLEANFILES += video_cirrus.marker - -video_cirrus.marker: $(video_cirrus_module_SOURCES) $(nodist_video_cirrus_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(video_cirrus_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_qemu -platform_PROGRAMS += video_cirrus.module -MODULE_FILES += video_cirrus.module$(EXEEXT) -video_cirrus_module_SOURCES = video/cirrus.c ## platform sources -nodist_video_cirrus_module_SOURCES = ## platform nodist sources -video_cirrus_module_LDADD = -video_cirrus_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -video_cirrus_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -video_cirrus_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -video_cirrus_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -video_cirrus_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_video_cirrus_module_SOURCES) -CLEANFILES += $(nodist_video_cirrus_module_SOURCES) -MOD_FILES += video_cirrus.mod -MARKER_FILES += video_cirrus.marker -CLEANFILES += video_cirrus.marker - -video_cirrus.marker: $(video_cirrus_module_SOURCES) $(nodist_video_cirrus_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(video_cirrus_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_coreboot -platform_PROGRAMS += video_cirrus.module -MODULE_FILES += video_cirrus.module$(EXEEXT) -video_cirrus_module_SOURCES = video/cirrus.c ## platform sources -nodist_video_cirrus_module_SOURCES = ## platform nodist sources -video_cirrus_module_LDADD = -video_cirrus_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -video_cirrus_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -video_cirrus_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -video_cirrus_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -video_cirrus_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_video_cirrus_module_SOURCES) -CLEANFILES += $(nodist_video_cirrus_module_SOURCES) -MOD_FILES += video_cirrus.mod -MARKER_FILES += video_cirrus.marker -CLEANFILES += video_cirrus.marker - -video_cirrus.marker: $(video_cirrus_module_SOURCES) $(nodist_video_cirrus_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(video_cirrus_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_multiboot -platform_PROGRAMS += video_cirrus.module -MODULE_FILES += video_cirrus.module$(EXEEXT) -video_cirrus_module_SOURCES = video/cirrus.c ## platform sources -nodist_video_cirrus_module_SOURCES = ## platform nodist sources -video_cirrus_module_LDADD = -video_cirrus_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -video_cirrus_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -video_cirrus_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -video_cirrus_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -video_cirrus_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_video_cirrus_module_SOURCES) -CLEANFILES += $(nodist_video_cirrus_module_SOURCES) -MOD_FILES += video_cirrus.mod -MARKER_FILES += video_cirrus.marker -CLEANFILES += video_cirrus.marker - -video_cirrus.marker: $(video_cirrus_module_SOURCES) $(nodist_video_cirrus_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(video_cirrus_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_ieee1275 -platform_PROGRAMS += video_cirrus.module -MODULE_FILES += video_cirrus.module$(EXEEXT) -video_cirrus_module_SOURCES = video/cirrus.c ## platform sources -nodist_video_cirrus_module_SOURCES = ## platform nodist sources -video_cirrus_module_LDADD = -video_cirrus_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -video_cirrus_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -video_cirrus_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -video_cirrus_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -video_cirrus_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_video_cirrus_module_SOURCES) -CLEANFILES += $(nodist_video_cirrus_module_SOURCES) -MOD_FILES += video_cirrus.mod -MARKER_FILES += video_cirrus.marker -CLEANFILES += video_cirrus.marker - -video_cirrus.marker: $(video_cirrus_module_SOURCES) $(nodist_video_cirrus_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(video_cirrus_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_x86_64_efi -platform_PROGRAMS += video_cirrus.module -MODULE_FILES += video_cirrus.module$(EXEEXT) -video_cirrus_module_SOURCES = video/cirrus.c ## platform sources -nodist_video_cirrus_module_SOURCES = ## platform nodist sources -video_cirrus_module_LDADD = -video_cirrus_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -video_cirrus_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -video_cirrus_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -video_cirrus_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -video_cirrus_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_video_cirrus_module_SOURCES) -CLEANFILES += $(nodist_video_cirrus_module_SOURCES) -MOD_FILES += video_cirrus.mod -MARKER_FILES += video_cirrus.marker -CLEANFILES += video_cirrus.marker - -video_cirrus.marker: $(video_cirrus_module_SOURCES) $(nodist_video_cirrus_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(video_cirrus_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_pc -platform_PROGRAMS += video_bochs.module -MODULE_FILES += video_bochs.module$(EXEEXT) -video_bochs_module_SOURCES = video/bochs.c ## platform sources -nodist_video_bochs_module_SOURCES = ## platform nodist sources -video_bochs_module_LDADD = -video_bochs_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -video_bochs_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -video_bochs_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -video_bochs_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -video_bochs_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_video_bochs_module_SOURCES) -CLEANFILES += $(nodist_video_bochs_module_SOURCES) -MOD_FILES += video_bochs.mod -MARKER_FILES += video_bochs.marker -CLEANFILES += video_bochs.marker - -video_bochs.marker: $(video_bochs_module_SOURCES) $(nodist_video_bochs_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(video_bochs_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_efi -platform_PROGRAMS += video_bochs.module -MODULE_FILES += video_bochs.module$(EXEEXT) -video_bochs_module_SOURCES = video/bochs.c ## platform sources -nodist_video_bochs_module_SOURCES = ## platform nodist sources -video_bochs_module_LDADD = -video_bochs_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -video_bochs_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -video_bochs_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -video_bochs_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -video_bochs_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_video_bochs_module_SOURCES) -CLEANFILES += $(nodist_video_bochs_module_SOURCES) -MOD_FILES += video_bochs.mod -MARKER_FILES += video_bochs.marker -CLEANFILES += video_bochs.marker - -video_bochs.marker: $(video_bochs_module_SOURCES) $(nodist_video_bochs_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(video_bochs_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_qemu -platform_PROGRAMS += video_bochs.module -MODULE_FILES += video_bochs.module$(EXEEXT) -video_bochs_module_SOURCES = video/bochs.c ## platform sources -nodist_video_bochs_module_SOURCES = ## platform nodist sources -video_bochs_module_LDADD = -video_bochs_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -video_bochs_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -video_bochs_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -video_bochs_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -video_bochs_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_video_bochs_module_SOURCES) -CLEANFILES += $(nodist_video_bochs_module_SOURCES) -MOD_FILES += video_bochs.mod -MARKER_FILES += video_bochs.marker -CLEANFILES += video_bochs.marker - -video_bochs.marker: $(video_bochs_module_SOURCES) $(nodist_video_bochs_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(video_bochs_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_coreboot -platform_PROGRAMS += video_bochs.module -MODULE_FILES += video_bochs.module$(EXEEXT) -video_bochs_module_SOURCES = video/bochs.c ## platform sources -nodist_video_bochs_module_SOURCES = ## platform nodist sources -video_bochs_module_LDADD = -video_bochs_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -video_bochs_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -video_bochs_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -video_bochs_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -video_bochs_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_video_bochs_module_SOURCES) -CLEANFILES += $(nodist_video_bochs_module_SOURCES) -MOD_FILES += video_bochs.mod -MARKER_FILES += video_bochs.marker -CLEANFILES += video_bochs.marker - -video_bochs.marker: $(video_bochs_module_SOURCES) $(nodist_video_bochs_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(video_bochs_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_multiboot -platform_PROGRAMS += video_bochs.module -MODULE_FILES += video_bochs.module$(EXEEXT) -video_bochs_module_SOURCES = video/bochs.c ## platform sources -nodist_video_bochs_module_SOURCES = ## platform nodist sources -video_bochs_module_LDADD = -video_bochs_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -video_bochs_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -video_bochs_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -video_bochs_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -video_bochs_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_video_bochs_module_SOURCES) -CLEANFILES += $(nodist_video_bochs_module_SOURCES) -MOD_FILES += video_bochs.mod -MARKER_FILES += video_bochs.marker -CLEANFILES += video_bochs.marker - -video_bochs.marker: $(video_bochs_module_SOURCES) $(nodist_video_bochs_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(video_bochs_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_ieee1275 -platform_PROGRAMS += video_bochs.module -MODULE_FILES += video_bochs.module$(EXEEXT) -video_bochs_module_SOURCES = video/bochs.c ## platform sources -nodist_video_bochs_module_SOURCES = ## platform nodist sources -video_bochs_module_LDADD = -video_bochs_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -video_bochs_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -video_bochs_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -video_bochs_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -video_bochs_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_video_bochs_module_SOURCES) -CLEANFILES += $(nodist_video_bochs_module_SOURCES) -MOD_FILES += video_bochs.mod -MARKER_FILES += video_bochs.marker -CLEANFILES += video_bochs.marker - -video_bochs.marker: $(video_bochs_module_SOURCES) $(nodist_video_bochs_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(video_bochs_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_x86_64_efi -platform_PROGRAMS += video_bochs.module -MODULE_FILES += video_bochs.module$(EXEEXT) -video_bochs_module_SOURCES = video/bochs.c ## platform sources -nodist_video_bochs_module_SOURCES = ## platform nodist sources -video_bochs_module_LDADD = -video_bochs_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -video_bochs_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -video_bochs_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -video_bochs_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -video_bochs_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_video_bochs_module_SOURCES) -CLEANFILES += $(nodist_video_bochs_module_SOURCES) -MOD_FILES += video_bochs.mod -MARKER_FILES += video_bochs.marker -CLEANFILES += video_bochs.marker - -video_bochs.marker: $(video_bochs_module_SOURCES) $(nodist_video_bochs_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(video_bochs_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif -platform_PROGRAMS += functional_test.module -MODULE_FILES += functional_test.module$(EXEEXT) -functional_test_module_SOURCES = tests/lib/functional_test.c tests/lib/test.c tests/checksums.h tests/video_checksum.c tests/fake_input.c video/capture.c ## platform sources -nodist_functional_test_module_SOURCES = ## platform nodist sources -functional_test_module_LDADD = -functional_test_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -functional_test_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -functional_test_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -functional_test_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -functional_test_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_functional_test_module_SOURCES) -CLEANFILES += $(nodist_functional_test_module_SOURCES) -MOD_FILES += functional_test.mod -MARKER_FILES += functional_test.marker -CLEANFILES += functional_test.marker - -functional_test.marker: $(functional_test_module_SOURCES) $(nodist_functional_test_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(functional_test_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += exfctest.module -MODULE_FILES += exfctest.module$(EXEEXT) -exfctest_module_SOURCES = tests/example_functional_test.c ## platform sources -nodist_exfctest_module_SOURCES = ## platform nodist sources -exfctest_module_LDADD = -exfctest_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -exfctest_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -exfctest_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -exfctest_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -exfctest_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_exfctest_module_SOURCES) -CLEANFILES += $(nodist_exfctest_module_SOURCES) -MOD_FILES += exfctest.mod -MARKER_FILES += exfctest.marker -CLEANFILES += exfctest.marker - -exfctest.marker: $(exfctest_module_SOURCES) $(nodist_exfctest_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(exfctest_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += strtoull_test.module -MODULE_FILES += strtoull_test.module$(EXEEXT) -strtoull_test_module_SOURCES = tests/strtoull_test.c ## platform sources -nodist_strtoull_test_module_SOURCES = ## platform nodist sources -strtoull_test_module_LDADD = -strtoull_test_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -strtoull_test_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -strtoull_test_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -strtoull_test_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -strtoull_test_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_strtoull_test_module_SOURCES) -CLEANFILES += $(nodist_strtoull_test_module_SOURCES) -MOD_FILES += strtoull_test.mod -MARKER_FILES += strtoull_test.marker -CLEANFILES += strtoull_test.marker - -strtoull_test.marker: $(strtoull_test_module_SOURCES) $(nodist_strtoull_test_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(strtoull_test_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += setjmp_test.module -MODULE_FILES += setjmp_test.module$(EXEEXT) -setjmp_test_module_SOURCES = tests/setjmp_test.c ## platform sources -nodist_setjmp_test_module_SOURCES = ## platform nodist sources -setjmp_test_module_LDADD = -setjmp_test_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -setjmp_test_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -setjmp_test_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -setjmp_test_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -setjmp_test_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_setjmp_test_module_SOURCES) -CLEANFILES += $(nodist_setjmp_test_module_SOURCES) -MOD_FILES += setjmp_test.mod -MARKER_FILES += setjmp_test.marker -CLEANFILES += setjmp_test.marker - -setjmp_test.marker: $(setjmp_test_module_SOURCES) $(nodist_setjmp_test_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(setjmp_test_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += signature_test.module -MODULE_FILES += signature_test.module$(EXEEXT) -signature_test_module_SOURCES = tests/signature_test.c tests/signatures.h ## platform sources -nodist_signature_test_module_SOURCES = ## platform nodist sources -signature_test_module_LDADD = -signature_test_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -signature_test_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -signature_test_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -signature_test_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -signature_test_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_signature_test_module_SOURCES) -CLEANFILES += $(nodist_signature_test_module_SOURCES) -MOD_FILES += signature_test.mod -MARKER_FILES += signature_test.marker -CLEANFILES += signature_test.marker - -signature_test.marker: $(signature_test_module_SOURCES) $(nodist_signature_test_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(signature_test_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += sleep_test.module -MODULE_FILES += sleep_test.module$(EXEEXT) -sleep_test_module_SOURCES = tests/sleep_test.c ## platform sources -nodist_sleep_test_module_SOURCES = ## platform nodist sources -sleep_test_module_LDADD = -sleep_test_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -sleep_test_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -sleep_test_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -sleep_test_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -sleep_test_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_sleep_test_module_SOURCES) -CLEANFILES += $(nodist_sleep_test_module_SOURCES) -MOD_FILES += sleep_test.mod -MARKER_FILES += sleep_test.marker -CLEANFILES += sleep_test.marker - -sleep_test.marker: $(sleep_test_module_SOURCES) $(nodist_sleep_test_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(sleep_test_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += xnu_uuid_test.module -MODULE_FILES += xnu_uuid_test.module$(EXEEXT) -xnu_uuid_test_module_SOURCES = tests/xnu_uuid_test.c ## platform sources -nodist_xnu_uuid_test_module_SOURCES = ## platform nodist sources -xnu_uuid_test_module_LDADD = -xnu_uuid_test_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -xnu_uuid_test_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -xnu_uuid_test_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -xnu_uuid_test_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -xnu_uuid_test_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_xnu_uuid_test_module_SOURCES) -CLEANFILES += $(nodist_xnu_uuid_test_module_SOURCES) -MOD_FILES += xnu_uuid_test.mod -MARKER_FILES += xnu_uuid_test.marker -CLEANFILES += xnu_uuid_test.marker - -xnu_uuid_test.marker: $(xnu_uuid_test_module_SOURCES) $(nodist_xnu_uuid_test_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(xnu_uuid_test_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += pbkdf2_test.module -MODULE_FILES += pbkdf2_test.module$(EXEEXT) -pbkdf2_test_module_SOURCES = tests/pbkdf2_test.c ## platform sources -nodist_pbkdf2_test_module_SOURCES = ## platform nodist sources -pbkdf2_test_module_LDADD = -pbkdf2_test_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -pbkdf2_test_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -pbkdf2_test_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -pbkdf2_test_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -pbkdf2_test_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_pbkdf2_test_module_SOURCES) -CLEANFILES += $(nodist_pbkdf2_test_module_SOURCES) -MOD_FILES += pbkdf2_test.mod -MARKER_FILES += pbkdf2_test.marker -CLEANFILES += pbkdf2_test.marker - -pbkdf2_test.marker: $(pbkdf2_test_module_SOURCES) $(nodist_pbkdf2_test_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(pbkdf2_test_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -if COND_emu -platform_PROGRAMS += legacy_password_test.module -MODULE_FILES += legacy_password_test.module$(EXEEXT) -legacy_password_test_module_SOURCES = tests/legacy_password_test.c ## platform sources -nodist_legacy_password_test_module_SOURCES = ## platform nodist sources -legacy_password_test_module_LDADD = -legacy_password_test_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -legacy_password_test_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -legacy_password_test_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -legacy_password_test_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -legacy_password_test_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_legacy_password_test_module_SOURCES) -CLEANFILES += $(nodist_legacy_password_test_module_SOURCES) -MOD_FILES += legacy_password_test.mod -MARKER_FILES += legacy_password_test.marker -CLEANFILES += legacy_password_test.marker - -legacy_password_test.marker: $(legacy_password_test_module_SOURCES) $(nodist_legacy_password_test_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(legacy_password_test_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_pc -platform_PROGRAMS += legacy_password_test.module -MODULE_FILES += legacy_password_test.module$(EXEEXT) -legacy_password_test_module_SOURCES = tests/legacy_password_test.c ## platform sources -nodist_legacy_password_test_module_SOURCES = ## platform nodist sources -legacy_password_test_module_LDADD = -legacy_password_test_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -legacy_password_test_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -legacy_password_test_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -legacy_password_test_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -legacy_password_test_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_legacy_password_test_module_SOURCES) -CLEANFILES += $(nodist_legacy_password_test_module_SOURCES) -MOD_FILES += legacy_password_test.mod -MARKER_FILES += legacy_password_test.marker -CLEANFILES += legacy_password_test.marker - -legacy_password_test.marker: $(legacy_password_test_module_SOURCES) $(nodist_legacy_password_test_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(legacy_password_test_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_efi -platform_PROGRAMS += legacy_password_test.module -MODULE_FILES += legacy_password_test.module$(EXEEXT) -legacy_password_test_module_SOURCES = tests/legacy_password_test.c ## platform sources -nodist_legacy_password_test_module_SOURCES = ## platform nodist sources -legacy_password_test_module_LDADD = -legacy_password_test_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -legacy_password_test_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -legacy_password_test_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -legacy_password_test_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -legacy_password_test_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_legacy_password_test_module_SOURCES) -CLEANFILES += $(nodist_legacy_password_test_module_SOURCES) -MOD_FILES += legacy_password_test.mod -MARKER_FILES += legacy_password_test.marker -CLEANFILES += legacy_password_test.marker - -legacy_password_test.marker: $(legacy_password_test_module_SOURCES) $(nodist_legacy_password_test_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(legacy_password_test_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_x86_64_efi -platform_PROGRAMS += legacy_password_test.module -MODULE_FILES += legacy_password_test.module$(EXEEXT) -legacy_password_test_module_SOURCES = tests/legacy_password_test.c ## platform sources -nodist_legacy_password_test_module_SOURCES = ## platform nodist sources -legacy_password_test_module_LDADD = -legacy_password_test_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -legacy_password_test_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -legacy_password_test_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -legacy_password_test_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -legacy_password_test_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_legacy_password_test_module_SOURCES) -CLEANFILES += $(nodist_legacy_password_test_module_SOURCES) -MOD_FILES += legacy_password_test.mod -MARKER_FILES += legacy_password_test.marker -CLEANFILES += legacy_password_test.marker - -legacy_password_test.marker: $(legacy_password_test_module_SOURCES) $(nodist_legacy_password_test_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(legacy_password_test_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_xen -platform_PROGRAMS += legacy_password_test.module -MODULE_FILES += legacy_password_test.module$(EXEEXT) -legacy_password_test_module_SOURCES = tests/legacy_password_test.c ## platform sources -nodist_legacy_password_test_module_SOURCES = ## platform nodist sources -legacy_password_test_module_LDADD = -legacy_password_test_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -legacy_password_test_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -legacy_password_test_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -legacy_password_test_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -legacy_password_test_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_legacy_password_test_module_SOURCES) -CLEANFILES += $(nodist_legacy_password_test_module_SOURCES) -MOD_FILES += legacy_password_test.mod -MARKER_FILES += legacy_password_test.marker -CLEANFILES += legacy_password_test.marker - -legacy_password_test.marker: $(legacy_password_test_module_SOURCES) $(nodist_legacy_password_test_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(legacy_password_test_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_x86_64_xen -platform_PROGRAMS += legacy_password_test.module -MODULE_FILES += legacy_password_test.module$(EXEEXT) -legacy_password_test_module_SOURCES = tests/legacy_password_test.c ## platform sources -nodist_legacy_password_test_module_SOURCES = ## platform nodist sources -legacy_password_test_module_LDADD = -legacy_password_test_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -legacy_password_test_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -legacy_password_test_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -legacy_password_test_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -legacy_password_test_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_legacy_password_test_module_SOURCES) -CLEANFILES += $(nodist_legacy_password_test_module_SOURCES) -MOD_FILES += legacy_password_test.mod -MARKER_FILES += legacy_password_test.marker -CLEANFILES += legacy_password_test.marker - -legacy_password_test.marker: $(legacy_password_test_module_SOURCES) $(nodist_legacy_password_test_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(legacy_password_test_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_xen_pvh -platform_PROGRAMS += legacy_password_test.module -MODULE_FILES += legacy_password_test.module$(EXEEXT) -legacy_password_test_module_SOURCES = tests/legacy_password_test.c ## platform sources -nodist_legacy_password_test_module_SOURCES = ## platform nodist sources -legacy_password_test_module_LDADD = -legacy_password_test_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -legacy_password_test_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -legacy_password_test_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -legacy_password_test_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -legacy_password_test_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_legacy_password_test_module_SOURCES) -CLEANFILES += $(nodist_legacy_password_test_module_SOURCES) -MOD_FILES += legacy_password_test.mod -MARKER_FILES += legacy_password_test.marker -CLEANFILES += legacy_password_test.marker - -legacy_password_test.marker: $(legacy_password_test_module_SOURCES) $(nodist_legacy_password_test_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(legacy_password_test_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_emu -platform_PROGRAMS += div.module -MODULE_FILES += div.module$(EXEEXT) -div_module_SOURCES = lib/division.c ## platform sources -nodist_div_module_SOURCES = ## platform nodist sources -div_module_LDADD = -div_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -div_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -div_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -div_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -div_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_div_module_SOURCES) -CLEANFILES += $(nodist_div_module_SOURCES) -MOD_FILES += div.mod -MARKER_FILES += div.marker -CLEANFILES += div.marker - -div.marker: $(div_module_SOURCES) $(nodist_div_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(div_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_pc -platform_PROGRAMS += div.module -MODULE_FILES += div.module$(EXEEXT) -div_module_SOURCES = lib/division.c ## platform sources -nodist_div_module_SOURCES = ## platform nodist sources -div_module_LDADD = -div_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -div_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -div_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -div_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -div_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_div_module_SOURCES) -CLEANFILES += $(nodist_div_module_SOURCES) -MOD_FILES += div.mod -MARKER_FILES += div.marker -CLEANFILES += div.marker - -div.marker: $(div_module_SOURCES) $(nodist_div_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(div_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_efi -platform_PROGRAMS += div.module -MODULE_FILES += div.module$(EXEEXT) -div_module_SOURCES = lib/division.c ## platform sources -nodist_div_module_SOURCES = ## platform nodist sources -div_module_LDADD = -div_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -div_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -div_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -div_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -div_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_div_module_SOURCES) -CLEANFILES += $(nodist_div_module_SOURCES) -MOD_FILES += div.mod -MARKER_FILES += div.marker -CLEANFILES += div.marker - -div.marker: $(div_module_SOURCES) $(nodist_div_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(div_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_qemu -platform_PROGRAMS += div.module -MODULE_FILES += div.module$(EXEEXT) -div_module_SOURCES = lib/division.c ## platform sources -nodist_div_module_SOURCES = ## platform nodist sources -div_module_LDADD = -div_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -div_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -div_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -div_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -div_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_div_module_SOURCES) -CLEANFILES += $(nodist_div_module_SOURCES) -MOD_FILES += div.mod -MARKER_FILES += div.marker -CLEANFILES += div.marker - -div.marker: $(div_module_SOURCES) $(nodist_div_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(div_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_coreboot -platform_PROGRAMS += div.module -MODULE_FILES += div.module$(EXEEXT) -div_module_SOURCES = lib/division.c ## platform sources -nodist_div_module_SOURCES = ## platform nodist sources -div_module_LDADD = -div_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -div_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -div_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -div_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -div_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_div_module_SOURCES) -CLEANFILES += $(nodist_div_module_SOURCES) -MOD_FILES += div.mod -MARKER_FILES += div.marker -CLEANFILES += div.marker - -div.marker: $(div_module_SOURCES) $(nodist_div_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(div_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_multiboot -platform_PROGRAMS += div.module -MODULE_FILES += div.module$(EXEEXT) -div_module_SOURCES = lib/division.c ## platform sources -nodist_div_module_SOURCES = ## platform nodist sources -div_module_LDADD = -div_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -div_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -div_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -div_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -div_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_div_module_SOURCES) -CLEANFILES += $(nodist_div_module_SOURCES) -MOD_FILES += div.mod -MARKER_FILES += div.marker -CLEANFILES += div.marker - -div.marker: $(div_module_SOURCES) $(nodist_div_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(div_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_ieee1275 -platform_PROGRAMS += div.module -MODULE_FILES += div.module$(EXEEXT) -div_module_SOURCES = lib/division.c ## platform sources -nodist_div_module_SOURCES = ## platform nodist sources -div_module_LDADD = -div_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -div_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -div_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -div_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -div_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_div_module_SOURCES) -CLEANFILES += $(nodist_div_module_SOURCES) -MOD_FILES += div.mod -MARKER_FILES += div.marker -CLEANFILES += div.marker - -div.marker: $(div_module_SOURCES) $(nodist_div_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(div_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_x86_64_efi -platform_PROGRAMS += div.module -MODULE_FILES += div.module$(EXEEXT) -div_module_SOURCES = lib/division.c ## platform sources -nodist_div_module_SOURCES = ## platform nodist sources -div_module_LDADD = -div_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -div_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -div_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -div_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -div_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_div_module_SOURCES) -CLEANFILES += $(nodist_div_module_SOURCES) -MOD_FILES += div.mod -MARKER_FILES += div.marker -CLEANFILES += div.marker - -div.marker: $(div_module_SOURCES) $(nodist_div_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(div_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_xen -platform_PROGRAMS += div.module -MODULE_FILES += div.module$(EXEEXT) -div_module_SOURCES = lib/division.c ## platform sources -nodist_div_module_SOURCES = ## platform nodist sources -div_module_LDADD = -div_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -div_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -div_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -div_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -div_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_div_module_SOURCES) -CLEANFILES += $(nodist_div_module_SOURCES) -MOD_FILES += div.mod -MARKER_FILES += div.marker -CLEANFILES += div.marker - -div.marker: $(div_module_SOURCES) $(nodist_div_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(div_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_x86_64_xen -platform_PROGRAMS += div.module -MODULE_FILES += div.module$(EXEEXT) -div_module_SOURCES = lib/division.c ## platform sources -nodist_div_module_SOURCES = ## platform nodist sources -div_module_LDADD = -div_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -div_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -div_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -div_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -div_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_div_module_SOURCES) -CLEANFILES += $(nodist_div_module_SOURCES) -MOD_FILES += div.mod -MARKER_FILES += div.marker -CLEANFILES += div.marker - -div.marker: $(div_module_SOURCES) $(nodist_div_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(div_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_xen_pvh -platform_PROGRAMS += div.module -MODULE_FILES += div.module$(EXEEXT) -div_module_SOURCES = lib/division.c ## platform sources -nodist_div_module_SOURCES = ## platform nodist sources -div_module_LDADD = -div_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -div_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -div_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -div_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -div_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_div_module_SOURCES) -CLEANFILES += $(nodist_div_module_SOURCES) -MOD_FILES += div.mod -MARKER_FILES += div.marker -CLEANFILES += div.marker - -div.marker: $(div_module_SOURCES) $(nodist_div_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(div_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_mips_loongson -platform_PROGRAMS += div.module -MODULE_FILES += div.module$(EXEEXT) -div_module_SOURCES = lib/division.c ## platform sources -nodist_div_module_SOURCES = ## platform nodist sources -div_module_LDADD = -div_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -div_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -div_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -div_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -div_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_div_module_SOURCES) -CLEANFILES += $(nodist_div_module_SOURCES) -MOD_FILES += div.mod -MARKER_FILES += div.marker -CLEANFILES += div.marker - -div.marker: $(div_module_SOURCES) $(nodist_div_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(div_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_sparc64_ieee1275 -platform_PROGRAMS += div.module -MODULE_FILES += div.module$(EXEEXT) -div_module_SOURCES = lib/division.c ## platform sources -nodist_div_module_SOURCES = ## platform nodist sources -div_module_LDADD = -div_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -div_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -div_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -div_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -div_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_div_module_SOURCES) -CLEANFILES += $(nodist_div_module_SOURCES) -MOD_FILES += div.mod -MARKER_FILES += div.marker -CLEANFILES += div.marker - -div.marker: $(div_module_SOURCES) $(nodist_div_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(div_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_powerpc_ieee1275 -platform_PROGRAMS += div.module -MODULE_FILES += div.module$(EXEEXT) -div_module_SOURCES = lib/division.c ## platform sources -nodist_div_module_SOURCES = ## platform nodist sources -div_module_LDADD = -div_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -div_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -div_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -div_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -div_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_div_module_SOURCES) -CLEANFILES += $(nodist_div_module_SOURCES) -MOD_FILES += div.mod -MARKER_FILES += div.marker -CLEANFILES += div.marker - -div.marker: $(div_module_SOURCES) $(nodist_div_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(div_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_mips_arc -platform_PROGRAMS += div.module -MODULE_FILES += div.module$(EXEEXT) -div_module_SOURCES = lib/division.c ## platform sources -nodist_div_module_SOURCES = ## platform nodist sources -div_module_LDADD = -div_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -div_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -div_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -div_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -div_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_div_module_SOURCES) -CLEANFILES += $(nodist_div_module_SOURCES) -MOD_FILES += div.mod -MARKER_FILES += div.marker -CLEANFILES += div.marker - -div.marker: $(div_module_SOURCES) $(nodist_div_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(div_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_mips_qemu_mips -platform_PROGRAMS += div.module -MODULE_FILES += div.module$(EXEEXT) -div_module_SOURCES = lib/division.c ## platform sources -nodist_div_module_SOURCES = ## platform nodist sources -div_module_LDADD = -div_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -div_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -div_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -div_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -div_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_div_module_SOURCES) -CLEANFILES += $(nodist_div_module_SOURCES) -MOD_FILES += div.mod -MARKER_FILES += div.marker -CLEANFILES += div.marker - -div.marker: $(div_module_SOURCES) $(nodist_div_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(div_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_arm64_efi -platform_PROGRAMS += div.module -MODULE_FILES += div.module$(EXEEXT) -div_module_SOURCES = lib/division.c ## platform sources -nodist_div_module_SOURCES = ## platform nodist sources -div_module_LDADD = -div_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -div_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -div_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -div_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -div_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_div_module_SOURCES) -CLEANFILES += $(nodist_div_module_SOURCES) -MOD_FILES += div.mod -MARKER_FILES += div.marker -CLEANFILES += div.marker - -div.marker: $(div_module_SOURCES) $(nodist_div_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(div_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_riscv64_efi -platform_PROGRAMS += div.module -MODULE_FILES += div.module$(EXEEXT) -div_module_SOURCES = lib/division.c ## platform sources -nodist_div_module_SOURCES = ## platform nodist sources -div_module_LDADD = -div_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -div_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -div_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -div_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -div_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_div_module_SOURCES) -CLEANFILES += $(nodist_div_module_SOURCES) -MOD_FILES += div.mod -MARKER_FILES += div.marker -CLEANFILES += div.marker - -div.marker: $(div_module_SOURCES) $(nodist_div_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(div_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif -platform_PROGRAMS += div_test.module -MODULE_FILES += div_test.module$(EXEEXT) -div_test_module_SOURCES = tests/div_test.c ## platform sources -nodist_div_test_module_SOURCES = ## platform nodist sources -div_test_module_LDADD = -div_test_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -div_test_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -div_test_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -div_test_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -div_test_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_div_test_module_SOURCES) -CLEANFILES += $(nodist_div_test_module_SOURCES) -MOD_FILES += div_test.mod -MARKER_FILES += div_test.marker -CLEANFILES += div_test.marker - -div_test.marker: $(div_test_module_SOURCES) $(nodist_div_test_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(div_test_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += mul_test.module -MODULE_FILES += mul_test.module$(EXEEXT) -mul_test_module_SOURCES = tests/mul_test.c ## platform sources -nodist_mul_test_module_SOURCES = ## platform nodist sources -mul_test_module_LDADD = -mul_test_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -mul_test_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -mul_test_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -mul_test_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -mul_test_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_mul_test_module_SOURCES) -CLEANFILES += $(nodist_mul_test_module_SOURCES) -MOD_FILES += mul_test.mod -MARKER_FILES += mul_test.marker -CLEANFILES += mul_test.marker - -mul_test.marker: $(mul_test_module_SOURCES) $(nodist_mul_test_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mul_test_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += shift_test.module -MODULE_FILES += shift_test.module$(EXEEXT) -shift_test_module_SOURCES = tests/shift_test.c ## platform sources -nodist_shift_test_module_SOURCES = ## platform nodist sources -shift_test_module_LDADD = -shift_test_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -shift_test_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -shift_test_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -shift_test_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -shift_test_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_shift_test_module_SOURCES) -CLEANFILES += $(nodist_shift_test_module_SOURCES) -MOD_FILES += shift_test.mod -MARKER_FILES += shift_test.marker -CLEANFILES += shift_test.marker - -shift_test.marker: $(shift_test_module_SOURCES) $(nodist_shift_test_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(shift_test_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += cmp_test.module -MODULE_FILES += cmp_test.module$(EXEEXT) -cmp_test_module_SOURCES = tests/cmp_test.c ## platform sources -nodist_cmp_test_module_SOURCES = ## platform nodist sources -cmp_test_module_LDADD = -cmp_test_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -cmp_test_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -cmp_test_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -cmp_test_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -cmp_test_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_cmp_test_module_SOURCES) -CLEANFILES += $(nodist_cmp_test_module_SOURCES) -MOD_FILES += cmp_test.mod -MARKER_FILES += cmp_test.marker -CLEANFILES += cmp_test.marker - -cmp_test.marker: $(cmp_test_module_SOURCES) $(nodist_cmp_test_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cmp_test_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += ctz_test.module -MODULE_FILES += ctz_test.module$(EXEEXT) -ctz_test_module_SOURCES = tests/ctz_test.c ## platform sources -nodist_ctz_test_module_SOURCES = ## platform nodist sources -ctz_test_module_LDADD = -ctz_test_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -ctz_test_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -ctz_test_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -ctz_test_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -ctz_test_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_ctz_test_module_SOURCES) -CLEANFILES += $(nodist_ctz_test_module_SOURCES) -MOD_FILES += ctz_test.mod -MARKER_FILES += ctz_test.marker -CLEANFILES += ctz_test.marker - -ctz_test.marker: $(ctz_test_module_SOURCES) $(nodist_ctz_test_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ctz_test_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += bswap_test.module -MODULE_FILES += bswap_test.module$(EXEEXT) -bswap_test_module_SOURCES = tests/bswap_test.c ## platform sources -nodist_bswap_test_module_SOURCES = ## platform nodist sources -bswap_test_module_LDADD = -bswap_test_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -bswap_test_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -bswap_test_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -bswap_test_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -bswap_test_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_bswap_test_module_SOURCES) -CLEANFILES += $(nodist_bswap_test_module_SOURCES) -MOD_FILES += bswap_test.mod -MARKER_FILES += bswap_test.marker -CLEANFILES += bswap_test.marker - -bswap_test.marker: $(bswap_test_module_SOURCES) $(nodist_bswap_test_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(bswap_test_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += videotest_checksum.module -MODULE_FILES += videotest_checksum.module$(EXEEXT) -videotest_checksum_module_SOURCES = tests/videotest_checksum.c ## platform sources -nodist_videotest_checksum_module_SOURCES = ## platform nodist sources -videotest_checksum_module_LDADD = -videotest_checksum_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -videotest_checksum_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -videotest_checksum_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -videotest_checksum_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -videotest_checksum_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_videotest_checksum_module_SOURCES) -CLEANFILES += $(nodist_videotest_checksum_module_SOURCES) -MOD_FILES += videotest_checksum.mod -MARKER_FILES += videotest_checksum.marker -CLEANFILES += videotest_checksum.marker - -videotest_checksum.marker: $(videotest_checksum_module_SOURCES) $(nodist_videotest_checksum_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(videotest_checksum_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += gfxterm_menu.module -MODULE_FILES += gfxterm_menu.module$(EXEEXT) -gfxterm_menu_module_SOURCES = tests/gfxterm_menu.c ## platform sources -nodist_gfxterm_menu_module_SOURCES = ## platform nodist sources -gfxterm_menu_module_LDADD = -gfxterm_menu_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -gfxterm_menu_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -gfxterm_menu_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -gfxterm_menu_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -gfxterm_menu_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_gfxterm_menu_module_SOURCES) -CLEANFILES += $(nodist_gfxterm_menu_module_SOURCES) -MOD_FILES += gfxterm_menu.mod -MARKER_FILES += gfxterm_menu.marker -CLEANFILES += gfxterm_menu.marker - -gfxterm_menu.marker: $(gfxterm_menu_module_SOURCES) $(nodist_gfxterm_menu_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gfxterm_menu_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += cmdline_cat_test.module -MODULE_FILES += cmdline_cat_test.module$(EXEEXT) -cmdline_cat_test_module_SOURCES = tests/cmdline_cat_test.c ## platform sources -nodist_cmdline_cat_test_module_SOURCES = ## platform nodist sources -cmdline_cat_test_module_LDADD = -cmdline_cat_test_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -cmdline_cat_test_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -cmdline_cat_test_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -cmdline_cat_test_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -cmdline_cat_test_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_cmdline_cat_test_module_SOURCES) -CLEANFILES += $(nodist_cmdline_cat_test_module_SOURCES) -MOD_FILES += cmdline_cat_test.mod -MARKER_FILES += cmdline_cat_test.marker -CLEANFILES += cmdline_cat_test.marker - -cmdline_cat_test.marker: $(cmdline_cat_test_module_SOURCES) $(nodist_cmdline_cat_test_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cmdline_cat_test_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += bitmap.module -MODULE_FILES += bitmap.module$(EXEEXT) -bitmap_module_SOURCES = video/bitmap.c ## platform sources -nodist_bitmap_module_SOURCES = ## platform nodist sources -bitmap_module_LDADD = -bitmap_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -bitmap_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -bitmap_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -bitmap_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -bitmap_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_bitmap_module_SOURCES) -CLEANFILES += $(nodist_bitmap_module_SOURCES) -MOD_FILES += bitmap.mod -MARKER_FILES += bitmap.marker -CLEANFILES += bitmap.marker - -bitmap.marker: $(bitmap_module_SOURCES) $(nodist_bitmap_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(bitmap_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += bitmap_scale.module -MODULE_FILES += bitmap_scale.module$(EXEEXT) -bitmap_scale_module_SOURCES = video/bitmap_scale.c ## platform sources -nodist_bitmap_scale_module_SOURCES = ## platform nodist sources -bitmap_scale_module_LDADD = -bitmap_scale_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -bitmap_scale_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -bitmap_scale_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -bitmap_scale_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -bitmap_scale_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_bitmap_scale_module_SOURCES) -CLEANFILES += $(nodist_bitmap_scale_module_SOURCES) -MOD_FILES += bitmap_scale.mod -MARKER_FILES += bitmap_scale.marker -CLEANFILES += bitmap_scale.marker - -bitmap_scale.marker: $(bitmap_scale_module_SOURCES) $(nodist_bitmap_scale_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(bitmap_scale_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -if COND_i386_efi -platform_PROGRAMS += efi_gop.module -MODULE_FILES += efi_gop.module$(EXEEXT) -efi_gop_module_SOURCES = video/efi_gop.c ## platform sources -nodist_efi_gop_module_SOURCES = ## platform nodist sources -efi_gop_module_LDADD = -efi_gop_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -efi_gop_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -efi_gop_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -efi_gop_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -efi_gop_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_efi_gop_module_SOURCES) -CLEANFILES += $(nodist_efi_gop_module_SOURCES) -MOD_FILES += efi_gop.mod -MARKER_FILES += efi_gop.marker -CLEANFILES += efi_gop.marker - -efi_gop.marker: $(efi_gop_module_SOURCES) $(nodist_efi_gop_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(efi_gop_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_x86_64_efi -platform_PROGRAMS += efi_gop.module -MODULE_FILES += efi_gop.module$(EXEEXT) -efi_gop_module_SOURCES = video/efi_gop.c ## platform sources -nodist_efi_gop_module_SOURCES = ## platform nodist sources -efi_gop_module_LDADD = -efi_gop_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -efi_gop_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -efi_gop_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -efi_gop_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -efi_gop_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_efi_gop_module_SOURCES) -CLEANFILES += $(nodist_efi_gop_module_SOURCES) -MOD_FILES += efi_gop.mod -MARKER_FILES += efi_gop.marker -CLEANFILES += efi_gop.marker - -efi_gop.marker: $(efi_gop_module_SOURCES) $(nodist_efi_gop_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(efi_gop_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_ia64_efi -platform_PROGRAMS += efi_gop.module -MODULE_FILES += efi_gop.module$(EXEEXT) -efi_gop_module_SOURCES = video/efi_gop.c ## platform sources -nodist_efi_gop_module_SOURCES = ## platform nodist sources -efi_gop_module_LDADD = -efi_gop_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -efi_gop_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -efi_gop_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -efi_gop_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -efi_gop_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_efi_gop_module_SOURCES) -CLEANFILES += $(nodist_efi_gop_module_SOURCES) -MOD_FILES += efi_gop.mod -MARKER_FILES += efi_gop.marker -CLEANFILES += efi_gop.marker - -efi_gop.marker: $(efi_gop_module_SOURCES) $(nodist_efi_gop_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(efi_gop_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_arm_efi -platform_PROGRAMS += efi_gop.module -MODULE_FILES += efi_gop.module$(EXEEXT) -efi_gop_module_SOURCES = video/efi_gop.c ## platform sources -nodist_efi_gop_module_SOURCES = ## platform nodist sources -efi_gop_module_LDADD = -efi_gop_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -efi_gop_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -efi_gop_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -efi_gop_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -efi_gop_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_efi_gop_module_SOURCES) -CLEANFILES += $(nodist_efi_gop_module_SOURCES) -MOD_FILES += efi_gop.mod -MARKER_FILES += efi_gop.marker -CLEANFILES += efi_gop.marker - -efi_gop.marker: $(efi_gop_module_SOURCES) $(nodist_efi_gop_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(efi_gop_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_arm64_efi -platform_PROGRAMS += efi_gop.module -MODULE_FILES += efi_gop.module$(EXEEXT) -efi_gop_module_SOURCES = video/efi_gop.c ## platform sources -nodist_efi_gop_module_SOURCES = ## platform nodist sources -efi_gop_module_LDADD = -efi_gop_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -efi_gop_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -efi_gop_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -efi_gop_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -efi_gop_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_efi_gop_module_SOURCES) -CLEANFILES += $(nodist_efi_gop_module_SOURCES) -MOD_FILES += efi_gop.mod -MARKER_FILES += efi_gop.marker -CLEANFILES += efi_gop.marker - -efi_gop.marker: $(efi_gop_module_SOURCES) $(nodist_efi_gop_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(efi_gop_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_riscv32_efi -platform_PROGRAMS += efi_gop.module -MODULE_FILES += efi_gop.module$(EXEEXT) -efi_gop_module_SOURCES = video/efi_gop.c ## platform sources -nodist_efi_gop_module_SOURCES = ## platform nodist sources -efi_gop_module_LDADD = -efi_gop_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -efi_gop_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -efi_gop_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -efi_gop_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -efi_gop_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_efi_gop_module_SOURCES) -CLEANFILES += $(nodist_efi_gop_module_SOURCES) -MOD_FILES += efi_gop.mod -MARKER_FILES += efi_gop.marker -CLEANFILES += efi_gop.marker - -efi_gop.marker: $(efi_gop_module_SOURCES) $(nodist_efi_gop_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(efi_gop_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_riscv64_efi -platform_PROGRAMS += efi_gop.module -MODULE_FILES += efi_gop.module$(EXEEXT) -efi_gop_module_SOURCES = video/efi_gop.c ## platform sources -nodist_efi_gop_module_SOURCES = ## platform nodist sources -efi_gop_module_LDADD = -efi_gop_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -efi_gop_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -efi_gop_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -efi_gop_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -efi_gop_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_efi_gop_module_SOURCES) -CLEANFILES += $(nodist_efi_gop_module_SOURCES) -MOD_FILES += efi_gop.mod -MARKER_FILES += efi_gop.marker -CLEANFILES += efi_gop.marker - -efi_gop.marker: $(efi_gop_module_SOURCES) $(nodist_efi_gop_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(efi_gop_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_efi -platform_PROGRAMS += efi_uga.module -MODULE_FILES += efi_uga.module$(EXEEXT) -efi_uga_module_SOURCES = video/efi_uga.c ## platform sources -nodist_efi_uga_module_SOURCES = ## platform nodist sources -efi_uga_module_LDADD = -efi_uga_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -efi_uga_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -efi_uga_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -efi_uga_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -efi_uga_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_efi_uga_module_SOURCES) -CLEANFILES += $(nodist_efi_uga_module_SOURCES) -MOD_FILES += efi_uga.mod -MARKER_FILES += efi_uga.marker -CLEANFILES += efi_uga.marker - -efi_uga.marker: $(efi_uga_module_SOURCES) $(nodist_efi_uga_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(efi_uga_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_x86_64_efi -platform_PROGRAMS += efi_uga.module -MODULE_FILES += efi_uga.module$(EXEEXT) -efi_uga_module_SOURCES = video/efi_uga.c ## platform sources -nodist_efi_uga_module_SOURCES = ## platform nodist sources -efi_uga_module_LDADD = -efi_uga_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -efi_uga_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -efi_uga_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -efi_uga_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -efi_uga_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_efi_uga_module_SOURCES) -CLEANFILES += $(nodist_efi_uga_module_SOURCES) -MOD_FILES += efi_uga.mod -MARKER_FILES += efi_uga.marker -CLEANFILES += efi_uga.marker - -efi_uga.marker: $(efi_uga_module_SOURCES) $(nodist_efi_uga_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(efi_uga_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif -platform_PROGRAMS += jpeg.module -MODULE_FILES += jpeg.module$(EXEEXT) -jpeg_module_SOURCES = video/readers/jpeg.c ## platform sources -nodist_jpeg_module_SOURCES = ## platform nodist sources -jpeg_module_LDADD = -jpeg_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -jpeg_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -jpeg_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -jpeg_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -jpeg_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_jpeg_module_SOURCES) -CLEANFILES += $(nodist_jpeg_module_SOURCES) -MOD_FILES += jpeg.mod -MARKER_FILES += jpeg.marker -CLEANFILES += jpeg.marker - -jpeg.marker: $(jpeg_module_SOURCES) $(nodist_jpeg_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(jpeg_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += png.module -MODULE_FILES += png.module$(EXEEXT) -png_module_SOURCES = video/readers/png.c ## platform sources -nodist_png_module_SOURCES = ## platform nodist sources -png_module_LDADD = -png_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -png_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -png_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -png_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -png_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_png_module_SOURCES) -CLEANFILES += $(nodist_png_module_SOURCES) -MOD_FILES += png.mod -MARKER_FILES += png.marker -CLEANFILES += png.marker - -png.marker: $(png_module_SOURCES) $(nodist_png_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(png_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += tga.module -MODULE_FILES += tga.module$(EXEEXT) -tga_module_SOURCES = video/readers/tga.c ## platform sources -nodist_tga_module_SOURCES = ## platform nodist sources -tga_module_LDADD = -tga_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -tga_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -tga_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -tga_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -tga_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_tga_module_SOURCES) -CLEANFILES += $(nodist_tga_module_SOURCES) -MOD_FILES += tga.mod -MARKER_FILES += tga.marker -CLEANFILES += tga.marker - -tga.marker: $(tga_module_SOURCES) $(nodist_tga_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(tga_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -if COND_i386_pc -platform_PROGRAMS += vbe.module -MODULE_FILES += vbe.module$(EXEEXT) -vbe_module_SOURCES = video/i386/pc/vbe.c ## platform sources -nodist_vbe_module_SOURCES = ## platform nodist sources -vbe_module_LDADD = -vbe_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -vbe_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -vbe_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -vbe_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -vbe_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_vbe_module_SOURCES) -CLEANFILES += $(nodist_vbe_module_SOURCES) -MOD_FILES += vbe.mod -MARKER_FILES += vbe.marker -CLEANFILES += vbe.marker - -vbe.marker: $(vbe_module_SOURCES) $(nodist_vbe_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(vbe_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_emu -platform_PROGRAMS += video_fb.module -MODULE_FILES += video_fb.module$(EXEEXT) -video_fb_module_SOURCES = video/fb/video_fb.c video/fb/fbblit.c video/fb/fbfill.c video/fb/fbutil.c ## platform sources -nodist_video_fb_module_SOURCES = ## platform nodist sources -video_fb_module_LDADD = -video_fb_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -video_fb_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -video_fb_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -video_fb_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -video_fb_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_video_fb_module_SOURCES) -CLEANFILES += $(nodist_video_fb_module_SOURCES) -MOD_FILES += video_fb.mod -MARKER_FILES += video_fb.marker -CLEANFILES += video_fb.marker - -video_fb.marker: $(video_fb_module_SOURCES) $(nodist_video_fb_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(video_fb_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_pc -platform_PROGRAMS += video_fb.module -MODULE_FILES += video_fb.module$(EXEEXT) -video_fb_module_SOURCES = video/fb/video_fb.c video/fb/fbblit.c video/fb/fbfill.c video/fb/fbutil.c ## platform sources -nodist_video_fb_module_SOURCES = ## platform nodist sources -video_fb_module_LDADD = -video_fb_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -video_fb_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -video_fb_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -video_fb_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -video_fb_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_video_fb_module_SOURCES) -CLEANFILES += $(nodist_video_fb_module_SOURCES) -MOD_FILES += video_fb.mod -MARKER_FILES += video_fb.marker -CLEANFILES += video_fb.marker - -video_fb.marker: $(video_fb_module_SOURCES) $(nodist_video_fb_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(video_fb_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_efi -platform_PROGRAMS += video_fb.module -MODULE_FILES += video_fb.module$(EXEEXT) -video_fb_module_SOURCES = video/fb/video_fb.c video/fb/fbblit.c video/fb/fbfill.c video/fb/fbutil.c ## platform sources -nodist_video_fb_module_SOURCES = ## platform nodist sources -video_fb_module_LDADD = -video_fb_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -video_fb_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -video_fb_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -video_fb_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -video_fb_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_video_fb_module_SOURCES) -CLEANFILES += $(nodist_video_fb_module_SOURCES) -MOD_FILES += video_fb.mod -MARKER_FILES += video_fb.marker -CLEANFILES += video_fb.marker - -video_fb.marker: $(video_fb_module_SOURCES) $(nodist_video_fb_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(video_fb_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_qemu -platform_PROGRAMS += video_fb.module -MODULE_FILES += video_fb.module$(EXEEXT) -video_fb_module_SOURCES = video/fb/video_fb.c video/fb/fbblit.c video/fb/fbfill.c video/fb/fbutil.c ## platform sources -nodist_video_fb_module_SOURCES = ## platform nodist sources -video_fb_module_LDADD = -video_fb_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -video_fb_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -video_fb_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -video_fb_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -video_fb_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_video_fb_module_SOURCES) -CLEANFILES += $(nodist_video_fb_module_SOURCES) -MOD_FILES += video_fb.mod -MARKER_FILES += video_fb.marker -CLEANFILES += video_fb.marker - -video_fb.marker: $(video_fb_module_SOURCES) $(nodist_video_fb_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(video_fb_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_multiboot -platform_PROGRAMS += video_fb.module -MODULE_FILES += video_fb.module$(EXEEXT) -video_fb_module_SOURCES = video/fb/video_fb.c video/fb/fbblit.c video/fb/fbfill.c video/fb/fbutil.c ## platform sources -nodist_video_fb_module_SOURCES = ## platform nodist sources -video_fb_module_LDADD = -video_fb_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -video_fb_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -video_fb_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -video_fb_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -video_fb_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_video_fb_module_SOURCES) -CLEANFILES += $(nodist_video_fb_module_SOURCES) -MOD_FILES += video_fb.mod -MARKER_FILES += video_fb.marker -CLEANFILES += video_fb.marker - -video_fb.marker: $(video_fb_module_SOURCES) $(nodist_video_fb_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(video_fb_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_ieee1275 -platform_PROGRAMS += video_fb.module -MODULE_FILES += video_fb.module$(EXEEXT) -video_fb_module_SOURCES = video/fb/video_fb.c video/fb/fbblit.c video/fb/fbfill.c video/fb/fbutil.c ## platform sources -nodist_video_fb_module_SOURCES = ## platform nodist sources -video_fb_module_LDADD = -video_fb_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -video_fb_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -video_fb_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -video_fb_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -video_fb_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_video_fb_module_SOURCES) -CLEANFILES += $(nodist_video_fb_module_SOURCES) -MOD_FILES += video_fb.mod -MARKER_FILES += video_fb.marker -CLEANFILES += video_fb.marker - -video_fb.marker: $(video_fb_module_SOURCES) $(nodist_video_fb_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(video_fb_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_x86_64_efi -platform_PROGRAMS += video_fb.module -MODULE_FILES += video_fb.module$(EXEEXT) -video_fb_module_SOURCES = video/fb/video_fb.c video/fb/fbblit.c video/fb/fbfill.c video/fb/fbutil.c ## platform sources -nodist_video_fb_module_SOURCES = ## platform nodist sources -video_fb_module_LDADD = -video_fb_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -video_fb_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -video_fb_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -video_fb_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -video_fb_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_video_fb_module_SOURCES) -CLEANFILES += $(nodist_video_fb_module_SOURCES) -MOD_FILES += video_fb.mod -MARKER_FILES += video_fb.marker -CLEANFILES += video_fb.marker - -video_fb.marker: $(video_fb_module_SOURCES) $(nodist_video_fb_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(video_fb_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_xen -platform_PROGRAMS += video_fb.module -MODULE_FILES += video_fb.module$(EXEEXT) -video_fb_module_SOURCES = video/fb/video_fb.c video/fb/fbblit.c video/fb/fbfill.c video/fb/fbutil.c ## platform sources -nodist_video_fb_module_SOURCES = ## platform nodist sources -video_fb_module_LDADD = -video_fb_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -video_fb_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -video_fb_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -video_fb_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -video_fb_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_video_fb_module_SOURCES) -CLEANFILES += $(nodist_video_fb_module_SOURCES) -MOD_FILES += video_fb.mod -MARKER_FILES += video_fb.marker -CLEANFILES += video_fb.marker - -video_fb.marker: $(video_fb_module_SOURCES) $(nodist_video_fb_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(video_fb_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_x86_64_xen -platform_PROGRAMS += video_fb.module -MODULE_FILES += video_fb.module$(EXEEXT) -video_fb_module_SOURCES = video/fb/video_fb.c video/fb/fbblit.c video/fb/fbfill.c video/fb/fbutil.c ## platform sources -nodist_video_fb_module_SOURCES = ## platform nodist sources -video_fb_module_LDADD = -video_fb_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -video_fb_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -video_fb_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -video_fb_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -video_fb_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_video_fb_module_SOURCES) -CLEANFILES += $(nodist_video_fb_module_SOURCES) -MOD_FILES += video_fb.mod -MARKER_FILES += video_fb.marker -CLEANFILES += video_fb.marker - -video_fb.marker: $(video_fb_module_SOURCES) $(nodist_video_fb_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(video_fb_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_xen_pvh -platform_PROGRAMS += video_fb.module -MODULE_FILES += video_fb.module$(EXEEXT) -video_fb_module_SOURCES = video/fb/video_fb.c video/fb/fbblit.c video/fb/fbfill.c video/fb/fbutil.c ## platform sources -nodist_video_fb_module_SOURCES = ## platform nodist sources -video_fb_module_LDADD = -video_fb_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -video_fb_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -video_fb_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -video_fb_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -video_fb_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_video_fb_module_SOURCES) -CLEANFILES += $(nodist_video_fb_module_SOURCES) -MOD_FILES += video_fb.mod -MARKER_FILES += video_fb.marker -CLEANFILES += video_fb.marker - -video_fb.marker: $(video_fb_module_SOURCES) $(nodist_video_fb_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(video_fb_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_sparc64_ieee1275 -platform_PROGRAMS += video_fb.module -MODULE_FILES += video_fb.module$(EXEEXT) -video_fb_module_SOURCES = video/fb/video_fb.c video/fb/fbblit.c video/fb/fbfill.c video/fb/fbutil.c ## platform sources -nodist_video_fb_module_SOURCES = ## platform nodist sources -video_fb_module_LDADD = -video_fb_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -video_fb_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -video_fb_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -video_fb_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -video_fb_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_video_fb_module_SOURCES) -CLEANFILES += $(nodist_video_fb_module_SOURCES) -MOD_FILES += video_fb.mod -MARKER_FILES += video_fb.marker -CLEANFILES += video_fb.marker - -video_fb.marker: $(video_fb_module_SOURCES) $(nodist_video_fb_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(video_fb_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_powerpc_ieee1275 -platform_PROGRAMS += video_fb.module -MODULE_FILES += video_fb.module$(EXEEXT) -video_fb_module_SOURCES = video/fb/video_fb.c video/fb/fbblit.c video/fb/fbfill.c video/fb/fbutil.c ## platform sources -nodist_video_fb_module_SOURCES = ## platform nodist sources -video_fb_module_LDADD = -video_fb_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -video_fb_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -video_fb_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -video_fb_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -video_fb_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_video_fb_module_SOURCES) -CLEANFILES += $(nodist_video_fb_module_SOURCES) -MOD_FILES += video_fb.mod -MARKER_FILES += video_fb.marker -CLEANFILES += video_fb.marker - -video_fb.marker: $(video_fb_module_SOURCES) $(nodist_video_fb_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(video_fb_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_mips_arc -platform_PROGRAMS += video_fb.module -MODULE_FILES += video_fb.module$(EXEEXT) -video_fb_module_SOURCES = video/fb/video_fb.c video/fb/fbblit.c video/fb/fbfill.c video/fb/fbutil.c ## platform sources -nodist_video_fb_module_SOURCES = ## platform nodist sources -video_fb_module_LDADD = -video_fb_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -video_fb_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -video_fb_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -video_fb_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -video_fb_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_video_fb_module_SOURCES) -CLEANFILES += $(nodist_video_fb_module_SOURCES) -MOD_FILES += video_fb.mod -MARKER_FILES += video_fb.marker -CLEANFILES += video_fb.marker - -video_fb.marker: $(video_fb_module_SOURCES) $(nodist_video_fb_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(video_fb_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_ia64_efi -platform_PROGRAMS += video_fb.module -MODULE_FILES += video_fb.module$(EXEEXT) -video_fb_module_SOURCES = video/fb/video_fb.c video/fb/fbblit.c video/fb/fbfill.c video/fb/fbutil.c ## platform sources -nodist_video_fb_module_SOURCES = ## platform nodist sources -video_fb_module_LDADD = -video_fb_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -video_fb_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -video_fb_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -video_fb_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -video_fb_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_video_fb_module_SOURCES) -CLEANFILES += $(nodist_video_fb_module_SOURCES) -MOD_FILES += video_fb.mod -MARKER_FILES += video_fb.marker -CLEANFILES += video_fb.marker - -video_fb.marker: $(video_fb_module_SOURCES) $(nodist_video_fb_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(video_fb_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_mips_qemu_mips -platform_PROGRAMS += video_fb.module -MODULE_FILES += video_fb.module$(EXEEXT) -video_fb_module_SOURCES = video/fb/video_fb.c video/fb/fbblit.c video/fb/fbfill.c video/fb/fbutil.c ## platform sources -nodist_video_fb_module_SOURCES = ## platform nodist sources -video_fb_module_LDADD = -video_fb_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -video_fb_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -video_fb_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -video_fb_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -video_fb_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_video_fb_module_SOURCES) -CLEANFILES += $(nodist_video_fb_module_SOURCES) -MOD_FILES += video_fb.mod -MARKER_FILES += video_fb.marker -CLEANFILES += video_fb.marker - -video_fb.marker: $(video_fb_module_SOURCES) $(nodist_video_fb_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(video_fb_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_arm_uboot -platform_PROGRAMS += video_fb.module -MODULE_FILES += video_fb.module$(EXEEXT) -video_fb_module_SOURCES = video/fb/video_fb.c video/fb/fbblit.c video/fb/fbfill.c video/fb/fbutil.c ## platform sources -nodist_video_fb_module_SOURCES = ## platform nodist sources -video_fb_module_LDADD = -video_fb_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -video_fb_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -video_fb_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -video_fb_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -video_fb_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_video_fb_module_SOURCES) -CLEANFILES += $(nodist_video_fb_module_SOURCES) -MOD_FILES += video_fb.mod -MARKER_FILES += video_fb.marker -CLEANFILES += video_fb.marker - -video_fb.marker: $(video_fb_module_SOURCES) $(nodist_video_fb_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(video_fb_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_arm_efi -platform_PROGRAMS += video_fb.module -MODULE_FILES += video_fb.module$(EXEEXT) -video_fb_module_SOURCES = video/fb/video_fb.c video/fb/fbblit.c video/fb/fbfill.c video/fb/fbutil.c ## platform sources -nodist_video_fb_module_SOURCES = ## platform nodist sources -video_fb_module_LDADD = -video_fb_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -video_fb_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -video_fb_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -video_fb_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -video_fb_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_video_fb_module_SOURCES) -CLEANFILES += $(nodist_video_fb_module_SOURCES) -MOD_FILES += video_fb.mod -MARKER_FILES += video_fb.marker -CLEANFILES += video_fb.marker - -video_fb.marker: $(video_fb_module_SOURCES) $(nodist_video_fb_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(video_fb_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_arm64_efi -platform_PROGRAMS += video_fb.module -MODULE_FILES += video_fb.module$(EXEEXT) -video_fb_module_SOURCES = video/fb/video_fb.c video/fb/fbblit.c video/fb/fbfill.c video/fb/fbutil.c ## platform sources -nodist_video_fb_module_SOURCES = ## platform nodist sources -video_fb_module_LDADD = -video_fb_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -video_fb_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -video_fb_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -video_fb_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -video_fb_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_video_fb_module_SOURCES) -CLEANFILES += $(nodist_video_fb_module_SOURCES) -MOD_FILES += video_fb.mod -MARKER_FILES += video_fb.marker -CLEANFILES += video_fb.marker - -video_fb.marker: $(video_fb_module_SOURCES) $(nodist_video_fb_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(video_fb_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_riscv32_efi -platform_PROGRAMS += video_fb.module -MODULE_FILES += video_fb.module$(EXEEXT) -video_fb_module_SOURCES = video/fb/video_fb.c video/fb/fbblit.c video/fb/fbfill.c video/fb/fbutil.c ## platform sources -nodist_video_fb_module_SOURCES = ## platform nodist sources -video_fb_module_LDADD = -video_fb_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -video_fb_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -video_fb_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -video_fb_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -video_fb_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_video_fb_module_SOURCES) -CLEANFILES += $(nodist_video_fb_module_SOURCES) -MOD_FILES += video_fb.mod -MARKER_FILES += video_fb.marker -CLEANFILES += video_fb.marker - -video_fb.marker: $(video_fb_module_SOURCES) $(nodist_video_fb_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(video_fb_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_riscv64_efi -platform_PROGRAMS += video_fb.module -MODULE_FILES += video_fb.module$(EXEEXT) -video_fb_module_SOURCES = video/fb/video_fb.c video/fb/fbblit.c video/fb/fbfill.c video/fb/fbutil.c ## platform sources -nodist_video_fb_module_SOURCES = ## platform nodist sources -video_fb_module_LDADD = -video_fb_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -video_fb_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -video_fb_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -video_fb_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -video_fb_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_video_fb_module_SOURCES) -CLEANFILES += $(nodist_video_fb_module_SOURCES) -MOD_FILES += video_fb.mod -MARKER_FILES += video_fb.marker -CLEANFILES += video_fb.marker - -video_fb.marker: $(video_fb_module_SOURCES) $(nodist_video_fb_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(video_fb_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_emu -platform_PROGRAMS += video.module -MODULE_FILES += video.module$(EXEEXT) -video_module_SOURCES = video/video.c ## platform sources -nodist_video_module_SOURCES = ## platform nodist sources -video_module_LDADD = -video_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -video_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -video_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -video_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -video_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_video_module_SOURCES) -CLEANFILES += $(nodist_video_module_SOURCES) -MOD_FILES += video.mod -MARKER_FILES += video.marker -CLEANFILES += video.marker - -video.marker: $(video_module_SOURCES) $(nodist_video_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(video_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_pc -platform_PROGRAMS += video.module -MODULE_FILES += video.module$(EXEEXT) -video_module_SOURCES = video/video.c ## platform sources -nodist_video_module_SOURCES = ## platform nodist sources -video_module_LDADD = -video_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -video_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -video_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -video_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -video_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_video_module_SOURCES) -CLEANFILES += $(nodist_video_module_SOURCES) -MOD_FILES += video.mod -MARKER_FILES += video.marker -CLEANFILES += video.marker - -video.marker: $(video_module_SOURCES) $(nodist_video_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(video_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_efi -platform_PROGRAMS += video.module -MODULE_FILES += video.module$(EXEEXT) -video_module_SOURCES = video/video.c ## platform sources -nodist_video_module_SOURCES = ## platform nodist sources -video_module_LDADD = -video_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -video_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -video_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -video_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -video_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_video_module_SOURCES) -CLEANFILES += $(nodist_video_module_SOURCES) -MOD_FILES += video.mod -MARKER_FILES += video.marker -CLEANFILES += video.marker - -video.marker: $(video_module_SOURCES) $(nodist_video_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(video_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_qemu -platform_PROGRAMS += video.module -MODULE_FILES += video.module$(EXEEXT) -video_module_SOURCES = video/video.c ## platform sources -nodist_video_module_SOURCES = ## platform nodist sources -video_module_LDADD = -video_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -video_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -video_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -video_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -video_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_video_module_SOURCES) -CLEANFILES += $(nodist_video_module_SOURCES) -MOD_FILES += video.mod -MARKER_FILES += video.marker -CLEANFILES += video.marker - -video.marker: $(video_module_SOURCES) $(nodist_video_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(video_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_multiboot -platform_PROGRAMS += video.module -MODULE_FILES += video.module$(EXEEXT) -video_module_SOURCES = video/video.c ## platform sources -nodist_video_module_SOURCES = ## platform nodist sources -video_module_LDADD = -video_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -video_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -video_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -video_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -video_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_video_module_SOURCES) -CLEANFILES += $(nodist_video_module_SOURCES) -MOD_FILES += video.mod -MARKER_FILES += video.marker -CLEANFILES += video.marker - -video.marker: $(video_module_SOURCES) $(nodist_video_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(video_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_ieee1275 -platform_PROGRAMS += video.module -MODULE_FILES += video.module$(EXEEXT) -video_module_SOURCES = video/video.c ## platform sources -nodist_video_module_SOURCES = ## platform nodist sources -video_module_LDADD = -video_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -video_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -video_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -video_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -video_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_video_module_SOURCES) -CLEANFILES += $(nodist_video_module_SOURCES) -MOD_FILES += video.mod -MARKER_FILES += video.marker -CLEANFILES += video.marker - -video.marker: $(video_module_SOURCES) $(nodist_video_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(video_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_x86_64_efi -platform_PROGRAMS += video.module -MODULE_FILES += video.module$(EXEEXT) -video_module_SOURCES = video/video.c ## platform sources -nodist_video_module_SOURCES = ## platform nodist sources -video_module_LDADD = -video_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -video_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -video_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -video_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -video_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_video_module_SOURCES) -CLEANFILES += $(nodist_video_module_SOURCES) -MOD_FILES += video.mod -MARKER_FILES += video.marker -CLEANFILES += video.marker - -video.marker: $(video_module_SOURCES) $(nodist_video_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(video_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_xen -platform_PROGRAMS += video.module -MODULE_FILES += video.module$(EXEEXT) -video_module_SOURCES = video/video.c ## platform sources -nodist_video_module_SOURCES = ## platform nodist sources -video_module_LDADD = -video_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -video_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -video_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -video_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -video_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_video_module_SOURCES) -CLEANFILES += $(nodist_video_module_SOURCES) -MOD_FILES += video.mod -MARKER_FILES += video.marker -CLEANFILES += video.marker - -video.marker: $(video_module_SOURCES) $(nodist_video_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(video_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_x86_64_xen -platform_PROGRAMS += video.module -MODULE_FILES += video.module$(EXEEXT) -video_module_SOURCES = video/video.c ## platform sources -nodist_video_module_SOURCES = ## platform nodist sources -video_module_LDADD = -video_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -video_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -video_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -video_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -video_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_video_module_SOURCES) -CLEANFILES += $(nodist_video_module_SOURCES) -MOD_FILES += video.mod -MARKER_FILES += video.marker -CLEANFILES += video.marker - -video.marker: $(video_module_SOURCES) $(nodist_video_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(video_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_xen_pvh -platform_PROGRAMS += video.module -MODULE_FILES += video.module$(EXEEXT) -video_module_SOURCES = video/video.c ## platform sources -nodist_video_module_SOURCES = ## platform nodist sources -video_module_LDADD = -video_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -video_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -video_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -video_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -video_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_video_module_SOURCES) -CLEANFILES += $(nodist_video_module_SOURCES) -MOD_FILES += video.mod -MARKER_FILES += video.marker -CLEANFILES += video.marker - -video.marker: $(video_module_SOURCES) $(nodist_video_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(video_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_sparc64_ieee1275 -platform_PROGRAMS += video.module -MODULE_FILES += video.module$(EXEEXT) -video_module_SOURCES = video/video.c ## platform sources -nodist_video_module_SOURCES = ## platform nodist sources -video_module_LDADD = -video_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -video_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -video_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -video_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -video_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_video_module_SOURCES) -CLEANFILES += $(nodist_video_module_SOURCES) -MOD_FILES += video.mod -MARKER_FILES += video.marker -CLEANFILES += video.marker - -video.marker: $(video_module_SOURCES) $(nodist_video_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(video_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_powerpc_ieee1275 -platform_PROGRAMS += video.module -MODULE_FILES += video.module$(EXEEXT) -video_module_SOURCES = video/video.c ## platform sources -nodist_video_module_SOURCES = ## platform nodist sources -video_module_LDADD = -video_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -video_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -video_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -video_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -video_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_video_module_SOURCES) -CLEANFILES += $(nodist_video_module_SOURCES) -MOD_FILES += video.mod -MARKER_FILES += video.marker -CLEANFILES += video.marker - -video.marker: $(video_module_SOURCES) $(nodist_video_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(video_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_mips_arc -platform_PROGRAMS += video.module -MODULE_FILES += video.module$(EXEEXT) -video_module_SOURCES = video/video.c ## platform sources -nodist_video_module_SOURCES = ## platform nodist sources -video_module_LDADD = -video_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -video_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -video_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -video_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -video_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_video_module_SOURCES) -CLEANFILES += $(nodist_video_module_SOURCES) -MOD_FILES += video.mod -MARKER_FILES += video.marker -CLEANFILES += video.marker - -video.marker: $(video_module_SOURCES) $(nodist_video_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(video_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_ia64_efi -platform_PROGRAMS += video.module -MODULE_FILES += video.module$(EXEEXT) -video_module_SOURCES = video/video.c ## platform sources -nodist_video_module_SOURCES = ## platform nodist sources -video_module_LDADD = -video_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -video_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -video_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -video_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -video_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_video_module_SOURCES) -CLEANFILES += $(nodist_video_module_SOURCES) -MOD_FILES += video.mod -MARKER_FILES += video.marker -CLEANFILES += video.marker - -video.marker: $(video_module_SOURCES) $(nodist_video_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(video_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_mips_qemu_mips -platform_PROGRAMS += video.module -MODULE_FILES += video.module$(EXEEXT) -video_module_SOURCES = video/video.c ## platform sources -nodist_video_module_SOURCES = ## platform nodist sources -video_module_LDADD = -video_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -video_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -video_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -video_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -video_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_video_module_SOURCES) -CLEANFILES += $(nodist_video_module_SOURCES) -MOD_FILES += video.mod -MARKER_FILES += video.marker -CLEANFILES += video.marker - -video.marker: $(video_module_SOURCES) $(nodist_video_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(video_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_arm_uboot -platform_PROGRAMS += video.module -MODULE_FILES += video.module$(EXEEXT) -video_module_SOURCES = video/video.c ## platform sources -nodist_video_module_SOURCES = ## platform nodist sources -video_module_LDADD = -video_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -video_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -video_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -video_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -video_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_video_module_SOURCES) -CLEANFILES += $(nodist_video_module_SOURCES) -MOD_FILES += video.mod -MARKER_FILES += video.marker -CLEANFILES += video.marker - -video.marker: $(video_module_SOURCES) $(nodist_video_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(video_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_arm_efi -platform_PROGRAMS += video.module -MODULE_FILES += video.module$(EXEEXT) -video_module_SOURCES = video/video.c ## platform sources -nodist_video_module_SOURCES = ## platform nodist sources -video_module_LDADD = -video_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -video_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -video_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -video_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -video_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_video_module_SOURCES) -CLEANFILES += $(nodist_video_module_SOURCES) -MOD_FILES += video.mod -MARKER_FILES += video.marker -CLEANFILES += video.marker - -video.marker: $(video_module_SOURCES) $(nodist_video_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(video_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_arm64_efi -platform_PROGRAMS += video.module -MODULE_FILES += video.module$(EXEEXT) -video_module_SOURCES = video/video.c ## platform sources -nodist_video_module_SOURCES = ## platform nodist sources -video_module_LDADD = -video_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -video_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -video_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -video_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -video_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_video_module_SOURCES) -CLEANFILES += $(nodist_video_module_SOURCES) -MOD_FILES += video.mod -MARKER_FILES += video.marker -CLEANFILES += video.marker - -video.marker: $(video_module_SOURCES) $(nodist_video_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(video_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_riscv32_efi -platform_PROGRAMS += video.module -MODULE_FILES += video.module$(EXEEXT) -video_module_SOURCES = video/video.c ## platform sources -nodist_video_module_SOURCES = ## platform nodist sources -video_module_LDADD = -video_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -video_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -video_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -video_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -video_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_video_module_SOURCES) -CLEANFILES += $(nodist_video_module_SOURCES) -MOD_FILES += video.mod -MARKER_FILES += video.marker -CLEANFILES += video.marker - -video.marker: $(video_module_SOURCES) $(nodist_video_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(video_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_riscv64_efi -platform_PROGRAMS += video.module -MODULE_FILES += video.module$(EXEEXT) -video_module_SOURCES = video/video.c ## platform sources -nodist_video_module_SOURCES = ## platform nodist sources -video_module_LDADD = -video_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -video_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -video_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -video_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -video_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_video_module_SOURCES) -CLEANFILES += $(nodist_video_module_SOURCES) -MOD_FILES += video.mod -MARKER_FILES += video.marker -CLEANFILES += video.marker - -video.marker: $(video_module_SOURCES) $(nodist_video_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(video_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif -platform_PROGRAMS += video_colors.module -MODULE_FILES += video_colors.module$(EXEEXT) -video_colors_module_SOURCES = video/colors.c ## platform sources -nodist_video_colors_module_SOURCES = ## platform nodist sources -video_colors_module_LDADD = -video_colors_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -video_colors_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -video_colors_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -video_colors_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -video_colors_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_video_colors_module_SOURCES) -CLEANFILES += $(nodist_video_colors_module_SOURCES) -MOD_FILES += video_colors.mod -MARKER_FILES += video_colors.marker -CLEANFILES += video_colors.marker - -video_colors.marker: $(video_colors_module_SOURCES) $(nodist_video_colors_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(video_colors_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -if COND_powerpc_ieee1275 -platform_PROGRAMS += ieee1275_fb.module -MODULE_FILES += ieee1275_fb.module$(EXEEXT) -ieee1275_fb_module_SOURCES = video/ieee1275.c ## platform sources -nodist_ieee1275_fb_module_SOURCES = ## platform nodist sources -ieee1275_fb_module_LDADD = -ieee1275_fb_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -ieee1275_fb_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -ieee1275_fb_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -ieee1275_fb_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -ieee1275_fb_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_ieee1275_fb_module_SOURCES) -CLEANFILES += $(nodist_ieee1275_fb_module_SOURCES) -MOD_FILES += ieee1275_fb.mod -MARKER_FILES += ieee1275_fb.marker -CLEANFILES += ieee1275_fb.marker - -ieee1275_fb.marker: $(ieee1275_fb_module_SOURCES) $(nodist_ieee1275_fb_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ieee1275_fb_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_emu -if COND_GRUB_EMU_SDL -platform_PROGRAMS += sdl.module -MODULE_FILES += sdl.module$(EXEEXT) -sdl_module_SOURCES = video/emu/sdl.c ## platform sources -nodist_sdl_module_SOURCES = ## platform nodist sources -sdl_module_LDADD = -sdl_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -sdl_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -sdl_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -sdl_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -sdl_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_sdl_module_SOURCES) -CLEANFILES += $(nodist_sdl_module_SOURCES) -MOD_FILES += sdl.mod -MARKER_FILES += sdl.marker -CLEANFILES += sdl.marker - -sdl.marker: $(sdl_module_SOURCES) $(nodist_sdl_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(sdl_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif COND_GRUB_EMU_SDL -endif -platform_PROGRAMS += datehook.module -MODULE_FILES += datehook.module$(EXEEXT) -datehook_module_SOURCES = hook/datehook.c ## platform sources -nodist_datehook_module_SOURCES = ## platform nodist sources -datehook_module_LDADD = -datehook_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -datehook_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -datehook_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -datehook_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -datehook_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_datehook_module_SOURCES) -CLEANFILES += $(nodist_datehook_module_SOURCES) -MOD_FILES += datehook.mod -MARKER_FILES += datehook.marker -CLEANFILES += datehook.marker - -datehook.marker: $(datehook_module_SOURCES) $(nodist_datehook_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(datehook_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += net.module -MODULE_FILES += net.module$(EXEEXT) -net_module_SOURCES = net/net.c net/dns.c net/bootp.c net/ip.c net/udp.c net/tcp.c net/icmp.c net/icmp6.c net/ethernet.c net/arp.c net/netbuff.c ## platform sources -nodist_net_module_SOURCES = ## platform nodist sources -net_module_LDADD = -net_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -net_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -net_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -net_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -net_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_net_module_SOURCES) -CLEANFILES += $(nodist_net_module_SOURCES) -MOD_FILES += net.mod -MARKER_FILES += net.marker -CLEANFILES += net.marker - -net.marker: $(net_module_SOURCES) $(nodist_net_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(net_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += tftp.module -MODULE_FILES += tftp.module$(EXEEXT) -tftp_module_SOURCES = net/tftp.c ## platform sources -nodist_tftp_module_SOURCES = ## platform nodist sources -tftp_module_LDADD = -tftp_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -tftp_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -tftp_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -tftp_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -tftp_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_tftp_module_SOURCES) -CLEANFILES += $(nodist_tftp_module_SOURCES) -MOD_FILES += tftp.mod -MARKER_FILES += tftp.marker -CLEANFILES += tftp.marker - -tftp.marker: $(tftp_module_SOURCES) $(nodist_tftp_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(tftp_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += http.module -MODULE_FILES += http.module$(EXEEXT) -http_module_SOURCES = net/http.c ## platform sources -nodist_http_module_SOURCES = ## platform nodist sources -http_module_LDADD = -http_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -http_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -http_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -http_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -http_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_http_module_SOURCES) -CLEANFILES += $(nodist_http_module_SOURCES) -MOD_FILES += http.mod -MARKER_FILES += http.marker -CLEANFILES += http.marker - -http.marker: $(http_module_SOURCES) $(nodist_http_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(http_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -if COND_i386_ieee1275 -platform_PROGRAMS += ofnet.module -MODULE_FILES += ofnet.module$(EXEEXT) -ofnet_module_SOURCES = net/drivers/ieee1275/ofnet.c ## platform sources -nodist_ofnet_module_SOURCES = ## platform nodist sources -ofnet_module_LDADD = -ofnet_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -ofnet_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -ofnet_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -ofnet_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -ofnet_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_ofnet_module_SOURCES) -CLEANFILES += $(nodist_ofnet_module_SOURCES) -MOD_FILES += ofnet.mod -MARKER_FILES += ofnet.marker -CLEANFILES += ofnet.marker - -ofnet.marker: $(ofnet_module_SOURCES) $(nodist_ofnet_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ofnet_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_sparc64_ieee1275 -platform_PROGRAMS += ofnet.module -MODULE_FILES += ofnet.module$(EXEEXT) -ofnet_module_SOURCES = net/drivers/ieee1275/ofnet.c ## platform sources -nodist_ofnet_module_SOURCES = ## platform nodist sources -ofnet_module_LDADD = -ofnet_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -ofnet_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -ofnet_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -ofnet_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -ofnet_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_ofnet_module_SOURCES) -CLEANFILES += $(nodist_ofnet_module_SOURCES) -MOD_FILES += ofnet.mod -MARKER_FILES += ofnet.marker -CLEANFILES += ofnet.marker - -ofnet.marker: $(ofnet_module_SOURCES) $(nodist_ofnet_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ofnet_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_powerpc_ieee1275 -platform_PROGRAMS += ofnet.module -MODULE_FILES += ofnet.module$(EXEEXT) -ofnet_module_SOURCES = net/drivers/ieee1275/ofnet.c ## platform sources -nodist_ofnet_module_SOURCES = ## platform nodist sources -ofnet_module_LDADD = -ofnet_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -ofnet_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -ofnet_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -ofnet_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -ofnet_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_ofnet_module_SOURCES) -CLEANFILES += $(nodist_ofnet_module_SOURCES) -MOD_FILES += ofnet.mod -MARKER_FILES += ofnet.marker -CLEANFILES += ofnet.marker - -ofnet.marker: $(ofnet_module_SOURCES) $(nodist_ofnet_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ofnet_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_arm_uboot -platform_PROGRAMS += ubootnet.module -MODULE_FILES += ubootnet.module$(EXEEXT) -ubootnet_module_SOURCES = net/drivers/uboot/ubootnet.c ## platform sources -nodist_ubootnet_module_SOURCES = ## platform nodist sources -ubootnet_module_LDADD = -ubootnet_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -ubootnet_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -ubootnet_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -ubootnet_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -ubootnet_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_ubootnet_module_SOURCES) -CLEANFILES += $(nodist_ubootnet_module_SOURCES) -MOD_FILES += ubootnet.mod -MARKER_FILES += ubootnet.marker -CLEANFILES += ubootnet.marker - -ubootnet.marker: $(ubootnet_module_SOURCES) $(nodist_ubootnet_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ubootnet_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_efi -platform_PROGRAMS += efinet.module -MODULE_FILES += efinet.module$(EXEEXT) -efinet_module_SOURCES = net/drivers/efi/efinet.c ## platform sources -nodist_efinet_module_SOURCES = ## platform nodist sources -efinet_module_LDADD = -efinet_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -efinet_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -efinet_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -efinet_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -efinet_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_efinet_module_SOURCES) -CLEANFILES += $(nodist_efinet_module_SOURCES) -MOD_FILES += efinet.mod -MARKER_FILES += efinet.marker -CLEANFILES += efinet.marker - -efinet.marker: $(efinet_module_SOURCES) $(nodist_efinet_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(efinet_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_x86_64_efi -platform_PROGRAMS += efinet.module -MODULE_FILES += efinet.module$(EXEEXT) -efinet_module_SOURCES = net/drivers/efi/efinet.c ## platform sources -nodist_efinet_module_SOURCES = ## platform nodist sources -efinet_module_LDADD = -efinet_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -efinet_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -efinet_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -efinet_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -efinet_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_efinet_module_SOURCES) -CLEANFILES += $(nodist_efinet_module_SOURCES) -MOD_FILES += efinet.mod -MARKER_FILES += efinet.marker -CLEANFILES += efinet.marker - -efinet.marker: $(efinet_module_SOURCES) $(nodist_efinet_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(efinet_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_ia64_efi -platform_PROGRAMS += efinet.module -MODULE_FILES += efinet.module$(EXEEXT) -efinet_module_SOURCES = net/drivers/efi/efinet.c ## platform sources -nodist_efinet_module_SOURCES = ## platform nodist sources -efinet_module_LDADD = -efinet_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -efinet_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -efinet_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -efinet_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -efinet_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_efinet_module_SOURCES) -CLEANFILES += $(nodist_efinet_module_SOURCES) -MOD_FILES += efinet.mod -MARKER_FILES += efinet.marker -CLEANFILES += efinet.marker - -efinet.marker: $(efinet_module_SOURCES) $(nodist_efinet_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(efinet_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_arm_efi -platform_PROGRAMS += efinet.module -MODULE_FILES += efinet.module$(EXEEXT) -efinet_module_SOURCES = net/drivers/efi/efinet.c ## platform sources -nodist_efinet_module_SOURCES = ## platform nodist sources -efinet_module_LDADD = -efinet_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -efinet_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -efinet_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -efinet_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -efinet_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_efinet_module_SOURCES) -CLEANFILES += $(nodist_efinet_module_SOURCES) -MOD_FILES += efinet.mod -MARKER_FILES += efinet.marker -CLEANFILES += efinet.marker - -efinet.marker: $(efinet_module_SOURCES) $(nodist_efinet_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(efinet_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_arm64_efi -platform_PROGRAMS += efinet.module -MODULE_FILES += efinet.module$(EXEEXT) -efinet_module_SOURCES = net/drivers/efi/efinet.c ## platform sources -nodist_efinet_module_SOURCES = ## platform nodist sources -efinet_module_LDADD = -efinet_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -efinet_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -efinet_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -efinet_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -efinet_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_efinet_module_SOURCES) -CLEANFILES += $(nodist_efinet_module_SOURCES) -MOD_FILES += efinet.mod -MARKER_FILES += efinet.marker -CLEANFILES += efinet.marker - -efinet.marker: $(efinet_module_SOURCES) $(nodist_efinet_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(efinet_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_riscv32_efi -platform_PROGRAMS += efinet.module -MODULE_FILES += efinet.module$(EXEEXT) -efinet_module_SOURCES = net/drivers/efi/efinet.c ## platform sources -nodist_efinet_module_SOURCES = ## platform nodist sources -efinet_module_LDADD = -efinet_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -efinet_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -efinet_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -efinet_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -efinet_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_efinet_module_SOURCES) -CLEANFILES += $(nodist_efinet_module_SOURCES) -MOD_FILES += efinet.mod -MARKER_FILES += efinet.marker -CLEANFILES += efinet.marker - -efinet.marker: $(efinet_module_SOURCES) $(nodist_efinet_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(efinet_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_riscv64_efi -platform_PROGRAMS += efinet.module -MODULE_FILES += efinet.module$(EXEEXT) -efinet_module_SOURCES = net/drivers/efi/efinet.c ## platform sources -nodist_efinet_module_SOURCES = ## platform nodist sources -efinet_module_LDADD = -efinet_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -efinet_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -efinet_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -efinet_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -efinet_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_efinet_module_SOURCES) -CLEANFILES += $(nodist_efinet_module_SOURCES) -MOD_FILES += efinet.mod -MARKER_FILES += efinet.marker -CLEANFILES += efinet.marker - -efinet.marker: $(efinet_module_SOURCES) $(nodist_efinet_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(efinet_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_emu -platform_PROGRAMS += emunet.module -MODULE_FILES += emunet.module$(EXEEXT) -emunet_module_SOURCES = net/drivers/emu/emunet.c ## platform sources -nodist_emunet_module_SOURCES = ## platform nodist sources -emunet_module_LDADD = -emunet_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -emunet_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -emunet_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -emunet_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -emunet_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_emunet_module_SOURCES) -CLEANFILES += $(nodist_emunet_module_SOURCES) -MOD_FILES += emunet.mod -MARKER_FILES += emunet.marker -CLEANFILES += emunet.marker - -emunet.marker: $(emunet_module_SOURCES) $(nodist_emunet_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(emunet_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_emu -platform_PROGRAMS += legacycfg.module -MODULE_FILES += legacycfg.module$(EXEEXT) -legacycfg_module_SOURCES = lib/i386/pc/vesa_modes_table.c commands/legacycfg.c lib/legacy_parse.c ## platform sources -nodist_legacycfg_module_SOURCES = ## platform nodist sources -legacycfg_module_LDADD = -legacycfg_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -legacycfg_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -legacycfg_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -legacycfg_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -legacycfg_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_legacycfg_module_SOURCES) -CLEANFILES += $(nodist_legacycfg_module_SOURCES) -MOD_FILES += legacycfg.mod -MARKER_FILES += legacycfg.marker -CLEANFILES += legacycfg.marker - -legacycfg.marker: $(legacycfg_module_SOURCES) $(nodist_legacycfg_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(legacycfg_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_pc -platform_PROGRAMS += legacycfg.module -MODULE_FILES += legacycfg.module$(EXEEXT) -legacycfg_module_SOURCES = commands/legacycfg.c lib/legacy_parse.c ## platform sources -nodist_legacycfg_module_SOURCES = ## platform nodist sources -legacycfg_module_LDADD = -legacycfg_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -legacycfg_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -legacycfg_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -legacycfg_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -legacycfg_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_legacycfg_module_SOURCES) -CLEANFILES += $(nodist_legacycfg_module_SOURCES) -MOD_FILES += legacycfg.mod -MARKER_FILES += legacycfg.marker -CLEANFILES += legacycfg.marker - -legacycfg.marker: $(legacycfg_module_SOURCES) $(nodist_legacycfg_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(legacycfg_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_efi -platform_PROGRAMS += legacycfg.module -MODULE_FILES += legacycfg.module$(EXEEXT) -legacycfg_module_SOURCES = lib/i386/pc/vesa_modes_table.c commands/legacycfg.c lib/legacy_parse.c ## platform sources -nodist_legacycfg_module_SOURCES = ## platform nodist sources -legacycfg_module_LDADD = -legacycfg_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -legacycfg_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -legacycfg_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -legacycfg_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -legacycfg_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_legacycfg_module_SOURCES) -CLEANFILES += $(nodist_legacycfg_module_SOURCES) -MOD_FILES += legacycfg.mod -MARKER_FILES += legacycfg.marker -CLEANFILES += legacycfg.marker - -legacycfg.marker: $(legacycfg_module_SOURCES) $(nodist_legacycfg_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(legacycfg_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_x86_64_efi -platform_PROGRAMS += legacycfg.module -MODULE_FILES += legacycfg.module$(EXEEXT) -legacycfg_module_SOURCES = lib/i386/pc/vesa_modes_table.c commands/legacycfg.c lib/legacy_parse.c ## platform sources -nodist_legacycfg_module_SOURCES = ## platform nodist sources -legacycfg_module_LDADD = -legacycfg_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -legacycfg_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -legacycfg_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -legacycfg_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -legacycfg_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_legacycfg_module_SOURCES) -CLEANFILES += $(nodist_legacycfg_module_SOURCES) -MOD_FILES += legacycfg.mod -MARKER_FILES += legacycfg.marker -CLEANFILES += legacycfg.marker - -legacycfg.marker: $(legacycfg_module_SOURCES) $(nodist_legacycfg_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(legacycfg_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_xen -platform_PROGRAMS += legacycfg.module -MODULE_FILES += legacycfg.module$(EXEEXT) -legacycfg_module_SOURCES = lib/i386/pc/vesa_modes_table.c commands/legacycfg.c lib/legacy_parse.c ## platform sources -nodist_legacycfg_module_SOURCES = ## platform nodist sources -legacycfg_module_LDADD = -legacycfg_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -legacycfg_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -legacycfg_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -legacycfg_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -legacycfg_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_legacycfg_module_SOURCES) -CLEANFILES += $(nodist_legacycfg_module_SOURCES) -MOD_FILES += legacycfg.mod -MARKER_FILES += legacycfg.marker -CLEANFILES += legacycfg.marker - -legacycfg.marker: $(legacycfg_module_SOURCES) $(nodist_legacycfg_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(legacycfg_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_x86_64_xen -platform_PROGRAMS += legacycfg.module -MODULE_FILES += legacycfg.module$(EXEEXT) -legacycfg_module_SOURCES = lib/i386/pc/vesa_modes_table.c commands/legacycfg.c lib/legacy_parse.c ## platform sources -nodist_legacycfg_module_SOURCES = ## platform nodist sources -legacycfg_module_LDADD = -legacycfg_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -legacycfg_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -legacycfg_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -legacycfg_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -legacycfg_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_legacycfg_module_SOURCES) -CLEANFILES += $(nodist_legacycfg_module_SOURCES) -MOD_FILES += legacycfg.mod -MARKER_FILES += legacycfg.marker -CLEANFILES += legacycfg.marker - -legacycfg.marker: $(legacycfg_module_SOURCES) $(nodist_legacycfg_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(legacycfg_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_xen_pvh -platform_PROGRAMS += legacycfg.module -MODULE_FILES += legacycfg.module$(EXEEXT) -legacycfg_module_SOURCES = commands/legacycfg.c lib/legacy_parse.c ## platform sources -nodist_legacycfg_module_SOURCES = ## platform nodist sources -legacycfg_module_LDADD = -legacycfg_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -legacycfg_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -legacycfg_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -legacycfg_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -legacycfg_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_legacycfg_module_SOURCES) -CLEANFILES += $(nodist_legacycfg_module_SOURCES) -MOD_FILES += legacycfg.mod -MARKER_FILES += legacycfg.marker -CLEANFILES += legacycfg.marker - -legacycfg.marker: $(legacycfg_module_SOURCES) $(nodist_legacycfg_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(legacycfg_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif -platform_PROGRAMS += syslinuxcfg.module -MODULE_FILES += syslinuxcfg.module$(EXEEXT) -syslinuxcfg_module_SOURCES = lib/syslinux_parse.c commands/syslinuxcfg.c ## platform sources -nodist_syslinuxcfg_module_SOURCES = ## platform nodist sources -syslinuxcfg_module_LDADD = -syslinuxcfg_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -syslinuxcfg_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -syslinuxcfg_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -syslinuxcfg_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -syslinuxcfg_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_syslinuxcfg_module_SOURCES) -CLEANFILES += $(nodist_syslinuxcfg_module_SOURCES) -MOD_FILES += syslinuxcfg.mod -MARKER_FILES += syslinuxcfg.marker -CLEANFILES += syslinuxcfg.marker - -syslinuxcfg.marker: $(syslinuxcfg_module_SOURCES) $(nodist_syslinuxcfg_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(syslinuxcfg_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += test_blockarg.module -MODULE_FILES += test_blockarg.module$(EXEEXT) -test_blockarg_module_SOURCES = tests/test_blockarg.c ## platform sources -nodist_test_blockarg_module_SOURCES = ## platform nodist sources -test_blockarg_module_LDADD = -test_blockarg_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -test_blockarg_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -test_blockarg_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -test_blockarg_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -test_blockarg_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_test_blockarg_module_SOURCES) -CLEANFILES += $(nodist_test_blockarg_module_SOURCES) -MOD_FILES += test_blockarg.mod -MARKER_FILES += test_blockarg.marker -CLEANFILES += test_blockarg.marker - -test_blockarg.marker: $(test_blockarg_module_SOURCES) $(nodist_test_blockarg_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(test_blockarg_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += xzio.module -MODULE_FILES += xzio.module$(EXEEXT) -xzio_module_SOURCES = io/xzio.c lib/xzembed/xz_dec_bcj.c lib/xzembed/xz_dec_lzma2.c lib/xzembed/xz_dec_stream.c ## platform sources -nodist_xzio_module_SOURCES = ## platform nodist sources -xzio_module_LDADD = -xzio_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -Wno-unreachable-code -xzio_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -xzio_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -I$(srcdir)/lib/posix_wrap -I$(srcdir)/lib/xzembed -xzio_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -xzio_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_xzio_module_SOURCES) -CLEANFILES += $(nodist_xzio_module_SOURCES) -MOD_FILES += xzio.mod -MARKER_FILES += xzio.marker -CLEANFILES += xzio.marker - -xzio.marker: $(xzio_module_SOURCES) $(nodist_xzio_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(xzio_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += lzopio.module -MODULE_FILES += lzopio.module$(EXEEXT) -lzopio_module_SOURCES = io/lzopio.c lib/minilzo/minilzo.c ## platform sources -nodist_lzopio_module_SOURCES = ## platform nodist sources -lzopio_module_LDADD = -lzopio_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) $(CFLAGS_POSIX) -Wno-undef -Wno-redundant-decls -Wno-error -lzopio_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -lzopio_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -I$(srcdir)/lib/posix_wrap -I$(srcdir)/lib/minilzo -DMINILZO_HAVE_CONFIG_H -lzopio_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -lzopio_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_lzopio_module_SOURCES) -CLEANFILES += $(nodist_lzopio_module_SOURCES) -MOD_FILES += lzopio.mod -MARKER_FILES += lzopio.marker -CLEANFILES += lzopio.marker - -lzopio.marker: $(lzopio_module_SOURCES) $(nodist_lzopio_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lzopio_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += testload.module -MODULE_FILES += testload.module$(EXEEXT) -testload_module_SOURCES = commands/testload.c ## platform sources -nodist_testload_module_SOURCES = ## platform nodist sources -testload_module_LDADD = -testload_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -testload_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -testload_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -testload_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -testload_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_testload_module_SOURCES) -CLEANFILES += $(nodist_testload_module_SOURCES) -MOD_FILES += testload.mod -MARKER_FILES += testload.marker -CLEANFILES += testload.marker - -testload.marker: $(testload_module_SOURCES) $(nodist_testload_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(testload_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -if COND_i386_pc -platform_PROGRAMS += backtrace.module -MODULE_FILES += backtrace.module$(EXEEXT) -backtrace_module_SOURCES = lib/i386/backtrace.c lib/backtrace.c ## platform sources -nodist_backtrace_module_SOURCES = ## platform nodist sources -backtrace_module_LDADD = -backtrace_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -backtrace_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -backtrace_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -backtrace_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -backtrace_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_backtrace_module_SOURCES) -CLEANFILES += $(nodist_backtrace_module_SOURCES) -MOD_FILES += backtrace.mod -MARKER_FILES += backtrace.marker -CLEANFILES += backtrace.marker - -backtrace.marker: $(backtrace_module_SOURCES) $(nodist_backtrace_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(backtrace_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_efi -platform_PROGRAMS += backtrace.module -MODULE_FILES += backtrace.module$(EXEEXT) -backtrace_module_SOURCES = lib/i386/backtrace.c lib/backtrace.c ## platform sources -nodist_backtrace_module_SOURCES = ## platform nodist sources -backtrace_module_LDADD = -backtrace_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -backtrace_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -backtrace_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -backtrace_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -backtrace_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_backtrace_module_SOURCES) -CLEANFILES += $(nodist_backtrace_module_SOURCES) -MOD_FILES += backtrace.mod -MARKER_FILES += backtrace.marker -CLEANFILES += backtrace.marker - -backtrace.marker: $(backtrace_module_SOURCES) $(nodist_backtrace_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(backtrace_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_qemu -platform_PROGRAMS += backtrace.module -MODULE_FILES += backtrace.module$(EXEEXT) -backtrace_module_SOURCES = lib/i386/backtrace.c lib/backtrace.c ## platform sources -nodist_backtrace_module_SOURCES = ## platform nodist sources -backtrace_module_LDADD = -backtrace_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -backtrace_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -backtrace_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -backtrace_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -backtrace_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_backtrace_module_SOURCES) -CLEANFILES += $(nodist_backtrace_module_SOURCES) -MOD_FILES += backtrace.mod -MARKER_FILES += backtrace.marker -CLEANFILES += backtrace.marker - -backtrace.marker: $(backtrace_module_SOURCES) $(nodist_backtrace_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(backtrace_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_coreboot -platform_PROGRAMS += backtrace.module -MODULE_FILES += backtrace.module$(EXEEXT) -backtrace_module_SOURCES = lib/i386/backtrace.c lib/backtrace.c ## platform sources -nodist_backtrace_module_SOURCES = ## platform nodist sources -backtrace_module_LDADD = -backtrace_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -backtrace_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -backtrace_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -backtrace_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -backtrace_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_backtrace_module_SOURCES) -CLEANFILES += $(nodist_backtrace_module_SOURCES) -MOD_FILES += backtrace.mod -MARKER_FILES += backtrace.marker -CLEANFILES += backtrace.marker - -backtrace.marker: $(backtrace_module_SOURCES) $(nodist_backtrace_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(backtrace_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_multiboot -platform_PROGRAMS += backtrace.module -MODULE_FILES += backtrace.module$(EXEEXT) -backtrace_module_SOURCES = lib/i386/backtrace.c lib/backtrace.c ## platform sources -nodist_backtrace_module_SOURCES = ## platform nodist sources -backtrace_module_LDADD = -backtrace_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -backtrace_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -backtrace_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -backtrace_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -backtrace_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_backtrace_module_SOURCES) -CLEANFILES += $(nodist_backtrace_module_SOURCES) -MOD_FILES += backtrace.mod -MARKER_FILES += backtrace.marker -CLEANFILES += backtrace.marker - -backtrace.marker: $(backtrace_module_SOURCES) $(nodist_backtrace_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(backtrace_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_ieee1275 -platform_PROGRAMS += backtrace.module -MODULE_FILES += backtrace.module$(EXEEXT) -backtrace_module_SOURCES = lib/i386/backtrace.c lib/backtrace.c ## platform sources -nodist_backtrace_module_SOURCES = ## platform nodist sources -backtrace_module_LDADD = -backtrace_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -backtrace_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -backtrace_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -backtrace_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -backtrace_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_backtrace_module_SOURCES) -CLEANFILES += $(nodist_backtrace_module_SOURCES) -MOD_FILES += backtrace.mod -MARKER_FILES += backtrace.marker -CLEANFILES += backtrace.marker - -backtrace.marker: $(backtrace_module_SOURCES) $(nodist_backtrace_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(backtrace_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_x86_64_efi -platform_PROGRAMS += backtrace.module -MODULE_FILES += backtrace.module$(EXEEXT) -backtrace_module_SOURCES = lib/i386/backtrace.c lib/backtrace.c ## platform sources -nodist_backtrace_module_SOURCES = ## platform nodist sources -backtrace_module_LDADD = -backtrace_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -backtrace_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -backtrace_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -backtrace_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -backtrace_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_backtrace_module_SOURCES) -CLEANFILES += $(nodist_backtrace_module_SOURCES) -MOD_FILES += backtrace.mod -MARKER_FILES += backtrace.marker -CLEANFILES += backtrace.marker - -backtrace.marker: $(backtrace_module_SOURCES) $(nodist_backtrace_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(backtrace_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_xen -platform_PROGRAMS += backtrace.module -MODULE_FILES += backtrace.module$(EXEEXT) -backtrace_module_SOURCES = lib/i386/backtrace.c lib/backtrace.c ## platform sources -nodist_backtrace_module_SOURCES = ## platform nodist sources -backtrace_module_LDADD = -backtrace_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -backtrace_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -backtrace_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -backtrace_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -backtrace_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_backtrace_module_SOURCES) -CLEANFILES += $(nodist_backtrace_module_SOURCES) -MOD_FILES += backtrace.mod -MARKER_FILES += backtrace.marker -CLEANFILES += backtrace.marker - -backtrace.marker: $(backtrace_module_SOURCES) $(nodist_backtrace_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(backtrace_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_x86_64_xen -platform_PROGRAMS += backtrace.module -MODULE_FILES += backtrace.module$(EXEEXT) -backtrace_module_SOURCES = lib/i386/backtrace.c lib/backtrace.c ## platform sources -nodist_backtrace_module_SOURCES = ## platform nodist sources -backtrace_module_LDADD = -backtrace_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -backtrace_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -backtrace_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -backtrace_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -backtrace_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_backtrace_module_SOURCES) -CLEANFILES += $(nodist_backtrace_module_SOURCES) -MOD_FILES += backtrace.mod -MARKER_FILES += backtrace.marker -CLEANFILES += backtrace.marker - -backtrace.marker: $(backtrace_module_SOURCES) $(nodist_backtrace_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(backtrace_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_xen_pvh -platform_PROGRAMS += backtrace.module -MODULE_FILES += backtrace.module$(EXEEXT) -backtrace_module_SOURCES = lib/i386/backtrace.c lib/backtrace.c ## platform sources -nodist_backtrace_module_SOURCES = ## platform nodist sources -backtrace_module_LDADD = -backtrace_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -backtrace_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -backtrace_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -backtrace_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -backtrace_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_backtrace_module_SOURCES) -CLEANFILES += $(nodist_backtrace_module_SOURCES) -MOD_FILES += backtrace.mod -MARKER_FILES += backtrace.marker -CLEANFILES += backtrace.marker - -backtrace.marker: $(backtrace_module_SOURCES) $(nodist_backtrace_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(backtrace_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_pc -platform_PROGRAMS += lsapm.module -MODULE_FILES += lsapm.module$(EXEEXT) -lsapm_module_SOURCES = commands/i386/pc/lsapm.c ## platform sources -nodist_lsapm_module_SOURCES = ## platform nodist sources -lsapm_module_LDADD = -lsapm_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -lsapm_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -lsapm_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -lsapm_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -lsapm_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_lsapm_module_SOURCES) -CLEANFILES += $(nodist_lsapm_module_SOURCES) -MOD_FILES += lsapm.mod -MARKER_FILES += lsapm.marker -CLEANFILES += lsapm.marker - -lsapm.marker: $(lsapm_module_SOURCES) $(nodist_lsapm_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lsapm_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_pc -platform_PROGRAMS += keylayouts.module -MODULE_FILES += keylayouts.module$(EXEEXT) -keylayouts_module_SOURCES = commands/keylayouts.c ## platform sources -nodist_keylayouts_module_SOURCES = ## platform nodist sources -keylayouts_module_LDADD = -keylayouts_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -keylayouts_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -keylayouts_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -keylayouts_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -keylayouts_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_keylayouts_module_SOURCES) -CLEANFILES += $(nodist_keylayouts_module_SOURCES) -MOD_FILES += keylayouts.mod -MARKER_FILES += keylayouts.marker -CLEANFILES += keylayouts.marker - -keylayouts.marker: $(keylayouts_module_SOURCES) $(nodist_keylayouts_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(keylayouts_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_efi -platform_PROGRAMS += keylayouts.module -MODULE_FILES += keylayouts.module$(EXEEXT) -keylayouts_module_SOURCES = commands/keylayouts.c ## platform sources -nodist_keylayouts_module_SOURCES = ## platform nodist sources -keylayouts_module_LDADD = -keylayouts_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -keylayouts_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -keylayouts_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -keylayouts_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -keylayouts_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_keylayouts_module_SOURCES) -CLEANFILES += $(nodist_keylayouts_module_SOURCES) -MOD_FILES += keylayouts.mod -MARKER_FILES += keylayouts.marker -CLEANFILES += keylayouts.marker - -keylayouts.marker: $(keylayouts_module_SOURCES) $(nodist_keylayouts_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(keylayouts_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_qemu -platform_PROGRAMS += keylayouts.module -MODULE_FILES += keylayouts.module$(EXEEXT) -keylayouts_module_SOURCES = commands/keylayouts.c ## platform sources -nodist_keylayouts_module_SOURCES = ## platform nodist sources -keylayouts_module_LDADD = -keylayouts_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -keylayouts_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -keylayouts_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -keylayouts_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -keylayouts_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_keylayouts_module_SOURCES) -CLEANFILES += $(nodist_keylayouts_module_SOURCES) -MOD_FILES += keylayouts.mod -MARKER_FILES += keylayouts.marker -CLEANFILES += keylayouts.marker - -keylayouts.marker: $(keylayouts_module_SOURCES) $(nodist_keylayouts_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(keylayouts_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_coreboot -platform_PROGRAMS += keylayouts.module -MODULE_FILES += keylayouts.module$(EXEEXT) -keylayouts_module_SOURCES = commands/keylayouts.c ## platform sources -nodist_keylayouts_module_SOURCES = ## platform nodist sources -keylayouts_module_LDADD = -keylayouts_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -keylayouts_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -keylayouts_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -keylayouts_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -keylayouts_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_keylayouts_module_SOURCES) -CLEANFILES += $(nodist_keylayouts_module_SOURCES) -MOD_FILES += keylayouts.mod -MARKER_FILES += keylayouts.marker -CLEANFILES += keylayouts.marker - -keylayouts.marker: $(keylayouts_module_SOURCES) $(nodist_keylayouts_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(keylayouts_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_multiboot -platform_PROGRAMS += keylayouts.module -MODULE_FILES += keylayouts.module$(EXEEXT) -keylayouts_module_SOURCES = commands/keylayouts.c ## platform sources -nodist_keylayouts_module_SOURCES = ## platform nodist sources -keylayouts_module_LDADD = -keylayouts_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -keylayouts_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -keylayouts_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -keylayouts_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -keylayouts_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_keylayouts_module_SOURCES) -CLEANFILES += $(nodist_keylayouts_module_SOURCES) -MOD_FILES += keylayouts.mod -MARKER_FILES += keylayouts.marker -CLEANFILES += keylayouts.marker - -keylayouts.marker: $(keylayouts_module_SOURCES) $(nodist_keylayouts_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(keylayouts_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_ieee1275 -platform_PROGRAMS += keylayouts.module -MODULE_FILES += keylayouts.module$(EXEEXT) -keylayouts_module_SOURCES = commands/keylayouts.c ## platform sources -nodist_keylayouts_module_SOURCES = ## platform nodist sources -keylayouts_module_LDADD = -keylayouts_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -keylayouts_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -keylayouts_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -keylayouts_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -keylayouts_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_keylayouts_module_SOURCES) -CLEANFILES += $(nodist_keylayouts_module_SOURCES) -MOD_FILES += keylayouts.mod -MARKER_FILES += keylayouts.marker -CLEANFILES += keylayouts.marker - -keylayouts.marker: $(keylayouts_module_SOURCES) $(nodist_keylayouts_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(keylayouts_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_x86_64_efi -platform_PROGRAMS += keylayouts.module -MODULE_FILES += keylayouts.module$(EXEEXT) -keylayouts_module_SOURCES = commands/keylayouts.c ## platform sources -nodist_keylayouts_module_SOURCES = ## platform nodist sources -keylayouts_module_LDADD = -keylayouts_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -keylayouts_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -keylayouts_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -keylayouts_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -keylayouts_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_keylayouts_module_SOURCES) -CLEANFILES += $(nodist_keylayouts_module_SOURCES) -MOD_FILES += keylayouts.mod -MARKER_FILES += keylayouts.marker -CLEANFILES += keylayouts.marker - -keylayouts.marker: $(keylayouts_module_SOURCES) $(nodist_keylayouts_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(keylayouts_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif -platform_PROGRAMS += priority_queue.module -MODULE_FILES += priority_queue.module$(EXEEXT) -priority_queue_module_SOURCES = lib/priority_queue.c ## platform sources -nodist_priority_queue_module_SOURCES = ## platform nodist sources -priority_queue_module_LDADD = -priority_queue_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -priority_queue_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -priority_queue_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -priority_queue_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -priority_queue_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_priority_queue_module_SOURCES) -CLEANFILES += $(nodist_priority_queue_module_SOURCES) -MOD_FILES += priority_queue.mod -MARKER_FILES += priority_queue.marker -CLEANFILES += priority_queue.marker - -priority_queue.marker: $(priority_queue_module_SOURCES) $(nodist_priority_queue_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(priority_queue_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += time.module -MODULE_FILES += time.module$(EXEEXT) -time_module_SOURCES = commands/time.c ## platform sources -nodist_time_module_SOURCES = ## platform nodist sources -time_module_LDADD = -time_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -time_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -time_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -time_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -time_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_time_module_SOURCES) -CLEANFILES += $(nodist_time_module_SOURCES) -MOD_FILES += time.mod -MARKER_FILES += time.marker -CLEANFILES += time.marker - -time.marker: $(time_module_SOURCES) $(nodist_time_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(time_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -if COND_ENABLE_CACHE_STATS -platform_PROGRAMS += cacheinfo.module -MODULE_FILES += cacheinfo.module$(EXEEXT) -cacheinfo_module_SOURCES = commands/cacheinfo.c ## platform sources -nodist_cacheinfo_module_SOURCES = ## platform nodist sources -cacheinfo_module_LDADD = -cacheinfo_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -cacheinfo_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -cacheinfo_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -cacheinfo_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -cacheinfo_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_cacheinfo_module_SOURCES) -CLEANFILES += $(nodist_cacheinfo_module_SOURCES) -MOD_FILES += cacheinfo.mod -MARKER_FILES += cacheinfo.marker -CLEANFILES += cacheinfo.marker - -cacheinfo.marker: $(cacheinfo_module_SOURCES) $(nodist_cacheinfo_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cacheinfo_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif COND_ENABLE_CACHE_STATS -if COND_ENABLE_BOOT_TIME_STATS -platform_PROGRAMS += boottime.module -MODULE_FILES += boottime.module$(EXEEXT) -boottime_module_SOURCES = commands/boottime.c ## platform sources -nodist_boottime_module_SOURCES = ## platform nodist sources -boottime_module_LDADD = -boottime_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -boottime_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -boottime_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -boottime_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -boottime_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_boottime_module_SOURCES) -CLEANFILES += $(nodist_boottime_module_SOURCES) -MOD_FILES += boottime.mod -MARKER_FILES += boottime.marker -CLEANFILES += boottime.marker - -boottime.marker: $(boottime_module_SOURCES) $(nodist_boottime_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(boottime_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif COND_ENABLE_BOOT_TIME_STATS -platform_PROGRAMS += adler32.module -MODULE_FILES += adler32.module$(EXEEXT) -adler32_module_SOURCES = lib/adler32.c ## platform sources -nodist_adler32_module_SOURCES = ## platform nodist sources -adler32_module_LDADD = -adler32_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -adler32_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -adler32_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -adler32_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -adler32_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_adler32_module_SOURCES) -CLEANFILES += $(nodist_adler32_module_SOURCES) -MOD_FILES += adler32.mod -MARKER_FILES += adler32.marker -CLEANFILES += adler32.marker - -adler32.marker: $(adler32_module_SOURCES) $(nodist_adler32_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(adler32_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += crc64.module -MODULE_FILES += crc64.module$(EXEEXT) -crc64_module_SOURCES = lib/crc64.c ## platform sources -nodist_crc64_module_SOURCES = ## platform nodist sources -crc64_module_LDADD = -crc64_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -crc64_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -crc64_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -crc64_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -crc64_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_crc64_module_SOURCES) -CLEANFILES += $(nodist_crc64_module_SOURCES) -MOD_FILES += crc64.mod -MARKER_FILES += crc64.marker -CLEANFILES += crc64.marker - -crc64.marker: $(crc64_module_SOURCES) $(nodist_crc64_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(crc64_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += mpi.module -MODULE_FILES += mpi.module$(EXEEXT) -mpi_module_SOURCES = lib/libgcrypt-grub/mpi/mpiutil.c lib/libgcrypt-grub/mpi/mpi-bit.c lib/libgcrypt-grub/mpi/mpi-add.c lib/libgcrypt-grub/mpi/mpi-mul.c lib/libgcrypt-grub/mpi/mpi-mod.c lib/libgcrypt-grub/mpi/mpi-gcd.c lib/libgcrypt-grub/mpi/mpi-div.c lib/libgcrypt-grub/mpi/mpi-cmp.c lib/libgcrypt-grub/mpi/mpi-inv.c lib/libgcrypt-grub/mpi/mpi-pow.c lib/libgcrypt-grub/mpi/mpi-mpow.c lib/libgcrypt-grub/mpi/mpih-lshift.c lib/libgcrypt-grub/mpi/mpih-mul.c lib/libgcrypt-grub/mpi/mpih-mul1.c lib/libgcrypt-grub/mpi/mpih-mul2.c lib/libgcrypt-grub/mpi/mpih-mul3.c lib/libgcrypt-grub/mpi/mpih-add1.c lib/libgcrypt-grub/mpi/mpih-sub1.c lib/libgcrypt-grub/mpi/mpih-div.c lib/libgcrypt-grub/mpi/mpicoder.c lib/libgcrypt-grub/mpi/mpih-rshift.c lib/libgcrypt-grub/mpi/mpi-inline.c lib/libgcrypt_wrap/mem.c ## platform sources -nodist_mpi_module_SOURCES = ## platform nodist sources -mpi_module_LDADD = -mpi_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) $(CFLAGS_GCRY) -Wno-redundant-decls -Wno-sign-compare -mpi_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -mpi_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) $(CPPFLAGS_GCRY) -mpi_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -mpi_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_mpi_module_SOURCES) -CLEANFILES += $(nodist_mpi_module_SOURCES) -MOD_FILES += mpi.mod -MARKER_FILES += mpi.marker -CLEANFILES += mpi.marker - -mpi.marker: $(mpi_module_SOURCES) $(nodist_mpi_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mpi_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += all_video.module -MODULE_FILES += all_video.module$(EXEEXT) -all_video_module_SOURCES = lib/fake_module.c ## platform sources -nodist_all_video_module_SOURCES = ## platform nodist sources -all_video_module_LDADD = -all_video_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -all_video_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -all_video_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -all_video_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -all_video_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_all_video_module_SOURCES) -CLEANFILES += $(nodist_all_video_module_SOURCES) -MOD_FILES += all_video.mod -MARKER_FILES += all_video.marker -CLEANFILES += all_video.marker - -all_video.marker: $(all_video_module_SOURCES) $(nodist_all_video_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(all_video_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -if COND_i386_pc -platform_PROGRAMS += gdb.module -MODULE_FILES += gdb.module$(EXEEXT) -gdb_module_SOURCES = gdb/i386/idt.c gdb/i386/machdep.S gdb/i386/signal.c gdb/cstub.c gdb/gdb.c ## platform sources -nodist_gdb_module_SOURCES = ## platform nodist sources -gdb_module_LDADD = -gdb_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -gdb_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -gdb_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -gdb_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -gdb_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_gdb_module_SOURCES) -CLEANFILES += $(nodist_gdb_module_SOURCES) -MOD_FILES += gdb.mod -MARKER_FILES += gdb.marker -CLEANFILES += gdb.marker - -gdb.marker: $(gdb_module_SOURCES) $(nodist_gdb_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gdb_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_efi -platform_PROGRAMS += gdb.module -MODULE_FILES += gdb.module$(EXEEXT) -gdb_module_SOURCES = gdb/i386/idt.c gdb/i386/machdep.S gdb/i386/signal.c gdb/cstub.c gdb/gdb.c ## platform sources -nodist_gdb_module_SOURCES = ## platform nodist sources -gdb_module_LDADD = -gdb_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -gdb_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -gdb_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -gdb_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -gdb_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_gdb_module_SOURCES) -CLEANFILES += $(nodist_gdb_module_SOURCES) -MOD_FILES += gdb.mod -MARKER_FILES += gdb.marker -CLEANFILES += gdb.marker - -gdb.marker: $(gdb_module_SOURCES) $(nodist_gdb_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gdb_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_qemu -platform_PROGRAMS += gdb.module -MODULE_FILES += gdb.module$(EXEEXT) -gdb_module_SOURCES = gdb/i386/idt.c gdb/i386/machdep.S gdb/i386/signal.c gdb/cstub.c gdb/gdb.c ## platform sources -nodist_gdb_module_SOURCES = ## platform nodist sources -gdb_module_LDADD = -gdb_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -gdb_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -gdb_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -gdb_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -gdb_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_gdb_module_SOURCES) -CLEANFILES += $(nodist_gdb_module_SOURCES) -MOD_FILES += gdb.mod -MARKER_FILES += gdb.marker -CLEANFILES += gdb.marker - -gdb.marker: $(gdb_module_SOURCES) $(nodist_gdb_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gdb_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_coreboot -platform_PROGRAMS += gdb.module -MODULE_FILES += gdb.module$(EXEEXT) -gdb_module_SOURCES = gdb/i386/idt.c gdb/i386/machdep.S gdb/i386/signal.c gdb/cstub.c gdb/gdb.c ## platform sources -nodist_gdb_module_SOURCES = ## platform nodist sources -gdb_module_LDADD = -gdb_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -gdb_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -gdb_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -gdb_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -gdb_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_gdb_module_SOURCES) -CLEANFILES += $(nodist_gdb_module_SOURCES) -MOD_FILES += gdb.mod -MARKER_FILES += gdb.marker -CLEANFILES += gdb.marker - -gdb.marker: $(gdb_module_SOURCES) $(nodist_gdb_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gdb_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_multiboot -platform_PROGRAMS += gdb.module -MODULE_FILES += gdb.module$(EXEEXT) -gdb_module_SOURCES = gdb/i386/idt.c gdb/i386/machdep.S gdb/i386/signal.c gdb/cstub.c gdb/gdb.c ## platform sources -nodist_gdb_module_SOURCES = ## platform nodist sources -gdb_module_LDADD = -gdb_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -gdb_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -gdb_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -gdb_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -gdb_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_gdb_module_SOURCES) -CLEANFILES += $(nodist_gdb_module_SOURCES) -MOD_FILES += gdb.mod -MARKER_FILES += gdb.marker -CLEANFILES += gdb.marker - -gdb.marker: $(gdb_module_SOURCES) $(nodist_gdb_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gdb_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_ieee1275 -platform_PROGRAMS += gdb.module -MODULE_FILES += gdb.module$(EXEEXT) -gdb_module_SOURCES = gdb/i386/idt.c gdb/i386/machdep.S gdb/i386/signal.c gdb/cstub.c gdb/gdb.c ## platform sources -nodist_gdb_module_SOURCES = ## platform nodist sources -gdb_module_LDADD = -gdb_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -gdb_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -gdb_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -gdb_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -gdb_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_gdb_module_SOURCES) -CLEANFILES += $(nodist_gdb_module_SOURCES) -MOD_FILES += gdb.mod -MARKER_FILES += gdb.marker -CLEANFILES += gdb.marker - -gdb.marker: $(gdb_module_SOURCES) $(nodist_gdb_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gdb_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif -platform_PROGRAMS += testspeed.module -MODULE_FILES += testspeed.module$(EXEEXT) -testspeed_module_SOURCES = commands/testspeed.c ## platform sources -nodist_testspeed_module_SOURCES = ## platform nodist sources -testspeed_module_LDADD = -testspeed_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -testspeed_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -testspeed_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -testspeed_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -testspeed_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_testspeed_module_SOURCES) -CLEANFILES += $(nodist_testspeed_module_SOURCES) -MOD_FILES += testspeed.mod -MARKER_FILES += testspeed.marker -CLEANFILES += testspeed.marker - -testspeed.marker: $(testspeed_module_SOURCES) $(nodist_testspeed_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(testspeed_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -if COND_x86_64_efi -platform_PROGRAMS += tpm.module -MODULE_FILES += tpm.module$(EXEEXT) -tpm_module_SOURCES = commands/efi/tpm.c commands/tpm.c ## platform sources -nodist_tpm_module_SOURCES = ## platform nodist sources -tpm_module_LDADD = -tpm_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -tpm_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -tpm_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -tpm_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -tpm_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_tpm_module_SOURCES) -CLEANFILES += $(nodist_tpm_module_SOURCES) -MOD_FILES += tpm.mod -MARKER_FILES += tpm.marker -CLEANFILES += tpm.marker - -tpm.marker: $(tpm_module_SOURCES) $(nodist_tpm_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(tpm_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif -platform_PROGRAMS += tr.module -MODULE_FILES += tr.module$(EXEEXT) -tr_module_SOURCES = commands/tr.c ## platform sources -nodist_tr_module_SOURCES = ## platform nodist sources -tr_module_LDADD = -tr_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -tr_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -tr_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -tr_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -tr_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_tr_module_SOURCES) -CLEANFILES += $(nodist_tr_module_SOURCES) -MOD_FILES += tr.mod -MARKER_FILES += tr.marker -CLEANFILES += tr.marker - -tr.marker: $(tr_module_SOURCES) $(nodist_tr_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(tr_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += progress.module -MODULE_FILES += progress.module$(EXEEXT) -progress_module_SOURCES = lib/progress.c ## platform sources -nodist_progress_module_SOURCES = ## platform nodist sources -progress_module_LDADD = -progress_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -progress_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -progress_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -progress_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -progress_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_progress_module_SOURCES) -CLEANFILES += $(nodist_progress_module_SOURCES) -MOD_FILES += progress.mod -MARKER_FILES += progress.marker -CLEANFILES += progress.marker - -progress.marker: $(progress_module_SOURCES) $(nodist_progress_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(progress_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += file.module -MODULE_FILES += file.module$(EXEEXT) -file_module_SOURCES = commands/file.c commands/file32.c commands/file64.c loader/i386/xen_file.c loader/i386/xen_file32.c loader/i386/xen_file64.c ## platform sources -nodist_file_module_SOURCES = ## platform nodist sources -file_module_LDADD = -file_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -file_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -file_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -file_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -file_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += commands/fileXX.c loader/i386/xen_fileXX.c -BUILT_SOURCES += $(nodist_file_module_SOURCES) -CLEANFILES += $(nodist_file_module_SOURCES) -MOD_FILES += file.mod -MARKER_FILES += file.marker -CLEANFILES += file.marker - -file.marker: $(file_module_SOURCES) $(nodist_file_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(file_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -if COND_i386_pc -platform_PROGRAMS += rdmsr.module -MODULE_FILES += rdmsr.module$(EXEEXT) -rdmsr_module_SOURCES = commands/i386/rdmsr.c ## platform sources -nodist_rdmsr_module_SOURCES = ## platform nodist sources -rdmsr_module_LDADD = -rdmsr_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -rdmsr_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -rdmsr_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -rdmsr_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -rdmsr_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_rdmsr_module_SOURCES) -CLEANFILES += $(nodist_rdmsr_module_SOURCES) -MOD_FILES += rdmsr.mod -MARKER_FILES += rdmsr.marker -CLEANFILES += rdmsr.marker - -rdmsr.marker: $(rdmsr_module_SOURCES) $(nodist_rdmsr_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(rdmsr_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_efi -platform_PROGRAMS += rdmsr.module -MODULE_FILES += rdmsr.module$(EXEEXT) -rdmsr_module_SOURCES = commands/i386/rdmsr.c ## platform sources -nodist_rdmsr_module_SOURCES = ## platform nodist sources -rdmsr_module_LDADD = -rdmsr_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -rdmsr_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -rdmsr_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -rdmsr_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -rdmsr_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_rdmsr_module_SOURCES) -CLEANFILES += $(nodist_rdmsr_module_SOURCES) -MOD_FILES += rdmsr.mod -MARKER_FILES += rdmsr.marker -CLEANFILES += rdmsr.marker - -rdmsr.marker: $(rdmsr_module_SOURCES) $(nodist_rdmsr_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(rdmsr_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_qemu -platform_PROGRAMS += rdmsr.module -MODULE_FILES += rdmsr.module$(EXEEXT) -rdmsr_module_SOURCES = commands/i386/rdmsr.c ## platform sources -nodist_rdmsr_module_SOURCES = ## platform nodist sources -rdmsr_module_LDADD = -rdmsr_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -rdmsr_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -rdmsr_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -rdmsr_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -rdmsr_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_rdmsr_module_SOURCES) -CLEANFILES += $(nodist_rdmsr_module_SOURCES) -MOD_FILES += rdmsr.mod -MARKER_FILES += rdmsr.marker -CLEANFILES += rdmsr.marker - -rdmsr.marker: $(rdmsr_module_SOURCES) $(nodist_rdmsr_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(rdmsr_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_coreboot -platform_PROGRAMS += rdmsr.module -MODULE_FILES += rdmsr.module$(EXEEXT) -rdmsr_module_SOURCES = commands/i386/rdmsr.c ## platform sources -nodist_rdmsr_module_SOURCES = ## platform nodist sources -rdmsr_module_LDADD = -rdmsr_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -rdmsr_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -rdmsr_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -rdmsr_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -rdmsr_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_rdmsr_module_SOURCES) -CLEANFILES += $(nodist_rdmsr_module_SOURCES) -MOD_FILES += rdmsr.mod -MARKER_FILES += rdmsr.marker -CLEANFILES += rdmsr.marker - -rdmsr.marker: $(rdmsr_module_SOURCES) $(nodist_rdmsr_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(rdmsr_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_multiboot -platform_PROGRAMS += rdmsr.module -MODULE_FILES += rdmsr.module$(EXEEXT) -rdmsr_module_SOURCES = commands/i386/rdmsr.c ## platform sources -nodist_rdmsr_module_SOURCES = ## platform nodist sources -rdmsr_module_LDADD = -rdmsr_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -rdmsr_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -rdmsr_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -rdmsr_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -rdmsr_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_rdmsr_module_SOURCES) -CLEANFILES += $(nodist_rdmsr_module_SOURCES) -MOD_FILES += rdmsr.mod -MARKER_FILES += rdmsr.marker -CLEANFILES += rdmsr.marker - -rdmsr.marker: $(rdmsr_module_SOURCES) $(nodist_rdmsr_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(rdmsr_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_ieee1275 -platform_PROGRAMS += rdmsr.module -MODULE_FILES += rdmsr.module$(EXEEXT) -rdmsr_module_SOURCES = commands/i386/rdmsr.c ## platform sources -nodist_rdmsr_module_SOURCES = ## platform nodist sources -rdmsr_module_LDADD = -rdmsr_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -rdmsr_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -rdmsr_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -rdmsr_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -rdmsr_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_rdmsr_module_SOURCES) -CLEANFILES += $(nodist_rdmsr_module_SOURCES) -MOD_FILES += rdmsr.mod -MARKER_FILES += rdmsr.marker -CLEANFILES += rdmsr.marker - -rdmsr.marker: $(rdmsr_module_SOURCES) $(nodist_rdmsr_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(rdmsr_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_x86_64_efi -platform_PROGRAMS += rdmsr.module -MODULE_FILES += rdmsr.module$(EXEEXT) -rdmsr_module_SOURCES = commands/i386/rdmsr.c ## platform sources -nodist_rdmsr_module_SOURCES = ## platform nodist sources -rdmsr_module_LDADD = -rdmsr_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -rdmsr_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -rdmsr_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -rdmsr_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -rdmsr_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_rdmsr_module_SOURCES) -CLEANFILES += $(nodist_rdmsr_module_SOURCES) -MOD_FILES += rdmsr.mod -MARKER_FILES += rdmsr.marker -CLEANFILES += rdmsr.marker - -rdmsr.marker: $(rdmsr_module_SOURCES) $(nodist_rdmsr_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(rdmsr_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_pc -platform_PROGRAMS += wrmsr.module -MODULE_FILES += wrmsr.module$(EXEEXT) -wrmsr_module_SOURCES = commands/i386/wrmsr.c ## platform sources -nodist_wrmsr_module_SOURCES = ## platform nodist sources -wrmsr_module_LDADD = -wrmsr_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -wrmsr_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -wrmsr_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -wrmsr_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -wrmsr_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_wrmsr_module_SOURCES) -CLEANFILES += $(nodist_wrmsr_module_SOURCES) -MOD_FILES += wrmsr.mod -MARKER_FILES += wrmsr.marker -CLEANFILES += wrmsr.marker - -wrmsr.marker: $(wrmsr_module_SOURCES) $(nodist_wrmsr_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(wrmsr_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_efi -platform_PROGRAMS += wrmsr.module -MODULE_FILES += wrmsr.module$(EXEEXT) -wrmsr_module_SOURCES = commands/i386/wrmsr.c ## platform sources -nodist_wrmsr_module_SOURCES = ## platform nodist sources -wrmsr_module_LDADD = -wrmsr_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -wrmsr_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -wrmsr_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -wrmsr_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -wrmsr_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_wrmsr_module_SOURCES) -CLEANFILES += $(nodist_wrmsr_module_SOURCES) -MOD_FILES += wrmsr.mod -MARKER_FILES += wrmsr.marker -CLEANFILES += wrmsr.marker - -wrmsr.marker: $(wrmsr_module_SOURCES) $(nodist_wrmsr_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(wrmsr_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_qemu -platform_PROGRAMS += wrmsr.module -MODULE_FILES += wrmsr.module$(EXEEXT) -wrmsr_module_SOURCES = commands/i386/wrmsr.c ## platform sources -nodist_wrmsr_module_SOURCES = ## platform nodist sources -wrmsr_module_LDADD = -wrmsr_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -wrmsr_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -wrmsr_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -wrmsr_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -wrmsr_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_wrmsr_module_SOURCES) -CLEANFILES += $(nodist_wrmsr_module_SOURCES) -MOD_FILES += wrmsr.mod -MARKER_FILES += wrmsr.marker -CLEANFILES += wrmsr.marker - -wrmsr.marker: $(wrmsr_module_SOURCES) $(nodist_wrmsr_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(wrmsr_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_coreboot -platform_PROGRAMS += wrmsr.module -MODULE_FILES += wrmsr.module$(EXEEXT) -wrmsr_module_SOURCES = commands/i386/wrmsr.c ## platform sources -nodist_wrmsr_module_SOURCES = ## platform nodist sources -wrmsr_module_LDADD = -wrmsr_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -wrmsr_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -wrmsr_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -wrmsr_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -wrmsr_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_wrmsr_module_SOURCES) -CLEANFILES += $(nodist_wrmsr_module_SOURCES) -MOD_FILES += wrmsr.mod -MARKER_FILES += wrmsr.marker -CLEANFILES += wrmsr.marker - -wrmsr.marker: $(wrmsr_module_SOURCES) $(nodist_wrmsr_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(wrmsr_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_multiboot -platform_PROGRAMS += wrmsr.module -MODULE_FILES += wrmsr.module$(EXEEXT) -wrmsr_module_SOURCES = commands/i386/wrmsr.c ## platform sources -nodist_wrmsr_module_SOURCES = ## platform nodist sources -wrmsr_module_LDADD = -wrmsr_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -wrmsr_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -wrmsr_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -wrmsr_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -wrmsr_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_wrmsr_module_SOURCES) -CLEANFILES += $(nodist_wrmsr_module_SOURCES) -MOD_FILES += wrmsr.mod -MARKER_FILES += wrmsr.marker -CLEANFILES += wrmsr.marker - -wrmsr.marker: $(wrmsr_module_SOURCES) $(nodist_wrmsr_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(wrmsr_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_i386_ieee1275 -platform_PROGRAMS += wrmsr.module -MODULE_FILES += wrmsr.module$(EXEEXT) -wrmsr_module_SOURCES = commands/i386/wrmsr.c ## platform sources -nodist_wrmsr_module_SOURCES = ## platform nodist sources -wrmsr_module_LDADD = -wrmsr_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -wrmsr_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -wrmsr_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -wrmsr_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -wrmsr_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_wrmsr_module_SOURCES) -CLEANFILES += $(nodist_wrmsr_module_SOURCES) -MOD_FILES += wrmsr.mod -MARKER_FILES += wrmsr.marker -CLEANFILES += wrmsr.marker - -wrmsr.marker: $(wrmsr_module_SOURCES) $(nodist_wrmsr_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(wrmsr_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif - -if COND_x86_64_efi -platform_PROGRAMS += wrmsr.module -MODULE_FILES += wrmsr.module$(EXEEXT) -wrmsr_module_SOURCES = commands/i386/wrmsr.c ## platform sources -nodist_wrmsr_module_SOURCES = ## platform nodist sources -wrmsr_module_LDADD = -wrmsr_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -wrmsr_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -wrmsr_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -wrmsr_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -wrmsr_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_wrmsr_module_SOURCES) -CLEANFILES += $(nodist_wrmsr_module_SOURCES) -MOD_FILES += wrmsr.mod -MARKER_FILES += wrmsr.marker -CLEANFILES += wrmsr.marker - -wrmsr.marker: $(wrmsr_module_SOURCES) $(nodist_wrmsr_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(wrmsr_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -endif -platform_PROGRAMS += gcry_arcfour.module -MODULE_FILES += gcry_arcfour.module$(EXEEXT) -gcry_arcfour_module_SOURCES = lib/libgcrypt-grub/cipher/arcfour.c ## platform sources -nodist_gcry_arcfour_module_SOURCES = ## platform nodist sources -gcry_arcfour_module_LDADD = -gcry_arcfour_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) $(CFLAGS_GCRY) -gcry_arcfour_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -gcry_arcfour_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) $(CPPFLAGS_GCRY) -gcry_arcfour_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -gcry_arcfour_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_gcry_arcfour_module_SOURCES) -CLEANFILES += $(nodist_gcry_arcfour_module_SOURCES) -MOD_FILES += gcry_arcfour.mod -MARKER_FILES += gcry_arcfour.marker -CLEANFILES += gcry_arcfour.marker - -gcry_arcfour.marker: $(gcry_arcfour_module_SOURCES) $(nodist_gcry_arcfour_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gcry_arcfour_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += gcry_blowfish.module -MODULE_FILES += gcry_blowfish.module$(EXEEXT) -gcry_blowfish_module_SOURCES = lib/libgcrypt-grub/cipher/blowfish.c ## platform sources -nodist_gcry_blowfish_module_SOURCES = ## platform nodist sources -gcry_blowfish_module_LDADD = -gcry_blowfish_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) $(CFLAGS_GCRY) -gcry_blowfish_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -gcry_blowfish_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) $(CPPFLAGS_GCRY) -gcry_blowfish_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -gcry_blowfish_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_gcry_blowfish_module_SOURCES) -CLEANFILES += $(nodist_gcry_blowfish_module_SOURCES) -MOD_FILES += gcry_blowfish.mod -MARKER_FILES += gcry_blowfish.marker -CLEANFILES += gcry_blowfish.marker - -gcry_blowfish.marker: $(gcry_blowfish_module_SOURCES) $(nodist_gcry_blowfish_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gcry_blowfish_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += gcry_camellia.module -MODULE_FILES += gcry_camellia.module$(EXEEXT) -gcry_camellia_module_SOURCES = lib/libgcrypt-grub/cipher/camellia-glue.c lib/libgcrypt-grub/cipher/camellia.c ## platform sources -nodist_gcry_camellia_module_SOURCES = ## platform nodist sources -gcry_camellia_module_LDADD = -gcry_camellia_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) $(CFLAGS_GCRY) -gcry_camellia_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -gcry_camellia_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) $(CPPFLAGS_GCRY) -gcry_camellia_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -gcry_camellia_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_gcry_camellia_module_SOURCES) -CLEANFILES += $(nodist_gcry_camellia_module_SOURCES) -MOD_FILES += gcry_camellia.mod -MARKER_FILES += gcry_camellia.marker -CLEANFILES += gcry_camellia.marker - -gcry_camellia.marker: $(gcry_camellia_module_SOURCES) $(nodist_gcry_camellia_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gcry_camellia_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += gcry_cast5.module -MODULE_FILES += gcry_cast5.module$(EXEEXT) -gcry_cast5_module_SOURCES = lib/libgcrypt-grub/cipher/cast5.c ## platform sources -nodist_gcry_cast5_module_SOURCES = ## platform nodist sources -gcry_cast5_module_LDADD = -gcry_cast5_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) $(CFLAGS_GCRY) -gcry_cast5_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -gcry_cast5_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) $(CPPFLAGS_GCRY) -gcry_cast5_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -gcry_cast5_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_gcry_cast5_module_SOURCES) -CLEANFILES += $(nodist_gcry_cast5_module_SOURCES) -MOD_FILES += gcry_cast5.mod -MARKER_FILES += gcry_cast5.marker -CLEANFILES += gcry_cast5.marker - -gcry_cast5.marker: $(gcry_cast5_module_SOURCES) $(nodist_gcry_cast5_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gcry_cast5_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += gcry_crc.module -MODULE_FILES += gcry_crc.module$(EXEEXT) -gcry_crc_module_SOURCES = lib/libgcrypt-grub/cipher/crc.c ## platform sources -nodist_gcry_crc_module_SOURCES = ## platform nodist sources -gcry_crc_module_LDADD = -gcry_crc_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) $(CFLAGS_GCRY) -gcry_crc_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -gcry_crc_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) $(CPPFLAGS_GCRY) -gcry_crc_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -gcry_crc_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_gcry_crc_module_SOURCES) -CLEANFILES += $(nodist_gcry_crc_module_SOURCES) -MOD_FILES += gcry_crc.mod -MARKER_FILES += gcry_crc.marker -CLEANFILES += gcry_crc.marker - -gcry_crc.marker: $(gcry_crc_module_SOURCES) $(nodist_gcry_crc_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gcry_crc_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += gcry_des.module -MODULE_FILES += gcry_des.module$(EXEEXT) -gcry_des_module_SOURCES = lib/libgcrypt-grub/cipher/des.c ## platform sources -nodist_gcry_des_module_SOURCES = ## platform nodist sources -gcry_des_module_LDADD = -gcry_des_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) $(CFLAGS_GCRY) -gcry_des_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -gcry_des_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) $(CPPFLAGS_GCRY) -gcry_des_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -gcry_des_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_gcry_des_module_SOURCES) -CLEANFILES += $(nodist_gcry_des_module_SOURCES) -MOD_FILES += gcry_des.mod -MARKER_FILES += gcry_des.marker -CLEANFILES += gcry_des.marker - -gcry_des.marker: $(gcry_des_module_SOURCES) $(nodist_gcry_des_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gcry_des_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += gcry_dsa.module -MODULE_FILES += gcry_dsa.module$(EXEEXT) -gcry_dsa_module_SOURCES = lib/libgcrypt-grub/cipher/dsa.c ## platform sources -nodist_gcry_dsa_module_SOURCES = ## platform nodist sources -gcry_dsa_module_LDADD = -gcry_dsa_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) $(CFLAGS_GCRY) -gcry_dsa_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -gcry_dsa_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) $(CPPFLAGS_GCRY) -gcry_dsa_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -gcry_dsa_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_gcry_dsa_module_SOURCES) -CLEANFILES += $(nodist_gcry_dsa_module_SOURCES) -MOD_FILES += gcry_dsa.mod -MARKER_FILES += gcry_dsa.marker -CLEANFILES += gcry_dsa.marker - -gcry_dsa.marker: $(gcry_dsa_module_SOURCES) $(nodist_gcry_dsa_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gcry_dsa_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += gcry_idea.module -MODULE_FILES += gcry_idea.module$(EXEEXT) -gcry_idea_module_SOURCES = lib/libgcrypt-grub/cipher/idea.c ## platform sources -nodist_gcry_idea_module_SOURCES = ## platform nodist sources -gcry_idea_module_LDADD = -gcry_idea_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) $(CFLAGS_GCRY) -gcry_idea_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -gcry_idea_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) $(CPPFLAGS_GCRY) -gcry_idea_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -gcry_idea_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_gcry_idea_module_SOURCES) -CLEANFILES += $(nodist_gcry_idea_module_SOURCES) -MOD_FILES += gcry_idea.mod -MARKER_FILES += gcry_idea.marker -CLEANFILES += gcry_idea.marker - -gcry_idea.marker: $(gcry_idea_module_SOURCES) $(nodist_gcry_idea_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gcry_idea_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += gcry_md4.module -MODULE_FILES += gcry_md4.module$(EXEEXT) -gcry_md4_module_SOURCES = lib/libgcrypt-grub/cipher/md4.c ## platform sources -nodist_gcry_md4_module_SOURCES = ## platform nodist sources -gcry_md4_module_LDADD = -gcry_md4_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) $(CFLAGS_GCRY) -Wno-cast-align -gcry_md4_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -gcry_md4_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) $(CPPFLAGS_GCRY) -gcry_md4_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -gcry_md4_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_gcry_md4_module_SOURCES) -CLEANFILES += $(nodist_gcry_md4_module_SOURCES) -MOD_FILES += gcry_md4.mod -MARKER_FILES += gcry_md4.marker -CLEANFILES += gcry_md4.marker - -gcry_md4.marker: $(gcry_md4_module_SOURCES) $(nodist_gcry_md4_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gcry_md4_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += gcry_md5.module -MODULE_FILES += gcry_md5.module$(EXEEXT) -gcry_md5_module_SOURCES = lib/libgcrypt-grub/cipher/md5.c ## platform sources -nodist_gcry_md5_module_SOURCES = ## platform nodist sources -gcry_md5_module_LDADD = -gcry_md5_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) $(CFLAGS_GCRY) -Wno-cast-align -gcry_md5_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -gcry_md5_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) $(CPPFLAGS_GCRY) -gcry_md5_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -gcry_md5_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_gcry_md5_module_SOURCES) -CLEANFILES += $(nodist_gcry_md5_module_SOURCES) -MOD_FILES += gcry_md5.mod -MARKER_FILES += gcry_md5.marker -CLEANFILES += gcry_md5.marker - -gcry_md5.marker: $(gcry_md5_module_SOURCES) $(nodist_gcry_md5_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gcry_md5_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += gcry_rfc2268.module -MODULE_FILES += gcry_rfc2268.module$(EXEEXT) -gcry_rfc2268_module_SOURCES = lib/libgcrypt-grub/cipher/rfc2268.c ## platform sources -nodist_gcry_rfc2268_module_SOURCES = ## platform nodist sources -gcry_rfc2268_module_LDADD = -gcry_rfc2268_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) $(CFLAGS_GCRY) -gcry_rfc2268_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -gcry_rfc2268_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) $(CPPFLAGS_GCRY) -gcry_rfc2268_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -gcry_rfc2268_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_gcry_rfc2268_module_SOURCES) -CLEANFILES += $(nodist_gcry_rfc2268_module_SOURCES) -MOD_FILES += gcry_rfc2268.mod -MARKER_FILES += gcry_rfc2268.marker -CLEANFILES += gcry_rfc2268.marker - -gcry_rfc2268.marker: $(gcry_rfc2268_module_SOURCES) $(nodist_gcry_rfc2268_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gcry_rfc2268_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += gcry_rijndael.module -MODULE_FILES += gcry_rijndael.module$(EXEEXT) -gcry_rijndael_module_SOURCES = lib/libgcrypt-grub/cipher/rijndael.c ## platform sources -nodist_gcry_rijndael_module_SOURCES = ## platform nodist sources -gcry_rijndael_module_LDADD = -gcry_rijndael_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) $(CFLAGS_GCRY) -Wno-cast-align -gcry_rijndael_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -gcry_rijndael_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) $(CPPFLAGS_GCRY) -gcry_rijndael_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -gcry_rijndael_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_gcry_rijndael_module_SOURCES) -CLEANFILES += $(nodist_gcry_rijndael_module_SOURCES) -MOD_FILES += gcry_rijndael.mod -MARKER_FILES += gcry_rijndael.marker -CLEANFILES += gcry_rijndael.marker - -gcry_rijndael.marker: $(gcry_rijndael_module_SOURCES) $(nodist_gcry_rijndael_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gcry_rijndael_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += gcry_rmd160.module -MODULE_FILES += gcry_rmd160.module$(EXEEXT) -gcry_rmd160_module_SOURCES = lib/libgcrypt-grub/cipher/rmd160.c ## platform sources -nodist_gcry_rmd160_module_SOURCES = ## platform nodist sources -gcry_rmd160_module_LDADD = -gcry_rmd160_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) $(CFLAGS_GCRY) -Wno-cast-align -gcry_rmd160_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -gcry_rmd160_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) $(CPPFLAGS_GCRY) -gcry_rmd160_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -gcry_rmd160_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_gcry_rmd160_module_SOURCES) -CLEANFILES += $(nodist_gcry_rmd160_module_SOURCES) -MOD_FILES += gcry_rmd160.mod -MARKER_FILES += gcry_rmd160.marker -CLEANFILES += gcry_rmd160.marker - -gcry_rmd160.marker: $(gcry_rmd160_module_SOURCES) $(nodist_gcry_rmd160_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gcry_rmd160_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += gcry_rsa.module -MODULE_FILES += gcry_rsa.module$(EXEEXT) -gcry_rsa_module_SOURCES = lib/libgcrypt-grub/cipher/rsa.c ## platform sources -nodist_gcry_rsa_module_SOURCES = ## platform nodist sources -gcry_rsa_module_LDADD = -gcry_rsa_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) $(CFLAGS_GCRY) -gcry_rsa_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -gcry_rsa_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) $(CPPFLAGS_GCRY) -gcry_rsa_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -gcry_rsa_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_gcry_rsa_module_SOURCES) -CLEANFILES += $(nodist_gcry_rsa_module_SOURCES) -MOD_FILES += gcry_rsa.mod -MARKER_FILES += gcry_rsa.marker -CLEANFILES += gcry_rsa.marker - -gcry_rsa.marker: $(gcry_rsa_module_SOURCES) $(nodist_gcry_rsa_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gcry_rsa_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += gcry_seed.module -MODULE_FILES += gcry_seed.module$(EXEEXT) -gcry_seed_module_SOURCES = lib/libgcrypt-grub/cipher/seed.c ## platform sources -nodist_gcry_seed_module_SOURCES = ## platform nodist sources -gcry_seed_module_LDADD = -gcry_seed_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) $(CFLAGS_GCRY) -gcry_seed_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -gcry_seed_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) $(CPPFLAGS_GCRY) -gcry_seed_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -gcry_seed_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_gcry_seed_module_SOURCES) -CLEANFILES += $(nodist_gcry_seed_module_SOURCES) -MOD_FILES += gcry_seed.mod -MARKER_FILES += gcry_seed.marker -CLEANFILES += gcry_seed.marker - -gcry_seed.marker: $(gcry_seed_module_SOURCES) $(nodist_gcry_seed_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gcry_seed_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += gcry_serpent.module -MODULE_FILES += gcry_serpent.module$(EXEEXT) -gcry_serpent_module_SOURCES = lib/libgcrypt-grub/cipher/serpent.c ## platform sources -nodist_gcry_serpent_module_SOURCES = ## platform nodist sources -gcry_serpent_module_LDADD = -gcry_serpent_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) $(CFLAGS_GCRY) -gcry_serpent_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -gcry_serpent_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) $(CPPFLAGS_GCRY) -gcry_serpent_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -gcry_serpent_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_gcry_serpent_module_SOURCES) -CLEANFILES += $(nodist_gcry_serpent_module_SOURCES) -MOD_FILES += gcry_serpent.mod -MARKER_FILES += gcry_serpent.marker -CLEANFILES += gcry_serpent.marker - -gcry_serpent.marker: $(gcry_serpent_module_SOURCES) $(nodist_gcry_serpent_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gcry_serpent_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += gcry_sha1.module -MODULE_FILES += gcry_sha1.module$(EXEEXT) -gcry_sha1_module_SOURCES = lib/libgcrypt-grub/cipher/sha1.c ## platform sources -nodist_gcry_sha1_module_SOURCES = ## platform nodist sources -gcry_sha1_module_LDADD = -gcry_sha1_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) $(CFLAGS_GCRY) -Wno-cast-align -gcry_sha1_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -gcry_sha1_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) $(CPPFLAGS_GCRY) -gcry_sha1_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -gcry_sha1_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_gcry_sha1_module_SOURCES) -CLEANFILES += $(nodist_gcry_sha1_module_SOURCES) -MOD_FILES += gcry_sha1.mod -MARKER_FILES += gcry_sha1.marker -CLEANFILES += gcry_sha1.marker - -gcry_sha1.marker: $(gcry_sha1_module_SOURCES) $(nodist_gcry_sha1_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gcry_sha1_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += gcry_sha256.module -MODULE_FILES += gcry_sha256.module$(EXEEXT) -gcry_sha256_module_SOURCES = lib/libgcrypt-grub/cipher/sha256.c ## platform sources -nodist_gcry_sha256_module_SOURCES = ## platform nodist sources -gcry_sha256_module_LDADD = -gcry_sha256_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) $(CFLAGS_GCRY) -Wno-cast-align -gcry_sha256_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -gcry_sha256_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) $(CPPFLAGS_GCRY) -gcry_sha256_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -gcry_sha256_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_gcry_sha256_module_SOURCES) -CLEANFILES += $(nodist_gcry_sha256_module_SOURCES) -MOD_FILES += gcry_sha256.mod -MARKER_FILES += gcry_sha256.marker -CLEANFILES += gcry_sha256.marker - -gcry_sha256.marker: $(gcry_sha256_module_SOURCES) $(nodist_gcry_sha256_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gcry_sha256_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += gcry_sha512.module -MODULE_FILES += gcry_sha512.module$(EXEEXT) -gcry_sha512_module_SOURCES = lib/libgcrypt-grub/cipher/sha512.c ## platform sources -nodist_gcry_sha512_module_SOURCES = ## platform nodist sources -gcry_sha512_module_LDADD = -gcry_sha512_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) $(CFLAGS_GCRY) -Wno-cast-align -gcry_sha512_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -gcry_sha512_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) $(CPPFLAGS_GCRY) -gcry_sha512_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -gcry_sha512_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_gcry_sha512_module_SOURCES) -CLEANFILES += $(nodist_gcry_sha512_module_SOURCES) -MOD_FILES += gcry_sha512.mod -MARKER_FILES += gcry_sha512.marker -CLEANFILES += gcry_sha512.marker - -gcry_sha512.marker: $(gcry_sha512_module_SOURCES) $(nodist_gcry_sha512_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gcry_sha512_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += gcry_tiger.module -MODULE_FILES += gcry_tiger.module$(EXEEXT) -gcry_tiger_module_SOURCES = lib/libgcrypt-grub/cipher/tiger.c ## platform sources -nodist_gcry_tiger_module_SOURCES = ## platform nodist sources -gcry_tiger_module_LDADD = -gcry_tiger_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) $(CFLAGS_GCRY) -Wno-cast-align -gcry_tiger_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -gcry_tiger_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) $(CPPFLAGS_GCRY) -gcry_tiger_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -gcry_tiger_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_gcry_tiger_module_SOURCES) -CLEANFILES += $(nodist_gcry_tiger_module_SOURCES) -MOD_FILES += gcry_tiger.mod -MARKER_FILES += gcry_tiger.marker -CLEANFILES += gcry_tiger.marker - -gcry_tiger.marker: $(gcry_tiger_module_SOURCES) $(nodist_gcry_tiger_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gcry_tiger_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += gcry_twofish.module -MODULE_FILES += gcry_twofish.module$(EXEEXT) -gcry_twofish_module_SOURCES = lib/libgcrypt-grub/cipher/twofish.c ## platform sources -nodist_gcry_twofish_module_SOURCES = ## platform nodist sources -gcry_twofish_module_LDADD = -gcry_twofish_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) $(CFLAGS_GCRY) -gcry_twofish_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -gcry_twofish_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) $(CPPFLAGS_GCRY) -gcry_twofish_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -gcry_twofish_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_gcry_twofish_module_SOURCES) -CLEANFILES += $(nodist_gcry_twofish_module_SOURCES) -MOD_FILES += gcry_twofish.mod -MARKER_FILES += gcry_twofish.marker -CLEANFILES += gcry_twofish.marker - -gcry_twofish.marker: $(gcry_twofish_module_SOURCES) $(nodist_gcry_twofish_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gcry_twofish_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new -platform_PROGRAMS += gcry_whirlpool.module -MODULE_FILES += gcry_whirlpool.module$(EXEEXT) -gcry_whirlpool_module_SOURCES = lib/libgcrypt-grub/cipher/whirlpool.c ## platform sources -nodist_gcry_whirlpool_module_SOURCES = ## platform nodist sources -gcry_whirlpool_module_LDADD = -gcry_whirlpool_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) $(CFLAGS_GCRY) -gcry_whirlpool_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -gcry_whirlpool_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) $(CPPFLAGS_GCRY) -gcry_whirlpool_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -gcry_whirlpool_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_gcry_whirlpool_module_SOURCES) -CLEANFILES += $(nodist_gcry_whirlpool_module_SOURCES) -MOD_FILES += gcry_whirlpool.mod -MARKER_FILES += gcry_whirlpool.marker -CLEANFILES += gcry_whirlpool.marker - -gcry_whirlpool.marker: $(gcry_whirlpool_module_SOURCES) $(nodist_gcry_whirlpool_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gcry_whirlpool_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -if COND_emu -platform_PROGRAMS += kernel.exec -kernel_exec_SOURCES = -kernel_exec_SOURCES += disk/host.c kern/emu/cache_s.S kern/emu/hostdisk.c osdep/unix/hostdisk.c osdep/exec.c osdep/devmapper/hostdisk.c osdep/hostdisk.c kern/emu/hostfs.c kern/emu/main.c kern/emu/argp_common.c kern/emu/misc.c kern/emu/mm.c kern/emu/time.c kern/emu/cache.c osdep/emuconsole.c osdep/dl.c osdep/sleep.c osdep/init.c osdep/emunet.c osdep/cputime.c term/terminfo.c term/tparm.c commands/extcmd.c lib/arg.c kern/command.c kern/corecmd.c kern/device.c kern/disk.c kern/dl.c kern/env.c kern/err.c kern/file.c kern/fs.c kern/list.c kern/main.c kern/misc.c kern/parser.c kern/partition.c kern/rescue_parser.c kern/rescue_reader.c kern/term.c -nodist_kernel_exec_SOURCES = ## platform nodist sources -kernel_exec_LDADD = -kernel_exec_CFLAGS = $(AM_CFLAGS) $(CFLAGS_KERNEL) $(CFLAGS_GNULIB) -kernel_exec_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_KERNEL) -Wl,-r,-d -kernel_exec_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_KERNEL) $(CPPFLAGS_GNULIB) -kernel_exec_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_KERNEL) -kernel_exec_STRIPFLAGS = $(AM_STRIPFLAGS) $(STRIPFLAGS_KERNEL) -kernel_exec_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += video/sm712_init.c video/sis315_init.c kern/arm/cache.S osdep/unix/exec.c osdep/unix/emuconsole.c osdep/windows/emuconsole.c osdep/unix/dl.c osdep/windows/dl.c osdep/linux/emunet.c osdep/basic/emunet.c osdep/unix/cputime.c osdep/windows/cputime.c kern/i386/int.S kern/i386/realmode.S boot/i386/pc/lzma_decode.S kern/mips/cache_flush.S -BUILT_SOURCES += $(nodist_kernel_exec_SOURCES) -CLEANFILES += $(nodist_kernel_exec_SOURCES) -platform_DATA += kernel.img -CLEANFILES += kernel.img - -kernel.img: kernel.exec$(EXEEXT) - if test x$(TARGET_APPLE_LINKER) = x1; then $(TARGET_OBJCONV) -f$(TARGET_MODULE_FORMAT) -nr:_grub_mod_init:grub_mod_init -nr:_grub_mod_fini:grub_mod_fini -ed2022 -wd1106 -nu -nd $< $@; elif test ! -z '$(TARGET_OBJ2ELF)'; then $(TARGET_OBJ2ELF) $< $@ || (rm -f $@; exit 1); else cp $< $@; fi -endif - -if COND_i386_pc -platform_PROGRAMS += kernel.exec -kernel_exec_SOURCES = kern/i386/pc/startup.S -kernel_exec_SOURCES += kern/i386/pc/init.c kern/i386/pc/mmap.c term/i386/pc/console.c kern/i386/dl.c kern/i386/tsc.c kern/i386/tsc_pit.c kern/compiler-rt.c kern/mm.c kern/time.c kern/generic/millisleep.c kern/command.c kern/corecmd.c kern/device.c kern/disk.c kern/dl.c kern/env.c kern/err.c kern/file.c kern/fs.c kern/list.c kern/main.c kern/misc.c kern/parser.c kern/partition.c kern/rescue_parser.c kern/rescue_reader.c kern/term.c -nodist_kernel_exec_SOURCES = symlist.c ## platform nodist sources -kernel_exec_LDADD = -kernel_exec_CFLAGS = $(AM_CFLAGS) $(CFLAGS_KERNEL) -kernel_exec_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_KERNEL) $(TARGET_IMG_LDFLAGS) $(TARGET_IMG_BASE_LDOPT),0x9000 -kernel_exec_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_KERNEL) -kernel_exec_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_KERNEL) -kernel_exec_STRIPFLAGS = $(AM_STRIPFLAGS) $(STRIPFLAGS_KERNEL) -kernel_exec_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += video/sm712_init.c video/sis315_init.c kern/arm/cache.S osdep/unix/exec.c osdep/unix/emuconsole.c osdep/windows/emuconsole.c osdep/unix/dl.c osdep/windows/dl.c osdep/linux/emunet.c osdep/basic/emunet.c osdep/unix/cputime.c osdep/windows/cputime.c kern/i386/int.S kern/i386/realmode.S boot/i386/pc/lzma_decode.S kern/mips/cache_flush.S -BUILT_SOURCES += $(nodist_kernel_exec_SOURCES) -CLEANFILES += $(nodist_kernel_exec_SOURCES) -platform_DATA += kernel.img -CLEANFILES += kernel.img - -kernel.img: kernel.exec$(EXEEXT) - if test x$(TARGET_APPLE_LINKER) = x1; then $(TARGET_STRIP) -S -x $(kernel_exec) -o $@.bin $<; $(TARGET_OBJCONV) -f$(TARGET_MODULE_FORMAT) -nr:_grub_mod_init:grub_mod_init -nr:_grub_mod_fini:grub_mod_fini -ed2022 -ed2016 -wd1106 -nu -nd $@.bin $@; rm -f $@.bin; elif test ! -z '$(TARGET_OBJ2ELF)'; then $(TARGET_STRIP) $(kernel_exec_STRIPFLAGS) -o $@.bin $< && $(TARGET_OBJ2ELF) $@.bin $@ || (rm -f $@; rm -f $@.bin; exit 1); rm -f $@.bin; else $(TARGET_STRIP) $(kernel_exec_STRIPFLAGS) -o $@ $<; fi -endif - -if COND_i386_efi -platform_PROGRAMS += kernel.exec -kernel_exec_SOURCES = kern/i386/efi/startup.S -kernel_exec_SOURCES += kern/i386/efi/tsc.c kern/i386/tsc_pmtimer.c kern/i386/efi/init.c bus/pci.c kern/i386/dl.c kern/i386/tsc.c kern/i386/tsc_pit.c disk/efi/efidisk.c kern/efi/efi.c kern/efi/init.c kern/efi/mm.c term/efi/console.c kern/acpi.c kern/efi/acpi.c kern/compiler-rt.c kern/mm.c kern/time.c kern/generic/millisleep.c kern/command.c kern/corecmd.c kern/device.c kern/disk.c kern/dl.c kern/env.c kern/err.c kern/file.c kern/fs.c kern/list.c kern/main.c kern/misc.c kern/parser.c kern/partition.c kern/rescue_parser.c kern/rescue_reader.c kern/term.c -nodist_kernel_exec_SOURCES = symlist.c ## platform nodist sources -kernel_exec_LDADD = -kernel_exec_CFLAGS = $(AM_CFLAGS) $(CFLAGS_KERNEL) -kernel_exec_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_KERNEL) -Wl,-r,-d -kernel_exec_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_KERNEL) -kernel_exec_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_KERNEL) -kernel_exec_STRIPFLAGS = $(AM_STRIPFLAGS) $(STRIPFLAGS_KERNEL) --strip-unneeded -K start -R .note -R .comment -R .note.gnu.gold-version -kernel_exec_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += video/sm712_init.c video/sis315_init.c kern/arm/cache.S osdep/unix/exec.c osdep/unix/emuconsole.c osdep/windows/emuconsole.c osdep/unix/dl.c osdep/windows/dl.c osdep/linux/emunet.c osdep/basic/emunet.c osdep/unix/cputime.c osdep/windows/cputime.c kern/i386/int.S kern/i386/realmode.S boot/i386/pc/lzma_decode.S kern/mips/cache_flush.S -BUILT_SOURCES += $(nodist_kernel_exec_SOURCES) -CLEANFILES += $(nodist_kernel_exec_SOURCES) -platform_DATA += kernel.img -CLEANFILES += kernel.img - -kernel.img: kernel.exec$(EXEEXT) - if test x$(TARGET_APPLE_LINKER) = x1; then $(TARGET_STRIP) -S -x $(kernel_exec) -o $@.bin $<; $(TARGET_OBJCONV) -f$(TARGET_MODULE_FORMAT) -nr:_grub_mod_init:grub_mod_init -nr:_grub_mod_fini:grub_mod_fini -ed2022 -ed2016 -wd1106 -nu -nd $@.bin $@; rm -f $@.bin; elif test ! -z '$(TARGET_OBJ2ELF)'; then $(TARGET_STRIP) $(kernel_exec_STRIPFLAGS) -o $@.bin $< && $(TARGET_OBJ2ELF) $@.bin $@ || (rm -f $@; rm -f $@.bin; exit 1); rm -f $@.bin; else $(TARGET_STRIP) $(kernel_exec_STRIPFLAGS) -o $@ $<; fi -endif - -if COND_i386_qemu -platform_PROGRAMS += kernel.exec -kernel_exec_SOURCES = kern/i386/qemu/startup.S -kernel_exec_SOURCES += kern/i386/qemu/init.c bus/pci.c kern/vga_init.c kern/i386/qemu/mmap.c term/i386/pc/vga_text.c kern/i386/dl.c kern/i386/tsc.c kern/i386/tsc_pit.c kern/compiler-rt.c kern/mm.c kern/time.c kern/generic/millisleep.c kern/command.c kern/corecmd.c kern/device.c kern/disk.c kern/dl.c kern/env.c kern/err.c kern/file.c kern/fs.c kern/list.c kern/main.c kern/misc.c kern/parser.c kern/partition.c kern/rescue_parser.c kern/rescue_reader.c kern/term.c -nodist_kernel_exec_SOURCES = symlist.c ## platform nodist sources -kernel_exec_LDADD = -kernel_exec_CFLAGS = $(AM_CFLAGS) $(CFLAGS_KERNEL) -kernel_exec_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_KERNEL) $(TARGET_IMG_LDFLAGS) $(TARGET_IMG_BASE_LDOPT),0x9000 -kernel_exec_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_KERNEL) -DGRUB_BOOT_MACHINE_LINK_ADDR=$(GRUB_BOOT_MACHINE_LINK_ADDR) -kernel_exec_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_KERNEL) -kernel_exec_STRIPFLAGS = $(AM_STRIPFLAGS) $(STRIPFLAGS_KERNEL) -kernel_exec_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += video/sm712_init.c video/sis315_init.c kern/arm/cache.S osdep/unix/exec.c osdep/unix/emuconsole.c osdep/windows/emuconsole.c osdep/unix/dl.c osdep/windows/dl.c osdep/linux/emunet.c osdep/basic/emunet.c osdep/unix/cputime.c osdep/windows/cputime.c kern/i386/int.S kern/i386/realmode.S boot/i386/pc/lzma_decode.S kern/mips/cache_flush.S -BUILT_SOURCES += $(nodist_kernel_exec_SOURCES) -CLEANFILES += $(nodist_kernel_exec_SOURCES) -platform_DATA += kernel.img -CLEANFILES += kernel.img - -kernel.img: kernel.exec$(EXEEXT) - if test x$(TARGET_APPLE_LINKER) = x1; then $(TARGET_STRIP) -S -x $(kernel_exec) -o $@.bin $<; $(TARGET_OBJCONV) -f$(TARGET_MODULE_FORMAT) -nr:_grub_mod_init:grub_mod_init -nr:_grub_mod_fini:grub_mod_fini -ed2022 -ed2016 -wd1106 -nu -nd $@.bin $@; rm -f $@.bin; elif test ! -z '$(TARGET_OBJ2ELF)'; then $(TARGET_STRIP) $(kernel_exec_STRIPFLAGS) -o $@.bin $< && $(TARGET_OBJ2ELF) $@.bin $@ || (rm -f $@; rm -f $@.bin; exit 1); rm -f $@.bin; else $(TARGET_STRIP) $(kernel_exec_STRIPFLAGS) -o $@ $<; fi -endif - -if COND_i386_coreboot -platform_PROGRAMS += kernel.exec -kernel_exec_SOURCES = kern/i386/coreboot/startup.S -kernel_exec_SOURCES += kern/i386/coreboot/init.c kern/i386/pc/acpi.c kern/acpi.c kern/i386/tsc_pmtimer.c kern/i386/coreboot/cbtable.c video/coreboot/cbfb.c kern/coreboot/mmap.c kern/coreboot/cbtable.c term/gfxterm.c font/font.c font/font_cmd.c io/bufio.c video/fb/fbblit.c video/fb/fbfill.c video/fb/fbutil.c video/fb/video_fb.c video/video.c term/i386/pc/vga_text.c kern/i386/dl.c kern/i386/tsc.c kern/i386/tsc_pit.c kern/compiler-rt.c kern/mm.c kern/time.c kern/generic/millisleep.c kern/command.c kern/corecmd.c kern/device.c kern/disk.c kern/dl.c kern/env.c kern/err.c kern/file.c kern/fs.c kern/list.c kern/main.c kern/misc.c kern/parser.c kern/partition.c kern/rescue_parser.c kern/rescue_reader.c kern/term.c -nodist_kernel_exec_SOURCES = symlist.c ## platform nodist sources -kernel_exec_LDADD = -kernel_exec_CFLAGS = $(AM_CFLAGS) $(CFLAGS_KERNEL) -kernel_exec_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_KERNEL) $(TARGET_IMG_LDFLAGS) $(TARGET_IMG_BASE_LDOPT),0x9000 -kernel_exec_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_KERNEL) -kernel_exec_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_KERNEL) -kernel_exec_STRIPFLAGS = $(AM_STRIPFLAGS) $(STRIPFLAGS_KERNEL) -kernel_exec_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += video/sm712_init.c video/sis315_init.c kern/arm/cache.S osdep/unix/exec.c osdep/unix/emuconsole.c osdep/windows/emuconsole.c osdep/unix/dl.c osdep/windows/dl.c osdep/linux/emunet.c osdep/basic/emunet.c osdep/unix/cputime.c osdep/windows/cputime.c kern/i386/int.S kern/i386/realmode.S boot/i386/pc/lzma_decode.S kern/mips/cache_flush.S -BUILT_SOURCES += $(nodist_kernel_exec_SOURCES) -CLEANFILES += $(nodist_kernel_exec_SOURCES) -platform_DATA += kernel.img -CLEANFILES += kernel.img - -kernel.img: kernel.exec$(EXEEXT) - if test x$(TARGET_APPLE_LINKER) = x1; then $(TARGET_STRIP) -S -x $(kernel_exec) -o $@.bin $<; $(TARGET_OBJCONV) -f$(TARGET_MODULE_FORMAT) -nr:_grub_mod_init:grub_mod_init -nr:_grub_mod_fini:grub_mod_fini -ed2022 -ed2016 -wd1106 -nu -nd $@.bin $@; rm -f $@.bin; elif test ! -z '$(TARGET_OBJ2ELF)'; then $(TARGET_STRIP) $(kernel_exec_STRIPFLAGS) -o $@.bin $< && $(TARGET_OBJ2ELF) $@.bin $@ || (rm -f $@; rm -f $@.bin; exit 1); rm -f $@.bin; else $(TARGET_STRIP) $(kernel_exec_STRIPFLAGS) -o $@ $<; fi -endif - -if COND_i386_multiboot -platform_PROGRAMS += kernel.exec -kernel_exec_SOURCES = kern/i386/coreboot/startup.S -kernel_exec_SOURCES += kern/i386/coreboot/init.c kern/i386/pc/acpi.c kern/acpi.c kern/i386/multiboot_mmap.c term/i386/pc/vga_text.c kern/i386/dl.c kern/i386/tsc.c kern/i386/tsc_pit.c kern/compiler-rt.c kern/mm.c kern/time.c kern/generic/millisleep.c kern/command.c kern/corecmd.c kern/device.c kern/disk.c kern/dl.c kern/env.c kern/err.c kern/file.c kern/fs.c kern/list.c kern/main.c kern/misc.c kern/parser.c kern/partition.c kern/rescue_parser.c kern/rescue_reader.c kern/term.c -nodist_kernel_exec_SOURCES = symlist.c ## platform nodist sources -kernel_exec_LDADD = -kernel_exec_CFLAGS = $(AM_CFLAGS) $(CFLAGS_KERNEL) -kernel_exec_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_KERNEL) $(TARGET_IMG_LDFLAGS) $(TARGET_IMG_BASE_LDOPT),0x9000 -kernel_exec_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_KERNEL) -kernel_exec_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_KERNEL) -kernel_exec_STRIPFLAGS = $(AM_STRIPFLAGS) $(STRIPFLAGS_KERNEL) -kernel_exec_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += video/sm712_init.c video/sis315_init.c kern/arm/cache.S osdep/unix/exec.c osdep/unix/emuconsole.c osdep/windows/emuconsole.c osdep/unix/dl.c osdep/windows/dl.c osdep/linux/emunet.c osdep/basic/emunet.c osdep/unix/cputime.c osdep/windows/cputime.c kern/i386/int.S kern/i386/realmode.S boot/i386/pc/lzma_decode.S kern/mips/cache_flush.S -BUILT_SOURCES += $(nodist_kernel_exec_SOURCES) -CLEANFILES += $(nodist_kernel_exec_SOURCES) -platform_DATA += kernel.img -CLEANFILES += kernel.img - -kernel.img: kernel.exec$(EXEEXT) - if test x$(TARGET_APPLE_LINKER) = x1; then $(TARGET_STRIP) -S -x $(kernel_exec) -o $@.bin $<; $(TARGET_OBJCONV) -f$(TARGET_MODULE_FORMAT) -nr:_grub_mod_init:grub_mod_init -nr:_grub_mod_fini:grub_mod_fini -ed2022 -ed2016 -wd1106 -nu -nd $@.bin $@; rm -f $@.bin; elif test ! -z '$(TARGET_OBJ2ELF)'; then $(TARGET_STRIP) $(kernel_exec_STRIPFLAGS) -o $@.bin $< && $(TARGET_OBJ2ELF) $@.bin $@ || (rm -f $@; rm -f $@.bin; exit 1); rm -f $@.bin; else $(TARGET_STRIP) $(kernel_exec_STRIPFLAGS) -o $@ $<; fi -endif - -if COND_i386_ieee1275 -platform_PROGRAMS += kernel.exec -kernel_exec_SOURCES = kern/i386/ieee1275/startup.S -kernel_exec_SOURCES += disk/ieee1275/ofdisk.c kern/ieee1275/cmain.c kern/ieee1275/ieee1275.c kern/ieee1275/mmap.c kern/ieee1275/openfw.c term/ieee1275/console.c kern/ieee1275/init.c kern/i386/dl.c kern/i386/tsc.c kern/i386/tsc_pit.c term/terminfo.c term/tparm.c commands/extcmd.c lib/arg.c kern/compiler-rt.c kern/mm.c kern/time.c kern/generic/millisleep.c kern/command.c kern/corecmd.c kern/device.c kern/disk.c kern/dl.c kern/env.c kern/err.c kern/file.c kern/fs.c kern/list.c kern/main.c kern/misc.c kern/parser.c kern/partition.c kern/rescue_parser.c kern/rescue_reader.c kern/term.c -nodist_kernel_exec_SOURCES = symlist.c ## platform nodist sources -kernel_exec_LDADD = -kernel_exec_CFLAGS = $(AM_CFLAGS) $(CFLAGS_KERNEL) -kernel_exec_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_KERNEL) $(TARGET_IMG_LDFLAGS) $(TARGET_IMG_BASE_LDOPT),0x10000 -kernel_exec_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_KERNEL) -kernel_exec_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_KERNEL) -kernel_exec_STRIPFLAGS = $(AM_STRIPFLAGS) $(STRIPFLAGS_KERNEL) -kernel_exec_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += video/sm712_init.c video/sis315_init.c kern/arm/cache.S osdep/unix/exec.c osdep/unix/emuconsole.c osdep/windows/emuconsole.c osdep/unix/dl.c osdep/windows/dl.c osdep/linux/emunet.c osdep/basic/emunet.c osdep/unix/cputime.c osdep/windows/cputime.c kern/i386/int.S kern/i386/realmode.S boot/i386/pc/lzma_decode.S kern/mips/cache_flush.S -BUILT_SOURCES += $(nodist_kernel_exec_SOURCES) -CLEANFILES += $(nodist_kernel_exec_SOURCES) -platform_DATA += kernel.img -CLEANFILES += kernel.img - -kernel.img: kernel.exec$(EXEEXT) - if test x$(TARGET_APPLE_LINKER) = x1; then $(TARGET_STRIP) -S -x $(kernel_exec) -o $@.bin $<; $(TARGET_OBJCONV) -f$(TARGET_MODULE_FORMAT) -nr:_grub_mod_init:grub_mod_init -nr:_grub_mod_fini:grub_mod_fini -ed2022 -ed2016 -wd1106 -nu -nd $@.bin $@; rm -f $@.bin; elif test ! -z '$(TARGET_OBJ2ELF)'; then $(TARGET_STRIP) $(kernel_exec_STRIPFLAGS) -o $@.bin $< && $(TARGET_OBJ2ELF) $@.bin $@ || (rm -f $@; rm -f $@.bin; exit 1); rm -f $@.bin; else $(TARGET_STRIP) $(kernel_exec_STRIPFLAGS) -o $@ $<; fi -endif - -if COND_x86_64_efi -platform_PROGRAMS += kernel.exec -kernel_exec_SOURCES = kern/x86_64/efi/startup.S -kernel_exec_SOURCES += kern/i386/efi/tsc.c kern/i386/tsc_pmtimer.c kern/x86_64/efi/callwrap.S kern/i386/efi/init.c bus/pci.c kern/x86_64/dl.c kern/i386/tsc.c kern/i386/tsc_pit.c disk/efi/efidisk.c kern/efi/efi.c kern/efi/init.c kern/efi/mm.c term/efi/console.c kern/acpi.c kern/efi/acpi.c kern/compiler-rt.c kern/mm.c kern/time.c kern/generic/millisleep.c kern/command.c kern/corecmd.c kern/device.c kern/disk.c kern/dl.c kern/env.c kern/err.c kern/file.c kern/fs.c kern/list.c kern/main.c kern/misc.c kern/parser.c kern/partition.c kern/rescue_parser.c kern/rescue_reader.c kern/term.c -nodist_kernel_exec_SOURCES = symlist.c ## platform nodist sources -kernel_exec_LDADD = -kernel_exec_CFLAGS = $(AM_CFLAGS) $(CFLAGS_KERNEL) -kernel_exec_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_KERNEL) -Wl,-r,-d -kernel_exec_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_KERNEL) -kernel_exec_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_KERNEL) -kernel_exec_STRIPFLAGS = $(AM_STRIPFLAGS) $(STRIPFLAGS_KERNEL) --strip-unneeded -K start -R .note -R .comment -R .note.gnu.gold-version -kernel_exec_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += video/sm712_init.c video/sis315_init.c kern/arm/cache.S osdep/unix/exec.c osdep/unix/emuconsole.c osdep/windows/emuconsole.c osdep/unix/dl.c osdep/windows/dl.c osdep/linux/emunet.c osdep/basic/emunet.c osdep/unix/cputime.c osdep/windows/cputime.c kern/i386/int.S kern/i386/realmode.S boot/i386/pc/lzma_decode.S kern/mips/cache_flush.S -BUILT_SOURCES += $(nodist_kernel_exec_SOURCES) -CLEANFILES += $(nodist_kernel_exec_SOURCES) -platform_DATA += kernel.img -CLEANFILES += kernel.img - -kernel.img: kernel.exec$(EXEEXT) - if test x$(TARGET_APPLE_LINKER) = x1; then $(TARGET_STRIP) -S -x $(kernel_exec) -o $@.bin $<; $(TARGET_OBJCONV) -f$(TARGET_MODULE_FORMAT) -nr:_grub_mod_init:grub_mod_init -nr:_grub_mod_fini:grub_mod_fini -ed2022 -ed2016 -wd1106 -nu -nd $@.bin $@; rm -f $@.bin; elif test ! -z '$(TARGET_OBJ2ELF)'; then $(TARGET_STRIP) $(kernel_exec_STRIPFLAGS) -o $@.bin $< && $(TARGET_OBJ2ELF) $@.bin $@ || (rm -f $@; rm -f $@.bin; exit 1); rm -f $@.bin; else $(TARGET_STRIP) $(kernel_exec_STRIPFLAGS) -o $@ $<; fi -endif - -if COND_i386_xen -platform_PROGRAMS += kernel.exec -kernel_exec_SOURCES = kern/i386/xen/startup.S -kernel_exec_SOURCES += kern/i386/dl.c kern/i386/xen/hypercall.S kern/i386/tsc.c kern/i386/xen/tsc.c kern/xen/init.c term/xen/console.c disk/xen/xendisk.c commands/boot.c term/terminfo.c term/tparm.c commands/extcmd.c lib/arg.c kern/compiler-rt.c kern/mm.c kern/time.c kern/generic/millisleep.c kern/command.c kern/corecmd.c kern/device.c kern/disk.c kern/dl.c kern/env.c kern/err.c kern/file.c kern/fs.c kern/list.c kern/main.c kern/misc.c kern/parser.c kern/partition.c kern/rescue_parser.c kern/rescue_reader.c kern/term.c -nodist_kernel_exec_SOURCES = symlist.c ## platform nodist sources -kernel_exec_LDADD = -kernel_exec_CFLAGS = $(AM_CFLAGS) $(CFLAGS_KERNEL) -kernel_exec_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_KERNEL) $(TARGET_IMG_LDFLAGS) $(TARGET_IMG_BASE_LDOPT),0 -kernel_exec_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_KERNEL) -kernel_exec_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_KERNEL) -kernel_exec_STRIPFLAGS = $(AM_STRIPFLAGS) $(STRIPFLAGS_KERNEL) -kernel_exec_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += video/sm712_init.c video/sis315_init.c kern/arm/cache.S osdep/unix/exec.c osdep/unix/emuconsole.c osdep/windows/emuconsole.c osdep/unix/dl.c osdep/windows/dl.c osdep/linux/emunet.c osdep/basic/emunet.c osdep/unix/cputime.c osdep/windows/cputime.c kern/i386/int.S kern/i386/realmode.S boot/i386/pc/lzma_decode.S kern/mips/cache_flush.S -BUILT_SOURCES += $(nodist_kernel_exec_SOURCES) -CLEANFILES += $(nodist_kernel_exec_SOURCES) -platform_DATA += kernel.img -CLEANFILES += kernel.img - -kernel.img: kernel.exec$(EXEEXT) - if test x$(TARGET_APPLE_LINKER) = x1; then $(TARGET_STRIP) -S -x $(kernel_exec) -o $@.bin $<; $(TARGET_OBJCONV) -f$(TARGET_MODULE_FORMAT) -nr:_grub_mod_init:grub_mod_init -nr:_grub_mod_fini:grub_mod_fini -ed2022 -ed2016 -wd1106 -nu -nd $@.bin $@; rm -f $@.bin; elif test ! -z '$(TARGET_OBJ2ELF)'; then $(TARGET_STRIP) $(kernel_exec_STRIPFLAGS) -o $@.bin $< && $(TARGET_OBJ2ELF) $@.bin $@ || (rm -f $@; rm -f $@.bin; exit 1); rm -f $@.bin; else $(TARGET_STRIP) $(kernel_exec_STRIPFLAGS) -o $@ $<; fi -endif - -if COND_x86_64_xen -platform_PROGRAMS += kernel.exec -kernel_exec_SOURCES = kern/x86_64/xen/startup.S -kernel_exec_SOURCES += kern/x86_64/dl.c kern/x86_64/xen/hypercall.S kern/i386/tsc.c kern/i386/xen/tsc.c kern/xen/init.c term/xen/console.c disk/xen/xendisk.c commands/boot.c term/terminfo.c term/tparm.c commands/extcmd.c lib/arg.c kern/compiler-rt.c kern/mm.c kern/time.c kern/generic/millisleep.c kern/command.c kern/corecmd.c kern/device.c kern/disk.c kern/dl.c kern/env.c kern/err.c kern/file.c kern/fs.c kern/list.c kern/main.c kern/misc.c kern/parser.c kern/partition.c kern/rescue_parser.c kern/rescue_reader.c kern/term.c -nodist_kernel_exec_SOURCES = symlist.c ## platform nodist sources -kernel_exec_LDADD = -kernel_exec_CFLAGS = $(AM_CFLAGS) $(CFLAGS_KERNEL) -kernel_exec_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_KERNEL) $(TARGET_IMG_LDFLAGS) $(TARGET_IMG_BASE_LDOPT),0 -kernel_exec_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_KERNEL) -kernel_exec_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_KERNEL) -kernel_exec_STRIPFLAGS = $(AM_STRIPFLAGS) $(STRIPFLAGS_KERNEL) -kernel_exec_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += video/sm712_init.c video/sis315_init.c kern/arm/cache.S osdep/unix/exec.c osdep/unix/emuconsole.c osdep/windows/emuconsole.c osdep/unix/dl.c osdep/windows/dl.c osdep/linux/emunet.c osdep/basic/emunet.c osdep/unix/cputime.c osdep/windows/cputime.c kern/i386/int.S kern/i386/realmode.S boot/i386/pc/lzma_decode.S kern/mips/cache_flush.S -BUILT_SOURCES += $(nodist_kernel_exec_SOURCES) -CLEANFILES += $(nodist_kernel_exec_SOURCES) -platform_DATA += kernel.img -CLEANFILES += kernel.img - -kernel.img: kernel.exec$(EXEEXT) - if test x$(TARGET_APPLE_LINKER) = x1; then $(TARGET_STRIP) -S -x $(kernel_exec) -o $@.bin $<; $(TARGET_OBJCONV) -f$(TARGET_MODULE_FORMAT) -nr:_grub_mod_init:grub_mod_init -nr:_grub_mod_fini:grub_mod_fini -ed2022 -ed2016 -wd1106 -nu -nd $@.bin $@; rm -f $@.bin; elif test ! -z '$(TARGET_OBJ2ELF)'; then $(TARGET_STRIP) $(kernel_exec_STRIPFLAGS) -o $@.bin $< && $(TARGET_OBJ2ELF) $@.bin $@ || (rm -f $@; rm -f $@.bin; exit 1); rm -f $@.bin; else $(TARGET_STRIP) $(kernel_exec_STRIPFLAGS) -o $@ $<; fi -endif - -if COND_i386_xen_pvh -platform_PROGRAMS += kernel.exec -kernel_exec_SOURCES = kern/i386/xen/startup_pvh.S -kernel_exec_SOURCES += kern/i386/dl.c commands/boot.c disk/xen/xendisk.c kern/i386/tsc.c kern/i386/xen/tsc.c kern/i386/xen/pvh.c kern/xen/init.c term/xen/console.c term/terminfo.c term/tparm.c commands/extcmd.c lib/arg.c kern/compiler-rt.c kern/mm.c kern/time.c kern/generic/millisleep.c kern/command.c kern/corecmd.c kern/device.c kern/disk.c kern/dl.c kern/env.c kern/err.c kern/file.c kern/fs.c kern/list.c kern/main.c kern/misc.c kern/parser.c kern/partition.c kern/rescue_parser.c kern/rescue_reader.c kern/term.c -nodist_kernel_exec_SOURCES = symlist.c ## platform nodist sources -kernel_exec_LDADD = -kernel_exec_CFLAGS = $(AM_CFLAGS) $(CFLAGS_KERNEL) -kernel_exec_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_KERNEL) $(TARGET_IMG_LDFLAGS) $(TARGET_IMG_BASE_LDOPT),0x100000 -kernel_exec_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_KERNEL) -kernel_exec_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_KERNEL) -kernel_exec_STRIPFLAGS = $(AM_STRIPFLAGS) $(STRIPFLAGS_KERNEL) -kernel_exec_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += video/sm712_init.c video/sis315_init.c kern/arm/cache.S osdep/unix/exec.c osdep/unix/emuconsole.c osdep/windows/emuconsole.c osdep/unix/dl.c osdep/windows/dl.c osdep/linux/emunet.c osdep/basic/emunet.c osdep/unix/cputime.c osdep/windows/cputime.c kern/i386/int.S kern/i386/realmode.S boot/i386/pc/lzma_decode.S kern/mips/cache_flush.S -BUILT_SOURCES += $(nodist_kernel_exec_SOURCES) -CLEANFILES += $(nodist_kernel_exec_SOURCES) -platform_DATA += kernel.img -CLEANFILES += kernel.img - -kernel.img: kernel.exec$(EXEEXT) - if test x$(TARGET_APPLE_LINKER) = x1; then $(TARGET_STRIP) -S -x $(kernel_exec) -o $@.bin $<; $(TARGET_OBJCONV) -f$(TARGET_MODULE_FORMAT) -nr:_grub_mod_init:grub_mod_init -nr:_grub_mod_fini:grub_mod_fini -ed2022 -ed2016 -wd1106 -nu -nd $@.bin $@; rm -f $@.bin; elif test ! -z '$(TARGET_OBJ2ELF)'; then $(TARGET_STRIP) $(kernel_exec_STRIPFLAGS) -o $@.bin $< && $(TARGET_OBJ2ELF) $@.bin $@ || (rm -f $@; rm -f $@.bin; exit 1); rm -f $@.bin; else $(TARGET_STRIP) $(kernel_exec_STRIPFLAGS) -o $@ $<; fi -endif - -if COND_mips_loongson -platform_PROGRAMS += kernel.exec -kernel_exec_SOURCES = kern/mips/startup.S -kernel_exec_SOURCES += term/ns8250.c bus/bonito.c bus/cs5536.c bus/pci.c kern/mips/loongson/init.c term/at_keyboard.c term/ps2.c commands/boot.c term/serial.c video/sm712.c video/sis315pro.c video/radeon_fuloong2e.c video/radeon_yeeloong3a.c commands/keylayouts.c term/gfxterm.c font/font.c font/font_cmd.c io/bufio.c video/fb/fbblit.c video/fb/fbfill.c video/fb/fbutil.c video/fb/video_fb.c video/video.c kern/generic/rtc_get_time_ms.c kern/mips/cache.S kern/mips/dl.c kern/mips/init.c term/terminfo.c term/tparm.c commands/extcmd.c lib/arg.c kern/compiler-rt.c kern/mm.c kern/time.c kern/generic/millisleep.c kern/command.c kern/corecmd.c kern/device.c kern/disk.c kern/dl.c kern/env.c kern/err.c kern/file.c kern/fs.c kern/list.c kern/main.c kern/misc.c kern/parser.c kern/partition.c kern/rescue_parser.c kern/rescue_reader.c kern/term.c -nodist_kernel_exec_SOURCES = symlist.c ## platform nodist sources -kernel_exec_LDADD = -kernel_exec_CFLAGS = $(AM_CFLAGS) $(CFLAGS_KERNEL) -kernel_exec_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_KERNEL) -Wl,-Ttext,0x80200000 -kernel_exec_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_KERNEL) -kernel_exec_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_KERNEL) -kernel_exec_STRIPFLAGS = $(AM_STRIPFLAGS) $(STRIPFLAGS_KERNEL) -kernel_exec_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += video/sm712_init.c video/sis315_init.c kern/arm/cache.S osdep/unix/exec.c osdep/unix/emuconsole.c osdep/windows/emuconsole.c osdep/unix/dl.c osdep/windows/dl.c osdep/linux/emunet.c osdep/basic/emunet.c osdep/unix/cputime.c osdep/windows/cputime.c kern/i386/int.S kern/i386/realmode.S boot/i386/pc/lzma_decode.S kern/mips/cache_flush.S -BUILT_SOURCES += $(nodist_kernel_exec_SOURCES) -CLEANFILES += $(nodist_kernel_exec_SOURCES) -platform_DATA += kernel.img -CLEANFILES += kernel.img - -kernel.img: kernel.exec$(EXEEXT) - if test x$(TARGET_APPLE_LINKER) = x1; then $(TARGET_STRIP) -S -x $(kernel_exec) -o $@.bin $<; $(TARGET_OBJCONV) -f$(TARGET_MODULE_FORMAT) -nr:_grub_mod_init:grub_mod_init -nr:_grub_mod_fini:grub_mod_fini -ed2022 -ed2016 -wd1106 -nu -nd $@.bin $@; rm -f $@.bin; elif test ! -z '$(TARGET_OBJ2ELF)'; then $(TARGET_STRIP) $(kernel_exec_STRIPFLAGS) -o $@.bin $< && $(TARGET_OBJ2ELF) $@.bin $@ || (rm -f $@; rm -f $@.bin; exit 1); rm -f $@.bin; else $(TARGET_STRIP) $(kernel_exec_STRIPFLAGS) -o $@ $<; fi -endif - -if COND_sparc64_ieee1275 -platform_PROGRAMS += kernel.exec -kernel_exec_SOURCES = kern/sparc64/ieee1275/crt0.S -kernel_exec_SOURCES += kern/sparc64/cache.S kern/sparc64/dl.c kern/sparc64/ieee1275/ieee1275.c disk/ieee1275/obdisk.c disk/ieee1275/ofdisk.c kern/ieee1275/cmain.c kern/ieee1275/ieee1275.c kern/ieee1275/mmap.c kern/ieee1275/openfw.c term/ieee1275/console.c kern/ieee1275/init.c term/terminfo.c term/tparm.c commands/extcmd.c lib/arg.c kern/compiler-rt.c kern/mm.c kern/time.c kern/generic/millisleep.c kern/command.c kern/corecmd.c kern/device.c kern/disk.c kern/dl.c kern/env.c kern/err.c kern/file.c kern/fs.c kern/list.c kern/main.c kern/misc.c kern/parser.c kern/partition.c kern/rescue_parser.c kern/rescue_reader.c kern/term.c -nodist_kernel_exec_SOURCES = symlist.c ## platform nodist sources -kernel_exec_LDADD = -kernel_exec_CFLAGS = $(AM_CFLAGS) $(CFLAGS_KERNEL) -kernel_exec_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_KERNEL) -Wl,-Ttext,0x4400 -kernel_exec_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_KERNEL) -kernel_exec_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_KERNEL) -kernel_exec_STRIPFLAGS = $(AM_STRIPFLAGS) $(STRIPFLAGS_KERNEL) -kernel_exec_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += video/sm712_init.c video/sis315_init.c kern/arm/cache.S osdep/unix/exec.c osdep/unix/emuconsole.c osdep/windows/emuconsole.c osdep/unix/dl.c osdep/windows/dl.c osdep/linux/emunet.c osdep/basic/emunet.c osdep/unix/cputime.c osdep/windows/cputime.c kern/i386/int.S kern/i386/realmode.S boot/i386/pc/lzma_decode.S kern/mips/cache_flush.S -BUILT_SOURCES += $(nodist_kernel_exec_SOURCES) -CLEANFILES += $(nodist_kernel_exec_SOURCES) -platform_DATA += kernel.img -CLEANFILES += kernel.img - -kernel.img: kernel.exec$(EXEEXT) - if test x$(TARGET_APPLE_LINKER) = x1; then $(TARGET_STRIP) -S -x $(kernel_exec) -o $@.bin $<; $(TARGET_OBJCONV) -f$(TARGET_MODULE_FORMAT) -nr:_grub_mod_init:grub_mod_init -nr:_grub_mod_fini:grub_mod_fini -ed2022 -ed2016 -wd1106 -nu -nd $@.bin $@; rm -f $@.bin; elif test ! -z '$(TARGET_OBJ2ELF)'; then $(TARGET_STRIP) $(kernel_exec_STRIPFLAGS) -o $@.bin $< && $(TARGET_OBJ2ELF) $@.bin $@ || (rm -f $@; rm -f $@.bin; exit 1); rm -f $@.bin; else $(TARGET_STRIP) $(kernel_exec_STRIPFLAGS) -o $@ $<; fi -endif - -if COND_powerpc_ieee1275 -platform_PROGRAMS += kernel.exec -kernel_exec_SOURCES = kern/powerpc/ieee1275/startup.S -kernel_exec_SOURCES += kern/powerpc/cache.S kern/powerpc/dl.c kern/powerpc/compiler-rt.S disk/ieee1275/ofdisk.c kern/ieee1275/cmain.c kern/ieee1275/ieee1275.c kern/ieee1275/mmap.c kern/ieee1275/openfw.c term/ieee1275/console.c kern/ieee1275/init.c term/terminfo.c term/tparm.c commands/extcmd.c lib/arg.c kern/compiler-rt.c kern/mm.c kern/time.c kern/generic/millisleep.c kern/command.c kern/corecmd.c kern/device.c kern/disk.c kern/dl.c kern/env.c kern/err.c kern/file.c kern/fs.c kern/list.c kern/main.c kern/misc.c kern/parser.c kern/partition.c kern/rescue_parser.c kern/rescue_reader.c kern/term.c -nodist_kernel_exec_SOURCES = symlist.c ## platform nodist sources -kernel_exec_LDADD = -kernel_exec_CFLAGS = $(AM_CFLAGS) $(CFLAGS_KERNEL) -kernel_exec_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_KERNEL) -Wl,-Ttext,0x200000 -kernel_exec_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_KERNEL) -kernel_exec_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_KERNEL) -kernel_exec_STRIPFLAGS = $(AM_STRIPFLAGS) $(STRIPFLAGS_KERNEL) -kernel_exec_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += video/sm712_init.c video/sis315_init.c kern/arm/cache.S osdep/unix/exec.c osdep/unix/emuconsole.c osdep/windows/emuconsole.c osdep/unix/dl.c osdep/windows/dl.c osdep/linux/emunet.c osdep/basic/emunet.c osdep/unix/cputime.c osdep/windows/cputime.c kern/i386/int.S kern/i386/realmode.S boot/i386/pc/lzma_decode.S kern/mips/cache_flush.S -BUILT_SOURCES += $(nodist_kernel_exec_SOURCES) -CLEANFILES += $(nodist_kernel_exec_SOURCES) -platform_DATA += kernel.img -CLEANFILES += kernel.img - -kernel.img: kernel.exec$(EXEEXT) - if test x$(TARGET_APPLE_LINKER) = x1; then $(TARGET_STRIP) -S -x $(kernel_exec) -o $@.bin $<; $(TARGET_OBJCONV) -f$(TARGET_MODULE_FORMAT) -nr:_grub_mod_init:grub_mod_init -nr:_grub_mod_fini:grub_mod_fini -ed2022 -ed2016 -wd1106 -nu -nd $@.bin $@; rm -f $@.bin; elif test ! -z '$(TARGET_OBJ2ELF)'; then $(TARGET_STRIP) $(kernel_exec_STRIPFLAGS) -o $@.bin $< && $(TARGET_OBJ2ELF) $@.bin $@ || (rm -f $@; rm -f $@.bin; exit 1); rm -f $@.bin; else $(TARGET_STRIP) $(kernel_exec_STRIPFLAGS) -o $@ $<; fi -endif - -if COND_mips_arc -platform_PROGRAMS += kernel.exec -kernel_exec_SOURCES = kern/mips/startup.S -kernel_exec_SOURCES += kern/mips/arc/init.c term/arc/console.c disk/arc/arcdisk.c kern/generic/rtc_get_time_ms.c kern/mips/cache.S kern/mips/dl.c kern/mips/init.c term/terminfo.c term/tparm.c commands/extcmd.c lib/arg.c kern/compiler-rt.c kern/mm.c kern/time.c kern/generic/millisleep.c kern/command.c kern/corecmd.c kern/device.c kern/disk.c kern/dl.c kern/env.c kern/err.c kern/file.c kern/fs.c kern/list.c kern/main.c kern/misc.c kern/parser.c kern/partition.c kern/rescue_parser.c kern/rescue_reader.c kern/term.c -nodist_kernel_exec_SOURCES = symlist.c ## platform nodist sources -kernel_exec_LDADD = -kernel_exec_CFLAGS = $(AM_CFLAGS) $(CFLAGS_KERNEL) -kernel_exec_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_KERNEL) -Wl,-Ttext,$(TARGET_LINK_ADDR) -kernel_exec_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_KERNEL) -DGRUB_DECOMPRESSOR_LINK_ADDR=$(TARGET_DECOMPRESSOR_LINK_ADDR) -kernel_exec_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_KERNEL) -kernel_exec_STRIPFLAGS = $(AM_STRIPFLAGS) $(STRIPFLAGS_KERNEL) -kernel_exec_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += video/sm712_init.c video/sis315_init.c kern/arm/cache.S osdep/unix/exec.c osdep/unix/emuconsole.c osdep/windows/emuconsole.c osdep/unix/dl.c osdep/windows/dl.c osdep/linux/emunet.c osdep/basic/emunet.c osdep/unix/cputime.c osdep/windows/cputime.c kern/i386/int.S kern/i386/realmode.S boot/i386/pc/lzma_decode.S kern/mips/cache_flush.S -BUILT_SOURCES += $(nodist_kernel_exec_SOURCES) -CLEANFILES += $(nodist_kernel_exec_SOURCES) -platform_DATA += kernel.img -CLEANFILES += kernel.img - -kernel.img: kernel.exec$(EXEEXT) - if test x$(TARGET_APPLE_LINKER) = x1; then $(TARGET_STRIP) -S -x $(kernel_exec) -o $@.bin $<; $(TARGET_OBJCONV) -f$(TARGET_MODULE_FORMAT) -nr:_grub_mod_init:grub_mod_init -nr:_grub_mod_fini:grub_mod_fini -ed2022 -ed2016 -wd1106 -nu -nd $@.bin $@; rm -f $@.bin; elif test ! -z '$(TARGET_OBJ2ELF)'; then $(TARGET_STRIP) $(kernel_exec_STRIPFLAGS) -o $@.bin $< && $(TARGET_OBJ2ELF) $@.bin $@ || (rm -f $@; rm -f $@.bin; exit 1); rm -f $@.bin; else $(TARGET_STRIP) $(kernel_exec_STRIPFLAGS) -o $@ $<; fi -endif - -if COND_ia64_efi -platform_PROGRAMS += kernel.exec -kernel_exec_SOURCES = -kernel_exec_SOURCES += kern/ia64/efi/startup.S kern/ia64/efi/init.c kern/ia64/dl.c kern/ia64/dl_helper.c kern/ia64/cache.c lib/division.c disk/efi/efidisk.c kern/efi/efi.c kern/efi/init.c kern/efi/mm.c term/efi/console.c kern/acpi.c kern/efi/acpi.c kern/compiler-rt.c kern/mm.c kern/time.c kern/generic/millisleep.c kern/command.c kern/corecmd.c kern/device.c kern/disk.c kern/dl.c kern/env.c kern/err.c kern/file.c kern/fs.c kern/list.c kern/main.c kern/misc.c kern/parser.c kern/partition.c kern/rescue_parser.c kern/rescue_reader.c kern/term.c -nodist_kernel_exec_SOURCES = symlist.c ## platform nodist sources -kernel_exec_LDADD = -kernel_exec_CFLAGS = $(AM_CFLAGS) $(CFLAGS_KERNEL) -fno-builtin -fpic -minline-int-divide-max-throughput -kernel_exec_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_KERNEL) -Wl,-r,-d -kernel_exec_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_KERNEL) -kernel_exec_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_KERNEL) -kernel_exec_STRIPFLAGS = $(AM_STRIPFLAGS) $(STRIPFLAGS_KERNEL) --strip-unneeded -K start -R .note -R .comment -R .note.gnu.gold-version -kernel_exec_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += video/sm712_init.c video/sis315_init.c kern/arm/cache.S osdep/unix/exec.c osdep/unix/emuconsole.c osdep/windows/emuconsole.c osdep/unix/dl.c osdep/windows/dl.c osdep/linux/emunet.c osdep/basic/emunet.c osdep/unix/cputime.c osdep/windows/cputime.c kern/i386/int.S kern/i386/realmode.S boot/i386/pc/lzma_decode.S kern/mips/cache_flush.S -BUILT_SOURCES += $(nodist_kernel_exec_SOURCES) -CLEANFILES += $(nodist_kernel_exec_SOURCES) -platform_DATA += kernel.img -CLEANFILES += kernel.img - -kernel.img: kernel.exec$(EXEEXT) - if test x$(TARGET_APPLE_LINKER) = x1; then $(TARGET_STRIP) -S -x $(kernel_exec) -o $@.bin $<; $(TARGET_OBJCONV) -f$(TARGET_MODULE_FORMAT) -nr:_grub_mod_init:grub_mod_init -nr:_grub_mod_fini:grub_mod_fini -ed2022 -ed2016 -wd1106 -nu -nd $@.bin $@; rm -f $@.bin; elif test ! -z '$(TARGET_OBJ2ELF)'; then $(TARGET_STRIP) $(kernel_exec_STRIPFLAGS) -o $@.bin $< && $(TARGET_OBJ2ELF) $@.bin $@ || (rm -f $@; rm -f $@.bin; exit 1); rm -f $@.bin; else $(TARGET_STRIP) $(kernel_exec_STRIPFLAGS) -o $@ $<; fi -endif - -if COND_mips_qemu_mips -platform_PROGRAMS += kernel.exec -kernel_exec_SOURCES = kern/mips/startup.S -kernel_exec_SOURCES += kern/mips/qemu_mips/init.c term/ns8250.c term/serial.c term/at_keyboard.c term/ps2.c commands/boot.c commands/keylayouts.c term/i386/pc/vga_text.c kern/vga_init.c kern/generic/rtc_get_time_ms.c kern/mips/cache.S kern/mips/dl.c kern/mips/init.c term/terminfo.c term/tparm.c commands/extcmd.c lib/arg.c kern/compiler-rt.c kern/mm.c kern/time.c kern/generic/millisleep.c kern/command.c kern/corecmd.c kern/device.c kern/disk.c kern/dl.c kern/env.c kern/err.c kern/file.c kern/fs.c kern/list.c kern/main.c kern/misc.c kern/parser.c kern/partition.c kern/rescue_parser.c kern/rescue_reader.c kern/term.c -nodist_kernel_exec_SOURCES = symlist.c ## platform nodist sources -kernel_exec_LDADD = -kernel_exec_CFLAGS = $(AM_CFLAGS) $(CFLAGS_KERNEL) -kernel_exec_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_KERNEL) -Wl,-Ttext,0x80200000 -kernel_exec_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_KERNEL) -kernel_exec_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_KERNEL) -kernel_exec_STRIPFLAGS = $(AM_STRIPFLAGS) $(STRIPFLAGS_KERNEL) -kernel_exec_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += video/sm712_init.c video/sis315_init.c kern/arm/cache.S osdep/unix/exec.c osdep/unix/emuconsole.c osdep/windows/emuconsole.c osdep/unix/dl.c osdep/windows/dl.c osdep/linux/emunet.c osdep/basic/emunet.c osdep/unix/cputime.c osdep/windows/cputime.c kern/i386/int.S kern/i386/realmode.S boot/i386/pc/lzma_decode.S kern/mips/cache_flush.S -BUILT_SOURCES += $(nodist_kernel_exec_SOURCES) -CLEANFILES += $(nodist_kernel_exec_SOURCES) -platform_DATA += kernel.img -CLEANFILES += kernel.img - -kernel.img: kernel.exec$(EXEEXT) - if test x$(TARGET_APPLE_LINKER) = x1; then $(TARGET_STRIP) -S -x $(kernel_exec) -o $@.bin $<; $(TARGET_OBJCONV) -f$(TARGET_MODULE_FORMAT) -nr:_grub_mod_init:grub_mod_init -nr:_grub_mod_fini:grub_mod_fini -ed2022 -ed2016 -wd1106 -nu -nd $@.bin $@; rm -f $@.bin; elif test ! -z '$(TARGET_OBJ2ELF)'; then $(TARGET_STRIP) $(kernel_exec_STRIPFLAGS) -o $@.bin $< && $(TARGET_OBJ2ELF) $@.bin $@ || (rm -f $@; rm -f $@.bin; exit 1); rm -f $@.bin; else $(TARGET_STRIP) $(kernel_exec_STRIPFLAGS) -o $@ $<; fi -endif - -if COND_arm_uboot -platform_PROGRAMS += kernel.exec -kernel_exec_SOURCES = kern/arm/startup.S -kernel_exec_SOURCES += kern/arm/uboot/init.c kern/arm/uboot/uboot.S disk/uboot/ubootdisk.c kern/uboot/uboot.c kern/uboot/init.c kern/uboot/hw.c term/uboot/console.c kern/arm/dl.c kern/arm/dl_helper.c kern/arm/cache_armv6.S kern/arm/cache_armv7.S kern/arm/cache.c kern/arm/compiler-rt.S lib/division.c term/terminfo.c term/tparm.c commands/extcmd.c lib/arg.c kern/compiler-rt.c kern/mm.c kern/time.c kern/generic/millisleep.c kern/command.c kern/corecmd.c kern/device.c kern/disk.c kern/dl.c kern/env.c kern/err.c kern/file.c kern/fs.c kern/list.c kern/main.c kern/misc.c kern/parser.c kern/partition.c kern/rescue_parser.c kern/rescue_reader.c kern/term.c -nodist_kernel_exec_SOURCES = symlist.c ## platform nodist sources -kernel_exec_LDADD = -kernel_exec_CFLAGS = $(AM_CFLAGS) $(CFLAGS_KERNEL) -kernel_exec_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_KERNEL) -Wl,-r,-d -kernel_exec_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_KERNEL) -kernel_exec_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_KERNEL) -kernel_exec_STRIPFLAGS = $(AM_STRIPFLAGS) $(STRIPFLAGS_KERNEL) --strip-unneeded -K start -R .note -R .comment -R .note.gnu.gold-version -kernel_exec_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += video/sm712_init.c video/sis315_init.c kern/arm/cache.S osdep/unix/exec.c osdep/unix/emuconsole.c osdep/windows/emuconsole.c osdep/unix/dl.c osdep/windows/dl.c osdep/linux/emunet.c osdep/basic/emunet.c osdep/unix/cputime.c osdep/windows/cputime.c kern/i386/int.S kern/i386/realmode.S boot/i386/pc/lzma_decode.S kern/mips/cache_flush.S -BUILT_SOURCES += $(nodist_kernel_exec_SOURCES) -CLEANFILES += $(nodist_kernel_exec_SOURCES) -platform_DATA += kernel.img -CLEANFILES += kernel.img - -kernel.img: kernel.exec$(EXEEXT) - if test x$(TARGET_APPLE_LINKER) = x1; then $(TARGET_STRIP) -S -x $(kernel_exec) -o $@.bin $<; $(TARGET_OBJCONV) -f$(TARGET_MODULE_FORMAT) -nr:_grub_mod_init:grub_mod_init -nr:_grub_mod_fini:grub_mod_fini -ed2022 -ed2016 -wd1106 -nu -nd $@.bin $@; rm -f $@.bin; elif test ! -z '$(TARGET_OBJ2ELF)'; then $(TARGET_STRIP) $(kernel_exec_STRIPFLAGS) -o $@.bin $< && $(TARGET_OBJ2ELF) $@.bin $@ || (rm -f $@; rm -f $@.bin; exit 1); rm -f $@.bin; else $(TARGET_STRIP) $(kernel_exec_STRIPFLAGS) -o $@ $<; fi -endif - -if COND_arm_efi -platform_PROGRAMS += kernel.exec -kernel_exec_SOURCES = kern/arm/efi/startup.S -kernel_exec_SOURCES += kern/arm/efi/init.c kern/efi/fdt.c kern/arm/dl.c kern/arm/dl_helper.c kern/arm/cache_armv6.S kern/arm/cache_armv7.S kern/arm/cache.c kern/arm/compiler-rt.S lib/division.c disk/efi/efidisk.c kern/efi/efi.c kern/efi/init.c kern/efi/mm.c term/efi/console.c kern/acpi.c kern/efi/acpi.c kern/compiler-rt.c kern/mm.c kern/time.c kern/generic/millisleep.c kern/command.c kern/corecmd.c kern/device.c kern/disk.c kern/dl.c kern/env.c kern/err.c kern/file.c kern/fs.c kern/list.c kern/main.c kern/misc.c kern/parser.c kern/partition.c kern/rescue_parser.c kern/rescue_reader.c kern/term.c -nodist_kernel_exec_SOURCES = symlist.c ## platform nodist sources -kernel_exec_LDADD = -kernel_exec_CFLAGS = $(AM_CFLAGS) $(CFLAGS_KERNEL) -kernel_exec_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_KERNEL) -Wl,-r,-d -kernel_exec_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_KERNEL) -kernel_exec_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_KERNEL) -kernel_exec_STRIPFLAGS = $(AM_STRIPFLAGS) $(STRIPFLAGS_KERNEL) --strip-unneeded -K start -R .note -R .comment -R .note.gnu.gold-version -kernel_exec_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += video/sm712_init.c video/sis315_init.c kern/arm/cache.S osdep/unix/exec.c osdep/unix/emuconsole.c osdep/windows/emuconsole.c osdep/unix/dl.c osdep/windows/dl.c osdep/linux/emunet.c osdep/basic/emunet.c osdep/unix/cputime.c osdep/windows/cputime.c kern/i386/int.S kern/i386/realmode.S boot/i386/pc/lzma_decode.S kern/mips/cache_flush.S -BUILT_SOURCES += $(nodist_kernel_exec_SOURCES) -CLEANFILES += $(nodist_kernel_exec_SOURCES) -platform_DATA += kernel.img -CLEANFILES += kernel.img - -kernel.img: kernel.exec$(EXEEXT) - if test x$(TARGET_APPLE_LINKER) = x1; then $(TARGET_STRIP) -S -x $(kernel_exec) -o $@.bin $<; $(TARGET_OBJCONV) -f$(TARGET_MODULE_FORMAT) -nr:_grub_mod_init:grub_mod_init -nr:_grub_mod_fini:grub_mod_fini -ed2022 -ed2016 -wd1106 -nu -nd $@.bin $@; rm -f $@.bin; elif test ! -z '$(TARGET_OBJ2ELF)'; then $(TARGET_STRIP) $(kernel_exec_STRIPFLAGS) -o $@.bin $< && $(TARGET_OBJ2ELF) $@.bin $@ || (rm -f $@; rm -f $@.bin; exit 1); rm -f $@.bin; else $(TARGET_STRIP) $(kernel_exec_STRIPFLAGS) -o $@ $<; fi -endif - -if COND_arm64_efi -platform_PROGRAMS += kernel.exec -kernel_exec_SOURCES = kern/arm64/efi/startup.S -kernel_exec_SOURCES += kern/arm64/efi/init.c kern/efi/fdt.c kern/arm64/cache.c kern/arm64/cache_flush.S kern/arm64/dl.c kern/arm64/dl_helper.c disk/efi/efidisk.c kern/efi/efi.c kern/efi/init.c kern/efi/mm.c term/efi/console.c kern/acpi.c kern/efi/acpi.c kern/compiler-rt.c kern/mm.c kern/time.c kern/generic/millisleep.c kern/command.c kern/corecmd.c kern/device.c kern/disk.c kern/dl.c kern/env.c kern/err.c kern/file.c kern/fs.c kern/list.c kern/main.c kern/misc.c kern/parser.c kern/partition.c kern/rescue_parser.c kern/rescue_reader.c kern/term.c -nodist_kernel_exec_SOURCES = symlist.c ## platform nodist sources -kernel_exec_LDADD = -kernel_exec_CFLAGS = $(AM_CFLAGS) $(CFLAGS_KERNEL) -kernel_exec_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_KERNEL) -Wl,-r,-d -kernel_exec_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_KERNEL) -kernel_exec_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_KERNEL) -kernel_exec_STRIPFLAGS = $(AM_STRIPFLAGS) $(STRIPFLAGS_KERNEL) --strip-unneeded -K start -R .note -R .comment -R .note.gnu.gold-version -R .eh_frame -kernel_exec_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += video/sm712_init.c video/sis315_init.c kern/arm/cache.S osdep/unix/exec.c osdep/unix/emuconsole.c osdep/windows/emuconsole.c osdep/unix/dl.c osdep/windows/dl.c osdep/linux/emunet.c osdep/basic/emunet.c osdep/unix/cputime.c osdep/windows/cputime.c kern/i386/int.S kern/i386/realmode.S boot/i386/pc/lzma_decode.S kern/mips/cache_flush.S -BUILT_SOURCES += $(nodist_kernel_exec_SOURCES) -CLEANFILES += $(nodist_kernel_exec_SOURCES) -platform_DATA += kernel.img -CLEANFILES += kernel.img - -kernel.img: kernel.exec$(EXEEXT) - if test x$(TARGET_APPLE_LINKER) = x1; then $(TARGET_STRIP) -S -x $(kernel_exec) -o $@.bin $<; $(TARGET_OBJCONV) -f$(TARGET_MODULE_FORMAT) -nr:_grub_mod_init:grub_mod_init -nr:_grub_mod_fini:grub_mod_fini -ed2022 -ed2016 -wd1106 -nu -nd $@.bin $@; rm -f $@.bin; elif test ! -z '$(TARGET_OBJ2ELF)'; then $(TARGET_STRIP) $(kernel_exec_STRIPFLAGS) -o $@.bin $< && $(TARGET_OBJ2ELF) $@.bin $@ || (rm -f $@; rm -f $@.bin; exit 1); rm -f $@.bin; else $(TARGET_STRIP) $(kernel_exec_STRIPFLAGS) -o $@ $<; fi -endif - -if COND_arm_coreboot -platform_PROGRAMS += kernel.exec -kernel_exec_SOURCES = kern/arm/startup.S -kernel_exec_SOURCES += kern/arm/coreboot/init.c kern/arm/coreboot/timer.c kern/arm/coreboot/coreboot.S lib/fdt.c bus/fdt.c term/ps2.c term/arm/pl050.c term/arm/cros.c term/arm/cros_ec.c bus/spi/rk3288_spi.c commands/keylayouts.c kern/arm/coreboot/dma.c kern/arm/coreboot/cbtable.c video/coreboot/cbfb.c kern/coreboot/mmap.c kern/coreboot/cbtable.c term/gfxterm.c font/font.c font/font_cmd.c io/bufio.c video/fb/fbblit.c video/fb/fbfill.c video/fb/fbutil.c video/fb/video_fb.c video/video.c kern/arm/dl.c kern/arm/dl_helper.c kern/arm/cache_armv6.S kern/arm/cache_armv7.S kern/arm/cache.c kern/arm/compiler-rt.S lib/division.c kern/compiler-rt.c kern/mm.c kern/time.c kern/generic/millisleep.c kern/command.c kern/corecmd.c kern/device.c kern/disk.c kern/dl.c kern/env.c kern/err.c kern/file.c kern/fs.c kern/list.c kern/main.c kern/misc.c kern/parser.c kern/partition.c kern/rescue_parser.c kern/rescue_reader.c kern/term.c -nodist_kernel_exec_SOURCES = symlist.c ## platform nodist sources -kernel_exec_LDADD = -kernel_exec_CFLAGS = $(AM_CFLAGS) $(CFLAGS_KERNEL) -kernel_exec_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_KERNEL) -Wl,-r,-d -kernel_exec_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_KERNEL) -kernel_exec_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_KERNEL) -kernel_exec_STRIPFLAGS = $(AM_STRIPFLAGS) $(STRIPFLAGS_KERNEL) --strip-unneeded -K start -R .note -R .comment -R .note.gnu.gold-version -kernel_exec_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += video/sm712_init.c video/sis315_init.c kern/arm/cache.S osdep/unix/exec.c osdep/unix/emuconsole.c osdep/windows/emuconsole.c osdep/unix/dl.c osdep/windows/dl.c osdep/linux/emunet.c osdep/basic/emunet.c osdep/unix/cputime.c osdep/windows/cputime.c kern/i386/int.S kern/i386/realmode.S boot/i386/pc/lzma_decode.S kern/mips/cache_flush.S -BUILT_SOURCES += $(nodist_kernel_exec_SOURCES) -CLEANFILES += $(nodist_kernel_exec_SOURCES) -platform_DATA += kernel.img -CLEANFILES += kernel.img - -kernel.img: kernel.exec$(EXEEXT) - if test x$(TARGET_APPLE_LINKER) = x1; then $(TARGET_STRIP) -S -x $(kernel_exec) -o $@.bin $<; $(TARGET_OBJCONV) -f$(TARGET_MODULE_FORMAT) -nr:_grub_mod_init:grub_mod_init -nr:_grub_mod_fini:grub_mod_fini -ed2022 -ed2016 -wd1106 -nu -nd $@.bin $@; rm -f $@.bin; elif test ! -z '$(TARGET_OBJ2ELF)'; then $(TARGET_STRIP) $(kernel_exec_STRIPFLAGS) -o $@.bin $< && $(TARGET_OBJ2ELF) $@.bin $@ || (rm -f $@; rm -f $@.bin; exit 1); rm -f $@.bin; else $(TARGET_STRIP) $(kernel_exec_STRIPFLAGS) -o $@ $<; fi -endif - -if COND_riscv32_efi -platform_PROGRAMS += kernel.exec -kernel_exec_SOURCES = kern/riscv/efi/startup.S -kernel_exec_SOURCES += kern/riscv/efi/init.c kern/efi/fdt.c kern/riscv/cache.c kern/riscv/cache_flush.S kern/riscv/dl.c lib/division.c disk/efi/efidisk.c kern/efi/efi.c kern/efi/init.c kern/efi/mm.c term/efi/console.c kern/acpi.c kern/efi/acpi.c kern/compiler-rt.c kern/mm.c kern/time.c kern/generic/millisleep.c kern/command.c kern/corecmd.c kern/device.c kern/disk.c kern/dl.c kern/env.c kern/err.c kern/file.c kern/fs.c kern/list.c kern/main.c kern/misc.c kern/parser.c kern/partition.c kern/rescue_parser.c kern/rescue_reader.c kern/term.c -nodist_kernel_exec_SOURCES = symlist.c ## platform nodist sources -kernel_exec_LDADD = -kernel_exec_CFLAGS = $(AM_CFLAGS) $(CFLAGS_KERNEL) -kernel_exec_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_KERNEL) -Wl,-r,-d -kernel_exec_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_KERNEL) -kernel_exec_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_KERNEL) -kernel_exec_STRIPFLAGS = $(AM_STRIPFLAGS) $(STRIPFLAGS_KERNEL) --strip-unneeded -K start -R .note -R .comment -R .note.gnu.gold-version -R .eh_frame -kernel_exec_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += video/sm712_init.c video/sis315_init.c kern/arm/cache.S osdep/unix/exec.c osdep/unix/emuconsole.c osdep/windows/emuconsole.c osdep/unix/dl.c osdep/windows/dl.c osdep/linux/emunet.c osdep/basic/emunet.c osdep/unix/cputime.c osdep/windows/cputime.c kern/i386/int.S kern/i386/realmode.S boot/i386/pc/lzma_decode.S kern/mips/cache_flush.S -BUILT_SOURCES += $(nodist_kernel_exec_SOURCES) -CLEANFILES += $(nodist_kernel_exec_SOURCES) -platform_DATA += kernel.img -CLEANFILES += kernel.img - -kernel.img: kernel.exec$(EXEEXT) - if test x$(TARGET_APPLE_LINKER) = x1; then $(TARGET_STRIP) -S -x $(kernel_exec) -o $@.bin $<; $(TARGET_OBJCONV) -f$(TARGET_MODULE_FORMAT) -nr:_grub_mod_init:grub_mod_init -nr:_grub_mod_fini:grub_mod_fini -ed2022 -ed2016 -wd1106 -nu -nd $@.bin $@; rm -f $@.bin; elif test ! -z '$(TARGET_OBJ2ELF)'; then $(TARGET_STRIP) $(kernel_exec_STRIPFLAGS) -o $@.bin $< && $(TARGET_OBJ2ELF) $@.bin $@ || (rm -f $@; rm -f $@.bin; exit 1); rm -f $@.bin; else $(TARGET_STRIP) $(kernel_exec_STRIPFLAGS) -o $@ $<; fi -endif - -if COND_riscv64_efi -platform_PROGRAMS += kernel.exec -kernel_exec_SOURCES = kern/riscv/efi/startup.S -kernel_exec_SOURCES += kern/riscv/efi/init.c kern/efi/fdt.c kern/riscv/cache.c kern/riscv/cache_flush.S kern/riscv/dl.c disk/efi/efidisk.c kern/efi/efi.c kern/efi/init.c kern/efi/mm.c term/efi/console.c kern/acpi.c kern/efi/acpi.c kern/compiler-rt.c kern/mm.c kern/time.c kern/generic/millisleep.c kern/command.c kern/corecmd.c kern/device.c kern/disk.c kern/dl.c kern/env.c kern/err.c kern/file.c kern/fs.c kern/list.c kern/main.c kern/misc.c kern/parser.c kern/partition.c kern/rescue_parser.c kern/rescue_reader.c kern/term.c -nodist_kernel_exec_SOURCES = symlist.c ## platform nodist sources -kernel_exec_LDADD = -kernel_exec_CFLAGS = $(AM_CFLAGS) $(CFLAGS_KERNEL) -kernel_exec_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_KERNEL) -Wl,-r,-d -kernel_exec_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_KERNEL) -kernel_exec_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_KERNEL) -kernel_exec_STRIPFLAGS = $(AM_STRIPFLAGS) $(STRIPFLAGS_KERNEL) --strip-unneeded -K start -R .note -R .comment -R .note.gnu.gold-version -R .eh_frame -kernel_exec_DEPENDENCIES = $(TARGET_OBJ2ELF) -dist_noinst_DATA += video/sm712_init.c video/sis315_init.c kern/arm/cache.S osdep/unix/exec.c osdep/unix/emuconsole.c osdep/windows/emuconsole.c osdep/unix/dl.c osdep/windows/dl.c osdep/linux/emunet.c osdep/basic/emunet.c osdep/unix/cputime.c osdep/windows/cputime.c kern/i386/int.S kern/i386/realmode.S boot/i386/pc/lzma_decode.S kern/mips/cache_flush.S -BUILT_SOURCES += $(nodist_kernel_exec_SOURCES) -CLEANFILES += $(nodist_kernel_exec_SOURCES) -platform_DATA += kernel.img -CLEANFILES += kernel.img - -kernel.img: kernel.exec$(EXEEXT) - if test x$(TARGET_APPLE_LINKER) = x1; then $(TARGET_STRIP) -S -x $(kernel_exec) -o $@.bin $<; $(TARGET_OBJCONV) -f$(TARGET_MODULE_FORMAT) -nr:_grub_mod_init:grub_mod_init -nr:_grub_mod_fini:grub_mod_fini -ed2022 -ed2016 -wd1106 -nu -nd $@.bin $@; rm -f $@.bin; elif test ! -z '$(TARGET_OBJ2ELF)'; then $(TARGET_STRIP) $(kernel_exec_STRIPFLAGS) -o $@.bin $< && $(TARGET_OBJ2ELF) $@.bin $@ || (rm -f $@; rm -f $@.bin; exit 1); rm -f $@.bin; else $(TARGET_STRIP) $(kernel_exec_STRIPFLAGS) -o $@ $<; fi -endif - -if COND_i386_pc -platform_PROGRAMS += boot.image -boot_image_SOURCES = boot/i386/pc/boot.S -nodist_boot_image_SOURCES = ## platform nodist sources -boot_image_LDADD = -boot_image_CFLAGS = $(AM_CFLAGS) $(CFLAGS_IMAGE) -boot_image_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_IMAGE) $(TARGET_IMG_LDFLAGS) $(TARGET_IMG_BASE_LDOPT),0x7C00 -boot_image_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_IMAGE) -boot_image_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_IMAGE) -boot_image_OBJCOPYFLAGS = $(OBJCOPYFLAGS_IMAGE) -O binary -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_boot_image_SOURCES) -CLEANFILES += $(nodist_boot_image_SOURCES) -platform_DATA += boot.img -CLEANFILES += boot.img - -boot.img: boot.image$(EXEEXT) - if test x$(TARGET_APPLE_LINKER) = x1; then $(MACHO2IMG) $< $@; else $(TARGET_OBJCOPY) $(boot_image_OBJCOPYFLAGS) --strip-unneeded -R .note -R .comment -R .note.gnu.build-id -R .MIPS.abiflags -R .reginfo -R .rel.dyn -R .note.gnu.gold-version -R .ARM.exidx $< $@; fi - -endif - -if COND_i386_qemu -platform_PROGRAMS += boot.image -boot_image_SOURCES = boot/i386/qemu/boot.S -nodist_boot_image_SOURCES = ## platform nodist sources -boot_image_LDADD = -boot_image_CFLAGS = $(AM_CFLAGS) $(CFLAGS_IMAGE) -boot_image_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_IMAGE) $(TARGET_IMG_LDFLAGS) $(TARGET_IMG_BASE_LDOPT),$(GRUB_BOOT_MACHINE_LINK_ADDR) -boot_image_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_IMAGE) -boot_image_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_IMAGE) -DGRUB_BOOT_MACHINE_LINK_ADDR=$(GRUB_BOOT_MACHINE_LINK_ADDR) -boot_image_OBJCOPYFLAGS = $(OBJCOPYFLAGS_IMAGE) -O binary -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_boot_image_SOURCES) -CLEANFILES += $(nodist_boot_image_SOURCES) -platform_DATA += boot.img -CLEANFILES += boot.img - -boot.img: boot.image$(EXEEXT) - if test x$(TARGET_APPLE_LINKER) = x1; then $(MACHO2IMG) $< $@; else $(TARGET_OBJCOPY) $(boot_image_OBJCOPYFLAGS) --strip-unneeded -R .note -R .comment -R .note.gnu.build-id -R .MIPS.abiflags -R .reginfo -R .rel.dyn -R .note.gnu.gold-version -R .ARM.exidx $< $@; fi - -endif - -if COND_sparc64_ieee1275 -platform_PROGRAMS += boot.image -boot_image_SOURCES = boot/sparc64/ieee1275/boot.S -nodist_boot_image_SOURCES = ## platform nodist sources -boot_image_LDADD = -boot_image_CFLAGS = $(AM_CFLAGS) $(CFLAGS_IMAGE) -boot_image_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_IMAGE) -Wl,-Ttext=0x3fe0 -boot_image_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_IMAGE) -boot_image_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_IMAGE) -boot_image_OBJCOPYFLAGS = $(OBJCOPYFLAGS_IMAGE) -O binary -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_boot_image_SOURCES) -CLEANFILES += $(nodist_boot_image_SOURCES) -platform_DATA += boot.img -CLEANFILES += boot.img - -boot.img: boot.image$(EXEEXT) - if test x$(TARGET_APPLE_LINKER) = x1; then $(MACHO2IMG) $< $@; else $(TARGET_OBJCOPY) $(boot_image_OBJCOPYFLAGS) --strip-unneeded -R .note -R .comment -R .note.gnu.build-id -R .MIPS.abiflags -R .reginfo -R .rel.dyn -R .note.gnu.gold-version -R .ARM.exidx $< $@; fi - -endif - -if COND_i386_pc -platform_PROGRAMS += boot_hybrid.image -boot_hybrid_image_SOURCES = boot/i386/pc/boot.S -nodist_boot_hybrid_image_SOURCES = ## platform nodist sources -boot_hybrid_image_LDADD = -boot_hybrid_image_CFLAGS = $(AM_CFLAGS) $(CFLAGS_IMAGE) -boot_hybrid_image_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_IMAGE) $(TARGET_IMG_LDFLAGS) $(TARGET_IMG_BASE_LDOPT),0x7C00 -boot_hybrid_image_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_IMAGE) -DHYBRID_BOOT=1 -boot_hybrid_image_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_IMAGE) -boot_hybrid_image_OBJCOPYFLAGS = $(OBJCOPYFLAGS_IMAGE) -O binary -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_boot_hybrid_image_SOURCES) -CLEANFILES += $(nodist_boot_hybrid_image_SOURCES) -platform_DATA += boot_hybrid.img -CLEANFILES += boot_hybrid.img - -boot_hybrid.img: boot_hybrid.image$(EXEEXT) - if test x$(TARGET_APPLE_LINKER) = x1; then $(MACHO2IMG) $< $@; else $(TARGET_OBJCOPY) $(boot_hybrid_image_OBJCOPYFLAGS) --strip-unneeded -R .note -R .comment -R .note.gnu.build-id -R .MIPS.abiflags -R .reginfo -R .rel.dyn -R .note.gnu.gold-version -R .ARM.exidx $< $@; fi - -endif - -if COND_i386_pc -platform_PROGRAMS += cdboot.image -cdboot_image_SOURCES = boot/i386/pc/cdboot.S -nodist_cdboot_image_SOURCES = ## platform nodist sources -cdboot_image_LDADD = -cdboot_image_CFLAGS = $(AM_CFLAGS) $(CFLAGS_IMAGE) -cdboot_image_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_IMAGE) $(TARGET_IMG_LDFLAGS) $(TARGET_IMG_BASE_LDOPT),0x7C00 -cdboot_image_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_IMAGE) -cdboot_image_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_IMAGE) -cdboot_image_OBJCOPYFLAGS = $(OBJCOPYFLAGS_IMAGE) -O binary -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_cdboot_image_SOURCES) -CLEANFILES += $(nodist_cdboot_image_SOURCES) -platform_DATA += cdboot.img -CLEANFILES += cdboot.img - -cdboot.img: cdboot.image$(EXEEXT) - if test x$(TARGET_APPLE_LINKER) = x1; then $(MACHO2IMG) $< $@; else $(TARGET_OBJCOPY) $(cdboot_image_OBJCOPYFLAGS) --strip-unneeded -R .note -R .comment -R .note.gnu.build-id -R .MIPS.abiflags -R .reginfo -R .rel.dyn -R .note.gnu.gold-version -R .ARM.exidx $< $@; fi - -endif - -if COND_sparc64_ieee1275 -platform_PROGRAMS += cdboot.image -cdboot_image_SOURCES = boot/sparc64/ieee1275/boot.S -nodist_cdboot_image_SOURCES = ## platform nodist sources -cdboot_image_LDADD = -cdboot_image_CFLAGS = $(AM_CFLAGS) $(CFLAGS_IMAGE) -cdboot_image_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_IMAGE) -Wl,-Ttext=0x3fe0 -cdboot_image_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_IMAGE) -DCDBOOT=1 -cdboot_image_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_IMAGE) -cdboot_image_OBJCOPYFLAGS = $(OBJCOPYFLAGS_IMAGE) -O binary -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_cdboot_image_SOURCES) -CLEANFILES += $(nodist_cdboot_image_SOURCES) -platform_DATA += cdboot.img -CLEANFILES += cdboot.img - -cdboot.img: cdboot.image$(EXEEXT) - if test x$(TARGET_APPLE_LINKER) = x1; then $(MACHO2IMG) $< $@; else $(TARGET_OBJCOPY) $(cdboot_image_OBJCOPYFLAGS) --strip-unneeded -R .note -R .comment -R .note.gnu.build-id -R .MIPS.abiflags -R .reginfo -R .rel.dyn -R .note.gnu.gold-version -R .ARM.exidx $< $@; fi - -endif - -if COND_i386_pc -platform_PROGRAMS += pxeboot.image -pxeboot_image_SOURCES = boot/i386/pc/pxeboot.S -nodist_pxeboot_image_SOURCES = ## platform nodist sources -pxeboot_image_LDADD = -pxeboot_image_CFLAGS = $(AM_CFLAGS) $(CFLAGS_IMAGE) -pxeboot_image_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_IMAGE) $(TARGET_IMG_LDFLAGS) $(TARGET_IMG_BASE_LDOPT),0x7C00 -pxeboot_image_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_IMAGE) -pxeboot_image_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_IMAGE) -pxeboot_image_OBJCOPYFLAGS = $(OBJCOPYFLAGS_IMAGE) -O binary -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_pxeboot_image_SOURCES) -CLEANFILES += $(nodist_pxeboot_image_SOURCES) -platform_DATA += pxeboot.img -CLEANFILES += pxeboot.img - -pxeboot.img: pxeboot.image$(EXEEXT) - if test x$(TARGET_APPLE_LINKER) = x1; then $(MACHO2IMG) $< $@; else $(TARGET_OBJCOPY) $(pxeboot_image_OBJCOPYFLAGS) --strip-unneeded -R .note -R .comment -R .note.gnu.build-id -R .MIPS.abiflags -R .reginfo -R .rel.dyn -R .note.gnu.gold-version -R .ARM.exidx $< $@; fi - -endif - -if COND_i386_pc -platform_PROGRAMS += diskboot.image -diskboot_image_SOURCES = boot/i386/pc/diskboot.S -nodist_diskboot_image_SOURCES = ## platform nodist sources -diskboot_image_LDADD = -diskboot_image_CFLAGS = $(AM_CFLAGS) $(CFLAGS_IMAGE) -diskboot_image_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_IMAGE) $(TARGET_IMG_LDFLAGS) $(TARGET_IMG_BASE_LDOPT),0x8000 -diskboot_image_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_IMAGE) -diskboot_image_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_IMAGE) -diskboot_image_OBJCOPYFLAGS = $(OBJCOPYFLAGS_IMAGE) -O binary -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_diskboot_image_SOURCES) -CLEANFILES += $(nodist_diskboot_image_SOURCES) -platform_DATA += diskboot.img -CLEANFILES += diskboot.img - -diskboot.img: diskboot.image$(EXEEXT) - if test x$(TARGET_APPLE_LINKER) = x1; then $(MACHO2IMG) $< $@; else $(TARGET_OBJCOPY) $(diskboot_image_OBJCOPYFLAGS) --strip-unneeded -R .note -R .comment -R .note.gnu.build-id -R .MIPS.abiflags -R .reginfo -R .rel.dyn -R .note.gnu.gold-version -R .ARM.exidx $< $@; fi - -endif - -if COND_sparc64_ieee1275 -platform_PROGRAMS += diskboot.image -diskboot_image_SOURCES = boot/sparc64/ieee1275/diskboot.S -nodist_diskboot_image_SOURCES = ## platform nodist sources -diskboot_image_LDADD = -diskboot_image_CFLAGS = $(AM_CFLAGS) $(CFLAGS_IMAGE) -diskboot_image_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_IMAGE) -Wl,-Ttext=0x4200 -diskboot_image_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_IMAGE) -diskboot_image_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_IMAGE) -diskboot_image_OBJCOPYFLAGS = $(OBJCOPYFLAGS_IMAGE) -O binary -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_diskboot_image_SOURCES) -CLEANFILES += $(nodist_diskboot_image_SOURCES) -platform_DATA += diskboot.img -CLEANFILES += diskboot.img - -diskboot.img: diskboot.image$(EXEEXT) - if test x$(TARGET_APPLE_LINKER) = x1; then $(MACHO2IMG) $< $@; else $(TARGET_OBJCOPY) $(diskboot_image_OBJCOPYFLAGS) --strip-unneeded -R .note -R .comment -R .note.gnu.build-id -R .MIPS.abiflags -R .reginfo -R .rel.dyn -R .note.gnu.gold-version -R .ARM.exidx $< $@; fi - -endif - -if COND_i386_pc -platform_PROGRAMS += lnxboot.image -lnxboot_image_SOURCES = boot/i386/pc/lnxboot.S -nodist_lnxboot_image_SOURCES = ## platform nodist sources -lnxboot_image_LDADD = -lnxboot_image_CFLAGS = $(AM_CFLAGS) $(CFLAGS_IMAGE) -lnxboot_image_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_IMAGE) $(TARGET_IMG_LDFLAGS) $(TARGET_IMG_BASE_LDOPT),0x6000 -lnxboot_image_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_IMAGE) -lnxboot_image_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_IMAGE) -lnxboot_image_OBJCOPYFLAGS = $(OBJCOPYFLAGS_IMAGE) -O binary -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_lnxboot_image_SOURCES) -CLEANFILES += $(nodist_lnxboot_image_SOURCES) -platform_DATA += lnxboot.img -CLEANFILES += lnxboot.img - -lnxboot.img: lnxboot.image$(EXEEXT) - if test x$(TARGET_APPLE_LINKER) = x1; then $(MACHO2IMG) $< $@; else $(TARGET_OBJCOPY) $(lnxboot_image_OBJCOPYFLAGS) --strip-unneeded -R .note -R .comment -R .note.gnu.build-id -R .MIPS.abiflags -R .reginfo -R .rel.dyn -R .note.gnu.gold-version -R .ARM.exidx $< $@; fi - -endif - -if COND_mips_loongson -platform_PROGRAMS += xz_decompress.image -xz_decompress_image_SOURCES = boot/mips/startup_raw.S boot/decompressor/minilib.c boot/decompressor/xz.c lib/xzembed/xz_dec_bcj.c lib/xzembed/xz_dec_lzma2.c lib/xzembed/xz_dec_stream.c kern/compiler-rt.c -nodist_xz_decompress_image_SOURCES = ## platform nodist sources -xz_decompress_image_LDADD = -xz_decompress_image_CFLAGS = $(AM_CFLAGS) $(CFLAGS_IMAGE) -Wno-unreachable-code -xz_decompress_image_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_IMAGE) -Wl,-Ttext,$(TARGET_DECOMPRESSOR_LINK_ADDR) -xz_decompress_image_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_IMAGE) -I$(srcdir)/lib/posix_wrap -I$(srcdir)/lib/xzembed -DGRUB_EMBED_DECOMPRESSOR=1 -xz_decompress_image_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_IMAGE) -xz_decompress_image_OBJCOPYFLAGS = $(OBJCOPYFLAGS_IMAGE) -O binary -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_xz_decompress_image_SOURCES) -CLEANFILES += $(nodist_xz_decompress_image_SOURCES) -platform_DATA += xz_decompress.img -CLEANFILES += xz_decompress.img - -xz_decompress.img: xz_decompress.image$(EXEEXT) - if test x$(TARGET_APPLE_LINKER) = x1; then $(MACHO2IMG) $< $@; else $(TARGET_OBJCOPY) $(xz_decompress_image_OBJCOPYFLAGS) --strip-unneeded -R .note -R .comment -R .note.gnu.build-id -R .MIPS.abiflags -R .reginfo -R .rel.dyn -R .note.gnu.gold-version -R .ARM.exidx $< $@; fi - -endif - -if COND_mips_arc -platform_PROGRAMS += xz_decompress.image -xz_decompress_image_SOURCES = boot/mips/startup_raw.S boot/decompressor/minilib.c boot/decompressor/xz.c lib/xzembed/xz_dec_bcj.c lib/xzembed/xz_dec_lzma2.c lib/xzembed/xz_dec_stream.c kern/compiler-rt.c -nodist_xz_decompress_image_SOURCES = ## platform nodist sources -xz_decompress_image_LDADD = -xz_decompress_image_CFLAGS = $(AM_CFLAGS) $(CFLAGS_IMAGE) -Wno-unreachable-code -xz_decompress_image_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_IMAGE) -Wl,-Ttext,$(TARGET_DECOMPRESSOR_LINK_ADDR) -xz_decompress_image_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_IMAGE) -I$(srcdir)/lib/posix_wrap -I$(srcdir)/lib/xzembed -DGRUB_EMBED_DECOMPRESSOR=1 -xz_decompress_image_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_IMAGE) -xz_decompress_image_OBJCOPYFLAGS = $(OBJCOPYFLAGS_IMAGE) -O binary -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_xz_decompress_image_SOURCES) -CLEANFILES += $(nodist_xz_decompress_image_SOURCES) -platform_DATA += xz_decompress.img -CLEANFILES += xz_decompress.img - -xz_decompress.img: xz_decompress.image$(EXEEXT) - if test x$(TARGET_APPLE_LINKER) = x1; then $(MACHO2IMG) $< $@; else $(TARGET_OBJCOPY) $(xz_decompress_image_OBJCOPYFLAGS) --strip-unneeded -R .note -R .comment -R .note.gnu.build-id -R .MIPS.abiflags -R .reginfo -R .rel.dyn -R .note.gnu.gold-version -R .ARM.exidx $< $@; fi - -endif - -if COND_mips_qemu_mips -platform_PROGRAMS += xz_decompress.image -xz_decompress_image_SOURCES = boot/mips/startup_raw.S boot/decompressor/minilib.c boot/decompressor/xz.c lib/xzembed/xz_dec_bcj.c lib/xzembed/xz_dec_lzma2.c lib/xzembed/xz_dec_stream.c kern/compiler-rt.c -nodist_xz_decompress_image_SOURCES = ## platform nodist sources -xz_decompress_image_LDADD = -xz_decompress_image_CFLAGS = $(AM_CFLAGS) $(CFLAGS_IMAGE) -Wno-unreachable-code -xz_decompress_image_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_IMAGE) -Wl,-Ttext,$(TARGET_DECOMPRESSOR_LINK_ADDR) -xz_decompress_image_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_IMAGE) -I$(srcdir)/lib/posix_wrap -I$(srcdir)/lib/xzembed -DGRUB_EMBED_DECOMPRESSOR=1 -xz_decompress_image_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_IMAGE) -xz_decompress_image_OBJCOPYFLAGS = $(OBJCOPYFLAGS_IMAGE) -O binary -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_xz_decompress_image_SOURCES) -CLEANFILES += $(nodist_xz_decompress_image_SOURCES) -platform_DATA += xz_decompress.img -CLEANFILES += xz_decompress.img - -xz_decompress.img: xz_decompress.image$(EXEEXT) - if test x$(TARGET_APPLE_LINKER) = x1; then $(MACHO2IMG) $< $@; else $(TARGET_OBJCOPY) $(xz_decompress_image_OBJCOPYFLAGS) --strip-unneeded -R .note -R .comment -R .note.gnu.build-id -R .MIPS.abiflags -R .reginfo -R .rel.dyn -R .note.gnu.gold-version -R .ARM.exidx $< $@; fi - -endif - -if COND_mips_loongson -platform_PROGRAMS += none_decompress.image -none_decompress_image_SOURCES = boot/mips/startup_raw.S boot/decompressor/none.c -nodist_none_decompress_image_SOURCES = ## platform nodist sources -none_decompress_image_LDADD = -none_decompress_image_CFLAGS = $(AM_CFLAGS) $(CFLAGS_IMAGE) -none_decompress_image_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_IMAGE) -Wl,-Ttext,$(TARGET_DECOMPRESSOR_LINK_ADDR) -none_decompress_image_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_IMAGE) -DGRUB_EMBED_DECOMPRESSOR=1 -none_decompress_image_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_IMAGE) -none_decompress_image_OBJCOPYFLAGS = $(OBJCOPYFLAGS_IMAGE) -O binary -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_none_decompress_image_SOURCES) -CLEANFILES += $(nodist_none_decompress_image_SOURCES) -platform_DATA += none_decompress.img -CLEANFILES += none_decompress.img - -none_decompress.img: none_decompress.image$(EXEEXT) - if test x$(TARGET_APPLE_LINKER) = x1; then $(MACHO2IMG) $< $@; else $(TARGET_OBJCOPY) $(none_decompress_image_OBJCOPYFLAGS) --strip-unneeded -R .note -R .comment -R .note.gnu.build-id -R .MIPS.abiflags -R .reginfo -R .rel.dyn -R .note.gnu.gold-version -R .ARM.exidx $< $@; fi - -endif - -if COND_mips_arc -platform_PROGRAMS += none_decompress.image -none_decompress_image_SOURCES = boot/mips/startup_raw.S boot/decompressor/none.c -nodist_none_decompress_image_SOURCES = ## platform nodist sources -none_decompress_image_LDADD = -none_decompress_image_CFLAGS = $(AM_CFLAGS) $(CFLAGS_IMAGE) -none_decompress_image_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_IMAGE) -Wl,-Ttext,$(TARGET_DECOMPRESSOR_LINK_ADDR) -none_decompress_image_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_IMAGE) -DGRUB_EMBED_DECOMPRESSOR=1 -none_decompress_image_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_IMAGE) -none_decompress_image_OBJCOPYFLAGS = $(OBJCOPYFLAGS_IMAGE) -O binary -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_none_decompress_image_SOURCES) -CLEANFILES += $(nodist_none_decompress_image_SOURCES) -platform_DATA += none_decompress.img -CLEANFILES += none_decompress.img - -none_decompress.img: none_decompress.image$(EXEEXT) - if test x$(TARGET_APPLE_LINKER) = x1; then $(MACHO2IMG) $< $@; else $(TARGET_OBJCOPY) $(none_decompress_image_OBJCOPYFLAGS) --strip-unneeded -R .note -R .comment -R .note.gnu.build-id -R .MIPS.abiflags -R .reginfo -R .rel.dyn -R .note.gnu.gold-version -R .ARM.exidx $< $@; fi - -endif - -if COND_mips_qemu_mips -platform_PROGRAMS += none_decompress.image -none_decompress_image_SOURCES = boot/mips/startup_raw.S boot/decompressor/none.c -nodist_none_decompress_image_SOURCES = ## platform nodist sources -none_decompress_image_LDADD = -none_decompress_image_CFLAGS = $(AM_CFLAGS) $(CFLAGS_IMAGE) -none_decompress_image_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_IMAGE) -Wl,-Ttext,$(TARGET_DECOMPRESSOR_LINK_ADDR) -none_decompress_image_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_IMAGE) -DGRUB_EMBED_DECOMPRESSOR=1 -none_decompress_image_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_IMAGE) -none_decompress_image_OBJCOPYFLAGS = $(OBJCOPYFLAGS_IMAGE) -O binary -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_none_decompress_image_SOURCES) -CLEANFILES += $(nodist_none_decompress_image_SOURCES) -platform_DATA += none_decompress.img -CLEANFILES += none_decompress.img - -none_decompress.img: none_decompress.image$(EXEEXT) - if test x$(TARGET_APPLE_LINKER) = x1; then $(MACHO2IMG) $< $@; else $(TARGET_OBJCOPY) $(none_decompress_image_OBJCOPYFLAGS) --strip-unneeded -R .note -R .comment -R .note.gnu.build-id -R .MIPS.abiflags -R .reginfo -R .rel.dyn -R .note.gnu.gold-version -R .ARM.exidx $< $@; fi - -endif - -if COND_i386_pc -platform_PROGRAMS += lzma_decompress.image -lzma_decompress_image_SOURCES = boot/i386/pc/startup_raw.S -nodist_lzma_decompress_image_SOURCES = rs_decoder.h ## platform nodist sources -lzma_decompress_image_LDADD = -lzma_decompress_image_CFLAGS = $(AM_CFLAGS) $(CFLAGS_IMAGE) -lzma_decompress_image_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_IMAGE) $(TARGET_IMG_LDFLAGS) $(TARGET_IMG_BASE_LDOPT),0x8200 -lzma_decompress_image_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_IMAGE) -lzma_decompress_image_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_IMAGE) -lzma_decompress_image_OBJCOPYFLAGS = $(OBJCOPYFLAGS_IMAGE) -O binary -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_lzma_decompress_image_SOURCES) -CLEANFILES += $(nodist_lzma_decompress_image_SOURCES) -platform_DATA += lzma_decompress.img -CLEANFILES += lzma_decompress.img - -lzma_decompress.img: lzma_decompress.image$(EXEEXT) - if test x$(TARGET_APPLE_LINKER) = x1; then $(MACHO2IMG) $< $@; else $(TARGET_OBJCOPY) $(lzma_decompress_image_OBJCOPYFLAGS) --strip-unneeded -R .note -R .comment -R .note.gnu.build-id -R .MIPS.abiflags -R .reginfo -R .rel.dyn -R .note.gnu.gold-version -R .ARM.exidx $< $@; fi - -endif - -if COND_mips_loongson -platform_PROGRAMS += fwstart.image -fwstart_image_SOURCES = boot/mips/loongson/fwstart.S -nodist_fwstart_image_SOURCES = ## platform nodist sources -fwstart_image_LDADD = -fwstart_image_CFLAGS = $(AM_CFLAGS) $(CFLAGS_IMAGE) -fwstart_image_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_IMAGE) -Wl,-N,-S,-Ttext,0xbfc00000,-Bstatic -fwstart_image_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_IMAGE) -fwstart_image_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_IMAGE) -fwstart_image_OBJCOPYFLAGS = $(OBJCOPYFLAGS_IMAGE) -O binary -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_fwstart_image_SOURCES) -CLEANFILES += $(nodist_fwstart_image_SOURCES) -platform_DATA += fwstart.img -CLEANFILES += fwstart.img - -fwstart.img: fwstart.image$(EXEEXT) - if test x$(TARGET_APPLE_LINKER) = x1; then $(MACHO2IMG) $< $@; else $(TARGET_OBJCOPY) $(fwstart_image_OBJCOPYFLAGS) --strip-unneeded -R .note -R .comment -R .note.gnu.build-id -R .MIPS.abiflags -R .reginfo -R .rel.dyn -R .note.gnu.gold-version -R .ARM.exidx $< $@; fi - -endif - -if COND_mips_loongson -platform_PROGRAMS += fwstart_fuloong2f.image -fwstart_fuloong2f_image_SOURCES = boot/mips/loongson/fuloong2f.S -nodist_fwstart_fuloong2f_image_SOURCES = ## platform nodist sources -fwstart_fuloong2f_image_LDADD = -fwstart_fuloong2f_image_CFLAGS = $(AM_CFLAGS) $(CFLAGS_IMAGE) -fwstart_fuloong2f_image_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_IMAGE) -Wl,-N,-S,-Ttext,0xbfc00000,-Bstatic -fwstart_fuloong2f_image_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_IMAGE) -fwstart_fuloong2f_image_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_IMAGE) -fwstart_fuloong2f_image_OBJCOPYFLAGS = $(OBJCOPYFLAGS_IMAGE) -O binary -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_fwstart_fuloong2f_image_SOURCES) -CLEANFILES += $(nodist_fwstart_fuloong2f_image_SOURCES) -platform_DATA += fwstart_fuloong2f.img -CLEANFILES += fwstart_fuloong2f.img - -fwstart_fuloong2f.img: fwstart_fuloong2f.image$(EXEEXT) - if test x$(TARGET_APPLE_LINKER) = x1; then $(MACHO2IMG) $< $@; else $(TARGET_OBJCOPY) $(fwstart_fuloong2f_image_OBJCOPYFLAGS) --strip-unneeded -R .note -R .comment -R .note.gnu.build-id -R .MIPS.abiflags -R .reginfo -R .rel.dyn -R .note.gnu.gold-version -R .ARM.exidx $< $@; fi - -endif - -if COND_emu -bin_PROGRAMS += grub-emu -if COND_MAN_PAGES -man_MANS += grub-emu.1 - -grub-emu.1: grub-emu - chmod a+x grub-emu - PATH=$(builddir):$$PATH pkgdatadir=$(builddir) $(HELP2MAN) --section=1 -i $(top_srcdir)/docs/man/grub-emu.h2m -o $@ grub-emu - -CLEANFILES += grub-emu.1 -endif -grub_emu_SOURCES = kern/emu/full.c -nodist_grub_emu_SOURCES = grub_emu_init.c -grub_emu_LDADD = kernel.exec$(EXEEXT) $(MODULE_FILES) lib/gnulib/libgnu.a $(LIBINTL) $(LIBUTIL) $(LIBSDL) $(LIBUSB) $(LIBPCIACCESS) $(LIBDEVMAPPER) $(LIBZFS) $(LIBNVPAIR) $(LIBGEOM) -grub_emu_CFLAGS = $(AM_CFLAGS) $(CFLAGS_PROGRAM) -grub_emu_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_PROGRAM) -grub_emu_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_PROGRAM) -grub_emu_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_PROGRAM) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_grub_emu_SOURCES) -CLEANFILES += $(nodist_grub_emu_SOURCES) -endif - -if COND_emu -bin_PROGRAMS += grub-emu-lite -grub_emu_lite_SOURCES = kern/emu/lite.c -nodist_grub_emu_lite_SOURCES = symlist.c -grub_emu_lite_LDADD = kernel.exec$(EXEEXT) lib/gnulib/libgnu.a $(LIBINTL) $(LIBUTIL) $(LIBSDL) $(LIBUSB) $(LIBPCIACCESS) $(LIBDEVMAPPER) $(LIBZFS) $(LIBNVPAIR) $(LIBGEOM) -grub_emu_lite_CFLAGS = $(AM_CFLAGS) $(CFLAGS_PROGRAM) -grub_emu_lite_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_PROGRAM) -grub_emu_lite_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_PROGRAM) -grub_emu_lite_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_PROGRAM) -dist_noinst_DATA += -BUILT_SOURCES += $(nodist_grub_emu_lite_SOURCES) -CLEANFILES += $(nodist_grub_emu_lite_SOURCES) -endif -noinst_DATA += gensyminfo.sh - -gensyminfo.sh: $(top_builddir)/config.status gensyminfo.sh.in - (for x in gensyminfo.sh.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x gensyminfo.sh - -CLEANFILES += gensyminfo.sh -EXTRA_DIST += -dist_noinst_DATA += gensyminfo.sh.in -noinst_DATA += genmod.sh - -genmod.sh: $(top_builddir)/config.status genmod.sh.in - (for x in genmod.sh.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x genmod.sh - -CLEANFILES += genmod.sh -EXTRA_DIST += -dist_noinst_DATA += genmod.sh.in -noinst_DATA += modinfo.sh - -modinfo.sh: $(top_builddir)/config.status modinfo.sh.in - (for x in modinfo.sh.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x modinfo.sh - -CLEANFILES += modinfo.sh -EXTRA_DIST += -dist_noinst_DATA += modinfo.sh.in -platform_DATA += gmodule.pl - -gmodule.pl: $(top_builddir)/config.status gmodule.pl.in - (for x in gmodule.pl.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x gmodule.pl - -CLEANFILES += gmodule.pl -EXTRA_DIST += -dist_noinst_DATA += gmodule.pl.in -platform_DATA += gdb_grub - -gdb_grub: $(top_builddir)/config.status gdb_grub.in - (for x in gdb_grub.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x gdb_grub - -CLEANFILES += gdb_grub -EXTRA_DIST += -dist_noinst_DATA += gdb_grub.in - -if COND_powerpc_ieee1275 -platform_DATA += grub.chrp - -grub.chrp: $(top_builddir)/config.status boot/powerpc/grub.chrp.in - (for x in boot/powerpc/grub.chrp.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x grub.chrp - -CLEANFILES += grub.chrp -EXTRA_DIST += -dist_noinst_DATA += boot/powerpc/grub.chrp.in -endif - -if COND_powerpc_ieee1275 -platform_DATA += bootinfo.txt - -bootinfo.txt: $(top_builddir)/config.status boot/powerpc/bootinfo.txt.in - (for x in boot/powerpc/bootinfo.txt.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x bootinfo.txt - -CLEANFILES += bootinfo.txt -EXTRA_DIST += -dist_noinst_DATA += boot/powerpc/bootinfo.txt.in -endif diff --git a/thirdparty/grub-2.04/grub-core/Makefile.core.def b/thirdparty/grub-2.04/grub-core/Makefile.core.def deleted file mode 100644 index 474a63e68..000000000 --- a/thirdparty/grub-2.04/grub-core/Makefile.core.def +++ /dev/null @@ -1,2505 +0,0 @@ -AutoGen definitions Makefile.tpl; - -transform_data = { - installdir = noinst; - name = gensyminfo.sh; - common = gensyminfo.sh.in; -}; - -transform_data = { - installdir = noinst; - name = genmod.sh; - common = genmod.sh.in; -}; - -transform_data = { - installdir = noinst; - name = modinfo.sh; - common = modinfo.sh.in; -}; - -transform_data = { - installdir = platform; - name = gmodule.pl; - common = gmodule.pl.in; -}; - -transform_data = { - installdir = platform; - name = gdb_grub; - common = gdb_grub.in; -}; - -transform_data = { - installdir = platform; - name = grub.chrp; - common = boot/powerpc/grub.chrp.in; - enable = powerpc_ieee1275; -}; - -transform_data = { - installdir = platform; - name = bootinfo.txt; - common = boot/powerpc/bootinfo.txt.in; - enable = powerpc_ieee1275; -}; - -kernel = { - name = kernel; - - nostrip = emu; - - emu_ldflags = '-Wl,-r,-d'; - i386_efi_ldflags = '-Wl,-r,-d'; - i386_efi_stripflags = '--strip-unneeded -K start -R .note -R .comment -R .note.gnu.gold-version'; - x86_64_efi_ldflags = '-Wl,-r,-d'; - x86_64_efi_stripflags = '--strip-unneeded -K start -R .note -R .comment -R .note.gnu.gold-version'; - - ia64_efi_cflags = '-fno-builtin -fpic -minline-int-divide-max-throughput'; - ia64_efi_ldflags = '-Wl,-r,-d'; - ia64_efi_stripflags = '--strip-unneeded -K start -R .note -R .comment -R .note.gnu.gold-version'; - - arm_efi_ldflags = '-Wl,-r,-d'; - arm_efi_stripflags = '--strip-unneeded -K start -R .note -R .comment -R .note.gnu.gold-version'; - - arm64_efi_ldflags = '-Wl,-r,-d'; - arm64_efi_stripflags = '--strip-unneeded -K start -R .note -R .comment -R .note.gnu.gold-version -R .eh_frame'; - - riscv32_efi_ldflags = '-Wl,-r,-d'; - riscv32_efi_stripflags = '--strip-unneeded -K start -R .note -R .comment -R .note.gnu.gold-version -R .eh_frame'; - - riscv64_efi_ldflags = '-Wl,-r,-d'; - riscv64_efi_stripflags = '--strip-unneeded -K start -R .note -R .comment -R .note.gnu.gold-version -R .eh_frame'; - - i386_pc_ldflags = '$(TARGET_IMG_LDFLAGS)'; - i386_pc_ldflags = '$(TARGET_IMG_BASE_LDOPT),0x9000'; - i386_qemu_ldflags = '$(TARGET_IMG_LDFLAGS)'; - i386_qemu_ldflags = '$(TARGET_IMG_BASE_LDOPT),0x9000'; - i386_coreboot_ldflags = '$(TARGET_IMG_LDFLAGS)'; - i386_coreboot_ldflags = '$(TARGET_IMG_BASE_LDOPT),0x9000'; - i386_multiboot_ldflags = '$(TARGET_IMG_LDFLAGS)'; - i386_multiboot_ldflags = '$(TARGET_IMG_BASE_LDOPT),0x9000'; - i386_ieee1275_ldflags = '$(TARGET_IMG_LDFLAGS)'; - i386_ieee1275_ldflags = '$(TARGET_IMG_BASE_LDOPT),0x10000'; - i386_xen_ldflags = '$(TARGET_IMG_LDFLAGS)'; - i386_xen_ldflags = '$(TARGET_IMG_BASE_LDOPT),0'; - x86_64_xen_ldflags = '$(TARGET_IMG_LDFLAGS)'; - x86_64_xen_ldflags = '$(TARGET_IMG_BASE_LDOPT),0'; - i386_xen_pvh_ldflags = '$(TARGET_IMG_LDFLAGS)'; - i386_xen_pvh_ldflags = '$(TARGET_IMG_BASE_LDOPT),0x100000'; - - mips_loongson_ldflags = '-Wl,-Ttext,0x80200000'; - powerpc_ieee1275_ldflags = '-Wl,-Ttext,0x200000'; - sparc64_ieee1275_ldflags = '-Wl,-Ttext,0x4400'; - mips_arc_ldflags = '-Wl,-Ttext,$(TARGET_LINK_ADDR)'; - mips_qemu_mips_ldflags = '-Wl,-Ttext,0x80200000'; - - mips_arc_cppflags = '-DGRUB_DECOMPRESSOR_LINK_ADDR=$(TARGET_DECOMPRESSOR_LINK_ADDR)'; - i386_qemu_cppflags = '-DGRUB_BOOT_MACHINE_LINK_ADDR=$(GRUB_BOOT_MACHINE_LINK_ADDR)'; - emu_cflags = '$(CFLAGS_GNULIB)'; - emu_cppflags = '$(CPPFLAGS_GNULIB)'; - arm_uboot_ldflags = '-Wl,-r,-d'; - arm_uboot_stripflags = '--strip-unneeded -K start -R .note -R .comment -R .note.gnu.gold-version'; - arm_coreboot_ldflags = '-Wl,-r,-d'; - arm_coreboot_stripflags = '--strip-unneeded -K start -R .note -R .comment -R .note.gnu.gold-version'; - - i386_pc_startup = kern/i386/pc/startup.S; - i386_efi_startup = kern/i386/efi/startup.S; - x86_64_efi_startup = kern/x86_64/efi/startup.S; - i386_xen_startup = kern/i386/xen/startup.S; - x86_64_xen_startup = kern/x86_64/xen/startup.S; - i386_xen_pvh_startup = kern/i386/xen/startup_pvh.S; - i386_qemu_startup = kern/i386/qemu/startup.S; - i386_ieee1275_startup = kern/i386/ieee1275/startup.S; - i386_coreboot_startup = kern/i386/coreboot/startup.S; - i386_multiboot_startup = kern/i386/coreboot/startup.S; - mips_startup = kern/mips/startup.S; - sparc64_ieee1275_startup = kern/sparc64/ieee1275/crt0.S; - powerpc_ieee1275_startup = kern/powerpc/ieee1275/startup.S; - arm_uboot_startup = kern/arm/startup.S; - arm_coreboot_startup = kern/arm/startup.S; - arm_efi_startup = kern/arm/efi/startup.S; - arm64_efi_startup = kern/arm64/efi/startup.S; - riscv32_efi_startup = kern/riscv/efi/startup.S; - riscv64_efi_startup = kern/riscv/efi/startup.S; - - common = kern/command.c; - common = kern/corecmd.c; - common = kern/device.c; - common = kern/disk.c; - common = kern/dl.c; - common = kern/env.c; - common = kern/err.c; - common = kern/file.c; - common = kern/fs.c; - common = kern/list.c; - common = kern/main.c; - common = kern/misc.c; - common = kern/parser.c; - common = kern/partition.c; - common = kern/rescue_parser.c; - common = kern/rescue_reader.c; - common = kern/term.c; - - noemu = kern/compiler-rt.c; - noemu = kern/mm.c; - noemu = kern/time.c; - noemu = kern/generic/millisleep.c; - - noemu_nodist = symlist.c; - - mips = kern/generic/rtc_get_time_ms.c; - - ieee1275 = disk/ieee1275/ofdisk.c; - ieee1275 = kern/ieee1275/cmain.c; - ieee1275 = kern/ieee1275/ieee1275.c; - ieee1275 = kern/ieee1275/mmap.c; - ieee1275 = kern/ieee1275/openfw.c; - ieee1275 = term/ieee1275/console.c; - ieee1275 = kern/ieee1275/init.c; - - uboot = disk/uboot/ubootdisk.c; - uboot = kern/uboot/uboot.c; - uboot = kern/uboot/init.c; - uboot = kern/uboot/hw.c; - uboot = term/uboot/console.c; - arm_uboot = kern/arm/uboot/init.c; - arm_uboot = kern/arm/uboot/uboot.S; - - arm_coreboot = kern/arm/coreboot/init.c; - arm_coreboot = kern/arm/coreboot/timer.c; - arm_coreboot = kern/arm/coreboot/coreboot.S; - arm_coreboot = lib/fdt.c; - arm_coreboot = bus/fdt.c; - arm_coreboot = term/ps2.c; - arm_coreboot = term/arm/pl050.c; - arm_coreboot = term/arm/cros.c; - arm_coreboot = term/arm/cros_ec.c; - arm_coreboot = bus/spi/rk3288_spi.c; - arm_coreboot = commands/keylayouts.c; - arm_coreboot = kern/arm/coreboot/dma.c; - - terminfoinkernel = term/terminfo.c; - terminfoinkernel = term/tparm.c; - terminfoinkernel = commands/extcmd.c; - terminfoinkernel = lib/arg.c; - - softdiv = lib/division.c; - - i386 = kern/i386/dl.c; - i386_xen = kern/i386/dl.c; - i386_xen_pvh = kern/i386/dl.c; - - i386_coreboot = kern/i386/coreboot/init.c; - i386_multiboot = kern/i386/coreboot/init.c; - i386_qemu = kern/i386/qemu/init.c; - i386_coreboot_multiboot_qemu = term/i386/pc/vga_text.c; - coreboot = video/coreboot/cbfb.c; - - efi = disk/efi/efidisk.c; - efi = kern/efi/efi.c; - efi = kern/efi/init.c; - efi = kern/efi/mm.c; - efi = term/efi/console.c; - efi = kern/acpi.c; - efi = kern/efi/acpi.c; - i386_coreboot = kern/i386/pc/acpi.c; - i386_multiboot = kern/i386/pc/acpi.c; - i386_coreboot = kern/acpi.c; - i386_multiboot = kern/acpi.c; - - x86 = kern/i386/tsc.c; - x86 = kern/i386/tsc_pit.c; - i386_efi = kern/i386/efi/tsc.c; - x86_64_efi = kern/i386/efi/tsc.c; - i386_efi = kern/i386/tsc_pmtimer.c; - i386_coreboot = kern/i386/tsc_pmtimer.c; - x86_64_efi = kern/i386/tsc_pmtimer.c; - - i386_efi = kern/i386/efi/init.c; - i386_efi = bus/pci.c; - - x86_64 = kern/x86_64/dl.c; - x86_64_xen = kern/x86_64/dl.c; - x86_64_efi = kern/x86_64/efi/callwrap.S; - x86_64_efi = kern/i386/efi/init.c; - x86_64_efi = bus/pci.c; - - xen = kern/i386/tsc.c; - xen = kern/i386/xen/tsc.c; - x86_64_xen = kern/x86_64/xen/hypercall.S; - i386_xen = kern/i386/xen/hypercall.S; - xen = kern/xen/init.c; - xen = term/xen/console.c; - xen = disk/xen/xendisk.c; - xen = commands/boot.c; - - i386_xen_pvh = commands/boot.c; - i386_xen_pvh = disk/xen/xendisk.c; - i386_xen_pvh = kern/i386/tsc.c; - i386_xen_pvh = kern/i386/xen/tsc.c; - i386_xen_pvh = kern/i386/xen/pvh.c; - i386_xen_pvh = kern/xen/init.c; - i386_xen_pvh = term/xen/console.c; - - ia64_efi = kern/ia64/efi/startup.S; - ia64_efi = kern/ia64/efi/init.c; - ia64_efi = kern/ia64/dl.c; - ia64_efi = kern/ia64/dl_helper.c; - ia64_efi = kern/ia64/cache.c; - - arm_efi = kern/arm/efi/init.c; - arm_efi = kern/efi/fdt.c; - - arm64_efi = kern/arm64/efi/init.c; - arm64_efi = kern/efi/fdt.c; - - riscv32_efi = kern/riscv/efi/init.c; - riscv32_efi = kern/efi/fdt.c; - - riscv64_efi = kern/riscv/efi/init.c; - riscv64_efi = kern/efi/fdt.c; - - i386_pc = kern/i386/pc/init.c; - i386_pc = kern/i386/pc/mmap.c; - i386_pc = term/i386/pc/console.c; - - i386_qemu = bus/pci.c; - i386_qemu = kern/vga_init.c; - i386_qemu = kern/i386/qemu/mmap.c; - - coreboot = kern/coreboot/mmap.c; - i386_coreboot = kern/i386/coreboot/cbtable.c; - coreboot = kern/coreboot/cbtable.c; - arm_coreboot = kern/arm/coreboot/cbtable.c; - - i386_multiboot = kern/i386/multiboot_mmap.c; - - mips = kern/mips/cache.S; - mips = kern/mips/dl.c; - mips = kern/mips/init.c; - - mips_qemu_mips = kern/mips/qemu_mips/init.c; - mips_qemu_mips = term/ns8250.c; - mips_qemu_mips = term/serial.c; - mips_qemu_mips = term/at_keyboard.c; - mips_qemu_mips = term/ps2.c; - mips_qemu_mips = commands/boot.c; - mips_qemu_mips = commands/keylayouts.c; - mips_qemu_mips = term/i386/pc/vga_text.c; - mips_qemu_mips = kern/vga_init.c; - - mips_arc = kern/mips/arc/init.c; - mips_arc = term/arc/console.c; - mips_arc = disk/arc/arcdisk.c; - - mips_loongson = term/ns8250.c; - mips_loongson = bus/bonito.c; - mips_loongson = bus/cs5536.c; - mips_loongson = bus/pci.c; - mips_loongson = kern/mips/loongson/init.c; - mips_loongson = term/at_keyboard.c; - mips_loongson = term/ps2.c; - mips_loongson = commands/boot.c; - mips_loongson = term/serial.c; - mips_loongson = video/sm712.c; - mips_loongson = video/sis315pro.c; - mips_loongson = video/radeon_fuloong2e.c; - mips_loongson = video/radeon_yeeloong3a.c; - extra_dist = video/sm712_init.c; - extra_dist = video/sis315_init.c; - mips_loongson = commands/keylayouts.c; - - powerpc_ieee1275 = kern/powerpc/cache.S; - powerpc_ieee1275 = kern/powerpc/dl.c; - powerpc_ieee1275 = kern/powerpc/compiler-rt.S; - - sparc64_ieee1275 = kern/sparc64/cache.S; - sparc64_ieee1275 = kern/sparc64/dl.c; - sparc64_ieee1275 = kern/sparc64/ieee1275/ieee1275.c; - sparc64_ieee1275 = disk/ieee1275/obdisk.c; - - arm = kern/arm/dl.c; - arm = kern/arm/dl_helper.c; - arm = kern/arm/cache_armv6.S; - arm = kern/arm/cache_armv7.S; - extra_dist = kern/arm/cache.S; - arm = kern/arm/cache.c; - arm = kern/arm/compiler-rt.S; - - arm64 = kern/arm64/cache.c; - arm64 = kern/arm64/cache_flush.S; - arm64 = kern/arm64/dl.c; - arm64 = kern/arm64/dl_helper.c; - - riscv32 = kern/riscv/cache.c; - riscv32 = kern/riscv/cache_flush.S; - riscv32 = kern/riscv/dl.c; - - riscv64 = kern/riscv/cache.c; - riscv64 = kern/riscv/cache_flush.S; - riscv64 = kern/riscv/dl.c; - - emu = disk/host.c; - emu = kern/emu/cache_s.S; - emu = kern/emu/hostdisk.c; - emu = osdep/unix/hostdisk.c; - emu = osdep/exec.c; - extra_dist = osdep/unix/exec.c; - emu = osdep/devmapper/hostdisk.c; - emu = osdep/hostdisk.c; - emu = kern/emu/hostfs.c; - emu = kern/emu/main.c; - emu = kern/emu/argp_common.c; - emu = kern/emu/misc.c; - emu = kern/emu/mm.c; - emu = kern/emu/time.c; - emu = kern/emu/cache.c; - emu = osdep/emuconsole.c; - extra_dist = osdep/unix/emuconsole.c; - extra_dist = osdep/windows/emuconsole.c; - emu = osdep/dl.c; - extra_dist = osdep/unix/dl.c; - extra_dist = osdep/windows/dl.c; - emu = osdep/sleep.c; - emu = osdep/init.c; - emu = osdep/emunet.c; - extra_dist = osdep/linux/emunet.c; - extra_dist = osdep/basic/emunet.c; - emu = osdep/cputime.c; - extra_dist = osdep/unix/cputime.c; - extra_dist = osdep/windows/cputime.c; - - videoinkernel = term/gfxterm.c; - videoinkernel = font/font.c; - videoinkernel = font/font_cmd.c; - videoinkernel = io/bufio.c; - videoinkernel = video/fb/fbblit.c; - videoinkernel = video/fb/fbfill.c; - videoinkernel = video/fb/fbutil.c; - videoinkernel = video/fb/video_fb.c; - videoinkernel = video/video.c; - - extra_dist = kern/i386/int.S; - extra_dist = kern/i386/realmode.S; - extra_dist = boot/i386/pc/lzma_decode.S; - extra_dist = kern/mips/cache_flush.S; -}; - -program = { - name = grub-emu; - mansection = 1; - - emu = kern/emu/full.c; - emu_nodist = grub_emu_init.c; - - ldadd = 'kernel.exec$(EXEEXT)'; - ldadd = '$(MODULE_FILES)'; - ldadd = 'lib/gnulib/libgnu.a $(LIBINTL) $(LIBUTIL) $(LIBSDL) $(LIBUSB) $(LIBPCIACCESS) $(LIBDEVMAPPER) $(LIBZFS) $(LIBNVPAIR) $(LIBGEOM)'; - - enable = emu; -}; - -program = { - name = grub-emu-lite; - - emu = kern/emu/lite.c; - emu_nodist = symlist.c; - - ldadd = 'kernel.exec$(EXEEXT)'; - ldadd = 'lib/gnulib/libgnu.a $(LIBINTL) $(LIBUTIL) $(LIBSDL) $(LIBUSB) $(LIBPCIACCESS) $(LIBDEVMAPPER) $(LIBZFS) $(LIBNVPAIR) $(LIBGEOM)'; - - enable = emu; -}; - -image = { - name = boot; - i386_pc = boot/i386/pc/boot.S; - i386_qemu = boot/i386/qemu/boot.S; - sparc64_ieee1275 = boot/sparc64/ieee1275/boot.S; - - i386_pc_ldflags = '$(TARGET_IMG_LDFLAGS)'; - i386_pc_ldflags = '$(TARGET_IMG_BASE_LDOPT),0x7C00'; - - i386_qemu_ldflags = '$(TARGET_IMG_LDFLAGS)'; - i386_qemu_ldflags = '$(TARGET_IMG_BASE_LDOPT),$(GRUB_BOOT_MACHINE_LINK_ADDR)'; - i386_qemu_ccasflags = '-DGRUB_BOOT_MACHINE_LINK_ADDR=$(GRUB_BOOT_MACHINE_LINK_ADDR)'; - - /* The entry point for a.out binaries on sparc64 starts - at 0x4000. Since we are writing the 32 bytes long a.out - header in the assembly code ourselves, we need to tell - the linker to adjust the start of the text segment to - 0x4000 - 0x20 = 0x3fe0. - */ - sparc64_ieee1275_ldflags = ' -Wl,-Ttext=0x3fe0'; - sparc64_ieee1275_objcopyflags = '-O binary'; - - objcopyflags = '-O binary'; - enable = i386_pc; - enable = i386_qemu; - enable = sparc64_ieee1275; -}; - -image = { - name = boot_hybrid; - i386_pc = boot/i386/pc/boot.S; - - cppflags = '-DHYBRID_BOOT=1'; - - i386_pc_ldflags = '$(TARGET_IMG_LDFLAGS)'; - i386_pc_ldflags = '$(TARGET_IMG_BASE_LDOPT),0x7C00'; - - objcopyflags = '-O binary'; - enable = i386_pc; -}; - -image = { - name = cdboot; - - i386_pc = boot/i386/pc/cdboot.S; - i386_pc_ldflags = '$(TARGET_IMG_LDFLAGS)'; - i386_pc_ldflags = '$(TARGET_IMG_BASE_LDOPT),0x7C00'; - - sparc64_ieee1275 = boot/sparc64/ieee1275/boot.S; - - /* See comment for sparc64_ieee1275_ldflags above. */ - sparc64_ieee1275_ldflags = ' -Wl,-Ttext=0x3fe0'; - sparc64_ieee1275_objcopyflags = '-O binary'; - sparc64_ieee1275_cppflags = '-DCDBOOT=1'; - - objcopyflags = '-O binary'; - - enable = sparc64_ieee1275; - enable = i386_pc; -}; - -image = { - name = pxeboot; - i386_pc = boot/i386/pc/pxeboot.S; - - i386_pc_ldflags = '$(TARGET_IMG_LDFLAGS)'; - i386_pc_ldflags = '$(TARGET_IMG_BASE_LDOPT),0x7C00'; - - objcopyflags = '-O binary'; - enable = i386_pc; -}; - -image = { - name = diskboot; - i386_pc = boot/i386/pc/diskboot.S; - - i386_pc_ldflags = '$(TARGET_IMG_LDFLAGS)'; - i386_pc_ldflags = '$(TARGET_IMG_BASE_LDOPT),0x8000'; - - sparc64_ieee1275 = boot/sparc64/ieee1275/diskboot.S; - sparc64_ieee1275_ldflags = '-Wl,-Ttext=0x4200'; - - objcopyflags = '-O binary'; - - enable = i386_pc; - enable = sparc64_ieee1275; -}; - -image = { - name = lnxboot; - i386_pc = boot/i386/pc/lnxboot.S; - - i386_pc_ldflags = '$(TARGET_IMG_LDFLAGS)'; - i386_pc_ldflags = '$(TARGET_IMG_BASE_LDOPT),0x6000'; - - objcopyflags = '-O binary'; - enable = i386_pc; -}; - -image = { - name = xz_decompress; - mips = boot/mips/startup_raw.S; - common = boot/decompressor/minilib.c; - common = boot/decompressor/xz.c; - common = lib/xzembed/xz_dec_bcj.c; - common = lib/xzembed/xz_dec_lzma2.c; - common = lib/xzembed/xz_dec_stream.c; - common = kern/compiler-rt.c; - - cppflags = '-I$(srcdir)/lib/posix_wrap -I$(srcdir)/lib/xzembed -DGRUB_EMBED_DECOMPRESSOR=1'; - - objcopyflags = '-O binary'; - mips_ldflags = '-Wl,-Ttext,$(TARGET_DECOMPRESSOR_LINK_ADDR)'; - cflags = '-Wno-unreachable-code'; - enable = mips; -}; - -image = { - name = none_decompress; - mips = boot/mips/startup_raw.S; - common = boot/decompressor/none.c; - - cppflags = '-DGRUB_EMBED_DECOMPRESSOR=1'; - - objcopyflags = '-O binary'; - mips_ldflags = '-Wl,-Ttext,$(TARGET_DECOMPRESSOR_LINK_ADDR)'; - enable = mips; -}; - -image = { - name = lzma_decompress; - i386_pc = boot/i386/pc/startup_raw.S; - i386_pc_nodist = rs_decoder.h; - - objcopyflags = '-O binary'; - ldflags = '$(TARGET_IMG_LDFLAGS) $(TARGET_IMG_BASE_LDOPT),0x8200'; - enable = i386_pc; -}; - -image = { - name = fwstart; - mips_loongson = boot/mips/loongson/fwstart.S; - objcopyflags = '-O binary'; - ldflags = '-Wl,-N,-S,-Ttext,0xbfc00000,-Bstatic'; - enable = mips_loongson; -}; - -image = { - name = fwstart_fuloong2f; - mips_loongson = boot/mips/loongson/fuloong2f.S; - objcopyflags = '-O binary'; - ldflags = '-Wl,-N,-S,-Ttext,0xbfc00000,-Bstatic'; - enable = mips_loongson; -}; - -module = { - name = disk; - common = lib/disk.c; - extra_dist = kern/disk_common.c; -}; - -module = { - name = trig; - common_nodist = trigtables.c; - extra_dist = gentrigtables.c; -}; - -module = { - name = cs5536; - x86 = bus/cs5536.c; - enable = x86; -}; - -module = { - name = lsspd; - mips_loongson = commands/mips/loongson/lsspd.c; - enable = mips_loongson; -}; - -module = { - name = usb; - common = bus/usb/usb.c; - common = bus/usb/usbtrans.c; - common = bus/usb/usbhub.c; - enable = usb; -}; - -module = { - name = usbserial_common; - common = bus/usb/serial/common.c; - enable = usb; -}; - -module = { - name = usbserial_pl2303; - common = bus/usb/serial/pl2303.c; - enable = usb; -}; - -module = { - name = usbserial_ftdi; - common = bus/usb/serial/ftdi.c; - enable = usb; -}; - -module = { - name = usbserial_usbdebug; - common = bus/usb/serial/usbdebug_late.c; - enable = usb; -}; - -module = { - name = uhci; - common = bus/usb/uhci.c; - enable = pci; -}; - -module = { - name = ohci; - common = bus/usb/ohci.c; - enable = pci; -}; - -module = { - name = ehci; - common = bus/usb/ehci.c; - arm_coreboot = bus/usb/ehci-fdt.c; - pci = bus/usb/ehci-pci.c; - enable = pci; - enable = arm_coreboot; -}; - -module = { - name = pci; - common = bus/pci.c; - i386_ieee1275 = bus/i386/ieee1275/pci.c; - - enable = i386_pc; - enable = i386_ieee1275; - enable = i386_coreboot; - enable = i386_multiboot; -}; - -module = { - name = nativedisk; - common = commands/nativedisk.c; - - enable = x86; - enable = mips_loongson; - enable = mips_qemu_mips; -}; - -module = { - name = emupci; - common = bus/emu/pci.c; - common = commands/lspci.c; - - enable = emu; - condition = COND_GRUB_EMU_PCI; -}; - -module = { - name = lsdev; - common = commands/arc/lsdev.c; - - enable = mips_arc; -}; - -module = { - name = lsxen; - common = commands/xen/lsxen.c; - - enable = xen; -}; - -module = { - name = cmostest; - common = commands/i386/cmostest.c; - enable = cmos; -}; - -module = { - name = cmosdump; - common = commands/i386/cmosdump.c; - enable = cmos; -}; - -module = { - name = iorw; - common = commands/iorw.c; - enable = x86; -}; - -module = { - name = cbtable; - common = kern/i386/coreboot/cbtable.c; - common = kern/coreboot/cbtable.c; - enable = i386_pc; - enable = i386_efi; - enable = i386_qemu; - enable = i386_multiboot; - enable = i386_ieee1275; - enable = x86_64_efi; -}; - -module = { - name = cbtime; - common = commands/i386/coreboot/cb_timestamps.c; - enable = x86; -}; - -module = { - name = cbls; - common = commands/i386/coreboot/cbls.c; - enable = x86; -}; - -module = { - name = cbmemc; - common = term/i386/coreboot/cbmemc.c; - enable = x86; -}; - -module = { - name = regexp; - common = commands/regexp.c; - common = commands/wildcard.c; - common = lib/gnulib/regex.c; - cflags = '$(CFLAGS_POSIX) $(CFLAGS_GNULIB)'; - cppflags = '$(CPPFLAGS_POSIX) $(CPPFLAGS_GNULIB)'; -}; - -module = { - name = acpi; - - common = commands/acpi.c; - i386_pc = kern/acpi.c; - i386_pc = kern/i386/pc/acpi.c; - - enable = efi; - enable = i386_pc; - enable = i386_coreboot; - enable = i386_multiboot; -}; - -module = { - name = lsacpi; - - common = commands/lsacpi.c; - - enable = efi; - enable = i386_pc; - enable = i386_coreboot; - enable = i386_multiboot; -}; - -module = { - name = lsefisystab; - - common = commands/efi/lsefisystab.c; - - enable = efi; -}; - -module = { - name = lssal; - - common = commands/efi/lssal.c; - - enable = efi; -}; - -module = { - name = lsefimmap; - - common = commands/efi/lsefimmap.c; - - enable = efi; -}; - -module = { - name = lsefi; - common = commands/efi/lsefi.c; - enable = efi; -}; - -module = { - name = efifwsetup; - efi = commands/efi/efifwsetup.c; - enable = efi; -}; - -module = { - name = blocklist; - common = commands/blocklist.c; -}; - -module = { - name = boot; - common = commands/boot.c; - i386_pc = lib/i386/pc/biosnum.c; - enable = x86; - enable = emu; - enable = sparc64_ieee1275; - enable = powerpc_ieee1275; - enable = mips_arc; - enable = ia64_efi; - enable = arm_efi; - enable = arm64_efi; - enable = arm_uboot; - enable = arm_coreboot; - enable = riscv32_efi; - enable = riscv64_efi; -}; - -module = { - name = cat; - common = commands/cat.c; -}; - -module = { - name = cmp; - common = commands/cmp.c; -}; - -module = { - name = configfile; - common = commands/configfile.c; -}; - -module = { - name = cpuid; - common = commands/i386/cpuid.c; - enable = x86; - enable = i386_xen_pvh; - enable = i386_xen; - enable = x86_64_xen; -}; - -module = { - name = date; - common = commands/date.c; -}; - -module = { - name = drivemap; - - i386_pc = commands/i386/pc/drivemap.c; - i386_pc = commands/i386/pc/drivemap_int13h.S; - enable = i386_pc; -}; - -module = { - name = echo; - common = commands/echo.c; -}; - -module = { - name = eval; - common = commands/eval.c; -}; - -module = { - name = extcmd; - common = commands/extcmd.c; - common = lib/arg.c; - enable = terminfomodule; -}; - -module = { - name = fixvideo; - common = commands/efi/fixvideo.c; - enable = i386_efi; - enable = x86_64_efi; -}; - -module = { - name = gptsync; - common = commands/gptsync.c; -}; - -module = { - name = halt; - nopc = commands/halt.c; - i386_pc = commands/i386/pc/halt.c; - i386_pc = commands/acpihalt.c; - i386_coreboot = commands/acpihalt.c; - i386_multiboot = commands/acpihalt.c; - i386_efi = commands/acpihalt.c; - x86_64_efi = commands/acpihalt.c; - i386_multiboot = lib/i386/halt.c; - i386_coreboot = lib/i386/halt.c; - i386_qemu = lib/i386/halt.c; - xen = lib/xen/halt.c; - i386_xen_pvh = lib/xen/halt.c; - efi = lib/efi/halt.c; - ieee1275 = lib/ieee1275/halt.c; - emu = lib/emu/halt.c; - uboot = lib/dummy/halt.c; - arm_coreboot = lib/dummy/halt.c; -}; - -module = { - name = reboot; - i386 = lib/i386/reboot.c; - i386 = lib/i386/reboot_trampoline.S; - powerpc_ieee1275 = lib/ieee1275/reboot.c; - sparc64_ieee1275 = lib/ieee1275/reboot.c; - mips_arc = lib/mips/arc/reboot.c; - mips_loongson = lib/mips/loongson/reboot.c; - mips_qemu_mips = lib/mips/qemu_mips/reboot.c; - xen = lib/xen/reboot.c; - i386_xen_pvh = lib/xen/reboot.c; - uboot = lib/uboot/reboot.c; - arm_coreboot = lib/dummy/reboot.c; - common = commands/reboot.c; -}; - -module = { - name = hashsum; - common = commands/hashsum.c; -}; - -module = { - name = pgp; - common = commands/pgp.c; - cflags = '$(CFLAGS_POSIX)'; - cppflags = '-I$(srcdir)/lib/posix_wrap'; -}; - -module = { - name = verifiers; - common = commands/verifiers.c; -}; - -module = { - name = shim_lock; - common = commands/efi/shim_lock.c; - enable = x86_64_efi; -}; - -module = { - name = hdparm; - common = commands/hdparm.c; - enable = pci; - enable = mips_qemu_mips; -}; - -module = { - name = help; - common = commands/help.c; -}; - -module = { - name = hexdump; - common = commands/hexdump.c; - common = lib/hexdump.c; -}; - -module = { - name = keystatus; - common = commands/keystatus.c; -}; - -module = { - name = loadbios; - common = commands/efi/loadbios.c; - enable = i386_efi; - enable = x86_64_efi; -}; - -module = { - name = loadenv; - common = commands/loadenv.c; - common = lib/envblk.c; -}; - -module = { - name = ls; - common = commands/ls.c; -}; - -module = { - name = lsmmap; - common = commands/lsmmap.c; -}; - -module = { - name = lspci; - common = commands/lspci.c; - - enable = pci; -}; - -module = { - name = memrw; - common = commands/memrw.c; -}; - -module = { - name = minicmd; - common = commands/minicmd.c; -}; - -module = { - name = parttool; - common = commands/parttool.c; -}; - -module = { - name = password; - common = commands/password.c; -}; - -module = { - name = password_pbkdf2; - common = commands/password_pbkdf2.c; -}; - -module = { - name = play; - x86 = commands/i386/pc/play.c; - enable = x86; -}; - -module = { - name = spkmodem; - x86 = term/spkmodem.c; - enable = x86; -}; - -module = { - name = morse; - x86 = term/morse.c; - enable = x86; -}; - -module = { - name = probe; - common = commands/probe.c; -}; - -module = { - name = read; - common = commands/read.c; -}; - -module = { - name = search; - common = commands/search_wrap.c; - extra_dist = commands/search.c; -}; - -module = { - name = search_fs_file; - common = commands/search_file.c; -}; - -module = { - name = search_fs_uuid; - common = commands/search_uuid.c; -}; - -module = { - name = search_label; - common = commands/search_label.c; -}; - -module = { - name = setpci; - common = commands/setpci.c; - enable = pci; -}; - -module = { - name = pcidump; - common = commands/pcidump.c; - enable = pci; -}; - -module = { - name = sleep; - common = commands/sleep.c; -}; - -module = { - name = suspend; - ieee1275 = commands/ieee1275/suspend.c; - enable = i386_ieee1275; - enable = powerpc_ieee1275; -}; - -module = { - name = escc; - ieee1275 = term/ieee1275/escc.c; - enable = powerpc_ieee1275; -}; - -module = { - name = terminal; - common = commands/terminal.c; -}; - -module = { - name = test; - common = commands/test.c; -}; - -module = { - name = true; - common = commands/true.c; -}; - -module = { - name = usbtest; - common = commands/usbtest.c; - enable = usb; -}; - -module = { - name = videoinfo; - common = commands/videoinfo.c; -}; - -module = { - name = videotest; - common = commands/videotest.c; -}; - -module = { - name = xnu_uuid; - common = commands/xnu_uuid.c; -}; - -module = { - name = dm_nv; - common = disk/dmraid_nvidia.c; -}; - -module = { - name = loopback; - common = disk/loopback.c; -}; - -module = { - name = cryptodisk; - common = disk/cryptodisk.c; -}; - -module = { - name = luks; - common = disk/luks.c; - common = disk/AFSplitter.c; -}; - -module = { - name = geli; - common = disk/geli.c; -}; - -module = { - name = lvm; - common = disk/lvm.c; -}; - -module = { - name = ldm; - common = disk/ldm.c; -}; - -module = { - name = mdraid09; - common = disk/mdraid_linux.c; -}; - -module = { - name = mdraid09_be; - common = disk/mdraid_linux_be.c; -}; - -module = { - name = mdraid1x; - common = disk/mdraid1x_linux.c; -}; - -module = { - name = diskfilter; - common = disk/diskfilter.c; -}; - -module = { - name = raid5rec; - common = disk/raid5_recover.c; -}; - -module = { - name = raid6rec; - common = disk/raid6_recover.c; -}; - -module = { - name = scsi; - common = disk/scsi.c; -}; - -module = { - name = memdisk; - common = disk/memdisk.c; -}; - -module = { - name = ata; - common = disk/ata.c; - enable = pci; - enable = mips_qemu_mips; -}; - -module = { - name = ahci; - common = disk/ahci.c; - enable = pci; -}; - -module = { - name = pata; - common = disk/pata.c; - enable = pci; - enable = mips_qemu_mips; -}; - -module = { - name = biosdisk; - i386_pc = disk/i386/pc/biosdisk.c; - enable = i386_pc; -}; - -module = { - name = usbms; - common = disk/usbms.c; - enable = usb; -}; - -module = { - name = nand; - ieee1275 = disk/ieee1275/nand.c; - enable = i386_ieee1275; -}; - -module = { - name = efiemu; - common = efiemu/main.c; - common = efiemu/i386/loadcore32.c; - common = efiemu/i386/loadcore64.c; - i386_pc = efiemu/i386/pc/cfgtables.c; - i386_coreboot = efiemu/i386/pc/cfgtables.c; - i386_multiboot = efiemu/i386/pc/cfgtables.c; - i386_ieee1275 = efiemu/i386/nocfgtables.c; - i386_qemu = efiemu/i386/nocfgtables.c; - common = efiemu/mm.c; - common = efiemu/loadcore_common.c; - common = efiemu/symbols.c; - common = efiemu/loadcore32.c; - common = efiemu/loadcore64.c; - common = efiemu/prepare32.c; - common = efiemu/prepare64.c; - common = efiemu/pnvram.c; - common = efiemu/i386/coredetect.c; - - extra_dist = efiemu/prepare.c; - extra_dist = efiemu/loadcore.c; - extra_dist = efiemu/runtime/efiemu.S; - extra_dist = efiemu/runtime/efiemu.c; - - enable = i386_pc; - enable = i386_coreboot; - enable = i386_ieee1275; - enable = i386_multiboot; - enable = i386_qemu; -}; - -module = { - name = font; - common = font/font.c; - common = font/font_cmd.c; - enable = videomodules; -}; - -module = { - name = procfs; - common = fs/proc.c; -}; - -module = { - name = affs; - common = fs/affs.c; -}; - -module = { - name = afs; - common = fs/afs.c; -}; - -module = { - name = bfs; - common = fs/bfs.c; -}; - -module = { - name = zstd; - common = lib/zstd/debug.c; - common = lib/zstd/entropy_common.c; - common = lib/zstd/error_private.c; - common = lib/zstd/fse_decompress.c; - common = lib/zstd/huf_decompress.c; - common = lib/zstd/module.c; - common = lib/zstd/xxhash.c; - common = lib/zstd/zstd_common.c; - common = lib/zstd/zstd_decompress.c; - cflags = '$(CFLAGS_POSIX) -Wno-undef'; - cppflags = '-I$(srcdir)/lib/posix_wrap -I$(srcdir)/lib/zstd'; -}; - -module = { - name = btrfs; - common = fs/btrfs.c; - common = lib/crc.c; - cflags = '$(CFLAGS_POSIX) -Wno-undef'; - cppflags = '-I$(srcdir)/lib/posix_wrap -I$(srcdir)/lib/minilzo -I$(srcdir)/lib/zstd -DMINILZO_HAVE_CONFIG_H'; -}; - -module = { - name = archelp; - common = fs/archelp.c; -}; - -module = { - name = cbfs; - common = fs/cbfs.c; -}; - -module = { - name = cpio; - common = fs/cpio.c; -}; - -module = { - name = cpio_be; - common = fs/cpio_be.c; -}; - -module = { - name = newc; - common = fs/newc.c; -}; - -module = { - name = odc; - common = fs/odc.c; -}; - -module = { - name = ext2; - common = fs/ext2.c; -}; - -module = { - name = fat; - common = fs/fat.c; -}; - -module = { - name = exfat; - common = fs/exfat.c; -}; - -module = { - name = f2fs; - common = fs/f2fs.c; -}; - -module = { - name = fshelp; - common = fs/fshelp.c; -}; - -module = { - name = hfs; - common = fs/hfs.c; -}; - -module = { - name = hfsplus; - common = fs/hfsplus.c; -}; - -module = { - name = hfspluscomp; - common = fs/hfspluscomp.c; -}; - -module = { - name = iso9660; - common = fs/iso9660.c; -}; - -module = { - name = jfs; - common = fs/jfs.c; -}; - -module = { - name = minix; - common = fs/minix.c; -}; - -module = { - name = minix2; - common = fs/minix2.c; -}; - -module = { - name = minix3; - common = fs/minix3.c; -}; - -module = { - name = minix_be; - common = fs/minix_be.c; -}; - -module = { - name = minix2_be; - common = fs/minix2_be.c; -}; - -module = { - name = minix3_be; - common = fs/minix3_be.c; -}; - -module = { - name = nilfs2; - common = fs/nilfs2.c; -}; - -module = { - name = ntfs; - common = fs/ntfs.c; -}; - -module = { - name = ntfscomp; - common = fs/ntfscomp.c; -}; - -module = { - name = reiserfs; - common = fs/reiserfs.c; -}; - -module = { - name = romfs; - common = fs/romfs.c; -}; - -module = { - name = sfs; - common = fs/sfs.c; -}; - -module = { - name = squash4; - common = fs/squash4.c; - cflags = '$(CFLAGS_POSIX) -Wno-undef'; - cppflags = '-I$(srcdir)/lib/posix_wrap -I$(srcdir)/lib/xzembed -I$(srcdir)/lib/minilzo -DMINILZO_HAVE_CONFIG_H'; -}; - -module = { - name = tar; - common = fs/tar.c; -}; - -module = { - name = udf; - common = fs/udf.c; -}; - -module = { - name = ufs1; - common = fs/ufs.c; -}; - -module = { - name = ufs1_be; - common = fs/ufs_be.c; -}; - -module = { - name = ufs2; - common = fs/ufs2.c; -}; - -module = { - name = xfs; - common = fs/xfs.c; -}; - -module = { - name = zfs; - common = fs/zfs/zfs.c; - common = fs/zfs/zfs_lzjb.c; - common = fs/zfs/zfs_lz4.c; - common = fs/zfs/zfs_sha256.c; - common = fs/zfs/zfs_fletcher.c; -}; - -module = { - name = zfscrypt; - common = fs/zfs/zfscrypt.c; -}; - -module = { - name = zfsinfo; - common = fs/zfs/zfsinfo.c; -}; - -module = { - name = macbless; - common = commands/macbless.c; -}; - -module = { - name = pxe; - i386_pc = net/drivers/i386/pc/pxe.c; - enable = i386_pc; -}; - -module = { - name = gettext; - common = gettext/gettext.c; -}; - -module = { - name = gfxmenu; - common = gfxmenu/gfxmenu.c; - common = gfxmenu/view.c; - common = gfxmenu/font.c; - common = gfxmenu/icon_manager.c; - common = gfxmenu/theme_loader.c; - common = gfxmenu/widget-box.c; - common = gfxmenu/gui_canvas.c; - common = gfxmenu/gui_circular_progress.c; - common = gfxmenu/gui_box.c; - common = gfxmenu/gui_label.c; - common = gfxmenu/gui_list.c; - common = gfxmenu/gui_image.c; - common = gfxmenu/gui_progress_bar.c; - common = gfxmenu/gui_util.c; - common = gfxmenu/gui_string_util.c; -}; - -module = { - name = hello; - common = hello/hello.c; -}; - -module = { - name = gzio; - common = io/gzio.c; -}; - -module = { - name = offsetio; - common = io/offset.c; -}; - -module = { - name = bufio; - common = io/bufio.c; - enable = videomodules; -}; - -module = { - name = elf; - common = kern/elf.c; - - extra_dist = kern/elfXX.c; -}; - -module = { - name = crypto; - common = lib/crypto.c; - - extra_dist = lib/libgcrypt-grub/cipher/crypto.lst; -}; - -module = { - name = pbkdf2; - common = lib/pbkdf2.c; -}; - -module = { - name = relocator; - common = lib/relocator.c; - x86 = lib/i386/relocator16.S; - x86 = lib/i386/relocator32.S; - x86 = lib/i386/relocator64.S; - i386_xen_pvh = lib/i386/relocator16.S; - i386_xen_pvh = lib/i386/relocator32.S; - i386_xen_pvh = lib/i386/relocator64.S; - i386 = lib/i386/relocator_asm.S; - i386_xen_pvh = lib/i386/relocator_asm.S; - x86_64 = lib/x86_64/relocator_asm.S; - i386_xen = lib/i386/relocator_asm.S; - x86_64_xen = lib/x86_64/relocator_asm.S; - x86 = lib/i386/relocator.c; - x86 = lib/i386/relocator_common_c.c; - i386_xen_pvh = lib/i386/relocator.c; - i386_xen_pvh = lib/i386/relocator_common_c.c; - ieee1275 = lib/ieee1275/relocator.c; - efi = lib/efi/relocator.c; - mips = lib/mips/relocator_asm.S; - mips = lib/mips/relocator.c; - powerpc = lib/powerpc/relocator_asm.S; - powerpc = lib/powerpc/relocator.c; - xen = lib/xen/relocator.c; - i386_xen = lib/i386/xen/relocator.S; - x86_64_xen = lib/x86_64/xen/relocator.S; - xen = lib/i386/relocator_common_c.c; - x86_64_efi = lib/x86_64/efi/relocator.c; - - extra_dist = lib/i386/relocator_common.S; - extra_dist = kern/powerpc/cache_flush.S; - - enable = mips; - enable = powerpc; - enable = x86; - enable = i386_xen_pvh; - enable = xen; -}; - -module = { - name = datetime; - cmos = lib/cmos_datetime.c; - efi = lib/efi/datetime.c; - uboot = lib/dummy/datetime.c; - arm_coreboot = lib/dummy/datetime.c; - sparc64_ieee1275 = lib/ieee1275/datetime.c; - powerpc_ieee1275 = lib/ieee1275/datetime.c; - sparc64_ieee1275 = lib/ieee1275/cmos.c; - powerpc_ieee1275 = lib/ieee1275/cmos.c; - xen = lib/xen/datetime.c; - i386_xen_pvh = lib/xen/datetime.c; - - mips_arc = lib/arc/datetime.c; - enable = noemu; -}; - -module = { - name = setjmp; - common = lib/setjmp.S; - extra_dist = lib/i386/setjmp.S; - extra_dist = lib/mips/setjmp.S; - extra_dist = lib/x86_64/setjmp.S; - extra_dist = lib/sparc64/setjmp.S; - extra_dist = lib/powerpc/setjmp.S; - extra_dist = lib/ia64/setjmp.S; - extra_dist = lib/ia64/longjmp.S; - extra_dist = lib/arm/setjmp.S; - extra_dist = lib/arm64/setjmp.S; - extra_dist = lib/riscv/setjmp.S; -}; - -module = { - name = aout; - common = loader/aout.c; - enable = x86; -}; - -module = { - name = bsd; - x86 = loader/i386/bsd.c; - x86 = loader/i386/bsd32.c; - x86 = loader/i386/bsd64.c; - - extra_dist = loader/i386/bsdXX.c; - extra_dist = loader/i386/bsd_pagetable.c; - - enable = x86; -}; - -module = { - name = plan9; - i386_pc = loader/i386/pc/plan9.c; - enable = i386_pc; -}; - - -module = { - name = linux16; - common = loader/i386/pc/linux.c; - enable = x86; -}; - -module = { - name = ntldr; - i386_pc = loader/i386/pc/ntldr.c; - enable = i386_pc; -}; - - -module = { - name = truecrypt; - i386_pc = loader/i386/pc/truecrypt.c; - enable = i386_pc; -}; - - -module = { - name = freedos; - i386_pc = loader/i386/pc/freedos.c; - enable = i386_pc; -}; - -module = { - name = pxechain; - i386_pc = loader/i386/pc/pxechainloader.c; - enable = i386_pc; -}; - -module = { - name = multiboot2; - cppflags = "-DGRUB_USE_MULTIBOOT2"; - - common = loader/multiboot.c; - common = loader/multiboot_mbi2.c; - enable = x86; - enable = i386_xen_pvh; - enable = mips; -}; - -module = { - name = multiboot; - common = loader/multiboot.c; - x86 = loader/i386/multiboot_mbi.c; - i386_xen_pvh = loader/i386/multiboot_mbi.c; - extra_dist = loader/multiboot_elfxx.c; - enable = x86; - enable = i386_xen_pvh; -}; - -module = { - name = xen_boot; - arm64 = loader/arm64/xen_boot.c; - enable = arm64; -}; - -module = { - name = linux; - x86 = loader/i386/linux.c; - i386_xen_pvh = loader/i386/linux.c; - xen = loader/i386/xen.c; - i386_pc = lib/i386/pc/vesa_modes_table.c; - i386_xen_pvh = lib/i386/pc/vesa_modes_table.c; - mips = loader/mips/linux.c; - powerpc_ieee1275 = loader/powerpc/ieee1275/linux.c; - sparc64_ieee1275 = loader/sparc64/ieee1275/linux.c; - ia64_efi = loader/ia64/efi/linux.c; - arm_coreboot = loader/arm/linux.c; - arm_efi = loader/arm64/linux.c; - arm_uboot = loader/arm/linux.c; - arm64 = loader/arm64/linux.c; - riscv32 = loader/riscv/linux.c; - riscv64 = loader/riscv/linux.c; - common = loader/linux.c; - common = lib/cmdline.c; - enable = noemu; -}; - -module = { - name = fdt; - efi = loader/efi/fdt.c; - common = lib/fdt.c; - enable = fdt; -}; - -module = { - name = xnu; - x86 = loader/xnu_resume.c; - x86 = loader/i386/xnu.c; - x86 = loader/xnu.c; - - /* Code is pretty generic but relies on RNG which - is available only on few platforms. It's not a - big deal as xnu needs ACPI anyway and we have - RNG on all platforms with ACPI. - */ - enable = i386_multiboot; - enable = i386_coreboot; - enable = i386_pc; - enable = i386_efi; - enable = x86_64_efi; -}; - -module = { - name = random; - x86 = lib/i386/random.c; - common = lib/random.c; - - i386_multiboot = kern/i386/tsc_pmtimer.c; - i386_coreboot = kern/i386/tsc_pmtimer.c; - i386_pc = kern/i386/tsc_pmtimer.c; - - enable = i386_multiboot; - enable = i386_coreboot; - enable = i386_pc; - enable = i386_efi; - enable = x86_64_efi; -}; - -module = { - name = macho; - - common = loader/macho.c; - common = loader/macho32.c; - common = loader/macho64.c; - common = loader/lzss.c; - extra_dist = loader/machoXX.c; -}; - -module = { - name = appleldr; - common = loader/efi/appleloader.c; - enable = i386_efi; - enable = x86_64_efi; -}; - -module = { - name = chain; - efi = loader/efi/chainloader.c; - i386_pc = loader/i386/pc/chainloader.c; - i386_coreboot = loader/i386/coreboot/chainloader.c; - i386_coreboot = lib/LzmaDec.c; - enable = i386_pc; - enable = i386_coreboot; - enable = efi; -}; - -module = { - name = mmap; - common = mmap/mmap.c; - x86 = mmap/i386/uppermem.c; - x86 = mmap/i386/mmap.c; - i386_xen_pvh = mmap/i386/uppermem.c; - i386_xen_pvh = mmap/i386/mmap.c; - - i386_pc = mmap/i386/pc/mmap.c; - i386_pc = mmap/i386/pc/mmap_helper.S; - - efi = mmap/efi/mmap.c; - - mips = mmap/mips/uppermem.c; - - enable = x86; - enable = i386_xen_pvh; - enable = ia64_efi; - enable = arm_efi; - enable = arm64_efi; - enable = riscv32_efi; - enable = riscv64_efi; - enable = mips; -}; - -module = { - name = normal; - common = normal/main.c; - common = normal/cmdline.c; - common = normal/dyncmd.c; - common = normal/auth.c; - common = normal/autofs.c; - common = normal/color.c; - common = normal/completion.c; - common = normal/datetime.c; - common = normal/menu.c; - common = normal/menu_entry.c; - common = normal/menu_text.c; - common = normal/misc.c; - common = normal/crypto.c; - common = normal/term.c; - common = normal/context.c; - common = normal/charset.c; - common = lib/getline.c; - - common = script/main.c; - common = script/script.c; - common = script/execute.c; - common = script/function.c; - common = script/lexer.c; - common = script/argv.c; - - common = commands/menuentry.c; - - common = unidata.c; - common_nodist = grub_script.tab.c; - common_nodist = grub_script.yy.c; - common_nodist = grub_script.tab.h; - common_nodist = grub_script.yy.h; - - extra_dist = script/yylex.l; - extra_dist = script/parser.y; - - cflags = '$(CFLAGS_POSIX) -Wno-redundant-decls'; - cppflags = '$(CPPFLAGS_POSIX)'; -}; - -module = { - name = part_acorn; - common = partmap/acorn.c; -}; - -module = { - name = part_amiga; - common = partmap/amiga.c; -}; - -module = { - name = part_apple; - common = partmap/apple.c; -}; - -module = { - name = part_gpt; - common = partmap/gpt.c; -}; - -module = { - name = part_msdos; - common = partmap/msdos.c; -}; - -module = { - name = part_sun; - common = partmap/sun.c; -}; - -module = { - name = part_plan; - common = partmap/plan.c; -}; - -module = { - name = part_dvh; - common = partmap/dvh.c; -}; - -module = { - name = part_bsd; - common = partmap/bsdlabel.c; -}; - -module = { - name = part_sunpc; - common = partmap/sunpc.c; -}; - -module = { - name = part_dfly; - common = partmap/dfly.c; -}; - -module = { - name = msdospart; - common = parttool/msdospart.c; -}; - -module = { - name = at_keyboard; - common = term/at_keyboard.c; - common = term/ps2.c; - enable = x86; -}; - -module = { - name = gfxterm; - common = term/gfxterm.c; - enable = videomodules; -}; - -module = { - name = gfxterm_background; - common = term/gfxterm_background.c; -}; - -module = { - name = serial; - common = term/serial.c; - x86 = term/ns8250.c; - ieee1275 = term/ieee1275/serial.c; - mips_arc = term/arc/serial.c; - efi = term/efi/serial.c; - - enable = terminfomodule; - enable = ieee1275; - enable = mips_arc; -}; - -module = { - name = sendkey; - i386_pc = commands/i386/pc/sendkey.c; - enable = i386_pc; -}; - -module = { - name = terminfo; - common = term/terminfo.c; - common = term/tparm.c; - enable = terminfomodule; -}; - -module = { - name = usb_keyboard; - common = term/usb_keyboard.c; - enable = usb; -}; - -module = { - name = vga; - common = video/i386/pc/vga.c; - enable = i386_pc; -}; - -module = { - name = vga_text; - common = term/i386/pc/vga_text.c; - enable = i386_pc; -}; - -module = { - name = mda_text; - common = term/i386/pc/mda_text.c; - enable = i386_pc; - enable = i386_coreboot_multiboot_qemu; -}; - -module = { - name = video_cirrus; - x86 = video/cirrus.c; - enable = x86; -}; - -module = { - name = video_bochs; - x86 = video/bochs.c; - enable = x86; -}; - -module = { - name = functional_test; - common = tests/lib/functional_test.c; - common = tests/lib/test.c; - common = tests/checksums.h; - common = tests/video_checksum.c; - common = tests/fake_input.c; - common = video/capture.c; -}; - -module = { - name = exfctest; - common = tests/example_functional_test.c; -}; - -module = { - name = strtoull_test; - common = tests/strtoull_test.c; -}; - -module = { - name = setjmp_test; - common = tests/setjmp_test.c; -}; - -module = { - name = signature_test; - common = tests/signature_test.c; - common = tests/signatures.h; -}; - -module = { - name = sleep_test; - common = tests/sleep_test.c; -}; - -module = { - name = xnu_uuid_test; - common = tests/xnu_uuid_test.c; -}; - -module = { - name = pbkdf2_test; - common = tests/pbkdf2_test.c; -}; - -module = { - name = legacy_password_test; - common = tests/legacy_password_test.c; - enable = i386_pc; - enable = i386_xen_pvh; - enable = i386_efi; - enable = x86_64_efi; - enable = emu; - enable = xen; -}; - -module = { - name = div; - common = lib/division.c; - enable = no_softdiv; -}; - -module = { - name = div_test; - common = tests/div_test.c; -}; - -module = { - name = mul_test; - common = tests/mul_test.c; -}; - -module = { - name = shift_test; - common = tests/shift_test.c; -}; - -module = { - name = cmp_test; - common = tests/cmp_test.c; -}; - -module = { - name = ctz_test; - common = tests/ctz_test.c; -}; - -module = { - name = bswap_test; - common = tests/bswap_test.c; -}; - -module = { - name = videotest_checksum; - common = tests/videotest_checksum.c; -}; - -module = { - name = gfxterm_menu; - common = tests/gfxterm_menu.c; -}; - -module = { - name = cmdline_cat_test; - common = tests/cmdline_cat_test.c; -}; - -module = { - name = bitmap; - common = video/bitmap.c; -}; - -module = { - name = bitmap_scale; - common = video/bitmap_scale.c; -}; - -module = { - name = efi_gop; - efi = video/efi_gop.c; - enable = efi; -}; - -module = { - name = efi_uga; - efi = video/efi_uga.c; - enable = i386_efi; - enable = x86_64_efi; -}; - -module = { - name = jpeg; - common = video/readers/jpeg.c; -}; - -module = { - name = png; - common = video/readers/png.c; -}; - -module = { - name = tga; - common = video/readers/tga.c; -}; - -module = { - name = vbe; - common = video/i386/pc/vbe.c; - enable = i386_pc; -}; - -module = { - name = video_fb; - common = video/fb/video_fb.c; - common = video/fb/fbblit.c; - common = video/fb/fbfill.c; - common = video/fb/fbutil.c; - enable = videomodules; -}; - -module = { - name = video; - common = video/video.c; - enable = videomodules; -}; - -module = { - name = video_colors; - common = video/colors.c; -}; - -module = { - name = ieee1275_fb; - ieee1275 = video/ieee1275.c; - enable = powerpc_ieee1275; -}; - -module = { - name = sdl; - emu = video/emu/sdl.c; - enable = emu; - condition = COND_GRUB_EMU_SDL; -}; - -module = { - name = datehook; - common = hook/datehook.c; -}; - -module = { - name = net; - common = net/net.c; - common = net/dns.c; - common = net/bootp.c; - common = net/ip.c; - common = net/udp.c; - common = net/tcp.c; - common = net/icmp.c; - common = net/icmp6.c; - common = net/ethernet.c; - common = net/arp.c; - common = net/netbuff.c; -}; - -module = { - name = tftp; - common = net/tftp.c; -}; - -module = { - name = http; - common = net/http.c; -}; - -module = { - name = ofnet; - common = net/drivers/ieee1275/ofnet.c; - enable = ieee1275; -}; - -module = { - name = ubootnet; - common = net/drivers/uboot/ubootnet.c; - enable = uboot; -}; - -module = { - name = efinet; - common = net/drivers/efi/efinet.c; - enable = efi; -}; - -module = { - name = emunet; - emu = net/drivers/emu/emunet.c; - enable = emu; -}; - -module = { - name = legacycfg; - common = commands/legacycfg.c; - common = lib/legacy_parse.c; - emu = lib/i386/pc/vesa_modes_table.c; - i386_efi = lib/i386/pc/vesa_modes_table.c; - x86_64_efi = lib/i386/pc/vesa_modes_table.c; - xen = lib/i386/pc/vesa_modes_table.c; - - enable = i386_pc; - enable = i386_xen_pvh; - enable = i386_efi; - enable = x86_64_efi; - enable = emu; - enable = xen; -}; - -module = { - name = syslinuxcfg; - common = lib/syslinux_parse.c; - common = commands/syslinuxcfg.c; -}; - -module = { - name = test_blockarg; - common = tests/test_blockarg.c; -}; - -module = { - name = xzio; - common = io/xzio.c; - common = lib/xzembed/xz_dec_bcj.c; - common = lib/xzembed/xz_dec_lzma2.c; - common = lib/xzembed/xz_dec_stream.c; - cppflags = '-I$(srcdir)/lib/posix_wrap -I$(srcdir)/lib/xzembed'; - cflags='-Wno-unreachable-code'; -}; - -module = { - name = lzopio; - common = io/lzopio.c; - common = lib/minilzo/minilzo.c; - cflags = '$(CFLAGS_POSIX) -Wno-undef -Wno-redundant-decls -Wno-error'; - cppflags = '-I$(srcdir)/lib/posix_wrap -I$(srcdir)/lib/minilzo -DMINILZO_HAVE_CONFIG_H'; -}; - -module = { - name = testload; - common = commands/testload.c; -}; - -module = { - name = backtrace; - x86 = lib/i386/backtrace.c; - i386_xen_pvh = lib/i386/backtrace.c; - i386_xen = lib/i386/backtrace.c; - x86_64_xen = lib/i386/backtrace.c; - common = lib/backtrace.c; - enable = x86; - enable = i386_xen_pvh; - enable = i386_xen; - enable = x86_64_xen; -}; - -module = { - name = lsapm; - common = commands/i386/pc/lsapm.c; - enable = i386_pc; -}; - -module = { - name = keylayouts; - common = commands/keylayouts.c; - enable = x86; -}; - -module = { - name = priority_queue; - common = lib/priority_queue.c; -}; - -module = { - name = time; - common = commands/time.c; -}; - -module = { - name = cacheinfo; - common = commands/cacheinfo.c; - condition = COND_ENABLE_CACHE_STATS; -}; - -module = { - name = boottime; - common = commands/boottime.c; - condition = COND_ENABLE_BOOT_TIME_STATS; -}; - -module = { - name = adler32; - common = lib/adler32.c; -}; - -module = { - name = crc64; - common = lib/crc64.c; -}; - -module = { - name = mpi; - common = lib/libgcrypt-grub/mpi/mpiutil.c; - common = lib/libgcrypt-grub/mpi/mpi-bit.c; - common = lib/libgcrypt-grub/mpi/mpi-add.c; - common = lib/libgcrypt-grub/mpi/mpi-mul.c; - common = lib/libgcrypt-grub/mpi/mpi-mod.c; - common = lib/libgcrypt-grub/mpi/mpi-gcd.c; - common = lib/libgcrypt-grub/mpi/mpi-div.c; - common = lib/libgcrypt-grub/mpi/mpi-cmp.c; - common = lib/libgcrypt-grub/mpi/mpi-inv.c; - common = lib/libgcrypt-grub/mpi/mpi-pow.c; - common = lib/libgcrypt-grub/mpi/mpi-mpow.c; - common = lib/libgcrypt-grub/mpi/mpih-lshift.c; - common = lib/libgcrypt-grub/mpi/mpih-mul.c; - common = lib/libgcrypt-grub/mpi/mpih-mul1.c; - common = lib/libgcrypt-grub/mpi/mpih-mul2.c; - common = lib/libgcrypt-grub/mpi/mpih-mul3.c; - common = lib/libgcrypt-grub/mpi/mpih-add1.c; - common = lib/libgcrypt-grub/mpi/mpih-sub1.c; - common = lib/libgcrypt-grub/mpi/mpih-div.c; - common = lib/libgcrypt-grub/mpi/mpicoder.c; - common = lib/libgcrypt-grub/mpi/mpih-rshift.c; - common = lib/libgcrypt-grub/mpi/mpi-inline.c; - common = lib/libgcrypt_wrap/mem.c; - - cflags = '$(CFLAGS_GCRY) -Wno-redundant-decls -Wno-sign-compare'; - cppflags = '$(CPPFLAGS_GCRY)'; -}; - -module = { - name = all_video; - common = lib/fake_module.c; -}; - -module = { - name = gdb; - common = gdb/cstub.c; - common = gdb/gdb.c; - i386 = gdb/i386/idt.c; - i386 = gdb/i386/machdep.S; - i386 = gdb/i386/signal.c; - enable = i386; -}; - -module = { - name = testspeed; - common = commands/testspeed.c; -}; - -module = { - name = tpm; - common = commands/tpm.c; - efi = commands/efi/tpm.c; - enable = x86_64_efi; -}; - -module = { - name = tr; - common = commands/tr.c; -}; - -module = { - name = progress; - common = lib/progress.c; -}; - -module = { - name = file; - common = commands/file.c; - common = commands/file32.c; - common = commands/file64.c; - extra_dist = commands/fileXX.c; - common = loader/i386/xen_file.c; - common = loader/i386/xen_file32.c; - common = loader/i386/xen_file64.c; - extra_dist = loader/i386/xen_fileXX.c; -}; -module = { - name = rdmsr; - common = commands/i386/rdmsr.c; - enable = x86; -}; -module = { - name = wrmsr; - common = commands/i386/wrmsr.c; - enable = x86; -}; diff --git a/thirdparty/grub-2.04/grub-core/Makefile.gcry.def b/thirdparty/grub-2.04/grub-core/Makefile.gcry.def deleted file mode 100644 index 4853ed23e..000000000 --- a/thirdparty/grub-2.04/grub-core/Makefile.gcry.def +++ /dev/null @@ -1,157 +0,0 @@ -AutoGen definitions Makefile.tpl; - -module = { - name = gcry_arcfour; - common = lib/libgcrypt-grub/cipher/arcfour.c; - cflags = '$(CFLAGS_GCRY)'; - cppflags = '$(CPPFLAGS_GCRY)'; -}; - -module = { - name = gcry_blowfish; - common = lib/libgcrypt-grub/cipher/blowfish.c; - cflags = '$(CFLAGS_GCRY)'; - cppflags = '$(CPPFLAGS_GCRY)'; -}; - -module = { - name = gcry_camellia; - common = lib/libgcrypt-grub/cipher/camellia-glue.c; - common = lib/libgcrypt-grub/cipher/camellia.c; - cflags = '$(CFLAGS_GCRY)'; - cppflags = '$(CPPFLAGS_GCRY)'; -}; - -module = { - name = gcry_cast5; - common = lib/libgcrypt-grub/cipher/cast5.c; - cflags = '$(CFLAGS_GCRY)'; - cppflags = '$(CPPFLAGS_GCRY)'; -}; - -module = { - name = gcry_crc; - common = lib/libgcrypt-grub/cipher/crc.c; - cflags = '$(CFLAGS_GCRY)'; - cppflags = '$(CPPFLAGS_GCRY)'; -}; - -module = { - name = gcry_des; - common = lib/libgcrypt-grub/cipher/des.c; - cflags = '$(CFLAGS_GCRY)'; - cppflags = '$(CPPFLAGS_GCRY)'; -}; - -module = { - name = gcry_dsa; - common = lib/libgcrypt-grub/cipher/dsa.c; - cflags = '$(CFLAGS_GCRY)'; - cppflags = '$(CPPFLAGS_GCRY)'; -}; - -module = { - name = gcry_idea; - common = lib/libgcrypt-grub/cipher/idea.c; - cflags = '$(CFLAGS_GCRY)'; - cppflags = '$(CPPFLAGS_GCRY)'; -}; - -module = { - name = gcry_md4; - common = lib/libgcrypt-grub/cipher/md4.c; - cflags = '$(CFLAGS_GCRY) -Wno-cast-align'; - cppflags = '$(CPPFLAGS_GCRY)'; -}; - -module = { - name = gcry_md5; - common = lib/libgcrypt-grub/cipher/md5.c; - cflags = '$(CFLAGS_GCRY) -Wno-cast-align'; - cppflags = '$(CPPFLAGS_GCRY)'; -}; - -module = { - name = gcry_rfc2268; - common = lib/libgcrypt-grub/cipher/rfc2268.c; - cflags = '$(CFLAGS_GCRY)'; - cppflags = '$(CPPFLAGS_GCRY)'; -}; - -module = { - name = gcry_rijndael; - common = lib/libgcrypt-grub/cipher/rijndael.c; - cflags = '$(CFLAGS_GCRY) -Wno-cast-align'; - cppflags = '$(CPPFLAGS_GCRY)'; -}; - -module = { - name = gcry_rmd160; - common = lib/libgcrypt-grub/cipher/rmd160.c; - cflags = '$(CFLAGS_GCRY) -Wno-cast-align'; - cppflags = '$(CPPFLAGS_GCRY)'; -}; - -module = { - name = gcry_rsa; - common = lib/libgcrypt-grub/cipher/rsa.c; - cflags = '$(CFLAGS_GCRY)'; - cppflags = '$(CPPFLAGS_GCRY)'; -}; - -module = { - name = gcry_seed; - common = lib/libgcrypt-grub/cipher/seed.c; - cflags = '$(CFLAGS_GCRY)'; - cppflags = '$(CPPFLAGS_GCRY)'; -}; - -module = { - name = gcry_serpent; - common = lib/libgcrypt-grub/cipher/serpent.c; - cflags = '$(CFLAGS_GCRY)'; - cppflags = '$(CPPFLAGS_GCRY)'; -}; - -module = { - name = gcry_sha1; - common = lib/libgcrypt-grub/cipher/sha1.c; - cflags = '$(CFLAGS_GCRY) -Wno-cast-align'; - cppflags = '$(CPPFLAGS_GCRY)'; -}; - -module = { - name = gcry_sha256; - common = lib/libgcrypt-grub/cipher/sha256.c; - cflags = '$(CFLAGS_GCRY) -Wno-cast-align'; - cppflags = '$(CPPFLAGS_GCRY)'; -}; - -module = { - name = gcry_sha512; - common = lib/libgcrypt-grub/cipher/sha512.c; - cflags = '$(CFLAGS_GCRY) -Wno-cast-align'; - cppflags = '$(CPPFLAGS_GCRY)'; -}; - -module = { - name = gcry_tiger; - common = lib/libgcrypt-grub/cipher/tiger.c; - cflags = '$(CFLAGS_GCRY) -Wno-cast-align'; - cppflags = '$(CPPFLAGS_GCRY)'; -}; - -module = { - name = gcry_twofish; - common = lib/libgcrypt-grub/cipher/twofish.c; - cflags = '$(CFLAGS_GCRY)'; - cppflags = '$(CPPFLAGS_GCRY)'; -}; - -module = { - name = gcry_whirlpool; - common = lib/libgcrypt-grub/cipher/whirlpool.c; - cflags = '$(CFLAGS_GCRY)'; - cppflags = '$(CPPFLAGS_GCRY)'; -}; - diff --git a/thirdparty/grub-2.04/grub-core/Makefile.in b/thirdparty/grub-2.04/grub-core/Makefile.in deleted file mode 100644 index 457c0f672..000000000 --- a/thirdparty/grub-2.04/grub-core/Makefile.in +++ /dev/null @@ -1,46767 +0,0 @@ -# Makefile.in generated by automake 1.15 from Makefile.am. -# @configure_input@ - -# Copyright (C) 1994-2014 Free Software Foundation, Inc. - -# This Makefile.in is free software; the Free Software Foundation -# gives unlimited permission to copy and/or distribute it, -# with or without modifications, as long as this notice is preserved. - -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY, to the extent permitted by law; without -# even the implied warranty of MERCHANTABILITY or FITNESS FOR A -# PARTICULAR PURPOSE. - -@SET_MAKE@ - -# -*- makefile -*- - - - - -VPATH = @srcdir@ -am__is_gnu_make = { \ - if test -z '$(MAKELEVEL)'; then \ - false; \ - elif test -n '$(MAKE_HOST)'; then \ - true; \ - elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \ - true; \ - else \ - false; \ - fi; \ -} -am__make_running_with_option = \ - case $${target_option-} in \ - ?) ;; \ - *) echo "am__make_running_with_option: internal error: invalid" \ - "target option '$${target_option-}' specified" >&2; \ - exit 1;; \ - esac; \ - has_opt=no; \ - sane_makeflags=$$MAKEFLAGS; \ - if $(am__is_gnu_make); then \ - sane_makeflags=$$MFLAGS; \ - else \ - case $$MAKEFLAGS in \ - *\\[\ \ ]*) \ - bs=\\; \ - sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \ - | sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \ - esac; \ - fi; \ - skip_next=no; \ - strip_trailopt () \ - { \ - flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \ - }; \ - for flg in $$sane_makeflags; do \ - test $$skip_next = yes && { skip_next=no; continue; }; \ - case $$flg in \ - *=*|--*) continue;; \ - -*I) strip_trailopt 'I'; skip_next=yes;; \ - -*I?*) strip_trailopt 'I';; \ - -*O) strip_trailopt 'O'; skip_next=yes;; \ - -*O?*) strip_trailopt 'O';; \ - -*l) strip_trailopt 'l'; skip_next=yes;; \ - -*l?*) strip_trailopt 'l';; \ - -[dEDm]) skip_next=yes;; \ - -[JT]) skip_next=yes;; \ - esac; \ - case $$flg in \ - *$$target_option*) has_opt=yes; break;; \ - esac; \ - done; \ - test $$has_opt = yes -am__make_dryrun = (target_option=n; $(am__make_running_with_option)) -am__make_keepgoing = (target_option=k; $(am__make_running_with_option)) -pkgdatadir = $(datadir)/@PACKAGE@ -pkgincludedir = $(includedir)/@PACKAGE@ -pkglibdir = $(libdir)/@PACKAGE@ -pkglibexecdir = $(libexecdir)/@PACKAGE@ -am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd -install_sh_DATA = $(install_sh) -c -m 644 -install_sh_PROGRAM = $(install_sh) -c -install_sh_SCRIPT = $(install_sh) -c -INSTALL_HEADER = $(INSTALL_DATA) -transform = $(program_transform_name) -NORMAL_INSTALL = : -PRE_INSTALL = : -POST_INSTALL = : -NORMAL_UNINSTALL = : -PRE_UNINSTALL = : -POST_UNINSTALL = : -build_triplet = @build@ -host_triplet = @host@ -target_triplet = @target@ -@COND_arm64_TRUE@am__append_1 = -mcmodel=large -@COND_powerpc_ieee1275_TRUE@am__append_2 = -mcpu=powerpc -bin_PROGRAMS = $(am__EXEEXT_1) -sbin_PROGRAMS = -check_PROGRAMS = -noinst_PROGRAMS = -platform_PROGRAMS = disk.module$(EXEEXT) trig.module$(EXEEXT) \ - $(am__EXEEXT_2) $(am__EXEEXT_3) $(am__EXEEXT_4) \ - $(am__EXEEXT_5) $(am__EXEEXT_6) $(am__EXEEXT_7) \ - $(am__EXEEXT_8) $(am__EXEEXT_9) $(am__EXEEXT_10) \ - $(am__EXEEXT_11) $(am__EXEEXT_12) $(am__EXEEXT_13) \ - $(am__EXEEXT_14) $(am__EXEEXT_15) $(am__EXEEXT_16) \ - $(am__EXEEXT_17) $(am__EXEEXT_18) $(am__EXEEXT_19) \ - $(am__EXEEXT_20) $(am__EXEEXT_21) $(am__EXEEXT_22) \ - $(am__EXEEXT_23) $(am__EXEEXT_24) $(am__EXEEXT_25) \ - $(am__EXEEXT_26) $(am__EXEEXT_27) $(am__EXEEXT_28) \ - $(am__EXEEXT_29) $(am__EXEEXT_30) $(am__EXEEXT_31) \ - $(am__EXEEXT_32) $(am__EXEEXT_33) $(am__EXEEXT_34) \ - $(am__EXEEXT_35) $(am__EXEEXT_36) $(am__EXEEXT_37) \ - $(am__EXEEXT_38) $(am__EXEEXT_39) $(am__EXEEXT_40) \ - $(am__EXEEXT_41) $(am__EXEEXT_42) $(am__EXEEXT_43) \ - $(am__EXEEXT_44) $(am__EXEEXT_45) $(am__EXEEXT_46) \ - $(am__EXEEXT_47) $(am__EXEEXT_48) $(am__EXEEXT_49) \ - $(am__EXEEXT_50) $(am__EXEEXT_51) $(am__EXEEXT_52) \ - $(am__EXEEXT_53) $(am__EXEEXT_54) $(am__EXEEXT_55) \ - $(am__EXEEXT_56) $(am__EXEEXT_57) $(am__EXEEXT_58) \ - $(am__EXEEXT_59) $(am__EXEEXT_60) $(am__EXEEXT_61) \ - $(am__EXEEXT_62) $(am__EXEEXT_63) $(am__EXEEXT_64) \ - $(am__EXEEXT_65) $(am__EXEEXT_66) $(am__EXEEXT_67) \ - $(am__EXEEXT_68) $(am__EXEEXT_69) $(am__EXEEXT_70) \ - $(am__EXEEXT_71) $(am__EXEEXT_72) $(am__EXEEXT_73) \ - $(am__EXEEXT_74) $(am__EXEEXT_75) $(am__EXEEXT_76) \ - $(am__EXEEXT_77) $(am__EXEEXT_78) $(am__EXEEXT_79) \ - $(am__EXEEXT_80) $(am__EXEEXT_81) $(am__EXEEXT_82) \ - $(am__EXEEXT_83) $(am__EXEEXT_84) $(am__EXEEXT_85) \ - $(am__EXEEXT_86) $(am__EXEEXT_87) $(am__EXEEXT_88) \ - $(am__EXEEXT_89) $(am__EXEEXT_90) $(am__EXEEXT_91) \ - $(am__EXEEXT_92) $(am__EXEEXT_93) $(am__EXEEXT_94) \ - $(am__EXEEXT_95) $(am__EXEEXT_96) $(am__EXEEXT_97) \ - $(am__EXEEXT_98) $(am__EXEEXT_99) $(am__EXEEXT_100) \ - $(am__EXEEXT_101) $(am__EXEEXT_102) $(am__EXEEXT_103) \ - $(am__EXEEXT_104) $(am__EXEEXT_105) $(am__EXEEXT_106) \ - $(am__EXEEXT_107) $(am__EXEEXT_108) $(am__EXEEXT_109) \ - $(am__EXEEXT_110) $(am__EXEEXT_111) $(am__EXEEXT_112) \ - $(am__EXEEXT_113) $(am__EXEEXT_114) $(am__EXEEXT_115) \ - $(am__EXEEXT_116) $(am__EXEEXT_117) $(am__EXEEXT_118) \ - $(am__EXEEXT_119) $(am__EXEEXT_120) $(am__EXEEXT_121) \ - $(am__EXEEXT_122) $(am__EXEEXT_123) $(am__EXEEXT_124) \ - $(am__EXEEXT_125) $(am__EXEEXT_126) $(am__EXEEXT_127) \ - $(am__EXEEXT_128) $(am__EXEEXT_129) $(am__EXEEXT_130) \ - $(am__EXEEXT_131) $(am__EXEEXT_132) $(am__EXEEXT_133) \ - $(am__EXEEXT_134) $(am__EXEEXT_135) $(am__EXEEXT_136) \ - $(am__EXEEXT_137) $(am__EXEEXT_138) $(am__EXEEXT_139) \ - $(am__EXEEXT_140) $(am__EXEEXT_141) $(am__EXEEXT_142) \ - $(am__EXEEXT_143) $(am__EXEEXT_144) $(am__EXEEXT_145) \ - $(am__EXEEXT_146) $(am__EXEEXT_147) $(am__EXEEXT_148) \ - regexp.module$(EXEEXT) $(am__EXEEXT_149) $(am__EXEEXT_150) \ - $(am__EXEEXT_151) $(am__EXEEXT_152) $(am__EXEEXT_153) \ - $(am__EXEEXT_154) $(am__EXEEXT_155) $(am__EXEEXT_156) \ - $(am__EXEEXT_157) $(am__EXEEXT_158) $(am__EXEEXT_159) \ - $(am__EXEEXT_160) $(am__EXEEXT_161) $(am__EXEEXT_162) \ - $(am__EXEEXT_163) $(am__EXEEXT_164) $(am__EXEEXT_165) \ - $(am__EXEEXT_166) $(am__EXEEXT_167) $(am__EXEEXT_168) \ - $(am__EXEEXT_169) $(am__EXEEXT_170) $(am__EXEEXT_171) \ - $(am__EXEEXT_172) $(am__EXEEXT_173) $(am__EXEEXT_174) \ - $(am__EXEEXT_175) $(am__EXEEXT_176) $(am__EXEEXT_177) \ - $(am__EXEEXT_178) $(am__EXEEXT_179) $(am__EXEEXT_180) \ - $(am__EXEEXT_181) $(am__EXEEXT_182) $(am__EXEEXT_183) \ - $(am__EXEEXT_184) $(am__EXEEXT_185) $(am__EXEEXT_186) \ - $(am__EXEEXT_187) $(am__EXEEXT_188) $(am__EXEEXT_189) \ - $(am__EXEEXT_190) $(am__EXEEXT_191) $(am__EXEEXT_192) \ - $(am__EXEEXT_193) $(am__EXEEXT_194) $(am__EXEEXT_195) \ - $(am__EXEEXT_196) $(am__EXEEXT_197) $(am__EXEEXT_198) \ - $(am__EXEEXT_199) $(am__EXEEXT_200) $(am__EXEEXT_201) \ - $(am__EXEEXT_202) $(am__EXEEXT_203) blocklist.module$(EXEEXT) \ - $(am__EXEEXT_204) $(am__EXEEXT_205) $(am__EXEEXT_206) \ - $(am__EXEEXT_207) $(am__EXEEXT_208) $(am__EXEEXT_209) \ - $(am__EXEEXT_210) $(am__EXEEXT_211) $(am__EXEEXT_212) \ - $(am__EXEEXT_213) $(am__EXEEXT_214) $(am__EXEEXT_215) \ - $(am__EXEEXT_216) $(am__EXEEXT_217) $(am__EXEEXT_218) \ - $(am__EXEEXT_219) $(am__EXEEXT_220) $(am__EXEEXT_221) \ - cat.module$(EXEEXT) cmp.module$(EXEEXT) \ - configfile.module$(EXEEXT) $(am__EXEEXT_222) $(am__EXEEXT_223) \ - $(am__EXEEXT_224) $(am__EXEEXT_225) $(am__EXEEXT_226) \ - $(am__EXEEXT_227) $(am__EXEEXT_228) $(am__EXEEXT_229) \ - $(am__EXEEXT_230) $(am__EXEEXT_231) date.module$(EXEEXT) \ - $(am__EXEEXT_232) echo.module$(EXEEXT) eval.module$(EXEEXT) \ - $(am__EXEEXT_233) $(am__EXEEXT_234) $(am__EXEEXT_235) \ - $(am__EXEEXT_236) $(am__EXEEXT_237) $(am__EXEEXT_238) \ - $(am__EXEEXT_239) $(am__EXEEXT_240) $(am__EXEEXT_241) \ - $(am__EXEEXT_242) $(am__EXEEXT_243) $(am__EXEEXT_244) \ - $(am__EXEEXT_245) $(am__EXEEXT_246) gptsync.module$(EXEEXT) \ - $(am__EXEEXT_247) $(am__EXEEXT_248) $(am__EXEEXT_249) \ - $(am__EXEEXT_250) $(am__EXEEXT_251) $(am__EXEEXT_252) \ - $(am__EXEEXT_253) $(am__EXEEXT_254) $(am__EXEEXT_255) \ - $(am__EXEEXT_256) $(am__EXEEXT_257) $(am__EXEEXT_258) \ - $(am__EXEEXT_259) $(am__EXEEXT_260) $(am__EXEEXT_261) \ - $(am__EXEEXT_262) $(am__EXEEXT_263) $(am__EXEEXT_264) \ - $(am__EXEEXT_265) $(am__EXEEXT_266) $(am__EXEEXT_267) \ - $(am__EXEEXT_268) $(am__EXEEXT_269) $(am__EXEEXT_270) \ - $(am__EXEEXT_271) $(am__EXEEXT_272) $(am__EXEEXT_273) \ - $(am__EXEEXT_274) $(am__EXEEXT_275) $(am__EXEEXT_276) \ - $(am__EXEEXT_277) $(am__EXEEXT_278) $(am__EXEEXT_279) \ - $(am__EXEEXT_280) $(am__EXEEXT_281) $(am__EXEEXT_282) \ - $(am__EXEEXT_283) $(am__EXEEXT_284) $(am__EXEEXT_285) \ - $(am__EXEEXT_286) $(am__EXEEXT_287) $(am__EXEEXT_288) \ - $(am__EXEEXT_289) $(am__EXEEXT_290) $(am__EXEEXT_291) \ - $(am__EXEEXT_292) hashsum.module$(EXEEXT) pgp.module$(EXEEXT) \ - verifiers.module$(EXEEXT) $(am__EXEEXT_293) $(am__EXEEXT_294) \ - $(am__EXEEXT_295) $(am__EXEEXT_296) $(am__EXEEXT_297) \ - $(am__EXEEXT_298) $(am__EXEEXT_299) $(am__EXEEXT_300) \ - $(am__EXEEXT_301) $(am__EXEEXT_302) help.module$(EXEEXT) \ - hexdump.module$(EXEEXT) keystatus.module$(EXEEXT) \ - $(am__EXEEXT_303) $(am__EXEEXT_304) loadenv.module$(EXEEXT) \ - ls.module$(EXEEXT) lsmmap.module$(EXEEXT) $(am__EXEEXT_305) \ - $(am__EXEEXT_306) $(am__EXEEXT_307) $(am__EXEEXT_308) \ - $(am__EXEEXT_309) $(am__EXEEXT_310) $(am__EXEEXT_311) \ - $(am__EXEEXT_312) memrw.module$(EXEEXT) \ - minicmd.module$(EXEEXT) parttool.module$(EXEEXT) \ - password.module$(EXEEXT) password_pbkdf2.module$(EXEEXT) \ - $(am__EXEEXT_313) $(am__EXEEXT_314) $(am__EXEEXT_315) \ - $(am__EXEEXT_316) $(am__EXEEXT_317) $(am__EXEEXT_318) \ - $(am__EXEEXT_319) $(am__EXEEXT_320) $(am__EXEEXT_321) \ - $(am__EXEEXT_322) $(am__EXEEXT_323) $(am__EXEEXT_324) \ - $(am__EXEEXT_325) $(am__EXEEXT_326) $(am__EXEEXT_327) \ - $(am__EXEEXT_328) $(am__EXEEXT_329) $(am__EXEEXT_330) \ - $(am__EXEEXT_331) $(am__EXEEXT_332) $(am__EXEEXT_333) \ - probe.module$(EXEEXT) read.module$(EXEEXT) \ - search.module$(EXEEXT) search_fs_file.module$(EXEEXT) \ - search_fs_uuid.module$(EXEEXT) search_label.module$(EXEEXT) \ - $(am__EXEEXT_334) $(am__EXEEXT_335) $(am__EXEEXT_336) \ - $(am__EXEEXT_337) $(am__EXEEXT_338) $(am__EXEEXT_339) \ - $(am__EXEEXT_340) $(am__EXEEXT_341) $(am__EXEEXT_342) \ - $(am__EXEEXT_343) $(am__EXEEXT_344) $(am__EXEEXT_345) \ - $(am__EXEEXT_346) $(am__EXEEXT_347) $(am__EXEEXT_348) \ - $(am__EXEEXT_349) sleep.module$(EXEEXT) $(am__EXEEXT_350) \ - $(am__EXEEXT_351) terminal.module$(EXEEXT) \ - test.module$(EXEEXT) true.module$(EXEEXT) $(am__EXEEXT_352) \ - $(am__EXEEXT_353) $(am__EXEEXT_354) $(am__EXEEXT_355) \ - $(am__EXEEXT_356) $(am__EXEEXT_357) $(am__EXEEXT_358) \ - $(am__EXEEXT_359) $(am__EXEEXT_360) videoinfo.module$(EXEEXT) \ - videotest.module$(EXEEXT) xnu_uuid.module$(EXEEXT) \ - dm_nv.module$(EXEEXT) loopback.module$(EXEEXT) \ - cryptodisk.module$(EXEEXT) luks.module$(EXEEXT) \ - geli.module$(EXEEXT) lvm.module$(EXEEXT) ldm.module$(EXEEXT) \ - mdraid09.module$(EXEEXT) mdraid09_be.module$(EXEEXT) \ - mdraid1x.module$(EXEEXT) diskfilter.module$(EXEEXT) \ - raid5rec.module$(EXEEXT) raid6rec.module$(EXEEXT) \ - scsi.module$(EXEEXT) memdisk.module$(EXEEXT) $(am__EXEEXT_361) \ - $(am__EXEEXT_362) $(am__EXEEXT_363) $(am__EXEEXT_364) \ - $(am__EXEEXT_365) $(am__EXEEXT_366) $(am__EXEEXT_367) \ - $(am__EXEEXT_368) $(am__EXEEXT_369) $(am__EXEEXT_370) \ - $(am__EXEEXT_371) $(am__EXEEXT_372) $(am__EXEEXT_373) \ - $(am__EXEEXT_374) $(am__EXEEXT_375) $(am__EXEEXT_376) \ - $(am__EXEEXT_377) $(am__EXEEXT_378) $(am__EXEEXT_379) \ - $(am__EXEEXT_380) $(am__EXEEXT_381) $(am__EXEEXT_382) \ - $(am__EXEEXT_383) $(am__EXEEXT_384) $(am__EXEEXT_385) \ - $(am__EXEEXT_386) $(am__EXEEXT_387) $(am__EXEEXT_388) \ - $(am__EXEEXT_389) $(am__EXEEXT_390) $(am__EXEEXT_391) \ - $(am__EXEEXT_392) $(am__EXEEXT_393) $(am__EXEEXT_394) \ - $(am__EXEEXT_395) $(am__EXEEXT_396) $(am__EXEEXT_397) \ - $(am__EXEEXT_398) $(am__EXEEXT_399) $(am__EXEEXT_400) \ - $(am__EXEEXT_401) $(am__EXEEXT_402) $(am__EXEEXT_403) \ - $(am__EXEEXT_404) $(am__EXEEXT_405) $(am__EXEEXT_406) \ - $(am__EXEEXT_407) $(am__EXEEXT_408) $(am__EXEEXT_409) \ - $(am__EXEEXT_410) $(am__EXEEXT_411) $(am__EXEEXT_412) \ - $(am__EXEEXT_413) $(am__EXEEXT_414) $(am__EXEEXT_415) \ - $(am__EXEEXT_416) $(am__EXEEXT_417) $(am__EXEEXT_418) \ - $(am__EXEEXT_419) $(am__EXEEXT_420) $(am__EXEEXT_421) \ - procfs.module$(EXEEXT) affs.module$(EXEEXT) \ - afs.module$(EXEEXT) bfs.module$(EXEEXT) zstd.module$(EXEEXT) \ - btrfs.module$(EXEEXT) archelp.module$(EXEEXT) \ - cbfs.module$(EXEEXT) cpio.module$(EXEEXT) \ - cpio_be.module$(EXEEXT) newc.module$(EXEEXT) \ - odc.module$(EXEEXT) ext2.module$(EXEEXT) fat.module$(EXEEXT) \ - exfat.module$(EXEEXT) f2fs.module$(EXEEXT) \ - fshelp.module$(EXEEXT) hfs.module$(EXEEXT) \ - hfsplus.module$(EXEEXT) hfspluscomp.module$(EXEEXT) \ - iso9660.module$(EXEEXT) jfs.module$(EXEEXT) \ - minix.module$(EXEEXT) minix2.module$(EXEEXT) \ - minix3.module$(EXEEXT) minix_be.module$(EXEEXT) \ - minix2_be.module$(EXEEXT) minix3_be.module$(EXEEXT) \ - nilfs2.module$(EXEEXT) ntfs.module$(EXEEXT) \ - ntfscomp.module$(EXEEXT) reiserfs.module$(EXEEXT) \ - romfs.module$(EXEEXT) sfs.module$(EXEEXT) \ - squash4.module$(EXEEXT) tar.module$(EXEEXT) \ - udf.module$(EXEEXT) ufs1.module$(EXEEXT) \ - ufs1_be.module$(EXEEXT) ufs2.module$(EXEEXT) \ - xfs.module$(EXEEXT) zfs.module$(EXEEXT) \ - zfscrypt.module$(EXEEXT) zfsinfo.module$(EXEEXT) \ - macbless.module$(EXEEXT) $(am__EXEEXT_422) \ - gettext.module$(EXEEXT) gfxmenu.module$(EXEEXT) \ - hello.module$(EXEEXT) gzio.module$(EXEEXT) \ - offsetio.module$(EXEEXT) $(am__EXEEXT_423) $(am__EXEEXT_424) \ - $(am__EXEEXT_425) $(am__EXEEXT_426) $(am__EXEEXT_427) \ - $(am__EXEEXT_428) $(am__EXEEXT_429) $(am__EXEEXT_430) \ - $(am__EXEEXT_431) $(am__EXEEXT_432) $(am__EXEEXT_433) \ - $(am__EXEEXT_434) $(am__EXEEXT_435) $(am__EXEEXT_436) \ - $(am__EXEEXT_437) $(am__EXEEXT_438) $(am__EXEEXT_439) \ - $(am__EXEEXT_440) $(am__EXEEXT_441) $(am__EXEEXT_442) \ - elf.module$(EXEEXT) crypto.module$(EXEEXT) \ - pbkdf2.module$(EXEEXT) $(am__EXEEXT_443) $(am__EXEEXT_444) \ - $(am__EXEEXT_445) $(am__EXEEXT_446) $(am__EXEEXT_447) \ - $(am__EXEEXT_448) $(am__EXEEXT_449) $(am__EXEEXT_450) \ - $(am__EXEEXT_451) $(am__EXEEXT_452) $(am__EXEEXT_453) \ - $(am__EXEEXT_454) $(am__EXEEXT_455) $(am__EXEEXT_456) \ - $(am__EXEEXT_457) $(am__EXEEXT_458) $(am__EXEEXT_459) \ - $(am__EXEEXT_460) $(am__EXEEXT_461) $(am__EXEEXT_462) \ - $(am__EXEEXT_463) $(am__EXEEXT_464) $(am__EXEEXT_465) \ - $(am__EXEEXT_466) $(am__EXEEXT_467) $(am__EXEEXT_468) \ - $(am__EXEEXT_469) $(am__EXEEXT_470) $(am__EXEEXT_471) \ - $(am__EXEEXT_472) $(am__EXEEXT_473) $(am__EXEEXT_474) \ - $(am__EXEEXT_475) $(am__EXEEXT_476) $(am__EXEEXT_477) \ - $(am__EXEEXT_478) setjmp.module$(EXEEXT) $(am__EXEEXT_479) \ - $(am__EXEEXT_480) $(am__EXEEXT_481) $(am__EXEEXT_482) \ - $(am__EXEEXT_483) $(am__EXEEXT_484) $(am__EXEEXT_485) \ - $(am__EXEEXT_486) $(am__EXEEXT_487) $(am__EXEEXT_488) \ - $(am__EXEEXT_489) $(am__EXEEXT_490) $(am__EXEEXT_491) \ - $(am__EXEEXT_492) $(am__EXEEXT_493) $(am__EXEEXT_494) \ - $(am__EXEEXT_495) $(am__EXEEXT_496) $(am__EXEEXT_497) \ - $(am__EXEEXT_498) $(am__EXEEXT_499) $(am__EXEEXT_500) \ - $(am__EXEEXT_501) $(am__EXEEXT_502) $(am__EXEEXT_503) \ - $(am__EXEEXT_504) $(am__EXEEXT_505) $(am__EXEEXT_506) \ - $(am__EXEEXT_507) $(am__EXEEXT_508) $(am__EXEEXT_509) \ - $(am__EXEEXT_510) $(am__EXEEXT_511) $(am__EXEEXT_512) \ - $(am__EXEEXT_513) $(am__EXEEXT_514) $(am__EXEEXT_515) \ - $(am__EXEEXT_516) $(am__EXEEXT_517) $(am__EXEEXT_518) \ - $(am__EXEEXT_519) $(am__EXEEXT_520) $(am__EXEEXT_521) \ - $(am__EXEEXT_522) $(am__EXEEXT_523) $(am__EXEEXT_524) \ - $(am__EXEEXT_525) $(am__EXEEXT_526) $(am__EXEEXT_527) \ - $(am__EXEEXT_528) $(am__EXEEXT_529) $(am__EXEEXT_530) \ - $(am__EXEEXT_531) $(am__EXEEXT_532) $(am__EXEEXT_533) \ - $(am__EXEEXT_534) $(am__EXEEXT_535) $(am__EXEEXT_536) \ - $(am__EXEEXT_537) $(am__EXEEXT_538) $(am__EXEEXT_539) \ - $(am__EXEEXT_540) $(am__EXEEXT_541) $(am__EXEEXT_542) \ - $(am__EXEEXT_543) $(am__EXEEXT_544) $(am__EXEEXT_545) \ - $(am__EXEEXT_546) $(am__EXEEXT_547) $(am__EXEEXT_548) \ - $(am__EXEEXT_549) $(am__EXEEXT_550) $(am__EXEEXT_551) \ - $(am__EXEEXT_552) $(am__EXEEXT_553) $(am__EXEEXT_554) \ - $(am__EXEEXT_555) $(am__EXEEXT_556) macho.module$(EXEEXT) \ - $(am__EXEEXT_557) $(am__EXEEXT_558) $(am__EXEEXT_559) \ - $(am__EXEEXT_560) $(am__EXEEXT_561) $(am__EXEEXT_562) \ - $(am__EXEEXT_563) $(am__EXEEXT_564) $(am__EXEEXT_565) \ - $(am__EXEEXT_566) $(am__EXEEXT_567) $(am__EXEEXT_568) \ - $(am__EXEEXT_569) $(am__EXEEXT_570) $(am__EXEEXT_571) \ - $(am__EXEEXT_572) $(am__EXEEXT_573) $(am__EXEEXT_574) \ - $(am__EXEEXT_575) $(am__EXEEXT_576) $(am__EXEEXT_577) \ - $(am__EXEEXT_578) $(am__EXEEXT_579) $(am__EXEEXT_580) \ - $(am__EXEEXT_581) $(am__EXEEXT_582) $(am__EXEEXT_583) \ - normal.module$(EXEEXT) part_acorn.module$(EXEEXT) \ - part_amiga.module$(EXEEXT) part_apple.module$(EXEEXT) \ - part_gpt.module$(EXEEXT) part_msdos.module$(EXEEXT) \ - part_sun.module$(EXEEXT) part_plan.module$(EXEEXT) \ - part_dvh.module$(EXEEXT) part_bsd.module$(EXEEXT) \ - part_sunpc.module$(EXEEXT) part_dfly.module$(EXEEXT) \ - msdospart.module$(EXEEXT) $(am__EXEEXT_584) $(am__EXEEXT_585) \ - $(am__EXEEXT_586) $(am__EXEEXT_587) $(am__EXEEXT_588) \ - $(am__EXEEXT_589) $(am__EXEEXT_590) $(am__EXEEXT_591) \ - $(am__EXEEXT_592) $(am__EXEEXT_593) $(am__EXEEXT_594) \ - $(am__EXEEXT_595) $(am__EXEEXT_596) $(am__EXEEXT_597) \ - $(am__EXEEXT_598) $(am__EXEEXT_599) $(am__EXEEXT_600) \ - $(am__EXEEXT_601) $(am__EXEEXT_602) $(am__EXEEXT_603) \ - $(am__EXEEXT_604) $(am__EXEEXT_605) $(am__EXEEXT_606) \ - $(am__EXEEXT_607) $(am__EXEEXT_608) $(am__EXEEXT_609) \ - $(am__EXEEXT_610) gfxterm_background.module$(EXEEXT) \ - $(am__EXEEXT_611) $(am__EXEEXT_612) $(am__EXEEXT_613) \ - $(am__EXEEXT_614) $(am__EXEEXT_615) $(am__EXEEXT_616) \ - $(am__EXEEXT_617) $(am__EXEEXT_618) $(am__EXEEXT_619) \ - $(am__EXEEXT_620) $(am__EXEEXT_621) $(am__EXEEXT_622) \ - $(am__EXEEXT_623) $(am__EXEEXT_624) $(am__EXEEXT_625) \ - $(am__EXEEXT_626) $(am__EXEEXT_627) $(am__EXEEXT_628) \ - $(am__EXEEXT_629) $(am__EXEEXT_630) $(am__EXEEXT_631) \ - $(am__EXEEXT_632) $(am__EXEEXT_633) $(am__EXEEXT_634) \ - $(am__EXEEXT_635) $(am__EXEEXT_636) $(am__EXEEXT_637) \ - $(am__EXEEXT_638) $(am__EXEEXT_639) $(am__EXEEXT_640) \ - $(am__EXEEXT_641) $(am__EXEEXT_642) $(am__EXEEXT_643) \ - $(am__EXEEXT_644) $(am__EXEEXT_645) $(am__EXEEXT_646) \ - $(am__EXEEXT_647) $(am__EXEEXT_648) $(am__EXEEXT_649) \ - $(am__EXEEXT_650) $(am__EXEEXT_651) $(am__EXEEXT_652) \ - $(am__EXEEXT_653) $(am__EXEEXT_654) $(am__EXEEXT_655) \ - $(am__EXEEXT_656) $(am__EXEEXT_657) $(am__EXEEXT_658) \ - $(am__EXEEXT_659) $(am__EXEEXT_660) $(am__EXEEXT_661) \ - $(am__EXEEXT_662) $(am__EXEEXT_663) $(am__EXEEXT_664) \ - $(am__EXEEXT_665) functional_test.module$(EXEEXT) \ - exfctest.module$(EXEEXT) strtoull_test.module$(EXEEXT) \ - setjmp_test.module$(EXEEXT) signature_test.module$(EXEEXT) \ - sleep_test.module$(EXEEXT) xnu_uuid_test.module$(EXEEXT) \ - pbkdf2_test.module$(EXEEXT) $(am__EXEEXT_666) \ - $(am__EXEEXT_667) $(am__EXEEXT_668) $(am__EXEEXT_669) \ - $(am__EXEEXT_670) $(am__EXEEXT_671) $(am__EXEEXT_672) \ - $(am__EXEEXT_673) $(am__EXEEXT_674) $(am__EXEEXT_675) \ - $(am__EXEEXT_676) $(am__EXEEXT_677) $(am__EXEEXT_678) \ - $(am__EXEEXT_679) $(am__EXEEXT_680) $(am__EXEEXT_681) \ - $(am__EXEEXT_682) $(am__EXEEXT_683) $(am__EXEEXT_684) \ - $(am__EXEEXT_685) $(am__EXEEXT_686) $(am__EXEEXT_687) \ - $(am__EXEEXT_688) $(am__EXEEXT_689) $(am__EXEEXT_690) \ - div_test.module$(EXEEXT) mul_test.module$(EXEEXT) \ - shift_test.module$(EXEEXT) cmp_test.module$(EXEEXT) \ - ctz_test.module$(EXEEXT) bswap_test.module$(EXEEXT) \ - videotest_checksum.module$(EXEEXT) \ - gfxterm_menu.module$(EXEEXT) cmdline_cat_test.module$(EXEEXT) \ - bitmap.module$(EXEEXT) bitmap_scale.module$(EXEEXT) \ - $(am__EXEEXT_691) $(am__EXEEXT_692) $(am__EXEEXT_693) \ - $(am__EXEEXT_694) $(am__EXEEXT_695) $(am__EXEEXT_696) \ - $(am__EXEEXT_697) $(am__EXEEXT_698) $(am__EXEEXT_699) \ - jpeg.module$(EXEEXT) png.module$(EXEEXT) tga.module$(EXEEXT) \ - $(am__EXEEXT_700) $(am__EXEEXT_701) $(am__EXEEXT_702) \ - $(am__EXEEXT_703) $(am__EXEEXT_704) $(am__EXEEXT_705) \ - $(am__EXEEXT_706) $(am__EXEEXT_707) $(am__EXEEXT_708) \ - $(am__EXEEXT_709) $(am__EXEEXT_710) $(am__EXEEXT_711) \ - $(am__EXEEXT_712) $(am__EXEEXT_713) $(am__EXEEXT_714) \ - $(am__EXEEXT_715) $(am__EXEEXT_716) $(am__EXEEXT_717) \ - $(am__EXEEXT_718) $(am__EXEEXT_719) $(am__EXEEXT_720) \ - $(am__EXEEXT_721) $(am__EXEEXT_722) $(am__EXEEXT_723) \ - $(am__EXEEXT_724) $(am__EXEEXT_725) $(am__EXEEXT_726) \ - $(am__EXEEXT_727) $(am__EXEEXT_728) $(am__EXEEXT_729) \ - $(am__EXEEXT_730) $(am__EXEEXT_731) $(am__EXEEXT_732) \ - $(am__EXEEXT_733) $(am__EXEEXT_734) $(am__EXEEXT_735) \ - $(am__EXEEXT_736) $(am__EXEEXT_737) $(am__EXEEXT_738) \ - $(am__EXEEXT_739) $(am__EXEEXT_740) \ - video_colors.module$(EXEEXT) $(am__EXEEXT_741) \ - $(am__EXEEXT_742) datehook.module$(EXEEXT) net.module$(EXEEXT) \ - tftp.module$(EXEEXT) http.module$(EXEEXT) $(am__EXEEXT_743) \ - $(am__EXEEXT_744) $(am__EXEEXT_745) $(am__EXEEXT_746) \ - $(am__EXEEXT_747) $(am__EXEEXT_748) $(am__EXEEXT_749) \ - $(am__EXEEXT_750) $(am__EXEEXT_751) $(am__EXEEXT_752) \ - $(am__EXEEXT_753) $(am__EXEEXT_754) $(am__EXEEXT_755) \ - $(am__EXEEXT_756) $(am__EXEEXT_757) $(am__EXEEXT_758) \ - $(am__EXEEXT_759) $(am__EXEEXT_760) \ - syslinuxcfg.module$(EXEEXT) test_blockarg.module$(EXEEXT) \ - xzio.module$(EXEEXT) lzopio.module$(EXEEXT) \ - testload.module$(EXEEXT) $(am__EXEEXT_761) $(am__EXEEXT_762) \ - $(am__EXEEXT_763) $(am__EXEEXT_764) $(am__EXEEXT_765) \ - $(am__EXEEXT_766) $(am__EXEEXT_767) $(am__EXEEXT_768) \ - $(am__EXEEXT_769) $(am__EXEEXT_770) $(am__EXEEXT_771) \ - $(am__EXEEXT_772) $(am__EXEEXT_773) $(am__EXEEXT_774) \ - $(am__EXEEXT_775) $(am__EXEEXT_776) $(am__EXEEXT_777) \ - priority_queue.module$(EXEEXT) time.module$(EXEEXT) \ - $(am__EXEEXT_778) $(am__EXEEXT_779) adler32.module$(EXEEXT) \ - crc64.module$(EXEEXT) mpi.module$(EXEEXT) \ - all_video.module$(EXEEXT) $(am__EXEEXT_780) $(am__EXEEXT_781) \ - $(am__EXEEXT_782) $(am__EXEEXT_783) $(am__EXEEXT_784) \ - $(am__EXEEXT_785) testspeed.module$(EXEEXT) $(am__EXEEXT_786) \ - tr.module$(EXEEXT) progress.module$(EXEEXT) \ - file.module$(EXEEXT) $(am__EXEEXT_787) $(am__EXEEXT_788) \ - $(am__EXEEXT_789) $(am__EXEEXT_790) $(am__EXEEXT_791) \ - $(am__EXEEXT_792) $(am__EXEEXT_793) $(am__EXEEXT_794) \ - $(am__EXEEXT_795) $(am__EXEEXT_796) $(am__EXEEXT_797) \ - $(am__EXEEXT_798) $(am__EXEEXT_799) $(am__EXEEXT_800) \ - gcry_arcfour.module$(EXEEXT) gcry_blowfish.module$(EXEEXT) \ - gcry_camellia.module$(EXEEXT) gcry_cast5.module$(EXEEXT) \ - gcry_crc.module$(EXEEXT) gcry_des.module$(EXEEXT) \ - gcry_dsa.module$(EXEEXT) gcry_idea.module$(EXEEXT) \ - gcry_md4.module$(EXEEXT) gcry_md5.module$(EXEEXT) \ - gcry_rfc2268.module$(EXEEXT) gcry_rijndael.module$(EXEEXT) \ - gcry_rmd160.module$(EXEEXT) gcry_rsa.module$(EXEEXT) \ - gcry_seed.module$(EXEEXT) gcry_serpent.module$(EXEEXT) \ - gcry_sha1.module$(EXEEXT) gcry_sha256.module$(EXEEXT) \ - gcry_sha512.module$(EXEEXT) gcry_tiger.module$(EXEEXT) \ - gcry_twofish.module$(EXEEXT) gcry_whirlpool.module$(EXEEXT) \ - $(am__EXEEXT_801) $(am__EXEEXT_802) $(am__EXEEXT_803) \ - $(am__EXEEXT_804) $(am__EXEEXT_805) $(am__EXEEXT_806) \ - $(am__EXEEXT_807) $(am__EXEEXT_808) $(am__EXEEXT_809) \ - $(am__EXEEXT_810) $(am__EXEEXT_811) $(am__EXEEXT_812) \ - $(am__EXEEXT_813) $(am__EXEEXT_814) $(am__EXEEXT_815) \ - $(am__EXEEXT_816) $(am__EXEEXT_817) $(am__EXEEXT_818) \ - $(am__EXEEXT_819) $(am__EXEEXT_820) $(am__EXEEXT_821) \ - $(am__EXEEXT_822) $(am__EXEEXT_823) $(am__EXEEXT_824) \ - $(am__EXEEXT_825) $(am__EXEEXT_826) $(am__EXEEXT_827) \ - $(am__EXEEXT_828) $(am__EXEEXT_829) $(am__EXEEXT_830) \ - $(am__EXEEXT_831) $(am__EXEEXT_832) $(am__EXEEXT_833) \ - $(am__EXEEXT_834) $(am__EXEEXT_835) $(am__EXEEXT_836) \ - $(am__EXEEXT_837) $(am__EXEEXT_838) $(am__EXEEXT_839) -TESTS = -@COND_i386_pc_TRUE@am__append_3 = cs5536.module -@COND_i386_pc_TRUE@am__append_4 = cs5536.module$(EXEEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_x86_64_efi_FALSE@cs5536_module_DEPENDENCIES = -@COND_i386_pc_TRUE@am__append_5 = -@COND_i386_pc_TRUE@am__append_6 = $(nodist_cs5536_module_SOURCES) -@COND_i386_pc_TRUE@am__append_7 = $(nodist_cs5536_module_SOURCES) \ -@COND_i386_pc_TRUE@ cs5536.marker -@COND_i386_pc_TRUE@am__append_8 = cs5536.mod -@COND_i386_pc_TRUE@am__append_9 = cs5536.marker -@COND_i386_efi_TRUE@am__append_10 = cs5536.module -@COND_i386_efi_TRUE@am__append_11 = cs5536.module$(EXEEXT) -@COND_i386_efi_TRUE@am__append_12 = -@COND_i386_efi_TRUE@am__append_13 = $(nodist_cs5536_module_SOURCES) -@COND_i386_efi_TRUE@am__append_14 = $(nodist_cs5536_module_SOURCES) \ -@COND_i386_efi_TRUE@ cs5536.marker -@COND_i386_efi_TRUE@am__append_15 = cs5536.mod -@COND_i386_efi_TRUE@am__append_16 = cs5536.marker -@COND_i386_qemu_TRUE@am__append_17 = cs5536.module -@COND_i386_qemu_TRUE@am__append_18 = cs5536.module$(EXEEXT) -@COND_i386_qemu_TRUE@am__append_19 = -@COND_i386_qemu_TRUE@am__append_20 = $(nodist_cs5536_module_SOURCES) -@COND_i386_qemu_TRUE@am__append_21 = $(nodist_cs5536_module_SOURCES) \ -@COND_i386_qemu_TRUE@ cs5536.marker -@COND_i386_qemu_TRUE@am__append_22 = cs5536.mod -@COND_i386_qemu_TRUE@am__append_23 = cs5536.marker -@COND_i386_coreboot_TRUE@am__append_24 = cs5536.module -@COND_i386_coreboot_TRUE@am__append_25 = cs5536.module$(EXEEXT) -@COND_i386_coreboot_TRUE@am__append_26 = -@COND_i386_coreboot_TRUE@am__append_27 = $(nodist_cs5536_module_SOURCES) -@COND_i386_coreboot_TRUE@am__append_28 = \ -@COND_i386_coreboot_TRUE@ $(nodist_cs5536_module_SOURCES) \ -@COND_i386_coreboot_TRUE@ cs5536.marker -@COND_i386_coreboot_TRUE@am__append_29 = cs5536.mod -@COND_i386_coreboot_TRUE@am__append_30 = cs5536.marker -@COND_i386_multiboot_TRUE@am__append_31 = cs5536.module -@COND_i386_multiboot_TRUE@am__append_32 = cs5536.module$(EXEEXT) -@COND_i386_multiboot_TRUE@am__append_33 = -@COND_i386_multiboot_TRUE@am__append_34 = $(nodist_cs5536_module_SOURCES) -@COND_i386_multiboot_TRUE@am__append_35 = \ -@COND_i386_multiboot_TRUE@ $(nodist_cs5536_module_SOURCES) \ -@COND_i386_multiboot_TRUE@ cs5536.marker -@COND_i386_multiboot_TRUE@am__append_36 = cs5536.mod -@COND_i386_multiboot_TRUE@am__append_37 = cs5536.marker -@COND_i386_ieee1275_TRUE@am__append_38 = cs5536.module -@COND_i386_ieee1275_TRUE@am__append_39 = cs5536.module$(EXEEXT) -@COND_i386_ieee1275_TRUE@am__append_40 = -@COND_i386_ieee1275_TRUE@am__append_41 = $(nodist_cs5536_module_SOURCES) -@COND_i386_ieee1275_TRUE@am__append_42 = \ -@COND_i386_ieee1275_TRUE@ $(nodist_cs5536_module_SOURCES) \ -@COND_i386_ieee1275_TRUE@ cs5536.marker -@COND_i386_ieee1275_TRUE@am__append_43 = cs5536.mod -@COND_i386_ieee1275_TRUE@am__append_44 = cs5536.marker -@COND_x86_64_efi_TRUE@am__append_45 = cs5536.module -@COND_x86_64_efi_TRUE@am__append_46 = cs5536.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__append_47 = -@COND_x86_64_efi_TRUE@am__append_48 = $(nodist_cs5536_module_SOURCES) -@COND_x86_64_efi_TRUE@am__append_49 = $(nodist_cs5536_module_SOURCES) \ -@COND_x86_64_efi_TRUE@ cs5536.marker -@COND_x86_64_efi_TRUE@am__append_50 = cs5536.mod -@COND_x86_64_efi_TRUE@am__append_51 = cs5536.marker -@COND_mips_loongson_TRUE@am__append_52 = lsspd.module -@COND_mips_loongson_TRUE@am__append_53 = lsspd.module$(EXEEXT) -@COND_mips_loongson_FALSE@lsspd_module_DEPENDENCIES = -@COND_mips_loongson_TRUE@am__append_54 = -@COND_mips_loongson_TRUE@am__append_55 = $(nodist_lsspd_module_SOURCES) -@COND_mips_loongson_TRUE@am__append_56 = \ -@COND_mips_loongson_TRUE@ $(nodist_lsspd_module_SOURCES) \ -@COND_mips_loongson_TRUE@ lsspd.marker -@COND_mips_loongson_TRUE@am__append_57 = lsspd.mod -@COND_mips_loongson_TRUE@am__append_58 = lsspd.marker -@COND_i386_pc_TRUE@am__append_59 = usb.module -@COND_i386_pc_TRUE@am__append_60 = usb.module$(EXEEXT) -@COND_arm_coreboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_mips_loongson_FALSE@@COND_x86_64_efi_FALSE@usb_module_DEPENDENCIES = -@COND_i386_pc_TRUE@am__append_61 = -@COND_i386_pc_TRUE@am__append_62 = $(nodist_usb_module_SOURCES) -@COND_i386_pc_TRUE@am__append_63 = $(nodist_usb_module_SOURCES) \ -@COND_i386_pc_TRUE@ usb.marker -@COND_i386_pc_TRUE@am__append_64 = usb.mod -@COND_i386_pc_TRUE@am__append_65 = usb.marker -@COND_i386_efi_TRUE@am__append_66 = usb.module -@COND_i386_efi_TRUE@am__append_67 = usb.module$(EXEEXT) -@COND_i386_efi_TRUE@am__append_68 = -@COND_i386_efi_TRUE@am__append_69 = $(nodist_usb_module_SOURCES) -@COND_i386_efi_TRUE@am__append_70 = $(nodist_usb_module_SOURCES) \ -@COND_i386_efi_TRUE@ usb.marker -@COND_i386_efi_TRUE@am__append_71 = usb.mod -@COND_i386_efi_TRUE@am__append_72 = usb.marker -@COND_i386_qemu_TRUE@am__append_73 = usb.module -@COND_i386_qemu_TRUE@am__append_74 = usb.module$(EXEEXT) -@COND_i386_qemu_TRUE@am__append_75 = -@COND_i386_qemu_TRUE@am__append_76 = $(nodist_usb_module_SOURCES) -@COND_i386_qemu_TRUE@am__append_77 = $(nodist_usb_module_SOURCES) \ -@COND_i386_qemu_TRUE@ usb.marker -@COND_i386_qemu_TRUE@am__append_78 = usb.mod -@COND_i386_qemu_TRUE@am__append_79 = usb.marker -@COND_i386_coreboot_TRUE@am__append_80 = usb.module -@COND_i386_coreboot_TRUE@am__append_81 = usb.module$(EXEEXT) -@COND_i386_coreboot_TRUE@am__append_82 = -@COND_i386_coreboot_TRUE@am__append_83 = $(nodist_usb_module_SOURCES) -@COND_i386_coreboot_TRUE@am__append_84 = $(nodist_usb_module_SOURCES) \ -@COND_i386_coreboot_TRUE@ usb.marker -@COND_i386_coreboot_TRUE@am__append_85 = usb.mod -@COND_i386_coreboot_TRUE@am__append_86 = usb.marker -@COND_i386_multiboot_TRUE@am__append_87 = usb.module -@COND_i386_multiboot_TRUE@am__append_88 = usb.module$(EXEEXT) -@COND_i386_multiboot_TRUE@am__append_89 = -@COND_i386_multiboot_TRUE@am__append_90 = $(nodist_usb_module_SOURCES) -@COND_i386_multiboot_TRUE@am__append_91 = \ -@COND_i386_multiboot_TRUE@ $(nodist_usb_module_SOURCES) \ -@COND_i386_multiboot_TRUE@ usb.marker -@COND_i386_multiboot_TRUE@am__append_92 = usb.mod -@COND_i386_multiboot_TRUE@am__append_93 = usb.marker -@COND_i386_ieee1275_TRUE@am__append_94 = usb.module -@COND_i386_ieee1275_TRUE@am__append_95 = usb.module$(EXEEXT) -@COND_i386_ieee1275_TRUE@am__append_96 = -@COND_i386_ieee1275_TRUE@am__append_97 = $(nodist_usb_module_SOURCES) -@COND_i386_ieee1275_TRUE@am__append_98 = $(nodist_usb_module_SOURCES) \ -@COND_i386_ieee1275_TRUE@ usb.marker -@COND_i386_ieee1275_TRUE@am__append_99 = usb.mod -@COND_i386_ieee1275_TRUE@am__append_100 = usb.marker -@COND_x86_64_efi_TRUE@am__append_101 = usb.module -@COND_x86_64_efi_TRUE@am__append_102 = usb.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__append_103 = -@COND_x86_64_efi_TRUE@am__append_104 = $(nodist_usb_module_SOURCES) -@COND_x86_64_efi_TRUE@am__append_105 = $(nodist_usb_module_SOURCES) \ -@COND_x86_64_efi_TRUE@ usb.marker -@COND_x86_64_efi_TRUE@am__append_106 = usb.mod -@COND_x86_64_efi_TRUE@am__append_107 = usb.marker -@COND_mips_loongson_TRUE@am__append_108 = usb.module -@COND_mips_loongson_TRUE@am__append_109 = usb.module$(EXEEXT) -@COND_mips_loongson_TRUE@am__append_110 = -@COND_mips_loongson_TRUE@am__append_111 = $(nodist_usb_module_SOURCES) -@COND_mips_loongson_TRUE@am__append_112 = \ -@COND_mips_loongson_TRUE@ $(nodist_usb_module_SOURCES) \ -@COND_mips_loongson_TRUE@ usb.marker -@COND_mips_loongson_TRUE@am__append_113 = usb.mod -@COND_mips_loongson_TRUE@am__append_114 = usb.marker -@COND_arm_coreboot_TRUE@am__append_115 = usb.module -@COND_arm_coreboot_TRUE@am__append_116 = usb.module$(EXEEXT) -@COND_arm_coreboot_TRUE@am__append_117 = -@COND_arm_coreboot_TRUE@am__append_118 = $(nodist_usb_module_SOURCES) -@COND_arm_coreboot_TRUE@am__append_119 = $(nodist_usb_module_SOURCES) \ -@COND_arm_coreboot_TRUE@ usb.marker -@COND_arm_coreboot_TRUE@am__append_120 = usb.mod -@COND_arm_coreboot_TRUE@am__append_121 = usb.marker -@COND_i386_pc_TRUE@am__append_122 = usbserial_common.module -@COND_i386_pc_TRUE@am__append_123 = usbserial_common.module$(EXEEXT) -@COND_arm_coreboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_mips_loongson_FALSE@@COND_x86_64_efi_FALSE@usbserial_common_module_DEPENDENCIES = -@COND_i386_pc_TRUE@am__append_124 = -@COND_i386_pc_TRUE@am__append_125 = $(nodist_usbserial_common_module_SOURCES) -@COND_i386_pc_TRUE@am__append_126 = \ -@COND_i386_pc_TRUE@ $(nodist_usbserial_common_module_SOURCES) \ -@COND_i386_pc_TRUE@ usbserial_common.marker -@COND_i386_pc_TRUE@am__append_127 = usbserial_common.mod -@COND_i386_pc_TRUE@am__append_128 = usbserial_common.marker -@COND_i386_efi_TRUE@am__append_129 = usbserial_common.module -@COND_i386_efi_TRUE@am__append_130 = usbserial_common.module$(EXEEXT) -@COND_i386_efi_TRUE@am__append_131 = -@COND_i386_efi_TRUE@am__append_132 = $(nodist_usbserial_common_module_SOURCES) -@COND_i386_efi_TRUE@am__append_133 = \ -@COND_i386_efi_TRUE@ $(nodist_usbserial_common_module_SOURCES) \ -@COND_i386_efi_TRUE@ usbserial_common.marker -@COND_i386_efi_TRUE@am__append_134 = usbserial_common.mod -@COND_i386_efi_TRUE@am__append_135 = usbserial_common.marker -@COND_i386_qemu_TRUE@am__append_136 = usbserial_common.module -@COND_i386_qemu_TRUE@am__append_137 = usbserial_common.module$(EXEEXT) -@COND_i386_qemu_TRUE@am__append_138 = -@COND_i386_qemu_TRUE@am__append_139 = $(nodist_usbserial_common_module_SOURCES) -@COND_i386_qemu_TRUE@am__append_140 = $(nodist_usbserial_common_module_SOURCES) \ -@COND_i386_qemu_TRUE@ usbserial_common.marker -@COND_i386_qemu_TRUE@am__append_141 = usbserial_common.mod -@COND_i386_qemu_TRUE@am__append_142 = usbserial_common.marker -@COND_i386_coreboot_TRUE@am__append_143 = usbserial_common.module -@COND_i386_coreboot_TRUE@am__append_144 = usbserial_common.module$(EXEEXT) -@COND_i386_coreboot_TRUE@am__append_145 = -@COND_i386_coreboot_TRUE@am__append_146 = $(nodist_usbserial_common_module_SOURCES) -@COND_i386_coreboot_TRUE@am__append_147 = $(nodist_usbserial_common_module_SOURCES) \ -@COND_i386_coreboot_TRUE@ usbserial_common.marker -@COND_i386_coreboot_TRUE@am__append_148 = usbserial_common.mod -@COND_i386_coreboot_TRUE@am__append_149 = usbserial_common.marker -@COND_i386_multiboot_TRUE@am__append_150 = usbserial_common.module -@COND_i386_multiboot_TRUE@am__append_151 = usbserial_common.module$(EXEEXT) -@COND_i386_multiboot_TRUE@am__append_152 = -@COND_i386_multiboot_TRUE@am__append_153 = $(nodist_usbserial_common_module_SOURCES) -@COND_i386_multiboot_TRUE@am__append_154 = $(nodist_usbserial_common_module_SOURCES) \ -@COND_i386_multiboot_TRUE@ usbserial_common.marker -@COND_i386_multiboot_TRUE@am__append_155 = usbserial_common.mod -@COND_i386_multiboot_TRUE@am__append_156 = usbserial_common.marker -@COND_i386_ieee1275_TRUE@am__append_157 = usbserial_common.module -@COND_i386_ieee1275_TRUE@am__append_158 = usbserial_common.module$(EXEEXT) -@COND_i386_ieee1275_TRUE@am__append_159 = -@COND_i386_ieee1275_TRUE@am__append_160 = $(nodist_usbserial_common_module_SOURCES) -@COND_i386_ieee1275_TRUE@am__append_161 = $(nodist_usbserial_common_module_SOURCES) \ -@COND_i386_ieee1275_TRUE@ usbserial_common.marker -@COND_i386_ieee1275_TRUE@am__append_162 = usbserial_common.mod -@COND_i386_ieee1275_TRUE@am__append_163 = usbserial_common.marker -@COND_x86_64_efi_TRUE@am__append_164 = usbserial_common.module -@COND_x86_64_efi_TRUE@am__append_165 = usbserial_common.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__append_166 = -@COND_x86_64_efi_TRUE@am__append_167 = $(nodist_usbserial_common_module_SOURCES) -@COND_x86_64_efi_TRUE@am__append_168 = $(nodist_usbserial_common_module_SOURCES) \ -@COND_x86_64_efi_TRUE@ usbserial_common.marker -@COND_x86_64_efi_TRUE@am__append_169 = usbserial_common.mod -@COND_x86_64_efi_TRUE@am__append_170 = usbserial_common.marker -@COND_mips_loongson_TRUE@am__append_171 = usbserial_common.module -@COND_mips_loongson_TRUE@am__append_172 = usbserial_common.module$(EXEEXT) -@COND_mips_loongson_TRUE@am__append_173 = -@COND_mips_loongson_TRUE@am__append_174 = $(nodist_usbserial_common_module_SOURCES) -@COND_mips_loongson_TRUE@am__append_175 = $(nodist_usbserial_common_module_SOURCES) \ -@COND_mips_loongson_TRUE@ usbserial_common.marker -@COND_mips_loongson_TRUE@am__append_176 = usbserial_common.mod -@COND_mips_loongson_TRUE@am__append_177 = usbserial_common.marker -@COND_arm_coreboot_TRUE@am__append_178 = usbserial_common.module -@COND_arm_coreboot_TRUE@am__append_179 = usbserial_common.module$(EXEEXT) -@COND_arm_coreboot_TRUE@am__append_180 = -@COND_arm_coreboot_TRUE@am__append_181 = $(nodist_usbserial_common_module_SOURCES) -@COND_arm_coreboot_TRUE@am__append_182 = $(nodist_usbserial_common_module_SOURCES) \ -@COND_arm_coreboot_TRUE@ usbserial_common.marker -@COND_arm_coreboot_TRUE@am__append_183 = usbserial_common.mod -@COND_arm_coreboot_TRUE@am__append_184 = usbserial_common.marker -@COND_i386_pc_TRUE@am__append_185 = usbserial_pl2303.module -@COND_i386_pc_TRUE@am__append_186 = usbserial_pl2303.module$(EXEEXT) -@COND_arm_coreboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_mips_loongson_FALSE@@COND_x86_64_efi_FALSE@usbserial_pl2303_module_DEPENDENCIES = -@COND_i386_pc_TRUE@am__append_187 = -@COND_i386_pc_TRUE@am__append_188 = $(nodist_usbserial_pl2303_module_SOURCES) -@COND_i386_pc_TRUE@am__append_189 = \ -@COND_i386_pc_TRUE@ $(nodist_usbserial_pl2303_module_SOURCES) \ -@COND_i386_pc_TRUE@ usbserial_pl2303.marker -@COND_i386_pc_TRUE@am__append_190 = usbserial_pl2303.mod -@COND_i386_pc_TRUE@am__append_191 = usbserial_pl2303.marker -@COND_i386_efi_TRUE@am__append_192 = usbserial_pl2303.module -@COND_i386_efi_TRUE@am__append_193 = usbserial_pl2303.module$(EXEEXT) -@COND_i386_efi_TRUE@am__append_194 = -@COND_i386_efi_TRUE@am__append_195 = $(nodist_usbserial_pl2303_module_SOURCES) -@COND_i386_efi_TRUE@am__append_196 = \ -@COND_i386_efi_TRUE@ $(nodist_usbserial_pl2303_module_SOURCES) \ -@COND_i386_efi_TRUE@ usbserial_pl2303.marker -@COND_i386_efi_TRUE@am__append_197 = usbserial_pl2303.mod -@COND_i386_efi_TRUE@am__append_198 = usbserial_pl2303.marker -@COND_i386_qemu_TRUE@am__append_199 = usbserial_pl2303.module -@COND_i386_qemu_TRUE@am__append_200 = usbserial_pl2303.module$(EXEEXT) -@COND_i386_qemu_TRUE@am__append_201 = -@COND_i386_qemu_TRUE@am__append_202 = $(nodist_usbserial_pl2303_module_SOURCES) -@COND_i386_qemu_TRUE@am__append_203 = $(nodist_usbserial_pl2303_module_SOURCES) \ -@COND_i386_qemu_TRUE@ usbserial_pl2303.marker -@COND_i386_qemu_TRUE@am__append_204 = usbserial_pl2303.mod -@COND_i386_qemu_TRUE@am__append_205 = usbserial_pl2303.marker -@COND_i386_coreboot_TRUE@am__append_206 = usbserial_pl2303.module -@COND_i386_coreboot_TRUE@am__append_207 = usbserial_pl2303.module$(EXEEXT) -@COND_i386_coreboot_TRUE@am__append_208 = -@COND_i386_coreboot_TRUE@am__append_209 = $(nodist_usbserial_pl2303_module_SOURCES) -@COND_i386_coreboot_TRUE@am__append_210 = $(nodist_usbserial_pl2303_module_SOURCES) \ -@COND_i386_coreboot_TRUE@ usbserial_pl2303.marker -@COND_i386_coreboot_TRUE@am__append_211 = usbserial_pl2303.mod -@COND_i386_coreboot_TRUE@am__append_212 = usbserial_pl2303.marker -@COND_i386_multiboot_TRUE@am__append_213 = usbserial_pl2303.module -@COND_i386_multiboot_TRUE@am__append_214 = usbserial_pl2303.module$(EXEEXT) -@COND_i386_multiboot_TRUE@am__append_215 = -@COND_i386_multiboot_TRUE@am__append_216 = $(nodist_usbserial_pl2303_module_SOURCES) -@COND_i386_multiboot_TRUE@am__append_217 = $(nodist_usbserial_pl2303_module_SOURCES) \ -@COND_i386_multiboot_TRUE@ usbserial_pl2303.marker -@COND_i386_multiboot_TRUE@am__append_218 = usbserial_pl2303.mod -@COND_i386_multiboot_TRUE@am__append_219 = usbserial_pl2303.marker -@COND_i386_ieee1275_TRUE@am__append_220 = usbserial_pl2303.module -@COND_i386_ieee1275_TRUE@am__append_221 = usbserial_pl2303.module$(EXEEXT) -@COND_i386_ieee1275_TRUE@am__append_222 = -@COND_i386_ieee1275_TRUE@am__append_223 = $(nodist_usbserial_pl2303_module_SOURCES) -@COND_i386_ieee1275_TRUE@am__append_224 = $(nodist_usbserial_pl2303_module_SOURCES) \ -@COND_i386_ieee1275_TRUE@ usbserial_pl2303.marker -@COND_i386_ieee1275_TRUE@am__append_225 = usbserial_pl2303.mod -@COND_i386_ieee1275_TRUE@am__append_226 = usbserial_pl2303.marker -@COND_x86_64_efi_TRUE@am__append_227 = usbserial_pl2303.module -@COND_x86_64_efi_TRUE@am__append_228 = usbserial_pl2303.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__append_229 = -@COND_x86_64_efi_TRUE@am__append_230 = $(nodist_usbserial_pl2303_module_SOURCES) -@COND_x86_64_efi_TRUE@am__append_231 = $(nodist_usbserial_pl2303_module_SOURCES) \ -@COND_x86_64_efi_TRUE@ usbserial_pl2303.marker -@COND_x86_64_efi_TRUE@am__append_232 = usbserial_pl2303.mod -@COND_x86_64_efi_TRUE@am__append_233 = usbserial_pl2303.marker -@COND_mips_loongson_TRUE@am__append_234 = usbserial_pl2303.module -@COND_mips_loongson_TRUE@am__append_235 = usbserial_pl2303.module$(EXEEXT) -@COND_mips_loongson_TRUE@am__append_236 = -@COND_mips_loongson_TRUE@am__append_237 = $(nodist_usbserial_pl2303_module_SOURCES) -@COND_mips_loongson_TRUE@am__append_238 = $(nodist_usbserial_pl2303_module_SOURCES) \ -@COND_mips_loongson_TRUE@ usbserial_pl2303.marker -@COND_mips_loongson_TRUE@am__append_239 = usbserial_pl2303.mod -@COND_mips_loongson_TRUE@am__append_240 = usbserial_pl2303.marker -@COND_arm_coreboot_TRUE@am__append_241 = usbserial_pl2303.module -@COND_arm_coreboot_TRUE@am__append_242 = usbserial_pl2303.module$(EXEEXT) -@COND_arm_coreboot_TRUE@am__append_243 = -@COND_arm_coreboot_TRUE@am__append_244 = $(nodist_usbserial_pl2303_module_SOURCES) -@COND_arm_coreboot_TRUE@am__append_245 = $(nodist_usbserial_pl2303_module_SOURCES) \ -@COND_arm_coreboot_TRUE@ usbserial_pl2303.marker -@COND_arm_coreboot_TRUE@am__append_246 = usbserial_pl2303.mod -@COND_arm_coreboot_TRUE@am__append_247 = usbserial_pl2303.marker -@COND_i386_pc_TRUE@am__append_248 = usbserial_ftdi.module -@COND_i386_pc_TRUE@am__append_249 = usbserial_ftdi.module$(EXEEXT) -@COND_arm_coreboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_mips_loongson_FALSE@@COND_x86_64_efi_FALSE@usbserial_ftdi_module_DEPENDENCIES = -@COND_i386_pc_TRUE@am__append_250 = -@COND_i386_pc_TRUE@am__append_251 = $(nodist_usbserial_ftdi_module_SOURCES) -@COND_i386_pc_TRUE@am__append_252 = \ -@COND_i386_pc_TRUE@ $(nodist_usbserial_ftdi_module_SOURCES) \ -@COND_i386_pc_TRUE@ usbserial_ftdi.marker -@COND_i386_pc_TRUE@am__append_253 = usbserial_ftdi.mod -@COND_i386_pc_TRUE@am__append_254 = usbserial_ftdi.marker -@COND_i386_efi_TRUE@am__append_255 = usbserial_ftdi.module -@COND_i386_efi_TRUE@am__append_256 = usbserial_ftdi.module$(EXEEXT) -@COND_i386_efi_TRUE@am__append_257 = -@COND_i386_efi_TRUE@am__append_258 = $(nodist_usbserial_ftdi_module_SOURCES) -@COND_i386_efi_TRUE@am__append_259 = \ -@COND_i386_efi_TRUE@ $(nodist_usbserial_ftdi_module_SOURCES) \ -@COND_i386_efi_TRUE@ usbserial_ftdi.marker -@COND_i386_efi_TRUE@am__append_260 = usbserial_ftdi.mod -@COND_i386_efi_TRUE@am__append_261 = usbserial_ftdi.marker -@COND_i386_qemu_TRUE@am__append_262 = usbserial_ftdi.module -@COND_i386_qemu_TRUE@am__append_263 = usbserial_ftdi.module$(EXEEXT) -@COND_i386_qemu_TRUE@am__append_264 = -@COND_i386_qemu_TRUE@am__append_265 = $(nodist_usbserial_ftdi_module_SOURCES) -@COND_i386_qemu_TRUE@am__append_266 = \ -@COND_i386_qemu_TRUE@ $(nodist_usbserial_ftdi_module_SOURCES) \ -@COND_i386_qemu_TRUE@ usbserial_ftdi.marker -@COND_i386_qemu_TRUE@am__append_267 = usbserial_ftdi.mod -@COND_i386_qemu_TRUE@am__append_268 = usbserial_ftdi.marker -@COND_i386_coreboot_TRUE@am__append_269 = usbserial_ftdi.module -@COND_i386_coreboot_TRUE@am__append_270 = usbserial_ftdi.module$(EXEEXT) -@COND_i386_coreboot_TRUE@am__append_271 = -@COND_i386_coreboot_TRUE@am__append_272 = $(nodist_usbserial_ftdi_module_SOURCES) -@COND_i386_coreboot_TRUE@am__append_273 = $(nodist_usbserial_ftdi_module_SOURCES) \ -@COND_i386_coreboot_TRUE@ usbserial_ftdi.marker -@COND_i386_coreboot_TRUE@am__append_274 = usbserial_ftdi.mod -@COND_i386_coreboot_TRUE@am__append_275 = usbserial_ftdi.marker -@COND_i386_multiboot_TRUE@am__append_276 = usbserial_ftdi.module -@COND_i386_multiboot_TRUE@am__append_277 = usbserial_ftdi.module$(EXEEXT) -@COND_i386_multiboot_TRUE@am__append_278 = -@COND_i386_multiboot_TRUE@am__append_279 = $(nodist_usbserial_ftdi_module_SOURCES) -@COND_i386_multiboot_TRUE@am__append_280 = $(nodist_usbserial_ftdi_module_SOURCES) \ -@COND_i386_multiboot_TRUE@ usbserial_ftdi.marker -@COND_i386_multiboot_TRUE@am__append_281 = usbserial_ftdi.mod -@COND_i386_multiboot_TRUE@am__append_282 = usbserial_ftdi.marker -@COND_i386_ieee1275_TRUE@am__append_283 = usbserial_ftdi.module -@COND_i386_ieee1275_TRUE@am__append_284 = usbserial_ftdi.module$(EXEEXT) -@COND_i386_ieee1275_TRUE@am__append_285 = -@COND_i386_ieee1275_TRUE@am__append_286 = $(nodist_usbserial_ftdi_module_SOURCES) -@COND_i386_ieee1275_TRUE@am__append_287 = $(nodist_usbserial_ftdi_module_SOURCES) \ -@COND_i386_ieee1275_TRUE@ usbserial_ftdi.marker -@COND_i386_ieee1275_TRUE@am__append_288 = usbserial_ftdi.mod -@COND_i386_ieee1275_TRUE@am__append_289 = usbserial_ftdi.marker -@COND_x86_64_efi_TRUE@am__append_290 = usbserial_ftdi.module -@COND_x86_64_efi_TRUE@am__append_291 = usbserial_ftdi.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__append_292 = -@COND_x86_64_efi_TRUE@am__append_293 = $(nodist_usbserial_ftdi_module_SOURCES) -@COND_x86_64_efi_TRUE@am__append_294 = \ -@COND_x86_64_efi_TRUE@ $(nodist_usbserial_ftdi_module_SOURCES) \ -@COND_x86_64_efi_TRUE@ usbserial_ftdi.marker -@COND_x86_64_efi_TRUE@am__append_295 = usbserial_ftdi.mod -@COND_x86_64_efi_TRUE@am__append_296 = usbserial_ftdi.marker -@COND_mips_loongson_TRUE@am__append_297 = usbserial_ftdi.module -@COND_mips_loongson_TRUE@am__append_298 = usbserial_ftdi.module$(EXEEXT) -@COND_mips_loongson_TRUE@am__append_299 = -@COND_mips_loongson_TRUE@am__append_300 = $(nodist_usbserial_ftdi_module_SOURCES) -@COND_mips_loongson_TRUE@am__append_301 = $(nodist_usbserial_ftdi_module_SOURCES) \ -@COND_mips_loongson_TRUE@ usbserial_ftdi.marker -@COND_mips_loongson_TRUE@am__append_302 = usbserial_ftdi.mod -@COND_mips_loongson_TRUE@am__append_303 = usbserial_ftdi.marker -@COND_arm_coreboot_TRUE@am__append_304 = usbserial_ftdi.module -@COND_arm_coreboot_TRUE@am__append_305 = usbserial_ftdi.module$(EXEEXT) -@COND_arm_coreboot_TRUE@am__append_306 = -@COND_arm_coreboot_TRUE@am__append_307 = $(nodist_usbserial_ftdi_module_SOURCES) -@COND_arm_coreboot_TRUE@am__append_308 = $(nodist_usbserial_ftdi_module_SOURCES) \ -@COND_arm_coreboot_TRUE@ usbserial_ftdi.marker -@COND_arm_coreboot_TRUE@am__append_309 = usbserial_ftdi.mod -@COND_arm_coreboot_TRUE@am__append_310 = usbserial_ftdi.marker -@COND_i386_pc_TRUE@am__append_311 = usbserial_usbdebug.module -@COND_i386_pc_TRUE@am__append_312 = usbserial_usbdebug.module$(EXEEXT) -@COND_arm_coreboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_mips_loongson_FALSE@@COND_x86_64_efi_FALSE@usbserial_usbdebug_module_DEPENDENCIES = -@COND_i386_pc_TRUE@am__append_313 = -@COND_i386_pc_TRUE@am__append_314 = $(nodist_usbserial_usbdebug_module_SOURCES) -@COND_i386_pc_TRUE@am__append_315 = $(nodist_usbserial_usbdebug_module_SOURCES) \ -@COND_i386_pc_TRUE@ usbserial_usbdebug.marker -@COND_i386_pc_TRUE@am__append_316 = usbserial_usbdebug.mod -@COND_i386_pc_TRUE@am__append_317 = usbserial_usbdebug.marker -@COND_i386_efi_TRUE@am__append_318 = usbserial_usbdebug.module -@COND_i386_efi_TRUE@am__append_319 = usbserial_usbdebug.module$(EXEEXT) -@COND_i386_efi_TRUE@am__append_320 = -@COND_i386_efi_TRUE@am__append_321 = $(nodist_usbserial_usbdebug_module_SOURCES) -@COND_i386_efi_TRUE@am__append_322 = $(nodist_usbserial_usbdebug_module_SOURCES) \ -@COND_i386_efi_TRUE@ usbserial_usbdebug.marker -@COND_i386_efi_TRUE@am__append_323 = usbserial_usbdebug.mod -@COND_i386_efi_TRUE@am__append_324 = usbserial_usbdebug.marker -@COND_i386_qemu_TRUE@am__append_325 = usbserial_usbdebug.module -@COND_i386_qemu_TRUE@am__append_326 = usbserial_usbdebug.module$(EXEEXT) -@COND_i386_qemu_TRUE@am__append_327 = -@COND_i386_qemu_TRUE@am__append_328 = $(nodist_usbserial_usbdebug_module_SOURCES) -@COND_i386_qemu_TRUE@am__append_329 = $(nodist_usbserial_usbdebug_module_SOURCES) \ -@COND_i386_qemu_TRUE@ usbserial_usbdebug.marker -@COND_i386_qemu_TRUE@am__append_330 = usbserial_usbdebug.mod -@COND_i386_qemu_TRUE@am__append_331 = usbserial_usbdebug.marker -@COND_i386_coreboot_TRUE@am__append_332 = usbserial_usbdebug.module -@COND_i386_coreboot_TRUE@am__append_333 = usbserial_usbdebug.module$(EXEEXT) -@COND_i386_coreboot_TRUE@am__append_334 = -@COND_i386_coreboot_TRUE@am__append_335 = $(nodist_usbserial_usbdebug_module_SOURCES) -@COND_i386_coreboot_TRUE@am__append_336 = $(nodist_usbserial_usbdebug_module_SOURCES) \ -@COND_i386_coreboot_TRUE@ usbserial_usbdebug.marker -@COND_i386_coreboot_TRUE@am__append_337 = usbserial_usbdebug.mod -@COND_i386_coreboot_TRUE@am__append_338 = usbserial_usbdebug.marker -@COND_i386_multiboot_TRUE@am__append_339 = usbserial_usbdebug.module -@COND_i386_multiboot_TRUE@am__append_340 = usbserial_usbdebug.module$(EXEEXT) -@COND_i386_multiboot_TRUE@am__append_341 = -@COND_i386_multiboot_TRUE@am__append_342 = $(nodist_usbserial_usbdebug_module_SOURCES) -@COND_i386_multiboot_TRUE@am__append_343 = $(nodist_usbserial_usbdebug_module_SOURCES) \ -@COND_i386_multiboot_TRUE@ usbserial_usbdebug.marker -@COND_i386_multiboot_TRUE@am__append_344 = usbserial_usbdebug.mod -@COND_i386_multiboot_TRUE@am__append_345 = usbserial_usbdebug.marker -@COND_i386_ieee1275_TRUE@am__append_346 = usbserial_usbdebug.module -@COND_i386_ieee1275_TRUE@am__append_347 = usbserial_usbdebug.module$(EXEEXT) -@COND_i386_ieee1275_TRUE@am__append_348 = -@COND_i386_ieee1275_TRUE@am__append_349 = $(nodist_usbserial_usbdebug_module_SOURCES) -@COND_i386_ieee1275_TRUE@am__append_350 = $(nodist_usbserial_usbdebug_module_SOURCES) \ -@COND_i386_ieee1275_TRUE@ usbserial_usbdebug.marker -@COND_i386_ieee1275_TRUE@am__append_351 = usbserial_usbdebug.mod -@COND_i386_ieee1275_TRUE@am__append_352 = usbserial_usbdebug.marker -@COND_x86_64_efi_TRUE@am__append_353 = usbserial_usbdebug.module -@COND_x86_64_efi_TRUE@am__append_354 = usbserial_usbdebug.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__append_355 = -@COND_x86_64_efi_TRUE@am__append_356 = $(nodist_usbserial_usbdebug_module_SOURCES) -@COND_x86_64_efi_TRUE@am__append_357 = $(nodist_usbserial_usbdebug_module_SOURCES) \ -@COND_x86_64_efi_TRUE@ usbserial_usbdebug.marker -@COND_x86_64_efi_TRUE@am__append_358 = usbserial_usbdebug.mod -@COND_x86_64_efi_TRUE@am__append_359 = usbserial_usbdebug.marker -@COND_mips_loongson_TRUE@am__append_360 = usbserial_usbdebug.module -@COND_mips_loongson_TRUE@am__append_361 = usbserial_usbdebug.module$(EXEEXT) -@COND_mips_loongson_TRUE@am__append_362 = -@COND_mips_loongson_TRUE@am__append_363 = $(nodist_usbserial_usbdebug_module_SOURCES) -@COND_mips_loongson_TRUE@am__append_364 = $(nodist_usbserial_usbdebug_module_SOURCES) \ -@COND_mips_loongson_TRUE@ usbserial_usbdebug.marker -@COND_mips_loongson_TRUE@am__append_365 = usbserial_usbdebug.mod -@COND_mips_loongson_TRUE@am__append_366 = usbserial_usbdebug.marker -@COND_arm_coreboot_TRUE@am__append_367 = usbserial_usbdebug.module -@COND_arm_coreboot_TRUE@am__append_368 = usbserial_usbdebug.module$(EXEEXT) -@COND_arm_coreboot_TRUE@am__append_369 = -@COND_arm_coreboot_TRUE@am__append_370 = $(nodist_usbserial_usbdebug_module_SOURCES) -@COND_arm_coreboot_TRUE@am__append_371 = $(nodist_usbserial_usbdebug_module_SOURCES) \ -@COND_arm_coreboot_TRUE@ usbserial_usbdebug.marker -@COND_arm_coreboot_TRUE@am__append_372 = usbserial_usbdebug.mod -@COND_arm_coreboot_TRUE@am__append_373 = usbserial_usbdebug.marker -@COND_i386_pc_TRUE@am__append_374 = uhci.module -@COND_i386_pc_TRUE@am__append_375 = uhci.module$(EXEEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_mips_loongson_FALSE@@COND_x86_64_efi_FALSE@uhci_module_DEPENDENCIES = -@COND_i386_pc_TRUE@am__append_376 = -@COND_i386_pc_TRUE@am__append_377 = $(nodist_uhci_module_SOURCES) -@COND_i386_pc_TRUE@am__append_378 = $(nodist_uhci_module_SOURCES) \ -@COND_i386_pc_TRUE@ uhci.marker -@COND_i386_pc_TRUE@am__append_379 = uhci.mod -@COND_i386_pc_TRUE@am__append_380 = uhci.marker -@COND_i386_efi_TRUE@am__append_381 = uhci.module -@COND_i386_efi_TRUE@am__append_382 = uhci.module$(EXEEXT) -@COND_i386_efi_TRUE@am__append_383 = -@COND_i386_efi_TRUE@am__append_384 = $(nodist_uhci_module_SOURCES) -@COND_i386_efi_TRUE@am__append_385 = $(nodist_uhci_module_SOURCES) \ -@COND_i386_efi_TRUE@ uhci.marker -@COND_i386_efi_TRUE@am__append_386 = uhci.mod -@COND_i386_efi_TRUE@am__append_387 = uhci.marker -@COND_i386_qemu_TRUE@am__append_388 = uhci.module -@COND_i386_qemu_TRUE@am__append_389 = uhci.module$(EXEEXT) -@COND_i386_qemu_TRUE@am__append_390 = -@COND_i386_qemu_TRUE@am__append_391 = $(nodist_uhci_module_SOURCES) -@COND_i386_qemu_TRUE@am__append_392 = $(nodist_uhci_module_SOURCES) \ -@COND_i386_qemu_TRUE@ uhci.marker -@COND_i386_qemu_TRUE@am__append_393 = uhci.mod -@COND_i386_qemu_TRUE@am__append_394 = uhci.marker -@COND_i386_coreboot_TRUE@am__append_395 = uhci.module -@COND_i386_coreboot_TRUE@am__append_396 = uhci.module$(EXEEXT) -@COND_i386_coreboot_TRUE@am__append_397 = -@COND_i386_coreboot_TRUE@am__append_398 = $(nodist_uhci_module_SOURCES) -@COND_i386_coreboot_TRUE@am__append_399 = \ -@COND_i386_coreboot_TRUE@ $(nodist_uhci_module_SOURCES) \ -@COND_i386_coreboot_TRUE@ uhci.marker -@COND_i386_coreboot_TRUE@am__append_400 = uhci.mod -@COND_i386_coreboot_TRUE@am__append_401 = uhci.marker -@COND_i386_multiboot_TRUE@am__append_402 = uhci.module -@COND_i386_multiboot_TRUE@am__append_403 = uhci.module$(EXEEXT) -@COND_i386_multiboot_TRUE@am__append_404 = -@COND_i386_multiboot_TRUE@am__append_405 = $(nodist_uhci_module_SOURCES) -@COND_i386_multiboot_TRUE@am__append_406 = \ -@COND_i386_multiboot_TRUE@ $(nodist_uhci_module_SOURCES) \ -@COND_i386_multiboot_TRUE@ uhci.marker -@COND_i386_multiboot_TRUE@am__append_407 = uhci.mod -@COND_i386_multiboot_TRUE@am__append_408 = uhci.marker -@COND_i386_ieee1275_TRUE@am__append_409 = uhci.module -@COND_i386_ieee1275_TRUE@am__append_410 = uhci.module$(EXEEXT) -@COND_i386_ieee1275_TRUE@am__append_411 = -@COND_i386_ieee1275_TRUE@am__append_412 = $(nodist_uhci_module_SOURCES) -@COND_i386_ieee1275_TRUE@am__append_413 = \ -@COND_i386_ieee1275_TRUE@ $(nodist_uhci_module_SOURCES) \ -@COND_i386_ieee1275_TRUE@ uhci.marker -@COND_i386_ieee1275_TRUE@am__append_414 = uhci.mod -@COND_i386_ieee1275_TRUE@am__append_415 = uhci.marker -@COND_x86_64_efi_TRUE@am__append_416 = uhci.module -@COND_x86_64_efi_TRUE@am__append_417 = uhci.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__append_418 = -@COND_x86_64_efi_TRUE@am__append_419 = $(nodist_uhci_module_SOURCES) -@COND_x86_64_efi_TRUE@am__append_420 = $(nodist_uhci_module_SOURCES) \ -@COND_x86_64_efi_TRUE@ uhci.marker -@COND_x86_64_efi_TRUE@am__append_421 = uhci.mod -@COND_x86_64_efi_TRUE@am__append_422 = uhci.marker -@COND_mips_loongson_TRUE@am__append_423 = uhci.module -@COND_mips_loongson_TRUE@am__append_424 = uhci.module$(EXEEXT) -@COND_mips_loongson_TRUE@am__append_425 = -@COND_mips_loongson_TRUE@am__append_426 = $(nodist_uhci_module_SOURCES) -@COND_mips_loongson_TRUE@am__append_427 = \ -@COND_mips_loongson_TRUE@ $(nodist_uhci_module_SOURCES) \ -@COND_mips_loongson_TRUE@ uhci.marker -@COND_mips_loongson_TRUE@am__append_428 = uhci.mod -@COND_mips_loongson_TRUE@am__append_429 = uhci.marker -@COND_i386_pc_TRUE@am__append_430 = ohci.module -@COND_i386_pc_TRUE@am__append_431 = ohci.module$(EXEEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_mips_loongson_FALSE@@COND_x86_64_efi_FALSE@ohci_module_DEPENDENCIES = -@COND_i386_pc_TRUE@am__append_432 = -@COND_i386_pc_TRUE@am__append_433 = $(nodist_ohci_module_SOURCES) -@COND_i386_pc_TRUE@am__append_434 = $(nodist_ohci_module_SOURCES) \ -@COND_i386_pc_TRUE@ ohci.marker -@COND_i386_pc_TRUE@am__append_435 = ohci.mod -@COND_i386_pc_TRUE@am__append_436 = ohci.marker -@COND_i386_efi_TRUE@am__append_437 = ohci.module -@COND_i386_efi_TRUE@am__append_438 = ohci.module$(EXEEXT) -@COND_i386_efi_TRUE@am__append_439 = -@COND_i386_efi_TRUE@am__append_440 = $(nodist_ohci_module_SOURCES) -@COND_i386_efi_TRUE@am__append_441 = $(nodist_ohci_module_SOURCES) \ -@COND_i386_efi_TRUE@ ohci.marker -@COND_i386_efi_TRUE@am__append_442 = ohci.mod -@COND_i386_efi_TRUE@am__append_443 = ohci.marker -@COND_i386_qemu_TRUE@am__append_444 = ohci.module -@COND_i386_qemu_TRUE@am__append_445 = ohci.module$(EXEEXT) -@COND_i386_qemu_TRUE@am__append_446 = -@COND_i386_qemu_TRUE@am__append_447 = $(nodist_ohci_module_SOURCES) -@COND_i386_qemu_TRUE@am__append_448 = $(nodist_ohci_module_SOURCES) \ -@COND_i386_qemu_TRUE@ ohci.marker -@COND_i386_qemu_TRUE@am__append_449 = ohci.mod -@COND_i386_qemu_TRUE@am__append_450 = ohci.marker -@COND_i386_coreboot_TRUE@am__append_451 = ohci.module -@COND_i386_coreboot_TRUE@am__append_452 = ohci.module$(EXEEXT) -@COND_i386_coreboot_TRUE@am__append_453 = -@COND_i386_coreboot_TRUE@am__append_454 = $(nodist_ohci_module_SOURCES) -@COND_i386_coreboot_TRUE@am__append_455 = \ -@COND_i386_coreboot_TRUE@ $(nodist_ohci_module_SOURCES) \ -@COND_i386_coreboot_TRUE@ ohci.marker -@COND_i386_coreboot_TRUE@am__append_456 = ohci.mod -@COND_i386_coreboot_TRUE@am__append_457 = ohci.marker -@COND_i386_multiboot_TRUE@am__append_458 = ohci.module -@COND_i386_multiboot_TRUE@am__append_459 = ohci.module$(EXEEXT) -@COND_i386_multiboot_TRUE@am__append_460 = -@COND_i386_multiboot_TRUE@am__append_461 = $(nodist_ohci_module_SOURCES) -@COND_i386_multiboot_TRUE@am__append_462 = \ -@COND_i386_multiboot_TRUE@ $(nodist_ohci_module_SOURCES) \ -@COND_i386_multiboot_TRUE@ ohci.marker -@COND_i386_multiboot_TRUE@am__append_463 = ohci.mod -@COND_i386_multiboot_TRUE@am__append_464 = ohci.marker -@COND_i386_ieee1275_TRUE@am__append_465 = ohci.module -@COND_i386_ieee1275_TRUE@am__append_466 = ohci.module$(EXEEXT) -@COND_i386_ieee1275_TRUE@am__append_467 = -@COND_i386_ieee1275_TRUE@am__append_468 = $(nodist_ohci_module_SOURCES) -@COND_i386_ieee1275_TRUE@am__append_469 = \ -@COND_i386_ieee1275_TRUE@ $(nodist_ohci_module_SOURCES) \ -@COND_i386_ieee1275_TRUE@ ohci.marker -@COND_i386_ieee1275_TRUE@am__append_470 = ohci.mod -@COND_i386_ieee1275_TRUE@am__append_471 = ohci.marker -@COND_x86_64_efi_TRUE@am__append_472 = ohci.module -@COND_x86_64_efi_TRUE@am__append_473 = ohci.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__append_474 = -@COND_x86_64_efi_TRUE@am__append_475 = $(nodist_ohci_module_SOURCES) -@COND_x86_64_efi_TRUE@am__append_476 = $(nodist_ohci_module_SOURCES) \ -@COND_x86_64_efi_TRUE@ ohci.marker -@COND_x86_64_efi_TRUE@am__append_477 = ohci.mod -@COND_x86_64_efi_TRUE@am__append_478 = ohci.marker -@COND_mips_loongson_TRUE@am__append_479 = ohci.module -@COND_mips_loongson_TRUE@am__append_480 = ohci.module$(EXEEXT) -@COND_mips_loongson_TRUE@am__append_481 = -@COND_mips_loongson_TRUE@am__append_482 = $(nodist_ohci_module_SOURCES) -@COND_mips_loongson_TRUE@am__append_483 = \ -@COND_mips_loongson_TRUE@ $(nodist_ohci_module_SOURCES) \ -@COND_mips_loongson_TRUE@ ohci.marker -@COND_mips_loongson_TRUE@am__append_484 = ohci.mod -@COND_mips_loongson_TRUE@am__append_485 = ohci.marker -@COND_i386_pc_TRUE@am__append_486 = ehci.module -@COND_i386_pc_TRUE@am__append_487 = ehci.module$(EXEEXT) -@COND_arm_coreboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_mips_loongson_FALSE@@COND_x86_64_efi_FALSE@ehci_module_DEPENDENCIES = -@COND_i386_pc_TRUE@am__append_488 = -@COND_i386_pc_TRUE@am__append_489 = $(nodist_ehci_module_SOURCES) -@COND_i386_pc_TRUE@am__append_490 = $(nodist_ehci_module_SOURCES) \ -@COND_i386_pc_TRUE@ ehci.marker -@COND_i386_pc_TRUE@am__append_491 = ehci.mod -@COND_i386_pc_TRUE@am__append_492 = ehci.marker -@COND_i386_efi_TRUE@am__append_493 = ehci.module -@COND_i386_efi_TRUE@am__append_494 = ehci.module$(EXEEXT) -@COND_i386_efi_TRUE@am__append_495 = -@COND_i386_efi_TRUE@am__append_496 = $(nodist_ehci_module_SOURCES) -@COND_i386_efi_TRUE@am__append_497 = $(nodist_ehci_module_SOURCES) \ -@COND_i386_efi_TRUE@ ehci.marker -@COND_i386_efi_TRUE@am__append_498 = ehci.mod -@COND_i386_efi_TRUE@am__append_499 = ehci.marker -@COND_i386_qemu_TRUE@am__append_500 = ehci.module -@COND_i386_qemu_TRUE@am__append_501 = ehci.module$(EXEEXT) -@COND_i386_qemu_TRUE@am__append_502 = -@COND_i386_qemu_TRUE@am__append_503 = $(nodist_ehci_module_SOURCES) -@COND_i386_qemu_TRUE@am__append_504 = $(nodist_ehci_module_SOURCES) \ -@COND_i386_qemu_TRUE@ ehci.marker -@COND_i386_qemu_TRUE@am__append_505 = ehci.mod -@COND_i386_qemu_TRUE@am__append_506 = ehci.marker -@COND_i386_coreboot_TRUE@am__append_507 = ehci.module -@COND_i386_coreboot_TRUE@am__append_508 = ehci.module$(EXEEXT) -@COND_i386_coreboot_TRUE@am__append_509 = -@COND_i386_coreboot_TRUE@am__append_510 = $(nodist_ehci_module_SOURCES) -@COND_i386_coreboot_TRUE@am__append_511 = \ -@COND_i386_coreboot_TRUE@ $(nodist_ehci_module_SOURCES) \ -@COND_i386_coreboot_TRUE@ ehci.marker -@COND_i386_coreboot_TRUE@am__append_512 = ehci.mod -@COND_i386_coreboot_TRUE@am__append_513 = ehci.marker -@COND_i386_multiboot_TRUE@am__append_514 = ehci.module -@COND_i386_multiboot_TRUE@am__append_515 = ehci.module$(EXEEXT) -@COND_i386_multiboot_TRUE@am__append_516 = -@COND_i386_multiboot_TRUE@am__append_517 = $(nodist_ehci_module_SOURCES) -@COND_i386_multiboot_TRUE@am__append_518 = \ -@COND_i386_multiboot_TRUE@ $(nodist_ehci_module_SOURCES) \ -@COND_i386_multiboot_TRUE@ ehci.marker -@COND_i386_multiboot_TRUE@am__append_519 = ehci.mod -@COND_i386_multiboot_TRUE@am__append_520 = ehci.marker -@COND_i386_ieee1275_TRUE@am__append_521 = ehci.module -@COND_i386_ieee1275_TRUE@am__append_522 = ehci.module$(EXEEXT) -@COND_i386_ieee1275_TRUE@am__append_523 = -@COND_i386_ieee1275_TRUE@am__append_524 = $(nodist_ehci_module_SOURCES) -@COND_i386_ieee1275_TRUE@am__append_525 = \ -@COND_i386_ieee1275_TRUE@ $(nodist_ehci_module_SOURCES) \ -@COND_i386_ieee1275_TRUE@ ehci.marker -@COND_i386_ieee1275_TRUE@am__append_526 = ehci.mod -@COND_i386_ieee1275_TRUE@am__append_527 = ehci.marker -@COND_x86_64_efi_TRUE@am__append_528 = ehci.module -@COND_x86_64_efi_TRUE@am__append_529 = ehci.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__append_530 = -@COND_x86_64_efi_TRUE@am__append_531 = $(nodist_ehci_module_SOURCES) -@COND_x86_64_efi_TRUE@am__append_532 = $(nodist_ehci_module_SOURCES) \ -@COND_x86_64_efi_TRUE@ ehci.marker -@COND_x86_64_efi_TRUE@am__append_533 = ehci.mod -@COND_x86_64_efi_TRUE@am__append_534 = ehci.marker -@COND_mips_loongson_TRUE@am__append_535 = ehci.module -@COND_mips_loongson_TRUE@am__append_536 = ehci.module$(EXEEXT) -@COND_mips_loongson_TRUE@am__append_537 = -@COND_mips_loongson_TRUE@am__append_538 = $(nodist_ehci_module_SOURCES) -@COND_mips_loongson_TRUE@am__append_539 = \ -@COND_mips_loongson_TRUE@ $(nodist_ehci_module_SOURCES) \ -@COND_mips_loongson_TRUE@ ehci.marker -@COND_mips_loongson_TRUE@am__append_540 = ehci.mod -@COND_mips_loongson_TRUE@am__append_541 = ehci.marker -@COND_arm_coreboot_TRUE@am__append_542 = ehci.module -@COND_arm_coreboot_TRUE@am__append_543 = ehci.module$(EXEEXT) -@COND_arm_coreboot_TRUE@am__append_544 = -@COND_arm_coreboot_TRUE@am__append_545 = $(nodist_ehci_module_SOURCES) -@COND_arm_coreboot_TRUE@am__append_546 = \ -@COND_arm_coreboot_TRUE@ $(nodist_ehci_module_SOURCES) \ -@COND_arm_coreboot_TRUE@ ehci.marker -@COND_arm_coreboot_TRUE@am__append_547 = ehci.mod -@COND_arm_coreboot_TRUE@am__append_548 = ehci.marker -@COND_i386_pc_TRUE@am__append_549 = pci.module -@COND_i386_pc_TRUE@am__append_550 = pci.module$(EXEEXT) -@COND_i386_coreboot_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@pci_module_DEPENDENCIES = -@COND_i386_pc_TRUE@am__append_551 = -@COND_i386_pc_TRUE@am__append_552 = $(nodist_pci_module_SOURCES) -@COND_i386_pc_TRUE@am__append_553 = $(nodist_pci_module_SOURCES) \ -@COND_i386_pc_TRUE@ pci.marker -@COND_i386_pc_TRUE@am__append_554 = pci.mod -@COND_i386_pc_TRUE@am__append_555 = pci.marker -@COND_i386_coreboot_TRUE@am__append_556 = pci.module -@COND_i386_coreboot_TRUE@am__append_557 = pci.module$(EXEEXT) -@COND_i386_coreboot_TRUE@am__append_558 = -@COND_i386_coreboot_TRUE@am__append_559 = $(nodist_pci_module_SOURCES) -@COND_i386_coreboot_TRUE@am__append_560 = \ -@COND_i386_coreboot_TRUE@ $(nodist_pci_module_SOURCES) \ -@COND_i386_coreboot_TRUE@ pci.marker -@COND_i386_coreboot_TRUE@am__append_561 = pci.mod -@COND_i386_coreboot_TRUE@am__append_562 = pci.marker -@COND_i386_multiboot_TRUE@am__append_563 = pci.module -@COND_i386_multiboot_TRUE@am__append_564 = pci.module$(EXEEXT) -@COND_i386_multiboot_TRUE@am__append_565 = -@COND_i386_multiboot_TRUE@am__append_566 = $(nodist_pci_module_SOURCES) -@COND_i386_multiboot_TRUE@am__append_567 = \ -@COND_i386_multiboot_TRUE@ $(nodist_pci_module_SOURCES) \ -@COND_i386_multiboot_TRUE@ pci.marker -@COND_i386_multiboot_TRUE@am__append_568 = pci.mod -@COND_i386_multiboot_TRUE@am__append_569 = pci.marker -@COND_i386_ieee1275_TRUE@am__append_570 = pci.module -@COND_i386_ieee1275_TRUE@am__append_571 = pci.module$(EXEEXT) -@COND_i386_ieee1275_TRUE@am__append_572 = -@COND_i386_ieee1275_TRUE@am__append_573 = $(nodist_pci_module_SOURCES) -@COND_i386_ieee1275_TRUE@am__append_574 = \ -@COND_i386_ieee1275_TRUE@ $(nodist_pci_module_SOURCES) \ -@COND_i386_ieee1275_TRUE@ pci.marker -@COND_i386_ieee1275_TRUE@am__append_575 = pci.mod -@COND_i386_ieee1275_TRUE@am__append_576 = pci.marker -@COND_i386_pc_TRUE@am__append_577 = nativedisk.module -@COND_i386_pc_TRUE@am__append_578 = nativedisk.module$(EXEEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_x86_64_efi_FALSE@nativedisk_module_DEPENDENCIES = -@COND_i386_pc_TRUE@am__append_579 = -@COND_i386_pc_TRUE@am__append_580 = $(nodist_nativedisk_module_SOURCES) -@COND_i386_pc_TRUE@am__append_581 = \ -@COND_i386_pc_TRUE@ $(nodist_nativedisk_module_SOURCES) \ -@COND_i386_pc_TRUE@ nativedisk.marker -@COND_i386_pc_TRUE@am__append_582 = nativedisk.mod -@COND_i386_pc_TRUE@am__append_583 = nativedisk.marker -@COND_i386_efi_TRUE@am__append_584 = nativedisk.module -@COND_i386_efi_TRUE@am__append_585 = nativedisk.module$(EXEEXT) -@COND_i386_efi_TRUE@am__append_586 = -@COND_i386_efi_TRUE@am__append_587 = $(nodist_nativedisk_module_SOURCES) -@COND_i386_efi_TRUE@am__append_588 = \ -@COND_i386_efi_TRUE@ $(nodist_nativedisk_module_SOURCES) \ -@COND_i386_efi_TRUE@ nativedisk.marker -@COND_i386_efi_TRUE@am__append_589 = nativedisk.mod -@COND_i386_efi_TRUE@am__append_590 = nativedisk.marker -@COND_i386_qemu_TRUE@am__append_591 = nativedisk.module -@COND_i386_qemu_TRUE@am__append_592 = nativedisk.module$(EXEEXT) -@COND_i386_qemu_TRUE@am__append_593 = -@COND_i386_qemu_TRUE@am__append_594 = $(nodist_nativedisk_module_SOURCES) -@COND_i386_qemu_TRUE@am__append_595 = \ -@COND_i386_qemu_TRUE@ $(nodist_nativedisk_module_SOURCES) \ -@COND_i386_qemu_TRUE@ nativedisk.marker -@COND_i386_qemu_TRUE@am__append_596 = nativedisk.mod -@COND_i386_qemu_TRUE@am__append_597 = nativedisk.marker -@COND_i386_coreboot_TRUE@am__append_598 = nativedisk.module -@COND_i386_coreboot_TRUE@am__append_599 = nativedisk.module$(EXEEXT) -@COND_i386_coreboot_TRUE@am__append_600 = -@COND_i386_coreboot_TRUE@am__append_601 = $(nodist_nativedisk_module_SOURCES) -@COND_i386_coreboot_TRUE@am__append_602 = \ -@COND_i386_coreboot_TRUE@ $(nodist_nativedisk_module_SOURCES) \ -@COND_i386_coreboot_TRUE@ nativedisk.marker -@COND_i386_coreboot_TRUE@am__append_603 = nativedisk.mod -@COND_i386_coreboot_TRUE@am__append_604 = nativedisk.marker -@COND_i386_multiboot_TRUE@am__append_605 = nativedisk.module -@COND_i386_multiboot_TRUE@am__append_606 = nativedisk.module$(EXEEXT) -@COND_i386_multiboot_TRUE@am__append_607 = -@COND_i386_multiboot_TRUE@am__append_608 = $(nodist_nativedisk_module_SOURCES) -@COND_i386_multiboot_TRUE@am__append_609 = \ -@COND_i386_multiboot_TRUE@ $(nodist_nativedisk_module_SOURCES) \ -@COND_i386_multiboot_TRUE@ nativedisk.marker -@COND_i386_multiboot_TRUE@am__append_610 = nativedisk.mod -@COND_i386_multiboot_TRUE@am__append_611 = nativedisk.marker -@COND_i386_ieee1275_TRUE@am__append_612 = nativedisk.module -@COND_i386_ieee1275_TRUE@am__append_613 = nativedisk.module$(EXEEXT) -@COND_i386_ieee1275_TRUE@am__append_614 = -@COND_i386_ieee1275_TRUE@am__append_615 = $(nodist_nativedisk_module_SOURCES) -@COND_i386_ieee1275_TRUE@am__append_616 = \ -@COND_i386_ieee1275_TRUE@ $(nodist_nativedisk_module_SOURCES) \ -@COND_i386_ieee1275_TRUE@ nativedisk.marker -@COND_i386_ieee1275_TRUE@am__append_617 = nativedisk.mod -@COND_i386_ieee1275_TRUE@am__append_618 = nativedisk.marker -@COND_x86_64_efi_TRUE@am__append_619 = nativedisk.module -@COND_x86_64_efi_TRUE@am__append_620 = nativedisk.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__append_621 = -@COND_x86_64_efi_TRUE@am__append_622 = $(nodist_nativedisk_module_SOURCES) -@COND_x86_64_efi_TRUE@am__append_623 = \ -@COND_x86_64_efi_TRUE@ $(nodist_nativedisk_module_SOURCES) \ -@COND_x86_64_efi_TRUE@ nativedisk.marker -@COND_x86_64_efi_TRUE@am__append_624 = nativedisk.mod -@COND_x86_64_efi_TRUE@am__append_625 = nativedisk.marker -@COND_mips_loongson_TRUE@am__append_626 = nativedisk.module -@COND_mips_loongson_TRUE@am__append_627 = nativedisk.module$(EXEEXT) -@COND_mips_loongson_TRUE@am__append_628 = -@COND_mips_loongson_TRUE@am__append_629 = $(nodist_nativedisk_module_SOURCES) -@COND_mips_loongson_TRUE@am__append_630 = \ -@COND_mips_loongson_TRUE@ $(nodist_nativedisk_module_SOURCES) \ -@COND_mips_loongson_TRUE@ nativedisk.marker -@COND_mips_loongson_TRUE@am__append_631 = nativedisk.mod -@COND_mips_loongson_TRUE@am__append_632 = nativedisk.marker -@COND_mips_qemu_mips_TRUE@am__append_633 = nativedisk.module -@COND_mips_qemu_mips_TRUE@am__append_634 = nativedisk.module$(EXEEXT) -@COND_mips_qemu_mips_TRUE@am__append_635 = -@COND_mips_qemu_mips_TRUE@am__append_636 = $(nodist_nativedisk_module_SOURCES) -@COND_mips_qemu_mips_TRUE@am__append_637 = \ -@COND_mips_qemu_mips_TRUE@ $(nodist_nativedisk_module_SOURCES) \ -@COND_mips_qemu_mips_TRUE@ nativedisk.marker -@COND_mips_qemu_mips_TRUE@am__append_638 = nativedisk.mod -@COND_mips_qemu_mips_TRUE@am__append_639 = nativedisk.marker -@COND_GRUB_EMU_PCI_TRUE@@COND_emu_TRUE@am__append_640 = emupci.module -@COND_GRUB_EMU_PCI_TRUE@@COND_emu_TRUE@am__append_641 = emupci.module$(EXEEXT) -@COND_GRUB_EMU_PCI_FALSE@emupci_module_DEPENDENCIES = -@COND_emu_FALSE@emupci_module_DEPENDENCIES = -@COND_GRUB_EMU_PCI_TRUE@@COND_emu_TRUE@am__append_642 = -@COND_GRUB_EMU_PCI_TRUE@@COND_emu_TRUE@am__append_643 = $(nodist_emupci_module_SOURCES) -@COND_GRUB_EMU_PCI_TRUE@@COND_emu_TRUE@am__append_644 = $(nodist_emupci_module_SOURCES) \ -@COND_GRUB_EMU_PCI_TRUE@@COND_emu_TRUE@ emupci.marker -@COND_GRUB_EMU_PCI_TRUE@@COND_emu_TRUE@am__append_645 = emupci.mod -@COND_GRUB_EMU_PCI_TRUE@@COND_emu_TRUE@am__append_646 = emupci.marker -@COND_mips_arc_TRUE@am__append_647 = lsdev.module -@COND_mips_arc_TRUE@am__append_648 = lsdev.module$(EXEEXT) -@COND_mips_arc_FALSE@lsdev_module_DEPENDENCIES = -@COND_mips_arc_TRUE@am__append_649 = -@COND_mips_arc_TRUE@am__append_650 = $(nodist_lsdev_module_SOURCES) -@COND_mips_arc_TRUE@am__append_651 = $(nodist_lsdev_module_SOURCES) \ -@COND_mips_arc_TRUE@ lsdev.marker -@COND_mips_arc_TRUE@am__append_652 = lsdev.mod -@COND_mips_arc_TRUE@am__append_653 = lsdev.marker -@COND_i386_xen_TRUE@am__append_654 = lsxen.module -@COND_i386_xen_TRUE@am__append_655 = lsxen.module$(EXEEXT) -@COND_i386_xen_FALSE@@COND_x86_64_xen_FALSE@lsxen_module_DEPENDENCIES = -@COND_i386_xen_TRUE@am__append_656 = -@COND_i386_xen_TRUE@am__append_657 = $(nodist_lsxen_module_SOURCES) -@COND_i386_xen_TRUE@am__append_658 = $(nodist_lsxen_module_SOURCES) \ -@COND_i386_xen_TRUE@ lsxen.marker -@COND_i386_xen_TRUE@am__append_659 = lsxen.mod -@COND_i386_xen_TRUE@am__append_660 = lsxen.marker -@COND_x86_64_xen_TRUE@am__append_661 = lsxen.module -@COND_x86_64_xen_TRUE@am__append_662 = lsxen.module$(EXEEXT) -@COND_x86_64_xen_TRUE@am__append_663 = -@COND_x86_64_xen_TRUE@am__append_664 = $(nodist_lsxen_module_SOURCES) -@COND_x86_64_xen_TRUE@am__append_665 = $(nodist_lsxen_module_SOURCES) \ -@COND_x86_64_xen_TRUE@ lsxen.marker -@COND_x86_64_xen_TRUE@am__append_666 = lsxen.mod -@COND_x86_64_xen_TRUE@am__append_667 = lsxen.marker -@COND_i386_pc_TRUE@am__append_668 = cmostest.module -@COND_i386_pc_TRUE@am__append_669 = cmostest.module$(EXEEXT) -@COND_i386_coreboot_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_sparc64_ieee1275_FALSE@cmostest_module_DEPENDENCIES = -@COND_i386_pc_TRUE@am__append_670 = -@COND_i386_pc_TRUE@am__append_671 = $(nodist_cmostest_module_SOURCES) -@COND_i386_pc_TRUE@am__append_672 = $(nodist_cmostest_module_SOURCES) \ -@COND_i386_pc_TRUE@ cmostest.marker -@COND_i386_pc_TRUE@am__append_673 = cmostest.mod -@COND_i386_pc_TRUE@am__append_674 = cmostest.marker -@COND_i386_qemu_TRUE@am__append_675 = cmostest.module -@COND_i386_qemu_TRUE@am__append_676 = cmostest.module$(EXEEXT) -@COND_i386_qemu_TRUE@am__append_677 = -@COND_i386_qemu_TRUE@am__append_678 = $(nodist_cmostest_module_SOURCES) -@COND_i386_qemu_TRUE@am__append_679 = \ -@COND_i386_qemu_TRUE@ $(nodist_cmostest_module_SOURCES) \ -@COND_i386_qemu_TRUE@ cmostest.marker -@COND_i386_qemu_TRUE@am__append_680 = cmostest.mod -@COND_i386_qemu_TRUE@am__append_681 = cmostest.marker -@COND_i386_coreboot_TRUE@am__append_682 = cmostest.module -@COND_i386_coreboot_TRUE@am__append_683 = cmostest.module$(EXEEXT) -@COND_i386_coreboot_TRUE@am__append_684 = -@COND_i386_coreboot_TRUE@am__append_685 = $(nodist_cmostest_module_SOURCES) -@COND_i386_coreboot_TRUE@am__append_686 = \ -@COND_i386_coreboot_TRUE@ $(nodist_cmostest_module_SOURCES) \ -@COND_i386_coreboot_TRUE@ cmostest.marker -@COND_i386_coreboot_TRUE@am__append_687 = cmostest.mod -@COND_i386_coreboot_TRUE@am__append_688 = cmostest.marker -@COND_i386_multiboot_TRUE@am__append_689 = cmostest.module -@COND_i386_multiboot_TRUE@am__append_690 = cmostest.module$(EXEEXT) -@COND_i386_multiboot_TRUE@am__append_691 = -@COND_i386_multiboot_TRUE@am__append_692 = $(nodist_cmostest_module_SOURCES) -@COND_i386_multiboot_TRUE@am__append_693 = \ -@COND_i386_multiboot_TRUE@ $(nodist_cmostest_module_SOURCES) \ -@COND_i386_multiboot_TRUE@ cmostest.marker -@COND_i386_multiboot_TRUE@am__append_694 = cmostest.mod -@COND_i386_multiboot_TRUE@am__append_695 = cmostest.marker -@COND_i386_ieee1275_TRUE@am__append_696 = cmostest.module -@COND_i386_ieee1275_TRUE@am__append_697 = cmostest.module$(EXEEXT) -@COND_i386_ieee1275_TRUE@am__append_698 = -@COND_i386_ieee1275_TRUE@am__append_699 = $(nodist_cmostest_module_SOURCES) -@COND_i386_ieee1275_TRUE@am__append_700 = \ -@COND_i386_ieee1275_TRUE@ $(nodist_cmostest_module_SOURCES) \ -@COND_i386_ieee1275_TRUE@ cmostest.marker -@COND_i386_ieee1275_TRUE@am__append_701 = cmostest.mod -@COND_i386_ieee1275_TRUE@am__append_702 = cmostest.marker -@COND_mips_loongson_TRUE@am__append_703 = cmostest.module -@COND_mips_loongson_TRUE@am__append_704 = cmostest.module$(EXEEXT) -@COND_mips_loongson_TRUE@am__append_705 = -@COND_mips_loongson_TRUE@am__append_706 = $(nodist_cmostest_module_SOURCES) -@COND_mips_loongson_TRUE@am__append_707 = \ -@COND_mips_loongson_TRUE@ $(nodist_cmostest_module_SOURCES) \ -@COND_mips_loongson_TRUE@ cmostest.marker -@COND_mips_loongson_TRUE@am__append_708 = cmostest.mod -@COND_mips_loongson_TRUE@am__append_709 = cmostest.marker -@COND_sparc64_ieee1275_TRUE@am__append_710 = cmostest.module -@COND_sparc64_ieee1275_TRUE@am__append_711 = cmostest.module$(EXEEXT) -@COND_sparc64_ieee1275_TRUE@am__append_712 = -@COND_sparc64_ieee1275_TRUE@am__append_713 = $(nodist_cmostest_module_SOURCES) -@COND_sparc64_ieee1275_TRUE@am__append_714 = \ -@COND_sparc64_ieee1275_TRUE@ $(nodist_cmostest_module_SOURCES) \ -@COND_sparc64_ieee1275_TRUE@ cmostest.marker -@COND_sparc64_ieee1275_TRUE@am__append_715 = cmostest.mod -@COND_sparc64_ieee1275_TRUE@am__append_716 = cmostest.marker -@COND_powerpc_ieee1275_TRUE@am__append_717 = cmostest.module -@COND_powerpc_ieee1275_TRUE@am__append_718 = cmostest.module$(EXEEXT) -@COND_powerpc_ieee1275_TRUE@am__append_719 = -@COND_powerpc_ieee1275_TRUE@am__append_720 = $(nodist_cmostest_module_SOURCES) -@COND_powerpc_ieee1275_TRUE@am__append_721 = \ -@COND_powerpc_ieee1275_TRUE@ $(nodist_cmostest_module_SOURCES) \ -@COND_powerpc_ieee1275_TRUE@ cmostest.marker -@COND_powerpc_ieee1275_TRUE@am__append_722 = cmostest.mod -@COND_powerpc_ieee1275_TRUE@am__append_723 = cmostest.marker -@COND_mips_qemu_mips_TRUE@am__append_724 = cmostest.module -@COND_mips_qemu_mips_TRUE@am__append_725 = cmostest.module$(EXEEXT) -@COND_mips_qemu_mips_TRUE@am__append_726 = -@COND_mips_qemu_mips_TRUE@am__append_727 = $(nodist_cmostest_module_SOURCES) -@COND_mips_qemu_mips_TRUE@am__append_728 = \ -@COND_mips_qemu_mips_TRUE@ $(nodist_cmostest_module_SOURCES) \ -@COND_mips_qemu_mips_TRUE@ cmostest.marker -@COND_mips_qemu_mips_TRUE@am__append_729 = cmostest.mod -@COND_mips_qemu_mips_TRUE@am__append_730 = cmostest.marker -@COND_i386_pc_TRUE@am__append_731 = cmosdump.module -@COND_i386_pc_TRUE@am__append_732 = cmosdump.module$(EXEEXT) -@COND_i386_coreboot_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_sparc64_ieee1275_FALSE@cmosdump_module_DEPENDENCIES = -@COND_i386_pc_TRUE@am__append_733 = -@COND_i386_pc_TRUE@am__append_734 = $(nodist_cmosdump_module_SOURCES) -@COND_i386_pc_TRUE@am__append_735 = $(nodist_cmosdump_module_SOURCES) \ -@COND_i386_pc_TRUE@ cmosdump.marker -@COND_i386_pc_TRUE@am__append_736 = cmosdump.mod -@COND_i386_pc_TRUE@am__append_737 = cmosdump.marker -@COND_i386_qemu_TRUE@am__append_738 = cmosdump.module -@COND_i386_qemu_TRUE@am__append_739 = cmosdump.module$(EXEEXT) -@COND_i386_qemu_TRUE@am__append_740 = -@COND_i386_qemu_TRUE@am__append_741 = $(nodist_cmosdump_module_SOURCES) -@COND_i386_qemu_TRUE@am__append_742 = \ -@COND_i386_qemu_TRUE@ $(nodist_cmosdump_module_SOURCES) \ -@COND_i386_qemu_TRUE@ cmosdump.marker -@COND_i386_qemu_TRUE@am__append_743 = cmosdump.mod -@COND_i386_qemu_TRUE@am__append_744 = cmosdump.marker -@COND_i386_coreboot_TRUE@am__append_745 = cmosdump.module -@COND_i386_coreboot_TRUE@am__append_746 = cmosdump.module$(EXEEXT) -@COND_i386_coreboot_TRUE@am__append_747 = -@COND_i386_coreboot_TRUE@am__append_748 = $(nodist_cmosdump_module_SOURCES) -@COND_i386_coreboot_TRUE@am__append_749 = \ -@COND_i386_coreboot_TRUE@ $(nodist_cmosdump_module_SOURCES) \ -@COND_i386_coreboot_TRUE@ cmosdump.marker -@COND_i386_coreboot_TRUE@am__append_750 = cmosdump.mod -@COND_i386_coreboot_TRUE@am__append_751 = cmosdump.marker -@COND_i386_multiboot_TRUE@am__append_752 = cmosdump.module -@COND_i386_multiboot_TRUE@am__append_753 = cmosdump.module$(EXEEXT) -@COND_i386_multiboot_TRUE@am__append_754 = -@COND_i386_multiboot_TRUE@am__append_755 = $(nodist_cmosdump_module_SOURCES) -@COND_i386_multiboot_TRUE@am__append_756 = \ -@COND_i386_multiboot_TRUE@ $(nodist_cmosdump_module_SOURCES) \ -@COND_i386_multiboot_TRUE@ cmosdump.marker -@COND_i386_multiboot_TRUE@am__append_757 = cmosdump.mod -@COND_i386_multiboot_TRUE@am__append_758 = cmosdump.marker -@COND_i386_ieee1275_TRUE@am__append_759 = cmosdump.module -@COND_i386_ieee1275_TRUE@am__append_760 = cmosdump.module$(EXEEXT) -@COND_i386_ieee1275_TRUE@am__append_761 = -@COND_i386_ieee1275_TRUE@am__append_762 = $(nodist_cmosdump_module_SOURCES) -@COND_i386_ieee1275_TRUE@am__append_763 = \ -@COND_i386_ieee1275_TRUE@ $(nodist_cmosdump_module_SOURCES) \ -@COND_i386_ieee1275_TRUE@ cmosdump.marker -@COND_i386_ieee1275_TRUE@am__append_764 = cmosdump.mod -@COND_i386_ieee1275_TRUE@am__append_765 = cmosdump.marker -@COND_mips_loongson_TRUE@am__append_766 = cmosdump.module -@COND_mips_loongson_TRUE@am__append_767 = cmosdump.module$(EXEEXT) -@COND_mips_loongson_TRUE@am__append_768 = -@COND_mips_loongson_TRUE@am__append_769 = $(nodist_cmosdump_module_SOURCES) -@COND_mips_loongson_TRUE@am__append_770 = \ -@COND_mips_loongson_TRUE@ $(nodist_cmosdump_module_SOURCES) \ -@COND_mips_loongson_TRUE@ cmosdump.marker -@COND_mips_loongson_TRUE@am__append_771 = cmosdump.mod -@COND_mips_loongson_TRUE@am__append_772 = cmosdump.marker -@COND_sparc64_ieee1275_TRUE@am__append_773 = cmosdump.module -@COND_sparc64_ieee1275_TRUE@am__append_774 = cmosdump.module$(EXEEXT) -@COND_sparc64_ieee1275_TRUE@am__append_775 = -@COND_sparc64_ieee1275_TRUE@am__append_776 = $(nodist_cmosdump_module_SOURCES) -@COND_sparc64_ieee1275_TRUE@am__append_777 = \ -@COND_sparc64_ieee1275_TRUE@ $(nodist_cmosdump_module_SOURCES) \ -@COND_sparc64_ieee1275_TRUE@ cmosdump.marker -@COND_sparc64_ieee1275_TRUE@am__append_778 = cmosdump.mod -@COND_sparc64_ieee1275_TRUE@am__append_779 = cmosdump.marker -@COND_powerpc_ieee1275_TRUE@am__append_780 = cmosdump.module -@COND_powerpc_ieee1275_TRUE@am__append_781 = cmosdump.module$(EXEEXT) -@COND_powerpc_ieee1275_TRUE@am__append_782 = -@COND_powerpc_ieee1275_TRUE@am__append_783 = $(nodist_cmosdump_module_SOURCES) -@COND_powerpc_ieee1275_TRUE@am__append_784 = \ -@COND_powerpc_ieee1275_TRUE@ $(nodist_cmosdump_module_SOURCES) \ -@COND_powerpc_ieee1275_TRUE@ cmosdump.marker -@COND_powerpc_ieee1275_TRUE@am__append_785 = cmosdump.mod -@COND_powerpc_ieee1275_TRUE@am__append_786 = cmosdump.marker -@COND_mips_qemu_mips_TRUE@am__append_787 = cmosdump.module -@COND_mips_qemu_mips_TRUE@am__append_788 = cmosdump.module$(EXEEXT) -@COND_mips_qemu_mips_TRUE@am__append_789 = -@COND_mips_qemu_mips_TRUE@am__append_790 = $(nodist_cmosdump_module_SOURCES) -@COND_mips_qemu_mips_TRUE@am__append_791 = \ -@COND_mips_qemu_mips_TRUE@ $(nodist_cmosdump_module_SOURCES) \ -@COND_mips_qemu_mips_TRUE@ cmosdump.marker -@COND_mips_qemu_mips_TRUE@am__append_792 = cmosdump.mod -@COND_mips_qemu_mips_TRUE@am__append_793 = cmosdump.marker -@COND_i386_pc_TRUE@am__append_794 = iorw.module -@COND_i386_pc_TRUE@am__append_795 = iorw.module$(EXEEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_x86_64_efi_FALSE@iorw_module_DEPENDENCIES = -@COND_i386_pc_TRUE@am__append_796 = -@COND_i386_pc_TRUE@am__append_797 = $(nodist_iorw_module_SOURCES) -@COND_i386_pc_TRUE@am__append_798 = $(nodist_iorw_module_SOURCES) \ -@COND_i386_pc_TRUE@ iorw.marker -@COND_i386_pc_TRUE@am__append_799 = iorw.mod -@COND_i386_pc_TRUE@am__append_800 = iorw.marker -@COND_i386_efi_TRUE@am__append_801 = iorw.module -@COND_i386_efi_TRUE@am__append_802 = iorw.module$(EXEEXT) -@COND_i386_efi_TRUE@am__append_803 = -@COND_i386_efi_TRUE@am__append_804 = $(nodist_iorw_module_SOURCES) -@COND_i386_efi_TRUE@am__append_805 = $(nodist_iorw_module_SOURCES) \ -@COND_i386_efi_TRUE@ iorw.marker -@COND_i386_efi_TRUE@am__append_806 = iorw.mod -@COND_i386_efi_TRUE@am__append_807 = iorw.marker -@COND_i386_qemu_TRUE@am__append_808 = iorw.module -@COND_i386_qemu_TRUE@am__append_809 = iorw.module$(EXEEXT) -@COND_i386_qemu_TRUE@am__append_810 = -@COND_i386_qemu_TRUE@am__append_811 = $(nodist_iorw_module_SOURCES) -@COND_i386_qemu_TRUE@am__append_812 = $(nodist_iorw_module_SOURCES) \ -@COND_i386_qemu_TRUE@ iorw.marker -@COND_i386_qemu_TRUE@am__append_813 = iorw.mod -@COND_i386_qemu_TRUE@am__append_814 = iorw.marker -@COND_i386_coreboot_TRUE@am__append_815 = iorw.module -@COND_i386_coreboot_TRUE@am__append_816 = iorw.module$(EXEEXT) -@COND_i386_coreboot_TRUE@am__append_817 = -@COND_i386_coreboot_TRUE@am__append_818 = $(nodist_iorw_module_SOURCES) -@COND_i386_coreboot_TRUE@am__append_819 = \ -@COND_i386_coreboot_TRUE@ $(nodist_iorw_module_SOURCES) \ -@COND_i386_coreboot_TRUE@ iorw.marker -@COND_i386_coreboot_TRUE@am__append_820 = iorw.mod -@COND_i386_coreboot_TRUE@am__append_821 = iorw.marker -@COND_i386_multiboot_TRUE@am__append_822 = iorw.module -@COND_i386_multiboot_TRUE@am__append_823 = iorw.module$(EXEEXT) -@COND_i386_multiboot_TRUE@am__append_824 = -@COND_i386_multiboot_TRUE@am__append_825 = $(nodist_iorw_module_SOURCES) -@COND_i386_multiboot_TRUE@am__append_826 = \ -@COND_i386_multiboot_TRUE@ $(nodist_iorw_module_SOURCES) \ -@COND_i386_multiboot_TRUE@ iorw.marker -@COND_i386_multiboot_TRUE@am__append_827 = iorw.mod -@COND_i386_multiboot_TRUE@am__append_828 = iorw.marker -@COND_i386_ieee1275_TRUE@am__append_829 = iorw.module -@COND_i386_ieee1275_TRUE@am__append_830 = iorw.module$(EXEEXT) -@COND_i386_ieee1275_TRUE@am__append_831 = -@COND_i386_ieee1275_TRUE@am__append_832 = $(nodist_iorw_module_SOURCES) -@COND_i386_ieee1275_TRUE@am__append_833 = \ -@COND_i386_ieee1275_TRUE@ $(nodist_iorw_module_SOURCES) \ -@COND_i386_ieee1275_TRUE@ iorw.marker -@COND_i386_ieee1275_TRUE@am__append_834 = iorw.mod -@COND_i386_ieee1275_TRUE@am__append_835 = iorw.marker -@COND_x86_64_efi_TRUE@am__append_836 = iorw.module -@COND_x86_64_efi_TRUE@am__append_837 = iorw.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__append_838 = -@COND_x86_64_efi_TRUE@am__append_839 = $(nodist_iorw_module_SOURCES) -@COND_x86_64_efi_TRUE@am__append_840 = $(nodist_iorw_module_SOURCES) \ -@COND_x86_64_efi_TRUE@ iorw.marker -@COND_x86_64_efi_TRUE@am__append_841 = iorw.mod -@COND_x86_64_efi_TRUE@am__append_842 = iorw.marker -@COND_i386_pc_TRUE@am__append_843 = cbtable.module -@COND_i386_pc_TRUE@am__append_844 = cbtable.module$(EXEEXT) -@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_x86_64_efi_FALSE@cbtable_module_DEPENDENCIES = -@COND_i386_pc_TRUE@am__append_845 = -@COND_i386_pc_TRUE@am__append_846 = $(nodist_cbtable_module_SOURCES) -@COND_i386_pc_TRUE@am__append_847 = $(nodist_cbtable_module_SOURCES) \ -@COND_i386_pc_TRUE@ cbtable.marker -@COND_i386_pc_TRUE@am__append_848 = cbtable.mod -@COND_i386_pc_TRUE@am__append_849 = cbtable.marker -@COND_i386_efi_TRUE@am__append_850 = cbtable.module -@COND_i386_efi_TRUE@am__append_851 = cbtable.module$(EXEEXT) -@COND_i386_efi_TRUE@am__append_852 = -@COND_i386_efi_TRUE@am__append_853 = $(nodist_cbtable_module_SOURCES) -@COND_i386_efi_TRUE@am__append_854 = $(nodist_cbtable_module_SOURCES) \ -@COND_i386_efi_TRUE@ cbtable.marker -@COND_i386_efi_TRUE@am__append_855 = cbtable.mod -@COND_i386_efi_TRUE@am__append_856 = cbtable.marker -@COND_i386_qemu_TRUE@am__append_857 = cbtable.module -@COND_i386_qemu_TRUE@am__append_858 = cbtable.module$(EXEEXT) -@COND_i386_qemu_TRUE@am__append_859 = -@COND_i386_qemu_TRUE@am__append_860 = $(nodist_cbtable_module_SOURCES) -@COND_i386_qemu_TRUE@am__append_861 = \ -@COND_i386_qemu_TRUE@ $(nodist_cbtable_module_SOURCES) \ -@COND_i386_qemu_TRUE@ cbtable.marker -@COND_i386_qemu_TRUE@am__append_862 = cbtable.mod -@COND_i386_qemu_TRUE@am__append_863 = cbtable.marker -@COND_i386_multiboot_TRUE@am__append_864 = cbtable.module -@COND_i386_multiboot_TRUE@am__append_865 = cbtable.module$(EXEEXT) -@COND_i386_multiboot_TRUE@am__append_866 = -@COND_i386_multiboot_TRUE@am__append_867 = $(nodist_cbtable_module_SOURCES) -@COND_i386_multiboot_TRUE@am__append_868 = \ -@COND_i386_multiboot_TRUE@ $(nodist_cbtable_module_SOURCES) \ -@COND_i386_multiboot_TRUE@ cbtable.marker -@COND_i386_multiboot_TRUE@am__append_869 = cbtable.mod -@COND_i386_multiboot_TRUE@am__append_870 = cbtable.marker -@COND_i386_ieee1275_TRUE@am__append_871 = cbtable.module -@COND_i386_ieee1275_TRUE@am__append_872 = cbtable.module$(EXEEXT) -@COND_i386_ieee1275_TRUE@am__append_873 = -@COND_i386_ieee1275_TRUE@am__append_874 = $(nodist_cbtable_module_SOURCES) -@COND_i386_ieee1275_TRUE@am__append_875 = \ -@COND_i386_ieee1275_TRUE@ $(nodist_cbtable_module_SOURCES) \ -@COND_i386_ieee1275_TRUE@ cbtable.marker -@COND_i386_ieee1275_TRUE@am__append_876 = cbtable.mod -@COND_i386_ieee1275_TRUE@am__append_877 = cbtable.marker -@COND_x86_64_efi_TRUE@am__append_878 = cbtable.module -@COND_x86_64_efi_TRUE@am__append_879 = cbtable.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__append_880 = -@COND_x86_64_efi_TRUE@am__append_881 = $(nodist_cbtable_module_SOURCES) -@COND_x86_64_efi_TRUE@am__append_882 = \ -@COND_x86_64_efi_TRUE@ $(nodist_cbtable_module_SOURCES) \ -@COND_x86_64_efi_TRUE@ cbtable.marker -@COND_x86_64_efi_TRUE@am__append_883 = cbtable.mod -@COND_x86_64_efi_TRUE@am__append_884 = cbtable.marker -@COND_i386_pc_TRUE@am__append_885 = cbtime.module -@COND_i386_pc_TRUE@am__append_886 = cbtime.module$(EXEEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_x86_64_efi_FALSE@cbtime_module_DEPENDENCIES = -@COND_i386_pc_TRUE@am__append_887 = -@COND_i386_pc_TRUE@am__append_888 = $(nodist_cbtime_module_SOURCES) -@COND_i386_pc_TRUE@am__append_889 = $(nodist_cbtime_module_SOURCES) \ -@COND_i386_pc_TRUE@ cbtime.marker -@COND_i386_pc_TRUE@am__append_890 = cbtime.mod -@COND_i386_pc_TRUE@am__append_891 = cbtime.marker -@COND_i386_efi_TRUE@am__append_892 = cbtime.module -@COND_i386_efi_TRUE@am__append_893 = cbtime.module$(EXEEXT) -@COND_i386_efi_TRUE@am__append_894 = -@COND_i386_efi_TRUE@am__append_895 = $(nodist_cbtime_module_SOURCES) -@COND_i386_efi_TRUE@am__append_896 = $(nodist_cbtime_module_SOURCES) \ -@COND_i386_efi_TRUE@ cbtime.marker -@COND_i386_efi_TRUE@am__append_897 = cbtime.mod -@COND_i386_efi_TRUE@am__append_898 = cbtime.marker -@COND_i386_qemu_TRUE@am__append_899 = cbtime.module -@COND_i386_qemu_TRUE@am__append_900 = cbtime.module$(EXEEXT) -@COND_i386_qemu_TRUE@am__append_901 = -@COND_i386_qemu_TRUE@am__append_902 = $(nodist_cbtime_module_SOURCES) -@COND_i386_qemu_TRUE@am__append_903 = $(nodist_cbtime_module_SOURCES) \ -@COND_i386_qemu_TRUE@ cbtime.marker -@COND_i386_qemu_TRUE@am__append_904 = cbtime.mod -@COND_i386_qemu_TRUE@am__append_905 = cbtime.marker -@COND_i386_coreboot_TRUE@am__append_906 = cbtime.module -@COND_i386_coreboot_TRUE@am__append_907 = cbtime.module$(EXEEXT) -@COND_i386_coreboot_TRUE@am__append_908 = -@COND_i386_coreboot_TRUE@am__append_909 = $(nodist_cbtime_module_SOURCES) -@COND_i386_coreboot_TRUE@am__append_910 = \ -@COND_i386_coreboot_TRUE@ $(nodist_cbtime_module_SOURCES) \ -@COND_i386_coreboot_TRUE@ cbtime.marker -@COND_i386_coreboot_TRUE@am__append_911 = cbtime.mod -@COND_i386_coreboot_TRUE@am__append_912 = cbtime.marker -@COND_i386_multiboot_TRUE@am__append_913 = cbtime.module -@COND_i386_multiboot_TRUE@am__append_914 = cbtime.module$(EXEEXT) -@COND_i386_multiboot_TRUE@am__append_915 = -@COND_i386_multiboot_TRUE@am__append_916 = $(nodist_cbtime_module_SOURCES) -@COND_i386_multiboot_TRUE@am__append_917 = \ -@COND_i386_multiboot_TRUE@ $(nodist_cbtime_module_SOURCES) \ -@COND_i386_multiboot_TRUE@ cbtime.marker -@COND_i386_multiboot_TRUE@am__append_918 = cbtime.mod -@COND_i386_multiboot_TRUE@am__append_919 = cbtime.marker -@COND_i386_ieee1275_TRUE@am__append_920 = cbtime.module -@COND_i386_ieee1275_TRUE@am__append_921 = cbtime.module$(EXEEXT) -@COND_i386_ieee1275_TRUE@am__append_922 = -@COND_i386_ieee1275_TRUE@am__append_923 = $(nodist_cbtime_module_SOURCES) -@COND_i386_ieee1275_TRUE@am__append_924 = \ -@COND_i386_ieee1275_TRUE@ $(nodist_cbtime_module_SOURCES) \ -@COND_i386_ieee1275_TRUE@ cbtime.marker -@COND_i386_ieee1275_TRUE@am__append_925 = cbtime.mod -@COND_i386_ieee1275_TRUE@am__append_926 = cbtime.marker -@COND_x86_64_efi_TRUE@am__append_927 = cbtime.module -@COND_x86_64_efi_TRUE@am__append_928 = cbtime.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__append_929 = -@COND_x86_64_efi_TRUE@am__append_930 = $(nodist_cbtime_module_SOURCES) -@COND_x86_64_efi_TRUE@am__append_931 = \ -@COND_x86_64_efi_TRUE@ $(nodist_cbtime_module_SOURCES) \ -@COND_x86_64_efi_TRUE@ cbtime.marker -@COND_x86_64_efi_TRUE@am__append_932 = cbtime.mod -@COND_x86_64_efi_TRUE@am__append_933 = cbtime.marker -@COND_i386_pc_TRUE@am__append_934 = cbls.module -@COND_i386_pc_TRUE@am__append_935 = cbls.module$(EXEEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_x86_64_efi_FALSE@cbls_module_DEPENDENCIES = -@COND_i386_pc_TRUE@am__append_936 = -@COND_i386_pc_TRUE@am__append_937 = $(nodist_cbls_module_SOURCES) -@COND_i386_pc_TRUE@am__append_938 = $(nodist_cbls_module_SOURCES) \ -@COND_i386_pc_TRUE@ cbls.marker -@COND_i386_pc_TRUE@am__append_939 = cbls.mod -@COND_i386_pc_TRUE@am__append_940 = cbls.marker -@COND_i386_efi_TRUE@am__append_941 = cbls.module -@COND_i386_efi_TRUE@am__append_942 = cbls.module$(EXEEXT) -@COND_i386_efi_TRUE@am__append_943 = -@COND_i386_efi_TRUE@am__append_944 = $(nodist_cbls_module_SOURCES) -@COND_i386_efi_TRUE@am__append_945 = $(nodist_cbls_module_SOURCES) \ -@COND_i386_efi_TRUE@ cbls.marker -@COND_i386_efi_TRUE@am__append_946 = cbls.mod -@COND_i386_efi_TRUE@am__append_947 = cbls.marker -@COND_i386_qemu_TRUE@am__append_948 = cbls.module -@COND_i386_qemu_TRUE@am__append_949 = cbls.module$(EXEEXT) -@COND_i386_qemu_TRUE@am__append_950 = -@COND_i386_qemu_TRUE@am__append_951 = $(nodist_cbls_module_SOURCES) -@COND_i386_qemu_TRUE@am__append_952 = $(nodist_cbls_module_SOURCES) \ -@COND_i386_qemu_TRUE@ cbls.marker -@COND_i386_qemu_TRUE@am__append_953 = cbls.mod -@COND_i386_qemu_TRUE@am__append_954 = cbls.marker -@COND_i386_coreboot_TRUE@am__append_955 = cbls.module -@COND_i386_coreboot_TRUE@am__append_956 = cbls.module$(EXEEXT) -@COND_i386_coreboot_TRUE@am__append_957 = -@COND_i386_coreboot_TRUE@am__append_958 = $(nodist_cbls_module_SOURCES) -@COND_i386_coreboot_TRUE@am__append_959 = \ -@COND_i386_coreboot_TRUE@ $(nodist_cbls_module_SOURCES) \ -@COND_i386_coreboot_TRUE@ cbls.marker -@COND_i386_coreboot_TRUE@am__append_960 = cbls.mod -@COND_i386_coreboot_TRUE@am__append_961 = cbls.marker -@COND_i386_multiboot_TRUE@am__append_962 = cbls.module -@COND_i386_multiboot_TRUE@am__append_963 = cbls.module$(EXEEXT) -@COND_i386_multiboot_TRUE@am__append_964 = -@COND_i386_multiboot_TRUE@am__append_965 = $(nodist_cbls_module_SOURCES) -@COND_i386_multiboot_TRUE@am__append_966 = \ -@COND_i386_multiboot_TRUE@ $(nodist_cbls_module_SOURCES) \ -@COND_i386_multiboot_TRUE@ cbls.marker -@COND_i386_multiboot_TRUE@am__append_967 = cbls.mod -@COND_i386_multiboot_TRUE@am__append_968 = cbls.marker -@COND_i386_ieee1275_TRUE@am__append_969 = cbls.module -@COND_i386_ieee1275_TRUE@am__append_970 = cbls.module$(EXEEXT) -@COND_i386_ieee1275_TRUE@am__append_971 = -@COND_i386_ieee1275_TRUE@am__append_972 = $(nodist_cbls_module_SOURCES) -@COND_i386_ieee1275_TRUE@am__append_973 = \ -@COND_i386_ieee1275_TRUE@ $(nodist_cbls_module_SOURCES) \ -@COND_i386_ieee1275_TRUE@ cbls.marker -@COND_i386_ieee1275_TRUE@am__append_974 = cbls.mod -@COND_i386_ieee1275_TRUE@am__append_975 = cbls.marker -@COND_x86_64_efi_TRUE@am__append_976 = cbls.module -@COND_x86_64_efi_TRUE@am__append_977 = cbls.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__append_978 = -@COND_x86_64_efi_TRUE@am__append_979 = $(nodist_cbls_module_SOURCES) -@COND_x86_64_efi_TRUE@am__append_980 = $(nodist_cbls_module_SOURCES) \ -@COND_x86_64_efi_TRUE@ cbls.marker -@COND_x86_64_efi_TRUE@am__append_981 = cbls.mod -@COND_x86_64_efi_TRUE@am__append_982 = cbls.marker -@COND_i386_pc_TRUE@am__append_983 = cbmemc.module -@COND_i386_pc_TRUE@am__append_984 = cbmemc.module$(EXEEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_x86_64_efi_FALSE@cbmemc_module_DEPENDENCIES = -@COND_i386_pc_TRUE@am__append_985 = -@COND_i386_pc_TRUE@am__append_986 = $(nodist_cbmemc_module_SOURCES) -@COND_i386_pc_TRUE@am__append_987 = $(nodist_cbmemc_module_SOURCES) \ -@COND_i386_pc_TRUE@ cbmemc.marker -@COND_i386_pc_TRUE@am__append_988 = cbmemc.mod -@COND_i386_pc_TRUE@am__append_989 = cbmemc.marker -@COND_i386_efi_TRUE@am__append_990 = cbmemc.module -@COND_i386_efi_TRUE@am__append_991 = cbmemc.module$(EXEEXT) -@COND_i386_efi_TRUE@am__append_992 = -@COND_i386_efi_TRUE@am__append_993 = $(nodist_cbmemc_module_SOURCES) -@COND_i386_efi_TRUE@am__append_994 = $(nodist_cbmemc_module_SOURCES) \ -@COND_i386_efi_TRUE@ cbmemc.marker -@COND_i386_efi_TRUE@am__append_995 = cbmemc.mod -@COND_i386_efi_TRUE@am__append_996 = cbmemc.marker -@COND_i386_qemu_TRUE@am__append_997 = cbmemc.module -@COND_i386_qemu_TRUE@am__append_998 = cbmemc.module$(EXEEXT) -@COND_i386_qemu_TRUE@am__append_999 = -@COND_i386_qemu_TRUE@am__append_1000 = $(nodist_cbmemc_module_SOURCES) -@COND_i386_qemu_TRUE@am__append_1001 = \ -@COND_i386_qemu_TRUE@ $(nodist_cbmemc_module_SOURCES) \ -@COND_i386_qemu_TRUE@ cbmemc.marker -@COND_i386_qemu_TRUE@am__append_1002 = cbmemc.mod -@COND_i386_qemu_TRUE@am__append_1003 = cbmemc.marker -@COND_i386_coreboot_TRUE@am__append_1004 = cbmemc.module -@COND_i386_coreboot_TRUE@am__append_1005 = cbmemc.module$(EXEEXT) -@COND_i386_coreboot_TRUE@am__append_1006 = -@COND_i386_coreboot_TRUE@am__append_1007 = $(nodist_cbmemc_module_SOURCES) -@COND_i386_coreboot_TRUE@am__append_1008 = \ -@COND_i386_coreboot_TRUE@ $(nodist_cbmemc_module_SOURCES) \ -@COND_i386_coreboot_TRUE@ cbmemc.marker -@COND_i386_coreboot_TRUE@am__append_1009 = cbmemc.mod -@COND_i386_coreboot_TRUE@am__append_1010 = cbmemc.marker -@COND_i386_multiboot_TRUE@am__append_1011 = cbmemc.module -@COND_i386_multiboot_TRUE@am__append_1012 = cbmemc.module$(EXEEXT) -@COND_i386_multiboot_TRUE@am__append_1013 = -@COND_i386_multiboot_TRUE@am__append_1014 = $(nodist_cbmemc_module_SOURCES) -@COND_i386_multiboot_TRUE@am__append_1015 = \ -@COND_i386_multiboot_TRUE@ $(nodist_cbmemc_module_SOURCES) \ -@COND_i386_multiboot_TRUE@ cbmemc.marker -@COND_i386_multiboot_TRUE@am__append_1016 = cbmemc.mod -@COND_i386_multiboot_TRUE@am__append_1017 = cbmemc.marker -@COND_i386_ieee1275_TRUE@am__append_1018 = cbmemc.module -@COND_i386_ieee1275_TRUE@am__append_1019 = cbmemc.module$(EXEEXT) -@COND_i386_ieee1275_TRUE@am__append_1020 = -@COND_i386_ieee1275_TRUE@am__append_1021 = $(nodist_cbmemc_module_SOURCES) -@COND_i386_ieee1275_TRUE@am__append_1022 = \ -@COND_i386_ieee1275_TRUE@ $(nodist_cbmemc_module_SOURCES) \ -@COND_i386_ieee1275_TRUE@ cbmemc.marker -@COND_i386_ieee1275_TRUE@am__append_1023 = cbmemc.mod -@COND_i386_ieee1275_TRUE@am__append_1024 = cbmemc.marker -@COND_x86_64_efi_TRUE@am__append_1025 = cbmemc.module -@COND_x86_64_efi_TRUE@am__append_1026 = cbmemc.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__append_1027 = -@COND_x86_64_efi_TRUE@am__append_1028 = $(nodist_cbmemc_module_SOURCES) -@COND_x86_64_efi_TRUE@am__append_1029 = \ -@COND_x86_64_efi_TRUE@ $(nodist_cbmemc_module_SOURCES) \ -@COND_x86_64_efi_TRUE@ cbmemc.marker -@COND_x86_64_efi_TRUE@am__append_1030 = cbmemc.mod -@COND_x86_64_efi_TRUE@am__append_1031 = cbmemc.marker -@COND_i386_pc_TRUE@am__append_1032 = acpi.module -@COND_i386_pc_TRUE@am__append_1033 = acpi.module$(EXEEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_ia64_efi_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_x86_64_efi_FALSE@acpi_module_DEPENDENCIES = -@COND_i386_pc_TRUE@am__append_1034 = -@COND_i386_pc_TRUE@am__append_1035 = $(nodist_acpi_module_SOURCES) -@COND_i386_pc_TRUE@am__append_1036 = $(nodist_acpi_module_SOURCES) \ -@COND_i386_pc_TRUE@ acpi.marker -@COND_i386_pc_TRUE@am__append_1037 = acpi.mod -@COND_i386_pc_TRUE@am__append_1038 = acpi.marker -@COND_i386_efi_TRUE@am__append_1039 = acpi.module -@COND_i386_efi_TRUE@am__append_1040 = acpi.module$(EXEEXT) -@COND_i386_efi_TRUE@am__append_1041 = -@COND_i386_efi_TRUE@am__append_1042 = $(nodist_acpi_module_SOURCES) -@COND_i386_efi_TRUE@am__append_1043 = $(nodist_acpi_module_SOURCES) \ -@COND_i386_efi_TRUE@ acpi.marker -@COND_i386_efi_TRUE@am__append_1044 = acpi.mod -@COND_i386_efi_TRUE@am__append_1045 = acpi.marker -@COND_i386_coreboot_TRUE@am__append_1046 = acpi.module -@COND_i386_coreboot_TRUE@am__append_1047 = acpi.module$(EXEEXT) -@COND_i386_coreboot_TRUE@am__append_1048 = -@COND_i386_coreboot_TRUE@am__append_1049 = $(nodist_acpi_module_SOURCES) -@COND_i386_coreboot_TRUE@am__append_1050 = \ -@COND_i386_coreboot_TRUE@ $(nodist_acpi_module_SOURCES) \ -@COND_i386_coreboot_TRUE@ acpi.marker -@COND_i386_coreboot_TRUE@am__append_1051 = acpi.mod -@COND_i386_coreboot_TRUE@am__append_1052 = acpi.marker -@COND_i386_multiboot_TRUE@am__append_1053 = acpi.module -@COND_i386_multiboot_TRUE@am__append_1054 = acpi.module$(EXEEXT) -@COND_i386_multiboot_TRUE@am__append_1055 = -@COND_i386_multiboot_TRUE@am__append_1056 = $(nodist_acpi_module_SOURCES) -@COND_i386_multiboot_TRUE@am__append_1057 = \ -@COND_i386_multiboot_TRUE@ $(nodist_acpi_module_SOURCES) \ -@COND_i386_multiboot_TRUE@ acpi.marker -@COND_i386_multiboot_TRUE@am__append_1058 = acpi.mod -@COND_i386_multiboot_TRUE@am__append_1059 = acpi.marker -@COND_x86_64_efi_TRUE@am__append_1060 = acpi.module -@COND_x86_64_efi_TRUE@am__append_1061 = acpi.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__append_1062 = -@COND_x86_64_efi_TRUE@am__append_1063 = $(nodist_acpi_module_SOURCES) -@COND_x86_64_efi_TRUE@am__append_1064 = $(nodist_acpi_module_SOURCES) \ -@COND_x86_64_efi_TRUE@ acpi.marker -@COND_x86_64_efi_TRUE@am__append_1065 = acpi.mod -@COND_x86_64_efi_TRUE@am__append_1066 = acpi.marker -@COND_ia64_efi_TRUE@am__append_1067 = acpi.module -@COND_ia64_efi_TRUE@am__append_1068 = acpi.module$(EXEEXT) -@COND_ia64_efi_TRUE@am__append_1069 = -@COND_ia64_efi_TRUE@am__append_1070 = $(nodist_acpi_module_SOURCES) -@COND_ia64_efi_TRUE@am__append_1071 = $(nodist_acpi_module_SOURCES) \ -@COND_ia64_efi_TRUE@ acpi.marker -@COND_ia64_efi_TRUE@am__append_1072 = acpi.mod -@COND_ia64_efi_TRUE@am__append_1073 = acpi.marker -@COND_arm_efi_TRUE@am__append_1074 = acpi.module -@COND_arm_efi_TRUE@am__append_1075 = acpi.module$(EXEEXT) -@COND_arm_efi_TRUE@am__append_1076 = -@COND_arm_efi_TRUE@am__append_1077 = $(nodist_acpi_module_SOURCES) -@COND_arm_efi_TRUE@am__append_1078 = $(nodist_acpi_module_SOURCES) \ -@COND_arm_efi_TRUE@ acpi.marker -@COND_arm_efi_TRUE@am__append_1079 = acpi.mod -@COND_arm_efi_TRUE@am__append_1080 = acpi.marker -@COND_arm64_efi_TRUE@am__append_1081 = acpi.module -@COND_arm64_efi_TRUE@am__append_1082 = acpi.module$(EXEEXT) -@COND_arm64_efi_TRUE@am__append_1083 = -@COND_arm64_efi_TRUE@am__append_1084 = $(nodist_acpi_module_SOURCES) -@COND_arm64_efi_TRUE@am__append_1085 = $(nodist_acpi_module_SOURCES) \ -@COND_arm64_efi_TRUE@ acpi.marker -@COND_arm64_efi_TRUE@am__append_1086 = acpi.mod -@COND_arm64_efi_TRUE@am__append_1087 = acpi.marker -@COND_riscv32_efi_TRUE@am__append_1088 = acpi.module -@COND_riscv32_efi_TRUE@am__append_1089 = acpi.module$(EXEEXT) -@COND_riscv32_efi_TRUE@am__append_1090 = -@COND_riscv32_efi_TRUE@am__append_1091 = $(nodist_acpi_module_SOURCES) -@COND_riscv32_efi_TRUE@am__append_1092 = \ -@COND_riscv32_efi_TRUE@ $(nodist_acpi_module_SOURCES) \ -@COND_riscv32_efi_TRUE@ acpi.marker -@COND_riscv32_efi_TRUE@am__append_1093 = acpi.mod -@COND_riscv32_efi_TRUE@am__append_1094 = acpi.marker -@COND_riscv64_efi_TRUE@am__append_1095 = acpi.module -@COND_riscv64_efi_TRUE@am__append_1096 = acpi.module$(EXEEXT) -@COND_riscv64_efi_TRUE@am__append_1097 = -@COND_riscv64_efi_TRUE@am__append_1098 = $(nodist_acpi_module_SOURCES) -@COND_riscv64_efi_TRUE@am__append_1099 = \ -@COND_riscv64_efi_TRUE@ $(nodist_acpi_module_SOURCES) \ -@COND_riscv64_efi_TRUE@ acpi.marker -@COND_riscv64_efi_TRUE@am__append_1100 = acpi.mod -@COND_riscv64_efi_TRUE@am__append_1101 = acpi.marker -@COND_i386_pc_TRUE@am__append_1102 = lsacpi.module -@COND_i386_pc_TRUE@am__append_1103 = lsacpi.module$(EXEEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_ia64_efi_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_x86_64_efi_FALSE@lsacpi_module_DEPENDENCIES = -@COND_i386_pc_TRUE@am__append_1104 = -@COND_i386_pc_TRUE@am__append_1105 = $(nodist_lsacpi_module_SOURCES) -@COND_i386_pc_TRUE@am__append_1106 = $(nodist_lsacpi_module_SOURCES) \ -@COND_i386_pc_TRUE@ lsacpi.marker -@COND_i386_pc_TRUE@am__append_1107 = lsacpi.mod -@COND_i386_pc_TRUE@am__append_1108 = lsacpi.marker -@COND_i386_efi_TRUE@am__append_1109 = lsacpi.module -@COND_i386_efi_TRUE@am__append_1110 = lsacpi.module$(EXEEXT) -@COND_i386_efi_TRUE@am__append_1111 = -@COND_i386_efi_TRUE@am__append_1112 = $(nodist_lsacpi_module_SOURCES) -@COND_i386_efi_TRUE@am__append_1113 = $(nodist_lsacpi_module_SOURCES) \ -@COND_i386_efi_TRUE@ lsacpi.marker -@COND_i386_efi_TRUE@am__append_1114 = lsacpi.mod -@COND_i386_efi_TRUE@am__append_1115 = lsacpi.marker -@COND_i386_coreboot_TRUE@am__append_1116 = lsacpi.module -@COND_i386_coreboot_TRUE@am__append_1117 = lsacpi.module$(EXEEXT) -@COND_i386_coreboot_TRUE@am__append_1118 = -@COND_i386_coreboot_TRUE@am__append_1119 = $(nodist_lsacpi_module_SOURCES) -@COND_i386_coreboot_TRUE@am__append_1120 = \ -@COND_i386_coreboot_TRUE@ $(nodist_lsacpi_module_SOURCES) \ -@COND_i386_coreboot_TRUE@ lsacpi.marker -@COND_i386_coreboot_TRUE@am__append_1121 = lsacpi.mod -@COND_i386_coreboot_TRUE@am__append_1122 = lsacpi.marker -@COND_i386_multiboot_TRUE@am__append_1123 = lsacpi.module -@COND_i386_multiboot_TRUE@am__append_1124 = lsacpi.module$(EXEEXT) -@COND_i386_multiboot_TRUE@am__append_1125 = -@COND_i386_multiboot_TRUE@am__append_1126 = $(nodist_lsacpi_module_SOURCES) -@COND_i386_multiboot_TRUE@am__append_1127 = \ -@COND_i386_multiboot_TRUE@ $(nodist_lsacpi_module_SOURCES) \ -@COND_i386_multiboot_TRUE@ lsacpi.marker -@COND_i386_multiboot_TRUE@am__append_1128 = lsacpi.mod -@COND_i386_multiboot_TRUE@am__append_1129 = lsacpi.marker -@COND_x86_64_efi_TRUE@am__append_1130 = lsacpi.module -@COND_x86_64_efi_TRUE@am__append_1131 = lsacpi.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__append_1132 = -@COND_x86_64_efi_TRUE@am__append_1133 = $(nodist_lsacpi_module_SOURCES) -@COND_x86_64_efi_TRUE@am__append_1134 = \ -@COND_x86_64_efi_TRUE@ $(nodist_lsacpi_module_SOURCES) \ -@COND_x86_64_efi_TRUE@ lsacpi.marker -@COND_x86_64_efi_TRUE@am__append_1135 = lsacpi.mod -@COND_x86_64_efi_TRUE@am__append_1136 = lsacpi.marker -@COND_ia64_efi_TRUE@am__append_1137 = lsacpi.module -@COND_ia64_efi_TRUE@am__append_1138 = lsacpi.module$(EXEEXT) -@COND_ia64_efi_TRUE@am__append_1139 = -@COND_ia64_efi_TRUE@am__append_1140 = $(nodist_lsacpi_module_SOURCES) -@COND_ia64_efi_TRUE@am__append_1141 = $(nodist_lsacpi_module_SOURCES) \ -@COND_ia64_efi_TRUE@ lsacpi.marker -@COND_ia64_efi_TRUE@am__append_1142 = lsacpi.mod -@COND_ia64_efi_TRUE@am__append_1143 = lsacpi.marker -@COND_arm_efi_TRUE@am__append_1144 = lsacpi.module -@COND_arm_efi_TRUE@am__append_1145 = lsacpi.module$(EXEEXT) -@COND_arm_efi_TRUE@am__append_1146 = -@COND_arm_efi_TRUE@am__append_1147 = $(nodist_lsacpi_module_SOURCES) -@COND_arm_efi_TRUE@am__append_1148 = $(nodist_lsacpi_module_SOURCES) \ -@COND_arm_efi_TRUE@ lsacpi.marker -@COND_arm_efi_TRUE@am__append_1149 = lsacpi.mod -@COND_arm_efi_TRUE@am__append_1150 = lsacpi.marker -@COND_arm64_efi_TRUE@am__append_1151 = lsacpi.module -@COND_arm64_efi_TRUE@am__append_1152 = lsacpi.module$(EXEEXT) -@COND_arm64_efi_TRUE@am__append_1153 = -@COND_arm64_efi_TRUE@am__append_1154 = $(nodist_lsacpi_module_SOURCES) -@COND_arm64_efi_TRUE@am__append_1155 = \ -@COND_arm64_efi_TRUE@ $(nodist_lsacpi_module_SOURCES) \ -@COND_arm64_efi_TRUE@ lsacpi.marker -@COND_arm64_efi_TRUE@am__append_1156 = lsacpi.mod -@COND_arm64_efi_TRUE@am__append_1157 = lsacpi.marker -@COND_riscv32_efi_TRUE@am__append_1158 = lsacpi.module -@COND_riscv32_efi_TRUE@am__append_1159 = lsacpi.module$(EXEEXT) -@COND_riscv32_efi_TRUE@am__append_1160 = -@COND_riscv32_efi_TRUE@am__append_1161 = $(nodist_lsacpi_module_SOURCES) -@COND_riscv32_efi_TRUE@am__append_1162 = \ -@COND_riscv32_efi_TRUE@ $(nodist_lsacpi_module_SOURCES) \ -@COND_riscv32_efi_TRUE@ lsacpi.marker -@COND_riscv32_efi_TRUE@am__append_1163 = lsacpi.mod -@COND_riscv32_efi_TRUE@am__append_1164 = lsacpi.marker -@COND_riscv64_efi_TRUE@am__append_1165 = lsacpi.module -@COND_riscv64_efi_TRUE@am__append_1166 = lsacpi.module$(EXEEXT) -@COND_riscv64_efi_TRUE@am__append_1167 = -@COND_riscv64_efi_TRUE@am__append_1168 = $(nodist_lsacpi_module_SOURCES) -@COND_riscv64_efi_TRUE@am__append_1169 = \ -@COND_riscv64_efi_TRUE@ $(nodist_lsacpi_module_SOURCES) \ -@COND_riscv64_efi_TRUE@ lsacpi.marker -@COND_riscv64_efi_TRUE@am__append_1170 = lsacpi.mod -@COND_riscv64_efi_TRUE@am__append_1171 = lsacpi.marker -@COND_i386_efi_TRUE@am__append_1172 = lsefisystab.module -@COND_i386_efi_TRUE@am__append_1173 = lsefisystab.module$(EXEEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_i386_efi_FALSE@@COND_ia64_efi_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_x86_64_efi_FALSE@lsefisystab_module_DEPENDENCIES = -@COND_i386_efi_TRUE@am__append_1174 = -@COND_i386_efi_TRUE@am__append_1175 = $(nodist_lsefisystab_module_SOURCES) -@COND_i386_efi_TRUE@am__append_1176 = \ -@COND_i386_efi_TRUE@ $(nodist_lsefisystab_module_SOURCES) \ -@COND_i386_efi_TRUE@ lsefisystab.marker -@COND_i386_efi_TRUE@am__append_1177 = lsefisystab.mod -@COND_i386_efi_TRUE@am__append_1178 = lsefisystab.marker -@COND_x86_64_efi_TRUE@am__append_1179 = lsefisystab.module -@COND_x86_64_efi_TRUE@am__append_1180 = lsefisystab.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__append_1181 = -@COND_x86_64_efi_TRUE@am__append_1182 = $(nodist_lsefisystab_module_SOURCES) -@COND_x86_64_efi_TRUE@am__append_1183 = \ -@COND_x86_64_efi_TRUE@ $(nodist_lsefisystab_module_SOURCES) \ -@COND_x86_64_efi_TRUE@ lsefisystab.marker -@COND_x86_64_efi_TRUE@am__append_1184 = lsefisystab.mod -@COND_x86_64_efi_TRUE@am__append_1185 = lsefisystab.marker -@COND_ia64_efi_TRUE@am__append_1186 = lsefisystab.module -@COND_ia64_efi_TRUE@am__append_1187 = lsefisystab.module$(EXEEXT) -@COND_ia64_efi_TRUE@am__append_1188 = -@COND_ia64_efi_TRUE@am__append_1189 = $(nodist_lsefisystab_module_SOURCES) -@COND_ia64_efi_TRUE@am__append_1190 = \ -@COND_ia64_efi_TRUE@ $(nodist_lsefisystab_module_SOURCES) \ -@COND_ia64_efi_TRUE@ lsefisystab.marker -@COND_ia64_efi_TRUE@am__append_1191 = lsefisystab.mod -@COND_ia64_efi_TRUE@am__append_1192 = lsefisystab.marker -@COND_arm_efi_TRUE@am__append_1193 = lsefisystab.module -@COND_arm_efi_TRUE@am__append_1194 = lsefisystab.module$(EXEEXT) -@COND_arm_efi_TRUE@am__append_1195 = -@COND_arm_efi_TRUE@am__append_1196 = $(nodist_lsefisystab_module_SOURCES) -@COND_arm_efi_TRUE@am__append_1197 = \ -@COND_arm_efi_TRUE@ $(nodist_lsefisystab_module_SOURCES) \ -@COND_arm_efi_TRUE@ lsefisystab.marker -@COND_arm_efi_TRUE@am__append_1198 = lsefisystab.mod -@COND_arm_efi_TRUE@am__append_1199 = lsefisystab.marker -@COND_arm64_efi_TRUE@am__append_1200 = lsefisystab.module -@COND_arm64_efi_TRUE@am__append_1201 = lsefisystab.module$(EXEEXT) -@COND_arm64_efi_TRUE@am__append_1202 = -@COND_arm64_efi_TRUE@am__append_1203 = $(nodist_lsefisystab_module_SOURCES) -@COND_arm64_efi_TRUE@am__append_1204 = \ -@COND_arm64_efi_TRUE@ $(nodist_lsefisystab_module_SOURCES) \ -@COND_arm64_efi_TRUE@ lsefisystab.marker -@COND_arm64_efi_TRUE@am__append_1205 = lsefisystab.mod -@COND_arm64_efi_TRUE@am__append_1206 = lsefisystab.marker -@COND_riscv32_efi_TRUE@am__append_1207 = lsefisystab.module -@COND_riscv32_efi_TRUE@am__append_1208 = lsefisystab.module$(EXEEXT) -@COND_riscv32_efi_TRUE@am__append_1209 = -@COND_riscv32_efi_TRUE@am__append_1210 = $(nodist_lsefisystab_module_SOURCES) -@COND_riscv32_efi_TRUE@am__append_1211 = \ -@COND_riscv32_efi_TRUE@ $(nodist_lsefisystab_module_SOURCES) \ -@COND_riscv32_efi_TRUE@ lsefisystab.marker -@COND_riscv32_efi_TRUE@am__append_1212 = lsefisystab.mod -@COND_riscv32_efi_TRUE@am__append_1213 = lsefisystab.marker -@COND_riscv64_efi_TRUE@am__append_1214 = lsefisystab.module -@COND_riscv64_efi_TRUE@am__append_1215 = lsefisystab.module$(EXEEXT) -@COND_riscv64_efi_TRUE@am__append_1216 = -@COND_riscv64_efi_TRUE@am__append_1217 = $(nodist_lsefisystab_module_SOURCES) -@COND_riscv64_efi_TRUE@am__append_1218 = \ -@COND_riscv64_efi_TRUE@ $(nodist_lsefisystab_module_SOURCES) \ -@COND_riscv64_efi_TRUE@ lsefisystab.marker -@COND_riscv64_efi_TRUE@am__append_1219 = lsefisystab.mod -@COND_riscv64_efi_TRUE@am__append_1220 = lsefisystab.marker -@COND_i386_efi_TRUE@am__append_1221 = lssal.module -@COND_i386_efi_TRUE@am__append_1222 = lssal.module$(EXEEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_i386_efi_FALSE@@COND_ia64_efi_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_x86_64_efi_FALSE@lssal_module_DEPENDENCIES = -@COND_i386_efi_TRUE@am__append_1223 = -@COND_i386_efi_TRUE@am__append_1224 = $(nodist_lssal_module_SOURCES) -@COND_i386_efi_TRUE@am__append_1225 = $(nodist_lssal_module_SOURCES) \ -@COND_i386_efi_TRUE@ lssal.marker -@COND_i386_efi_TRUE@am__append_1226 = lssal.mod -@COND_i386_efi_TRUE@am__append_1227 = lssal.marker -@COND_x86_64_efi_TRUE@am__append_1228 = lssal.module -@COND_x86_64_efi_TRUE@am__append_1229 = lssal.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__append_1230 = -@COND_x86_64_efi_TRUE@am__append_1231 = $(nodist_lssal_module_SOURCES) -@COND_x86_64_efi_TRUE@am__append_1232 = \ -@COND_x86_64_efi_TRUE@ $(nodist_lssal_module_SOURCES) \ -@COND_x86_64_efi_TRUE@ lssal.marker -@COND_x86_64_efi_TRUE@am__append_1233 = lssal.mod -@COND_x86_64_efi_TRUE@am__append_1234 = lssal.marker -@COND_ia64_efi_TRUE@am__append_1235 = lssal.module -@COND_ia64_efi_TRUE@am__append_1236 = lssal.module$(EXEEXT) -@COND_ia64_efi_TRUE@am__append_1237 = -@COND_ia64_efi_TRUE@am__append_1238 = $(nodist_lssal_module_SOURCES) -@COND_ia64_efi_TRUE@am__append_1239 = $(nodist_lssal_module_SOURCES) \ -@COND_ia64_efi_TRUE@ lssal.marker -@COND_ia64_efi_TRUE@am__append_1240 = lssal.mod -@COND_ia64_efi_TRUE@am__append_1241 = lssal.marker -@COND_arm_efi_TRUE@am__append_1242 = lssal.module -@COND_arm_efi_TRUE@am__append_1243 = lssal.module$(EXEEXT) -@COND_arm_efi_TRUE@am__append_1244 = -@COND_arm_efi_TRUE@am__append_1245 = $(nodist_lssal_module_SOURCES) -@COND_arm_efi_TRUE@am__append_1246 = $(nodist_lssal_module_SOURCES) \ -@COND_arm_efi_TRUE@ lssal.marker -@COND_arm_efi_TRUE@am__append_1247 = lssal.mod -@COND_arm_efi_TRUE@am__append_1248 = lssal.marker -@COND_arm64_efi_TRUE@am__append_1249 = lssal.module -@COND_arm64_efi_TRUE@am__append_1250 = lssal.module$(EXEEXT) -@COND_arm64_efi_TRUE@am__append_1251 = -@COND_arm64_efi_TRUE@am__append_1252 = $(nodist_lssal_module_SOURCES) -@COND_arm64_efi_TRUE@am__append_1253 = $(nodist_lssal_module_SOURCES) \ -@COND_arm64_efi_TRUE@ lssal.marker -@COND_arm64_efi_TRUE@am__append_1254 = lssal.mod -@COND_arm64_efi_TRUE@am__append_1255 = lssal.marker -@COND_riscv32_efi_TRUE@am__append_1256 = lssal.module -@COND_riscv32_efi_TRUE@am__append_1257 = lssal.module$(EXEEXT) -@COND_riscv32_efi_TRUE@am__append_1258 = -@COND_riscv32_efi_TRUE@am__append_1259 = $(nodist_lssal_module_SOURCES) -@COND_riscv32_efi_TRUE@am__append_1260 = \ -@COND_riscv32_efi_TRUE@ $(nodist_lssal_module_SOURCES) \ -@COND_riscv32_efi_TRUE@ lssal.marker -@COND_riscv32_efi_TRUE@am__append_1261 = lssal.mod -@COND_riscv32_efi_TRUE@am__append_1262 = lssal.marker -@COND_riscv64_efi_TRUE@am__append_1263 = lssal.module -@COND_riscv64_efi_TRUE@am__append_1264 = lssal.module$(EXEEXT) -@COND_riscv64_efi_TRUE@am__append_1265 = -@COND_riscv64_efi_TRUE@am__append_1266 = $(nodist_lssal_module_SOURCES) -@COND_riscv64_efi_TRUE@am__append_1267 = \ -@COND_riscv64_efi_TRUE@ $(nodist_lssal_module_SOURCES) \ -@COND_riscv64_efi_TRUE@ lssal.marker -@COND_riscv64_efi_TRUE@am__append_1268 = lssal.mod -@COND_riscv64_efi_TRUE@am__append_1269 = lssal.marker -@COND_i386_efi_TRUE@am__append_1270 = lsefimmap.module -@COND_i386_efi_TRUE@am__append_1271 = lsefimmap.module$(EXEEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_i386_efi_FALSE@@COND_ia64_efi_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_x86_64_efi_FALSE@lsefimmap_module_DEPENDENCIES = -@COND_i386_efi_TRUE@am__append_1272 = -@COND_i386_efi_TRUE@am__append_1273 = $(nodist_lsefimmap_module_SOURCES) -@COND_i386_efi_TRUE@am__append_1274 = \ -@COND_i386_efi_TRUE@ $(nodist_lsefimmap_module_SOURCES) \ -@COND_i386_efi_TRUE@ lsefimmap.marker -@COND_i386_efi_TRUE@am__append_1275 = lsefimmap.mod -@COND_i386_efi_TRUE@am__append_1276 = lsefimmap.marker -@COND_x86_64_efi_TRUE@am__append_1277 = lsefimmap.module -@COND_x86_64_efi_TRUE@am__append_1278 = lsefimmap.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__append_1279 = -@COND_x86_64_efi_TRUE@am__append_1280 = $(nodist_lsefimmap_module_SOURCES) -@COND_x86_64_efi_TRUE@am__append_1281 = \ -@COND_x86_64_efi_TRUE@ $(nodist_lsefimmap_module_SOURCES) \ -@COND_x86_64_efi_TRUE@ lsefimmap.marker -@COND_x86_64_efi_TRUE@am__append_1282 = lsefimmap.mod -@COND_x86_64_efi_TRUE@am__append_1283 = lsefimmap.marker -@COND_ia64_efi_TRUE@am__append_1284 = lsefimmap.module -@COND_ia64_efi_TRUE@am__append_1285 = lsefimmap.module$(EXEEXT) -@COND_ia64_efi_TRUE@am__append_1286 = -@COND_ia64_efi_TRUE@am__append_1287 = $(nodist_lsefimmap_module_SOURCES) -@COND_ia64_efi_TRUE@am__append_1288 = \ -@COND_ia64_efi_TRUE@ $(nodist_lsefimmap_module_SOURCES) \ -@COND_ia64_efi_TRUE@ lsefimmap.marker -@COND_ia64_efi_TRUE@am__append_1289 = lsefimmap.mod -@COND_ia64_efi_TRUE@am__append_1290 = lsefimmap.marker -@COND_arm_efi_TRUE@am__append_1291 = lsefimmap.module -@COND_arm_efi_TRUE@am__append_1292 = lsefimmap.module$(EXEEXT) -@COND_arm_efi_TRUE@am__append_1293 = -@COND_arm_efi_TRUE@am__append_1294 = $(nodist_lsefimmap_module_SOURCES) -@COND_arm_efi_TRUE@am__append_1295 = \ -@COND_arm_efi_TRUE@ $(nodist_lsefimmap_module_SOURCES) \ -@COND_arm_efi_TRUE@ lsefimmap.marker -@COND_arm_efi_TRUE@am__append_1296 = lsefimmap.mod -@COND_arm_efi_TRUE@am__append_1297 = lsefimmap.marker -@COND_arm64_efi_TRUE@am__append_1298 = lsefimmap.module -@COND_arm64_efi_TRUE@am__append_1299 = lsefimmap.module$(EXEEXT) -@COND_arm64_efi_TRUE@am__append_1300 = -@COND_arm64_efi_TRUE@am__append_1301 = $(nodist_lsefimmap_module_SOURCES) -@COND_arm64_efi_TRUE@am__append_1302 = \ -@COND_arm64_efi_TRUE@ $(nodist_lsefimmap_module_SOURCES) \ -@COND_arm64_efi_TRUE@ lsefimmap.marker -@COND_arm64_efi_TRUE@am__append_1303 = lsefimmap.mod -@COND_arm64_efi_TRUE@am__append_1304 = lsefimmap.marker -@COND_riscv32_efi_TRUE@am__append_1305 = lsefimmap.module -@COND_riscv32_efi_TRUE@am__append_1306 = lsefimmap.module$(EXEEXT) -@COND_riscv32_efi_TRUE@am__append_1307 = -@COND_riscv32_efi_TRUE@am__append_1308 = $(nodist_lsefimmap_module_SOURCES) -@COND_riscv32_efi_TRUE@am__append_1309 = \ -@COND_riscv32_efi_TRUE@ $(nodist_lsefimmap_module_SOURCES) \ -@COND_riscv32_efi_TRUE@ lsefimmap.marker -@COND_riscv32_efi_TRUE@am__append_1310 = lsefimmap.mod -@COND_riscv32_efi_TRUE@am__append_1311 = lsefimmap.marker -@COND_riscv64_efi_TRUE@am__append_1312 = lsefimmap.module -@COND_riscv64_efi_TRUE@am__append_1313 = lsefimmap.module$(EXEEXT) -@COND_riscv64_efi_TRUE@am__append_1314 = -@COND_riscv64_efi_TRUE@am__append_1315 = $(nodist_lsefimmap_module_SOURCES) -@COND_riscv64_efi_TRUE@am__append_1316 = \ -@COND_riscv64_efi_TRUE@ $(nodist_lsefimmap_module_SOURCES) \ -@COND_riscv64_efi_TRUE@ lsefimmap.marker -@COND_riscv64_efi_TRUE@am__append_1317 = lsefimmap.mod -@COND_riscv64_efi_TRUE@am__append_1318 = lsefimmap.marker -@COND_i386_efi_TRUE@am__append_1319 = lsefi.module -@COND_i386_efi_TRUE@am__append_1320 = lsefi.module$(EXEEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_i386_efi_FALSE@@COND_ia64_efi_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_x86_64_efi_FALSE@lsefi_module_DEPENDENCIES = -@COND_i386_efi_TRUE@am__append_1321 = -@COND_i386_efi_TRUE@am__append_1322 = $(nodist_lsefi_module_SOURCES) -@COND_i386_efi_TRUE@am__append_1323 = $(nodist_lsefi_module_SOURCES) \ -@COND_i386_efi_TRUE@ lsefi.marker -@COND_i386_efi_TRUE@am__append_1324 = lsefi.mod -@COND_i386_efi_TRUE@am__append_1325 = lsefi.marker -@COND_x86_64_efi_TRUE@am__append_1326 = lsefi.module -@COND_x86_64_efi_TRUE@am__append_1327 = lsefi.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__append_1328 = -@COND_x86_64_efi_TRUE@am__append_1329 = $(nodist_lsefi_module_SOURCES) -@COND_x86_64_efi_TRUE@am__append_1330 = \ -@COND_x86_64_efi_TRUE@ $(nodist_lsefi_module_SOURCES) \ -@COND_x86_64_efi_TRUE@ lsefi.marker -@COND_x86_64_efi_TRUE@am__append_1331 = lsefi.mod -@COND_x86_64_efi_TRUE@am__append_1332 = lsefi.marker -@COND_ia64_efi_TRUE@am__append_1333 = lsefi.module -@COND_ia64_efi_TRUE@am__append_1334 = lsefi.module$(EXEEXT) -@COND_ia64_efi_TRUE@am__append_1335 = -@COND_ia64_efi_TRUE@am__append_1336 = $(nodist_lsefi_module_SOURCES) -@COND_ia64_efi_TRUE@am__append_1337 = $(nodist_lsefi_module_SOURCES) \ -@COND_ia64_efi_TRUE@ lsefi.marker -@COND_ia64_efi_TRUE@am__append_1338 = lsefi.mod -@COND_ia64_efi_TRUE@am__append_1339 = lsefi.marker -@COND_arm_efi_TRUE@am__append_1340 = lsefi.module -@COND_arm_efi_TRUE@am__append_1341 = lsefi.module$(EXEEXT) -@COND_arm_efi_TRUE@am__append_1342 = -@COND_arm_efi_TRUE@am__append_1343 = $(nodist_lsefi_module_SOURCES) -@COND_arm_efi_TRUE@am__append_1344 = $(nodist_lsefi_module_SOURCES) \ -@COND_arm_efi_TRUE@ lsefi.marker -@COND_arm_efi_TRUE@am__append_1345 = lsefi.mod -@COND_arm_efi_TRUE@am__append_1346 = lsefi.marker -@COND_arm64_efi_TRUE@am__append_1347 = lsefi.module -@COND_arm64_efi_TRUE@am__append_1348 = lsefi.module$(EXEEXT) -@COND_arm64_efi_TRUE@am__append_1349 = -@COND_arm64_efi_TRUE@am__append_1350 = $(nodist_lsefi_module_SOURCES) -@COND_arm64_efi_TRUE@am__append_1351 = $(nodist_lsefi_module_SOURCES) \ -@COND_arm64_efi_TRUE@ lsefi.marker -@COND_arm64_efi_TRUE@am__append_1352 = lsefi.mod -@COND_arm64_efi_TRUE@am__append_1353 = lsefi.marker -@COND_riscv32_efi_TRUE@am__append_1354 = lsefi.module -@COND_riscv32_efi_TRUE@am__append_1355 = lsefi.module$(EXEEXT) -@COND_riscv32_efi_TRUE@am__append_1356 = -@COND_riscv32_efi_TRUE@am__append_1357 = $(nodist_lsefi_module_SOURCES) -@COND_riscv32_efi_TRUE@am__append_1358 = \ -@COND_riscv32_efi_TRUE@ $(nodist_lsefi_module_SOURCES) \ -@COND_riscv32_efi_TRUE@ lsefi.marker -@COND_riscv32_efi_TRUE@am__append_1359 = lsefi.mod -@COND_riscv32_efi_TRUE@am__append_1360 = lsefi.marker -@COND_riscv64_efi_TRUE@am__append_1361 = lsefi.module -@COND_riscv64_efi_TRUE@am__append_1362 = lsefi.module$(EXEEXT) -@COND_riscv64_efi_TRUE@am__append_1363 = -@COND_riscv64_efi_TRUE@am__append_1364 = $(nodist_lsefi_module_SOURCES) -@COND_riscv64_efi_TRUE@am__append_1365 = \ -@COND_riscv64_efi_TRUE@ $(nodist_lsefi_module_SOURCES) \ -@COND_riscv64_efi_TRUE@ lsefi.marker -@COND_riscv64_efi_TRUE@am__append_1366 = lsefi.mod -@COND_riscv64_efi_TRUE@am__append_1367 = lsefi.marker -@COND_i386_efi_TRUE@am__append_1368 = efifwsetup.module -@COND_i386_efi_TRUE@am__append_1369 = efifwsetup.module$(EXEEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_i386_efi_FALSE@@COND_ia64_efi_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_x86_64_efi_FALSE@efifwsetup_module_DEPENDENCIES = -@COND_i386_efi_TRUE@am__append_1370 = -@COND_i386_efi_TRUE@am__append_1371 = $(nodist_efifwsetup_module_SOURCES) -@COND_i386_efi_TRUE@am__append_1372 = \ -@COND_i386_efi_TRUE@ $(nodist_efifwsetup_module_SOURCES) \ -@COND_i386_efi_TRUE@ efifwsetup.marker -@COND_i386_efi_TRUE@am__append_1373 = efifwsetup.mod -@COND_i386_efi_TRUE@am__append_1374 = efifwsetup.marker -@COND_x86_64_efi_TRUE@am__append_1375 = efifwsetup.module -@COND_x86_64_efi_TRUE@am__append_1376 = efifwsetup.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__append_1377 = -@COND_x86_64_efi_TRUE@am__append_1378 = $(nodist_efifwsetup_module_SOURCES) -@COND_x86_64_efi_TRUE@am__append_1379 = \ -@COND_x86_64_efi_TRUE@ $(nodist_efifwsetup_module_SOURCES) \ -@COND_x86_64_efi_TRUE@ efifwsetup.marker -@COND_x86_64_efi_TRUE@am__append_1380 = efifwsetup.mod -@COND_x86_64_efi_TRUE@am__append_1381 = efifwsetup.marker -@COND_ia64_efi_TRUE@am__append_1382 = efifwsetup.module -@COND_ia64_efi_TRUE@am__append_1383 = efifwsetup.module$(EXEEXT) -@COND_ia64_efi_TRUE@am__append_1384 = -@COND_ia64_efi_TRUE@am__append_1385 = $(nodist_efifwsetup_module_SOURCES) -@COND_ia64_efi_TRUE@am__append_1386 = \ -@COND_ia64_efi_TRUE@ $(nodist_efifwsetup_module_SOURCES) \ -@COND_ia64_efi_TRUE@ efifwsetup.marker -@COND_ia64_efi_TRUE@am__append_1387 = efifwsetup.mod -@COND_ia64_efi_TRUE@am__append_1388 = efifwsetup.marker -@COND_arm_efi_TRUE@am__append_1389 = efifwsetup.module -@COND_arm_efi_TRUE@am__append_1390 = efifwsetup.module$(EXEEXT) -@COND_arm_efi_TRUE@am__append_1391 = -@COND_arm_efi_TRUE@am__append_1392 = $(nodist_efifwsetup_module_SOURCES) -@COND_arm_efi_TRUE@am__append_1393 = \ -@COND_arm_efi_TRUE@ $(nodist_efifwsetup_module_SOURCES) \ -@COND_arm_efi_TRUE@ efifwsetup.marker -@COND_arm_efi_TRUE@am__append_1394 = efifwsetup.mod -@COND_arm_efi_TRUE@am__append_1395 = efifwsetup.marker -@COND_arm64_efi_TRUE@am__append_1396 = efifwsetup.module -@COND_arm64_efi_TRUE@am__append_1397 = efifwsetup.module$(EXEEXT) -@COND_arm64_efi_TRUE@am__append_1398 = -@COND_arm64_efi_TRUE@am__append_1399 = $(nodist_efifwsetup_module_SOURCES) -@COND_arm64_efi_TRUE@am__append_1400 = \ -@COND_arm64_efi_TRUE@ $(nodist_efifwsetup_module_SOURCES) \ -@COND_arm64_efi_TRUE@ efifwsetup.marker -@COND_arm64_efi_TRUE@am__append_1401 = efifwsetup.mod -@COND_arm64_efi_TRUE@am__append_1402 = efifwsetup.marker -@COND_riscv32_efi_TRUE@am__append_1403 = efifwsetup.module -@COND_riscv32_efi_TRUE@am__append_1404 = efifwsetup.module$(EXEEXT) -@COND_riscv32_efi_TRUE@am__append_1405 = -@COND_riscv32_efi_TRUE@am__append_1406 = $(nodist_efifwsetup_module_SOURCES) -@COND_riscv32_efi_TRUE@am__append_1407 = \ -@COND_riscv32_efi_TRUE@ $(nodist_efifwsetup_module_SOURCES) \ -@COND_riscv32_efi_TRUE@ efifwsetup.marker -@COND_riscv32_efi_TRUE@am__append_1408 = efifwsetup.mod -@COND_riscv32_efi_TRUE@am__append_1409 = efifwsetup.marker -@COND_riscv64_efi_TRUE@am__append_1410 = efifwsetup.module -@COND_riscv64_efi_TRUE@am__append_1411 = efifwsetup.module$(EXEEXT) -@COND_riscv64_efi_TRUE@am__append_1412 = -@COND_riscv64_efi_TRUE@am__append_1413 = $(nodist_efifwsetup_module_SOURCES) -@COND_riscv64_efi_TRUE@am__append_1414 = \ -@COND_riscv64_efi_TRUE@ $(nodist_efifwsetup_module_SOURCES) \ -@COND_riscv64_efi_TRUE@ efifwsetup.marker -@COND_riscv64_efi_TRUE@am__append_1415 = efifwsetup.mod -@COND_riscv64_efi_TRUE@am__append_1416 = efifwsetup.marker -@COND_emu_TRUE@am__append_1417 = boot.module -@COND_emu_TRUE@am__append_1418 = boot.module$(EXEEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_FALSE@@COND_x86_64_efi_FALSE@boot_module_DEPENDENCIES = -@COND_emu_TRUE@am__append_1419 = -@COND_emu_TRUE@am__append_1420 = $(nodist_boot_module_SOURCES) -@COND_emu_TRUE@am__append_1421 = $(nodist_boot_module_SOURCES) \ -@COND_emu_TRUE@ boot.marker -@COND_emu_TRUE@am__append_1422 = boot.mod -@COND_emu_TRUE@am__append_1423 = boot.marker -@COND_i386_pc_TRUE@am__append_1424 = boot.module -@COND_i386_pc_TRUE@am__append_1425 = boot.module$(EXEEXT) -@COND_i386_pc_TRUE@am__append_1426 = -@COND_i386_pc_TRUE@am__append_1427 = $(nodist_boot_module_SOURCES) -@COND_i386_pc_TRUE@am__append_1428 = $(nodist_boot_module_SOURCES) \ -@COND_i386_pc_TRUE@ boot.marker -@COND_i386_pc_TRUE@am__append_1429 = boot.mod -@COND_i386_pc_TRUE@am__append_1430 = boot.marker -@COND_i386_efi_TRUE@am__append_1431 = boot.module -@COND_i386_efi_TRUE@am__append_1432 = boot.module$(EXEEXT) -@COND_i386_efi_TRUE@am__append_1433 = -@COND_i386_efi_TRUE@am__append_1434 = $(nodist_boot_module_SOURCES) -@COND_i386_efi_TRUE@am__append_1435 = $(nodist_boot_module_SOURCES) \ -@COND_i386_efi_TRUE@ boot.marker -@COND_i386_efi_TRUE@am__append_1436 = boot.mod -@COND_i386_efi_TRUE@am__append_1437 = boot.marker -@COND_i386_qemu_TRUE@am__append_1438 = boot.module -@COND_i386_qemu_TRUE@am__append_1439 = boot.module$(EXEEXT) -@COND_i386_qemu_TRUE@am__append_1440 = -@COND_i386_qemu_TRUE@am__append_1441 = $(nodist_boot_module_SOURCES) -@COND_i386_qemu_TRUE@am__append_1442 = $(nodist_boot_module_SOURCES) \ -@COND_i386_qemu_TRUE@ boot.marker -@COND_i386_qemu_TRUE@am__append_1443 = boot.mod -@COND_i386_qemu_TRUE@am__append_1444 = boot.marker -@COND_i386_coreboot_TRUE@am__append_1445 = boot.module -@COND_i386_coreboot_TRUE@am__append_1446 = boot.module$(EXEEXT) -@COND_i386_coreboot_TRUE@am__append_1447 = -@COND_i386_coreboot_TRUE@am__append_1448 = $(nodist_boot_module_SOURCES) -@COND_i386_coreboot_TRUE@am__append_1449 = \ -@COND_i386_coreboot_TRUE@ $(nodist_boot_module_SOURCES) \ -@COND_i386_coreboot_TRUE@ boot.marker -@COND_i386_coreboot_TRUE@am__append_1450 = boot.mod -@COND_i386_coreboot_TRUE@am__append_1451 = boot.marker -@COND_i386_multiboot_TRUE@am__append_1452 = boot.module -@COND_i386_multiboot_TRUE@am__append_1453 = boot.module$(EXEEXT) -@COND_i386_multiboot_TRUE@am__append_1454 = -@COND_i386_multiboot_TRUE@am__append_1455 = $(nodist_boot_module_SOURCES) -@COND_i386_multiboot_TRUE@am__append_1456 = \ -@COND_i386_multiboot_TRUE@ $(nodist_boot_module_SOURCES) \ -@COND_i386_multiboot_TRUE@ boot.marker -@COND_i386_multiboot_TRUE@am__append_1457 = boot.mod -@COND_i386_multiboot_TRUE@am__append_1458 = boot.marker -@COND_i386_ieee1275_TRUE@am__append_1459 = boot.module -@COND_i386_ieee1275_TRUE@am__append_1460 = boot.module$(EXEEXT) -@COND_i386_ieee1275_TRUE@am__append_1461 = -@COND_i386_ieee1275_TRUE@am__append_1462 = $(nodist_boot_module_SOURCES) -@COND_i386_ieee1275_TRUE@am__append_1463 = \ -@COND_i386_ieee1275_TRUE@ $(nodist_boot_module_SOURCES) \ -@COND_i386_ieee1275_TRUE@ boot.marker -@COND_i386_ieee1275_TRUE@am__append_1464 = boot.mod -@COND_i386_ieee1275_TRUE@am__append_1465 = boot.marker -@COND_x86_64_efi_TRUE@am__append_1466 = boot.module -@COND_x86_64_efi_TRUE@am__append_1467 = boot.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__append_1468 = -@COND_x86_64_efi_TRUE@am__append_1469 = $(nodist_boot_module_SOURCES) -@COND_x86_64_efi_TRUE@am__append_1470 = $(nodist_boot_module_SOURCES) \ -@COND_x86_64_efi_TRUE@ boot.marker -@COND_x86_64_efi_TRUE@am__append_1471 = boot.mod -@COND_x86_64_efi_TRUE@am__append_1472 = boot.marker -@COND_sparc64_ieee1275_TRUE@am__append_1473 = boot.module -@COND_sparc64_ieee1275_TRUE@am__append_1474 = boot.module$(EXEEXT) -@COND_sparc64_ieee1275_TRUE@am__append_1475 = -@COND_sparc64_ieee1275_TRUE@am__append_1476 = $(nodist_boot_module_SOURCES) -@COND_sparc64_ieee1275_TRUE@am__append_1477 = \ -@COND_sparc64_ieee1275_TRUE@ $(nodist_boot_module_SOURCES) \ -@COND_sparc64_ieee1275_TRUE@ boot.marker -@COND_sparc64_ieee1275_TRUE@am__append_1478 = boot.mod -@COND_sparc64_ieee1275_TRUE@am__append_1479 = boot.marker -@COND_powerpc_ieee1275_TRUE@am__append_1480 = boot.module -@COND_powerpc_ieee1275_TRUE@am__append_1481 = boot.module$(EXEEXT) -@COND_powerpc_ieee1275_TRUE@am__append_1482 = -@COND_powerpc_ieee1275_TRUE@am__append_1483 = $(nodist_boot_module_SOURCES) -@COND_powerpc_ieee1275_TRUE@am__append_1484 = \ -@COND_powerpc_ieee1275_TRUE@ $(nodist_boot_module_SOURCES) \ -@COND_powerpc_ieee1275_TRUE@ boot.marker -@COND_powerpc_ieee1275_TRUE@am__append_1485 = boot.mod -@COND_powerpc_ieee1275_TRUE@am__append_1486 = boot.marker -@COND_mips_arc_TRUE@am__append_1487 = boot.module -@COND_mips_arc_TRUE@am__append_1488 = boot.module$(EXEEXT) -@COND_mips_arc_TRUE@am__append_1489 = -@COND_mips_arc_TRUE@am__append_1490 = $(nodist_boot_module_SOURCES) -@COND_mips_arc_TRUE@am__append_1491 = $(nodist_boot_module_SOURCES) \ -@COND_mips_arc_TRUE@ boot.marker -@COND_mips_arc_TRUE@am__append_1492 = boot.mod -@COND_mips_arc_TRUE@am__append_1493 = boot.marker -@COND_ia64_efi_TRUE@am__append_1494 = boot.module -@COND_ia64_efi_TRUE@am__append_1495 = boot.module$(EXEEXT) -@COND_ia64_efi_TRUE@am__append_1496 = -@COND_ia64_efi_TRUE@am__append_1497 = $(nodist_boot_module_SOURCES) -@COND_ia64_efi_TRUE@am__append_1498 = $(nodist_boot_module_SOURCES) \ -@COND_ia64_efi_TRUE@ boot.marker -@COND_ia64_efi_TRUE@am__append_1499 = boot.mod -@COND_ia64_efi_TRUE@am__append_1500 = boot.marker -@COND_arm_uboot_TRUE@am__append_1501 = boot.module -@COND_arm_uboot_TRUE@am__append_1502 = boot.module$(EXEEXT) -@COND_arm_uboot_TRUE@am__append_1503 = -@COND_arm_uboot_TRUE@am__append_1504 = $(nodist_boot_module_SOURCES) -@COND_arm_uboot_TRUE@am__append_1505 = $(nodist_boot_module_SOURCES) \ -@COND_arm_uboot_TRUE@ boot.marker -@COND_arm_uboot_TRUE@am__append_1506 = boot.mod -@COND_arm_uboot_TRUE@am__append_1507 = boot.marker -@COND_arm_efi_TRUE@am__append_1508 = boot.module -@COND_arm_efi_TRUE@am__append_1509 = boot.module$(EXEEXT) -@COND_arm_efi_TRUE@am__append_1510 = -@COND_arm_efi_TRUE@am__append_1511 = $(nodist_boot_module_SOURCES) -@COND_arm_efi_TRUE@am__append_1512 = $(nodist_boot_module_SOURCES) \ -@COND_arm_efi_TRUE@ boot.marker -@COND_arm_efi_TRUE@am__append_1513 = boot.mod -@COND_arm_efi_TRUE@am__append_1514 = boot.marker -@COND_arm64_efi_TRUE@am__append_1515 = boot.module -@COND_arm64_efi_TRUE@am__append_1516 = boot.module$(EXEEXT) -@COND_arm64_efi_TRUE@am__append_1517 = -@COND_arm64_efi_TRUE@am__append_1518 = $(nodist_boot_module_SOURCES) -@COND_arm64_efi_TRUE@am__append_1519 = $(nodist_boot_module_SOURCES) \ -@COND_arm64_efi_TRUE@ boot.marker -@COND_arm64_efi_TRUE@am__append_1520 = boot.mod -@COND_arm64_efi_TRUE@am__append_1521 = boot.marker -@COND_arm_coreboot_TRUE@am__append_1522 = boot.module -@COND_arm_coreboot_TRUE@am__append_1523 = boot.module$(EXEEXT) -@COND_arm_coreboot_TRUE@am__append_1524 = -@COND_arm_coreboot_TRUE@am__append_1525 = $(nodist_boot_module_SOURCES) -@COND_arm_coreboot_TRUE@am__append_1526 = \ -@COND_arm_coreboot_TRUE@ $(nodist_boot_module_SOURCES) \ -@COND_arm_coreboot_TRUE@ boot.marker -@COND_arm_coreboot_TRUE@am__append_1527 = boot.mod -@COND_arm_coreboot_TRUE@am__append_1528 = boot.marker -@COND_riscv32_efi_TRUE@am__append_1529 = boot.module -@COND_riscv32_efi_TRUE@am__append_1530 = boot.module$(EXEEXT) -@COND_riscv32_efi_TRUE@am__append_1531 = -@COND_riscv32_efi_TRUE@am__append_1532 = $(nodist_boot_module_SOURCES) -@COND_riscv32_efi_TRUE@am__append_1533 = \ -@COND_riscv32_efi_TRUE@ $(nodist_boot_module_SOURCES) \ -@COND_riscv32_efi_TRUE@ boot.marker -@COND_riscv32_efi_TRUE@am__append_1534 = boot.mod -@COND_riscv32_efi_TRUE@am__append_1535 = boot.marker -@COND_riscv64_efi_TRUE@am__append_1536 = boot.module -@COND_riscv64_efi_TRUE@am__append_1537 = boot.module$(EXEEXT) -@COND_riscv64_efi_TRUE@am__append_1538 = -@COND_riscv64_efi_TRUE@am__append_1539 = $(nodist_boot_module_SOURCES) -@COND_riscv64_efi_TRUE@am__append_1540 = \ -@COND_riscv64_efi_TRUE@ $(nodist_boot_module_SOURCES) \ -@COND_riscv64_efi_TRUE@ boot.marker -@COND_riscv64_efi_TRUE@am__append_1541 = boot.mod -@COND_riscv64_efi_TRUE@am__append_1542 = boot.marker -@COND_i386_pc_TRUE@am__append_1543 = cpuid.module -@COND_i386_pc_TRUE@am__append_1544 = cpuid.module$(EXEEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_x86_64_efi_FALSE@@COND_x86_64_xen_FALSE@cpuid_module_DEPENDENCIES = -@COND_i386_pc_TRUE@am__append_1545 = -@COND_i386_pc_TRUE@am__append_1546 = $(nodist_cpuid_module_SOURCES) -@COND_i386_pc_TRUE@am__append_1547 = $(nodist_cpuid_module_SOURCES) \ -@COND_i386_pc_TRUE@ cpuid.marker -@COND_i386_pc_TRUE@am__append_1548 = cpuid.mod -@COND_i386_pc_TRUE@am__append_1549 = cpuid.marker -@COND_i386_efi_TRUE@am__append_1550 = cpuid.module -@COND_i386_efi_TRUE@am__append_1551 = cpuid.module$(EXEEXT) -@COND_i386_efi_TRUE@am__append_1552 = -@COND_i386_efi_TRUE@am__append_1553 = $(nodist_cpuid_module_SOURCES) -@COND_i386_efi_TRUE@am__append_1554 = $(nodist_cpuid_module_SOURCES) \ -@COND_i386_efi_TRUE@ cpuid.marker -@COND_i386_efi_TRUE@am__append_1555 = cpuid.mod -@COND_i386_efi_TRUE@am__append_1556 = cpuid.marker -@COND_i386_qemu_TRUE@am__append_1557 = cpuid.module -@COND_i386_qemu_TRUE@am__append_1558 = cpuid.module$(EXEEXT) -@COND_i386_qemu_TRUE@am__append_1559 = -@COND_i386_qemu_TRUE@am__append_1560 = $(nodist_cpuid_module_SOURCES) -@COND_i386_qemu_TRUE@am__append_1561 = $(nodist_cpuid_module_SOURCES) \ -@COND_i386_qemu_TRUE@ cpuid.marker -@COND_i386_qemu_TRUE@am__append_1562 = cpuid.mod -@COND_i386_qemu_TRUE@am__append_1563 = cpuid.marker -@COND_i386_coreboot_TRUE@am__append_1564 = cpuid.module -@COND_i386_coreboot_TRUE@am__append_1565 = cpuid.module$(EXEEXT) -@COND_i386_coreboot_TRUE@am__append_1566 = -@COND_i386_coreboot_TRUE@am__append_1567 = $(nodist_cpuid_module_SOURCES) -@COND_i386_coreboot_TRUE@am__append_1568 = \ -@COND_i386_coreboot_TRUE@ $(nodist_cpuid_module_SOURCES) \ -@COND_i386_coreboot_TRUE@ cpuid.marker -@COND_i386_coreboot_TRUE@am__append_1569 = cpuid.mod -@COND_i386_coreboot_TRUE@am__append_1570 = cpuid.marker -@COND_i386_multiboot_TRUE@am__append_1571 = cpuid.module -@COND_i386_multiboot_TRUE@am__append_1572 = cpuid.module$(EXEEXT) -@COND_i386_multiboot_TRUE@am__append_1573 = -@COND_i386_multiboot_TRUE@am__append_1574 = $(nodist_cpuid_module_SOURCES) -@COND_i386_multiboot_TRUE@am__append_1575 = \ -@COND_i386_multiboot_TRUE@ $(nodist_cpuid_module_SOURCES) \ -@COND_i386_multiboot_TRUE@ cpuid.marker -@COND_i386_multiboot_TRUE@am__append_1576 = cpuid.mod -@COND_i386_multiboot_TRUE@am__append_1577 = cpuid.marker -@COND_i386_ieee1275_TRUE@am__append_1578 = cpuid.module -@COND_i386_ieee1275_TRUE@am__append_1579 = cpuid.module$(EXEEXT) -@COND_i386_ieee1275_TRUE@am__append_1580 = -@COND_i386_ieee1275_TRUE@am__append_1581 = $(nodist_cpuid_module_SOURCES) -@COND_i386_ieee1275_TRUE@am__append_1582 = \ -@COND_i386_ieee1275_TRUE@ $(nodist_cpuid_module_SOURCES) \ -@COND_i386_ieee1275_TRUE@ cpuid.marker -@COND_i386_ieee1275_TRUE@am__append_1583 = cpuid.mod -@COND_i386_ieee1275_TRUE@am__append_1584 = cpuid.marker -@COND_x86_64_efi_TRUE@am__append_1585 = cpuid.module -@COND_x86_64_efi_TRUE@am__append_1586 = cpuid.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__append_1587 = -@COND_x86_64_efi_TRUE@am__append_1588 = $(nodist_cpuid_module_SOURCES) -@COND_x86_64_efi_TRUE@am__append_1589 = \ -@COND_x86_64_efi_TRUE@ $(nodist_cpuid_module_SOURCES) \ -@COND_x86_64_efi_TRUE@ cpuid.marker -@COND_x86_64_efi_TRUE@am__append_1590 = cpuid.mod -@COND_x86_64_efi_TRUE@am__append_1591 = cpuid.marker -@COND_i386_xen_TRUE@am__append_1592 = cpuid.module -@COND_i386_xen_TRUE@am__append_1593 = cpuid.module$(EXEEXT) -@COND_i386_xen_TRUE@am__append_1594 = -@COND_i386_xen_TRUE@am__append_1595 = $(nodist_cpuid_module_SOURCES) -@COND_i386_xen_TRUE@am__append_1596 = $(nodist_cpuid_module_SOURCES) \ -@COND_i386_xen_TRUE@ cpuid.marker -@COND_i386_xen_TRUE@am__append_1597 = cpuid.mod -@COND_i386_xen_TRUE@am__append_1598 = cpuid.marker -@COND_x86_64_xen_TRUE@am__append_1599 = cpuid.module -@COND_x86_64_xen_TRUE@am__append_1600 = cpuid.module$(EXEEXT) -@COND_x86_64_xen_TRUE@am__append_1601 = -@COND_x86_64_xen_TRUE@am__append_1602 = $(nodist_cpuid_module_SOURCES) -@COND_x86_64_xen_TRUE@am__append_1603 = \ -@COND_x86_64_xen_TRUE@ $(nodist_cpuid_module_SOURCES) \ -@COND_x86_64_xen_TRUE@ cpuid.marker -@COND_x86_64_xen_TRUE@am__append_1604 = cpuid.mod -@COND_x86_64_xen_TRUE@am__append_1605 = cpuid.marker -@COND_i386_xen_pvh_TRUE@am__append_1606 = cpuid.module -@COND_i386_xen_pvh_TRUE@am__append_1607 = cpuid.module$(EXEEXT) -@COND_i386_xen_pvh_TRUE@am__append_1608 = -@COND_i386_xen_pvh_TRUE@am__append_1609 = $(nodist_cpuid_module_SOURCES) -@COND_i386_xen_pvh_TRUE@am__append_1610 = \ -@COND_i386_xen_pvh_TRUE@ $(nodist_cpuid_module_SOURCES) \ -@COND_i386_xen_pvh_TRUE@ cpuid.marker -@COND_i386_xen_pvh_TRUE@am__append_1611 = cpuid.mod -@COND_i386_xen_pvh_TRUE@am__append_1612 = cpuid.marker -@COND_i386_pc_TRUE@am__append_1613 = drivemap.module -@COND_i386_pc_TRUE@am__append_1614 = drivemap.module$(EXEEXT) -@COND_i386_pc_FALSE@drivemap_module_DEPENDENCIES = -@COND_i386_pc_TRUE@am__append_1615 = -@COND_i386_pc_TRUE@am__append_1616 = $(nodist_drivemap_module_SOURCES) -@COND_i386_pc_TRUE@am__append_1617 = \ -@COND_i386_pc_TRUE@ $(nodist_drivemap_module_SOURCES) \ -@COND_i386_pc_TRUE@ drivemap.marker -@COND_i386_pc_TRUE@am__append_1618 = drivemap.mod -@COND_i386_pc_TRUE@am__append_1619 = drivemap.marker -@COND_i386_pc_TRUE@am__append_1620 = extcmd.module -@COND_i386_pc_TRUE@am__append_1621 = extcmd.module$(EXEEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_ia64_efi_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_x86_64_efi_FALSE@extcmd_module_DEPENDENCIES = -@COND_i386_pc_TRUE@am__append_1622 = -@COND_i386_pc_TRUE@am__append_1623 = $(nodist_extcmd_module_SOURCES) -@COND_i386_pc_TRUE@am__append_1624 = $(nodist_extcmd_module_SOURCES) \ -@COND_i386_pc_TRUE@ extcmd.marker -@COND_i386_pc_TRUE@am__append_1625 = extcmd.mod -@COND_i386_pc_TRUE@am__append_1626 = extcmd.marker -@COND_i386_efi_TRUE@am__append_1627 = extcmd.module -@COND_i386_efi_TRUE@am__append_1628 = extcmd.module$(EXEEXT) -@COND_i386_efi_TRUE@am__append_1629 = -@COND_i386_efi_TRUE@am__append_1630 = $(nodist_extcmd_module_SOURCES) -@COND_i386_efi_TRUE@am__append_1631 = $(nodist_extcmd_module_SOURCES) \ -@COND_i386_efi_TRUE@ extcmd.marker -@COND_i386_efi_TRUE@am__append_1632 = extcmd.mod -@COND_i386_efi_TRUE@am__append_1633 = extcmd.marker -@COND_i386_qemu_TRUE@am__append_1634 = extcmd.module -@COND_i386_qemu_TRUE@am__append_1635 = extcmd.module$(EXEEXT) -@COND_i386_qemu_TRUE@am__append_1636 = -@COND_i386_qemu_TRUE@am__append_1637 = $(nodist_extcmd_module_SOURCES) -@COND_i386_qemu_TRUE@am__append_1638 = \ -@COND_i386_qemu_TRUE@ $(nodist_extcmd_module_SOURCES) \ -@COND_i386_qemu_TRUE@ extcmd.marker -@COND_i386_qemu_TRUE@am__append_1639 = extcmd.mod -@COND_i386_qemu_TRUE@am__append_1640 = extcmd.marker -@COND_i386_coreboot_TRUE@am__append_1641 = extcmd.module -@COND_i386_coreboot_TRUE@am__append_1642 = extcmd.module$(EXEEXT) -@COND_i386_coreboot_TRUE@am__append_1643 = -@COND_i386_coreboot_TRUE@am__append_1644 = $(nodist_extcmd_module_SOURCES) -@COND_i386_coreboot_TRUE@am__append_1645 = \ -@COND_i386_coreboot_TRUE@ $(nodist_extcmd_module_SOURCES) \ -@COND_i386_coreboot_TRUE@ extcmd.marker -@COND_i386_coreboot_TRUE@am__append_1646 = extcmd.mod -@COND_i386_coreboot_TRUE@am__append_1647 = extcmd.marker -@COND_i386_multiboot_TRUE@am__append_1648 = extcmd.module -@COND_i386_multiboot_TRUE@am__append_1649 = extcmd.module$(EXEEXT) -@COND_i386_multiboot_TRUE@am__append_1650 = -@COND_i386_multiboot_TRUE@am__append_1651 = $(nodist_extcmd_module_SOURCES) -@COND_i386_multiboot_TRUE@am__append_1652 = \ -@COND_i386_multiboot_TRUE@ $(nodist_extcmd_module_SOURCES) \ -@COND_i386_multiboot_TRUE@ extcmd.marker -@COND_i386_multiboot_TRUE@am__append_1653 = extcmd.mod -@COND_i386_multiboot_TRUE@am__append_1654 = extcmd.marker -@COND_x86_64_efi_TRUE@am__append_1655 = extcmd.module -@COND_x86_64_efi_TRUE@am__append_1656 = extcmd.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__append_1657 = -@COND_x86_64_efi_TRUE@am__append_1658 = $(nodist_extcmd_module_SOURCES) -@COND_x86_64_efi_TRUE@am__append_1659 = \ -@COND_x86_64_efi_TRUE@ $(nodist_extcmd_module_SOURCES) \ -@COND_x86_64_efi_TRUE@ extcmd.marker -@COND_x86_64_efi_TRUE@am__append_1660 = extcmd.mod -@COND_x86_64_efi_TRUE@am__append_1661 = extcmd.marker -@COND_ia64_efi_TRUE@am__append_1662 = extcmd.module -@COND_ia64_efi_TRUE@am__append_1663 = extcmd.module$(EXEEXT) -@COND_ia64_efi_TRUE@am__append_1664 = -@COND_ia64_efi_TRUE@am__append_1665 = $(nodist_extcmd_module_SOURCES) -@COND_ia64_efi_TRUE@am__append_1666 = $(nodist_extcmd_module_SOURCES) \ -@COND_ia64_efi_TRUE@ extcmd.marker -@COND_ia64_efi_TRUE@am__append_1667 = extcmd.mod -@COND_ia64_efi_TRUE@am__append_1668 = extcmd.marker -@COND_arm_efi_TRUE@am__append_1669 = extcmd.module -@COND_arm_efi_TRUE@am__append_1670 = extcmd.module$(EXEEXT) -@COND_arm_efi_TRUE@am__append_1671 = -@COND_arm_efi_TRUE@am__append_1672 = $(nodist_extcmd_module_SOURCES) -@COND_arm_efi_TRUE@am__append_1673 = $(nodist_extcmd_module_SOURCES) \ -@COND_arm_efi_TRUE@ extcmd.marker -@COND_arm_efi_TRUE@am__append_1674 = extcmd.mod -@COND_arm_efi_TRUE@am__append_1675 = extcmd.marker -@COND_arm64_efi_TRUE@am__append_1676 = extcmd.module -@COND_arm64_efi_TRUE@am__append_1677 = extcmd.module$(EXEEXT) -@COND_arm64_efi_TRUE@am__append_1678 = -@COND_arm64_efi_TRUE@am__append_1679 = $(nodist_extcmd_module_SOURCES) -@COND_arm64_efi_TRUE@am__append_1680 = \ -@COND_arm64_efi_TRUE@ $(nodist_extcmd_module_SOURCES) \ -@COND_arm64_efi_TRUE@ extcmd.marker -@COND_arm64_efi_TRUE@am__append_1681 = extcmd.mod -@COND_arm64_efi_TRUE@am__append_1682 = extcmd.marker -@COND_arm_coreboot_TRUE@am__append_1683 = extcmd.module -@COND_arm_coreboot_TRUE@am__append_1684 = extcmd.module$(EXEEXT) -@COND_arm_coreboot_TRUE@am__append_1685 = -@COND_arm_coreboot_TRUE@am__append_1686 = $(nodist_extcmd_module_SOURCES) -@COND_arm_coreboot_TRUE@am__append_1687 = \ -@COND_arm_coreboot_TRUE@ $(nodist_extcmd_module_SOURCES) \ -@COND_arm_coreboot_TRUE@ extcmd.marker -@COND_arm_coreboot_TRUE@am__append_1688 = extcmd.mod -@COND_arm_coreboot_TRUE@am__append_1689 = extcmd.marker -@COND_riscv32_efi_TRUE@am__append_1690 = extcmd.module -@COND_riscv32_efi_TRUE@am__append_1691 = extcmd.module$(EXEEXT) -@COND_riscv32_efi_TRUE@am__append_1692 = -@COND_riscv32_efi_TRUE@am__append_1693 = $(nodist_extcmd_module_SOURCES) -@COND_riscv32_efi_TRUE@am__append_1694 = \ -@COND_riscv32_efi_TRUE@ $(nodist_extcmd_module_SOURCES) \ -@COND_riscv32_efi_TRUE@ extcmd.marker -@COND_riscv32_efi_TRUE@am__append_1695 = extcmd.mod -@COND_riscv32_efi_TRUE@am__append_1696 = extcmd.marker -@COND_riscv64_efi_TRUE@am__append_1697 = extcmd.module -@COND_riscv64_efi_TRUE@am__append_1698 = extcmd.module$(EXEEXT) -@COND_riscv64_efi_TRUE@am__append_1699 = -@COND_riscv64_efi_TRUE@am__append_1700 = $(nodist_extcmd_module_SOURCES) -@COND_riscv64_efi_TRUE@am__append_1701 = \ -@COND_riscv64_efi_TRUE@ $(nodist_extcmd_module_SOURCES) \ -@COND_riscv64_efi_TRUE@ extcmd.marker -@COND_riscv64_efi_TRUE@am__append_1702 = extcmd.mod -@COND_riscv64_efi_TRUE@am__append_1703 = extcmd.marker -@COND_i386_efi_TRUE@am__append_1704 = fixvideo.module -@COND_i386_efi_TRUE@am__append_1705 = fixvideo.module$(EXEEXT) -@COND_i386_efi_FALSE@@COND_x86_64_efi_FALSE@fixvideo_module_DEPENDENCIES = -@COND_i386_efi_TRUE@am__append_1706 = -@COND_i386_efi_TRUE@am__append_1707 = $(nodist_fixvideo_module_SOURCES) -@COND_i386_efi_TRUE@am__append_1708 = \ -@COND_i386_efi_TRUE@ $(nodist_fixvideo_module_SOURCES) \ -@COND_i386_efi_TRUE@ fixvideo.marker -@COND_i386_efi_TRUE@am__append_1709 = fixvideo.mod -@COND_i386_efi_TRUE@am__append_1710 = fixvideo.marker -@COND_x86_64_efi_TRUE@am__append_1711 = fixvideo.module -@COND_x86_64_efi_TRUE@am__append_1712 = fixvideo.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__append_1713 = -@COND_x86_64_efi_TRUE@am__append_1714 = $(nodist_fixvideo_module_SOURCES) -@COND_x86_64_efi_TRUE@am__append_1715 = \ -@COND_x86_64_efi_TRUE@ $(nodist_fixvideo_module_SOURCES) \ -@COND_x86_64_efi_TRUE@ fixvideo.marker -@COND_x86_64_efi_TRUE@am__append_1716 = fixvideo.mod -@COND_x86_64_efi_TRUE@am__append_1717 = fixvideo.marker -@COND_emu_TRUE@am__append_1718 = halt.module -@COND_emu_TRUE@am__append_1719 = halt.module$(EXEEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_FALSE@@COND_x86_64_efi_FALSE@@COND_x86_64_xen_FALSE@halt_module_DEPENDENCIES = -@COND_emu_TRUE@am__append_1720 = -@COND_emu_TRUE@am__append_1721 = $(nodist_halt_module_SOURCES) -@COND_emu_TRUE@am__append_1722 = $(nodist_halt_module_SOURCES) \ -@COND_emu_TRUE@ halt.marker -@COND_emu_TRUE@am__append_1723 = halt.mod -@COND_emu_TRUE@am__append_1724 = halt.marker -@COND_i386_pc_TRUE@am__append_1725 = halt.module -@COND_i386_pc_TRUE@am__append_1726 = halt.module$(EXEEXT) -@COND_i386_pc_TRUE@am__append_1727 = -@COND_i386_pc_TRUE@am__append_1728 = $(nodist_halt_module_SOURCES) -@COND_i386_pc_TRUE@am__append_1729 = $(nodist_halt_module_SOURCES) \ -@COND_i386_pc_TRUE@ halt.marker -@COND_i386_pc_TRUE@am__append_1730 = halt.mod -@COND_i386_pc_TRUE@am__append_1731 = halt.marker -@COND_i386_efi_TRUE@am__append_1732 = halt.module -@COND_i386_efi_TRUE@am__append_1733 = halt.module$(EXEEXT) -@COND_i386_efi_TRUE@am__append_1734 = -@COND_i386_efi_TRUE@am__append_1735 = $(nodist_halt_module_SOURCES) -@COND_i386_efi_TRUE@am__append_1736 = $(nodist_halt_module_SOURCES) \ -@COND_i386_efi_TRUE@ halt.marker -@COND_i386_efi_TRUE@am__append_1737 = halt.mod -@COND_i386_efi_TRUE@am__append_1738 = halt.marker -@COND_i386_qemu_TRUE@am__append_1739 = halt.module -@COND_i386_qemu_TRUE@am__append_1740 = halt.module$(EXEEXT) -@COND_i386_qemu_TRUE@am__append_1741 = -@COND_i386_qemu_TRUE@am__append_1742 = $(nodist_halt_module_SOURCES) -@COND_i386_qemu_TRUE@am__append_1743 = $(nodist_halt_module_SOURCES) \ -@COND_i386_qemu_TRUE@ halt.marker -@COND_i386_qemu_TRUE@am__append_1744 = halt.mod -@COND_i386_qemu_TRUE@am__append_1745 = halt.marker -@COND_i386_coreboot_TRUE@am__append_1746 = halt.module -@COND_i386_coreboot_TRUE@am__append_1747 = halt.module$(EXEEXT) -@COND_i386_coreboot_TRUE@am__append_1748 = -@COND_i386_coreboot_TRUE@am__append_1749 = $(nodist_halt_module_SOURCES) -@COND_i386_coreboot_TRUE@am__append_1750 = \ -@COND_i386_coreboot_TRUE@ $(nodist_halt_module_SOURCES) \ -@COND_i386_coreboot_TRUE@ halt.marker -@COND_i386_coreboot_TRUE@am__append_1751 = halt.mod -@COND_i386_coreboot_TRUE@am__append_1752 = halt.marker -@COND_i386_multiboot_TRUE@am__append_1753 = halt.module -@COND_i386_multiboot_TRUE@am__append_1754 = halt.module$(EXEEXT) -@COND_i386_multiboot_TRUE@am__append_1755 = -@COND_i386_multiboot_TRUE@am__append_1756 = $(nodist_halt_module_SOURCES) -@COND_i386_multiboot_TRUE@am__append_1757 = \ -@COND_i386_multiboot_TRUE@ $(nodist_halt_module_SOURCES) \ -@COND_i386_multiboot_TRUE@ halt.marker -@COND_i386_multiboot_TRUE@am__append_1758 = halt.mod -@COND_i386_multiboot_TRUE@am__append_1759 = halt.marker -@COND_i386_ieee1275_TRUE@am__append_1760 = halt.module -@COND_i386_ieee1275_TRUE@am__append_1761 = halt.module$(EXEEXT) -@COND_i386_ieee1275_TRUE@am__append_1762 = -@COND_i386_ieee1275_TRUE@am__append_1763 = $(nodist_halt_module_SOURCES) -@COND_i386_ieee1275_TRUE@am__append_1764 = \ -@COND_i386_ieee1275_TRUE@ $(nodist_halt_module_SOURCES) \ -@COND_i386_ieee1275_TRUE@ halt.marker -@COND_i386_ieee1275_TRUE@am__append_1765 = halt.mod -@COND_i386_ieee1275_TRUE@am__append_1766 = halt.marker -@COND_x86_64_efi_TRUE@am__append_1767 = halt.module -@COND_x86_64_efi_TRUE@am__append_1768 = halt.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__append_1769 = -@COND_x86_64_efi_TRUE@am__append_1770 = $(nodist_halt_module_SOURCES) -@COND_x86_64_efi_TRUE@am__append_1771 = $(nodist_halt_module_SOURCES) \ -@COND_x86_64_efi_TRUE@ halt.marker -@COND_x86_64_efi_TRUE@am__append_1772 = halt.mod -@COND_x86_64_efi_TRUE@am__append_1773 = halt.marker -@COND_i386_xen_TRUE@am__append_1774 = halt.module -@COND_i386_xen_TRUE@am__append_1775 = halt.module$(EXEEXT) -@COND_i386_xen_TRUE@am__append_1776 = -@COND_i386_xen_TRUE@am__append_1777 = $(nodist_halt_module_SOURCES) -@COND_i386_xen_TRUE@am__append_1778 = $(nodist_halt_module_SOURCES) \ -@COND_i386_xen_TRUE@ halt.marker -@COND_i386_xen_TRUE@am__append_1779 = halt.mod -@COND_i386_xen_TRUE@am__append_1780 = halt.marker -@COND_x86_64_xen_TRUE@am__append_1781 = halt.module -@COND_x86_64_xen_TRUE@am__append_1782 = halt.module$(EXEEXT) -@COND_x86_64_xen_TRUE@am__append_1783 = -@COND_x86_64_xen_TRUE@am__append_1784 = $(nodist_halt_module_SOURCES) -@COND_x86_64_xen_TRUE@am__append_1785 = $(nodist_halt_module_SOURCES) \ -@COND_x86_64_xen_TRUE@ halt.marker -@COND_x86_64_xen_TRUE@am__append_1786 = halt.mod -@COND_x86_64_xen_TRUE@am__append_1787 = halt.marker -@COND_i386_xen_pvh_TRUE@am__append_1788 = halt.module -@COND_i386_xen_pvh_TRUE@am__append_1789 = halt.module$(EXEEXT) -@COND_i386_xen_pvh_TRUE@am__append_1790 = -@COND_i386_xen_pvh_TRUE@am__append_1791 = $(nodist_halt_module_SOURCES) -@COND_i386_xen_pvh_TRUE@am__append_1792 = \ -@COND_i386_xen_pvh_TRUE@ $(nodist_halt_module_SOURCES) \ -@COND_i386_xen_pvh_TRUE@ halt.marker -@COND_i386_xen_pvh_TRUE@am__append_1793 = halt.mod -@COND_i386_xen_pvh_TRUE@am__append_1794 = halt.marker -@COND_mips_loongson_TRUE@am__append_1795 = halt.module -@COND_mips_loongson_TRUE@am__append_1796 = halt.module$(EXEEXT) -@COND_mips_loongson_TRUE@am__append_1797 = -@COND_mips_loongson_TRUE@am__append_1798 = $(nodist_halt_module_SOURCES) -@COND_mips_loongson_TRUE@am__append_1799 = \ -@COND_mips_loongson_TRUE@ $(nodist_halt_module_SOURCES) \ -@COND_mips_loongson_TRUE@ halt.marker -@COND_mips_loongson_TRUE@am__append_1800 = halt.mod -@COND_mips_loongson_TRUE@am__append_1801 = halt.marker -@COND_sparc64_ieee1275_TRUE@am__append_1802 = halt.module -@COND_sparc64_ieee1275_TRUE@am__append_1803 = halt.module$(EXEEXT) -@COND_sparc64_ieee1275_TRUE@am__append_1804 = -@COND_sparc64_ieee1275_TRUE@am__append_1805 = $(nodist_halt_module_SOURCES) -@COND_sparc64_ieee1275_TRUE@am__append_1806 = \ -@COND_sparc64_ieee1275_TRUE@ $(nodist_halt_module_SOURCES) \ -@COND_sparc64_ieee1275_TRUE@ halt.marker -@COND_sparc64_ieee1275_TRUE@am__append_1807 = halt.mod -@COND_sparc64_ieee1275_TRUE@am__append_1808 = halt.marker -@COND_powerpc_ieee1275_TRUE@am__append_1809 = halt.module -@COND_powerpc_ieee1275_TRUE@am__append_1810 = halt.module$(EXEEXT) -@COND_powerpc_ieee1275_TRUE@am__append_1811 = -@COND_powerpc_ieee1275_TRUE@am__append_1812 = $(nodist_halt_module_SOURCES) -@COND_powerpc_ieee1275_TRUE@am__append_1813 = \ -@COND_powerpc_ieee1275_TRUE@ $(nodist_halt_module_SOURCES) \ -@COND_powerpc_ieee1275_TRUE@ halt.marker -@COND_powerpc_ieee1275_TRUE@am__append_1814 = halt.mod -@COND_powerpc_ieee1275_TRUE@am__append_1815 = halt.marker -@COND_mips_arc_TRUE@am__append_1816 = halt.module -@COND_mips_arc_TRUE@am__append_1817 = halt.module$(EXEEXT) -@COND_mips_arc_TRUE@am__append_1818 = -@COND_mips_arc_TRUE@am__append_1819 = $(nodist_halt_module_SOURCES) -@COND_mips_arc_TRUE@am__append_1820 = $(nodist_halt_module_SOURCES) \ -@COND_mips_arc_TRUE@ halt.marker -@COND_mips_arc_TRUE@am__append_1821 = halt.mod -@COND_mips_arc_TRUE@am__append_1822 = halt.marker -@COND_ia64_efi_TRUE@am__append_1823 = halt.module -@COND_ia64_efi_TRUE@am__append_1824 = halt.module$(EXEEXT) -@COND_ia64_efi_TRUE@am__append_1825 = -@COND_ia64_efi_TRUE@am__append_1826 = $(nodist_halt_module_SOURCES) -@COND_ia64_efi_TRUE@am__append_1827 = $(nodist_halt_module_SOURCES) \ -@COND_ia64_efi_TRUE@ halt.marker -@COND_ia64_efi_TRUE@am__append_1828 = halt.mod -@COND_ia64_efi_TRUE@am__append_1829 = halt.marker -@COND_mips_qemu_mips_TRUE@am__append_1830 = halt.module -@COND_mips_qemu_mips_TRUE@am__append_1831 = halt.module$(EXEEXT) -@COND_mips_qemu_mips_TRUE@am__append_1832 = -@COND_mips_qemu_mips_TRUE@am__append_1833 = $(nodist_halt_module_SOURCES) -@COND_mips_qemu_mips_TRUE@am__append_1834 = \ -@COND_mips_qemu_mips_TRUE@ $(nodist_halt_module_SOURCES) \ -@COND_mips_qemu_mips_TRUE@ halt.marker -@COND_mips_qemu_mips_TRUE@am__append_1835 = halt.mod -@COND_mips_qemu_mips_TRUE@am__append_1836 = halt.marker -@COND_arm_uboot_TRUE@am__append_1837 = halt.module -@COND_arm_uboot_TRUE@am__append_1838 = halt.module$(EXEEXT) -@COND_arm_uboot_TRUE@am__append_1839 = -@COND_arm_uboot_TRUE@am__append_1840 = $(nodist_halt_module_SOURCES) -@COND_arm_uboot_TRUE@am__append_1841 = $(nodist_halt_module_SOURCES) \ -@COND_arm_uboot_TRUE@ halt.marker -@COND_arm_uboot_TRUE@am__append_1842 = halt.mod -@COND_arm_uboot_TRUE@am__append_1843 = halt.marker -@COND_arm_efi_TRUE@am__append_1844 = halt.module -@COND_arm_efi_TRUE@am__append_1845 = halt.module$(EXEEXT) -@COND_arm_efi_TRUE@am__append_1846 = -@COND_arm_efi_TRUE@am__append_1847 = $(nodist_halt_module_SOURCES) -@COND_arm_efi_TRUE@am__append_1848 = $(nodist_halt_module_SOURCES) \ -@COND_arm_efi_TRUE@ halt.marker -@COND_arm_efi_TRUE@am__append_1849 = halt.mod -@COND_arm_efi_TRUE@am__append_1850 = halt.marker -@COND_arm64_efi_TRUE@am__append_1851 = halt.module -@COND_arm64_efi_TRUE@am__append_1852 = halt.module$(EXEEXT) -@COND_arm64_efi_TRUE@am__append_1853 = -@COND_arm64_efi_TRUE@am__append_1854 = $(nodist_halt_module_SOURCES) -@COND_arm64_efi_TRUE@am__append_1855 = $(nodist_halt_module_SOURCES) \ -@COND_arm64_efi_TRUE@ halt.marker -@COND_arm64_efi_TRUE@am__append_1856 = halt.mod -@COND_arm64_efi_TRUE@am__append_1857 = halt.marker -@COND_arm_coreboot_TRUE@am__append_1858 = halt.module -@COND_arm_coreboot_TRUE@am__append_1859 = halt.module$(EXEEXT) -@COND_arm_coreboot_TRUE@am__append_1860 = -@COND_arm_coreboot_TRUE@am__append_1861 = $(nodist_halt_module_SOURCES) -@COND_arm_coreboot_TRUE@am__append_1862 = \ -@COND_arm_coreboot_TRUE@ $(nodist_halt_module_SOURCES) \ -@COND_arm_coreboot_TRUE@ halt.marker -@COND_arm_coreboot_TRUE@am__append_1863 = halt.mod -@COND_arm_coreboot_TRUE@am__append_1864 = halt.marker -@COND_riscv32_efi_TRUE@am__append_1865 = halt.module -@COND_riscv32_efi_TRUE@am__append_1866 = halt.module$(EXEEXT) -@COND_riscv32_efi_TRUE@am__append_1867 = -@COND_riscv32_efi_TRUE@am__append_1868 = $(nodist_halt_module_SOURCES) -@COND_riscv32_efi_TRUE@am__append_1869 = \ -@COND_riscv32_efi_TRUE@ $(nodist_halt_module_SOURCES) \ -@COND_riscv32_efi_TRUE@ halt.marker -@COND_riscv32_efi_TRUE@am__append_1870 = halt.mod -@COND_riscv32_efi_TRUE@am__append_1871 = halt.marker -@COND_riscv64_efi_TRUE@am__append_1872 = halt.module -@COND_riscv64_efi_TRUE@am__append_1873 = halt.module$(EXEEXT) -@COND_riscv64_efi_TRUE@am__append_1874 = -@COND_riscv64_efi_TRUE@am__append_1875 = $(nodist_halt_module_SOURCES) -@COND_riscv64_efi_TRUE@am__append_1876 = \ -@COND_riscv64_efi_TRUE@ $(nodist_halt_module_SOURCES) \ -@COND_riscv64_efi_TRUE@ halt.marker -@COND_riscv64_efi_TRUE@am__append_1877 = halt.mod -@COND_riscv64_efi_TRUE@am__append_1878 = halt.marker -@COND_emu_TRUE@am__append_1879 = reboot.module -@COND_emu_TRUE@am__append_1880 = reboot.module$(EXEEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_FALSE@@COND_x86_64_efi_FALSE@@COND_x86_64_xen_FALSE@reboot_module_DEPENDENCIES = -@COND_emu_TRUE@am__append_1881 = -@COND_emu_TRUE@am__append_1882 = $(nodist_reboot_module_SOURCES) -@COND_emu_TRUE@am__append_1883 = $(nodist_reboot_module_SOURCES) \ -@COND_emu_TRUE@ reboot.marker -@COND_emu_TRUE@am__append_1884 = reboot.mod -@COND_emu_TRUE@am__append_1885 = reboot.marker -@COND_i386_pc_TRUE@am__append_1886 = reboot.module -@COND_i386_pc_TRUE@am__append_1887 = reboot.module$(EXEEXT) -@COND_i386_pc_TRUE@am__append_1888 = -@COND_i386_pc_TRUE@am__append_1889 = $(nodist_reboot_module_SOURCES) -@COND_i386_pc_TRUE@am__append_1890 = $(nodist_reboot_module_SOURCES) \ -@COND_i386_pc_TRUE@ reboot.marker -@COND_i386_pc_TRUE@am__append_1891 = reboot.mod -@COND_i386_pc_TRUE@am__append_1892 = reboot.marker -@COND_i386_efi_TRUE@am__append_1893 = reboot.module -@COND_i386_efi_TRUE@am__append_1894 = reboot.module$(EXEEXT) -@COND_i386_efi_TRUE@am__append_1895 = -@COND_i386_efi_TRUE@am__append_1896 = $(nodist_reboot_module_SOURCES) -@COND_i386_efi_TRUE@am__append_1897 = $(nodist_reboot_module_SOURCES) \ -@COND_i386_efi_TRUE@ reboot.marker -@COND_i386_efi_TRUE@am__append_1898 = reboot.mod -@COND_i386_efi_TRUE@am__append_1899 = reboot.marker -@COND_i386_qemu_TRUE@am__append_1900 = reboot.module -@COND_i386_qemu_TRUE@am__append_1901 = reboot.module$(EXEEXT) -@COND_i386_qemu_TRUE@am__append_1902 = -@COND_i386_qemu_TRUE@am__append_1903 = $(nodist_reboot_module_SOURCES) -@COND_i386_qemu_TRUE@am__append_1904 = \ -@COND_i386_qemu_TRUE@ $(nodist_reboot_module_SOURCES) \ -@COND_i386_qemu_TRUE@ reboot.marker -@COND_i386_qemu_TRUE@am__append_1905 = reboot.mod -@COND_i386_qemu_TRUE@am__append_1906 = reboot.marker -@COND_i386_coreboot_TRUE@am__append_1907 = reboot.module -@COND_i386_coreboot_TRUE@am__append_1908 = reboot.module$(EXEEXT) -@COND_i386_coreboot_TRUE@am__append_1909 = -@COND_i386_coreboot_TRUE@am__append_1910 = $(nodist_reboot_module_SOURCES) -@COND_i386_coreboot_TRUE@am__append_1911 = \ -@COND_i386_coreboot_TRUE@ $(nodist_reboot_module_SOURCES) \ -@COND_i386_coreboot_TRUE@ reboot.marker -@COND_i386_coreboot_TRUE@am__append_1912 = reboot.mod -@COND_i386_coreboot_TRUE@am__append_1913 = reboot.marker -@COND_i386_multiboot_TRUE@am__append_1914 = reboot.module -@COND_i386_multiboot_TRUE@am__append_1915 = reboot.module$(EXEEXT) -@COND_i386_multiboot_TRUE@am__append_1916 = -@COND_i386_multiboot_TRUE@am__append_1917 = $(nodist_reboot_module_SOURCES) -@COND_i386_multiboot_TRUE@am__append_1918 = \ -@COND_i386_multiboot_TRUE@ $(nodist_reboot_module_SOURCES) \ -@COND_i386_multiboot_TRUE@ reboot.marker -@COND_i386_multiboot_TRUE@am__append_1919 = reboot.mod -@COND_i386_multiboot_TRUE@am__append_1920 = reboot.marker -@COND_i386_ieee1275_TRUE@am__append_1921 = reboot.module -@COND_i386_ieee1275_TRUE@am__append_1922 = reboot.module$(EXEEXT) -@COND_i386_ieee1275_TRUE@am__append_1923 = -@COND_i386_ieee1275_TRUE@am__append_1924 = $(nodist_reboot_module_SOURCES) -@COND_i386_ieee1275_TRUE@am__append_1925 = \ -@COND_i386_ieee1275_TRUE@ $(nodist_reboot_module_SOURCES) \ -@COND_i386_ieee1275_TRUE@ reboot.marker -@COND_i386_ieee1275_TRUE@am__append_1926 = reboot.mod -@COND_i386_ieee1275_TRUE@am__append_1927 = reboot.marker -@COND_x86_64_efi_TRUE@am__append_1928 = reboot.module -@COND_x86_64_efi_TRUE@am__append_1929 = reboot.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__append_1930 = -@COND_x86_64_efi_TRUE@am__append_1931 = $(nodist_reboot_module_SOURCES) -@COND_x86_64_efi_TRUE@am__append_1932 = \ -@COND_x86_64_efi_TRUE@ $(nodist_reboot_module_SOURCES) \ -@COND_x86_64_efi_TRUE@ reboot.marker -@COND_x86_64_efi_TRUE@am__append_1933 = reboot.mod -@COND_x86_64_efi_TRUE@am__append_1934 = reboot.marker -@COND_i386_xen_TRUE@am__append_1935 = reboot.module -@COND_i386_xen_TRUE@am__append_1936 = reboot.module$(EXEEXT) -@COND_i386_xen_TRUE@am__append_1937 = -@COND_i386_xen_TRUE@am__append_1938 = $(nodist_reboot_module_SOURCES) -@COND_i386_xen_TRUE@am__append_1939 = $(nodist_reboot_module_SOURCES) \ -@COND_i386_xen_TRUE@ reboot.marker -@COND_i386_xen_TRUE@am__append_1940 = reboot.mod -@COND_i386_xen_TRUE@am__append_1941 = reboot.marker -@COND_x86_64_xen_TRUE@am__append_1942 = reboot.module -@COND_x86_64_xen_TRUE@am__append_1943 = reboot.module$(EXEEXT) -@COND_x86_64_xen_TRUE@am__append_1944 = -@COND_x86_64_xen_TRUE@am__append_1945 = $(nodist_reboot_module_SOURCES) -@COND_x86_64_xen_TRUE@am__append_1946 = \ -@COND_x86_64_xen_TRUE@ $(nodist_reboot_module_SOURCES) \ -@COND_x86_64_xen_TRUE@ reboot.marker -@COND_x86_64_xen_TRUE@am__append_1947 = reboot.mod -@COND_x86_64_xen_TRUE@am__append_1948 = reboot.marker -@COND_i386_xen_pvh_TRUE@am__append_1949 = reboot.module -@COND_i386_xen_pvh_TRUE@am__append_1950 = reboot.module$(EXEEXT) -@COND_i386_xen_pvh_TRUE@am__append_1951 = -@COND_i386_xen_pvh_TRUE@am__append_1952 = $(nodist_reboot_module_SOURCES) -@COND_i386_xen_pvh_TRUE@am__append_1953 = \ -@COND_i386_xen_pvh_TRUE@ $(nodist_reboot_module_SOURCES) \ -@COND_i386_xen_pvh_TRUE@ reboot.marker -@COND_i386_xen_pvh_TRUE@am__append_1954 = reboot.mod -@COND_i386_xen_pvh_TRUE@am__append_1955 = reboot.marker -@COND_mips_loongson_TRUE@am__append_1956 = reboot.module -@COND_mips_loongson_TRUE@am__append_1957 = reboot.module$(EXEEXT) -@COND_mips_loongson_TRUE@am__append_1958 = -@COND_mips_loongson_TRUE@am__append_1959 = $(nodist_reboot_module_SOURCES) -@COND_mips_loongson_TRUE@am__append_1960 = \ -@COND_mips_loongson_TRUE@ $(nodist_reboot_module_SOURCES) \ -@COND_mips_loongson_TRUE@ reboot.marker -@COND_mips_loongson_TRUE@am__append_1961 = reboot.mod -@COND_mips_loongson_TRUE@am__append_1962 = reboot.marker -@COND_sparc64_ieee1275_TRUE@am__append_1963 = reboot.module -@COND_sparc64_ieee1275_TRUE@am__append_1964 = reboot.module$(EXEEXT) -@COND_sparc64_ieee1275_TRUE@am__append_1965 = -@COND_sparc64_ieee1275_TRUE@am__append_1966 = $(nodist_reboot_module_SOURCES) -@COND_sparc64_ieee1275_TRUE@am__append_1967 = \ -@COND_sparc64_ieee1275_TRUE@ $(nodist_reboot_module_SOURCES) \ -@COND_sparc64_ieee1275_TRUE@ reboot.marker -@COND_sparc64_ieee1275_TRUE@am__append_1968 = reboot.mod -@COND_sparc64_ieee1275_TRUE@am__append_1969 = reboot.marker -@COND_powerpc_ieee1275_TRUE@am__append_1970 = reboot.module -@COND_powerpc_ieee1275_TRUE@am__append_1971 = reboot.module$(EXEEXT) -@COND_powerpc_ieee1275_TRUE@am__append_1972 = -@COND_powerpc_ieee1275_TRUE@am__append_1973 = $(nodist_reboot_module_SOURCES) -@COND_powerpc_ieee1275_TRUE@am__append_1974 = \ -@COND_powerpc_ieee1275_TRUE@ $(nodist_reboot_module_SOURCES) \ -@COND_powerpc_ieee1275_TRUE@ reboot.marker -@COND_powerpc_ieee1275_TRUE@am__append_1975 = reboot.mod -@COND_powerpc_ieee1275_TRUE@am__append_1976 = reboot.marker -@COND_mips_arc_TRUE@am__append_1977 = reboot.module -@COND_mips_arc_TRUE@am__append_1978 = reboot.module$(EXEEXT) -@COND_mips_arc_TRUE@am__append_1979 = -@COND_mips_arc_TRUE@am__append_1980 = $(nodist_reboot_module_SOURCES) -@COND_mips_arc_TRUE@am__append_1981 = $(nodist_reboot_module_SOURCES) \ -@COND_mips_arc_TRUE@ reboot.marker -@COND_mips_arc_TRUE@am__append_1982 = reboot.mod -@COND_mips_arc_TRUE@am__append_1983 = reboot.marker -@COND_ia64_efi_TRUE@am__append_1984 = reboot.module -@COND_ia64_efi_TRUE@am__append_1985 = reboot.module$(EXEEXT) -@COND_ia64_efi_TRUE@am__append_1986 = -@COND_ia64_efi_TRUE@am__append_1987 = $(nodist_reboot_module_SOURCES) -@COND_ia64_efi_TRUE@am__append_1988 = $(nodist_reboot_module_SOURCES) \ -@COND_ia64_efi_TRUE@ reboot.marker -@COND_ia64_efi_TRUE@am__append_1989 = reboot.mod -@COND_ia64_efi_TRUE@am__append_1990 = reboot.marker -@COND_mips_qemu_mips_TRUE@am__append_1991 = reboot.module -@COND_mips_qemu_mips_TRUE@am__append_1992 = reboot.module$(EXEEXT) -@COND_mips_qemu_mips_TRUE@am__append_1993 = -@COND_mips_qemu_mips_TRUE@am__append_1994 = $(nodist_reboot_module_SOURCES) -@COND_mips_qemu_mips_TRUE@am__append_1995 = \ -@COND_mips_qemu_mips_TRUE@ $(nodist_reboot_module_SOURCES) \ -@COND_mips_qemu_mips_TRUE@ reboot.marker -@COND_mips_qemu_mips_TRUE@am__append_1996 = reboot.mod -@COND_mips_qemu_mips_TRUE@am__append_1997 = reboot.marker -@COND_arm_uboot_TRUE@am__append_1998 = reboot.module -@COND_arm_uboot_TRUE@am__append_1999 = reboot.module$(EXEEXT) -@COND_arm_uboot_TRUE@am__append_2000 = -@COND_arm_uboot_TRUE@am__append_2001 = $(nodist_reboot_module_SOURCES) -@COND_arm_uboot_TRUE@am__append_2002 = \ -@COND_arm_uboot_TRUE@ $(nodist_reboot_module_SOURCES) \ -@COND_arm_uboot_TRUE@ reboot.marker -@COND_arm_uboot_TRUE@am__append_2003 = reboot.mod -@COND_arm_uboot_TRUE@am__append_2004 = reboot.marker -@COND_arm_efi_TRUE@am__append_2005 = reboot.module -@COND_arm_efi_TRUE@am__append_2006 = reboot.module$(EXEEXT) -@COND_arm_efi_TRUE@am__append_2007 = -@COND_arm_efi_TRUE@am__append_2008 = $(nodist_reboot_module_SOURCES) -@COND_arm_efi_TRUE@am__append_2009 = $(nodist_reboot_module_SOURCES) \ -@COND_arm_efi_TRUE@ reboot.marker -@COND_arm_efi_TRUE@am__append_2010 = reboot.mod -@COND_arm_efi_TRUE@am__append_2011 = reboot.marker -@COND_arm64_efi_TRUE@am__append_2012 = reboot.module -@COND_arm64_efi_TRUE@am__append_2013 = reboot.module$(EXEEXT) -@COND_arm64_efi_TRUE@am__append_2014 = -@COND_arm64_efi_TRUE@am__append_2015 = $(nodist_reboot_module_SOURCES) -@COND_arm64_efi_TRUE@am__append_2016 = \ -@COND_arm64_efi_TRUE@ $(nodist_reboot_module_SOURCES) \ -@COND_arm64_efi_TRUE@ reboot.marker -@COND_arm64_efi_TRUE@am__append_2017 = reboot.mod -@COND_arm64_efi_TRUE@am__append_2018 = reboot.marker -@COND_arm_coreboot_TRUE@am__append_2019 = reboot.module -@COND_arm_coreboot_TRUE@am__append_2020 = reboot.module$(EXEEXT) -@COND_arm_coreboot_TRUE@am__append_2021 = -@COND_arm_coreboot_TRUE@am__append_2022 = $(nodist_reboot_module_SOURCES) -@COND_arm_coreboot_TRUE@am__append_2023 = \ -@COND_arm_coreboot_TRUE@ $(nodist_reboot_module_SOURCES) \ -@COND_arm_coreboot_TRUE@ reboot.marker -@COND_arm_coreboot_TRUE@am__append_2024 = reboot.mod -@COND_arm_coreboot_TRUE@am__append_2025 = reboot.marker -@COND_riscv32_efi_TRUE@am__append_2026 = reboot.module -@COND_riscv32_efi_TRUE@am__append_2027 = reboot.module$(EXEEXT) -@COND_riscv32_efi_TRUE@am__append_2028 = -@COND_riscv32_efi_TRUE@am__append_2029 = $(nodist_reboot_module_SOURCES) -@COND_riscv32_efi_TRUE@am__append_2030 = \ -@COND_riscv32_efi_TRUE@ $(nodist_reboot_module_SOURCES) \ -@COND_riscv32_efi_TRUE@ reboot.marker -@COND_riscv32_efi_TRUE@am__append_2031 = reboot.mod -@COND_riscv32_efi_TRUE@am__append_2032 = reboot.marker -@COND_riscv64_efi_TRUE@am__append_2033 = reboot.module -@COND_riscv64_efi_TRUE@am__append_2034 = reboot.module$(EXEEXT) -@COND_riscv64_efi_TRUE@am__append_2035 = -@COND_riscv64_efi_TRUE@am__append_2036 = $(nodist_reboot_module_SOURCES) -@COND_riscv64_efi_TRUE@am__append_2037 = \ -@COND_riscv64_efi_TRUE@ $(nodist_reboot_module_SOURCES) \ -@COND_riscv64_efi_TRUE@ reboot.marker -@COND_riscv64_efi_TRUE@am__append_2038 = reboot.mod -@COND_riscv64_efi_TRUE@am__append_2039 = reboot.marker -@COND_x86_64_efi_TRUE@am__append_2040 = shim_lock.module -@COND_x86_64_efi_TRUE@am__append_2041 = shim_lock.module$(EXEEXT) -@COND_x86_64_efi_FALSE@shim_lock_module_DEPENDENCIES = -@COND_x86_64_efi_TRUE@am__append_2042 = -@COND_x86_64_efi_TRUE@am__append_2043 = $(nodist_shim_lock_module_SOURCES) -@COND_x86_64_efi_TRUE@am__append_2044 = \ -@COND_x86_64_efi_TRUE@ $(nodist_shim_lock_module_SOURCES) \ -@COND_x86_64_efi_TRUE@ shim_lock.marker -@COND_x86_64_efi_TRUE@am__append_2045 = shim_lock.mod -@COND_x86_64_efi_TRUE@am__append_2046 = shim_lock.marker -@COND_i386_pc_TRUE@am__append_2047 = hdparm.module -@COND_i386_pc_TRUE@am__append_2048 = hdparm.module$(EXEEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_x86_64_efi_FALSE@hdparm_module_DEPENDENCIES = -@COND_i386_pc_TRUE@am__append_2049 = -@COND_i386_pc_TRUE@am__append_2050 = $(nodist_hdparm_module_SOURCES) -@COND_i386_pc_TRUE@am__append_2051 = $(nodist_hdparm_module_SOURCES) \ -@COND_i386_pc_TRUE@ hdparm.marker -@COND_i386_pc_TRUE@am__append_2052 = hdparm.mod -@COND_i386_pc_TRUE@am__append_2053 = hdparm.marker -@COND_i386_efi_TRUE@am__append_2054 = hdparm.module -@COND_i386_efi_TRUE@am__append_2055 = hdparm.module$(EXEEXT) -@COND_i386_efi_TRUE@am__append_2056 = -@COND_i386_efi_TRUE@am__append_2057 = $(nodist_hdparm_module_SOURCES) -@COND_i386_efi_TRUE@am__append_2058 = $(nodist_hdparm_module_SOURCES) \ -@COND_i386_efi_TRUE@ hdparm.marker -@COND_i386_efi_TRUE@am__append_2059 = hdparm.mod -@COND_i386_efi_TRUE@am__append_2060 = hdparm.marker -@COND_i386_qemu_TRUE@am__append_2061 = hdparm.module -@COND_i386_qemu_TRUE@am__append_2062 = hdparm.module$(EXEEXT) -@COND_i386_qemu_TRUE@am__append_2063 = -@COND_i386_qemu_TRUE@am__append_2064 = $(nodist_hdparm_module_SOURCES) -@COND_i386_qemu_TRUE@am__append_2065 = \ -@COND_i386_qemu_TRUE@ $(nodist_hdparm_module_SOURCES) \ -@COND_i386_qemu_TRUE@ hdparm.marker -@COND_i386_qemu_TRUE@am__append_2066 = hdparm.mod -@COND_i386_qemu_TRUE@am__append_2067 = hdparm.marker -@COND_i386_coreboot_TRUE@am__append_2068 = hdparm.module -@COND_i386_coreboot_TRUE@am__append_2069 = hdparm.module$(EXEEXT) -@COND_i386_coreboot_TRUE@am__append_2070 = -@COND_i386_coreboot_TRUE@am__append_2071 = $(nodist_hdparm_module_SOURCES) -@COND_i386_coreboot_TRUE@am__append_2072 = \ -@COND_i386_coreboot_TRUE@ $(nodist_hdparm_module_SOURCES) \ -@COND_i386_coreboot_TRUE@ hdparm.marker -@COND_i386_coreboot_TRUE@am__append_2073 = hdparm.mod -@COND_i386_coreboot_TRUE@am__append_2074 = hdparm.marker -@COND_i386_multiboot_TRUE@am__append_2075 = hdparm.module -@COND_i386_multiboot_TRUE@am__append_2076 = hdparm.module$(EXEEXT) -@COND_i386_multiboot_TRUE@am__append_2077 = -@COND_i386_multiboot_TRUE@am__append_2078 = $(nodist_hdparm_module_SOURCES) -@COND_i386_multiboot_TRUE@am__append_2079 = \ -@COND_i386_multiboot_TRUE@ $(nodist_hdparm_module_SOURCES) \ -@COND_i386_multiboot_TRUE@ hdparm.marker -@COND_i386_multiboot_TRUE@am__append_2080 = hdparm.mod -@COND_i386_multiboot_TRUE@am__append_2081 = hdparm.marker -@COND_i386_ieee1275_TRUE@am__append_2082 = hdparm.module -@COND_i386_ieee1275_TRUE@am__append_2083 = hdparm.module$(EXEEXT) -@COND_i386_ieee1275_TRUE@am__append_2084 = -@COND_i386_ieee1275_TRUE@am__append_2085 = $(nodist_hdparm_module_SOURCES) -@COND_i386_ieee1275_TRUE@am__append_2086 = \ -@COND_i386_ieee1275_TRUE@ $(nodist_hdparm_module_SOURCES) \ -@COND_i386_ieee1275_TRUE@ hdparm.marker -@COND_i386_ieee1275_TRUE@am__append_2087 = hdparm.mod -@COND_i386_ieee1275_TRUE@am__append_2088 = hdparm.marker -@COND_x86_64_efi_TRUE@am__append_2089 = hdparm.module -@COND_x86_64_efi_TRUE@am__append_2090 = hdparm.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__append_2091 = -@COND_x86_64_efi_TRUE@am__append_2092 = $(nodist_hdparm_module_SOURCES) -@COND_x86_64_efi_TRUE@am__append_2093 = \ -@COND_x86_64_efi_TRUE@ $(nodist_hdparm_module_SOURCES) \ -@COND_x86_64_efi_TRUE@ hdparm.marker -@COND_x86_64_efi_TRUE@am__append_2094 = hdparm.mod -@COND_x86_64_efi_TRUE@am__append_2095 = hdparm.marker -@COND_mips_loongson_TRUE@am__append_2096 = hdparm.module -@COND_mips_loongson_TRUE@am__append_2097 = hdparm.module$(EXEEXT) -@COND_mips_loongson_TRUE@am__append_2098 = -@COND_mips_loongson_TRUE@am__append_2099 = $(nodist_hdparm_module_SOURCES) -@COND_mips_loongson_TRUE@am__append_2100 = \ -@COND_mips_loongson_TRUE@ $(nodist_hdparm_module_SOURCES) \ -@COND_mips_loongson_TRUE@ hdparm.marker -@COND_mips_loongson_TRUE@am__append_2101 = hdparm.mod -@COND_mips_loongson_TRUE@am__append_2102 = hdparm.marker -@COND_mips_qemu_mips_TRUE@am__append_2103 = hdparm.module -@COND_mips_qemu_mips_TRUE@am__append_2104 = hdparm.module$(EXEEXT) -@COND_mips_qemu_mips_TRUE@am__append_2105 = -@COND_mips_qemu_mips_TRUE@am__append_2106 = $(nodist_hdparm_module_SOURCES) -@COND_mips_qemu_mips_TRUE@am__append_2107 = \ -@COND_mips_qemu_mips_TRUE@ $(nodist_hdparm_module_SOURCES) \ -@COND_mips_qemu_mips_TRUE@ hdparm.marker -@COND_mips_qemu_mips_TRUE@am__append_2108 = hdparm.mod -@COND_mips_qemu_mips_TRUE@am__append_2109 = hdparm.marker -@COND_i386_efi_TRUE@am__append_2110 = loadbios.module -@COND_i386_efi_TRUE@am__append_2111 = loadbios.module$(EXEEXT) -@COND_i386_efi_FALSE@@COND_x86_64_efi_FALSE@loadbios_module_DEPENDENCIES = -@COND_i386_efi_TRUE@am__append_2112 = -@COND_i386_efi_TRUE@am__append_2113 = $(nodist_loadbios_module_SOURCES) -@COND_i386_efi_TRUE@am__append_2114 = \ -@COND_i386_efi_TRUE@ $(nodist_loadbios_module_SOURCES) \ -@COND_i386_efi_TRUE@ loadbios.marker -@COND_i386_efi_TRUE@am__append_2115 = loadbios.mod -@COND_i386_efi_TRUE@am__append_2116 = loadbios.marker -@COND_x86_64_efi_TRUE@am__append_2117 = loadbios.module -@COND_x86_64_efi_TRUE@am__append_2118 = loadbios.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__append_2119 = -@COND_x86_64_efi_TRUE@am__append_2120 = $(nodist_loadbios_module_SOURCES) -@COND_x86_64_efi_TRUE@am__append_2121 = \ -@COND_x86_64_efi_TRUE@ $(nodist_loadbios_module_SOURCES) \ -@COND_x86_64_efi_TRUE@ loadbios.marker -@COND_x86_64_efi_TRUE@am__append_2122 = loadbios.mod -@COND_x86_64_efi_TRUE@am__append_2123 = loadbios.marker -@COND_i386_pc_TRUE@am__append_2124 = lspci.module -@COND_i386_pc_TRUE@am__append_2125 = lspci.module$(EXEEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_mips_loongson_FALSE@@COND_x86_64_efi_FALSE@lspci_module_DEPENDENCIES = -@COND_i386_pc_TRUE@am__append_2126 = -@COND_i386_pc_TRUE@am__append_2127 = $(nodist_lspci_module_SOURCES) -@COND_i386_pc_TRUE@am__append_2128 = $(nodist_lspci_module_SOURCES) \ -@COND_i386_pc_TRUE@ lspci.marker -@COND_i386_pc_TRUE@am__append_2129 = lspci.mod -@COND_i386_pc_TRUE@am__append_2130 = lspci.marker -@COND_i386_efi_TRUE@am__append_2131 = lspci.module -@COND_i386_efi_TRUE@am__append_2132 = lspci.module$(EXEEXT) -@COND_i386_efi_TRUE@am__append_2133 = -@COND_i386_efi_TRUE@am__append_2134 = $(nodist_lspci_module_SOURCES) -@COND_i386_efi_TRUE@am__append_2135 = $(nodist_lspci_module_SOURCES) \ -@COND_i386_efi_TRUE@ lspci.marker -@COND_i386_efi_TRUE@am__append_2136 = lspci.mod -@COND_i386_efi_TRUE@am__append_2137 = lspci.marker -@COND_i386_qemu_TRUE@am__append_2138 = lspci.module -@COND_i386_qemu_TRUE@am__append_2139 = lspci.module$(EXEEXT) -@COND_i386_qemu_TRUE@am__append_2140 = -@COND_i386_qemu_TRUE@am__append_2141 = $(nodist_lspci_module_SOURCES) -@COND_i386_qemu_TRUE@am__append_2142 = $(nodist_lspci_module_SOURCES) \ -@COND_i386_qemu_TRUE@ lspci.marker -@COND_i386_qemu_TRUE@am__append_2143 = lspci.mod -@COND_i386_qemu_TRUE@am__append_2144 = lspci.marker -@COND_i386_coreboot_TRUE@am__append_2145 = lspci.module -@COND_i386_coreboot_TRUE@am__append_2146 = lspci.module$(EXEEXT) -@COND_i386_coreboot_TRUE@am__append_2147 = -@COND_i386_coreboot_TRUE@am__append_2148 = $(nodist_lspci_module_SOURCES) -@COND_i386_coreboot_TRUE@am__append_2149 = \ -@COND_i386_coreboot_TRUE@ $(nodist_lspci_module_SOURCES) \ -@COND_i386_coreboot_TRUE@ lspci.marker -@COND_i386_coreboot_TRUE@am__append_2150 = lspci.mod -@COND_i386_coreboot_TRUE@am__append_2151 = lspci.marker -@COND_i386_multiboot_TRUE@am__append_2152 = lspci.module -@COND_i386_multiboot_TRUE@am__append_2153 = lspci.module$(EXEEXT) -@COND_i386_multiboot_TRUE@am__append_2154 = -@COND_i386_multiboot_TRUE@am__append_2155 = $(nodist_lspci_module_SOURCES) -@COND_i386_multiboot_TRUE@am__append_2156 = \ -@COND_i386_multiboot_TRUE@ $(nodist_lspci_module_SOURCES) \ -@COND_i386_multiboot_TRUE@ lspci.marker -@COND_i386_multiboot_TRUE@am__append_2157 = lspci.mod -@COND_i386_multiboot_TRUE@am__append_2158 = lspci.marker -@COND_i386_ieee1275_TRUE@am__append_2159 = lspci.module -@COND_i386_ieee1275_TRUE@am__append_2160 = lspci.module$(EXEEXT) -@COND_i386_ieee1275_TRUE@am__append_2161 = -@COND_i386_ieee1275_TRUE@am__append_2162 = $(nodist_lspci_module_SOURCES) -@COND_i386_ieee1275_TRUE@am__append_2163 = \ -@COND_i386_ieee1275_TRUE@ $(nodist_lspci_module_SOURCES) \ -@COND_i386_ieee1275_TRUE@ lspci.marker -@COND_i386_ieee1275_TRUE@am__append_2164 = lspci.mod -@COND_i386_ieee1275_TRUE@am__append_2165 = lspci.marker -@COND_x86_64_efi_TRUE@am__append_2166 = lspci.module -@COND_x86_64_efi_TRUE@am__append_2167 = lspci.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__append_2168 = -@COND_x86_64_efi_TRUE@am__append_2169 = $(nodist_lspci_module_SOURCES) -@COND_x86_64_efi_TRUE@am__append_2170 = \ -@COND_x86_64_efi_TRUE@ $(nodist_lspci_module_SOURCES) \ -@COND_x86_64_efi_TRUE@ lspci.marker -@COND_x86_64_efi_TRUE@am__append_2171 = lspci.mod -@COND_x86_64_efi_TRUE@am__append_2172 = lspci.marker -@COND_mips_loongson_TRUE@am__append_2173 = lspci.module -@COND_mips_loongson_TRUE@am__append_2174 = lspci.module$(EXEEXT) -@COND_mips_loongson_TRUE@am__append_2175 = -@COND_mips_loongson_TRUE@am__append_2176 = $(nodist_lspci_module_SOURCES) -@COND_mips_loongson_TRUE@am__append_2177 = \ -@COND_mips_loongson_TRUE@ $(nodist_lspci_module_SOURCES) \ -@COND_mips_loongson_TRUE@ lspci.marker -@COND_mips_loongson_TRUE@am__append_2178 = lspci.mod -@COND_mips_loongson_TRUE@am__append_2179 = lspci.marker -@COND_i386_pc_TRUE@am__append_2180 = play.module -@COND_i386_pc_TRUE@am__append_2181 = play.module$(EXEEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_x86_64_efi_FALSE@play_module_DEPENDENCIES = -@COND_i386_pc_TRUE@am__append_2182 = -@COND_i386_pc_TRUE@am__append_2183 = $(nodist_play_module_SOURCES) -@COND_i386_pc_TRUE@am__append_2184 = $(nodist_play_module_SOURCES) \ -@COND_i386_pc_TRUE@ play.marker -@COND_i386_pc_TRUE@am__append_2185 = play.mod -@COND_i386_pc_TRUE@am__append_2186 = play.marker -@COND_i386_efi_TRUE@am__append_2187 = play.module -@COND_i386_efi_TRUE@am__append_2188 = play.module$(EXEEXT) -@COND_i386_efi_TRUE@am__append_2189 = -@COND_i386_efi_TRUE@am__append_2190 = $(nodist_play_module_SOURCES) -@COND_i386_efi_TRUE@am__append_2191 = $(nodist_play_module_SOURCES) \ -@COND_i386_efi_TRUE@ play.marker -@COND_i386_efi_TRUE@am__append_2192 = play.mod -@COND_i386_efi_TRUE@am__append_2193 = play.marker -@COND_i386_qemu_TRUE@am__append_2194 = play.module -@COND_i386_qemu_TRUE@am__append_2195 = play.module$(EXEEXT) -@COND_i386_qemu_TRUE@am__append_2196 = -@COND_i386_qemu_TRUE@am__append_2197 = $(nodist_play_module_SOURCES) -@COND_i386_qemu_TRUE@am__append_2198 = $(nodist_play_module_SOURCES) \ -@COND_i386_qemu_TRUE@ play.marker -@COND_i386_qemu_TRUE@am__append_2199 = play.mod -@COND_i386_qemu_TRUE@am__append_2200 = play.marker -@COND_i386_coreboot_TRUE@am__append_2201 = play.module -@COND_i386_coreboot_TRUE@am__append_2202 = play.module$(EXEEXT) -@COND_i386_coreboot_TRUE@am__append_2203 = -@COND_i386_coreboot_TRUE@am__append_2204 = $(nodist_play_module_SOURCES) -@COND_i386_coreboot_TRUE@am__append_2205 = \ -@COND_i386_coreboot_TRUE@ $(nodist_play_module_SOURCES) \ -@COND_i386_coreboot_TRUE@ play.marker -@COND_i386_coreboot_TRUE@am__append_2206 = play.mod -@COND_i386_coreboot_TRUE@am__append_2207 = play.marker -@COND_i386_multiboot_TRUE@am__append_2208 = play.module -@COND_i386_multiboot_TRUE@am__append_2209 = play.module$(EXEEXT) -@COND_i386_multiboot_TRUE@am__append_2210 = -@COND_i386_multiboot_TRUE@am__append_2211 = $(nodist_play_module_SOURCES) -@COND_i386_multiboot_TRUE@am__append_2212 = \ -@COND_i386_multiboot_TRUE@ $(nodist_play_module_SOURCES) \ -@COND_i386_multiboot_TRUE@ play.marker -@COND_i386_multiboot_TRUE@am__append_2213 = play.mod -@COND_i386_multiboot_TRUE@am__append_2214 = play.marker -@COND_i386_ieee1275_TRUE@am__append_2215 = play.module -@COND_i386_ieee1275_TRUE@am__append_2216 = play.module$(EXEEXT) -@COND_i386_ieee1275_TRUE@am__append_2217 = -@COND_i386_ieee1275_TRUE@am__append_2218 = $(nodist_play_module_SOURCES) -@COND_i386_ieee1275_TRUE@am__append_2219 = \ -@COND_i386_ieee1275_TRUE@ $(nodist_play_module_SOURCES) \ -@COND_i386_ieee1275_TRUE@ play.marker -@COND_i386_ieee1275_TRUE@am__append_2220 = play.mod -@COND_i386_ieee1275_TRUE@am__append_2221 = play.marker -@COND_x86_64_efi_TRUE@am__append_2222 = play.module -@COND_x86_64_efi_TRUE@am__append_2223 = play.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__append_2224 = -@COND_x86_64_efi_TRUE@am__append_2225 = $(nodist_play_module_SOURCES) -@COND_x86_64_efi_TRUE@am__append_2226 = $(nodist_play_module_SOURCES) \ -@COND_x86_64_efi_TRUE@ play.marker -@COND_x86_64_efi_TRUE@am__append_2227 = play.mod -@COND_x86_64_efi_TRUE@am__append_2228 = play.marker -@COND_i386_pc_TRUE@am__append_2229 = spkmodem.module -@COND_i386_pc_TRUE@am__append_2230 = spkmodem.module$(EXEEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_x86_64_efi_FALSE@spkmodem_module_DEPENDENCIES = -@COND_i386_pc_TRUE@am__append_2231 = -@COND_i386_pc_TRUE@am__append_2232 = $(nodist_spkmodem_module_SOURCES) -@COND_i386_pc_TRUE@am__append_2233 = \ -@COND_i386_pc_TRUE@ $(nodist_spkmodem_module_SOURCES) \ -@COND_i386_pc_TRUE@ spkmodem.marker -@COND_i386_pc_TRUE@am__append_2234 = spkmodem.mod -@COND_i386_pc_TRUE@am__append_2235 = spkmodem.marker -@COND_i386_efi_TRUE@am__append_2236 = spkmodem.module -@COND_i386_efi_TRUE@am__append_2237 = spkmodem.module$(EXEEXT) -@COND_i386_efi_TRUE@am__append_2238 = -@COND_i386_efi_TRUE@am__append_2239 = $(nodist_spkmodem_module_SOURCES) -@COND_i386_efi_TRUE@am__append_2240 = \ -@COND_i386_efi_TRUE@ $(nodist_spkmodem_module_SOURCES) \ -@COND_i386_efi_TRUE@ spkmodem.marker -@COND_i386_efi_TRUE@am__append_2241 = spkmodem.mod -@COND_i386_efi_TRUE@am__append_2242 = spkmodem.marker -@COND_i386_qemu_TRUE@am__append_2243 = spkmodem.module -@COND_i386_qemu_TRUE@am__append_2244 = spkmodem.module$(EXEEXT) -@COND_i386_qemu_TRUE@am__append_2245 = -@COND_i386_qemu_TRUE@am__append_2246 = $(nodist_spkmodem_module_SOURCES) -@COND_i386_qemu_TRUE@am__append_2247 = \ -@COND_i386_qemu_TRUE@ $(nodist_spkmodem_module_SOURCES) \ -@COND_i386_qemu_TRUE@ spkmodem.marker -@COND_i386_qemu_TRUE@am__append_2248 = spkmodem.mod -@COND_i386_qemu_TRUE@am__append_2249 = spkmodem.marker -@COND_i386_coreboot_TRUE@am__append_2250 = spkmodem.module -@COND_i386_coreboot_TRUE@am__append_2251 = spkmodem.module$(EXEEXT) -@COND_i386_coreboot_TRUE@am__append_2252 = -@COND_i386_coreboot_TRUE@am__append_2253 = $(nodist_spkmodem_module_SOURCES) -@COND_i386_coreboot_TRUE@am__append_2254 = \ -@COND_i386_coreboot_TRUE@ $(nodist_spkmodem_module_SOURCES) \ -@COND_i386_coreboot_TRUE@ spkmodem.marker -@COND_i386_coreboot_TRUE@am__append_2255 = spkmodem.mod -@COND_i386_coreboot_TRUE@am__append_2256 = spkmodem.marker -@COND_i386_multiboot_TRUE@am__append_2257 = spkmodem.module -@COND_i386_multiboot_TRUE@am__append_2258 = spkmodem.module$(EXEEXT) -@COND_i386_multiboot_TRUE@am__append_2259 = -@COND_i386_multiboot_TRUE@am__append_2260 = $(nodist_spkmodem_module_SOURCES) -@COND_i386_multiboot_TRUE@am__append_2261 = \ -@COND_i386_multiboot_TRUE@ $(nodist_spkmodem_module_SOURCES) \ -@COND_i386_multiboot_TRUE@ spkmodem.marker -@COND_i386_multiboot_TRUE@am__append_2262 = spkmodem.mod -@COND_i386_multiboot_TRUE@am__append_2263 = spkmodem.marker -@COND_i386_ieee1275_TRUE@am__append_2264 = spkmodem.module -@COND_i386_ieee1275_TRUE@am__append_2265 = spkmodem.module$(EXEEXT) -@COND_i386_ieee1275_TRUE@am__append_2266 = -@COND_i386_ieee1275_TRUE@am__append_2267 = $(nodist_spkmodem_module_SOURCES) -@COND_i386_ieee1275_TRUE@am__append_2268 = \ -@COND_i386_ieee1275_TRUE@ $(nodist_spkmodem_module_SOURCES) \ -@COND_i386_ieee1275_TRUE@ spkmodem.marker -@COND_i386_ieee1275_TRUE@am__append_2269 = spkmodem.mod -@COND_i386_ieee1275_TRUE@am__append_2270 = spkmodem.marker -@COND_x86_64_efi_TRUE@am__append_2271 = spkmodem.module -@COND_x86_64_efi_TRUE@am__append_2272 = spkmodem.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__append_2273 = -@COND_x86_64_efi_TRUE@am__append_2274 = $(nodist_spkmodem_module_SOURCES) -@COND_x86_64_efi_TRUE@am__append_2275 = \ -@COND_x86_64_efi_TRUE@ $(nodist_spkmodem_module_SOURCES) \ -@COND_x86_64_efi_TRUE@ spkmodem.marker -@COND_x86_64_efi_TRUE@am__append_2276 = spkmodem.mod -@COND_x86_64_efi_TRUE@am__append_2277 = spkmodem.marker -@COND_i386_pc_TRUE@am__append_2278 = morse.module -@COND_i386_pc_TRUE@am__append_2279 = morse.module$(EXEEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_x86_64_efi_FALSE@morse_module_DEPENDENCIES = -@COND_i386_pc_TRUE@am__append_2280 = -@COND_i386_pc_TRUE@am__append_2281 = $(nodist_morse_module_SOURCES) -@COND_i386_pc_TRUE@am__append_2282 = $(nodist_morse_module_SOURCES) \ -@COND_i386_pc_TRUE@ morse.marker -@COND_i386_pc_TRUE@am__append_2283 = morse.mod -@COND_i386_pc_TRUE@am__append_2284 = morse.marker -@COND_i386_efi_TRUE@am__append_2285 = morse.module -@COND_i386_efi_TRUE@am__append_2286 = morse.module$(EXEEXT) -@COND_i386_efi_TRUE@am__append_2287 = -@COND_i386_efi_TRUE@am__append_2288 = $(nodist_morse_module_SOURCES) -@COND_i386_efi_TRUE@am__append_2289 = $(nodist_morse_module_SOURCES) \ -@COND_i386_efi_TRUE@ morse.marker -@COND_i386_efi_TRUE@am__append_2290 = morse.mod -@COND_i386_efi_TRUE@am__append_2291 = morse.marker -@COND_i386_qemu_TRUE@am__append_2292 = morse.module -@COND_i386_qemu_TRUE@am__append_2293 = morse.module$(EXEEXT) -@COND_i386_qemu_TRUE@am__append_2294 = -@COND_i386_qemu_TRUE@am__append_2295 = $(nodist_morse_module_SOURCES) -@COND_i386_qemu_TRUE@am__append_2296 = $(nodist_morse_module_SOURCES) \ -@COND_i386_qemu_TRUE@ morse.marker -@COND_i386_qemu_TRUE@am__append_2297 = morse.mod -@COND_i386_qemu_TRUE@am__append_2298 = morse.marker -@COND_i386_coreboot_TRUE@am__append_2299 = morse.module -@COND_i386_coreboot_TRUE@am__append_2300 = morse.module$(EXEEXT) -@COND_i386_coreboot_TRUE@am__append_2301 = -@COND_i386_coreboot_TRUE@am__append_2302 = $(nodist_morse_module_SOURCES) -@COND_i386_coreboot_TRUE@am__append_2303 = \ -@COND_i386_coreboot_TRUE@ $(nodist_morse_module_SOURCES) \ -@COND_i386_coreboot_TRUE@ morse.marker -@COND_i386_coreboot_TRUE@am__append_2304 = morse.mod -@COND_i386_coreboot_TRUE@am__append_2305 = morse.marker -@COND_i386_multiboot_TRUE@am__append_2306 = morse.module -@COND_i386_multiboot_TRUE@am__append_2307 = morse.module$(EXEEXT) -@COND_i386_multiboot_TRUE@am__append_2308 = -@COND_i386_multiboot_TRUE@am__append_2309 = $(nodist_morse_module_SOURCES) -@COND_i386_multiboot_TRUE@am__append_2310 = \ -@COND_i386_multiboot_TRUE@ $(nodist_morse_module_SOURCES) \ -@COND_i386_multiboot_TRUE@ morse.marker -@COND_i386_multiboot_TRUE@am__append_2311 = morse.mod -@COND_i386_multiboot_TRUE@am__append_2312 = morse.marker -@COND_i386_ieee1275_TRUE@am__append_2313 = morse.module -@COND_i386_ieee1275_TRUE@am__append_2314 = morse.module$(EXEEXT) -@COND_i386_ieee1275_TRUE@am__append_2315 = -@COND_i386_ieee1275_TRUE@am__append_2316 = $(nodist_morse_module_SOURCES) -@COND_i386_ieee1275_TRUE@am__append_2317 = \ -@COND_i386_ieee1275_TRUE@ $(nodist_morse_module_SOURCES) \ -@COND_i386_ieee1275_TRUE@ morse.marker -@COND_i386_ieee1275_TRUE@am__append_2318 = morse.mod -@COND_i386_ieee1275_TRUE@am__append_2319 = morse.marker -@COND_x86_64_efi_TRUE@am__append_2320 = morse.module -@COND_x86_64_efi_TRUE@am__append_2321 = morse.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__append_2322 = -@COND_x86_64_efi_TRUE@am__append_2323 = $(nodist_morse_module_SOURCES) -@COND_x86_64_efi_TRUE@am__append_2324 = \ -@COND_x86_64_efi_TRUE@ $(nodist_morse_module_SOURCES) \ -@COND_x86_64_efi_TRUE@ morse.marker -@COND_x86_64_efi_TRUE@am__append_2325 = morse.mod -@COND_x86_64_efi_TRUE@am__append_2326 = morse.marker -@COND_i386_pc_TRUE@am__append_2327 = setpci.module -@COND_i386_pc_TRUE@am__append_2328 = setpci.module$(EXEEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_mips_loongson_FALSE@@COND_x86_64_efi_FALSE@setpci_module_DEPENDENCIES = -@COND_i386_pc_TRUE@am__append_2329 = -@COND_i386_pc_TRUE@am__append_2330 = $(nodist_setpci_module_SOURCES) -@COND_i386_pc_TRUE@am__append_2331 = $(nodist_setpci_module_SOURCES) \ -@COND_i386_pc_TRUE@ setpci.marker -@COND_i386_pc_TRUE@am__append_2332 = setpci.mod -@COND_i386_pc_TRUE@am__append_2333 = setpci.marker -@COND_i386_efi_TRUE@am__append_2334 = setpci.module -@COND_i386_efi_TRUE@am__append_2335 = setpci.module$(EXEEXT) -@COND_i386_efi_TRUE@am__append_2336 = -@COND_i386_efi_TRUE@am__append_2337 = $(nodist_setpci_module_SOURCES) -@COND_i386_efi_TRUE@am__append_2338 = $(nodist_setpci_module_SOURCES) \ -@COND_i386_efi_TRUE@ setpci.marker -@COND_i386_efi_TRUE@am__append_2339 = setpci.mod -@COND_i386_efi_TRUE@am__append_2340 = setpci.marker -@COND_i386_qemu_TRUE@am__append_2341 = setpci.module -@COND_i386_qemu_TRUE@am__append_2342 = setpci.module$(EXEEXT) -@COND_i386_qemu_TRUE@am__append_2343 = -@COND_i386_qemu_TRUE@am__append_2344 = $(nodist_setpci_module_SOURCES) -@COND_i386_qemu_TRUE@am__append_2345 = \ -@COND_i386_qemu_TRUE@ $(nodist_setpci_module_SOURCES) \ -@COND_i386_qemu_TRUE@ setpci.marker -@COND_i386_qemu_TRUE@am__append_2346 = setpci.mod -@COND_i386_qemu_TRUE@am__append_2347 = setpci.marker -@COND_i386_coreboot_TRUE@am__append_2348 = setpci.module -@COND_i386_coreboot_TRUE@am__append_2349 = setpci.module$(EXEEXT) -@COND_i386_coreboot_TRUE@am__append_2350 = -@COND_i386_coreboot_TRUE@am__append_2351 = $(nodist_setpci_module_SOURCES) -@COND_i386_coreboot_TRUE@am__append_2352 = \ -@COND_i386_coreboot_TRUE@ $(nodist_setpci_module_SOURCES) \ -@COND_i386_coreboot_TRUE@ setpci.marker -@COND_i386_coreboot_TRUE@am__append_2353 = setpci.mod -@COND_i386_coreboot_TRUE@am__append_2354 = setpci.marker -@COND_i386_multiboot_TRUE@am__append_2355 = setpci.module -@COND_i386_multiboot_TRUE@am__append_2356 = setpci.module$(EXEEXT) -@COND_i386_multiboot_TRUE@am__append_2357 = -@COND_i386_multiboot_TRUE@am__append_2358 = $(nodist_setpci_module_SOURCES) -@COND_i386_multiboot_TRUE@am__append_2359 = \ -@COND_i386_multiboot_TRUE@ $(nodist_setpci_module_SOURCES) \ -@COND_i386_multiboot_TRUE@ setpci.marker -@COND_i386_multiboot_TRUE@am__append_2360 = setpci.mod -@COND_i386_multiboot_TRUE@am__append_2361 = setpci.marker -@COND_i386_ieee1275_TRUE@am__append_2362 = setpci.module -@COND_i386_ieee1275_TRUE@am__append_2363 = setpci.module$(EXEEXT) -@COND_i386_ieee1275_TRUE@am__append_2364 = -@COND_i386_ieee1275_TRUE@am__append_2365 = $(nodist_setpci_module_SOURCES) -@COND_i386_ieee1275_TRUE@am__append_2366 = \ -@COND_i386_ieee1275_TRUE@ $(nodist_setpci_module_SOURCES) \ -@COND_i386_ieee1275_TRUE@ setpci.marker -@COND_i386_ieee1275_TRUE@am__append_2367 = setpci.mod -@COND_i386_ieee1275_TRUE@am__append_2368 = setpci.marker -@COND_x86_64_efi_TRUE@am__append_2369 = setpci.module -@COND_x86_64_efi_TRUE@am__append_2370 = setpci.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__append_2371 = -@COND_x86_64_efi_TRUE@am__append_2372 = $(nodist_setpci_module_SOURCES) -@COND_x86_64_efi_TRUE@am__append_2373 = \ -@COND_x86_64_efi_TRUE@ $(nodist_setpci_module_SOURCES) \ -@COND_x86_64_efi_TRUE@ setpci.marker -@COND_x86_64_efi_TRUE@am__append_2374 = setpci.mod -@COND_x86_64_efi_TRUE@am__append_2375 = setpci.marker -@COND_mips_loongson_TRUE@am__append_2376 = setpci.module -@COND_mips_loongson_TRUE@am__append_2377 = setpci.module$(EXEEXT) -@COND_mips_loongson_TRUE@am__append_2378 = -@COND_mips_loongson_TRUE@am__append_2379 = $(nodist_setpci_module_SOURCES) -@COND_mips_loongson_TRUE@am__append_2380 = \ -@COND_mips_loongson_TRUE@ $(nodist_setpci_module_SOURCES) \ -@COND_mips_loongson_TRUE@ setpci.marker -@COND_mips_loongson_TRUE@am__append_2381 = setpci.mod -@COND_mips_loongson_TRUE@am__append_2382 = setpci.marker -@COND_i386_pc_TRUE@am__append_2383 = pcidump.module -@COND_i386_pc_TRUE@am__append_2384 = pcidump.module$(EXEEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_mips_loongson_FALSE@@COND_x86_64_efi_FALSE@pcidump_module_DEPENDENCIES = -@COND_i386_pc_TRUE@am__append_2385 = -@COND_i386_pc_TRUE@am__append_2386 = $(nodist_pcidump_module_SOURCES) -@COND_i386_pc_TRUE@am__append_2387 = $(nodist_pcidump_module_SOURCES) \ -@COND_i386_pc_TRUE@ pcidump.marker -@COND_i386_pc_TRUE@am__append_2388 = pcidump.mod -@COND_i386_pc_TRUE@am__append_2389 = pcidump.marker -@COND_i386_efi_TRUE@am__append_2390 = pcidump.module -@COND_i386_efi_TRUE@am__append_2391 = pcidump.module$(EXEEXT) -@COND_i386_efi_TRUE@am__append_2392 = -@COND_i386_efi_TRUE@am__append_2393 = $(nodist_pcidump_module_SOURCES) -@COND_i386_efi_TRUE@am__append_2394 = \ -@COND_i386_efi_TRUE@ $(nodist_pcidump_module_SOURCES) \ -@COND_i386_efi_TRUE@ pcidump.marker -@COND_i386_efi_TRUE@am__append_2395 = pcidump.mod -@COND_i386_efi_TRUE@am__append_2396 = pcidump.marker -@COND_i386_qemu_TRUE@am__append_2397 = pcidump.module -@COND_i386_qemu_TRUE@am__append_2398 = pcidump.module$(EXEEXT) -@COND_i386_qemu_TRUE@am__append_2399 = -@COND_i386_qemu_TRUE@am__append_2400 = $(nodist_pcidump_module_SOURCES) -@COND_i386_qemu_TRUE@am__append_2401 = \ -@COND_i386_qemu_TRUE@ $(nodist_pcidump_module_SOURCES) \ -@COND_i386_qemu_TRUE@ pcidump.marker -@COND_i386_qemu_TRUE@am__append_2402 = pcidump.mod -@COND_i386_qemu_TRUE@am__append_2403 = pcidump.marker -@COND_i386_coreboot_TRUE@am__append_2404 = pcidump.module -@COND_i386_coreboot_TRUE@am__append_2405 = pcidump.module$(EXEEXT) -@COND_i386_coreboot_TRUE@am__append_2406 = -@COND_i386_coreboot_TRUE@am__append_2407 = $(nodist_pcidump_module_SOURCES) -@COND_i386_coreboot_TRUE@am__append_2408 = \ -@COND_i386_coreboot_TRUE@ $(nodist_pcidump_module_SOURCES) \ -@COND_i386_coreboot_TRUE@ pcidump.marker -@COND_i386_coreboot_TRUE@am__append_2409 = pcidump.mod -@COND_i386_coreboot_TRUE@am__append_2410 = pcidump.marker -@COND_i386_multiboot_TRUE@am__append_2411 = pcidump.module -@COND_i386_multiboot_TRUE@am__append_2412 = pcidump.module$(EXEEXT) -@COND_i386_multiboot_TRUE@am__append_2413 = -@COND_i386_multiboot_TRUE@am__append_2414 = $(nodist_pcidump_module_SOURCES) -@COND_i386_multiboot_TRUE@am__append_2415 = \ -@COND_i386_multiboot_TRUE@ $(nodist_pcidump_module_SOURCES) \ -@COND_i386_multiboot_TRUE@ pcidump.marker -@COND_i386_multiboot_TRUE@am__append_2416 = pcidump.mod -@COND_i386_multiboot_TRUE@am__append_2417 = pcidump.marker -@COND_i386_ieee1275_TRUE@am__append_2418 = pcidump.module -@COND_i386_ieee1275_TRUE@am__append_2419 = pcidump.module$(EXEEXT) -@COND_i386_ieee1275_TRUE@am__append_2420 = -@COND_i386_ieee1275_TRUE@am__append_2421 = $(nodist_pcidump_module_SOURCES) -@COND_i386_ieee1275_TRUE@am__append_2422 = \ -@COND_i386_ieee1275_TRUE@ $(nodist_pcidump_module_SOURCES) \ -@COND_i386_ieee1275_TRUE@ pcidump.marker -@COND_i386_ieee1275_TRUE@am__append_2423 = pcidump.mod -@COND_i386_ieee1275_TRUE@am__append_2424 = pcidump.marker -@COND_x86_64_efi_TRUE@am__append_2425 = pcidump.module -@COND_x86_64_efi_TRUE@am__append_2426 = pcidump.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__append_2427 = -@COND_x86_64_efi_TRUE@am__append_2428 = $(nodist_pcidump_module_SOURCES) -@COND_x86_64_efi_TRUE@am__append_2429 = \ -@COND_x86_64_efi_TRUE@ $(nodist_pcidump_module_SOURCES) \ -@COND_x86_64_efi_TRUE@ pcidump.marker -@COND_x86_64_efi_TRUE@am__append_2430 = pcidump.mod -@COND_x86_64_efi_TRUE@am__append_2431 = pcidump.marker -@COND_mips_loongson_TRUE@am__append_2432 = pcidump.module -@COND_mips_loongson_TRUE@am__append_2433 = pcidump.module$(EXEEXT) -@COND_mips_loongson_TRUE@am__append_2434 = -@COND_mips_loongson_TRUE@am__append_2435 = $(nodist_pcidump_module_SOURCES) -@COND_mips_loongson_TRUE@am__append_2436 = \ -@COND_mips_loongson_TRUE@ $(nodist_pcidump_module_SOURCES) \ -@COND_mips_loongson_TRUE@ pcidump.marker -@COND_mips_loongson_TRUE@am__append_2437 = pcidump.mod -@COND_mips_loongson_TRUE@am__append_2438 = pcidump.marker -@COND_i386_ieee1275_TRUE@am__append_2439 = suspend.module -@COND_i386_ieee1275_TRUE@am__append_2440 = suspend.module$(EXEEXT) -@COND_i386_ieee1275_FALSE@@COND_powerpc_ieee1275_FALSE@suspend_module_DEPENDENCIES = -@COND_i386_ieee1275_TRUE@am__append_2441 = -@COND_i386_ieee1275_TRUE@am__append_2442 = $(nodist_suspend_module_SOURCES) -@COND_i386_ieee1275_TRUE@am__append_2443 = \ -@COND_i386_ieee1275_TRUE@ $(nodist_suspend_module_SOURCES) \ -@COND_i386_ieee1275_TRUE@ suspend.marker -@COND_i386_ieee1275_TRUE@am__append_2444 = suspend.mod -@COND_i386_ieee1275_TRUE@am__append_2445 = suspend.marker -@COND_powerpc_ieee1275_TRUE@am__append_2446 = suspend.module \ -@COND_powerpc_ieee1275_TRUE@ escc.module -@COND_powerpc_ieee1275_TRUE@am__append_2447 = suspend.module$(EXEEXT) \ -@COND_powerpc_ieee1275_TRUE@ escc.module$(EXEEXT) -@COND_powerpc_ieee1275_TRUE@am__append_2448 = -@COND_powerpc_ieee1275_TRUE@am__append_2449 = \ -@COND_powerpc_ieee1275_TRUE@ $(nodist_suspend_module_SOURCES) \ -@COND_powerpc_ieee1275_TRUE@ $(nodist_escc_module_SOURCES) -@COND_powerpc_ieee1275_TRUE@am__append_2450 = \ -@COND_powerpc_ieee1275_TRUE@ $(nodist_suspend_module_SOURCES) \ -@COND_powerpc_ieee1275_TRUE@ suspend.marker \ -@COND_powerpc_ieee1275_TRUE@ $(nodist_escc_module_SOURCES) \ -@COND_powerpc_ieee1275_TRUE@ escc.marker -@COND_powerpc_ieee1275_TRUE@am__append_2451 = suspend.mod escc.mod -@COND_powerpc_ieee1275_TRUE@am__append_2452 = suspend.marker \ -@COND_powerpc_ieee1275_TRUE@ escc.marker -@COND_powerpc_ieee1275_FALSE@escc_module_DEPENDENCIES = -@COND_i386_pc_TRUE@am__append_2453 = usbtest.module -@COND_i386_pc_TRUE@am__append_2454 = usbtest.module$(EXEEXT) -@COND_arm_coreboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_mips_loongson_FALSE@@COND_x86_64_efi_FALSE@usbtest_module_DEPENDENCIES = -@COND_i386_pc_TRUE@am__append_2455 = -@COND_i386_pc_TRUE@am__append_2456 = $(nodist_usbtest_module_SOURCES) -@COND_i386_pc_TRUE@am__append_2457 = $(nodist_usbtest_module_SOURCES) \ -@COND_i386_pc_TRUE@ usbtest.marker -@COND_i386_pc_TRUE@am__append_2458 = usbtest.mod -@COND_i386_pc_TRUE@am__append_2459 = usbtest.marker -@COND_i386_efi_TRUE@am__append_2460 = usbtest.module -@COND_i386_efi_TRUE@am__append_2461 = usbtest.module$(EXEEXT) -@COND_i386_efi_TRUE@am__append_2462 = -@COND_i386_efi_TRUE@am__append_2463 = $(nodist_usbtest_module_SOURCES) -@COND_i386_efi_TRUE@am__append_2464 = \ -@COND_i386_efi_TRUE@ $(nodist_usbtest_module_SOURCES) \ -@COND_i386_efi_TRUE@ usbtest.marker -@COND_i386_efi_TRUE@am__append_2465 = usbtest.mod -@COND_i386_efi_TRUE@am__append_2466 = usbtest.marker -@COND_i386_qemu_TRUE@am__append_2467 = usbtest.module -@COND_i386_qemu_TRUE@am__append_2468 = usbtest.module$(EXEEXT) -@COND_i386_qemu_TRUE@am__append_2469 = -@COND_i386_qemu_TRUE@am__append_2470 = $(nodist_usbtest_module_SOURCES) -@COND_i386_qemu_TRUE@am__append_2471 = \ -@COND_i386_qemu_TRUE@ $(nodist_usbtest_module_SOURCES) \ -@COND_i386_qemu_TRUE@ usbtest.marker -@COND_i386_qemu_TRUE@am__append_2472 = usbtest.mod -@COND_i386_qemu_TRUE@am__append_2473 = usbtest.marker -@COND_i386_coreboot_TRUE@am__append_2474 = usbtest.module -@COND_i386_coreboot_TRUE@am__append_2475 = usbtest.module$(EXEEXT) -@COND_i386_coreboot_TRUE@am__append_2476 = -@COND_i386_coreboot_TRUE@am__append_2477 = $(nodist_usbtest_module_SOURCES) -@COND_i386_coreboot_TRUE@am__append_2478 = \ -@COND_i386_coreboot_TRUE@ $(nodist_usbtest_module_SOURCES) \ -@COND_i386_coreboot_TRUE@ usbtest.marker -@COND_i386_coreboot_TRUE@am__append_2479 = usbtest.mod -@COND_i386_coreboot_TRUE@am__append_2480 = usbtest.marker -@COND_i386_multiboot_TRUE@am__append_2481 = usbtest.module -@COND_i386_multiboot_TRUE@am__append_2482 = usbtest.module$(EXEEXT) -@COND_i386_multiboot_TRUE@am__append_2483 = -@COND_i386_multiboot_TRUE@am__append_2484 = $(nodist_usbtest_module_SOURCES) -@COND_i386_multiboot_TRUE@am__append_2485 = \ -@COND_i386_multiboot_TRUE@ $(nodist_usbtest_module_SOURCES) \ -@COND_i386_multiboot_TRUE@ usbtest.marker -@COND_i386_multiboot_TRUE@am__append_2486 = usbtest.mod -@COND_i386_multiboot_TRUE@am__append_2487 = usbtest.marker -@COND_i386_ieee1275_TRUE@am__append_2488 = usbtest.module -@COND_i386_ieee1275_TRUE@am__append_2489 = usbtest.module$(EXEEXT) -@COND_i386_ieee1275_TRUE@am__append_2490 = -@COND_i386_ieee1275_TRUE@am__append_2491 = $(nodist_usbtest_module_SOURCES) -@COND_i386_ieee1275_TRUE@am__append_2492 = \ -@COND_i386_ieee1275_TRUE@ $(nodist_usbtest_module_SOURCES) \ -@COND_i386_ieee1275_TRUE@ usbtest.marker -@COND_i386_ieee1275_TRUE@am__append_2493 = usbtest.mod -@COND_i386_ieee1275_TRUE@am__append_2494 = usbtest.marker -@COND_x86_64_efi_TRUE@am__append_2495 = usbtest.module -@COND_x86_64_efi_TRUE@am__append_2496 = usbtest.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__append_2497 = -@COND_x86_64_efi_TRUE@am__append_2498 = $(nodist_usbtest_module_SOURCES) -@COND_x86_64_efi_TRUE@am__append_2499 = \ -@COND_x86_64_efi_TRUE@ $(nodist_usbtest_module_SOURCES) \ -@COND_x86_64_efi_TRUE@ usbtest.marker -@COND_x86_64_efi_TRUE@am__append_2500 = usbtest.mod -@COND_x86_64_efi_TRUE@am__append_2501 = usbtest.marker -@COND_mips_loongson_TRUE@am__append_2502 = usbtest.module -@COND_mips_loongson_TRUE@am__append_2503 = usbtest.module$(EXEEXT) -@COND_mips_loongson_TRUE@am__append_2504 = -@COND_mips_loongson_TRUE@am__append_2505 = $(nodist_usbtest_module_SOURCES) -@COND_mips_loongson_TRUE@am__append_2506 = \ -@COND_mips_loongson_TRUE@ $(nodist_usbtest_module_SOURCES) \ -@COND_mips_loongson_TRUE@ usbtest.marker -@COND_mips_loongson_TRUE@am__append_2507 = usbtest.mod -@COND_mips_loongson_TRUE@am__append_2508 = usbtest.marker -@COND_arm_coreboot_TRUE@am__append_2509 = usbtest.module -@COND_arm_coreboot_TRUE@am__append_2510 = usbtest.module$(EXEEXT) -@COND_arm_coreboot_TRUE@am__append_2511 = -@COND_arm_coreboot_TRUE@am__append_2512 = $(nodist_usbtest_module_SOURCES) -@COND_arm_coreboot_TRUE@am__append_2513 = \ -@COND_arm_coreboot_TRUE@ $(nodist_usbtest_module_SOURCES) \ -@COND_arm_coreboot_TRUE@ usbtest.marker -@COND_arm_coreboot_TRUE@am__append_2514 = usbtest.mod -@COND_arm_coreboot_TRUE@am__append_2515 = usbtest.marker -@COND_i386_pc_TRUE@am__append_2516 = ata.module -@COND_i386_pc_TRUE@am__append_2517 = ata.module$(EXEEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_x86_64_efi_FALSE@ata_module_DEPENDENCIES = -@COND_i386_pc_TRUE@am__append_2518 = -@COND_i386_pc_TRUE@am__append_2519 = $(nodist_ata_module_SOURCES) -@COND_i386_pc_TRUE@am__append_2520 = $(nodist_ata_module_SOURCES) \ -@COND_i386_pc_TRUE@ ata.marker -@COND_i386_pc_TRUE@am__append_2521 = ata.mod -@COND_i386_pc_TRUE@am__append_2522 = ata.marker -@COND_i386_efi_TRUE@am__append_2523 = ata.module -@COND_i386_efi_TRUE@am__append_2524 = ata.module$(EXEEXT) -@COND_i386_efi_TRUE@am__append_2525 = -@COND_i386_efi_TRUE@am__append_2526 = $(nodist_ata_module_SOURCES) -@COND_i386_efi_TRUE@am__append_2527 = $(nodist_ata_module_SOURCES) \ -@COND_i386_efi_TRUE@ ata.marker -@COND_i386_efi_TRUE@am__append_2528 = ata.mod -@COND_i386_efi_TRUE@am__append_2529 = ata.marker -@COND_i386_qemu_TRUE@am__append_2530 = ata.module -@COND_i386_qemu_TRUE@am__append_2531 = ata.module$(EXEEXT) -@COND_i386_qemu_TRUE@am__append_2532 = -@COND_i386_qemu_TRUE@am__append_2533 = $(nodist_ata_module_SOURCES) -@COND_i386_qemu_TRUE@am__append_2534 = $(nodist_ata_module_SOURCES) \ -@COND_i386_qemu_TRUE@ ata.marker -@COND_i386_qemu_TRUE@am__append_2535 = ata.mod -@COND_i386_qemu_TRUE@am__append_2536 = ata.marker -@COND_i386_coreboot_TRUE@am__append_2537 = ata.module -@COND_i386_coreboot_TRUE@am__append_2538 = ata.module$(EXEEXT) -@COND_i386_coreboot_TRUE@am__append_2539 = -@COND_i386_coreboot_TRUE@am__append_2540 = $(nodist_ata_module_SOURCES) -@COND_i386_coreboot_TRUE@am__append_2541 = \ -@COND_i386_coreboot_TRUE@ $(nodist_ata_module_SOURCES) \ -@COND_i386_coreboot_TRUE@ ata.marker -@COND_i386_coreboot_TRUE@am__append_2542 = ata.mod -@COND_i386_coreboot_TRUE@am__append_2543 = ata.marker -@COND_i386_multiboot_TRUE@am__append_2544 = ata.module -@COND_i386_multiboot_TRUE@am__append_2545 = ata.module$(EXEEXT) -@COND_i386_multiboot_TRUE@am__append_2546 = -@COND_i386_multiboot_TRUE@am__append_2547 = $(nodist_ata_module_SOURCES) -@COND_i386_multiboot_TRUE@am__append_2548 = \ -@COND_i386_multiboot_TRUE@ $(nodist_ata_module_SOURCES) \ -@COND_i386_multiboot_TRUE@ ata.marker -@COND_i386_multiboot_TRUE@am__append_2549 = ata.mod -@COND_i386_multiboot_TRUE@am__append_2550 = ata.marker -@COND_i386_ieee1275_TRUE@am__append_2551 = ata.module -@COND_i386_ieee1275_TRUE@am__append_2552 = ata.module$(EXEEXT) -@COND_i386_ieee1275_TRUE@am__append_2553 = -@COND_i386_ieee1275_TRUE@am__append_2554 = $(nodist_ata_module_SOURCES) -@COND_i386_ieee1275_TRUE@am__append_2555 = \ -@COND_i386_ieee1275_TRUE@ $(nodist_ata_module_SOURCES) \ -@COND_i386_ieee1275_TRUE@ ata.marker -@COND_i386_ieee1275_TRUE@am__append_2556 = ata.mod -@COND_i386_ieee1275_TRUE@am__append_2557 = ata.marker -@COND_x86_64_efi_TRUE@am__append_2558 = ata.module -@COND_x86_64_efi_TRUE@am__append_2559 = ata.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__append_2560 = -@COND_x86_64_efi_TRUE@am__append_2561 = $(nodist_ata_module_SOURCES) -@COND_x86_64_efi_TRUE@am__append_2562 = $(nodist_ata_module_SOURCES) \ -@COND_x86_64_efi_TRUE@ ata.marker -@COND_x86_64_efi_TRUE@am__append_2563 = ata.mod -@COND_x86_64_efi_TRUE@am__append_2564 = ata.marker -@COND_mips_loongson_TRUE@am__append_2565 = ata.module -@COND_mips_loongson_TRUE@am__append_2566 = ata.module$(EXEEXT) -@COND_mips_loongson_TRUE@am__append_2567 = -@COND_mips_loongson_TRUE@am__append_2568 = $(nodist_ata_module_SOURCES) -@COND_mips_loongson_TRUE@am__append_2569 = \ -@COND_mips_loongson_TRUE@ $(nodist_ata_module_SOURCES) \ -@COND_mips_loongson_TRUE@ ata.marker -@COND_mips_loongson_TRUE@am__append_2570 = ata.mod -@COND_mips_loongson_TRUE@am__append_2571 = ata.marker -@COND_mips_qemu_mips_TRUE@am__append_2572 = ata.module -@COND_mips_qemu_mips_TRUE@am__append_2573 = ata.module$(EXEEXT) -@COND_mips_qemu_mips_TRUE@am__append_2574 = -@COND_mips_qemu_mips_TRUE@am__append_2575 = $(nodist_ata_module_SOURCES) -@COND_mips_qemu_mips_TRUE@am__append_2576 = \ -@COND_mips_qemu_mips_TRUE@ $(nodist_ata_module_SOURCES) \ -@COND_mips_qemu_mips_TRUE@ ata.marker -@COND_mips_qemu_mips_TRUE@am__append_2577 = ata.mod -@COND_mips_qemu_mips_TRUE@am__append_2578 = ata.marker -@COND_i386_pc_TRUE@am__append_2579 = ahci.module -@COND_i386_pc_TRUE@am__append_2580 = ahci.module$(EXEEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_mips_loongson_FALSE@@COND_x86_64_efi_FALSE@ahci_module_DEPENDENCIES = -@COND_i386_pc_TRUE@am__append_2581 = -@COND_i386_pc_TRUE@am__append_2582 = $(nodist_ahci_module_SOURCES) -@COND_i386_pc_TRUE@am__append_2583 = $(nodist_ahci_module_SOURCES) \ -@COND_i386_pc_TRUE@ ahci.marker -@COND_i386_pc_TRUE@am__append_2584 = ahci.mod -@COND_i386_pc_TRUE@am__append_2585 = ahci.marker -@COND_i386_efi_TRUE@am__append_2586 = ahci.module -@COND_i386_efi_TRUE@am__append_2587 = ahci.module$(EXEEXT) -@COND_i386_efi_TRUE@am__append_2588 = -@COND_i386_efi_TRUE@am__append_2589 = $(nodist_ahci_module_SOURCES) -@COND_i386_efi_TRUE@am__append_2590 = $(nodist_ahci_module_SOURCES) \ -@COND_i386_efi_TRUE@ ahci.marker -@COND_i386_efi_TRUE@am__append_2591 = ahci.mod -@COND_i386_efi_TRUE@am__append_2592 = ahci.marker -@COND_i386_qemu_TRUE@am__append_2593 = ahci.module -@COND_i386_qemu_TRUE@am__append_2594 = ahci.module$(EXEEXT) -@COND_i386_qemu_TRUE@am__append_2595 = -@COND_i386_qemu_TRUE@am__append_2596 = $(nodist_ahci_module_SOURCES) -@COND_i386_qemu_TRUE@am__append_2597 = $(nodist_ahci_module_SOURCES) \ -@COND_i386_qemu_TRUE@ ahci.marker -@COND_i386_qemu_TRUE@am__append_2598 = ahci.mod -@COND_i386_qemu_TRUE@am__append_2599 = ahci.marker -@COND_i386_coreboot_TRUE@am__append_2600 = ahci.module -@COND_i386_coreboot_TRUE@am__append_2601 = ahci.module$(EXEEXT) -@COND_i386_coreboot_TRUE@am__append_2602 = -@COND_i386_coreboot_TRUE@am__append_2603 = $(nodist_ahci_module_SOURCES) -@COND_i386_coreboot_TRUE@am__append_2604 = \ -@COND_i386_coreboot_TRUE@ $(nodist_ahci_module_SOURCES) \ -@COND_i386_coreboot_TRUE@ ahci.marker -@COND_i386_coreboot_TRUE@am__append_2605 = ahci.mod -@COND_i386_coreboot_TRUE@am__append_2606 = ahci.marker -@COND_i386_multiboot_TRUE@am__append_2607 = ahci.module -@COND_i386_multiboot_TRUE@am__append_2608 = ahci.module$(EXEEXT) -@COND_i386_multiboot_TRUE@am__append_2609 = -@COND_i386_multiboot_TRUE@am__append_2610 = $(nodist_ahci_module_SOURCES) -@COND_i386_multiboot_TRUE@am__append_2611 = \ -@COND_i386_multiboot_TRUE@ $(nodist_ahci_module_SOURCES) \ -@COND_i386_multiboot_TRUE@ ahci.marker -@COND_i386_multiboot_TRUE@am__append_2612 = ahci.mod -@COND_i386_multiboot_TRUE@am__append_2613 = ahci.marker -@COND_i386_ieee1275_TRUE@am__append_2614 = ahci.module -@COND_i386_ieee1275_TRUE@am__append_2615 = ahci.module$(EXEEXT) -@COND_i386_ieee1275_TRUE@am__append_2616 = -@COND_i386_ieee1275_TRUE@am__append_2617 = $(nodist_ahci_module_SOURCES) -@COND_i386_ieee1275_TRUE@am__append_2618 = \ -@COND_i386_ieee1275_TRUE@ $(nodist_ahci_module_SOURCES) \ -@COND_i386_ieee1275_TRUE@ ahci.marker -@COND_i386_ieee1275_TRUE@am__append_2619 = ahci.mod -@COND_i386_ieee1275_TRUE@am__append_2620 = ahci.marker -@COND_x86_64_efi_TRUE@am__append_2621 = ahci.module -@COND_x86_64_efi_TRUE@am__append_2622 = ahci.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__append_2623 = -@COND_x86_64_efi_TRUE@am__append_2624 = $(nodist_ahci_module_SOURCES) -@COND_x86_64_efi_TRUE@am__append_2625 = $(nodist_ahci_module_SOURCES) \ -@COND_x86_64_efi_TRUE@ ahci.marker -@COND_x86_64_efi_TRUE@am__append_2626 = ahci.mod -@COND_x86_64_efi_TRUE@am__append_2627 = ahci.marker -@COND_mips_loongson_TRUE@am__append_2628 = ahci.module -@COND_mips_loongson_TRUE@am__append_2629 = ahci.module$(EXEEXT) -@COND_mips_loongson_TRUE@am__append_2630 = -@COND_mips_loongson_TRUE@am__append_2631 = $(nodist_ahci_module_SOURCES) -@COND_mips_loongson_TRUE@am__append_2632 = \ -@COND_mips_loongson_TRUE@ $(nodist_ahci_module_SOURCES) \ -@COND_mips_loongson_TRUE@ ahci.marker -@COND_mips_loongson_TRUE@am__append_2633 = ahci.mod -@COND_mips_loongson_TRUE@am__append_2634 = ahci.marker -@COND_i386_pc_TRUE@am__append_2635 = pata.module -@COND_i386_pc_TRUE@am__append_2636 = pata.module$(EXEEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_x86_64_efi_FALSE@pata_module_DEPENDENCIES = -@COND_i386_pc_TRUE@am__append_2637 = -@COND_i386_pc_TRUE@am__append_2638 = $(nodist_pata_module_SOURCES) -@COND_i386_pc_TRUE@am__append_2639 = $(nodist_pata_module_SOURCES) \ -@COND_i386_pc_TRUE@ pata.marker -@COND_i386_pc_TRUE@am__append_2640 = pata.mod -@COND_i386_pc_TRUE@am__append_2641 = pata.marker -@COND_i386_efi_TRUE@am__append_2642 = pata.module -@COND_i386_efi_TRUE@am__append_2643 = pata.module$(EXEEXT) -@COND_i386_efi_TRUE@am__append_2644 = -@COND_i386_efi_TRUE@am__append_2645 = $(nodist_pata_module_SOURCES) -@COND_i386_efi_TRUE@am__append_2646 = $(nodist_pata_module_SOURCES) \ -@COND_i386_efi_TRUE@ pata.marker -@COND_i386_efi_TRUE@am__append_2647 = pata.mod -@COND_i386_efi_TRUE@am__append_2648 = pata.marker -@COND_i386_qemu_TRUE@am__append_2649 = pata.module -@COND_i386_qemu_TRUE@am__append_2650 = pata.module$(EXEEXT) -@COND_i386_qemu_TRUE@am__append_2651 = -@COND_i386_qemu_TRUE@am__append_2652 = $(nodist_pata_module_SOURCES) -@COND_i386_qemu_TRUE@am__append_2653 = $(nodist_pata_module_SOURCES) \ -@COND_i386_qemu_TRUE@ pata.marker -@COND_i386_qemu_TRUE@am__append_2654 = pata.mod -@COND_i386_qemu_TRUE@am__append_2655 = pata.marker -@COND_i386_coreboot_TRUE@am__append_2656 = pata.module -@COND_i386_coreboot_TRUE@am__append_2657 = pata.module$(EXEEXT) -@COND_i386_coreboot_TRUE@am__append_2658 = -@COND_i386_coreboot_TRUE@am__append_2659 = $(nodist_pata_module_SOURCES) -@COND_i386_coreboot_TRUE@am__append_2660 = \ -@COND_i386_coreboot_TRUE@ $(nodist_pata_module_SOURCES) \ -@COND_i386_coreboot_TRUE@ pata.marker -@COND_i386_coreboot_TRUE@am__append_2661 = pata.mod -@COND_i386_coreboot_TRUE@am__append_2662 = pata.marker -@COND_i386_multiboot_TRUE@am__append_2663 = pata.module -@COND_i386_multiboot_TRUE@am__append_2664 = pata.module$(EXEEXT) -@COND_i386_multiboot_TRUE@am__append_2665 = -@COND_i386_multiboot_TRUE@am__append_2666 = $(nodist_pata_module_SOURCES) -@COND_i386_multiboot_TRUE@am__append_2667 = \ -@COND_i386_multiboot_TRUE@ $(nodist_pata_module_SOURCES) \ -@COND_i386_multiboot_TRUE@ pata.marker -@COND_i386_multiboot_TRUE@am__append_2668 = pata.mod -@COND_i386_multiboot_TRUE@am__append_2669 = pata.marker -@COND_i386_ieee1275_TRUE@am__append_2670 = pata.module -@COND_i386_ieee1275_TRUE@am__append_2671 = pata.module$(EXEEXT) -@COND_i386_ieee1275_TRUE@am__append_2672 = -@COND_i386_ieee1275_TRUE@am__append_2673 = $(nodist_pata_module_SOURCES) -@COND_i386_ieee1275_TRUE@am__append_2674 = \ -@COND_i386_ieee1275_TRUE@ $(nodist_pata_module_SOURCES) \ -@COND_i386_ieee1275_TRUE@ pata.marker -@COND_i386_ieee1275_TRUE@am__append_2675 = pata.mod -@COND_i386_ieee1275_TRUE@am__append_2676 = pata.marker -@COND_x86_64_efi_TRUE@am__append_2677 = pata.module -@COND_x86_64_efi_TRUE@am__append_2678 = pata.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__append_2679 = -@COND_x86_64_efi_TRUE@am__append_2680 = $(nodist_pata_module_SOURCES) -@COND_x86_64_efi_TRUE@am__append_2681 = $(nodist_pata_module_SOURCES) \ -@COND_x86_64_efi_TRUE@ pata.marker -@COND_x86_64_efi_TRUE@am__append_2682 = pata.mod -@COND_x86_64_efi_TRUE@am__append_2683 = pata.marker -@COND_mips_loongson_TRUE@am__append_2684 = pata.module -@COND_mips_loongson_TRUE@am__append_2685 = pata.module$(EXEEXT) -@COND_mips_loongson_TRUE@am__append_2686 = -@COND_mips_loongson_TRUE@am__append_2687 = $(nodist_pata_module_SOURCES) -@COND_mips_loongson_TRUE@am__append_2688 = \ -@COND_mips_loongson_TRUE@ $(nodist_pata_module_SOURCES) \ -@COND_mips_loongson_TRUE@ pata.marker -@COND_mips_loongson_TRUE@am__append_2689 = pata.mod -@COND_mips_loongson_TRUE@am__append_2690 = pata.marker -@COND_mips_qemu_mips_TRUE@am__append_2691 = pata.module -@COND_mips_qemu_mips_TRUE@am__append_2692 = pata.module$(EXEEXT) -@COND_mips_qemu_mips_TRUE@am__append_2693 = -@COND_mips_qemu_mips_TRUE@am__append_2694 = $(nodist_pata_module_SOURCES) -@COND_mips_qemu_mips_TRUE@am__append_2695 = \ -@COND_mips_qemu_mips_TRUE@ $(nodist_pata_module_SOURCES) \ -@COND_mips_qemu_mips_TRUE@ pata.marker -@COND_mips_qemu_mips_TRUE@am__append_2696 = pata.mod -@COND_mips_qemu_mips_TRUE@am__append_2697 = pata.marker -@COND_i386_pc_TRUE@am__append_2698 = biosdisk.module usbms.module -@COND_i386_pc_TRUE@am__append_2699 = biosdisk.module$(EXEEXT) \ -@COND_i386_pc_TRUE@ usbms.module$(EXEEXT) -@COND_i386_pc_FALSE@biosdisk_module_DEPENDENCIES = -@COND_i386_pc_TRUE@am__append_2700 = -@COND_i386_pc_TRUE@am__append_2701 = \ -@COND_i386_pc_TRUE@ $(nodist_biosdisk_module_SOURCES) \ -@COND_i386_pc_TRUE@ $(nodist_usbms_module_SOURCES) -@COND_i386_pc_TRUE@am__append_2702 = \ -@COND_i386_pc_TRUE@ $(nodist_biosdisk_module_SOURCES) \ -@COND_i386_pc_TRUE@ biosdisk.marker \ -@COND_i386_pc_TRUE@ $(nodist_usbms_module_SOURCES) usbms.marker -@COND_i386_pc_TRUE@am__append_2703 = biosdisk.mod usbms.mod -@COND_i386_pc_TRUE@am__append_2704 = biosdisk.marker usbms.marker -@COND_arm_coreboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_mips_loongson_FALSE@@COND_x86_64_efi_FALSE@usbms_module_DEPENDENCIES = -@COND_i386_efi_TRUE@am__append_2705 = usbms.module -@COND_i386_efi_TRUE@am__append_2706 = usbms.module$(EXEEXT) -@COND_i386_efi_TRUE@am__append_2707 = -@COND_i386_efi_TRUE@am__append_2708 = $(nodist_usbms_module_SOURCES) -@COND_i386_efi_TRUE@am__append_2709 = $(nodist_usbms_module_SOURCES) \ -@COND_i386_efi_TRUE@ usbms.marker -@COND_i386_efi_TRUE@am__append_2710 = usbms.mod -@COND_i386_efi_TRUE@am__append_2711 = usbms.marker -@COND_i386_qemu_TRUE@am__append_2712 = usbms.module -@COND_i386_qemu_TRUE@am__append_2713 = usbms.module$(EXEEXT) -@COND_i386_qemu_TRUE@am__append_2714 = -@COND_i386_qemu_TRUE@am__append_2715 = $(nodist_usbms_module_SOURCES) -@COND_i386_qemu_TRUE@am__append_2716 = $(nodist_usbms_module_SOURCES) \ -@COND_i386_qemu_TRUE@ usbms.marker -@COND_i386_qemu_TRUE@am__append_2717 = usbms.mod -@COND_i386_qemu_TRUE@am__append_2718 = usbms.marker -@COND_i386_coreboot_TRUE@am__append_2719 = usbms.module -@COND_i386_coreboot_TRUE@am__append_2720 = usbms.module$(EXEEXT) -@COND_i386_coreboot_TRUE@am__append_2721 = -@COND_i386_coreboot_TRUE@am__append_2722 = $(nodist_usbms_module_SOURCES) -@COND_i386_coreboot_TRUE@am__append_2723 = \ -@COND_i386_coreboot_TRUE@ $(nodist_usbms_module_SOURCES) \ -@COND_i386_coreboot_TRUE@ usbms.marker -@COND_i386_coreboot_TRUE@am__append_2724 = usbms.mod -@COND_i386_coreboot_TRUE@am__append_2725 = usbms.marker -@COND_i386_multiboot_TRUE@am__append_2726 = usbms.module -@COND_i386_multiboot_TRUE@am__append_2727 = usbms.module$(EXEEXT) -@COND_i386_multiboot_TRUE@am__append_2728 = -@COND_i386_multiboot_TRUE@am__append_2729 = $(nodist_usbms_module_SOURCES) -@COND_i386_multiboot_TRUE@am__append_2730 = \ -@COND_i386_multiboot_TRUE@ $(nodist_usbms_module_SOURCES) \ -@COND_i386_multiboot_TRUE@ usbms.marker -@COND_i386_multiboot_TRUE@am__append_2731 = usbms.mod -@COND_i386_multiboot_TRUE@am__append_2732 = usbms.marker -@COND_i386_ieee1275_TRUE@am__append_2733 = usbms.module -@COND_i386_ieee1275_TRUE@am__append_2734 = usbms.module$(EXEEXT) -@COND_i386_ieee1275_TRUE@am__append_2735 = -@COND_i386_ieee1275_TRUE@am__append_2736 = $(nodist_usbms_module_SOURCES) -@COND_i386_ieee1275_TRUE@am__append_2737 = \ -@COND_i386_ieee1275_TRUE@ $(nodist_usbms_module_SOURCES) \ -@COND_i386_ieee1275_TRUE@ usbms.marker -@COND_i386_ieee1275_TRUE@am__append_2738 = usbms.mod -@COND_i386_ieee1275_TRUE@am__append_2739 = usbms.marker -@COND_x86_64_efi_TRUE@am__append_2740 = usbms.module -@COND_x86_64_efi_TRUE@am__append_2741 = usbms.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__append_2742 = -@COND_x86_64_efi_TRUE@am__append_2743 = $(nodist_usbms_module_SOURCES) -@COND_x86_64_efi_TRUE@am__append_2744 = \ -@COND_x86_64_efi_TRUE@ $(nodist_usbms_module_SOURCES) \ -@COND_x86_64_efi_TRUE@ usbms.marker -@COND_x86_64_efi_TRUE@am__append_2745 = usbms.mod -@COND_x86_64_efi_TRUE@am__append_2746 = usbms.marker -@COND_mips_loongson_TRUE@am__append_2747 = usbms.module -@COND_mips_loongson_TRUE@am__append_2748 = usbms.module$(EXEEXT) -@COND_mips_loongson_TRUE@am__append_2749 = -@COND_mips_loongson_TRUE@am__append_2750 = $(nodist_usbms_module_SOURCES) -@COND_mips_loongson_TRUE@am__append_2751 = \ -@COND_mips_loongson_TRUE@ $(nodist_usbms_module_SOURCES) \ -@COND_mips_loongson_TRUE@ usbms.marker -@COND_mips_loongson_TRUE@am__append_2752 = usbms.mod -@COND_mips_loongson_TRUE@am__append_2753 = usbms.marker -@COND_arm_coreboot_TRUE@am__append_2754 = usbms.module -@COND_arm_coreboot_TRUE@am__append_2755 = usbms.module$(EXEEXT) -@COND_arm_coreboot_TRUE@am__append_2756 = -@COND_arm_coreboot_TRUE@am__append_2757 = $(nodist_usbms_module_SOURCES) -@COND_arm_coreboot_TRUE@am__append_2758 = \ -@COND_arm_coreboot_TRUE@ $(nodist_usbms_module_SOURCES) \ -@COND_arm_coreboot_TRUE@ usbms.marker -@COND_arm_coreboot_TRUE@am__append_2759 = usbms.mod -@COND_arm_coreboot_TRUE@am__append_2760 = usbms.marker -@COND_i386_ieee1275_TRUE@am__append_2761 = nand.module -@COND_i386_ieee1275_TRUE@am__append_2762 = nand.module$(EXEEXT) -@COND_i386_ieee1275_FALSE@nand_module_DEPENDENCIES = -@COND_i386_ieee1275_TRUE@am__append_2763 = -@COND_i386_ieee1275_TRUE@am__append_2764 = $(nodist_nand_module_SOURCES) -@COND_i386_ieee1275_TRUE@am__append_2765 = \ -@COND_i386_ieee1275_TRUE@ $(nodist_nand_module_SOURCES) \ -@COND_i386_ieee1275_TRUE@ nand.marker -@COND_i386_ieee1275_TRUE@am__append_2766 = nand.mod -@COND_i386_ieee1275_TRUE@am__append_2767 = nand.marker -@COND_i386_pc_TRUE@am__append_2768 = efiemu.module -@COND_i386_pc_TRUE@am__append_2769 = efiemu.module$(EXEEXT) -@COND_i386_coreboot_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@efiemu_module_DEPENDENCIES = -@COND_i386_pc_TRUE@am__append_2770 = efiemu/prepare.c efiemu/loadcore.c efiemu/runtime/efiemu.S efiemu/runtime/efiemu.c -@COND_i386_pc_TRUE@am__append_2771 = $(nodist_efiemu_module_SOURCES) -@COND_i386_pc_TRUE@am__append_2772 = $(nodist_efiemu_module_SOURCES) \ -@COND_i386_pc_TRUE@ efiemu.marker -@COND_i386_pc_TRUE@am__append_2773 = efiemu.mod -@COND_i386_pc_TRUE@am__append_2774 = efiemu.marker -@COND_i386_qemu_TRUE@am__append_2775 = efiemu.module -@COND_i386_qemu_TRUE@am__append_2776 = efiemu.module$(EXEEXT) -@COND_i386_qemu_TRUE@am__append_2777 = efiemu/prepare.c efiemu/loadcore.c efiemu/runtime/efiemu.S efiemu/runtime/efiemu.c -@COND_i386_qemu_TRUE@am__append_2778 = $(nodist_efiemu_module_SOURCES) -@COND_i386_qemu_TRUE@am__append_2779 = \ -@COND_i386_qemu_TRUE@ $(nodist_efiemu_module_SOURCES) \ -@COND_i386_qemu_TRUE@ efiemu.marker -@COND_i386_qemu_TRUE@am__append_2780 = efiemu.mod -@COND_i386_qemu_TRUE@am__append_2781 = efiemu.marker -@COND_i386_coreboot_TRUE@am__append_2782 = efiemu.module -@COND_i386_coreboot_TRUE@am__append_2783 = efiemu.module$(EXEEXT) -@COND_i386_coreboot_TRUE@am__append_2784 = efiemu/prepare.c efiemu/loadcore.c efiemu/runtime/efiemu.S efiemu/runtime/efiemu.c -@COND_i386_coreboot_TRUE@am__append_2785 = $(nodist_efiemu_module_SOURCES) -@COND_i386_coreboot_TRUE@am__append_2786 = \ -@COND_i386_coreboot_TRUE@ $(nodist_efiemu_module_SOURCES) \ -@COND_i386_coreboot_TRUE@ efiemu.marker -@COND_i386_coreboot_TRUE@am__append_2787 = efiemu.mod -@COND_i386_coreboot_TRUE@am__append_2788 = efiemu.marker -@COND_i386_multiboot_TRUE@am__append_2789 = efiemu.module -@COND_i386_multiboot_TRUE@am__append_2790 = efiemu.module$(EXEEXT) -@COND_i386_multiboot_TRUE@am__append_2791 = efiemu/prepare.c efiemu/loadcore.c efiemu/runtime/efiemu.S efiemu/runtime/efiemu.c -@COND_i386_multiboot_TRUE@am__append_2792 = $(nodist_efiemu_module_SOURCES) -@COND_i386_multiboot_TRUE@am__append_2793 = \ -@COND_i386_multiboot_TRUE@ $(nodist_efiemu_module_SOURCES) \ -@COND_i386_multiboot_TRUE@ efiemu.marker -@COND_i386_multiboot_TRUE@am__append_2794 = efiemu.mod -@COND_i386_multiboot_TRUE@am__append_2795 = efiemu.marker -@COND_i386_ieee1275_TRUE@am__append_2796 = efiemu.module -@COND_i386_ieee1275_TRUE@am__append_2797 = efiemu.module$(EXEEXT) -@COND_i386_ieee1275_TRUE@am__append_2798 = efiemu/prepare.c efiemu/loadcore.c efiemu/runtime/efiemu.S efiemu/runtime/efiemu.c -@COND_i386_ieee1275_TRUE@am__append_2799 = $(nodist_efiemu_module_SOURCES) -@COND_i386_ieee1275_TRUE@am__append_2800 = \ -@COND_i386_ieee1275_TRUE@ $(nodist_efiemu_module_SOURCES) \ -@COND_i386_ieee1275_TRUE@ efiemu.marker -@COND_i386_ieee1275_TRUE@am__append_2801 = efiemu.mod -@COND_i386_ieee1275_TRUE@am__append_2802 = efiemu.marker -@COND_emu_TRUE@am__append_2803 = font.module -@COND_emu_TRUE@am__append_2804 = font.module$(EXEEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_FALSE@@COND_x86_64_efi_FALSE@@COND_x86_64_xen_FALSE@font_module_DEPENDENCIES = -@COND_emu_TRUE@am__append_2805 = -@COND_emu_TRUE@am__append_2806 = $(nodist_font_module_SOURCES) -@COND_emu_TRUE@am__append_2807 = $(nodist_font_module_SOURCES) \ -@COND_emu_TRUE@ font.marker -@COND_emu_TRUE@am__append_2808 = font.mod -@COND_emu_TRUE@am__append_2809 = font.marker -@COND_i386_pc_TRUE@am__append_2810 = font.module -@COND_i386_pc_TRUE@am__append_2811 = font.module$(EXEEXT) -@COND_i386_pc_TRUE@am__append_2812 = -@COND_i386_pc_TRUE@am__append_2813 = $(nodist_font_module_SOURCES) -@COND_i386_pc_TRUE@am__append_2814 = $(nodist_font_module_SOURCES) \ -@COND_i386_pc_TRUE@ font.marker -@COND_i386_pc_TRUE@am__append_2815 = font.mod -@COND_i386_pc_TRUE@am__append_2816 = font.marker -@COND_i386_efi_TRUE@am__append_2817 = font.module -@COND_i386_efi_TRUE@am__append_2818 = font.module$(EXEEXT) -@COND_i386_efi_TRUE@am__append_2819 = -@COND_i386_efi_TRUE@am__append_2820 = $(nodist_font_module_SOURCES) -@COND_i386_efi_TRUE@am__append_2821 = $(nodist_font_module_SOURCES) \ -@COND_i386_efi_TRUE@ font.marker -@COND_i386_efi_TRUE@am__append_2822 = font.mod -@COND_i386_efi_TRUE@am__append_2823 = font.marker -@COND_i386_qemu_TRUE@am__append_2824 = font.module -@COND_i386_qemu_TRUE@am__append_2825 = font.module$(EXEEXT) -@COND_i386_qemu_TRUE@am__append_2826 = -@COND_i386_qemu_TRUE@am__append_2827 = $(nodist_font_module_SOURCES) -@COND_i386_qemu_TRUE@am__append_2828 = $(nodist_font_module_SOURCES) \ -@COND_i386_qemu_TRUE@ font.marker -@COND_i386_qemu_TRUE@am__append_2829 = font.mod -@COND_i386_qemu_TRUE@am__append_2830 = font.marker -@COND_i386_multiboot_TRUE@am__append_2831 = font.module -@COND_i386_multiboot_TRUE@am__append_2832 = font.module$(EXEEXT) -@COND_i386_multiboot_TRUE@am__append_2833 = -@COND_i386_multiboot_TRUE@am__append_2834 = $(nodist_font_module_SOURCES) -@COND_i386_multiboot_TRUE@am__append_2835 = \ -@COND_i386_multiboot_TRUE@ $(nodist_font_module_SOURCES) \ -@COND_i386_multiboot_TRUE@ font.marker -@COND_i386_multiboot_TRUE@am__append_2836 = font.mod -@COND_i386_multiboot_TRUE@am__append_2837 = font.marker -@COND_i386_ieee1275_TRUE@am__append_2838 = font.module -@COND_i386_ieee1275_TRUE@am__append_2839 = font.module$(EXEEXT) -@COND_i386_ieee1275_TRUE@am__append_2840 = -@COND_i386_ieee1275_TRUE@am__append_2841 = $(nodist_font_module_SOURCES) -@COND_i386_ieee1275_TRUE@am__append_2842 = \ -@COND_i386_ieee1275_TRUE@ $(nodist_font_module_SOURCES) \ -@COND_i386_ieee1275_TRUE@ font.marker -@COND_i386_ieee1275_TRUE@am__append_2843 = font.mod -@COND_i386_ieee1275_TRUE@am__append_2844 = font.marker -@COND_x86_64_efi_TRUE@am__append_2845 = font.module -@COND_x86_64_efi_TRUE@am__append_2846 = font.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__append_2847 = -@COND_x86_64_efi_TRUE@am__append_2848 = $(nodist_font_module_SOURCES) -@COND_x86_64_efi_TRUE@am__append_2849 = $(nodist_font_module_SOURCES) \ -@COND_x86_64_efi_TRUE@ font.marker -@COND_x86_64_efi_TRUE@am__append_2850 = font.mod -@COND_x86_64_efi_TRUE@am__append_2851 = font.marker -@COND_i386_xen_TRUE@am__append_2852 = font.module -@COND_i386_xen_TRUE@am__append_2853 = font.module$(EXEEXT) -@COND_i386_xen_TRUE@am__append_2854 = -@COND_i386_xen_TRUE@am__append_2855 = $(nodist_font_module_SOURCES) -@COND_i386_xen_TRUE@am__append_2856 = $(nodist_font_module_SOURCES) \ -@COND_i386_xen_TRUE@ font.marker -@COND_i386_xen_TRUE@am__append_2857 = font.mod -@COND_i386_xen_TRUE@am__append_2858 = font.marker -@COND_x86_64_xen_TRUE@am__append_2859 = font.module -@COND_x86_64_xen_TRUE@am__append_2860 = font.module$(EXEEXT) -@COND_x86_64_xen_TRUE@am__append_2861 = -@COND_x86_64_xen_TRUE@am__append_2862 = $(nodist_font_module_SOURCES) -@COND_x86_64_xen_TRUE@am__append_2863 = $(nodist_font_module_SOURCES) \ -@COND_x86_64_xen_TRUE@ font.marker -@COND_x86_64_xen_TRUE@am__append_2864 = font.mod -@COND_x86_64_xen_TRUE@am__append_2865 = font.marker -@COND_i386_xen_pvh_TRUE@am__append_2866 = font.module -@COND_i386_xen_pvh_TRUE@am__append_2867 = font.module$(EXEEXT) -@COND_i386_xen_pvh_TRUE@am__append_2868 = -@COND_i386_xen_pvh_TRUE@am__append_2869 = $(nodist_font_module_SOURCES) -@COND_i386_xen_pvh_TRUE@am__append_2870 = \ -@COND_i386_xen_pvh_TRUE@ $(nodist_font_module_SOURCES) \ -@COND_i386_xen_pvh_TRUE@ font.marker -@COND_i386_xen_pvh_TRUE@am__append_2871 = font.mod -@COND_i386_xen_pvh_TRUE@am__append_2872 = font.marker -@COND_sparc64_ieee1275_TRUE@am__append_2873 = font.module -@COND_sparc64_ieee1275_TRUE@am__append_2874 = font.module$(EXEEXT) -@COND_sparc64_ieee1275_TRUE@am__append_2875 = -@COND_sparc64_ieee1275_TRUE@am__append_2876 = $(nodist_font_module_SOURCES) -@COND_sparc64_ieee1275_TRUE@am__append_2877 = \ -@COND_sparc64_ieee1275_TRUE@ $(nodist_font_module_SOURCES) \ -@COND_sparc64_ieee1275_TRUE@ font.marker -@COND_sparc64_ieee1275_TRUE@am__append_2878 = font.mod -@COND_sparc64_ieee1275_TRUE@am__append_2879 = font.marker -@COND_powerpc_ieee1275_TRUE@am__append_2880 = font.module -@COND_powerpc_ieee1275_TRUE@am__append_2881 = font.module$(EXEEXT) -@COND_powerpc_ieee1275_TRUE@am__append_2882 = -@COND_powerpc_ieee1275_TRUE@am__append_2883 = $(nodist_font_module_SOURCES) -@COND_powerpc_ieee1275_TRUE@am__append_2884 = \ -@COND_powerpc_ieee1275_TRUE@ $(nodist_font_module_SOURCES) \ -@COND_powerpc_ieee1275_TRUE@ font.marker -@COND_powerpc_ieee1275_TRUE@am__append_2885 = font.mod -@COND_powerpc_ieee1275_TRUE@am__append_2886 = font.marker -@COND_mips_arc_TRUE@am__append_2887 = font.module -@COND_mips_arc_TRUE@am__append_2888 = font.module$(EXEEXT) -@COND_mips_arc_TRUE@am__append_2889 = -@COND_mips_arc_TRUE@am__append_2890 = $(nodist_font_module_SOURCES) -@COND_mips_arc_TRUE@am__append_2891 = $(nodist_font_module_SOURCES) \ -@COND_mips_arc_TRUE@ font.marker -@COND_mips_arc_TRUE@am__append_2892 = font.mod -@COND_mips_arc_TRUE@am__append_2893 = font.marker -@COND_ia64_efi_TRUE@am__append_2894 = font.module -@COND_ia64_efi_TRUE@am__append_2895 = font.module$(EXEEXT) -@COND_ia64_efi_TRUE@am__append_2896 = -@COND_ia64_efi_TRUE@am__append_2897 = $(nodist_font_module_SOURCES) -@COND_ia64_efi_TRUE@am__append_2898 = $(nodist_font_module_SOURCES) \ -@COND_ia64_efi_TRUE@ font.marker -@COND_ia64_efi_TRUE@am__append_2899 = font.mod -@COND_ia64_efi_TRUE@am__append_2900 = font.marker -@COND_mips_qemu_mips_TRUE@am__append_2901 = font.module -@COND_mips_qemu_mips_TRUE@am__append_2902 = font.module$(EXEEXT) -@COND_mips_qemu_mips_TRUE@am__append_2903 = -@COND_mips_qemu_mips_TRUE@am__append_2904 = $(nodist_font_module_SOURCES) -@COND_mips_qemu_mips_TRUE@am__append_2905 = \ -@COND_mips_qemu_mips_TRUE@ $(nodist_font_module_SOURCES) \ -@COND_mips_qemu_mips_TRUE@ font.marker -@COND_mips_qemu_mips_TRUE@am__append_2906 = font.mod -@COND_mips_qemu_mips_TRUE@am__append_2907 = font.marker -@COND_arm_uboot_TRUE@am__append_2908 = font.module -@COND_arm_uboot_TRUE@am__append_2909 = font.module$(EXEEXT) -@COND_arm_uboot_TRUE@am__append_2910 = -@COND_arm_uboot_TRUE@am__append_2911 = $(nodist_font_module_SOURCES) -@COND_arm_uboot_TRUE@am__append_2912 = $(nodist_font_module_SOURCES) \ -@COND_arm_uboot_TRUE@ font.marker -@COND_arm_uboot_TRUE@am__append_2913 = font.mod -@COND_arm_uboot_TRUE@am__append_2914 = font.marker -@COND_arm_efi_TRUE@am__append_2915 = font.module -@COND_arm_efi_TRUE@am__append_2916 = font.module$(EXEEXT) -@COND_arm_efi_TRUE@am__append_2917 = -@COND_arm_efi_TRUE@am__append_2918 = $(nodist_font_module_SOURCES) -@COND_arm_efi_TRUE@am__append_2919 = $(nodist_font_module_SOURCES) \ -@COND_arm_efi_TRUE@ font.marker -@COND_arm_efi_TRUE@am__append_2920 = font.mod -@COND_arm_efi_TRUE@am__append_2921 = font.marker -@COND_arm64_efi_TRUE@am__append_2922 = font.module -@COND_arm64_efi_TRUE@am__append_2923 = font.module$(EXEEXT) -@COND_arm64_efi_TRUE@am__append_2924 = -@COND_arm64_efi_TRUE@am__append_2925 = $(nodist_font_module_SOURCES) -@COND_arm64_efi_TRUE@am__append_2926 = $(nodist_font_module_SOURCES) \ -@COND_arm64_efi_TRUE@ font.marker -@COND_arm64_efi_TRUE@am__append_2927 = font.mod -@COND_arm64_efi_TRUE@am__append_2928 = font.marker -@COND_riscv32_efi_TRUE@am__append_2929 = font.module -@COND_riscv32_efi_TRUE@am__append_2930 = font.module$(EXEEXT) -@COND_riscv32_efi_TRUE@am__append_2931 = -@COND_riscv32_efi_TRUE@am__append_2932 = $(nodist_font_module_SOURCES) -@COND_riscv32_efi_TRUE@am__append_2933 = \ -@COND_riscv32_efi_TRUE@ $(nodist_font_module_SOURCES) \ -@COND_riscv32_efi_TRUE@ font.marker -@COND_riscv32_efi_TRUE@am__append_2934 = font.mod -@COND_riscv32_efi_TRUE@am__append_2935 = font.marker -@COND_riscv64_efi_TRUE@am__append_2936 = font.module -@COND_riscv64_efi_TRUE@am__append_2937 = font.module$(EXEEXT) -@COND_riscv64_efi_TRUE@am__append_2938 = -@COND_riscv64_efi_TRUE@am__append_2939 = $(nodist_font_module_SOURCES) -@COND_riscv64_efi_TRUE@am__append_2940 = \ -@COND_riscv64_efi_TRUE@ $(nodist_font_module_SOURCES) \ -@COND_riscv64_efi_TRUE@ font.marker -@COND_riscv64_efi_TRUE@am__append_2941 = font.mod -@COND_riscv64_efi_TRUE@am__append_2942 = font.marker -@COND_i386_pc_TRUE@am__append_2943 = pxe.module -@COND_i386_pc_TRUE@am__append_2944 = pxe.module$(EXEEXT) -@COND_i386_pc_FALSE@pxe_module_DEPENDENCIES = -@COND_i386_pc_TRUE@am__append_2945 = -@COND_i386_pc_TRUE@am__append_2946 = $(nodist_pxe_module_SOURCES) -@COND_i386_pc_TRUE@am__append_2947 = $(nodist_pxe_module_SOURCES) \ -@COND_i386_pc_TRUE@ pxe.marker -@COND_i386_pc_TRUE@am__append_2948 = pxe.mod -@COND_i386_pc_TRUE@am__append_2949 = pxe.marker -@COND_emu_TRUE@am__append_2950 = bufio.module -@COND_emu_TRUE@am__append_2951 = bufio.module$(EXEEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_FALSE@@COND_x86_64_efi_FALSE@@COND_x86_64_xen_FALSE@bufio_module_DEPENDENCIES = -@COND_emu_TRUE@am__append_2952 = -@COND_emu_TRUE@am__append_2953 = $(nodist_bufio_module_SOURCES) -@COND_emu_TRUE@am__append_2954 = $(nodist_bufio_module_SOURCES) \ -@COND_emu_TRUE@ bufio.marker -@COND_emu_TRUE@am__append_2955 = bufio.mod -@COND_emu_TRUE@am__append_2956 = bufio.marker -@COND_i386_pc_TRUE@am__append_2957 = bufio.module -@COND_i386_pc_TRUE@am__append_2958 = bufio.module$(EXEEXT) -@COND_i386_pc_TRUE@am__append_2959 = -@COND_i386_pc_TRUE@am__append_2960 = $(nodist_bufio_module_SOURCES) -@COND_i386_pc_TRUE@am__append_2961 = $(nodist_bufio_module_SOURCES) \ -@COND_i386_pc_TRUE@ bufio.marker -@COND_i386_pc_TRUE@am__append_2962 = bufio.mod -@COND_i386_pc_TRUE@am__append_2963 = bufio.marker -@COND_i386_efi_TRUE@am__append_2964 = bufio.module -@COND_i386_efi_TRUE@am__append_2965 = bufio.module$(EXEEXT) -@COND_i386_efi_TRUE@am__append_2966 = -@COND_i386_efi_TRUE@am__append_2967 = $(nodist_bufio_module_SOURCES) -@COND_i386_efi_TRUE@am__append_2968 = $(nodist_bufio_module_SOURCES) \ -@COND_i386_efi_TRUE@ bufio.marker -@COND_i386_efi_TRUE@am__append_2969 = bufio.mod -@COND_i386_efi_TRUE@am__append_2970 = bufio.marker -@COND_i386_qemu_TRUE@am__append_2971 = bufio.module -@COND_i386_qemu_TRUE@am__append_2972 = bufio.module$(EXEEXT) -@COND_i386_qemu_TRUE@am__append_2973 = -@COND_i386_qemu_TRUE@am__append_2974 = $(nodist_bufio_module_SOURCES) -@COND_i386_qemu_TRUE@am__append_2975 = $(nodist_bufio_module_SOURCES) \ -@COND_i386_qemu_TRUE@ bufio.marker -@COND_i386_qemu_TRUE@am__append_2976 = bufio.mod -@COND_i386_qemu_TRUE@am__append_2977 = bufio.marker -@COND_i386_multiboot_TRUE@am__append_2978 = bufio.module -@COND_i386_multiboot_TRUE@am__append_2979 = bufio.module$(EXEEXT) -@COND_i386_multiboot_TRUE@am__append_2980 = -@COND_i386_multiboot_TRUE@am__append_2981 = $(nodist_bufio_module_SOURCES) -@COND_i386_multiboot_TRUE@am__append_2982 = \ -@COND_i386_multiboot_TRUE@ $(nodist_bufio_module_SOURCES) \ -@COND_i386_multiboot_TRUE@ bufio.marker -@COND_i386_multiboot_TRUE@am__append_2983 = bufio.mod -@COND_i386_multiboot_TRUE@am__append_2984 = bufio.marker -@COND_i386_ieee1275_TRUE@am__append_2985 = bufio.module -@COND_i386_ieee1275_TRUE@am__append_2986 = bufio.module$(EXEEXT) -@COND_i386_ieee1275_TRUE@am__append_2987 = -@COND_i386_ieee1275_TRUE@am__append_2988 = $(nodist_bufio_module_SOURCES) -@COND_i386_ieee1275_TRUE@am__append_2989 = \ -@COND_i386_ieee1275_TRUE@ $(nodist_bufio_module_SOURCES) \ -@COND_i386_ieee1275_TRUE@ bufio.marker -@COND_i386_ieee1275_TRUE@am__append_2990 = bufio.mod -@COND_i386_ieee1275_TRUE@am__append_2991 = bufio.marker -@COND_x86_64_efi_TRUE@am__append_2992 = bufio.module -@COND_x86_64_efi_TRUE@am__append_2993 = bufio.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__append_2994 = -@COND_x86_64_efi_TRUE@am__append_2995 = $(nodist_bufio_module_SOURCES) -@COND_x86_64_efi_TRUE@am__append_2996 = \ -@COND_x86_64_efi_TRUE@ $(nodist_bufio_module_SOURCES) \ -@COND_x86_64_efi_TRUE@ bufio.marker -@COND_x86_64_efi_TRUE@am__append_2997 = bufio.mod -@COND_x86_64_efi_TRUE@am__append_2998 = bufio.marker -@COND_i386_xen_TRUE@am__append_2999 = bufio.module -@COND_i386_xen_TRUE@am__append_3000 = bufio.module$(EXEEXT) -@COND_i386_xen_TRUE@am__append_3001 = -@COND_i386_xen_TRUE@am__append_3002 = $(nodist_bufio_module_SOURCES) -@COND_i386_xen_TRUE@am__append_3003 = $(nodist_bufio_module_SOURCES) \ -@COND_i386_xen_TRUE@ bufio.marker -@COND_i386_xen_TRUE@am__append_3004 = bufio.mod -@COND_i386_xen_TRUE@am__append_3005 = bufio.marker -@COND_x86_64_xen_TRUE@am__append_3006 = bufio.module -@COND_x86_64_xen_TRUE@am__append_3007 = bufio.module$(EXEEXT) -@COND_x86_64_xen_TRUE@am__append_3008 = -@COND_x86_64_xen_TRUE@am__append_3009 = $(nodist_bufio_module_SOURCES) -@COND_x86_64_xen_TRUE@am__append_3010 = \ -@COND_x86_64_xen_TRUE@ $(nodist_bufio_module_SOURCES) \ -@COND_x86_64_xen_TRUE@ bufio.marker -@COND_x86_64_xen_TRUE@am__append_3011 = bufio.mod -@COND_x86_64_xen_TRUE@am__append_3012 = bufio.marker -@COND_i386_xen_pvh_TRUE@am__append_3013 = bufio.module -@COND_i386_xen_pvh_TRUE@am__append_3014 = bufio.module$(EXEEXT) -@COND_i386_xen_pvh_TRUE@am__append_3015 = -@COND_i386_xen_pvh_TRUE@am__append_3016 = $(nodist_bufio_module_SOURCES) -@COND_i386_xen_pvh_TRUE@am__append_3017 = \ -@COND_i386_xen_pvh_TRUE@ $(nodist_bufio_module_SOURCES) \ -@COND_i386_xen_pvh_TRUE@ bufio.marker -@COND_i386_xen_pvh_TRUE@am__append_3018 = bufio.mod -@COND_i386_xen_pvh_TRUE@am__append_3019 = bufio.marker -@COND_sparc64_ieee1275_TRUE@am__append_3020 = bufio.module -@COND_sparc64_ieee1275_TRUE@am__append_3021 = bufio.module$(EXEEXT) -@COND_sparc64_ieee1275_TRUE@am__append_3022 = -@COND_sparc64_ieee1275_TRUE@am__append_3023 = $(nodist_bufio_module_SOURCES) -@COND_sparc64_ieee1275_TRUE@am__append_3024 = \ -@COND_sparc64_ieee1275_TRUE@ $(nodist_bufio_module_SOURCES) \ -@COND_sparc64_ieee1275_TRUE@ bufio.marker -@COND_sparc64_ieee1275_TRUE@am__append_3025 = bufio.mod -@COND_sparc64_ieee1275_TRUE@am__append_3026 = bufio.marker -@COND_powerpc_ieee1275_TRUE@am__append_3027 = bufio.module -@COND_powerpc_ieee1275_TRUE@am__append_3028 = bufio.module$(EXEEXT) -@COND_powerpc_ieee1275_TRUE@am__append_3029 = -@COND_powerpc_ieee1275_TRUE@am__append_3030 = $(nodist_bufio_module_SOURCES) -@COND_powerpc_ieee1275_TRUE@am__append_3031 = \ -@COND_powerpc_ieee1275_TRUE@ $(nodist_bufio_module_SOURCES) \ -@COND_powerpc_ieee1275_TRUE@ bufio.marker -@COND_powerpc_ieee1275_TRUE@am__append_3032 = bufio.mod -@COND_powerpc_ieee1275_TRUE@am__append_3033 = bufio.marker -@COND_mips_arc_TRUE@am__append_3034 = bufio.module -@COND_mips_arc_TRUE@am__append_3035 = bufio.module$(EXEEXT) -@COND_mips_arc_TRUE@am__append_3036 = -@COND_mips_arc_TRUE@am__append_3037 = $(nodist_bufio_module_SOURCES) -@COND_mips_arc_TRUE@am__append_3038 = $(nodist_bufio_module_SOURCES) \ -@COND_mips_arc_TRUE@ bufio.marker -@COND_mips_arc_TRUE@am__append_3039 = bufio.mod -@COND_mips_arc_TRUE@am__append_3040 = bufio.marker -@COND_ia64_efi_TRUE@am__append_3041 = bufio.module -@COND_ia64_efi_TRUE@am__append_3042 = bufio.module$(EXEEXT) -@COND_ia64_efi_TRUE@am__append_3043 = -@COND_ia64_efi_TRUE@am__append_3044 = $(nodist_bufio_module_SOURCES) -@COND_ia64_efi_TRUE@am__append_3045 = $(nodist_bufio_module_SOURCES) \ -@COND_ia64_efi_TRUE@ bufio.marker -@COND_ia64_efi_TRUE@am__append_3046 = bufio.mod -@COND_ia64_efi_TRUE@am__append_3047 = bufio.marker -@COND_mips_qemu_mips_TRUE@am__append_3048 = bufio.module -@COND_mips_qemu_mips_TRUE@am__append_3049 = bufio.module$(EXEEXT) -@COND_mips_qemu_mips_TRUE@am__append_3050 = -@COND_mips_qemu_mips_TRUE@am__append_3051 = $(nodist_bufio_module_SOURCES) -@COND_mips_qemu_mips_TRUE@am__append_3052 = \ -@COND_mips_qemu_mips_TRUE@ $(nodist_bufio_module_SOURCES) \ -@COND_mips_qemu_mips_TRUE@ bufio.marker -@COND_mips_qemu_mips_TRUE@am__append_3053 = bufio.mod -@COND_mips_qemu_mips_TRUE@am__append_3054 = bufio.marker -@COND_arm_uboot_TRUE@am__append_3055 = bufio.module -@COND_arm_uboot_TRUE@am__append_3056 = bufio.module$(EXEEXT) -@COND_arm_uboot_TRUE@am__append_3057 = -@COND_arm_uboot_TRUE@am__append_3058 = $(nodist_bufio_module_SOURCES) -@COND_arm_uboot_TRUE@am__append_3059 = $(nodist_bufio_module_SOURCES) \ -@COND_arm_uboot_TRUE@ bufio.marker -@COND_arm_uboot_TRUE@am__append_3060 = bufio.mod -@COND_arm_uboot_TRUE@am__append_3061 = bufio.marker -@COND_arm_efi_TRUE@am__append_3062 = bufio.module -@COND_arm_efi_TRUE@am__append_3063 = bufio.module$(EXEEXT) -@COND_arm_efi_TRUE@am__append_3064 = -@COND_arm_efi_TRUE@am__append_3065 = $(nodist_bufio_module_SOURCES) -@COND_arm_efi_TRUE@am__append_3066 = $(nodist_bufio_module_SOURCES) \ -@COND_arm_efi_TRUE@ bufio.marker -@COND_arm_efi_TRUE@am__append_3067 = bufio.mod -@COND_arm_efi_TRUE@am__append_3068 = bufio.marker -@COND_arm64_efi_TRUE@am__append_3069 = bufio.module -@COND_arm64_efi_TRUE@am__append_3070 = bufio.module$(EXEEXT) -@COND_arm64_efi_TRUE@am__append_3071 = -@COND_arm64_efi_TRUE@am__append_3072 = $(nodist_bufio_module_SOURCES) -@COND_arm64_efi_TRUE@am__append_3073 = $(nodist_bufio_module_SOURCES) \ -@COND_arm64_efi_TRUE@ bufio.marker -@COND_arm64_efi_TRUE@am__append_3074 = bufio.mod -@COND_arm64_efi_TRUE@am__append_3075 = bufio.marker -@COND_riscv32_efi_TRUE@am__append_3076 = bufio.module -@COND_riscv32_efi_TRUE@am__append_3077 = bufio.module$(EXEEXT) -@COND_riscv32_efi_TRUE@am__append_3078 = -@COND_riscv32_efi_TRUE@am__append_3079 = $(nodist_bufio_module_SOURCES) -@COND_riscv32_efi_TRUE@am__append_3080 = \ -@COND_riscv32_efi_TRUE@ $(nodist_bufio_module_SOURCES) \ -@COND_riscv32_efi_TRUE@ bufio.marker -@COND_riscv32_efi_TRUE@am__append_3081 = bufio.mod -@COND_riscv32_efi_TRUE@am__append_3082 = bufio.marker -@COND_riscv64_efi_TRUE@am__append_3083 = bufio.module -@COND_riscv64_efi_TRUE@am__append_3084 = bufio.module$(EXEEXT) -@COND_riscv64_efi_TRUE@am__append_3085 = -@COND_riscv64_efi_TRUE@am__append_3086 = $(nodist_bufio_module_SOURCES) -@COND_riscv64_efi_TRUE@am__append_3087 = \ -@COND_riscv64_efi_TRUE@ $(nodist_bufio_module_SOURCES) \ -@COND_riscv64_efi_TRUE@ bufio.marker -@COND_riscv64_efi_TRUE@am__append_3088 = bufio.mod -@COND_riscv64_efi_TRUE@am__append_3089 = bufio.marker -@COND_i386_pc_TRUE@am__append_3090 = relocator.module -@COND_i386_pc_TRUE@am__append_3091 = relocator.module$(EXEEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_x86_64_efi_FALSE@@COND_x86_64_xen_FALSE@relocator_module_DEPENDENCIES = -@COND_i386_pc_TRUE@am__append_3092 = lib/i386/relocator_common.S kern/powerpc/cache_flush.S -@COND_i386_pc_TRUE@am__append_3093 = $(nodist_relocator_module_SOURCES) -@COND_i386_pc_TRUE@am__append_3094 = \ -@COND_i386_pc_TRUE@ $(nodist_relocator_module_SOURCES) \ -@COND_i386_pc_TRUE@ relocator.marker -@COND_i386_pc_TRUE@am__append_3095 = relocator.mod -@COND_i386_pc_TRUE@am__append_3096 = relocator.marker -@COND_i386_efi_TRUE@am__append_3097 = relocator.module -@COND_i386_efi_TRUE@am__append_3098 = relocator.module$(EXEEXT) -@COND_i386_efi_TRUE@am__append_3099 = lib/i386/relocator_common.S kern/powerpc/cache_flush.S -@COND_i386_efi_TRUE@am__append_3100 = $(nodist_relocator_module_SOURCES) -@COND_i386_efi_TRUE@am__append_3101 = \ -@COND_i386_efi_TRUE@ $(nodist_relocator_module_SOURCES) \ -@COND_i386_efi_TRUE@ relocator.marker -@COND_i386_efi_TRUE@am__append_3102 = relocator.mod -@COND_i386_efi_TRUE@am__append_3103 = relocator.marker -@COND_i386_qemu_TRUE@am__append_3104 = relocator.module -@COND_i386_qemu_TRUE@am__append_3105 = relocator.module$(EXEEXT) -@COND_i386_qemu_TRUE@am__append_3106 = lib/i386/relocator_common.S kern/powerpc/cache_flush.S -@COND_i386_qemu_TRUE@am__append_3107 = $(nodist_relocator_module_SOURCES) -@COND_i386_qemu_TRUE@am__append_3108 = \ -@COND_i386_qemu_TRUE@ $(nodist_relocator_module_SOURCES) \ -@COND_i386_qemu_TRUE@ relocator.marker -@COND_i386_qemu_TRUE@am__append_3109 = relocator.mod -@COND_i386_qemu_TRUE@am__append_3110 = relocator.marker -@COND_i386_coreboot_TRUE@am__append_3111 = relocator.module -@COND_i386_coreboot_TRUE@am__append_3112 = relocator.module$(EXEEXT) -@COND_i386_coreboot_TRUE@am__append_3113 = lib/i386/relocator_common.S kern/powerpc/cache_flush.S -@COND_i386_coreboot_TRUE@am__append_3114 = $(nodist_relocator_module_SOURCES) -@COND_i386_coreboot_TRUE@am__append_3115 = \ -@COND_i386_coreboot_TRUE@ $(nodist_relocator_module_SOURCES) \ -@COND_i386_coreboot_TRUE@ relocator.marker -@COND_i386_coreboot_TRUE@am__append_3116 = relocator.mod -@COND_i386_coreboot_TRUE@am__append_3117 = relocator.marker -@COND_i386_multiboot_TRUE@am__append_3118 = relocator.module -@COND_i386_multiboot_TRUE@am__append_3119 = relocator.module$(EXEEXT) -@COND_i386_multiboot_TRUE@am__append_3120 = lib/i386/relocator_common.S kern/powerpc/cache_flush.S -@COND_i386_multiboot_TRUE@am__append_3121 = $(nodist_relocator_module_SOURCES) -@COND_i386_multiboot_TRUE@am__append_3122 = \ -@COND_i386_multiboot_TRUE@ $(nodist_relocator_module_SOURCES) \ -@COND_i386_multiboot_TRUE@ relocator.marker -@COND_i386_multiboot_TRUE@am__append_3123 = relocator.mod -@COND_i386_multiboot_TRUE@am__append_3124 = relocator.marker -@COND_i386_ieee1275_TRUE@am__append_3125 = relocator.module -@COND_i386_ieee1275_TRUE@am__append_3126 = relocator.module$(EXEEXT) -@COND_i386_ieee1275_TRUE@am__append_3127 = lib/i386/relocator_common.S kern/powerpc/cache_flush.S -@COND_i386_ieee1275_TRUE@am__append_3128 = $(nodist_relocator_module_SOURCES) -@COND_i386_ieee1275_TRUE@am__append_3129 = \ -@COND_i386_ieee1275_TRUE@ $(nodist_relocator_module_SOURCES) \ -@COND_i386_ieee1275_TRUE@ relocator.marker -@COND_i386_ieee1275_TRUE@am__append_3130 = relocator.mod -@COND_i386_ieee1275_TRUE@am__append_3131 = relocator.marker -@COND_x86_64_efi_TRUE@am__append_3132 = relocator.module -@COND_x86_64_efi_TRUE@am__append_3133 = relocator.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__append_3134 = lib/i386/relocator_common.S kern/powerpc/cache_flush.S -@COND_x86_64_efi_TRUE@am__append_3135 = $(nodist_relocator_module_SOURCES) -@COND_x86_64_efi_TRUE@am__append_3136 = \ -@COND_x86_64_efi_TRUE@ $(nodist_relocator_module_SOURCES) \ -@COND_x86_64_efi_TRUE@ relocator.marker -@COND_x86_64_efi_TRUE@am__append_3137 = relocator.mod -@COND_x86_64_efi_TRUE@am__append_3138 = relocator.marker -@COND_i386_xen_TRUE@am__append_3139 = relocator.module -@COND_i386_xen_TRUE@am__append_3140 = relocator.module$(EXEEXT) -@COND_i386_xen_TRUE@am__append_3141 = lib/i386/relocator_common.S kern/powerpc/cache_flush.S -@COND_i386_xen_TRUE@am__append_3142 = $(nodist_relocator_module_SOURCES) -@COND_i386_xen_TRUE@am__append_3143 = \ -@COND_i386_xen_TRUE@ $(nodist_relocator_module_SOURCES) \ -@COND_i386_xen_TRUE@ relocator.marker -@COND_i386_xen_TRUE@am__append_3144 = relocator.mod -@COND_i386_xen_TRUE@am__append_3145 = relocator.marker -@COND_x86_64_xen_TRUE@am__append_3146 = relocator.module -@COND_x86_64_xen_TRUE@am__append_3147 = relocator.module$(EXEEXT) -@COND_x86_64_xen_TRUE@am__append_3148 = lib/i386/relocator_common.S kern/powerpc/cache_flush.S -@COND_x86_64_xen_TRUE@am__append_3149 = $(nodist_relocator_module_SOURCES) -@COND_x86_64_xen_TRUE@am__append_3150 = \ -@COND_x86_64_xen_TRUE@ $(nodist_relocator_module_SOURCES) \ -@COND_x86_64_xen_TRUE@ relocator.marker -@COND_x86_64_xen_TRUE@am__append_3151 = relocator.mod -@COND_x86_64_xen_TRUE@am__append_3152 = relocator.marker -@COND_i386_xen_pvh_TRUE@am__append_3153 = relocator.module -@COND_i386_xen_pvh_TRUE@am__append_3154 = relocator.module$(EXEEXT) -@COND_i386_xen_pvh_TRUE@am__append_3155 = lib/i386/relocator_common.S kern/powerpc/cache_flush.S -@COND_i386_xen_pvh_TRUE@am__append_3156 = $(nodist_relocator_module_SOURCES) -@COND_i386_xen_pvh_TRUE@am__append_3157 = \ -@COND_i386_xen_pvh_TRUE@ $(nodist_relocator_module_SOURCES) \ -@COND_i386_xen_pvh_TRUE@ relocator.marker -@COND_i386_xen_pvh_TRUE@am__append_3158 = relocator.mod -@COND_i386_xen_pvh_TRUE@am__append_3159 = relocator.marker -@COND_mips_loongson_TRUE@am__append_3160 = relocator.module -@COND_mips_loongson_TRUE@am__append_3161 = relocator.module$(EXEEXT) -@COND_mips_loongson_TRUE@am__append_3162 = lib/i386/relocator_common.S kern/powerpc/cache_flush.S -@COND_mips_loongson_TRUE@am__append_3163 = $(nodist_relocator_module_SOURCES) -@COND_mips_loongson_TRUE@am__append_3164 = \ -@COND_mips_loongson_TRUE@ $(nodist_relocator_module_SOURCES) \ -@COND_mips_loongson_TRUE@ relocator.marker -@COND_mips_loongson_TRUE@am__append_3165 = relocator.mod -@COND_mips_loongson_TRUE@am__append_3166 = relocator.marker -@COND_powerpc_ieee1275_TRUE@am__append_3167 = relocator.module -@COND_powerpc_ieee1275_TRUE@am__append_3168 = relocator.module$(EXEEXT) -@COND_powerpc_ieee1275_TRUE@am__append_3169 = lib/i386/relocator_common.S kern/powerpc/cache_flush.S -@COND_powerpc_ieee1275_TRUE@am__append_3170 = $(nodist_relocator_module_SOURCES) -@COND_powerpc_ieee1275_TRUE@am__append_3171 = $(nodist_relocator_module_SOURCES) \ -@COND_powerpc_ieee1275_TRUE@ relocator.marker -@COND_powerpc_ieee1275_TRUE@am__append_3172 = relocator.mod -@COND_powerpc_ieee1275_TRUE@am__append_3173 = relocator.marker -@COND_mips_arc_TRUE@am__append_3174 = relocator.module -@COND_mips_arc_TRUE@am__append_3175 = relocator.module$(EXEEXT) -@COND_mips_arc_TRUE@am__append_3176 = lib/i386/relocator_common.S kern/powerpc/cache_flush.S -@COND_mips_arc_TRUE@am__append_3177 = $(nodist_relocator_module_SOURCES) -@COND_mips_arc_TRUE@am__append_3178 = \ -@COND_mips_arc_TRUE@ $(nodist_relocator_module_SOURCES) \ -@COND_mips_arc_TRUE@ relocator.marker -@COND_mips_arc_TRUE@am__append_3179 = relocator.mod -@COND_mips_arc_TRUE@am__append_3180 = relocator.marker -@COND_mips_qemu_mips_TRUE@am__append_3181 = relocator.module -@COND_mips_qemu_mips_TRUE@am__append_3182 = relocator.module$(EXEEXT) -@COND_mips_qemu_mips_TRUE@am__append_3183 = lib/i386/relocator_common.S kern/powerpc/cache_flush.S -@COND_mips_qemu_mips_TRUE@am__append_3184 = $(nodist_relocator_module_SOURCES) -@COND_mips_qemu_mips_TRUE@am__append_3185 = \ -@COND_mips_qemu_mips_TRUE@ $(nodist_relocator_module_SOURCES) \ -@COND_mips_qemu_mips_TRUE@ relocator.marker -@COND_mips_qemu_mips_TRUE@am__append_3186 = relocator.mod -@COND_mips_qemu_mips_TRUE@am__append_3187 = relocator.marker -@COND_i386_pc_TRUE@am__append_3188 = datetime.module -@COND_i386_pc_TRUE@am__append_3189 = datetime.module$(EXEEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_FALSE@@COND_x86_64_efi_FALSE@@COND_x86_64_xen_FALSE@datetime_module_DEPENDENCIES = -@COND_i386_pc_TRUE@am__append_3190 = -@COND_i386_pc_TRUE@am__append_3191 = $(nodist_datetime_module_SOURCES) -@COND_i386_pc_TRUE@am__append_3192 = \ -@COND_i386_pc_TRUE@ $(nodist_datetime_module_SOURCES) \ -@COND_i386_pc_TRUE@ datetime.marker -@COND_i386_pc_TRUE@am__append_3193 = datetime.mod -@COND_i386_pc_TRUE@am__append_3194 = datetime.marker -@COND_i386_efi_TRUE@am__append_3195 = datetime.module -@COND_i386_efi_TRUE@am__append_3196 = datetime.module$(EXEEXT) -@COND_i386_efi_TRUE@am__append_3197 = -@COND_i386_efi_TRUE@am__append_3198 = $(nodist_datetime_module_SOURCES) -@COND_i386_efi_TRUE@am__append_3199 = \ -@COND_i386_efi_TRUE@ $(nodist_datetime_module_SOURCES) \ -@COND_i386_efi_TRUE@ datetime.marker -@COND_i386_efi_TRUE@am__append_3200 = datetime.mod -@COND_i386_efi_TRUE@am__append_3201 = datetime.marker -@COND_i386_qemu_TRUE@am__append_3202 = datetime.module -@COND_i386_qemu_TRUE@am__append_3203 = datetime.module$(EXEEXT) -@COND_i386_qemu_TRUE@am__append_3204 = -@COND_i386_qemu_TRUE@am__append_3205 = $(nodist_datetime_module_SOURCES) -@COND_i386_qemu_TRUE@am__append_3206 = \ -@COND_i386_qemu_TRUE@ $(nodist_datetime_module_SOURCES) \ -@COND_i386_qemu_TRUE@ datetime.marker -@COND_i386_qemu_TRUE@am__append_3207 = datetime.mod -@COND_i386_qemu_TRUE@am__append_3208 = datetime.marker -@COND_i386_coreboot_TRUE@am__append_3209 = datetime.module -@COND_i386_coreboot_TRUE@am__append_3210 = datetime.module$(EXEEXT) -@COND_i386_coreboot_TRUE@am__append_3211 = -@COND_i386_coreboot_TRUE@am__append_3212 = $(nodist_datetime_module_SOURCES) -@COND_i386_coreboot_TRUE@am__append_3213 = \ -@COND_i386_coreboot_TRUE@ $(nodist_datetime_module_SOURCES) \ -@COND_i386_coreboot_TRUE@ datetime.marker -@COND_i386_coreboot_TRUE@am__append_3214 = datetime.mod -@COND_i386_coreboot_TRUE@am__append_3215 = datetime.marker -@COND_i386_multiboot_TRUE@am__append_3216 = datetime.module -@COND_i386_multiboot_TRUE@am__append_3217 = datetime.module$(EXEEXT) -@COND_i386_multiboot_TRUE@am__append_3218 = -@COND_i386_multiboot_TRUE@am__append_3219 = $(nodist_datetime_module_SOURCES) -@COND_i386_multiboot_TRUE@am__append_3220 = \ -@COND_i386_multiboot_TRUE@ $(nodist_datetime_module_SOURCES) \ -@COND_i386_multiboot_TRUE@ datetime.marker -@COND_i386_multiboot_TRUE@am__append_3221 = datetime.mod -@COND_i386_multiboot_TRUE@am__append_3222 = datetime.marker -@COND_i386_ieee1275_TRUE@am__append_3223 = datetime.module -@COND_i386_ieee1275_TRUE@am__append_3224 = datetime.module$(EXEEXT) -@COND_i386_ieee1275_TRUE@am__append_3225 = -@COND_i386_ieee1275_TRUE@am__append_3226 = $(nodist_datetime_module_SOURCES) -@COND_i386_ieee1275_TRUE@am__append_3227 = \ -@COND_i386_ieee1275_TRUE@ $(nodist_datetime_module_SOURCES) \ -@COND_i386_ieee1275_TRUE@ datetime.marker -@COND_i386_ieee1275_TRUE@am__append_3228 = datetime.mod -@COND_i386_ieee1275_TRUE@am__append_3229 = datetime.marker -@COND_x86_64_efi_TRUE@am__append_3230 = datetime.module -@COND_x86_64_efi_TRUE@am__append_3231 = datetime.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__append_3232 = -@COND_x86_64_efi_TRUE@am__append_3233 = $(nodist_datetime_module_SOURCES) -@COND_x86_64_efi_TRUE@am__append_3234 = \ -@COND_x86_64_efi_TRUE@ $(nodist_datetime_module_SOURCES) \ -@COND_x86_64_efi_TRUE@ datetime.marker -@COND_x86_64_efi_TRUE@am__append_3235 = datetime.mod -@COND_x86_64_efi_TRUE@am__append_3236 = datetime.marker -@COND_i386_xen_TRUE@am__append_3237 = datetime.module -@COND_i386_xen_TRUE@am__append_3238 = datetime.module$(EXEEXT) -@COND_i386_xen_TRUE@am__append_3239 = -@COND_i386_xen_TRUE@am__append_3240 = $(nodist_datetime_module_SOURCES) -@COND_i386_xen_TRUE@am__append_3241 = \ -@COND_i386_xen_TRUE@ $(nodist_datetime_module_SOURCES) \ -@COND_i386_xen_TRUE@ datetime.marker -@COND_i386_xen_TRUE@am__append_3242 = datetime.mod -@COND_i386_xen_TRUE@am__append_3243 = datetime.marker -@COND_x86_64_xen_TRUE@am__append_3244 = datetime.module -@COND_x86_64_xen_TRUE@am__append_3245 = datetime.module$(EXEEXT) -@COND_x86_64_xen_TRUE@am__append_3246 = -@COND_x86_64_xen_TRUE@am__append_3247 = $(nodist_datetime_module_SOURCES) -@COND_x86_64_xen_TRUE@am__append_3248 = \ -@COND_x86_64_xen_TRUE@ $(nodist_datetime_module_SOURCES) \ -@COND_x86_64_xen_TRUE@ datetime.marker -@COND_x86_64_xen_TRUE@am__append_3249 = datetime.mod -@COND_x86_64_xen_TRUE@am__append_3250 = datetime.marker -@COND_i386_xen_pvh_TRUE@am__append_3251 = datetime.module -@COND_i386_xen_pvh_TRUE@am__append_3252 = datetime.module$(EXEEXT) -@COND_i386_xen_pvh_TRUE@am__append_3253 = -@COND_i386_xen_pvh_TRUE@am__append_3254 = $(nodist_datetime_module_SOURCES) -@COND_i386_xen_pvh_TRUE@am__append_3255 = \ -@COND_i386_xen_pvh_TRUE@ $(nodist_datetime_module_SOURCES) \ -@COND_i386_xen_pvh_TRUE@ datetime.marker -@COND_i386_xen_pvh_TRUE@am__append_3256 = datetime.mod -@COND_i386_xen_pvh_TRUE@am__append_3257 = datetime.marker -@COND_mips_loongson_TRUE@am__append_3258 = datetime.module -@COND_mips_loongson_TRUE@am__append_3259 = datetime.module$(EXEEXT) -@COND_mips_loongson_TRUE@am__append_3260 = -@COND_mips_loongson_TRUE@am__append_3261 = $(nodist_datetime_module_SOURCES) -@COND_mips_loongson_TRUE@am__append_3262 = \ -@COND_mips_loongson_TRUE@ $(nodist_datetime_module_SOURCES) \ -@COND_mips_loongson_TRUE@ datetime.marker -@COND_mips_loongson_TRUE@am__append_3263 = datetime.mod -@COND_mips_loongson_TRUE@am__append_3264 = datetime.marker -@COND_sparc64_ieee1275_TRUE@am__append_3265 = datetime.module -@COND_sparc64_ieee1275_TRUE@am__append_3266 = datetime.module$(EXEEXT) -@COND_sparc64_ieee1275_TRUE@am__append_3267 = -@COND_sparc64_ieee1275_TRUE@am__append_3268 = $(nodist_datetime_module_SOURCES) -@COND_sparc64_ieee1275_TRUE@am__append_3269 = \ -@COND_sparc64_ieee1275_TRUE@ $(nodist_datetime_module_SOURCES) \ -@COND_sparc64_ieee1275_TRUE@ datetime.marker -@COND_sparc64_ieee1275_TRUE@am__append_3270 = datetime.mod -@COND_sparc64_ieee1275_TRUE@am__append_3271 = datetime.marker -@COND_powerpc_ieee1275_TRUE@am__append_3272 = datetime.module -@COND_powerpc_ieee1275_TRUE@am__append_3273 = datetime.module$(EXEEXT) -@COND_powerpc_ieee1275_TRUE@am__append_3274 = -@COND_powerpc_ieee1275_TRUE@am__append_3275 = $(nodist_datetime_module_SOURCES) -@COND_powerpc_ieee1275_TRUE@am__append_3276 = \ -@COND_powerpc_ieee1275_TRUE@ $(nodist_datetime_module_SOURCES) \ -@COND_powerpc_ieee1275_TRUE@ datetime.marker -@COND_powerpc_ieee1275_TRUE@am__append_3277 = datetime.mod -@COND_powerpc_ieee1275_TRUE@am__append_3278 = datetime.marker -@COND_mips_arc_TRUE@am__append_3279 = datetime.module -@COND_mips_arc_TRUE@am__append_3280 = datetime.module$(EXEEXT) -@COND_mips_arc_TRUE@am__append_3281 = -@COND_mips_arc_TRUE@am__append_3282 = $(nodist_datetime_module_SOURCES) -@COND_mips_arc_TRUE@am__append_3283 = \ -@COND_mips_arc_TRUE@ $(nodist_datetime_module_SOURCES) \ -@COND_mips_arc_TRUE@ datetime.marker -@COND_mips_arc_TRUE@am__append_3284 = datetime.mod -@COND_mips_arc_TRUE@am__append_3285 = datetime.marker -@COND_ia64_efi_TRUE@am__append_3286 = datetime.module -@COND_ia64_efi_TRUE@am__append_3287 = datetime.module$(EXEEXT) -@COND_ia64_efi_TRUE@am__append_3288 = -@COND_ia64_efi_TRUE@am__append_3289 = $(nodist_datetime_module_SOURCES) -@COND_ia64_efi_TRUE@am__append_3290 = \ -@COND_ia64_efi_TRUE@ $(nodist_datetime_module_SOURCES) \ -@COND_ia64_efi_TRUE@ datetime.marker -@COND_ia64_efi_TRUE@am__append_3291 = datetime.mod -@COND_ia64_efi_TRUE@am__append_3292 = datetime.marker -@COND_mips_qemu_mips_TRUE@am__append_3293 = datetime.module -@COND_mips_qemu_mips_TRUE@am__append_3294 = datetime.module$(EXEEXT) -@COND_mips_qemu_mips_TRUE@am__append_3295 = -@COND_mips_qemu_mips_TRUE@am__append_3296 = $(nodist_datetime_module_SOURCES) -@COND_mips_qemu_mips_TRUE@am__append_3297 = \ -@COND_mips_qemu_mips_TRUE@ $(nodist_datetime_module_SOURCES) \ -@COND_mips_qemu_mips_TRUE@ datetime.marker -@COND_mips_qemu_mips_TRUE@am__append_3298 = datetime.mod -@COND_mips_qemu_mips_TRUE@am__append_3299 = datetime.marker -@COND_arm_uboot_TRUE@am__append_3300 = datetime.module -@COND_arm_uboot_TRUE@am__append_3301 = datetime.module$(EXEEXT) -@COND_arm_uboot_TRUE@am__append_3302 = -@COND_arm_uboot_TRUE@am__append_3303 = $(nodist_datetime_module_SOURCES) -@COND_arm_uboot_TRUE@am__append_3304 = \ -@COND_arm_uboot_TRUE@ $(nodist_datetime_module_SOURCES) \ -@COND_arm_uboot_TRUE@ datetime.marker -@COND_arm_uboot_TRUE@am__append_3305 = datetime.mod -@COND_arm_uboot_TRUE@am__append_3306 = datetime.marker -@COND_arm_efi_TRUE@am__append_3307 = datetime.module -@COND_arm_efi_TRUE@am__append_3308 = datetime.module$(EXEEXT) -@COND_arm_efi_TRUE@am__append_3309 = -@COND_arm_efi_TRUE@am__append_3310 = $(nodist_datetime_module_SOURCES) -@COND_arm_efi_TRUE@am__append_3311 = \ -@COND_arm_efi_TRUE@ $(nodist_datetime_module_SOURCES) \ -@COND_arm_efi_TRUE@ datetime.marker -@COND_arm_efi_TRUE@am__append_3312 = datetime.mod -@COND_arm_efi_TRUE@am__append_3313 = datetime.marker -@COND_arm64_efi_TRUE@am__append_3314 = datetime.module -@COND_arm64_efi_TRUE@am__append_3315 = datetime.module$(EXEEXT) -@COND_arm64_efi_TRUE@am__append_3316 = -@COND_arm64_efi_TRUE@am__append_3317 = $(nodist_datetime_module_SOURCES) -@COND_arm64_efi_TRUE@am__append_3318 = \ -@COND_arm64_efi_TRUE@ $(nodist_datetime_module_SOURCES) \ -@COND_arm64_efi_TRUE@ datetime.marker -@COND_arm64_efi_TRUE@am__append_3319 = datetime.mod -@COND_arm64_efi_TRUE@am__append_3320 = datetime.marker -@COND_arm_coreboot_TRUE@am__append_3321 = datetime.module -@COND_arm_coreboot_TRUE@am__append_3322 = datetime.module$(EXEEXT) -@COND_arm_coreboot_TRUE@am__append_3323 = -@COND_arm_coreboot_TRUE@am__append_3324 = $(nodist_datetime_module_SOURCES) -@COND_arm_coreboot_TRUE@am__append_3325 = \ -@COND_arm_coreboot_TRUE@ $(nodist_datetime_module_SOURCES) \ -@COND_arm_coreboot_TRUE@ datetime.marker -@COND_arm_coreboot_TRUE@am__append_3326 = datetime.mod -@COND_arm_coreboot_TRUE@am__append_3327 = datetime.marker -@COND_riscv32_efi_TRUE@am__append_3328 = datetime.module -@COND_riscv32_efi_TRUE@am__append_3329 = datetime.module$(EXEEXT) -@COND_riscv32_efi_TRUE@am__append_3330 = -@COND_riscv32_efi_TRUE@am__append_3331 = $(nodist_datetime_module_SOURCES) -@COND_riscv32_efi_TRUE@am__append_3332 = \ -@COND_riscv32_efi_TRUE@ $(nodist_datetime_module_SOURCES) \ -@COND_riscv32_efi_TRUE@ datetime.marker -@COND_riscv32_efi_TRUE@am__append_3333 = datetime.mod -@COND_riscv32_efi_TRUE@am__append_3334 = datetime.marker -@COND_riscv64_efi_TRUE@am__append_3335 = datetime.module -@COND_riscv64_efi_TRUE@am__append_3336 = datetime.module$(EXEEXT) -@COND_riscv64_efi_TRUE@am__append_3337 = -@COND_riscv64_efi_TRUE@am__append_3338 = $(nodist_datetime_module_SOURCES) -@COND_riscv64_efi_TRUE@am__append_3339 = \ -@COND_riscv64_efi_TRUE@ $(nodist_datetime_module_SOURCES) \ -@COND_riscv64_efi_TRUE@ datetime.marker -@COND_riscv64_efi_TRUE@am__append_3340 = datetime.mod -@COND_riscv64_efi_TRUE@am__append_3341 = datetime.marker -@COND_i386_pc_TRUE@am__append_3342 = aout.module -@COND_i386_pc_TRUE@am__append_3343 = aout.module$(EXEEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_x86_64_efi_FALSE@aout_module_DEPENDENCIES = -@COND_i386_pc_TRUE@am__append_3344 = -@COND_i386_pc_TRUE@am__append_3345 = $(nodist_aout_module_SOURCES) -@COND_i386_pc_TRUE@am__append_3346 = $(nodist_aout_module_SOURCES) \ -@COND_i386_pc_TRUE@ aout.marker -@COND_i386_pc_TRUE@am__append_3347 = aout.mod -@COND_i386_pc_TRUE@am__append_3348 = aout.marker -@COND_i386_efi_TRUE@am__append_3349 = aout.module -@COND_i386_efi_TRUE@am__append_3350 = aout.module$(EXEEXT) -@COND_i386_efi_TRUE@am__append_3351 = -@COND_i386_efi_TRUE@am__append_3352 = $(nodist_aout_module_SOURCES) -@COND_i386_efi_TRUE@am__append_3353 = $(nodist_aout_module_SOURCES) \ -@COND_i386_efi_TRUE@ aout.marker -@COND_i386_efi_TRUE@am__append_3354 = aout.mod -@COND_i386_efi_TRUE@am__append_3355 = aout.marker -@COND_i386_qemu_TRUE@am__append_3356 = aout.module -@COND_i386_qemu_TRUE@am__append_3357 = aout.module$(EXEEXT) -@COND_i386_qemu_TRUE@am__append_3358 = -@COND_i386_qemu_TRUE@am__append_3359 = $(nodist_aout_module_SOURCES) -@COND_i386_qemu_TRUE@am__append_3360 = $(nodist_aout_module_SOURCES) \ -@COND_i386_qemu_TRUE@ aout.marker -@COND_i386_qemu_TRUE@am__append_3361 = aout.mod -@COND_i386_qemu_TRUE@am__append_3362 = aout.marker -@COND_i386_coreboot_TRUE@am__append_3363 = aout.module -@COND_i386_coreboot_TRUE@am__append_3364 = aout.module$(EXEEXT) -@COND_i386_coreboot_TRUE@am__append_3365 = -@COND_i386_coreboot_TRUE@am__append_3366 = $(nodist_aout_module_SOURCES) -@COND_i386_coreboot_TRUE@am__append_3367 = \ -@COND_i386_coreboot_TRUE@ $(nodist_aout_module_SOURCES) \ -@COND_i386_coreboot_TRUE@ aout.marker -@COND_i386_coreboot_TRUE@am__append_3368 = aout.mod -@COND_i386_coreboot_TRUE@am__append_3369 = aout.marker -@COND_i386_multiboot_TRUE@am__append_3370 = aout.module -@COND_i386_multiboot_TRUE@am__append_3371 = aout.module$(EXEEXT) -@COND_i386_multiboot_TRUE@am__append_3372 = -@COND_i386_multiboot_TRUE@am__append_3373 = $(nodist_aout_module_SOURCES) -@COND_i386_multiboot_TRUE@am__append_3374 = \ -@COND_i386_multiboot_TRUE@ $(nodist_aout_module_SOURCES) \ -@COND_i386_multiboot_TRUE@ aout.marker -@COND_i386_multiboot_TRUE@am__append_3375 = aout.mod -@COND_i386_multiboot_TRUE@am__append_3376 = aout.marker -@COND_i386_ieee1275_TRUE@am__append_3377 = aout.module -@COND_i386_ieee1275_TRUE@am__append_3378 = aout.module$(EXEEXT) -@COND_i386_ieee1275_TRUE@am__append_3379 = -@COND_i386_ieee1275_TRUE@am__append_3380 = $(nodist_aout_module_SOURCES) -@COND_i386_ieee1275_TRUE@am__append_3381 = \ -@COND_i386_ieee1275_TRUE@ $(nodist_aout_module_SOURCES) \ -@COND_i386_ieee1275_TRUE@ aout.marker -@COND_i386_ieee1275_TRUE@am__append_3382 = aout.mod -@COND_i386_ieee1275_TRUE@am__append_3383 = aout.marker -@COND_x86_64_efi_TRUE@am__append_3384 = aout.module -@COND_x86_64_efi_TRUE@am__append_3385 = aout.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__append_3386 = -@COND_x86_64_efi_TRUE@am__append_3387 = $(nodist_aout_module_SOURCES) -@COND_x86_64_efi_TRUE@am__append_3388 = $(nodist_aout_module_SOURCES) \ -@COND_x86_64_efi_TRUE@ aout.marker -@COND_x86_64_efi_TRUE@am__append_3389 = aout.mod -@COND_x86_64_efi_TRUE@am__append_3390 = aout.marker -@COND_i386_pc_TRUE@am__append_3391 = bsd.module -@COND_i386_pc_TRUE@am__append_3392 = bsd.module$(EXEEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_x86_64_efi_FALSE@bsd_module_DEPENDENCIES = -@COND_i386_pc_TRUE@am__append_3393 = loader/i386/bsdXX.c loader/i386/bsd_pagetable.c -@COND_i386_pc_TRUE@am__append_3394 = $(nodist_bsd_module_SOURCES) -@COND_i386_pc_TRUE@am__append_3395 = $(nodist_bsd_module_SOURCES) \ -@COND_i386_pc_TRUE@ bsd.marker -@COND_i386_pc_TRUE@am__append_3396 = bsd.mod -@COND_i386_pc_TRUE@am__append_3397 = bsd.marker -@COND_i386_efi_TRUE@am__append_3398 = bsd.module -@COND_i386_efi_TRUE@am__append_3399 = bsd.module$(EXEEXT) -@COND_i386_efi_TRUE@am__append_3400 = loader/i386/bsdXX.c loader/i386/bsd_pagetable.c -@COND_i386_efi_TRUE@am__append_3401 = $(nodist_bsd_module_SOURCES) -@COND_i386_efi_TRUE@am__append_3402 = $(nodist_bsd_module_SOURCES) \ -@COND_i386_efi_TRUE@ bsd.marker -@COND_i386_efi_TRUE@am__append_3403 = bsd.mod -@COND_i386_efi_TRUE@am__append_3404 = bsd.marker -@COND_i386_qemu_TRUE@am__append_3405 = bsd.module -@COND_i386_qemu_TRUE@am__append_3406 = bsd.module$(EXEEXT) -@COND_i386_qemu_TRUE@am__append_3407 = loader/i386/bsdXX.c loader/i386/bsd_pagetable.c -@COND_i386_qemu_TRUE@am__append_3408 = $(nodist_bsd_module_SOURCES) -@COND_i386_qemu_TRUE@am__append_3409 = $(nodist_bsd_module_SOURCES) \ -@COND_i386_qemu_TRUE@ bsd.marker -@COND_i386_qemu_TRUE@am__append_3410 = bsd.mod -@COND_i386_qemu_TRUE@am__append_3411 = bsd.marker -@COND_i386_coreboot_TRUE@am__append_3412 = bsd.module -@COND_i386_coreboot_TRUE@am__append_3413 = bsd.module$(EXEEXT) -@COND_i386_coreboot_TRUE@am__append_3414 = loader/i386/bsdXX.c loader/i386/bsd_pagetable.c -@COND_i386_coreboot_TRUE@am__append_3415 = $(nodist_bsd_module_SOURCES) -@COND_i386_coreboot_TRUE@am__append_3416 = \ -@COND_i386_coreboot_TRUE@ $(nodist_bsd_module_SOURCES) \ -@COND_i386_coreboot_TRUE@ bsd.marker -@COND_i386_coreboot_TRUE@am__append_3417 = bsd.mod -@COND_i386_coreboot_TRUE@am__append_3418 = bsd.marker -@COND_i386_multiboot_TRUE@am__append_3419 = bsd.module -@COND_i386_multiboot_TRUE@am__append_3420 = bsd.module$(EXEEXT) -@COND_i386_multiboot_TRUE@am__append_3421 = loader/i386/bsdXX.c loader/i386/bsd_pagetable.c -@COND_i386_multiboot_TRUE@am__append_3422 = $(nodist_bsd_module_SOURCES) -@COND_i386_multiboot_TRUE@am__append_3423 = \ -@COND_i386_multiboot_TRUE@ $(nodist_bsd_module_SOURCES) \ -@COND_i386_multiboot_TRUE@ bsd.marker -@COND_i386_multiboot_TRUE@am__append_3424 = bsd.mod -@COND_i386_multiboot_TRUE@am__append_3425 = bsd.marker -@COND_i386_ieee1275_TRUE@am__append_3426 = bsd.module -@COND_i386_ieee1275_TRUE@am__append_3427 = bsd.module$(EXEEXT) -@COND_i386_ieee1275_TRUE@am__append_3428 = loader/i386/bsdXX.c loader/i386/bsd_pagetable.c -@COND_i386_ieee1275_TRUE@am__append_3429 = $(nodist_bsd_module_SOURCES) -@COND_i386_ieee1275_TRUE@am__append_3430 = \ -@COND_i386_ieee1275_TRUE@ $(nodist_bsd_module_SOURCES) \ -@COND_i386_ieee1275_TRUE@ bsd.marker -@COND_i386_ieee1275_TRUE@am__append_3431 = bsd.mod -@COND_i386_ieee1275_TRUE@am__append_3432 = bsd.marker -@COND_x86_64_efi_TRUE@am__append_3433 = bsd.module -@COND_x86_64_efi_TRUE@am__append_3434 = bsd.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__append_3435 = loader/i386/bsdXX.c loader/i386/bsd_pagetable.c -@COND_x86_64_efi_TRUE@am__append_3436 = $(nodist_bsd_module_SOURCES) -@COND_x86_64_efi_TRUE@am__append_3437 = $(nodist_bsd_module_SOURCES) \ -@COND_x86_64_efi_TRUE@ bsd.marker -@COND_x86_64_efi_TRUE@am__append_3438 = bsd.mod -@COND_x86_64_efi_TRUE@am__append_3439 = bsd.marker -@COND_i386_pc_TRUE@am__append_3440 = plan9.module linux16.module -@COND_i386_pc_TRUE@am__append_3441 = plan9.module$(EXEEXT) \ -@COND_i386_pc_TRUE@ linux16.module$(EXEEXT) -@COND_i386_pc_FALSE@plan9_module_DEPENDENCIES = -@COND_i386_pc_TRUE@am__append_3442 = -@COND_i386_pc_TRUE@am__append_3443 = $(nodist_plan9_module_SOURCES) \ -@COND_i386_pc_TRUE@ $(nodist_linux16_module_SOURCES) -@COND_i386_pc_TRUE@am__append_3444 = $(nodist_plan9_module_SOURCES) \ -@COND_i386_pc_TRUE@ plan9.marker \ -@COND_i386_pc_TRUE@ $(nodist_linux16_module_SOURCES) \ -@COND_i386_pc_TRUE@ linux16.marker -@COND_i386_pc_TRUE@am__append_3445 = plan9.mod linux16.mod -@COND_i386_pc_TRUE@am__append_3446 = plan9.marker linux16.marker -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_x86_64_efi_FALSE@linux16_module_DEPENDENCIES = -@COND_i386_efi_TRUE@am__append_3447 = linux16.module -@COND_i386_efi_TRUE@am__append_3448 = linux16.module$(EXEEXT) -@COND_i386_efi_TRUE@am__append_3449 = -@COND_i386_efi_TRUE@am__append_3450 = $(nodist_linux16_module_SOURCES) -@COND_i386_efi_TRUE@am__append_3451 = \ -@COND_i386_efi_TRUE@ $(nodist_linux16_module_SOURCES) \ -@COND_i386_efi_TRUE@ linux16.marker -@COND_i386_efi_TRUE@am__append_3452 = linux16.mod -@COND_i386_efi_TRUE@am__append_3453 = linux16.marker -@COND_i386_qemu_TRUE@am__append_3454 = linux16.module -@COND_i386_qemu_TRUE@am__append_3455 = linux16.module$(EXEEXT) -@COND_i386_qemu_TRUE@am__append_3456 = -@COND_i386_qemu_TRUE@am__append_3457 = $(nodist_linux16_module_SOURCES) -@COND_i386_qemu_TRUE@am__append_3458 = \ -@COND_i386_qemu_TRUE@ $(nodist_linux16_module_SOURCES) \ -@COND_i386_qemu_TRUE@ linux16.marker -@COND_i386_qemu_TRUE@am__append_3459 = linux16.mod -@COND_i386_qemu_TRUE@am__append_3460 = linux16.marker -@COND_i386_coreboot_TRUE@am__append_3461 = linux16.module -@COND_i386_coreboot_TRUE@am__append_3462 = linux16.module$(EXEEXT) -@COND_i386_coreboot_TRUE@am__append_3463 = -@COND_i386_coreboot_TRUE@am__append_3464 = $(nodist_linux16_module_SOURCES) -@COND_i386_coreboot_TRUE@am__append_3465 = \ -@COND_i386_coreboot_TRUE@ $(nodist_linux16_module_SOURCES) \ -@COND_i386_coreboot_TRUE@ linux16.marker -@COND_i386_coreboot_TRUE@am__append_3466 = linux16.mod -@COND_i386_coreboot_TRUE@am__append_3467 = linux16.marker -@COND_i386_multiboot_TRUE@am__append_3468 = linux16.module -@COND_i386_multiboot_TRUE@am__append_3469 = linux16.module$(EXEEXT) -@COND_i386_multiboot_TRUE@am__append_3470 = -@COND_i386_multiboot_TRUE@am__append_3471 = $(nodist_linux16_module_SOURCES) -@COND_i386_multiboot_TRUE@am__append_3472 = \ -@COND_i386_multiboot_TRUE@ $(nodist_linux16_module_SOURCES) \ -@COND_i386_multiboot_TRUE@ linux16.marker -@COND_i386_multiboot_TRUE@am__append_3473 = linux16.mod -@COND_i386_multiboot_TRUE@am__append_3474 = linux16.marker -@COND_i386_ieee1275_TRUE@am__append_3475 = linux16.module -@COND_i386_ieee1275_TRUE@am__append_3476 = linux16.module$(EXEEXT) -@COND_i386_ieee1275_TRUE@am__append_3477 = -@COND_i386_ieee1275_TRUE@am__append_3478 = $(nodist_linux16_module_SOURCES) -@COND_i386_ieee1275_TRUE@am__append_3479 = \ -@COND_i386_ieee1275_TRUE@ $(nodist_linux16_module_SOURCES) \ -@COND_i386_ieee1275_TRUE@ linux16.marker -@COND_i386_ieee1275_TRUE@am__append_3480 = linux16.mod -@COND_i386_ieee1275_TRUE@am__append_3481 = linux16.marker -@COND_x86_64_efi_TRUE@am__append_3482 = linux16.module -@COND_x86_64_efi_TRUE@am__append_3483 = linux16.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__append_3484 = -@COND_x86_64_efi_TRUE@am__append_3485 = $(nodist_linux16_module_SOURCES) -@COND_x86_64_efi_TRUE@am__append_3486 = \ -@COND_x86_64_efi_TRUE@ $(nodist_linux16_module_SOURCES) \ -@COND_x86_64_efi_TRUE@ linux16.marker -@COND_x86_64_efi_TRUE@am__append_3487 = linux16.mod -@COND_x86_64_efi_TRUE@am__append_3488 = linux16.marker -@COND_i386_pc_TRUE@am__append_3489 = ntldr.module truecrypt.module \ -@COND_i386_pc_TRUE@ freedos.module pxechain.module \ -@COND_i386_pc_TRUE@ multiboot2.module -@COND_i386_pc_TRUE@am__append_3490 = ntldr.module$(EXEEXT) \ -@COND_i386_pc_TRUE@ truecrypt.module$(EXEEXT) \ -@COND_i386_pc_TRUE@ freedos.module$(EXEEXT) \ -@COND_i386_pc_TRUE@ pxechain.module$(EXEEXT) \ -@COND_i386_pc_TRUE@ multiboot2.module$(EXEEXT) -@COND_i386_pc_FALSE@ntldr_module_DEPENDENCIES = -@COND_i386_pc_TRUE@am__append_3491 = -@COND_i386_pc_TRUE@am__append_3492 = $(nodist_ntldr_module_SOURCES) \ -@COND_i386_pc_TRUE@ $(nodist_truecrypt_module_SOURCES) \ -@COND_i386_pc_TRUE@ $(nodist_freedos_module_SOURCES) \ -@COND_i386_pc_TRUE@ $(nodist_pxechain_module_SOURCES) \ -@COND_i386_pc_TRUE@ $(nodist_multiboot2_module_SOURCES) -@COND_i386_pc_TRUE@am__append_3493 = $(nodist_ntldr_module_SOURCES) \ -@COND_i386_pc_TRUE@ ntldr.marker \ -@COND_i386_pc_TRUE@ $(nodist_truecrypt_module_SOURCES) \ -@COND_i386_pc_TRUE@ truecrypt.marker \ -@COND_i386_pc_TRUE@ $(nodist_freedos_module_SOURCES) \ -@COND_i386_pc_TRUE@ freedos.marker \ -@COND_i386_pc_TRUE@ $(nodist_pxechain_module_SOURCES) \ -@COND_i386_pc_TRUE@ pxechain.marker \ -@COND_i386_pc_TRUE@ $(nodist_multiboot2_module_SOURCES) \ -@COND_i386_pc_TRUE@ multiboot2.marker -@COND_i386_pc_TRUE@am__append_3494 = ntldr.mod truecrypt.mod \ -@COND_i386_pc_TRUE@ freedos.mod pxechain.mod multiboot2.mod -@COND_i386_pc_TRUE@am__append_3495 = ntldr.marker truecrypt.marker \ -@COND_i386_pc_TRUE@ freedos.marker pxechain.marker \ -@COND_i386_pc_TRUE@ multiboot2.marker -@COND_i386_pc_FALSE@truecrypt_module_DEPENDENCIES = -@COND_i386_pc_FALSE@freedos_module_DEPENDENCIES = -@COND_i386_pc_FALSE@pxechain_module_DEPENDENCIES = -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_pvh_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_x86_64_efi_FALSE@multiboot2_module_DEPENDENCIES = -@COND_i386_efi_TRUE@am__append_3496 = multiboot2.module -@COND_i386_efi_TRUE@am__append_3497 = multiboot2.module$(EXEEXT) -@COND_i386_efi_TRUE@am__append_3498 = -@COND_i386_efi_TRUE@am__append_3499 = $(nodist_multiboot2_module_SOURCES) -@COND_i386_efi_TRUE@am__append_3500 = \ -@COND_i386_efi_TRUE@ $(nodist_multiboot2_module_SOURCES) \ -@COND_i386_efi_TRUE@ multiboot2.marker -@COND_i386_efi_TRUE@am__append_3501 = multiboot2.mod -@COND_i386_efi_TRUE@am__append_3502 = multiboot2.marker -@COND_i386_qemu_TRUE@am__append_3503 = multiboot2.module -@COND_i386_qemu_TRUE@am__append_3504 = multiboot2.module$(EXEEXT) -@COND_i386_qemu_TRUE@am__append_3505 = -@COND_i386_qemu_TRUE@am__append_3506 = $(nodist_multiboot2_module_SOURCES) -@COND_i386_qemu_TRUE@am__append_3507 = \ -@COND_i386_qemu_TRUE@ $(nodist_multiboot2_module_SOURCES) \ -@COND_i386_qemu_TRUE@ multiboot2.marker -@COND_i386_qemu_TRUE@am__append_3508 = multiboot2.mod -@COND_i386_qemu_TRUE@am__append_3509 = multiboot2.marker -@COND_i386_coreboot_TRUE@am__append_3510 = multiboot2.module -@COND_i386_coreboot_TRUE@am__append_3511 = multiboot2.module$(EXEEXT) -@COND_i386_coreboot_TRUE@am__append_3512 = -@COND_i386_coreboot_TRUE@am__append_3513 = $(nodist_multiboot2_module_SOURCES) -@COND_i386_coreboot_TRUE@am__append_3514 = \ -@COND_i386_coreboot_TRUE@ $(nodist_multiboot2_module_SOURCES) \ -@COND_i386_coreboot_TRUE@ multiboot2.marker -@COND_i386_coreboot_TRUE@am__append_3515 = multiboot2.mod -@COND_i386_coreboot_TRUE@am__append_3516 = multiboot2.marker -@COND_i386_multiboot_TRUE@am__append_3517 = multiboot2.module -@COND_i386_multiboot_TRUE@am__append_3518 = multiboot2.module$(EXEEXT) -@COND_i386_multiboot_TRUE@am__append_3519 = -@COND_i386_multiboot_TRUE@am__append_3520 = $(nodist_multiboot2_module_SOURCES) -@COND_i386_multiboot_TRUE@am__append_3521 = \ -@COND_i386_multiboot_TRUE@ $(nodist_multiboot2_module_SOURCES) \ -@COND_i386_multiboot_TRUE@ multiboot2.marker -@COND_i386_multiboot_TRUE@am__append_3522 = multiboot2.mod -@COND_i386_multiboot_TRUE@am__append_3523 = multiboot2.marker -@COND_i386_ieee1275_TRUE@am__append_3524 = multiboot2.module -@COND_i386_ieee1275_TRUE@am__append_3525 = multiboot2.module$(EXEEXT) -@COND_i386_ieee1275_TRUE@am__append_3526 = -@COND_i386_ieee1275_TRUE@am__append_3527 = $(nodist_multiboot2_module_SOURCES) -@COND_i386_ieee1275_TRUE@am__append_3528 = \ -@COND_i386_ieee1275_TRUE@ $(nodist_multiboot2_module_SOURCES) \ -@COND_i386_ieee1275_TRUE@ multiboot2.marker -@COND_i386_ieee1275_TRUE@am__append_3529 = multiboot2.mod -@COND_i386_ieee1275_TRUE@am__append_3530 = multiboot2.marker -@COND_x86_64_efi_TRUE@am__append_3531 = multiboot2.module -@COND_x86_64_efi_TRUE@am__append_3532 = multiboot2.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__append_3533 = -@COND_x86_64_efi_TRUE@am__append_3534 = $(nodist_multiboot2_module_SOURCES) -@COND_x86_64_efi_TRUE@am__append_3535 = \ -@COND_x86_64_efi_TRUE@ $(nodist_multiboot2_module_SOURCES) \ -@COND_x86_64_efi_TRUE@ multiboot2.marker -@COND_x86_64_efi_TRUE@am__append_3536 = multiboot2.mod -@COND_x86_64_efi_TRUE@am__append_3537 = multiboot2.marker -@COND_i386_xen_pvh_TRUE@am__append_3538 = multiboot2.module -@COND_i386_xen_pvh_TRUE@am__append_3539 = multiboot2.module$(EXEEXT) -@COND_i386_xen_pvh_TRUE@am__append_3540 = -@COND_i386_xen_pvh_TRUE@am__append_3541 = $(nodist_multiboot2_module_SOURCES) -@COND_i386_xen_pvh_TRUE@am__append_3542 = \ -@COND_i386_xen_pvh_TRUE@ $(nodist_multiboot2_module_SOURCES) \ -@COND_i386_xen_pvh_TRUE@ multiboot2.marker -@COND_i386_xen_pvh_TRUE@am__append_3543 = multiboot2.mod -@COND_i386_xen_pvh_TRUE@am__append_3544 = multiboot2.marker -@COND_mips_loongson_TRUE@am__append_3545 = multiboot2.module -@COND_mips_loongson_TRUE@am__append_3546 = multiboot2.module$(EXEEXT) -@COND_mips_loongson_TRUE@am__append_3547 = -@COND_mips_loongson_TRUE@am__append_3548 = $(nodist_multiboot2_module_SOURCES) -@COND_mips_loongson_TRUE@am__append_3549 = \ -@COND_mips_loongson_TRUE@ $(nodist_multiboot2_module_SOURCES) \ -@COND_mips_loongson_TRUE@ multiboot2.marker -@COND_mips_loongson_TRUE@am__append_3550 = multiboot2.mod -@COND_mips_loongson_TRUE@am__append_3551 = multiboot2.marker -@COND_mips_arc_TRUE@am__append_3552 = multiboot2.module -@COND_mips_arc_TRUE@am__append_3553 = multiboot2.module$(EXEEXT) -@COND_mips_arc_TRUE@am__append_3554 = -@COND_mips_arc_TRUE@am__append_3555 = $(nodist_multiboot2_module_SOURCES) -@COND_mips_arc_TRUE@am__append_3556 = \ -@COND_mips_arc_TRUE@ $(nodist_multiboot2_module_SOURCES) \ -@COND_mips_arc_TRUE@ multiboot2.marker -@COND_mips_arc_TRUE@am__append_3557 = multiboot2.mod -@COND_mips_arc_TRUE@am__append_3558 = multiboot2.marker -@COND_mips_qemu_mips_TRUE@am__append_3559 = multiboot2.module -@COND_mips_qemu_mips_TRUE@am__append_3560 = multiboot2.module$(EXEEXT) -@COND_mips_qemu_mips_TRUE@am__append_3561 = -@COND_mips_qemu_mips_TRUE@am__append_3562 = $(nodist_multiboot2_module_SOURCES) -@COND_mips_qemu_mips_TRUE@am__append_3563 = \ -@COND_mips_qemu_mips_TRUE@ $(nodist_multiboot2_module_SOURCES) \ -@COND_mips_qemu_mips_TRUE@ multiboot2.marker -@COND_mips_qemu_mips_TRUE@am__append_3564 = multiboot2.mod -@COND_mips_qemu_mips_TRUE@am__append_3565 = multiboot2.marker -@COND_i386_pc_TRUE@am__append_3566 = multiboot.module -@COND_i386_pc_TRUE@am__append_3567 = multiboot.module$(EXEEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_pvh_FALSE@@COND_x86_64_efi_FALSE@multiboot_module_DEPENDENCIES = -@COND_i386_pc_TRUE@am__append_3568 = loader/multiboot_elfxx.c -@COND_i386_pc_TRUE@am__append_3569 = $(nodist_multiboot_module_SOURCES) -@COND_i386_pc_TRUE@am__append_3570 = \ -@COND_i386_pc_TRUE@ $(nodist_multiboot_module_SOURCES) \ -@COND_i386_pc_TRUE@ multiboot.marker -@COND_i386_pc_TRUE@am__append_3571 = multiboot.mod -@COND_i386_pc_TRUE@am__append_3572 = multiboot.marker -@COND_i386_efi_TRUE@am__append_3573 = multiboot.module -@COND_i386_efi_TRUE@am__append_3574 = multiboot.module$(EXEEXT) -@COND_i386_efi_TRUE@am__append_3575 = loader/multiboot_elfxx.c -@COND_i386_efi_TRUE@am__append_3576 = $(nodist_multiboot_module_SOURCES) -@COND_i386_efi_TRUE@am__append_3577 = \ -@COND_i386_efi_TRUE@ $(nodist_multiboot_module_SOURCES) \ -@COND_i386_efi_TRUE@ multiboot.marker -@COND_i386_efi_TRUE@am__append_3578 = multiboot.mod -@COND_i386_efi_TRUE@am__append_3579 = multiboot.marker -@COND_i386_qemu_TRUE@am__append_3580 = multiboot.module -@COND_i386_qemu_TRUE@am__append_3581 = multiboot.module$(EXEEXT) -@COND_i386_qemu_TRUE@am__append_3582 = loader/multiboot_elfxx.c -@COND_i386_qemu_TRUE@am__append_3583 = $(nodist_multiboot_module_SOURCES) -@COND_i386_qemu_TRUE@am__append_3584 = \ -@COND_i386_qemu_TRUE@ $(nodist_multiboot_module_SOURCES) \ -@COND_i386_qemu_TRUE@ multiboot.marker -@COND_i386_qemu_TRUE@am__append_3585 = multiboot.mod -@COND_i386_qemu_TRUE@am__append_3586 = multiboot.marker -@COND_i386_coreboot_TRUE@am__append_3587 = multiboot.module -@COND_i386_coreboot_TRUE@am__append_3588 = multiboot.module$(EXEEXT) -@COND_i386_coreboot_TRUE@am__append_3589 = loader/multiboot_elfxx.c -@COND_i386_coreboot_TRUE@am__append_3590 = $(nodist_multiboot_module_SOURCES) -@COND_i386_coreboot_TRUE@am__append_3591 = \ -@COND_i386_coreboot_TRUE@ $(nodist_multiboot_module_SOURCES) \ -@COND_i386_coreboot_TRUE@ multiboot.marker -@COND_i386_coreboot_TRUE@am__append_3592 = multiboot.mod -@COND_i386_coreboot_TRUE@am__append_3593 = multiboot.marker -@COND_i386_multiboot_TRUE@am__append_3594 = multiboot.module -@COND_i386_multiboot_TRUE@am__append_3595 = multiboot.module$(EXEEXT) -@COND_i386_multiboot_TRUE@am__append_3596 = loader/multiboot_elfxx.c -@COND_i386_multiboot_TRUE@am__append_3597 = $(nodist_multiboot_module_SOURCES) -@COND_i386_multiboot_TRUE@am__append_3598 = \ -@COND_i386_multiboot_TRUE@ $(nodist_multiboot_module_SOURCES) \ -@COND_i386_multiboot_TRUE@ multiboot.marker -@COND_i386_multiboot_TRUE@am__append_3599 = multiboot.mod -@COND_i386_multiboot_TRUE@am__append_3600 = multiboot.marker -@COND_i386_ieee1275_TRUE@am__append_3601 = multiboot.module -@COND_i386_ieee1275_TRUE@am__append_3602 = multiboot.module$(EXEEXT) -@COND_i386_ieee1275_TRUE@am__append_3603 = loader/multiboot_elfxx.c -@COND_i386_ieee1275_TRUE@am__append_3604 = $(nodist_multiboot_module_SOURCES) -@COND_i386_ieee1275_TRUE@am__append_3605 = \ -@COND_i386_ieee1275_TRUE@ $(nodist_multiboot_module_SOURCES) \ -@COND_i386_ieee1275_TRUE@ multiboot.marker -@COND_i386_ieee1275_TRUE@am__append_3606 = multiboot.mod -@COND_i386_ieee1275_TRUE@am__append_3607 = multiboot.marker -@COND_x86_64_efi_TRUE@am__append_3608 = multiboot.module -@COND_x86_64_efi_TRUE@am__append_3609 = multiboot.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__append_3610 = loader/multiboot_elfxx.c -@COND_x86_64_efi_TRUE@am__append_3611 = $(nodist_multiboot_module_SOURCES) -@COND_x86_64_efi_TRUE@am__append_3612 = \ -@COND_x86_64_efi_TRUE@ $(nodist_multiboot_module_SOURCES) \ -@COND_x86_64_efi_TRUE@ multiboot.marker -@COND_x86_64_efi_TRUE@am__append_3613 = multiboot.mod -@COND_x86_64_efi_TRUE@am__append_3614 = multiboot.marker -@COND_i386_xen_pvh_TRUE@am__append_3615 = multiboot.module -@COND_i386_xen_pvh_TRUE@am__append_3616 = multiboot.module$(EXEEXT) -@COND_i386_xen_pvh_TRUE@am__append_3617 = loader/multiboot_elfxx.c -@COND_i386_xen_pvh_TRUE@am__append_3618 = $(nodist_multiboot_module_SOURCES) -@COND_i386_xen_pvh_TRUE@am__append_3619 = \ -@COND_i386_xen_pvh_TRUE@ $(nodist_multiboot_module_SOURCES) \ -@COND_i386_xen_pvh_TRUE@ multiboot.marker -@COND_i386_xen_pvh_TRUE@am__append_3620 = multiboot.mod -@COND_i386_xen_pvh_TRUE@am__append_3621 = multiboot.marker -@COND_arm64_efi_TRUE@am__append_3622 = xen_boot.module -@COND_arm64_efi_TRUE@am__append_3623 = xen_boot.module$(EXEEXT) -@COND_arm64_efi_FALSE@xen_boot_module_DEPENDENCIES = -@COND_arm64_efi_TRUE@am__append_3624 = -@COND_arm64_efi_TRUE@am__append_3625 = $(nodist_xen_boot_module_SOURCES) -@COND_arm64_efi_TRUE@am__append_3626 = \ -@COND_arm64_efi_TRUE@ $(nodist_xen_boot_module_SOURCES) \ -@COND_arm64_efi_TRUE@ xen_boot.marker -@COND_arm64_efi_TRUE@am__append_3627 = xen_boot.mod -@COND_arm64_efi_TRUE@am__append_3628 = xen_boot.marker -@COND_i386_pc_TRUE@am__append_3629 = linux.module -@COND_i386_pc_TRUE@am__append_3630 = linux.module$(EXEEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_FALSE@@COND_x86_64_efi_FALSE@@COND_x86_64_xen_FALSE@linux_module_DEPENDENCIES = -@COND_i386_pc_TRUE@am__append_3631 = -@COND_i386_pc_TRUE@am__append_3632 = $(nodist_linux_module_SOURCES) -@COND_i386_pc_TRUE@am__append_3633 = $(nodist_linux_module_SOURCES) \ -@COND_i386_pc_TRUE@ linux.marker -@COND_i386_pc_TRUE@am__append_3634 = linux.mod -@COND_i386_pc_TRUE@am__append_3635 = linux.marker -@COND_i386_efi_TRUE@am__append_3636 = linux.module -@COND_i386_efi_TRUE@am__append_3637 = linux.module$(EXEEXT) -@COND_i386_efi_TRUE@am__append_3638 = -@COND_i386_efi_TRUE@am__append_3639 = $(nodist_linux_module_SOURCES) -@COND_i386_efi_TRUE@am__append_3640 = $(nodist_linux_module_SOURCES) \ -@COND_i386_efi_TRUE@ linux.marker -@COND_i386_efi_TRUE@am__append_3641 = linux.mod -@COND_i386_efi_TRUE@am__append_3642 = linux.marker -@COND_i386_qemu_TRUE@am__append_3643 = linux.module -@COND_i386_qemu_TRUE@am__append_3644 = linux.module$(EXEEXT) -@COND_i386_qemu_TRUE@am__append_3645 = -@COND_i386_qemu_TRUE@am__append_3646 = $(nodist_linux_module_SOURCES) -@COND_i386_qemu_TRUE@am__append_3647 = $(nodist_linux_module_SOURCES) \ -@COND_i386_qemu_TRUE@ linux.marker -@COND_i386_qemu_TRUE@am__append_3648 = linux.mod -@COND_i386_qemu_TRUE@am__append_3649 = linux.marker -@COND_i386_coreboot_TRUE@am__append_3650 = linux.module -@COND_i386_coreboot_TRUE@am__append_3651 = linux.module$(EXEEXT) -@COND_i386_coreboot_TRUE@am__append_3652 = -@COND_i386_coreboot_TRUE@am__append_3653 = $(nodist_linux_module_SOURCES) -@COND_i386_coreboot_TRUE@am__append_3654 = \ -@COND_i386_coreboot_TRUE@ $(nodist_linux_module_SOURCES) \ -@COND_i386_coreboot_TRUE@ linux.marker -@COND_i386_coreboot_TRUE@am__append_3655 = linux.mod -@COND_i386_coreboot_TRUE@am__append_3656 = linux.marker -@COND_i386_multiboot_TRUE@am__append_3657 = linux.module -@COND_i386_multiboot_TRUE@am__append_3658 = linux.module$(EXEEXT) -@COND_i386_multiboot_TRUE@am__append_3659 = -@COND_i386_multiboot_TRUE@am__append_3660 = $(nodist_linux_module_SOURCES) -@COND_i386_multiboot_TRUE@am__append_3661 = \ -@COND_i386_multiboot_TRUE@ $(nodist_linux_module_SOURCES) \ -@COND_i386_multiboot_TRUE@ linux.marker -@COND_i386_multiboot_TRUE@am__append_3662 = linux.mod -@COND_i386_multiboot_TRUE@am__append_3663 = linux.marker -@COND_i386_ieee1275_TRUE@am__append_3664 = linux.module -@COND_i386_ieee1275_TRUE@am__append_3665 = linux.module$(EXEEXT) -@COND_i386_ieee1275_TRUE@am__append_3666 = -@COND_i386_ieee1275_TRUE@am__append_3667 = $(nodist_linux_module_SOURCES) -@COND_i386_ieee1275_TRUE@am__append_3668 = \ -@COND_i386_ieee1275_TRUE@ $(nodist_linux_module_SOURCES) \ -@COND_i386_ieee1275_TRUE@ linux.marker -@COND_i386_ieee1275_TRUE@am__append_3669 = linux.mod -@COND_i386_ieee1275_TRUE@am__append_3670 = linux.marker -@COND_x86_64_efi_TRUE@am__append_3671 = linux.module -@COND_x86_64_efi_TRUE@am__append_3672 = linux.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__append_3673 = -@COND_x86_64_efi_TRUE@am__append_3674 = $(nodist_linux_module_SOURCES) -@COND_x86_64_efi_TRUE@am__append_3675 = \ -@COND_x86_64_efi_TRUE@ $(nodist_linux_module_SOURCES) \ -@COND_x86_64_efi_TRUE@ linux.marker -@COND_x86_64_efi_TRUE@am__append_3676 = linux.mod -@COND_x86_64_efi_TRUE@am__append_3677 = linux.marker -@COND_i386_xen_TRUE@am__append_3678 = linux.module -@COND_i386_xen_TRUE@am__append_3679 = linux.module$(EXEEXT) -@COND_i386_xen_TRUE@am__append_3680 = -@COND_i386_xen_TRUE@am__append_3681 = $(nodist_linux_module_SOURCES) -@COND_i386_xen_TRUE@am__append_3682 = $(nodist_linux_module_SOURCES) \ -@COND_i386_xen_TRUE@ linux.marker -@COND_i386_xen_TRUE@am__append_3683 = linux.mod -@COND_i386_xen_TRUE@am__append_3684 = linux.marker -@COND_x86_64_xen_TRUE@am__append_3685 = linux.module -@COND_x86_64_xen_TRUE@am__append_3686 = linux.module$(EXEEXT) -@COND_x86_64_xen_TRUE@am__append_3687 = -@COND_x86_64_xen_TRUE@am__append_3688 = $(nodist_linux_module_SOURCES) -@COND_x86_64_xen_TRUE@am__append_3689 = \ -@COND_x86_64_xen_TRUE@ $(nodist_linux_module_SOURCES) \ -@COND_x86_64_xen_TRUE@ linux.marker -@COND_x86_64_xen_TRUE@am__append_3690 = linux.mod -@COND_x86_64_xen_TRUE@am__append_3691 = linux.marker -@COND_i386_xen_pvh_TRUE@am__append_3692 = linux.module -@COND_i386_xen_pvh_TRUE@am__append_3693 = linux.module$(EXEEXT) -@COND_i386_xen_pvh_TRUE@am__append_3694 = -@COND_i386_xen_pvh_TRUE@am__append_3695 = $(nodist_linux_module_SOURCES) -@COND_i386_xen_pvh_TRUE@am__append_3696 = \ -@COND_i386_xen_pvh_TRUE@ $(nodist_linux_module_SOURCES) \ -@COND_i386_xen_pvh_TRUE@ linux.marker -@COND_i386_xen_pvh_TRUE@am__append_3697 = linux.mod -@COND_i386_xen_pvh_TRUE@am__append_3698 = linux.marker -@COND_mips_loongson_TRUE@am__append_3699 = linux.module -@COND_mips_loongson_TRUE@am__append_3700 = linux.module$(EXEEXT) -@COND_mips_loongson_TRUE@am__append_3701 = -@COND_mips_loongson_TRUE@am__append_3702 = $(nodist_linux_module_SOURCES) -@COND_mips_loongson_TRUE@am__append_3703 = \ -@COND_mips_loongson_TRUE@ $(nodist_linux_module_SOURCES) \ -@COND_mips_loongson_TRUE@ linux.marker -@COND_mips_loongson_TRUE@am__append_3704 = linux.mod -@COND_mips_loongson_TRUE@am__append_3705 = linux.marker -@COND_sparc64_ieee1275_TRUE@am__append_3706 = linux.module -@COND_sparc64_ieee1275_TRUE@am__append_3707 = linux.module$(EXEEXT) -@COND_sparc64_ieee1275_TRUE@am__append_3708 = -@COND_sparc64_ieee1275_TRUE@am__append_3709 = $(nodist_linux_module_SOURCES) -@COND_sparc64_ieee1275_TRUE@am__append_3710 = \ -@COND_sparc64_ieee1275_TRUE@ $(nodist_linux_module_SOURCES) \ -@COND_sparc64_ieee1275_TRUE@ linux.marker -@COND_sparc64_ieee1275_TRUE@am__append_3711 = linux.mod -@COND_sparc64_ieee1275_TRUE@am__append_3712 = linux.marker -@COND_powerpc_ieee1275_TRUE@am__append_3713 = linux.module -@COND_powerpc_ieee1275_TRUE@am__append_3714 = linux.module$(EXEEXT) -@COND_powerpc_ieee1275_TRUE@am__append_3715 = -@COND_powerpc_ieee1275_TRUE@am__append_3716 = $(nodist_linux_module_SOURCES) -@COND_powerpc_ieee1275_TRUE@am__append_3717 = \ -@COND_powerpc_ieee1275_TRUE@ $(nodist_linux_module_SOURCES) \ -@COND_powerpc_ieee1275_TRUE@ linux.marker -@COND_powerpc_ieee1275_TRUE@am__append_3718 = linux.mod -@COND_powerpc_ieee1275_TRUE@am__append_3719 = linux.marker -@COND_mips_arc_TRUE@am__append_3720 = linux.module -@COND_mips_arc_TRUE@am__append_3721 = linux.module$(EXEEXT) -@COND_mips_arc_TRUE@am__append_3722 = -@COND_mips_arc_TRUE@am__append_3723 = $(nodist_linux_module_SOURCES) -@COND_mips_arc_TRUE@am__append_3724 = $(nodist_linux_module_SOURCES) \ -@COND_mips_arc_TRUE@ linux.marker -@COND_mips_arc_TRUE@am__append_3725 = linux.mod -@COND_mips_arc_TRUE@am__append_3726 = linux.marker -@COND_ia64_efi_TRUE@am__append_3727 = linux.module -@COND_ia64_efi_TRUE@am__append_3728 = linux.module$(EXEEXT) -@COND_ia64_efi_TRUE@am__append_3729 = -@COND_ia64_efi_TRUE@am__append_3730 = $(nodist_linux_module_SOURCES) -@COND_ia64_efi_TRUE@am__append_3731 = $(nodist_linux_module_SOURCES) \ -@COND_ia64_efi_TRUE@ linux.marker -@COND_ia64_efi_TRUE@am__append_3732 = linux.mod -@COND_ia64_efi_TRUE@am__append_3733 = linux.marker -@COND_mips_qemu_mips_TRUE@am__append_3734 = linux.module -@COND_mips_qemu_mips_TRUE@am__append_3735 = linux.module$(EXEEXT) -@COND_mips_qemu_mips_TRUE@am__append_3736 = -@COND_mips_qemu_mips_TRUE@am__append_3737 = $(nodist_linux_module_SOURCES) -@COND_mips_qemu_mips_TRUE@am__append_3738 = \ -@COND_mips_qemu_mips_TRUE@ $(nodist_linux_module_SOURCES) \ -@COND_mips_qemu_mips_TRUE@ linux.marker -@COND_mips_qemu_mips_TRUE@am__append_3739 = linux.mod -@COND_mips_qemu_mips_TRUE@am__append_3740 = linux.marker -@COND_arm_uboot_TRUE@am__append_3741 = linux.module -@COND_arm_uboot_TRUE@am__append_3742 = linux.module$(EXEEXT) -@COND_arm_uboot_TRUE@am__append_3743 = -@COND_arm_uboot_TRUE@am__append_3744 = $(nodist_linux_module_SOURCES) -@COND_arm_uboot_TRUE@am__append_3745 = $(nodist_linux_module_SOURCES) \ -@COND_arm_uboot_TRUE@ linux.marker -@COND_arm_uboot_TRUE@am__append_3746 = linux.mod -@COND_arm_uboot_TRUE@am__append_3747 = linux.marker -@COND_arm_efi_TRUE@am__append_3748 = linux.module -@COND_arm_efi_TRUE@am__append_3749 = linux.module$(EXEEXT) -@COND_arm_efi_TRUE@am__append_3750 = -@COND_arm_efi_TRUE@am__append_3751 = $(nodist_linux_module_SOURCES) -@COND_arm_efi_TRUE@am__append_3752 = $(nodist_linux_module_SOURCES) \ -@COND_arm_efi_TRUE@ linux.marker -@COND_arm_efi_TRUE@am__append_3753 = linux.mod -@COND_arm_efi_TRUE@am__append_3754 = linux.marker -@COND_arm64_efi_TRUE@am__append_3755 = linux.module -@COND_arm64_efi_TRUE@am__append_3756 = linux.module$(EXEEXT) -@COND_arm64_efi_TRUE@am__append_3757 = -@COND_arm64_efi_TRUE@am__append_3758 = $(nodist_linux_module_SOURCES) -@COND_arm64_efi_TRUE@am__append_3759 = $(nodist_linux_module_SOURCES) \ -@COND_arm64_efi_TRUE@ linux.marker -@COND_arm64_efi_TRUE@am__append_3760 = linux.mod -@COND_arm64_efi_TRUE@am__append_3761 = linux.marker -@COND_arm_coreboot_TRUE@am__append_3762 = linux.module -@COND_arm_coreboot_TRUE@am__append_3763 = linux.module$(EXEEXT) -@COND_arm_coreboot_TRUE@am__append_3764 = -@COND_arm_coreboot_TRUE@am__append_3765 = $(nodist_linux_module_SOURCES) -@COND_arm_coreboot_TRUE@am__append_3766 = \ -@COND_arm_coreboot_TRUE@ $(nodist_linux_module_SOURCES) \ -@COND_arm_coreboot_TRUE@ linux.marker -@COND_arm_coreboot_TRUE@am__append_3767 = linux.mod -@COND_arm_coreboot_TRUE@am__append_3768 = linux.marker -@COND_riscv32_efi_TRUE@am__append_3769 = linux.module -@COND_riscv32_efi_TRUE@am__append_3770 = linux.module$(EXEEXT) -@COND_riscv32_efi_TRUE@am__append_3771 = -@COND_riscv32_efi_TRUE@am__append_3772 = $(nodist_linux_module_SOURCES) -@COND_riscv32_efi_TRUE@am__append_3773 = \ -@COND_riscv32_efi_TRUE@ $(nodist_linux_module_SOURCES) \ -@COND_riscv32_efi_TRUE@ linux.marker -@COND_riscv32_efi_TRUE@am__append_3774 = linux.mod -@COND_riscv32_efi_TRUE@am__append_3775 = linux.marker -@COND_riscv64_efi_TRUE@am__append_3776 = linux.module -@COND_riscv64_efi_TRUE@am__append_3777 = linux.module$(EXEEXT) -@COND_riscv64_efi_TRUE@am__append_3778 = -@COND_riscv64_efi_TRUE@am__append_3779 = $(nodist_linux_module_SOURCES) -@COND_riscv64_efi_TRUE@am__append_3780 = \ -@COND_riscv64_efi_TRUE@ $(nodist_linux_module_SOURCES) \ -@COND_riscv64_efi_TRUE@ linux.marker -@COND_riscv64_efi_TRUE@am__append_3781 = linux.mod -@COND_riscv64_efi_TRUE@am__append_3782 = linux.marker -@COND_arm_uboot_TRUE@am__append_3783 = fdt.module -@COND_arm_uboot_TRUE@am__append_3784 = fdt.module$(EXEEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@fdt_module_DEPENDENCIES = -@COND_arm_uboot_TRUE@am__append_3785 = -@COND_arm_uboot_TRUE@am__append_3786 = $(nodist_fdt_module_SOURCES) -@COND_arm_uboot_TRUE@am__append_3787 = $(nodist_fdt_module_SOURCES) \ -@COND_arm_uboot_TRUE@ fdt.marker -@COND_arm_uboot_TRUE@am__append_3788 = fdt.mod -@COND_arm_uboot_TRUE@am__append_3789 = fdt.marker -@COND_arm_efi_TRUE@am__append_3790 = fdt.module -@COND_arm_efi_TRUE@am__append_3791 = fdt.module$(EXEEXT) -@COND_arm_efi_TRUE@am__append_3792 = -@COND_arm_efi_TRUE@am__append_3793 = $(nodist_fdt_module_SOURCES) -@COND_arm_efi_TRUE@am__append_3794 = $(nodist_fdt_module_SOURCES) \ -@COND_arm_efi_TRUE@ fdt.marker -@COND_arm_efi_TRUE@am__append_3795 = fdt.mod -@COND_arm_efi_TRUE@am__append_3796 = fdt.marker -@COND_arm64_efi_TRUE@am__append_3797 = fdt.module -@COND_arm64_efi_TRUE@am__append_3798 = fdt.module$(EXEEXT) -@COND_arm64_efi_TRUE@am__append_3799 = -@COND_arm64_efi_TRUE@am__append_3800 = $(nodist_fdt_module_SOURCES) -@COND_arm64_efi_TRUE@am__append_3801 = $(nodist_fdt_module_SOURCES) \ -@COND_arm64_efi_TRUE@ fdt.marker -@COND_arm64_efi_TRUE@am__append_3802 = fdt.mod -@COND_arm64_efi_TRUE@am__append_3803 = fdt.marker -@COND_riscv32_efi_TRUE@am__append_3804 = fdt.module -@COND_riscv32_efi_TRUE@am__append_3805 = fdt.module$(EXEEXT) -@COND_riscv32_efi_TRUE@am__append_3806 = -@COND_riscv32_efi_TRUE@am__append_3807 = $(nodist_fdt_module_SOURCES) -@COND_riscv32_efi_TRUE@am__append_3808 = $(nodist_fdt_module_SOURCES) \ -@COND_riscv32_efi_TRUE@ fdt.marker -@COND_riscv32_efi_TRUE@am__append_3809 = fdt.mod -@COND_riscv32_efi_TRUE@am__append_3810 = fdt.marker -@COND_riscv64_efi_TRUE@am__append_3811 = fdt.module -@COND_riscv64_efi_TRUE@am__append_3812 = fdt.module$(EXEEXT) -@COND_riscv64_efi_TRUE@am__append_3813 = -@COND_riscv64_efi_TRUE@am__append_3814 = $(nodist_fdt_module_SOURCES) -@COND_riscv64_efi_TRUE@am__append_3815 = $(nodist_fdt_module_SOURCES) \ -@COND_riscv64_efi_TRUE@ fdt.marker -@COND_riscv64_efi_TRUE@am__append_3816 = fdt.mod -@COND_riscv64_efi_TRUE@am__append_3817 = fdt.marker -@COND_i386_pc_TRUE@am__append_3818 = xnu.module -@COND_i386_pc_TRUE@am__append_3819 = xnu.module$(EXEEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_x86_64_efi_FALSE@xnu_module_DEPENDENCIES = -@COND_i386_pc_TRUE@am__append_3820 = -@COND_i386_pc_TRUE@am__append_3821 = $(nodist_xnu_module_SOURCES) -@COND_i386_pc_TRUE@am__append_3822 = $(nodist_xnu_module_SOURCES) \ -@COND_i386_pc_TRUE@ xnu.marker -@COND_i386_pc_TRUE@am__append_3823 = xnu.mod -@COND_i386_pc_TRUE@am__append_3824 = xnu.marker -@COND_i386_efi_TRUE@am__append_3825 = xnu.module -@COND_i386_efi_TRUE@am__append_3826 = xnu.module$(EXEEXT) -@COND_i386_efi_TRUE@am__append_3827 = -@COND_i386_efi_TRUE@am__append_3828 = $(nodist_xnu_module_SOURCES) -@COND_i386_efi_TRUE@am__append_3829 = $(nodist_xnu_module_SOURCES) \ -@COND_i386_efi_TRUE@ xnu.marker -@COND_i386_efi_TRUE@am__append_3830 = xnu.mod -@COND_i386_efi_TRUE@am__append_3831 = xnu.marker -@COND_i386_coreboot_TRUE@am__append_3832 = xnu.module -@COND_i386_coreboot_TRUE@am__append_3833 = xnu.module$(EXEEXT) -@COND_i386_coreboot_TRUE@am__append_3834 = -@COND_i386_coreboot_TRUE@am__append_3835 = $(nodist_xnu_module_SOURCES) -@COND_i386_coreboot_TRUE@am__append_3836 = \ -@COND_i386_coreboot_TRUE@ $(nodist_xnu_module_SOURCES) \ -@COND_i386_coreboot_TRUE@ xnu.marker -@COND_i386_coreboot_TRUE@am__append_3837 = xnu.mod -@COND_i386_coreboot_TRUE@am__append_3838 = xnu.marker -@COND_i386_multiboot_TRUE@am__append_3839 = xnu.module -@COND_i386_multiboot_TRUE@am__append_3840 = xnu.module$(EXEEXT) -@COND_i386_multiboot_TRUE@am__append_3841 = -@COND_i386_multiboot_TRUE@am__append_3842 = $(nodist_xnu_module_SOURCES) -@COND_i386_multiboot_TRUE@am__append_3843 = \ -@COND_i386_multiboot_TRUE@ $(nodist_xnu_module_SOURCES) \ -@COND_i386_multiboot_TRUE@ xnu.marker -@COND_i386_multiboot_TRUE@am__append_3844 = xnu.mod -@COND_i386_multiboot_TRUE@am__append_3845 = xnu.marker -@COND_x86_64_efi_TRUE@am__append_3846 = xnu.module -@COND_x86_64_efi_TRUE@am__append_3847 = xnu.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__append_3848 = -@COND_x86_64_efi_TRUE@am__append_3849 = $(nodist_xnu_module_SOURCES) -@COND_x86_64_efi_TRUE@am__append_3850 = $(nodist_xnu_module_SOURCES) \ -@COND_x86_64_efi_TRUE@ xnu.marker -@COND_x86_64_efi_TRUE@am__append_3851 = xnu.mod -@COND_x86_64_efi_TRUE@am__append_3852 = xnu.marker -@COND_i386_pc_TRUE@am__append_3853 = random.module -@COND_i386_pc_TRUE@am__append_3854 = random.module$(EXEEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_x86_64_efi_FALSE@random_module_DEPENDENCIES = -@COND_i386_pc_TRUE@am__append_3855 = -@COND_i386_pc_TRUE@am__append_3856 = $(nodist_random_module_SOURCES) -@COND_i386_pc_TRUE@am__append_3857 = $(nodist_random_module_SOURCES) \ -@COND_i386_pc_TRUE@ random.marker -@COND_i386_pc_TRUE@am__append_3858 = random.mod -@COND_i386_pc_TRUE@am__append_3859 = random.marker -@COND_i386_efi_TRUE@am__append_3860 = random.module -@COND_i386_efi_TRUE@am__append_3861 = random.module$(EXEEXT) -@COND_i386_efi_TRUE@am__append_3862 = -@COND_i386_efi_TRUE@am__append_3863 = $(nodist_random_module_SOURCES) -@COND_i386_efi_TRUE@am__append_3864 = $(nodist_random_module_SOURCES) \ -@COND_i386_efi_TRUE@ random.marker -@COND_i386_efi_TRUE@am__append_3865 = random.mod -@COND_i386_efi_TRUE@am__append_3866 = random.marker -@COND_i386_coreboot_TRUE@am__append_3867 = random.module -@COND_i386_coreboot_TRUE@am__append_3868 = random.module$(EXEEXT) -@COND_i386_coreboot_TRUE@am__append_3869 = -@COND_i386_coreboot_TRUE@am__append_3870 = $(nodist_random_module_SOURCES) -@COND_i386_coreboot_TRUE@am__append_3871 = \ -@COND_i386_coreboot_TRUE@ $(nodist_random_module_SOURCES) \ -@COND_i386_coreboot_TRUE@ random.marker -@COND_i386_coreboot_TRUE@am__append_3872 = random.mod -@COND_i386_coreboot_TRUE@am__append_3873 = random.marker -@COND_i386_multiboot_TRUE@am__append_3874 = random.module -@COND_i386_multiboot_TRUE@am__append_3875 = random.module$(EXEEXT) -@COND_i386_multiboot_TRUE@am__append_3876 = -@COND_i386_multiboot_TRUE@am__append_3877 = $(nodist_random_module_SOURCES) -@COND_i386_multiboot_TRUE@am__append_3878 = \ -@COND_i386_multiboot_TRUE@ $(nodist_random_module_SOURCES) \ -@COND_i386_multiboot_TRUE@ random.marker -@COND_i386_multiboot_TRUE@am__append_3879 = random.mod -@COND_i386_multiboot_TRUE@am__append_3880 = random.marker -@COND_x86_64_efi_TRUE@am__append_3881 = random.module -@COND_x86_64_efi_TRUE@am__append_3882 = random.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__append_3883 = -@COND_x86_64_efi_TRUE@am__append_3884 = $(nodist_random_module_SOURCES) -@COND_x86_64_efi_TRUE@am__append_3885 = \ -@COND_x86_64_efi_TRUE@ $(nodist_random_module_SOURCES) \ -@COND_x86_64_efi_TRUE@ random.marker -@COND_x86_64_efi_TRUE@am__append_3886 = random.mod -@COND_x86_64_efi_TRUE@am__append_3887 = random.marker -@COND_i386_efi_TRUE@am__append_3888 = appleldr.module -@COND_i386_efi_TRUE@am__append_3889 = appleldr.module$(EXEEXT) -@COND_i386_efi_FALSE@@COND_x86_64_efi_FALSE@appleldr_module_DEPENDENCIES = -@COND_i386_efi_TRUE@am__append_3890 = -@COND_i386_efi_TRUE@am__append_3891 = $(nodist_appleldr_module_SOURCES) -@COND_i386_efi_TRUE@am__append_3892 = \ -@COND_i386_efi_TRUE@ $(nodist_appleldr_module_SOURCES) \ -@COND_i386_efi_TRUE@ appleldr.marker -@COND_i386_efi_TRUE@am__append_3893 = appleldr.mod -@COND_i386_efi_TRUE@am__append_3894 = appleldr.marker -@COND_x86_64_efi_TRUE@am__append_3895 = appleldr.module -@COND_x86_64_efi_TRUE@am__append_3896 = appleldr.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__append_3897 = -@COND_x86_64_efi_TRUE@am__append_3898 = $(nodist_appleldr_module_SOURCES) -@COND_x86_64_efi_TRUE@am__append_3899 = \ -@COND_x86_64_efi_TRUE@ $(nodist_appleldr_module_SOURCES) \ -@COND_x86_64_efi_TRUE@ appleldr.marker -@COND_x86_64_efi_TRUE@am__append_3900 = appleldr.mod -@COND_x86_64_efi_TRUE@am__append_3901 = appleldr.marker -@COND_i386_pc_TRUE@am__append_3902 = chain.module -@COND_i386_pc_TRUE@am__append_3903 = chain.module$(EXEEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_pc_FALSE@@COND_ia64_efi_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_x86_64_efi_FALSE@chain_module_DEPENDENCIES = -@COND_i386_pc_TRUE@am__append_3904 = -@COND_i386_pc_TRUE@am__append_3905 = $(nodist_chain_module_SOURCES) -@COND_i386_pc_TRUE@am__append_3906 = $(nodist_chain_module_SOURCES) \ -@COND_i386_pc_TRUE@ chain.marker -@COND_i386_pc_TRUE@am__append_3907 = chain.mod -@COND_i386_pc_TRUE@am__append_3908 = chain.marker -@COND_i386_efi_TRUE@am__append_3909 = chain.module -@COND_i386_efi_TRUE@am__append_3910 = chain.module$(EXEEXT) -@COND_i386_efi_TRUE@am__append_3911 = -@COND_i386_efi_TRUE@am__append_3912 = $(nodist_chain_module_SOURCES) -@COND_i386_efi_TRUE@am__append_3913 = $(nodist_chain_module_SOURCES) \ -@COND_i386_efi_TRUE@ chain.marker -@COND_i386_efi_TRUE@am__append_3914 = chain.mod -@COND_i386_efi_TRUE@am__append_3915 = chain.marker -@COND_i386_coreboot_TRUE@am__append_3916 = chain.module -@COND_i386_coreboot_TRUE@am__append_3917 = chain.module$(EXEEXT) -@COND_i386_coreboot_TRUE@am__append_3918 = -@COND_i386_coreboot_TRUE@am__append_3919 = $(nodist_chain_module_SOURCES) -@COND_i386_coreboot_TRUE@am__append_3920 = \ -@COND_i386_coreboot_TRUE@ $(nodist_chain_module_SOURCES) \ -@COND_i386_coreboot_TRUE@ chain.marker -@COND_i386_coreboot_TRUE@am__append_3921 = chain.mod -@COND_i386_coreboot_TRUE@am__append_3922 = chain.marker -@COND_x86_64_efi_TRUE@am__append_3923 = chain.module -@COND_x86_64_efi_TRUE@am__append_3924 = chain.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__append_3925 = -@COND_x86_64_efi_TRUE@am__append_3926 = $(nodist_chain_module_SOURCES) -@COND_x86_64_efi_TRUE@am__append_3927 = \ -@COND_x86_64_efi_TRUE@ $(nodist_chain_module_SOURCES) \ -@COND_x86_64_efi_TRUE@ chain.marker -@COND_x86_64_efi_TRUE@am__append_3928 = chain.mod -@COND_x86_64_efi_TRUE@am__append_3929 = chain.marker -@COND_ia64_efi_TRUE@am__append_3930 = chain.module -@COND_ia64_efi_TRUE@am__append_3931 = chain.module$(EXEEXT) -@COND_ia64_efi_TRUE@am__append_3932 = -@COND_ia64_efi_TRUE@am__append_3933 = $(nodist_chain_module_SOURCES) -@COND_ia64_efi_TRUE@am__append_3934 = $(nodist_chain_module_SOURCES) \ -@COND_ia64_efi_TRUE@ chain.marker -@COND_ia64_efi_TRUE@am__append_3935 = chain.mod -@COND_ia64_efi_TRUE@am__append_3936 = chain.marker -@COND_arm_efi_TRUE@am__append_3937 = chain.module -@COND_arm_efi_TRUE@am__append_3938 = chain.module$(EXEEXT) -@COND_arm_efi_TRUE@am__append_3939 = -@COND_arm_efi_TRUE@am__append_3940 = $(nodist_chain_module_SOURCES) -@COND_arm_efi_TRUE@am__append_3941 = $(nodist_chain_module_SOURCES) \ -@COND_arm_efi_TRUE@ chain.marker -@COND_arm_efi_TRUE@am__append_3942 = chain.mod -@COND_arm_efi_TRUE@am__append_3943 = chain.marker -@COND_arm64_efi_TRUE@am__append_3944 = chain.module -@COND_arm64_efi_TRUE@am__append_3945 = chain.module$(EXEEXT) -@COND_arm64_efi_TRUE@am__append_3946 = -@COND_arm64_efi_TRUE@am__append_3947 = $(nodist_chain_module_SOURCES) -@COND_arm64_efi_TRUE@am__append_3948 = $(nodist_chain_module_SOURCES) \ -@COND_arm64_efi_TRUE@ chain.marker -@COND_arm64_efi_TRUE@am__append_3949 = chain.mod -@COND_arm64_efi_TRUE@am__append_3950 = chain.marker -@COND_riscv32_efi_TRUE@am__append_3951 = chain.module -@COND_riscv32_efi_TRUE@am__append_3952 = chain.module$(EXEEXT) -@COND_riscv32_efi_TRUE@am__append_3953 = -@COND_riscv32_efi_TRUE@am__append_3954 = $(nodist_chain_module_SOURCES) -@COND_riscv32_efi_TRUE@am__append_3955 = \ -@COND_riscv32_efi_TRUE@ $(nodist_chain_module_SOURCES) \ -@COND_riscv32_efi_TRUE@ chain.marker -@COND_riscv32_efi_TRUE@am__append_3956 = chain.mod -@COND_riscv32_efi_TRUE@am__append_3957 = chain.marker -@COND_riscv64_efi_TRUE@am__append_3958 = chain.module -@COND_riscv64_efi_TRUE@am__append_3959 = chain.module$(EXEEXT) -@COND_riscv64_efi_TRUE@am__append_3960 = -@COND_riscv64_efi_TRUE@am__append_3961 = $(nodist_chain_module_SOURCES) -@COND_riscv64_efi_TRUE@am__append_3962 = \ -@COND_riscv64_efi_TRUE@ $(nodist_chain_module_SOURCES) \ -@COND_riscv64_efi_TRUE@ chain.marker -@COND_riscv64_efi_TRUE@am__append_3963 = chain.mod -@COND_riscv64_efi_TRUE@am__append_3964 = chain.marker -@COND_i386_pc_TRUE@am__append_3965 = mmap.module -@COND_i386_pc_TRUE@am__append_3966 = mmap.module$(EXEEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_x86_64_efi_FALSE@mmap_module_DEPENDENCIES = -@COND_i386_pc_TRUE@am__append_3967 = -@COND_i386_pc_TRUE@am__append_3968 = $(nodist_mmap_module_SOURCES) -@COND_i386_pc_TRUE@am__append_3969 = $(nodist_mmap_module_SOURCES) \ -@COND_i386_pc_TRUE@ mmap.marker -@COND_i386_pc_TRUE@am__append_3970 = mmap.mod -@COND_i386_pc_TRUE@am__append_3971 = mmap.marker -@COND_i386_efi_TRUE@am__append_3972 = mmap.module -@COND_i386_efi_TRUE@am__append_3973 = mmap.module$(EXEEXT) -@COND_i386_efi_TRUE@am__append_3974 = -@COND_i386_efi_TRUE@am__append_3975 = $(nodist_mmap_module_SOURCES) -@COND_i386_efi_TRUE@am__append_3976 = $(nodist_mmap_module_SOURCES) \ -@COND_i386_efi_TRUE@ mmap.marker -@COND_i386_efi_TRUE@am__append_3977 = mmap.mod -@COND_i386_efi_TRUE@am__append_3978 = mmap.marker -@COND_i386_qemu_TRUE@am__append_3979 = mmap.module -@COND_i386_qemu_TRUE@am__append_3980 = mmap.module$(EXEEXT) -@COND_i386_qemu_TRUE@am__append_3981 = -@COND_i386_qemu_TRUE@am__append_3982 = $(nodist_mmap_module_SOURCES) -@COND_i386_qemu_TRUE@am__append_3983 = $(nodist_mmap_module_SOURCES) \ -@COND_i386_qemu_TRUE@ mmap.marker -@COND_i386_qemu_TRUE@am__append_3984 = mmap.mod -@COND_i386_qemu_TRUE@am__append_3985 = mmap.marker -@COND_i386_coreboot_TRUE@am__append_3986 = mmap.module -@COND_i386_coreboot_TRUE@am__append_3987 = mmap.module$(EXEEXT) -@COND_i386_coreboot_TRUE@am__append_3988 = -@COND_i386_coreboot_TRUE@am__append_3989 = $(nodist_mmap_module_SOURCES) -@COND_i386_coreboot_TRUE@am__append_3990 = \ -@COND_i386_coreboot_TRUE@ $(nodist_mmap_module_SOURCES) \ -@COND_i386_coreboot_TRUE@ mmap.marker -@COND_i386_coreboot_TRUE@am__append_3991 = mmap.mod -@COND_i386_coreboot_TRUE@am__append_3992 = mmap.marker -@COND_i386_multiboot_TRUE@am__append_3993 = mmap.module -@COND_i386_multiboot_TRUE@am__append_3994 = mmap.module$(EXEEXT) -@COND_i386_multiboot_TRUE@am__append_3995 = -@COND_i386_multiboot_TRUE@am__append_3996 = $(nodist_mmap_module_SOURCES) -@COND_i386_multiboot_TRUE@am__append_3997 = \ -@COND_i386_multiboot_TRUE@ $(nodist_mmap_module_SOURCES) \ -@COND_i386_multiboot_TRUE@ mmap.marker -@COND_i386_multiboot_TRUE@am__append_3998 = mmap.mod -@COND_i386_multiboot_TRUE@am__append_3999 = mmap.marker -@COND_i386_ieee1275_TRUE@am__append_4000 = mmap.module -@COND_i386_ieee1275_TRUE@am__append_4001 = mmap.module$(EXEEXT) -@COND_i386_ieee1275_TRUE@am__append_4002 = -@COND_i386_ieee1275_TRUE@am__append_4003 = $(nodist_mmap_module_SOURCES) -@COND_i386_ieee1275_TRUE@am__append_4004 = \ -@COND_i386_ieee1275_TRUE@ $(nodist_mmap_module_SOURCES) \ -@COND_i386_ieee1275_TRUE@ mmap.marker -@COND_i386_ieee1275_TRUE@am__append_4005 = mmap.mod -@COND_i386_ieee1275_TRUE@am__append_4006 = mmap.marker -@COND_x86_64_efi_TRUE@am__append_4007 = mmap.module -@COND_x86_64_efi_TRUE@am__append_4008 = mmap.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__append_4009 = -@COND_x86_64_efi_TRUE@am__append_4010 = $(nodist_mmap_module_SOURCES) -@COND_x86_64_efi_TRUE@am__append_4011 = $(nodist_mmap_module_SOURCES) \ -@COND_x86_64_efi_TRUE@ mmap.marker -@COND_x86_64_efi_TRUE@am__append_4012 = mmap.mod -@COND_x86_64_efi_TRUE@am__append_4013 = mmap.marker -@COND_i386_xen_pvh_TRUE@am__append_4014 = mmap.module -@COND_i386_xen_pvh_TRUE@am__append_4015 = mmap.module$(EXEEXT) -@COND_i386_xen_pvh_TRUE@am__append_4016 = -@COND_i386_xen_pvh_TRUE@am__append_4017 = $(nodist_mmap_module_SOURCES) -@COND_i386_xen_pvh_TRUE@am__append_4018 = \ -@COND_i386_xen_pvh_TRUE@ $(nodist_mmap_module_SOURCES) \ -@COND_i386_xen_pvh_TRUE@ mmap.marker -@COND_i386_xen_pvh_TRUE@am__append_4019 = mmap.mod -@COND_i386_xen_pvh_TRUE@am__append_4020 = mmap.marker -@COND_mips_loongson_TRUE@am__append_4021 = mmap.module -@COND_mips_loongson_TRUE@am__append_4022 = mmap.module$(EXEEXT) -@COND_mips_loongson_TRUE@am__append_4023 = -@COND_mips_loongson_TRUE@am__append_4024 = $(nodist_mmap_module_SOURCES) -@COND_mips_loongson_TRUE@am__append_4025 = \ -@COND_mips_loongson_TRUE@ $(nodist_mmap_module_SOURCES) \ -@COND_mips_loongson_TRUE@ mmap.marker -@COND_mips_loongson_TRUE@am__append_4026 = mmap.mod -@COND_mips_loongson_TRUE@am__append_4027 = mmap.marker -@COND_mips_arc_TRUE@am__append_4028 = mmap.module -@COND_mips_arc_TRUE@am__append_4029 = mmap.module$(EXEEXT) -@COND_mips_arc_TRUE@am__append_4030 = -@COND_mips_arc_TRUE@am__append_4031 = $(nodist_mmap_module_SOURCES) -@COND_mips_arc_TRUE@am__append_4032 = $(nodist_mmap_module_SOURCES) \ -@COND_mips_arc_TRUE@ mmap.marker -@COND_mips_arc_TRUE@am__append_4033 = mmap.mod -@COND_mips_arc_TRUE@am__append_4034 = mmap.marker -@COND_ia64_efi_TRUE@am__append_4035 = mmap.module -@COND_ia64_efi_TRUE@am__append_4036 = mmap.module$(EXEEXT) -@COND_ia64_efi_TRUE@am__append_4037 = -@COND_ia64_efi_TRUE@am__append_4038 = $(nodist_mmap_module_SOURCES) -@COND_ia64_efi_TRUE@am__append_4039 = $(nodist_mmap_module_SOURCES) \ -@COND_ia64_efi_TRUE@ mmap.marker -@COND_ia64_efi_TRUE@am__append_4040 = mmap.mod -@COND_ia64_efi_TRUE@am__append_4041 = mmap.marker -@COND_mips_qemu_mips_TRUE@am__append_4042 = mmap.module -@COND_mips_qemu_mips_TRUE@am__append_4043 = mmap.module$(EXEEXT) -@COND_mips_qemu_mips_TRUE@am__append_4044 = -@COND_mips_qemu_mips_TRUE@am__append_4045 = $(nodist_mmap_module_SOURCES) -@COND_mips_qemu_mips_TRUE@am__append_4046 = \ -@COND_mips_qemu_mips_TRUE@ $(nodist_mmap_module_SOURCES) \ -@COND_mips_qemu_mips_TRUE@ mmap.marker -@COND_mips_qemu_mips_TRUE@am__append_4047 = mmap.mod -@COND_mips_qemu_mips_TRUE@am__append_4048 = mmap.marker -@COND_arm_efi_TRUE@am__append_4049 = mmap.module -@COND_arm_efi_TRUE@am__append_4050 = mmap.module$(EXEEXT) -@COND_arm_efi_TRUE@am__append_4051 = -@COND_arm_efi_TRUE@am__append_4052 = $(nodist_mmap_module_SOURCES) -@COND_arm_efi_TRUE@am__append_4053 = $(nodist_mmap_module_SOURCES) \ -@COND_arm_efi_TRUE@ mmap.marker -@COND_arm_efi_TRUE@am__append_4054 = mmap.mod -@COND_arm_efi_TRUE@am__append_4055 = mmap.marker -@COND_arm64_efi_TRUE@am__append_4056 = mmap.module -@COND_arm64_efi_TRUE@am__append_4057 = mmap.module$(EXEEXT) -@COND_arm64_efi_TRUE@am__append_4058 = -@COND_arm64_efi_TRUE@am__append_4059 = $(nodist_mmap_module_SOURCES) -@COND_arm64_efi_TRUE@am__append_4060 = $(nodist_mmap_module_SOURCES) \ -@COND_arm64_efi_TRUE@ mmap.marker -@COND_arm64_efi_TRUE@am__append_4061 = mmap.mod -@COND_arm64_efi_TRUE@am__append_4062 = mmap.marker -@COND_riscv32_efi_TRUE@am__append_4063 = mmap.module -@COND_riscv32_efi_TRUE@am__append_4064 = mmap.module$(EXEEXT) -@COND_riscv32_efi_TRUE@am__append_4065 = -@COND_riscv32_efi_TRUE@am__append_4066 = $(nodist_mmap_module_SOURCES) -@COND_riscv32_efi_TRUE@am__append_4067 = \ -@COND_riscv32_efi_TRUE@ $(nodist_mmap_module_SOURCES) \ -@COND_riscv32_efi_TRUE@ mmap.marker -@COND_riscv32_efi_TRUE@am__append_4068 = mmap.mod -@COND_riscv32_efi_TRUE@am__append_4069 = mmap.marker -@COND_riscv64_efi_TRUE@am__append_4070 = mmap.module -@COND_riscv64_efi_TRUE@am__append_4071 = mmap.module$(EXEEXT) -@COND_riscv64_efi_TRUE@am__append_4072 = -@COND_riscv64_efi_TRUE@am__append_4073 = $(nodist_mmap_module_SOURCES) -@COND_riscv64_efi_TRUE@am__append_4074 = \ -@COND_riscv64_efi_TRUE@ $(nodist_mmap_module_SOURCES) \ -@COND_riscv64_efi_TRUE@ mmap.marker -@COND_riscv64_efi_TRUE@am__append_4075 = mmap.mod -@COND_riscv64_efi_TRUE@am__append_4076 = mmap.marker -@COND_i386_pc_TRUE@am__append_4077 = at_keyboard.module -@COND_i386_pc_TRUE@am__append_4078 = at_keyboard.module$(EXEEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_x86_64_efi_FALSE@at_keyboard_module_DEPENDENCIES = -@COND_i386_pc_TRUE@am__append_4079 = -@COND_i386_pc_TRUE@am__append_4080 = $(nodist_at_keyboard_module_SOURCES) -@COND_i386_pc_TRUE@am__append_4081 = \ -@COND_i386_pc_TRUE@ $(nodist_at_keyboard_module_SOURCES) \ -@COND_i386_pc_TRUE@ at_keyboard.marker -@COND_i386_pc_TRUE@am__append_4082 = at_keyboard.mod -@COND_i386_pc_TRUE@am__append_4083 = at_keyboard.marker -@COND_i386_efi_TRUE@am__append_4084 = at_keyboard.module -@COND_i386_efi_TRUE@am__append_4085 = at_keyboard.module$(EXEEXT) -@COND_i386_efi_TRUE@am__append_4086 = -@COND_i386_efi_TRUE@am__append_4087 = $(nodist_at_keyboard_module_SOURCES) -@COND_i386_efi_TRUE@am__append_4088 = \ -@COND_i386_efi_TRUE@ $(nodist_at_keyboard_module_SOURCES) \ -@COND_i386_efi_TRUE@ at_keyboard.marker -@COND_i386_efi_TRUE@am__append_4089 = at_keyboard.mod -@COND_i386_efi_TRUE@am__append_4090 = at_keyboard.marker -@COND_i386_qemu_TRUE@am__append_4091 = at_keyboard.module -@COND_i386_qemu_TRUE@am__append_4092 = at_keyboard.module$(EXEEXT) -@COND_i386_qemu_TRUE@am__append_4093 = -@COND_i386_qemu_TRUE@am__append_4094 = $(nodist_at_keyboard_module_SOURCES) -@COND_i386_qemu_TRUE@am__append_4095 = \ -@COND_i386_qemu_TRUE@ $(nodist_at_keyboard_module_SOURCES) \ -@COND_i386_qemu_TRUE@ at_keyboard.marker -@COND_i386_qemu_TRUE@am__append_4096 = at_keyboard.mod -@COND_i386_qemu_TRUE@am__append_4097 = at_keyboard.marker -@COND_i386_coreboot_TRUE@am__append_4098 = at_keyboard.module -@COND_i386_coreboot_TRUE@am__append_4099 = at_keyboard.module$(EXEEXT) -@COND_i386_coreboot_TRUE@am__append_4100 = -@COND_i386_coreboot_TRUE@am__append_4101 = $(nodist_at_keyboard_module_SOURCES) -@COND_i386_coreboot_TRUE@am__append_4102 = \ -@COND_i386_coreboot_TRUE@ $(nodist_at_keyboard_module_SOURCES) \ -@COND_i386_coreboot_TRUE@ at_keyboard.marker -@COND_i386_coreboot_TRUE@am__append_4103 = at_keyboard.mod -@COND_i386_coreboot_TRUE@am__append_4104 = at_keyboard.marker -@COND_i386_multiboot_TRUE@am__append_4105 = at_keyboard.module -@COND_i386_multiboot_TRUE@am__append_4106 = at_keyboard.module$(EXEEXT) -@COND_i386_multiboot_TRUE@am__append_4107 = -@COND_i386_multiboot_TRUE@am__append_4108 = $(nodist_at_keyboard_module_SOURCES) -@COND_i386_multiboot_TRUE@am__append_4109 = $(nodist_at_keyboard_module_SOURCES) \ -@COND_i386_multiboot_TRUE@ at_keyboard.marker -@COND_i386_multiboot_TRUE@am__append_4110 = at_keyboard.mod -@COND_i386_multiboot_TRUE@am__append_4111 = at_keyboard.marker -@COND_i386_ieee1275_TRUE@am__append_4112 = at_keyboard.module -@COND_i386_ieee1275_TRUE@am__append_4113 = at_keyboard.module$(EXEEXT) -@COND_i386_ieee1275_TRUE@am__append_4114 = -@COND_i386_ieee1275_TRUE@am__append_4115 = $(nodist_at_keyboard_module_SOURCES) -@COND_i386_ieee1275_TRUE@am__append_4116 = \ -@COND_i386_ieee1275_TRUE@ $(nodist_at_keyboard_module_SOURCES) \ -@COND_i386_ieee1275_TRUE@ at_keyboard.marker -@COND_i386_ieee1275_TRUE@am__append_4117 = at_keyboard.mod -@COND_i386_ieee1275_TRUE@am__append_4118 = at_keyboard.marker -@COND_x86_64_efi_TRUE@am__append_4119 = at_keyboard.module -@COND_x86_64_efi_TRUE@am__append_4120 = at_keyboard.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__append_4121 = -@COND_x86_64_efi_TRUE@am__append_4122 = $(nodist_at_keyboard_module_SOURCES) -@COND_x86_64_efi_TRUE@am__append_4123 = \ -@COND_x86_64_efi_TRUE@ $(nodist_at_keyboard_module_SOURCES) \ -@COND_x86_64_efi_TRUE@ at_keyboard.marker -@COND_x86_64_efi_TRUE@am__append_4124 = at_keyboard.mod -@COND_x86_64_efi_TRUE@am__append_4125 = at_keyboard.marker -@COND_emu_TRUE@am__append_4126 = gfxterm.module -@COND_emu_TRUE@am__append_4127 = gfxterm.module$(EXEEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_FALSE@@COND_x86_64_efi_FALSE@@COND_x86_64_xen_FALSE@gfxterm_module_DEPENDENCIES = -@COND_emu_TRUE@am__append_4128 = -@COND_emu_TRUE@am__append_4129 = $(nodist_gfxterm_module_SOURCES) -@COND_emu_TRUE@am__append_4130 = $(nodist_gfxterm_module_SOURCES) \ -@COND_emu_TRUE@ gfxterm.marker -@COND_emu_TRUE@am__append_4131 = gfxterm.mod -@COND_emu_TRUE@am__append_4132 = gfxterm.marker -@COND_i386_pc_TRUE@am__append_4133 = gfxterm.module -@COND_i386_pc_TRUE@am__append_4134 = gfxterm.module$(EXEEXT) -@COND_i386_pc_TRUE@am__append_4135 = -@COND_i386_pc_TRUE@am__append_4136 = $(nodist_gfxterm_module_SOURCES) -@COND_i386_pc_TRUE@am__append_4137 = $(nodist_gfxterm_module_SOURCES) \ -@COND_i386_pc_TRUE@ gfxterm.marker -@COND_i386_pc_TRUE@am__append_4138 = gfxterm.mod -@COND_i386_pc_TRUE@am__append_4139 = gfxterm.marker -@COND_i386_efi_TRUE@am__append_4140 = gfxterm.module -@COND_i386_efi_TRUE@am__append_4141 = gfxterm.module$(EXEEXT) -@COND_i386_efi_TRUE@am__append_4142 = -@COND_i386_efi_TRUE@am__append_4143 = $(nodist_gfxterm_module_SOURCES) -@COND_i386_efi_TRUE@am__append_4144 = \ -@COND_i386_efi_TRUE@ $(nodist_gfxterm_module_SOURCES) \ -@COND_i386_efi_TRUE@ gfxterm.marker -@COND_i386_efi_TRUE@am__append_4145 = gfxterm.mod -@COND_i386_efi_TRUE@am__append_4146 = gfxterm.marker -@COND_i386_qemu_TRUE@am__append_4147 = gfxterm.module -@COND_i386_qemu_TRUE@am__append_4148 = gfxterm.module$(EXEEXT) -@COND_i386_qemu_TRUE@am__append_4149 = -@COND_i386_qemu_TRUE@am__append_4150 = $(nodist_gfxterm_module_SOURCES) -@COND_i386_qemu_TRUE@am__append_4151 = \ -@COND_i386_qemu_TRUE@ $(nodist_gfxterm_module_SOURCES) \ -@COND_i386_qemu_TRUE@ gfxterm.marker -@COND_i386_qemu_TRUE@am__append_4152 = gfxterm.mod -@COND_i386_qemu_TRUE@am__append_4153 = gfxterm.marker -@COND_i386_multiboot_TRUE@am__append_4154 = gfxterm.module -@COND_i386_multiboot_TRUE@am__append_4155 = gfxterm.module$(EXEEXT) -@COND_i386_multiboot_TRUE@am__append_4156 = -@COND_i386_multiboot_TRUE@am__append_4157 = $(nodist_gfxterm_module_SOURCES) -@COND_i386_multiboot_TRUE@am__append_4158 = \ -@COND_i386_multiboot_TRUE@ $(nodist_gfxterm_module_SOURCES) \ -@COND_i386_multiboot_TRUE@ gfxterm.marker -@COND_i386_multiboot_TRUE@am__append_4159 = gfxterm.mod -@COND_i386_multiboot_TRUE@am__append_4160 = gfxterm.marker -@COND_i386_ieee1275_TRUE@am__append_4161 = gfxterm.module -@COND_i386_ieee1275_TRUE@am__append_4162 = gfxterm.module$(EXEEXT) -@COND_i386_ieee1275_TRUE@am__append_4163 = -@COND_i386_ieee1275_TRUE@am__append_4164 = $(nodist_gfxterm_module_SOURCES) -@COND_i386_ieee1275_TRUE@am__append_4165 = \ -@COND_i386_ieee1275_TRUE@ $(nodist_gfxterm_module_SOURCES) \ -@COND_i386_ieee1275_TRUE@ gfxterm.marker -@COND_i386_ieee1275_TRUE@am__append_4166 = gfxterm.mod -@COND_i386_ieee1275_TRUE@am__append_4167 = gfxterm.marker -@COND_x86_64_efi_TRUE@am__append_4168 = gfxterm.module -@COND_x86_64_efi_TRUE@am__append_4169 = gfxterm.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__append_4170 = -@COND_x86_64_efi_TRUE@am__append_4171 = $(nodist_gfxterm_module_SOURCES) -@COND_x86_64_efi_TRUE@am__append_4172 = \ -@COND_x86_64_efi_TRUE@ $(nodist_gfxterm_module_SOURCES) \ -@COND_x86_64_efi_TRUE@ gfxterm.marker -@COND_x86_64_efi_TRUE@am__append_4173 = gfxterm.mod -@COND_x86_64_efi_TRUE@am__append_4174 = gfxterm.marker -@COND_i386_xen_TRUE@am__append_4175 = gfxterm.module -@COND_i386_xen_TRUE@am__append_4176 = gfxterm.module$(EXEEXT) -@COND_i386_xen_TRUE@am__append_4177 = -@COND_i386_xen_TRUE@am__append_4178 = $(nodist_gfxterm_module_SOURCES) -@COND_i386_xen_TRUE@am__append_4179 = \ -@COND_i386_xen_TRUE@ $(nodist_gfxterm_module_SOURCES) \ -@COND_i386_xen_TRUE@ gfxterm.marker -@COND_i386_xen_TRUE@am__append_4180 = gfxterm.mod -@COND_i386_xen_TRUE@am__append_4181 = gfxterm.marker -@COND_x86_64_xen_TRUE@am__append_4182 = gfxterm.module -@COND_x86_64_xen_TRUE@am__append_4183 = gfxterm.module$(EXEEXT) -@COND_x86_64_xen_TRUE@am__append_4184 = -@COND_x86_64_xen_TRUE@am__append_4185 = $(nodist_gfxterm_module_SOURCES) -@COND_x86_64_xen_TRUE@am__append_4186 = \ -@COND_x86_64_xen_TRUE@ $(nodist_gfxterm_module_SOURCES) \ -@COND_x86_64_xen_TRUE@ gfxterm.marker -@COND_x86_64_xen_TRUE@am__append_4187 = gfxterm.mod -@COND_x86_64_xen_TRUE@am__append_4188 = gfxterm.marker -@COND_i386_xen_pvh_TRUE@am__append_4189 = gfxterm.module -@COND_i386_xen_pvh_TRUE@am__append_4190 = gfxterm.module$(EXEEXT) -@COND_i386_xen_pvh_TRUE@am__append_4191 = -@COND_i386_xen_pvh_TRUE@am__append_4192 = $(nodist_gfxterm_module_SOURCES) -@COND_i386_xen_pvh_TRUE@am__append_4193 = \ -@COND_i386_xen_pvh_TRUE@ $(nodist_gfxterm_module_SOURCES) \ -@COND_i386_xen_pvh_TRUE@ gfxterm.marker -@COND_i386_xen_pvh_TRUE@am__append_4194 = gfxterm.mod -@COND_i386_xen_pvh_TRUE@am__append_4195 = gfxterm.marker -@COND_sparc64_ieee1275_TRUE@am__append_4196 = gfxterm.module -@COND_sparc64_ieee1275_TRUE@am__append_4197 = gfxterm.module$(EXEEXT) -@COND_sparc64_ieee1275_TRUE@am__append_4198 = -@COND_sparc64_ieee1275_TRUE@am__append_4199 = $(nodist_gfxterm_module_SOURCES) -@COND_sparc64_ieee1275_TRUE@am__append_4200 = \ -@COND_sparc64_ieee1275_TRUE@ $(nodist_gfxterm_module_SOURCES) \ -@COND_sparc64_ieee1275_TRUE@ gfxterm.marker -@COND_sparc64_ieee1275_TRUE@am__append_4201 = gfxterm.mod -@COND_sparc64_ieee1275_TRUE@am__append_4202 = gfxterm.marker -@COND_powerpc_ieee1275_TRUE@am__append_4203 = gfxterm.module -@COND_powerpc_ieee1275_TRUE@am__append_4204 = gfxterm.module$(EXEEXT) -@COND_powerpc_ieee1275_TRUE@am__append_4205 = -@COND_powerpc_ieee1275_TRUE@am__append_4206 = $(nodist_gfxterm_module_SOURCES) -@COND_powerpc_ieee1275_TRUE@am__append_4207 = \ -@COND_powerpc_ieee1275_TRUE@ $(nodist_gfxterm_module_SOURCES) \ -@COND_powerpc_ieee1275_TRUE@ gfxterm.marker -@COND_powerpc_ieee1275_TRUE@am__append_4208 = gfxterm.mod -@COND_powerpc_ieee1275_TRUE@am__append_4209 = gfxterm.marker -@COND_mips_arc_TRUE@am__append_4210 = gfxterm.module -@COND_mips_arc_TRUE@am__append_4211 = gfxterm.module$(EXEEXT) -@COND_mips_arc_TRUE@am__append_4212 = -@COND_mips_arc_TRUE@am__append_4213 = $(nodist_gfxterm_module_SOURCES) -@COND_mips_arc_TRUE@am__append_4214 = \ -@COND_mips_arc_TRUE@ $(nodist_gfxterm_module_SOURCES) \ -@COND_mips_arc_TRUE@ gfxterm.marker -@COND_mips_arc_TRUE@am__append_4215 = gfxterm.mod -@COND_mips_arc_TRUE@am__append_4216 = gfxterm.marker -@COND_ia64_efi_TRUE@am__append_4217 = gfxterm.module -@COND_ia64_efi_TRUE@am__append_4218 = gfxterm.module$(EXEEXT) -@COND_ia64_efi_TRUE@am__append_4219 = -@COND_ia64_efi_TRUE@am__append_4220 = $(nodist_gfxterm_module_SOURCES) -@COND_ia64_efi_TRUE@am__append_4221 = \ -@COND_ia64_efi_TRUE@ $(nodist_gfxterm_module_SOURCES) \ -@COND_ia64_efi_TRUE@ gfxterm.marker -@COND_ia64_efi_TRUE@am__append_4222 = gfxterm.mod -@COND_ia64_efi_TRUE@am__append_4223 = gfxterm.marker -@COND_mips_qemu_mips_TRUE@am__append_4224 = gfxterm.module -@COND_mips_qemu_mips_TRUE@am__append_4225 = gfxterm.module$(EXEEXT) -@COND_mips_qemu_mips_TRUE@am__append_4226 = -@COND_mips_qemu_mips_TRUE@am__append_4227 = $(nodist_gfxterm_module_SOURCES) -@COND_mips_qemu_mips_TRUE@am__append_4228 = \ -@COND_mips_qemu_mips_TRUE@ $(nodist_gfxterm_module_SOURCES) \ -@COND_mips_qemu_mips_TRUE@ gfxterm.marker -@COND_mips_qemu_mips_TRUE@am__append_4229 = gfxterm.mod -@COND_mips_qemu_mips_TRUE@am__append_4230 = gfxterm.marker -@COND_arm_uboot_TRUE@am__append_4231 = gfxterm.module -@COND_arm_uboot_TRUE@am__append_4232 = gfxterm.module$(EXEEXT) -@COND_arm_uboot_TRUE@am__append_4233 = -@COND_arm_uboot_TRUE@am__append_4234 = $(nodist_gfxterm_module_SOURCES) -@COND_arm_uboot_TRUE@am__append_4235 = \ -@COND_arm_uboot_TRUE@ $(nodist_gfxterm_module_SOURCES) \ -@COND_arm_uboot_TRUE@ gfxterm.marker -@COND_arm_uboot_TRUE@am__append_4236 = gfxterm.mod -@COND_arm_uboot_TRUE@am__append_4237 = gfxterm.marker -@COND_arm_efi_TRUE@am__append_4238 = gfxterm.module -@COND_arm_efi_TRUE@am__append_4239 = gfxterm.module$(EXEEXT) -@COND_arm_efi_TRUE@am__append_4240 = -@COND_arm_efi_TRUE@am__append_4241 = $(nodist_gfxterm_module_SOURCES) -@COND_arm_efi_TRUE@am__append_4242 = $(nodist_gfxterm_module_SOURCES) \ -@COND_arm_efi_TRUE@ gfxterm.marker -@COND_arm_efi_TRUE@am__append_4243 = gfxterm.mod -@COND_arm_efi_TRUE@am__append_4244 = gfxterm.marker -@COND_arm64_efi_TRUE@am__append_4245 = gfxterm.module -@COND_arm64_efi_TRUE@am__append_4246 = gfxterm.module$(EXEEXT) -@COND_arm64_efi_TRUE@am__append_4247 = -@COND_arm64_efi_TRUE@am__append_4248 = $(nodist_gfxterm_module_SOURCES) -@COND_arm64_efi_TRUE@am__append_4249 = \ -@COND_arm64_efi_TRUE@ $(nodist_gfxterm_module_SOURCES) \ -@COND_arm64_efi_TRUE@ gfxterm.marker -@COND_arm64_efi_TRUE@am__append_4250 = gfxterm.mod -@COND_arm64_efi_TRUE@am__append_4251 = gfxterm.marker -@COND_riscv32_efi_TRUE@am__append_4252 = gfxterm.module -@COND_riscv32_efi_TRUE@am__append_4253 = gfxterm.module$(EXEEXT) -@COND_riscv32_efi_TRUE@am__append_4254 = -@COND_riscv32_efi_TRUE@am__append_4255 = $(nodist_gfxterm_module_SOURCES) -@COND_riscv32_efi_TRUE@am__append_4256 = \ -@COND_riscv32_efi_TRUE@ $(nodist_gfxterm_module_SOURCES) \ -@COND_riscv32_efi_TRUE@ gfxterm.marker -@COND_riscv32_efi_TRUE@am__append_4257 = gfxterm.mod -@COND_riscv32_efi_TRUE@am__append_4258 = gfxterm.marker -@COND_riscv64_efi_TRUE@am__append_4259 = gfxterm.module -@COND_riscv64_efi_TRUE@am__append_4260 = gfxterm.module$(EXEEXT) -@COND_riscv64_efi_TRUE@am__append_4261 = -@COND_riscv64_efi_TRUE@am__append_4262 = $(nodist_gfxterm_module_SOURCES) -@COND_riscv64_efi_TRUE@am__append_4263 = \ -@COND_riscv64_efi_TRUE@ $(nodist_gfxterm_module_SOURCES) \ -@COND_riscv64_efi_TRUE@ gfxterm.marker -@COND_riscv64_efi_TRUE@am__append_4264 = gfxterm.mod -@COND_riscv64_efi_TRUE@am__append_4265 = gfxterm.marker -@COND_i386_pc_TRUE@am__append_4266 = serial.module -@COND_i386_pc_TRUE@am__append_4267 = serial.module$(EXEEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_FALSE@@COND_x86_64_efi_FALSE@serial_module_DEPENDENCIES = -@COND_i386_pc_TRUE@am__append_4268 = -@COND_i386_pc_TRUE@am__append_4269 = $(nodist_serial_module_SOURCES) -@COND_i386_pc_TRUE@am__append_4270 = $(nodist_serial_module_SOURCES) \ -@COND_i386_pc_TRUE@ serial.marker -@COND_i386_pc_TRUE@am__append_4271 = serial.mod -@COND_i386_pc_TRUE@am__append_4272 = serial.marker -@COND_i386_efi_TRUE@am__append_4273 = serial.module -@COND_i386_efi_TRUE@am__append_4274 = serial.module$(EXEEXT) -@COND_i386_efi_TRUE@am__append_4275 = -@COND_i386_efi_TRUE@am__append_4276 = $(nodist_serial_module_SOURCES) -@COND_i386_efi_TRUE@am__append_4277 = $(nodist_serial_module_SOURCES) \ -@COND_i386_efi_TRUE@ serial.marker -@COND_i386_efi_TRUE@am__append_4278 = serial.mod -@COND_i386_efi_TRUE@am__append_4279 = serial.marker -@COND_i386_qemu_TRUE@am__append_4280 = serial.module -@COND_i386_qemu_TRUE@am__append_4281 = serial.module$(EXEEXT) -@COND_i386_qemu_TRUE@am__append_4282 = -@COND_i386_qemu_TRUE@am__append_4283 = $(nodist_serial_module_SOURCES) -@COND_i386_qemu_TRUE@am__append_4284 = \ -@COND_i386_qemu_TRUE@ $(nodist_serial_module_SOURCES) \ -@COND_i386_qemu_TRUE@ serial.marker -@COND_i386_qemu_TRUE@am__append_4285 = serial.mod -@COND_i386_qemu_TRUE@am__append_4286 = serial.marker -@COND_i386_coreboot_TRUE@am__append_4287 = serial.module -@COND_i386_coreboot_TRUE@am__append_4288 = serial.module$(EXEEXT) -@COND_i386_coreboot_TRUE@am__append_4289 = -@COND_i386_coreboot_TRUE@am__append_4290 = $(nodist_serial_module_SOURCES) -@COND_i386_coreboot_TRUE@am__append_4291 = \ -@COND_i386_coreboot_TRUE@ $(nodist_serial_module_SOURCES) \ -@COND_i386_coreboot_TRUE@ serial.marker -@COND_i386_coreboot_TRUE@am__append_4292 = serial.mod -@COND_i386_coreboot_TRUE@am__append_4293 = serial.marker -@COND_i386_multiboot_TRUE@am__append_4294 = serial.module -@COND_i386_multiboot_TRUE@am__append_4295 = serial.module$(EXEEXT) -@COND_i386_multiboot_TRUE@am__append_4296 = -@COND_i386_multiboot_TRUE@am__append_4297 = $(nodist_serial_module_SOURCES) -@COND_i386_multiboot_TRUE@am__append_4298 = \ -@COND_i386_multiboot_TRUE@ $(nodist_serial_module_SOURCES) \ -@COND_i386_multiboot_TRUE@ serial.marker -@COND_i386_multiboot_TRUE@am__append_4299 = serial.mod -@COND_i386_multiboot_TRUE@am__append_4300 = serial.marker -@COND_i386_ieee1275_TRUE@am__append_4301 = serial.module -@COND_i386_ieee1275_TRUE@am__append_4302 = serial.module$(EXEEXT) -@COND_i386_ieee1275_TRUE@am__append_4303 = -@COND_i386_ieee1275_TRUE@am__append_4304 = $(nodist_serial_module_SOURCES) -@COND_i386_ieee1275_TRUE@am__append_4305 = \ -@COND_i386_ieee1275_TRUE@ $(nodist_serial_module_SOURCES) \ -@COND_i386_ieee1275_TRUE@ serial.marker -@COND_i386_ieee1275_TRUE@am__append_4306 = serial.mod -@COND_i386_ieee1275_TRUE@am__append_4307 = serial.marker -@COND_x86_64_efi_TRUE@am__append_4308 = serial.module -@COND_x86_64_efi_TRUE@am__append_4309 = serial.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__append_4310 = -@COND_x86_64_efi_TRUE@am__append_4311 = $(nodist_serial_module_SOURCES) -@COND_x86_64_efi_TRUE@am__append_4312 = \ -@COND_x86_64_efi_TRUE@ $(nodist_serial_module_SOURCES) \ -@COND_x86_64_efi_TRUE@ serial.marker -@COND_x86_64_efi_TRUE@am__append_4313 = serial.mod -@COND_x86_64_efi_TRUE@am__append_4314 = serial.marker -@COND_sparc64_ieee1275_TRUE@am__append_4315 = serial.module -@COND_sparc64_ieee1275_TRUE@am__append_4316 = serial.module$(EXEEXT) -@COND_sparc64_ieee1275_TRUE@am__append_4317 = -@COND_sparc64_ieee1275_TRUE@am__append_4318 = $(nodist_serial_module_SOURCES) -@COND_sparc64_ieee1275_TRUE@am__append_4319 = \ -@COND_sparc64_ieee1275_TRUE@ $(nodist_serial_module_SOURCES) \ -@COND_sparc64_ieee1275_TRUE@ serial.marker -@COND_sparc64_ieee1275_TRUE@am__append_4320 = serial.mod -@COND_sparc64_ieee1275_TRUE@am__append_4321 = serial.marker -@COND_powerpc_ieee1275_TRUE@am__append_4322 = serial.module -@COND_powerpc_ieee1275_TRUE@am__append_4323 = serial.module$(EXEEXT) -@COND_powerpc_ieee1275_TRUE@am__append_4324 = -@COND_powerpc_ieee1275_TRUE@am__append_4325 = $(nodist_serial_module_SOURCES) -@COND_powerpc_ieee1275_TRUE@am__append_4326 = \ -@COND_powerpc_ieee1275_TRUE@ $(nodist_serial_module_SOURCES) \ -@COND_powerpc_ieee1275_TRUE@ serial.marker -@COND_powerpc_ieee1275_TRUE@am__append_4327 = serial.mod -@COND_powerpc_ieee1275_TRUE@am__append_4328 = serial.marker -@COND_mips_arc_TRUE@am__append_4329 = serial.module -@COND_mips_arc_TRUE@am__append_4330 = serial.module$(EXEEXT) -@COND_mips_arc_TRUE@am__append_4331 = -@COND_mips_arc_TRUE@am__append_4332 = $(nodist_serial_module_SOURCES) -@COND_mips_arc_TRUE@am__append_4333 = $(nodist_serial_module_SOURCES) \ -@COND_mips_arc_TRUE@ serial.marker -@COND_mips_arc_TRUE@am__append_4334 = serial.mod -@COND_mips_arc_TRUE@am__append_4335 = serial.marker -@COND_ia64_efi_TRUE@am__append_4336 = serial.module -@COND_ia64_efi_TRUE@am__append_4337 = serial.module$(EXEEXT) -@COND_ia64_efi_TRUE@am__append_4338 = -@COND_ia64_efi_TRUE@am__append_4339 = $(nodist_serial_module_SOURCES) -@COND_ia64_efi_TRUE@am__append_4340 = $(nodist_serial_module_SOURCES) \ -@COND_ia64_efi_TRUE@ serial.marker -@COND_ia64_efi_TRUE@am__append_4341 = serial.mod -@COND_ia64_efi_TRUE@am__append_4342 = serial.marker -@COND_arm_efi_TRUE@am__append_4343 = serial.module -@COND_arm_efi_TRUE@am__append_4344 = serial.module$(EXEEXT) -@COND_arm_efi_TRUE@am__append_4345 = -@COND_arm_efi_TRUE@am__append_4346 = $(nodist_serial_module_SOURCES) -@COND_arm_efi_TRUE@am__append_4347 = $(nodist_serial_module_SOURCES) \ -@COND_arm_efi_TRUE@ serial.marker -@COND_arm_efi_TRUE@am__append_4348 = serial.mod -@COND_arm_efi_TRUE@am__append_4349 = serial.marker -@COND_arm64_efi_TRUE@am__append_4350 = serial.module -@COND_arm64_efi_TRUE@am__append_4351 = serial.module$(EXEEXT) -@COND_arm64_efi_TRUE@am__append_4352 = -@COND_arm64_efi_TRUE@am__append_4353 = $(nodist_serial_module_SOURCES) -@COND_arm64_efi_TRUE@am__append_4354 = \ -@COND_arm64_efi_TRUE@ $(nodist_serial_module_SOURCES) \ -@COND_arm64_efi_TRUE@ serial.marker -@COND_arm64_efi_TRUE@am__append_4355 = serial.mod -@COND_arm64_efi_TRUE@am__append_4356 = serial.marker -@COND_arm_coreboot_TRUE@am__append_4357 = serial.module -@COND_arm_coreboot_TRUE@am__append_4358 = serial.module$(EXEEXT) -@COND_arm_coreboot_TRUE@am__append_4359 = -@COND_arm_coreboot_TRUE@am__append_4360 = $(nodist_serial_module_SOURCES) -@COND_arm_coreboot_TRUE@am__append_4361 = \ -@COND_arm_coreboot_TRUE@ $(nodist_serial_module_SOURCES) \ -@COND_arm_coreboot_TRUE@ serial.marker -@COND_arm_coreboot_TRUE@am__append_4362 = serial.mod -@COND_arm_coreboot_TRUE@am__append_4363 = serial.marker -@COND_riscv32_efi_TRUE@am__append_4364 = serial.module -@COND_riscv32_efi_TRUE@am__append_4365 = serial.module$(EXEEXT) -@COND_riscv32_efi_TRUE@am__append_4366 = -@COND_riscv32_efi_TRUE@am__append_4367 = $(nodist_serial_module_SOURCES) -@COND_riscv32_efi_TRUE@am__append_4368 = \ -@COND_riscv32_efi_TRUE@ $(nodist_serial_module_SOURCES) \ -@COND_riscv32_efi_TRUE@ serial.marker -@COND_riscv32_efi_TRUE@am__append_4369 = serial.mod -@COND_riscv32_efi_TRUE@am__append_4370 = serial.marker -@COND_riscv64_efi_TRUE@am__append_4371 = serial.module -@COND_riscv64_efi_TRUE@am__append_4372 = serial.module$(EXEEXT) -@COND_riscv64_efi_TRUE@am__append_4373 = -@COND_riscv64_efi_TRUE@am__append_4374 = $(nodist_serial_module_SOURCES) -@COND_riscv64_efi_TRUE@am__append_4375 = \ -@COND_riscv64_efi_TRUE@ $(nodist_serial_module_SOURCES) \ -@COND_riscv64_efi_TRUE@ serial.marker -@COND_riscv64_efi_TRUE@am__append_4376 = serial.mod -@COND_riscv64_efi_TRUE@am__append_4377 = serial.marker -@COND_i386_pc_TRUE@am__append_4378 = sendkey.module terminfo.module -@COND_i386_pc_TRUE@am__append_4379 = sendkey.module$(EXEEXT) \ -@COND_i386_pc_TRUE@ terminfo.module$(EXEEXT) -@COND_i386_pc_FALSE@sendkey_module_DEPENDENCIES = -@COND_i386_pc_TRUE@am__append_4380 = -@COND_i386_pc_TRUE@am__append_4381 = $(nodist_sendkey_module_SOURCES) \ -@COND_i386_pc_TRUE@ $(nodist_terminfo_module_SOURCES) -@COND_i386_pc_TRUE@am__append_4382 = $(nodist_sendkey_module_SOURCES) \ -@COND_i386_pc_TRUE@ sendkey.marker \ -@COND_i386_pc_TRUE@ $(nodist_terminfo_module_SOURCES) \ -@COND_i386_pc_TRUE@ terminfo.marker -@COND_i386_pc_TRUE@am__append_4383 = sendkey.mod terminfo.mod -@COND_i386_pc_TRUE@am__append_4384 = sendkey.marker terminfo.marker -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_ia64_efi_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_x86_64_efi_FALSE@terminfo_module_DEPENDENCIES = -@COND_i386_efi_TRUE@am__append_4385 = terminfo.module -@COND_i386_efi_TRUE@am__append_4386 = terminfo.module$(EXEEXT) -@COND_i386_efi_TRUE@am__append_4387 = -@COND_i386_efi_TRUE@am__append_4388 = $(nodist_terminfo_module_SOURCES) -@COND_i386_efi_TRUE@am__append_4389 = \ -@COND_i386_efi_TRUE@ $(nodist_terminfo_module_SOURCES) \ -@COND_i386_efi_TRUE@ terminfo.marker -@COND_i386_efi_TRUE@am__append_4390 = terminfo.mod -@COND_i386_efi_TRUE@am__append_4391 = terminfo.marker -@COND_i386_qemu_TRUE@am__append_4392 = terminfo.module -@COND_i386_qemu_TRUE@am__append_4393 = terminfo.module$(EXEEXT) -@COND_i386_qemu_TRUE@am__append_4394 = -@COND_i386_qemu_TRUE@am__append_4395 = $(nodist_terminfo_module_SOURCES) -@COND_i386_qemu_TRUE@am__append_4396 = \ -@COND_i386_qemu_TRUE@ $(nodist_terminfo_module_SOURCES) \ -@COND_i386_qemu_TRUE@ terminfo.marker -@COND_i386_qemu_TRUE@am__append_4397 = terminfo.mod -@COND_i386_qemu_TRUE@am__append_4398 = terminfo.marker -@COND_i386_coreboot_TRUE@am__append_4399 = terminfo.module -@COND_i386_coreboot_TRUE@am__append_4400 = terminfo.module$(EXEEXT) -@COND_i386_coreboot_TRUE@am__append_4401 = -@COND_i386_coreboot_TRUE@am__append_4402 = $(nodist_terminfo_module_SOURCES) -@COND_i386_coreboot_TRUE@am__append_4403 = \ -@COND_i386_coreboot_TRUE@ $(nodist_terminfo_module_SOURCES) \ -@COND_i386_coreboot_TRUE@ terminfo.marker -@COND_i386_coreboot_TRUE@am__append_4404 = terminfo.mod -@COND_i386_coreboot_TRUE@am__append_4405 = terminfo.marker -@COND_i386_multiboot_TRUE@am__append_4406 = terminfo.module -@COND_i386_multiboot_TRUE@am__append_4407 = terminfo.module$(EXEEXT) -@COND_i386_multiboot_TRUE@am__append_4408 = -@COND_i386_multiboot_TRUE@am__append_4409 = $(nodist_terminfo_module_SOURCES) -@COND_i386_multiboot_TRUE@am__append_4410 = \ -@COND_i386_multiboot_TRUE@ $(nodist_terminfo_module_SOURCES) \ -@COND_i386_multiboot_TRUE@ terminfo.marker -@COND_i386_multiboot_TRUE@am__append_4411 = terminfo.mod -@COND_i386_multiboot_TRUE@am__append_4412 = terminfo.marker -@COND_x86_64_efi_TRUE@am__append_4413 = terminfo.module -@COND_x86_64_efi_TRUE@am__append_4414 = terminfo.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__append_4415 = -@COND_x86_64_efi_TRUE@am__append_4416 = $(nodist_terminfo_module_SOURCES) -@COND_x86_64_efi_TRUE@am__append_4417 = \ -@COND_x86_64_efi_TRUE@ $(nodist_terminfo_module_SOURCES) \ -@COND_x86_64_efi_TRUE@ terminfo.marker -@COND_x86_64_efi_TRUE@am__append_4418 = terminfo.mod -@COND_x86_64_efi_TRUE@am__append_4419 = terminfo.marker -@COND_ia64_efi_TRUE@am__append_4420 = terminfo.module -@COND_ia64_efi_TRUE@am__append_4421 = terminfo.module$(EXEEXT) -@COND_ia64_efi_TRUE@am__append_4422 = -@COND_ia64_efi_TRUE@am__append_4423 = $(nodist_terminfo_module_SOURCES) -@COND_ia64_efi_TRUE@am__append_4424 = \ -@COND_ia64_efi_TRUE@ $(nodist_terminfo_module_SOURCES) \ -@COND_ia64_efi_TRUE@ terminfo.marker -@COND_ia64_efi_TRUE@am__append_4425 = terminfo.mod -@COND_ia64_efi_TRUE@am__append_4426 = terminfo.marker -@COND_arm_efi_TRUE@am__append_4427 = terminfo.module -@COND_arm_efi_TRUE@am__append_4428 = terminfo.module$(EXEEXT) -@COND_arm_efi_TRUE@am__append_4429 = -@COND_arm_efi_TRUE@am__append_4430 = $(nodist_terminfo_module_SOURCES) -@COND_arm_efi_TRUE@am__append_4431 = \ -@COND_arm_efi_TRUE@ $(nodist_terminfo_module_SOURCES) \ -@COND_arm_efi_TRUE@ terminfo.marker -@COND_arm_efi_TRUE@am__append_4432 = terminfo.mod -@COND_arm_efi_TRUE@am__append_4433 = terminfo.marker -@COND_arm64_efi_TRUE@am__append_4434 = terminfo.module -@COND_arm64_efi_TRUE@am__append_4435 = terminfo.module$(EXEEXT) -@COND_arm64_efi_TRUE@am__append_4436 = -@COND_arm64_efi_TRUE@am__append_4437 = $(nodist_terminfo_module_SOURCES) -@COND_arm64_efi_TRUE@am__append_4438 = \ -@COND_arm64_efi_TRUE@ $(nodist_terminfo_module_SOURCES) \ -@COND_arm64_efi_TRUE@ terminfo.marker -@COND_arm64_efi_TRUE@am__append_4439 = terminfo.mod -@COND_arm64_efi_TRUE@am__append_4440 = terminfo.marker -@COND_arm_coreboot_TRUE@am__append_4441 = terminfo.module -@COND_arm_coreboot_TRUE@am__append_4442 = terminfo.module$(EXEEXT) -@COND_arm_coreboot_TRUE@am__append_4443 = -@COND_arm_coreboot_TRUE@am__append_4444 = $(nodist_terminfo_module_SOURCES) -@COND_arm_coreboot_TRUE@am__append_4445 = \ -@COND_arm_coreboot_TRUE@ $(nodist_terminfo_module_SOURCES) \ -@COND_arm_coreboot_TRUE@ terminfo.marker -@COND_arm_coreboot_TRUE@am__append_4446 = terminfo.mod -@COND_arm_coreboot_TRUE@am__append_4447 = terminfo.marker -@COND_riscv32_efi_TRUE@am__append_4448 = terminfo.module -@COND_riscv32_efi_TRUE@am__append_4449 = terminfo.module$(EXEEXT) -@COND_riscv32_efi_TRUE@am__append_4450 = -@COND_riscv32_efi_TRUE@am__append_4451 = $(nodist_terminfo_module_SOURCES) -@COND_riscv32_efi_TRUE@am__append_4452 = \ -@COND_riscv32_efi_TRUE@ $(nodist_terminfo_module_SOURCES) \ -@COND_riscv32_efi_TRUE@ terminfo.marker -@COND_riscv32_efi_TRUE@am__append_4453 = terminfo.mod -@COND_riscv32_efi_TRUE@am__append_4454 = terminfo.marker -@COND_riscv64_efi_TRUE@am__append_4455 = terminfo.module -@COND_riscv64_efi_TRUE@am__append_4456 = terminfo.module$(EXEEXT) -@COND_riscv64_efi_TRUE@am__append_4457 = -@COND_riscv64_efi_TRUE@am__append_4458 = $(nodist_terminfo_module_SOURCES) -@COND_riscv64_efi_TRUE@am__append_4459 = \ -@COND_riscv64_efi_TRUE@ $(nodist_terminfo_module_SOURCES) \ -@COND_riscv64_efi_TRUE@ terminfo.marker -@COND_riscv64_efi_TRUE@am__append_4460 = terminfo.mod -@COND_riscv64_efi_TRUE@am__append_4461 = terminfo.marker -@COND_i386_pc_TRUE@am__append_4462 = usb_keyboard.module -@COND_i386_pc_TRUE@am__append_4463 = usb_keyboard.module$(EXEEXT) -@COND_arm_coreboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_mips_loongson_FALSE@@COND_x86_64_efi_FALSE@usb_keyboard_module_DEPENDENCIES = -@COND_i386_pc_TRUE@am__append_4464 = -@COND_i386_pc_TRUE@am__append_4465 = $(nodist_usb_keyboard_module_SOURCES) -@COND_i386_pc_TRUE@am__append_4466 = \ -@COND_i386_pc_TRUE@ $(nodist_usb_keyboard_module_SOURCES) \ -@COND_i386_pc_TRUE@ usb_keyboard.marker -@COND_i386_pc_TRUE@am__append_4467 = usb_keyboard.mod -@COND_i386_pc_TRUE@am__append_4468 = usb_keyboard.marker -@COND_i386_efi_TRUE@am__append_4469 = usb_keyboard.module -@COND_i386_efi_TRUE@am__append_4470 = usb_keyboard.module$(EXEEXT) -@COND_i386_efi_TRUE@am__append_4471 = -@COND_i386_efi_TRUE@am__append_4472 = $(nodist_usb_keyboard_module_SOURCES) -@COND_i386_efi_TRUE@am__append_4473 = \ -@COND_i386_efi_TRUE@ $(nodist_usb_keyboard_module_SOURCES) \ -@COND_i386_efi_TRUE@ usb_keyboard.marker -@COND_i386_efi_TRUE@am__append_4474 = usb_keyboard.mod -@COND_i386_efi_TRUE@am__append_4475 = usb_keyboard.marker -@COND_i386_qemu_TRUE@am__append_4476 = usb_keyboard.module -@COND_i386_qemu_TRUE@am__append_4477 = usb_keyboard.module$(EXEEXT) -@COND_i386_qemu_TRUE@am__append_4478 = -@COND_i386_qemu_TRUE@am__append_4479 = $(nodist_usb_keyboard_module_SOURCES) -@COND_i386_qemu_TRUE@am__append_4480 = \ -@COND_i386_qemu_TRUE@ $(nodist_usb_keyboard_module_SOURCES) \ -@COND_i386_qemu_TRUE@ usb_keyboard.marker -@COND_i386_qemu_TRUE@am__append_4481 = usb_keyboard.mod -@COND_i386_qemu_TRUE@am__append_4482 = usb_keyboard.marker -@COND_i386_coreboot_TRUE@am__append_4483 = usb_keyboard.module -@COND_i386_coreboot_TRUE@am__append_4484 = usb_keyboard.module$(EXEEXT) -@COND_i386_coreboot_TRUE@am__append_4485 = -@COND_i386_coreboot_TRUE@am__append_4486 = $(nodist_usb_keyboard_module_SOURCES) -@COND_i386_coreboot_TRUE@am__append_4487 = $(nodist_usb_keyboard_module_SOURCES) \ -@COND_i386_coreboot_TRUE@ usb_keyboard.marker -@COND_i386_coreboot_TRUE@am__append_4488 = usb_keyboard.mod -@COND_i386_coreboot_TRUE@am__append_4489 = usb_keyboard.marker -@COND_i386_multiboot_TRUE@am__append_4490 = usb_keyboard.module -@COND_i386_multiboot_TRUE@am__append_4491 = usb_keyboard.module$(EXEEXT) -@COND_i386_multiboot_TRUE@am__append_4492 = -@COND_i386_multiboot_TRUE@am__append_4493 = $(nodist_usb_keyboard_module_SOURCES) -@COND_i386_multiboot_TRUE@am__append_4494 = $(nodist_usb_keyboard_module_SOURCES) \ -@COND_i386_multiboot_TRUE@ usb_keyboard.marker -@COND_i386_multiboot_TRUE@am__append_4495 = usb_keyboard.mod -@COND_i386_multiboot_TRUE@am__append_4496 = usb_keyboard.marker -@COND_i386_ieee1275_TRUE@am__append_4497 = usb_keyboard.module -@COND_i386_ieee1275_TRUE@am__append_4498 = usb_keyboard.module$(EXEEXT) -@COND_i386_ieee1275_TRUE@am__append_4499 = -@COND_i386_ieee1275_TRUE@am__append_4500 = $(nodist_usb_keyboard_module_SOURCES) -@COND_i386_ieee1275_TRUE@am__append_4501 = $(nodist_usb_keyboard_module_SOURCES) \ -@COND_i386_ieee1275_TRUE@ usb_keyboard.marker -@COND_i386_ieee1275_TRUE@am__append_4502 = usb_keyboard.mod -@COND_i386_ieee1275_TRUE@am__append_4503 = usb_keyboard.marker -@COND_x86_64_efi_TRUE@am__append_4504 = usb_keyboard.module -@COND_x86_64_efi_TRUE@am__append_4505 = usb_keyboard.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__append_4506 = -@COND_x86_64_efi_TRUE@am__append_4507 = $(nodist_usb_keyboard_module_SOURCES) -@COND_x86_64_efi_TRUE@am__append_4508 = \ -@COND_x86_64_efi_TRUE@ $(nodist_usb_keyboard_module_SOURCES) \ -@COND_x86_64_efi_TRUE@ usb_keyboard.marker -@COND_x86_64_efi_TRUE@am__append_4509 = usb_keyboard.mod -@COND_x86_64_efi_TRUE@am__append_4510 = usb_keyboard.marker -@COND_mips_loongson_TRUE@am__append_4511 = usb_keyboard.module -@COND_mips_loongson_TRUE@am__append_4512 = usb_keyboard.module$(EXEEXT) -@COND_mips_loongson_TRUE@am__append_4513 = -@COND_mips_loongson_TRUE@am__append_4514 = $(nodist_usb_keyboard_module_SOURCES) -@COND_mips_loongson_TRUE@am__append_4515 = $(nodist_usb_keyboard_module_SOURCES) \ -@COND_mips_loongson_TRUE@ usb_keyboard.marker -@COND_mips_loongson_TRUE@am__append_4516 = usb_keyboard.mod -@COND_mips_loongson_TRUE@am__append_4517 = usb_keyboard.marker -@COND_arm_coreboot_TRUE@am__append_4518 = usb_keyboard.module -@COND_arm_coreboot_TRUE@am__append_4519 = usb_keyboard.module$(EXEEXT) -@COND_arm_coreboot_TRUE@am__append_4520 = -@COND_arm_coreboot_TRUE@am__append_4521 = $(nodist_usb_keyboard_module_SOURCES) -@COND_arm_coreboot_TRUE@am__append_4522 = \ -@COND_arm_coreboot_TRUE@ $(nodist_usb_keyboard_module_SOURCES) \ -@COND_arm_coreboot_TRUE@ usb_keyboard.marker -@COND_arm_coreboot_TRUE@am__append_4523 = usb_keyboard.mod -@COND_arm_coreboot_TRUE@am__append_4524 = usb_keyboard.marker -@COND_i386_pc_TRUE@am__append_4525 = vga.module vga_text.module \ -@COND_i386_pc_TRUE@ mda_text.module -@COND_i386_pc_TRUE@am__append_4526 = vga.module$(EXEEXT) \ -@COND_i386_pc_TRUE@ vga_text.module$(EXEEXT) \ -@COND_i386_pc_TRUE@ mda_text.module$(EXEEXT) -@COND_i386_pc_FALSE@vga_module_DEPENDENCIES = -@COND_i386_pc_TRUE@am__append_4527 = -@COND_i386_pc_TRUE@am__append_4528 = $(nodist_vga_module_SOURCES) \ -@COND_i386_pc_TRUE@ $(nodist_vga_text_module_SOURCES) \ -@COND_i386_pc_TRUE@ $(nodist_mda_text_module_SOURCES) -@COND_i386_pc_TRUE@am__append_4529 = $(nodist_vga_module_SOURCES) \ -@COND_i386_pc_TRUE@ vga.marker \ -@COND_i386_pc_TRUE@ $(nodist_vga_text_module_SOURCES) \ -@COND_i386_pc_TRUE@ vga_text.marker \ -@COND_i386_pc_TRUE@ $(nodist_mda_text_module_SOURCES) \ -@COND_i386_pc_TRUE@ mda_text.marker -@COND_i386_pc_TRUE@am__append_4530 = vga.mod vga_text.mod mda_text.mod -@COND_i386_pc_TRUE@am__append_4531 = vga.marker vga_text.marker \ -@COND_i386_pc_TRUE@ mda_text.marker -@COND_i386_pc_FALSE@vga_text_module_DEPENDENCIES = -@COND_i386_coreboot_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@mda_text_module_DEPENDENCIES = -@COND_i386_qemu_TRUE@am__append_4532 = mda_text.module -@COND_i386_qemu_TRUE@am__append_4533 = mda_text.module$(EXEEXT) -@COND_i386_qemu_TRUE@am__append_4534 = -@COND_i386_qemu_TRUE@am__append_4535 = $(nodist_mda_text_module_SOURCES) -@COND_i386_qemu_TRUE@am__append_4536 = \ -@COND_i386_qemu_TRUE@ $(nodist_mda_text_module_SOURCES) \ -@COND_i386_qemu_TRUE@ mda_text.marker -@COND_i386_qemu_TRUE@am__append_4537 = mda_text.mod -@COND_i386_qemu_TRUE@am__append_4538 = mda_text.marker -@COND_i386_coreboot_TRUE@am__append_4539 = mda_text.module -@COND_i386_coreboot_TRUE@am__append_4540 = mda_text.module$(EXEEXT) -@COND_i386_coreboot_TRUE@am__append_4541 = -@COND_i386_coreboot_TRUE@am__append_4542 = $(nodist_mda_text_module_SOURCES) -@COND_i386_coreboot_TRUE@am__append_4543 = \ -@COND_i386_coreboot_TRUE@ $(nodist_mda_text_module_SOURCES) \ -@COND_i386_coreboot_TRUE@ mda_text.marker -@COND_i386_coreboot_TRUE@am__append_4544 = mda_text.mod -@COND_i386_coreboot_TRUE@am__append_4545 = mda_text.marker -@COND_i386_multiboot_TRUE@am__append_4546 = mda_text.module -@COND_i386_multiboot_TRUE@am__append_4547 = mda_text.module$(EXEEXT) -@COND_i386_multiboot_TRUE@am__append_4548 = -@COND_i386_multiboot_TRUE@am__append_4549 = $(nodist_mda_text_module_SOURCES) -@COND_i386_multiboot_TRUE@am__append_4550 = \ -@COND_i386_multiboot_TRUE@ $(nodist_mda_text_module_SOURCES) \ -@COND_i386_multiboot_TRUE@ mda_text.marker -@COND_i386_multiboot_TRUE@am__append_4551 = mda_text.mod -@COND_i386_multiboot_TRUE@am__append_4552 = mda_text.marker -@COND_i386_pc_TRUE@am__append_4553 = video_cirrus.module -@COND_i386_pc_TRUE@am__append_4554 = video_cirrus.module$(EXEEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_x86_64_efi_FALSE@video_cirrus_module_DEPENDENCIES = -@COND_i386_pc_TRUE@am__append_4555 = -@COND_i386_pc_TRUE@am__append_4556 = $(nodist_video_cirrus_module_SOURCES) -@COND_i386_pc_TRUE@am__append_4557 = \ -@COND_i386_pc_TRUE@ $(nodist_video_cirrus_module_SOURCES) \ -@COND_i386_pc_TRUE@ video_cirrus.marker -@COND_i386_pc_TRUE@am__append_4558 = video_cirrus.mod -@COND_i386_pc_TRUE@am__append_4559 = video_cirrus.marker -@COND_i386_efi_TRUE@am__append_4560 = video_cirrus.module -@COND_i386_efi_TRUE@am__append_4561 = video_cirrus.module$(EXEEXT) -@COND_i386_efi_TRUE@am__append_4562 = -@COND_i386_efi_TRUE@am__append_4563 = $(nodist_video_cirrus_module_SOURCES) -@COND_i386_efi_TRUE@am__append_4564 = \ -@COND_i386_efi_TRUE@ $(nodist_video_cirrus_module_SOURCES) \ -@COND_i386_efi_TRUE@ video_cirrus.marker -@COND_i386_efi_TRUE@am__append_4565 = video_cirrus.mod -@COND_i386_efi_TRUE@am__append_4566 = video_cirrus.marker -@COND_i386_qemu_TRUE@am__append_4567 = video_cirrus.module -@COND_i386_qemu_TRUE@am__append_4568 = video_cirrus.module$(EXEEXT) -@COND_i386_qemu_TRUE@am__append_4569 = -@COND_i386_qemu_TRUE@am__append_4570 = $(nodist_video_cirrus_module_SOURCES) -@COND_i386_qemu_TRUE@am__append_4571 = \ -@COND_i386_qemu_TRUE@ $(nodist_video_cirrus_module_SOURCES) \ -@COND_i386_qemu_TRUE@ video_cirrus.marker -@COND_i386_qemu_TRUE@am__append_4572 = video_cirrus.mod -@COND_i386_qemu_TRUE@am__append_4573 = video_cirrus.marker -@COND_i386_coreboot_TRUE@am__append_4574 = video_cirrus.module -@COND_i386_coreboot_TRUE@am__append_4575 = video_cirrus.module$(EXEEXT) -@COND_i386_coreboot_TRUE@am__append_4576 = -@COND_i386_coreboot_TRUE@am__append_4577 = $(nodist_video_cirrus_module_SOURCES) -@COND_i386_coreboot_TRUE@am__append_4578 = $(nodist_video_cirrus_module_SOURCES) \ -@COND_i386_coreboot_TRUE@ video_cirrus.marker -@COND_i386_coreboot_TRUE@am__append_4579 = video_cirrus.mod -@COND_i386_coreboot_TRUE@am__append_4580 = video_cirrus.marker -@COND_i386_multiboot_TRUE@am__append_4581 = video_cirrus.module -@COND_i386_multiboot_TRUE@am__append_4582 = video_cirrus.module$(EXEEXT) -@COND_i386_multiboot_TRUE@am__append_4583 = -@COND_i386_multiboot_TRUE@am__append_4584 = $(nodist_video_cirrus_module_SOURCES) -@COND_i386_multiboot_TRUE@am__append_4585 = $(nodist_video_cirrus_module_SOURCES) \ -@COND_i386_multiboot_TRUE@ video_cirrus.marker -@COND_i386_multiboot_TRUE@am__append_4586 = video_cirrus.mod -@COND_i386_multiboot_TRUE@am__append_4587 = video_cirrus.marker -@COND_i386_ieee1275_TRUE@am__append_4588 = video_cirrus.module -@COND_i386_ieee1275_TRUE@am__append_4589 = video_cirrus.module$(EXEEXT) -@COND_i386_ieee1275_TRUE@am__append_4590 = -@COND_i386_ieee1275_TRUE@am__append_4591 = $(nodist_video_cirrus_module_SOURCES) -@COND_i386_ieee1275_TRUE@am__append_4592 = $(nodist_video_cirrus_module_SOURCES) \ -@COND_i386_ieee1275_TRUE@ video_cirrus.marker -@COND_i386_ieee1275_TRUE@am__append_4593 = video_cirrus.mod -@COND_i386_ieee1275_TRUE@am__append_4594 = video_cirrus.marker -@COND_x86_64_efi_TRUE@am__append_4595 = video_cirrus.module -@COND_x86_64_efi_TRUE@am__append_4596 = video_cirrus.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__append_4597 = -@COND_x86_64_efi_TRUE@am__append_4598 = $(nodist_video_cirrus_module_SOURCES) -@COND_x86_64_efi_TRUE@am__append_4599 = \ -@COND_x86_64_efi_TRUE@ $(nodist_video_cirrus_module_SOURCES) \ -@COND_x86_64_efi_TRUE@ video_cirrus.marker -@COND_x86_64_efi_TRUE@am__append_4600 = video_cirrus.mod -@COND_x86_64_efi_TRUE@am__append_4601 = video_cirrus.marker -@COND_i386_pc_TRUE@am__append_4602 = video_bochs.module -@COND_i386_pc_TRUE@am__append_4603 = video_bochs.module$(EXEEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_x86_64_efi_FALSE@video_bochs_module_DEPENDENCIES = -@COND_i386_pc_TRUE@am__append_4604 = -@COND_i386_pc_TRUE@am__append_4605 = $(nodist_video_bochs_module_SOURCES) -@COND_i386_pc_TRUE@am__append_4606 = \ -@COND_i386_pc_TRUE@ $(nodist_video_bochs_module_SOURCES) \ -@COND_i386_pc_TRUE@ video_bochs.marker -@COND_i386_pc_TRUE@am__append_4607 = video_bochs.mod -@COND_i386_pc_TRUE@am__append_4608 = video_bochs.marker -@COND_i386_efi_TRUE@am__append_4609 = video_bochs.module -@COND_i386_efi_TRUE@am__append_4610 = video_bochs.module$(EXEEXT) -@COND_i386_efi_TRUE@am__append_4611 = -@COND_i386_efi_TRUE@am__append_4612 = $(nodist_video_bochs_module_SOURCES) -@COND_i386_efi_TRUE@am__append_4613 = \ -@COND_i386_efi_TRUE@ $(nodist_video_bochs_module_SOURCES) \ -@COND_i386_efi_TRUE@ video_bochs.marker -@COND_i386_efi_TRUE@am__append_4614 = video_bochs.mod -@COND_i386_efi_TRUE@am__append_4615 = video_bochs.marker -@COND_i386_qemu_TRUE@am__append_4616 = video_bochs.module -@COND_i386_qemu_TRUE@am__append_4617 = video_bochs.module$(EXEEXT) -@COND_i386_qemu_TRUE@am__append_4618 = -@COND_i386_qemu_TRUE@am__append_4619 = $(nodist_video_bochs_module_SOURCES) -@COND_i386_qemu_TRUE@am__append_4620 = \ -@COND_i386_qemu_TRUE@ $(nodist_video_bochs_module_SOURCES) \ -@COND_i386_qemu_TRUE@ video_bochs.marker -@COND_i386_qemu_TRUE@am__append_4621 = video_bochs.mod -@COND_i386_qemu_TRUE@am__append_4622 = video_bochs.marker -@COND_i386_coreboot_TRUE@am__append_4623 = video_bochs.module -@COND_i386_coreboot_TRUE@am__append_4624 = video_bochs.module$(EXEEXT) -@COND_i386_coreboot_TRUE@am__append_4625 = -@COND_i386_coreboot_TRUE@am__append_4626 = $(nodist_video_bochs_module_SOURCES) -@COND_i386_coreboot_TRUE@am__append_4627 = \ -@COND_i386_coreboot_TRUE@ $(nodist_video_bochs_module_SOURCES) \ -@COND_i386_coreboot_TRUE@ video_bochs.marker -@COND_i386_coreboot_TRUE@am__append_4628 = video_bochs.mod -@COND_i386_coreboot_TRUE@am__append_4629 = video_bochs.marker -@COND_i386_multiboot_TRUE@am__append_4630 = video_bochs.module -@COND_i386_multiboot_TRUE@am__append_4631 = video_bochs.module$(EXEEXT) -@COND_i386_multiboot_TRUE@am__append_4632 = -@COND_i386_multiboot_TRUE@am__append_4633 = $(nodist_video_bochs_module_SOURCES) -@COND_i386_multiboot_TRUE@am__append_4634 = $(nodist_video_bochs_module_SOURCES) \ -@COND_i386_multiboot_TRUE@ video_bochs.marker -@COND_i386_multiboot_TRUE@am__append_4635 = video_bochs.mod -@COND_i386_multiboot_TRUE@am__append_4636 = video_bochs.marker -@COND_i386_ieee1275_TRUE@am__append_4637 = video_bochs.module -@COND_i386_ieee1275_TRUE@am__append_4638 = video_bochs.module$(EXEEXT) -@COND_i386_ieee1275_TRUE@am__append_4639 = -@COND_i386_ieee1275_TRUE@am__append_4640 = $(nodist_video_bochs_module_SOURCES) -@COND_i386_ieee1275_TRUE@am__append_4641 = \ -@COND_i386_ieee1275_TRUE@ $(nodist_video_bochs_module_SOURCES) \ -@COND_i386_ieee1275_TRUE@ video_bochs.marker -@COND_i386_ieee1275_TRUE@am__append_4642 = video_bochs.mod -@COND_i386_ieee1275_TRUE@am__append_4643 = video_bochs.marker -@COND_x86_64_efi_TRUE@am__append_4644 = video_bochs.module -@COND_x86_64_efi_TRUE@am__append_4645 = video_bochs.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__append_4646 = -@COND_x86_64_efi_TRUE@am__append_4647 = $(nodist_video_bochs_module_SOURCES) -@COND_x86_64_efi_TRUE@am__append_4648 = \ -@COND_x86_64_efi_TRUE@ $(nodist_video_bochs_module_SOURCES) \ -@COND_x86_64_efi_TRUE@ video_bochs.marker -@COND_x86_64_efi_TRUE@am__append_4649 = video_bochs.mod -@COND_x86_64_efi_TRUE@am__append_4650 = video_bochs.marker -@COND_emu_TRUE@am__append_4651 = legacy_password_test.module -@COND_emu_TRUE@am__append_4652 = legacy_password_test.module$(EXEEXT) -@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_pc_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_x86_64_efi_FALSE@@COND_x86_64_xen_FALSE@legacy_password_test_module_DEPENDENCIES = -@COND_emu_TRUE@am__append_4653 = -@COND_emu_TRUE@am__append_4654 = $(nodist_legacy_password_test_module_SOURCES) -@COND_emu_TRUE@am__append_4655 = \ -@COND_emu_TRUE@ $(nodist_legacy_password_test_module_SOURCES) \ -@COND_emu_TRUE@ legacy_password_test.marker -@COND_emu_TRUE@am__append_4656 = legacy_password_test.mod -@COND_emu_TRUE@am__append_4657 = legacy_password_test.marker -@COND_i386_pc_TRUE@am__append_4658 = legacy_password_test.module -@COND_i386_pc_TRUE@am__append_4659 = legacy_password_test.module$(EXEEXT) -@COND_i386_pc_TRUE@am__append_4660 = -@COND_i386_pc_TRUE@am__append_4661 = $(nodist_legacy_password_test_module_SOURCES) -@COND_i386_pc_TRUE@am__append_4662 = $(nodist_legacy_password_test_module_SOURCES) \ -@COND_i386_pc_TRUE@ legacy_password_test.marker -@COND_i386_pc_TRUE@am__append_4663 = legacy_password_test.mod -@COND_i386_pc_TRUE@am__append_4664 = legacy_password_test.marker -@COND_i386_efi_TRUE@am__append_4665 = legacy_password_test.module -@COND_i386_efi_TRUE@am__append_4666 = legacy_password_test.module$(EXEEXT) -@COND_i386_efi_TRUE@am__append_4667 = -@COND_i386_efi_TRUE@am__append_4668 = $(nodist_legacy_password_test_module_SOURCES) -@COND_i386_efi_TRUE@am__append_4669 = $(nodist_legacy_password_test_module_SOURCES) \ -@COND_i386_efi_TRUE@ legacy_password_test.marker -@COND_i386_efi_TRUE@am__append_4670 = legacy_password_test.mod -@COND_i386_efi_TRUE@am__append_4671 = legacy_password_test.marker -@COND_x86_64_efi_TRUE@am__append_4672 = legacy_password_test.module -@COND_x86_64_efi_TRUE@am__append_4673 = legacy_password_test.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__append_4674 = -@COND_x86_64_efi_TRUE@am__append_4675 = $(nodist_legacy_password_test_module_SOURCES) -@COND_x86_64_efi_TRUE@am__append_4676 = $(nodist_legacy_password_test_module_SOURCES) \ -@COND_x86_64_efi_TRUE@ legacy_password_test.marker -@COND_x86_64_efi_TRUE@am__append_4677 = legacy_password_test.mod -@COND_x86_64_efi_TRUE@am__append_4678 = legacy_password_test.marker -@COND_i386_xen_TRUE@am__append_4679 = legacy_password_test.module -@COND_i386_xen_TRUE@am__append_4680 = legacy_password_test.module$(EXEEXT) -@COND_i386_xen_TRUE@am__append_4681 = -@COND_i386_xen_TRUE@am__append_4682 = $(nodist_legacy_password_test_module_SOURCES) -@COND_i386_xen_TRUE@am__append_4683 = $(nodist_legacy_password_test_module_SOURCES) \ -@COND_i386_xen_TRUE@ legacy_password_test.marker -@COND_i386_xen_TRUE@am__append_4684 = legacy_password_test.mod -@COND_i386_xen_TRUE@am__append_4685 = legacy_password_test.marker -@COND_x86_64_xen_TRUE@am__append_4686 = legacy_password_test.module -@COND_x86_64_xen_TRUE@am__append_4687 = legacy_password_test.module$(EXEEXT) -@COND_x86_64_xen_TRUE@am__append_4688 = -@COND_x86_64_xen_TRUE@am__append_4689 = $(nodist_legacy_password_test_module_SOURCES) -@COND_x86_64_xen_TRUE@am__append_4690 = $(nodist_legacy_password_test_module_SOURCES) \ -@COND_x86_64_xen_TRUE@ legacy_password_test.marker -@COND_x86_64_xen_TRUE@am__append_4691 = legacy_password_test.mod -@COND_x86_64_xen_TRUE@am__append_4692 = legacy_password_test.marker -@COND_i386_xen_pvh_TRUE@am__append_4693 = legacy_password_test.module -@COND_i386_xen_pvh_TRUE@am__append_4694 = legacy_password_test.module$(EXEEXT) -@COND_i386_xen_pvh_TRUE@am__append_4695 = -@COND_i386_xen_pvh_TRUE@am__append_4696 = $(nodist_legacy_password_test_module_SOURCES) -@COND_i386_xen_pvh_TRUE@am__append_4697 = $(nodist_legacy_password_test_module_SOURCES) \ -@COND_i386_xen_pvh_TRUE@ legacy_password_test.marker -@COND_i386_xen_pvh_TRUE@am__append_4698 = legacy_password_test.mod -@COND_i386_xen_pvh_TRUE@am__append_4699 = legacy_password_test.marker -@COND_emu_TRUE@am__append_4700 = div.module -@COND_emu_TRUE@am__append_4701 = div.module$(EXEEXT) -@COND_arm64_efi_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_FALSE@@COND_x86_64_efi_FALSE@@COND_x86_64_xen_FALSE@div_module_DEPENDENCIES = -@COND_emu_TRUE@am__append_4702 = -@COND_emu_TRUE@am__append_4703 = $(nodist_div_module_SOURCES) -@COND_emu_TRUE@am__append_4704 = $(nodist_div_module_SOURCES) \ -@COND_emu_TRUE@ div.marker -@COND_emu_TRUE@am__append_4705 = div.mod -@COND_emu_TRUE@am__append_4706 = div.marker -@COND_i386_pc_TRUE@am__append_4707 = div.module -@COND_i386_pc_TRUE@am__append_4708 = div.module$(EXEEXT) -@COND_i386_pc_TRUE@am__append_4709 = -@COND_i386_pc_TRUE@am__append_4710 = $(nodist_div_module_SOURCES) -@COND_i386_pc_TRUE@am__append_4711 = $(nodist_div_module_SOURCES) \ -@COND_i386_pc_TRUE@ div.marker -@COND_i386_pc_TRUE@am__append_4712 = div.mod -@COND_i386_pc_TRUE@am__append_4713 = div.marker -@COND_i386_efi_TRUE@am__append_4714 = div.module -@COND_i386_efi_TRUE@am__append_4715 = div.module$(EXEEXT) -@COND_i386_efi_TRUE@am__append_4716 = -@COND_i386_efi_TRUE@am__append_4717 = $(nodist_div_module_SOURCES) -@COND_i386_efi_TRUE@am__append_4718 = $(nodist_div_module_SOURCES) \ -@COND_i386_efi_TRUE@ div.marker -@COND_i386_efi_TRUE@am__append_4719 = div.mod -@COND_i386_efi_TRUE@am__append_4720 = div.marker -@COND_i386_qemu_TRUE@am__append_4721 = div.module -@COND_i386_qemu_TRUE@am__append_4722 = div.module$(EXEEXT) -@COND_i386_qemu_TRUE@am__append_4723 = -@COND_i386_qemu_TRUE@am__append_4724 = $(nodist_div_module_SOURCES) -@COND_i386_qemu_TRUE@am__append_4725 = $(nodist_div_module_SOURCES) \ -@COND_i386_qemu_TRUE@ div.marker -@COND_i386_qemu_TRUE@am__append_4726 = div.mod -@COND_i386_qemu_TRUE@am__append_4727 = div.marker -@COND_i386_coreboot_TRUE@am__append_4728 = div.module -@COND_i386_coreboot_TRUE@am__append_4729 = div.module$(EXEEXT) -@COND_i386_coreboot_TRUE@am__append_4730 = -@COND_i386_coreboot_TRUE@am__append_4731 = $(nodist_div_module_SOURCES) -@COND_i386_coreboot_TRUE@am__append_4732 = \ -@COND_i386_coreboot_TRUE@ $(nodist_div_module_SOURCES) \ -@COND_i386_coreboot_TRUE@ div.marker -@COND_i386_coreboot_TRUE@am__append_4733 = div.mod -@COND_i386_coreboot_TRUE@am__append_4734 = div.marker -@COND_i386_multiboot_TRUE@am__append_4735 = div.module -@COND_i386_multiboot_TRUE@am__append_4736 = div.module$(EXEEXT) -@COND_i386_multiboot_TRUE@am__append_4737 = -@COND_i386_multiboot_TRUE@am__append_4738 = $(nodist_div_module_SOURCES) -@COND_i386_multiboot_TRUE@am__append_4739 = \ -@COND_i386_multiboot_TRUE@ $(nodist_div_module_SOURCES) \ -@COND_i386_multiboot_TRUE@ div.marker -@COND_i386_multiboot_TRUE@am__append_4740 = div.mod -@COND_i386_multiboot_TRUE@am__append_4741 = div.marker -@COND_i386_ieee1275_TRUE@am__append_4742 = div.module -@COND_i386_ieee1275_TRUE@am__append_4743 = div.module$(EXEEXT) -@COND_i386_ieee1275_TRUE@am__append_4744 = -@COND_i386_ieee1275_TRUE@am__append_4745 = $(nodist_div_module_SOURCES) -@COND_i386_ieee1275_TRUE@am__append_4746 = \ -@COND_i386_ieee1275_TRUE@ $(nodist_div_module_SOURCES) \ -@COND_i386_ieee1275_TRUE@ div.marker -@COND_i386_ieee1275_TRUE@am__append_4747 = div.mod -@COND_i386_ieee1275_TRUE@am__append_4748 = div.marker -@COND_x86_64_efi_TRUE@am__append_4749 = div.module -@COND_x86_64_efi_TRUE@am__append_4750 = div.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__append_4751 = -@COND_x86_64_efi_TRUE@am__append_4752 = $(nodist_div_module_SOURCES) -@COND_x86_64_efi_TRUE@am__append_4753 = $(nodist_div_module_SOURCES) \ -@COND_x86_64_efi_TRUE@ div.marker -@COND_x86_64_efi_TRUE@am__append_4754 = div.mod -@COND_x86_64_efi_TRUE@am__append_4755 = div.marker -@COND_i386_xen_TRUE@am__append_4756 = div.module -@COND_i386_xen_TRUE@am__append_4757 = div.module$(EXEEXT) -@COND_i386_xen_TRUE@am__append_4758 = -@COND_i386_xen_TRUE@am__append_4759 = $(nodist_div_module_SOURCES) -@COND_i386_xen_TRUE@am__append_4760 = $(nodist_div_module_SOURCES) \ -@COND_i386_xen_TRUE@ div.marker -@COND_i386_xen_TRUE@am__append_4761 = div.mod -@COND_i386_xen_TRUE@am__append_4762 = div.marker -@COND_x86_64_xen_TRUE@am__append_4763 = div.module -@COND_x86_64_xen_TRUE@am__append_4764 = div.module$(EXEEXT) -@COND_x86_64_xen_TRUE@am__append_4765 = -@COND_x86_64_xen_TRUE@am__append_4766 = $(nodist_div_module_SOURCES) -@COND_x86_64_xen_TRUE@am__append_4767 = $(nodist_div_module_SOURCES) \ -@COND_x86_64_xen_TRUE@ div.marker -@COND_x86_64_xen_TRUE@am__append_4768 = div.mod -@COND_x86_64_xen_TRUE@am__append_4769 = div.marker -@COND_i386_xen_pvh_TRUE@am__append_4770 = div.module -@COND_i386_xen_pvh_TRUE@am__append_4771 = div.module$(EXEEXT) -@COND_i386_xen_pvh_TRUE@am__append_4772 = -@COND_i386_xen_pvh_TRUE@am__append_4773 = $(nodist_div_module_SOURCES) -@COND_i386_xen_pvh_TRUE@am__append_4774 = \ -@COND_i386_xen_pvh_TRUE@ $(nodist_div_module_SOURCES) \ -@COND_i386_xen_pvh_TRUE@ div.marker -@COND_i386_xen_pvh_TRUE@am__append_4775 = div.mod -@COND_i386_xen_pvh_TRUE@am__append_4776 = div.marker -@COND_mips_loongson_TRUE@am__append_4777 = div.module -@COND_mips_loongson_TRUE@am__append_4778 = div.module$(EXEEXT) -@COND_mips_loongson_TRUE@am__append_4779 = -@COND_mips_loongson_TRUE@am__append_4780 = $(nodist_div_module_SOURCES) -@COND_mips_loongson_TRUE@am__append_4781 = \ -@COND_mips_loongson_TRUE@ $(nodist_div_module_SOURCES) \ -@COND_mips_loongson_TRUE@ div.marker -@COND_mips_loongson_TRUE@am__append_4782 = div.mod -@COND_mips_loongson_TRUE@am__append_4783 = div.marker -@COND_sparc64_ieee1275_TRUE@am__append_4784 = div.module -@COND_sparc64_ieee1275_TRUE@am__append_4785 = div.module$(EXEEXT) -@COND_sparc64_ieee1275_TRUE@am__append_4786 = -@COND_sparc64_ieee1275_TRUE@am__append_4787 = $(nodist_div_module_SOURCES) -@COND_sparc64_ieee1275_TRUE@am__append_4788 = \ -@COND_sparc64_ieee1275_TRUE@ $(nodist_div_module_SOURCES) \ -@COND_sparc64_ieee1275_TRUE@ div.marker -@COND_sparc64_ieee1275_TRUE@am__append_4789 = div.mod -@COND_sparc64_ieee1275_TRUE@am__append_4790 = div.marker -@COND_powerpc_ieee1275_TRUE@am__append_4791 = div.module -@COND_powerpc_ieee1275_TRUE@am__append_4792 = div.module$(EXEEXT) -@COND_powerpc_ieee1275_TRUE@am__append_4793 = -@COND_powerpc_ieee1275_TRUE@am__append_4794 = $(nodist_div_module_SOURCES) -@COND_powerpc_ieee1275_TRUE@am__append_4795 = \ -@COND_powerpc_ieee1275_TRUE@ $(nodist_div_module_SOURCES) \ -@COND_powerpc_ieee1275_TRUE@ div.marker -@COND_powerpc_ieee1275_TRUE@am__append_4796 = div.mod -@COND_powerpc_ieee1275_TRUE@am__append_4797 = div.marker -@COND_mips_arc_TRUE@am__append_4798 = div.module -@COND_mips_arc_TRUE@am__append_4799 = div.module$(EXEEXT) -@COND_mips_arc_TRUE@am__append_4800 = -@COND_mips_arc_TRUE@am__append_4801 = $(nodist_div_module_SOURCES) -@COND_mips_arc_TRUE@am__append_4802 = $(nodist_div_module_SOURCES) \ -@COND_mips_arc_TRUE@ div.marker -@COND_mips_arc_TRUE@am__append_4803 = div.mod -@COND_mips_arc_TRUE@am__append_4804 = div.marker -@COND_mips_qemu_mips_TRUE@am__append_4805 = div.module -@COND_mips_qemu_mips_TRUE@am__append_4806 = div.module$(EXEEXT) -@COND_mips_qemu_mips_TRUE@am__append_4807 = -@COND_mips_qemu_mips_TRUE@am__append_4808 = $(nodist_div_module_SOURCES) -@COND_mips_qemu_mips_TRUE@am__append_4809 = \ -@COND_mips_qemu_mips_TRUE@ $(nodist_div_module_SOURCES) \ -@COND_mips_qemu_mips_TRUE@ div.marker -@COND_mips_qemu_mips_TRUE@am__append_4810 = div.mod -@COND_mips_qemu_mips_TRUE@am__append_4811 = div.marker -@COND_arm64_efi_TRUE@am__append_4812 = div.module -@COND_arm64_efi_TRUE@am__append_4813 = div.module$(EXEEXT) -@COND_arm64_efi_TRUE@am__append_4814 = -@COND_arm64_efi_TRUE@am__append_4815 = $(nodist_div_module_SOURCES) -@COND_arm64_efi_TRUE@am__append_4816 = $(nodist_div_module_SOURCES) \ -@COND_arm64_efi_TRUE@ div.marker -@COND_arm64_efi_TRUE@am__append_4817 = div.mod -@COND_arm64_efi_TRUE@am__append_4818 = div.marker -@COND_riscv64_efi_TRUE@am__append_4819 = div.module -@COND_riscv64_efi_TRUE@am__append_4820 = div.module$(EXEEXT) -@COND_riscv64_efi_TRUE@am__append_4821 = -@COND_riscv64_efi_TRUE@am__append_4822 = $(nodist_div_module_SOURCES) -@COND_riscv64_efi_TRUE@am__append_4823 = $(nodist_div_module_SOURCES) \ -@COND_riscv64_efi_TRUE@ div.marker -@COND_riscv64_efi_TRUE@am__append_4824 = div.mod -@COND_riscv64_efi_TRUE@am__append_4825 = div.marker -@COND_i386_efi_TRUE@am__append_4826 = efi_gop.module -@COND_i386_efi_TRUE@am__append_4827 = efi_gop.module$(EXEEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_i386_efi_FALSE@@COND_ia64_efi_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_x86_64_efi_FALSE@efi_gop_module_DEPENDENCIES = -@COND_i386_efi_TRUE@am__append_4828 = -@COND_i386_efi_TRUE@am__append_4829 = $(nodist_efi_gop_module_SOURCES) -@COND_i386_efi_TRUE@am__append_4830 = \ -@COND_i386_efi_TRUE@ $(nodist_efi_gop_module_SOURCES) \ -@COND_i386_efi_TRUE@ efi_gop.marker -@COND_i386_efi_TRUE@am__append_4831 = efi_gop.mod -@COND_i386_efi_TRUE@am__append_4832 = efi_gop.marker -@COND_x86_64_efi_TRUE@am__append_4833 = efi_gop.module -@COND_x86_64_efi_TRUE@am__append_4834 = efi_gop.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__append_4835 = -@COND_x86_64_efi_TRUE@am__append_4836 = $(nodist_efi_gop_module_SOURCES) -@COND_x86_64_efi_TRUE@am__append_4837 = \ -@COND_x86_64_efi_TRUE@ $(nodist_efi_gop_module_SOURCES) \ -@COND_x86_64_efi_TRUE@ efi_gop.marker -@COND_x86_64_efi_TRUE@am__append_4838 = efi_gop.mod -@COND_x86_64_efi_TRUE@am__append_4839 = efi_gop.marker -@COND_ia64_efi_TRUE@am__append_4840 = efi_gop.module -@COND_ia64_efi_TRUE@am__append_4841 = efi_gop.module$(EXEEXT) -@COND_ia64_efi_TRUE@am__append_4842 = -@COND_ia64_efi_TRUE@am__append_4843 = $(nodist_efi_gop_module_SOURCES) -@COND_ia64_efi_TRUE@am__append_4844 = \ -@COND_ia64_efi_TRUE@ $(nodist_efi_gop_module_SOURCES) \ -@COND_ia64_efi_TRUE@ efi_gop.marker -@COND_ia64_efi_TRUE@am__append_4845 = efi_gop.mod -@COND_ia64_efi_TRUE@am__append_4846 = efi_gop.marker -@COND_arm_efi_TRUE@am__append_4847 = efi_gop.module -@COND_arm_efi_TRUE@am__append_4848 = efi_gop.module$(EXEEXT) -@COND_arm_efi_TRUE@am__append_4849 = -@COND_arm_efi_TRUE@am__append_4850 = $(nodist_efi_gop_module_SOURCES) -@COND_arm_efi_TRUE@am__append_4851 = $(nodist_efi_gop_module_SOURCES) \ -@COND_arm_efi_TRUE@ efi_gop.marker -@COND_arm_efi_TRUE@am__append_4852 = efi_gop.mod -@COND_arm_efi_TRUE@am__append_4853 = efi_gop.marker -@COND_arm64_efi_TRUE@am__append_4854 = efi_gop.module -@COND_arm64_efi_TRUE@am__append_4855 = efi_gop.module$(EXEEXT) -@COND_arm64_efi_TRUE@am__append_4856 = -@COND_arm64_efi_TRUE@am__append_4857 = $(nodist_efi_gop_module_SOURCES) -@COND_arm64_efi_TRUE@am__append_4858 = \ -@COND_arm64_efi_TRUE@ $(nodist_efi_gop_module_SOURCES) \ -@COND_arm64_efi_TRUE@ efi_gop.marker -@COND_arm64_efi_TRUE@am__append_4859 = efi_gop.mod -@COND_arm64_efi_TRUE@am__append_4860 = efi_gop.marker -@COND_riscv32_efi_TRUE@am__append_4861 = efi_gop.module -@COND_riscv32_efi_TRUE@am__append_4862 = efi_gop.module$(EXEEXT) -@COND_riscv32_efi_TRUE@am__append_4863 = -@COND_riscv32_efi_TRUE@am__append_4864 = $(nodist_efi_gop_module_SOURCES) -@COND_riscv32_efi_TRUE@am__append_4865 = \ -@COND_riscv32_efi_TRUE@ $(nodist_efi_gop_module_SOURCES) \ -@COND_riscv32_efi_TRUE@ efi_gop.marker -@COND_riscv32_efi_TRUE@am__append_4866 = efi_gop.mod -@COND_riscv32_efi_TRUE@am__append_4867 = efi_gop.marker -@COND_riscv64_efi_TRUE@am__append_4868 = efi_gop.module -@COND_riscv64_efi_TRUE@am__append_4869 = efi_gop.module$(EXEEXT) -@COND_riscv64_efi_TRUE@am__append_4870 = -@COND_riscv64_efi_TRUE@am__append_4871 = $(nodist_efi_gop_module_SOURCES) -@COND_riscv64_efi_TRUE@am__append_4872 = \ -@COND_riscv64_efi_TRUE@ $(nodist_efi_gop_module_SOURCES) \ -@COND_riscv64_efi_TRUE@ efi_gop.marker -@COND_riscv64_efi_TRUE@am__append_4873 = efi_gop.mod -@COND_riscv64_efi_TRUE@am__append_4874 = efi_gop.marker -@COND_i386_efi_TRUE@am__append_4875 = efi_uga.module -@COND_i386_efi_TRUE@am__append_4876 = efi_uga.module$(EXEEXT) -@COND_i386_efi_FALSE@@COND_x86_64_efi_FALSE@efi_uga_module_DEPENDENCIES = -@COND_i386_efi_TRUE@am__append_4877 = -@COND_i386_efi_TRUE@am__append_4878 = $(nodist_efi_uga_module_SOURCES) -@COND_i386_efi_TRUE@am__append_4879 = \ -@COND_i386_efi_TRUE@ $(nodist_efi_uga_module_SOURCES) \ -@COND_i386_efi_TRUE@ efi_uga.marker -@COND_i386_efi_TRUE@am__append_4880 = efi_uga.mod -@COND_i386_efi_TRUE@am__append_4881 = efi_uga.marker -@COND_x86_64_efi_TRUE@am__append_4882 = efi_uga.module -@COND_x86_64_efi_TRUE@am__append_4883 = efi_uga.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__append_4884 = -@COND_x86_64_efi_TRUE@am__append_4885 = $(nodist_efi_uga_module_SOURCES) -@COND_x86_64_efi_TRUE@am__append_4886 = \ -@COND_x86_64_efi_TRUE@ $(nodist_efi_uga_module_SOURCES) \ -@COND_x86_64_efi_TRUE@ efi_uga.marker -@COND_x86_64_efi_TRUE@am__append_4887 = efi_uga.mod -@COND_x86_64_efi_TRUE@am__append_4888 = efi_uga.marker -@COND_i386_pc_TRUE@am__append_4889 = vbe.module -@COND_i386_pc_TRUE@am__append_4890 = vbe.module$(EXEEXT) -@COND_i386_pc_FALSE@vbe_module_DEPENDENCIES = -@COND_i386_pc_TRUE@am__append_4891 = -@COND_i386_pc_TRUE@am__append_4892 = $(nodist_vbe_module_SOURCES) -@COND_i386_pc_TRUE@am__append_4893 = $(nodist_vbe_module_SOURCES) \ -@COND_i386_pc_TRUE@ vbe.marker -@COND_i386_pc_TRUE@am__append_4894 = vbe.mod -@COND_i386_pc_TRUE@am__append_4895 = vbe.marker -@COND_emu_TRUE@am__append_4896 = video_fb.module -@COND_emu_TRUE@am__append_4897 = video_fb.module$(EXEEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_FALSE@@COND_x86_64_efi_FALSE@@COND_x86_64_xen_FALSE@video_fb_module_DEPENDENCIES = -@COND_emu_TRUE@am__append_4898 = -@COND_emu_TRUE@am__append_4899 = $(nodist_video_fb_module_SOURCES) -@COND_emu_TRUE@am__append_4900 = $(nodist_video_fb_module_SOURCES) \ -@COND_emu_TRUE@ video_fb.marker -@COND_emu_TRUE@am__append_4901 = video_fb.mod -@COND_emu_TRUE@am__append_4902 = video_fb.marker -@COND_i386_pc_TRUE@am__append_4903 = video_fb.module -@COND_i386_pc_TRUE@am__append_4904 = video_fb.module$(EXEEXT) -@COND_i386_pc_TRUE@am__append_4905 = -@COND_i386_pc_TRUE@am__append_4906 = $(nodist_video_fb_module_SOURCES) -@COND_i386_pc_TRUE@am__append_4907 = \ -@COND_i386_pc_TRUE@ $(nodist_video_fb_module_SOURCES) \ -@COND_i386_pc_TRUE@ video_fb.marker -@COND_i386_pc_TRUE@am__append_4908 = video_fb.mod -@COND_i386_pc_TRUE@am__append_4909 = video_fb.marker -@COND_i386_efi_TRUE@am__append_4910 = video_fb.module -@COND_i386_efi_TRUE@am__append_4911 = video_fb.module$(EXEEXT) -@COND_i386_efi_TRUE@am__append_4912 = -@COND_i386_efi_TRUE@am__append_4913 = $(nodist_video_fb_module_SOURCES) -@COND_i386_efi_TRUE@am__append_4914 = \ -@COND_i386_efi_TRUE@ $(nodist_video_fb_module_SOURCES) \ -@COND_i386_efi_TRUE@ video_fb.marker -@COND_i386_efi_TRUE@am__append_4915 = video_fb.mod -@COND_i386_efi_TRUE@am__append_4916 = video_fb.marker -@COND_i386_qemu_TRUE@am__append_4917 = video_fb.module -@COND_i386_qemu_TRUE@am__append_4918 = video_fb.module$(EXEEXT) -@COND_i386_qemu_TRUE@am__append_4919 = -@COND_i386_qemu_TRUE@am__append_4920 = $(nodist_video_fb_module_SOURCES) -@COND_i386_qemu_TRUE@am__append_4921 = \ -@COND_i386_qemu_TRUE@ $(nodist_video_fb_module_SOURCES) \ -@COND_i386_qemu_TRUE@ video_fb.marker -@COND_i386_qemu_TRUE@am__append_4922 = video_fb.mod -@COND_i386_qemu_TRUE@am__append_4923 = video_fb.marker -@COND_i386_multiboot_TRUE@am__append_4924 = video_fb.module -@COND_i386_multiboot_TRUE@am__append_4925 = video_fb.module$(EXEEXT) -@COND_i386_multiboot_TRUE@am__append_4926 = -@COND_i386_multiboot_TRUE@am__append_4927 = $(nodist_video_fb_module_SOURCES) -@COND_i386_multiboot_TRUE@am__append_4928 = \ -@COND_i386_multiboot_TRUE@ $(nodist_video_fb_module_SOURCES) \ -@COND_i386_multiboot_TRUE@ video_fb.marker -@COND_i386_multiboot_TRUE@am__append_4929 = video_fb.mod -@COND_i386_multiboot_TRUE@am__append_4930 = video_fb.marker -@COND_i386_ieee1275_TRUE@am__append_4931 = video_fb.module -@COND_i386_ieee1275_TRUE@am__append_4932 = video_fb.module$(EXEEXT) -@COND_i386_ieee1275_TRUE@am__append_4933 = -@COND_i386_ieee1275_TRUE@am__append_4934 = $(nodist_video_fb_module_SOURCES) -@COND_i386_ieee1275_TRUE@am__append_4935 = \ -@COND_i386_ieee1275_TRUE@ $(nodist_video_fb_module_SOURCES) \ -@COND_i386_ieee1275_TRUE@ video_fb.marker -@COND_i386_ieee1275_TRUE@am__append_4936 = video_fb.mod -@COND_i386_ieee1275_TRUE@am__append_4937 = video_fb.marker -@COND_x86_64_efi_TRUE@am__append_4938 = video_fb.module -@COND_x86_64_efi_TRUE@am__append_4939 = video_fb.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__append_4940 = -@COND_x86_64_efi_TRUE@am__append_4941 = $(nodist_video_fb_module_SOURCES) -@COND_x86_64_efi_TRUE@am__append_4942 = \ -@COND_x86_64_efi_TRUE@ $(nodist_video_fb_module_SOURCES) \ -@COND_x86_64_efi_TRUE@ video_fb.marker -@COND_x86_64_efi_TRUE@am__append_4943 = video_fb.mod -@COND_x86_64_efi_TRUE@am__append_4944 = video_fb.marker -@COND_i386_xen_TRUE@am__append_4945 = video_fb.module -@COND_i386_xen_TRUE@am__append_4946 = video_fb.module$(EXEEXT) -@COND_i386_xen_TRUE@am__append_4947 = -@COND_i386_xen_TRUE@am__append_4948 = $(nodist_video_fb_module_SOURCES) -@COND_i386_xen_TRUE@am__append_4949 = \ -@COND_i386_xen_TRUE@ $(nodist_video_fb_module_SOURCES) \ -@COND_i386_xen_TRUE@ video_fb.marker -@COND_i386_xen_TRUE@am__append_4950 = video_fb.mod -@COND_i386_xen_TRUE@am__append_4951 = video_fb.marker -@COND_x86_64_xen_TRUE@am__append_4952 = video_fb.module -@COND_x86_64_xen_TRUE@am__append_4953 = video_fb.module$(EXEEXT) -@COND_x86_64_xen_TRUE@am__append_4954 = -@COND_x86_64_xen_TRUE@am__append_4955 = $(nodist_video_fb_module_SOURCES) -@COND_x86_64_xen_TRUE@am__append_4956 = \ -@COND_x86_64_xen_TRUE@ $(nodist_video_fb_module_SOURCES) \ -@COND_x86_64_xen_TRUE@ video_fb.marker -@COND_x86_64_xen_TRUE@am__append_4957 = video_fb.mod -@COND_x86_64_xen_TRUE@am__append_4958 = video_fb.marker -@COND_i386_xen_pvh_TRUE@am__append_4959 = video_fb.module -@COND_i386_xen_pvh_TRUE@am__append_4960 = video_fb.module$(EXEEXT) -@COND_i386_xen_pvh_TRUE@am__append_4961 = -@COND_i386_xen_pvh_TRUE@am__append_4962 = $(nodist_video_fb_module_SOURCES) -@COND_i386_xen_pvh_TRUE@am__append_4963 = \ -@COND_i386_xen_pvh_TRUE@ $(nodist_video_fb_module_SOURCES) \ -@COND_i386_xen_pvh_TRUE@ video_fb.marker -@COND_i386_xen_pvh_TRUE@am__append_4964 = video_fb.mod -@COND_i386_xen_pvh_TRUE@am__append_4965 = video_fb.marker -@COND_sparc64_ieee1275_TRUE@am__append_4966 = video_fb.module -@COND_sparc64_ieee1275_TRUE@am__append_4967 = video_fb.module$(EXEEXT) -@COND_sparc64_ieee1275_TRUE@am__append_4968 = -@COND_sparc64_ieee1275_TRUE@am__append_4969 = $(nodist_video_fb_module_SOURCES) -@COND_sparc64_ieee1275_TRUE@am__append_4970 = \ -@COND_sparc64_ieee1275_TRUE@ $(nodist_video_fb_module_SOURCES) \ -@COND_sparc64_ieee1275_TRUE@ video_fb.marker -@COND_sparc64_ieee1275_TRUE@am__append_4971 = video_fb.mod -@COND_sparc64_ieee1275_TRUE@am__append_4972 = video_fb.marker -@COND_powerpc_ieee1275_TRUE@am__append_4973 = video_fb.module -@COND_powerpc_ieee1275_TRUE@am__append_4974 = video_fb.module$(EXEEXT) -@COND_powerpc_ieee1275_TRUE@am__append_4975 = -@COND_powerpc_ieee1275_TRUE@am__append_4976 = $(nodist_video_fb_module_SOURCES) -@COND_powerpc_ieee1275_TRUE@am__append_4977 = \ -@COND_powerpc_ieee1275_TRUE@ $(nodist_video_fb_module_SOURCES) \ -@COND_powerpc_ieee1275_TRUE@ video_fb.marker -@COND_powerpc_ieee1275_TRUE@am__append_4978 = video_fb.mod -@COND_powerpc_ieee1275_TRUE@am__append_4979 = video_fb.marker -@COND_mips_arc_TRUE@am__append_4980 = video_fb.module -@COND_mips_arc_TRUE@am__append_4981 = video_fb.module$(EXEEXT) -@COND_mips_arc_TRUE@am__append_4982 = -@COND_mips_arc_TRUE@am__append_4983 = $(nodist_video_fb_module_SOURCES) -@COND_mips_arc_TRUE@am__append_4984 = \ -@COND_mips_arc_TRUE@ $(nodist_video_fb_module_SOURCES) \ -@COND_mips_arc_TRUE@ video_fb.marker -@COND_mips_arc_TRUE@am__append_4985 = video_fb.mod -@COND_mips_arc_TRUE@am__append_4986 = video_fb.marker -@COND_ia64_efi_TRUE@am__append_4987 = video_fb.module -@COND_ia64_efi_TRUE@am__append_4988 = video_fb.module$(EXEEXT) -@COND_ia64_efi_TRUE@am__append_4989 = -@COND_ia64_efi_TRUE@am__append_4990 = $(nodist_video_fb_module_SOURCES) -@COND_ia64_efi_TRUE@am__append_4991 = \ -@COND_ia64_efi_TRUE@ $(nodist_video_fb_module_SOURCES) \ -@COND_ia64_efi_TRUE@ video_fb.marker -@COND_ia64_efi_TRUE@am__append_4992 = video_fb.mod -@COND_ia64_efi_TRUE@am__append_4993 = video_fb.marker -@COND_mips_qemu_mips_TRUE@am__append_4994 = video_fb.module -@COND_mips_qemu_mips_TRUE@am__append_4995 = video_fb.module$(EXEEXT) -@COND_mips_qemu_mips_TRUE@am__append_4996 = -@COND_mips_qemu_mips_TRUE@am__append_4997 = $(nodist_video_fb_module_SOURCES) -@COND_mips_qemu_mips_TRUE@am__append_4998 = \ -@COND_mips_qemu_mips_TRUE@ $(nodist_video_fb_module_SOURCES) \ -@COND_mips_qemu_mips_TRUE@ video_fb.marker -@COND_mips_qemu_mips_TRUE@am__append_4999 = video_fb.mod -@COND_mips_qemu_mips_TRUE@am__append_5000 = video_fb.marker -@COND_arm_uboot_TRUE@am__append_5001 = video_fb.module -@COND_arm_uboot_TRUE@am__append_5002 = video_fb.module$(EXEEXT) -@COND_arm_uboot_TRUE@am__append_5003 = -@COND_arm_uboot_TRUE@am__append_5004 = $(nodist_video_fb_module_SOURCES) -@COND_arm_uboot_TRUE@am__append_5005 = \ -@COND_arm_uboot_TRUE@ $(nodist_video_fb_module_SOURCES) \ -@COND_arm_uboot_TRUE@ video_fb.marker -@COND_arm_uboot_TRUE@am__append_5006 = video_fb.mod -@COND_arm_uboot_TRUE@am__append_5007 = video_fb.marker -@COND_arm_efi_TRUE@am__append_5008 = video_fb.module -@COND_arm_efi_TRUE@am__append_5009 = video_fb.module$(EXEEXT) -@COND_arm_efi_TRUE@am__append_5010 = -@COND_arm_efi_TRUE@am__append_5011 = $(nodist_video_fb_module_SOURCES) -@COND_arm_efi_TRUE@am__append_5012 = \ -@COND_arm_efi_TRUE@ $(nodist_video_fb_module_SOURCES) \ -@COND_arm_efi_TRUE@ video_fb.marker -@COND_arm_efi_TRUE@am__append_5013 = video_fb.mod -@COND_arm_efi_TRUE@am__append_5014 = video_fb.marker -@COND_arm64_efi_TRUE@am__append_5015 = video_fb.module -@COND_arm64_efi_TRUE@am__append_5016 = video_fb.module$(EXEEXT) -@COND_arm64_efi_TRUE@am__append_5017 = -@COND_arm64_efi_TRUE@am__append_5018 = $(nodist_video_fb_module_SOURCES) -@COND_arm64_efi_TRUE@am__append_5019 = \ -@COND_arm64_efi_TRUE@ $(nodist_video_fb_module_SOURCES) \ -@COND_arm64_efi_TRUE@ video_fb.marker -@COND_arm64_efi_TRUE@am__append_5020 = video_fb.mod -@COND_arm64_efi_TRUE@am__append_5021 = video_fb.marker -@COND_riscv32_efi_TRUE@am__append_5022 = video_fb.module -@COND_riscv32_efi_TRUE@am__append_5023 = video_fb.module$(EXEEXT) -@COND_riscv32_efi_TRUE@am__append_5024 = -@COND_riscv32_efi_TRUE@am__append_5025 = $(nodist_video_fb_module_SOURCES) -@COND_riscv32_efi_TRUE@am__append_5026 = \ -@COND_riscv32_efi_TRUE@ $(nodist_video_fb_module_SOURCES) \ -@COND_riscv32_efi_TRUE@ video_fb.marker -@COND_riscv32_efi_TRUE@am__append_5027 = video_fb.mod -@COND_riscv32_efi_TRUE@am__append_5028 = video_fb.marker -@COND_riscv64_efi_TRUE@am__append_5029 = video_fb.module -@COND_riscv64_efi_TRUE@am__append_5030 = video_fb.module$(EXEEXT) -@COND_riscv64_efi_TRUE@am__append_5031 = -@COND_riscv64_efi_TRUE@am__append_5032 = $(nodist_video_fb_module_SOURCES) -@COND_riscv64_efi_TRUE@am__append_5033 = \ -@COND_riscv64_efi_TRUE@ $(nodist_video_fb_module_SOURCES) \ -@COND_riscv64_efi_TRUE@ video_fb.marker -@COND_riscv64_efi_TRUE@am__append_5034 = video_fb.mod -@COND_riscv64_efi_TRUE@am__append_5035 = video_fb.marker -@COND_emu_TRUE@am__append_5036 = video.module -@COND_emu_TRUE@am__append_5037 = video.module$(EXEEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_FALSE@@COND_x86_64_efi_FALSE@@COND_x86_64_xen_FALSE@video_module_DEPENDENCIES = -@COND_emu_TRUE@am__append_5038 = -@COND_emu_TRUE@am__append_5039 = $(nodist_video_module_SOURCES) -@COND_emu_TRUE@am__append_5040 = $(nodist_video_module_SOURCES) \ -@COND_emu_TRUE@ video.marker -@COND_emu_TRUE@am__append_5041 = video.mod -@COND_emu_TRUE@am__append_5042 = video.marker -@COND_i386_pc_TRUE@am__append_5043 = video.module -@COND_i386_pc_TRUE@am__append_5044 = video.module$(EXEEXT) -@COND_i386_pc_TRUE@am__append_5045 = -@COND_i386_pc_TRUE@am__append_5046 = $(nodist_video_module_SOURCES) -@COND_i386_pc_TRUE@am__append_5047 = $(nodist_video_module_SOURCES) \ -@COND_i386_pc_TRUE@ video.marker -@COND_i386_pc_TRUE@am__append_5048 = video.mod -@COND_i386_pc_TRUE@am__append_5049 = video.marker -@COND_i386_efi_TRUE@am__append_5050 = video.module -@COND_i386_efi_TRUE@am__append_5051 = video.module$(EXEEXT) -@COND_i386_efi_TRUE@am__append_5052 = -@COND_i386_efi_TRUE@am__append_5053 = $(nodist_video_module_SOURCES) -@COND_i386_efi_TRUE@am__append_5054 = $(nodist_video_module_SOURCES) \ -@COND_i386_efi_TRUE@ video.marker -@COND_i386_efi_TRUE@am__append_5055 = video.mod -@COND_i386_efi_TRUE@am__append_5056 = video.marker -@COND_i386_qemu_TRUE@am__append_5057 = video.module -@COND_i386_qemu_TRUE@am__append_5058 = video.module$(EXEEXT) -@COND_i386_qemu_TRUE@am__append_5059 = -@COND_i386_qemu_TRUE@am__append_5060 = $(nodist_video_module_SOURCES) -@COND_i386_qemu_TRUE@am__append_5061 = $(nodist_video_module_SOURCES) \ -@COND_i386_qemu_TRUE@ video.marker -@COND_i386_qemu_TRUE@am__append_5062 = video.mod -@COND_i386_qemu_TRUE@am__append_5063 = video.marker -@COND_i386_multiboot_TRUE@am__append_5064 = video.module -@COND_i386_multiboot_TRUE@am__append_5065 = video.module$(EXEEXT) -@COND_i386_multiboot_TRUE@am__append_5066 = -@COND_i386_multiboot_TRUE@am__append_5067 = $(nodist_video_module_SOURCES) -@COND_i386_multiboot_TRUE@am__append_5068 = \ -@COND_i386_multiboot_TRUE@ $(nodist_video_module_SOURCES) \ -@COND_i386_multiboot_TRUE@ video.marker -@COND_i386_multiboot_TRUE@am__append_5069 = video.mod -@COND_i386_multiboot_TRUE@am__append_5070 = video.marker -@COND_i386_ieee1275_TRUE@am__append_5071 = video.module -@COND_i386_ieee1275_TRUE@am__append_5072 = video.module$(EXEEXT) -@COND_i386_ieee1275_TRUE@am__append_5073 = -@COND_i386_ieee1275_TRUE@am__append_5074 = $(nodist_video_module_SOURCES) -@COND_i386_ieee1275_TRUE@am__append_5075 = \ -@COND_i386_ieee1275_TRUE@ $(nodist_video_module_SOURCES) \ -@COND_i386_ieee1275_TRUE@ video.marker -@COND_i386_ieee1275_TRUE@am__append_5076 = video.mod -@COND_i386_ieee1275_TRUE@am__append_5077 = video.marker -@COND_x86_64_efi_TRUE@am__append_5078 = video.module -@COND_x86_64_efi_TRUE@am__append_5079 = video.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__append_5080 = -@COND_x86_64_efi_TRUE@am__append_5081 = $(nodist_video_module_SOURCES) -@COND_x86_64_efi_TRUE@am__append_5082 = \ -@COND_x86_64_efi_TRUE@ $(nodist_video_module_SOURCES) \ -@COND_x86_64_efi_TRUE@ video.marker -@COND_x86_64_efi_TRUE@am__append_5083 = video.mod -@COND_x86_64_efi_TRUE@am__append_5084 = video.marker -@COND_i386_xen_TRUE@am__append_5085 = video.module -@COND_i386_xen_TRUE@am__append_5086 = video.module$(EXEEXT) -@COND_i386_xen_TRUE@am__append_5087 = -@COND_i386_xen_TRUE@am__append_5088 = $(nodist_video_module_SOURCES) -@COND_i386_xen_TRUE@am__append_5089 = $(nodist_video_module_SOURCES) \ -@COND_i386_xen_TRUE@ video.marker -@COND_i386_xen_TRUE@am__append_5090 = video.mod -@COND_i386_xen_TRUE@am__append_5091 = video.marker -@COND_x86_64_xen_TRUE@am__append_5092 = video.module -@COND_x86_64_xen_TRUE@am__append_5093 = video.module$(EXEEXT) -@COND_x86_64_xen_TRUE@am__append_5094 = -@COND_x86_64_xen_TRUE@am__append_5095 = $(nodist_video_module_SOURCES) -@COND_x86_64_xen_TRUE@am__append_5096 = \ -@COND_x86_64_xen_TRUE@ $(nodist_video_module_SOURCES) \ -@COND_x86_64_xen_TRUE@ video.marker -@COND_x86_64_xen_TRUE@am__append_5097 = video.mod -@COND_x86_64_xen_TRUE@am__append_5098 = video.marker -@COND_i386_xen_pvh_TRUE@am__append_5099 = video.module -@COND_i386_xen_pvh_TRUE@am__append_5100 = video.module$(EXEEXT) -@COND_i386_xen_pvh_TRUE@am__append_5101 = -@COND_i386_xen_pvh_TRUE@am__append_5102 = $(nodist_video_module_SOURCES) -@COND_i386_xen_pvh_TRUE@am__append_5103 = \ -@COND_i386_xen_pvh_TRUE@ $(nodist_video_module_SOURCES) \ -@COND_i386_xen_pvh_TRUE@ video.marker -@COND_i386_xen_pvh_TRUE@am__append_5104 = video.mod -@COND_i386_xen_pvh_TRUE@am__append_5105 = video.marker -@COND_sparc64_ieee1275_TRUE@am__append_5106 = video.module -@COND_sparc64_ieee1275_TRUE@am__append_5107 = video.module$(EXEEXT) -@COND_sparc64_ieee1275_TRUE@am__append_5108 = -@COND_sparc64_ieee1275_TRUE@am__append_5109 = $(nodist_video_module_SOURCES) -@COND_sparc64_ieee1275_TRUE@am__append_5110 = \ -@COND_sparc64_ieee1275_TRUE@ $(nodist_video_module_SOURCES) \ -@COND_sparc64_ieee1275_TRUE@ video.marker -@COND_sparc64_ieee1275_TRUE@am__append_5111 = video.mod -@COND_sparc64_ieee1275_TRUE@am__append_5112 = video.marker -@COND_powerpc_ieee1275_TRUE@am__append_5113 = video.module -@COND_powerpc_ieee1275_TRUE@am__append_5114 = video.module$(EXEEXT) -@COND_powerpc_ieee1275_TRUE@am__append_5115 = -@COND_powerpc_ieee1275_TRUE@am__append_5116 = $(nodist_video_module_SOURCES) -@COND_powerpc_ieee1275_TRUE@am__append_5117 = \ -@COND_powerpc_ieee1275_TRUE@ $(nodist_video_module_SOURCES) \ -@COND_powerpc_ieee1275_TRUE@ video.marker -@COND_powerpc_ieee1275_TRUE@am__append_5118 = video.mod -@COND_powerpc_ieee1275_TRUE@am__append_5119 = video.marker -@COND_mips_arc_TRUE@am__append_5120 = video.module -@COND_mips_arc_TRUE@am__append_5121 = video.module$(EXEEXT) -@COND_mips_arc_TRUE@am__append_5122 = -@COND_mips_arc_TRUE@am__append_5123 = $(nodist_video_module_SOURCES) -@COND_mips_arc_TRUE@am__append_5124 = $(nodist_video_module_SOURCES) \ -@COND_mips_arc_TRUE@ video.marker -@COND_mips_arc_TRUE@am__append_5125 = video.mod -@COND_mips_arc_TRUE@am__append_5126 = video.marker -@COND_ia64_efi_TRUE@am__append_5127 = video.module -@COND_ia64_efi_TRUE@am__append_5128 = video.module$(EXEEXT) -@COND_ia64_efi_TRUE@am__append_5129 = -@COND_ia64_efi_TRUE@am__append_5130 = $(nodist_video_module_SOURCES) -@COND_ia64_efi_TRUE@am__append_5131 = $(nodist_video_module_SOURCES) \ -@COND_ia64_efi_TRUE@ video.marker -@COND_ia64_efi_TRUE@am__append_5132 = video.mod -@COND_ia64_efi_TRUE@am__append_5133 = video.marker -@COND_mips_qemu_mips_TRUE@am__append_5134 = video.module -@COND_mips_qemu_mips_TRUE@am__append_5135 = video.module$(EXEEXT) -@COND_mips_qemu_mips_TRUE@am__append_5136 = -@COND_mips_qemu_mips_TRUE@am__append_5137 = $(nodist_video_module_SOURCES) -@COND_mips_qemu_mips_TRUE@am__append_5138 = \ -@COND_mips_qemu_mips_TRUE@ $(nodist_video_module_SOURCES) \ -@COND_mips_qemu_mips_TRUE@ video.marker -@COND_mips_qemu_mips_TRUE@am__append_5139 = video.mod -@COND_mips_qemu_mips_TRUE@am__append_5140 = video.marker -@COND_arm_uboot_TRUE@am__append_5141 = video.module -@COND_arm_uboot_TRUE@am__append_5142 = video.module$(EXEEXT) -@COND_arm_uboot_TRUE@am__append_5143 = -@COND_arm_uboot_TRUE@am__append_5144 = $(nodist_video_module_SOURCES) -@COND_arm_uboot_TRUE@am__append_5145 = $(nodist_video_module_SOURCES) \ -@COND_arm_uboot_TRUE@ video.marker -@COND_arm_uboot_TRUE@am__append_5146 = video.mod -@COND_arm_uboot_TRUE@am__append_5147 = video.marker -@COND_arm_efi_TRUE@am__append_5148 = video.module -@COND_arm_efi_TRUE@am__append_5149 = video.module$(EXEEXT) -@COND_arm_efi_TRUE@am__append_5150 = -@COND_arm_efi_TRUE@am__append_5151 = $(nodist_video_module_SOURCES) -@COND_arm_efi_TRUE@am__append_5152 = $(nodist_video_module_SOURCES) \ -@COND_arm_efi_TRUE@ video.marker -@COND_arm_efi_TRUE@am__append_5153 = video.mod -@COND_arm_efi_TRUE@am__append_5154 = video.marker -@COND_arm64_efi_TRUE@am__append_5155 = video.module -@COND_arm64_efi_TRUE@am__append_5156 = video.module$(EXEEXT) -@COND_arm64_efi_TRUE@am__append_5157 = -@COND_arm64_efi_TRUE@am__append_5158 = $(nodist_video_module_SOURCES) -@COND_arm64_efi_TRUE@am__append_5159 = $(nodist_video_module_SOURCES) \ -@COND_arm64_efi_TRUE@ video.marker -@COND_arm64_efi_TRUE@am__append_5160 = video.mod -@COND_arm64_efi_TRUE@am__append_5161 = video.marker -@COND_riscv32_efi_TRUE@am__append_5162 = video.module -@COND_riscv32_efi_TRUE@am__append_5163 = video.module$(EXEEXT) -@COND_riscv32_efi_TRUE@am__append_5164 = -@COND_riscv32_efi_TRUE@am__append_5165 = $(nodist_video_module_SOURCES) -@COND_riscv32_efi_TRUE@am__append_5166 = \ -@COND_riscv32_efi_TRUE@ $(nodist_video_module_SOURCES) \ -@COND_riscv32_efi_TRUE@ video.marker -@COND_riscv32_efi_TRUE@am__append_5167 = video.mod -@COND_riscv32_efi_TRUE@am__append_5168 = video.marker -@COND_riscv64_efi_TRUE@am__append_5169 = video.module -@COND_riscv64_efi_TRUE@am__append_5170 = video.module$(EXEEXT) -@COND_riscv64_efi_TRUE@am__append_5171 = -@COND_riscv64_efi_TRUE@am__append_5172 = $(nodist_video_module_SOURCES) -@COND_riscv64_efi_TRUE@am__append_5173 = \ -@COND_riscv64_efi_TRUE@ $(nodist_video_module_SOURCES) \ -@COND_riscv64_efi_TRUE@ video.marker -@COND_riscv64_efi_TRUE@am__append_5174 = video.mod -@COND_riscv64_efi_TRUE@am__append_5175 = video.marker -@COND_powerpc_ieee1275_TRUE@am__append_5176 = ieee1275_fb.module -@COND_powerpc_ieee1275_TRUE@am__append_5177 = ieee1275_fb.module$(EXEEXT) -@COND_powerpc_ieee1275_FALSE@ieee1275_fb_module_DEPENDENCIES = -@COND_powerpc_ieee1275_TRUE@am__append_5178 = -@COND_powerpc_ieee1275_TRUE@am__append_5179 = $(nodist_ieee1275_fb_module_SOURCES) -@COND_powerpc_ieee1275_TRUE@am__append_5180 = $(nodist_ieee1275_fb_module_SOURCES) \ -@COND_powerpc_ieee1275_TRUE@ ieee1275_fb.marker -@COND_powerpc_ieee1275_TRUE@am__append_5181 = ieee1275_fb.mod -@COND_powerpc_ieee1275_TRUE@am__append_5182 = ieee1275_fb.marker -@COND_GRUB_EMU_SDL_TRUE@@COND_emu_TRUE@am__append_5183 = sdl.module -@COND_GRUB_EMU_SDL_TRUE@@COND_emu_TRUE@am__append_5184 = sdl.module$(EXEEXT) -@COND_GRUB_EMU_SDL_FALSE@sdl_module_DEPENDENCIES = -@COND_emu_FALSE@sdl_module_DEPENDENCIES = -@COND_GRUB_EMU_SDL_TRUE@@COND_emu_TRUE@am__append_5185 = -@COND_GRUB_EMU_SDL_TRUE@@COND_emu_TRUE@am__append_5186 = $(nodist_sdl_module_SOURCES) -@COND_GRUB_EMU_SDL_TRUE@@COND_emu_TRUE@am__append_5187 = $(nodist_sdl_module_SOURCES) \ -@COND_GRUB_EMU_SDL_TRUE@@COND_emu_TRUE@ sdl.marker -@COND_GRUB_EMU_SDL_TRUE@@COND_emu_TRUE@am__append_5188 = sdl.mod -@COND_GRUB_EMU_SDL_TRUE@@COND_emu_TRUE@am__append_5189 = sdl.marker -@COND_i386_ieee1275_TRUE@am__append_5190 = ofnet.module -@COND_i386_ieee1275_TRUE@am__append_5191 = ofnet.module$(EXEEXT) -@COND_i386_ieee1275_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_sparc64_ieee1275_FALSE@ofnet_module_DEPENDENCIES = -@COND_i386_ieee1275_TRUE@am__append_5192 = -@COND_i386_ieee1275_TRUE@am__append_5193 = $(nodist_ofnet_module_SOURCES) -@COND_i386_ieee1275_TRUE@am__append_5194 = \ -@COND_i386_ieee1275_TRUE@ $(nodist_ofnet_module_SOURCES) \ -@COND_i386_ieee1275_TRUE@ ofnet.marker -@COND_i386_ieee1275_TRUE@am__append_5195 = ofnet.mod -@COND_i386_ieee1275_TRUE@am__append_5196 = ofnet.marker -@COND_sparc64_ieee1275_TRUE@am__append_5197 = ofnet.module -@COND_sparc64_ieee1275_TRUE@am__append_5198 = ofnet.module$(EXEEXT) -@COND_sparc64_ieee1275_TRUE@am__append_5199 = -@COND_sparc64_ieee1275_TRUE@am__append_5200 = $(nodist_ofnet_module_SOURCES) -@COND_sparc64_ieee1275_TRUE@am__append_5201 = \ -@COND_sparc64_ieee1275_TRUE@ $(nodist_ofnet_module_SOURCES) \ -@COND_sparc64_ieee1275_TRUE@ ofnet.marker -@COND_sparc64_ieee1275_TRUE@am__append_5202 = ofnet.mod -@COND_sparc64_ieee1275_TRUE@am__append_5203 = ofnet.marker -@COND_powerpc_ieee1275_TRUE@am__append_5204 = ofnet.module -@COND_powerpc_ieee1275_TRUE@am__append_5205 = ofnet.module$(EXEEXT) -@COND_powerpc_ieee1275_TRUE@am__append_5206 = -@COND_powerpc_ieee1275_TRUE@am__append_5207 = $(nodist_ofnet_module_SOURCES) -@COND_powerpc_ieee1275_TRUE@am__append_5208 = \ -@COND_powerpc_ieee1275_TRUE@ $(nodist_ofnet_module_SOURCES) \ -@COND_powerpc_ieee1275_TRUE@ ofnet.marker -@COND_powerpc_ieee1275_TRUE@am__append_5209 = ofnet.mod -@COND_powerpc_ieee1275_TRUE@am__append_5210 = ofnet.marker -@COND_arm_uboot_TRUE@am__append_5211 = ubootnet.module -@COND_arm_uboot_TRUE@am__append_5212 = ubootnet.module$(EXEEXT) -@COND_arm_uboot_FALSE@ubootnet_module_DEPENDENCIES = -@COND_arm_uboot_TRUE@am__append_5213 = -@COND_arm_uboot_TRUE@am__append_5214 = $(nodist_ubootnet_module_SOURCES) -@COND_arm_uboot_TRUE@am__append_5215 = \ -@COND_arm_uboot_TRUE@ $(nodist_ubootnet_module_SOURCES) \ -@COND_arm_uboot_TRUE@ ubootnet.marker -@COND_arm_uboot_TRUE@am__append_5216 = ubootnet.mod -@COND_arm_uboot_TRUE@am__append_5217 = ubootnet.marker -@COND_i386_efi_TRUE@am__append_5218 = efinet.module -@COND_i386_efi_TRUE@am__append_5219 = efinet.module$(EXEEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_i386_efi_FALSE@@COND_ia64_efi_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_x86_64_efi_FALSE@efinet_module_DEPENDENCIES = -@COND_i386_efi_TRUE@am__append_5220 = -@COND_i386_efi_TRUE@am__append_5221 = $(nodist_efinet_module_SOURCES) -@COND_i386_efi_TRUE@am__append_5222 = $(nodist_efinet_module_SOURCES) \ -@COND_i386_efi_TRUE@ efinet.marker -@COND_i386_efi_TRUE@am__append_5223 = efinet.mod -@COND_i386_efi_TRUE@am__append_5224 = efinet.marker -@COND_x86_64_efi_TRUE@am__append_5225 = efinet.module -@COND_x86_64_efi_TRUE@am__append_5226 = efinet.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__append_5227 = -@COND_x86_64_efi_TRUE@am__append_5228 = $(nodist_efinet_module_SOURCES) -@COND_x86_64_efi_TRUE@am__append_5229 = \ -@COND_x86_64_efi_TRUE@ $(nodist_efinet_module_SOURCES) \ -@COND_x86_64_efi_TRUE@ efinet.marker -@COND_x86_64_efi_TRUE@am__append_5230 = efinet.mod -@COND_x86_64_efi_TRUE@am__append_5231 = efinet.marker -@COND_ia64_efi_TRUE@am__append_5232 = efinet.module -@COND_ia64_efi_TRUE@am__append_5233 = efinet.module$(EXEEXT) -@COND_ia64_efi_TRUE@am__append_5234 = -@COND_ia64_efi_TRUE@am__append_5235 = $(nodist_efinet_module_SOURCES) -@COND_ia64_efi_TRUE@am__append_5236 = $(nodist_efinet_module_SOURCES) \ -@COND_ia64_efi_TRUE@ efinet.marker -@COND_ia64_efi_TRUE@am__append_5237 = efinet.mod -@COND_ia64_efi_TRUE@am__append_5238 = efinet.marker -@COND_arm_efi_TRUE@am__append_5239 = efinet.module -@COND_arm_efi_TRUE@am__append_5240 = efinet.module$(EXEEXT) -@COND_arm_efi_TRUE@am__append_5241 = -@COND_arm_efi_TRUE@am__append_5242 = $(nodist_efinet_module_SOURCES) -@COND_arm_efi_TRUE@am__append_5243 = $(nodist_efinet_module_SOURCES) \ -@COND_arm_efi_TRUE@ efinet.marker -@COND_arm_efi_TRUE@am__append_5244 = efinet.mod -@COND_arm_efi_TRUE@am__append_5245 = efinet.marker -@COND_arm64_efi_TRUE@am__append_5246 = efinet.module -@COND_arm64_efi_TRUE@am__append_5247 = efinet.module$(EXEEXT) -@COND_arm64_efi_TRUE@am__append_5248 = -@COND_arm64_efi_TRUE@am__append_5249 = $(nodist_efinet_module_SOURCES) -@COND_arm64_efi_TRUE@am__append_5250 = \ -@COND_arm64_efi_TRUE@ $(nodist_efinet_module_SOURCES) \ -@COND_arm64_efi_TRUE@ efinet.marker -@COND_arm64_efi_TRUE@am__append_5251 = efinet.mod -@COND_arm64_efi_TRUE@am__append_5252 = efinet.marker -@COND_riscv32_efi_TRUE@am__append_5253 = efinet.module -@COND_riscv32_efi_TRUE@am__append_5254 = efinet.module$(EXEEXT) -@COND_riscv32_efi_TRUE@am__append_5255 = -@COND_riscv32_efi_TRUE@am__append_5256 = $(nodist_efinet_module_SOURCES) -@COND_riscv32_efi_TRUE@am__append_5257 = \ -@COND_riscv32_efi_TRUE@ $(nodist_efinet_module_SOURCES) \ -@COND_riscv32_efi_TRUE@ efinet.marker -@COND_riscv32_efi_TRUE@am__append_5258 = efinet.mod -@COND_riscv32_efi_TRUE@am__append_5259 = efinet.marker -@COND_riscv64_efi_TRUE@am__append_5260 = efinet.module -@COND_riscv64_efi_TRUE@am__append_5261 = efinet.module$(EXEEXT) -@COND_riscv64_efi_TRUE@am__append_5262 = -@COND_riscv64_efi_TRUE@am__append_5263 = $(nodist_efinet_module_SOURCES) -@COND_riscv64_efi_TRUE@am__append_5264 = \ -@COND_riscv64_efi_TRUE@ $(nodist_efinet_module_SOURCES) \ -@COND_riscv64_efi_TRUE@ efinet.marker -@COND_riscv64_efi_TRUE@am__append_5265 = efinet.mod -@COND_riscv64_efi_TRUE@am__append_5266 = efinet.marker -@COND_emu_TRUE@am__append_5267 = emunet.module legacycfg.module -@COND_emu_TRUE@am__append_5268 = emunet.module$(EXEEXT) \ -@COND_emu_TRUE@ legacycfg.module$(EXEEXT) -@COND_emu_FALSE@emunet_module_DEPENDENCIES = -@COND_emu_TRUE@am__append_5269 = -@COND_emu_TRUE@am__append_5270 = $(nodist_emunet_module_SOURCES) \ -@COND_emu_TRUE@ $(nodist_legacycfg_module_SOURCES) -@COND_emu_TRUE@am__append_5271 = $(nodist_emunet_module_SOURCES) \ -@COND_emu_TRUE@ emunet.marker \ -@COND_emu_TRUE@ $(nodist_legacycfg_module_SOURCES) \ -@COND_emu_TRUE@ legacycfg.marker -@COND_emu_TRUE@am__append_5272 = emunet.mod legacycfg.mod -@COND_emu_TRUE@am__append_5273 = emunet.marker legacycfg.marker -@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_pc_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_x86_64_efi_FALSE@@COND_x86_64_xen_FALSE@legacycfg_module_DEPENDENCIES = -@COND_i386_pc_TRUE@am__append_5274 = legacycfg.module -@COND_i386_pc_TRUE@am__append_5275 = legacycfg.module$(EXEEXT) -@COND_i386_pc_TRUE@am__append_5276 = -@COND_i386_pc_TRUE@am__append_5277 = $(nodist_legacycfg_module_SOURCES) -@COND_i386_pc_TRUE@am__append_5278 = \ -@COND_i386_pc_TRUE@ $(nodist_legacycfg_module_SOURCES) \ -@COND_i386_pc_TRUE@ legacycfg.marker -@COND_i386_pc_TRUE@am__append_5279 = legacycfg.mod -@COND_i386_pc_TRUE@am__append_5280 = legacycfg.marker -@COND_i386_efi_TRUE@am__append_5281 = legacycfg.module -@COND_i386_efi_TRUE@am__append_5282 = legacycfg.module$(EXEEXT) -@COND_i386_efi_TRUE@am__append_5283 = -@COND_i386_efi_TRUE@am__append_5284 = $(nodist_legacycfg_module_SOURCES) -@COND_i386_efi_TRUE@am__append_5285 = \ -@COND_i386_efi_TRUE@ $(nodist_legacycfg_module_SOURCES) \ -@COND_i386_efi_TRUE@ legacycfg.marker -@COND_i386_efi_TRUE@am__append_5286 = legacycfg.mod -@COND_i386_efi_TRUE@am__append_5287 = legacycfg.marker -@COND_x86_64_efi_TRUE@am__append_5288 = legacycfg.module -@COND_x86_64_efi_TRUE@am__append_5289 = legacycfg.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__append_5290 = -@COND_x86_64_efi_TRUE@am__append_5291 = $(nodist_legacycfg_module_SOURCES) -@COND_x86_64_efi_TRUE@am__append_5292 = \ -@COND_x86_64_efi_TRUE@ $(nodist_legacycfg_module_SOURCES) \ -@COND_x86_64_efi_TRUE@ legacycfg.marker -@COND_x86_64_efi_TRUE@am__append_5293 = legacycfg.mod -@COND_x86_64_efi_TRUE@am__append_5294 = legacycfg.marker -@COND_i386_xen_TRUE@am__append_5295 = legacycfg.module -@COND_i386_xen_TRUE@am__append_5296 = legacycfg.module$(EXEEXT) -@COND_i386_xen_TRUE@am__append_5297 = -@COND_i386_xen_TRUE@am__append_5298 = $(nodist_legacycfg_module_SOURCES) -@COND_i386_xen_TRUE@am__append_5299 = \ -@COND_i386_xen_TRUE@ $(nodist_legacycfg_module_SOURCES) \ -@COND_i386_xen_TRUE@ legacycfg.marker -@COND_i386_xen_TRUE@am__append_5300 = legacycfg.mod -@COND_i386_xen_TRUE@am__append_5301 = legacycfg.marker -@COND_x86_64_xen_TRUE@am__append_5302 = legacycfg.module -@COND_x86_64_xen_TRUE@am__append_5303 = legacycfg.module$(EXEEXT) -@COND_x86_64_xen_TRUE@am__append_5304 = -@COND_x86_64_xen_TRUE@am__append_5305 = $(nodist_legacycfg_module_SOURCES) -@COND_x86_64_xen_TRUE@am__append_5306 = \ -@COND_x86_64_xen_TRUE@ $(nodist_legacycfg_module_SOURCES) \ -@COND_x86_64_xen_TRUE@ legacycfg.marker -@COND_x86_64_xen_TRUE@am__append_5307 = legacycfg.mod -@COND_x86_64_xen_TRUE@am__append_5308 = legacycfg.marker -@COND_i386_xen_pvh_TRUE@am__append_5309 = legacycfg.module -@COND_i386_xen_pvh_TRUE@am__append_5310 = legacycfg.module$(EXEEXT) -@COND_i386_xen_pvh_TRUE@am__append_5311 = -@COND_i386_xen_pvh_TRUE@am__append_5312 = $(nodist_legacycfg_module_SOURCES) -@COND_i386_xen_pvh_TRUE@am__append_5313 = \ -@COND_i386_xen_pvh_TRUE@ $(nodist_legacycfg_module_SOURCES) \ -@COND_i386_xen_pvh_TRUE@ legacycfg.marker -@COND_i386_xen_pvh_TRUE@am__append_5314 = legacycfg.mod -@COND_i386_xen_pvh_TRUE@am__append_5315 = legacycfg.marker -@COND_i386_pc_TRUE@am__append_5316 = backtrace.module -@COND_i386_pc_TRUE@am__append_5317 = backtrace.module$(EXEEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_x86_64_efi_FALSE@@COND_x86_64_xen_FALSE@backtrace_module_DEPENDENCIES = -@COND_i386_pc_TRUE@am__append_5318 = -@COND_i386_pc_TRUE@am__append_5319 = $(nodist_backtrace_module_SOURCES) -@COND_i386_pc_TRUE@am__append_5320 = \ -@COND_i386_pc_TRUE@ $(nodist_backtrace_module_SOURCES) \ -@COND_i386_pc_TRUE@ backtrace.marker -@COND_i386_pc_TRUE@am__append_5321 = backtrace.mod -@COND_i386_pc_TRUE@am__append_5322 = backtrace.marker -@COND_i386_efi_TRUE@am__append_5323 = backtrace.module -@COND_i386_efi_TRUE@am__append_5324 = backtrace.module$(EXEEXT) -@COND_i386_efi_TRUE@am__append_5325 = -@COND_i386_efi_TRUE@am__append_5326 = $(nodist_backtrace_module_SOURCES) -@COND_i386_efi_TRUE@am__append_5327 = \ -@COND_i386_efi_TRUE@ $(nodist_backtrace_module_SOURCES) \ -@COND_i386_efi_TRUE@ backtrace.marker -@COND_i386_efi_TRUE@am__append_5328 = backtrace.mod -@COND_i386_efi_TRUE@am__append_5329 = backtrace.marker -@COND_i386_qemu_TRUE@am__append_5330 = backtrace.module -@COND_i386_qemu_TRUE@am__append_5331 = backtrace.module$(EXEEXT) -@COND_i386_qemu_TRUE@am__append_5332 = -@COND_i386_qemu_TRUE@am__append_5333 = $(nodist_backtrace_module_SOURCES) -@COND_i386_qemu_TRUE@am__append_5334 = \ -@COND_i386_qemu_TRUE@ $(nodist_backtrace_module_SOURCES) \ -@COND_i386_qemu_TRUE@ backtrace.marker -@COND_i386_qemu_TRUE@am__append_5335 = backtrace.mod -@COND_i386_qemu_TRUE@am__append_5336 = backtrace.marker -@COND_i386_coreboot_TRUE@am__append_5337 = backtrace.module -@COND_i386_coreboot_TRUE@am__append_5338 = backtrace.module$(EXEEXT) -@COND_i386_coreboot_TRUE@am__append_5339 = -@COND_i386_coreboot_TRUE@am__append_5340 = $(nodist_backtrace_module_SOURCES) -@COND_i386_coreboot_TRUE@am__append_5341 = \ -@COND_i386_coreboot_TRUE@ $(nodist_backtrace_module_SOURCES) \ -@COND_i386_coreboot_TRUE@ backtrace.marker -@COND_i386_coreboot_TRUE@am__append_5342 = backtrace.mod -@COND_i386_coreboot_TRUE@am__append_5343 = backtrace.marker -@COND_i386_multiboot_TRUE@am__append_5344 = backtrace.module -@COND_i386_multiboot_TRUE@am__append_5345 = backtrace.module$(EXEEXT) -@COND_i386_multiboot_TRUE@am__append_5346 = -@COND_i386_multiboot_TRUE@am__append_5347 = $(nodist_backtrace_module_SOURCES) -@COND_i386_multiboot_TRUE@am__append_5348 = \ -@COND_i386_multiboot_TRUE@ $(nodist_backtrace_module_SOURCES) \ -@COND_i386_multiboot_TRUE@ backtrace.marker -@COND_i386_multiboot_TRUE@am__append_5349 = backtrace.mod -@COND_i386_multiboot_TRUE@am__append_5350 = backtrace.marker -@COND_i386_ieee1275_TRUE@am__append_5351 = backtrace.module -@COND_i386_ieee1275_TRUE@am__append_5352 = backtrace.module$(EXEEXT) -@COND_i386_ieee1275_TRUE@am__append_5353 = -@COND_i386_ieee1275_TRUE@am__append_5354 = $(nodist_backtrace_module_SOURCES) -@COND_i386_ieee1275_TRUE@am__append_5355 = \ -@COND_i386_ieee1275_TRUE@ $(nodist_backtrace_module_SOURCES) \ -@COND_i386_ieee1275_TRUE@ backtrace.marker -@COND_i386_ieee1275_TRUE@am__append_5356 = backtrace.mod -@COND_i386_ieee1275_TRUE@am__append_5357 = backtrace.marker -@COND_x86_64_efi_TRUE@am__append_5358 = backtrace.module -@COND_x86_64_efi_TRUE@am__append_5359 = backtrace.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__append_5360 = -@COND_x86_64_efi_TRUE@am__append_5361 = $(nodist_backtrace_module_SOURCES) -@COND_x86_64_efi_TRUE@am__append_5362 = \ -@COND_x86_64_efi_TRUE@ $(nodist_backtrace_module_SOURCES) \ -@COND_x86_64_efi_TRUE@ backtrace.marker -@COND_x86_64_efi_TRUE@am__append_5363 = backtrace.mod -@COND_x86_64_efi_TRUE@am__append_5364 = backtrace.marker -@COND_i386_xen_TRUE@am__append_5365 = backtrace.module -@COND_i386_xen_TRUE@am__append_5366 = backtrace.module$(EXEEXT) -@COND_i386_xen_TRUE@am__append_5367 = -@COND_i386_xen_TRUE@am__append_5368 = $(nodist_backtrace_module_SOURCES) -@COND_i386_xen_TRUE@am__append_5369 = \ -@COND_i386_xen_TRUE@ $(nodist_backtrace_module_SOURCES) \ -@COND_i386_xen_TRUE@ backtrace.marker -@COND_i386_xen_TRUE@am__append_5370 = backtrace.mod -@COND_i386_xen_TRUE@am__append_5371 = backtrace.marker -@COND_x86_64_xen_TRUE@am__append_5372 = backtrace.module -@COND_x86_64_xen_TRUE@am__append_5373 = backtrace.module$(EXEEXT) -@COND_x86_64_xen_TRUE@am__append_5374 = -@COND_x86_64_xen_TRUE@am__append_5375 = $(nodist_backtrace_module_SOURCES) -@COND_x86_64_xen_TRUE@am__append_5376 = \ -@COND_x86_64_xen_TRUE@ $(nodist_backtrace_module_SOURCES) \ -@COND_x86_64_xen_TRUE@ backtrace.marker -@COND_x86_64_xen_TRUE@am__append_5377 = backtrace.mod -@COND_x86_64_xen_TRUE@am__append_5378 = backtrace.marker -@COND_i386_xen_pvh_TRUE@am__append_5379 = backtrace.module -@COND_i386_xen_pvh_TRUE@am__append_5380 = backtrace.module$(EXEEXT) -@COND_i386_xen_pvh_TRUE@am__append_5381 = -@COND_i386_xen_pvh_TRUE@am__append_5382 = $(nodist_backtrace_module_SOURCES) -@COND_i386_xen_pvh_TRUE@am__append_5383 = \ -@COND_i386_xen_pvh_TRUE@ $(nodist_backtrace_module_SOURCES) \ -@COND_i386_xen_pvh_TRUE@ backtrace.marker -@COND_i386_xen_pvh_TRUE@am__append_5384 = backtrace.mod -@COND_i386_xen_pvh_TRUE@am__append_5385 = backtrace.marker -@COND_i386_pc_TRUE@am__append_5386 = lsapm.module keylayouts.module -@COND_i386_pc_TRUE@am__append_5387 = lsapm.module$(EXEEXT) \ -@COND_i386_pc_TRUE@ keylayouts.module$(EXEEXT) -@COND_i386_pc_FALSE@lsapm_module_DEPENDENCIES = -@COND_i386_pc_TRUE@am__append_5388 = -@COND_i386_pc_TRUE@am__append_5389 = $(nodist_lsapm_module_SOURCES) \ -@COND_i386_pc_TRUE@ $(nodist_keylayouts_module_SOURCES) -@COND_i386_pc_TRUE@am__append_5390 = $(nodist_lsapm_module_SOURCES) \ -@COND_i386_pc_TRUE@ lsapm.marker \ -@COND_i386_pc_TRUE@ $(nodist_keylayouts_module_SOURCES) \ -@COND_i386_pc_TRUE@ keylayouts.marker -@COND_i386_pc_TRUE@am__append_5391 = lsapm.mod keylayouts.mod -@COND_i386_pc_TRUE@am__append_5392 = lsapm.marker keylayouts.marker -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_x86_64_efi_FALSE@keylayouts_module_DEPENDENCIES = -@COND_i386_efi_TRUE@am__append_5393 = keylayouts.module -@COND_i386_efi_TRUE@am__append_5394 = keylayouts.module$(EXEEXT) -@COND_i386_efi_TRUE@am__append_5395 = -@COND_i386_efi_TRUE@am__append_5396 = $(nodist_keylayouts_module_SOURCES) -@COND_i386_efi_TRUE@am__append_5397 = \ -@COND_i386_efi_TRUE@ $(nodist_keylayouts_module_SOURCES) \ -@COND_i386_efi_TRUE@ keylayouts.marker -@COND_i386_efi_TRUE@am__append_5398 = keylayouts.mod -@COND_i386_efi_TRUE@am__append_5399 = keylayouts.marker -@COND_i386_qemu_TRUE@am__append_5400 = keylayouts.module -@COND_i386_qemu_TRUE@am__append_5401 = keylayouts.module$(EXEEXT) -@COND_i386_qemu_TRUE@am__append_5402 = -@COND_i386_qemu_TRUE@am__append_5403 = $(nodist_keylayouts_module_SOURCES) -@COND_i386_qemu_TRUE@am__append_5404 = \ -@COND_i386_qemu_TRUE@ $(nodist_keylayouts_module_SOURCES) \ -@COND_i386_qemu_TRUE@ keylayouts.marker -@COND_i386_qemu_TRUE@am__append_5405 = keylayouts.mod -@COND_i386_qemu_TRUE@am__append_5406 = keylayouts.marker -@COND_i386_coreboot_TRUE@am__append_5407 = keylayouts.module -@COND_i386_coreboot_TRUE@am__append_5408 = keylayouts.module$(EXEEXT) -@COND_i386_coreboot_TRUE@am__append_5409 = -@COND_i386_coreboot_TRUE@am__append_5410 = $(nodist_keylayouts_module_SOURCES) -@COND_i386_coreboot_TRUE@am__append_5411 = \ -@COND_i386_coreboot_TRUE@ $(nodist_keylayouts_module_SOURCES) \ -@COND_i386_coreboot_TRUE@ keylayouts.marker -@COND_i386_coreboot_TRUE@am__append_5412 = keylayouts.mod -@COND_i386_coreboot_TRUE@am__append_5413 = keylayouts.marker -@COND_i386_multiboot_TRUE@am__append_5414 = keylayouts.module -@COND_i386_multiboot_TRUE@am__append_5415 = keylayouts.module$(EXEEXT) -@COND_i386_multiboot_TRUE@am__append_5416 = -@COND_i386_multiboot_TRUE@am__append_5417 = $(nodist_keylayouts_module_SOURCES) -@COND_i386_multiboot_TRUE@am__append_5418 = \ -@COND_i386_multiboot_TRUE@ $(nodist_keylayouts_module_SOURCES) \ -@COND_i386_multiboot_TRUE@ keylayouts.marker -@COND_i386_multiboot_TRUE@am__append_5419 = keylayouts.mod -@COND_i386_multiboot_TRUE@am__append_5420 = keylayouts.marker -@COND_i386_ieee1275_TRUE@am__append_5421 = keylayouts.module -@COND_i386_ieee1275_TRUE@am__append_5422 = keylayouts.module$(EXEEXT) -@COND_i386_ieee1275_TRUE@am__append_5423 = -@COND_i386_ieee1275_TRUE@am__append_5424 = $(nodist_keylayouts_module_SOURCES) -@COND_i386_ieee1275_TRUE@am__append_5425 = \ -@COND_i386_ieee1275_TRUE@ $(nodist_keylayouts_module_SOURCES) \ -@COND_i386_ieee1275_TRUE@ keylayouts.marker -@COND_i386_ieee1275_TRUE@am__append_5426 = keylayouts.mod -@COND_i386_ieee1275_TRUE@am__append_5427 = keylayouts.marker -@COND_x86_64_efi_TRUE@am__append_5428 = keylayouts.module -@COND_x86_64_efi_TRUE@am__append_5429 = keylayouts.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__append_5430 = -@COND_x86_64_efi_TRUE@am__append_5431 = $(nodist_keylayouts_module_SOURCES) -@COND_x86_64_efi_TRUE@am__append_5432 = \ -@COND_x86_64_efi_TRUE@ $(nodist_keylayouts_module_SOURCES) \ -@COND_x86_64_efi_TRUE@ keylayouts.marker -@COND_x86_64_efi_TRUE@am__append_5433 = keylayouts.mod -@COND_x86_64_efi_TRUE@am__append_5434 = keylayouts.marker -@COND_ENABLE_CACHE_STATS_TRUE@am__append_5435 = cacheinfo.module -@COND_ENABLE_CACHE_STATS_TRUE@am__append_5436 = cacheinfo.module$(EXEEXT) -@COND_ENABLE_CACHE_STATS_FALSE@cacheinfo_module_DEPENDENCIES = -@COND_ENABLE_CACHE_STATS_TRUE@am__append_5437 = -@COND_ENABLE_CACHE_STATS_TRUE@am__append_5438 = $(nodist_cacheinfo_module_SOURCES) -@COND_ENABLE_CACHE_STATS_TRUE@am__append_5439 = $(nodist_cacheinfo_module_SOURCES) \ -@COND_ENABLE_CACHE_STATS_TRUE@ cacheinfo.marker -@COND_ENABLE_CACHE_STATS_TRUE@am__append_5440 = cacheinfo.mod -@COND_ENABLE_CACHE_STATS_TRUE@am__append_5441 = cacheinfo.marker -@COND_ENABLE_BOOT_TIME_STATS_TRUE@am__append_5442 = boottime.module -@COND_ENABLE_BOOT_TIME_STATS_TRUE@am__append_5443 = boottime.module$(EXEEXT) -@COND_ENABLE_BOOT_TIME_STATS_FALSE@boottime_module_DEPENDENCIES = -@COND_ENABLE_BOOT_TIME_STATS_TRUE@am__append_5444 = -@COND_ENABLE_BOOT_TIME_STATS_TRUE@am__append_5445 = $(nodist_boottime_module_SOURCES) -@COND_ENABLE_BOOT_TIME_STATS_TRUE@am__append_5446 = $(nodist_boottime_module_SOURCES) \ -@COND_ENABLE_BOOT_TIME_STATS_TRUE@ boottime.marker -@COND_ENABLE_BOOT_TIME_STATS_TRUE@am__append_5447 = boottime.mod -@COND_ENABLE_BOOT_TIME_STATS_TRUE@am__append_5448 = boottime.marker -@COND_i386_pc_TRUE@am__append_5449 = gdb.module -@COND_i386_pc_TRUE@am__append_5450 = gdb.module$(EXEEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@gdb_module_DEPENDENCIES = -@COND_i386_pc_TRUE@am__append_5451 = -@COND_i386_pc_TRUE@am__append_5452 = $(nodist_gdb_module_SOURCES) -@COND_i386_pc_TRUE@am__append_5453 = $(nodist_gdb_module_SOURCES) \ -@COND_i386_pc_TRUE@ gdb.marker -@COND_i386_pc_TRUE@am__append_5454 = gdb.mod -@COND_i386_pc_TRUE@am__append_5455 = gdb.marker -@COND_i386_efi_TRUE@am__append_5456 = gdb.module -@COND_i386_efi_TRUE@am__append_5457 = gdb.module$(EXEEXT) -@COND_i386_efi_TRUE@am__append_5458 = -@COND_i386_efi_TRUE@am__append_5459 = $(nodist_gdb_module_SOURCES) -@COND_i386_efi_TRUE@am__append_5460 = $(nodist_gdb_module_SOURCES) \ -@COND_i386_efi_TRUE@ gdb.marker -@COND_i386_efi_TRUE@am__append_5461 = gdb.mod -@COND_i386_efi_TRUE@am__append_5462 = gdb.marker -@COND_i386_qemu_TRUE@am__append_5463 = gdb.module -@COND_i386_qemu_TRUE@am__append_5464 = gdb.module$(EXEEXT) -@COND_i386_qemu_TRUE@am__append_5465 = -@COND_i386_qemu_TRUE@am__append_5466 = $(nodist_gdb_module_SOURCES) -@COND_i386_qemu_TRUE@am__append_5467 = $(nodist_gdb_module_SOURCES) \ -@COND_i386_qemu_TRUE@ gdb.marker -@COND_i386_qemu_TRUE@am__append_5468 = gdb.mod -@COND_i386_qemu_TRUE@am__append_5469 = gdb.marker -@COND_i386_coreboot_TRUE@am__append_5470 = gdb.module -@COND_i386_coreboot_TRUE@am__append_5471 = gdb.module$(EXEEXT) -@COND_i386_coreboot_TRUE@am__append_5472 = -@COND_i386_coreboot_TRUE@am__append_5473 = $(nodist_gdb_module_SOURCES) -@COND_i386_coreboot_TRUE@am__append_5474 = \ -@COND_i386_coreboot_TRUE@ $(nodist_gdb_module_SOURCES) \ -@COND_i386_coreboot_TRUE@ gdb.marker -@COND_i386_coreboot_TRUE@am__append_5475 = gdb.mod -@COND_i386_coreboot_TRUE@am__append_5476 = gdb.marker -@COND_i386_multiboot_TRUE@am__append_5477 = gdb.module -@COND_i386_multiboot_TRUE@am__append_5478 = gdb.module$(EXEEXT) -@COND_i386_multiboot_TRUE@am__append_5479 = -@COND_i386_multiboot_TRUE@am__append_5480 = $(nodist_gdb_module_SOURCES) -@COND_i386_multiboot_TRUE@am__append_5481 = \ -@COND_i386_multiboot_TRUE@ $(nodist_gdb_module_SOURCES) \ -@COND_i386_multiboot_TRUE@ gdb.marker -@COND_i386_multiboot_TRUE@am__append_5482 = gdb.mod -@COND_i386_multiboot_TRUE@am__append_5483 = gdb.marker -@COND_i386_ieee1275_TRUE@am__append_5484 = gdb.module -@COND_i386_ieee1275_TRUE@am__append_5485 = gdb.module$(EXEEXT) -@COND_i386_ieee1275_TRUE@am__append_5486 = -@COND_i386_ieee1275_TRUE@am__append_5487 = $(nodist_gdb_module_SOURCES) -@COND_i386_ieee1275_TRUE@am__append_5488 = \ -@COND_i386_ieee1275_TRUE@ $(nodist_gdb_module_SOURCES) \ -@COND_i386_ieee1275_TRUE@ gdb.marker -@COND_i386_ieee1275_TRUE@am__append_5489 = gdb.mod -@COND_i386_ieee1275_TRUE@am__append_5490 = gdb.marker -@COND_x86_64_efi_TRUE@am__append_5491 = tpm.module -@COND_x86_64_efi_TRUE@am__append_5492 = tpm.module$(EXEEXT) -@COND_x86_64_efi_FALSE@tpm_module_DEPENDENCIES = -@COND_x86_64_efi_TRUE@am__append_5493 = -@COND_x86_64_efi_TRUE@am__append_5494 = $(nodist_tpm_module_SOURCES) -@COND_x86_64_efi_TRUE@am__append_5495 = $(nodist_tpm_module_SOURCES) \ -@COND_x86_64_efi_TRUE@ tpm.marker -@COND_x86_64_efi_TRUE@am__append_5496 = tpm.mod -@COND_x86_64_efi_TRUE@am__append_5497 = tpm.marker -@COND_i386_pc_TRUE@am__append_5498 = rdmsr.module -@COND_i386_pc_TRUE@am__append_5499 = rdmsr.module$(EXEEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_x86_64_efi_FALSE@rdmsr_module_DEPENDENCIES = -@COND_i386_pc_TRUE@am__append_5500 = -@COND_i386_pc_TRUE@am__append_5501 = $(nodist_rdmsr_module_SOURCES) -@COND_i386_pc_TRUE@am__append_5502 = $(nodist_rdmsr_module_SOURCES) \ -@COND_i386_pc_TRUE@ rdmsr.marker -@COND_i386_pc_TRUE@am__append_5503 = rdmsr.mod -@COND_i386_pc_TRUE@am__append_5504 = rdmsr.marker -@COND_i386_efi_TRUE@am__append_5505 = rdmsr.module -@COND_i386_efi_TRUE@am__append_5506 = rdmsr.module$(EXEEXT) -@COND_i386_efi_TRUE@am__append_5507 = -@COND_i386_efi_TRUE@am__append_5508 = $(nodist_rdmsr_module_SOURCES) -@COND_i386_efi_TRUE@am__append_5509 = $(nodist_rdmsr_module_SOURCES) \ -@COND_i386_efi_TRUE@ rdmsr.marker -@COND_i386_efi_TRUE@am__append_5510 = rdmsr.mod -@COND_i386_efi_TRUE@am__append_5511 = rdmsr.marker -@COND_i386_qemu_TRUE@am__append_5512 = rdmsr.module -@COND_i386_qemu_TRUE@am__append_5513 = rdmsr.module$(EXEEXT) -@COND_i386_qemu_TRUE@am__append_5514 = -@COND_i386_qemu_TRUE@am__append_5515 = $(nodist_rdmsr_module_SOURCES) -@COND_i386_qemu_TRUE@am__append_5516 = $(nodist_rdmsr_module_SOURCES) \ -@COND_i386_qemu_TRUE@ rdmsr.marker -@COND_i386_qemu_TRUE@am__append_5517 = rdmsr.mod -@COND_i386_qemu_TRUE@am__append_5518 = rdmsr.marker -@COND_i386_coreboot_TRUE@am__append_5519 = rdmsr.module -@COND_i386_coreboot_TRUE@am__append_5520 = rdmsr.module$(EXEEXT) -@COND_i386_coreboot_TRUE@am__append_5521 = -@COND_i386_coreboot_TRUE@am__append_5522 = $(nodist_rdmsr_module_SOURCES) -@COND_i386_coreboot_TRUE@am__append_5523 = \ -@COND_i386_coreboot_TRUE@ $(nodist_rdmsr_module_SOURCES) \ -@COND_i386_coreboot_TRUE@ rdmsr.marker -@COND_i386_coreboot_TRUE@am__append_5524 = rdmsr.mod -@COND_i386_coreboot_TRUE@am__append_5525 = rdmsr.marker -@COND_i386_multiboot_TRUE@am__append_5526 = rdmsr.module -@COND_i386_multiboot_TRUE@am__append_5527 = rdmsr.module$(EXEEXT) -@COND_i386_multiboot_TRUE@am__append_5528 = -@COND_i386_multiboot_TRUE@am__append_5529 = $(nodist_rdmsr_module_SOURCES) -@COND_i386_multiboot_TRUE@am__append_5530 = \ -@COND_i386_multiboot_TRUE@ $(nodist_rdmsr_module_SOURCES) \ -@COND_i386_multiboot_TRUE@ rdmsr.marker -@COND_i386_multiboot_TRUE@am__append_5531 = rdmsr.mod -@COND_i386_multiboot_TRUE@am__append_5532 = rdmsr.marker -@COND_i386_ieee1275_TRUE@am__append_5533 = rdmsr.module -@COND_i386_ieee1275_TRUE@am__append_5534 = rdmsr.module$(EXEEXT) -@COND_i386_ieee1275_TRUE@am__append_5535 = -@COND_i386_ieee1275_TRUE@am__append_5536 = $(nodist_rdmsr_module_SOURCES) -@COND_i386_ieee1275_TRUE@am__append_5537 = \ -@COND_i386_ieee1275_TRUE@ $(nodist_rdmsr_module_SOURCES) \ -@COND_i386_ieee1275_TRUE@ rdmsr.marker -@COND_i386_ieee1275_TRUE@am__append_5538 = rdmsr.mod -@COND_i386_ieee1275_TRUE@am__append_5539 = rdmsr.marker -@COND_x86_64_efi_TRUE@am__append_5540 = rdmsr.module -@COND_x86_64_efi_TRUE@am__append_5541 = rdmsr.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__append_5542 = -@COND_x86_64_efi_TRUE@am__append_5543 = $(nodist_rdmsr_module_SOURCES) -@COND_x86_64_efi_TRUE@am__append_5544 = \ -@COND_x86_64_efi_TRUE@ $(nodist_rdmsr_module_SOURCES) \ -@COND_x86_64_efi_TRUE@ rdmsr.marker -@COND_x86_64_efi_TRUE@am__append_5545 = rdmsr.mod -@COND_x86_64_efi_TRUE@am__append_5546 = rdmsr.marker -@COND_i386_pc_TRUE@am__append_5547 = wrmsr.module -@COND_i386_pc_TRUE@am__append_5548 = wrmsr.module$(EXEEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_x86_64_efi_FALSE@wrmsr_module_DEPENDENCIES = -@COND_i386_pc_TRUE@am__append_5549 = -@COND_i386_pc_TRUE@am__append_5550 = $(nodist_wrmsr_module_SOURCES) -@COND_i386_pc_TRUE@am__append_5551 = $(nodist_wrmsr_module_SOURCES) \ -@COND_i386_pc_TRUE@ wrmsr.marker -@COND_i386_pc_TRUE@am__append_5552 = wrmsr.mod -@COND_i386_pc_TRUE@am__append_5553 = wrmsr.marker -@COND_i386_efi_TRUE@am__append_5554 = wrmsr.module -@COND_i386_efi_TRUE@am__append_5555 = wrmsr.module$(EXEEXT) -@COND_i386_efi_TRUE@am__append_5556 = -@COND_i386_efi_TRUE@am__append_5557 = $(nodist_wrmsr_module_SOURCES) -@COND_i386_efi_TRUE@am__append_5558 = $(nodist_wrmsr_module_SOURCES) \ -@COND_i386_efi_TRUE@ wrmsr.marker -@COND_i386_efi_TRUE@am__append_5559 = wrmsr.mod -@COND_i386_efi_TRUE@am__append_5560 = wrmsr.marker -@COND_i386_qemu_TRUE@am__append_5561 = wrmsr.module -@COND_i386_qemu_TRUE@am__append_5562 = wrmsr.module$(EXEEXT) -@COND_i386_qemu_TRUE@am__append_5563 = -@COND_i386_qemu_TRUE@am__append_5564 = $(nodist_wrmsr_module_SOURCES) -@COND_i386_qemu_TRUE@am__append_5565 = $(nodist_wrmsr_module_SOURCES) \ -@COND_i386_qemu_TRUE@ wrmsr.marker -@COND_i386_qemu_TRUE@am__append_5566 = wrmsr.mod -@COND_i386_qemu_TRUE@am__append_5567 = wrmsr.marker -@COND_i386_coreboot_TRUE@am__append_5568 = wrmsr.module -@COND_i386_coreboot_TRUE@am__append_5569 = wrmsr.module$(EXEEXT) -@COND_i386_coreboot_TRUE@am__append_5570 = -@COND_i386_coreboot_TRUE@am__append_5571 = $(nodist_wrmsr_module_SOURCES) -@COND_i386_coreboot_TRUE@am__append_5572 = \ -@COND_i386_coreboot_TRUE@ $(nodist_wrmsr_module_SOURCES) \ -@COND_i386_coreboot_TRUE@ wrmsr.marker -@COND_i386_coreboot_TRUE@am__append_5573 = wrmsr.mod -@COND_i386_coreboot_TRUE@am__append_5574 = wrmsr.marker -@COND_i386_multiboot_TRUE@am__append_5575 = wrmsr.module -@COND_i386_multiboot_TRUE@am__append_5576 = wrmsr.module$(EXEEXT) -@COND_i386_multiboot_TRUE@am__append_5577 = -@COND_i386_multiboot_TRUE@am__append_5578 = $(nodist_wrmsr_module_SOURCES) -@COND_i386_multiboot_TRUE@am__append_5579 = \ -@COND_i386_multiboot_TRUE@ $(nodist_wrmsr_module_SOURCES) \ -@COND_i386_multiboot_TRUE@ wrmsr.marker -@COND_i386_multiboot_TRUE@am__append_5580 = wrmsr.mod -@COND_i386_multiboot_TRUE@am__append_5581 = wrmsr.marker -@COND_i386_ieee1275_TRUE@am__append_5582 = wrmsr.module -@COND_i386_ieee1275_TRUE@am__append_5583 = wrmsr.module$(EXEEXT) -@COND_i386_ieee1275_TRUE@am__append_5584 = -@COND_i386_ieee1275_TRUE@am__append_5585 = $(nodist_wrmsr_module_SOURCES) -@COND_i386_ieee1275_TRUE@am__append_5586 = \ -@COND_i386_ieee1275_TRUE@ $(nodist_wrmsr_module_SOURCES) \ -@COND_i386_ieee1275_TRUE@ wrmsr.marker -@COND_i386_ieee1275_TRUE@am__append_5587 = wrmsr.mod -@COND_i386_ieee1275_TRUE@am__append_5588 = wrmsr.marker -@COND_x86_64_efi_TRUE@am__append_5589 = wrmsr.module -@COND_x86_64_efi_TRUE@am__append_5590 = wrmsr.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__append_5591 = -@COND_x86_64_efi_TRUE@am__append_5592 = $(nodist_wrmsr_module_SOURCES) -@COND_x86_64_efi_TRUE@am__append_5593 = \ -@COND_x86_64_efi_TRUE@ $(nodist_wrmsr_module_SOURCES) \ -@COND_x86_64_efi_TRUE@ wrmsr.marker -@COND_x86_64_efi_TRUE@am__append_5594 = wrmsr.mod -@COND_x86_64_efi_TRUE@am__append_5595 = wrmsr.marker -@COND_emu_TRUE@am__append_5596 = kernel.exec -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_FALSE@@COND_x86_64_efi_FALSE@@COND_x86_64_xen_FALSE@kernel_exec_DEPENDENCIES = -@COND_emu_TRUE@am__append_5597 = video/sm712_init.c video/sis315_init.c kern/arm/cache.S osdep/unix/exec.c osdep/unix/emuconsole.c osdep/windows/emuconsole.c osdep/unix/dl.c osdep/windows/dl.c osdep/linux/emunet.c osdep/basic/emunet.c osdep/unix/cputime.c osdep/windows/cputime.c kern/i386/int.S kern/i386/realmode.S boot/i386/pc/lzma_decode.S kern/mips/cache_flush.S -@COND_emu_TRUE@am__append_5598 = $(nodist_kernel_exec_SOURCES) -@COND_emu_TRUE@am__append_5599 = $(nodist_kernel_exec_SOURCES) \ -@COND_emu_TRUE@ kernel.img -@COND_emu_TRUE@am__append_5600 = kernel.img -@COND_i386_pc_TRUE@am__append_5601 = kernel.exec -@COND_i386_pc_TRUE@am__append_5602 = video/sm712_init.c video/sis315_init.c kern/arm/cache.S osdep/unix/exec.c osdep/unix/emuconsole.c osdep/windows/emuconsole.c osdep/unix/dl.c osdep/windows/dl.c osdep/linux/emunet.c osdep/basic/emunet.c osdep/unix/cputime.c osdep/windows/cputime.c kern/i386/int.S kern/i386/realmode.S boot/i386/pc/lzma_decode.S kern/mips/cache_flush.S -@COND_i386_pc_TRUE@am__append_5603 = $(nodist_kernel_exec_SOURCES) -@COND_i386_pc_TRUE@am__append_5604 = $(nodist_kernel_exec_SOURCES) \ -@COND_i386_pc_TRUE@ kernel.img -@COND_i386_pc_TRUE@am__append_5605 = kernel.img -@COND_i386_efi_TRUE@am__append_5606 = kernel.exec -@COND_i386_efi_TRUE@am__append_5607 = video/sm712_init.c video/sis315_init.c kern/arm/cache.S osdep/unix/exec.c osdep/unix/emuconsole.c osdep/windows/emuconsole.c osdep/unix/dl.c osdep/windows/dl.c osdep/linux/emunet.c osdep/basic/emunet.c osdep/unix/cputime.c osdep/windows/cputime.c kern/i386/int.S kern/i386/realmode.S boot/i386/pc/lzma_decode.S kern/mips/cache_flush.S -@COND_i386_efi_TRUE@am__append_5608 = $(nodist_kernel_exec_SOURCES) -@COND_i386_efi_TRUE@am__append_5609 = $(nodist_kernel_exec_SOURCES) \ -@COND_i386_efi_TRUE@ kernel.img -@COND_i386_efi_TRUE@am__append_5610 = kernel.img -@COND_i386_qemu_TRUE@am__append_5611 = kernel.exec -@COND_i386_qemu_TRUE@am__append_5612 = video/sm712_init.c video/sis315_init.c kern/arm/cache.S osdep/unix/exec.c osdep/unix/emuconsole.c osdep/windows/emuconsole.c osdep/unix/dl.c osdep/windows/dl.c osdep/linux/emunet.c osdep/basic/emunet.c osdep/unix/cputime.c osdep/windows/cputime.c kern/i386/int.S kern/i386/realmode.S boot/i386/pc/lzma_decode.S kern/mips/cache_flush.S -@COND_i386_qemu_TRUE@am__append_5613 = $(nodist_kernel_exec_SOURCES) -@COND_i386_qemu_TRUE@am__append_5614 = $(nodist_kernel_exec_SOURCES) \ -@COND_i386_qemu_TRUE@ kernel.img -@COND_i386_qemu_TRUE@am__append_5615 = kernel.img -@COND_i386_coreboot_TRUE@am__append_5616 = kernel.exec -@COND_i386_coreboot_TRUE@am__append_5617 = video/sm712_init.c video/sis315_init.c kern/arm/cache.S osdep/unix/exec.c osdep/unix/emuconsole.c osdep/windows/emuconsole.c osdep/unix/dl.c osdep/windows/dl.c osdep/linux/emunet.c osdep/basic/emunet.c osdep/unix/cputime.c osdep/windows/cputime.c kern/i386/int.S kern/i386/realmode.S boot/i386/pc/lzma_decode.S kern/mips/cache_flush.S -@COND_i386_coreboot_TRUE@am__append_5618 = $(nodist_kernel_exec_SOURCES) -@COND_i386_coreboot_TRUE@am__append_5619 = \ -@COND_i386_coreboot_TRUE@ $(nodist_kernel_exec_SOURCES) \ -@COND_i386_coreboot_TRUE@ kernel.img -@COND_i386_coreboot_TRUE@am__append_5620 = kernel.img -@COND_i386_multiboot_TRUE@am__append_5621 = kernel.exec -@COND_i386_multiboot_TRUE@am__append_5622 = video/sm712_init.c video/sis315_init.c kern/arm/cache.S osdep/unix/exec.c osdep/unix/emuconsole.c osdep/windows/emuconsole.c osdep/unix/dl.c osdep/windows/dl.c osdep/linux/emunet.c osdep/basic/emunet.c osdep/unix/cputime.c osdep/windows/cputime.c kern/i386/int.S kern/i386/realmode.S boot/i386/pc/lzma_decode.S kern/mips/cache_flush.S -@COND_i386_multiboot_TRUE@am__append_5623 = $(nodist_kernel_exec_SOURCES) -@COND_i386_multiboot_TRUE@am__append_5624 = \ -@COND_i386_multiboot_TRUE@ $(nodist_kernel_exec_SOURCES) \ -@COND_i386_multiboot_TRUE@ kernel.img -@COND_i386_multiboot_TRUE@am__append_5625 = kernel.img -@COND_i386_ieee1275_TRUE@am__append_5626 = kernel.exec -@COND_i386_ieee1275_TRUE@am__append_5627 = video/sm712_init.c video/sis315_init.c kern/arm/cache.S osdep/unix/exec.c osdep/unix/emuconsole.c osdep/windows/emuconsole.c osdep/unix/dl.c osdep/windows/dl.c osdep/linux/emunet.c osdep/basic/emunet.c osdep/unix/cputime.c osdep/windows/cputime.c kern/i386/int.S kern/i386/realmode.S boot/i386/pc/lzma_decode.S kern/mips/cache_flush.S -@COND_i386_ieee1275_TRUE@am__append_5628 = $(nodist_kernel_exec_SOURCES) -@COND_i386_ieee1275_TRUE@am__append_5629 = \ -@COND_i386_ieee1275_TRUE@ $(nodist_kernel_exec_SOURCES) \ -@COND_i386_ieee1275_TRUE@ kernel.img -@COND_i386_ieee1275_TRUE@am__append_5630 = kernel.img -@COND_x86_64_efi_TRUE@am__append_5631 = kernel.exec -@COND_x86_64_efi_TRUE@am__append_5632 = video/sm712_init.c video/sis315_init.c kern/arm/cache.S osdep/unix/exec.c osdep/unix/emuconsole.c osdep/windows/emuconsole.c osdep/unix/dl.c osdep/windows/dl.c osdep/linux/emunet.c osdep/basic/emunet.c osdep/unix/cputime.c osdep/windows/cputime.c kern/i386/int.S kern/i386/realmode.S boot/i386/pc/lzma_decode.S kern/mips/cache_flush.S -@COND_x86_64_efi_TRUE@am__append_5633 = $(nodist_kernel_exec_SOURCES) -@COND_x86_64_efi_TRUE@am__append_5634 = $(nodist_kernel_exec_SOURCES) \ -@COND_x86_64_efi_TRUE@ kernel.img -@COND_x86_64_efi_TRUE@am__append_5635 = kernel.img -@COND_i386_xen_TRUE@am__append_5636 = kernel.exec -@COND_i386_xen_TRUE@am__append_5637 = video/sm712_init.c video/sis315_init.c kern/arm/cache.S osdep/unix/exec.c osdep/unix/emuconsole.c osdep/windows/emuconsole.c osdep/unix/dl.c osdep/windows/dl.c osdep/linux/emunet.c osdep/basic/emunet.c osdep/unix/cputime.c osdep/windows/cputime.c kern/i386/int.S kern/i386/realmode.S boot/i386/pc/lzma_decode.S kern/mips/cache_flush.S -@COND_i386_xen_TRUE@am__append_5638 = $(nodist_kernel_exec_SOURCES) -@COND_i386_xen_TRUE@am__append_5639 = $(nodist_kernel_exec_SOURCES) \ -@COND_i386_xen_TRUE@ kernel.img -@COND_i386_xen_TRUE@am__append_5640 = kernel.img -@COND_x86_64_xen_TRUE@am__append_5641 = kernel.exec -@COND_x86_64_xen_TRUE@am__append_5642 = video/sm712_init.c video/sis315_init.c kern/arm/cache.S osdep/unix/exec.c osdep/unix/emuconsole.c osdep/windows/emuconsole.c osdep/unix/dl.c osdep/windows/dl.c osdep/linux/emunet.c osdep/basic/emunet.c osdep/unix/cputime.c osdep/windows/cputime.c kern/i386/int.S kern/i386/realmode.S boot/i386/pc/lzma_decode.S kern/mips/cache_flush.S -@COND_x86_64_xen_TRUE@am__append_5643 = $(nodist_kernel_exec_SOURCES) -@COND_x86_64_xen_TRUE@am__append_5644 = $(nodist_kernel_exec_SOURCES) \ -@COND_x86_64_xen_TRUE@ kernel.img -@COND_x86_64_xen_TRUE@am__append_5645 = kernel.img -@COND_i386_xen_pvh_TRUE@am__append_5646 = kernel.exec -@COND_i386_xen_pvh_TRUE@am__append_5647 = video/sm712_init.c video/sis315_init.c kern/arm/cache.S osdep/unix/exec.c osdep/unix/emuconsole.c osdep/windows/emuconsole.c osdep/unix/dl.c osdep/windows/dl.c osdep/linux/emunet.c osdep/basic/emunet.c osdep/unix/cputime.c osdep/windows/cputime.c kern/i386/int.S kern/i386/realmode.S boot/i386/pc/lzma_decode.S kern/mips/cache_flush.S -@COND_i386_xen_pvh_TRUE@am__append_5648 = $(nodist_kernel_exec_SOURCES) -@COND_i386_xen_pvh_TRUE@am__append_5649 = \ -@COND_i386_xen_pvh_TRUE@ $(nodist_kernel_exec_SOURCES) \ -@COND_i386_xen_pvh_TRUE@ kernel.img -@COND_i386_xen_pvh_TRUE@am__append_5650 = kernel.img -@COND_mips_loongson_TRUE@am__append_5651 = kernel.exec -@COND_mips_loongson_TRUE@am__append_5652 = video/sm712_init.c video/sis315_init.c kern/arm/cache.S osdep/unix/exec.c osdep/unix/emuconsole.c osdep/windows/emuconsole.c osdep/unix/dl.c osdep/windows/dl.c osdep/linux/emunet.c osdep/basic/emunet.c osdep/unix/cputime.c osdep/windows/cputime.c kern/i386/int.S kern/i386/realmode.S boot/i386/pc/lzma_decode.S kern/mips/cache_flush.S -@COND_mips_loongson_TRUE@am__append_5653 = $(nodist_kernel_exec_SOURCES) -@COND_mips_loongson_TRUE@am__append_5654 = \ -@COND_mips_loongson_TRUE@ $(nodist_kernel_exec_SOURCES) \ -@COND_mips_loongson_TRUE@ kernel.img -@COND_mips_loongson_TRUE@am__append_5655 = kernel.img -@COND_sparc64_ieee1275_TRUE@am__append_5656 = kernel.exec -@COND_sparc64_ieee1275_TRUE@am__append_5657 = video/sm712_init.c video/sis315_init.c kern/arm/cache.S osdep/unix/exec.c osdep/unix/emuconsole.c osdep/windows/emuconsole.c osdep/unix/dl.c osdep/windows/dl.c osdep/linux/emunet.c osdep/basic/emunet.c osdep/unix/cputime.c osdep/windows/cputime.c kern/i386/int.S kern/i386/realmode.S boot/i386/pc/lzma_decode.S kern/mips/cache_flush.S -@COND_sparc64_ieee1275_TRUE@am__append_5658 = $(nodist_kernel_exec_SOURCES) -@COND_sparc64_ieee1275_TRUE@am__append_5659 = \ -@COND_sparc64_ieee1275_TRUE@ $(nodist_kernel_exec_SOURCES) \ -@COND_sparc64_ieee1275_TRUE@ kernel.img -@COND_sparc64_ieee1275_TRUE@am__append_5660 = kernel.img -@COND_powerpc_ieee1275_TRUE@am__append_5661 = kernel.exec -@COND_powerpc_ieee1275_TRUE@am__append_5662 = video/sm712_init.c video/sis315_init.c kern/arm/cache.S osdep/unix/exec.c osdep/unix/emuconsole.c osdep/windows/emuconsole.c osdep/unix/dl.c osdep/windows/dl.c osdep/linux/emunet.c osdep/basic/emunet.c osdep/unix/cputime.c osdep/windows/cputime.c kern/i386/int.S kern/i386/realmode.S boot/i386/pc/lzma_decode.S kern/mips/cache_flush.S -@COND_powerpc_ieee1275_TRUE@am__append_5663 = $(nodist_kernel_exec_SOURCES) -@COND_powerpc_ieee1275_TRUE@am__append_5664 = \ -@COND_powerpc_ieee1275_TRUE@ $(nodist_kernel_exec_SOURCES) \ -@COND_powerpc_ieee1275_TRUE@ kernel.img -@COND_powerpc_ieee1275_TRUE@am__append_5665 = kernel.img -@COND_mips_arc_TRUE@am__append_5666 = kernel.exec -@COND_mips_arc_TRUE@am__append_5667 = video/sm712_init.c video/sis315_init.c kern/arm/cache.S osdep/unix/exec.c osdep/unix/emuconsole.c osdep/windows/emuconsole.c osdep/unix/dl.c osdep/windows/dl.c osdep/linux/emunet.c osdep/basic/emunet.c osdep/unix/cputime.c osdep/windows/cputime.c kern/i386/int.S kern/i386/realmode.S boot/i386/pc/lzma_decode.S kern/mips/cache_flush.S -@COND_mips_arc_TRUE@am__append_5668 = $(nodist_kernel_exec_SOURCES) -@COND_mips_arc_TRUE@am__append_5669 = $(nodist_kernel_exec_SOURCES) \ -@COND_mips_arc_TRUE@ kernel.img -@COND_mips_arc_TRUE@am__append_5670 = kernel.img -@COND_ia64_efi_TRUE@am__append_5671 = kernel.exec -@COND_ia64_efi_TRUE@am__append_5672 = video/sm712_init.c video/sis315_init.c kern/arm/cache.S osdep/unix/exec.c osdep/unix/emuconsole.c osdep/windows/emuconsole.c osdep/unix/dl.c osdep/windows/dl.c osdep/linux/emunet.c osdep/basic/emunet.c osdep/unix/cputime.c osdep/windows/cputime.c kern/i386/int.S kern/i386/realmode.S boot/i386/pc/lzma_decode.S kern/mips/cache_flush.S -@COND_ia64_efi_TRUE@am__append_5673 = $(nodist_kernel_exec_SOURCES) -@COND_ia64_efi_TRUE@am__append_5674 = $(nodist_kernel_exec_SOURCES) \ -@COND_ia64_efi_TRUE@ kernel.img -@COND_ia64_efi_TRUE@am__append_5675 = kernel.img -@COND_mips_qemu_mips_TRUE@am__append_5676 = kernel.exec -@COND_mips_qemu_mips_TRUE@am__append_5677 = video/sm712_init.c video/sis315_init.c kern/arm/cache.S osdep/unix/exec.c osdep/unix/emuconsole.c osdep/windows/emuconsole.c osdep/unix/dl.c osdep/windows/dl.c osdep/linux/emunet.c osdep/basic/emunet.c osdep/unix/cputime.c osdep/windows/cputime.c kern/i386/int.S kern/i386/realmode.S boot/i386/pc/lzma_decode.S kern/mips/cache_flush.S -@COND_mips_qemu_mips_TRUE@am__append_5678 = $(nodist_kernel_exec_SOURCES) -@COND_mips_qemu_mips_TRUE@am__append_5679 = \ -@COND_mips_qemu_mips_TRUE@ $(nodist_kernel_exec_SOURCES) \ -@COND_mips_qemu_mips_TRUE@ kernel.img -@COND_mips_qemu_mips_TRUE@am__append_5680 = kernel.img -@COND_arm_uboot_TRUE@am__append_5681 = kernel.exec -@COND_arm_uboot_TRUE@am__append_5682 = video/sm712_init.c video/sis315_init.c kern/arm/cache.S osdep/unix/exec.c osdep/unix/emuconsole.c osdep/windows/emuconsole.c osdep/unix/dl.c osdep/windows/dl.c osdep/linux/emunet.c osdep/basic/emunet.c osdep/unix/cputime.c osdep/windows/cputime.c kern/i386/int.S kern/i386/realmode.S boot/i386/pc/lzma_decode.S kern/mips/cache_flush.S -@COND_arm_uboot_TRUE@am__append_5683 = $(nodist_kernel_exec_SOURCES) -@COND_arm_uboot_TRUE@am__append_5684 = $(nodist_kernel_exec_SOURCES) \ -@COND_arm_uboot_TRUE@ kernel.img -@COND_arm_uboot_TRUE@am__append_5685 = kernel.img -@COND_arm_efi_TRUE@am__append_5686 = kernel.exec -@COND_arm_efi_TRUE@am__append_5687 = video/sm712_init.c video/sis315_init.c kern/arm/cache.S osdep/unix/exec.c osdep/unix/emuconsole.c osdep/windows/emuconsole.c osdep/unix/dl.c osdep/windows/dl.c osdep/linux/emunet.c osdep/basic/emunet.c osdep/unix/cputime.c osdep/windows/cputime.c kern/i386/int.S kern/i386/realmode.S boot/i386/pc/lzma_decode.S kern/mips/cache_flush.S -@COND_arm_efi_TRUE@am__append_5688 = $(nodist_kernel_exec_SOURCES) -@COND_arm_efi_TRUE@am__append_5689 = $(nodist_kernel_exec_SOURCES) \ -@COND_arm_efi_TRUE@ kernel.img -@COND_arm_efi_TRUE@am__append_5690 = kernel.img -@COND_arm64_efi_TRUE@am__append_5691 = kernel.exec -@COND_arm64_efi_TRUE@am__append_5692 = video/sm712_init.c video/sis315_init.c kern/arm/cache.S osdep/unix/exec.c osdep/unix/emuconsole.c osdep/windows/emuconsole.c osdep/unix/dl.c osdep/windows/dl.c osdep/linux/emunet.c osdep/basic/emunet.c osdep/unix/cputime.c osdep/windows/cputime.c kern/i386/int.S kern/i386/realmode.S boot/i386/pc/lzma_decode.S kern/mips/cache_flush.S -@COND_arm64_efi_TRUE@am__append_5693 = $(nodist_kernel_exec_SOURCES) -@COND_arm64_efi_TRUE@am__append_5694 = $(nodist_kernel_exec_SOURCES) \ -@COND_arm64_efi_TRUE@ kernel.img -@COND_arm64_efi_TRUE@am__append_5695 = kernel.img -@COND_arm_coreboot_TRUE@am__append_5696 = kernel.exec -@COND_arm_coreboot_TRUE@am__append_5697 = video/sm712_init.c video/sis315_init.c kern/arm/cache.S osdep/unix/exec.c osdep/unix/emuconsole.c osdep/windows/emuconsole.c osdep/unix/dl.c osdep/windows/dl.c osdep/linux/emunet.c osdep/basic/emunet.c osdep/unix/cputime.c osdep/windows/cputime.c kern/i386/int.S kern/i386/realmode.S boot/i386/pc/lzma_decode.S kern/mips/cache_flush.S -@COND_arm_coreboot_TRUE@am__append_5698 = $(nodist_kernel_exec_SOURCES) -@COND_arm_coreboot_TRUE@am__append_5699 = \ -@COND_arm_coreboot_TRUE@ $(nodist_kernel_exec_SOURCES) \ -@COND_arm_coreboot_TRUE@ kernel.img -@COND_arm_coreboot_TRUE@am__append_5700 = kernel.img -@COND_riscv32_efi_TRUE@am__append_5701 = kernel.exec -@COND_riscv32_efi_TRUE@am__append_5702 = video/sm712_init.c video/sis315_init.c kern/arm/cache.S osdep/unix/exec.c osdep/unix/emuconsole.c osdep/windows/emuconsole.c osdep/unix/dl.c osdep/windows/dl.c osdep/linux/emunet.c osdep/basic/emunet.c osdep/unix/cputime.c osdep/windows/cputime.c kern/i386/int.S kern/i386/realmode.S boot/i386/pc/lzma_decode.S kern/mips/cache_flush.S -@COND_riscv32_efi_TRUE@am__append_5703 = $(nodist_kernel_exec_SOURCES) -@COND_riscv32_efi_TRUE@am__append_5704 = \ -@COND_riscv32_efi_TRUE@ $(nodist_kernel_exec_SOURCES) \ -@COND_riscv32_efi_TRUE@ kernel.img -@COND_riscv32_efi_TRUE@am__append_5705 = kernel.img -@COND_riscv64_efi_TRUE@am__append_5706 = kernel.exec -@COND_riscv64_efi_TRUE@am__append_5707 = video/sm712_init.c video/sis315_init.c kern/arm/cache.S osdep/unix/exec.c osdep/unix/emuconsole.c osdep/windows/emuconsole.c osdep/unix/dl.c osdep/windows/dl.c osdep/linux/emunet.c osdep/basic/emunet.c osdep/unix/cputime.c osdep/windows/cputime.c kern/i386/int.S kern/i386/realmode.S boot/i386/pc/lzma_decode.S kern/mips/cache_flush.S -@COND_riscv64_efi_TRUE@am__append_5708 = $(nodist_kernel_exec_SOURCES) -@COND_riscv64_efi_TRUE@am__append_5709 = \ -@COND_riscv64_efi_TRUE@ $(nodist_kernel_exec_SOURCES) \ -@COND_riscv64_efi_TRUE@ kernel.img -@COND_riscv64_efi_TRUE@am__append_5710 = kernel.img -@COND_i386_pc_TRUE@am__append_5711 = boot.image -@COND_i386_pc_TRUE@am__append_5712 = -@COND_i386_pc_TRUE@am__append_5713 = $(nodist_boot_image_SOURCES) -@COND_i386_pc_TRUE@am__append_5714 = $(nodist_boot_image_SOURCES) \ -@COND_i386_pc_TRUE@ boot.img -@COND_i386_pc_TRUE@am__append_5715 = boot.img -@COND_i386_qemu_TRUE@am__append_5716 = boot.image -@COND_i386_qemu_TRUE@am__append_5717 = -@COND_i386_qemu_TRUE@am__append_5718 = $(nodist_boot_image_SOURCES) -@COND_i386_qemu_TRUE@am__append_5719 = $(nodist_boot_image_SOURCES) \ -@COND_i386_qemu_TRUE@ boot.img -@COND_i386_qemu_TRUE@am__append_5720 = boot.img -@COND_sparc64_ieee1275_TRUE@am__append_5721 = boot.image -@COND_sparc64_ieee1275_TRUE@am__append_5722 = -@COND_sparc64_ieee1275_TRUE@am__append_5723 = $(nodist_boot_image_SOURCES) -@COND_sparc64_ieee1275_TRUE@am__append_5724 = \ -@COND_sparc64_ieee1275_TRUE@ $(nodist_boot_image_SOURCES) \ -@COND_sparc64_ieee1275_TRUE@ boot.img -@COND_sparc64_ieee1275_TRUE@am__append_5725 = boot.img -@COND_i386_pc_TRUE@am__append_5726 = boot_hybrid.image cdboot.image -@COND_i386_pc_TRUE@am__append_5727 = -@COND_i386_pc_TRUE@am__append_5728 = \ -@COND_i386_pc_TRUE@ $(nodist_boot_hybrid_image_SOURCES) \ -@COND_i386_pc_TRUE@ $(nodist_cdboot_image_SOURCES) -@COND_i386_pc_TRUE@am__append_5729 = \ -@COND_i386_pc_TRUE@ $(nodist_boot_hybrid_image_SOURCES) \ -@COND_i386_pc_TRUE@ boot_hybrid.img \ -@COND_i386_pc_TRUE@ $(nodist_cdboot_image_SOURCES) cdboot.img -@COND_i386_pc_TRUE@am__append_5730 = boot_hybrid.img cdboot.img -@COND_sparc64_ieee1275_TRUE@am__append_5731 = cdboot.image -@COND_sparc64_ieee1275_TRUE@am__append_5732 = -@COND_sparc64_ieee1275_TRUE@am__append_5733 = $(nodist_cdboot_image_SOURCES) -@COND_sparc64_ieee1275_TRUE@am__append_5734 = \ -@COND_sparc64_ieee1275_TRUE@ $(nodist_cdboot_image_SOURCES) \ -@COND_sparc64_ieee1275_TRUE@ cdboot.img -@COND_sparc64_ieee1275_TRUE@am__append_5735 = cdboot.img -@COND_i386_pc_TRUE@am__append_5736 = pxeboot.image diskboot.image -@COND_i386_pc_TRUE@am__append_5737 = -@COND_i386_pc_TRUE@am__append_5738 = $(nodist_pxeboot_image_SOURCES) \ -@COND_i386_pc_TRUE@ $(nodist_diskboot_image_SOURCES) -@COND_i386_pc_TRUE@am__append_5739 = $(nodist_pxeboot_image_SOURCES) \ -@COND_i386_pc_TRUE@ pxeboot.img \ -@COND_i386_pc_TRUE@ $(nodist_diskboot_image_SOURCES) \ -@COND_i386_pc_TRUE@ diskboot.img -@COND_i386_pc_TRUE@am__append_5740 = pxeboot.img diskboot.img -@COND_sparc64_ieee1275_TRUE@am__append_5741 = diskboot.image -@COND_sparc64_ieee1275_TRUE@am__append_5742 = -@COND_sparc64_ieee1275_TRUE@am__append_5743 = $(nodist_diskboot_image_SOURCES) -@COND_sparc64_ieee1275_TRUE@am__append_5744 = \ -@COND_sparc64_ieee1275_TRUE@ $(nodist_diskboot_image_SOURCES) \ -@COND_sparc64_ieee1275_TRUE@ diskboot.img -@COND_sparc64_ieee1275_TRUE@am__append_5745 = diskboot.img -@COND_i386_pc_TRUE@am__append_5746 = lnxboot.image -@COND_i386_pc_TRUE@am__append_5747 = -@COND_i386_pc_TRUE@am__append_5748 = $(nodist_lnxboot_image_SOURCES) -@COND_i386_pc_TRUE@am__append_5749 = $(nodist_lnxboot_image_SOURCES) \ -@COND_i386_pc_TRUE@ lnxboot.img -@COND_i386_pc_TRUE@am__append_5750 = lnxboot.img -@COND_mips_loongson_TRUE@am__append_5751 = xz_decompress.image -@COND_mips_loongson_TRUE@am__append_5752 = -@COND_mips_loongson_TRUE@am__append_5753 = $(nodist_xz_decompress_image_SOURCES) -@COND_mips_loongson_TRUE@am__append_5754 = $(nodist_xz_decompress_image_SOURCES) \ -@COND_mips_loongson_TRUE@ xz_decompress.img -@COND_mips_loongson_TRUE@am__append_5755 = xz_decompress.img -@COND_mips_arc_TRUE@am__append_5756 = xz_decompress.image -@COND_mips_arc_TRUE@am__append_5757 = -@COND_mips_arc_TRUE@am__append_5758 = $(nodist_xz_decompress_image_SOURCES) -@COND_mips_arc_TRUE@am__append_5759 = \ -@COND_mips_arc_TRUE@ $(nodist_xz_decompress_image_SOURCES) \ -@COND_mips_arc_TRUE@ xz_decompress.img -@COND_mips_arc_TRUE@am__append_5760 = xz_decompress.img -@COND_mips_qemu_mips_TRUE@am__append_5761 = xz_decompress.image -@COND_mips_qemu_mips_TRUE@am__append_5762 = -@COND_mips_qemu_mips_TRUE@am__append_5763 = $(nodist_xz_decompress_image_SOURCES) -@COND_mips_qemu_mips_TRUE@am__append_5764 = $(nodist_xz_decompress_image_SOURCES) \ -@COND_mips_qemu_mips_TRUE@ xz_decompress.img -@COND_mips_qemu_mips_TRUE@am__append_5765 = xz_decompress.img -@COND_mips_loongson_TRUE@am__append_5766 = none_decompress.image -@COND_mips_loongson_TRUE@am__append_5767 = -@COND_mips_loongson_TRUE@am__append_5768 = $(nodist_none_decompress_image_SOURCES) -@COND_mips_loongson_TRUE@am__append_5769 = $(nodist_none_decompress_image_SOURCES) \ -@COND_mips_loongson_TRUE@ none_decompress.img -@COND_mips_loongson_TRUE@am__append_5770 = none_decompress.img -@COND_mips_arc_TRUE@am__append_5771 = none_decompress.image -@COND_mips_arc_TRUE@am__append_5772 = -@COND_mips_arc_TRUE@am__append_5773 = $(nodist_none_decompress_image_SOURCES) -@COND_mips_arc_TRUE@am__append_5774 = \ -@COND_mips_arc_TRUE@ $(nodist_none_decompress_image_SOURCES) \ -@COND_mips_arc_TRUE@ none_decompress.img -@COND_mips_arc_TRUE@am__append_5775 = none_decompress.img -@COND_mips_qemu_mips_TRUE@am__append_5776 = none_decompress.image -@COND_mips_qemu_mips_TRUE@am__append_5777 = -@COND_mips_qemu_mips_TRUE@am__append_5778 = $(nodist_none_decompress_image_SOURCES) -@COND_mips_qemu_mips_TRUE@am__append_5779 = $(nodist_none_decompress_image_SOURCES) \ -@COND_mips_qemu_mips_TRUE@ none_decompress.img -@COND_mips_qemu_mips_TRUE@am__append_5780 = none_decompress.img -@COND_i386_pc_TRUE@am__append_5781 = lzma_decompress.image -@COND_i386_pc_TRUE@am__append_5782 = -@COND_i386_pc_TRUE@am__append_5783 = $(nodist_lzma_decompress_image_SOURCES) -@COND_i386_pc_TRUE@am__append_5784 = \ -@COND_i386_pc_TRUE@ $(nodist_lzma_decompress_image_SOURCES) \ -@COND_i386_pc_TRUE@ lzma_decompress.img -@COND_i386_pc_TRUE@am__append_5785 = lzma_decompress.img -@COND_mips_loongson_TRUE@am__append_5786 = fwstart.image \ -@COND_mips_loongson_TRUE@ fwstart_fuloong2f.image -@COND_mips_loongson_TRUE@am__append_5787 = -@COND_mips_loongson_TRUE@am__append_5788 = \ -@COND_mips_loongson_TRUE@ $(nodist_fwstart_image_SOURCES) \ -@COND_mips_loongson_TRUE@ $(nodist_fwstart_fuloong2f_image_SOURCES) -@COND_mips_loongson_TRUE@am__append_5789 = \ -@COND_mips_loongson_TRUE@ $(nodist_fwstart_image_SOURCES) \ -@COND_mips_loongson_TRUE@ fwstart.img \ -@COND_mips_loongson_TRUE@ $(nodist_fwstart_fuloong2f_image_SOURCES) \ -@COND_mips_loongson_TRUE@ fwstart_fuloong2f.img -@COND_mips_loongson_TRUE@am__append_5790 = fwstart.img \ -@COND_mips_loongson_TRUE@ fwstart_fuloong2f.img -@COND_emu_TRUE@am__append_5791 = grub-emu grub-emu-lite -@COND_MAN_PAGES_TRUE@@COND_emu_TRUE@am__append_5792 = grub-emu.1 -@COND_MAN_PAGES_TRUE@@COND_emu_TRUE@am__append_5793 = grub-emu.1 -@COND_emu_TRUE@am__append_5794 = -@COND_emu_TRUE@am__append_5795 = $(nodist_grub_emu_SOURCES) \ -@COND_emu_TRUE@ $(nodist_grub_emu_lite_SOURCES) -@COND_emu_TRUE@am__append_5796 = $(nodist_grub_emu_SOURCES) \ -@COND_emu_TRUE@ $(nodist_grub_emu_lite_SOURCES) -@COND_powerpc_ieee1275_TRUE@am__append_5797 = grub.chrp bootinfo.txt -@COND_powerpc_ieee1275_TRUE@am__append_5798 = grub.chrp bootinfo.txt -@COND_powerpc_ieee1275_TRUE@am__append_5799 = -@COND_powerpc_ieee1275_TRUE@am__append_5800 = \ -@COND_powerpc_ieee1275_TRUE@ boot/powerpc/grub.chrp.in \ -@COND_powerpc_ieee1275_TRUE@ boot/powerpc/bootinfo.txt.in -@COND_emu_TRUE@am__append_5801 = $(top_srcdir)/include/grub/compiler-rt-emu.h -@COND_emu_FALSE@am__append_5802 = $(top_srcdir)/include/grub/compiler-rt.h -@COND_i386_pc_TRUE@am__append_5803 = $(top_builddir)/include/grub/machine/kernel.h \ -@COND_i386_pc_TRUE@ $(top_builddir)/include/grub/machine/pxe.h \ -@COND_i386_pc_TRUE@ $(top_builddir)/include/grub/machine/int.h \ -@COND_i386_pc_TRUE@ $(top_srcdir)/include/grub/i386/tsc.h -@COND_i386_xen_pvh_TRUE@am__append_5804 = $(top_builddir)/include/grub/machine/kernel.h \ -@COND_i386_xen_pvh_TRUE@ $(top_builddir)/include/grub/machine/int.h \ -@COND_i386_xen_pvh_TRUE@ $(top_srcdir)/include/grub/i386/tsc.h \ -@COND_i386_xen_pvh_TRUE@ $(top_srcdir)/include/grub/terminfo.h \ -@COND_i386_xen_pvh_TRUE@ $(top_srcdir)/include/grub/extcmd.h \ -@COND_i386_xen_pvh_TRUE@ $(top_srcdir)/include/grub/loader.h \ -@COND_i386_xen_pvh_TRUE@ $(top_srcdir)/include/grub/lib/arg.h \ -@COND_i386_xen_pvh_TRUE@ $(top_srcdir)/include/grub/xen.h \ -@COND_i386_xen_pvh_TRUE@ $(top_srcdir)/include/grub/i386/xen/hypercall.h -@COND_i386_efi_TRUE@am__append_5805 = $(top_builddir)/include/grub/machine/kernel.h \ -@COND_i386_efi_TRUE@ $(top_srcdir)/include/grub/efi/efi.h \ -@COND_i386_efi_TRUE@ $(top_srcdir)/include/grub/efi/disk.h \ -@COND_i386_efi_TRUE@ $(top_srcdir)/include/grub/i386/tsc.h \ -@COND_i386_efi_TRUE@ $(top_srcdir)/include/grub/acpi.h \ -@COND_i386_efi_TRUE@ $(top_srcdir)/include/grub/pci.h \ -@COND_i386_efi_TRUE@ $(top_srcdir)/include/grub/i386/pmtimer.h -@COND_i386_coreboot_TRUE@am__append_5806 = $(top_builddir)/include/grub/machine/kernel.h \ -@COND_i386_coreboot_TRUE@ $(top_srcdir)/include/grub/i386/tsc.h \ -@COND_i386_coreboot_TRUE@ $(top_srcdir)/include/grub/coreboot/lbio.h \ -@COND_i386_coreboot_TRUE@ $(top_srcdir)/include/grub/video.h \ -@COND_i386_coreboot_TRUE@ $(top_srcdir)/include/grub/video_fb.h \ -@COND_i386_coreboot_TRUE@ $(top_srcdir)/include/grub/gfxterm.h \ -@COND_i386_coreboot_TRUE@ $(top_srcdir)/include/grub/font.h \ -@COND_i386_coreboot_TRUE@ $(top_srcdir)/include/grub/bufio.h \ -@COND_i386_coreboot_TRUE@ $(top_srcdir)/include/grub/acpi.h -@COND_i386_multiboot_TRUE@am__append_5807 = $(top_builddir)/include/grub/machine/kernel.h \ -@COND_i386_multiboot_TRUE@ $(top_srcdir)/include/grub/i386/tsc.h \ -@COND_i386_multiboot_TRUE@ $(top_srcdir)/include/grub/acpi.h -@COND_i386_qemu_TRUE@am__append_5808 = \ -@COND_i386_qemu_TRUE@ $(top_srcdir)/include/grub/pci.h \ -@COND_i386_qemu_TRUE@ $(top_srcdir)/include/grub/i386/tsc.h -@COND_i386_ieee1275_TRUE@am__append_5809 = $(top_builddir)/include/grub/machine/kernel.h \ -@COND_i386_ieee1275_TRUE@ $(top_srcdir)/include/grub/ieee1275/ieee1275.h \ -@COND_i386_ieee1275_TRUE@ $(top_srcdir)/include/grub/terminfo.h \ -@COND_i386_ieee1275_TRUE@ $(top_srcdir)/include/grub/extcmd.h \ -@COND_i386_ieee1275_TRUE@ $(top_srcdir)/include/grub/lib/arg.h \ -@COND_i386_ieee1275_TRUE@ $(top_srcdir)/include/grub/i386/tsc.h -@COND_i386_xen_TRUE@am__append_5810 = $(top_builddir)/include/grub/machine/kernel.h \ -@COND_i386_xen_TRUE@ $(top_srcdir)/include/grub/xen.h \ -@COND_i386_xen_TRUE@ $(top_srcdir)/include/grub/i386/xen/hypercall.h \ -@COND_i386_xen_TRUE@ $(top_srcdir)/include/grub/terminfo.h \ -@COND_i386_xen_TRUE@ $(top_srcdir)/include/grub/extcmd.h \ -@COND_i386_xen_TRUE@ $(top_srcdir)/include/grub/lib/arg.h \ -@COND_i386_xen_TRUE@ $(top_srcdir)/include/grub/loader.h -@COND_x86_64_xen_TRUE@am__append_5811 = \ -@COND_x86_64_xen_TRUE@ $(top_srcdir)/include/grub/xen.h \ -@COND_x86_64_xen_TRUE@ $(top_srcdir)/include/grub/x86_64/xen/hypercall.h \ -@COND_x86_64_xen_TRUE@ $(top_srcdir)/include/grub/terminfo.h \ -@COND_x86_64_xen_TRUE@ $(top_srcdir)/include/grub/extcmd.h \ -@COND_x86_64_xen_TRUE@ $(top_srcdir)/include/grub/lib/arg.h \ -@COND_x86_64_xen_TRUE@ $(top_srcdir)/include/grub/loader.h -@COND_x86_64_efi_TRUE@am__append_5812 = $(top_builddir)/include/grub/machine/kernel.h \ -@COND_x86_64_efi_TRUE@ $(top_srcdir)/include/grub/efi/efi.h \ -@COND_x86_64_efi_TRUE@ $(top_srcdir)/include/grub/efi/disk.h \ -@COND_x86_64_efi_TRUE@ $(top_srcdir)/include/grub/i386/tsc.h \ -@COND_x86_64_efi_TRUE@ $(top_srcdir)/include/grub/pci.h \ -@COND_x86_64_efi_TRUE@ $(top_srcdir)/include/grub/acpi.h \ -@COND_x86_64_efi_TRUE@ $(top_srcdir)/include/grub/i386/pmtimer.h -@COND_ia64_efi_TRUE@am__append_5813 = \ -@COND_ia64_efi_TRUE@ $(top_srcdir)/include/grub/efi/efi.h \ -@COND_ia64_efi_TRUE@ $(top_srcdir)/include/grub/efi/disk.h \ -@COND_ia64_efi_TRUE@ $(top_srcdir)/include/grub/acpi.h -@COND_mips_TRUE@am__append_5814 = $(top_builddir)/include/grub/cpu/kernel.h -@COND_mips_arc_TRUE@am__append_5815 = \ -@COND_mips_arc_TRUE@ $(top_srcdir)/include/grub/extcmd.h \ -@COND_mips_arc_TRUE@ $(top_srcdir)/include/grub/arc/arc.h \ -@COND_mips_arc_TRUE@ $(top_srcdir)/include/grub/terminfo.h -@COND_mips_qemu_mips_TRUE@am__append_5816 = $(top_builddir)/include/grub/keyboard_layouts.h \ -@COND_mips_qemu_mips_TRUE@ $(top_builddir)/include/grub/machine/kernel.h \ -@COND_mips_qemu_mips_TRUE@ $(top_srcdir)/include/grub/serial.h \ -@COND_mips_qemu_mips_TRUE@ $(top_srcdir)/include/grub/loader.h \ -@COND_mips_qemu_mips_TRUE@ $(top_srcdir)/include/grub/terminfo.h \ -@COND_mips_qemu_mips_TRUE@ $(top_srcdir)/include/grub/extcmd.h \ -@COND_mips_qemu_mips_TRUE@ $(top_srcdir)/include/grub/lib/arg.h -@COND_mips_loongson_TRUE@am__append_5817 = $(top_builddir)/include/grub/keyboard_layouts.h \ -@COND_mips_loongson_TRUE@ $(top_builddir)/include/grub/machine/kernel.h \ -@COND_mips_loongson_TRUE@ $(top_builddir)/include/grub/machine/time.h \ -@COND_mips_loongson_TRUE@ $(top_srcdir)/include/grub/video.h \ -@COND_mips_loongson_TRUE@ $(top_srcdir)/include/grub/video_fb.h \ -@COND_mips_loongson_TRUE@ $(top_srcdir)/include/grub/gfxterm.h \ -@COND_mips_loongson_TRUE@ $(top_srcdir)/include/grub/font.h \ -@COND_mips_loongson_TRUE@ $(top_srcdir)/include/grub/bufio.h \ -@COND_mips_loongson_TRUE@ $(top_srcdir)/include/grub/pci.h \ -@COND_mips_loongson_TRUE@ $(top_srcdir)/include/grub/cs5536.h \ -@COND_mips_loongson_TRUE@ $(top_builddir)/include/grub/machine/pci.h \ -@COND_mips_loongson_TRUE@ $(top_srcdir)/include/grub/serial.h \ -@COND_mips_loongson_TRUE@ $(top_srcdir)/include/grub/loader.h \ -@COND_mips_loongson_TRUE@ $(top_srcdir)/include/grub/terminfo.h \ -@COND_mips_loongson_TRUE@ $(top_srcdir)/include/grub/extcmd.h \ -@COND_mips_loongson_TRUE@ $(top_srcdir)/include/grub/lib/arg.h -@COND_mips_qemu_mips_TRUE@am__append_5818 = $(top_builddir)/include/grub/machine/memory.h \ -@COND_mips_qemu_mips_TRUE@ $(top_builddir)/include/grub/machine/kernel.h -@COND_powerpc_ieee1275_TRUE@am__append_5819 = $(top_srcdir)/include/grub/ieee1275/ieee1275.h \ -@COND_powerpc_ieee1275_TRUE@ $(top_srcdir)/include/grub/terminfo.h \ -@COND_powerpc_ieee1275_TRUE@ $(top_srcdir)/include/grub/extcmd.h \ -@COND_powerpc_ieee1275_TRUE@ $(top_srcdir)/include/grub/lib/arg.h -@COND_sparc64_ieee1275_TRUE@am__append_5820 = $(top_srcdir)/include/grub/ieee1275/ieee1275.h \ -@COND_sparc64_ieee1275_TRUE@ $(top_srcdir)/include/grub/sparc64/ieee1275/ieee1275.h \ -@COND_sparc64_ieee1275_TRUE@ $(top_srcdir)/include/grub/terminfo.h \ -@COND_sparc64_ieee1275_TRUE@ $(top_srcdir)/include/grub/extcmd.h \ -@COND_sparc64_ieee1275_TRUE@ $(top_srcdir)/include/grub/lib/arg.h -@COND_arm_uboot_TRUE@am__append_5821 = \ -@COND_arm_uboot_TRUE@ $(top_srcdir)/include/grub/uboot/uboot.h \ -@COND_arm_uboot_TRUE@ $(top_srcdir)/include/grub/uboot/disk.h \ -@COND_arm_uboot_TRUE@ $(top_srcdir)/include/grub/extcmd.h \ -@COND_arm_uboot_TRUE@ $(top_srcdir)/include/grub/lib/arg.h \ -@COND_arm_uboot_TRUE@ $(top_srcdir)/include/grub/arm/system.h -@COND_arm_coreboot_TRUE@am__append_5822 = $(top_builddir)/include/grub/keyboard_layouts.h \ -@COND_arm_coreboot_TRUE@ $(top_srcdir)/include/grub/arm/system.h \ -@COND_arm_coreboot_TRUE@ $(top_srcdir)/include/grub/video.h \ -@COND_arm_coreboot_TRUE@ $(top_srcdir)/include/grub/video_fb.h \ -@COND_arm_coreboot_TRUE@ $(top_srcdir)/include/grub/gfxterm.h \ -@COND_arm_coreboot_TRUE@ $(top_srcdir)/include/grub/font.h \ -@COND_arm_coreboot_TRUE@ $(top_srcdir)/include/grub/bufio.h \ -@COND_arm_coreboot_TRUE@ $(top_srcdir)/include/grub/fdt.h \ -@COND_arm_coreboot_TRUE@ $(top_srcdir)/include/grub/dma.h \ -@COND_arm_coreboot_TRUE@ $(top_srcdir)/include/grub/arm/coreboot/kernel.h \ -@COND_arm_coreboot_TRUE@ $(top_srcdir)/include/grub/fdtbus.h -@COND_arm_efi_TRUE@am__append_5823 = \ -@COND_arm_efi_TRUE@ $(top_srcdir)/include/grub/efi/efi.h \ -@COND_arm_efi_TRUE@ $(top_srcdir)/include/grub/efi/disk.h \ -@COND_arm_efi_TRUE@ $(top_srcdir)/include/grub/arm/system.h \ -@COND_arm_efi_TRUE@ $(top_srcdir)/include/grub/acpi.h -@COND_arm64_efi_TRUE@am__append_5824 = \ -@COND_arm64_efi_TRUE@ $(top_srcdir)/include/grub/efi/efi.h \ -@COND_arm64_efi_TRUE@ $(top_srcdir)/include/grub/efi/disk.h \ -@COND_arm64_efi_TRUE@ $(top_srcdir)/include/grub/acpi.h -@COND_riscv32_efi_TRUE@am__append_5825 = \ -@COND_riscv32_efi_TRUE@ $(top_srcdir)/include/grub/efi/efi.h \ -@COND_riscv32_efi_TRUE@ $(top_srcdir)/include/grub/efi/disk.h \ -@COND_riscv32_efi_TRUE@ $(top_srcdir)/include/grub/acpi.h -@COND_riscv64_efi_TRUE@am__append_5826 = \ -@COND_riscv64_efi_TRUE@ $(top_srcdir)/include/grub/efi/efi.h \ -@COND_riscv64_efi_TRUE@ $(top_srcdir)/include/grub/efi/disk.h \ -@COND_riscv64_efi_TRUE@ $(top_srcdir)/include/grub/acpi.h -@COND_emu_TRUE@am__append_5827 = \ -@COND_emu_TRUE@ $(top_srcdir)/include/grub/datetime.h \ -@COND_emu_TRUE@ $(top_srcdir)/include/grub/emu/misc.h \ -@COND_emu_TRUE@ $(top_srcdir)/include/grub/emu/net.h \ -@COND_emu_TRUE@ $(top_srcdir)/include/grub/emu/hostdisk.h \ -@COND_emu_TRUE@ $(top_srcdir)/include/grub/emu/hostfile.h \ -@COND_emu_TRUE@ $(top_srcdir)/include/grub/extcmd.h -@COND_GRUB_EMU_SDL_TRUE@@COND_emu_TRUE@am__append_5828 = $(top_srcdir)/include/grub/sdl.h -@COND_GRUB_EMU_PCI_TRUE@@COND_emu_TRUE@am__append_5829 = $(top_srcdir)/include/grub/libpciaccess.h -@COND_emu_TRUE@am__append_5830 = grub_emu_init.h grub_emu_init.c -@COND_ENABLE_EFIEMU_TRUE@am__append_5831 = efiemu32.o efiemu64.o -@COND_ENABLE_EFIEMU_TRUE@am__append_5832 = efiemu32.o efiemu64.o efiemu64_c.o efiemu64_s.o -subdir = grub-core -ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 -am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \ - $(top_srcdir)/m4/__inline.m4 \ - $(top_srcdir)/m4/absolute-header.m4 $(top_srcdir)/m4/alloca.m4 \ - $(top_srcdir)/m4/argp.m4 $(top_srcdir)/m4/btowc.m4 \ - $(top_srcdir)/m4/builtin-expect.m4 \ - $(top_srcdir)/m4/chdir-long.m4 $(top_srcdir)/m4/close.m4 \ - $(top_srcdir)/m4/codeset.m4 $(top_srcdir)/m4/dirent_h.m4 \ - $(top_srcdir)/m4/dirfd.m4 $(top_srcdir)/m4/dirname.m4 \ - $(top_srcdir)/m4/double-slash-root.m4 $(top_srcdir)/m4/dup2.m4 \ - $(top_srcdir)/m4/eealloc.m4 $(top_srcdir)/m4/errno_h.m4 \ - $(top_srcdir)/m4/error.m4 $(top_srcdir)/m4/exponentd.m4 \ - $(top_srcdir)/m4/extensions.m4 \ - $(top_srcdir)/m4/extern-inline.m4 $(top_srcdir)/m4/fchdir.m4 \ - $(top_srcdir)/m4/fcntl-o.m4 $(top_srcdir)/m4/fcntl.m4 \ - $(top_srcdir)/m4/fcntl_h.m4 $(top_srcdir)/m4/filenamecat.m4 \ - $(top_srcdir)/m4/flexmember.m4 $(top_srcdir)/m4/float_h.m4 \ - $(top_srcdir)/m4/fnmatch.m4 $(top_srcdir)/m4/fnmatch_h.m4 \ - $(top_srcdir)/m4/fstat.m4 $(top_srcdir)/m4/getcwd.m4 \ - $(top_srcdir)/m4/getdelim.m4 $(top_srcdir)/m4/getdtablesize.m4 \ - $(top_srcdir)/m4/getline.m4 $(top_srcdir)/m4/getopt.m4 \ - $(top_srcdir)/m4/getprogname.m4 $(top_srcdir)/m4/gettext.m4 \ - $(top_srcdir)/m4/glibc21.m4 $(top_srcdir)/m4/gnulib-common.m4 \ - $(top_srcdir)/m4/gnulib-comp.m4 \ - $(top_srcdir)/m4/host-cpu-c-abi.m4 $(top_srcdir)/m4/iconv.m4 \ - $(top_srcdir)/m4/include_next.m4 \ - $(top_srcdir)/m4/intlmacosx.m4 $(top_srcdir)/m4/intmax_t.m4 \ - $(top_srcdir)/m4/inttypes_h.m4 $(top_srcdir)/m4/langinfo_h.m4 \ - $(top_srcdir)/m4/largefile.m4 $(top_srcdir)/m4/lib-ld.m4 \ - $(top_srcdir)/m4/lib-link.m4 $(top_srcdir)/m4/lib-prefix.m4 \ - $(top_srcdir)/m4/libunistring-base.m4 \ - $(top_srcdir)/m4/limits-h.m4 $(top_srcdir)/m4/localcharset.m4 \ - $(top_srcdir)/m4/locale-fr.m4 $(top_srcdir)/m4/locale-ja.m4 \ - $(top_srcdir)/m4/locale-zh.m4 $(top_srcdir)/m4/locale_h.m4 \ - $(top_srcdir)/m4/localeconv.m4 $(top_srcdir)/m4/lock.m4 \ - $(top_srcdir)/m4/longlong.m4 $(top_srcdir)/m4/lstat.m4 \ - $(top_srcdir)/m4/malloc.m4 $(top_srcdir)/m4/malloca.m4 \ - $(top_srcdir)/m4/mbrtowc.m4 $(top_srcdir)/m4/mbsinit.m4 \ - $(top_srcdir)/m4/mbsrtowcs.m4 $(top_srcdir)/m4/mbstate_t.m4 \ - $(top_srcdir)/m4/mbswidth.m4 $(top_srcdir)/m4/mbtowc.m4 \ - $(top_srcdir)/m4/memchr.m4 $(top_srcdir)/m4/mempcpy.m4 \ - $(top_srcdir)/m4/memrchr.m4 $(top_srcdir)/m4/mmap-anon.m4 \ - $(top_srcdir)/m4/mode_t.m4 $(top_srcdir)/m4/msvc-inval.m4 \ - $(top_srcdir)/m4/msvc-nothrow.m4 $(top_srcdir)/m4/multiarch.m4 \ - $(top_srcdir)/m4/nl_langinfo.m4 $(top_srcdir)/m4/nls.m4 \ - $(top_srcdir)/m4/nocrash.m4 $(top_srcdir)/m4/off_t.m4 \ - $(top_srcdir)/m4/open-cloexec.m4 $(top_srcdir)/m4/open.m4 \ - $(top_srcdir)/m4/openat.m4 $(top_srcdir)/m4/pathmax.m4 \ - $(top_srcdir)/m4/po.m4 $(top_srcdir)/m4/printf.m4 \ - $(top_srcdir)/m4/progtest.m4 \ - $(top_srcdir)/m4/pthread_rwlock_rdlock.m4 \ - $(top_srcdir)/m4/rawmemchr.m4 $(top_srcdir)/m4/realloc.m4 \ - $(top_srcdir)/m4/regex.m4 $(top_srcdir)/m4/save-cwd.m4 \ - $(top_srcdir)/m4/size_max.m4 $(top_srcdir)/m4/sleep.m4 \ - $(top_srcdir)/m4/ssize_t.m4 $(top_srcdir)/m4/stat-time.m4 \ - $(top_srcdir)/m4/stat.m4 $(top_srcdir)/m4/stdalign.m4 \ - $(top_srcdir)/m4/stdbool.m4 $(top_srcdir)/m4/stddef_h.m4 \ - $(top_srcdir)/m4/stdint.m4 $(top_srcdir)/m4/stdint_h.m4 \ - $(top_srcdir)/m4/stdio_h.m4 $(top_srcdir)/m4/stdlib_h.m4 \ - $(top_srcdir)/m4/strcase.m4 $(top_srcdir)/m4/strchrnul.m4 \ - $(top_srcdir)/m4/strdup.m4 $(top_srcdir)/m4/strerror.m4 \ - $(top_srcdir)/m4/string_h.m4 $(top_srcdir)/m4/strings_h.m4 \ - $(top_srcdir)/m4/strndup.m4 $(top_srcdir)/m4/strnlen.m4 \ - $(top_srcdir)/m4/sys_socket_h.m4 \ - $(top_srcdir)/m4/sys_stat_h.m4 $(top_srcdir)/m4/sys_types_h.m4 \ - $(top_srcdir)/m4/sysexits.m4 $(top_srcdir)/m4/threadlib.m4 \ - $(top_srcdir)/m4/time_h.m4 $(top_srcdir)/m4/unistd-safer.m4 \ - $(top_srcdir)/m4/unistd_h.m4 $(top_srcdir)/m4/vasnprintf.m4 \ - $(top_srcdir)/m4/vsnprintf.m4 $(top_srcdir)/m4/warn-on-use.m4 \ - $(top_srcdir)/m4/wchar_h.m4 $(top_srcdir)/m4/wchar_t.m4 \ - $(top_srcdir)/m4/wcrtomb.m4 $(top_srcdir)/m4/wctype_h.m4 \ - $(top_srcdir)/m4/wcwidth.m4 $(top_srcdir)/m4/wint_t.m4 \ - $(top_srcdir)/m4/xsize.m4 $(top_srcdir)/acinclude.m4 \ - $(top_srcdir)/configure.ac -am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ - $(ACLOCAL_M4) -DIST_COMMON = $(srcdir)/Makefile.am $(dist_grubconf_DATA) \ - $(am__dist_noinst_DATA_DIST) $(am__DIST_COMMON) -mkinstalldirs = $(install_sh) -d -CONFIG_HEADER = $(top_builddir)/config-util.h -CONFIG_CLEAN_FILES = -CONFIG_CLEAN_VPATH_FILES = -LIBRARIES = $(noinst_LIBRARIES) -@COND_emu_TRUE@am__EXEEXT_1 = grub-emu$(EXEEXT) grub-emu-lite$(EXEEXT) -am__installdirs = "$(DESTDIR)$(bindir)" "$(DESTDIR)$(platformdir)" \ - "$(DESTDIR)$(sbindir)" "$(DESTDIR)$(bindir)" \ - "$(DESTDIR)$(grubconfdir)" "$(DESTDIR)$(platformdir)" \ - "$(DESTDIR)$(sbindir)" "$(DESTDIR)$(man1dir)" \ - "$(DESTDIR)$(grubconfdir)" "$(DESTDIR)$(pkgdatadir)" \ - "$(DESTDIR)$(platformdir)" -@COND_i386_pc_TRUE@am__EXEEXT_2 = cs5536.module$(EXEEXT) -@COND_i386_efi_TRUE@am__EXEEXT_3 = cs5536.module$(EXEEXT) -@COND_i386_qemu_TRUE@am__EXEEXT_4 = cs5536.module$(EXEEXT) -@COND_i386_coreboot_TRUE@am__EXEEXT_5 = cs5536.module$(EXEEXT) -@COND_i386_multiboot_TRUE@am__EXEEXT_6 = cs5536.module$(EXEEXT) -@COND_i386_ieee1275_TRUE@am__EXEEXT_7 = cs5536.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__EXEEXT_8 = cs5536.module$(EXEEXT) -@COND_mips_loongson_TRUE@am__EXEEXT_9 = lsspd.module$(EXEEXT) -@COND_i386_pc_TRUE@am__EXEEXT_10 = usb.module$(EXEEXT) -@COND_i386_efi_TRUE@am__EXEEXT_11 = usb.module$(EXEEXT) -@COND_i386_qemu_TRUE@am__EXEEXT_12 = usb.module$(EXEEXT) -@COND_i386_coreboot_TRUE@am__EXEEXT_13 = usb.module$(EXEEXT) -@COND_i386_multiboot_TRUE@am__EXEEXT_14 = usb.module$(EXEEXT) -@COND_i386_ieee1275_TRUE@am__EXEEXT_15 = usb.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__EXEEXT_16 = usb.module$(EXEEXT) -@COND_mips_loongson_TRUE@am__EXEEXT_17 = usb.module$(EXEEXT) -@COND_arm_coreboot_TRUE@am__EXEEXT_18 = usb.module$(EXEEXT) -@COND_i386_pc_TRUE@am__EXEEXT_19 = usbserial_common.module$(EXEEXT) -@COND_i386_efi_TRUE@am__EXEEXT_20 = usbserial_common.module$(EXEEXT) -@COND_i386_qemu_TRUE@am__EXEEXT_21 = usbserial_common.module$(EXEEXT) -@COND_i386_coreboot_TRUE@am__EXEEXT_22 = \ -@COND_i386_coreboot_TRUE@ usbserial_common.module$(EXEEXT) -@COND_i386_multiboot_TRUE@am__EXEEXT_23 = \ -@COND_i386_multiboot_TRUE@ usbserial_common.module$(EXEEXT) -@COND_i386_ieee1275_TRUE@am__EXEEXT_24 = \ -@COND_i386_ieee1275_TRUE@ usbserial_common.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__EXEEXT_25 = \ -@COND_x86_64_efi_TRUE@ usbserial_common.module$(EXEEXT) -@COND_mips_loongson_TRUE@am__EXEEXT_26 = \ -@COND_mips_loongson_TRUE@ usbserial_common.module$(EXEEXT) -@COND_arm_coreboot_TRUE@am__EXEEXT_27 = \ -@COND_arm_coreboot_TRUE@ usbserial_common.module$(EXEEXT) -@COND_i386_pc_TRUE@am__EXEEXT_28 = usbserial_pl2303.module$(EXEEXT) -@COND_i386_efi_TRUE@am__EXEEXT_29 = usbserial_pl2303.module$(EXEEXT) -@COND_i386_qemu_TRUE@am__EXEEXT_30 = usbserial_pl2303.module$(EXEEXT) -@COND_i386_coreboot_TRUE@am__EXEEXT_31 = \ -@COND_i386_coreboot_TRUE@ usbserial_pl2303.module$(EXEEXT) -@COND_i386_multiboot_TRUE@am__EXEEXT_32 = \ -@COND_i386_multiboot_TRUE@ usbserial_pl2303.module$(EXEEXT) -@COND_i386_ieee1275_TRUE@am__EXEEXT_33 = \ -@COND_i386_ieee1275_TRUE@ usbserial_pl2303.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__EXEEXT_34 = \ -@COND_x86_64_efi_TRUE@ usbserial_pl2303.module$(EXEEXT) -@COND_mips_loongson_TRUE@am__EXEEXT_35 = \ -@COND_mips_loongson_TRUE@ usbserial_pl2303.module$(EXEEXT) -@COND_arm_coreboot_TRUE@am__EXEEXT_36 = \ -@COND_arm_coreboot_TRUE@ usbserial_pl2303.module$(EXEEXT) -@COND_i386_pc_TRUE@am__EXEEXT_37 = usbserial_ftdi.module$(EXEEXT) -@COND_i386_efi_TRUE@am__EXEEXT_38 = usbserial_ftdi.module$(EXEEXT) -@COND_i386_qemu_TRUE@am__EXEEXT_39 = usbserial_ftdi.module$(EXEEXT) -@COND_i386_coreboot_TRUE@am__EXEEXT_40 = \ -@COND_i386_coreboot_TRUE@ usbserial_ftdi.module$(EXEEXT) -@COND_i386_multiboot_TRUE@am__EXEEXT_41 = \ -@COND_i386_multiboot_TRUE@ usbserial_ftdi.module$(EXEEXT) -@COND_i386_ieee1275_TRUE@am__EXEEXT_42 = \ -@COND_i386_ieee1275_TRUE@ usbserial_ftdi.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__EXEEXT_43 = usbserial_ftdi.module$(EXEEXT) -@COND_mips_loongson_TRUE@am__EXEEXT_44 = \ -@COND_mips_loongson_TRUE@ usbserial_ftdi.module$(EXEEXT) -@COND_arm_coreboot_TRUE@am__EXEEXT_45 = \ -@COND_arm_coreboot_TRUE@ usbserial_ftdi.module$(EXEEXT) -@COND_i386_pc_TRUE@am__EXEEXT_46 = usbserial_usbdebug.module$(EXEEXT) -@COND_i386_efi_TRUE@am__EXEEXT_47 = \ -@COND_i386_efi_TRUE@ usbserial_usbdebug.module$(EXEEXT) -@COND_i386_qemu_TRUE@am__EXEEXT_48 = \ -@COND_i386_qemu_TRUE@ usbserial_usbdebug.module$(EXEEXT) -@COND_i386_coreboot_TRUE@am__EXEEXT_49 = \ -@COND_i386_coreboot_TRUE@ usbserial_usbdebug.module$(EXEEXT) -@COND_i386_multiboot_TRUE@am__EXEEXT_50 = \ -@COND_i386_multiboot_TRUE@ usbserial_usbdebug.module$(EXEEXT) -@COND_i386_ieee1275_TRUE@am__EXEEXT_51 = \ -@COND_i386_ieee1275_TRUE@ usbserial_usbdebug.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__EXEEXT_52 = \ -@COND_x86_64_efi_TRUE@ usbserial_usbdebug.module$(EXEEXT) -@COND_mips_loongson_TRUE@am__EXEEXT_53 = \ -@COND_mips_loongson_TRUE@ usbserial_usbdebug.module$(EXEEXT) -@COND_arm_coreboot_TRUE@am__EXEEXT_54 = \ -@COND_arm_coreboot_TRUE@ usbserial_usbdebug.module$(EXEEXT) -@COND_i386_pc_TRUE@am__EXEEXT_55 = uhci.module$(EXEEXT) -@COND_i386_efi_TRUE@am__EXEEXT_56 = uhci.module$(EXEEXT) -@COND_i386_qemu_TRUE@am__EXEEXT_57 = uhci.module$(EXEEXT) -@COND_i386_coreboot_TRUE@am__EXEEXT_58 = uhci.module$(EXEEXT) -@COND_i386_multiboot_TRUE@am__EXEEXT_59 = uhci.module$(EXEEXT) -@COND_i386_ieee1275_TRUE@am__EXEEXT_60 = uhci.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__EXEEXT_61 = uhci.module$(EXEEXT) -@COND_mips_loongson_TRUE@am__EXEEXT_62 = uhci.module$(EXEEXT) -@COND_i386_pc_TRUE@am__EXEEXT_63 = ohci.module$(EXEEXT) -@COND_i386_efi_TRUE@am__EXEEXT_64 = ohci.module$(EXEEXT) -@COND_i386_qemu_TRUE@am__EXEEXT_65 = ohci.module$(EXEEXT) -@COND_i386_coreboot_TRUE@am__EXEEXT_66 = ohci.module$(EXEEXT) -@COND_i386_multiboot_TRUE@am__EXEEXT_67 = ohci.module$(EXEEXT) -@COND_i386_ieee1275_TRUE@am__EXEEXT_68 = ohci.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__EXEEXT_69 = ohci.module$(EXEEXT) -@COND_mips_loongson_TRUE@am__EXEEXT_70 = ohci.module$(EXEEXT) -@COND_i386_pc_TRUE@am__EXEEXT_71 = ehci.module$(EXEEXT) -@COND_i386_efi_TRUE@am__EXEEXT_72 = ehci.module$(EXEEXT) -@COND_i386_qemu_TRUE@am__EXEEXT_73 = ehci.module$(EXEEXT) -@COND_i386_coreboot_TRUE@am__EXEEXT_74 = ehci.module$(EXEEXT) -@COND_i386_multiboot_TRUE@am__EXEEXT_75 = ehci.module$(EXEEXT) -@COND_i386_ieee1275_TRUE@am__EXEEXT_76 = ehci.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__EXEEXT_77 = ehci.module$(EXEEXT) -@COND_mips_loongson_TRUE@am__EXEEXT_78 = ehci.module$(EXEEXT) -@COND_arm_coreboot_TRUE@am__EXEEXT_79 = ehci.module$(EXEEXT) -@COND_i386_pc_TRUE@am__EXEEXT_80 = pci.module$(EXEEXT) -@COND_i386_coreboot_TRUE@am__EXEEXT_81 = pci.module$(EXEEXT) -@COND_i386_multiboot_TRUE@am__EXEEXT_82 = pci.module$(EXEEXT) -@COND_i386_ieee1275_TRUE@am__EXEEXT_83 = pci.module$(EXEEXT) -@COND_i386_pc_TRUE@am__EXEEXT_84 = nativedisk.module$(EXEEXT) -@COND_i386_efi_TRUE@am__EXEEXT_85 = nativedisk.module$(EXEEXT) -@COND_i386_qemu_TRUE@am__EXEEXT_86 = nativedisk.module$(EXEEXT) -@COND_i386_coreboot_TRUE@am__EXEEXT_87 = nativedisk.module$(EXEEXT) -@COND_i386_multiboot_TRUE@am__EXEEXT_88 = nativedisk.module$(EXEEXT) -@COND_i386_ieee1275_TRUE@am__EXEEXT_89 = nativedisk.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__EXEEXT_90 = nativedisk.module$(EXEEXT) -@COND_mips_loongson_TRUE@am__EXEEXT_91 = nativedisk.module$(EXEEXT) -@COND_mips_qemu_mips_TRUE@am__EXEEXT_92 = nativedisk.module$(EXEEXT) -@COND_GRUB_EMU_PCI_TRUE@@COND_emu_TRUE@am__EXEEXT_93 = \ -@COND_GRUB_EMU_PCI_TRUE@@COND_emu_TRUE@ emupci.module$(EXEEXT) -@COND_mips_arc_TRUE@am__EXEEXT_94 = lsdev.module$(EXEEXT) -@COND_i386_xen_TRUE@am__EXEEXT_95 = lsxen.module$(EXEEXT) -@COND_x86_64_xen_TRUE@am__EXEEXT_96 = lsxen.module$(EXEEXT) -@COND_i386_pc_TRUE@am__EXEEXT_97 = cmostest.module$(EXEEXT) -@COND_i386_qemu_TRUE@am__EXEEXT_98 = cmostest.module$(EXEEXT) -@COND_i386_coreboot_TRUE@am__EXEEXT_99 = cmostest.module$(EXEEXT) -@COND_i386_multiboot_TRUE@am__EXEEXT_100 = cmostest.module$(EXEEXT) -@COND_i386_ieee1275_TRUE@am__EXEEXT_101 = cmostest.module$(EXEEXT) -@COND_mips_loongson_TRUE@am__EXEEXT_102 = cmostest.module$(EXEEXT) -@COND_sparc64_ieee1275_TRUE@am__EXEEXT_103 = cmostest.module$(EXEEXT) -@COND_powerpc_ieee1275_TRUE@am__EXEEXT_104 = cmostest.module$(EXEEXT) -@COND_mips_qemu_mips_TRUE@am__EXEEXT_105 = cmostest.module$(EXEEXT) -@COND_i386_pc_TRUE@am__EXEEXT_106 = cmosdump.module$(EXEEXT) -@COND_i386_qemu_TRUE@am__EXEEXT_107 = cmosdump.module$(EXEEXT) -@COND_i386_coreboot_TRUE@am__EXEEXT_108 = cmosdump.module$(EXEEXT) -@COND_i386_multiboot_TRUE@am__EXEEXT_109 = cmosdump.module$(EXEEXT) -@COND_i386_ieee1275_TRUE@am__EXEEXT_110 = cmosdump.module$(EXEEXT) -@COND_mips_loongson_TRUE@am__EXEEXT_111 = cmosdump.module$(EXEEXT) -@COND_sparc64_ieee1275_TRUE@am__EXEEXT_112 = cmosdump.module$(EXEEXT) -@COND_powerpc_ieee1275_TRUE@am__EXEEXT_113 = cmosdump.module$(EXEEXT) -@COND_mips_qemu_mips_TRUE@am__EXEEXT_114 = cmosdump.module$(EXEEXT) -@COND_i386_pc_TRUE@am__EXEEXT_115 = iorw.module$(EXEEXT) -@COND_i386_efi_TRUE@am__EXEEXT_116 = iorw.module$(EXEEXT) -@COND_i386_qemu_TRUE@am__EXEEXT_117 = iorw.module$(EXEEXT) -@COND_i386_coreboot_TRUE@am__EXEEXT_118 = iorw.module$(EXEEXT) -@COND_i386_multiboot_TRUE@am__EXEEXT_119 = iorw.module$(EXEEXT) -@COND_i386_ieee1275_TRUE@am__EXEEXT_120 = iorw.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__EXEEXT_121 = iorw.module$(EXEEXT) -@COND_i386_pc_TRUE@am__EXEEXT_122 = cbtable.module$(EXEEXT) -@COND_i386_efi_TRUE@am__EXEEXT_123 = cbtable.module$(EXEEXT) -@COND_i386_qemu_TRUE@am__EXEEXT_124 = cbtable.module$(EXEEXT) -@COND_i386_multiboot_TRUE@am__EXEEXT_125 = cbtable.module$(EXEEXT) -@COND_i386_ieee1275_TRUE@am__EXEEXT_126 = cbtable.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__EXEEXT_127 = cbtable.module$(EXEEXT) -@COND_i386_pc_TRUE@am__EXEEXT_128 = cbtime.module$(EXEEXT) -@COND_i386_efi_TRUE@am__EXEEXT_129 = cbtime.module$(EXEEXT) -@COND_i386_qemu_TRUE@am__EXEEXT_130 = cbtime.module$(EXEEXT) -@COND_i386_coreboot_TRUE@am__EXEEXT_131 = cbtime.module$(EXEEXT) -@COND_i386_multiboot_TRUE@am__EXEEXT_132 = cbtime.module$(EXEEXT) -@COND_i386_ieee1275_TRUE@am__EXEEXT_133 = cbtime.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__EXEEXT_134 = cbtime.module$(EXEEXT) -@COND_i386_pc_TRUE@am__EXEEXT_135 = cbls.module$(EXEEXT) -@COND_i386_efi_TRUE@am__EXEEXT_136 = cbls.module$(EXEEXT) -@COND_i386_qemu_TRUE@am__EXEEXT_137 = cbls.module$(EXEEXT) -@COND_i386_coreboot_TRUE@am__EXEEXT_138 = cbls.module$(EXEEXT) -@COND_i386_multiboot_TRUE@am__EXEEXT_139 = cbls.module$(EXEEXT) -@COND_i386_ieee1275_TRUE@am__EXEEXT_140 = cbls.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__EXEEXT_141 = cbls.module$(EXEEXT) -@COND_i386_pc_TRUE@am__EXEEXT_142 = cbmemc.module$(EXEEXT) -@COND_i386_efi_TRUE@am__EXEEXT_143 = cbmemc.module$(EXEEXT) -@COND_i386_qemu_TRUE@am__EXEEXT_144 = cbmemc.module$(EXEEXT) -@COND_i386_coreboot_TRUE@am__EXEEXT_145 = cbmemc.module$(EXEEXT) -@COND_i386_multiboot_TRUE@am__EXEEXT_146 = cbmemc.module$(EXEEXT) -@COND_i386_ieee1275_TRUE@am__EXEEXT_147 = cbmemc.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__EXEEXT_148 = cbmemc.module$(EXEEXT) -@COND_i386_pc_TRUE@am__EXEEXT_149 = acpi.module$(EXEEXT) -@COND_i386_efi_TRUE@am__EXEEXT_150 = acpi.module$(EXEEXT) -@COND_i386_coreboot_TRUE@am__EXEEXT_151 = acpi.module$(EXEEXT) -@COND_i386_multiboot_TRUE@am__EXEEXT_152 = acpi.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__EXEEXT_153 = acpi.module$(EXEEXT) -@COND_ia64_efi_TRUE@am__EXEEXT_154 = acpi.module$(EXEEXT) -@COND_arm_efi_TRUE@am__EXEEXT_155 = acpi.module$(EXEEXT) -@COND_arm64_efi_TRUE@am__EXEEXT_156 = acpi.module$(EXEEXT) -@COND_riscv32_efi_TRUE@am__EXEEXT_157 = acpi.module$(EXEEXT) -@COND_riscv64_efi_TRUE@am__EXEEXT_158 = acpi.module$(EXEEXT) -@COND_i386_pc_TRUE@am__EXEEXT_159 = lsacpi.module$(EXEEXT) -@COND_i386_efi_TRUE@am__EXEEXT_160 = lsacpi.module$(EXEEXT) -@COND_i386_coreboot_TRUE@am__EXEEXT_161 = lsacpi.module$(EXEEXT) -@COND_i386_multiboot_TRUE@am__EXEEXT_162 = lsacpi.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__EXEEXT_163 = lsacpi.module$(EXEEXT) -@COND_ia64_efi_TRUE@am__EXEEXT_164 = lsacpi.module$(EXEEXT) -@COND_arm_efi_TRUE@am__EXEEXT_165 = lsacpi.module$(EXEEXT) -@COND_arm64_efi_TRUE@am__EXEEXT_166 = lsacpi.module$(EXEEXT) -@COND_riscv32_efi_TRUE@am__EXEEXT_167 = lsacpi.module$(EXEEXT) -@COND_riscv64_efi_TRUE@am__EXEEXT_168 = lsacpi.module$(EXEEXT) -@COND_i386_efi_TRUE@am__EXEEXT_169 = lsefisystab.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__EXEEXT_170 = lsefisystab.module$(EXEEXT) -@COND_ia64_efi_TRUE@am__EXEEXT_171 = lsefisystab.module$(EXEEXT) -@COND_arm_efi_TRUE@am__EXEEXT_172 = lsefisystab.module$(EXEEXT) -@COND_arm64_efi_TRUE@am__EXEEXT_173 = lsefisystab.module$(EXEEXT) -@COND_riscv32_efi_TRUE@am__EXEEXT_174 = lsefisystab.module$(EXEEXT) -@COND_riscv64_efi_TRUE@am__EXEEXT_175 = lsefisystab.module$(EXEEXT) -@COND_i386_efi_TRUE@am__EXEEXT_176 = lssal.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__EXEEXT_177 = lssal.module$(EXEEXT) -@COND_ia64_efi_TRUE@am__EXEEXT_178 = lssal.module$(EXEEXT) -@COND_arm_efi_TRUE@am__EXEEXT_179 = lssal.module$(EXEEXT) -@COND_arm64_efi_TRUE@am__EXEEXT_180 = lssal.module$(EXEEXT) -@COND_riscv32_efi_TRUE@am__EXEEXT_181 = lssal.module$(EXEEXT) -@COND_riscv64_efi_TRUE@am__EXEEXT_182 = lssal.module$(EXEEXT) -@COND_i386_efi_TRUE@am__EXEEXT_183 = lsefimmap.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__EXEEXT_184 = lsefimmap.module$(EXEEXT) -@COND_ia64_efi_TRUE@am__EXEEXT_185 = lsefimmap.module$(EXEEXT) -@COND_arm_efi_TRUE@am__EXEEXT_186 = lsefimmap.module$(EXEEXT) -@COND_arm64_efi_TRUE@am__EXEEXT_187 = lsefimmap.module$(EXEEXT) -@COND_riscv32_efi_TRUE@am__EXEEXT_188 = lsefimmap.module$(EXEEXT) -@COND_riscv64_efi_TRUE@am__EXEEXT_189 = lsefimmap.module$(EXEEXT) -@COND_i386_efi_TRUE@am__EXEEXT_190 = lsefi.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__EXEEXT_191 = lsefi.module$(EXEEXT) -@COND_ia64_efi_TRUE@am__EXEEXT_192 = lsefi.module$(EXEEXT) -@COND_arm_efi_TRUE@am__EXEEXT_193 = lsefi.module$(EXEEXT) -@COND_arm64_efi_TRUE@am__EXEEXT_194 = lsefi.module$(EXEEXT) -@COND_riscv32_efi_TRUE@am__EXEEXT_195 = lsefi.module$(EXEEXT) -@COND_riscv64_efi_TRUE@am__EXEEXT_196 = lsefi.module$(EXEEXT) -@COND_i386_efi_TRUE@am__EXEEXT_197 = efifwsetup.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__EXEEXT_198 = efifwsetup.module$(EXEEXT) -@COND_ia64_efi_TRUE@am__EXEEXT_199 = efifwsetup.module$(EXEEXT) -@COND_arm_efi_TRUE@am__EXEEXT_200 = efifwsetup.module$(EXEEXT) -@COND_arm64_efi_TRUE@am__EXEEXT_201 = efifwsetup.module$(EXEEXT) -@COND_riscv32_efi_TRUE@am__EXEEXT_202 = efifwsetup.module$(EXEEXT) -@COND_riscv64_efi_TRUE@am__EXEEXT_203 = efifwsetup.module$(EXEEXT) -@COND_emu_TRUE@am__EXEEXT_204 = boot.module$(EXEEXT) -@COND_i386_pc_TRUE@am__EXEEXT_205 = boot.module$(EXEEXT) -@COND_i386_efi_TRUE@am__EXEEXT_206 = boot.module$(EXEEXT) -@COND_i386_qemu_TRUE@am__EXEEXT_207 = boot.module$(EXEEXT) -@COND_i386_coreboot_TRUE@am__EXEEXT_208 = boot.module$(EXEEXT) -@COND_i386_multiboot_TRUE@am__EXEEXT_209 = boot.module$(EXEEXT) -@COND_i386_ieee1275_TRUE@am__EXEEXT_210 = boot.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__EXEEXT_211 = boot.module$(EXEEXT) -@COND_sparc64_ieee1275_TRUE@am__EXEEXT_212 = boot.module$(EXEEXT) -@COND_powerpc_ieee1275_TRUE@am__EXEEXT_213 = boot.module$(EXEEXT) -@COND_mips_arc_TRUE@am__EXEEXT_214 = boot.module$(EXEEXT) -@COND_ia64_efi_TRUE@am__EXEEXT_215 = boot.module$(EXEEXT) -@COND_arm_uboot_TRUE@am__EXEEXT_216 = boot.module$(EXEEXT) -@COND_arm_efi_TRUE@am__EXEEXT_217 = boot.module$(EXEEXT) -@COND_arm64_efi_TRUE@am__EXEEXT_218 = boot.module$(EXEEXT) -@COND_arm_coreboot_TRUE@am__EXEEXT_219 = boot.module$(EXEEXT) -@COND_riscv32_efi_TRUE@am__EXEEXT_220 = boot.module$(EXEEXT) -@COND_riscv64_efi_TRUE@am__EXEEXT_221 = boot.module$(EXEEXT) -@COND_i386_pc_TRUE@am__EXEEXT_222 = cpuid.module$(EXEEXT) -@COND_i386_efi_TRUE@am__EXEEXT_223 = cpuid.module$(EXEEXT) -@COND_i386_qemu_TRUE@am__EXEEXT_224 = cpuid.module$(EXEEXT) -@COND_i386_coreboot_TRUE@am__EXEEXT_225 = cpuid.module$(EXEEXT) -@COND_i386_multiboot_TRUE@am__EXEEXT_226 = cpuid.module$(EXEEXT) -@COND_i386_ieee1275_TRUE@am__EXEEXT_227 = cpuid.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__EXEEXT_228 = cpuid.module$(EXEEXT) -@COND_i386_xen_TRUE@am__EXEEXT_229 = cpuid.module$(EXEEXT) -@COND_x86_64_xen_TRUE@am__EXEEXT_230 = cpuid.module$(EXEEXT) -@COND_i386_xen_pvh_TRUE@am__EXEEXT_231 = cpuid.module$(EXEEXT) -@COND_i386_pc_TRUE@am__EXEEXT_232 = drivemap.module$(EXEEXT) -@COND_i386_pc_TRUE@am__EXEEXT_233 = extcmd.module$(EXEEXT) -@COND_i386_efi_TRUE@am__EXEEXT_234 = extcmd.module$(EXEEXT) -@COND_i386_qemu_TRUE@am__EXEEXT_235 = extcmd.module$(EXEEXT) -@COND_i386_coreboot_TRUE@am__EXEEXT_236 = extcmd.module$(EXEEXT) -@COND_i386_multiboot_TRUE@am__EXEEXT_237 = extcmd.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__EXEEXT_238 = extcmd.module$(EXEEXT) -@COND_ia64_efi_TRUE@am__EXEEXT_239 = extcmd.module$(EXEEXT) -@COND_arm_efi_TRUE@am__EXEEXT_240 = extcmd.module$(EXEEXT) -@COND_arm64_efi_TRUE@am__EXEEXT_241 = extcmd.module$(EXEEXT) -@COND_arm_coreboot_TRUE@am__EXEEXT_242 = extcmd.module$(EXEEXT) -@COND_riscv32_efi_TRUE@am__EXEEXT_243 = extcmd.module$(EXEEXT) -@COND_riscv64_efi_TRUE@am__EXEEXT_244 = extcmd.module$(EXEEXT) -@COND_i386_efi_TRUE@am__EXEEXT_245 = fixvideo.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__EXEEXT_246 = fixvideo.module$(EXEEXT) -@COND_emu_TRUE@am__EXEEXT_247 = halt.module$(EXEEXT) -@COND_i386_pc_TRUE@am__EXEEXT_248 = halt.module$(EXEEXT) -@COND_i386_efi_TRUE@am__EXEEXT_249 = halt.module$(EXEEXT) -@COND_i386_qemu_TRUE@am__EXEEXT_250 = halt.module$(EXEEXT) -@COND_i386_coreboot_TRUE@am__EXEEXT_251 = halt.module$(EXEEXT) -@COND_i386_multiboot_TRUE@am__EXEEXT_252 = halt.module$(EXEEXT) -@COND_i386_ieee1275_TRUE@am__EXEEXT_253 = halt.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__EXEEXT_254 = halt.module$(EXEEXT) -@COND_i386_xen_TRUE@am__EXEEXT_255 = halt.module$(EXEEXT) -@COND_x86_64_xen_TRUE@am__EXEEXT_256 = halt.module$(EXEEXT) -@COND_i386_xen_pvh_TRUE@am__EXEEXT_257 = halt.module$(EXEEXT) -@COND_mips_loongson_TRUE@am__EXEEXT_258 = halt.module$(EXEEXT) -@COND_sparc64_ieee1275_TRUE@am__EXEEXT_259 = halt.module$(EXEEXT) -@COND_powerpc_ieee1275_TRUE@am__EXEEXT_260 = halt.module$(EXEEXT) -@COND_mips_arc_TRUE@am__EXEEXT_261 = halt.module$(EXEEXT) -@COND_ia64_efi_TRUE@am__EXEEXT_262 = halt.module$(EXEEXT) -@COND_mips_qemu_mips_TRUE@am__EXEEXT_263 = halt.module$(EXEEXT) -@COND_arm_uboot_TRUE@am__EXEEXT_264 = halt.module$(EXEEXT) -@COND_arm_efi_TRUE@am__EXEEXT_265 = halt.module$(EXEEXT) -@COND_arm64_efi_TRUE@am__EXEEXT_266 = halt.module$(EXEEXT) -@COND_arm_coreboot_TRUE@am__EXEEXT_267 = halt.module$(EXEEXT) -@COND_riscv32_efi_TRUE@am__EXEEXT_268 = halt.module$(EXEEXT) -@COND_riscv64_efi_TRUE@am__EXEEXT_269 = halt.module$(EXEEXT) -@COND_emu_TRUE@am__EXEEXT_270 = reboot.module$(EXEEXT) -@COND_i386_pc_TRUE@am__EXEEXT_271 = reboot.module$(EXEEXT) -@COND_i386_efi_TRUE@am__EXEEXT_272 = reboot.module$(EXEEXT) -@COND_i386_qemu_TRUE@am__EXEEXT_273 = reboot.module$(EXEEXT) -@COND_i386_coreboot_TRUE@am__EXEEXT_274 = reboot.module$(EXEEXT) -@COND_i386_multiboot_TRUE@am__EXEEXT_275 = reboot.module$(EXEEXT) -@COND_i386_ieee1275_TRUE@am__EXEEXT_276 = reboot.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__EXEEXT_277 = reboot.module$(EXEEXT) -@COND_i386_xen_TRUE@am__EXEEXT_278 = reboot.module$(EXEEXT) -@COND_x86_64_xen_TRUE@am__EXEEXT_279 = reboot.module$(EXEEXT) -@COND_i386_xen_pvh_TRUE@am__EXEEXT_280 = reboot.module$(EXEEXT) -@COND_mips_loongson_TRUE@am__EXEEXT_281 = reboot.module$(EXEEXT) -@COND_sparc64_ieee1275_TRUE@am__EXEEXT_282 = reboot.module$(EXEEXT) -@COND_powerpc_ieee1275_TRUE@am__EXEEXT_283 = reboot.module$(EXEEXT) -@COND_mips_arc_TRUE@am__EXEEXT_284 = reboot.module$(EXEEXT) -@COND_ia64_efi_TRUE@am__EXEEXT_285 = reboot.module$(EXEEXT) -@COND_mips_qemu_mips_TRUE@am__EXEEXT_286 = reboot.module$(EXEEXT) -@COND_arm_uboot_TRUE@am__EXEEXT_287 = reboot.module$(EXEEXT) -@COND_arm_efi_TRUE@am__EXEEXT_288 = reboot.module$(EXEEXT) -@COND_arm64_efi_TRUE@am__EXEEXT_289 = reboot.module$(EXEEXT) -@COND_arm_coreboot_TRUE@am__EXEEXT_290 = reboot.module$(EXEEXT) -@COND_riscv32_efi_TRUE@am__EXEEXT_291 = reboot.module$(EXEEXT) -@COND_riscv64_efi_TRUE@am__EXEEXT_292 = reboot.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__EXEEXT_293 = shim_lock.module$(EXEEXT) -@COND_i386_pc_TRUE@am__EXEEXT_294 = hdparm.module$(EXEEXT) -@COND_i386_efi_TRUE@am__EXEEXT_295 = hdparm.module$(EXEEXT) -@COND_i386_qemu_TRUE@am__EXEEXT_296 = hdparm.module$(EXEEXT) -@COND_i386_coreboot_TRUE@am__EXEEXT_297 = hdparm.module$(EXEEXT) -@COND_i386_multiboot_TRUE@am__EXEEXT_298 = hdparm.module$(EXEEXT) -@COND_i386_ieee1275_TRUE@am__EXEEXT_299 = hdparm.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__EXEEXT_300 = hdparm.module$(EXEEXT) -@COND_mips_loongson_TRUE@am__EXEEXT_301 = hdparm.module$(EXEEXT) -@COND_mips_qemu_mips_TRUE@am__EXEEXT_302 = hdparm.module$(EXEEXT) -@COND_i386_efi_TRUE@am__EXEEXT_303 = loadbios.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__EXEEXT_304 = loadbios.module$(EXEEXT) -@COND_i386_pc_TRUE@am__EXEEXT_305 = lspci.module$(EXEEXT) -@COND_i386_efi_TRUE@am__EXEEXT_306 = lspci.module$(EXEEXT) -@COND_i386_qemu_TRUE@am__EXEEXT_307 = lspci.module$(EXEEXT) -@COND_i386_coreboot_TRUE@am__EXEEXT_308 = lspci.module$(EXEEXT) -@COND_i386_multiboot_TRUE@am__EXEEXT_309 = lspci.module$(EXEEXT) -@COND_i386_ieee1275_TRUE@am__EXEEXT_310 = lspci.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__EXEEXT_311 = lspci.module$(EXEEXT) -@COND_mips_loongson_TRUE@am__EXEEXT_312 = lspci.module$(EXEEXT) -@COND_i386_pc_TRUE@am__EXEEXT_313 = play.module$(EXEEXT) -@COND_i386_efi_TRUE@am__EXEEXT_314 = play.module$(EXEEXT) -@COND_i386_qemu_TRUE@am__EXEEXT_315 = play.module$(EXEEXT) -@COND_i386_coreboot_TRUE@am__EXEEXT_316 = play.module$(EXEEXT) -@COND_i386_multiboot_TRUE@am__EXEEXT_317 = play.module$(EXEEXT) -@COND_i386_ieee1275_TRUE@am__EXEEXT_318 = play.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__EXEEXT_319 = play.module$(EXEEXT) -@COND_i386_pc_TRUE@am__EXEEXT_320 = spkmodem.module$(EXEEXT) -@COND_i386_efi_TRUE@am__EXEEXT_321 = spkmodem.module$(EXEEXT) -@COND_i386_qemu_TRUE@am__EXEEXT_322 = spkmodem.module$(EXEEXT) -@COND_i386_coreboot_TRUE@am__EXEEXT_323 = spkmodem.module$(EXEEXT) -@COND_i386_multiboot_TRUE@am__EXEEXT_324 = spkmodem.module$(EXEEXT) -@COND_i386_ieee1275_TRUE@am__EXEEXT_325 = spkmodem.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__EXEEXT_326 = spkmodem.module$(EXEEXT) -@COND_i386_pc_TRUE@am__EXEEXT_327 = morse.module$(EXEEXT) -@COND_i386_efi_TRUE@am__EXEEXT_328 = morse.module$(EXEEXT) -@COND_i386_qemu_TRUE@am__EXEEXT_329 = morse.module$(EXEEXT) -@COND_i386_coreboot_TRUE@am__EXEEXT_330 = morse.module$(EXEEXT) -@COND_i386_multiboot_TRUE@am__EXEEXT_331 = morse.module$(EXEEXT) -@COND_i386_ieee1275_TRUE@am__EXEEXT_332 = morse.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__EXEEXT_333 = morse.module$(EXEEXT) -@COND_i386_pc_TRUE@am__EXEEXT_334 = setpci.module$(EXEEXT) -@COND_i386_efi_TRUE@am__EXEEXT_335 = setpci.module$(EXEEXT) -@COND_i386_qemu_TRUE@am__EXEEXT_336 = setpci.module$(EXEEXT) -@COND_i386_coreboot_TRUE@am__EXEEXT_337 = setpci.module$(EXEEXT) -@COND_i386_multiboot_TRUE@am__EXEEXT_338 = setpci.module$(EXEEXT) -@COND_i386_ieee1275_TRUE@am__EXEEXT_339 = setpci.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__EXEEXT_340 = setpci.module$(EXEEXT) -@COND_mips_loongson_TRUE@am__EXEEXT_341 = setpci.module$(EXEEXT) -@COND_i386_pc_TRUE@am__EXEEXT_342 = pcidump.module$(EXEEXT) -@COND_i386_efi_TRUE@am__EXEEXT_343 = pcidump.module$(EXEEXT) -@COND_i386_qemu_TRUE@am__EXEEXT_344 = pcidump.module$(EXEEXT) -@COND_i386_coreboot_TRUE@am__EXEEXT_345 = pcidump.module$(EXEEXT) -@COND_i386_multiboot_TRUE@am__EXEEXT_346 = pcidump.module$(EXEEXT) -@COND_i386_ieee1275_TRUE@am__EXEEXT_347 = pcidump.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__EXEEXT_348 = pcidump.module$(EXEEXT) -@COND_mips_loongson_TRUE@am__EXEEXT_349 = pcidump.module$(EXEEXT) -@COND_i386_ieee1275_TRUE@am__EXEEXT_350 = suspend.module$(EXEEXT) -@COND_powerpc_ieee1275_TRUE@am__EXEEXT_351 = suspend.module$(EXEEXT) \ -@COND_powerpc_ieee1275_TRUE@ escc.module$(EXEEXT) -@COND_i386_pc_TRUE@am__EXEEXT_352 = usbtest.module$(EXEEXT) -@COND_i386_efi_TRUE@am__EXEEXT_353 = usbtest.module$(EXEEXT) -@COND_i386_qemu_TRUE@am__EXEEXT_354 = usbtest.module$(EXEEXT) -@COND_i386_coreboot_TRUE@am__EXEEXT_355 = usbtest.module$(EXEEXT) -@COND_i386_multiboot_TRUE@am__EXEEXT_356 = usbtest.module$(EXEEXT) -@COND_i386_ieee1275_TRUE@am__EXEEXT_357 = usbtest.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__EXEEXT_358 = usbtest.module$(EXEEXT) -@COND_mips_loongson_TRUE@am__EXEEXT_359 = usbtest.module$(EXEEXT) -@COND_arm_coreboot_TRUE@am__EXEEXT_360 = usbtest.module$(EXEEXT) -@COND_i386_pc_TRUE@am__EXEEXT_361 = ata.module$(EXEEXT) -@COND_i386_efi_TRUE@am__EXEEXT_362 = ata.module$(EXEEXT) -@COND_i386_qemu_TRUE@am__EXEEXT_363 = ata.module$(EXEEXT) -@COND_i386_coreboot_TRUE@am__EXEEXT_364 = ata.module$(EXEEXT) -@COND_i386_multiboot_TRUE@am__EXEEXT_365 = ata.module$(EXEEXT) -@COND_i386_ieee1275_TRUE@am__EXEEXT_366 = ata.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__EXEEXT_367 = ata.module$(EXEEXT) -@COND_mips_loongson_TRUE@am__EXEEXT_368 = ata.module$(EXEEXT) -@COND_mips_qemu_mips_TRUE@am__EXEEXT_369 = ata.module$(EXEEXT) -@COND_i386_pc_TRUE@am__EXEEXT_370 = ahci.module$(EXEEXT) -@COND_i386_efi_TRUE@am__EXEEXT_371 = ahci.module$(EXEEXT) -@COND_i386_qemu_TRUE@am__EXEEXT_372 = ahci.module$(EXEEXT) -@COND_i386_coreboot_TRUE@am__EXEEXT_373 = ahci.module$(EXEEXT) -@COND_i386_multiboot_TRUE@am__EXEEXT_374 = ahci.module$(EXEEXT) -@COND_i386_ieee1275_TRUE@am__EXEEXT_375 = ahci.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__EXEEXT_376 = ahci.module$(EXEEXT) -@COND_mips_loongson_TRUE@am__EXEEXT_377 = ahci.module$(EXEEXT) -@COND_i386_pc_TRUE@am__EXEEXT_378 = pata.module$(EXEEXT) -@COND_i386_efi_TRUE@am__EXEEXT_379 = pata.module$(EXEEXT) -@COND_i386_qemu_TRUE@am__EXEEXT_380 = pata.module$(EXEEXT) -@COND_i386_coreboot_TRUE@am__EXEEXT_381 = pata.module$(EXEEXT) -@COND_i386_multiboot_TRUE@am__EXEEXT_382 = pata.module$(EXEEXT) -@COND_i386_ieee1275_TRUE@am__EXEEXT_383 = pata.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__EXEEXT_384 = pata.module$(EXEEXT) -@COND_mips_loongson_TRUE@am__EXEEXT_385 = pata.module$(EXEEXT) -@COND_mips_qemu_mips_TRUE@am__EXEEXT_386 = pata.module$(EXEEXT) -@COND_i386_pc_TRUE@am__EXEEXT_387 = biosdisk.module$(EXEEXT) \ -@COND_i386_pc_TRUE@ usbms.module$(EXEEXT) -@COND_i386_efi_TRUE@am__EXEEXT_388 = usbms.module$(EXEEXT) -@COND_i386_qemu_TRUE@am__EXEEXT_389 = usbms.module$(EXEEXT) -@COND_i386_coreboot_TRUE@am__EXEEXT_390 = usbms.module$(EXEEXT) -@COND_i386_multiboot_TRUE@am__EXEEXT_391 = usbms.module$(EXEEXT) -@COND_i386_ieee1275_TRUE@am__EXEEXT_392 = usbms.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__EXEEXT_393 = usbms.module$(EXEEXT) -@COND_mips_loongson_TRUE@am__EXEEXT_394 = usbms.module$(EXEEXT) -@COND_arm_coreboot_TRUE@am__EXEEXT_395 = usbms.module$(EXEEXT) -@COND_i386_ieee1275_TRUE@am__EXEEXT_396 = nand.module$(EXEEXT) -@COND_i386_pc_TRUE@am__EXEEXT_397 = efiemu.module$(EXEEXT) -@COND_i386_qemu_TRUE@am__EXEEXT_398 = efiemu.module$(EXEEXT) -@COND_i386_coreboot_TRUE@am__EXEEXT_399 = efiemu.module$(EXEEXT) -@COND_i386_multiboot_TRUE@am__EXEEXT_400 = efiemu.module$(EXEEXT) -@COND_i386_ieee1275_TRUE@am__EXEEXT_401 = efiemu.module$(EXEEXT) -@COND_emu_TRUE@am__EXEEXT_402 = font.module$(EXEEXT) -@COND_i386_pc_TRUE@am__EXEEXT_403 = font.module$(EXEEXT) -@COND_i386_efi_TRUE@am__EXEEXT_404 = font.module$(EXEEXT) -@COND_i386_qemu_TRUE@am__EXEEXT_405 = font.module$(EXEEXT) -@COND_i386_multiboot_TRUE@am__EXEEXT_406 = font.module$(EXEEXT) -@COND_i386_ieee1275_TRUE@am__EXEEXT_407 = font.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__EXEEXT_408 = font.module$(EXEEXT) -@COND_i386_xen_TRUE@am__EXEEXT_409 = font.module$(EXEEXT) -@COND_x86_64_xen_TRUE@am__EXEEXT_410 = font.module$(EXEEXT) -@COND_i386_xen_pvh_TRUE@am__EXEEXT_411 = font.module$(EXEEXT) -@COND_sparc64_ieee1275_TRUE@am__EXEEXT_412 = font.module$(EXEEXT) -@COND_powerpc_ieee1275_TRUE@am__EXEEXT_413 = font.module$(EXEEXT) -@COND_mips_arc_TRUE@am__EXEEXT_414 = font.module$(EXEEXT) -@COND_ia64_efi_TRUE@am__EXEEXT_415 = font.module$(EXEEXT) -@COND_mips_qemu_mips_TRUE@am__EXEEXT_416 = font.module$(EXEEXT) -@COND_arm_uboot_TRUE@am__EXEEXT_417 = font.module$(EXEEXT) -@COND_arm_efi_TRUE@am__EXEEXT_418 = font.module$(EXEEXT) -@COND_arm64_efi_TRUE@am__EXEEXT_419 = font.module$(EXEEXT) -@COND_riscv32_efi_TRUE@am__EXEEXT_420 = font.module$(EXEEXT) -@COND_riscv64_efi_TRUE@am__EXEEXT_421 = font.module$(EXEEXT) -@COND_i386_pc_TRUE@am__EXEEXT_422 = pxe.module$(EXEEXT) -@COND_emu_TRUE@am__EXEEXT_423 = bufio.module$(EXEEXT) -@COND_i386_pc_TRUE@am__EXEEXT_424 = bufio.module$(EXEEXT) -@COND_i386_efi_TRUE@am__EXEEXT_425 = bufio.module$(EXEEXT) -@COND_i386_qemu_TRUE@am__EXEEXT_426 = bufio.module$(EXEEXT) -@COND_i386_multiboot_TRUE@am__EXEEXT_427 = bufio.module$(EXEEXT) -@COND_i386_ieee1275_TRUE@am__EXEEXT_428 = bufio.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__EXEEXT_429 = bufio.module$(EXEEXT) -@COND_i386_xen_TRUE@am__EXEEXT_430 = bufio.module$(EXEEXT) -@COND_x86_64_xen_TRUE@am__EXEEXT_431 = bufio.module$(EXEEXT) -@COND_i386_xen_pvh_TRUE@am__EXEEXT_432 = bufio.module$(EXEEXT) -@COND_sparc64_ieee1275_TRUE@am__EXEEXT_433 = bufio.module$(EXEEXT) -@COND_powerpc_ieee1275_TRUE@am__EXEEXT_434 = bufio.module$(EXEEXT) -@COND_mips_arc_TRUE@am__EXEEXT_435 = bufio.module$(EXEEXT) -@COND_ia64_efi_TRUE@am__EXEEXT_436 = bufio.module$(EXEEXT) -@COND_mips_qemu_mips_TRUE@am__EXEEXT_437 = bufio.module$(EXEEXT) -@COND_arm_uboot_TRUE@am__EXEEXT_438 = bufio.module$(EXEEXT) -@COND_arm_efi_TRUE@am__EXEEXT_439 = bufio.module$(EXEEXT) -@COND_arm64_efi_TRUE@am__EXEEXT_440 = bufio.module$(EXEEXT) -@COND_riscv32_efi_TRUE@am__EXEEXT_441 = bufio.module$(EXEEXT) -@COND_riscv64_efi_TRUE@am__EXEEXT_442 = bufio.module$(EXEEXT) -@COND_i386_pc_TRUE@am__EXEEXT_443 = relocator.module$(EXEEXT) -@COND_i386_efi_TRUE@am__EXEEXT_444 = relocator.module$(EXEEXT) -@COND_i386_qemu_TRUE@am__EXEEXT_445 = relocator.module$(EXEEXT) -@COND_i386_coreboot_TRUE@am__EXEEXT_446 = relocator.module$(EXEEXT) -@COND_i386_multiboot_TRUE@am__EXEEXT_447 = relocator.module$(EXEEXT) -@COND_i386_ieee1275_TRUE@am__EXEEXT_448 = relocator.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__EXEEXT_449 = relocator.module$(EXEEXT) -@COND_i386_xen_TRUE@am__EXEEXT_450 = relocator.module$(EXEEXT) -@COND_x86_64_xen_TRUE@am__EXEEXT_451 = relocator.module$(EXEEXT) -@COND_i386_xen_pvh_TRUE@am__EXEEXT_452 = relocator.module$(EXEEXT) -@COND_mips_loongson_TRUE@am__EXEEXT_453 = relocator.module$(EXEEXT) -@COND_powerpc_ieee1275_TRUE@am__EXEEXT_454 = \ -@COND_powerpc_ieee1275_TRUE@ relocator.module$(EXEEXT) -@COND_mips_arc_TRUE@am__EXEEXT_455 = relocator.module$(EXEEXT) -@COND_mips_qemu_mips_TRUE@am__EXEEXT_456 = relocator.module$(EXEEXT) -@COND_i386_pc_TRUE@am__EXEEXT_457 = datetime.module$(EXEEXT) -@COND_i386_efi_TRUE@am__EXEEXT_458 = datetime.module$(EXEEXT) -@COND_i386_qemu_TRUE@am__EXEEXT_459 = datetime.module$(EXEEXT) -@COND_i386_coreboot_TRUE@am__EXEEXT_460 = datetime.module$(EXEEXT) -@COND_i386_multiboot_TRUE@am__EXEEXT_461 = datetime.module$(EXEEXT) -@COND_i386_ieee1275_TRUE@am__EXEEXT_462 = datetime.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__EXEEXT_463 = datetime.module$(EXEEXT) -@COND_i386_xen_TRUE@am__EXEEXT_464 = datetime.module$(EXEEXT) -@COND_x86_64_xen_TRUE@am__EXEEXT_465 = datetime.module$(EXEEXT) -@COND_i386_xen_pvh_TRUE@am__EXEEXT_466 = datetime.module$(EXEEXT) -@COND_mips_loongson_TRUE@am__EXEEXT_467 = datetime.module$(EXEEXT) -@COND_sparc64_ieee1275_TRUE@am__EXEEXT_468 = datetime.module$(EXEEXT) -@COND_powerpc_ieee1275_TRUE@am__EXEEXT_469 = datetime.module$(EXEEXT) -@COND_mips_arc_TRUE@am__EXEEXT_470 = datetime.module$(EXEEXT) -@COND_ia64_efi_TRUE@am__EXEEXT_471 = datetime.module$(EXEEXT) -@COND_mips_qemu_mips_TRUE@am__EXEEXT_472 = datetime.module$(EXEEXT) -@COND_arm_uboot_TRUE@am__EXEEXT_473 = datetime.module$(EXEEXT) -@COND_arm_efi_TRUE@am__EXEEXT_474 = datetime.module$(EXEEXT) -@COND_arm64_efi_TRUE@am__EXEEXT_475 = datetime.module$(EXEEXT) -@COND_arm_coreboot_TRUE@am__EXEEXT_476 = datetime.module$(EXEEXT) -@COND_riscv32_efi_TRUE@am__EXEEXT_477 = datetime.module$(EXEEXT) -@COND_riscv64_efi_TRUE@am__EXEEXT_478 = datetime.module$(EXEEXT) -@COND_i386_pc_TRUE@am__EXEEXT_479 = aout.module$(EXEEXT) -@COND_i386_efi_TRUE@am__EXEEXT_480 = aout.module$(EXEEXT) -@COND_i386_qemu_TRUE@am__EXEEXT_481 = aout.module$(EXEEXT) -@COND_i386_coreboot_TRUE@am__EXEEXT_482 = aout.module$(EXEEXT) -@COND_i386_multiboot_TRUE@am__EXEEXT_483 = aout.module$(EXEEXT) -@COND_i386_ieee1275_TRUE@am__EXEEXT_484 = aout.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__EXEEXT_485 = aout.module$(EXEEXT) -@COND_i386_pc_TRUE@am__EXEEXT_486 = bsd.module$(EXEEXT) -@COND_i386_efi_TRUE@am__EXEEXT_487 = bsd.module$(EXEEXT) -@COND_i386_qemu_TRUE@am__EXEEXT_488 = bsd.module$(EXEEXT) -@COND_i386_coreboot_TRUE@am__EXEEXT_489 = bsd.module$(EXEEXT) -@COND_i386_multiboot_TRUE@am__EXEEXT_490 = bsd.module$(EXEEXT) -@COND_i386_ieee1275_TRUE@am__EXEEXT_491 = bsd.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__EXEEXT_492 = bsd.module$(EXEEXT) -@COND_i386_pc_TRUE@am__EXEEXT_493 = plan9.module$(EXEEXT) \ -@COND_i386_pc_TRUE@ linux16.module$(EXEEXT) -@COND_i386_efi_TRUE@am__EXEEXT_494 = linux16.module$(EXEEXT) -@COND_i386_qemu_TRUE@am__EXEEXT_495 = linux16.module$(EXEEXT) -@COND_i386_coreboot_TRUE@am__EXEEXT_496 = linux16.module$(EXEEXT) -@COND_i386_multiboot_TRUE@am__EXEEXT_497 = linux16.module$(EXEEXT) -@COND_i386_ieee1275_TRUE@am__EXEEXT_498 = linux16.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__EXEEXT_499 = linux16.module$(EXEEXT) -@COND_i386_pc_TRUE@am__EXEEXT_500 = ntldr.module$(EXEEXT) \ -@COND_i386_pc_TRUE@ truecrypt.module$(EXEEXT) \ -@COND_i386_pc_TRUE@ freedos.module$(EXEEXT) \ -@COND_i386_pc_TRUE@ pxechain.module$(EXEEXT) \ -@COND_i386_pc_TRUE@ multiboot2.module$(EXEEXT) -@COND_i386_efi_TRUE@am__EXEEXT_501 = multiboot2.module$(EXEEXT) -@COND_i386_qemu_TRUE@am__EXEEXT_502 = multiboot2.module$(EXEEXT) -@COND_i386_coreboot_TRUE@am__EXEEXT_503 = multiboot2.module$(EXEEXT) -@COND_i386_multiboot_TRUE@am__EXEEXT_504 = multiboot2.module$(EXEEXT) -@COND_i386_ieee1275_TRUE@am__EXEEXT_505 = multiboot2.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__EXEEXT_506 = multiboot2.module$(EXEEXT) -@COND_i386_xen_pvh_TRUE@am__EXEEXT_507 = multiboot2.module$(EXEEXT) -@COND_mips_loongson_TRUE@am__EXEEXT_508 = multiboot2.module$(EXEEXT) -@COND_mips_arc_TRUE@am__EXEEXT_509 = multiboot2.module$(EXEEXT) -@COND_mips_qemu_mips_TRUE@am__EXEEXT_510 = multiboot2.module$(EXEEXT) -@COND_i386_pc_TRUE@am__EXEEXT_511 = multiboot.module$(EXEEXT) -@COND_i386_efi_TRUE@am__EXEEXT_512 = multiboot.module$(EXEEXT) -@COND_i386_qemu_TRUE@am__EXEEXT_513 = multiboot.module$(EXEEXT) -@COND_i386_coreboot_TRUE@am__EXEEXT_514 = multiboot.module$(EXEEXT) -@COND_i386_multiboot_TRUE@am__EXEEXT_515 = multiboot.module$(EXEEXT) -@COND_i386_ieee1275_TRUE@am__EXEEXT_516 = multiboot.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__EXEEXT_517 = multiboot.module$(EXEEXT) -@COND_i386_xen_pvh_TRUE@am__EXEEXT_518 = multiboot.module$(EXEEXT) -@COND_arm64_efi_TRUE@am__EXEEXT_519 = xen_boot.module$(EXEEXT) -@COND_i386_pc_TRUE@am__EXEEXT_520 = linux.module$(EXEEXT) -@COND_i386_efi_TRUE@am__EXEEXT_521 = linux.module$(EXEEXT) -@COND_i386_qemu_TRUE@am__EXEEXT_522 = linux.module$(EXEEXT) -@COND_i386_coreboot_TRUE@am__EXEEXT_523 = linux.module$(EXEEXT) -@COND_i386_multiboot_TRUE@am__EXEEXT_524 = linux.module$(EXEEXT) -@COND_i386_ieee1275_TRUE@am__EXEEXT_525 = linux.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__EXEEXT_526 = linux.module$(EXEEXT) -@COND_i386_xen_TRUE@am__EXEEXT_527 = linux.module$(EXEEXT) -@COND_x86_64_xen_TRUE@am__EXEEXT_528 = linux.module$(EXEEXT) -@COND_i386_xen_pvh_TRUE@am__EXEEXT_529 = linux.module$(EXEEXT) -@COND_mips_loongson_TRUE@am__EXEEXT_530 = linux.module$(EXEEXT) -@COND_sparc64_ieee1275_TRUE@am__EXEEXT_531 = linux.module$(EXEEXT) -@COND_powerpc_ieee1275_TRUE@am__EXEEXT_532 = linux.module$(EXEEXT) -@COND_mips_arc_TRUE@am__EXEEXT_533 = linux.module$(EXEEXT) -@COND_ia64_efi_TRUE@am__EXEEXT_534 = linux.module$(EXEEXT) -@COND_mips_qemu_mips_TRUE@am__EXEEXT_535 = linux.module$(EXEEXT) -@COND_arm_uboot_TRUE@am__EXEEXT_536 = linux.module$(EXEEXT) -@COND_arm_efi_TRUE@am__EXEEXT_537 = linux.module$(EXEEXT) -@COND_arm64_efi_TRUE@am__EXEEXT_538 = linux.module$(EXEEXT) -@COND_arm_coreboot_TRUE@am__EXEEXT_539 = linux.module$(EXEEXT) -@COND_riscv32_efi_TRUE@am__EXEEXT_540 = linux.module$(EXEEXT) -@COND_riscv64_efi_TRUE@am__EXEEXT_541 = linux.module$(EXEEXT) -@COND_arm_uboot_TRUE@am__EXEEXT_542 = fdt.module$(EXEEXT) -@COND_arm_efi_TRUE@am__EXEEXT_543 = fdt.module$(EXEEXT) -@COND_arm64_efi_TRUE@am__EXEEXT_544 = fdt.module$(EXEEXT) -@COND_riscv32_efi_TRUE@am__EXEEXT_545 = fdt.module$(EXEEXT) -@COND_riscv64_efi_TRUE@am__EXEEXT_546 = fdt.module$(EXEEXT) -@COND_i386_pc_TRUE@am__EXEEXT_547 = xnu.module$(EXEEXT) -@COND_i386_efi_TRUE@am__EXEEXT_548 = xnu.module$(EXEEXT) -@COND_i386_coreboot_TRUE@am__EXEEXT_549 = xnu.module$(EXEEXT) -@COND_i386_multiboot_TRUE@am__EXEEXT_550 = xnu.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__EXEEXT_551 = xnu.module$(EXEEXT) -@COND_i386_pc_TRUE@am__EXEEXT_552 = random.module$(EXEEXT) -@COND_i386_efi_TRUE@am__EXEEXT_553 = random.module$(EXEEXT) -@COND_i386_coreboot_TRUE@am__EXEEXT_554 = random.module$(EXEEXT) -@COND_i386_multiboot_TRUE@am__EXEEXT_555 = random.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__EXEEXT_556 = random.module$(EXEEXT) -@COND_i386_efi_TRUE@am__EXEEXT_557 = appleldr.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__EXEEXT_558 = appleldr.module$(EXEEXT) -@COND_i386_pc_TRUE@am__EXEEXT_559 = chain.module$(EXEEXT) -@COND_i386_efi_TRUE@am__EXEEXT_560 = chain.module$(EXEEXT) -@COND_i386_coreboot_TRUE@am__EXEEXT_561 = chain.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__EXEEXT_562 = chain.module$(EXEEXT) -@COND_ia64_efi_TRUE@am__EXEEXT_563 = chain.module$(EXEEXT) -@COND_arm_efi_TRUE@am__EXEEXT_564 = chain.module$(EXEEXT) -@COND_arm64_efi_TRUE@am__EXEEXT_565 = chain.module$(EXEEXT) -@COND_riscv32_efi_TRUE@am__EXEEXT_566 = chain.module$(EXEEXT) -@COND_riscv64_efi_TRUE@am__EXEEXT_567 = chain.module$(EXEEXT) -@COND_i386_pc_TRUE@am__EXEEXT_568 = mmap.module$(EXEEXT) -@COND_i386_efi_TRUE@am__EXEEXT_569 = mmap.module$(EXEEXT) -@COND_i386_qemu_TRUE@am__EXEEXT_570 = mmap.module$(EXEEXT) -@COND_i386_coreboot_TRUE@am__EXEEXT_571 = mmap.module$(EXEEXT) -@COND_i386_multiboot_TRUE@am__EXEEXT_572 = mmap.module$(EXEEXT) -@COND_i386_ieee1275_TRUE@am__EXEEXT_573 = mmap.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__EXEEXT_574 = mmap.module$(EXEEXT) -@COND_i386_xen_pvh_TRUE@am__EXEEXT_575 = mmap.module$(EXEEXT) -@COND_mips_loongson_TRUE@am__EXEEXT_576 = mmap.module$(EXEEXT) -@COND_mips_arc_TRUE@am__EXEEXT_577 = mmap.module$(EXEEXT) -@COND_ia64_efi_TRUE@am__EXEEXT_578 = mmap.module$(EXEEXT) -@COND_mips_qemu_mips_TRUE@am__EXEEXT_579 = mmap.module$(EXEEXT) -@COND_arm_efi_TRUE@am__EXEEXT_580 = mmap.module$(EXEEXT) -@COND_arm64_efi_TRUE@am__EXEEXT_581 = mmap.module$(EXEEXT) -@COND_riscv32_efi_TRUE@am__EXEEXT_582 = mmap.module$(EXEEXT) -@COND_riscv64_efi_TRUE@am__EXEEXT_583 = mmap.module$(EXEEXT) -@COND_i386_pc_TRUE@am__EXEEXT_584 = at_keyboard.module$(EXEEXT) -@COND_i386_efi_TRUE@am__EXEEXT_585 = at_keyboard.module$(EXEEXT) -@COND_i386_qemu_TRUE@am__EXEEXT_586 = at_keyboard.module$(EXEEXT) -@COND_i386_coreboot_TRUE@am__EXEEXT_587 = at_keyboard.module$(EXEEXT) -@COND_i386_multiboot_TRUE@am__EXEEXT_588 = \ -@COND_i386_multiboot_TRUE@ at_keyboard.module$(EXEEXT) -@COND_i386_ieee1275_TRUE@am__EXEEXT_589 = at_keyboard.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__EXEEXT_590 = at_keyboard.module$(EXEEXT) -@COND_emu_TRUE@am__EXEEXT_591 = gfxterm.module$(EXEEXT) -@COND_i386_pc_TRUE@am__EXEEXT_592 = gfxterm.module$(EXEEXT) -@COND_i386_efi_TRUE@am__EXEEXT_593 = gfxterm.module$(EXEEXT) -@COND_i386_qemu_TRUE@am__EXEEXT_594 = gfxterm.module$(EXEEXT) -@COND_i386_multiboot_TRUE@am__EXEEXT_595 = gfxterm.module$(EXEEXT) -@COND_i386_ieee1275_TRUE@am__EXEEXT_596 = gfxterm.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__EXEEXT_597 = gfxterm.module$(EXEEXT) -@COND_i386_xen_TRUE@am__EXEEXT_598 = gfxterm.module$(EXEEXT) -@COND_x86_64_xen_TRUE@am__EXEEXT_599 = gfxterm.module$(EXEEXT) -@COND_i386_xen_pvh_TRUE@am__EXEEXT_600 = gfxterm.module$(EXEEXT) -@COND_sparc64_ieee1275_TRUE@am__EXEEXT_601 = gfxterm.module$(EXEEXT) -@COND_powerpc_ieee1275_TRUE@am__EXEEXT_602 = gfxterm.module$(EXEEXT) -@COND_mips_arc_TRUE@am__EXEEXT_603 = gfxterm.module$(EXEEXT) -@COND_ia64_efi_TRUE@am__EXEEXT_604 = gfxterm.module$(EXEEXT) -@COND_mips_qemu_mips_TRUE@am__EXEEXT_605 = gfxterm.module$(EXEEXT) -@COND_arm_uboot_TRUE@am__EXEEXT_606 = gfxterm.module$(EXEEXT) -@COND_arm_efi_TRUE@am__EXEEXT_607 = gfxterm.module$(EXEEXT) -@COND_arm64_efi_TRUE@am__EXEEXT_608 = gfxterm.module$(EXEEXT) -@COND_riscv32_efi_TRUE@am__EXEEXT_609 = gfxterm.module$(EXEEXT) -@COND_riscv64_efi_TRUE@am__EXEEXT_610 = gfxterm.module$(EXEEXT) -@COND_i386_pc_TRUE@am__EXEEXT_611 = serial.module$(EXEEXT) -@COND_i386_efi_TRUE@am__EXEEXT_612 = serial.module$(EXEEXT) -@COND_i386_qemu_TRUE@am__EXEEXT_613 = serial.module$(EXEEXT) -@COND_i386_coreboot_TRUE@am__EXEEXT_614 = serial.module$(EXEEXT) -@COND_i386_multiboot_TRUE@am__EXEEXT_615 = serial.module$(EXEEXT) -@COND_i386_ieee1275_TRUE@am__EXEEXT_616 = serial.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__EXEEXT_617 = serial.module$(EXEEXT) -@COND_sparc64_ieee1275_TRUE@am__EXEEXT_618 = serial.module$(EXEEXT) -@COND_powerpc_ieee1275_TRUE@am__EXEEXT_619 = serial.module$(EXEEXT) -@COND_mips_arc_TRUE@am__EXEEXT_620 = serial.module$(EXEEXT) -@COND_ia64_efi_TRUE@am__EXEEXT_621 = serial.module$(EXEEXT) -@COND_arm_efi_TRUE@am__EXEEXT_622 = serial.module$(EXEEXT) -@COND_arm64_efi_TRUE@am__EXEEXT_623 = serial.module$(EXEEXT) -@COND_arm_coreboot_TRUE@am__EXEEXT_624 = serial.module$(EXEEXT) -@COND_riscv32_efi_TRUE@am__EXEEXT_625 = serial.module$(EXEEXT) -@COND_riscv64_efi_TRUE@am__EXEEXT_626 = serial.module$(EXEEXT) -@COND_i386_pc_TRUE@am__EXEEXT_627 = sendkey.module$(EXEEXT) \ -@COND_i386_pc_TRUE@ terminfo.module$(EXEEXT) -@COND_i386_efi_TRUE@am__EXEEXT_628 = terminfo.module$(EXEEXT) -@COND_i386_qemu_TRUE@am__EXEEXT_629 = terminfo.module$(EXEEXT) -@COND_i386_coreboot_TRUE@am__EXEEXT_630 = terminfo.module$(EXEEXT) -@COND_i386_multiboot_TRUE@am__EXEEXT_631 = terminfo.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__EXEEXT_632 = terminfo.module$(EXEEXT) -@COND_ia64_efi_TRUE@am__EXEEXT_633 = terminfo.module$(EXEEXT) -@COND_arm_efi_TRUE@am__EXEEXT_634 = terminfo.module$(EXEEXT) -@COND_arm64_efi_TRUE@am__EXEEXT_635 = terminfo.module$(EXEEXT) -@COND_arm_coreboot_TRUE@am__EXEEXT_636 = terminfo.module$(EXEEXT) -@COND_riscv32_efi_TRUE@am__EXEEXT_637 = terminfo.module$(EXEEXT) -@COND_riscv64_efi_TRUE@am__EXEEXT_638 = terminfo.module$(EXEEXT) -@COND_i386_pc_TRUE@am__EXEEXT_639 = usb_keyboard.module$(EXEEXT) -@COND_i386_efi_TRUE@am__EXEEXT_640 = usb_keyboard.module$(EXEEXT) -@COND_i386_qemu_TRUE@am__EXEEXT_641 = usb_keyboard.module$(EXEEXT) -@COND_i386_coreboot_TRUE@am__EXEEXT_642 = \ -@COND_i386_coreboot_TRUE@ usb_keyboard.module$(EXEEXT) -@COND_i386_multiboot_TRUE@am__EXEEXT_643 = \ -@COND_i386_multiboot_TRUE@ usb_keyboard.module$(EXEEXT) -@COND_i386_ieee1275_TRUE@am__EXEEXT_644 = \ -@COND_i386_ieee1275_TRUE@ usb_keyboard.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__EXEEXT_645 = usb_keyboard.module$(EXEEXT) -@COND_mips_loongson_TRUE@am__EXEEXT_646 = \ -@COND_mips_loongson_TRUE@ usb_keyboard.module$(EXEEXT) -@COND_arm_coreboot_TRUE@am__EXEEXT_647 = usb_keyboard.module$(EXEEXT) -@COND_i386_pc_TRUE@am__EXEEXT_648 = vga.module$(EXEEXT) \ -@COND_i386_pc_TRUE@ vga_text.module$(EXEEXT) \ -@COND_i386_pc_TRUE@ mda_text.module$(EXEEXT) -@COND_i386_qemu_TRUE@am__EXEEXT_649 = mda_text.module$(EXEEXT) -@COND_i386_coreboot_TRUE@am__EXEEXT_650 = mda_text.module$(EXEEXT) -@COND_i386_multiboot_TRUE@am__EXEEXT_651 = mda_text.module$(EXEEXT) -@COND_i386_pc_TRUE@am__EXEEXT_652 = video_cirrus.module$(EXEEXT) -@COND_i386_efi_TRUE@am__EXEEXT_653 = video_cirrus.module$(EXEEXT) -@COND_i386_qemu_TRUE@am__EXEEXT_654 = video_cirrus.module$(EXEEXT) -@COND_i386_coreboot_TRUE@am__EXEEXT_655 = \ -@COND_i386_coreboot_TRUE@ video_cirrus.module$(EXEEXT) -@COND_i386_multiboot_TRUE@am__EXEEXT_656 = \ -@COND_i386_multiboot_TRUE@ video_cirrus.module$(EXEEXT) -@COND_i386_ieee1275_TRUE@am__EXEEXT_657 = \ -@COND_i386_ieee1275_TRUE@ video_cirrus.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__EXEEXT_658 = video_cirrus.module$(EXEEXT) -@COND_i386_pc_TRUE@am__EXEEXT_659 = video_bochs.module$(EXEEXT) -@COND_i386_efi_TRUE@am__EXEEXT_660 = video_bochs.module$(EXEEXT) -@COND_i386_qemu_TRUE@am__EXEEXT_661 = video_bochs.module$(EXEEXT) -@COND_i386_coreboot_TRUE@am__EXEEXT_662 = video_bochs.module$(EXEEXT) -@COND_i386_multiboot_TRUE@am__EXEEXT_663 = \ -@COND_i386_multiboot_TRUE@ video_bochs.module$(EXEEXT) -@COND_i386_ieee1275_TRUE@am__EXEEXT_664 = video_bochs.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__EXEEXT_665 = video_bochs.module$(EXEEXT) -@COND_emu_TRUE@am__EXEEXT_666 = legacy_password_test.module$(EXEEXT) -@COND_i386_pc_TRUE@am__EXEEXT_667 = \ -@COND_i386_pc_TRUE@ legacy_password_test.module$(EXEEXT) -@COND_i386_efi_TRUE@am__EXEEXT_668 = \ -@COND_i386_efi_TRUE@ legacy_password_test.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__EXEEXT_669 = \ -@COND_x86_64_efi_TRUE@ legacy_password_test.module$(EXEEXT) -@COND_i386_xen_TRUE@am__EXEEXT_670 = \ -@COND_i386_xen_TRUE@ legacy_password_test.module$(EXEEXT) -@COND_x86_64_xen_TRUE@am__EXEEXT_671 = \ -@COND_x86_64_xen_TRUE@ legacy_password_test.module$(EXEEXT) -@COND_i386_xen_pvh_TRUE@am__EXEEXT_672 = \ -@COND_i386_xen_pvh_TRUE@ legacy_password_test.module$(EXEEXT) -@COND_emu_TRUE@am__EXEEXT_673 = div.module$(EXEEXT) -@COND_i386_pc_TRUE@am__EXEEXT_674 = div.module$(EXEEXT) -@COND_i386_efi_TRUE@am__EXEEXT_675 = div.module$(EXEEXT) -@COND_i386_qemu_TRUE@am__EXEEXT_676 = div.module$(EXEEXT) -@COND_i386_coreboot_TRUE@am__EXEEXT_677 = div.module$(EXEEXT) -@COND_i386_multiboot_TRUE@am__EXEEXT_678 = div.module$(EXEEXT) -@COND_i386_ieee1275_TRUE@am__EXEEXT_679 = div.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__EXEEXT_680 = div.module$(EXEEXT) -@COND_i386_xen_TRUE@am__EXEEXT_681 = div.module$(EXEEXT) -@COND_x86_64_xen_TRUE@am__EXEEXT_682 = div.module$(EXEEXT) -@COND_i386_xen_pvh_TRUE@am__EXEEXT_683 = div.module$(EXEEXT) -@COND_mips_loongson_TRUE@am__EXEEXT_684 = div.module$(EXEEXT) -@COND_sparc64_ieee1275_TRUE@am__EXEEXT_685 = div.module$(EXEEXT) -@COND_powerpc_ieee1275_TRUE@am__EXEEXT_686 = div.module$(EXEEXT) -@COND_mips_arc_TRUE@am__EXEEXT_687 = div.module$(EXEEXT) -@COND_mips_qemu_mips_TRUE@am__EXEEXT_688 = div.module$(EXEEXT) -@COND_arm64_efi_TRUE@am__EXEEXT_689 = div.module$(EXEEXT) -@COND_riscv64_efi_TRUE@am__EXEEXT_690 = div.module$(EXEEXT) -@COND_i386_efi_TRUE@am__EXEEXT_691 = efi_gop.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__EXEEXT_692 = efi_gop.module$(EXEEXT) -@COND_ia64_efi_TRUE@am__EXEEXT_693 = efi_gop.module$(EXEEXT) -@COND_arm_efi_TRUE@am__EXEEXT_694 = efi_gop.module$(EXEEXT) -@COND_arm64_efi_TRUE@am__EXEEXT_695 = efi_gop.module$(EXEEXT) -@COND_riscv32_efi_TRUE@am__EXEEXT_696 = efi_gop.module$(EXEEXT) -@COND_riscv64_efi_TRUE@am__EXEEXT_697 = efi_gop.module$(EXEEXT) -@COND_i386_efi_TRUE@am__EXEEXT_698 = efi_uga.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__EXEEXT_699 = efi_uga.module$(EXEEXT) -@COND_i386_pc_TRUE@am__EXEEXT_700 = vbe.module$(EXEEXT) -@COND_emu_TRUE@am__EXEEXT_701 = video_fb.module$(EXEEXT) -@COND_i386_pc_TRUE@am__EXEEXT_702 = video_fb.module$(EXEEXT) -@COND_i386_efi_TRUE@am__EXEEXT_703 = video_fb.module$(EXEEXT) -@COND_i386_qemu_TRUE@am__EXEEXT_704 = video_fb.module$(EXEEXT) -@COND_i386_multiboot_TRUE@am__EXEEXT_705 = video_fb.module$(EXEEXT) -@COND_i386_ieee1275_TRUE@am__EXEEXT_706 = video_fb.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__EXEEXT_707 = video_fb.module$(EXEEXT) -@COND_i386_xen_TRUE@am__EXEEXT_708 = video_fb.module$(EXEEXT) -@COND_x86_64_xen_TRUE@am__EXEEXT_709 = video_fb.module$(EXEEXT) -@COND_i386_xen_pvh_TRUE@am__EXEEXT_710 = video_fb.module$(EXEEXT) -@COND_sparc64_ieee1275_TRUE@am__EXEEXT_711 = video_fb.module$(EXEEXT) -@COND_powerpc_ieee1275_TRUE@am__EXEEXT_712 = video_fb.module$(EXEEXT) -@COND_mips_arc_TRUE@am__EXEEXT_713 = video_fb.module$(EXEEXT) -@COND_ia64_efi_TRUE@am__EXEEXT_714 = video_fb.module$(EXEEXT) -@COND_mips_qemu_mips_TRUE@am__EXEEXT_715 = video_fb.module$(EXEEXT) -@COND_arm_uboot_TRUE@am__EXEEXT_716 = video_fb.module$(EXEEXT) -@COND_arm_efi_TRUE@am__EXEEXT_717 = video_fb.module$(EXEEXT) -@COND_arm64_efi_TRUE@am__EXEEXT_718 = video_fb.module$(EXEEXT) -@COND_riscv32_efi_TRUE@am__EXEEXT_719 = video_fb.module$(EXEEXT) -@COND_riscv64_efi_TRUE@am__EXEEXT_720 = video_fb.module$(EXEEXT) -@COND_emu_TRUE@am__EXEEXT_721 = video.module$(EXEEXT) -@COND_i386_pc_TRUE@am__EXEEXT_722 = video.module$(EXEEXT) -@COND_i386_efi_TRUE@am__EXEEXT_723 = video.module$(EXEEXT) -@COND_i386_qemu_TRUE@am__EXEEXT_724 = video.module$(EXEEXT) -@COND_i386_multiboot_TRUE@am__EXEEXT_725 = video.module$(EXEEXT) -@COND_i386_ieee1275_TRUE@am__EXEEXT_726 = video.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__EXEEXT_727 = video.module$(EXEEXT) -@COND_i386_xen_TRUE@am__EXEEXT_728 = video.module$(EXEEXT) -@COND_x86_64_xen_TRUE@am__EXEEXT_729 = video.module$(EXEEXT) -@COND_i386_xen_pvh_TRUE@am__EXEEXT_730 = video.module$(EXEEXT) -@COND_sparc64_ieee1275_TRUE@am__EXEEXT_731 = video.module$(EXEEXT) -@COND_powerpc_ieee1275_TRUE@am__EXEEXT_732 = video.module$(EXEEXT) -@COND_mips_arc_TRUE@am__EXEEXT_733 = video.module$(EXEEXT) -@COND_ia64_efi_TRUE@am__EXEEXT_734 = video.module$(EXEEXT) -@COND_mips_qemu_mips_TRUE@am__EXEEXT_735 = video.module$(EXEEXT) -@COND_arm_uboot_TRUE@am__EXEEXT_736 = video.module$(EXEEXT) -@COND_arm_efi_TRUE@am__EXEEXT_737 = video.module$(EXEEXT) -@COND_arm64_efi_TRUE@am__EXEEXT_738 = video.module$(EXEEXT) -@COND_riscv32_efi_TRUE@am__EXEEXT_739 = video.module$(EXEEXT) -@COND_riscv64_efi_TRUE@am__EXEEXT_740 = video.module$(EXEEXT) -@COND_powerpc_ieee1275_TRUE@am__EXEEXT_741 = \ -@COND_powerpc_ieee1275_TRUE@ ieee1275_fb.module$(EXEEXT) -@COND_GRUB_EMU_SDL_TRUE@@COND_emu_TRUE@am__EXEEXT_742 = \ -@COND_GRUB_EMU_SDL_TRUE@@COND_emu_TRUE@ sdl.module$(EXEEXT) -@COND_i386_ieee1275_TRUE@am__EXEEXT_743 = ofnet.module$(EXEEXT) -@COND_sparc64_ieee1275_TRUE@am__EXEEXT_744 = ofnet.module$(EXEEXT) -@COND_powerpc_ieee1275_TRUE@am__EXEEXT_745 = ofnet.module$(EXEEXT) -@COND_arm_uboot_TRUE@am__EXEEXT_746 = ubootnet.module$(EXEEXT) -@COND_i386_efi_TRUE@am__EXEEXT_747 = efinet.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__EXEEXT_748 = efinet.module$(EXEEXT) -@COND_ia64_efi_TRUE@am__EXEEXT_749 = efinet.module$(EXEEXT) -@COND_arm_efi_TRUE@am__EXEEXT_750 = efinet.module$(EXEEXT) -@COND_arm64_efi_TRUE@am__EXEEXT_751 = efinet.module$(EXEEXT) -@COND_riscv32_efi_TRUE@am__EXEEXT_752 = efinet.module$(EXEEXT) -@COND_riscv64_efi_TRUE@am__EXEEXT_753 = efinet.module$(EXEEXT) -@COND_emu_TRUE@am__EXEEXT_754 = emunet.module$(EXEEXT) \ -@COND_emu_TRUE@ legacycfg.module$(EXEEXT) -@COND_i386_pc_TRUE@am__EXEEXT_755 = legacycfg.module$(EXEEXT) -@COND_i386_efi_TRUE@am__EXEEXT_756 = legacycfg.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__EXEEXT_757 = legacycfg.module$(EXEEXT) -@COND_i386_xen_TRUE@am__EXEEXT_758 = legacycfg.module$(EXEEXT) -@COND_x86_64_xen_TRUE@am__EXEEXT_759 = legacycfg.module$(EXEEXT) -@COND_i386_xen_pvh_TRUE@am__EXEEXT_760 = legacycfg.module$(EXEEXT) -@COND_i386_pc_TRUE@am__EXEEXT_761 = backtrace.module$(EXEEXT) -@COND_i386_efi_TRUE@am__EXEEXT_762 = backtrace.module$(EXEEXT) -@COND_i386_qemu_TRUE@am__EXEEXT_763 = backtrace.module$(EXEEXT) -@COND_i386_coreboot_TRUE@am__EXEEXT_764 = backtrace.module$(EXEEXT) -@COND_i386_multiboot_TRUE@am__EXEEXT_765 = backtrace.module$(EXEEXT) -@COND_i386_ieee1275_TRUE@am__EXEEXT_766 = backtrace.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__EXEEXT_767 = backtrace.module$(EXEEXT) -@COND_i386_xen_TRUE@am__EXEEXT_768 = backtrace.module$(EXEEXT) -@COND_x86_64_xen_TRUE@am__EXEEXT_769 = backtrace.module$(EXEEXT) -@COND_i386_xen_pvh_TRUE@am__EXEEXT_770 = backtrace.module$(EXEEXT) -@COND_i386_pc_TRUE@am__EXEEXT_771 = lsapm.module$(EXEEXT) \ -@COND_i386_pc_TRUE@ keylayouts.module$(EXEEXT) -@COND_i386_efi_TRUE@am__EXEEXT_772 = keylayouts.module$(EXEEXT) -@COND_i386_qemu_TRUE@am__EXEEXT_773 = keylayouts.module$(EXEEXT) -@COND_i386_coreboot_TRUE@am__EXEEXT_774 = keylayouts.module$(EXEEXT) -@COND_i386_multiboot_TRUE@am__EXEEXT_775 = keylayouts.module$(EXEEXT) -@COND_i386_ieee1275_TRUE@am__EXEEXT_776 = keylayouts.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__EXEEXT_777 = keylayouts.module$(EXEEXT) -@COND_ENABLE_CACHE_STATS_TRUE@am__EXEEXT_778 = \ -@COND_ENABLE_CACHE_STATS_TRUE@ cacheinfo.module$(EXEEXT) -@COND_ENABLE_BOOT_TIME_STATS_TRUE@am__EXEEXT_779 = \ -@COND_ENABLE_BOOT_TIME_STATS_TRUE@ boottime.module$(EXEEXT) -@COND_i386_pc_TRUE@am__EXEEXT_780 = gdb.module$(EXEEXT) -@COND_i386_efi_TRUE@am__EXEEXT_781 = gdb.module$(EXEEXT) -@COND_i386_qemu_TRUE@am__EXEEXT_782 = gdb.module$(EXEEXT) -@COND_i386_coreboot_TRUE@am__EXEEXT_783 = gdb.module$(EXEEXT) -@COND_i386_multiboot_TRUE@am__EXEEXT_784 = gdb.module$(EXEEXT) -@COND_i386_ieee1275_TRUE@am__EXEEXT_785 = gdb.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__EXEEXT_786 = tpm.module$(EXEEXT) -@COND_i386_pc_TRUE@am__EXEEXT_787 = rdmsr.module$(EXEEXT) -@COND_i386_efi_TRUE@am__EXEEXT_788 = rdmsr.module$(EXEEXT) -@COND_i386_qemu_TRUE@am__EXEEXT_789 = rdmsr.module$(EXEEXT) -@COND_i386_coreboot_TRUE@am__EXEEXT_790 = rdmsr.module$(EXEEXT) -@COND_i386_multiboot_TRUE@am__EXEEXT_791 = rdmsr.module$(EXEEXT) -@COND_i386_ieee1275_TRUE@am__EXEEXT_792 = rdmsr.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__EXEEXT_793 = rdmsr.module$(EXEEXT) -@COND_i386_pc_TRUE@am__EXEEXT_794 = wrmsr.module$(EXEEXT) -@COND_i386_efi_TRUE@am__EXEEXT_795 = wrmsr.module$(EXEEXT) -@COND_i386_qemu_TRUE@am__EXEEXT_796 = wrmsr.module$(EXEEXT) -@COND_i386_coreboot_TRUE@am__EXEEXT_797 = wrmsr.module$(EXEEXT) -@COND_i386_multiboot_TRUE@am__EXEEXT_798 = wrmsr.module$(EXEEXT) -@COND_i386_ieee1275_TRUE@am__EXEEXT_799 = wrmsr.module$(EXEEXT) -@COND_x86_64_efi_TRUE@am__EXEEXT_800 = wrmsr.module$(EXEEXT) -@COND_emu_TRUE@am__EXEEXT_801 = kernel.exec$(EXEEXT) -@COND_i386_pc_TRUE@am__EXEEXT_802 = kernel.exec$(EXEEXT) -@COND_i386_efi_TRUE@am__EXEEXT_803 = kernel.exec$(EXEEXT) -@COND_i386_qemu_TRUE@am__EXEEXT_804 = kernel.exec$(EXEEXT) -@COND_i386_coreboot_TRUE@am__EXEEXT_805 = kernel.exec$(EXEEXT) -@COND_i386_multiboot_TRUE@am__EXEEXT_806 = kernel.exec$(EXEEXT) -@COND_i386_ieee1275_TRUE@am__EXEEXT_807 = kernel.exec$(EXEEXT) -@COND_x86_64_efi_TRUE@am__EXEEXT_808 = kernel.exec$(EXEEXT) -@COND_i386_xen_TRUE@am__EXEEXT_809 = kernel.exec$(EXEEXT) -@COND_x86_64_xen_TRUE@am__EXEEXT_810 = kernel.exec$(EXEEXT) -@COND_i386_xen_pvh_TRUE@am__EXEEXT_811 = kernel.exec$(EXEEXT) -@COND_mips_loongson_TRUE@am__EXEEXT_812 = kernel.exec$(EXEEXT) -@COND_sparc64_ieee1275_TRUE@am__EXEEXT_813 = kernel.exec$(EXEEXT) -@COND_powerpc_ieee1275_TRUE@am__EXEEXT_814 = kernel.exec$(EXEEXT) -@COND_mips_arc_TRUE@am__EXEEXT_815 = kernel.exec$(EXEEXT) -@COND_ia64_efi_TRUE@am__EXEEXT_816 = kernel.exec$(EXEEXT) -@COND_mips_qemu_mips_TRUE@am__EXEEXT_817 = kernel.exec$(EXEEXT) -@COND_arm_uboot_TRUE@am__EXEEXT_818 = kernel.exec$(EXEEXT) -@COND_arm_efi_TRUE@am__EXEEXT_819 = kernel.exec$(EXEEXT) -@COND_arm64_efi_TRUE@am__EXEEXT_820 = kernel.exec$(EXEEXT) -@COND_arm_coreboot_TRUE@am__EXEEXT_821 = kernel.exec$(EXEEXT) -@COND_riscv32_efi_TRUE@am__EXEEXT_822 = kernel.exec$(EXEEXT) -@COND_riscv64_efi_TRUE@am__EXEEXT_823 = kernel.exec$(EXEEXT) -@COND_i386_pc_TRUE@am__EXEEXT_824 = boot.image$(EXEEXT) -@COND_i386_qemu_TRUE@am__EXEEXT_825 = boot.image$(EXEEXT) -@COND_sparc64_ieee1275_TRUE@am__EXEEXT_826 = boot.image$(EXEEXT) -@COND_i386_pc_TRUE@am__EXEEXT_827 = boot_hybrid.image$(EXEEXT) \ -@COND_i386_pc_TRUE@ cdboot.image$(EXEEXT) -@COND_sparc64_ieee1275_TRUE@am__EXEEXT_828 = cdboot.image$(EXEEXT) -@COND_i386_pc_TRUE@am__EXEEXT_829 = pxeboot.image$(EXEEXT) \ -@COND_i386_pc_TRUE@ diskboot.image$(EXEEXT) -@COND_sparc64_ieee1275_TRUE@am__EXEEXT_830 = diskboot.image$(EXEEXT) -@COND_i386_pc_TRUE@am__EXEEXT_831 = lnxboot.image$(EXEEXT) -@COND_mips_loongson_TRUE@am__EXEEXT_832 = \ -@COND_mips_loongson_TRUE@ xz_decompress.image$(EXEEXT) -@COND_mips_arc_TRUE@am__EXEEXT_833 = xz_decompress.image$(EXEEXT) -@COND_mips_qemu_mips_TRUE@am__EXEEXT_834 = \ -@COND_mips_qemu_mips_TRUE@ xz_decompress.image$(EXEEXT) -@COND_mips_loongson_TRUE@am__EXEEXT_835 = \ -@COND_mips_loongson_TRUE@ none_decompress.image$(EXEEXT) -@COND_mips_arc_TRUE@am__EXEEXT_836 = none_decompress.image$(EXEEXT) -@COND_mips_qemu_mips_TRUE@am__EXEEXT_837 = \ -@COND_mips_qemu_mips_TRUE@ none_decompress.image$(EXEEXT) -@COND_i386_pc_TRUE@am__EXEEXT_838 = lzma_decompress.image$(EXEEXT) -@COND_mips_loongson_TRUE@am__EXEEXT_839 = fwstart.image$(EXEEXT) \ -@COND_mips_loongson_TRUE@ fwstart_fuloong2f.image$(EXEEXT) -PROGRAMS = $(bin_PROGRAMS) $(noinst_PROGRAMS) $(platform_PROGRAMS) \ - $(sbin_PROGRAMS) -am__acpi_module_SOURCES_DIST = commands/acpi.c kern/acpi.c \ - kern/i386/pc/acpi.c -am__dirstamp = $(am__leading_dot)dirstamp -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_ia64_efi_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_x86_64_efi_TRUE@am_acpi_module_OBJECTS = commands/acpi_module-acpi.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_ia64_efi_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_TRUE@am_acpi_module_OBJECTS = commands/acpi_module-acpi.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_ia64_efi_FALSE@@COND_riscv32_efi_TRUE@am_acpi_module_OBJECTS = commands/acpi_module-acpi.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_ia64_efi_TRUE@am_acpi_module_OBJECTS = commands/acpi_module-acpi.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@am_acpi_module_OBJECTS = kern/acpi_module-acpi.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@ kern/i386/pc/acpi_module-acpi.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@ commands/acpi_module-acpi.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_multiboot_TRUE@am_acpi_module_OBJECTS = commands/acpi_module-acpi.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_TRUE@am_acpi_module_OBJECTS = commands/acpi_module-acpi.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_i386_coreboot_TRUE@am_acpi_module_OBJECTS = commands/acpi_module-acpi.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_TRUE@am_acpi_module_OBJECTS = commands/acpi_module-acpi.$(OBJEXT) -@COND_arm64_efi_TRUE@am_acpi_module_OBJECTS = \ -@COND_arm64_efi_TRUE@ commands/acpi_module-acpi.$(OBJEXT) -nodist_acpi_module_OBJECTS = -acpi_module_OBJECTS = $(am_acpi_module_OBJECTS) \ - $(nodist_acpi_module_OBJECTS) -acpi_module_LINK = $(CCLD) $(acpi_module_CFLAGS) $(CFLAGS) \ - $(acpi_module_LDFLAGS) $(LDFLAGS) -o $@ -am_adler32_module_OBJECTS = lib/adler32_module-adler32.$(OBJEXT) -nodist_adler32_module_OBJECTS = -adler32_module_OBJECTS = $(am_adler32_module_OBJECTS) \ - $(nodist_adler32_module_OBJECTS) -adler32_module_LINK = $(CCLD) $(adler32_module_CFLAGS) $(CFLAGS) \ - $(adler32_module_LDFLAGS) $(LDFLAGS) -o $@ -am_affs_module_OBJECTS = fs/affs_module-affs.$(OBJEXT) -nodist_affs_module_OBJECTS = -affs_module_OBJECTS = $(am_affs_module_OBJECTS) \ - $(nodist_affs_module_OBJECTS) -affs_module_LINK = $(CCLD) $(affs_module_CFLAGS) $(CFLAGS) \ - $(affs_module_LDFLAGS) $(LDFLAGS) -o $@ -am_afs_module_OBJECTS = fs/afs_module-afs.$(OBJEXT) -nodist_afs_module_OBJECTS = -afs_module_OBJECTS = $(am_afs_module_OBJECTS) \ - $(nodist_afs_module_OBJECTS) -afs_module_LINK = $(CCLD) $(afs_module_CFLAGS) $(CFLAGS) \ - $(afs_module_LDFLAGS) $(LDFLAGS) -o $@ -am__ahci_module_SOURCES_DIST = disk/ahci.c -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_mips_loongson_FALSE@@COND_x86_64_efi_TRUE@am_ahci_module_OBJECTS = disk/ahci_module-ahci.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_mips_loongson_TRUE@am_ahci_module_OBJECTS = disk/ahci_module-ahci.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_TRUE@am_ahci_module_OBJECTS = disk/ahci_module-ahci.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@am_ahci_module_OBJECTS = disk/ahci_module-ahci.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_TRUE@am_ahci_module_OBJECTS = disk/ahci_module-ahci.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_TRUE@am_ahci_module_OBJECTS = disk/ahci_module-ahci.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_TRUE@am_ahci_module_OBJECTS = disk/ahci_module-ahci.$(OBJEXT) -@COND_i386_coreboot_TRUE@am_ahci_module_OBJECTS = \ -@COND_i386_coreboot_TRUE@ disk/ahci_module-ahci.$(OBJEXT) -nodist_ahci_module_OBJECTS = -ahci_module_OBJECTS = $(am_ahci_module_OBJECTS) \ - $(nodist_ahci_module_OBJECTS) -ahci_module_LINK = $(CCLD) $(ahci_module_CFLAGS) $(CFLAGS) \ - $(ahci_module_LDFLAGS) $(LDFLAGS) -o $@ -am_all_video_module_OBJECTS = \ - lib/all_video_module-fake_module.$(OBJEXT) -nodist_all_video_module_OBJECTS = -all_video_module_OBJECTS = $(am_all_video_module_OBJECTS) \ - $(nodist_all_video_module_OBJECTS) -all_video_module_LINK = $(CCLD) $(all_video_module_CFLAGS) $(CFLAGS) \ - $(all_video_module_LDFLAGS) $(LDFLAGS) -o $@ -am__aout_module_SOURCES_DIST = loader/aout.c -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_x86_64_efi_TRUE@am_aout_module_OBJECTS = loader/aout_module-aout.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_TRUE@am_aout_module_OBJECTS = loader/aout_module-aout.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@am_aout_module_OBJECTS = loader/aout_module-aout.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_TRUE@am_aout_module_OBJECTS = loader/aout_module-aout.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_TRUE@am_aout_module_OBJECTS = loader/aout_module-aout.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_TRUE@am_aout_module_OBJECTS = loader/aout_module-aout.$(OBJEXT) -@COND_i386_coreboot_TRUE@am_aout_module_OBJECTS = \ -@COND_i386_coreboot_TRUE@ loader/aout_module-aout.$(OBJEXT) -nodist_aout_module_OBJECTS = -aout_module_OBJECTS = $(am_aout_module_OBJECTS) \ - $(nodist_aout_module_OBJECTS) -aout_module_LINK = $(CCLD) $(aout_module_CFLAGS) $(CFLAGS) \ - $(aout_module_LDFLAGS) $(LDFLAGS) -o $@ -am__appleldr_module_SOURCES_DIST = loader/efi/appleloader.c -@COND_i386_efi_FALSE@@COND_x86_64_efi_TRUE@am_appleldr_module_OBJECTS = loader/efi/appleldr_module-appleloader.$(OBJEXT) -@COND_i386_efi_TRUE@am_appleldr_module_OBJECTS = loader/efi/appleldr_module-appleloader.$(OBJEXT) -nodist_appleldr_module_OBJECTS = -appleldr_module_OBJECTS = $(am_appleldr_module_OBJECTS) \ - $(nodist_appleldr_module_OBJECTS) -appleldr_module_LINK = $(CCLD) $(appleldr_module_CFLAGS) $(CFLAGS) \ - $(appleldr_module_LDFLAGS) $(LDFLAGS) -o $@ -am_archelp_module_OBJECTS = fs/archelp_module-archelp.$(OBJEXT) -nodist_archelp_module_OBJECTS = -archelp_module_OBJECTS = $(am_archelp_module_OBJECTS) \ - $(nodist_archelp_module_OBJECTS) -archelp_module_LINK = $(CCLD) $(archelp_module_CFLAGS) $(CFLAGS) \ - $(archelp_module_LDFLAGS) $(LDFLAGS) -o $@ -am__at_keyboard_module_SOURCES_DIST = term/at_keyboard.c term/ps2.c -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_x86_64_efi_TRUE@am_at_keyboard_module_OBJECTS = term/at_keyboard_module-at_keyboard.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_x86_64_efi_TRUE@ term/at_keyboard_module-ps2.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_TRUE@am_at_keyboard_module_OBJECTS = term/at_keyboard_module-at_keyboard.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_TRUE@ term/at_keyboard_module-ps2.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@am_at_keyboard_module_OBJECTS = term/at_keyboard_module-at_keyboard.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@ term/at_keyboard_module-ps2.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_TRUE@am_at_keyboard_module_OBJECTS = term/at_keyboard_module-at_keyboard.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_TRUE@ term/at_keyboard_module-ps2.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_TRUE@am_at_keyboard_module_OBJECTS = term/at_keyboard_module-at_keyboard.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_TRUE@ term/at_keyboard_module-ps2.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_TRUE@am_at_keyboard_module_OBJECTS = term/at_keyboard_module-at_keyboard.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_efi_TRUE@ term/at_keyboard_module-ps2.$(OBJEXT) -@COND_i386_coreboot_TRUE@am_at_keyboard_module_OBJECTS = term/at_keyboard_module-at_keyboard.$(OBJEXT) \ -@COND_i386_coreboot_TRUE@ term/at_keyboard_module-ps2.$(OBJEXT) -nodist_at_keyboard_module_OBJECTS = -at_keyboard_module_OBJECTS = $(am_at_keyboard_module_OBJECTS) \ - $(nodist_at_keyboard_module_OBJECTS) -at_keyboard_module_LINK = $(CCLD) $(at_keyboard_module_CFLAGS) \ - $(CFLAGS) $(at_keyboard_module_LDFLAGS) $(LDFLAGS) -o $@ -am__ata_module_SOURCES_DIST = disk/ata.c -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_x86_64_efi_TRUE@am_ata_module_OBJECTS = disk/ata_module-ata.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_TRUE@am_ata_module_OBJECTS = disk/ata_module-ata.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_mips_loongson_TRUE@am_ata_module_OBJECTS = disk/ata_module-ata.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_TRUE@am_ata_module_OBJECTS = disk/ata_module-ata.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@am_ata_module_OBJECTS = disk/ata_module-ata.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_TRUE@am_ata_module_OBJECTS = disk/ata_module-ata.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_TRUE@am_ata_module_OBJECTS = disk/ata_module-ata.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_TRUE@am_ata_module_OBJECTS = disk/ata_module-ata.$(OBJEXT) -@COND_i386_coreboot_TRUE@am_ata_module_OBJECTS = \ -@COND_i386_coreboot_TRUE@ disk/ata_module-ata.$(OBJEXT) -nodist_ata_module_OBJECTS = -ata_module_OBJECTS = $(am_ata_module_OBJECTS) \ - $(nodist_ata_module_OBJECTS) -ata_module_LINK = $(CCLD) $(ata_module_CFLAGS) $(CFLAGS) \ - $(ata_module_LDFLAGS) $(LDFLAGS) -o $@ -am__backtrace_module_SOURCES_DIST = lib/i386/backtrace.c \ - lib/backtrace.c -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_x86_64_efi_FALSE@@COND_x86_64_xen_TRUE@am_backtrace_module_OBJECTS = lib/i386/backtrace_module-backtrace.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_x86_64_efi_FALSE@@COND_x86_64_xen_TRUE@ lib/backtrace_module-backtrace.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_x86_64_efi_TRUE@am_backtrace_module_OBJECTS = lib/i386/backtrace_module-backtrace.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_x86_64_efi_TRUE@ lib/backtrace_module-backtrace.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_TRUE@am_backtrace_module_OBJECTS = lib/i386/backtrace_module-backtrace.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_TRUE@ lib/backtrace_module-backtrace.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_TRUE@am_backtrace_module_OBJECTS = lib/i386/backtrace_module-backtrace.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_TRUE@ lib/backtrace_module-backtrace.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_TRUE@am_backtrace_module_OBJECTS = lib/i386/backtrace_module-backtrace.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_TRUE@ lib/backtrace_module-backtrace.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@am_backtrace_module_OBJECTS = lib/i386/backtrace_module-backtrace.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@ lib/backtrace_module-backtrace.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_TRUE@am_backtrace_module_OBJECTS = lib/i386/backtrace_module-backtrace.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_TRUE@ lib/backtrace_module-backtrace.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_TRUE@am_backtrace_module_OBJECTS = lib/i386/backtrace_module-backtrace.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_TRUE@ lib/backtrace_module-backtrace.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_TRUE@am_backtrace_module_OBJECTS = lib/i386/backtrace_module-backtrace.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_efi_TRUE@ lib/backtrace_module-backtrace.$(OBJEXT) -@COND_i386_coreboot_TRUE@am_backtrace_module_OBJECTS = lib/i386/backtrace_module-backtrace.$(OBJEXT) \ -@COND_i386_coreboot_TRUE@ lib/backtrace_module-backtrace.$(OBJEXT) -nodist_backtrace_module_OBJECTS = -backtrace_module_OBJECTS = $(am_backtrace_module_OBJECTS) \ - $(nodist_backtrace_module_OBJECTS) -backtrace_module_LINK = $(CCLD) $(backtrace_module_CFLAGS) $(CFLAGS) \ - $(backtrace_module_LDFLAGS) $(LDFLAGS) -o $@ -am_bfs_module_OBJECTS = fs/bfs_module-bfs.$(OBJEXT) -nodist_bfs_module_OBJECTS = -bfs_module_OBJECTS = $(am_bfs_module_OBJECTS) \ - $(nodist_bfs_module_OBJECTS) -bfs_module_LINK = $(CCLD) $(bfs_module_CFLAGS) $(CFLAGS) \ - $(bfs_module_LDFLAGS) $(LDFLAGS) -o $@ -am__biosdisk_module_SOURCES_DIST = disk/i386/pc/biosdisk.c -@COND_i386_pc_TRUE@am_biosdisk_module_OBJECTS = disk/i386/pc/biosdisk_module-biosdisk.$(OBJEXT) -nodist_biosdisk_module_OBJECTS = -biosdisk_module_OBJECTS = $(am_biosdisk_module_OBJECTS) \ - $(nodist_biosdisk_module_OBJECTS) -biosdisk_module_LINK = $(CCLD) $(biosdisk_module_CFLAGS) $(CFLAGS) \ - $(biosdisk_module_LDFLAGS) $(LDFLAGS) -o $@ -am_bitmap_module_OBJECTS = video/bitmap_module-bitmap.$(OBJEXT) -nodist_bitmap_module_OBJECTS = -bitmap_module_OBJECTS = $(am_bitmap_module_OBJECTS) \ - $(nodist_bitmap_module_OBJECTS) -bitmap_module_LINK = $(CCLD) $(bitmap_module_CFLAGS) $(CFLAGS) \ - $(bitmap_module_LDFLAGS) $(LDFLAGS) -o $@ -am_bitmap_scale_module_OBJECTS = \ - video/bitmap_scale_module-bitmap_scale.$(OBJEXT) -nodist_bitmap_scale_module_OBJECTS = -bitmap_scale_module_OBJECTS = $(am_bitmap_scale_module_OBJECTS) \ - $(nodist_bitmap_scale_module_OBJECTS) -bitmap_scale_module_LINK = $(CCLD) $(bitmap_scale_module_CFLAGS) \ - $(CFLAGS) $(bitmap_scale_module_LDFLAGS) $(LDFLAGS) -o $@ -am_blocklist_module_OBJECTS = \ - commands/blocklist_module-blocklist.$(OBJEXT) -nodist_blocklist_module_OBJECTS = -blocklist_module_OBJECTS = $(am_blocklist_module_OBJECTS) \ - $(nodist_blocklist_module_OBJECTS) -blocklist_module_LINK = $(CCLD) $(blocklist_module_CFLAGS) $(CFLAGS) \ - $(blocklist_module_LDFLAGS) $(LDFLAGS) -o $@ -am__boot_image_SOURCES_DIST = boot/i386/pc/boot.S \ - boot/i386/qemu/boot.S boot/sparc64/ieee1275/boot.S -@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_sparc64_ieee1275_TRUE@am_boot_image_OBJECTS = boot/sparc64/ieee1275/boot_image-boot.$(OBJEXT) -@COND_i386_pc_FALSE@@COND_i386_qemu_TRUE@am_boot_image_OBJECTS = boot/i386/qemu/boot_image-boot.$(OBJEXT) -@COND_i386_pc_TRUE@am_boot_image_OBJECTS = \ -@COND_i386_pc_TRUE@ boot/i386/pc/boot_image-boot.$(OBJEXT) -nodist_boot_image_OBJECTS = -boot_image_OBJECTS = $(am_boot_image_OBJECTS) \ - $(nodist_boot_image_OBJECTS) -boot_image_DEPENDENCIES = -boot_image_LINK = $(CCLD) $(boot_image_CFLAGS) $(CFLAGS) \ - $(boot_image_LDFLAGS) $(LDFLAGS) -o $@ -am__boot_module_SOURCES_DIST = commands/boot.c lib/i386/pc/biosnum.c -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_FALSE@@COND_x86_64_efi_TRUE@am_boot_module_OBJECTS = commands/boot_module-boot.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_TRUE@am_boot_module_OBJECTS = commands/boot_module-boot.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_TRUE@am_boot_module_OBJECTS = commands/boot_module-boot.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_TRUE@am_boot_module_OBJECTS = commands/boot_module-boot.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_powerpc_ieee1275_TRUE@am_boot_module_OBJECTS = commands/boot_module-boot.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_TRUE@am_boot_module_OBJECTS = commands/boot_module-boot.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_ia64_efi_TRUE@am_boot_module_OBJECTS = commands/boot_module-boot.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_TRUE@am_boot_module_OBJECTS = commands/boot_module-boot.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@am_boot_module_OBJECTS = lib/i386/pc/boot_module-biosnum.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@ commands/boot_module-boot.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_TRUE@am_boot_module_OBJECTS = commands/boot_module-boot.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_TRUE@am_boot_module_OBJECTS = commands/boot_module-boot.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_TRUE@am_boot_module_OBJECTS = commands/boot_module-boot.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_TRUE@am_boot_module_OBJECTS = commands/boot_module-boot.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_TRUE@am_boot_module_OBJECTS = commands/boot_module-boot.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_TRUE@am_boot_module_OBJECTS = commands/boot_module-boot.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_TRUE@am_boot_module_OBJECTS = commands/boot_module-boot.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_TRUE@am_boot_module_OBJECTS = commands/boot_module-boot.$(OBJEXT) -@COND_arm64_efi_TRUE@am_boot_module_OBJECTS = \ -@COND_arm64_efi_TRUE@ commands/boot_module-boot.$(OBJEXT) -nodist_boot_module_OBJECTS = -boot_module_OBJECTS = $(am_boot_module_OBJECTS) \ - $(nodist_boot_module_OBJECTS) -boot_module_LINK = $(CCLD) $(boot_module_CFLAGS) $(CFLAGS) \ - $(boot_module_LDFLAGS) $(LDFLAGS) -o $@ -am__boot_hybrid_image_SOURCES_DIST = boot/i386/pc/boot.S -@COND_i386_pc_TRUE@am_boot_hybrid_image_OBJECTS = boot/i386/pc/boot_hybrid_image-boot.$(OBJEXT) -nodist_boot_hybrid_image_OBJECTS = -boot_hybrid_image_OBJECTS = $(am_boot_hybrid_image_OBJECTS) \ - $(nodist_boot_hybrid_image_OBJECTS) -boot_hybrid_image_DEPENDENCIES = -boot_hybrid_image_LINK = $(CCLD) $(boot_hybrid_image_CFLAGS) $(CFLAGS) \ - $(boot_hybrid_image_LDFLAGS) $(LDFLAGS) -o $@ -am__boottime_module_SOURCES_DIST = commands/boottime.c -@COND_ENABLE_BOOT_TIME_STATS_TRUE@am_boottime_module_OBJECTS = commands/boottime_module-boottime.$(OBJEXT) -nodist_boottime_module_OBJECTS = -boottime_module_OBJECTS = $(am_boottime_module_OBJECTS) \ - $(nodist_boottime_module_OBJECTS) -boottime_module_LINK = $(CCLD) $(boottime_module_CFLAGS) $(CFLAGS) \ - $(boottime_module_LDFLAGS) $(LDFLAGS) -o $@ -am__bsd_module_SOURCES_DIST = loader/i386/bsd.c loader/i386/bsd32.c \ - loader/i386/bsd64.c -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_x86_64_efi_TRUE@am_bsd_module_OBJECTS = loader/i386/bsd_module-bsd.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_x86_64_efi_TRUE@ loader/i386/bsd_module-bsd32.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_x86_64_efi_TRUE@ loader/i386/bsd_module-bsd64.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_TRUE@am_bsd_module_OBJECTS = loader/i386/bsd_module-bsd.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_TRUE@ loader/i386/bsd_module-bsd32.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_TRUE@ loader/i386/bsd_module-bsd64.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@am_bsd_module_OBJECTS = loader/i386/bsd_module-bsd.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@ loader/i386/bsd_module-bsd32.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@ loader/i386/bsd_module-bsd64.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_TRUE@am_bsd_module_OBJECTS = loader/i386/bsd_module-bsd.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_TRUE@ loader/i386/bsd_module-bsd32.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_TRUE@ loader/i386/bsd_module-bsd64.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_TRUE@am_bsd_module_OBJECTS = loader/i386/bsd_module-bsd.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_TRUE@ loader/i386/bsd_module-bsd32.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_TRUE@ loader/i386/bsd_module-bsd64.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_TRUE@am_bsd_module_OBJECTS = loader/i386/bsd_module-bsd.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_efi_TRUE@ loader/i386/bsd_module-bsd32.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_efi_TRUE@ loader/i386/bsd_module-bsd64.$(OBJEXT) -@COND_i386_coreboot_TRUE@am_bsd_module_OBJECTS = \ -@COND_i386_coreboot_TRUE@ loader/i386/bsd_module-bsd.$(OBJEXT) \ -@COND_i386_coreboot_TRUE@ loader/i386/bsd_module-bsd32.$(OBJEXT) \ -@COND_i386_coreboot_TRUE@ loader/i386/bsd_module-bsd64.$(OBJEXT) -nodist_bsd_module_OBJECTS = -bsd_module_OBJECTS = $(am_bsd_module_OBJECTS) \ - $(nodist_bsd_module_OBJECTS) -bsd_module_LINK = $(CCLD) $(bsd_module_CFLAGS) $(CFLAGS) \ - $(bsd_module_LDFLAGS) $(LDFLAGS) -o $@ -am_bswap_test_module_OBJECTS = \ - tests/bswap_test_module-bswap_test.$(OBJEXT) -nodist_bswap_test_module_OBJECTS = -bswap_test_module_OBJECTS = $(am_bswap_test_module_OBJECTS) \ - $(nodist_bswap_test_module_OBJECTS) -bswap_test_module_LINK = $(CCLD) $(bswap_test_module_CFLAGS) $(CFLAGS) \ - $(bswap_test_module_LDFLAGS) $(LDFLAGS) -o $@ -am_btrfs_module_OBJECTS = fs/btrfs_module-btrfs.$(OBJEXT) \ - lib/btrfs_module-crc.$(OBJEXT) -nodist_btrfs_module_OBJECTS = -btrfs_module_OBJECTS = $(am_btrfs_module_OBJECTS) \ - $(nodist_btrfs_module_OBJECTS) -btrfs_module_LINK = $(CCLD) $(btrfs_module_CFLAGS) $(CFLAGS) \ - $(btrfs_module_LDFLAGS) $(LDFLAGS) -o $@ -am__bufio_module_SOURCES_DIST = io/bufio.c -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_FALSE@@COND_x86_64_efi_FALSE@@COND_x86_64_xen_TRUE@am_bufio_module_OBJECTS = io/bufio_module-bufio.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_FALSE@@COND_x86_64_efi_TRUE@am_bufio_module_OBJECTS = io/bufio_module-bufio.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_TRUE@am_bufio_module_OBJECTS = io/bufio_module-bufio.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_TRUE@am_bufio_module_OBJECTS = io/bufio_module-bufio.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_TRUE@am_bufio_module_OBJECTS = io/bufio_module-bufio.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_TRUE@am_bufio_module_OBJECTS = io/bufio_module-bufio.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_qemu_mips_TRUE@am_bufio_module_OBJECTS = io/bufio_module-bufio.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_TRUE@am_bufio_module_OBJECTS = io/bufio_module-bufio.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_TRUE@am_bufio_module_OBJECTS = io/bufio_module-bufio.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_TRUE@am_bufio_module_OBJECTS = io/bufio_module-bufio.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_TRUE@am_bufio_module_OBJECTS = io/bufio_module-bufio.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_TRUE@am_bufio_module_OBJECTS = io/bufio_module-bufio.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@am_bufio_module_OBJECTS = io/bufio_module-bufio.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_TRUE@am_bufio_module_OBJECTS = io/bufio_module-bufio.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_TRUE@am_bufio_module_OBJECTS = io/bufio_module-bufio.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_TRUE@am_bufio_module_OBJECTS = io/bufio_module-bufio.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_TRUE@am_bufio_module_OBJECTS = io/bufio_module-bufio.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_TRUE@am_bufio_module_OBJECTS = io/bufio_module-bufio.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_TRUE@am_bufio_module_OBJECTS = io/bufio_module-bufio.$(OBJEXT) -@COND_arm64_efi_TRUE@am_bufio_module_OBJECTS = \ -@COND_arm64_efi_TRUE@ io/bufio_module-bufio.$(OBJEXT) -nodist_bufio_module_OBJECTS = -bufio_module_OBJECTS = $(am_bufio_module_OBJECTS) \ - $(nodist_bufio_module_OBJECTS) -bufio_module_LINK = $(CCLD) $(bufio_module_CFLAGS) $(CFLAGS) \ - $(bufio_module_LDFLAGS) $(LDFLAGS) -o $@ -am__cacheinfo_module_SOURCES_DIST = commands/cacheinfo.c -@COND_ENABLE_CACHE_STATS_TRUE@am_cacheinfo_module_OBJECTS = commands/cacheinfo_module-cacheinfo.$(OBJEXT) -nodist_cacheinfo_module_OBJECTS = -cacheinfo_module_OBJECTS = $(am_cacheinfo_module_OBJECTS) \ - $(nodist_cacheinfo_module_OBJECTS) -cacheinfo_module_LINK = $(CCLD) $(cacheinfo_module_CFLAGS) $(CFLAGS) \ - $(cacheinfo_module_LDFLAGS) $(LDFLAGS) -o $@ -am_cat_module_OBJECTS = commands/cat_module-cat.$(OBJEXT) -nodist_cat_module_OBJECTS = -cat_module_OBJECTS = $(am_cat_module_OBJECTS) \ - $(nodist_cat_module_OBJECTS) -cat_module_LINK = $(CCLD) $(cat_module_CFLAGS) $(CFLAGS) \ - $(cat_module_LDFLAGS) $(LDFLAGS) -o $@ -am_cbfs_module_OBJECTS = fs/cbfs_module-cbfs.$(OBJEXT) -nodist_cbfs_module_OBJECTS = -cbfs_module_OBJECTS = $(am_cbfs_module_OBJECTS) \ - $(nodist_cbfs_module_OBJECTS) -cbfs_module_LINK = $(CCLD) $(cbfs_module_CFLAGS) $(CFLAGS) \ - $(cbfs_module_LDFLAGS) $(LDFLAGS) -o $@ -am__cbls_module_SOURCES_DIST = commands/i386/coreboot/cbls.c -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_x86_64_efi_TRUE@am_cbls_module_OBJECTS = commands/i386/coreboot/cbls_module-cbls.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_TRUE@am_cbls_module_OBJECTS = commands/i386/coreboot/cbls_module-cbls.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@am_cbls_module_OBJECTS = commands/i386/coreboot/cbls_module-cbls.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_TRUE@am_cbls_module_OBJECTS = commands/i386/coreboot/cbls_module-cbls.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_TRUE@am_cbls_module_OBJECTS = commands/i386/coreboot/cbls_module-cbls.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_TRUE@am_cbls_module_OBJECTS = commands/i386/coreboot/cbls_module-cbls.$(OBJEXT) -@COND_i386_coreboot_TRUE@am_cbls_module_OBJECTS = commands/i386/coreboot/cbls_module-cbls.$(OBJEXT) -nodist_cbls_module_OBJECTS = -cbls_module_OBJECTS = $(am_cbls_module_OBJECTS) \ - $(nodist_cbls_module_OBJECTS) -cbls_module_LINK = $(CCLD) $(cbls_module_CFLAGS) $(CFLAGS) \ - $(cbls_module_LDFLAGS) $(LDFLAGS) -o $@ -am__cbmemc_module_SOURCES_DIST = term/i386/coreboot/cbmemc.c -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_x86_64_efi_TRUE@am_cbmemc_module_OBJECTS = term/i386/coreboot/cbmemc_module-cbmemc.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_TRUE@am_cbmemc_module_OBJECTS = term/i386/coreboot/cbmemc_module-cbmemc.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@am_cbmemc_module_OBJECTS = term/i386/coreboot/cbmemc_module-cbmemc.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_TRUE@am_cbmemc_module_OBJECTS = term/i386/coreboot/cbmemc_module-cbmemc.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_TRUE@am_cbmemc_module_OBJECTS = term/i386/coreboot/cbmemc_module-cbmemc.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_TRUE@am_cbmemc_module_OBJECTS = term/i386/coreboot/cbmemc_module-cbmemc.$(OBJEXT) -@COND_i386_coreboot_TRUE@am_cbmemc_module_OBJECTS = term/i386/coreboot/cbmemc_module-cbmemc.$(OBJEXT) -nodist_cbmemc_module_OBJECTS = -cbmemc_module_OBJECTS = $(am_cbmemc_module_OBJECTS) \ - $(nodist_cbmemc_module_OBJECTS) -cbmemc_module_LINK = $(CCLD) $(cbmemc_module_CFLAGS) $(CFLAGS) \ - $(cbmemc_module_LDFLAGS) $(LDFLAGS) -o $@ -am__cbtable_module_SOURCES_DIST = kern/i386/coreboot/cbtable.c \ - kern/coreboot/cbtable.c -@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_x86_64_efi_TRUE@am_cbtable_module_OBJECTS = kern/i386/coreboot/cbtable_module-cbtable.$(OBJEXT) \ -@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_x86_64_efi_TRUE@ kern/coreboot/cbtable_module-cbtable.$(OBJEXT) -@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_TRUE@am_cbtable_module_OBJECTS = kern/i386/coreboot/cbtable_module-cbtable.$(OBJEXT) \ -@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_TRUE@ kern/coreboot/cbtable_module-cbtable.$(OBJEXT) -@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@am_cbtable_module_OBJECTS = kern/i386/coreboot/cbtable_module-cbtable.$(OBJEXT) \ -@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@ kern/coreboot/cbtable_module-cbtable.$(OBJEXT) -@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_TRUE@am_cbtable_module_OBJECTS = kern/i386/coreboot/cbtable_module-cbtable.$(OBJEXT) \ -@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_TRUE@ kern/coreboot/cbtable_module-cbtable.$(OBJEXT) -@COND_i386_efi_FALSE@@COND_i386_ieee1275_TRUE@am_cbtable_module_OBJECTS = kern/i386/coreboot/cbtable_module-cbtable.$(OBJEXT) \ -@COND_i386_efi_FALSE@@COND_i386_ieee1275_TRUE@ kern/coreboot/cbtable_module-cbtable.$(OBJEXT) -@COND_i386_efi_TRUE@am_cbtable_module_OBJECTS = kern/i386/coreboot/cbtable_module-cbtable.$(OBJEXT) \ -@COND_i386_efi_TRUE@ kern/coreboot/cbtable_module-cbtable.$(OBJEXT) -nodist_cbtable_module_OBJECTS = -cbtable_module_OBJECTS = $(am_cbtable_module_OBJECTS) \ - $(nodist_cbtable_module_OBJECTS) -cbtable_module_LINK = $(CCLD) $(cbtable_module_CFLAGS) $(CFLAGS) \ - $(cbtable_module_LDFLAGS) $(LDFLAGS) -o $@ -am__cbtime_module_SOURCES_DIST = \ - commands/i386/coreboot/cb_timestamps.c -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_x86_64_efi_TRUE@am_cbtime_module_OBJECTS = commands/i386/coreboot/cbtime_module-cb_timestamps.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_TRUE@am_cbtime_module_OBJECTS = commands/i386/coreboot/cbtime_module-cb_timestamps.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@am_cbtime_module_OBJECTS = commands/i386/coreboot/cbtime_module-cb_timestamps.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_TRUE@am_cbtime_module_OBJECTS = commands/i386/coreboot/cbtime_module-cb_timestamps.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_TRUE@am_cbtime_module_OBJECTS = commands/i386/coreboot/cbtime_module-cb_timestamps.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_TRUE@am_cbtime_module_OBJECTS = commands/i386/coreboot/cbtime_module-cb_timestamps.$(OBJEXT) -@COND_i386_coreboot_TRUE@am_cbtime_module_OBJECTS = commands/i386/coreboot/cbtime_module-cb_timestamps.$(OBJEXT) -nodist_cbtime_module_OBJECTS = -cbtime_module_OBJECTS = $(am_cbtime_module_OBJECTS) \ - $(nodist_cbtime_module_OBJECTS) -cbtime_module_LINK = $(CCLD) $(cbtime_module_CFLAGS) $(CFLAGS) \ - $(cbtime_module_LDFLAGS) $(LDFLAGS) -o $@ -am__cdboot_image_SOURCES_DIST = boot/i386/pc/cdboot.S \ - boot/sparc64/ieee1275/boot.S -@COND_i386_pc_FALSE@@COND_sparc64_ieee1275_TRUE@am_cdboot_image_OBJECTS = boot/sparc64/ieee1275/cdboot_image-boot.$(OBJEXT) -@COND_i386_pc_TRUE@am_cdboot_image_OBJECTS = \ -@COND_i386_pc_TRUE@ boot/i386/pc/cdboot_image-cdboot.$(OBJEXT) -nodist_cdboot_image_OBJECTS = -cdboot_image_OBJECTS = $(am_cdboot_image_OBJECTS) \ - $(nodist_cdboot_image_OBJECTS) -cdboot_image_DEPENDENCIES = -cdboot_image_LINK = $(CCLD) $(cdboot_image_CFLAGS) $(CFLAGS) \ - $(cdboot_image_LDFLAGS) $(LDFLAGS) -o $@ -am__chain_module_SOURCES_DIST = loader/efi/chainloader.c \ - loader/i386/coreboot/chainloader.c lib/LzmaDec.c \ - loader/i386/pc/chainloader.c -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_pc_FALSE@@COND_ia64_efi_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_x86_64_efi_TRUE@am_chain_module_OBJECTS = loader/efi/chain_module-chainloader.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_pc_FALSE@@COND_ia64_efi_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_TRUE@am_chain_module_OBJECTS = loader/efi/chain_module-chainloader.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_pc_FALSE@@COND_ia64_efi_FALSE@@COND_riscv32_efi_TRUE@am_chain_module_OBJECTS = loader/efi/chain_module-chainloader.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_pc_FALSE@@COND_ia64_efi_TRUE@am_chain_module_OBJECTS = loader/efi/chain_module-chainloader.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_pc_TRUE@am_chain_module_OBJECTS = loader/i386/pc/chain_module-chainloader.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_TRUE@am_chain_module_OBJECTS = loader/efi/chain_module-chainloader.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_i386_coreboot_TRUE@am_chain_module_OBJECTS = loader/i386/coreboot/chain_module-chainloader.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_i386_coreboot_TRUE@ lib/chain_module-LzmaDec.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_TRUE@am_chain_module_OBJECTS = loader/efi/chain_module-chainloader.$(OBJEXT) -@COND_arm64_efi_TRUE@am_chain_module_OBJECTS = loader/efi/chain_module-chainloader.$(OBJEXT) -nodist_chain_module_OBJECTS = -chain_module_OBJECTS = $(am_chain_module_OBJECTS) \ - $(nodist_chain_module_OBJECTS) -chain_module_LINK = $(CCLD) $(chain_module_CFLAGS) $(CFLAGS) \ - $(chain_module_LDFLAGS) $(LDFLAGS) -o $@ -am_cmdline_cat_test_module_OBJECTS = \ - tests/cmdline_cat_test_module-cmdline_cat_test.$(OBJEXT) -nodist_cmdline_cat_test_module_OBJECTS = -cmdline_cat_test_module_OBJECTS = \ - $(am_cmdline_cat_test_module_OBJECTS) \ - $(nodist_cmdline_cat_test_module_OBJECTS) -cmdline_cat_test_module_LINK = $(CCLD) \ - $(cmdline_cat_test_module_CFLAGS) $(CFLAGS) \ - $(cmdline_cat_test_module_LDFLAGS) $(LDFLAGS) -o $@ -am__cmosdump_module_SOURCES_DIST = commands/i386/cmosdump.c -@COND_i386_coreboot_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_sparc64_ieee1275_TRUE@am_cmosdump_module_OBJECTS = commands/i386/cmosdump_module-cmosdump.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_TRUE@am_cmosdump_module_OBJECTS = commands/i386/cmosdump_module-cmosdump.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_TRUE@am_cmosdump_module_OBJECTS = commands/i386/cmosdump_module-cmosdump.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_mips_loongson_TRUE@am_cmosdump_module_OBJECTS = commands/i386/cmosdump_module-cmosdump.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_TRUE@am_cmosdump_module_OBJECTS = commands/i386/cmosdump_module-cmosdump.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@am_cmosdump_module_OBJECTS = commands/i386/cmosdump_module-cmosdump.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_TRUE@am_cmosdump_module_OBJECTS = commands/i386/cmosdump_module-cmosdump.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_ieee1275_TRUE@am_cmosdump_module_OBJECTS = commands/i386/cmosdump_module-cmosdump.$(OBJEXT) -@COND_i386_coreboot_TRUE@am_cmosdump_module_OBJECTS = commands/i386/cmosdump_module-cmosdump.$(OBJEXT) -nodist_cmosdump_module_OBJECTS = -cmosdump_module_OBJECTS = $(am_cmosdump_module_OBJECTS) \ - $(nodist_cmosdump_module_OBJECTS) -cmosdump_module_LINK = $(CCLD) $(cmosdump_module_CFLAGS) $(CFLAGS) \ - $(cmosdump_module_LDFLAGS) $(LDFLAGS) -o $@ -am__cmostest_module_SOURCES_DIST = commands/i386/cmostest.c -@COND_i386_coreboot_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_sparc64_ieee1275_TRUE@am_cmostest_module_OBJECTS = commands/i386/cmostest_module-cmostest.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_TRUE@am_cmostest_module_OBJECTS = commands/i386/cmostest_module-cmostest.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_TRUE@am_cmostest_module_OBJECTS = commands/i386/cmostest_module-cmostest.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_mips_loongson_TRUE@am_cmostest_module_OBJECTS = commands/i386/cmostest_module-cmostest.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_TRUE@am_cmostest_module_OBJECTS = commands/i386/cmostest_module-cmostest.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@am_cmostest_module_OBJECTS = commands/i386/cmostest_module-cmostest.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_TRUE@am_cmostest_module_OBJECTS = commands/i386/cmostest_module-cmostest.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_ieee1275_TRUE@am_cmostest_module_OBJECTS = commands/i386/cmostest_module-cmostest.$(OBJEXT) -@COND_i386_coreboot_TRUE@am_cmostest_module_OBJECTS = commands/i386/cmostest_module-cmostest.$(OBJEXT) -nodist_cmostest_module_OBJECTS = -cmostest_module_OBJECTS = $(am_cmostest_module_OBJECTS) \ - $(nodist_cmostest_module_OBJECTS) -cmostest_module_LINK = $(CCLD) $(cmostest_module_CFLAGS) $(CFLAGS) \ - $(cmostest_module_LDFLAGS) $(LDFLAGS) -o $@ -am_cmp_module_OBJECTS = commands/cmp_module-cmp.$(OBJEXT) -nodist_cmp_module_OBJECTS = -cmp_module_OBJECTS = $(am_cmp_module_OBJECTS) \ - $(nodist_cmp_module_OBJECTS) -cmp_module_LINK = $(CCLD) $(cmp_module_CFLAGS) $(CFLAGS) \ - $(cmp_module_LDFLAGS) $(LDFLAGS) -o $@ -am_cmp_test_module_OBJECTS = tests/cmp_test_module-cmp_test.$(OBJEXT) -nodist_cmp_test_module_OBJECTS = -cmp_test_module_OBJECTS = $(am_cmp_test_module_OBJECTS) \ - $(nodist_cmp_test_module_OBJECTS) -cmp_test_module_LINK = $(CCLD) $(cmp_test_module_CFLAGS) $(CFLAGS) \ - $(cmp_test_module_LDFLAGS) $(LDFLAGS) -o $@ -am_configfile_module_OBJECTS = \ - commands/configfile_module-configfile.$(OBJEXT) -nodist_configfile_module_OBJECTS = -configfile_module_OBJECTS = $(am_configfile_module_OBJECTS) \ - $(nodist_configfile_module_OBJECTS) -configfile_module_LINK = $(CCLD) $(configfile_module_CFLAGS) $(CFLAGS) \ - $(configfile_module_LDFLAGS) $(LDFLAGS) -o $@ -am_cpio_module_OBJECTS = fs/cpio_module-cpio.$(OBJEXT) -nodist_cpio_module_OBJECTS = -cpio_module_OBJECTS = $(am_cpio_module_OBJECTS) \ - $(nodist_cpio_module_OBJECTS) -cpio_module_LINK = $(CCLD) $(cpio_module_CFLAGS) $(CFLAGS) \ - $(cpio_module_LDFLAGS) $(LDFLAGS) -o $@ -am_cpio_be_module_OBJECTS = fs/cpio_be_module-cpio_be.$(OBJEXT) -nodist_cpio_be_module_OBJECTS = -cpio_be_module_OBJECTS = $(am_cpio_be_module_OBJECTS) \ - $(nodist_cpio_be_module_OBJECTS) -cpio_be_module_LINK = $(CCLD) $(cpio_be_module_CFLAGS) $(CFLAGS) \ - $(cpio_be_module_LDFLAGS) $(LDFLAGS) -o $@ -am__cpuid_module_SOURCES_DIST = commands/i386/cpuid.c -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_x86_64_efi_FALSE@@COND_x86_64_xen_TRUE@am_cpuid_module_OBJECTS = commands/i386/cpuid_module-cpuid.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_x86_64_efi_TRUE@am_cpuid_module_OBJECTS = commands/i386/cpuid_module-cpuid.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_TRUE@am_cpuid_module_OBJECTS = commands/i386/cpuid_module-cpuid.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_TRUE@am_cpuid_module_OBJECTS = commands/i386/cpuid_module-cpuid.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_TRUE@am_cpuid_module_OBJECTS = commands/i386/cpuid_module-cpuid.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@am_cpuid_module_OBJECTS = commands/i386/cpuid_module-cpuid.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_TRUE@am_cpuid_module_OBJECTS = commands/i386/cpuid_module-cpuid.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_TRUE@am_cpuid_module_OBJECTS = commands/i386/cpuid_module-cpuid.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_TRUE@am_cpuid_module_OBJECTS = commands/i386/cpuid_module-cpuid.$(OBJEXT) -@COND_i386_coreboot_TRUE@am_cpuid_module_OBJECTS = commands/i386/cpuid_module-cpuid.$(OBJEXT) -nodist_cpuid_module_OBJECTS = -cpuid_module_OBJECTS = $(am_cpuid_module_OBJECTS) \ - $(nodist_cpuid_module_OBJECTS) -cpuid_module_LINK = $(CCLD) $(cpuid_module_CFLAGS) $(CFLAGS) \ - $(cpuid_module_LDFLAGS) $(LDFLAGS) -o $@ -am_crc64_module_OBJECTS = lib/crc64_module-crc64.$(OBJEXT) -nodist_crc64_module_OBJECTS = -crc64_module_OBJECTS = $(am_crc64_module_OBJECTS) \ - $(nodist_crc64_module_OBJECTS) -crc64_module_LINK = $(CCLD) $(crc64_module_CFLAGS) $(CFLAGS) \ - $(crc64_module_LDFLAGS) $(LDFLAGS) -o $@ -am_crypto_module_OBJECTS = lib/crypto_module-crypto.$(OBJEXT) -nodist_crypto_module_OBJECTS = -crypto_module_OBJECTS = $(am_crypto_module_OBJECTS) \ - $(nodist_crypto_module_OBJECTS) -crypto_module_LINK = $(CCLD) $(crypto_module_CFLAGS) $(CFLAGS) \ - $(crypto_module_LDFLAGS) $(LDFLAGS) -o $@ -am_cryptodisk_module_OBJECTS = \ - disk/cryptodisk_module-cryptodisk.$(OBJEXT) -nodist_cryptodisk_module_OBJECTS = -cryptodisk_module_OBJECTS = $(am_cryptodisk_module_OBJECTS) \ - $(nodist_cryptodisk_module_OBJECTS) -cryptodisk_module_LINK = $(CCLD) $(cryptodisk_module_CFLAGS) $(CFLAGS) \ - $(cryptodisk_module_LDFLAGS) $(LDFLAGS) -o $@ -am__cs5536_module_SOURCES_DIST = bus/cs5536.c -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_x86_64_efi_TRUE@am_cs5536_module_OBJECTS = bus/cs5536_module-cs5536.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_TRUE@am_cs5536_module_OBJECTS = bus/cs5536_module-cs5536.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@am_cs5536_module_OBJECTS = bus/cs5536_module-cs5536.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_TRUE@am_cs5536_module_OBJECTS = bus/cs5536_module-cs5536.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_TRUE@am_cs5536_module_OBJECTS = bus/cs5536_module-cs5536.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_TRUE@am_cs5536_module_OBJECTS = bus/cs5536_module-cs5536.$(OBJEXT) -@COND_i386_coreboot_TRUE@am_cs5536_module_OBJECTS = \ -@COND_i386_coreboot_TRUE@ bus/cs5536_module-cs5536.$(OBJEXT) -nodist_cs5536_module_OBJECTS = -cs5536_module_OBJECTS = $(am_cs5536_module_OBJECTS) \ - $(nodist_cs5536_module_OBJECTS) -cs5536_module_LINK = $(CCLD) $(cs5536_module_CFLAGS) $(CFLAGS) \ - $(cs5536_module_LDFLAGS) $(LDFLAGS) -o $@ -am_ctz_test_module_OBJECTS = tests/ctz_test_module-ctz_test.$(OBJEXT) -nodist_ctz_test_module_OBJECTS = -ctz_test_module_OBJECTS = $(am_ctz_test_module_OBJECTS) \ - $(nodist_ctz_test_module_OBJECTS) -ctz_test_module_LINK = $(CCLD) $(ctz_test_module_CFLAGS) $(CFLAGS) \ - $(ctz_test_module_LDFLAGS) $(LDFLAGS) -o $@ -am_date_module_OBJECTS = commands/date_module-date.$(OBJEXT) -nodist_date_module_OBJECTS = -date_module_OBJECTS = $(am_date_module_OBJECTS) \ - $(nodist_date_module_OBJECTS) -date_module_LINK = $(CCLD) $(date_module_CFLAGS) $(CFLAGS) \ - $(date_module_LDFLAGS) $(LDFLAGS) -o $@ -am_datehook_module_OBJECTS = hook/datehook_module-datehook.$(OBJEXT) -nodist_datehook_module_OBJECTS = -datehook_module_OBJECTS = $(am_datehook_module_OBJECTS) \ - $(nodist_datehook_module_OBJECTS) -datehook_module_LINK = $(CCLD) $(datehook_module_CFLAGS) $(CFLAGS) \ - $(datehook_module_LDFLAGS) $(LDFLAGS) -o $@ -am__datetime_module_SOURCES_DIST = lib/efi/datetime.c \ - lib/dummy/datetime.c lib/cmos_datetime.c lib/xen/datetime.c \ - lib/arc/datetime.c lib/ieee1275/datetime.c lib/ieee1275/cmos.c -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_FALSE@@COND_x86_64_efi_FALSE@@COND_x86_64_xen_TRUE@am_datetime_module_OBJECTS = lib/xen/datetime_module-datetime.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_FALSE@@COND_x86_64_efi_TRUE@am_datetime_module_OBJECTS = lib/efi/datetime_module-datetime.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_TRUE@am_datetime_module_OBJECTS = lib/ieee1275/datetime_module-datetime.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_TRUE@ lib/ieee1275/datetime_module-cmos.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_TRUE@ lib/datetime_module-cmos_datetime.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_TRUE@am_datetime_module_OBJECTS = lib/efi/datetime_module-datetime.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_TRUE@am_datetime_module_OBJECTS = lib/efi/datetime_module-datetime.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_TRUE@am_datetime_module_OBJECTS = lib/ieee1275/datetime_module-datetime.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_TRUE@ lib/ieee1275/datetime_module-cmos.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_TRUE@ lib/datetime_module-cmos_datetime.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_TRUE@am_datetime_module_OBJECTS = lib/datetime_module-cmos_datetime.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_TRUE@am_datetime_module_OBJECTS = lib/datetime_module-cmos_datetime.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_TRUE@am_datetime_module_OBJECTS = lib/arc/datetime_module-datetime.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_TRUE@am_datetime_module_OBJECTS = lib/efi/datetime_module-datetime.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_TRUE@am_datetime_module_OBJECTS = lib/xen/datetime_module-datetime.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_TRUE@am_datetime_module_OBJECTS = lib/xen/datetime_module-datetime.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_TRUE@am_datetime_module_OBJECTS = lib/datetime_module-cmos_datetime.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@am_datetime_module_OBJECTS = lib/datetime_module-cmos_datetime.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_TRUE@am_datetime_module_OBJECTS = lib/datetime_module-cmos_datetime.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_TRUE@am_datetime_module_OBJECTS = lib/datetime_module-cmos_datetime.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_TRUE@am_datetime_module_OBJECTS = lib/efi/datetime_module-datetime.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_i386_coreboot_TRUE@am_datetime_module_OBJECTS = lib/datetime_module-cmos_datetime.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_TRUE@am_datetime_module_OBJECTS = lib/dummy/datetime_module-datetime.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_TRUE@am_datetime_module_OBJECTS = lib/efi/datetime_module-datetime.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_TRUE@am_datetime_module_OBJECTS = lib/dummy/datetime_module-datetime.$(OBJEXT) -@COND_arm64_efi_TRUE@am_datetime_module_OBJECTS = lib/efi/datetime_module-datetime.$(OBJEXT) -nodist_datetime_module_OBJECTS = -datetime_module_OBJECTS = $(am_datetime_module_OBJECTS) \ - $(nodist_datetime_module_OBJECTS) -datetime_module_LINK = $(CCLD) $(datetime_module_CFLAGS) $(CFLAGS) \ - $(datetime_module_LDFLAGS) $(LDFLAGS) -o $@ -am_disk_module_OBJECTS = lib/disk_module-disk.$(OBJEXT) -nodist_disk_module_OBJECTS = -disk_module_OBJECTS = $(am_disk_module_OBJECTS) \ - $(nodist_disk_module_OBJECTS) -disk_module_LINK = $(CCLD) $(disk_module_CFLAGS) $(CFLAGS) \ - $(disk_module_LDFLAGS) $(LDFLAGS) -o $@ -am__diskboot_image_SOURCES_DIST = boot/i386/pc/diskboot.S \ - boot/sparc64/ieee1275/diskboot.S -@COND_i386_pc_FALSE@@COND_sparc64_ieee1275_TRUE@am_diskboot_image_OBJECTS = boot/sparc64/ieee1275/diskboot_image-diskboot.$(OBJEXT) -@COND_i386_pc_TRUE@am_diskboot_image_OBJECTS = boot/i386/pc/diskboot_image-diskboot.$(OBJEXT) -nodist_diskboot_image_OBJECTS = -diskboot_image_OBJECTS = $(am_diskboot_image_OBJECTS) \ - $(nodist_diskboot_image_OBJECTS) -diskboot_image_DEPENDENCIES = -diskboot_image_LINK = $(CCLD) $(diskboot_image_CFLAGS) $(CFLAGS) \ - $(diskboot_image_LDFLAGS) $(LDFLAGS) -o $@ -am_diskfilter_module_OBJECTS = \ - disk/diskfilter_module-diskfilter.$(OBJEXT) -nodist_diskfilter_module_OBJECTS = -diskfilter_module_OBJECTS = $(am_diskfilter_module_OBJECTS) \ - $(nodist_diskfilter_module_OBJECTS) -diskfilter_module_LINK = $(CCLD) $(diskfilter_module_CFLAGS) $(CFLAGS) \ - $(diskfilter_module_LDFLAGS) $(LDFLAGS) -o $@ -am__div_module_SOURCES_DIST = lib/division.c -@COND_arm64_efi_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_FALSE@@COND_x86_64_efi_FALSE@@COND_x86_64_xen_TRUE@am_div_module_OBJECTS = lib/div_module-division.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_FALSE@@COND_x86_64_efi_TRUE@am_div_module_OBJECTS = lib/div_module-division.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_TRUE@am_div_module_OBJECTS = lib/div_module-division.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv64_efi_TRUE@am_div_module_OBJECTS = lib/div_module-division.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_TRUE@am_div_module_OBJECTS = lib/div_module-division.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_TRUE@am_div_module_OBJECTS = lib/div_module-division.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_TRUE@am_div_module_OBJECTS = lib/div_module-division.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_mips_arc_TRUE@am_div_module_OBJECTS = lib/div_module-division.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_TRUE@am_div_module_OBJECTS = lib/div_module-division.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_TRUE@am_div_module_OBJECTS = lib/div_module-division.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_TRUE@am_div_module_OBJECTS = lib/div_module-division.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@am_div_module_OBJECTS = lib/div_module-division.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_TRUE@am_div_module_OBJECTS = lib/div_module-division.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_TRUE@am_div_module_OBJECTS = lib/div_module-division.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_TRUE@am_div_module_OBJECTS = lib/div_module-division.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_TRUE@am_div_module_OBJECTS = lib/div_module-division.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_emu_TRUE@am_div_module_OBJECTS = lib/div_module-division.$(OBJEXT) -@COND_arm64_efi_TRUE@am_div_module_OBJECTS = \ -@COND_arm64_efi_TRUE@ lib/div_module-division.$(OBJEXT) -nodist_div_module_OBJECTS = -div_module_OBJECTS = $(am_div_module_OBJECTS) \ - $(nodist_div_module_OBJECTS) -div_module_LINK = $(CCLD) $(div_module_CFLAGS) $(CFLAGS) \ - $(div_module_LDFLAGS) $(LDFLAGS) -o $@ -am_div_test_module_OBJECTS = tests/div_test_module-div_test.$(OBJEXT) -nodist_div_test_module_OBJECTS = -div_test_module_OBJECTS = $(am_div_test_module_OBJECTS) \ - $(nodist_div_test_module_OBJECTS) -div_test_module_LINK = $(CCLD) $(div_test_module_CFLAGS) $(CFLAGS) \ - $(div_test_module_LDFLAGS) $(LDFLAGS) -o $@ -am_dm_nv_module_OBJECTS = disk/dm_nv_module-dmraid_nvidia.$(OBJEXT) -nodist_dm_nv_module_OBJECTS = -dm_nv_module_OBJECTS = $(am_dm_nv_module_OBJECTS) \ - $(nodist_dm_nv_module_OBJECTS) -dm_nv_module_LINK = $(CCLD) $(dm_nv_module_CFLAGS) $(CFLAGS) \ - $(dm_nv_module_LDFLAGS) $(LDFLAGS) -o $@ -am__drivemap_module_SOURCES_DIST = commands/i386/pc/drivemap.c \ - commands/i386/pc/drivemap_int13h.S -@COND_i386_pc_TRUE@am_drivemap_module_OBJECTS = commands/i386/pc/drivemap_module-drivemap.$(OBJEXT) \ -@COND_i386_pc_TRUE@ commands/i386/pc/drivemap_module-drivemap_int13h.$(OBJEXT) -nodist_drivemap_module_OBJECTS = -drivemap_module_OBJECTS = $(am_drivemap_module_OBJECTS) \ - $(nodist_drivemap_module_OBJECTS) -drivemap_module_LINK = $(CCLD) $(drivemap_module_CFLAGS) $(CFLAGS) \ - $(drivemap_module_LDFLAGS) $(LDFLAGS) -o $@ -am_echo_module_OBJECTS = commands/echo_module-echo.$(OBJEXT) -nodist_echo_module_OBJECTS = -echo_module_OBJECTS = $(am_echo_module_OBJECTS) \ - $(nodist_echo_module_OBJECTS) -echo_module_LINK = $(CCLD) $(echo_module_CFLAGS) $(CFLAGS) \ - $(echo_module_LDFLAGS) $(LDFLAGS) -o $@ -am__efi_gop_module_SOURCES_DIST = video/efi_gop.c -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_i386_efi_FALSE@@COND_ia64_efi_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_x86_64_efi_TRUE@am_efi_gop_module_OBJECTS = video/efi_gop_module-efi_gop.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_i386_efi_FALSE@@COND_ia64_efi_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_TRUE@am_efi_gop_module_OBJECTS = video/efi_gop_module-efi_gop.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_i386_efi_FALSE@@COND_ia64_efi_FALSE@@COND_riscv32_efi_TRUE@am_efi_gop_module_OBJECTS = video/efi_gop_module-efi_gop.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_i386_efi_FALSE@@COND_ia64_efi_TRUE@am_efi_gop_module_OBJECTS = video/efi_gop_module-efi_gop.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_i386_efi_TRUE@am_efi_gop_module_OBJECTS = video/efi_gop_module-efi_gop.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_TRUE@am_efi_gop_module_OBJECTS = video/efi_gop_module-efi_gop.$(OBJEXT) -@COND_arm64_efi_TRUE@am_efi_gop_module_OBJECTS = \ -@COND_arm64_efi_TRUE@ video/efi_gop_module-efi_gop.$(OBJEXT) -nodist_efi_gop_module_OBJECTS = -efi_gop_module_OBJECTS = $(am_efi_gop_module_OBJECTS) \ - $(nodist_efi_gop_module_OBJECTS) -efi_gop_module_LINK = $(CCLD) $(efi_gop_module_CFLAGS) $(CFLAGS) \ - $(efi_gop_module_LDFLAGS) $(LDFLAGS) -o $@ -am__efi_uga_module_SOURCES_DIST = video/efi_uga.c -@COND_i386_efi_FALSE@@COND_x86_64_efi_TRUE@am_efi_uga_module_OBJECTS = video/efi_uga_module-efi_uga.$(OBJEXT) -@COND_i386_efi_TRUE@am_efi_uga_module_OBJECTS = \ -@COND_i386_efi_TRUE@ video/efi_uga_module-efi_uga.$(OBJEXT) -nodist_efi_uga_module_OBJECTS = -efi_uga_module_OBJECTS = $(am_efi_uga_module_OBJECTS) \ - $(nodist_efi_uga_module_OBJECTS) -efi_uga_module_LINK = $(CCLD) $(efi_uga_module_CFLAGS) $(CFLAGS) \ - $(efi_uga_module_LDFLAGS) $(LDFLAGS) -o $@ -am__efiemu_module_SOURCES_DIST = efiemu/i386/pc/cfgtables.c \ - efiemu/main.c efiemu/i386/loadcore32.c \ - efiemu/i386/loadcore64.c efiemu/mm.c efiemu/loadcore_common.c \ - efiemu/symbols.c efiemu/loadcore32.c efiemu/loadcore64.c \ - efiemu/prepare32.c efiemu/prepare64.c efiemu/pnvram.c \ - efiemu/i386/coredetect.c efiemu/i386/nocfgtables.c -@COND_i386_coreboot_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_TRUE@am_efiemu_module_OBJECTS = efiemu/i386/efiemu_module-nocfgtables.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_TRUE@ efiemu/efiemu_module-main.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_TRUE@ efiemu/i386/efiemu_module-loadcore32.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_TRUE@ efiemu/i386/efiemu_module-loadcore64.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_TRUE@ efiemu/efiemu_module-mm.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_TRUE@ efiemu/efiemu_module-loadcore_common.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_TRUE@ efiemu/efiemu_module-symbols.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_TRUE@ efiemu/efiemu_module-loadcore32.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_TRUE@ efiemu/efiemu_module-loadcore64.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_TRUE@ efiemu/efiemu_module-prepare32.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_TRUE@ efiemu/efiemu_module-prepare64.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_TRUE@ efiemu/efiemu_module-pnvram.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_TRUE@ efiemu/i386/efiemu_module-coredetect.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@am_efiemu_module_OBJECTS = efiemu/i386/pc/efiemu_module-cfgtables.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@ efiemu/efiemu_module-main.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@ efiemu/i386/efiemu_module-loadcore32.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@ efiemu/i386/efiemu_module-loadcore64.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@ efiemu/efiemu_module-mm.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@ efiemu/efiemu_module-loadcore_common.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@ efiemu/efiemu_module-symbols.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@ efiemu/efiemu_module-loadcore32.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@ efiemu/efiemu_module-loadcore64.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@ efiemu/efiemu_module-prepare32.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@ efiemu/efiemu_module-prepare64.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@ efiemu/efiemu_module-pnvram.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@ efiemu/i386/efiemu_module-coredetect.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_TRUE@am_efiemu_module_OBJECTS = efiemu/i386/pc/efiemu_module-cfgtables.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_TRUE@ efiemu/efiemu_module-main.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_TRUE@ efiemu/i386/efiemu_module-loadcore32.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_TRUE@ efiemu/i386/efiemu_module-loadcore64.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_TRUE@ efiemu/efiemu_module-mm.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_TRUE@ efiemu/efiemu_module-loadcore_common.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_TRUE@ efiemu/efiemu_module-symbols.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_TRUE@ efiemu/efiemu_module-loadcore32.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_TRUE@ efiemu/efiemu_module-loadcore64.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_TRUE@ efiemu/efiemu_module-prepare32.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_TRUE@ efiemu/efiemu_module-prepare64.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_TRUE@ efiemu/efiemu_module-pnvram.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_TRUE@ efiemu/i386/efiemu_module-coredetect.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_ieee1275_TRUE@am_efiemu_module_OBJECTS = efiemu/i386/efiemu_module-nocfgtables.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_ieee1275_TRUE@ efiemu/efiemu_module-main.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_ieee1275_TRUE@ efiemu/i386/efiemu_module-loadcore32.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_ieee1275_TRUE@ efiemu/i386/efiemu_module-loadcore64.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_ieee1275_TRUE@ efiemu/efiemu_module-mm.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_ieee1275_TRUE@ efiemu/efiemu_module-loadcore_common.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_ieee1275_TRUE@ efiemu/efiemu_module-symbols.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_ieee1275_TRUE@ efiemu/efiemu_module-loadcore32.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_ieee1275_TRUE@ efiemu/efiemu_module-loadcore64.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_ieee1275_TRUE@ efiemu/efiemu_module-prepare32.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_ieee1275_TRUE@ efiemu/efiemu_module-prepare64.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_ieee1275_TRUE@ efiemu/efiemu_module-pnvram.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_ieee1275_TRUE@ efiemu/i386/efiemu_module-coredetect.$(OBJEXT) -@COND_i386_coreboot_TRUE@am_efiemu_module_OBJECTS = efiemu/i386/pc/efiemu_module-cfgtables.$(OBJEXT) \ -@COND_i386_coreboot_TRUE@ efiemu/efiemu_module-main.$(OBJEXT) \ -@COND_i386_coreboot_TRUE@ efiemu/i386/efiemu_module-loadcore32.$(OBJEXT) \ -@COND_i386_coreboot_TRUE@ efiemu/i386/efiemu_module-loadcore64.$(OBJEXT) \ -@COND_i386_coreboot_TRUE@ efiemu/efiemu_module-mm.$(OBJEXT) \ -@COND_i386_coreboot_TRUE@ efiemu/efiemu_module-loadcore_common.$(OBJEXT) \ -@COND_i386_coreboot_TRUE@ efiemu/efiemu_module-symbols.$(OBJEXT) \ -@COND_i386_coreboot_TRUE@ efiemu/efiemu_module-loadcore32.$(OBJEXT) \ -@COND_i386_coreboot_TRUE@ efiemu/efiemu_module-loadcore64.$(OBJEXT) \ -@COND_i386_coreboot_TRUE@ efiemu/efiemu_module-prepare32.$(OBJEXT) \ -@COND_i386_coreboot_TRUE@ efiemu/efiemu_module-prepare64.$(OBJEXT) \ -@COND_i386_coreboot_TRUE@ efiemu/efiemu_module-pnvram.$(OBJEXT) \ -@COND_i386_coreboot_TRUE@ efiemu/i386/efiemu_module-coredetect.$(OBJEXT) -nodist_efiemu_module_OBJECTS = -efiemu_module_OBJECTS = $(am_efiemu_module_OBJECTS) \ - $(nodist_efiemu_module_OBJECTS) -efiemu_module_LINK = $(CCLD) $(efiemu_module_CFLAGS) $(CFLAGS) \ - $(efiemu_module_LDFLAGS) $(LDFLAGS) -o $@ -am__efifwsetup_module_SOURCES_DIST = commands/efi/efifwsetup.c -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_i386_efi_FALSE@@COND_ia64_efi_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_x86_64_efi_TRUE@am_efifwsetup_module_OBJECTS = commands/efi/efifwsetup_module-efifwsetup.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_i386_efi_FALSE@@COND_ia64_efi_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_TRUE@am_efifwsetup_module_OBJECTS = commands/efi/efifwsetup_module-efifwsetup.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_i386_efi_FALSE@@COND_ia64_efi_FALSE@@COND_riscv32_efi_TRUE@am_efifwsetup_module_OBJECTS = commands/efi/efifwsetup_module-efifwsetup.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_i386_efi_FALSE@@COND_ia64_efi_TRUE@am_efifwsetup_module_OBJECTS = commands/efi/efifwsetup_module-efifwsetup.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_i386_efi_TRUE@am_efifwsetup_module_OBJECTS = commands/efi/efifwsetup_module-efifwsetup.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_TRUE@am_efifwsetup_module_OBJECTS = commands/efi/efifwsetup_module-efifwsetup.$(OBJEXT) -@COND_arm64_efi_TRUE@am_efifwsetup_module_OBJECTS = commands/efi/efifwsetup_module-efifwsetup.$(OBJEXT) -nodist_efifwsetup_module_OBJECTS = -efifwsetup_module_OBJECTS = $(am_efifwsetup_module_OBJECTS) \ - $(nodist_efifwsetup_module_OBJECTS) -efifwsetup_module_LINK = $(CCLD) $(efifwsetup_module_CFLAGS) $(CFLAGS) \ - $(efifwsetup_module_LDFLAGS) $(LDFLAGS) -o $@ -am__efinet_module_SOURCES_DIST = net/drivers/efi/efinet.c -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_i386_efi_FALSE@@COND_ia64_efi_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_x86_64_efi_TRUE@am_efinet_module_OBJECTS = net/drivers/efi/efinet_module-efinet.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_i386_efi_FALSE@@COND_ia64_efi_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_TRUE@am_efinet_module_OBJECTS = net/drivers/efi/efinet_module-efinet.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_i386_efi_FALSE@@COND_ia64_efi_FALSE@@COND_riscv32_efi_TRUE@am_efinet_module_OBJECTS = net/drivers/efi/efinet_module-efinet.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_i386_efi_FALSE@@COND_ia64_efi_TRUE@am_efinet_module_OBJECTS = net/drivers/efi/efinet_module-efinet.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_i386_efi_TRUE@am_efinet_module_OBJECTS = net/drivers/efi/efinet_module-efinet.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_TRUE@am_efinet_module_OBJECTS = net/drivers/efi/efinet_module-efinet.$(OBJEXT) -@COND_arm64_efi_TRUE@am_efinet_module_OBJECTS = net/drivers/efi/efinet_module-efinet.$(OBJEXT) -nodist_efinet_module_OBJECTS = -efinet_module_OBJECTS = $(am_efinet_module_OBJECTS) \ - $(nodist_efinet_module_OBJECTS) -efinet_module_LINK = $(CCLD) $(efinet_module_CFLAGS) $(CFLAGS) \ - $(efinet_module_LDFLAGS) $(LDFLAGS) -o $@ -am__ehci_module_SOURCES_DIST = bus/usb/ehci-fdt.c bus/usb/ehci.c \ - bus/usb/ehci-pci.c -@COND_arm_coreboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_mips_loongson_FALSE@@COND_x86_64_efi_TRUE@am_ehci_module_OBJECTS = bus/usb/ehci_module-ehci-pci.$(OBJEXT) \ -@COND_arm_coreboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_mips_loongson_FALSE@@COND_x86_64_efi_TRUE@ bus/usb/ehci_module-ehci.$(OBJEXT) -@COND_arm_coreboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_mips_loongson_TRUE@am_ehci_module_OBJECTS = bus/usb/ehci_module-ehci-pci.$(OBJEXT) \ -@COND_arm_coreboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_mips_loongson_TRUE@ bus/usb/ehci_module-ehci.$(OBJEXT) -@COND_arm_coreboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_TRUE@am_ehci_module_OBJECTS = bus/usb/ehci_module-ehci-pci.$(OBJEXT) \ -@COND_arm_coreboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_TRUE@ bus/usb/ehci_module-ehci.$(OBJEXT) -@COND_arm_coreboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@am_ehci_module_OBJECTS = bus/usb/ehci_module-ehci-pci.$(OBJEXT) \ -@COND_arm_coreboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@ bus/usb/ehci_module-ehci.$(OBJEXT) -@COND_arm_coreboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_TRUE@am_ehci_module_OBJECTS = bus/usb/ehci_module-ehci-pci.$(OBJEXT) \ -@COND_arm_coreboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_TRUE@ bus/usb/ehci_module-ehci.$(OBJEXT) -@COND_arm_coreboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_TRUE@am_ehci_module_OBJECTS = bus/usb/ehci_module-ehci-pci.$(OBJEXT) \ -@COND_arm_coreboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_TRUE@ bus/usb/ehci_module-ehci.$(OBJEXT) -@COND_arm_coreboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_TRUE@am_ehci_module_OBJECTS = bus/usb/ehci_module-ehci-pci.$(OBJEXT) \ -@COND_arm_coreboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_TRUE@ bus/usb/ehci_module-ehci.$(OBJEXT) -@COND_arm_coreboot_FALSE@@COND_i386_coreboot_TRUE@am_ehci_module_OBJECTS = bus/usb/ehci_module-ehci-pci.$(OBJEXT) \ -@COND_arm_coreboot_FALSE@@COND_i386_coreboot_TRUE@ bus/usb/ehci_module-ehci.$(OBJEXT) -@COND_arm_coreboot_TRUE@am_ehci_module_OBJECTS = bus/usb/ehci_module-ehci-fdt.$(OBJEXT) \ -@COND_arm_coreboot_TRUE@ bus/usb/ehci_module-ehci.$(OBJEXT) -nodist_ehci_module_OBJECTS = -ehci_module_OBJECTS = $(am_ehci_module_OBJECTS) \ - $(nodist_ehci_module_OBJECTS) -ehci_module_LINK = $(CCLD) $(ehci_module_CFLAGS) $(CFLAGS) \ - $(ehci_module_LDFLAGS) $(LDFLAGS) -o $@ -am_elf_module_OBJECTS = kern/elf_module-elf.$(OBJEXT) -nodist_elf_module_OBJECTS = -elf_module_OBJECTS = $(am_elf_module_OBJECTS) \ - $(nodist_elf_module_OBJECTS) -elf_module_LINK = $(CCLD) $(elf_module_CFLAGS) $(CFLAGS) \ - $(elf_module_LDFLAGS) $(LDFLAGS) -o $@ -am__emunet_module_SOURCES_DIST = net/drivers/emu/emunet.c -@COND_emu_TRUE@am_emunet_module_OBJECTS = \ -@COND_emu_TRUE@ net/drivers/emu/emunet_module-emunet.$(OBJEXT) -nodist_emunet_module_OBJECTS = -emunet_module_OBJECTS = $(am_emunet_module_OBJECTS) \ - $(nodist_emunet_module_OBJECTS) -emunet_module_LINK = $(CCLD) $(emunet_module_CFLAGS) $(CFLAGS) \ - $(emunet_module_LDFLAGS) $(LDFLAGS) -o $@ -am__emupci_module_SOURCES_DIST = bus/emu/pci.c commands/lspci.c -@COND_GRUB_EMU_PCI_TRUE@@COND_emu_TRUE@am_emupci_module_OBJECTS = bus/emu/emupci_module-pci.$(OBJEXT) \ -@COND_GRUB_EMU_PCI_TRUE@@COND_emu_TRUE@ commands/emupci_module-lspci.$(OBJEXT) -nodist_emupci_module_OBJECTS = -emupci_module_OBJECTS = $(am_emupci_module_OBJECTS) \ - $(nodist_emupci_module_OBJECTS) -emupci_module_LINK = $(CCLD) $(emupci_module_CFLAGS) $(CFLAGS) \ - $(emupci_module_LDFLAGS) $(LDFLAGS) -o $@ -am__escc_module_SOURCES_DIST = term/ieee1275/escc.c -@COND_powerpc_ieee1275_TRUE@am_escc_module_OBJECTS = term/ieee1275/escc_module-escc.$(OBJEXT) -nodist_escc_module_OBJECTS = -escc_module_OBJECTS = $(am_escc_module_OBJECTS) \ - $(nodist_escc_module_OBJECTS) -escc_module_LINK = $(CCLD) $(escc_module_CFLAGS) $(CFLAGS) \ - $(escc_module_LDFLAGS) $(LDFLAGS) -o $@ -am_eval_module_OBJECTS = commands/eval_module-eval.$(OBJEXT) -nodist_eval_module_OBJECTS = -eval_module_OBJECTS = $(am_eval_module_OBJECTS) \ - $(nodist_eval_module_OBJECTS) -eval_module_LINK = $(CCLD) $(eval_module_CFLAGS) $(CFLAGS) \ - $(eval_module_LDFLAGS) $(LDFLAGS) -o $@ -am_exfat_module_OBJECTS = fs/exfat_module-exfat.$(OBJEXT) -nodist_exfat_module_OBJECTS = -exfat_module_OBJECTS = $(am_exfat_module_OBJECTS) \ - $(nodist_exfat_module_OBJECTS) -exfat_module_LINK = $(CCLD) $(exfat_module_CFLAGS) $(CFLAGS) \ - $(exfat_module_LDFLAGS) $(LDFLAGS) -o $@ -am_exfctest_module_OBJECTS = \ - tests/exfctest_module-example_functional_test.$(OBJEXT) -nodist_exfctest_module_OBJECTS = -exfctest_module_OBJECTS = $(am_exfctest_module_OBJECTS) \ - $(nodist_exfctest_module_OBJECTS) -exfctest_module_LINK = $(CCLD) $(exfctest_module_CFLAGS) $(CFLAGS) \ - $(exfctest_module_LDFLAGS) $(LDFLAGS) -o $@ -am_ext2_module_OBJECTS = fs/ext2_module-ext2.$(OBJEXT) -nodist_ext2_module_OBJECTS = -ext2_module_OBJECTS = $(am_ext2_module_OBJECTS) \ - $(nodist_ext2_module_OBJECTS) -ext2_module_LINK = $(CCLD) $(ext2_module_CFLAGS) $(CFLAGS) \ - $(ext2_module_LDFLAGS) $(LDFLAGS) -o $@ -am__extcmd_module_SOURCES_DIST = commands/extcmd.c lib/arg.c -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_ia64_efi_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_x86_64_efi_TRUE@am_extcmd_module_OBJECTS = commands/extcmd_module-extcmd.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_ia64_efi_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_x86_64_efi_TRUE@ lib/extcmd_module-arg.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_ia64_efi_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_TRUE@am_extcmd_module_OBJECTS = commands/extcmd_module-extcmd.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_ia64_efi_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_TRUE@ lib/extcmd_module-arg.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_ia64_efi_FALSE@@COND_riscv32_efi_TRUE@am_extcmd_module_OBJECTS = commands/extcmd_module-extcmd.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_ia64_efi_FALSE@@COND_riscv32_efi_TRUE@ lib/extcmd_module-arg.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_ia64_efi_TRUE@am_extcmd_module_OBJECTS = commands/extcmd_module-extcmd.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_ia64_efi_TRUE@ lib/extcmd_module-arg.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_TRUE@am_extcmd_module_OBJECTS = commands/extcmd_module-extcmd.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_TRUE@ lib/extcmd_module-arg.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@am_extcmd_module_OBJECTS = commands/extcmd_module-extcmd.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@ lib/extcmd_module-arg.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_multiboot_TRUE@am_extcmd_module_OBJECTS = commands/extcmd_module-extcmd.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_multiboot_TRUE@ lib/extcmd_module-arg.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_TRUE@am_extcmd_module_OBJECTS = commands/extcmd_module-extcmd.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_TRUE@ lib/extcmd_module-arg.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_i386_coreboot_TRUE@am_extcmd_module_OBJECTS = commands/extcmd_module-extcmd.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_i386_coreboot_TRUE@ lib/extcmd_module-arg.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_TRUE@am_extcmd_module_OBJECTS = commands/extcmd_module-extcmd.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_TRUE@ lib/extcmd_module-arg.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_TRUE@am_extcmd_module_OBJECTS = commands/extcmd_module-extcmd.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_TRUE@ lib/extcmd_module-arg.$(OBJEXT) -@COND_arm64_efi_TRUE@am_extcmd_module_OBJECTS = \ -@COND_arm64_efi_TRUE@ commands/extcmd_module-extcmd.$(OBJEXT) \ -@COND_arm64_efi_TRUE@ lib/extcmd_module-arg.$(OBJEXT) -nodist_extcmd_module_OBJECTS = -extcmd_module_OBJECTS = $(am_extcmd_module_OBJECTS) \ - $(nodist_extcmd_module_OBJECTS) -extcmd_module_LINK = $(CCLD) $(extcmd_module_CFLAGS) $(CFLAGS) \ - $(extcmd_module_LDFLAGS) $(LDFLAGS) -o $@ -am_f2fs_module_OBJECTS = fs/f2fs_module-f2fs.$(OBJEXT) -nodist_f2fs_module_OBJECTS = -f2fs_module_OBJECTS = $(am_f2fs_module_OBJECTS) \ - $(nodist_f2fs_module_OBJECTS) -f2fs_module_LINK = $(CCLD) $(f2fs_module_CFLAGS) $(CFLAGS) \ - $(f2fs_module_LDFLAGS) $(LDFLAGS) -o $@ -am_fat_module_OBJECTS = fs/fat_module-fat.$(OBJEXT) -nodist_fat_module_OBJECTS = -fat_module_OBJECTS = $(am_fat_module_OBJECTS) \ - $(nodist_fat_module_OBJECTS) -fat_module_LINK = $(CCLD) $(fat_module_CFLAGS) $(CFLAGS) \ - $(fat_module_LDFLAGS) $(LDFLAGS) -o $@ -am__fdt_module_SOURCES_DIST = loader/efi/fdt.c lib/fdt.c -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_TRUE@am_fdt_module_OBJECTS = loader/efi/fdt_module-fdt.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_TRUE@ lib/fdt_module-fdt.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_riscv32_efi_TRUE@am_fdt_module_OBJECTS = loader/efi/fdt_module-fdt.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_riscv32_efi_TRUE@ lib/fdt_module-fdt.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_TRUE@am_fdt_module_OBJECTS = lib/fdt_module-fdt.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_TRUE@am_fdt_module_OBJECTS = loader/efi/fdt_module-fdt.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_efi_TRUE@ lib/fdt_module-fdt.$(OBJEXT) -@COND_arm64_efi_TRUE@am_fdt_module_OBJECTS = \ -@COND_arm64_efi_TRUE@ loader/efi/fdt_module-fdt.$(OBJEXT) \ -@COND_arm64_efi_TRUE@ lib/fdt_module-fdt.$(OBJEXT) -nodist_fdt_module_OBJECTS = -fdt_module_OBJECTS = $(am_fdt_module_OBJECTS) \ - $(nodist_fdt_module_OBJECTS) -fdt_module_LINK = $(CCLD) $(fdt_module_CFLAGS) $(CFLAGS) \ - $(fdt_module_LDFLAGS) $(LDFLAGS) -o $@ -am_file_module_OBJECTS = commands/file_module-file.$(OBJEXT) \ - commands/file_module-file32.$(OBJEXT) \ - commands/file_module-file64.$(OBJEXT) \ - loader/i386/file_module-xen_file.$(OBJEXT) \ - loader/i386/file_module-xen_file32.$(OBJEXT) \ - loader/i386/file_module-xen_file64.$(OBJEXT) -nodist_file_module_OBJECTS = -file_module_OBJECTS = $(am_file_module_OBJECTS) \ - $(nodist_file_module_OBJECTS) -file_module_LINK = $(CCLD) $(file_module_CFLAGS) $(CFLAGS) \ - $(file_module_LDFLAGS) $(LDFLAGS) -o $@ -am__fixvideo_module_SOURCES_DIST = commands/efi/fixvideo.c -@COND_i386_efi_FALSE@@COND_x86_64_efi_TRUE@am_fixvideo_module_OBJECTS = commands/efi/fixvideo_module-fixvideo.$(OBJEXT) -@COND_i386_efi_TRUE@am_fixvideo_module_OBJECTS = commands/efi/fixvideo_module-fixvideo.$(OBJEXT) -nodist_fixvideo_module_OBJECTS = -fixvideo_module_OBJECTS = $(am_fixvideo_module_OBJECTS) \ - $(nodist_fixvideo_module_OBJECTS) -fixvideo_module_LINK = $(CCLD) $(fixvideo_module_CFLAGS) $(CFLAGS) \ - $(fixvideo_module_LDFLAGS) $(LDFLAGS) -o $@ -am__font_module_SOURCES_DIST = font/font.c font/font_cmd.c -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_FALSE@@COND_x86_64_efi_FALSE@@COND_x86_64_xen_TRUE@am_font_module_OBJECTS = font/font_module-font.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_FALSE@@COND_x86_64_efi_FALSE@@COND_x86_64_xen_TRUE@ font/font_module-font_cmd.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_FALSE@@COND_x86_64_efi_TRUE@am_font_module_OBJECTS = font/font_module-font.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_FALSE@@COND_x86_64_efi_TRUE@ font/font_module-font_cmd.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_TRUE@am_font_module_OBJECTS = font/font_module-font.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_TRUE@ font/font_module-font_cmd.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_TRUE@am_font_module_OBJECTS = font/font_module-font.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_TRUE@ font/font_module-font_cmd.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_TRUE@am_font_module_OBJECTS = font/font_module-font.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_TRUE@ font/font_module-font_cmd.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_TRUE@am_font_module_OBJECTS = font/font_module-font.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_TRUE@ font/font_module-font_cmd.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_qemu_mips_TRUE@am_font_module_OBJECTS = font/font_module-font.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_qemu_mips_TRUE@ font/font_module-font_cmd.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_TRUE@am_font_module_OBJECTS = font/font_module-font.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_TRUE@ font/font_module-font_cmd.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_TRUE@am_font_module_OBJECTS = font/font_module-font.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_TRUE@ font/font_module-font_cmd.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_TRUE@am_font_module_OBJECTS = font/font_module-font.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_TRUE@ font/font_module-font_cmd.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_TRUE@am_font_module_OBJECTS = font/font_module-font.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_TRUE@ font/font_module-font_cmd.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_TRUE@am_font_module_OBJECTS = font/font_module-font.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_TRUE@ font/font_module-font_cmd.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@am_font_module_OBJECTS = font/font_module-font.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@ font/font_module-font_cmd.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_TRUE@am_font_module_OBJECTS = font/font_module-font.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_TRUE@ font/font_module-font_cmd.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_TRUE@am_font_module_OBJECTS = font/font_module-font.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_TRUE@ font/font_module-font_cmd.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_TRUE@am_font_module_OBJECTS = font/font_module-font.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_TRUE@ font/font_module-font_cmd.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_TRUE@am_font_module_OBJECTS = font/font_module-font.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_TRUE@ font/font_module-font_cmd.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_TRUE@am_font_module_OBJECTS = font/font_module-font.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_TRUE@ font/font_module-font_cmd.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_TRUE@am_font_module_OBJECTS = font/font_module-font.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_efi_TRUE@ font/font_module-font_cmd.$(OBJEXT) -@COND_arm64_efi_TRUE@am_font_module_OBJECTS = \ -@COND_arm64_efi_TRUE@ font/font_module-font.$(OBJEXT) \ -@COND_arm64_efi_TRUE@ font/font_module-font_cmd.$(OBJEXT) -nodist_font_module_OBJECTS = -font_module_OBJECTS = $(am_font_module_OBJECTS) \ - $(nodist_font_module_OBJECTS) -font_module_LINK = $(CCLD) $(font_module_CFLAGS) $(CFLAGS) \ - $(font_module_LDFLAGS) $(LDFLAGS) -o $@ -am__freedos_module_SOURCES_DIST = loader/i386/pc/freedos.c -@COND_i386_pc_TRUE@am_freedos_module_OBJECTS = loader/i386/pc/freedos_module-freedos.$(OBJEXT) -nodist_freedos_module_OBJECTS = -freedos_module_OBJECTS = $(am_freedos_module_OBJECTS) \ - $(nodist_freedos_module_OBJECTS) -freedos_module_LINK = $(CCLD) $(freedos_module_CFLAGS) $(CFLAGS) \ - $(freedos_module_LDFLAGS) $(LDFLAGS) -o $@ -am_fshelp_module_OBJECTS = fs/fshelp_module-fshelp.$(OBJEXT) -nodist_fshelp_module_OBJECTS = -fshelp_module_OBJECTS = $(am_fshelp_module_OBJECTS) \ - $(nodist_fshelp_module_OBJECTS) -fshelp_module_LINK = $(CCLD) $(fshelp_module_CFLAGS) $(CFLAGS) \ - $(fshelp_module_LDFLAGS) $(LDFLAGS) -o $@ -am_functional_test_module_OBJECTS = \ - tests/lib/functional_test_module-functional_test.$(OBJEXT) \ - tests/lib/functional_test_module-test.$(OBJEXT) \ - tests/functional_test_module-video_checksum.$(OBJEXT) \ - tests/functional_test_module-fake_input.$(OBJEXT) \ - video/functional_test_module-capture.$(OBJEXT) -nodist_functional_test_module_OBJECTS = -functional_test_module_OBJECTS = $(am_functional_test_module_OBJECTS) \ - $(nodist_functional_test_module_OBJECTS) -functional_test_module_LINK = $(CCLD) $(functional_test_module_CFLAGS) \ - $(CFLAGS) $(functional_test_module_LDFLAGS) $(LDFLAGS) -o $@ -am__fwstart_image_SOURCES_DIST = boot/mips/loongson/fwstart.S -@COND_mips_loongson_TRUE@am_fwstart_image_OBJECTS = boot/mips/loongson/fwstart_image-fwstart.$(OBJEXT) -nodist_fwstart_image_OBJECTS = -fwstart_image_OBJECTS = $(am_fwstart_image_OBJECTS) \ - $(nodist_fwstart_image_OBJECTS) -fwstart_image_DEPENDENCIES = -fwstart_image_LINK = $(CCLD) $(fwstart_image_CFLAGS) $(CFLAGS) \ - $(fwstart_image_LDFLAGS) $(LDFLAGS) -o $@ -am__fwstart_fuloong2f_image_SOURCES_DIST = \ - boot/mips/loongson/fuloong2f.S -@COND_mips_loongson_TRUE@am_fwstart_fuloong2f_image_OBJECTS = boot/mips/loongson/fwstart_fuloong2f_image-fuloong2f.$(OBJEXT) -nodist_fwstart_fuloong2f_image_OBJECTS = -fwstart_fuloong2f_image_OBJECTS = \ - $(am_fwstart_fuloong2f_image_OBJECTS) \ - $(nodist_fwstart_fuloong2f_image_OBJECTS) -fwstart_fuloong2f_image_DEPENDENCIES = -fwstart_fuloong2f_image_LINK = $(CCLD) \ - $(fwstart_fuloong2f_image_CFLAGS) $(CFLAGS) \ - $(fwstart_fuloong2f_image_LDFLAGS) $(LDFLAGS) -o $@ -am_gcry_arcfour_module_OBJECTS = lib/libgcrypt-grub/cipher/gcry_arcfour_module-arcfour.$(OBJEXT) -nodist_gcry_arcfour_module_OBJECTS = -gcry_arcfour_module_OBJECTS = $(am_gcry_arcfour_module_OBJECTS) \ - $(nodist_gcry_arcfour_module_OBJECTS) -gcry_arcfour_module_LINK = $(CCLD) $(gcry_arcfour_module_CFLAGS) \ - $(CFLAGS) $(gcry_arcfour_module_LDFLAGS) $(LDFLAGS) -o $@ -am_gcry_blowfish_module_OBJECTS = lib/libgcrypt-grub/cipher/gcry_blowfish_module-blowfish.$(OBJEXT) -nodist_gcry_blowfish_module_OBJECTS = -gcry_blowfish_module_OBJECTS = $(am_gcry_blowfish_module_OBJECTS) \ - $(nodist_gcry_blowfish_module_OBJECTS) -gcry_blowfish_module_LINK = $(CCLD) $(gcry_blowfish_module_CFLAGS) \ - $(CFLAGS) $(gcry_blowfish_module_LDFLAGS) $(LDFLAGS) -o $@ -am_gcry_camellia_module_OBJECTS = lib/libgcrypt-grub/cipher/gcry_camellia_module-camellia-glue.$(OBJEXT) \ - lib/libgcrypt-grub/cipher/gcry_camellia_module-camellia.$(OBJEXT) -nodist_gcry_camellia_module_OBJECTS = -gcry_camellia_module_OBJECTS = $(am_gcry_camellia_module_OBJECTS) \ - $(nodist_gcry_camellia_module_OBJECTS) -gcry_camellia_module_LINK = $(CCLD) $(gcry_camellia_module_CFLAGS) \ - $(CFLAGS) $(gcry_camellia_module_LDFLAGS) $(LDFLAGS) -o $@ -am_gcry_cast5_module_OBJECTS = \ - lib/libgcrypt-grub/cipher/gcry_cast5_module-cast5.$(OBJEXT) -nodist_gcry_cast5_module_OBJECTS = -gcry_cast5_module_OBJECTS = $(am_gcry_cast5_module_OBJECTS) \ - $(nodist_gcry_cast5_module_OBJECTS) -gcry_cast5_module_LINK = $(CCLD) $(gcry_cast5_module_CFLAGS) $(CFLAGS) \ - $(gcry_cast5_module_LDFLAGS) $(LDFLAGS) -o $@ -am_gcry_crc_module_OBJECTS = \ - lib/libgcrypt-grub/cipher/gcry_crc_module-crc.$(OBJEXT) -nodist_gcry_crc_module_OBJECTS = -gcry_crc_module_OBJECTS = $(am_gcry_crc_module_OBJECTS) \ - $(nodist_gcry_crc_module_OBJECTS) -gcry_crc_module_LINK = $(CCLD) $(gcry_crc_module_CFLAGS) $(CFLAGS) \ - $(gcry_crc_module_LDFLAGS) $(LDFLAGS) -o $@ -am_gcry_des_module_OBJECTS = \ - lib/libgcrypt-grub/cipher/gcry_des_module-des.$(OBJEXT) -nodist_gcry_des_module_OBJECTS = -gcry_des_module_OBJECTS = $(am_gcry_des_module_OBJECTS) \ - $(nodist_gcry_des_module_OBJECTS) -gcry_des_module_LINK = $(CCLD) $(gcry_des_module_CFLAGS) $(CFLAGS) \ - $(gcry_des_module_LDFLAGS) $(LDFLAGS) -o $@ -am_gcry_dsa_module_OBJECTS = \ - lib/libgcrypt-grub/cipher/gcry_dsa_module-dsa.$(OBJEXT) -nodist_gcry_dsa_module_OBJECTS = -gcry_dsa_module_OBJECTS = $(am_gcry_dsa_module_OBJECTS) \ - $(nodist_gcry_dsa_module_OBJECTS) -gcry_dsa_module_LINK = $(CCLD) $(gcry_dsa_module_CFLAGS) $(CFLAGS) \ - $(gcry_dsa_module_LDFLAGS) $(LDFLAGS) -o $@ -am_gcry_idea_module_OBJECTS = \ - lib/libgcrypt-grub/cipher/gcry_idea_module-idea.$(OBJEXT) -nodist_gcry_idea_module_OBJECTS = -gcry_idea_module_OBJECTS = $(am_gcry_idea_module_OBJECTS) \ - $(nodist_gcry_idea_module_OBJECTS) -gcry_idea_module_LINK = $(CCLD) $(gcry_idea_module_CFLAGS) $(CFLAGS) \ - $(gcry_idea_module_LDFLAGS) $(LDFLAGS) -o $@ -am_gcry_md4_module_OBJECTS = \ - lib/libgcrypt-grub/cipher/gcry_md4_module-md4.$(OBJEXT) -nodist_gcry_md4_module_OBJECTS = -gcry_md4_module_OBJECTS = $(am_gcry_md4_module_OBJECTS) \ - $(nodist_gcry_md4_module_OBJECTS) -gcry_md4_module_LINK = $(CCLD) $(gcry_md4_module_CFLAGS) $(CFLAGS) \ - $(gcry_md4_module_LDFLAGS) $(LDFLAGS) -o $@ -am_gcry_md5_module_OBJECTS = \ - lib/libgcrypt-grub/cipher/gcry_md5_module-md5.$(OBJEXT) -nodist_gcry_md5_module_OBJECTS = -gcry_md5_module_OBJECTS = $(am_gcry_md5_module_OBJECTS) \ - $(nodist_gcry_md5_module_OBJECTS) -gcry_md5_module_LINK = $(CCLD) $(gcry_md5_module_CFLAGS) $(CFLAGS) \ - $(gcry_md5_module_LDFLAGS) $(LDFLAGS) -o $@ -am_gcry_rfc2268_module_OBJECTS = lib/libgcrypt-grub/cipher/gcry_rfc2268_module-rfc2268.$(OBJEXT) -nodist_gcry_rfc2268_module_OBJECTS = -gcry_rfc2268_module_OBJECTS = $(am_gcry_rfc2268_module_OBJECTS) \ - $(nodist_gcry_rfc2268_module_OBJECTS) -gcry_rfc2268_module_LINK = $(CCLD) $(gcry_rfc2268_module_CFLAGS) \ - $(CFLAGS) $(gcry_rfc2268_module_LDFLAGS) $(LDFLAGS) -o $@ -am_gcry_rijndael_module_OBJECTS = lib/libgcrypt-grub/cipher/gcry_rijndael_module-rijndael.$(OBJEXT) -nodist_gcry_rijndael_module_OBJECTS = -gcry_rijndael_module_OBJECTS = $(am_gcry_rijndael_module_OBJECTS) \ - $(nodist_gcry_rijndael_module_OBJECTS) -gcry_rijndael_module_LINK = $(CCLD) $(gcry_rijndael_module_CFLAGS) \ - $(CFLAGS) $(gcry_rijndael_module_LDFLAGS) $(LDFLAGS) -o $@ -am_gcry_rmd160_module_OBJECTS = \ - lib/libgcrypt-grub/cipher/gcry_rmd160_module-rmd160.$(OBJEXT) -nodist_gcry_rmd160_module_OBJECTS = -gcry_rmd160_module_OBJECTS = $(am_gcry_rmd160_module_OBJECTS) \ - $(nodist_gcry_rmd160_module_OBJECTS) -gcry_rmd160_module_LINK = $(CCLD) $(gcry_rmd160_module_CFLAGS) \ - $(CFLAGS) $(gcry_rmd160_module_LDFLAGS) $(LDFLAGS) -o $@ -am_gcry_rsa_module_OBJECTS = \ - lib/libgcrypt-grub/cipher/gcry_rsa_module-rsa.$(OBJEXT) -nodist_gcry_rsa_module_OBJECTS = -gcry_rsa_module_OBJECTS = $(am_gcry_rsa_module_OBJECTS) \ - $(nodist_gcry_rsa_module_OBJECTS) -gcry_rsa_module_LINK = $(CCLD) $(gcry_rsa_module_CFLAGS) $(CFLAGS) \ - $(gcry_rsa_module_LDFLAGS) $(LDFLAGS) -o $@ -am_gcry_seed_module_OBJECTS = \ - lib/libgcrypt-grub/cipher/gcry_seed_module-seed.$(OBJEXT) -nodist_gcry_seed_module_OBJECTS = -gcry_seed_module_OBJECTS = $(am_gcry_seed_module_OBJECTS) \ - $(nodist_gcry_seed_module_OBJECTS) -gcry_seed_module_LINK = $(CCLD) $(gcry_seed_module_CFLAGS) $(CFLAGS) \ - $(gcry_seed_module_LDFLAGS) $(LDFLAGS) -o $@ -am_gcry_serpent_module_OBJECTS = lib/libgcrypt-grub/cipher/gcry_serpent_module-serpent.$(OBJEXT) -nodist_gcry_serpent_module_OBJECTS = -gcry_serpent_module_OBJECTS = $(am_gcry_serpent_module_OBJECTS) \ - $(nodist_gcry_serpent_module_OBJECTS) -gcry_serpent_module_LINK = $(CCLD) $(gcry_serpent_module_CFLAGS) \ - $(CFLAGS) $(gcry_serpent_module_LDFLAGS) $(LDFLAGS) -o $@ -am_gcry_sha1_module_OBJECTS = \ - lib/libgcrypt-grub/cipher/gcry_sha1_module-sha1.$(OBJEXT) -nodist_gcry_sha1_module_OBJECTS = -gcry_sha1_module_OBJECTS = $(am_gcry_sha1_module_OBJECTS) \ - $(nodist_gcry_sha1_module_OBJECTS) -gcry_sha1_module_LINK = $(CCLD) $(gcry_sha1_module_CFLAGS) $(CFLAGS) \ - $(gcry_sha1_module_LDFLAGS) $(LDFLAGS) -o $@ -am_gcry_sha256_module_OBJECTS = \ - lib/libgcrypt-grub/cipher/gcry_sha256_module-sha256.$(OBJEXT) -nodist_gcry_sha256_module_OBJECTS = -gcry_sha256_module_OBJECTS = $(am_gcry_sha256_module_OBJECTS) \ - $(nodist_gcry_sha256_module_OBJECTS) -gcry_sha256_module_LINK = $(CCLD) $(gcry_sha256_module_CFLAGS) \ - $(CFLAGS) $(gcry_sha256_module_LDFLAGS) $(LDFLAGS) -o $@ -am_gcry_sha512_module_OBJECTS = \ - lib/libgcrypt-grub/cipher/gcry_sha512_module-sha512.$(OBJEXT) -nodist_gcry_sha512_module_OBJECTS = -gcry_sha512_module_OBJECTS = $(am_gcry_sha512_module_OBJECTS) \ - $(nodist_gcry_sha512_module_OBJECTS) -gcry_sha512_module_LINK = $(CCLD) $(gcry_sha512_module_CFLAGS) \ - $(CFLAGS) $(gcry_sha512_module_LDFLAGS) $(LDFLAGS) -o $@ -am_gcry_tiger_module_OBJECTS = \ - lib/libgcrypt-grub/cipher/gcry_tiger_module-tiger.$(OBJEXT) -nodist_gcry_tiger_module_OBJECTS = -gcry_tiger_module_OBJECTS = $(am_gcry_tiger_module_OBJECTS) \ - $(nodist_gcry_tiger_module_OBJECTS) -gcry_tiger_module_LINK = $(CCLD) $(gcry_tiger_module_CFLAGS) $(CFLAGS) \ - $(gcry_tiger_module_LDFLAGS) $(LDFLAGS) -o $@ -am_gcry_twofish_module_OBJECTS = lib/libgcrypt-grub/cipher/gcry_twofish_module-twofish.$(OBJEXT) -nodist_gcry_twofish_module_OBJECTS = -gcry_twofish_module_OBJECTS = $(am_gcry_twofish_module_OBJECTS) \ - $(nodist_gcry_twofish_module_OBJECTS) -gcry_twofish_module_LINK = $(CCLD) $(gcry_twofish_module_CFLAGS) \ - $(CFLAGS) $(gcry_twofish_module_LDFLAGS) $(LDFLAGS) -o $@ -am_gcry_whirlpool_module_OBJECTS = lib/libgcrypt-grub/cipher/gcry_whirlpool_module-whirlpool.$(OBJEXT) -nodist_gcry_whirlpool_module_OBJECTS = -gcry_whirlpool_module_OBJECTS = $(am_gcry_whirlpool_module_OBJECTS) \ - $(nodist_gcry_whirlpool_module_OBJECTS) -gcry_whirlpool_module_LINK = $(CCLD) $(gcry_whirlpool_module_CFLAGS) \ - $(CFLAGS) $(gcry_whirlpool_module_LDFLAGS) $(LDFLAGS) -o $@ -am__gdb_module_SOURCES_DIST = gdb/i386/idt.c gdb/i386/machdep.S \ - gdb/i386/signal.c gdb/cstub.c gdb/gdb.c -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_TRUE@am_gdb_module_OBJECTS = gdb/i386/gdb_module-idt.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_TRUE@ gdb/i386/gdb_module-machdep.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_TRUE@ gdb/i386/gdb_module-signal.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_TRUE@ gdb/gdb_module-cstub.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_TRUE@ gdb/gdb_module-gdb.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@am_gdb_module_OBJECTS = gdb/i386/gdb_module-idt.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@ gdb/i386/gdb_module-machdep.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@ gdb/i386/gdb_module-signal.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@ gdb/gdb_module-cstub.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@ gdb/gdb_module-gdb.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_TRUE@am_gdb_module_OBJECTS = gdb/i386/gdb_module-idt.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_TRUE@ gdb/i386/gdb_module-machdep.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_TRUE@ gdb/i386/gdb_module-signal.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_TRUE@ gdb/gdb_module-cstub.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_TRUE@ gdb/gdb_module-gdb.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_TRUE@am_gdb_module_OBJECTS = gdb/i386/gdb_module-idt.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_TRUE@ gdb/i386/gdb_module-machdep.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_TRUE@ gdb/i386/gdb_module-signal.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_TRUE@ gdb/gdb_module-cstub.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_TRUE@ gdb/gdb_module-gdb.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_TRUE@am_gdb_module_OBJECTS = gdb/i386/gdb_module-idt.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_efi_TRUE@ gdb/i386/gdb_module-machdep.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_efi_TRUE@ gdb/i386/gdb_module-signal.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_efi_TRUE@ gdb/gdb_module-cstub.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_efi_TRUE@ gdb/gdb_module-gdb.$(OBJEXT) -@COND_i386_coreboot_TRUE@am_gdb_module_OBJECTS = \ -@COND_i386_coreboot_TRUE@ gdb/i386/gdb_module-idt.$(OBJEXT) \ -@COND_i386_coreboot_TRUE@ gdb/i386/gdb_module-machdep.$(OBJEXT) \ -@COND_i386_coreboot_TRUE@ gdb/i386/gdb_module-signal.$(OBJEXT) \ -@COND_i386_coreboot_TRUE@ gdb/gdb_module-cstub.$(OBJEXT) \ -@COND_i386_coreboot_TRUE@ gdb/gdb_module-gdb.$(OBJEXT) -nodist_gdb_module_OBJECTS = -gdb_module_OBJECTS = $(am_gdb_module_OBJECTS) \ - $(nodist_gdb_module_OBJECTS) -gdb_module_LINK = $(CCLD) $(gdb_module_CFLAGS) $(CFLAGS) \ - $(gdb_module_LDFLAGS) $(LDFLAGS) -o $@ -am_geli_module_OBJECTS = disk/geli_module-geli.$(OBJEXT) -nodist_geli_module_OBJECTS = -geli_module_OBJECTS = $(am_geli_module_OBJECTS) \ - $(nodist_geli_module_OBJECTS) -geli_module_LINK = $(CCLD) $(geli_module_CFLAGS) $(CFLAGS) \ - $(geli_module_LDFLAGS) $(LDFLAGS) -o $@ -am_gettext_module_OBJECTS = gettext/gettext_module-gettext.$(OBJEXT) -nodist_gettext_module_OBJECTS = -gettext_module_OBJECTS = $(am_gettext_module_OBJECTS) \ - $(nodist_gettext_module_OBJECTS) -gettext_module_LINK = $(CCLD) $(gettext_module_CFLAGS) $(CFLAGS) \ - $(gettext_module_LDFLAGS) $(LDFLAGS) -o $@ -am_gfxmenu_module_OBJECTS = gfxmenu/gfxmenu_module-gfxmenu.$(OBJEXT) \ - gfxmenu/gfxmenu_module-view.$(OBJEXT) \ - gfxmenu/gfxmenu_module-font.$(OBJEXT) \ - gfxmenu/gfxmenu_module-icon_manager.$(OBJEXT) \ - gfxmenu/gfxmenu_module-theme_loader.$(OBJEXT) \ - gfxmenu/gfxmenu_module-widget-box.$(OBJEXT) \ - gfxmenu/gfxmenu_module-gui_canvas.$(OBJEXT) \ - gfxmenu/gfxmenu_module-gui_circular_progress.$(OBJEXT) \ - gfxmenu/gfxmenu_module-gui_box.$(OBJEXT) \ - gfxmenu/gfxmenu_module-gui_label.$(OBJEXT) \ - gfxmenu/gfxmenu_module-gui_list.$(OBJEXT) \ - gfxmenu/gfxmenu_module-gui_image.$(OBJEXT) \ - gfxmenu/gfxmenu_module-gui_progress_bar.$(OBJEXT) \ - gfxmenu/gfxmenu_module-gui_util.$(OBJEXT) \ - gfxmenu/gfxmenu_module-gui_string_util.$(OBJEXT) -nodist_gfxmenu_module_OBJECTS = -gfxmenu_module_OBJECTS = $(am_gfxmenu_module_OBJECTS) \ - $(nodist_gfxmenu_module_OBJECTS) -gfxmenu_module_LINK = $(CCLD) $(gfxmenu_module_CFLAGS) $(CFLAGS) \ - $(gfxmenu_module_LDFLAGS) $(LDFLAGS) -o $@ -am__gfxterm_module_SOURCES_DIST = term/gfxterm.c -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_FALSE@@COND_x86_64_efi_FALSE@@COND_x86_64_xen_TRUE@am_gfxterm_module_OBJECTS = term/gfxterm_module-gfxterm.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_FALSE@@COND_x86_64_efi_TRUE@am_gfxterm_module_OBJECTS = term/gfxterm_module-gfxterm.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_TRUE@am_gfxterm_module_OBJECTS = term/gfxterm_module-gfxterm.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_TRUE@am_gfxterm_module_OBJECTS = term/gfxterm_module-gfxterm.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_TRUE@am_gfxterm_module_OBJECTS = term/gfxterm_module-gfxterm.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_TRUE@am_gfxterm_module_OBJECTS = term/gfxterm_module-gfxterm.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_qemu_mips_TRUE@am_gfxterm_module_OBJECTS = term/gfxterm_module-gfxterm.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_TRUE@am_gfxterm_module_OBJECTS = term/gfxterm_module-gfxterm.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_TRUE@am_gfxterm_module_OBJECTS = term/gfxterm_module-gfxterm.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_TRUE@am_gfxterm_module_OBJECTS = term/gfxterm_module-gfxterm.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_TRUE@am_gfxterm_module_OBJECTS = term/gfxterm_module-gfxterm.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_TRUE@am_gfxterm_module_OBJECTS = term/gfxterm_module-gfxterm.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@am_gfxterm_module_OBJECTS = term/gfxterm_module-gfxterm.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_TRUE@am_gfxterm_module_OBJECTS = term/gfxterm_module-gfxterm.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_TRUE@am_gfxterm_module_OBJECTS = term/gfxterm_module-gfxterm.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_TRUE@am_gfxterm_module_OBJECTS = term/gfxterm_module-gfxterm.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_TRUE@am_gfxterm_module_OBJECTS = term/gfxterm_module-gfxterm.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_TRUE@am_gfxterm_module_OBJECTS = term/gfxterm_module-gfxterm.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_TRUE@am_gfxterm_module_OBJECTS = term/gfxterm_module-gfxterm.$(OBJEXT) -@COND_arm64_efi_TRUE@am_gfxterm_module_OBJECTS = \ -@COND_arm64_efi_TRUE@ term/gfxterm_module-gfxterm.$(OBJEXT) -nodist_gfxterm_module_OBJECTS = -gfxterm_module_OBJECTS = $(am_gfxterm_module_OBJECTS) \ - $(nodist_gfxterm_module_OBJECTS) -gfxterm_module_LINK = $(CCLD) $(gfxterm_module_CFLAGS) $(CFLAGS) \ - $(gfxterm_module_LDFLAGS) $(LDFLAGS) -o $@ -am_gfxterm_background_module_OBJECTS = \ - term/gfxterm_background_module-gfxterm_background.$(OBJEXT) -nodist_gfxterm_background_module_OBJECTS = -gfxterm_background_module_OBJECTS = \ - $(am_gfxterm_background_module_OBJECTS) \ - $(nodist_gfxterm_background_module_OBJECTS) -gfxterm_background_module_LINK = $(CCLD) \ - $(gfxterm_background_module_CFLAGS) $(CFLAGS) \ - $(gfxterm_background_module_LDFLAGS) $(LDFLAGS) -o $@ -am_gfxterm_menu_module_OBJECTS = \ - tests/gfxterm_menu_module-gfxterm_menu.$(OBJEXT) -nodist_gfxterm_menu_module_OBJECTS = -gfxterm_menu_module_OBJECTS = $(am_gfxterm_menu_module_OBJECTS) \ - $(nodist_gfxterm_menu_module_OBJECTS) -gfxterm_menu_module_LINK = $(CCLD) $(gfxterm_menu_module_CFLAGS) \ - $(CFLAGS) $(gfxterm_menu_module_LDFLAGS) $(LDFLAGS) -o $@ -am_gptsync_module_OBJECTS = commands/gptsync_module-gptsync.$(OBJEXT) -nodist_gptsync_module_OBJECTS = -gptsync_module_OBJECTS = $(am_gptsync_module_OBJECTS) \ - $(nodist_gptsync_module_OBJECTS) -gptsync_module_LINK = $(CCLD) $(gptsync_module_CFLAGS) $(CFLAGS) \ - $(gptsync_module_LDFLAGS) $(LDFLAGS) -o $@ -am__grub_emu_SOURCES_DIST = kern/emu/full.c -@COND_emu_TRUE@am_grub_emu_OBJECTS = kern/emu/grub_emu-full.$(OBJEXT) -@COND_emu_TRUE@nodist_grub_emu_OBJECTS = \ -@COND_emu_TRUE@ grub_emu-grub_emu_init.$(OBJEXT) -grub_emu_OBJECTS = $(am_grub_emu_OBJECTS) $(nodist_grub_emu_OBJECTS) -am__DEPENDENCIES_1 = -@COND_emu_TRUE@grub_emu_DEPENDENCIES = kernel.exec$(EXEEXT) \ -@COND_emu_TRUE@ $(MODULE_FILES) lib/gnulib/libgnu.a \ -@COND_emu_TRUE@ $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \ -@COND_emu_TRUE@ $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \ -@COND_emu_TRUE@ $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \ -@COND_emu_TRUE@ $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) -grub_emu_LINK = $(CCLD) $(grub_emu_CFLAGS) $(CFLAGS) \ - $(grub_emu_LDFLAGS) $(LDFLAGS) -o $@ -am__grub_emu_lite_SOURCES_DIST = kern/emu/lite.c -@COND_emu_TRUE@am_grub_emu_lite_OBJECTS = \ -@COND_emu_TRUE@ kern/emu/grub_emu_lite-lite.$(OBJEXT) -@COND_emu_TRUE@nodist_grub_emu_lite_OBJECTS = \ -@COND_emu_TRUE@ grub_emu_lite-symlist.$(OBJEXT) -grub_emu_lite_OBJECTS = $(am_grub_emu_lite_OBJECTS) \ - $(nodist_grub_emu_lite_OBJECTS) -@COND_emu_TRUE@grub_emu_lite_DEPENDENCIES = kernel.exec$(EXEEXT) \ -@COND_emu_TRUE@ lib/gnulib/libgnu.a $(am__DEPENDENCIES_1) \ -@COND_emu_TRUE@ $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \ -@COND_emu_TRUE@ $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \ -@COND_emu_TRUE@ $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \ -@COND_emu_TRUE@ $(am__DEPENDENCIES_1) -grub_emu_lite_LINK = $(CCLD) $(grub_emu_lite_CFLAGS) $(CFLAGS) \ - $(grub_emu_lite_LDFLAGS) $(LDFLAGS) -o $@ -am_gzio_module_OBJECTS = io/gzio_module-gzio.$(OBJEXT) -nodist_gzio_module_OBJECTS = -gzio_module_OBJECTS = $(am_gzio_module_OBJECTS) \ - $(nodist_gzio_module_OBJECTS) -gzio_module_LINK = $(CCLD) $(gzio_module_CFLAGS) $(CFLAGS) \ - $(gzio_module_LDFLAGS) $(LDFLAGS) -o $@ -am__halt_module_SOURCES_DIST = lib/efi/halt.c commands/halt.c \ - lib/dummy/halt.c lib/emu/halt.c commands/acpihalt.c \ - lib/i386/halt.c lib/ieee1275/halt.c commands/i386/pc/halt.c \ - lib/xen/halt.c -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_FALSE@@COND_x86_64_efi_FALSE@@COND_x86_64_xen_TRUE@am_halt_module_OBJECTS = lib/xen/halt_module-halt.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_FALSE@@COND_x86_64_efi_FALSE@@COND_x86_64_xen_TRUE@ commands/halt_module-halt.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_FALSE@@COND_x86_64_efi_TRUE@am_halt_module_OBJECTS = commands/halt_module-acpihalt.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_FALSE@@COND_x86_64_efi_TRUE@ lib/efi/halt_module-halt.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_FALSE@@COND_x86_64_efi_TRUE@ commands/halt_module-halt.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_TRUE@am_halt_module_OBJECTS = lib/ieee1275/halt_module-halt.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_TRUE@ commands/halt_module-halt.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_TRUE@am_halt_module_OBJECTS = lib/efi/halt_module-halt.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_TRUE@ commands/halt_module-halt.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_TRUE@am_halt_module_OBJECTS = lib/efi/halt_module-halt.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_TRUE@ commands/halt_module-halt.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_TRUE@am_halt_module_OBJECTS = lib/ieee1275/halt_module-halt.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_TRUE@ commands/halt_module-halt.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_TRUE@am_halt_module_OBJECTS = commands/halt_module-halt.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_TRUE@am_halt_module_OBJECTS = commands/halt_module-halt.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_TRUE@am_halt_module_OBJECTS = commands/halt_module-halt.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_TRUE@am_halt_module_OBJECTS = lib/efi/halt_module-halt.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_TRUE@ commands/halt_module-halt.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_TRUE@am_halt_module_OBJECTS = lib/xen/halt_module-halt.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_TRUE@ commands/halt_module-halt.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_TRUE@am_halt_module_OBJECTS = lib/xen/halt_module-halt.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_TRUE@ commands/halt_module-halt.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_TRUE@am_halt_module_OBJECTS = lib/i386/halt_module-halt.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_TRUE@ commands/halt_module-halt.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@am_halt_module_OBJECTS = commands/i386/pc/halt_module-halt.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@ commands/halt_module-acpihalt.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_TRUE@am_halt_module_OBJECTS = commands/halt_module-acpihalt.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_TRUE@ lib/i386/halt_module-halt.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_TRUE@ commands/halt_module-halt.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_TRUE@am_halt_module_OBJECTS = lib/ieee1275/halt_module-halt.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_TRUE@ commands/halt_module-halt.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_TRUE@am_halt_module_OBJECTS = commands/halt_module-acpihalt.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_TRUE@ lib/efi/halt_module-halt.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_TRUE@ commands/halt_module-halt.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_TRUE@am_halt_module_OBJECTS = commands/halt_module-acpihalt.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_TRUE@ lib/i386/halt_module-halt.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_TRUE@ commands/halt_module-halt.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_TRUE@am_halt_module_OBJECTS = lib/emu/halt_module-halt.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_TRUE@ commands/halt_module-halt.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_TRUE@am_halt_module_OBJECTS = lib/dummy/halt_module-halt.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_TRUE@ commands/halt_module-halt.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_TRUE@am_halt_module_OBJECTS = lib/efi/halt_module-halt.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_TRUE@ commands/halt_module-halt.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_TRUE@am_halt_module_OBJECTS = lib/dummy/halt_module-halt.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_TRUE@ commands/halt_module-halt.$(OBJEXT) -@COND_arm64_efi_TRUE@am_halt_module_OBJECTS = \ -@COND_arm64_efi_TRUE@ lib/efi/halt_module-halt.$(OBJEXT) \ -@COND_arm64_efi_TRUE@ commands/halt_module-halt.$(OBJEXT) -nodist_halt_module_OBJECTS = -halt_module_OBJECTS = $(am_halt_module_OBJECTS) \ - $(nodist_halt_module_OBJECTS) -halt_module_LINK = $(CCLD) $(halt_module_CFLAGS) $(CFLAGS) \ - $(halt_module_LDFLAGS) $(LDFLAGS) -o $@ -am_hashsum_module_OBJECTS = commands/hashsum_module-hashsum.$(OBJEXT) -nodist_hashsum_module_OBJECTS = -hashsum_module_OBJECTS = $(am_hashsum_module_OBJECTS) \ - $(nodist_hashsum_module_OBJECTS) -hashsum_module_LINK = $(CCLD) $(hashsum_module_CFLAGS) $(CFLAGS) \ - $(hashsum_module_LDFLAGS) $(LDFLAGS) -o $@ -am__hdparm_module_SOURCES_DIST = commands/hdparm.c -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_x86_64_efi_TRUE@am_hdparm_module_OBJECTS = commands/hdparm_module-hdparm.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_TRUE@am_hdparm_module_OBJECTS = commands/hdparm_module-hdparm.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_mips_loongson_TRUE@am_hdparm_module_OBJECTS = commands/hdparm_module-hdparm.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_TRUE@am_hdparm_module_OBJECTS = commands/hdparm_module-hdparm.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@am_hdparm_module_OBJECTS = commands/hdparm_module-hdparm.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_TRUE@am_hdparm_module_OBJECTS = commands/hdparm_module-hdparm.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_TRUE@am_hdparm_module_OBJECTS = commands/hdparm_module-hdparm.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_TRUE@am_hdparm_module_OBJECTS = commands/hdparm_module-hdparm.$(OBJEXT) -@COND_i386_coreboot_TRUE@am_hdparm_module_OBJECTS = commands/hdparm_module-hdparm.$(OBJEXT) -nodist_hdparm_module_OBJECTS = -hdparm_module_OBJECTS = $(am_hdparm_module_OBJECTS) \ - $(nodist_hdparm_module_OBJECTS) -hdparm_module_LINK = $(CCLD) $(hdparm_module_CFLAGS) $(CFLAGS) \ - $(hdparm_module_LDFLAGS) $(LDFLAGS) -o $@ -am_hello_module_OBJECTS = hello/hello_module-hello.$(OBJEXT) -nodist_hello_module_OBJECTS = -hello_module_OBJECTS = $(am_hello_module_OBJECTS) \ - $(nodist_hello_module_OBJECTS) -hello_module_LINK = $(CCLD) $(hello_module_CFLAGS) $(CFLAGS) \ - $(hello_module_LDFLAGS) $(LDFLAGS) -o $@ -am_help_module_OBJECTS = commands/help_module-help.$(OBJEXT) -nodist_help_module_OBJECTS = -help_module_OBJECTS = $(am_help_module_OBJECTS) \ - $(nodist_help_module_OBJECTS) -help_module_LINK = $(CCLD) $(help_module_CFLAGS) $(CFLAGS) \ - $(help_module_LDFLAGS) $(LDFLAGS) -o $@ -am_hexdump_module_OBJECTS = commands/hexdump_module-hexdump.$(OBJEXT) \ - lib/hexdump_module-hexdump.$(OBJEXT) -nodist_hexdump_module_OBJECTS = -hexdump_module_OBJECTS = $(am_hexdump_module_OBJECTS) \ - $(nodist_hexdump_module_OBJECTS) -hexdump_module_LINK = $(CCLD) $(hexdump_module_CFLAGS) $(CFLAGS) \ - $(hexdump_module_LDFLAGS) $(LDFLAGS) -o $@ -am_hfs_module_OBJECTS = fs/hfs_module-hfs.$(OBJEXT) -nodist_hfs_module_OBJECTS = -hfs_module_OBJECTS = $(am_hfs_module_OBJECTS) \ - $(nodist_hfs_module_OBJECTS) -hfs_module_LINK = $(CCLD) $(hfs_module_CFLAGS) $(CFLAGS) \ - $(hfs_module_LDFLAGS) $(LDFLAGS) -o $@ -am_hfsplus_module_OBJECTS = fs/hfsplus_module-hfsplus.$(OBJEXT) -nodist_hfsplus_module_OBJECTS = -hfsplus_module_OBJECTS = $(am_hfsplus_module_OBJECTS) \ - $(nodist_hfsplus_module_OBJECTS) -hfsplus_module_LINK = $(CCLD) $(hfsplus_module_CFLAGS) $(CFLAGS) \ - $(hfsplus_module_LDFLAGS) $(LDFLAGS) -o $@ -am_hfspluscomp_module_OBJECTS = \ - fs/hfspluscomp_module-hfspluscomp.$(OBJEXT) -nodist_hfspluscomp_module_OBJECTS = -hfspluscomp_module_OBJECTS = $(am_hfspluscomp_module_OBJECTS) \ - $(nodist_hfspluscomp_module_OBJECTS) -hfspluscomp_module_LINK = $(CCLD) $(hfspluscomp_module_CFLAGS) \ - $(CFLAGS) $(hfspluscomp_module_LDFLAGS) $(LDFLAGS) -o $@ -am_http_module_OBJECTS = net/http_module-http.$(OBJEXT) -nodist_http_module_OBJECTS = -http_module_OBJECTS = $(am_http_module_OBJECTS) \ - $(nodist_http_module_OBJECTS) -http_module_LINK = $(CCLD) $(http_module_CFLAGS) $(CFLAGS) \ - $(http_module_LDFLAGS) $(LDFLAGS) -o $@ -am__ieee1275_fb_module_SOURCES_DIST = video/ieee1275.c -@COND_powerpc_ieee1275_TRUE@am_ieee1275_fb_module_OBJECTS = video/ieee1275_fb_module-ieee1275.$(OBJEXT) -nodist_ieee1275_fb_module_OBJECTS = -ieee1275_fb_module_OBJECTS = $(am_ieee1275_fb_module_OBJECTS) \ - $(nodist_ieee1275_fb_module_OBJECTS) -ieee1275_fb_module_LINK = $(CCLD) $(ieee1275_fb_module_CFLAGS) \ - $(CFLAGS) $(ieee1275_fb_module_LDFLAGS) $(LDFLAGS) -o $@ -am__iorw_module_SOURCES_DIST = commands/iorw.c -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_x86_64_efi_TRUE@am_iorw_module_OBJECTS = commands/iorw_module-iorw.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_TRUE@am_iorw_module_OBJECTS = commands/iorw_module-iorw.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@am_iorw_module_OBJECTS = commands/iorw_module-iorw.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_TRUE@am_iorw_module_OBJECTS = commands/iorw_module-iorw.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_TRUE@am_iorw_module_OBJECTS = commands/iorw_module-iorw.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_TRUE@am_iorw_module_OBJECTS = commands/iorw_module-iorw.$(OBJEXT) -@COND_i386_coreboot_TRUE@am_iorw_module_OBJECTS = \ -@COND_i386_coreboot_TRUE@ commands/iorw_module-iorw.$(OBJEXT) -nodist_iorw_module_OBJECTS = -iorw_module_OBJECTS = $(am_iorw_module_OBJECTS) \ - $(nodist_iorw_module_OBJECTS) -iorw_module_LINK = $(CCLD) $(iorw_module_CFLAGS) $(CFLAGS) \ - $(iorw_module_LDFLAGS) $(LDFLAGS) -o $@ -am_iso9660_module_OBJECTS = fs/iso9660_module-iso9660.$(OBJEXT) -nodist_iso9660_module_OBJECTS = -iso9660_module_OBJECTS = $(am_iso9660_module_OBJECTS) \ - $(nodist_iso9660_module_OBJECTS) -iso9660_module_LINK = $(CCLD) $(iso9660_module_CFLAGS) $(CFLAGS) \ - $(iso9660_module_LDFLAGS) $(LDFLAGS) -o $@ -am_jfs_module_OBJECTS = fs/jfs_module-jfs.$(OBJEXT) -nodist_jfs_module_OBJECTS = -jfs_module_OBJECTS = $(am_jfs_module_OBJECTS) \ - $(nodist_jfs_module_OBJECTS) -jfs_module_LINK = $(CCLD) $(jfs_module_CFLAGS) $(CFLAGS) \ - $(jfs_module_LDFLAGS) $(LDFLAGS) -o $@ -am_jpeg_module_OBJECTS = video/readers/jpeg_module-jpeg.$(OBJEXT) -nodist_jpeg_module_OBJECTS = -jpeg_module_OBJECTS = $(am_jpeg_module_OBJECTS) \ - $(nodist_jpeg_module_OBJECTS) -jpeg_module_LINK = $(CCLD) $(jpeg_module_CFLAGS) $(CFLAGS) \ - $(jpeg_module_LDFLAGS) $(LDFLAGS) -o $@ -am__kernel_exec_SOURCES_DIST = kern/arm64/efi/startup.S \ - kern/arm64/efi/init.c kern/efi/fdt.c kern/arm64/cache.c \ - kern/arm64/cache_flush.S kern/arm64/dl.c \ - kern/arm64/dl_helper.c disk/efi/efidisk.c kern/efi/efi.c \ - kern/efi/init.c kern/efi/mm.c term/efi/console.c kern/acpi.c \ - kern/efi/acpi.c kern/compiler-rt.c kern/mm.c kern/time.c \ - kern/generic/millisleep.c kern/command.c kern/corecmd.c \ - kern/device.c kern/disk.c kern/dl.c kern/env.c kern/err.c \ - kern/file.c kern/fs.c kern/list.c kern/main.c kern/misc.c \ - kern/parser.c kern/partition.c kern/rescue_parser.c \ - kern/rescue_reader.c kern/term.c kern/arm/startup.S \ - kern/arm/coreboot/init.c kern/arm/coreboot/timer.c \ - kern/arm/coreboot/coreboot.S lib/fdt.c bus/fdt.c term/ps2.c \ - term/arm/pl050.c term/arm/cros.c term/arm/cros_ec.c \ - bus/spi/rk3288_spi.c commands/keylayouts.c \ - kern/arm/coreboot/dma.c kern/arm/coreboot/cbtable.c \ - video/coreboot/cbfb.c kern/coreboot/mmap.c \ - kern/coreboot/cbtable.c term/gfxterm.c font/font.c \ - font/font_cmd.c io/bufio.c video/fb/fbblit.c video/fb/fbfill.c \ - video/fb/fbutil.c video/fb/video_fb.c video/video.c \ - kern/arm/dl.c kern/arm/dl_helper.c kern/arm/cache_armv6.S \ - kern/arm/cache_armv7.S kern/arm/cache.c kern/arm/compiler-rt.S \ - lib/division.c kern/arm/efi/startup.S kern/arm/efi/init.c \ - kern/arm/uboot/init.c kern/arm/uboot/uboot.S \ - disk/uboot/ubootdisk.c kern/uboot/uboot.c kern/uboot/init.c \ - kern/uboot/hw.c term/uboot/console.c term/terminfo.c \ - term/tparm.c commands/extcmd.c lib/arg.c disk/host.c \ - kern/emu/cache_s.S kern/emu/hostdisk.c osdep/unix/hostdisk.c \ - osdep/exec.c osdep/devmapper/hostdisk.c osdep/hostdisk.c \ - kern/emu/hostfs.c kern/emu/main.c kern/emu/argp_common.c \ - kern/emu/misc.c kern/emu/mm.c kern/emu/time.c kern/emu/cache.c \ - osdep/emuconsole.c osdep/dl.c osdep/sleep.c osdep/init.c \ - osdep/emunet.c osdep/cputime.c kern/i386/coreboot/startup.S \ - kern/i386/coreboot/init.c kern/i386/pc/acpi.c \ - kern/i386/tsc_pmtimer.c kern/i386/coreboot/cbtable.c \ - term/i386/pc/vga_text.c kern/i386/dl.c kern/i386/tsc.c \ - kern/i386/tsc_pit.c kern/i386/efi/startup.S \ - kern/i386/efi/tsc.c kern/i386/efi/init.c bus/pci.c \ - kern/i386/ieee1275/startup.S disk/ieee1275/ofdisk.c \ - kern/ieee1275/cmain.c kern/ieee1275/ieee1275.c \ - kern/ieee1275/mmap.c kern/ieee1275/openfw.c \ - term/ieee1275/console.c kern/ieee1275/init.c \ - kern/i386/multiboot_mmap.c kern/i386/pc/startup.S \ - kern/i386/pc/init.c kern/i386/pc/mmap.c term/i386/pc/console.c \ - kern/i386/qemu/startup.S kern/i386/qemu/init.c kern/vga_init.c \ - kern/i386/qemu/mmap.c kern/i386/xen/startup.S \ - kern/i386/xen/hypercall.S kern/i386/xen/tsc.c kern/xen/init.c \ - term/xen/console.c disk/xen/xendisk.c commands/boot.c \ - kern/i386/xen/startup_pvh.S kern/i386/xen/pvh.c \ - kern/ia64/efi/startup.S kern/ia64/efi/init.c kern/ia64/dl.c \ - kern/ia64/dl_helper.c kern/ia64/cache.c kern/mips/startup.S \ - kern/mips/arc/init.c term/arc/console.c disk/arc/arcdisk.c \ - kern/generic/rtc_get_time_ms.c kern/mips/cache.S \ - kern/mips/dl.c kern/mips/init.c term/ns8250.c bus/bonito.c \ - bus/cs5536.c kern/mips/loongson/init.c term/at_keyboard.c \ - term/serial.c video/sm712.c video/sis315pro.c \ - video/radeon_fuloong2e.c video/radeon_yeeloong3a.c \ - kern/mips/qemu_mips/init.c kern/powerpc/ieee1275/startup.S \ - kern/powerpc/cache.S kern/powerpc/dl.c \ - kern/powerpc/compiler-rt.S kern/riscv/efi/startup.S \ - kern/riscv/efi/init.c kern/riscv/cache.c \ - kern/riscv/cache_flush.S kern/riscv/dl.c \ - kern/sparc64/ieee1275/crt0.S kern/sparc64/cache.S \ - kern/sparc64/dl.c kern/sparc64/ieee1275/ieee1275.c \ - disk/ieee1275/obdisk.c kern/x86_64/efi/startup.S \ - kern/x86_64/efi/callwrap.S kern/x86_64/dl.c \ - kern/x86_64/xen/startup.S kern/x86_64/xen/hypercall.S -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_FALSE@@COND_x86_64_efi_FALSE@@COND_x86_64_xen_TRUE@am_kernel_exec_OBJECTS = kern/x86_64/xen/kernel_exec-startup.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_FALSE@@COND_x86_64_efi_FALSE@@COND_x86_64_xen_TRUE@ kern/x86_64/kernel_exec-dl.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_FALSE@@COND_x86_64_efi_FALSE@@COND_x86_64_xen_TRUE@ kern/x86_64/xen/kernel_exec-hypercall.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_FALSE@@COND_x86_64_efi_FALSE@@COND_x86_64_xen_TRUE@ kern/i386/kernel_exec-tsc.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_FALSE@@COND_x86_64_efi_FALSE@@COND_x86_64_xen_TRUE@ kern/i386/xen/kernel_exec-tsc.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_FALSE@@COND_x86_64_efi_FALSE@@COND_x86_64_xen_TRUE@ kern/xen/kernel_exec-init.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_FALSE@@COND_x86_64_efi_FALSE@@COND_x86_64_xen_TRUE@ term/xen/kernel_exec-console.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_FALSE@@COND_x86_64_efi_FALSE@@COND_x86_64_xen_TRUE@ disk/xen/kernel_exec-xendisk.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_FALSE@@COND_x86_64_efi_FALSE@@COND_x86_64_xen_TRUE@ commands/kernel_exec-boot.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_FALSE@@COND_x86_64_efi_FALSE@@COND_x86_64_xen_TRUE@ term/kernel_exec-terminfo.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_FALSE@@COND_x86_64_efi_FALSE@@COND_x86_64_xen_TRUE@ term/kernel_exec-tparm.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_FALSE@@COND_x86_64_efi_FALSE@@COND_x86_64_xen_TRUE@ commands/kernel_exec-extcmd.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_FALSE@@COND_x86_64_efi_FALSE@@COND_x86_64_xen_TRUE@ lib/kernel_exec-arg.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_FALSE@@COND_x86_64_efi_FALSE@@COND_x86_64_xen_TRUE@ kern/kernel_exec-compiler-rt.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_FALSE@@COND_x86_64_efi_FALSE@@COND_x86_64_xen_TRUE@ kern/kernel_exec-mm.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_FALSE@@COND_x86_64_efi_FALSE@@COND_x86_64_xen_TRUE@ kern/kernel_exec-time.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_FALSE@@COND_x86_64_efi_FALSE@@COND_x86_64_xen_TRUE@ kern/generic/kernel_exec-millisleep.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_FALSE@@COND_x86_64_efi_FALSE@@COND_x86_64_xen_TRUE@ kern/kernel_exec-command.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_FALSE@@COND_x86_64_efi_FALSE@@COND_x86_64_xen_TRUE@ kern/kernel_exec-corecmd.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_FALSE@@COND_x86_64_efi_FALSE@@COND_x86_64_xen_TRUE@ kern/kernel_exec-device.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_FALSE@@COND_x86_64_efi_FALSE@@COND_x86_64_xen_TRUE@ kern/kernel_exec-disk.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_FALSE@@COND_x86_64_efi_FALSE@@COND_x86_64_xen_TRUE@ kern/kernel_exec-dl.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_FALSE@@COND_x86_64_efi_FALSE@@COND_x86_64_xen_TRUE@ kern/kernel_exec-env.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_FALSE@@COND_x86_64_efi_FALSE@@COND_x86_64_xen_TRUE@ kern/kernel_exec-err.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_FALSE@@COND_x86_64_efi_FALSE@@COND_x86_64_xen_TRUE@ kern/kernel_exec-file.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_FALSE@@COND_x86_64_efi_FALSE@@COND_x86_64_xen_TRUE@ kern/kernel_exec-fs.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_FALSE@@COND_x86_64_efi_FALSE@@COND_x86_64_xen_TRUE@ kern/kernel_exec-list.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_FALSE@@COND_x86_64_efi_FALSE@@COND_x86_64_xen_TRUE@ kern/kernel_exec-main.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_FALSE@@COND_x86_64_efi_FALSE@@COND_x86_64_xen_TRUE@ kern/kernel_exec-misc.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_FALSE@@COND_x86_64_efi_FALSE@@COND_x86_64_xen_TRUE@ kern/kernel_exec-parser.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_FALSE@@COND_x86_64_efi_FALSE@@COND_x86_64_xen_TRUE@ kern/kernel_exec-partition.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_FALSE@@COND_x86_64_efi_FALSE@@COND_x86_64_xen_TRUE@ kern/kernel_exec-rescue_parser.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_FALSE@@COND_x86_64_efi_FALSE@@COND_x86_64_xen_TRUE@ kern/kernel_exec-rescue_reader.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_FALSE@@COND_x86_64_efi_FALSE@@COND_x86_64_xen_TRUE@ kern/kernel_exec-term.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_FALSE@@COND_x86_64_efi_TRUE@am_kernel_exec_OBJECTS = kern/x86_64/efi/kernel_exec-startup.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_FALSE@@COND_x86_64_efi_TRUE@ kern/i386/efi/kernel_exec-tsc.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_FALSE@@COND_x86_64_efi_TRUE@ kern/i386/kernel_exec-tsc_pmtimer.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_FALSE@@COND_x86_64_efi_TRUE@ kern/x86_64/efi/kernel_exec-callwrap.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_FALSE@@COND_x86_64_efi_TRUE@ kern/i386/efi/kernel_exec-init.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_FALSE@@COND_x86_64_efi_TRUE@ bus/kernel_exec-pci.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_FALSE@@COND_x86_64_efi_TRUE@ kern/x86_64/kernel_exec-dl.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_FALSE@@COND_x86_64_efi_TRUE@ kern/i386/kernel_exec-tsc.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_FALSE@@COND_x86_64_efi_TRUE@ kern/i386/kernel_exec-tsc_pit.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_FALSE@@COND_x86_64_efi_TRUE@ disk/efi/kernel_exec-efidisk.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_FALSE@@COND_x86_64_efi_TRUE@ kern/efi/kernel_exec-efi.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_FALSE@@COND_x86_64_efi_TRUE@ kern/efi/kernel_exec-init.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_FALSE@@COND_x86_64_efi_TRUE@ kern/efi/kernel_exec-mm.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_FALSE@@COND_x86_64_efi_TRUE@ term/efi/kernel_exec-console.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_FALSE@@COND_x86_64_efi_TRUE@ kern/kernel_exec-acpi.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_FALSE@@COND_x86_64_efi_TRUE@ kern/efi/kernel_exec-acpi.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_FALSE@@COND_x86_64_efi_TRUE@ kern/kernel_exec-compiler-rt.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_FALSE@@COND_x86_64_efi_TRUE@ kern/kernel_exec-mm.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_FALSE@@COND_x86_64_efi_TRUE@ kern/kernel_exec-time.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_FALSE@@COND_x86_64_efi_TRUE@ kern/generic/kernel_exec-millisleep.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_FALSE@@COND_x86_64_efi_TRUE@ kern/kernel_exec-command.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_FALSE@@COND_x86_64_efi_TRUE@ kern/kernel_exec-corecmd.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_FALSE@@COND_x86_64_efi_TRUE@ kern/kernel_exec-device.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_FALSE@@COND_x86_64_efi_TRUE@ kern/kernel_exec-disk.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_FALSE@@COND_x86_64_efi_TRUE@ kern/kernel_exec-dl.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_FALSE@@COND_x86_64_efi_TRUE@ kern/kernel_exec-env.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_FALSE@@COND_x86_64_efi_TRUE@ kern/kernel_exec-err.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_FALSE@@COND_x86_64_efi_TRUE@ kern/kernel_exec-file.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_FALSE@@COND_x86_64_efi_TRUE@ kern/kernel_exec-fs.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_FALSE@@COND_x86_64_efi_TRUE@ kern/kernel_exec-list.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_FALSE@@COND_x86_64_efi_TRUE@ kern/kernel_exec-main.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_FALSE@@COND_x86_64_efi_TRUE@ kern/kernel_exec-misc.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_FALSE@@COND_x86_64_efi_TRUE@ kern/kernel_exec-parser.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_FALSE@@COND_x86_64_efi_TRUE@ kern/kernel_exec-partition.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_FALSE@@COND_x86_64_efi_TRUE@ kern/kernel_exec-rescue_parser.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_FALSE@@COND_x86_64_efi_TRUE@ kern/kernel_exec-rescue_reader.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_FALSE@@COND_x86_64_efi_TRUE@ kern/kernel_exec-term.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_TRUE@am_kernel_exec_OBJECTS = kern/sparc64/ieee1275/kernel_exec-crt0.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_TRUE@ kern/sparc64/kernel_exec-cache.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_TRUE@ kern/sparc64/kernel_exec-dl.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_TRUE@ kern/sparc64/ieee1275/kernel_exec-ieee1275.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_TRUE@ disk/ieee1275/kernel_exec-obdisk.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_TRUE@ disk/ieee1275/kernel_exec-ofdisk.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_TRUE@ kern/ieee1275/kernel_exec-cmain.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_TRUE@ kern/ieee1275/kernel_exec-ieee1275.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_TRUE@ kern/ieee1275/kernel_exec-mmap.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_TRUE@ kern/ieee1275/kernel_exec-openfw.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_TRUE@ term/ieee1275/kernel_exec-console.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_TRUE@ kern/ieee1275/kernel_exec-init.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_TRUE@ term/kernel_exec-terminfo.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_TRUE@ term/kernel_exec-tparm.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_TRUE@ commands/kernel_exec-extcmd.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_TRUE@ lib/kernel_exec-arg.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_TRUE@ kern/kernel_exec-compiler-rt.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_TRUE@ kern/kernel_exec-mm.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_TRUE@ kern/kernel_exec-time.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_TRUE@ kern/generic/kernel_exec-millisleep.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_TRUE@ kern/kernel_exec-command.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_TRUE@ kern/kernel_exec-corecmd.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_TRUE@ kern/kernel_exec-device.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_TRUE@ kern/kernel_exec-disk.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_TRUE@ kern/kernel_exec-dl.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_TRUE@ kern/kernel_exec-env.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_TRUE@ kern/kernel_exec-err.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_TRUE@ kern/kernel_exec-file.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_TRUE@ kern/kernel_exec-fs.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_TRUE@ kern/kernel_exec-list.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_TRUE@ kern/kernel_exec-main.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_TRUE@ kern/kernel_exec-misc.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_TRUE@ kern/kernel_exec-parser.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_TRUE@ kern/kernel_exec-partition.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_TRUE@ kern/kernel_exec-rescue_parser.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_TRUE@ kern/kernel_exec-rescue_reader.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_TRUE@ kern/kernel_exec-term.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_TRUE@am_kernel_exec_OBJECTS = kern/riscv/efi/kernel_exec-startup.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_TRUE@ kern/riscv/efi/kernel_exec-init.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_TRUE@ kern/efi/kernel_exec-fdt.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_TRUE@ kern/riscv/kernel_exec-cache.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_TRUE@ kern/riscv/kernel_exec-cache_flush.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_TRUE@ kern/riscv/kernel_exec-dl.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_TRUE@ disk/efi/kernel_exec-efidisk.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_TRUE@ kern/efi/kernel_exec-efi.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_TRUE@ kern/efi/kernel_exec-init.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_TRUE@ kern/efi/kernel_exec-mm.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_TRUE@ term/efi/kernel_exec-console.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_TRUE@ kern/kernel_exec-acpi.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_TRUE@ kern/efi/kernel_exec-acpi.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_TRUE@ kern/kernel_exec-compiler-rt.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_TRUE@ kern/kernel_exec-mm.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_TRUE@ kern/kernel_exec-time.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_TRUE@ kern/generic/kernel_exec-millisleep.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_TRUE@ kern/kernel_exec-command.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_TRUE@ kern/kernel_exec-corecmd.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_TRUE@ kern/kernel_exec-device.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_TRUE@ kern/kernel_exec-disk.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_TRUE@ kern/kernel_exec-dl.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_TRUE@ kern/kernel_exec-env.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_TRUE@ kern/kernel_exec-err.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_TRUE@ kern/kernel_exec-file.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_TRUE@ kern/kernel_exec-fs.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_TRUE@ kern/kernel_exec-list.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_TRUE@ kern/kernel_exec-main.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_TRUE@ kern/kernel_exec-misc.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_TRUE@ kern/kernel_exec-parser.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_TRUE@ kern/kernel_exec-partition.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_TRUE@ kern/kernel_exec-rescue_parser.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_TRUE@ kern/kernel_exec-rescue_reader.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_TRUE@ kern/kernel_exec-term.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_TRUE@am_kernel_exec_OBJECTS = kern/riscv/efi/kernel_exec-startup.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_TRUE@ kern/riscv/efi/kernel_exec-init.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_TRUE@ kern/efi/kernel_exec-fdt.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_TRUE@ kern/riscv/kernel_exec-cache.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_TRUE@ kern/riscv/kernel_exec-cache_flush.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_TRUE@ kern/riscv/kernel_exec-dl.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_TRUE@ lib/kernel_exec-division.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_TRUE@ disk/efi/kernel_exec-efidisk.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_TRUE@ kern/efi/kernel_exec-efi.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_TRUE@ kern/efi/kernel_exec-init.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_TRUE@ kern/efi/kernel_exec-mm.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_TRUE@ term/efi/kernel_exec-console.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_TRUE@ kern/kernel_exec-acpi.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_TRUE@ kern/efi/kernel_exec-acpi.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_TRUE@ kern/kernel_exec-compiler-rt.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_TRUE@ kern/kernel_exec-mm.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_TRUE@ kern/kernel_exec-time.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_TRUE@ kern/generic/kernel_exec-millisleep.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_TRUE@ kern/kernel_exec-command.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_TRUE@ kern/kernel_exec-corecmd.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_TRUE@ kern/kernel_exec-device.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_TRUE@ kern/kernel_exec-disk.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_TRUE@ kern/kernel_exec-dl.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_TRUE@ kern/kernel_exec-env.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_TRUE@ kern/kernel_exec-err.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_TRUE@ kern/kernel_exec-file.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_TRUE@ kern/kernel_exec-fs.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_TRUE@ kern/kernel_exec-list.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_TRUE@ kern/kernel_exec-main.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_TRUE@ kern/kernel_exec-misc.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_TRUE@ kern/kernel_exec-parser.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_TRUE@ kern/kernel_exec-partition.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_TRUE@ kern/kernel_exec-rescue_parser.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_TRUE@ kern/kernel_exec-rescue_reader.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_TRUE@ kern/kernel_exec-term.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_TRUE@am_kernel_exec_OBJECTS = kern/powerpc/ieee1275/kernel_exec-startup.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_TRUE@ kern/powerpc/kernel_exec-cache.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_TRUE@ kern/powerpc/kernel_exec-dl.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_TRUE@ kern/powerpc/kernel_exec-compiler-rt.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_TRUE@ disk/ieee1275/kernel_exec-ofdisk.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_TRUE@ kern/ieee1275/kernel_exec-cmain.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_TRUE@ kern/ieee1275/kernel_exec-ieee1275.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_TRUE@ kern/ieee1275/kernel_exec-mmap.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_TRUE@ kern/ieee1275/kernel_exec-openfw.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_TRUE@ term/ieee1275/kernel_exec-console.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_TRUE@ kern/ieee1275/kernel_exec-init.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_TRUE@ term/kernel_exec-terminfo.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_TRUE@ term/kernel_exec-tparm.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_TRUE@ commands/kernel_exec-extcmd.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_TRUE@ lib/kernel_exec-arg.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_TRUE@ kern/kernel_exec-compiler-rt.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_TRUE@ kern/kernel_exec-mm.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_TRUE@ kern/kernel_exec-time.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_TRUE@ kern/generic/kernel_exec-millisleep.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_TRUE@ kern/kernel_exec-command.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_TRUE@ kern/kernel_exec-corecmd.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_TRUE@ kern/kernel_exec-device.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_TRUE@ kern/kernel_exec-disk.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_TRUE@ kern/kernel_exec-dl.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_TRUE@ kern/kernel_exec-env.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_TRUE@ kern/kernel_exec-err.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_TRUE@ kern/kernel_exec-file.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_TRUE@ kern/kernel_exec-fs.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_TRUE@ kern/kernel_exec-list.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_TRUE@ kern/kernel_exec-main.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_TRUE@ kern/kernel_exec-misc.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_TRUE@ kern/kernel_exec-parser.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_TRUE@ kern/kernel_exec-partition.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_TRUE@ kern/kernel_exec-rescue_parser.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_TRUE@ kern/kernel_exec-rescue_reader.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_TRUE@ kern/kernel_exec-term.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_TRUE@am_kernel_exec_OBJECTS = kern/mips/kernel_exec-startup.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_TRUE@ kern/mips/qemu_mips/kernel_exec-init.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_TRUE@ term/kernel_exec-ns8250.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_TRUE@ term/kernel_exec-serial.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_TRUE@ term/kernel_exec-at_keyboard.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_TRUE@ term/kernel_exec-ps2.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_TRUE@ commands/kernel_exec-boot.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_TRUE@ commands/kernel_exec-keylayouts.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_TRUE@ term/i386/pc/kernel_exec-vga_text.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_TRUE@ kern/kernel_exec-vga_init.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_TRUE@ kern/generic/kernel_exec-rtc_get_time_ms.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_TRUE@ kern/mips/kernel_exec-cache.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_TRUE@ kern/mips/kernel_exec-dl.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_TRUE@ kern/mips/kernel_exec-init.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_TRUE@ term/kernel_exec-terminfo.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_TRUE@ term/kernel_exec-tparm.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_TRUE@ commands/kernel_exec-extcmd.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_TRUE@ lib/kernel_exec-arg.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_TRUE@ kern/kernel_exec-compiler-rt.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_TRUE@ kern/kernel_exec-mm.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_TRUE@ kern/kernel_exec-time.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_TRUE@ kern/generic/kernel_exec-millisleep.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_TRUE@ kern/kernel_exec-command.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_TRUE@ kern/kernel_exec-corecmd.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_TRUE@ kern/kernel_exec-device.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_TRUE@ kern/kernel_exec-disk.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_TRUE@ kern/kernel_exec-dl.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_TRUE@ kern/kernel_exec-env.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_TRUE@ kern/kernel_exec-err.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_TRUE@ kern/kernel_exec-file.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_TRUE@ kern/kernel_exec-fs.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_TRUE@ kern/kernel_exec-list.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_TRUE@ kern/kernel_exec-main.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_TRUE@ kern/kernel_exec-misc.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_TRUE@ kern/kernel_exec-parser.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_TRUE@ kern/kernel_exec-partition.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_TRUE@ kern/kernel_exec-rescue_parser.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_TRUE@ kern/kernel_exec-rescue_reader.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_TRUE@ kern/kernel_exec-term.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_TRUE@am_kernel_exec_OBJECTS = kern/mips/kernel_exec-startup.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_TRUE@ term/kernel_exec-ns8250.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_TRUE@ bus/kernel_exec-bonito.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_TRUE@ bus/kernel_exec-cs5536.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_TRUE@ bus/kernel_exec-pci.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_TRUE@ kern/mips/loongson/kernel_exec-init.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_TRUE@ term/kernel_exec-at_keyboard.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_TRUE@ term/kernel_exec-ps2.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_TRUE@ commands/kernel_exec-boot.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_TRUE@ term/kernel_exec-serial.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_TRUE@ video/kernel_exec-sm712.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_TRUE@ video/kernel_exec-sis315pro.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_TRUE@ video/kernel_exec-radeon_fuloong2e.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_TRUE@ video/kernel_exec-radeon_yeeloong3a.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_TRUE@ commands/kernel_exec-keylayouts.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_TRUE@ term/kernel_exec-gfxterm.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_TRUE@ font/kernel_exec-font.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_TRUE@ font/kernel_exec-font_cmd.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_TRUE@ io/kernel_exec-bufio.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_TRUE@ video/fb/kernel_exec-fbblit.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_TRUE@ video/fb/kernel_exec-fbfill.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_TRUE@ video/fb/kernel_exec-fbutil.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_TRUE@ video/fb/kernel_exec-video_fb.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_TRUE@ video/kernel_exec-video.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_TRUE@ kern/generic/kernel_exec-rtc_get_time_ms.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_TRUE@ kern/mips/kernel_exec-cache.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_TRUE@ kern/mips/kernel_exec-dl.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_TRUE@ kern/mips/kernel_exec-init.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_TRUE@ term/kernel_exec-terminfo.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_TRUE@ term/kernel_exec-tparm.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_TRUE@ commands/kernel_exec-extcmd.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_TRUE@ lib/kernel_exec-arg.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_TRUE@ kern/kernel_exec-compiler-rt.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_TRUE@ kern/kernel_exec-mm.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_TRUE@ kern/kernel_exec-time.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_TRUE@ kern/generic/kernel_exec-millisleep.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_TRUE@ kern/kernel_exec-command.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_TRUE@ kern/kernel_exec-corecmd.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_TRUE@ kern/kernel_exec-device.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_TRUE@ kern/kernel_exec-disk.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_TRUE@ kern/kernel_exec-dl.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_TRUE@ kern/kernel_exec-env.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_TRUE@ kern/kernel_exec-err.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_TRUE@ kern/kernel_exec-file.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_TRUE@ kern/kernel_exec-fs.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_TRUE@ kern/kernel_exec-list.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_TRUE@ kern/kernel_exec-main.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_TRUE@ kern/kernel_exec-misc.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_TRUE@ kern/kernel_exec-parser.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_TRUE@ kern/kernel_exec-partition.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_TRUE@ kern/kernel_exec-rescue_parser.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_TRUE@ kern/kernel_exec-rescue_reader.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_TRUE@ kern/kernel_exec-term.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_TRUE@am_kernel_exec_OBJECTS = kern/mips/kernel_exec-startup.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_TRUE@ kern/mips/arc/kernel_exec-init.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_TRUE@ term/arc/kernel_exec-console.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_TRUE@ disk/arc/kernel_exec-arcdisk.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_TRUE@ kern/generic/kernel_exec-rtc_get_time_ms.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_TRUE@ kern/mips/kernel_exec-cache.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_TRUE@ kern/mips/kernel_exec-dl.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_TRUE@ kern/mips/kernel_exec-init.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_TRUE@ term/kernel_exec-terminfo.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_TRUE@ term/kernel_exec-tparm.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_TRUE@ commands/kernel_exec-extcmd.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_TRUE@ lib/kernel_exec-arg.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_TRUE@ kern/kernel_exec-compiler-rt.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_TRUE@ kern/kernel_exec-mm.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_TRUE@ kern/kernel_exec-time.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_TRUE@ kern/generic/kernel_exec-millisleep.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_TRUE@ kern/kernel_exec-command.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_TRUE@ kern/kernel_exec-corecmd.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_TRUE@ kern/kernel_exec-device.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_TRUE@ kern/kernel_exec-disk.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_TRUE@ kern/kernel_exec-dl.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_TRUE@ kern/kernel_exec-env.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_TRUE@ kern/kernel_exec-err.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_TRUE@ kern/kernel_exec-file.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_TRUE@ kern/kernel_exec-fs.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_TRUE@ kern/kernel_exec-list.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_TRUE@ kern/kernel_exec-main.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_TRUE@ kern/kernel_exec-misc.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_TRUE@ kern/kernel_exec-parser.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_TRUE@ kern/kernel_exec-partition.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_TRUE@ kern/kernel_exec-rescue_parser.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_TRUE@ kern/kernel_exec-rescue_reader.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_TRUE@ kern/kernel_exec-term.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_TRUE@am_kernel_exec_OBJECTS = kern/ia64/efi/kernel_exec-startup.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_TRUE@ kern/ia64/efi/kernel_exec-init.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_TRUE@ kern/ia64/kernel_exec-dl.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_TRUE@ kern/ia64/kernel_exec-dl_helper.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_TRUE@ kern/ia64/kernel_exec-cache.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_TRUE@ lib/kernel_exec-division.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_TRUE@ disk/efi/kernel_exec-efidisk.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_TRUE@ kern/efi/kernel_exec-efi.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_TRUE@ kern/efi/kernel_exec-init.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_TRUE@ kern/efi/kernel_exec-mm.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_TRUE@ term/efi/kernel_exec-console.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_TRUE@ kern/kernel_exec-acpi.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_TRUE@ kern/efi/kernel_exec-acpi.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_TRUE@ kern/kernel_exec-compiler-rt.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_TRUE@ kern/kernel_exec-mm.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_TRUE@ kern/kernel_exec-time.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_TRUE@ kern/generic/kernel_exec-millisleep.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_TRUE@ kern/kernel_exec-command.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_TRUE@ kern/kernel_exec-corecmd.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_TRUE@ kern/kernel_exec-device.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_TRUE@ kern/kernel_exec-disk.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_TRUE@ kern/kernel_exec-dl.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_TRUE@ kern/kernel_exec-env.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_TRUE@ kern/kernel_exec-err.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_TRUE@ kern/kernel_exec-file.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_TRUE@ kern/kernel_exec-fs.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_TRUE@ kern/kernel_exec-list.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_TRUE@ kern/kernel_exec-main.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_TRUE@ kern/kernel_exec-misc.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_TRUE@ kern/kernel_exec-parser.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_TRUE@ kern/kernel_exec-partition.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_TRUE@ kern/kernel_exec-rescue_parser.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_TRUE@ kern/kernel_exec-rescue_reader.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_TRUE@ kern/kernel_exec-term.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_TRUE@am_kernel_exec_OBJECTS = kern/i386/xen/kernel_exec-startup_pvh.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_TRUE@ kern/i386/kernel_exec-dl.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_TRUE@ commands/kernel_exec-boot.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_TRUE@ disk/xen/kernel_exec-xendisk.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_TRUE@ kern/i386/kernel_exec-tsc.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_TRUE@ kern/i386/xen/kernel_exec-tsc.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_TRUE@ kern/i386/xen/kernel_exec-pvh.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_TRUE@ kern/xen/kernel_exec-init.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_TRUE@ term/xen/kernel_exec-console.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_TRUE@ term/kernel_exec-terminfo.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_TRUE@ term/kernel_exec-tparm.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_TRUE@ commands/kernel_exec-extcmd.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_TRUE@ lib/kernel_exec-arg.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_TRUE@ kern/kernel_exec-compiler-rt.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_TRUE@ kern/kernel_exec-mm.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_TRUE@ kern/kernel_exec-time.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_TRUE@ kern/generic/kernel_exec-millisleep.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_TRUE@ kern/kernel_exec-command.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_TRUE@ kern/kernel_exec-corecmd.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_TRUE@ kern/kernel_exec-device.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_TRUE@ kern/kernel_exec-disk.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_TRUE@ kern/kernel_exec-dl.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_TRUE@ kern/kernel_exec-env.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_TRUE@ kern/kernel_exec-err.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_TRUE@ kern/kernel_exec-file.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_TRUE@ kern/kernel_exec-fs.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_TRUE@ kern/kernel_exec-list.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_TRUE@ kern/kernel_exec-main.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_TRUE@ kern/kernel_exec-misc.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_TRUE@ kern/kernel_exec-parser.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_TRUE@ kern/kernel_exec-partition.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_TRUE@ kern/kernel_exec-rescue_parser.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_TRUE@ kern/kernel_exec-rescue_reader.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_TRUE@ kern/kernel_exec-term.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_TRUE@am_kernel_exec_OBJECTS = kern/i386/xen/kernel_exec-startup.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_TRUE@ kern/i386/kernel_exec-dl.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_TRUE@ kern/i386/xen/kernel_exec-hypercall.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_TRUE@ kern/i386/kernel_exec-tsc.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_TRUE@ kern/i386/xen/kernel_exec-tsc.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_TRUE@ kern/xen/kernel_exec-init.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_TRUE@ term/xen/kernel_exec-console.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_TRUE@ disk/xen/kernel_exec-xendisk.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_TRUE@ commands/kernel_exec-boot.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_TRUE@ term/kernel_exec-terminfo.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_TRUE@ term/kernel_exec-tparm.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_TRUE@ commands/kernel_exec-extcmd.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_TRUE@ lib/kernel_exec-arg.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_TRUE@ kern/kernel_exec-compiler-rt.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_TRUE@ kern/kernel_exec-mm.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_TRUE@ kern/kernel_exec-time.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_TRUE@ kern/generic/kernel_exec-millisleep.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_TRUE@ kern/kernel_exec-command.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_TRUE@ kern/kernel_exec-corecmd.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_TRUE@ kern/kernel_exec-device.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_TRUE@ kern/kernel_exec-disk.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_TRUE@ kern/kernel_exec-dl.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_TRUE@ kern/kernel_exec-env.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_TRUE@ kern/kernel_exec-err.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_TRUE@ kern/kernel_exec-file.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_TRUE@ kern/kernel_exec-fs.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_TRUE@ kern/kernel_exec-list.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_TRUE@ kern/kernel_exec-main.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_TRUE@ kern/kernel_exec-misc.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_TRUE@ kern/kernel_exec-parser.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_TRUE@ kern/kernel_exec-partition.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_TRUE@ kern/kernel_exec-rescue_parser.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_TRUE@ kern/kernel_exec-rescue_reader.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_TRUE@ kern/kernel_exec-term.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_TRUE@am_kernel_exec_OBJECTS = kern/i386/qemu/kernel_exec-startup.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_TRUE@ kern/i386/qemu/kernel_exec-init.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_TRUE@ bus/kernel_exec-pci.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_TRUE@ kern/kernel_exec-vga_init.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_TRUE@ kern/i386/qemu/kernel_exec-mmap.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_TRUE@ term/i386/pc/kernel_exec-vga_text.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_TRUE@ kern/i386/kernel_exec-dl.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_TRUE@ kern/i386/kernel_exec-tsc.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_TRUE@ kern/i386/kernel_exec-tsc_pit.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_TRUE@ kern/kernel_exec-compiler-rt.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_TRUE@ kern/kernel_exec-mm.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_TRUE@ kern/kernel_exec-time.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_TRUE@ kern/generic/kernel_exec-millisleep.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_TRUE@ kern/kernel_exec-command.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_TRUE@ kern/kernel_exec-corecmd.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_TRUE@ kern/kernel_exec-device.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_TRUE@ kern/kernel_exec-disk.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_TRUE@ kern/kernel_exec-dl.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_TRUE@ kern/kernel_exec-env.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_TRUE@ kern/kernel_exec-err.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_TRUE@ kern/kernel_exec-file.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_TRUE@ kern/kernel_exec-fs.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_TRUE@ kern/kernel_exec-list.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_TRUE@ kern/kernel_exec-main.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_TRUE@ kern/kernel_exec-misc.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_TRUE@ kern/kernel_exec-parser.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_TRUE@ kern/kernel_exec-partition.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_TRUE@ kern/kernel_exec-rescue_parser.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_TRUE@ kern/kernel_exec-rescue_reader.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_TRUE@ kern/kernel_exec-term.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@am_kernel_exec_OBJECTS = kern/i386/pc/kernel_exec-startup.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@ kern/i386/pc/kernel_exec-init.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@ kern/i386/pc/kernel_exec-mmap.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@ term/i386/pc/kernel_exec-console.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@ kern/i386/kernel_exec-dl.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@ kern/i386/kernel_exec-tsc.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@ kern/i386/kernel_exec-tsc_pit.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@ kern/kernel_exec-compiler-rt.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@ kern/kernel_exec-mm.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@ kern/kernel_exec-time.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@ kern/generic/kernel_exec-millisleep.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@ kern/kernel_exec-command.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@ kern/kernel_exec-corecmd.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@ kern/kernel_exec-device.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@ kern/kernel_exec-disk.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@ kern/kernel_exec-dl.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@ kern/kernel_exec-env.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@ kern/kernel_exec-err.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@ kern/kernel_exec-file.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@ kern/kernel_exec-fs.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@ kern/kernel_exec-list.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@ kern/kernel_exec-main.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@ kern/kernel_exec-misc.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@ kern/kernel_exec-parser.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@ kern/kernel_exec-partition.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@ kern/kernel_exec-rescue_parser.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@ kern/kernel_exec-rescue_reader.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@ kern/kernel_exec-term.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_TRUE@am_kernel_exec_OBJECTS = kern/i386/coreboot/kernel_exec-startup.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_TRUE@ kern/i386/coreboot/kernel_exec-init.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_TRUE@ kern/i386/pc/kernel_exec-acpi.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_TRUE@ kern/kernel_exec-acpi.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_TRUE@ kern/i386/kernel_exec-multiboot_mmap.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_TRUE@ term/i386/pc/kernel_exec-vga_text.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_TRUE@ kern/i386/kernel_exec-dl.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_TRUE@ kern/i386/kernel_exec-tsc.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_TRUE@ kern/i386/kernel_exec-tsc_pit.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_TRUE@ kern/kernel_exec-compiler-rt.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_TRUE@ kern/kernel_exec-mm.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_TRUE@ kern/kernel_exec-time.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_TRUE@ kern/generic/kernel_exec-millisleep.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_TRUE@ kern/kernel_exec-command.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_TRUE@ kern/kernel_exec-corecmd.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_TRUE@ kern/kernel_exec-device.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_TRUE@ kern/kernel_exec-disk.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_TRUE@ kern/kernel_exec-dl.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_TRUE@ kern/kernel_exec-env.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_TRUE@ kern/kernel_exec-err.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_TRUE@ kern/kernel_exec-file.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_TRUE@ kern/kernel_exec-fs.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_TRUE@ kern/kernel_exec-list.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_TRUE@ kern/kernel_exec-main.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_TRUE@ kern/kernel_exec-misc.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_TRUE@ kern/kernel_exec-parser.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_TRUE@ kern/kernel_exec-partition.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_TRUE@ kern/kernel_exec-rescue_parser.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_TRUE@ kern/kernel_exec-rescue_reader.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_TRUE@ kern/kernel_exec-term.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_TRUE@am_kernel_exec_OBJECTS = kern/i386/ieee1275/kernel_exec-startup.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_TRUE@ disk/ieee1275/kernel_exec-ofdisk.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_TRUE@ kern/ieee1275/kernel_exec-cmain.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_TRUE@ kern/ieee1275/kernel_exec-ieee1275.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_TRUE@ kern/ieee1275/kernel_exec-mmap.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_TRUE@ kern/ieee1275/kernel_exec-openfw.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_TRUE@ term/ieee1275/kernel_exec-console.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_TRUE@ kern/ieee1275/kernel_exec-init.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_TRUE@ kern/i386/kernel_exec-dl.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_TRUE@ kern/i386/kernel_exec-tsc.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_TRUE@ kern/i386/kernel_exec-tsc_pit.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_TRUE@ term/kernel_exec-terminfo.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_TRUE@ term/kernel_exec-tparm.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_TRUE@ commands/kernel_exec-extcmd.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_TRUE@ lib/kernel_exec-arg.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_TRUE@ kern/kernel_exec-compiler-rt.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_TRUE@ kern/kernel_exec-mm.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_TRUE@ kern/kernel_exec-time.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_TRUE@ kern/generic/kernel_exec-millisleep.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_TRUE@ kern/kernel_exec-command.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_TRUE@ kern/kernel_exec-corecmd.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_TRUE@ kern/kernel_exec-device.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_TRUE@ kern/kernel_exec-disk.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_TRUE@ kern/kernel_exec-dl.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_TRUE@ kern/kernel_exec-env.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_TRUE@ kern/kernel_exec-err.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_TRUE@ kern/kernel_exec-file.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_TRUE@ kern/kernel_exec-fs.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_TRUE@ kern/kernel_exec-list.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_TRUE@ kern/kernel_exec-main.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_TRUE@ kern/kernel_exec-misc.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_TRUE@ kern/kernel_exec-parser.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_TRUE@ kern/kernel_exec-partition.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_TRUE@ kern/kernel_exec-rescue_parser.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_TRUE@ kern/kernel_exec-rescue_reader.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_TRUE@ kern/kernel_exec-term.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_TRUE@am_kernel_exec_OBJECTS = kern/i386/efi/kernel_exec-startup.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_TRUE@ kern/i386/efi/kernel_exec-tsc.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_TRUE@ kern/i386/kernel_exec-tsc_pmtimer.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_TRUE@ kern/i386/efi/kernel_exec-init.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_TRUE@ bus/kernel_exec-pci.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_TRUE@ kern/i386/kernel_exec-dl.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_TRUE@ kern/i386/kernel_exec-tsc.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_TRUE@ kern/i386/kernel_exec-tsc_pit.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_TRUE@ disk/efi/kernel_exec-efidisk.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_TRUE@ kern/efi/kernel_exec-efi.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_TRUE@ kern/efi/kernel_exec-init.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_TRUE@ kern/efi/kernel_exec-mm.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_TRUE@ term/efi/kernel_exec-console.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_TRUE@ kern/kernel_exec-acpi.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_TRUE@ kern/efi/kernel_exec-acpi.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_TRUE@ kern/kernel_exec-compiler-rt.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_TRUE@ kern/kernel_exec-mm.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_TRUE@ kern/kernel_exec-time.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_TRUE@ kern/generic/kernel_exec-millisleep.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_TRUE@ kern/kernel_exec-command.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_TRUE@ kern/kernel_exec-corecmd.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_TRUE@ kern/kernel_exec-device.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_TRUE@ kern/kernel_exec-disk.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_TRUE@ kern/kernel_exec-dl.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_TRUE@ kern/kernel_exec-env.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_TRUE@ kern/kernel_exec-err.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_TRUE@ kern/kernel_exec-file.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_TRUE@ kern/kernel_exec-fs.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_TRUE@ kern/kernel_exec-list.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_TRUE@ kern/kernel_exec-main.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_TRUE@ kern/kernel_exec-misc.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_TRUE@ kern/kernel_exec-parser.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_TRUE@ kern/kernel_exec-partition.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_TRUE@ kern/kernel_exec-rescue_parser.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_TRUE@ kern/kernel_exec-rescue_reader.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_TRUE@ kern/kernel_exec-term.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_TRUE@am_kernel_exec_OBJECTS = kern/i386/coreboot/kernel_exec-startup.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_TRUE@ kern/i386/coreboot/kernel_exec-init.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_TRUE@ kern/i386/pc/kernel_exec-acpi.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_TRUE@ kern/kernel_exec-acpi.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_TRUE@ kern/i386/kernel_exec-tsc_pmtimer.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_TRUE@ kern/i386/coreboot/kernel_exec-cbtable.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_TRUE@ video/coreboot/kernel_exec-cbfb.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_TRUE@ kern/coreboot/kernel_exec-mmap.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_TRUE@ kern/coreboot/kernel_exec-cbtable.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_TRUE@ term/kernel_exec-gfxterm.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_TRUE@ font/kernel_exec-font.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_TRUE@ font/kernel_exec-font_cmd.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_TRUE@ io/kernel_exec-bufio.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_TRUE@ video/fb/kernel_exec-fbblit.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_TRUE@ video/fb/kernel_exec-fbfill.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_TRUE@ video/fb/kernel_exec-fbutil.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_TRUE@ video/fb/kernel_exec-video_fb.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_TRUE@ video/kernel_exec-video.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_TRUE@ term/i386/pc/kernel_exec-vga_text.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_TRUE@ kern/i386/kernel_exec-dl.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_TRUE@ kern/i386/kernel_exec-tsc.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_TRUE@ kern/i386/kernel_exec-tsc_pit.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_TRUE@ kern/kernel_exec-compiler-rt.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_TRUE@ kern/kernel_exec-mm.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_TRUE@ kern/kernel_exec-time.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_TRUE@ kern/generic/kernel_exec-millisleep.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_TRUE@ kern/kernel_exec-command.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_TRUE@ kern/kernel_exec-corecmd.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_TRUE@ kern/kernel_exec-device.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_TRUE@ kern/kernel_exec-disk.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_TRUE@ kern/kernel_exec-dl.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_TRUE@ kern/kernel_exec-env.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_TRUE@ kern/kernel_exec-err.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_TRUE@ kern/kernel_exec-file.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_TRUE@ kern/kernel_exec-fs.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_TRUE@ kern/kernel_exec-list.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_TRUE@ kern/kernel_exec-main.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_TRUE@ kern/kernel_exec-misc.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_TRUE@ kern/kernel_exec-parser.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_TRUE@ kern/kernel_exec-partition.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_TRUE@ kern/kernel_exec-rescue_parser.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_TRUE@ kern/kernel_exec-rescue_reader.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_TRUE@ kern/kernel_exec-term.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_TRUE@am_kernel_exec_OBJECTS = disk/kernel_exec-host.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_TRUE@ kern/emu/kernel_exec-cache_s.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_TRUE@ kern/emu/kernel_exec-hostdisk.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_TRUE@ osdep/unix/kernel_exec-hostdisk.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_TRUE@ osdep/kernel_exec-exec.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_TRUE@ osdep/devmapper/kernel_exec-hostdisk.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_TRUE@ osdep/kernel_exec-hostdisk.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_TRUE@ kern/emu/kernel_exec-hostfs.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_TRUE@ kern/emu/kernel_exec-main.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_TRUE@ kern/emu/kernel_exec-argp_common.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_TRUE@ kern/emu/kernel_exec-misc.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_TRUE@ kern/emu/kernel_exec-mm.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_TRUE@ kern/emu/kernel_exec-time.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_TRUE@ kern/emu/kernel_exec-cache.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_TRUE@ osdep/kernel_exec-emuconsole.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_TRUE@ osdep/kernel_exec-dl.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_TRUE@ osdep/kernel_exec-sleep.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_TRUE@ osdep/kernel_exec-init.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_TRUE@ osdep/kernel_exec-emunet.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_TRUE@ osdep/kernel_exec-cputime.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_TRUE@ term/kernel_exec-terminfo.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_TRUE@ term/kernel_exec-tparm.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_TRUE@ commands/kernel_exec-extcmd.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_TRUE@ lib/kernel_exec-arg.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_TRUE@ kern/kernel_exec-command.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_TRUE@ kern/kernel_exec-corecmd.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_TRUE@ kern/kernel_exec-device.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_TRUE@ kern/kernel_exec-disk.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_TRUE@ kern/kernel_exec-dl.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_TRUE@ kern/kernel_exec-env.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_TRUE@ kern/kernel_exec-err.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_TRUE@ kern/kernel_exec-file.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_TRUE@ kern/kernel_exec-fs.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_TRUE@ kern/kernel_exec-list.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_TRUE@ kern/kernel_exec-main.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_TRUE@ kern/kernel_exec-misc.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_TRUE@ kern/kernel_exec-parser.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_TRUE@ kern/kernel_exec-partition.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_TRUE@ kern/kernel_exec-rescue_parser.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_TRUE@ kern/kernel_exec-rescue_reader.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_TRUE@ kern/kernel_exec-term.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_TRUE@am_kernel_exec_OBJECTS = kern/arm/kernel_exec-startup.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_TRUE@ kern/arm/uboot/kernel_exec-init.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_TRUE@ kern/arm/uboot/kernel_exec-uboot.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_TRUE@ disk/uboot/kernel_exec-ubootdisk.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_TRUE@ kern/uboot/kernel_exec-uboot.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_TRUE@ kern/uboot/kernel_exec-init.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_TRUE@ kern/uboot/kernel_exec-hw.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_TRUE@ term/uboot/kernel_exec-console.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_TRUE@ kern/arm/kernel_exec-dl.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_TRUE@ kern/arm/kernel_exec-dl_helper.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_TRUE@ kern/arm/kernel_exec-cache_armv6.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_TRUE@ kern/arm/kernel_exec-cache_armv7.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_TRUE@ kern/arm/kernel_exec-cache.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_TRUE@ kern/arm/kernel_exec-compiler-rt.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_TRUE@ lib/kernel_exec-division.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_TRUE@ term/kernel_exec-terminfo.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_TRUE@ term/kernel_exec-tparm.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_TRUE@ commands/kernel_exec-extcmd.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_TRUE@ lib/kernel_exec-arg.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_TRUE@ kern/kernel_exec-compiler-rt.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_TRUE@ kern/kernel_exec-mm.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_TRUE@ kern/kernel_exec-time.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_TRUE@ kern/generic/kernel_exec-millisleep.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_TRUE@ kern/kernel_exec-command.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_TRUE@ kern/kernel_exec-corecmd.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_TRUE@ kern/kernel_exec-device.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_TRUE@ kern/kernel_exec-disk.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_TRUE@ kern/kernel_exec-dl.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_TRUE@ kern/kernel_exec-env.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_TRUE@ kern/kernel_exec-err.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_TRUE@ kern/kernel_exec-file.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_TRUE@ kern/kernel_exec-fs.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_TRUE@ kern/kernel_exec-list.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_TRUE@ kern/kernel_exec-main.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_TRUE@ kern/kernel_exec-misc.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_TRUE@ kern/kernel_exec-parser.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_TRUE@ kern/kernel_exec-partition.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_TRUE@ kern/kernel_exec-rescue_parser.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_TRUE@ kern/kernel_exec-rescue_reader.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_TRUE@ kern/kernel_exec-term.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_TRUE@am_kernel_exec_OBJECTS = kern/arm/efi/kernel_exec-startup.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_TRUE@ kern/arm/efi/kernel_exec-init.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_TRUE@ kern/efi/kernel_exec-fdt.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_TRUE@ kern/arm/kernel_exec-dl.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_TRUE@ kern/arm/kernel_exec-dl_helper.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_TRUE@ kern/arm/kernel_exec-cache_armv6.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_TRUE@ kern/arm/kernel_exec-cache_armv7.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_TRUE@ kern/arm/kernel_exec-cache.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_TRUE@ kern/arm/kernel_exec-compiler-rt.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_TRUE@ lib/kernel_exec-division.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_TRUE@ disk/efi/kernel_exec-efidisk.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_TRUE@ kern/efi/kernel_exec-efi.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_TRUE@ kern/efi/kernel_exec-init.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_TRUE@ kern/efi/kernel_exec-mm.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_TRUE@ term/efi/kernel_exec-console.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_TRUE@ kern/kernel_exec-acpi.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_TRUE@ kern/efi/kernel_exec-acpi.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_TRUE@ kern/kernel_exec-compiler-rt.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_TRUE@ kern/kernel_exec-mm.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_TRUE@ kern/kernel_exec-time.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_TRUE@ kern/generic/kernel_exec-millisleep.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_TRUE@ kern/kernel_exec-command.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_TRUE@ kern/kernel_exec-corecmd.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_TRUE@ kern/kernel_exec-device.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_TRUE@ kern/kernel_exec-disk.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_TRUE@ kern/kernel_exec-dl.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_TRUE@ kern/kernel_exec-env.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_TRUE@ kern/kernel_exec-err.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_TRUE@ kern/kernel_exec-file.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_TRUE@ kern/kernel_exec-fs.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_TRUE@ kern/kernel_exec-list.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_TRUE@ kern/kernel_exec-main.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_TRUE@ kern/kernel_exec-misc.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_TRUE@ kern/kernel_exec-parser.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_TRUE@ kern/kernel_exec-partition.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_TRUE@ kern/kernel_exec-rescue_parser.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_TRUE@ kern/kernel_exec-rescue_reader.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_TRUE@ kern/kernel_exec-term.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_TRUE@am_kernel_exec_OBJECTS = kern/arm/kernel_exec-startup.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_TRUE@ kern/arm/coreboot/kernel_exec-init.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_TRUE@ kern/arm/coreboot/kernel_exec-timer.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_TRUE@ kern/arm/coreboot/kernel_exec-coreboot.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_TRUE@ lib/kernel_exec-fdt.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_TRUE@ bus/kernel_exec-fdt.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_TRUE@ term/kernel_exec-ps2.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_TRUE@ term/arm/kernel_exec-pl050.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_TRUE@ term/arm/kernel_exec-cros.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_TRUE@ term/arm/kernel_exec-cros_ec.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_TRUE@ bus/spi/kernel_exec-rk3288_spi.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_TRUE@ commands/kernel_exec-keylayouts.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_TRUE@ kern/arm/coreboot/kernel_exec-dma.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_TRUE@ kern/arm/coreboot/kernel_exec-cbtable.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_TRUE@ video/coreboot/kernel_exec-cbfb.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_TRUE@ kern/coreboot/kernel_exec-mmap.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_TRUE@ kern/coreboot/kernel_exec-cbtable.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_TRUE@ term/kernel_exec-gfxterm.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_TRUE@ font/kernel_exec-font.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_TRUE@ font/kernel_exec-font_cmd.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_TRUE@ io/kernel_exec-bufio.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_TRUE@ video/fb/kernel_exec-fbblit.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_TRUE@ video/fb/kernel_exec-fbfill.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_TRUE@ video/fb/kernel_exec-fbutil.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_TRUE@ video/fb/kernel_exec-video_fb.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_TRUE@ video/kernel_exec-video.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_TRUE@ kern/arm/kernel_exec-dl.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_TRUE@ kern/arm/kernel_exec-dl_helper.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_TRUE@ kern/arm/kernel_exec-cache_armv6.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_TRUE@ kern/arm/kernel_exec-cache_armv7.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_TRUE@ kern/arm/kernel_exec-cache.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_TRUE@ kern/arm/kernel_exec-compiler-rt.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_TRUE@ lib/kernel_exec-division.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_TRUE@ kern/kernel_exec-compiler-rt.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_TRUE@ kern/kernel_exec-mm.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_TRUE@ kern/kernel_exec-time.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_TRUE@ kern/generic/kernel_exec-millisleep.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_TRUE@ kern/kernel_exec-command.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_TRUE@ kern/kernel_exec-corecmd.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_TRUE@ kern/kernel_exec-device.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_TRUE@ kern/kernel_exec-disk.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_TRUE@ kern/kernel_exec-dl.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_TRUE@ kern/kernel_exec-env.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_TRUE@ kern/kernel_exec-err.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_TRUE@ kern/kernel_exec-file.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_TRUE@ kern/kernel_exec-fs.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_TRUE@ kern/kernel_exec-list.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_TRUE@ kern/kernel_exec-main.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_TRUE@ kern/kernel_exec-misc.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_TRUE@ kern/kernel_exec-parser.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_TRUE@ kern/kernel_exec-partition.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_TRUE@ kern/kernel_exec-rescue_parser.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_TRUE@ kern/kernel_exec-rescue_reader.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_TRUE@ kern/kernel_exec-term.$(OBJEXT) -@COND_arm64_efi_TRUE@am_kernel_exec_OBJECTS = kern/arm64/efi/kernel_exec-startup.$(OBJEXT) \ -@COND_arm64_efi_TRUE@ kern/arm64/efi/kernel_exec-init.$(OBJEXT) \ -@COND_arm64_efi_TRUE@ kern/efi/kernel_exec-fdt.$(OBJEXT) \ -@COND_arm64_efi_TRUE@ kern/arm64/kernel_exec-cache.$(OBJEXT) \ -@COND_arm64_efi_TRUE@ kern/arm64/kernel_exec-cache_flush.$(OBJEXT) \ -@COND_arm64_efi_TRUE@ kern/arm64/kernel_exec-dl.$(OBJEXT) \ -@COND_arm64_efi_TRUE@ kern/arm64/kernel_exec-dl_helper.$(OBJEXT) \ -@COND_arm64_efi_TRUE@ disk/efi/kernel_exec-efidisk.$(OBJEXT) \ -@COND_arm64_efi_TRUE@ kern/efi/kernel_exec-efi.$(OBJEXT) \ -@COND_arm64_efi_TRUE@ kern/efi/kernel_exec-init.$(OBJEXT) \ -@COND_arm64_efi_TRUE@ kern/efi/kernel_exec-mm.$(OBJEXT) \ -@COND_arm64_efi_TRUE@ term/efi/kernel_exec-console.$(OBJEXT) \ -@COND_arm64_efi_TRUE@ kern/kernel_exec-acpi.$(OBJEXT) \ -@COND_arm64_efi_TRUE@ kern/efi/kernel_exec-acpi.$(OBJEXT) \ -@COND_arm64_efi_TRUE@ kern/kernel_exec-compiler-rt.$(OBJEXT) \ -@COND_arm64_efi_TRUE@ kern/kernel_exec-mm.$(OBJEXT) \ -@COND_arm64_efi_TRUE@ kern/kernel_exec-time.$(OBJEXT) \ -@COND_arm64_efi_TRUE@ kern/generic/kernel_exec-millisleep.$(OBJEXT) \ -@COND_arm64_efi_TRUE@ kern/kernel_exec-command.$(OBJEXT) \ -@COND_arm64_efi_TRUE@ kern/kernel_exec-corecmd.$(OBJEXT) \ -@COND_arm64_efi_TRUE@ kern/kernel_exec-device.$(OBJEXT) \ -@COND_arm64_efi_TRUE@ kern/kernel_exec-disk.$(OBJEXT) \ -@COND_arm64_efi_TRUE@ kern/kernel_exec-dl.$(OBJEXT) \ -@COND_arm64_efi_TRUE@ kern/kernel_exec-env.$(OBJEXT) \ -@COND_arm64_efi_TRUE@ kern/kernel_exec-err.$(OBJEXT) \ -@COND_arm64_efi_TRUE@ kern/kernel_exec-file.$(OBJEXT) \ -@COND_arm64_efi_TRUE@ kern/kernel_exec-fs.$(OBJEXT) \ -@COND_arm64_efi_TRUE@ kern/kernel_exec-list.$(OBJEXT) \ -@COND_arm64_efi_TRUE@ kern/kernel_exec-main.$(OBJEXT) \ -@COND_arm64_efi_TRUE@ kern/kernel_exec-misc.$(OBJEXT) \ -@COND_arm64_efi_TRUE@ kern/kernel_exec-parser.$(OBJEXT) \ -@COND_arm64_efi_TRUE@ kern/kernel_exec-partition.$(OBJEXT) \ -@COND_arm64_efi_TRUE@ kern/kernel_exec-rescue_parser.$(OBJEXT) \ -@COND_arm64_efi_TRUE@ kern/kernel_exec-rescue_reader.$(OBJEXT) \ -@COND_arm64_efi_TRUE@ kern/kernel_exec-term.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_FALSE@@COND_x86_64_efi_FALSE@@COND_x86_64_xen_TRUE@nodist_kernel_exec_OBJECTS = kernel_exec-symlist.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_FALSE@@COND_x86_64_efi_TRUE@nodist_kernel_exec_OBJECTS = kernel_exec-symlist.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_TRUE@nodist_kernel_exec_OBJECTS = kernel_exec-symlist.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_TRUE@nodist_kernel_exec_OBJECTS = kernel_exec-symlist.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_TRUE@nodist_kernel_exec_OBJECTS = kernel_exec-symlist.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_TRUE@nodist_kernel_exec_OBJECTS = kernel_exec-symlist.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_TRUE@nodist_kernel_exec_OBJECTS = kernel_exec-symlist.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_TRUE@nodist_kernel_exec_OBJECTS = kernel_exec-symlist.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_TRUE@nodist_kernel_exec_OBJECTS = kernel_exec-symlist.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_TRUE@nodist_kernel_exec_OBJECTS = kernel_exec-symlist.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_TRUE@nodist_kernel_exec_OBJECTS = kernel_exec-symlist.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_TRUE@nodist_kernel_exec_OBJECTS = kernel_exec-symlist.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_TRUE@nodist_kernel_exec_OBJECTS = kernel_exec-symlist.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@nodist_kernel_exec_OBJECTS = kernel_exec-symlist.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_TRUE@nodist_kernel_exec_OBJECTS = kernel_exec-symlist.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_TRUE@nodist_kernel_exec_OBJECTS = kernel_exec-symlist.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_TRUE@nodist_kernel_exec_OBJECTS = kernel_exec-symlist.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_i386_coreboot_TRUE@nodist_kernel_exec_OBJECTS = kernel_exec-symlist.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_TRUE@nodist_kernel_exec_OBJECTS = kernel_exec-symlist.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_TRUE@nodist_kernel_exec_OBJECTS = kernel_exec-symlist.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_TRUE@nodist_kernel_exec_OBJECTS = kernel_exec-symlist.$(OBJEXT) -@COND_arm64_efi_TRUE@nodist_kernel_exec_OBJECTS = \ -@COND_arm64_efi_TRUE@ kernel_exec-symlist.$(OBJEXT) -kernel_exec_OBJECTS = $(am_kernel_exec_OBJECTS) \ - $(nodist_kernel_exec_OBJECTS) -kernel_exec_LINK = $(CCLD) $(kernel_exec_CFLAGS) $(CFLAGS) \ - $(kernel_exec_LDFLAGS) $(LDFLAGS) -o $@ -am__keylayouts_module_SOURCES_DIST = commands/keylayouts.c -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_x86_64_efi_TRUE@am_keylayouts_module_OBJECTS = commands/keylayouts_module-keylayouts.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_TRUE@am_keylayouts_module_OBJECTS = commands/keylayouts_module-keylayouts.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@am_keylayouts_module_OBJECTS = commands/keylayouts_module-keylayouts.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_TRUE@am_keylayouts_module_OBJECTS = commands/keylayouts_module-keylayouts.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_TRUE@am_keylayouts_module_OBJECTS = commands/keylayouts_module-keylayouts.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_TRUE@am_keylayouts_module_OBJECTS = commands/keylayouts_module-keylayouts.$(OBJEXT) -@COND_i386_coreboot_TRUE@am_keylayouts_module_OBJECTS = commands/keylayouts_module-keylayouts.$(OBJEXT) -nodist_keylayouts_module_OBJECTS = -keylayouts_module_OBJECTS = $(am_keylayouts_module_OBJECTS) \ - $(nodist_keylayouts_module_OBJECTS) -keylayouts_module_LINK = $(CCLD) $(keylayouts_module_CFLAGS) $(CFLAGS) \ - $(keylayouts_module_LDFLAGS) $(LDFLAGS) -o $@ -am_keystatus_module_OBJECTS = \ - commands/keystatus_module-keystatus.$(OBJEXT) -nodist_keystatus_module_OBJECTS = -keystatus_module_OBJECTS = $(am_keystatus_module_OBJECTS) \ - $(nodist_keystatus_module_OBJECTS) -keystatus_module_LINK = $(CCLD) $(keystatus_module_CFLAGS) $(CFLAGS) \ - $(keystatus_module_LDFLAGS) $(LDFLAGS) -o $@ -am_ldm_module_OBJECTS = disk/ldm_module-ldm.$(OBJEXT) -nodist_ldm_module_OBJECTS = -ldm_module_OBJECTS = $(am_ldm_module_OBJECTS) \ - $(nodist_ldm_module_OBJECTS) -ldm_module_LINK = $(CCLD) $(ldm_module_CFLAGS) $(CFLAGS) \ - $(ldm_module_LDFLAGS) $(LDFLAGS) -o $@ -am__legacy_password_test_module_SOURCES_DIST = \ - tests/legacy_password_test.c -@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_pc_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_x86_64_efi_FALSE@@COND_x86_64_xen_TRUE@am_legacy_password_test_module_OBJECTS = tests/legacy_password_test_module-legacy_password_test.$(OBJEXT) -@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_pc_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_x86_64_efi_TRUE@am_legacy_password_test_module_OBJECTS = tests/legacy_password_test_module-legacy_password_test.$(OBJEXT) -@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_pc_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_TRUE@am_legacy_password_test_module_OBJECTS = tests/legacy_password_test_module-legacy_password_test.$(OBJEXT) -@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_pc_FALSE@@COND_i386_xen_TRUE@am_legacy_password_test_module_OBJECTS = tests/legacy_password_test_module-legacy_password_test.$(OBJEXT) -@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_pc_TRUE@am_legacy_password_test_module_OBJECTS = tests/legacy_password_test_module-legacy_password_test.$(OBJEXT) -@COND_emu_FALSE@@COND_i386_efi_TRUE@am_legacy_password_test_module_OBJECTS = tests/legacy_password_test_module-legacy_password_test.$(OBJEXT) -@COND_emu_TRUE@am_legacy_password_test_module_OBJECTS = tests/legacy_password_test_module-legacy_password_test.$(OBJEXT) -nodist_legacy_password_test_module_OBJECTS = -legacy_password_test_module_OBJECTS = \ - $(am_legacy_password_test_module_OBJECTS) \ - $(nodist_legacy_password_test_module_OBJECTS) -legacy_password_test_module_LINK = $(CCLD) \ - $(legacy_password_test_module_CFLAGS) $(CFLAGS) \ - $(legacy_password_test_module_LDFLAGS) $(LDFLAGS) -o $@ -am__legacycfg_module_SOURCES_DIST = lib/i386/pc/vesa_modes_table.c \ - commands/legacycfg.c lib/legacy_parse.c -@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_pc_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_x86_64_efi_FALSE@@COND_x86_64_xen_TRUE@am_legacycfg_module_OBJECTS = lib/i386/pc/legacycfg_module-vesa_modes_table.$(OBJEXT) \ -@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_pc_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_x86_64_efi_FALSE@@COND_x86_64_xen_TRUE@ commands/legacycfg_module-legacycfg.$(OBJEXT) \ -@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_pc_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_x86_64_efi_FALSE@@COND_x86_64_xen_TRUE@ lib/legacycfg_module-legacy_parse.$(OBJEXT) -@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_pc_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_x86_64_efi_TRUE@am_legacycfg_module_OBJECTS = lib/i386/pc/legacycfg_module-vesa_modes_table.$(OBJEXT) \ -@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_pc_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_x86_64_efi_TRUE@ commands/legacycfg_module-legacycfg.$(OBJEXT) \ -@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_pc_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_x86_64_efi_TRUE@ lib/legacycfg_module-legacy_parse.$(OBJEXT) -@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_pc_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_TRUE@am_legacycfg_module_OBJECTS = commands/legacycfg_module-legacycfg.$(OBJEXT) \ -@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_pc_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_TRUE@ lib/legacycfg_module-legacy_parse.$(OBJEXT) -@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_pc_FALSE@@COND_i386_xen_TRUE@am_legacycfg_module_OBJECTS = lib/i386/pc/legacycfg_module-vesa_modes_table.$(OBJEXT) \ -@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_pc_FALSE@@COND_i386_xen_TRUE@ commands/legacycfg_module-legacycfg.$(OBJEXT) \ -@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_pc_FALSE@@COND_i386_xen_TRUE@ lib/legacycfg_module-legacy_parse.$(OBJEXT) -@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_pc_TRUE@am_legacycfg_module_OBJECTS = commands/legacycfg_module-legacycfg.$(OBJEXT) \ -@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_pc_TRUE@ lib/legacycfg_module-legacy_parse.$(OBJEXT) -@COND_emu_FALSE@@COND_i386_efi_TRUE@am_legacycfg_module_OBJECTS = lib/i386/pc/legacycfg_module-vesa_modes_table.$(OBJEXT) \ -@COND_emu_FALSE@@COND_i386_efi_TRUE@ commands/legacycfg_module-legacycfg.$(OBJEXT) \ -@COND_emu_FALSE@@COND_i386_efi_TRUE@ lib/legacycfg_module-legacy_parse.$(OBJEXT) -@COND_emu_TRUE@am_legacycfg_module_OBJECTS = lib/i386/pc/legacycfg_module-vesa_modes_table.$(OBJEXT) \ -@COND_emu_TRUE@ commands/legacycfg_module-legacycfg.$(OBJEXT) \ -@COND_emu_TRUE@ lib/legacycfg_module-legacy_parse.$(OBJEXT) -nodist_legacycfg_module_OBJECTS = -legacycfg_module_OBJECTS = $(am_legacycfg_module_OBJECTS) \ - $(nodist_legacycfg_module_OBJECTS) -legacycfg_module_LINK = $(CCLD) $(legacycfg_module_CFLAGS) $(CFLAGS) \ - $(legacycfg_module_LDFLAGS) $(LDFLAGS) -o $@ -am__linux_module_SOURCES_DIST = loader/arm64/linux.c loader/linux.c \ - lib/cmdline.c loader/arm/linux.c loader/i386/linux.c \ - lib/i386/pc/vesa_modes_table.c loader/i386/xen.c \ - loader/ia64/efi/linux.c loader/mips/linux.c \ - loader/powerpc/ieee1275/linux.c loader/riscv/linux.c \ - loader/sparc64/ieee1275/linux.c -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_FALSE@@COND_x86_64_efi_FALSE@@COND_x86_64_xen_TRUE@am_linux_module_OBJECTS = loader/i386/linux_module-xen.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_FALSE@@COND_x86_64_efi_FALSE@@COND_x86_64_xen_TRUE@ loader/linux_module-linux.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_FALSE@@COND_x86_64_efi_FALSE@@COND_x86_64_xen_TRUE@ lib/linux_module-cmdline.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_FALSE@@COND_x86_64_efi_TRUE@am_linux_module_OBJECTS = loader/i386/linux_module-linux.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_FALSE@@COND_x86_64_efi_TRUE@ loader/linux_module-linux.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_FALSE@@COND_x86_64_efi_TRUE@ lib/linux_module-cmdline.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_TRUE@am_linux_module_OBJECTS = loader/sparc64/ieee1275/linux_module-linux.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_TRUE@ loader/linux_module-linux.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_TRUE@ lib/linux_module-cmdline.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_TRUE@am_linux_module_OBJECTS = loader/riscv/linux_module-linux.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_TRUE@ loader/linux_module-linux.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_TRUE@ lib/linux_module-cmdline.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_TRUE@am_linux_module_OBJECTS = loader/riscv/linux_module-linux.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_TRUE@ loader/linux_module-linux.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_TRUE@ lib/linux_module-cmdline.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_TRUE@am_linux_module_OBJECTS = loader/powerpc/ieee1275/linux_module-linux.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_TRUE@ loader/linux_module-linux.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_TRUE@ lib/linux_module-cmdline.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_TRUE@am_linux_module_OBJECTS = loader/mips/linux_module-linux.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_TRUE@ loader/linux_module-linux.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_TRUE@ lib/linux_module-cmdline.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_TRUE@am_linux_module_OBJECTS = loader/mips/linux_module-linux.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_TRUE@ loader/linux_module-linux.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_TRUE@ lib/linux_module-cmdline.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_TRUE@am_linux_module_OBJECTS = loader/mips/linux_module-linux.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_TRUE@ loader/linux_module-linux.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_TRUE@ lib/linux_module-cmdline.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_TRUE@am_linux_module_OBJECTS = loader/ia64/efi/linux_module-linux.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_TRUE@ loader/linux_module-linux.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_TRUE@ lib/linux_module-cmdline.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_TRUE@am_linux_module_OBJECTS = loader/i386/linux_module-linux.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_TRUE@ lib/i386/pc/linux_module-vesa_modes_table.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_TRUE@ loader/linux_module-linux.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_TRUE@ lib/linux_module-cmdline.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_TRUE@am_linux_module_OBJECTS = loader/i386/linux_module-xen.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_TRUE@ loader/linux_module-linux.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_TRUE@ lib/linux_module-cmdline.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_TRUE@am_linux_module_OBJECTS = loader/i386/linux_module-linux.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_TRUE@ loader/linux_module-linux.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_TRUE@ lib/linux_module-cmdline.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@am_linux_module_OBJECTS = lib/i386/pc/linux_module-vesa_modes_table.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@ loader/i386/linux_module-linux.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@ loader/linux_module-linux.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@ lib/linux_module-cmdline.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_TRUE@am_linux_module_OBJECTS = loader/i386/linux_module-linux.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_TRUE@ loader/linux_module-linux.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_TRUE@ lib/linux_module-cmdline.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_TRUE@am_linux_module_OBJECTS = loader/i386/linux_module-linux.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_TRUE@ loader/linux_module-linux.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_TRUE@ lib/linux_module-cmdline.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_TRUE@am_linux_module_OBJECTS = loader/i386/linux_module-linux.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_TRUE@ loader/linux_module-linux.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_TRUE@ lib/linux_module-cmdline.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_i386_coreboot_TRUE@am_linux_module_OBJECTS = loader/i386/linux_module-linux.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_i386_coreboot_TRUE@ loader/linux_module-linux.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_i386_coreboot_TRUE@ lib/linux_module-cmdline.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_TRUE@am_linux_module_OBJECTS = loader/arm/linux_module-linux.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_TRUE@ loader/linux_module-linux.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_TRUE@ lib/linux_module-cmdline.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_TRUE@am_linux_module_OBJECTS = loader/arm64/linux_module-linux.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_TRUE@ loader/linux_module-linux.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_TRUE@ lib/linux_module-cmdline.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_TRUE@am_linux_module_OBJECTS = loader/arm/linux_module-linux.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_TRUE@ loader/linux_module-linux.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_TRUE@ lib/linux_module-cmdline.$(OBJEXT) -@COND_arm64_efi_TRUE@am_linux_module_OBJECTS = loader/arm64/linux_module-linux.$(OBJEXT) \ -@COND_arm64_efi_TRUE@ loader/linux_module-linux.$(OBJEXT) \ -@COND_arm64_efi_TRUE@ lib/linux_module-cmdline.$(OBJEXT) -nodist_linux_module_OBJECTS = -linux_module_OBJECTS = $(am_linux_module_OBJECTS) \ - $(nodist_linux_module_OBJECTS) -linux_module_LINK = $(CCLD) $(linux_module_CFLAGS) $(CFLAGS) \ - $(linux_module_LDFLAGS) $(LDFLAGS) -o $@ -am__linux16_module_SOURCES_DIST = loader/i386/pc/linux.c -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_x86_64_efi_TRUE@am_linux16_module_OBJECTS = loader/i386/pc/linux16_module-linux.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_TRUE@am_linux16_module_OBJECTS = loader/i386/pc/linux16_module-linux.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@am_linux16_module_OBJECTS = loader/i386/pc/linux16_module-linux.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_TRUE@am_linux16_module_OBJECTS = loader/i386/pc/linux16_module-linux.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_TRUE@am_linux16_module_OBJECTS = loader/i386/pc/linux16_module-linux.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_TRUE@am_linux16_module_OBJECTS = loader/i386/pc/linux16_module-linux.$(OBJEXT) -@COND_i386_coreboot_TRUE@am_linux16_module_OBJECTS = loader/i386/pc/linux16_module-linux.$(OBJEXT) -nodist_linux16_module_OBJECTS = -linux16_module_OBJECTS = $(am_linux16_module_OBJECTS) \ - $(nodist_linux16_module_OBJECTS) -linux16_module_LINK = $(CCLD) $(linux16_module_CFLAGS) $(CFLAGS) \ - $(linux16_module_LDFLAGS) $(LDFLAGS) -o $@ -am__lnxboot_image_SOURCES_DIST = boot/i386/pc/lnxboot.S -@COND_i386_pc_TRUE@am_lnxboot_image_OBJECTS = boot/i386/pc/lnxboot_image-lnxboot.$(OBJEXT) -nodist_lnxboot_image_OBJECTS = -lnxboot_image_OBJECTS = $(am_lnxboot_image_OBJECTS) \ - $(nodist_lnxboot_image_OBJECTS) -lnxboot_image_DEPENDENCIES = -lnxboot_image_LINK = $(CCLD) $(lnxboot_image_CFLAGS) $(CFLAGS) \ - $(lnxboot_image_LDFLAGS) $(LDFLAGS) -o $@ -am__loadbios_module_SOURCES_DIST = commands/efi/loadbios.c -@COND_i386_efi_FALSE@@COND_x86_64_efi_TRUE@am_loadbios_module_OBJECTS = commands/efi/loadbios_module-loadbios.$(OBJEXT) -@COND_i386_efi_TRUE@am_loadbios_module_OBJECTS = commands/efi/loadbios_module-loadbios.$(OBJEXT) -nodist_loadbios_module_OBJECTS = -loadbios_module_OBJECTS = $(am_loadbios_module_OBJECTS) \ - $(nodist_loadbios_module_OBJECTS) -loadbios_module_LINK = $(CCLD) $(loadbios_module_CFLAGS) $(CFLAGS) \ - $(loadbios_module_LDFLAGS) $(LDFLAGS) -o $@ -am_loadenv_module_OBJECTS = commands/loadenv_module-loadenv.$(OBJEXT) \ - lib/loadenv_module-envblk.$(OBJEXT) -nodist_loadenv_module_OBJECTS = -loadenv_module_OBJECTS = $(am_loadenv_module_OBJECTS) \ - $(nodist_loadenv_module_OBJECTS) -loadenv_module_LINK = $(CCLD) $(loadenv_module_CFLAGS) $(CFLAGS) \ - $(loadenv_module_LDFLAGS) $(LDFLAGS) -o $@ -am_loopback_module_OBJECTS = disk/loopback_module-loopback.$(OBJEXT) -nodist_loopback_module_OBJECTS = -loopback_module_OBJECTS = $(am_loopback_module_OBJECTS) \ - $(nodist_loopback_module_OBJECTS) -loopback_module_LINK = $(CCLD) $(loopback_module_CFLAGS) $(CFLAGS) \ - $(loopback_module_LDFLAGS) $(LDFLAGS) -o $@ -am_ls_module_OBJECTS = commands/ls_module-ls.$(OBJEXT) -nodist_ls_module_OBJECTS = -ls_module_OBJECTS = $(am_ls_module_OBJECTS) \ - $(nodist_ls_module_OBJECTS) -ls_module_LINK = $(CCLD) $(ls_module_CFLAGS) $(CFLAGS) \ - $(ls_module_LDFLAGS) $(LDFLAGS) -o $@ -am__lsacpi_module_SOURCES_DIST = commands/lsacpi.c -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_ia64_efi_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_x86_64_efi_TRUE@am_lsacpi_module_OBJECTS = commands/lsacpi_module-lsacpi.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_ia64_efi_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_TRUE@am_lsacpi_module_OBJECTS = commands/lsacpi_module-lsacpi.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_ia64_efi_FALSE@@COND_riscv32_efi_TRUE@am_lsacpi_module_OBJECTS = commands/lsacpi_module-lsacpi.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_ia64_efi_TRUE@am_lsacpi_module_OBJECTS = commands/lsacpi_module-lsacpi.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@am_lsacpi_module_OBJECTS = commands/lsacpi_module-lsacpi.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_multiboot_TRUE@am_lsacpi_module_OBJECTS = commands/lsacpi_module-lsacpi.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_TRUE@am_lsacpi_module_OBJECTS = commands/lsacpi_module-lsacpi.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_i386_coreboot_TRUE@am_lsacpi_module_OBJECTS = commands/lsacpi_module-lsacpi.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_TRUE@am_lsacpi_module_OBJECTS = commands/lsacpi_module-lsacpi.$(OBJEXT) -@COND_arm64_efi_TRUE@am_lsacpi_module_OBJECTS = \ -@COND_arm64_efi_TRUE@ commands/lsacpi_module-lsacpi.$(OBJEXT) -nodist_lsacpi_module_OBJECTS = -lsacpi_module_OBJECTS = $(am_lsacpi_module_OBJECTS) \ - $(nodist_lsacpi_module_OBJECTS) -lsacpi_module_LINK = $(CCLD) $(lsacpi_module_CFLAGS) $(CFLAGS) \ - $(lsacpi_module_LDFLAGS) $(LDFLAGS) -o $@ -am__lsapm_module_SOURCES_DIST = commands/i386/pc/lsapm.c -@COND_i386_pc_TRUE@am_lsapm_module_OBJECTS = commands/i386/pc/lsapm_module-lsapm.$(OBJEXT) -nodist_lsapm_module_OBJECTS = -lsapm_module_OBJECTS = $(am_lsapm_module_OBJECTS) \ - $(nodist_lsapm_module_OBJECTS) -lsapm_module_LINK = $(CCLD) $(lsapm_module_CFLAGS) $(CFLAGS) \ - $(lsapm_module_LDFLAGS) $(LDFLAGS) -o $@ -am__lsdev_module_SOURCES_DIST = commands/arc/lsdev.c -@COND_mips_arc_TRUE@am_lsdev_module_OBJECTS = \ -@COND_mips_arc_TRUE@ commands/arc/lsdev_module-lsdev.$(OBJEXT) -nodist_lsdev_module_OBJECTS = -lsdev_module_OBJECTS = $(am_lsdev_module_OBJECTS) \ - $(nodist_lsdev_module_OBJECTS) -lsdev_module_LINK = $(CCLD) $(lsdev_module_CFLAGS) $(CFLAGS) \ - $(lsdev_module_LDFLAGS) $(LDFLAGS) -o $@ -am__lsefi_module_SOURCES_DIST = commands/efi/lsefi.c -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_i386_efi_FALSE@@COND_ia64_efi_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_x86_64_efi_TRUE@am_lsefi_module_OBJECTS = commands/efi/lsefi_module-lsefi.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_i386_efi_FALSE@@COND_ia64_efi_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_TRUE@am_lsefi_module_OBJECTS = commands/efi/lsefi_module-lsefi.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_i386_efi_FALSE@@COND_ia64_efi_FALSE@@COND_riscv32_efi_TRUE@am_lsefi_module_OBJECTS = commands/efi/lsefi_module-lsefi.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_i386_efi_FALSE@@COND_ia64_efi_TRUE@am_lsefi_module_OBJECTS = commands/efi/lsefi_module-lsefi.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_i386_efi_TRUE@am_lsefi_module_OBJECTS = commands/efi/lsefi_module-lsefi.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_TRUE@am_lsefi_module_OBJECTS = commands/efi/lsefi_module-lsefi.$(OBJEXT) -@COND_arm64_efi_TRUE@am_lsefi_module_OBJECTS = commands/efi/lsefi_module-lsefi.$(OBJEXT) -nodist_lsefi_module_OBJECTS = -lsefi_module_OBJECTS = $(am_lsefi_module_OBJECTS) \ - $(nodist_lsefi_module_OBJECTS) -lsefi_module_LINK = $(CCLD) $(lsefi_module_CFLAGS) $(CFLAGS) \ - $(lsefi_module_LDFLAGS) $(LDFLAGS) -o $@ -am__lsefimmap_module_SOURCES_DIST = commands/efi/lsefimmap.c -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_i386_efi_FALSE@@COND_ia64_efi_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_x86_64_efi_TRUE@am_lsefimmap_module_OBJECTS = commands/efi/lsefimmap_module-lsefimmap.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_i386_efi_FALSE@@COND_ia64_efi_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_TRUE@am_lsefimmap_module_OBJECTS = commands/efi/lsefimmap_module-lsefimmap.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_i386_efi_FALSE@@COND_ia64_efi_FALSE@@COND_riscv32_efi_TRUE@am_lsefimmap_module_OBJECTS = commands/efi/lsefimmap_module-lsefimmap.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_i386_efi_FALSE@@COND_ia64_efi_TRUE@am_lsefimmap_module_OBJECTS = commands/efi/lsefimmap_module-lsefimmap.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_i386_efi_TRUE@am_lsefimmap_module_OBJECTS = commands/efi/lsefimmap_module-lsefimmap.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_TRUE@am_lsefimmap_module_OBJECTS = commands/efi/lsefimmap_module-lsefimmap.$(OBJEXT) -@COND_arm64_efi_TRUE@am_lsefimmap_module_OBJECTS = commands/efi/lsefimmap_module-lsefimmap.$(OBJEXT) -nodist_lsefimmap_module_OBJECTS = -lsefimmap_module_OBJECTS = $(am_lsefimmap_module_OBJECTS) \ - $(nodist_lsefimmap_module_OBJECTS) -lsefimmap_module_LINK = $(CCLD) $(lsefimmap_module_CFLAGS) $(CFLAGS) \ - $(lsefimmap_module_LDFLAGS) $(LDFLAGS) -o $@ -am__lsefisystab_module_SOURCES_DIST = commands/efi/lsefisystab.c -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_i386_efi_FALSE@@COND_ia64_efi_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_x86_64_efi_TRUE@am_lsefisystab_module_OBJECTS = commands/efi/lsefisystab_module-lsefisystab.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_i386_efi_FALSE@@COND_ia64_efi_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_TRUE@am_lsefisystab_module_OBJECTS = commands/efi/lsefisystab_module-lsefisystab.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_i386_efi_FALSE@@COND_ia64_efi_FALSE@@COND_riscv32_efi_TRUE@am_lsefisystab_module_OBJECTS = commands/efi/lsefisystab_module-lsefisystab.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_i386_efi_FALSE@@COND_ia64_efi_TRUE@am_lsefisystab_module_OBJECTS = commands/efi/lsefisystab_module-lsefisystab.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_i386_efi_TRUE@am_lsefisystab_module_OBJECTS = commands/efi/lsefisystab_module-lsefisystab.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_TRUE@am_lsefisystab_module_OBJECTS = commands/efi/lsefisystab_module-lsefisystab.$(OBJEXT) -@COND_arm64_efi_TRUE@am_lsefisystab_module_OBJECTS = commands/efi/lsefisystab_module-lsefisystab.$(OBJEXT) -nodist_lsefisystab_module_OBJECTS = -lsefisystab_module_OBJECTS = $(am_lsefisystab_module_OBJECTS) \ - $(nodist_lsefisystab_module_OBJECTS) -lsefisystab_module_LINK = $(CCLD) $(lsefisystab_module_CFLAGS) \ - $(CFLAGS) $(lsefisystab_module_LDFLAGS) $(LDFLAGS) -o $@ -am_lsmmap_module_OBJECTS = commands/lsmmap_module-lsmmap.$(OBJEXT) -nodist_lsmmap_module_OBJECTS = -lsmmap_module_OBJECTS = $(am_lsmmap_module_OBJECTS) \ - $(nodist_lsmmap_module_OBJECTS) -lsmmap_module_LINK = $(CCLD) $(lsmmap_module_CFLAGS) $(CFLAGS) \ - $(lsmmap_module_LDFLAGS) $(LDFLAGS) -o $@ -am__lspci_module_SOURCES_DIST = commands/lspci.c -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_mips_loongson_FALSE@@COND_x86_64_efi_TRUE@am_lspci_module_OBJECTS = commands/lspci_module-lspci.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_mips_loongson_TRUE@am_lspci_module_OBJECTS = commands/lspci_module-lspci.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_TRUE@am_lspci_module_OBJECTS = commands/lspci_module-lspci.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@am_lspci_module_OBJECTS = commands/lspci_module-lspci.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_TRUE@am_lspci_module_OBJECTS = commands/lspci_module-lspci.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_TRUE@am_lspci_module_OBJECTS = commands/lspci_module-lspci.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_TRUE@am_lspci_module_OBJECTS = commands/lspci_module-lspci.$(OBJEXT) -@COND_i386_coreboot_TRUE@am_lspci_module_OBJECTS = commands/lspci_module-lspci.$(OBJEXT) -nodist_lspci_module_OBJECTS = -lspci_module_OBJECTS = $(am_lspci_module_OBJECTS) \ - $(nodist_lspci_module_OBJECTS) -lspci_module_LINK = $(CCLD) $(lspci_module_CFLAGS) $(CFLAGS) \ - $(lspci_module_LDFLAGS) $(LDFLAGS) -o $@ -am__lssal_module_SOURCES_DIST = commands/efi/lssal.c -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_i386_efi_FALSE@@COND_ia64_efi_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_x86_64_efi_TRUE@am_lssal_module_OBJECTS = commands/efi/lssal_module-lssal.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_i386_efi_FALSE@@COND_ia64_efi_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_TRUE@am_lssal_module_OBJECTS = commands/efi/lssal_module-lssal.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_i386_efi_FALSE@@COND_ia64_efi_FALSE@@COND_riscv32_efi_TRUE@am_lssal_module_OBJECTS = commands/efi/lssal_module-lssal.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_i386_efi_FALSE@@COND_ia64_efi_TRUE@am_lssal_module_OBJECTS = commands/efi/lssal_module-lssal.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_i386_efi_TRUE@am_lssal_module_OBJECTS = commands/efi/lssal_module-lssal.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_TRUE@am_lssal_module_OBJECTS = commands/efi/lssal_module-lssal.$(OBJEXT) -@COND_arm64_efi_TRUE@am_lssal_module_OBJECTS = commands/efi/lssal_module-lssal.$(OBJEXT) -nodist_lssal_module_OBJECTS = -lssal_module_OBJECTS = $(am_lssal_module_OBJECTS) \ - $(nodist_lssal_module_OBJECTS) -lssal_module_LINK = $(CCLD) $(lssal_module_CFLAGS) $(CFLAGS) \ - $(lssal_module_LDFLAGS) $(LDFLAGS) -o $@ -am__lsspd_module_SOURCES_DIST = commands/mips/loongson/lsspd.c -@COND_mips_loongson_TRUE@am_lsspd_module_OBJECTS = commands/mips/loongson/lsspd_module-lsspd.$(OBJEXT) -nodist_lsspd_module_OBJECTS = -lsspd_module_OBJECTS = $(am_lsspd_module_OBJECTS) \ - $(nodist_lsspd_module_OBJECTS) -lsspd_module_LINK = $(CCLD) $(lsspd_module_CFLAGS) $(CFLAGS) \ - $(lsspd_module_LDFLAGS) $(LDFLAGS) -o $@ -am__lsxen_module_SOURCES_DIST = commands/xen/lsxen.c -@COND_i386_xen_FALSE@@COND_x86_64_xen_TRUE@am_lsxen_module_OBJECTS = commands/xen/lsxen_module-lsxen.$(OBJEXT) -@COND_i386_xen_TRUE@am_lsxen_module_OBJECTS = \ -@COND_i386_xen_TRUE@ commands/xen/lsxen_module-lsxen.$(OBJEXT) -nodist_lsxen_module_OBJECTS = -lsxen_module_OBJECTS = $(am_lsxen_module_OBJECTS) \ - $(nodist_lsxen_module_OBJECTS) -lsxen_module_LINK = $(CCLD) $(lsxen_module_CFLAGS) $(CFLAGS) \ - $(lsxen_module_LDFLAGS) $(LDFLAGS) -o $@ -am_luks_module_OBJECTS = disk/luks_module-luks.$(OBJEXT) \ - disk/luks_module-AFSplitter.$(OBJEXT) -nodist_luks_module_OBJECTS = -luks_module_OBJECTS = $(am_luks_module_OBJECTS) \ - $(nodist_luks_module_OBJECTS) -luks_module_LINK = $(CCLD) $(luks_module_CFLAGS) $(CFLAGS) \ - $(luks_module_LDFLAGS) $(LDFLAGS) -o $@ -am_lvm_module_OBJECTS = disk/lvm_module-lvm.$(OBJEXT) -nodist_lvm_module_OBJECTS = -lvm_module_OBJECTS = $(am_lvm_module_OBJECTS) \ - $(nodist_lvm_module_OBJECTS) -lvm_module_LINK = $(CCLD) $(lvm_module_CFLAGS) $(CFLAGS) \ - $(lvm_module_LDFLAGS) $(LDFLAGS) -o $@ -am__lzma_decompress_image_SOURCES_DIST = boot/i386/pc/startup_raw.S -@COND_i386_pc_TRUE@am_lzma_decompress_image_OBJECTS = boot/i386/pc/lzma_decompress_image-startup_raw.$(OBJEXT) -nodist_lzma_decompress_image_OBJECTS = -lzma_decompress_image_OBJECTS = $(am_lzma_decompress_image_OBJECTS) \ - $(nodist_lzma_decompress_image_OBJECTS) -lzma_decompress_image_DEPENDENCIES = -lzma_decompress_image_LINK = $(CCLD) $(lzma_decompress_image_CFLAGS) \ - $(CFLAGS) $(lzma_decompress_image_LDFLAGS) $(LDFLAGS) -o $@ -am_lzopio_module_OBJECTS = io/lzopio_module-lzopio.$(OBJEXT) \ - lib/minilzo/lzopio_module-minilzo.$(OBJEXT) -nodist_lzopio_module_OBJECTS = -lzopio_module_OBJECTS = $(am_lzopio_module_OBJECTS) \ - $(nodist_lzopio_module_OBJECTS) -lzopio_module_LINK = $(CCLD) $(lzopio_module_CFLAGS) $(CFLAGS) \ - $(lzopio_module_LDFLAGS) $(LDFLAGS) -o $@ -am_macbless_module_OBJECTS = \ - commands/macbless_module-macbless.$(OBJEXT) -nodist_macbless_module_OBJECTS = -macbless_module_OBJECTS = $(am_macbless_module_OBJECTS) \ - $(nodist_macbless_module_OBJECTS) -macbless_module_LINK = $(CCLD) $(macbless_module_CFLAGS) $(CFLAGS) \ - $(macbless_module_LDFLAGS) $(LDFLAGS) -o $@ -am_macho_module_OBJECTS = loader/macho_module-macho.$(OBJEXT) \ - loader/macho_module-macho32.$(OBJEXT) \ - loader/macho_module-macho64.$(OBJEXT) \ - loader/macho_module-lzss.$(OBJEXT) -nodist_macho_module_OBJECTS = -macho_module_OBJECTS = $(am_macho_module_OBJECTS) \ - $(nodist_macho_module_OBJECTS) -macho_module_LINK = $(CCLD) $(macho_module_CFLAGS) $(CFLAGS) \ - $(macho_module_LDFLAGS) $(LDFLAGS) -o $@ -am__mda_text_module_SOURCES_DIST = term/i386/pc/mda_text.c -@COND_i386_coreboot_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_TRUE@am_mda_text_module_OBJECTS = term/i386/pc/mda_text_module-mda_text.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@am_mda_text_module_OBJECTS = term/i386/pc/mda_text_module-mda_text.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_multiboot_TRUE@am_mda_text_module_OBJECTS = term/i386/pc/mda_text_module-mda_text.$(OBJEXT) -@COND_i386_coreboot_TRUE@am_mda_text_module_OBJECTS = term/i386/pc/mda_text_module-mda_text.$(OBJEXT) -nodist_mda_text_module_OBJECTS = -mda_text_module_OBJECTS = $(am_mda_text_module_OBJECTS) \ - $(nodist_mda_text_module_OBJECTS) -mda_text_module_LINK = $(CCLD) $(mda_text_module_CFLAGS) $(CFLAGS) \ - $(mda_text_module_LDFLAGS) $(LDFLAGS) -o $@ -am_mdraid09_module_OBJECTS = \ - disk/mdraid09_module-mdraid_linux.$(OBJEXT) -nodist_mdraid09_module_OBJECTS = -mdraid09_module_OBJECTS = $(am_mdraid09_module_OBJECTS) \ - $(nodist_mdraid09_module_OBJECTS) -mdraid09_module_LINK = $(CCLD) $(mdraid09_module_CFLAGS) $(CFLAGS) \ - $(mdraid09_module_LDFLAGS) $(LDFLAGS) -o $@ -am_mdraid09_be_module_OBJECTS = \ - disk/mdraid09_be_module-mdraid_linux_be.$(OBJEXT) -nodist_mdraid09_be_module_OBJECTS = -mdraid09_be_module_OBJECTS = $(am_mdraid09_be_module_OBJECTS) \ - $(nodist_mdraid09_be_module_OBJECTS) -mdraid09_be_module_LINK = $(CCLD) $(mdraid09_be_module_CFLAGS) \ - $(CFLAGS) $(mdraid09_be_module_LDFLAGS) $(LDFLAGS) -o $@ -am_mdraid1x_module_OBJECTS = \ - disk/mdraid1x_module-mdraid1x_linux.$(OBJEXT) -nodist_mdraid1x_module_OBJECTS = -mdraid1x_module_OBJECTS = $(am_mdraid1x_module_OBJECTS) \ - $(nodist_mdraid1x_module_OBJECTS) -mdraid1x_module_LINK = $(CCLD) $(mdraid1x_module_CFLAGS) $(CFLAGS) \ - $(mdraid1x_module_LDFLAGS) $(LDFLAGS) -o $@ -am_memdisk_module_OBJECTS = disk/memdisk_module-memdisk.$(OBJEXT) -nodist_memdisk_module_OBJECTS = -memdisk_module_OBJECTS = $(am_memdisk_module_OBJECTS) \ - $(nodist_memdisk_module_OBJECTS) -memdisk_module_LINK = $(CCLD) $(memdisk_module_CFLAGS) $(CFLAGS) \ - $(memdisk_module_LDFLAGS) $(LDFLAGS) -o $@ -am_memrw_module_OBJECTS = commands/memrw_module-memrw.$(OBJEXT) -nodist_memrw_module_OBJECTS = -memrw_module_OBJECTS = $(am_memrw_module_OBJECTS) \ - $(nodist_memrw_module_OBJECTS) -memrw_module_LINK = $(CCLD) $(memrw_module_CFLAGS) $(CFLAGS) \ - $(memrw_module_LDFLAGS) $(LDFLAGS) -o $@ -am_minicmd_module_OBJECTS = commands/minicmd_module-minicmd.$(OBJEXT) -nodist_minicmd_module_OBJECTS = -minicmd_module_OBJECTS = $(am_minicmd_module_OBJECTS) \ - $(nodist_minicmd_module_OBJECTS) -minicmd_module_LINK = $(CCLD) $(minicmd_module_CFLAGS) $(CFLAGS) \ - $(minicmd_module_LDFLAGS) $(LDFLAGS) -o $@ -am_minix_module_OBJECTS = fs/minix_module-minix.$(OBJEXT) -nodist_minix_module_OBJECTS = -minix_module_OBJECTS = $(am_minix_module_OBJECTS) \ - $(nodist_minix_module_OBJECTS) -minix_module_LINK = $(CCLD) $(minix_module_CFLAGS) $(CFLAGS) \ - $(minix_module_LDFLAGS) $(LDFLAGS) -o $@ -am_minix2_module_OBJECTS = fs/minix2_module-minix2.$(OBJEXT) -nodist_minix2_module_OBJECTS = -minix2_module_OBJECTS = $(am_minix2_module_OBJECTS) \ - $(nodist_minix2_module_OBJECTS) -minix2_module_LINK = $(CCLD) $(minix2_module_CFLAGS) $(CFLAGS) \ - $(minix2_module_LDFLAGS) $(LDFLAGS) -o $@ -am_minix2_be_module_OBJECTS = fs/minix2_be_module-minix2_be.$(OBJEXT) -nodist_minix2_be_module_OBJECTS = -minix2_be_module_OBJECTS = $(am_minix2_be_module_OBJECTS) \ - $(nodist_minix2_be_module_OBJECTS) -minix2_be_module_LINK = $(CCLD) $(minix2_be_module_CFLAGS) $(CFLAGS) \ - $(minix2_be_module_LDFLAGS) $(LDFLAGS) -o $@ -am_minix3_module_OBJECTS = fs/minix3_module-minix3.$(OBJEXT) -nodist_minix3_module_OBJECTS = -minix3_module_OBJECTS = $(am_minix3_module_OBJECTS) \ - $(nodist_minix3_module_OBJECTS) -minix3_module_LINK = $(CCLD) $(minix3_module_CFLAGS) $(CFLAGS) \ - $(minix3_module_LDFLAGS) $(LDFLAGS) -o $@ -am_minix3_be_module_OBJECTS = fs/minix3_be_module-minix3_be.$(OBJEXT) -nodist_minix3_be_module_OBJECTS = -minix3_be_module_OBJECTS = $(am_minix3_be_module_OBJECTS) \ - $(nodist_minix3_be_module_OBJECTS) -minix3_be_module_LINK = $(CCLD) $(minix3_be_module_CFLAGS) $(CFLAGS) \ - $(minix3_be_module_LDFLAGS) $(LDFLAGS) -o $@ -am_minix_be_module_OBJECTS = fs/minix_be_module-minix_be.$(OBJEXT) -nodist_minix_be_module_OBJECTS = -minix_be_module_OBJECTS = $(am_minix_be_module_OBJECTS) \ - $(nodist_minix_be_module_OBJECTS) -minix_be_module_LINK = $(CCLD) $(minix_be_module_CFLAGS) $(CFLAGS) \ - $(minix_be_module_LDFLAGS) $(LDFLAGS) -o $@ -am__mmap_module_SOURCES_DIST = mmap/efi/mmap.c mmap/mmap.c \ - mmap/i386/uppermem.c mmap/i386/mmap.c mmap/i386/pc/mmap.c \ - mmap/i386/pc/mmap_helper.S mmap/mips/uppermem.c -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_x86_64_efi_TRUE@am_mmap_module_OBJECTS = mmap/i386/mmap_module-uppermem.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_x86_64_efi_TRUE@ mmap/i386/mmap_module-mmap.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_x86_64_efi_TRUE@ mmap/efi/mmap_module-mmap.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_x86_64_efi_TRUE@ mmap/mmap_module-mmap.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_TRUE@am_mmap_module_OBJECTS = mmap/efi/mmap_module-mmap.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_TRUE@ mmap/mmap_module-mmap.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_riscv32_efi_TRUE@am_mmap_module_OBJECTS = mmap/efi/mmap_module-mmap.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_riscv32_efi_TRUE@ mmap/mmap_module-mmap.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_TRUE@am_mmap_module_OBJECTS = mmap/mips/mmap_module-uppermem.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_TRUE@ mmap/mmap_module-mmap.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_TRUE@am_mmap_module_OBJECTS = mmap/mips/mmap_module-uppermem.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_TRUE@ mmap/mmap_module-mmap.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_TRUE@am_mmap_module_OBJECTS = mmap/mips/mmap_module-uppermem.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_TRUE@ mmap/mmap_module-mmap.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_TRUE@am_mmap_module_OBJECTS = mmap/efi/mmap_module-mmap.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_TRUE@ mmap/mmap_module-mmap.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_pvh_TRUE@am_mmap_module_OBJECTS = mmap/i386/mmap_module-uppermem.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_pvh_TRUE@ mmap/i386/mmap_module-mmap.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_pvh_TRUE@ mmap/mmap_module-mmap.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_TRUE@am_mmap_module_OBJECTS = mmap/i386/mmap_module-uppermem.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_TRUE@ mmap/i386/mmap_module-mmap.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_TRUE@ mmap/mmap_module-mmap.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@am_mmap_module_OBJECTS = mmap/i386/pc/mmap_module-mmap.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@ mmap/i386/pc/mmap_module-mmap_helper.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@ mmap/i386/mmap_module-uppermem.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@ mmap/i386/mmap_module-mmap.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@ mmap/mmap_module-mmap.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_TRUE@am_mmap_module_OBJECTS = mmap/i386/mmap_module-uppermem.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_TRUE@ mmap/i386/mmap_module-mmap.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_TRUE@ mmap/mmap_module-mmap.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_TRUE@am_mmap_module_OBJECTS = mmap/i386/mmap_module-uppermem.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_TRUE@ mmap/i386/mmap_module-mmap.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_TRUE@ mmap/mmap_module-mmap.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_TRUE@am_mmap_module_OBJECTS = mmap/i386/mmap_module-uppermem.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_TRUE@ mmap/i386/mmap_module-mmap.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_TRUE@ mmap/efi/mmap_module-mmap.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_TRUE@ mmap/mmap_module-mmap.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_i386_coreboot_TRUE@am_mmap_module_OBJECTS = mmap/i386/mmap_module-uppermem.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_i386_coreboot_TRUE@ mmap/i386/mmap_module-mmap.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_i386_coreboot_TRUE@ mmap/mmap_module-mmap.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_TRUE@am_mmap_module_OBJECTS = mmap/efi/mmap_module-mmap.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_efi_TRUE@ mmap/mmap_module-mmap.$(OBJEXT) -@COND_arm64_efi_TRUE@am_mmap_module_OBJECTS = \ -@COND_arm64_efi_TRUE@ mmap/efi/mmap_module-mmap.$(OBJEXT) \ -@COND_arm64_efi_TRUE@ mmap/mmap_module-mmap.$(OBJEXT) -nodist_mmap_module_OBJECTS = -mmap_module_OBJECTS = $(am_mmap_module_OBJECTS) \ - $(nodist_mmap_module_OBJECTS) -mmap_module_LINK = $(CCLD) $(mmap_module_CFLAGS) $(CFLAGS) \ - $(mmap_module_LDFLAGS) $(LDFLAGS) -o $@ -am__morse_module_SOURCES_DIST = term/morse.c -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_x86_64_efi_TRUE@am_morse_module_OBJECTS = term/morse_module-morse.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_TRUE@am_morse_module_OBJECTS = term/morse_module-morse.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@am_morse_module_OBJECTS = term/morse_module-morse.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_TRUE@am_morse_module_OBJECTS = term/morse_module-morse.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_TRUE@am_morse_module_OBJECTS = term/morse_module-morse.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_TRUE@am_morse_module_OBJECTS = term/morse_module-morse.$(OBJEXT) -@COND_i386_coreboot_TRUE@am_morse_module_OBJECTS = \ -@COND_i386_coreboot_TRUE@ term/morse_module-morse.$(OBJEXT) -nodist_morse_module_OBJECTS = -morse_module_OBJECTS = $(am_morse_module_OBJECTS) \ - $(nodist_morse_module_OBJECTS) -morse_module_LINK = $(CCLD) $(morse_module_CFLAGS) $(CFLAGS) \ - $(morse_module_LDFLAGS) $(LDFLAGS) -o $@ -am_mpi_module_OBJECTS = \ - lib/libgcrypt-grub/mpi/mpi_module-mpiutil.$(OBJEXT) \ - lib/libgcrypt-grub/mpi/mpi_module-mpi-bit.$(OBJEXT) \ - lib/libgcrypt-grub/mpi/mpi_module-mpi-add.$(OBJEXT) \ - lib/libgcrypt-grub/mpi/mpi_module-mpi-mul.$(OBJEXT) \ - lib/libgcrypt-grub/mpi/mpi_module-mpi-mod.$(OBJEXT) \ - lib/libgcrypt-grub/mpi/mpi_module-mpi-gcd.$(OBJEXT) \ - lib/libgcrypt-grub/mpi/mpi_module-mpi-div.$(OBJEXT) \ - lib/libgcrypt-grub/mpi/mpi_module-mpi-cmp.$(OBJEXT) \ - lib/libgcrypt-grub/mpi/mpi_module-mpi-inv.$(OBJEXT) \ - lib/libgcrypt-grub/mpi/mpi_module-mpi-pow.$(OBJEXT) \ - lib/libgcrypt-grub/mpi/mpi_module-mpi-mpow.$(OBJEXT) \ - lib/libgcrypt-grub/mpi/mpi_module-mpih-lshift.$(OBJEXT) \ - lib/libgcrypt-grub/mpi/mpi_module-mpih-mul.$(OBJEXT) \ - lib/libgcrypt-grub/mpi/mpi_module-mpih-mul1.$(OBJEXT) \ - lib/libgcrypt-grub/mpi/mpi_module-mpih-mul2.$(OBJEXT) \ - lib/libgcrypt-grub/mpi/mpi_module-mpih-mul3.$(OBJEXT) \ - lib/libgcrypt-grub/mpi/mpi_module-mpih-add1.$(OBJEXT) \ - lib/libgcrypt-grub/mpi/mpi_module-mpih-sub1.$(OBJEXT) \ - lib/libgcrypt-grub/mpi/mpi_module-mpih-div.$(OBJEXT) \ - lib/libgcrypt-grub/mpi/mpi_module-mpicoder.$(OBJEXT) \ - lib/libgcrypt-grub/mpi/mpi_module-mpih-rshift.$(OBJEXT) \ - lib/libgcrypt-grub/mpi/mpi_module-mpi-inline.$(OBJEXT) \ - lib/libgcrypt_wrap/mpi_module-mem.$(OBJEXT) -nodist_mpi_module_OBJECTS = -mpi_module_OBJECTS = $(am_mpi_module_OBJECTS) \ - $(nodist_mpi_module_OBJECTS) -mpi_module_LINK = $(CCLD) $(mpi_module_CFLAGS) $(CFLAGS) \ - $(mpi_module_LDFLAGS) $(LDFLAGS) -o $@ -am_msdospart_module_OBJECTS = \ - parttool/msdospart_module-msdospart.$(OBJEXT) -nodist_msdospart_module_OBJECTS = -msdospart_module_OBJECTS = $(am_msdospart_module_OBJECTS) \ - $(nodist_msdospart_module_OBJECTS) -msdospart_module_LINK = $(CCLD) $(msdospart_module_CFLAGS) $(CFLAGS) \ - $(msdospart_module_LDFLAGS) $(LDFLAGS) -o $@ -am_mul_test_module_OBJECTS = tests/mul_test_module-mul_test.$(OBJEXT) -nodist_mul_test_module_OBJECTS = -mul_test_module_OBJECTS = $(am_mul_test_module_OBJECTS) \ - $(nodist_mul_test_module_OBJECTS) -mul_test_module_LINK = $(CCLD) $(mul_test_module_CFLAGS) $(CFLAGS) \ - $(mul_test_module_LDFLAGS) $(LDFLAGS) -o $@ -am__multiboot_module_SOURCES_DIST = loader/i386/multiboot_mbi.c \ - loader/multiboot.c -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_pvh_FALSE@@COND_x86_64_efi_TRUE@am_multiboot_module_OBJECTS = loader/i386/multiboot_module-multiboot_mbi.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_pvh_FALSE@@COND_x86_64_efi_TRUE@ loader/multiboot_module-multiboot.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_pvh_TRUE@am_multiboot_module_OBJECTS = loader/i386/multiboot_module-multiboot_mbi.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_pvh_TRUE@ loader/multiboot_module-multiboot.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_TRUE@am_multiboot_module_OBJECTS = loader/i386/multiboot_module-multiboot_mbi.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_TRUE@ loader/multiboot_module-multiboot.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@am_multiboot_module_OBJECTS = loader/i386/multiboot_module-multiboot_mbi.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@ loader/multiboot_module-multiboot.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_TRUE@am_multiboot_module_OBJECTS = loader/i386/multiboot_module-multiboot_mbi.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_TRUE@ loader/multiboot_module-multiboot.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_TRUE@am_multiboot_module_OBJECTS = loader/i386/multiboot_module-multiboot_mbi.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_TRUE@ loader/multiboot_module-multiboot.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_TRUE@am_multiboot_module_OBJECTS = loader/i386/multiboot_module-multiboot_mbi.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_efi_TRUE@ loader/multiboot_module-multiboot.$(OBJEXT) -@COND_i386_coreboot_TRUE@am_multiboot_module_OBJECTS = loader/i386/multiboot_module-multiboot_mbi.$(OBJEXT) \ -@COND_i386_coreboot_TRUE@ loader/multiboot_module-multiboot.$(OBJEXT) -nodist_multiboot_module_OBJECTS = -multiboot_module_OBJECTS = $(am_multiboot_module_OBJECTS) \ - $(nodist_multiboot_module_OBJECTS) -multiboot_module_LINK = $(CCLD) $(multiboot_module_CFLAGS) $(CFLAGS) \ - $(multiboot_module_LDFLAGS) $(LDFLAGS) -o $@ -am__multiboot2_module_SOURCES_DIST = loader/multiboot.c \ - loader/multiboot_mbi2.c -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_pvh_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_x86_64_efi_TRUE@am_multiboot2_module_OBJECTS = loader/multiboot2_module-multiboot.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_pvh_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_x86_64_efi_TRUE@ loader/multiboot2_module-multiboot_mbi2.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_pvh_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_TRUE@am_multiboot2_module_OBJECTS = loader/multiboot2_module-multiboot.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_pvh_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_TRUE@ loader/multiboot2_module-multiboot_mbi2.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_pvh_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_TRUE@am_multiboot2_module_OBJECTS = loader/multiboot2_module-multiboot.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_pvh_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_TRUE@ loader/multiboot2_module-multiboot_mbi2.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_pvh_FALSE@@COND_mips_arc_TRUE@am_multiboot2_module_OBJECTS = loader/multiboot2_module-multiboot.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_pvh_FALSE@@COND_mips_arc_TRUE@ loader/multiboot2_module-multiboot_mbi2.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_pvh_TRUE@am_multiboot2_module_OBJECTS = loader/multiboot2_module-multiboot.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_pvh_TRUE@ loader/multiboot2_module-multiboot_mbi2.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_TRUE@am_multiboot2_module_OBJECTS = loader/multiboot2_module-multiboot.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_TRUE@ loader/multiboot2_module-multiboot_mbi2.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@am_multiboot2_module_OBJECTS = loader/multiboot2_module-multiboot.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@ loader/multiboot2_module-multiboot_mbi2.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_TRUE@am_multiboot2_module_OBJECTS = loader/multiboot2_module-multiboot.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_TRUE@ loader/multiboot2_module-multiboot_mbi2.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_TRUE@am_multiboot2_module_OBJECTS = loader/multiboot2_module-multiboot.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_TRUE@ loader/multiboot2_module-multiboot_mbi2.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_TRUE@am_multiboot2_module_OBJECTS = loader/multiboot2_module-multiboot.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_efi_TRUE@ loader/multiboot2_module-multiboot_mbi2.$(OBJEXT) -@COND_i386_coreboot_TRUE@am_multiboot2_module_OBJECTS = loader/multiboot2_module-multiboot.$(OBJEXT) \ -@COND_i386_coreboot_TRUE@ loader/multiboot2_module-multiboot_mbi2.$(OBJEXT) -nodist_multiboot2_module_OBJECTS = -multiboot2_module_OBJECTS = $(am_multiboot2_module_OBJECTS) \ - $(nodist_multiboot2_module_OBJECTS) -multiboot2_module_LINK = $(CCLD) $(multiboot2_module_CFLAGS) $(CFLAGS) \ - $(multiboot2_module_LDFLAGS) $(LDFLAGS) -o $@ -am__nand_module_SOURCES_DIST = disk/ieee1275/nand.c -@COND_i386_ieee1275_TRUE@am_nand_module_OBJECTS = disk/ieee1275/nand_module-nand.$(OBJEXT) -nodist_nand_module_OBJECTS = -nand_module_OBJECTS = $(am_nand_module_OBJECTS) \ - $(nodist_nand_module_OBJECTS) -nand_module_LINK = $(CCLD) $(nand_module_CFLAGS) $(CFLAGS) \ - $(nand_module_LDFLAGS) $(LDFLAGS) -o $@ -am__nativedisk_module_SOURCES_DIST = commands/nativedisk.c -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_x86_64_efi_TRUE@am_nativedisk_module_OBJECTS = commands/nativedisk_module-nativedisk.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_TRUE@am_nativedisk_module_OBJECTS = commands/nativedisk_module-nativedisk.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_mips_loongson_TRUE@am_nativedisk_module_OBJECTS = commands/nativedisk_module-nativedisk.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_TRUE@am_nativedisk_module_OBJECTS = commands/nativedisk_module-nativedisk.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@am_nativedisk_module_OBJECTS = commands/nativedisk_module-nativedisk.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_TRUE@am_nativedisk_module_OBJECTS = commands/nativedisk_module-nativedisk.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_TRUE@am_nativedisk_module_OBJECTS = commands/nativedisk_module-nativedisk.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_TRUE@am_nativedisk_module_OBJECTS = commands/nativedisk_module-nativedisk.$(OBJEXT) -@COND_i386_coreboot_TRUE@am_nativedisk_module_OBJECTS = commands/nativedisk_module-nativedisk.$(OBJEXT) -nodist_nativedisk_module_OBJECTS = -nativedisk_module_OBJECTS = $(am_nativedisk_module_OBJECTS) \ - $(nodist_nativedisk_module_OBJECTS) -nativedisk_module_LINK = $(CCLD) $(nativedisk_module_CFLAGS) $(CFLAGS) \ - $(nativedisk_module_LDFLAGS) $(LDFLAGS) -o $@ -am_net_module_OBJECTS = net/net_module-net.$(OBJEXT) \ - net/net_module-dns.$(OBJEXT) net/net_module-bootp.$(OBJEXT) \ - net/net_module-ip.$(OBJEXT) net/net_module-udp.$(OBJEXT) \ - net/net_module-tcp.$(OBJEXT) net/net_module-icmp.$(OBJEXT) \ - net/net_module-icmp6.$(OBJEXT) \ - net/net_module-ethernet.$(OBJEXT) net/net_module-arp.$(OBJEXT) \ - net/net_module-netbuff.$(OBJEXT) -nodist_net_module_OBJECTS = -net_module_OBJECTS = $(am_net_module_OBJECTS) \ - $(nodist_net_module_OBJECTS) -net_module_LINK = $(CCLD) $(net_module_CFLAGS) $(CFLAGS) \ - $(net_module_LDFLAGS) $(LDFLAGS) -o $@ -am_newc_module_OBJECTS = fs/newc_module-newc.$(OBJEXT) -nodist_newc_module_OBJECTS = -newc_module_OBJECTS = $(am_newc_module_OBJECTS) \ - $(nodist_newc_module_OBJECTS) -newc_module_LINK = $(CCLD) $(newc_module_CFLAGS) $(CFLAGS) \ - $(newc_module_LDFLAGS) $(LDFLAGS) -o $@ -am_nilfs2_module_OBJECTS = fs/nilfs2_module-nilfs2.$(OBJEXT) -nodist_nilfs2_module_OBJECTS = -nilfs2_module_OBJECTS = $(am_nilfs2_module_OBJECTS) \ - $(nodist_nilfs2_module_OBJECTS) -nilfs2_module_LINK = $(CCLD) $(nilfs2_module_CFLAGS) $(CFLAGS) \ - $(nilfs2_module_LDFLAGS) $(LDFLAGS) -o $@ -am__none_decompress_image_SOURCES_DIST = boot/mips/startup_raw.S \ - boot/decompressor/none.c -@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_TRUE@am_none_decompress_image_OBJECTS = boot/mips/none_decompress_image-startup_raw.$(OBJEXT) \ -@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_TRUE@ boot/decompressor/none_decompress_image-none.$(OBJEXT) -@COND_mips_arc_FALSE@@COND_mips_loongson_TRUE@am_none_decompress_image_OBJECTS = boot/mips/none_decompress_image-startup_raw.$(OBJEXT) \ -@COND_mips_arc_FALSE@@COND_mips_loongson_TRUE@ boot/decompressor/none_decompress_image-none.$(OBJEXT) -@COND_mips_arc_TRUE@am_none_decompress_image_OBJECTS = boot/mips/none_decompress_image-startup_raw.$(OBJEXT) \ -@COND_mips_arc_TRUE@ boot/decompressor/none_decompress_image-none.$(OBJEXT) -nodist_none_decompress_image_OBJECTS = -none_decompress_image_OBJECTS = $(am_none_decompress_image_OBJECTS) \ - $(nodist_none_decompress_image_OBJECTS) -none_decompress_image_DEPENDENCIES = -none_decompress_image_LINK = $(CCLD) $(none_decompress_image_CFLAGS) \ - $(CFLAGS) $(none_decompress_image_LDFLAGS) $(LDFLAGS) -o $@ -am_normal_module_OBJECTS = normal/normal_module-main.$(OBJEXT) \ - normal/normal_module-cmdline.$(OBJEXT) \ - normal/normal_module-dyncmd.$(OBJEXT) \ - normal/normal_module-auth.$(OBJEXT) \ - normal/normal_module-autofs.$(OBJEXT) \ - normal/normal_module-color.$(OBJEXT) \ - normal/normal_module-completion.$(OBJEXT) \ - normal/normal_module-datetime.$(OBJEXT) \ - normal/normal_module-menu.$(OBJEXT) \ - normal/normal_module-menu_entry.$(OBJEXT) \ - normal/normal_module-menu_text.$(OBJEXT) \ - normal/normal_module-misc.$(OBJEXT) \ - normal/normal_module-crypto.$(OBJEXT) \ - normal/normal_module-term.$(OBJEXT) \ - normal/normal_module-context.$(OBJEXT) \ - normal/normal_module-charset.$(OBJEXT) \ - lib/normal_module-getline.$(OBJEXT) \ - script/normal_module-main.$(OBJEXT) \ - script/normal_module-script.$(OBJEXT) \ - script/normal_module-execute.$(OBJEXT) \ - script/normal_module-function.$(OBJEXT) \ - script/normal_module-lexer.$(OBJEXT) \ - script/normal_module-argv.$(OBJEXT) \ - commands/normal_module-menuentry.$(OBJEXT) \ - normal_module-unidata.$(OBJEXT) -nodist_normal_module_OBJECTS = \ - normal_module-grub_script.tab.$(OBJEXT) \ - normal_module-grub_script.yy.$(OBJEXT) -normal_module_OBJECTS = $(am_normal_module_OBJECTS) \ - $(nodist_normal_module_OBJECTS) -normal_module_LINK = $(CCLD) $(normal_module_CFLAGS) $(CFLAGS) \ - $(normal_module_LDFLAGS) $(LDFLAGS) -o $@ -am_ntfs_module_OBJECTS = fs/ntfs_module-ntfs.$(OBJEXT) -nodist_ntfs_module_OBJECTS = -ntfs_module_OBJECTS = $(am_ntfs_module_OBJECTS) \ - $(nodist_ntfs_module_OBJECTS) -ntfs_module_LINK = $(CCLD) $(ntfs_module_CFLAGS) $(CFLAGS) \ - $(ntfs_module_LDFLAGS) $(LDFLAGS) -o $@ -am_ntfscomp_module_OBJECTS = fs/ntfscomp_module-ntfscomp.$(OBJEXT) -nodist_ntfscomp_module_OBJECTS = -ntfscomp_module_OBJECTS = $(am_ntfscomp_module_OBJECTS) \ - $(nodist_ntfscomp_module_OBJECTS) -ntfscomp_module_LINK = $(CCLD) $(ntfscomp_module_CFLAGS) $(CFLAGS) \ - $(ntfscomp_module_LDFLAGS) $(LDFLAGS) -o $@ -am__ntldr_module_SOURCES_DIST = loader/i386/pc/ntldr.c -@COND_i386_pc_TRUE@am_ntldr_module_OBJECTS = loader/i386/pc/ntldr_module-ntldr.$(OBJEXT) -nodist_ntldr_module_OBJECTS = -ntldr_module_OBJECTS = $(am_ntldr_module_OBJECTS) \ - $(nodist_ntldr_module_OBJECTS) -ntldr_module_LINK = $(CCLD) $(ntldr_module_CFLAGS) $(CFLAGS) \ - $(ntldr_module_LDFLAGS) $(LDFLAGS) -o $@ -am_odc_module_OBJECTS = fs/odc_module-odc.$(OBJEXT) -nodist_odc_module_OBJECTS = -odc_module_OBJECTS = $(am_odc_module_OBJECTS) \ - $(nodist_odc_module_OBJECTS) -odc_module_LINK = $(CCLD) $(odc_module_CFLAGS) $(CFLAGS) \ - $(odc_module_LDFLAGS) $(LDFLAGS) -o $@ -am_offsetio_module_OBJECTS = io/offsetio_module-offset.$(OBJEXT) -nodist_offsetio_module_OBJECTS = -offsetio_module_OBJECTS = $(am_offsetio_module_OBJECTS) \ - $(nodist_offsetio_module_OBJECTS) -offsetio_module_LINK = $(CCLD) $(offsetio_module_CFLAGS) $(CFLAGS) \ - $(offsetio_module_LDFLAGS) $(LDFLAGS) -o $@ -am__ofnet_module_SOURCES_DIST = net/drivers/ieee1275/ofnet.c -@COND_i386_ieee1275_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_sparc64_ieee1275_TRUE@am_ofnet_module_OBJECTS = net/drivers/ieee1275/ofnet_module-ofnet.$(OBJEXT) -@COND_i386_ieee1275_FALSE@@COND_powerpc_ieee1275_TRUE@am_ofnet_module_OBJECTS = net/drivers/ieee1275/ofnet_module-ofnet.$(OBJEXT) -@COND_i386_ieee1275_TRUE@am_ofnet_module_OBJECTS = net/drivers/ieee1275/ofnet_module-ofnet.$(OBJEXT) -nodist_ofnet_module_OBJECTS = -ofnet_module_OBJECTS = $(am_ofnet_module_OBJECTS) \ - $(nodist_ofnet_module_OBJECTS) -ofnet_module_LINK = $(CCLD) $(ofnet_module_CFLAGS) $(CFLAGS) \ - $(ofnet_module_LDFLAGS) $(LDFLAGS) -o $@ -am__ohci_module_SOURCES_DIST = bus/usb/ohci.c -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_mips_loongson_FALSE@@COND_x86_64_efi_TRUE@am_ohci_module_OBJECTS = bus/usb/ohci_module-ohci.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_mips_loongson_TRUE@am_ohci_module_OBJECTS = bus/usb/ohci_module-ohci.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_TRUE@am_ohci_module_OBJECTS = bus/usb/ohci_module-ohci.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@am_ohci_module_OBJECTS = bus/usb/ohci_module-ohci.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_TRUE@am_ohci_module_OBJECTS = bus/usb/ohci_module-ohci.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_TRUE@am_ohci_module_OBJECTS = bus/usb/ohci_module-ohci.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_TRUE@am_ohci_module_OBJECTS = bus/usb/ohci_module-ohci.$(OBJEXT) -@COND_i386_coreboot_TRUE@am_ohci_module_OBJECTS = \ -@COND_i386_coreboot_TRUE@ bus/usb/ohci_module-ohci.$(OBJEXT) -nodist_ohci_module_OBJECTS = -ohci_module_OBJECTS = $(am_ohci_module_OBJECTS) \ - $(nodist_ohci_module_OBJECTS) -ohci_module_LINK = $(CCLD) $(ohci_module_CFLAGS) $(CFLAGS) \ - $(ohci_module_LDFLAGS) $(LDFLAGS) -o $@ -am_part_acorn_module_OBJECTS = \ - partmap/part_acorn_module-acorn.$(OBJEXT) -nodist_part_acorn_module_OBJECTS = -part_acorn_module_OBJECTS = $(am_part_acorn_module_OBJECTS) \ - $(nodist_part_acorn_module_OBJECTS) -part_acorn_module_LINK = $(CCLD) $(part_acorn_module_CFLAGS) $(CFLAGS) \ - $(part_acorn_module_LDFLAGS) $(LDFLAGS) -o $@ -am_part_amiga_module_OBJECTS = \ - partmap/part_amiga_module-amiga.$(OBJEXT) -nodist_part_amiga_module_OBJECTS = -part_amiga_module_OBJECTS = $(am_part_amiga_module_OBJECTS) \ - $(nodist_part_amiga_module_OBJECTS) -part_amiga_module_LINK = $(CCLD) $(part_amiga_module_CFLAGS) $(CFLAGS) \ - $(part_amiga_module_LDFLAGS) $(LDFLAGS) -o $@ -am_part_apple_module_OBJECTS = \ - partmap/part_apple_module-apple.$(OBJEXT) -nodist_part_apple_module_OBJECTS = -part_apple_module_OBJECTS = $(am_part_apple_module_OBJECTS) \ - $(nodist_part_apple_module_OBJECTS) -part_apple_module_LINK = $(CCLD) $(part_apple_module_CFLAGS) $(CFLAGS) \ - $(part_apple_module_LDFLAGS) $(LDFLAGS) -o $@ -am_part_bsd_module_OBJECTS = \ - partmap/part_bsd_module-bsdlabel.$(OBJEXT) -nodist_part_bsd_module_OBJECTS = -part_bsd_module_OBJECTS = $(am_part_bsd_module_OBJECTS) \ - $(nodist_part_bsd_module_OBJECTS) -part_bsd_module_LINK = $(CCLD) $(part_bsd_module_CFLAGS) $(CFLAGS) \ - $(part_bsd_module_LDFLAGS) $(LDFLAGS) -o $@ -am_part_dfly_module_OBJECTS = partmap/part_dfly_module-dfly.$(OBJEXT) -nodist_part_dfly_module_OBJECTS = -part_dfly_module_OBJECTS = $(am_part_dfly_module_OBJECTS) \ - $(nodist_part_dfly_module_OBJECTS) -part_dfly_module_LINK = $(CCLD) $(part_dfly_module_CFLAGS) $(CFLAGS) \ - $(part_dfly_module_LDFLAGS) $(LDFLAGS) -o $@ -am_part_dvh_module_OBJECTS = partmap/part_dvh_module-dvh.$(OBJEXT) -nodist_part_dvh_module_OBJECTS = -part_dvh_module_OBJECTS = $(am_part_dvh_module_OBJECTS) \ - $(nodist_part_dvh_module_OBJECTS) -part_dvh_module_LINK = $(CCLD) $(part_dvh_module_CFLAGS) $(CFLAGS) \ - $(part_dvh_module_LDFLAGS) $(LDFLAGS) -o $@ -am_part_gpt_module_OBJECTS = partmap/part_gpt_module-gpt.$(OBJEXT) -nodist_part_gpt_module_OBJECTS = -part_gpt_module_OBJECTS = $(am_part_gpt_module_OBJECTS) \ - $(nodist_part_gpt_module_OBJECTS) -part_gpt_module_LINK = $(CCLD) $(part_gpt_module_CFLAGS) $(CFLAGS) \ - $(part_gpt_module_LDFLAGS) $(LDFLAGS) -o $@ -am_part_msdos_module_OBJECTS = \ - partmap/part_msdos_module-msdos.$(OBJEXT) -nodist_part_msdos_module_OBJECTS = -part_msdos_module_OBJECTS = $(am_part_msdos_module_OBJECTS) \ - $(nodist_part_msdos_module_OBJECTS) -part_msdos_module_LINK = $(CCLD) $(part_msdos_module_CFLAGS) $(CFLAGS) \ - $(part_msdos_module_LDFLAGS) $(LDFLAGS) -o $@ -am_part_plan_module_OBJECTS = partmap/part_plan_module-plan.$(OBJEXT) -nodist_part_plan_module_OBJECTS = -part_plan_module_OBJECTS = $(am_part_plan_module_OBJECTS) \ - $(nodist_part_plan_module_OBJECTS) -part_plan_module_LINK = $(CCLD) $(part_plan_module_CFLAGS) $(CFLAGS) \ - $(part_plan_module_LDFLAGS) $(LDFLAGS) -o $@ -am_part_sun_module_OBJECTS = partmap/part_sun_module-sun.$(OBJEXT) -nodist_part_sun_module_OBJECTS = -part_sun_module_OBJECTS = $(am_part_sun_module_OBJECTS) \ - $(nodist_part_sun_module_OBJECTS) -part_sun_module_LINK = $(CCLD) $(part_sun_module_CFLAGS) $(CFLAGS) \ - $(part_sun_module_LDFLAGS) $(LDFLAGS) -o $@ -am_part_sunpc_module_OBJECTS = \ - partmap/part_sunpc_module-sunpc.$(OBJEXT) -nodist_part_sunpc_module_OBJECTS = -part_sunpc_module_OBJECTS = $(am_part_sunpc_module_OBJECTS) \ - $(nodist_part_sunpc_module_OBJECTS) -part_sunpc_module_LINK = $(CCLD) $(part_sunpc_module_CFLAGS) $(CFLAGS) \ - $(part_sunpc_module_LDFLAGS) $(LDFLAGS) -o $@ -am_parttool_module_OBJECTS = \ - commands/parttool_module-parttool.$(OBJEXT) -nodist_parttool_module_OBJECTS = -parttool_module_OBJECTS = $(am_parttool_module_OBJECTS) \ - $(nodist_parttool_module_OBJECTS) -parttool_module_LINK = $(CCLD) $(parttool_module_CFLAGS) $(CFLAGS) \ - $(parttool_module_LDFLAGS) $(LDFLAGS) -o $@ -am_password_module_OBJECTS = \ - commands/password_module-password.$(OBJEXT) -nodist_password_module_OBJECTS = -password_module_OBJECTS = $(am_password_module_OBJECTS) \ - $(nodist_password_module_OBJECTS) -password_module_LINK = $(CCLD) $(password_module_CFLAGS) $(CFLAGS) \ - $(password_module_LDFLAGS) $(LDFLAGS) -o $@ -am_password_pbkdf2_module_OBJECTS = \ - commands/password_pbkdf2_module-password_pbkdf2.$(OBJEXT) -nodist_password_pbkdf2_module_OBJECTS = -password_pbkdf2_module_OBJECTS = $(am_password_pbkdf2_module_OBJECTS) \ - $(nodist_password_pbkdf2_module_OBJECTS) -password_pbkdf2_module_LINK = $(CCLD) $(password_pbkdf2_module_CFLAGS) \ - $(CFLAGS) $(password_pbkdf2_module_LDFLAGS) $(LDFLAGS) -o $@ -am__pata_module_SOURCES_DIST = disk/pata.c -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_x86_64_efi_TRUE@am_pata_module_OBJECTS = disk/pata_module-pata.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_TRUE@am_pata_module_OBJECTS = disk/pata_module-pata.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_mips_loongson_TRUE@am_pata_module_OBJECTS = disk/pata_module-pata.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_TRUE@am_pata_module_OBJECTS = disk/pata_module-pata.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@am_pata_module_OBJECTS = disk/pata_module-pata.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_TRUE@am_pata_module_OBJECTS = disk/pata_module-pata.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_TRUE@am_pata_module_OBJECTS = disk/pata_module-pata.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_TRUE@am_pata_module_OBJECTS = disk/pata_module-pata.$(OBJEXT) -@COND_i386_coreboot_TRUE@am_pata_module_OBJECTS = \ -@COND_i386_coreboot_TRUE@ disk/pata_module-pata.$(OBJEXT) -nodist_pata_module_OBJECTS = -pata_module_OBJECTS = $(am_pata_module_OBJECTS) \ - $(nodist_pata_module_OBJECTS) -pata_module_LINK = $(CCLD) $(pata_module_CFLAGS) $(CFLAGS) \ - $(pata_module_LDFLAGS) $(LDFLAGS) -o $@ -am_pbkdf2_module_OBJECTS = lib/pbkdf2_module-pbkdf2.$(OBJEXT) -nodist_pbkdf2_module_OBJECTS = -pbkdf2_module_OBJECTS = $(am_pbkdf2_module_OBJECTS) \ - $(nodist_pbkdf2_module_OBJECTS) -pbkdf2_module_LINK = $(CCLD) $(pbkdf2_module_CFLAGS) $(CFLAGS) \ - $(pbkdf2_module_LDFLAGS) $(LDFLAGS) -o $@ -am_pbkdf2_test_module_OBJECTS = \ - tests/pbkdf2_test_module-pbkdf2_test.$(OBJEXT) -nodist_pbkdf2_test_module_OBJECTS = -pbkdf2_test_module_OBJECTS = $(am_pbkdf2_test_module_OBJECTS) \ - $(nodist_pbkdf2_test_module_OBJECTS) -pbkdf2_test_module_LINK = $(CCLD) $(pbkdf2_test_module_CFLAGS) \ - $(CFLAGS) $(pbkdf2_test_module_LDFLAGS) $(LDFLAGS) -o $@ -am__pci_module_SOURCES_DIST = bus/pci.c bus/i386/ieee1275/pci.c -@COND_i386_coreboot_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@am_pci_module_OBJECTS = bus/pci_module-pci.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_TRUE@am_pci_module_OBJECTS = bus/pci_module-pci.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_ieee1275_TRUE@am_pci_module_OBJECTS = bus/i386/ieee1275/pci_module-pci.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_ieee1275_TRUE@ bus/pci_module-pci.$(OBJEXT) -@COND_i386_coreboot_TRUE@am_pci_module_OBJECTS = \ -@COND_i386_coreboot_TRUE@ bus/pci_module-pci.$(OBJEXT) -nodist_pci_module_OBJECTS = -pci_module_OBJECTS = $(am_pci_module_OBJECTS) \ - $(nodist_pci_module_OBJECTS) -pci_module_LINK = $(CCLD) $(pci_module_CFLAGS) $(CFLAGS) \ - $(pci_module_LDFLAGS) $(LDFLAGS) -o $@ -am__pcidump_module_SOURCES_DIST = commands/pcidump.c -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_mips_loongson_FALSE@@COND_x86_64_efi_TRUE@am_pcidump_module_OBJECTS = commands/pcidump_module-pcidump.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_mips_loongson_TRUE@am_pcidump_module_OBJECTS = commands/pcidump_module-pcidump.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_TRUE@am_pcidump_module_OBJECTS = commands/pcidump_module-pcidump.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@am_pcidump_module_OBJECTS = commands/pcidump_module-pcidump.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_TRUE@am_pcidump_module_OBJECTS = commands/pcidump_module-pcidump.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_TRUE@am_pcidump_module_OBJECTS = commands/pcidump_module-pcidump.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_TRUE@am_pcidump_module_OBJECTS = commands/pcidump_module-pcidump.$(OBJEXT) -@COND_i386_coreboot_TRUE@am_pcidump_module_OBJECTS = commands/pcidump_module-pcidump.$(OBJEXT) -nodist_pcidump_module_OBJECTS = -pcidump_module_OBJECTS = $(am_pcidump_module_OBJECTS) \ - $(nodist_pcidump_module_OBJECTS) -pcidump_module_LINK = $(CCLD) $(pcidump_module_CFLAGS) $(CFLAGS) \ - $(pcidump_module_LDFLAGS) $(LDFLAGS) -o $@ -am_pgp_module_OBJECTS = commands/pgp_module-pgp.$(OBJEXT) -nodist_pgp_module_OBJECTS = -pgp_module_OBJECTS = $(am_pgp_module_OBJECTS) \ - $(nodist_pgp_module_OBJECTS) -pgp_module_LINK = $(CCLD) $(pgp_module_CFLAGS) $(CFLAGS) \ - $(pgp_module_LDFLAGS) $(LDFLAGS) -o $@ -am__plan9_module_SOURCES_DIST = loader/i386/pc/plan9.c -@COND_i386_pc_TRUE@am_plan9_module_OBJECTS = loader/i386/pc/plan9_module-plan9.$(OBJEXT) -nodist_plan9_module_OBJECTS = -plan9_module_OBJECTS = $(am_plan9_module_OBJECTS) \ - $(nodist_plan9_module_OBJECTS) -plan9_module_LINK = $(CCLD) $(plan9_module_CFLAGS) $(CFLAGS) \ - $(plan9_module_LDFLAGS) $(LDFLAGS) -o $@ -am__play_module_SOURCES_DIST = commands/i386/pc/play.c -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_x86_64_efi_TRUE@am_play_module_OBJECTS = commands/i386/pc/play_module-play.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_TRUE@am_play_module_OBJECTS = commands/i386/pc/play_module-play.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@am_play_module_OBJECTS = commands/i386/pc/play_module-play.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_TRUE@am_play_module_OBJECTS = commands/i386/pc/play_module-play.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_TRUE@am_play_module_OBJECTS = commands/i386/pc/play_module-play.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_TRUE@am_play_module_OBJECTS = commands/i386/pc/play_module-play.$(OBJEXT) -@COND_i386_coreboot_TRUE@am_play_module_OBJECTS = commands/i386/pc/play_module-play.$(OBJEXT) -nodist_play_module_OBJECTS = -play_module_OBJECTS = $(am_play_module_OBJECTS) \ - $(nodist_play_module_OBJECTS) -play_module_LINK = $(CCLD) $(play_module_CFLAGS) $(CFLAGS) \ - $(play_module_LDFLAGS) $(LDFLAGS) -o $@ -am_png_module_OBJECTS = video/readers/png_module-png.$(OBJEXT) -nodist_png_module_OBJECTS = -png_module_OBJECTS = $(am_png_module_OBJECTS) \ - $(nodist_png_module_OBJECTS) -png_module_LINK = $(CCLD) $(png_module_CFLAGS) $(CFLAGS) \ - $(png_module_LDFLAGS) $(LDFLAGS) -o $@ -am_priority_queue_module_OBJECTS = \ - lib/priority_queue_module-priority_queue.$(OBJEXT) -nodist_priority_queue_module_OBJECTS = -priority_queue_module_OBJECTS = $(am_priority_queue_module_OBJECTS) \ - $(nodist_priority_queue_module_OBJECTS) -priority_queue_module_LINK = $(CCLD) $(priority_queue_module_CFLAGS) \ - $(CFLAGS) $(priority_queue_module_LDFLAGS) $(LDFLAGS) -o $@ -am_probe_module_OBJECTS = commands/probe_module-probe.$(OBJEXT) -nodist_probe_module_OBJECTS = -probe_module_OBJECTS = $(am_probe_module_OBJECTS) \ - $(nodist_probe_module_OBJECTS) -probe_module_LINK = $(CCLD) $(probe_module_CFLAGS) $(CFLAGS) \ - $(probe_module_LDFLAGS) $(LDFLAGS) -o $@ -am_procfs_module_OBJECTS = fs/procfs_module-proc.$(OBJEXT) -nodist_procfs_module_OBJECTS = -procfs_module_OBJECTS = $(am_procfs_module_OBJECTS) \ - $(nodist_procfs_module_OBJECTS) -procfs_module_LINK = $(CCLD) $(procfs_module_CFLAGS) $(CFLAGS) \ - $(procfs_module_LDFLAGS) $(LDFLAGS) -o $@ -am_progress_module_OBJECTS = lib/progress_module-progress.$(OBJEXT) -nodist_progress_module_OBJECTS = -progress_module_OBJECTS = $(am_progress_module_OBJECTS) \ - $(nodist_progress_module_OBJECTS) -progress_module_LINK = $(CCLD) $(progress_module_CFLAGS) $(CFLAGS) \ - $(progress_module_LDFLAGS) $(LDFLAGS) -o $@ -am__pxe_module_SOURCES_DIST = net/drivers/i386/pc/pxe.c -@COND_i386_pc_TRUE@am_pxe_module_OBJECTS = net/drivers/i386/pc/pxe_module-pxe.$(OBJEXT) -nodist_pxe_module_OBJECTS = -pxe_module_OBJECTS = $(am_pxe_module_OBJECTS) \ - $(nodist_pxe_module_OBJECTS) -pxe_module_LINK = $(CCLD) $(pxe_module_CFLAGS) $(CFLAGS) \ - $(pxe_module_LDFLAGS) $(LDFLAGS) -o $@ -am__pxeboot_image_SOURCES_DIST = boot/i386/pc/pxeboot.S -@COND_i386_pc_TRUE@am_pxeboot_image_OBJECTS = boot/i386/pc/pxeboot_image-pxeboot.$(OBJEXT) -nodist_pxeboot_image_OBJECTS = -pxeboot_image_OBJECTS = $(am_pxeboot_image_OBJECTS) \ - $(nodist_pxeboot_image_OBJECTS) -pxeboot_image_DEPENDENCIES = -pxeboot_image_LINK = $(CCLD) $(pxeboot_image_CFLAGS) $(CFLAGS) \ - $(pxeboot_image_LDFLAGS) $(LDFLAGS) -o $@ -am__pxechain_module_SOURCES_DIST = loader/i386/pc/pxechainloader.c -@COND_i386_pc_TRUE@am_pxechain_module_OBJECTS = loader/i386/pc/pxechain_module-pxechainloader.$(OBJEXT) -nodist_pxechain_module_OBJECTS = -pxechain_module_OBJECTS = $(am_pxechain_module_OBJECTS) \ - $(nodist_pxechain_module_OBJECTS) -pxechain_module_LINK = $(CCLD) $(pxechain_module_CFLAGS) $(CFLAGS) \ - $(pxechain_module_LDFLAGS) $(LDFLAGS) -o $@ -am_raid5rec_module_OBJECTS = \ - disk/raid5rec_module-raid5_recover.$(OBJEXT) -nodist_raid5rec_module_OBJECTS = -raid5rec_module_OBJECTS = $(am_raid5rec_module_OBJECTS) \ - $(nodist_raid5rec_module_OBJECTS) -raid5rec_module_LINK = $(CCLD) $(raid5rec_module_CFLAGS) $(CFLAGS) \ - $(raid5rec_module_LDFLAGS) $(LDFLAGS) -o $@ -am_raid6rec_module_OBJECTS = \ - disk/raid6rec_module-raid6_recover.$(OBJEXT) -nodist_raid6rec_module_OBJECTS = -raid6rec_module_OBJECTS = $(am_raid6rec_module_OBJECTS) \ - $(nodist_raid6rec_module_OBJECTS) -raid6rec_module_LINK = $(CCLD) $(raid6rec_module_CFLAGS) $(CFLAGS) \ - $(raid6rec_module_LDFLAGS) $(LDFLAGS) -o $@ -am__random_module_SOURCES_DIST = kern/i386/tsc_pmtimer.c \ - lib/i386/random.c lib/random.c -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_x86_64_efi_TRUE@am_random_module_OBJECTS = lib/i386/random_module-random.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_x86_64_efi_TRUE@ lib/random_module-random.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@am_random_module_OBJECTS = kern/i386/random_module-tsc_pmtimer.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@ lib/i386/random_module-random.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@ lib/random_module-random.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_multiboot_TRUE@am_random_module_OBJECTS = kern/i386/random_module-tsc_pmtimer.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_multiboot_TRUE@ lib/i386/random_module-random.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_multiboot_TRUE@ lib/random_module-random.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_TRUE@am_random_module_OBJECTS = lib/i386/random_module-random.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_efi_TRUE@ lib/random_module-random.$(OBJEXT) -@COND_i386_coreboot_TRUE@am_random_module_OBJECTS = kern/i386/random_module-tsc_pmtimer.$(OBJEXT) \ -@COND_i386_coreboot_TRUE@ lib/i386/random_module-random.$(OBJEXT) \ -@COND_i386_coreboot_TRUE@ lib/random_module-random.$(OBJEXT) -nodist_random_module_OBJECTS = -random_module_OBJECTS = $(am_random_module_OBJECTS) \ - $(nodist_random_module_OBJECTS) -random_module_LINK = $(CCLD) $(random_module_CFLAGS) $(CFLAGS) \ - $(random_module_LDFLAGS) $(LDFLAGS) -o $@ -am__rdmsr_module_SOURCES_DIST = commands/i386/rdmsr.c -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_x86_64_efi_TRUE@am_rdmsr_module_OBJECTS = commands/i386/rdmsr_module-rdmsr.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_TRUE@am_rdmsr_module_OBJECTS = commands/i386/rdmsr_module-rdmsr.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@am_rdmsr_module_OBJECTS = commands/i386/rdmsr_module-rdmsr.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_TRUE@am_rdmsr_module_OBJECTS = commands/i386/rdmsr_module-rdmsr.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_TRUE@am_rdmsr_module_OBJECTS = commands/i386/rdmsr_module-rdmsr.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_TRUE@am_rdmsr_module_OBJECTS = commands/i386/rdmsr_module-rdmsr.$(OBJEXT) -@COND_i386_coreboot_TRUE@am_rdmsr_module_OBJECTS = commands/i386/rdmsr_module-rdmsr.$(OBJEXT) -nodist_rdmsr_module_OBJECTS = -rdmsr_module_OBJECTS = $(am_rdmsr_module_OBJECTS) \ - $(nodist_rdmsr_module_OBJECTS) -rdmsr_module_LINK = $(CCLD) $(rdmsr_module_CFLAGS) $(CFLAGS) \ - $(rdmsr_module_LDFLAGS) $(LDFLAGS) -o $@ -am_read_module_OBJECTS = commands/read_module-read.$(OBJEXT) -nodist_read_module_OBJECTS = -read_module_OBJECTS = $(am_read_module_OBJECTS) \ - $(nodist_read_module_OBJECTS) -read_module_LINK = $(CCLD) $(read_module_CFLAGS) $(CFLAGS) \ - $(read_module_LDFLAGS) $(LDFLAGS) -o $@ -am__reboot_module_SOURCES_DIST = commands/reboot.c lib/dummy/reboot.c \ - lib/uboot/reboot.c lib/i386/reboot.c \ - lib/i386/reboot_trampoline.S lib/xen/reboot.c \ - lib/mips/arc/reboot.c lib/mips/loongson/reboot.c \ - lib/mips/qemu_mips/reboot.c lib/ieee1275/reboot.c -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_FALSE@@COND_x86_64_efi_FALSE@@COND_x86_64_xen_TRUE@am_reboot_module_OBJECTS = lib/xen/reboot_module-reboot.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_FALSE@@COND_x86_64_efi_FALSE@@COND_x86_64_xen_TRUE@ commands/reboot_module-reboot.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_FALSE@@COND_x86_64_efi_TRUE@am_reboot_module_OBJECTS = commands/reboot_module-reboot.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_TRUE@am_reboot_module_OBJECTS = lib/ieee1275/reboot_module-reboot.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_TRUE@ commands/reboot_module-reboot.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_TRUE@am_reboot_module_OBJECTS = commands/reboot_module-reboot.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_TRUE@am_reboot_module_OBJECTS = commands/reboot_module-reboot.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_TRUE@am_reboot_module_OBJECTS = lib/ieee1275/reboot_module-reboot.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_TRUE@ commands/reboot_module-reboot.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_TRUE@am_reboot_module_OBJECTS = lib/mips/qemu_mips/reboot_module-reboot.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_TRUE@ commands/reboot_module-reboot.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_TRUE@am_reboot_module_OBJECTS = lib/mips/loongson/reboot_module-reboot.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_TRUE@ commands/reboot_module-reboot.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_TRUE@am_reboot_module_OBJECTS = lib/mips/arc/reboot_module-reboot.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_TRUE@ commands/reboot_module-reboot.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_TRUE@am_reboot_module_OBJECTS = commands/reboot_module-reboot.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_TRUE@am_reboot_module_OBJECTS = lib/xen/reboot_module-reboot.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_TRUE@ commands/reboot_module-reboot.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_TRUE@am_reboot_module_OBJECTS = lib/xen/reboot_module-reboot.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_TRUE@ commands/reboot_module-reboot.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_TRUE@am_reboot_module_OBJECTS = lib/i386/reboot_module-reboot.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_TRUE@ lib/i386/reboot_module-reboot_trampoline.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_TRUE@ commands/reboot_module-reboot.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@am_reboot_module_OBJECTS = lib/i386/reboot_module-reboot.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@ lib/i386/reboot_module-reboot_trampoline.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@ commands/reboot_module-reboot.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_TRUE@am_reboot_module_OBJECTS = lib/i386/reboot_module-reboot.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_TRUE@ lib/i386/reboot_module-reboot_trampoline.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_TRUE@ commands/reboot_module-reboot.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_TRUE@am_reboot_module_OBJECTS = lib/i386/reboot_module-reboot.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_TRUE@ lib/i386/reboot_module-reboot_trampoline.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_TRUE@ commands/reboot_module-reboot.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_TRUE@am_reboot_module_OBJECTS = lib/i386/reboot_module-reboot.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_TRUE@ lib/i386/reboot_module-reboot_trampoline.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_TRUE@ commands/reboot_module-reboot.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_TRUE@am_reboot_module_OBJECTS = lib/i386/reboot_module-reboot.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_TRUE@ lib/i386/reboot_module-reboot_trampoline.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_coreboot_TRUE@ commands/reboot_module-reboot.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_TRUE@am_reboot_module_OBJECTS = commands/reboot_module-reboot.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_TRUE@am_reboot_module_OBJECTS = lib/uboot/reboot_module-reboot.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_TRUE@ commands/reboot_module-reboot.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_TRUE@am_reboot_module_OBJECTS = commands/reboot_module-reboot.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_TRUE@am_reboot_module_OBJECTS = lib/dummy/reboot_module-reboot.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_TRUE@ commands/reboot_module-reboot.$(OBJEXT) -@COND_arm64_efi_TRUE@am_reboot_module_OBJECTS = \ -@COND_arm64_efi_TRUE@ commands/reboot_module-reboot.$(OBJEXT) -nodist_reboot_module_OBJECTS = -reboot_module_OBJECTS = $(am_reboot_module_OBJECTS) \ - $(nodist_reboot_module_OBJECTS) -reboot_module_LINK = $(CCLD) $(reboot_module_CFLAGS) $(CFLAGS) \ - $(reboot_module_LDFLAGS) $(LDFLAGS) -o $@ -am_regexp_module_OBJECTS = commands/regexp_module-regexp.$(OBJEXT) \ - commands/regexp_module-wildcard.$(OBJEXT) \ - lib/gnulib/regexp_module-regex.$(OBJEXT) -nodist_regexp_module_OBJECTS = -regexp_module_OBJECTS = $(am_regexp_module_OBJECTS) \ - $(nodist_regexp_module_OBJECTS) -regexp_module_LINK = $(CCLD) $(regexp_module_CFLAGS) $(CFLAGS) \ - $(regexp_module_LDFLAGS) $(LDFLAGS) -o $@ -am_reiserfs_module_OBJECTS = fs/reiserfs_module-reiserfs.$(OBJEXT) -nodist_reiserfs_module_OBJECTS = -reiserfs_module_OBJECTS = $(am_reiserfs_module_OBJECTS) \ - $(nodist_reiserfs_module_OBJECTS) -reiserfs_module_LINK = $(CCLD) $(reiserfs_module_CFLAGS) $(CFLAGS) \ - $(reiserfs_module_LDFLAGS) $(LDFLAGS) -o $@ -am__relocator_module_SOURCES_DIST = lib/i386/relocator_asm.S \ - lib/i386/relocator16.S lib/i386/relocator32.S \ - lib/i386/relocator64.S lib/i386/relocator.c \ - lib/i386/relocator_common_c.c lib/relocator.c \ - lib/efi/relocator.c lib/ieee1275/relocator.c \ - lib/i386/xen/relocator.S lib/xen/relocator.c \ - lib/mips/relocator_asm.S lib/mips/relocator.c \ - lib/powerpc/relocator_asm.S lib/powerpc/relocator.c \ - lib/x86_64/efi/relocator.c lib/x86_64/relocator_asm.S \ - lib/x86_64/xen/relocator.S -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_x86_64_efi_FALSE@@COND_x86_64_xen_TRUE@am_relocator_module_OBJECTS = lib/x86_64/relocator_module-relocator_asm.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_x86_64_efi_FALSE@@COND_x86_64_xen_TRUE@ lib/x86_64/xen/relocator_module-relocator.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_x86_64_efi_FALSE@@COND_x86_64_xen_TRUE@ lib/xen/relocator_module-relocator.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_x86_64_efi_FALSE@@COND_x86_64_xen_TRUE@ lib/i386/relocator_module-relocator_common_c.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_x86_64_efi_FALSE@@COND_x86_64_xen_TRUE@ lib/relocator_module-relocator.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_x86_64_efi_TRUE@am_relocator_module_OBJECTS = lib/x86_64/efi/relocator_module-relocator.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_x86_64_efi_TRUE@ lib/x86_64/relocator_module-relocator_asm.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_x86_64_efi_TRUE@ lib/i386/relocator_module-relocator16.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_x86_64_efi_TRUE@ lib/i386/relocator_module-relocator32.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_x86_64_efi_TRUE@ lib/i386/relocator_module-relocator64.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_x86_64_efi_TRUE@ lib/i386/relocator_module-relocator.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_x86_64_efi_TRUE@ lib/i386/relocator_module-relocator_common_c.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_x86_64_efi_TRUE@ lib/efi/relocator_module-relocator.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_x86_64_efi_TRUE@ lib/relocator_module-relocator.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_TRUE@am_relocator_module_OBJECTS = lib/powerpc/relocator_module-relocator_asm.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_TRUE@ lib/powerpc/relocator_module-relocator.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_TRUE@ lib/ieee1275/relocator_module-relocator.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_TRUE@ lib/relocator_module-relocator.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_TRUE@am_relocator_module_OBJECTS = lib/mips/relocator_module-relocator_asm.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_TRUE@ lib/mips/relocator_module-relocator.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_TRUE@ lib/relocator_module-relocator.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_TRUE@am_relocator_module_OBJECTS = lib/mips/relocator_module-relocator_asm.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_TRUE@ lib/mips/relocator_module-relocator.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_mips_arc_FALSE@@COND_mips_loongson_TRUE@ lib/relocator_module-relocator.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_mips_arc_TRUE@am_relocator_module_OBJECTS = lib/mips/relocator_module-relocator_asm.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_mips_arc_TRUE@ lib/mips/relocator_module-relocator.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_mips_arc_TRUE@ lib/relocator_module-relocator.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_TRUE@am_relocator_module_OBJECTS = lib/i386/relocator_module-relocator16.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_TRUE@ lib/i386/relocator_module-relocator32.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_TRUE@ lib/i386/relocator_module-relocator64.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_TRUE@ lib/i386/relocator_module-relocator_asm.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_TRUE@ lib/i386/relocator_module-relocator.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_TRUE@ lib/i386/relocator_module-relocator_common_c.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_TRUE@ lib/relocator_module-relocator.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_TRUE@am_relocator_module_OBJECTS = lib/i386/relocator_module-relocator_asm.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_TRUE@ lib/i386/xen/relocator_module-relocator.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_TRUE@ lib/xen/relocator_module-relocator.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_TRUE@ lib/i386/relocator_module-relocator_common_c.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_TRUE@ lib/relocator_module-relocator.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_TRUE@am_relocator_module_OBJECTS = lib/i386/relocator_module-relocator_asm.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_TRUE@ lib/i386/relocator_module-relocator16.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_TRUE@ lib/i386/relocator_module-relocator32.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_TRUE@ lib/i386/relocator_module-relocator64.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_TRUE@ lib/i386/relocator_module-relocator.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_TRUE@ lib/i386/relocator_module-relocator_common_c.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_TRUE@ lib/relocator_module-relocator.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@am_relocator_module_OBJECTS = lib/i386/relocator_module-relocator_asm.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@ lib/i386/relocator_module-relocator16.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@ lib/i386/relocator_module-relocator32.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@ lib/i386/relocator_module-relocator64.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@ lib/i386/relocator_module-relocator.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@ lib/i386/relocator_module-relocator_common_c.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@ lib/relocator_module-relocator.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_TRUE@am_relocator_module_OBJECTS = lib/i386/relocator_module-relocator_asm.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_TRUE@ lib/i386/relocator_module-relocator16.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_TRUE@ lib/i386/relocator_module-relocator32.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_TRUE@ lib/i386/relocator_module-relocator64.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_TRUE@ lib/i386/relocator_module-relocator.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_TRUE@ lib/i386/relocator_module-relocator_common_c.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_TRUE@ lib/relocator_module-relocator.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_TRUE@am_relocator_module_OBJECTS = lib/ieee1275/relocator_module-relocator.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_TRUE@ lib/i386/relocator_module-relocator_asm.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_TRUE@ lib/i386/relocator_module-relocator16.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_TRUE@ lib/i386/relocator_module-relocator32.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_TRUE@ lib/i386/relocator_module-relocator64.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_TRUE@ lib/i386/relocator_module-relocator.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_TRUE@ lib/i386/relocator_module-relocator_common_c.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_TRUE@ lib/relocator_module-relocator.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_TRUE@am_relocator_module_OBJECTS = lib/i386/relocator_module-relocator_asm.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_efi_TRUE@ lib/i386/relocator_module-relocator16.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_efi_TRUE@ lib/i386/relocator_module-relocator32.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_efi_TRUE@ lib/i386/relocator_module-relocator64.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_efi_TRUE@ lib/i386/relocator_module-relocator.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_efi_TRUE@ lib/i386/relocator_module-relocator_common_c.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_efi_TRUE@ lib/efi/relocator_module-relocator.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_efi_TRUE@ lib/relocator_module-relocator.$(OBJEXT) -@COND_i386_coreboot_TRUE@am_relocator_module_OBJECTS = lib/i386/relocator_module-relocator_asm.$(OBJEXT) \ -@COND_i386_coreboot_TRUE@ lib/i386/relocator_module-relocator16.$(OBJEXT) \ -@COND_i386_coreboot_TRUE@ lib/i386/relocator_module-relocator32.$(OBJEXT) \ -@COND_i386_coreboot_TRUE@ lib/i386/relocator_module-relocator64.$(OBJEXT) \ -@COND_i386_coreboot_TRUE@ lib/i386/relocator_module-relocator.$(OBJEXT) \ -@COND_i386_coreboot_TRUE@ lib/i386/relocator_module-relocator_common_c.$(OBJEXT) \ -@COND_i386_coreboot_TRUE@ lib/relocator_module-relocator.$(OBJEXT) -nodist_relocator_module_OBJECTS = -relocator_module_OBJECTS = $(am_relocator_module_OBJECTS) \ - $(nodist_relocator_module_OBJECTS) -relocator_module_LINK = $(CCLD) $(relocator_module_CFLAGS) $(CFLAGS) \ - $(relocator_module_LDFLAGS) $(LDFLAGS) -o $@ -am_romfs_module_OBJECTS = fs/romfs_module-romfs.$(OBJEXT) -nodist_romfs_module_OBJECTS = -romfs_module_OBJECTS = $(am_romfs_module_OBJECTS) \ - $(nodist_romfs_module_OBJECTS) -romfs_module_LINK = $(CCLD) $(romfs_module_CFLAGS) $(CFLAGS) \ - $(romfs_module_LDFLAGS) $(LDFLAGS) -o $@ -am_scsi_module_OBJECTS = disk/scsi_module-scsi.$(OBJEXT) -nodist_scsi_module_OBJECTS = -scsi_module_OBJECTS = $(am_scsi_module_OBJECTS) \ - $(nodist_scsi_module_OBJECTS) -scsi_module_LINK = $(CCLD) $(scsi_module_CFLAGS) $(CFLAGS) \ - $(scsi_module_LDFLAGS) $(LDFLAGS) -o $@ -am__sdl_module_SOURCES_DIST = video/emu/sdl.c -@COND_GRUB_EMU_SDL_TRUE@@COND_emu_TRUE@am_sdl_module_OBJECTS = video/emu/sdl_module-sdl.$(OBJEXT) -nodist_sdl_module_OBJECTS = -sdl_module_OBJECTS = $(am_sdl_module_OBJECTS) \ - $(nodist_sdl_module_OBJECTS) -sdl_module_LINK = $(CCLD) $(sdl_module_CFLAGS) $(CFLAGS) \ - $(sdl_module_LDFLAGS) $(LDFLAGS) -o $@ -am_search_module_OBJECTS = \ - commands/search_module-search_wrap.$(OBJEXT) -nodist_search_module_OBJECTS = -search_module_OBJECTS = $(am_search_module_OBJECTS) \ - $(nodist_search_module_OBJECTS) -search_module_LINK = $(CCLD) $(search_module_CFLAGS) $(CFLAGS) \ - $(search_module_LDFLAGS) $(LDFLAGS) -o $@ -am_search_fs_file_module_OBJECTS = \ - commands/search_fs_file_module-search_file.$(OBJEXT) -nodist_search_fs_file_module_OBJECTS = -search_fs_file_module_OBJECTS = $(am_search_fs_file_module_OBJECTS) \ - $(nodist_search_fs_file_module_OBJECTS) -search_fs_file_module_LINK = $(CCLD) $(search_fs_file_module_CFLAGS) \ - $(CFLAGS) $(search_fs_file_module_LDFLAGS) $(LDFLAGS) -o $@ -am_search_fs_uuid_module_OBJECTS = \ - commands/search_fs_uuid_module-search_uuid.$(OBJEXT) -nodist_search_fs_uuid_module_OBJECTS = -search_fs_uuid_module_OBJECTS = $(am_search_fs_uuid_module_OBJECTS) \ - $(nodist_search_fs_uuid_module_OBJECTS) -search_fs_uuid_module_LINK = $(CCLD) $(search_fs_uuid_module_CFLAGS) \ - $(CFLAGS) $(search_fs_uuid_module_LDFLAGS) $(LDFLAGS) -o $@ -am_search_label_module_OBJECTS = \ - commands/search_label_module-search_label.$(OBJEXT) -nodist_search_label_module_OBJECTS = -search_label_module_OBJECTS = $(am_search_label_module_OBJECTS) \ - $(nodist_search_label_module_OBJECTS) -search_label_module_LINK = $(CCLD) $(search_label_module_CFLAGS) \ - $(CFLAGS) $(search_label_module_LDFLAGS) $(LDFLAGS) -o $@ -am__sendkey_module_SOURCES_DIST = commands/i386/pc/sendkey.c -@COND_i386_pc_TRUE@am_sendkey_module_OBJECTS = commands/i386/pc/sendkey_module-sendkey.$(OBJEXT) -nodist_sendkey_module_OBJECTS = -sendkey_module_OBJECTS = $(am_sendkey_module_OBJECTS) \ - $(nodist_sendkey_module_OBJECTS) -sendkey_module_LINK = $(CCLD) $(sendkey_module_CFLAGS) $(CFLAGS) \ - $(sendkey_module_LDFLAGS) $(LDFLAGS) -o $@ -am__serial_module_SOURCES_DIST = term/efi/serial.c term/serial.c \ - term/ns8250.c term/ieee1275/serial.c term/arc/serial.c -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_FALSE@@COND_x86_64_efi_TRUE@am_serial_module_OBJECTS = term/serial_module-ns8250.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_FALSE@@COND_x86_64_efi_TRUE@ term/efi/serial_module-serial.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_FALSE@@COND_x86_64_efi_TRUE@ term/serial_module-serial.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_TRUE@am_serial_module_OBJECTS = term/ieee1275/serial_module-serial.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_TRUE@ term/serial_module-serial.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_TRUE@am_serial_module_OBJECTS = term/efi/serial_module-serial.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_TRUE@ term/serial_module-serial.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_TRUE@am_serial_module_OBJECTS = term/efi/serial_module-serial.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_TRUE@ term/serial_module-serial.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_powerpc_ieee1275_TRUE@am_serial_module_OBJECTS = term/ieee1275/serial_module-serial.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_powerpc_ieee1275_TRUE@ term/serial_module-serial.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_TRUE@am_serial_module_OBJECTS = term/arc/serial_module-serial.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_TRUE@ term/serial_module-serial.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_ia64_efi_TRUE@am_serial_module_OBJECTS = term/efi/serial_module-serial.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_ia64_efi_TRUE@ term/serial_module-serial.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_TRUE@am_serial_module_OBJECTS = term/serial_module-ns8250.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_TRUE@ term/serial_module-serial.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@am_serial_module_OBJECTS = term/serial_module-ns8250.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@ term/serial_module-serial.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_TRUE@am_serial_module_OBJECTS = term/serial_module-ns8250.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_TRUE@ term/serial_module-serial.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_TRUE@am_serial_module_OBJECTS = term/ieee1275/serial_module-serial.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_TRUE@ term/serial_module-ns8250.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_TRUE@ term/serial_module-serial.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_TRUE@am_serial_module_OBJECTS = term/serial_module-ns8250.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_TRUE@ term/efi/serial_module-serial.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_TRUE@ term/serial_module-serial.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_i386_coreboot_TRUE@am_serial_module_OBJECTS = term/serial_module-ns8250.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_i386_coreboot_TRUE@ term/serial_module-serial.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_TRUE@am_serial_module_OBJECTS = term/efi/serial_module-serial.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_TRUE@ term/serial_module-serial.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_TRUE@am_serial_module_OBJECTS = term/serial_module-serial.$(OBJEXT) -@COND_arm64_efi_TRUE@am_serial_module_OBJECTS = \ -@COND_arm64_efi_TRUE@ term/efi/serial_module-serial.$(OBJEXT) \ -@COND_arm64_efi_TRUE@ term/serial_module-serial.$(OBJEXT) -nodist_serial_module_OBJECTS = -serial_module_OBJECTS = $(am_serial_module_OBJECTS) \ - $(nodist_serial_module_OBJECTS) -serial_module_LINK = $(CCLD) $(serial_module_CFLAGS) $(CFLAGS) \ - $(serial_module_LDFLAGS) $(LDFLAGS) -o $@ -am_setjmp_module_OBJECTS = lib/setjmp_module-setjmp.$(OBJEXT) -nodist_setjmp_module_OBJECTS = -setjmp_module_OBJECTS = $(am_setjmp_module_OBJECTS) \ - $(nodist_setjmp_module_OBJECTS) -setjmp_module_LINK = $(CCLD) $(setjmp_module_CFLAGS) $(CFLAGS) \ - $(setjmp_module_LDFLAGS) $(LDFLAGS) -o $@ -am_setjmp_test_module_OBJECTS = \ - tests/setjmp_test_module-setjmp_test.$(OBJEXT) -nodist_setjmp_test_module_OBJECTS = -setjmp_test_module_OBJECTS = $(am_setjmp_test_module_OBJECTS) \ - $(nodist_setjmp_test_module_OBJECTS) -setjmp_test_module_LINK = $(CCLD) $(setjmp_test_module_CFLAGS) \ - $(CFLAGS) $(setjmp_test_module_LDFLAGS) $(LDFLAGS) -o $@ -am__setpci_module_SOURCES_DIST = commands/setpci.c -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_mips_loongson_FALSE@@COND_x86_64_efi_TRUE@am_setpci_module_OBJECTS = commands/setpci_module-setpci.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_mips_loongson_TRUE@am_setpci_module_OBJECTS = commands/setpci_module-setpci.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_TRUE@am_setpci_module_OBJECTS = commands/setpci_module-setpci.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@am_setpci_module_OBJECTS = commands/setpci_module-setpci.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_TRUE@am_setpci_module_OBJECTS = commands/setpci_module-setpci.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_TRUE@am_setpci_module_OBJECTS = commands/setpci_module-setpci.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_TRUE@am_setpci_module_OBJECTS = commands/setpci_module-setpci.$(OBJEXT) -@COND_i386_coreboot_TRUE@am_setpci_module_OBJECTS = commands/setpci_module-setpci.$(OBJEXT) -nodist_setpci_module_OBJECTS = -setpci_module_OBJECTS = $(am_setpci_module_OBJECTS) \ - $(nodist_setpci_module_OBJECTS) -setpci_module_LINK = $(CCLD) $(setpci_module_CFLAGS) $(CFLAGS) \ - $(setpci_module_LDFLAGS) $(LDFLAGS) -o $@ -am_sfs_module_OBJECTS = fs/sfs_module-sfs.$(OBJEXT) -nodist_sfs_module_OBJECTS = -sfs_module_OBJECTS = $(am_sfs_module_OBJECTS) \ - $(nodist_sfs_module_OBJECTS) -sfs_module_LINK = $(CCLD) $(sfs_module_CFLAGS) $(CFLAGS) \ - $(sfs_module_LDFLAGS) $(LDFLAGS) -o $@ -am_shift_test_module_OBJECTS = \ - tests/shift_test_module-shift_test.$(OBJEXT) -nodist_shift_test_module_OBJECTS = -shift_test_module_OBJECTS = $(am_shift_test_module_OBJECTS) \ - $(nodist_shift_test_module_OBJECTS) -shift_test_module_LINK = $(CCLD) $(shift_test_module_CFLAGS) $(CFLAGS) \ - $(shift_test_module_LDFLAGS) $(LDFLAGS) -o $@ -am__shim_lock_module_SOURCES_DIST = commands/efi/shim_lock.c -@COND_x86_64_efi_TRUE@am_shim_lock_module_OBJECTS = commands/efi/shim_lock_module-shim_lock.$(OBJEXT) -nodist_shim_lock_module_OBJECTS = -shim_lock_module_OBJECTS = $(am_shim_lock_module_OBJECTS) \ - $(nodist_shim_lock_module_OBJECTS) -shim_lock_module_LINK = $(CCLD) $(shim_lock_module_CFLAGS) $(CFLAGS) \ - $(shim_lock_module_LDFLAGS) $(LDFLAGS) -o $@ -am_signature_test_module_OBJECTS = \ - tests/signature_test_module-signature_test.$(OBJEXT) -nodist_signature_test_module_OBJECTS = -signature_test_module_OBJECTS = $(am_signature_test_module_OBJECTS) \ - $(nodist_signature_test_module_OBJECTS) -signature_test_module_LINK = $(CCLD) $(signature_test_module_CFLAGS) \ - $(CFLAGS) $(signature_test_module_LDFLAGS) $(LDFLAGS) -o $@ -am_sleep_module_OBJECTS = commands/sleep_module-sleep.$(OBJEXT) -nodist_sleep_module_OBJECTS = -sleep_module_OBJECTS = $(am_sleep_module_OBJECTS) \ - $(nodist_sleep_module_OBJECTS) -sleep_module_LINK = $(CCLD) $(sleep_module_CFLAGS) $(CFLAGS) \ - $(sleep_module_LDFLAGS) $(LDFLAGS) -o $@ -am_sleep_test_module_OBJECTS = \ - tests/sleep_test_module-sleep_test.$(OBJEXT) -nodist_sleep_test_module_OBJECTS = -sleep_test_module_OBJECTS = $(am_sleep_test_module_OBJECTS) \ - $(nodist_sleep_test_module_OBJECTS) -sleep_test_module_LINK = $(CCLD) $(sleep_test_module_CFLAGS) $(CFLAGS) \ - $(sleep_test_module_LDFLAGS) $(LDFLAGS) -o $@ -am__spkmodem_module_SOURCES_DIST = term/spkmodem.c -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_x86_64_efi_TRUE@am_spkmodem_module_OBJECTS = term/spkmodem_module-spkmodem.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_TRUE@am_spkmodem_module_OBJECTS = term/spkmodem_module-spkmodem.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@am_spkmodem_module_OBJECTS = term/spkmodem_module-spkmodem.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_TRUE@am_spkmodem_module_OBJECTS = term/spkmodem_module-spkmodem.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_TRUE@am_spkmodem_module_OBJECTS = term/spkmodem_module-spkmodem.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_TRUE@am_spkmodem_module_OBJECTS = term/spkmodem_module-spkmodem.$(OBJEXT) -@COND_i386_coreboot_TRUE@am_spkmodem_module_OBJECTS = term/spkmodem_module-spkmodem.$(OBJEXT) -nodist_spkmodem_module_OBJECTS = -spkmodem_module_OBJECTS = $(am_spkmodem_module_OBJECTS) \ - $(nodist_spkmodem_module_OBJECTS) -spkmodem_module_LINK = $(CCLD) $(spkmodem_module_CFLAGS) $(CFLAGS) \ - $(spkmodem_module_LDFLAGS) $(LDFLAGS) -o $@ -am_squash4_module_OBJECTS = fs/squash4_module-squash4.$(OBJEXT) -nodist_squash4_module_OBJECTS = -squash4_module_OBJECTS = $(am_squash4_module_OBJECTS) \ - $(nodist_squash4_module_OBJECTS) -squash4_module_LINK = $(CCLD) $(squash4_module_CFLAGS) $(CFLAGS) \ - $(squash4_module_LDFLAGS) $(LDFLAGS) -o $@ -am_strtoull_test_module_OBJECTS = \ - tests/strtoull_test_module-strtoull_test.$(OBJEXT) -nodist_strtoull_test_module_OBJECTS = -strtoull_test_module_OBJECTS = $(am_strtoull_test_module_OBJECTS) \ - $(nodist_strtoull_test_module_OBJECTS) -strtoull_test_module_LINK = $(CCLD) $(strtoull_test_module_CFLAGS) \ - $(CFLAGS) $(strtoull_test_module_LDFLAGS) $(LDFLAGS) -o $@ -am__suspend_module_SOURCES_DIST = commands/ieee1275/suspend.c -@COND_i386_ieee1275_FALSE@@COND_powerpc_ieee1275_TRUE@am_suspend_module_OBJECTS = commands/ieee1275/suspend_module-suspend.$(OBJEXT) -@COND_i386_ieee1275_TRUE@am_suspend_module_OBJECTS = commands/ieee1275/suspend_module-suspend.$(OBJEXT) -nodist_suspend_module_OBJECTS = -suspend_module_OBJECTS = $(am_suspend_module_OBJECTS) \ - $(nodist_suspend_module_OBJECTS) -suspend_module_LINK = $(CCLD) $(suspend_module_CFLAGS) $(CFLAGS) \ - $(suspend_module_LDFLAGS) $(LDFLAGS) -o $@ -am_syslinuxcfg_module_OBJECTS = \ - lib/syslinuxcfg_module-syslinux_parse.$(OBJEXT) \ - commands/syslinuxcfg_module-syslinuxcfg.$(OBJEXT) -nodist_syslinuxcfg_module_OBJECTS = -syslinuxcfg_module_OBJECTS = $(am_syslinuxcfg_module_OBJECTS) \ - $(nodist_syslinuxcfg_module_OBJECTS) -syslinuxcfg_module_LINK = $(CCLD) $(syslinuxcfg_module_CFLAGS) \ - $(CFLAGS) $(syslinuxcfg_module_LDFLAGS) $(LDFLAGS) -o $@ -am_tar_module_OBJECTS = fs/tar_module-tar.$(OBJEXT) -nodist_tar_module_OBJECTS = -tar_module_OBJECTS = $(am_tar_module_OBJECTS) \ - $(nodist_tar_module_OBJECTS) -tar_module_LINK = $(CCLD) $(tar_module_CFLAGS) $(CFLAGS) \ - $(tar_module_LDFLAGS) $(LDFLAGS) -o $@ -am_terminal_module_OBJECTS = \ - commands/terminal_module-terminal.$(OBJEXT) -nodist_terminal_module_OBJECTS = -terminal_module_OBJECTS = $(am_terminal_module_OBJECTS) \ - $(nodist_terminal_module_OBJECTS) -terminal_module_LINK = $(CCLD) $(terminal_module_CFLAGS) $(CFLAGS) \ - $(terminal_module_LDFLAGS) $(LDFLAGS) -o $@ -am__terminfo_module_SOURCES_DIST = term/terminfo.c term/tparm.c -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_ia64_efi_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_x86_64_efi_TRUE@am_terminfo_module_OBJECTS = term/terminfo_module-terminfo.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_ia64_efi_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_x86_64_efi_TRUE@ term/terminfo_module-tparm.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_ia64_efi_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_TRUE@am_terminfo_module_OBJECTS = term/terminfo_module-terminfo.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_ia64_efi_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_TRUE@ term/terminfo_module-tparm.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_ia64_efi_FALSE@@COND_riscv32_efi_TRUE@am_terminfo_module_OBJECTS = term/terminfo_module-terminfo.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_ia64_efi_FALSE@@COND_riscv32_efi_TRUE@ term/terminfo_module-tparm.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_ia64_efi_TRUE@am_terminfo_module_OBJECTS = term/terminfo_module-terminfo.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_ia64_efi_TRUE@ term/terminfo_module-tparm.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_TRUE@am_terminfo_module_OBJECTS = term/terminfo_module-terminfo.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_TRUE@ term/terminfo_module-tparm.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@am_terminfo_module_OBJECTS = term/terminfo_module-terminfo.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@ term/terminfo_module-tparm.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_multiboot_TRUE@am_terminfo_module_OBJECTS = term/terminfo_module-terminfo.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_multiboot_TRUE@ term/terminfo_module-tparm.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_TRUE@am_terminfo_module_OBJECTS = term/terminfo_module-terminfo.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_TRUE@ term/terminfo_module-tparm.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_i386_coreboot_TRUE@am_terminfo_module_OBJECTS = term/terminfo_module-terminfo.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_FALSE@@COND_i386_coreboot_TRUE@ term/terminfo_module-tparm.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_TRUE@am_terminfo_module_OBJECTS = term/terminfo_module-terminfo.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_FALSE@@COND_arm_efi_TRUE@ term/terminfo_module-tparm.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_coreboot_TRUE@am_terminfo_module_OBJECTS = term/terminfo_module-terminfo.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_coreboot_TRUE@ term/terminfo_module-tparm.$(OBJEXT) -@COND_arm64_efi_TRUE@am_terminfo_module_OBJECTS = \ -@COND_arm64_efi_TRUE@ term/terminfo_module-terminfo.$(OBJEXT) \ -@COND_arm64_efi_TRUE@ term/terminfo_module-tparm.$(OBJEXT) -nodist_terminfo_module_OBJECTS = -terminfo_module_OBJECTS = $(am_terminfo_module_OBJECTS) \ - $(nodist_terminfo_module_OBJECTS) -terminfo_module_LINK = $(CCLD) $(terminfo_module_CFLAGS) $(CFLAGS) \ - $(terminfo_module_LDFLAGS) $(LDFLAGS) -o $@ -am_test_module_OBJECTS = commands/test_module-test.$(OBJEXT) -nodist_test_module_OBJECTS = -test_module_OBJECTS = $(am_test_module_OBJECTS) \ - $(nodist_test_module_OBJECTS) -test_module_LINK = $(CCLD) $(test_module_CFLAGS) $(CFLAGS) \ - $(test_module_LDFLAGS) $(LDFLAGS) -o $@ -am_test_blockarg_module_OBJECTS = \ - tests/test_blockarg_module-test_blockarg.$(OBJEXT) -nodist_test_blockarg_module_OBJECTS = -test_blockarg_module_OBJECTS = $(am_test_blockarg_module_OBJECTS) \ - $(nodist_test_blockarg_module_OBJECTS) -test_blockarg_module_LINK = $(CCLD) $(test_blockarg_module_CFLAGS) \ - $(CFLAGS) $(test_blockarg_module_LDFLAGS) $(LDFLAGS) -o $@ -am_testload_module_OBJECTS = \ - commands/testload_module-testload.$(OBJEXT) -nodist_testload_module_OBJECTS = -testload_module_OBJECTS = $(am_testload_module_OBJECTS) \ - $(nodist_testload_module_OBJECTS) -testload_module_LINK = $(CCLD) $(testload_module_CFLAGS) $(CFLAGS) \ - $(testload_module_LDFLAGS) $(LDFLAGS) -o $@ -am_testspeed_module_OBJECTS = \ - commands/testspeed_module-testspeed.$(OBJEXT) -nodist_testspeed_module_OBJECTS = -testspeed_module_OBJECTS = $(am_testspeed_module_OBJECTS) \ - $(nodist_testspeed_module_OBJECTS) -testspeed_module_LINK = $(CCLD) $(testspeed_module_CFLAGS) $(CFLAGS) \ - $(testspeed_module_LDFLAGS) $(LDFLAGS) -o $@ -am_tftp_module_OBJECTS = net/tftp_module-tftp.$(OBJEXT) -nodist_tftp_module_OBJECTS = -tftp_module_OBJECTS = $(am_tftp_module_OBJECTS) \ - $(nodist_tftp_module_OBJECTS) -tftp_module_LINK = $(CCLD) $(tftp_module_CFLAGS) $(CFLAGS) \ - $(tftp_module_LDFLAGS) $(LDFLAGS) -o $@ -am_tga_module_OBJECTS = video/readers/tga_module-tga.$(OBJEXT) -nodist_tga_module_OBJECTS = -tga_module_OBJECTS = $(am_tga_module_OBJECTS) \ - $(nodist_tga_module_OBJECTS) -tga_module_LINK = $(CCLD) $(tga_module_CFLAGS) $(CFLAGS) \ - $(tga_module_LDFLAGS) $(LDFLAGS) -o $@ -am_time_module_OBJECTS = commands/time_module-time.$(OBJEXT) -nodist_time_module_OBJECTS = -time_module_OBJECTS = $(am_time_module_OBJECTS) \ - $(nodist_time_module_OBJECTS) -time_module_LINK = $(CCLD) $(time_module_CFLAGS) $(CFLAGS) \ - $(time_module_LDFLAGS) $(LDFLAGS) -o $@ -am__tpm_module_SOURCES_DIST = commands/efi/tpm.c commands/tpm.c -@COND_x86_64_efi_TRUE@am_tpm_module_OBJECTS = \ -@COND_x86_64_efi_TRUE@ commands/efi/tpm_module-tpm.$(OBJEXT) \ -@COND_x86_64_efi_TRUE@ commands/tpm_module-tpm.$(OBJEXT) -nodist_tpm_module_OBJECTS = -tpm_module_OBJECTS = $(am_tpm_module_OBJECTS) \ - $(nodist_tpm_module_OBJECTS) -tpm_module_LINK = $(CCLD) $(tpm_module_CFLAGS) $(CFLAGS) \ - $(tpm_module_LDFLAGS) $(LDFLAGS) -o $@ -am_tr_module_OBJECTS = commands/tr_module-tr.$(OBJEXT) -nodist_tr_module_OBJECTS = -tr_module_OBJECTS = $(am_tr_module_OBJECTS) \ - $(nodist_tr_module_OBJECTS) -tr_module_LINK = $(CCLD) $(tr_module_CFLAGS) $(CFLAGS) \ - $(tr_module_LDFLAGS) $(LDFLAGS) -o $@ -am_trig_module_OBJECTS = -nodist_trig_module_OBJECTS = trig_module-trigtables.$(OBJEXT) -trig_module_OBJECTS = $(am_trig_module_OBJECTS) \ - $(nodist_trig_module_OBJECTS) -trig_module_LINK = $(CCLD) $(trig_module_CFLAGS) $(CFLAGS) \ - $(trig_module_LDFLAGS) $(LDFLAGS) -o $@ -am_true_module_OBJECTS = commands/true_module-true.$(OBJEXT) -nodist_true_module_OBJECTS = -true_module_OBJECTS = $(am_true_module_OBJECTS) \ - $(nodist_true_module_OBJECTS) -true_module_LINK = $(CCLD) $(true_module_CFLAGS) $(CFLAGS) \ - $(true_module_LDFLAGS) $(LDFLAGS) -o $@ -am__truecrypt_module_SOURCES_DIST = loader/i386/pc/truecrypt.c -@COND_i386_pc_TRUE@am_truecrypt_module_OBJECTS = loader/i386/pc/truecrypt_module-truecrypt.$(OBJEXT) -nodist_truecrypt_module_OBJECTS = -truecrypt_module_OBJECTS = $(am_truecrypt_module_OBJECTS) \ - $(nodist_truecrypt_module_OBJECTS) -truecrypt_module_LINK = $(CCLD) $(truecrypt_module_CFLAGS) $(CFLAGS) \ - $(truecrypt_module_LDFLAGS) $(LDFLAGS) -o $@ -am__ubootnet_module_SOURCES_DIST = net/drivers/uboot/ubootnet.c -@COND_arm_uboot_TRUE@am_ubootnet_module_OBJECTS = net/drivers/uboot/ubootnet_module-ubootnet.$(OBJEXT) -nodist_ubootnet_module_OBJECTS = -ubootnet_module_OBJECTS = $(am_ubootnet_module_OBJECTS) \ - $(nodist_ubootnet_module_OBJECTS) -ubootnet_module_LINK = $(CCLD) $(ubootnet_module_CFLAGS) $(CFLAGS) \ - $(ubootnet_module_LDFLAGS) $(LDFLAGS) -o $@ -am_udf_module_OBJECTS = fs/udf_module-udf.$(OBJEXT) -nodist_udf_module_OBJECTS = -udf_module_OBJECTS = $(am_udf_module_OBJECTS) \ - $(nodist_udf_module_OBJECTS) -udf_module_LINK = $(CCLD) $(udf_module_CFLAGS) $(CFLAGS) \ - $(udf_module_LDFLAGS) $(LDFLAGS) -o $@ -am_ufs1_module_OBJECTS = fs/ufs1_module-ufs.$(OBJEXT) -nodist_ufs1_module_OBJECTS = -ufs1_module_OBJECTS = $(am_ufs1_module_OBJECTS) \ - $(nodist_ufs1_module_OBJECTS) -ufs1_module_LINK = $(CCLD) $(ufs1_module_CFLAGS) $(CFLAGS) \ - $(ufs1_module_LDFLAGS) $(LDFLAGS) -o $@ -am_ufs1_be_module_OBJECTS = fs/ufs1_be_module-ufs_be.$(OBJEXT) -nodist_ufs1_be_module_OBJECTS = -ufs1_be_module_OBJECTS = $(am_ufs1_be_module_OBJECTS) \ - $(nodist_ufs1_be_module_OBJECTS) -ufs1_be_module_LINK = $(CCLD) $(ufs1_be_module_CFLAGS) $(CFLAGS) \ - $(ufs1_be_module_LDFLAGS) $(LDFLAGS) -o $@ -am_ufs2_module_OBJECTS = fs/ufs2_module-ufs2.$(OBJEXT) -nodist_ufs2_module_OBJECTS = -ufs2_module_OBJECTS = $(am_ufs2_module_OBJECTS) \ - $(nodist_ufs2_module_OBJECTS) -ufs2_module_LINK = $(CCLD) $(ufs2_module_CFLAGS) $(CFLAGS) \ - $(ufs2_module_LDFLAGS) $(LDFLAGS) -o $@ -am__uhci_module_SOURCES_DIST = bus/usb/uhci.c -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_mips_loongson_FALSE@@COND_x86_64_efi_TRUE@am_uhci_module_OBJECTS = bus/usb/uhci_module-uhci.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_mips_loongson_TRUE@am_uhci_module_OBJECTS = bus/usb/uhci_module-uhci.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_TRUE@am_uhci_module_OBJECTS = bus/usb/uhci_module-uhci.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@am_uhci_module_OBJECTS = bus/usb/uhci_module-uhci.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_TRUE@am_uhci_module_OBJECTS = bus/usb/uhci_module-uhci.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_TRUE@am_uhci_module_OBJECTS = bus/usb/uhci_module-uhci.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_TRUE@am_uhci_module_OBJECTS = bus/usb/uhci_module-uhci.$(OBJEXT) -@COND_i386_coreboot_TRUE@am_uhci_module_OBJECTS = \ -@COND_i386_coreboot_TRUE@ bus/usb/uhci_module-uhci.$(OBJEXT) -nodist_uhci_module_OBJECTS = -uhci_module_OBJECTS = $(am_uhci_module_OBJECTS) \ - $(nodist_uhci_module_OBJECTS) -uhci_module_LINK = $(CCLD) $(uhci_module_CFLAGS) $(CFLAGS) \ - $(uhci_module_LDFLAGS) $(LDFLAGS) -o $@ -am__usb_module_SOURCES_DIST = bus/usb/usb.c bus/usb/usbtrans.c \ - bus/usb/usbhub.c -@COND_arm_coreboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_mips_loongson_FALSE@@COND_x86_64_efi_TRUE@am_usb_module_OBJECTS = bus/usb/usb_module-usb.$(OBJEXT) \ -@COND_arm_coreboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_mips_loongson_FALSE@@COND_x86_64_efi_TRUE@ bus/usb/usb_module-usbtrans.$(OBJEXT) \ -@COND_arm_coreboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_mips_loongson_FALSE@@COND_x86_64_efi_TRUE@ bus/usb/usb_module-usbhub.$(OBJEXT) -@COND_arm_coreboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_mips_loongson_TRUE@am_usb_module_OBJECTS = bus/usb/usb_module-usb.$(OBJEXT) \ -@COND_arm_coreboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_mips_loongson_TRUE@ bus/usb/usb_module-usbtrans.$(OBJEXT) \ -@COND_arm_coreboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_mips_loongson_TRUE@ bus/usb/usb_module-usbhub.$(OBJEXT) -@COND_arm_coreboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_TRUE@am_usb_module_OBJECTS = bus/usb/usb_module-usb.$(OBJEXT) \ -@COND_arm_coreboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_TRUE@ bus/usb/usb_module-usbtrans.$(OBJEXT) \ -@COND_arm_coreboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_TRUE@ bus/usb/usb_module-usbhub.$(OBJEXT) -@COND_arm_coreboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@am_usb_module_OBJECTS = bus/usb/usb_module-usb.$(OBJEXT) \ -@COND_arm_coreboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@ bus/usb/usb_module-usbtrans.$(OBJEXT) \ -@COND_arm_coreboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@ bus/usb/usb_module-usbhub.$(OBJEXT) -@COND_arm_coreboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_TRUE@am_usb_module_OBJECTS = bus/usb/usb_module-usb.$(OBJEXT) \ -@COND_arm_coreboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_TRUE@ bus/usb/usb_module-usbtrans.$(OBJEXT) \ -@COND_arm_coreboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_TRUE@ bus/usb/usb_module-usbhub.$(OBJEXT) -@COND_arm_coreboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_TRUE@am_usb_module_OBJECTS = bus/usb/usb_module-usb.$(OBJEXT) \ -@COND_arm_coreboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_TRUE@ bus/usb/usb_module-usbtrans.$(OBJEXT) \ -@COND_arm_coreboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_TRUE@ bus/usb/usb_module-usbhub.$(OBJEXT) -@COND_arm_coreboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_TRUE@am_usb_module_OBJECTS = bus/usb/usb_module-usb.$(OBJEXT) \ -@COND_arm_coreboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_TRUE@ bus/usb/usb_module-usbtrans.$(OBJEXT) \ -@COND_arm_coreboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_TRUE@ bus/usb/usb_module-usbhub.$(OBJEXT) -@COND_arm_coreboot_FALSE@@COND_i386_coreboot_TRUE@am_usb_module_OBJECTS = bus/usb/usb_module-usb.$(OBJEXT) \ -@COND_arm_coreboot_FALSE@@COND_i386_coreboot_TRUE@ bus/usb/usb_module-usbtrans.$(OBJEXT) \ -@COND_arm_coreboot_FALSE@@COND_i386_coreboot_TRUE@ bus/usb/usb_module-usbhub.$(OBJEXT) -@COND_arm_coreboot_TRUE@am_usb_module_OBJECTS = \ -@COND_arm_coreboot_TRUE@ bus/usb/usb_module-usb.$(OBJEXT) \ -@COND_arm_coreboot_TRUE@ bus/usb/usb_module-usbtrans.$(OBJEXT) \ -@COND_arm_coreboot_TRUE@ bus/usb/usb_module-usbhub.$(OBJEXT) -nodist_usb_module_OBJECTS = -usb_module_OBJECTS = $(am_usb_module_OBJECTS) \ - $(nodist_usb_module_OBJECTS) -usb_module_LINK = $(CCLD) $(usb_module_CFLAGS) $(CFLAGS) \ - $(usb_module_LDFLAGS) $(LDFLAGS) -o $@ -am__usb_keyboard_module_SOURCES_DIST = term/usb_keyboard.c -@COND_arm_coreboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_mips_loongson_FALSE@@COND_x86_64_efi_TRUE@am_usb_keyboard_module_OBJECTS = term/usb_keyboard_module-usb_keyboard.$(OBJEXT) -@COND_arm_coreboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_mips_loongson_TRUE@am_usb_keyboard_module_OBJECTS = term/usb_keyboard_module-usb_keyboard.$(OBJEXT) -@COND_arm_coreboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_TRUE@am_usb_keyboard_module_OBJECTS = term/usb_keyboard_module-usb_keyboard.$(OBJEXT) -@COND_arm_coreboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@am_usb_keyboard_module_OBJECTS = term/usb_keyboard_module-usb_keyboard.$(OBJEXT) -@COND_arm_coreboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_TRUE@am_usb_keyboard_module_OBJECTS = term/usb_keyboard_module-usb_keyboard.$(OBJEXT) -@COND_arm_coreboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_TRUE@am_usb_keyboard_module_OBJECTS = term/usb_keyboard_module-usb_keyboard.$(OBJEXT) -@COND_arm_coreboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_TRUE@am_usb_keyboard_module_OBJECTS = term/usb_keyboard_module-usb_keyboard.$(OBJEXT) -@COND_arm_coreboot_FALSE@@COND_i386_coreboot_TRUE@am_usb_keyboard_module_OBJECTS = term/usb_keyboard_module-usb_keyboard.$(OBJEXT) -@COND_arm_coreboot_TRUE@am_usb_keyboard_module_OBJECTS = term/usb_keyboard_module-usb_keyboard.$(OBJEXT) -nodist_usb_keyboard_module_OBJECTS = -usb_keyboard_module_OBJECTS = $(am_usb_keyboard_module_OBJECTS) \ - $(nodist_usb_keyboard_module_OBJECTS) -usb_keyboard_module_LINK = $(CCLD) $(usb_keyboard_module_CFLAGS) \ - $(CFLAGS) $(usb_keyboard_module_LDFLAGS) $(LDFLAGS) -o $@ -am__usbms_module_SOURCES_DIST = disk/usbms.c -@COND_arm_coreboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_mips_loongson_FALSE@@COND_x86_64_efi_TRUE@am_usbms_module_OBJECTS = disk/usbms_module-usbms.$(OBJEXT) -@COND_arm_coreboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_mips_loongson_TRUE@am_usbms_module_OBJECTS = disk/usbms_module-usbms.$(OBJEXT) -@COND_arm_coreboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_TRUE@am_usbms_module_OBJECTS = disk/usbms_module-usbms.$(OBJEXT) -@COND_arm_coreboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@am_usbms_module_OBJECTS = disk/usbms_module-usbms.$(OBJEXT) -@COND_arm_coreboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_TRUE@am_usbms_module_OBJECTS = disk/usbms_module-usbms.$(OBJEXT) -@COND_arm_coreboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_TRUE@am_usbms_module_OBJECTS = disk/usbms_module-usbms.$(OBJEXT) -@COND_arm_coreboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_TRUE@am_usbms_module_OBJECTS = disk/usbms_module-usbms.$(OBJEXT) -@COND_arm_coreboot_FALSE@@COND_i386_coreboot_TRUE@am_usbms_module_OBJECTS = disk/usbms_module-usbms.$(OBJEXT) -@COND_arm_coreboot_TRUE@am_usbms_module_OBJECTS = \ -@COND_arm_coreboot_TRUE@ disk/usbms_module-usbms.$(OBJEXT) -nodist_usbms_module_OBJECTS = -usbms_module_OBJECTS = $(am_usbms_module_OBJECTS) \ - $(nodist_usbms_module_OBJECTS) -usbms_module_LINK = $(CCLD) $(usbms_module_CFLAGS) $(CFLAGS) \ - $(usbms_module_LDFLAGS) $(LDFLAGS) -o $@ -am__usbserial_common_module_SOURCES_DIST = bus/usb/serial/common.c -@COND_arm_coreboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_mips_loongson_FALSE@@COND_x86_64_efi_TRUE@am_usbserial_common_module_OBJECTS = bus/usb/serial/usbserial_common_module-common.$(OBJEXT) -@COND_arm_coreboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_mips_loongson_TRUE@am_usbserial_common_module_OBJECTS = bus/usb/serial/usbserial_common_module-common.$(OBJEXT) -@COND_arm_coreboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_TRUE@am_usbserial_common_module_OBJECTS = bus/usb/serial/usbserial_common_module-common.$(OBJEXT) -@COND_arm_coreboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@am_usbserial_common_module_OBJECTS = bus/usb/serial/usbserial_common_module-common.$(OBJEXT) -@COND_arm_coreboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_TRUE@am_usbserial_common_module_OBJECTS = bus/usb/serial/usbserial_common_module-common.$(OBJEXT) -@COND_arm_coreboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_TRUE@am_usbserial_common_module_OBJECTS = bus/usb/serial/usbserial_common_module-common.$(OBJEXT) -@COND_arm_coreboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_TRUE@am_usbserial_common_module_OBJECTS = bus/usb/serial/usbserial_common_module-common.$(OBJEXT) -@COND_arm_coreboot_FALSE@@COND_i386_coreboot_TRUE@am_usbserial_common_module_OBJECTS = bus/usb/serial/usbserial_common_module-common.$(OBJEXT) -@COND_arm_coreboot_TRUE@am_usbserial_common_module_OBJECTS = bus/usb/serial/usbserial_common_module-common.$(OBJEXT) -nodist_usbserial_common_module_OBJECTS = -usbserial_common_module_OBJECTS = \ - $(am_usbserial_common_module_OBJECTS) \ - $(nodist_usbserial_common_module_OBJECTS) -usbserial_common_module_LINK = $(CCLD) \ - $(usbserial_common_module_CFLAGS) $(CFLAGS) \ - $(usbserial_common_module_LDFLAGS) $(LDFLAGS) -o $@ -am__usbserial_ftdi_module_SOURCES_DIST = bus/usb/serial/ftdi.c -@COND_arm_coreboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_mips_loongson_FALSE@@COND_x86_64_efi_TRUE@am_usbserial_ftdi_module_OBJECTS = bus/usb/serial/usbserial_ftdi_module-ftdi.$(OBJEXT) -@COND_arm_coreboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_mips_loongson_TRUE@am_usbserial_ftdi_module_OBJECTS = bus/usb/serial/usbserial_ftdi_module-ftdi.$(OBJEXT) -@COND_arm_coreboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_TRUE@am_usbserial_ftdi_module_OBJECTS = bus/usb/serial/usbserial_ftdi_module-ftdi.$(OBJEXT) -@COND_arm_coreboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@am_usbserial_ftdi_module_OBJECTS = bus/usb/serial/usbserial_ftdi_module-ftdi.$(OBJEXT) -@COND_arm_coreboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_TRUE@am_usbserial_ftdi_module_OBJECTS = bus/usb/serial/usbserial_ftdi_module-ftdi.$(OBJEXT) -@COND_arm_coreboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_TRUE@am_usbserial_ftdi_module_OBJECTS = bus/usb/serial/usbserial_ftdi_module-ftdi.$(OBJEXT) -@COND_arm_coreboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_TRUE@am_usbserial_ftdi_module_OBJECTS = bus/usb/serial/usbserial_ftdi_module-ftdi.$(OBJEXT) -@COND_arm_coreboot_FALSE@@COND_i386_coreboot_TRUE@am_usbserial_ftdi_module_OBJECTS = bus/usb/serial/usbserial_ftdi_module-ftdi.$(OBJEXT) -@COND_arm_coreboot_TRUE@am_usbserial_ftdi_module_OBJECTS = bus/usb/serial/usbserial_ftdi_module-ftdi.$(OBJEXT) -nodist_usbserial_ftdi_module_OBJECTS = -usbserial_ftdi_module_OBJECTS = $(am_usbserial_ftdi_module_OBJECTS) \ - $(nodist_usbserial_ftdi_module_OBJECTS) -usbserial_ftdi_module_LINK = $(CCLD) $(usbserial_ftdi_module_CFLAGS) \ - $(CFLAGS) $(usbserial_ftdi_module_LDFLAGS) $(LDFLAGS) -o $@ -am__usbserial_pl2303_module_SOURCES_DIST = bus/usb/serial/pl2303.c -@COND_arm_coreboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_mips_loongson_FALSE@@COND_x86_64_efi_TRUE@am_usbserial_pl2303_module_OBJECTS = bus/usb/serial/usbserial_pl2303_module-pl2303.$(OBJEXT) -@COND_arm_coreboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_mips_loongson_TRUE@am_usbserial_pl2303_module_OBJECTS = bus/usb/serial/usbserial_pl2303_module-pl2303.$(OBJEXT) -@COND_arm_coreboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_TRUE@am_usbserial_pl2303_module_OBJECTS = bus/usb/serial/usbserial_pl2303_module-pl2303.$(OBJEXT) -@COND_arm_coreboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@am_usbserial_pl2303_module_OBJECTS = bus/usb/serial/usbserial_pl2303_module-pl2303.$(OBJEXT) -@COND_arm_coreboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_TRUE@am_usbserial_pl2303_module_OBJECTS = bus/usb/serial/usbserial_pl2303_module-pl2303.$(OBJEXT) -@COND_arm_coreboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_TRUE@am_usbserial_pl2303_module_OBJECTS = bus/usb/serial/usbserial_pl2303_module-pl2303.$(OBJEXT) -@COND_arm_coreboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_TRUE@am_usbserial_pl2303_module_OBJECTS = bus/usb/serial/usbserial_pl2303_module-pl2303.$(OBJEXT) -@COND_arm_coreboot_FALSE@@COND_i386_coreboot_TRUE@am_usbserial_pl2303_module_OBJECTS = bus/usb/serial/usbserial_pl2303_module-pl2303.$(OBJEXT) -@COND_arm_coreboot_TRUE@am_usbserial_pl2303_module_OBJECTS = bus/usb/serial/usbserial_pl2303_module-pl2303.$(OBJEXT) -nodist_usbserial_pl2303_module_OBJECTS = -usbserial_pl2303_module_OBJECTS = \ - $(am_usbserial_pl2303_module_OBJECTS) \ - $(nodist_usbserial_pl2303_module_OBJECTS) -usbserial_pl2303_module_LINK = $(CCLD) \ - $(usbserial_pl2303_module_CFLAGS) $(CFLAGS) \ - $(usbserial_pl2303_module_LDFLAGS) $(LDFLAGS) -o $@ -am__usbserial_usbdebug_module_SOURCES_DIST = \ - bus/usb/serial/usbdebug_late.c -@COND_arm_coreboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_mips_loongson_FALSE@@COND_x86_64_efi_TRUE@am_usbserial_usbdebug_module_OBJECTS = bus/usb/serial/usbserial_usbdebug_module-usbdebug_late.$(OBJEXT) -@COND_arm_coreboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_mips_loongson_TRUE@am_usbserial_usbdebug_module_OBJECTS = bus/usb/serial/usbserial_usbdebug_module-usbdebug_late.$(OBJEXT) -@COND_arm_coreboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_TRUE@am_usbserial_usbdebug_module_OBJECTS = bus/usb/serial/usbserial_usbdebug_module-usbdebug_late.$(OBJEXT) -@COND_arm_coreboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@am_usbserial_usbdebug_module_OBJECTS = bus/usb/serial/usbserial_usbdebug_module-usbdebug_late.$(OBJEXT) -@COND_arm_coreboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_TRUE@am_usbserial_usbdebug_module_OBJECTS = bus/usb/serial/usbserial_usbdebug_module-usbdebug_late.$(OBJEXT) -@COND_arm_coreboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_TRUE@am_usbserial_usbdebug_module_OBJECTS = bus/usb/serial/usbserial_usbdebug_module-usbdebug_late.$(OBJEXT) -@COND_arm_coreboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_TRUE@am_usbserial_usbdebug_module_OBJECTS = bus/usb/serial/usbserial_usbdebug_module-usbdebug_late.$(OBJEXT) -@COND_arm_coreboot_FALSE@@COND_i386_coreboot_TRUE@am_usbserial_usbdebug_module_OBJECTS = bus/usb/serial/usbserial_usbdebug_module-usbdebug_late.$(OBJEXT) -@COND_arm_coreboot_TRUE@am_usbserial_usbdebug_module_OBJECTS = bus/usb/serial/usbserial_usbdebug_module-usbdebug_late.$(OBJEXT) -nodist_usbserial_usbdebug_module_OBJECTS = -usbserial_usbdebug_module_OBJECTS = \ - $(am_usbserial_usbdebug_module_OBJECTS) \ - $(nodist_usbserial_usbdebug_module_OBJECTS) -usbserial_usbdebug_module_LINK = $(CCLD) \ - $(usbserial_usbdebug_module_CFLAGS) $(CFLAGS) \ - $(usbserial_usbdebug_module_LDFLAGS) $(LDFLAGS) -o $@ -am__usbtest_module_SOURCES_DIST = commands/usbtest.c -@COND_arm_coreboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_mips_loongson_FALSE@@COND_x86_64_efi_TRUE@am_usbtest_module_OBJECTS = commands/usbtest_module-usbtest.$(OBJEXT) -@COND_arm_coreboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_mips_loongson_TRUE@am_usbtest_module_OBJECTS = commands/usbtest_module-usbtest.$(OBJEXT) -@COND_arm_coreboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_TRUE@am_usbtest_module_OBJECTS = commands/usbtest_module-usbtest.$(OBJEXT) -@COND_arm_coreboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@am_usbtest_module_OBJECTS = commands/usbtest_module-usbtest.$(OBJEXT) -@COND_arm_coreboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_TRUE@am_usbtest_module_OBJECTS = commands/usbtest_module-usbtest.$(OBJEXT) -@COND_arm_coreboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_TRUE@am_usbtest_module_OBJECTS = commands/usbtest_module-usbtest.$(OBJEXT) -@COND_arm_coreboot_FALSE@@COND_i386_coreboot_FALSE@@COND_i386_efi_TRUE@am_usbtest_module_OBJECTS = commands/usbtest_module-usbtest.$(OBJEXT) -@COND_arm_coreboot_FALSE@@COND_i386_coreboot_TRUE@am_usbtest_module_OBJECTS = commands/usbtest_module-usbtest.$(OBJEXT) -@COND_arm_coreboot_TRUE@am_usbtest_module_OBJECTS = commands/usbtest_module-usbtest.$(OBJEXT) -nodist_usbtest_module_OBJECTS = -usbtest_module_OBJECTS = $(am_usbtest_module_OBJECTS) \ - $(nodist_usbtest_module_OBJECTS) -usbtest_module_LINK = $(CCLD) $(usbtest_module_CFLAGS) $(CFLAGS) \ - $(usbtest_module_LDFLAGS) $(LDFLAGS) -o $@ -am__vbe_module_SOURCES_DIST = video/i386/pc/vbe.c -@COND_i386_pc_TRUE@am_vbe_module_OBJECTS = \ -@COND_i386_pc_TRUE@ video/i386/pc/vbe_module-vbe.$(OBJEXT) -nodist_vbe_module_OBJECTS = -vbe_module_OBJECTS = $(am_vbe_module_OBJECTS) \ - $(nodist_vbe_module_OBJECTS) -vbe_module_LINK = $(CCLD) $(vbe_module_CFLAGS) $(CFLAGS) \ - $(vbe_module_LDFLAGS) $(LDFLAGS) -o $@ -am_verifiers_module_OBJECTS = \ - commands/verifiers_module-verifiers.$(OBJEXT) -nodist_verifiers_module_OBJECTS = -verifiers_module_OBJECTS = $(am_verifiers_module_OBJECTS) \ - $(nodist_verifiers_module_OBJECTS) -verifiers_module_LINK = $(CCLD) $(verifiers_module_CFLAGS) $(CFLAGS) \ - $(verifiers_module_LDFLAGS) $(LDFLAGS) -o $@ -am__vga_module_SOURCES_DIST = video/i386/pc/vga.c -@COND_i386_pc_TRUE@am_vga_module_OBJECTS = \ -@COND_i386_pc_TRUE@ video/i386/pc/vga_module-vga.$(OBJEXT) -nodist_vga_module_OBJECTS = -vga_module_OBJECTS = $(am_vga_module_OBJECTS) \ - $(nodist_vga_module_OBJECTS) -vga_module_LINK = $(CCLD) $(vga_module_CFLAGS) $(CFLAGS) \ - $(vga_module_LDFLAGS) $(LDFLAGS) -o $@ -am__vga_text_module_SOURCES_DIST = term/i386/pc/vga_text.c -@COND_i386_pc_TRUE@am_vga_text_module_OBJECTS = term/i386/pc/vga_text_module-vga_text.$(OBJEXT) -nodist_vga_text_module_OBJECTS = -vga_text_module_OBJECTS = $(am_vga_text_module_OBJECTS) \ - $(nodist_vga_text_module_OBJECTS) -vga_text_module_LINK = $(CCLD) $(vga_text_module_CFLAGS) $(CFLAGS) \ - $(vga_text_module_LDFLAGS) $(LDFLAGS) -o $@ -am__video_module_SOURCES_DIST = video/video.c -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_FALSE@@COND_x86_64_efi_FALSE@@COND_x86_64_xen_TRUE@am_video_module_OBJECTS = video/video_module-video.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_FALSE@@COND_x86_64_efi_TRUE@am_video_module_OBJECTS = video/video_module-video.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_TRUE@am_video_module_OBJECTS = video/video_module-video.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_TRUE@am_video_module_OBJECTS = video/video_module-video.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_TRUE@am_video_module_OBJECTS = video/video_module-video.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_TRUE@am_video_module_OBJECTS = video/video_module-video.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_qemu_mips_TRUE@am_video_module_OBJECTS = video/video_module-video.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_TRUE@am_video_module_OBJECTS = video/video_module-video.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_TRUE@am_video_module_OBJECTS = video/video_module-video.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_TRUE@am_video_module_OBJECTS = video/video_module-video.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_TRUE@am_video_module_OBJECTS = video/video_module-video.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_TRUE@am_video_module_OBJECTS = video/video_module-video.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@am_video_module_OBJECTS = video/video_module-video.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_TRUE@am_video_module_OBJECTS = video/video_module-video.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_TRUE@am_video_module_OBJECTS = video/video_module-video.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_TRUE@am_video_module_OBJECTS = video/video_module-video.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_TRUE@am_video_module_OBJECTS = video/video_module-video.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_TRUE@am_video_module_OBJECTS = video/video_module-video.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_TRUE@am_video_module_OBJECTS = video/video_module-video.$(OBJEXT) -@COND_arm64_efi_TRUE@am_video_module_OBJECTS = \ -@COND_arm64_efi_TRUE@ video/video_module-video.$(OBJEXT) -nodist_video_module_OBJECTS = -video_module_OBJECTS = $(am_video_module_OBJECTS) \ - $(nodist_video_module_OBJECTS) -video_module_LINK = $(CCLD) $(video_module_CFLAGS) $(CFLAGS) \ - $(video_module_LDFLAGS) $(LDFLAGS) -o $@ -am__video_bochs_module_SOURCES_DIST = video/bochs.c -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_x86_64_efi_TRUE@am_video_bochs_module_OBJECTS = video/video_bochs_module-bochs.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_TRUE@am_video_bochs_module_OBJECTS = video/video_bochs_module-bochs.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@am_video_bochs_module_OBJECTS = video/video_bochs_module-bochs.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_TRUE@am_video_bochs_module_OBJECTS = video/video_bochs_module-bochs.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_TRUE@am_video_bochs_module_OBJECTS = video/video_bochs_module-bochs.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_TRUE@am_video_bochs_module_OBJECTS = video/video_bochs_module-bochs.$(OBJEXT) -@COND_i386_coreboot_TRUE@am_video_bochs_module_OBJECTS = video/video_bochs_module-bochs.$(OBJEXT) -nodist_video_bochs_module_OBJECTS = -video_bochs_module_OBJECTS = $(am_video_bochs_module_OBJECTS) \ - $(nodist_video_bochs_module_OBJECTS) -video_bochs_module_LINK = $(CCLD) $(video_bochs_module_CFLAGS) \ - $(CFLAGS) $(video_bochs_module_LDFLAGS) $(LDFLAGS) -o $@ -am__video_cirrus_module_SOURCES_DIST = video/cirrus.c -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_x86_64_efi_TRUE@am_video_cirrus_module_OBJECTS = video/video_cirrus_module-cirrus.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_TRUE@am_video_cirrus_module_OBJECTS = video/video_cirrus_module-cirrus.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@am_video_cirrus_module_OBJECTS = video/video_cirrus_module-cirrus.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_TRUE@am_video_cirrus_module_OBJECTS = video/video_cirrus_module-cirrus.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_TRUE@am_video_cirrus_module_OBJECTS = video/video_cirrus_module-cirrus.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_TRUE@am_video_cirrus_module_OBJECTS = video/video_cirrus_module-cirrus.$(OBJEXT) -@COND_i386_coreboot_TRUE@am_video_cirrus_module_OBJECTS = video/video_cirrus_module-cirrus.$(OBJEXT) -nodist_video_cirrus_module_OBJECTS = -video_cirrus_module_OBJECTS = $(am_video_cirrus_module_OBJECTS) \ - $(nodist_video_cirrus_module_OBJECTS) -video_cirrus_module_LINK = $(CCLD) $(video_cirrus_module_CFLAGS) \ - $(CFLAGS) $(video_cirrus_module_LDFLAGS) $(LDFLAGS) -o $@ -am_video_colors_module_OBJECTS = \ - video/video_colors_module-colors.$(OBJEXT) -nodist_video_colors_module_OBJECTS = -video_colors_module_OBJECTS = $(am_video_colors_module_OBJECTS) \ - $(nodist_video_colors_module_OBJECTS) -video_colors_module_LINK = $(CCLD) $(video_colors_module_CFLAGS) \ - $(CFLAGS) $(video_colors_module_LDFLAGS) $(LDFLAGS) -o $@ -am__video_fb_module_SOURCES_DIST = video/fb/video_fb.c \ - video/fb/fbblit.c video/fb/fbfill.c video/fb/fbutil.c -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_FALSE@@COND_x86_64_efi_FALSE@@COND_x86_64_xen_TRUE@am_video_fb_module_OBJECTS = video/fb/video_fb_module-video_fb.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_FALSE@@COND_x86_64_efi_FALSE@@COND_x86_64_xen_TRUE@ video/fb/video_fb_module-fbblit.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_FALSE@@COND_x86_64_efi_FALSE@@COND_x86_64_xen_TRUE@ video/fb/video_fb_module-fbfill.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_FALSE@@COND_x86_64_efi_FALSE@@COND_x86_64_xen_TRUE@ video/fb/video_fb_module-fbutil.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_FALSE@@COND_x86_64_efi_TRUE@am_video_fb_module_OBJECTS = video/fb/video_fb_module-video_fb.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_FALSE@@COND_x86_64_efi_TRUE@ video/fb/video_fb_module-fbblit.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_FALSE@@COND_x86_64_efi_TRUE@ video/fb/video_fb_module-fbfill.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_FALSE@@COND_x86_64_efi_TRUE@ video/fb/video_fb_module-fbutil.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_TRUE@am_video_fb_module_OBJECTS = video/fb/video_fb_module-video_fb.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_TRUE@ video/fb/video_fb_module-fbblit.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_TRUE@ video/fb/video_fb_module-fbfill.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_FALSE@@COND_sparc64_ieee1275_TRUE@ video/fb/video_fb_module-fbutil.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_TRUE@am_video_fb_module_OBJECTS = video/fb/video_fb_module-video_fb.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_TRUE@ video/fb/video_fb_module-fbblit.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_TRUE@ video/fb/video_fb_module-fbfill.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_FALSE@@COND_riscv64_efi_TRUE@ video/fb/video_fb_module-fbutil.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_TRUE@am_video_fb_module_OBJECTS = video/fb/video_fb_module-video_fb.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_TRUE@ video/fb/video_fb_module-fbblit.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_TRUE@ video/fb/video_fb_module-fbfill.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_FALSE@@COND_riscv32_efi_TRUE@ video/fb/video_fb_module-fbutil.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_TRUE@am_video_fb_module_OBJECTS = video/fb/video_fb_module-video_fb.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_TRUE@ video/fb/video_fb_module-fbblit.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_TRUE@ video/fb/video_fb_module-fbfill.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_qemu_mips_FALSE@@COND_powerpc_ieee1275_TRUE@ video/fb/video_fb_module-fbutil.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_qemu_mips_TRUE@am_video_fb_module_OBJECTS = video/fb/video_fb_module-video_fb.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_qemu_mips_TRUE@ video/fb/video_fb_module-fbblit.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_qemu_mips_TRUE@ video/fb/video_fb_module-fbfill.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_FALSE@@COND_mips_qemu_mips_TRUE@ video/fb/video_fb_module-fbutil.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_TRUE@am_video_fb_module_OBJECTS = video/fb/video_fb_module-video_fb.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_TRUE@ video/fb/video_fb_module-fbblit.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_TRUE@ video/fb/video_fb_module-fbfill.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_FALSE@@COND_mips_arc_TRUE@ video/fb/video_fb_module-fbutil.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_TRUE@am_video_fb_module_OBJECTS = video/fb/video_fb_module-video_fb.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_TRUE@ video/fb/video_fb_module-fbblit.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_TRUE@ video/fb/video_fb_module-fbfill.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_FALSE@@COND_ia64_efi_TRUE@ video/fb/video_fb_module-fbutil.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_TRUE@am_video_fb_module_OBJECTS = video/fb/video_fb_module-video_fb.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_TRUE@ video/fb/video_fb_module-fbblit.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_TRUE@ video/fb/video_fb_module-fbfill.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_FALSE@@COND_i386_xen_pvh_TRUE@ video/fb/video_fb_module-fbutil.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_TRUE@am_video_fb_module_OBJECTS = video/fb/video_fb_module-video_fb.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_TRUE@ video/fb/video_fb_module-fbblit.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_TRUE@ video/fb/video_fb_module-fbfill.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_i386_xen_TRUE@ video/fb/video_fb_module-fbutil.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_TRUE@am_video_fb_module_OBJECTS = video/fb/video_fb_module-video_fb.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_TRUE@ video/fb/video_fb_module-fbblit.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_TRUE@ video/fb/video_fb_module-fbfill.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_TRUE@ video/fb/video_fb_module-fbutil.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@am_video_fb_module_OBJECTS = video/fb/video_fb_module-video_fb.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@ video/fb/video_fb_module-fbblit.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@ video/fb/video_fb_module-fbfill.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@ video/fb/video_fb_module-fbutil.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_TRUE@am_video_fb_module_OBJECTS = video/fb/video_fb_module-video_fb.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_TRUE@ video/fb/video_fb_module-fbblit.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_TRUE@ video/fb/video_fb_module-fbfill.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_TRUE@ video/fb/video_fb_module-fbutil.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_TRUE@am_video_fb_module_OBJECTS = video/fb/video_fb_module-video_fb.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_TRUE@ video/fb/video_fb_module-fbblit.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_TRUE@ video/fb/video_fb_module-fbfill.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_TRUE@ video/fb/video_fb_module-fbutil.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_TRUE@am_video_fb_module_OBJECTS = video/fb/video_fb_module-video_fb.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_TRUE@ video/fb/video_fb_module-fbblit.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_TRUE@ video/fb/video_fb_module-fbfill.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_FALSE@@COND_i386_efi_TRUE@ video/fb/video_fb_module-fbutil.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_TRUE@am_video_fb_module_OBJECTS = video/fb/video_fb_module-video_fb.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_TRUE@ video/fb/video_fb_module-fbblit.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_TRUE@ video/fb/video_fb_module-fbfill.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_FALSE@@COND_emu_TRUE@ video/fb/video_fb_module-fbutil.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_TRUE@am_video_fb_module_OBJECTS = video/fb/video_fb_module-video_fb.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_TRUE@ video/fb/video_fb_module-fbblit.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_TRUE@ video/fb/video_fb_module-fbfill.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_efi_FALSE@@COND_arm_uboot_TRUE@ video/fb/video_fb_module-fbutil.$(OBJEXT) -@COND_arm64_efi_FALSE@@COND_arm_efi_TRUE@am_video_fb_module_OBJECTS = video/fb/video_fb_module-video_fb.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_efi_TRUE@ video/fb/video_fb_module-fbblit.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_efi_TRUE@ video/fb/video_fb_module-fbfill.$(OBJEXT) \ -@COND_arm64_efi_FALSE@@COND_arm_efi_TRUE@ video/fb/video_fb_module-fbutil.$(OBJEXT) -@COND_arm64_efi_TRUE@am_video_fb_module_OBJECTS = video/fb/video_fb_module-video_fb.$(OBJEXT) \ -@COND_arm64_efi_TRUE@ video/fb/video_fb_module-fbblit.$(OBJEXT) \ -@COND_arm64_efi_TRUE@ video/fb/video_fb_module-fbfill.$(OBJEXT) \ -@COND_arm64_efi_TRUE@ video/fb/video_fb_module-fbutil.$(OBJEXT) -nodist_video_fb_module_OBJECTS = -video_fb_module_OBJECTS = $(am_video_fb_module_OBJECTS) \ - $(nodist_video_fb_module_OBJECTS) -video_fb_module_LINK = $(CCLD) $(video_fb_module_CFLAGS) $(CFLAGS) \ - $(video_fb_module_LDFLAGS) $(LDFLAGS) -o $@ -am_videoinfo_module_OBJECTS = \ - commands/videoinfo_module-videoinfo.$(OBJEXT) -nodist_videoinfo_module_OBJECTS = -videoinfo_module_OBJECTS = $(am_videoinfo_module_OBJECTS) \ - $(nodist_videoinfo_module_OBJECTS) -videoinfo_module_LINK = $(CCLD) $(videoinfo_module_CFLAGS) $(CFLAGS) \ - $(videoinfo_module_LDFLAGS) $(LDFLAGS) -o $@ -am_videotest_module_OBJECTS = \ - commands/videotest_module-videotest.$(OBJEXT) -nodist_videotest_module_OBJECTS = -videotest_module_OBJECTS = $(am_videotest_module_OBJECTS) \ - $(nodist_videotest_module_OBJECTS) -videotest_module_LINK = $(CCLD) $(videotest_module_CFLAGS) $(CFLAGS) \ - $(videotest_module_LDFLAGS) $(LDFLAGS) -o $@ -am_videotest_checksum_module_OBJECTS = \ - tests/videotest_checksum_module-videotest_checksum.$(OBJEXT) -nodist_videotest_checksum_module_OBJECTS = -videotest_checksum_module_OBJECTS = \ - $(am_videotest_checksum_module_OBJECTS) \ - $(nodist_videotest_checksum_module_OBJECTS) -videotest_checksum_module_LINK = $(CCLD) \ - $(videotest_checksum_module_CFLAGS) $(CFLAGS) \ - $(videotest_checksum_module_LDFLAGS) $(LDFLAGS) -o $@ -am__wrmsr_module_SOURCES_DIST = commands/i386/wrmsr.c -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_FALSE@@COND_x86_64_efi_TRUE@am_wrmsr_module_OBJECTS = commands/i386/wrmsr_module-wrmsr.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_i386_qemu_TRUE@am_wrmsr_module_OBJECTS = commands/i386/wrmsr_module-wrmsr.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@am_wrmsr_module_OBJECTS = commands/i386/wrmsr_module-wrmsr.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_FALSE@@COND_i386_multiboot_TRUE@am_wrmsr_module_OBJECTS = commands/i386/wrmsr_module-wrmsr.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_ieee1275_TRUE@am_wrmsr_module_OBJECTS = commands/i386/wrmsr_module-wrmsr.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_TRUE@am_wrmsr_module_OBJECTS = commands/i386/wrmsr_module-wrmsr.$(OBJEXT) -@COND_i386_coreboot_TRUE@am_wrmsr_module_OBJECTS = commands/i386/wrmsr_module-wrmsr.$(OBJEXT) -nodist_wrmsr_module_OBJECTS = -wrmsr_module_OBJECTS = $(am_wrmsr_module_OBJECTS) \ - $(nodist_wrmsr_module_OBJECTS) -wrmsr_module_LINK = $(CCLD) $(wrmsr_module_CFLAGS) $(CFLAGS) \ - $(wrmsr_module_LDFLAGS) $(LDFLAGS) -o $@ -am__xen_boot_module_SOURCES_DIST = loader/arm64/xen_boot.c -@COND_arm64_efi_TRUE@am_xen_boot_module_OBJECTS = loader/arm64/xen_boot_module-xen_boot.$(OBJEXT) -nodist_xen_boot_module_OBJECTS = -xen_boot_module_OBJECTS = $(am_xen_boot_module_OBJECTS) \ - $(nodist_xen_boot_module_OBJECTS) -xen_boot_module_LINK = $(CCLD) $(xen_boot_module_CFLAGS) $(CFLAGS) \ - $(xen_boot_module_LDFLAGS) $(LDFLAGS) -o $@ -am_xfs_module_OBJECTS = fs/xfs_module-xfs.$(OBJEXT) -nodist_xfs_module_OBJECTS = -xfs_module_OBJECTS = $(am_xfs_module_OBJECTS) \ - $(nodist_xfs_module_OBJECTS) -xfs_module_LINK = $(CCLD) $(xfs_module_CFLAGS) $(CFLAGS) \ - $(xfs_module_LDFLAGS) $(LDFLAGS) -o $@ -am__xnu_module_SOURCES_DIST = loader/xnu_resume.c loader/i386/xnu.c \ - loader/xnu.c -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_x86_64_efi_TRUE@am_xnu_module_OBJECTS = loader/xnu_module-xnu_resume.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_x86_64_efi_TRUE@ loader/i386/xnu_module-xnu.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_FALSE@@COND_x86_64_efi_TRUE@ loader/xnu_module-xnu.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@am_xnu_module_OBJECTS = loader/xnu_module-xnu_resume.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@ loader/i386/xnu_module-xnu.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_multiboot_FALSE@@COND_i386_pc_TRUE@ loader/xnu_module-xnu.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_multiboot_TRUE@am_xnu_module_OBJECTS = loader/xnu_module-xnu_resume.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_multiboot_TRUE@ loader/i386/xnu_module-xnu.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_efi_FALSE@@COND_i386_multiboot_TRUE@ loader/xnu_module-xnu.$(OBJEXT) -@COND_i386_coreboot_FALSE@@COND_i386_efi_TRUE@am_xnu_module_OBJECTS = loader/xnu_module-xnu_resume.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_efi_TRUE@ loader/i386/xnu_module-xnu.$(OBJEXT) \ -@COND_i386_coreboot_FALSE@@COND_i386_efi_TRUE@ loader/xnu_module-xnu.$(OBJEXT) -@COND_i386_coreboot_TRUE@am_xnu_module_OBJECTS = loader/xnu_module-xnu_resume.$(OBJEXT) \ -@COND_i386_coreboot_TRUE@ loader/i386/xnu_module-xnu.$(OBJEXT) \ -@COND_i386_coreboot_TRUE@ loader/xnu_module-xnu.$(OBJEXT) -nodist_xnu_module_OBJECTS = -xnu_module_OBJECTS = $(am_xnu_module_OBJECTS) \ - $(nodist_xnu_module_OBJECTS) -xnu_module_LINK = $(CCLD) $(xnu_module_CFLAGS) $(CFLAGS) \ - $(xnu_module_LDFLAGS) $(LDFLAGS) -o $@ -am_xnu_uuid_module_OBJECTS = \ - commands/xnu_uuid_module-xnu_uuid.$(OBJEXT) -nodist_xnu_uuid_module_OBJECTS = -xnu_uuid_module_OBJECTS = $(am_xnu_uuid_module_OBJECTS) \ - $(nodist_xnu_uuid_module_OBJECTS) -xnu_uuid_module_LINK = $(CCLD) $(xnu_uuid_module_CFLAGS) $(CFLAGS) \ - $(xnu_uuid_module_LDFLAGS) $(LDFLAGS) -o $@ -am_xnu_uuid_test_module_OBJECTS = \ - tests/xnu_uuid_test_module-xnu_uuid_test.$(OBJEXT) -nodist_xnu_uuid_test_module_OBJECTS = -xnu_uuid_test_module_OBJECTS = $(am_xnu_uuid_test_module_OBJECTS) \ - $(nodist_xnu_uuid_test_module_OBJECTS) -xnu_uuid_test_module_LINK = $(CCLD) $(xnu_uuid_test_module_CFLAGS) \ - $(CFLAGS) $(xnu_uuid_test_module_LDFLAGS) $(LDFLAGS) -o $@ -am__xz_decompress_image_SOURCES_DIST = boot/mips/startup_raw.S \ - boot/decompressor/minilib.c boot/decompressor/xz.c \ - lib/xzembed/xz_dec_bcj.c lib/xzembed/xz_dec_lzma2.c \ - lib/xzembed/xz_dec_stream.c kern/compiler-rt.c -@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_TRUE@am_xz_decompress_image_OBJECTS = boot/mips/xz_decompress_image-startup_raw.$(OBJEXT) \ -@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_TRUE@ boot/decompressor/xz_decompress_image-minilib.$(OBJEXT) \ -@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_TRUE@ boot/decompressor/xz_decompress_image-xz.$(OBJEXT) \ -@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_TRUE@ lib/xzembed/xz_decompress_image-xz_dec_bcj.$(OBJEXT) \ -@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_TRUE@ lib/xzembed/xz_decompress_image-xz_dec_lzma2.$(OBJEXT) \ -@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_TRUE@ lib/xzembed/xz_decompress_image-xz_dec_stream.$(OBJEXT) \ -@COND_mips_arc_FALSE@@COND_mips_loongson_FALSE@@COND_mips_qemu_mips_TRUE@ kern/xz_decompress_image-compiler-rt.$(OBJEXT) -@COND_mips_arc_FALSE@@COND_mips_loongson_TRUE@am_xz_decompress_image_OBJECTS = boot/mips/xz_decompress_image-startup_raw.$(OBJEXT) \ -@COND_mips_arc_FALSE@@COND_mips_loongson_TRUE@ boot/decompressor/xz_decompress_image-minilib.$(OBJEXT) \ -@COND_mips_arc_FALSE@@COND_mips_loongson_TRUE@ boot/decompressor/xz_decompress_image-xz.$(OBJEXT) \ -@COND_mips_arc_FALSE@@COND_mips_loongson_TRUE@ lib/xzembed/xz_decompress_image-xz_dec_bcj.$(OBJEXT) \ -@COND_mips_arc_FALSE@@COND_mips_loongson_TRUE@ lib/xzembed/xz_decompress_image-xz_dec_lzma2.$(OBJEXT) \ -@COND_mips_arc_FALSE@@COND_mips_loongson_TRUE@ lib/xzembed/xz_decompress_image-xz_dec_stream.$(OBJEXT) \ -@COND_mips_arc_FALSE@@COND_mips_loongson_TRUE@ kern/xz_decompress_image-compiler-rt.$(OBJEXT) -@COND_mips_arc_TRUE@am_xz_decompress_image_OBJECTS = boot/mips/xz_decompress_image-startup_raw.$(OBJEXT) \ -@COND_mips_arc_TRUE@ boot/decompressor/xz_decompress_image-minilib.$(OBJEXT) \ -@COND_mips_arc_TRUE@ boot/decompressor/xz_decompress_image-xz.$(OBJEXT) \ -@COND_mips_arc_TRUE@ lib/xzembed/xz_decompress_image-xz_dec_bcj.$(OBJEXT) \ -@COND_mips_arc_TRUE@ lib/xzembed/xz_decompress_image-xz_dec_lzma2.$(OBJEXT) \ -@COND_mips_arc_TRUE@ lib/xzembed/xz_decompress_image-xz_dec_stream.$(OBJEXT) \ -@COND_mips_arc_TRUE@ kern/xz_decompress_image-compiler-rt.$(OBJEXT) -nodist_xz_decompress_image_OBJECTS = -xz_decompress_image_OBJECTS = $(am_xz_decompress_image_OBJECTS) \ - $(nodist_xz_decompress_image_OBJECTS) -xz_decompress_image_DEPENDENCIES = -xz_decompress_image_LINK = $(CCLD) $(xz_decompress_image_CFLAGS) \ - $(CFLAGS) $(xz_decompress_image_LDFLAGS) $(LDFLAGS) -o $@ -am_xzio_module_OBJECTS = io/xzio_module-xzio.$(OBJEXT) \ - lib/xzembed/xzio_module-xz_dec_bcj.$(OBJEXT) \ - lib/xzembed/xzio_module-xz_dec_lzma2.$(OBJEXT) \ - lib/xzembed/xzio_module-xz_dec_stream.$(OBJEXT) -nodist_xzio_module_OBJECTS = -xzio_module_OBJECTS = $(am_xzio_module_OBJECTS) \ - $(nodist_xzio_module_OBJECTS) -xzio_module_LINK = $(CCLD) $(xzio_module_CFLAGS) $(CFLAGS) \ - $(xzio_module_LDFLAGS) $(LDFLAGS) -o $@ -am_zfs_module_OBJECTS = fs/zfs/zfs_module-zfs.$(OBJEXT) \ - fs/zfs/zfs_module-zfs_lzjb.$(OBJEXT) \ - fs/zfs/zfs_module-zfs_lz4.$(OBJEXT) \ - fs/zfs/zfs_module-zfs_sha256.$(OBJEXT) \ - fs/zfs/zfs_module-zfs_fletcher.$(OBJEXT) -nodist_zfs_module_OBJECTS = -zfs_module_OBJECTS = $(am_zfs_module_OBJECTS) \ - $(nodist_zfs_module_OBJECTS) -zfs_module_LINK = $(CCLD) $(zfs_module_CFLAGS) $(CFLAGS) \ - $(zfs_module_LDFLAGS) $(LDFLAGS) -o $@ -am_zfscrypt_module_OBJECTS = \ - fs/zfs/zfscrypt_module-zfscrypt.$(OBJEXT) -nodist_zfscrypt_module_OBJECTS = -zfscrypt_module_OBJECTS = $(am_zfscrypt_module_OBJECTS) \ - $(nodist_zfscrypt_module_OBJECTS) -zfscrypt_module_LINK = $(CCLD) $(zfscrypt_module_CFLAGS) $(CFLAGS) \ - $(zfscrypt_module_LDFLAGS) $(LDFLAGS) -o $@ -am_zfsinfo_module_OBJECTS = fs/zfs/zfsinfo_module-zfsinfo.$(OBJEXT) -nodist_zfsinfo_module_OBJECTS = -zfsinfo_module_OBJECTS = $(am_zfsinfo_module_OBJECTS) \ - $(nodist_zfsinfo_module_OBJECTS) -zfsinfo_module_LINK = $(CCLD) $(zfsinfo_module_CFLAGS) $(CFLAGS) \ - $(zfsinfo_module_LDFLAGS) $(LDFLAGS) -o $@ -am_zstd_module_OBJECTS = lib/zstd/zstd_module-debug.$(OBJEXT) \ - lib/zstd/zstd_module-entropy_common.$(OBJEXT) \ - lib/zstd/zstd_module-error_private.$(OBJEXT) \ - lib/zstd/zstd_module-fse_decompress.$(OBJEXT) \ - lib/zstd/zstd_module-huf_decompress.$(OBJEXT) \ - lib/zstd/zstd_module-module.$(OBJEXT) \ - lib/zstd/zstd_module-xxhash.$(OBJEXT) \ - lib/zstd/zstd_module-zstd_common.$(OBJEXT) \ - lib/zstd/zstd_module-zstd_decompress.$(OBJEXT) -nodist_zstd_module_OBJECTS = -zstd_module_OBJECTS = $(am_zstd_module_OBJECTS) \ - $(nodist_zstd_module_OBJECTS) -zstd_module_LINK = $(CCLD) $(zstd_module_CFLAGS) $(CFLAGS) \ - $(zstd_module_LDFLAGS) $(LDFLAGS) -o $@ -am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; -am__vpath_adj = case $$p in \ - $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \ - *) f=$$p;; \ - esac; -am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`; -am__install_max = 40 -am__nobase_strip_setup = \ - srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'` -am__nobase_strip = \ - for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||" -am__nobase_list = $(am__nobase_strip_setup); \ - for p in $$list; do echo "$$p $$p"; done | \ - sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \ - $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \ - if (++n[$$2] == $(am__install_max)) \ - { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \ - END { for (dir in files) print dir, files[dir] }' -am__base_list = \ - sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \ - sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g' -am__uninstall_files_from_dir = { \ - test -z "$$files" \ - || { test ! -d "$$dir" && test ! -f "$$dir" && test ! -r "$$dir"; } \ - || { echo " ( cd '$$dir' && rm -f" $$files ")"; \ - $(am__cd) "$$dir" && rm -f $$files; }; \ - } -SCRIPTS = $(bin_SCRIPTS) $(grubconf_SCRIPTS) $(noinst_SCRIPTS) \ - $(platform_SCRIPTS) $(sbin_SCRIPTS) -AM_V_P = $(am__v_P_@AM_V@) -am__v_P_ = $(am__v_P_@AM_DEFAULT_V@) -am__v_P_0 = false -am__v_P_1 = : -AM_V_GEN = $(am__v_GEN_@AM_V@) -am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@) -am__v_GEN_0 = @echo " GEN " $@; -am__v_GEN_1 = -AM_V_at = $(am__v_at_@AM_V@) -am__v_at_ = $(am__v_at_@AM_DEFAULT_V@) -am__v_at_0 = @ -am__v_at_1 = -DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir) -depcomp = $(SHELL) $(top_srcdir)/build-aux/depcomp -am__depfiles_maybe = depfiles -am__mv = mv -f -AM_V_lt = $(am__v_lt_@AM_V@) -am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@) -am__v_lt_0 = --silent -am__v_lt_1 = -CPPASCOMPILE = $(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ - $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CCASFLAGS) $(CCASFLAGS) -AM_V_CPPAS = $(am__v_CPPAS_@AM_V@) -am__v_CPPAS_ = $(am__v_CPPAS_@AM_DEFAULT_V@) -am__v_CPPAS_0 = @echo " CPPAS " $@; -am__v_CPPAS_1 = -COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ - $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -AM_V_CC = $(am__v_CC_@AM_V@) -am__v_CC_ = $(am__v_CC_@AM_DEFAULT_V@) -am__v_CC_0 = @echo " CC " $@; -am__v_CC_1 = -CCLD = $(CC) -LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@ -AM_V_CCLD = $(am__v_CCLD_@AM_V@) -am__v_CCLD_ = $(am__v_CCLD_@AM_DEFAULT_V@) -am__v_CCLD_0 = @echo " CCLD " $@; -am__v_CCLD_1 = -SOURCES = $(acpi_module_SOURCES) $(nodist_acpi_module_SOURCES) \ - $(adler32_module_SOURCES) $(nodist_adler32_module_SOURCES) \ - $(affs_module_SOURCES) $(nodist_affs_module_SOURCES) \ - $(afs_module_SOURCES) $(nodist_afs_module_SOURCES) \ - $(ahci_module_SOURCES) $(nodist_ahci_module_SOURCES) \ - $(all_video_module_SOURCES) $(nodist_all_video_module_SOURCES) \ - $(aout_module_SOURCES) $(nodist_aout_module_SOURCES) \ - $(appleldr_module_SOURCES) $(nodist_appleldr_module_SOURCES) \ - $(archelp_module_SOURCES) $(nodist_archelp_module_SOURCES) \ - $(at_keyboard_module_SOURCES) \ - $(nodist_at_keyboard_module_SOURCES) $(ata_module_SOURCES) \ - $(nodist_ata_module_SOURCES) $(backtrace_module_SOURCES) \ - $(nodist_backtrace_module_SOURCES) $(bfs_module_SOURCES) \ - $(nodist_bfs_module_SOURCES) $(biosdisk_module_SOURCES) \ - $(nodist_biosdisk_module_SOURCES) $(bitmap_module_SOURCES) \ - $(nodist_bitmap_module_SOURCES) $(bitmap_scale_module_SOURCES) \ - $(nodist_bitmap_scale_module_SOURCES) \ - $(blocklist_module_SOURCES) $(nodist_blocklist_module_SOURCES) \ - $(boot_image_SOURCES) $(nodist_boot_image_SOURCES) \ - $(boot_module_SOURCES) $(nodist_boot_module_SOURCES) \ - $(boot_hybrid_image_SOURCES) \ - $(nodist_boot_hybrid_image_SOURCES) $(boottime_module_SOURCES) \ - $(nodist_boottime_module_SOURCES) $(bsd_module_SOURCES) \ - $(nodist_bsd_module_SOURCES) $(bswap_test_module_SOURCES) \ - $(nodist_bswap_test_module_SOURCES) $(btrfs_module_SOURCES) \ - $(nodist_btrfs_module_SOURCES) $(bufio_module_SOURCES) \ - $(nodist_bufio_module_SOURCES) $(cacheinfo_module_SOURCES) \ - $(nodist_cacheinfo_module_SOURCES) $(cat_module_SOURCES) \ - $(nodist_cat_module_SOURCES) $(cbfs_module_SOURCES) \ - $(nodist_cbfs_module_SOURCES) $(cbls_module_SOURCES) \ - $(nodist_cbls_module_SOURCES) $(cbmemc_module_SOURCES) \ - $(nodist_cbmemc_module_SOURCES) $(cbtable_module_SOURCES) \ - $(nodist_cbtable_module_SOURCES) $(cbtime_module_SOURCES) \ - $(nodist_cbtime_module_SOURCES) $(cdboot_image_SOURCES) \ - $(nodist_cdboot_image_SOURCES) $(chain_module_SOURCES) \ - $(nodist_chain_module_SOURCES) \ - $(cmdline_cat_test_module_SOURCES) \ - $(nodist_cmdline_cat_test_module_SOURCES) \ - $(cmosdump_module_SOURCES) $(nodist_cmosdump_module_SOURCES) \ - $(cmostest_module_SOURCES) $(nodist_cmostest_module_SOURCES) \ - $(cmp_module_SOURCES) $(nodist_cmp_module_SOURCES) \ - $(cmp_test_module_SOURCES) $(nodist_cmp_test_module_SOURCES) \ - $(configfile_module_SOURCES) \ - $(nodist_configfile_module_SOURCES) $(cpio_module_SOURCES) \ - $(nodist_cpio_module_SOURCES) $(cpio_be_module_SOURCES) \ - $(nodist_cpio_be_module_SOURCES) $(cpuid_module_SOURCES) \ - $(nodist_cpuid_module_SOURCES) $(crc64_module_SOURCES) \ - $(nodist_crc64_module_SOURCES) $(crypto_module_SOURCES) \ - $(nodist_crypto_module_SOURCES) $(cryptodisk_module_SOURCES) \ - $(nodist_cryptodisk_module_SOURCES) $(cs5536_module_SOURCES) \ - $(nodist_cs5536_module_SOURCES) $(ctz_test_module_SOURCES) \ - $(nodist_ctz_test_module_SOURCES) $(date_module_SOURCES) \ - $(nodist_date_module_SOURCES) $(datehook_module_SOURCES) \ - $(nodist_datehook_module_SOURCES) $(datetime_module_SOURCES) \ - $(nodist_datetime_module_SOURCES) $(disk_module_SOURCES) \ - $(nodist_disk_module_SOURCES) $(diskboot_image_SOURCES) \ - $(nodist_diskboot_image_SOURCES) $(diskfilter_module_SOURCES) \ - $(nodist_diskfilter_module_SOURCES) $(div_module_SOURCES) \ - $(nodist_div_module_SOURCES) $(div_test_module_SOURCES) \ - $(nodist_div_test_module_SOURCES) $(dm_nv_module_SOURCES) \ - $(nodist_dm_nv_module_SOURCES) $(drivemap_module_SOURCES) \ - $(nodist_drivemap_module_SOURCES) $(echo_module_SOURCES) \ - $(nodist_echo_module_SOURCES) $(efi_gop_module_SOURCES) \ - $(nodist_efi_gop_module_SOURCES) $(efi_uga_module_SOURCES) \ - $(nodist_efi_uga_module_SOURCES) $(efiemu_module_SOURCES) \ - $(nodist_efiemu_module_SOURCES) $(efifwsetup_module_SOURCES) \ - $(nodist_efifwsetup_module_SOURCES) $(efinet_module_SOURCES) \ - $(nodist_efinet_module_SOURCES) $(ehci_module_SOURCES) \ - $(nodist_ehci_module_SOURCES) $(elf_module_SOURCES) \ - $(nodist_elf_module_SOURCES) $(emunet_module_SOURCES) \ - $(nodist_emunet_module_SOURCES) $(emupci_module_SOURCES) \ - $(nodist_emupci_module_SOURCES) $(escc_module_SOURCES) \ - $(nodist_escc_module_SOURCES) $(eval_module_SOURCES) \ - $(nodist_eval_module_SOURCES) $(exfat_module_SOURCES) \ - $(nodist_exfat_module_SOURCES) $(exfctest_module_SOURCES) \ - $(nodist_exfctest_module_SOURCES) $(ext2_module_SOURCES) \ - $(nodist_ext2_module_SOURCES) $(extcmd_module_SOURCES) \ - $(nodist_extcmd_module_SOURCES) $(f2fs_module_SOURCES) \ - $(nodist_f2fs_module_SOURCES) $(fat_module_SOURCES) \ - $(nodist_fat_module_SOURCES) $(fdt_module_SOURCES) \ - $(nodist_fdt_module_SOURCES) $(file_module_SOURCES) \ - $(nodist_file_module_SOURCES) $(fixvideo_module_SOURCES) \ - $(nodist_fixvideo_module_SOURCES) $(font_module_SOURCES) \ - $(nodist_font_module_SOURCES) $(freedos_module_SOURCES) \ - $(nodist_freedos_module_SOURCES) $(fshelp_module_SOURCES) \ - $(nodist_fshelp_module_SOURCES) \ - $(functional_test_module_SOURCES) \ - $(nodist_functional_test_module_SOURCES) \ - $(fwstart_image_SOURCES) $(nodist_fwstart_image_SOURCES) \ - $(fwstart_fuloong2f_image_SOURCES) \ - $(nodist_fwstart_fuloong2f_image_SOURCES) \ - $(gcry_arcfour_module_SOURCES) \ - $(nodist_gcry_arcfour_module_SOURCES) \ - $(gcry_blowfish_module_SOURCES) \ - $(nodist_gcry_blowfish_module_SOURCES) \ - $(gcry_camellia_module_SOURCES) \ - $(nodist_gcry_camellia_module_SOURCES) \ - $(gcry_cast5_module_SOURCES) \ - $(nodist_gcry_cast5_module_SOURCES) $(gcry_crc_module_SOURCES) \ - $(nodist_gcry_crc_module_SOURCES) $(gcry_des_module_SOURCES) \ - $(nodist_gcry_des_module_SOURCES) $(gcry_dsa_module_SOURCES) \ - $(nodist_gcry_dsa_module_SOURCES) $(gcry_idea_module_SOURCES) \ - $(nodist_gcry_idea_module_SOURCES) $(gcry_md4_module_SOURCES) \ - $(nodist_gcry_md4_module_SOURCES) $(gcry_md5_module_SOURCES) \ - $(nodist_gcry_md5_module_SOURCES) \ - $(gcry_rfc2268_module_SOURCES) \ - $(nodist_gcry_rfc2268_module_SOURCES) \ - $(gcry_rijndael_module_SOURCES) \ - $(nodist_gcry_rijndael_module_SOURCES) \ - $(gcry_rmd160_module_SOURCES) \ - $(nodist_gcry_rmd160_module_SOURCES) \ - $(gcry_rsa_module_SOURCES) $(nodist_gcry_rsa_module_SOURCES) \ - $(gcry_seed_module_SOURCES) $(nodist_gcry_seed_module_SOURCES) \ - $(gcry_serpent_module_SOURCES) \ - $(nodist_gcry_serpent_module_SOURCES) \ - $(gcry_sha1_module_SOURCES) $(nodist_gcry_sha1_module_SOURCES) \ - $(gcry_sha256_module_SOURCES) \ - $(nodist_gcry_sha256_module_SOURCES) \ - $(gcry_sha512_module_SOURCES) \ - $(nodist_gcry_sha512_module_SOURCES) \ - $(gcry_tiger_module_SOURCES) \ - $(nodist_gcry_tiger_module_SOURCES) \ - $(gcry_twofish_module_SOURCES) \ - $(nodist_gcry_twofish_module_SOURCES) \ - $(gcry_whirlpool_module_SOURCES) \ - $(nodist_gcry_whirlpool_module_SOURCES) $(gdb_module_SOURCES) \ - $(nodist_gdb_module_SOURCES) $(geli_module_SOURCES) \ - $(nodist_geli_module_SOURCES) $(gettext_module_SOURCES) \ - $(nodist_gettext_module_SOURCES) $(gfxmenu_module_SOURCES) \ - $(nodist_gfxmenu_module_SOURCES) $(gfxterm_module_SOURCES) \ - $(nodist_gfxterm_module_SOURCES) \ - $(gfxterm_background_module_SOURCES) \ - $(nodist_gfxterm_background_module_SOURCES) \ - $(gfxterm_menu_module_SOURCES) \ - $(nodist_gfxterm_menu_module_SOURCES) \ - $(gptsync_module_SOURCES) $(nodist_gptsync_module_SOURCES) \ - $(grub_emu_SOURCES) $(nodist_grub_emu_SOURCES) \ - $(grub_emu_lite_SOURCES) $(nodist_grub_emu_lite_SOURCES) \ - $(gzio_module_SOURCES) $(nodist_gzio_module_SOURCES) \ - $(halt_module_SOURCES) $(nodist_halt_module_SOURCES) \ - $(hashsum_module_SOURCES) $(nodist_hashsum_module_SOURCES) \ - $(hdparm_module_SOURCES) $(nodist_hdparm_module_SOURCES) \ - $(hello_module_SOURCES) $(nodist_hello_module_SOURCES) \ - $(help_module_SOURCES) $(nodist_help_module_SOURCES) \ - $(hexdump_module_SOURCES) $(nodist_hexdump_module_SOURCES) \ - $(hfs_module_SOURCES) $(nodist_hfs_module_SOURCES) \ - $(hfsplus_module_SOURCES) $(nodist_hfsplus_module_SOURCES) \ - $(hfspluscomp_module_SOURCES) \ - $(nodist_hfspluscomp_module_SOURCES) $(http_module_SOURCES) \ - $(nodist_http_module_SOURCES) $(ieee1275_fb_module_SOURCES) \ - $(nodist_ieee1275_fb_module_SOURCES) $(iorw_module_SOURCES) \ - $(nodist_iorw_module_SOURCES) $(iso9660_module_SOURCES) \ - $(nodist_iso9660_module_SOURCES) $(jfs_module_SOURCES) \ - $(nodist_jfs_module_SOURCES) $(jpeg_module_SOURCES) \ - $(nodist_jpeg_module_SOURCES) $(kernel_exec_SOURCES) \ - $(nodist_kernel_exec_SOURCES) $(keylayouts_module_SOURCES) \ - $(nodist_keylayouts_module_SOURCES) \ - $(keystatus_module_SOURCES) $(nodist_keystatus_module_SOURCES) \ - $(ldm_module_SOURCES) $(nodist_ldm_module_SOURCES) \ - $(legacy_password_test_module_SOURCES) \ - $(nodist_legacy_password_test_module_SOURCES) \ - $(legacycfg_module_SOURCES) $(nodist_legacycfg_module_SOURCES) \ - $(linux_module_SOURCES) $(nodist_linux_module_SOURCES) \ - $(linux16_module_SOURCES) $(nodist_linux16_module_SOURCES) \ - $(lnxboot_image_SOURCES) $(nodist_lnxboot_image_SOURCES) \ - $(loadbios_module_SOURCES) $(nodist_loadbios_module_SOURCES) \ - $(loadenv_module_SOURCES) $(nodist_loadenv_module_SOURCES) \ - $(loopback_module_SOURCES) $(nodist_loopback_module_SOURCES) \ - $(ls_module_SOURCES) $(nodist_ls_module_SOURCES) \ - $(lsacpi_module_SOURCES) $(nodist_lsacpi_module_SOURCES) \ - $(lsapm_module_SOURCES) $(nodist_lsapm_module_SOURCES) \ - $(lsdev_module_SOURCES) $(nodist_lsdev_module_SOURCES) \ - $(lsefi_module_SOURCES) $(nodist_lsefi_module_SOURCES) \ - $(lsefimmap_module_SOURCES) $(nodist_lsefimmap_module_SOURCES) \ - $(lsefisystab_module_SOURCES) \ - $(nodist_lsefisystab_module_SOURCES) $(lsmmap_module_SOURCES) \ - $(nodist_lsmmap_module_SOURCES) $(lspci_module_SOURCES) \ - $(nodist_lspci_module_SOURCES) $(lssal_module_SOURCES) \ - $(nodist_lssal_module_SOURCES) $(lsspd_module_SOURCES) \ - $(nodist_lsspd_module_SOURCES) $(lsxen_module_SOURCES) \ - $(nodist_lsxen_module_SOURCES) $(luks_module_SOURCES) \ - $(nodist_luks_module_SOURCES) $(lvm_module_SOURCES) \ - $(nodist_lvm_module_SOURCES) $(lzma_decompress_image_SOURCES) \ - $(nodist_lzma_decompress_image_SOURCES) \ - $(lzopio_module_SOURCES) $(nodist_lzopio_module_SOURCES) \ - $(macbless_module_SOURCES) $(nodist_macbless_module_SOURCES) \ - $(macho_module_SOURCES) $(nodist_macho_module_SOURCES) \ - $(mda_text_module_SOURCES) $(nodist_mda_text_module_SOURCES) \ - $(mdraid09_module_SOURCES) $(nodist_mdraid09_module_SOURCES) \ - $(mdraid09_be_module_SOURCES) \ - $(nodist_mdraid09_be_module_SOURCES) \ - $(mdraid1x_module_SOURCES) $(nodist_mdraid1x_module_SOURCES) \ - $(memdisk_module_SOURCES) $(nodist_memdisk_module_SOURCES) \ - $(memrw_module_SOURCES) $(nodist_memrw_module_SOURCES) \ - $(minicmd_module_SOURCES) $(nodist_minicmd_module_SOURCES) \ - $(minix_module_SOURCES) $(nodist_minix_module_SOURCES) \ - $(minix2_module_SOURCES) $(nodist_minix2_module_SOURCES) \ - $(minix2_be_module_SOURCES) $(nodist_minix2_be_module_SOURCES) \ - $(minix3_module_SOURCES) $(nodist_minix3_module_SOURCES) \ - $(minix3_be_module_SOURCES) $(nodist_minix3_be_module_SOURCES) \ - $(minix_be_module_SOURCES) $(nodist_minix_be_module_SOURCES) \ - $(mmap_module_SOURCES) $(nodist_mmap_module_SOURCES) \ - $(morse_module_SOURCES) $(nodist_morse_module_SOURCES) \ - $(mpi_module_SOURCES) $(nodist_mpi_module_SOURCES) \ - $(msdospart_module_SOURCES) $(nodist_msdospart_module_SOURCES) \ - $(mul_test_module_SOURCES) $(nodist_mul_test_module_SOURCES) \ - $(multiboot_module_SOURCES) $(nodist_multiboot_module_SOURCES) \ - $(multiboot2_module_SOURCES) \ - $(nodist_multiboot2_module_SOURCES) $(nand_module_SOURCES) \ - $(nodist_nand_module_SOURCES) $(nativedisk_module_SOURCES) \ - $(nodist_nativedisk_module_SOURCES) $(net_module_SOURCES) \ - $(nodist_net_module_SOURCES) $(newc_module_SOURCES) \ - $(nodist_newc_module_SOURCES) $(nilfs2_module_SOURCES) \ - $(nodist_nilfs2_module_SOURCES) \ - $(none_decompress_image_SOURCES) \ - $(nodist_none_decompress_image_SOURCES) \ - $(normal_module_SOURCES) $(nodist_normal_module_SOURCES) \ - $(ntfs_module_SOURCES) $(nodist_ntfs_module_SOURCES) \ - $(ntfscomp_module_SOURCES) $(nodist_ntfscomp_module_SOURCES) \ - $(ntldr_module_SOURCES) $(nodist_ntldr_module_SOURCES) \ - $(odc_module_SOURCES) $(nodist_odc_module_SOURCES) \ - $(offsetio_module_SOURCES) $(nodist_offsetio_module_SOURCES) \ - $(ofnet_module_SOURCES) $(nodist_ofnet_module_SOURCES) \ - $(ohci_module_SOURCES) $(nodist_ohci_module_SOURCES) \ - $(part_acorn_module_SOURCES) \ - $(nodist_part_acorn_module_SOURCES) \ - $(part_amiga_module_SOURCES) \ - $(nodist_part_amiga_module_SOURCES) \ - $(part_apple_module_SOURCES) \ - $(nodist_part_apple_module_SOURCES) $(part_bsd_module_SOURCES) \ - $(nodist_part_bsd_module_SOURCES) $(part_dfly_module_SOURCES) \ - $(nodist_part_dfly_module_SOURCES) $(part_dvh_module_SOURCES) \ - $(nodist_part_dvh_module_SOURCES) $(part_gpt_module_SOURCES) \ - $(nodist_part_gpt_module_SOURCES) $(part_msdos_module_SOURCES) \ - $(nodist_part_msdos_module_SOURCES) \ - $(part_plan_module_SOURCES) $(nodist_part_plan_module_SOURCES) \ - $(part_sun_module_SOURCES) $(nodist_part_sun_module_SOURCES) \ - $(part_sunpc_module_SOURCES) \ - $(nodist_part_sunpc_module_SOURCES) $(parttool_module_SOURCES) \ - $(nodist_parttool_module_SOURCES) $(password_module_SOURCES) \ - $(nodist_password_module_SOURCES) \ - $(password_pbkdf2_module_SOURCES) \ - $(nodist_password_pbkdf2_module_SOURCES) \ - $(pata_module_SOURCES) $(nodist_pata_module_SOURCES) \ - $(pbkdf2_module_SOURCES) $(nodist_pbkdf2_module_SOURCES) \ - $(pbkdf2_test_module_SOURCES) \ - $(nodist_pbkdf2_test_module_SOURCES) $(pci_module_SOURCES) \ - $(nodist_pci_module_SOURCES) $(pcidump_module_SOURCES) \ - $(nodist_pcidump_module_SOURCES) $(pgp_module_SOURCES) \ - $(nodist_pgp_module_SOURCES) $(plan9_module_SOURCES) \ - $(nodist_plan9_module_SOURCES) $(play_module_SOURCES) \ - $(nodist_play_module_SOURCES) $(png_module_SOURCES) \ - $(nodist_png_module_SOURCES) $(priority_queue_module_SOURCES) \ - $(nodist_priority_queue_module_SOURCES) \ - $(probe_module_SOURCES) $(nodist_probe_module_SOURCES) \ - $(procfs_module_SOURCES) $(nodist_procfs_module_SOURCES) \ - $(progress_module_SOURCES) $(nodist_progress_module_SOURCES) \ - $(pxe_module_SOURCES) $(nodist_pxe_module_SOURCES) \ - $(pxeboot_image_SOURCES) $(nodist_pxeboot_image_SOURCES) \ - $(pxechain_module_SOURCES) $(nodist_pxechain_module_SOURCES) \ - $(raid5rec_module_SOURCES) $(nodist_raid5rec_module_SOURCES) \ - $(raid6rec_module_SOURCES) $(nodist_raid6rec_module_SOURCES) \ - $(random_module_SOURCES) $(nodist_random_module_SOURCES) \ - $(rdmsr_module_SOURCES) $(nodist_rdmsr_module_SOURCES) \ - $(read_module_SOURCES) $(nodist_read_module_SOURCES) \ - $(reboot_module_SOURCES) $(nodist_reboot_module_SOURCES) \ - $(regexp_module_SOURCES) $(nodist_regexp_module_SOURCES) \ - $(reiserfs_module_SOURCES) $(nodist_reiserfs_module_SOURCES) \ - $(relocator_module_SOURCES) $(nodist_relocator_module_SOURCES) \ - $(romfs_module_SOURCES) $(nodist_romfs_module_SOURCES) \ - $(scsi_module_SOURCES) $(nodist_scsi_module_SOURCES) \ - $(sdl_module_SOURCES) $(nodist_sdl_module_SOURCES) \ - $(search_module_SOURCES) $(nodist_search_module_SOURCES) \ - $(search_fs_file_module_SOURCES) \ - $(nodist_search_fs_file_module_SOURCES) \ - $(search_fs_uuid_module_SOURCES) \ - $(nodist_search_fs_uuid_module_SOURCES) \ - $(search_label_module_SOURCES) \ - $(nodist_search_label_module_SOURCES) \ - $(sendkey_module_SOURCES) $(nodist_sendkey_module_SOURCES) \ - $(serial_module_SOURCES) $(nodist_serial_module_SOURCES) \ - $(setjmp_module_SOURCES) $(nodist_setjmp_module_SOURCES) \ - $(setjmp_test_module_SOURCES) \ - $(nodist_setjmp_test_module_SOURCES) $(setpci_module_SOURCES) \ - $(nodist_setpci_module_SOURCES) $(sfs_module_SOURCES) \ - $(nodist_sfs_module_SOURCES) $(shift_test_module_SOURCES) \ - $(nodist_shift_test_module_SOURCES) \ - $(shim_lock_module_SOURCES) $(nodist_shim_lock_module_SOURCES) \ - $(signature_test_module_SOURCES) \ - $(nodist_signature_test_module_SOURCES) \ - $(sleep_module_SOURCES) $(nodist_sleep_module_SOURCES) \ - $(sleep_test_module_SOURCES) \ - $(nodist_sleep_test_module_SOURCES) $(spkmodem_module_SOURCES) \ - $(nodist_spkmodem_module_SOURCES) $(squash4_module_SOURCES) \ - $(nodist_squash4_module_SOURCES) \ - $(strtoull_test_module_SOURCES) \ - $(nodist_strtoull_test_module_SOURCES) \ - $(suspend_module_SOURCES) $(nodist_suspend_module_SOURCES) \ - $(syslinuxcfg_module_SOURCES) \ - $(nodist_syslinuxcfg_module_SOURCES) $(tar_module_SOURCES) \ - $(nodist_tar_module_SOURCES) $(terminal_module_SOURCES) \ - $(nodist_terminal_module_SOURCES) $(terminfo_module_SOURCES) \ - $(nodist_terminfo_module_SOURCES) $(test_module_SOURCES) \ - $(nodist_test_module_SOURCES) $(test_blockarg_module_SOURCES) \ - $(nodist_test_blockarg_module_SOURCES) \ - $(testload_module_SOURCES) $(nodist_testload_module_SOURCES) \ - $(testspeed_module_SOURCES) $(nodist_testspeed_module_SOURCES) \ - $(tftp_module_SOURCES) $(nodist_tftp_module_SOURCES) \ - $(tga_module_SOURCES) $(nodist_tga_module_SOURCES) \ - $(time_module_SOURCES) $(nodist_time_module_SOURCES) \ - $(tpm_module_SOURCES) $(nodist_tpm_module_SOURCES) \ - $(tr_module_SOURCES) $(nodist_tr_module_SOURCES) \ - $(trig_module_SOURCES) $(nodist_trig_module_SOURCES) \ - $(true_module_SOURCES) $(nodist_true_module_SOURCES) \ - $(truecrypt_module_SOURCES) $(nodist_truecrypt_module_SOURCES) \ - $(ubootnet_module_SOURCES) $(nodist_ubootnet_module_SOURCES) \ - $(udf_module_SOURCES) $(nodist_udf_module_SOURCES) \ - $(ufs1_module_SOURCES) $(nodist_ufs1_module_SOURCES) \ - $(ufs1_be_module_SOURCES) $(nodist_ufs1_be_module_SOURCES) \ - $(ufs2_module_SOURCES) $(nodist_ufs2_module_SOURCES) \ - $(uhci_module_SOURCES) $(nodist_uhci_module_SOURCES) \ - $(usb_module_SOURCES) $(nodist_usb_module_SOURCES) \ - $(usb_keyboard_module_SOURCES) \ - $(nodist_usb_keyboard_module_SOURCES) $(usbms_module_SOURCES) \ - $(nodist_usbms_module_SOURCES) \ - $(usbserial_common_module_SOURCES) \ - $(nodist_usbserial_common_module_SOURCES) \ - $(usbserial_ftdi_module_SOURCES) \ - $(nodist_usbserial_ftdi_module_SOURCES) \ - $(usbserial_pl2303_module_SOURCES) \ - $(nodist_usbserial_pl2303_module_SOURCES) \ - $(usbserial_usbdebug_module_SOURCES) \ - $(nodist_usbserial_usbdebug_module_SOURCES) \ - $(usbtest_module_SOURCES) $(nodist_usbtest_module_SOURCES) \ - $(vbe_module_SOURCES) $(nodist_vbe_module_SOURCES) \ - $(verifiers_module_SOURCES) $(nodist_verifiers_module_SOURCES) \ - $(vga_module_SOURCES) $(nodist_vga_module_SOURCES) \ - $(vga_text_module_SOURCES) $(nodist_vga_text_module_SOURCES) \ - $(video_module_SOURCES) $(nodist_video_module_SOURCES) \ - $(video_bochs_module_SOURCES) \ - $(nodist_video_bochs_module_SOURCES) \ - $(video_cirrus_module_SOURCES) \ - $(nodist_video_cirrus_module_SOURCES) \ - $(video_colors_module_SOURCES) \ - $(nodist_video_colors_module_SOURCES) \ - $(video_fb_module_SOURCES) $(nodist_video_fb_module_SOURCES) \ - $(videoinfo_module_SOURCES) $(nodist_videoinfo_module_SOURCES) \ - $(videotest_module_SOURCES) $(nodist_videotest_module_SOURCES) \ - $(videotest_checksum_module_SOURCES) \ - $(nodist_videotest_checksum_module_SOURCES) \ - $(wrmsr_module_SOURCES) $(nodist_wrmsr_module_SOURCES) \ - $(xen_boot_module_SOURCES) $(nodist_xen_boot_module_SOURCES) \ - $(xfs_module_SOURCES) $(nodist_xfs_module_SOURCES) \ - $(xnu_module_SOURCES) $(nodist_xnu_module_SOURCES) \ - $(xnu_uuid_module_SOURCES) $(nodist_xnu_uuid_module_SOURCES) \ - $(xnu_uuid_test_module_SOURCES) \ - $(nodist_xnu_uuid_test_module_SOURCES) \ - $(xz_decompress_image_SOURCES) \ - $(nodist_xz_decompress_image_SOURCES) $(xzio_module_SOURCES) \ - $(nodist_xzio_module_SOURCES) $(zfs_module_SOURCES) \ - $(nodist_zfs_module_SOURCES) $(zfscrypt_module_SOURCES) \ - $(nodist_zfscrypt_module_SOURCES) $(zfsinfo_module_SOURCES) \ - $(nodist_zfsinfo_module_SOURCES) $(zstd_module_SOURCES) \ - $(nodist_zstd_module_SOURCES) -DIST_SOURCES = $(am__acpi_module_SOURCES_DIST) \ - $(adler32_module_SOURCES) $(affs_module_SOURCES) \ - $(afs_module_SOURCES) $(am__ahci_module_SOURCES_DIST) \ - $(all_video_module_SOURCES) $(am__aout_module_SOURCES_DIST) \ - $(am__appleldr_module_SOURCES_DIST) $(archelp_module_SOURCES) \ - $(am__at_keyboard_module_SOURCES_DIST) \ - $(am__ata_module_SOURCES_DIST) \ - $(am__backtrace_module_SOURCES_DIST) $(bfs_module_SOURCES) \ - $(am__biosdisk_module_SOURCES_DIST) $(bitmap_module_SOURCES) \ - $(bitmap_scale_module_SOURCES) $(blocklist_module_SOURCES) \ - $(am__boot_image_SOURCES_DIST) $(am__boot_module_SOURCES_DIST) \ - $(am__boot_hybrid_image_SOURCES_DIST) \ - $(am__boottime_module_SOURCES_DIST) \ - $(am__bsd_module_SOURCES_DIST) $(bswap_test_module_SOURCES) \ - $(btrfs_module_SOURCES) $(am__bufio_module_SOURCES_DIST) \ - $(am__cacheinfo_module_SOURCES_DIST) $(cat_module_SOURCES) \ - $(cbfs_module_SOURCES) $(am__cbls_module_SOURCES_DIST) \ - $(am__cbmemc_module_SOURCES_DIST) \ - $(am__cbtable_module_SOURCES_DIST) \ - $(am__cbtime_module_SOURCES_DIST) \ - $(am__cdboot_image_SOURCES_DIST) \ - $(am__chain_module_SOURCES_DIST) \ - $(cmdline_cat_test_module_SOURCES) \ - $(am__cmosdump_module_SOURCES_DIST) \ - $(am__cmostest_module_SOURCES_DIST) $(cmp_module_SOURCES) \ - $(cmp_test_module_SOURCES) $(configfile_module_SOURCES) \ - $(cpio_module_SOURCES) $(cpio_be_module_SOURCES) \ - $(am__cpuid_module_SOURCES_DIST) $(crc64_module_SOURCES) \ - $(crypto_module_SOURCES) $(cryptodisk_module_SOURCES) \ - $(am__cs5536_module_SOURCES_DIST) $(ctz_test_module_SOURCES) \ - $(date_module_SOURCES) $(datehook_module_SOURCES) \ - $(am__datetime_module_SOURCES_DIST) $(disk_module_SOURCES) \ - $(am__diskboot_image_SOURCES_DIST) \ - $(diskfilter_module_SOURCES) $(am__div_module_SOURCES_DIST) \ - $(div_test_module_SOURCES) $(dm_nv_module_SOURCES) \ - $(am__drivemap_module_SOURCES_DIST) $(echo_module_SOURCES) \ - $(am__efi_gop_module_SOURCES_DIST) \ - $(am__efi_uga_module_SOURCES_DIST) \ - $(am__efiemu_module_SOURCES_DIST) \ - $(am__efifwsetup_module_SOURCES_DIST) \ - $(am__efinet_module_SOURCES_DIST) \ - $(am__ehci_module_SOURCES_DIST) $(elf_module_SOURCES) \ - $(am__emunet_module_SOURCES_DIST) \ - $(am__emupci_module_SOURCES_DIST) \ - $(am__escc_module_SOURCES_DIST) $(eval_module_SOURCES) \ - $(exfat_module_SOURCES) $(exfctest_module_SOURCES) \ - $(ext2_module_SOURCES) $(am__extcmd_module_SOURCES_DIST) \ - $(f2fs_module_SOURCES) $(fat_module_SOURCES) \ - $(am__fdt_module_SOURCES_DIST) $(file_module_SOURCES) \ - $(am__fixvideo_module_SOURCES_DIST) \ - $(am__font_module_SOURCES_DIST) \ - $(am__freedos_module_SOURCES_DIST) $(fshelp_module_SOURCES) \ - $(functional_test_module_SOURCES) \ - $(am__fwstart_image_SOURCES_DIST) \ - $(am__fwstart_fuloong2f_image_SOURCES_DIST) \ - $(gcry_arcfour_module_SOURCES) $(gcry_blowfish_module_SOURCES) \ - $(gcry_camellia_module_SOURCES) $(gcry_cast5_module_SOURCES) \ - $(gcry_crc_module_SOURCES) $(gcry_des_module_SOURCES) \ - $(gcry_dsa_module_SOURCES) $(gcry_idea_module_SOURCES) \ - $(gcry_md4_module_SOURCES) $(gcry_md5_module_SOURCES) \ - $(gcry_rfc2268_module_SOURCES) $(gcry_rijndael_module_SOURCES) \ - $(gcry_rmd160_module_SOURCES) $(gcry_rsa_module_SOURCES) \ - $(gcry_seed_module_SOURCES) $(gcry_serpent_module_SOURCES) \ - $(gcry_sha1_module_SOURCES) $(gcry_sha256_module_SOURCES) \ - $(gcry_sha512_module_SOURCES) $(gcry_tiger_module_SOURCES) \ - $(gcry_twofish_module_SOURCES) \ - $(gcry_whirlpool_module_SOURCES) \ - $(am__gdb_module_SOURCES_DIST) $(geli_module_SOURCES) \ - $(gettext_module_SOURCES) $(gfxmenu_module_SOURCES) \ - $(am__gfxterm_module_SOURCES_DIST) \ - $(gfxterm_background_module_SOURCES) \ - $(gfxterm_menu_module_SOURCES) $(gptsync_module_SOURCES) \ - $(am__grub_emu_SOURCES_DIST) $(am__grub_emu_lite_SOURCES_DIST) \ - $(gzio_module_SOURCES) $(am__halt_module_SOURCES_DIST) \ - $(hashsum_module_SOURCES) $(am__hdparm_module_SOURCES_DIST) \ - $(hello_module_SOURCES) $(help_module_SOURCES) \ - $(hexdump_module_SOURCES) $(hfs_module_SOURCES) \ - $(hfsplus_module_SOURCES) $(hfspluscomp_module_SOURCES) \ - $(http_module_SOURCES) $(am__ieee1275_fb_module_SOURCES_DIST) \ - $(am__iorw_module_SOURCES_DIST) $(iso9660_module_SOURCES) \ - $(jfs_module_SOURCES) $(jpeg_module_SOURCES) \ - $(am__kernel_exec_SOURCES_DIST) \ - $(am__keylayouts_module_SOURCES_DIST) \ - $(keystatus_module_SOURCES) $(ldm_module_SOURCES) \ - $(am__legacy_password_test_module_SOURCES_DIST) \ - $(am__legacycfg_module_SOURCES_DIST) \ - $(am__linux_module_SOURCES_DIST) \ - $(am__linux16_module_SOURCES_DIST) \ - $(am__lnxboot_image_SOURCES_DIST) \ - $(am__loadbios_module_SOURCES_DIST) $(loadenv_module_SOURCES) \ - $(loopback_module_SOURCES) $(ls_module_SOURCES) \ - $(am__lsacpi_module_SOURCES_DIST) \ - $(am__lsapm_module_SOURCES_DIST) \ - $(am__lsdev_module_SOURCES_DIST) \ - $(am__lsefi_module_SOURCES_DIST) \ - $(am__lsefimmap_module_SOURCES_DIST) \ - $(am__lsefisystab_module_SOURCES_DIST) \ - $(lsmmap_module_SOURCES) $(am__lspci_module_SOURCES_DIST) \ - $(am__lssal_module_SOURCES_DIST) \ - $(am__lsspd_module_SOURCES_DIST) \ - $(am__lsxen_module_SOURCES_DIST) $(luks_module_SOURCES) \ - $(lvm_module_SOURCES) \ - $(am__lzma_decompress_image_SOURCES_DIST) \ - $(lzopio_module_SOURCES) $(macbless_module_SOURCES) \ - $(macho_module_SOURCES) $(am__mda_text_module_SOURCES_DIST) \ - $(mdraid09_module_SOURCES) $(mdraid09_be_module_SOURCES) \ - $(mdraid1x_module_SOURCES) $(memdisk_module_SOURCES) \ - $(memrw_module_SOURCES) $(minicmd_module_SOURCES) \ - $(minix_module_SOURCES) $(minix2_module_SOURCES) \ - $(minix2_be_module_SOURCES) $(minix3_module_SOURCES) \ - $(minix3_be_module_SOURCES) $(minix_be_module_SOURCES) \ - $(am__mmap_module_SOURCES_DIST) \ - $(am__morse_module_SOURCES_DIST) $(mpi_module_SOURCES) \ - $(msdospart_module_SOURCES) $(mul_test_module_SOURCES) \ - $(am__multiboot_module_SOURCES_DIST) \ - $(am__multiboot2_module_SOURCES_DIST) \ - $(am__nand_module_SOURCES_DIST) \ - $(am__nativedisk_module_SOURCES_DIST) $(net_module_SOURCES) \ - $(newc_module_SOURCES) $(nilfs2_module_SOURCES) \ - $(am__none_decompress_image_SOURCES_DIST) \ - $(normal_module_SOURCES) $(ntfs_module_SOURCES) \ - $(ntfscomp_module_SOURCES) $(am__ntldr_module_SOURCES_DIST) \ - $(odc_module_SOURCES) $(offsetio_module_SOURCES) \ - $(am__ofnet_module_SOURCES_DIST) \ - $(am__ohci_module_SOURCES_DIST) $(part_acorn_module_SOURCES) \ - $(part_amiga_module_SOURCES) $(part_apple_module_SOURCES) \ - $(part_bsd_module_SOURCES) $(part_dfly_module_SOURCES) \ - $(part_dvh_module_SOURCES) $(part_gpt_module_SOURCES) \ - $(part_msdos_module_SOURCES) $(part_plan_module_SOURCES) \ - $(part_sun_module_SOURCES) $(part_sunpc_module_SOURCES) \ - $(parttool_module_SOURCES) $(password_module_SOURCES) \ - $(password_pbkdf2_module_SOURCES) \ - $(am__pata_module_SOURCES_DIST) $(pbkdf2_module_SOURCES) \ - $(pbkdf2_test_module_SOURCES) $(am__pci_module_SOURCES_DIST) \ - $(am__pcidump_module_SOURCES_DIST) $(pgp_module_SOURCES) \ - $(am__plan9_module_SOURCES_DIST) \ - $(am__play_module_SOURCES_DIST) $(png_module_SOURCES) \ - $(priority_queue_module_SOURCES) $(probe_module_SOURCES) \ - $(procfs_module_SOURCES) $(progress_module_SOURCES) \ - $(am__pxe_module_SOURCES_DIST) \ - $(am__pxeboot_image_SOURCES_DIST) \ - $(am__pxechain_module_SOURCES_DIST) $(raid5rec_module_SOURCES) \ - $(raid6rec_module_SOURCES) $(am__random_module_SOURCES_DIST) \ - $(am__rdmsr_module_SOURCES_DIST) $(read_module_SOURCES) \ - $(am__reboot_module_SOURCES_DIST) $(regexp_module_SOURCES) \ - $(reiserfs_module_SOURCES) \ - $(am__relocator_module_SOURCES_DIST) $(romfs_module_SOURCES) \ - $(scsi_module_SOURCES) $(am__sdl_module_SOURCES_DIST) \ - $(search_module_SOURCES) $(search_fs_file_module_SOURCES) \ - $(search_fs_uuid_module_SOURCES) \ - $(search_label_module_SOURCES) \ - $(am__sendkey_module_SOURCES_DIST) \ - $(am__serial_module_SOURCES_DIST) $(setjmp_module_SOURCES) \ - $(setjmp_test_module_SOURCES) \ - $(am__setpci_module_SOURCES_DIST) $(sfs_module_SOURCES) \ - $(shift_test_module_SOURCES) \ - $(am__shim_lock_module_SOURCES_DIST) \ - $(signature_test_module_SOURCES) $(sleep_module_SOURCES) \ - $(sleep_test_module_SOURCES) \ - $(am__spkmodem_module_SOURCES_DIST) $(squash4_module_SOURCES) \ - $(strtoull_test_module_SOURCES) \ - $(am__suspend_module_SOURCES_DIST) \ - $(syslinuxcfg_module_SOURCES) $(tar_module_SOURCES) \ - $(terminal_module_SOURCES) $(am__terminfo_module_SOURCES_DIST) \ - $(test_module_SOURCES) $(test_blockarg_module_SOURCES) \ - $(testload_module_SOURCES) $(testspeed_module_SOURCES) \ - $(tftp_module_SOURCES) $(tga_module_SOURCES) \ - $(time_module_SOURCES) $(am__tpm_module_SOURCES_DIST) \ - $(tr_module_SOURCES) $(trig_module_SOURCES) \ - $(true_module_SOURCES) $(am__truecrypt_module_SOURCES_DIST) \ - $(am__ubootnet_module_SOURCES_DIST) $(udf_module_SOURCES) \ - $(ufs1_module_SOURCES) $(ufs1_be_module_SOURCES) \ - $(ufs2_module_SOURCES) $(am__uhci_module_SOURCES_DIST) \ - $(am__usb_module_SOURCES_DIST) \ - $(am__usb_keyboard_module_SOURCES_DIST) \ - $(am__usbms_module_SOURCES_DIST) \ - $(am__usbserial_common_module_SOURCES_DIST) \ - $(am__usbserial_ftdi_module_SOURCES_DIST) \ - $(am__usbserial_pl2303_module_SOURCES_DIST) \ - $(am__usbserial_usbdebug_module_SOURCES_DIST) \ - $(am__usbtest_module_SOURCES_DIST) \ - $(am__vbe_module_SOURCES_DIST) $(verifiers_module_SOURCES) \ - $(am__vga_module_SOURCES_DIST) \ - $(am__vga_text_module_SOURCES_DIST) \ - $(am__video_module_SOURCES_DIST) \ - $(am__video_bochs_module_SOURCES_DIST) \ - $(am__video_cirrus_module_SOURCES_DIST) \ - $(video_colors_module_SOURCES) \ - $(am__video_fb_module_SOURCES_DIST) \ - $(videoinfo_module_SOURCES) $(videotest_module_SOURCES) \ - $(videotest_checksum_module_SOURCES) \ - $(am__wrmsr_module_SOURCES_DIST) \ - $(am__xen_boot_module_SOURCES_DIST) $(xfs_module_SOURCES) \ - $(am__xnu_module_SOURCES_DIST) $(xnu_uuid_module_SOURCES) \ - $(xnu_uuid_test_module_SOURCES) \ - $(am__xz_decompress_image_SOURCES_DIST) $(xzio_module_SOURCES) \ - $(zfs_module_SOURCES) $(zfscrypt_module_SOURCES) \ - $(zfsinfo_module_SOURCES) $(zstd_module_SOURCES) -am__can_run_installinfo = \ - case $$AM_UPDATE_INFO_DIR in \ - n|no|NO) false;; \ - *) (install-info --version) >/dev/null 2>&1;; \ - esac -man1dir = $(mandir)/man1 -NROFF = nroff -MANS = $(man_MANS) -am__dist_noinst_DATA_DIST = kern/disk_common.c gentrigtables.c \ - commands/search.c efiemu/prepare.c efiemu/loadcore.c \ - efiemu/runtime/efiemu.S efiemu/runtime/efiemu.c kern/elfXX.c \ - lib/libgcrypt-grub/cipher/crypto.lst \ - lib/i386/relocator_common.S kern/powerpc/cache_flush.S \ - lib/i386/setjmp.S lib/mips/setjmp.S lib/x86_64/setjmp.S \ - lib/sparc64/setjmp.S lib/powerpc/setjmp.S lib/ia64/setjmp.S \ - lib/ia64/longjmp.S lib/arm/setjmp.S lib/arm64/setjmp.S \ - lib/riscv/setjmp.S loader/i386/bsdXX.c \ - loader/i386/bsd_pagetable.c loader/multiboot_elfxx.c \ - loader/machoXX.c script/yylex.l script/parser.y \ - commands/fileXX.c loader/i386/xen_fileXX.c video/sm712_init.c \ - video/sis315_init.c kern/arm/cache.S osdep/unix/exec.c \ - osdep/unix/emuconsole.c osdep/windows/emuconsole.c \ - osdep/unix/dl.c osdep/windows/dl.c osdep/linux/emunet.c \ - osdep/basic/emunet.c osdep/unix/cputime.c \ - osdep/windows/cputime.c kern/i386/int.S kern/i386/realmode.S \ - boot/i386/pc/lzma_decode.S kern/mips/cache_flush.S \ - gensyminfo.sh.in genmod.sh.in modinfo.sh.in gmodule.pl.in \ - gdb_grub.in boot/powerpc/grub.chrp.in \ - boot/powerpc/bootinfo.txt.in -DATA = $(dist_grubconf_DATA) $(dist_noinst_DATA) $(noinst_DATA) \ - $(pkgdata_DATA) $(platform_DATA) -am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) -# Read a list of newline-separated strings from the standard input, -# and print each of them once, without duplicates. Input order is -# *not* preserved. -am__uniquify_input = $(AWK) '\ - BEGIN { nonempty = 0; } \ - { items[$$0] = 1; nonempty = 1; } \ - END { if (nonempty) { for (i in items) print i; }; } \ -' -# Make sure the list of sources is unique. This is necessary because, -# e.g., the same source file might be shared among _SOURCES variables -# for different programs/libraries. -am__define_uniq_tagged_files = \ - list='$(am__tagged_files)'; \ - unique=`for i in $$list; do \ - if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ - done | $(am__uniquify_input)` -ETAGS = etags -CTAGS = ctags -am__tty_colors_dummy = \ - mgn= red= grn= lgn= blu= brg= std=; \ - am__color_tests=no -am__tty_colors = { \ - $(am__tty_colors_dummy); \ - if test "X$(AM_COLOR_TESTS)" = Xno; then \ - am__color_tests=no; \ - elif test "X$(AM_COLOR_TESTS)" = Xalways; then \ - am__color_tests=yes; \ - elif test "X$$TERM" != Xdumb && { test -t 1; } 2>/dev/null; then \ - am__color_tests=yes; \ - fi; \ - if test $$am__color_tests = yes; then \ - red=''; \ - grn=''; \ - lgn=''; \ - blu=''; \ - mgn=''; \ - brg=''; \ - std=''; \ - fi; \ -} -am__recheck_rx = ^[ ]*:recheck:[ ]* -am__global_test_result_rx = ^[ ]*:global-test-result:[ ]* -am__copy_in_global_log_rx = ^[ ]*:copy-in-global-log:[ ]* -# A command that, given a newline-separated list of test names on the -# standard input, print the name of the tests that are to be re-run -# upon "make recheck". -am__list_recheck_tests = $(AWK) '{ \ - recheck = 1; \ - while ((rc = (getline line < ($$0 ".trs"))) != 0) \ - { \ - if (rc < 0) \ - { \ - if ((getline line2 < ($$0 ".log")) < 0) \ - recheck = 0; \ - break; \ - } \ - else if (line ~ /$(am__recheck_rx)[nN][Oo]/) \ - { \ - recheck = 0; \ - break; \ - } \ - else if (line ~ /$(am__recheck_rx)[yY][eE][sS]/) \ - { \ - break; \ - } \ - }; \ - if (recheck) \ - print $$0; \ - close ($$0 ".trs"); \ - close ($$0 ".log"); \ -}' -# A command that, given a newline-separated list of test names on the -# standard input, create the global log from their .trs and .log files. -am__create_global_log = $(AWK) ' \ -function fatal(msg) \ -{ \ - print "fatal: making $@: " msg | "cat >&2"; \ - exit 1; \ -} \ -function rst_section(header) \ -{ \ - print header; \ - len = length(header); \ - for (i = 1; i <= len; i = i + 1) \ - printf "="; \ - printf "\n\n"; \ -} \ -{ \ - copy_in_global_log = 1; \ - global_test_result = "RUN"; \ - while ((rc = (getline line < ($$0 ".trs"))) != 0) \ - { \ - if (rc < 0) \ - fatal("failed to read from " $$0 ".trs"); \ - if (line ~ /$(am__global_test_result_rx)/) \ - { \ - sub("$(am__global_test_result_rx)", "", line); \ - sub("[ ]*$$", "", line); \ - global_test_result = line; \ - } \ - else if (line ~ /$(am__copy_in_global_log_rx)[nN][oO]/) \ - copy_in_global_log = 0; \ - }; \ - if (copy_in_global_log) \ - { \ - rst_section(global_test_result ": " $$0); \ - while ((rc = (getline line < ($$0 ".log"))) != 0) \ - { \ - if (rc < 0) \ - fatal("failed to read from " $$0 ".log"); \ - print line; \ - }; \ - printf "\n"; \ - }; \ - close ($$0 ".trs"); \ - close ($$0 ".log"); \ -}' -# Restructured Text title. -am__rst_title = { sed 's/.*/ & /;h;s/./=/g;p;x;s/ *$$//;p;g' && echo; } -# Solaris 10 'make', and several other traditional 'make' implementations, -# pass "-e" to $(SHELL), and POSIX 2008 even requires this. Work around it -# by disabling -e (using the XSI extension "set +e") if it's set. -am__sh_e_setup = case $$- in *e*) set +e;; esac -# Default flags passed to test drivers. -am__common_driver_flags = \ - --color-tests "$$am__color_tests" \ - --enable-hard-errors "$$am__enable_hard_errors" \ - --expect-failure "$$am__expect_failure" -# To be inserted before the command running the test. Creates the -# directory for the log if needed. Stores in $dir the directory -# containing $f, in $tst the test, in $log the log. Executes the -# developer- defined test setup AM_TESTS_ENVIRONMENT (if any), and -# passes TESTS_ENVIRONMENT. Set up options for the wrapper that -# will run the test scripts (or their associated LOG_COMPILER, if -# thy have one). -am__check_pre = \ -$(am__sh_e_setup); \ -$(am__vpath_adj_setup) $(am__vpath_adj) \ -$(am__tty_colors); \ -srcdir=$(srcdir); export srcdir; \ -case "$@" in \ - */*) am__odir=`echo "./$@" | sed 's|/[^/]*$$||'`;; \ - *) am__odir=.;; \ -esac; \ -test "x$$am__odir" = x"." || test -d "$$am__odir" \ - || $(MKDIR_P) "$$am__odir" || exit $$?; \ -if test -f "./$$f"; then dir=./; \ -elif test -f "$$f"; then dir=; \ -else dir="$(srcdir)/"; fi; \ -tst=$$dir$$f; log='$@'; \ -if test -n '$(DISABLE_HARD_ERRORS)'; then \ - am__enable_hard_errors=no; \ -else \ - am__enable_hard_errors=yes; \ -fi; \ -case " $(XFAIL_TESTS) " in \ - *[\ \ ]$$f[\ \ ]* | *[\ \ ]$$dir$$f[\ \ ]*) \ - am__expect_failure=yes;; \ - *) \ - am__expect_failure=no;; \ -esac; \ -$(AM_TESTS_ENVIRONMENT) $(TESTS_ENVIRONMENT) -# A shell command to get the names of the tests scripts with any registered -# extension removed (i.e., equivalently, the names of the test logs, with -# the '.log' extension removed). The result is saved in the shell variable -# '$bases'. This honors runtime overriding of TESTS and TEST_LOGS. Sadly, -# we cannot use something simpler, involving e.g., "$(TEST_LOGS:.log=)", -# since that might cause problem with VPATH rewrites for suffix-less tests. -# See also 'test-harness-vpath-rewrite.sh' and 'test-trs-basic.sh'. -am__set_TESTS_bases = \ - bases='$(TEST_LOGS)'; \ - bases=`for i in $$bases; do echo $$i; done | sed 's/\.log$$//'`; \ - bases=`echo $$bases` -RECHECK_LOGS = $(TEST_LOGS) -AM_RECURSIVE_TARGETS = check recheck -TEST_SUITE_LOG = test-suite.log -TEST_EXTENSIONS = @EXEEXT@ .test -am__test_logs1 = $(TESTS:=.log) -am__test_logs2 = $(am__test_logs1:@EXEEXT@.log=.log) -TEST_LOGS = $(am__test_logs2:.test.log=.log) -TEST_LOG_DRIVER = $(SHELL) $(top_srcdir)/build-aux/test-driver -TEST_LOG_COMPILE = $(TEST_LOG_COMPILER) $(AM_TEST_LOG_FLAGS) \ - $(TEST_LOG_FLAGS) -am__set_b = \ - case '$@' in \ - */*) \ - case '$*' in \ - */*) b='$*';; \ - *) b=`echo '$@' | sed 's/\.log$$//'`; \ - esac;; \ - *) \ - b='$*';; \ - esac -am__DIST_COMMON = $(srcdir)/Makefile.core.am $(srcdir)/Makefile.in \ - $(top_srcdir)/build-aux/depcomp \ - $(top_srcdir)/build-aux/test-driver \ - $(top_srcdir)/conf/Makefile.common -DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) -ACLOCAL = @ACLOCAL@ -ALLOCA = @ALLOCA@ -ALLOCA_H = @ALLOCA_H@ -AMTAR = @AMTAR@ -AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ -APPLE_UNIVERSAL_BUILD = @APPLE_UNIVERSAL_BUILD@ -AR = @AR@ -ARFLAGS = @ARFLAGS@ -AUTOCONF = @AUTOCONF@ -AUTOHEADER = @AUTOHEADER@ -AUTOMAKE = @AUTOMAKE@ -AWK = @AWK@ -BITSIZEOF_PTRDIFF_T = @BITSIZEOF_PTRDIFF_T@ -BITSIZEOF_SIG_ATOMIC_T = @BITSIZEOF_SIG_ATOMIC_T@ -BITSIZEOF_SIZE_T = @BITSIZEOF_SIZE_T@ -BITSIZEOF_WCHAR_T = @BITSIZEOF_WCHAR_T@ -BITSIZEOF_WINT_T = @BITSIZEOF_WINT_T@ -BOOT_TIME_STATS = @BOOT_TIME_STATS@ -BSS_START_SYMBOL = @BSS_START_SYMBOL@ -BUILD_CC = @BUILD_CC@ -BUILD_CFLAGS = @BUILD_CFLAGS@ -BUILD_CPPFLAGS = @BUILD_CPPFLAGS@ $(CPPFLAGS_DEFAULT) -BUILD_EXEEXT = @BUILD_EXEEXT@ -BUILD_FREETYPE_CFLAGS = @BUILD_FREETYPE_CFLAGS@ -BUILD_FREETYPE_LIBS = @BUILD_FREETYPE_LIBS@ -BUILD_LDFLAGS = @BUILD_LDFLAGS@ -BUILD_LIBM = @BUILD_LIBM@ -BUILD_SHEBANG = @BUILD_SHEBANG@ -BUILD_SIZEOF_LONG = @BUILD_SIZEOF_LONG@ -BUILD_SIZEOF_VOID_P = @BUILD_SIZEOF_VOID_P@ -BUILD_WORDS_BIGENDIAN = @BUILD_WORDS_BIGENDIAN@ -CC = $(TARGET_CC) -CCAS = $(TARGET_CC) -CCASDEPMODE = @CCASDEPMODE@ -CCASFLAGS = @CCASFLAGS@ -CCDEPMODE = @CCDEPMODE@ -CFLAGS = @CFLAGS@ -CMP = @CMP@ -CPP = $(TARGET_CC) -CPPFLAGS = @CPPFLAGS@ -CXX = @CXX@ -CXXDEPMODE = @CXXDEPMODE@ -CXXFLAGS = @CXXFLAGS@ -CYGPATH_W = @CYGPATH_W@ -DEFS = @DEFS@ -DEPDIR = .deps-core -DISK_CACHE_STATS = @DISK_CACHE_STATS@ -DJVU_FONT_SOURCE = @DJVU_FONT_SOURCE@ -ECHO_C = @ECHO_C@ -ECHO_N = @ECHO_N@ -ECHO_T = @ECHO_T@ -EFIEMU64_LINK_FORMAT = @EFIEMU64_LINK_FORMAT@ -EGREP = @EGREP@ -EMULTIHOP_HIDDEN = @EMULTIHOP_HIDDEN@ -EMULTIHOP_VALUE = @EMULTIHOP_VALUE@ -END_SYMBOL = @END_SYMBOL@ -ENOLINK_HIDDEN = @ENOLINK_HIDDEN@ -ENOLINK_VALUE = @ENOLINK_VALUE@ -EOVERFLOW_HIDDEN = @EOVERFLOW_HIDDEN@ -EOVERFLOW_VALUE = @EOVERFLOW_VALUE@ -ERRNO_H = @ERRNO_H@ -EXEEXT = @EXEEXT@ -FLOAT_H = @FLOAT_H@ -FNMATCH_H = @FNMATCH_H@ -FONT_SOURCE = @FONT_SOURCE@ -FREETYPE_CFLAGS = @FREETYPE_CFLAGS@ -FREETYPE_LIBS = @FREETYPE_LIBS@ -GETOPT_CDEFS_H = @GETOPT_CDEFS_H@ -GETOPT_H = @GETOPT_H@ -GETTEXT_MACRO_VERSION = @GETTEXT_MACRO_VERSION@ -GLIBC21 = @GLIBC21@ -GMSGFMT = @GMSGFMT@ -GMSGFMT_015 = @GMSGFMT_015@ -GNULIB_ALPHASORT = @GNULIB_ALPHASORT@ -GNULIB_ATOLL = @GNULIB_ATOLL@ -GNULIB_BTOWC = @GNULIB_BTOWC@ -GNULIB_CALLOC_POSIX = @GNULIB_CALLOC_POSIX@ -GNULIB_CANONICALIZE_FILE_NAME = @GNULIB_CANONICALIZE_FILE_NAME@ -GNULIB_CHDIR = @GNULIB_CHDIR@ -GNULIB_CHOWN = @GNULIB_CHOWN@ -GNULIB_CLOSE = @GNULIB_CLOSE@ -GNULIB_CLOSEDIR = @GNULIB_CLOSEDIR@ -GNULIB_CTIME = @GNULIB_CTIME@ -GNULIB_DIRFD = @GNULIB_DIRFD@ -GNULIB_DPRINTF = @GNULIB_DPRINTF@ -GNULIB_DUP = @GNULIB_DUP@ -GNULIB_DUP2 = @GNULIB_DUP2@ -GNULIB_DUP3 = @GNULIB_DUP3@ -GNULIB_DUPLOCALE = @GNULIB_DUPLOCALE@ -GNULIB_ENVIRON = @GNULIB_ENVIRON@ -GNULIB_EUIDACCESS = @GNULIB_EUIDACCESS@ -GNULIB_EXPLICIT_BZERO = @GNULIB_EXPLICIT_BZERO@ -GNULIB_FACCESSAT = @GNULIB_FACCESSAT@ -GNULIB_FCHDIR = @GNULIB_FCHDIR@ -GNULIB_FCHMODAT = @GNULIB_FCHMODAT@ -GNULIB_FCHOWNAT = @GNULIB_FCHOWNAT@ -GNULIB_FCLOSE = @GNULIB_FCLOSE@ -GNULIB_FCNTL = @GNULIB_FCNTL@ -GNULIB_FDATASYNC = @GNULIB_FDATASYNC@ -GNULIB_FDOPEN = @GNULIB_FDOPEN@ -GNULIB_FDOPENDIR = @GNULIB_FDOPENDIR@ -GNULIB_FFLUSH = @GNULIB_FFLUSH@ -GNULIB_FFS = @GNULIB_FFS@ -GNULIB_FFSL = @GNULIB_FFSL@ -GNULIB_FFSLL = @GNULIB_FFSLL@ -GNULIB_FGETC = @GNULIB_FGETC@ -GNULIB_FGETS = @GNULIB_FGETS@ -GNULIB_FNMATCH = @GNULIB_FNMATCH@ -GNULIB_FOPEN = @GNULIB_FOPEN@ -GNULIB_FPRINTF = @GNULIB_FPRINTF@ -GNULIB_FPRINTF_POSIX = @GNULIB_FPRINTF_POSIX@ -GNULIB_FPURGE = @GNULIB_FPURGE@ -GNULIB_FPUTC = @GNULIB_FPUTC@ -GNULIB_FPUTS = @GNULIB_FPUTS@ -GNULIB_FREAD = @GNULIB_FREAD@ -GNULIB_FREOPEN = @GNULIB_FREOPEN@ -GNULIB_FSCANF = @GNULIB_FSCANF@ -GNULIB_FSEEK = @GNULIB_FSEEK@ -GNULIB_FSEEKO = @GNULIB_FSEEKO@ -GNULIB_FSTAT = @GNULIB_FSTAT@ -GNULIB_FSTATAT = @GNULIB_FSTATAT@ -GNULIB_FSYNC = @GNULIB_FSYNC@ -GNULIB_FTELL = @GNULIB_FTELL@ -GNULIB_FTELLO = @GNULIB_FTELLO@ -GNULIB_FTRUNCATE = @GNULIB_FTRUNCATE@ -GNULIB_FUTIMENS = @GNULIB_FUTIMENS@ -GNULIB_FWRITE = @GNULIB_FWRITE@ -GNULIB_GETC = @GNULIB_GETC@ -GNULIB_GETCHAR = @GNULIB_GETCHAR@ -GNULIB_GETCWD = @GNULIB_GETCWD@ -GNULIB_GETDELIM = @GNULIB_GETDELIM@ -GNULIB_GETDOMAINNAME = @GNULIB_GETDOMAINNAME@ -GNULIB_GETDTABLESIZE = @GNULIB_GETDTABLESIZE@ -GNULIB_GETGROUPS = @GNULIB_GETGROUPS@ -GNULIB_GETHOSTNAME = @GNULIB_GETHOSTNAME@ -GNULIB_GETLINE = @GNULIB_GETLINE@ -GNULIB_GETLOADAVG = @GNULIB_GETLOADAVG@ -GNULIB_GETLOGIN = @GNULIB_GETLOGIN@ -GNULIB_GETLOGIN_R = @GNULIB_GETLOGIN_R@ -GNULIB_GETPAGESIZE = @GNULIB_GETPAGESIZE@ -GNULIB_GETPASS = @GNULIB_GETPASS@ -GNULIB_GETSUBOPT = @GNULIB_GETSUBOPT@ -GNULIB_GETTIMEOFDAY = @GNULIB_GETTIMEOFDAY@ -GNULIB_GETUSERSHELL = @GNULIB_GETUSERSHELL@ -GNULIB_GL_UNISTD_H_GETOPT = @GNULIB_GL_UNISTD_H_GETOPT@ -GNULIB_GRANTPT = @GNULIB_GRANTPT@ -GNULIB_GROUP_MEMBER = @GNULIB_GROUP_MEMBER@ -GNULIB_ISATTY = @GNULIB_ISATTY@ -GNULIB_ISWBLANK = @GNULIB_ISWBLANK@ -GNULIB_ISWCTYPE = @GNULIB_ISWCTYPE@ -GNULIB_LCHMOD = @GNULIB_LCHMOD@ -GNULIB_LCHOWN = @GNULIB_LCHOWN@ -GNULIB_LINK = @GNULIB_LINK@ -GNULIB_LINKAT = @GNULIB_LINKAT@ -GNULIB_LOCALECONV = @GNULIB_LOCALECONV@ -GNULIB_LOCALENAME = @GNULIB_LOCALENAME@ -GNULIB_LOCALTIME = @GNULIB_LOCALTIME@ -GNULIB_LSEEK = @GNULIB_LSEEK@ -GNULIB_LSTAT = @GNULIB_LSTAT@ -GNULIB_MALLOC_POSIX = @GNULIB_MALLOC_POSIX@ -GNULIB_MBRLEN = @GNULIB_MBRLEN@ -GNULIB_MBRTOWC = @GNULIB_MBRTOWC@ -GNULIB_MBSCASECMP = @GNULIB_MBSCASECMP@ -GNULIB_MBSCASESTR = @GNULIB_MBSCASESTR@ -GNULIB_MBSCHR = @GNULIB_MBSCHR@ -GNULIB_MBSCSPN = @GNULIB_MBSCSPN@ -GNULIB_MBSINIT = @GNULIB_MBSINIT@ -GNULIB_MBSLEN = @GNULIB_MBSLEN@ -GNULIB_MBSNCASECMP = @GNULIB_MBSNCASECMP@ -GNULIB_MBSNLEN = @GNULIB_MBSNLEN@ -GNULIB_MBSNRTOWCS = @GNULIB_MBSNRTOWCS@ -GNULIB_MBSPBRK = @GNULIB_MBSPBRK@ -GNULIB_MBSPCASECMP = @GNULIB_MBSPCASECMP@ -GNULIB_MBSRCHR = @GNULIB_MBSRCHR@ -GNULIB_MBSRTOWCS = @GNULIB_MBSRTOWCS@ -GNULIB_MBSSEP = @GNULIB_MBSSEP@ -GNULIB_MBSSPN = @GNULIB_MBSSPN@ -GNULIB_MBSSTR = @GNULIB_MBSSTR@ -GNULIB_MBSTOK_R = @GNULIB_MBSTOK_R@ -GNULIB_MBTOWC = @GNULIB_MBTOWC@ -GNULIB_MEMCHR = @GNULIB_MEMCHR@ -GNULIB_MEMMEM = @GNULIB_MEMMEM@ -GNULIB_MEMPCPY = @GNULIB_MEMPCPY@ -GNULIB_MEMRCHR = @GNULIB_MEMRCHR@ -GNULIB_MKDIRAT = @GNULIB_MKDIRAT@ -GNULIB_MKDTEMP = @GNULIB_MKDTEMP@ -GNULIB_MKFIFO = @GNULIB_MKFIFO@ -GNULIB_MKFIFOAT = @GNULIB_MKFIFOAT@ -GNULIB_MKNOD = @GNULIB_MKNOD@ -GNULIB_MKNODAT = @GNULIB_MKNODAT@ -GNULIB_MKOSTEMP = @GNULIB_MKOSTEMP@ -GNULIB_MKOSTEMPS = @GNULIB_MKOSTEMPS@ -GNULIB_MKSTEMP = @GNULIB_MKSTEMP@ -GNULIB_MKSTEMPS = @GNULIB_MKSTEMPS@ -GNULIB_MKTIME = @GNULIB_MKTIME@ -GNULIB_NANOSLEEP = @GNULIB_NANOSLEEP@ -GNULIB_NL_LANGINFO = @GNULIB_NL_LANGINFO@ -GNULIB_NONBLOCKING = @GNULIB_NONBLOCKING@ -GNULIB_OBSTACK_PRINTF = @GNULIB_OBSTACK_PRINTF@ -GNULIB_OBSTACK_PRINTF_POSIX = @GNULIB_OBSTACK_PRINTF_POSIX@ -GNULIB_OPEN = @GNULIB_OPEN@ -GNULIB_OPENAT = @GNULIB_OPENAT@ -GNULIB_OPENDIR = @GNULIB_OPENDIR@ -GNULIB_OVERRIDES_STRUCT_STAT = @GNULIB_OVERRIDES_STRUCT_STAT@ -GNULIB_OVERRIDES_WINT_T = @GNULIB_OVERRIDES_WINT_T@ -GNULIB_PCLOSE = @GNULIB_PCLOSE@ -GNULIB_PERROR = @GNULIB_PERROR@ -GNULIB_PIPE = @GNULIB_PIPE@ -GNULIB_PIPE2 = @GNULIB_PIPE2@ -GNULIB_POPEN = @GNULIB_POPEN@ -GNULIB_POSIX_OPENPT = @GNULIB_POSIX_OPENPT@ -GNULIB_PREAD = @GNULIB_PREAD@ -GNULIB_PRINTF = @GNULIB_PRINTF@ -GNULIB_PRINTF_POSIX = @GNULIB_PRINTF_POSIX@ -GNULIB_PTSNAME = @GNULIB_PTSNAME@ -GNULIB_PTSNAME_R = @GNULIB_PTSNAME_R@ -GNULIB_PUTC = @GNULIB_PUTC@ -GNULIB_PUTCHAR = @GNULIB_PUTCHAR@ -GNULIB_PUTENV = @GNULIB_PUTENV@ -GNULIB_PUTS = @GNULIB_PUTS@ -GNULIB_PWRITE = @GNULIB_PWRITE@ -GNULIB_QSORT_R = @GNULIB_QSORT_R@ -GNULIB_RANDOM = @GNULIB_RANDOM@ -GNULIB_RANDOM_R = @GNULIB_RANDOM_R@ -GNULIB_RAWMEMCHR = @GNULIB_RAWMEMCHR@ -GNULIB_READ = @GNULIB_READ@ -GNULIB_READDIR = @GNULIB_READDIR@ -GNULIB_READLINK = @GNULIB_READLINK@ -GNULIB_READLINKAT = @GNULIB_READLINKAT@ -GNULIB_REALLOCARRAY = @GNULIB_REALLOCARRAY@ -GNULIB_REALLOC_POSIX = @GNULIB_REALLOC_POSIX@ -GNULIB_REALPATH = @GNULIB_REALPATH@ -GNULIB_REMOVE = @GNULIB_REMOVE@ -GNULIB_RENAME = @GNULIB_RENAME@ -GNULIB_RENAMEAT = @GNULIB_RENAMEAT@ -GNULIB_REWINDDIR = @GNULIB_REWINDDIR@ -GNULIB_RMDIR = @GNULIB_RMDIR@ -GNULIB_RPMATCH = @GNULIB_RPMATCH@ -GNULIB_SCANDIR = @GNULIB_SCANDIR@ -GNULIB_SCANF = @GNULIB_SCANF@ -GNULIB_SECURE_GETENV = @GNULIB_SECURE_GETENV@ -GNULIB_SETENV = @GNULIB_SETENV@ -GNULIB_SETHOSTNAME = @GNULIB_SETHOSTNAME@ -GNULIB_SETLOCALE = @GNULIB_SETLOCALE@ -GNULIB_SLEEP = @GNULIB_SLEEP@ -GNULIB_SNPRINTF = @GNULIB_SNPRINTF@ -GNULIB_SPRINTF_POSIX = @GNULIB_SPRINTF_POSIX@ -GNULIB_STAT = @GNULIB_STAT@ -GNULIB_STDIO_H_NONBLOCKING = @GNULIB_STDIO_H_NONBLOCKING@ -GNULIB_STDIO_H_SIGPIPE = @GNULIB_STDIO_H_SIGPIPE@ -GNULIB_STPCPY = @GNULIB_STPCPY@ -GNULIB_STPNCPY = @GNULIB_STPNCPY@ -GNULIB_STRCASESTR = @GNULIB_STRCASESTR@ -GNULIB_STRCHRNUL = @GNULIB_STRCHRNUL@ -GNULIB_STRDUP = @GNULIB_STRDUP@ -GNULIB_STRERROR = @GNULIB_STRERROR@ -GNULIB_STRERROR_R = @GNULIB_STRERROR_R@ -GNULIB_STRFTIME = @GNULIB_STRFTIME@ -GNULIB_STRNCAT = @GNULIB_STRNCAT@ -GNULIB_STRNDUP = @GNULIB_STRNDUP@ -GNULIB_STRNLEN = @GNULIB_STRNLEN@ -GNULIB_STRPBRK = @GNULIB_STRPBRK@ -GNULIB_STRPTIME = @GNULIB_STRPTIME@ -GNULIB_STRSEP = @GNULIB_STRSEP@ -GNULIB_STRSIGNAL = @GNULIB_STRSIGNAL@ -GNULIB_STRSTR = @GNULIB_STRSTR@ -GNULIB_STRTOD = @GNULIB_STRTOD@ -GNULIB_STRTOK_R = @GNULIB_STRTOK_R@ -GNULIB_STRTOLL = @GNULIB_STRTOLL@ -GNULIB_STRTOULL = @GNULIB_STRTOULL@ -GNULIB_STRVERSCMP = @GNULIB_STRVERSCMP@ -GNULIB_SYMLINK = @GNULIB_SYMLINK@ -GNULIB_SYMLINKAT = @GNULIB_SYMLINKAT@ -GNULIB_SYSTEM_POSIX = @GNULIB_SYSTEM_POSIX@ -GNULIB_TIMEGM = @GNULIB_TIMEGM@ -GNULIB_TIME_R = @GNULIB_TIME_R@ -GNULIB_TIME_RZ = @GNULIB_TIME_RZ@ -GNULIB_TMPFILE = @GNULIB_TMPFILE@ -GNULIB_TOWCTRANS = @GNULIB_TOWCTRANS@ -GNULIB_TRUNCATE = @GNULIB_TRUNCATE@ -GNULIB_TTYNAME_R = @GNULIB_TTYNAME_R@ -GNULIB_TZSET = @GNULIB_TZSET@ -GNULIB_UNISTD_H_NONBLOCKING = @GNULIB_UNISTD_H_NONBLOCKING@ -GNULIB_UNISTD_H_SIGPIPE = @GNULIB_UNISTD_H_SIGPIPE@ -GNULIB_UNLINK = @GNULIB_UNLINK@ -GNULIB_UNLINKAT = @GNULIB_UNLINKAT@ -GNULIB_UNLOCKPT = @GNULIB_UNLOCKPT@ -GNULIB_UNSETENV = @GNULIB_UNSETENV@ -GNULIB_USLEEP = @GNULIB_USLEEP@ -GNULIB_UTIMENSAT = @GNULIB_UTIMENSAT@ -GNULIB_VASPRINTF = @GNULIB_VASPRINTF@ -GNULIB_VDPRINTF = @GNULIB_VDPRINTF@ -GNULIB_VFPRINTF = @GNULIB_VFPRINTF@ -GNULIB_VFPRINTF_POSIX = @GNULIB_VFPRINTF_POSIX@ -GNULIB_VFSCANF = @GNULIB_VFSCANF@ -GNULIB_VPRINTF = @GNULIB_VPRINTF@ -GNULIB_VPRINTF_POSIX = @GNULIB_VPRINTF_POSIX@ -GNULIB_VSCANF = @GNULIB_VSCANF@ -GNULIB_VSNPRINTF = @GNULIB_VSNPRINTF@ -GNULIB_VSPRINTF_POSIX = @GNULIB_VSPRINTF_POSIX@ -GNULIB_WCPCPY = @GNULIB_WCPCPY@ -GNULIB_WCPNCPY = @GNULIB_WCPNCPY@ -GNULIB_WCRTOMB = @GNULIB_WCRTOMB@ -GNULIB_WCSCASECMP = @GNULIB_WCSCASECMP@ -GNULIB_WCSCAT = @GNULIB_WCSCAT@ -GNULIB_WCSCHR = @GNULIB_WCSCHR@ -GNULIB_WCSCMP = @GNULIB_WCSCMP@ -GNULIB_WCSCOLL = @GNULIB_WCSCOLL@ -GNULIB_WCSCPY = @GNULIB_WCSCPY@ -GNULIB_WCSCSPN = @GNULIB_WCSCSPN@ -GNULIB_WCSDUP = @GNULIB_WCSDUP@ -GNULIB_WCSFTIME = @GNULIB_WCSFTIME@ -GNULIB_WCSLEN = @GNULIB_WCSLEN@ -GNULIB_WCSNCASECMP = @GNULIB_WCSNCASECMP@ -GNULIB_WCSNCAT = @GNULIB_WCSNCAT@ -GNULIB_WCSNCMP = @GNULIB_WCSNCMP@ -GNULIB_WCSNCPY = @GNULIB_WCSNCPY@ -GNULIB_WCSNLEN = @GNULIB_WCSNLEN@ -GNULIB_WCSNRTOMBS = @GNULIB_WCSNRTOMBS@ -GNULIB_WCSPBRK = @GNULIB_WCSPBRK@ -GNULIB_WCSRCHR = @GNULIB_WCSRCHR@ -GNULIB_WCSRTOMBS = @GNULIB_WCSRTOMBS@ -GNULIB_WCSSPN = @GNULIB_WCSSPN@ -GNULIB_WCSSTR = @GNULIB_WCSSTR@ -GNULIB_WCSTOK = @GNULIB_WCSTOK@ -GNULIB_WCSWIDTH = @GNULIB_WCSWIDTH@ -GNULIB_WCSXFRM = @GNULIB_WCSXFRM@ -GNULIB_WCTOB = @GNULIB_WCTOB@ -GNULIB_WCTOMB = @GNULIB_WCTOMB@ -GNULIB_WCTRANS = @GNULIB_WCTRANS@ -GNULIB_WCTYPE = @GNULIB_WCTYPE@ -GNULIB_WCWIDTH = @GNULIB_WCWIDTH@ -GNULIB_WMEMCHR = @GNULIB_WMEMCHR@ -GNULIB_WMEMCMP = @GNULIB_WMEMCMP@ -GNULIB_WMEMCPY = @GNULIB_WMEMCPY@ -GNULIB_WMEMMOVE = @GNULIB_WMEMMOVE@ -GNULIB_WMEMSET = @GNULIB_WMEMSET@ -GNULIB_WRITE = @GNULIB_WRITE@ -GNULIB__EXIT = @GNULIB__EXIT@ -GREP = @GREP@ -GRUB_BOOT_MACHINE_LINK_ADDR = @GRUB_BOOT_MACHINE_LINK_ADDR@ -GRUB_PLATFORM = @GRUB_PLATFORM@ -GRUB_TARGET_CPU = @GRUB_TARGET_CPU@ -HAVE_ALPHASORT = @HAVE_ALPHASORT@ -HAVE_ASM_USCORE = @HAVE_ASM_USCORE@ -HAVE_ATOLL = @HAVE_ATOLL@ -HAVE_BTOWC = @HAVE_BTOWC@ -HAVE_C99_STDINT_H = @HAVE_C99_STDINT_H@ -HAVE_CANONICALIZE_FILE_NAME = @HAVE_CANONICALIZE_FILE_NAME@ -HAVE_CHOWN = @HAVE_CHOWN@ -HAVE_CLOSEDIR = @HAVE_CLOSEDIR@ -HAVE_CRTDEFS_H = @HAVE_CRTDEFS_H@ -HAVE_CXX = @HAVE_CXX@ -HAVE_DECL_DIRFD = @HAVE_DECL_DIRFD@ -HAVE_DECL_ENVIRON = @HAVE_DECL_ENVIRON@ -HAVE_DECL_FCHDIR = @HAVE_DECL_FCHDIR@ -HAVE_DECL_FDATASYNC = @HAVE_DECL_FDATASYNC@ -HAVE_DECL_FDOPENDIR = @HAVE_DECL_FDOPENDIR@ -HAVE_DECL_FPURGE = @HAVE_DECL_FPURGE@ -HAVE_DECL_FSEEKO = @HAVE_DECL_FSEEKO@ -HAVE_DECL_FTELLO = @HAVE_DECL_FTELLO@ -HAVE_DECL_GETDELIM = @HAVE_DECL_GETDELIM@ -HAVE_DECL_GETDOMAINNAME = @HAVE_DECL_GETDOMAINNAME@ -HAVE_DECL_GETLINE = @HAVE_DECL_GETLINE@ -HAVE_DECL_GETLOADAVG = @HAVE_DECL_GETLOADAVG@ -HAVE_DECL_GETLOGIN = @HAVE_DECL_GETLOGIN@ -HAVE_DECL_GETLOGIN_R = @HAVE_DECL_GETLOGIN_R@ -HAVE_DECL_GETPAGESIZE = @HAVE_DECL_GETPAGESIZE@ -HAVE_DECL_GETUSERSHELL = @HAVE_DECL_GETUSERSHELL@ -HAVE_DECL_INITSTATE = @HAVE_DECL_INITSTATE@ -HAVE_DECL_LOCALTIME_R = @HAVE_DECL_LOCALTIME_R@ -HAVE_DECL_MEMMEM = @HAVE_DECL_MEMMEM@ -HAVE_DECL_MEMRCHR = @HAVE_DECL_MEMRCHR@ -HAVE_DECL_OBSTACK_PRINTF = @HAVE_DECL_OBSTACK_PRINTF@ -HAVE_DECL_SETENV = @HAVE_DECL_SETENV@ -HAVE_DECL_SETHOSTNAME = @HAVE_DECL_SETHOSTNAME@ -HAVE_DECL_SETSTATE = @HAVE_DECL_SETSTATE@ -HAVE_DECL_SNPRINTF = @HAVE_DECL_SNPRINTF@ -HAVE_DECL_STRDUP = @HAVE_DECL_STRDUP@ -HAVE_DECL_STRERROR_R = @HAVE_DECL_STRERROR_R@ -HAVE_DECL_STRNCASECMP = @HAVE_DECL_STRNCASECMP@ -HAVE_DECL_STRNDUP = @HAVE_DECL_STRNDUP@ -HAVE_DECL_STRNLEN = @HAVE_DECL_STRNLEN@ -HAVE_DECL_STRSIGNAL = @HAVE_DECL_STRSIGNAL@ -HAVE_DECL_STRTOK_R = @HAVE_DECL_STRTOK_R@ -HAVE_DECL_TRUNCATE = @HAVE_DECL_TRUNCATE@ -HAVE_DECL_TTYNAME_R = @HAVE_DECL_TTYNAME_R@ -HAVE_DECL_UNSETENV = @HAVE_DECL_UNSETENV@ -HAVE_DECL_VSNPRINTF = @HAVE_DECL_VSNPRINTF@ -HAVE_DECL_WCTOB = @HAVE_DECL_WCTOB@ -HAVE_DECL_WCWIDTH = @HAVE_DECL_WCWIDTH@ -HAVE_DIRENT_H = @HAVE_DIRENT_H@ -HAVE_DPRINTF = @HAVE_DPRINTF@ -HAVE_DUP2 = @HAVE_DUP2@ -HAVE_DUP3 = @HAVE_DUP3@ -HAVE_DUPLOCALE = @HAVE_DUPLOCALE@ -HAVE_EUIDACCESS = @HAVE_EUIDACCESS@ -HAVE_EXPLICIT_BZERO = @HAVE_EXPLICIT_BZERO@ -HAVE_FACCESSAT = @HAVE_FACCESSAT@ -HAVE_FCHDIR = @HAVE_FCHDIR@ -HAVE_FCHMODAT = @HAVE_FCHMODAT@ -HAVE_FCHOWNAT = @HAVE_FCHOWNAT@ -HAVE_FCNTL = @HAVE_FCNTL@ -HAVE_FDATASYNC = @HAVE_FDATASYNC@ -HAVE_FDOPENDIR = @HAVE_FDOPENDIR@ -HAVE_FEATURES_H = @HAVE_FEATURES_H@ -HAVE_FFS = @HAVE_FFS@ -HAVE_FFSL = @HAVE_FFSL@ -HAVE_FFSLL = @HAVE_FFSLL@ -HAVE_FNMATCH = @HAVE_FNMATCH@ -HAVE_FNMATCH_H = @HAVE_FNMATCH_H@ -HAVE_FONT_SOURCE = @HAVE_FONT_SOURCE@ -HAVE_FREELOCALE = @HAVE_FREELOCALE@ -HAVE_FSEEKO = @HAVE_FSEEKO@ -HAVE_FSTATAT = @HAVE_FSTATAT@ -HAVE_FSYNC = @HAVE_FSYNC@ -HAVE_FTELLO = @HAVE_FTELLO@ -HAVE_FTRUNCATE = @HAVE_FTRUNCATE@ -HAVE_FUTIMENS = @HAVE_FUTIMENS@ -HAVE_GETDTABLESIZE = @HAVE_GETDTABLESIZE@ -HAVE_GETGROUPS = @HAVE_GETGROUPS@ -HAVE_GETHOSTNAME = @HAVE_GETHOSTNAME@ -HAVE_GETLOGIN = @HAVE_GETLOGIN@ -HAVE_GETOPT_H = @HAVE_GETOPT_H@ -HAVE_GETPAGESIZE = @HAVE_GETPAGESIZE@ -HAVE_GETPASS = @HAVE_GETPASS@ -HAVE_GETSUBOPT = @HAVE_GETSUBOPT@ -HAVE_GRANTPT = @HAVE_GRANTPT@ -HAVE_GROUP_MEMBER = @HAVE_GROUP_MEMBER@ -HAVE_INTTYPES_H = @HAVE_INTTYPES_H@ -HAVE_ISWBLANK = @HAVE_ISWBLANK@ -HAVE_ISWCNTRL = @HAVE_ISWCNTRL@ -HAVE_LANGINFO_ALTMON = @HAVE_LANGINFO_ALTMON@ -HAVE_LANGINFO_CODESET = @HAVE_LANGINFO_CODESET@ -HAVE_LANGINFO_ERA = @HAVE_LANGINFO_ERA@ -HAVE_LANGINFO_H = @HAVE_LANGINFO_H@ -HAVE_LANGINFO_T_FMT_AMPM = @HAVE_LANGINFO_T_FMT_AMPM@ -HAVE_LANGINFO_YESEXPR = @HAVE_LANGINFO_YESEXPR@ -HAVE_LCHMOD = @HAVE_LCHMOD@ -HAVE_LCHOWN = @HAVE_LCHOWN@ -HAVE_LINK = @HAVE_LINK@ -HAVE_LINKAT = @HAVE_LINKAT@ -HAVE_LONG_LONG_INT = @HAVE_LONG_LONG_INT@ -HAVE_LSTAT = @HAVE_LSTAT@ -HAVE_MAX_ALIGN_T = @HAVE_MAX_ALIGN_T@ -HAVE_MBRLEN = @HAVE_MBRLEN@ -HAVE_MBRTOWC = @HAVE_MBRTOWC@ -HAVE_MBSINIT = @HAVE_MBSINIT@ -HAVE_MBSLEN = @HAVE_MBSLEN@ -HAVE_MBSNRTOWCS = @HAVE_MBSNRTOWCS@ -HAVE_MBSRTOWCS = @HAVE_MBSRTOWCS@ -HAVE_MEMCHR = @HAVE_MEMCHR@ -HAVE_MEMPCPY = @HAVE_MEMPCPY@ -HAVE_MKDIRAT = @HAVE_MKDIRAT@ -HAVE_MKDTEMP = @HAVE_MKDTEMP@ -HAVE_MKFIFO = @HAVE_MKFIFO@ -HAVE_MKFIFOAT = @HAVE_MKFIFOAT@ -HAVE_MKNOD = @HAVE_MKNOD@ -HAVE_MKNODAT = @HAVE_MKNODAT@ -HAVE_MKOSTEMP = @HAVE_MKOSTEMP@ -HAVE_MKOSTEMPS = @HAVE_MKOSTEMPS@ -HAVE_MKSTEMP = @HAVE_MKSTEMP@ -HAVE_MKSTEMPS = @HAVE_MKSTEMPS@ -HAVE_MSVC_INVALID_PARAMETER_HANDLER = @HAVE_MSVC_INVALID_PARAMETER_HANDLER@ -HAVE_NANOSLEEP = @HAVE_NANOSLEEP@ -HAVE_NEWLOCALE = @HAVE_NEWLOCALE@ -HAVE_NL_LANGINFO = @HAVE_NL_LANGINFO@ -HAVE_OPENAT = @HAVE_OPENAT@ -HAVE_OPENDIR = @HAVE_OPENDIR@ -HAVE_OS_H = @HAVE_OS_H@ -HAVE_PCLOSE = @HAVE_PCLOSE@ -HAVE_PIPE = @HAVE_PIPE@ -HAVE_PIPE2 = @HAVE_PIPE2@ -HAVE_POPEN = @HAVE_POPEN@ -HAVE_POSIX_OPENPT = @HAVE_POSIX_OPENPT@ -HAVE_PREAD = @HAVE_PREAD@ -HAVE_PTSNAME = @HAVE_PTSNAME@ -HAVE_PTSNAME_R = @HAVE_PTSNAME_R@ -HAVE_PWRITE = @HAVE_PWRITE@ -HAVE_QSORT_R = @HAVE_QSORT_R@ -HAVE_RANDOM = @HAVE_RANDOM@ -HAVE_RANDOM_H = @HAVE_RANDOM_H@ -HAVE_RANDOM_R = @HAVE_RANDOM_R@ -HAVE_RAWMEMCHR = @HAVE_RAWMEMCHR@ -HAVE_READDIR = @HAVE_READDIR@ -HAVE_READLINK = @HAVE_READLINK@ -HAVE_READLINKAT = @HAVE_READLINKAT@ -HAVE_REALLOCARRAY = @HAVE_REALLOCARRAY@ -HAVE_REALPATH = @HAVE_REALPATH@ -HAVE_RENAMEAT = @HAVE_RENAMEAT@ -HAVE_REWINDDIR = @HAVE_REWINDDIR@ -HAVE_RPMATCH = @HAVE_RPMATCH@ -HAVE_SCANDIR = @HAVE_SCANDIR@ -HAVE_SECURE_GETENV = @HAVE_SECURE_GETENV@ -HAVE_SETENV = @HAVE_SETENV@ -HAVE_SETHOSTNAME = @HAVE_SETHOSTNAME@ -HAVE_SIGNED_SIG_ATOMIC_T = @HAVE_SIGNED_SIG_ATOMIC_T@ -HAVE_SIGNED_WCHAR_T = @HAVE_SIGNED_WCHAR_T@ -HAVE_SIGNED_WINT_T = @HAVE_SIGNED_WINT_T@ -HAVE_SLEEP = @HAVE_SLEEP@ -HAVE_STDINT_H = @HAVE_STDINT_H@ -HAVE_STPCPY = @HAVE_STPCPY@ -HAVE_STPNCPY = @HAVE_STPNCPY@ -HAVE_STRCASECMP = @HAVE_STRCASECMP@ -HAVE_STRCASESTR = @HAVE_STRCASESTR@ -HAVE_STRCHRNUL = @HAVE_STRCHRNUL@ -HAVE_STRINGS_H = @HAVE_STRINGS_H@ -HAVE_STRPBRK = @HAVE_STRPBRK@ -HAVE_STRPTIME = @HAVE_STRPTIME@ -HAVE_STRSEP = @HAVE_STRSEP@ -HAVE_STRTOD = @HAVE_STRTOD@ -HAVE_STRTOLL = @HAVE_STRTOLL@ -HAVE_STRTOULL = @HAVE_STRTOULL@ -HAVE_STRUCT_RANDOM_DATA = @HAVE_STRUCT_RANDOM_DATA@ -HAVE_STRVERSCMP = @HAVE_STRVERSCMP@ -HAVE_SYMLINK = @HAVE_SYMLINK@ -HAVE_SYMLINKAT = @HAVE_SYMLINKAT@ -HAVE_SYSEXITS_H = @HAVE_SYSEXITS_H@ -HAVE_SYS_BITYPES_H = @HAVE_SYS_BITYPES_H@ -HAVE_SYS_CDEFS_H = @HAVE_SYS_CDEFS_H@ -HAVE_SYS_INTTYPES_H = @HAVE_SYS_INTTYPES_H@ -HAVE_SYS_LOADAVG_H = @HAVE_SYS_LOADAVG_H@ -HAVE_SYS_PARAM_H = @HAVE_SYS_PARAM_H@ -HAVE_SYS_TYPES_H = @HAVE_SYS_TYPES_H@ -HAVE_TIMEGM = @HAVE_TIMEGM@ -HAVE_TIMEZONE_T = @HAVE_TIMEZONE_T@ -HAVE_TZSET = @HAVE_TZSET@ -HAVE_UNISTD_H = @HAVE_UNISTD_H@ -HAVE_UNLINKAT = @HAVE_UNLINKAT@ -HAVE_UNLOCKPT = @HAVE_UNLOCKPT@ -HAVE_UNSIGNED_LONG_LONG_INT = @HAVE_UNSIGNED_LONG_LONG_INT@ -HAVE_USLEEP = @HAVE_USLEEP@ -HAVE_UTIMENSAT = @HAVE_UTIMENSAT@ -HAVE_VASPRINTF = @HAVE_VASPRINTF@ -HAVE_VDPRINTF = @HAVE_VDPRINTF@ -HAVE_WCHAR_H = @HAVE_WCHAR_H@ -HAVE_WCHAR_T = @HAVE_WCHAR_T@ -HAVE_WCPCPY = @HAVE_WCPCPY@ -HAVE_WCPNCPY = @HAVE_WCPNCPY@ -HAVE_WCRTOMB = @HAVE_WCRTOMB@ -HAVE_WCSCASECMP = @HAVE_WCSCASECMP@ -HAVE_WCSCAT = @HAVE_WCSCAT@ -HAVE_WCSCHR = @HAVE_WCSCHR@ -HAVE_WCSCMP = @HAVE_WCSCMP@ -HAVE_WCSCOLL = @HAVE_WCSCOLL@ -HAVE_WCSCPY = @HAVE_WCSCPY@ -HAVE_WCSCSPN = @HAVE_WCSCSPN@ -HAVE_WCSDUP = @HAVE_WCSDUP@ -HAVE_WCSFTIME = @HAVE_WCSFTIME@ -HAVE_WCSLEN = @HAVE_WCSLEN@ -HAVE_WCSNCASECMP = @HAVE_WCSNCASECMP@ -HAVE_WCSNCAT = @HAVE_WCSNCAT@ -HAVE_WCSNCMP = @HAVE_WCSNCMP@ -HAVE_WCSNCPY = @HAVE_WCSNCPY@ -HAVE_WCSNLEN = @HAVE_WCSNLEN@ -HAVE_WCSNRTOMBS = @HAVE_WCSNRTOMBS@ -HAVE_WCSPBRK = @HAVE_WCSPBRK@ -HAVE_WCSRCHR = @HAVE_WCSRCHR@ -HAVE_WCSRTOMBS = @HAVE_WCSRTOMBS@ -HAVE_WCSSPN = @HAVE_WCSSPN@ -HAVE_WCSSTR = @HAVE_WCSSTR@ -HAVE_WCSTOK = @HAVE_WCSTOK@ -HAVE_WCSWIDTH = @HAVE_WCSWIDTH@ -HAVE_WCSXFRM = @HAVE_WCSXFRM@ -HAVE_WCTRANS_T = @HAVE_WCTRANS_T@ -HAVE_WCTYPE_H = @HAVE_WCTYPE_H@ -HAVE_WCTYPE_T = @HAVE_WCTYPE_T@ -HAVE_WINSOCK2_H = @HAVE_WINSOCK2_H@ -HAVE_WINT_T = @HAVE_WINT_T@ -HAVE_WMEMCHR = @HAVE_WMEMCHR@ -HAVE_WMEMCMP = @HAVE_WMEMCMP@ -HAVE_WMEMCPY = @HAVE_WMEMCPY@ -HAVE_WMEMMOVE = @HAVE_WMEMMOVE@ -HAVE_WMEMSET = @HAVE_WMEMSET@ -HAVE_XLOCALE_H = @HAVE_XLOCALE_H@ -HAVE__BOOL = @HAVE__BOOL@ -HAVE__EXIT = @HAVE__EXIT@ -HELP2MAN = @HELP2MAN@ -HOST_CC = @HOST_CC@ -HOST_CCASFLAGS = @HOST_CCASFLAGS@ -HOST_CFLAGS = @HOST_CFLAGS@ -HOST_CPPFLAGS = @HOST_CPPFLAGS@ -HOST_LDFLAGS = @HOST_LDFLAGS@ -INCLUDE_NEXT = @INCLUDE_NEXT@ -INCLUDE_NEXT_AS_FIRST_DIRECTIVE = @INCLUDE_NEXT_AS_FIRST_DIRECTIVE@ -INSTALL = @INSTALL@ -INSTALL_DATA = @INSTALL_DATA@ -INSTALL_PROGRAM = @INSTALL_PROGRAM@ -INSTALL_SCRIPT = @INSTALL_SCRIPT@ -INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ -INTLLIBS = @INTLLIBS@ -INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -LDFLAGS = @LDFLAGS@ -LEX = @LEX@ -LEXLIB = @LEXLIB@ -LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@ -LIBDEVMAPPER = @LIBDEVMAPPER@ -LIBGEOM = @LIBGEOM@ -LIBGNU_LIBDEPS = @LIBGNU_LIBDEPS@ -LIBGNU_LTLIBDEPS = @LIBGNU_LTLIBDEPS@ -LIBICONV = @LIBICONV@ -LIBINTL = @LIBINTL@ -LIBLZMA = @LIBLZMA@ -LIBMULTITHREAD = @LIBMULTITHREAD@ -LIBNVPAIR = @LIBNVPAIR@ -LIBOBJS = @LIBOBJS@ -LIBPCIACCESS = @LIBPCIACCESS@ -LIBPTH = @LIBPTH@ -LIBPTH_PREFIX = @LIBPTH_PREFIX@ -LIBS = @LIBS@ -LIBSDL = @LIBSDL@ -LIBTHREAD = @LIBTHREAD@ -LIBUNISTRING_UNITYPES_H = @LIBUNISTRING_UNITYPES_H@ -LIBUNISTRING_UNIWIDTH_H = @LIBUNISTRING_UNIWIDTH_H@ -LIBUTIL = @LIBUTIL@ -LIBZFS = @LIBZFS@ -LIMITS_H = @LIMITS_H@ -LN_S = @LN_S@ -LOCALCHARSET_TESTS_ENVIRONMENT = @LOCALCHARSET_TESTS_ENVIRONMENT@ -LOCALE_FR = @LOCALE_FR@ -LOCALE_FR_UTF8 = @LOCALE_FR_UTF8@ -LOCALE_JA = @LOCALE_JA@ -LOCALE_ZH_CN = @LOCALE_ZH_CN@ -LTLIBICONV = @LTLIBICONV@ -LTLIBINTL = @LTLIBINTL@ -LTLIBMULTITHREAD = @LTLIBMULTITHREAD@ -LTLIBOBJS = @LTLIBOBJS@ -LTLIBPTH = @LTLIBPTH@ -LTLIBTHREAD = @LTLIBTHREAD@ -MAKEINFO = @MAKEINFO@ -MKDIR_P = @MKDIR_P@ -MSGFMT = @MSGFMT@ -MSGFMT_015 = @MSGFMT_015@ -MSGMERGE = @MSGMERGE@ -NEXT_AS_FIRST_DIRECTIVE_DIRENT_H = @NEXT_AS_FIRST_DIRECTIVE_DIRENT_H@ -NEXT_AS_FIRST_DIRECTIVE_ERRNO_H = @NEXT_AS_FIRST_DIRECTIVE_ERRNO_H@ -NEXT_AS_FIRST_DIRECTIVE_FCNTL_H = @NEXT_AS_FIRST_DIRECTIVE_FCNTL_H@ -NEXT_AS_FIRST_DIRECTIVE_FLOAT_H = @NEXT_AS_FIRST_DIRECTIVE_FLOAT_H@ -NEXT_AS_FIRST_DIRECTIVE_FNMATCH_H = @NEXT_AS_FIRST_DIRECTIVE_FNMATCH_H@ -NEXT_AS_FIRST_DIRECTIVE_GETOPT_H = @NEXT_AS_FIRST_DIRECTIVE_GETOPT_H@ -NEXT_AS_FIRST_DIRECTIVE_LANGINFO_H = @NEXT_AS_FIRST_DIRECTIVE_LANGINFO_H@ -NEXT_AS_FIRST_DIRECTIVE_LIMITS_H = @NEXT_AS_FIRST_DIRECTIVE_LIMITS_H@ -NEXT_AS_FIRST_DIRECTIVE_LOCALE_H = @NEXT_AS_FIRST_DIRECTIVE_LOCALE_H@ -NEXT_AS_FIRST_DIRECTIVE_STDDEF_H = @NEXT_AS_FIRST_DIRECTIVE_STDDEF_H@ -NEXT_AS_FIRST_DIRECTIVE_STDINT_H = @NEXT_AS_FIRST_DIRECTIVE_STDINT_H@ -NEXT_AS_FIRST_DIRECTIVE_STDIO_H = @NEXT_AS_FIRST_DIRECTIVE_STDIO_H@ -NEXT_AS_FIRST_DIRECTIVE_STDLIB_H = @NEXT_AS_FIRST_DIRECTIVE_STDLIB_H@ -NEXT_AS_FIRST_DIRECTIVE_STRINGS_H = @NEXT_AS_FIRST_DIRECTIVE_STRINGS_H@ -NEXT_AS_FIRST_DIRECTIVE_STRING_H = @NEXT_AS_FIRST_DIRECTIVE_STRING_H@ -NEXT_AS_FIRST_DIRECTIVE_SYSEXITS_H = @NEXT_AS_FIRST_DIRECTIVE_SYSEXITS_H@ -NEXT_AS_FIRST_DIRECTIVE_SYS_STAT_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_STAT_H@ -NEXT_AS_FIRST_DIRECTIVE_SYS_TYPES_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_TYPES_H@ -NEXT_AS_FIRST_DIRECTIVE_TIME_H = @NEXT_AS_FIRST_DIRECTIVE_TIME_H@ -NEXT_AS_FIRST_DIRECTIVE_UNISTD_H = @NEXT_AS_FIRST_DIRECTIVE_UNISTD_H@ -NEXT_AS_FIRST_DIRECTIVE_WCHAR_H = @NEXT_AS_FIRST_DIRECTIVE_WCHAR_H@ -NEXT_AS_FIRST_DIRECTIVE_WCTYPE_H = @NEXT_AS_FIRST_DIRECTIVE_WCTYPE_H@ -NEXT_DIRENT_H = @NEXT_DIRENT_H@ -NEXT_ERRNO_H = @NEXT_ERRNO_H@ -NEXT_FCNTL_H = @NEXT_FCNTL_H@ -NEXT_FLOAT_H = @NEXT_FLOAT_H@ -NEXT_FNMATCH_H = @NEXT_FNMATCH_H@ -NEXT_GETOPT_H = @NEXT_GETOPT_H@ -NEXT_LANGINFO_H = @NEXT_LANGINFO_H@ -NEXT_LIMITS_H = @NEXT_LIMITS_H@ -NEXT_LOCALE_H = @NEXT_LOCALE_H@ -NEXT_STDDEF_H = @NEXT_STDDEF_H@ -NEXT_STDINT_H = @NEXT_STDINT_H@ -NEXT_STDIO_H = @NEXT_STDIO_H@ -NEXT_STDLIB_H = @NEXT_STDLIB_H@ -NEXT_STRINGS_H = @NEXT_STRINGS_H@ -NEXT_STRING_H = @NEXT_STRING_H@ -NEXT_SYSEXITS_H = @NEXT_SYSEXITS_H@ -NEXT_SYS_STAT_H = @NEXT_SYS_STAT_H@ -NEXT_SYS_TYPES_H = @NEXT_SYS_TYPES_H@ -NEXT_TIME_H = @NEXT_TIME_H@ -NEXT_UNISTD_H = @NEXT_UNISTD_H@ -NEXT_WCHAR_H = @NEXT_WCHAR_H@ -NEXT_WCTYPE_H = @NEXT_WCTYPE_H@ -OBJEXT = @OBJEXT@ -PACKAGE = @PACKAGE@ -PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ -PACKAGE_NAME = @PACKAGE_NAME@ -PACKAGE_STRING = @PACKAGE_STRING@ -PACKAGE_TARNAME = @PACKAGE_TARNAME@ -PACKAGE_URL = @PACKAGE_URL@ -PACKAGE_VERSION = @PACKAGE_VERSION@ -PATH_SEPARATOR = @PATH_SEPARATOR@ -PKG_CONFIG = @PKG_CONFIG@ -PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ -PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ -POSUB = @POSUB@ -PRAGMA_COLUMNS = @PRAGMA_COLUMNS@ -PRAGMA_SYSTEM_HEADER = @PRAGMA_SYSTEM_HEADER@ -PTHREAD_H_DEFINES_STRUCT_TIMESPEC = @PTHREAD_H_DEFINES_STRUCT_TIMESPEC@ -PTRDIFF_T_SUFFIX = @PTRDIFF_T_SUFFIX@ -PYTHON = @PYTHON@ -PYTHON_EXEC_PREFIX = @PYTHON_EXEC_PREFIX@ -PYTHON_PLATFORM = @PYTHON_PLATFORM@ -PYTHON_PREFIX = @PYTHON_PREFIX@ -PYTHON_VERSION = @PYTHON_VERSION@ -RANLIB = $(TARGET_RANLIB) -REPLACE_BTOWC = @REPLACE_BTOWC@ -REPLACE_CALLOC = @REPLACE_CALLOC@ -REPLACE_CANONICALIZE_FILE_NAME = @REPLACE_CANONICALIZE_FILE_NAME@ -REPLACE_CHOWN = @REPLACE_CHOWN@ -REPLACE_CLOSE = @REPLACE_CLOSE@ -REPLACE_CLOSEDIR = @REPLACE_CLOSEDIR@ -REPLACE_CTIME = @REPLACE_CTIME@ -REPLACE_DIRFD = @REPLACE_DIRFD@ -REPLACE_DPRINTF = @REPLACE_DPRINTF@ -REPLACE_DUP = @REPLACE_DUP@ -REPLACE_DUP2 = @REPLACE_DUP2@ -REPLACE_DUPLOCALE = @REPLACE_DUPLOCALE@ -REPLACE_FACCESSAT = @REPLACE_FACCESSAT@ -REPLACE_FCHOWNAT = @REPLACE_FCHOWNAT@ -REPLACE_FCLOSE = @REPLACE_FCLOSE@ -REPLACE_FCNTL = @REPLACE_FCNTL@ -REPLACE_FDOPEN = @REPLACE_FDOPEN@ -REPLACE_FDOPENDIR = @REPLACE_FDOPENDIR@ -REPLACE_FFLUSH = @REPLACE_FFLUSH@ -REPLACE_FNMATCH = @REPLACE_FNMATCH@ -REPLACE_FOPEN = @REPLACE_FOPEN@ -REPLACE_FPRINTF = @REPLACE_FPRINTF@ -REPLACE_FPURGE = @REPLACE_FPURGE@ -REPLACE_FREELOCALE = @REPLACE_FREELOCALE@ -REPLACE_FREOPEN = @REPLACE_FREOPEN@ -REPLACE_FSEEK = @REPLACE_FSEEK@ -REPLACE_FSEEKO = @REPLACE_FSEEKO@ -REPLACE_FSTAT = @REPLACE_FSTAT@ -REPLACE_FSTATAT = @REPLACE_FSTATAT@ -REPLACE_FTELL = @REPLACE_FTELL@ -REPLACE_FTELLO = @REPLACE_FTELLO@ -REPLACE_FTRUNCATE = @REPLACE_FTRUNCATE@ -REPLACE_FUTIMENS = @REPLACE_FUTIMENS@ -REPLACE_GETCWD = @REPLACE_GETCWD@ -REPLACE_GETDELIM = @REPLACE_GETDELIM@ -REPLACE_GETDOMAINNAME = @REPLACE_GETDOMAINNAME@ -REPLACE_GETDTABLESIZE = @REPLACE_GETDTABLESIZE@ -REPLACE_GETGROUPS = @REPLACE_GETGROUPS@ -REPLACE_GETLINE = @REPLACE_GETLINE@ -REPLACE_GETLOGIN_R = @REPLACE_GETLOGIN_R@ -REPLACE_GETPAGESIZE = @REPLACE_GETPAGESIZE@ -REPLACE_GETPASS = @REPLACE_GETPASS@ -REPLACE_GMTIME = @REPLACE_GMTIME@ -REPLACE_ISATTY = @REPLACE_ISATTY@ -REPLACE_ISWBLANK = @REPLACE_ISWBLANK@ -REPLACE_ISWCNTRL = @REPLACE_ISWCNTRL@ -REPLACE_ITOLD = @REPLACE_ITOLD@ -REPLACE_LCHOWN = @REPLACE_LCHOWN@ -REPLACE_LINK = @REPLACE_LINK@ -REPLACE_LINKAT = @REPLACE_LINKAT@ -REPLACE_LOCALECONV = @REPLACE_LOCALECONV@ -REPLACE_LOCALTIME = @REPLACE_LOCALTIME@ -REPLACE_LOCALTIME_R = @REPLACE_LOCALTIME_R@ -REPLACE_LSEEK = @REPLACE_LSEEK@ -REPLACE_LSTAT = @REPLACE_LSTAT@ -REPLACE_MALLOC = @REPLACE_MALLOC@ -REPLACE_MBRLEN = @REPLACE_MBRLEN@ -REPLACE_MBRTOWC = @REPLACE_MBRTOWC@ -REPLACE_MBSINIT = @REPLACE_MBSINIT@ -REPLACE_MBSNRTOWCS = @REPLACE_MBSNRTOWCS@ -REPLACE_MBSRTOWCS = @REPLACE_MBSRTOWCS@ -REPLACE_MBSTATE_T = @REPLACE_MBSTATE_T@ -REPLACE_MBTOWC = @REPLACE_MBTOWC@ -REPLACE_MEMCHR = @REPLACE_MEMCHR@ -REPLACE_MEMMEM = @REPLACE_MEMMEM@ -REPLACE_MKDIR = @REPLACE_MKDIR@ -REPLACE_MKFIFO = @REPLACE_MKFIFO@ -REPLACE_MKNOD = @REPLACE_MKNOD@ -REPLACE_MKSTEMP = @REPLACE_MKSTEMP@ -REPLACE_MKTIME = @REPLACE_MKTIME@ -REPLACE_NANOSLEEP = @REPLACE_NANOSLEEP@ -REPLACE_NEWLOCALE = @REPLACE_NEWLOCALE@ -REPLACE_NL_LANGINFO = @REPLACE_NL_LANGINFO@ -REPLACE_NULL = @REPLACE_NULL@ -REPLACE_OBSTACK_PRINTF = @REPLACE_OBSTACK_PRINTF@ -REPLACE_OPEN = @REPLACE_OPEN@ -REPLACE_OPENAT = @REPLACE_OPENAT@ -REPLACE_OPENDIR = @REPLACE_OPENDIR@ -REPLACE_PERROR = @REPLACE_PERROR@ -REPLACE_POPEN = @REPLACE_POPEN@ -REPLACE_PREAD = @REPLACE_PREAD@ -REPLACE_PRINTF = @REPLACE_PRINTF@ -REPLACE_PTSNAME = @REPLACE_PTSNAME@ -REPLACE_PTSNAME_R = @REPLACE_PTSNAME_R@ -REPLACE_PUTENV = @REPLACE_PUTENV@ -REPLACE_PWRITE = @REPLACE_PWRITE@ -REPLACE_QSORT_R = @REPLACE_QSORT_R@ -REPLACE_RANDOM_R = @REPLACE_RANDOM_R@ -REPLACE_READ = @REPLACE_READ@ -REPLACE_READLINK = @REPLACE_READLINK@ -REPLACE_READLINKAT = @REPLACE_READLINKAT@ -REPLACE_REALLOC = @REPLACE_REALLOC@ -REPLACE_REALPATH = @REPLACE_REALPATH@ -REPLACE_REMOVE = @REPLACE_REMOVE@ -REPLACE_RENAME = @REPLACE_RENAME@ -REPLACE_RENAMEAT = @REPLACE_RENAMEAT@ -REPLACE_RMDIR = @REPLACE_RMDIR@ -REPLACE_SETENV = @REPLACE_SETENV@ -REPLACE_SETLOCALE = @REPLACE_SETLOCALE@ -REPLACE_SLEEP = @REPLACE_SLEEP@ -REPLACE_SNPRINTF = @REPLACE_SNPRINTF@ -REPLACE_SPRINTF = @REPLACE_SPRINTF@ -REPLACE_STAT = @REPLACE_STAT@ -REPLACE_STDIO_READ_FUNCS = @REPLACE_STDIO_READ_FUNCS@ -REPLACE_STDIO_WRITE_FUNCS = @REPLACE_STDIO_WRITE_FUNCS@ -REPLACE_STPNCPY = @REPLACE_STPNCPY@ -REPLACE_STRCASESTR = @REPLACE_STRCASESTR@ -REPLACE_STRCHRNUL = @REPLACE_STRCHRNUL@ -REPLACE_STRDUP = @REPLACE_STRDUP@ -REPLACE_STRERROR = @REPLACE_STRERROR@ -REPLACE_STRERROR_R = @REPLACE_STRERROR_R@ -REPLACE_STRFTIME = @REPLACE_STRFTIME@ -REPLACE_STRNCAT = @REPLACE_STRNCAT@ -REPLACE_STRNDUP = @REPLACE_STRNDUP@ -REPLACE_STRNLEN = @REPLACE_STRNLEN@ -REPLACE_STRSIGNAL = @REPLACE_STRSIGNAL@ -REPLACE_STRSTR = @REPLACE_STRSTR@ -REPLACE_STRTOD = @REPLACE_STRTOD@ -REPLACE_STRTOK_R = @REPLACE_STRTOK_R@ -REPLACE_STRUCT_LCONV = @REPLACE_STRUCT_LCONV@ -REPLACE_SYMLINK = @REPLACE_SYMLINK@ -REPLACE_SYMLINKAT = @REPLACE_SYMLINKAT@ -REPLACE_TIMEGM = @REPLACE_TIMEGM@ -REPLACE_TMPFILE = @REPLACE_TMPFILE@ -REPLACE_TOWLOWER = @REPLACE_TOWLOWER@ -REPLACE_TRUNCATE = @REPLACE_TRUNCATE@ -REPLACE_TTYNAME_R = @REPLACE_TTYNAME_R@ -REPLACE_TZSET = @REPLACE_TZSET@ -REPLACE_UNLINK = @REPLACE_UNLINK@ -REPLACE_UNLINKAT = @REPLACE_UNLINKAT@ -REPLACE_UNSETENV = @REPLACE_UNSETENV@ -REPLACE_USLEEP = @REPLACE_USLEEP@ -REPLACE_UTIMENSAT = @REPLACE_UTIMENSAT@ -REPLACE_VASPRINTF = @REPLACE_VASPRINTF@ -REPLACE_VDPRINTF = @REPLACE_VDPRINTF@ -REPLACE_VFPRINTF = @REPLACE_VFPRINTF@ -REPLACE_VPRINTF = @REPLACE_VPRINTF@ -REPLACE_VSNPRINTF = @REPLACE_VSNPRINTF@ -REPLACE_VSPRINTF = @REPLACE_VSPRINTF@ -REPLACE_WCRTOMB = @REPLACE_WCRTOMB@ -REPLACE_WCSFTIME = @REPLACE_WCSFTIME@ -REPLACE_WCSNRTOMBS = @REPLACE_WCSNRTOMBS@ -REPLACE_WCSRTOMBS = @REPLACE_WCSRTOMBS@ -REPLACE_WCSWIDTH = @REPLACE_WCSWIDTH@ -REPLACE_WCTOB = @REPLACE_WCTOB@ -REPLACE_WCTOMB = @REPLACE_WCTOMB@ -REPLACE_WCWIDTH = @REPLACE_WCWIDTH@ -REPLACE_WRITE = @REPLACE_WRITE@ -SED = @SED@ -SET_MAKE = @SET_MAKE@ -SHELL = @SHELL@ -SIG_ATOMIC_T_SUFFIX = @SIG_ATOMIC_T_SUFFIX@ -SIZE_T_SUFFIX = @SIZE_T_SUFFIX@ -STDALIGN_H = @STDALIGN_H@ -STDBOOL_H = @STDBOOL_H@ -STDDEF_H = @STDDEF_H@ -STDINT_H = @STDINT_H@ -STRIP = $(TARGET_STRIP) -SYSEXITS_H = @SYSEXITS_H@ -SYS_TIME_H_DEFINES_STRUCT_TIMESPEC = @SYS_TIME_H_DEFINES_STRUCT_TIMESPEC@ -TARGET_APPLE_LINKER = @TARGET_APPLE_LINKER@ -TARGET_CC = @TARGET_CC@ -TARGET_CCAS = @TARGET_CCAS@ -TARGET_CCASFLAGS = @TARGET_CCASFLAGS@ -TARGET_CC_VERSION = @TARGET_CC_VERSION@ -TARGET_CFLAGS = @TARGET_CFLAGS@ -TARGET_CPP = @TARGET_CPP@ -TARGET_CPPFLAGS = @TARGET_CPPFLAGS@ -TARGET_DECOMPRESSOR_LINK_ADDR = @TARGET_DECOMPRESSOR_LINK_ADDR@ -TARGET_IMG_BASE_LDOPT = @TARGET_IMG_BASE_LDOPT@ -TARGET_IMG_CFLAGS = @TARGET_IMG_CFLAGS@ -TARGET_IMG_LDFLAGS = @TARGET_IMG_LDFLAGS@ -TARGET_LDFLAGS = @TARGET_LDFLAGS@ -TARGET_LDFLAGS_OLDMAGIC = @TARGET_LDFLAGS_OLDMAGIC@ -TARGET_LINK_ADDR = @TARGET_LINK_ADDR@ -TARGET_MODULE_FORMAT = @TARGET_MODULE_FORMAT@ -TARGET_NM = @TARGET_NM@ -TARGET_NMFLAGS_DEFINED_ONLY = @TARGET_NMFLAGS_DEFINED_ONLY@ -TARGET_NMFLAGS_MINUS_P = @TARGET_NMFLAGS_MINUS_P@ -TARGET_OBJ2ELF = @TARGET_OBJ2ELF@ -TARGET_OBJCONV = @TARGET_OBJCONV@ -TARGET_OBJCOPY = @TARGET_OBJCOPY@ -TARGET_RANLIB = @TARGET_RANLIB@ -TARGET_STRIP = @TARGET_STRIP@ -TIME_H_DEFINES_STRUCT_TIMESPEC = @TIME_H_DEFINES_STRUCT_TIMESPEC@ -UNDEFINE_STRTOK_R = @UNDEFINE_STRTOK_R@ -UNISTD_H_DEFINES_STRUCT_TIMESPEC = @UNISTD_H_DEFINES_STRUCT_TIMESPEC@ -UNISTD_H_HAVE_WINSOCK2_H = @UNISTD_H_HAVE_WINSOCK2_H@ -UNISTD_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS = @UNISTD_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS@ -USE_NLS = @USE_NLS@ -VERSION = @VERSION@ -WCHAR_T_SUFFIX = @WCHAR_T_SUFFIX@ -WINDOWS_64_BIT_OFF_T = @WINDOWS_64_BIT_OFF_T@ -WINDOWS_64_BIT_ST_SIZE = @WINDOWS_64_BIT_ST_SIZE@ -WINDOWS_STAT_INODES = @WINDOWS_STAT_INODES@ -WINDOWS_STAT_TIMESPEC = @WINDOWS_STAT_TIMESPEC@ -WINT_T_SUFFIX = @WINT_T_SUFFIX@ -XGETTEXT = @XGETTEXT@ -XGETTEXT_015 = @XGETTEXT_015@ -XGETTEXT_EXTRA_OPTIONS = @XGETTEXT_EXTRA_OPTIONS@ -YACC = @YACC@ -YFLAGS = @YFLAGS@ -abs_builddir = @abs_builddir@ -abs_srcdir = @abs_srcdir@ -abs_top_builddir = @abs_top_builddir@ -abs_top_srcdir = @abs_top_srcdir@ -ac_ct_CC = @ac_ct_CC@ -ac_ct_CXX = @ac_ct_CXX@ -ac_ct_TARGET_CC = @ac_ct_TARGET_CC@ -am__include = @am__include@ -am__leading_dot = @am__leading_dot@ -am__quote = @am__quote@ -am__tar = @am__tar@ -am__untar = @am__untar@ -bindir = @bindir@ -bootdirname = @bootdirname@ -build = @build@ -build_alias = @build_alias@ -build_cpu = @build_cpu@ -build_os = @build_os@ -build_vendor = @build_vendor@ -builddir = @builddir@ -datadir = @datadir@ -datarootdir = @datarootdir@ -docdir = @docdir@ -dvidir = @dvidir@ -enable_efiemu = @enable_efiemu@ -enable_grub_emu_pci = @enable_grub_emu_pci@ -enable_grub_emu_sdl = @enable_grub_emu_sdl@ -enable_grub_mkfont = @enable_grub_mkfont@ -enable_grub_mount = @enable_grub_mount@ -exec_prefix = @exec_prefix@ -gl_LIBOBJS = @gl_LIBOBJS@ -gl_LTLIBOBJS = @gl_LTLIBOBJS@ -gltests_LIBOBJS = @gltests_LIBOBJS@ -gltests_LTLIBOBJS = @gltests_LTLIBOBJS@ -gltests_WITNESS = @gltests_WITNESS@ -grub_bios_setup = @grub_bios_setup@ -grub_editenv = @grub_editenv@ -grub_file = @grub_file@ -grub_glue_efi = @grub_glue_efi@ -grub_install = @grub_install@ -grub_mkconfig = @grub_mkconfig@ -grub_mkfont = @grub_mkfont@ -grub_mkimage = @grub_mkimage@ -grub_mklayout = @grub_mklayout@ -grub_mkpasswd_pbkdf2 = @grub_mkpasswd_pbkdf2@ -grub_mkrelpath = @grub_mkrelpath@ -grub_mkrescue = @grub_mkrescue@ -grub_probe = @grub_probe@ -grub_reboot = @grub_reboot@ -grub_render_label = @grub_render_label@ -grub_script_check = @grub_script_check@ -grub_set_default = @grub_set_default@ -grub_sparc64_setup = @grub_sparc64_setup@ -grubdirname = @grubdirname@ -host = @host@ -host_alias = @host_alias@ -host_cpu = @host_cpu@ -host_kernel = @host_kernel@ -host_os = @host_os@ -host_vendor = @host_vendor@ -htmldir = @htmldir@ -includedir = @includedir@ -infodir = @infodir@ -install_sh = @install_sh@ -libdir = @libdir@ -libexecdir = @libexecdir@ -localedir = @localedir@ -localstatedir = @localstatedir@ -mandir = @mandir@ -mkdir_p = @mkdir_p@ -oldincludedir = @oldincludedir@ -pdfdir = @pdfdir@ -pkgpyexecdir = @pkgpyexecdir@ -pkgpythondir = @pkgpythondir@ -platform = @platform@ -prefix = @prefix@ -program_transform_name = @program_transform_name@ -psdir = @psdir@ -pyexecdir = @pyexecdir@ -pythondir = @pythondir@ -runstatedir = @runstatedir@ -sbindir = @sbindir@ -sharedstatedir = @sharedstatedir@ -srcdir = @srcdir@ -sysconfdir = @sysconfdir@ -target = @target@ -target_alias = @target_alias@ -target_cpu = @target_cpu@ -target_os = @target_os@ -target_vendor = @target_vendor@ -top_build_prefix = @top_build_prefix@ -top_builddir = @top_builddir@ -top_srcdir = @top_srcdir@ -AUTOMAKE_OPTIONS = subdir-objects -Wno-portability -CFLAGS_PLATFORM = $(am__append_1) $(am__append_2) -@COND_arm_TRUE@@COND_emu_FALSE@LDFLAGS_PLATFORM = -Wl,--wrap=__clear_cache - -# Platform specific options -@COND_sparc64_ieee1275_TRUE@LDFLAGS_PLATFORM = -Wl,-melf64_sparc - -# Other options -CPPFLAGS_DEFAULT = -DGRUB_FILE=\"$(subst $(srcdir)/,,$<)\" \ - -I$(builddir) -I$(srcdir) -I$(top_builddir) -I$(top_srcdir) \ - -I$(top_srcdir)/include -I$(top_builddir)/include \ - -I$(top_srcdir)/grub-core/lib/libgcrypt-grub/src/ -CCASFLAGS_DEFAULT = $(CPPFLAGS_DEFAULT) -DASM_FILE=1 -CFLAGS_KERNEL = $(CFLAGS_PLATFORM) -ffreestanding -LDFLAGS_KERNEL = $(LDFLAGS_PLATFORM) -nostdlib $(TARGET_LDFLAGS_OLDMAGIC) -CPPFLAGS_KERNEL = $(CPPFLAGS_CPU) $(CPPFLAGS_PLATFORM) -DGRUB_KERNEL=1 -CCASFLAGS_KERNEL = $(CCASFLAGS_CPU) $(CCASFLAGS_PLATFORM) -STRIPFLAGS_KERNEL = -R .rel.dyn -R .reginfo -R .note -R .comment -R .drectve -R .note.gnu.gold-version -R .MIPS.abiflags -R .ARM.exidx -CFLAGS_MODULE = $(CFLAGS_PLATFORM) -ffreestanding -LDFLAGS_MODULE = $(LDFLAGS_PLATFORM) -nostdlib $(TARGET_LDFLAGS_OLDMAGIC) -Wl,-r,-d -CPPFLAGS_MODULE = $(CPPFLAGS_CPU) $(CPPFLAGS_PLATFORM) -CCASFLAGS_MODULE = $(CCASFLAGS_CPU) $(CCASFLAGS_PLATFORM) -CFLAGS_IMAGE = $(CFLAGS_PLATFORM) -fno-builtin -LDFLAGS_IMAGE = $(LDFLAGS_PLATFORM) -nostdlib $(TARGET_LDFLAGS_OLDMAGIC) -Wl,-S -CPPFLAGS_IMAGE = $(CPPFLAGS_CPU) $(CPPFLAGS_PLATFORM) -CCASFLAGS_IMAGE = $(CCASFLAGS_CPU) $(CCASFLAGS_PLATFORM) -CFLAGS_PROGRAM = $(CFLAGS_PLATFORM) -LDFLAGS_PROGRAM = $(LDFLAGS_PLATFORM) -CPPFLAGS_PROGRAM = $(CPPFLAGS_PLATFORM) -CCASFLAGS_PROGRAM = $(CCASFLAGS_PLATFORM) -CFLAGS_LIBRARY = $(CFLAGS_PLATFORM) -fno-builtin -CPPFLAGS_LIBRARY = $(CPPFLAGS_PLATFORM) -CCASFLAGS_LIBRARY = $(CCASFLAGS_PLATFORM) - -# Other variables -grubconfdir = $(sysconfdir)/grub.d -platformdir = $(pkglibdir)/$(target_cpu)-$(platform) -starfielddir = $(pkgdatadir)/themes/starfield -CFLAGS_GNULIB = -Wno-undef -Wno-sign-compare -Wno-unused -Wno-unused-parameter -Wno-redundant-decls -Wno-unreachable-code -Wno-conversion -CPPFLAGS_GNULIB = -I$(top_builddir)/grub-core/lib/gnulib -I$(top_srcdir)/grub-core/lib/gnulib -CFLAGS_POSIX = -fno-builtin -CPPFLAGS_POSIX = -I$(top_srcdir)/grub-core/lib/posix_wrap -CFLAGS_GCRY = -Wno-error -Wno-missing-field-initializers -Wno-redundant-decls -Wno-undef $(CFLAGS_POSIX) -CPPFLAGS_GCRY = -I$(top_srcdir)/grub-core/lib/libgcrypt_wrap $(CPPFLAGS_POSIX) -D_GCRYPT_IN_LIBGCRYPT=1 -I$(top_srcdir)/include/grub/gcrypt -CPPFLAGS_EFIEMU = -I$(top_srcdir)/grub-core/efiemu/runtime - -# List file macros for recognizing /interesting/ modules -CPPFLAGS_FS_LIST = -Dgrub_fs_register=FS_LIST_MARKER -CPPFLAGS_VIDEO_LIST = -Dgrub_video_register=VIDEO_LIST_MARKER -CPPFLAGS_PARTMAP_LIST = -Dgrub_partition_map_register=PARTMAP_LIST_MARKER -CPPFLAGS_PARTTOOL_LIST = -Dgrub_parttool_register=PARTTOOL_LIST_MARKER -CPPFLAGS_TERMINAL_LIST = '-Dgrub_term_register_input(...)=INPUT_TERMINAL_LIST_MARKER(__VA_ARGS__)' \ - '-Dgrub_term_register_output(...)=OUTPUT_TERMINAL_LIST_MARKER(__VA_ARGS__)' -CPPFLAGS_COMMAND_LIST = '-Dgrub_register_command(...)=COMMAND_LIST_MARKER(__VA_ARGS__)' \ - '-Dgrub_register_extcmd(...)=EXTCOMMAND_LIST_MARKER(__VA_ARGS__)' \ - '-Dgrub_register_command_p1(...)=P1COMMAND_LIST_MARKER(__VA_ARGS__)' -CPPFLAGS_FDT_LIST := '-Dgrub_fdtbus_register(...)=FDT_DRIVER_LIST_MARKER(__VA_ARGS__)' -CPPFLAGS_MARKER = $(CPPFLAGS_FS_LIST) $(CPPFLAGS_VIDEO_LIST) \ - $(CPPFLAGS_PARTTOOL_LIST) $(CPPFLAGS_PARTMAP_LIST) \ - $(CPPFLAGS_TERMINAL_LIST) $(CPPFLAGS_COMMAND_LIST) \ - $(CPPFLAGS_FDT_LIST) - - -# Define these variables to calm down automake -IMG_FILES = -MOD_FILES = disk.mod trig.mod $(am__append_8) $(am__append_15) \ - $(am__append_22) $(am__append_29) $(am__append_36) \ - $(am__append_43) $(am__append_50) $(am__append_57) \ - $(am__append_64) $(am__append_71) $(am__append_78) \ - $(am__append_85) $(am__append_92) $(am__append_99) \ - $(am__append_106) $(am__append_113) $(am__append_120) \ - $(am__append_127) $(am__append_134) $(am__append_141) \ - $(am__append_148) $(am__append_155) $(am__append_162) \ - $(am__append_169) $(am__append_176) $(am__append_183) \ - $(am__append_190) $(am__append_197) $(am__append_204) \ - $(am__append_211) $(am__append_218) $(am__append_225) \ - $(am__append_232) $(am__append_239) $(am__append_246) \ - $(am__append_253) $(am__append_260) $(am__append_267) \ - $(am__append_274) $(am__append_281) $(am__append_288) \ - $(am__append_295) $(am__append_302) $(am__append_309) \ - $(am__append_316) $(am__append_323) $(am__append_330) \ - $(am__append_337) $(am__append_344) $(am__append_351) \ - $(am__append_358) $(am__append_365) $(am__append_372) \ - $(am__append_379) $(am__append_386) $(am__append_393) \ - $(am__append_400) $(am__append_407) $(am__append_414) \ - $(am__append_421) $(am__append_428) $(am__append_435) \ - $(am__append_442) $(am__append_449) $(am__append_456) \ - $(am__append_463) $(am__append_470) $(am__append_477) \ - $(am__append_484) $(am__append_491) $(am__append_498) \ - $(am__append_505) $(am__append_512) $(am__append_519) \ - $(am__append_526) $(am__append_533) $(am__append_540) \ - $(am__append_547) $(am__append_554) $(am__append_561) \ - $(am__append_568) $(am__append_575) $(am__append_582) \ - $(am__append_589) $(am__append_596) $(am__append_603) \ - $(am__append_610) $(am__append_617) $(am__append_624) \ - $(am__append_631) $(am__append_638) $(am__append_645) \ - $(am__append_652) $(am__append_659) $(am__append_666) \ - $(am__append_673) $(am__append_680) $(am__append_687) \ - $(am__append_694) $(am__append_701) $(am__append_708) \ - $(am__append_715) $(am__append_722) $(am__append_729) \ - $(am__append_736) $(am__append_743) $(am__append_750) \ - $(am__append_757) $(am__append_764) $(am__append_771) \ - $(am__append_778) $(am__append_785) $(am__append_792) \ - $(am__append_799) $(am__append_806) $(am__append_813) \ - $(am__append_820) $(am__append_827) $(am__append_834) \ - $(am__append_841) $(am__append_848) $(am__append_855) \ - $(am__append_862) $(am__append_869) $(am__append_876) \ - $(am__append_883) $(am__append_890) $(am__append_897) \ - $(am__append_904) $(am__append_911) $(am__append_918) \ - $(am__append_925) $(am__append_932) $(am__append_939) \ - $(am__append_946) $(am__append_953) $(am__append_960) \ - $(am__append_967) $(am__append_974) $(am__append_981) \ - $(am__append_988) $(am__append_995) $(am__append_1002) \ - $(am__append_1009) $(am__append_1016) $(am__append_1023) \ - $(am__append_1030) regexp.mod $(am__append_1037) \ - $(am__append_1044) $(am__append_1051) $(am__append_1058) \ - $(am__append_1065) $(am__append_1072) $(am__append_1079) \ - $(am__append_1086) $(am__append_1093) $(am__append_1100) \ - $(am__append_1107) $(am__append_1114) $(am__append_1121) \ - $(am__append_1128) $(am__append_1135) $(am__append_1142) \ - $(am__append_1149) $(am__append_1156) $(am__append_1163) \ - $(am__append_1170) $(am__append_1177) $(am__append_1184) \ - $(am__append_1191) $(am__append_1198) $(am__append_1205) \ - $(am__append_1212) $(am__append_1219) $(am__append_1226) \ - $(am__append_1233) $(am__append_1240) $(am__append_1247) \ - $(am__append_1254) $(am__append_1261) $(am__append_1268) \ - $(am__append_1275) $(am__append_1282) $(am__append_1289) \ - $(am__append_1296) $(am__append_1303) $(am__append_1310) \ - $(am__append_1317) $(am__append_1324) $(am__append_1331) \ - $(am__append_1338) $(am__append_1345) $(am__append_1352) \ - $(am__append_1359) $(am__append_1366) $(am__append_1373) \ - $(am__append_1380) $(am__append_1387) $(am__append_1394) \ - $(am__append_1401) $(am__append_1408) $(am__append_1415) \ - blocklist.mod $(am__append_1422) $(am__append_1429) \ - $(am__append_1436) $(am__append_1443) $(am__append_1450) \ - $(am__append_1457) $(am__append_1464) $(am__append_1471) \ - $(am__append_1478) $(am__append_1485) $(am__append_1492) \ - $(am__append_1499) $(am__append_1506) $(am__append_1513) \ - $(am__append_1520) $(am__append_1527) $(am__append_1534) \ - $(am__append_1541) cat.mod cmp.mod configfile.mod \ - $(am__append_1548) $(am__append_1555) $(am__append_1562) \ - $(am__append_1569) $(am__append_1576) $(am__append_1583) \ - $(am__append_1590) $(am__append_1597) $(am__append_1604) \ - $(am__append_1611) date.mod $(am__append_1618) echo.mod \ - eval.mod $(am__append_1625) $(am__append_1632) \ - $(am__append_1639) $(am__append_1646) $(am__append_1653) \ - $(am__append_1660) $(am__append_1667) $(am__append_1674) \ - $(am__append_1681) $(am__append_1688) $(am__append_1695) \ - $(am__append_1702) $(am__append_1709) $(am__append_1716) \ - gptsync.mod $(am__append_1723) $(am__append_1730) \ - $(am__append_1737) $(am__append_1744) $(am__append_1751) \ - $(am__append_1758) $(am__append_1765) $(am__append_1772) \ - $(am__append_1779) $(am__append_1786) $(am__append_1793) \ - $(am__append_1800) $(am__append_1807) $(am__append_1814) \ - $(am__append_1821) $(am__append_1828) $(am__append_1835) \ - $(am__append_1842) $(am__append_1849) $(am__append_1856) \ - $(am__append_1863) $(am__append_1870) $(am__append_1877) \ - $(am__append_1884) $(am__append_1891) $(am__append_1898) \ - $(am__append_1905) $(am__append_1912) $(am__append_1919) \ - $(am__append_1926) $(am__append_1933) $(am__append_1940) \ - $(am__append_1947) $(am__append_1954) $(am__append_1961) \ - $(am__append_1968) $(am__append_1975) $(am__append_1982) \ - $(am__append_1989) $(am__append_1996) $(am__append_2003) \ - $(am__append_2010) $(am__append_2017) $(am__append_2024) \ - $(am__append_2031) $(am__append_2038) hashsum.mod pgp.mod \ - verifiers.mod $(am__append_2045) $(am__append_2052) \ - $(am__append_2059) $(am__append_2066) $(am__append_2073) \ - $(am__append_2080) $(am__append_2087) $(am__append_2094) \ - $(am__append_2101) $(am__append_2108) help.mod hexdump.mod \ - keystatus.mod $(am__append_2115) $(am__append_2122) \ - loadenv.mod ls.mod lsmmap.mod $(am__append_2129) \ - $(am__append_2136) $(am__append_2143) $(am__append_2150) \ - $(am__append_2157) $(am__append_2164) $(am__append_2171) \ - $(am__append_2178) memrw.mod minicmd.mod parttool.mod \ - password.mod password_pbkdf2.mod $(am__append_2185) \ - $(am__append_2192) $(am__append_2199) $(am__append_2206) \ - $(am__append_2213) $(am__append_2220) $(am__append_2227) \ - $(am__append_2234) $(am__append_2241) $(am__append_2248) \ - $(am__append_2255) $(am__append_2262) $(am__append_2269) \ - $(am__append_2276) $(am__append_2283) $(am__append_2290) \ - $(am__append_2297) $(am__append_2304) $(am__append_2311) \ - $(am__append_2318) $(am__append_2325) probe.mod read.mod \ - search.mod search_fs_file.mod search_fs_uuid.mod \ - search_label.mod $(am__append_2332) $(am__append_2339) \ - $(am__append_2346) $(am__append_2353) $(am__append_2360) \ - $(am__append_2367) $(am__append_2374) $(am__append_2381) \ - $(am__append_2388) $(am__append_2395) $(am__append_2402) \ - $(am__append_2409) $(am__append_2416) $(am__append_2423) \ - $(am__append_2430) $(am__append_2437) sleep.mod \ - $(am__append_2444) $(am__append_2451) terminal.mod test.mod \ - true.mod $(am__append_2458) $(am__append_2465) \ - $(am__append_2472) $(am__append_2479) $(am__append_2486) \ - $(am__append_2493) $(am__append_2500) $(am__append_2507) \ - $(am__append_2514) videoinfo.mod videotest.mod xnu_uuid.mod \ - dm_nv.mod loopback.mod cryptodisk.mod luks.mod geli.mod \ - lvm.mod ldm.mod mdraid09.mod mdraid09_be.mod mdraid1x.mod \ - diskfilter.mod raid5rec.mod raid6rec.mod scsi.mod memdisk.mod \ - $(am__append_2521) $(am__append_2528) $(am__append_2535) \ - $(am__append_2542) $(am__append_2549) $(am__append_2556) \ - $(am__append_2563) $(am__append_2570) $(am__append_2577) \ - $(am__append_2584) $(am__append_2591) $(am__append_2598) \ - $(am__append_2605) $(am__append_2612) $(am__append_2619) \ - $(am__append_2626) $(am__append_2633) $(am__append_2640) \ - $(am__append_2647) $(am__append_2654) $(am__append_2661) \ - $(am__append_2668) $(am__append_2675) $(am__append_2682) \ - $(am__append_2689) $(am__append_2696) $(am__append_2703) \ - $(am__append_2710) $(am__append_2717) $(am__append_2724) \ - $(am__append_2731) $(am__append_2738) $(am__append_2745) \ - $(am__append_2752) $(am__append_2759) $(am__append_2766) \ - $(am__append_2773) $(am__append_2780) $(am__append_2787) \ - $(am__append_2794) $(am__append_2801) $(am__append_2808) \ - $(am__append_2815) $(am__append_2822) $(am__append_2829) \ - $(am__append_2836) $(am__append_2843) $(am__append_2850) \ - $(am__append_2857) $(am__append_2864) $(am__append_2871) \ - $(am__append_2878) $(am__append_2885) $(am__append_2892) \ - $(am__append_2899) $(am__append_2906) $(am__append_2913) \ - $(am__append_2920) $(am__append_2927) $(am__append_2934) \ - $(am__append_2941) procfs.mod affs.mod afs.mod bfs.mod \ - zstd.mod btrfs.mod archelp.mod cbfs.mod cpio.mod cpio_be.mod \ - newc.mod odc.mod ext2.mod fat.mod exfat.mod f2fs.mod \ - fshelp.mod hfs.mod hfsplus.mod hfspluscomp.mod iso9660.mod \ - jfs.mod minix.mod minix2.mod minix3.mod minix_be.mod \ - minix2_be.mod minix3_be.mod nilfs2.mod ntfs.mod ntfscomp.mod \ - reiserfs.mod romfs.mod sfs.mod squash4.mod tar.mod udf.mod \ - ufs1.mod ufs1_be.mod ufs2.mod xfs.mod zfs.mod zfscrypt.mod \ - zfsinfo.mod macbless.mod $(am__append_2948) gettext.mod \ - gfxmenu.mod hello.mod gzio.mod offsetio.mod $(am__append_2955) \ - $(am__append_2962) $(am__append_2969) $(am__append_2976) \ - $(am__append_2983) $(am__append_2990) $(am__append_2997) \ - $(am__append_3004) $(am__append_3011) $(am__append_3018) \ - $(am__append_3025) $(am__append_3032) $(am__append_3039) \ - $(am__append_3046) $(am__append_3053) $(am__append_3060) \ - $(am__append_3067) $(am__append_3074) $(am__append_3081) \ - $(am__append_3088) elf.mod crypto.mod pbkdf2.mod \ - $(am__append_3095) $(am__append_3102) $(am__append_3109) \ - $(am__append_3116) $(am__append_3123) $(am__append_3130) \ - $(am__append_3137) $(am__append_3144) $(am__append_3151) \ - $(am__append_3158) $(am__append_3165) $(am__append_3172) \ - $(am__append_3179) $(am__append_3186) $(am__append_3193) \ - $(am__append_3200) $(am__append_3207) $(am__append_3214) \ - $(am__append_3221) $(am__append_3228) $(am__append_3235) \ - $(am__append_3242) $(am__append_3249) $(am__append_3256) \ - $(am__append_3263) $(am__append_3270) $(am__append_3277) \ - $(am__append_3284) $(am__append_3291) $(am__append_3298) \ - $(am__append_3305) $(am__append_3312) $(am__append_3319) \ - $(am__append_3326) $(am__append_3333) $(am__append_3340) \ - setjmp.mod $(am__append_3347) $(am__append_3354) \ - $(am__append_3361) $(am__append_3368) $(am__append_3375) \ - $(am__append_3382) $(am__append_3389) $(am__append_3396) \ - $(am__append_3403) $(am__append_3410) $(am__append_3417) \ - $(am__append_3424) $(am__append_3431) $(am__append_3438) \ - $(am__append_3445) $(am__append_3452) $(am__append_3459) \ - $(am__append_3466) $(am__append_3473) $(am__append_3480) \ - $(am__append_3487) $(am__append_3494) $(am__append_3501) \ - $(am__append_3508) $(am__append_3515) $(am__append_3522) \ - $(am__append_3529) $(am__append_3536) $(am__append_3543) \ - $(am__append_3550) $(am__append_3557) $(am__append_3564) \ - $(am__append_3571) $(am__append_3578) $(am__append_3585) \ - $(am__append_3592) $(am__append_3599) $(am__append_3606) \ - $(am__append_3613) $(am__append_3620) $(am__append_3627) \ - $(am__append_3634) $(am__append_3641) $(am__append_3648) \ - $(am__append_3655) $(am__append_3662) $(am__append_3669) \ - $(am__append_3676) $(am__append_3683) $(am__append_3690) \ - $(am__append_3697) $(am__append_3704) $(am__append_3711) \ - $(am__append_3718) $(am__append_3725) $(am__append_3732) \ - $(am__append_3739) $(am__append_3746) $(am__append_3753) \ - $(am__append_3760) $(am__append_3767) $(am__append_3774) \ - $(am__append_3781) $(am__append_3788) $(am__append_3795) \ - $(am__append_3802) $(am__append_3809) $(am__append_3816) \ - $(am__append_3823) $(am__append_3830) $(am__append_3837) \ - $(am__append_3844) $(am__append_3851) $(am__append_3858) \ - $(am__append_3865) $(am__append_3872) $(am__append_3879) \ - $(am__append_3886) macho.mod $(am__append_3893) \ - $(am__append_3900) $(am__append_3907) $(am__append_3914) \ - $(am__append_3921) $(am__append_3928) $(am__append_3935) \ - $(am__append_3942) $(am__append_3949) $(am__append_3956) \ - $(am__append_3963) $(am__append_3970) $(am__append_3977) \ - $(am__append_3984) $(am__append_3991) $(am__append_3998) \ - $(am__append_4005) $(am__append_4012) $(am__append_4019) \ - $(am__append_4026) $(am__append_4033) $(am__append_4040) \ - $(am__append_4047) $(am__append_4054) $(am__append_4061) \ - $(am__append_4068) $(am__append_4075) normal.mod \ - part_acorn.mod part_amiga.mod part_apple.mod part_gpt.mod \ - part_msdos.mod part_sun.mod part_plan.mod part_dvh.mod \ - part_bsd.mod part_sunpc.mod part_dfly.mod msdospart.mod \ - $(am__append_4082) $(am__append_4089) $(am__append_4096) \ - $(am__append_4103) $(am__append_4110) $(am__append_4117) \ - $(am__append_4124) $(am__append_4131) $(am__append_4138) \ - $(am__append_4145) $(am__append_4152) $(am__append_4159) \ - $(am__append_4166) $(am__append_4173) $(am__append_4180) \ - $(am__append_4187) $(am__append_4194) $(am__append_4201) \ - $(am__append_4208) $(am__append_4215) $(am__append_4222) \ - $(am__append_4229) $(am__append_4236) $(am__append_4243) \ - $(am__append_4250) $(am__append_4257) $(am__append_4264) \ - gfxterm_background.mod $(am__append_4271) $(am__append_4278) \ - $(am__append_4285) $(am__append_4292) $(am__append_4299) \ - $(am__append_4306) $(am__append_4313) $(am__append_4320) \ - $(am__append_4327) $(am__append_4334) $(am__append_4341) \ - $(am__append_4348) $(am__append_4355) $(am__append_4362) \ - $(am__append_4369) $(am__append_4376) $(am__append_4383) \ - $(am__append_4390) $(am__append_4397) $(am__append_4404) \ - $(am__append_4411) $(am__append_4418) $(am__append_4425) \ - $(am__append_4432) $(am__append_4439) $(am__append_4446) \ - $(am__append_4453) $(am__append_4460) $(am__append_4467) \ - $(am__append_4474) $(am__append_4481) $(am__append_4488) \ - $(am__append_4495) $(am__append_4502) $(am__append_4509) \ - $(am__append_4516) $(am__append_4523) $(am__append_4530) \ - $(am__append_4537) $(am__append_4544) $(am__append_4551) \ - $(am__append_4558) $(am__append_4565) $(am__append_4572) \ - $(am__append_4579) $(am__append_4586) $(am__append_4593) \ - $(am__append_4600) $(am__append_4607) $(am__append_4614) \ - $(am__append_4621) $(am__append_4628) $(am__append_4635) \ - $(am__append_4642) $(am__append_4649) functional_test.mod \ - exfctest.mod strtoull_test.mod setjmp_test.mod \ - signature_test.mod sleep_test.mod xnu_uuid_test.mod \ - pbkdf2_test.mod $(am__append_4656) $(am__append_4663) \ - $(am__append_4670) $(am__append_4677) $(am__append_4684) \ - $(am__append_4691) $(am__append_4698) $(am__append_4705) \ - $(am__append_4712) $(am__append_4719) $(am__append_4726) \ - $(am__append_4733) $(am__append_4740) $(am__append_4747) \ - $(am__append_4754) $(am__append_4761) $(am__append_4768) \ - $(am__append_4775) $(am__append_4782) $(am__append_4789) \ - $(am__append_4796) $(am__append_4803) $(am__append_4810) \ - $(am__append_4817) $(am__append_4824) div_test.mod \ - mul_test.mod shift_test.mod cmp_test.mod ctz_test.mod \ - bswap_test.mod videotest_checksum.mod gfxterm_menu.mod \ - cmdline_cat_test.mod bitmap.mod bitmap_scale.mod \ - $(am__append_4831) $(am__append_4838) $(am__append_4845) \ - $(am__append_4852) $(am__append_4859) $(am__append_4866) \ - $(am__append_4873) $(am__append_4880) $(am__append_4887) \ - jpeg.mod png.mod tga.mod $(am__append_4894) $(am__append_4901) \ - $(am__append_4908) $(am__append_4915) $(am__append_4922) \ - $(am__append_4929) $(am__append_4936) $(am__append_4943) \ - $(am__append_4950) $(am__append_4957) $(am__append_4964) \ - $(am__append_4971) $(am__append_4978) $(am__append_4985) \ - $(am__append_4992) $(am__append_4999) $(am__append_5006) \ - $(am__append_5013) $(am__append_5020) $(am__append_5027) \ - $(am__append_5034) $(am__append_5041) $(am__append_5048) \ - $(am__append_5055) $(am__append_5062) $(am__append_5069) \ - $(am__append_5076) $(am__append_5083) $(am__append_5090) \ - $(am__append_5097) $(am__append_5104) $(am__append_5111) \ - $(am__append_5118) $(am__append_5125) $(am__append_5132) \ - $(am__append_5139) $(am__append_5146) $(am__append_5153) \ - $(am__append_5160) $(am__append_5167) $(am__append_5174) \ - video_colors.mod $(am__append_5181) $(am__append_5188) \ - datehook.mod net.mod tftp.mod http.mod $(am__append_5195) \ - $(am__append_5202) $(am__append_5209) $(am__append_5216) \ - $(am__append_5223) $(am__append_5230) $(am__append_5237) \ - $(am__append_5244) $(am__append_5251) $(am__append_5258) \ - $(am__append_5265) $(am__append_5272) $(am__append_5279) \ - $(am__append_5286) $(am__append_5293) $(am__append_5300) \ - $(am__append_5307) $(am__append_5314) syslinuxcfg.mod \ - test_blockarg.mod xzio.mod lzopio.mod testload.mod \ - $(am__append_5321) $(am__append_5328) $(am__append_5335) \ - $(am__append_5342) $(am__append_5349) $(am__append_5356) \ - $(am__append_5363) $(am__append_5370) $(am__append_5377) \ - $(am__append_5384) $(am__append_5391) $(am__append_5398) \ - $(am__append_5405) $(am__append_5412) $(am__append_5419) \ - $(am__append_5426) $(am__append_5433) priority_queue.mod \ - time.mod $(am__append_5440) $(am__append_5447) adler32.mod \ - crc64.mod mpi.mod all_video.mod $(am__append_5454) \ - $(am__append_5461) $(am__append_5468) $(am__append_5475) \ - $(am__append_5482) $(am__append_5489) testspeed.mod \ - $(am__append_5496) tr.mod progress.mod file.mod \ - $(am__append_5503) $(am__append_5510) $(am__append_5517) \ - $(am__append_5524) $(am__append_5531) $(am__append_5538) \ - $(am__append_5545) $(am__append_5552) $(am__append_5559) \ - $(am__append_5566) $(am__append_5573) $(am__append_5580) \ - $(am__append_5587) $(am__append_5594) gcry_arcfour.mod \ - gcry_blowfish.mod gcry_camellia.mod gcry_cast5.mod \ - gcry_crc.mod gcry_des.mod gcry_dsa.mod gcry_idea.mod \ - gcry_md4.mod gcry_md5.mod gcry_rfc2268.mod gcry_rijndael.mod \ - gcry_rmd160.mod gcry_rsa.mod gcry_seed.mod gcry_serpent.mod \ - gcry_sha1.mod gcry_sha256.mod gcry_sha512.mod gcry_tiger.mod \ - gcry_twofish.mod gcry_whirlpool.mod -MODULE_FILES = disk.module$(EXEEXT) trig.module$(EXEEXT) \ - $(am__append_4) $(am__append_11) $(am__append_18) \ - $(am__append_25) $(am__append_32) $(am__append_39) \ - $(am__append_46) $(am__append_53) $(am__append_60) \ - $(am__append_67) $(am__append_74) $(am__append_81) \ - $(am__append_88) $(am__append_95) $(am__append_102) \ - $(am__append_109) $(am__append_116) $(am__append_123) \ - $(am__append_130) $(am__append_137) $(am__append_144) \ - $(am__append_151) $(am__append_158) $(am__append_165) \ - $(am__append_172) $(am__append_179) $(am__append_186) \ - $(am__append_193) $(am__append_200) $(am__append_207) \ - $(am__append_214) $(am__append_221) $(am__append_228) \ - $(am__append_235) $(am__append_242) $(am__append_249) \ - $(am__append_256) $(am__append_263) $(am__append_270) \ - $(am__append_277) $(am__append_284) $(am__append_291) \ - $(am__append_298) $(am__append_305) $(am__append_312) \ - $(am__append_319) $(am__append_326) $(am__append_333) \ - $(am__append_340) $(am__append_347) $(am__append_354) \ - $(am__append_361) $(am__append_368) $(am__append_375) \ - $(am__append_382) $(am__append_389) $(am__append_396) \ - $(am__append_403) $(am__append_410) $(am__append_417) \ - $(am__append_424) $(am__append_431) $(am__append_438) \ - $(am__append_445) $(am__append_452) $(am__append_459) \ - $(am__append_466) $(am__append_473) $(am__append_480) \ - $(am__append_487) $(am__append_494) $(am__append_501) \ - $(am__append_508) $(am__append_515) $(am__append_522) \ - $(am__append_529) $(am__append_536) $(am__append_543) \ - $(am__append_550) $(am__append_557) $(am__append_564) \ - $(am__append_571) $(am__append_578) $(am__append_585) \ - $(am__append_592) $(am__append_599) $(am__append_606) \ - $(am__append_613) $(am__append_620) $(am__append_627) \ - $(am__append_634) $(am__append_641) $(am__append_648) \ - $(am__append_655) $(am__append_662) $(am__append_669) \ - $(am__append_676) $(am__append_683) $(am__append_690) \ - $(am__append_697) $(am__append_704) $(am__append_711) \ - $(am__append_718) $(am__append_725) $(am__append_732) \ - $(am__append_739) $(am__append_746) $(am__append_753) \ - $(am__append_760) $(am__append_767) $(am__append_774) \ - $(am__append_781) $(am__append_788) $(am__append_795) \ - $(am__append_802) $(am__append_809) $(am__append_816) \ - $(am__append_823) $(am__append_830) $(am__append_837) \ - $(am__append_844) $(am__append_851) $(am__append_858) \ - $(am__append_865) $(am__append_872) $(am__append_879) \ - $(am__append_886) $(am__append_893) $(am__append_900) \ - $(am__append_907) $(am__append_914) $(am__append_921) \ - $(am__append_928) $(am__append_935) $(am__append_942) \ - $(am__append_949) $(am__append_956) $(am__append_963) \ - $(am__append_970) $(am__append_977) $(am__append_984) \ - $(am__append_991) $(am__append_998) $(am__append_1005) \ - $(am__append_1012) $(am__append_1019) $(am__append_1026) \ - regexp.module$(EXEEXT) $(am__append_1033) $(am__append_1040) \ - $(am__append_1047) $(am__append_1054) $(am__append_1061) \ - $(am__append_1068) $(am__append_1075) $(am__append_1082) \ - $(am__append_1089) $(am__append_1096) $(am__append_1103) \ - $(am__append_1110) $(am__append_1117) $(am__append_1124) \ - $(am__append_1131) $(am__append_1138) $(am__append_1145) \ - $(am__append_1152) $(am__append_1159) $(am__append_1166) \ - $(am__append_1173) $(am__append_1180) $(am__append_1187) \ - $(am__append_1194) $(am__append_1201) $(am__append_1208) \ - $(am__append_1215) $(am__append_1222) $(am__append_1229) \ - $(am__append_1236) $(am__append_1243) $(am__append_1250) \ - $(am__append_1257) $(am__append_1264) $(am__append_1271) \ - $(am__append_1278) $(am__append_1285) $(am__append_1292) \ - $(am__append_1299) $(am__append_1306) $(am__append_1313) \ - $(am__append_1320) $(am__append_1327) $(am__append_1334) \ - $(am__append_1341) $(am__append_1348) $(am__append_1355) \ - $(am__append_1362) $(am__append_1369) $(am__append_1376) \ - $(am__append_1383) $(am__append_1390) $(am__append_1397) \ - $(am__append_1404) $(am__append_1411) \ - blocklist.module$(EXEEXT) $(am__append_1418) \ - $(am__append_1425) $(am__append_1432) $(am__append_1439) \ - $(am__append_1446) $(am__append_1453) $(am__append_1460) \ - $(am__append_1467) $(am__append_1474) $(am__append_1481) \ - $(am__append_1488) $(am__append_1495) $(am__append_1502) \ - $(am__append_1509) $(am__append_1516) $(am__append_1523) \ - $(am__append_1530) $(am__append_1537) cat.module$(EXEEXT) \ - cmp.module$(EXEEXT) configfile.module$(EXEEXT) \ - $(am__append_1544) $(am__append_1551) $(am__append_1558) \ - $(am__append_1565) $(am__append_1572) $(am__append_1579) \ - $(am__append_1586) $(am__append_1593) $(am__append_1600) \ - $(am__append_1607) date.module$(EXEEXT) $(am__append_1614) \ - echo.module$(EXEEXT) eval.module$(EXEEXT) $(am__append_1621) \ - $(am__append_1628) $(am__append_1635) $(am__append_1642) \ - $(am__append_1649) $(am__append_1656) $(am__append_1663) \ - $(am__append_1670) $(am__append_1677) $(am__append_1684) \ - $(am__append_1691) $(am__append_1698) $(am__append_1705) \ - $(am__append_1712) gptsync.module$(EXEEXT) $(am__append_1719) \ - $(am__append_1726) $(am__append_1733) $(am__append_1740) \ - $(am__append_1747) $(am__append_1754) $(am__append_1761) \ - $(am__append_1768) $(am__append_1775) $(am__append_1782) \ - $(am__append_1789) $(am__append_1796) $(am__append_1803) \ - $(am__append_1810) $(am__append_1817) $(am__append_1824) \ - $(am__append_1831) $(am__append_1838) $(am__append_1845) \ - $(am__append_1852) $(am__append_1859) $(am__append_1866) \ - $(am__append_1873) $(am__append_1880) $(am__append_1887) \ - $(am__append_1894) $(am__append_1901) $(am__append_1908) \ - $(am__append_1915) $(am__append_1922) $(am__append_1929) \ - $(am__append_1936) $(am__append_1943) $(am__append_1950) \ - $(am__append_1957) $(am__append_1964) $(am__append_1971) \ - $(am__append_1978) $(am__append_1985) $(am__append_1992) \ - $(am__append_1999) $(am__append_2006) $(am__append_2013) \ - $(am__append_2020) $(am__append_2027) $(am__append_2034) \ - hashsum.module$(EXEEXT) pgp.module$(EXEEXT) \ - verifiers.module$(EXEEXT) $(am__append_2041) \ - $(am__append_2048) $(am__append_2055) $(am__append_2062) \ - $(am__append_2069) $(am__append_2076) $(am__append_2083) \ - $(am__append_2090) $(am__append_2097) $(am__append_2104) \ - help.module$(EXEEXT) hexdump.module$(EXEEXT) \ - keystatus.module$(EXEEXT) $(am__append_2111) \ - $(am__append_2118) loadenv.module$(EXEEXT) ls.module$(EXEEXT) \ - lsmmap.module$(EXEEXT) $(am__append_2125) $(am__append_2132) \ - $(am__append_2139) $(am__append_2146) $(am__append_2153) \ - $(am__append_2160) $(am__append_2167) $(am__append_2174) \ - memrw.module$(EXEEXT) minicmd.module$(EXEEXT) \ - parttool.module$(EXEEXT) password.module$(EXEEXT) \ - password_pbkdf2.module$(EXEEXT) $(am__append_2181) \ - $(am__append_2188) $(am__append_2195) $(am__append_2202) \ - $(am__append_2209) $(am__append_2216) $(am__append_2223) \ - $(am__append_2230) $(am__append_2237) $(am__append_2244) \ - $(am__append_2251) $(am__append_2258) $(am__append_2265) \ - $(am__append_2272) $(am__append_2279) $(am__append_2286) \ - $(am__append_2293) $(am__append_2300) $(am__append_2307) \ - $(am__append_2314) $(am__append_2321) probe.module$(EXEEXT) \ - read.module$(EXEEXT) search.module$(EXEEXT) \ - search_fs_file.module$(EXEEXT) search_fs_uuid.module$(EXEEXT) \ - search_label.module$(EXEEXT) $(am__append_2328) \ - $(am__append_2335) $(am__append_2342) $(am__append_2349) \ - $(am__append_2356) $(am__append_2363) $(am__append_2370) \ - $(am__append_2377) $(am__append_2384) $(am__append_2391) \ - $(am__append_2398) $(am__append_2405) $(am__append_2412) \ - $(am__append_2419) $(am__append_2426) $(am__append_2433) \ - sleep.module$(EXEEXT) $(am__append_2440) $(am__append_2447) \ - terminal.module$(EXEEXT) test.module$(EXEEXT) \ - true.module$(EXEEXT) $(am__append_2454) $(am__append_2461) \ - $(am__append_2468) $(am__append_2475) $(am__append_2482) \ - $(am__append_2489) $(am__append_2496) $(am__append_2503) \ - $(am__append_2510) videoinfo.module$(EXEEXT) \ - videotest.module$(EXEEXT) xnu_uuid.module$(EXEEXT) \ - dm_nv.module$(EXEEXT) loopback.module$(EXEEXT) \ - cryptodisk.module$(EXEEXT) luks.module$(EXEEXT) \ - geli.module$(EXEEXT) lvm.module$(EXEEXT) ldm.module$(EXEEXT) \ - mdraid09.module$(EXEEXT) mdraid09_be.module$(EXEEXT) \ - mdraid1x.module$(EXEEXT) diskfilter.module$(EXEEXT) \ - raid5rec.module$(EXEEXT) raid6rec.module$(EXEEXT) \ - scsi.module$(EXEEXT) memdisk.module$(EXEEXT) \ - $(am__append_2517) $(am__append_2524) $(am__append_2531) \ - $(am__append_2538) $(am__append_2545) $(am__append_2552) \ - $(am__append_2559) $(am__append_2566) $(am__append_2573) \ - $(am__append_2580) $(am__append_2587) $(am__append_2594) \ - $(am__append_2601) $(am__append_2608) $(am__append_2615) \ - $(am__append_2622) $(am__append_2629) $(am__append_2636) \ - $(am__append_2643) $(am__append_2650) $(am__append_2657) \ - $(am__append_2664) $(am__append_2671) $(am__append_2678) \ - $(am__append_2685) $(am__append_2692) $(am__append_2699) \ - $(am__append_2706) $(am__append_2713) $(am__append_2720) \ - $(am__append_2727) $(am__append_2734) $(am__append_2741) \ - $(am__append_2748) $(am__append_2755) $(am__append_2762) \ - $(am__append_2769) $(am__append_2776) $(am__append_2783) \ - $(am__append_2790) $(am__append_2797) $(am__append_2804) \ - $(am__append_2811) $(am__append_2818) $(am__append_2825) \ - $(am__append_2832) $(am__append_2839) $(am__append_2846) \ - $(am__append_2853) $(am__append_2860) $(am__append_2867) \ - $(am__append_2874) $(am__append_2881) $(am__append_2888) \ - $(am__append_2895) $(am__append_2902) $(am__append_2909) \ - $(am__append_2916) $(am__append_2923) $(am__append_2930) \ - $(am__append_2937) procfs.module$(EXEEXT) affs.module$(EXEEXT) \ - afs.module$(EXEEXT) bfs.module$(EXEEXT) zstd.module$(EXEEXT) \ - btrfs.module$(EXEEXT) archelp.module$(EXEEXT) \ - cbfs.module$(EXEEXT) cpio.module$(EXEEXT) \ - cpio_be.module$(EXEEXT) newc.module$(EXEEXT) \ - odc.module$(EXEEXT) ext2.module$(EXEEXT) fat.module$(EXEEXT) \ - exfat.module$(EXEEXT) f2fs.module$(EXEEXT) \ - fshelp.module$(EXEEXT) hfs.module$(EXEEXT) \ - hfsplus.module$(EXEEXT) hfspluscomp.module$(EXEEXT) \ - iso9660.module$(EXEEXT) jfs.module$(EXEEXT) \ - minix.module$(EXEEXT) minix2.module$(EXEEXT) \ - minix3.module$(EXEEXT) minix_be.module$(EXEEXT) \ - minix2_be.module$(EXEEXT) minix3_be.module$(EXEEXT) \ - nilfs2.module$(EXEEXT) ntfs.module$(EXEEXT) \ - ntfscomp.module$(EXEEXT) reiserfs.module$(EXEEXT) \ - romfs.module$(EXEEXT) sfs.module$(EXEEXT) \ - squash4.module$(EXEEXT) tar.module$(EXEEXT) \ - udf.module$(EXEEXT) ufs1.module$(EXEEXT) \ - ufs1_be.module$(EXEEXT) ufs2.module$(EXEEXT) \ - xfs.module$(EXEEXT) zfs.module$(EXEEXT) \ - zfscrypt.module$(EXEEXT) zfsinfo.module$(EXEEXT) \ - macbless.module$(EXEEXT) $(am__append_2944) \ - gettext.module$(EXEEXT) gfxmenu.module$(EXEEXT) \ - hello.module$(EXEEXT) gzio.module$(EXEEXT) \ - offsetio.module$(EXEEXT) $(am__append_2951) $(am__append_2958) \ - $(am__append_2965) $(am__append_2972) $(am__append_2979) \ - $(am__append_2986) $(am__append_2993) $(am__append_3000) \ - $(am__append_3007) $(am__append_3014) $(am__append_3021) \ - $(am__append_3028) $(am__append_3035) $(am__append_3042) \ - $(am__append_3049) $(am__append_3056) $(am__append_3063) \ - $(am__append_3070) $(am__append_3077) $(am__append_3084) \ - elf.module$(EXEEXT) crypto.module$(EXEEXT) \ - pbkdf2.module$(EXEEXT) $(am__append_3091) $(am__append_3098) \ - $(am__append_3105) $(am__append_3112) $(am__append_3119) \ - $(am__append_3126) $(am__append_3133) $(am__append_3140) \ - $(am__append_3147) $(am__append_3154) $(am__append_3161) \ - $(am__append_3168) $(am__append_3175) $(am__append_3182) \ - $(am__append_3189) $(am__append_3196) $(am__append_3203) \ - $(am__append_3210) $(am__append_3217) $(am__append_3224) \ - $(am__append_3231) $(am__append_3238) $(am__append_3245) \ - $(am__append_3252) $(am__append_3259) $(am__append_3266) \ - $(am__append_3273) $(am__append_3280) $(am__append_3287) \ - $(am__append_3294) $(am__append_3301) $(am__append_3308) \ - $(am__append_3315) $(am__append_3322) $(am__append_3329) \ - $(am__append_3336) setjmp.module$(EXEEXT) $(am__append_3343) \ - $(am__append_3350) $(am__append_3357) $(am__append_3364) \ - $(am__append_3371) $(am__append_3378) $(am__append_3385) \ - $(am__append_3392) $(am__append_3399) $(am__append_3406) \ - $(am__append_3413) $(am__append_3420) $(am__append_3427) \ - $(am__append_3434) $(am__append_3441) $(am__append_3448) \ - $(am__append_3455) $(am__append_3462) $(am__append_3469) \ - $(am__append_3476) $(am__append_3483) $(am__append_3490) \ - $(am__append_3497) $(am__append_3504) $(am__append_3511) \ - $(am__append_3518) $(am__append_3525) $(am__append_3532) \ - $(am__append_3539) $(am__append_3546) $(am__append_3553) \ - $(am__append_3560) $(am__append_3567) $(am__append_3574) \ - $(am__append_3581) $(am__append_3588) $(am__append_3595) \ - $(am__append_3602) $(am__append_3609) $(am__append_3616) \ - $(am__append_3623) $(am__append_3630) $(am__append_3637) \ - $(am__append_3644) $(am__append_3651) $(am__append_3658) \ - $(am__append_3665) $(am__append_3672) $(am__append_3679) \ - $(am__append_3686) $(am__append_3693) $(am__append_3700) \ - $(am__append_3707) $(am__append_3714) $(am__append_3721) \ - $(am__append_3728) $(am__append_3735) $(am__append_3742) \ - $(am__append_3749) $(am__append_3756) $(am__append_3763) \ - $(am__append_3770) $(am__append_3777) $(am__append_3784) \ - $(am__append_3791) $(am__append_3798) $(am__append_3805) \ - $(am__append_3812) $(am__append_3819) $(am__append_3826) \ - $(am__append_3833) $(am__append_3840) $(am__append_3847) \ - $(am__append_3854) $(am__append_3861) $(am__append_3868) \ - $(am__append_3875) $(am__append_3882) macho.module$(EXEEXT) \ - $(am__append_3889) $(am__append_3896) $(am__append_3903) \ - $(am__append_3910) $(am__append_3917) $(am__append_3924) \ - $(am__append_3931) $(am__append_3938) $(am__append_3945) \ - $(am__append_3952) $(am__append_3959) $(am__append_3966) \ - $(am__append_3973) $(am__append_3980) $(am__append_3987) \ - $(am__append_3994) $(am__append_4001) $(am__append_4008) \ - $(am__append_4015) $(am__append_4022) $(am__append_4029) \ - $(am__append_4036) $(am__append_4043) $(am__append_4050) \ - $(am__append_4057) $(am__append_4064) $(am__append_4071) \ - normal.module$(EXEEXT) part_acorn.module$(EXEEXT) \ - part_amiga.module$(EXEEXT) part_apple.module$(EXEEXT) \ - part_gpt.module$(EXEEXT) part_msdos.module$(EXEEXT) \ - part_sun.module$(EXEEXT) part_plan.module$(EXEEXT) \ - part_dvh.module$(EXEEXT) part_bsd.module$(EXEEXT) \ - part_sunpc.module$(EXEEXT) part_dfly.module$(EXEEXT) \ - msdospart.module$(EXEEXT) $(am__append_4078) \ - $(am__append_4085) $(am__append_4092) $(am__append_4099) \ - $(am__append_4106) $(am__append_4113) $(am__append_4120) \ - $(am__append_4127) $(am__append_4134) $(am__append_4141) \ - $(am__append_4148) $(am__append_4155) $(am__append_4162) \ - $(am__append_4169) $(am__append_4176) $(am__append_4183) \ - $(am__append_4190) $(am__append_4197) $(am__append_4204) \ - $(am__append_4211) $(am__append_4218) $(am__append_4225) \ - $(am__append_4232) $(am__append_4239) $(am__append_4246) \ - $(am__append_4253) $(am__append_4260) \ - gfxterm_background.module$(EXEEXT) $(am__append_4267) \ - $(am__append_4274) $(am__append_4281) $(am__append_4288) \ - $(am__append_4295) $(am__append_4302) $(am__append_4309) \ - $(am__append_4316) $(am__append_4323) $(am__append_4330) \ - $(am__append_4337) $(am__append_4344) $(am__append_4351) \ - $(am__append_4358) $(am__append_4365) $(am__append_4372) \ - $(am__append_4379) $(am__append_4386) $(am__append_4393) \ - $(am__append_4400) $(am__append_4407) $(am__append_4414) \ - $(am__append_4421) $(am__append_4428) $(am__append_4435) \ - $(am__append_4442) $(am__append_4449) $(am__append_4456) \ - $(am__append_4463) $(am__append_4470) $(am__append_4477) \ - $(am__append_4484) $(am__append_4491) $(am__append_4498) \ - $(am__append_4505) $(am__append_4512) $(am__append_4519) \ - $(am__append_4526) $(am__append_4533) $(am__append_4540) \ - $(am__append_4547) $(am__append_4554) $(am__append_4561) \ - $(am__append_4568) $(am__append_4575) $(am__append_4582) \ - $(am__append_4589) $(am__append_4596) $(am__append_4603) \ - $(am__append_4610) $(am__append_4617) $(am__append_4624) \ - $(am__append_4631) $(am__append_4638) $(am__append_4645) \ - functional_test.module$(EXEEXT) exfctest.module$(EXEEXT) \ - strtoull_test.module$(EXEEXT) setjmp_test.module$(EXEEXT) \ - signature_test.module$(EXEEXT) sleep_test.module$(EXEEXT) \ - xnu_uuid_test.module$(EXEEXT) pbkdf2_test.module$(EXEEXT) \ - $(am__append_4652) $(am__append_4659) $(am__append_4666) \ - $(am__append_4673) $(am__append_4680) $(am__append_4687) \ - $(am__append_4694) $(am__append_4701) $(am__append_4708) \ - $(am__append_4715) $(am__append_4722) $(am__append_4729) \ - $(am__append_4736) $(am__append_4743) $(am__append_4750) \ - $(am__append_4757) $(am__append_4764) $(am__append_4771) \ - $(am__append_4778) $(am__append_4785) $(am__append_4792) \ - $(am__append_4799) $(am__append_4806) $(am__append_4813) \ - $(am__append_4820) div_test.module$(EXEEXT) \ - mul_test.module$(EXEEXT) shift_test.module$(EXEEXT) \ - cmp_test.module$(EXEEXT) ctz_test.module$(EXEEXT) \ - bswap_test.module$(EXEEXT) videotest_checksum.module$(EXEEXT) \ - gfxterm_menu.module$(EXEEXT) cmdline_cat_test.module$(EXEEXT) \ - bitmap.module$(EXEEXT) bitmap_scale.module$(EXEEXT) \ - $(am__append_4827) $(am__append_4834) $(am__append_4841) \ - $(am__append_4848) $(am__append_4855) $(am__append_4862) \ - $(am__append_4869) $(am__append_4876) $(am__append_4883) \ - jpeg.module$(EXEEXT) png.module$(EXEEXT) tga.module$(EXEEXT) \ - $(am__append_4890) $(am__append_4897) $(am__append_4904) \ - $(am__append_4911) $(am__append_4918) $(am__append_4925) \ - $(am__append_4932) $(am__append_4939) $(am__append_4946) \ - $(am__append_4953) $(am__append_4960) $(am__append_4967) \ - $(am__append_4974) $(am__append_4981) $(am__append_4988) \ - $(am__append_4995) $(am__append_5002) $(am__append_5009) \ - $(am__append_5016) $(am__append_5023) $(am__append_5030) \ - $(am__append_5037) $(am__append_5044) $(am__append_5051) \ - $(am__append_5058) $(am__append_5065) $(am__append_5072) \ - $(am__append_5079) $(am__append_5086) $(am__append_5093) \ - $(am__append_5100) $(am__append_5107) $(am__append_5114) \ - $(am__append_5121) $(am__append_5128) $(am__append_5135) \ - $(am__append_5142) $(am__append_5149) $(am__append_5156) \ - $(am__append_5163) $(am__append_5170) \ - video_colors.module$(EXEEXT) $(am__append_5177) \ - $(am__append_5184) datehook.module$(EXEEXT) \ - net.module$(EXEEXT) tftp.module$(EXEEXT) http.module$(EXEEXT) \ - $(am__append_5191) $(am__append_5198) $(am__append_5205) \ - $(am__append_5212) $(am__append_5219) $(am__append_5226) \ - $(am__append_5233) $(am__append_5240) $(am__append_5247) \ - $(am__append_5254) $(am__append_5261) $(am__append_5268) \ - $(am__append_5275) $(am__append_5282) $(am__append_5289) \ - $(am__append_5296) $(am__append_5303) $(am__append_5310) \ - syslinuxcfg.module$(EXEEXT) test_blockarg.module$(EXEEXT) \ - xzio.module$(EXEEXT) lzopio.module$(EXEEXT) \ - testload.module$(EXEEXT) $(am__append_5317) $(am__append_5324) \ - $(am__append_5331) $(am__append_5338) $(am__append_5345) \ - $(am__append_5352) $(am__append_5359) $(am__append_5366) \ - $(am__append_5373) $(am__append_5380) $(am__append_5387) \ - $(am__append_5394) $(am__append_5401) $(am__append_5408) \ - $(am__append_5415) $(am__append_5422) $(am__append_5429) \ - priority_queue.module$(EXEEXT) time.module$(EXEEXT) \ - $(am__append_5436) $(am__append_5443) adler32.module$(EXEEXT) \ - crc64.module$(EXEEXT) mpi.module$(EXEEXT) \ - all_video.module$(EXEEXT) $(am__append_5450) \ - $(am__append_5457) $(am__append_5464) $(am__append_5471) \ - $(am__append_5478) $(am__append_5485) \ - testspeed.module$(EXEEXT) $(am__append_5492) \ - tr.module$(EXEEXT) progress.module$(EXEEXT) \ - file.module$(EXEEXT) $(am__append_5499) $(am__append_5506) \ - $(am__append_5513) $(am__append_5520) $(am__append_5527) \ - $(am__append_5534) $(am__append_5541) $(am__append_5548) \ - $(am__append_5555) $(am__append_5562) $(am__append_5569) \ - $(am__append_5576) $(am__append_5583) $(am__append_5590) \ - gcry_arcfour.module$(EXEEXT) gcry_blowfish.module$(EXEEXT) \ - gcry_camellia.module$(EXEEXT) gcry_cast5.module$(EXEEXT) \ - gcry_crc.module$(EXEEXT) gcry_des.module$(EXEEXT) \ - gcry_dsa.module$(EXEEXT) gcry_idea.module$(EXEEXT) \ - gcry_md4.module$(EXEEXT) gcry_md5.module$(EXEEXT) \ - gcry_rfc2268.module$(EXEEXT) gcry_rijndael.module$(EXEEXT) \ - gcry_rmd160.module$(EXEEXT) gcry_rsa.module$(EXEEXT) \ - gcry_seed.module$(EXEEXT) gcry_serpent.module$(EXEEXT) \ - gcry_sha1.module$(EXEEXT) gcry_sha256.module$(EXEEXT) \ - gcry_sha512.module$(EXEEXT) gcry_tiger.module$(EXEEXT) \ - gcry_twofish.module$(EXEEXT) gcry_whirlpool.module$(EXEEXT) -MARKER_FILES = disk.marker trig.marker $(am__append_9) \ - $(am__append_16) $(am__append_23) $(am__append_30) \ - $(am__append_37) $(am__append_44) $(am__append_51) \ - $(am__append_58) $(am__append_65) $(am__append_72) \ - $(am__append_79) $(am__append_86) $(am__append_93) \ - $(am__append_100) $(am__append_107) $(am__append_114) \ - $(am__append_121) $(am__append_128) $(am__append_135) \ - $(am__append_142) $(am__append_149) $(am__append_156) \ - $(am__append_163) $(am__append_170) $(am__append_177) \ - $(am__append_184) $(am__append_191) $(am__append_198) \ - $(am__append_205) $(am__append_212) $(am__append_219) \ - $(am__append_226) $(am__append_233) $(am__append_240) \ - $(am__append_247) $(am__append_254) $(am__append_261) \ - $(am__append_268) $(am__append_275) $(am__append_282) \ - $(am__append_289) $(am__append_296) $(am__append_303) \ - $(am__append_310) $(am__append_317) $(am__append_324) \ - $(am__append_331) $(am__append_338) $(am__append_345) \ - $(am__append_352) $(am__append_359) $(am__append_366) \ - $(am__append_373) $(am__append_380) $(am__append_387) \ - $(am__append_394) $(am__append_401) $(am__append_408) \ - $(am__append_415) $(am__append_422) $(am__append_429) \ - $(am__append_436) $(am__append_443) $(am__append_450) \ - $(am__append_457) $(am__append_464) $(am__append_471) \ - $(am__append_478) $(am__append_485) $(am__append_492) \ - $(am__append_499) $(am__append_506) $(am__append_513) \ - $(am__append_520) $(am__append_527) $(am__append_534) \ - $(am__append_541) $(am__append_548) $(am__append_555) \ - $(am__append_562) $(am__append_569) $(am__append_576) \ - $(am__append_583) $(am__append_590) $(am__append_597) \ - $(am__append_604) $(am__append_611) $(am__append_618) \ - $(am__append_625) $(am__append_632) $(am__append_639) \ - $(am__append_646) $(am__append_653) $(am__append_660) \ - $(am__append_667) $(am__append_674) $(am__append_681) \ - $(am__append_688) $(am__append_695) $(am__append_702) \ - $(am__append_709) $(am__append_716) $(am__append_723) \ - $(am__append_730) $(am__append_737) $(am__append_744) \ - $(am__append_751) $(am__append_758) $(am__append_765) \ - $(am__append_772) $(am__append_779) $(am__append_786) \ - $(am__append_793) $(am__append_800) $(am__append_807) \ - $(am__append_814) $(am__append_821) $(am__append_828) \ - $(am__append_835) $(am__append_842) $(am__append_849) \ - $(am__append_856) $(am__append_863) $(am__append_870) \ - $(am__append_877) $(am__append_884) $(am__append_891) \ - $(am__append_898) $(am__append_905) $(am__append_912) \ - $(am__append_919) $(am__append_926) $(am__append_933) \ - $(am__append_940) $(am__append_947) $(am__append_954) \ - $(am__append_961) $(am__append_968) $(am__append_975) \ - $(am__append_982) $(am__append_989) $(am__append_996) \ - $(am__append_1003) $(am__append_1010) $(am__append_1017) \ - $(am__append_1024) $(am__append_1031) regexp.marker \ - $(am__append_1038) $(am__append_1045) $(am__append_1052) \ - $(am__append_1059) $(am__append_1066) $(am__append_1073) \ - $(am__append_1080) $(am__append_1087) $(am__append_1094) \ - $(am__append_1101) $(am__append_1108) $(am__append_1115) \ - $(am__append_1122) $(am__append_1129) $(am__append_1136) \ - $(am__append_1143) $(am__append_1150) $(am__append_1157) \ - $(am__append_1164) $(am__append_1171) $(am__append_1178) \ - $(am__append_1185) $(am__append_1192) $(am__append_1199) \ - $(am__append_1206) $(am__append_1213) $(am__append_1220) \ - $(am__append_1227) $(am__append_1234) $(am__append_1241) \ - $(am__append_1248) $(am__append_1255) $(am__append_1262) \ - $(am__append_1269) $(am__append_1276) $(am__append_1283) \ - $(am__append_1290) $(am__append_1297) $(am__append_1304) \ - $(am__append_1311) $(am__append_1318) $(am__append_1325) \ - $(am__append_1332) $(am__append_1339) $(am__append_1346) \ - $(am__append_1353) $(am__append_1360) $(am__append_1367) \ - $(am__append_1374) $(am__append_1381) $(am__append_1388) \ - $(am__append_1395) $(am__append_1402) $(am__append_1409) \ - $(am__append_1416) blocklist.marker $(am__append_1423) \ - $(am__append_1430) $(am__append_1437) $(am__append_1444) \ - $(am__append_1451) $(am__append_1458) $(am__append_1465) \ - $(am__append_1472) $(am__append_1479) $(am__append_1486) \ - $(am__append_1493) $(am__append_1500) $(am__append_1507) \ - $(am__append_1514) $(am__append_1521) $(am__append_1528) \ - $(am__append_1535) $(am__append_1542) cat.marker cmp.marker \ - configfile.marker $(am__append_1549) $(am__append_1556) \ - $(am__append_1563) $(am__append_1570) $(am__append_1577) \ - $(am__append_1584) $(am__append_1591) $(am__append_1598) \ - $(am__append_1605) $(am__append_1612) date.marker \ - $(am__append_1619) echo.marker eval.marker $(am__append_1626) \ - $(am__append_1633) $(am__append_1640) $(am__append_1647) \ - $(am__append_1654) $(am__append_1661) $(am__append_1668) \ - $(am__append_1675) $(am__append_1682) $(am__append_1689) \ - $(am__append_1696) $(am__append_1703) $(am__append_1710) \ - $(am__append_1717) gptsync.marker $(am__append_1724) \ - $(am__append_1731) $(am__append_1738) $(am__append_1745) \ - $(am__append_1752) $(am__append_1759) $(am__append_1766) \ - $(am__append_1773) $(am__append_1780) $(am__append_1787) \ - $(am__append_1794) $(am__append_1801) $(am__append_1808) \ - $(am__append_1815) $(am__append_1822) $(am__append_1829) \ - $(am__append_1836) $(am__append_1843) $(am__append_1850) \ - $(am__append_1857) $(am__append_1864) $(am__append_1871) \ - $(am__append_1878) $(am__append_1885) $(am__append_1892) \ - $(am__append_1899) $(am__append_1906) $(am__append_1913) \ - $(am__append_1920) $(am__append_1927) $(am__append_1934) \ - $(am__append_1941) $(am__append_1948) $(am__append_1955) \ - $(am__append_1962) $(am__append_1969) $(am__append_1976) \ - $(am__append_1983) $(am__append_1990) $(am__append_1997) \ - $(am__append_2004) $(am__append_2011) $(am__append_2018) \ - $(am__append_2025) $(am__append_2032) $(am__append_2039) \ - hashsum.marker pgp.marker verifiers.marker $(am__append_2046) \ - $(am__append_2053) $(am__append_2060) $(am__append_2067) \ - $(am__append_2074) $(am__append_2081) $(am__append_2088) \ - $(am__append_2095) $(am__append_2102) $(am__append_2109) \ - help.marker hexdump.marker keystatus.marker $(am__append_2116) \ - $(am__append_2123) loadenv.marker ls.marker lsmmap.marker \ - $(am__append_2130) $(am__append_2137) $(am__append_2144) \ - $(am__append_2151) $(am__append_2158) $(am__append_2165) \ - $(am__append_2172) $(am__append_2179) memrw.marker \ - minicmd.marker parttool.marker password.marker \ - password_pbkdf2.marker $(am__append_2186) $(am__append_2193) \ - $(am__append_2200) $(am__append_2207) $(am__append_2214) \ - $(am__append_2221) $(am__append_2228) $(am__append_2235) \ - $(am__append_2242) $(am__append_2249) $(am__append_2256) \ - $(am__append_2263) $(am__append_2270) $(am__append_2277) \ - $(am__append_2284) $(am__append_2291) $(am__append_2298) \ - $(am__append_2305) $(am__append_2312) $(am__append_2319) \ - $(am__append_2326) probe.marker read.marker search.marker \ - search_fs_file.marker search_fs_uuid.marker \ - search_label.marker $(am__append_2333) $(am__append_2340) \ - $(am__append_2347) $(am__append_2354) $(am__append_2361) \ - $(am__append_2368) $(am__append_2375) $(am__append_2382) \ - $(am__append_2389) $(am__append_2396) $(am__append_2403) \ - $(am__append_2410) $(am__append_2417) $(am__append_2424) \ - $(am__append_2431) $(am__append_2438) sleep.marker \ - $(am__append_2445) $(am__append_2452) terminal.marker \ - test.marker true.marker $(am__append_2459) $(am__append_2466) \ - $(am__append_2473) $(am__append_2480) $(am__append_2487) \ - $(am__append_2494) $(am__append_2501) $(am__append_2508) \ - $(am__append_2515) videoinfo.marker videotest.marker \ - xnu_uuid.marker dm_nv.marker loopback.marker cryptodisk.marker \ - luks.marker geli.marker lvm.marker ldm.marker mdraid09.marker \ - mdraid09_be.marker mdraid1x.marker diskfilter.marker \ - raid5rec.marker raid6rec.marker scsi.marker memdisk.marker \ - $(am__append_2522) $(am__append_2529) $(am__append_2536) \ - $(am__append_2543) $(am__append_2550) $(am__append_2557) \ - $(am__append_2564) $(am__append_2571) $(am__append_2578) \ - $(am__append_2585) $(am__append_2592) $(am__append_2599) \ - $(am__append_2606) $(am__append_2613) $(am__append_2620) \ - $(am__append_2627) $(am__append_2634) $(am__append_2641) \ - $(am__append_2648) $(am__append_2655) $(am__append_2662) \ - $(am__append_2669) $(am__append_2676) $(am__append_2683) \ - $(am__append_2690) $(am__append_2697) $(am__append_2704) \ - $(am__append_2711) $(am__append_2718) $(am__append_2725) \ - $(am__append_2732) $(am__append_2739) $(am__append_2746) \ - $(am__append_2753) $(am__append_2760) $(am__append_2767) \ - $(am__append_2774) $(am__append_2781) $(am__append_2788) \ - $(am__append_2795) $(am__append_2802) $(am__append_2809) \ - $(am__append_2816) $(am__append_2823) $(am__append_2830) \ - $(am__append_2837) $(am__append_2844) $(am__append_2851) \ - $(am__append_2858) $(am__append_2865) $(am__append_2872) \ - $(am__append_2879) $(am__append_2886) $(am__append_2893) \ - $(am__append_2900) $(am__append_2907) $(am__append_2914) \ - $(am__append_2921) $(am__append_2928) $(am__append_2935) \ - $(am__append_2942) procfs.marker affs.marker afs.marker \ - bfs.marker zstd.marker btrfs.marker archelp.marker cbfs.marker \ - cpio.marker cpio_be.marker newc.marker odc.marker ext2.marker \ - fat.marker exfat.marker f2fs.marker fshelp.marker hfs.marker \ - hfsplus.marker hfspluscomp.marker iso9660.marker jfs.marker \ - minix.marker minix2.marker minix3.marker minix_be.marker \ - minix2_be.marker minix3_be.marker nilfs2.marker ntfs.marker \ - ntfscomp.marker reiserfs.marker romfs.marker sfs.marker \ - squash4.marker tar.marker udf.marker ufs1.marker \ - ufs1_be.marker ufs2.marker xfs.marker zfs.marker \ - zfscrypt.marker zfsinfo.marker macbless.marker \ - $(am__append_2949) gettext.marker gfxmenu.marker hello.marker \ - gzio.marker offsetio.marker $(am__append_2956) \ - $(am__append_2963) $(am__append_2970) $(am__append_2977) \ - $(am__append_2984) $(am__append_2991) $(am__append_2998) \ - $(am__append_3005) $(am__append_3012) $(am__append_3019) \ - $(am__append_3026) $(am__append_3033) $(am__append_3040) \ - $(am__append_3047) $(am__append_3054) $(am__append_3061) \ - $(am__append_3068) $(am__append_3075) $(am__append_3082) \ - $(am__append_3089) elf.marker crypto.marker pbkdf2.marker \ - $(am__append_3096) $(am__append_3103) $(am__append_3110) \ - $(am__append_3117) $(am__append_3124) $(am__append_3131) \ - $(am__append_3138) $(am__append_3145) $(am__append_3152) \ - $(am__append_3159) $(am__append_3166) $(am__append_3173) \ - $(am__append_3180) $(am__append_3187) $(am__append_3194) \ - $(am__append_3201) $(am__append_3208) $(am__append_3215) \ - $(am__append_3222) $(am__append_3229) $(am__append_3236) \ - $(am__append_3243) $(am__append_3250) $(am__append_3257) \ - $(am__append_3264) $(am__append_3271) $(am__append_3278) \ - $(am__append_3285) $(am__append_3292) $(am__append_3299) \ - $(am__append_3306) $(am__append_3313) $(am__append_3320) \ - $(am__append_3327) $(am__append_3334) $(am__append_3341) \ - setjmp.marker $(am__append_3348) $(am__append_3355) \ - $(am__append_3362) $(am__append_3369) $(am__append_3376) \ - $(am__append_3383) $(am__append_3390) $(am__append_3397) \ - $(am__append_3404) $(am__append_3411) $(am__append_3418) \ - $(am__append_3425) $(am__append_3432) $(am__append_3439) \ - $(am__append_3446) $(am__append_3453) $(am__append_3460) \ - $(am__append_3467) $(am__append_3474) $(am__append_3481) \ - $(am__append_3488) $(am__append_3495) $(am__append_3502) \ - $(am__append_3509) $(am__append_3516) $(am__append_3523) \ - $(am__append_3530) $(am__append_3537) $(am__append_3544) \ - $(am__append_3551) $(am__append_3558) $(am__append_3565) \ - $(am__append_3572) $(am__append_3579) $(am__append_3586) \ - $(am__append_3593) $(am__append_3600) $(am__append_3607) \ - $(am__append_3614) $(am__append_3621) $(am__append_3628) \ - $(am__append_3635) $(am__append_3642) $(am__append_3649) \ - $(am__append_3656) $(am__append_3663) $(am__append_3670) \ - $(am__append_3677) $(am__append_3684) $(am__append_3691) \ - $(am__append_3698) $(am__append_3705) $(am__append_3712) \ - $(am__append_3719) $(am__append_3726) $(am__append_3733) \ - $(am__append_3740) $(am__append_3747) $(am__append_3754) \ - $(am__append_3761) $(am__append_3768) $(am__append_3775) \ - $(am__append_3782) $(am__append_3789) $(am__append_3796) \ - $(am__append_3803) $(am__append_3810) $(am__append_3817) \ - $(am__append_3824) $(am__append_3831) $(am__append_3838) \ - $(am__append_3845) $(am__append_3852) $(am__append_3859) \ - $(am__append_3866) $(am__append_3873) $(am__append_3880) \ - $(am__append_3887) macho.marker $(am__append_3894) \ - $(am__append_3901) $(am__append_3908) $(am__append_3915) \ - $(am__append_3922) $(am__append_3929) $(am__append_3936) \ - $(am__append_3943) $(am__append_3950) $(am__append_3957) \ - $(am__append_3964) $(am__append_3971) $(am__append_3978) \ - $(am__append_3985) $(am__append_3992) $(am__append_3999) \ - $(am__append_4006) $(am__append_4013) $(am__append_4020) \ - $(am__append_4027) $(am__append_4034) $(am__append_4041) \ - $(am__append_4048) $(am__append_4055) $(am__append_4062) \ - $(am__append_4069) $(am__append_4076) normal.marker \ - part_acorn.marker part_amiga.marker part_apple.marker \ - part_gpt.marker part_msdos.marker part_sun.marker \ - part_plan.marker part_dvh.marker part_bsd.marker \ - part_sunpc.marker part_dfly.marker msdospart.marker \ - $(am__append_4083) $(am__append_4090) $(am__append_4097) \ - $(am__append_4104) $(am__append_4111) $(am__append_4118) \ - $(am__append_4125) $(am__append_4132) $(am__append_4139) \ - $(am__append_4146) $(am__append_4153) $(am__append_4160) \ - $(am__append_4167) $(am__append_4174) $(am__append_4181) \ - $(am__append_4188) $(am__append_4195) $(am__append_4202) \ - $(am__append_4209) $(am__append_4216) $(am__append_4223) \ - $(am__append_4230) $(am__append_4237) $(am__append_4244) \ - $(am__append_4251) $(am__append_4258) $(am__append_4265) \ - gfxterm_background.marker $(am__append_4272) \ - $(am__append_4279) $(am__append_4286) $(am__append_4293) \ - $(am__append_4300) $(am__append_4307) $(am__append_4314) \ - $(am__append_4321) $(am__append_4328) $(am__append_4335) \ - $(am__append_4342) $(am__append_4349) $(am__append_4356) \ - $(am__append_4363) $(am__append_4370) $(am__append_4377) \ - $(am__append_4384) $(am__append_4391) $(am__append_4398) \ - $(am__append_4405) $(am__append_4412) $(am__append_4419) \ - $(am__append_4426) $(am__append_4433) $(am__append_4440) \ - $(am__append_4447) $(am__append_4454) $(am__append_4461) \ - $(am__append_4468) $(am__append_4475) $(am__append_4482) \ - $(am__append_4489) $(am__append_4496) $(am__append_4503) \ - $(am__append_4510) $(am__append_4517) $(am__append_4524) \ - $(am__append_4531) $(am__append_4538) $(am__append_4545) \ - $(am__append_4552) $(am__append_4559) $(am__append_4566) \ - $(am__append_4573) $(am__append_4580) $(am__append_4587) \ - $(am__append_4594) $(am__append_4601) $(am__append_4608) \ - $(am__append_4615) $(am__append_4622) $(am__append_4629) \ - $(am__append_4636) $(am__append_4643) $(am__append_4650) \ - functional_test.marker exfctest.marker strtoull_test.marker \ - setjmp_test.marker signature_test.marker sleep_test.marker \ - xnu_uuid_test.marker pbkdf2_test.marker $(am__append_4657) \ - $(am__append_4664) $(am__append_4671) $(am__append_4678) \ - $(am__append_4685) $(am__append_4692) $(am__append_4699) \ - $(am__append_4706) $(am__append_4713) $(am__append_4720) \ - $(am__append_4727) $(am__append_4734) $(am__append_4741) \ - $(am__append_4748) $(am__append_4755) $(am__append_4762) \ - $(am__append_4769) $(am__append_4776) $(am__append_4783) \ - $(am__append_4790) $(am__append_4797) $(am__append_4804) \ - $(am__append_4811) $(am__append_4818) $(am__append_4825) \ - div_test.marker mul_test.marker shift_test.marker \ - cmp_test.marker ctz_test.marker bswap_test.marker \ - videotest_checksum.marker gfxterm_menu.marker \ - cmdline_cat_test.marker bitmap.marker bitmap_scale.marker \ - $(am__append_4832) $(am__append_4839) $(am__append_4846) \ - $(am__append_4853) $(am__append_4860) $(am__append_4867) \ - $(am__append_4874) $(am__append_4881) $(am__append_4888) \ - jpeg.marker png.marker tga.marker $(am__append_4895) \ - $(am__append_4902) $(am__append_4909) $(am__append_4916) \ - $(am__append_4923) $(am__append_4930) $(am__append_4937) \ - $(am__append_4944) $(am__append_4951) $(am__append_4958) \ - $(am__append_4965) $(am__append_4972) $(am__append_4979) \ - $(am__append_4986) $(am__append_4993) $(am__append_5000) \ - $(am__append_5007) $(am__append_5014) $(am__append_5021) \ - $(am__append_5028) $(am__append_5035) $(am__append_5042) \ - $(am__append_5049) $(am__append_5056) $(am__append_5063) \ - $(am__append_5070) $(am__append_5077) $(am__append_5084) \ - $(am__append_5091) $(am__append_5098) $(am__append_5105) \ - $(am__append_5112) $(am__append_5119) $(am__append_5126) \ - $(am__append_5133) $(am__append_5140) $(am__append_5147) \ - $(am__append_5154) $(am__append_5161) $(am__append_5168) \ - $(am__append_5175) video_colors.marker $(am__append_5182) \ - $(am__append_5189) datehook.marker net.marker tftp.marker \ - http.marker $(am__append_5196) $(am__append_5203) \ - $(am__append_5210) $(am__append_5217) $(am__append_5224) \ - $(am__append_5231) $(am__append_5238) $(am__append_5245) \ - $(am__append_5252) $(am__append_5259) $(am__append_5266) \ - $(am__append_5273) $(am__append_5280) $(am__append_5287) \ - $(am__append_5294) $(am__append_5301) $(am__append_5308) \ - $(am__append_5315) syslinuxcfg.marker test_blockarg.marker \ - xzio.marker lzopio.marker testload.marker $(am__append_5322) \ - $(am__append_5329) $(am__append_5336) $(am__append_5343) \ - $(am__append_5350) $(am__append_5357) $(am__append_5364) \ - $(am__append_5371) $(am__append_5378) $(am__append_5385) \ - $(am__append_5392) $(am__append_5399) $(am__append_5406) \ - $(am__append_5413) $(am__append_5420) $(am__append_5427) \ - $(am__append_5434) priority_queue.marker time.marker \ - $(am__append_5441) $(am__append_5448) adler32.marker \ - crc64.marker mpi.marker all_video.marker $(am__append_5455) \ - $(am__append_5462) $(am__append_5469) $(am__append_5476) \ - $(am__append_5483) $(am__append_5490) testspeed.marker \ - $(am__append_5497) tr.marker progress.marker file.marker \ - $(am__append_5504) $(am__append_5511) $(am__append_5518) \ - $(am__append_5525) $(am__append_5532) $(am__append_5539) \ - $(am__append_5546) $(am__append_5553) $(am__append_5560) \ - $(am__append_5567) $(am__append_5574) $(am__append_5581) \ - $(am__append_5588) $(am__append_5595) gcry_arcfour.marker \ - gcry_blowfish.marker gcry_camellia.marker gcry_cast5.marker \ - gcry_crc.marker gcry_des.marker gcry_dsa.marker \ - gcry_idea.marker gcry_md4.marker gcry_md5.marker \ - gcry_rfc2268.marker gcry_rijndael.marker gcry_rmd160.marker \ - gcry_rsa.marker gcry_seed.marker gcry_serpent.marker \ - gcry_sha1.marker gcry_sha256.marker gcry_sha512.marker \ - gcry_tiger.marker gcry_twofish.marker gcry_whirlpool.marker -KERNEL_HEADER_FILES = $(top_srcdir)/include/grub/cache.h \ - $(top_srcdir)/include/grub/command.h \ - $(top_srcdir)/include/grub/device.h \ - $(top_srcdir)/include/grub/disk.h \ - $(top_srcdir)/include/grub/dl.h \ - $(top_srcdir)/include/grub/env.h \ - $(top_srcdir)/include/grub/env_private.h \ - $(top_srcdir)/include/grub/err.h \ - $(top_srcdir)/include/grub/file.h \ - $(top_srcdir)/include/grub/fs.h \ - $(top_srcdir)/include/grub/i18n.h \ - $(top_srcdir)/include/grub/kernel.h \ - $(top_srcdir)/include/grub/list.h \ - $(top_srcdir)/include/grub/misc.h $(am__append_5801) \ - $(am__append_5802) $(top_srcdir)/include/grub/mm.h \ - $(top_srcdir)/include/grub/parser.h \ - $(top_srcdir)/include/grub/partition.h \ - $(top_srcdir)/include/grub/term.h \ - $(top_srcdir)/include/grub/time.h \ - $(top_srcdir)/include/grub/mm_private.h \ - $(top_srcdir)/include/grub/net.h \ - $(top_srcdir)/include/grub/memory.h $(am__append_5803) \ - $(am__append_5804) $(am__append_5805) $(am__append_5806) \ - $(am__append_5807) $(am__append_5808) $(am__append_5809) \ - $(am__append_5810) $(am__append_5811) $(am__append_5812) \ - $(am__append_5813) $(am__append_5814) $(am__append_5815) \ - $(am__append_5816) $(am__append_5817) $(am__append_5818) \ - $(am__append_5819) $(am__append_5820) $(am__append_5821) \ - $(am__append_5822) $(am__append_5823) $(am__append_5824) \ - $(am__append_5825) $(am__append_5826) $(am__append_5827) \ - $(am__append_5828) $(am__append_5829) -man_MANS = $(am__append_5792) -noinst_DATA = gensyminfo.sh genmod.sh modinfo.sh kernel_syms.lst -pkgdata_DATA = -bin_SCRIPTS = -sbin_SCRIPTS = -platform_DATA = $(am__append_5600) $(am__append_5605) \ - $(am__append_5610) $(am__append_5615) $(am__append_5620) \ - $(am__append_5625) $(am__append_5630) $(am__append_5635) \ - $(am__append_5640) $(am__append_5645) $(am__append_5650) \ - $(am__append_5655) $(am__append_5660) $(am__append_5665) \ - $(am__append_5670) $(am__append_5675) $(am__append_5680) \ - $(am__append_5685) $(am__append_5690) $(am__append_5695) \ - $(am__append_5700) $(am__append_5705) $(am__append_5710) \ - $(am__append_5715) $(am__append_5720) $(am__append_5725) \ - $(am__append_5730) $(am__append_5735) $(am__append_5740) \ - $(am__append_5745) $(am__append_5750) $(am__append_5755) \ - $(am__append_5760) $(am__append_5765) $(am__append_5770) \ - $(am__append_5775) $(am__append_5780) $(am__append_5785) \ - $(am__append_5790) gmodule.pl gdb_grub $(am__append_5797) \ - fs.lst command.lst partmap.lst terminal.lst fdt.lst \ - parttool.lst video.lst crypto.lst moddep.lst $(MOD_FILES) \ - modinfo.sh $(am__append_5831) -check_SCRIPTS = -dist_grubconf_DATA = -noinst_SCRIPTS = -grubconf_SCRIPTS = -noinst_LIBRARIES = -dist_noinst_DATA = kern/disk_common.c gentrigtables.c $(am__append_5) \ - $(am__append_12) $(am__append_19) $(am__append_26) \ - $(am__append_33) $(am__append_40) $(am__append_47) \ - $(am__append_54) $(am__append_61) $(am__append_68) \ - $(am__append_75) $(am__append_82) $(am__append_89) \ - $(am__append_96) $(am__append_103) $(am__append_110) \ - $(am__append_117) $(am__append_124) $(am__append_131) \ - $(am__append_138) $(am__append_145) $(am__append_152) \ - $(am__append_159) $(am__append_166) $(am__append_173) \ - $(am__append_180) $(am__append_187) $(am__append_194) \ - $(am__append_201) $(am__append_208) $(am__append_215) \ - $(am__append_222) $(am__append_229) $(am__append_236) \ - $(am__append_243) $(am__append_250) $(am__append_257) \ - $(am__append_264) $(am__append_271) $(am__append_278) \ - $(am__append_285) $(am__append_292) $(am__append_299) \ - $(am__append_306) $(am__append_313) $(am__append_320) \ - $(am__append_327) $(am__append_334) $(am__append_341) \ - $(am__append_348) $(am__append_355) $(am__append_362) \ - $(am__append_369) $(am__append_376) $(am__append_383) \ - $(am__append_390) $(am__append_397) $(am__append_404) \ - $(am__append_411) $(am__append_418) $(am__append_425) \ - $(am__append_432) $(am__append_439) $(am__append_446) \ - $(am__append_453) $(am__append_460) $(am__append_467) \ - $(am__append_474) $(am__append_481) $(am__append_488) \ - $(am__append_495) $(am__append_502) $(am__append_509) \ - $(am__append_516) $(am__append_523) $(am__append_530) \ - $(am__append_537) $(am__append_544) $(am__append_551) \ - $(am__append_558) $(am__append_565) $(am__append_572) \ - $(am__append_579) $(am__append_586) $(am__append_593) \ - $(am__append_600) $(am__append_607) $(am__append_614) \ - $(am__append_621) $(am__append_628) $(am__append_635) \ - $(am__append_642) $(am__append_649) $(am__append_656) \ - $(am__append_663) $(am__append_670) $(am__append_677) \ - $(am__append_684) $(am__append_691) $(am__append_698) \ - $(am__append_705) $(am__append_712) $(am__append_719) \ - $(am__append_726) $(am__append_733) $(am__append_740) \ - $(am__append_747) $(am__append_754) $(am__append_761) \ - $(am__append_768) $(am__append_775) $(am__append_782) \ - $(am__append_789) $(am__append_796) $(am__append_803) \ - $(am__append_810) $(am__append_817) $(am__append_824) \ - $(am__append_831) $(am__append_838) $(am__append_845) \ - $(am__append_852) $(am__append_859) $(am__append_866) \ - $(am__append_873) $(am__append_880) $(am__append_887) \ - $(am__append_894) $(am__append_901) $(am__append_908) \ - $(am__append_915) $(am__append_922) $(am__append_929) \ - $(am__append_936) $(am__append_943) $(am__append_950) \ - $(am__append_957) $(am__append_964) $(am__append_971) \ - $(am__append_978) $(am__append_985) $(am__append_992) \ - $(am__append_999) $(am__append_1006) $(am__append_1013) \ - $(am__append_1020) $(am__append_1027) $(am__append_1034) \ - $(am__append_1041) $(am__append_1048) $(am__append_1055) \ - $(am__append_1062) $(am__append_1069) $(am__append_1076) \ - $(am__append_1083) $(am__append_1090) $(am__append_1097) \ - $(am__append_1104) $(am__append_1111) $(am__append_1118) \ - $(am__append_1125) $(am__append_1132) $(am__append_1139) \ - $(am__append_1146) $(am__append_1153) $(am__append_1160) \ - $(am__append_1167) $(am__append_1174) $(am__append_1181) \ - $(am__append_1188) $(am__append_1195) $(am__append_1202) \ - $(am__append_1209) $(am__append_1216) $(am__append_1223) \ - $(am__append_1230) $(am__append_1237) $(am__append_1244) \ - $(am__append_1251) $(am__append_1258) $(am__append_1265) \ - $(am__append_1272) $(am__append_1279) $(am__append_1286) \ - $(am__append_1293) $(am__append_1300) $(am__append_1307) \ - $(am__append_1314) $(am__append_1321) $(am__append_1328) \ - $(am__append_1335) $(am__append_1342) $(am__append_1349) \ - $(am__append_1356) $(am__append_1363) $(am__append_1370) \ - $(am__append_1377) $(am__append_1384) $(am__append_1391) \ - $(am__append_1398) $(am__append_1405) $(am__append_1412) \ - $(am__append_1419) $(am__append_1426) $(am__append_1433) \ - $(am__append_1440) $(am__append_1447) $(am__append_1454) \ - $(am__append_1461) $(am__append_1468) $(am__append_1475) \ - $(am__append_1482) $(am__append_1489) $(am__append_1496) \ - $(am__append_1503) $(am__append_1510) $(am__append_1517) \ - $(am__append_1524) $(am__append_1531) $(am__append_1538) \ - $(am__append_1545) $(am__append_1552) $(am__append_1559) \ - $(am__append_1566) $(am__append_1573) $(am__append_1580) \ - $(am__append_1587) $(am__append_1594) $(am__append_1601) \ - $(am__append_1608) $(am__append_1615) $(am__append_1622) \ - $(am__append_1629) $(am__append_1636) $(am__append_1643) \ - $(am__append_1650) $(am__append_1657) $(am__append_1664) \ - $(am__append_1671) $(am__append_1678) $(am__append_1685) \ - $(am__append_1692) $(am__append_1699) $(am__append_1706) \ - $(am__append_1713) $(am__append_1720) $(am__append_1727) \ - $(am__append_1734) $(am__append_1741) $(am__append_1748) \ - $(am__append_1755) $(am__append_1762) $(am__append_1769) \ - $(am__append_1776) $(am__append_1783) $(am__append_1790) \ - $(am__append_1797) $(am__append_1804) $(am__append_1811) \ - $(am__append_1818) $(am__append_1825) $(am__append_1832) \ - $(am__append_1839) $(am__append_1846) $(am__append_1853) \ - $(am__append_1860) $(am__append_1867) $(am__append_1874) \ - $(am__append_1881) $(am__append_1888) $(am__append_1895) \ - $(am__append_1902) $(am__append_1909) $(am__append_1916) \ - $(am__append_1923) $(am__append_1930) $(am__append_1937) \ - $(am__append_1944) $(am__append_1951) $(am__append_1958) \ - $(am__append_1965) $(am__append_1972) $(am__append_1979) \ - $(am__append_1986) $(am__append_1993) $(am__append_2000) \ - $(am__append_2007) $(am__append_2014) $(am__append_2021) \ - $(am__append_2028) $(am__append_2035) $(am__append_2042) \ - $(am__append_2049) $(am__append_2056) $(am__append_2063) \ - $(am__append_2070) $(am__append_2077) $(am__append_2084) \ - $(am__append_2091) $(am__append_2098) $(am__append_2105) \ - $(am__append_2112) $(am__append_2119) $(am__append_2126) \ - $(am__append_2133) $(am__append_2140) $(am__append_2147) \ - $(am__append_2154) $(am__append_2161) $(am__append_2168) \ - $(am__append_2175) $(am__append_2182) $(am__append_2189) \ - $(am__append_2196) $(am__append_2203) $(am__append_2210) \ - $(am__append_2217) $(am__append_2224) $(am__append_2231) \ - $(am__append_2238) $(am__append_2245) $(am__append_2252) \ - $(am__append_2259) $(am__append_2266) $(am__append_2273) \ - $(am__append_2280) $(am__append_2287) $(am__append_2294) \ - $(am__append_2301) $(am__append_2308) $(am__append_2315) \ - $(am__append_2322) commands/search.c $(am__append_2329) \ - $(am__append_2336) $(am__append_2343) $(am__append_2350) \ - $(am__append_2357) $(am__append_2364) $(am__append_2371) \ - $(am__append_2378) $(am__append_2385) $(am__append_2392) \ - $(am__append_2399) $(am__append_2406) $(am__append_2413) \ - $(am__append_2420) $(am__append_2427) $(am__append_2434) \ - $(am__append_2441) $(am__append_2448) $(am__append_2455) \ - $(am__append_2462) $(am__append_2469) $(am__append_2476) \ - $(am__append_2483) $(am__append_2490) $(am__append_2497) \ - $(am__append_2504) $(am__append_2511) $(am__append_2518) \ - $(am__append_2525) $(am__append_2532) $(am__append_2539) \ - $(am__append_2546) $(am__append_2553) $(am__append_2560) \ - $(am__append_2567) $(am__append_2574) $(am__append_2581) \ - $(am__append_2588) $(am__append_2595) $(am__append_2602) \ - $(am__append_2609) $(am__append_2616) $(am__append_2623) \ - $(am__append_2630) $(am__append_2637) $(am__append_2644) \ - $(am__append_2651) $(am__append_2658) $(am__append_2665) \ - $(am__append_2672) $(am__append_2679) $(am__append_2686) \ - $(am__append_2693) $(am__append_2700) $(am__append_2707) \ - $(am__append_2714) $(am__append_2721) $(am__append_2728) \ - $(am__append_2735) $(am__append_2742) $(am__append_2749) \ - $(am__append_2756) $(am__append_2763) $(am__append_2770) \ - $(am__append_2777) $(am__append_2784) $(am__append_2791) \ - $(am__append_2798) $(am__append_2805) $(am__append_2812) \ - $(am__append_2819) $(am__append_2826) $(am__append_2833) \ - $(am__append_2840) $(am__append_2847) $(am__append_2854) \ - $(am__append_2861) $(am__append_2868) $(am__append_2875) \ - $(am__append_2882) $(am__append_2889) $(am__append_2896) \ - $(am__append_2903) $(am__append_2910) $(am__append_2917) \ - $(am__append_2924) $(am__append_2931) $(am__append_2938) \ - $(am__append_2945) $(am__append_2952) $(am__append_2959) \ - $(am__append_2966) $(am__append_2973) $(am__append_2980) \ - $(am__append_2987) $(am__append_2994) $(am__append_3001) \ - $(am__append_3008) $(am__append_3015) $(am__append_3022) \ - $(am__append_3029) $(am__append_3036) $(am__append_3043) \ - $(am__append_3050) $(am__append_3057) $(am__append_3064) \ - $(am__append_3071) $(am__append_3078) $(am__append_3085) \ - kern/elfXX.c lib/libgcrypt-grub/cipher/crypto.lst \ - $(am__append_3092) $(am__append_3099) $(am__append_3106) \ - $(am__append_3113) $(am__append_3120) $(am__append_3127) \ - $(am__append_3134) $(am__append_3141) $(am__append_3148) \ - $(am__append_3155) $(am__append_3162) $(am__append_3169) \ - $(am__append_3176) $(am__append_3183) $(am__append_3190) \ - $(am__append_3197) $(am__append_3204) $(am__append_3211) \ - $(am__append_3218) $(am__append_3225) $(am__append_3232) \ - $(am__append_3239) $(am__append_3246) $(am__append_3253) \ - $(am__append_3260) $(am__append_3267) $(am__append_3274) \ - $(am__append_3281) $(am__append_3288) $(am__append_3295) \ - $(am__append_3302) $(am__append_3309) $(am__append_3316) \ - $(am__append_3323) $(am__append_3330) $(am__append_3337) \ - lib/i386/setjmp.S lib/mips/setjmp.S lib/x86_64/setjmp.S \ - lib/sparc64/setjmp.S lib/powerpc/setjmp.S lib/ia64/setjmp.S \ - lib/ia64/longjmp.S lib/arm/setjmp.S lib/arm64/setjmp.S \ - lib/riscv/setjmp.S $(am__append_3344) $(am__append_3351) \ - $(am__append_3358) $(am__append_3365) $(am__append_3372) \ - $(am__append_3379) $(am__append_3386) $(am__append_3393) \ - $(am__append_3400) $(am__append_3407) $(am__append_3414) \ - $(am__append_3421) $(am__append_3428) $(am__append_3435) \ - $(am__append_3442) $(am__append_3449) $(am__append_3456) \ - $(am__append_3463) $(am__append_3470) $(am__append_3477) \ - $(am__append_3484) $(am__append_3491) $(am__append_3498) \ - $(am__append_3505) $(am__append_3512) $(am__append_3519) \ - $(am__append_3526) $(am__append_3533) $(am__append_3540) \ - $(am__append_3547) $(am__append_3554) $(am__append_3561) \ - $(am__append_3568) $(am__append_3575) $(am__append_3582) \ - $(am__append_3589) $(am__append_3596) $(am__append_3603) \ - $(am__append_3610) $(am__append_3617) $(am__append_3624) \ - $(am__append_3631) $(am__append_3638) $(am__append_3645) \ - $(am__append_3652) $(am__append_3659) $(am__append_3666) \ - $(am__append_3673) $(am__append_3680) $(am__append_3687) \ - $(am__append_3694) $(am__append_3701) $(am__append_3708) \ - $(am__append_3715) $(am__append_3722) $(am__append_3729) \ - $(am__append_3736) $(am__append_3743) $(am__append_3750) \ - $(am__append_3757) $(am__append_3764) $(am__append_3771) \ - $(am__append_3778) $(am__append_3785) $(am__append_3792) \ - $(am__append_3799) $(am__append_3806) $(am__append_3813) \ - $(am__append_3820) $(am__append_3827) $(am__append_3834) \ - $(am__append_3841) $(am__append_3848) $(am__append_3855) \ - $(am__append_3862) $(am__append_3869) $(am__append_3876) \ - $(am__append_3883) loader/machoXX.c $(am__append_3890) \ - $(am__append_3897) $(am__append_3904) $(am__append_3911) \ - $(am__append_3918) $(am__append_3925) $(am__append_3932) \ - $(am__append_3939) $(am__append_3946) $(am__append_3953) \ - $(am__append_3960) $(am__append_3967) $(am__append_3974) \ - $(am__append_3981) $(am__append_3988) $(am__append_3995) \ - $(am__append_4002) $(am__append_4009) $(am__append_4016) \ - $(am__append_4023) $(am__append_4030) $(am__append_4037) \ - $(am__append_4044) $(am__append_4051) $(am__append_4058) \ - $(am__append_4065) $(am__append_4072) script/yylex.l \ - script/parser.y $(am__append_4079) $(am__append_4086) \ - $(am__append_4093) $(am__append_4100) $(am__append_4107) \ - $(am__append_4114) $(am__append_4121) $(am__append_4128) \ - $(am__append_4135) $(am__append_4142) $(am__append_4149) \ - $(am__append_4156) $(am__append_4163) $(am__append_4170) \ - $(am__append_4177) $(am__append_4184) $(am__append_4191) \ - $(am__append_4198) $(am__append_4205) $(am__append_4212) \ - $(am__append_4219) $(am__append_4226) $(am__append_4233) \ - $(am__append_4240) $(am__append_4247) $(am__append_4254) \ - $(am__append_4261) $(am__append_4268) $(am__append_4275) \ - $(am__append_4282) $(am__append_4289) $(am__append_4296) \ - $(am__append_4303) $(am__append_4310) $(am__append_4317) \ - $(am__append_4324) $(am__append_4331) $(am__append_4338) \ - $(am__append_4345) $(am__append_4352) $(am__append_4359) \ - $(am__append_4366) $(am__append_4373) $(am__append_4380) \ - $(am__append_4387) $(am__append_4394) $(am__append_4401) \ - $(am__append_4408) $(am__append_4415) $(am__append_4422) \ - $(am__append_4429) $(am__append_4436) $(am__append_4443) \ - $(am__append_4450) $(am__append_4457) $(am__append_4464) \ - $(am__append_4471) $(am__append_4478) $(am__append_4485) \ - $(am__append_4492) $(am__append_4499) $(am__append_4506) \ - $(am__append_4513) $(am__append_4520) $(am__append_4527) \ - $(am__append_4534) $(am__append_4541) $(am__append_4548) \ - $(am__append_4555) $(am__append_4562) $(am__append_4569) \ - $(am__append_4576) $(am__append_4583) $(am__append_4590) \ - $(am__append_4597) $(am__append_4604) $(am__append_4611) \ - $(am__append_4618) $(am__append_4625) $(am__append_4632) \ - $(am__append_4639) $(am__append_4646) $(am__append_4653) \ - $(am__append_4660) $(am__append_4667) $(am__append_4674) \ - $(am__append_4681) $(am__append_4688) $(am__append_4695) \ - $(am__append_4702) $(am__append_4709) $(am__append_4716) \ - $(am__append_4723) $(am__append_4730) $(am__append_4737) \ - $(am__append_4744) $(am__append_4751) $(am__append_4758) \ - $(am__append_4765) $(am__append_4772) $(am__append_4779) \ - $(am__append_4786) $(am__append_4793) $(am__append_4800) \ - $(am__append_4807) $(am__append_4814) $(am__append_4821) \ - $(am__append_4828) $(am__append_4835) $(am__append_4842) \ - $(am__append_4849) $(am__append_4856) $(am__append_4863) \ - $(am__append_4870) $(am__append_4877) $(am__append_4884) \ - $(am__append_4891) $(am__append_4898) $(am__append_4905) \ - $(am__append_4912) $(am__append_4919) $(am__append_4926) \ - $(am__append_4933) $(am__append_4940) $(am__append_4947) \ - $(am__append_4954) $(am__append_4961) $(am__append_4968) \ - $(am__append_4975) $(am__append_4982) $(am__append_4989) \ - $(am__append_4996) $(am__append_5003) $(am__append_5010) \ - $(am__append_5017) $(am__append_5024) $(am__append_5031) \ - $(am__append_5038) $(am__append_5045) $(am__append_5052) \ - $(am__append_5059) $(am__append_5066) $(am__append_5073) \ - $(am__append_5080) $(am__append_5087) $(am__append_5094) \ - $(am__append_5101) $(am__append_5108) $(am__append_5115) \ - $(am__append_5122) $(am__append_5129) $(am__append_5136) \ - $(am__append_5143) $(am__append_5150) $(am__append_5157) \ - $(am__append_5164) $(am__append_5171) $(am__append_5178) \ - $(am__append_5185) $(am__append_5192) $(am__append_5199) \ - $(am__append_5206) $(am__append_5213) $(am__append_5220) \ - $(am__append_5227) $(am__append_5234) $(am__append_5241) \ - $(am__append_5248) $(am__append_5255) $(am__append_5262) \ - $(am__append_5269) $(am__append_5276) $(am__append_5283) \ - $(am__append_5290) $(am__append_5297) $(am__append_5304) \ - $(am__append_5311) $(am__append_5318) $(am__append_5325) \ - $(am__append_5332) $(am__append_5339) $(am__append_5346) \ - $(am__append_5353) $(am__append_5360) $(am__append_5367) \ - $(am__append_5374) $(am__append_5381) $(am__append_5388) \ - $(am__append_5395) $(am__append_5402) $(am__append_5409) \ - $(am__append_5416) $(am__append_5423) $(am__append_5430) \ - $(am__append_5437) $(am__append_5444) $(am__append_5451) \ - $(am__append_5458) $(am__append_5465) $(am__append_5472) \ - $(am__append_5479) $(am__append_5486) $(am__append_5493) \ - commands/fileXX.c loader/i386/xen_fileXX.c $(am__append_5500) \ - $(am__append_5507) $(am__append_5514) $(am__append_5521) \ - $(am__append_5528) $(am__append_5535) $(am__append_5542) \ - $(am__append_5549) $(am__append_5556) $(am__append_5563) \ - $(am__append_5570) $(am__append_5577) $(am__append_5584) \ - $(am__append_5591) $(am__append_5597) $(am__append_5602) \ - $(am__append_5607) $(am__append_5612) $(am__append_5617) \ - $(am__append_5622) $(am__append_5627) $(am__append_5632) \ - $(am__append_5637) $(am__append_5642) $(am__append_5647) \ - $(am__append_5652) $(am__append_5657) $(am__append_5662) \ - $(am__append_5667) $(am__append_5672) $(am__append_5677) \ - $(am__append_5682) $(am__append_5687) $(am__append_5692) \ - $(am__append_5697) $(am__append_5702) $(am__append_5707) \ - $(am__append_5712) $(am__append_5717) $(am__append_5722) \ - $(am__append_5727) $(am__append_5732) $(am__append_5737) \ - $(am__append_5742) $(am__append_5747) $(am__append_5752) \ - $(am__append_5757) $(am__append_5762) $(am__append_5767) \ - $(am__append_5772) $(am__append_5777) $(am__append_5782) \ - $(am__append_5787) $(am__append_5794) gensyminfo.sh.in \ - genmod.sh.in modinfo.sh.in gmodule.pl.in gdb_grub.in \ - $(am__append_5800) -platform_SCRIPTS = -EXTRA_DIST = $(am__append_5799) -CLEANFILES = build-grub-pep2elf$(BUILD_EXEEXT) \ - build-grub-pe2elf$(BUILD_EXEEXT) gentrigtables$(BUILD_EXEEXT) \ - build-grub-module-verifier$(BUILD_EXEEXT) trigtables.c \ - grub_script.tab.c grub_script.tab.h grub_script.yy.c \ - grub_script.yy.h $(nodist_disk_module_SOURCES) disk.marker \ - $(nodist_trig_module_SOURCES) trig.marker $(am__append_7) \ - $(am__append_14) $(am__append_21) $(am__append_28) \ - $(am__append_35) $(am__append_42) $(am__append_49) \ - $(am__append_56) $(am__append_63) $(am__append_70) \ - $(am__append_77) $(am__append_84) $(am__append_91) \ - $(am__append_98) $(am__append_105) $(am__append_112) \ - $(am__append_119) $(am__append_126) $(am__append_133) \ - $(am__append_140) $(am__append_147) $(am__append_154) \ - $(am__append_161) $(am__append_168) $(am__append_175) \ - $(am__append_182) $(am__append_189) $(am__append_196) \ - $(am__append_203) $(am__append_210) $(am__append_217) \ - $(am__append_224) $(am__append_231) $(am__append_238) \ - $(am__append_245) $(am__append_252) $(am__append_259) \ - $(am__append_266) $(am__append_273) $(am__append_280) \ - $(am__append_287) $(am__append_294) $(am__append_301) \ - $(am__append_308) $(am__append_315) $(am__append_322) \ - $(am__append_329) $(am__append_336) $(am__append_343) \ - $(am__append_350) $(am__append_357) $(am__append_364) \ - $(am__append_371) $(am__append_378) $(am__append_385) \ - $(am__append_392) $(am__append_399) $(am__append_406) \ - $(am__append_413) $(am__append_420) $(am__append_427) \ - $(am__append_434) $(am__append_441) $(am__append_448) \ - $(am__append_455) $(am__append_462) $(am__append_469) \ - $(am__append_476) $(am__append_483) $(am__append_490) \ - $(am__append_497) $(am__append_504) $(am__append_511) \ - $(am__append_518) $(am__append_525) $(am__append_532) \ - $(am__append_539) $(am__append_546) $(am__append_553) \ - $(am__append_560) $(am__append_567) $(am__append_574) \ - $(am__append_581) $(am__append_588) $(am__append_595) \ - $(am__append_602) $(am__append_609) $(am__append_616) \ - $(am__append_623) $(am__append_630) $(am__append_637) \ - $(am__append_644) $(am__append_651) $(am__append_658) \ - $(am__append_665) $(am__append_672) $(am__append_679) \ - $(am__append_686) $(am__append_693) $(am__append_700) \ - $(am__append_707) $(am__append_714) $(am__append_721) \ - $(am__append_728) $(am__append_735) $(am__append_742) \ - $(am__append_749) $(am__append_756) $(am__append_763) \ - $(am__append_770) $(am__append_777) $(am__append_784) \ - $(am__append_791) $(am__append_798) $(am__append_805) \ - $(am__append_812) $(am__append_819) $(am__append_826) \ - $(am__append_833) $(am__append_840) $(am__append_847) \ - $(am__append_854) $(am__append_861) $(am__append_868) \ - $(am__append_875) $(am__append_882) $(am__append_889) \ - $(am__append_896) $(am__append_903) $(am__append_910) \ - $(am__append_917) $(am__append_924) $(am__append_931) \ - $(am__append_938) $(am__append_945) $(am__append_952) \ - $(am__append_959) $(am__append_966) $(am__append_973) \ - $(am__append_980) $(am__append_987) $(am__append_994) \ - $(am__append_1001) $(am__append_1008) $(am__append_1015) \ - $(am__append_1022) $(am__append_1029) \ - $(nodist_regexp_module_SOURCES) regexp.marker \ - $(am__append_1036) $(am__append_1043) $(am__append_1050) \ - $(am__append_1057) $(am__append_1064) $(am__append_1071) \ - $(am__append_1078) $(am__append_1085) $(am__append_1092) \ - $(am__append_1099) $(am__append_1106) $(am__append_1113) \ - $(am__append_1120) $(am__append_1127) $(am__append_1134) \ - $(am__append_1141) $(am__append_1148) $(am__append_1155) \ - $(am__append_1162) $(am__append_1169) $(am__append_1176) \ - $(am__append_1183) $(am__append_1190) $(am__append_1197) \ - $(am__append_1204) $(am__append_1211) $(am__append_1218) \ - $(am__append_1225) $(am__append_1232) $(am__append_1239) \ - $(am__append_1246) $(am__append_1253) $(am__append_1260) \ - $(am__append_1267) $(am__append_1274) $(am__append_1281) \ - $(am__append_1288) $(am__append_1295) $(am__append_1302) \ - $(am__append_1309) $(am__append_1316) $(am__append_1323) \ - $(am__append_1330) $(am__append_1337) $(am__append_1344) \ - $(am__append_1351) $(am__append_1358) $(am__append_1365) \ - $(am__append_1372) $(am__append_1379) $(am__append_1386) \ - $(am__append_1393) $(am__append_1400) $(am__append_1407) \ - $(am__append_1414) $(nodist_blocklist_module_SOURCES) \ - blocklist.marker $(am__append_1421) $(am__append_1428) \ - $(am__append_1435) $(am__append_1442) $(am__append_1449) \ - $(am__append_1456) $(am__append_1463) $(am__append_1470) \ - $(am__append_1477) $(am__append_1484) $(am__append_1491) \ - $(am__append_1498) $(am__append_1505) $(am__append_1512) \ - $(am__append_1519) $(am__append_1526) $(am__append_1533) \ - $(am__append_1540) $(nodist_cat_module_SOURCES) cat.marker \ - $(nodist_cmp_module_SOURCES) cmp.marker \ - $(nodist_configfile_module_SOURCES) configfile.marker \ - $(am__append_1547) $(am__append_1554) $(am__append_1561) \ - $(am__append_1568) $(am__append_1575) $(am__append_1582) \ - $(am__append_1589) $(am__append_1596) $(am__append_1603) \ - $(am__append_1610) $(nodist_date_module_SOURCES) date.marker \ - $(am__append_1617) $(nodist_echo_module_SOURCES) echo.marker \ - $(nodist_eval_module_SOURCES) eval.marker $(am__append_1624) \ - $(am__append_1631) $(am__append_1638) $(am__append_1645) \ - $(am__append_1652) $(am__append_1659) $(am__append_1666) \ - $(am__append_1673) $(am__append_1680) $(am__append_1687) \ - $(am__append_1694) $(am__append_1701) $(am__append_1708) \ - $(am__append_1715) $(nodist_gptsync_module_SOURCES) \ - gptsync.marker $(am__append_1722) $(am__append_1729) \ - $(am__append_1736) $(am__append_1743) $(am__append_1750) \ - $(am__append_1757) $(am__append_1764) $(am__append_1771) \ - $(am__append_1778) $(am__append_1785) $(am__append_1792) \ - $(am__append_1799) $(am__append_1806) $(am__append_1813) \ - $(am__append_1820) $(am__append_1827) $(am__append_1834) \ - $(am__append_1841) $(am__append_1848) $(am__append_1855) \ - $(am__append_1862) $(am__append_1869) $(am__append_1876) \ - $(am__append_1883) $(am__append_1890) $(am__append_1897) \ - $(am__append_1904) $(am__append_1911) $(am__append_1918) \ - $(am__append_1925) $(am__append_1932) $(am__append_1939) \ - $(am__append_1946) $(am__append_1953) $(am__append_1960) \ - $(am__append_1967) $(am__append_1974) $(am__append_1981) \ - $(am__append_1988) $(am__append_1995) $(am__append_2002) \ - $(am__append_2009) $(am__append_2016) $(am__append_2023) \ - $(am__append_2030) $(am__append_2037) \ - $(nodist_hashsum_module_SOURCES) hashsum.marker \ - $(nodist_pgp_module_SOURCES) pgp.marker \ - $(nodist_verifiers_module_SOURCES) verifiers.marker \ - $(am__append_2044) $(am__append_2051) $(am__append_2058) \ - $(am__append_2065) $(am__append_2072) $(am__append_2079) \ - $(am__append_2086) $(am__append_2093) $(am__append_2100) \ - $(am__append_2107) $(nodist_help_module_SOURCES) help.marker \ - $(nodist_hexdump_module_SOURCES) hexdump.marker \ - $(nodist_keystatus_module_SOURCES) keystatus.marker \ - $(am__append_2114) $(am__append_2121) \ - $(nodist_loadenv_module_SOURCES) loadenv.marker \ - $(nodist_ls_module_SOURCES) ls.marker \ - $(nodist_lsmmap_module_SOURCES) lsmmap.marker \ - $(am__append_2128) $(am__append_2135) $(am__append_2142) \ - $(am__append_2149) $(am__append_2156) $(am__append_2163) \ - $(am__append_2170) $(am__append_2177) \ - $(nodist_memrw_module_SOURCES) memrw.marker \ - $(nodist_minicmd_module_SOURCES) minicmd.marker \ - $(nodist_parttool_module_SOURCES) parttool.marker \ - $(nodist_password_module_SOURCES) password.marker \ - $(nodist_password_pbkdf2_module_SOURCES) \ - password_pbkdf2.marker $(am__append_2184) $(am__append_2191) \ - $(am__append_2198) $(am__append_2205) $(am__append_2212) \ - $(am__append_2219) $(am__append_2226) $(am__append_2233) \ - $(am__append_2240) $(am__append_2247) $(am__append_2254) \ - $(am__append_2261) $(am__append_2268) $(am__append_2275) \ - $(am__append_2282) $(am__append_2289) $(am__append_2296) \ - $(am__append_2303) $(am__append_2310) $(am__append_2317) \ - $(am__append_2324) $(nodist_probe_module_SOURCES) probe.marker \ - $(nodist_read_module_SOURCES) read.marker \ - $(nodist_search_module_SOURCES) search.marker \ - $(nodist_search_fs_file_module_SOURCES) search_fs_file.marker \ - $(nodist_search_fs_uuid_module_SOURCES) search_fs_uuid.marker \ - $(nodist_search_label_module_SOURCES) search_label.marker \ - $(am__append_2331) $(am__append_2338) $(am__append_2345) \ - $(am__append_2352) $(am__append_2359) $(am__append_2366) \ - $(am__append_2373) $(am__append_2380) $(am__append_2387) \ - $(am__append_2394) $(am__append_2401) $(am__append_2408) \ - $(am__append_2415) $(am__append_2422) $(am__append_2429) \ - $(am__append_2436) $(nodist_sleep_module_SOURCES) sleep.marker \ - $(am__append_2443) $(am__append_2450) \ - $(nodist_terminal_module_SOURCES) terminal.marker \ - $(nodist_test_module_SOURCES) test.marker \ - $(nodist_true_module_SOURCES) true.marker $(am__append_2457) \ - $(am__append_2464) $(am__append_2471) $(am__append_2478) \ - $(am__append_2485) $(am__append_2492) $(am__append_2499) \ - $(am__append_2506) $(am__append_2513) \ - $(nodist_videoinfo_module_SOURCES) videoinfo.marker \ - $(nodist_videotest_module_SOURCES) videotest.marker \ - $(nodist_xnu_uuid_module_SOURCES) xnu_uuid.marker \ - $(nodist_dm_nv_module_SOURCES) dm_nv.marker \ - $(nodist_loopback_module_SOURCES) loopback.marker \ - $(nodist_cryptodisk_module_SOURCES) cryptodisk.marker \ - $(nodist_luks_module_SOURCES) luks.marker \ - $(nodist_geli_module_SOURCES) geli.marker \ - $(nodist_lvm_module_SOURCES) lvm.marker \ - $(nodist_ldm_module_SOURCES) ldm.marker \ - $(nodist_mdraid09_module_SOURCES) mdraid09.marker \ - $(nodist_mdraid09_be_module_SOURCES) mdraid09_be.marker \ - $(nodist_mdraid1x_module_SOURCES) mdraid1x.marker \ - $(nodist_diskfilter_module_SOURCES) diskfilter.marker \ - $(nodist_raid5rec_module_SOURCES) raid5rec.marker \ - $(nodist_raid6rec_module_SOURCES) raid6rec.marker \ - $(nodist_scsi_module_SOURCES) scsi.marker \ - $(nodist_memdisk_module_SOURCES) memdisk.marker \ - $(am__append_2520) $(am__append_2527) $(am__append_2534) \ - $(am__append_2541) $(am__append_2548) $(am__append_2555) \ - $(am__append_2562) $(am__append_2569) $(am__append_2576) \ - $(am__append_2583) $(am__append_2590) $(am__append_2597) \ - $(am__append_2604) $(am__append_2611) $(am__append_2618) \ - $(am__append_2625) $(am__append_2632) $(am__append_2639) \ - $(am__append_2646) $(am__append_2653) $(am__append_2660) \ - $(am__append_2667) $(am__append_2674) $(am__append_2681) \ - $(am__append_2688) $(am__append_2695) $(am__append_2702) \ - $(am__append_2709) $(am__append_2716) $(am__append_2723) \ - $(am__append_2730) $(am__append_2737) $(am__append_2744) \ - $(am__append_2751) $(am__append_2758) $(am__append_2765) \ - $(am__append_2772) $(am__append_2779) $(am__append_2786) \ - $(am__append_2793) $(am__append_2800) $(am__append_2807) \ - $(am__append_2814) $(am__append_2821) $(am__append_2828) \ - $(am__append_2835) $(am__append_2842) $(am__append_2849) \ - $(am__append_2856) $(am__append_2863) $(am__append_2870) \ - $(am__append_2877) $(am__append_2884) $(am__append_2891) \ - $(am__append_2898) $(am__append_2905) $(am__append_2912) \ - $(am__append_2919) $(am__append_2926) $(am__append_2933) \ - $(am__append_2940) $(nodist_procfs_module_SOURCES) \ - procfs.marker $(nodist_affs_module_SOURCES) affs.marker \ - $(nodist_afs_module_SOURCES) afs.marker \ - $(nodist_bfs_module_SOURCES) bfs.marker \ - $(nodist_zstd_module_SOURCES) zstd.marker \ - $(nodist_btrfs_module_SOURCES) btrfs.marker \ - $(nodist_archelp_module_SOURCES) archelp.marker \ - $(nodist_cbfs_module_SOURCES) cbfs.marker \ - $(nodist_cpio_module_SOURCES) cpio.marker \ - $(nodist_cpio_be_module_SOURCES) cpio_be.marker \ - $(nodist_newc_module_SOURCES) newc.marker \ - $(nodist_odc_module_SOURCES) odc.marker \ - $(nodist_ext2_module_SOURCES) ext2.marker \ - $(nodist_fat_module_SOURCES) fat.marker \ - $(nodist_exfat_module_SOURCES) exfat.marker \ - $(nodist_f2fs_module_SOURCES) f2fs.marker \ - $(nodist_fshelp_module_SOURCES) fshelp.marker \ - $(nodist_hfs_module_SOURCES) hfs.marker \ - $(nodist_hfsplus_module_SOURCES) hfsplus.marker \ - $(nodist_hfspluscomp_module_SOURCES) hfspluscomp.marker \ - $(nodist_iso9660_module_SOURCES) iso9660.marker \ - $(nodist_jfs_module_SOURCES) jfs.marker \ - $(nodist_minix_module_SOURCES) minix.marker \ - $(nodist_minix2_module_SOURCES) minix2.marker \ - $(nodist_minix3_module_SOURCES) minix3.marker \ - $(nodist_minix_be_module_SOURCES) minix_be.marker \ - $(nodist_minix2_be_module_SOURCES) minix2_be.marker \ - $(nodist_minix3_be_module_SOURCES) minix3_be.marker \ - $(nodist_nilfs2_module_SOURCES) nilfs2.marker \ - $(nodist_ntfs_module_SOURCES) ntfs.marker \ - $(nodist_ntfscomp_module_SOURCES) ntfscomp.marker \ - $(nodist_reiserfs_module_SOURCES) reiserfs.marker \ - $(nodist_romfs_module_SOURCES) romfs.marker \ - $(nodist_sfs_module_SOURCES) sfs.marker \ - $(nodist_squash4_module_SOURCES) squash4.marker \ - $(nodist_tar_module_SOURCES) tar.marker \ - $(nodist_udf_module_SOURCES) udf.marker \ - $(nodist_ufs1_module_SOURCES) ufs1.marker \ - $(nodist_ufs1_be_module_SOURCES) ufs1_be.marker \ - $(nodist_ufs2_module_SOURCES) ufs2.marker \ - $(nodist_xfs_module_SOURCES) xfs.marker \ - $(nodist_zfs_module_SOURCES) zfs.marker \ - $(nodist_zfscrypt_module_SOURCES) zfscrypt.marker \ - $(nodist_zfsinfo_module_SOURCES) zfsinfo.marker \ - $(nodist_macbless_module_SOURCES) macbless.marker \ - $(am__append_2947) $(nodist_gettext_module_SOURCES) \ - gettext.marker $(nodist_gfxmenu_module_SOURCES) gfxmenu.marker \ - $(nodist_hello_module_SOURCES) hello.marker \ - $(nodist_gzio_module_SOURCES) gzio.marker \ - $(nodist_offsetio_module_SOURCES) offsetio.marker \ - $(am__append_2954) $(am__append_2961) $(am__append_2968) \ - $(am__append_2975) $(am__append_2982) $(am__append_2989) \ - $(am__append_2996) $(am__append_3003) $(am__append_3010) \ - $(am__append_3017) $(am__append_3024) $(am__append_3031) \ - $(am__append_3038) $(am__append_3045) $(am__append_3052) \ - $(am__append_3059) $(am__append_3066) $(am__append_3073) \ - $(am__append_3080) $(am__append_3087) \ - $(nodist_elf_module_SOURCES) elf.marker \ - $(nodist_crypto_module_SOURCES) crypto.marker \ - $(nodist_pbkdf2_module_SOURCES) pbkdf2.marker \ - $(am__append_3094) $(am__append_3101) $(am__append_3108) \ - $(am__append_3115) $(am__append_3122) $(am__append_3129) \ - $(am__append_3136) $(am__append_3143) $(am__append_3150) \ - $(am__append_3157) $(am__append_3164) $(am__append_3171) \ - $(am__append_3178) $(am__append_3185) $(am__append_3192) \ - $(am__append_3199) $(am__append_3206) $(am__append_3213) \ - $(am__append_3220) $(am__append_3227) $(am__append_3234) \ - $(am__append_3241) $(am__append_3248) $(am__append_3255) \ - $(am__append_3262) $(am__append_3269) $(am__append_3276) \ - $(am__append_3283) $(am__append_3290) $(am__append_3297) \ - $(am__append_3304) $(am__append_3311) $(am__append_3318) \ - $(am__append_3325) $(am__append_3332) $(am__append_3339) \ - $(nodist_setjmp_module_SOURCES) setjmp.marker \ - $(am__append_3346) $(am__append_3353) $(am__append_3360) \ - $(am__append_3367) $(am__append_3374) $(am__append_3381) \ - $(am__append_3388) $(am__append_3395) $(am__append_3402) \ - $(am__append_3409) $(am__append_3416) $(am__append_3423) \ - $(am__append_3430) $(am__append_3437) $(am__append_3444) \ - $(am__append_3451) $(am__append_3458) $(am__append_3465) \ - $(am__append_3472) $(am__append_3479) $(am__append_3486) \ - $(am__append_3493) $(am__append_3500) $(am__append_3507) \ - $(am__append_3514) $(am__append_3521) $(am__append_3528) \ - $(am__append_3535) $(am__append_3542) $(am__append_3549) \ - $(am__append_3556) $(am__append_3563) $(am__append_3570) \ - $(am__append_3577) $(am__append_3584) $(am__append_3591) \ - $(am__append_3598) $(am__append_3605) $(am__append_3612) \ - $(am__append_3619) $(am__append_3626) $(am__append_3633) \ - $(am__append_3640) $(am__append_3647) $(am__append_3654) \ - $(am__append_3661) $(am__append_3668) $(am__append_3675) \ - $(am__append_3682) $(am__append_3689) $(am__append_3696) \ - $(am__append_3703) $(am__append_3710) $(am__append_3717) \ - $(am__append_3724) $(am__append_3731) $(am__append_3738) \ - $(am__append_3745) $(am__append_3752) $(am__append_3759) \ - $(am__append_3766) $(am__append_3773) $(am__append_3780) \ - $(am__append_3787) $(am__append_3794) $(am__append_3801) \ - $(am__append_3808) $(am__append_3815) $(am__append_3822) \ - $(am__append_3829) $(am__append_3836) $(am__append_3843) \ - $(am__append_3850) $(am__append_3857) $(am__append_3864) \ - $(am__append_3871) $(am__append_3878) $(am__append_3885) \ - $(nodist_macho_module_SOURCES) macho.marker $(am__append_3892) \ - $(am__append_3899) $(am__append_3906) $(am__append_3913) \ - $(am__append_3920) $(am__append_3927) $(am__append_3934) \ - $(am__append_3941) $(am__append_3948) $(am__append_3955) \ - $(am__append_3962) $(am__append_3969) $(am__append_3976) \ - $(am__append_3983) $(am__append_3990) $(am__append_3997) \ - $(am__append_4004) $(am__append_4011) $(am__append_4018) \ - $(am__append_4025) $(am__append_4032) $(am__append_4039) \ - $(am__append_4046) $(am__append_4053) $(am__append_4060) \ - $(am__append_4067) $(am__append_4074) \ - $(nodist_normal_module_SOURCES) normal.marker \ - $(nodist_part_acorn_module_SOURCES) part_acorn.marker \ - $(nodist_part_amiga_module_SOURCES) part_amiga.marker \ - $(nodist_part_apple_module_SOURCES) part_apple.marker \ - $(nodist_part_gpt_module_SOURCES) part_gpt.marker \ - $(nodist_part_msdos_module_SOURCES) part_msdos.marker \ - $(nodist_part_sun_module_SOURCES) part_sun.marker \ - $(nodist_part_plan_module_SOURCES) part_plan.marker \ - $(nodist_part_dvh_module_SOURCES) part_dvh.marker \ - $(nodist_part_bsd_module_SOURCES) part_bsd.marker \ - $(nodist_part_sunpc_module_SOURCES) part_sunpc.marker \ - $(nodist_part_dfly_module_SOURCES) part_dfly.marker \ - $(nodist_msdospart_module_SOURCES) msdospart.marker \ - $(am__append_4081) $(am__append_4088) $(am__append_4095) \ - $(am__append_4102) $(am__append_4109) $(am__append_4116) \ - $(am__append_4123) $(am__append_4130) $(am__append_4137) \ - $(am__append_4144) $(am__append_4151) $(am__append_4158) \ - $(am__append_4165) $(am__append_4172) $(am__append_4179) \ - $(am__append_4186) $(am__append_4193) $(am__append_4200) \ - $(am__append_4207) $(am__append_4214) $(am__append_4221) \ - $(am__append_4228) $(am__append_4235) $(am__append_4242) \ - $(am__append_4249) $(am__append_4256) $(am__append_4263) \ - $(nodist_gfxterm_background_module_SOURCES) \ - gfxterm_background.marker $(am__append_4270) \ - $(am__append_4277) $(am__append_4284) $(am__append_4291) \ - $(am__append_4298) $(am__append_4305) $(am__append_4312) \ - $(am__append_4319) $(am__append_4326) $(am__append_4333) \ - $(am__append_4340) $(am__append_4347) $(am__append_4354) \ - $(am__append_4361) $(am__append_4368) $(am__append_4375) \ - $(am__append_4382) $(am__append_4389) $(am__append_4396) \ - $(am__append_4403) $(am__append_4410) $(am__append_4417) \ - $(am__append_4424) $(am__append_4431) $(am__append_4438) \ - $(am__append_4445) $(am__append_4452) $(am__append_4459) \ - $(am__append_4466) $(am__append_4473) $(am__append_4480) \ - $(am__append_4487) $(am__append_4494) $(am__append_4501) \ - $(am__append_4508) $(am__append_4515) $(am__append_4522) \ - $(am__append_4529) $(am__append_4536) $(am__append_4543) \ - $(am__append_4550) $(am__append_4557) $(am__append_4564) \ - $(am__append_4571) $(am__append_4578) $(am__append_4585) \ - $(am__append_4592) $(am__append_4599) $(am__append_4606) \ - $(am__append_4613) $(am__append_4620) $(am__append_4627) \ - $(am__append_4634) $(am__append_4641) $(am__append_4648) \ - $(nodist_functional_test_module_SOURCES) \ - functional_test.marker $(nodist_exfctest_module_SOURCES) \ - exfctest.marker $(nodist_strtoull_test_module_SOURCES) \ - strtoull_test.marker $(nodist_setjmp_test_module_SOURCES) \ - setjmp_test.marker $(nodist_signature_test_module_SOURCES) \ - signature_test.marker $(nodist_sleep_test_module_SOURCES) \ - sleep_test.marker $(nodist_xnu_uuid_test_module_SOURCES) \ - xnu_uuid_test.marker $(nodist_pbkdf2_test_module_SOURCES) \ - pbkdf2_test.marker $(am__append_4655) $(am__append_4662) \ - $(am__append_4669) $(am__append_4676) $(am__append_4683) \ - $(am__append_4690) $(am__append_4697) $(am__append_4704) \ - $(am__append_4711) $(am__append_4718) $(am__append_4725) \ - $(am__append_4732) $(am__append_4739) $(am__append_4746) \ - $(am__append_4753) $(am__append_4760) $(am__append_4767) \ - $(am__append_4774) $(am__append_4781) $(am__append_4788) \ - $(am__append_4795) $(am__append_4802) $(am__append_4809) \ - $(am__append_4816) $(am__append_4823) \ - $(nodist_div_test_module_SOURCES) div_test.marker \ - $(nodist_mul_test_module_SOURCES) mul_test.marker \ - $(nodist_shift_test_module_SOURCES) shift_test.marker \ - $(nodist_cmp_test_module_SOURCES) cmp_test.marker \ - $(nodist_ctz_test_module_SOURCES) ctz_test.marker \ - $(nodist_bswap_test_module_SOURCES) bswap_test.marker \ - $(nodist_videotest_checksum_module_SOURCES) \ - videotest_checksum.marker \ - $(nodist_gfxterm_menu_module_SOURCES) gfxterm_menu.marker \ - $(nodist_cmdline_cat_test_module_SOURCES) \ - cmdline_cat_test.marker $(nodist_bitmap_module_SOURCES) \ - bitmap.marker $(nodist_bitmap_scale_module_SOURCES) \ - bitmap_scale.marker $(am__append_4830) $(am__append_4837) \ - $(am__append_4844) $(am__append_4851) $(am__append_4858) \ - $(am__append_4865) $(am__append_4872) $(am__append_4879) \ - $(am__append_4886) $(nodist_jpeg_module_SOURCES) jpeg.marker \ - $(nodist_png_module_SOURCES) png.marker \ - $(nodist_tga_module_SOURCES) tga.marker $(am__append_4893) \ - $(am__append_4900) $(am__append_4907) $(am__append_4914) \ - $(am__append_4921) $(am__append_4928) $(am__append_4935) \ - $(am__append_4942) $(am__append_4949) $(am__append_4956) \ - $(am__append_4963) $(am__append_4970) $(am__append_4977) \ - $(am__append_4984) $(am__append_4991) $(am__append_4998) \ - $(am__append_5005) $(am__append_5012) $(am__append_5019) \ - $(am__append_5026) $(am__append_5033) $(am__append_5040) \ - $(am__append_5047) $(am__append_5054) $(am__append_5061) \ - $(am__append_5068) $(am__append_5075) $(am__append_5082) \ - $(am__append_5089) $(am__append_5096) $(am__append_5103) \ - $(am__append_5110) $(am__append_5117) $(am__append_5124) \ - $(am__append_5131) $(am__append_5138) $(am__append_5145) \ - $(am__append_5152) $(am__append_5159) $(am__append_5166) \ - $(am__append_5173) $(nodist_video_colors_module_SOURCES) \ - video_colors.marker $(am__append_5180) $(am__append_5187) \ - $(nodist_datehook_module_SOURCES) datehook.marker \ - $(nodist_net_module_SOURCES) net.marker \ - $(nodist_tftp_module_SOURCES) tftp.marker \ - $(nodist_http_module_SOURCES) http.marker $(am__append_5194) \ - $(am__append_5201) $(am__append_5208) $(am__append_5215) \ - $(am__append_5222) $(am__append_5229) $(am__append_5236) \ - $(am__append_5243) $(am__append_5250) $(am__append_5257) \ - $(am__append_5264) $(am__append_5271) $(am__append_5278) \ - $(am__append_5285) $(am__append_5292) $(am__append_5299) \ - $(am__append_5306) $(am__append_5313) \ - $(nodist_syslinuxcfg_module_SOURCES) syslinuxcfg.marker \ - $(nodist_test_blockarg_module_SOURCES) test_blockarg.marker \ - $(nodist_xzio_module_SOURCES) xzio.marker \ - $(nodist_lzopio_module_SOURCES) lzopio.marker \ - $(nodist_testload_module_SOURCES) testload.marker \ - $(am__append_5320) $(am__append_5327) $(am__append_5334) \ - $(am__append_5341) $(am__append_5348) $(am__append_5355) \ - $(am__append_5362) $(am__append_5369) $(am__append_5376) \ - $(am__append_5383) $(am__append_5390) $(am__append_5397) \ - $(am__append_5404) $(am__append_5411) $(am__append_5418) \ - $(am__append_5425) $(am__append_5432) \ - $(nodist_priority_queue_module_SOURCES) priority_queue.marker \ - $(nodist_time_module_SOURCES) time.marker $(am__append_5439) \ - $(am__append_5446) $(nodist_adler32_module_SOURCES) \ - adler32.marker $(nodist_crc64_module_SOURCES) crc64.marker \ - $(nodist_mpi_module_SOURCES) mpi.marker \ - $(nodist_all_video_module_SOURCES) all_video.marker \ - $(am__append_5453) $(am__append_5460) $(am__append_5467) \ - $(am__append_5474) $(am__append_5481) $(am__append_5488) \ - $(nodist_testspeed_module_SOURCES) testspeed.marker \ - $(am__append_5495) $(nodist_tr_module_SOURCES) tr.marker \ - $(nodist_progress_module_SOURCES) progress.marker \ - $(nodist_file_module_SOURCES) file.marker $(am__append_5502) \ - $(am__append_5509) $(am__append_5516) $(am__append_5523) \ - $(am__append_5530) $(am__append_5537) $(am__append_5544) \ - $(am__append_5551) $(am__append_5558) $(am__append_5565) \ - $(am__append_5572) $(am__append_5579) $(am__append_5586) \ - $(am__append_5593) $(nodist_gcry_arcfour_module_SOURCES) \ - gcry_arcfour.marker $(nodist_gcry_blowfish_module_SOURCES) \ - gcry_blowfish.marker $(nodist_gcry_camellia_module_SOURCES) \ - gcry_camellia.marker $(nodist_gcry_cast5_module_SOURCES) \ - gcry_cast5.marker $(nodist_gcry_crc_module_SOURCES) \ - gcry_crc.marker $(nodist_gcry_des_module_SOURCES) \ - gcry_des.marker $(nodist_gcry_dsa_module_SOURCES) \ - gcry_dsa.marker $(nodist_gcry_idea_module_SOURCES) \ - gcry_idea.marker $(nodist_gcry_md4_module_SOURCES) \ - gcry_md4.marker $(nodist_gcry_md5_module_SOURCES) \ - gcry_md5.marker $(nodist_gcry_rfc2268_module_SOURCES) \ - gcry_rfc2268.marker $(nodist_gcry_rijndael_module_SOURCES) \ - gcry_rijndael.marker $(nodist_gcry_rmd160_module_SOURCES) \ - gcry_rmd160.marker $(nodist_gcry_rsa_module_SOURCES) \ - gcry_rsa.marker $(nodist_gcry_seed_module_SOURCES) \ - gcry_seed.marker $(nodist_gcry_serpent_module_SOURCES) \ - gcry_serpent.marker $(nodist_gcry_sha1_module_SOURCES) \ - gcry_sha1.marker $(nodist_gcry_sha256_module_SOURCES) \ - gcry_sha256.marker $(nodist_gcry_sha512_module_SOURCES) \ - gcry_sha512.marker $(nodist_gcry_tiger_module_SOURCES) \ - gcry_tiger.marker $(nodist_gcry_twofish_module_SOURCES) \ - gcry_twofish.marker $(nodist_gcry_whirlpool_module_SOURCES) \ - gcry_whirlpool.marker $(am__append_5599) $(am__append_5604) \ - $(am__append_5609) $(am__append_5614) $(am__append_5619) \ - $(am__append_5624) $(am__append_5629) $(am__append_5634) \ - $(am__append_5639) $(am__append_5644) $(am__append_5649) \ - $(am__append_5654) $(am__append_5659) $(am__append_5664) \ - $(am__append_5669) $(am__append_5674) $(am__append_5679) \ - $(am__append_5684) $(am__append_5689) $(am__append_5694) \ - $(am__append_5699) $(am__append_5704) $(am__append_5709) \ - $(am__append_5714) $(am__append_5719) $(am__append_5724) \ - $(am__append_5729) $(am__append_5734) $(am__append_5739) \ - $(am__append_5744) $(am__append_5749) $(am__append_5754) \ - $(am__append_5759) $(am__append_5764) $(am__append_5769) \ - $(am__append_5774) $(am__append_5779) $(am__append_5784) \ - $(am__append_5789) $(am__append_5793) $(am__append_5796) \ - gensyminfo.sh genmod.sh modinfo.sh gmodule.pl gdb_grub \ - $(am__append_5798) symlist.h symlist.c kernel_syms.lst \ - $(am__append_5830) fs.lst command.lst partmap.lst terminal.lst \ - fdt.lst parttool.lst video.lst crypto.lst config.log \ - syminfo.lst moddep.lst $(MOD_FILES) $(am__append_5832) -BUILT_SOURCES = $(nodist_disk_module_SOURCES) \ - $(nodist_trig_module_SOURCES) $(am__append_6) $(am__append_13) \ - $(am__append_20) $(am__append_27) $(am__append_34) \ - $(am__append_41) $(am__append_48) $(am__append_55) \ - $(am__append_62) $(am__append_69) $(am__append_76) \ - $(am__append_83) $(am__append_90) $(am__append_97) \ - $(am__append_104) $(am__append_111) $(am__append_118) \ - $(am__append_125) $(am__append_132) $(am__append_139) \ - $(am__append_146) $(am__append_153) $(am__append_160) \ - $(am__append_167) $(am__append_174) $(am__append_181) \ - $(am__append_188) $(am__append_195) $(am__append_202) \ - $(am__append_209) $(am__append_216) $(am__append_223) \ - $(am__append_230) $(am__append_237) $(am__append_244) \ - $(am__append_251) $(am__append_258) $(am__append_265) \ - $(am__append_272) $(am__append_279) $(am__append_286) \ - $(am__append_293) $(am__append_300) $(am__append_307) \ - $(am__append_314) $(am__append_321) $(am__append_328) \ - $(am__append_335) $(am__append_342) $(am__append_349) \ - $(am__append_356) $(am__append_363) $(am__append_370) \ - $(am__append_377) $(am__append_384) $(am__append_391) \ - $(am__append_398) $(am__append_405) $(am__append_412) \ - $(am__append_419) $(am__append_426) $(am__append_433) \ - $(am__append_440) $(am__append_447) $(am__append_454) \ - $(am__append_461) $(am__append_468) $(am__append_475) \ - $(am__append_482) $(am__append_489) $(am__append_496) \ - $(am__append_503) $(am__append_510) $(am__append_517) \ - $(am__append_524) $(am__append_531) $(am__append_538) \ - $(am__append_545) $(am__append_552) $(am__append_559) \ - $(am__append_566) $(am__append_573) $(am__append_580) \ - $(am__append_587) $(am__append_594) $(am__append_601) \ - $(am__append_608) $(am__append_615) $(am__append_622) \ - $(am__append_629) $(am__append_636) $(am__append_643) \ - $(am__append_650) $(am__append_657) $(am__append_664) \ - $(am__append_671) $(am__append_678) $(am__append_685) \ - $(am__append_692) $(am__append_699) $(am__append_706) \ - $(am__append_713) $(am__append_720) $(am__append_727) \ - $(am__append_734) $(am__append_741) $(am__append_748) \ - $(am__append_755) $(am__append_762) $(am__append_769) \ - $(am__append_776) $(am__append_783) $(am__append_790) \ - $(am__append_797) $(am__append_804) $(am__append_811) \ - $(am__append_818) $(am__append_825) $(am__append_832) \ - $(am__append_839) $(am__append_846) $(am__append_853) \ - $(am__append_860) $(am__append_867) $(am__append_874) \ - $(am__append_881) $(am__append_888) $(am__append_895) \ - $(am__append_902) $(am__append_909) $(am__append_916) \ - $(am__append_923) $(am__append_930) $(am__append_937) \ - $(am__append_944) $(am__append_951) $(am__append_958) \ - $(am__append_965) $(am__append_972) $(am__append_979) \ - $(am__append_986) $(am__append_993) $(am__append_1000) \ - $(am__append_1007) $(am__append_1014) $(am__append_1021) \ - $(am__append_1028) $(nodist_regexp_module_SOURCES) \ - $(am__append_1035) $(am__append_1042) $(am__append_1049) \ - $(am__append_1056) $(am__append_1063) $(am__append_1070) \ - $(am__append_1077) $(am__append_1084) $(am__append_1091) \ - $(am__append_1098) $(am__append_1105) $(am__append_1112) \ - $(am__append_1119) $(am__append_1126) $(am__append_1133) \ - $(am__append_1140) $(am__append_1147) $(am__append_1154) \ - $(am__append_1161) $(am__append_1168) $(am__append_1175) \ - $(am__append_1182) $(am__append_1189) $(am__append_1196) \ - $(am__append_1203) $(am__append_1210) $(am__append_1217) \ - $(am__append_1224) $(am__append_1231) $(am__append_1238) \ - $(am__append_1245) $(am__append_1252) $(am__append_1259) \ - $(am__append_1266) $(am__append_1273) $(am__append_1280) \ - $(am__append_1287) $(am__append_1294) $(am__append_1301) \ - $(am__append_1308) $(am__append_1315) $(am__append_1322) \ - $(am__append_1329) $(am__append_1336) $(am__append_1343) \ - $(am__append_1350) $(am__append_1357) $(am__append_1364) \ - $(am__append_1371) $(am__append_1378) $(am__append_1385) \ - $(am__append_1392) $(am__append_1399) $(am__append_1406) \ - $(am__append_1413) $(nodist_blocklist_module_SOURCES) \ - $(am__append_1420) $(am__append_1427) $(am__append_1434) \ - $(am__append_1441) $(am__append_1448) $(am__append_1455) \ - $(am__append_1462) $(am__append_1469) $(am__append_1476) \ - $(am__append_1483) $(am__append_1490) $(am__append_1497) \ - $(am__append_1504) $(am__append_1511) $(am__append_1518) \ - $(am__append_1525) $(am__append_1532) $(am__append_1539) \ - $(nodist_cat_module_SOURCES) $(nodist_cmp_module_SOURCES) \ - $(nodist_configfile_module_SOURCES) $(am__append_1546) \ - $(am__append_1553) $(am__append_1560) $(am__append_1567) \ - $(am__append_1574) $(am__append_1581) $(am__append_1588) \ - $(am__append_1595) $(am__append_1602) $(am__append_1609) \ - $(nodist_date_module_SOURCES) $(am__append_1616) \ - $(nodist_echo_module_SOURCES) $(nodist_eval_module_SOURCES) \ - $(am__append_1623) $(am__append_1630) $(am__append_1637) \ - $(am__append_1644) $(am__append_1651) $(am__append_1658) \ - $(am__append_1665) $(am__append_1672) $(am__append_1679) \ - $(am__append_1686) $(am__append_1693) $(am__append_1700) \ - $(am__append_1707) $(am__append_1714) \ - $(nodist_gptsync_module_SOURCES) $(am__append_1721) \ - $(am__append_1728) $(am__append_1735) $(am__append_1742) \ - $(am__append_1749) $(am__append_1756) $(am__append_1763) \ - $(am__append_1770) $(am__append_1777) $(am__append_1784) \ - $(am__append_1791) $(am__append_1798) $(am__append_1805) \ - $(am__append_1812) $(am__append_1819) $(am__append_1826) \ - $(am__append_1833) $(am__append_1840) $(am__append_1847) \ - $(am__append_1854) $(am__append_1861) $(am__append_1868) \ - $(am__append_1875) $(am__append_1882) $(am__append_1889) \ - $(am__append_1896) $(am__append_1903) $(am__append_1910) \ - $(am__append_1917) $(am__append_1924) $(am__append_1931) \ - $(am__append_1938) $(am__append_1945) $(am__append_1952) \ - $(am__append_1959) $(am__append_1966) $(am__append_1973) \ - $(am__append_1980) $(am__append_1987) $(am__append_1994) \ - $(am__append_2001) $(am__append_2008) $(am__append_2015) \ - $(am__append_2022) $(am__append_2029) $(am__append_2036) \ - $(nodist_hashsum_module_SOURCES) $(nodist_pgp_module_SOURCES) \ - $(nodist_verifiers_module_SOURCES) $(am__append_2043) \ - $(am__append_2050) $(am__append_2057) $(am__append_2064) \ - $(am__append_2071) $(am__append_2078) $(am__append_2085) \ - $(am__append_2092) $(am__append_2099) $(am__append_2106) \ - $(nodist_help_module_SOURCES) $(nodist_hexdump_module_SOURCES) \ - $(nodist_keystatus_module_SOURCES) $(am__append_2113) \ - $(am__append_2120) $(nodist_loadenv_module_SOURCES) \ - $(nodist_ls_module_SOURCES) $(nodist_lsmmap_module_SOURCES) \ - $(am__append_2127) $(am__append_2134) $(am__append_2141) \ - $(am__append_2148) $(am__append_2155) $(am__append_2162) \ - $(am__append_2169) $(am__append_2176) \ - $(nodist_memrw_module_SOURCES) \ - $(nodist_minicmd_module_SOURCES) \ - $(nodist_parttool_module_SOURCES) \ - $(nodist_password_module_SOURCES) \ - $(nodist_password_pbkdf2_module_SOURCES) $(am__append_2183) \ - $(am__append_2190) $(am__append_2197) $(am__append_2204) \ - $(am__append_2211) $(am__append_2218) $(am__append_2225) \ - $(am__append_2232) $(am__append_2239) $(am__append_2246) \ - $(am__append_2253) $(am__append_2260) $(am__append_2267) \ - $(am__append_2274) $(am__append_2281) $(am__append_2288) \ - $(am__append_2295) $(am__append_2302) $(am__append_2309) \ - $(am__append_2316) $(am__append_2323) \ - $(nodist_probe_module_SOURCES) $(nodist_read_module_SOURCES) \ - $(nodist_search_module_SOURCES) \ - $(nodist_search_fs_file_module_SOURCES) \ - $(nodist_search_fs_uuid_module_SOURCES) \ - $(nodist_search_label_module_SOURCES) $(am__append_2330) \ - $(am__append_2337) $(am__append_2344) $(am__append_2351) \ - $(am__append_2358) $(am__append_2365) $(am__append_2372) \ - $(am__append_2379) $(am__append_2386) $(am__append_2393) \ - $(am__append_2400) $(am__append_2407) $(am__append_2414) \ - $(am__append_2421) $(am__append_2428) $(am__append_2435) \ - $(nodist_sleep_module_SOURCES) $(am__append_2442) \ - $(am__append_2449) $(nodist_terminal_module_SOURCES) \ - $(nodist_test_module_SOURCES) $(nodist_true_module_SOURCES) \ - $(am__append_2456) $(am__append_2463) $(am__append_2470) \ - $(am__append_2477) $(am__append_2484) $(am__append_2491) \ - $(am__append_2498) $(am__append_2505) $(am__append_2512) \ - $(nodist_videoinfo_module_SOURCES) \ - $(nodist_videotest_module_SOURCES) \ - $(nodist_xnu_uuid_module_SOURCES) \ - $(nodist_dm_nv_module_SOURCES) \ - $(nodist_loopback_module_SOURCES) \ - $(nodist_cryptodisk_module_SOURCES) \ - $(nodist_luks_module_SOURCES) $(nodist_geli_module_SOURCES) \ - $(nodist_lvm_module_SOURCES) $(nodist_ldm_module_SOURCES) \ - $(nodist_mdraid09_module_SOURCES) \ - $(nodist_mdraid09_be_module_SOURCES) \ - $(nodist_mdraid1x_module_SOURCES) \ - $(nodist_diskfilter_module_SOURCES) \ - $(nodist_raid5rec_module_SOURCES) \ - $(nodist_raid6rec_module_SOURCES) \ - $(nodist_scsi_module_SOURCES) $(nodist_memdisk_module_SOURCES) \ - $(am__append_2519) $(am__append_2526) $(am__append_2533) \ - $(am__append_2540) $(am__append_2547) $(am__append_2554) \ - $(am__append_2561) $(am__append_2568) $(am__append_2575) \ - $(am__append_2582) $(am__append_2589) $(am__append_2596) \ - $(am__append_2603) $(am__append_2610) $(am__append_2617) \ - $(am__append_2624) $(am__append_2631) $(am__append_2638) \ - $(am__append_2645) $(am__append_2652) $(am__append_2659) \ - $(am__append_2666) $(am__append_2673) $(am__append_2680) \ - $(am__append_2687) $(am__append_2694) $(am__append_2701) \ - $(am__append_2708) $(am__append_2715) $(am__append_2722) \ - $(am__append_2729) $(am__append_2736) $(am__append_2743) \ - $(am__append_2750) $(am__append_2757) $(am__append_2764) \ - $(am__append_2771) $(am__append_2778) $(am__append_2785) \ - $(am__append_2792) $(am__append_2799) $(am__append_2806) \ - $(am__append_2813) $(am__append_2820) $(am__append_2827) \ - $(am__append_2834) $(am__append_2841) $(am__append_2848) \ - $(am__append_2855) $(am__append_2862) $(am__append_2869) \ - $(am__append_2876) $(am__append_2883) $(am__append_2890) \ - $(am__append_2897) $(am__append_2904) $(am__append_2911) \ - $(am__append_2918) $(am__append_2925) $(am__append_2932) \ - $(am__append_2939) $(nodist_procfs_module_SOURCES) \ - $(nodist_affs_module_SOURCES) $(nodist_afs_module_SOURCES) \ - $(nodist_bfs_module_SOURCES) $(nodist_zstd_module_SOURCES) \ - $(nodist_btrfs_module_SOURCES) \ - $(nodist_archelp_module_SOURCES) $(nodist_cbfs_module_SOURCES) \ - $(nodist_cpio_module_SOURCES) $(nodist_cpio_be_module_SOURCES) \ - $(nodist_newc_module_SOURCES) $(nodist_odc_module_SOURCES) \ - $(nodist_ext2_module_SOURCES) $(nodist_fat_module_SOURCES) \ - $(nodist_exfat_module_SOURCES) $(nodist_f2fs_module_SOURCES) \ - $(nodist_fshelp_module_SOURCES) $(nodist_hfs_module_SOURCES) \ - $(nodist_hfsplus_module_SOURCES) \ - $(nodist_hfspluscomp_module_SOURCES) \ - $(nodist_iso9660_module_SOURCES) $(nodist_jfs_module_SOURCES) \ - $(nodist_minix_module_SOURCES) $(nodist_minix2_module_SOURCES) \ - $(nodist_minix3_module_SOURCES) \ - $(nodist_minix_be_module_SOURCES) \ - $(nodist_minix2_be_module_SOURCES) \ - $(nodist_minix3_be_module_SOURCES) \ - $(nodist_nilfs2_module_SOURCES) $(nodist_ntfs_module_SOURCES) \ - $(nodist_ntfscomp_module_SOURCES) \ - $(nodist_reiserfs_module_SOURCES) \ - $(nodist_romfs_module_SOURCES) $(nodist_sfs_module_SOURCES) \ - $(nodist_squash4_module_SOURCES) $(nodist_tar_module_SOURCES) \ - $(nodist_udf_module_SOURCES) $(nodist_ufs1_module_SOURCES) \ - $(nodist_ufs1_be_module_SOURCES) $(nodist_ufs2_module_SOURCES) \ - $(nodist_xfs_module_SOURCES) $(nodist_zfs_module_SOURCES) \ - $(nodist_zfscrypt_module_SOURCES) \ - $(nodist_zfsinfo_module_SOURCES) \ - $(nodist_macbless_module_SOURCES) $(am__append_2946) \ - $(nodist_gettext_module_SOURCES) \ - $(nodist_gfxmenu_module_SOURCES) \ - $(nodist_hello_module_SOURCES) $(nodist_gzio_module_SOURCES) \ - $(nodist_offsetio_module_SOURCES) $(am__append_2953) \ - $(am__append_2960) $(am__append_2967) $(am__append_2974) \ - $(am__append_2981) $(am__append_2988) $(am__append_2995) \ - $(am__append_3002) $(am__append_3009) $(am__append_3016) \ - $(am__append_3023) $(am__append_3030) $(am__append_3037) \ - $(am__append_3044) $(am__append_3051) $(am__append_3058) \ - $(am__append_3065) $(am__append_3072) $(am__append_3079) \ - $(am__append_3086) $(nodist_elf_module_SOURCES) \ - $(nodist_crypto_module_SOURCES) \ - $(nodist_pbkdf2_module_SOURCES) $(am__append_3093) \ - $(am__append_3100) $(am__append_3107) $(am__append_3114) \ - $(am__append_3121) $(am__append_3128) $(am__append_3135) \ - $(am__append_3142) $(am__append_3149) $(am__append_3156) \ - $(am__append_3163) $(am__append_3170) $(am__append_3177) \ - $(am__append_3184) $(am__append_3191) $(am__append_3198) \ - $(am__append_3205) $(am__append_3212) $(am__append_3219) \ - $(am__append_3226) $(am__append_3233) $(am__append_3240) \ - $(am__append_3247) $(am__append_3254) $(am__append_3261) \ - $(am__append_3268) $(am__append_3275) $(am__append_3282) \ - $(am__append_3289) $(am__append_3296) $(am__append_3303) \ - $(am__append_3310) $(am__append_3317) $(am__append_3324) \ - $(am__append_3331) $(am__append_3338) \ - $(nodist_setjmp_module_SOURCES) $(am__append_3345) \ - $(am__append_3352) $(am__append_3359) $(am__append_3366) \ - $(am__append_3373) $(am__append_3380) $(am__append_3387) \ - $(am__append_3394) $(am__append_3401) $(am__append_3408) \ - $(am__append_3415) $(am__append_3422) $(am__append_3429) \ - $(am__append_3436) $(am__append_3443) $(am__append_3450) \ - $(am__append_3457) $(am__append_3464) $(am__append_3471) \ - $(am__append_3478) $(am__append_3485) $(am__append_3492) \ - $(am__append_3499) $(am__append_3506) $(am__append_3513) \ - $(am__append_3520) $(am__append_3527) $(am__append_3534) \ - $(am__append_3541) $(am__append_3548) $(am__append_3555) \ - $(am__append_3562) $(am__append_3569) $(am__append_3576) \ - $(am__append_3583) $(am__append_3590) $(am__append_3597) \ - $(am__append_3604) $(am__append_3611) $(am__append_3618) \ - $(am__append_3625) $(am__append_3632) $(am__append_3639) \ - $(am__append_3646) $(am__append_3653) $(am__append_3660) \ - $(am__append_3667) $(am__append_3674) $(am__append_3681) \ - $(am__append_3688) $(am__append_3695) $(am__append_3702) \ - $(am__append_3709) $(am__append_3716) $(am__append_3723) \ - $(am__append_3730) $(am__append_3737) $(am__append_3744) \ - $(am__append_3751) $(am__append_3758) $(am__append_3765) \ - $(am__append_3772) $(am__append_3779) $(am__append_3786) \ - $(am__append_3793) $(am__append_3800) $(am__append_3807) \ - $(am__append_3814) $(am__append_3821) $(am__append_3828) \ - $(am__append_3835) $(am__append_3842) $(am__append_3849) \ - $(am__append_3856) $(am__append_3863) $(am__append_3870) \ - $(am__append_3877) $(am__append_3884) \ - $(nodist_macho_module_SOURCES) $(am__append_3891) \ - $(am__append_3898) $(am__append_3905) $(am__append_3912) \ - $(am__append_3919) $(am__append_3926) $(am__append_3933) \ - $(am__append_3940) $(am__append_3947) $(am__append_3954) \ - $(am__append_3961) $(am__append_3968) $(am__append_3975) \ - $(am__append_3982) $(am__append_3989) $(am__append_3996) \ - $(am__append_4003) $(am__append_4010) $(am__append_4017) \ - $(am__append_4024) $(am__append_4031) $(am__append_4038) \ - $(am__append_4045) $(am__append_4052) $(am__append_4059) \ - $(am__append_4066) $(am__append_4073) \ - $(nodist_normal_module_SOURCES) \ - $(nodist_part_acorn_module_SOURCES) \ - $(nodist_part_amiga_module_SOURCES) \ - $(nodist_part_apple_module_SOURCES) \ - $(nodist_part_gpt_module_SOURCES) \ - $(nodist_part_msdos_module_SOURCES) \ - $(nodist_part_sun_module_SOURCES) \ - $(nodist_part_plan_module_SOURCES) \ - $(nodist_part_dvh_module_SOURCES) \ - $(nodist_part_bsd_module_SOURCES) \ - $(nodist_part_sunpc_module_SOURCES) \ - $(nodist_part_dfly_module_SOURCES) \ - $(nodist_msdospart_module_SOURCES) $(am__append_4080) \ - $(am__append_4087) $(am__append_4094) $(am__append_4101) \ - $(am__append_4108) $(am__append_4115) $(am__append_4122) \ - $(am__append_4129) $(am__append_4136) $(am__append_4143) \ - $(am__append_4150) $(am__append_4157) $(am__append_4164) \ - $(am__append_4171) $(am__append_4178) $(am__append_4185) \ - $(am__append_4192) $(am__append_4199) $(am__append_4206) \ - $(am__append_4213) $(am__append_4220) $(am__append_4227) \ - $(am__append_4234) $(am__append_4241) $(am__append_4248) \ - $(am__append_4255) $(am__append_4262) \ - $(nodist_gfxterm_background_module_SOURCES) $(am__append_4269) \ - $(am__append_4276) $(am__append_4283) $(am__append_4290) \ - $(am__append_4297) $(am__append_4304) $(am__append_4311) \ - $(am__append_4318) $(am__append_4325) $(am__append_4332) \ - $(am__append_4339) $(am__append_4346) $(am__append_4353) \ - $(am__append_4360) $(am__append_4367) $(am__append_4374) \ - $(am__append_4381) $(am__append_4388) $(am__append_4395) \ - $(am__append_4402) $(am__append_4409) $(am__append_4416) \ - $(am__append_4423) $(am__append_4430) $(am__append_4437) \ - $(am__append_4444) $(am__append_4451) $(am__append_4458) \ - $(am__append_4465) $(am__append_4472) $(am__append_4479) \ - $(am__append_4486) $(am__append_4493) $(am__append_4500) \ - $(am__append_4507) $(am__append_4514) $(am__append_4521) \ - $(am__append_4528) $(am__append_4535) $(am__append_4542) \ - $(am__append_4549) $(am__append_4556) $(am__append_4563) \ - $(am__append_4570) $(am__append_4577) $(am__append_4584) \ - $(am__append_4591) $(am__append_4598) $(am__append_4605) \ - $(am__append_4612) $(am__append_4619) $(am__append_4626) \ - $(am__append_4633) $(am__append_4640) $(am__append_4647) \ - $(nodist_functional_test_module_SOURCES) \ - $(nodist_exfctest_module_SOURCES) \ - $(nodist_strtoull_test_module_SOURCES) \ - $(nodist_setjmp_test_module_SOURCES) \ - $(nodist_signature_test_module_SOURCES) \ - $(nodist_sleep_test_module_SOURCES) \ - $(nodist_xnu_uuid_test_module_SOURCES) \ - $(nodist_pbkdf2_test_module_SOURCES) $(am__append_4654) \ - $(am__append_4661) $(am__append_4668) $(am__append_4675) \ - $(am__append_4682) $(am__append_4689) $(am__append_4696) \ - $(am__append_4703) $(am__append_4710) $(am__append_4717) \ - $(am__append_4724) $(am__append_4731) $(am__append_4738) \ - $(am__append_4745) $(am__append_4752) $(am__append_4759) \ - $(am__append_4766) $(am__append_4773) $(am__append_4780) \ - $(am__append_4787) $(am__append_4794) $(am__append_4801) \ - $(am__append_4808) $(am__append_4815) $(am__append_4822) \ - $(nodist_div_test_module_SOURCES) \ - $(nodist_mul_test_module_SOURCES) \ - $(nodist_shift_test_module_SOURCES) \ - $(nodist_cmp_test_module_SOURCES) \ - $(nodist_ctz_test_module_SOURCES) \ - $(nodist_bswap_test_module_SOURCES) \ - $(nodist_videotest_checksum_module_SOURCES) \ - $(nodist_gfxterm_menu_module_SOURCES) \ - $(nodist_cmdline_cat_test_module_SOURCES) \ - $(nodist_bitmap_module_SOURCES) \ - $(nodist_bitmap_scale_module_SOURCES) $(am__append_4829) \ - $(am__append_4836) $(am__append_4843) $(am__append_4850) \ - $(am__append_4857) $(am__append_4864) $(am__append_4871) \ - $(am__append_4878) $(am__append_4885) \ - $(nodist_jpeg_module_SOURCES) $(nodist_png_module_SOURCES) \ - $(nodist_tga_module_SOURCES) $(am__append_4892) \ - $(am__append_4899) $(am__append_4906) $(am__append_4913) \ - $(am__append_4920) $(am__append_4927) $(am__append_4934) \ - $(am__append_4941) $(am__append_4948) $(am__append_4955) \ - $(am__append_4962) $(am__append_4969) $(am__append_4976) \ - $(am__append_4983) $(am__append_4990) $(am__append_4997) \ - $(am__append_5004) $(am__append_5011) $(am__append_5018) \ - $(am__append_5025) $(am__append_5032) $(am__append_5039) \ - $(am__append_5046) $(am__append_5053) $(am__append_5060) \ - $(am__append_5067) $(am__append_5074) $(am__append_5081) \ - $(am__append_5088) $(am__append_5095) $(am__append_5102) \ - $(am__append_5109) $(am__append_5116) $(am__append_5123) \ - $(am__append_5130) $(am__append_5137) $(am__append_5144) \ - $(am__append_5151) $(am__append_5158) $(am__append_5165) \ - $(am__append_5172) $(nodist_video_colors_module_SOURCES) \ - $(am__append_5179) $(am__append_5186) \ - $(nodist_datehook_module_SOURCES) $(nodist_net_module_SOURCES) \ - $(nodist_tftp_module_SOURCES) $(nodist_http_module_SOURCES) \ - $(am__append_5193) $(am__append_5200) $(am__append_5207) \ - $(am__append_5214) $(am__append_5221) $(am__append_5228) \ - $(am__append_5235) $(am__append_5242) $(am__append_5249) \ - $(am__append_5256) $(am__append_5263) $(am__append_5270) \ - $(am__append_5277) $(am__append_5284) $(am__append_5291) \ - $(am__append_5298) $(am__append_5305) $(am__append_5312) \ - $(nodist_syslinuxcfg_module_SOURCES) \ - $(nodist_test_blockarg_module_SOURCES) \ - $(nodist_xzio_module_SOURCES) $(nodist_lzopio_module_SOURCES) \ - $(nodist_testload_module_SOURCES) $(am__append_5319) \ - $(am__append_5326) $(am__append_5333) $(am__append_5340) \ - $(am__append_5347) $(am__append_5354) $(am__append_5361) \ - $(am__append_5368) $(am__append_5375) $(am__append_5382) \ - $(am__append_5389) $(am__append_5396) $(am__append_5403) \ - $(am__append_5410) $(am__append_5417) $(am__append_5424) \ - $(am__append_5431) $(nodist_priority_queue_module_SOURCES) \ - $(nodist_time_module_SOURCES) $(am__append_5438) \ - $(am__append_5445) $(nodist_adler32_module_SOURCES) \ - $(nodist_crc64_module_SOURCES) $(nodist_mpi_module_SOURCES) \ - $(nodist_all_video_module_SOURCES) $(am__append_5452) \ - $(am__append_5459) $(am__append_5466) $(am__append_5473) \ - $(am__append_5480) $(am__append_5487) \ - $(nodist_testspeed_module_SOURCES) $(am__append_5494) \ - $(nodist_tr_module_SOURCES) $(nodist_progress_module_SOURCES) \ - $(nodist_file_module_SOURCES) $(am__append_5501) \ - $(am__append_5508) $(am__append_5515) $(am__append_5522) \ - $(am__append_5529) $(am__append_5536) $(am__append_5543) \ - $(am__append_5550) $(am__append_5557) $(am__append_5564) \ - $(am__append_5571) $(am__append_5578) $(am__append_5585) \ - $(am__append_5592) $(nodist_gcry_arcfour_module_SOURCES) \ - $(nodist_gcry_blowfish_module_SOURCES) \ - $(nodist_gcry_camellia_module_SOURCES) \ - $(nodist_gcry_cast5_module_SOURCES) \ - $(nodist_gcry_crc_module_SOURCES) \ - $(nodist_gcry_des_module_SOURCES) \ - $(nodist_gcry_dsa_module_SOURCES) \ - $(nodist_gcry_idea_module_SOURCES) \ - $(nodist_gcry_md4_module_SOURCES) \ - $(nodist_gcry_md5_module_SOURCES) \ - $(nodist_gcry_rfc2268_module_SOURCES) \ - $(nodist_gcry_rijndael_module_SOURCES) \ - $(nodist_gcry_rmd160_module_SOURCES) \ - $(nodist_gcry_rsa_module_SOURCES) \ - $(nodist_gcry_seed_module_SOURCES) \ - $(nodist_gcry_serpent_module_SOURCES) \ - $(nodist_gcry_sha1_module_SOURCES) \ - $(nodist_gcry_sha256_module_SOURCES) \ - $(nodist_gcry_sha512_module_SOURCES) \ - $(nodist_gcry_tiger_module_SOURCES) \ - $(nodist_gcry_twofish_module_SOURCES) \ - $(nodist_gcry_whirlpool_module_SOURCES) $(am__append_5598) \ - $(am__append_5603) $(am__append_5608) $(am__append_5613) \ - $(am__append_5618) $(am__append_5623) $(am__append_5628) \ - $(am__append_5633) $(am__append_5638) $(am__append_5643) \ - $(am__append_5648) $(am__append_5653) $(am__append_5658) \ - $(am__append_5663) $(am__append_5668) $(am__append_5673) \ - $(am__append_5678) $(am__append_5683) $(am__append_5688) \ - $(am__append_5693) $(am__append_5698) $(am__append_5703) \ - $(am__append_5708) $(am__append_5713) $(am__append_5718) \ - $(am__append_5723) $(am__append_5728) $(am__append_5733) \ - $(am__append_5738) $(am__append_5743) $(am__append_5748) \ - $(am__append_5753) $(am__append_5758) $(am__append_5763) \ - $(am__append_5768) $(am__append_5773) $(am__append_5778) \ - $(am__append_5783) $(am__append_5788) $(am__append_5795) \ - symlist.h symlist.c -MACHO2IMG = $(top_builddir)/grub-macho2img -AM_CFLAGS = $(TARGET_CFLAGS) -AM_LDFLAGS = $(TARGET_LDFLAGS) -AM_CPPFLAGS = $(TARGET_CPPFLAGS) $(CPPFLAGS_DEFAULT) -AM_CCASFLAGS = $(TARGET_CCASFLAGS) $(CCASFLAGS_DEFAULT) -disk_module_SOURCES = lib/disk.c ## platform sources -nodist_disk_module_SOURCES = ## platform nodist sources -disk_module_LDADD = -disk_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -disk_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -disk_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -disk_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -disk_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -trig_module_SOURCES = ## platform sources -nodist_trig_module_SOURCES = trigtables.c ## platform nodist sources -trig_module_LDADD = -trig_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -trig_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -trig_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -trig_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -trig_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_coreboot_TRUE@cs5536_module_SOURCES = bus/cs5536.c ## platform sources -@COND_i386_efi_TRUE@cs5536_module_SOURCES = bus/cs5536.c ## platform sources -@COND_i386_ieee1275_TRUE@cs5536_module_SOURCES = bus/cs5536.c ## platform sources -@COND_i386_multiboot_TRUE@cs5536_module_SOURCES = bus/cs5536.c ## platform sources -@COND_i386_pc_TRUE@cs5536_module_SOURCES = bus/cs5536.c ## platform sources -@COND_i386_qemu_TRUE@cs5536_module_SOURCES = bus/cs5536.c ## platform sources -@COND_x86_64_efi_TRUE@cs5536_module_SOURCES = bus/cs5536.c ## platform sources -@COND_i386_coreboot_TRUE@nodist_cs5536_module_SOURCES = ## platform nodist sources -@COND_i386_efi_TRUE@nodist_cs5536_module_SOURCES = ## platform nodist sources -@COND_i386_ieee1275_TRUE@nodist_cs5536_module_SOURCES = ## platform nodist sources -@COND_i386_multiboot_TRUE@nodist_cs5536_module_SOURCES = ## platform nodist sources -@COND_i386_pc_TRUE@nodist_cs5536_module_SOURCES = ## platform nodist sources -@COND_i386_qemu_TRUE@nodist_cs5536_module_SOURCES = ## platform nodist sources -@COND_x86_64_efi_TRUE@nodist_cs5536_module_SOURCES = ## platform nodist sources -@COND_i386_coreboot_TRUE@cs5536_module_LDADD = -@COND_i386_efi_TRUE@cs5536_module_LDADD = -@COND_i386_ieee1275_TRUE@cs5536_module_LDADD = -@COND_i386_multiboot_TRUE@cs5536_module_LDADD = -@COND_i386_pc_TRUE@cs5536_module_LDADD = -@COND_i386_qemu_TRUE@cs5536_module_LDADD = -@COND_x86_64_efi_TRUE@cs5536_module_LDADD = -@COND_i386_coreboot_TRUE@cs5536_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_efi_TRUE@cs5536_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@cs5536_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_multiboot_TRUE@cs5536_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_pc_TRUE@cs5536_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_qemu_TRUE@cs5536_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_x86_64_efi_TRUE@cs5536_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_coreboot_TRUE@cs5536_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_efi_TRUE@cs5536_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@cs5536_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_multiboot_TRUE@cs5536_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_pc_TRUE@cs5536_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_qemu_TRUE@cs5536_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_x86_64_efi_TRUE@cs5536_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_coreboot_TRUE@cs5536_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_efi_TRUE@cs5536_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@cs5536_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_multiboot_TRUE@cs5536_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_pc_TRUE@cs5536_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_qemu_TRUE@cs5536_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_x86_64_efi_TRUE@cs5536_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_coreboot_TRUE@cs5536_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_efi_TRUE@cs5536_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@cs5536_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_multiboot_TRUE@cs5536_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_pc_TRUE@cs5536_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_qemu_TRUE@cs5536_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_x86_64_efi_TRUE@cs5536_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_coreboot_TRUE@cs5536_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_efi_TRUE@cs5536_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_ieee1275_TRUE@cs5536_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_multiboot_TRUE@cs5536_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_pc_TRUE@cs5536_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_qemu_TRUE@cs5536_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_x86_64_efi_TRUE@cs5536_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_mips_loongson_TRUE@lsspd_module_SOURCES = commands/mips/loongson/lsspd.c ## platform sources -@COND_mips_loongson_TRUE@nodist_lsspd_module_SOURCES = ## platform nodist sources -@COND_mips_loongson_TRUE@lsspd_module_LDADD = -@COND_mips_loongson_TRUE@lsspd_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_mips_loongson_TRUE@lsspd_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_mips_loongson_TRUE@lsspd_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_mips_loongson_TRUE@lsspd_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_mips_loongson_TRUE@lsspd_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_arm_coreboot_TRUE@usb_module_SOURCES = bus/usb/usb.c bus/usb/usbtrans.c bus/usb/usbhub.c ## platform sources -@COND_i386_coreboot_TRUE@usb_module_SOURCES = bus/usb/usb.c bus/usb/usbtrans.c bus/usb/usbhub.c ## platform sources -@COND_i386_efi_TRUE@usb_module_SOURCES = bus/usb/usb.c bus/usb/usbtrans.c bus/usb/usbhub.c ## platform sources -@COND_i386_ieee1275_TRUE@usb_module_SOURCES = bus/usb/usb.c bus/usb/usbtrans.c bus/usb/usbhub.c ## platform sources -@COND_i386_multiboot_TRUE@usb_module_SOURCES = bus/usb/usb.c bus/usb/usbtrans.c bus/usb/usbhub.c ## platform sources -@COND_i386_pc_TRUE@usb_module_SOURCES = bus/usb/usb.c bus/usb/usbtrans.c bus/usb/usbhub.c ## platform sources -@COND_i386_qemu_TRUE@usb_module_SOURCES = bus/usb/usb.c bus/usb/usbtrans.c bus/usb/usbhub.c ## platform sources -@COND_mips_loongson_TRUE@usb_module_SOURCES = bus/usb/usb.c bus/usb/usbtrans.c bus/usb/usbhub.c ## platform sources -@COND_x86_64_efi_TRUE@usb_module_SOURCES = bus/usb/usb.c bus/usb/usbtrans.c bus/usb/usbhub.c ## platform sources -@COND_arm_coreboot_TRUE@nodist_usb_module_SOURCES = ## platform nodist sources -@COND_i386_coreboot_TRUE@nodist_usb_module_SOURCES = ## platform nodist sources -@COND_i386_efi_TRUE@nodist_usb_module_SOURCES = ## platform nodist sources -@COND_i386_ieee1275_TRUE@nodist_usb_module_SOURCES = ## platform nodist sources -@COND_i386_multiboot_TRUE@nodist_usb_module_SOURCES = ## platform nodist sources -@COND_i386_pc_TRUE@nodist_usb_module_SOURCES = ## platform nodist sources -@COND_i386_qemu_TRUE@nodist_usb_module_SOURCES = ## platform nodist sources -@COND_mips_loongson_TRUE@nodist_usb_module_SOURCES = ## platform nodist sources -@COND_x86_64_efi_TRUE@nodist_usb_module_SOURCES = ## platform nodist sources -@COND_arm_coreboot_TRUE@usb_module_LDADD = -@COND_i386_coreboot_TRUE@usb_module_LDADD = -@COND_i386_efi_TRUE@usb_module_LDADD = -@COND_i386_ieee1275_TRUE@usb_module_LDADD = -@COND_i386_multiboot_TRUE@usb_module_LDADD = -@COND_i386_pc_TRUE@usb_module_LDADD = -@COND_i386_qemu_TRUE@usb_module_LDADD = -@COND_mips_loongson_TRUE@usb_module_LDADD = -@COND_x86_64_efi_TRUE@usb_module_LDADD = -@COND_arm_coreboot_TRUE@usb_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_coreboot_TRUE@usb_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_efi_TRUE@usb_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@usb_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_multiboot_TRUE@usb_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_pc_TRUE@usb_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_qemu_TRUE@usb_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_mips_loongson_TRUE@usb_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_x86_64_efi_TRUE@usb_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_arm_coreboot_TRUE@usb_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_coreboot_TRUE@usb_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_efi_TRUE@usb_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@usb_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_multiboot_TRUE@usb_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_pc_TRUE@usb_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_qemu_TRUE@usb_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_mips_loongson_TRUE@usb_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_x86_64_efi_TRUE@usb_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_arm_coreboot_TRUE@usb_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_coreboot_TRUE@usb_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_efi_TRUE@usb_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@usb_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_multiboot_TRUE@usb_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_pc_TRUE@usb_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_qemu_TRUE@usb_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_mips_loongson_TRUE@usb_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_x86_64_efi_TRUE@usb_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_arm_coreboot_TRUE@usb_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_coreboot_TRUE@usb_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_efi_TRUE@usb_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@usb_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_multiboot_TRUE@usb_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_pc_TRUE@usb_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_qemu_TRUE@usb_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_mips_loongson_TRUE@usb_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_x86_64_efi_TRUE@usb_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_arm_coreboot_TRUE@usb_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_coreboot_TRUE@usb_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_efi_TRUE@usb_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_ieee1275_TRUE@usb_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_multiboot_TRUE@usb_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_pc_TRUE@usb_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_qemu_TRUE@usb_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_mips_loongson_TRUE@usb_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_x86_64_efi_TRUE@usb_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_arm_coreboot_TRUE@usbserial_common_module_SOURCES = bus/usb/serial/common.c ## platform sources -@COND_i386_coreboot_TRUE@usbserial_common_module_SOURCES = bus/usb/serial/common.c ## platform sources -@COND_i386_efi_TRUE@usbserial_common_module_SOURCES = bus/usb/serial/common.c ## platform sources -@COND_i386_ieee1275_TRUE@usbserial_common_module_SOURCES = bus/usb/serial/common.c ## platform sources -@COND_i386_multiboot_TRUE@usbserial_common_module_SOURCES = bus/usb/serial/common.c ## platform sources -@COND_i386_pc_TRUE@usbserial_common_module_SOURCES = bus/usb/serial/common.c ## platform sources -@COND_i386_qemu_TRUE@usbserial_common_module_SOURCES = bus/usb/serial/common.c ## platform sources -@COND_mips_loongson_TRUE@usbserial_common_module_SOURCES = bus/usb/serial/common.c ## platform sources -@COND_x86_64_efi_TRUE@usbserial_common_module_SOURCES = bus/usb/serial/common.c ## platform sources -@COND_arm_coreboot_TRUE@nodist_usbserial_common_module_SOURCES = ## platform nodist sources -@COND_i386_coreboot_TRUE@nodist_usbserial_common_module_SOURCES = ## platform nodist sources -@COND_i386_efi_TRUE@nodist_usbserial_common_module_SOURCES = ## platform nodist sources -@COND_i386_ieee1275_TRUE@nodist_usbserial_common_module_SOURCES = ## platform nodist sources -@COND_i386_multiboot_TRUE@nodist_usbserial_common_module_SOURCES = ## platform nodist sources -@COND_i386_pc_TRUE@nodist_usbserial_common_module_SOURCES = ## platform nodist sources -@COND_i386_qemu_TRUE@nodist_usbserial_common_module_SOURCES = ## platform nodist sources -@COND_mips_loongson_TRUE@nodist_usbserial_common_module_SOURCES = ## platform nodist sources -@COND_x86_64_efi_TRUE@nodist_usbserial_common_module_SOURCES = ## platform nodist sources -@COND_arm_coreboot_TRUE@usbserial_common_module_LDADD = -@COND_i386_coreboot_TRUE@usbserial_common_module_LDADD = -@COND_i386_efi_TRUE@usbserial_common_module_LDADD = -@COND_i386_ieee1275_TRUE@usbserial_common_module_LDADD = -@COND_i386_multiboot_TRUE@usbserial_common_module_LDADD = -@COND_i386_pc_TRUE@usbserial_common_module_LDADD = -@COND_i386_qemu_TRUE@usbserial_common_module_LDADD = -@COND_mips_loongson_TRUE@usbserial_common_module_LDADD = -@COND_x86_64_efi_TRUE@usbserial_common_module_LDADD = -@COND_arm_coreboot_TRUE@usbserial_common_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_coreboot_TRUE@usbserial_common_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_efi_TRUE@usbserial_common_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@usbserial_common_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_multiboot_TRUE@usbserial_common_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_pc_TRUE@usbserial_common_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_qemu_TRUE@usbserial_common_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_mips_loongson_TRUE@usbserial_common_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_x86_64_efi_TRUE@usbserial_common_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_arm_coreboot_TRUE@usbserial_common_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_coreboot_TRUE@usbserial_common_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_efi_TRUE@usbserial_common_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@usbserial_common_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_multiboot_TRUE@usbserial_common_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_pc_TRUE@usbserial_common_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_qemu_TRUE@usbserial_common_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_mips_loongson_TRUE@usbserial_common_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_x86_64_efi_TRUE@usbserial_common_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_arm_coreboot_TRUE@usbserial_common_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_coreboot_TRUE@usbserial_common_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_efi_TRUE@usbserial_common_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@usbserial_common_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_multiboot_TRUE@usbserial_common_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_pc_TRUE@usbserial_common_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_qemu_TRUE@usbserial_common_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_mips_loongson_TRUE@usbserial_common_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_x86_64_efi_TRUE@usbserial_common_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_arm_coreboot_TRUE@usbserial_common_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_coreboot_TRUE@usbserial_common_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_efi_TRUE@usbserial_common_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@usbserial_common_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_multiboot_TRUE@usbserial_common_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_pc_TRUE@usbserial_common_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_qemu_TRUE@usbserial_common_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_mips_loongson_TRUE@usbserial_common_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_x86_64_efi_TRUE@usbserial_common_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_arm_coreboot_TRUE@usbserial_common_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_coreboot_TRUE@usbserial_common_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_efi_TRUE@usbserial_common_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_ieee1275_TRUE@usbserial_common_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_multiboot_TRUE@usbserial_common_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_pc_TRUE@usbserial_common_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_qemu_TRUE@usbserial_common_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_mips_loongson_TRUE@usbserial_common_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_x86_64_efi_TRUE@usbserial_common_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_arm_coreboot_TRUE@usbserial_pl2303_module_SOURCES = bus/usb/serial/pl2303.c ## platform sources -@COND_i386_coreboot_TRUE@usbserial_pl2303_module_SOURCES = bus/usb/serial/pl2303.c ## platform sources -@COND_i386_efi_TRUE@usbserial_pl2303_module_SOURCES = bus/usb/serial/pl2303.c ## platform sources -@COND_i386_ieee1275_TRUE@usbserial_pl2303_module_SOURCES = bus/usb/serial/pl2303.c ## platform sources -@COND_i386_multiboot_TRUE@usbserial_pl2303_module_SOURCES = bus/usb/serial/pl2303.c ## platform sources -@COND_i386_pc_TRUE@usbserial_pl2303_module_SOURCES = bus/usb/serial/pl2303.c ## platform sources -@COND_i386_qemu_TRUE@usbserial_pl2303_module_SOURCES = bus/usb/serial/pl2303.c ## platform sources -@COND_mips_loongson_TRUE@usbserial_pl2303_module_SOURCES = bus/usb/serial/pl2303.c ## platform sources -@COND_x86_64_efi_TRUE@usbserial_pl2303_module_SOURCES = bus/usb/serial/pl2303.c ## platform sources -@COND_arm_coreboot_TRUE@nodist_usbserial_pl2303_module_SOURCES = ## platform nodist sources -@COND_i386_coreboot_TRUE@nodist_usbserial_pl2303_module_SOURCES = ## platform nodist sources -@COND_i386_efi_TRUE@nodist_usbserial_pl2303_module_SOURCES = ## platform nodist sources -@COND_i386_ieee1275_TRUE@nodist_usbserial_pl2303_module_SOURCES = ## platform nodist sources -@COND_i386_multiboot_TRUE@nodist_usbserial_pl2303_module_SOURCES = ## platform nodist sources -@COND_i386_pc_TRUE@nodist_usbserial_pl2303_module_SOURCES = ## platform nodist sources -@COND_i386_qemu_TRUE@nodist_usbserial_pl2303_module_SOURCES = ## platform nodist sources -@COND_mips_loongson_TRUE@nodist_usbserial_pl2303_module_SOURCES = ## platform nodist sources -@COND_x86_64_efi_TRUE@nodist_usbserial_pl2303_module_SOURCES = ## platform nodist sources -@COND_arm_coreboot_TRUE@usbserial_pl2303_module_LDADD = -@COND_i386_coreboot_TRUE@usbserial_pl2303_module_LDADD = -@COND_i386_efi_TRUE@usbserial_pl2303_module_LDADD = -@COND_i386_ieee1275_TRUE@usbserial_pl2303_module_LDADD = -@COND_i386_multiboot_TRUE@usbserial_pl2303_module_LDADD = -@COND_i386_pc_TRUE@usbserial_pl2303_module_LDADD = -@COND_i386_qemu_TRUE@usbserial_pl2303_module_LDADD = -@COND_mips_loongson_TRUE@usbserial_pl2303_module_LDADD = -@COND_x86_64_efi_TRUE@usbserial_pl2303_module_LDADD = -@COND_arm_coreboot_TRUE@usbserial_pl2303_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_coreboot_TRUE@usbserial_pl2303_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_efi_TRUE@usbserial_pl2303_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@usbserial_pl2303_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_multiboot_TRUE@usbserial_pl2303_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_pc_TRUE@usbserial_pl2303_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_qemu_TRUE@usbserial_pl2303_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_mips_loongson_TRUE@usbserial_pl2303_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_x86_64_efi_TRUE@usbserial_pl2303_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_arm_coreboot_TRUE@usbserial_pl2303_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_coreboot_TRUE@usbserial_pl2303_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_efi_TRUE@usbserial_pl2303_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@usbserial_pl2303_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_multiboot_TRUE@usbserial_pl2303_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_pc_TRUE@usbserial_pl2303_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_qemu_TRUE@usbserial_pl2303_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_mips_loongson_TRUE@usbserial_pl2303_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_x86_64_efi_TRUE@usbserial_pl2303_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_arm_coreboot_TRUE@usbserial_pl2303_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_coreboot_TRUE@usbserial_pl2303_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_efi_TRUE@usbserial_pl2303_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@usbserial_pl2303_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_multiboot_TRUE@usbserial_pl2303_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_pc_TRUE@usbserial_pl2303_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_qemu_TRUE@usbserial_pl2303_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_mips_loongson_TRUE@usbserial_pl2303_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_x86_64_efi_TRUE@usbserial_pl2303_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_arm_coreboot_TRUE@usbserial_pl2303_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_coreboot_TRUE@usbserial_pl2303_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_efi_TRUE@usbserial_pl2303_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@usbserial_pl2303_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_multiboot_TRUE@usbserial_pl2303_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_pc_TRUE@usbserial_pl2303_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_qemu_TRUE@usbserial_pl2303_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_mips_loongson_TRUE@usbserial_pl2303_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_x86_64_efi_TRUE@usbserial_pl2303_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_arm_coreboot_TRUE@usbserial_pl2303_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_coreboot_TRUE@usbserial_pl2303_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_efi_TRUE@usbserial_pl2303_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_ieee1275_TRUE@usbserial_pl2303_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_multiboot_TRUE@usbserial_pl2303_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_pc_TRUE@usbserial_pl2303_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_qemu_TRUE@usbserial_pl2303_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_mips_loongson_TRUE@usbserial_pl2303_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_x86_64_efi_TRUE@usbserial_pl2303_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_arm_coreboot_TRUE@usbserial_ftdi_module_SOURCES = bus/usb/serial/ftdi.c ## platform sources -@COND_i386_coreboot_TRUE@usbserial_ftdi_module_SOURCES = bus/usb/serial/ftdi.c ## platform sources -@COND_i386_efi_TRUE@usbserial_ftdi_module_SOURCES = bus/usb/serial/ftdi.c ## platform sources -@COND_i386_ieee1275_TRUE@usbserial_ftdi_module_SOURCES = bus/usb/serial/ftdi.c ## platform sources -@COND_i386_multiboot_TRUE@usbserial_ftdi_module_SOURCES = bus/usb/serial/ftdi.c ## platform sources -@COND_i386_pc_TRUE@usbserial_ftdi_module_SOURCES = bus/usb/serial/ftdi.c ## platform sources -@COND_i386_qemu_TRUE@usbserial_ftdi_module_SOURCES = bus/usb/serial/ftdi.c ## platform sources -@COND_mips_loongson_TRUE@usbserial_ftdi_module_SOURCES = bus/usb/serial/ftdi.c ## platform sources -@COND_x86_64_efi_TRUE@usbserial_ftdi_module_SOURCES = bus/usb/serial/ftdi.c ## platform sources -@COND_arm_coreboot_TRUE@nodist_usbserial_ftdi_module_SOURCES = ## platform nodist sources -@COND_i386_coreboot_TRUE@nodist_usbserial_ftdi_module_SOURCES = ## platform nodist sources -@COND_i386_efi_TRUE@nodist_usbserial_ftdi_module_SOURCES = ## platform nodist sources -@COND_i386_ieee1275_TRUE@nodist_usbserial_ftdi_module_SOURCES = ## platform nodist sources -@COND_i386_multiboot_TRUE@nodist_usbserial_ftdi_module_SOURCES = ## platform nodist sources -@COND_i386_pc_TRUE@nodist_usbserial_ftdi_module_SOURCES = ## platform nodist sources -@COND_i386_qemu_TRUE@nodist_usbserial_ftdi_module_SOURCES = ## platform nodist sources -@COND_mips_loongson_TRUE@nodist_usbserial_ftdi_module_SOURCES = ## platform nodist sources -@COND_x86_64_efi_TRUE@nodist_usbserial_ftdi_module_SOURCES = ## platform nodist sources -@COND_arm_coreboot_TRUE@usbserial_ftdi_module_LDADD = -@COND_i386_coreboot_TRUE@usbserial_ftdi_module_LDADD = -@COND_i386_efi_TRUE@usbserial_ftdi_module_LDADD = -@COND_i386_ieee1275_TRUE@usbserial_ftdi_module_LDADD = -@COND_i386_multiboot_TRUE@usbserial_ftdi_module_LDADD = -@COND_i386_pc_TRUE@usbserial_ftdi_module_LDADD = -@COND_i386_qemu_TRUE@usbserial_ftdi_module_LDADD = -@COND_mips_loongson_TRUE@usbserial_ftdi_module_LDADD = -@COND_x86_64_efi_TRUE@usbserial_ftdi_module_LDADD = -@COND_arm_coreboot_TRUE@usbserial_ftdi_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_coreboot_TRUE@usbserial_ftdi_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_efi_TRUE@usbserial_ftdi_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@usbserial_ftdi_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_multiboot_TRUE@usbserial_ftdi_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_pc_TRUE@usbserial_ftdi_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_qemu_TRUE@usbserial_ftdi_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_mips_loongson_TRUE@usbserial_ftdi_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_x86_64_efi_TRUE@usbserial_ftdi_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_arm_coreboot_TRUE@usbserial_ftdi_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_coreboot_TRUE@usbserial_ftdi_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_efi_TRUE@usbserial_ftdi_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@usbserial_ftdi_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_multiboot_TRUE@usbserial_ftdi_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_pc_TRUE@usbserial_ftdi_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_qemu_TRUE@usbserial_ftdi_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_mips_loongson_TRUE@usbserial_ftdi_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_x86_64_efi_TRUE@usbserial_ftdi_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_arm_coreboot_TRUE@usbserial_ftdi_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_coreboot_TRUE@usbserial_ftdi_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_efi_TRUE@usbserial_ftdi_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@usbserial_ftdi_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_multiboot_TRUE@usbserial_ftdi_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_pc_TRUE@usbserial_ftdi_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_qemu_TRUE@usbserial_ftdi_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_mips_loongson_TRUE@usbserial_ftdi_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_x86_64_efi_TRUE@usbserial_ftdi_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_arm_coreboot_TRUE@usbserial_ftdi_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_coreboot_TRUE@usbserial_ftdi_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_efi_TRUE@usbserial_ftdi_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@usbserial_ftdi_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_multiboot_TRUE@usbserial_ftdi_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_pc_TRUE@usbserial_ftdi_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_qemu_TRUE@usbserial_ftdi_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_mips_loongson_TRUE@usbserial_ftdi_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_x86_64_efi_TRUE@usbserial_ftdi_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_arm_coreboot_TRUE@usbserial_ftdi_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_coreboot_TRUE@usbserial_ftdi_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_efi_TRUE@usbserial_ftdi_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_ieee1275_TRUE@usbserial_ftdi_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_multiboot_TRUE@usbserial_ftdi_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_pc_TRUE@usbserial_ftdi_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_qemu_TRUE@usbserial_ftdi_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_mips_loongson_TRUE@usbserial_ftdi_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_x86_64_efi_TRUE@usbserial_ftdi_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_arm_coreboot_TRUE@usbserial_usbdebug_module_SOURCES = bus/usb/serial/usbdebug_late.c ## platform sources -@COND_i386_coreboot_TRUE@usbserial_usbdebug_module_SOURCES = bus/usb/serial/usbdebug_late.c ## platform sources -@COND_i386_efi_TRUE@usbserial_usbdebug_module_SOURCES = bus/usb/serial/usbdebug_late.c ## platform sources -@COND_i386_ieee1275_TRUE@usbserial_usbdebug_module_SOURCES = bus/usb/serial/usbdebug_late.c ## platform sources -@COND_i386_multiboot_TRUE@usbserial_usbdebug_module_SOURCES = bus/usb/serial/usbdebug_late.c ## platform sources -@COND_i386_pc_TRUE@usbserial_usbdebug_module_SOURCES = bus/usb/serial/usbdebug_late.c ## platform sources -@COND_i386_qemu_TRUE@usbserial_usbdebug_module_SOURCES = bus/usb/serial/usbdebug_late.c ## platform sources -@COND_mips_loongson_TRUE@usbserial_usbdebug_module_SOURCES = bus/usb/serial/usbdebug_late.c ## platform sources -@COND_x86_64_efi_TRUE@usbserial_usbdebug_module_SOURCES = bus/usb/serial/usbdebug_late.c ## platform sources -@COND_arm_coreboot_TRUE@nodist_usbserial_usbdebug_module_SOURCES = ## platform nodist sources -@COND_i386_coreboot_TRUE@nodist_usbserial_usbdebug_module_SOURCES = ## platform nodist sources -@COND_i386_efi_TRUE@nodist_usbserial_usbdebug_module_SOURCES = ## platform nodist sources -@COND_i386_ieee1275_TRUE@nodist_usbserial_usbdebug_module_SOURCES = ## platform nodist sources -@COND_i386_multiboot_TRUE@nodist_usbserial_usbdebug_module_SOURCES = ## platform nodist sources -@COND_i386_pc_TRUE@nodist_usbserial_usbdebug_module_SOURCES = ## platform nodist sources -@COND_i386_qemu_TRUE@nodist_usbserial_usbdebug_module_SOURCES = ## platform nodist sources -@COND_mips_loongson_TRUE@nodist_usbserial_usbdebug_module_SOURCES = ## platform nodist sources -@COND_x86_64_efi_TRUE@nodist_usbserial_usbdebug_module_SOURCES = ## platform nodist sources -@COND_arm_coreboot_TRUE@usbserial_usbdebug_module_LDADD = -@COND_i386_coreboot_TRUE@usbserial_usbdebug_module_LDADD = -@COND_i386_efi_TRUE@usbserial_usbdebug_module_LDADD = -@COND_i386_ieee1275_TRUE@usbserial_usbdebug_module_LDADD = -@COND_i386_multiboot_TRUE@usbserial_usbdebug_module_LDADD = -@COND_i386_pc_TRUE@usbserial_usbdebug_module_LDADD = -@COND_i386_qemu_TRUE@usbserial_usbdebug_module_LDADD = -@COND_mips_loongson_TRUE@usbserial_usbdebug_module_LDADD = -@COND_x86_64_efi_TRUE@usbserial_usbdebug_module_LDADD = -@COND_arm_coreboot_TRUE@usbserial_usbdebug_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_coreboot_TRUE@usbserial_usbdebug_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_efi_TRUE@usbserial_usbdebug_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@usbserial_usbdebug_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_multiboot_TRUE@usbserial_usbdebug_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_pc_TRUE@usbserial_usbdebug_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_qemu_TRUE@usbserial_usbdebug_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_mips_loongson_TRUE@usbserial_usbdebug_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_x86_64_efi_TRUE@usbserial_usbdebug_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_arm_coreboot_TRUE@usbserial_usbdebug_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_coreboot_TRUE@usbserial_usbdebug_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_efi_TRUE@usbserial_usbdebug_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@usbserial_usbdebug_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_multiboot_TRUE@usbserial_usbdebug_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_pc_TRUE@usbserial_usbdebug_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_qemu_TRUE@usbserial_usbdebug_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_mips_loongson_TRUE@usbserial_usbdebug_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_x86_64_efi_TRUE@usbserial_usbdebug_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_arm_coreboot_TRUE@usbserial_usbdebug_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_coreboot_TRUE@usbserial_usbdebug_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_efi_TRUE@usbserial_usbdebug_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@usbserial_usbdebug_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_multiboot_TRUE@usbserial_usbdebug_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_pc_TRUE@usbserial_usbdebug_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_qemu_TRUE@usbserial_usbdebug_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_mips_loongson_TRUE@usbserial_usbdebug_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_x86_64_efi_TRUE@usbserial_usbdebug_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_arm_coreboot_TRUE@usbserial_usbdebug_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_coreboot_TRUE@usbserial_usbdebug_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_efi_TRUE@usbserial_usbdebug_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@usbserial_usbdebug_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_multiboot_TRUE@usbserial_usbdebug_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_pc_TRUE@usbserial_usbdebug_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_qemu_TRUE@usbserial_usbdebug_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_mips_loongson_TRUE@usbserial_usbdebug_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_x86_64_efi_TRUE@usbserial_usbdebug_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_arm_coreboot_TRUE@usbserial_usbdebug_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_coreboot_TRUE@usbserial_usbdebug_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_efi_TRUE@usbserial_usbdebug_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_ieee1275_TRUE@usbserial_usbdebug_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_multiboot_TRUE@usbserial_usbdebug_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_pc_TRUE@usbserial_usbdebug_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_qemu_TRUE@usbserial_usbdebug_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_mips_loongson_TRUE@usbserial_usbdebug_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_x86_64_efi_TRUE@usbserial_usbdebug_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_coreboot_TRUE@uhci_module_SOURCES = bus/usb/uhci.c ## platform sources -@COND_i386_efi_TRUE@uhci_module_SOURCES = bus/usb/uhci.c ## platform sources -@COND_i386_ieee1275_TRUE@uhci_module_SOURCES = bus/usb/uhci.c ## platform sources -@COND_i386_multiboot_TRUE@uhci_module_SOURCES = bus/usb/uhci.c ## platform sources -@COND_i386_pc_TRUE@uhci_module_SOURCES = bus/usb/uhci.c ## platform sources -@COND_i386_qemu_TRUE@uhci_module_SOURCES = bus/usb/uhci.c ## platform sources -@COND_mips_loongson_TRUE@uhci_module_SOURCES = bus/usb/uhci.c ## platform sources -@COND_x86_64_efi_TRUE@uhci_module_SOURCES = bus/usb/uhci.c ## platform sources -@COND_i386_coreboot_TRUE@nodist_uhci_module_SOURCES = ## platform nodist sources -@COND_i386_efi_TRUE@nodist_uhci_module_SOURCES = ## platform nodist sources -@COND_i386_ieee1275_TRUE@nodist_uhci_module_SOURCES = ## platform nodist sources -@COND_i386_multiboot_TRUE@nodist_uhci_module_SOURCES = ## platform nodist sources -@COND_i386_pc_TRUE@nodist_uhci_module_SOURCES = ## platform nodist sources -@COND_i386_qemu_TRUE@nodist_uhci_module_SOURCES = ## platform nodist sources -@COND_mips_loongson_TRUE@nodist_uhci_module_SOURCES = ## platform nodist sources -@COND_x86_64_efi_TRUE@nodist_uhci_module_SOURCES = ## platform nodist sources -@COND_i386_coreboot_TRUE@uhci_module_LDADD = -@COND_i386_efi_TRUE@uhci_module_LDADD = -@COND_i386_ieee1275_TRUE@uhci_module_LDADD = -@COND_i386_multiboot_TRUE@uhci_module_LDADD = -@COND_i386_pc_TRUE@uhci_module_LDADD = -@COND_i386_qemu_TRUE@uhci_module_LDADD = -@COND_mips_loongson_TRUE@uhci_module_LDADD = -@COND_x86_64_efi_TRUE@uhci_module_LDADD = -@COND_i386_coreboot_TRUE@uhci_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_efi_TRUE@uhci_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@uhci_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_multiboot_TRUE@uhci_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_pc_TRUE@uhci_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_qemu_TRUE@uhci_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_mips_loongson_TRUE@uhci_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_x86_64_efi_TRUE@uhci_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_coreboot_TRUE@uhci_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_efi_TRUE@uhci_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@uhci_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_multiboot_TRUE@uhci_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_pc_TRUE@uhci_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_qemu_TRUE@uhci_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_mips_loongson_TRUE@uhci_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_x86_64_efi_TRUE@uhci_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_coreboot_TRUE@uhci_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_efi_TRUE@uhci_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@uhci_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_multiboot_TRUE@uhci_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_pc_TRUE@uhci_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_qemu_TRUE@uhci_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_mips_loongson_TRUE@uhci_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_x86_64_efi_TRUE@uhci_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_coreboot_TRUE@uhci_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_efi_TRUE@uhci_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@uhci_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_multiboot_TRUE@uhci_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_pc_TRUE@uhci_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_qemu_TRUE@uhci_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_mips_loongson_TRUE@uhci_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_x86_64_efi_TRUE@uhci_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_coreboot_TRUE@uhci_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_efi_TRUE@uhci_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_ieee1275_TRUE@uhci_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_multiboot_TRUE@uhci_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_pc_TRUE@uhci_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_qemu_TRUE@uhci_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_mips_loongson_TRUE@uhci_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_x86_64_efi_TRUE@uhci_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_coreboot_TRUE@ohci_module_SOURCES = bus/usb/ohci.c ## platform sources -@COND_i386_efi_TRUE@ohci_module_SOURCES = bus/usb/ohci.c ## platform sources -@COND_i386_ieee1275_TRUE@ohci_module_SOURCES = bus/usb/ohci.c ## platform sources -@COND_i386_multiboot_TRUE@ohci_module_SOURCES = bus/usb/ohci.c ## platform sources -@COND_i386_pc_TRUE@ohci_module_SOURCES = bus/usb/ohci.c ## platform sources -@COND_i386_qemu_TRUE@ohci_module_SOURCES = bus/usb/ohci.c ## platform sources -@COND_mips_loongson_TRUE@ohci_module_SOURCES = bus/usb/ohci.c ## platform sources -@COND_x86_64_efi_TRUE@ohci_module_SOURCES = bus/usb/ohci.c ## platform sources -@COND_i386_coreboot_TRUE@nodist_ohci_module_SOURCES = ## platform nodist sources -@COND_i386_efi_TRUE@nodist_ohci_module_SOURCES = ## platform nodist sources -@COND_i386_ieee1275_TRUE@nodist_ohci_module_SOURCES = ## platform nodist sources -@COND_i386_multiboot_TRUE@nodist_ohci_module_SOURCES = ## platform nodist sources -@COND_i386_pc_TRUE@nodist_ohci_module_SOURCES = ## platform nodist sources -@COND_i386_qemu_TRUE@nodist_ohci_module_SOURCES = ## platform nodist sources -@COND_mips_loongson_TRUE@nodist_ohci_module_SOURCES = ## platform nodist sources -@COND_x86_64_efi_TRUE@nodist_ohci_module_SOURCES = ## platform nodist sources -@COND_i386_coreboot_TRUE@ohci_module_LDADD = -@COND_i386_efi_TRUE@ohci_module_LDADD = -@COND_i386_ieee1275_TRUE@ohci_module_LDADD = -@COND_i386_multiboot_TRUE@ohci_module_LDADD = -@COND_i386_pc_TRUE@ohci_module_LDADD = -@COND_i386_qemu_TRUE@ohci_module_LDADD = -@COND_mips_loongson_TRUE@ohci_module_LDADD = -@COND_x86_64_efi_TRUE@ohci_module_LDADD = -@COND_i386_coreboot_TRUE@ohci_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_efi_TRUE@ohci_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@ohci_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_multiboot_TRUE@ohci_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_pc_TRUE@ohci_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_qemu_TRUE@ohci_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_mips_loongson_TRUE@ohci_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_x86_64_efi_TRUE@ohci_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_coreboot_TRUE@ohci_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_efi_TRUE@ohci_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@ohci_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_multiboot_TRUE@ohci_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_pc_TRUE@ohci_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_qemu_TRUE@ohci_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_mips_loongson_TRUE@ohci_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_x86_64_efi_TRUE@ohci_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_coreboot_TRUE@ohci_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_efi_TRUE@ohci_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@ohci_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_multiboot_TRUE@ohci_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_pc_TRUE@ohci_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_qemu_TRUE@ohci_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_mips_loongson_TRUE@ohci_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_x86_64_efi_TRUE@ohci_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_coreboot_TRUE@ohci_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_efi_TRUE@ohci_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@ohci_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_multiboot_TRUE@ohci_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_pc_TRUE@ohci_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_qemu_TRUE@ohci_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_mips_loongson_TRUE@ohci_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_x86_64_efi_TRUE@ohci_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_coreboot_TRUE@ohci_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_efi_TRUE@ohci_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_ieee1275_TRUE@ohci_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_multiboot_TRUE@ohci_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_pc_TRUE@ohci_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_qemu_TRUE@ohci_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_mips_loongson_TRUE@ohci_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_x86_64_efi_TRUE@ohci_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_arm_coreboot_TRUE@ehci_module_SOURCES = bus/usb/ehci-fdt.c bus/usb/ehci.c ## platform sources -@COND_i386_coreboot_TRUE@ehci_module_SOURCES = bus/usb/ehci-pci.c bus/usb/ehci.c ## platform sources -@COND_i386_efi_TRUE@ehci_module_SOURCES = bus/usb/ehci-pci.c bus/usb/ehci.c ## platform sources -@COND_i386_ieee1275_TRUE@ehci_module_SOURCES = bus/usb/ehci-pci.c bus/usb/ehci.c ## platform sources -@COND_i386_multiboot_TRUE@ehci_module_SOURCES = bus/usb/ehci-pci.c bus/usb/ehci.c ## platform sources -@COND_i386_pc_TRUE@ehci_module_SOURCES = bus/usb/ehci-pci.c bus/usb/ehci.c ## platform sources -@COND_i386_qemu_TRUE@ehci_module_SOURCES = bus/usb/ehci-pci.c bus/usb/ehci.c ## platform sources -@COND_mips_loongson_TRUE@ehci_module_SOURCES = bus/usb/ehci-pci.c bus/usb/ehci.c ## platform sources -@COND_x86_64_efi_TRUE@ehci_module_SOURCES = bus/usb/ehci-pci.c bus/usb/ehci.c ## platform sources -@COND_arm_coreboot_TRUE@nodist_ehci_module_SOURCES = ## platform nodist sources -@COND_i386_coreboot_TRUE@nodist_ehci_module_SOURCES = ## platform nodist sources -@COND_i386_efi_TRUE@nodist_ehci_module_SOURCES = ## platform nodist sources -@COND_i386_ieee1275_TRUE@nodist_ehci_module_SOURCES = ## platform nodist sources -@COND_i386_multiboot_TRUE@nodist_ehci_module_SOURCES = ## platform nodist sources -@COND_i386_pc_TRUE@nodist_ehci_module_SOURCES = ## platform nodist sources -@COND_i386_qemu_TRUE@nodist_ehci_module_SOURCES = ## platform nodist sources -@COND_mips_loongson_TRUE@nodist_ehci_module_SOURCES = ## platform nodist sources -@COND_x86_64_efi_TRUE@nodist_ehci_module_SOURCES = ## platform nodist sources -@COND_arm_coreboot_TRUE@ehci_module_LDADD = -@COND_i386_coreboot_TRUE@ehci_module_LDADD = -@COND_i386_efi_TRUE@ehci_module_LDADD = -@COND_i386_ieee1275_TRUE@ehci_module_LDADD = -@COND_i386_multiboot_TRUE@ehci_module_LDADD = -@COND_i386_pc_TRUE@ehci_module_LDADD = -@COND_i386_qemu_TRUE@ehci_module_LDADD = -@COND_mips_loongson_TRUE@ehci_module_LDADD = -@COND_x86_64_efi_TRUE@ehci_module_LDADD = -@COND_arm_coreboot_TRUE@ehci_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_coreboot_TRUE@ehci_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_efi_TRUE@ehci_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@ehci_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_multiboot_TRUE@ehci_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_pc_TRUE@ehci_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_qemu_TRUE@ehci_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_mips_loongson_TRUE@ehci_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_x86_64_efi_TRUE@ehci_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_arm_coreboot_TRUE@ehci_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_coreboot_TRUE@ehci_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_efi_TRUE@ehci_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@ehci_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_multiboot_TRUE@ehci_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_pc_TRUE@ehci_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_qemu_TRUE@ehci_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_mips_loongson_TRUE@ehci_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_x86_64_efi_TRUE@ehci_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_arm_coreboot_TRUE@ehci_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_coreboot_TRUE@ehci_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_efi_TRUE@ehci_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@ehci_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_multiboot_TRUE@ehci_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_pc_TRUE@ehci_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_qemu_TRUE@ehci_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_mips_loongson_TRUE@ehci_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_x86_64_efi_TRUE@ehci_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_arm_coreboot_TRUE@ehci_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_coreboot_TRUE@ehci_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_efi_TRUE@ehci_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@ehci_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_multiboot_TRUE@ehci_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_pc_TRUE@ehci_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_qemu_TRUE@ehci_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_mips_loongson_TRUE@ehci_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_x86_64_efi_TRUE@ehci_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_arm_coreboot_TRUE@ehci_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_coreboot_TRUE@ehci_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_efi_TRUE@ehci_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_ieee1275_TRUE@ehci_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_multiboot_TRUE@ehci_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_pc_TRUE@ehci_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_qemu_TRUE@ehci_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_mips_loongson_TRUE@ehci_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_x86_64_efi_TRUE@ehci_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_coreboot_TRUE@pci_module_SOURCES = bus/pci.c ## platform sources -@COND_i386_ieee1275_TRUE@pci_module_SOURCES = bus/i386/ieee1275/pci.c bus/pci.c ## platform sources -@COND_i386_multiboot_TRUE@pci_module_SOURCES = bus/pci.c ## platform sources -@COND_i386_pc_TRUE@pci_module_SOURCES = bus/pci.c ## platform sources -@COND_i386_coreboot_TRUE@nodist_pci_module_SOURCES = ## platform nodist sources -@COND_i386_ieee1275_TRUE@nodist_pci_module_SOURCES = ## platform nodist sources -@COND_i386_multiboot_TRUE@nodist_pci_module_SOURCES = ## platform nodist sources -@COND_i386_pc_TRUE@nodist_pci_module_SOURCES = ## platform nodist sources -@COND_i386_coreboot_TRUE@pci_module_LDADD = -@COND_i386_ieee1275_TRUE@pci_module_LDADD = -@COND_i386_multiboot_TRUE@pci_module_LDADD = -@COND_i386_pc_TRUE@pci_module_LDADD = -@COND_i386_coreboot_TRUE@pci_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@pci_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_multiboot_TRUE@pci_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_pc_TRUE@pci_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_coreboot_TRUE@pci_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@pci_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_multiboot_TRUE@pci_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_pc_TRUE@pci_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_coreboot_TRUE@pci_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@pci_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_multiboot_TRUE@pci_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_pc_TRUE@pci_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_coreboot_TRUE@pci_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@pci_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_multiboot_TRUE@pci_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_pc_TRUE@pci_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_coreboot_TRUE@pci_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_ieee1275_TRUE@pci_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_multiboot_TRUE@pci_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_pc_TRUE@pci_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_coreboot_TRUE@nativedisk_module_SOURCES = commands/nativedisk.c ## platform sources -@COND_i386_efi_TRUE@nativedisk_module_SOURCES = commands/nativedisk.c ## platform sources -@COND_i386_ieee1275_TRUE@nativedisk_module_SOURCES = commands/nativedisk.c ## platform sources -@COND_i386_multiboot_TRUE@nativedisk_module_SOURCES = commands/nativedisk.c ## platform sources -@COND_i386_pc_TRUE@nativedisk_module_SOURCES = commands/nativedisk.c ## platform sources -@COND_i386_qemu_TRUE@nativedisk_module_SOURCES = commands/nativedisk.c ## platform sources -@COND_mips_loongson_TRUE@nativedisk_module_SOURCES = commands/nativedisk.c ## platform sources -@COND_mips_qemu_mips_TRUE@nativedisk_module_SOURCES = commands/nativedisk.c ## platform sources -@COND_x86_64_efi_TRUE@nativedisk_module_SOURCES = commands/nativedisk.c ## platform sources -@COND_i386_coreboot_TRUE@nodist_nativedisk_module_SOURCES = ## platform nodist sources -@COND_i386_efi_TRUE@nodist_nativedisk_module_SOURCES = ## platform nodist sources -@COND_i386_ieee1275_TRUE@nodist_nativedisk_module_SOURCES = ## platform nodist sources -@COND_i386_multiboot_TRUE@nodist_nativedisk_module_SOURCES = ## platform nodist sources -@COND_i386_pc_TRUE@nodist_nativedisk_module_SOURCES = ## platform nodist sources -@COND_i386_qemu_TRUE@nodist_nativedisk_module_SOURCES = ## platform nodist sources -@COND_mips_loongson_TRUE@nodist_nativedisk_module_SOURCES = ## platform nodist sources -@COND_mips_qemu_mips_TRUE@nodist_nativedisk_module_SOURCES = ## platform nodist sources -@COND_x86_64_efi_TRUE@nodist_nativedisk_module_SOURCES = ## platform nodist sources -@COND_i386_coreboot_TRUE@nativedisk_module_LDADD = -@COND_i386_efi_TRUE@nativedisk_module_LDADD = -@COND_i386_ieee1275_TRUE@nativedisk_module_LDADD = -@COND_i386_multiboot_TRUE@nativedisk_module_LDADD = -@COND_i386_pc_TRUE@nativedisk_module_LDADD = -@COND_i386_qemu_TRUE@nativedisk_module_LDADD = -@COND_mips_loongson_TRUE@nativedisk_module_LDADD = -@COND_mips_qemu_mips_TRUE@nativedisk_module_LDADD = -@COND_x86_64_efi_TRUE@nativedisk_module_LDADD = -@COND_i386_coreboot_TRUE@nativedisk_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_efi_TRUE@nativedisk_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@nativedisk_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_multiboot_TRUE@nativedisk_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_pc_TRUE@nativedisk_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_qemu_TRUE@nativedisk_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_mips_loongson_TRUE@nativedisk_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_mips_qemu_mips_TRUE@nativedisk_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_x86_64_efi_TRUE@nativedisk_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_coreboot_TRUE@nativedisk_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_efi_TRUE@nativedisk_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@nativedisk_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_multiboot_TRUE@nativedisk_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_pc_TRUE@nativedisk_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_qemu_TRUE@nativedisk_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_mips_loongson_TRUE@nativedisk_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_mips_qemu_mips_TRUE@nativedisk_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_x86_64_efi_TRUE@nativedisk_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_coreboot_TRUE@nativedisk_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_efi_TRUE@nativedisk_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@nativedisk_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_multiboot_TRUE@nativedisk_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_pc_TRUE@nativedisk_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_qemu_TRUE@nativedisk_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_mips_loongson_TRUE@nativedisk_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_mips_qemu_mips_TRUE@nativedisk_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_x86_64_efi_TRUE@nativedisk_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_coreboot_TRUE@nativedisk_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_efi_TRUE@nativedisk_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@nativedisk_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_multiboot_TRUE@nativedisk_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_pc_TRUE@nativedisk_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_qemu_TRUE@nativedisk_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_mips_loongson_TRUE@nativedisk_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_mips_qemu_mips_TRUE@nativedisk_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_x86_64_efi_TRUE@nativedisk_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_coreboot_TRUE@nativedisk_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_efi_TRUE@nativedisk_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_ieee1275_TRUE@nativedisk_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_multiboot_TRUE@nativedisk_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_pc_TRUE@nativedisk_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_qemu_TRUE@nativedisk_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_mips_loongson_TRUE@nativedisk_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_mips_qemu_mips_TRUE@nativedisk_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_x86_64_efi_TRUE@nativedisk_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_GRUB_EMU_PCI_TRUE@@COND_emu_TRUE@emupci_module_SOURCES = bus/emu/pci.c commands/lspci.c ## platform sources -@COND_GRUB_EMU_PCI_TRUE@@COND_emu_TRUE@nodist_emupci_module_SOURCES = ## platform nodist sources -@COND_GRUB_EMU_PCI_TRUE@@COND_emu_TRUE@emupci_module_LDADD = -@COND_GRUB_EMU_PCI_TRUE@@COND_emu_TRUE@emupci_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_GRUB_EMU_PCI_TRUE@@COND_emu_TRUE@emupci_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_GRUB_EMU_PCI_TRUE@@COND_emu_TRUE@emupci_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_GRUB_EMU_PCI_TRUE@@COND_emu_TRUE@emupci_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_GRUB_EMU_PCI_TRUE@@COND_emu_TRUE@emupci_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_mips_arc_TRUE@lsdev_module_SOURCES = commands/arc/lsdev.c ## platform sources -@COND_mips_arc_TRUE@nodist_lsdev_module_SOURCES = ## platform nodist sources -@COND_mips_arc_TRUE@lsdev_module_LDADD = -@COND_mips_arc_TRUE@lsdev_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_mips_arc_TRUE@lsdev_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_mips_arc_TRUE@lsdev_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_mips_arc_TRUE@lsdev_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_mips_arc_TRUE@lsdev_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_xen_TRUE@lsxen_module_SOURCES = commands/xen/lsxen.c ## platform sources -@COND_x86_64_xen_TRUE@lsxen_module_SOURCES = commands/xen/lsxen.c ## platform sources -@COND_i386_xen_TRUE@nodist_lsxen_module_SOURCES = ## platform nodist sources -@COND_x86_64_xen_TRUE@nodist_lsxen_module_SOURCES = ## platform nodist sources -@COND_i386_xen_TRUE@lsxen_module_LDADD = -@COND_x86_64_xen_TRUE@lsxen_module_LDADD = -@COND_i386_xen_TRUE@lsxen_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_x86_64_xen_TRUE@lsxen_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_xen_TRUE@lsxen_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_x86_64_xen_TRUE@lsxen_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_xen_TRUE@lsxen_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_x86_64_xen_TRUE@lsxen_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_xen_TRUE@lsxen_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_x86_64_xen_TRUE@lsxen_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_xen_TRUE@lsxen_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_x86_64_xen_TRUE@lsxen_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_coreboot_TRUE@cmostest_module_SOURCES = commands/i386/cmostest.c ## platform sources -@COND_i386_ieee1275_TRUE@cmostest_module_SOURCES = commands/i386/cmostest.c ## platform sources -@COND_i386_multiboot_TRUE@cmostest_module_SOURCES = commands/i386/cmostest.c ## platform sources -@COND_i386_pc_TRUE@cmostest_module_SOURCES = commands/i386/cmostest.c ## platform sources -@COND_i386_qemu_TRUE@cmostest_module_SOURCES = commands/i386/cmostest.c ## platform sources -@COND_mips_loongson_TRUE@cmostest_module_SOURCES = commands/i386/cmostest.c ## platform sources -@COND_mips_qemu_mips_TRUE@cmostest_module_SOURCES = commands/i386/cmostest.c ## platform sources -@COND_powerpc_ieee1275_TRUE@cmostest_module_SOURCES = commands/i386/cmostest.c ## platform sources -@COND_sparc64_ieee1275_TRUE@cmostest_module_SOURCES = commands/i386/cmostest.c ## platform sources -@COND_i386_coreboot_TRUE@nodist_cmostest_module_SOURCES = ## platform nodist sources -@COND_i386_ieee1275_TRUE@nodist_cmostest_module_SOURCES = ## platform nodist sources -@COND_i386_multiboot_TRUE@nodist_cmostest_module_SOURCES = ## platform nodist sources -@COND_i386_pc_TRUE@nodist_cmostest_module_SOURCES = ## platform nodist sources -@COND_i386_qemu_TRUE@nodist_cmostest_module_SOURCES = ## platform nodist sources -@COND_mips_loongson_TRUE@nodist_cmostest_module_SOURCES = ## platform nodist sources -@COND_mips_qemu_mips_TRUE@nodist_cmostest_module_SOURCES = ## platform nodist sources -@COND_powerpc_ieee1275_TRUE@nodist_cmostest_module_SOURCES = ## platform nodist sources -@COND_sparc64_ieee1275_TRUE@nodist_cmostest_module_SOURCES = ## platform nodist sources -@COND_i386_coreboot_TRUE@cmostest_module_LDADD = -@COND_i386_ieee1275_TRUE@cmostest_module_LDADD = -@COND_i386_multiboot_TRUE@cmostest_module_LDADD = -@COND_i386_pc_TRUE@cmostest_module_LDADD = -@COND_i386_qemu_TRUE@cmostest_module_LDADD = -@COND_mips_loongson_TRUE@cmostest_module_LDADD = -@COND_mips_qemu_mips_TRUE@cmostest_module_LDADD = -@COND_powerpc_ieee1275_TRUE@cmostest_module_LDADD = -@COND_sparc64_ieee1275_TRUE@cmostest_module_LDADD = -@COND_i386_coreboot_TRUE@cmostest_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@cmostest_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_multiboot_TRUE@cmostest_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_pc_TRUE@cmostest_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_qemu_TRUE@cmostest_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_mips_loongson_TRUE@cmostest_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_mips_qemu_mips_TRUE@cmostest_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_powerpc_ieee1275_TRUE@cmostest_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_sparc64_ieee1275_TRUE@cmostest_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_coreboot_TRUE@cmostest_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@cmostest_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_multiboot_TRUE@cmostest_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_pc_TRUE@cmostest_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_qemu_TRUE@cmostest_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_mips_loongson_TRUE@cmostest_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_mips_qemu_mips_TRUE@cmostest_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_powerpc_ieee1275_TRUE@cmostest_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_sparc64_ieee1275_TRUE@cmostest_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_coreboot_TRUE@cmostest_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@cmostest_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_multiboot_TRUE@cmostest_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_pc_TRUE@cmostest_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_qemu_TRUE@cmostest_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_mips_loongson_TRUE@cmostest_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_mips_qemu_mips_TRUE@cmostest_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_powerpc_ieee1275_TRUE@cmostest_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_sparc64_ieee1275_TRUE@cmostest_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_coreboot_TRUE@cmostest_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@cmostest_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_multiboot_TRUE@cmostest_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_pc_TRUE@cmostest_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_qemu_TRUE@cmostest_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_mips_loongson_TRUE@cmostest_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_mips_qemu_mips_TRUE@cmostest_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_powerpc_ieee1275_TRUE@cmostest_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_sparc64_ieee1275_TRUE@cmostest_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_coreboot_TRUE@cmostest_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_ieee1275_TRUE@cmostest_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_multiboot_TRUE@cmostest_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_pc_TRUE@cmostest_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_qemu_TRUE@cmostest_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_mips_loongson_TRUE@cmostest_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_mips_qemu_mips_TRUE@cmostest_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_powerpc_ieee1275_TRUE@cmostest_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_sparc64_ieee1275_TRUE@cmostest_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_coreboot_TRUE@cmosdump_module_SOURCES = commands/i386/cmosdump.c ## platform sources -@COND_i386_ieee1275_TRUE@cmosdump_module_SOURCES = commands/i386/cmosdump.c ## platform sources -@COND_i386_multiboot_TRUE@cmosdump_module_SOURCES = commands/i386/cmosdump.c ## platform sources -@COND_i386_pc_TRUE@cmosdump_module_SOURCES = commands/i386/cmosdump.c ## platform sources -@COND_i386_qemu_TRUE@cmosdump_module_SOURCES = commands/i386/cmosdump.c ## platform sources -@COND_mips_loongson_TRUE@cmosdump_module_SOURCES = commands/i386/cmosdump.c ## platform sources -@COND_mips_qemu_mips_TRUE@cmosdump_module_SOURCES = commands/i386/cmosdump.c ## platform sources -@COND_powerpc_ieee1275_TRUE@cmosdump_module_SOURCES = commands/i386/cmosdump.c ## platform sources -@COND_sparc64_ieee1275_TRUE@cmosdump_module_SOURCES = commands/i386/cmosdump.c ## platform sources -@COND_i386_coreboot_TRUE@nodist_cmosdump_module_SOURCES = ## platform nodist sources -@COND_i386_ieee1275_TRUE@nodist_cmosdump_module_SOURCES = ## platform nodist sources -@COND_i386_multiboot_TRUE@nodist_cmosdump_module_SOURCES = ## platform nodist sources -@COND_i386_pc_TRUE@nodist_cmosdump_module_SOURCES = ## platform nodist sources -@COND_i386_qemu_TRUE@nodist_cmosdump_module_SOURCES = ## platform nodist sources -@COND_mips_loongson_TRUE@nodist_cmosdump_module_SOURCES = ## platform nodist sources -@COND_mips_qemu_mips_TRUE@nodist_cmosdump_module_SOURCES = ## platform nodist sources -@COND_powerpc_ieee1275_TRUE@nodist_cmosdump_module_SOURCES = ## platform nodist sources -@COND_sparc64_ieee1275_TRUE@nodist_cmosdump_module_SOURCES = ## platform nodist sources -@COND_i386_coreboot_TRUE@cmosdump_module_LDADD = -@COND_i386_ieee1275_TRUE@cmosdump_module_LDADD = -@COND_i386_multiboot_TRUE@cmosdump_module_LDADD = -@COND_i386_pc_TRUE@cmosdump_module_LDADD = -@COND_i386_qemu_TRUE@cmosdump_module_LDADD = -@COND_mips_loongson_TRUE@cmosdump_module_LDADD = -@COND_mips_qemu_mips_TRUE@cmosdump_module_LDADD = -@COND_powerpc_ieee1275_TRUE@cmosdump_module_LDADD = -@COND_sparc64_ieee1275_TRUE@cmosdump_module_LDADD = -@COND_i386_coreboot_TRUE@cmosdump_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@cmosdump_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_multiboot_TRUE@cmosdump_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_pc_TRUE@cmosdump_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_qemu_TRUE@cmosdump_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_mips_loongson_TRUE@cmosdump_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_mips_qemu_mips_TRUE@cmosdump_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_powerpc_ieee1275_TRUE@cmosdump_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_sparc64_ieee1275_TRUE@cmosdump_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_coreboot_TRUE@cmosdump_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@cmosdump_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_multiboot_TRUE@cmosdump_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_pc_TRUE@cmosdump_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_qemu_TRUE@cmosdump_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_mips_loongson_TRUE@cmosdump_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_mips_qemu_mips_TRUE@cmosdump_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_powerpc_ieee1275_TRUE@cmosdump_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_sparc64_ieee1275_TRUE@cmosdump_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_coreboot_TRUE@cmosdump_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@cmosdump_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_multiboot_TRUE@cmosdump_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_pc_TRUE@cmosdump_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_qemu_TRUE@cmosdump_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_mips_loongson_TRUE@cmosdump_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_mips_qemu_mips_TRUE@cmosdump_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_powerpc_ieee1275_TRUE@cmosdump_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_sparc64_ieee1275_TRUE@cmosdump_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_coreboot_TRUE@cmosdump_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@cmosdump_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_multiboot_TRUE@cmosdump_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_pc_TRUE@cmosdump_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_qemu_TRUE@cmosdump_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_mips_loongson_TRUE@cmosdump_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_mips_qemu_mips_TRUE@cmosdump_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_powerpc_ieee1275_TRUE@cmosdump_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_sparc64_ieee1275_TRUE@cmosdump_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_coreboot_TRUE@cmosdump_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_ieee1275_TRUE@cmosdump_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_multiboot_TRUE@cmosdump_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_pc_TRUE@cmosdump_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_qemu_TRUE@cmosdump_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_mips_loongson_TRUE@cmosdump_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_mips_qemu_mips_TRUE@cmosdump_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_powerpc_ieee1275_TRUE@cmosdump_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_sparc64_ieee1275_TRUE@cmosdump_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_coreboot_TRUE@iorw_module_SOURCES = commands/iorw.c ## platform sources -@COND_i386_efi_TRUE@iorw_module_SOURCES = commands/iorw.c ## platform sources -@COND_i386_ieee1275_TRUE@iorw_module_SOURCES = commands/iorw.c ## platform sources -@COND_i386_multiboot_TRUE@iorw_module_SOURCES = commands/iorw.c ## platform sources -@COND_i386_pc_TRUE@iorw_module_SOURCES = commands/iorw.c ## platform sources -@COND_i386_qemu_TRUE@iorw_module_SOURCES = commands/iorw.c ## platform sources -@COND_x86_64_efi_TRUE@iorw_module_SOURCES = commands/iorw.c ## platform sources -@COND_i386_coreboot_TRUE@nodist_iorw_module_SOURCES = ## platform nodist sources -@COND_i386_efi_TRUE@nodist_iorw_module_SOURCES = ## platform nodist sources -@COND_i386_ieee1275_TRUE@nodist_iorw_module_SOURCES = ## platform nodist sources -@COND_i386_multiboot_TRUE@nodist_iorw_module_SOURCES = ## platform nodist sources -@COND_i386_pc_TRUE@nodist_iorw_module_SOURCES = ## platform nodist sources -@COND_i386_qemu_TRUE@nodist_iorw_module_SOURCES = ## platform nodist sources -@COND_x86_64_efi_TRUE@nodist_iorw_module_SOURCES = ## platform nodist sources -@COND_i386_coreboot_TRUE@iorw_module_LDADD = -@COND_i386_efi_TRUE@iorw_module_LDADD = -@COND_i386_ieee1275_TRUE@iorw_module_LDADD = -@COND_i386_multiboot_TRUE@iorw_module_LDADD = -@COND_i386_pc_TRUE@iorw_module_LDADD = -@COND_i386_qemu_TRUE@iorw_module_LDADD = -@COND_x86_64_efi_TRUE@iorw_module_LDADD = -@COND_i386_coreboot_TRUE@iorw_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_efi_TRUE@iorw_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@iorw_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_multiboot_TRUE@iorw_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_pc_TRUE@iorw_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_qemu_TRUE@iorw_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_x86_64_efi_TRUE@iorw_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_coreboot_TRUE@iorw_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_efi_TRUE@iorw_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@iorw_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_multiboot_TRUE@iorw_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_pc_TRUE@iorw_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_qemu_TRUE@iorw_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_x86_64_efi_TRUE@iorw_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_coreboot_TRUE@iorw_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_efi_TRUE@iorw_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@iorw_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_multiboot_TRUE@iorw_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_pc_TRUE@iorw_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_qemu_TRUE@iorw_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_x86_64_efi_TRUE@iorw_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_coreboot_TRUE@iorw_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_efi_TRUE@iorw_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@iorw_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_multiboot_TRUE@iorw_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_pc_TRUE@iorw_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_qemu_TRUE@iorw_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_x86_64_efi_TRUE@iorw_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_coreboot_TRUE@iorw_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_efi_TRUE@iorw_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_ieee1275_TRUE@iorw_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_multiboot_TRUE@iorw_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_pc_TRUE@iorw_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_qemu_TRUE@iorw_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_x86_64_efi_TRUE@iorw_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_efi_TRUE@cbtable_module_SOURCES = kern/i386/coreboot/cbtable.c kern/coreboot/cbtable.c ## platform sources -@COND_i386_ieee1275_TRUE@cbtable_module_SOURCES = kern/i386/coreboot/cbtable.c kern/coreboot/cbtable.c ## platform sources -@COND_i386_multiboot_TRUE@cbtable_module_SOURCES = kern/i386/coreboot/cbtable.c kern/coreboot/cbtable.c ## platform sources -@COND_i386_pc_TRUE@cbtable_module_SOURCES = kern/i386/coreboot/cbtable.c kern/coreboot/cbtable.c ## platform sources -@COND_i386_qemu_TRUE@cbtable_module_SOURCES = kern/i386/coreboot/cbtable.c kern/coreboot/cbtable.c ## platform sources -@COND_x86_64_efi_TRUE@cbtable_module_SOURCES = kern/i386/coreboot/cbtable.c kern/coreboot/cbtable.c ## platform sources -@COND_i386_efi_TRUE@nodist_cbtable_module_SOURCES = ## platform nodist sources -@COND_i386_ieee1275_TRUE@nodist_cbtable_module_SOURCES = ## platform nodist sources -@COND_i386_multiboot_TRUE@nodist_cbtable_module_SOURCES = ## platform nodist sources -@COND_i386_pc_TRUE@nodist_cbtable_module_SOURCES = ## platform nodist sources -@COND_i386_qemu_TRUE@nodist_cbtable_module_SOURCES = ## platform nodist sources -@COND_x86_64_efi_TRUE@nodist_cbtable_module_SOURCES = ## platform nodist sources -@COND_i386_efi_TRUE@cbtable_module_LDADD = -@COND_i386_ieee1275_TRUE@cbtable_module_LDADD = -@COND_i386_multiboot_TRUE@cbtable_module_LDADD = -@COND_i386_pc_TRUE@cbtable_module_LDADD = -@COND_i386_qemu_TRUE@cbtable_module_LDADD = -@COND_x86_64_efi_TRUE@cbtable_module_LDADD = -@COND_i386_efi_TRUE@cbtable_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@cbtable_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_multiboot_TRUE@cbtable_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_pc_TRUE@cbtable_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_qemu_TRUE@cbtable_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_x86_64_efi_TRUE@cbtable_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_efi_TRUE@cbtable_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@cbtable_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_multiboot_TRUE@cbtable_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_pc_TRUE@cbtable_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_qemu_TRUE@cbtable_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_x86_64_efi_TRUE@cbtable_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_efi_TRUE@cbtable_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@cbtable_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_multiboot_TRUE@cbtable_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_pc_TRUE@cbtable_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_qemu_TRUE@cbtable_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_x86_64_efi_TRUE@cbtable_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_efi_TRUE@cbtable_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@cbtable_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_multiboot_TRUE@cbtable_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_pc_TRUE@cbtable_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_qemu_TRUE@cbtable_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_x86_64_efi_TRUE@cbtable_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_efi_TRUE@cbtable_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_ieee1275_TRUE@cbtable_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_multiboot_TRUE@cbtable_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_pc_TRUE@cbtable_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_qemu_TRUE@cbtable_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_x86_64_efi_TRUE@cbtable_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_coreboot_TRUE@cbtime_module_SOURCES = commands/i386/coreboot/cb_timestamps.c ## platform sources -@COND_i386_efi_TRUE@cbtime_module_SOURCES = commands/i386/coreboot/cb_timestamps.c ## platform sources -@COND_i386_ieee1275_TRUE@cbtime_module_SOURCES = commands/i386/coreboot/cb_timestamps.c ## platform sources -@COND_i386_multiboot_TRUE@cbtime_module_SOURCES = commands/i386/coreboot/cb_timestamps.c ## platform sources -@COND_i386_pc_TRUE@cbtime_module_SOURCES = commands/i386/coreboot/cb_timestamps.c ## platform sources -@COND_i386_qemu_TRUE@cbtime_module_SOURCES = commands/i386/coreboot/cb_timestamps.c ## platform sources -@COND_x86_64_efi_TRUE@cbtime_module_SOURCES = commands/i386/coreboot/cb_timestamps.c ## platform sources -@COND_i386_coreboot_TRUE@nodist_cbtime_module_SOURCES = ## platform nodist sources -@COND_i386_efi_TRUE@nodist_cbtime_module_SOURCES = ## platform nodist sources -@COND_i386_ieee1275_TRUE@nodist_cbtime_module_SOURCES = ## platform nodist sources -@COND_i386_multiboot_TRUE@nodist_cbtime_module_SOURCES = ## platform nodist sources -@COND_i386_pc_TRUE@nodist_cbtime_module_SOURCES = ## platform nodist sources -@COND_i386_qemu_TRUE@nodist_cbtime_module_SOURCES = ## platform nodist sources -@COND_x86_64_efi_TRUE@nodist_cbtime_module_SOURCES = ## platform nodist sources -@COND_i386_coreboot_TRUE@cbtime_module_LDADD = -@COND_i386_efi_TRUE@cbtime_module_LDADD = -@COND_i386_ieee1275_TRUE@cbtime_module_LDADD = -@COND_i386_multiboot_TRUE@cbtime_module_LDADD = -@COND_i386_pc_TRUE@cbtime_module_LDADD = -@COND_i386_qemu_TRUE@cbtime_module_LDADD = -@COND_x86_64_efi_TRUE@cbtime_module_LDADD = -@COND_i386_coreboot_TRUE@cbtime_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_efi_TRUE@cbtime_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@cbtime_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_multiboot_TRUE@cbtime_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_pc_TRUE@cbtime_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_qemu_TRUE@cbtime_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_x86_64_efi_TRUE@cbtime_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_coreboot_TRUE@cbtime_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_efi_TRUE@cbtime_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@cbtime_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_multiboot_TRUE@cbtime_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_pc_TRUE@cbtime_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_qemu_TRUE@cbtime_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_x86_64_efi_TRUE@cbtime_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_coreboot_TRUE@cbtime_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_efi_TRUE@cbtime_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@cbtime_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_multiboot_TRUE@cbtime_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_pc_TRUE@cbtime_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_qemu_TRUE@cbtime_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_x86_64_efi_TRUE@cbtime_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_coreboot_TRUE@cbtime_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_efi_TRUE@cbtime_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@cbtime_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_multiboot_TRUE@cbtime_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_pc_TRUE@cbtime_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_qemu_TRUE@cbtime_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_x86_64_efi_TRUE@cbtime_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_coreboot_TRUE@cbtime_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_efi_TRUE@cbtime_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_ieee1275_TRUE@cbtime_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_multiboot_TRUE@cbtime_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_pc_TRUE@cbtime_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_qemu_TRUE@cbtime_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_x86_64_efi_TRUE@cbtime_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_coreboot_TRUE@cbls_module_SOURCES = commands/i386/coreboot/cbls.c ## platform sources -@COND_i386_efi_TRUE@cbls_module_SOURCES = commands/i386/coreboot/cbls.c ## platform sources -@COND_i386_ieee1275_TRUE@cbls_module_SOURCES = commands/i386/coreboot/cbls.c ## platform sources -@COND_i386_multiboot_TRUE@cbls_module_SOURCES = commands/i386/coreboot/cbls.c ## platform sources -@COND_i386_pc_TRUE@cbls_module_SOURCES = commands/i386/coreboot/cbls.c ## platform sources -@COND_i386_qemu_TRUE@cbls_module_SOURCES = commands/i386/coreboot/cbls.c ## platform sources -@COND_x86_64_efi_TRUE@cbls_module_SOURCES = commands/i386/coreboot/cbls.c ## platform sources -@COND_i386_coreboot_TRUE@nodist_cbls_module_SOURCES = ## platform nodist sources -@COND_i386_efi_TRUE@nodist_cbls_module_SOURCES = ## platform nodist sources -@COND_i386_ieee1275_TRUE@nodist_cbls_module_SOURCES = ## platform nodist sources -@COND_i386_multiboot_TRUE@nodist_cbls_module_SOURCES = ## platform nodist sources -@COND_i386_pc_TRUE@nodist_cbls_module_SOURCES = ## platform nodist sources -@COND_i386_qemu_TRUE@nodist_cbls_module_SOURCES = ## platform nodist sources -@COND_x86_64_efi_TRUE@nodist_cbls_module_SOURCES = ## platform nodist sources -@COND_i386_coreboot_TRUE@cbls_module_LDADD = -@COND_i386_efi_TRUE@cbls_module_LDADD = -@COND_i386_ieee1275_TRUE@cbls_module_LDADD = -@COND_i386_multiboot_TRUE@cbls_module_LDADD = -@COND_i386_pc_TRUE@cbls_module_LDADD = -@COND_i386_qemu_TRUE@cbls_module_LDADD = -@COND_x86_64_efi_TRUE@cbls_module_LDADD = -@COND_i386_coreboot_TRUE@cbls_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_efi_TRUE@cbls_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@cbls_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_multiboot_TRUE@cbls_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_pc_TRUE@cbls_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_qemu_TRUE@cbls_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_x86_64_efi_TRUE@cbls_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_coreboot_TRUE@cbls_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_efi_TRUE@cbls_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@cbls_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_multiboot_TRUE@cbls_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_pc_TRUE@cbls_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_qemu_TRUE@cbls_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_x86_64_efi_TRUE@cbls_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_coreboot_TRUE@cbls_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_efi_TRUE@cbls_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@cbls_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_multiboot_TRUE@cbls_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_pc_TRUE@cbls_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_qemu_TRUE@cbls_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_x86_64_efi_TRUE@cbls_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_coreboot_TRUE@cbls_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_efi_TRUE@cbls_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@cbls_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_multiboot_TRUE@cbls_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_pc_TRUE@cbls_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_qemu_TRUE@cbls_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_x86_64_efi_TRUE@cbls_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_coreboot_TRUE@cbls_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_efi_TRUE@cbls_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_ieee1275_TRUE@cbls_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_multiboot_TRUE@cbls_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_pc_TRUE@cbls_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_qemu_TRUE@cbls_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_x86_64_efi_TRUE@cbls_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_coreboot_TRUE@cbmemc_module_SOURCES = term/i386/coreboot/cbmemc.c ## platform sources -@COND_i386_efi_TRUE@cbmemc_module_SOURCES = term/i386/coreboot/cbmemc.c ## platform sources -@COND_i386_ieee1275_TRUE@cbmemc_module_SOURCES = term/i386/coreboot/cbmemc.c ## platform sources -@COND_i386_multiboot_TRUE@cbmemc_module_SOURCES = term/i386/coreboot/cbmemc.c ## platform sources -@COND_i386_pc_TRUE@cbmemc_module_SOURCES = term/i386/coreboot/cbmemc.c ## platform sources -@COND_i386_qemu_TRUE@cbmemc_module_SOURCES = term/i386/coreboot/cbmemc.c ## platform sources -@COND_x86_64_efi_TRUE@cbmemc_module_SOURCES = term/i386/coreboot/cbmemc.c ## platform sources -@COND_i386_coreboot_TRUE@nodist_cbmemc_module_SOURCES = ## platform nodist sources -@COND_i386_efi_TRUE@nodist_cbmemc_module_SOURCES = ## platform nodist sources -@COND_i386_ieee1275_TRUE@nodist_cbmemc_module_SOURCES = ## platform nodist sources -@COND_i386_multiboot_TRUE@nodist_cbmemc_module_SOURCES = ## platform nodist sources -@COND_i386_pc_TRUE@nodist_cbmemc_module_SOURCES = ## platform nodist sources -@COND_i386_qemu_TRUE@nodist_cbmemc_module_SOURCES = ## platform nodist sources -@COND_x86_64_efi_TRUE@nodist_cbmemc_module_SOURCES = ## platform nodist sources -@COND_i386_coreboot_TRUE@cbmemc_module_LDADD = -@COND_i386_efi_TRUE@cbmemc_module_LDADD = -@COND_i386_ieee1275_TRUE@cbmemc_module_LDADD = -@COND_i386_multiboot_TRUE@cbmemc_module_LDADD = -@COND_i386_pc_TRUE@cbmemc_module_LDADD = -@COND_i386_qemu_TRUE@cbmemc_module_LDADD = -@COND_x86_64_efi_TRUE@cbmemc_module_LDADD = -@COND_i386_coreboot_TRUE@cbmemc_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_efi_TRUE@cbmemc_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@cbmemc_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_multiboot_TRUE@cbmemc_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_pc_TRUE@cbmemc_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_qemu_TRUE@cbmemc_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_x86_64_efi_TRUE@cbmemc_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_coreboot_TRUE@cbmemc_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_efi_TRUE@cbmemc_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@cbmemc_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_multiboot_TRUE@cbmemc_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_pc_TRUE@cbmemc_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_qemu_TRUE@cbmemc_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_x86_64_efi_TRUE@cbmemc_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_coreboot_TRUE@cbmemc_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_efi_TRUE@cbmemc_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@cbmemc_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_multiboot_TRUE@cbmemc_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_pc_TRUE@cbmemc_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_qemu_TRUE@cbmemc_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_x86_64_efi_TRUE@cbmemc_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_coreboot_TRUE@cbmemc_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_efi_TRUE@cbmemc_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@cbmemc_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_multiboot_TRUE@cbmemc_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_pc_TRUE@cbmemc_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_qemu_TRUE@cbmemc_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_x86_64_efi_TRUE@cbmemc_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_coreboot_TRUE@cbmemc_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_efi_TRUE@cbmemc_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_ieee1275_TRUE@cbmemc_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_multiboot_TRUE@cbmemc_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_pc_TRUE@cbmemc_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_qemu_TRUE@cbmemc_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_x86_64_efi_TRUE@cbmemc_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -regexp_module_SOURCES = commands/regexp.c commands/wildcard.c lib/gnulib/regex.c ## platform sources -nodist_regexp_module_SOURCES = ## platform nodist sources -regexp_module_LDADD = -regexp_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) $(CFLAGS_POSIX) $(CFLAGS_GNULIB) -regexp_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -regexp_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) $(CPPFLAGS_POSIX) $(CPPFLAGS_GNULIB) -regexp_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -regexp_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_arm64_efi_TRUE@acpi_module_SOURCES = commands/acpi.c ## platform sources -@COND_arm_efi_TRUE@acpi_module_SOURCES = commands/acpi.c ## platform sources -@COND_i386_coreboot_TRUE@acpi_module_SOURCES = commands/acpi.c ## platform sources -@COND_i386_efi_TRUE@acpi_module_SOURCES = commands/acpi.c ## platform sources -@COND_i386_multiboot_TRUE@acpi_module_SOURCES = commands/acpi.c ## platform sources -@COND_i386_pc_TRUE@acpi_module_SOURCES = kern/acpi.c kern/i386/pc/acpi.c commands/acpi.c ## platform sources -@COND_ia64_efi_TRUE@acpi_module_SOURCES = commands/acpi.c ## platform sources -@COND_riscv32_efi_TRUE@acpi_module_SOURCES = commands/acpi.c ## platform sources -@COND_riscv64_efi_TRUE@acpi_module_SOURCES = commands/acpi.c ## platform sources -@COND_x86_64_efi_TRUE@acpi_module_SOURCES = commands/acpi.c ## platform sources -@COND_arm64_efi_TRUE@nodist_acpi_module_SOURCES = ## platform nodist sources -@COND_arm_efi_TRUE@nodist_acpi_module_SOURCES = ## platform nodist sources -@COND_i386_coreboot_TRUE@nodist_acpi_module_SOURCES = ## platform nodist sources -@COND_i386_efi_TRUE@nodist_acpi_module_SOURCES = ## platform nodist sources -@COND_i386_multiboot_TRUE@nodist_acpi_module_SOURCES = ## platform nodist sources -@COND_i386_pc_TRUE@nodist_acpi_module_SOURCES = ## platform nodist sources -@COND_ia64_efi_TRUE@nodist_acpi_module_SOURCES = ## platform nodist sources -@COND_riscv32_efi_TRUE@nodist_acpi_module_SOURCES = ## platform nodist sources -@COND_riscv64_efi_TRUE@nodist_acpi_module_SOURCES = ## platform nodist sources -@COND_x86_64_efi_TRUE@nodist_acpi_module_SOURCES = ## platform nodist sources -@COND_arm64_efi_TRUE@acpi_module_LDADD = -@COND_arm_efi_TRUE@acpi_module_LDADD = -@COND_i386_coreboot_TRUE@acpi_module_LDADD = -@COND_i386_efi_TRUE@acpi_module_LDADD = -@COND_i386_multiboot_TRUE@acpi_module_LDADD = -@COND_i386_pc_TRUE@acpi_module_LDADD = -@COND_ia64_efi_TRUE@acpi_module_LDADD = -@COND_riscv32_efi_TRUE@acpi_module_LDADD = -@COND_riscv64_efi_TRUE@acpi_module_LDADD = -@COND_x86_64_efi_TRUE@acpi_module_LDADD = -@COND_arm64_efi_TRUE@acpi_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_arm_efi_TRUE@acpi_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_coreboot_TRUE@acpi_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_efi_TRUE@acpi_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_multiboot_TRUE@acpi_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_pc_TRUE@acpi_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_ia64_efi_TRUE@acpi_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_riscv32_efi_TRUE@acpi_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_riscv64_efi_TRUE@acpi_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_x86_64_efi_TRUE@acpi_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_arm64_efi_TRUE@acpi_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_arm_efi_TRUE@acpi_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_coreboot_TRUE@acpi_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_efi_TRUE@acpi_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_multiboot_TRUE@acpi_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_pc_TRUE@acpi_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_ia64_efi_TRUE@acpi_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_riscv32_efi_TRUE@acpi_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_riscv64_efi_TRUE@acpi_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_x86_64_efi_TRUE@acpi_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_arm64_efi_TRUE@acpi_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_arm_efi_TRUE@acpi_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_coreboot_TRUE@acpi_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_efi_TRUE@acpi_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_multiboot_TRUE@acpi_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_pc_TRUE@acpi_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_ia64_efi_TRUE@acpi_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_riscv32_efi_TRUE@acpi_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_riscv64_efi_TRUE@acpi_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_x86_64_efi_TRUE@acpi_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_arm64_efi_TRUE@acpi_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_arm_efi_TRUE@acpi_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_coreboot_TRUE@acpi_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_efi_TRUE@acpi_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_multiboot_TRUE@acpi_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_pc_TRUE@acpi_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_ia64_efi_TRUE@acpi_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_riscv32_efi_TRUE@acpi_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_riscv64_efi_TRUE@acpi_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_x86_64_efi_TRUE@acpi_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_arm64_efi_TRUE@acpi_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_arm_efi_TRUE@acpi_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_coreboot_TRUE@acpi_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_efi_TRUE@acpi_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_multiboot_TRUE@acpi_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_pc_TRUE@acpi_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_ia64_efi_TRUE@acpi_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_riscv32_efi_TRUE@acpi_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_riscv64_efi_TRUE@acpi_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_x86_64_efi_TRUE@acpi_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_arm64_efi_TRUE@lsacpi_module_SOURCES = commands/lsacpi.c ## platform sources -@COND_arm_efi_TRUE@lsacpi_module_SOURCES = commands/lsacpi.c ## platform sources -@COND_i386_coreboot_TRUE@lsacpi_module_SOURCES = commands/lsacpi.c ## platform sources -@COND_i386_efi_TRUE@lsacpi_module_SOURCES = commands/lsacpi.c ## platform sources -@COND_i386_multiboot_TRUE@lsacpi_module_SOURCES = commands/lsacpi.c ## platform sources -@COND_i386_pc_TRUE@lsacpi_module_SOURCES = commands/lsacpi.c ## platform sources -@COND_ia64_efi_TRUE@lsacpi_module_SOURCES = commands/lsacpi.c ## platform sources -@COND_riscv32_efi_TRUE@lsacpi_module_SOURCES = commands/lsacpi.c ## platform sources -@COND_riscv64_efi_TRUE@lsacpi_module_SOURCES = commands/lsacpi.c ## platform sources -@COND_x86_64_efi_TRUE@lsacpi_module_SOURCES = commands/lsacpi.c ## platform sources -@COND_arm64_efi_TRUE@nodist_lsacpi_module_SOURCES = ## platform nodist sources -@COND_arm_efi_TRUE@nodist_lsacpi_module_SOURCES = ## platform nodist sources -@COND_i386_coreboot_TRUE@nodist_lsacpi_module_SOURCES = ## platform nodist sources -@COND_i386_efi_TRUE@nodist_lsacpi_module_SOURCES = ## platform nodist sources -@COND_i386_multiboot_TRUE@nodist_lsacpi_module_SOURCES = ## platform nodist sources -@COND_i386_pc_TRUE@nodist_lsacpi_module_SOURCES = ## platform nodist sources -@COND_ia64_efi_TRUE@nodist_lsacpi_module_SOURCES = ## platform nodist sources -@COND_riscv32_efi_TRUE@nodist_lsacpi_module_SOURCES = ## platform nodist sources -@COND_riscv64_efi_TRUE@nodist_lsacpi_module_SOURCES = ## platform nodist sources -@COND_x86_64_efi_TRUE@nodist_lsacpi_module_SOURCES = ## platform nodist sources -@COND_arm64_efi_TRUE@lsacpi_module_LDADD = -@COND_arm_efi_TRUE@lsacpi_module_LDADD = -@COND_i386_coreboot_TRUE@lsacpi_module_LDADD = -@COND_i386_efi_TRUE@lsacpi_module_LDADD = -@COND_i386_multiboot_TRUE@lsacpi_module_LDADD = -@COND_i386_pc_TRUE@lsacpi_module_LDADD = -@COND_ia64_efi_TRUE@lsacpi_module_LDADD = -@COND_riscv32_efi_TRUE@lsacpi_module_LDADD = -@COND_riscv64_efi_TRUE@lsacpi_module_LDADD = -@COND_x86_64_efi_TRUE@lsacpi_module_LDADD = -@COND_arm64_efi_TRUE@lsacpi_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_arm_efi_TRUE@lsacpi_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_coreboot_TRUE@lsacpi_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_efi_TRUE@lsacpi_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_multiboot_TRUE@lsacpi_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_pc_TRUE@lsacpi_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_ia64_efi_TRUE@lsacpi_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_riscv32_efi_TRUE@lsacpi_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_riscv64_efi_TRUE@lsacpi_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_x86_64_efi_TRUE@lsacpi_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_arm64_efi_TRUE@lsacpi_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_arm_efi_TRUE@lsacpi_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_coreboot_TRUE@lsacpi_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_efi_TRUE@lsacpi_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_multiboot_TRUE@lsacpi_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_pc_TRUE@lsacpi_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_ia64_efi_TRUE@lsacpi_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_riscv32_efi_TRUE@lsacpi_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_riscv64_efi_TRUE@lsacpi_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_x86_64_efi_TRUE@lsacpi_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_arm64_efi_TRUE@lsacpi_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_arm_efi_TRUE@lsacpi_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_coreboot_TRUE@lsacpi_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_efi_TRUE@lsacpi_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_multiboot_TRUE@lsacpi_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_pc_TRUE@lsacpi_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_ia64_efi_TRUE@lsacpi_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_riscv32_efi_TRUE@lsacpi_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_riscv64_efi_TRUE@lsacpi_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_x86_64_efi_TRUE@lsacpi_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_arm64_efi_TRUE@lsacpi_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_arm_efi_TRUE@lsacpi_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_coreboot_TRUE@lsacpi_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_efi_TRUE@lsacpi_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_multiboot_TRUE@lsacpi_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_pc_TRUE@lsacpi_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_ia64_efi_TRUE@lsacpi_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_riscv32_efi_TRUE@lsacpi_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_riscv64_efi_TRUE@lsacpi_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_x86_64_efi_TRUE@lsacpi_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_arm64_efi_TRUE@lsacpi_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_arm_efi_TRUE@lsacpi_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_coreboot_TRUE@lsacpi_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_efi_TRUE@lsacpi_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_multiboot_TRUE@lsacpi_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_pc_TRUE@lsacpi_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_ia64_efi_TRUE@lsacpi_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_riscv32_efi_TRUE@lsacpi_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_riscv64_efi_TRUE@lsacpi_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_x86_64_efi_TRUE@lsacpi_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_arm64_efi_TRUE@lsefisystab_module_SOURCES = commands/efi/lsefisystab.c ## platform sources -@COND_arm_efi_TRUE@lsefisystab_module_SOURCES = commands/efi/lsefisystab.c ## platform sources -@COND_i386_efi_TRUE@lsefisystab_module_SOURCES = commands/efi/lsefisystab.c ## platform sources -@COND_ia64_efi_TRUE@lsefisystab_module_SOURCES = commands/efi/lsefisystab.c ## platform sources -@COND_riscv32_efi_TRUE@lsefisystab_module_SOURCES = commands/efi/lsefisystab.c ## platform sources -@COND_riscv64_efi_TRUE@lsefisystab_module_SOURCES = commands/efi/lsefisystab.c ## platform sources -@COND_x86_64_efi_TRUE@lsefisystab_module_SOURCES = commands/efi/lsefisystab.c ## platform sources -@COND_arm64_efi_TRUE@nodist_lsefisystab_module_SOURCES = ## platform nodist sources -@COND_arm_efi_TRUE@nodist_lsefisystab_module_SOURCES = ## platform nodist sources -@COND_i386_efi_TRUE@nodist_lsefisystab_module_SOURCES = ## platform nodist sources -@COND_ia64_efi_TRUE@nodist_lsefisystab_module_SOURCES = ## platform nodist sources -@COND_riscv32_efi_TRUE@nodist_lsefisystab_module_SOURCES = ## platform nodist sources -@COND_riscv64_efi_TRUE@nodist_lsefisystab_module_SOURCES = ## platform nodist sources -@COND_x86_64_efi_TRUE@nodist_lsefisystab_module_SOURCES = ## platform nodist sources -@COND_arm64_efi_TRUE@lsefisystab_module_LDADD = -@COND_arm_efi_TRUE@lsefisystab_module_LDADD = -@COND_i386_efi_TRUE@lsefisystab_module_LDADD = -@COND_ia64_efi_TRUE@lsefisystab_module_LDADD = -@COND_riscv32_efi_TRUE@lsefisystab_module_LDADD = -@COND_riscv64_efi_TRUE@lsefisystab_module_LDADD = -@COND_x86_64_efi_TRUE@lsefisystab_module_LDADD = -@COND_arm64_efi_TRUE@lsefisystab_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_arm_efi_TRUE@lsefisystab_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_efi_TRUE@lsefisystab_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_ia64_efi_TRUE@lsefisystab_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_riscv32_efi_TRUE@lsefisystab_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_riscv64_efi_TRUE@lsefisystab_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_x86_64_efi_TRUE@lsefisystab_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_arm64_efi_TRUE@lsefisystab_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_arm_efi_TRUE@lsefisystab_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_efi_TRUE@lsefisystab_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_ia64_efi_TRUE@lsefisystab_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_riscv32_efi_TRUE@lsefisystab_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_riscv64_efi_TRUE@lsefisystab_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_x86_64_efi_TRUE@lsefisystab_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_arm64_efi_TRUE@lsefisystab_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_arm_efi_TRUE@lsefisystab_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_efi_TRUE@lsefisystab_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_ia64_efi_TRUE@lsefisystab_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_riscv32_efi_TRUE@lsefisystab_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_riscv64_efi_TRUE@lsefisystab_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_x86_64_efi_TRUE@lsefisystab_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_arm64_efi_TRUE@lsefisystab_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_arm_efi_TRUE@lsefisystab_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_efi_TRUE@lsefisystab_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_ia64_efi_TRUE@lsefisystab_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_riscv32_efi_TRUE@lsefisystab_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_riscv64_efi_TRUE@lsefisystab_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_x86_64_efi_TRUE@lsefisystab_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_arm64_efi_TRUE@lsefisystab_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_arm_efi_TRUE@lsefisystab_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_efi_TRUE@lsefisystab_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_ia64_efi_TRUE@lsefisystab_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_riscv32_efi_TRUE@lsefisystab_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_riscv64_efi_TRUE@lsefisystab_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_x86_64_efi_TRUE@lsefisystab_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_arm64_efi_TRUE@lssal_module_SOURCES = commands/efi/lssal.c ## platform sources -@COND_arm_efi_TRUE@lssal_module_SOURCES = commands/efi/lssal.c ## platform sources -@COND_i386_efi_TRUE@lssal_module_SOURCES = commands/efi/lssal.c ## platform sources -@COND_ia64_efi_TRUE@lssal_module_SOURCES = commands/efi/lssal.c ## platform sources -@COND_riscv32_efi_TRUE@lssal_module_SOURCES = commands/efi/lssal.c ## platform sources -@COND_riscv64_efi_TRUE@lssal_module_SOURCES = commands/efi/lssal.c ## platform sources -@COND_x86_64_efi_TRUE@lssal_module_SOURCES = commands/efi/lssal.c ## platform sources -@COND_arm64_efi_TRUE@nodist_lssal_module_SOURCES = ## platform nodist sources -@COND_arm_efi_TRUE@nodist_lssal_module_SOURCES = ## platform nodist sources -@COND_i386_efi_TRUE@nodist_lssal_module_SOURCES = ## platform nodist sources -@COND_ia64_efi_TRUE@nodist_lssal_module_SOURCES = ## platform nodist sources -@COND_riscv32_efi_TRUE@nodist_lssal_module_SOURCES = ## platform nodist sources -@COND_riscv64_efi_TRUE@nodist_lssal_module_SOURCES = ## platform nodist sources -@COND_x86_64_efi_TRUE@nodist_lssal_module_SOURCES = ## platform nodist sources -@COND_arm64_efi_TRUE@lssal_module_LDADD = -@COND_arm_efi_TRUE@lssal_module_LDADD = -@COND_i386_efi_TRUE@lssal_module_LDADD = -@COND_ia64_efi_TRUE@lssal_module_LDADD = -@COND_riscv32_efi_TRUE@lssal_module_LDADD = -@COND_riscv64_efi_TRUE@lssal_module_LDADD = -@COND_x86_64_efi_TRUE@lssal_module_LDADD = -@COND_arm64_efi_TRUE@lssal_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_arm_efi_TRUE@lssal_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_efi_TRUE@lssal_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_ia64_efi_TRUE@lssal_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_riscv32_efi_TRUE@lssal_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_riscv64_efi_TRUE@lssal_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_x86_64_efi_TRUE@lssal_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_arm64_efi_TRUE@lssal_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_arm_efi_TRUE@lssal_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_efi_TRUE@lssal_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_ia64_efi_TRUE@lssal_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_riscv32_efi_TRUE@lssal_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_riscv64_efi_TRUE@lssal_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_x86_64_efi_TRUE@lssal_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_arm64_efi_TRUE@lssal_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_arm_efi_TRUE@lssal_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_efi_TRUE@lssal_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_ia64_efi_TRUE@lssal_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_riscv32_efi_TRUE@lssal_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_riscv64_efi_TRUE@lssal_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_x86_64_efi_TRUE@lssal_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_arm64_efi_TRUE@lssal_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_arm_efi_TRUE@lssal_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_efi_TRUE@lssal_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_ia64_efi_TRUE@lssal_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_riscv32_efi_TRUE@lssal_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_riscv64_efi_TRUE@lssal_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_x86_64_efi_TRUE@lssal_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_arm64_efi_TRUE@lssal_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_arm_efi_TRUE@lssal_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_efi_TRUE@lssal_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_ia64_efi_TRUE@lssal_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_riscv32_efi_TRUE@lssal_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_riscv64_efi_TRUE@lssal_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_x86_64_efi_TRUE@lssal_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_arm64_efi_TRUE@lsefimmap_module_SOURCES = commands/efi/lsefimmap.c ## platform sources -@COND_arm_efi_TRUE@lsefimmap_module_SOURCES = commands/efi/lsefimmap.c ## platform sources -@COND_i386_efi_TRUE@lsefimmap_module_SOURCES = commands/efi/lsefimmap.c ## platform sources -@COND_ia64_efi_TRUE@lsefimmap_module_SOURCES = commands/efi/lsefimmap.c ## platform sources -@COND_riscv32_efi_TRUE@lsefimmap_module_SOURCES = commands/efi/lsefimmap.c ## platform sources -@COND_riscv64_efi_TRUE@lsefimmap_module_SOURCES = commands/efi/lsefimmap.c ## platform sources -@COND_x86_64_efi_TRUE@lsefimmap_module_SOURCES = commands/efi/lsefimmap.c ## platform sources -@COND_arm64_efi_TRUE@nodist_lsefimmap_module_SOURCES = ## platform nodist sources -@COND_arm_efi_TRUE@nodist_lsefimmap_module_SOURCES = ## platform nodist sources -@COND_i386_efi_TRUE@nodist_lsefimmap_module_SOURCES = ## platform nodist sources -@COND_ia64_efi_TRUE@nodist_lsefimmap_module_SOURCES = ## platform nodist sources -@COND_riscv32_efi_TRUE@nodist_lsefimmap_module_SOURCES = ## platform nodist sources -@COND_riscv64_efi_TRUE@nodist_lsefimmap_module_SOURCES = ## platform nodist sources -@COND_x86_64_efi_TRUE@nodist_lsefimmap_module_SOURCES = ## platform nodist sources -@COND_arm64_efi_TRUE@lsefimmap_module_LDADD = -@COND_arm_efi_TRUE@lsefimmap_module_LDADD = -@COND_i386_efi_TRUE@lsefimmap_module_LDADD = -@COND_ia64_efi_TRUE@lsefimmap_module_LDADD = -@COND_riscv32_efi_TRUE@lsefimmap_module_LDADD = -@COND_riscv64_efi_TRUE@lsefimmap_module_LDADD = -@COND_x86_64_efi_TRUE@lsefimmap_module_LDADD = -@COND_arm64_efi_TRUE@lsefimmap_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_arm_efi_TRUE@lsefimmap_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_efi_TRUE@lsefimmap_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_ia64_efi_TRUE@lsefimmap_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_riscv32_efi_TRUE@lsefimmap_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_riscv64_efi_TRUE@lsefimmap_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_x86_64_efi_TRUE@lsefimmap_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_arm64_efi_TRUE@lsefimmap_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_arm_efi_TRUE@lsefimmap_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_efi_TRUE@lsefimmap_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_ia64_efi_TRUE@lsefimmap_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_riscv32_efi_TRUE@lsefimmap_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_riscv64_efi_TRUE@lsefimmap_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_x86_64_efi_TRUE@lsefimmap_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_arm64_efi_TRUE@lsefimmap_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_arm_efi_TRUE@lsefimmap_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_efi_TRUE@lsefimmap_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_ia64_efi_TRUE@lsefimmap_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_riscv32_efi_TRUE@lsefimmap_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_riscv64_efi_TRUE@lsefimmap_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_x86_64_efi_TRUE@lsefimmap_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_arm64_efi_TRUE@lsefimmap_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_arm_efi_TRUE@lsefimmap_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_efi_TRUE@lsefimmap_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_ia64_efi_TRUE@lsefimmap_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_riscv32_efi_TRUE@lsefimmap_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_riscv64_efi_TRUE@lsefimmap_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_x86_64_efi_TRUE@lsefimmap_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_arm64_efi_TRUE@lsefimmap_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_arm_efi_TRUE@lsefimmap_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_efi_TRUE@lsefimmap_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_ia64_efi_TRUE@lsefimmap_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_riscv32_efi_TRUE@lsefimmap_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_riscv64_efi_TRUE@lsefimmap_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_x86_64_efi_TRUE@lsefimmap_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_arm64_efi_TRUE@lsefi_module_SOURCES = commands/efi/lsefi.c ## platform sources -@COND_arm_efi_TRUE@lsefi_module_SOURCES = commands/efi/lsefi.c ## platform sources -@COND_i386_efi_TRUE@lsefi_module_SOURCES = commands/efi/lsefi.c ## platform sources -@COND_ia64_efi_TRUE@lsefi_module_SOURCES = commands/efi/lsefi.c ## platform sources -@COND_riscv32_efi_TRUE@lsefi_module_SOURCES = commands/efi/lsefi.c ## platform sources -@COND_riscv64_efi_TRUE@lsefi_module_SOURCES = commands/efi/lsefi.c ## platform sources -@COND_x86_64_efi_TRUE@lsefi_module_SOURCES = commands/efi/lsefi.c ## platform sources -@COND_arm64_efi_TRUE@nodist_lsefi_module_SOURCES = ## platform nodist sources -@COND_arm_efi_TRUE@nodist_lsefi_module_SOURCES = ## platform nodist sources -@COND_i386_efi_TRUE@nodist_lsefi_module_SOURCES = ## platform nodist sources -@COND_ia64_efi_TRUE@nodist_lsefi_module_SOURCES = ## platform nodist sources -@COND_riscv32_efi_TRUE@nodist_lsefi_module_SOURCES = ## platform nodist sources -@COND_riscv64_efi_TRUE@nodist_lsefi_module_SOURCES = ## platform nodist sources -@COND_x86_64_efi_TRUE@nodist_lsefi_module_SOURCES = ## platform nodist sources -@COND_arm64_efi_TRUE@lsefi_module_LDADD = -@COND_arm_efi_TRUE@lsefi_module_LDADD = -@COND_i386_efi_TRUE@lsefi_module_LDADD = -@COND_ia64_efi_TRUE@lsefi_module_LDADD = -@COND_riscv32_efi_TRUE@lsefi_module_LDADD = -@COND_riscv64_efi_TRUE@lsefi_module_LDADD = -@COND_x86_64_efi_TRUE@lsefi_module_LDADD = -@COND_arm64_efi_TRUE@lsefi_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_arm_efi_TRUE@lsefi_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_efi_TRUE@lsefi_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_ia64_efi_TRUE@lsefi_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_riscv32_efi_TRUE@lsefi_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_riscv64_efi_TRUE@lsefi_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_x86_64_efi_TRUE@lsefi_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_arm64_efi_TRUE@lsefi_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_arm_efi_TRUE@lsefi_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_efi_TRUE@lsefi_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_ia64_efi_TRUE@lsefi_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_riscv32_efi_TRUE@lsefi_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_riscv64_efi_TRUE@lsefi_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_x86_64_efi_TRUE@lsefi_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_arm64_efi_TRUE@lsefi_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_arm_efi_TRUE@lsefi_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_efi_TRUE@lsefi_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_ia64_efi_TRUE@lsefi_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_riscv32_efi_TRUE@lsefi_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_riscv64_efi_TRUE@lsefi_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_x86_64_efi_TRUE@lsefi_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_arm64_efi_TRUE@lsefi_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_arm_efi_TRUE@lsefi_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_efi_TRUE@lsefi_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_ia64_efi_TRUE@lsefi_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_riscv32_efi_TRUE@lsefi_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_riscv64_efi_TRUE@lsefi_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_x86_64_efi_TRUE@lsefi_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_arm64_efi_TRUE@lsefi_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_arm_efi_TRUE@lsefi_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_efi_TRUE@lsefi_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_ia64_efi_TRUE@lsefi_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_riscv32_efi_TRUE@lsefi_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_riscv64_efi_TRUE@lsefi_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_x86_64_efi_TRUE@lsefi_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_arm64_efi_TRUE@efifwsetup_module_SOURCES = commands/efi/efifwsetup.c ## platform sources -@COND_arm_efi_TRUE@efifwsetup_module_SOURCES = commands/efi/efifwsetup.c ## platform sources -@COND_i386_efi_TRUE@efifwsetup_module_SOURCES = commands/efi/efifwsetup.c ## platform sources -@COND_ia64_efi_TRUE@efifwsetup_module_SOURCES = commands/efi/efifwsetup.c ## platform sources -@COND_riscv32_efi_TRUE@efifwsetup_module_SOURCES = commands/efi/efifwsetup.c ## platform sources -@COND_riscv64_efi_TRUE@efifwsetup_module_SOURCES = commands/efi/efifwsetup.c ## platform sources -@COND_x86_64_efi_TRUE@efifwsetup_module_SOURCES = commands/efi/efifwsetup.c ## platform sources -@COND_arm64_efi_TRUE@nodist_efifwsetup_module_SOURCES = ## platform nodist sources -@COND_arm_efi_TRUE@nodist_efifwsetup_module_SOURCES = ## platform nodist sources -@COND_i386_efi_TRUE@nodist_efifwsetup_module_SOURCES = ## platform nodist sources -@COND_ia64_efi_TRUE@nodist_efifwsetup_module_SOURCES = ## platform nodist sources -@COND_riscv32_efi_TRUE@nodist_efifwsetup_module_SOURCES = ## platform nodist sources -@COND_riscv64_efi_TRUE@nodist_efifwsetup_module_SOURCES = ## platform nodist sources -@COND_x86_64_efi_TRUE@nodist_efifwsetup_module_SOURCES = ## platform nodist sources -@COND_arm64_efi_TRUE@efifwsetup_module_LDADD = -@COND_arm_efi_TRUE@efifwsetup_module_LDADD = -@COND_i386_efi_TRUE@efifwsetup_module_LDADD = -@COND_ia64_efi_TRUE@efifwsetup_module_LDADD = -@COND_riscv32_efi_TRUE@efifwsetup_module_LDADD = -@COND_riscv64_efi_TRUE@efifwsetup_module_LDADD = -@COND_x86_64_efi_TRUE@efifwsetup_module_LDADD = -@COND_arm64_efi_TRUE@efifwsetup_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_arm_efi_TRUE@efifwsetup_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_efi_TRUE@efifwsetup_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_ia64_efi_TRUE@efifwsetup_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_riscv32_efi_TRUE@efifwsetup_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_riscv64_efi_TRUE@efifwsetup_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_x86_64_efi_TRUE@efifwsetup_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_arm64_efi_TRUE@efifwsetup_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_arm_efi_TRUE@efifwsetup_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_efi_TRUE@efifwsetup_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_ia64_efi_TRUE@efifwsetup_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_riscv32_efi_TRUE@efifwsetup_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_riscv64_efi_TRUE@efifwsetup_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_x86_64_efi_TRUE@efifwsetup_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_arm64_efi_TRUE@efifwsetup_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_arm_efi_TRUE@efifwsetup_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_efi_TRUE@efifwsetup_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_ia64_efi_TRUE@efifwsetup_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_riscv32_efi_TRUE@efifwsetup_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_riscv64_efi_TRUE@efifwsetup_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_x86_64_efi_TRUE@efifwsetup_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_arm64_efi_TRUE@efifwsetup_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_arm_efi_TRUE@efifwsetup_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_efi_TRUE@efifwsetup_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_ia64_efi_TRUE@efifwsetup_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_riscv32_efi_TRUE@efifwsetup_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_riscv64_efi_TRUE@efifwsetup_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_x86_64_efi_TRUE@efifwsetup_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_arm64_efi_TRUE@efifwsetup_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_arm_efi_TRUE@efifwsetup_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_efi_TRUE@efifwsetup_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_ia64_efi_TRUE@efifwsetup_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_riscv32_efi_TRUE@efifwsetup_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_riscv64_efi_TRUE@efifwsetup_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_x86_64_efi_TRUE@efifwsetup_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -blocklist_module_SOURCES = commands/blocklist.c ## platform sources -nodist_blocklist_module_SOURCES = ## platform nodist sources -blocklist_module_LDADD = -blocklist_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -blocklist_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -blocklist_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -blocklist_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -blocklist_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_arm64_efi_TRUE@boot_module_SOURCES = commands/boot.c ## platform sources -@COND_arm_coreboot_TRUE@boot_module_SOURCES = commands/boot.c ## platform sources -@COND_arm_efi_TRUE@boot_module_SOURCES = commands/boot.c ## platform sources -@COND_arm_uboot_TRUE@boot_module_SOURCES = commands/boot.c ## platform sources -@COND_emu_TRUE@boot_module_SOURCES = commands/boot.c ## platform sources -@COND_i386_coreboot_TRUE@boot_module_SOURCES = commands/boot.c ## platform sources -@COND_i386_efi_TRUE@boot_module_SOURCES = commands/boot.c ## platform sources -@COND_i386_ieee1275_TRUE@boot_module_SOURCES = commands/boot.c ## platform sources -@COND_i386_multiboot_TRUE@boot_module_SOURCES = commands/boot.c ## platform sources -@COND_i386_pc_TRUE@boot_module_SOURCES = lib/i386/pc/biosnum.c commands/boot.c ## platform sources -@COND_i386_qemu_TRUE@boot_module_SOURCES = commands/boot.c ## platform sources -@COND_ia64_efi_TRUE@boot_module_SOURCES = commands/boot.c ## platform sources -@COND_mips_arc_TRUE@boot_module_SOURCES = commands/boot.c ## platform sources -@COND_powerpc_ieee1275_TRUE@boot_module_SOURCES = commands/boot.c ## platform sources -@COND_riscv32_efi_TRUE@boot_module_SOURCES = commands/boot.c ## platform sources -@COND_riscv64_efi_TRUE@boot_module_SOURCES = commands/boot.c ## platform sources -@COND_sparc64_ieee1275_TRUE@boot_module_SOURCES = commands/boot.c ## platform sources -@COND_x86_64_efi_TRUE@boot_module_SOURCES = commands/boot.c ## platform sources -@COND_arm64_efi_TRUE@nodist_boot_module_SOURCES = ## platform nodist sources -@COND_arm_coreboot_TRUE@nodist_boot_module_SOURCES = ## platform nodist sources -@COND_arm_efi_TRUE@nodist_boot_module_SOURCES = ## platform nodist sources -@COND_arm_uboot_TRUE@nodist_boot_module_SOURCES = ## platform nodist sources -@COND_emu_TRUE@nodist_boot_module_SOURCES = ## platform nodist sources -@COND_i386_coreboot_TRUE@nodist_boot_module_SOURCES = ## platform nodist sources -@COND_i386_efi_TRUE@nodist_boot_module_SOURCES = ## platform nodist sources -@COND_i386_ieee1275_TRUE@nodist_boot_module_SOURCES = ## platform nodist sources -@COND_i386_multiboot_TRUE@nodist_boot_module_SOURCES = ## platform nodist sources -@COND_i386_pc_TRUE@nodist_boot_module_SOURCES = ## platform nodist sources -@COND_i386_qemu_TRUE@nodist_boot_module_SOURCES = ## platform nodist sources -@COND_ia64_efi_TRUE@nodist_boot_module_SOURCES = ## platform nodist sources -@COND_mips_arc_TRUE@nodist_boot_module_SOURCES = ## platform nodist sources -@COND_powerpc_ieee1275_TRUE@nodist_boot_module_SOURCES = ## platform nodist sources -@COND_riscv32_efi_TRUE@nodist_boot_module_SOURCES = ## platform nodist sources -@COND_riscv64_efi_TRUE@nodist_boot_module_SOURCES = ## platform nodist sources -@COND_sparc64_ieee1275_TRUE@nodist_boot_module_SOURCES = ## platform nodist sources -@COND_x86_64_efi_TRUE@nodist_boot_module_SOURCES = ## platform nodist sources -@COND_arm64_efi_TRUE@boot_module_LDADD = -@COND_arm_coreboot_TRUE@boot_module_LDADD = -@COND_arm_efi_TRUE@boot_module_LDADD = -@COND_arm_uboot_TRUE@boot_module_LDADD = -@COND_emu_TRUE@boot_module_LDADD = -@COND_i386_coreboot_TRUE@boot_module_LDADD = -@COND_i386_efi_TRUE@boot_module_LDADD = -@COND_i386_ieee1275_TRUE@boot_module_LDADD = -@COND_i386_multiboot_TRUE@boot_module_LDADD = -@COND_i386_pc_TRUE@boot_module_LDADD = -@COND_i386_qemu_TRUE@boot_module_LDADD = -@COND_ia64_efi_TRUE@boot_module_LDADD = -@COND_mips_arc_TRUE@boot_module_LDADD = -@COND_powerpc_ieee1275_TRUE@boot_module_LDADD = -@COND_riscv32_efi_TRUE@boot_module_LDADD = -@COND_riscv64_efi_TRUE@boot_module_LDADD = -@COND_sparc64_ieee1275_TRUE@boot_module_LDADD = -@COND_x86_64_efi_TRUE@boot_module_LDADD = -@COND_arm64_efi_TRUE@boot_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_arm_coreboot_TRUE@boot_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_arm_efi_TRUE@boot_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_arm_uboot_TRUE@boot_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_emu_TRUE@boot_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_coreboot_TRUE@boot_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_efi_TRUE@boot_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@boot_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_multiboot_TRUE@boot_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_pc_TRUE@boot_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_qemu_TRUE@boot_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_ia64_efi_TRUE@boot_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_mips_arc_TRUE@boot_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_powerpc_ieee1275_TRUE@boot_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_riscv32_efi_TRUE@boot_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_riscv64_efi_TRUE@boot_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_sparc64_ieee1275_TRUE@boot_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_x86_64_efi_TRUE@boot_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_arm64_efi_TRUE@boot_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_arm_coreboot_TRUE@boot_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_arm_efi_TRUE@boot_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_arm_uboot_TRUE@boot_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_emu_TRUE@boot_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_coreboot_TRUE@boot_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_efi_TRUE@boot_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@boot_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_multiboot_TRUE@boot_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_pc_TRUE@boot_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_qemu_TRUE@boot_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_ia64_efi_TRUE@boot_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_mips_arc_TRUE@boot_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_powerpc_ieee1275_TRUE@boot_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_riscv32_efi_TRUE@boot_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_riscv64_efi_TRUE@boot_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_sparc64_ieee1275_TRUE@boot_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_x86_64_efi_TRUE@boot_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_arm64_efi_TRUE@boot_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_arm_coreboot_TRUE@boot_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_arm_efi_TRUE@boot_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_arm_uboot_TRUE@boot_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_emu_TRUE@boot_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_coreboot_TRUE@boot_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_efi_TRUE@boot_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@boot_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_multiboot_TRUE@boot_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_pc_TRUE@boot_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_qemu_TRUE@boot_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_ia64_efi_TRUE@boot_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_mips_arc_TRUE@boot_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_powerpc_ieee1275_TRUE@boot_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_riscv32_efi_TRUE@boot_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_riscv64_efi_TRUE@boot_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_sparc64_ieee1275_TRUE@boot_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_x86_64_efi_TRUE@boot_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_arm64_efi_TRUE@boot_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_arm_coreboot_TRUE@boot_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_arm_efi_TRUE@boot_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_arm_uboot_TRUE@boot_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_emu_TRUE@boot_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_coreboot_TRUE@boot_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_efi_TRUE@boot_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@boot_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_multiboot_TRUE@boot_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_pc_TRUE@boot_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_qemu_TRUE@boot_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_ia64_efi_TRUE@boot_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_mips_arc_TRUE@boot_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_powerpc_ieee1275_TRUE@boot_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_riscv32_efi_TRUE@boot_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_riscv64_efi_TRUE@boot_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_sparc64_ieee1275_TRUE@boot_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_x86_64_efi_TRUE@boot_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_arm64_efi_TRUE@boot_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_arm_coreboot_TRUE@boot_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_arm_efi_TRUE@boot_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_arm_uboot_TRUE@boot_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_emu_TRUE@boot_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_coreboot_TRUE@boot_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_efi_TRUE@boot_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_ieee1275_TRUE@boot_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_multiboot_TRUE@boot_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_pc_TRUE@boot_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_qemu_TRUE@boot_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_ia64_efi_TRUE@boot_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_mips_arc_TRUE@boot_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_powerpc_ieee1275_TRUE@boot_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_riscv32_efi_TRUE@boot_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_riscv64_efi_TRUE@boot_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_sparc64_ieee1275_TRUE@boot_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_x86_64_efi_TRUE@boot_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -cat_module_SOURCES = commands/cat.c ## platform sources -nodist_cat_module_SOURCES = ## platform nodist sources -cat_module_LDADD = -cat_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -cat_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -cat_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -cat_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -cat_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -cmp_module_SOURCES = commands/cmp.c ## platform sources -nodist_cmp_module_SOURCES = ## platform nodist sources -cmp_module_LDADD = -cmp_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -cmp_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -cmp_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -cmp_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -cmp_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -configfile_module_SOURCES = commands/configfile.c ## platform sources -nodist_configfile_module_SOURCES = ## platform nodist sources -configfile_module_LDADD = -configfile_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -configfile_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -configfile_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -configfile_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -configfile_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_coreboot_TRUE@cpuid_module_SOURCES = commands/i386/cpuid.c ## platform sources -@COND_i386_efi_TRUE@cpuid_module_SOURCES = commands/i386/cpuid.c ## platform sources -@COND_i386_ieee1275_TRUE@cpuid_module_SOURCES = commands/i386/cpuid.c ## platform sources -@COND_i386_multiboot_TRUE@cpuid_module_SOURCES = commands/i386/cpuid.c ## platform sources -@COND_i386_pc_TRUE@cpuid_module_SOURCES = commands/i386/cpuid.c ## platform sources -@COND_i386_qemu_TRUE@cpuid_module_SOURCES = commands/i386/cpuid.c ## platform sources -@COND_i386_xen_TRUE@cpuid_module_SOURCES = commands/i386/cpuid.c ## platform sources -@COND_i386_xen_pvh_TRUE@cpuid_module_SOURCES = commands/i386/cpuid.c ## platform sources -@COND_x86_64_efi_TRUE@cpuid_module_SOURCES = commands/i386/cpuid.c ## platform sources -@COND_x86_64_xen_TRUE@cpuid_module_SOURCES = commands/i386/cpuid.c ## platform sources -@COND_i386_coreboot_TRUE@nodist_cpuid_module_SOURCES = ## platform nodist sources -@COND_i386_efi_TRUE@nodist_cpuid_module_SOURCES = ## platform nodist sources -@COND_i386_ieee1275_TRUE@nodist_cpuid_module_SOURCES = ## platform nodist sources -@COND_i386_multiboot_TRUE@nodist_cpuid_module_SOURCES = ## platform nodist sources -@COND_i386_pc_TRUE@nodist_cpuid_module_SOURCES = ## platform nodist sources -@COND_i386_qemu_TRUE@nodist_cpuid_module_SOURCES = ## platform nodist sources -@COND_i386_xen_TRUE@nodist_cpuid_module_SOURCES = ## platform nodist sources -@COND_i386_xen_pvh_TRUE@nodist_cpuid_module_SOURCES = ## platform nodist sources -@COND_x86_64_efi_TRUE@nodist_cpuid_module_SOURCES = ## platform nodist sources -@COND_x86_64_xen_TRUE@nodist_cpuid_module_SOURCES = ## platform nodist sources -@COND_i386_coreboot_TRUE@cpuid_module_LDADD = -@COND_i386_efi_TRUE@cpuid_module_LDADD = -@COND_i386_ieee1275_TRUE@cpuid_module_LDADD = -@COND_i386_multiboot_TRUE@cpuid_module_LDADD = -@COND_i386_pc_TRUE@cpuid_module_LDADD = -@COND_i386_qemu_TRUE@cpuid_module_LDADD = -@COND_i386_xen_TRUE@cpuid_module_LDADD = -@COND_i386_xen_pvh_TRUE@cpuid_module_LDADD = -@COND_x86_64_efi_TRUE@cpuid_module_LDADD = -@COND_x86_64_xen_TRUE@cpuid_module_LDADD = -@COND_i386_coreboot_TRUE@cpuid_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_efi_TRUE@cpuid_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@cpuid_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_multiboot_TRUE@cpuid_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_pc_TRUE@cpuid_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_qemu_TRUE@cpuid_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_xen_TRUE@cpuid_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_xen_pvh_TRUE@cpuid_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_x86_64_efi_TRUE@cpuid_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_x86_64_xen_TRUE@cpuid_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_coreboot_TRUE@cpuid_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_efi_TRUE@cpuid_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@cpuid_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_multiboot_TRUE@cpuid_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_pc_TRUE@cpuid_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_qemu_TRUE@cpuid_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_xen_TRUE@cpuid_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_xen_pvh_TRUE@cpuid_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_x86_64_efi_TRUE@cpuid_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_x86_64_xen_TRUE@cpuid_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_coreboot_TRUE@cpuid_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_efi_TRUE@cpuid_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@cpuid_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_multiboot_TRUE@cpuid_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_pc_TRUE@cpuid_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_qemu_TRUE@cpuid_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_xen_TRUE@cpuid_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_xen_pvh_TRUE@cpuid_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_x86_64_efi_TRUE@cpuid_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_x86_64_xen_TRUE@cpuid_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_coreboot_TRUE@cpuid_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_efi_TRUE@cpuid_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@cpuid_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_multiboot_TRUE@cpuid_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_pc_TRUE@cpuid_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_qemu_TRUE@cpuid_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_xen_TRUE@cpuid_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_xen_pvh_TRUE@cpuid_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_x86_64_efi_TRUE@cpuid_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_x86_64_xen_TRUE@cpuid_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_coreboot_TRUE@cpuid_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_efi_TRUE@cpuid_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_ieee1275_TRUE@cpuid_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_multiboot_TRUE@cpuid_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_pc_TRUE@cpuid_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_qemu_TRUE@cpuid_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_xen_TRUE@cpuid_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_xen_pvh_TRUE@cpuid_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_x86_64_efi_TRUE@cpuid_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_x86_64_xen_TRUE@cpuid_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -date_module_SOURCES = commands/date.c ## platform sources -nodist_date_module_SOURCES = ## platform nodist sources -date_module_LDADD = -date_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -date_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -date_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -date_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -date_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_pc_TRUE@drivemap_module_SOURCES = commands/i386/pc/drivemap.c commands/i386/pc/drivemap_int13h.S ## platform sources -@COND_i386_pc_TRUE@nodist_drivemap_module_SOURCES = ## platform nodist sources -@COND_i386_pc_TRUE@drivemap_module_LDADD = -@COND_i386_pc_TRUE@drivemap_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_pc_TRUE@drivemap_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_pc_TRUE@drivemap_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_pc_TRUE@drivemap_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_pc_TRUE@drivemap_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -echo_module_SOURCES = commands/echo.c ## platform sources -nodist_echo_module_SOURCES = ## platform nodist sources -echo_module_LDADD = -echo_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -echo_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -echo_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -echo_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -echo_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -eval_module_SOURCES = commands/eval.c ## platform sources -nodist_eval_module_SOURCES = ## platform nodist sources -eval_module_LDADD = -eval_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -eval_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -eval_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -eval_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -eval_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_arm64_efi_TRUE@extcmd_module_SOURCES = commands/extcmd.c lib/arg.c ## platform sources -@COND_arm_coreboot_TRUE@extcmd_module_SOURCES = commands/extcmd.c lib/arg.c ## platform sources -@COND_arm_efi_TRUE@extcmd_module_SOURCES = commands/extcmd.c lib/arg.c ## platform sources -@COND_i386_coreboot_TRUE@extcmd_module_SOURCES = commands/extcmd.c lib/arg.c ## platform sources -@COND_i386_efi_TRUE@extcmd_module_SOURCES = commands/extcmd.c lib/arg.c ## platform sources -@COND_i386_multiboot_TRUE@extcmd_module_SOURCES = commands/extcmd.c lib/arg.c ## platform sources -@COND_i386_pc_TRUE@extcmd_module_SOURCES = commands/extcmd.c lib/arg.c ## platform sources -@COND_i386_qemu_TRUE@extcmd_module_SOURCES = commands/extcmd.c lib/arg.c ## platform sources -@COND_ia64_efi_TRUE@extcmd_module_SOURCES = commands/extcmd.c lib/arg.c ## platform sources -@COND_riscv32_efi_TRUE@extcmd_module_SOURCES = commands/extcmd.c lib/arg.c ## platform sources -@COND_riscv64_efi_TRUE@extcmd_module_SOURCES = commands/extcmd.c lib/arg.c ## platform sources -@COND_x86_64_efi_TRUE@extcmd_module_SOURCES = commands/extcmd.c lib/arg.c ## platform sources -@COND_arm64_efi_TRUE@nodist_extcmd_module_SOURCES = ## platform nodist sources -@COND_arm_coreboot_TRUE@nodist_extcmd_module_SOURCES = ## platform nodist sources -@COND_arm_efi_TRUE@nodist_extcmd_module_SOURCES = ## platform nodist sources -@COND_i386_coreboot_TRUE@nodist_extcmd_module_SOURCES = ## platform nodist sources -@COND_i386_efi_TRUE@nodist_extcmd_module_SOURCES = ## platform nodist sources -@COND_i386_multiboot_TRUE@nodist_extcmd_module_SOURCES = ## platform nodist sources -@COND_i386_pc_TRUE@nodist_extcmd_module_SOURCES = ## platform nodist sources -@COND_i386_qemu_TRUE@nodist_extcmd_module_SOURCES = ## platform nodist sources -@COND_ia64_efi_TRUE@nodist_extcmd_module_SOURCES = ## platform nodist sources -@COND_riscv32_efi_TRUE@nodist_extcmd_module_SOURCES = ## platform nodist sources -@COND_riscv64_efi_TRUE@nodist_extcmd_module_SOURCES = ## platform nodist sources -@COND_x86_64_efi_TRUE@nodist_extcmd_module_SOURCES = ## platform nodist sources -@COND_arm64_efi_TRUE@extcmd_module_LDADD = -@COND_arm_coreboot_TRUE@extcmd_module_LDADD = -@COND_arm_efi_TRUE@extcmd_module_LDADD = -@COND_i386_coreboot_TRUE@extcmd_module_LDADD = -@COND_i386_efi_TRUE@extcmd_module_LDADD = -@COND_i386_multiboot_TRUE@extcmd_module_LDADD = -@COND_i386_pc_TRUE@extcmd_module_LDADD = -@COND_i386_qemu_TRUE@extcmd_module_LDADD = -@COND_ia64_efi_TRUE@extcmd_module_LDADD = -@COND_riscv32_efi_TRUE@extcmd_module_LDADD = -@COND_riscv64_efi_TRUE@extcmd_module_LDADD = -@COND_x86_64_efi_TRUE@extcmd_module_LDADD = -@COND_arm64_efi_TRUE@extcmd_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_arm_coreboot_TRUE@extcmd_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_arm_efi_TRUE@extcmd_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_coreboot_TRUE@extcmd_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_efi_TRUE@extcmd_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_multiboot_TRUE@extcmd_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_pc_TRUE@extcmd_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_qemu_TRUE@extcmd_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_ia64_efi_TRUE@extcmd_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_riscv32_efi_TRUE@extcmd_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_riscv64_efi_TRUE@extcmd_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_x86_64_efi_TRUE@extcmd_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_arm64_efi_TRUE@extcmd_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_arm_coreboot_TRUE@extcmd_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_arm_efi_TRUE@extcmd_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_coreboot_TRUE@extcmd_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_efi_TRUE@extcmd_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_multiboot_TRUE@extcmd_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_pc_TRUE@extcmd_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_qemu_TRUE@extcmd_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_ia64_efi_TRUE@extcmd_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_riscv32_efi_TRUE@extcmd_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_riscv64_efi_TRUE@extcmd_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_x86_64_efi_TRUE@extcmd_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_arm64_efi_TRUE@extcmd_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_arm_coreboot_TRUE@extcmd_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_arm_efi_TRUE@extcmd_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_coreboot_TRUE@extcmd_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_efi_TRUE@extcmd_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_multiboot_TRUE@extcmd_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_pc_TRUE@extcmd_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_qemu_TRUE@extcmd_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_ia64_efi_TRUE@extcmd_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_riscv32_efi_TRUE@extcmd_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_riscv64_efi_TRUE@extcmd_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_x86_64_efi_TRUE@extcmd_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_arm64_efi_TRUE@extcmd_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_arm_coreboot_TRUE@extcmd_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_arm_efi_TRUE@extcmd_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_coreboot_TRUE@extcmd_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_efi_TRUE@extcmd_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_multiboot_TRUE@extcmd_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_pc_TRUE@extcmd_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_qemu_TRUE@extcmd_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_ia64_efi_TRUE@extcmd_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_riscv32_efi_TRUE@extcmd_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_riscv64_efi_TRUE@extcmd_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_x86_64_efi_TRUE@extcmd_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_arm64_efi_TRUE@extcmd_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_arm_coreboot_TRUE@extcmd_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_arm_efi_TRUE@extcmd_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_coreboot_TRUE@extcmd_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_efi_TRUE@extcmd_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_multiboot_TRUE@extcmd_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_pc_TRUE@extcmd_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_qemu_TRUE@extcmd_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_ia64_efi_TRUE@extcmd_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_riscv32_efi_TRUE@extcmd_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_riscv64_efi_TRUE@extcmd_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_x86_64_efi_TRUE@extcmd_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_efi_TRUE@fixvideo_module_SOURCES = commands/efi/fixvideo.c ## platform sources -@COND_x86_64_efi_TRUE@fixvideo_module_SOURCES = commands/efi/fixvideo.c ## platform sources -@COND_i386_efi_TRUE@nodist_fixvideo_module_SOURCES = ## platform nodist sources -@COND_x86_64_efi_TRUE@nodist_fixvideo_module_SOURCES = ## platform nodist sources -@COND_i386_efi_TRUE@fixvideo_module_LDADD = -@COND_x86_64_efi_TRUE@fixvideo_module_LDADD = -@COND_i386_efi_TRUE@fixvideo_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_x86_64_efi_TRUE@fixvideo_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_efi_TRUE@fixvideo_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_x86_64_efi_TRUE@fixvideo_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_efi_TRUE@fixvideo_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_x86_64_efi_TRUE@fixvideo_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_efi_TRUE@fixvideo_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_x86_64_efi_TRUE@fixvideo_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_efi_TRUE@fixvideo_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_x86_64_efi_TRUE@fixvideo_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -gptsync_module_SOURCES = commands/gptsync.c ## platform sources -nodist_gptsync_module_SOURCES = ## platform nodist sources -gptsync_module_LDADD = -gptsync_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -gptsync_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -gptsync_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -gptsync_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -gptsync_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_arm64_efi_TRUE@halt_module_SOURCES = lib/efi/halt.c commands/halt.c ## platform sources -@COND_arm_coreboot_TRUE@halt_module_SOURCES = lib/dummy/halt.c commands/halt.c ## platform sources -@COND_arm_efi_TRUE@halt_module_SOURCES = lib/efi/halt.c commands/halt.c ## platform sources -@COND_arm_uboot_TRUE@halt_module_SOURCES = lib/dummy/halt.c commands/halt.c ## platform sources -@COND_emu_TRUE@halt_module_SOURCES = lib/emu/halt.c commands/halt.c ## platform sources -@COND_i386_coreboot_TRUE@halt_module_SOURCES = commands/acpihalt.c lib/i386/halt.c commands/halt.c ## platform sources -@COND_i386_efi_TRUE@halt_module_SOURCES = commands/acpihalt.c lib/efi/halt.c commands/halt.c ## platform sources -@COND_i386_ieee1275_TRUE@halt_module_SOURCES = lib/ieee1275/halt.c commands/halt.c ## platform sources -@COND_i386_multiboot_TRUE@halt_module_SOURCES = commands/acpihalt.c lib/i386/halt.c commands/halt.c ## platform sources -@COND_i386_pc_TRUE@halt_module_SOURCES = commands/i386/pc/halt.c commands/acpihalt.c ## platform sources -@COND_i386_qemu_TRUE@halt_module_SOURCES = lib/i386/halt.c commands/halt.c ## platform sources -@COND_i386_xen_TRUE@halt_module_SOURCES = lib/xen/halt.c commands/halt.c ## platform sources -@COND_i386_xen_pvh_TRUE@halt_module_SOURCES = lib/xen/halt.c commands/halt.c ## platform sources -@COND_ia64_efi_TRUE@halt_module_SOURCES = lib/efi/halt.c commands/halt.c ## platform sources -@COND_mips_arc_TRUE@halt_module_SOURCES = commands/halt.c ## platform sources -@COND_mips_loongson_TRUE@halt_module_SOURCES = commands/halt.c ## platform sources -@COND_mips_qemu_mips_TRUE@halt_module_SOURCES = commands/halt.c ## platform sources -@COND_powerpc_ieee1275_TRUE@halt_module_SOURCES = lib/ieee1275/halt.c commands/halt.c ## platform sources -@COND_riscv32_efi_TRUE@halt_module_SOURCES = lib/efi/halt.c commands/halt.c ## platform sources -@COND_riscv64_efi_TRUE@halt_module_SOURCES = lib/efi/halt.c commands/halt.c ## platform sources -@COND_sparc64_ieee1275_TRUE@halt_module_SOURCES = lib/ieee1275/halt.c commands/halt.c ## platform sources -@COND_x86_64_efi_TRUE@halt_module_SOURCES = commands/acpihalt.c lib/efi/halt.c commands/halt.c ## platform sources -@COND_x86_64_xen_TRUE@halt_module_SOURCES = lib/xen/halt.c commands/halt.c ## platform sources -@COND_arm64_efi_TRUE@nodist_halt_module_SOURCES = ## platform nodist sources -@COND_arm_coreboot_TRUE@nodist_halt_module_SOURCES = ## platform nodist sources -@COND_arm_efi_TRUE@nodist_halt_module_SOURCES = ## platform nodist sources -@COND_arm_uboot_TRUE@nodist_halt_module_SOURCES = ## platform nodist sources -@COND_emu_TRUE@nodist_halt_module_SOURCES = ## platform nodist sources -@COND_i386_coreboot_TRUE@nodist_halt_module_SOURCES = ## platform nodist sources -@COND_i386_efi_TRUE@nodist_halt_module_SOURCES = ## platform nodist sources -@COND_i386_ieee1275_TRUE@nodist_halt_module_SOURCES = ## platform nodist sources -@COND_i386_multiboot_TRUE@nodist_halt_module_SOURCES = ## platform nodist sources -@COND_i386_pc_TRUE@nodist_halt_module_SOURCES = ## platform nodist sources -@COND_i386_qemu_TRUE@nodist_halt_module_SOURCES = ## platform nodist sources -@COND_i386_xen_TRUE@nodist_halt_module_SOURCES = ## platform nodist sources -@COND_i386_xen_pvh_TRUE@nodist_halt_module_SOURCES = ## platform nodist sources -@COND_ia64_efi_TRUE@nodist_halt_module_SOURCES = ## platform nodist sources -@COND_mips_arc_TRUE@nodist_halt_module_SOURCES = ## platform nodist sources -@COND_mips_loongson_TRUE@nodist_halt_module_SOURCES = ## platform nodist sources -@COND_mips_qemu_mips_TRUE@nodist_halt_module_SOURCES = ## platform nodist sources -@COND_powerpc_ieee1275_TRUE@nodist_halt_module_SOURCES = ## platform nodist sources -@COND_riscv32_efi_TRUE@nodist_halt_module_SOURCES = ## platform nodist sources -@COND_riscv64_efi_TRUE@nodist_halt_module_SOURCES = ## platform nodist sources -@COND_sparc64_ieee1275_TRUE@nodist_halt_module_SOURCES = ## platform nodist sources -@COND_x86_64_efi_TRUE@nodist_halt_module_SOURCES = ## platform nodist sources -@COND_x86_64_xen_TRUE@nodist_halt_module_SOURCES = ## platform nodist sources -@COND_arm64_efi_TRUE@halt_module_LDADD = -@COND_arm_coreboot_TRUE@halt_module_LDADD = -@COND_arm_efi_TRUE@halt_module_LDADD = -@COND_arm_uboot_TRUE@halt_module_LDADD = -@COND_emu_TRUE@halt_module_LDADD = -@COND_i386_coreboot_TRUE@halt_module_LDADD = -@COND_i386_efi_TRUE@halt_module_LDADD = -@COND_i386_ieee1275_TRUE@halt_module_LDADD = -@COND_i386_multiboot_TRUE@halt_module_LDADD = -@COND_i386_pc_TRUE@halt_module_LDADD = -@COND_i386_qemu_TRUE@halt_module_LDADD = -@COND_i386_xen_TRUE@halt_module_LDADD = -@COND_i386_xen_pvh_TRUE@halt_module_LDADD = -@COND_ia64_efi_TRUE@halt_module_LDADD = -@COND_mips_arc_TRUE@halt_module_LDADD = -@COND_mips_loongson_TRUE@halt_module_LDADD = -@COND_mips_qemu_mips_TRUE@halt_module_LDADD = -@COND_powerpc_ieee1275_TRUE@halt_module_LDADD = -@COND_riscv32_efi_TRUE@halt_module_LDADD = -@COND_riscv64_efi_TRUE@halt_module_LDADD = -@COND_sparc64_ieee1275_TRUE@halt_module_LDADD = -@COND_x86_64_efi_TRUE@halt_module_LDADD = -@COND_x86_64_xen_TRUE@halt_module_LDADD = -@COND_arm64_efi_TRUE@halt_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_arm_coreboot_TRUE@halt_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_arm_efi_TRUE@halt_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_arm_uboot_TRUE@halt_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_emu_TRUE@halt_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_coreboot_TRUE@halt_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_efi_TRUE@halt_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@halt_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_multiboot_TRUE@halt_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_pc_TRUE@halt_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_qemu_TRUE@halt_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_xen_TRUE@halt_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_xen_pvh_TRUE@halt_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_ia64_efi_TRUE@halt_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_mips_arc_TRUE@halt_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_mips_loongson_TRUE@halt_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_mips_qemu_mips_TRUE@halt_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_powerpc_ieee1275_TRUE@halt_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_riscv32_efi_TRUE@halt_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_riscv64_efi_TRUE@halt_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_sparc64_ieee1275_TRUE@halt_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_x86_64_efi_TRUE@halt_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_x86_64_xen_TRUE@halt_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_arm64_efi_TRUE@halt_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_arm_coreboot_TRUE@halt_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_arm_efi_TRUE@halt_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_arm_uboot_TRUE@halt_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_emu_TRUE@halt_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_coreboot_TRUE@halt_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_efi_TRUE@halt_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@halt_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_multiboot_TRUE@halt_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_pc_TRUE@halt_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_qemu_TRUE@halt_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_xen_TRUE@halt_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_xen_pvh_TRUE@halt_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_ia64_efi_TRUE@halt_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_mips_arc_TRUE@halt_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_mips_loongson_TRUE@halt_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_mips_qemu_mips_TRUE@halt_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_powerpc_ieee1275_TRUE@halt_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_riscv32_efi_TRUE@halt_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_riscv64_efi_TRUE@halt_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_sparc64_ieee1275_TRUE@halt_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_x86_64_efi_TRUE@halt_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_x86_64_xen_TRUE@halt_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_arm64_efi_TRUE@halt_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_arm_coreboot_TRUE@halt_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_arm_efi_TRUE@halt_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_arm_uboot_TRUE@halt_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_emu_TRUE@halt_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_coreboot_TRUE@halt_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_efi_TRUE@halt_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@halt_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_multiboot_TRUE@halt_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_pc_TRUE@halt_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_qemu_TRUE@halt_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_xen_TRUE@halt_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_xen_pvh_TRUE@halt_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_ia64_efi_TRUE@halt_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_mips_arc_TRUE@halt_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_mips_loongson_TRUE@halt_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_mips_qemu_mips_TRUE@halt_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_powerpc_ieee1275_TRUE@halt_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_riscv32_efi_TRUE@halt_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_riscv64_efi_TRUE@halt_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_sparc64_ieee1275_TRUE@halt_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_x86_64_efi_TRUE@halt_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_x86_64_xen_TRUE@halt_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_arm64_efi_TRUE@halt_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_arm_coreboot_TRUE@halt_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_arm_efi_TRUE@halt_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_arm_uboot_TRUE@halt_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_emu_TRUE@halt_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_coreboot_TRUE@halt_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_efi_TRUE@halt_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@halt_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_multiboot_TRUE@halt_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_pc_TRUE@halt_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_qemu_TRUE@halt_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_xen_TRUE@halt_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_xen_pvh_TRUE@halt_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_ia64_efi_TRUE@halt_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_mips_arc_TRUE@halt_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_mips_loongson_TRUE@halt_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_mips_qemu_mips_TRUE@halt_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_powerpc_ieee1275_TRUE@halt_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_riscv32_efi_TRUE@halt_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_riscv64_efi_TRUE@halt_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_sparc64_ieee1275_TRUE@halt_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_x86_64_efi_TRUE@halt_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_x86_64_xen_TRUE@halt_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_arm64_efi_TRUE@halt_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_arm_coreboot_TRUE@halt_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_arm_efi_TRUE@halt_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_arm_uboot_TRUE@halt_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_emu_TRUE@halt_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_coreboot_TRUE@halt_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_efi_TRUE@halt_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_ieee1275_TRUE@halt_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_multiboot_TRUE@halt_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_pc_TRUE@halt_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_qemu_TRUE@halt_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_xen_TRUE@halt_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_xen_pvh_TRUE@halt_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_ia64_efi_TRUE@halt_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_mips_arc_TRUE@halt_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_mips_loongson_TRUE@halt_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_mips_qemu_mips_TRUE@halt_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_powerpc_ieee1275_TRUE@halt_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_riscv32_efi_TRUE@halt_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_riscv64_efi_TRUE@halt_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_sparc64_ieee1275_TRUE@halt_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_x86_64_efi_TRUE@halt_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_x86_64_xen_TRUE@halt_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_arm64_efi_TRUE@reboot_module_SOURCES = commands/reboot.c ## platform sources -@COND_arm_coreboot_TRUE@reboot_module_SOURCES = lib/dummy/reboot.c commands/reboot.c ## platform sources -@COND_arm_efi_TRUE@reboot_module_SOURCES = commands/reboot.c ## platform sources -@COND_arm_uboot_TRUE@reboot_module_SOURCES = lib/uboot/reboot.c commands/reboot.c ## platform sources -@COND_emu_TRUE@reboot_module_SOURCES = commands/reboot.c ## platform sources -@COND_i386_coreboot_TRUE@reboot_module_SOURCES = lib/i386/reboot.c lib/i386/reboot_trampoline.S commands/reboot.c ## platform sources -@COND_i386_efi_TRUE@reboot_module_SOURCES = lib/i386/reboot.c lib/i386/reboot_trampoline.S commands/reboot.c ## platform sources -@COND_i386_ieee1275_TRUE@reboot_module_SOURCES = lib/i386/reboot.c lib/i386/reboot_trampoline.S commands/reboot.c ## platform sources -@COND_i386_multiboot_TRUE@reboot_module_SOURCES = lib/i386/reboot.c lib/i386/reboot_trampoline.S commands/reboot.c ## platform sources -@COND_i386_pc_TRUE@reboot_module_SOURCES = lib/i386/reboot.c lib/i386/reboot_trampoline.S commands/reboot.c ## platform sources -@COND_i386_qemu_TRUE@reboot_module_SOURCES = lib/i386/reboot.c lib/i386/reboot_trampoline.S commands/reboot.c ## platform sources -@COND_i386_xen_TRUE@reboot_module_SOURCES = lib/xen/reboot.c commands/reboot.c ## platform sources -@COND_i386_xen_pvh_TRUE@reboot_module_SOURCES = lib/xen/reboot.c commands/reboot.c ## platform sources -@COND_ia64_efi_TRUE@reboot_module_SOURCES = commands/reboot.c ## platform sources -@COND_mips_arc_TRUE@reboot_module_SOURCES = lib/mips/arc/reboot.c commands/reboot.c ## platform sources -@COND_mips_loongson_TRUE@reboot_module_SOURCES = lib/mips/loongson/reboot.c commands/reboot.c ## platform sources -@COND_mips_qemu_mips_TRUE@reboot_module_SOURCES = lib/mips/qemu_mips/reboot.c commands/reboot.c ## platform sources -@COND_powerpc_ieee1275_TRUE@reboot_module_SOURCES = lib/ieee1275/reboot.c commands/reboot.c ## platform sources -@COND_riscv32_efi_TRUE@reboot_module_SOURCES = commands/reboot.c ## platform sources -@COND_riscv64_efi_TRUE@reboot_module_SOURCES = commands/reboot.c ## platform sources -@COND_sparc64_ieee1275_TRUE@reboot_module_SOURCES = lib/ieee1275/reboot.c commands/reboot.c ## platform sources -@COND_x86_64_efi_TRUE@reboot_module_SOURCES = commands/reboot.c ## platform sources -@COND_x86_64_xen_TRUE@reboot_module_SOURCES = lib/xen/reboot.c commands/reboot.c ## platform sources -@COND_arm64_efi_TRUE@nodist_reboot_module_SOURCES = ## platform nodist sources -@COND_arm_coreboot_TRUE@nodist_reboot_module_SOURCES = ## platform nodist sources -@COND_arm_efi_TRUE@nodist_reboot_module_SOURCES = ## platform nodist sources -@COND_arm_uboot_TRUE@nodist_reboot_module_SOURCES = ## platform nodist sources -@COND_emu_TRUE@nodist_reboot_module_SOURCES = ## platform nodist sources -@COND_i386_coreboot_TRUE@nodist_reboot_module_SOURCES = ## platform nodist sources -@COND_i386_efi_TRUE@nodist_reboot_module_SOURCES = ## platform nodist sources -@COND_i386_ieee1275_TRUE@nodist_reboot_module_SOURCES = ## platform nodist sources -@COND_i386_multiboot_TRUE@nodist_reboot_module_SOURCES = ## platform nodist sources -@COND_i386_pc_TRUE@nodist_reboot_module_SOURCES = ## platform nodist sources -@COND_i386_qemu_TRUE@nodist_reboot_module_SOURCES = ## platform nodist sources -@COND_i386_xen_TRUE@nodist_reboot_module_SOURCES = ## platform nodist sources -@COND_i386_xen_pvh_TRUE@nodist_reboot_module_SOURCES = ## platform nodist sources -@COND_ia64_efi_TRUE@nodist_reboot_module_SOURCES = ## platform nodist sources -@COND_mips_arc_TRUE@nodist_reboot_module_SOURCES = ## platform nodist sources -@COND_mips_loongson_TRUE@nodist_reboot_module_SOURCES = ## platform nodist sources -@COND_mips_qemu_mips_TRUE@nodist_reboot_module_SOURCES = ## platform nodist sources -@COND_powerpc_ieee1275_TRUE@nodist_reboot_module_SOURCES = ## platform nodist sources -@COND_riscv32_efi_TRUE@nodist_reboot_module_SOURCES = ## platform nodist sources -@COND_riscv64_efi_TRUE@nodist_reboot_module_SOURCES = ## platform nodist sources -@COND_sparc64_ieee1275_TRUE@nodist_reboot_module_SOURCES = ## platform nodist sources -@COND_x86_64_efi_TRUE@nodist_reboot_module_SOURCES = ## platform nodist sources -@COND_x86_64_xen_TRUE@nodist_reboot_module_SOURCES = ## platform nodist sources -@COND_arm64_efi_TRUE@reboot_module_LDADD = -@COND_arm_coreboot_TRUE@reboot_module_LDADD = -@COND_arm_efi_TRUE@reboot_module_LDADD = -@COND_arm_uboot_TRUE@reboot_module_LDADD = -@COND_emu_TRUE@reboot_module_LDADD = -@COND_i386_coreboot_TRUE@reboot_module_LDADD = -@COND_i386_efi_TRUE@reboot_module_LDADD = -@COND_i386_ieee1275_TRUE@reboot_module_LDADD = -@COND_i386_multiboot_TRUE@reboot_module_LDADD = -@COND_i386_pc_TRUE@reboot_module_LDADD = -@COND_i386_qemu_TRUE@reboot_module_LDADD = -@COND_i386_xen_TRUE@reboot_module_LDADD = -@COND_i386_xen_pvh_TRUE@reboot_module_LDADD = -@COND_ia64_efi_TRUE@reboot_module_LDADD = -@COND_mips_arc_TRUE@reboot_module_LDADD = -@COND_mips_loongson_TRUE@reboot_module_LDADD = -@COND_mips_qemu_mips_TRUE@reboot_module_LDADD = -@COND_powerpc_ieee1275_TRUE@reboot_module_LDADD = -@COND_riscv32_efi_TRUE@reboot_module_LDADD = -@COND_riscv64_efi_TRUE@reboot_module_LDADD = -@COND_sparc64_ieee1275_TRUE@reboot_module_LDADD = -@COND_x86_64_efi_TRUE@reboot_module_LDADD = -@COND_x86_64_xen_TRUE@reboot_module_LDADD = -@COND_arm64_efi_TRUE@reboot_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_arm_coreboot_TRUE@reboot_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_arm_efi_TRUE@reboot_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_arm_uboot_TRUE@reboot_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_emu_TRUE@reboot_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_coreboot_TRUE@reboot_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_efi_TRUE@reboot_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@reboot_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_multiboot_TRUE@reboot_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_pc_TRUE@reboot_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_qemu_TRUE@reboot_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_xen_TRUE@reboot_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_xen_pvh_TRUE@reboot_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_ia64_efi_TRUE@reboot_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_mips_arc_TRUE@reboot_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_mips_loongson_TRUE@reboot_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_mips_qemu_mips_TRUE@reboot_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_powerpc_ieee1275_TRUE@reboot_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_riscv32_efi_TRUE@reboot_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_riscv64_efi_TRUE@reboot_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_sparc64_ieee1275_TRUE@reboot_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_x86_64_efi_TRUE@reboot_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_x86_64_xen_TRUE@reboot_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_arm64_efi_TRUE@reboot_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_arm_coreboot_TRUE@reboot_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_arm_efi_TRUE@reboot_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_arm_uboot_TRUE@reboot_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_emu_TRUE@reboot_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_coreboot_TRUE@reboot_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_efi_TRUE@reboot_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@reboot_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_multiboot_TRUE@reboot_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_pc_TRUE@reboot_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_qemu_TRUE@reboot_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_xen_TRUE@reboot_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_xen_pvh_TRUE@reboot_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_ia64_efi_TRUE@reboot_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_mips_arc_TRUE@reboot_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_mips_loongson_TRUE@reboot_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_mips_qemu_mips_TRUE@reboot_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_powerpc_ieee1275_TRUE@reboot_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_riscv32_efi_TRUE@reboot_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_riscv64_efi_TRUE@reboot_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_sparc64_ieee1275_TRUE@reboot_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_x86_64_efi_TRUE@reboot_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_x86_64_xen_TRUE@reboot_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_arm64_efi_TRUE@reboot_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_arm_coreboot_TRUE@reboot_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_arm_efi_TRUE@reboot_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_arm_uboot_TRUE@reboot_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_emu_TRUE@reboot_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_coreboot_TRUE@reboot_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_efi_TRUE@reboot_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@reboot_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_multiboot_TRUE@reboot_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_pc_TRUE@reboot_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_qemu_TRUE@reboot_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_xen_TRUE@reboot_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_xen_pvh_TRUE@reboot_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_ia64_efi_TRUE@reboot_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_mips_arc_TRUE@reboot_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_mips_loongson_TRUE@reboot_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_mips_qemu_mips_TRUE@reboot_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_powerpc_ieee1275_TRUE@reboot_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_riscv32_efi_TRUE@reboot_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_riscv64_efi_TRUE@reboot_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_sparc64_ieee1275_TRUE@reboot_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_x86_64_efi_TRUE@reboot_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_x86_64_xen_TRUE@reboot_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_arm64_efi_TRUE@reboot_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_arm_coreboot_TRUE@reboot_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_arm_efi_TRUE@reboot_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_arm_uboot_TRUE@reboot_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_emu_TRUE@reboot_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_coreboot_TRUE@reboot_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_efi_TRUE@reboot_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@reboot_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_multiboot_TRUE@reboot_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_pc_TRUE@reboot_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_qemu_TRUE@reboot_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_xen_TRUE@reboot_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_xen_pvh_TRUE@reboot_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_ia64_efi_TRUE@reboot_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_mips_arc_TRUE@reboot_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_mips_loongson_TRUE@reboot_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_mips_qemu_mips_TRUE@reboot_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_powerpc_ieee1275_TRUE@reboot_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_riscv32_efi_TRUE@reboot_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_riscv64_efi_TRUE@reboot_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_sparc64_ieee1275_TRUE@reboot_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_x86_64_efi_TRUE@reboot_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_x86_64_xen_TRUE@reboot_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_arm64_efi_TRUE@reboot_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_arm_coreboot_TRUE@reboot_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_arm_efi_TRUE@reboot_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_arm_uboot_TRUE@reboot_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_emu_TRUE@reboot_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_coreboot_TRUE@reboot_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_efi_TRUE@reboot_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_ieee1275_TRUE@reboot_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_multiboot_TRUE@reboot_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_pc_TRUE@reboot_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_qemu_TRUE@reboot_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_xen_TRUE@reboot_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_xen_pvh_TRUE@reboot_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_ia64_efi_TRUE@reboot_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_mips_arc_TRUE@reboot_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_mips_loongson_TRUE@reboot_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_mips_qemu_mips_TRUE@reboot_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_powerpc_ieee1275_TRUE@reboot_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_riscv32_efi_TRUE@reboot_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_riscv64_efi_TRUE@reboot_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_sparc64_ieee1275_TRUE@reboot_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_x86_64_efi_TRUE@reboot_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_x86_64_xen_TRUE@reboot_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -hashsum_module_SOURCES = commands/hashsum.c ## platform sources -nodist_hashsum_module_SOURCES = ## platform nodist sources -hashsum_module_LDADD = -hashsum_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -hashsum_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -hashsum_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -hashsum_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -hashsum_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -pgp_module_SOURCES = commands/pgp.c ## platform sources -nodist_pgp_module_SOURCES = ## platform nodist sources -pgp_module_LDADD = -pgp_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) $(CFLAGS_POSIX) -pgp_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -pgp_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -I$(srcdir)/lib/posix_wrap -pgp_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -pgp_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -verifiers_module_SOURCES = commands/verifiers.c ## platform sources -nodist_verifiers_module_SOURCES = ## platform nodist sources -verifiers_module_LDADD = -verifiers_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -verifiers_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -verifiers_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -verifiers_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -verifiers_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_x86_64_efi_TRUE@shim_lock_module_SOURCES = commands/efi/shim_lock.c ## platform sources -@COND_x86_64_efi_TRUE@nodist_shim_lock_module_SOURCES = ## platform nodist sources -@COND_x86_64_efi_TRUE@shim_lock_module_LDADD = -@COND_x86_64_efi_TRUE@shim_lock_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_x86_64_efi_TRUE@shim_lock_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_x86_64_efi_TRUE@shim_lock_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_x86_64_efi_TRUE@shim_lock_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_x86_64_efi_TRUE@shim_lock_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_coreboot_TRUE@hdparm_module_SOURCES = commands/hdparm.c ## platform sources -@COND_i386_efi_TRUE@hdparm_module_SOURCES = commands/hdparm.c ## platform sources -@COND_i386_ieee1275_TRUE@hdparm_module_SOURCES = commands/hdparm.c ## platform sources -@COND_i386_multiboot_TRUE@hdparm_module_SOURCES = commands/hdparm.c ## platform sources -@COND_i386_pc_TRUE@hdparm_module_SOURCES = commands/hdparm.c ## platform sources -@COND_i386_qemu_TRUE@hdparm_module_SOURCES = commands/hdparm.c ## platform sources -@COND_mips_loongson_TRUE@hdparm_module_SOURCES = commands/hdparm.c ## platform sources -@COND_mips_qemu_mips_TRUE@hdparm_module_SOURCES = commands/hdparm.c ## platform sources -@COND_x86_64_efi_TRUE@hdparm_module_SOURCES = commands/hdparm.c ## platform sources -@COND_i386_coreboot_TRUE@nodist_hdparm_module_SOURCES = ## platform nodist sources -@COND_i386_efi_TRUE@nodist_hdparm_module_SOURCES = ## platform nodist sources -@COND_i386_ieee1275_TRUE@nodist_hdparm_module_SOURCES = ## platform nodist sources -@COND_i386_multiboot_TRUE@nodist_hdparm_module_SOURCES = ## platform nodist sources -@COND_i386_pc_TRUE@nodist_hdparm_module_SOURCES = ## platform nodist sources -@COND_i386_qemu_TRUE@nodist_hdparm_module_SOURCES = ## platform nodist sources -@COND_mips_loongson_TRUE@nodist_hdparm_module_SOURCES = ## platform nodist sources -@COND_mips_qemu_mips_TRUE@nodist_hdparm_module_SOURCES = ## platform nodist sources -@COND_x86_64_efi_TRUE@nodist_hdparm_module_SOURCES = ## platform nodist sources -@COND_i386_coreboot_TRUE@hdparm_module_LDADD = -@COND_i386_efi_TRUE@hdparm_module_LDADD = -@COND_i386_ieee1275_TRUE@hdparm_module_LDADD = -@COND_i386_multiboot_TRUE@hdparm_module_LDADD = -@COND_i386_pc_TRUE@hdparm_module_LDADD = -@COND_i386_qemu_TRUE@hdparm_module_LDADD = -@COND_mips_loongson_TRUE@hdparm_module_LDADD = -@COND_mips_qemu_mips_TRUE@hdparm_module_LDADD = -@COND_x86_64_efi_TRUE@hdparm_module_LDADD = -@COND_i386_coreboot_TRUE@hdparm_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_efi_TRUE@hdparm_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@hdparm_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_multiboot_TRUE@hdparm_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_pc_TRUE@hdparm_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_qemu_TRUE@hdparm_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_mips_loongson_TRUE@hdparm_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_mips_qemu_mips_TRUE@hdparm_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_x86_64_efi_TRUE@hdparm_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_coreboot_TRUE@hdparm_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_efi_TRUE@hdparm_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@hdparm_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_multiboot_TRUE@hdparm_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_pc_TRUE@hdparm_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_qemu_TRUE@hdparm_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_mips_loongson_TRUE@hdparm_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_mips_qemu_mips_TRUE@hdparm_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_x86_64_efi_TRUE@hdparm_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_coreboot_TRUE@hdparm_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_efi_TRUE@hdparm_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@hdparm_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_multiboot_TRUE@hdparm_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_pc_TRUE@hdparm_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_qemu_TRUE@hdparm_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_mips_loongson_TRUE@hdparm_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_mips_qemu_mips_TRUE@hdparm_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_x86_64_efi_TRUE@hdparm_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_coreboot_TRUE@hdparm_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_efi_TRUE@hdparm_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@hdparm_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_multiboot_TRUE@hdparm_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_pc_TRUE@hdparm_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_qemu_TRUE@hdparm_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_mips_loongson_TRUE@hdparm_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_mips_qemu_mips_TRUE@hdparm_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_x86_64_efi_TRUE@hdparm_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_coreboot_TRUE@hdparm_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_efi_TRUE@hdparm_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_ieee1275_TRUE@hdparm_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_multiboot_TRUE@hdparm_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_pc_TRUE@hdparm_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_qemu_TRUE@hdparm_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_mips_loongson_TRUE@hdparm_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_mips_qemu_mips_TRUE@hdparm_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_x86_64_efi_TRUE@hdparm_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -help_module_SOURCES = commands/help.c ## platform sources -nodist_help_module_SOURCES = ## platform nodist sources -help_module_LDADD = -help_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -help_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -help_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -help_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -help_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -hexdump_module_SOURCES = commands/hexdump.c lib/hexdump.c ## platform sources -nodist_hexdump_module_SOURCES = ## platform nodist sources -hexdump_module_LDADD = -hexdump_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -hexdump_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -hexdump_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -hexdump_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -hexdump_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -keystatus_module_SOURCES = commands/keystatus.c ## platform sources -nodist_keystatus_module_SOURCES = ## platform nodist sources -keystatus_module_LDADD = -keystatus_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -keystatus_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -keystatus_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -keystatus_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -keystatus_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_efi_TRUE@loadbios_module_SOURCES = commands/efi/loadbios.c ## platform sources -@COND_x86_64_efi_TRUE@loadbios_module_SOURCES = commands/efi/loadbios.c ## platform sources -@COND_i386_efi_TRUE@nodist_loadbios_module_SOURCES = ## platform nodist sources -@COND_x86_64_efi_TRUE@nodist_loadbios_module_SOURCES = ## platform nodist sources -@COND_i386_efi_TRUE@loadbios_module_LDADD = -@COND_x86_64_efi_TRUE@loadbios_module_LDADD = -@COND_i386_efi_TRUE@loadbios_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_x86_64_efi_TRUE@loadbios_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_efi_TRUE@loadbios_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_x86_64_efi_TRUE@loadbios_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_efi_TRUE@loadbios_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_x86_64_efi_TRUE@loadbios_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_efi_TRUE@loadbios_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_x86_64_efi_TRUE@loadbios_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_efi_TRUE@loadbios_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_x86_64_efi_TRUE@loadbios_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -loadenv_module_SOURCES = commands/loadenv.c lib/envblk.c ## platform sources -nodist_loadenv_module_SOURCES = ## platform nodist sources -loadenv_module_LDADD = -loadenv_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -loadenv_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -loadenv_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -loadenv_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -loadenv_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -ls_module_SOURCES = commands/ls.c ## platform sources -nodist_ls_module_SOURCES = ## platform nodist sources -ls_module_LDADD = -ls_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -ls_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -ls_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -ls_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -ls_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -lsmmap_module_SOURCES = commands/lsmmap.c ## platform sources -nodist_lsmmap_module_SOURCES = ## platform nodist sources -lsmmap_module_LDADD = -lsmmap_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -lsmmap_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -lsmmap_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -lsmmap_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -lsmmap_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_coreboot_TRUE@lspci_module_SOURCES = commands/lspci.c ## platform sources -@COND_i386_efi_TRUE@lspci_module_SOURCES = commands/lspci.c ## platform sources -@COND_i386_ieee1275_TRUE@lspci_module_SOURCES = commands/lspci.c ## platform sources -@COND_i386_multiboot_TRUE@lspci_module_SOURCES = commands/lspci.c ## platform sources -@COND_i386_pc_TRUE@lspci_module_SOURCES = commands/lspci.c ## platform sources -@COND_i386_qemu_TRUE@lspci_module_SOURCES = commands/lspci.c ## platform sources -@COND_mips_loongson_TRUE@lspci_module_SOURCES = commands/lspci.c ## platform sources -@COND_x86_64_efi_TRUE@lspci_module_SOURCES = commands/lspci.c ## platform sources -@COND_i386_coreboot_TRUE@nodist_lspci_module_SOURCES = ## platform nodist sources -@COND_i386_efi_TRUE@nodist_lspci_module_SOURCES = ## platform nodist sources -@COND_i386_ieee1275_TRUE@nodist_lspci_module_SOURCES = ## platform nodist sources -@COND_i386_multiboot_TRUE@nodist_lspci_module_SOURCES = ## platform nodist sources -@COND_i386_pc_TRUE@nodist_lspci_module_SOURCES = ## platform nodist sources -@COND_i386_qemu_TRUE@nodist_lspci_module_SOURCES = ## platform nodist sources -@COND_mips_loongson_TRUE@nodist_lspci_module_SOURCES = ## platform nodist sources -@COND_x86_64_efi_TRUE@nodist_lspci_module_SOURCES = ## platform nodist sources -@COND_i386_coreboot_TRUE@lspci_module_LDADD = -@COND_i386_efi_TRUE@lspci_module_LDADD = -@COND_i386_ieee1275_TRUE@lspci_module_LDADD = -@COND_i386_multiboot_TRUE@lspci_module_LDADD = -@COND_i386_pc_TRUE@lspci_module_LDADD = -@COND_i386_qemu_TRUE@lspci_module_LDADD = -@COND_mips_loongson_TRUE@lspci_module_LDADD = -@COND_x86_64_efi_TRUE@lspci_module_LDADD = -@COND_i386_coreboot_TRUE@lspci_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_efi_TRUE@lspci_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@lspci_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_multiboot_TRUE@lspci_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_pc_TRUE@lspci_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_qemu_TRUE@lspci_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_mips_loongson_TRUE@lspci_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_x86_64_efi_TRUE@lspci_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_coreboot_TRUE@lspci_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_efi_TRUE@lspci_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@lspci_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_multiboot_TRUE@lspci_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_pc_TRUE@lspci_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_qemu_TRUE@lspci_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_mips_loongson_TRUE@lspci_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_x86_64_efi_TRUE@lspci_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_coreboot_TRUE@lspci_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_efi_TRUE@lspci_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@lspci_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_multiboot_TRUE@lspci_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_pc_TRUE@lspci_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_qemu_TRUE@lspci_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_mips_loongson_TRUE@lspci_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_x86_64_efi_TRUE@lspci_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_coreboot_TRUE@lspci_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_efi_TRUE@lspci_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@lspci_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_multiboot_TRUE@lspci_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_pc_TRUE@lspci_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_qemu_TRUE@lspci_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_mips_loongson_TRUE@lspci_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_x86_64_efi_TRUE@lspci_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_coreboot_TRUE@lspci_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_efi_TRUE@lspci_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_ieee1275_TRUE@lspci_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_multiboot_TRUE@lspci_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_pc_TRUE@lspci_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_qemu_TRUE@lspci_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_mips_loongson_TRUE@lspci_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_x86_64_efi_TRUE@lspci_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -memrw_module_SOURCES = commands/memrw.c ## platform sources -nodist_memrw_module_SOURCES = ## platform nodist sources -memrw_module_LDADD = -memrw_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -memrw_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -memrw_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -memrw_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -memrw_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -minicmd_module_SOURCES = commands/minicmd.c ## platform sources -nodist_minicmd_module_SOURCES = ## platform nodist sources -minicmd_module_LDADD = -minicmd_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -minicmd_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -minicmd_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -minicmd_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -minicmd_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -parttool_module_SOURCES = commands/parttool.c ## platform sources -nodist_parttool_module_SOURCES = ## platform nodist sources -parttool_module_LDADD = -parttool_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -parttool_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -parttool_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -parttool_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -parttool_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -password_module_SOURCES = commands/password.c ## platform sources -nodist_password_module_SOURCES = ## platform nodist sources -password_module_LDADD = -password_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -password_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -password_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -password_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -password_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -password_pbkdf2_module_SOURCES = commands/password_pbkdf2.c ## platform sources -nodist_password_pbkdf2_module_SOURCES = ## platform nodist sources -password_pbkdf2_module_LDADD = -password_pbkdf2_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -password_pbkdf2_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -password_pbkdf2_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -password_pbkdf2_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -password_pbkdf2_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_coreboot_TRUE@play_module_SOURCES = commands/i386/pc/play.c ## platform sources -@COND_i386_efi_TRUE@play_module_SOURCES = commands/i386/pc/play.c ## platform sources -@COND_i386_ieee1275_TRUE@play_module_SOURCES = commands/i386/pc/play.c ## platform sources -@COND_i386_multiboot_TRUE@play_module_SOURCES = commands/i386/pc/play.c ## platform sources -@COND_i386_pc_TRUE@play_module_SOURCES = commands/i386/pc/play.c ## platform sources -@COND_i386_qemu_TRUE@play_module_SOURCES = commands/i386/pc/play.c ## platform sources -@COND_x86_64_efi_TRUE@play_module_SOURCES = commands/i386/pc/play.c ## platform sources -@COND_i386_coreboot_TRUE@nodist_play_module_SOURCES = ## platform nodist sources -@COND_i386_efi_TRUE@nodist_play_module_SOURCES = ## platform nodist sources -@COND_i386_ieee1275_TRUE@nodist_play_module_SOURCES = ## platform nodist sources -@COND_i386_multiboot_TRUE@nodist_play_module_SOURCES = ## platform nodist sources -@COND_i386_pc_TRUE@nodist_play_module_SOURCES = ## platform nodist sources -@COND_i386_qemu_TRUE@nodist_play_module_SOURCES = ## platform nodist sources -@COND_x86_64_efi_TRUE@nodist_play_module_SOURCES = ## platform nodist sources -@COND_i386_coreboot_TRUE@play_module_LDADD = -@COND_i386_efi_TRUE@play_module_LDADD = -@COND_i386_ieee1275_TRUE@play_module_LDADD = -@COND_i386_multiboot_TRUE@play_module_LDADD = -@COND_i386_pc_TRUE@play_module_LDADD = -@COND_i386_qemu_TRUE@play_module_LDADD = -@COND_x86_64_efi_TRUE@play_module_LDADD = -@COND_i386_coreboot_TRUE@play_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_efi_TRUE@play_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@play_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_multiboot_TRUE@play_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_pc_TRUE@play_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_qemu_TRUE@play_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_x86_64_efi_TRUE@play_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_coreboot_TRUE@play_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_efi_TRUE@play_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@play_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_multiboot_TRUE@play_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_pc_TRUE@play_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_qemu_TRUE@play_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_x86_64_efi_TRUE@play_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_coreboot_TRUE@play_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_efi_TRUE@play_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@play_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_multiboot_TRUE@play_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_pc_TRUE@play_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_qemu_TRUE@play_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_x86_64_efi_TRUE@play_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_coreboot_TRUE@play_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_efi_TRUE@play_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@play_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_multiboot_TRUE@play_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_pc_TRUE@play_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_qemu_TRUE@play_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_x86_64_efi_TRUE@play_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_coreboot_TRUE@play_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_efi_TRUE@play_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_ieee1275_TRUE@play_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_multiboot_TRUE@play_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_pc_TRUE@play_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_qemu_TRUE@play_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_x86_64_efi_TRUE@play_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_coreboot_TRUE@spkmodem_module_SOURCES = term/spkmodem.c ## platform sources -@COND_i386_efi_TRUE@spkmodem_module_SOURCES = term/spkmodem.c ## platform sources -@COND_i386_ieee1275_TRUE@spkmodem_module_SOURCES = term/spkmodem.c ## platform sources -@COND_i386_multiboot_TRUE@spkmodem_module_SOURCES = term/spkmodem.c ## platform sources -@COND_i386_pc_TRUE@spkmodem_module_SOURCES = term/spkmodem.c ## platform sources -@COND_i386_qemu_TRUE@spkmodem_module_SOURCES = term/spkmodem.c ## platform sources -@COND_x86_64_efi_TRUE@spkmodem_module_SOURCES = term/spkmodem.c ## platform sources -@COND_i386_coreboot_TRUE@nodist_spkmodem_module_SOURCES = ## platform nodist sources -@COND_i386_efi_TRUE@nodist_spkmodem_module_SOURCES = ## platform nodist sources -@COND_i386_ieee1275_TRUE@nodist_spkmodem_module_SOURCES = ## platform nodist sources -@COND_i386_multiboot_TRUE@nodist_spkmodem_module_SOURCES = ## platform nodist sources -@COND_i386_pc_TRUE@nodist_spkmodem_module_SOURCES = ## platform nodist sources -@COND_i386_qemu_TRUE@nodist_spkmodem_module_SOURCES = ## platform nodist sources -@COND_x86_64_efi_TRUE@nodist_spkmodem_module_SOURCES = ## platform nodist sources -@COND_i386_coreboot_TRUE@spkmodem_module_LDADD = -@COND_i386_efi_TRUE@spkmodem_module_LDADD = -@COND_i386_ieee1275_TRUE@spkmodem_module_LDADD = -@COND_i386_multiboot_TRUE@spkmodem_module_LDADD = -@COND_i386_pc_TRUE@spkmodem_module_LDADD = -@COND_i386_qemu_TRUE@spkmodem_module_LDADD = -@COND_x86_64_efi_TRUE@spkmodem_module_LDADD = -@COND_i386_coreboot_TRUE@spkmodem_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_efi_TRUE@spkmodem_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@spkmodem_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_multiboot_TRUE@spkmodem_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_pc_TRUE@spkmodem_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_qemu_TRUE@spkmodem_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_x86_64_efi_TRUE@spkmodem_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_coreboot_TRUE@spkmodem_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_efi_TRUE@spkmodem_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@spkmodem_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_multiboot_TRUE@spkmodem_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_pc_TRUE@spkmodem_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_qemu_TRUE@spkmodem_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_x86_64_efi_TRUE@spkmodem_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_coreboot_TRUE@spkmodem_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_efi_TRUE@spkmodem_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@spkmodem_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_multiboot_TRUE@spkmodem_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_pc_TRUE@spkmodem_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_qemu_TRUE@spkmodem_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_x86_64_efi_TRUE@spkmodem_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_coreboot_TRUE@spkmodem_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_efi_TRUE@spkmodem_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@spkmodem_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_multiboot_TRUE@spkmodem_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_pc_TRUE@spkmodem_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_qemu_TRUE@spkmodem_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_x86_64_efi_TRUE@spkmodem_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_coreboot_TRUE@spkmodem_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_efi_TRUE@spkmodem_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_ieee1275_TRUE@spkmodem_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_multiboot_TRUE@spkmodem_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_pc_TRUE@spkmodem_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_qemu_TRUE@spkmodem_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_x86_64_efi_TRUE@spkmodem_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_coreboot_TRUE@morse_module_SOURCES = term/morse.c ## platform sources -@COND_i386_efi_TRUE@morse_module_SOURCES = term/morse.c ## platform sources -@COND_i386_ieee1275_TRUE@morse_module_SOURCES = term/morse.c ## platform sources -@COND_i386_multiboot_TRUE@morse_module_SOURCES = term/morse.c ## platform sources -@COND_i386_pc_TRUE@morse_module_SOURCES = term/morse.c ## platform sources -@COND_i386_qemu_TRUE@morse_module_SOURCES = term/morse.c ## platform sources -@COND_x86_64_efi_TRUE@morse_module_SOURCES = term/morse.c ## platform sources -@COND_i386_coreboot_TRUE@nodist_morse_module_SOURCES = ## platform nodist sources -@COND_i386_efi_TRUE@nodist_morse_module_SOURCES = ## platform nodist sources -@COND_i386_ieee1275_TRUE@nodist_morse_module_SOURCES = ## platform nodist sources -@COND_i386_multiboot_TRUE@nodist_morse_module_SOURCES = ## platform nodist sources -@COND_i386_pc_TRUE@nodist_morse_module_SOURCES = ## platform nodist sources -@COND_i386_qemu_TRUE@nodist_morse_module_SOURCES = ## platform nodist sources -@COND_x86_64_efi_TRUE@nodist_morse_module_SOURCES = ## platform nodist sources -@COND_i386_coreboot_TRUE@morse_module_LDADD = -@COND_i386_efi_TRUE@morse_module_LDADD = -@COND_i386_ieee1275_TRUE@morse_module_LDADD = -@COND_i386_multiboot_TRUE@morse_module_LDADD = -@COND_i386_pc_TRUE@morse_module_LDADD = -@COND_i386_qemu_TRUE@morse_module_LDADD = -@COND_x86_64_efi_TRUE@morse_module_LDADD = -@COND_i386_coreboot_TRUE@morse_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_efi_TRUE@morse_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@morse_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_multiboot_TRUE@morse_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_pc_TRUE@morse_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_qemu_TRUE@morse_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_x86_64_efi_TRUE@morse_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_coreboot_TRUE@morse_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_efi_TRUE@morse_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@morse_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_multiboot_TRUE@morse_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_pc_TRUE@morse_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_qemu_TRUE@morse_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_x86_64_efi_TRUE@morse_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_coreboot_TRUE@morse_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_efi_TRUE@morse_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@morse_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_multiboot_TRUE@morse_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_pc_TRUE@morse_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_qemu_TRUE@morse_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_x86_64_efi_TRUE@morse_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_coreboot_TRUE@morse_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_efi_TRUE@morse_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@morse_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_multiboot_TRUE@morse_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_pc_TRUE@morse_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_qemu_TRUE@morse_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_x86_64_efi_TRUE@morse_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_coreboot_TRUE@morse_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_efi_TRUE@morse_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_ieee1275_TRUE@morse_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_multiboot_TRUE@morse_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_pc_TRUE@morse_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_qemu_TRUE@morse_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_x86_64_efi_TRUE@morse_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -probe_module_SOURCES = commands/probe.c ## platform sources -nodist_probe_module_SOURCES = ## platform nodist sources -probe_module_LDADD = -probe_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -probe_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -probe_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -probe_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -probe_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -read_module_SOURCES = commands/read.c ## platform sources -nodist_read_module_SOURCES = ## platform nodist sources -read_module_LDADD = -read_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -read_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -read_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -read_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -read_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -search_module_SOURCES = commands/search_wrap.c ## platform sources -nodist_search_module_SOURCES = ## platform nodist sources -search_module_LDADD = -search_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -search_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -search_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -search_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -search_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -search_fs_file_module_SOURCES = commands/search_file.c ## platform sources -nodist_search_fs_file_module_SOURCES = ## platform nodist sources -search_fs_file_module_LDADD = -search_fs_file_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -search_fs_file_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -search_fs_file_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -search_fs_file_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -search_fs_file_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -search_fs_uuid_module_SOURCES = commands/search_uuid.c ## platform sources -nodist_search_fs_uuid_module_SOURCES = ## platform nodist sources -search_fs_uuid_module_LDADD = -search_fs_uuid_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -search_fs_uuid_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -search_fs_uuid_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -search_fs_uuid_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -search_fs_uuid_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -search_label_module_SOURCES = commands/search_label.c ## platform sources -nodist_search_label_module_SOURCES = ## platform nodist sources -search_label_module_LDADD = -search_label_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -search_label_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -search_label_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -search_label_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -search_label_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_coreboot_TRUE@setpci_module_SOURCES = commands/setpci.c ## platform sources -@COND_i386_efi_TRUE@setpci_module_SOURCES = commands/setpci.c ## platform sources -@COND_i386_ieee1275_TRUE@setpci_module_SOURCES = commands/setpci.c ## platform sources -@COND_i386_multiboot_TRUE@setpci_module_SOURCES = commands/setpci.c ## platform sources -@COND_i386_pc_TRUE@setpci_module_SOURCES = commands/setpci.c ## platform sources -@COND_i386_qemu_TRUE@setpci_module_SOURCES = commands/setpci.c ## platform sources -@COND_mips_loongson_TRUE@setpci_module_SOURCES = commands/setpci.c ## platform sources -@COND_x86_64_efi_TRUE@setpci_module_SOURCES = commands/setpci.c ## platform sources -@COND_i386_coreboot_TRUE@nodist_setpci_module_SOURCES = ## platform nodist sources -@COND_i386_efi_TRUE@nodist_setpci_module_SOURCES = ## platform nodist sources -@COND_i386_ieee1275_TRUE@nodist_setpci_module_SOURCES = ## platform nodist sources -@COND_i386_multiboot_TRUE@nodist_setpci_module_SOURCES = ## platform nodist sources -@COND_i386_pc_TRUE@nodist_setpci_module_SOURCES = ## platform nodist sources -@COND_i386_qemu_TRUE@nodist_setpci_module_SOURCES = ## platform nodist sources -@COND_mips_loongson_TRUE@nodist_setpci_module_SOURCES = ## platform nodist sources -@COND_x86_64_efi_TRUE@nodist_setpci_module_SOURCES = ## platform nodist sources -@COND_i386_coreboot_TRUE@setpci_module_LDADD = -@COND_i386_efi_TRUE@setpci_module_LDADD = -@COND_i386_ieee1275_TRUE@setpci_module_LDADD = -@COND_i386_multiboot_TRUE@setpci_module_LDADD = -@COND_i386_pc_TRUE@setpci_module_LDADD = -@COND_i386_qemu_TRUE@setpci_module_LDADD = -@COND_mips_loongson_TRUE@setpci_module_LDADD = -@COND_x86_64_efi_TRUE@setpci_module_LDADD = -@COND_i386_coreboot_TRUE@setpci_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_efi_TRUE@setpci_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@setpci_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_multiboot_TRUE@setpci_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_pc_TRUE@setpci_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_qemu_TRUE@setpci_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_mips_loongson_TRUE@setpci_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_x86_64_efi_TRUE@setpci_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_coreboot_TRUE@setpci_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_efi_TRUE@setpci_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@setpci_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_multiboot_TRUE@setpci_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_pc_TRUE@setpci_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_qemu_TRUE@setpci_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_mips_loongson_TRUE@setpci_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_x86_64_efi_TRUE@setpci_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_coreboot_TRUE@setpci_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_efi_TRUE@setpci_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@setpci_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_multiboot_TRUE@setpci_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_pc_TRUE@setpci_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_qemu_TRUE@setpci_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_mips_loongson_TRUE@setpci_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_x86_64_efi_TRUE@setpci_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_coreboot_TRUE@setpci_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_efi_TRUE@setpci_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@setpci_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_multiboot_TRUE@setpci_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_pc_TRUE@setpci_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_qemu_TRUE@setpci_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_mips_loongson_TRUE@setpci_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_x86_64_efi_TRUE@setpci_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_coreboot_TRUE@setpci_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_efi_TRUE@setpci_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_ieee1275_TRUE@setpci_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_multiboot_TRUE@setpci_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_pc_TRUE@setpci_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_qemu_TRUE@setpci_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_mips_loongson_TRUE@setpci_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_x86_64_efi_TRUE@setpci_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_coreboot_TRUE@pcidump_module_SOURCES = commands/pcidump.c ## platform sources -@COND_i386_efi_TRUE@pcidump_module_SOURCES = commands/pcidump.c ## platform sources -@COND_i386_ieee1275_TRUE@pcidump_module_SOURCES = commands/pcidump.c ## platform sources -@COND_i386_multiboot_TRUE@pcidump_module_SOURCES = commands/pcidump.c ## platform sources -@COND_i386_pc_TRUE@pcidump_module_SOURCES = commands/pcidump.c ## platform sources -@COND_i386_qemu_TRUE@pcidump_module_SOURCES = commands/pcidump.c ## platform sources -@COND_mips_loongson_TRUE@pcidump_module_SOURCES = commands/pcidump.c ## platform sources -@COND_x86_64_efi_TRUE@pcidump_module_SOURCES = commands/pcidump.c ## platform sources -@COND_i386_coreboot_TRUE@nodist_pcidump_module_SOURCES = ## platform nodist sources -@COND_i386_efi_TRUE@nodist_pcidump_module_SOURCES = ## platform nodist sources -@COND_i386_ieee1275_TRUE@nodist_pcidump_module_SOURCES = ## platform nodist sources -@COND_i386_multiboot_TRUE@nodist_pcidump_module_SOURCES = ## platform nodist sources -@COND_i386_pc_TRUE@nodist_pcidump_module_SOURCES = ## platform nodist sources -@COND_i386_qemu_TRUE@nodist_pcidump_module_SOURCES = ## platform nodist sources -@COND_mips_loongson_TRUE@nodist_pcidump_module_SOURCES = ## platform nodist sources -@COND_x86_64_efi_TRUE@nodist_pcidump_module_SOURCES = ## platform nodist sources -@COND_i386_coreboot_TRUE@pcidump_module_LDADD = -@COND_i386_efi_TRUE@pcidump_module_LDADD = -@COND_i386_ieee1275_TRUE@pcidump_module_LDADD = -@COND_i386_multiboot_TRUE@pcidump_module_LDADD = -@COND_i386_pc_TRUE@pcidump_module_LDADD = -@COND_i386_qemu_TRUE@pcidump_module_LDADD = -@COND_mips_loongson_TRUE@pcidump_module_LDADD = -@COND_x86_64_efi_TRUE@pcidump_module_LDADD = -@COND_i386_coreboot_TRUE@pcidump_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_efi_TRUE@pcidump_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@pcidump_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_multiboot_TRUE@pcidump_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_pc_TRUE@pcidump_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_qemu_TRUE@pcidump_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_mips_loongson_TRUE@pcidump_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_x86_64_efi_TRUE@pcidump_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_coreboot_TRUE@pcidump_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_efi_TRUE@pcidump_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@pcidump_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_multiboot_TRUE@pcidump_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_pc_TRUE@pcidump_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_qemu_TRUE@pcidump_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_mips_loongson_TRUE@pcidump_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_x86_64_efi_TRUE@pcidump_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_coreboot_TRUE@pcidump_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_efi_TRUE@pcidump_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@pcidump_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_multiboot_TRUE@pcidump_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_pc_TRUE@pcidump_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_qemu_TRUE@pcidump_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_mips_loongson_TRUE@pcidump_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_x86_64_efi_TRUE@pcidump_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_coreboot_TRUE@pcidump_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_efi_TRUE@pcidump_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@pcidump_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_multiboot_TRUE@pcidump_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_pc_TRUE@pcidump_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_qemu_TRUE@pcidump_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_mips_loongson_TRUE@pcidump_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_x86_64_efi_TRUE@pcidump_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_coreboot_TRUE@pcidump_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_efi_TRUE@pcidump_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_ieee1275_TRUE@pcidump_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_multiboot_TRUE@pcidump_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_pc_TRUE@pcidump_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_qemu_TRUE@pcidump_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_mips_loongson_TRUE@pcidump_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_x86_64_efi_TRUE@pcidump_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -sleep_module_SOURCES = commands/sleep.c ## platform sources -nodist_sleep_module_SOURCES = ## platform nodist sources -sleep_module_LDADD = -sleep_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -sleep_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -sleep_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -sleep_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -sleep_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_ieee1275_TRUE@suspend_module_SOURCES = commands/ieee1275/suspend.c ## platform sources -@COND_powerpc_ieee1275_TRUE@suspend_module_SOURCES = commands/ieee1275/suspend.c ## platform sources -@COND_i386_ieee1275_TRUE@nodist_suspend_module_SOURCES = ## platform nodist sources -@COND_powerpc_ieee1275_TRUE@nodist_suspend_module_SOURCES = ## platform nodist sources -@COND_i386_ieee1275_TRUE@suspend_module_LDADD = -@COND_powerpc_ieee1275_TRUE@suspend_module_LDADD = -@COND_i386_ieee1275_TRUE@suspend_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_powerpc_ieee1275_TRUE@suspend_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@suspend_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_powerpc_ieee1275_TRUE@suspend_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@suspend_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_powerpc_ieee1275_TRUE@suspend_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@suspend_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_powerpc_ieee1275_TRUE@suspend_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@suspend_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_powerpc_ieee1275_TRUE@suspend_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_powerpc_ieee1275_TRUE@escc_module_SOURCES = term/ieee1275/escc.c ## platform sources -@COND_powerpc_ieee1275_TRUE@nodist_escc_module_SOURCES = ## platform nodist sources -@COND_powerpc_ieee1275_TRUE@escc_module_LDADD = -@COND_powerpc_ieee1275_TRUE@escc_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_powerpc_ieee1275_TRUE@escc_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_powerpc_ieee1275_TRUE@escc_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_powerpc_ieee1275_TRUE@escc_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_powerpc_ieee1275_TRUE@escc_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -terminal_module_SOURCES = commands/terminal.c ## platform sources -nodist_terminal_module_SOURCES = ## platform nodist sources -terminal_module_LDADD = -terminal_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -terminal_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -terminal_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -terminal_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -terminal_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -test_module_SOURCES = commands/test.c ## platform sources -nodist_test_module_SOURCES = ## platform nodist sources -test_module_LDADD = -test_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -test_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -test_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -test_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -test_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -true_module_SOURCES = commands/true.c ## platform sources -nodist_true_module_SOURCES = ## platform nodist sources -true_module_LDADD = -true_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -true_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -true_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -true_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -true_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_arm_coreboot_TRUE@usbtest_module_SOURCES = commands/usbtest.c ## platform sources -@COND_i386_coreboot_TRUE@usbtest_module_SOURCES = commands/usbtest.c ## platform sources -@COND_i386_efi_TRUE@usbtest_module_SOURCES = commands/usbtest.c ## platform sources -@COND_i386_ieee1275_TRUE@usbtest_module_SOURCES = commands/usbtest.c ## platform sources -@COND_i386_multiboot_TRUE@usbtest_module_SOURCES = commands/usbtest.c ## platform sources -@COND_i386_pc_TRUE@usbtest_module_SOURCES = commands/usbtest.c ## platform sources -@COND_i386_qemu_TRUE@usbtest_module_SOURCES = commands/usbtest.c ## platform sources -@COND_mips_loongson_TRUE@usbtest_module_SOURCES = commands/usbtest.c ## platform sources -@COND_x86_64_efi_TRUE@usbtest_module_SOURCES = commands/usbtest.c ## platform sources -@COND_arm_coreboot_TRUE@nodist_usbtest_module_SOURCES = ## platform nodist sources -@COND_i386_coreboot_TRUE@nodist_usbtest_module_SOURCES = ## platform nodist sources -@COND_i386_efi_TRUE@nodist_usbtest_module_SOURCES = ## platform nodist sources -@COND_i386_ieee1275_TRUE@nodist_usbtest_module_SOURCES = ## platform nodist sources -@COND_i386_multiboot_TRUE@nodist_usbtest_module_SOURCES = ## platform nodist sources -@COND_i386_pc_TRUE@nodist_usbtest_module_SOURCES = ## platform nodist sources -@COND_i386_qemu_TRUE@nodist_usbtest_module_SOURCES = ## platform nodist sources -@COND_mips_loongson_TRUE@nodist_usbtest_module_SOURCES = ## platform nodist sources -@COND_x86_64_efi_TRUE@nodist_usbtest_module_SOURCES = ## platform nodist sources -@COND_arm_coreboot_TRUE@usbtest_module_LDADD = -@COND_i386_coreboot_TRUE@usbtest_module_LDADD = -@COND_i386_efi_TRUE@usbtest_module_LDADD = -@COND_i386_ieee1275_TRUE@usbtest_module_LDADD = -@COND_i386_multiboot_TRUE@usbtest_module_LDADD = -@COND_i386_pc_TRUE@usbtest_module_LDADD = -@COND_i386_qemu_TRUE@usbtest_module_LDADD = -@COND_mips_loongson_TRUE@usbtest_module_LDADD = -@COND_x86_64_efi_TRUE@usbtest_module_LDADD = -@COND_arm_coreboot_TRUE@usbtest_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_coreboot_TRUE@usbtest_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_efi_TRUE@usbtest_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@usbtest_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_multiboot_TRUE@usbtest_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_pc_TRUE@usbtest_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_qemu_TRUE@usbtest_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_mips_loongson_TRUE@usbtest_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_x86_64_efi_TRUE@usbtest_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_arm_coreboot_TRUE@usbtest_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_coreboot_TRUE@usbtest_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_efi_TRUE@usbtest_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@usbtest_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_multiboot_TRUE@usbtest_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_pc_TRUE@usbtest_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_qemu_TRUE@usbtest_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_mips_loongson_TRUE@usbtest_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_x86_64_efi_TRUE@usbtest_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_arm_coreboot_TRUE@usbtest_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_coreboot_TRUE@usbtest_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_efi_TRUE@usbtest_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@usbtest_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_multiboot_TRUE@usbtest_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_pc_TRUE@usbtest_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_qemu_TRUE@usbtest_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_mips_loongson_TRUE@usbtest_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_x86_64_efi_TRUE@usbtest_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_arm_coreboot_TRUE@usbtest_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_coreboot_TRUE@usbtest_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_efi_TRUE@usbtest_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@usbtest_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_multiboot_TRUE@usbtest_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_pc_TRUE@usbtest_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_qemu_TRUE@usbtest_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_mips_loongson_TRUE@usbtest_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_x86_64_efi_TRUE@usbtest_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_arm_coreboot_TRUE@usbtest_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_coreboot_TRUE@usbtest_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_efi_TRUE@usbtest_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_ieee1275_TRUE@usbtest_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_multiboot_TRUE@usbtest_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_pc_TRUE@usbtest_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_qemu_TRUE@usbtest_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_mips_loongson_TRUE@usbtest_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_x86_64_efi_TRUE@usbtest_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -videoinfo_module_SOURCES = commands/videoinfo.c ## platform sources -nodist_videoinfo_module_SOURCES = ## platform nodist sources -videoinfo_module_LDADD = -videoinfo_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -videoinfo_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -videoinfo_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -videoinfo_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -videoinfo_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -videotest_module_SOURCES = commands/videotest.c ## platform sources -nodist_videotest_module_SOURCES = ## platform nodist sources -videotest_module_LDADD = -videotest_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -videotest_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -videotest_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -videotest_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -videotest_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -xnu_uuid_module_SOURCES = commands/xnu_uuid.c ## platform sources -nodist_xnu_uuid_module_SOURCES = ## platform nodist sources -xnu_uuid_module_LDADD = -xnu_uuid_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -xnu_uuid_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -xnu_uuid_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -xnu_uuid_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -xnu_uuid_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -dm_nv_module_SOURCES = disk/dmraid_nvidia.c ## platform sources -nodist_dm_nv_module_SOURCES = ## platform nodist sources -dm_nv_module_LDADD = -dm_nv_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -dm_nv_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -dm_nv_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -dm_nv_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -dm_nv_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -loopback_module_SOURCES = disk/loopback.c ## platform sources -nodist_loopback_module_SOURCES = ## platform nodist sources -loopback_module_LDADD = -loopback_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -loopback_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -loopback_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -loopback_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -loopback_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -cryptodisk_module_SOURCES = disk/cryptodisk.c ## platform sources -nodist_cryptodisk_module_SOURCES = ## platform nodist sources -cryptodisk_module_LDADD = -cryptodisk_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -cryptodisk_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -cryptodisk_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -cryptodisk_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -cryptodisk_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -luks_module_SOURCES = disk/luks.c disk/AFSplitter.c ## platform sources -nodist_luks_module_SOURCES = ## platform nodist sources -luks_module_LDADD = -luks_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -luks_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -luks_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -luks_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -luks_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -geli_module_SOURCES = disk/geli.c ## platform sources -nodist_geli_module_SOURCES = ## platform nodist sources -geli_module_LDADD = -geli_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -geli_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -geli_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -geli_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -geli_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -lvm_module_SOURCES = disk/lvm.c ## platform sources -nodist_lvm_module_SOURCES = ## platform nodist sources -lvm_module_LDADD = -lvm_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -lvm_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -lvm_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -lvm_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -lvm_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -ldm_module_SOURCES = disk/ldm.c ## platform sources -nodist_ldm_module_SOURCES = ## platform nodist sources -ldm_module_LDADD = -ldm_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -ldm_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -ldm_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -ldm_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -ldm_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -mdraid09_module_SOURCES = disk/mdraid_linux.c ## platform sources -nodist_mdraid09_module_SOURCES = ## platform nodist sources -mdraid09_module_LDADD = -mdraid09_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -mdraid09_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -mdraid09_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -mdraid09_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -mdraid09_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -mdraid09_be_module_SOURCES = disk/mdraid_linux_be.c ## platform sources -nodist_mdraid09_be_module_SOURCES = ## platform nodist sources -mdraid09_be_module_LDADD = -mdraid09_be_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -mdraid09_be_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -mdraid09_be_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -mdraid09_be_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -mdraid09_be_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -mdraid1x_module_SOURCES = disk/mdraid1x_linux.c ## platform sources -nodist_mdraid1x_module_SOURCES = ## platform nodist sources -mdraid1x_module_LDADD = -mdraid1x_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -mdraid1x_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -mdraid1x_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -mdraid1x_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -mdraid1x_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -diskfilter_module_SOURCES = disk/diskfilter.c ## platform sources -nodist_diskfilter_module_SOURCES = ## platform nodist sources -diskfilter_module_LDADD = -diskfilter_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -diskfilter_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -diskfilter_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -diskfilter_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -diskfilter_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -raid5rec_module_SOURCES = disk/raid5_recover.c ## platform sources -nodist_raid5rec_module_SOURCES = ## platform nodist sources -raid5rec_module_LDADD = -raid5rec_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -raid5rec_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -raid5rec_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -raid5rec_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -raid5rec_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -raid6rec_module_SOURCES = disk/raid6_recover.c ## platform sources -nodist_raid6rec_module_SOURCES = ## platform nodist sources -raid6rec_module_LDADD = -raid6rec_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -raid6rec_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -raid6rec_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -raid6rec_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -raid6rec_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -scsi_module_SOURCES = disk/scsi.c ## platform sources -nodist_scsi_module_SOURCES = ## platform nodist sources -scsi_module_LDADD = -scsi_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -scsi_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -scsi_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -scsi_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -scsi_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -memdisk_module_SOURCES = disk/memdisk.c ## platform sources -nodist_memdisk_module_SOURCES = ## platform nodist sources -memdisk_module_LDADD = -memdisk_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -memdisk_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -memdisk_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -memdisk_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -memdisk_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_coreboot_TRUE@ata_module_SOURCES = disk/ata.c ## platform sources -@COND_i386_efi_TRUE@ata_module_SOURCES = disk/ata.c ## platform sources -@COND_i386_ieee1275_TRUE@ata_module_SOURCES = disk/ata.c ## platform sources -@COND_i386_multiboot_TRUE@ata_module_SOURCES = disk/ata.c ## platform sources -@COND_i386_pc_TRUE@ata_module_SOURCES = disk/ata.c ## platform sources -@COND_i386_qemu_TRUE@ata_module_SOURCES = disk/ata.c ## platform sources -@COND_mips_loongson_TRUE@ata_module_SOURCES = disk/ata.c ## platform sources -@COND_mips_qemu_mips_TRUE@ata_module_SOURCES = disk/ata.c ## platform sources -@COND_x86_64_efi_TRUE@ata_module_SOURCES = disk/ata.c ## platform sources -@COND_i386_coreboot_TRUE@nodist_ata_module_SOURCES = ## platform nodist sources -@COND_i386_efi_TRUE@nodist_ata_module_SOURCES = ## platform nodist sources -@COND_i386_ieee1275_TRUE@nodist_ata_module_SOURCES = ## platform nodist sources -@COND_i386_multiboot_TRUE@nodist_ata_module_SOURCES = ## platform nodist sources -@COND_i386_pc_TRUE@nodist_ata_module_SOURCES = ## platform nodist sources -@COND_i386_qemu_TRUE@nodist_ata_module_SOURCES = ## platform nodist sources -@COND_mips_loongson_TRUE@nodist_ata_module_SOURCES = ## platform nodist sources -@COND_mips_qemu_mips_TRUE@nodist_ata_module_SOURCES = ## platform nodist sources -@COND_x86_64_efi_TRUE@nodist_ata_module_SOURCES = ## platform nodist sources -@COND_i386_coreboot_TRUE@ata_module_LDADD = -@COND_i386_efi_TRUE@ata_module_LDADD = -@COND_i386_ieee1275_TRUE@ata_module_LDADD = -@COND_i386_multiboot_TRUE@ata_module_LDADD = -@COND_i386_pc_TRUE@ata_module_LDADD = -@COND_i386_qemu_TRUE@ata_module_LDADD = -@COND_mips_loongson_TRUE@ata_module_LDADD = -@COND_mips_qemu_mips_TRUE@ata_module_LDADD = -@COND_x86_64_efi_TRUE@ata_module_LDADD = -@COND_i386_coreboot_TRUE@ata_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_efi_TRUE@ata_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@ata_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_multiboot_TRUE@ata_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_pc_TRUE@ata_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_qemu_TRUE@ata_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_mips_loongson_TRUE@ata_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_mips_qemu_mips_TRUE@ata_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_x86_64_efi_TRUE@ata_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_coreboot_TRUE@ata_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_efi_TRUE@ata_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@ata_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_multiboot_TRUE@ata_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_pc_TRUE@ata_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_qemu_TRUE@ata_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_mips_loongson_TRUE@ata_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_mips_qemu_mips_TRUE@ata_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_x86_64_efi_TRUE@ata_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_coreboot_TRUE@ata_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_efi_TRUE@ata_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@ata_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_multiboot_TRUE@ata_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_pc_TRUE@ata_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_qemu_TRUE@ata_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_mips_loongson_TRUE@ata_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_mips_qemu_mips_TRUE@ata_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_x86_64_efi_TRUE@ata_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_coreboot_TRUE@ata_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_efi_TRUE@ata_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@ata_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_multiboot_TRUE@ata_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_pc_TRUE@ata_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_qemu_TRUE@ata_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_mips_loongson_TRUE@ata_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_mips_qemu_mips_TRUE@ata_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_x86_64_efi_TRUE@ata_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_coreboot_TRUE@ata_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_efi_TRUE@ata_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_ieee1275_TRUE@ata_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_multiboot_TRUE@ata_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_pc_TRUE@ata_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_qemu_TRUE@ata_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_mips_loongson_TRUE@ata_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_mips_qemu_mips_TRUE@ata_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_x86_64_efi_TRUE@ata_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_coreboot_TRUE@ahci_module_SOURCES = disk/ahci.c ## platform sources -@COND_i386_efi_TRUE@ahci_module_SOURCES = disk/ahci.c ## platform sources -@COND_i386_ieee1275_TRUE@ahci_module_SOURCES = disk/ahci.c ## platform sources -@COND_i386_multiboot_TRUE@ahci_module_SOURCES = disk/ahci.c ## platform sources -@COND_i386_pc_TRUE@ahci_module_SOURCES = disk/ahci.c ## platform sources -@COND_i386_qemu_TRUE@ahci_module_SOURCES = disk/ahci.c ## platform sources -@COND_mips_loongson_TRUE@ahci_module_SOURCES = disk/ahci.c ## platform sources -@COND_x86_64_efi_TRUE@ahci_module_SOURCES = disk/ahci.c ## platform sources -@COND_i386_coreboot_TRUE@nodist_ahci_module_SOURCES = ## platform nodist sources -@COND_i386_efi_TRUE@nodist_ahci_module_SOURCES = ## platform nodist sources -@COND_i386_ieee1275_TRUE@nodist_ahci_module_SOURCES = ## platform nodist sources -@COND_i386_multiboot_TRUE@nodist_ahci_module_SOURCES = ## platform nodist sources -@COND_i386_pc_TRUE@nodist_ahci_module_SOURCES = ## platform nodist sources -@COND_i386_qemu_TRUE@nodist_ahci_module_SOURCES = ## platform nodist sources -@COND_mips_loongson_TRUE@nodist_ahci_module_SOURCES = ## platform nodist sources -@COND_x86_64_efi_TRUE@nodist_ahci_module_SOURCES = ## platform nodist sources -@COND_i386_coreboot_TRUE@ahci_module_LDADD = -@COND_i386_efi_TRUE@ahci_module_LDADD = -@COND_i386_ieee1275_TRUE@ahci_module_LDADD = -@COND_i386_multiboot_TRUE@ahci_module_LDADD = -@COND_i386_pc_TRUE@ahci_module_LDADD = -@COND_i386_qemu_TRUE@ahci_module_LDADD = -@COND_mips_loongson_TRUE@ahci_module_LDADD = -@COND_x86_64_efi_TRUE@ahci_module_LDADD = -@COND_i386_coreboot_TRUE@ahci_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_efi_TRUE@ahci_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@ahci_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_multiboot_TRUE@ahci_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_pc_TRUE@ahci_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_qemu_TRUE@ahci_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_mips_loongson_TRUE@ahci_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_x86_64_efi_TRUE@ahci_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_coreboot_TRUE@ahci_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_efi_TRUE@ahci_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@ahci_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_multiboot_TRUE@ahci_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_pc_TRUE@ahci_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_qemu_TRUE@ahci_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_mips_loongson_TRUE@ahci_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_x86_64_efi_TRUE@ahci_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_coreboot_TRUE@ahci_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_efi_TRUE@ahci_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@ahci_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_multiboot_TRUE@ahci_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_pc_TRUE@ahci_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_qemu_TRUE@ahci_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_mips_loongson_TRUE@ahci_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_x86_64_efi_TRUE@ahci_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_coreboot_TRUE@ahci_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_efi_TRUE@ahci_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@ahci_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_multiboot_TRUE@ahci_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_pc_TRUE@ahci_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_qemu_TRUE@ahci_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_mips_loongson_TRUE@ahci_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_x86_64_efi_TRUE@ahci_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_coreboot_TRUE@ahci_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_efi_TRUE@ahci_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_ieee1275_TRUE@ahci_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_multiboot_TRUE@ahci_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_pc_TRUE@ahci_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_qemu_TRUE@ahci_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_mips_loongson_TRUE@ahci_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_x86_64_efi_TRUE@ahci_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_coreboot_TRUE@pata_module_SOURCES = disk/pata.c ## platform sources -@COND_i386_efi_TRUE@pata_module_SOURCES = disk/pata.c ## platform sources -@COND_i386_ieee1275_TRUE@pata_module_SOURCES = disk/pata.c ## platform sources -@COND_i386_multiboot_TRUE@pata_module_SOURCES = disk/pata.c ## platform sources -@COND_i386_pc_TRUE@pata_module_SOURCES = disk/pata.c ## platform sources -@COND_i386_qemu_TRUE@pata_module_SOURCES = disk/pata.c ## platform sources -@COND_mips_loongson_TRUE@pata_module_SOURCES = disk/pata.c ## platform sources -@COND_mips_qemu_mips_TRUE@pata_module_SOURCES = disk/pata.c ## platform sources -@COND_x86_64_efi_TRUE@pata_module_SOURCES = disk/pata.c ## platform sources -@COND_i386_coreboot_TRUE@nodist_pata_module_SOURCES = ## platform nodist sources -@COND_i386_efi_TRUE@nodist_pata_module_SOURCES = ## platform nodist sources -@COND_i386_ieee1275_TRUE@nodist_pata_module_SOURCES = ## platform nodist sources -@COND_i386_multiboot_TRUE@nodist_pata_module_SOURCES = ## platform nodist sources -@COND_i386_pc_TRUE@nodist_pata_module_SOURCES = ## platform nodist sources -@COND_i386_qemu_TRUE@nodist_pata_module_SOURCES = ## platform nodist sources -@COND_mips_loongson_TRUE@nodist_pata_module_SOURCES = ## platform nodist sources -@COND_mips_qemu_mips_TRUE@nodist_pata_module_SOURCES = ## platform nodist sources -@COND_x86_64_efi_TRUE@nodist_pata_module_SOURCES = ## platform nodist sources -@COND_i386_coreboot_TRUE@pata_module_LDADD = -@COND_i386_efi_TRUE@pata_module_LDADD = -@COND_i386_ieee1275_TRUE@pata_module_LDADD = -@COND_i386_multiboot_TRUE@pata_module_LDADD = -@COND_i386_pc_TRUE@pata_module_LDADD = -@COND_i386_qemu_TRUE@pata_module_LDADD = -@COND_mips_loongson_TRUE@pata_module_LDADD = -@COND_mips_qemu_mips_TRUE@pata_module_LDADD = -@COND_x86_64_efi_TRUE@pata_module_LDADD = -@COND_i386_coreboot_TRUE@pata_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_efi_TRUE@pata_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@pata_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_multiboot_TRUE@pata_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_pc_TRUE@pata_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_qemu_TRUE@pata_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_mips_loongson_TRUE@pata_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_mips_qemu_mips_TRUE@pata_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_x86_64_efi_TRUE@pata_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_coreboot_TRUE@pata_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_efi_TRUE@pata_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@pata_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_multiboot_TRUE@pata_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_pc_TRUE@pata_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_qemu_TRUE@pata_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_mips_loongson_TRUE@pata_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_mips_qemu_mips_TRUE@pata_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_x86_64_efi_TRUE@pata_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_coreboot_TRUE@pata_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_efi_TRUE@pata_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@pata_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_multiboot_TRUE@pata_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_pc_TRUE@pata_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_qemu_TRUE@pata_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_mips_loongson_TRUE@pata_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_mips_qemu_mips_TRUE@pata_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_x86_64_efi_TRUE@pata_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_coreboot_TRUE@pata_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_efi_TRUE@pata_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@pata_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_multiboot_TRUE@pata_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_pc_TRUE@pata_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_qemu_TRUE@pata_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_mips_loongson_TRUE@pata_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_mips_qemu_mips_TRUE@pata_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_x86_64_efi_TRUE@pata_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_coreboot_TRUE@pata_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_efi_TRUE@pata_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_ieee1275_TRUE@pata_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_multiboot_TRUE@pata_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_pc_TRUE@pata_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_qemu_TRUE@pata_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_mips_loongson_TRUE@pata_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_mips_qemu_mips_TRUE@pata_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_x86_64_efi_TRUE@pata_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_pc_TRUE@biosdisk_module_SOURCES = disk/i386/pc/biosdisk.c ## platform sources -@COND_i386_pc_TRUE@nodist_biosdisk_module_SOURCES = ## platform nodist sources -@COND_i386_pc_TRUE@biosdisk_module_LDADD = -@COND_i386_pc_TRUE@biosdisk_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_pc_TRUE@biosdisk_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_pc_TRUE@biosdisk_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_pc_TRUE@biosdisk_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_pc_TRUE@biosdisk_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_arm_coreboot_TRUE@usbms_module_SOURCES = disk/usbms.c ## platform sources -@COND_i386_coreboot_TRUE@usbms_module_SOURCES = disk/usbms.c ## platform sources -@COND_i386_efi_TRUE@usbms_module_SOURCES = disk/usbms.c ## platform sources -@COND_i386_ieee1275_TRUE@usbms_module_SOURCES = disk/usbms.c ## platform sources -@COND_i386_multiboot_TRUE@usbms_module_SOURCES = disk/usbms.c ## platform sources -@COND_i386_pc_TRUE@usbms_module_SOURCES = disk/usbms.c ## platform sources -@COND_i386_qemu_TRUE@usbms_module_SOURCES = disk/usbms.c ## platform sources -@COND_mips_loongson_TRUE@usbms_module_SOURCES = disk/usbms.c ## platform sources -@COND_x86_64_efi_TRUE@usbms_module_SOURCES = disk/usbms.c ## platform sources -@COND_arm_coreboot_TRUE@nodist_usbms_module_SOURCES = ## platform nodist sources -@COND_i386_coreboot_TRUE@nodist_usbms_module_SOURCES = ## platform nodist sources -@COND_i386_efi_TRUE@nodist_usbms_module_SOURCES = ## platform nodist sources -@COND_i386_ieee1275_TRUE@nodist_usbms_module_SOURCES = ## platform nodist sources -@COND_i386_multiboot_TRUE@nodist_usbms_module_SOURCES = ## platform nodist sources -@COND_i386_pc_TRUE@nodist_usbms_module_SOURCES = ## platform nodist sources -@COND_i386_qemu_TRUE@nodist_usbms_module_SOURCES = ## platform nodist sources -@COND_mips_loongson_TRUE@nodist_usbms_module_SOURCES = ## platform nodist sources -@COND_x86_64_efi_TRUE@nodist_usbms_module_SOURCES = ## platform nodist sources -@COND_arm_coreboot_TRUE@usbms_module_LDADD = -@COND_i386_coreboot_TRUE@usbms_module_LDADD = -@COND_i386_efi_TRUE@usbms_module_LDADD = -@COND_i386_ieee1275_TRUE@usbms_module_LDADD = -@COND_i386_multiboot_TRUE@usbms_module_LDADD = -@COND_i386_pc_TRUE@usbms_module_LDADD = -@COND_i386_qemu_TRUE@usbms_module_LDADD = -@COND_mips_loongson_TRUE@usbms_module_LDADD = -@COND_x86_64_efi_TRUE@usbms_module_LDADD = -@COND_arm_coreboot_TRUE@usbms_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_coreboot_TRUE@usbms_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_efi_TRUE@usbms_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@usbms_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_multiboot_TRUE@usbms_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_pc_TRUE@usbms_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_qemu_TRUE@usbms_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_mips_loongson_TRUE@usbms_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_x86_64_efi_TRUE@usbms_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_arm_coreboot_TRUE@usbms_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_coreboot_TRUE@usbms_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_efi_TRUE@usbms_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@usbms_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_multiboot_TRUE@usbms_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_pc_TRUE@usbms_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_qemu_TRUE@usbms_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_mips_loongson_TRUE@usbms_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_x86_64_efi_TRUE@usbms_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_arm_coreboot_TRUE@usbms_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_coreboot_TRUE@usbms_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_efi_TRUE@usbms_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@usbms_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_multiboot_TRUE@usbms_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_pc_TRUE@usbms_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_qemu_TRUE@usbms_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_mips_loongson_TRUE@usbms_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_x86_64_efi_TRUE@usbms_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_arm_coreboot_TRUE@usbms_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_coreboot_TRUE@usbms_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_efi_TRUE@usbms_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@usbms_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_multiboot_TRUE@usbms_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_pc_TRUE@usbms_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_qemu_TRUE@usbms_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_mips_loongson_TRUE@usbms_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_x86_64_efi_TRUE@usbms_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_arm_coreboot_TRUE@usbms_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_coreboot_TRUE@usbms_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_efi_TRUE@usbms_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_ieee1275_TRUE@usbms_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_multiboot_TRUE@usbms_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_pc_TRUE@usbms_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_qemu_TRUE@usbms_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_mips_loongson_TRUE@usbms_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_x86_64_efi_TRUE@usbms_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_ieee1275_TRUE@nand_module_SOURCES = disk/ieee1275/nand.c ## platform sources -@COND_i386_ieee1275_TRUE@nodist_nand_module_SOURCES = ## platform nodist sources -@COND_i386_ieee1275_TRUE@nand_module_LDADD = -@COND_i386_ieee1275_TRUE@nand_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@nand_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@nand_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@nand_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@nand_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_coreboot_TRUE@efiemu_module_SOURCES = efiemu/i386/pc/cfgtables.c efiemu/main.c efiemu/i386/loadcore32.c efiemu/i386/loadcore64.c efiemu/mm.c efiemu/loadcore_common.c efiemu/symbols.c efiemu/loadcore32.c efiemu/loadcore64.c efiemu/prepare32.c efiemu/prepare64.c efiemu/pnvram.c efiemu/i386/coredetect.c ## platform sources -@COND_i386_ieee1275_TRUE@efiemu_module_SOURCES = efiemu/i386/nocfgtables.c efiemu/main.c efiemu/i386/loadcore32.c efiemu/i386/loadcore64.c efiemu/mm.c efiemu/loadcore_common.c efiemu/symbols.c efiemu/loadcore32.c efiemu/loadcore64.c efiemu/prepare32.c efiemu/prepare64.c efiemu/pnvram.c efiemu/i386/coredetect.c ## platform sources -@COND_i386_multiboot_TRUE@efiemu_module_SOURCES = efiemu/i386/pc/cfgtables.c efiemu/main.c efiemu/i386/loadcore32.c efiemu/i386/loadcore64.c efiemu/mm.c efiemu/loadcore_common.c efiemu/symbols.c efiemu/loadcore32.c efiemu/loadcore64.c efiemu/prepare32.c efiemu/prepare64.c efiemu/pnvram.c efiemu/i386/coredetect.c ## platform sources -@COND_i386_pc_TRUE@efiemu_module_SOURCES = efiemu/i386/pc/cfgtables.c efiemu/main.c efiemu/i386/loadcore32.c efiemu/i386/loadcore64.c efiemu/mm.c efiemu/loadcore_common.c efiemu/symbols.c efiemu/loadcore32.c efiemu/loadcore64.c efiemu/prepare32.c efiemu/prepare64.c efiemu/pnvram.c efiemu/i386/coredetect.c ## platform sources -@COND_i386_qemu_TRUE@efiemu_module_SOURCES = efiemu/i386/nocfgtables.c efiemu/main.c efiemu/i386/loadcore32.c efiemu/i386/loadcore64.c efiemu/mm.c efiemu/loadcore_common.c efiemu/symbols.c efiemu/loadcore32.c efiemu/loadcore64.c efiemu/prepare32.c efiemu/prepare64.c efiemu/pnvram.c efiemu/i386/coredetect.c ## platform sources -@COND_i386_coreboot_TRUE@nodist_efiemu_module_SOURCES = ## platform nodist sources -@COND_i386_ieee1275_TRUE@nodist_efiemu_module_SOURCES = ## platform nodist sources -@COND_i386_multiboot_TRUE@nodist_efiemu_module_SOURCES = ## platform nodist sources -@COND_i386_pc_TRUE@nodist_efiemu_module_SOURCES = ## platform nodist sources -@COND_i386_qemu_TRUE@nodist_efiemu_module_SOURCES = ## platform nodist sources -@COND_i386_coreboot_TRUE@efiemu_module_LDADD = -@COND_i386_ieee1275_TRUE@efiemu_module_LDADD = -@COND_i386_multiboot_TRUE@efiemu_module_LDADD = -@COND_i386_pc_TRUE@efiemu_module_LDADD = -@COND_i386_qemu_TRUE@efiemu_module_LDADD = -@COND_i386_coreboot_TRUE@efiemu_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@efiemu_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_multiboot_TRUE@efiemu_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_pc_TRUE@efiemu_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_qemu_TRUE@efiemu_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_coreboot_TRUE@efiemu_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@efiemu_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_multiboot_TRUE@efiemu_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_pc_TRUE@efiemu_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_qemu_TRUE@efiemu_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_coreboot_TRUE@efiemu_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@efiemu_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_multiboot_TRUE@efiemu_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_pc_TRUE@efiemu_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_qemu_TRUE@efiemu_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_coreboot_TRUE@efiemu_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@efiemu_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_multiboot_TRUE@efiemu_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_pc_TRUE@efiemu_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_qemu_TRUE@efiemu_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_coreboot_TRUE@efiemu_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_ieee1275_TRUE@efiemu_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_multiboot_TRUE@efiemu_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_pc_TRUE@efiemu_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_qemu_TRUE@efiemu_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_arm64_efi_TRUE@font_module_SOURCES = font/font.c font/font_cmd.c ## platform sources -@COND_arm_efi_TRUE@font_module_SOURCES = font/font.c font/font_cmd.c ## platform sources -@COND_arm_uboot_TRUE@font_module_SOURCES = font/font.c font/font_cmd.c ## platform sources -@COND_emu_TRUE@font_module_SOURCES = font/font.c font/font_cmd.c ## platform sources -@COND_i386_efi_TRUE@font_module_SOURCES = font/font.c font/font_cmd.c ## platform sources -@COND_i386_ieee1275_TRUE@font_module_SOURCES = font/font.c font/font_cmd.c ## platform sources -@COND_i386_multiboot_TRUE@font_module_SOURCES = font/font.c font/font_cmd.c ## platform sources -@COND_i386_pc_TRUE@font_module_SOURCES = font/font.c font/font_cmd.c ## platform sources -@COND_i386_qemu_TRUE@font_module_SOURCES = font/font.c font/font_cmd.c ## platform sources -@COND_i386_xen_TRUE@font_module_SOURCES = font/font.c font/font_cmd.c ## platform sources -@COND_i386_xen_pvh_TRUE@font_module_SOURCES = font/font.c font/font_cmd.c ## platform sources -@COND_ia64_efi_TRUE@font_module_SOURCES = font/font.c font/font_cmd.c ## platform sources -@COND_mips_arc_TRUE@font_module_SOURCES = font/font.c font/font_cmd.c ## platform sources -@COND_mips_qemu_mips_TRUE@font_module_SOURCES = font/font.c font/font_cmd.c ## platform sources -@COND_powerpc_ieee1275_TRUE@font_module_SOURCES = font/font.c font/font_cmd.c ## platform sources -@COND_riscv32_efi_TRUE@font_module_SOURCES = font/font.c font/font_cmd.c ## platform sources -@COND_riscv64_efi_TRUE@font_module_SOURCES = font/font.c font/font_cmd.c ## platform sources -@COND_sparc64_ieee1275_TRUE@font_module_SOURCES = font/font.c font/font_cmd.c ## platform sources -@COND_x86_64_efi_TRUE@font_module_SOURCES = font/font.c font/font_cmd.c ## platform sources -@COND_x86_64_xen_TRUE@font_module_SOURCES = font/font.c font/font_cmd.c ## platform sources -@COND_arm64_efi_TRUE@nodist_font_module_SOURCES = ## platform nodist sources -@COND_arm_efi_TRUE@nodist_font_module_SOURCES = ## platform nodist sources -@COND_arm_uboot_TRUE@nodist_font_module_SOURCES = ## platform nodist sources -@COND_emu_TRUE@nodist_font_module_SOURCES = ## platform nodist sources -@COND_i386_efi_TRUE@nodist_font_module_SOURCES = ## platform nodist sources -@COND_i386_ieee1275_TRUE@nodist_font_module_SOURCES = ## platform nodist sources -@COND_i386_multiboot_TRUE@nodist_font_module_SOURCES = ## platform nodist sources -@COND_i386_pc_TRUE@nodist_font_module_SOURCES = ## platform nodist sources -@COND_i386_qemu_TRUE@nodist_font_module_SOURCES = ## platform nodist sources -@COND_i386_xen_TRUE@nodist_font_module_SOURCES = ## platform nodist sources -@COND_i386_xen_pvh_TRUE@nodist_font_module_SOURCES = ## platform nodist sources -@COND_ia64_efi_TRUE@nodist_font_module_SOURCES = ## platform nodist sources -@COND_mips_arc_TRUE@nodist_font_module_SOURCES = ## platform nodist sources -@COND_mips_qemu_mips_TRUE@nodist_font_module_SOURCES = ## platform nodist sources -@COND_powerpc_ieee1275_TRUE@nodist_font_module_SOURCES = ## platform nodist sources -@COND_riscv32_efi_TRUE@nodist_font_module_SOURCES = ## platform nodist sources -@COND_riscv64_efi_TRUE@nodist_font_module_SOURCES = ## platform nodist sources -@COND_sparc64_ieee1275_TRUE@nodist_font_module_SOURCES = ## platform nodist sources -@COND_x86_64_efi_TRUE@nodist_font_module_SOURCES = ## platform nodist sources -@COND_x86_64_xen_TRUE@nodist_font_module_SOURCES = ## platform nodist sources -@COND_arm64_efi_TRUE@font_module_LDADD = -@COND_arm_efi_TRUE@font_module_LDADD = -@COND_arm_uboot_TRUE@font_module_LDADD = -@COND_emu_TRUE@font_module_LDADD = -@COND_i386_efi_TRUE@font_module_LDADD = -@COND_i386_ieee1275_TRUE@font_module_LDADD = -@COND_i386_multiboot_TRUE@font_module_LDADD = -@COND_i386_pc_TRUE@font_module_LDADD = -@COND_i386_qemu_TRUE@font_module_LDADD = -@COND_i386_xen_TRUE@font_module_LDADD = -@COND_i386_xen_pvh_TRUE@font_module_LDADD = -@COND_ia64_efi_TRUE@font_module_LDADD = -@COND_mips_arc_TRUE@font_module_LDADD = -@COND_mips_qemu_mips_TRUE@font_module_LDADD = -@COND_powerpc_ieee1275_TRUE@font_module_LDADD = -@COND_riscv32_efi_TRUE@font_module_LDADD = -@COND_riscv64_efi_TRUE@font_module_LDADD = -@COND_sparc64_ieee1275_TRUE@font_module_LDADD = -@COND_x86_64_efi_TRUE@font_module_LDADD = -@COND_x86_64_xen_TRUE@font_module_LDADD = -@COND_arm64_efi_TRUE@font_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_arm_efi_TRUE@font_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_arm_uboot_TRUE@font_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_emu_TRUE@font_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_efi_TRUE@font_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@font_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_multiboot_TRUE@font_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_pc_TRUE@font_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_qemu_TRUE@font_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_xen_TRUE@font_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_xen_pvh_TRUE@font_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_ia64_efi_TRUE@font_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_mips_arc_TRUE@font_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_mips_qemu_mips_TRUE@font_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_powerpc_ieee1275_TRUE@font_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_riscv32_efi_TRUE@font_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_riscv64_efi_TRUE@font_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_sparc64_ieee1275_TRUE@font_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_x86_64_efi_TRUE@font_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_x86_64_xen_TRUE@font_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_arm64_efi_TRUE@font_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_arm_efi_TRUE@font_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_arm_uboot_TRUE@font_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_emu_TRUE@font_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_efi_TRUE@font_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@font_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_multiboot_TRUE@font_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_pc_TRUE@font_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_qemu_TRUE@font_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_xen_TRUE@font_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_xen_pvh_TRUE@font_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_ia64_efi_TRUE@font_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_mips_arc_TRUE@font_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_mips_qemu_mips_TRUE@font_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_powerpc_ieee1275_TRUE@font_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_riscv32_efi_TRUE@font_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_riscv64_efi_TRUE@font_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_sparc64_ieee1275_TRUE@font_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_x86_64_efi_TRUE@font_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_x86_64_xen_TRUE@font_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_arm64_efi_TRUE@font_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_arm_efi_TRUE@font_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_arm_uboot_TRUE@font_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_emu_TRUE@font_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_efi_TRUE@font_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@font_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_multiboot_TRUE@font_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_pc_TRUE@font_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_qemu_TRUE@font_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_xen_TRUE@font_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_xen_pvh_TRUE@font_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_ia64_efi_TRUE@font_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_mips_arc_TRUE@font_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_mips_qemu_mips_TRUE@font_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_powerpc_ieee1275_TRUE@font_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_riscv32_efi_TRUE@font_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_riscv64_efi_TRUE@font_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_sparc64_ieee1275_TRUE@font_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_x86_64_efi_TRUE@font_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_x86_64_xen_TRUE@font_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_arm64_efi_TRUE@font_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_arm_efi_TRUE@font_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_arm_uboot_TRUE@font_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_emu_TRUE@font_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_efi_TRUE@font_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@font_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_multiboot_TRUE@font_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_pc_TRUE@font_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_qemu_TRUE@font_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_xen_TRUE@font_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_xen_pvh_TRUE@font_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_ia64_efi_TRUE@font_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_mips_arc_TRUE@font_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_mips_qemu_mips_TRUE@font_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_powerpc_ieee1275_TRUE@font_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_riscv32_efi_TRUE@font_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_riscv64_efi_TRUE@font_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_sparc64_ieee1275_TRUE@font_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_x86_64_efi_TRUE@font_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_x86_64_xen_TRUE@font_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_arm64_efi_TRUE@font_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_arm_efi_TRUE@font_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_arm_uboot_TRUE@font_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_emu_TRUE@font_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_efi_TRUE@font_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_ieee1275_TRUE@font_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_multiboot_TRUE@font_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_pc_TRUE@font_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_qemu_TRUE@font_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_xen_TRUE@font_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_xen_pvh_TRUE@font_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_ia64_efi_TRUE@font_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_mips_arc_TRUE@font_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_mips_qemu_mips_TRUE@font_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_powerpc_ieee1275_TRUE@font_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_riscv32_efi_TRUE@font_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_riscv64_efi_TRUE@font_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_sparc64_ieee1275_TRUE@font_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_x86_64_efi_TRUE@font_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_x86_64_xen_TRUE@font_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -procfs_module_SOURCES = fs/proc.c ## platform sources -nodist_procfs_module_SOURCES = ## platform nodist sources -procfs_module_LDADD = -procfs_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -procfs_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -procfs_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -procfs_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -procfs_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -affs_module_SOURCES = fs/affs.c ## platform sources -nodist_affs_module_SOURCES = ## platform nodist sources -affs_module_LDADD = -affs_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -affs_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -affs_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -affs_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -affs_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -afs_module_SOURCES = fs/afs.c ## platform sources -nodist_afs_module_SOURCES = ## platform nodist sources -afs_module_LDADD = -afs_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -afs_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -afs_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -afs_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -afs_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -bfs_module_SOURCES = fs/bfs.c ## platform sources -nodist_bfs_module_SOURCES = ## platform nodist sources -bfs_module_LDADD = -bfs_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -bfs_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -bfs_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -bfs_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -bfs_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -zstd_module_SOURCES = lib/zstd/debug.c lib/zstd/entropy_common.c lib/zstd/error_private.c lib/zstd/fse_decompress.c lib/zstd/huf_decompress.c lib/zstd/module.c lib/zstd/xxhash.c lib/zstd/zstd_common.c lib/zstd/zstd_decompress.c ## platform sources -nodist_zstd_module_SOURCES = ## platform nodist sources -zstd_module_LDADD = -zstd_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) $(CFLAGS_POSIX) -Wno-undef -zstd_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -zstd_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -I$(srcdir)/lib/posix_wrap -I$(srcdir)/lib/zstd -zstd_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -zstd_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -btrfs_module_SOURCES = fs/btrfs.c lib/crc.c ## platform sources -nodist_btrfs_module_SOURCES = ## platform nodist sources -btrfs_module_LDADD = -btrfs_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) $(CFLAGS_POSIX) -Wno-undef -btrfs_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -btrfs_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -I$(srcdir)/lib/posix_wrap -I$(srcdir)/lib/minilzo -I$(srcdir)/lib/zstd -DMINILZO_HAVE_CONFIG_H -btrfs_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -btrfs_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -archelp_module_SOURCES = fs/archelp.c ## platform sources -nodist_archelp_module_SOURCES = ## platform nodist sources -archelp_module_LDADD = -archelp_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -archelp_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -archelp_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -archelp_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -archelp_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -cbfs_module_SOURCES = fs/cbfs.c ## platform sources -nodist_cbfs_module_SOURCES = ## platform nodist sources -cbfs_module_LDADD = -cbfs_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -cbfs_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -cbfs_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -cbfs_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -cbfs_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -cpio_module_SOURCES = fs/cpio.c ## platform sources -nodist_cpio_module_SOURCES = ## platform nodist sources -cpio_module_LDADD = -cpio_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -cpio_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -cpio_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -cpio_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -cpio_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -cpio_be_module_SOURCES = fs/cpio_be.c ## platform sources -nodist_cpio_be_module_SOURCES = ## platform nodist sources -cpio_be_module_LDADD = -cpio_be_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -cpio_be_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -cpio_be_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -cpio_be_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -cpio_be_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -newc_module_SOURCES = fs/newc.c ## platform sources -nodist_newc_module_SOURCES = ## platform nodist sources -newc_module_LDADD = -newc_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -newc_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -newc_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -newc_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -newc_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -odc_module_SOURCES = fs/odc.c ## platform sources -nodist_odc_module_SOURCES = ## platform nodist sources -odc_module_LDADD = -odc_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -odc_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -odc_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -odc_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -odc_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -ext2_module_SOURCES = fs/ext2.c ## platform sources -nodist_ext2_module_SOURCES = ## platform nodist sources -ext2_module_LDADD = -ext2_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -ext2_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -ext2_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -ext2_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -ext2_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -fat_module_SOURCES = fs/fat.c ## platform sources -nodist_fat_module_SOURCES = ## platform nodist sources -fat_module_LDADD = -fat_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -fat_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -fat_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -fat_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -fat_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -exfat_module_SOURCES = fs/exfat.c ## platform sources -nodist_exfat_module_SOURCES = ## platform nodist sources -exfat_module_LDADD = -exfat_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -exfat_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -exfat_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -exfat_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -exfat_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -f2fs_module_SOURCES = fs/f2fs.c ## platform sources -nodist_f2fs_module_SOURCES = ## platform nodist sources -f2fs_module_LDADD = -f2fs_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -f2fs_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -f2fs_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -f2fs_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -f2fs_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -fshelp_module_SOURCES = fs/fshelp.c ## platform sources -nodist_fshelp_module_SOURCES = ## platform nodist sources -fshelp_module_LDADD = -fshelp_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -fshelp_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -fshelp_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -fshelp_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -fshelp_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -hfs_module_SOURCES = fs/hfs.c ## platform sources -nodist_hfs_module_SOURCES = ## platform nodist sources -hfs_module_LDADD = -hfs_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -hfs_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -hfs_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -hfs_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -hfs_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -hfsplus_module_SOURCES = fs/hfsplus.c ## platform sources -nodist_hfsplus_module_SOURCES = ## platform nodist sources -hfsplus_module_LDADD = -hfsplus_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -hfsplus_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -hfsplus_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -hfsplus_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -hfsplus_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -hfspluscomp_module_SOURCES = fs/hfspluscomp.c ## platform sources -nodist_hfspluscomp_module_SOURCES = ## platform nodist sources -hfspluscomp_module_LDADD = -hfspluscomp_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -hfspluscomp_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -hfspluscomp_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -hfspluscomp_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -hfspluscomp_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -iso9660_module_SOURCES = fs/iso9660.c ## platform sources -nodist_iso9660_module_SOURCES = ## platform nodist sources -iso9660_module_LDADD = -iso9660_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -iso9660_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -iso9660_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -iso9660_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -iso9660_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -jfs_module_SOURCES = fs/jfs.c ## platform sources -nodist_jfs_module_SOURCES = ## platform nodist sources -jfs_module_LDADD = -jfs_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -jfs_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -jfs_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -jfs_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -jfs_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -minix_module_SOURCES = fs/minix.c ## platform sources -nodist_minix_module_SOURCES = ## platform nodist sources -minix_module_LDADD = -minix_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -minix_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -minix_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -minix_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -minix_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -minix2_module_SOURCES = fs/minix2.c ## platform sources -nodist_minix2_module_SOURCES = ## platform nodist sources -minix2_module_LDADD = -minix2_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -minix2_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -minix2_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -minix2_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -minix2_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -minix3_module_SOURCES = fs/minix3.c ## platform sources -nodist_minix3_module_SOURCES = ## platform nodist sources -minix3_module_LDADD = -minix3_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -minix3_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -minix3_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -minix3_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -minix3_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -minix_be_module_SOURCES = fs/minix_be.c ## platform sources -nodist_minix_be_module_SOURCES = ## platform nodist sources -minix_be_module_LDADD = -minix_be_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -minix_be_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -minix_be_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -minix_be_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -minix_be_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -minix2_be_module_SOURCES = fs/minix2_be.c ## platform sources -nodist_minix2_be_module_SOURCES = ## platform nodist sources -minix2_be_module_LDADD = -minix2_be_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -minix2_be_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -minix2_be_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -minix2_be_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -minix2_be_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -minix3_be_module_SOURCES = fs/minix3_be.c ## platform sources -nodist_minix3_be_module_SOURCES = ## platform nodist sources -minix3_be_module_LDADD = -minix3_be_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -minix3_be_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -minix3_be_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -minix3_be_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -minix3_be_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -nilfs2_module_SOURCES = fs/nilfs2.c ## platform sources -nodist_nilfs2_module_SOURCES = ## platform nodist sources -nilfs2_module_LDADD = -nilfs2_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -nilfs2_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -nilfs2_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -nilfs2_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -nilfs2_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -ntfs_module_SOURCES = fs/ntfs.c ## platform sources -nodist_ntfs_module_SOURCES = ## platform nodist sources -ntfs_module_LDADD = -ntfs_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -ntfs_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -ntfs_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -ntfs_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -ntfs_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -ntfscomp_module_SOURCES = fs/ntfscomp.c ## platform sources -nodist_ntfscomp_module_SOURCES = ## platform nodist sources -ntfscomp_module_LDADD = -ntfscomp_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -ntfscomp_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -ntfscomp_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -ntfscomp_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -ntfscomp_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -reiserfs_module_SOURCES = fs/reiserfs.c ## platform sources -nodist_reiserfs_module_SOURCES = ## platform nodist sources -reiserfs_module_LDADD = -reiserfs_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -reiserfs_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -reiserfs_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -reiserfs_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -reiserfs_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -romfs_module_SOURCES = fs/romfs.c ## platform sources -nodist_romfs_module_SOURCES = ## platform nodist sources -romfs_module_LDADD = -romfs_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -romfs_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -romfs_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -romfs_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -romfs_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -sfs_module_SOURCES = fs/sfs.c ## platform sources -nodist_sfs_module_SOURCES = ## platform nodist sources -sfs_module_LDADD = -sfs_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -sfs_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -sfs_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -sfs_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -sfs_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -squash4_module_SOURCES = fs/squash4.c ## platform sources -nodist_squash4_module_SOURCES = ## platform nodist sources -squash4_module_LDADD = -squash4_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) $(CFLAGS_POSIX) -Wno-undef -squash4_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -squash4_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -I$(srcdir)/lib/posix_wrap -I$(srcdir)/lib/xzembed -I$(srcdir)/lib/minilzo -DMINILZO_HAVE_CONFIG_H -squash4_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -squash4_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -tar_module_SOURCES = fs/tar.c ## platform sources -nodist_tar_module_SOURCES = ## platform nodist sources -tar_module_LDADD = -tar_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -tar_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -tar_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -tar_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -tar_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -udf_module_SOURCES = fs/udf.c ## platform sources -nodist_udf_module_SOURCES = ## platform nodist sources -udf_module_LDADD = -udf_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -udf_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -udf_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -udf_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -udf_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -ufs1_module_SOURCES = fs/ufs.c ## platform sources -nodist_ufs1_module_SOURCES = ## platform nodist sources -ufs1_module_LDADD = -ufs1_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -ufs1_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -ufs1_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -ufs1_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -ufs1_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -ufs1_be_module_SOURCES = fs/ufs_be.c ## platform sources -nodist_ufs1_be_module_SOURCES = ## platform nodist sources -ufs1_be_module_LDADD = -ufs1_be_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -ufs1_be_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -ufs1_be_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -ufs1_be_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -ufs1_be_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -ufs2_module_SOURCES = fs/ufs2.c ## platform sources -nodist_ufs2_module_SOURCES = ## platform nodist sources -ufs2_module_LDADD = -ufs2_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -ufs2_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -ufs2_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -ufs2_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -ufs2_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -xfs_module_SOURCES = fs/xfs.c ## platform sources -nodist_xfs_module_SOURCES = ## platform nodist sources -xfs_module_LDADD = -xfs_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -xfs_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -xfs_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -xfs_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -xfs_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -zfs_module_SOURCES = fs/zfs/zfs.c fs/zfs/zfs_lzjb.c fs/zfs/zfs_lz4.c fs/zfs/zfs_sha256.c fs/zfs/zfs_fletcher.c ## platform sources -nodist_zfs_module_SOURCES = ## platform nodist sources -zfs_module_LDADD = -zfs_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -zfs_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -zfs_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -zfs_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -zfs_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -zfscrypt_module_SOURCES = fs/zfs/zfscrypt.c ## platform sources -nodist_zfscrypt_module_SOURCES = ## platform nodist sources -zfscrypt_module_LDADD = -zfscrypt_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -zfscrypt_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -zfscrypt_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -zfscrypt_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -zfscrypt_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -zfsinfo_module_SOURCES = fs/zfs/zfsinfo.c ## platform sources -nodist_zfsinfo_module_SOURCES = ## platform nodist sources -zfsinfo_module_LDADD = -zfsinfo_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -zfsinfo_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -zfsinfo_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -zfsinfo_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -zfsinfo_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -macbless_module_SOURCES = commands/macbless.c ## platform sources -nodist_macbless_module_SOURCES = ## platform nodist sources -macbless_module_LDADD = -macbless_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -macbless_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -macbless_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -macbless_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -macbless_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_pc_TRUE@pxe_module_SOURCES = net/drivers/i386/pc/pxe.c ## platform sources -@COND_i386_pc_TRUE@nodist_pxe_module_SOURCES = ## platform nodist sources -@COND_i386_pc_TRUE@pxe_module_LDADD = -@COND_i386_pc_TRUE@pxe_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_pc_TRUE@pxe_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_pc_TRUE@pxe_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_pc_TRUE@pxe_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_pc_TRUE@pxe_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -gettext_module_SOURCES = gettext/gettext.c ## platform sources -nodist_gettext_module_SOURCES = ## platform nodist sources -gettext_module_LDADD = -gettext_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -gettext_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -gettext_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -gettext_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -gettext_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -gfxmenu_module_SOURCES = gfxmenu/gfxmenu.c gfxmenu/view.c gfxmenu/font.c gfxmenu/icon_manager.c gfxmenu/theme_loader.c gfxmenu/widget-box.c gfxmenu/gui_canvas.c gfxmenu/gui_circular_progress.c gfxmenu/gui_box.c gfxmenu/gui_label.c gfxmenu/gui_list.c gfxmenu/gui_image.c gfxmenu/gui_progress_bar.c gfxmenu/gui_util.c gfxmenu/gui_string_util.c ## platform sources -nodist_gfxmenu_module_SOURCES = ## platform nodist sources -gfxmenu_module_LDADD = -gfxmenu_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -gfxmenu_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -gfxmenu_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -gfxmenu_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -gfxmenu_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -hello_module_SOURCES = hello/hello.c ## platform sources -nodist_hello_module_SOURCES = ## platform nodist sources -hello_module_LDADD = -hello_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -hello_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -hello_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -hello_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -hello_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -gzio_module_SOURCES = io/gzio.c ## platform sources -nodist_gzio_module_SOURCES = ## platform nodist sources -gzio_module_LDADD = -gzio_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -gzio_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -gzio_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -gzio_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -gzio_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -offsetio_module_SOURCES = io/offset.c ## platform sources -nodist_offsetio_module_SOURCES = ## platform nodist sources -offsetio_module_LDADD = -offsetio_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -offsetio_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -offsetio_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -offsetio_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -offsetio_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_arm64_efi_TRUE@bufio_module_SOURCES = io/bufio.c ## platform sources -@COND_arm_efi_TRUE@bufio_module_SOURCES = io/bufio.c ## platform sources -@COND_arm_uboot_TRUE@bufio_module_SOURCES = io/bufio.c ## platform sources -@COND_emu_TRUE@bufio_module_SOURCES = io/bufio.c ## platform sources -@COND_i386_efi_TRUE@bufio_module_SOURCES = io/bufio.c ## platform sources -@COND_i386_ieee1275_TRUE@bufio_module_SOURCES = io/bufio.c ## platform sources -@COND_i386_multiboot_TRUE@bufio_module_SOURCES = io/bufio.c ## platform sources -@COND_i386_pc_TRUE@bufio_module_SOURCES = io/bufio.c ## platform sources -@COND_i386_qemu_TRUE@bufio_module_SOURCES = io/bufio.c ## platform sources -@COND_i386_xen_TRUE@bufio_module_SOURCES = io/bufio.c ## platform sources -@COND_i386_xen_pvh_TRUE@bufio_module_SOURCES = io/bufio.c ## platform sources -@COND_ia64_efi_TRUE@bufio_module_SOURCES = io/bufio.c ## platform sources -@COND_mips_arc_TRUE@bufio_module_SOURCES = io/bufio.c ## platform sources -@COND_mips_qemu_mips_TRUE@bufio_module_SOURCES = io/bufio.c ## platform sources -@COND_powerpc_ieee1275_TRUE@bufio_module_SOURCES = io/bufio.c ## platform sources -@COND_riscv32_efi_TRUE@bufio_module_SOURCES = io/bufio.c ## platform sources -@COND_riscv64_efi_TRUE@bufio_module_SOURCES = io/bufio.c ## platform sources -@COND_sparc64_ieee1275_TRUE@bufio_module_SOURCES = io/bufio.c ## platform sources -@COND_x86_64_efi_TRUE@bufio_module_SOURCES = io/bufio.c ## platform sources -@COND_x86_64_xen_TRUE@bufio_module_SOURCES = io/bufio.c ## platform sources -@COND_arm64_efi_TRUE@nodist_bufio_module_SOURCES = ## platform nodist sources -@COND_arm_efi_TRUE@nodist_bufio_module_SOURCES = ## platform nodist sources -@COND_arm_uboot_TRUE@nodist_bufio_module_SOURCES = ## platform nodist sources -@COND_emu_TRUE@nodist_bufio_module_SOURCES = ## platform nodist sources -@COND_i386_efi_TRUE@nodist_bufio_module_SOURCES = ## platform nodist sources -@COND_i386_ieee1275_TRUE@nodist_bufio_module_SOURCES = ## platform nodist sources -@COND_i386_multiboot_TRUE@nodist_bufio_module_SOURCES = ## platform nodist sources -@COND_i386_pc_TRUE@nodist_bufio_module_SOURCES = ## platform nodist sources -@COND_i386_qemu_TRUE@nodist_bufio_module_SOURCES = ## platform nodist sources -@COND_i386_xen_TRUE@nodist_bufio_module_SOURCES = ## platform nodist sources -@COND_i386_xen_pvh_TRUE@nodist_bufio_module_SOURCES = ## platform nodist sources -@COND_ia64_efi_TRUE@nodist_bufio_module_SOURCES = ## platform nodist sources -@COND_mips_arc_TRUE@nodist_bufio_module_SOURCES = ## platform nodist sources -@COND_mips_qemu_mips_TRUE@nodist_bufio_module_SOURCES = ## platform nodist sources -@COND_powerpc_ieee1275_TRUE@nodist_bufio_module_SOURCES = ## platform nodist sources -@COND_riscv32_efi_TRUE@nodist_bufio_module_SOURCES = ## platform nodist sources -@COND_riscv64_efi_TRUE@nodist_bufio_module_SOURCES = ## platform nodist sources -@COND_sparc64_ieee1275_TRUE@nodist_bufio_module_SOURCES = ## platform nodist sources -@COND_x86_64_efi_TRUE@nodist_bufio_module_SOURCES = ## platform nodist sources -@COND_x86_64_xen_TRUE@nodist_bufio_module_SOURCES = ## platform nodist sources -@COND_arm64_efi_TRUE@bufio_module_LDADD = -@COND_arm_efi_TRUE@bufio_module_LDADD = -@COND_arm_uboot_TRUE@bufio_module_LDADD = -@COND_emu_TRUE@bufio_module_LDADD = -@COND_i386_efi_TRUE@bufio_module_LDADD = -@COND_i386_ieee1275_TRUE@bufio_module_LDADD = -@COND_i386_multiboot_TRUE@bufio_module_LDADD = -@COND_i386_pc_TRUE@bufio_module_LDADD = -@COND_i386_qemu_TRUE@bufio_module_LDADD = -@COND_i386_xen_TRUE@bufio_module_LDADD = -@COND_i386_xen_pvh_TRUE@bufio_module_LDADD = -@COND_ia64_efi_TRUE@bufio_module_LDADD = -@COND_mips_arc_TRUE@bufio_module_LDADD = -@COND_mips_qemu_mips_TRUE@bufio_module_LDADD = -@COND_powerpc_ieee1275_TRUE@bufio_module_LDADD = -@COND_riscv32_efi_TRUE@bufio_module_LDADD = -@COND_riscv64_efi_TRUE@bufio_module_LDADD = -@COND_sparc64_ieee1275_TRUE@bufio_module_LDADD = -@COND_x86_64_efi_TRUE@bufio_module_LDADD = -@COND_x86_64_xen_TRUE@bufio_module_LDADD = -@COND_arm64_efi_TRUE@bufio_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_arm_efi_TRUE@bufio_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_arm_uboot_TRUE@bufio_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_emu_TRUE@bufio_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_efi_TRUE@bufio_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@bufio_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_multiboot_TRUE@bufio_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_pc_TRUE@bufio_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_qemu_TRUE@bufio_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_xen_TRUE@bufio_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_xen_pvh_TRUE@bufio_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_ia64_efi_TRUE@bufio_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_mips_arc_TRUE@bufio_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_mips_qemu_mips_TRUE@bufio_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_powerpc_ieee1275_TRUE@bufio_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_riscv32_efi_TRUE@bufio_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_riscv64_efi_TRUE@bufio_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_sparc64_ieee1275_TRUE@bufio_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_x86_64_efi_TRUE@bufio_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_x86_64_xen_TRUE@bufio_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_arm64_efi_TRUE@bufio_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_arm_efi_TRUE@bufio_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_arm_uboot_TRUE@bufio_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_emu_TRUE@bufio_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_efi_TRUE@bufio_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@bufio_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_multiboot_TRUE@bufio_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_pc_TRUE@bufio_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_qemu_TRUE@bufio_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_xen_TRUE@bufio_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_xen_pvh_TRUE@bufio_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_ia64_efi_TRUE@bufio_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_mips_arc_TRUE@bufio_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_mips_qemu_mips_TRUE@bufio_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_powerpc_ieee1275_TRUE@bufio_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_riscv32_efi_TRUE@bufio_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_riscv64_efi_TRUE@bufio_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_sparc64_ieee1275_TRUE@bufio_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_x86_64_efi_TRUE@bufio_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_x86_64_xen_TRUE@bufio_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_arm64_efi_TRUE@bufio_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_arm_efi_TRUE@bufio_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_arm_uboot_TRUE@bufio_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_emu_TRUE@bufio_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_efi_TRUE@bufio_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@bufio_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_multiboot_TRUE@bufio_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_pc_TRUE@bufio_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_qemu_TRUE@bufio_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_xen_TRUE@bufio_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_xen_pvh_TRUE@bufio_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_ia64_efi_TRUE@bufio_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_mips_arc_TRUE@bufio_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_mips_qemu_mips_TRUE@bufio_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_powerpc_ieee1275_TRUE@bufio_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_riscv32_efi_TRUE@bufio_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_riscv64_efi_TRUE@bufio_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_sparc64_ieee1275_TRUE@bufio_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_x86_64_efi_TRUE@bufio_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_x86_64_xen_TRUE@bufio_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_arm64_efi_TRUE@bufio_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_arm_efi_TRUE@bufio_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_arm_uboot_TRUE@bufio_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_emu_TRUE@bufio_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_efi_TRUE@bufio_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@bufio_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_multiboot_TRUE@bufio_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_pc_TRUE@bufio_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_qemu_TRUE@bufio_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_xen_TRUE@bufio_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_xen_pvh_TRUE@bufio_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_ia64_efi_TRUE@bufio_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_mips_arc_TRUE@bufio_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_mips_qemu_mips_TRUE@bufio_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_powerpc_ieee1275_TRUE@bufio_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_riscv32_efi_TRUE@bufio_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_riscv64_efi_TRUE@bufio_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_sparc64_ieee1275_TRUE@bufio_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_x86_64_efi_TRUE@bufio_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_x86_64_xen_TRUE@bufio_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_arm64_efi_TRUE@bufio_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_arm_efi_TRUE@bufio_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_arm_uboot_TRUE@bufio_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_emu_TRUE@bufio_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_efi_TRUE@bufio_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_ieee1275_TRUE@bufio_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_multiboot_TRUE@bufio_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_pc_TRUE@bufio_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_qemu_TRUE@bufio_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_xen_TRUE@bufio_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_xen_pvh_TRUE@bufio_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_ia64_efi_TRUE@bufio_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_mips_arc_TRUE@bufio_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_mips_qemu_mips_TRUE@bufio_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_powerpc_ieee1275_TRUE@bufio_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_riscv32_efi_TRUE@bufio_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_riscv64_efi_TRUE@bufio_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_sparc64_ieee1275_TRUE@bufio_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_x86_64_efi_TRUE@bufio_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_x86_64_xen_TRUE@bufio_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -elf_module_SOURCES = kern/elf.c ## platform sources -nodist_elf_module_SOURCES = ## platform nodist sources -elf_module_LDADD = -elf_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -elf_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -elf_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -elf_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -elf_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -crypto_module_SOURCES = lib/crypto.c ## platform sources -nodist_crypto_module_SOURCES = ## platform nodist sources -crypto_module_LDADD = -crypto_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -crypto_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -crypto_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -crypto_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -crypto_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -pbkdf2_module_SOURCES = lib/pbkdf2.c ## platform sources -nodist_pbkdf2_module_SOURCES = ## platform nodist sources -pbkdf2_module_LDADD = -pbkdf2_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -pbkdf2_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -pbkdf2_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -pbkdf2_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -pbkdf2_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_coreboot_TRUE@relocator_module_SOURCES = lib/i386/relocator_asm.S lib/i386/relocator16.S lib/i386/relocator32.S lib/i386/relocator64.S lib/i386/relocator.c lib/i386/relocator_common_c.c lib/relocator.c ## platform sources -@COND_i386_efi_TRUE@relocator_module_SOURCES = lib/i386/relocator_asm.S lib/i386/relocator16.S lib/i386/relocator32.S lib/i386/relocator64.S lib/i386/relocator.c lib/i386/relocator_common_c.c lib/efi/relocator.c lib/relocator.c ## platform sources -@COND_i386_ieee1275_TRUE@relocator_module_SOURCES = lib/ieee1275/relocator.c lib/i386/relocator_asm.S lib/i386/relocator16.S lib/i386/relocator32.S lib/i386/relocator64.S lib/i386/relocator.c lib/i386/relocator_common_c.c lib/relocator.c ## platform sources -@COND_i386_multiboot_TRUE@relocator_module_SOURCES = lib/i386/relocator_asm.S lib/i386/relocator16.S lib/i386/relocator32.S lib/i386/relocator64.S lib/i386/relocator.c lib/i386/relocator_common_c.c lib/relocator.c ## platform sources -@COND_i386_pc_TRUE@relocator_module_SOURCES = lib/i386/relocator_asm.S lib/i386/relocator16.S lib/i386/relocator32.S lib/i386/relocator64.S lib/i386/relocator.c lib/i386/relocator_common_c.c lib/relocator.c ## platform sources -@COND_i386_qemu_TRUE@relocator_module_SOURCES = lib/i386/relocator_asm.S lib/i386/relocator16.S lib/i386/relocator32.S lib/i386/relocator64.S lib/i386/relocator.c lib/i386/relocator_common_c.c lib/relocator.c ## platform sources -@COND_i386_xen_TRUE@relocator_module_SOURCES = lib/i386/relocator_asm.S lib/i386/xen/relocator.S lib/xen/relocator.c lib/i386/relocator_common_c.c lib/relocator.c ## platform sources -@COND_i386_xen_pvh_TRUE@relocator_module_SOURCES = lib/i386/relocator16.S lib/i386/relocator32.S lib/i386/relocator64.S lib/i386/relocator_asm.S lib/i386/relocator.c lib/i386/relocator_common_c.c lib/relocator.c ## platform sources -@COND_mips_arc_TRUE@relocator_module_SOURCES = lib/mips/relocator_asm.S lib/mips/relocator.c lib/relocator.c ## platform sources -@COND_mips_loongson_TRUE@relocator_module_SOURCES = lib/mips/relocator_asm.S lib/mips/relocator.c lib/relocator.c ## platform sources -@COND_mips_qemu_mips_TRUE@relocator_module_SOURCES = lib/mips/relocator_asm.S lib/mips/relocator.c lib/relocator.c ## platform sources -@COND_powerpc_ieee1275_TRUE@relocator_module_SOURCES = lib/powerpc/relocator_asm.S lib/powerpc/relocator.c lib/ieee1275/relocator.c lib/relocator.c ## platform sources -@COND_x86_64_efi_TRUE@relocator_module_SOURCES = lib/x86_64/efi/relocator.c lib/x86_64/relocator_asm.S lib/i386/relocator16.S lib/i386/relocator32.S lib/i386/relocator64.S lib/i386/relocator.c lib/i386/relocator_common_c.c lib/efi/relocator.c lib/relocator.c ## platform sources -@COND_x86_64_xen_TRUE@relocator_module_SOURCES = lib/x86_64/relocator_asm.S lib/x86_64/xen/relocator.S lib/xen/relocator.c lib/i386/relocator_common_c.c lib/relocator.c ## platform sources -@COND_i386_coreboot_TRUE@nodist_relocator_module_SOURCES = ## platform nodist sources -@COND_i386_efi_TRUE@nodist_relocator_module_SOURCES = ## platform nodist sources -@COND_i386_ieee1275_TRUE@nodist_relocator_module_SOURCES = ## platform nodist sources -@COND_i386_multiboot_TRUE@nodist_relocator_module_SOURCES = ## platform nodist sources -@COND_i386_pc_TRUE@nodist_relocator_module_SOURCES = ## platform nodist sources -@COND_i386_qemu_TRUE@nodist_relocator_module_SOURCES = ## platform nodist sources -@COND_i386_xen_TRUE@nodist_relocator_module_SOURCES = ## platform nodist sources -@COND_i386_xen_pvh_TRUE@nodist_relocator_module_SOURCES = ## platform nodist sources -@COND_mips_arc_TRUE@nodist_relocator_module_SOURCES = ## platform nodist sources -@COND_mips_loongson_TRUE@nodist_relocator_module_SOURCES = ## platform nodist sources -@COND_mips_qemu_mips_TRUE@nodist_relocator_module_SOURCES = ## platform nodist sources -@COND_powerpc_ieee1275_TRUE@nodist_relocator_module_SOURCES = ## platform nodist sources -@COND_x86_64_efi_TRUE@nodist_relocator_module_SOURCES = ## platform nodist sources -@COND_x86_64_xen_TRUE@nodist_relocator_module_SOURCES = ## platform nodist sources -@COND_i386_coreboot_TRUE@relocator_module_LDADD = -@COND_i386_efi_TRUE@relocator_module_LDADD = -@COND_i386_ieee1275_TRUE@relocator_module_LDADD = -@COND_i386_multiboot_TRUE@relocator_module_LDADD = -@COND_i386_pc_TRUE@relocator_module_LDADD = -@COND_i386_qemu_TRUE@relocator_module_LDADD = -@COND_i386_xen_TRUE@relocator_module_LDADD = -@COND_i386_xen_pvh_TRUE@relocator_module_LDADD = -@COND_mips_arc_TRUE@relocator_module_LDADD = -@COND_mips_loongson_TRUE@relocator_module_LDADD = -@COND_mips_qemu_mips_TRUE@relocator_module_LDADD = -@COND_powerpc_ieee1275_TRUE@relocator_module_LDADD = -@COND_x86_64_efi_TRUE@relocator_module_LDADD = -@COND_x86_64_xen_TRUE@relocator_module_LDADD = -@COND_i386_coreboot_TRUE@relocator_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_efi_TRUE@relocator_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@relocator_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_multiboot_TRUE@relocator_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_pc_TRUE@relocator_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_qemu_TRUE@relocator_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_xen_TRUE@relocator_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_xen_pvh_TRUE@relocator_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_mips_arc_TRUE@relocator_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_mips_loongson_TRUE@relocator_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_mips_qemu_mips_TRUE@relocator_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_powerpc_ieee1275_TRUE@relocator_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_x86_64_efi_TRUE@relocator_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_x86_64_xen_TRUE@relocator_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_coreboot_TRUE@relocator_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_efi_TRUE@relocator_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@relocator_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_multiboot_TRUE@relocator_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_pc_TRUE@relocator_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_qemu_TRUE@relocator_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_xen_TRUE@relocator_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_xen_pvh_TRUE@relocator_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_mips_arc_TRUE@relocator_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_mips_loongson_TRUE@relocator_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_mips_qemu_mips_TRUE@relocator_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_powerpc_ieee1275_TRUE@relocator_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_x86_64_efi_TRUE@relocator_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_x86_64_xen_TRUE@relocator_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_coreboot_TRUE@relocator_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_efi_TRUE@relocator_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@relocator_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_multiboot_TRUE@relocator_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_pc_TRUE@relocator_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_qemu_TRUE@relocator_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_xen_TRUE@relocator_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_xen_pvh_TRUE@relocator_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_mips_arc_TRUE@relocator_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_mips_loongson_TRUE@relocator_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_mips_qemu_mips_TRUE@relocator_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_powerpc_ieee1275_TRUE@relocator_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_x86_64_efi_TRUE@relocator_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_x86_64_xen_TRUE@relocator_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_coreboot_TRUE@relocator_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_efi_TRUE@relocator_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@relocator_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_multiboot_TRUE@relocator_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_pc_TRUE@relocator_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_qemu_TRUE@relocator_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_xen_TRUE@relocator_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_xen_pvh_TRUE@relocator_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_mips_arc_TRUE@relocator_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_mips_loongson_TRUE@relocator_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_mips_qemu_mips_TRUE@relocator_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_powerpc_ieee1275_TRUE@relocator_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_x86_64_efi_TRUE@relocator_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_x86_64_xen_TRUE@relocator_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_coreboot_TRUE@relocator_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_efi_TRUE@relocator_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_ieee1275_TRUE@relocator_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_multiboot_TRUE@relocator_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_pc_TRUE@relocator_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_qemu_TRUE@relocator_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_xen_TRUE@relocator_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_xen_pvh_TRUE@relocator_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_mips_arc_TRUE@relocator_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_mips_loongson_TRUE@relocator_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_mips_qemu_mips_TRUE@relocator_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_powerpc_ieee1275_TRUE@relocator_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_x86_64_efi_TRUE@relocator_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_x86_64_xen_TRUE@relocator_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_arm64_efi_TRUE@datetime_module_SOURCES = lib/efi/datetime.c ## platform sources -@COND_arm_coreboot_TRUE@datetime_module_SOURCES = lib/dummy/datetime.c ## platform sources -@COND_arm_efi_TRUE@datetime_module_SOURCES = lib/efi/datetime.c ## platform sources -@COND_arm_uboot_TRUE@datetime_module_SOURCES = lib/dummy/datetime.c ## platform sources -@COND_i386_coreboot_TRUE@datetime_module_SOURCES = lib/cmos_datetime.c ## platform sources -@COND_i386_efi_TRUE@datetime_module_SOURCES = lib/efi/datetime.c ## platform sources -@COND_i386_ieee1275_TRUE@datetime_module_SOURCES = lib/cmos_datetime.c ## platform sources -@COND_i386_multiboot_TRUE@datetime_module_SOURCES = lib/cmos_datetime.c ## platform sources -@COND_i386_pc_TRUE@datetime_module_SOURCES = lib/cmos_datetime.c ## platform sources -@COND_i386_qemu_TRUE@datetime_module_SOURCES = lib/cmos_datetime.c ## platform sources -@COND_i386_xen_TRUE@datetime_module_SOURCES = lib/xen/datetime.c ## platform sources -@COND_i386_xen_pvh_TRUE@datetime_module_SOURCES = lib/xen/datetime.c ## platform sources -@COND_ia64_efi_TRUE@datetime_module_SOURCES = lib/efi/datetime.c ## platform sources -@COND_mips_arc_TRUE@datetime_module_SOURCES = lib/arc/datetime.c ## platform sources -@COND_mips_loongson_TRUE@datetime_module_SOURCES = lib/cmos_datetime.c ## platform sources -@COND_mips_qemu_mips_TRUE@datetime_module_SOURCES = lib/cmos_datetime.c ## platform sources -@COND_powerpc_ieee1275_TRUE@datetime_module_SOURCES = lib/ieee1275/datetime.c lib/ieee1275/cmos.c lib/cmos_datetime.c ## platform sources -@COND_riscv32_efi_TRUE@datetime_module_SOURCES = lib/efi/datetime.c ## platform sources -@COND_riscv64_efi_TRUE@datetime_module_SOURCES = lib/efi/datetime.c ## platform sources -@COND_sparc64_ieee1275_TRUE@datetime_module_SOURCES = lib/ieee1275/datetime.c lib/ieee1275/cmos.c lib/cmos_datetime.c ## platform sources -@COND_x86_64_efi_TRUE@datetime_module_SOURCES = lib/efi/datetime.c ## platform sources -@COND_x86_64_xen_TRUE@datetime_module_SOURCES = lib/xen/datetime.c ## platform sources -@COND_arm64_efi_TRUE@nodist_datetime_module_SOURCES = ## platform nodist sources -@COND_arm_coreboot_TRUE@nodist_datetime_module_SOURCES = ## platform nodist sources -@COND_arm_efi_TRUE@nodist_datetime_module_SOURCES = ## platform nodist sources -@COND_arm_uboot_TRUE@nodist_datetime_module_SOURCES = ## platform nodist sources -@COND_i386_coreboot_TRUE@nodist_datetime_module_SOURCES = ## platform nodist sources -@COND_i386_efi_TRUE@nodist_datetime_module_SOURCES = ## platform nodist sources -@COND_i386_ieee1275_TRUE@nodist_datetime_module_SOURCES = ## platform nodist sources -@COND_i386_multiboot_TRUE@nodist_datetime_module_SOURCES = ## platform nodist sources -@COND_i386_pc_TRUE@nodist_datetime_module_SOURCES = ## platform nodist sources -@COND_i386_qemu_TRUE@nodist_datetime_module_SOURCES = ## platform nodist sources -@COND_i386_xen_TRUE@nodist_datetime_module_SOURCES = ## platform nodist sources -@COND_i386_xen_pvh_TRUE@nodist_datetime_module_SOURCES = ## platform nodist sources -@COND_ia64_efi_TRUE@nodist_datetime_module_SOURCES = ## platform nodist sources -@COND_mips_arc_TRUE@nodist_datetime_module_SOURCES = ## platform nodist sources -@COND_mips_loongson_TRUE@nodist_datetime_module_SOURCES = ## platform nodist sources -@COND_mips_qemu_mips_TRUE@nodist_datetime_module_SOURCES = ## platform nodist sources -@COND_powerpc_ieee1275_TRUE@nodist_datetime_module_SOURCES = ## platform nodist sources -@COND_riscv32_efi_TRUE@nodist_datetime_module_SOURCES = ## platform nodist sources -@COND_riscv64_efi_TRUE@nodist_datetime_module_SOURCES = ## platform nodist sources -@COND_sparc64_ieee1275_TRUE@nodist_datetime_module_SOURCES = ## platform nodist sources -@COND_x86_64_efi_TRUE@nodist_datetime_module_SOURCES = ## platform nodist sources -@COND_x86_64_xen_TRUE@nodist_datetime_module_SOURCES = ## platform nodist sources -@COND_arm64_efi_TRUE@datetime_module_LDADD = -@COND_arm_coreboot_TRUE@datetime_module_LDADD = -@COND_arm_efi_TRUE@datetime_module_LDADD = -@COND_arm_uboot_TRUE@datetime_module_LDADD = -@COND_i386_coreboot_TRUE@datetime_module_LDADD = -@COND_i386_efi_TRUE@datetime_module_LDADD = -@COND_i386_ieee1275_TRUE@datetime_module_LDADD = -@COND_i386_multiboot_TRUE@datetime_module_LDADD = -@COND_i386_pc_TRUE@datetime_module_LDADD = -@COND_i386_qemu_TRUE@datetime_module_LDADD = -@COND_i386_xen_TRUE@datetime_module_LDADD = -@COND_i386_xen_pvh_TRUE@datetime_module_LDADD = -@COND_ia64_efi_TRUE@datetime_module_LDADD = -@COND_mips_arc_TRUE@datetime_module_LDADD = -@COND_mips_loongson_TRUE@datetime_module_LDADD = -@COND_mips_qemu_mips_TRUE@datetime_module_LDADD = -@COND_powerpc_ieee1275_TRUE@datetime_module_LDADD = -@COND_riscv32_efi_TRUE@datetime_module_LDADD = -@COND_riscv64_efi_TRUE@datetime_module_LDADD = -@COND_sparc64_ieee1275_TRUE@datetime_module_LDADD = -@COND_x86_64_efi_TRUE@datetime_module_LDADD = -@COND_x86_64_xen_TRUE@datetime_module_LDADD = -@COND_arm64_efi_TRUE@datetime_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_arm_coreboot_TRUE@datetime_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_arm_efi_TRUE@datetime_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_arm_uboot_TRUE@datetime_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_coreboot_TRUE@datetime_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_efi_TRUE@datetime_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@datetime_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_multiboot_TRUE@datetime_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_pc_TRUE@datetime_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_qemu_TRUE@datetime_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_xen_TRUE@datetime_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_xen_pvh_TRUE@datetime_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_ia64_efi_TRUE@datetime_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_mips_arc_TRUE@datetime_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_mips_loongson_TRUE@datetime_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_mips_qemu_mips_TRUE@datetime_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_powerpc_ieee1275_TRUE@datetime_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_riscv32_efi_TRUE@datetime_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_riscv64_efi_TRUE@datetime_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_sparc64_ieee1275_TRUE@datetime_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_x86_64_efi_TRUE@datetime_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_x86_64_xen_TRUE@datetime_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_arm64_efi_TRUE@datetime_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_arm_coreboot_TRUE@datetime_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_arm_efi_TRUE@datetime_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_arm_uboot_TRUE@datetime_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_coreboot_TRUE@datetime_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_efi_TRUE@datetime_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@datetime_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_multiboot_TRUE@datetime_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_pc_TRUE@datetime_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_qemu_TRUE@datetime_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_xen_TRUE@datetime_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_xen_pvh_TRUE@datetime_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_ia64_efi_TRUE@datetime_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_mips_arc_TRUE@datetime_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_mips_loongson_TRUE@datetime_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_mips_qemu_mips_TRUE@datetime_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_powerpc_ieee1275_TRUE@datetime_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_riscv32_efi_TRUE@datetime_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_riscv64_efi_TRUE@datetime_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_sparc64_ieee1275_TRUE@datetime_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_x86_64_efi_TRUE@datetime_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_x86_64_xen_TRUE@datetime_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_arm64_efi_TRUE@datetime_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_arm_coreboot_TRUE@datetime_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_arm_efi_TRUE@datetime_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_arm_uboot_TRUE@datetime_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_coreboot_TRUE@datetime_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_efi_TRUE@datetime_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@datetime_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_multiboot_TRUE@datetime_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_pc_TRUE@datetime_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_qemu_TRUE@datetime_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_xen_TRUE@datetime_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_xen_pvh_TRUE@datetime_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_ia64_efi_TRUE@datetime_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_mips_arc_TRUE@datetime_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_mips_loongson_TRUE@datetime_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_mips_qemu_mips_TRUE@datetime_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_powerpc_ieee1275_TRUE@datetime_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_riscv32_efi_TRUE@datetime_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_riscv64_efi_TRUE@datetime_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_sparc64_ieee1275_TRUE@datetime_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_x86_64_efi_TRUE@datetime_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_x86_64_xen_TRUE@datetime_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_arm64_efi_TRUE@datetime_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_arm_coreboot_TRUE@datetime_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_arm_efi_TRUE@datetime_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_arm_uboot_TRUE@datetime_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_coreboot_TRUE@datetime_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_efi_TRUE@datetime_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@datetime_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_multiboot_TRUE@datetime_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_pc_TRUE@datetime_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_qemu_TRUE@datetime_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_xen_TRUE@datetime_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_xen_pvh_TRUE@datetime_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_ia64_efi_TRUE@datetime_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_mips_arc_TRUE@datetime_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_mips_loongson_TRUE@datetime_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_mips_qemu_mips_TRUE@datetime_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_powerpc_ieee1275_TRUE@datetime_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_riscv32_efi_TRUE@datetime_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_riscv64_efi_TRUE@datetime_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_sparc64_ieee1275_TRUE@datetime_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_x86_64_efi_TRUE@datetime_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_x86_64_xen_TRUE@datetime_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_arm64_efi_TRUE@datetime_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_arm_coreboot_TRUE@datetime_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_arm_efi_TRUE@datetime_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_arm_uboot_TRUE@datetime_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_coreboot_TRUE@datetime_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_efi_TRUE@datetime_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_ieee1275_TRUE@datetime_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_multiboot_TRUE@datetime_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_pc_TRUE@datetime_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_qemu_TRUE@datetime_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_xen_TRUE@datetime_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_xen_pvh_TRUE@datetime_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_ia64_efi_TRUE@datetime_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_mips_arc_TRUE@datetime_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_mips_loongson_TRUE@datetime_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_mips_qemu_mips_TRUE@datetime_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_powerpc_ieee1275_TRUE@datetime_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_riscv32_efi_TRUE@datetime_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_riscv64_efi_TRUE@datetime_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_sparc64_ieee1275_TRUE@datetime_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_x86_64_efi_TRUE@datetime_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_x86_64_xen_TRUE@datetime_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -setjmp_module_SOURCES = lib/setjmp.S ## platform sources -nodist_setjmp_module_SOURCES = ## platform nodist sources -setjmp_module_LDADD = -setjmp_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -setjmp_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -setjmp_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -setjmp_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -setjmp_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_coreboot_TRUE@aout_module_SOURCES = loader/aout.c ## platform sources -@COND_i386_efi_TRUE@aout_module_SOURCES = loader/aout.c ## platform sources -@COND_i386_ieee1275_TRUE@aout_module_SOURCES = loader/aout.c ## platform sources -@COND_i386_multiboot_TRUE@aout_module_SOURCES = loader/aout.c ## platform sources -@COND_i386_pc_TRUE@aout_module_SOURCES = loader/aout.c ## platform sources -@COND_i386_qemu_TRUE@aout_module_SOURCES = loader/aout.c ## platform sources -@COND_x86_64_efi_TRUE@aout_module_SOURCES = loader/aout.c ## platform sources -@COND_i386_coreboot_TRUE@nodist_aout_module_SOURCES = ## platform nodist sources -@COND_i386_efi_TRUE@nodist_aout_module_SOURCES = ## platform nodist sources -@COND_i386_ieee1275_TRUE@nodist_aout_module_SOURCES = ## platform nodist sources -@COND_i386_multiboot_TRUE@nodist_aout_module_SOURCES = ## platform nodist sources -@COND_i386_pc_TRUE@nodist_aout_module_SOURCES = ## platform nodist sources -@COND_i386_qemu_TRUE@nodist_aout_module_SOURCES = ## platform nodist sources -@COND_x86_64_efi_TRUE@nodist_aout_module_SOURCES = ## platform nodist sources -@COND_i386_coreboot_TRUE@aout_module_LDADD = -@COND_i386_efi_TRUE@aout_module_LDADD = -@COND_i386_ieee1275_TRUE@aout_module_LDADD = -@COND_i386_multiboot_TRUE@aout_module_LDADD = -@COND_i386_pc_TRUE@aout_module_LDADD = -@COND_i386_qemu_TRUE@aout_module_LDADD = -@COND_x86_64_efi_TRUE@aout_module_LDADD = -@COND_i386_coreboot_TRUE@aout_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_efi_TRUE@aout_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@aout_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_multiboot_TRUE@aout_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_pc_TRUE@aout_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_qemu_TRUE@aout_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_x86_64_efi_TRUE@aout_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_coreboot_TRUE@aout_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_efi_TRUE@aout_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@aout_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_multiboot_TRUE@aout_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_pc_TRUE@aout_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_qemu_TRUE@aout_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_x86_64_efi_TRUE@aout_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_coreboot_TRUE@aout_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_efi_TRUE@aout_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@aout_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_multiboot_TRUE@aout_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_pc_TRUE@aout_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_qemu_TRUE@aout_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_x86_64_efi_TRUE@aout_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_coreboot_TRUE@aout_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_efi_TRUE@aout_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@aout_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_multiboot_TRUE@aout_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_pc_TRUE@aout_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_qemu_TRUE@aout_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_x86_64_efi_TRUE@aout_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_coreboot_TRUE@aout_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_efi_TRUE@aout_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_ieee1275_TRUE@aout_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_multiboot_TRUE@aout_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_pc_TRUE@aout_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_qemu_TRUE@aout_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_x86_64_efi_TRUE@aout_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_coreboot_TRUE@bsd_module_SOURCES = loader/i386/bsd.c loader/i386/bsd32.c loader/i386/bsd64.c ## platform sources -@COND_i386_efi_TRUE@bsd_module_SOURCES = loader/i386/bsd.c loader/i386/bsd32.c loader/i386/bsd64.c ## platform sources -@COND_i386_ieee1275_TRUE@bsd_module_SOURCES = loader/i386/bsd.c loader/i386/bsd32.c loader/i386/bsd64.c ## platform sources -@COND_i386_multiboot_TRUE@bsd_module_SOURCES = loader/i386/bsd.c loader/i386/bsd32.c loader/i386/bsd64.c ## platform sources -@COND_i386_pc_TRUE@bsd_module_SOURCES = loader/i386/bsd.c loader/i386/bsd32.c loader/i386/bsd64.c ## platform sources -@COND_i386_qemu_TRUE@bsd_module_SOURCES = loader/i386/bsd.c loader/i386/bsd32.c loader/i386/bsd64.c ## platform sources -@COND_x86_64_efi_TRUE@bsd_module_SOURCES = loader/i386/bsd.c loader/i386/bsd32.c loader/i386/bsd64.c ## platform sources -@COND_i386_coreboot_TRUE@nodist_bsd_module_SOURCES = ## platform nodist sources -@COND_i386_efi_TRUE@nodist_bsd_module_SOURCES = ## platform nodist sources -@COND_i386_ieee1275_TRUE@nodist_bsd_module_SOURCES = ## platform nodist sources -@COND_i386_multiboot_TRUE@nodist_bsd_module_SOURCES = ## platform nodist sources -@COND_i386_pc_TRUE@nodist_bsd_module_SOURCES = ## platform nodist sources -@COND_i386_qemu_TRUE@nodist_bsd_module_SOURCES = ## platform nodist sources -@COND_x86_64_efi_TRUE@nodist_bsd_module_SOURCES = ## platform nodist sources -@COND_i386_coreboot_TRUE@bsd_module_LDADD = -@COND_i386_efi_TRUE@bsd_module_LDADD = -@COND_i386_ieee1275_TRUE@bsd_module_LDADD = -@COND_i386_multiboot_TRUE@bsd_module_LDADD = -@COND_i386_pc_TRUE@bsd_module_LDADD = -@COND_i386_qemu_TRUE@bsd_module_LDADD = -@COND_x86_64_efi_TRUE@bsd_module_LDADD = -@COND_i386_coreboot_TRUE@bsd_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_efi_TRUE@bsd_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@bsd_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_multiboot_TRUE@bsd_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_pc_TRUE@bsd_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_qemu_TRUE@bsd_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_x86_64_efi_TRUE@bsd_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_coreboot_TRUE@bsd_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_efi_TRUE@bsd_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@bsd_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_multiboot_TRUE@bsd_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_pc_TRUE@bsd_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_qemu_TRUE@bsd_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_x86_64_efi_TRUE@bsd_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_coreboot_TRUE@bsd_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_efi_TRUE@bsd_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@bsd_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_multiboot_TRUE@bsd_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_pc_TRUE@bsd_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_qemu_TRUE@bsd_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_x86_64_efi_TRUE@bsd_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_coreboot_TRUE@bsd_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_efi_TRUE@bsd_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@bsd_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_multiboot_TRUE@bsd_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_pc_TRUE@bsd_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_qemu_TRUE@bsd_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_x86_64_efi_TRUE@bsd_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_coreboot_TRUE@bsd_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_efi_TRUE@bsd_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_ieee1275_TRUE@bsd_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_multiboot_TRUE@bsd_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_pc_TRUE@bsd_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_qemu_TRUE@bsd_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_x86_64_efi_TRUE@bsd_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_pc_TRUE@plan9_module_SOURCES = loader/i386/pc/plan9.c ## platform sources -@COND_i386_pc_TRUE@nodist_plan9_module_SOURCES = ## platform nodist sources -@COND_i386_pc_TRUE@plan9_module_LDADD = -@COND_i386_pc_TRUE@plan9_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_pc_TRUE@plan9_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_pc_TRUE@plan9_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_pc_TRUE@plan9_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_pc_TRUE@plan9_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_coreboot_TRUE@linux16_module_SOURCES = loader/i386/pc/linux.c ## platform sources -@COND_i386_efi_TRUE@linux16_module_SOURCES = loader/i386/pc/linux.c ## platform sources -@COND_i386_ieee1275_TRUE@linux16_module_SOURCES = loader/i386/pc/linux.c ## platform sources -@COND_i386_multiboot_TRUE@linux16_module_SOURCES = loader/i386/pc/linux.c ## platform sources -@COND_i386_pc_TRUE@linux16_module_SOURCES = loader/i386/pc/linux.c ## platform sources -@COND_i386_qemu_TRUE@linux16_module_SOURCES = loader/i386/pc/linux.c ## platform sources -@COND_x86_64_efi_TRUE@linux16_module_SOURCES = loader/i386/pc/linux.c ## platform sources -@COND_i386_coreboot_TRUE@nodist_linux16_module_SOURCES = ## platform nodist sources -@COND_i386_efi_TRUE@nodist_linux16_module_SOURCES = ## platform nodist sources -@COND_i386_ieee1275_TRUE@nodist_linux16_module_SOURCES = ## platform nodist sources -@COND_i386_multiboot_TRUE@nodist_linux16_module_SOURCES = ## platform nodist sources -@COND_i386_pc_TRUE@nodist_linux16_module_SOURCES = ## platform nodist sources -@COND_i386_qemu_TRUE@nodist_linux16_module_SOURCES = ## platform nodist sources -@COND_x86_64_efi_TRUE@nodist_linux16_module_SOURCES = ## platform nodist sources -@COND_i386_coreboot_TRUE@linux16_module_LDADD = -@COND_i386_efi_TRUE@linux16_module_LDADD = -@COND_i386_ieee1275_TRUE@linux16_module_LDADD = -@COND_i386_multiboot_TRUE@linux16_module_LDADD = -@COND_i386_pc_TRUE@linux16_module_LDADD = -@COND_i386_qemu_TRUE@linux16_module_LDADD = -@COND_x86_64_efi_TRUE@linux16_module_LDADD = -@COND_i386_coreboot_TRUE@linux16_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_efi_TRUE@linux16_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@linux16_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_multiboot_TRUE@linux16_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_pc_TRUE@linux16_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_qemu_TRUE@linux16_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_x86_64_efi_TRUE@linux16_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_coreboot_TRUE@linux16_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_efi_TRUE@linux16_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@linux16_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_multiboot_TRUE@linux16_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_pc_TRUE@linux16_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_qemu_TRUE@linux16_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_x86_64_efi_TRUE@linux16_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_coreboot_TRUE@linux16_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_efi_TRUE@linux16_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@linux16_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_multiboot_TRUE@linux16_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_pc_TRUE@linux16_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_qemu_TRUE@linux16_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_x86_64_efi_TRUE@linux16_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_coreboot_TRUE@linux16_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_efi_TRUE@linux16_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@linux16_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_multiboot_TRUE@linux16_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_pc_TRUE@linux16_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_qemu_TRUE@linux16_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_x86_64_efi_TRUE@linux16_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_coreboot_TRUE@linux16_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_efi_TRUE@linux16_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_ieee1275_TRUE@linux16_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_multiboot_TRUE@linux16_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_pc_TRUE@linux16_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_qemu_TRUE@linux16_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_x86_64_efi_TRUE@linux16_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_pc_TRUE@ntldr_module_SOURCES = loader/i386/pc/ntldr.c ## platform sources -@COND_i386_pc_TRUE@nodist_ntldr_module_SOURCES = ## platform nodist sources -@COND_i386_pc_TRUE@ntldr_module_LDADD = -@COND_i386_pc_TRUE@ntldr_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_pc_TRUE@ntldr_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_pc_TRUE@ntldr_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_pc_TRUE@ntldr_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_pc_TRUE@ntldr_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_pc_TRUE@truecrypt_module_SOURCES = loader/i386/pc/truecrypt.c ## platform sources -@COND_i386_pc_TRUE@nodist_truecrypt_module_SOURCES = ## platform nodist sources -@COND_i386_pc_TRUE@truecrypt_module_LDADD = -@COND_i386_pc_TRUE@truecrypt_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_pc_TRUE@truecrypt_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_pc_TRUE@truecrypt_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_pc_TRUE@truecrypt_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_pc_TRUE@truecrypt_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_pc_TRUE@freedos_module_SOURCES = loader/i386/pc/freedos.c ## platform sources -@COND_i386_pc_TRUE@nodist_freedos_module_SOURCES = ## platform nodist sources -@COND_i386_pc_TRUE@freedos_module_LDADD = -@COND_i386_pc_TRUE@freedos_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_pc_TRUE@freedos_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_pc_TRUE@freedos_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_pc_TRUE@freedos_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_pc_TRUE@freedos_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_pc_TRUE@pxechain_module_SOURCES = loader/i386/pc/pxechainloader.c ## platform sources -@COND_i386_pc_TRUE@nodist_pxechain_module_SOURCES = ## platform nodist sources -@COND_i386_pc_TRUE@pxechain_module_LDADD = -@COND_i386_pc_TRUE@pxechain_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_pc_TRUE@pxechain_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_pc_TRUE@pxechain_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_pc_TRUE@pxechain_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_pc_TRUE@pxechain_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_coreboot_TRUE@multiboot2_module_SOURCES = loader/multiboot.c loader/multiboot_mbi2.c ## platform sources -@COND_i386_efi_TRUE@multiboot2_module_SOURCES = loader/multiboot.c loader/multiboot_mbi2.c ## platform sources -@COND_i386_ieee1275_TRUE@multiboot2_module_SOURCES = loader/multiboot.c loader/multiboot_mbi2.c ## platform sources -@COND_i386_multiboot_TRUE@multiboot2_module_SOURCES = loader/multiboot.c loader/multiboot_mbi2.c ## platform sources -@COND_i386_pc_TRUE@multiboot2_module_SOURCES = loader/multiboot.c loader/multiboot_mbi2.c ## platform sources -@COND_i386_qemu_TRUE@multiboot2_module_SOURCES = loader/multiboot.c loader/multiboot_mbi2.c ## platform sources -@COND_i386_xen_pvh_TRUE@multiboot2_module_SOURCES = loader/multiboot.c loader/multiboot_mbi2.c ## platform sources -@COND_mips_arc_TRUE@multiboot2_module_SOURCES = loader/multiboot.c loader/multiboot_mbi2.c ## platform sources -@COND_mips_loongson_TRUE@multiboot2_module_SOURCES = loader/multiboot.c loader/multiboot_mbi2.c ## platform sources -@COND_mips_qemu_mips_TRUE@multiboot2_module_SOURCES = loader/multiboot.c loader/multiboot_mbi2.c ## platform sources -@COND_x86_64_efi_TRUE@multiboot2_module_SOURCES = loader/multiboot.c loader/multiboot_mbi2.c ## platform sources -@COND_i386_coreboot_TRUE@nodist_multiboot2_module_SOURCES = ## platform nodist sources -@COND_i386_efi_TRUE@nodist_multiboot2_module_SOURCES = ## platform nodist sources -@COND_i386_ieee1275_TRUE@nodist_multiboot2_module_SOURCES = ## platform nodist sources -@COND_i386_multiboot_TRUE@nodist_multiboot2_module_SOURCES = ## platform nodist sources -@COND_i386_pc_TRUE@nodist_multiboot2_module_SOURCES = ## platform nodist sources -@COND_i386_qemu_TRUE@nodist_multiboot2_module_SOURCES = ## platform nodist sources -@COND_i386_xen_pvh_TRUE@nodist_multiboot2_module_SOURCES = ## platform nodist sources -@COND_mips_arc_TRUE@nodist_multiboot2_module_SOURCES = ## platform nodist sources -@COND_mips_loongson_TRUE@nodist_multiboot2_module_SOURCES = ## platform nodist sources -@COND_mips_qemu_mips_TRUE@nodist_multiboot2_module_SOURCES = ## platform nodist sources -@COND_x86_64_efi_TRUE@nodist_multiboot2_module_SOURCES = ## platform nodist sources -@COND_i386_coreboot_TRUE@multiboot2_module_LDADD = -@COND_i386_efi_TRUE@multiboot2_module_LDADD = -@COND_i386_ieee1275_TRUE@multiboot2_module_LDADD = -@COND_i386_multiboot_TRUE@multiboot2_module_LDADD = -@COND_i386_pc_TRUE@multiboot2_module_LDADD = -@COND_i386_qemu_TRUE@multiboot2_module_LDADD = -@COND_i386_xen_pvh_TRUE@multiboot2_module_LDADD = -@COND_mips_arc_TRUE@multiboot2_module_LDADD = -@COND_mips_loongson_TRUE@multiboot2_module_LDADD = -@COND_mips_qemu_mips_TRUE@multiboot2_module_LDADD = -@COND_x86_64_efi_TRUE@multiboot2_module_LDADD = -@COND_i386_coreboot_TRUE@multiboot2_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_efi_TRUE@multiboot2_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@multiboot2_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_multiboot_TRUE@multiboot2_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_pc_TRUE@multiboot2_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_qemu_TRUE@multiboot2_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_xen_pvh_TRUE@multiboot2_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_mips_arc_TRUE@multiboot2_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_mips_loongson_TRUE@multiboot2_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_mips_qemu_mips_TRUE@multiboot2_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_x86_64_efi_TRUE@multiboot2_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_coreboot_TRUE@multiboot2_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_efi_TRUE@multiboot2_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@multiboot2_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_multiboot_TRUE@multiboot2_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_pc_TRUE@multiboot2_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_qemu_TRUE@multiboot2_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_xen_pvh_TRUE@multiboot2_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_mips_arc_TRUE@multiboot2_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_mips_loongson_TRUE@multiboot2_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_mips_qemu_mips_TRUE@multiboot2_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_x86_64_efi_TRUE@multiboot2_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_coreboot_TRUE@multiboot2_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -DGRUB_USE_MULTIBOOT2 -@COND_i386_efi_TRUE@multiboot2_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -DGRUB_USE_MULTIBOOT2 -@COND_i386_ieee1275_TRUE@multiboot2_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -DGRUB_USE_MULTIBOOT2 -@COND_i386_multiboot_TRUE@multiboot2_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -DGRUB_USE_MULTIBOOT2 -@COND_i386_pc_TRUE@multiboot2_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -DGRUB_USE_MULTIBOOT2 -@COND_i386_qemu_TRUE@multiboot2_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -DGRUB_USE_MULTIBOOT2 -@COND_i386_xen_pvh_TRUE@multiboot2_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -DGRUB_USE_MULTIBOOT2 -@COND_mips_arc_TRUE@multiboot2_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -DGRUB_USE_MULTIBOOT2 -@COND_mips_loongson_TRUE@multiboot2_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -DGRUB_USE_MULTIBOOT2 -@COND_mips_qemu_mips_TRUE@multiboot2_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -DGRUB_USE_MULTIBOOT2 -@COND_x86_64_efi_TRUE@multiboot2_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -DGRUB_USE_MULTIBOOT2 -@COND_i386_coreboot_TRUE@multiboot2_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_efi_TRUE@multiboot2_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@multiboot2_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_multiboot_TRUE@multiboot2_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_pc_TRUE@multiboot2_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_qemu_TRUE@multiboot2_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_xen_pvh_TRUE@multiboot2_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_mips_arc_TRUE@multiboot2_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_mips_loongson_TRUE@multiboot2_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_mips_qemu_mips_TRUE@multiboot2_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_x86_64_efi_TRUE@multiboot2_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_coreboot_TRUE@multiboot2_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_efi_TRUE@multiboot2_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_ieee1275_TRUE@multiboot2_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_multiboot_TRUE@multiboot2_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_pc_TRUE@multiboot2_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_qemu_TRUE@multiboot2_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_xen_pvh_TRUE@multiboot2_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_mips_arc_TRUE@multiboot2_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_mips_loongson_TRUE@multiboot2_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_mips_qemu_mips_TRUE@multiboot2_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_x86_64_efi_TRUE@multiboot2_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_coreboot_TRUE@multiboot_module_SOURCES = loader/i386/multiboot_mbi.c loader/multiboot.c ## platform sources -@COND_i386_efi_TRUE@multiboot_module_SOURCES = loader/i386/multiboot_mbi.c loader/multiboot.c ## platform sources -@COND_i386_ieee1275_TRUE@multiboot_module_SOURCES = loader/i386/multiboot_mbi.c loader/multiboot.c ## platform sources -@COND_i386_multiboot_TRUE@multiboot_module_SOURCES = loader/i386/multiboot_mbi.c loader/multiboot.c ## platform sources -@COND_i386_pc_TRUE@multiboot_module_SOURCES = loader/i386/multiboot_mbi.c loader/multiboot.c ## platform sources -@COND_i386_qemu_TRUE@multiboot_module_SOURCES = loader/i386/multiboot_mbi.c loader/multiboot.c ## platform sources -@COND_i386_xen_pvh_TRUE@multiboot_module_SOURCES = loader/i386/multiboot_mbi.c loader/multiboot.c ## platform sources -@COND_x86_64_efi_TRUE@multiboot_module_SOURCES = loader/i386/multiboot_mbi.c loader/multiboot.c ## platform sources -@COND_i386_coreboot_TRUE@nodist_multiboot_module_SOURCES = ## platform nodist sources -@COND_i386_efi_TRUE@nodist_multiboot_module_SOURCES = ## platform nodist sources -@COND_i386_ieee1275_TRUE@nodist_multiboot_module_SOURCES = ## platform nodist sources -@COND_i386_multiboot_TRUE@nodist_multiboot_module_SOURCES = ## platform nodist sources -@COND_i386_pc_TRUE@nodist_multiboot_module_SOURCES = ## platform nodist sources -@COND_i386_qemu_TRUE@nodist_multiboot_module_SOURCES = ## platform nodist sources -@COND_i386_xen_pvh_TRUE@nodist_multiboot_module_SOURCES = ## platform nodist sources -@COND_x86_64_efi_TRUE@nodist_multiboot_module_SOURCES = ## platform nodist sources -@COND_i386_coreboot_TRUE@multiboot_module_LDADD = -@COND_i386_efi_TRUE@multiboot_module_LDADD = -@COND_i386_ieee1275_TRUE@multiboot_module_LDADD = -@COND_i386_multiboot_TRUE@multiboot_module_LDADD = -@COND_i386_pc_TRUE@multiboot_module_LDADD = -@COND_i386_qemu_TRUE@multiboot_module_LDADD = -@COND_i386_xen_pvh_TRUE@multiboot_module_LDADD = -@COND_x86_64_efi_TRUE@multiboot_module_LDADD = -@COND_i386_coreboot_TRUE@multiboot_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_efi_TRUE@multiboot_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@multiboot_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_multiboot_TRUE@multiboot_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_pc_TRUE@multiboot_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_qemu_TRUE@multiboot_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_xen_pvh_TRUE@multiboot_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_x86_64_efi_TRUE@multiboot_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_coreboot_TRUE@multiboot_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_efi_TRUE@multiboot_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@multiboot_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_multiboot_TRUE@multiboot_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_pc_TRUE@multiboot_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_qemu_TRUE@multiboot_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_xen_pvh_TRUE@multiboot_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_x86_64_efi_TRUE@multiboot_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_coreboot_TRUE@multiboot_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_efi_TRUE@multiboot_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@multiboot_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_multiboot_TRUE@multiboot_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_pc_TRUE@multiboot_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_qemu_TRUE@multiboot_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_xen_pvh_TRUE@multiboot_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_x86_64_efi_TRUE@multiboot_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_coreboot_TRUE@multiboot_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_efi_TRUE@multiboot_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@multiboot_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_multiboot_TRUE@multiboot_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_pc_TRUE@multiboot_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_qemu_TRUE@multiboot_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_xen_pvh_TRUE@multiboot_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_x86_64_efi_TRUE@multiboot_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_coreboot_TRUE@multiboot_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_efi_TRUE@multiboot_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_ieee1275_TRUE@multiboot_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_multiboot_TRUE@multiboot_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_pc_TRUE@multiboot_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_qemu_TRUE@multiboot_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_xen_pvh_TRUE@multiboot_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_x86_64_efi_TRUE@multiboot_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_arm64_efi_TRUE@xen_boot_module_SOURCES = loader/arm64/xen_boot.c ## platform sources -@COND_arm64_efi_TRUE@nodist_xen_boot_module_SOURCES = ## platform nodist sources -@COND_arm64_efi_TRUE@xen_boot_module_LDADD = -@COND_arm64_efi_TRUE@xen_boot_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_arm64_efi_TRUE@xen_boot_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_arm64_efi_TRUE@xen_boot_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_arm64_efi_TRUE@xen_boot_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_arm64_efi_TRUE@xen_boot_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_arm64_efi_TRUE@linux_module_SOURCES = loader/arm64/linux.c loader/linux.c lib/cmdline.c ## platform sources -@COND_arm_coreboot_TRUE@linux_module_SOURCES = loader/arm/linux.c loader/linux.c lib/cmdline.c ## platform sources -@COND_arm_efi_TRUE@linux_module_SOURCES = loader/arm64/linux.c loader/linux.c lib/cmdline.c ## platform sources -@COND_arm_uboot_TRUE@linux_module_SOURCES = loader/arm/linux.c loader/linux.c lib/cmdline.c ## platform sources -@COND_i386_coreboot_TRUE@linux_module_SOURCES = loader/i386/linux.c loader/linux.c lib/cmdline.c ## platform sources -@COND_i386_efi_TRUE@linux_module_SOURCES = loader/i386/linux.c loader/linux.c lib/cmdline.c ## platform sources -@COND_i386_ieee1275_TRUE@linux_module_SOURCES = loader/i386/linux.c loader/linux.c lib/cmdline.c ## platform sources -@COND_i386_multiboot_TRUE@linux_module_SOURCES = loader/i386/linux.c loader/linux.c lib/cmdline.c ## platform sources -@COND_i386_pc_TRUE@linux_module_SOURCES = lib/i386/pc/vesa_modes_table.c loader/i386/linux.c loader/linux.c lib/cmdline.c ## platform sources -@COND_i386_qemu_TRUE@linux_module_SOURCES = loader/i386/linux.c loader/linux.c lib/cmdline.c ## platform sources -@COND_i386_xen_TRUE@linux_module_SOURCES = loader/i386/xen.c loader/linux.c lib/cmdline.c ## platform sources -@COND_i386_xen_pvh_TRUE@linux_module_SOURCES = loader/i386/linux.c lib/i386/pc/vesa_modes_table.c loader/linux.c lib/cmdline.c ## platform sources -@COND_ia64_efi_TRUE@linux_module_SOURCES = loader/ia64/efi/linux.c loader/linux.c lib/cmdline.c ## platform sources -@COND_mips_arc_TRUE@linux_module_SOURCES = loader/mips/linux.c loader/linux.c lib/cmdline.c ## platform sources -@COND_mips_loongson_TRUE@linux_module_SOURCES = loader/mips/linux.c loader/linux.c lib/cmdline.c ## platform sources -@COND_mips_qemu_mips_TRUE@linux_module_SOURCES = loader/mips/linux.c loader/linux.c lib/cmdline.c ## platform sources -@COND_powerpc_ieee1275_TRUE@linux_module_SOURCES = loader/powerpc/ieee1275/linux.c loader/linux.c lib/cmdline.c ## platform sources -@COND_riscv32_efi_TRUE@linux_module_SOURCES = loader/riscv/linux.c loader/linux.c lib/cmdline.c ## platform sources -@COND_riscv64_efi_TRUE@linux_module_SOURCES = loader/riscv/linux.c loader/linux.c lib/cmdline.c ## platform sources -@COND_sparc64_ieee1275_TRUE@linux_module_SOURCES = loader/sparc64/ieee1275/linux.c loader/linux.c lib/cmdline.c ## platform sources -@COND_x86_64_efi_TRUE@linux_module_SOURCES = loader/i386/linux.c loader/linux.c lib/cmdline.c ## platform sources -@COND_x86_64_xen_TRUE@linux_module_SOURCES = loader/i386/xen.c loader/linux.c lib/cmdline.c ## platform sources -@COND_arm64_efi_TRUE@nodist_linux_module_SOURCES = ## platform nodist sources -@COND_arm_coreboot_TRUE@nodist_linux_module_SOURCES = ## platform nodist sources -@COND_arm_efi_TRUE@nodist_linux_module_SOURCES = ## platform nodist sources -@COND_arm_uboot_TRUE@nodist_linux_module_SOURCES = ## platform nodist sources -@COND_i386_coreboot_TRUE@nodist_linux_module_SOURCES = ## platform nodist sources -@COND_i386_efi_TRUE@nodist_linux_module_SOURCES = ## platform nodist sources -@COND_i386_ieee1275_TRUE@nodist_linux_module_SOURCES = ## platform nodist sources -@COND_i386_multiboot_TRUE@nodist_linux_module_SOURCES = ## platform nodist sources -@COND_i386_pc_TRUE@nodist_linux_module_SOURCES = ## platform nodist sources -@COND_i386_qemu_TRUE@nodist_linux_module_SOURCES = ## platform nodist sources -@COND_i386_xen_TRUE@nodist_linux_module_SOURCES = ## platform nodist sources -@COND_i386_xen_pvh_TRUE@nodist_linux_module_SOURCES = ## platform nodist sources -@COND_ia64_efi_TRUE@nodist_linux_module_SOURCES = ## platform nodist sources -@COND_mips_arc_TRUE@nodist_linux_module_SOURCES = ## platform nodist sources -@COND_mips_loongson_TRUE@nodist_linux_module_SOURCES = ## platform nodist sources -@COND_mips_qemu_mips_TRUE@nodist_linux_module_SOURCES = ## platform nodist sources -@COND_powerpc_ieee1275_TRUE@nodist_linux_module_SOURCES = ## platform nodist sources -@COND_riscv32_efi_TRUE@nodist_linux_module_SOURCES = ## platform nodist sources -@COND_riscv64_efi_TRUE@nodist_linux_module_SOURCES = ## platform nodist sources -@COND_sparc64_ieee1275_TRUE@nodist_linux_module_SOURCES = ## platform nodist sources -@COND_x86_64_efi_TRUE@nodist_linux_module_SOURCES = ## platform nodist sources -@COND_x86_64_xen_TRUE@nodist_linux_module_SOURCES = ## platform nodist sources -@COND_arm64_efi_TRUE@linux_module_LDADD = -@COND_arm_coreboot_TRUE@linux_module_LDADD = -@COND_arm_efi_TRUE@linux_module_LDADD = -@COND_arm_uboot_TRUE@linux_module_LDADD = -@COND_i386_coreboot_TRUE@linux_module_LDADD = -@COND_i386_efi_TRUE@linux_module_LDADD = -@COND_i386_ieee1275_TRUE@linux_module_LDADD = -@COND_i386_multiboot_TRUE@linux_module_LDADD = -@COND_i386_pc_TRUE@linux_module_LDADD = -@COND_i386_qemu_TRUE@linux_module_LDADD = -@COND_i386_xen_TRUE@linux_module_LDADD = -@COND_i386_xen_pvh_TRUE@linux_module_LDADD = -@COND_ia64_efi_TRUE@linux_module_LDADD = -@COND_mips_arc_TRUE@linux_module_LDADD = -@COND_mips_loongson_TRUE@linux_module_LDADD = -@COND_mips_qemu_mips_TRUE@linux_module_LDADD = -@COND_powerpc_ieee1275_TRUE@linux_module_LDADD = -@COND_riscv32_efi_TRUE@linux_module_LDADD = -@COND_riscv64_efi_TRUE@linux_module_LDADD = -@COND_sparc64_ieee1275_TRUE@linux_module_LDADD = -@COND_x86_64_efi_TRUE@linux_module_LDADD = -@COND_x86_64_xen_TRUE@linux_module_LDADD = -@COND_arm64_efi_TRUE@linux_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_arm_coreboot_TRUE@linux_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_arm_efi_TRUE@linux_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_arm_uboot_TRUE@linux_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_coreboot_TRUE@linux_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_efi_TRUE@linux_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@linux_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_multiboot_TRUE@linux_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_pc_TRUE@linux_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_qemu_TRUE@linux_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_xen_TRUE@linux_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_xen_pvh_TRUE@linux_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_ia64_efi_TRUE@linux_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_mips_arc_TRUE@linux_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_mips_loongson_TRUE@linux_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_mips_qemu_mips_TRUE@linux_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_powerpc_ieee1275_TRUE@linux_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_riscv32_efi_TRUE@linux_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_riscv64_efi_TRUE@linux_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_sparc64_ieee1275_TRUE@linux_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_x86_64_efi_TRUE@linux_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_x86_64_xen_TRUE@linux_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_arm64_efi_TRUE@linux_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_arm_coreboot_TRUE@linux_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_arm_efi_TRUE@linux_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_arm_uboot_TRUE@linux_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_coreboot_TRUE@linux_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_efi_TRUE@linux_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@linux_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_multiboot_TRUE@linux_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_pc_TRUE@linux_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_qemu_TRUE@linux_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_xen_TRUE@linux_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_xen_pvh_TRUE@linux_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_ia64_efi_TRUE@linux_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_mips_arc_TRUE@linux_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_mips_loongson_TRUE@linux_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_mips_qemu_mips_TRUE@linux_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_powerpc_ieee1275_TRUE@linux_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_riscv32_efi_TRUE@linux_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_riscv64_efi_TRUE@linux_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_sparc64_ieee1275_TRUE@linux_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_x86_64_efi_TRUE@linux_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_x86_64_xen_TRUE@linux_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_arm64_efi_TRUE@linux_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_arm_coreboot_TRUE@linux_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_arm_efi_TRUE@linux_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_arm_uboot_TRUE@linux_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_coreboot_TRUE@linux_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_efi_TRUE@linux_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@linux_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_multiboot_TRUE@linux_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_pc_TRUE@linux_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_qemu_TRUE@linux_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_xen_TRUE@linux_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_xen_pvh_TRUE@linux_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_ia64_efi_TRUE@linux_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_mips_arc_TRUE@linux_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_mips_loongson_TRUE@linux_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_mips_qemu_mips_TRUE@linux_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_powerpc_ieee1275_TRUE@linux_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_riscv32_efi_TRUE@linux_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_riscv64_efi_TRUE@linux_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_sparc64_ieee1275_TRUE@linux_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_x86_64_efi_TRUE@linux_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_x86_64_xen_TRUE@linux_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_arm64_efi_TRUE@linux_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_arm_coreboot_TRUE@linux_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_arm_efi_TRUE@linux_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_arm_uboot_TRUE@linux_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_coreboot_TRUE@linux_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_efi_TRUE@linux_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@linux_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_multiboot_TRUE@linux_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_pc_TRUE@linux_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_qemu_TRUE@linux_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_xen_TRUE@linux_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_xen_pvh_TRUE@linux_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_ia64_efi_TRUE@linux_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_mips_arc_TRUE@linux_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_mips_loongson_TRUE@linux_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_mips_qemu_mips_TRUE@linux_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_powerpc_ieee1275_TRUE@linux_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_riscv32_efi_TRUE@linux_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_riscv64_efi_TRUE@linux_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_sparc64_ieee1275_TRUE@linux_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_x86_64_efi_TRUE@linux_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_x86_64_xen_TRUE@linux_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_arm64_efi_TRUE@linux_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_arm_coreboot_TRUE@linux_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_arm_efi_TRUE@linux_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_arm_uboot_TRUE@linux_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_coreboot_TRUE@linux_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_efi_TRUE@linux_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_ieee1275_TRUE@linux_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_multiboot_TRUE@linux_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_pc_TRUE@linux_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_qemu_TRUE@linux_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_xen_TRUE@linux_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_xen_pvh_TRUE@linux_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_ia64_efi_TRUE@linux_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_mips_arc_TRUE@linux_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_mips_loongson_TRUE@linux_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_mips_qemu_mips_TRUE@linux_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_powerpc_ieee1275_TRUE@linux_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_riscv32_efi_TRUE@linux_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_riscv64_efi_TRUE@linux_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_sparc64_ieee1275_TRUE@linux_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_x86_64_efi_TRUE@linux_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_x86_64_xen_TRUE@linux_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_arm64_efi_TRUE@fdt_module_SOURCES = loader/efi/fdt.c lib/fdt.c ## platform sources -@COND_arm_efi_TRUE@fdt_module_SOURCES = loader/efi/fdt.c lib/fdt.c ## platform sources -@COND_arm_uboot_TRUE@fdt_module_SOURCES = lib/fdt.c ## platform sources -@COND_riscv32_efi_TRUE@fdt_module_SOURCES = loader/efi/fdt.c lib/fdt.c ## platform sources -@COND_riscv64_efi_TRUE@fdt_module_SOURCES = loader/efi/fdt.c lib/fdt.c ## platform sources -@COND_arm64_efi_TRUE@nodist_fdt_module_SOURCES = ## platform nodist sources -@COND_arm_efi_TRUE@nodist_fdt_module_SOURCES = ## platform nodist sources -@COND_arm_uboot_TRUE@nodist_fdt_module_SOURCES = ## platform nodist sources -@COND_riscv32_efi_TRUE@nodist_fdt_module_SOURCES = ## platform nodist sources -@COND_riscv64_efi_TRUE@nodist_fdt_module_SOURCES = ## platform nodist sources -@COND_arm64_efi_TRUE@fdt_module_LDADD = -@COND_arm_efi_TRUE@fdt_module_LDADD = -@COND_arm_uboot_TRUE@fdt_module_LDADD = -@COND_riscv32_efi_TRUE@fdt_module_LDADD = -@COND_riscv64_efi_TRUE@fdt_module_LDADD = -@COND_arm64_efi_TRUE@fdt_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_arm_efi_TRUE@fdt_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_arm_uboot_TRUE@fdt_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_riscv32_efi_TRUE@fdt_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_riscv64_efi_TRUE@fdt_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_arm64_efi_TRUE@fdt_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_arm_efi_TRUE@fdt_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_arm_uboot_TRUE@fdt_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_riscv32_efi_TRUE@fdt_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_riscv64_efi_TRUE@fdt_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_arm64_efi_TRUE@fdt_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_arm_efi_TRUE@fdt_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_arm_uboot_TRUE@fdt_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_riscv32_efi_TRUE@fdt_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_riscv64_efi_TRUE@fdt_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_arm64_efi_TRUE@fdt_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_arm_efi_TRUE@fdt_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_arm_uboot_TRUE@fdt_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_riscv32_efi_TRUE@fdt_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_riscv64_efi_TRUE@fdt_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_arm64_efi_TRUE@fdt_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_arm_efi_TRUE@fdt_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_arm_uboot_TRUE@fdt_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_riscv32_efi_TRUE@fdt_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_riscv64_efi_TRUE@fdt_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_coreboot_TRUE@xnu_module_SOURCES = loader/xnu_resume.c loader/i386/xnu.c loader/xnu.c ## platform sources -@COND_i386_efi_TRUE@xnu_module_SOURCES = loader/xnu_resume.c loader/i386/xnu.c loader/xnu.c ## platform sources -@COND_i386_multiboot_TRUE@xnu_module_SOURCES = loader/xnu_resume.c loader/i386/xnu.c loader/xnu.c ## platform sources -@COND_i386_pc_TRUE@xnu_module_SOURCES = loader/xnu_resume.c loader/i386/xnu.c loader/xnu.c ## platform sources -@COND_x86_64_efi_TRUE@xnu_module_SOURCES = loader/xnu_resume.c loader/i386/xnu.c loader/xnu.c ## platform sources -@COND_i386_coreboot_TRUE@nodist_xnu_module_SOURCES = ## platform nodist sources -@COND_i386_efi_TRUE@nodist_xnu_module_SOURCES = ## platform nodist sources -@COND_i386_multiboot_TRUE@nodist_xnu_module_SOURCES = ## platform nodist sources -@COND_i386_pc_TRUE@nodist_xnu_module_SOURCES = ## platform nodist sources -@COND_x86_64_efi_TRUE@nodist_xnu_module_SOURCES = ## platform nodist sources -@COND_i386_coreboot_TRUE@xnu_module_LDADD = -@COND_i386_efi_TRUE@xnu_module_LDADD = -@COND_i386_multiboot_TRUE@xnu_module_LDADD = -@COND_i386_pc_TRUE@xnu_module_LDADD = -@COND_x86_64_efi_TRUE@xnu_module_LDADD = -@COND_i386_coreboot_TRUE@xnu_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_efi_TRUE@xnu_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_multiboot_TRUE@xnu_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_pc_TRUE@xnu_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_x86_64_efi_TRUE@xnu_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_coreboot_TRUE@xnu_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_efi_TRUE@xnu_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_multiboot_TRUE@xnu_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_pc_TRUE@xnu_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_x86_64_efi_TRUE@xnu_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_coreboot_TRUE@xnu_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_efi_TRUE@xnu_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_multiboot_TRUE@xnu_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_pc_TRUE@xnu_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_x86_64_efi_TRUE@xnu_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_coreboot_TRUE@xnu_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_efi_TRUE@xnu_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_multiboot_TRUE@xnu_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_pc_TRUE@xnu_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_x86_64_efi_TRUE@xnu_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_coreboot_TRUE@xnu_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_efi_TRUE@xnu_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_multiboot_TRUE@xnu_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_pc_TRUE@xnu_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_x86_64_efi_TRUE@xnu_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_coreboot_TRUE@random_module_SOURCES = kern/i386/tsc_pmtimer.c lib/i386/random.c lib/random.c ## platform sources -@COND_i386_efi_TRUE@random_module_SOURCES = lib/i386/random.c lib/random.c ## platform sources -@COND_i386_multiboot_TRUE@random_module_SOURCES = kern/i386/tsc_pmtimer.c lib/i386/random.c lib/random.c ## platform sources -@COND_i386_pc_TRUE@random_module_SOURCES = kern/i386/tsc_pmtimer.c lib/i386/random.c lib/random.c ## platform sources -@COND_x86_64_efi_TRUE@random_module_SOURCES = lib/i386/random.c lib/random.c ## platform sources -@COND_i386_coreboot_TRUE@nodist_random_module_SOURCES = ## platform nodist sources -@COND_i386_efi_TRUE@nodist_random_module_SOURCES = ## platform nodist sources -@COND_i386_multiboot_TRUE@nodist_random_module_SOURCES = ## platform nodist sources -@COND_i386_pc_TRUE@nodist_random_module_SOURCES = ## platform nodist sources -@COND_x86_64_efi_TRUE@nodist_random_module_SOURCES = ## platform nodist sources -@COND_i386_coreboot_TRUE@random_module_LDADD = -@COND_i386_efi_TRUE@random_module_LDADD = -@COND_i386_multiboot_TRUE@random_module_LDADD = -@COND_i386_pc_TRUE@random_module_LDADD = -@COND_x86_64_efi_TRUE@random_module_LDADD = -@COND_i386_coreboot_TRUE@random_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_efi_TRUE@random_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_multiboot_TRUE@random_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_pc_TRUE@random_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_x86_64_efi_TRUE@random_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_coreboot_TRUE@random_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_efi_TRUE@random_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_multiboot_TRUE@random_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_pc_TRUE@random_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_x86_64_efi_TRUE@random_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_coreboot_TRUE@random_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_efi_TRUE@random_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_multiboot_TRUE@random_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_pc_TRUE@random_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_x86_64_efi_TRUE@random_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_coreboot_TRUE@random_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_efi_TRUE@random_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_multiboot_TRUE@random_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_pc_TRUE@random_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_x86_64_efi_TRUE@random_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_coreboot_TRUE@random_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_efi_TRUE@random_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_multiboot_TRUE@random_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_pc_TRUE@random_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_x86_64_efi_TRUE@random_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -macho_module_SOURCES = loader/macho.c loader/macho32.c loader/macho64.c loader/lzss.c ## platform sources -nodist_macho_module_SOURCES = ## platform nodist sources -macho_module_LDADD = -macho_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -macho_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -macho_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -macho_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -macho_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_efi_TRUE@appleldr_module_SOURCES = loader/efi/appleloader.c ## platform sources -@COND_x86_64_efi_TRUE@appleldr_module_SOURCES = loader/efi/appleloader.c ## platform sources -@COND_i386_efi_TRUE@nodist_appleldr_module_SOURCES = ## platform nodist sources -@COND_x86_64_efi_TRUE@nodist_appleldr_module_SOURCES = ## platform nodist sources -@COND_i386_efi_TRUE@appleldr_module_LDADD = -@COND_x86_64_efi_TRUE@appleldr_module_LDADD = -@COND_i386_efi_TRUE@appleldr_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_x86_64_efi_TRUE@appleldr_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_efi_TRUE@appleldr_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_x86_64_efi_TRUE@appleldr_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_efi_TRUE@appleldr_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_x86_64_efi_TRUE@appleldr_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_efi_TRUE@appleldr_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_x86_64_efi_TRUE@appleldr_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_efi_TRUE@appleldr_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_x86_64_efi_TRUE@appleldr_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_arm64_efi_TRUE@chain_module_SOURCES = loader/efi/chainloader.c ## platform sources -@COND_arm_efi_TRUE@chain_module_SOURCES = loader/efi/chainloader.c ## platform sources -@COND_i386_coreboot_TRUE@chain_module_SOURCES = loader/i386/coreboot/chainloader.c lib/LzmaDec.c ## platform sources -@COND_i386_efi_TRUE@chain_module_SOURCES = loader/efi/chainloader.c ## platform sources -@COND_i386_pc_TRUE@chain_module_SOURCES = loader/i386/pc/chainloader.c ## platform sources -@COND_ia64_efi_TRUE@chain_module_SOURCES = loader/efi/chainloader.c ## platform sources -@COND_riscv32_efi_TRUE@chain_module_SOURCES = loader/efi/chainloader.c ## platform sources -@COND_riscv64_efi_TRUE@chain_module_SOURCES = loader/efi/chainloader.c ## platform sources -@COND_x86_64_efi_TRUE@chain_module_SOURCES = loader/efi/chainloader.c ## platform sources -@COND_arm64_efi_TRUE@nodist_chain_module_SOURCES = ## platform nodist sources -@COND_arm_efi_TRUE@nodist_chain_module_SOURCES = ## platform nodist sources -@COND_i386_coreboot_TRUE@nodist_chain_module_SOURCES = ## platform nodist sources -@COND_i386_efi_TRUE@nodist_chain_module_SOURCES = ## platform nodist sources -@COND_i386_pc_TRUE@nodist_chain_module_SOURCES = ## platform nodist sources -@COND_ia64_efi_TRUE@nodist_chain_module_SOURCES = ## platform nodist sources -@COND_riscv32_efi_TRUE@nodist_chain_module_SOURCES = ## platform nodist sources -@COND_riscv64_efi_TRUE@nodist_chain_module_SOURCES = ## platform nodist sources -@COND_x86_64_efi_TRUE@nodist_chain_module_SOURCES = ## platform nodist sources -@COND_arm64_efi_TRUE@chain_module_LDADD = -@COND_arm_efi_TRUE@chain_module_LDADD = -@COND_i386_coreboot_TRUE@chain_module_LDADD = -@COND_i386_efi_TRUE@chain_module_LDADD = -@COND_i386_pc_TRUE@chain_module_LDADD = -@COND_ia64_efi_TRUE@chain_module_LDADD = -@COND_riscv32_efi_TRUE@chain_module_LDADD = -@COND_riscv64_efi_TRUE@chain_module_LDADD = -@COND_x86_64_efi_TRUE@chain_module_LDADD = -@COND_arm64_efi_TRUE@chain_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_arm_efi_TRUE@chain_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_coreboot_TRUE@chain_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_efi_TRUE@chain_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_pc_TRUE@chain_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_ia64_efi_TRUE@chain_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_riscv32_efi_TRUE@chain_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_riscv64_efi_TRUE@chain_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_x86_64_efi_TRUE@chain_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_arm64_efi_TRUE@chain_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_arm_efi_TRUE@chain_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_coreboot_TRUE@chain_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_efi_TRUE@chain_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_pc_TRUE@chain_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_ia64_efi_TRUE@chain_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_riscv32_efi_TRUE@chain_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_riscv64_efi_TRUE@chain_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_x86_64_efi_TRUE@chain_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_arm64_efi_TRUE@chain_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_arm_efi_TRUE@chain_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_coreboot_TRUE@chain_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_efi_TRUE@chain_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_pc_TRUE@chain_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_ia64_efi_TRUE@chain_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_riscv32_efi_TRUE@chain_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_riscv64_efi_TRUE@chain_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_x86_64_efi_TRUE@chain_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_arm64_efi_TRUE@chain_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_arm_efi_TRUE@chain_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_coreboot_TRUE@chain_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_efi_TRUE@chain_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_pc_TRUE@chain_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_ia64_efi_TRUE@chain_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_riscv32_efi_TRUE@chain_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_riscv64_efi_TRUE@chain_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_x86_64_efi_TRUE@chain_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_arm64_efi_TRUE@chain_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_arm_efi_TRUE@chain_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_coreboot_TRUE@chain_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_efi_TRUE@chain_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_pc_TRUE@chain_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_ia64_efi_TRUE@chain_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_riscv32_efi_TRUE@chain_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_riscv64_efi_TRUE@chain_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_x86_64_efi_TRUE@chain_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_arm64_efi_TRUE@mmap_module_SOURCES = mmap/efi/mmap.c mmap/mmap.c ## platform sources -@COND_arm_efi_TRUE@mmap_module_SOURCES = mmap/efi/mmap.c mmap/mmap.c ## platform sources -@COND_i386_coreboot_TRUE@mmap_module_SOURCES = mmap/i386/uppermem.c mmap/i386/mmap.c mmap/mmap.c ## platform sources -@COND_i386_efi_TRUE@mmap_module_SOURCES = mmap/i386/uppermem.c mmap/i386/mmap.c mmap/efi/mmap.c mmap/mmap.c ## platform sources -@COND_i386_ieee1275_TRUE@mmap_module_SOURCES = mmap/i386/uppermem.c mmap/i386/mmap.c mmap/mmap.c ## platform sources -@COND_i386_multiboot_TRUE@mmap_module_SOURCES = mmap/i386/uppermem.c mmap/i386/mmap.c mmap/mmap.c ## platform sources -@COND_i386_pc_TRUE@mmap_module_SOURCES = mmap/i386/pc/mmap.c mmap/i386/pc/mmap_helper.S mmap/i386/uppermem.c mmap/i386/mmap.c mmap/mmap.c ## platform sources -@COND_i386_qemu_TRUE@mmap_module_SOURCES = mmap/i386/uppermem.c mmap/i386/mmap.c mmap/mmap.c ## platform sources -@COND_i386_xen_pvh_TRUE@mmap_module_SOURCES = mmap/i386/uppermem.c mmap/i386/mmap.c mmap/mmap.c ## platform sources -@COND_ia64_efi_TRUE@mmap_module_SOURCES = mmap/efi/mmap.c mmap/mmap.c ## platform sources -@COND_mips_arc_TRUE@mmap_module_SOURCES = mmap/mips/uppermem.c mmap/mmap.c ## platform sources -@COND_mips_loongson_TRUE@mmap_module_SOURCES = mmap/mips/uppermem.c mmap/mmap.c ## platform sources -@COND_mips_qemu_mips_TRUE@mmap_module_SOURCES = mmap/mips/uppermem.c mmap/mmap.c ## platform sources -@COND_riscv32_efi_TRUE@mmap_module_SOURCES = mmap/efi/mmap.c mmap/mmap.c ## platform sources -@COND_riscv64_efi_TRUE@mmap_module_SOURCES = mmap/efi/mmap.c mmap/mmap.c ## platform sources -@COND_x86_64_efi_TRUE@mmap_module_SOURCES = mmap/i386/uppermem.c mmap/i386/mmap.c mmap/efi/mmap.c mmap/mmap.c ## platform sources -@COND_arm64_efi_TRUE@nodist_mmap_module_SOURCES = ## platform nodist sources -@COND_arm_efi_TRUE@nodist_mmap_module_SOURCES = ## platform nodist sources -@COND_i386_coreboot_TRUE@nodist_mmap_module_SOURCES = ## platform nodist sources -@COND_i386_efi_TRUE@nodist_mmap_module_SOURCES = ## platform nodist sources -@COND_i386_ieee1275_TRUE@nodist_mmap_module_SOURCES = ## platform nodist sources -@COND_i386_multiboot_TRUE@nodist_mmap_module_SOURCES = ## platform nodist sources -@COND_i386_pc_TRUE@nodist_mmap_module_SOURCES = ## platform nodist sources -@COND_i386_qemu_TRUE@nodist_mmap_module_SOURCES = ## platform nodist sources -@COND_i386_xen_pvh_TRUE@nodist_mmap_module_SOURCES = ## platform nodist sources -@COND_ia64_efi_TRUE@nodist_mmap_module_SOURCES = ## platform nodist sources -@COND_mips_arc_TRUE@nodist_mmap_module_SOURCES = ## platform nodist sources -@COND_mips_loongson_TRUE@nodist_mmap_module_SOURCES = ## platform nodist sources -@COND_mips_qemu_mips_TRUE@nodist_mmap_module_SOURCES = ## platform nodist sources -@COND_riscv32_efi_TRUE@nodist_mmap_module_SOURCES = ## platform nodist sources -@COND_riscv64_efi_TRUE@nodist_mmap_module_SOURCES = ## platform nodist sources -@COND_x86_64_efi_TRUE@nodist_mmap_module_SOURCES = ## platform nodist sources -@COND_arm64_efi_TRUE@mmap_module_LDADD = -@COND_arm_efi_TRUE@mmap_module_LDADD = -@COND_i386_coreboot_TRUE@mmap_module_LDADD = -@COND_i386_efi_TRUE@mmap_module_LDADD = -@COND_i386_ieee1275_TRUE@mmap_module_LDADD = -@COND_i386_multiboot_TRUE@mmap_module_LDADD = -@COND_i386_pc_TRUE@mmap_module_LDADD = -@COND_i386_qemu_TRUE@mmap_module_LDADD = -@COND_i386_xen_pvh_TRUE@mmap_module_LDADD = -@COND_ia64_efi_TRUE@mmap_module_LDADD = -@COND_mips_arc_TRUE@mmap_module_LDADD = -@COND_mips_loongson_TRUE@mmap_module_LDADD = -@COND_mips_qemu_mips_TRUE@mmap_module_LDADD = -@COND_riscv32_efi_TRUE@mmap_module_LDADD = -@COND_riscv64_efi_TRUE@mmap_module_LDADD = -@COND_x86_64_efi_TRUE@mmap_module_LDADD = -@COND_arm64_efi_TRUE@mmap_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_arm_efi_TRUE@mmap_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_coreboot_TRUE@mmap_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_efi_TRUE@mmap_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@mmap_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_multiboot_TRUE@mmap_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_pc_TRUE@mmap_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_qemu_TRUE@mmap_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_xen_pvh_TRUE@mmap_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_ia64_efi_TRUE@mmap_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_mips_arc_TRUE@mmap_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_mips_loongson_TRUE@mmap_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_mips_qemu_mips_TRUE@mmap_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_riscv32_efi_TRUE@mmap_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_riscv64_efi_TRUE@mmap_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_x86_64_efi_TRUE@mmap_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_arm64_efi_TRUE@mmap_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_arm_efi_TRUE@mmap_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_coreboot_TRUE@mmap_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_efi_TRUE@mmap_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@mmap_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_multiboot_TRUE@mmap_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_pc_TRUE@mmap_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_qemu_TRUE@mmap_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_xen_pvh_TRUE@mmap_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_ia64_efi_TRUE@mmap_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_mips_arc_TRUE@mmap_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_mips_loongson_TRUE@mmap_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_mips_qemu_mips_TRUE@mmap_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_riscv32_efi_TRUE@mmap_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_riscv64_efi_TRUE@mmap_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_x86_64_efi_TRUE@mmap_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_arm64_efi_TRUE@mmap_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_arm_efi_TRUE@mmap_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_coreboot_TRUE@mmap_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_efi_TRUE@mmap_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@mmap_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_multiboot_TRUE@mmap_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_pc_TRUE@mmap_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_qemu_TRUE@mmap_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_xen_pvh_TRUE@mmap_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_ia64_efi_TRUE@mmap_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_mips_arc_TRUE@mmap_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_mips_loongson_TRUE@mmap_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_mips_qemu_mips_TRUE@mmap_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_riscv32_efi_TRUE@mmap_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_riscv64_efi_TRUE@mmap_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_x86_64_efi_TRUE@mmap_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_arm64_efi_TRUE@mmap_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_arm_efi_TRUE@mmap_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_coreboot_TRUE@mmap_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_efi_TRUE@mmap_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@mmap_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_multiboot_TRUE@mmap_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_pc_TRUE@mmap_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_qemu_TRUE@mmap_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_xen_pvh_TRUE@mmap_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_ia64_efi_TRUE@mmap_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_mips_arc_TRUE@mmap_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_mips_loongson_TRUE@mmap_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_mips_qemu_mips_TRUE@mmap_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_riscv32_efi_TRUE@mmap_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_riscv64_efi_TRUE@mmap_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_x86_64_efi_TRUE@mmap_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_arm64_efi_TRUE@mmap_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_arm_efi_TRUE@mmap_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_coreboot_TRUE@mmap_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_efi_TRUE@mmap_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_ieee1275_TRUE@mmap_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_multiboot_TRUE@mmap_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_pc_TRUE@mmap_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_qemu_TRUE@mmap_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_xen_pvh_TRUE@mmap_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_ia64_efi_TRUE@mmap_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_mips_arc_TRUE@mmap_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_mips_loongson_TRUE@mmap_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_mips_qemu_mips_TRUE@mmap_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_riscv32_efi_TRUE@mmap_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_riscv64_efi_TRUE@mmap_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_x86_64_efi_TRUE@mmap_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -normal_module_SOURCES = normal/main.c normal/cmdline.c normal/dyncmd.c normal/auth.c normal/autofs.c normal/color.c normal/completion.c normal/datetime.c normal/menu.c normal/menu_entry.c normal/menu_text.c normal/misc.c normal/crypto.c normal/term.c normal/context.c normal/charset.c lib/getline.c script/main.c script/script.c script/execute.c script/function.c script/lexer.c script/argv.c commands/menuentry.c unidata.c ## platform sources -nodist_normal_module_SOURCES = grub_script.tab.c grub_script.yy.c grub_script.tab.h grub_script.yy.h ## platform nodist sources -normal_module_LDADD = -normal_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) $(CFLAGS_POSIX) -Wno-redundant-decls -normal_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -normal_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) $(CPPFLAGS_POSIX) -normal_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -normal_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -part_acorn_module_SOURCES = partmap/acorn.c ## platform sources -nodist_part_acorn_module_SOURCES = ## platform nodist sources -part_acorn_module_LDADD = -part_acorn_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -part_acorn_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -part_acorn_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -part_acorn_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -part_acorn_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -part_amiga_module_SOURCES = partmap/amiga.c ## platform sources -nodist_part_amiga_module_SOURCES = ## platform nodist sources -part_amiga_module_LDADD = -part_amiga_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -part_amiga_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -part_amiga_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -part_amiga_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -part_amiga_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -part_apple_module_SOURCES = partmap/apple.c ## platform sources -nodist_part_apple_module_SOURCES = ## platform nodist sources -part_apple_module_LDADD = -part_apple_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -part_apple_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -part_apple_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -part_apple_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -part_apple_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -part_gpt_module_SOURCES = partmap/gpt.c ## platform sources -nodist_part_gpt_module_SOURCES = ## platform nodist sources -part_gpt_module_LDADD = -part_gpt_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -part_gpt_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -part_gpt_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -part_gpt_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -part_gpt_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -part_msdos_module_SOURCES = partmap/msdos.c ## platform sources -nodist_part_msdos_module_SOURCES = ## platform nodist sources -part_msdos_module_LDADD = -part_msdos_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -part_msdos_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -part_msdos_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -part_msdos_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -part_msdos_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -part_sun_module_SOURCES = partmap/sun.c ## platform sources -nodist_part_sun_module_SOURCES = ## platform nodist sources -part_sun_module_LDADD = -part_sun_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -part_sun_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -part_sun_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -part_sun_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -part_sun_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -part_plan_module_SOURCES = partmap/plan.c ## platform sources -nodist_part_plan_module_SOURCES = ## platform nodist sources -part_plan_module_LDADD = -part_plan_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -part_plan_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -part_plan_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -part_plan_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -part_plan_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -part_dvh_module_SOURCES = partmap/dvh.c ## platform sources -nodist_part_dvh_module_SOURCES = ## platform nodist sources -part_dvh_module_LDADD = -part_dvh_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -part_dvh_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -part_dvh_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -part_dvh_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -part_dvh_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -part_bsd_module_SOURCES = partmap/bsdlabel.c ## platform sources -nodist_part_bsd_module_SOURCES = ## platform nodist sources -part_bsd_module_LDADD = -part_bsd_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -part_bsd_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -part_bsd_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -part_bsd_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -part_bsd_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -part_sunpc_module_SOURCES = partmap/sunpc.c ## platform sources -nodist_part_sunpc_module_SOURCES = ## platform nodist sources -part_sunpc_module_LDADD = -part_sunpc_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -part_sunpc_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -part_sunpc_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -part_sunpc_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -part_sunpc_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -part_dfly_module_SOURCES = partmap/dfly.c ## platform sources -nodist_part_dfly_module_SOURCES = ## platform nodist sources -part_dfly_module_LDADD = -part_dfly_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -part_dfly_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -part_dfly_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -part_dfly_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -part_dfly_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -msdospart_module_SOURCES = parttool/msdospart.c ## platform sources -nodist_msdospart_module_SOURCES = ## platform nodist sources -msdospart_module_LDADD = -msdospart_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -msdospart_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -msdospart_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -msdospart_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -msdospart_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_coreboot_TRUE@at_keyboard_module_SOURCES = term/at_keyboard.c term/ps2.c ## platform sources -@COND_i386_efi_TRUE@at_keyboard_module_SOURCES = term/at_keyboard.c term/ps2.c ## platform sources -@COND_i386_ieee1275_TRUE@at_keyboard_module_SOURCES = term/at_keyboard.c term/ps2.c ## platform sources -@COND_i386_multiboot_TRUE@at_keyboard_module_SOURCES = term/at_keyboard.c term/ps2.c ## platform sources -@COND_i386_pc_TRUE@at_keyboard_module_SOURCES = term/at_keyboard.c term/ps2.c ## platform sources -@COND_i386_qemu_TRUE@at_keyboard_module_SOURCES = term/at_keyboard.c term/ps2.c ## platform sources -@COND_x86_64_efi_TRUE@at_keyboard_module_SOURCES = term/at_keyboard.c term/ps2.c ## platform sources -@COND_i386_coreboot_TRUE@nodist_at_keyboard_module_SOURCES = ## platform nodist sources -@COND_i386_efi_TRUE@nodist_at_keyboard_module_SOURCES = ## platform nodist sources -@COND_i386_ieee1275_TRUE@nodist_at_keyboard_module_SOURCES = ## platform nodist sources -@COND_i386_multiboot_TRUE@nodist_at_keyboard_module_SOURCES = ## platform nodist sources -@COND_i386_pc_TRUE@nodist_at_keyboard_module_SOURCES = ## platform nodist sources -@COND_i386_qemu_TRUE@nodist_at_keyboard_module_SOURCES = ## platform nodist sources -@COND_x86_64_efi_TRUE@nodist_at_keyboard_module_SOURCES = ## platform nodist sources -@COND_i386_coreboot_TRUE@at_keyboard_module_LDADD = -@COND_i386_efi_TRUE@at_keyboard_module_LDADD = -@COND_i386_ieee1275_TRUE@at_keyboard_module_LDADD = -@COND_i386_multiboot_TRUE@at_keyboard_module_LDADD = -@COND_i386_pc_TRUE@at_keyboard_module_LDADD = -@COND_i386_qemu_TRUE@at_keyboard_module_LDADD = -@COND_x86_64_efi_TRUE@at_keyboard_module_LDADD = -@COND_i386_coreboot_TRUE@at_keyboard_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_efi_TRUE@at_keyboard_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@at_keyboard_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_multiboot_TRUE@at_keyboard_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_pc_TRUE@at_keyboard_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_qemu_TRUE@at_keyboard_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_x86_64_efi_TRUE@at_keyboard_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_coreboot_TRUE@at_keyboard_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_efi_TRUE@at_keyboard_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@at_keyboard_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_multiboot_TRUE@at_keyboard_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_pc_TRUE@at_keyboard_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_qemu_TRUE@at_keyboard_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_x86_64_efi_TRUE@at_keyboard_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_coreboot_TRUE@at_keyboard_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_efi_TRUE@at_keyboard_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@at_keyboard_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_multiboot_TRUE@at_keyboard_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_pc_TRUE@at_keyboard_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_qemu_TRUE@at_keyboard_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_x86_64_efi_TRUE@at_keyboard_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_coreboot_TRUE@at_keyboard_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_efi_TRUE@at_keyboard_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@at_keyboard_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_multiboot_TRUE@at_keyboard_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_pc_TRUE@at_keyboard_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_qemu_TRUE@at_keyboard_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_x86_64_efi_TRUE@at_keyboard_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_coreboot_TRUE@at_keyboard_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_efi_TRUE@at_keyboard_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_ieee1275_TRUE@at_keyboard_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_multiboot_TRUE@at_keyboard_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_pc_TRUE@at_keyboard_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_qemu_TRUE@at_keyboard_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_x86_64_efi_TRUE@at_keyboard_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_arm64_efi_TRUE@gfxterm_module_SOURCES = term/gfxterm.c ## platform sources -@COND_arm_efi_TRUE@gfxterm_module_SOURCES = term/gfxterm.c ## platform sources -@COND_arm_uboot_TRUE@gfxterm_module_SOURCES = term/gfxterm.c ## platform sources -@COND_emu_TRUE@gfxterm_module_SOURCES = term/gfxterm.c ## platform sources -@COND_i386_efi_TRUE@gfxterm_module_SOURCES = term/gfxterm.c ## platform sources -@COND_i386_ieee1275_TRUE@gfxterm_module_SOURCES = term/gfxterm.c ## platform sources -@COND_i386_multiboot_TRUE@gfxterm_module_SOURCES = term/gfxterm.c ## platform sources -@COND_i386_pc_TRUE@gfxterm_module_SOURCES = term/gfxterm.c ## platform sources -@COND_i386_qemu_TRUE@gfxterm_module_SOURCES = term/gfxterm.c ## platform sources -@COND_i386_xen_TRUE@gfxterm_module_SOURCES = term/gfxterm.c ## platform sources -@COND_i386_xen_pvh_TRUE@gfxterm_module_SOURCES = term/gfxterm.c ## platform sources -@COND_ia64_efi_TRUE@gfxterm_module_SOURCES = term/gfxterm.c ## platform sources -@COND_mips_arc_TRUE@gfxterm_module_SOURCES = term/gfxterm.c ## platform sources -@COND_mips_qemu_mips_TRUE@gfxterm_module_SOURCES = term/gfxterm.c ## platform sources -@COND_powerpc_ieee1275_TRUE@gfxterm_module_SOURCES = term/gfxterm.c ## platform sources -@COND_riscv32_efi_TRUE@gfxterm_module_SOURCES = term/gfxterm.c ## platform sources -@COND_riscv64_efi_TRUE@gfxterm_module_SOURCES = term/gfxterm.c ## platform sources -@COND_sparc64_ieee1275_TRUE@gfxterm_module_SOURCES = term/gfxterm.c ## platform sources -@COND_x86_64_efi_TRUE@gfxterm_module_SOURCES = term/gfxterm.c ## platform sources -@COND_x86_64_xen_TRUE@gfxterm_module_SOURCES = term/gfxterm.c ## platform sources -@COND_arm64_efi_TRUE@nodist_gfxterm_module_SOURCES = ## platform nodist sources -@COND_arm_efi_TRUE@nodist_gfxterm_module_SOURCES = ## platform nodist sources -@COND_arm_uboot_TRUE@nodist_gfxterm_module_SOURCES = ## platform nodist sources -@COND_emu_TRUE@nodist_gfxterm_module_SOURCES = ## platform nodist sources -@COND_i386_efi_TRUE@nodist_gfxterm_module_SOURCES = ## platform nodist sources -@COND_i386_ieee1275_TRUE@nodist_gfxterm_module_SOURCES = ## platform nodist sources -@COND_i386_multiboot_TRUE@nodist_gfxterm_module_SOURCES = ## platform nodist sources -@COND_i386_pc_TRUE@nodist_gfxterm_module_SOURCES = ## platform nodist sources -@COND_i386_qemu_TRUE@nodist_gfxterm_module_SOURCES = ## platform nodist sources -@COND_i386_xen_TRUE@nodist_gfxterm_module_SOURCES = ## platform nodist sources -@COND_i386_xen_pvh_TRUE@nodist_gfxterm_module_SOURCES = ## platform nodist sources -@COND_ia64_efi_TRUE@nodist_gfxterm_module_SOURCES = ## platform nodist sources -@COND_mips_arc_TRUE@nodist_gfxterm_module_SOURCES = ## platform nodist sources -@COND_mips_qemu_mips_TRUE@nodist_gfxterm_module_SOURCES = ## platform nodist sources -@COND_powerpc_ieee1275_TRUE@nodist_gfxterm_module_SOURCES = ## platform nodist sources -@COND_riscv32_efi_TRUE@nodist_gfxterm_module_SOURCES = ## platform nodist sources -@COND_riscv64_efi_TRUE@nodist_gfxterm_module_SOURCES = ## platform nodist sources -@COND_sparc64_ieee1275_TRUE@nodist_gfxterm_module_SOURCES = ## platform nodist sources -@COND_x86_64_efi_TRUE@nodist_gfxterm_module_SOURCES = ## platform nodist sources -@COND_x86_64_xen_TRUE@nodist_gfxterm_module_SOURCES = ## platform nodist sources -@COND_arm64_efi_TRUE@gfxterm_module_LDADD = -@COND_arm_efi_TRUE@gfxterm_module_LDADD = -@COND_arm_uboot_TRUE@gfxterm_module_LDADD = -@COND_emu_TRUE@gfxterm_module_LDADD = -@COND_i386_efi_TRUE@gfxterm_module_LDADD = -@COND_i386_ieee1275_TRUE@gfxterm_module_LDADD = -@COND_i386_multiboot_TRUE@gfxterm_module_LDADD = -@COND_i386_pc_TRUE@gfxterm_module_LDADD = -@COND_i386_qemu_TRUE@gfxterm_module_LDADD = -@COND_i386_xen_TRUE@gfxterm_module_LDADD = -@COND_i386_xen_pvh_TRUE@gfxterm_module_LDADD = -@COND_ia64_efi_TRUE@gfxterm_module_LDADD = -@COND_mips_arc_TRUE@gfxterm_module_LDADD = -@COND_mips_qemu_mips_TRUE@gfxterm_module_LDADD = -@COND_powerpc_ieee1275_TRUE@gfxterm_module_LDADD = -@COND_riscv32_efi_TRUE@gfxterm_module_LDADD = -@COND_riscv64_efi_TRUE@gfxterm_module_LDADD = -@COND_sparc64_ieee1275_TRUE@gfxterm_module_LDADD = -@COND_x86_64_efi_TRUE@gfxterm_module_LDADD = -@COND_x86_64_xen_TRUE@gfxterm_module_LDADD = -@COND_arm64_efi_TRUE@gfxterm_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_arm_efi_TRUE@gfxterm_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_arm_uboot_TRUE@gfxterm_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_emu_TRUE@gfxterm_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_efi_TRUE@gfxterm_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@gfxterm_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_multiboot_TRUE@gfxterm_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_pc_TRUE@gfxterm_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_qemu_TRUE@gfxterm_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_xen_TRUE@gfxterm_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_xen_pvh_TRUE@gfxterm_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_ia64_efi_TRUE@gfxterm_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_mips_arc_TRUE@gfxterm_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_mips_qemu_mips_TRUE@gfxterm_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_powerpc_ieee1275_TRUE@gfxterm_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_riscv32_efi_TRUE@gfxterm_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_riscv64_efi_TRUE@gfxterm_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_sparc64_ieee1275_TRUE@gfxterm_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_x86_64_efi_TRUE@gfxterm_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_x86_64_xen_TRUE@gfxterm_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_arm64_efi_TRUE@gfxterm_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_arm_efi_TRUE@gfxterm_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_arm_uboot_TRUE@gfxterm_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_emu_TRUE@gfxterm_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_efi_TRUE@gfxterm_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@gfxterm_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_multiboot_TRUE@gfxterm_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_pc_TRUE@gfxterm_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_qemu_TRUE@gfxterm_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_xen_TRUE@gfxterm_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_xen_pvh_TRUE@gfxterm_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_ia64_efi_TRUE@gfxterm_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_mips_arc_TRUE@gfxterm_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_mips_qemu_mips_TRUE@gfxterm_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_powerpc_ieee1275_TRUE@gfxterm_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_riscv32_efi_TRUE@gfxterm_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_riscv64_efi_TRUE@gfxterm_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_sparc64_ieee1275_TRUE@gfxterm_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_x86_64_efi_TRUE@gfxterm_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_x86_64_xen_TRUE@gfxterm_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_arm64_efi_TRUE@gfxterm_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_arm_efi_TRUE@gfxterm_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_arm_uboot_TRUE@gfxterm_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_emu_TRUE@gfxterm_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_efi_TRUE@gfxterm_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@gfxterm_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_multiboot_TRUE@gfxterm_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_pc_TRUE@gfxterm_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_qemu_TRUE@gfxterm_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_xen_TRUE@gfxterm_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_xen_pvh_TRUE@gfxterm_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_ia64_efi_TRUE@gfxterm_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_mips_arc_TRUE@gfxterm_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_mips_qemu_mips_TRUE@gfxterm_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_powerpc_ieee1275_TRUE@gfxterm_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_riscv32_efi_TRUE@gfxterm_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_riscv64_efi_TRUE@gfxterm_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_sparc64_ieee1275_TRUE@gfxterm_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_x86_64_efi_TRUE@gfxterm_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_x86_64_xen_TRUE@gfxterm_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_arm64_efi_TRUE@gfxterm_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_arm_efi_TRUE@gfxterm_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_arm_uboot_TRUE@gfxterm_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_emu_TRUE@gfxterm_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_efi_TRUE@gfxterm_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@gfxterm_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_multiboot_TRUE@gfxterm_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_pc_TRUE@gfxterm_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_qemu_TRUE@gfxterm_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_xen_TRUE@gfxterm_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_xen_pvh_TRUE@gfxterm_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_ia64_efi_TRUE@gfxterm_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_mips_arc_TRUE@gfxterm_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_mips_qemu_mips_TRUE@gfxterm_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_powerpc_ieee1275_TRUE@gfxterm_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_riscv32_efi_TRUE@gfxterm_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_riscv64_efi_TRUE@gfxterm_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_sparc64_ieee1275_TRUE@gfxterm_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_x86_64_efi_TRUE@gfxterm_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_x86_64_xen_TRUE@gfxterm_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_arm64_efi_TRUE@gfxterm_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_arm_efi_TRUE@gfxterm_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_arm_uboot_TRUE@gfxterm_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_emu_TRUE@gfxterm_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_efi_TRUE@gfxterm_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_ieee1275_TRUE@gfxterm_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_multiboot_TRUE@gfxterm_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_pc_TRUE@gfxterm_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_qemu_TRUE@gfxterm_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_xen_TRUE@gfxterm_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_xen_pvh_TRUE@gfxterm_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_ia64_efi_TRUE@gfxterm_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_mips_arc_TRUE@gfxterm_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_mips_qemu_mips_TRUE@gfxterm_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_powerpc_ieee1275_TRUE@gfxterm_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_riscv32_efi_TRUE@gfxterm_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_riscv64_efi_TRUE@gfxterm_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_sparc64_ieee1275_TRUE@gfxterm_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_x86_64_efi_TRUE@gfxterm_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_x86_64_xen_TRUE@gfxterm_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -gfxterm_background_module_SOURCES = term/gfxterm_background.c ## platform sources -nodist_gfxterm_background_module_SOURCES = ## platform nodist sources -gfxterm_background_module_LDADD = -gfxterm_background_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -gfxterm_background_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -gfxterm_background_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -gfxterm_background_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -gfxterm_background_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_arm64_efi_TRUE@serial_module_SOURCES = term/efi/serial.c term/serial.c ## platform sources -@COND_arm_coreboot_TRUE@serial_module_SOURCES = term/serial.c ## platform sources -@COND_arm_efi_TRUE@serial_module_SOURCES = term/efi/serial.c term/serial.c ## platform sources -@COND_i386_coreboot_TRUE@serial_module_SOURCES = term/ns8250.c term/serial.c ## platform sources -@COND_i386_efi_TRUE@serial_module_SOURCES = term/ns8250.c term/efi/serial.c term/serial.c ## platform sources -@COND_i386_ieee1275_TRUE@serial_module_SOURCES = term/ieee1275/serial.c term/ns8250.c term/serial.c ## platform sources -@COND_i386_multiboot_TRUE@serial_module_SOURCES = term/ns8250.c term/serial.c ## platform sources -@COND_i386_pc_TRUE@serial_module_SOURCES = term/ns8250.c term/serial.c ## platform sources -@COND_i386_qemu_TRUE@serial_module_SOURCES = term/ns8250.c term/serial.c ## platform sources -@COND_ia64_efi_TRUE@serial_module_SOURCES = term/efi/serial.c term/serial.c ## platform sources -@COND_mips_arc_TRUE@serial_module_SOURCES = term/arc/serial.c term/serial.c ## platform sources -@COND_powerpc_ieee1275_TRUE@serial_module_SOURCES = term/ieee1275/serial.c term/serial.c ## platform sources -@COND_riscv32_efi_TRUE@serial_module_SOURCES = term/efi/serial.c term/serial.c ## platform sources -@COND_riscv64_efi_TRUE@serial_module_SOURCES = term/efi/serial.c term/serial.c ## platform sources -@COND_sparc64_ieee1275_TRUE@serial_module_SOURCES = term/ieee1275/serial.c term/serial.c ## platform sources -@COND_x86_64_efi_TRUE@serial_module_SOURCES = term/ns8250.c term/efi/serial.c term/serial.c ## platform sources -@COND_arm64_efi_TRUE@nodist_serial_module_SOURCES = ## platform nodist sources -@COND_arm_coreboot_TRUE@nodist_serial_module_SOURCES = ## platform nodist sources -@COND_arm_efi_TRUE@nodist_serial_module_SOURCES = ## platform nodist sources -@COND_i386_coreboot_TRUE@nodist_serial_module_SOURCES = ## platform nodist sources -@COND_i386_efi_TRUE@nodist_serial_module_SOURCES = ## platform nodist sources -@COND_i386_ieee1275_TRUE@nodist_serial_module_SOURCES = ## platform nodist sources -@COND_i386_multiboot_TRUE@nodist_serial_module_SOURCES = ## platform nodist sources -@COND_i386_pc_TRUE@nodist_serial_module_SOURCES = ## platform nodist sources -@COND_i386_qemu_TRUE@nodist_serial_module_SOURCES = ## platform nodist sources -@COND_ia64_efi_TRUE@nodist_serial_module_SOURCES = ## platform nodist sources -@COND_mips_arc_TRUE@nodist_serial_module_SOURCES = ## platform nodist sources -@COND_powerpc_ieee1275_TRUE@nodist_serial_module_SOURCES = ## platform nodist sources -@COND_riscv32_efi_TRUE@nodist_serial_module_SOURCES = ## platform nodist sources -@COND_riscv64_efi_TRUE@nodist_serial_module_SOURCES = ## platform nodist sources -@COND_sparc64_ieee1275_TRUE@nodist_serial_module_SOURCES = ## platform nodist sources -@COND_x86_64_efi_TRUE@nodist_serial_module_SOURCES = ## platform nodist sources -@COND_arm64_efi_TRUE@serial_module_LDADD = -@COND_arm_coreboot_TRUE@serial_module_LDADD = -@COND_arm_efi_TRUE@serial_module_LDADD = -@COND_i386_coreboot_TRUE@serial_module_LDADD = -@COND_i386_efi_TRUE@serial_module_LDADD = -@COND_i386_ieee1275_TRUE@serial_module_LDADD = -@COND_i386_multiboot_TRUE@serial_module_LDADD = -@COND_i386_pc_TRUE@serial_module_LDADD = -@COND_i386_qemu_TRUE@serial_module_LDADD = -@COND_ia64_efi_TRUE@serial_module_LDADD = -@COND_mips_arc_TRUE@serial_module_LDADD = -@COND_powerpc_ieee1275_TRUE@serial_module_LDADD = -@COND_riscv32_efi_TRUE@serial_module_LDADD = -@COND_riscv64_efi_TRUE@serial_module_LDADD = -@COND_sparc64_ieee1275_TRUE@serial_module_LDADD = -@COND_x86_64_efi_TRUE@serial_module_LDADD = -@COND_arm64_efi_TRUE@serial_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_arm_coreboot_TRUE@serial_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_arm_efi_TRUE@serial_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_coreboot_TRUE@serial_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_efi_TRUE@serial_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@serial_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_multiboot_TRUE@serial_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_pc_TRUE@serial_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_qemu_TRUE@serial_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_ia64_efi_TRUE@serial_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_mips_arc_TRUE@serial_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_powerpc_ieee1275_TRUE@serial_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_riscv32_efi_TRUE@serial_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_riscv64_efi_TRUE@serial_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_sparc64_ieee1275_TRUE@serial_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_x86_64_efi_TRUE@serial_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_arm64_efi_TRUE@serial_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_arm_coreboot_TRUE@serial_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_arm_efi_TRUE@serial_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_coreboot_TRUE@serial_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_efi_TRUE@serial_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@serial_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_multiboot_TRUE@serial_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_pc_TRUE@serial_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_qemu_TRUE@serial_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_ia64_efi_TRUE@serial_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_mips_arc_TRUE@serial_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_powerpc_ieee1275_TRUE@serial_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_riscv32_efi_TRUE@serial_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_riscv64_efi_TRUE@serial_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_sparc64_ieee1275_TRUE@serial_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_x86_64_efi_TRUE@serial_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_arm64_efi_TRUE@serial_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_arm_coreboot_TRUE@serial_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_arm_efi_TRUE@serial_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_coreboot_TRUE@serial_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_efi_TRUE@serial_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@serial_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_multiboot_TRUE@serial_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_pc_TRUE@serial_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_qemu_TRUE@serial_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_ia64_efi_TRUE@serial_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_mips_arc_TRUE@serial_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_powerpc_ieee1275_TRUE@serial_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_riscv32_efi_TRUE@serial_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_riscv64_efi_TRUE@serial_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_sparc64_ieee1275_TRUE@serial_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_x86_64_efi_TRUE@serial_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_arm64_efi_TRUE@serial_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_arm_coreboot_TRUE@serial_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_arm_efi_TRUE@serial_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_coreboot_TRUE@serial_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_efi_TRUE@serial_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@serial_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_multiboot_TRUE@serial_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_pc_TRUE@serial_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_qemu_TRUE@serial_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_ia64_efi_TRUE@serial_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_mips_arc_TRUE@serial_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_powerpc_ieee1275_TRUE@serial_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_riscv32_efi_TRUE@serial_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_riscv64_efi_TRUE@serial_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_sparc64_ieee1275_TRUE@serial_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_x86_64_efi_TRUE@serial_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_arm64_efi_TRUE@serial_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_arm_coreboot_TRUE@serial_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_arm_efi_TRUE@serial_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_coreboot_TRUE@serial_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_efi_TRUE@serial_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_ieee1275_TRUE@serial_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_multiboot_TRUE@serial_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_pc_TRUE@serial_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_qemu_TRUE@serial_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_ia64_efi_TRUE@serial_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_mips_arc_TRUE@serial_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_powerpc_ieee1275_TRUE@serial_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_riscv32_efi_TRUE@serial_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_riscv64_efi_TRUE@serial_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_sparc64_ieee1275_TRUE@serial_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_x86_64_efi_TRUE@serial_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_pc_TRUE@sendkey_module_SOURCES = commands/i386/pc/sendkey.c ## platform sources -@COND_i386_pc_TRUE@nodist_sendkey_module_SOURCES = ## platform nodist sources -@COND_i386_pc_TRUE@sendkey_module_LDADD = -@COND_i386_pc_TRUE@sendkey_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_pc_TRUE@sendkey_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_pc_TRUE@sendkey_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_pc_TRUE@sendkey_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_pc_TRUE@sendkey_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_arm64_efi_TRUE@terminfo_module_SOURCES = term/terminfo.c term/tparm.c ## platform sources -@COND_arm_coreboot_TRUE@terminfo_module_SOURCES = term/terminfo.c term/tparm.c ## platform sources -@COND_arm_efi_TRUE@terminfo_module_SOURCES = term/terminfo.c term/tparm.c ## platform sources -@COND_i386_coreboot_TRUE@terminfo_module_SOURCES = term/terminfo.c term/tparm.c ## platform sources -@COND_i386_efi_TRUE@terminfo_module_SOURCES = term/terminfo.c term/tparm.c ## platform sources -@COND_i386_multiboot_TRUE@terminfo_module_SOURCES = term/terminfo.c term/tparm.c ## platform sources -@COND_i386_pc_TRUE@terminfo_module_SOURCES = term/terminfo.c term/tparm.c ## platform sources -@COND_i386_qemu_TRUE@terminfo_module_SOURCES = term/terminfo.c term/tparm.c ## platform sources -@COND_ia64_efi_TRUE@terminfo_module_SOURCES = term/terminfo.c term/tparm.c ## platform sources -@COND_riscv32_efi_TRUE@terminfo_module_SOURCES = term/terminfo.c term/tparm.c ## platform sources -@COND_riscv64_efi_TRUE@terminfo_module_SOURCES = term/terminfo.c term/tparm.c ## platform sources -@COND_x86_64_efi_TRUE@terminfo_module_SOURCES = term/terminfo.c term/tparm.c ## platform sources -@COND_arm64_efi_TRUE@nodist_terminfo_module_SOURCES = ## platform nodist sources -@COND_arm_coreboot_TRUE@nodist_terminfo_module_SOURCES = ## platform nodist sources -@COND_arm_efi_TRUE@nodist_terminfo_module_SOURCES = ## platform nodist sources -@COND_i386_coreboot_TRUE@nodist_terminfo_module_SOURCES = ## platform nodist sources -@COND_i386_efi_TRUE@nodist_terminfo_module_SOURCES = ## platform nodist sources -@COND_i386_multiboot_TRUE@nodist_terminfo_module_SOURCES = ## platform nodist sources -@COND_i386_pc_TRUE@nodist_terminfo_module_SOURCES = ## platform nodist sources -@COND_i386_qemu_TRUE@nodist_terminfo_module_SOURCES = ## platform nodist sources -@COND_ia64_efi_TRUE@nodist_terminfo_module_SOURCES = ## platform nodist sources -@COND_riscv32_efi_TRUE@nodist_terminfo_module_SOURCES = ## platform nodist sources -@COND_riscv64_efi_TRUE@nodist_terminfo_module_SOURCES = ## platform nodist sources -@COND_x86_64_efi_TRUE@nodist_terminfo_module_SOURCES = ## platform nodist sources -@COND_arm64_efi_TRUE@terminfo_module_LDADD = -@COND_arm_coreboot_TRUE@terminfo_module_LDADD = -@COND_arm_efi_TRUE@terminfo_module_LDADD = -@COND_i386_coreboot_TRUE@terminfo_module_LDADD = -@COND_i386_efi_TRUE@terminfo_module_LDADD = -@COND_i386_multiboot_TRUE@terminfo_module_LDADD = -@COND_i386_pc_TRUE@terminfo_module_LDADD = -@COND_i386_qemu_TRUE@terminfo_module_LDADD = -@COND_ia64_efi_TRUE@terminfo_module_LDADD = -@COND_riscv32_efi_TRUE@terminfo_module_LDADD = -@COND_riscv64_efi_TRUE@terminfo_module_LDADD = -@COND_x86_64_efi_TRUE@terminfo_module_LDADD = -@COND_arm64_efi_TRUE@terminfo_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_arm_coreboot_TRUE@terminfo_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_arm_efi_TRUE@terminfo_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_coreboot_TRUE@terminfo_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_efi_TRUE@terminfo_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_multiboot_TRUE@terminfo_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_pc_TRUE@terminfo_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_qemu_TRUE@terminfo_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_ia64_efi_TRUE@terminfo_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_riscv32_efi_TRUE@terminfo_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_riscv64_efi_TRUE@terminfo_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_x86_64_efi_TRUE@terminfo_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_arm64_efi_TRUE@terminfo_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_arm_coreboot_TRUE@terminfo_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_arm_efi_TRUE@terminfo_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_coreboot_TRUE@terminfo_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_efi_TRUE@terminfo_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_multiboot_TRUE@terminfo_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_pc_TRUE@terminfo_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_qemu_TRUE@terminfo_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_ia64_efi_TRUE@terminfo_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_riscv32_efi_TRUE@terminfo_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_riscv64_efi_TRUE@terminfo_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_x86_64_efi_TRUE@terminfo_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_arm64_efi_TRUE@terminfo_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_arm_coreboot_TRUE@terminfo_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_arm_efi_TRUE@terminfo_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_coreboot_TRUE@terminfo_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_efi_TRUE@terminfo_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_multiboot_TRUE@terminfo_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_pc_TRUE@terminfo_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_qemu_TRUE@terminfo_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_ia64_efi_TRUE@terminfo_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_riscv32_efi_TRUE@terminfo_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_riscv64_efi_TRUE@terminfo_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_x86_64_efi_TRUE@terminfo_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_arm64_efi_TRUE@terminfo_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_arm_coreboot_TRUE@terminfo_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_arm_efi_TRUE@terminfo_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_coreboot_TRUE@terminfo_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_efi_TRUE@terminfo_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_multiboot_TRUE@terminfo_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_pc_TRUE@terminfo_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_qemu_TRUE@terminfo_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_ia64_efi_TRUE@terminfo_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_riscv32_efi_TRUE@terminfo_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_riscv64_efi_TRUE@terminfo_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_x86_64_efi_TRUE@terminfo_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_arm64_efi_TRUE@terminfo_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_arm_coreboot_TRUE@terminfo_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_arm_efi_TRUE@terminfo_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_coreboot_TRUE@terminfo_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_efi_TRUE@terminfo_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_multiboot_TRUE@terminfo_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_pc_TRUE@terminfo_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_qemu_TRUE@terminfo_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_ia64_efi_TRUE@terminfo_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_riscv32_efi_TRUE@terminfo_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_riscv64_efi_TRUE@terminfo_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_x86_64_efi_TRUE@terminfo_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_arm_coreboot_TRUE@usb_keyboard_module_SOURCES = term/usb_keyboard.c ## platform sources -@COND_i386_coreboot_TRUE@usb_keyboard_module_SOURCES = term/usb_keyboard.c ## platform sources -@COND_i386_efi_TRUE@usb_keyboard_module_SOURCES = term/usb_keyboard.c ## platform sources -@COND_i386_ieee1275_TRUE@usb_keyboard_module_SOURCES = term/usb_keyboard.c ## platform sources -@COND_i386_multiboot_TRUE@usb_keyboard_module_SOURCES = term/usb_keyboard.c ## platform sources -@COND_i386_pc_TRUE@usb_keyboard_module_SOURCES = term/usb_keyboard.c ## platform sources -@COND_i386_qemu_TRUE@usb_keyboard_module_SOURCES = term/usb_keyboard.c ## platform sources -@COND_mips_loongson_TRUE@usb_keyboard_module_SOURCES = term/usb_keyboard.c ## platform sources -@COND_x86_64_efi_TRUE@usb_keyboard_module_SOURCES = term/usb_keyboard.c ## platform sources -@COND_arm_coreboot_TRUE@nodist_usb_keyboard_module_SOURCES = ## platform nodist sources -@COND_i386_coreboot_TRUE@nodist_usb_keyboard_module_SOURCES = ## platform nodist sources -@COND_i386_efi_TRUE@nodist_usb_keyboard_module_SOURCES = ## platform nodist sources -@COND_i386_ieee1275_TRUE@nodist_usb_keyboard_module_SOURCES = ## platform nodist sources -@COND_i386_multiboot_TRUE@nodist_usb_keyboard_module_SOURCES = ## platform nodist sources -@COND_i386_pc_TRUE@nodist_usb_keyboard_module_SOURCES = ## platform nodist sources -@COND_i386_qemu_TRUE@nodist_usb_keyboard_module_SOURCES = ## platform nodist sources -@COND_mips_loongson_TRUE@nodist_usb_keyboard_module_SOURCES = ## platform nodist sources -@COND_x86_64_efi_TRUE@nodist_usb_keyboard_module_SOURCES = ## platform nodist sources -@COND_arm_coreboot_TRUE@usb_keyboard_module_LDADD = -@COND_i386_coreboot_TRUE@usb_keyboard_module_LDADD = -@COND_i386_efi_TRUE@usb_keyboard_module_LDADD = -@COND_i386_ieee1275_TRUE@usb_keyboard_module_LDADD = -@COND_i386_multiboot_TRUE@usb_keyboard_module_LDADD = -@COND_i386_pc_TRUE@usb_keyboard_module_LDADD = -@COND_i386_qemu_TRUE@usb_keyboard_module_LDADD = -@COND_mips_loongson_TRUE@usb_keyboard_module_LDADD = -@COND_x86_64_efi_TRUE@usb_keyboard_module_LDADD = -@COND_arm_coreboot_TRUE@usb_keyboard_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_coreboot_TRUE@usb_keyboard_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_efi_TRUE@usb_keyboard_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@usb_keyboard_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_multiboot_TRUE@usb_keyboard_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_pc_TRUE@usb_keyboard_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_qemu_TRUE@usb_keyboard_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_mips_loongson_TRUE@usb_keyboard_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_x86_64_efi_TRUE@usb_keyboard_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_arm_coreboot_TRUE@usb_keyboard_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_coreboot_TRUE@usb_keyboard_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_efi_TRUE@usb_keyboard_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@usb_keyboard_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_multiboot_TRUE@usb_keyboard_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_pc_TRUE@usb_keyboard_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_qemu_TRUE@usb_keyboard_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_mips_loongson_TRUE@usb_keyboard_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_x86_64_efi_TRUE@usb_keyboard_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_arm_coreboot_TRUE@usb_keyboard_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_coreboot_TRUE@usb_keyboard_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_efi_TRUE@usb_keyboard_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@usb_keyboard_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_multiboot_TRUE@usb_keyboard_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_pc_TRUE@usb_keyboard_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_qemu_TRUE@usb_keyboard_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_mips_loongson_TRUE@usb_keyboard_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_x86_64_efi_TRUE@usb_keyboard_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_arm_coreboot_TRUE@usb_keyboard_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_coreboot_TRUE@usb_keyboard_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_efi_TRUE@usb_keyboard_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@usb_keyboard_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_multiboot_TRUE@usb_keyboard_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_pc_TRUE@usb_keyboard_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_qemu_TRUE@usb_keyboard_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_mips_loongson_TRUE@usb_keyboard_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_x86_64_efi_TRUE@usb_keyboard_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_arm_coreboot_TRUE@usb_keyboard_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_coreboot_TRUE@usb_keyboard_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_efi_TRUE@usb_keyboard_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_ieee1275_TRUE@usb_keyboard_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_multiboot_TRUE@usb_keyboard_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_pc_TRUE@usb_keyboard_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_qemu_TRUE@usb_keyboard_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_mips_loongson_TRUE@usb_keyboard_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_x86_64_efi_TRUE@usb_keyboard_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_pc_TRUE@vga_module_SOURCES = video/i386/pc/vga.c ## platform sources -@COND_i386_pc_TRUE@nodist_vga_module_SOURCES = ## platform nodist sources -@COND_i386_pc_TRUE@vga_module_LDADD = -@COND_i386_pc_TRUE@vga_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_pc_TRUE@vga_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_pc_TRUE@vga_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_pc_TRUE@vga_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_pc_TRUE@vga_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_pc_TRUE@vga_text_module_SOURCES = term/i386/pc/vga_text.c ## platform sources -@COND_i386_pc_TRUE@nodist_vga_text_module_SOURCES = ## platform nodist sources -@COND_i386_pc_TRUE@vga_text_module_LDADD = -@COND_i386_pc_TRUE@vga_text_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_pc_TRUE@vga_text_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_pc_TRUE@vga_text_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_pc_TRUE@vga_text_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_pc_TRUE@vga_text_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_coreboot_TRUE@mda_text_module_SOURCES = term/i386/pc/mda_text.c ## platform sources -@COND_i386_multiboot_TRUE@mda_text_module_SOURCES = term/i386/pc/mda_text.c ## platform sources -@COND_i386_pc_TRUE@mda_text_module_SOURCES = term/i386/pc/mda_text.c ## platform sources -@COND_i386_qemu_TRUE@mda_text_module_SOURCES = term/i386/pc/mda_text.c ## platform sources -@COND_i386_coreboot_TRUE@nodist_mda_text_module_SOURCES = ## platform nodist sources -@COND_i386_multiboot_TRUE@nodist_mda_text_module_SOURCES = ## platform nodist sources -@COND_i386_pc_TRUE@nodist_mda_text_module_SOURCES = ## platform nodist sources -@COND_i386_qemu_TRUE@nodist_mda_text_module_SOURCES = ## platform nodist sources -@COND_i386_coreboot_TRUE@mda_text_module_LDADD = -@COND_i386_multiboot_TRUE@mda_text_module_LDADD = -@COND_i386_pc_TRUE@mda_text_module_LDADD = -@COND_i386_qemu_TRUE@mda_text_module_LDADD = -@COND_i386_coreboot_TRUE@mda_text_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_multiboot_TRUE@mda_text_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_pc_TRUE@mda_text_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_qemu_TRUE@mda_text_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_coreboot_TRUE@mda_text_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_multiboot_TRUE@mda_text_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_pc_TRUE@mda_text_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_qemu_TRUE@mda_text_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_coreboot_TRUE@mda_text_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_multiboot_TRUE@mda_text_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_pc_TRUE@mda_text_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_qemu_TRUE@mda_text_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_coreboot_TRUE@mda_text_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_multiboot_TRUE@mda_text_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_pc_TRUE@mda_text_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_qemu_TRUE@mda_text_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_coreboot_TRUE@mda_text_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_multiboot_TRUE@mda_text_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_pc_TRUE@mda_text_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_qemu_TRUE@mda_text_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_coreboot_TRUE@video_cirrus_module_SOURCES = video/cirrus.c ## platform sources -@COND_i386_efi_TRUE@video_cirrus_module_SOURCES = video/cirrus.c ## platform sources -@COND_i386_ieee1275_TRUE@video_cirrus_module_SOURCES = video/cirrus.c ## platform sources -@COND_i386_multiboot_TRUE@video_cirrus_module_SOURCES = video/cirrus.c ## platform sources -@COND_i386_pc_TRUE@video_cirrus_module_SOURCES = video/cirrus.c ## platform sources -@COND_i386_qemu_TRUE@video_cirrus_module_SOURCES = video/cirrus.c ## platform sources -@COND_x86_64_efi_TRUE@video_cirrus_module_SOURCES = video/cirrus.c ## platform sources -@COND_i386_coreboot_TRUE@nodist_video_cirrus_module_SOURCES = ## platform nodist sources -@COND_i386_efi_TRUE@nodist_video_cirrus_module_SOURCES = ## platform nodist sources -@COND_i386_ieee1275_TRUE@nodist_video_cirrus_module_SOURCES = ## platform nodist sources -@COND_i386_multiboot_TRUE@nodist_video_cirrus_module_SOURCES = ## platform nodist sources -@COND_i386_pc_TRUE@nodist_video_cirrus_module_SOURCES = ## platform nodist sources -@COND_i386_qemu_TRUE@nodist_video_cirrus_module_SOURCES = ## platform nodist sources -@COND_x86_64_efi_TRUE@nodist_video_cirrus_module_SOURCES = ## platform nodist sources -@COND_i386_coreboot_TRUE@video_cirrus_module_LDADD = -@COND_i386_efi_TRUE@video_cirrus_module_LDADD = -@COND_i386_ieee1275_TRUE@video_cirrus_module_LDADD = -@COND_i386_multiboot_TRUE@video_cirrus_module_LDADD = -@COND_i386_pc_TRUE@video_cirrus_module_LDADD = -@COND_i386_qemu_TRUE@video_cirrus_module_LDADD = -@COND_x86_64_efi_TRUE@video_cirrus_module_LDADD = -@COND_i386_coreboot_TRUE@video_cirrus_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_efi_TRUE@video_cirrus_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@video_cirrus_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_multiboot_TRUE@video_cirrus_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_pc_TRUE@video_cirrus_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_qemu_TRUE@video_cirrus_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_x86_64_efi_TRUE@video_cirrus_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_coreboot_TRUE@video_cirrus_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_efi_TRUE@video_cirrus_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@video_cirrus_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_multiboot_TRUE@video_cirrus_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_pc_TRUE@video_cirrus_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_qemu_TRUE@video_cirrus_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_x86_64_efi_TRUE@video_cirrus_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_coreboot_TRUE@video_cirrus_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_efi_TRUE@video_cirrus_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@video_cirrus_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_multiboot_TRUE@video_cirrus_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_pc_TRUE@video_cirrus_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_qemu_TRUE@video_cirrus_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_x86_64_efi_TRUE@video_cirrus_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_coreboot_TRUE@video_cirrus_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_efi_TRUE@video_cirrus_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@video_cirrus_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_multiboot_TRUE@video_cirrus_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_pc_TRUE@video_cirrus_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_qemu_TRUE@video_cirrus_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_x86_64_efi_TRUE@video_cirrus_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_coreboot_TRUE@video_cirrus_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_efi_TRUE@video_cirrus_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_ieee1275_TRUE@video_cirrus_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_multiboot_TRUE@video_cirrus_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_pc_TRUE@video_cirrus_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_qemu_TRUE@video_cirrus_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_x86_64_efi_TRUE@video_cirrus_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_coreboot_TRUE@video_bochs_module_SOURCES = video/bochs.c ## platform sources -@COND_i386_efi_TRUE@video_bochs_module_SOURCES = video/bochs.c ## platform sources -@COND_i386_ieee1275_TRUE@video_bochs_module_SOURCES = video/bochs.c ## platform sources -@COND_i386_multiboot_TRUE@video_bochs_module_SOURCES = video/bochs.c ## platform sources -@COND_i386_pc_TRUE@video_bochs_module_SOURCES = video/bochs.c ## platform sources -@COND_i386_qemu_TRUE@video_bochs_module_SOURCES = video/bochs.c ## platform sources -@COND_x86_64_efi_TRUE@video_bochs_module_SOURCES = video/bochs.c ## platform sources -@COND_i386_coreboot_TRUE@nodist_video_bochs_module_SOURCES = ## platform nodist sources -@COND_i386_efi_TRUE@nodist_video_bochs_module_SOURCES = ## platform nodist sources -@COND_i386_ieee1275_TRUE@nodist_video_bochs_module_SOURCES = ## platform nodist sources -@COND_i386_multiboot_TRUE@nodist_video_bochs_module_SOURCES = ## platform nodist sources -@COND_i386_pc_TRUE@nodist_video_bochs_module_SOURCES = ## platform nodist sources -@COND_i386_qemu_TRUE@nodist_video_bochs_module_SOURCES = ## platform nodist sources -@COND_x86_64_efi_TRUE@nodist_video_bochs_module_SOURCES = ## platform nodist sources -@COND_i386_coreboot_TRUE@video_bochs_module_LDADD = -@COND_i386_efi_TRUE@video_bochs_module_LDADD = -@COND_i386_ieee1275_TRUE@video_bochs_module_LDADD = -@COND_i386_multiboot_TRUE@video_bochs_module_LDADD = -@COND_i386_pc_TRUE@video_bochs_module_LDADD = -@COND_i386_qemu_TRUE@video_bochs_module_LDADD = -@COND_x86_64_efi_TRUE@video_bochs_module_LDADD = -@COND_i386_coreboot_TRUE@video_bochs_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_efi_TRUE@video_bochs_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@video_bochs_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_multiboot_TRUE@video_bochs_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_pc_TRUE@video_bochs_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_qemu_TRUE@video_bochs_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_x86_64_efi_TRUE@video_bochs_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_coreboot_TRUE@video_bochs_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_efi_TRUE@video_bochs_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@video_bochs_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_multiboot_TRUE@video_bochs_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_pc_TRUE@video_bochs_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_qemu_TRUE@video_bochs_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_x86_64_efi_TRUE@video_bochs_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_coreboot_TRUE@video_bochs_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_efi_TRUE@video_bochs_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@video_bochs_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_multiboot_TRUE@video_bochs_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_pc_TRUE@video_bochs_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_qemu_TRUE@video_bochs_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_x86_64_efi_TRUE@video_bochs_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_coreboot_TRUE@video_bochs_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_efi_TRUE@video_bochs_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@video_bochs_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_multiboot_TRUE@video_bochs_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_pc_TRUE@video_bochs_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_qemu_TRUE@video_bochs_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_x86_64_efi_TRUE@video_bochs_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_coreboot_TRUE@video_bochs_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_efi_TRUE@video_bochs_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_ieee1275_TRUE@video_bochs_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_multiboot_TRUE@video_bochs_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_pc_TRUE@video_bochs_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_qemu_TRUE@video_bochs_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_x86_64_efi_TRUE@video_bochs_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -functional_test_module_SOURCES = tests/lib/functional_test.c tests/lib/test.c tests/checksums.h tests/video_checksum.c tests/fake_input.c video/capture.c ## platform sources -nodist_functional_test_module_SOURCES = ## platform nodist sources -functional_test_module_LDADD = -functional_test_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -functional_test_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -functional_test_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -functional_test_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -functional_test_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -exfctest_module_SOURCES = tests/example_functional_test.c ## platform sources -nodist_exfctest_module_SOURCES = ## platform nodist sources -exfctest_module_LDADD = -exfctest_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -exfctest_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -exfctest_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -exfctest_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -exfctest_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -strtoull_test_module_SOURCES = tests/strtoull_test.c ## platform sources -nodist_strtoull_test_module_SOURCES = ## platform nodist sources -strtoull_test_module_LDADD = -strtoull_test_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -strtoull_test_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -strtoull_test_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -strtoull_test_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -strtoull_test_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -setjmp_test_module_SOURCES = tests/setjmp_test.c ## platform sources -nodist_setjmp_test_module_SOURCES = ## platform nodist sources -setjmp_test_module_LDADD = -setjmp_test_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -setjmp_test_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -setjmp_test_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -setjmp_test_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -setjmp_test_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -signature_test_module_SOURCES = tests/signature_test.c tests/signatures.h ## platform sources -nodist_signature_test_module_SOURCES = ## platform nodist sources -signature_test_module_LDADD = -signature_test_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -signature_test_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -signature_test_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -signature_test_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -signature_test_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -sleep_test_module_SOURCES = tests/sleep_test.c ## platform sources -nodist_sleep_test_module_SOURCES = ## platform nodist sources -sleep_test_module_LDADD = -sleep_test_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -sleep_test_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -sleep_test_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -sleep_test_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -sleep_test_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -xnu_uuid_test_module_SOURCES = tests/xnu_uuid_test.c ## platform sources -nodist_xnu_uuid_test_module_SOURCES = ## platform nodist sources -xnu_uuid_test_module_LDADD = -xnu_uuid_test_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -xnu_uuid_test_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -xnu_uuid_test_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -xnu_uuid_test_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -xnu_uuid_test_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -pbkdf2_test_module_SOURCES = tests/pbkdf2_test.c ## platform sources -nodist_pbkdf2_test_module_SOURCES = ## platform nodist sources -pbkdf2_test_module_LDADD = -pbkdf2_test_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -pbkdf2_test_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -pbkdf2_test_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -pbkdf2_test_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -pbkdf2_test_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_emu_TRUE@legacy_password_test_module_SOURCES = tests/legacy_password_test.c ## platform sources -@COND_i386_efi_TRUE@legacy_password_test_module_SOURCES = tests/legacy_password_test.c ## platform sources -@COND_i386_pc_TRUE@legacy_password_test_module_SOURCES = tests/legacy_password_test.c ## platform sources -@COND_i386_xen_TRUE@legacy_password_test_module_SOURCES = tests/legacy_password_test.c ## platform sources -@COND_i386_xen_pvh_TRUE@legacy_password_test_module_SOURCES = tests/legacy_password_test.c ## platform sources -@COND_x86_64_efi_TRUE@legacy_password_test_module_SOURCES = tests/legacy_password_test.c ## platform sources -@COND_x86_64_xen_TRUE@legacy_password_test_module_SOURCES = tests/legacy_password_test.c ## platform sources -@COND_emu_TRUE@nodist_legacy_password_test_module_SOURCES = ## platform nodist sources -@COND_i386_efi_TRUE@nodist_legacy_password_test_module_SOURCES = ## platform nodist sources -@COND_i386_pc_TRUE@nodist_legacy_password_test_module_SOURCES = ## platform nodist sources -@COND_i386_xen_TRUE@nodist_legacy_password_test_module_SOURCES = ## platform nodist sources -@COND_i386_xen_pvh_TRUE@nodist_legacy_password_test_module_SOURCES = ## platform nodist sources -@COND_x86_64_efi_TRUE@nodist_legacy_password_test_module_SOURCES = ## platform nodist sources -@COND_x86_64_xen_TRUE@nodist_legacy_password_test_module_SOURCES = ## platform nodist sources -@COND_emu_TRUE@legacy_password_test_module_LDADD = -@COND_i386_efi_TRUE@legacy_password_test_module_LDADD = -@COND_i386_pc_TRUE@legacy_password_test_module_LDADD = -@COND_i386_xen_TRUE@legacy_password_test_module_LDADD = -@COND_i386_xen_pvh_TRUE@legacy_password_test_module_LDADD = -@COND_x86_64_efi_TRUE@legacy_password_test_module_LDADD = -@COND_x86_64_xen_TRUE@legacy_password_test_module_LDADD = -@COND_emu_TRUE@legacy_password_test_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_efi_TRUE@legacy_password_test_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_pc_TRUE@legacy_password_test_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_xen_TRUE@legacy_password_test_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_xen_pvh_TRUE@legacy_password_test_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_x86_64_efi_TRUE@legacy_password_test_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_x86_64_xen_TRUE@legacy_password_test_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_emu_TRUE@legacy_password_test_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_efi_TRUE@legacy_password_test_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_pc_TRUE@legacy_password_test_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_xen_TRUE@legacy_password_test_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_xen_pvh_TRUE@legacy_password_test_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_x86_64_efi_TRUE@legacy_password_test_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_x86_64_xen_TRUE@legacy_password_test_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_emu_TRUE@legacy_password_test_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_efi_TRUE@legacy_password_test_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_pc_TRUE@legacy_password_test_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_xen_TRUE@legacy_password_test_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_xen_pvh_TRUE@legacy_password_test_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_x86_64_efi_TRUE@legacy_password_test_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_x86_64_xen_TRUE@legacy_password_test_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_emu_TRUE@legacy_password_test_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_efi_TRUE@legacy_password_test_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_pc_TRUE@legacy_password_test_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_xen_TRUE@legacy_password_test_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_xen_pvh_TRUE@legacy_password_test_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_x86_64_efi_TRUE@legacy_password_test_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_x86_64_xen_TRUE@legacy_password_test_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_emu_TRUE@legacy_password_test_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_efi_TRUE@legacy_password_test_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_pc_TRUE@legacy_password_test_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_xen_TRUE@legacy_password_test_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_xen_pvh_TRUE@legacy_password_test_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_x86_64_efi_TRUE@legacy_password_test_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_x86_64_xen_TRUE@legacy_password_test_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_arm64_efi_TRUE@div_module_SOURCES = lib/division.c ## platform sources -@COND_emu_TRUE@div_module_SOURCES = lib/division.c ## platform sources -@COND_i386_coreboot_TRUE@div_module_SOURCES = lib/division.c ## platform sources -@COND_i386_efi_TRUE@div_module_SOURCES = lib/division.c ## platform sources -@COND_i386_ieee1275_TRUE@div_module_SOURCES = lib/division.c ## platform sources -@COND_i386_multiboot_TRUE@div_module_SOURCES = lib/division.c ## platform sources -@COND_i386_pc_TRUE@div_module_SOURCES = lib/division.c ## platform sources -@COND_i386_qemu_TRUE@div_module_SOURCES = lib/division.c ## platform sources -@COND_i386_xen_TRUE@div_module_SOURCES = lib/division.c ## platform sources -@COND_i386_xen_pvh_TRUE@div_module_SOURCES = lib/division.c ## platform sources -@COND_mips_arc_TRUE@div_module_SOURCES = lib/division.c ## platform sources -@COND_mips_loongson_TRUE@div_module_SOURCES = lib/division.c ## platform sources -@COND_mips_qemu_mips_TRUE@div_module_SOURCES = lib/division.c ## platform sources -@COND_powerpc_ieee1275_TRUE@div_module_SOURCES = lib/division.c ## platform sources -@COND_riscv64_efi_TRUE@div_module_SOURCES = lib/division.c ## platform sources -@COND_sparc64_ieee1275_TRUE@div_module_SOURCES = lib/division.c ## platform sources -@COND_x86_64_efi_TRUE@div_module_SOURCES = lib/division.c ## platform sources -@COND_x86_64_xen_TRUE@div_module_SOURCES = lib/division.c ## platform sources -@COND_arm64_efi_TRUE@nodist_div_module_SOURCES = ## platform nodist sources -@COND_emu_TRUE@nodist_div_module_SOURCES = ## platform nodist sources -@COND_i386_coreboot_TRUE@nodist_div_module_SOURCES = ## platform nodist sources -@COND_i386_efi_TRUE@nodist_div_module_SOURCES = ## platform nodist sources -@COND_i386_ieee1275_TRUE@nodist_div_module_SOURCES = ## platform nodist sources -@COND_i386_multiboot_TRUE@nodist_div_module_SOURCES = ## platform nodist sources -@COND_i386_pc_TRUE@nodist_div_module_SOURCES = ## platform nodist sources -@COND_i386_qemu_TRUE@nodist_div_module_SOURCES = ## platform nodist sources -@COND_i386_xen_TRUE@nodist_div_module_SOURCES = ## platform nodist sources -@COND_i386_xen_pvh_TRUE@nodist_div_module_SOURCES = ## platform nodist sources -@COND_mips_arc_TRUE@nodist_div_module_SOURCES = ## platform nodist sources -@COND_mips_loongson_TRUE@nodist_div_module_SOURCES = ## platform nodist sources -@COND_mips_qemu_mips_TRUE@nodist_div_module_SOURCES = ## platform nodist sources -@COND_powerpc_ieee1275_TRUE@nodist_div_module_SOURCES = ## platform nodist sources -@COND_riscv64_efi_TRUE@nodist_div_module_SOURCES = ## platform nodist sources -@COND_sparc64_ieee1275_TRUE@nodist_div_module_SOURCES = ## platform nodist sources -@COND_x86_64_efi_TRUE@nodist_div_module_SOURCES = ## platform nodist sources -@COND_x86_64_xen_TRUE@nodist_div_module_SOURCES = ## platform nodist sources -@COND_arm64_efi_TRUE@div_module_LDADD = -@COND_emu_TRUE@div_module_LDADD = -@COND_i386_coreboot_TRUE@div_module_LDADD = -@COND_i386_efi_TRUE@div_module_LDADD = -@COND_i386_ieee1275_TRUE@div_module_LDADD = -@COND_i386_multiboot_TRUE@div_module_LDADD = -@COND_i386_pc_TRUE@div_module_LDADD = -@COND_i386_qemu_TRUE@div_module_LDADD = -@COND_i386_xen_TRUE@div_module_LDADD = -@COND_i386_xen_pvh_TRUE@div_module_LDADD = -@COND_mips_arc_TRUE@div_module_LDADD = -@COND_mips_loongson_TRUE@div_module_LDADD = -@COND_mips_qemu_mips_TRUE@div_module_LDADD = -@COND_powerpc_ieee1275_TRUE@div_module_LDADD = -@COND_riscv64_efi_TRUE@div_module_LDADD = -@COND_sparc64_ieee1275_TRUE@div_module_LDADD = -@COND_x86_64_efi_TRUE@div_module_LDADD = -@COND_x86_64_xen_TRUE@div_module_LDADD = -@COND_arm64_efi_TRUE@div_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_emu_TRUE@div_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_coreboot_TRUE@div_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_efi_TRUE@div_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@div_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_multiboot_TRUE@div_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_pc_TRUE@div_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_qemu_TRUE@div_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_xen_TRUE@div_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_xen_pvh_TRUE@div_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_mips_arc_TRUE@div_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_mips_loongson_TRUE@div_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_mips_qemu_mips_TRUE@div_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_powerpc_ieee1275_TRUE@div_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_riscv64_efi_TRUE@div_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_sparc64_ieee1275_TRUE@div_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_x86_64_efi_TRUE@div_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_x86_64_xen_TRUE@div_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_arm64_efi_TRUE@div_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_emu_TRUE@div_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_coreboot_TRUE@div_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_efi_TRUE@div_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@div_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_multiboot_TRUE@div_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_pc_TRUE@div_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_qemu_TRUE@div_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_xen_TRUE@div_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_xen_pvh_TRUE@div_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_mips_arc_TRUE@div_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_mips_loongson_TRUE@div_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_mips_qemu_mips_TRUE@div_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_powerpc_ieee1275_TRUE@div_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_riscv64_efi_TRUE@div_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_sparc64_ieee1275_TRUE@div_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_x86_64_efi_TRUE@div_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_x86_64_xen_TRUE@div_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_arm64_efi_TRUE@div_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_emu_TRUE@div_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_coreboot_TRUE@div_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_efi_TRUE@div_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@div_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_multiboot_TRUE@div_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_pc_TRUE@div_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_qemu_TRUE@div_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_xen_TRUE@div_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_xen_pvh_TRUE@div_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_mips_arc_TRUE@div_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_mips_loongson_TRUE@div_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_mips_qemu_mips_TRUE@div_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_powerpc_ieee1275_TRUE@div_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_riscv64_efi_TRUE@div_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_sparc64_ieee1275_TRUE@div_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_x86_64_efi_TRUE@div_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_x86_64_xen_TRUE@div_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_arm64_efi_TRUE@div_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_emu_TRUE@div_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_coreboot_TRUE@div_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_efi_TRUE@div_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@div_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_multiboot_TRUE@div_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_pc_TRUE@div_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_qemu_TRUE@div_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_xen_TRUE@div_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_xen_pvh_TRUE@div_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_mips_arc_TRUE@div_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_mips_loongson_TRUE@div_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_mips_qemu_mips_TRUE@div_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_powerpc_ieee1275_TRUE@div_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_riscv64_efi_TRUE@div_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_sparc64_ieee1275_TRUE@div_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_x86_64_efi_TRUE@div_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_x86_64_xen_TRUE@div_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_arm64_efi_TRUE@div_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_emu_TRUE@div_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_coreboot_TRUE@div_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_efi_TRUE@div_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_ieee1275_TRUE@div_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_multiboot_TRUE@div_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_pc_TRUE@div_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_qemu_TRUE@div_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_xen_TRUE@div_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_xen_pvh_TRUE@div_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_mips_arc_TRUE@div_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_mips_loongson_TRUE@div_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_mips_qemu_mips_TRUE@div_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_powerpc_ieee1275_TRUE@div_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_riscv64_efi_TRUE@div_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_sparc64_ieee1275_TRUE@div_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_x86_64_efi_TRUE@div_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_x86_64_xen_TRUE@div_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -div_test_module_SOURCES = tests/div_test.c ## platform sources -nodist_div_test_module_SOURCES = ## platform nodist sources -div_test_module_LDADD = -div_test_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -div_test_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -div_test_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -div_test_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -div_test_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -mul_test_module_SOURCES = tests/mul_test.c ## platform sources -nodist_mul_test_module_SOURCES = ## platform nodist sources -mul_test_module_LDADD = -mul_test_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -mul_test_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -mul_test_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -mul_test_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -mul_test_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -shift_test_module_SOURCES = tests/shift_test.c ## platform sources -nodist_shift_test_module_SOURCES = ## platform nodist sources -shift_test_module_LDADD = -shift_test_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -shift_test_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -shift_test_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -shift_test_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -shift_test_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -cmp_test_module_SOURCES = tests/cmp_test.c ## platform sources -nodist_cmp_test_module_SOURCES = ## platform nodist sources -cmp_test_module_LDADD = -cmp_test_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -cmp_test_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -cmp_test_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -cmp_test_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -cmp_test_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -ctz_test_module_SOURCES = tests/ctz_test.c ## platform sources -nodist_ctz_test_module_SOURCES = ## platform nodist sources -ctz_test_module_LDADD = -ctz_test_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -ctz_test_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -ctz_test_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -ctz_test_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -ctz_test_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -bswap_test_module_SOURCES = tests/bswap_test.c ## platform sources -nodist_bswap_test_module_SOURCES = ## platform nodist sources -bswap_test_module_LDADD = -bswap_test_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -bswap_test_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -bswap_test_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -bswap_test_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -bswap_test_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -videotest_checksum_module_SOURCES = tests/videotest_checksum.c ## platform sources -nodist_videotest_checksum_module_SOURCES = ## platform nodist sources -videotest_checksum_module_LDADD = -videotest_checksum_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -videotest_checksum_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -videotest_checksum_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -videotest_checksum_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -videotest_checksum_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -gfxterm_menu_module_SOURCES = tests/gfxterm_menu.c ## platform sources -nodist_gfxterm_menu_module_SOURCES = ## platform nodist sources -gfxterm_menu_module_LDADD = -gfxterm_menu_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -gfxterm_menu_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -gfxterm_menu_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -gfxterm_menu_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -gfxterm_menu_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -cmdline_cat_test_module_SOURCES = tests/cmdline_cat_test.c ## platform sources -nodist_cmdline_cat_test_module_SOURCES = ## platform nodist sources -cmdline_cat_test_module_LDADD = -cmdline_cat_test_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -cmdline_cat_test_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -cmdline_cat_test_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -cmdline_cat_test_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -cmdline_cat_test_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -bitmap_module_SOURCES = video/bitmap.c ## platform sources -nodist_bitmap_module_SOURCES = ## platform nodist sources -bitmap_module_LDADD = -bitmap_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -bitmap_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -bitmap_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -bitmap_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -bitmap_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -bitmap_scale_module_SOURCES = video/bitmap_scale.c ## platform sources -nodist_bitmap_scale_module_SOURCES = ## platform nodist sources -bitmap_scale_module_LDADD = -bitmap_scale_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -bitmap_scale_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -bitmap_scale_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -bitmap_scale_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -bitmap_scale_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_arm64_efi_TRUE@efi_gop_module_SOURCES = video/efi_gop.c ## platform sources -@COND_arm_efi_TRUE@efi_gop_module_SOURCES = video/efi_gop.c ## platform sources -@COND_i386_efi_TRUE@efi_gop_module_SOURCES = video/efi_gop.c ## platform sources -@COND_ia64_efi_TRUE@efi_gop_module_SOURCES = video/efi_gop.c ## platform sources -@COND_riscv32_efi_TRUE@efi_gop_module_SOURCES = video/efi_gop.c ## platform sources -@COND_riscv64_efi_TRUE@efi_gop_module_SOURCES = video/efi_gop.c ## platform sources -@COND_x86_64_efi_TRUE@efi_gop_module_SOURCES = video/efi_gop.c ## platform sources -@COND_arm64_efi_TRUE@nodist_efi_gop_module_SOURCES = ## platform nodist sources -@COND_arm_efi_TRUE@nodist_efi_gop_module_SOURCES = ## platform nodist sources -@COND_i386_efi_TRUE@nodist_efi_gop_module_SOURCES = ## platform nodist sources -@COND_ia64_efi_TRUE@nodist_efi_gop_module_SOURCES = ## platform nodist sources -@COND_riscv32_efi_TRUE@nodist_efi_gop_module_SOURCES = ## platform nodist sources -@COND_riscv64_efi_TRUE@nodist_efi_gop_module_SOURCES = ## platform nodist sources -@COND_x86_64_efi_TRUE@nodist_efi_gop_module_SOURCES = ## platform nodist sources -@COND_arm64_efi_TRUE@efi_gop_module_LDADD = -@COND_arm_efi_TRUE@efi_gop_module_LDADD = -@COND_i386_efi_TRUE@efi_gop_module_LDADD = -@COND_ia64_efi_TRUE@efi_gop_module_LDADD = -@COND_riscv32_efi_TRUE@efi_gop_module_LDADD = -@COND_riscv64_efi_TRUE@efi_gop_module_LDADD = -@COND_x86_64_efi_TRUE@efi_gop_module_LDADD = -@COND_arm64_efi_TRUE@efi_gop_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_arm_efi_TRUE@efi_gop_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_efi_TRUE@efi_gop_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_ia64_efi_TRUE@efi_gop_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_riscv32_efi_TRUE@efi_gop_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_riscv64_efi_TRUE@efi_gop_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_x86_64_efi_TRUE@efi_gop_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_arm64_efi_TRUE@efi_gop_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_arm_efi_TRUE@efi_gop_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_efi_TRUE@efi_gop_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_ia64_efi_TRUE@efi_gop_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_riscv32_efi_TRUE@efi_gop_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_riscv64_efi_TRUE@efi_gop_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_x86_64_efi_TRUE@efi_gop_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_arm64_efi_TRUE@efi_gop_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_arm_efi_TRUE@efi_gop_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_efi_TRUE@efi_gop_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_ia64_efi_TRUE@efi_gop_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_riscv32_efi_TRUE@efi_gop_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_riscv64_efi_TRUE@efi_gop_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_x86_64_efi_TRUE@efi_gop_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_arm64_efi_TRUE@efi_gop_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_arm_efi_TRUE@efi_gop_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_efi_TRUE@efi_gop_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_ia64_efi_TRUE@efi_gop_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_riscv32_efi_TRUE@efi_gop_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_riscv64_efi_TRUE@efi_gop_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_x86_64_efi_TRUE@efi_gop_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_arm64_efi_TRUE@efi_gop_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_arm_efi_TRUE@efi_gop_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_efi_TRUE@efi_gop_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_ia64_efi_TRUE@efi_gop_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_riscv32_efi_TRUE@efi_gop_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_riscv64_efi_TRUE@efi_gop_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_x86_64_efi_TRUE@efi_gop_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_efi_TRUE@efi_uga_module_SOURCES = video/efi_uga.c ## platform sources -@COND_x86_64_efi_TRUE@efi_uga_module_SOURCES = video/efi_uga.c ## platform sources -@COND_i386_efi_TRUE@nodist_efi_uga_module_SOURCES = ## platform nodist sources -@COND_x86_64_efi_TRUE@nodist_efi_uga_module_SOURCES = ## platform nodist sources -@COND_i386_efi_TRUE@efi_uga_module_LDADD = -@COND_x86_64_efi_TRUE@efi_uga_module_LDADD = -@COND_i386_efi_TRUE@efi_uga_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_x86_64_efi_TRUE@efi_uga_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_efi_TRUE@efi_uga_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_x86_64_efi_TRUE@efi_uga_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_efi_TRUE@efi_uga_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_x86_64_efi_TRUE@efi_uga_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_efi_TRUE@efi_uga_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_x86_64_efi_TRUE@efi_uga_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_efi_TRUE@efi_uga_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_x86_64_efi_TRUE@efi_uga_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -jpeg_module_SOURCES = video/readers/jpeg.c ## platform sources -nodist_jpeg_module_SOURCES = ## platform nodist sources -jpeg_module_LDADD = -jpeg_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -jpeg_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -jpeg_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -jpeg_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -jpeg_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -png_module_SOURCES = video/readers/png.c ## platform sources -nodist_png_module_SOURCES = ## platform nodist sources -png_module_LDADD = -png_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -png_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -png_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -png_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -png_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -tga_module_SOURCES = video/readers/tga.c ## platform sources -nodist_tga_module_SOURCES = ## platform nodist sources -tga_module_LDADD = -tga_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -tga_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -tga_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -tga_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -tga_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_pc_TRUE@vbe_module_SOURCES = video/i386/pc/vbe.c ## platform sources -@COND_i386_pc_TRUE@nodist_vbe_module_SOURCES = ## platform nodist sources -@COND_i386_pc_TRUE@vbe_module_LDADD = -@COND_i386_pc_TRUE@vbe_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_pc_TRUE@vbe_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_pc_TRUE@vbe_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_pc_TRUE@vbe_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_pc_TRUE@vbe_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_arm64_efi_TRUE@video_fb_module_SOURCES = video/fb/video_fb.c video/fb/fbblit.c video/fb/fbfill.c video/fb/fbutil.c ## platform sources -@COND_arm_efi_TRUE@video_fb_module_SOURCES = video/fb/video_fb.c video/fb/fbblit.c video/fb/fbfill.c video/fb/fbutil.c ## platform sources -@COND_arm_uboot_TRUE@video_fb_module_SOURCES = video/fb/video_fb.c video/fb/fbblit.c video/fb/fbfill.c video/fb/fbutil.c ## platform sources -@COND_emu_TRUE@video_fb_module_SOURCES = video/fb/video_fb.c video/fb/fbblit.c video/fb/fbfill.c video/fb/fbutil.c ## platform sources -@COND_i386_efi_TRUE@video_fb_module_SOURCES = video/fb/video_fb.c video/fb/fbblit.c video/fb/fbfill.c video/fb/fbutil.c ## platform sources -@COND_i386_ieee1275_TRUE@video_fb_module_SOURCES = video/fb/video_fb.c video/fb/fbblit.c video/fb/fbfill.c video/fb/fbutil.c ## platform sources -@COND_i386_multiboot_TRUE@video_fb_module_SOURCES = video/fb/video_fb.c video/fb/fbblit.c video/fb/fbfill.c video/fb/fbutil.c ## platform sources -@COND_i386_pc_TRUE@video_fb_module_SOURCES = video/fb/video_fb.c video/fb/fbblit.c video/fb/fbfill.c video/fb/fbutil.c ## platform sources -@COND_i386_qemu_TRUE@video_fb_module_SOURCES = video/fb/video_fb.c video/fb/fbblit.c video/fb/fbfill.c video/fb/fbutil.c ## platform sources -@COND_i386_xen_TRUE@video_fb_module_SOURCES = video/fb/video_fb.c video/fb/fbblit.c video/fb/fbfill.c video/fb/fbutil.c ## platform sources -@COND_i386_xen_pvh_TRUE@video_fb_module_SOURCES = video/fb/video_fb.c video/fb/fbblit.c video/fb/fbfill.c video/fb/fbutil.c ## platform sources -@COND_ia64_efi_TRUE@video_fb_module_SOURCES = video/fb/video_fb.c video/fb/fbblit.c video/fb/fbfill.c video/fb/fbutil.c ## platform sources -@COND_mips_arc_TRUE@video_fb_module_SOURCES = video/fb/video_fb.c video/fb/fbblit.c video/fb/fbfill.c video/fb/fbutil.c ## platform sources -@COND_mips_qemu_mips_TRUE@video_fb_module_SOURCES = video/fb/video_fb.c video/fb/fbblit.c video/fb/fbfill.c video/fb/fbutil.c ## platform sources -@COND_powerpc_ieee1275_TRUE@video_fb_module_SOURCES = video/fb/video_fb.c video/fb/fbblit.c video/fb/fbfill.c video/fb/fbutil.c ## platform sources -@COND_riscv32_efi_TRUE@video_fb_module_SOURCES = video/fb/video_fb.c video/fb/fbblit.c video/fb/fbfill.c video/fb/fbutil.c ## platform sources -@COND_riscv64_efi_TRUE@video_fb_module_SOURCES = video/fb/video_fb.c video/fb/fbblit.c video/fb/fbfill.c video/fb/fbutil.c ## platform sources -@COND_sparc64_ieee1275_TRUE@video_fb_module_SOURCES = video/fb/video_fb.c video/fb/fbblit.c video/fb/fbfill.c video/fb/fbutil.c ## platform sources -@COND_x86_64_efi_TRUE@video_fb_module_SOURCES = video/fb/video_fb.c video/fb/fbblit.c video/fb/fbfill.c video/fb/fbutil.c ## platform sources -@COND_x86_64_xen_TRUE@video_fb_module_SOURCES = video/fb/video_fb.c video/fb/fbblit.c video/fb/fbfill.c video/fb/fbutil.c ## platform sources -@COND_arm64_efi_TRUE@nodist_video_fb_module_SOURCES = ## platform nodist sources -@COND_arm_efi_TRUE@nodist_video_fb_module_SOURCES = ## platform nodist sources -@COND_arm_uboot_TRUE@nodist_video_fb_module_SOURCES = ## platform nodist sources -@COND_emu_TRUE@nodist_video_fb_module_SOURCES = ## platform nodist sources -@COND_i386_efi_TRUE@nodist_video_fb_module_SOURCES = ## platform nodist sources -@COND_i386_ieee1275_TRUE@nodist_video_fb_module_SOURCES = ## platform nodist sources -@COND_i386_multiboot_TRUE@nodist_video_fb_module_SOURCES = ## platform nodist sources -@COND_i386_pc_TRUE@nodist_video_fb_module_SOURCES = ## platform nodist sources -@COND_i386_qemu_TRUE@nodist_video_fb_module_SOURCES = ## platform nodist sources -@COND_i386_xen_TRUE@nodist_video_fb_module_SOURCES = ## platform nodist sources -@COND_i386_xen_pvh_TRUE@nodist_video_fb_module_SOURCES = ## platform nodist sources -@COND_ia64_efi_TRUE@nodist_video_fb_module_SOURCES = ## platform nodist sources -@COND_mips_arc_TRUE@nodist_video_fb_module_SOURCES = ## platform nodist sources -@COND_mips_qemu_mips_TRUE@nodist_video_fb_module_SOURCES = ## platform nodist sources -@COND_powerpc_ieee1275_TRUE@nodist_video_fb_module_SOURCES = ## platform nodist sources -@COND_riscv32_efi_TRUE@nodist_video_fb_module_SOURCES = ## platform nodist sources -@COND_riscv64_efi_TRUE@nodist_video_fb_module_SOURCES = ## platform nodist sources -@COND_sparc64_ieee1275_TRUE@nodist_video_fb_module_SOURCES = ## platform nodist sources -@COND_x86_64_efi_TRUE@nodist_video_fb_module_SOURCES = ## platform nodist sources -@COND_x86_64_xen_TRUE@nodist_video_fb_module_SOURCES = ## platform nodist sources -@COND_arm64_efi_TRUE@video_fb_module_LDADD = -@COND_arm_efi_TRUE@video_fb_module_LDADD = -@COND_arm_uboot_TRUE@video_fb_module_LDADD = -@COND_emu_TRUE@video_fb_module_LDADD = -@COND_i386_efi_TRUE@video_fb_module_LDADD = -@COND_i386_ieee1275_TRUE@video_fb_module_LDADD = -@COND_i386_multiboot_TRUE@video_fb_module_LDADD = -@COND_i386_pc_TRUE@video_fb_module_LDADD = -@COND_i386_qemu_TRUE@video_fb_module_LDADD = -@COND_i386_xen_TRUE@video_fb_module_LDADD = -@COND_i386_xen_pvh_TRUE@video_fb_module_LDADD = -@COND_ia64_efi_TRUE@video_fb_module_LDADD = -@COND_mips_arc_TRUE@video_fb_module_LDADD = -@COND_mips_qemu_mips_TRUE@video_fb_module_LDADD = -@COND_powerpc_ieee1275_TRUE@video_fb_module_LDADD = -@COND_riscv32_efi_TRUE@video_fb_module_LDADD = -@COND_riscv64_efi_TRUE@video_fb_module_LDADD = -@COND_sparc64_ieee1275_TRUE@video_fb_module_LDADD = -@COND_x86_64_efi_TRUE@video_fb_module_LDADD = -@COND_x86_64_xen_TRUE@video_fb_module_LDADD = -@COND_arm64_efi_TRUE@video_fb_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_arm_efi_TRUE@video_fb_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_arm_uboot_TRUE@video_fb_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_emu_TRUE@video_fb_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_efi_TRUE@video_fb_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@video_fb_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_multiboot_TRUE@video_fb_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_pc_TRUE@video_fb_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_qemu_TRUE@video_fb_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_xen_TRUE@video_fb_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_xen_pvh_TRUE@video_fb_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_ia64_efi_TRUE@video_fb_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_mips_arc_TRUE@video_fb_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_mips_qemu_mips_TRUE@video_fb_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_powerpc_ieee1275_TRUE@video_fb_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_riscv32_efi_TRUE@video_fb_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_riscv64_efi_TRUE@video_fb_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_sparc64_ieee1275_TRUE@video_fb_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_x86_64_efi_TRUE@video_fb_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_x86_64_xen_TRUE@video_fb_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_arm64_efi_TRUE@video_fb_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_arm_efi_TRUE@video_fb_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_arm_uboot_TRUE@video_fb_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_emu_TRUE@video_fb_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_efi_TRUE@video_fb_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@video_fb_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_multiboot_TRUE@video_fb_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_pc_TRUE@video_fb_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_qemu_TRUE@video_fb_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_xen_TRUE@video_fb_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_xen_pvh_TRUE@video_fb_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_ia64_efi_TRUE@video_fb_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_mips_arc_TRUE@video_fb_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_mips_qemu_mips_TRUE@video_fb_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_powerpc_ieee1275_TRUE@video_fb_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_riscv32_efi_TRUE@video_fb_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_riscv64_efi_TRUE@video_fb_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_sparc64_ieee1275_TRUE@video_fb_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_x86_64_efi_TRUE@video_fb_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_x86_64_xen_TRUE@video_fb_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_arm64_efi_TRUE@video_fb_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_arm_efi_TRUE@video_fb_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_arm_uboot_TRUE@video_fb_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_emu_TRUE@video_fb_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_efi_TRUE@video_fb_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@video_fb_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_multiboot_TRUE@video_fb_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_pc_TRUE@video_fb_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_qemu_TRUE@video_fb_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_xen_TRUE@video_fb_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_xen_pvh_TRUE@video_fb_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_ia64_efi_TRUE@video_fb_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_mips_arc_TRUE@video_fb_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_mips_qemu_mips_TRUE@video_fb_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_powerpc_ieee1275_TRUE@video_fb_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_riscv32_efi_TRUE@video_fb_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_riscv64_efi_TRUE@video_fb_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_sparc64_ieee1275_TRUE@video_fb_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_x86_64_efi_TRUE@video_fb_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_x86_64_xen_TRUE@video_fb_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_arm64_efi_TRUE@video_fb_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_arm_efi_TRUE@video_fb_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_arm_uboot_TRUE@video_fb_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_emu_TRUE@video_fb_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_efi_TRUE@video_fb_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@video_fb_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_multiboot_TRUE@video_fb_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_pc_TRUE@video_fb_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_qemu_TRUE@video_fb_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_xen_TRUE@video_fb_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_xen_pvh_TRUE@video_fb_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_ia64_efi_TRUE@video_fb_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_mips_arc_TRUE@video_fb_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_mips_qemu_mips_TRUE@video_fb_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_powerpc_ieee1275_TRUE@video_fb_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_riscv32_efi_TRUE@video_fb_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_riscv64_efi_TRUE@video_fb_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_sparc64_ieee1275_TRUE@video_fb_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_x86_64_efi_TRUE@video_fb_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_x86_64_xen_TRUE@video_fb_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_arm64_efi_TRUE@video_fb_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_arm_efi_TRUE@video_fb_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_arm_uboot_TRUE@video_fb_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_emu_TRUE@video_fb_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_efi_TRUE@video_fb_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_ieee1275_TRUE@video_fb_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_multiboot_TRUE@video_fb_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_pc_TRUE@video_fb_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_qemu_TRUE@video_fb_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_xen_TRUE@video_fb_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_xen_pvh_TRUE@video_fb_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_ia64_efi_TRUE@video_fb_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_mips_arc_TRUE@video_fb_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_mips_qemu_mips_TRUE@video_fb_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_powerpc_ieee1275_TRUE@video_fb_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_riscv32_efi_TRUE@video_fb_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_riscv64_efi_TRUE@video_fb_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_sparc64_ieee1275_TRUE@video_fb_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_x86_64_efi_TRUE@video_fb_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_x86_64_xen_TRUE@video_fb_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_arm64_efi_TRUE@video_module_SOURCES = video/video.c ## platform sources -@COND_arm_efi_TRUE@video_module_SOURCES = video/video.c ## platform sources -@COND_arm_uboot_TRUE@video_module_SOURCES = video/video.c ## platform sources -@COND_emu_TRUE@video_module_SOURCES = video/video.c ## platform sources -@COND_i386_efi_TRUE@video_module_SOURCES = video/video.c ## platform sources -@COND_i386_ieee1275_TRUE@video_module_SOURCES = video/video.c ## platform sources -@COND_i386_multiboot_TRUE@video_module_SOURCES = video/video.c ## platform sources -@COND_i386_pc_TRUE@video_module_SOURCES = video/video.c ## platform sources -@COND_i386_qemu_TRUE@video_module_SOURCES = video/video.c ## platform sources -@COND_i386_xen_TRUE@video_module_SOURCES = video/video.c ## platform sources -@COND_i386_xen_pvh_TRUE@video_module_SOURCES = video/video.c ## platform sources -@COND_ia64_efi_TRUE@video_module_SOURCES = video/video.c ## platform sources -@COND_mips_arc_TRUE@video_module_SOURCES = video/video.c ## platform sources -@COND_mips_qemu_mips_TRUE@video_module_SOURCES = video/video.c ## platform sources -@COND_powerpc_ieee1275_TRUE@video_module_SOURCES = video/video.c ## platform sources -@COND_riscv32_efi_TRUE@video_module_SOURCES = video/video.c ## platform sources -@COND_riscv64_efi_TRUE@video_module_SOURCES = video/video.c ## platform sources -@COND_sparc64_ieee1275_TRUE@video_module_SOURCES = video/video.c ## platform sources -@COND_x86_64_efi_TRUE@video_module_SOURCES = video/video.c ## platform sources -@COND_x86_64_xen_TRUE@video_module_SOURCES = video/video.c ## platform sources -@COND_arm64_efi_TRUE@nodist_video_module_SOURCES = ## platform nodist sources -@COND_arm_efi_TRUE@nodist_video_module_SOURCES = ## platform nodist sources -@COND_arm_uboot_TRUE@nodist_video_module_SOURCES = ## platform nodist sources -@COND_emu_TRUE@nodist_video_module_SOURCES = ## platform nodist sources -@COND_i386_efi_TRUE@nodist_video_module_SOURCES = ## platform nodist sources -@COND_i386_ieee1275_TRUE@nodist_video_module_SOURCES = ## platform nodist sources -@COND_i386_multiboot_TRUE@nodist_video_module_SOURCES = ## platform nodist sources -@COND_i386_pc_TRUE@nodist_video_module_SOURCES = ## platform nodist sources -@COND_i386_qemu_TRUE@nodist_video_module_SOURCES = ## platform nodist sources -@COND_i386_xen_TRUE@nodist_video_module_SOURCES = ## platform nodist sources -@COND_i386_xen_pvh_TRUE@nodist_video_module_SOURCES = ## platform nodist sources -@COND_ia64_efi_TRUE@nodist_video_module_SOURCES = ## platform nodist sources -@COND_mips_arc_TRUE@nodist_video_module_SOURCES = ## platform nodist sources -@COND_mips_qemu_mips_TRUE@nodist_video_module_SOURCES = ## platform nodist sources -@COND_powerpc_ieee1275_TRUE@nodist_video_module_SOURCES = ## platform nodist sources -@COND_riscv32_efi_TRUE@nodist_video_module_SOURCES = ## platform nodist sources -@COND_riscv64_efi_TRUE@nodist_video_module_SOURCES = ## platform nodist sources -@COND_sparc64_ieee1275_TRUE@nodist_video_module_SOURCES = ## platform nodist sources -@COND_x86_64_efi_TRUE@nodist_video_module_SOURCES = ## platform nodist sources -@COND_x86_64_xen_TRUE@nodist_video_module_SOURCES = ## platform nodist sources -@COND_arm64_efi_TRUE@video_module_LDADD = -@COND_arm_efi_TRUE@video_module_LDADD = -@COND_arm_uboot_TRUE@video_module_LDADD = -@COND_emu_TRUE@video_module_LDADD = -@COND_i386_efi_TRUE@video_module_LDADD = -@COND_i386_ieee1275_TRUE@video_module_LDADD = -@COND_i386_multiboot_TRUE@video_module_LDADD = -@COND_i386_pc_TRUE@video_module_LDADD = -@COND_i386_qemu_TRUE@video_module_LDADD = -@COND_i386_xen_TRUE@video_module_LDADD = -@COND_i386_xen_pvh_TRUE@video_module_LDADD = -@COND_ia64_efi_TRUE@video_module_LDADD = -@COND_mips_arc_TRUE@video_module_LDADD = -@COND_mips_qemu_mips_TRUE@video_module_LDADD = -@COND_powerpc_ieee1275_TRUE@video_module_LDADD = -@COND_riscv32_efi_TRUE@video_module_LDADD = -@COND_riscv64_efi_TRUE@video_module_LDADD = -@COND_sparc64_ieee1275_TRUE@video_module_LDADD = -@COND_x86_64_efi_TRUE@video_module_LDADD = -@COND_x86_64_xen_TRUE@video_module_LDADD = -@COND_arm64_efi_TRUE@video_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_arm_efi_TRUE@video_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_arm_uboot_TRUE@video_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_emu_TRUE@video_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_efi_TRUE@video_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@video_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_multiboot_TRUE@video_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_pc_TRUE@video_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_qemu_TRUE@video_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_xen_TRUE@video_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_xen_pvh_TRUE@video_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_ia64_efi_TRUE@video_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_mips_arc_TRUE@video_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_mips_qemu_mips_TRUE@video_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_powerpc_ieee1275_TRUE@video_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_riscv32_efi_TRUE@video_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_riscv64_efi_TRUE@video_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_sparc64_ieee1275_TRUE@video_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_x86_64_efi_TRUE@video_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_x86_64_xen_TRUE@video_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_arm64_efi_TRUE@video_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_arm_efi_TRUE@video_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_arm_uboot_TRUE@video_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_emu_TRUE@video_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_efi_TRUE@video_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@video_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_multiboot_TRUE@video_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_pc_TRUE@video_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_qemu_TRUE@video_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_xen_TRUE@video_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_xen_pvh_TRUE@video_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_ia64_efi_TRUE@video_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_mips_arc_TRUE@video_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_mips_qemu_mips_TRUE@video_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_powerpc_ieee1275_TRUE@video_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_riscv32_efi_TRUE@video_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_riscv64_efi_TRUE@video_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_sparc64_ieee1275_TRUE@video_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_x86_64_efi_TRUE@video_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_x86_64_xen_TRUE@video_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_arm64_efi_TRUE@video_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_arm_efi_TRUE@video_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_arm_uboot_TRUE@video_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_emu_TRUE@video_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_efi_TRUE@video_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@video_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_multiboot_TRUE@video_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_pc_TRUE@video_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_qemu_TRUE@video_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_xen_TRUE@video_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_xen_pvh_TRUE@video_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_ia64_efi_TRUE@video_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_mips_arc_TRUE@video_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_mips_qemu_mips_TRUE@video_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_powerpc_ieee1275_TRUE@video_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_riscv32_efi_TRUE@video_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_riscv64_efi_TRUE@video_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_sparc64_ieee1275_TRUE@video_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_x86_64_efi_TRUE@video_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_x86_64_xen_TRUE@video_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_arm64_efi_TRUE@video_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_arm_efi_TRUE@video_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_arm_uboot_TRUE@video_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_emu_TRUE@video_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_efi_TRUE@video_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@video_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_multiboot_TRUE@video_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_pc_TRUE@video_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_qemu_TRUE@video_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_xen_TRUE@video_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_xen_pvh_TRUE@video_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_ia64_efi_TRUE@video_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_mips_arc_TRUE@video_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_mips_qemu_mips_TRUE@video_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_powerpc_ieee1275_TRUE@video_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_riscv32_efi_TRUE@video_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_riscv64_efi_TRUE@video_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_sparc64_ieee1275_TRUE@video_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_x86_64_efi_TRUE@video_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_x86_64_xen_TRUE@video_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_arm64_efi_TRUE@video_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_arm_efi_TRUE@video_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_arm_uboot_TRUE@video_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_emu_TRUE@video_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_efi_TRUE@video_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_ieee1275_TRUE@video_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_multiboot_TRUE@video_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_pc_TRUE@video_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_qemu_TRUE@video_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_xen_TRUE@video_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_xen_pvh_TRUE@video_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_ia64_efi_TRUE@video_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_mips_arc_TRUE@video_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_mips_qemu_mips_TRUE@video_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_powerpc_ieee1275_TRUE@video_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_riscv32_efi_TRUE@video_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_riscv64_efi_TRUE@video_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_sparc64_ieee1275_TRUE@video_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_x86_64_efi_TRUE@video_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_x86_64_xen_TRUE@video_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -video_colors_module_SOURCES = video/colors.c ## platform sources -nodist_video_colors_module_SOURCES = ## platform nodist sources -video_colors_module_LDADD = -video_colors_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -video_colors_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -video_colors_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -video_colors_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -video_colors_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_powerpc_ieee1275_TRUE@ieee1275_fb_module_SOURCES = video/ieee1275.c ## platform sources -@COND_powerpc_ieee1275_TRUE@nodist_ieee1275_fb_module_SOURCES = ## platform nodist sources -@COND_powerpc_ieee1275_TRUE@ieee1275_fb_module_LDADD = -@COND_powerpc_ieee1275_TRUE@ieee1275_fb_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_powerpc_ieee1275_TRUE@ieee1275_fb_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_powerpc_ieee1275_TRUE@ieee1275_fb_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_powerpc_ieee1275_TRUE@ieee1275_fb_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_powerpc_ieee1275_TRUE@ieee1275_fb_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_GRUB_EMU_SDL_TRUE@@COND_emu_TRUE@sdl_module_SOURCES = video/emu/sdl.c ## platform sources -@COND_GRUB_EMU_SDL_TRUE@@COND_emu_TRUE@nodist_sdl_module_SOURCES = ## platform nodist sources -@COND_GRUB_EMU_SDL_TRUE@@COND_emu_TRUE@sdl_module_LDADD = -@COND_GRUB_EMU_SDL_TRUE@@COND_emu_TRUE@sdl_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_GRUB_EMU_SDL_TRUE@@COND_emu_TRUE@sdl_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_GRUB_EMU_SDL_TRUE@@COND_emu_TRUE@sdl_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_GRUB_EMU_SDL_TRUE@@COND_emu_TRUE@sdl_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_GRUB_EMU_SDL_TRUE@@COND_emu_TRUE@sdl_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -datehook_module_SOURCES = hook/datehook.c ## platform sources -nodist_datehook_module_SOURCES = ## platform nodist sources -datehook_module_LDADD = -datehook_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -datehook_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -datehook_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -datehook_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -datehook_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -net_module_SOURCES = net/net.c net/dns.c net/bootp.c net/ip.c net/udp.c net/tcp.c net/icmp.c net/icmp6.c net/ethernet.c net/arp.c net/netbuff.c ## platform sources -nodist_net_module_SOURCES = ## platform nodist sources -net_module_LDADD = -net_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -net_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -net_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -net_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -net_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -tftp_module_SOURCES = net/tftp.c ## platform sources -nodist_tftp_module_SOURCES = ## platform nodist sources -tftp_module_LDADD = -tftp_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -tftp_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -tftp_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -tftp_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -tftp_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -http_module_SOURCES = net/http.c ## platform sources -nodist_http_module_SOURCES = ## platform nodist sources -http_module_LDADD = -http_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -http_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -http_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -http_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -http_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_ieee1275_TRUE@ofnet_module_SOURCES = net/drivers/ieee1275/ofnet.c ## platform sources -@COND_powerpc_ieee1275_TRUE@ofnet_module_SOURCES = net/drivers/ieee1275/ofnet.c ## platform sources -@COND_sparc64_ieee1275_TRUE@ofnet_module_SOURCES = net/drivers/ieee1275/ofnet.c ## platform sources -@COND_i386_ieee1275_TRUE@nodist_ofnet_module_SOURCES = ## platform nodist sources -@COND_powerpc_ieee1275_TRUE@nodist_ofnet_module_SOURCES = ## platform nodist sources -@COND_sparc64_ieee1275_TRUE@nodist_ofnet_module_SOURCES = ## platform nodist sources -@COND_i386_ieee1275_TRUE@ofnet_module_LDADD = -@COND_powerpc_ieee1275_TRUE@ofnet_module_LDADD = -@COND_sparc64_ieee1275_TRUE@ofnet_module_LDADD = -@COND_i386_ieee1275_TRUE@ofnet_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_powerpc_ieee1275_TRUE@ofnet_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_sparc64_ieee1275_TRUE@ofnet_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@ofnet_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_powerpc_ieee1275_TRUE@ofnet_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_sparc64_ieee1275_TRUE@ofnet_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@ofnet_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_powerpc_ieee1275_TRUE@ofnet_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_sparc64_ieee1275_TRUE@ofnet_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@ofnet_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_powerpc_ieee1275_TRUE@ofnet_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_sparc64_ieee1275_TRUE@ofnet_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@ofnet_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_powerpc_ieee1275_TRUE@ofnet_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_sparc64_ieee1275_TRUE@ofnet_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_arm_uboot_TRUE@ubootnet_module_SOURCES = net/drivers/uboot/ubootnet.c ## platform sources -@COND_arm_uboot_TRUE@nodist_ubootnet_module_SOURCES = ## platform nodist sources -@COND_arm_uboot_TRUE@ubootnet_module_LDADD = -@COND_arm_uboot_TRUE@ubootnet_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_arm_uboot_TRUE@ubootnet_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_arm_uboot_TRUE@ubootnet_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_arm_uboot_TRUE@ubootnet_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_arm_uboot_TRUE@ubootnet_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_arm64_efi_TRUE@efinet_module_SOURCES = net/drivers/efi/efinet.c ## platform sources -@COND_arm_efi_TRUE@efinet_module_SOURCES = net/drivers/efi/efinet.c ## platform sources -@COND_i386_efi_TRUE@efinet_module_SOURCES = net/drivers/efi/efinet.c ## platform sources -@COND_ia64_efi_TRUE@efinet_module_SOURCES = net/drivers/efi/efinet.c ## platform sources -@COND_riscv32_efi_TRUE@efinet_module_SOURCES = net/drivers/efi/efinet.c ## platform sources -@COND_riscv64_efi_TRUE@efinet_module_SOURCES = net/drivers/efi/efinet.c ## platform sources -@COND_x86_64_efi_TRUE@efinet_module_SOURCES = net/drivers/efi/efinet.c ## platform sources -@COND_arm64_efi_TRUE@nodist_efinet_module_SOURCES = ## platform nodist sources -@COND_arm_efi_TRUE@nodist_efinet_module_SOURCES = ## platform nodist sources -@COND_i386_efi_TRUE@nodist_efinet_module_SOURCES = ## platform nodist sources -@COND_ia64_efi_TRUE@nodist_efinet_module_SOURCES = ## platform nodist sources -@COND_riscv32_efi_TRUE@nodist_efinet_module_SOURCES = ## platform nodist sources -@COND_riscv64_efi_TRUE@nodist_efinet_module_SOURCES = ## platform nodist sources -@COND_x86_64_efi_TRUE@nodist_efinet_module_SOURCES = ## platform nodist sources -@COND_arm64_efi_TRUE@efinet_module_LDADD = -@COND_arm_efi_TRUE@efinet_module_LDADD = -@COND_i386_efi_TRUE@efinet_module_LDADD = -@COND_ia64_efi_TRUE@efinet_module_LDADD = -@COND_riscv32_efi_TRUE@efinet_module_LDADD = -@COND_riscv64_efi_TRUE@efinet_module_LDADD = -@COND_x86_64_efi_TRUE@efinet_module_LDADD = -@COND_arm64_efi_TRUE@efinet_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_arm_efi_TRUE@efinet_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_efi_TRUE@efinet_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_ia64_efi_TRUE@efinet_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_riscv32_efi_TRUE@efinet_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_riscv64_efi_TRUE@efinet_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_x86_64_efi_TRUE@efinet_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_arm64_efi_TRUE@efinet_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_arm_efi_TRUE@efinet_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_efi_TRUE@efinet_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_ia64_efi_TRUE@efinet_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_riscv32_efi_TRUE@efinet_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_riscv64_efi_TRUE@efinet_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_x86_64_efi_TRUE@efinet_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_arm64_efi_TRUE@efinet_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_arm_efi_TRUE@efinet_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_efi_TRUE@efinet_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_ia64_efi_TRUE@efinet_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_riscv32_efi_TRUE@efinet_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_riscv64_efi_TRUE@efinet_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_x86_64_efi_TRUE@efinet_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_arm64_efi_TRUE@efinet_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_arm_efi_TRUE@efinet_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_efi_TRUE@efinet_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_ia64_efi_TRUE@efinet_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_riscv32_efi_TRUE@efinet_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_riscv64_efi_TRUE@efinet_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_x86_64_efi_TRUE@efinet_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_arm64_efi_TRUE@efinet_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_arm_efi_TRUE@efinet_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_efi_TRUE@efinet_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_ia64_efi_TRUE@efinet_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_riscv32_efi_TRUE@efinet_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_riscv64_efi_TRUE@efinet_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_x86_64_efi_TRUE@efinet_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_emu_TRUE@emunet_module_SOURCES = net/drivers/emu/emunet.c ## platform sources -@COND_emu_TRUE@nodist_emunet_module_SOURCES = ## platform nodist sources -@COND_emu_TRUE@emunet_module_LDADD = -@COND_emu_TRUE@emunet_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_emu_TRUE@emunet_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_emu_TRUE@emunet_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_emu_TRUE@emunet_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_emu_TRUE@emunet_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_emu_TRUE@legacycfg_module_SOURCES = lib/i386/pc/vesa_modes_table.c commands/legacycfg.c lib/legacy_parse.c ## platform sources -@COND_i386_efi_TRUE@legacycfg_module_SOURCES = lib/i386/pc/vesa_modes_table.c commands/legacycfg.c lib/legacy_parse.c ## platform sources -@COND_i386_pc_TRUE@legacycfg_module_SOURCES = commands/legacycfg.c lib/legacy_parse.c ## platform sources -@COND_i386_xen_TRUE@legacycfg_module_SOURCES = lib/i386/pc/vesa_modes_table.c commands/legacycfg.c lib/legacy_parse.c ## platform sources -@COND_i386_xen_pvh_TRUE@legacycfg_module_SOURCES = commands/legacycfg.c lib/legacy_parse.c ## platform sources -@COND_x86_64_efi_TRUE@legacycfg_module_SOURCES = lib/i386/pc/vesa_modes_table.c commands/legacycfg.c lib/legacy_parse.c ## platform sources -@COND_x86_64_xen_TRUE@legacycfg_module_SOURCES = lib/i386/pc/vesa_modes_table.c commands/legacycfg.c lib/legacy_parse.c ## platform sources -@COND_emu_TRUE@nodist_legacycfg_module_SOURCES = ## platform nodist sources -@COND_i386_efi_TRUE@nodist_legacycfg_module_SOURCES = ## platform nodist sources -@COND_i386_pc_TRUE@nodist_legacycfg_module_SOURCES = ## platform nodist sources -@COND_i386_xen_TRUE@nodist_legacycfg_module_SOURCES = ## platform nodist sources -@COND_i386_xen_pvh_TRUE@nodist_legacycfg_module_SOURCES = ## platform nodist sources -@COND_x86_64_efi_TRUE@nodist_legacycfg_module_SOURCES = ## platform nodist sources -@COND_x86_64_xen_TRUE@nodist_legacycfg_module_SOURCES = ## platform nodist sources -@COND_emu_TRUE@legacycfg_module_LDADD = -@COND_i386_efi_TRUE@legacycfg_module_LDADD = -@COND_i386_pc_TRUE@legacycfg_module_LDADD = -@COND_i386_xen_TRUE@legacycfg_module_LDADD = -@COND_i386_xen_pvh_TRUE@legacycfg_module_LDADD = -@COND_x86_64_efi_TRUE@legacycfg_module_LDADD = -@COND_x86_64_xen_TRUE@legacycfg_module_LDADD = -@COND_emu_TRUE@legacycfg_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_efi_TRUE@legacycfg_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_pc_TRUE@legacycfg_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_xen_TRUE@legacycfg_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_xen_pvh_TRUE@legacycfg_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_x86_64_efi_TRUE@legacycfg_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_x86_64_xen_TRUE@legacycfg_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_emu_TRUE@legacycfg_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_efi_TRUE@legacycfg_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_pc_TRUE@legacycfg_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_xen_TRUE@legacycfg_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_xen_pvh_TRUE@legacycfg_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_x86_64_efi_TRUE@legacycfg_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_x86_64_xen_TRUE@legacycfg_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_emu_TRUE@legacycfg_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_efi_TRUE@legacycfg_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_pc_TRUE@legacycfg_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_xen_TRUE@legacycfg_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_xen_pvh_TRUE@legacycfg_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_x86_64_efi_TRUE@legacycfg_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_x86_64_xen_TRUE@legacycfg_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_emu_TRUE@legacycfg_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_efi_TRUE@legacycfg_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_pc_TRUE@legacycfg_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_xen_TRUE@legacycfg_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_xen_pvh_TRUE@legacycfg_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_x86_64_efi_TRUE@legacycfg_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_x86_64_xen_TRUE@legacycfg_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_emu_TRUE@legacycfg_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_efi_TRUE@legacycfg_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_pc_TRUE@legacycfg_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_xen_TRUE@legacycfg_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_xen_pvh_TRUE@legacycfg_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_x86_64_efi_TRUE@legacycfg_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_x86_64_xen_TRUE@legacycfg_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -syslinuxcfg_module_SOURCES = lib/syslinux_parse.c commands/syslinuxcfg.c ## platform sources -nodist_syslinuxcfg_module_SOURCES = ## platform nodist sources -syslinuxcfg_module_LDADD = -syslinuxcfg_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -syslinuxcfg_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -syslinuxcfg_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -syslinuxcfg_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -syslinuxcfg_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -test_blockarg_module_SOURCES = tests/test_blockarg.c ## platform sources -nodist_test_blockarg_module_SOURCES = ## platform nodist sources -test_blockarg_module_LDADD = -test_blockarg_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -test_blockarg_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -test_blockarg_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -test_blockarg_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -test_blockarg_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -xzio_module_SOURCES = io/xzio.c lib/xzembed/xz_dec_bcj.c lib/xzembed/xz_dec_lzma2.c lib/xzembed/xz_dec_stream.c ## platform sources -nodist_xzio_module_SOURCES = ## platform nodist sources -xzio_module_LDADD = -xzio_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -Wno-unreachable-code -xzio_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -xzio_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -I$(srcdir)/lib/posix_wrap -I$(srcdir)/lib/xzembed -xzio_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -xzio_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -lzopio_module_SOURCES = io/lzopio.c lib/minilzo/minilzo.c ## platform sources -nodist_lzopio_module_SOURCES = ## platform nodist sources -lzopio_module_LDADD = -lzopio_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) $(CFLAGS_POSIX) -Wno-undef -Wno-redundant-decls -Wno-error -lzopio_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -lzopio_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -I$(srcdir)/lib/posix_wrap -I$(srcdir)/lib/minilzo -DMINILZO_HAVE_CONFIG_H -lzopio_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -lzopio_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -testload_module_SOURCES = commands/testload.c ## platform sources -nodist_testload_module_SOURCES = ## platform nodist sources -testload_module_LDADD = -testload_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -testload_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -testload_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -testload_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -testload_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_coreboot_TRUE@backtrace_module_SOURCES = lib/i386/backtrace.c lib/backtrace.c ## platform sources -@COND_i386_efi_TRUE@backtrace_module_SOURCES = lib/i386/backtrace.c lib/backtrace.c ## platform sources -@COND_i386_ieee1275_TRUE@backtrace_module_SOURCES = lib/i386/backtrace.c lib/backtrace.c ## platform sources -@COND_i386_multiboot_TRUE@backtrace_module_SOURCES = lib/i386/backtrace.c lib/backtrace.c ## platform sources -@COND_i386_pc_TRUE@backtrace_module_SOURCES = lib/i386/backtrace.c lib/backtrace.c ## platform sources -@COND_i386_qemu_TRUE@backtrace_module_SOURCES = lib/i386/backtrace.c lib/backtrace.c ## platform sources -@COND_i386_xen_TRUE@backtrace_module_SOURCES = lib/i386/backtrace.c lib/backtrace.c ## platform sources -@COND_i386_xen_pvh_TRUE@backtrace_module_SOURCES = lib/i386/backtrace.c lib/backtrace.c ## platform sources -@COND_x86_64_efi_TRUE@backtrace_module_SOURCES = lib/i386/backtrace.c lib/backtrace.c ## platform sources -@COND_x86_64_xen_TRUE@backtrace_module_SOURCES = lib/i386/backtrace.c lib/backtrace.c ## platform sources -@COND_i386_coreboot_TRUE@nodist_backtrace_module_SOURCES = ## platform nodist sources -@COND_i386_efi_TRUE@nodist_backtrace_module_SOURCES = ## platform nodist sources -@COND_i386_ieee1275_TRUE@nodist_backtrace_module_SOURCES = ## platform nodist sources -@COND_i386_multiboot_TRUE@nodist_backtrace_module_SOURCES = ## platform nodist sources -@COND_i386_pc_TRUE@nodist_backtrace_module_SOURCES = ## platform nodist sources -@COND_i386_qemu_TRUE@nodist_backtrace_module_SOURCES = ## platform nodist sources -@COND_i386_xen_TRUE@nodist_backtrace_module_SOURCES = ## platform nodist sources -@COND_i386_xen_pvh_TRUE@nodist_backtrace_module_SOURCES = ## platform nodist sources -@COND_x86_64_efi_TRUE@nodist_backtrace_module_SOURCES = ## platform nodist sources -@COND_x86_64_xen_TRUE@nodist_backtrace_module_SOURCES = ## platform nodist sources -@COND_i386_coreboot_TRUE@backtrace_module_LDADD = -@COND_i386_efi_TRUE@backtrace_module_LDADD = -@COND_i386_ieee1275_TRUE@backtrace_module_LDADD = -@COND_i386_multiboot_TRUE@backtrace_module_LDADD = -@COND_i386_pc_TRUE@backtrace_module_LDADD = -@COND_i386_qemu_TRUE@backtrace_module_LDADD = -@COND_i386_xen_TRUE@backtrace_module_LDADD = -@COND_i386_xen_pvh_TRUE@backtrace_module_LDADD = -@COND_x86_64_efi_TRUE@backtrace_module_LDADD = -@COND_x86_64_xen_TRUE@backtrace_module_LDADD = -@COND_i386_coreboot_TRUE@backtrace_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_efi_TRUE@backtrace_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@backtrace_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_multiboot_TRUE@backtrace_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_pc_TRUE@backtrace_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_qemu_TRUE@backtrace_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_xen_TRUE@backtrace_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_xen_pvh_TRUE@backtrace_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_x86_64_efi_TRUE@backtrace_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_x86_64_xen_TRUE@backtrace_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_coreboot_TRUE@backtrace_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_efi_TRUE@backtrace_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@backtrace_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_multiboot_TRUE@backtrace_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_pc_TRUE@backtrace_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_qemu_TRUE@backtrace_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_xen_TRUE@backtrace_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_xen_pvh_TRUE@backtrace_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_x86_64_efi_TRUE@backtrace_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_x86_64_xen_TRUE@backtrace_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_coreboot_TRUE@backtrace_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_efi_TRUE@backtrace_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@backtrace_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_multiboot_TRUE@backtrace_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_pc_TRUE@backtrace_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_qemu_TRUE@backtrace_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_xen_TRUE@backtrace_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_xen_pvh_TRUE@backtrace_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_x86_64_efi_TRUE@backtrace_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_x86_64_xen_TRUE@backtrace_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_coreboot_TRUE@backtrace_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_efi_TRUE@backtrace_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@backtrace_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_multiboot_TRUE@backtrace_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_pc_TRUE@backtrace_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_qemu_TRUE@backtrace_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_xen_TRUE@backtrace_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_xen_pvh_TRUE@backtrace_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_x86_64_efi_TRUE@backtrace_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_x86_64_xen_TRUE@backtrace_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_coreboot_TRUE@backtrace_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_efi_TRUE@backtrace_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_ieee1275_TRUE@backtrace_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_multiboot_TRUE@backtrace_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_pc_TRUE@backtrace_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_qemu_TRUE@backtrace_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_xen_TRUE@backtrace_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_xen_pvh_TRUE@backtrace_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_x86_64_efi_TRUE@backtrace_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_x86_64_xen_TRUE@backtrace_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_pc_TRUE@lsapm_module_SOURCES = commands/i386/pc/lsapm.c ## platform sources -@COND_i386_pc_TRUE@nodist_lsapm_module_SOURCES = ## platform nodist sources -@COND_i386_pc_TRUE@lsapm_module_LDADD = -@COND_i386_pc_TRUE@lsapm_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_pc_TRUE@lsapm_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_pc_TRUE@lsapm_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_pc_TRUE@lsapm_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_pc_TRUE@lsapm_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_coreboot_TRUE@keylayouts_module_SOURCES = commands/keylayouts.c ## platform sources -@COND_i386_efi_TRUE@keylayouts_module_SOURCES = commands/keylayouts.c ## platform sources -@COND_i386_ieee1275_TRUE@keylayouts_module_SOURCES = commands/keylayouts.c ## platform sources -@COND_i386_multiboot_TRUE@keylayouts_module_SOURCES = commands/keylayouts.c ## platform sources -@COND_i386_pc_TRUE@keylayouts_module_SOURCES = commands/keylayouts.c ## platform sources -@COND_i386_qemu_TRUE@keylayouts_module_SOURCES = commands/keylayouts.c ## platform sources -@COND_x86_64_efi_TRUE@keylayouts_module_SOURCES = commands/keylayouts.c ## platform sources -@COND_i386_coreboot_TRUE@nodist_keylayouts_module_SOURCES = ## platform nodist sources -@COND_i386_efi_TRUE@nodist_keylayouts_module_SOURCES = ## platform nodist sources -@COND_i386_ieee1275_TRUE@nodist_keylayouts_module_SOURCES = ## platform nodist sources -@COND_i386_multiboot_TRUE@nodist_keylayouts_module_SOURCES = ## platform nodist sources -@COND_i386_pc_TRUE@nodist_keylayouts_module_SOURCES = ## platform nodist sources -@COND_i386_qemu_TRUE@nodist_keylayouts_module_SOURCES = ## platform nodist sources -@COND_x86_64_efi_TRUE@nodist_keylayouts_module_SOURCES = ## platform nodist sources -@COND_i386_coreboot_TRUE@keylayouts_module_LDADD = -@COND_i386_efi_TRUE@keylayouts_module_LDADD = -@COND_i386_ieee1275_TRUE@keylayouts_module_LDADD = -@COND_i386_multiboot_TRUE@keylayouts_module_LDADD = -@COND_i386_pc_TRUE@keylayouts_module_LDADD = -@COND_i386_qemu_TRUE@keylayouts_module_LDADD = -@COND_x86_64_efi_TRUE@keylayouts_module_LDADD = -@COND_i386_coreboot_TRUE@keylayouts_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_efi_TRUE@keylayouts_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@keylayouts_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_multiboot_TRUE@keylayouts_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_pc_TRUE@keylayouts_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_qemu_TRUE@keylayouts_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_x86_64_efi_TRUE@keylayouts_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_coreboot_TRUE@keylayouts_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_efi_TRUE@keylayouts_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@keylayouts_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_multiboot_TRUE@keylayouts_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_pc_TRUE@keylayouts_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_qemu_TRUE@keylayouts_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_x86_64_efi_TRUE@keylayouts_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_coreboot_TRUE@keylayouts_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_efi_TRUE@keylayouts_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@keylayouts_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_multiboot_TRUE@keylayouts_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_pc_TRUE@keylayouts_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_qemu_TRUE@keylayouts_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_x86_64_efi_TRUE@keylayouts_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_coreboot_TRUE@keylayouts_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_efi_TRUE@keylayouts_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@keylayouts_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_multiboot_TRUE@keylayouts_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_pc_TRUE@keylayouts_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_qemu_TRUE@keylayouts_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_x86_64_efi_TRUE@keylayouts_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_coreboot_TRUE@keylayouts_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_efi_TRUE@keylayouts_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_ieee1275_TRUE@keylayouts_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_multiboot_TRUE@keylayouts_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_pc_TRUE@keylayouts_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_qemu_TRUE@keylayouts_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_x86_64_efi_TRUE@keylayouts_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -priority_queue_module_SOURCES = lib/priority_queue.c ## platform sources -nodist_priority_queue_module_SOURCES = ## platform nodist sources -priority_queue_module_LDADD = -priority_queue_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -priority_queue_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -priority_queue_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -priority_queue_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -priority_queue_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -time_module_SOURCES = commands/time.c ## platform sources -nodist_time_module_SOURCES = ## platform nodist sources -time_module_LDADD = -time_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -time_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -time_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -time_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -time_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_ENABLE_CACHE_STATS_TRUE@cacheinfo_module_SOURCES = commands/cacheinfo.c ## platform sources -@COND_ENABLE_CACHE_STATS_TRUE@nodist_cacheinfo_module_SOURCES = ## platform nodist sources -@COND_ENABLE_CACHE_STATS_TRUE@cacheinfo_module_LDADD = -@COND_ENABLE_CACHE_STATS_TRUE@cacheinfo_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_ENABLE_CACHE_STATS_TRUE@cacheinfo_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_ENABLE_CACHE_STATS_TRUE@cacheinfo_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_ENABLE_CACHE_STATS_TRUE@cacheinfo_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_ENABLE_CACHE_STATS_TRUE@cacheinfo_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_ENABLE_BOOT_TIME_STATS_TRUE@boottime_module_SOURCES = commands/boottime.c ## platform sources -@COND_ENABLE_BOOT_TIME_STATS_TRUE@nodist_boottime_module_SOURCES = ## platform nodist sources -@COND_ENABLE_BOOT_TIME_STATS_TRUE@boottime_module_LDADD = -@COND_ENABLE_BOOT_TIME_STATS_TRUE@boottime_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_ENABLE_BOOT_TIME_STATS_TRUE@boottime_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_ENABLE_BOOT_TIME_STATS_TRUE@boottime_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_ENABLE_BOOT_TIME_STATS_TRUE@boottime_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_ENABLE_BOOT_TIME_STATS_TRUE@boottime_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -adler32_module_SOURCES = lib/adler32.c ## platform sources -nodist_adler32_module_SOURCES = ## platform nodist sources -adler32_module_LDADD = -adler32_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -adler32_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -adler32_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -adler32_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -adler32_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -crc64_module_SOURCES = lib/crc64.c ## platform sources -nodist_crc64_module_SOURCES = ## platform nodist sources -crc64_module_LDADD = -crc64_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -crc64_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -crc64_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -crc64_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -crc64_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -mpi_module_SOURCES = lib/libgcrypt-grub/mpi/mpiutil.c lib/libgcrypt-grub/mpi/mpi-bit.c lib/libgcrypt-grub/mpi/mpi-add.c lib/libgcrypt-grub/mpi/mpi-mul.c lib/libgcrypt-grub/mpi/mpi-mod.c lib/libgcrypt-grub/mpi/mpi-gcd.c lib/libgcrypt-grub/mpi/mpi-div.c lib/libgcrypt-grub/mpi/mpi-cmp.c lib/libgcrypt-grub/mpi/mpi-inv.c lib/libgcrypt-grub/mpi/mpi-pow.c lib/libgcrypt-grub/mpi/mpi-mpow.c lib/libgcrypt-grub/mpi/mpih-lshift.c lib/libgcrypt-grub/mpi/mpih-mul.c lib/libgcrypt-grub/mpi/mpih-mul1.c lib/libgcrypt-grub/mpi/mpih-mul2.c lib/libgcrypt-grub/mpi/mpih-mul3.c lib/libgcrypt-grub/mpi/mpih-add1.c lib/libgcrypt-grub/mpi/mpih-sub1.c lib/libgcrypt-grub/mpi/mpih-div.c lib/libgcrypt-grub/mpi/mpicoder.c lib/libgcrypt-grub/mpi/mpih-rshift.c lib/libgcrypt-grub/mpi/mpi-inline.c lib/libgcrypt_wrap/mem.c ## platform sources -nodist_mpi_module_SOURCES = ## platform nodist sources -mpi_module_LDADD = -mpi_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) $(CFLAGS_GCRY) -Wno-redundant-decls -Wno-sign-compare -mpi_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -mpi_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) $(CPPFLAGS_GCRY) -mpi_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -mpi_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -all_video_module_SOURCES = lib/fake_module.c ## platform sources -nodist_all_video_module_SOURCES = ## platform nodist sources -all_video_module_LDADD = -all_video_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -all_video_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -all_video_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -all_video_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -all_video_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_coreboot_TRUE@gdb_module_SOURCES = gdb/i386/idt.c gdb/i386/machdep.S gdb/i386/signal.c gdb/cstub.c gdb/gdb.c ## platform sources -@COND_i386_efi_TRUE@gdb_module_SOURCES = gdb/i386/idt.c gdb/i386/machdep.S gdb/i386/signal.c gdb/cstub.c gdb/gdb.c ## platform sources -@COND_i386_ieee1275_TRUE@gdb_module_SOURCES = gdb/i386/idt.c gdb/i386/machdep.S gdb/i386/signal.c gdb/cstub.c gdb/gdb.c ## platform sources -@COND_i386_multiboot_TRUE@gdb_module_SOURCES = gdb/i386/idt.c gdb/i386/machdep.S gdb/i386/signal.c gdb/cstub.c gdb/gdb.c ## platform sources -@COND_i386_pc_TRUE@gdb_module_SOURCES = gdb/i386/idt.c gdb/i386/machdep.S gdb/i386/signal.c gdb/cstub.c gdb/gdb.c ## platform sources -@COND_i386_qemu_TRUE@gdb_module_SOURCES = gdb/i386/idt.c gdb/i386/machdep.S gdb/i386/signal.c gdb/cstub.c gdb/gdb.c ## platform sources -@COND_i386_coreboot_TRUE@nodist_gdb_module_SOURCES = ## platform nodist sources -@COND_i386_efi_TRUE@nodist_gdb_module_SOURCES = ## platform nodist sources -@COND_i386_ieee1275_TRUE@nodist_gdb_module_SOURCES = ## platform nodist sources -@COND_i386_multiboot_TRUE@nodist_gdb_module_SOURCES = ## platform nodist sources -@COND_i386_pc_TRUE@nodist_gdb_module_SOURCES = ## platform nodist sources -@COND_i386_qemu_TRUE@nodist_gdb_module_SOURCES = ## platform nodist sources -@COND_i386_coreboot_TRUE@gdb_module_LDADD = -@COND_i386_efi_TRUE@gdb_module_LDADD = -@COND_i386_ieee1275_TRUE@gdb_module_LDADD = -@COND_i386_multiboot_TRUE@gdb_module_LDADD = -@COND_i386_pc_TRUE@gdb_module_LDADD = -@COND_i386_qemu_TRUE@gdb_module_LDADD = -@COND_i386_coreboot_TRUE@gdb_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_efi_TRUE@gdb_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@gdb_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_multiboot_TRUE@gdb_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_pc_TRUE@gdb_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_qemu_TRUE@gdb_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_coreboot_TRUE@gdb_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_efi_TRUE@gdb_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@gdb_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_multiboot_TRUE@gdb_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_pc_TRUE@gdb_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_qemu_TRUE@gdb_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_coreboot_TRUE@gdb_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_efi_TRUE@gdb_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@gdb_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_multiboot_TRUE@gdb_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_pc_TRUE@gdb_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_qemu_TRUE@gdb_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_coreboot_TRUE@gdb_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_efi_TRUE@gdb_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@gdb_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_multiboot_TRUE@gdb_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_pc_TRUE@gdb_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_qemu_TRUE@gdb_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_coreboot_TRUE@gdb_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_efi_TRUE@gdb_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_ieee1275_TRUE@gdb_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_multiboot_TRUE@gdb_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_pc_TRUE@gdb_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_qemu_TRUE@gdb_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -testspeed_module_SOURCES = commands/testspeed.c ## platform sources -nodist_testspeed_module_SOURCES = ## platform nodist sources -testspeed_module_LDADD = -testspeed_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -testspeed_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -testspeed_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -testspeed_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -testspeed_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_x86_64_efi_TRUE@tpm_module_SOURCES = commands/efi/tpm.c commands/tpm.c ## platform sources -@COND_x86_64_efi_TRUE@nodist_tpm_module_SOURCES = ## platform nodist sources -@COND_x86_64_efi_TRUE@tpm_module_LDADD = -@COND_x86_64_efi_TRUE@tpm_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_x86_64_efi_TRUE@tpm_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_x86_64_efi_TRUE@tpm_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_x86_64_efi_TRUE@tpm_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_x86_64_efi_TRUE@tpm_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -tr_module_SOURCES = commands/tr.c ## platform sources -nodist_tr_module_SOURCES = ## platform nodist sources -tr_module_LDADD = -tr_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -tr_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -tr_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -tr_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -tr_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -progress_module_SOURCES = lib/progress.c ## platform sources -nodist_progress_module_SOURCES = ## platform nodist sources -progress_module_LDADD = -progress_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -progress_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -progress_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -progress_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -progress_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -file_module_SOURCES = commands/file.c commands/file32.c commands/file64.c loader/i386/xen_file.c loader/i386/xen_file32.c loader/i386/xen_file64.c ## platform sources -nodist_file_module_SOURCES = ## platform nodist sources -file_module_LDADD = -file_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -file_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -file_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -file_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -file_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_coreboot_TRUE@rdmsr_module_SOURCES = commands/i386/rdmsr.c ## platform sources -@COND_i386_efi_TRUE@rdmsr_module_SOURCES = commands/i386/rdmsr.c ## platform sources -@COND_i386_ieee1275_TRUE@rdmsr_module_SOURCES = commands/i386/rdmsr.c ## platform sources -@COND_i386_multiboot_TRUE@rdmsr_module_SOURCES = commands/i386/rdmsr.c ## platform sources -@COND_i386_pc_TRUE@rdmsr_module_SOURCES = commands/i386/rdmsr.c ## platform sources -@COND_i386_qemu_TRUE@rdmsr_module_SOURCES = commands/i386/rdmsr.c ## platform sources -@COND_x86_64_efi_TRUE@rdmsr_module_SOURCES = commands/i386/rdmsr.c ## platform sources -@COND_i386_coreboot_TRUE@nodist_rdmsr_module_SOURCES = ## platform nodist sources -@COND_i386_efi_TRUE@nodist_rdmsr_module_SOURCES = ## platform nodist sources -@COND_i386_ieee1275_TRUE@nodist_rdmsr_module_SOURCES = ## platform nodist sources -@COND_i386_multiboot_TRUE@nodist_rdmsr_module_SOURCES = ## platform nodist sources -@COND_i386_pc_TRUE@nodist_rdmsr_module_SOURCES = ## platform nodist sources -@COND_i386_qemu_TRUE@nodist_rdmsr_module_SOURCES = ## platform nodist sources -@COND_x86_64_efi_TRUE@nodist_rdmsr_module_SOURCES = ## platform nodist sources -@COND_i386_coreboot_TRUE@rdmsr_module_LDADD = -@COND_i386_efi_TRUE@rdmsr_module_LDADD = -@COND_i386_ieee1275_TRUE@rdmsr_module_LDADD = -@COND_i386_multiboot_TRUE@rdmsr_module_LDADD = -@COND_i386_pc_TRUE@rdmsr_module_LDADD = -@COND_i386_qemu_TRUE@rdmsr_module_LDADD = -@COND_x86_64_efi_TRUE@rdmsr_module_LDADD = -@COND_i386_coreboot_TRUE@rdmsr_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_efi_TRUE@rdmsr_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@rdmsr_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_multiboot_TRUE@rdmsr_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_pc_TRUE@rdmsr_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_qemu_TRUE@rdmsr_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_x86_64_efi_TRUE@rdmsr_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_coreboot_TRUE@rdmsr_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_efi_TRUE@rdmsr_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@rdmsr_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_multiboot_TRUE@rdmsr_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_pc_TRUE@rdmsr_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_qemu_TRUE@rdmsr_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_x86_64_efi_TRUE@rdmsr_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_coreboot_TRUE@rdmsr_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_efi_TRUE@rdmsr_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@rdmsr_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_multiboot_TRUE@rdmsr_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_pc_TRUE@rdmsr_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_qemu_TRUE@rdmsr_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_x86_64_efi_TRUE@rdmsr_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_coreboot_TRUE@rdmsr_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_efi_TRUE@rdmsr_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@rdmsr_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_multiboot_TRUE@rdmsr_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_pc_TRUE@rdmsr_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_qemu_TRUE@rdmsr_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_x86_64_efi_TRUE@rdmsr_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_coreboot_TRUE@rdmsr_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_efi_TRUE@rdmsr_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_ieee1275_TRUE@rdmsr_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_multiboot_TRUE@rdmsr_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_pc_TRUE@rdmsr_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_qemu_TRUE@rdmsr_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_x86_64_efi_TRUE@rdmsr_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_coreboot_TRUE@wrmsr_module_SOURCES = commands/i386/wrmsr.c ## platform sources -@COND_i386_efi_TRUE@wrmsr_module_SOURCES = commands/i386/wrmsr.c ## platform sources -@COND_i386_ieee1275_TRUE@wrmsr_module_SOURCES = commands/i386/wrmsr.c ## platform sources -@COND_i386_multiboot_TRUE@wrmsr_module_SOURCES = commands/i386/wrmsr.c ## platform sources -@COND_i386_pc_TRUE@wrmsr_module_SOURCES = commands/i386/wrmsr.c ## platform sources -@COND_i386_qemu_TRUE@wrmsr_module_SOURCES = commands/i386/wrmsr.c ## platform sources -@COND_x86_64_efi_TRUE@wrmsr_module_SOURCES = commands/i386/wrmsr.c ## platform sources -@COND_i386_coreboot_TRUE@nodist_wrmsr_module_SOURCES = ## platform nodist sources -@COND_i386_efi_TRUE@nodist_wrmsr_module_SOURCES = ## platform nodist sources -@COND_i386_ieee1275_TRUE@nodist_wrmsr_module_SOURCES = ## platform nodist sources -@COND_i386_multiboot_TRUE@nodist_wrmsr_module_SOURCES = ## platform nodist sources -@COND_i386_pc_TRUE@nodist_wrmsr_module_SOURCES = ## platform nodist sources -@COND_i386_qemu_TRUE@nodist_wrmsr_module_SOURCES = ## platform nodist sources -@COND_x86_64_efi_TRUE@nodist_wrmsr_module_SOURCES = ## platform nodist sources -@COND_i386_coreboot_TRUE@wrmsr_module_LDADD = -@COND_i386_efi_TRUE@wrmsr_module_LDADD = -@COND_i386_ieee1275_TRUE@wrmsr_module_LDADD = -@COND_i386_multiboot_TRUE@wrmsr_module_LDADD = -@COND_i386_pc_TRUE@wrmsr_module_LDADD = -@COND_i386_qemu_TRUE@wrmsr_module_LDADD = -@COND_x86_64_efi_TRUE@wrmsr_module_LDADD = -@COND_i386_coreboot_TRUE@wrmsr_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_efi_TRUE@wrmsr_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@wrmsr_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_multiboot_TRUE@wrmsr_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_pc_TRUE@wrmsr_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_qemu_TRUE@wrmsr_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_x86_64_efi_TRUE@wrmsr_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) -@COND_i386_coreboot_TRUE@wrmsr_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_efi_TRUE@wrmsr_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@wrmsr_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_multiboot_TRUE@wrmsr_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_pc_TRUE@wrmsr_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_qemu_TRUE@wrmsr_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_x86_64_efi_TRUE@wrmsr_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -@COND_i386_coreboot_TRUE@wrmsr_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_efi_TRUE@wrmsr_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@wrmsr_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_multiboot_TRUE@wrmsr_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_pc_TRUE@wrmsr_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_qemu_TRUE@wrmsr_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_x86_64_efi_TRUE@wrmsr_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) -@COND_i386_coreboot_TRUE@wrmsr_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_efi_TRUE@wrmsr_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_ieee1275_TRUE@wrmsr_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_multiboot_TRUE@wrmsr_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_pc_TRUE@wrmsr_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_qemu_TRUE@wrmsr_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_x86_64_efi_TRUE@wrmsr_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -@COND_i386_coreboot_TRUE@wrmsr_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_efi_TRUE@wrmsr_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_ieee1275_TRUE@wrmsr_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_multiboot_TRUE@wrmsr_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_pc_TRUE@wrmsr_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_qemu_TRUE@wrmsr_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_x86_64_efi_TRUE@wrmsr_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -gcry_arcfour_module_SOURCES = lib/libgcrypt-grub/cipher/arcfour.c ## platform sources -nodist_gcry_arcfour_module_SOURCES = ## platform nodist sources -gcry_arcfour_module_LDADD = -gcry_arcfour_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) $(CFLAGS_GCRY) -gcry_arcfour_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -gcry_arcfour_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) $(CPPFLAGS_GCRY) -gcry_arcfour_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -gcry_arcfour_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -gcry_blowfish_module_SOURCES = lib/libgcrypt-grub/cipher/blowfish.c ## platform sources -nodist_gcry_blowfish_module_SOURCES = ## platform nodist sources -gcry_blowfish_module_LDADD = -gcry_blowfish_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) $(CFLAGS_GCRY) -gcry_blowfish_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -gcry_blowfish_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) $(CPPFLAGS_GCRY) -gcry_blowfish_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -gcry_blowfish_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -gcry_camellia_module_SOURCES = lib/libgcrypt-grub/cipher/camellia-glue.c lib/libgcrypt-grub/cipher/camellia.c ## platform sources -nodist_gcry_camellia_module_SOURCES = ## platform nodist sources -gcry_camellia_module_LDADD = -gcry_camellia_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) $(CFLAGS_GCRY) -gcry_camellia_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -gcry_camellia_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) $(CPPFLAGS_GCRY) -gcry_camellia_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -gcry_camellia_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -gcry_cast5_module_SOURCES = lib/libgcrypt-grub/cipher/cast5.c ## platform sources -nodist_gcry_cast5_module_SOURCES = ## platform nodist sources -gcry_cast5_module_LDADD = -gcry_cast5_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) $(CFLAGS_GCRY) -gcry_cast5_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -gcry_cast5_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) $(CPPFLAGS_GCRY) -gcry_cast5_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -gcry_cast5_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -gcry_crc_module_SOURCES = lib/libgcrypt-grub/cipher/crc.c ## platform sources -nodist_gcry_crc_module_SOURCES = ## platform nodist sources -gcry_crc_module_LDADD = -gcry_crc_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) $(CFLAGS_GCRY) -gcry_crc_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -gcry_crc_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) $(CPPFLAGS_GCRY) -gcry_crc_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -gcry_crc_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -gcry_des_module_SOURCES = lib/libgcrypt-grub/cipher/des.c ## platform sources -nodist_gcry_des_module_SOURCES = ## platform nodist sources -gcry_des_module_LDADD = -gcry_des_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) $(CFLAGS_GCRY) -gcry_des_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -gcry_des_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) $(CPPFLAGS_GCRY) -gcry_des_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -gcry_des_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -gcry_dsa_module_SOURCES = lib/libgcrypt-grub/cipher/dsa.c ## platform sources -nodist_gcry_dsa_module_SOURCES = ## platform nodist sources -gcry_dsa_module_LDADD = -gcry_dsa_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) $(CFLAGS_GCRY) -gcry_dsa_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -gcry_dsa_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) $(CPPFLAGS_GCRY) -gcry_dsa_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -gcry_dsa_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -gcry_idea_module_SOURCES = lib/libgcrypt-grub/cipher/idea.c ## platform sources -nodist_gcry_idea_module_SOURCES = ## platform nodist sources -gcry_idea_module_LDADD = -gcry_idea_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) $(CFLAGS_GCRY) -gcry_idea_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -gcry_idea_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) $(CPPFLAGS_GCRY) -gcry_idea_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -gcry_idea_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -gcry_md4_module_SOURCES = lib/libgcrypt-grub/cipher/md4.c ## platform sources -nodist_gcry_md4_module_SOURCES = ## platform nodist sources -gcry_md4_module_LDADD = -gcry_md4_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) $(CFLAGS_GCRY) -Wno-cast-align -gcry_md4_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -gcry_md4_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) $(CPPFLAGS_GCRY) -gcry_md4_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -gcry_md4_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -gcry_md5_module_SOURCES = lib/libgcrypt-grub/cipher/md5.c ## platform sources -nodist_gcry_md5_module_SOURCES = ## platform nodist sources -gcry_md5_module_LDADD = -gcry_md5_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) $(CFLAGS_GCRY) -Wno-cast-align -gcry_md5_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -gcry_md5_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) $(CPPFLAGS_GCRY) -gcry_md5_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -gcry_md5_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -gcry_rfc2268_module_SOURCES = lib/libgcrypt-grub/cipher/rfc2268.c ## platform sources -nodist_gcry_rfc2268_module_SOURCES = ## platform nodist sources -gcry_rfc2268_module_LDADD = -gcry_rfc2268_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) $(CFLAGS_GCRY) -gcry_rfc2268_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -gcry_rfc2268_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) $(CPPFLAGS_GCRY) -gcry_rfc2268_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -gcry_rfc2268_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -gcry_rijndael_module_SOURCES = lib/libgcrypt-grub/cipher/rijndael.c ## platform sources -nodist_gcry_rijndael_module_SOURCES = ## platform nodist sources -gcry_rijndael_module_LDADD = -gcry_rijndael_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) $(CFLAGS_GCRY) -Wno-cast-align -gcry_rijndael_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -gcry_rijndael_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) $(CPPFLAGS_GCRY) -gcry_rijndael_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -gcry_rijndael_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -gcry_rmd160_module_SOURCES = lib/libgcrypt-grub/cipher/rmd160.c ## platform sources -nodist_gcry_rmd160_module_SOURCES = ## platform nodist sources -gcry_rmd160_module_LDADD = -gcry_rmd160_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) $(CFLAGS_GCRY) -Wno-cast-align -gcry_rmd160_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -gcry_rmd160_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) $(CPPFLAGS_GCRY) -gcry_rmd160_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -gcry_rmd160_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -gcry_rsa_module_SOURCES = lib/libgcrypt-grub/cipher/rsa.c ## platform sources -nodist_gcry_rsa_module_SOURCES = ## platform nodist sources -gcry_rsa_module_LDADD = -gcry_rsa_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) $(CFLAGS_GCRY) -gcry_rsa_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -gcry_rsa_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) $(CPPFLAGS_GCRY) -gcry_rsa_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -gcry_rsa_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -gcry_seed_module_SOURCES = lib/libgcrypt-grub/cipher/seed.c ## platform sources -nodist_gcry_seed_module_SOURCES = ## platform nodist sources -gcry_seed_module_LDADD = -gcry_seed_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) $(CFLAGS_GCRY) -gcry_seed_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -gcry_seed_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) $(CPPFLAGS_GCRY) -gcry_seed_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -gcry_seed_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -gcry_serpent_module_SOURCES = lib/libgcrypt-grub/cipher/serpent.c ## platform sources -nodist_gcry_serpent_module_SOURCES = ## platform nodist sources -gcry_serpent_module_LDADD = -gcry_serpent_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) $(CFLAGS_GCRY) -gcry_serpent_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -gcry_serpent_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) $(CPPFLAGS_GCRY) -gcry_serpent_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -gcry_serpent_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -gcry_sha1_module_SOURCES = lib/libgcrypt-grub/cipher/sha1.c ## platform sources -nodist_gcry_sha1_module_SOURCES = ## platform nodist sources -gcry_sha1_module_LDADD = -gcry_sha1_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) $(CFLAGS_GCRY) -Wno-cast-align -gcry_sha1_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -gcry_sha1_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) $(CPPFLAGS_GCRY) -gcry_sha1_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -gcry_sha1_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -gcry_sha256_module_SOURCES = lib/libgcrypt-grub/cipher/sha256.c ## platform sources -nodist_gcry_sha256_module_SOURCES = ## platform nodist sources -gcry_sha256_module_LDADD = -gcry_sha256_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) $(CFLAGS_GCRY) -Wno-cast-align -gcry_sha256_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -gcry_sha256_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) $(CPPFLAGS_GCRY) -gcry_sha256_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -gcry_sha256_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -gcry_sha512_module_SOURCES = lib/libgcrypt-grub/cipher/sha512.c ## platform sources -nodist_gcry_sha512_module_SOURCES = ## platform nodist sources -gcry_sha512_module_LDADD = -gcry_sha512_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) $(CFLAGS_GCRY) -Wno-cast-align -gcry_sha512_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -gcry_sha512_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) $(CPPFLAGS_GCRY) -gcry_sha512_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -gcry_sha512_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -gcry_tiger_module_SOURCES = lib/libgcrypt-grub/cipher/tiger.c ## platform sources -nodist_gcry_tiger_module_SOURCES = ## platform nodist sources -gcry_tiger_module_LDADD = -gcry_tiger_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) $(CFLAGS_GCRY) -Wno-cast-align -gcry_tiger_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -gcry_tiger_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) $(CPPFLAGS_GCRY) -gcry_tiger_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -gcry_tiger_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -gcry_twofish_module_SOURCES = lib/libgcrypt-grub/cipher/twofish.c ## platform sources -nodist_gcry_twofish_module_SOURCES = ## platform nodist sources -gcry_twofish_module_LDADD = -gcry_twofish_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) $(CFLAGS_GCRY) -gcry_twofish_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -gcry_twofish_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) $(CPPFLAGS_GCRY) -gcry_twofish_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -gcry_twofish_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -gcry_whirlpool_module_SOURCES = lib/libgcrypt-grub/cipher/whirlpool.c ## platform sources -nodist_gcry_whirlpool_module_SOURCES = ## platform nodist sources -gcry_whirlpool_module_LDADD = -gcry_whirlpool_module_CFLAGS = $(AM_CFLAGS) $(CFLAGS_MODULE) $(CFLAGS_GCRY) -gcry_whirlpool_module_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MODULE) -gcry_whirlpool_module_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MODULE) $(CPPFLAGS_GCRY) -gcry_whirlpool_module_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_MODULE) -gcry_whirlpool_module_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_arm64_efi_TRUE@kernel_exec_SOURCES = kern/arm64/efi/startup.S \ -@COND_arm64_efi_TRUE@ kern/arm64/efi/init.c kern/efi/fdt.c \ -@COND_arm64_efi_TRUE@ kern/arm64/cache.c \ -@COND_arm64_efi_TRUE@ kern/arm64/cache_flush.S kern/arm64/dl.c \ -@COND_arm64_efi_TRUE@ kern/arm64/dl_helper.c disk/efi/efidisk.c \ -@COND_arm64_efi_TRUE@ kern/efi/efi.c kern/efi/init.c \ -@COND_arm64_efi_TRUE@ kern/efi/mm.c term/efi/console.c \ -@COND_arm64_efi_TRUE@ kern/acpi.c kern/efi/acpi.c \ -@COND_arm64_efi_TRUE@ kern/compiler-rt.c kern/mm.c kern/time.c \ -@COND_arm64_efi_TRUE@ kern/generic/millisleep.c kern/command.c \ -@COND_arm64_efi_TRUE@ kern/corecmd.c kern/device.c kern/disk.c \ -@COND_arm64_efi_TRUE@ kern/dl.c kern/env.c kern/err.c \ -@COND_arm64_efi_TRUE@ kern/file.c kern/fs.c kern/list.c \ -@COND_arm64_efi_TRUE@ kern/main.c kern/misc.c kern/parser.c \ -@COND_arm64_efi_TRUE@ kern/partition.c kern/rescue_parser.c \ -@COND_arm64_efi_TRUE@ kern/rescue_reader.c kern/term.c -@COND_arm_coreboot_TRUE@kernel_exec_SOURCES = kern/arm/startup.S \ -@COND_arm_coreboot_TRUE@ kern/arm/coreboot/init.c \ -@COND_arm_coreboot_TRUE@ kern/arm/coreboot/timer.c \ -@COND_arm_coreboot_TRUE@ kern/arm/coreboot/coreboot.S lib/fdt.c \ -@COND_arm_coreboot_TRUE@ bus/fdt.c term/ps2.c term/arm/pl050.c \ -@COND_arm_coreboot_TRUE@ term/arm/cros.c term/arm/cros_ec.c \ -@COND_arm_coreboot_TRUE@ bus/spi/rk3288_spi.c \ -@COND_arm_coreboot_TRUE@ commands/keylayouts.c \ -@COND_arm_coreboot_TRUE@ kern/arm/coreboot/dma.c \ -@COND_arm_coreboot_TRUE@ kern/arm/coreboot/cbtable.c \ -@COND_arm_coreboot_TRUE@ video/coreboot/cbfb.c \ -@COND_arm_coreboot_TRUE@ kern/coreboot/mmap.c \ -@COND_arm_coreboot_TRUE@ kern/coreboot/cbtable.c term/gfxterm.c \ -@COND_arm_coreboot_TRUE@ font/font.c font/font_cmd.c io/bufio.c \ -@COND_arm_coreboot_TRUE@ video/fb/fbblit.c video/fb/fbfill.c \ -@COND_arm_coreboot_TRUE@ video/fb/fbutil.c video/fb/video_fb.c \ -@COND_arm_coreboot_TRUE@ video/video.c kern/arm/dl.c \ -@COND_arm_coreboot_TRUE@ kern/arm/dl_helper.c \ -@COND_arm_coreboot_TRUE@ kern/arm/cache_armv6.S \ -@COND_arm_coreboot_TRUE@ kern/arm/cache_armv7.S \ -@COND_arm_coreboot_TRUE@ kern/arm/cache.c \ -@COND_arm_coreboot_TRUE@ kern/arm/compiler-rt.S lib/division.c \ -@COND_arm_coreboot_TRUE@ kern/compiler-rt.c kern/mm.c \ -@COND_arm_coreboot_TRUE@ kern/time.c kern/generic/millisleep.c \ -@COND_arm_coreboot_TRUE@ kern/command.c kern/corecmd.c \ -@COND_arm_coreboot_TRUE@ kern/device.c kern/disk.c kern/dl.c \ -@COND_arm_coreboot_TRUE@ kern/env.c kern/err.c kern/file.c \ -@COND_arm_coreboot_TRUE@ kern/fs.c kern/list.c kern/main.c \ -@COND_arm_coreboot_TRUE@ kern/misc.c kern/parser.c \ -@COND_arm_coreboot_TRUE@ kern/partition.c kern/rescue_parser.c \ -@COND_arm_coreboot_TRUE@ kern/rescue_reader.c kern/term.c -@COND_arm_efi_TRUE@kernel_exec_SOURCES = kern/arm/efi/startup.S \ -@COND_arm_efi_TRUE@ kern/arm/efi/init.c kern/efi/fdt.c \ -@COND_arm_efi_TRUE@ kern/arm/dl.c kern/arm/dl_helper.c \ -@COND_arm_efi_TRUE@ kern/arm/cache_armv6.S \ -@COND_arm_efi_TRUE@ kern/arm/cache_armv7.S kern/arm/cache.c \ -@COND_arm_efi_TRUE@ kern/arm/compiler-rt.S lib/division.c \ -@COND_arm_efi_TRUE@ disk/efi/efidisk.c kern/efi/efi.c \ -@COND_arm_efi_TRUE@ kern/efi/init.c kern/efi/mm.c \ -@COND_arm_efi_TRUE@ term/efi/console.c kern/acpi.c \ -@COND_arm_efi_TRUE@ kern/efi/acpi.c kern/compiler-rt.c \ -@COND_arm_efi_TRUE@ kern/mm.c kern/time.c \ -@COND_arm_efi_TRUE@ kern/generic/millisleep.c kern/command.c \ -@COND_arm_efi_TRUE@ kern/corecmd.c kern/device.c kern/disk.c \ -@COND_arm_efi_TRUE@ kern/dl.c kern/env.c kern/err.c kern/file.c \ -@COND_arm_efi_TRUE@ kern/fs.c kern/list.c kern/main.c \ -@COND_arm_efi_TRUE@ kern/misc.c kern/parser.c kern/partition.c \ -@COND_arm_efi_TRUE@ kern/rescue_parser.c kern/rescue_reader.c \ -@COND_arm_efi_TRUE@ kern/term.c -@COND_arm_uboot_TRUE@kernel_exec_SOURCES = kern/arm/startup.S \ -@COND_arm_uboot_TRUE@ kern/arm/uboot/init.c \ -@COND_arm_uboot_TRUE@ kern/arm/uboot/uboot.S \ -@COND_arm_uboot_TRUE@ disk/uboot/ubootdisk.c kern/uboot/uboot.c \ -@COND_arm_uboot_TRUE@ kern/uboot/init.c kern/uboot/hw.c \ -@COND_arm_uboot_TRUE@ term/uboot/console.c kern/arm/dl.c \ -@COND_arm_uboot_TRUE@ kern/arm/dl_helper.c \ -@COND_arm_uboot_TRUE@ kern/arm/cache_armv6.S \ -@COND_arm_uboot_TRUE@ kern/arm/cache_armv7.S kern/arm/cache.c \ -@COND_arm_uboot_TRUE@ kern/arm/compiler-rt.S lib/division.c \ -@COND_arm_uboot_TRUE@ term/terminfo.c term/tparm.c \ -@COND_arm_uboot_TRUE@ commands/extcmd.c lib/arg.c \ -@COND_arm_uboot_TRUE@ kern/compiler-rt.c kern/mm.c kern/time.c \ -@COND_arm_uboot_TRUE@ kern/generic/millisleep.c kern/command.c \ -@COND_arm_uboot_TRUE@ kern/corecmd.c kern/device.c kern/disk.c \ -@COND_arm_uboot_TRUE@ kern/dl.c kern/env.c kern/err.c \ -@COND_arm_uboot_TRUE@ kern/file.c kern/fs.c kern/list.c \ -@COND_arm_uboot_TRUE@ kern/main.c kern/misc.c kern/parser.c \ -@COND_arm_uboot_TRUE@ kern/partition.c kern/rescue_parser.c \ -@COND_arm_uboot_TRUE@ kern/rescue_reader.c kern/term.c -@COND_emu_TRUE@kernel_exec_SOURCES = disk/host.c kern/emu/cache_s.S \ -@COND_emu_TRUE@ kern/emu/hostdisk.c osdep/unix/hostdisk.c \ -@COND_emu_TRUE@ osdep/exec.c osdep/devmapper/hostdisk.c \ -@COND_emu_TRUE@ osdep/hostdisk.c kern/emu/hostfs.c \ -@COND_emu_TRUE@ kern/emu/main.c kern/emu/argp_common.c \ -@COND_emu_TRUE@ kern/emu/misc.c kern/emu/mm.c kern/emu/time.c \ -@COND_emu_TRUE@ kern/emu/cache.c osdep/emuconsole.c osdep/dl.c \ -@COND_emu_TRUE@ osdep/sleep.c osdep/init.c osdep/emunet.c \ -@COND_emu_TRUE@ osdep/cputime.c term/terminfo.c term/tparm.c \ -@COND_emu_TRUE@ commands/extcmd.c lib/arg.c kern/command.c \ -@COND_emu_TRUE@ kern/corecmd.c kern/device.c kern/disk.c \ -@COND_emu_TRUE@ kern/dl.c kern/env.c kern/err.c kern/file.c \ -@COND_emu_TRUE@ kern/fs.c kern/list.c kern/main.c kern/misc.c \ -@COND_emu_TRUE@ kern/parser.c kern/partition.c \ -@COND_emu_TRUE@ kern/rescue_parser.c kern/rescue_reader.c \ -@COND_emu_TRUE@ kern/term.c -@COND_i386_coreboot_TRUE@kernel_exec_SOURCES = \ -@COND_i386_coreboot_TRUE@ kern/i386/coreboot/startup.S \ -@COND_i386_coreboot_TRUE@ kern/i386/coreboot/init.c \ -@COND_i386_coreboot_TRUE@ kern/i386/pc/acpi.c kern/acpi.c \ -@COND_i386_coreboot_TRUE@ kern/i386/tsc_pmtimer.c \ -@COND_i386_coreboot_TRUE@ kern/i386/coreboot/cbtable.c \ -@COND_i386_coreboot_TRUE@ video/coreboot/cbfb.c \ -@COND_i386_coreboot_TRUE@ kern/coreboot/mmap.c \ -@COND_i386_coreboot_TRUE@ kern/coreboot/cbtable.c \ -@COND_i386_coreboot_TRUE@ term/gfxterm.c font/font.c \ -@COND_i386_coreboot_TRUE@ font/font_cmd.c io/bufio.c \ -@COND_i386_coreboot_TRUE@ video/fb/fbblit.c video/fb/fbfill.c \ -@COND_i386_coreboot_TRUE@ video/fb/fbutil.c video/fb/video_fb.c \ -@COND_i386_coreboot_TRUE@ video/video.c term/i386/pc/vga_text.c \ -@COND_i386_coreboot_TRUE@ kern/i386/dl.c kern/i386/tsc.c \ -@COND_i386_coreboot_TRUE@ kern/i386/tsc_pit.c \ -@COND_i386_coreboot_TRUE@ kern/compiler-rt.c kern/mm.c \ -@COND_i386_coreboot_TRUE@ kern/time.c kern/generic/millisleep.c \ -@COND_i386_coreboot_TRUE@ kern/command.c kern/corecmd.c \ -@COND_i386_coreboot_TRUE@ kern/device.c kern/disk.c kern/dl.c \ -@COND_i386_coreboot_TRUE@ kern/env.c kern/err.c kern/file.c \ -@COND_i386_coreboot_TRUE@ kern/fs.c kern/list.c kern/main.c \ -@COND_i386_coreboot_TRUE@ kern/misc.c kern/parser.c \ -@COND_i386_coreboot_TRUE@ kern/partition.c kern/rescue_parser.c \ -@COND_i386_coreboot_TRUE@ kern/rescue_reader.c kern/term.c -@COND_i386_efi_TRUE@kernel_exec_SOURCES = kern/i386/efi/startup.S \ -@COND_i386_efi_TRUE@ kern/i386/efi/tsc.c \ -@COND_i386_efi_TRUE@ kern/i386/tsc_pmtimer.c \ -@COND_i386_efi_TRUE@ kern/i386/efi/init.c bus/pci.c \ -@COND_i386_efi_TRUE@ kern/i386/dl.c kern/i386/tsc.c \ -@COND_i386_efi_TRUE@ kern/i386/tsc_pit.c disk/efi/efidisk.c \ -@COND_i386_efi_TRUE@ kern/efi/efi.c kern/efi/init.c \ -@COND_i386_efi_TRUE@ kern/efi/mm.c term/efi/console.c \ -@COND_i386_efi_TRUE@ kern/acpi.c kern/efi/acpi.c \ -@COND_i386_efi_TRUE@ kern/compiler-rt.c kern/mm.c kern/time.c \ -@COND_i386_efi_TRUE@ kern/generic/millisleep.c kern/command.c \ -@COND_i386_efi_TRUE@ kern/corecmd.c kern/device.c kern/disk.c \ -@COND_i386_efi_TRUE@ kern/dl.c kern/env.c kern/err.c \ -@COND_i386_efi_TRUE@ kern/file.c kern/fs.c kern/list.c \ -@COND_i386_efi_TRUE@ kern/main.c kern/misc.c kern/parser.c \ -@COND_i386_efi_TRUE@ kern/partition.c kern/rescue_parser.c \ -@COND_i386_efi_TRUE@ kern/rescue_reader.c kern/term.c -@COND_i386_ieee1275_TRUE@kernel_exec_SOURCES = \ -@COND_i386_ieee1275_TRUE@ kern/i386/ieee1275/startup.S \ -@COND_i386_ieee1275_TRUE@ disk/ieee1275/ofdisk.c \ -@COND_i386_ieee1275_TRUE@ kern/ieee1275/cmain.c \ -@COND_i386_ieee1275_TRUE@ kern/ieee1275/ieee1275.c \ -@COND_i386_ieee1275_TRUE@ kern/ieee1275/mmap.c \ -@COND_i386_ieee1275_TRUE@ kern/ieee1275/openfw.c \ -@COND_i386_ieee1275_TRUE@ term/ieee1275/console.c \ -@COND_i386_ieee1275_TRUE@ kern/ieee1275/init.c kern/i386/dl.c \ -@COND_i386_ieee1275_TRUE@ kern/i386/tsc.c kern/i386/tsc_pit.c \ -@COND_i386_ieee1275_TRUE@ term/terminfo.c term/tparm.c \ -@COND_i386_ieee1275_TRUE@ commands/extcmd.c lib/arg.c \ -@COND_i386_ieee1275_TRUE@ kern/compiler-rt.c kern/mm.c \ -@COND_i386_ieee1275_TRUE@ kern/time.c kern/generic/millisleep.c \ -@COND_i386_ieee1275_TRUE@ kern/command.c kern/corecmd.c \ -@COND_i386_ieee1275_TRUE@ kern/device.c kern/disk.c kern/dl.c \ -@COND_i386_ieee1275_TRUE@ kern/env.c kern/err.c kern/file.c \ -@COND_i386_ieee1275_TRUE@ kern/fs.c kern/list.c kern/main.c \ -@COND_i386_ieee1275_TRUE@ kern/misc.c kern/parser.c \ -@COND_i386_ieee1275_TRUE@ kern/partition.c kern/rescue_parser.c \ -@COND_i386_ieee1275_TRUE@ kern/rescue_reader.c kern/term.c -@COND_i386_multiboot_TRUE@kernel_exec_SOURCES = \ -@COND_i386_multiboot_TRUE@ kern/i386/coreboot/startup.S \ -@COND_i386_multiboot_TRUE@ kern/i386/coreboot/init.c \ -@COND_i386_multiboot_TRUE@ kern/i386/pc/acpi.c kern/acpi.c \ -@COND_i386_multiboot_TRUE@ kern/i386/multiboot_mmap.c \ -@COND_i386_multiboot_TRUE@ term/i386/pc/vga_text.c \ -@COND_i386_multiboot_TRUE@ kern/i386/dl.c kern/i386/tsc.c \ -@COND_i386_multiboot_TRUE@ kern/i386/tsc_pit.c \ -@COND_i386_multiboot_TRUE@ kern/compiler-rt.c kern/mm.c \ -@COND_i386_multiboot_TRUE@ kern/time.c \ -@COND_i386_multiboot_TRUE@ kern/generic/millisleep.c \ -@COND_i386_multiboot_TRUE@ kern/command.c kern/corecmd.c \ -@COND_i386_multiboot_TRUE@ kern/device.c kern/disk.c kern/dl.c \ -@COND_i386_multiboot_TRUE@ kern/env.c kern/err.c kern/file.c \ -@COND_i386_multiboot_TRUE@ kern/fs.c kern/list.c kern/main.c \ -@COND_i386_multiboot_TRUE@ kern/misc.c kern/parser.c \ -@COND_i386_multiboot_TRUE@ kern/partition.c \ -@COND_i386_multiboot_TRUE@ kern/rescue_parser.c \ -@COND_i386_multiboot_TRUE@ kern/rescue_reader.c kern/term.c -@COND_i386_pc_TRUE@kernel_exec_SOURCES = kern/i386/pc/startup.S \ -@COND_i386_pc_TRUE@ kern/i386/pc/init.c kern/i386/pc/mmap.c \ -@COND_i386_pc_TRUE@ term/i386/pc/console.c kern/i386/dl.c \ -@COND_i386_pc_TRUE@ kern/i386/tsc.c kern/i386/tsc_pit.c \ -@COND_i386_pc_TRUE@ kern/compiler-rt.c kern/mm.c kern/time.c \ -@COND_i386_pc_TRUE@ kern/generic/millisleep.c kern/command.c \ -@COND_i386_pc_TRUE@ kern/corecmd.c kern/device.c kern/disk.c \ -@COND_i386_pc_TRUE@ kern/dl.c kern/env.c kern/err.c kern/file.c \ -@COND_i386_pc_TRUE@ kern/fs.c kern/list.c kern/main.c \ -@COND_i386_pc_TRUE@ kern/misc.c kern/parser.c kern/partition.c \ -@COND_i386_pc_TRUE@ kern/rescue_parser.c kern/rescue_reader.c \ -@COND_i386_pc_TRUE@ kern/term.c -@COND_i386_qemu_TRUE@kernel_exec_SOURCES = kern/i386/qemu/startup.S \ -@COND_i386_qemu_TRUE@ kern/i386/qemu/init.c bus/pci.c \ -@COND_i386_qemu_TRUE@ kern/vga_init.c kern/i386/qemu/mmap.c \ -@COND_i386_qemu_TRUE@ term/i386/pc/vga_text.c kern/i386/dl.c \ -@COND_i386_qemu_TRUE@ kern/i386/tsc.c kern/i386/tsc_pit.c \ -@COND_i386_qemu_TRUE@ kern/compiler-rt.c kern/mm.c kern/time.c \ -@COND_i386_qemu_TRUE@ kern/generic/millisleep.c kern/command.c \ -@COND_i386_qemu_TRUE@ kern/corecmd.c kern/device.c kern/disk.c \ -@COND_i386_qemu_TRUE@ kern/dl.c kern/env.c kern/err.c \ -@COND_i386_qemu_TRUE@ kern/file.c kern/fs.c kern/list.c \ -@COND_i386_qemu_TRUE@ kern/main.c kern/misc.c kern/parser.c \ -@COND_i386_qemu_TRUE@ kern/partition.c kern/rescue_parser.c \ -@COND_i386_qemu_TRUE@ kern/rescue_reader.c kern/term.c -@COND_i386_xen_TRUE@kernel_exec_SOURCES = kern/i386/xen/startup.S \ -@COND_i386_xen_TRUE@ kern/i386/dl.c kern/i386/xen/hypercall.S \ -@COND_i386_xen_TRUE@ kern/i386/tsc.c kern/i386/xen/tsc.c \ -@COND_i386_xen_TRUE@ kern/xen/init.c term/xen/console.c \ -@COND_i386_xen_TRUE@ disk/xen/xendisk.c commands/boot.c \ -@COND_i386_xen_TRUE@ term/terminfo.c term/tparm.c \ -@COND_i386_xen_TRUE@ commands/extcmd.c lib/arg.c \ -@COND_i386_xen_TRUE@ kern/compiler-rt.c kern/mm.c kern/time.c \ -@COND_i386_xen_TRUE@ kern/generic/millisleep.c kern/command.c \ -@COND_i386_xen_TRUE@ kern/corecmd.c kern/device.c kern/disk.c \ -@COND_i386_xen_TRUE@ kern/dl.c kern/env.c kern/err.c \ -@COND_i386_xen_TRUE@ kern/file.c kern/fs.c kern/list.c \ -@COND_i386_xen_TRUE@ kern/main.c kern/misc.c kern/parser.c \ -@COND_i386_xen_TRUE@ kern/partition.c kern/rescue_parser.c \ -@COND_i386_xen_TRUE@ kern/rescue_reader.c kern/term.c -@COND_i386_xen_pvh_TRUE@kernel_exec_SOURCES = \ -@COND_i386_xen_pvh_TRUE@ kern/i386/xen/startup_pvh.S \ -@COND_i386_xen_pvh_TRUE@ kern/i386/dl.c commands/boot.c \ -@COND_i386_xen_pvh_TRUE@ disk/xen/xendisk.c kern/i386/tsc.c \ -@COND_i386_xen_pvh_TRUE@ kern/i386/xen/tsc.c \ -@COND_i386_xen_pvh_TRUE@ kern/i386/xen/pvh.c kern/xen/init.c \ -@COND_i386_xen_pvh_TRUE@ term/xen/console.c term/terminfo.c \ -@COND_i386_xen_pvh_TRUE@ term/tparm.c commands/extcmd.c \ -@COND_i386_xen_pvh_TRUE@ lib/arg.c kern/compiler-rt.c kern/mm.c \ -@COND_i386_xen_pvh_TRUE@ kern/time.c kern/generic/millisleep.c \ -@COND_i386_xen_pvh_TRUE@ kern/command.c kern/corecmd.c \ -@COND_i386_xen_pvh_TRUE@ kern/device.c kern/disk.c kern/dl.c \ -@COND_i386_xen_pvh_TRUE@ kern/env.c kern/err.c kern/file.c \ -@COND_i386_xen_pvh_TRUE@ kern/fs.c kern/list.c kern/main.c \ -@COND_i386_xen_pvh_TRUE@ kern/misc.c kern/parser.c \ -@COND_i386_xen_pvh_TRUE@ kern/partition.c kern/rescue_parser.c \ -@COND_i386_xen_pvh_TRUE@ kern/rescue_reader.c kern/term.c -@COND_ia64_efi_TRUE@kernel_exec_SOURCES = kern/ia64/efi/startup.S \ -@COND_ia64_efi_TRUE@ kern/ia64/efi/init.c kern/ia64/dl.c \ -@COND_ia64_efi_TRUE@ kern/ia64/dl_helper.c kern/ia64/cache.c \ -@COND_ia64_efi_TRUE@ lib/division.c disk/efi/efidisk.c \ -@COND_ia64_efi_TRUE@ kern/efi/efi.c kern/efi/init.c \ -@COND_ia64_efi_TRUE@ kern/efi/mm.c term/efi/console.c \ -@COND_ia64_efi_TRUE@ kern/acpi.c kern/efi/acpi.c \ -@COND_ia64_efi_TRUE@ kern/compiler-rt.c kern/mm.c kern/time.c \ -@COND_ia64_efi_TRUE@ kern/generic/millisleep.c kern/command.c \ -@COND_ia64_efi_TRUE@ kern/corecmd.c kern/device.c kern/disk.c \ -@COND_ia64_efi_TRUE@ kern/dl.c kern/env.c kern/err.c \ -@COND_ia64_efi_TRUE@ kern/file.c kern/fs.c kern/list.c \ -@COND_ia64_efi_TRUE@ kern/main.c kern/misc.c kern/parser.c \ -@COND_ia64_efi_TRUE@ kern/partition.c kern/rescue_parser.c \ -@COND_ia64_efi_TRUE@ kern/rescue_reader.c kern/term.c -@COND_mips_arc_TRUE@kernel_exec_SOURCES = kern/mips/startup.S \ -@COND_mips_arc_TRUE@ kern/mips/arc/init.c term/arc/console.c \ -@COND_mips_arc_TRUE@ disk/arc/arcdisk.c \ -@COND_mips_arc_TRUE@ kern/generic/rtc_get_time_ms.c \ -@COND_mips_arc_TRUE@ kern/mips/cache.S kern/mips/dl.c \ -@COND_mips_arc_TRUE@ kern/mips/init.c term/terminfo.c \ -@COND_mips_arc_TRUE@ term/tparm.c commands/extcmd.c lib/arg.c \ -@COND_mips_arc_TRUE@ kern/compiler-rt.c kern/mm.c kern/time.c \ -@COND_mips_arc_TRUE@ kern/generic/millisleep.c kern/command.c \ -@COND_mips_arc_TRUE@ kern/corecmd.c kern/device.c kern/disk.c \ -@COND_mips_arc_TRUE@ kern/dl.c kern/env.c kern/err.c \ -@COND_mips_arc_TRUE@ kern/file.c kern/fs.c kern/list.c \ -@COND_mips_arc_TRUE@ kern/main.c kern/misc.c kern/parser.c \ -@COND_mips_arc_TRUE@ kern/partition.c kern/rescue_parser.c \ -@COND_mips_arc_TRUE@ kern/rescue_reader.c kern/term.c -@COND_mips_loongson_TRUE@kernel_exec_SOURCES = kern/mips/startup.S \ -@COND_mips_loongson_TRUE@ term/ns8250.c bus/bonito.c \ -@COND_mips_loongson_TRUE@ bus/cs5536.c bus/pci.c \ -@COND_mips_loongson_TRUE@ kern/mips/loongson/init.c \ -@COND_mips_loongson_TRUE@ term/at_keyboard.c term/ps2.c \ -@COND_mips_loongson_TRUE@ commands/boot.c term/serial.c \ -@COND_mips_loongson_TRUE@ video/sm712.c video/sis315pro.c \ -@COND_mips_loongson_TRUE@ video/radeon_fuloong2e.c \ -@COND_mips_loongson_TRUE@ video/radeon_yeeloong3a.c \ -@COND_mips_loongson_TRUE@ commands/keylayouts.c term/gfxterm.c \ -@COND_mips_loongson_TRUE@ font/font.c font/font_cmd.c \ -@COND_mips_loongson_TRUE@ io/bufio.c video/fb/fbblit.c \ -@COND_mips_loongson_TRUE@ video/fb/fbfill.c video/fb/fbutil.c \ -@COND_mips_loongson_TRUE@ video/fb/video_fb.c video/video.c \ -@COND_mips_loongson_TRUE@ kern/generic/rtc_get_time_ms.c \ -@COND_mips_loongson_TRUE@ kern/mips/cache.S kern/mips/dl.c \ -@COND_mips_loongson_TRUE@ kern/mips/init.c term/terminfo.c \ -@COND_mips_loongson_TRUE@ term/tparm.c commands/extcmd.c \ -@COND_mips_loongson_TRUE@ lib/arg.c kern/compiler-rt.c \ -@COND_mips_loongson_TRUE@ kern/mm.c kern/time.c \ -@COND_mips_loongson_TRUE@ kern/generic/millisleep.c \ -@COND_mips_loongson_TRUE@ kern/command.c kern/corecmd.c \ -@COND_mips_loongson_TRUE@ kern/device.c kern/disk.c kern/dl.c \ -@COND_mips_loongson_TRUE@ kern/env.c kern/err.c kern/file.c \ -@COND_mips_loongson_TRUE@ kern/fs.c kern/list.c kern/main.c \ -@COND_mips_loongson_TRUE@ kern/misc.c kern/parser.c \ -@COND_mips_loongson_TRUE@ kern/partition.c kern/rescue_parser.c \ -@COND_mips_loongson_TRUE@ kern/rescue_reader.c kern/term.c -@COND_mips_qemu_mips_TRUE@kernel_exec_SOURCES = kern/mips/startup.S \ -@COND_mips_qemu_mips_TRUE@ kern/mips/qemu_mips/init.c \ -@COND_mips_qemu_mips_TRUE@ term/ns8250.c term/serial.c \ -@COND_mips_qemu_mips_TRUE@ term/at_keyboard.c term/ps2.c \ -@COND_mips_qemu_mips_TRUE@ commands/boot.c \ -@COND_mips_qemu_mips_TRUE@ commands/keylayouts.c \ -@COND_mips_qemu_mips_TRUE@ term/i386/pc/vga_text.c \ -@COND_mips_qemu_mips_TRUE@ kern/vga_init.c \ -@COND_mips_qemu_mips_TRUE@ kern/generic/rtc_get_time_ms.c \ -@COND_mips_qemu_mips_TRUE@ kern/mips/cache.S kern/mips/dl.c \ -@COND_mips_qemu_mips_TRUE@ kern/mips/init.c term/terminfo.c \ -@COND_mips_qemu_mips_TRUE@ term/tparm.c commands/extcmd.c \ -@COND_mips_qemu_mips_TRUE@ lib/arg.c kern/compiler-rt.c \ -@COND_mips_qemu_mips_TRUE@ kern/mm.c kern/time.c \ -@COND_mips_qemu_mips_TRUE@ kern/generic/millisleep.c \ -@COND_mips_qemu_mips_TRUE@ kern/command.c kern/corecmd.c \ -@COND_mips_qemu_mips_TRUE@ kern/device.c kern/disk.c kern/dl.c \ -@COND_mips_qemu_mips_TRUE@ kern/env.c kern/err.c kern/file.c \ -@COND_mips_qemu_mips_TRUE@ kern/fs.c kern/list.c kern/main.c \ -@COND_mips_qemu_mips_TRUE@ kern/misc.c kern/parser.c \ -@COND_mips_qemu_mips_TRUE@ kern/partition.c \ -@COND_mips_qemu_mips_TRUE@ kern/rescue_parser.c \ -@COND_mips_qemu_mips_TRUE@ kern/rescue_reader.c kern/term.c -@COND_powerpc_ieee1275_TRUE@kernel_exec_SOURCES = \ -@COND_powerpc_ieee1275_TRUE@ kern/powerpc/ieee1275/startup.S \ -@COND_powerpc_ieee1275_TRUE@ kern/powerpc/cache.S \ -@COND_powerpc_ieee1275_TRUE@ kern/powerpc/dl.c \ -@COND_powerpc_ieee1275_TRUE@ kern/powerpc/compiler-rt.S \ -@COND_powerpc_ieee1275_TRUE@ disk/ieee1275/ofdisk.c \ -@COND_powerpc_ieee1275_TRUE@ kern/ieee1275/cmain.c \ -@COND_powerpc_ieee1275_TRUE@ kern/ieee1275/ieee1275.c \ -@COND_powerpc_ieee1275_TRUE@ kern/ieee1275/mmap.c \ -@COND_powerpc_ieee1275_TRUE@ kern/ieee1275/openfw.c \ -@COND_powerpc_ieee1275_TRUE@ term/ieee1275/console.c \ -@COND_powerpc_ieee1275_TRUE@ kern/ieee1275/init.c \ -@COND_powerpc_ieee1275_TRUE@ term/terminfo.c term/tparm.c \ -@COND_powerpc_ieee1275_TRUE@ commands/extcmd.c lib/arg.c \ -@COND_powerpc_ieee1275_TRUE@ kern/compiler-rt.c kern/mm.c \ -@COND_powerpc_ieee1275_TRUE@ kern/time.c \ -@COND_powerpc_ieee1275_TRUE@ kern/generic/millisleep.c \ -@COND_powerpc_ieee1275_TRUE@ kern/command.c kern/corecmd.c \ -@COND_powerpc_ieee1275_TRUE@ kern/device.c kern/disk.c \ -@COND_powerpc_ieee1275_TRUE@ kern/dl.c kern/env.c kern/err.c \ -@COND_powerpc_ieee1275_TRUE@ kern/file.c kern/fs.c kern/list.c \ -@COND_powerpc_ieee1275_TRUE@ kern/main.c kern/misc.c \ -@COND_powerpc_ieee1275_TRUE@ kern/parser.c kern/partition.c \ -@COND_powerpc_ieee1275_TRUE@ kern/rescue_parser.c \ -@COND_powerpc_ieee1275_TRUE@ kern/rescue_reader.c kern/term.c -@COND_riscv32_efi_TRUE@kernel_exec_SOURCES = kern/riscv/efi/startup.S \ -@COND_riscv32_efi_TRUE@ kern/riscv/efi/init.c kern/efi/fdt.c \ -@COND_riscv32_efi_TRUE@ kern/riscv/cache.c \ -@COND_riscv32_efi_TRUE@ kern/riscv/cache_flush.S \ -@COND_riscv32_efi_TRUE@ kern/riscv/dl.c lib/division.c \ -@COND_riscv32_efi_TRUE@ disk/efi/efidisk.c kern/efi/efi.c \ -@COND_riscv32_efi_TRUE@ kern/efi/init.c kern/efi/mm.c \ -@COND_riscv32_efi_TRUE@ term/efi/console.c kern/acpi.c \ -@COND_riscv32_efi_TRUE@ kern/efi/acpi.c kern/compiler-rt.c \ -@COND_riscv32_efi_TRUE@ kern/mm.c kern/time.c \ -@COND_riscv32_efi_TRUE@ kern/generic/millisleep.c \ -@COND_riscv32_efi_TRUE@ kern/command.c kern/corecmd.c \ -@COND_riscv32_efi_TRUE@ kern/device.c kern/disk.c kern/dl.c \ -@COND_riscv32_efi_TRUE@ kern/env.c kern/err.c kern/file.c \ -@COND_riscv32_efi_TRUE@ kern/fs.c kern/list.c kern/main.c \ -@COND_riscv32_efi_TRUE@ kern/misc.c kern/parser.c \ -@COND_riscv32_efi_TRUE@ kern/partition.c kern/rescue_parser.c \ -@COND_riscv32_efi_TRUE@ kern/rescue_reader.c kern/term.c -@COND_riscv64_efi_TRUE@kernel_exec_SOURCES = kern/riscv/efi/startup.S \ -@COND_riscv64_efi_TRUE@ kern/riscv/efi/init.c kern/efi/fdt.c \ -@COND_riscv64_efi_TRUE@ kern/riscv/cache.c \ -@COND_riscv64_efi_TRUE@ kern/riscv/cache_flush.S \ -@COND_riscv64_efi_TRUE@ kern/riscv/dl.c disk/efi/efidisk.c \ -@COND_riscv64_efi_TRUE@ kern/efi/efi.c kern/efi/init.c \ -@COND_riscv64_efi_TRUE@ kern/efi/mm.c term/efi/console.c \ -@COND_riscv64_efi_TRUE@ kern/acpi.c kern/efi/acpi.c \ -@COND_riscv64_efi_TRUE@ kern/compiler-rt.c kern/mm.c \ -@COND_riscv64_efi_TRUE@ kern/time.c kern/generic/millisleep.c \ -@COND_riscv64_efi_TRUE@ kern/command.c kern/corecmd.c \ -@COND_riscv64_efi_TRUE@ kern/device.c kern/disk.c kern/dl.c \ -@COND_riscv64_efi_TRUE@ kern/env.c kern/err.c kern/file.c \ -@COND_riscv64_efi_TRUE@ kern/fs.c kern/list.c kern/main.c \ -@COND_riscv64_efi_TRUE@ kern/misc.c kern/parser.c \ -@COND_riscv64_efi_TRUE@ kern/partition.c kern/rescue_parser.c \ -@COND_riscv64_efi_TRUE@ kern/rescue_reader.c kern/term.c -@COND_sparc64_ieee1275_TRUE@kernel_exec_SOURCES = \ -@COND_sparc64_ieee1275_TRUE@ kern/sparc64/ieee1275/crt0.S \ -@COND_sparc64_ieee1275_TRUE@ kern/sparc64/cache.S \ -@COND_sparc64_ieee1275_TRUE@ kern/sparc64/dl.c \ -@COND_sparc64_ieee1275_TRUE@ kern/sparc64/ieee1275/ieee1275.c \ -@COND_sparc64_ieee1275_TRUE@ disk/ieee1275/obdisk.c \ -@COND_sparc64_ieee1275_TRUE@ disk/ieee1275/ofdisk.c \ -@COND_sparc64_ieee1275_TRUE@ kern/ieee1275/cmain.c \ -@COND_sparc64_ieee1275_TRUE@ kern/ieee1275/ieee1275.c \ -@COND_sparc64_ieee1275_TRUE@ kern/ieee1275/mmap.c \ -@COND_sparc64_ieee1275_TRUE@ kern/ieee1275/openfw.c \ -@COND_sparc64_ieee1275_TRUE@ term/ieee1275/console.c \ -@COND_sparc64_ieee1275_TRUE@ kern/ieee1275/init.c \ -@COND_sparc64_ieee1275_TRUE@ term/terminfo.c term/tparm.c \ -@COND_sparc64_ieee1275_TRUE@ commands/extcmd.c lib/arg.c \ -@COND_sparc64_ieee1275_TRUE@ kern/compiler-rt.c kern/mm.c \ -@COND_sparc64_ieee1275_TRUE@ kern/time.c \ -@COND_sparc64_ieee1275_TRUE@ kern/generic/millisleep.c \ -@COND_sparc64_ieee1275_TRUE@ kern/command.c kern/corecmd.c \ -@COND_sparc64_ieee1275_TRUE@ kern/device.c kern/disk.c \ -@COND_sparc64_ieee1275_TRUE@ kern/dl.c kern/env.c kern/err.c \ -@COND_sparc64_ieee1275_TRUE@ kern/file.c kern/fs.c kern/list.c \ -@COND_sparc64_ieee1275_TRUE@ kern/main.c kern/misc.c \ -@COND_sparc64_ieee1275_TRUE@ kern/parser.c kern/partition.c \ -@COND_sparc64_ieee1275_TRUE@ kern/rescue_parser.c \ -@COND_sparc64_ieee1275_TRUE@ kern/rescue_reader.c kern/term.c -@COND_x86_64_efi_TRUE@kernel_exec_SOURCES = kern/x86_64/efi/startup.S \ -@COND_x86_64_efi_TRUE@ kern/i386/efi/tsc.c \ -@COND_x86_64_efi_TRUE@ kern/i386/tsc_pmtimer.c \ -@COND_x86_64_efi_TRUE@ kern/x86_64/efi/callwrap.S \ -@COND_x86_64_efi_TRUE@ kern/i386/efi/init.c bus/pci.c \ -@COND_x86_64_efi_TRUE@ kern/x86_64/dl.c kern/i386/tsc.c \ -@COND_x86_64_efi_TRUE@ kern/i386/tsc_pit.c disk/efi/efidisk.c \ -@COND_x86_64_efi_TRUE@ kern/efi/efi.c kern/efi/init.c \ -@COND_x86_64_efi_TRUE@ kern/efi/mm.c term/efi/console.c \ -@COND_x86_64_efi_TRUE@ kern/acpi.c kern/efi/acpi.c \ -@COND_x86_64_efi_TRUE@ kern/compiler-rt.c kern/mm.c kern/time.c \ -@COND_x86_64_efi_TRUE@ kern/generic/millisleep.c kern/command.c \ -@COND_x86_64_efi_TRUE@ kern/corecmd.c kern/device.c kern/disk.c \ -@COND_x86_64_efi_TRUE@ kern/dl.c kern/env.c kern/err.c \ -@COND_x86_64_efi_TRUE@ kern/file.c kern/fs.c kern/list.c \ -@COND_x86_64_efi_TRUE@ kern/main.c kern/misc.c kern/parser.c \ -@COND_x86_64_efi_TRUE@ kern/partition.c kern/rescue_parser.c \ -@COND_x86_64_efi_TRUE@ kern/rescue_reader.c kern/term.c -@COND_x86_64_xen_TRUE@kernel_exec_SOURCES = kern/x86_64/xen/startup.S \ -@COND_x86_64_xen_TRUE@ kern/x86_64/dl.c \ -@COND_x86_64_xen_TRUE@ kern/x86_64/xen/hypercall.S \ -@COND_x86_64_xen_TRUE@ kern/i386/tsc.c kern/i386/xen/tsc.c \ -@COND_x86_64_xen_TRUE@ kern/xen/init.c term/xen/console.c \ -@COND_x86_64_xen_TRUE@ disk/xen/xendisk.c commands/boot.c \ -@COND_x86_64_xen_TRUE@ term/terminfo.c term/tparm.c \ -@COND_x86_64_xen_TRUE@ commands/extcmd.c lib/arg.c \ -@COND_x86_64_xen_TRUE@ kern/compiler-rt.c kern/mm.c kern/time.c \ -@COND_x86_64_xen_TRUE@ kern/generic/millisleep.c kern/command.c \ -@COND_x86_64_xen_TRUE@ kern/corecmd.c kern/device.c kern/disk.c \ -@COND_x86_64_xen_TRUE@ kern/dl.c kern/env.c kern/err.c \ -@COND_x86_64_xen_TRUE@ kern/file.c kern/fs.c kern/list.c \ -@COND_x86_64_xen_TRUE@ kern/main.c kern/misc.c kern/parser.c \ -@COND_x86_64_xen_TRUE@ kern/partition.c kern/rescue_parser.c \ -@COND_x86_64_xen_TRUE@ kern/rescue_reader.c kern/term.c -@COND_arm64_efi_TRUE@nodist_kernel_exec_SOURCES = symlist.c ## platform nodist sources -@COND_arm_coreboot_TRUE@nodist_kernel_exec_SOURCES = symlist.c ## platform nodist sources -@COND_arm_efi_TRUE@nodist_kernel_exec_SOURCES = symlist.c ## platform nodist sources -@COND_arm_uboot_TRUE@nodist_kernel_exec_SOURCES = symlist.c ## platform nodist sources -@COND_emu_TRUE@nodist_kernel_exec_SOURCES = ## platform nodist sources -@COND_i386_coreboot_TRUE@nodist_kernel_exec_SOURCES = symlist.c ## platform nodist sources -@COND_i386_efi_TRUE@nodist_kernel_exec_SOURCES = symlist.c ## platform nodist sources -@COND_i386_ieee1275_TRUE@nodist_kernel_exec_SOURCES = symlist.c ## platform nodist sources -@COND_i386_multiboot_TRUE@nodist_kernel_exec_SOURCES = symlist.c ## platform nodist sources -@COND_i386_pc_TRUE@nodist_kernel_exec_SOURCES = symlist.c ## platform nodist sources -@COND_i386_qemu_TRUE@nodist_kernel_exec_SOURCES = symlist.c ## platform nodist sources -@COND_i386_xen_TRUE@nodist_kernel_exec_SOURCES = symlist.c ## platform nodist sources -@COND_i386_xen_pvh_TRUE@nodist_kernel_exec_SOURCES = symlist.c ## platform nodist sources -@COND_ia64_efi_TRUE@nodist_kernel_exec_SOURCES = symlist.c ## platform nodist sources -@COND_mips_arc_TRUE@nodist_kernel_exec_SOURCES = symlist.c ## platform nodist sources -@COND_mips_loongson_TRUE@nodist_kernel_exec_SOURCES = symlist.c ## platform nodist sources -@COND_mips_qemu_mips_TRUE@nodist_kernel_exec_SOURCES = symlist.c ## platform nodist sources -@COND_powerpc_ieee1275_TRUE@nodist_kernel_exec_SOURCES = symlist.c ## platform nodist sources -@COND_riscv32_efi_TRUE@nodist_kernel_exec_SOURCES = symlist.c ## platform nodist sources -@COND_riscv64_efi_TRUE@nodist_kernel_exec_SOURCES = symlist.c ## platform nodist sources -@COND_sparc64_ieee1275_TRUE@nodist_kernel_exec_SOURCES = symlist.c ## platform nodist sources -@COND_x86_64_efi_TRUE@nodist_kernel_exec_SOURCES = symlist.c ## platform nodist sources -@COND_x86_64_xen_TRUE@nodist_kernel_exec_SOURCES = symlist.c ## platform nodist sources -@COND_arm64_efi_TRUE@kernel_exec_LDADD = -@COND_arm_coreboot_TRUE@kernel_exec_LDADD = -@COND_arm_efi_TRUE@kernel_exec_LDADD = -@COND_arm_uboot_TRUE@kernel_exec_LDADD = -@COND_emu_TRUE@kernel_exec_LDADD = -@COND_i386_coreboot_TRUE@kernel_exec_LDADD = -@COND_i386_efi_TRUE@kernel_exec_LDADD = -@COND_i386_ieee1275_TRUE@kernel_exec_LDADD = -@COND_i386_multiboot_TRUE@kernel_exec_LDADD = -@COND_i386_pc_TRUE@kernel_exec_LDADD = -@COND_i386_qemu_TRUE@kernel_exec_LDADD = -@COND_i386_xen_TRUE@kernel_exec_LDADD = -@COND_i386_xen_pvh_TRUE@kernel_exec_LDADD = -@COND_ia64_efi_TRUE@kernel_exec_LDADD = -@COND_mips_arc_TRUE@kernel_exec_LDADD = -@COND_mips_loongson_TRUE@kernel_exec_LDADD = -@COND_mips_qemu_mips_TRUE@kernel_exec_LDADD = -@COND_powerpc_ieee1275_TRUE@kernel_exec_LDADD = -@COND_riscv32_efi_TRUE@kernel_exec_LDADD = -@COND_riscv64_efi_TRUE@kernel_exec_LDADD = -@COND_sparc64_ieee1275_TRUE@kernel_exec_LDADD = -@COND_x86_64_efi_TRUE@kernel_exec_LDADD = -@COND_x86_64_xen_TRUE@kernel_exec_LDADD = -@COND_arm64_efi_TRUE@kernel_exec_CFLAGS = $(AM_CFLAGS) $(CFLAGS_KERNEL) -@COND_arm_coreboot_TRUE@kernel_exec_CFLAGS = $(AM_CFLAGS) $(CFLAGS_KERNEL) -@COND_arm_efi_TRUE@kernel_exec_CFLAGS = $(AM_CFLAGS) $(CFLAGS_KERNEL) -@COND_arm_uboot_TRUE@kernel_exec_CFLAGS = $(AM_CFLAGS) $(CFLAGS_KERNEL) -@COND_emu_TRUE@kernel_exec_CFLAGS = $(AM_CFLAGS) $(CFLAGS_KERNEL) $(CFLAGS_GNULIB) -@COND_i386_coreboot_TRUE@kernel_exec_CFLAGS = $(AM_CFLAGS) $(CFLAGS_KERNEL) -@COND_i386_efi_TRUE@kernel_exec_CFLAGS = $(AM_CFLAGS) $(CFLAGS_KERNEL) -@COND_i386_ieee1275_TRUE@kernel_exec_CFLAGS = $(AM_CFLAGS) $(CFLAGS_KERNEL) -@COND_i386_multiboot_TRUE@kernel_exec_CFLAGS = $(AM_CFLAGS) $(CFLAGS_KERNEL) -@COND_i386_pc_TRUE@kernel_exec_CFLAGS = $(AM_CFLAGS) $(CFLAGS_KERNEL) -@COND_i386_qemu_TRUE@kernel_exec_CFLAGS = $(AM_CFLAGS) $(CFLAGS_KERNEL) -@COND_i386_xen_TRUE@kernel_exec_CFLAGS = $(AM_CFLAGS) $(CFLAGS_KERNEL) -@COND_i386_xen_pvh_TRUE@kernel_exec_CFLAGS = $(AM_CFLAGS) $(CFLAGS_KERNEL) -@COND_ia64_efi_TRUE@kernel_exec_CFLAGS = $(AM_CFLAGS) $(CFLAGS_KERNEL) -fno-builtin -fpic -minline-int-divide-max-throughput -@COND_mips_arc_TRUE@kernel_exec_CFLAGS = $(AM_CFLAGS) $(CFLAGS_KERNEL) -@COND_mips_loongson_TRUE@kernel_exec_CFLAGS = $(AM_CFLAGS) $(CFLAGS_KERNEL) -@COND_mips_qemu_mips_TRUE@kernel_exec_CFLAGS = $(AM_CFLAGS) $(CFLAGS_KERNEL) -@COND_powerpc_ieee1275_TRUE@kernel_exec_CFLAGS = $(AM_CFLAGS) $(CFLAGS_KERNEL) -@COND_riscv32_efi_TRUE@kernel_exec_CFLAGS = $(AM_CFLAGS) $(CFLAGS_KERNEL) -@COND_riscv64_efi_TRUE@kernel_exec_CFLAGS = $(AM_CFLAGS) $(CFLAGS_KERNEL) -@COND_sparc64_ieee1275_TRUE@kernel_exec_CFLAGS = $(AM_CFLAGS) $(CFLAGS_KERNEL) -@COND_x86_64_efi_TRUE@kernel_exec_CFLAGS = $(AM_CFLAGS) $(CFLAGS_KERNEL) -@COND_x86_64_xen_TRUE@kernel_exec_CFLAGS = $(AM_CFLAGS) $(CFLAGS_KERNEL) -@COND_arm64_efi_TRUE@kernel_exec_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_KERNEL) -Wl,-r,-d -@COND_arm_coreboot_TRUE@kernel_exec_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_KERNEL) -Wl,-r,-d -@COND_arm_efi_TRUE@kernel_exec_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_KERNEL) -Wl,-r,-d -@COND_arm_uboot_TRUE@kernel_exec_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_KERNEL) -Wl,-r,-d -@COND_emu_TRUE@kernel_exec_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_KERNEL) -Wl,-r,-d -@COND_i386_coreboot_TRUE@kernel_exec_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_KERNEL) $(TARGET_IMG_LDFLAGS) $(TARGET_IMG_BASE_LDOPT),0x9000 -@COND_i386_efi_TRUE@kernel_exec_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_KERNEL) -Wl,-r,-d -@COND_i386_ieee1275_TRUE@kernel_exec_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_KERNEL) $(TARGET_IMG_LDFLAGS) $(TARGET_IMG_BASE_LDOPT),0x10000 -@COND_i386_multiboot_TRUE@kernel_exec_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_KERNEL) $(TARGET_IMG_LDFLAGS) $(TARGET_IMG_BASE_LDOPT),0x9000 -@COND_i386_pc_TRUE@kernel_exec_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_KERNEL) $(TARGET_IMG_LDFLAGS) $(TARGET_IMG_BASE_LDOPT),0x9000 -@COND_i386_qemu_TRUE@kernel_exec_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_KERNEL) $(TARGET_IMG_LDFLAGS) $(TARGET_IMG_BASE_LDOPT),0x9000 -@COND_i386_xen_TRUE@kernel_exec_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_KERNEL) $(TARGET_IMG_LDFLAGS) $(TARGET_IMG_BASE_LDOPT),0 -@COND_i386_xen_pvh_TRUE@kernel_exec_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_KERNEL) $(TARGET_IMG_LDFLAGS) $(TARGET_IMG_BASE_LDOPT),0x100000 -@COND_ia64_efi_TRUE@kernel_exec_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_KERNEL) -Wl,-r,-d -@COND_mips_arc_TRUE@kernel_exec_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_KERNEL) -Wl,-Ttext,$(TARGET_LINK_ADDR) -@COND_mips_loongson_TRUE@kernel_exec_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_KERNEL) -Wl,-Ttext,0x80200000 -@COND_mips_qemu_mips_TRUE@kernel_exec_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_KERNEL) -Wl,-Ttext,0x80200000 -@COND_powerpc_ieee1275_TRUE@kernel_exec_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_KERNEL) -Wl,-Ttext,0x200000 -@COND_riscv32_efi_TRUE@kernel_exec_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_KERNEL) -Wl,-r,-d -@COND_riscv64_efi_TRUE@kernel_exec_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_KERNEL) -Wl,-r,-d -@COND_sparc64_ieee1275_TRUE@kernel_exec_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_KERNEL) -Wl,-Ttext,0x4400 -@COND_x86_64_efi_TRUE@kernel_exec_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_KERNEL) -Wl,-r,-d -@COND_x86_64_xen_TRUE@kernel_exec_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_KERNEL) $(TARGET_IMG_LDFLAGS) $(TARGET_IMG_BASE_LDOPT),0 -@COND_arm64_efi_TRUE@kernel_exec_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_KERNEL) -@COND_arm_coreboot_TRUE@kernel_exec_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_KERNEL) -@COND_arm_efi_TRUE@kernel_exec_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_KERNEL) -@COND_arm_uboot_TRUE@kernel_exec_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_KERNEL) -@COND_emu_TRUE@kernel_exec_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_KERNEL) $(CPPFLAGS_GNULIB) -@COND_i386_coreboot_TRUE@kernel_exec_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_KERNEL) -@COND_i386_efi_TRUE@kernel_exec_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_KERNEL) -@COND_i386_ieee1275_TRUE@kernel_exec_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_KERNEL) -@COND_i386_multiboot_TRUE@kernel_exec_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_KERNEL) -@COND_i386_pc_TRUE@kernel_exec_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_KERNEL) -@COND_i386_qemu_TRUE@kernel_exec_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_KERNEL) -DGRUB_BOOT_MACHINE_LINK_ADDR=$(GRUB_BOOT_MACHINE_LINK_ADDR) -@COND_i386_xen_TRUE@kernel_exec_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_KERNEL) -@COND_i386_xen_pvh_TRUE@kernel_exec_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_KERNEL) -@COND_ia64_efi_TRUE@kernel_exec_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_KERNEL) -@COND_mips_arc_TRUE@kernel_exec_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_KERNEL) -DGRUB_DECOMPRESSOR_LINK_ADDR=$(TARGET_DECOMPRESSOR_LINK_ADDR) -@COND_mips_loongson_TRUE@kernel_exec_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_KERNEL) -@COND_mips_qemu_mips_TRUE@kernel_exec_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_KERNEL) -@COND_powerpc_ieee1275_TRUE@kernel_exec_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_KERNEL) -@COND_riscv32_efi_TRUE@kernel_exec_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_KERNEL) -@COND_riscv64_efi_TRUE@kernel_exec_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_KERNEL) -@COND_sparc64_ieee1275_TRUE@kernel_exec_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_KERNEL) -@COND_x86_64_efi_TRUE@kernel_exec_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_KERNEL) -@COND_x86_64_xen_TRUE@kernel_exec_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_KERNEL) -@COND_arm64_efi_TRUE@kernel_exec_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_KERNEL) -@COND_arm_coreboot_TRUE@kernel_exec_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_KERNEL) -@COND_arm_efi_TRUE@kernel_exec_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_KERNEL) -@COND_arm_uboot_TRUE@kernel_exec_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_KERNEL) -@COND_emu_TRUE@kernel_exec_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_KERNEL) -@COND_i386_coreboot_TRUE@kernel_exec_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_KERNEL) -@COND_i386_efi_TRUE@kernel_exec_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_KERNEL) -@COND_i386_ieee1275_TRUE@kernel_exec_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_KERNEL) -@COND_i386_multiboot_TRUE@kernel_exec_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_KERNEL) -@COND_i386_pc_TRUE@kernel_exec_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_KERNEL) -@COND_i386_qemu_TRUE@kernel_exec_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_KERNEL) -@COND_i386_xen_TRUE@kernel_exec_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_KERNEL) -@COND_i386_xen_pvh_TRUE@kernel_exec_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_KERNEL) -@COND_ia64_efi_TRUE@kernel_exec_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_KERNEL) -@COND_mips_arc_TRUE@kernel_exec_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_KERNEL) -@COND_mips_loongson_TRUE@kernel_exec_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_KERNEL) -@COND_mips_qemu_mips_TRUE@kernel_exec_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_KERNEL) -@COND_powerpc_ieee1275_TRUE@kernel_exec_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_KERNEL) -@COND_riscv32_efi_TRUE@kernel_exec_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_KERNEL) -@COND_riscv64_efi_TRUE@kernel_exec_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_KERNEL) -@COND_sparc64_ieee1275_TRUE@kernel_exec_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_KERNEL) -@COND_x86_64_efi_TRUE@kernel_exec_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_KERNEL) -@COND_x86_64_xen_TRUE@kernel_exec_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_KERNEL) -@COND_arm64_efi_TRUE@kernel_exec_STRIPFLAGS = $(AM_STRIPFLAGS) $(STRIPFLAGS_KERNEL) --strip-unneeded -K start -R .note -R .comment -R .note.gnu.gold-version -R .eh_frame -@COND_arm_coreboot_TRUE@kernel_exec_STRIPFLAGS = $(AM_STRIPFLAGS) $(STRIPFLAGS_KERNEL) --strip-unneeded -K start -R .note -R .comment -R .note.gnu.gold-version -@COND_arm_efi_TRUE@kernel_exec_STRIPFLAGS = $(AM_STRIPFLAGS) $(STRIPFLAGS_KERNEL) --strip-unneeded -K start -R .note -R .comment -R .note.gnu.gold-version -@COND_arm_uboot_TRUE@kernel_exec_STRIPFLAGS = $(AM_STRIPFLAGS) $(STRIPFLAGS_KERNEL) --strip-unneeded -K start -R .note -R .comment -R .note.gnu.gold-version -@COND_emu_TRUE@kernel_exec_STRIPFLAGS = $(AM_STRIPFLAGS) $(STRIPFLAGS_KERNEL) -@COND_i386_coreboot_TRUE@kernel_exec_STRIPFLAGS = $(AM_STRIPFLAGS) $(STRIPFLAGS_KERNEL) -@COND_i386_efi_TRUE@kernel_exec_STRIPFLAGS = $(AM_STRIPFLAGS) $(STRIPFLAGS_KERNEL) --strip-unneeded -K start -R .note -R .comment -R .note.gnu.gold-version -@COND_i386_ieee1275_TRUE@kernel_exec_STRIPFLAGS = $(AM_STRIPFLAGS) $(STRIPFLAGS_KERNEL) -@COND_i386_multiboot_TRUE@kernel_exec_STRIPFLAGS = $(AM_STRIPFLAGS) $(STRIPFLAGS_KERNEL) -@COND_i386_pc_TRUE@kernel_exec_STRIPFLAGS = $(AM_STRIPFLAGS) $(STRIPFLAGS_KERNEL) -@COND_i386_qemu_TRUE@kernel_exec_STRIPFLAGS = $(AM_STRIPFLAGS) $(STRIPFLAGS_KERNEL) -@COND_i386_xen_TRUE@kernel_exec_STRIPFLAGS = $(AM_STRIPFLAGS) $(STRIPFLAGS_KERNEL) -@COND_i386_xen_pvh_TRUE@kernel_exec_STRIPFLAGS = $(AM_STRIPFLAGS) $(STRIPFLAGS_KERNEL) -@COND_ia64_efi_TRUE@kernel_exec_STRIPFLAGS = $(AM_STRIPFLAGS) $(STRIPFLAGS_KERNEL) --strip-unneeded -K start -R .note -R .comment -R .note.gnu.gold-version -@COND_mips_arc_TRUE@kernel_exec_STRIPFLAGS = $(AM_STRIPFLAGS) $(STRIPFLAGS_KERNEL) -@COND_mips_loongson_TRUE@kernel_exec_STRIPFLAGS = $(AM_STRIPFLAGS) $(STRIPFLAGS_KERNEL) -@COND_mips_qemu_mips_TRUE@kernel_exec_STRIPFLAGS = $(AM_STRIPFLAGS) $(STRIPFLAGS_KERNEL) -@COND_powerpc_ieee1275_TRUE@kernel_exec_STRIPFLAGS = $(AM_STRIPFLAGS) $(STRIPFLAGS_KERNEL) -@COND_riscv32_efi_TRUE@kernel_exec_STRIPFLAGS = $(AM_STRIPFLAGS) $(STRIPFLAGS_KERNEL) --strip-unneeded -K start -R .note -R .comment -R .note.gnu.gold-version -R .eh_frame -@COND_riscv64_efi_TRUE@kernel_exec_STRIPFLAGS = $(AM_STRIPFLAGS) $(STRIPFLAGS_KERNEL) --strip-unneeded -K start -R .note -R .comment -R .note.gnu.gold-version -R .eh_frame -@COND_sparc64_ieee1275_TRUE@kernel_exec_STRIPFLAGS = $(AM_STRIPFLAGS) $(STRIPFLAGS_KERNEL) -@COND_x86_64_efi_TRUE@kernel_exec_STRIPFLAGS = $(AM_STRIPFLAGS) $(STRIPFLAGS_KERNEL) --strip-unneeded -K start -R .note -R .comment -R .note.gnu.gold-version -@COND_x86_64_xen_TRUE@kernel_exec_STRIPFLAGS = $(AM_STRIPFLAGS) $(STRIPFLAGS_KERNEL) -@COND_arm64_efi_TRUE@kernel_exec_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_arm_coreboot_TRUE@kernel_exec_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_arm_efi_TRUE@kernel_exec_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_arm_uboot_TRUE@kernel_exec_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_emu_TRUE@kernel_exec_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_coreboot_TRUE@kernel_exec_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_efi_TRUE@kernel_exec_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_ieee1275_TRUE@kernel_exec_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_multiboot_TRUE@kernel_exec_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_pc_TRUE@kernel_exec_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_qemu_TRUE@kernel_exec_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_xen_TRUE@kernel_exec_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_xen_pvh_TRUE@kernel_exec_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_ia64_efi_TRUE@kernel_exec_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_mips_arc_TRUE@kernel_exec_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_mips_loongson_TRUE@kernel_exec_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_mips_qemu_mips_TRUE@kernel_exec_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_powerpc_ieee1275_TRUE@kernel_exec_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_riscv32_efi_TRUE@kernel_exec_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_riscv64_efi_TRUE@kernel_exec_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_sparc64_ieee1275_TRUE@kernel_exec_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_x86_64_efi_TRUE@kernel_exec_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_x86_64_xen_TRUE@kernel_exec_DEPENDENCIES = $(TARGET_OBJ2ELF) -@COND_i386_pc_TRUE@boot_image_SOURCES = boot/i386/pc/boot.S -@COND_i386_qemu_TRUE@boot_image_SOURCES = boot/i386/qemu/boot.S -@COND_sparc64_ieee1275_TRUE@boot_image_SOURCES = boot/sparc64/ieee1275/boot.S -@COND_i386_pc_TRUE@nodist_boot_image_SOURCES = ## platform nodist sources -@COND_i386_qemu_TRUE@nodist_boot_image_SOURCES = ## platform nodist sources -@COND_sparc64_ieee1275_TRUE@nodist_boot_image_SOURCES = ## platform nodist sources -@COND_i386_pc_TRUE@boot_image_LDADD = -@COND_i386_qemu_TRUE@boot_image_LDADD = -@COND_sparc64_ieee1275_TRUE@boot_image_LDADD = -@COND_i386_pc_TRUE@boot_image_CFLAGS = $(AM_CFLAGS) $(CFLAGS_IMAGE) -@COND_i386_qemu_TRUE@boot_image_CFLAGS = $(AM_CFLAGS) $(CFLAGS_IMAGE) -@COND_sparc64_ieee1275_TRUE@boot_image_CFLAGS = $(AM_CFLAGS) $(CFLAGS_IMAGE) -@COND_i386_pc_TRUE@boot_image_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_IMAGE) $(TARGET_IMG_LDFLAGS) $(TARGET_IMG_BASE_LDOPT),0x7C00 -@COND_i386_qemu_TRUE@boot_image_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_IMAGE) $(TARGET_IMG_LDFLAGS) $(TARGET_IMG_BASE_LDOPT),$(GRUB_BOOT_MACHINE_LINK_ADDR) -@COND_sparc64_ieee1275_TRUE@boot_image_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_IMAGE) -Wl,-Ttext=0x3fe0 -@COND_i386_pc_TRUE@boot_image_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_IMAGE) -@COND_i386_qemu_TRUE@boot_image_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_IMAGE) -@COND_sparc64_ieee1275_TRUE@boot_image_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_IMAGE) -@COND_i386_pc_TRUE@boot_image_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_IMAGE) -@COND_i386_qemu_TRUE@boot_image_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_IMAGE) -DGRUB_BOOT_MACHINE_LINK_ADDR=$(GRUB_BOOT_MACHINE_LINK_ADDR) -@COND_sparc64_ieee1275_TRUE@boot_image_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_IMAGE) -@COND_i386_pc_TRUE@boot_image_OBJCOPYFLAGS = $(OBJCOPYFLAGS_IMAGE) -O binary -@COND_i386_qemu_TRUE@boot_image_OBJCOPYFLAGS = $(OBJCOPYFLAGS_IMAGE) -O binary -@COND_sparc64_ieee1275_TRUE@boot_image_OBJCOPYFLAGS = $(OBJCOPYFLAGS_IMAGE) -O binary -@COND_i386_pc_TRUE@boot_hybrid_image_SOURCES = boot/i386/pc/boot.S -@COND_i386_pc_TRUE@nodist_boot_hybrid_image_SOURCES = ## platform nodist sources -@COND_i386_pc_TRUE@boot_hybrid_image_LDADD = -@COND_i386_pc_TRUE@boot_hybrid_image_CFLAGS = $(AM_CFLAGS) $(CFLAGS_IMAGE) -@COND_i386_pc_TRUE@boot_hybrid_image_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_IMAGE) $(TARGET_IMG_LDFLAGS) $(TARGET_IMG_BASE_LDOPT),0x7C00 -@COND_i386_pc_TRUE@boot_hybrid_image_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_IMAGE) -DHYBRID_BOOT=1 -@COND_i386_pc_TRUE@boot_hybrid_image_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_IMAGE) -@COND_i386_pc_TRUE@boot_hybrid_image_OBJCOPYFLAGS = $(OBJCOPYFLAGS_IMAGE) -O binary -@COND_i386_pc_TRUE@cdboot_image_SOURCES = boot/i386/pc/cdboot.S -@COND_sparc64_ieee1275_TRUE@cdboot_image_SOURCES = boot/sparc64/ieee1275/boot.S -@COND_i386_pc_TRUE@nodist_cdboot_image_SOURCES = ## platform nodist sources -@COND_sparc64_ieee1275_TRUE@nodist_cdboot_image_SOURCES = ## platform nodist sources -@COND_i386_pc_TRUE@cdboot_image_LDADD = -@COND_sparc64_ieee1275_TRUE@cdboot_image_LDADD = -@COND_i386_pc_TRUE@cdboot_image_CFLAGS = $(AM_CFLAGS) $(CFLAGS_IMAGE) -@COND_sparc64_ieee1275_TRUE@cdboot_image_CFLAGS = $(AM_CFLAGS) $(CFLAGS_IMAGE) -@COND_i386_pc_TRUE@cdboot_image_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_IMAGE) $(TARGET_IMG_LDFLAGS) $(TARGET_IMG_BASE_LDOPT),0x7C00 -@COND_sparc64_ieee1275_TRUE@cdboot_image_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_IMAGE) -Wl,-Ttext=0x3fe0 -@COND_i386_pc_TRUE@cdboot_image_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_IMAGE) -@COND_sparc64_ieee1275_TRUE@cdboot_image_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_IMAGE) -DCDBOOT=1 -@COND_i386_pc_TRUE@cdboot_image_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_IMAGE) -@COND_sparc64_ieee1275_TRUE@cdboot_image_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_IMAGE) -@COND_i386_pc_TRUE@cdboot_image_OBJCOPYFLAGS = $(OBJCOPYFLAGS_IMAGE) -O binary -@COND_sparc64_ieee1275_TRUE@cdboot_image_OBJCOPYFLAGS = $(OBJCOPYFLAGS_IMAGE) -O binary -@COND_i386_pc_TRUE@pxeboot_image_SOURCES = boot/i386/pc/pxeboot.S -@COND_i386_pc_TRUE@nodist_pxeboot_image_SOURCES = ## platform nodist sources -@COND_i386_pc_TRUE@pxeboot_image_LDADD = -@COND_i386_pc_TRUE@pxeboot_image_CFLAGS = $(AM_CFLAGS) $(CFLAGS_IMAGE) -@COND_i386_pc_TRUE@pxeboot_image_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_IMAGE) $(TARGET_IMG_LDFLAGS) $(TARGET_IMG_BASE_LDOPT),0x7C00 -@COND_i386_pc_TRUE@pxeboot_image_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_IMAGE) -@COND_i386_pc_TRUE@pxeboot_image_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_IMAGE) -@COND_i386_pc_TRUE@pxeboot_image_OBJCOPYFLAGS = $(OBJCOPYFLAGS_IMAGE) -O binary -@COND_i386_pc_TRUE@diskboot_image_SOURCES = boot/i386/pc/diskboot.S -@COND_sparc64_ieee1275_TRUE@diskboot_image_SOURCES = boot/sparc64/ieee1275/diskboot.S -@COND_i386_pc_TRUE@nodist_diskboot_image_SOURCES = ## platform nodist sources -@COND_sparc64_ieee1275_TRUE@nodist_diskboot_image_SOURCES = ## platform nodist sources -@COND_i386_pc_TRUE@diskboot_image_LDADD = -@COND_sparc64_ieee1275_TRUE@diskboot_image_LDADD = -@COND_i386_pc_TRUE@diskboot_image_CFLAGS = $(AM_CFLAGS) $(CFLAGS_IMAGE) -@COND_sparc64_ieee1275_TRUE@diskboot_image_CFLAGS = $(AM_CFLAGS) $(CFLAGS_IMAGE) -@COND_i386_pc_TRUE@diskboot_image_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_IMAGE) $(TARGET_IMG_LDFLAGS) $(TARGET_IMG_BASE_LDOPT),0x8000 -@COND_sparc64_ieee1275_TRUE@diskboot_image_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_IMAGE) -Wl,-Ttext=0x4200 -@COND_i386_pc_TRUE@diskboot_image_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_IMAGE) -@COND_sparc64_ieee1275_TRUE@diskboot_image_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_IMAGE) -@COND_i386_pc_TRUE@diskboot_image_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_IMAGE) -@COND_sparc64_ieee1275_TRUE@diskboot_image_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_IMAGE) -@COND_i386_pc_TRUE@diskboot_image_OBJCOPYFLAGS = $(OBJCOPYFLAGS_IMAGE) -O binary -@COND_sparc64_ieee1275_TRUE@diskboot_image_OBJCOPYFLAGS = $(OBJCOPYFLAGS_IMAGE) -O binary -@COND_i386_pc_TRUE@lnxboot_image_SOURCES = boot/i386/pc/lnxboot.S -@COND_i386_pc_TRUE@nodist_lnxboot_image_SOURCES = ## platform nodist sources -@COND_i386_pc_TRUE@lnxboot_image_LDADD = -@COND_i386_pc_TRUE@lnxboot_image_CFLAGS = $(AM_CFLAGS) $(CFLAGS_IMAGE) -@COND_i386_pc_TRUE@lnxboot_image_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_IMAGE) $(TARGET_IMG_LDFLAGS) $(TARGET_IMG_BASE_LDOPT),0x6000 -@COND_i386_pc_TRUE@lnxboot_image_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_IMAGE) -@COND_i386_pc_TRUE@lnxboot_image_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_IMAGE) -@COND_i386_pc_TRUE@lnxboot_image_OBJCOPYFLAGS = $(OBJCOPYFLAGS_IMAGE) -O binary -@COND_mips_arc_TRUE@xz_decompress_image_SOURCES = boot/mips/startup_raw.S boot/decompressor/minilib.c boot/decompressor/xz.c lib/xzembed/xz_dec_bcj.c lib/xzembed/xz_dec_lzma2.c lib/xzembed/xz_dec_stream.c kern/compiler-rt.c -@COND_mips_loongson_TRUE@xz_decompress_image_SOURCES = boot/mips/startup_raw.S boot/decompressor/minilib.c boot/decompressor/xz.c lib/xzembed/xz_dec_bcj.c lib/xzembed/xz_dec_lzma2.c lib/xzembed/xz_dec_stream.c kern/compiler-rt.c -@COND_mips_qemu_mips_TRUE@xz_decompress_image_SOURCES = boot/mips/startup_raw.S boot/decompressor/minilib.c boot/decompressor/xz.c lib/xzembed/xz_dec_bcj.c lib/xzembed/xz_dec_lzma2.c lib/xzembed/xz_dec_stream.c kern/compiler-rt.c -@COND_mips_arc_TRUE@nodist_xz_decompress_image_SOURCES = ## platform nodist sources -@COND_mips_loongson_TRUE@nodist_xz_decompress_image_SOURCES = ## platform nodist sources -@COND_mips_qemu_mips_TRUE@nodist_xz_decompress_image_SOURCES = ## platform nodist sources -@COND_mips_arc_TRUE@xz_decompress_image_LDADD = -@COND_mips_loongson_TRUE@xz_decompress_image_LDADD = -@COND_mips_qemu_mips_TRUE@xz_decompress_image_LDADD = -@COND_mips_arc_TRUE@xz_decompress_image_CFLAGS = $(AM_CFLAGS) $(CFLAGS_IMAGE) -Wno-unreachable-code -@COND_mips_loongson_TRUE@xz_decompress_image_CFLAGS = $(AM_CFLAGS) $(CFLAGS_IMAGE) -Wno-unreachable-code -@COND_mips_qemu_mips_TRUE@xz_decompress_image_CFLAGS = $(AM_CFLAGS) $(CFLAGS_IMAGE) -Wno-unreachable-code -@COND_mips_arc_TRUE@xz_decompress_image_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_IMAGE) -Wl,-Ttext,$(TARGET_DECOMPRESSOR_LINK_ADDR) -@COND_mips_loongson_TRUE@xz_decompress_image_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_IMAGE) -Wl,-Ttext,$(TARGET_DECOMPRESSOR_LINK_ADDR) -@COND_mips_qemu_mips_TRUE@xz_decompress_image_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_IMAGE) -Wl,-Ttext,$(TARGET_DECOMPRESSOR_LINK_ADDR) -@COND_mips_arc_TRUE@xz_decompress_image_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_IMAGE) -I$(srcdir)/lib/posix_wrap -I$(srcdir)/lib/xzembed -DGRUB_EMBED_DECOMPRESSOR=1 -@COND_mips_loongson_TRUE@xz_decompress_image_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_IMAGE) -I$(srcdir)/lib/posix_wrap -I$(srcdir)/lib/xzembed -DGRUB_EMBED_DECOMPRESSOR=1 -@COND_mips_qemu_mips_TRUE@xz_decompress_image_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_IMAGE) -I$(srcdir)/lib/posix_wrap -I$(srcdir)/lib/xzembed -DGRUB_EMBED_DECOMPRESSOR=1 -@COND_mips_arc_TRUE@xz_decompress_image_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_IMAGE) -@COND_mips_loongson_TRUE@xz_decompress_image_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_IMAGE) -@COND_mips_qemu_mips_TRUE@xz_decompress_image_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_IMAGE) -@COND_mips_arc_TRUE@xz_decompress_image_OBJCOPYFLAGS = $(OBJCOPYFLAGS_IMAGE) -O binary -@COND_mips_loongson_TRUE@xz_decompress_image_OBJCOPYFLAGS = $(OBJCOPYFLAGS_IMAGE) -O binary -@COND_mips_qemu_mips_TRUE@xz_decompress_image_OBJCOPYFLAGS = $(OBJCOPYFLAGS_IMAGE) -O binary -@COND_mips_arc_TRUE@none_decompress_image_SOURCES = boot/mips/startup_raw.S boot/decompressor/none.c -@COND_mips_loongson_TRUE@none_decompress_image_SOURCES = boot/mips/startup_raw.S boot/decompressor/none.c -@COND_mips_qemu_mips_TRUE@none_decompress_image_SOURCES = boot/mips/startup_raw.S boot/decompressor/none.c -@COND_mips_arc_TRUE@nodist_none_decompress_image_SOURCES = ## platform nodist sources -@COND_mips_loongson_TRUE@nodist_none_decompress_image_SOURCES = ## platform nodist sources -@COND_mips_qemu_mips_TRUE@nodist_none_decompress_image_SOURCES = ## platform nodist sources -@COND_mips_arc_TRUE@none_decompress_image_LDADD = -@COND_mips_loongson_TRUE@none_decompress_image_LDADD = -@COND_mips_qemu_mips_TRUE@none_decompress_image_LDADD = -@COND_mips_arc_TRUE@none_decompress_image_CFLAGS = $(AM_CFLAGS) $(CFLAGS_IMAGE) -@COND_mips_loongson_TRUE@none_decompress_image_CFLAGS = $(AM_CFLAGS) $(CFLAGS_IMAGE) -@COND_mips_qemu_mips_TRUE@none_decompress_image_CFLAGS = $(AM_CFLAGS) $(CFLAGS_IMAGE) -@COND_mips_arc_TRUE@none_decompress_image_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_IMAGE) -Wl,-Ttext,$(TARGET_DECOMPRESSOR_LINK_ADDR) -@COND_mips_loongson_TRUE@none_decompress_image_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_IMAGE) -Wl,-Ttext,$(TARGET_DECOMPRESSOR_LINK_ADDR) -@COND_mips_qemu_mips_TRUE@none_decompress_image_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_IMAGE) -Wl,-Ttext,$(TARGET_DECOMPRESSOR_LINK_ADDR) -@COND_mips_arc_TRUE@none_decompress_image_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_IMAGE) -DGRUB_EMBED_DECOMPRESSOR=1 -@COND_mips_loongson_TRUE@none_decompress_image_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_IMAGE) -DGRUB_EMBED_DECOMPRESSOR=1 -@COND_mips_qemu_mips_TRUE@none_decompress_image_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_IMAGE) -DGRUB_EMBED_DECOMPRESSOR=1 -@COND_mips_arc_TRUE@none_decompress_image_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_IMAGE) -@COND_mips_loongson_TRUE@none_decompress_image_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_IMAGE) -@COND_mips_qemu_mips_TRUE@none_decompress_image_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_IMAGE) -@COND_mips_arc_TRUE@none_decompress_image_OBJCOPYFLAGS = $(OBJCOPYFLAGS_IMAGE) -O binary -@COND_mips_loongson_TRUE@none_decompress_image_OBJCOPYFLAGS = $(OBJCOPYFLAGS_IMAGE) -O binary -@COND_mips_qemu_mips_TRUE@none_decompress_image_OBJCOPYFLAGS = $(OBJCOPYFLAGS_IMAGE) -O binary -@COND_i386_pc_TRUE@lzma_decompress_image_SOURCES = boot/i386/pc/startup_raw.S -@COND_i386_pc_TRUE@nodist_lzma_decompress_image_SOURCES = rs_decoder.h ## platform nodist sources -@COND_i386_pc_TRUE@lzma_decompress_image_LDADD = -@COND_i386_pc_TRUE@lzma_decompress_image_CFLAGS = $(AM_CFLAGS) $(CFLAGS_IMAGE) -@COND_i386_pc_TRUE@lzma_decompress_image_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_IMAGE) $(TARGET_IMG_LDFLAGS) $(TARGET_IMG_BASE_LDOPT),0x8200 -@COND_i386_pc_TRUE@lzma_decompress_image_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_IMAGE) -@COND_i386_pc_TRUE@lzma_decompress_image_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_IMAGE) -@COND_i386_pc_TRUE@lzma_decompress_image_OBJCOPYFLAGS = $(OBJCOPYFLAGS_IMAGE) -O binary -@COND_mips_loongson_TRUE@fwstart_image_SOURCES = boot/mips/loongson/fwstart.S -@COND_mips_loongson_TRUE@nodist_fwstart_image_SOURCES = ## platform nodist sources -@COND_mips_loongson_TRUE@fwstart_image_LDADD = -@COND_mips_loongson_TRUE@fwstart_image_CFLAGS = $(AM_CFLAGS) $(CFLAGS_IMAGE) -@COND_mips_loongson_TRUE@fwstart_image_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_IMAGE) -Wl,-N,-S,-Ttext,0xbfc00000,-Bstatic -@COND_mips_loongson_TRUE@fwstart_image_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_IMAGE) -@COND_mips_loongson_TRUE@fwstart_image_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_IMAGE) -@COND_mips_loongson_TRUE@fwstart_image_OBJCOPYFLAGS = $(OBJCOPYFLAGS_IMAGE) -O binary -@COND_mips_loongson_TRUE@fwstart_fuloong2f_image_SOURCES = boot/mips/loongson/fuloong2f.S -@COND_mips_loongson_TRUE@nodist_fwstart_fuloong2f_image_SOURCES = ## platform nodist sources -@COND_mips_loongson_TRUE@fwstart_fuloong2f_image_LDADD = -@COND_mips_loongson_TRUE@fwstart_fuloong2f_image_CFLAGS = $(AM_CFLAGS) $(CFLAGS_IMAGE) -@COND_mips_loongson_TRUE@fwstart_fuloong2f_image_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_IMAGE) -Wl,-N,-S,-Ttext,0xbfc00000,-Bstatic -@COND_mips_loongson_TRUE@fwstart_fuloong2f_image_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_IMAGE) -@COND_mips_loongson_TRUE@fwstart_fuloong2f_image_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_IMAGE) -@COND_mips_loongson_TRUE@fwstart_fuloong2f_image_OBJCOPYFLAGS = $(OBJCOPYFLAGS_IMAGE) -O binary -@COND_emu_TRUE@grub_emu_SOURCES = kern/emu/full.c -@COND_emu_TRUE@nodist_grub_emu_SOURCES = grub_emu_init.c -@COND_emu_TRUE@grub_emu_LDADD = kernel.exec$(EXEEXT) $(MODULE_FILES) lib/gnulib/libgnu.a $(LIBINTL) $(LIBUTIL) $(LIBSDL) $(LIBUSB) $(LIBPCIACCESS) $(LIBDEVMAPPER) $(LIBZFS) $(LIBNVPAIR) $(LIBGEOM) -@COND_emu_TRUE@grub_emu_CFLAGS = $(AM_CFLAGS) $(CFLAGS_PROGRAM) -@COND_emu_TRUE@grub_emu_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_PROGRAM) -@COND_emu_TRUE@grub_emu_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_PROGRAM) -@COND_emu_TRUE@grub_emu_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_PROGRAM) -@COND_emu_TRUE@grub_emu_lite_SOURCES = kern/emu/lite.c -@COND_emu_TRUE@nodist_grub_emu_lite_SOURCES = symlist.c -@COND_emu_TRUE@grub_emu_lite_LDADD = kernel.exec$(EXEEXT) lib/gnulib/libgnu.a $(LIBINTL) $(LIBUTIL) $(LIBSDL) $(LIBUSB) $(LIBPCIACCESS) $(LIBDEVMAPPER) $(LIBZFS) $(LIBNVPAIR) $(LIBGEOM) -@COND_emu_TRUE@grub_emu_lite_CFLAGS = $(AM_CFLAGS) $(CFLAGS_PROGRAM) -@COND_emu_TRUE@grub_emu_lite_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_PROGRAM) -@COND_emu_TRUE@grub_emu_lite_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_PROGRAM) -@COND_emu_TRUE@grub_emu_lite_CCASFLAGS = $(AM_CCASFLAGS) $(CCASFLAGS_PROGRAM) -@COND_HAVE_ASM_USCORE_FALSE@ASM_PREFIX = -@COND_HAVE_ASM_USCORE_TRUE@ASM_PREFIX = _ -windowsdir = $(top_builddir)/$(PACKAGE)-$(VERSION)-for-windows -all: $(BUILT_SOURCES) - $(MAKE) $(AM_MAKEFLAGS) all-am - -.SUFFIXES: -.SUFFIXES: .S .c .log .o .obj .test .test$(EXEEXT) .trs -$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(top_srcdir)/conf/Makefile.common $(srcdir)/Makefile.core.am $(am__configure_deps) - @for dep in $?; do \ - case '$(am__configure_deps)' in \ - *$$dep*) \ - ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \ - && { if test -f $@; then exit 0; else break; fi; }; \ - exit 1;; \ - esac; \ - done; \ - echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu grub-core/Makefile'; \ - $(am__cd) $(top_srcdir) && \ - $(AUTOMAKE) --gnu grub-core/Makefile -Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status - @case '$?' in \ - *config.status*) \ - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ - *) \ - echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ - esac; -$(top_srcdir)/conf/Makefile.common $(srcdir)/Makefile.core.am $(am__empty): - -$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh - -$(top_srcdir)/configure: $(am__configure_deps) - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh -$(ACLOCAL_M4): $(am__aclocal_m4_deps) - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh -$(am__aclocal_m4_deps): - -clean-noinstLIBRARIES: - -test -z "$(noinst_LIBRARIES)" || rm -f $(noinst_LIBRARIES) -install-binPROGRAMS: $(bin_PROGRAMS) - @$(NORMAL_INSTALL) - @list='$(bin_PROGRAMS)'; test -n "$(bindir)" || list=; \ - if test -n "$$list"; then \ - echo " $(MKDIR_P) '$(DESTDIR)$(bindir)'"; \ - $(MKDIR_P) "$(DESTDIR)$(bindir)" || exit 1; \ - fi; \ - for p in $$list; do echo "$$p $$p"; done | \ - sed 's/$(EXEEXT)$$//' | \ - while read p p1; do if test -f $$p \ - ; then echo "$$p"; echo "$$p"; else :; fi; \ - done | \ - sed -e 'p;s,.*/,,;n;h' \ - -e 's|.*|.|' \ - -e 'p;x;s,.*/,,;s/$(EXEEXT)$$//;$(transform);s/$$/$(EXEEXT)/' | \ - sed 'N;N;N;s,\n, ,g' | \ - $(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1 } \ - { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \ - if ($$2 == $$4) files[d] = files[d] " " $$1; \ - else { print "f", $$3 "/" $$4, $$1; } } \ - END { for (d in files) print "f", d, files[d] }' | \ - while read type dir files; do \ - if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \ - test -z "$$files" || { \ - echo " $(INSTALL_PROGRAM_ENV) $(INSTALL_PROGRAM) $$files '$(DESTDIR)$(bindir)$$dir'"; \ - $(INSTALL_PROGRAM_ENV) $(INSTALL_PROGRAM) $$files "$(DESTDIR)$(bindir)$$dir" || exit $$?; \ - } \ - ; done - -uninstall-binPROGRAMS: - @$(NORMAL_UNINSTALL) - @list='$(bin_PROGRAMS)'; test -n "$(bindir)" || list=; \ - files=`for p in $$list; do echo "$$p"; done | \ - sed -e 'h;s,^.*/,,;s/$(EXEEXT)$$//;$(transform)' \ - -e 's/$$/$(EXEEXT)/' \ - `; \ - test -n "$$list" || exit 0; \ - echo " ( cd '$(DESTDIR)$(bindir)' && rm -f" $$files ")"; \ - cd "$(DESTDIR)$(bindir)" && rm -f $$files - -clean-binPROGRAMS: - -test -z "$(bin_PROGRAMS)" || rm -f $(bin_PROGRAMS) - -clean-checkPROGRAMS: - -test -z "$(check_PROGRAMS)" || rm -f $(check_PROGRAMS) - -clean-noinstPROGRAMS: - -test -z "$(noinst_PROGRAMS)" || rm -f $(noinst_PROGRAMS) -install-platformPROGRAMS: $(platform_PROGRAMS) - @$(NORMAL_INSTALL) - @list='$(platform_PROGRAMS)'; test -n "$(platformdir)" || list=; \ - if test -n "$$list"; then \ - echo " $(MKDIR_P) '$(DESTDIR)$(platformdir)'"; \ - $(MKDIR_P) "$(DESTDIR)$(platformdir)" || exit 1; \ - fi; \ - for p in $$list; do echo "$$p $$p"; done | \ - sed 's/$(EXEEXT)$$//' | \ - while read p p1; do if test -f $$p \ - ; then echo "$$p"; echo "$$p"; else :; fi; \ - done | \ - sed -e 'p;s,.*/,,;n;h' \ - -e 's|.*|.|' \ - -e 'p;x;s,.*/,,;s/$(EXEEXT)$$//;$(transform);s/$$/$(EXEEXT)/' | \ - sed 'N;N;N;s,\n, ,g' | \ - $(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1 } \ - { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \ - if ($$2 == $$4) files[d] = files[d] " " $$1; \ - else { print "f", $$3 "/" $$4, $$1; } } \ - END { for (d in files) print "f", d, files[d] }' | \ - while read type dir files; do \ - if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \ - test -z "$$files" || { \ - echo " $(INSTALL_PROGRAM_ENV) $(INSTALL_PROGRAM) $$files '$(DESTDIR)$(platformdir)$$dir'"; \ - $(INSTALL_PROGRAM_ENV) $(INSTALL_PROGRAM) $$files "$(DESTDIR)$(platformdir)$$dir" || exit $$?; \ - } \ - ; done - -uninstall-platformPROGRAMS: - @$(NORMAL_UNINSTALL) - @list='$(platform_PROGRAMS)'; test -n "$(platformdir)" || list=; \ - files=`for p in $$list; do echo "$$p"; done | \ - sed -e 'h;s,^.*/,,;s/$(EXEEXT)$$//;$(transform)' \ - -e 's/$$/$(EXEEXT)/' \ - `; \ - test -n "$$list" || exit 0; \ - echo " ( cd '$(DESTDIR)$(platformdir)' && rm -f" $$files ")"; \ - cd "$(DESTDIR)$(platformdir)" && rm -f $$files - -clean-platformPROGRAMS: - -test -z "$(platform_PROGRAMS)" || rm -f $(platform_PROGRAMS) -install-sbinPROGRAMS: $(sbin_PROGRAMS) - @$(NORMAL_INSTALL) - @list='$(sbin_PROGRAMS)'; test -n "$(sbindir)" || list=; \ - if test -n "$$list"; then \ - echo " $(MKDIR_P) '$(DESTDIR)$(sbindir)'"; \ - $(MKDIR_P) "$(DESTDIR)$(sbindir)" || exit 1; \ - fi; \ - for p in $$list; do echo "$$p $$p"; done | \ - sed 's/$(EXEEXT)$$//' | \ - while read p p1; do if test -f $$p \ - ; then echo "$$p"; echo "$$p"; else :; fi; \ - done | \ - sed -e 'p;s,.*/,,;n;h' \ - -e 's|.*|.|' \ - -e 'p;x;s,.*/,,;s/$(EXEEXT)$$//;$(transform);s/$$/$(EXEEXT)/' | \ - sed 'N;N;N;s,\n, ,g' | \ - $(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1 } \ - { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \ - if ($$2 == $$4) files[d] = files[d] " " $$1; \ - else { print "f", $$3 "/" $$4, $$1; } } \ - END { for (d in files) print "f", d, files[d] }' | \ - while read type dir files; do \ - if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \ - test -z "$$files" || { \ - echo " $(INSTALL_PROGRAM_ENV) $(INSTALL_PROGRAM) $$files '$(DESTDIR)$(sbindir)$$dir'"; \ - $(INSTALL_PROGRAM_ENV) $(INSTALL_PROGRAM) $$files "$(DESTDIR)$(sbindir)$$dir" || exit $$?; \ - } \ - ; done - -uninstall-sbinPROGRAMS: - @$(NORMAL_UNINSTALL) - @list='$(sbin_PROGRAMS)'; test -n "$(sbindir)" || list=; \ - files=`for p in $$list; do echo "$$p"; done | \ - sed -e 'h;s,^.*/,,;s/$(EXEEXT)$$//;$(transform)' \ - -e 's/$$/$(EXEEXT)/' \ - `; \ - test -n "$$list" || exit 0; \ - echo " ( cd '$(DESTDIR)$(sbindir)' && rm -f" $$files ")"; \ - cd "$(DESTDIR)$(sbindir)" && rm -f $$files - -clean-sbinPROGRAMS: - -test -z "$(sbin_PROGRAMS)" || rm -f $(sbin_PROGRAMS) -commands/$(am__dirstamp): - @$(MKDIR_P) commands - @: > commands/$(am__dirstamp) -commands/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) commands/$(DEPDIR) - @: > commands/$(DEPDIR)/$(am__dirstamp) -commands/acpi_module-acpi.$(OBJEXT): commands/$(am__dirstamp) \ - commands/$(DEPDIR)/$(am__dirstamp) -kern/$(am__dirstamp): - @$(MKDIR_P) kern - @: > kern/$(am__dirstamp) -kern/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) kern/$(DEPDIR) - @: > kern/$(DEPDIR)/$(am__dirstamp) -kern/acpi_module-acpi.$(OBJEXT): kern/$(am__dirstamp) \ - kern/$(DEPDIR)/$(am__dirstamp) -kern/i386/pc/$(am__dirstamp): - @$(MKDIR_P) kern/i386/pc - @: > kern/i386/pc/$(am__dirstamp) -kern/i386/pc/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) kern/i386/pc/$(DEPDIR) - @: > kern/i386/pc/$(DEPDIR)/$(am__dirstamp) -kern/i386/pc/acpi_module-acpi.$(OBJEXT): kern/i386/pc/$(am__dirstamp) \ - kern/i386/pc/$(DEPDIR)/$(am__dirstamp) - -acpi.module$(EXEEXT): $(acpi_module_OBJECTS) $(acpi_module_DEPENDENCIES) $(EXTRA_acpi_module_DEPENDENCIES) - @rm -f acpi.module$(EXEEXT) - $(AM_V_CCLD)$(acpi_module_LINK) $(acpi_module_OBJECTS) $(acpi_module_LDADD) $(LIBS) -lib/$(am__dirstamp): - @$(MKDIR_P) lib - @: > lib/$(am__dirstamp) -lib/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) lib/$(DEPDIR) - @: > lib/$(DEPDIR)/$(am__dirstamp) -lib/adler32_module-adler32.$(OBJEXT): lib/$(am__dirstamp) \ - lib/$(DEPDIR)/$(am__dirstamp) - -adler32.module$(EXEEXT): $(adler32_module_OBJECTS) $(adler32_module_DEPENDENCIES) $(EXTRA_adler32_module_DEPENDENCIES) - @rm -f adler32.module$(EXEEXT) - $(AM_V_CCLD)$(adler32_module_LINK) $(adler32_module_OBJECTS) $(adler32_module_LDADD) $(LIBS) -fs/$(am__dirstamp): - @$(MKDIR_P) fs - @: > fs/$(am__dirstamp) -fs/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) fs/$(DEPDIR) - @: > fs/$(DEPDIR)/$(am__dirstamp) -fs/affs_module-affs.$(OBJEXT): fs/$(am__dirstamp) \ - fs/$(DEPDIR)/$(am__dirstamp) - -affs.module$(EXEEXT): $(affs_module_OBJECTS) $(affs_module_DEPENDENCIES) $(EXTRA_affs_module_DEPENDENCIES) - @rm -f affs.module$(EXEEXT) - $(AM_V_CCLD)$(affs_module_LINK) $(affs_module_OBJECTS) $(affs_module_LDADD) $(LIBS) -fs/afs_module-afs.$(OBJEXT): fs/$(am__dirstamp) \ - fs/$(DEPDIR)/$(am__dirstamp) - -afs.module$(EXEEXT): $(afs_module_OBJECTS) $(afs_module_DEPENDENCIES) $(EXTRA_afs_module_DEPENDENCIES) - @rm -f afs.module$(EXEEXT) - $(AM_V_CCLD)$(afs_module_LINK) $(afs_module_OBJECTS) $(afs_module_LDADD) $(LIBS) -disk/$(am__dirstamp): - @$(MKDIR_P) disk - @: > disk/$(am__dirstamp) -disk/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) disk/$(DEPDIR) - @: > disk/$(DEPDIR)/$(am__dirstamp) -disk/ahci_module-ahci.$(OBJEXT): disk/$(am__dirstamp) \ - disk/$(DEPDIR)/$(am__dirstamp) - -ahci.module$(EXEEXT): $(ahci_module_OBJECTS) $(ahci_module_DEPENDENCIES) $(EXTRA_ahci_module_DEPENDENCIES) - @rm -f ahci.module$(EXEEXT) - $(AM_V_CCLD)$(ahci_module_LINK) $(ahci_module_OBJECTS) $(ahci_module_LDADD) $(LIBS) -lib/all_video_module-fake_module.$(OBJEXT): lib/$(am__dirstamp) \ - lib/$(DEPDIR)/$(am__dirstamp) - -all_video.module$(EXEEXT): $(all_video_module_OBJECTS) $(all_video_module_DEPENDENCIES) $(EXTRA_all_video_module_DEPENDENCIES) - @rm -f all_video.module$(EXEEXT) - $(AM_V_CCLD)$(all_video_module_LINK) $(all_video_module_OBJECTS) $(all_video_module_LDADD) $(LIBS) -loader/$(am__dirstamp): - @$(MKDIR_P) loader - @: > loader/$(am__dirstamp) -loader/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) loader/$(DEPDIR) - @: > loader/$(DEPDIR)/$(am__dirstamp) -loader/aout_module-aout.$(OBJEXT): loader/$(am__dirstamp) \ - loader/$(DEPDIR)/$(am__dirstamp) - -aout.module$(EXEEXT): $(aout_module_OBJECTS) $(aout_module_DEPENDENCIES) $(EXTRA_aout_module_DEPENDENCIES) - @rm -f aout.module$(EXEEXT) - $(AM_V_CCLD)$(aout_module_LINK) $(aout_module_OBJECTS) $(aout_module_LDADD) $(LIBS) -loader/efi/$(am__dirstamp): - @$(MKDIR_P) loader/efi - @: > loader/efi/$(am__dirstamp) -loader/efi/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) loader/efi/$(DEPDIR) - @: > loader/efi/$(DEPDIR)/$(am__dirstamp) -loader/efi/appleldr_module-appleloader.$(OBJEXT): \ - loader/efi/$(am__dirstamp) \ - loader/efi/$(DEPDIR)/$(am__dirstamp) - -appleldr.module$(EXEEXT): $(appleldr_module_OBJECTS) $(appleldr_module_DEPENDENCIES) $(EXTRA_appleldr_module_DEPENDENCIES) - @rm -f appleldr.module$(EXEEXT) - $(AM_V_CCLD)$(appleldr_module_LINK) $(appleldr_module_OBJECTS) $(appleldr_module_LDADD) $(LIBS) -fs/archelp_module-archelp.$(OBJEXT): fs/$(am__dirstamp) \ - fs/$(DEPDIR)/$(am__dirstamp) - -archelp.module$(EXEEXT): $(archelp_module_OBJECTS) $(archelp_module_DEPENDENCIES) $(EXTRA_archelp_module_DEPENDENCIES) - @rm -f archelp.module$(EXEEXT) - $(AM_V_CCLD)$(archelp_module_LINK) $(archelp_module_OBJECTS) $(archelp_module_LDADD) $(LIBS) -term/$(am__dirstamp): - @$(MKDIR_P) term - @: > term/$(am__dirstamp) -term/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) term/$(DEPDIR) - @: > term/$(DEPDIR)/$(am__dirstamp) -term/at_keyboard_module-at_keyboard.$(OBJEXT): term/$(am__dirstamp) \ - term/$(DEPDIR)/$(am__dirstamp) -term/at_keyboard_module-ps2.$(OBJEXT): term/$(am__dirstamp) \ - term/$(DEPDIR)/$(am__dirstamp) - -at_keyboard.module$(EXEEXT): $(at_keyboard_module_OBJECTS) $(at_keyboard_module_DEPENDENCIES) $(EXTRA_at_keyboard_module_DEPENDENCIES) - @rm -f at_keyboard.module$(EXEEXT) - $(AM_V_CCLD)$(at_keyboard_module_LINK) $(at_keyboard_module_OBJECTS) $(at_keyboard_module_LDADD) $(LIBS) -disk/ata_module-ata.$(OBJEXT): disk/$(am__dirstamp) \ - disk/$(DEPDIR)/$(am__dirstamp) - -ata.module$(EXEEXT): $(ata_module_OBJECTS) $(ata_module_DEPENDENCIES) $(EXTRA_ata_module_DEPENDENCIES) - @rm -f ata.module$(EXEEXT) - $(AM_V_CCLD)$(ata_module_LINK) $(ata_module_OBJECTS) $(ata_module_LDADD) $(LIBS) -lib/i386/$(am__dirstamp): - @$(MKDIR_P) lib/i386 - @: > lib/i386/$(am__dirstamp) -lib/i386/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) lib/i386/$(DEPDIR) - @: > lib/i386/$(DEPDIR)/$(am__dirstamp) -lib/i386/backtrace_module-backtrace.$(OBJEXT): \ - lib/i386/$(am__dirstamp) lib/i386/$(DEPDIR)/$(am__dirstamp) -lib/backtrace_module-backtrace.$(OBJEXT): lib/$(am__dirstamp) \ - lib/$(DEPDIR)/$(am__dirstamp) - -backtrace.module$(EXEEXT): $(backtrace_module_OBJECTS) $(backtrace_module_DEPENDENCIES) $(EXTRA_backtrace_module_DEPENDENCIES) - @rm -f backtrace.module$(EXEEXT) - $(AM_V_CCLD)$(backtrace_module_LINK) $(backtrace_module_OBJECTS) $(backtrace_module_LDADD) $(LIBS) -fs/bfs_module-bfs.$(OBJEXT): fs/$(am__dirstamp) \ - fs/$(DEPDIR)/$(am__dirstamp) - -bfs.module$(EXEEXT): $(bfs_module_OBJECTS) $(bfs_module_DEPENDENCIES) $(EXTRA_bfs_module_DEPENDENCIES) - @rm -f bfs.module$(EXEEXT) - $(AM_V_CCLD)$(bfs_module_LINK) $(bfs_module_OBJECTS) $(bfs_module_LDADD) $(LIBS) -disk/i386/pc/$(am__dirstamp): - @$(MKDIR_P) disk/i386/pc - @: > disk/i386/pc/$(am__dirstamp) -disk/i386/pc/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) disk/i386/pc/$(DEPDIR) - @: > disk/i386/pc/$(DEPDIR)/$(am__dirstamp) -disk/i386/pc/biosdisk_module-biosdisk.$(OBJEXT): \ - disk/i386/pc/$(am__dirstamp) \ - disk/i386/pc/$(DEPDIR)/$(am__dirstamp) - -biosdisk.module$(EXEEXT): $(biosdisk_module_OBJECTS) $(biosdisk_module_DEPENDENCIES) $(EXTRA_biosdisk_module_DEPENDENCIES) - @rm -f biosdisk.module$(EXEEXT) - $(AM_V_CCLD)$(biosdisk_module_LINK) $(biosdisk_module_OBJECTS) $(biosdisk_module_LDADD) $(LIBS) -video/$(am__dirstamp): - @$(MKDIR_P) video - @: > video/$(am__dirstamp) -video/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) video/$(DEPDIR) - @: > video/$(DEPDIR)/$(am__dirstamp) -video/bitmap_module-bitmap.$(OBJEXT): video/$(am__dirstamp) \ - video/$(DEPDIR)/$(am__dirstamp) - -bitmap.module$(EXEEXT): $(bitmap_module_OBJECTS) $(bitmap_module_DEPENDENCIES) $(EXTRA_bitmap_module_DEPENDENCIES) - @rm -f bitmap.module$(EXEEXT) - $(AM_V_CCLD)$(bitmap_module_LINK) $(bitmap_module_OBJECTS) $(bitmap_module_LDADD) $(LIBS) -video/bitmap_scale_module-bitmap_scale.$(OBJEXT): \ - video/$(am__dirstamp) video/$(DEPDIR)/$(am__dirstamp) - -bitmap_scale.module$(EXEEXT): $(bitmap_scale_module_OBJECTS) $(bitmap_scale_module_DEPENDENCIES) $(EXTRA_bitmap_scale_module_DEPENDENCIES) - @rm -f bitmap_scale.module$(EXEEXT) - $(AM_V_CCLD)$(bitmap_scale_module_LINK) $(bitmap_scale_module_OBJECTS) $(bitmap_scale_module_LDADD) $(LIBS) -commands/blocklist_module-blocklist.$(OBJEXT): \ - commands/$(am__dirstamp) commands/$(DEPDIR)/$(am__dirstamp) - -blocklist.module$(EXEEXT): $(blocklist_module_OBJECTS) $(blocklist_module_DEPENDENCIES) $(EXTRA_blocklist_module_DEPENDENCIES) - @rm -f blocklist.module$(EXEEXT) - $(AM_V_CCLD)$(blocklist_module_LINK) $(blocklist_module_OBJECTS) $(blocklist_module_LDADD) $(LIBS) -boot/i386/pc/$(am__dirstamp): - @$(MKDIR_P) boot/i386/pc - @: > boot/i386/pc/$(am__dirstamp) -boot/i386/pc/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) boot/i386/pc/$(DEPDIR) - @: > boot/i386/pc/$(DEPDIR)/$(am__dirstamp) -boot/i386/pc/boot_image-boot.$(OBJEXT): boot/i386/pc/$(am__dirstamp) \ - boot/i386/pc/$(DEPDIR)/$(am__dirstamp) -boot/i386/qemu/$(am__dirstamp): - @$(MKDIR_P) boot/i386/qemu - @: > boot/i386/qemu/$(am__dirstamp) -boot/i386/qemu/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) boot/i386/qemu/$(DEPDIR) - @: > boot/i386/qemu/$(DEPDIR)/$(am__dirstamp) -boot/i386/qemu/boot_image-boot.$(OBJEXT): \ - boot/i386/qemu/$(am__dirstamp) \ - boot/i386/qemu/$(DEPDIR)/$(am__dirstamp) -boot/sparc64/ieee1275/$(am__dirstamp): - @$(MKDIR_P) boot/sparc64/ieee1275 - @: > boot/sparc64/ieee1275/$(am__dirstamp) -boot/sparc64/ieee1275/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) boot/sparc64/ieee1275/$(DEPDIR) - @: > boot/sparc64/ieee1275/$(DEPDIR)/$(am__dirstamp) -boot/sparc64/ieee1275/boot_image-boot.$(OBJEXT): \ - boot/sparc64/ieee1275/$(am__dirstamp) \ - boot/sparc64/ieee1275/$(DEPDIR)/$(am__dirstamp) - -boot.image$(EXEEXT): $(boot_image_OBJECTS) $(boot_image_DEPENDENCIES) $(EXTRA_boot_image_DEPENDENCIES) - @rm -f boot.image$(EXEEXT) - $(AM_V_CCLD)$(boot_image_LINK) $(boot_image_OBJECTS) $(boot_image_LDADD) $(LIBS) -commands/boot_module-boot.$(OBJEXT): commands/$(am__dirstamp) \ - commands/$(DEPDIR)/$(am__dirstamp) -lib/i386/pc/$(am__dirstamp): - @$(MKDIR_P) lib/i386/pc - @: > lib/i386/pc/$(am__dirstamp) -lib/i386/pc/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) lib/i386/pc/$(DEPDIR) - @: > lib/i386/pc/$(DEPDIR)/$(am__dirstamp) -lib/i386/pc/boot_module-biosnum.$(OBJEXT): \ - lib/i386/pc/$(am__dirstamp) \ - lib/i386/pc/$(DEPDIR)/$(am__dirstamp) - -boot.module$(EXEEXT): $(boot_module_OBJECTS) $(boot_module_DEPENDENCIES) $(EXTRA_boot_module_DEPENDENCIES) - @rm -f boot.module$(EXEEXT) - $(AM_V_CCLD)$(boot_module_LINK) $(boot_module_OBJECTS) $(boot_module_LDADD) $(LIBS) -boot/i386/pc/boot_hybrid_image-boot.$(OBJEXT): \ - boot/i386/pc/$(am__dirstamp) \ - boot/i386/pc/$(DEPDIR)/$(am__dirstamp) - -boot_hybrid.image$(EXEEXT): $(boot_hybrid_image_OBJECTS) $(boot_hybrid_image_DEPENDENCIES) $(EXTRA_boot_hybrid_image_DEPENDENCIES) - @rm -f boot_hybrid.image$(EXEEXT) - $(AM_V_CCLD)$(boot_hybrid_image_LINK) $(boot_hybrid_image_OBJECTS) $(boot_hybrid_image_LDADD) $(LIBS) -commands/boottime_module-boottime.$(OBJEXT): commands/$(am__dirstamp) \ - commands/$(DEPDIR)/$(am__dirstamp) - -boottime.module$(EXEEXT): $(boottime_module_OBJECTS) $(boottime_module_DEPENDENCIES) $(EXTRA_boottime_module_DEPENDENCIES) - @rm -f boottime.module$(EXEEXT) - $(AM_V_CCLD)$(boottime_module_LINK) $(boottime_module_OBJECTS) $(boottime_module_LDADD) $(LIBS) -loader/i386/$(am__dirstamp): - @$(MKDIR_P) loader/i386 - @: > loader/i386/$(am__dirstamp) -loader/i386/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) loader/i386/$(DEPDIR) - @: > loader/i386/$(DEPDIR)/$(am__dirstamp) -loader/i386/bsd_module-bsd.$(OBJEXT): loader/i386/$(am__dirstamp) \ - loader/i386/$(DEPDIR)/$(am__dirstamp) -loader/i386/bsd_module-bsd32.$(OBJEXT): loader/i386/$(am__dirstamp) \ - loader/i386/$(DEPDIR)/$(am__dirstamp) -loader/i386/bsd_module-bsd64.$(OBJEXT): loader/i386/$(am__dirstamp) \ - loader/i386/$(DEPDIR)/$(am__dirstamp) - -bsd.module$(EXEEXT): $(bsd_module_OBJECTS) $(bsd_module_DEPENDENCIES) $(EXTRA_bsd_module_DEPENDENCIES) - @rm -f bsd.module$(EXEEXT) - $(AM_V_CCLD)$(bsd_module_LINK) $(bsd_module_OBJECTS) $(bsd_module_LDADD) $(LIBS) -tests/$(am__dirstamp): - @$(MKDIR_P) tests - @: > tests/$(am__dirstamp) -tests/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) tests/$(DEPDIR) - @: > tests/$(DEPDIR)/$(am__dirstamp) -tests/bswap_test_module-bswap_test.$(OBJEXT): tests/$(am__dirstamp) \ - tests/$(DEPDIR)/$(am__dirstamp) - -bswap_test.module$(EXEEXT): $(bswap_test_module_OBJECTS) $(bswap_test_module_DEPENDENCIES) $(EXTRA_bswap_test_module_DEPENDENCIES) - @rm -f bswap_test.module$(EXEEXT) - $(AM_V_CCLD)$(bswap_test_module_LINK) $(bswap_test_module_OBJECTS) $(bswap_test_module_LDADD) $(LIBS) -fs/btrfs_module-btrfs.$(OBJEXT): fs/$(am__dirstamp) \ - fs/$(DEPDIR)/$(am__dirstamp) -lib/btrfs_module-crc.$(OBJEXT): lib/$(am__dirstamp) \ - lib/$(DEPDIR)/$(am__dirstamp) - -btrfs.module$(EXEEXT): $(btrfs_module_OBJECTS) $(btrfs_module_DEPENDENCIES) $(EXTRA_btrfs_module_DEPENDENCIES) - @rm -f btrfs.module$(EXEEXT) - $(AM_V_CCLD)$(btrfs_module_LINK) $(btrfs_module_OBJECTS) $(btrfs_module_LDADD) $(LIBS) -io/$(am__dirstamp): - @$(MKDIR_P) io - @: > io/$(am__dirstamp) -io/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) io/$(DEPDIR) - @: > io/$(DEPDIR)/$(am__dirstamp) -io/bufio_module-bufio.$(OBJEXT): io/$(am__dirstamp) \ - io/$(DEPDIR)/$(am__dirstamp) - -bufio.module$(EXEEXT): $(bufio_module_OBJECTS) $(bufio_module_DEPENDENCIES) $(EXTRA_bufio_module_DEPENDENCIES) - @rm -f bufio.module$(EXEEXT) - $(AM_V_CCLD)$(bufio_module_LINK) $(bufio_module_OBJECTS) $(bufio_module_LDADD) $(LIBS) -commands/cacheinfo_module-cacheinfo.$(OBJEXT): \ - commands/$(am__dirstamp) commands/$(DEPDIR)/$(am__dirstamp) - -cacheinfo.module$(EXEEXT): $(cacheinfo_module_OBJECTS) $(cacheinfo_module_DEPENDENCIES) $(EXTRA_cacheinfo_module_DEPENDENCIES) - @rm -f cacheinfo.module$(EXEEXT) - $(AM_V_CCLD)$(cacheinfo_module_LINK) $(cacheinfo_module_OBJECTS) $(cacheinfo_module_LDADD) $(LIBS) -commands/cat_module-cat.$(OBJEXT): commands/$(am__dirstamp) \ - commands/$(DEPDIR)/$(am__dirstamp) - -cat.module$(EXEEXT): $(cat_module_OBJECTS) $(cat_module_DEPENDENCIES) $(EXTRA_cat_module_DEPENDENCIES) - @rm -f cat.module$(EXEEXT) - $(AM_V_CCLD)$(cat_module_LINK) $(cat_module_OBJECTS) $(cat_module_LDADD) $(LIBS) -fs/cbfs_module-cbfs.$(OBJEXT): fs/$(am__dirstamp) \ - fs/$(DEPDIR)/$(am__dirstamp) - -cbfs.module$(EXEEXT): $(cbfs_module_OBJECTS) $(cbfs_module_DEPENDENCIES) $(EXTRA_cbfs_module_DEPENDENCIES) - @rm -f cbfs.module$(EXEEXT) - $(AM_V_CCLD)$(cbfs_module_LINK) $(cbfs_module_OBJECTS) $(cbfs_module_LDADD) $(LIBS) -commands/i386/coreboot/$(am__dirstamp): - @$(MKDIR_P) commands/i386/coreboot - @: > commands/i386/coreboot/$(am__dirstamp) -commands/i386/coreboot/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) commands/i386/coreboot/$(DEPDIR) - @: > commands/i386/coreboot/$(DEPDIR)/$(am__dirstamp) -commands/i386/coreboot/cbls_module-cbls.$(OBJEXT): \ - commands/i386/coreboot/$(am__dirstamp) \ - commands/i386/coreboot/$(DEPDIR)/$(am__dirstamp) - -cbls.module$(EXEEXT): $(cbls_module_OBJECTS) $(cbls_module_DEPENDENCIES) $(EXTRA_cbls_module_DEPENDENCIES) - @rm -f cbls.module$(EXEEXT) - $(AM_V_CCLD)$(cbls_module_LINK) $(cbls_module_OBJECTS) $(cbls_module_LDADD) $(LIBS) -term/i386/coreboot/$(am__dirstamp): - @$(MKDIR_P) term/i386/coreboot - @: > term/i386/coreboot/$(am__dirstamp) -term/i386/coreboot/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) term/i386/coreboot/$(DEPDIR) - @: > term/i386/coreboot/$(DEPDIR)/$(am__dirstamp) -term/i386/coreboot/cbmemc_module-cbmemc.$(OBJEXT): \ - term/i386/coreboot/$(am__dirstamp) \ - term/i386/coreboot/$(DEPDIR)/$(am__dirstamp) - -cbmemc.module$(EXEEXT): $(cbmemc_module_OBJECTS) $(cbmemc_module_DEPENDENCIES) $(EXTRA_cbmemc_module_DEPENDENCIES) - @rm -f cbmemc.module$(EXEEXT) - $(AM_V_CCLD)$(cbmemc_module_LINK) $(cbmemc_module_OBJECTS) $(cbmemc_module_LDADD) $(LIBS) -kern/i386/coreboot/$(am__dirstamp): - @$(MKDIR_P) kern/i386/coreboot - @: > kern/i386/coreboot/$(am__dirstamp) -kern/i386/coreboot/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) kern/i386/coreboot/$(DEPDIR) - @: > kern/i386/coreboot/$(DEPDIR)/$(am__dirstamp) -kern/i386/coreboot/cbtable_module-cbtable.$(OBJEXT): \ - kern/i386/coreboot/$(am__dirstamp) \ - kern/i386/coreboot/$(DEPDIR)/$(am__dirstamp) -kern/coreboot/$(am__dirstamp): - @$(MKDIR_P) kern/coreboot - @: > kern/coreboot/$(am__dirstamp) -kern/coreboot/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) kern/coreboot/$(DEPDIR) - @: > kern/coreboot/$(DEPDIR)/$(am__dirstamp) -kern/coreboot/cbtable_module-cbtable.$(OBJEXT): \ - kern/coreboot/$(am__dirstamp) \ - kern/coreboot/$(DEPDIR)/$(am__dirstamp) - -cbtable.module$(EXEEXT): $(cbtable_module_OBJECTS) $(cbtable_module_DEPENDENCIES) $(EXTRA_cbtable_module_DEPENDENCIES) - @rm -f cbtable.module$(EXEEXT) - $(AM_V_CCLD)$(cbtable_module_LINK) $(cbtable_module_OBJECTS) $(cbtable_module_LDADD) $(LIBS) -commands/i386/coreboot/cbtime_module-cb_timestamps.$(OBJEXT): \ - commands/i386/coreboot/$(am__dirstamp) \ - commands/i386/coreboot/$(DEPDIR)/$(am__dirstamp) - -cbtime.module$(EXEEXT): $(cbtime_module_OBJECTS) $(cbtime_module_DEPENDENCIES) $(EXTRA_cbtime_module_DEPENDENCIES) - @rm -f cbtime.module$(EXEEXT) - $(AM_V_CCLD)$(cbtime_module_LINK) $(cbtime_module_OBJECTS) $(cbtime_module_LDADD) $(LIBS) -boot/i386/pc/cdboot_image-cdboot.$(OBJEXT): \ - boot/i386/pc/$(am__dirstamp) \ - boot/i386/pc/$(DEPDIR)/$(am__dirstamp) -boot/sparc64/ieee1275/cdboot_image-boot.$(OBJEXT): \ - boot/sparc64/ieee1275/$(am__dirstamp) \ - boot/sparc64/ieee1275/$(DEPDIR)/$(am__dirstamp) - -cdboot.image$(EXEEXT): $(cdboot_image_OBJECTS) $(cdboot_image_DEPENDENCIES) $(EXTRA_cdboot_image_DEPENDENCIES) - @rm -f cdboot.image$(EXEEXT) - $(AM_V_CCLD)$(cdboot_image_LINK) $(cdboot_image_OBJECTS) $(cdboot_image_LDADD) $(LIBS) -loader/efi/chain_module-chainloader.$(OBJEXT): \ - loader/efi/$(am__dirstamp) \ - loader/efi/$(DEPDIR)/$(am__dirstamp) -loader/i386/coreboot/$(am__dirstamp): - @$(MKDIR_P) loader/i386/coreboot - @: > loader/i386/coreboot/$(am__dirstamp) -loader/i386/coreboot/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) loader/i386/coreboot/$(DEPDIR) - @: > loader/i386/coreboot/$(DEPDIR)/$(am__dirstamp) -loader/i386/coreboot/chain_module-chainloader.$(OBJEXT): \ - loader/i386/coreboot/$(am__dirstamp) \ - loader/i386/coreboot/$(DEPDIR)/$(am__dirstamp) -lib/chain_module-LzmaDec.$(OBJEXT): lib/$(am__dirstamp) \ - lib/$(DEPDIR)/$(am__dirstamp) -loader/i386/pc/$(am__dirstamp): - @$(MKDIR_P) loader/i386/pc - @: > loader/i386/pc/$(am__dirstamp) -loader/i386/pc/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) loader/i386/pc/$(DEPDIR) - @: > loader/i386/pc/$(DEPDIR)/$(am__dirstamp) -loader/i386/pc/chain_module-chainloader.$(OBJEXT): \ - loader/i386/pc/$(am__dirstamp) \ - loader/i386/pc/$(DEPDIR)/$(am__dirstamp) - -chain.module$(EXEEXT): $(chain_module_OBJECTS) $(chain_module_DEPENDENCIES) $(EXTRA_chain_module_DEPENDENCIES) - @rm -f chain.module$(EXEEXT) - $(AM_V_CCLD)$(chain_module_LINK) $(chain_module_OBJECTS) $(chain_module_LDADD) $(LIBS) -tests/cmdline_cat_test_module-cmdline_cat_test.$(OBJEXT): \ - tests/$(am__dirstamp) tests/$(DEPDIR)/$(am__dirstamp) - -cmdline_cat_test.module$(EXEEXT): $(cmdline_cat_test_module_OBJECTS) $(cmdline_cat_test_module_DEPENDENCIES) $(EXTRA_cmdline_cat_test_module_DEPENDENCIES) - @rm -f cmdline_cat_test.module$(EXEEXT) - $(AM_V_CCLD)$(cmdline_cat_test_module_LINK) $(cmdline_cat_test_module_OBJECTS) $(cmdline_cat_test_module_LDADD) $(LIBS) -commands/i386/$(am__dirstamp): - @$(MKDIR_P) commands/i386 - @: > commands/i386/$(am__dirstamp) -commands/i386/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) commands/i386/$(DEPDIR) - @: > commands/i386/$(DEPDIR)/$(am__dirstamp) -commands/i386/cmosdump_module-cmosdump.$(OBJEXT): \ - commands/i386/$(am__dirstamp) \ - commands/i386/$(DEPDIR)/$(am__dirstamp) - -cmosdump.module$(EXEEXT): $(cmosdump_module_OBJECTS) $(cmosdump_module_DEPENDENCIES) $(EXTRA_cmosdump_module_DEPENDENCIES) - @rm -f cmosdump.module$(EXEEXT) - $(AM_V_CCLD)$(cmosdump_module_LINK) $(cmosdump_module_OBJECTS) $(cmosdump_module_LDADD) $(LIBS) -commands/i386/cmostest_module-cmostest.$(OBJEXT): \ - commands/i386/$(am__dirstamp) \ - commands/i386/$(DEPDIR)/$(am__dirstamp) - -cmostest.module$(EXEEXT): $(cmostest_module_OBJECTS) $(cmostest_module_DEPENDENCIES) $(EXTRA_cmostest_module_DEPENDENCIES) - @rm -f cmostest.module$(EXEEXT) - $(AM_V_CCLD)$(cmostest_module_LINK) $(cmostest_module_OBJECTS) $(cmostest_module_LDADD) $(LIBS) -commands/cmp_module-cmp.$(OBJEXT): commands/$(am__dirstamp) \ - commands/$(DEPDIR)/$(am__dirstamp) - -cmp.module$(EXEEXT): $(cmp_module_OBJECTS) $(cmp_module_DEPENDENCIES) $(EXTRA_cmp_module_DEPENDENCIES) - @rm -f cmp.module$(EXEEXT) - $(AM_V_CCLD)$(cmp_module_LINK) $(cmp_module_OBJECTS) $(cmp_module_LDADD) $(LIBS) -tests/cmp_test_module-cmp_test.$(OBJEXT): tests/$(am__dirstamp) \ - tests/$(DEPDIR)/$(am__dirstamp) - -cmp_test.module$(EXEEXT): $(cmp_test_module_OBJECTS) $(cmp_test_module_DEPENDENCIES) $(EXTRA_cmp_test_module_DEPENDENCIES) - @rm -f cmp_test.module$(EXEEXT) - $(AM_V_CCLD)$(cmp_test_module_LINK) $(cmp_test_module_OBJECTS) $(cmp_test_module_LDADD) $(LIBS) -commands/configfile_module-configfile.$(OBJEXT): \ - commands/$(am__dirstamp) commands/$(DEPDIR)/$(am__dirstamp) - -configfile.module$(EXEEXT): $(configfile_module_OBJECTS) $(configfile_module_DEPENDENCIES) $(EXTRA_configfile_module_DEPENDENCIES) - @rm -f configfile.module$(EXEEXT) - $(AM_V_CCLD)$(configfile_module_LINK) $(configfile_module_OBJECTS) $(configfile_module_LDADD) $(LIBS) -fs/cpio_module-cpio.$(OBJEXT): fs/$(am__dirstamp) \ - fs/$(DEPDIR)/$(am__dirstamp) - -cpio.module$(EXEEXT): $(cpio_module_OBJECTS) $(cpio_module_DEPENDENCIES) $(EXTRA_cpio_module_DEPENDENCIES) - @rm -f cpio.module$(EXEEXT) - $(AM_V_CCLD)$(cpio_module_LINK) $(cpio_module_OBJECTS) $(cpio_module_LDADD) $(LIBS) -fs/cpio_be_module-cpio_be.$(OBJEXT): fs/$(am__dirstamp) \ - fs/$(DEPDIR)/$(am__dirstamp) - -cpio_be.module$(EXEEXT): $(cpio_be_module_OBJECTS) $(cpio_be_module_DEPENDENCIES) $(EXTRA_cpio_be_module_DEPENDENCIES) - @rm -f cpio_be.module$(EXEEXT) - $(AM_V_CCLD)$(cpio_be_module_LINK) $(cpio_be_module_OBJECTS) $(cpio_be_module_LDADD) $(LIBS) -commands/i386/cpuid_module-cpuid.$(OBJEXT): \ - commands/i386/$(am__dirstamp) \ - commands/i386/$(DEPDIR)/$(am__dirstamp) - -cpuid.module$(EXEEXT): $(cpuid_module_OBJECTS) $(cpuid_module_DEPENDENCIES) $(EXTRA_cpuid_module_DEPENDENCIES) - @rm -f cpuid.module$(EXEEXT) - $(AM_V_CCLD)$(cpuid_module_LINK) $(cpuid_module_OBJECTS) $(cpuid_module_LDADD) $(LIBS) -lib/crc64_module-crc64.$(OBJEXT): lib/$(am__dirstamp) \ - lib/$(DEPDIR)/$(am__dirstamp) - -crc64.module$(EXEEXT): $(crc64_module_OBJECTS) $(crc64_module_DEPENDENCIES) $(EXTRA_crc64_module_DEPENDENCIES) - @rm -f crc64.module$(EXEEXT) - $(AM_V_CCLD)$(crc64_module_LINK) $(crc64_module_OBJECTS) $(crc64_module_LDADD) $(LIBS) -lib/crypto_module-crypto.$(OBJEXT): lib/$(am__dirstamp) \ - lib/$(DEPDIR)/$(am__dirstamp) - -crypto.module$(EXEEXT): $(crypto_module_OBJECTS) $(crypto_module_DEPENDENCIES) $(EXTRA_crypto_module_DEPENDENCIES) - @rm -f crypto.module$(EXEEXT) - $(AM_V_CCLD)$(crypto_module_LINK) $(crypto_module_OBJECTS) $(crypto_module_LDADD) $(LIBS) -disk/cryptodisk_module-cryptodisk.$(OBJEXT): disk/$(am__dirstamp) \ - disk/$(DEPDIR)/$(am__dirstamp) - -cryptodisk.module$(EXEEXT): $(cryptodisk_module_OBJECTS) $(cryptodisk_module_DEPENDENCIES) $(EXTRA_cryptodisk_module_DEPENDENCIES) - @rm -f cryptodisk.module$(EXEEXT) - $(AM_V_CCLD)$(cryptodisk_module_LINK) $(cryptodisk_module_OBJECTS) $(cryptodisk_module_LDADD) $(LIBS) -bus/$(am__dirstamp): - @$(MKDIR_P) bus - @: > bus/$(am__dirstamp) -bus/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) bus/$(DEPDIR) - @: > bus/$(DEPDIR)/$(am__dirstamp) -bus/cs5536_module-cs5536.$(OBJEXT): bus/$(am__dirstamp) \ - bus/$(DEPDIR)/$(am__dirstamp) - -cs5536.module$(EXEEXT): $(cs5536_module_OBJECTS) $(cs5536_module_DEPENDENCIES) $(EXTRA_cs5536_module_DEPENDENCIES) - @rm -f cs5536.module$(EXEEXT) - $(AM_V_CCLD)$(cs5536_module_LINK) $(cs5536_module_OBJECTS) $(cs5536_module_LDADD) $(LIBS) -tests/ctz_test_module-ctz_test.$(OBJEXT): tests/$(am__dirstamp) \ - tests/$(DEPDIR)/$(am__dirstamp) - -ctz_test.module$(EXEEXT): $(ctz_test_module_OBJECTS) $(ctz_test_module_DEPENDENCIES) $(EXTRA_ctz_test_module_DEPENDENCIES) - @rm -f ctz_test.module$(EXEEXT) - $(AM_V_CCLD)$(ctz_test_module_LINK) $(ctz_test_module_OBJECTS) $(ctz_test_module_LDADD) $(LIBS) -commands/date_module-date.$(OBJEXT): commands/$(am__dirstamp) \ - commands/$(DEPDIR)/$(am__dirstamp) - -date.module$(EXEEXT): $(date_module_OBJECTS) $(date_module_DEPENDENCIES) $(EXTRA_date_module_DEPENDENCIES) - @rm -f date.module$(EXEEXT) - $(AM_V_CCLD)$(date_module_LINK) $(date_module_OBJECTS) $(date_module_LDADD) $(LIBS) -hook/$(am__dirstamp): - @$(MKDIR_P) hook - @: > hook/$(am__dirstamp) -hook/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) hook/$(DEPDIR) - @: > hook/$(DEPDIR)/$(am__dirstamp) -hook/datehook_module-datehook.$(OBJEXT): hook/$(am__dirstamp) \ - hook/$(DEPDIR)/$(am__dirstamp) - -datehook.module$(EXEEXT): $(datehook_module_OBJECTS) $(datehook_module_DEPENDENCIES) $(EXTRA_datehook_module_DEPENDENCIES) - @rm -f datehook.module$(EXEEXT) - $(AM_V_CCLD)$(datehook_module_LINK) $(datehook_module_OBJECTS) $(datehook_module_LDADD) $(LIBS) -lib/efi/$(am__dirstamp): - @$(MKDIR_P) lib/efi - @: > lib/efi/$(am__dirstamp) -lib/efi/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) lib/efi/$(DEPDIR) - @: > lib/efi/$(DEPDIR)/$(am__dirstamp) -lib/efi/datetime_module-datetime.$(OBJEXT): lib/efi/$(am__dirstamp) \ - lib/efi/$(DEPDIR)/$(am__dirstamp) -lib/dummy/$(am__dirstamp): - @$(MKDIR_P) lib/dummy - @: > lib/dummy/$(am__dirstamp) -lib/dummy/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) lib/dummy/$(DEPDIR) - @: > lib/dummy/$(DEPDIR)/$(am__dirstamp) -lib/dummy/datetime_module-datetime.$(OBJEXT): \ - lib/dummy/$(am__dirstamp) lib/dummy/$(DEPDIR)/$(am__dirstamp) -lib/datetime_module-cmos_datetime.$(OBJEXT): lib/$(am__dirstamp) \ - lib/$(DEPDIR)/$(am__dirstamp) -lib/xen/$(am__dirstamp): - @$(MKDIR_P) lib/xen - @: > lib/xen/$(am__dirstamp) -lib/xen/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) lib/xen/$(DEPDIR) - @: > lib/xen/$(DEPDIR)/$(am__dirstamp) -lib/xen/datetime_module-datetime.$(OBJEXT): lib/xen/$(am__dirstamp) \ - lib/xen/$(DEPDIR)/$(am__dirstamp) -lib/arc/$(am__dirstamp): - @$(MKDIR_P) lib/arc - @: > lib/arc/$(am__dirstamp) -lib/arc/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) lib/arc/$(DEPDIR) - @: > lib/arc/$(DEPDIR)/$(am__dirstamp) -lib/arc/datetime_module-datetime.$(OBJEXT): lib/arc/$(am__dirstamp) \ - lib/arc/$(DEPDIR)/$(am__dirstamp) -lib/ieee1275/$(am__dirstamp): - @$(MKDIR_P) lib/ieee1275 - @: > lib/ieee1275/$(am__dirstamp) -lib/ieee1275/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) lib/ieee1275/$(DEPDIR) - @: > lib/ieee1275/$(DEPDIR)/$(am__dirstamp) -lib/ieee1275/datetime_module-datetime.$(OBJEXT): \ - lib/ieee1275/$(am__dirstamp) \ - lib/ieee1275/$(DEPDIR)/$(am__dirstamp) -lib/ieee1275/datetime_module-cmos.$(OBJEXT): \ - lib/ieee1275/$(am__dirstamp) \ - lib/ieee1275/$(DEPDIR)/$(am__dirstamp) - -datetime.module$(EXEEXT): $(datetime_module_OBJECTS) $(datetime_module_DEPENDENCIES) $(EXTRA_datetime_module_DEPENDENCIES) - @rm -f datetime.module$(EXEEXT) - $(AM_V_CCLD)$(datetime_module_LINK) $(datetime_module_OBJECTS) $(datetime_module_LDADD) $(LIBS) -lib/disk_module-disk.$(OBJEXT): lib/$(am__dirstamp) \ - lib/$(DEPDIR)/$(am__dirstamp) - -disk.module$(EXEEXT): $(disk_module_OBJECTS) $(disk_module_DEPENDENCIES) $(EXTRA_disk_module_DEPENDENCIES) - @rm -f disk.module$(EXEEXT) - $(AM_V_CCLD)$(disk_module_LINK) $(disk_module_OBJECTS) $(disk_module_LDADD) $(LIBS) -boot/i386/pc/diskboot_image-diskboot.$(OBJEXT): \ - boot/i386/pc/$(am__dirstamp) \ - boot/i386/pc/$(DEPDIR)/$(am__dirstamp) -boot/sparc64/ieee1275/diskboot_image-diskboot.$(OBJEXT): \ - boot/sparc64/ieee1275/$(am__dirstamp) \ - boot/sparc64/ieee1275/$(DEPDIR)/$(am__dirstamp) - -diskboot.image$(EXEEXT): $(diskboot_image_OBJECTS) $(diskboot_image_DEPENDENCIES) $(EXTRA_diskboot_image_DEPENDENCIES) - @rm -f diskboot.image$(EXEEXT) - $(AM_V_CCLD)$(diskboot_image_LINK) $(diskboot_image_OBJECTS) $(diskboot_image_LDADD) $(LIBS) -disk/diskfilter_module-diskfilter.$(OBJEXT): disk/$(am__dirstamp) \ - disk/$(DEPDIR)/$(am__dirstamp) - -diskfilter.module$(EXEEXT): $(diskfilter_module_OBJECTS) $(diskfilter_module_DEPENDENCIES) $(EXTRA_diskfilter_module_DEPENDENCIES) - @rm -f diskfilter.module$(EXEEXT) - $(AM_V_CCLD)$(diskfilter_module_LINK) $(diskfilter_module_OBJECTS) $(diskfilter_module_LDADD) $(LIBS) -lib/div_module-division.$(OBJEXT): lib/$(am__dirstamp) \ - lib/$(DEPDIR)/$(am__dirstamp) - -div.module$(EXEEXT): $(div_module_OBJECTS) $(div_module_DEPENDENCIES) $(EXTRA_div_module_DEPENDENCIES) - @rm -f div.module$(EXEEXT) - $(AM_V_CCLD)$(div_module_LINK) $(div_module_OBJECTS) $(div_module_LDADD) $(LIBS) -tests/div_test_module-div_test.$(OBJEXT): tests/$(am__dirstamp) \ - tests/$(DEPDIR)/$(am__dirstamp) - -div_test.module$(EXEEXT): $(div_test_module_OBJECTS) $(div_test_module_DEPENDENCIES) $(EXTRA_div_test_module_DEPENDENCIES) - @rm -f div_test.module$(EXEEXT) - $(AM_V_CCLD)$(div_test_module_LINK) $(div_test_module_OBJECTS) $(div_test_module_LDADD) $(LIBS) -disk/dm_nv_module-dmraid_nvidia.$(OBJEXT): disk/$(am__dirstamp) \ - disk/$(DEPDIR)/$(am__dirstamp) - -dm_nv.module$(EXEEXT): $(dm_nv_module_OBJECTS) $(dm_nv_module_DEPENDENCIES) $(EXTRA_dm_nv_module_DEPENDENCIES) - @rm -f dm_nv.module$(EXEEXT) - $(AM_V_CCLD)$(dm_nv_module_LINK) $(dm_nv_module_OBJECTS) $(dm_nv_module_LDADD) $(LIBS) -commands/i386/pc/$(am__dirstamp): - @$(MKDIR_P) commands/i386/pc - @: > commands/i386/pc/$(am__dirstamp) -commands/i386/pc/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) commands/i386/pc/$(DEPDIR) - @: > commands/i386/pc/$(DEPDIR)/$(am__dirstamp) -commands/i386/pc/drivemap_module-drivemap.$(OBJEXT): \ - commands/i386/pc/$(am__dirstamp) \ - commands/i386/pc/$(DEPDIR)/$(am__dirstamp) -commands/i386/pc/drivemap_module-drivemap_int13h.$(OBJEXT): \ - commands/i386/pc/$(am__dirstamp) \ - commands/i386/pc/$(DEPDIR)/$(am__dirstamp) - -drivemap.module$(EXEEXT): $(drivemap_module_OBJECTS) $(drivemap_module_DEPENDENCIES) $(EXTRA_drivemap_module_DEPENDENCIES) - @rm -f drivemap.module$(EXEEXT) - $(AM_V_CCLD)$(drivemap_module_LINK) $(drivemap_module_OBJECTS) $(drivemap_module_LDADD) $(LIBS) -commands/echo_module-echo.$(OBJEXT): commands/$(am__dirstamp) \ - commands/$(DEPDIR)/$(am__dirstamp) - -echo.module$(EXEEXT): $(echo_module_OBJECTS) $(echo_module_DEPENDENCIES) $(EXTRA_echo_module_DEPENDENCIES) - @rm -f echo.module$(EXEEXT) - $(AM_V_CCLD)$(echo_module_LINK) $(echo_module_OBJECTS) $(echo_module_LDADD) $(LIBS) -video/efi_gop_module-efi_gop.$(OBJEXT): video/$(am__dirstamp) \ - video/$(DEPDIR)/$(am__dirstamp) - -efi_gop.module$(EXEEXT): $(efi_gop_module_OBJECTS) $(efi_gop_module_DEPENDENCIES) $(EXTRA_efi_gop_module_DEPENDENCIES) - @rm -f efi_gop.module$(EXEEXT) - $(AM_V_CCLD)$(efi_gop_module_LINK) $(efi_gop_module_OBJECTS) $(efi_gop_module_LDADD) $(LIBS) -video/efi_uga_module-efi_uga.$(OBJEXT): video/$(am__dirstamp) \ - video/$(DEPDIR)/$(am__dirstamp) - -efi_uga.module$(EXEEXT): $(efi_uga_module_OBJECTS) $(efi_uga_module_DEPENDENCIES) $(EXTRA_efi_uga_module_DEPENDENCIES) - @rm -f efi_uga.module$(EXEEXT) - $(AM_V_CCLD)$(efi_uga_module_LINK) $(efi_uga_module_OBJECTS) $(efi_uga_module_LDADD) $(LIBS) -efiemu/i386/pc/$(am__dirstamp): - @$(MKDIR_P) efiemu/i386/pc - @: > efiemu/i386/pc/$(am__dirstamp) -efiemu/i386/pc/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) efiemu/i386/pc/$(DEPDIR) - @: > efiemu/i386/pc/$(DEPDIR)/$(am__dirstamp) -efiemu/i386/pc/efiemu_module-cfgtables.$(OBJEXT): \ - efiemu/i386/pc/$(am__dirstamp) \ - efiemu/i386/pc/$(DEPDIR)/$(am__dirstamp) -efiemu/$(am__dirstamp): - @$(MKDIR_P) efiemu - @: > efiemu/$(am__dirstamp) -efiemu/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) efiemu/$(DEPDIR) - @: > efiemu/$(DEPDIR)/$(am__dirstamp) -efiemu/efiemu_module-main.$(OBJEXT): efiemu/$(am__dirstamp) \ - efiemu/$(DEPDIR)/$(am__dirstamp) -efiemu/i386/$(am__dirstamp): - @$(MKDIR_P) efiemu/i386 - @: > efiemu/i386/$(am__dirstamp) -efiemu/i386/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) efiemu/i386/$(DEPDIR) - @: > efiemu/i386/$(DEPDIR)/$(am__dirstamp) -efiemu/i386/efiemu_module-loadcore32.$(OBJEXT): \ - efiemu/i386/$(am__dirstamp) \ - efiemu/i386/$(DEPDIR)/$(am__dirstamp) -efiemu/i386/efiemu_module-loadcore64.$(OBJEXT): \ - efiemu/i386/$(am__dirstamp) \ - efiemu/i386/$(DEPDIR)/$(am__dirstamp) -efiemu/efiemu_module-mm.$(OBJEXT): efiemu/$(am__dirstamp) \ - efiemu/$(DEPDIR)/$(am__dirstamp) -efiemu/efiemu_module-loadcore_common.$(OBJEXT): \ - efiemu/$(am__dirstamp) efiemu/$(DEPDIR)/$(am__dirstamp) -efiemu/efiemu_module-symbols.$(OBJEXT): efiemu/$(am__dirstamp) \ - efiemu/$(DEPDIR)/$(am__dirstamp) -efiemu/efiemu_module-loadcore32.$(OBJEXT): efiemu/$(am__dirstamp) \ - efiemu/$(DEPDIR)/$(am__dirstamp) -efiemu/efiemu_module-loadcore64.$(OBJEXT): efiemu/$(am__dirstamp) \ - efiemu/$(DEPDIR)/$(am__dirstamp) -efiemu/efiemu_module-prepare32.$(OBJEXT): efiemu/$(am__dirstamp) \ - efiemu/$(DEPDIR)/$(am__dirstamp) -efiemu/efiemu_module-prepare64.$(OBJEXT): efiemu/$(am__dirstamp) \ - efiemu/$(DEPDIR)/$(am__dirstamp) -efiemu/efiemu_module-pnvram.$(OBJEXT): efiemu/$(am__dirstamp) \ - efiemu/$(DEPDIR)/$(am__dirstamp) -efiemu/i386/efiemu_module-coredetect.$(OBJEXT): \ - efiemu/i386/$(am__dirstamp) \ - efiemu/i386/$(DEPDIR)/$(am__dirstamp) -efiemu/i386/efiemu_module-nocfgtables.$(OBJEXT): \ - efiemu/i386/$(am__dirstamp) \ - efiemu/i386/$(DEPDIR)/$(am__dirstamp) - -efiemu.module$(EXEEXT): $(efiemu_module_OBJECTS) $(efiemu_module_DEPENDENCIES) $(EXTRA_efiemu_module_DEPENDENCIES) - @rm -f efiemu.module$(EXEEXT) - $(AM_V_CCLD)$(efiemu_module_LINK) $(efiemu_module_OBJECTS) $(efiemu_module_LDADD) $(LIBS) -commands/efi/$(am__dirstamp): - @$(MKDIR_P) commands/efi - @: > commands/efi/$(am__dirstamp) -commands/efi/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) commands/efi/$(DEPDIR) - @: > commands/efi/$(DEPDIR)/$(am__dirstamp) -commands/efi/efifwsetup_module-efifwsetup.$(OBJEXT): \ - commands/efi/$(am__dirstamp) \ - commands/efi/$(DEPDIR)/$(am__dirstamp) - -efifwsetup.module$(EXEEXT): $(efifwsetup_module_OBJECTS) $(efifwsetup_module_DEPENDENCIES) $(EXTRA_efifwsetup_module_DEPENDENCIES) - @rm -f efifwsetup.module$(EXEEXT) - $(AM_V_CCLD)$(efifwsetup_module_LINK) $(efifwsetup_module_OBJECTS) $(efifwsetup_module_LDADD) $(LIBS) -net/drivers/efi/$(am__dirstamp): - @$(MKDIR_P) net/drivers/efi - @: > net/drivers/efi/$(am__dirstamp) -net/drivers/efi/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) net/drivers/efi/$(DEPDIR) - @: > net/drivers/efi/$(DEPDIR)/$(am__dirstamp) -net/drivers/efi/efinet_module-efinet.$(OBJEXT): \ - net/drivers/efi/$(am__dirstamp) \ - net/drivers/efi/$(DEPDIR)/$(am__dirstamp) - -efinet.module$(EXEEXT): $(efinet_module_OBJECTS) $(efinet_module_DEPENDENCIES) $(EXTRA_efinet_module_DEPENDENCIES) - @rm -f efinet.module$(EXEEXT) - $(AM_V_CCLD)$(efinet_module_LINK) $(efinet_module_OBJECTS) $(efinet_module_LDADD) $(LIBS) -bus/usb/$(am__dirstamp): - @$(MKDIR_P) bus/usb - @: > bus/usb/$(am__dirstamp) -bus/usb/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) bus/usb/$(DEPDIR) - @: > bus/usb/$(DEPDIR)/$(am__dirstamp) -bus/usb/ehci_module-ehci-fdt.$(OBJEXT): bus/usb/$(am__dirstamp) \ - bus/usb/$(DEPDIR)/$(am__dirstamp) -bus/usb/ehci_module-ehci.$(OBJEXT): bus/usb/$(am__dirstamp) \ - bus/usb/$(DEPDIR)/$(am__dirstamp) -bus/usb/ehci_module-ehci-pci.$(OBJEXT): bus/usb/$(am__dirstamp) \ - bus/usb/$(DEPDIR)/$(am__dirstamp) - -ehci.module$(EXEEXT): $(ehci_module_OBJECTS) $(ehci_module_DEPENDENCIES) $(EXTRA_ehci_module_DEPENDENCIES) - @rm -f ehci.module$(EXEEXT) - $(AM_V_CCLD)$(ehci_module_LINK) $(ehci_module_OBJECTS) $(ehci_module_LDADD) $(LIBS) -kern/elf_module-elf.$(OBJEXT): kern/$(am__dirstamp) \ - kern/$(DEPDIR)/$(am__dirstamp) - -elf.module$(EXEEXT): $(elf_module_OBJECTS) $(elf_module_DEPENDENCIES) $(EXTRA_elf_module_DEPENDENCIES) - @rm -f elf.module$(EXEEXT) - $(AM_V_CCLD)$(elf_module_LINK) $(elf_module_OBJECTS) $(elf_module_LDADD) $(LIBS) -net/drivers/emu/$(am__dirstamp): - @$(MKDIR_P) net/drivers/emu - @: > net/drivers/emu/$(am__dirstamp) -net/drivers/emu/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) net/drivers/emu/$(DEPDIR) - @: > net/drivers/emu/$(DEPDIR)/$(am__dirstamp) -net/drivers/emu/emunet_module-emunet.$(OBJEXT): \ - net/drivers/emu/$(am__dirstamp) \ - net/drivers/emu/$(DEPDIR)/$(am__dirstamp) - -emunet.module$(EXEEXT): $(emunet_module_OBJECTS) $(emunet_module_DEPENDENCIES) $(EXTRA_emunet_module_DEPENDENCIES) - @rm -f emunet.module$(EXEEXT) - $(AM_V_CCLD)$(emunet_module_LINK) $(emunet_module_OBJECTS) $(emunet_module_LDADD) $(LIBS) -bus/emu/$(am__dirstamp): - @$(MKDIR_P) bus/emu - @: > bus/emu/$(am__dirstamp) -bus/emu/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) bus/emu/$(DEPDIR) - @: > bus/emu/$(DEPDIR)/$(am__dirstamp) -bus/emu/emupci_module-pci.$(OBJEXT): bus/emu/$(am__dirstamp) \ - bus/emu/$(DEPDIR)/$(am__dirstamp) -commands/emupci_module-lspci.$(OBJEXT): commands/$(am__dirstamp) \ - commands/$(DEPDIR)/$(am__dirstamp) - -emupci.module$(EXEEXT): $(emupci_module_OBJECTS) $(emupci_module_DEPENDENCIES) $(EXTRA_emupci_module_DEPENDENCIES) - @rm -f emupci.module$(EXEEXT) - $(AM_V_CCLD)$(emupci_module_LINK) $(emupci_module_OBJECTS) $(emupci_module_LDADD) $(LIBS) -term/ieee1275/$(am__dirstamp): - @$(MKDIR_P) term/ieee1275 - @: > term/ieee1275/$(am__dirstamp) -term/ieee1275/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) term/ieee1275/$(DEPDIR) - @: > term/ieee1275/$(DEPDIR)/$(am__dirstamp) -term/ieee1275/escc_module-escc.$(OBJEXT): \ - term/ieee1275/$(am__dirstamp) \ - term/ieee1275/$(DEPDIR)/$(am__dirstamp) - -escc.module$(EXEEXT): $(escc_module_OBJECTS) $(escc_module_DEPENDENCIES) $(EXTRA_escc_module_DEPENDENCIES) - @rm -f escc.module$(EXEEXT) - $(AM_V_CCLD)$(escc_module_LINK) $(escc_module_OBJECTS) $(escc_module_LDADD) $(LIBS) -commands/eval_module-eval.$(OBJEXT): commands/$(am__dirstamp) \ - commands/$(DEPDIR)/$(am__dirstamp) - -eval.module$(EXEEXT): $(eval_module_OBJECTS) $(eval_module_DEPENDENCIES) $(EXTRA_eval_module_DEPENDENCIES) - @rm -f eval.module$(EXEEXT) - $(AM_V_CCLD)$(eval_module_LINK) $(eval_module_OBJECTS) $(eval_module_LDADD) $(LIBS) -fs/exfat_module-exfat.$(OBJEXT): fs/$(am__dirstamp) \ - fs/$(DEPDIR)/$(am__dirstamp) - -exfat.module$(EXEEXT): $(exfat_module_OBJECTS) $(exfat_module_DEPENDENCIES) $(EXTRA_exfat_module_DEPENDENCIES) - @rm -f exfat.module$(EXEEXT) - $(AM_V_CCLD)$(exfat_module_LINK) $(exfat_module_OBJECTS) $(exfat_module_LDADD) $(LIBS) -tests/exfctest_module-example_functional_test.$(OBJEXT): \ - tests/$(am__dirstamp) tests/$(DEPDIR)/$(am__dirstamp) - -exfctest.module$(EXEEXT): $(exfctest_module_OBJECTS) $(exfctest_module_DEPENDENCIES) $(EXTRA_exfctest_module_DEPENDENCIES) - @rm -f exfctest.module$(EXEEXT) - $(AM_V_CCLD)$(exfctest_module_LINK) $(exfctest_module_OBJECTS) $(exfctest_module_LDADD) $(LIBS) -fs/ext2_module-ext2.$(OBJEXT): fs/$(am__dirstamp) \ - fs/$(DEPDIR)/$(am__dirstamp) - -ext2.module$(EXEEXT): $(ext2_module_OBJECTS) $(ext2_module_DEPENDENCIES) $(EXTRA_ext2_module_DEPENDENCIES) - @rm -f ext2.module$(EXEEXT) - $(AM_V_CCLD)$(ext2_module_LINK) $(ext2_module_OBJECTS) $(ext2_module_LDADD) $(LIBS) -commands/extcmd_module-extcmd.$(OBJEXT): commands/$(am__dirstamp) \ - commands/$(DEPDIR)/$(am__dirstamp) -lib/extcmd_module-arg.$(OBJEXT): lib/$(am__dirstamp) \ - lib/$(DEPDIR)/$(am__dirstamp) - -extcmd.module$(EXEEXT): $(extcmd_module_OBJECTS) $(extcmd_module_DEPENDENCIES) $(EXTRA_extcmd_module_DEPENDENCIES) - @rm -f extcmd.module$(EXEEXT) - $(AM_V_CCLD)$(extcmd_module_LINK) $(extcmd_module_OBJECTS) $(extcmd_module_LDADD) $(LIBS) -fs/f2fs_module-f2fs.$(OBJEXT): fs/$(am__dirstamp) \ - fs/$(DEPDIR)/$(am__dirstamp) - -f2fs.module$(EXEEXT): $(f2fs_module_OBJECTS) $(f2fs_module_DEPENDENCIES) $(EXTRA_f2fs_module_DEPENDENCIES) - @rm -f f2fs.module$(EXEEXT) - $(AM_V_CCLD)$(f2fs_module_LINK) $(f2fs_module_OBJECTS) $(f2fs_module_LDADD) $(LIBS) -fs/fat_module-fat.$(OBJEXT): fs/$(am__dirstamp) \ - fs/$(DEPDIR)/$(am__dirstamp) - -fat.module$(EXEEXT): $(fat_module_OBJECTS) $(fat_module_DEPENDENCIES) $(EXTRA_fat_module_DEPENDENCIES) - @rm -f fat.module$(EXEEXT) - $(AM_V_CCLD)$(fat_module_LINK) $(fat_module_OBJECTS) $(fat_module_LDADD) $(LIBS) -loader/efi/fdt_module-fdt.$(OBJEXT): loader/efi/$(am__dirstamp) \ - loader/efi/$(DEPDIR)/$(am__dirstamp) -lib/fdt_module-fdt.$(OBJEXT): lib/$(am__dirstamp) \ - lib/$(DEPDIR)/$(am__dirstamp) - -fdt.module$(EXEEXT): $(fdt_module_OBJECTS) $(fdt_module_DEPENDENCIES) $(EXTRA_fdt_module_DEPENDENCIES) - @rm -f fdt.module$(EXEEXT) - $(AM_V_CCLD)$(fdt_module_LINK) $(fdt_module_OBJECTS) $(fdt_module_LDADD) $(LIBS) -commands/file_module-file.$(OBJEXT): commands/$(am__dirstamp) \ - commands/$(DEPDIR)/$(am__dirstamp) -commands/file_module-file32.$(OBJEXT): commands/$(am__dirstamp) \ - commands/$(DEPDIR)/$(am__dirstamp) -commands/file_module-file64.$(OBJEXT): commands/$(am__dirstamp) \ - commands/$(DEPDIR)/$(am__dirstamp) -loader/i386/file_module-xen_file.$(OBJEXT): \ - loader/i386/$(am__dirstamp) \ - loader/i386/$(DEPDIR)/$(am__dirstamp) -loader/i386/file_module-xen_file32.$(OBJEXT): \ - loader/i386/$(am__dirstamp) \ - loader/i386/$(DEPDIR)/$(am__dirstamp) -loader/i386/file_module-xen_file64.$(OBJEXT): \ - loader/i386/$(am__dirstamp) \ - loader/i386/$(DEPDIR)/$(am__dirstamp) - -file.module$(EXEEXT): $(file_module_OBJECTS) $(file_module_DEPENDENCIES) $(EXTRA_file_module_DEPENDENCIES) - @rm -f file.module$(EXEEXT) - $(AM_V_CCLD)$(file_module_LINK) $(file_module_OBJECTS) $(file_module_LDADD) $(LIBS) -commands/efi/fixvideo_module-fixvideo.$(OBJEXT): \ - commands/efi/$(am__dirstamp) \ - commands/efi/$(DEPDIR)/$(am__dirstamp) - -fixvideo.module$(EXEEXT): $(fixvideo_module_OBJECTS) $(fixvideo_module_DEPENDENCIES) $(EXTRA_fixvideo_module_DEPENDENCIES) - @rm -f fixvideo.module$(EXEEXT) - $(AM_V_CCLD)$(fixvideo_module_LINK) $(fixvideo_module_OBJECTS) $(fixvideo_module_LDADD) $(LIBS) -font/$(am__dirstamp): - @$(MKDIR_P) font - @: > font/$(am__dirstamp) -font/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) font/$(DEPDIR) - @: > font/$(DEPDIR)/$(am__dirstamp) -font/font_module-font.$(OBJEXT): font/$(am__dirstamp) \ - font/$(DEPDIR)/$(am__dirstamp) -font/font_module-font_cmd.$(OBJEXT): font/$(am__dirstamp) \ - font/$(DEPDIR)/$(am__dirstamp) - -font.module$(EXEEXT): $(font_module_OBJECTS) $(font_module_DEPENDENCIES) $(EXTRA_font_module_DEPENDENCIES) - @rm -f font.module$(EXEEXT) - $(AM_V_CCLD)$(font_module_LINK) $(font_module_OBJECTS) $(font_module_LDADD) $(LIBS) -loader/i386/pc/freedos_module-freedos.$(OBJEXT): \ - loader/i386/pc/$(am__dirstamp) \ - loader/i386/pc/$(DEPDIR)/$(am__dirstamp) - -freedos.module$(EXEEXT): $(freedos_module_OBJECTS) $(freedos_module_DEPENDENCIES) $(EXTRA_freedos_module_DEPENDENCIES) - @rm -f freedos.module$(EXEEXT) - $(AM_V_CCLD)$(freedos_module_LINK) $(freedos_module_OBJECTS) $(freedos_module_LDADD) $(LIBS) -fs/fshelp_module-fshelp.$(OBJEXT): fs/$(am__dirstamp) \ - fs/$(DEPDIR)/$(am__dirstamp) - -fshelp.module$(EXEEXT): $(fshelp_module_OBJECTS) $(fshelp_module_DEPENDENCIES) $(EXTRA_fshelp_module_DEPENDENCIES) - @rm -f fshelp.module$(EXEEXT) - $(AM_V_CCLD)$(fshelp_module_LINK) $(fshelp_module_OBJECTS) $(fshelp_module_LDADD) $(LIBS) -tests/lib/$(am__dirstamp): - @$(MKDIR_P) tests/lib - @: > tests/lib/$(am__dirstamp) -tests/lib/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) tests/lib/$(DEPDIR) - @: > tests/lib/$(DEPDIR)/$(am__dirstamp) -tests/lib/functional_test_module-functional_test.$(OBJEXT): \ - tests/lib/$(am__dirstamp) tests/lib/$(DEPDIR)/$(am__dirstamp) -tests/lib/functional_test_module-test.$(OBJEXT): \ - tests/lib/$(am__dirstamp) tests/lib/$(DEPDIR)/$(am__dirstamp) -tests/functional_test_module-video_checksum.$(OBJEXT): \ - tests/$(am__dirstamp) tests/$(DEPDIR)/$(am__dirstamp) -tests/functional_test_module-fake_input.$(OBJEXT): \ - tests/$(am__dirstamp) tests/$(DEPDIR)/$(am__dirstamp) -video/functional_test_module-capture.$(OBJEXT): video/$(am__dirstamp) \ - video/$(DEPDIR)/$(am__dirstamp) - -functional_test.module$(EXEEXT): $(functional_test_module_OBJECTS) $(functional_test_module_DEPENDENCIES) $(EXTRA_functional_test_module_DEPENDENCIES) - @rm -f functional_test.module$(EXEEXT) - $(AM_V_CCLD)$(functional_test_module_LINK) $(functional_test_module_OBJECTS) $(functional_test_module_LDADD) $(LIBS) -boot/mips/loongson/$(am__dirstamp): - @$(MKDIR_P) boot/mips/loongson - @: > boot/mips/loongson/$(am__dirstamp) -boot/mips/loongson/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) boot/mips/loongson/$(DEPDIR) - @: > boot/mips/loongson/$(DEPDIR)/$(am__dirstamp) -boot/mips/loongson/fwstart_image-fwstart.$(OBJEXT): \ - boot/mips/loongson/$(am__dirstamp) \ - boot/mips/loongson/$(DEPDIR)/$(am__dirstamp) - -fwstart.image$(EXEEXT): $(fwstart_image_OBJECTS) $(fwstart_image_DEPENDENCIES) $(EXTRA_fwstart_image_DEPENDENCIES) - @rm -f fwstart.image$(EXEEXT) - $(AM_V_CCLD)$(fwstart_image_LINK) $(fwstart_image_OBJECTS) $(fwstart_image_LDADD) $(LIBS) -boot/mips/loongson/fwstart_fuloong2f_image-fuloong2f.$(OBJEXT): \ - boot/mips/loongson/$(am__dirstamp) \ - boot/mips/loongson/$(DEPDIR)/$(am__dirstamp) - -fwstart_fuloong2f.image$(EXEEXT): $(fwstart_fuloong2f_image_OBJECTS) $(fwstart_fuloong2f_image_DEPENDENCIES) $(EXTRA_fwstart_fuloong2f_image_DEPENDENCIES) - @rm -f fwstart_fuloong2f.image$(EXEEXT) - $(AM_V_CCLD)$(fwstart_fuloong2f_image_LINK) $(fwstart_fuloong2f_image_OBJECTS) $(fwstart_fuloong2f_image_LDADD) $(LIBS) -lib/libgcrypt-grub/cipher/$(am__dirstamp): - @$(MKDIR_P) lib/libgcrypt-grub/cipher - @: > lib/libgcrypt-grub/cipher/$(am__dirstamp) -lib/libgcrypt-grub/cipher/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) lib/libgcrypt-grub/cipher/$(DEPDIR) - @: > lib/libgcrypt-grub/cipher/$(DEPDIR)/$(am__dirstamp) -lib/libgcrypt-grub/cipher/gcry_arcfour_module-arcfour.$(OBJEXT): \ - lib/libgcrypt-grub/cipher/$(am__dirstamp) \ - lib/libgcrypt-grub/cipher/$(DEPDIR)/$(am__dirstamp) - -gcry_arcfour.module$(EXEEXT): $(gcry_arcfour_module_OBJECTS) $(gcry_arcfour_module_DEPENDENCIES) $(EXTRA_gcry_arcfour_module_DEPENDENCIES) - @rm -f gcry_arcfour.module$(EXEEXT) - $(AM_V_CCLD)$(gcry_arcfour_module_LINK) $(gcry_arcfour_module_OBJECTS) $(gcry_arcfour_module_LDADD) $(LIBS) -lib/libgcrypt-grub/cipher/gcry_blowfish_module-blowfish.$(OBJEXT): \ - lib/libgcrypt-grub/cipher/$(am__dirstamp) \ - lib/libgcrypt-grub/cipher/$(DEPDIR)/$(am__dirstamp) - -gcry_blowfish.module$(EXEEXT): $(gcry_blowfish_module_OBJECTS) $(gcry_blowfish_module_DEPENDENCIES) $(EXTRA_gcry_blowfish_module_DEPENDENCIES) - @rm -f gcry_blowfish.module$(EXEEXT) - $(AM_V_CCLD)$(gcry_blowfish_module_LINK) $(gcry_blowfish_module_OBJECTS) $(gcry_blowfish_module_LDADD) $(LIBS) -lib/libgcrypt-grub/cipher/gcry_camellia_module-camellia-glue.$(OBJEXT): \ - lib/libgcrypt-grub/cipher/$(am__dirstamp) \ - lib/libgcrypt-grub/cipher/$(DEPDIR)/$(am__dirstamp) -lib/libgcrypt-grub/cipher/gcry_camellia_module-camellia.$(OBJEXT): \ - lib/libgcrypt-grub/cipher/$(am__dirstamp) \ - lib/libgcrypt-grub/cipher/$(DEPDIR)/$(am__dirstamp) - -gcry_camellia.module$(EXEEXT): $(gcry_camellia_module_OBJECTS) $(gcry_camellia_module_DEPENDENCIES) $(EXTRA_gcry_camellia_module_DEPENDENCIES) - @rm -f gcry_camellia.module$(EXEEXT) - $(AM_V_CCLD)$(gcry_camellia_module_LINK) $(gcry_camellia_module_OBJECTS) $(gcry_camellia_module_LDADD) $(LIBS) -lib/libgcrypt-grub/cipher/gcry_cast5_module-cast5.$(OBJEXT): \ - lib/libgcrypt-grub/cipher/$(am__dirstamp) \ - lib/libgcrypt-grub/cipher/$(DEPDIR)/$(am__dirstamp) - -gcry_cast5.module$(EXEEXT): $(gcry_cast5_module_OBJECTS) $(gcry_cast5_module_DEPENDENCIES) $(EXTRA_gcry_cast5_module_DEPENDENCIES) - @rm -f gcry_cast5.module$(EXEEXT) - $(AM_V_CCLD)$(gcry_cast5_module_LINK) $(gcry_cast5_module_OBJECTS) $(gcry_cast5_module_LDADD) $(LIBS) -lib/libgcrypt-grub/cipher/gcry_crc_module-crc.$(OBJEXT): \ - lib/libgcrypt-grub/cipher/$(am__dirstamp) \ - lib/libgcrypt-grub/cipher/$(DEPDIR)/$(am__dirstamp) - -gcry_crc.module$(EXEEXT): $(gcry_crc_module_OBJECTS) $(gcry_crc_module_DEPENDENCIES) $(EXTRA_gcry_crc_module_DEPENDENCIES) - @rm -f gcry_crc.module$(EXEEXT) - $(AM_V_CCLD)$(gcry_crc_module_LINK) $(gcry_crc_module_OBJECTS) $(gcry_crc_module_LDADD) $(LIBS) -lib/libgcrypt-grub/cipher/gcry_des_module-des.$(OBJEXT): \ - lib/libgcrypt-grub/cipher/$(am__dirstamp) \ - lib/libgcrypt-grub/cipher/$(DEPDIR)/$(am__dirstamp) - -gcry_des.module$(EXEEXT): $(gcry_des_module_OBJECTS) $(gcry_des_module_DEPENDENCIES) $(EXTRA_gcry_des_module_DEPENDENCIES) - @rm -f gcry_des.module$(EXEEXT) - $(AM_V_CCLD)$(gcry_des_module_LINK) $(gcry_des_module_OBJECTS) $(gcry_des_module_LDADD) $(LIBS) -lib/libgcrypt-grub/cipher/gcry_dsa_module-dsa.$(OBJEXT): \ - lib/libgcrypt-grub/cipher/$(am__dirstamp) \ - lib/libgcrypt-grub/cipher/$(DEPDIR)/$(am__dirstamp) - -gcry_dsa.module$(EXEEXT): $(gcry_dsa_module_OBJECTS) $(gcry_dsa_module_DEPENDENCIES) $(EXTRA_gcry_dsa_module_DEPENDENCIES) - @rm -f gcry_dsa.module$(EXEEXT) - $(AM_V_CCLD)$(gcry_dsa_module_LINK) $(gcry_dsa_module_OBJECTS) $(gcry_dsa_module_LDADD) $(LIBS) -lib/libgcrypt-grub/cipher/gcry_idea_module-idea.$(OBJEXT): \ - lib/libgcrypt-grub/cipher/$(am__dirstamp) \ - lib/libgcrypt-grub/cipher/$(DEPDIR)/$(am__dirstamp) - -gcry_idea.module$(EXEEXT): $(gcry_idea_module_OBJECTS) $(gcry_idea_module_DEPENDENCIES) $(EXTRA_gcry_idea_module_DEPENDENCIES) - @rm -f gcry_idea.module$(EXEEXT) - $(AM_V_CCLD)$(gcry_idea_module_LINK) $(gcry_idea_module_OBJECTS) $(gcry_idea_module_LDADD) $(LIBS) -lib/libgcrypt-grub/cipher/gcry_md4_module-md4.$(OBJEXT): \ - lib/libgcrypt-grub/cipher/$(am__dirstamp) \ - lib/libgcrypt-grub/cipher/$(DEPDIR)/$(am__dirstamp) - -gcry_md4.module$(EXEEXT): $(gcry_md4_module_OBJECTS) $(gcry_md4_module_DEPENDENCIES) $(EXTRA_gcry_md4_module_DEPENDENCIES) - @rm -f gcry_md4.module$(EXEEXT) - $(AM_V_CCLD)$(gcry_md4_module_LINK) $(gcry_md4_module_OBJECTS) $(gcry_md4_module_LDADD) $(LIBS) -lib/libgcrypt-grub/cipher/gcry_md5_module-md5.$(OBJEXT): \ - lib/libgcrypt-grub/cipher/$(am__dirstamp) \ - lib/libgcrypt-grub/cipher/$(DEPDIR)/$(am__dirstamp) - -gcry_md5.module$(EXEEXT): $(gcry_md5_module_OBJECTS) $(gcry_md5_module_DEPENDENCIES) $(EXTRA_gcry_md5_module_DEPENDENCIES) - @rm -f gcry_md5.module$(EXEEXT) - $(AM_V_CCLD)$(gcry_md5_module_LINK) $(gcry_md5_module_OBJECTS) $(gcry_md5_module_LDADD) $(LIBS) -lib/libgcrypt-grub/cipher/gcry_rfc2268_module-rfc2268.$(OBJEXT): \ - lib/libgcrypt-grub/cipher/$(am__dirstamp) \ - lib/libgcrypt-grub/cipher/$(DEPDIR)/$(am__dirstamp) - -gcry_rfc2268.module$(EXEEXT): $(gcry_rfc2268_module_OBJECTS) $(gcry_rfc2268_module_DEPENDENCIES) $(EXTRA_gcry_rfc2268_module_DEPENDENCIES) - @rm -f gcry_rfc2268.module$(EXEEXT) - $(AM_V_CCLD)$(gcry_rfc2268_module_LINK) $(gcry_rfc2268_module_OBJECTS) $(gcry_rfc2268_module_LDADD) $(LIBS) -lib/libgcrypt-grub/cipher/gcry_rijndael_module-rijndael.$(OBJEXT): \ - lib/libgcrypt-grub/cipher/$(am__dirstamp) \ - lib/libgcrypt-grub/cipher/$(DEPDIR)/$(am__dirstamp) - -gcry_rijndael.module$(EXEEXT): $(gcry_rijndael_module_OBJECTS) $(gcry_rijndael_module_DEPENDENCIES) $(EXTRA_gcry_rijndael_module_DEPENDENCIES) - @rm -f gcry_rijndael.module$(EXEEXT) - $(AM_V_CCLD)$(gcry_rijndael_module_LINK) $(gcry_rijndael_module_OBJECTS) $(gcry_rijndael_module_LDADD) $(LIBS) -lib/libgcrypt-grub/cipher/gcry_rmd160_module-rmd160.$(OBJEXT): \ - lib/libgcrypt-grub/cipher/$(am__dirstamp) \ - lib/libgcrypt-grub/cipher/$(DEPDIR)/$(am__dirstamp) - -gcry_rmd160.module$(EXEEXT): $(gcry_rmd160_module_OBJECTS) $(gcry_rmd160_module_DEPENDENCIES) $(EXTRA_gcry_rmd160_module_DEPENDENCIES) - @rm -f gcry_rmd160.module$(EXEEXT) - $(AM_V_CCLD)$(gcry_rmd160_module_LINK) $(gcry_rmd160_module_OBJECTS) $(gcry_rmd160_module_LDADD) $(LIBS) -lib/libgcrypt-grub/cipher/gcry_rsa_module-rsa.$(OBJEXT): \ - lib/libgcrypt-grub/cipher/$(am__dirstamp) \ - lib/libgcrypt-grub/cipher/$(DEPDIR)/$(am__dirstamp) - -gcry_rsa.module$(EXEEXT): $(gcry_rsa_module_OBJECTS) $(gcry_rsa_module_DEPENDENCIES) $(EXTRA_gcry_rsa_module_DEPENDENCIES) - @rm -f gcry_rsa.module$(EXEEXT) - $(AM_V_CCLD)$(gcry_rsa_module_LINK) $(gcry_rsa_module_OBJECTS) $(gcry_rsa_module_LDADD) $(LIBS) -lib/libgcrypt-grub/cipher/gcry_seed_module-seed.$(OBJEXT): \ - lib/libgcrypt-grub/cipher/$(am__dirstamp) \ - lib/libgcrypt-grub/cipher/$(DEPDIR)/$(am__dirstamp) - -gcry_seed.module$(EXEEXT): $(gcry_seed_module_OBJECTS) $(gcry_seed_module_DEPENDENCIES) $(EXTRA_gcry_seed_module_DEPENDENCIES) - @rm -f gcry_seed.module$(EXEEXT) - $(AM_V_CCLD)$(gcry_seed_module_LINK) $(gcry_seed_module_OBJECTS) $(gcry_seed_module_LDADD) $(LIBS) -lib/libgcrypt-grub/cipher/gcry_serpent_module-serpent.$(OBJEXT): \ - lib/libgcrypt-grub/cipher/$(am__dirstamp) \ - lib/libgcrypt-grub/cipher/$(DEPDIR)/$(am__dirstamp) - -gcry_serpent.module$(EXEEXT): $(gcry_serpent_module_OBJECTS) $(gcry_serpent_module_DEPENDENCIES) $(EXTRA_gcry_serpent_module_DEPENDENCIES) - @rm -f gcry_serpent.module$(EXEEXT) - $(AM_V_CCLD)$(gcry_serpent_module_LINK) $(gcry_serpent_module_OBJECTS) $(gcry_serpent_module_LDADD) $(LIBS) -lib/libgcrypt-grub/cipher/gcry_sha1_module-sha1.$(OBJEXT): \ - lib/libgcrypt-grub/cipher/$(am__dirstamp) \ - lib/libgcrypt-grub/cipher/$(DEPDIR)/$(am__dirstamp) - -gcry_sha1.module$(EXEEXT): $(gcry_sha1_module_OBJECTS) $(gcry_sha1_module_DEPENDENCIES) $(EXTRA_gcry_sha1_module_DEPENDENCIES) - @rm -f gcry_sha1.module$(EXEEXT) - $(AM_V_CCLD)$(gcry_sha1_module_LINK) $(gcry_sha1_module_OBJECTS) $(gcry_sha1_module_LDADD) $(LIBS) -lib/libgcrypt-grub/cipher/gcry_sha256_module-sha256.$(OBJEXT): \ - lib/libgcrypt-grub/cipher/$(am__dirstamp) \ - lib/libgcrypt-grub/cipher/$(DEPDIR)/$(am__dirstamp) - -gcry_sha256.module$(EXEEXT): $(gcry_sha256_module_OBJECTS) $(gcry_sha256_module_DEPENDENCIES) $(EXTRA_gcry_sha256_module_DEPENDENCIES) - @rm -f gcry_sha256.module$(EXEEXT) - $(AM_V_CCLD)$(gcry_sha256_module_LINK) $(gcry_sha256_module_OBJECTS) $(gcry_sha256_module_LDADD) $(LIBS) -lib/libgcrypt-grub/cipher/gcry_sha512_module-sha512.$(OBJEXT): \ - lib/libgcrypt-grub/cipher/$(am__dirstamp) \ - lib/libgcrypt-grub/cipher/$(DEPDIR)/$(am__dirstamp) - -gcry_sha512.module$(EXEEXT): $(gcry_sha512_module_OBJECTS) $(gcry_sha512_module_DEPENDENCIES) $(EXTRA_gcry_sha512_module_DEPENDENCIES) - @rm -f gcry_sha512.module$(EXEEXT) - $(AM_V_CCLD)$(gcry_sha512_module_LINK) $(gcry_sha512_module_OBJECTS) $(gcry_sha512_module_LDADD) $(LIBS) -lib/libgcrypt-grub/cipher/gcry_tiger_module-tiger.$(OBJEXT): \ - lib/libgcrypt-grub/cipher/$(am__dirstamp) \ - lib/libgcrypt-grub/cipher/$(DEPDIR)/$(am__dirstamp) - -gcry_tiger.module$(EXEEXT): $(gcry_tiger_module_OBJECTS) $(gcry_tiger_module_DEPENDENCIES) $(EXTRA_gcry_tiger_module_DEPENDENCIES) - @rm -f gcry_tiger.module$(EXEEXT) - $(AM_V_CCLD)$(gcry_tiger_module_LINK) $(gcry_tiger_module_OBJECTS) $(gcry_tiger_module_LDADD) $(LIBS) -lib/libgcrypt-grub/cipher/gcry_twofish_module-twofish.$(OBJEXT): \ - lib/libgcrypt-grub/cipher/$(am__dirstamp) \ - lib/libgcrypt-grub/cipher/$(DEPDIR)/$(am__dirstamp) - -gcry_twofish.module$(EXEEXT): $(gcry_twofish_module_OBJECTS) $(gcry_twofish_module_DEPENDENCIES) $(EXTRA_gcry_twofish_module_DEPENDENCIES) - @rm -f gcry_twofish.module$(EXEEXT) - $(AM_V_CCLD)$(gcry_twofish_module_LINK) $(gcry_twofish_module_OBJECTS) $(gcry_twofish_module_LDADD) $(LIBS) -lib/libgcrypt-grub/cipher/gcry_whirlpool_module-whirlpool.$(OBJEXT): \ - lib/libgcrypt-grub/cipher/$(am__dirstamp) \ - lib/libgcrypt-grub/cipher/$(DEPDIR)/$(am__dirstamp) - -gcry_whirlpool.module$(EXEEXT): $(gcry_whirlpool_module_OBJECTS) $(gcry_whirlpool_module_DEPENDENCIES) $(EXTRA_gcry_whirlpool_module_DEPENDENCIES) - @rm -f gcry_whirlpool.module$(EXEEXT) - $(AM_V_CCLD)$(gcry_whirlpool_module_LINK) $(gcry_whirlpool_module_OBJECTS) $(gcry_whirlpool_module_LDADD) $(LIBS) -gdb/i386/$(am__dirstamp): - @$(MKDIR_P) gdb/i386 - @: > gdb/i386/$(am__dirstamp) -gdb/i386/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) gdb/i386/$(DEPDIR) - @: > gdb/i386/$(DEPDIR)/$(am__dirstamp) -gdb/i386/gdb_module-idt.$(OBJEXT): gdb/i386/$(am__dirstamp) \ - gdb/i386/$(DEPDIR)/$(am__dirstamp) -gdb/i386/gdb_module-machdep.$(OBJEXT): gdb/i386/$(am__dirstamp) \ - gdb/i386/$(DEPDIR)/$(am__dirstamp) -gdb/i386/gdb_module-signal.$(OBJEXT): gdb/i386/$(am__dirstamp) \ - gdb/i386/$(DEPDIR)/$(am__dirstamp) -gdb/$(am__dirstamp): - @$(MKDIR_P) gdb - @: > gdb/$(am__dirstamp) -gdb/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) gdb/$(DEPDIR) - @: > gdb/$(DEPDIR)/$(am__dirstamp) -gdb/gdb_module-cstub.$(OBJEXT): gdb/$(am__dirstamp) \ - gdb/$(DEPDIR)/$(am__dirstamp) -gdb/gdb_module-gdb.$(OBJEXT): gdb/$(am__dirstamp) \ - gdb/$(DEPDIR)/$(am__dirstamp) - -gdb.module$(EXEEXT): $(gdb_module_OBJECTS) $(gdb_module_DEPENDENCIES) $(EXTRA_gdb_module_DEPENDENCIES) - @rm -f gdb.module$(EXEEXT) - $(AM_V_CCLD)$(gdb_module_LINK) $(gdb_module_OBJECTS) $(gdb_module_LDADD) $(LIBS) -disk/geli_module-geli.$(OBJEXT): disk/$(am__dirstamp) \ - disk/$(DEPDIR)/$(am__dirstamp) - -geli.module$(EXEEXT): $(geli_module_OBJECTS) $(geli_module_DEPENDENCIES) $(EXTRA_geli_module_DEPENDENCIES) - @rm -f geli.module$(EXEEXT) - $(AM_V_CCLD)$(geli_module_LINK) $(geli_module_OBJECTS) $(geli_module_LDADD) $(LIBS) -gettext/$(am__dirstamp): - @$(MKDIR_P) gettext - @: > gettext/$(am__dirstamp) -gettext/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) gettext/$(DEPDIR) - @: > gettext/$(DEPDIR)/$(am__dirstamp) -gettext/gettext_module-gettext.$(OBJEXT): gettext/$(am__dirstamp) \ - gettext/$(DEPDIR)/$(am__dirstamp) - -gettext.module$(EXEEXT): $(gettext_module_OBJECTS) $(gettext_module_DEPENDENCIES) $(EXTRA_gettext_module_DEPENDENCIES) - @rm -f gettext.module$(EXEEXT) - $(AM_V_CCLD)$(gettext_module_LINK) $(gettext_module_OBJECTS) $(gettext_module_LDADD) $(LIBS) -gfxmenu/$(am__dirstamp): - @$(MKDIR_P) gfxmenu - @: > gfxmenu/$(am__dirstamp) -gfxmenu/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) gfxmenu/$(DEPDIR) - @: > gfxmenu/$(DEPDIR)/$(am__dirstamp) -gfxmenu/gfxmenu_module-gfxmenu.$(OBJEXT): gfxmenu/$(am__dirstamp) \ - gfxmenu/$(DEPDIR)/$(am__dirstamp) -gfxmenu/gfxmenu_module-view.$(OBJEXT): gfxmenu/$(am__dirstamp) \ - gfxmenu/$(DEPDIR)/$(am__dirstamp) -gfxmenu/gfxmenu_module-font.$(OBJEXT): gfxmenu/$(am__dirstamp) \ - gfxmenu/$(DEPDIR)/$(am__dirstamp) -gfxmenu/gfxmenu_module-icon_manager.$(OBJEXT): \ - gfxmenu/$(am__dirstamp) gfxmenu/$(DEPDIR)/$(am__dirstamp) -gfxmenu/gfxmenu_module-theme_loader.$(OBJEXT): \ - gfxmenu/$(am__dirstamp) gfxmenu/$(DEPDIR)/$(am__dirstamp) -gfxmenu/gfxmenu_module-widget-box.$(OBJEXT): gfxmenu/$(am__dirstamp) \ - gfxmenu/$(DEPDIR)/$(am__dirstamp) -gfxmenu/gfxmenu_module-gui_canvas.$(OBJEXT): gfxmenu/$(am__dirstamp) \ - gfxmenu/$(DEPDIR)/$(am__dirstamp) -gfxmenu/gfxmenu_module-gui_circular_progress.$(OBJEXT): \ - gfxmenu/$(am__dirstamp) gfxmenu/$(DEPDIR)/$(am__dirstamp) -gfxmenu/gfxmenu_module-gui_box.$(OBJEXT): gfxmenu/$(am__dirstamp) \ - gfxmenu/$(DEPDIR)/$(am__dirstamp) -gfxmenu/gfxmenu_module-gui_label.$(OBJEXT): gfxmenu/$(am__dirstamp) \ - gfxmenu/$(DEPDIR)/$(am__dirstamp) -gfxmenu/gfxmenu_module-gui_list.$(OBJEXT): gfxmenu/$(am__dirstamp) \ - gfxmenu/$(DEPDIR)/$(am__dirstamp) -gfxmenu/gfxmenu_module-gui_image.$(OBJEXT): gfxmenu/$(am__dirstamp) \ - gfxmenu/$(DEPDIR)/$(am__dirstamp) -gfxmenu/gfxmenu_module-gui_progress_bar.$(OBJEXT): \ - gfxmenu/$(am__dirstamp) gfxmenu/$(DEPDIR)/$(am__dirstamp) -gfxmenu/gfxmenu_module-gui_util.$(OBJEXT): gfxmenu/$(am__dirstamp) \ - gfxmenu/$(DEPDIR)/$(am__dirstamp) -gfxmenu/gfxmenu_module-gui_string_util.$(OBJEXT): \ - gfxmenu/$(am__dirstamp) gfxmenu/$(DEPDIR)/$(am__dirstamp) - -gfxmenu.module$(EXEEXT): $(gfxmenu_module_OBJECTS) $(gfxmenu_module_DEPENDENCIES) $(EXTRA_gfxmenu_module_DEPENDENCIES) - @rm -f gfxmenu.module$(EXEEXT) - $(AM_V_CCLD)$(gfxmenu_module_LINK) $(gfxmenu_module_OBJECTS) $(gfxmenu_module_LDADD) $(LIBS) -term/gfxterm_module-gfxterm.$(OBJEXT): term/$(am__dirstamp) \ - term/$(DEPDIR)/$(am__dirstamp) - -gfxterm.module$(EXEEXT): $(gfxterm_module_OBJECTS) $(gfxterm_module_DEPENDENCIES) $(EXTRA_gfxterm_module_DEPENDENCIES) - @rm -f gfxterm.module$(EXEEXT) - $(AM_V_CCLD)$(gfxterm_module_LINK) $(gfxterm_module_OBJECTS) $(gfxterm_module_LDADD) $(LIBS) -term/gfxterm_background_module-gfxterm_background.$(OBJEXT): \ - term/$(am__dirstamp) term/$(DEPDIR)/$(am__dirstamp) - -gfxterm_background.module$(EXEEXT): $(gfxterm_background_module_OBJECTS) $(gfxterm_background_module_DEPENDENCIES) $(EXTRA_gfxterm_background_module_DEPENDENCIES) - @rm -f gfxterm_background.module$(EXEEXT) - $(AM_V_CCLD)$(gfxterm_background_module_LINK) $(gfxterm_background_module_OBJECTS) $(gfxterm_background_module_LDADD) $(LIBS) -tests/gfxterm_menu_module-gfxterm_menu.$(OBJEXT): \ - tests/$(am__dirstamp) tests/$(DEPDIR)/$(am__dirstamp) - -gfxterm_menu.module$(EXEEXT): $(gfxterm_menu_module_OBJECTS) $(gfxterm_menu_module_DEPENDENCIES) $(EXTRA_gfxterm_menu_module_DEPENDENCIES) - @rm -f gfxterm_menu.module$(EXEEXT) - $(AM_V_CCLD)$(gfxterm_menu_module_LINK) $(gfxterm_menu_module_OBJECTS) $(gfxterm_menu_module_LDADD) $(LIBS) -commands/gptsync_module-gptsync.$(OBJEXT): commands/$(am__dirstamp) \ - commands/$(DEPDIR)/$(am__dirstamp) - -gptsync.module$(EXEEXT): $(gptsync_module_OBJECTS) $(gptsync_module_DEPENDENCIES) $(EXTRA_gptsync_module_DEPENDENCIES) - @rm -f gptsync.module$(EXEEXT) - $(AM_V_CCLD)$(gptsync_module_LINK) $(gptsync_module_OBJECTS) $(gptsync_module_LDADD) $(LIBS) -kern/emu/$(am__dirstamp): - @$(MKDIR_P) kern/emu - @: > kern/emu/$(am__dirstamp) -kern/emu/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) kern/emu/$(DEPDIR) - @: > kern/emu/$(DEPDIR)/$(am__dirstamp) -kern/emu/grub_emu-full.$(OBJEXT): kern/emu/$(am__dirstamp) \ - kern/emu/$(DEPDIR)/$(am__dirstamp) - -grub-emu$(EXEEXT): $(grub_emu_OBJECTS) $(grub_emu_DEPENDENCIES) $(EXTRA_grub_emu_DEPENDENCIES) - @rm -f grub-emu$(EXEEXT) - $(AM_V_CCLD)$(grub_emu_LINK) $(grub_emu_OBJECTS) $(grub_emu_LDADD) $(LIBS) -kern/emu/grub_emu_lite-lite.$(OBJEXT): kern/emu/$(am__dirstamp) \ - kern/emu/$(DEPDIR)/$(am__dirstamp) - -grub-emu-lite$(EXEEXT): $(grub_emu_lite_OBJECTS) $(grub_emu_lite_DEPENDENCIES) $(EXTRA_grub_emu_lite_DEPENDENCIES) - @rm -f grub-emu-lite$(EXEEXT) - $(AM_V_CCLD)$(grub_emu_lite_LINK) $(grub_emu_lite_OBJECTS) $(grub_emu_lite_LDADD) $(LIBS) -io/gzio_module-gzio.$(OBJEXT): io/$(am__dirstamp) \ - io/$(DEPDIR)/$(am__dirstamp) - -gzio.module$(EXEEXT): $(gzio_module_OBJECTS) $(gzio_module_DEPENDENCIES) $(EXTRA_gzio_module_DEPENDENCIES) - @rm -f gzio.module$(EXEEXT) - $(AM_V_CCLD)$(gzio_module_LINK) $(gzio_module_OBJECTS) $(gzio_module_LDADD) $(LIBS) -lib/efi/halt_module-halt.$(OBJEXT): lib/efi/$(am__dirstamp) \ - lib/efi/$(DEPDIR)/$(am__dirstamp) -commands/halt_module-halt.$(OBJEXT): commands/$(am__dirstamp) \ - commands/$(DEPDIR)/$(am__dirstamp) -lib/dummy/halt_module-halt.$(OBJEXT): lib/dummy/$(am__dirstamp) \ - lib/dummy/$(DEPDIR)/$(am__dirstamp) -lib/emu/$(am__dirstamp): - @$(MKDIR_P) lib/emu - @: > lib/emu/$(am__dirstamp) -lib/emu/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) lib/emu/$(DEPDIR) - @: > lib/emu/$(DEPDIR)/$(am__dirstamp) -lib/emu/halt_module-halt.$(OBJEXT): lib/emu/$(am__dirstamp) \ - lib/emu/$(DEPDIR)/$(am__dirstamp) -commands/halt_module-acpihalt.$(OBJEXT): commands/$(am__dirstamp) \ - commands/$(DEPDIR)/$(am__dirstamp) -lib/i386/halt_module-halt.$(OBJEXT): lib/i386/$(am__dirstamp) \ - lib/i386/$(DEPDIR)/$(am__dirstamp) -lib/ieee1275/halt_module-halt.$(OBJEXT): lib/ieee1275/$(am__dirstamp) \ - lib/ieee1275/$(DEPDIR)/$(am__dirstamp) -commands/i386/pc/halt_module-halt.$(OBJEXT): \ - commands/i386/pc/$(am__dirstamp) \ - commands/i386/pc/$(DEPDIR)/$(am__dirstamp) -lib/xen/halt_module-halt.$(OBJEXT): lib/xen/$(am__dirstamp) \ - lib/xen/$(DEPDIR)/$(am__dirstamp) - -halt.module$(EXEEXT): $(halt_module_OBJECTS) $(halt_module_DEPENDENCIES) $(EXTRA_halt_module_DEPENDENCIES) - @rm -f halt.module$(EXEEXT) - $(AM_V_CCLD)$(halt_module_LINK) $(halt_module_OBJECTS) $(halt_module_LDADD) $(LIBS) -commands/hashsum_module-hashsum.$(OBJEXT): commands/$(am__dirstamp) \ - commands/$(DEPDIR)/$(am__dirstamp) - -hashsum.module$(EXEEXT): $(hashsum_module_OBJECTS) $(hashsum_module_DEPENDENCIES) $(EXTRA_hashsum_module_DEPENDENCIES) - @rm -f hashsum.module$(EXEEXT) - $(AM_V_CCLD)$(hashsum_module_LINK) $(hashsum_module_OBJECTS) $(hashsum_module_LDADD) $(LIBS) -commands/hdparm_module-hdparm.$(OBJEXT): commands/$(am__dirstamp) \ - commands/$(DEPDIR)/$(am__dirstamp) - -hdparm.module$(EXEEXT): $(hdparm_module_OBJECTS) $(hdparm_module_DEPENDENCIES) $(EXTRA_hdparm_module_DEPENDENCIES) - @rm -f hdparm.module$(EXEEXT) - $(AM_V_CCLD)$(hdparm_module_LINK) $(hdparm_module_OBJECTS) $(hdparm_module_LDADD) $(LIBS) -hello/$(am__dirstamp): - @$(MKDIR_P) hello - @: > hello/$(am__dirstamp) -hello/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) hello/$(DEPDIR) - @: > hello/$(DEPDIR)/$(am__dirstamp) -hello/hello_module-hello.$(OBJEXT): hello/$(am__dirstamp) \ - hello/$(DEPDIR)/$(am__dirstamp) - -hello.module$(EXEEXT): $(hello_module_OBJECTS) $(hello_module_DEPENDENCIES) $(EXTRA_hello_module_DEPENDENCIES) - @rm -f hello.module$(EXEEXT) - $(AM_V_CCLD)$(hello_module_LINK) $(hello_module_OBJECTS) $(hello_module_LDADD) $(LIBS) -commands/help_module-help.$(OBJEXT): commands/$(am__dirstamp) \ - commands/$(DEPDIR)/$(am__dirstamp) - -help.module$(EXEEXT): $(help_module_OBJECTS) $(help_module_DEPENDENCIES) $(EXTRA_help_module_DEPENDENCIES) - @rm -f help.module$(EXEEXT) - $(AM_V_CCLD)$(help_module_LINK) $(help_module_OBJECTS) $(help_module_LDADD) $(LIBS) -commands/hexdump_module-hexdump.$(OBJEXT): commands/$(am__dirstamp) \ - commands/$(DEPDIR)/$(am__dirstamp) -lib/hexdump_module-hexdump.$(OBJEXT): lib/$(am__dirstamp) \ - lib/$(DEPDIR)/$(am__dirstamp) - -hexdump.module$(EXEEXT): $(hexdump_module_OBJECTS) $(hexdump_module_DEPENDENCIES) $(EXTRA_hexdump_module_DEPENDENCIES) - @rm -f hexdump.module$(EXEEXT) - $(AM_V_CCLD)$(hexdump_module_LINK) $(hexdump_module_OBJECTS) $(hexdump_module_LDADD) $(LIBS) -fs/hfs_module-hfs.$(OBJEXT): fs/$(am__dirstamp) \ - fs/$(DEPDIR)/$(am__dirstamp) - -hfs.module$(EXEEXT): $(hfs_module_OBJECTS) $(hfs_module_DEPENDENCIES) $(EXTRA_hfs_module_DEPENDENCIES) - @rm -f hfs.module$(EXEEXT) - $(AM_V_CCLD)$(hfs_module_LINK) $(hfs_module_OBJECTS) $(hfs_module_LDADD) $(LIBS) -fs/hfsplus_module-hfsplus.$(OBJEXT): fs/$(am__dirstamp) \ - fs/$(DEPDIR)/$(am__dirstamp) - -hfsplus.module$(EXEEXT): $(hfsplus_module_OBJECTS) $(hfsplus_module_DEPENDENCIES) $(EXTRA_hfsplus_module_DEPENDENCIES) - @rm -f hfsplus.module$(EXEEXT) - $(AM_V_CCLD)$(hfsplus_module_LINK) $(hfsplus_module_OBJECTS) $(hfsplus_module_LDADD) $(LIBS) -fs/hfspluscomp_module-hfspluscomp.$(OBJEXT): fs/$(am__dirstamp) \ - fs/$(DEPDIR)/$(am__dirstamp) - -hfspluscomp.module$(EXEEXT): $(hfspluscomp_module_OBJECTS) $(hfspluscomp_module_DEPENDENCIES) $(EXTRA_hfspluscomp_module_DEPENDENCIES) - @rm -f hfspluscomp.module$(EXEEXT) - $(AM_V_CCLD)$(hfspluscomp_module_LINK) $(hfspluscomp_module_OBJECTS) $(hfspluscomp_module_LDADD) $(LIBS) -net/$(am__dirstamp): - @$(MKDIR_P) net - @: > net/$(am__dirstamp) -net/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) net/$(DEPDIR) - @: > net/$(DEPDIR)/$(am__dirstamp) -net/http_module-http.$(OBJEXT): net/$(am__dirstamp) \ - net/$(DEPDIR)/$(am__dirstamp) - -http.module$(EXEEXT): $(http_module_OBJECTS) $(http_module_DEPENDENCIES) $(EXTRA_http_module_DEPENDENCIES) - @rm -f http.module$(EXEEXT) - $(AM_V_CCLD)$(http_module_LINK) $(http_module_OBJECTS) $(http_module_LDADD) $(LIBS) -video/ieee1275_fb_module-ieee1275.$(OBJEXT): video/$(am__dirstamp) \ - video/$(DEPDIR)/$(am__dirstamp) - -ieee1275_fb.module$(EXEEXT): $(ieee1275_fb_module_OBJECTS) $(ieee1275_fb_module_DEPENDENCIES) $(EXTRA_ieee1275_fb_module_DEPENDENCIES) - @rm -f ieee1275_fb.module$(EXEEXT) - $(AM_V_CCLD)$(ieee1275_fb_module_LINK) $(ieee1275_fb_module_OBJECTS) $(ieee1275_fb_module_LDADD) $(LIBS) -commands/iorw_module-iorw.$(OBJEXT): commands/$(am__dirstamp) \ - commands/$(DEPDIR)/$(am__dirstamp) - -iorw.module$(EXEEXT): $(iorw_module_OBJECTS) $(iorw_module_DEPENDENCIES) $(EXTRA_iorw_module_DEPENDENCIES) - @rm -f iorw.module$(EXEEXT) - $(AM_V_CCLD)$(iorw_module_LINK) $(iorw_module_OBJECTS) $(iorw_module_LDADD) $(LIBS) -fs/iso9660_module-iso9660.$(OBJEXT): fs/$(am__dirstamp) \ - fs/$(DEPDIR)/$(am__dirstamp) - -iso9660.module$(EXEEXT): $(iso9660_module_OBJECTS) $(iso9660_module_DEPENDENCIES) $(EXTRA_iso9660_module_DEPENDENCIES) - @rm -f iso9660.module$(EXEEXT) - $(AM_V_CCLD)$(iso9660_module_LINK) $(iso9660_module_OBJECTS) $(iso9660_module_LDADD) $(LIBS) -fs/jfs_module-jfs.$(OBJEXT): fs/$(am__dirstamp) \ - fs/$(DEPDIR)/$(am__dirstamp) - -jfs.module$(EXEEXT): $(jfs_module_OBJECTS) $(jfs_module_DEPENDENCIES) $(EXTRA_jfs_module_DEPENDENCIES) - @rm -f jfs.module$(EXEEXT) - $(AM_V_CCLD)$(jfs_module_LINK) $(jfs_module_OBJECTS) $(jfs_module_LDADD) $(LIBS) -video/readers/$(am__dirstamp): - @$(MKDIR_P) video/readers - @: > video/readers/$(am__dirstamp) -video/readers/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) video/readers/$(DEPDIR) - @: > video/readers/$(DEPDIR)/$(am__dirstamp) -video/readers/jpeg_module-jpeg.$(OBJEXT): \ - video/readers/$(am__dirstamp) \ - video/readers/$(DEPDIR)/$(am__dirstamp) - -jpeg.module$(EXEEXT): $(jpeg_module_OBJECTS) $(jpeg_module_DEPENDENCIES) $(EXTRA_jpeg_module_DEPENDENCIES) - @rm -f jpeg.module$(EXEEXT) - $(AM_V_CCLD)$(jpeg_module_LINK) $(jpeg_module_OBJECTS) $(jpeg_module_LDADD) $(LIBS) -kern/arm64/efi/$(am__dirstamp): - @$(MKDIR_P) kern/arm64/efi - @: > kern/arm64/efi/$(am__dirstamp) -kern/arm64/efi/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) kern/arm64/efi/$(DEPDIR) - @: > kern/arm64/efi/$(DEPDIR)/$(am__dirstamp) -kern/arm64/efi/kernel_exec-startup.$(OBJEXT): \ - kern/arm64/efi/$(am__dirstamp) \ - kern/arm64/efi/$(DEPDIR)/$(am__dirstamp) -kern/arm64/efi/kernel_exec-init.$(OBJEXT): \ - kern/arm64/efi/$(am__dirstamp) \ - kern/arm64/efi/$(DEPDIR)/$(am__dirstamp) -kern/efi/$(am__dirstamp): - @$(MKDIR_P) kern/efi - @: > kern/efi/$(am__dirstamp) -kern/efi/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) kern/efi/$(DEPDIR) - @: > kern/efi/$(DEPDIR)/$(am__dirstamp) -kern/efi/kernel_exec-fdt.$(OBJEXT): kern/efi/$(am__dirstamp) \ - kern/efi/$(DEPDIR)/$(am__dirstamp) -kern/arm64/$(am__dirstamp): - @$(MKDIR_P) kern/arm64 - @: > kern/arm64/$(am__dirstamp) -kern/arm64/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) kern/arm64/$(DEPDIR) - @: > kern/arm64/$(DEPDIR)/$(am__dirstamp) -kern/arm64/kernel_exec-cache.$(OBJEXT): kern/arm64/$(am__dirstamp) \ - kern/arm64/$(DEPDIR)/$(am__dirstamp) -kern/arm64/kernel_exec-cache_flush.$(OBJEXT): \ - kern/arm64/$(am__dirstamp) \ - kern/arm64/$(DEPDIR)/$(am__dirstamp) -kern/arm64/kernel_exec-dl.$(OBJEXT): kern/arm64/$(am__dirstamp) \ - kern/arm64/$(DEPDIR)/$(am__dirstamp) -kern/arm64/kernel_exec-dl_helper.$(OBJEXT): \ - kern/arm64/$(am__dirstamp) \ - kern/arm64/$(DEPDIR)/$(am__dirstamp) -disk/efi/$(am__dirstamp): - @$(MKDIR_P) disk/efi - @: > disk/efi/$(am__dirstamp) -disk/efi/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) disk/efi/$(DEPDIR) - @: > disk/efi/$(DEPDIR)/$(am__dirstamp) -disk/efi/kernel_exec-efidisk.$(OBJEXT): disk/efi/$(am__dirstamp) \ - disk/efi/$(DEPDIR)/$(am__dirstamp) -kern/efi/kernel_exec-efi.$(OBJEXT): kern/efi/$(am__dirstamp) \ - kern/efi/$(DEPDIR)/$(am__dirstamp) -kern/efi/kernel_exec-init.$(OBJEXT): kern/efi/$(am__dirstamp) \ - kern/efi/$(DEPDIR)/$(am__dirstamp) -kern/efi/kernel_exec-mm.$(OBJEXT): kern/efi/$(am__dirstamp) \ - kern/efi/$(DEPDIR)/$(am__dirstamp) -term/efi/$(am__dirstamp): - @$(MKDIR_P) term/efi - @: > term/efi/$(am__dirstamp) -term/efi/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) term/efi/$(DEPDIR) - @: > term/efi/$(DEPDIR)/$(am__dirstamp) -term/efi/kernel_exec-console.$(OBJEXT): term/efi/$(am__dirstamp) \ - term/efi/$(DEPDIR)/$(am__dirstamp) -kern/kernel_exec-acpi.$(OBJEXT): kern/$(am__dirstamp) \ - kern/$(DEPDIR)/$(am__dirstamp) -kern/efi/kernel_exec-acpi.$(OBJEXT): kern/efi/$(am__dirstamp) \ - kern/efi/$(DEPDIR)/$(am__dirstamp) -kern/kernel_exec-compiler-rt.$(OBJEXT): kern/$(am__dirstamp) \ - kern/$(DEPDIR)/$(am__dirstamp) -kern/kernel_exec-mm.$(OBJEXT): kern/$(am__dirstamp) \ - kern/$(DEPDIR)/$(am__dirstamp) -kern/kernel_exec-time.$(OBJEXT): kern/$(am__dirstamp) \ - kern/$(DEPDIR)/$(am__dirstamp) -kern/generic/$(am__dirstamp): - @$(MKDIR_P) kern/generic - @: > kern/generic/$(am__dirstamp) -kern/generic/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) kern/generic/$(DEPDIR) - @: > kern/generic/$(DEPDIR)/$(am__dirstamp) -kern/generic/kernel_exec-millisleep.$(OBJEXT): \ - kern/generic/$(am__dirstamp) \ - kern/generic/$(DEPDIR)/$(am__dirstamp) -kern/kernel_exec-command.$(OBJEXT): kern/$(am__dirstamp) \ - kern/$(DEPDIR)/$(am__dirstamp) -kern/kernel_exec-corecmd.$(OBJEXT): kern/$(am__dirstamp) \ - kern/$(DEPDIR)/$(am__dirstamp) -kern/kernel_exec-device.$(OBJEXT): kern/$(am__dirstamp) \ - kern/$(DEPDIR)/$(am__dirstamp) -kern/kernel_exec-disk.$(OBJEXT): kern/$(am__dirstamp) \ - kern/$(DEPDIR)/$(am__dirstamp) -kern/kernel_exec-dl.$(OBJEXT): kern/$(am__dirstamp) \ - kern/$(DEPDIR)/$(am__dirstamp) -kern/kernel_exec-env.$(OBJEXT): kern/$(am__dirstamp) \ - kern/$(DEPDIR)/$(am__dirstamp) -kern/kernel_exec-err.$(OBJEXT): kern/$(am__dirstamp) \ - kern/$(DEPDIR)/$(am__dirstamp) -kern/kernel_exec-file.$(OBJEXT): kern/$(am__dirstamp) \ - kern/$(DEPDIR)/$(am__dirstamp) -kern/kernel_exec-fs.$(OBJEXT): kern/$(am__dirstamp) \ - kern/$(DEPDIR)/$(am__dirstamp) -kern/kernel_exec-list.$(OBJEXT): kern/$(am__dirstamp) \ - kern/$(DEPDIR)/$(am__dirstamp) -kern/kernel_exec-main.$(OBJEXT): kern/$(am__dirstamp) \ - kern/$(DEPDIR)/$(am__dirstamp) -kern/kernel_exec-misc.$(OBJEXT): kern/$(am__dirstamp) \ - kern/$(DEPDIR)/$(am__dirstamp) -kern/kernel_exec-parser.$(OBJEXT): kern/$(am__dirstamp) \ - kern/$(DEPDIR)/$(am__dirstamp) -kern/kernel_exec-partition.$(OBJEXT): kern/$(am__dirstamp) \ - kern/$(DEPDIR)/$(am__dirstamp) -kern/kernel_exec-rescue_parser.$(OBJEXT): kern/$(am__dirstamp) \ - kern/$(DEPDIR)/$(am__dirstamp) -kern/kernel_exec-rescue_reader.$(OBJEXT): kern/$(am__dirstamp) \ - kern/$(DEPDIR)/$(am__dirstamp) -kern/kernel_exec-term.$(OBJEXT): kern/$(am__dirstamp) \ - kern/$(DEPDIR)/$(am__dirstamp) -kern/arm/$(am__dirstamp): - @$(MKDIR_P) kern/arm - @: > kern/arm/$(am__dirstamp) -kern/arm/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) kern/arm/$(DEPDIR) - @: > kern/arm/$(DEPDIR)/$(am__dirstamp) -kern/arm/kernel_exec-startup.$(OBJEXT): kern/arm/$(am__dirstamp) \ - kern/arm/$(DEPDIR)/$(am__dirstamp) -kern/arm/coreboot/$(am__dirstamp): - @$(MKDIR_P) kern/arm/coreboot - @: > kern/arm/coreboot/$(am__dirstamp) -kern/arm/coreboot/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) kern/arm/coreboot/$(DEPDIR) - @: > kern/arm/coreboot/$(DEPDIR)/$(am__dirstamp) -kern/arm/coreboot/kernel_exec-init.$(OBJEXT): \ - kern/arm/coreboot/$(am__dirstamp) \ - kern/arm/coreboot/$(DEPDIR)/$(am__dirstamp) -kern/arm/coreboot/kernel_exec-timer.$(OBJEXT): \ - kern/arm/coreboot/$(am__dirstamp) \ - kern/arm/coreboot/$(DEPDIR)/$(am__dirstamp) -kern/arm/coreboot/kernel_exec-coreboot.$(OBJEXT): \ - kern/arm/coreboot/$(am__dirstamp) \ - kern/arm/coreboot/$(DEPDIR)/$(am__dirstamp) -lib/kernel_exec-fdt.$(OBJEXT): lib/$(am__dirstamp) \ - lib/$(DEPDIR)/$(am__dirstamp) -bus/kernel_exec-fdt.$(OBJEXT): bus/$(am__dirstamp) \ - bus/$(DEPDIR)/$(am__dirstamp) -term/kernel_exec-ps2.$(OBJEXT): term/$(am__dirstamp) \ - term/$(DEPDIR)/$(am__dirstamp) -term/arm/$(am__dirstamp): - @$(MKDIR_P) term/arm - @: > term/arm/$(am__dirstamp) -term/arm/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) term/arm/$(DEPDIR) - @: > term/arm/$(DEPDIR)/$(am__dirstamp) -term/arm/kernel_exec-pl050.$(OBJEXT): term/arm/$(am__dirstamp) \ - term/arm/$(DEPDIR)/$(am__dirstamp) -term/arm/kernel_exec-cros.$(OBJEXT): term/arm/$(am__dirstamp) \ - term/arm/$(DEPDIR)/$(am__dirstamp) -term/arm/kernel_exec-cros_ec.$(OBJEXT): term/arm/$(am__dirstamp) \ - term/arm/$(DEPDIR)/$(am__dirstamp) -bus/spi/$(am__dirstamp): - @$(MKDIR_P) bus/spi - @: > bus/spi/$(am__dirstamp) -bus/spi/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) bus/spi/$(DEPDIR) - @: > bus/spi/$(DEPDIR)/$(am__dirstamp) -bus/spi/kernel_exec-rk3288_spi.$(OBJEXT): bus/spi/$(am__dirstamp) \ - bus/spi/$(DEPDIR)/$(am__dirstamp) -commands/kernel_exec-keylayouts.$(OBJEXT): commands/$(am__dirstamp) \ - commands/$(DEPDIR)/$(am__dirstamp) -kern/arm/coreboot/kernel_exec-dma.$(OBJEXT): \ - kern/arm/coreboot/$(am__dirstamp) \ - kern/arm/coreboot/$(DEPDIR)/$(am__dirstamp) -kern/arm/coreboot/kernel_exec-cbtable.$(OBJEXT): \ - kern/arm/coreboot/$(am__dirstamp) \ - kern/arm/coreboot/$(DEPDIR)/$(am__dirstamp) -video/coreboot/$(am__dirstamp): - @$(MKDIR_P) video/coreboot - @: > video/coreboot/$(am__dirstamp) -video/coreboot/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) video/coreboot/$(DEPDIR) - @: > video/coreboot/$(DEPDIR)/$(am__dirstamp) -video/coreboot/kernel_exec-cbfb.$(OBJEXT): \ - video/coreboot/$(am__dirstamp) \ - video/coreboot/$(DEPDIR)/$(am__dirstamp) -kern/coreboot/kernel_exec-mmap.$(OBJEXT): \ - kern/coreboot/$(am__dirstamp) \ - kern/coreboot/$(DEPDIR)/$(am__dirstamp) -kern/coreboot/kernel_exec-cbtable.$(OBJEXT): \ - kern/coreboot/$(am__dirstamp) \ - kern/coreboot/$(DEPDIR)/$(am__dirstamp) -term/kernel_exec-gfxterm.$(OBJEXT): term/$(am__dirstamp) \ - term/$(DEPDIR)/$(am__dirstamp) -font/kernel_exec-font.$(OBJEXT): font/$(am__dirstamp) \ - font/$(DEPDIR)/$(am__dirstamp) -font/kernel_exec-font_cmd.$(OBJEXT): font/$(am__dirstamp) \ - font/$(DEPDIR)/$(am__dirstamp) -io/kernel_exec-bufio.$(OBJEXT): io/$(am__dirstamp) \ - io/$(DEPDIR)/$(am__dirstamp) -video/fb/$(am__dirstamp): - @$(MKDIR_P) video/fb - @: > video/fb/$(am__dirstamp) -video/fb/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) video/fb/$(DEPDIR) - @: > video/fb/$(DEPDIR)/$(am__dirstamp) -video/fb/kernel_exec-fbblit.$(OBJEXT): video/fb/$(am__dirstamp) \ - video/fb/$(DEPDIR)/$(am__dirstamp) -video/fb/kernel_exec-fbfill.$(OBJEXT): video/fb/$(am__dirstamp) \ - video/fb/$(DEPDIR)/$(am__dirstamp) -video/fb/kernel_exec-fbutil.$(OBJEXT): video/fb/$(am__dirstamp) \ - video/fb/$(DEPDIR)/$(am__dirstamp) -video/fb/kernel_exec-video_fb.$(OBJEXT): video/fb/$(am__dirstamp) \ - video/fb/$(DEPDIR)/$(am__dirstamp) -video/kernel_exec-video.$(OBJEXT): video/$(am__dirstamp) \ - video/$(DEPDIR)/$(am__dirstamp) -kern/arm/kernel_exec-dl.$(OBJEXT): kern/arm/$(am__dirstamp) \ - kern/arm/$(DEPDIR)/$(am__dirstamp) -kern/arm/kernel_exec-dl_helper.$(OBJEXT): kern/arm/$(am__dirstamp) \ - kern/arm/$(DEPDIR)/$(am__dirstamp) -kern/arm/kernel_exec-cache_armv6.$(OBJEXT): kern/arm/$(am__dirstamp) \ - kern/arm/$(DEPDIR)/$(am__dirstamp) -kern/arm/kernel_exec-cache_armv7.$(OBJEXT): kern/arm/$(am__dirstamp) \ - kern/arm/$(DEPDIR)/$(am__dirstamp) -kern/arm/kernel_exec-cache.$(OBJEXT): kern/arm/$(am__dirstamp) \ - kern/arm/$(DEPDIR)/$(am__dirstamp) -kern/arm/kernel_exec-compiler-rt.$(OBJEXT): kern/arm/$(am__dirstamp) \ - kern/arm/$(DEPDIR)/$(am__dirstamp) -lib/kernel_exec-division.$(OBJEXT): lib/$(am__dirstamp) \ - lib/$(DEPDIR)/$(am__dirstamp) -kern/arm/efi/$(am__dirstamp): - @$(MKDIR_P) kern/arm/efi - @: > kern/arm/efi/$(am__dirstamp) -kern/arm/efi/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) kern/arm/efi/$(DEPDIR) - @: > kern/arm/efi/$(DEPDIR)/$(am__dirstamp) -kern/arm/efi/kernel_exec-startup.$(OBJEXT): \ - kern/arm/efi/$(am__dirstamp) \ - kern/arm/efi/$(DEPDIR)/$(am__dirstamp) -kern/arm/efi/kernel_exec-init.$(OBJEXT): kern/arm/efi/$(am__dirstamp) \ - kern/arm/efi/$(DEPDIR)/$(am__dirstamp) -kern/arm/uboot/$(am__dirstamp): - @$(MKDIR_P) kern/arm/uboot - @: > kern/arm/uboot/$(am__dirstamp) -kern/arm/uboot/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) kern/arm/uboot/$(DEPDIR) - @: > kern/arm/uboot/$(DEPDIR)/$(am__dirstamp) -kern/arm/uboot/kernel_exec-init.$(OBJEXT): \ - kern/arm/uboot/$(am__dirstamp) \ - kern/arm/uboot/$(DEPDIR)/$(am__dirstamp) -kern/arm/uboot/kernel_exec-uboot.$(OBJEXT): \ - kern/arm/uboot/$(am__dirstamp) \ - kern/arm/uboot/$(DEPDIR)/$(am__dirstamp) -disk/uboot/$(am__dirstamp): - @$(MKDIR_P) disk/uboot - @: > disk/uboot/$(am__dirstamp) -disk/uboot/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) disk/uboot/$(DEPDIR) - @: > disk/uboot/$(DEPDIR)/$(am__dirstamp) -disk/uboot/kernel_exec-ubootdisk.$(OBJEXT): \ - disk/uboot/$(am__dirstamp) \ - disk/uboot/$(DEPDIR)/$(am__dirstamp) -kern/uboot/$(am__dirstamp): - @$(MKDIR_P) kern/uboot - @: > kern/uboot/$(am__dirstamp) -kern/uboot/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) kern/uboot/$(DEPDIR) - @: > kern/uboot/$(DEPDIR)/$(am__dirstamp) -kern/uboot/kernel_exec-uboot.$(OBJEXT): kern/uboot/$(am__dirstamp) \ - kern/uboot/$(DEPDIR)/$(am__dirstamp) -kern/uboot/kernel_exec-init.$(OBJEXT): kern/uboot/$(am__dirstamp) \ - kern/uboot/$(DEPDIR)/$(am__dirstamp) -kern/uboot/kernel_exec-hw.$(OBJEXT): kern/uboot/$(am__dirstamp) \ - kern/uboot/$(DEPDIR)/$(am__dirstamp) -term/uboot/$(am__dirstamp): - @$(MKDIR_P) term/uboot - @: > term/uboot/$(am__dirstamp) -term/uboot/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) term/uboot/$(DEPDIR) - @: > term/uboot/$(DEPDIR)/$(am__dirstamp) -term/uboot/kernel_exec-console.$(OBJEXT): term/uboot/$(am__dirstamp) \ - term/uboot/$(DEPDIR)/$(am__dirstamp) -term/kernel_exec-terminfo.$(OBJEXT): term/$(am__dirstamp) \ - term/$(DEPDIR)/$(am__dirstamp) -term/kernel_exec-tparm.$(OBJEXT): term/$(am__dirstamp) \ - term/$(DEPDIR)/$(am__dirstamp) -commands/kernel_exec-extcmd.$(OBJEXT): commands/$(am__dirstamp) \ - commands/$(DEPDIR)/$(am__dirstamp) -lib/kernel_exec-arg.$(OBJEXT): lib/$(am__dirstamp) \ - lib/$(DEPDIR)/$(am__dirstamp) -disk/kernel_exec-host.$(OBJEXT): disk/$(am__dirstamp) \ - disk/$(DEPDIR)/$(am__dirstamp) -kern/emu/kernel_exec-cache_s.$(OBJEXT): kern/emu/$(am__dirstamp) \ - kern/emu/$(DEPDIR)/$(am__dirstamp) -kern/emu/kernel_exec-hostdisk.$(OBJEXT): kern/emu/$(am__dirstamp) \ - kern/emu/$(DEPDIR)/$(am__dirstamp) -osdep/unix/$(am__dirstamp): - @$(MKDIR_P) osdep/unix - @: > osdep/unix/$(am__dirstamp) -osdep/unix/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) osdep/unix/$(DEPDIR) - @: > osdep/unix/$(DEPDIR)/$(am__dirstamp) -osdep/unix/kernel_exec-hostdisk.$(OBJEXT): osdep/unix/$(am__dirstamp) \ - osdep/unix/$(DEPDIR)/$(am__dirstamp) -osdep/$(am__dirstamp): - @$(MKDIR_P) osdep - @: > osdep/$(am__dirstamp) -osdep/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) osdep/$(DEPDIR) - @: > osdep/$(DEPDIR)/$(am__dirstamp) -osdep/kernel_exec-exec.$(OBJEXT): osdep/$(am__dirstamp) \ - osdep/$(DEPDIR)/$(am__dirstamp) -osdep/devmapper/$(am__dirstamp): - @$(MKDIR_P) osdep/devmapper - @: > osdep/devmapper/$(am__dirstamp) -osdep/devmapper/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) osdep/devmapper/$(DEPDIR) - @: > osdep/devmapper/$(DEPDIR)/$(am__dirstamp) -osdep/devmapper/kernel_exec-hostdisk.$(OBJEXT): \ - osdep/devmapper/$(am__dirstamp) \ - osdep/devmapper/$(DEPDIR)/$(am__dirstamp) -osdep/kernel_exec-hostdisk.$(OBJEXT): osdep/$(am__dirstamp) \ - osdep/$(DEPDIR)/$(am__dirstamp) -kern/emu/kernel_exec-hostfs.$(OBJEXT): kern/emu/$(am__dirstamp) \ - kern/emu/$(DEPDIR)/$(am__dirstamp) -kern/emu/kernel_exec-main.$(OBJEXT): kern/emu/$(am__dirstamp) \ - kern/emu/$(DEPDIR)/$(am__dirstamp) -kern/emu/kernel_exec-argp_common.$(OBJEXT): kern/emu/$(am__dirstamp) \ - kern/emu/$(DEPDIR)/$(am__dirstamp) -kern/emu/kernel_exec-misc.$(OBJEXT): kern/emu/$(am__dirstamp) \ - kern/emu/$(DEPDIR)/$(am__dirstamp) -kern/emu/kernel_exec-mm.$(OBJEXT): kern/emu/$(am__dirstamp) \ - kern/emu/$(DEPDIR)/$(am__dirstamp) -kern/emu/kernel_exec-time.$(OBJEXT): kern/emu/$(am__dirstamp) \ - kern/emu/$(DEPDIR)/$(am__dirstamp) -kern/emu/kernel_exec-cache.$(OBJEXT): kern/emu/$(am__dirstamp) \ - kern/emu/$(DEPDIR)/$(am__dirstamp) -osdep/kernel_exec-emuconsole.$(OBJEXT): osdep/$(am__dirstamp) \ - osdep/$(DEPDIR)/$(am__dirstamp) -osdep/kernel_exec-dl.$(OBJEXT): osdep/$(am__dirstamp) \ - osdep/$(DEPDIR)/$(am__dirstamp) -osdep/kernel_exec-sleep.$(OBJEXT): osdep/$(am__dirstamp) \ - osdep/$(DEPDIR)/$(am__dirstamp) -osdep/kernel_exec-init.$(OBJEXT): osdep/$(am__dirstamp) \ - osdep/$(DEPDIR)/$(am__dirstamp) -osdep/kernel_exec-emunet.$(OBJEXT): osdep/$(am__dirstamp) \ - osdep/$(DEPDIR)/$(am__dirstamp) -osdep/kernel_exec-cputime.$(OBJEXT): osdep/$(am__dirstamp) \ - osdep/$(DEPDIR)/$(am__dirstamp) -kern/i386/coreboot/kernel_exec-startup.$(OBJEXT): \ - kern/i386/coreboot/$(am__dirstamp) \ - kern/i386/coreboot/$(DEPDIR)/$(am__dirstamp) -kern/i386/coreboot/kernel_exec-init.$(OBJEXT): \ - kern/i386/coreboot/$(am__dirstamp) \ - kern/i386/coreboot/$(DEPDIR)/$(am__dirstamp) -kern/i386/pc/kernel_exec-acpi.$(OBJEXT): kern/i386/pc/$(am__dirstamp) \ - kern/i386/pc/$(DEPDIR)/$(am__dirstamp) -kern/i386/$(am__dirstamp): - @$(MKDIR_P) kern/i386 - @: > kern/i386/$(am__dirstamp) -kern/i386/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) kern/i386/$(DEPDIR) - @: > kern/i386/$(DEPDIR)/$(am__dirstamp) -kern/i386/kernel_exec-tsc_pmtimer.$(OBJEXT): \ - kern/i386/$(am__dirstamp) kern/i386/$(DEPDIR)/$(am__dirstamp) -kern/i386/coreboot/kernel_exec-cbtable.$(OBJEXT): \ - kern/i386/coreboot/$(am__dirstamp) \ - kern/i386/coreboot/$(DEPDIR)/$(am__dirstamp) -term/i386/pc/$(am__dirstamp): - @$(MKDIR_P) term/i386/pc - @: > term/i386/pc/$(am__dirstamp) -term/i386/pc/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) term/i386/pc/$(DEPDIR) - @: > term/i386/pc/$(DEPDIR)/$(am__dirstamp) -term/i386/pc/kernel_exec-vga_text.$(OBJEXT): \ - term/i386/pc/$(am__dirstamp) \ - term/i386/pc/$(DEPDIR)/$(am__dirstamp) -kern/i386/kernel_exec-dl.$(OBJEXT): kern/i386/$(am__dirstamp) \ - kern/i386/$(DEPDIR)/$(am__dirstamp) -kern/i386/kernel_exec-tsc.$(OBJEXT): kern/i386/$(am__dirstamp) \ - kern/i386/$(DEPDIR)/$(am__dirstamp) -kern/i386/kernel_exec-tsc_pit.$(OBJEXT): kern/i386/$(am__dirstamp) \ - kern/i386/$(DEPDIR)/$(am__dirstamp) -kern/i386/efi/$(am__dirstamp): - @$(MKDIR_P) kern/i386/efi - @: > kern/i386/efi/$(am__dirstamp) -kern/i386/efi/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) kern/i386/efi/$(DEPDIR) - @: > kern/i386/efi/$(DEPDIR)/$(am__dirstamp) -kern/i386/efi/kernel_exec-startup.$(OBJEXT): \ - kern/i386/efi/$(am__dirstamp) \ - kern/i386/efi/$(DEPDIR)/$(am__dirstamp) -kern/i386/efi/kernel_exec-tsc.$(OBJEXT): \ - kern/i386/efi/$(am__dirstamp) \ - kern/i386/efi/$(DEPDIR)/$(am__dirstamp) -kern/i386/efi/kernel_exec-init.$(OBJEXT): \ - kern/i386/efi/$(am__dirstamp) \ - kern/i386/efi/$(DEPDIR)/$(am__dirstamp) -bus/kernel_exec-pci.$(OBJEXT): bus/$(am__dirstamp) \ - bus/$(DEPDIR)/$(am__dirstamp) -kern/i386/ieee1275/$(am__dirstamp): - @$(MKDIR_P) kern/i386/ieee1275 - @: > kern/i386/ieee1275/$(am__dirstamp) -kern/i386/ieee1275/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) kern/i386/ieee1275/$(DEPDIR) - @: > kern/i386/ieee1275/$(DEPDIR)/$(am__dirstamp) -kern/i386/ieee1275/kernel_exec-startup.$(OBJEXT): \ - kern/i386/ieee1275/$(am__dirstamp) \ - kern/i386/ieee1275/$(DEPDIR)/$(am__dirstamp) -disk/ieee1275/$(am__dirstamp): - @$(MKDIR_P) disk/ieee1275 - @: > disk/ieee1275/$(am__dirstamp) -disk/ieee1275/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) disk/ieee1275/$(DEPDIR) - @: > disk/ieee1275/$(DEPDIR)/$(am__dirstamp) -disk/ieee1275/kernel_exec-ofdisk.$(OBJEXT): \ - disk/ieee1275/$(am__dirstamp) \ - disk/ieee1275/$(DEPDIR)/$(am__dirstamp) -kern/ieee1275/$(am__dirstamp): - @$(MKDIR_P) kern/ieee1275 - @: > kern/ieee1275/$(am__dirstamp) -kern/ieee1275/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) kern/ieee1275/$(DEPDIR) - @: > kern/ieee1275/$(DEPDIR)/$(am__dirstamp) -kern/ieee1275/kernel_exec-cmain.$(OBJEXT): \ - kern/ieee1275/$(am__dirstamp) \ - kern/ieee1275/$(DEPDIR)/$(am__dirstamp) -kern/ieee1275/kernel_exec-ieee1275.$(OBJEXT): \ - kern/ieee1275/$(am__dirstamp) \ - kern/ieee1275/$(DEPDIR)/$(am__dirstamp) -kern/ieee1275/kernel_exec-mmap.$(OBJEXT): \ - kern/ieee1275/$(am__dirstamp) \ - kern/ieee1275/$(DEPDIR)/$(am__dirstamp) -kern/ieee1275/kernel_exec-openfw.$(OBJEXT): \ - kern/ieee1275/$(am__dirstamp) \ - kern/ieee1275/$(DEPDIR)/$(am__dirstamp) -term/ieee1275/kernel_exec-console.$(OBJEXT): \ - term/ieee1275/$(am__dirstamp) \ - term/ieee1275/$(DEPDIR)/$(am__dirstamp) -kern/ieee1275/kernel_exec-init.$(OBJEXT): \ - kern/ieee1275/$(am__dirstamp) \ - kern/ieee1275/$(DEPDIR)/$(am__dirstamp) -kern/i386/kernel_exec-multiboot_mmap.$(OBJEXT): \ - kern/i386/$(am__dirstamp) kern/i386/$(DEPDIR)/$(am__dirstamp) -kern/i386/pc/kernel_exec-startup.$(OBJEXT): \ - kern/i386/pc/$(am__dirstamp) \ - kern/i386/pc/$(DEPDIR)/$(am__dirstamp) -kern/i386/pc/kernel_exec-init.$(OBJEXT): kern/i386/pc/$(am__dirstamp) \ - kern/i386/pc/$(DEPDIR)/$(am__dirstamp) -kern/i386/pc/kernel_exec-mmap.$(OBJEXT): kern/i386/pc/$(am__dirstamp) \ - kern/i386/pc/$(DEPDIR)/$(am__dirstamp) -term/i386/pc/kernel_exec-console.$(OBJEXT): \ - term/i386/pc/$(am__dirstamp) \ - term/i386/pc/$(DEPDIR)/$(am__dirstamp) -kern/i386/qemu/$(am__dirstamp): - @$(MKDIR_P) kern/i386/qemu - @: > kern/i386/qemu/$(am__dirstamp) -kern/i386/qemu/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) kern/i386/qemu/$(DEPDIR) - @: > kern/i386/qemu/$(DEPDIR)/$(am__dirstamp) -kern/i386/qemu/kernel_exec-startup.$(OBJEXT): \ - kern/i386/qemu/$(am__dirstamp) \ - kern/i386/qemu/$(DEPDIR)/$(am__dirstamp) -kern/i386/qemu/kernel_exec-init.$(OBJEXT): \ - kern/i386/qemu/$(am__dirstamp) \ - kern/i386/qemu/$(DEPDIR)/$(am__dirstamp) -kern/kernel_exec-vga_init.$(OBJEXT): kern/$(am__dirstamp) \ - kern/$(DEPDIR)/$(am__dirstamp) -kern/i386/qemu/kernel_exec-mmap.$(OBJEXT): \ - kern/i386/qemu/$(am__dirstamp) \ - kern/i386/qemu/$(DEPDIR)/$(am__dirstamp) -kern/i386/xen/$(am__dirstamp): - @$(MKDIR_P) kern/i386/xen - @: > kern/i386/xen/$(am__dirstamp) -kern/i386/xen/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) kern/i386/xen/$(DEPDIR) - @: > kern/i386/xen/$(DEPDIR)/$(am__dirstamp) -kern/i386/xen/kernel_exec-startup.$(OBJEXT): \ - kern/i386/xen/$(am__dirstamp) \ - kern/i386/xen/$(DEPDIR)/$(am__dirstamp) -kern/i386/xen/kernel_exec-hypercall.$(OBJEXT): \ - kern/i386/xen/$(am__dirstamp) \ - kern/i386/xen/$(DEPDIR)/$(am__dirstamp) -kern/i386/xen/kernel_exec-tsc.$(OBJEXT): \ - kern/i386/xen/$(am__dirstamp) \ - kern/i386/xen/$(DEPDIR)/$(am__dirstamp) -kern/xen/$(am__dirstamp): - @$(MKDIR_P) kern/xen - @: > kern/xen/$(am__dirstamp) -kern/xen/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) kern/xen/$(DEPDIR) - @: > kern/xen/$(DEPDIR)/$(am__dirstamp) -kern/xen/kernel_exec-init.$(OBJEXT): kern/xen/$(am__dirstamp) \ - kern/xen/$(DEPDIR)/$(am__dirstamp) -term/xen/$(am__dirstamp): - @$(MKDIR_P) term/xen - @: > term/xen/$(am__dirstamp) -term/xen/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) term/xen/$(DEPDIR) - @: > term/xen/$(DEPDIR)/$(am__dirstamp) -term/xen/kernel_exec-console.$(OBJEXT): term/xen/$(am__dirstamp) \ - term/xen/$(DEPDIR)/$(am__dirstamp) -disk/xen/$(am__dirstamp): - @$(MKDIR_P) disk/xen - @: > disk/xen/$(am__dirstamp) -disk/xen/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) disk/xen/$(DEPDIR) - @: > disk/xen/$(DEPDIR)/$(am__dirstamp) -disk/xen/kernel_exec-xendisk.$(OBJEXT): disk/xen/$(am__dirstamp) \ - disk/xen/$(DEPDIR)/$(am__dirstamp) -commands/kernel_exec-boot.$(OBJEXT): commands/$(am__dirstamp) \ - commands/$(DEPDIR)/$(am__dirstamp) -kern/i386/xen/kernel_exec-startup_pvh.$(OBJEXT): \ - kern/i386/xen/$(am__dirstamp) \ - kern/i386/xen/$(DEPDIR)/$(am__dirstamp) -kern/i386/xen/kernel_exec-pvh.$(OBJEXT): \ - kern/i386/xen/$(am__dirstamp) \ - kern/i386/xen/$(DEPDIR)/$(am__dirstamp) -kern/ia64/efi/$(am__dirstamp): - @$(MKDIR_P) kern/ia64/efi - @: > kern/ia64/efi/$(am__dirstamp) -kern/ia64/efi/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) kern/ia64/efi/$(DEPDIR) - @: > kern/ia64/efi/$(DEPDIR)/$(am__dirstamp) -kern/ia64/efi/kernel_exec-startup.$(OBJEXT): \ - kern/ia64/efi/$(am__dirstamp) \ - kern/ia64/efi/$(DEPDIR)/$(am__dirstamp) -kern/ia64/efi/kernel_exec-init.$(OBJEXT): \ - kern/ia64/efi/$(am__dirstamp) \ - kern/ia64/efi/$(DEPDIR)/$(am__dirstamp) -kern/ia64/$(am__dirstamp): - @$(MKDIR_P) kern/ia64 - @: > kern/ia64/$(am__dirstamp) -kern/ia64/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) kern/ia64/$(DEPDIR) - @: > kern/ia64/$(DEPDIR)/$(am__dirstamp) -kern/ia64/kernel_exec-dl.$(OBJEXT): kern/ia64/$(am__dirstamp) \ - kern/ia64/$(DEPDIR)/$(am__dirstamp) -kern/ia64/kernel_exec-dl_helper.$(OBJEXT): kern/ia64/$(am__dirstamp) \ - kern/ia64/$(DEPDIR)/$(am__dirstamp) -kern/ia64/kernel_exec-cache.$(OBJEXT): kern/ia64/$(am__dirstamp) \ - kern/ia64/$(DEPDIR)/$(am__dirstamp) -kern/mips/$(am__dirstamp): - @$(MKDIR_P) kern/mips - @: > kern/mips/$(am__dirstamp) -kern/mips/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) kern/mips/$(DEPDIR) - @: > kern/mips/$(DEPDIR)/$(am__dirstamp) -kern/mips/kernel_exec-startup.$(OBJEXT): kern/mips/$(am__dirstamp) \ - kern/mips/$(DEPDIR)/$(am__dirstamp) -kern/mips/arc/$(am__dirstamp): - @$(MKDIR_P) kern/mips/arc - @: > kern/mips/arc/$(am__dirstamp) -kern/mips/arc/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) kern/mips/arc/$(DEPDIR) - @: > kern/mips/arc/$(DEPDIR)/$(am__dirstamp) -kern/mips/arc/kernel_exec-init.$(OBJEXT): \ - kern/mips/arc/$(am__dirstamp) \ - kern/mips/arc/$(DEPDIR)/$(am__dirstamp) -term/arc/$(am__dirstamp): - @$(MKDIR_P) term/arc - @: > term/arc/$(am__dirstamp) -term/arc/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) term/arc/$(DEPDIR) - @: > term/arc/$(DEPDIR)/$(am__dirstamp) -term/arc/kernel_exec-console.$(OBJEXT): term/arc/$(am__dirstamp) \ - term/arc/$(DEPDIR)/$(am__dirstamp) -disk/arc/$(am__dirstamp): - @$(MKDIR_P) disk/arc - @: > disk/arc/$(am__dirstamp) -disk/arc/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) disk/arc/$(DEPDIR) - @: > disk/arc/$(DEPDIR)/$(am__dirstamp) -disk/arc/kernel_exec-arcdisk.$(OBJEXT): disk/arc/$(am__dirstamp) \ - disk/arc/$(DEPDIR)/$(am__dirstamp) -kern/generic/kernel_exec-rtc_get_time_ms.$(OBJEXT): \ - kern/generic/$(am__dirstamp) \ - kern/generic/$(DEPDIR)/$(am__dirstamp) -kern/mips/kernel_exec-cache.$(OBJEXT): kern/mips/$(am__dirstamp) \ - kern/mips/$(DEPDIR)/$(am__dirstamp) -kern/mips/kernel_exec-dl.$(OBJEXT): kern/mips/$(am__dirstamp) \ - kern/mips/$(DEPDIR)/$(am__dirstamp) -kern/mips/kernel_exec-init.$(OBJEXT): kern/mips/$(am__dirstamp) \ - kern/mips/$(DEPDIR)/$(am__dirstamp) -term/kernel_exec-ns8250.$(OBJEXT): term/$(am__dirstamp) \ - term/$(DEPDIR)/$(am__dirstamp) -bus/kernel_exec-bonito.$(OBJEXT): bus/$(am__dirstamp) \ - bus/$(DEPDIR)/$(am__dirstamp) -bus/kernel_exec-cs5536.$(OBJEXT): bus/$(am__dirstamp) \ - bus/$(DEPDIR)/$(am__dirstamp) -kern/mips/loongson/$(am__dirstamp): - @$(MKDIR_P) kern/mips/loongson - @: > kern/mips/loongson/$(am__dirstamp) -kern/mips/loongson/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) kern/mips/loongson/$(DEPDIR) - @: > kern/mips/loongson/$(DEPDIR)/$(am__dirstamp) -kern/mips/loongson/kernel_exec-init.$(OBJEXT): \ - kern/mips/loongson/$(am__dirstamp) \ - kern/mips/loongson/$(DEPDIR)/$(am__dirstamp) -term/kernel_exec-at_keyboard.$(OBJEXT): term/$(am__dirstamp) \ - term/$(DEPDIR)/$(am__dirstamp) -term/kernel_exec-serial.$(OBJEXT): term/$(am__dirstamp) \ - term/$(DEPDIR)/$(am__dirstamp) -video/kernel_exec-sm712.$(OBJEXT): video/$(am__dirstamp) \ - video/$(DEPDIR)/$(am__dirstamp) -video/kernel_exec-sis315pro.$(OBJEXT): video/$(am__dirstamp) \ - video/$(DEPDIR)/$(am__dirstamp) -video/kernel_exec-radeon_fuloong2e.$(OBJEXT): video/$(am__dirstamp) \ - video/$(DEPDIR)/$(am__dirstamp) -video/kernel_exec-radeon_yeeloong3a.$(OBJEXT): video/$(am__dirstamp) \ - video/$(DEPDIR)/$(am__dirstamp) -kern/mips/qemu_mips/$(am__dirstamp): - @$(MKDIR_P) kern/mips/qemu_mips - @: > kern/mips/qemu_mips/$(am__dirstamp) -kern/mips/qemu_mips/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) kern/mips/qemu_mips/$(DEPDIR) - @: > kern/mips/qemu_mips/$(DEPDIR)/$(am__dirstamp) -kern/mips/qemu_mips/kernel_exec-init.$(OBJEXT): \ - kern/mips/qemu_mips/$(am__dirstamp) \ - kern/mips/qemu_mips/$(DEPDIR)/$(am__dirstamp) -kern/powerpc/ieee1275/$(am__dirstamp): - @$(MKDIR_P) kern/powerpc/ieee1275 - @: > kern/powerpc/ieee1275/$(am__dirstamp) -kern/powerpc/ieee1275/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) kern/powerpc/ieee1275/$(DEPDIR) - @: > kern/powerpc/ieee1275/$(DEPDIR)/$(am__dirstamp) -kern/powerpc/ieee1275/kernel_exec-startup.$(OBJEXT): \ - kern/powerpc/ieee1275/$(am__dirstamp) \ - kern/powerpc/ieee1275/$(DEPDIR)/$(am__dirstamp) -kern/powerpc/$(am__dirstamp): - @$(MKDIR_P) kern/powerpc - @: > kern/powerpc/$(am__dirstamp) -kern/powerpc/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) kern/powerpc/$(DEPDIR) - @: > kern/powerpc/$(DEPDIR)/$(am__dirstamp) -kern/powerpc/kernel_exec-cache.$(OBJEXT): \ - kern/powerpc/$(am__dirstamp) \ - kern/powerpc/$(DEPDIR)/$(am__dirstamp) -kern/powerpc/kernel_exec-dl.$(OBJEXT): kern/powerpc/$(am__dirstamp) \ - kern/powerpc/$(DEPDIR)/$(am__dirstamp) -kern/powerpc/kernel_exec-compiler-rt.$(OBJEXT): \ - kern/powerpc/$(am__dirstamp) \ - kern/powerpc/$(DEPDIR)/$(am__dirstamp) -kern/riscv/efi/$(am__dirstamp): - @$(MKDIR_P) kern/riscv/efi - @: > kern/riscv/efi/$(am__dirstamp) -kern/riscv/efi/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) kern/riscv/efi/$(DEPDIR) - @: > kern/riscv/efi/$(DEPDIR)/$(am__dirstamp) -kern/riscv/efi/kernel_exec-startup.$(OBJEXT): \ - kern/riscv/efi/$(am__dirstamp) \ - kern/riscv/efi/$(DEPDIR)/$(am__dirstamp) -kern/riscv/efi/kernel_exec-init.$(OBJEXT): \ - kern/riscv/efi/$(am__dirstamp) \ - kern/riscv/efi/$(DEPDIR)/$(am__dirstamp) -kern/riscv/$(am__dirstamp): - @$(MKDIR_P) kern/riscv - @: > kern/riscv/$(am__dirstamp) -kern/riscv/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) kern/riscv/$(DEPDIR) - @: > kern/riscv/$(DEPDIR)/$(am__dirstamp) -kern/riscv/kernel_exec-cache.$(OBJEXT): kern/riscv/$(am__dirstamp) \ - kern/riscv/$(DEPDIR)/$(am__dirstamp) -kern/riscv/kernel_exec-cache_flush.$(OBJEXT): \ - kern/riscv/$(am__dirstamp) \ - kern/riscv/$(DEPDIR)/$(am__dirstamp) -kern/riscv/kernel_exec-dl.$(OBJEXT): kern/riscv/$(am__dirstamp) \ - kern/riscv/$(DEPDIR)/$(am__dirstamp) -kern/sparc64/ieee1275/$(am__dirstamp): - @$(MKDIR_P) kern/sparc64/ieee1275 - @: > kern/sparc64/ieee1275/$(am__dirstamp) -kern/sparc64/ieee1275/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) kern/sparc64/ieee1275/$(DEPDIR) - @: > kern/sparc64/ieee1275/$(DEPDIR)/$(am__dirstamp) -kern/sparc64/ieee1275/kernel_exec-crt0.$(OBJEXT): \ - kern/sparc64/ieee1275/$(am__dirstamp) \ - kern/sparc64/ieee1275/$(DEPDIR)/$(am__dirstamp) -kern/sparc64/$(am__dirstamp): - @$(MKDIR_P) kern/sparc64 - @: > kern/sparc64/$(am__dirstamp) -kern/sparc64/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) kern/sparc64/$(DEPDIR) - @: > kern/sparc64/$(DEPDIR)/$(am__dirstamp) -kern/sparc64/kernel_exec-cache.$(OBJEXT): \ - kern/sparc64/$(am__dirstamp) \ - kern/sparc64/$(DEPDIR)/$(am__dirstamp) -kern/sparc64/kernel_exec-dl.$(OBJEXT): kern/sparc64/$(am__dirstamp) \ - kern/sparc64/$(DEPDIR)/$(am__dirstamp) -kern/sparc64/ieee1275/kernel_exec-ieee1275.$(OBJEXT): \ - kern/sparc64/ieee1275/$(am__dirstamp) \ - kern/sparc64/ieee1275/$(DEPDIR)/$(am__dirstamp) -disk/ieee1275/kernel_exec-obdisk.$(OBJEXT): \ - disk/ieee1275/$(am__dirstamp) \ - disk/ieee1275/$(DEPDIR)/$(am__dirstamp) -kern/x86_64/efi/$(am__dirstamp): - @$(MKDIR_P) kern/x86_64/efi - @: > kern/x86_64/efi/$(am__dirstamp) -kern/x86_64/efi/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) kern/x86_64/efi/$(DEPDIR) - @: > kern/x86_64/efi/$(DEPDIR)/$(am__dirstamp) -kern/x86_64/efi/kernel_exec-startup.$(OBJEXT): \ - kern/x86_64/efi/$(am__dirstamp) \ - kern/x86_64/efi/$(DEPDIR)/$(am__dirstamp) -kern/x86_64/efi/kernel_exec-callwrap.$(OBJEXT): \ - kern/x86_64/efi/$(am__dirstamp) \ - kern/x86_64/efi/$(DEPDIR)/$(am__dirstamp) -kern/x86_64/$(am__dirstamp): - @$(MKDIR_P) kern/x86_64 - @: > kern/x86_64/$(am__dirstamp) -kern/x86_64/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) kern/x86_64/$(DEPDIR) - @: > kern/x86_64/$(DEPDIR)/$(am__dirstamp) -kern/x86_64/kernel_exec-dl.$(OBJEXT): kern/x86_64/$(am__dirstamp) \ - kern/x86_64/$(DEPDIR)/$(am__dirstamp) -kern/x86_64/xen/$(am__dirstamp): - @$(MKDIR_P) kern/x86_64/xen - @: > kern/x86_64/xen/$(am__dirstamp) -kern/x86_64/xen/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) kern/x86_64/xen/$(DEPDIR) - @: > kern/x86_64/xen/$(DEPDIR)/$(am__dirstamp) -kern/x86_64/xen/kernel_exec-startup.$(OBJEXT): \ - kern/x86_64/xen/$(am__dirstamp) \ - kern/x86_64/xen/$(DEPDIR)/$(am__dirstamp) -kern/x86_64/xen/kernel_exec-hypercall.$(OBJEXT): \ - kern/x86_64/xen/$(am__dirstamp) \ - kern/x86_64/xen/$(DEPDIR)/$(am__dirstamp) - -kernel.exec$(EXEEXT): $(kernel_exec_OBJECTS) $(kernel_exec_DEPENDENCIES) $(EXTRA_kernel_exec_DEPENDENCIES) - @rm -f kernel.exec$(EXEEXT) - $(AM_V_CCLD)$(kernel_exec_LINK) $(kernel_exec_OBJECTS) $(kernel_exec_LDADD) $(LIBS) -commands/keylayouts_module-keylayouts.$(OBJEXT): \ - commands/$(am__dirstamp) commands/$(DEPDIR)/$(am__dirstamp) - -keylayouts.module$(EXEEXT): $(keylayouts_module_OBJECTS) $(keylayouts_module_DEPENDENCIES) $(EXTRA_keylayouts_module_DEPENDENCIES) - @rm -f keylayouts.module$(EXEEXT) - $(AM_V_CCLD)$(keylayouts_module_LINK) $(keylayouts_module_OBJECTS) $(keylayouts_module_LDADD) $(LIBS) -commands/keystatus_module-keystatus.$(OBJEXT): \ - commands/$(am__dirstamp) commands/$(DEPDIR)/$(am__dirstamp) - -keystatus.module$(EXEEXT): $(keystatus_module_OBJECTS) $(keystatus_module_DEPENDENCIES) $(EXTRA_keystatus_module_DEPENDENCIES) - @rm -f keystatus.module$(EXEEXT) - $(AM_V_CCLD)$(keystatus_module_LINK) $(keystatus_module_OBJECTS) $(keystatus_module_LDADD) $(LIBS) -disk/ldm_module-ldm.$(OBJEXT): disk/$(am__dirstamp) \ - disk/$(DEPDIR)/$(am__dirstamp) - -ldm.module$(EXEEXT): $(ldm_module_OBJECTS) $(ldm_module_DEPENDENCIES) $(EXTRA_ldm_module_DEPENDENCIES) - @rm -f ldm.module$(EXEEXT) - $(AM_V_CCLD)$(ldm_module_LINK) $(ldm_module_OBJECTS) $(ldm_module_LDADD) $(LIBS) -tests/legacy_password_test_module-legacy_password_test.$(OBJEXT): \ - tests/$(am__dirstamp) tests/$(DEPDIR)/$(am__dirstamp) - -legacy_password_test.module$(EXEEXT): $(legacy_password_test_module_OBJECTS) $(legacy_password_test_module_DEPENDENCIES) $(EXTRA_legacy_password_test_module_DEPENDENCIES) - @rm -f legacy_password_test.module$(EXEEXT) - $(AM_V_CCLD)$(legacy_password_test_module_LINK) $(legacy_password_test_module_OBJECTS) $(legacy_password_test_module_LDADD) $(LIBS) -lib/i386/pc/legacycfg_module-vesa_modes_table.$(OBJEXT): \ - lib/i386/pc/$(am__dirstamp) \ - lib/i386/pc/$(DEPDIR)/$(am__dirstamp) -commands/legacycfg_module-legacycfg.$(OBJEXT): \ - commands/$(am__dirstamp) commands/$(DEPDIR)/$(am__dirstamp) -lib/legacycfg_module-legacy_parse.$(OBJEXT): lib/$(am__dirstamp) \ - lib/$(DEPDIR)/$(am__dirstamp) - -legacycfg.module$(EXEEXT): $(legacycfg_module_OBJECTS) $(legacycfg_module_DEPENDENCIES) $(EXTRA_legacycfg_module_DEPENDENCIES) - @rm -f legacycfg.module$(EXEEXT) - $(AM_V_CCLD)$(legacycfg_module_LINK) $(legacycfg_module_OBJECTS) $(legacycfg_module_LDADD) $(LIBS) -loader/arm64/$(am__dirstamp): - @$(MKDIR_P) loader/arm64 - @: > loader/arm64/$(am__dirstamp) -loader/arm64/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) loader/arm64/$(DEPDIR) - @: > loader/arm64/$(DEPDIR)/$(am__dirstamp) -loader/arm64/linux_module-linux.$(OBJEXT): \ - loader/arm64/$(am__dirstamp) \ - loader/arm64/$(DEPDIR)/$(am__dirstamp) -loader/linux_module-linux.$(OBJEXT): loader/$(am__dirstamp) \ - loader/$(DEPDIR)/$(am__dirstamp) -lib/linux_module-cmdline.$(OBJEXT): lib/$(am__dirstamp) \ - lib/$(DEPDIR)/$(am__dirstamp) -loader/arm/$(am__dirstamp): - @$(MKDIR_P) loader/arm - @: > loader/arm/$(am__dirstamp) -loader/arm/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) loader/arm/$(DEPDIR) - @: > loader/arm/$(DEPDIR)/$(am__dirstamp) -loader/arm/linux_module-linux.$(OBJEXT): loader/arm/$(am__dirstamp) \ - loader/arm/$(DEPDIR)/$(am__dirstamp) -loader/i386/linux_module-linux.$(OBJEXT): loader/i386/$(am__dirstamp) \ - loader/i386/$(DEPDIR)/$(am__dirstamp) -lib/i386/pc/linux_module-vesa_modes_table.$(OBJEXT): \ - lib/i386/pc/$(am__dirstamp) \ - lib/i386/pc/$(DEPDIR)/$(am__dirstamp) -loader/i386/linux_module-xen.$(OBJEXT): loader/i386/$(am__dirstamp) \ - loader/i386/$(DEPDIR)/$(am__dirstamp) -loader/ia64/efi/$(am__dirstamp): - @$(MKDIR_P) loader/ia64/efi - @: > loader/ia64/efi/$(am__dirstamp) -loader/ia64/efi/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) loader/ia64/efi/$(DEPDIR) - @: > loader/ia64/efi/$(DEPDIR)/$(am__dirstamp) -loader/ia64/efi/linux_module-linux.$(OBJEXT): \ - loader/ia64/efi/$(am__dirstamp) \ - loader/ia64/efi/$(DEPDIR)/$(am__dirstamp) -loader/mips/$(am__dirstamp): - @$(MKDIR_P) loader/mips - @: > loader/mips/$(am__dirstamp) -loader/mips/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) loader/mips/$(DEPDIR) - @: > loader/mips/$(DEPDIR)/$(am__dirstamp) -loader/mips/linux_module-linux.$(OBJEXT): loader/mips/$(am__dirstamp) \ - loader/mips/$(DEPDIR)/$(am__dirstamp) -loader/powerpc/ieee1275/$(am__dirstamp): - @$(MKDIR_P) loader/powerpc/ieee1275 - @: > loader/powerpc/ieee1275/$(am__dirstamp) -loader/powerpc/ieee1275/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) loader/powerpc/ieee1275/$(DEPDIR) - @: > loader/powerpc/ieee1275/$(DEPDIR)/$(am__dirstamp) -loader/powerpc/ieee1275/linux_module-linux.$(OBJEXT): \ - loader/powerpc/ieee1275/$(am__dirstamp) \ - loader/powerpc/ieee1275/$(DEPDIR)/$(am__dirstamp) -loader/riscv/$(am__dirstamp): - @$(MKDIR_P) loader/riscv - @: > loader/riscv/$(am__dirstamp) -loader/riscv/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) loader/riscv/$(DEPDIR) - @: > loader/riscv/$(DEPDIR)/$(am__dirstamp) -loader/riscv/linux_module-linux.$(OBJEXT): \ - loader/riscv/$(am__dirstamp) \ - loader/riscv/$(DEPDIR)/$(am__dirstamp) -loader/sparc64/ieee1275/$(am__dirstamp): - @$(MKDIR_P) loader/sparc64/ieee1275 - @: > loader/sparc64/ieee1275/$(am__dirstamp) -loader/sparc64/ieee1275/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) loader/sparc64/ieee1275/$(DEPDIR) - @: > loader/sparc64/ieee1275/$(DEPDIR)/$(am__dirstamp) -loader/sparc64/ieee1275/linux_module-linux.$(OBJEXT): \ - loader/sparc64/ieee1275/$(am__dirstamp) \ - loader/sparc64/ieee1275/$(DEPDIR)/$(am__dirstamp) - -linux.module$(EXEEXT): $(linux_module_OBJECTS) $(linux_module_DEPENDENCIES) $(EXTRA_linux_module_DEPENDENCIES) - @rm -f linux.module$(EXEEXT) - $(AM_V_CCLD)$(linux_module_LINK) $(linux_module_OBJECTS) $(linux_module_LDADD) $(LIBS) -loader/i386/pc/linux16_module-linux.$(OBJEXT): \ - loader/i386/pc/$(am__dirstamp) \ - loader/i386/pc/$(DEPDIR)/$(am__dirstamp) - -linux16.module$(EXEEXT): $(linux16_module_OBJECTS) $(linux16_module_DEPENDENCIES) $(EXTRA_linux16_module_DEPENDENCIES) - @rm -f linux16.module$(EXEEXT) - $(AM_V_CCLD)$(linux16_module_LINK) $(linux16_module_OBJECTS) $(linux16_module_LDADD) $(LIBS) -boot/i386/pc/lnxboot_image-lnxboot.$(OBJEXT): \ - boot/i386/pc/$(am__dirstamp) \ - boot/i386/pc/$(DEPDIR)/$(am__dirstamp) - -lnxboot.image$(EXEEXT): $(lnxboot_image_OBJECTS) $(lnxboot_image_DEPENDENCIES) $(EXTRA_lnxboot_image_DEPENDENCIES) - @rm -f lnxboot.image$(EXEEXT) - $(AM_V_CCLD)$(lnxboot_image_LINK) $(lnxboot_image_OBJECTS) $(lnxboot_image_LDADD) $(LIBS) -commands/efi/loadbios_module-loadbios.$(OBJEXT): \ - commands/efi/$(am__dirstamp) \ - commands/efi/$(DEPDIR)/$(am__dirstamp) - -loadbios.module$(EXEEXT): $(loadbios_module_OBJECTS) $(loadbios_module_DEPENDENCIES) $(EXTRA_loadbios_module_DEPENDENCIES) - @rm -f loadbios.module$(EXEEXT) - $(AM_V_CCLD)$(loadbios_module_LINK) $(loadbios_module_OBJECTS) $(loadbios_module_LDADD) $(LIBS) -commands/loadenv_module-loadenv.$(OBJEXT): commands/$(am__dirstamp) \ - commands/$(DEPDIR)/$(am__dirstamp) -lib/loadenv_module-envblk.$(OBJEXT): lib/$(am__dirstamp) \ - lib/$(DEPDIR)/$(am__dirstamp) - -loadenv.module$(EXEEXT): $(loadenv_module_OBJECTS) $(loadenv_module_DEPENDENCIES) $(EXTRA_loadenv_module_DEPENDENCIES) - @rm -f loadenv.module$(EXEEXT) - $(AM_V_CCLD)$(loadenv_module_LINK) $(loadenv_module_OBJECTS) $(loadenv_module_LDADD) $(LIBS) -disk/loopback_module-loopback.$(OBJEXT): disk/$(am__dirstamp) \ - disk/$(DEPDIR)/$(am__dirstamp) - -loopback.module$(EXEEXT): $(loopback_module_OBJECTS) $(loopback_module_DEPENDENCIES) $(EXTRA_loopback_module_DEPENDENCIES) - @rm -f loopback.module$(EXEEXT) - $(AM_V_CCLD)$(loopback_module_LINK) $(loopback_module_OBJECTS) $(loopback_module_LDADD) $(LIBS) -commands/ls_module-ls.$(OBJEXT): commands/$(am__dirstamp) \ - commands/$(DEPDIR)/$(am__dirstamp) - -ls.module$(EXEEXT): $(ls_module_OBJECTS) $(ls_module_DEPENDENCIES) $(EXTRA_ls_module_DEPENDENCIES) - @rm -f ls.module$(EXEEXT) - $(AM_V_CCLD)$(ls_module_LINK) $(ls_module_OBJECTS) $(ls_module_LDADD) $(LIBS) -commands/lsacpi_module-lsacpi.$(OBJEXT): commands/$(am__dirstamp) \ - commands/$(DEPDIR)/$(am__dirstamp) - -lsacpi.module$(EXEEXT): $(lsacpi_module_OBJECTS) $(lsacpi_module_DEPENDENCIES) $(EXTRA_lsacpi_module_DEPENDENCIES) - @rm -f lsacpi.module$(EXEEXT) - $(AM_V_CCLD)$(lsacpi_module_LINK) $(lsacpi_module_OBJECTS) $(lsacpi_module_LDADD) $(LIBS) -commands/i386/pc/lsapm_module-lsapm.$(OBJEXT): \ - commands/i386/pc/$(am__dirstamp) \ - commands/i386/pc/$(DEPDIR)/$(am__dirstamp) - -lsapm.module$(EXEEXT): $(lsapm_module_OBJECTS) $(lsapm_module_DEPENDENCIES) $(EXTRA_lsapm_module_DEPENDENCIES) - @rm -f lsapm.module$(EXEEXT) - $(AM_V_CCLD)$(lsapm_module_LINK) $(lsapm_module_OBJECTS) $(lsapm_module_LDADD) $(LIBS) -commands/arc/$(am__dirstamp): - @$(MKDIR_P) commands/arc - @: > commands/arc/$(am__dirstamp) -commands/arc/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) commands/arc/$(DEPDIR) - @: > commands/arc/$(DEPDIR)/$(am__dirstamp) -commands/arc/lsdev_module-lsdev.$(OBJEXT): \ - commands/arc/$(am__dirstamp) \ - commands/arc/$(DEPDIR)/$(am__dirstamp) - -lsdev.module$(EXEEXT): $(lsdev_module_OBJECTS) $(lsdev_module_DEPENDENCIES) $(EXTRA_lsdev_module_DEPENDENCIES) - @rm -f lsdev.module$(EXEEXT) - $(AM_V_CCLD)$(lsdev_module_LINK) $(lsdev_module_OBJECTS) $(lsdev_module_LDADD) $(LIBS) -commands/efi/lsefi_module-lsefi.$(OBJEXT): \ - commands/efi/$(am__dirstamp) \ - commands/efi/$(DEPDIR)/$(am__dirstamp) - -lsefi.module$(EXEEXT): $(lsefi_module_OBJECTS) $(lsefi_module_DEPENDENCIES) $(EXTRA_lsefi_module_DEPENDENCIES) - @rm -f lsefi.module$(EXEEXT) - $(AM_V_CCLD)$(lsefi_module_LINK) $(lsefi_module_OBJECTS) $(lsefi_module_LDADD) $(LIBS) -commands/efi/lsefimmap_module-lsefimmap.$(OBJEXT): \ - commands/efi/$(am__dirstamp) \ - commands/efi/$(DEPDIR)/$(am__dirstamp) - -lsefimmap.module$(EXEEXT): $(lsefimmap_module_OBJECTS) $(lsefimmap_module_DEPENDENCIES) $(EXTRA_lsefimmap_module_DEPENDENCIES) - @rm -f lsefimmap.module$(EXEEXT) - $(AM_V_CCLD)$(lsefimmap_module_LINK) $(lsefimmap_module_OBJECTS) $(lsefimmap_module_LDADD) $(LIBS) -commands/efi/lsefisystab_module-lsefisystab.$(OBJEXT): \ - commands/efi/$(am__dirstamp) \ - commands/efi/$(DEPDIR)/$(am__dirstamp) - -lsefisystab.module$(EXEEXT): $(lsefisystab_module_OBJECTS) $(lsefisystab_module_DEPENDENCIES) $(EXTRA_lsefisystab_module_DEPENDENCIES) - @rm -f lsefisystab.module$(EXEEXT) - $(AM_V_CCLD)$(lsefisystab_module_LINK) $(lsefisystab_module_OBJECTS) $(lsefisystab_module_LDADD) $(LIBS) -commands/lsmmap_module-lsmmap.$(OBJEXT): commands/$(am__dirstamp) \ - commands/$(DEPDIR)/$(am__dirstamp) - -lsmmap.module$(EXEEXT): $(lsmmap_module_OBJECTS) $(lsmmap_module_DEPENDENCIES) $(EXTRA_lsmmap_module_DEPENDENCIES) - @rm -f lsmmap.module$(EXEEXT) - $(AM_V_CCLD)$(lsmmap_module_LINK) $(lsmmap_module_OBJECTS) $(lsmmap_module_LDADD) $(LIBS) -commands/lspci_module-lspci.$(OBJEXT): commands/$(am__dirstamp) \ - commands/$(DEPDIR)/$(am__dirstamp) - -lspci.module$(EXEEXT): $(lspci_module_OBJECTS) $(lspci_module_DEPENDENCIES) $(EXTRA_lspci_module_DEPENDENCIES) - @rm -f lspci.module$(EXEEXT) - $(AM_V_CCLD)$(lspci_module_LINK) $(lspci_module_OBJECTS) $(lspci_module_LDADD) $(LIBS) -commands/efi/lssal_module-lssal.$(OBJEXT): \ - commands/efi/$(am__dirstamp) \ - commands/efi/$(DEPDIR)/$(am__dirstamp) - -lssal.module$(EXEEXT): $(lssal_module_OBJECTS) $(lssal_module_DEPENDENCIES) $(EXTRA_lssal_module_DEPENDENCIES) - @rm -f lssal.module$(EXEEXT) - $(AM_V_CCLD)$(lssal_module_LINK) $(lssal_module_OBJECTS) $(lssal_module_LDADD) $(LIBS) -commands/mips/loongson/$(am__dirstamp): - @$(MKDIR_P) commands/mips/loongson - @: > commands/mips/loongson/$(am__dirstamp) -commands/mips/loongson/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) commands/mips/loongson/$(DEPDIR) - @: > commands/mips/loongson/$(DEPDIR)/$(am__dirstamp) -commands/mips/loongson/lsspd_module-lsspd.$(OBJEXT): \ - commands/mips/loongson/$(am__dirstamp) \ - commands/mips/loongson/$(DEPDIR)/$(am__dirstamp) - -lsspd.module$(EXEEXT): $(lsspd_module_OBJECTS) $(lsspd_module_DEPENDENCIES) $(EXTRA_lsspd_module_DEPENDENCIES) - @rm -f lsspd.module$(EXEEXT) - $(AM_V_CCLD)$(lsspd_module_LINK) $(lsspd_module_OBJECTS) $(lsspd_module_LDADD) $(LIBS) -commands/xen/$(am__dirstamp): - @$(MKDIR_P) commands/xen - @: > commands/xen/$(am__dirstamp) -commands/xen/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) commands/xen/$(DEPDIR) - @: > commands/xen/$(DEPDIR)/$(am__dirstamp) -commands/xen/lsxen_module-lsxen.$(OBJEXT): \ - commands/xen/$(am__dirstamp) \ - commands/xen/$(DEPDIR)/$(am__dirstamp) - -lsxen.module$(EXEEXT): $(lsxen_module_OBJECTS) $(lsxen_module_DEPENDENCIES) $(EXTRA_lsxen_module_DEPENDENCIES) - @rm -f lsxen.module$(EXEEXT) - $(AM_V_CCLD)$(lsxen_module_LINK) $(lsxen_module_OBJECTS) $(lsxen_module_LDADD) $(LIBS) -disk/luks_module-luks.$(OBJEXT): disk/$(am__dirstamp) \ - disk/$(DEPDIR)/$(am__dirstamp) -disk/luks_module-AFSplitter.$(OBJEXT): disk/$(am__dirstamp) \ - disk/$(DEPDIR)/$(am__dirstamp) - -luks.module$(EXEEXT): $(luks_module_OBJECTS) $(luks_module_DEPENDENCIES) $(EXTRA_luks_module_DEPENDENCIES) - @rm -f luks.module$(EXEEXT) - $(AM_V_CCLD)$(luks_module_LINK) $(luks_module_OBJECTS) $(luks_module_LDADD) $(LIBS) -disk/lvm_module-lvm.$(OBJEXT): disk/$(am__dirstamp) \ - disk/$(DEPDIR)/$(am__dirstamp) - -lvm.module$(EXEEXT): $(lvm_module_OBJECTS) $(lvm_module_DEPENDENCIES) $(EXTRA_lvm_module_DEPENDENCIES) - @rm -f lvm.module$(EXEEXT) - $(AM_V_CCLD)$(lvm_module_LINK) $(lvm_module_OBJECTS) $(lvm_module_LDADD) $(LIBS) -boot/i386/pc/lzma_decompress_image-startup_raw.$(OBJEXT): \ - boot/i386/pc/$(am__dirstamp) \ - boot/i386/pc/$(DEPDIR)/$(am__dirstamp) - -lzma_decompress.image$(EXEEXT): $(lzma_decompress_image_OBJECTS) $(lzma_decompress_image_DEPENDENCIES) $(EXTRA_lzma_decompress_image_DEPENDENCIES) - @rm -f lzma_decompress.image$(EXEEXT) - $(AM_V_CCLD)$(lzma_decompress_image_LINK) $(lzma_decompress_image_OBJECTS) $(lzma_decompress_image_LDADD) $(LIBS) -io/lzopio_module-lzopio.$(OBJEXT): io/$(am__dirstamp) \ - io/$(DEPDIR)/$(am__dirstamp) -lib/minilzo/$(am__dirstamp): - @$(MKDIR_P) lib/minilzo - @: > lib/minilzo/$(am__dirstamp) -lib/minilzo/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) lib/minilzo/$(DEPDIR) - @: > lib/minilzo/$(DEPDIR)/$(am__dirstamp) -lib/minilzo/lzopio_module-minilzo.$(OBJEXT): \ - lib/minilzo/$(am__dirstamp) \ - lib/minilzo/$(DEPDIR)/$(am__dirstamp) - -lzopio.module$(EXEEXT): $(lzopio_module_OBJECTS) $(lzopio_module_DEPENDENCIES) $(EXTRA_lzopio_module_DEPENDENCIES) - @rm -f lzopio.module$(EXEEXT) - $(AM_V_CCLD)$(lzopio_module_LINK) $(lzopio_module_OBJECTS) $(lzopio_module_LDADD) $(LIBS) -commands/macbless_module-macbless.$(OBJEXT): commands/$(am__dirstamp) \ - commands/$(DEPDIR)/$(am__dirstamp) - -macbless.module$(EXEEXT): $(macbless_module_OBJECTS) $(macbless_module_DEPENDENCIES) $(EXTRA_macbless_module_DEPENDENCIES) - @rm -f macbless.module$(EXEEXT) - $(AM_V_CCLD)$(macbless_module_LINK) $(macbless_module_OBJECTS) $(macbless_module_LDADD) $(LIBS) -loader/macho_module-macho.$(OBJEXT): loader/$(am__dirstamp) \ - loader/$(DEPDIR)/$(am__dirstamp) -loader/macho_module-macho32.$(OBJEXT): loader/$(am__dirstamp) \ - loader/$(DEPDIR)/$(am__dirstamp) -loader/macho_module-macho64.$(OBJEXT): loader/$(am__dirstamp) \ - loader/$(DEPDIR)/$(am__dirstamp) -loader/macho_module-lzss.$(OBJEXT): loader/$(am__dirstamp) \ - loader/$(DEPDIR)/$(am__dirstamp) - -macho.module$(EXEEXT): $(macho_module_OBJECTS) $(macho_module_DEPENDENCIES) $(EXTRA_macho_module_DEPENDENCIES) - @rm -f macho.module$(EXEEXT) - $(AM_V_CCLD)$(macho_module_LINK) $(macho_module_OBJECTS) $(macho_module_LDADD) $(LIBS) -term/i386/pc/mda_text_module-mda_text.$(OBJEXT): \ - term/i386/pc/$(am__dirstamp) \ - term/i386/pc/$(DEPDIR)/$(am__dirstamp) - -mda_text.module$(EXEEXT): $(mda_text_module_OBJECTS) $(mda_text_module_DEPENDENCIES) $(EXTRA_mda_text_module_DEPENDENCIES) - @rm -f mda_text.module$(EXEEXT) - $(AM_V_CCLD)$(mda_text_module_LINK) $(mda_text_module_OBJECTS) $(mda_text_module_LDADD) $(LIBS) -disk/mdraid09_module-mdraid_linux.$(OBJEXT): disk/$(am__dirstamp) \ - disk/$(DEPDIR)/$(am__dirstamp) - -mdraid09.module$(EXEEXT): $(mdraid09_module_OBJECTS) $(mdraid09_module_DEPENDENCIES) $(EXTRA_mdraid09_module_DEPENDENCIES) - @rm -f mdraid09.module$(EXEEXT) - $(AM_V_CCLD)$(mdraid09_module_LINK) $(mdraid09_module_OBJECTS) $(mdraid09_module_LDADD) $(LIBS) -disk/mdraid09_be_module-mdraid_linux_be.$(OBJEXT): \ - disk/$(am__dirstamp) disk/$(DEPDIR)/$(am__dirstamp) - -mdraid09_be.module$(EXEEXT): $(mdraid09_be_module_OBJECTS) $(mdraid09_be_module_DEPENDENCIES) $(EXTRA_mdraid09_be_module_DEPENDENCIES) - @rm -f mdraid09_be.module$(EXEEXT) - $(AM_V_CCLD)$(mdraid09_be_module_LINK) $(mdraid09_be_module_OBJECTS) $(mdraid09_be_module_LDADD) $(LIBS) -disk/mdraid1x_module-mdraid1x_linux.$(OBJEXT): disk/$(am__dirstamp) \ - disk/$(DEPDIR)/$(am__dirstamp) - -mdraid1x.module$(EXEEXT): $(mdraid1x_module_OBJECTS) $(mdraid1x_module_DEPENDENCIES) $(EXTRA_mdraid1x_module_DEPENDENCIES) - @rm -f mdraid1x.module$(EXEEXT) - $(AM_V_CCLD)$(mdraid1x_module_LINK) $(mdraid1x_module_OBJECTS) $(mdraid1x_module_LDADD) $(LIBS) -disk/memdisk_module-memdisk.$(OBJEXT): disk/$(am__dirstamp) \ - disk/$(DEPDIR)/$(am__dirstamp) - -memdisk.module$(EXEEXT): $(memdisk_module_OBJECTS) $(memdisk_module_DEPENDENCIES) $(EXTRA_memdisk_module_DEPENDENCIES) - @rm -f memdisk.module$(EXEEXT) - $(AM_V_CCLD)$(memdisk_module_LINK) $(memdisk_module_OBJECTS) $(memdisk_module_LDADD) $(LIBS) -commands/memrw_module-memrw.$(OBJEXT): commands/$(am__dirstamp) \ - commands/$(DEPDIR)/$(am__dirstamp) - -memrw.module$(EXEEXT): $(memrw_module_OBJECTS) $(memrw_module_DEPENDENCIES) $(EXTRA_memrw_module_DEPENDENCIES) - @rm -f memrw.module$(EXEEXT) - $(AM_V_CCLD)$(memrw_module_LINK) $(memrw_module_OBJECTS) $(memrw_module_LDADD) $(LIBS) -commands/minicmd_module-minicmd.$(OBJEXT): commands/$(am__dirstamp) \ - commands/$(DEPDIR)/$(am__dirstamp) - -minicmd.module$(EXEEXT): $(minicmd_module_OBJECTS) $(minicmd_module_DEPENDENCIES) $(EXTRA_minicmd_module_DEPENDENCIES) - @rm -f minicmd.module$(EXEEXT) - $(AM_V_CCLD)$(minicmd_module_LINK) $(minicmd_module_OBJECTS) $(minicmd_module_LDADD) $(LIBS) -fs/minix_module-minix.$(OBJEXT): fs/$(am__dirstamp) \ - fs/$(DEPDIR)/$(am__dirstamp) - -minix.module$(EXEEXT): $(minix_module_OBJECTS) $(minix_module_DEPENDENCIES) $(EXTRA_minix_module_DEPENDENCIES) - @rm -f minix.module$(EXEEXT) - $(AM_V_CCLD)$(minix_module_LINK) $(minix_module_OBJECTS) $(minix_module_LDADD) $(LIBS) -fs/minix2_module-minix2.$(OBJEXT): fs/$(am__dirstamp) \ - fs/$(DEPDIR)/$(am__dirstamp) - -minix2.module$(EXEEXT): $(minix2_module_OBJECTS) $(minix2_module_DEPENDENCIES) $(EXTRA_minix2_module_DEPENDENCIES) - @rm -f minix2.module$(EXEEXT) - $(AM_V_CCLD)$(minix2_module_LINK) $(minix2_module_OBJECTS) $(minix2_module_LDADD) $(LIBS) -fs/minix2_be_module-minix2_be.$(OBJEXT): fs/$(am__dirstamp) \ - fs/$(DEPDIR)/$(am__dirstamp) - -minix2_be.module$(EXEEXT): $(minix2_be_module_OBJECTS) $(minix2_be_module_DEPENDENCIES) $(EXTRA_minix2_be_module_DEPENDENCIES) - @rm -f minix2_be.module$(EXEEXT) - $(AM_V_CCLD)$(minix2_be_module_LINK) $(minix2_be_module_OBJECTS) $(minix2_be_module_LDADD) $(LIBS) -fs/minix3_module-minix3.$(OBJEXT): fs/$(am__dirstamp) \ - fs/$(DEPDIR)/$(am__dirstamp) - -minix3.module$(EXEEXT): $(minix3_module_OBJECTS) $(minix3_module_DEPENDENCIES) $(EXTRA_minix3_module_DEPENDENCIES) - @rm -f minix3.module$(EXEEXT) - $(AM_V_CCLD)$(minix3_module_LINK) $(minix3_module_OBJECTS) $(minix3_module_LDADD) $(LIBS) -fs/minix3_be_module-minix3_be.$(OBJEXT): fs/$(am__dirstamp) \ - fs/$(DEPDIR)/$(am__dirstamp) - -minix3_be.module$(EXEEXT): $(minix3_be_module_OBJECTS) $(minix3_be_module_DEPENDENCIES) $(EXTRA_minix3_be_module_DEPENDENCIES) - @rm -f minix3_be.module$(EXEEXT) - $(AM_V_CCLD)$(minix3_be_module_LINK) $(minix3_be_module_OBJECTS) $(minix3_be_module_LDADD) $(LIBS) -fs/minix_be_module-minix_be.$(OBJEXT): fs/$(am__dirstamp) \ - fs/$(DEPDIR)/$(am__dirstamp) - -minix_be.module$(EXEEXT): $(minix_be_module_OBJECTS) $(minix_be_module_DEPENDENCIES) $(EXTRA_minix_be_module_DEPENDENCIES) - @rm -f minix_be.module$(EXEEXT) - $(AM_V_CCLD)$(minix_be_module_LINK) $(minix_be_module_OBJECTS) $(minix_be_module_LDADD) $(LIBS) -mmap/efi/$(am__dirstamp): - @$(MKDIR_P) mmap/efi - @: > mmap/efi/$(am__dirstamp) -mmap/efi/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) mmap/efi/$(DEPDIR) - @: > mmap/efi/$(DEPDIR)/$(am__dirstamp) -mmap/efi/mmap_module-mmap.$(OBJEXT): mmap/efi/$(am__dirstamp) \ - mmap/efi/$(DEPDIR)/$(am__dirstamp) -mmap/$(am__dirstamp): - @$(MKDIR_P) mmap - @: > mmap/$(am__dirstamp) -mmap/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) mmap/$(DEPDIR) - @: > mmap/$(DEPDIR)/$(am__dirstamp) -mmap/mmap_module-mmap.$(OBJEXT): mmap/$(am__dirstamp) \ - mmap/$(DEPDIR)/$(am__dirstamp) -mmap/i386/$(am__dirstamp): - @$(MKDIR_P) mmap/i386 - @: > mmap/i386/$(am__dirstamp) -mmap/i386/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) mmap/i386/$(DEPDIR) - @: > mmap/i386/$(DEPDIR)/$(am__dirstamp) -mmap/i386/mmap_module-uppermem.$(OBJEXT): mmap/i386/$(am__dirstamp) \ - mmap/i386/$(DEPDIR)/$(am__dirstamp) -mmap/i386/mmap_module-mmap.$(OBJEXT): mmap/i386/$(am__dirstamp) \ - mmap/i386/$(DEPDIR)/$(am__dirstamp) -mmap/i386/pc/$(am__dirstamp): - @$(MKDIR_P) mmap/i386/pc - @: > mmap/i386/pc/$(am__dirstamp) -mmap/i386/pc/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) mmap/i386/pc/$(DEPDIR) - @: > mmap/i386/pc/$(DEPDIR)/$(am__dirstamp) -mmap/i386/pc/mmap_module-mmap.$(OBJEXT): mmap/i386/pc/$(am__dirstamp) \ - mmap/i386/pc/$(DEPDIR)/$(am__dirstamp) -mmap/i386/pc/mmap_module-mmap_helper.$(OBJEXT): \ - mmap/i386/pc/$(am__dirstamp) \ - mmap/i386/pc/$(DEPDIR)/$(am__dirstamp) -mmap/mips/$(am__dirstamp): - @$(MKDIR_P) mmap/mips - @: > mmap/mips/$(am__dirstamp) -mmap/mips/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) mmap/mips/$(DEPDIR) - @: > mmap/mips/$(DEPDIR)/$(am__dirstamp) -mmap/mips/mmap_module-uppermem.$(OBJEXT): mmap/mips/$(am__dirstamp) \ - mmap/mips/$(DEPDIR)/$(am__dirstamp) - -mmap.module$(EXEEXT): $(mmap_module_OBJECTS) $(mmap_module_DEPENDENCIES) $(EXTRA_mmap_module_DEPENDENCIES) - @rm -f mmap.module$(EXEEXT) - $(AM_V_CCLD)$(mmap_module_LINK) $(mmap_module_OBJECTS) $(mmap_module_LDADD) $(LIBS) -term/morse_module-morse.$(OBJEXT): term/$(am__dirstamp) \ - term/$(DEPDIR)/$(am__dirstamp) - -morse.module$(EXEEXT): $(morse_module_OBJECTS) $(morse_module_DEPENDENCIES) $(EXTRA_morse_module_DEPENDENCIES) - @rm -f morse.module$(EXEEXT) - $(AM_V_CCLD)$(morse_module_LINK) $(morse_module_OBJECTS) $(morse_module_LDADD) $(LIBS) -lib/libgcrypt-grub/mpi/$(am__dirstamp): - @$(MKDIR_P) lib/libgcrypt-grub/mpi - @: > lib/libgcrypt-grub/mpi/$(am__dirstamp) -lib/libgcrypt-grub/mpi/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) lib/libgcrypt-grub/mpi/$(DEPDIR) - @: > lib/libgcrypt-grub/mpi/$(DEPDIR)/$(am__dirstamp) -lib/libgcrypt-grub/mpi/mpi_module-mpiutil.$(OBJEXT): \ - lib/libgcrypt-grub/mpi/$(am__dirstamp) \ - lib/libgcrypt-grub/mpi/$(DEPDIR)/$(am__dirstamp) -lib/libgcrypt-grub/mpi/mpi_module-mpi-bit.$(OBJEXT): \ - lib/libgcrypt-grub/mpi/$(am__dirstamp) \ - lib/libgcrypt-grub/mpi/$(DEPDIR)/$(am__dirstamp) -lib/libgcrypt-grub/mpi/mpi_module-mpi-add.$(OBJEXT): \ - lib/libgcrypt-grub/mpi/$(am__dirstamp) \ - lib/libgcrypt-grub/mpi/$(DEPDIR)/$(am__dirstamp) -lib/libgcrypt-grub/mpi/mpi_module-mpi-mul.$(OBJEXT): \ - lib/libgcrypt-grub/mpi/$(am__dirstamp) \ - lib/libgcrypt-grub/mpi/$(DEPDIR)/$(am__dirstamp) -lib/libgcrypt-grub/mpi/mpi_module-mpi-mod.$(OBJEXT): \ - lib/libgcrypt-grub/mpi/$(am__dirstamp) \ - lib/libgcrypt-grub/mpi/$(DEPDIR)/$(am__dirstamp) -lib/libgcrypt-grub/mpi/mpi_module-mpi-gcd.$(OBJEXT): \ - lib/libgcrypt-grub/mpi/$(am__dirstamp) \ - lib/libgcrypt-grub/mpi/$(DEPDIR)/$(am__dirstamp) -lib/libgcrypt-grub/mpi/mpi_module-mpi-div.$(OBJEXT): \ - lib/libgcrypt-grub/mpi/$(am__dirstamp) \ - lib/libgcrypt-grub/mpi/$(DEPDIR)/$(am__dirstamp) -lib/libgcrypt-grub/mpi/mpi_module-mpi-cmp.$(OBJEXT): \ - lib/libgcrypt-grub/mpi/$(am__dirstamp) \ - lib/libgcrypt-grub/mpi/$(DEPDIR)/$(am__dirstamp) -lib/libgcrypt-grub/mpi/mpi_module-mpi-inv.$(OBJEXT): \ - lib/libgcrypt-grub/mpi/$(am__dirstamp) \ - lib/libgcrypt-grub/mpi/$(DEPDIR)/$(am__dirstamp) -lib/libgcrypt-grub/mpi/mpi_module-mpi-pow.$(OBJEXT): \ - lib/libgcrypt-grub/mpi/$(am__dirstamp) \ - lib/libgcrypt-grub/mpi/$(DEPDIR)/$(am__dirstamp) -lib/libgcrypt-grub/mpi/mpi_module-mpi-mpow.$(OBJEXT): \ - lib/libgcrypt-grub/mpi/$(am__dirstamp) \ - lib/libgcrypt-grub/mpi/$(DEPDIR)/$(am__dirstamp) -lib/libgcrypt-grub/mpi/mpi_module-mpih-lshift.$(OBJEXT): \ - lib/libgcrypt-grub/mpi/$(am__dirstamp) \ - lib/libgcrypt-grub/mpi/$(DEPDIR)/$(am__dirstamp) -lib/libgcrypt-grub/mpi/mpi_module-mpih-mul.$(OBJEXT): \ - lib/libgcrypt-grub/mpi/$(am__dirstamp) \ - lib/libgcrypt-grub/mpi/$(DEPDIR)/$(am__dirstamp) -lib/libgcrypt-grub/mpi/mpi_module-mpih-mul1.$(OBJEXT): \ - lib/libgcrypt-grub/mpi/$(am__dirstamp) \ - lib/libgcrypt-grub/mpi/$(DEPDIR)/$(am__dirstamp) -lib/libgcrypt-grub/mpi/mpi_module-mpih-mul2.$(OBJEXT): \ - lib/libgcrypt-grub/mpi/$(am__dirstamp) \ - lib/libgcrypt-grub/mpi/$(DEPDIR)/$(am__dirstamp) -lib/libgcrypt-grub/mpi/mpi_module-mpih-mul3.$(OBJEXT): \ - lib/libgcrypt-grub/mpi/$(am__dirstamp) \ - lib/libgcrypt-grub/mpi/$(DEPDIR)/$(am__dirstamp) -lib/libgcrypt-grub/mpi/mpi_module-mpih-add1.$(OBJEXT): \ - lib/libgcrypt-grub/mpi/$(am__dirstamp) \ - lib/libgcrypt-grub/mpi/$(DEPDIR)/$(am__dirstamp) -lib/libgcrypt-grub/mpi/mpi_module-mpih-sub1.$(OBJEXT): \ - lib/libgcrypt-grub/mpi/$(am__dirstamp) \ - lib/libgcrypt-grub/mpi/$(DEPDIR)/$(am__dirstamp) -lib/libgcrypt-grub/mpi/mpi_module-mpih-div.$(OBJEXT): \ - lib/libgcrypt-grub/mpi/$(am__dirstamp) \ - lib/libgcrypt-grub/mpi/$(DEPDIR)/$(am__dirstamp) -lib/libgcrypt-grub/mpi/mpi_module-mpicoder.$(OBJEXT): \ - lib/libgcrypt-grub/mpi/$(am__dirstamp) \ - lib/libgcrypt-grub/mpi/$(DEPDIR)/$(am__dirstamp) -lib/libgcrypt-grub/mpi/mpi_module-mpih-rshift.$(OBJEXT): \ - lib/libgcrypt-grub/mpi/$(am__dirstamp) \ - lib/libgcrypt-grub/mpi/$(DEPDIR)/$(am__dirstamp) -lib/libgcrypt-grub/mpi/mpi_module-mpi-inline.$(OBJEXT): \ - lib/libgcrypt-grub/mpi/$(am__dirstamp) \ - lib/libgcrypt-grub/mpi/$(DEPDIR)/$(am__dirstamp) -lib/libgcrypt_wrap/$(am__dirstamp): - @$(MKDIR_P) lib/libgcrypt_wrap - @: > lib/libgcrypt_wrap/$(am__dirstamp) -lib/libgcrypt_wrap/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) lib/libgcrypt_wrap/$(DEPDIR) - @: > lib/libgcrypt_wrap/$(DEPDIR)/$(am__dirstamp) -lib/libgcrypt_wrap/mpi_module-mem.$(OBJEXT): \ - lib/libgcrypt_wrap/$(am__dirstamp) \ - lib/libgcrypt_wrap/$(DEPDIR)/$(am__dirstamp) - -mpi.module$(EXEEXT): $(mpi_module_OBJECTS) $(mpi_module_DEPENDENCIES) $(EXTRA_mpi_module_DEPENDENCIES) - @rm -f mpi.module$(EXEEXT) - $(AM_V_CCLD)$(mpi_module_LINK) $(mpi_module_OBJECTS) $(mpi_module_LDADD) $(LIBS) -parttool/$(am__dirstamp): - @$(MKDIR_P) parttool - @: > parttool/$(am__dirstamp) -parttool/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) parttool/$(DEPDIR) - @: > parttool/$(DEPDIR)/$(am__dirstamp) -parttool/msdospart_module-msdospart.$(OBJEXT): \ - parttool/$(am__dirstamp) parttool/$(DEPDIR)/$(am__dirstamp) - -msdospart.module$(EXEEXT): $(msdospart_module_OBJECTS) $(msdospart_module_DEPENDENCIES) $(EXTRA_msdospart_module_DEPENDENCIES) - @rm -f msdospart.module$(EXEEXT) - $(AM_V_CCLD)$(msdospart_module_LINK) $(msdospart_module_OBJECTS) $(msdospart_module_LDADD) $(LIBS) -tests/mul_test_module-mul_test.$(OBJEXT): tests/$(am__dirstamp) \ - tests/$(DEPDIR)/$(am__dirstamp) - -mul_test.module$(EXEEXT): $(mul_test_module_OBJECTS) $(mul_test_module_DEPENDENCIES) $(EXTRA_mul_test_module_DEPENDENCIES) - @rm -f mul_test.module$(EXEEXT) - $(AM_V_CCLD)$(mul_test_module_LINK) $(mul_test_module_OBJECTS) $(mul_test_module_LDADD) $(LIBS) -loader/i386/multiboot_module-multiboot_mbi.$(OBJEXT): \ - loader/i386/$(am__dirstamp) \ - loader/i386/$(DEPDIR)/$(am__dirstamp) -loader/multiboot_module-multiboot.$(OBJEXT): loader/$(am__dirstamp) \ - loader/$(DEPDIR)/$(am__dirstamp) - -multiboot.module$(EXEEXT): $(multiboot_module_OBJECTS) $(multiboot_module_DEPENDENCIES) $(EXTRA_multiboot_module_DEPENDENCIES) - @rm -f multiboot.module$(EXEEXT) - $(AM_V_CCLD)$(multiboot_module_LINK) $(multiboot_module_OBJECTS) $(multiboot_module_LDADD) $(LIBS) -loader/multiboot2_module-multiboot.$(OBJEXT): loader/$(am__dirstamp) \ - loader/$(DEPDIR)/$(am__dirstamp) -loader/multiboot2_module-multiboot_mbi2.$(OBJEXT): \ - loader/$(am__dirstamp) loader/$(DEPDIR)/$(am__dirstamp) - -multiboot2.module$(EXEEXT): $(multiboot2_module_OBJECTS) $(multiboot2_module_DEPENDENCIES) $(EXTRA_multiboot2_module_DEPENDENCIES) - @rm -f multiboot2.module$(EXEEXT) - $(AM_V_CCLD)$(multiboot2_module_LINK) $(multiboot2_module_OBJECTS) $(multiboot2_module_LDADD) $(LIBS) -disk/ieee1275/nand_module-nand.$(OBJEXT): \ - disk/ieee1275/$(am__dirstamp) \ - disk/ieee1275/$(DEPDIR)/$(am__dirstamp) - -nand.module$(EXEEXT): $(nand_module_OBJECTS) $(nand_module_DEPENDENCIES) $(EXTRA_nand_module_DEPENDENCIES) - @rm -f nand.module$(EXEEXT) - $(AM_V_CCLD)$(nand_module_LINK) $(nand_module_OBJECTS) $(nand_module_LDADD) $(LIBS) -commands/nativedisk_module-nativedisk.$(OBJEXT): \ - commands/$(am__dirstamp) commands/$(DEPDIR)/$(am__dirstamp) - -nativedisk.module$(EXEEXT): $(nativedisk_module_OBJECTS) $(nativedisk_module_DEPENDENCIES) $(EXTRA_nativedisk_module_DEPENDENCIES) - @rm -f nativedisk.module$(EXEEXT) - $(AM_V_CCLD)$(nativedisk_module_LINK) $(nativedisk_module_OBJECTS) $(nativedisk_module_LDADD) $(LIBS) -net/net_module-net.$(OBJEXT): net/$(am__dirstamp) \ - net/$(DEPDIR)/$(am__dirstamp) -net/net_module-dns.$(OBJEXT): net/$(am__dirstamp) \ - net/$(DEPDIR)/$(am__dirstamp) -net/net_module-bootp.$(OBJEXT): net/$(am__dirstamp) \ - net/$(DEPDIR)/$(am__dirstamp) -net/net_module-ip.$(OBJEXT): net/$(am__dirstamp) \ - net/$(DEPDIR)/$(am__dirstamp) -net/net_module-udp.$(OBJEXT): net/$(am__dirstamp) \ - net/$(DEPDIR)/$(am__dirstamp) -net/net_module-tcp.$(OBJEXT): net/$(am__dirstamp) \ - net/$(DEPDIR)/$(am__dirstamp) -net/net_module-icmp.$(OBJEXT): net/$(am__dirstamp) \ - net/$(DEPDIR)/$(am__dirstamp) -net/net_module-icmp6.$(OBJEXT): net/$(am__dirstamp) \ - net/$(DEPDIR)/$(am__dirstamp) -net/net_module-ethernet.$(OBJEXT): net/$(am__dirstamp) \ - net/$(DEPDIR)/$(am__dirstamp) -net/net_module-arp.$(OBJEXT): net/$(am__dirstamp) \ - net/$(DEPDIR)/$(am__dirstamp) -net/net_module-netbuff.$(OBJEXT): net/$(am__dirstamp) \ - net/$(DEPDIR)/$(am__dirstamp) - -net.module$(EXEEXT): $(net_module_OBJECTS) $(net_module_DEPENDENCIES) $(EXTRA_net_module_DEPENDENCIES) - @rm -f net.module$(EXEEXT) - $(AM_V_CCLD)$(net_module_LINK) $(net_module_OBJECTS) $(net_module_LDADD) $(LIBS) -fs/newc_module-newc.$(OBJEXT): fs/$(am__dirstamp) \ - fs/$(DEPDIR)/$(am__dirstamp) - -newc.module$(EXEEXT): $(newc_module_OBJECTS) $(newc_module_DEPENDENCIES) $(EXTRA_newc_module_DEPENDENCIES) - @rm -f newc.module$(EXEEXT) - $(AM_V_CCLD)$(newc_module_LINK) $(newc_module_OBJECTS) $(newc_module_LDADD) $(LIBS) -fs/nilfs2_module-nilfs2.$(OBJEXT): fs/$(am__dirstamp) \ - fs/$(DEPDIR)/$(am__dirstamp) - -nilfs2.module$(EXEEXT): $(nilfs2_module_OBJECTS) $(nilfs2_module_DEPENDENCIES) $(EXTRA_nilfs2_module_DEPENDENCIES) - @rm -f nilfs2.module$(EXEEXT) - $(AM_V_CCLD)$(nilfs2_module_LINK) $(nilfs2_module_OBJECTS) $(nilfs2_module_LDADD) $(LIBS) -boot/mips/$(am__dirstamp): - @$(MKDIR_P) boot/mips - @: > boot/mips/$(am__dirstamp) -boot/mips/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) boot/mips/$(DEPDIR) - @: > boot/mips/$(DEPDIR)/$(am__dirstamp) -boot/mips/none_decompress_image-startup_raw.$(OBJEXT): \ - boot/mips/$(am__dirstamp) boot/mips/$(DEPDIR)/$(am__dirstamp) -boot/decompressor/$(am__dirstamp): - @$(MKDIR_P) boot/decompressor - @: > boot/decompressor/$(am__dirstamp) -boot/decompressor/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) boot/decompressor/$(DEPDIR) - @: > boot/decompressor/$(DEPDIR)/$(am__dirstamp) -boot/decompressor/none_decompress_image-none.$(OBJEXT): \ - boot/decompressor/$(am__dirstamp) \ - boot/decompressor/$(DEPDIR)/$(am__dirstamp) - -none_decompress.image$(EXEEXT): $(none_decompress_image_OBJECTS) $(none_decompress_image_DEPENDENCIES) $(EXTRA_none_decompress_image_DEPENDENCIES) - @rm -f none_decompress.image$(EXEEXT) - $(AM_V_CCLD)$(none_decompress_image_LINK) $(none_decompress_image_OBJECTS) $(none_decompress_image_LDADD) $(LIBS) -normal/$(am__dirstamp): - @$(MKDIR_P) normal - @: > normal/$(am__dirstamp) -normal/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) normal/$(DEPDIR) - @: > normal/$(DEPDIR)/$(am__dirstamp) -normal/normal_module-main.$(OBJEXT): normal/$(am__dirstamp) \ - normal/$(DEPDIR)/$(am__dirstamp) -normal/normal_module-cmdline.$(OBJEXT): normal/$(am__dirstamp) \ - normal/$(DEPDIR)/$(am__dirstamp) -normal/normal_module-dyncmd.$(OBJEXT): normal/$(am__dirstamp) \ - normal/$(DEPDIR)/$(am__dirstamp) -normal/normal_module-auth.$(OBJEXT): normal/$(am__dirstamp) \ - normal/$(DEPDIR)/$(am__dirstamp) -normal/normal_module-autofs.$(OBJEXT): normal/$(am__dirstamp) \ - normal/$(DEPDIR)/$(am__dirstamp) -normal/normal_module-color.$(OBJEXT): normal/$(am__dirstamp) \ - normal/$(DEPDIR)/$(am__dirstamp) -normal/normal_module-completion.$(OBJEXT): normal/$(am__dirstamp) \ - normal/$(DEPDIR)/$(am__dirstamp) -normal/normal_module-datetime.$(OBJEXT): normal/$(am__dirstamp) \ - normal/$(DEPDIR)/$(am__dirstamp) -normal/normal_module-menu.$(OBJEXT): normal/$(am__dirstamp) \ - normal/$(DEPDIR)/$(am__dirstamp) -normal/normal_module-menu_entry.$(OBJEXT): normal/$(am__dirstamp) \ - normal/$(DEPDIR)/$(am__dirstamp) -normal/normal_module-menu_text.$(OBJEXT): normal/$(am__dirstamp) \ - normal/$(DEPDIR)/$(am__dirstamp) -normal/normal_module-misc.$(OBJEXT): normal/$(am__dirstamp) \ - normal/$(DEPDIR)/$(am__dirstamp) -normal/normal_module-crypto.$(OBJEXT): normal/$(am__dirstamp) \ - normal/$(DEPDIR)/$(am__dirstamp) -normal/normal_module-term.$(OBJEXT): normal/$(am__dirstamp) \ - normal/$(DEPDIR)/$(am__dirstamp) -normal/normal_module-context.$(OBJEXT): normal/$(am__dirstamp) \ - normal/$(DEPDIR)/$(am__dirstamp) -normal/normal_module-charset.$(OBJEXT): normal/$(am__dirstamp) \ - normal/$(DEPDIR)/$(am__dirstamp) -lib/normal_module-getline.$(OBJEXT): lib/$(am__dirstamp) \ - lib/$(DEPDIR)/$(am__dirstamp) -script/$(am__dirstamp): - @$(MKDIR_P) script - @: > script/$(am__dirstamp) -script/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) script/$(DEPDIR) - @: > script/$(DEPDIR)/$(am__dirstamp) -script/normal_module-main.$(OBJEXT): script/$(am__dirstamp) \ - script/$(DEPDIR)/$(am__dirstamp) -script/normal_module-script.$(OBJEXT): script/$(am__dirstamp) \ - script/$(DEPDIR)/$(am__dirstamp) -script/normal_module-execute.$(OBJEXT): script/$(am__dirstamp) \ - script/$(DEPDIR)/$(am__dirstamp) -script/normal_module-function.$(OBJEXT): script/$(am__dirstamp) \ - script/$(DEPDIR)/$(am__dirstamp) -script/normal_module-lexer.$(OBJEXT): script/$(am__dirstamp) \ - script/$(DEPDIR)/$(am__dirstamp) -script/normal_module-argv.$(OBJEXT): script/$(am__dirstamp) \ - script/$(DEPDIR)/$(am__dirstamp) -commands/normal_module-menuentry.$(OBJEXT): commands/$(am__dirstamp) \ - commands/$(DEPDIR)/$(am__dirstamp) - -normal.module$(EXEEXT): $(normal_module_OBJECTS) $(normal_module_DEPENDENCIES) $(EXTRA_normal_module_DEPENDENCIES) - @rm -f normal.module$(EXEEXT) - $(AM_V_CCLD)$(normal_module_LINK) $(normal_module_OBJECTS) $(normal_module_LDADD) $(LIBS) -fs/ntfs_module-ntfs.$(OBJEXT): fs/$(am__dirstamp) \ - fs/$(DEPDIR)/$(am__dirstamp) - -ntfs.module$(EXEEXT): $(ntfs_module_OBJECTS) $(ntfs_module_DEPENDENCIES) $(EXTRA_ntfs_module_DEPENDENCIES) - @rm -f ntfs.module$(EXEEXT) - $(AM_V_CCLD)$(ntfs_module_LINK) $(ntfs_module_OBJECTS) $(ntfs_module_LDADD) $(LIBS) -fs/ntfscomp_module-ntfscomp.$(OBJEXT): fs/$(am__dirstamp) \ - fs/$(DEPDIR)/$(am__dirstamp) - -ntfscomp.module$(EXEEXT): $(ntfscomp_module_OBJECTS) $(ntfscomp_module_DEPENDENCIES) $(EXTRA_ntfscomp_module_DEPENDENCIES) - @rm -f ntfscomp.module$(EXEEXT) - $(AM_V_CCLD)$(ntfscomp_module_LINK) $(ntfscomp_module_OBJECTS) $(ntfscomp_module_LDADD) $(LIBS) -loader/i386/pc/ntldr_module-ntldr.$(OBJEXT): \ - loader/i386/pc/$(am__dirstamp) \ - loader/i386/pc/$(DEPDIR)/$(am__dirstamp) - -ntldr.module$(EXEEXT): $(ntldr_module_OBJECTS) $(ntldr_module_DEPENDENCIES) $(EXTRA_ntldr_module_DEPENDENCIES) - @rm -f ntldr.module$(EXEEXT) - $(AM_V_CCLD)$(ntldr_module_LINK) $(ntldr_module_OBJECTS) $(ntldr_module_LDADD) $(LIBS) -fs/odc_module-odc.$(OBJEXT): fs/$(am__dirstamp) \ - fs/$(DEPDIR)/$(am__dirstamp) - -odc.module$(EXEEXT): $(odc_module_OBJECTS) $(odc_module_DEPENDENCIES) $(EXTRA_odc_module_DEPENDENCIES) - @rm -f odc.module$(EXEEXT) - $(AM_V_CCLD)$(odc_module_LINK) $(odc_module_OBJECTS) $(odc_module_LDADD) $(LIBS) -io/offsetio_module-offset.$(OBJEXT): io/$(am__dirstamp) \ - io/$(DEPDIR)/$(am__dirstamp) - -offsetio.module$(EXEEXT): $(offsetio_module_OBJECTS) $(offsetio_module_DEPENDENCIES) $(EXTRA_offsetio_module_DEPENDENCIES) - @rm -f offsetio.module$(EXEEXT) - $(AM_V_CCLD)$(offsetio_module_LINK) $(offsetio_module_OBJECTS) $(offsetio_module_LDADD) $(LIBS) -net/drivers/ieee1275/$(am__dirstamp): - @$(MKDIR_P) net/drivers/ieee1275 - @: > net/drivers/ieee1275/$(am__dirstamp) -net/drivers/ieee1275/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) net/drivers/ieee1275/$(DEPDIR) - @: > net/drivers/ieee1275/$(DEPDIR)/$(am__dirstamp) -net/drivers/ieee1275/ofnet_module-ofnet.$(OBJEXT): \ - net/drivers/ieee1275/$(am__dirstamp) \ - net/drivers/ieee1275/$(DEPDIR)/$(am__dirstamp) - -ofnet.module$(EXEEXT): $(ofnet_module_OBJECTS) $(ofnet_module_DEPENDENCIES) $(EXTRA_ofnet_module_DEPENDENCIES) - @rm -f ofnet.module$(EXEEXT) - $(AM_V_CCLD)$(ofnet_module_LINK) $(ofnet_module_OBJECTS) $(ofnet_module_LDADD) $(LIBS) -bus/usb/ohci_module-ohci.$(OBJEXT): bus/usb/$(am__dirstamp) \ - bus/usb/$(DEPDIR)/$(am__dirstamp) - -ohci.module$(EXEEXT): $(ohci_module_OBJECTS) $(ohci_module_DEPENDENCIES) $(EXTRA_ohci_module_DEPENDENCIES) - @rm -f ohci.module$(EXEEXT) - $(AM_V_CCLD)$(ohci_module_LINK) $(ohci_module_OBJECTS) $(ohci_module_LDADD) $(LIBS) -partmap/$(am__dirstamp): - @$(MKDIR_P) partmap - @: > partmap/$(am__dirstamp) -partmap/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) partmap/$(DEPDIR) - @: > partmap/$(DEPDIR)/$(am__dirstamp) -partmap/part_acorn_module-acorn.$(OBJEXT): partmap/$(am__dirstamp) \ - partmap/$(DEPDIR)/$(am__dirstamp) - -part_acorn.module$(EXEEXT): $(part_acorn_module_OBJECTS) $(part_acorn_module_DEPENDENCIES) $(EXTRA_part_acorn_module_DEPENDENCIES) - @rm -f part_acorn.module$(EXEEXT) - $(AM_V_CCLD)$(part_acorn_module_LINK) $(part_acorn_module_OBJECTS) $(part_acorn_module_LDADD) $(LIBS) -partmap/part_amiga_module-amiga.$(OBJEXT): partmap/$(am__dirstamp) \ - partmap/$(DEPDIR)/$(am__dirstamp) - -part_amiga.module$(EXEEXT): $(part_amiga_module_OBJECTS) $(part_amiga_module_DEPENDENCIES) $(EXTRA_part_amiga_module_DEPENDENCIES) - @rm -f part_amiga.module$(EXEEXT) - $(AM_V_CCLD)$(part_amiga_module_LINK) $(part_amiga_module_OBJECTS) $(part_amiga_module_LDADD) $(LIBS) -partmap/part_apple_module-apple.$(OBJEXT): partmap/$(am__dirstamp) \ - partmap/$(DEPDIR)/$(am__dirstamp) - -part_apple.module$(EXEEXT): $(part_apple_module_OBJECTS) $(part_apple_module_DEPENDENCIES) $(EXTRA_part_apple_module_DEPENDENCIES) - @rm -f part_apple.module$(EXEEXT) - $(AM_V_CCLD)$(part_apple_module_LINK) $(part_apple_module_OBJECTS) $(part_apple_module_LDADD) $(LIBS) -partmap/part_bsd_module-bsdlabel.$(OBJEXT): partmap/$(am__dirstamp) \ - partmap/$(DEPDIR)/$(am__dirstamp) - -part_bsd.module$(EXEEXT): $(part_bsd_module_OBJECTS) $(part_bsd_module_DEPENDENCIES) $(EXTRA_part_bsd_module_DEPENDENCIES) - @rm -f part_bsd.module$(EXEEXT) - $(AM_V_CCLD)$(part_bsd_module_LINK) $(part_bsd_module_OBJECTS) $(part_bsd_module_LDADD) $(LIBS) -partmap/part_dfly_module-dfly.$(OBJEXT): partmap/$(am__dirstamp) \ - partmap/$(DEPDIR)/$(am__dirstamp) - -part_dfly.module$(EXEEXT): $(part_dfly_module_OBJECTS) $(part_dfly_module_DEPENDENCIES) $(EXTRA_part_dfly_module_DEPENDENCIES) - @rm -f part_dfly.module$(EXEEXT) - $(AM_V_CCLD)$(part_dfly_module_LINK) $(part_dfly_module_OBJECTS) $(part_dfly_module_LDADD) $(LIBS) -partmap/part_dvh_module-dvh.$(OBJEXT): partmap/$(am__dirstamp) \ - partmap/$(DEPDIR)/$(am__dirstamp) - -part_dvh.module$(EXEEXT): $(part_dvh_module_OBJECTS) $(part_dvh_module_DEPENDENCIES) $(EXTRA_part_dvh_module_DEPENDENCIES) - @rm -f part_dvh.module$(EXEEXT) - $(AM_V_CCLD)$(part_dvh_module_LINK) $(part_dvh_module_OBJECTS) $(part_dvh_module_LDADD) $(LIBS) -partmap/part_gpt_module-gpt.$(OBJEXT): partmap/$(am__dirstamp) \ - partmap/$(DEPDIR)/$(am__dirstamp) - -part_gpt.module$(EXEEXT): $(part_gpt_module_OBJECTS) $(part_gpt_module_DEPENDENCIES) $(EXTRA_part_gpt_module_DEPENDENCIES) - @rm -f part_gpt.module$(EXEEXT) - $(AM_V_CCLD)$(part_gpt_module_LINK) $(part_gpt_module_OBJECTS) $(part_gpt_module_LDADD) $(LIBS) -partmap/part_msdos_module-msdos.$(OBJEXT): partmap/$(am__dirstamp) \ - partmap/$(DEPDIR)/$(am__dirstamp) - -part_msdos.module$(EXEEXT): $(part_msdos_module_OBJECTS) $(part_msdos_module_DEPENDENCIES) $(EXTRA_part_msdos_module_DEPENDENCIES) - @rm -f part_msdos.module$(EXEEXT) - $(AM_V_CCLD)$(part_msdos_module_LINK) $(part_msdos_module_OBJECTS) $(part_msdos_module_LDADD) $(LIBS) -partmap/part_plan_module-plan.$(OBJEXT): partmap/$(am__dirstamp) \ - partmap/$(DEPDIR)/$(am__dirstamp) - -part_plan.module$(EXEEXT): $(part_plan_module_OBJECTS) $(part_plan_module_DEPENDENCIES) $(EXTRA_part_plan_module_DEPENDENCIES) - @rm -f part_plan.module$(EXEEXT) - $(AM_V_CCLD)$(part_plan_module_LINK) $(part_plan_module_OBJECTS) $(part_plan_module_LDADD) $(LIBS) -partmap/part_sun_module-sun.$(OBJEXT): partmap/$(am__dirstamp) \ - partmap/$(DEPDIR)/$(am__dirstamp) - -part_sun.module$(EXEEXT): $(part_sun_module_OBJECTS) $(part_sun_module_DEPENDENCIES) $(EXTRA_part_sun_module_DEPENDENCIES) - @rm -f part_sun.module$(EXEEXT) - $(AM_V_CCLD)$(part_sun_module_LINK) $(part_sun_module_OBJECTS) $(part_sun_module_LDADD) $(LIBS) -partmap/part_sunpc_module-sunpc.$(OBJEXT): partmap/$(am__dirstamp) \ - partmap/$(DEPDIR)/$(am__dirstamp) - -part_sunpc.module$(EXEEXT): $(part_sunpc_module_OBJECTS) $(part_sunpc_module_DEPENDENCIES) $(EXTRA_part_sunpc_module_DEPENDENCIES) - @rm -f part_sunpc.module$(EXEEXT) - $(AM_V_CCLD)$(part_sunpc_module_LINK) $(part_sunpc_module_OBJECTS) $(part_sunpc_module_LDADD) $(LIBS) -commands/parttool_module-parttool.$(OBJEXT): commands/$(am__dirstamp) \ - commands/$(DEPDIR)/$(am__dirstamp) - -parttool.module$(EXEEXT): $(parttool_module_OBJECTS) $(parttool_module_DEPENDENCIES) $(EXTRA_parttool_module_DEPENDENCIES) - @rm -f parttool.module$(EXEEXT) - $(AM_V_CCLD)$(parttool_module_LINK) $(parttool_module_OBJECTS) $(parttool_module_LDADD) $(LIBS) -commands/password_module-password.$(OBJEXT): commands/$(am__dirstamp) \ - commands/$(DEPDIR)/$(am__dirstamp) - -password.module$(EXEEXT): $(password_module_OBJECTS) $(password_module_DEPENDENCIES) $(EXTRA_password_module_DEPENDENCIES) - @rm -f password.module$(EXEEXT) - $(AM_V_CCLD)$(password_module_LINK) $(password_module_OBJECTS) $(password_module_LDADD) $(LIBS) -commands/password_pbkdf2_module-password_pbkdf2.$(OBJEXT): \ - commands/$(am__dirstamp) commands/$(DEPDIR)/$(am__dirstamp) - -password_pbkdf2.module$(EXEEXT): $(password_pbkdf2_module_OBJECTS) $(password_pbkdf2_module_DEPENDENCIES) $(EXTRA_password_pbkdf2_module_DEPENDENCIES) - @rm -f password_pbkdf2.module$(EXEEXT) - $(AM_V_CCLD)$(password_pbkdf2_module_LINK) $(password_pbkdf2_module_OBJECTS) $(password_pbkdf2_module_LDADD) $(LIBS) -disk/pata_module-pata.$(OBJEXT): disk/$(am__dirstamp) \ - disk/$(DEPDIR)/$(am__dirstamp) - -pata.module$(EXEEXT): $(pata_module_OBJECTS) $(pata_module_DEPENDENCIES) $(EXTRA_pata_module_DEPENDENCIES) - @rm -f pata.module$(EXEEXT) - $(AM_V_CCLD)$(pata_module_LINK) $(pata_module_OBJECTS) $(pata_module_LDADD) $(LIBS) -lib/pbkdf2_module-pbkdf2.$(OBJEXT): lib/$(am__dirstamp) \ - lib/$(DEPDIR)/$(am__dirstamp) - -pbkdf2.module$(EXEEXT): $(pbkdf2_module_OBJECTS) $(pbkdf2_module_DEPENDENCIES) $(EXTRA_pbkdf2_module_DEPENDENCIES) - @rm -f pbkdf2.module$(EXEEXT) - $(AM_V_CCLD)$(pbkdf2_module_LINK) $(pbkdf2_module_OBJECTS) $(pbkdf2_module_LDADD) $(LIBS) -tests/pbkdf2_test_module-pbkdf2_test.$(OBJEXT): tests/$(am__dirstamp) \ - tests/$(DEPDIR)/$(am__dirstamp) - -pbkdf2_test.module$(EXEEXT): $(pbkdf2_test_module_OBJECTS) $(pbkdf2_test_module_DEPENDENCIES) $(EXTRA_pbkdf2_test_module_DEPENDENCIES) - @rm -f pbkdf2_test.module$(EXEEXT) - $(AM_V_CCLD)$(pbkdf2_test_module_LINK) $(pbkdf2_test_module_OBJECTS) $(pbkdf2_test_module_LDADD) $(LIBS) -bus/pci_module-pci.$(OBJEXT): bus/$(am__dirstamp) \ - bus/$(DEPDIR)/$(am__dirstamp) -bus/i386/ieee1275/$(am__dirstamp): - @$(MKDIR_P) bus/i386/ieee1275 - @: > bus/i386/ieee1275/$(am__dirstamp) -bus/i386/ieee1275/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) bus/i386/ieee1275/$(DEPDIR) - @: > bus/i386/ieee1275/$(DEPDIR)/$(am__dirstamp) -bus/i386/ieee1275/pci_module-pci.$(OBJEXT): \ - bus/i386/ieee1275/$(am__dirstamp) \ - bus/i386/ieee1275/$(DEPDIR)/$(am__dirstamp) - -pci.module$(EXEEXT): $(pci_module_OBJECTS) $(pci_module_DEPENDENCIES) $(EXTRA_pci_module_DEPENDENCIES) - @rm -f pci.module$(EXEEXT) - $(AM_V_CCLD)$(pci_module_LINK) $(pci_module_OBJECTS) $(pci_module_LDADD) $(LIBS) -commands/pcidump_module-pcidump.$(OBJEXT): commands/$(am__dirstamp) \ - commands/$(DEPDIR)/$(am__dirstamp) - -pcidump.module$(EXEEXT): $(pcidump_module_OBJECTS) $(pcidump_module_DEPENDENCIES) $(EXTRA_pcidump_module_DEPENDENCIES) - @rm -f pcidump.module$(EXEEXT) - $(AM_V_CCLD)$(pcidump_module_LINK) $(pcidump_module_OBJECTS) $(pcidump_module_LDADD) $(LIBS) -commands/pgp_module-pgp.$(OBJEXT): commands/$(am__dirstamp) \ - commands/$(DEPDIR)/$(am__dirstamp) - -pgp.module$(EXEEXT): $(pgp_module_OBJECTS) $(pgp_module_DEPENDENCIES) $(EXTRA_pgp_module_DEPENDENCIES) - @rm -f pgp.module$(EXEEXT) - $(AM_V_CCLD)$(pgp_module_LINK) $(pgp_module_OBJECTS) $(pgp_module_LDADD) $(LIBS) -loader/i386/pc/plan9_module-plan9.$(OBJEXT): \ - loader/i386/pc/$(am__dirstamp) \ - loader/i386/pc/$(DEPDIR)/$(am__dirstamp) - -plan9.module$(EXEEXT): $(plan9_module_OBJECTS) $(plan9_module_DEPENDENCIES) $(EXTRA_plan9_module_DEPENDENCIES) - @rm -f plan9.module$(EXEEXT) - $(AM_V_CCLD)$(plan9_module_LINK) $(plan9_module_OBJECTS) $(plan9_module_LDADD) $(LIBS) -commands/i386/pc/play_module-play.$(OBJEXT): \ - commands/i386/pc/$(am__dirstamp) \ - commands/i386/pc/$(DEPDIR)/$(am__dirstamp) - -play.module$(EXEEXT): $(play_module_OBJECTS) $(play_module_DEPENDENCIES) $(EXTRA_play_module_DEPENDENCIES) - @rm -f play.module$(EXEEXT) - $(AM_V_CCLD)$(play_module_LINK) $(play_module_OBJECTS) $(play_module_LDADD) $(LIBS) -video/readers/png_module-png.$(OBJEXT): video/readers/$(am__dirstamp) \ - video/readers/$(DEPDIR)/$(am__dirstamp) - -png.module$(EXEEXT): $(png_module_OBJECTS) $(png_module_DEPENDENCIES) $(EXTRA_png_module_DEPENDENCIES) - @rm -f png.module$(EXEEXT) - $(AM_V_CCLD)$(png_module_LINK) $(png_module_OBJECTS) $(png_module_LDADD) $(LIBS) -lib/priority_queue_module-priority_queue.$(OBJEXT): \ - lib/$(am__dirstamp) lib/$(DEPDIR)/$(am__dirstamp) - -priority_queue.module$(EXEEXT): $(priority_queue_module_OBJECTS) $(priority_queue_module_DEPENDENCIES) $(EXTRA_priority_queue_module_DEPENDENCIES) - @rm -f priority_queue.module$(EXEEXT) - $(AM_V_CCLD)$(priority_queue_module_LINK) $(priority_queue_module_OBJECTS) $(priority_queue_module_LDADD) $(LIBS) -commands/probe_module-probe.$(OBJEXT): commands/$(am__dirstamp) \ - commands/$(DEPDIR)/$(am__dirstamp) - -probe.module$(EXEEXT): $(probe_module_OBJECTS) $(probe_module_DEPENDENCIES) $(EXTRA_probe_module_DEPENDENCIES) - @rm -f probe.module$(EXEEXT) - $(AM_V_CCLD)$(probe_module_LINK) $(probe_module_OBJECTS) $(probe_module_LDADD) $(LIBS) -fs/procfs_module-proc.$(OBJEXT): fs/$(am__dirstamp) \ - fs/$(DEPDIR)/$(am__dirstamp) - -procfs.module$(EXEEXT): $(procfs_module_OBJECTS) $(procfs_module_DEPENDENCIES) $(EXTRA_procfs_module_DEPENDENCIES) - @rm -f procfs.module$(EXEEXT) - $(AM_V_CCLD)$(procfs_module_LINK) $(procfs_module_OBJECTS) $(procfs_module_LDADD) $(LIBS) -lib/progress_module-progress.$(OBJEXT): lib/$(am__dirstamp) \ - lib/$(DEPDIR)/$(am__dirstamp) - -progress.module$(EXEEXT): $(progress_module_OBJECTS) $(progress_module_DEPENDENCIES) $(EXTRA_progress_module_DEPENDENCIES) - @rm -f progress.module$(EXEEXT) - $(AM_V_CCLD)$(progress_module_LINK) $(progress_module_OBJECTS) $(progress_module_LDADD) $(LIBS) -net/drivers/i386/pc/$(am__dirstamp): - @$(MKDIR_P) net/drivers/i386/pc - @: > net/drivers/i386/pc/$(am__dirstamp) -net/drivers/i386/pc/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) net/drivers/i386/pc/$(DEPDIR) - @: > net/drivers/i386/pc/$(DEPDIR)/$(am__dirstamp) -net/drivers/i386/pc/pxe_module-pxe.$(OBJEXT): \ - net/drivers/i386/pc/$(am__dirstamp) \ - net/drivers/i386/pc/$(DEPDIR)/$(am__dirstamp) - -pxe.module$(EXEEXT): $(pxe_module_OBJECTS) $(pxe_module_DEPENDENCIES) $(EXTRA_pxe_module_DEPENDENCIES) - @rm -f pxe.module$(EXEEXT) - $(AM_V_CCLD)$(pxe_module_LINK) $(pxe_module_OBJECTS) $(pxe_module_LDADD) $(LIBS) -boot/i386/pc/pxeboot_image-pxeboot.$(OBJEXT): \ - boot/i386/pc/$(am__dirstamp) \ - boot/i386/pc/$(DEPDIR)/$(am__dirstamp) - -pxeboot.image$(EXEEXT): $(pxeboot_image_OBJECTS) $(pxeboot_image_DEPENDENCIES) $(EXTRA_pxeboot_image_DEPENDENCIES) - @rm -f pxeboot.image$(EXEEXT) - $(AM_V_CCLD)$(pxeboot_image_LINK) $(pxeboot_image_OBJECTS) $(pxeboot_image_LDADD) $(LIBS) -loader/i386/pc/pxechain_module-pxechainloader.$(OBJEXT): \ - loader/i386/pc/$(am__dirstamp) \ - loader/i386/pc/$(DEPDIR)/$(am__dirstamp) - -pxechain.module$(EXEEXT): $(pxechain_module_OBJECTS) $(pxechain_module_DEPENDENCIES) $(EXTRA_pxechain_module_DEPENDENCIES) - @rm -f pxechain.module$(EXEEXT) - $(AM_V_CCLD)$(pxechain_module_LINK) $(pxechain_module_OBJECTS) $(pxechain_module_LDADD) $(LIBS) -disk/raid5rec_module-raid5_recover.$(OBJEXT): disk/$(am__dirstamp) \ - disk/$(DEPDIR)/$(am__dirstamp) - -raid5rec.module$(EXEEXT): $(raid5rec_module_OBJECTS) $(raid5rec_module_DEPENDENCIES) $(EXTRA_raid5rec_module_DEPENDENCIES) - @rm -f raid5rec.module$(EXEEXT) - $(AM_V_CCLD)$(raid5rec_module_LINK) $(raid5rec_module_OBJECTS) $(raid5rec_module_LDADD) $(LIBS) -disk/raid6rec_module-raid6_recover.$(OBJEXT): disk/$(am__dirstamp) \ - disk/$(DEPDIR)/$(am__dirstamp) - -raid6rec.module$(EXEEXT): $(raid6rec_module_OBJECTS) $(raid6rec_module_DEPENDENCIES) $(EXTRA_raid6rec_module_DEPENDENCIES) - @rm -f raid6rec.module$(EXEEXT) - $(AM_V_CCLD)$(raid6rec_module_LINK) $(raid6rec_module_OBJECTS) $(raid6rec_module_LDADD) $(LIBS) -kern/i386/random_module-tsc_pmtimer.$(OBJEXT): \ - kern/i386/$(am__dirstamp) kern/i386/$(DEPDIR)/$(am__dirstamp) -lib/i386/random_module-random.$(OBJEXT): lib/i386/$(am__dirstamp) \ - lib/i386/$(DEPDIR)/$(am__dirstamp) -lib/random_module-random.$(OBJEXT): lib/$(am__dirstamp) \ - lib/$(DEPDIR)/$(am__dirstamp) - -random.module$(EXEEXT): $(random_module_OBJECTS) $(random_module_DEPENDENCIES) $(EXTRA_random_module_DEPENDENCIES) - @rm -f random.module$(EXEEXT) - $(AM_V_CCLD)$(random_module_LINK) $(random_module_OBJECTS) $(random_module_LDADD) $(LIBS) -commands/i386/rdmsr_module-rdmsr.$(OBJEXT): \ - commands/i386/$(am__dirstamp) \ - commands/i386/$(DEPDIR)/$(am__dirstamp) - -rdmsr.module$(EXEEXT): $(rdmsr_module_OBJECTS) $(rdmsr_module_DEPENDENCIES) $(EXTRA_rdmsr_module_DEPENDENCIES) - @rm -f rdmsr.module$(EXEEXT) - $(AM_V_CCLD)$(rdmsr_module_LINK) $(rdmsr_module_OBJECTS) $(rdmsr_module_LDADD) $(LIBS) -commands/read_module-read.$(OBJEXT): commands/$(am__dirstamp) \ - commands/$(DEPDIR)/$(am__dirstamp) - -read.module$(EXEEXT): $(read_module_OBJECTS) $(read_module_DEPENDENCIES) $(EXTRA_read_module_DEPENDENCIES) - @rm -f read.module$(EXEEXT) - $(AM_V_CCLD)$(read_module_LINK) $(read_module_OBJECTS) $(read_module_LDADD) $(LIBS) -commands/reboot_module-reboot.$(OBJEXT): commands/$(am__dirstamp) \ - commands/$(DEPDIR)/$(am__dirstamp) -lib/dummy/reboot_module-reboot.$(OBJEXT): lib/dummy/$(am__dirstamp) \ - lib/dummy/$(DEPDIR)/$(am__dirstamp) -lib/uboot/$(am__dirstamp): - @$(MKDIR_P) lib/uboot - @: > lib/uboot/$(am__dirstamp) -lib/uboot/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) lib/uboot/$(DEPDIR) - @: > lib/uboot/$(DEPDIR)/$(am__dirstamp) -lib/uboot/reboot_module-reboot.$(OBJEXT): lib/uboot/$(am__dirstamp) \ - lib/uboot/$(DEPDIR)/$(am__dirstamp) -lib/i386/reboot_module-reboot.$(OBJEXT): lib/i386/$(am__dirstamp) \ - lib/i386/$(DEPDIR)/$(am__dirstamp) -lib/i386/reboot_module-reboot_trampoline.$(OBJEXT): \ - lib/i386/$(am__dirstamp) lib/i386/$(DEPDIR)/$(am__dirstamp) -lib/xen/reboot_module-reboot.$(OBJEXT): lib/xen/$(am__dirstamp) \ - lib/xen/$(DEPDIR)/$(am__dirstamp) -lib/mips/arc/$(am__dirstamp): - @$(MKDIR_P) lib/mips/arc - @: > lib/mips/arc/$(am__dirstamp) -lib/mips/arc/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) lib/mips/arc/$(DEPDIR) - @: > lib/mips/arc/$(DEPDIR)/$(am__dirstamp) -lib/mips/arc/reboot_module-reboot.$(OBJEXT): \ - lib/mips/arc/$(am__dirstamp) \ - lib/mips/arc/$(DEPDIR)/$(am__dirstamp) -lib/mips/loongson/$(am__dirstamp): - @$(MKDIR_P) lib/mips/loongson - @: > lib/mips/loongson/$(am__dirstamp) -lib/mips/loongson/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) lib/mips/loongson/$(DEPDIR) - @: > lib/mips/loongson/$(DEPDIR)/$(am__dirstamp) -lib/mips/loongson/reboot_module-reboot.$(OBJEXT): \ - lib/mips/loongson/$(am__dirstamp) \ - lib/mips/loongson/$(DEPDIR)/$(am__dirstamp) -lib/mips/qemu_mips/$(am__dirstamp): - @$(MKDIR_P) lib/mips/qemu_mips - @: > lib/mips/qemu_mips/$(am__dirstamp) -lib/mips/qemu_mips/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) lib/mips/qemu_mips/$(DEPDIR) - @: > lib/mips/qemu_mips/$(DEPDIR)/$(am__dirstamp) -lib/mips/qemu_mips/reboot_module-reboot.$(OBJEXT): \ - lib/mips/qemu_mips/$(am__dirstamp) \ - lib/mips/qemu_mips/$(DEPDIR)/$(am__dirstamp) -lib/ieee1275/reboot_module-reboot.$(OBJEXT): \ - lib/ieee1275/$(am__dirstamp) \ - lib/ieee1275/$(DEPDIR)/$(am__dirstamp) - -reboot.module$(EXEEXT): $(reboot_module_OBJECTS) $(reboot_module_DEPENDENCIES) $(EXTRA_reboot_module_DEPENDENCIES) - @rm -f reboot.module$(EXEEXT) - $(AM_V_CCLD)$(reboot_module_LINK) $(reboot_module_OBJECTS) $(reboot_module_LDADD) $(LIBS) -commands/regexp_module-regexp.$(OBJEXT): commands/$(am__dirstamp) \ - commands/$(DEPDIR)/$(am__dirstamp) -commands/regexp_module-wildcard.$(OBJEXT): commands/$(am__dirstamp) \ - commands/$(DEPDIR)/$(am__dirstamp) -lib/gnulib/$(am__dirstamp): - @$(MKDIR_P) lib/gnulib - @: > lib/gnulib/$(am__dirstamp) -lib/gnulib/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) lib/gnulib/$(DEPDIR) - @: > lib/gnulib/$(DEPDIR)/$(am__dirstamp) -lib/gnulib/regexp_module-regex.$(OBJEXT): lib/gnulib/$(am__dirstamp) \ - lib/gnulib/$(DEPDIR)/$(am__dirstamp) - -regexp.module$(EXEEXT): $(regexp_module_OBJECTS) $(regexp_module_DEPENDENCIES) $(EXTRA_regexp_module_DEPENDENCIES) - @rm -f regexp.module$(EXEEXT) - $(AM_V_CCLD)$(regexp_module_LINK) $(regexp_module_OBJECTS) $(regexp_module_LDADD) $(LIBS) -fs/reiserfs_module-reiserfs.$(OBJEXT): fs/$(am__dirstamp) \ - fs/$(DEPDIR)/$(am__dirstamp) - -reiserfs.module$(EXEEXT): $(reiserfs_module_OBJECTS) $(reiserfs_module_DEPENDENCIES) $(EXTRA_reiserfs_module_DEPENDENCIES) - @rm -f reiserfs.module$(EXEEXT) - $(AM_V_CCLD)$(reiserfs_module_LINK) $(reiserfs_module_OBJECTS) $(reiserfs_module_LDADD) $(LIBS) -lib/i386/relocator_module-relocator_asm.$(OBJEXT): \ - lib/i386/$(am__dirstamp) lib/i386/$(DEPDIR)/$(am__dirstamp) -lib/i386/relocator_module-relocator16.$(OBJEXT): \ - lib/i386/$(am__dirstamp) lib/i386/$(DEPDIR)/$(am__dirstamp) -lib/i386/relocator_module-relocator32.$(OBJEXT): \ - lib/i386/$(am__dirstamp) lib/i386/$(DEPDIR)/$(am__dirstamp) -lib/i386/relocator_module-relocator64.$(OBJEXT): \ - lib/i386/$(am__dirstamp) lib/i386/$(DEPDIR)/$(am__dirstamp) -lib/i386/relocator_module-relocator.$(OBJEXT): \ - lib/i386/$(am__dirstamp) lib/i386/$(DEPDIR)/$(am__dirstamp) -lib/i386/relocator_module-relocator_common_c.$(OBJEXT): \ - lib/i386/$(am__dirstamp) lib/i386/$(DEPDIR)/$(am__dirstamp) -lib/relocator_module-relocator.$(OBJEXT): lib/$(am__dirstamp) \ - lib/$(DEPDIR)/$(am__dirstamp) -lib/efi/relocator_module-relocator.$(OBJEXT): lib/efi/$(am__dirstamp) \ - lib/efi/$(DEPDIR)/$(am__dirstamp) -lib/ieee1275/relocator_module-relocator.$(OBJEXT): \ - lib/ieee1275/$(am__dirstamp) \ - lib/ieee1275/$(DEPDIR)/$(am__dirstamp) -lib/i386/xen/$(am__dirstamp): - @$(MKDIR_P) lib/i386/xen - @: > lib/i386/xen/$(am__dirstamp) -lib/i386/xen/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) lib/i386/xen/$(DEPDIR) - @: > lib/i386/xen/$(DEPDIR)/$(am__dirstamp) -lib/i386/xen/relocator_module-relocator.$(OBJEXT): \ - lib/i386/xen/$(am__dirstamp) \ - lib/i386/xen/$(DEPDIR)/$(am__dirstamp) -lib/xen/relocator_module-relocator.$(OBJEXT): lib/xen/$(am__dirstamp) \ - lib/xen/$(DEPDIR)/$(am__dirstamp) -lib/mips/$(am__dirstamp): - @$(MKDIR_P) lib/mips - @: > lib/mips/$(am__dirstamp) -lib/mips/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) lib/mips/$(DEPDIR) - @: > lib/mips/$(DEPDIR)/$(am__dirstamp) -lib/mips/relocator_module-relocator_asm.$(OBJEXT): \ - lib/mips/$(am__dirstamp) lib/mips/$(DEPDIR)/$(am__dirstamp) -lib/mips/relocator_module-relocator.$(OBJEXT): \ - lib/mips/$(am__dirstamp) lib/mips/$(DEPDIR)/$(am__dirstamp) -lib/powerpc/$(am__dirstamp): - @$(MKDIR_P) lib/powerpc - @: > lib/powerpc/$(am__dirstamp) -lib/powerpc/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) lib/powerpc/$(DEPDIR) - @: > lib/powerpc/$(DEPDIR)/$(am__dirstamp) -lib/powerpc/relocator_module-relocator_asm.$(OBJEXT): \ - lib/powerpc/$(am__dirstamp) \ - lib/powerpc/$(DEPDIR)/$(am__dirstamp) -lib/powerpc/relocator_module-relocator.$(OBJEXT): \ - lib/powerpc/$(am__dirstamp) \ - lib/powerpc/$(DEPDIR)/$(am__dirstamp) -lib/x86_64/efi/$(am__dirstamp): - @$(MKDIR_P) lib/x86_64/efi - @: > lib/x86_64/efi/$(am__dirstamp) -lib/x86_64/efi/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) lib/x86_64/efi/$(DEPDIR) - @: > lib/x86_64/efi/$(DEPDIR)/$(am__dirstamp) -lib/x86_64/efi/relocator_module-relocator.$(OBJEXT): \ - lib/x86_64/efi/$(am__dirstamp) \ - lib/x86_64/efi/$(DEPDIR)/$(am__dirstamp) -lib/x86_64/$(am__dirstamp): - @$(MKDIR_P) lib/x86_64 - @: > lib/x86_64/$(am__dirstamp) -lib/x86_64/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) lib/x86_64/$(DEPDIR) - @: > lib/x86_64/$(DEPDIR)/$(am__dirstamp) -lib/x86_64/relocator_module-relocator_asm.$(OBJEXT): \ - lib/x86_64/$(am__dirstamp) \ - lib/x86_64/$(DEPDIR)/$(am__dirstamp) -lib/x86_64/xen/$(am__dirstamp): - @$(MKDIR_P) lib/x86_64/xen - @: > lib/x86_64/xen/$(am__dirstamp) -lib/x86_64/xen/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) lib/x86_64/xen/$(DEPDIR) - @: > lib/x86_64/xen/$(DEPDIR)/$(am__dirstamp) -lib/x86_64/xen/relocator_module-relocator.$(OBJEXT): \ - lib/x86_64/xen/$(am__dirstamp) \ - lib/x86_64/xen/$(DEPDIR)/$(am__dirstamp) - -relocator.module$(EXEEXT): $(relocator_module_OBJECTS) $(relocator_module_DEPENDENCIES) $(EXTRA_relocator_module_DEPENDENCIES) - @rm -f relocator.module$(EXEEXT) - $(AM_V_CCLD)$(relocator_module_LINK) $(relocator_module_OBJECTS) $(relocator_module_LDADD) $(LIBS) -fs/romfs_module-romfs.$(OBJEXT): fs/$(am__dirstamp) \ - fs/$(DEPDIR)/$(am__dirstamp) - -romfs.module$(EXEEXT): $(romfs_module_OBJECTS) $(romfs_module_DEPENDENCIES) $(EXTRA_romfs_module_DEPENDENCIES) - @rm -f romfs.module$(EXEEXT) - $(AM_V_CCLD)$(romfs_module_LINK) $(romfs_module_OBJECTS) $(romfs_module_LDADD) $(LIBS) -disk/scsi_module-scsi.$(OBJEXT): disk/$(am__dirstamp) \ - disk/$(DEPDIR)/$(am__dirstamp) - -scsi.module$(EXEEXT): $(scsi_module_OBJECTS) $(scsi_module_DEPENDENCIES) $(EXTRA_scsi_module_DEPENDENCIES) - @rm -f scsi.module$(EXEEXT) - $(AM_V_CCLD)$(scsi_module_LINK) $(scsi_module_OBJECTS) $(scsi_module_LDADD) $(LIBS) -video/emu/$(am__dirstamp): - @$(MKDIR_P) video/emu - @: > video/emu/$(am__dirstamp) -video/emu/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) video/emu/$(DEPDIR) - @: > video/emu/$(DEPDIR)/$(am__dirstamp) -video/emu/sdl_module-sdl.$(OBJEXT): video/emu/$(am__dirstamp) \ - video/emu/$(DEPDIR)/$(am__dirstamp) - -sdl.module$(EXEEXT): $(sdl_module_OBJECTS) $(sdl_module_DEPENDENCIES) $(EXTRA_sdl_module_DEPENDENCIES) - @rm -f sdl.module$(EXEEXT) - $(AM_V_CCLD)$(sdl_module_LINK) $(sdl_module_OBJECTS) $(sdl_module_LDADD) $(LIBS) -commands/search_module-search_wrap.$(OBJEXT): \ - commands/$(am__dirstamp) commands/$(DEPDIR)/$(am__dirstamp) - -search.module$(EXEEXT): $(search_module_OBJECTS) $(search_module_DEPENDENCIES) $(EXTRA_search_module_DEPENDENCIES) - @rm -f search.module$(EXEEXT) - $(AM_V_CCLD)$(search_module_LINK) $(search_module_OBJECTS) $(search_module_LDADD) $(LIBS) -commands/search_fs_file_module-search_file.$(OBJEXT): \ - commands/$(am__dirstamp) commands/$(DEPDIR)/$(am__dirstamp) - -search_fs_file.module$(EXEEXT): $(search_fs_file_module_OBJECTS) $(search_fs_file_module_DEPENDENCIES) $(EXTRA_search_fs_file_module_DEPENDENCIES) - @rm -f search_fs_file.module$(EXEEXT) - $(AM_V_CCLD)$(search_fs_file_module_LINK) $(search_fs_file_module_OBJECTS) $(search_fs_file_module_LDADD) $(LIBS) -commands/search_fs_uuid_module-search_uuid.$(OBJEXT): \ - commands/$(am__dirstamp) commands/$(DEPDIR)/$(am__dirstamp) - -search_fs_uuid.module$(EXEEXT): $(search_fs_uuid_module_OBJECTS) $(search_fs_uuid_module_DEPENDENCIES) $(EXTRA_search_fs_uuid_module_DEPENDENCIES) - @rm -f search_fs_uuid.module$(EXEEXT) - $(AM_V_CCLD)$(search_fs_uuid_module_LINK) $(search_fs_uuid_module_OBJECTS) $(search_fs_uuid_module_LDADD) $(LIBS) -commands/search_label_module-search_label.$(OBJEXT): \ - commands/$(am__dirstamp) commands/$(DEPDIR)/$(am__dirstamp) - -search_label.module$(EXEEXT): $(search_label_module_OBJECTS) $(search_label_module_DEPENDENCIES) $(EXTRA_search_label_module_DEPENDENCIES) - @rm -f search_label.module$(EXEEXT) - $(AM_V_CCLD)$(search_label_module_LINK) $(search_label_module_OBJECTS) $(search_label_module_LDADD) $(LIBS) -commands/i386/pc/sendkey_module-sendkey.$(OBJEXT): \ - commands/i386/pc/$(am__dirstamp) \ - commands/i386/pc/$(DEPDIR)/$(am__dirstamp) - -sendkey.module$(EXEEXT): $(sendkey_module_OBJECTS) $(sendkey_module_DEPENDENCIES) $(EXTRA_sendkey_module_DEPENDENCIES) - @rm -f sendkey.module$(EXEEXT) - $(AM_V_CCLD)$(sendkey_module_LINK) $(sendkey_module_OBJECTS) $(sendkey_module_LDADD) $(LIBS) -term/efi/serial_module-serial.$(OBJEXT): term/efi/$(am__dirstamp) \ - term/efi/$(DEPDIR)/$(am__dirstamp) -term/serial_module-serial.$(OBJEXT): term/$(am__dirstamp) \ - term/$(DEPDIR)/$(am__dirstamp) -term/serial_module-ns8250.$(OBJEXT): term/$(am__dirstamp) \ - term/$(DEPDIR)/$(am__dirstamp) -term/ieee1275/serial_module-serial.$(OBJEXT): \ - term/ieee1275/$(am__dirstamp) \ - term/ieee1275/$(DEPDIR)/$(am__dirstamp) -term/arc/serial_module-serial.$(OBJEXT): term/arc/$(am__dirstamp) \ - term/arc/$(DEPDIR)/$(am__dirstamp) - -serial.module$(EXEEXT): $(serial_module_OBJECTS) $(serial_module_DEPENDENCIES) $(EXTRA_serial_module_DEPENDENCIES) - @rm -f serial.module$(EXEEXT) - $(AM_V_CCLD)$(serial_module_LINK) $(serial_module_OBJECTS) $(serial_module_LDADD) $(LIBS) -lib/setjmp_module-setjmp.$(OBJEXT): lib/$(am__dirstamp) \ - lib/$(DEPDIR)/$(am__dirstamp) - -setjmp.module$(EXEEXT): $(setjmp_module_OBJECTS) $(setjmp_module_DEPENDENCIES) $(EXTRA_setjmp_module_DEPENDENCIES) - @rm -f setjmp.module$(EXEEXT) - $(AM_V_CCLD)$(setjmp_module_LINK) $(setjmp_module_OBJECTS) $(setjmp_module_LDADD) $(LIBS) -tests/setjmp_test_module-setjmp_test.$(OBJEXT): tests/$(am__dirstamp) \ - tests/$(DEPDIR)/$(am__dirstamp) - -setjmp_test.module$(EXEEXT): $(setjmp_test_module_OBJECTS) $(setjmp_test_module_DEPENDENCIES) $(EXTRA_setjmp_test_module_DEPENDENCIES) - @rm -f setjmp_test.module$(EXEEXT) - $(AM_V_CCLD)$(setjmp_test_module_LINK) $(setjmp_test_module_OBJECTS) $(setjmp_test_module_LDADD) $(LIBS) -commands/setpci_module-setpci.$(OBJEXT): commands/$(am__dirstamp) \ - commands/$(DEPDIR)/$(am__dirstamp) - -setpci.module$(EXEEXT): $(setpci_module_OBJECTS) $(setpci_module_DEPENDENCIES) $(EXTRA_setpci_module_DEPENDENCIES) - @rm -f setpci.module$(EXEEXT) - $(AM_V_CCLD)$(setpci_module_LINK) $(setpci_module_OBJECTS) $(setpci_module_LDADD) $(LIBS) -fs/sfs_module-sfs.$(OBJEXT): fs/$(am__dirstamp) \ - fs/$(DEPDIR)/$(am__dirstamp) - -sfs.module$(EXEEXT): $(sfs_module_OBJECTS) $(sfs_module_DEPENDENCIES) $(EXTRA_sfs_module_DEPENDENCIES) - @rm -f sfs.module$(EXEEXT) - $(AM_V_CCLD)$(sfs_module_LINK) $(sfs_module_OBJECTS) $(sfs_module_LDADD) $(LIBS) -tests/shift_test_module-shift_test.$(OBJEXT): tests/$(am__dirstamp) \ - tests/$(DEPDIR)/$(am__dirstamp) - -shift_test.module$(EXEEXT): $(shift_test_module_OBJECTS) $(shift_test_module_DEPENDENCIES) $(EXTRA_shift_test_module_DEPENDENCIES) - @rm -f shift_test.module$(EXEEXT) - $(AM_V_CCLD)$(shift_test_module_LINK) $(shift_test_module_OBJECTS) $(shift_test_module_LDADD) $(LIBS) -commands/efi/shim_lock_module-shim_lock.$(OBJEXT): \ - commands/efi/$(am__dirstamp) \ - commands/efi/$(DEPDIR)/$(am__dirstamp) - -shim_lock.module$(EXEEXT): $(shim_lock_module_OBJECTS) $(shim_lock_module_DEPENDENCIES) $(EXTRA_shim_lock_module_DEPENDENCIES) - @rm -f shim_lock.module$(EXEEXT) - $(AM_V_CCLD)$(shim_lock_module_LINK) $(shim_lock_module_OBJECTS) $(shim_lock_module_LDADD) $(LIBS) -tests/signature_test_module-signature_test.$(OBJEXT): \ - tests/$(am__dirstamp) tests/$(DEPDIR)/$(am__dirstamp) - -signature_test.module$(EXEEXT): $(signature_test_module_OBJECTS) $(signature_test_module_DEPENDENCIES) $(EXTRA_signature_test_module_DEPENDENCIES) - @rm -f signature_test.module$(EXEEXT) - $(AM_V_CCLD)$(signature_test_module_LINK) $(signature_test_module_OBJECTS) $(signature_test_module_LDADD) $(LIBS) -commands/sleep_module-sleep.$(OBJEXT): commands/$(am__dirstamp) \ - commands/$(DEPDIR)/$(am__dirstamp) - -sleep.module$(EXEEXT): $(sleep_module_OBJECTS) $(sleep_module_DEPENDENCIES) $(EXTRA_sleep_module_DEPENDENCIES) - @rm -f sleep.module$(EXEEXT) - $(AM_V_CCLD)$(sleep_module_LINK) $(sleep_module_OBJECTS) $(sleep_module_LDADD) $(LIBS) -tests/sleep_test_module-sleep_test.$(OBJEXT): tests/$(am__dirstamp) \ - tests/$(DEPDIR)/$(am__dirstamp) - -sleep_test.module$(EXEEXT): $(sleep_test_module_OBJECTS) $(sleep_test_module_DEPENDENCIES) $(EXTRA_sleep_test_module_DEPENDENCIES) - @rm -f sleep_test.module$(EXEEXT) - $(AM_V_CCLD)$(sleep_test_module_LINK) $(sleep_test_module_OBJECTS) $(sleep_test_module_LDADD) $(LIBS) -term/spkmodem_module-spkmodem.$(OBJEXT): term/$(am__dirstamp) \ - term/$(DEPDIR)/$(am__dirstamp) - -spkmodem.module$(EXEEXT): $(spkmodem_module_OBJECTS) $(spkmodem_module_DEPENDENCIES) $(EXTRA_spkmodem_module_DEPENDENCIES) - @rm -f spkmodem.module$(EXEEXT) - $(AM_V_CCLD)$(spkmodem_module_LINK) $(spkmodem_module_OBJECTS) $(spkmodem_module_LDADD) $(LIBS) -fs/squash4_module-squash4.$(OBJEXT): fs/$(am__dirstamp) \ - fs/$(DEPDIR)/$(am__dirstamp) - -squash4.module$(EXEEXT): $(squash4_module_OBJECTS) $(squash4_module_DEPENDENCIES) $(EXTRA_squash4_module_DEPENDENCIES) - @rm -f squash4.module$(EXEEXT) - $(AM_V_CCLD)$(squash4_module_LINK) $(squash4_module_OBJECTS) $(squash4_module_LDADD) $(LIBS) -tests/strtoull_test_module-strtoull_test.$(OBJEXT): \ - tests/$(am__dirstamp) tests/$(DEPDIR)/$(am__dirstamp) - -strtoull_test.module$(EXEEXT): $(strtoull_test_module_OBJECTS) $(strtoull_test_module_DEPENDENCIES) $(EXTRA_strtoull_test_module_DEPENDENCIES) - @rm -f strtoull_test.module$(EXEEXT) - $(AM_V_CCLD)$(strtoull_test_module_LINK) $(strtoull_test_module_OBJECTS) $(strtoull_test_module_LDADD) $(LIBS) -commands/ieee1275/$(am__dirstamp): - @$(MKDIR_P) commands/ieee1275 - @: > commands/ieee1275/$(am__dirstamp) -commands/ieee1275/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) commands/ieee1275/$(DEPDIR) - @: > commands/ieee1275/$(DEPDIR)/$(am__dirstamp) -commands/ieee1275/suspend_module-suspend.$(OBJEXT): \ - commands/ieee1275/$(am__dirstamp) \ - commands/ieee1275/$(DEPDIR)/$(am__dirstamp) - -suspend.module$(EXEEXT): $(suspend_module_OBJECTS) $(suspend_module_DEPENDENCIES) $(EXTRA_suspend_module_DEPENDENCIES) - @rm -f suspend.module$(EXEEXT) - $(AM_V_CCLD)$(suspend_module_LINK) $(suspend_module_OBJECTS) $(suspend_module_LDADD) $(LIBS) -lib/syslinuxcfg_module-syslinux_parse.$(OBJEXT): lib/$(am__dirstamp) \ - lib/$(DEPDIR)/$(am__dirstamp) -commands/syslinuxcfg_module-syslinuxcfg.$(OBJEXT): \ - commands/$(am__dirstamp) commands/$(DEPDIR)/$(am__dirstamp) - -syslinuxcfg.module$(EXEEXT): $(syslinuxcfg_module_OBJECTS) $(syslinuxcfg_module_DEPENDENCIES) $(EXTRA_syslinuxcfg_module_DEPENDENCIES) - @rm -f syslinuxcfg.module$(EXEEXT) - $(AM_V_CCLD)$(syslinuxcfg_module_LINK) $(syslinuxcfg_module_OBJECTS) $(syslinuxcfg_module_LDADD) $(LIBS) -fs/tar_module-tar.$(OBJEXT): fs/$(am__dirstamp) \ - fs/$(DEPDIR)/$(am__dirstamp) - -tar.module$(EXEEXT): $(tar_module_OBJECTS) $(tar_module_DEPENDENCIES) $(EXTRA_tar_module_DEPENDENCIES) - @rm -f tar.module$(EXEEXT) - $(AM_V_CCLD)$(tar_module_LINK) $(tar_module_OBJECTS) $(tar_module_LDADD) $(LIBS) -commands/terminal_module-terminal.$(OBJEXT): commands/$(am__dirstamp) \ - commands/$(DEPDIR)/$(am__dirstamp) - -terminal.module$(EXEEXT): $(terminal_module_OBJECTS) $(terminal_module_DEPENDENCIES) $(EXTRA_terminal_module_DEPENDENCIES) - @rm -f terminal.module$(EXEEXT) - $(AM_V_CCLD)$(terminal_module_LINK) $(terminal_module_OBJECTS) $(terminal_module_LDADD) $(LIBS) -term/terminfo_module-terminfo.$(OBJEXT): term/$(am__dirstamp) \ - term/$(DEPDIR)/$(am__dirstamp) -term/terminfo_module-tparm.$(OBJEXT): term/$(am__dirstamp) \ - term/$(DEPDIR)/$(am__dirstamp) - -terminfo.module$(EXEEXT): $(terminfo_module_OBJECTS) $(terminfo_module_DEPENDENCIES) $(EXTRA_terminfo_module_DEPENDENCIES) - @rm -f terminfo.module$(EXEEXT) - $(AM_V_CCLD)$(terminfo_module_LINK) $(terminfo_module_OBJECTS) $(terminfo_module_LDADD) $(LIBS) -commands/test_module-test.$(OBJEXT): commands/$(am__dirstamp) \ - commands/$(DEPDIR)/$(am__dirstamp) - -test.module$(EXEEXT): $(test_module_OBJECTS) $(test_module_DEPENDENCIES) $(EXTRA_test_module_DEPENDENCIES) - @rm -f test.module$(EXEEXT) - $(AM_V_CCLD)$(test_module_LINK) $(test_module_OBJECTS) $(test_module_LDADD) $(LIBS) -tests/test_blockarg_module-test_blockarg.$(OBJEXT): \ - tests/$(am__dirstamp) tests/$(DEPDIR)/$(am__dirstamp) - -test_blockarg.module$(EXEEXT): $(test_blockarg_module_OBJECTS) $(test_blockarg_module_DEPENDENCIES) $(EXTRA_test_blockarg_module_DEPENDENCIES) - @rm -f test_blockarg.module$(EXEEXT) - $(AM_V_CCLD)$(test_blockarg_module_LINK) $(test_blockarg_module_OBJECTS) $(test_blockarg_module_LDADD) $(LIBS) -commands/testload_module-testload.$(OBJEXT): commands/$(am__dirstamp) \ - commands/$(DEPDIR)/$(am__dirstamp) - -testload.module$(EXEEXT): $(testload_module_OBJECTS) $(testload_module_DEPENDENCIES) $(EXTRA_testload_module_DEPENDENCIES) - @rm -f testload.module$(EXEEXT) - $(AM_V_CCLD)$(testload_module_LINK) $(testload_module_OBJECTS) $(testload_module_LDADD) $(LIBS) -commands/testspeed_module-testspeed.$(OBJEXT): \ - commands/$(am__dirstamp) commands/$(DEPDIR)/$(am__dirstamp) - -testspeed.module$(EXEEXT): $(testspeed_module_OBJECTS) $(testspeed_module_DEPENDENCIES) $(EXTRA_testspeed_module_DEPENDENCIES) - @rm -f testspeed.module$(EXEEXT) - $(AM_V_CCLD)$(testspeed_module_LINK) $(testspeed_module_OBJECTS) $(testspeed_module_LDADD) $(LIBS) -net/tftp_module-tftp.$(OBJEXT): net/$(am__dirstamp) \ - net/$(DEPDIR)/$(am__dirstamp) - -tftp.module$(EXEEXT): $(tftp_module_OBJECTS) $(tftp_module_DEPENDENCIES) $(EXTRA_tftp_module_DEPENDENCIES) - @rm -f tftp.module$(EXEEXT) - $(AM_V_CCLD)$(tftp_module_LINK) $(tftp_module_OBJECTS) $(tftp_module_LDADD) $(LIBS) -video/readers/tga_module-tga.$(OBJEXT): video/readers/$(am__dirstamp) \ - video/readers/$(DEPDIR)/$(am__dirstamp) - -tga.module$(EXEEXT): $(tga_module_OBJECTS) $(tga_module_DEPENDENCIES) $(EXTRA_tga_module_DEPENDENCIES) - @rm -f tga.module$(EXEEXT) - $(AM_V_CCLD)$(tga_module_LINK) $(tga_module_OBJECTS) $(tga_module_LDADD) $(LIBS) -commands/time_module-time.$(OBJEXT): commands/$(am__dirstamp) \ - commands/$(DEPDIR)/$(am__dirstamp) - -time.module$(EXEEXT): $(time_module_OBJECTS) $(time_module_DEPENDENCIES) $(EXTRA_time_module_DEPENDENCIES) - @rm -f time.module$(EXEEXT) - $(AM_V_CCLD)$(time_module_LINK) $(time_module_OBJECTS) $(time_module_LDADD) $(LIBS) -commands/efi/tpm_module-tpm.$(OBJEXT): commands/efi/$(am__dirstamp) \ - commands/efi/$(DEPDIR)/$(am__dirstamp) -commands/tpm_module-tpm.$(OBJEXT): commands/$(am__dirstamp) \ - commands/$(DEPDIR)/$(am__dirstamp) - -tpm.module$(EXEEXT): $(tpm_module_OBJECTS) $(tpm_module_DEPENDENCIES) $(EXTRA_tpm_module_DEPENDENCIES) - @rm -f tpm.module$(EXEEXT) - $(AM_V_CCLD)$(tpm_module_LINK) $(tpm_module_OBJECTS) $(tpm_module_LDADD) $(LIBS) -commands/tr_module-tr.$(OBJEXT): commands/$(am__dirstamp) \ - commands/$(DEPDIR)/$(am__dirstamp) - -tr.module$(EXEEXT): $(tr_module_OBJECTS) $(tr_module_DEPENDENCIES) $(EXTRA_tr_module_DEPENDENCIES) - @rm -f tr.module$(EXEEXT) - $(AM_V_CCLD)$(tr_module_LINK) $(tr_module_OBJECTS) $(tr_module_LDADD) $(LIBS) - -trig.module$(EXEEXT): $(trig_module_OBJECTS) $(trig_module_DEPENDENCIES) $(EXTRA_trig_module_DEPENDENCIES) - @rm -f trig.module$(EXEEXT) - $(AM_V_CCLD)$(trig_module_LINK) $(trig_module_OBJECTS) $(trig_module_LDADD) $(LIBS) -commands/true_module-true.$(OBJEXT): commands/$(am__dirstamp) \ - commands/$(DEPDIR)/$(am__dirstamp) - -true.module$(EXEEXT): $(true_module_OBJECTS) $(true_module_DEPENDENCIES) $(EXTRA_true_module_DEPENDENCIES) - @rm -f true.module$(EXEEXT) - $(AM_V_CCLD)$(true_module_LINK) $(true_module_OBJECTS) $(true_module_LDADD) $(LIBS) -loader/i386/pc/truecrypt_module-truecrypt.$(OBJEXT): \ - loader/i386/pc/$(am__dirstamp) \ - loader/i386/pc/$(DEPDIR)/$(am__dirstamp) - -truecrypt.module$(EXEEXT): $(truecrypt_module_OBJECTS) $(truecrypt_module_DEPENDENCIES) $(EXTRA_truecrypt_module_DEPENDENCIES) - @rm -f truecrypt.module$(EXEEXT) - $(AM_V_CCLD)$(truecrypt_module_LINK) $(truecrypt_module_OBJECTS) $(truecrypt_module_LDADD) $(LIBS) -net/drivers/uboot/$(am__dirstamp): - @$(MKDIR_P) net/drivers/uboot - @: > net/drivers/uboot/$(am__dirstamp) -net/drivers/uboot/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) net/drivers/uboot/$(DEPDIR) - @: > net/drivers/uboot/$(DEPDIR)/$(am__dirstamp) -net/drivers/uboot/ubootnet_module-ubootnet.$(OBJEXT): \ - net/drivers/uboot/$(am__dirstamp) \ - net/drivers/uboot/$(DEPDIR)/$(am__dirstamp) - -ubootnet.module$(EXEEXT): $(ubootnet_module_OBJECTS) $(ubootnet_module_DEPENDENCIES) $(EXTRA_ubootnet_module_DEPENDENCIES) - @rm -f ubootnet.module$(EXEEXT) - $(AM_V_CCLD)$(ubootnet_module_LINK) $(ubootnet_module_OBJECTS) $(ubootnet_module_LDADD) $(LIBS) -fs/udf_module-udf.$(OBJEXT): fs/$(am__dirstamp) \ - fs/$(DEPDIR)/$(am__dirstamp) - -udf.module$(EXEEXT): $(udf_module_OBJECTS) $(udf_module_DEPENDENCIES) $(EXTRA_udf_module_DEPENDENCIES) - @rm -f udf.module$(EXEEXT) - $(AM_V_CCLD)$(udf_module_LINK) $(udf_module_OBJECTS) $(udf_module_LDADD) $(LIBS) -fs/ufs1_module-ufs.$(OBJEXT): fs/$(am__dirstamp) \ - fs/$(DEPDIR)/$(am__dirstamp) - -ufs1.module$(EXEEXT): $(ufs1_module_OBJECTS) $(ufs1_module_DEPENDENCIES) $(EXTRA_ufs1_module_DEPENDENCIES) - @rm -f ufs1.module$(EXEEXT) - $(AM_V_CCLD)$(ufs1_module_LINK) $(ufs1_module_OBJECTS) $(ufs1_module_LDADD) $(LIBS) -fs/ufs1_be_module-ufs_be.$(OBJEXT): fs/$(am__dirstamp) \ - fs/$(DEPDIR)/$(am__dirstamp) - -ufs1_be.module$(EXEEXT): $(ufs1_be_module_OBJECTS) $(ufs1_be_module_DEPENDENCIES) $(EXTRA_ufs1_be_module_DEPENDENCIES) - @rm -f ufs1_be.module$(EXEEXT) - $(AM_V_CCLD)$(ufs1_be_module_LINK) $(ufs1_be_module_OBJECTS) $(ufs1_be_module_LDADD) $(LIBS) -fs/ufs2_module-ufs2.$(OBJEXT): fs/$(am__dirstamp) \ - fs/$(DEPDIR)/$(am__dirstamp) - -ufs2.module$(EXEEXT): $(ufs2_module_OBJECTS) $(ufs2_module_DEPENDENCIES) $(EXTRA_ufs2_module_DEPENDENCIES) - @rm -f ufs2.module$(EXEEXT) - $(AM_V_CCLD)$(ufs2_module_LINK) $(ufs2_module_OBJECTS) $(ufs2_module_LDADD) $(LIBS) -bus/usb/uhci_module-uhci.$(OBJEXT): bus/usb/$(am__dirstamp) \ - bus/usb/$(DEPDIR)/$(am__dirstamp) - -uhci.module$(EXEEXT): $(uhci_module_OBJECTS) $(uhci_module_DEPENDENCIES) $(EXTRA_uhci_module_DEPENDENCIES) - @rm -f uhci.module$(EXEEXT) - $(AM_V_CCLD)$(uhci_module_LINK) $(uhci_module_OBJECTS) $(uhci_module_LDADD) $(LIBS) -bus/usb/usb_module-usb.$(OBJEXT): bus/usb/$(am__dirstamp) \ - bus/usb/$(DEPDIR)/$(am__dirstamp) -bus/usb/usb_module-usbtrans.$(OBJEXT): bus/usb/$(am__dirstamp) \ - bus/usb/$(DEPDIR)/$(am__dirstamp) -bus/usb/usb_module-usbhub.$(OBJEXT): bus/usb/$(am__dirstamp) \ - bus/usb/$(DEPDIR)/$(am__dirstamp) - -usb.module$(EXEEXT): $(usb_module_OBJECTS) $(usb_module_DEPENDENCIES) $(EXTRA_usb_module_DEPENDENCIES) - @rm -f usb.module$(EXEEXT) - $(AM_V_CCLD)$(usb_module_LINK) $(usb_module_OBJECTS) $(usb_module_LDADD) $(LIBS) -term/usb_keyboard_module-usb_keyboard.$(OBJEXT): term/$(am__dirstamp) \ - term/$(DEPDIR)/$(am__dirstamp) - -usb_keyboard.module$(EXEEXT): $(usb_keyboard_module_OBJECTS) $(usb_keyboard_module_DEPENDENCIES) $(EXTRA_usb_keyboard_module_DEPENDENCIES) - @rm -f usb_keyboard.module$(EXEEXT) - $(AM_V_CCLD)$(usb_keyboard_module_LINK) $(usb_keyboard_module_OBJECTS) $(usb_keyboard_module_LDADD) $(LIBS) -disk/usbms_module-usbms.$(OBJEXT): disk/$(am__dirstamp) \ - disk/$(DEPDIR)/$(am__dirstamp) - -usbms.module$(EXEEXT): $(usbms_module_OBJECTS) $(usbms_module_DEPENDENCIES) $(EXTRA_usbms_module_DEPENDENCIES) - @rm -f usbms.module$(EXEEXT) - $(AM_V_CCLD)$(usbms_module_LINK) $(usbms_module_OBJECTS) $(usbms_module_LDADD) $(LIBS) -bus/usb/serial/$(am__dirstamp): - @$(MKDIR_P) bus/usb/serial - @: > bus/usb/serial/$(am__dirstamp) -bus/usb/serial/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) bus/usb/serial/$(DEPDIR) - @: > bus/usb/serial/$(DEPDIR)/$(am__dirstamp) -bus/usb/serial/usbserial_common_module-common.$(OBJEXT): \ - bus/usb/serial/$(am__dirstamp) \ - bus/usb/serial/$(DEPDIR)/$(am__dirstamp) - -usbserial_common.module$(EXEEXT): $(usbserial_common_module_OBJECTS) $(usbserial_common_module_DEPENDENCIES) $(EXTRA_usbserial_common_module_DEPENDENCIES) - @rm -f usbserial_common.module$(EXEEXT) - $(AM_V_CCLD)$(usbserial_common_module_LINK) $(usbserial_common_module_OBJECTS) $(usbserial_common_module_LDADD) $(LIBS) -bus/usb/serial/usbserial_ftdi_module-ftdi.$(OBJEXT): \ - bus/usb/serial/$(am__dirstamp) \ - bus/usb/serial/$(DEPDIR)/$(am__dirstamp) - -usbserial_ftdi.module$(EXEEXT): $(usbserial_ftdi_module_OBJECTS) $(usbserial_ftdi_module_DEPENDENCIES) $(EXTRA_usbserial_ftdi_module_DEPENDENCIES) - @rm -f usbserial_ftdi.module$(EXEEXT) - $(AM_V_CCLD)$(usbserial_ftdi_module_LINK) $(usbserial_ftdi_module_OBJECTS) $(usbserial_ftdi_module_LDADD) $(LIBS) -bus/usb/serial/usbserial_pl2303_module-pl2303.$(OBJEXT): \ - bus/usb/serial/$(am__dirstamp) \ - bus/usb/serial/$(DEPDIR)/$(am__dirstamp) - -usbserial_pl2303.module$(EXEEXT): $(usbserial_pl2303_module_OBJECTS) $(usbserial_pl2303_module_DEPENDENCIES) $(EXTRA_usbserial_pl2303_module_DEPENDENCIES) - @rm -f usbserial_pl2303.module$(EXEEXT) - $(AM_V_CCLD)$(usbserial_pl2303_module_LINK) $(usbserial_pl2303_module_OBJECTS) $(usbserial_pl2303_module_LDADD) $(LIBS) -bus/usb/serial/usbserial_usbdebug_module-usbdebug_late.$(OBJEXT): \ - bus/usb/serial/$(am__dirstamp) \ - bus/usb/serial/$(DEPDIR)/$(am__dirstamp) - -usbserial_usbdebug.module$(EXEEXT): $(usbserial_usbdebug_module_OBJECTS) $(usbserial_usbdebug_module_DEPENDENCIES) $(EXTRA_usbserial_usbdebug_module_DEPENDENCIES) - @rm -f usbserial_usbdebug.module$(EXEEXT) - $(AM_V_CCLD)$(usbserial_usbdebug_module_LINK) $(usbserial_usbdebug_module_OBJECTS) $(usbserial_usbdebug_module_LDADD) $(LIBS) -commands/usbtest_module-usbtest.$(OBJEXT): commands/$(am__dirstamp) \ - commands/$(DEPDIR)/$(am__dirstamp) - -usbtest.module$(EXEEXT): $(usbtest_module_OBJECTS) $(usbtest_module_DEPENDENCIES) $(EXTRA_usbtest_module_DEPENDENCIES) - @rm -f usbtest.module$(EXEEXT) - $(AM_V_CCLD)$(usbtest_module_LINK) $(usbtest_module_OBJECTS) $(usbtest_module_LDADD) $(LIBS) -video/i386/pc/$(am__dirstamp): - @$(MKDIR_P) video/i386/pc - @: > video/i386/pc/$(am__dirstamp) -video/i386/pc/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) video/i386/pc/$(DEPDIR) - @: > video/i386/pc/$(DEPDIR)/$(am__dirstamp) -video/i386/pc/vbe_module-vbe.$(OBJEXT): video/i386/pc/$(am__dirstamp) \ - video/i386/pc/$(DEPDIR)/$(am__dirstamp) - -vbe.module$(EXEEXT): $(vbe_module_OBJECTS) $(vbe_module_DEPENDENCIES) $(EXTRA_vbe_module_DEPENDENCIES) - @rm -f vbe.module$(EXEEXT) - $(AM_V_CCLD)$(vbe_module_LINK) $(vbe_module_OBJECTS) $(vbe_module_LDADD) $(LIBS) -commands/verifiers_module-verifiers.$(OBJEXT): \ - commands/$(am__dirstamp) commands/$(DEPDIR)/$(am__dirstamp) - -verifiers.module$(EXEEXT): $(verifiers_module_OBJECTS) $(verifiers_module_DEPENDENCIES) $(EXTRA_verifiers_module_DEPENDENCIES) - @rm -f verifiers.module$(EXEEXT) - $(AM_V_CCLD)$(verifiers_module_LINK) $(verifiers_module_OBJECTS) $(verifiers_module_LDADD) $(LIBS) -video/i386/pc/vga_module-vga.$(OBJEXT): video/i386/pc/$(am__dirstamp) \ - video/i386/pc/$(DEPDIR)/$(am__dirstamp) - -vga.module$(EXEEXT): $(vga_module_OBJECTS) $(vga_module_DEPENDENCIES) $(EXTRA_vga_module_DEPENDENCIES) - @rm -f vga.module$(EXEEXT) - $(AM_V_CCLD)$(vga_module_LINK) $(vga_module_OBJECTS) $(vga_module_LDADD) $(LIBS) -term/i386/pc/vga_text_module-vga_text.$(OBJEXT): \ - term/i386/pc/$(am__dirstamp) \ - term/i386/pc/$(DEPDIR)/$(am__dirstamp) - -vga_text.module$(EXEEXT): $(vga_text_module_OBJECTS) $(vga_text_module_DEPENDENCIES) $(EXTRA_vga_text_module_DEPENDENCIES) - @rm -f vga_text.module$(EXEEXT) - $(AM_V_CCLD)$(vga_text_module_LINK) $(vga_text_module_OBJECTS) $(vga_text_module_LDADD) $(LIBS) -video/video_module-video.$(OBJEXT): video/$(am__dirstamp) \ - video/$(DEPDIR)/$(am__dirstamp) - -video.module$(EXEEXT): $(video_module_OBJECTS) $(video_module_DEPENDENCIES) $(EXTRA_video_module_DEPENDENCIES) - @rm -f video.module$(EXEEXT) - $(AM_V_CCLD)$(video_module_LINK) $(video_module_OBJECTS) $(video_module_LDADD) $(LIBS) -video/video_bochs_module-bochs.$(OBJEXT): video/$(am__dirstamp) \ - video/$(DEPDIR)/$(am__dirstamp) - -video_bochs.module$(EXEEXT): $(video_bochs_module_OBJECTS) $(video_bochs_module_DEPENDENCIES) $(EXTRA_video_bochs_module_DEPENDENCIES) - @rm -f video_bochs.module$(EXEEXT) - $(AM_V_CCLD)$(video_bochs_module_LINK) $(video_bochs_module_OBJECTS) $(video_bochs_module_LDADD) $(LIBS) -video/video_cirrus_module-cirrus.$(OBJEXT): video/$(am__dirstamp) \ - video/$(DEPDIR)/$(am__dirstamp) - -video_cirrus.module$(EXEEXT): $(video_cirrus_module_OBJECTS) $(video_cirrus_module_DEPENDENCIES) $(EXTRA_video_cirrus_module_DEPENDENCIES) - @rm -f video_cirrus.module$(EXEEXT) - $(AM_V_CCLD)$(video_cirrus_module_LINK) $(video_cirrus_module_OBJECTS) $(video_cirrus_module_LDADD) $(LIBS) -video/video_colors_module-colors.$(OBJEXT): video/$(am__dirstamp) \ - video/$(DEPDIR)/$(am__dirstamp) - -video_colors.module$(EXEEXT): $(video_colors_module_OBJECTS) $(video_colors_module_DEPENDENCIES) $(EXTRA_video_colors_module_DEPENDENCIES) - @rm -f video_colors.module$(EXEEXT) - $(AM_V_CCLD)$(video_colors_module_LINK) $(video_colors_module_OBJECTS) $(video_colors_module_LDADD) $(LIBS) -video/fb/video_fb_module-video_fb.$(OBJEXT): video/fb/$(am__dirstamp) \ - video/fb/$(DEPDIR)/$(am__dirstamp) -video/fb/video_fb_module-fbblit.$(OBJEXT): video/fb/$(am__dirstamp) \ - video/fb/$(DEPDIR)/$(am__dirstamp) -video/fb/video_fb_module-fbfill.$(OBJEXT): video/fb/$(am__dirstamp) \ - video/fb/$(DEPDIR)/$(am__dirstamp) -video/fb/video_fb_module-fbutil.$(OBJEXT): video/fb/$(am__dirstamp) \ - video/fb/$(DEPDIR)/$(am__dirstamp) - -video_fb.module$(EXEEXT): $(video_fb_module_OBJECTS) $(video_fb_module_DEPENDENCIES) $(EXTRA_video_fb_module_DEPENDENCIES) - @rm -f video_fb.module$(EXEEXT) - $(AM_V_CCLD)$(video_fb_module_LINK) $(video_fb_module_OBJECTS) $(video_fb_module_LDADD) $(LIBS) -commands/videoinfo_module-videoinfo.$(OBJEXT): \ - commands/$(am__dirstamp) commands/$(DEPDIR)/$(am__dirstamp) - -videoinfo.module$(EXEEXT): $(videoinfo_module_OBJECTS) $(videoinfo_module_DEPENDENCIES) $(EXTRA_videoinfo_module_DEPENDENCIES) - @rm -f videoinfo.module$(EXEEXT) - $(AM_V_CCLD)$(videoinfo_module_LINK) $(videoinfo_module_OBJECTS) $(videoinfo_module_LDADD) $(LIBS) -commands/videotest_module-videotest.$(OBJEXT): \ - commands/$(am__dirstamp) commands/$(DEPDIR)/$(am__dirstamp) - -videotest.module$(EXEEXT): $(videotest_module_OBJECTS) $(videotest_module_DEPENDENCIES) $(EXTRA_videotest_module_DEPENDENCIES) - @rm -f videotest.module$(EXEEXT) - $(AM_V_CCLD)$(videotest_module_LINK) $(videotest_module_OBJECTS) $(videotest_module_LDADD) $(LIBS) -tests/videotest_checksum_module-videotest_checksum.$(OBJEXT): \ - tests/$(am__dirstamp) tests/$(DEPDIR)/$(am__dirstamp) - -videotest_checksum.module$(EXEEXT): $(videotest_checksum_module_OBJECTS) $(videotest_checksum_module_DEPENDENCIES) $(EXTRA_videotest_checksum_module_DEPENDENCIES) - @rm -f videotest_checksum.module$(EXEEXT) - $(AM_V_CCLD)$(videotest_checksum_module_LINK) $(videotest_checksum_module_OBJECTS) $(videotest_checksum_module_LDADD) $(LIBS) -commands/i386/wrmsr_module-wrmsr.$(OBJEXT): \ - commands/i386/$(am__dirstamp) \ - commands/i386/$(DEPDIR)/$(am__dirstamp) - -wrmsr.module$(EXEEXT): $(wrmsr_module_OBJECTS) $(wrmsr_module_DEPENDENCIES) $(EXTRA_wrmsr_module_DEPENDENCIES) - @rm -f wrmsr.module$(EXEEXT) - $(AM_V_CCLD)$(wrmsr_module_LINK) $(wrmsr_module_OBJECTS) $(wrmsr_module_LDADD) $(LIBS) -loader/arm64/xen_boot_module-xen_boot.$(OBJEXT): \ - loader/arm64/$(am__dirstamp) \ - loader/arm64/$(DEPDIR)/$(am__dirstamp) - -xen_boot.module$(EXEEXT): $(xen_boot_module_OBJECTS) $(xen_boot_module_DEPENDENCIES) $(EXTRA_xen_boot_module_DEPENDENCIES) - @rm -f xen_boot.module$(EXEEXT) - $(AM_V_CCLD)$(xen_boot_module_LINK) $(xen_boot_module_OBJECTS) $(xen_boot_module_LDADD) $(LIBS) -fs/xfs_module-xfs.$(OBJEXT): fs/$(am__dirstamp) \ - fs/$(DEPDIR)/$(am__dirstamp) - -xfs.module$(EXEEXT): $(xfs_module_OBJECTS) $(xfs_module_DEPENDENCIES) $(EXTRA_xfs_module_DEPENDENCIES) - @rm -f xfs.module$(EXEEXT) - $(AM_V_CCLD)$(xfs_module_LINK) $(xfs_module_OBJECTS) $(xfs_module_LDADD) $(LIBS) -loader/xnu_module-xnu_resume.$(OBJEXT): loader/$(am__dirstamp) \ - loader/$(DEPDIR)/$(am__dirstamp) -loader/i386/xnu_module-xnu.$(OBJEXT): loader/i386/$(am__dirstamp) \ - loader/i386/$(DEPDIR)/$(am__dirstamp) -loader/xnu_module-xnu.$(OBJEXT): loader/$(am__dirstamp) \ - loader/$(DEPDIR)/$(am__dirstamp) - -xnu.module$(EXEEXT): $(xnu_module_OBJECTS) $(xnu_module_DEPENDENCIES) $(EXTRA_xnu_module_DEPENDENCIES) - @rm -f xnu.module$(EXEEXT) - $(AM_V_CCLD)$(xnu_module_LINK) $(xnu_module_OBJECTS) $(xnu_module_LDADD) $(LIBS) -commands/xnu_uuid_module-xnu_uuid.$(OBJEXT): commands/$(am__dirstamp) \ - commands/$(DEPDIR)/$(am__dirstamp) - -xnu_uuid.module$(EXEEXT): $(xnu_uuid_module_OBJECTS) $(xnu_uuid_module_DEPENDENCIES) $(EXTRA_xnu_uuid_module_DEPENDENCIES) - @rm -f xnu_uuid.module$(EXEEXT) - $(AM_V_CCLD)$(xnu_uuid_module_LINK) $(xnu_uuid_module_OBJECTS) $(xnu_uuid_module_LDADD) $(LIBS) -tests/xnu_uuid_test_module-xnu_uuid_test.$(OBJEXT): \ - tests/$(am__dirstamp) tests/$(DEPDIR)/$(am__dirstamp) - -xnu_uuid_test.module$(EXEEXT): $(xnu_uuid_test_module_OBJECTS) $(xnu_uuid_test_module_DEPENDENCIES) $(EXTRA_xnu_uuid_test_module_DEPENDENCIES) - @rm -f xnu_uuid_test.module$(EXEEXT) - $(AM_V_CCLD)$(xnu_uuid_test_module_LINK) $(xnu_uuid_test_module_OBJECTS) $(xnu_uuid_test_module_LDADD) $(LIBS) -boot/mips/xz_decompress_image-startup_raw.$(OBJEXT): \ - boot/mips/$(am__dirstamp) boot/mips/$(DEPDIR)/$(am__dirstamp) -boot/decompressor/xz_decompress_image-minilib.$(OBJEXT): \ - boot/decompressor/$(am__dirstamp) \ - boot/decompressor/$(DEPDIR)/$(am__dirstamp) -boot/decompressor/xz_decompress_image-xz.$(OBJEXT): \ - boot/decompressor/$(am__dirstamp) \ - boot/decompressor/$(DEPDIR)/$(am__dirstamp) -lib/xzembed/$(am__dirstamp): - @$(MKDIR_P) lib/xzembed - @: > lib/xzembed/$(am__dirstamp) -lib/xzembed/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) lib/xzembed/$(DEPDIR) - @: > lib/xzembed/$(DEPDIR)/$(am__dirstamp) -lib/xzembed/xz_decompress_image-xz_dec_bcj.$(OBJEXT): \ - lib/xzembed/$(am__dirstamp) \ - lib/xzembed/$(DEPDIR)/$(am__dirstamp) -lib/xzembed/xz_decompress_image-xz_dec_lzma2.$(OBJEXT): \ - lib/xzembed/$(am__dirstamp) \ - lib/xzembed/$(DEPDIR)/$(am__dirstamp) -lib/xzembed/xz_decompress_image-xz_dec_stream.$(OBJEXT): \ - lib/xzembed/$(am__dirstamp) \ - lib/xzembed/$(DEPDIR)/$(am__dirstamp) -kern/xz_decompress_image-compiler-rt.$(OBJEXT): kern/$(am__dirstamp) \ - kern/$(DEPDIR)/$(am__dirstamp) - -xz_decompress.image$(EXEEXT): $(xz_decompress_image_OBJECTS) $(xz_decompress_image_DEPENDENCIES) $(EXTRA_xz_decompress_image_DEPENDENCIES) - @rm -f xz_decompress.image$(EXEEXT) - $(AM_V_CCLD)$(xz_decompress_image_LINK) $(xz_decompress_image_OBJECTS) $(xz_decompress_image_LDADD) $(LIBS) -io/xzio_module-xzio.$(OBJEXT): io/$(am__dirstamp) \ - io/$(DEPDIR)/$(am__dirstamp) -lib/xzembed/xzio_module-xz_dec_bcj.$(OBJEXT): \ - lib/xzembed/$(am__dirstamp) \ - lib/xzembed/$(DEPDIR)/$(am__dirstamp) -lib/xzembed/xzio_module-xz_dec_lzma2.$(OBJEXT): \ - lib/xzembed/$(am__dirstamp) \ - lib/xzembed/$(DEPDIR)/$(am__dirstamp) -lib/xzembed/xzio_module-xz_dec_stream.$(OBJEXT): \ - lib/xzembed/$(am__dirstamp) \ - lib/xzembed/$(DEPDIR)/$(am__dirstamp) - -xzio.module$(EXEEXT): $(xzio_module_OBJECTS) $(xzio_module_DEPENDENCIES) $(EXTRA_xzio_module_DEPENDENCIES) - @rm -f xzio.module$(EXEEXT) - $(AM_V_CCLD)$(xzio_module_LINK) $(xzio_module_OBJECTS) $(xzio_module_LDADD) $(LIBS) -fs/zfs/$(am__dirstamp): - @$(MKDIR_P) fs/zfs - @: > fs/zfs/$(am__dirstamp) -fs/zfs/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) fs/zfs/$(DEPDIR) - @: > fs/zfs/$(DEPDIR)/$(am__dirstamp) -fs/zfs/zfs_module-zfs.$(OBJEXT): fs/zfs/$(am__dirstamp) \ - fs/zfs/$(DEPDIR)/$(am__dirstamp) -fs/zfs/zfs_module-zfs_lzjb.$(OBJEXT): fs/zfs/$(am__dirstamp) \ - fs/zfs/$(DEPDIR)/$(am__dirstamp) -fs/zfs/zfs_module-zfs_lz4.$(OBJEXT): fs/zfs/$(am__dirstamp) \ - fs/zfs/$(DEPDIR)/$(am__dirstamp) -fs/zfs/zfs_module-zfs_sha256.$(OBJEXT): fs/zfs/$(am__dirstamp) \ - fs/zfs/$(DEPDIR)/$(am__dirstamp) -fs/zfs/zfs_module-zfs_fletcher.$(OBJEXT): fs/zfs/$(am__dirstamp) \ - fs/zfs/$(DEPDIR)/$(am__dirstamp) - -zfs.module$(EXEEXT): $(zfs_module_OBJECTS) $(zfs_module_DEPENDENCIES) $(EXTRA_zfs_module_DEPENDENCIES) - @rm -f zfs.module$(EXEEXT) - $(AM_V_CCLD)$(zfs_module_LINK) $(zfs_module_OBJECTS) $(zfs_module_LDADD) $(LIBS) -fs/zfs/zfscrypt_module-zfscrypt.$(OBJEXT): fs/zfs/$(am__dirstamp) \ - fs/zfs/$(DEPDIR)/$(am__dirstamp) - -zfscrypt.module$(EXEEXT): $(zfscrypt_module_OBJECTS) $(zfscrypt_module_DEPENDENCIES) $(EXTRA_zfscrypt_module_DEPENDENCIES) - @rm -f zfscrypt.module$(EXEEXT) - $(AM_V_CCLD)$(zfscrypt_module_LINK) $(zfscrypt_module_OBJECTS) $(zfscrypt_module_LDADD) $(LIBS) -fs/zfs/zfsinfo_module-zfsinfo.$(OBJEXT): fs/zfs/$(am__dirstamp) \ - fs/zfs/$(DEPDIR)/$(am__dirstamp) - -zfsinfo.module$(EXEEXT): $(zfsinfo_module_OBJECTS) $(zfsinfo_module_DEPENDENCIES) $(EXTRA_zfsinfo_module_DEPENDENCIES) - @rm -f zfsinfo.module$(EXEEXT) - $(AM_V_CCLD)$(zfsinfo_module_LINK) $(zfsinfo_module_OBJECTS) $(zfsinfo_module_LDADD) $(LIBS) -lib/zstd/$(am__dirstamp): - @$(MKDIR_P) lib/zstd - @: > lib/zstd/$(am__dirstamp) -lib/zstd/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) lib/zstd/$(DEPDIR) - @: > lib/zstd/$(DEPDIR)/$(am__dirstamp) -lib/zstd/zstd_module-debug.$(OBJEXT): lib/zstd/$(am__dirstamp) \ - lib/zstd/$(DEPDIR)/$(am__dirstamp) -lib/zstd/zstd_module-entropy_common.$(OBJEXT): \ - lib/zstd/$(am__dirstamp) lib/zstd/$(DEPDIR)/$(am__dirstamp) -lib/zstd/zstd_module-error_private.$(OBJEXT): \ - lib/zstd/$(am__dirstamp) lib/zstd/$(DEPDIR)/$(am__dirstamp) -lib/zstd/zstd_module-fse_decompress.$(OBJEXT): \ - lib/zstd/$(am__dirstamp) lib/zstd/$(DEPDIR)/$(am__dirstamp) -lib/zstd/zstd_module-huf_decompress.$(OBJEXT): \ - lib/zstd/$(am__dirstamp) lib/zstd/$(DEPDIR)/$(am__dirstamp) -lib/zstd/zstd_module-module.$(OBJEXT): lib/zstd/$(am__dirstamp) \ - lib/zstd/$(DEPDIR)/$(am__dirstamp) -lib/zstd/zstd_module-xxhash.$(OBJEXT): lib/zstd/$(am__dirstamp) \ - lib/zstd/$(DEPDIR)/$(am__dirstamp) -lib/zstd/zstd_module-zstd_common.$(OBJEXT): lib/zstd/$(am__dirstamp) \ - lib/zstd/$(DEPDIR)/$(am__dirstamp) -lib/zstd/zstd_module-zstd_decompress.$(OBJEXT): \ - lib/zstd/$(am__dirstamp) lib/zstd/$(DEPDIR)/$(am__dirstamp) - -zstd.module$(EXEEXT): $(zstd_module_OBJECTS) $(zstd_module_DEPENDENCIES) $(EXTRA_zstd_module_DEPENDENCIES) - @rm -f zstd.module$(EXEEXT) - $(AM_V_CCLD)$(zstd_module_LINK) $(zstd_module_OBJECTS) $(zstd_module_LDADD) $(LIBS) -install-binSCRIPTS: $(bin_SCRIPTS) - @$(NORMAL_INSTALL) - @list='$(bin_SCRIPTS)'; test -n "$(bindir)" || list=; \ - if test -n "$$list"; then \ - echo " $(MKDIR_P) '$(DESTDIR)$(bindir)'"; \ - $(MKDIR_P) "$(DESTDIR)$(bindir)" || exit 1; \ - fi; \ - for p in $$list; do \ - if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ - if test -f "$$d$$p"; then echo "$$d$$p"; echo "$$p"; else :; fi; \ - done | \ - sed -e 'p;s,.*/,,;n' \ - -e 'h;s|.*|.|' \ - -e 'p;x;s,.*/,,;$(transform)' | sed 'N;N;N;s,\n, ,g' | \ - $(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1; } \ - { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \ - if ($$2 == $$4) { files[d] = files[d] " " $$1; \ - if (++n[d] == $(am__install_max)) { \ - print "f", d, files[d]; n[d] = 0; files[d] = "" } } \ - else { print "f", d "/" $$4, $$1 } } \ - END { for (d in files) print "f", d, files[d] }' | \ - while read type dir files; do \ - if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \ - test -z "$$files" || { \ - echo " $(INSTALL_SCRIPT) $$files '$(DESTDIR)$(bindir)$$dir'"; \ - $(INSTALL_SCRIPT) $$files "$(DESTDIR)$(bindir)$$dir" || exit $$?; \ - } \ - ; done - -uninstall-binSCRIPTS: - @$(NORMAL_UNINSTALL) - @list='$(bin_SCRIPTS)'; test -n "$(bindir)" || exit 0; \ - files=`for p in $$list; do echo "$$p"; done | \ - sed -e 's,.*/,,;$(transform)'`; \ - dir='$(DESTDIR)$(bindir)'; $(am__uninstall_files_from_dir) -install-grubconfSCRIPTS: $(grubconf_SCRIPTS) - @$(NORMAL_INSTALL) - @list='$(grubconf_SCRIPTS)'; test -n "$(grubconfdir)" || list=; \ - if test -n "$$list"; then \ - echo " $(MKDIR_P) '$(DESTDIR)$(grubconfdir)'"; \ - $(MKDIR_P) "$(DESTDIR)$(grubconfdir)" || exit 1; \ - fi; \ - for p in $$list; do \ - if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ - if test -f "$$d$$p"; then echo "$$d$$p"; echo "$$p"; else :; fi; \ - done | \ - sed -e 'p;s,.*/,,;n' \ - -e 'h;s|.*|.|' \ - -e 'p;x;s,.*/,,;$(transform)' | sed 'N;N;N;s,\n, ,g' | \ - $(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1; } \ - { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \ - if ($$2 == $$4) { files[d] = files[d] " " $$1; \ - if (++n[d] == $(am__install_max)) { \ - print "f", d, files[d]; n[d] = 0; files[d] = "" } } \ - else { print "f", d "/" $$4, $$1 } } \ - END { for (d in files) print "f", d, files[d] }' | \ - while read type dir files; do \ - if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \ - test -z "$$files" || { \ - echo " $(INSTALL_SCRIPT) $$files '$(DESTDIR)$(grubconfdir)$$dir'"; \ - $(INSTALL_SCRIPT) $$files "$(DESTDIR)$(grubconfdir)$$dir" || exit $$?; \ - } \ - ; done - -uninstall-grubconfSCRIPTS: - @$(NORMAL_UNINSTALL) - @list='$(grubconf_SCRIPTS)'; test -n "$(grubconfdir)" || exit 0; \ - files=`for p in $$list; do echo "$$p"; done | \ - sed -e 's,.*/,,;$(transform)'`; \ - dir='$(DESTDIR)$(grubconfdir)'; $(am__uninstall_files_from_dir) -install-platformSCRIPTS: $(platform_SCRIPTS) - @$(NORMAL_INSTALL) - @list='$(platform_SCRIPTS)'; test -n "$(platformdir)" || list=; \ - if test -n "$$list"; then \ - echo " $(MKDIR_P) '$(DESTDIR)$(platformdir)'"; \ - $(MKDIR_P) "$(DESTDIR)$(platformdir)" || exit 1; \ - fi; \ - for p in $$list; do \ - if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ - if test -f "$$d$$p"; then echo "$$d$$p"; echo "$$p"; else :; fi; \ - done | \ - sed -e 'p;s,.*/,,;n' \ - -e 'h;s|.*|.|' \ - -e 'p;x;s,.*/,,;$(transform)' | sed 'N;N;N;s,\n, ,g' | \ - $(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1; } \ - { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \ - if ($$2 == $$4) { files[d] = files[d] " " $$1; \ - if (++n[d] == $(am__install_max)) { \ - print "f", d, files[d]; n[d] = 0; files[d] = "" } } \ - else { print "f", d "/" $$4, $$1 } } \ - END { for (d in files) print "f", d, files[d] }' | \ - while read type dir files; do \ - if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \ - test -z "$$files" || { \ - echo " $(INSTALL_SCRIPT) $$files '$(DESTDIR)$(platformdir)$$dir'"; \ - $(INSTALL_SCRIPT) $$files "$(DESTDIR)$(platformdir)$$dir" || exit $$?; \ - } \ - ; done - -uninstall-platformSCRIPTS: - @$(NORMAL_UNINSTALL) - @list='$(platform_SCRIPTS)'; test -n "$(platformdir)" || exit 0; \ - files=`for p in $$list; do echo "$$p"; done | \ - sed -e 's,.*/,,;$(transform)'`; \ - dir='$(DESTDIR)$(platformdir)'; $(am__uninstall_files_from_dir) -install-sbinSCRIPTS: $(sbin_SCRIPTS) - @$(NORMAL_INSTALL) - @list='$(sbin_SCRIPTS)'; test -n "$(sbindir)" || list=; \ - if test -n "$$list"; then \ - echo " $(MKDIR_P) '$(DESTDIR)$(sbindir)'"; \ - $(MKDIR_P) "$(DESTDIR)$(sbindir)" || exit 1; \ - fi; \ - for p in $$list; do \ - if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ - if test -f "$$d$$p"; then echo "$$d$$p"; echo "$$p"; else :; fi; \ - done | \ - sed -e 'p;s,.*/,,;n' \ - -e 'h;s|.*|.|' \ - -e 'p;x;s,.*/,,;$(transform)' | sed 'N;N;N;s,\n, ,g' | \ - $(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1; } \ - { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \ - if ($$2 == $$4) { files[d] = files[d] " " $$1; \ - if (++n[d] == $(am__install_max)) { \ - print "f", d, files[d]; n[d] = 0; files[d] = "" } } \ - else { print "f", d "/" $$4, $$1 } } \ - END { for (d in files) print "f", d, files[d] }' | \ - while read type dir files; do \ - if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \ - test -z "$$files" || { \ - echo " $(INSTALL_SCRIPT) $$files '$(DESTDIR)$(sbindir)$$dir'"; \ - $(INSTALL_SCRIPT) $$files "$(DESTDIR)$(sbindir)$$dir" || exit $$?; \ - } \ - ; done - -uninstall-sbinSCRIPTS: - @$(NORMAL_UNINSTALL) - @list='$(sbin_SCRIPTS)'; test -n "$(sbindir)" || exit 0; \ - files=`for p in $$list; do echo "$$p"; done | \ - sed -e 's,.*/,,;$(transform)'`; \ - dir='$(DESTDIR)$(sbindir)'; $(am__uninstall_files_from_dir) - -mostlyclean-compile: - -rm -f *.$(OBJEXT) - -rm -f boot/decompressor/*.$(OBJEXT) - -rm -f boot/i386/pc/*.$(OBJEXT) - -rm -f boot/i386/qemu/*.$(OBJEXT) - -rm -f boot/mips/*.$(OBJEXT) - -rm -f boot/mips/loongson/*.$(OBJEXT) - -rm -f boot/sparc64/ieee1275/*.$(OBJEXT) - -rm -f bus/*.$(OBJEXT) - -rm -f bus/emu/*.$(OBJEXT) - -rm -f bus/i386/ieee1275/*.$(OBJEXT) - -rm -f bus/spi/*.$(OBJEXT) - -rm -f bus/usb/*.$(OBJEXT) - -rm -f bus/usb/serial/*.$(OBJEXT) - -rm -f commands/*.$(OBJEXT) - -rm -f commands/arc/*.$(OBJEXT) - -rm -f commands/efi/*.$(OBJEXT) - -rm -f commands/i386/*.$(OBJEXT) - -rm -f commands/i386/coreboot/*.$(OBJEXT) - -rm -f commands/i386/pc/*.$(OBJEXT) - -rm -f commands/ieee1275/*.$(OBJEXT) - -rm -f commands/mips/loongson/*.$(OBJEXT) - -rm -f commands/xen/*.$(OBJEXT) - -rm -f disk/*.$(OBJEXT) - -rm -f disk/arc/*.$(OBJEXT) - -rm -f disk/efi/*.$(OBJEXT) - -rm -f disk/i386/pc/*.$(OBJEXT) - -rm -f disk/ieee1275/*.$(OBJEXT) - -rm -f disk/uboot/*.$(OBJEXT) - -rm -f disk/xen/*.$(OBJEXT) - -rm -f efiemu/*.$(OBJEXT) - -rm -f efiemu/i386/*.$(OBJEXT) - -rm -f efiemu/i386/pc/*.$(OBJEXT) - -rm -f font/*.$(OBJEXT) - -rm -f fs/*.$(OBJEXT) - -rm -f fs/zfs/*.$(OBJEXT) - -rm -f gdb/*.$(OBJEXT) - -rm -f gdb/i386/*.$(OBJEXT) - -rm -f gettext/*.$(OBJEXT) - -rm -f gfxmenu/*.$(OBJEXT) - -rm -f hello/*.$(OBJEXT) - -rm -f hook/*.$(OBJEXT) - -rm -f io/*.$(OBJEXT) - -rm -f kern/*.$(OBJEXT) - -rm -f kern/arm/*.$(OBJEXT) - -rm -f kern/arm/coreboot/*.$(OBJEXT) - -rm -f kern/arm/efi/*.$(OBJEXT) - -rm -f kern/arm/uboot/*.$(OBJEXT) - -rm -f kern/arm64/*.$(OBJEXT) - -rm -f kern/arm64/efi/*.$(OBJEXT) - -rm -f kern/coreboot/*.$(OBJEXT) - -rm -f kern/efi/*.$(OBJEXT) - -rm -f kern/emu/*.$(OBJEXT) - -rm -f kern/generic/*.$(OBJEXT) - -rm -f kern/i386/*.$(OBJEXT) - -rm -f kern/i386/coreboot/*.$(OBJEXT) - -rm -f kern/i386/efi/*.$(OBJEXT) - -rm -f kern/i386/ieee1275/*.$(OBJEXT) - -rm -f kern/i386/pc/*.$(OBJEXT) - -rm -f kern/i386/qemu/*.$(OBJEXT) - -rm -f kern/i386/xen/*.$(OBJEXT) - -rm -f kern/ia64/*.$(OBJEXT) - -rm -f kern/ia64/efi/*.$(OBJEXT) - -rm -f kern/ieee1275/*.$(OBJEXT) - -rm -f kern/mips/*.$(OBJEXT) - -rm -f kern/mips/arc/*.$(OBJEXT) - -rm -f kern/mips/loongson/*.$(OBJEXT) - -rm -f kern/mips/qemu_mips/*.$(OBJEXT) - -rm -f kern/powerpc/*.$(OBJEXT) - -rm -f kern/powerpc/ieee1275/*.$(OBJEXT) - -rm -f kern/riscv/*.$(OBJEXT) - -rm -f kern/riscv/efi/*.$(OBJEXT) - -rm -f kern/sparc64/*.$(OBJEXT) - -rm -f kern/sparc64/ieee1275/*.$(OBJEXT) - -rm -f kern/uboot/*.$(OBJEXT) - -rm -f kern/x86_64/*.$(OBJEXT) - -rm -f kern/x86_64/efi/*.$(OBJEXT) - -rm -f kern/x86_64/xen/*.$(OBJEXT) - -rm -f kern/xen/*.$(OBJEXT) - -rm -f lib/*.$(OBJEXT) - -rm -f lib/arc/*.$(OBJEXT) - -rm -f lib/dummy/*.$(OBJEXT) - -rm -f lib/efi/*.$(OBJEXT) - -rm -f lib/emu/*.$(OBJEXT) - -rm -f lib/gnulib/*.$(OBJEXT) - -rm -f lib/i386/*.$(OBJEXT) - -rm -f lib/i386/pc/*.$(OBJEXT) - -rm -f lib/i386/xen/*.$(OBJEXT) - -rm -f lib/ieee1275/*.$(OBJEXT) - -rm -f lib/libgcrypt-grub/cipher/*.$(OBJEXT) - -rm -f lib/libgcrypt-grub/mpi/*.$(OBJEXT) - -rm -f lib/libgcrypt_wrap/*.$(OBJEXT) - -rm -f lib/minilzo/*.$(OBJEXT) - -rm -f lib/mips/*.$(OBJEXT) - -rm -f lib/mips/arc/*.$(OBJEXT) - -rm -f lib/mips/loongson/*.$(OBJEXT) - -rm -f lib/mips/qemu_mips/*.$(OBJEXT) - -rm -f lib/powerpc/*.$(OBJEXT) - -rm -f lib/uboot/*.$(OBJEXT) - -rm -f lib/x86_64/*.$(OBJEXT) - -rm -f lib/x86_64/efi/*.$(OBJEXT) - -rm -f lib/x86_64/xen/*.$(OBJEXT) - -rm -f lib/xen/*.$(OBJEXT) - -rm -f lib/xzembed/*.$(OBJEXT) - -rm -f lib/zstd/*.$(OBJEXT) - -rm -f loader/*.$(OBJEXT) - -rm -f loader/arm/*.$(OBJEXT) - -rm -f loader/arm64/*.$(OBJEXT) - -rm -f loader/efi/*.$(OBJEXT) - -rm -f loader/i386/*.$(OBJEXT) - -rm -f loader/i386/coreboot/*.$(OBJEXT) - -rm -f loader/i386/pc/*.$(OBJEXT) - -rm -f loader/ia64/efi/*.$(OBJEXT) - -rm -f loader/mips/*.$(OBJEXT) - -rm -f loader/powerpc/ieee1275/*.$(OBJEXT) - -rm -f loader/riscv/*.$(OBJEXT) - -rm -f loader/sparc64/ieee1275/*.$(OBJEXT) - -rm -f mmap/*.$(OBJEXT) - -rm -f mmap/efi/*.$(OBJEXT) - -rm -f mmap/i386/*.$(OBJEXT) - -rm -f mmap/i386/pc/*.$(OBJEXT) - -rm -f mmap/mips/*.$(OBJEXT) - -rm -f net/*.$(OBJEXT) - -rm -f net/drivers/efi/*.$(OBJEXT) - -rm -f net/drivers/emu/*.$(OBJEXT) - -rm -f net/drivers/i386/pc/*.$(OBJEXT) - -rm -f net/drivers/ieee1275/*.$(OBJEXT) - -rm -f net/drivers/uboot/*.$(OBJEXT) - -rm -f normal/*.$(OBJEXT) - -rm -f osdep/*.$(OBJEXT) - -rm -f osdep/devmapper/*.$(OBJEXT) - -rm -f osdep/unix/*.$(OBJEXT) - -rm -f partmap/*.$(OBJEXT) - -rm -f parttool/*.$(OBJEXT) - -rm -f script/*.$(OBJEXT) - -rm -f term/*.$(OBJEXT) - -rm -f term/arc/*.$(OBJEXT) - -rm -f term/arm/*.$(OBJEXT) - -rm -f term/efi/*.$(OBJEXT) - -rm -f term/i386/coreboot/*.$(OBJEXT) - -rm -f term/i386/pc/*.$(OBJEXT) - -rm -f term/ieee1275/*.$(OBJEXT) - -rm -f term/uboot/*.$(OBJEXT) - -rm -f term/xen/*.$(OBJEXT) - -rm -f tests/*.$(OBJEXT) - -rm -f tests/lib/*.$(OBJEXT) - -rm -f video/*.$(OBJEXT) - -rm -f video/coreboot/*.$(OBJEXT) - -rm -f video/emu/*.$(OBJEXT) - -rm -f video/fb/*.$(OBJEXT) - -rm -f video/i386/pc/*.$(OBJEXT) - -rm -f video/readers/*.$(OBJEXT) - -distclean-compile: - -rm -f *.tab.c - -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/grub_emu-grub_emu_init.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/grub_emu_lite-symlist.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/kernel_exec-symlist.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/normal_module-grub_script.tab.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/normal_module-grub_script.yy.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/normal_module-unidata.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/trig_module-trigtables.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@boot/decompressor/$(DEPDIR)/none_decompress_image-none.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@boot/decompressor/$(DEPDIR)/xz_decompress_image-minilib.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@boot/decompressor/$(DEPDIR)/xz_decompress_image-xz.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@boot/i386/pc/$(DEPDIR)/boot_hybrid_image-boot.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@boot/i386/pc/$(DEPDIR)/boot_image-boot.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@boot/i386/pc/$(DEPDIR)/cdboot_image-cdboot.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@boot/i386/pc/$(DEPDIR)/diskboot_image-diskboot.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@boot/i386/pc/$(DEPDIR)/lnxboot_image-lnxboot.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@boot/i386/pc/$(DEPDIR)/lzma_decompress_image-startup_raw.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@boot/i386/pc/$(DEPDIR)/pxeboot_image-pxeboot.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@boot/i386/qemu/$(DEPDIR)/boot_image-boot.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@boot/mips/$(DEPDIR)/none_decompress_image-startup_raw.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@boot/mips/$(DEPDIR)/xz_decompress_image-startup_raw.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@boot/mips/loongson/$(DEPDIR)/fwstart_fuloong2f_image-fuloong2f.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@boot/mips/loongson/$(DEPDIR)/fwstart_image-fwstart.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@boot/sparc64/ieee1275/$(DEPDIR)/boot_image-boot.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@boot/sparc64/ieee1275/$(DEPDIR)/cdboot_image-boot.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@boot/sparc64/ieee1275/$(DEPDIR)/diskboot_image-diskboot.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@bus/$(DEPDIR)/cs5536_module-cs5536.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@bus/$(DEPDIR)/kernel_exec-bonito.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@bus/$(DEPDIR)/kernel_exec-cs5536.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@bus/$(DEPDIR)/kernel_exec-fdt.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@bus/$(DEPDIR)/kernel_exec-pci.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@bus/$(DEPDIR)/pci_module-pci.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@bus/emu/$(DEPDIR)/emupci_module-pci.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@bus/i386/ieee1275/$(DEPDIR)/pci_module-pci.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@bus/spi/$(DEPDIR)/kernel_exec-rk3288_spi.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@bus/usb/$(DEPDIR)/ehci_module-ehci-fdt.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@bus/usb/$(DEPDIR)/ehci_module-ehci-pci.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@bus/usb/$(DEPDIR)/ehci_module-ehci.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@bus/usb/$(DEPDIR)/ohci_module-ohci.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@bus/usb/$(DEPDIR)/uhci_module-uhci.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@bus/usb/$(DEPDIR)/usb_module-usb.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@bus/usb/$(DEPDIR)/usb_module-usbhub.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@bus/usb/$(DEPDIR)/usb_module-usbtrans.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@bus/usb/serial/$(DEPDIR)/usbserial_common_module-common.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@bus/usb/serial/$(DEPDIR)/usbserial_ftdi_module-ftdi.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@bus/usb/serial/$(DEPDIR)/usbserial_pl2303_module-pl2303.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@bus/usb/serial/$(DEPDIR)/usbserial_usbdebug_module-usbdebug_late.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@commands/$(DEPDIR)/acpi_module-acpi.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@commands/$(DEPDIR)/blocklist_module-blocklist.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@commands/$(DEPDIR)/boot_module-boot.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@commands/$(DEPDIR)/boottime_module-boottime.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@commands/$(DEPDIR)/cacheinfo_module-cacheinfo.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@commands/$(DEPDIR)/cat_module-cat.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@commands/$(DEPDIR)/cmp_module-cmp.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@commands/$(DEPDIR)/configfile_module-configfile.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@commands/$(DEPDIR)/date_module-date.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@commands/$(DEPDIR)/echo_module-echo.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@commands/$(DEPDIR)/emupci_module-lspci.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@commands/$(DEPDIR)/eval_module-eval.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@commands/$(DEPDIR)/extcmd_module-extcmd.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@commands/$(DEPDIR)/file_module-file.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@commands/$(DEPDIR)/file_module-file32.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@commands/$(DEPDIR)/file_module-file64.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@commands/$(DEPDIR)/gptsync_module-gptsync.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@commands/$(DEPDIR)/halt_module-acpihalt.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@commands/$(DEPDIR)/halt_module-halt.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@commands/$(DEPDIR)/hashsum_module-hashsum.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@commands/$(DEPDIR)/hdparm_module-hdparm.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@commands/$(DEPDIR)/help_module-help.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@commands/$(DEPDIR)/hexdump_module-hexdump.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@commands/$(DEPDIR)/iorw_module-iorw.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@commands/$(DEPDIR)/kernel_exec-boot.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@commands/$(DEPDIR)/kernel_exec-extcmd.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@commands/$(DEPDIR)/kernel_exec-keylayouts.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@commands/$(DEPDIR)/keylayouts_module-keylayouts.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@commands/$(DEPDIR)/keystatus_module-keystatus.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@commands/$(DEPDIR)/legacycfg_module-legacycfg.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@commands/$(DEPDIR)/loadenv_module-loadenv.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@commands/$(DEPDIR)/ls_module-ls.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@commands/$(DEPDIR)/lsacpi_module-lsacpi.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@commands/$(DEPDIR)/lsmmap_module-lsmmap.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@commands/$(DEPDIR)/lspci_module-lspci.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@commands/$(DEPDIR)/macbless_module-macbless.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@commands/$(DEPDIR)/memrw_module-memrw.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@commands/$(DEPDIR)/minicmd_module-minicmd.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@commands/$(DEPDIR)/nativedisk_module-nativedisk.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@commands/$(DEPDIR)/normal_module-menuentry.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@commands/$(DEPDIR)/parttool_module-parttool.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@commands/$(DEPDIR)/password_module-password.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@commands/$(DEPDIR)/password_pbkdf2_module-password_pbkdf2.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@commands/$(DEPDIR)/pcidump_module-pcidump.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@commands/$(DEPDIR)/pgp_module-pgp.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@commands/$(DEPDIR)/probe_module-probe.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@commands/$(DEPDIR)/read_module-read.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@commands/$(DEPDIR)/reboot_module-reboot.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@commands/$(DEPDIR)/regexp_module-regexp.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@commands/$(DEPDIR)/regexp_module-wildcard.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@commands/$(DEPDIR)/search_fs_file_module-search_file.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@commands/$(DEPDIR)/search_fs_uuid_module-search_uuid.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@commands/$(DEPDIR)/search_label_module-search_label.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@commands/$(DEPDIR)/search_module-search_wrap.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@commands/$(DEPDIR)/setpci_module-setpci.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@commands/$(DEPDIR)/sleep_module-sleep.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@commands/$(DEPDIR)/syslinuxcfg_module-syslinuxcfg.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@commands/$(DEPDIR)/terminal_module-terminal.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@commands/$(DEPDIR)/test_module-test.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@commands/$(DEPDIR)/testload_module-testload.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@commands/$(DEPDIR)/testspeed_module-testspeed.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@commands/$(DEPDIR)/time_module-time.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@commands/$(DEPDIR)/tpm_module-tpm.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@commands/$(DEPDIR)/tr_module-tr.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@commands/$(DEPDIR)/true_module-true.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@commands/$(DEPDIR)/usbtest_module-usbtest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@commands/$(DEPDIR)/verifiers_module-verifiers.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@commands/$(DEPDIR)/videoinfo_module-videoinfo.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@commands/$(DEPDIR)/videotest_module-videotest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@commands/$(DEPDIR)/xnu_uuid_module-xnu_uuid.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@commands/arc/$(DEPDIR)/lsdev_module-lsdev.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@commands/efi/$(DEPDIR)/efifwsetup_module-efifwsetup.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@commands/efi/$(DEPDIR)/fixvideo_module-fixvideo.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@commands/efi/$(DEPDIR)/loadbios_module-loadbios.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@commands/efi/$(DEPDIR)/lsefi_module-lsefi.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@commands/efi/$(DEPDIR)/lsefimmap_module-lsefimmap.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@commands/efi/$(DEPDIR)/lsefisystab_module-lsefisystab.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@commands/efi/$(DEPDIR)/lssal_module-lssal.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@commands/efi/$(DEPDIR)/shim_lock_module-shim_lock.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@commands/efi/$(DEPDIR)/tpm_module-tpm.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@commands/i386/$(DEPDIR)/cmosdump_module-cmosdump.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@commands/i386/$(DEPDIR)/cmostest_module-cmostest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@commands/i386/$(DEPDIR)/cpuid_module-cpuid.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@commands/i386/$(DEPDIR)/rdmsr_module-rdmsr.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@commands/i386/$(DEPDIR)/wrmsr_module-wrmsr.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@commands/i386/coreboot/$(DEPDIR)/cbls_module-cbls.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@commands/i386/coreboot/$(DEPDIR)/cbtime_module-cb_timestamps.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@commands/i386/pc/$(DEPDIR)/drivemap_module-drivemap.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@commands/i386/pc/$(DEPDIR)/drivemap_module-drivemap_int13h.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@commands/i386/pc/$(DEPDIR)/halt_module-halt.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@commands/i386/pc/$(DEPDIR)/lsapm_module-lsapm.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@commands/i386/pc/$(DEPDIR)/play_module-play.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@commands/i386/pc/$(DEPDIR)/sendkey_module-sendkey.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@commands/ieee1275/$(DEPDIR)/suspend_module-suspend.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@commands/mips/loongson/$(DEPDIR)/lsspd_module-lsspd.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@commands/xen/$(DEPDIR)/lsxen_module-lsxen.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@disk/$(DEPDIR)/ahci_module-ahci.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@disk/$(DEPDIR)/ata_module-ata.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@disk/$(DEPDIR)/cryptodisk_module-cryptodisk.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@disk/$(DEPDIR)/diskfilter_module-diskfilter.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@disk/$(DEPDIR)/dm_nv_module-dmraid_nvidia.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@disk/$(DEPDIR)/geli_module-geli.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@disk/$(DEPDIR)/kernel_exec-host.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@disk/$(DEPDIR)/ldm_module-ldm.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@disk/$(DEPDIR)/loopback_module-loopback.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@disk/$(DEPDIR)/luks_module-AFSplitter.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@disk/$(DEPDIR)/luks_module-luks.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@disk/$(DEPDIR)/lvm_module-lvm.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@disk/$(DEPDIR)/mdraid09_be_module-mdraid_linux_be.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@disk/$(DEPDIR)/mdraid09_module-mdraid_linux.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@disk/$(DEPDIR)/mdraid1x_module-mdraid1x_linux.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@disk/$(DEPDIR)/memdisk_module-memdisk.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@disk/$(DEPDIR)/pata_module-pata.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@disk/$(DEPDIR)/raid5rec_module-raid5_recover.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@disk/$(DEPDIR)/raid6rec_module-raid6_recover.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@disk/$(DEPDIR)/scsi_module-scsi.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@disk/$(DEPDIR)/usbms_module-usbms.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@disk/arc/$(DEPDIR)/kernel_exec-arcdisk.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@disk/efi/$(DEPDIR)/kernel_exec-efidisk.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@disk/i386/pc/$(DEPDIR)/biosdisk_module-biosdisk.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@disk/ieee1275/$(DEPDIR)/kernel_exec-obdisk.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@disk/ieee1275/$(DEPDIR)/kernel_exec-ofdisk.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@disk/ieee1275/$(DEPDIR)/nand_module-nand.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@disk/uboot/$(DEPDIR)/kernel_exec-ubootdisk.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@disk/xen/$(DEPDIR)/kernel_exec-xendisk.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@efiemu/$(DEPDIR)/efiemu_module-loadcore32.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@efiemu/$(DEPDIR)/efiemu_module-loadcore64.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@efiemu/$(DEPDIR)/efiemu_module-loadcore_common.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@efiemu/$(DEPDIR)/efiemu_module-main.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@efiemu/$(DEPDIR)/efiemu_module-mm.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@efiemu/$(DEPDIR)/efiemu_module-pnvram.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@efiemu/$(DEPDIR)/efiemu_module-prepare32.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@efiemu/$(DEPDIR)/efiemu_module-prepare64.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@efiemu/$(DEPDIR)/efiemu_module-symbols.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@efiemu/i386/$(DEPDIR)/efiemu_module-coredetect.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@efiemu/i386/$(DEPDIR)/efiemu_module-loadcore32.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@efiemu/i386/$(DEPDIR)/efiemu_module-loadcore64.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@efiemu/i386/$(DEPDIR)/efiemu_module-nocfgtables.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@efiemu/i386/pc/$(DEPDIR)/efiemu_module-cfgtables.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@font/$(DEPDIR)/font_module-font.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@font/$(DEPDIR)/font_module-font_cmd.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@font/$(DEPDIR)/kernel_exec-font.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@font/$(DEPDIR)/kernel_exec-font_cmd.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@fs/$(DEPDIR)/affs_module-affs.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@fs/$(DEPDIR)/afs_module-afs.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@fs/$(DEPDIR)/archelp_module-archelp.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@fs/$(DEPDIR)/bfs_module-bfs.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@fs/$(DEPDIR)/btrfs_module-btrfs.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@fs/$(DEPDIR)/cbfs_module-cbfs.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@fs/$(DEPDIR)/cpio_be_module-cpio_be.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@fs/$(DEPDIR)/cpio_module-cpio.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@fs/$(DEPDIR)/exfat_module-exfat.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@fs/$(DEPDIR)/ext2_module-ext2.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@fs/$(DEPDIR)/f2fs_module-f2fs.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@fs/$(DEPDIR)/fat_module-fat.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@fs/$(DEPDIR)/fshelp_module-fshelp.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@fs/$(DEPDIR)/hfs_module-hfs.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@fs/$(DEPDIR)/hfsplus_module-hfsplus.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@fs/$(DEPDIR)/hfspluscomp_module-hfspluscomp.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@fs/$(DEPDIR)/iso9660_module-iso9660.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@fs/$(DEPDIR)/jfs_module-jfs.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@fs/$(DEPDIR)/minix2_be_module-minix2_be.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@fs/$(DEPDIR)/minix2_module-minix2.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@fs/$(DEPDIR)/minix3_be_module-minix3_be.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@fs/$(DEPDIR)/minix3_module-minix3.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@fs/$(DEPDIR)/minix_be_module-minix_be.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@fs/$(DEPDIR)/minix_module-minix.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@fs/$(DEPDIR)/newc_module-newc.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@fs/$(DEPDIR)/nilfs2_module-nilfs2.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@fs/$(DEPDIR)/ntfs_module-ntfs.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@fs/$(DEPDIR)/ntfscomp_module-ntfscomp.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@fs/$(DEPDIR)/odc_module-odc.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@fs/$(DEPDIR)/procfs_module-proc.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@fs/$(DEPDIR)/reiserfs_module-reiserfs.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@fs/$(DEPDIR)/romfs_module-romfs.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@fs/$(DEPDIR)/sfs_module-sfs.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@fs/$(DEPDIR)/squash4_module-squash4.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@fs/$(DEPDIR)/tar_module-tar.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@fs/$(DEPDIR)/udf_module-udf.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@fs/$(DEPDIR)/ufs1_be_module-ufs_be.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@fs/$(DEPDIR)/ufs1_module-ufs.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@fs/$(DEPDIR)/ufs2_module-ufs2.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@fs/$(DEPDIR)/xfs_module-xfs.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@fs/zfs/$(DEPDIR)/zfs_module-zfs.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@fs/zfs/$(DEPDIR)/zfs_module-zfs_fletcher.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@fs/zfs/$(DEPDIR)/zfs_module-zfs_lz4.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@fs/zfs/$(DEPDIR)/zfs_module-zfs_lzjb.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@fs/zfs/$(DEPDIR)/zfs_module-zfs_sha256.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@fs/zfs/$(DEPDIR)/zfscrypt_module-zfscrypt.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@fs/zfs/$(DEPDIR)/zfsinfo_module-zfsinfo.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@gdb/$(DEPDIR)/gdb_module-cstub.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@gdb/$(DEPDIR)/gdb_module-gdb.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@gdb/i386/$(DEPDIR)/gdb_module-idt.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@gdb/i386/$(DEPDIR)/gdb_module-machdep.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@gdb/i386/$(DEPDIR)/gdb_module-signal.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@gettext/$(DEPDIR)/gettext_module-gettext.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@gfxmenu/$(DEPDIR)/gfxmenu_module-font.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@gfxmenu/$(DEPDIR)/gfxmenu_module-gfxmenu.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@gfxmenu/$(DEPDIR)/gfxmenu_module-gui_box.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@gfxmenu/$(DEPDIR)/gfxmenu_module-gui_canvas.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@gfxmenu/$(DEPDIR)/gfxmenu_module-gui_circular_progress.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@gfxmenu/$(DEPDIR)/gfxmenu_module-gui_image.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@gfxmenu/$(DEPDIR)/gfxmenu_module-gui_label.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@gfxmenu/$(DEPDIR)/gfxmenu_module-gui_list.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@gfxmenu/$(DEPDIR)/gfxmenu_module-gui_progress_bar.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@gfxmenu/$(DEPDIR)/gfxmenu_module-gui_string_util.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@gfxmenu/$(DEPDIR)/gfxmenu_module-gui_util.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@gfxmenu/$(DEPDIR)/gfxmenu_module-icon_manager.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@gfxmenu/$(DEPDIR)/gfxmenu_module-theme_loader.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@gfxmenu/$(DEPDIR)/gfxmenu_module-view.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@gfxmenu/$(DEPDIR)/gfxmenu_module-widget-box.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@hello/$(DEPDIR)/hello_module-hello.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@hook/$(DEPDIR)/datehook_module-datehook.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@io/$(DEPDIR)/bufio_module-bufio.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@io/$(DEPDIR)/gzio_module-gzio.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@io/$(DEPDIR)/kernel_exec-bufio.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@io/$(DEPDIR)/lzopio_module-lzopio.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@io/$(DEPDIR)/offsetio_module-offset.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@io/$(DEPDIR)/xzio_module-xzio.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@kern/$(DEPDIR)/acpi_module-acpi.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@kern/$(DEPDIR)/elf_module-elf.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@kern/$(DEPDIR)/kernel_exec-acpi.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@kern/$(DEPDIR)/kernel_exec-command.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@kern/$(DEPDIR)/kernel_exec-compiler-rt.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@kern/$(DEPDIR)/kernel_exec-corecmd.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@kern/$(DEPDIR)/kernel_exec-device.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@kern/$(DEPDIR)/kernel_exec-disk.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@kern/$(DEPDIR)/kernel_exec-dl.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@kern/$(DEPDIR)/kernel_exec-env.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@kern/$(DEPDIR)/kernel_exec-err.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@kern/$(DEPDIR)/kernel_exec-file.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@kern/$(DEPDIR)/kernel_exec-fs.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@kern/$(DEPDIR)/kernel_exec-list.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@kern/$(DEPDIR)/kernel_exec-main.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@kern/$(DEPDIR)/kernel_exec-misc.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@kern/$(DEPDIR)/kernel_exec-mm.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@kern/$(DEPDIR)/kernel_exec-parser.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@kern/$(DEPDIR)/kernel_exec-partition.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@kern/$(DEPDIR)/kernel_exec-rescue_parser.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@kern/$(DEPDIR)/kernel_exec-rescue_reader.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@kern/$(DEPDIR)/kernel_exec-term.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@kern/$(DEPDIR)/kernel_exec-time.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@kern/$(DEPDIR)/kernel_exec-vga_init.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@kern/$(DEPDIR)/xz_decompress_image-compiler-rt.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@kern/arm/$(DEPDIR)/kernel_exec-cache.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@kern/arm/$(DEPDIR)/kernel_exec-cache_armv6.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@kern/arm/$(DEPDIR)/kernel_exec-cache_armv7.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@kern/arm/$(DEPDIR)/kernel_exec-compiler-rt.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@kern/arm/$(DEPDIR)/kernel_exec-dl.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@kern/arm/$(DEPDIR)/kernel_exec-dl_helper.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@kern/arm/$(DEPDIR)/kernel_exec-startup.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@kern/arm/coreboot/$(DEPDIR)/kernel_exec-cbtable.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@kern/arm/coreboot/$(DEPDIR)/kernel_exec-coreboot.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@kern/arm/coreboot/$(DEPDIR)/kernel_exec-dma.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@kern/arm/coreboot/$(DEPDIR)/kernel_exec-init.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@kern/arm/coreboot/$(DEPDIR)/kernel_exec-timer.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@kern/arm/efi/$(DEPDIR)/kernel_exec-init.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@kern/arm/efi/$(DEPDIR)/kernel_exec-startup.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@kern/arm/uboot/$(DEPDIR)/kernel_exec-init.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@kern/arm/uboot/$(DEPDIR)/kernel_exec-uboot.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@kern/arm64/$(DEPDIR)/kernel_exec-cache.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@kern/arm64/$(DEPDIR)/kernel_exec-cache_flush.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@kern/arm64/$(DEPDIR)/kernel_exec-dl.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@kern/arm64/$(DEPDIR)/kernel_exec-dl_helper.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@kern/arm64/efi/$(DEPDIR)/kernel_exec-init.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@kern/arm64/efi/$(DEPDIR)/kernel_exec-startup.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@kern/coreboot/$(DEPDIR)/cbtable_module-cbtable.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@kern/coreboot/$(DEPDIR)/kernel_exec-cbtable.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@kern/coreboot/$(DEPDIR)/kernel_exec-mmap.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@kern/efi/$(DEPDIR)/kernel_exec-acpi.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@kern/efi/$(DEPDIR)/kernel_exec-efi.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@kern/efi/$(DEPDIR)/kernel_exec-fdt.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@kern/efi/$(DEPDIR)/kernel_exec-init.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@kern/efi/$(DEPDIR)/kernel_exec-mm.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@kern/emu/$(DEPDIR)/grub_emu-full.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@kern/emu/$(DEPDIR)/grub_emu_lite-lite.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@kern/emu/$(DEPDIR)/kernel_exec-argp_common.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@kern/emu/$(DEPDIR)/kernel_exec-cache.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@kern/emu/$(DEPDIR)/kernel_exec-cache_s.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@kern/emu/$(DEPDIR)/kernel_exec-hostdisk.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@kern/emu/$(DEPDIR)/kernel_exec-hostfs.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@kern/emu/$(DEPDIR)/kernel_exec-main.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@kern/emu/$(DEPDIR)/kernel_exec-misc.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@kern/emu/$(DEPDIR)/kernel_exec-mm.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@kern/emu/$(DEPDIR)/kernel_exec-time.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@kern/generic/$(DEPDIR)/kernel_exec-millisleep.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@kern/generic/$(DEPDIR)/kernel_exec-rtc_get_time_ms.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@kern/i386/$(DEPDIR)/kernel_exec-dl.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@kern/i386/$(DEPDIR)/kernel_exec-multiboot_mmap.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@kern/i386/$(DEPDIR)/kernel_exec-tsc.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@kern/i386/$(DEPDIR)/kernel_exec-tsc_pit.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@kern/i386/$(DEPDIR)/kernel_exec-tsc_pmtimer.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@kern/i386/$(DEPDIR)/random_module-tsc_pmtimer.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@kern/i386/coreboot/$(DEPDIR)/cbtable_module-cbtable.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@kern/i386/coreboot/$(DEPDIR)/kernel_exec-cbtable.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@kern/i386/coreboot/$(DEPDIR)/kernel_exec-init.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@kern/i386/coreboot/$(DEPDIR)/kernel_exec-startup.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@kern/i386/efi/$(DEPDIR)/kernel_exec-init.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@kern/i386/efi/$(DEPDIR)/kernel_exec-startup.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@kern/i386/efi/$(DEPDIR)/kernel_exec-tsc.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@kern/i386/ieee1275/$(DEPDIR)/kernel_exec-startup.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@kern/i386/pc/$(DEPDIR)/acpi_module-acpi.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@kern/i386/pc/$(DEPDIR)/kernel_exec-acpi.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@kern/i386/pc/$(DEPDIR)/kernel_exec-init.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@kern/i386/pc/$(DEPDIR)/kernel_exec-mmap.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@kern/i386/pc/$(DEPDIR)/kernel_exec-startup.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@kern/i386/qemu/$(DEPDIR)/kernel_exec-init.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@kern/i386/qemu/$(DEPDIR)/kernel_exec-mmap.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@kern/i386/qemu/$(DEPDIR)/kernel_exec-startup.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@kern/i386/xen/$(DEPDIR)/kernel_exec-hypercall.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@kern/i386/xen/$(DEPDIR)/kernel_exec-pvh.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@kern/i386/xen/$(DEPDIR)/kernel_exec-startup.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@kern/i386/xen/$(DEPDIR)/kernel_exec-startup_pvh.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@kern/i386/xen/$(DEPDIR)/kernel_exec-tsc.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@kern/ia64/$(DEPDIR)/kernel_exec-cache.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@kern/ia64/$(DEPDIR)/kernel_exec-dl.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@kern/ia64/$(DEPDIR)/kernel_exec-dl_helper.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@kern/ia64/efi/$(DEPDIR)/kernel_exec-init.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@kern/ia64/efi/$(DEPDIR)/kernel_exec-startup.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@kern/ieee1275/$(DEPDIR)/kernel_exec-cmain.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@kern/ieee1275/$(DEPDIR)/kernel_exec-ieee1275.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@kern/ieee1275/$(DEPDIR)/kernel_exec-init.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@kern/ieee1275/$(DEPDIR)/kernel_exec-mmap.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@kern/ieee1275/$(DEPDIR)/kernel_exec-openfw.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@kern/mips/$(DEPDIR)/kernel_exec-cache.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@kern/mips/$(DEPDIR)/kernel_exec-dl.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@kern/mips/$(DEPDIR)/kernel_exec-init.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@kern/mips/$(DEPDIR)/kernel_exec-startup.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@kern/mips/arc/$(DEPDIR)/kernel_exec-init.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@kern/mips/loongson/$(DEPDIR)/kernel_exec-init.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@kern/mips/qemu_mips/$(DEPDIR)/kernel_exec-init.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@kern/powerpc/$(DEPDIR)/kernel_exec-cache.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@kern/powerpc/$(DEPDIR)/kernel_exec-compiler-rt.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@kern/powerpc/$(DEPDIR)/kernel_exec-dl.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@kern/powerpc/ieee1275/$(DEPDIR)/kernel_exec-startup.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@kern/riscv/$(DEPDIR)/kernel_exec-cache.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@kern/riscv/$(DEPDIR)/kernel_exec-cache_flush.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@kern/riscv/$(DEPDIR)/kernel_exec-dl.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@kern/riscv/efi/$(DEPDIR)/kernel_exec-init.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@kern/riscv/efi/$(DEPDIR)/kernel_exec-startup.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@kern/sparc64/$(DEPDIR)/kernel_exec-cache.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@kern/sparc64/$(DEPDIR)/kernel_exec-dl.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@kern/sparc64/ieee1275/$(DEPDIR)/kernel_exec-crt0.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@kern/sparc64/ieee1275/$(DEPDIR)/kernel_exec-ieee1275.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@kern/uboot/$(DEPDIR)/kernel_exec-hw.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@kern/uboot/$(DEPDIR)/kernel_exec-init.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@kern/uboot/$(DEPDIR)/kernel_exec-uboot.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@kern/x86_64/$(DEPDIR)/kernel_exec-dl.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@kern/x86_64/efi/$(DEPDIR)/kernel_exec-callwrap.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@kern/x86_64/efi/$(DEPDIR)/kernel_exec-startup.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@kern/x86_64/xen/$(DEPDIR)/kernel_exec-hypercall.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@kern/x86_64/xen/$(DEPDIR)/kernel_exec-startup.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@kern/xen/$(DEPDIR)/kernel_exec-init.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@lib/$(DEPDIR)/adler32_module-adler32.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@lib/$(DEPDIR)/all_video_module-fake_module.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@lib/$(DEPDIR)/backtrace_module-backtrace.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@lib/$(DEPDIR)/btrfs_module-crc.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@lib/$(DEPDIR)/chain_module-LzmaDec.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@lib/$(DEPDIR)/crc64_module-crc64.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@lib/$(DEPDIR)/crypto_module-crypto.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@lib/$(DEPDIR)/datetime_module-cmos_datetime.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@lib/$(DEPDIR)/disk_module-disk.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@lib/$(DEPDIR)/div_module-division.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@lib/$(DEPDIR)/extcmd_module-arg.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@lib/$(DEPDIR)/fdt_module-fdt.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@lib/$(DEPDIR)/hexdump_module-hexdump.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@lib/$(DEPDIR)/kernel_exec-arg.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@lib/$(DEPDIR)/kernel_exec-division.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@lib/$(DEPDIR)/kernel_exec-fdt.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@lib/$(DEPDIR)/legacycfg_module-legacy_parse.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@lib/$(DEPDIR)/linux_module-cmdline.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@lib/$(DEPDIR)/loadenv_module-envblk.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@lib/$(DEPDIR)/normal_module-getline.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@lib/$(DEPDIR)/pbkdf2_module-pbkdf2.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@lib/$(DEPDIR)/priority_queue_module-priority_queue.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@lib/$(DEPDIR)/progress_module-progress.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@lib/$(DEPDIR)/random_module-random.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@lib/$(DEPDIR)/relocator_module-relocator.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@lib/$(DEPDIR)/setjmp_module-setjmp.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@lib/$(DEPDIR)/syslinuxcfg_module-syslinux_parse.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@lib/arc/$(DEPDIR)/datetime_module-datetime.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@lib/dummy/$(DEPDIR)/datetime_module-datetime.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@lib/dummy/$(DEPDIR)/halt_module-halt.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@lib/dummy/$(DEPDIR)/reboot_module-reboot.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@lib/efi/$(DEPDIR)/datetime_module-datetime.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@lib/efi/$(DEPDIR)/halt_module-halt.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@lib/efi/$(DEPDIR)/relocator_module-relocator.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@lib/emu/$(DEPDIR)/halt_module-halt.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@lib/gnulib/$(DEPDIR)/regexp_module-regex.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@lib/i386/$(DEPDIR)/backtrace_module-backtrace.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@lib/i386/$(DEPDIR)/halt_module-halt.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@lib/i386/$(DEPDIR)/random_module-random.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@lib/i386/$(DEPDIR)/reboot_module-reboot.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@lib/i386/$(DEPDIR)/reboot_module-reboot_trampoline.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@lib/i386/$(DEPDIR)/relocator_module-relocator.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@lib/i386/$(DEPDIR)/relocator_module-relocator16.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@lib/i386/$(DEPDIR)/relocator_module-relocator32.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@lib/i386/$(DEPDIR)/relocator_module-relocator64.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@lib/i386/$(DEPDIR)/relocator_module-relocator_asm.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@lib/i386/$(DEPDIR)/relocator_module-relocator_common_c.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@lib/i386/pc/$(DEPDIR)/boot_module-biosnum.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@lib/i386/pc/$(DEPDIR)/legacycfg_module-vesa_modes_table.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@lib/i386/pc/$(DEPDIR)/linux_module-vesa_modes_table.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@lib/i386/xen/$(DEPDIR)/relocator_module-relocator.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@lib/ieee1275/$(DEPDIR)/datetime_module-cmos.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@lib/ieee1275/$(DEPDIR)/datetime_module-datetime.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@lib/ieee1275/$(DEPDIR)/halt_module-halt.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@lib/ieee1275/$(DEPDIR)/reboot_module-reboot.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@lib/ieee1275/$(DEPDIR)/relocator_module-relocator.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_arcfour_module-arcfour.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_blowfish_module-blowfish.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_camellia_module-camellia-glue.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_camellia_module-camellia.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_cast5_module-cast5.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_crc_module-crc.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_des_module-des.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_dsa_module-dsa.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_idea_module-idea.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_md4_module-md4.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_md5_module-md5.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_rfc2268_module-rfc2268.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_rijndael_module-rijndael.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_rmd160_module-rmd160.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_rsa_module-rsa.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_seed_module-seed.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_serpent_module-serpent.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_sha1_module-sha1.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_sha256_module-sha256.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_sha512_module-sha512.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_tiger_module-tiger.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_twofish_module-twofish.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_whirlpool_module-whirlpool.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpi-add.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpi-bit.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpi-cmp.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpi-div.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpi-gcd.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpi-inline.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpi-inv.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpi-mod.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpi-mpow.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpi-mul.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpi-pow.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpicoder.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpih-add1.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpih-div.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpih-lshift.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpih-mul.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpih-mul1.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpih-mul2.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpih-mul3.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpih-rshift.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpih-sub1.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpiutil.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@lib/libgcrypt_wrap/$(DEPDIR)/mpi_module-mem.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@lib/minilzo/$(DEPDIR)/lzopio_module-minilzo.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@lib/mips/$(DEPDIR)/relocator_module-relocator.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@lib/mips/$(DEPDIR)/relocator_module-relocator_asm.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@lib/mips/arc/$(DEPDIR)/reboot_module-reboot.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@lib/mips/loongson/$(DEPDIR)/reboot_module-reboot.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@lib/mips/qemu_mips/$(DEPDIR)/reboot_module-reboot.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@lib/powerpc/$(DEPDIR)/relocator_module-relocator.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@lib/powerpc/$(DEPDIR)/relocator_module-relocator_asm.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@lib/uboot/$(DEPDIR)/reboot_module-reboot.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@lib/x86_64/$(DEPDIR)/relocator_module-relocator_asm.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@lib/x86_64/efi/$(DEPDIR)/relocator_module-relocator.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@lib/x86_64/xen/$(DEPDIR)/relocator_module-relocator.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@lib/xen/$(DEPDIR)/datetime_module-datetime.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@lib/xen/$(DEPDIR)/halt_module-halt.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@lib/xen/$(DEPDIR)/reboot_module-reboot.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@lib/xen/$(DEPDIR)/relocator_module-relocator.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@lib/xzembed/$(DEPDIR)/xz_decompress_image-xz_dec_bcj.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@lib/xzembed/$(DEPDIR)/xz_decompress_image-xz_dec_lzma2.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@lib/xzembed/$(DEPDIR)/xz_decompress_image-xz_dec_stream.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@lib/xzembed/$(DEPDIR)/xzio_module-xz_dec_bcj.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@lib/xzembed/$(DEPDIR)/xzio_module-xz_dec_lzma2.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@lib/xzembed/$(DEPDIR)/xzio_module-xz_dec_stream.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@lib/zstd/$(DEPDIR)/zstd_module-debug.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@lib/zstd/$(DEPDIR)/zstd_module-entropy_common.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@lib/zstd/$(DEPDIR)/zstd_module-error_private.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@lib/zstd/$(DEPDIR)/zstd_module-fse_decompress.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@lib/zstd/$(DEPDIR)/zstd_module-huf_decompress.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@lib/zstd/$(DEPDIR)/zstd_module-module.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@lib/zstd/$(DEPDIR)/zstd_module-xxhash.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@lib/zstd/$(DEPDIR)/zstd_module-zstd_common.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@lib/zstd/$(DEPDIR)/zstd_module-zstd_decompress.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@loader/$(DEPDIR)/aout_module-aout.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@loader/$(DEPDIR)/linux_module-linux.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@loader/$(DEPDIR)/macho_module-lzss.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@loader/$(DEPDIR)/macho_module-macho.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@loader/$(DEPDIR)/macho_module-macho32.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@loader/$(DEPDIR)/macho_module-macho64.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@loader/$(DEPDIR)/multiboot2_module-multiboot.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@loader/$(DEPDIR)/multiboot2_module-multiboot_mbi2.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@loader/$(DEPDIR)/multiboot_module-multiboot.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@loader/$(DEPDIR)/xnu_module-xnu.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@loader/$(DEPDIR)/xnu_module-xnu_resume.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@loader/arm/$(DEPDIR)/linux_module-linux.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@loader/arm64/$(DEPDIR)/linux_module-linux.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@loader/arm64/$(DEPDIR)/xen_boot_module-xen_boot.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@loader/efi/$(DEPDIR)/appleldr_module-appleloader.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@loader/efi/$(DEPDIR)/chain_module-chainloader.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@loader/efi/$(DEPDIR)/fdt_module-fdt.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@loader/i386/$(DEPDIR)/bsd_module-bsd.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@loader/i386/$(DEPDIR)/bsd_module-bsd32.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@loader/i386/$(DEPDIR)/bsd_module-bsd64.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@loader/i386/$(DEPDIR)/file_module-xen_file.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@loader/i386/$(DEPDIR)/file_module-xen_file32.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@loader/i386/$(DEPDIR)/file_module-xen_file64.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@loader/i386/$(DEPDIR)/linux_module-linux.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@loader/i386/$(DEPDIR)/linux_module-xen.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@loader/i386/$(DEPDIR)/multiboot_module-multiboot_mbi.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@loader/i386/$(DEPDIR)/xnu_module-xnu.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@loader/i386/coreboot/$(DEPDIR)/chain_module-chainloader.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@loader/i386/pc/$(DEPDIR)/chain_module-chainloader.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@loader/i386/pc/$(DEPDIR)/freedos_module-freedos.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@loader/i386/pc/$(DEPDIR)/linux16_module-linux.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@loader/i386/pc/$(DEPDIR)/ntldr_module-ntldr.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@loader/i386/pc/$(DEPDIR)/plan9_module-plan9.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@loader/i386/pc/$(DEPDIR)/pxechain_module-pxechainloader.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@loader/i386/pc/$(DEPDIR)/truecrypt_module-truecrypt.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@loader/ia64/efi/$(DEPDIR)/linux_module-linux.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@loader/mips/$(DEPDIR)/linux_module-linux.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@loader/powerpc/ieee1275/$(DEPDIR)/linux_module-linux.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@loader/riscv/$(DEPDIR)/linux_module-linux.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@loader/sparc64/ieee1275/$(DEPDIR)/linux_module-linux.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@mmap/$(DEPDIR)/mmap_module-mmap.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@mmap/efi/$(DEPDIR)/mmap_module-mmap.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@mmap/i386/$(DEPDIR)/mmap_module-mmap.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@mmap/i386/$(DEPDIR)/mmap_module-uppermem.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@mmap/i386/pc/$(DEPDIR)/mmap_module-mmap.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@mmap/i386/pc/$(DEPDIR)/mmap_module-mmap_helper.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@mmap/mips/$(DEPDIR)/mmap_module-uppermem.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@net/$(DEPDIR)/http_module-http.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@net/$(DEPDIR)/net_module-arp.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@net/$(DEPDIR)/net_module-bootp.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@net/$(DEPDIR)/net_module-dns.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@net/$(DEPDIR)/net_module-ethernet.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@net/$(DEPDIR)/net_module-icmp.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@net/$(DEPDIR)/net_module-icmp6.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@net/$(DEPDIR)/net_module-ip.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@net/$(DEPDIR)/net_module-net.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@net/$(DEPDIR)/net_module-netbuff.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@net/$(DEPDIR)/net_module-tcp.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@net/$(DEPDIR)/net_module-udp.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@net/$(DEPDIR)/tftp_module-tftp.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@net/drivers/efi/$(DEPDIR)/efinet_module-efinet.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@net/drivers/emu/$(DEPDIR)/emunet_module-emunet.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@net/drivers/i386/pc/$(DEPDIR)/pxe_module-pxe.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@net/drivers/ieee1275/$(DEPDIR)/ofnet_module-ofnet.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@net/drivers/uboot/$(DEPDIR)/ubootnet_module-ubootnet.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@normal/$(DEPDIR)/normal_module-auth.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@normal/$(DEPDIR)/normal_module-autofs.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@normal/$(DEPDIR)/normal_module-charset.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@normal/$(DEPDIR)/normal_module-cmdline.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@normal/$(DEPDIR)/normal_module-color.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@normal/$(DEPDIR)/normal_module-completion.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@normal/$(DEPDIR)/normal_module-context.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@normal/$(DEPDIR)/normal_module-crypto.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@normal/$(DEPDIR)/normal_module-datetime.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@normal/$(DEPDIR)/normal_module-dyncmd.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@normal/$(DEPDIR)/normal_module-main.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@normal/$(DEPDIR)/normal_module-menu.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@normal/$(DEPDIR)/normal_module-menu_entry.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@normal/$(DEPDIR)/normal_module-menu_text.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@normal/$(DEPDIR)/normal_module-misc.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@normal/$(DEPDIR)/normal_module-term.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@osdep/$(DEPDIR)/kernel_exec-cputime.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@osdep/$(DEPDIR)/kernel_exec-dl.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@osdep/$(DEPDIR)/kernel_exec-emuconsole.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@osdep/$(DEPDIR)/kernel_exec-emunet.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@osdep/$(DEPDIR)/kernel_exec-exec.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@osdep/$(DEPDIR)/kernel_exec-hostdisk.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@osdep/$(DEPDIR)/kernel_exec-init.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@osdep/$(DEPDIR)/kernel_exec-sleep.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@osdep/devmapper/$(DEPDIR)/kernel_exec-hostdisk.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@osdep/unix/$(DEPDIR)/kernel_exec-hostdisk.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@partmap/$(DEPDIR)/part_acorn_module-acorn.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@partmap/$(DEPDIR)/part_amiga_module-amiga.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@partmap/$(DEPDIR)/part_apple_module-apple.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@partmap/$(DEPDIR)/part_bsd_module-bsdlabel.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@partmap/$(DEPDIR)/part_dfly_module-dfly.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@partmap/$(DEPDIR)/part_dvh_module-dvh.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@partmap/$(DEPDIR)/part_gpt_module-gpt.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@partmap/$(DEPDIR)/part_msdos_module-msdos.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@partmap/$(DEPDIR)/part_plan_module-plan.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@partmap/$(DEPDIR)/part_sun_module-sun.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@partmap/$(DEPDIR)/part_sunpc_module-sunpc.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@parttool/$(DEPDIR)/msdospart_module-msdospart.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@script/$(DEPDIR)/normal_module-argv.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@script/$(DEPDIR)/normal_module-execute.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@script/$(DEPDIR)/normal_module-function.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@script/$(DEPDIR)/normal_module-lexer.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@script/$(DEPDIR)/normal_module-main.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@script/$(DEPDIR)/normal_module-script.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@term/$(DEPDIR)/at_keyboard_module-at_keyboard.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@term/$(DEPDIR)/at_keyboard_module-ps2.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@term/$(DEPDIR)/gfxterm_background_module-gfxterm_background.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@term/$(DEPDIR)/gfxterm_module-gfxterm.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@term/$(DEPDIR)/kernel_exec-at_keyboard.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@term/$(DEPDIR)/kernel_exec-gfxterm.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@term/$(DEPDIR)/kernel_exec-ns8250.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@term/$(DEPDIR)/kernel_exec-ps2.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@term/$(DEPDIR)/kernel_exec-serial.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@term/$(DEPDIR)/kernel_exec-terminfo.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@term/$(DEPDIR)/kernel_exec-tparm.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@term/$(DEPDIR)/morse_module-morse.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@term/$(DEPDIR)/serial_module-ns8250.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@term/$(DEPDIR)/serial_module-serial.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@term/$(DEPDIR)/spkmodem_module-spkmodem.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@term/$(DEPDIR)/terminfo_module-terminfo.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@term/$(DEPDIR)/terminfo_module-tparm.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@term/$(DEPDIR)/usb_keyboard_module-usb_keyboard.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@term/arc/$(DEPDIR)/kernel_exec-console.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@term/arc/$(DEPDIR)/serial_module-serial.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@term/arm/$(DEPDIR)/kernel_exec-cros.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@term/arm/$(DEPDIR)/kernel_exec-cros_ec.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@term/arm/$(DEPDIR)/kernel_exec-pl050.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@term/efi/$(DEPDIR)/kernel_exec-console.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@term/efi/$(DEPDIR)/serial_module-serial.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@term/i386/coreboot/$(DEPDIR)/cbmemc_module-cbmemc.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@term/i386/pc/$(DEPDIR)/kernel_exec-console.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@term/i386/pc/$(DEPDIR)/kernel_exec-vga_text.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@term/i386/pc/$(DEPDIR)/mda_text_module-mda_text.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@term/i386/pc/$(DEPDIR)/vga_text_module-vga_text.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@term/ieee1275/$(DEPDIR)/escc_module-escc.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@term/ieee1275/$(DEPDIR)/kernel_exec-console.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@term/ieee1275/$(DEPDIR)/serial_module-serial.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@term/uboot/$(DEPDIR)/kernel_exec-console.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@term/xen/$(DEPDIR)/kernel_exec-console.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@tests/$(DEPDIR)/bswap_test_module-bswap_test.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@tests/$(DEPDIR)/cmdline_cat_test_module-cmdline_cat_test.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@tests/$(DEPDIR)/cmp_test_module-cmp_test.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@tests/$(DEPDIR)/ctz_test_module-ctz_test.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@tests/$(DEPDIR)/div_test_module-div_test.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@tests/$(DEPDIR)/exfctest_module-example_functional_test.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@tests/$(DEPDIR)/functional_test_module-fake_input.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@tests/$(DEPDIR)/functional_test_module-video_checksum.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@tests/$(DEPDIR)/gfxterm_menu_module-gfxterm_menu.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@tests/$(DEPDIR)/legacy_password_test_module-legacy_password_test.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@tests/$(DEPDIR)/mul_test_module-mul_test.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@tests/$(DEPDIR)/pbkdf2_test_module-pbkdf2_test.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@tests/$(DEPDIR)/setjmp_test_module-setjmp_test.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@tests/$(DEPDIR)/shift_test_module-shift_test.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@tests/$(DEPDIR)/signature_test_module-signature_test.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@tests/$(DEPDIR)/sleep_test_module-sleep_test.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@tests/$(DEPDIR)/strtoull_test_module-strtoull_test.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@tests/$(DEPDIR)/test_blockarg_module-test_blockarg.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@tests/$(DEPDIR)/videotest_checksum_module-videotest_checksum.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@tests/$(DEPDIR)/xnu_uuid_test_module-xnu_uuid_test.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@tests/lib/$(DEPDIR)/functional_test_module-functional_test.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@tests/lib/$(DEPDIR)/functional_test_module-test.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@video/$(DEPDIR)/bitmap_module-bitmap.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@video/$(DEPDIR)/bitmap_scale_module-bitmap_scale.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@video/$(DEPDIR)/efi_gop_module-efi_gop.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@video/$(DEPDIR)/efi_uga_module-efi_uga.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@video/$(DEPDIR)/functional_test_module-capture.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@video/$(DEPDIR)/ieee1275_fb_module-ieee1275.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@video/$(DEPDIR)/kernel_exec-radeon_fuloong2e.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@video/$(DEPDIR)/kernel_exec-radeon_yeeloong3a.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@video/$(DEPDIR)/kernel_exec-sis315pro.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@video/$(DEPDIR)/kernel_exec-sm712.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@video/$(DEPDIR)/kernel_exec-video.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@video/$(DEPDIR)/video_bochs_module-bochs.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@video/$(DEPDIR)/video_cirrus_module-cirrus.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@video/$(DEPDIR)/video_colors_module-colors.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@video/$(DEPDIR)/video_module-video.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@video/coreboot/$(DEPDIR)/kernel_exec-cbfb.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@video/emu/$(DEPDIR)/sdl_module-sdl.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@video/fb/$(DEPDIR)/kernel_exec-fbblit.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@video/fb/$(DEPDIR)/kernel_exec-fbfill.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@video/fb/$(DEPDIR)/kernel_exec-fbutil.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@video/fb/$(DEPDIR)/kernel_exec-video_fb.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@video/fb/$(DEPDIR)/video_fb_module-fbblit.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@video/fb/$(DEPDIR)/video_fb_module-fbfill.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@video/fb/$(DEPDIR)/video_fb_module-fbutil.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@video/fb/$(DEPDIR)/video_fb_module-video_fb.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@video/i386/pc/$(DEPDIR)/vbe_module-vbe.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@video/i386/pc/$(DEPDIR)/vga_module-vga.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@video/readers/$(DEPDIR)/jpeg_module-jpeg.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@video/readers/$(DEPDIR)/png_module-png.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@video/readers/$(DEPDIR)/tga_module-tga.Po@am__quote@ - -.S.o: -@am__fastdepCCAS_TRUE@ $(AM_V_CPPAS)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.o$$||'`;\ -@am__fastdepCCAS_TRUE@ $(CPPASCOMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ $< &&\ -@am__fastdepCCAS_TRUE@ $(am__mv) $$depbase.Tpo $$depbase.Po -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ DEPDIR=$(DEPDIR) $(CCASDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS@am__nodep@)$(CPPASCOMPILE) -c -o $@ $< - -.S.obj: -@am__fastdepCCAS_TRUE@ $(AM_V_CPPAS)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.obj$$||'`;\ -@am__fastdepCCAS_TRUE@ $(CPPASCOMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ `$(CYGPATH_W) '$<'` &&\ -@am__fastdepCCAS_TRUE@ $(am__mv) $$depbase.Tpo $$depbase.Po -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ DEPDIR=$(DEPDIR) $(CCASDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS@am__nodep@)$(CPPASCOMPILE) -c -o $@ `$(CYGPATH_W) '$<'` - -boot/i386/pc/boot_image-boot.o: boot/i386/pc/boot.S -@am__fastdepCCAS_TRUE@ $(AM_V_CPPAS)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(boot_image_CPPFLAGS) $(CPPFLAGS) $(boot_image_CCASFLAGS) $(CCASFLAGS) -MT boot/i386/pc/boot_image-boot.o -MD -MP -MF boot/i386/pc/$(DEPDIR)/boot_image-boot.Tpo -c -o boot/i386/pc/boot_image-boot.o `test -f 'boot/i386/pc/boot.S' || echo '$(srcdir)/'`boot/i386/pc/boot.S -@am__fastdepCCAS_TRUE@ $(AM_V_at)$(am__mv) boot/i386/pc/$(DEPDIR)/boot_image-boot.Tpo boot/i386/pc/$(DEPDIR)/boot_image-boot.Po -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS)source='boot/i386/pc/boot.S' object='boot/i386/pc/boot_image-boot.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ DEPDIR=$(DEPDIR) $(CCASDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS@am__nodep@)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(boot_image_CPPFLAGS) $(CPPFLAGS) $(boot_image_CCASFLAGS) $(CCASFLAGS) -c -o boot/i386/pc/boot_image-boot.o `test -f 'boot/i386/pc/boot.S' || echo '$(srcdir)/'`boot/i386/pc/boot.S - -boot/i386/pc/boot_image-boot.obj: boot/i386/pc/boot.S -@am__fastdepCCAS_TRUE@ $(AM_V_CPPAS)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(boot_image_CPPFLAGS) $(CPPFLAGS) $(boot_image_CCASFLAGS) $(CCASFLAGS) -MT boot/i386/pc/boot_image-boot.obj -MD -MP -MF boot/i386/pc/$(DEPDIR)/boot_image-boot.Tpo -c -o boot/i386/pc/boot_image-boot.obj `if test -f 'boot/i386/pc/boot.S'; then $(CYGPATH_W) 'boot/i386/pc/boot.S'; else $(CYGPATH_W) '$(srcdir)/boot/i386/pc/boot.S'; fi` -@am__fastdepCCAS_TRUE@ $(AM_V_at)$(am__mv) boot/i386/pc/$(DEPDIR)/boot_image-boot.Tpo boot/i386/pc/$(DEPDIR)/boot_image-boot.Po -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS)source='boot/i386/pc/boot.S' object='boot/i386/pc/boot_image-boot.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ DEPDIR=$(DEPDIR) $(CCASDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS@am__nodep@)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(boot_image_CPPFLAGS) $(CPPFLAGS) $(boot_image_CCASFLAGS) $(CCASFLAGS) -c -o boot/i386/pc/boot_image-boot.obj `if test -f 'boot/i386/pc/boot.S'; then $(CYGPATH_W) 'boot/i386/pc/boot.S'; else $(CYGPATH_W) '$(srcdir)/boot/i386/pc/boot.S'; fi` - -boot/i386/qemu/boot_image-boot.o: boot/i386/qemu/boot.S -@am__fastdepCCAS_TRUE@ $(AM_V_CPPAS)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(boot_image_CPPFLAGS) $(CPPFLAGS) $(boot_image_CCASFLAGS) $(CCASFLAGS) -MT boot/i386/qemu/boot_image-boot.o -MD -MP -MF boot/i386/qemu/$(DEPDIR)/boot_image-boot.Tpo -c -o boot/i386/qemu/boot_image-boot.o `test -f 'boot/i386/qemu/boot.S' || echo '$(srcdir)/'`boot/i386/qemu/boot.S -@am__fastdepCCAS_TRUE@ $(AM_V_at)$(am__mv) boot/i386/qemu/$(DEPDIR)/boot_image-boot.Tpo boot/i386/qemu/$(DEPDIR)/boot_image-boot.Po -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS)source='boot/i386/qemu/boot.S' object='boot/i386/qemu/boot_image-boot.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ DEPDIR=$(DEPDIR) $(CCASDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS@am__nodep@)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(boot_image_CPPFLAGS) $(CPPFLAGS) $(boot_image_CCASFLAGS) $(CCASFLAGS) -c -o boot/i386/qemu/boot_image-boot.o `test -f 'boot/i386/qemu/boot.S' || echo '$(srcdir)/'`boot/i386/qemu/boot.S - -boot/i386/qemu/boot_image-boot.obj: boot/i386/qemu/boot.S -@am__fastdepCCAS_TRUE@ $(AM_V_CPPAS)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(boot_image_CPPFLAGS) $(CPPFLAGS) $(boot_image_CCASFLAGS) $(CCASFLAGS) -MT boot/i386/qemu/boot_image-boot.obj -MD -MP -MF boot/i386/qemu/$(DEPDIR)/boot_image-boot.Tpo -c -o boot/i386/qemu/boot_image-boot.obj `if test -f 'boot/i386/qemu/boot.S'; then $(CYGPATH_W) 'boot/i386/qemu/boot.S'; else $(CYGPATH_W) '$(srcdir)/boot/i386/qemu/boot.S'; fi` -@am__fastdepCCAS_TRUE@ $(AM_V_at)$(am__mv) boot/i386/qemu/$(DEPDIR)/boot_image-boot.Tpo boot/i386/qemu/$(DEPDIR)/boot_image-boot.Po -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS)source='boot/i386/qemu/boot.S' object='boot/i386/qemu/boot_image-boot.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ DEPDIR=$(DEPDIR) $(CCASDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS@am__nodep@)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(boot_image_CPPFLAGS) $(CPPFLAGS) $(boot_image_CCASFLAGS) $(CCASFLAGS) -c -o boot/i386/qemu/boot_image-boot.obj `if test -f 'boot/i386/qemu/boot.S'; then $(CYGPATH_W) 'boot/i386/qemu/boot.S'; else $(CYGPATH_W) '$(srcdir)/boot/i386/qemu/boot.S'; fi` - -boot/sparc64/ieee1275/boot_image-boot.o: boot/sparc64/ieee1275/boot.S -@am__fastdepCCAS_TRUE@ $(AM_V_CPPAS)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(boot_image_CPPFLAGS) $(CPPFLAGS) $(boot_image_CCASFLAGS) $(CCASFLAGS) -MT boot/sparc64/ieee1275/boot_image-boot.o -MD -MP -MF boot/sparc64/ieee1275/$(DEPDIR)/boot_image-boot.Tpo -c -o boot/sparc64/ieee1275/boot_image-boot.o `test -f 'boot/sparc64/ieee1275/boot.S' || echo '$(srcdir)/'`boot/sparc64/ieee1275/boot.S -@am__fastdepCCAS_TRUE@ $(AM_V_at)$(am__mv) boot/sparc64/ieee1275/$(DEPDIR)/boot_image-boot.Tpo boot/sparc64/ieee1275/$(DEPDIR)/boot_image-boot.Po -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS)source='boot/sparc64/ieee1275/boot.S' object='boot/sparc64/ieee1275/boot_image-boot.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ DEPDIR=$(DEPDIR) $(CCASDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS@am__nodep@)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(boot_image_CPPFLAGS) $(CPPFLAGS) $(boot_image_CCASFLAGS) $(CCASFLAGS) -c -o boot/sparc64/ieee1275/boot_image-boot.o `test -f 'boot/sparc64/ieee1275/boot.S' || echo '$(srcdir)/'`boot/sparc64/ieee1275/boot.S - -boot/sparc64/ieee1275/boot_image-boot.obj: boot/sparc64/ieee1275/boot.S -@am__fastdepCCAS_TRUE@ $(AM_V_CPPAS)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(boot_image_CPPFLAGS) $(CPPFLAGS) $(boot_image_CCASFLAGS) $(CCASFLAGS) -MT boot/sparc64/ieee1275/boot_image-boot.obj -MD -MP -MF boot/sparc64/ieee1275/$(DEPDIR)/boot_image-boot.Tpo -c -o boot/sparc64/ieee1275/boot_image-boot.obj `if test -f 'boot/sparc64/ieee1275/boot.S'; then $(CYGPATH_W) 'boot/sparc64/ieee1275/boot.S'; else $(CYGPATH_W) '$(srcdir)/boot/sparc64/ieee1275/boot.S'; fi` -@am__fastdepCCAS_TRUE@ $(AM_V_at)$(am__mv) boot/sparc64/ieee1275/$(DEPDIR)/boot_image-boot.Tpo boot/sparc64/ieee1275/$(DEPDIR)/boot_image-boot.Po -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS)source='boot/sparc64/ieee1275/boot.S' object='boot/sparc64/ieee1275/boot_image-boot.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ DEPDIR=$(DEPDIR) $(CCASDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS@am__nodep@)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(boot_image_CPPFLAGS) $(CPPFLAGS) $(boot_image_CCASFLAGS) $(CCASFLAGS) -c -o boot/sparc64/ieee1275/boot_image-boot.obj `if test -f 'boot/sparc64/ieee1275/boot.S'; then $(CYGPATH_W) 'boot/sparc64/ieee1275/boot.S'; else $(CYGPATH_W) '$(srcdir)/boot/sparc64/ieee1275/boot.S'; fi` - -boot/i386/pc/boot_hybrid_image-boot.o: boot/i386/pc/boot.S -@am__fastdepCCAS_TRUE@ $(AM_V_CPPAS)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(boot_hybrid_image_CPPFLAGS) $(CPPFLAGS) $(boot_hybrid_image_CCASFLAGS) $(CCASFLAGS) -MT boot/i386/pc/boot_hybrid_image-boot.o -MD -MP -MF boot/i386/pc/$(DEPDIR)/boot_hybrid_image-boot.Tpo -c -o boot/i386/pc/boot_hybrid_image-boot.o `test -f 'boot/i386/pc/boot.S' || echo '$(srcdir)/'`boot/i386/pc/boot.S -@am__fastdepCCAS_TRUE@ $(AM_V_at)$(am__mv) boot/i386/pc/$(DEPDIR)/boot_hybrid_image-boot.Tpo boot/i386/pc/$(DEPDIR)/boot_hybrid_image-boot.Po -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS)source='boot/i386/pc/boot.S' object='boot/i386/pc/boot_hybrid_image-boot.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ DEPDIR=$(DEPDIR) $(CCASDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS@am__nodep@)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(boot_hybrid_image_CPPFLAGS) $(CPPFLAGS) $(boot_hybrid_image_CCASFLAGS) $(CCASFLAGS) -c -o boot/i386/pc/boot_hybrid_image-boot.o `test -f 'boot/i386/pc/boot.S' || echo '$(srcdir)/'`boot/i386/pc/boot.S - -boot/i386/pc/boot_hybrid_image-boot.obj: boot/i386/pc/boot.S -@am__fastdepCCAS_TRUE@ $(AM_V_CPPAS)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(boot_hybrid_image_CPPFLAGS) $(CPPFLAGS) $(boot_hybrid_image_CCASFLAGS) $(CCASFLAGS) -MT boot/i386/pc/boot_hybrid_image-boot.obj -MD -MP -MF boot/i386/pc/$(DEPDIR)/boot_hybrid_image-boot.Tpo -c -o boot/i386/pc/boot_hybrid_image-boot.obj `if test -f 'boot/i386/pc/boot.S'; then $(CYGPATH_W) 'boot/i386/pc/boot.S'; else $(CYGPATH_W) '$(srcdir)/boot/i386/pc/boot.S'; fi` -@am__fastdepCCAS_TRUE@ $(AM_V_at)$(am__mv) boot/i386/pc/$(DEPDIR)/boot_hybrid_image-boot.Tpo boot/i386/pc/$(DEPDIR)/boot_hybrid_image-boot.Po -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS)source='boot/i386/pc/boot.S' object='boot/i386/pc/boot_hybrid_image-boot.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ DEPDIR=$(DEPDIR) $(CCASDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS@am__nodep@)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(boot_hybrid_image_CPPFLAGS) $(CPPFLAGS) $(boot_hybrid_image_CCASFLAGS) $(CCASFLAGS) -c -o boot/i386/pc/boot_hybrid_image-boot.obj `if test -f 'boot/i386/pc/boot.S'; then $(CYGPATH_W) 'boot/i386/pc/boot.S'; else $(CYGPATH_W) '$(srcdir)/boot/i386/pc/boot.S'; fi` - -boot/i386/pc/cdboot_image-cdboot.o: boot/i386/pc/cdboot.S -@am__fastdepCCAS_TRUE@ $(AM_V_CPPAS)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cdboot_image_CPPFLAGS) $(CPPFLAGS) $(cdboot_image_CCASFLAGS) $(CCASFLAGS) -MT boot/i386/pc/cdboot_image-cdboot.o -MD -MP -MF boot/i386/pc/$(DEPDIR)/cdboot_image-cdboot.Tpo -c -o boot/i386/pc/cdboot_image-cdboot.o `test -f 'boot/i386/pc/cdboot.S' || echo '$(srcdir)/'`boot/i386/pc/cdboot.S -@am__fastdepCCAS_TRUE@ $(AM_V_at)$(am__mv) boot/i386/pc/$(DEPDIR)/cdboot_image-cdboot.Tpo boot/i386/pc/$(DEPDIR)/cdboot_image-cdboot.Po -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS)source='boot/i386/pc/cdboot.S' object='boot/i386/pc/cdboot_image-cdboot.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ DEPDIR=$(DEPDIR) $(CCASDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS@am__nodep@)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cdboot_image_CPPFLAGS) $(CPPFLAGS) $(cdboot_image_CCASFLAGS) $(CCASFLAGS) -c -o boot/i386/pc/cdboot_image-cdboot.o `test -f 'boot/i386/pc/cdboot.S' || echo '$(srcdir)/'`boot/i386/pc/cdboot.S - -boot/i386/pc/cdboot_image-cdboot.obj: boot/i386/pc/cdboot.S -@am__fastdepCCAS_TRUE@ $(AM_V_CPPAS)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cdboot_image_CPPFLAGS) $(CPPFLAGS) $(cdboot_image_CCASFLAGS) $(CCASFLAGS) -MT boot/i386/pc/cdboot_image-cdboot.obj -MD -MP -MF boot/i386/pc/$(DEPDIR)/cdboot_image-cdboot.Tpo -c -o boot/i386/pc/cdboot_image-cdboot.obj `if test -f 'boot/i386/pc/cdboot.S'; then $(CYGPATH_W) 'boot/i386/pc/cdboot.S'; else $(CYGPATH_W) '$(srcdir)/boot/i386/pc/cdboot.S'; fi` -@am__fastdepCCAS_TRUE@ $(AM_V_at)$(am__mv) boot/i386/pc/$(DEPDIR)/cdboot_image-cdboot.Tpo boot/i386/pc/$(DEPDIR)/cdboot_image-cdboot.Po -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS)source='boot/i386/pc/cdboot.S' object='boot/i386/pc/cdboot_image-cdboot.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ DEPDIR=$(DEPDIR) $(CCASDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS@am__nodep@)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cdboot_image_CPPFLAGS) $(CPPFLAGS) $(cdboot_image_CCASFLAGS) $(CCASFLAGS) -c -o boot/i386/pc/cdboot_image-cdboot.obj `if test -f 'boot/i386/pc/cdboot.S'; then $(CYGPATH_W) 'boot/i386/pc/cdboot.S'; else $(CYGPATH_W) '$(srcdir)/boot/i386/pc/cdboot.S'; fi` - -boot/sparc64/ieee1275/cdboot_image-boot.o: boot/sparc64/ieee1275/boot.S -@am__fastdepCCAS_TRUE@ $(AM_V_CPPAS)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cdboot_image_CPPFLAGS) $(CPPFLAGS) $(cdboot_image_CCASFLAGS) $(CCASFLAGS) -MT boot/sparc64/ieee1275/cdboot_image-boot.o -MD -MP -MF boot/sparc64/ieee1275/$(DEPDIR)/cdboot_image-boot.Tpo -c -o boot/sparc64/ieee1275/cdboot_image-boot.o `test -f 'boot/sparc64/ieee1275/boot.S' || echo '$(srcdir)/'`boot/sparc64/ieee1275/boot.S -@am__fastdepCCAS_TRUE@ $(AM_V_at)$(am__mv) boot/sparc64/ieee1275/$(DEPDIR)/cdboot_image-boot.Tpo boot/sparc64/ieee1275/$(DEPDIR)/cdboot_image-boot.Po -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS)source='boot/sparc64/ieee1275/boot.S' object='boot/sparc64/ieee1275/cdboot_image-boot.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ DEPDIR=$(DEPDIR) $(CCASDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS@am__nodep@)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cdboot_image_CPPFLAGS) $(CPPFLAGS) $(cdboot_image_CCASFLAGS) $(CCASFLAGS) -c -o boot/sparc64/ieee1275/cdboot_image-boot.o `test -f 'boot/sparc64/ieee1275/boot.S' || echo '$(srcdir)/'`boot/sparc64/ieee1275/boot.S - -boot/sparc64/ieee1275/cdboot_image-boot.obj: boot/sparc64/ieee1275/boot.S -@am__fastdepCCAS_TRUE@ $(AM_V_CPPAS)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cdboot_image_CPPFLAGS) $(CPPFLAGS) $(cdboot_image_CCASFLAGS) $(CCASFLAGS) -MT boot/sparc64/ieee1275/cdboot_image-boot.obj -MD -MP -MF boot/sparc64/ieee1275/$(DEPDIR)/cdboot_image-boot.Tpo -c -o boot/sparc64/ieee1275/cdboot_image-boot.obj `if test -f 'boot/sparc64/ieee1275/boot.S'; then $(CYGPATH_W) 'boot/sparc64/ieee1275/boot.S'; else $(CYGPATH_W) '$(srcdir)/boot/sparc64/ieee1275/boot.S'; fi` -@am__fastdepCCAS_TRUE@ $(AM_V_at)$(am__mv) boot/sparc64/ieee1275/$(DEPDIR)/cdboot_image-boot.Tpo boot/sparc64/ieee1275/$(DEPDIR)/cdboot_image-boot.Po -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS)source='boot/sparc64/ieee1275/boot.S' object='boot/sparc64/ieee1275/cdboot_image-boot.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ DEPDIR=$(DEPDIR) $(CCASDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS@am__nodep@)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cdboot_image_CPPFLAGS) $(CPPFLAGS) $(cdboot_image_CCASFLAGS) $(CCASFLAGS) -c -o boot/sparc64/ieee1275/cdboot_image-boot.obj `if test -f 'boot/sparc64/ieee1275/boot.S'; then $(CYGPATH_W) 'boot/sparc64/ieee1275/boot.S'; else $(CYGPATH_W) '$(srcdir)/boot/sparc64/ieee1275/boot.S'; fi` - -boot/i386/pc/diskboot_image-diskboot.o: boot/i386/pc/diskboot.S -@am__fastdepCCAS_TRUE@ $(AM_V_CPPAS)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(diskboot_image_CPPFLAGS) $(CPPFLAGS) $(diskboot_image_CCASFLAGS) $(CCASFLAGS) -MT boot/i386/pc/diskboot_image-diskboot.o -MD -MP -MF boot/i386/pc/$(DEPDIR)/diskboot_image-diskboot.Tpo -c -o boot/i386/pc/diskboot_image-diskboot.o `test -f 'boot/i386/pc/diskboot.S' || echo '$(srcdir)/'`boot/i386/pc/diskboot.S -@am__fastdepCCAS_TRUE@ $(AM_V_at)$(am__mv) boot/i386/pc/$(DEPDIR)/diskboot_image-diskboot.Tpo boot/i386/pc/$(DEPDIR)/diskboot_image-diskboot.Po -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS)source='boot/i386/pc/diskboot.S' object='boot/i386/pc/diskboot_image-diskboot.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ DEPDIR=$(DEPDIR) $(CCASDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS@am__nodep@)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(diskboot_image_CPPFLAGS) $(CPPFLAGS) $(diskboot_image_CCASFLAGS) $(CCASFLAGS) -c -o boot/i386/pc/diskboot_image-diskboot.o `test -f 'boot/i386/pc/diskboot.S' || echo '$(srcdir)/'`boot/i386/pc/diskboot.S - -boot/i386/pc/diskboot_image-diskboot.obj: boot/i386/pc/diskboot.S -@am__fastdepCCAS_TRUE@ $(AM_V_CPPAS)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(diskboot_image_CPPFLAGS) $(CPPFLAGS) $(diskboot_image_CCASFLAGS) $(CCASFLAGS) -MT boot/i386/pc/diskboot_image-diskboot.obj -MD -MP -MF boot/i386/pc/$(DEPDIR)/diskboot_image-diskboot.Tpo -c -o boot/i386/pc/diskboot_image-diskboot.obj `if test -f 'boot/i386/pc/diskboot.S'; then $(CYGPATH_W) 'boot/i386/pc/diskboot.S'; else $(CYGPATH_W) '$(srcdir)/boot/i386/pc/diskboot.S'; fi` -@am__fastdepCCAS_TRUE@ $(AM_V_at)$(am__mv) boot/i386/pc/$(DEPDIR)/diskboot_image-diskboot.Tpo boot/i386/pc/$(DEPDIR)/diskboot_image-diskboot.Po -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS)source='boot/i386/pc/diskboot.S' object='boot/i386/pc/diskboot_image-diskboot.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ DEPDIR=$(DEPDIR) $(CCASDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS@am__nodep@)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(diskboot_image_CPPFLAGS) $(CPPFLAGS) $(diskboot_image_CCASFLAGS) $(CCASFLAGS) -c -o boot/i386/pc/diskboot_image-diskboot.obj `if test -f 'boot/i386/pc/diskboot.S'; then $(CYGPATH_W) 'boot/i386/pc/diskboot.S'; else $(CYGPATH_W) '$(srcdir)/boot/i386/pc/diskboot.S'; fi` - -boot/sparc64/ieee1275/diskboot_image-diskboot.o: boot/sparc64/ieee1275/diskboot.S -@am__fastdepCCAS_TRUE@ $(AM_V_CPPAS)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(diskboot_image_CPPFLAGS) $(CPPFLAGS) $(diskboot_image_CCASFLAGS) $(CCASFLAGS) -MT boot/sparc64/ieee1275/diskboot_image-diskboot.o -MD -MP -MF boot/sparc64/ieee1275/$(DEPDIR)/diskboot_image-diskboot.Tpo -c -o boot/sparc64/ieee1275/diskboot_image-diskboot.o `test -f 'boot/sparc64/ieee1275/diskboot.S' || echo '$(srcdir)/'`boot/sparc64/ieee1275/diskboot.S -@am__fastdepCCAS_TRUE@ $(AM_V_at)$(am__mv) boot/sparc64/ieee1275/$(DEPDIR)/diskboot_image-diskboot.Tpo boot/sparc64/ieee1275/$(DEPDIR)/diskboot_image-diskboot.Po -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS)source='boot/sparc64/ieee1275/diskboot.S' object='boot/sparc64/ieee1275/diskboot_image-diskboot.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ DEPDIR=$(DEPDIR) $(CCASDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS@am__nodep@)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(diskboot_image_CPPFLAGS) $(CPPFLAGS) $(diskboot_image_CCASFLAGS) $(CCASFLAGS) -c -o boot/sparc64/ieee1275/diskboot_image-diskboot.o `test -f 'boot/sparc64/ieee1275/diskboot.S' || echo '$(srcdir)/'`boot/sparc64/ieee1275/diskboot.S - -boot/sparc64/ieee1275/diskboot_image-diskboot.obj: boot/sparc64/ieee1275/diskboot.S -@am__fastdepCCAS_TRUE@ $(AM_V_CPPAS)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(diskboot_image_CPPFLAGS) $(CPPFLAGS) $(diskboot_image_CCASFLAGS) $(CCASFLAGS) -MT boot/sparc64/ieee1275/diskboot_image-diskboot.obj -MD -MP -MF boot/sparc64/ieee1275/$(DEPDIR)/diskboot_image-diskboot.Tpo -c -o boot/sparc64/ieee1275/diskboot_image-diskboot.obj `if test -f 'boot/sparc64/ieee1275/diskboot.S'; then $(CYGPATH_W) 'boot/sparc64/ieee1275/diskboot.S'; else $(CYGPATH_W) '$(srcdir)/boot/sparc64/ieee1275/diskboot.S'; fi` -@am__fastdepCCAS_TRUE@ $(AM_V_at)$(am__mv) boot/sparc64/ieee1275/$(DEPDIR)/diskboot_image-diskboot.Tpo boot/sparc64/ieee1275/$(DEPDIR)/diskboot_image-diskboot.Po -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS)source='boot/sparc64/ieee1275/diskboot.S' object='boot/sparc64/ieee1275/diskboot_image-diskboot.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ DEPDIR=$(DEPDIR) $(CCASDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS@am__nodep@)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(diskboot_image_CPPFLAGS) $(CPPFLAGS) $(diskboot_image_CCASFLAGS) $(CCASFLAGS) -c -o boot/sparc64/ieee1275/diskboot_image-diskboot.obj `if test -f 'boot/sparc64/ieee1275/diskboot.S'; then $(CYGPATH_W) 'boot/sparc64/ieee1275/diskboot.S'; else $(CYGPATH_W) '$(srcdir)/boot/sparc64/ieee1275/diskboot.S'; fi` - -commands/i386/pc/drivemap_module-drivemap_int13h.o: commands/i386/pc/drivemap_int13h.S -@am__fastdepCCAS_TRUE@ $(AM_V_CPPAS)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(drivemap_module_CPPFLAGS) $(CPPFLAGS) $(drivemap_module_CCASFLAGS) $(CCASFLAGS) -MT commands/i386/pc/drivemap_module-drivemap_int13h.o -MD -MP -MF commands/i386/pc/$(DEPDIR)/drivemap_module-drivemap_int13h.Tpo -c -o commands/i386/pc/drivemap_module-drivemap_int13h.o `test -f 'commands/i386/pc/drivemap_int13h.S' || echo '$(srcdir)/'`commands/i386/pc/drivemap_int13h.S -@am__fastdepCCAS_TRUE@ $(AM_V_at)$(am__mv) commands/i386/pc/$(DEPDIR)/drivemap_module-drivemap_int13h.Tpo commands/i386/pc/$(DEPDIR)/drivemap_module-drivemap_int13h.Po -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS)source='commands/i386/pc/drivemap_int13h.S' object='commands/i386/pc/drivemap_module-drivemap_int13h.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ DEPDIR=$(DEPDIR) $(CCASDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS@am__nodep@)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(drivemap_module_CPPFLAGS) $(CPPFLAGS) $(drivemap_module_CCASFLAGS) $(CCASFLAGS) -c -o commands/i386/pc/drivemap_module-drivemap_int13h.o `test -f 'commands/i386/pc/drivemap_int13h.S' || echo '$(srcdir)/'`commands/i386/pc/drivemap_int13h.S - -commands/i386/pc/drivemap_module-drivemap_int13h.obj: commands/i386/pc/drivemap_int13h.S -@am__fastdepCCAS_TRUE@ $(AM_V_CPPAS)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(drivemap_module_CPPFLAGS) $(CPPFLAGS) $(drivemap_module_CCASFLAGS) $(CCASFLAGS) -MT commands/i386/pc/drivemap_module-drivemap_int13h.obj -MD -MP -MF commands/i386/pc/$(DEPDIR)/drivemap_module-drivemap_int13h.Tpo -c -o commands/i386/pc/drivemap_module-drivemap_int13h.obj `if test -f 'commands/i386/pc/drivemap_int13h.S'; then $(CYGPATH_W) 'commands/i386/pc/drivemap_int13h.S'; else $(CYGPATH_W) '$(srcdir)/commands/i386/pc/drivemap_int13h.S'; fi` -@am__fastdepCCAS_TRUE@ $(AM_V_at)$(am__mv) commands/i386/pc/$(DEPDIR)/drivemap_module-drivemap_int13h.Tpo commands/i386/pc/$(DEPDIR)/drivemap_module-drivemap_int13h.Po -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS)source='commands/i386/pc/drivemap_int13h.S' object='commands/i386/pc/drivemap_module-drivemap_int13h.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ DEPDIR=$(DEPDIR) $(CCASDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS@am__nodep@)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(drivemap_module_CPPFLAGS) $(CPPFLAGS) $(drivemap_module_CCASFLAGS) $(CCASFLAGS) -c -o commands/i386/pc/drivemap_module-drivemap_int13h.obj `if test -f 'commands/i386/pc/drivemap_int13h.S'; then $(CYGPATH_W) 'commands/i386/pc/drivemap_int13h.S'; else $(CYGPATH_W) '$(srcdir)/commands/i386/pc/drivemap_int13h.S'; fi` - -boot/mips/loongson/fwstart_image-fwstart.o: boot/mips/loongson/fwstart.S -@am__fastdepCCAS_TRUE@ $(AM_V_CPPAS)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(fwstart_image_CPPFLAGS) $(CPPFLAGS) $(fwstart_image_CCASFLAGS) $(CCASFLAGS) -MT boot/mips/loongson/fwstart_image-fwstart.o -MD -MP -MF boot/mips/loongson/$(DEPDIR)/fwstart_image-fwstart.Tpo -c -o boot/mips/loongson/fwstart_image-fwstart.o `test -f 'boot/mips/loongson/fwstart.S' || echo '$(srcdir)/'`boot/mips/loongson/fwstart.S -@am__fastdepCCAS_TRUE@ $(AM_V_at)$(am__mv) boot/mips/loongson/$(DEPDIR)/fwstart_image-fwstart.Tpo boot/mips/loongson/$(DEPDIR)/fwstart_image-fwstart.Po -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS)source='boot/mips/loongson/fwstart.S' object='boot/mips/loongson/fwstart_image-fwstart.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ DEPDIR=$(DEPDIR) $(CCASDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS@am__nodep@)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(fwstart_image_CPPFLAGS) $(CPPFLAGS) $(fwstart_image_CCASFLAGS) $(CCASFLAGS) -c -o boot/mips/loongson/fwstart_image-fwstart.o `test -f 'boot/mips/loongson/fwstart.S' || echo '$(srcdir)/'`boot/mips/loongson/fwstart.S - -boot/mips/loongson/fwstart_image-fwstart.obj: boot/mips/loongson/fwstart.S -@am__fastdepCCAS_TRUE@ $(AM_V_CPPAS)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(fwstart_image_CPPFLAGS) $(CPPFLAGS) $(fwstart_image_CCASFLAGS) $(CCASFLAGS) -MT boot/mips/loongson/fwstart_image-fwstart.obj -MD -MP -MF boot/mips/loongson/$(DEPDIR)/fwstart_image-fwstart.Tpo -c -o boot/mips/loongson/fwstart_image-fwstart.obj `if test -f 'boot/mips/loongson/fwstart.S'; then $(CYGPATH_W) 'boot/mips/loongson/fwstart.S'; else $(CYGPATH_W) '$(srcdir)/boot/mips/loongson/fwstart.S'; fi` -@am__fastdepCCAS_TRUE@ $(AM_V_at)$(am__mv) boot/mips/loongson/$(DEPDIR)/fwstart_image-fwstart.Tpo boot/mips/loongson/$(DEPDIR)/fwstart_image-fwstart.Po -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS)source='boot/mips/loongson/fwstart.S' object='boot/mips/loongson/fwstart_image-fwstart.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ DEPDIR=$(DEPDIR) $(CCASDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS@am__nodep@)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(fwstart_image_CPPFLAGS) $(CPPFLAGS) $(fwstart_image_CCASFLAGS) $(CCASFLAGS) -c -o boot/mips/loongson/fwstart_image-fwstart.obj `if test -f 'boot/mips/loongson/fwstart.S'; then $(CYGPATH_W) 'boot/mips/loongson/fwstart.S'; else $(CYGPATH_W) '$(srcdir)/boot/mips/loongson/fwstart.S'; fi` - -boot/mips/loongson/fwstart_fuloong2f_image-fuloong2f.o: boot/mips/loongson/fuloong2f.S -@am__fastdepCCAS_TRUE@ $(AM_V_CPPAS)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(fwstart_fuloong2f_image_CPPFLAGS) $(CPPFLAGS) $(fwstart_fuloong2f_image_CCASFLAGS) $(CCASFLAGS) -MT boot/mips/loongson/fwstart_fuloong2f_image-fuloong2f.o -MD -MP -MF boot/mips/loongson/$(DEPDIR)/fwstart_fuloong2f_image-fuloong2f.Tpo -c -o boot/mips/loongson/fwstart_fuloong2f_image-fuloong2f.o `test -f 'boot/mips/loongson/fuloong2f.S' || echo '$(srcdir)/'`boot/mips/loongson/fuloong2f.S -@am__fastdepCCAS_TRUE@ $(AM_V_at)$(am__mv) boot/mips/loongson/$(DEPDIR)/fwstart_fuloong2f_image-fuloong2f.Tpo boot/mips/loongson/$(DEPDIR)/fwstart_fuloong2f_image-fuloong2f.Po -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS)source='boot/mips/loongson/fuloong2f.S' object='boot/mips/loongson/fwstart_fuloong2f_image-fuloong2f.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ DEPDIR=$(DEPDIR) $(CCASDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS@am__nodep@)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(fwstart_fuloong2f_image_CPPFLAGS) $(CPPFLAGS) $(fwstart_fuloong2f_image_CCASFLAGS) $(CCASFLAGS) -c -o boot/mips/loongson/fwstart_fuloong2f_image-fuloong2f.o `test -f 'boot/mips/loongson/fuloong2f.S' || echo '$(srcdir)/'`boot/mips/loongson/fuloong2f.S - -boot/mips/loongson/fwstart_fuloong2f_image-fuloong2f.obj: boot/mips/loongson/fuloong2f.S -@am__fastdepCCAS_TRUE@ $(AM_V_CPPAS)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(fwstart_fuloong2f_image_CPPFLAGS) $(CPPFLAGS) $(fwstart_fuloong2f_image_CCASFLAGS) $(CCASFLAGS) -MT boot/mips/loongson/fwstart_fuloong2f_image-fuloong2f.obj -MD -MP -MF boot/mips/loongson/$(DEPDIR)/fwstart_fuloong2f_image-fuloong2f.Tpo -c -o boot/mips/loongson/fwstart_fuloong2f_image-fuloong2f.obj `if test -f 'boot/mips/loongson/fuloong2f.S'; then $(CYGPATH_W) 'boot/mips/loongson/fuloong2f.S'; else $(CYGPATH_W) '$(srcdir)/boot/mips/loongson/fuloong2f.S'; fi` -@am__fastdepCCAS_TRUE@ $(AM_V_at)$(am__mv) boot/mips/loongson/$(DEPDIR)/fwstart_fuloong2f_image-fuloong2f.Tpo boot/mips/loongson/$(DEPDIR)/fwstart_fuloong2f_image-fuloong2f.Po -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS)source='boot/mips/loongson/fuloong2f.S' object='boot/mips/loongson/fwstart_fuloong2f_image-fuloong2f.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ DEPDIR=$(DEPDIR) $(CCASDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS@am__nodep@)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(fwstart_fuloong2f_image_CPPFLAGS) $(CPPFLAGS) $(fwstart_fuloong2f_image_CCASFLAGS) $(CCASFLAGS) -c -o boot/mips/loongson/fwstart_fuloong2f_image-fuloong2f.obj `if test -f 'boot/mips/loongson/fuloong2f.S'; then $(CYGPATH_W) 'boot/mips/loongson/fuloong2f.S'; else $(CYGPATH_W) '$(srcdir)/boot/mips/loongson/fuloong2f.S'; fi` - -gdb/i386/gdb_module-machdep.o: gdb/i386/machdep.S -@am__fastdepCCAS_TRUE@ $(AM_V_CPPAS)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gdb_module_CPPFLAGS) $(CPPFLAGS) $(gdb_module_CCASFLAGS) $(CCASFLAGS) -MT gdb/i386/gdb_module-machdep.o -MD -MP -MF gdb/i386/$(DEPDIR)/gdb_module-machdep.Tpo -c -o gdb/i386/gdb_module-machdep.o `test -f 'gdb/i386/machdep.S' || echo '$(srcdir)/'`gdb/i386/machdep.S -@am__fastdepCCAS_TRUE@ $(AM_V_at)$(am__mv) gdb/i386/$(DEPDIR)/gdb_module-machdep.Tpo gdb/i386/$(DEPDIR)/gdb_module-machdep.Po -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS)source='gdb/i386/machdep.S' object='gdb/i386/gdb_module-machdep.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ DEPDIR=$(DEPDIR) $(CCASDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS@am__nodep@)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gdb_module_CPPFLAGS) $(CPPFLAGS) $(gdb_module_CCASFLAGS) $(CCASFLAGS) -c -o gdb/i386/gdb_module-machdep.o `test -f 'gdb/i386/machdep.S' || echo '$(srcdir)/'`gdb/i386/machdep.S - -gdb/i386/gdb_module-machdep.obj: gdb/i386/machdep.S -@am__fastdepCCAS_TRUE@ $(AM_V_CPPAS)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gdb_module_CPPFLAGS) $(CPPFLAGS) $(gdb_module_CCASFLAGS) $(CCASFLAGS) -MT gdb/i386/gdb_module-machdep.obj -MD -MP -MF gdb/i386/$(DEPDIR)/gdb_module-machdep.Tpo -c -o gdb/i386/gdb_module-machdep.obj `if test -f 'gdb/i386/machdep.S'; then $(CYGPATH_W) 'gdb/i386/machdep.S'; else $(CYGPATH_W) '$(srcdir)/gdb/i386/machdep.S'; fi` -@am__fastdepCCAS_TRUE@ $(AM_V_at)$(am__mv) gdb/i386/$(DEPDIR)/gdb_module-machdep.Tpo gdb/i386/$(DEPDIR)/gdb_module-machdep.Po -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS)source='gdb/i386/machdep.S' object='gdb/i386/gdb_module-machdep.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ DEPDIR=$(DEPDIR) $(CCASDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS@am__nodep@)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gdb_module_CPPFLAGS) $(CPPFLAGS) $(gdb_module_CCASFLAGS) $(CCASFLAGS) -c -o gdb/i386/gdb_module-machdep.obj `if test -f 'gdb/i386/machdep.S'; then $(CYGPATH_W) 'gdb/i386/machdep.S'; else $(CYGPATH_W) '$(srcdir)/gdb/i386/machdep.S'; fi` - -kern/arm64/efi/kernel_exec-startup.o: kern/arm64/efi/startup.S -@am__fastdepCCAS_TRUE@ $(AM_V_CPPAS)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CCASFLAGS) $(CCASFLAGS) -MT kern/arm64/efi/kernel_exec-startup.o -MD -MP -MF kern/arm64/efi/$(DEPDIR)/kernel_exec-startup.Tpo -c -o kern/arm64/efi/kernel_exec-startup.o `test -f 'kern/arm64/efi/startup.S' || echo '$(srcdir)/'`kern/arm64/efi/startup.S -@am__fastdepCCAS_TRUE@ $(AM_V_at)$(am__mv) kern/arm64/efi/$(DEPDIR)/kernel_exec-startup.Tpo kern/arm64/efi/$(DEPDIR)/kernel_exec-startup.Po -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS)source='kern/arm64/efi/startup.S' object='kern/arm64/efi/kernel_exec-startup.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ DEPDIR=$(DEPDIR) $(CCASDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS@am__nodep@)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CCASFLAGS) $(CCASFLAGS) -c -o kern/arm64/efi/kernel_exec-startup.o `test -f 'kern/arm64/efi/startup.S' || echo '$(srcdir)/'`kern/arm64/efi/startup.S - -kern/arm64/efi/kernel_exec-startup.obj: kern/arm64/efi/startup.S -@am__fastdepCCAS_TRUE@ $(AM_V_CPPAS)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CCASFLAGS) $(CCASFLAGS) -MT kern/arm64/efi/kernel_exec-startup.obj -MD -MP -MF kern/arm64/efi/$(DEPDIR)/kernel_exec-startup.Tpo -c -o kern/arm64/efi/kernel_exec-startup.obj `if test -f 'kern/arm64/efi/startup.S'; then $(CYGPATH_W) 'kern/arm64/efi/startup.S'; else $(CYGPATH_W) '$(srcdir)/kern/arm64/efi/startup.S'; fi` -@am__fastdepCCAS_TRUE@ $(AM_V_at)$(am__mv) kern/arm64/efi/$(DEPDIR)/kernel_exec-startup.Tpo kern/arm64/efi/$(DEPDIR)/kernel_exec-startup.Po -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS)source='kern/arm64/efi/startup.S' object='kern/arm64/efi/kernel_exec-startup.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ DEPDIR=$(DEPDIR) $(CCASDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS@am__nodep@)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CCASFLAGS) $(CCASFLAGS) -c -o kern/arm64/efi/kernel_exec-startup.obj `if test -f 'kern/arm64/efi/startup.S'; then $(CYGPATH_W) 'kern/arm64/efi/startup.S'; else $(CYGPATH_W) '$(srcdir)/kern/arm64/efi/startup.S'; fi` - -kern/arm64/kernel_exec-cache_flush.o: kern/arm64/cache_flush.S -@am__fastdepCCAS_TRUE@ $(AM_V_CPPAS)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CCASFLAGS) $(CCASFLAGS) -MT kern/arm64/kernel_exec-cache_flush.o -MD -MP -MF kern/arm64/$(DEPDIR)/kernel_exec-cache_flush.Tpo -c -o kern/arm64/kernel_exec-cache_flush.o `test -f 'kern/arm64/cache_flush.S' || echo '$(srcdir)/'`kern/arm64/cache_flush.S -@am__fastdepCCAS_TRUE@ $(AM_V_at)$(am__mv) kern/arm64/$(DEPDIR)/kernel_exec-cache_flush.Tpo kern/arm64/$(DEPDIR)/kernel_exec-cache_flush.Po -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS)source='kern/arm64/cache_flush.S' object='kern/arm64/kernel_exec-cache_flush.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ DEPDIR=$(DEPDIR) $(CCASDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS@am__nodep@)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CCASFLAGS) $(CCASFLAGS) -c -o kern/arm64/kernel_exec-cache_flush.o `test -f 'kern/arm64/cache_flush.S' || echo '$(srcdir)/'`kern/arm64/cache_flush.S - -kern/arm64/kernel_exec-cache_flush.obj: kern/arm64/cache_flush.S -@am__fastdepCCAS_TRUE@ $(AM_V_CPPAS)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CCASFLAGS) $(CCASFLAGS) -MT kern/arm64/kernel_exec-cache_flush.obj -MD -MP -MF kern/arm64/$(DEPDIR)/kernel_exec-cache_flush.Tpo -c -o kern/arm64/kernel_exec-cache_flush.obj `if test -f 'kern/arm64/cache_flush.S'; then $(CYGPATH_W) 'kern/arm64/cache_flush.S'; else $(CYGPATH_W) '$(srcdir)/kern/arm64/cache_flush.S'; fi` -@am__fastdepCCAS_TRUE@ $(AM_V_at)$(am__mv) kern/arm64/$(DEPDIR)/kernel_exec-cache_flush.Tpo kern/arm64/$(DEPDIR)/kernel_exec-cache_flush.Po -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS)source='kern/arm64/cache_flush.S' object='kern/arm64/kernel_exec-cache_flush.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ DEPDIR=$(DEPDIR) $(CCASDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS@am__nodep@)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CCASFLAGS) $(CCASFLAGS) -c -o kern/arm64/kernel_exec-cache_flush.obj `if test -f 'kern/arm64/cache_flush.S'; then $(CYGPATH_W) 'kern/arm64/cache_flush.S'; else $(CYGPATH_W) '$(srcdir)/kern/arm64/cache_flush.S'; fi` - -kern/arm/kernel_exec-startup.o: kern/arm/startup.S -@am__fastdepCCAS_TRUE@ $(AM_V_CPPAS)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CCASFLAGS) $(CCASFLAGS) -MT kern/arm/kernel_exec-startup.o -MD -MP -MF kern/arm/$(DEPDIR)/kernel_exec-startup.Tpo -c -o kern/arm/kernel_exec-startup.o `test -f 'kern/arm/startup.S' || echo '$(srcdir)/'`kern/arm/startup.S -@am__fastdepCCAS_TRUE@ $(AM_V_at)$(am__mv) kern/arm/$(DEPDIR)/kernel_exec-startup.Tpo kern/arm/$(DEPDIR)/kernel_exec-startup.Po -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS)source='kern/arm/startup.S' object='kern/arm/kernel_exec-startup.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ DEPDIR=$(DEPDIR) $(CCASDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS@am__nodep@)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CCASFLAGS) $(CCASFLAGS) -c -o kern/arm/kernel_exec-startup.o `test -f 'kern/arm/startup.S' || echo '$(srcdir)/'`kern/arm/startup.S - -kern/arm/kernel_exec-startup.obj: kern/arm/startup.S -@am__fastdepCCAS_TRUE@ $(AM_V_CPPAS)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CCASFLAGS) $(CCASFLAGS) -MT kern/arm/kernel_exec-startup.obj -MD -MP -MF kern/arm/$(DEPDIR)/kernel_exec-startup.Tpo -c -o kern/arm/kernel_exec-startup.obj `if test -f 'kern/arm/startup.S'; then $(CYGPATH_W) 'kern/arm/startup.S'; else $(CYGPATH_W) '$(srcdir)/kern/arm/startup.S'; fi` -@am__fastdepCCAS_TRUE@ $(AM_V_at)$(am__mv) kern/arm/$(DEPDIR)/kernel_exec-startup.Tpo kern/arm/$(DEPDIR)/kernel_exec-startup.Po -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS)source='kern/arm/startup.S' object='kern/arm/kernel_exec-startup.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ DEPDIR=$(DEPDIR) $(CCASDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS@am__nodep@)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CCASFLAGS) $(CCASFLAGS) -c -o kern/arm/kernel_exec-startup.obj `if test -f 'kern/arm/startup.S'; then $(CYGPATH_W) 'kern/arm/startup.S'; else $(CYGPATH_W) '$(srcdir)/kern/arm/startup.S'; fi` - -kern/arm/coreboot/kernel_exec-coreboot.o: kern/arm/coreboot/coreboot.S -@am__fastdepCCAS_TRUE@ $(AM_V_CPPAS)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CCASFLAGS) $(CCASFLAGS) -MT kern/arm/coreboot/kernel_exec-coreboot.o -MD -MP -MF kern/arm/coreboot/$(DEPDIR)/kernel_exec-coreboot.Tpo -c -o kern/arm/coreboot/kernel_exec-coreboot.o `test -f 'kern/arm/coreboot/coreboot.S' || echo '$(srcdir)/'`kern/arm/coreboot/coreboot.S -@am__fastdepCCAS_TRUE@ $(AM_V_at)$(am__mv) kern/arm/coreboot/$(DEPDIR)/kernel_exec-coreboot.Tpo kern/arm/coreboot/$(DEPDIR)/kernel_exec-coreboot.Po -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS)source='kern/arm/coreboot/coreboot.S' object='kern/arm/coreboot/kernel_exec-coreboot.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ DEPDIR=$(DEPDIR) $(CCASDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS@am__nodep@)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CCASFLAGS) $(CCASFLAGS) -c -o kern/arm/coreboot/kernel_exec-coreboot.o `test -f 'kern/arm/coreboot/coreboot.S' || echo '$(srcdir)/'`kern/arm/coreboot/coreboot.S - -kern/arm/coreboot/kernel_exec-coreboot.obj: kern/arm/coreboot/coreboot.S -@am__fastdepCCAS_TRUE@ $(AM_V_CPPAS)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CCASFLAGS) $(CCASFLAGS) -MT kern/arm/coreboot/kernel_exec-coreboot.obj -MD -MP -MF kern/arm/coreboot/$(DEPDIR)/kernel_exec-coreboot.Tpo -c -o kern/arm/coreboot/kernel_exec-coreboot.obj `if test -f 'kern/arm/coreboot/coreboot.S'; then $(CYGPATH_W) 'kern/arm/coreboot/coreboot.S'; else $(CYGPATH_W) '$(srcdir)/kern/arm/coreboot/coreboot.S'; fi` -@am__fastdepCCAS_TRUE@ $(AM_V_at)$(am__mv) kern/arm/coreboot/$(DEPDIR)/kernel_exec-coreboot.Tpo kern/arm/coreboot/$(DEPDIR)/kernel_exec-coreboot.Po -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS)source='kern/arm/coreboot/coreboot.S' object='kern/arm/coreboot/kernel_exec-coreboot.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ DEPDIR=$(DEPDIR) $(CCASDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS@am__nodep@)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CCASFLAGS) $(CCASFLAGS) -c -o kern/arm/coreboot/kernel_exec-coreboot.obj `if test -f 'kern/arm/coreboot/coreboot.S'; then $(CYGPATH_W) 'kern/arm/coreboot/coreboot.S'; else $(CYGPATH_W) '$(srcdir)/kern/arm/coreboot/coreboot.S'; fi` - -kern/arm/kernel_exec-cache_armv6.o: kern/arm/cache_armv6.S -@am__fastdepCCAS_TRUE@ $(AM_V_CPPAS)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CCASFLAGS) $(CCASFLAGS) -MT kern/arm/kernel_exec-cache_armv6.o -MD -MP -MF kern/arm/$(DEPDIR)/kernel_exec-cache_armv6.Tpo -c -o kern/arm/kernel_exec-cache_armv6.o `test -f 'kern/arm/cache_armv6.S' || echo '$(srcdir)/'`kern/arm/cache_armv6.S -@am__fastdepCCAS_TRUE@ $(AM_V_at)$(am__mv) kern/arm/$(DEPDIR)/kernel_exec-cache_armv6.Tpo kern/arm/$(DEPDIR)/kernel_exec-cache_armv6.Po -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS)source='kern/arm/cache_armv6.S' object='kern/arm/kernel_exec-cache_armv6.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ DEPDIR=$(DEPDIR) $(CCASDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS@am__nodep@)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CCASFLAGS) $(CCASFLAGS) -c -o kern/arm/kernel_exec-cache_armv6.o `test -f 'kern/arm/cache_armv6.S' || echo '$(srcdir)/'`kern/arm/cache_armv6.S - -kern/arm/kernel_exec-cache_armv6.obj: kern/arm/cache_armv6.S -@am__fastdepCCAS_TRUE@ $(AM_V_CPPAS)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CCASFLAGS) $(CCASFLAGS) -MT kern/arm/kernel_exec-cache_armv6.obj -MD -MP -MF kern/arm/$(DEPDIR)/kernel_exec-cache_armv6.Tpo -c -o kern/arm/kernel_exec-cache_armv6.obj `if test -f 'kern/arm/cache_armv6.S'; then $(CYGPATH_W) 'kern/arm/cache_armv6.S'; else $(CYGPATH_W) '$(srcdir)/kern/arm/cache_armv6.S'; fi` -@am__fastdepCCAS_TRUE@ $(AM_V_at)$(am__mv) kern/arm/$(DEPDIR)/kernel_exec-cache_armv6.Tpo kern/arm/$(DEPDIR)/kernel_exec-cache_armv6.Po -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS)source='kern/arm/cache_armv6.S' object='kern/arm/kernel_exec-cache_armv6.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ DEPDIR=$(DEPDIR) $(CCASDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS@am__nodep@)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CCASFLAGS) $(CCASFLAGS) -c -o kern/arm/kernel_exec-cache_armv6.obj `if test -f 'kern/arm/cache_armv6.S'; then $(CYGPATH_W) 'kern/arm/cache_armv6.S'; else $(CYGPATH_W) '$(srcdir)/kern/arm/cache_armv6.S'; fi` - -kern/arm/kernel_exec-cache_armv7.o: kern/arm/cache_armv7.S -@am__fastdepCCAS_TRUE@ $(AM_V_CPPAS)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CCASFLAGS) $(CCASFLAGS) -MT kern/arm/kernel_exec-cache_armv7.o -MD -MP -MF kern/arm/$(DEPDIR)/kernel_exec-cache_armv7.Tpo -c -o kern/arm/kernel_exec-cache_armv7.o `test -f 'kern/arm/cache_armv7.S' || echo '$(srcdir)/'`kern/arm/cache_armv7.S -@am__fastdepCCAS_TRUE@ $(AM_V_at)$(am__mv) kern/arm/$(DEPDIR)/kernel_exec-cache_armv7.Tpo kern/arm/$(DEPDIR)/kernel_exec-cache_armv7.Po -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS)source='kern/arm/cache_armv7.S' object='kern/arm/kernel_exec-cache_armv7.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ DEPDIR=$(DEPDIR) $(CCASDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS@am__nodep@)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CCASFLAGS) $(CCASFLAGS) -c -o kern/arm/kernel_exec-cache_armv7.o `test -f 'kern/arm/cache_armv7.S' || echo '$(srcdir)/'`kern/arm/cache_armv7.S - -kern/arm/kernel_exec-cache_armv7.obj: kern/arm/cache_armv7.S -@am__fastdepCCAS_TRUE@ $(AM_V_CPPAS)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CCASFLAGS) $(CCASFLAGS) -MT kern/arm/kernel_exec-cache_armv7.obj -MD -MP -MF kern/arm/$(DEPDIR)/kernel_exec-cache_armv7.Tpo -c -o kern/arm/kernel_exec-cache_armv7.obj `if test -f 'kern/arm/cache_armv7.S'; then $(CYGPATH_W) 'kern/arm/cache_armv7.S'; else $(CYGPATH_W) '$(srcdir)/kern/arm/cache_armv7.S'; fi` -@am__fastdepCCAS_TRUE@ $(AM_V_at)$(am__mv) kern/arm/$(DEPDIR)/kernel_exec-cache_armv7.Tpo kern/arm/$(DEPDIR)/kernel_exec-cache_armv7.Po -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS)source='kern/arm/cache_armv7.S' object='kern/arm/kernel_exec-cache_armv7.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ DEPDIR=$(DEPDIR) $(CCASDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS@am__nodep@)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CCASFLAGS) $(CCASFLAGS) -c -o kern/arm/kernel_exec-cache_armv7.obj `if test -f 'kern/arm/cache_armv7.S'; then $(CYGPATH_W) 'kern/arm/cache_armv7.S'; else $(CYGPATH_W) '$(srcdir)/kern/arm/cache_armv7.S'; fi` - -kern/arm/kernel_exec-compiler-rt.o: kern/arm/compiler-rt.S -@am__fastdepCCAS_TRUE@ $(AM_V_CPPAS)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CCASFLAGS) $(CCASFLAGS) -MT kern/arm/kernel_exec-compiler-rt.o -MD -MP -MF kern/arm/$(DEPDIR)/kernel_exec-compiler-rt.Tpo -c -o kern/arm/kernel_exec-compiler-rt.o `test -f 'kern/arm/compiler-rt.S' || echo '$(srcdir)/'`kern/arm/compiler-rt.S -@am__fastdepCCAS_TRUE@ $(AM_V_at)$(am__mv) kern/arm/$(DEPDIR)/kernel_exec-compiler-rt.Tpo kern/arm/$(DEPDIR)/kernel_exec-compiler-rt.Po -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS)source='kern/arm/compiler-rt.S' object='kern/arm/kernel_exec-compiler-rt.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ DEPDIR=$(DEPDIR) $(CCASDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS@am__nodep@)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CCASFLAGS) $(CCASFLAGS) -c -o kern/arm/kernel_exec-compiler-rt.o `test -f 'kern/arm/compiler-rt.S' || echo '$(srcdir)/'`kern/arm/compiler-rt.S - -kern/arm/kernel_exec-compiler-rt.obj: kern/arm/compiler-rt.S -@am__fastdepCCAS_TRUE@ $(AM_V_CPPAS)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CCASFLAGS) $(CCASFLAGS) -MT kern/arm/kernel_exec-compiler-rt.obj -MD -MP -MF kern/arm/$(DEPDIR)/kernel_exec-compiler-rt.Tpo -c -o kern/arm/kernel_exec-compiler-rt.obj `if test -f 'kern/arm/compiler-rt.S'; then $(CYGPATH_W) 'kern/arm/compiler-rt.S'; else $(CYGPATH_W) '$(srcdir)/kern/arm/compiler-rt.S'; fi` -@am__fastdepCCAS_TRUE@ $(AM_V_at)$(am__mv) kern/arm/$(DEPDIR)/kernel_exec-compiler-rt.Tpo kern/arm/$(DEPDIR)/kernel_exec-compiler-rt.Po -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS)source='kern/arm/compiler-rt.S' object='kern/arm/kernel_exec-compiler-rt.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ DEPDIR=$(DEPDIR) $(CCASDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS@am__nodep@)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CCASFLAGS) $(CCASFLAGS) -c -o kern/arm/kernel_exec-compiler-rt.obj `if test -f 'kern/arm/compiler-rt.S'; then $(CYGPATH_W) 'kern/arm/compiler-rt.S'; else $(CYGPATH_W) '$(srcdir)/kern/arm/compiler-rt.S'; fi` - -kern/arm/efi/kernel_exec-startup.o: kern/arm/efi/startup.S -@am__fastdepCCAS_TRUE@ $(AM_V_CPPAS)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CCASFLAGS) $(CCASFLAGS) -MT kern/arm/efi/kernel_exec-startup.o -MD -MP -MF kern/arm/efi/$(DEPDIR)/kernel_exec-startup.Tpo -c -o kern/arm/efi/kernel_exec-startup.o `test -f 'kern/arm/efi/startup.S' || echo '$(srcdir)/'`kern/arm/efi/startup.S -@am__fastdepCCAS_TRUE@ $(AM_V_at)$(am__mv) kern/arm/efi/$(DEPDIR)/kernel_exec-startup.Tpo kern/arm/efi/$(DEPDIR)/kernel_exec-startup.Po -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS)source='kern/arm/efi/startup.S' object='kern/arm/efi/kernel_exec-startup.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ DEPDIR=$(DEPDIR) $(CCASDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS@am__nodep@)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CCASFLAGS) $(CCASFLAGS) -c -o kern/arm/efi/kernel_exec-startup.o `test -f 'kern/arm/efi/startup.S' || echo '$(srcdir)/'`kern/arm/efi/startup.S - -kern/arm/efi/kernel_exec-startup.obj: kern/arm/efi/startup.S -@am__fastdepCCAS_TRUE@ $(AM_V_CPPAS)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CCASFLAGS) $(CCASFLAGS) -MT kern/arm/efi/kernel_exec-startup.obj -MD -MP -MF kern/arm/efi/$(DEPDIR)/kernel_exec-startup.Tpo -c -o kern/arm/efi/kernel_exec-startup.obj `if test -f 'kern/arm/efi/startup.S'; then $(CYGPATH_W) 'kern/arm/efi/startup.S'; else $(CYGPATH_W) '$(srcdir)/kern/arm/efi/startup.S'; fi` -@am__fastdepCCAS_TRUE@ $(AM_V_at)$(am__mv) kern/arm/efi/$(DEPDIR)/kernel_exec-startup.Tpo kern/arm/efi/$(DEPDIR)/kernel_exec-startup.Po -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS)source='kern/arm/efi/startup.S' object='kern/arm/efi/kernel_exec-startup.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ DEPDIR=$(DEPDIR) $(CCASDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS@am__nodep@)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CCASFLAGS) $(CCASFLAGS) -c -o kern/arm/efi/kernel_exec-startup.obj `if test -f 'kern/arm/efi/startup.S'; then $(CYGPATH_W) 'kern/arm/efi/startup.S'; else $(CYGPATH_W) '$(srcdir)/kern/arm/efi/startup.S'; fi` - -kern/arm/uboot/kernel_exec-uboot.o: kern/arm/uboot/uboot.S -@am__fastdepCCAS_TRUE@ $(AM_V_CPPAS)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CCASFLAGS) $(CCASFLAGS) -MT kern/arm/uboot/kernel_exec-uboot.o -MD -MP -MF kern/arm/uboot/$(DEPDIR)/kernel_exec-uboot.Tpo -c -o kern/arm/uboot/kernel_exec-uboot.o `test -f 'kern/arm/uboot/uboot.S' || echo '$(srcdir)/'`kern/arm/uboot/uboot.S -@am__fastdepCCAS_TRUE@ $(AM_V_at)$(am__mv) kern/arm/uboot/$(DEPDIR)/kernel_exec-uboot.Tpo kern/arm/uboot/$(DEPDIR)/kernel_exec-uboot.Po -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS)source='kern/arm/uboot/uboot.S' object='kern/arm/uboot/kernel_exec-uboot.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ DEPDIR=$(DEPDIR) $(CCASDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS@am__nodep@)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CCASFLAGS) $(CCASFLAGS) -c -o kern/arm/uboot/kernel_exec-uboot.o `test -f 'kern/arm/uboot/uboot.S' || echo '$(srcdir)/'`kern/arm/uboot/uboot.S - -kern/arm/uboot/kernel_exec-uboot.obj: kern/arm/uboot/uboot.S -@am__fastdepCCAS_TRUE@ $(AM_V_CPPAS)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CCASFLAGS) $(CCASFLAGS) -MT kern/arm/uboot/kernel_exec-uboot.obj -MD -MP -MF kern/arm/uboot/$(DEPDIR)/kernel_exec-uboot.Tpo -c -o kern/arm/uboot/kernel_exec-uboot.obj `if test -f 'kern/arm/uboot/uboot.S'; then $(CYGPATH_W) 'kern/arm/uboot/uboot.S'; else $(CYGPATH_W) '$(srcdir)/kern/arm/uboot/uboot.S'; fi` -@am__fastdepCCAS_TRUE@ $(AM_V_at)$(am__mv) kern/arm/uboot/$(DEPDIR)/kernel_exec-uboot.Tpo kern/arm/uboot/$(DEPDIR)/kernel_exec-uboot.Po -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS)source='kern/arm/uboot/uboot.S' object='kern/arm/uboot/kernel_exec-uboot.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ DEPDIR=$(DEPDIR) $(CCASDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS@am__nodep@)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CCASFLAGS) $(CCASFLAGS) -c -o kern/arm/uboot/kernel_exec-uboot.obj `if test -f 'kern/arm/uboot/uboot.S'; then $(CYGPATH_W) 'kern/arm/uboot/uboot.S'; else $(CYGPATH_W) '$(srcdir)/kern/arm/uboot/uboot.S'; fi` - -kern/emu/kernel_exec-cache_s.o: kern/emu/cache_s.S -@am__fastdepCCAS_TRUE@ $(AM_V_CPPAS)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CCASFLAGS) $(CCASFLAGS) -MT kern/emu/kernel_exec-cache_s.o -MD -MP -MF kern/emu/$(DEPDIR)/kernel_exec-cache_s.Tpo -c -o kern/emu/kernel_exec-cache_s.o `test -f 'kern/emu/cache_s.S' || echo '$(srcdir)/'`kern/emu/cache_s.S -@am__fastdepCCAS_TRUE@ $(AM_V_at)$(am__mv) kern/emu/$(DEPDIR)/kernel_exec-cache_s.Tpo kern/emu/$(DEPDIR)/kernel_exec-cache_s.Po -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS)source='kern/emu/cache_s.S' object='kern/emu/kernel_exec-cache_s.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ DEPDIR=$(DEPDIR) $(CCASDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS@am__nodep@)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CCASFLAGS) $(CCASFLAGS) -c -o kern/emu/kernel_exec-cache_s.o `test -f 'kern/emu/cache_s.S' || echo '$(srcdir)/'`kern/emu/cache_s.S - -kern/emu/kernel_exec-cache_s.obj: kern/emu/cache_s.S -@am__fastdepCCAS_TRUE@ $(AM_V_CPPAS)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CCASFLAGS) $(CCASFLAGS) -MT kern/emu/kernel_exec-cache_s.obj -MD -MP -MF kern/emu/$(DEPDIR)/kernel_exec-cache_s.Tpo -c -o kern/emu/kernel_exec-cache_s.obj `if test -f 'kern/emu/cache_s.S'; then $(CYGPATH_W) 'kern/emu/cache_s.S'; else $(CYGPATH_W) '$(srcdir)/kern/emu/cache_s.S'; fi` -@am__fastdepCCAS_TRUE@ $(AM_V_at)$(am__mv) kern/emu/$(DEPDIR)/kernel_exec-cache_s.Tpo kern/emu/$(DEPDIR)/kernel_exec-cache_s.Po -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS)source='kern/emu/cache_s.S' object='kern/emu/kernel_exec-cache_s.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ DEPDIR=$(DEPDIR) $(CCASDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS@am__nodep@)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CCASFLAGS) $(CCASFLAGS) -c -o kern/emu/kernel_exec-cache_s.obj `if test -f 'kern/emu/cache_s.S'; then $(CYGPATH_W) 'kern/emu/cache_s.S'; else $(CYGPATH_W) '$(srcdir)/kern/emu/cache_s.S'; fi` - -kern/i386/coreboot/kernel_exec-startup.o: kern/i386/coreboot/startup.S -@am__fastdepCCAS_TRUE@ $(AM_V_CPPAS)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CCASFLAGS) $(CCASFLAGS) -MT kern/i386/coreboot/kernel_exec-startup.o -MD -MP -MF kern/i386/coreboot/$(DEPDIR)/kernel_exec-startup.Tpo -c -o kern/i386/coreboot/kernel_exec-startup.o `test -f 'kern/i386/coreboot/startup.S' || echo '$(srcdir)/'`kern/i386/coreboot/startup.S -@am__fastdepCCAS_TRUE@ $(AM_V_at)$(am__mv) kern/i386/coreboot/$(DEPDIR)/kernel_exec-startup.Tpo kern/i386/coreboot/$(DEPDIR)/kernel_exec-startup.Po -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS)source='kern/i386/coreboot/startup.S' object='kern/i386/coreboot/kernel_exec-startup.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ DEPDIR=$(DEPDIR) $(CCASDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS@am__nodep@)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CCASFLAGS) $(CCASFLAGS) -c -o kern/i386/coreboot/kernel_exec-startup.o `test -f 'kern/i386/coreboot/startup.S' || echo '$(srcdir)/'`kern/i386/coreboot/startup.S - -kern/i386/coreboot/kernel_exec-startup.obj: kern/i386/coreboot/startup.S -@am__fastdepCCAS_TRUE@ $(AM_V_CPPAS)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CCASFLAGS) $(CCASFLAGS) -MT kern/i386/coreboot/kernel_exec-startup.obj -MD -MP -MF kern/i386/coreboot/$(DEPDIR)/kernel_exec-startup.Tpo -c -o kern/i386/coreboot/kernel_exec-startup.obj `if test -f 'kern/i386/coreboot/startup.S'; then $(CYGPATH_W) 'kern/i386/coreboot/startup.S'; else $(CYGPATH_W) '$(srcdir)/kern/i386/coreboot/startup.S'; fi` -@am__fastdepCCAS_TRUE@ $(AM_V_at)$(am__mv) kern/i386/coreboot/$(DEPDIR)/kernel_exec-startup.Tpo kern/i386/coreboot/$(DEPDIR)/kernel_exec-startup.Po -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS)source='kern/i386/coreboot/startup.S' object='kern/i386/coreboot/kernel_exec-startup.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ DEPDIR=$(DEPDIR) $(CCASDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS@am__nodep@)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CCASFLAGS) $(CCASFLAGS) -c -o kern/i386/coreboot/kernel_exec-startup.obj `if test -f 'kern/i386/coreboot/startup.S'; then $(CYGPATH_W) 'kern/i386/coreboot/startup.S'; else $(CYGPATH_W) '$(srcdir)/kern/i386/coreboot/startup.S'; fi` - -kern/i386/efi/kernel_exec-startup.o: kern/i386/efi/startup.S -@am__fastdepCCAS_TRUE@ $(AM_V_CPPAS)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CCASFLAGS) $(CCASFLAGS) -MT kern/i386/efi/kernel_exec-startup.o -MD -MP -MF kern/i386/efi/$(DEPDIR)/kernel_exec-startup.Tpo -c -o kern/i386/efi/kernel_exec-startup.o `test -f 'kern/i386/efi/startup.S' || echo '$(srcdir)/'`kern/i386/efi/startup.S -@am__fastdepCCAS_TRUE@ $(AM_V_at)$(am__mv) kern/i386/efi/$(DEPDIR)/kernel_exec-startup.Tpo kern/i386/efi/$(DEPDIR)/kernel_exec-startup.Po -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS)source='kern/i386/efi/startup.S' object='kern/i386/efi/kernel_exec-startup.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ DEPDIR=$(DEPDIR) $(CCASDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS@am__nodep@)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CCASFLAGS) $(CCASFLAGS) -c -o kern/i386/efi/kernel_exec-startup.o `test -f 'kern/i386/efi/startup.S' || echo '$(srcdir)/'`kern/i386/efi/startup.S - -kern/i386/efi/kernel_exec-startup.obj: kern/i386/efi/startup.S -@am__fastdepCCAS_TRUE@ $(AM_V_CPPAS)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CCASFLAGS) $(CCASFLAGS) -MT kern/i386/efi/kernel_exec-startup.obj -MD -MP -MF kern/i386/efi/$(DEPDIR)/kernel_exec-startup.Tpo -c -o kern/i386/efi/kernel_exec-startup.obj `if test -f 'kern/i386/efi/startup.S'; then $(CYGPATH_W) 'kern/i386/efi/startup.S'; else $(CYGPATH_W) '$(srcdir)/kern/i386/efi/startup.S'; fi` -@am__fastdepCCAS_TRUE@ $(AM_V_at)$(am__mv) kern/i386/efi/$(DEPDIR)/kernel_exec-startup.Tpo kern/i386/efi/$(DEPDIR)/kernel_exec-startup.Po -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS)source='kern/i386/efi/startup.S' object='kern/i386/efi/kernel_exec-startup.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ DEPDIR=$(DEPDIR) $(CCASDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS@am__nodep@)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CCASFLAGS) $(CCASFLAGS) -c -o kern/i386/efi/kernel_exec-startup.obj `if test -f 'kern/i386/efi/startup.S'; then $(CYGPATH_W) 'kern/i386/efi/startup.S'; else $(CYGPATH_W) '$(srcdir)/kern/i386/efi/startup.S'; fi` - -kern/i386/ieee1275/kernel_exec-startup.o: kern/i386/ieee1275/startup.S -@am__fastdepCCAS_TRUE@ $(AM_V_CPPAS)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CCASFLAGS) $(CCASFLAGS) -MT kern/i386/ieee1275/kernel_exec-startup.o -MD -MP -MF kern/i386/ieee1275/$(DEPDIR)/kernel_exec-startup.Tpo -c -o kern/i386/ieee1275/kernel_exec-startup.o `test -f 'kern/i386/ieee1275/startup.S' || echo '$(srcdir)/'`kern/i386/ieee1275/startup.S -@am__fastdepCCAS_TRUE@ $(AM_V_at)$(am__mv) kern/i386/ieee1275/$(DEPDIR)/kernel_exec-startup.Tpo kern/i386/ieee1275/$(DEPDIR)/kernel_exec-startup.Po -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS)source='kern/i386/ieee1275/startup.S' object='kern/i386/ieee1275/kernel_exec-startup.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ DEPDIR=$(DEPDIR) $(CCASDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS@am__nodep@)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CCASFLAGS) $(CCASFLAGS) -c -o kern/i386/ieee1275/kernel_exec-startup.o `test -f 'kern/i386/ieee1275/startup.S' || echo '$(srcdir)/'`kern/i386/ieee1275/startup.S - -kern/i386/ieee1275/kernel_exec-startup.obj: kern/i386/ieee1275/startup.S -@am__fastdepCCAS_TRUE@ $(AM_V_CPPAS)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CCASFLAGS) $(CCASFLAGS) -MT kern/i386/ieee1275/kernel_exec-startup.obj -MD -MP -MF kern/i386/ieee1275/$(DEPDIR)/kernel_exec-startup.Tpo -c -o kern/i386/ieee1275/kernel_exec-startup.obj `if test -f 'kern/i386/ieee1275/startup.S'; then $(CYGPATH_W) 'kern/i386/ieee1275/startup.S'; else $(CYGPATH_W) '$(srcdir)/kern/i386/ieee1275/startup.S'; fi` -@am__fastdepCCAS_TRUE@ $(AM_V_at)$(am__mv) kern/i386/ieee1275/$(DEPDIR)/kernel_exec-startup.Tpo kern/i386/ieee1275/$(DEPDIR)/kernel_exec-startup.Po -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS)source='kern/i386/ieee1275/startup.S' object='kern/i386/ieee1275/kernel_exec-startup.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ DEPDIR=$(DEPDIR) $(CCASDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS@am__nodep@)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CCASFLAGS) $(CCASFLAGS) -c -o kern/i386/ieee1275/kernel_exec-startup.obj `if test -f 'kern/i386/ieee1275/startup.S'; then $(CYGPATH_W) 'kern/i386/ieee1275/startup.S'; else $(CYGPATH_W) '$(srcdir)/kern/i386/ieee1275/startup.S'; fi` - -kern/i386/pc/kernel_exec-startup.o: kern/i386/pc/startup.S -@am__fastdepCCAS_TRUE@ $(AM_V_CPPAS)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CCASFLAGS) $(CCASFLAGS) -MT kern/i386/pc/kernel_exec-startup.o -MD -MP -MF kern/i386/pc/$(DEPDIR)/kernel_exec-startup.Tpo -c -o kern/i386/pc/kernel_exec-startup.o `test -f 'kern/i386/pc/startup.S' || echo '$(srcdir)/'`kern/i386/pc/startup.S -@am__fastdepCCAS_TRUE@ $(AM_V_at)$(am__mv) kern/i386/pc/$(DEPDIR)/kernel_exec-startup.Tpo kern/i386/pc/$(DEPDIR)/kernel_exec-startup.Po -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS)source='kern/i386/pc/startup.S' object='kern/i386/pc/kernel_exec-startup.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ DEPDIR=$(DEPDIR) $(CCASDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS@am__nodep@)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CCASFLAGS) $(CCASFLAGS) -c -o kern/i386/pc/kernel_exec-startup.o `test -f 'kern/i386/pc/startup.S' || echo '$(srcdir)/'`kern/i386/pc/startup.S - -kern/i386/pc/kernel_exec-startup.obj: kern/i386/pc/startup.S -@am__fastdepCCAS_TRUE@ $(AM_V_CPPAS)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CCASFLAGS) $(CCASFLAGS) -MT kern/i386/pc/kernel_exec-startup.obj -MD -MP -MF kern/i386/pc/$(DEPDIR)/kernel_exec-startup.Tpo -c -o kern/i386/pc/kernel_exec-startup.obj `if test -f 'kern/i386/pc/startup.S'; then $(CYGPATH_W) 'kern/i386/pc/startup.S'; else $(CYGPATH_W) '$(srcdir)/kern/i386/pc/startup.S'; fi` -@am__fastdepCCAS_TRUE@ $(AM_V_at)$(am__mv) kern/i386/pc/$(DEPDIR)/kernel_exec-startup.Tpo kern/i386/pc/$(DEPDIR)/kernel_exec-startup.Po -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS)source='kern/i386/pc/startup.S' object='kern/i386/pc/kernel_exec-startup.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ DEPDIR=$(DEPDIR) $(CCASDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS@am__nodep@)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CCASFLAGS) $(CCASFLAGS) -c -o kern/i386/pc/kernel_exec-startup.obj `if test -f 'kern/i386/pc/startup.S'; then $(CYGPATH_W) 'kern/i386/pc/startup.S'; else $(CYGPATH_W) '$(srcdir)/kern/i386/pc/startup.S'; fi` - -kern/i386/qemu/kernel_exec-startup.o: kern/i386/qemu/startup.S -@am__fastdepCCAS_TRUE@ $(AM_V_CPPAS)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CCASFLAGS) $(CCASFLAGS) -MT kern/i386/qemu/kernel_exec-startup.o -MD -MP -MF kern/i386/qemu/$(DEPDIR)/kernel_exec-startup.Tpo -c -o kern/i386/qemu/kernel_exec-startup.o `test -f 'kern/i386/qemu/startup.S' || echo '$(srcdir)/'`kern/i386/qemu/startup.S -@am__fastdepCCAS_TRUE@ $(AM_V_at)$(am__mv) kern/i386/qemu/$(DEPDIR)/kernel_exec-startup.Tpo kern/i386/qemu/$(DEPDIR)/kernel_exec-startup.Po -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS)source='kern/i386/qemu/startup.S' object='kern/i386/qemu/kernel_exec-startup.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ DEPDIR=$(DEPDIR) $(CCASDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS@am__nodep@)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CCASFLAGS) $(CCASFLAGS) -c -o kern/i386/qemu/kernel_exec-startup.o `test -f 'kern/i386/qemu/startup.S' || echo '$(srcdir)/'`kern/i386/qemu/startup.S - -kern/i386/qemu/kernel_exec-startup.obj: kern/i386/qemu/startup.S -@am__fastdepCCAS_TRUE@ $(AM_V_CPPAS)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CCASFLAGS) $(CCASFLAGS) -MT kern/i386/qemu/kernel_exec-startup.obj -MD -MP -MF kern/i386/qemu/$(DEPDIR)/kernel_exec-startup.Tpo -c -o kern/i386/qemu/kernel_exec-startup.obj `if test -f 'kern/i386/qemu/startup.S'; then $(CYGPATH_W) 'kern/i386/qemu/startup.S'; else $(CYGPATH_W) '$(srcdir)/kern/i386/qemu/startup.S'; fi` -@am__fastdepCCAS_TRUE@ $(AM_V_at)$(am__mv) kern/i386/qemu/$(DEPDIR)/kernel_exec-startup.Tpo kern/i386/qemu/$(DEPDIR)/kernel_exec-startup.Po -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS)source='kern/i386/qemu/startup.S' object='kern/i386/qemu/kernel_exec-startup.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ DEPDIR=$(DEPDIR) $(CCASDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS@am__nodep@)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CCASFLAGS) $(CCASFLAGS) -c -o kern/i386/qemu/kernel_exec-startup.obj `if test -f 'kern/i386/qemu/startup.S'; then $(CYGPATH_W) 'kern/i386/qemu/startup.S'; else $(CYGPATH_W) '$(srcdir)/kern/i386/qemu/startup.S'; fi` - -kern/i386/xen/kernel_exec-startup.o: kern/i386/xen/startup.S -@am__fastdepCCAS_TRUE@ $(AM_V_CPPAS)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CCASFLAGS) $(CCASFLAGS) -MT kern/i386/xen/kernel_exec-startup.o -MD -MP -MF kern/i386/xen/$(DEPDIR)/kernel_exec-startup.Tpo -c -o kern/i386/xen/kernel_exec-startup.o `test -f 'kern/i386/xen/startup.S' || echo '$(srcdir)/'`kern/i386/xen/startup.S -@am__fastdepCCAS_TRUE@ $(AM_V_at)$(am__mv) kern/i386/xen/$(DEPDIR)/kernel_exec-startup.Tpo kern/i386/xen/$(DEPDIR)/kernel_exec-startup.Po -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS)source='kern/i386/xen/startup.S' object='kern/i386/xen/kernel_exec-startup.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ DEPDIR=$(DEPDIR) $(CCASDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS@am__nodep@)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CCASFLAGS) $(CCASFLAGS) -c -o kern/i386/xen/kernel_exec-startup.o `test -f 'kern/i386/xen/startup.S' || echo '$(srcdir)/'`kern/i386/xen/startup.S - -kern/i386/xen/kernel_exec-startup.obj: kern/i386/xen/startup.S -@am__fastdepCCAS_TRUE@ $(AM_V_CPPAS)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CCASFLAGS) $(CCASFLAGS) -MT kern/i386/xen/kernel_exec-startup.obj -MD -MP -MF kern/i386/xen/$(DEPDIR)/kernel_exec-startup.Tpo -c -o kern/i386/xen/kernel_exec-startup.obj `if test -f 'kern/i386/xen/startup.S'; then $(CYGPATH_W) 'kern/i386/xen/startup.S'; else $(CYGPATH_W) '$(srcdir)/kern/i386/xen/startup.S'; fi` -@am__fastdepCCAS_TRUE@ $(AM_V_at)$(am__mv) kern/i386/xen/$(DEPDIR)/kernel_exec-startup.Tpo kern/i386/xen/$(DEPDIR)/kernel_exec-startup.Po -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS)source='kern/i386/xen/startup.S' object='kern/i386/xen/kernel_exec-startup.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ DEPDIR=$(DEPDIR) $(CCASDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS@am__nodep@)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CCASFLAGS) $(CCASFLAGS) -c -o kern/i386/xen/kernel_exec-startup.obj `if test -f 'kern/i386/xen/startup.S'; then $(CYGPATH_W) 'kern/i386/xen/startup.S'; else $(CYGPATH_W) '$(srcdir)/kern/i386/xen/startup.S'; fi` - -kern/i386/xen/kernel_exec-hypercall.o: kern/i386/xen/hypercall.S -@am__fastdepCCAS_TRUE@ $(AM_V_CPPAS)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CCASFLAGS) $(CCASFLAGS) -MT kern/i386/xen/kernel_exec-hypercall.o -MD -MP -MF kern/i386/xen/$(DEPDIR)/kernel_exec-hypercall.Tpo -c -o kern/i386/xen/kernel_exec-hypercall.o `test -f 'kern/i386/xen/hypercall.S' || echo '$(srcdir)/'`kern/i386/xen/hypercall.S -@am__fastdepCCAS_TRUE@ $(AM_V_at)$(am__mv) kern/i386/xen/$(DEPDIR)/kernel_exec-hypercall.Tpo kern/i386/xen/$(DEPDIR)/kernel_exec-hypercall.Po -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS)source='kern/i386/xen/hypercall.S' object='kern/i386/xen/kernel_exec-hypercall.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ DEPDIR=$(DEPDIR) $(CCASDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS@am__nodep@)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CCASFLAGS) $(CCASFLAGS) -c -o kern/i386/xen/kernel_exec-hypercall.o `test -f 'kern/i386/xen/hypercall.S' || echo '$(srcdir)/'`kern/i386/xen/hypercall.S - -kern/i386/xen/kernel_exec-hypercall.obj: kern/i386/xen/hypercall.S -@am__fastdepCCAS_TRUE@ $(AM_V_CPPAS)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CCASFLAGS) $(CCASFLAGS) -MT kern/i386/xen/kernel_exec-hypercall.obj -MD -MP -MF kern/i386/xen/$(DEPDIR)/kernel_exec-hypercall.Tpo -c -o kern/i386/xen/kernel_exec-hypercall.obj `if test -f 'kern/i386/xen/hypercall.S'; then $(CYGPATH_W) 'kern/i386/xen/hypercall.S'; else $(CYGPATH_W) '$(srcdir)/kern/i386/xen/hypercall.S'; fi` -@am__fastdepCCAS_TRUE@ $(AM_V_at)$(am__mv) kern/i386/xen/$(DEPDIR)/kernel_exec-hypercall.Tpo kern/i386/xen/$(DEPDIR)/kernel_exec-hypercall.Po -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS)source='kern/i386/xen/hypercall.S' object='kern/i386/xen/kernel_exec-hypercall.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ DEPDIR=$(DEPDIR) $(CCASDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS@am__nodep@)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CCASFLAGS) $(CCASFLAGS) -c -o kern/i386/xen/kernel_exec-hypercall.obj `if test -f 'kern/i386/xen/hypercall.S'; then $(CYGPATH_W) 'kern/i386/xen/hypercall.S'; else $(CYGPATH_W) '$(srcdir)/kern/i386/xen/hypercall.S'; fi` - -kern/i386/xen/kernel_exec-startup_pvh.o: kern/i386/xen/startup_pvh.S -@am__fastdepCCAS_TRUE@ $(AM_V_CPPAS)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CCASFLAGS) $(CCASFLAGS) -MT kern/i386/xen/kernel_exec-startup_pvh.o -MD -MP -MF kern/i386/xen/$(DEPDIR)/kernel_exec-startup_pvh.Tpo -c -o kern/i386/xen/kernel_exec-startup_pvh.o `test -f 'kern/i386/xen/startup_pvh.S' || echo '$(srcdir)/'`kern/i386/xen/startup_pvh.S -@am__fastdepCCAS_TRUE@ $(AM_V_at)$(am__mv) kern/i386/xen/$(DEPDIR)/kernel_exec-startup_pvh.Tpo kern/i386/xen/$(DEPDIR)/kernel_exec-startup_pvh.Po -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS)source='kern/i386/xen/startup_pvh.S' object='kern/i386/xen/kernel_exec-startup_pvh.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ DEPDIR=$(DEPDIR) $(CCASDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS@am__nodep@)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CCASFLAGS) $(CCASFLAGS) -c -o kern/i386/xen/kernel_exec-startup_pvh.o `test -f 'kern/i386/xen/startup_pvh.S' || echo '$(srcdir)/'`kern/i386/xen/startup_pvh.S - -kern/i386/xen/kernel_exec-startup_pvh.obj: kern/i386/xen/startup_pvh.S -@am__fastdepCCAS_TRUE@ $(AM_V_CPPAS)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CCASFLAGS) $(CCASFLAGS) -MT kern/i386/xen/kernel_exec-startup_pvh.obj -MD -MP -MF kern/i386/xen/$(DEPDIR)/kernel_exec-startup_pvh.Tpo -c -o kern/i386/xen/kernel_exec-startup_pvh.obj `if test -f 'kern/i386/xen/startup_pvh.S'; then $(CYGPATH_W) 'kern/i386/xen/startup_pvh.S'; else $(CYGPATH_W) '$(srcdir)/kern/i386/xen/startup_pvh.S'; fi` -@am__fastdepCCAS_TRUE@ $(AM_V_at)$(am__mv) kern/i386/xen/$(DEPDIR)/kernel_exec-startup_pvh.Tpo kern/i386/xen/$(DEPDIR)/kernel_exec-startup_pvh.Po -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS)source='kern/i386/xen/startup_pvh.S' object='kern/i386/xen/kernel_exec-startup_pvh.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ DEPDIR=$(DEPDIR) $(CCASDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS@am__nodep@)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CCASFLAGS) $(CCASFLAGS) -c -o kern/i386/xen/kernel_exec-startup_pvh.obj `if test -f 'kern/i386/xen/startup_pvh.S'; then $(CYGPATH_W) 'kern/i386/xen/startup_pvh.S'; else $(CYGPATH_W) '$(srcdir)/kern/i386/xen/startup_pvh.S'; fi` - -kern/ia64/efi/kernel_exec-startup.o: kern/ia64/efi/startup.S -@am__fastdepCCAS_TRUE@ $(AM_V_CPPAS)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CCASFLAGS) $(CCASFLAGS) -MT kern/ia64/efi/kernel_exec-startup.o -MD -MP -MF kern/ia64/efi/$(DEPDIR)/kernel_exec-startup.Tpo -c -o kern/ia64/efi/kernel_exec-startup.o `test -f 'kern/ia64/efi/startup.S' || echo '$(srcdir)/'`kern/ia64/efi/startup.S -@am__fastdepCCAS_TRUE@ $(AM_V_at)$(am__mv) kern/ia64/efi/$(DEPDIR)/kernel_exec-startup.Tpo kern/ia64/efi/$(DEPDIR)/kernel_exec-startup.Po -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS)source='kern/ia64/efi/startup.S' object='kern/ia64/efi/kernel_exec-startup.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ DEPDIR=$(DEPDIR) $(CCASDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS@am__nodep@)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CCASFLAGS) $(CCASFLAGS) -c -o kern/ia64/efi/kernel_exec-startup.o `test -f 'kern/ia64/efi/startup.S' || echo '$(srcdir)/'`kern/ia64/efi/startup.S - -kern/ia64/efi/kernel_exec-startup.obj: kern/ia64/efi/startup.S -@am__fastdepCCAS_TRUE@ $(AM_V_CPPAS)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CCASFLAGS) $(CCASFLAGS) -MT kern/ia64/efi/kernel_exec-startup.obj -MD -MP -MF kern/ia64/efi/$(DEPDIR)/kernel_exec-startup.Tpo -c -o kern/ia64/efi/kernel_exec-startup.obj `if test -f 'kern/ia64/efi/startup.S'; then $(CYGPATH_W) 'kern/ia64/efi/startup.S'; else $(CYGPATH_W) '$(srcdir)/kern/ia64/efi/startup.S'; fi` -@am__fastdepCCAS_TRUE@ $(AM_V_at)$(am__mv) kern/ia64/efi/$(DEPDIR)/kernel_exec-startup.Tpo kern/ia64/efi/$(DEPDIR)/kernel_exec-startup.Po -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS)source='kern/ia64/efi/startup.S' object='kern/ia64/efi/kernel_exec-startup.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ DEPDIR=$(DEPDIR) $(CCASDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS@am__nodep@)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CCASFLAGS) $(CCASFLAGS) -c -o kern/ia64/efi/kernel_exec-startup.obj `if test -f 'kern/ia64/efi/startup.S'; then $(CYGPATH_W) 'kern/ia64/efi/startup.S'; else $(CYGPATH_W) '$(srcdir)/kern/ia64/efi/startup.S'; fi` - -kern/mips/kernel_exec-startup.o: kern/mips/startup.S -@am__fastdepCCAS_TRUE@ $(AM_V_CPPAS)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CCASFLAGS) $(CCASFLAGS) -MT kern/mips/kernel_exec-startup.o -MD -MP -MF kern/mips/$(DEPDIR)/kernel_exec-startup.Tpo -c -o kern/mips/kernel_exec-startup.o `test -f 'kern/mips/startup.S' || echo '$(srcdir)/'`kern/mips/startup.S -@am__fastdepCCAS_TRUE@ $(AM_V_at)$(am__mv) kern/mips/$(DEPDIR)/kernel_exec-startup.Tpo kern/mips/$(DEPDIR)/kernel_exec-startup.Po -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS)source='kern/mips/startup.S' object='kern/mips/kernel_exec-startup.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ DEPDIR=$(DEPDIR) $(CCASDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS@am__nodep@)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CCASFLAGS) $(CCASFLAGS) -c -o kern/mips/kernel_exec-startup.o `test -f 'kern/mips/startup.S' || echo '$(srcdir)/'`kern/mips/startup.S - -kern/mips/kernel_exec-startup.obj: kern/mips/startup.S -@am__fastdepCCAS_TRUE@ $(AM_V_CPPAS)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CCASFLAGS) $(CCASFLAGS) -MT kern/mips/kernel_exec-startup.obj -MD -MP -MF kern/mips/$(DEPDIR)/kernel_exec-startup.Tpo -c -o kern/mips/kernel_exec-startup.obj `if test -f 'kern/mips/startup.S'; then $(CYGPATH_W) 'kern/mips/startup.S'; else $(CYGPATH_W) '$(srcdir)/kern/mips/startup.S'; fi` -@am__fastdepCCAS_TRUE@ $(AM_V_at)$(am__mv) kern/mips/$(DEPDIR)/kernel_exec-startup.Tpo kern/mips/$(DEPDIR)/kernel_exec-startup.Po -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS)source='kern/mips/startup.S' object='kern/mips/kernel_exec-startup.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ DEPDIR=$(DEPDIR) $(CCASDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS@am__nodep@)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CCASFLAGS) $(CCASFLAGS) -c -o kern/mips/kernel_exec-startup.obj `if test -f 'kern/mips/startup.S'; then $(CYGPATH_W) 'kern/mips/startup.S'; else $(CYGPATH_W) '$(srcdir)/kern/mips/startup.S'; fi` - -kern/mips/kernel_exec-cache.o: kern/mips/cache.S -@am__fastdepCCAS_TRUE@ $(AM_V_CPPAS)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CCASFLAGS) $(CCASFLAGS) -MT kern/mips/kernel_exec-cache.o -MD -MP -MF kern/mips/$(DEPDIR)/kernel_exec-cache.Tpo -c -o kern/mips/kernel_exec-cache.o `test -f 'kern/mips/cache.S' || echo '$(srcdir)/'`kern/mips/cache.S -@am__fastdepCCAS_TRUE@ $(AM_V_at)$(am__mv) kern/mips/$(DEPDIR)/kernel_exec-cache.Tpo kern/mips/$(DEPDIR)/kernel_exec-cache.Po -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS)source='kern/mips/cache.S' object='kern/mips/kernel_exec-cache.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ DEPDIR=$(DEPDIR) $(CCASDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS@am__nodep@)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CCASFLAGS) $(CCASFLAGS) -c -o kern/mips/kernel_exec-cache.o `test -f 'kern/mips/cache.S' || echo '$(srcdir)/'`kern/mips/cache.S - -kern/mips/kernel_exec-cache.obj: kern/mips/cache.S -@am__fastdepCCAS_TRUE@ $(AM_V_CPPAS)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CCASFLAGS) $(CCASFLAGS) -MT kern/mips/kernel_exec-cache.obj -MD -MP -MF kern/mips/$(DEPDIR)/kernel_exec-cache.Tpo -c -o kern/mips/kernel_exec-cache.obj `if test -f 'kern/mips/cache.S'; then $(CYGPATH_W) 'kern/mips/cache.S'; else $(CYGPATH_W) '$(srcdir)/kern/mips/cache.S'; fi` -@am__fastdepCCAS_TRUE@ $(AM_V_at)$(am__mv) kern/mips/$(DEPDIR)/kernel_exec-cache.Tpo kern/mips/$(DEPDIR)/kernel_exec-cache.Po -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS)source='kern/mips/cache.S' object='kern/mips/kernel_exec-cache.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ DEPDIR=$(DEPDIR) $(CCASDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS@am__nodep@)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CCASFLAGS) $(CCASFLAGS) -c -o kern/mips/kernel_exec-cache.obj `if test -f 'kern/mips/cache.S'; then $(CYGPATH_W) 'kern/mips/cache.S'; else $(CYGPATH_W) '$(srcdir)/kern/mips/cache.S'; fi` - -kern/powerpc/ieee1275/kernel_exec-startup.o: kern/powerpc/ieee1275/startup.S -@am__fastdepCCAS_TRUE@ $(AM_V_CPPAS)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CCASFLAGS) $(CCASFLAGS) -MT kern/powerpc/ieee1275/kernel_exec-startup.o -MD -MP -MF kern/powerpc/ieee1275/$(DEPDIR)/kernel_exec-startup.Tpo -c -o kern/powerpc/ieee1275/kernel_exec-startup.o `test -f 'kern/powerpc/ieee1275/startup.S' || echo '$(srcdir)/'`kern/powerpc/ieee1275/startup.S -@am__fastdepCCAS_TRUE@ $(AM_V_at)$(am__mv) kern/powerpc/ieee1275/$(DEPDIR)/kernel_exec-startup.Tpo kern/powerpc/ieee1275/$(DEPDIR)/kernel_exec-startup.Po -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS)source='kern/powerpc/ieee1275/startup.S' object='kern/powerpc/ieee1275/kernel_exec-startup.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ DEPDIR=$(DEPDIR) $(CCASDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS@am__nodep@)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CCASFLAGS) $(CCASFLAGS) -c -o kern/powerpc/ieee1275/kernel_exec-startup.o `test -f 'kern/powerpc/ieee1275/startup.S' || echo '$(srcdir)/'`kern/powerpc/ieee1275/startup.S - -kern/powerpc/ieee1275/kernel_exec-startup.obj: kern/powerpc/ieee1275/startup.S -@am__fastdepCCAS_TRUE@ $(AM_V_CPPAS)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CCASFLAGS) $(CCASFLAGS) -MT kern/powerpc/ieee1275/kernel_exec-startup.obj -MD -MP -MF kern/powerpc/ieee1275/$(DEPDIR)/kernel_exec-startup.Tpo -c -o kern/powerpc/ieee1275/kernel_exec-startup.obj `if test -f 'kern/powerpc/ieee1275/startup.S'; then $(CYGPATH_W) 'kern/powerpc/ieee1275/startup.S'; else $(CYGPATH_W) '$(srcdir)/kern/powerpc/ieee1275/startup.S'; fi` -@am__fastdepCCAS_TRUE@ $(AM_V_at)$(am__mv) kern/powerpc/ieee1275/$(DEPDIR)/kernel_exec-startup.Tpo kern/powerpc/ieee1275/$(DEPDIR)/kernel_exec-startup.Po -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS)source='kern/powerpc/ieee1275/startup.S' object='kern/powerpc/ieee1275/kernel_exec-startup.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ DEPDIR=$(DEPDIR) $(CCASDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS@am__nodep@)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CCASFLAGS) $(CCASFLAGS) -c -o kern/powerpc/ieee1275/kernel_exec-startup.obj `if test -f 'kern/powerpc/ieee1275/startup.S'; then $(CYGPATH_W) 'kern/powerpc/ieee1275/startup.S'; else $(CYGPATH_W) '$(srcdir)/kern/powerpc/ieee1275/startup.S'; fi` - -kern/powerpc/kernel_exec-cache.o: kern/powerpc/cache.S -@am__fastdepCCAS_TRUE@ $(AM_V_CPPAS)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CCASFLAGS) $(CCASFLAGS) -MT kern/powerpc/kernel_exec-cache.o -MD -MP -MF kern/powerpc/$(DEPDIR)/kernel_exec-cache.Tpo -c -o kern/powerpc/kernel_exec-cache.o `test -f 'kern/powerpc/cache.S' || echo '$(srcdir)/'`kern/powerpc/cache.S -@am__fastdepCCAS_TRUE@ $(AM_V_at)$(am__mv) kern/powerpc/$(DEPDIR)/kernel_exec-cache.Tpo kern/powerpc/$(DEPDIR)/kernel_exec-cache.Po -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS)source='kern/powerpc/cache.S' object='kern/powerpc/kernel_exec-cache.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ DEPDIR=$(DEPDIR) $(CCASDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS@am__nodep@)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CCASFLAGS) $(CCASFLAGS) -c -o kern/powerpc/kernel_exec-cache.o `test -f 'kern/powerpc/cache.S' || echo '$(srcdir)/'`kern/powerpc/cache.S - -kern/powerpc/kernel_exec-cache.obj: kern/powerpc/cache.S -@am__fastdepCCAS_TRUE@ $(AM_V_CPPAS)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CCASFLAGS) $(CCASFLAGS) -MT kern/powerpc/kernel_exec-cache.obj -MD -MP -MF kern/powerpc/$(DEPDIR)/kernel_exec-cache.Tpo -c -o kern/powerpc/kernel_exec-cache.obj `if test -f 'kern/powerpc/cache.S'; then $(CYGPATH_W) 'kern/powerpc/cache.S'; else $(CYGPATH_W) '$(srcdir)/kern/powerpc/cache.S'; fi` -@am__fastdepCCAS_TRUE@ $(AM_V_at)$(am__mv) kern/powerpc/$(DEPDIR)/kernel_exec-cache.Tpo kern/powerpc/$(DEPDIR)/kernel_exec-cache.Po -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS)source='kern/powerpc/cache.S' object='kern/powerpc/kernel_exec-cache.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ DEPDIR=$(DEPDIR) $(CCASDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS@am__nodep@)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CCASFLAGS) $(CCASFLAGS) -c -o kern/powerpc/kernel_exec-cache.obj `if test -f 'kern/powerpc/cache.S'; then $(CYGPATH_W) 'kern/powerpc/cache.S'; else $(CYGPATH_W) '$(srcdir)/kern/powerpc/cache.S'; fi` - -kern/powerpc/kernel_exec-compiler-rt.o: kern/powerpc/compiler-rt.S -@am__fastdepCCAS_TRUE@ $(AM_V_CPPAS)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CCASFLAGS) $(CCASFLAGS) -MT kern/powerpc/kernel_exec-compiler-rt.o -MD -MP -MF kern/powerpc/$(DEPDIR)/kernel_exec-compiler-rt.Tpo -c -o kern/powerpc/kernel_exec-compiler-rt.o `test -f 'kern/powerpc/compiler-rt.S' || echo '$(srcdir)/'`kern/powerpc/compiler-rt.S -@am__fastdepCCAS_TRUE@ $(AM_V_at)$(am__mv) kern/powerpc/$(DEPDIR)/kernel_exec-compiler-rt.Tpo kern/powerpc/$(DEPDIR)/kernel_exec-compiler-rt.Po -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS)source='kern/powerpc/compiler-rt.S' object='kern/powerpc/kernel_exec-compiler-rt.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ DEPDIR=$(DEPDIR) $(CCASDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS@am__nodep@)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CCASFLAGS) $(CCASFLAGS) -c -o kern/powerpc/kernel_exec-compiler-rt.o `test -f 'kern/powerpc/compiler-rt.S' || echo '$(srcdir)/'`kern/powerpc/compiler-rt.S - -kern/powerpc/kernel_exec-compiler-rt.obj: kern/powerpc/compiler-rt.S -@am__fastdepCCAS_TRUE@ $(AM_V_CPPAS)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CCASFLAGS) $(CCASFLAGS) -MT kern/powerpc/kernel_exec-compiler-rt.obj -MD -MP -MF kern/powerpc/$(DEPDIR)/kernel_exec-compiler-rt.Tpo -c -o kern/powerpc/kernel_exec-compiler-rt.obj `if test -f 'kern/powerpc/compiler-rt.S'; then $(CYGPATH_W) 'kern/powerpc/compiler-rt.S'; else $(CYGPATH_W) '$(srcdir)/kern/powerpc/compiler-rt.S'; fi` -@am__fastdepCCAS_TRUE@ $(AM_V_at)$(am__mv) kern/powerpc/$(DEPDIR)/kernel_exec-compiler-rt.Tpo kern/powerpc/$(DEPDIR)/kernel_exec-compiler-rt.Po -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS)source='kern/powerpc/compiler-rt.S' object='kern/powerpc/kernel_exec-compiler-rt.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ DEPDIR=$(DEPDIR) $(CCASDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS@am__nodep@)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CCASFLAGS) $(CCASFLAGS) -c -o kern/powerpc/kernel_exec-compiler-rt.obj `if test -f 'kern/powerpc/compiler-rt.S'; then $(CYGPATH_W) 'kern/powerpc/compiler-rt.S'; else $(CYGPATH_W) '$(srcdir)/kern/powerpc/compiler-rt.S'; fi` - -kern/riscv/efi/kernel_exec-startup.o: kern/riscv/efi/startup.S -@am__fastdepCCAS_TRUE@ $(AM_V_CPPAS)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CCASFLAGS) $(CCASFLAGS) -MT kern/riscv/efi/kernel_exec-startup.o -MD -MP -MF kern/riscv/efi/$(DEPDIR)/kernel_exec-startup.Tpo -c -o kern/riscv/efi/kernel_exec-startup.o `test -f 'kern/riscv/efi/startup.S' || echo '$(srcdir)/'`kern/riscv/efi/startup.S -@am__fastdepCCAS_TRUE@ $(AM_V_at)$(am__mv) kern/riscv/efi/$(DEPDIR)/kernel_exec-startup.Tpo kern/riscv/efi/$(DEPDIR)/kernel_exec-startup.Po -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS)source='kern/riscv/efi/startup.S' object='kern/riscv/efi/kernel_exec-startup.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ DEPDIR=$(DEPDIR) $(CCASDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS@am__nodep@)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CCASFLAGS) $(CCASFLAGS) -c -o kern/riscv/efi/kernel_exec-startup.o `test -f 'kern/riscv/efi/startup.S' || echo '$(srcdir)/'`kern/riscv/efi/startup.S - -kern/riscv/efi/kernel_exec-startup.obj: kern/riscv/efi/startup.S -@am__fastdepCCAS_TRUE@ $(AM_V_CPPAS)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CCASFLAGS) $(CCASFLAGS) -MT kern/riscv/efi/kernel_exec-startup.obj -MD -MP -MF kern/riscv/efi/$(DEPDIR)/kernel_exec-startup.Tpo -c -o kern/riscv/efi/kernel_exec-startup.obj `if test -f 'kern/riscv/efi/startup.S'; then $(CYGPATH_W) 'kern/riscv/efi/startup.S'; else $(CYGPATH_W) '$(srcdir)/kern/riscv/efi/startup.S'; fi` -@am__fastdepCCAS_TRUE@ $(AM_V_at)$(am__mv) kern/riscv/efi/$(DEPDIR)/kernel_exec-startup.Tpo kern/riscv/efi/$(DEPDIR)/kernel_exec-startup.Po -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS)source='kern/riscv/efi/startup.S' object='kern/riscv/efi/kernel_exec-startup.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ DEPDIR=$(DEPDIR) $(CCASDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS@am__nodep@)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CCASFLAGS) $(CCASFLAGS) -c -o kern/riscv/efi/kernel_exec-startup.obj `if test -f 'kern/riscv/efi/startup.S'; then $(CYGPATH_W) 'kern/riscv/efi/startup.S'; else $(CYGPATH_W) '$(srcdir)/kern/riscv/efi/startup.S'; fi` - -kern/riscv/kernel_exec-cache_flush.o: kern/riscv/cache_flush.S -@am__fastdepCCAS_TRUE@ $(AM_V_CPPAS)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CCASFLAGS) $(CCASFLAGS) -MT kern/riscv/kernel_exec-cache_flush.o -MD -MP -MF kern/riscv/$(DEPDIR)/kernel_exec-cache_flush.Tpo -c -o kern/riscv/kernel_exec-cache_flush.o `test -f 'kern/riscv/cache_flush.S' || echo '$(srcdir)/'`kern/riscv/cache_flush.S -@am__fastdepCCAS_TRUE@ $(AM_V_at)$(am__mv) kern/riscv/$(DEPDIR)/kernel_exec-cache_flush.Tpo kern/riscv/$(DEPDIR)/kernel_exec-cache_flush.Po -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS)source='kern/riscv/cache_flush.S' object='kern/riscv/kernel_exec-cache_flush.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ DEPDIR=$(DEPDIR) $(CCASDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS@am__nodep@)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CCASFLAGS) $(CCASFLAGS) -c -o kern/riscv/kernel_exec-cache_flush.o `test -f 'kern/riscv/cache_flush.S' || echo '$(srcdir)/'`kern/riscv/cache_flush.S - -kern/riscv/kernel_exec-cache_flush.obj: kern/riscv/cache_flush.S -@am__fastdepCCAS_TRUE@ $(AM_V_CPPAS)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CCASFLAGS) $(CCASFLAGS) -MT kern/riscv/kernel_exec-cache_flush.obj -MD -MP -MF kern/riscv/$(DEPDIR)/kernel_exec-cache_flush.Tpo -c -o kern/riscv/kernel_exec-cache_flush.obj `if test -f 'kern/riscv/cache_flush.S'; then $(CYGPATH_W) 'kern/riscv/cache_flush.S'; else $(CYGPATH_W) '$(srcdir)/kern/riscv/cache_flush.S'; fi` -@am__fastdepCCAS_TRUE@ $(AM_V_at)$(am__mv) kern/riscv/$(DEPDIR)/kernel_exec-cache_flush.Tpo kern/riscv/$(DEPDIR)/kernel_exec-cache_flush.Po -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS)source='kern/riscv/cache_flush.S' object='kern/riscv/kernel_exec-cache_flush.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ DEPDIR=$(DEPDIR) $(CCASDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS@am__nodep@)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CCASFLAGS) $(CCASFLAGS) -c -o kern/riscv/kernel_exec-cache_flush.obj `if test -f 'kern/riscv/cache_flush.S'; then $(CYGPATH_W) 'kern/riscv/cache_flush.S'; else $(CYGPATH_W) '$(srcdir)/kern/riscv/cache_flush.S'; fi` - -kern/sparc64/ieee1275/kernel_exec-crt0.o: kern/sparc64/ieee1275/crt0.S -@am__fastdepCCAS_TRUE@ $(AM_V_CPPAS)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CCASFLAGS) $(CCASFLAGS) -MT kern/sparc64/ieee1275/kernel_exec-crt0.o -MD -MP -MF kern/sparc64/ieee1275/$(DEPDIR)/kernel_exec-crt0.Tpo -c -o kern/sparc64/ieee1275/kernel_exec-crt0.o `test -f 'kern/sparc64/ieee1275/crt0.S' || echo '$(srcdir)/'`kern/sparc64/ieee1275/crt0.S -@am__fastdepCCAS_TRUE@ $(AM_V_at)$(am__mv) kern/sparc64/ieee1275/$(DEPDIR)/kernel_exec-crt0.Tpo kern/sparc64/ieee1275/$(DEPDIR)/kernel_exec-crt0.Po -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS)source='kern/sparc64/ieee1275/crt0.S' object='kern/sparc64/ieee1275/kernel_exec-crt0.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ DEPDIR=$(DEPDIR) $(CCASDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS@am__nodep@)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CCASFLAGS) $(CCASFLAGS) -c -o kern/sparc64/ieee1275/kernel_exec-crt0.o `test -f 'kern/sparc64/ieee1275/crt0.S' || echo '$(srcdir)/'`kern/sparc64/ieee1275/crt0.S - -kern/sparc64/ieee1275/kernel_exec-crt0.obj: kern/sparc64/ieee1275/crt0.S -@am__fastdepCCAS_TRUE@ $(AM_V_CPPAS)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CCASFLAGS) $(CCASFLAGS) -MT kern/sparc64/ieee1275/kernel_exec-crt0.obj -MD -MP -MF kern/sparc64/ieee1275/$(DEPDIR)/kernel_exec-crt0.Tpo -c -o kern/sparc64/ieee1275/kernel_exec-crt0.obj `if test -f 'kern/sparc64/ieee1275/crt0.S'; then $(CYGPATH_W) 'kern/sparc64/ieee1275/crt0.S'; else $(CYGPATH_W) '$(srcdir)/kern/sparc64/ieee1275/crt0.S'; fi` -@am__fastdepCCAS_TRUE@ $(AM_V_at)$(am__mv) kern/sparc64/ieee1275/$(DEPDIR)/kernel_exec-crt0.Tpo kern/sparc64/ieee1275/$(DEPDIR)/kernel_exec-crt0.Po -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS)source='kern/sparc64/ieee1275/crt0.S' object='kern/sparc64/ieee1275/kernel_exec-crt0.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ DEPDIR=$(DEPDIR) $(CCASDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS@am__nodep@)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CCASFLAGS) $(CCASFLAGS) -c -o kern/sparc64/ieee1275/kernel_exec-crt0.obj `if test -f 'kern/sparc64/ieee1275/crt0.S'; then $(CYGPATH_W) 'kern/sparc64/ieee1275/crt0.S'; else $(CYGPATH_W) '$(srcdir)/kern/sparc64/ieee1275/crt0.S'; fi` - -kern/sparc64/kernel_exec-cache.o: kern/sparc64/cache.S -@am__fastdepCCAS_TRUE@ $(AM_V_CPPAS)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CCASFLAGS) $(CCASFLAGS) -MT kern/sparc64/kernel_exec-cache.o -MD -MP -MF kern/sparc64/$(DEPDIR)/kernel_exec-cache.Tpo -c -o kern/sparc64/kernel_exec-cache.o `test -f 'kern/sparc64/cache.S' || echo '$(srcdir)/'`kern/sparc64/cache.S -@am__fastdepCCAS_TRUE@ $(AM_V_at)$(am__mv) kern/sparc64/$(DEPDIR)/kernel_exec-cache.Tpo kern/sparc64/$(DEPDIR)/kernel_exec-cache.Po -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS)source='kern/sparc64/cache.S' object='kern/sparc64/kernel_exec-cache.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ DEPDIR=$(DEPDIR) $(CCASDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS@am__nodep@)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CCASFLAGS) $(CCASFLAGS) -c -o kern/sparc64/kernel_exec-cache.o `test -f 'kern/sparc64/cache.S' || echo '$(srcdir)/'`kern/sparc64/cache.S - -kern/sparc64/kernel_exec-cache.obj: kern/sparc64/cache.S -@am__fastdepCCAS_TRUE@ $(AM_V_CPPAS)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CCASFLAGS) $(CCASFLAGS) -MT kern/sparc64/kernel_exec-cache.obj -MD -MP -MF kern/sparc64/$(DEPDIR)/kernel_exec-cache.Tpo -c -o kern/sparc64/kernel_exec-cache.obj `if test -f 'kern/sparc64/cache.S'; then $(CYGPATH_W) 'kern/sparc64/cache.S'; else $(CYGPATH_W) '$(srcdir)/kern/sparc64/cache.S'; fi` -@am__fastdepCCAS_TRUE@ $(AM_V_at)$(am__mv) kern/sparc64/$(DEPDIR)/kernel_exec-cache.Tpo kern/sparc64/$(DEPDIR)/kernel_exec-cache.Po -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS)source='kern/sparc64/cache.S' object='kern/sparc64/kernel_exec-cache.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ DEPDIR=$(DEPDIR) $(CCASDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS@am__nodep@)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CCASFLAGS) $(CCASFLAGS) -c -o kern/sparc64/kernel_exec-cache.obj `if test -f 'kern/sparc64/cache.S'; then $(CYGPATH_W) 'kern/sparc64/cache.S'; else $(CYGPATH_W) '$(srcdir)/kern/sparc64/cache.S'; fi` - -kern/x86_64/efi/kernel_exec-startup.o: kern/x86_64/efi/startup.S -@am__fastdepCCAS_TRUE@ $(AM_V_CPPAS)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CCASFLAGS) $(CCASFLAGS) -MT kern/x86_64/efi/kernel_exec-startup.o -MD -MP -MF kern/x86_64/efi/$(DEPDIR)/kernel_exec-startup.Tpo -c -o kern/x86_64/efi/kernel_exec-startup.o `test -f 'kern/x86_64/efi/startup.S' || echo '$(srcdir)/'`kern/x86_64/efi/startup.S -@am__fastdepCCAS_TRUE@ $(AM_V_at)$(am__mv) kern/x86_64/efi/$(DEPDIR)/kernel_exec-startup.Tpo kern/x86_64/efi/$(DEPDIR)/kernel_exec-startup.Po -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS)source='kern/x86_64/efi/startup.S' object='kern/x86_64/efi/kernel_exec-startup.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ DEPDIR=$(DEPDIR) $(CCASDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS@am__nodep@)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CCASFLAGS) $(CCASFLAGS) -c -o kern/x86_64/efi/kernel_exec-startup.o `test -f 'kern/x86_64/efi/startup.S' || echo '$(srcdir)/'`kern/x86_64/efi/startup.S - -kern/x86_64/efi/kernel_exec-startup.obj: kern/x86_64/efi/startup.S -@am__fastdepCCAS_TRUE@ $(AM_V_CPPAS)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CCASFLAGS) $(CCASFLAGS) -MT kern/x86_64/efi/kernel_exec-startup.obj -MD -MP -MF kern/x86_64/efi/$(DEPDIR)/kernel_exec-startup.Tpo -c -o kern/x86_64/efi/kernel_exec-startup.obj `if test -f 'kern/x86_64/efi/startup.S'; then $(CYGPATH_W) 'kern/x86_64/efi/startup.S'; else $(CYGPATH_W) '$(srcdir)/kern/x86_64/efi/startup.S'; fi` -@am__fastdepCCAS_TRUE@ $(AM_V_at)$(am__mv) kern/x86_64/efi/$(DEPDIR)/kernel_exec-startup.Tpo kern/x86_64/efi/$(DEPDIR)/kernel_exec-startup.Po -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS)source='kern/x86_64/efi/startup.S' object='kern/x86_64/efi/kernel_exec-startup.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ DEPDIR=$(DEPDIR) $(CCASDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS@am__nodep@)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CCASFLAGS) $(CCASFLAGS) -c -o kern/x86_64/efi/kernel_exec-startup.obj `if test -f 'kern/x86_64/efi/startup.S'; then $(CYGPATH_W) 'kern/x86_64/efi/startup.S'; else $(CYGPATH_W) '$(srcdir)/kern/x86_64/efi/startup.S'; fi` - -kern/x86_64/efi/kernel_exec-callwrap.o: kern/x86_64/efi/callwrap.S -@am__fastdepCCAS_TRUE@ $(AM_V_CPPAS)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CCASFLAGS) $(CCASFLAGS) -MT kern/x86_64/efi/kernel_exec-callwrap.o -MD -MP -MF kern/x86_64/efi/$(DEPDIR)/kernel_exec-callwrap.Tpo -c -o kern/x86_64/efi/kernel_exec-callwrap.o `test -f 'kern/x86_64/efi/callwrap.S' || echo '$(srcdir)/'`kern/x86_64/efi/callwrap.S -@am__fastdepCCAS_TRUE@ $(AM_V_at)$(am__mv) kern/x86_64/efi/$(DEPDIR)/kernel_exec-callwrap.Tpo kern/x86_64/efi/$(DEPDIR)/kernel_exec-callwrap.Po -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS)source='kern/x86_64/efi/callwrap.S' object='kern/x86_64/efi/kernel_exec-callwrap.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ DEPDIR=$(DEPDIR) $(CCASDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS@am__nodep@)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CCASFLAGS) $(CCASFLAGS) -c -o kern/x86_64/efi/kernel_exec-callwrap.o `test -f 'kern/x86_64/efi/callwrap.S' || echo '$(srcdir)/'`kern/x86_64/efi/callwrap.S - -kern/x86_64/efi/kernel_exec-callwrap.obj: kern/x86_64/efi/callwrap.S -@am__fastdepCCAS_TRUE@ $(AM_V_CPPAS)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CCASFLAGS) $(CCASFLAGS) -MT kern/x86_64/efi/kernel_exec-callwrap.obj -MD -MP -MF kern/x86_64/efi/$(DEPDIR)/kernel_exec-callwrap.Tpo -c -o kern/x86_64/efi/kernel_exec-callwrap.obj `if test -f 'kern/x86_64/efi/callwrap.S'; then $(CYGPATH_W) 'kern/x86_64/efi/callwrap.S'; else $(CYGPATH_W) '$(srcdir)/kern/x86_64/efi/callwrap.S'; fi` -@am__fastdepCCAS_TRUE@ $(AM_V_at)$(am__mv) kern/x86_64/efi/$(DEPDIR)/kernel_exec-callwrap.Tpo kern/x86_64/efi/$(DEPDIR)/kernel_exec-callwrap.Po -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS)source='kern/x86_64/efi/callwrap.S' object='kern/x86_64/efi/kernel_exec-callwrap.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ DEPDIR=$(DEPDIR) $(CCASDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS@am__nodep@)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CCASFLAGS) $(CCASFLAGS) -c -o kern/x86_64/efi/kernel_exec-callwrap.obj `if test -f 'kern/x86_64/efi/callwrap.S'; then $(CYGPATH_W) 'kern/x86_64/efi/callwrap.S'; else $(CYGPATH_W) '$(srcdir)/kern/x86_64/efi/callwrap.S'; fi` - -kern/x86_64/xen/kernel_exec-startup.o: kern/x86_64/xen/startup.S -@am__fastdepCCAS_TRUE@ $(AM_V_CPPAS)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CCASFLAGS) $(CCASFLAGS) -MT kern/x86_64/xen/kernel_exec-startup.o -MD -MP -MF kern/x86_64/xen/$(DEPDIR)/kernel_exec-startup.Tpo -c -o kern/x86_64/xen/kernel_exec-startup.o `test -f 'kern/x86_64/xen/startup.S' || echo '$(srcdir)/'`kern/x86_64/xen/startup.S -@am__fastdepCCAS_TRUE@ $(AM_V_at)$(am__mv) kern/x86_64/xen/$(DEPDIR)/kernel_exec-startup.Tpo kern/x86_64/xen/$(DEPDIR)/kernel_exec-startup.Po -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS)source='kern/x86_64/xen/startup.S' object='kern/x86_64/xen/kernel_exec-startup.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ DEPDIR=$(DEPDIR) $(CCASDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS@am__nodep@)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CCASFLAGS) $(CCASFLAGS) -c -o kern/x86_64/xen/kernel_exec-startup.o `test -f 'kern/x86_64/xen/startup.S' || echo '$(srcdir)/'`kern/x86_64/xen/startup.S - -kern/x86_64/xen/kernel_exec-startup.obj: kern/x86_64/xen/startup.S -@am__fastdepCCAS_TRUE@ $(AM_V_CPPAS)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CCASFLAGS) $(CCASFLAGS) -MT kern/x86_64/xen/kernel_exec-startup.obj -MD -MP -MF kern/x86_64/xen/$(DEPDIR)/kernel_exec-startup.Tpo -c -o kern/x86_64/xen/kernel_exec-startup.obj `if test -f 'kern/x86_64/xen/startup.S'; then $(CYGPATH_W) 'kern/x86_64/xen/startup.S'; else $(CYGPATH_W) '$(srcdir)/kern/x86_64/xen/startup.S'; fi` -@am__fastdepCCAS_TRUE@ $(AM_V_at)$(am__mv) kern/x86_64/xen/$(DEPDIR)/kernel_exec-startup.Tpo kern/x86_64/xen/$(DEPDIR)/kernel_exec-startup.Po -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS)source='kern/x86_64/xen/startup.S' object='kern/x86_64/xen/kernel_exec-startup.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ DEPDIR=$(DEPDIR) $(CCASDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS@am__nodep@)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CCASFLAGS) $(CCASFLAGS) -c -o kern/x86_64/xen/kernel_exec-startup.obj `if test -f 'kern/x86_64/xen/startup.S'; then $(CYGPATH_W) 'kern/x86_64/xen/startup.S'; else $(CYGPATH_W) '$(srcdir)/kern/x86_64/xen/startup.S'; fi` - -kern/x86_64/xen/kernel_exec-hypercall.o: kern/x86_64/xen/hypercall.S -@am__fastdepCCAS_TRUE@ $(AM_V_CPPAS)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CCASFLAGS) $(CCASFLAGS) -MT kern/x86_64/xen/kernel_exec-hypercall.o -MD -MP -MF kern/x86_64/xen/$(DEPDIR)/kernel_exec-hypercall.Tpo -c -o kern/x86_64/xen/kernel_exec-hypercall.o `test -f 'kern/x86_64/xen/hypercall.S' || echo '$(srcdir)/'`kern/x86_64/xen/hypercall.S -@am__fastdepCCAS_TRUE@ $(AM_V_at)$(am__mv) kern/x86_64/xen/$(DEPDIR)/kernel_exec-hypercall.Tpo kern/x86_64/xen/$(DEPDIR)/kernel_exec-hypercall.Po -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS)source='kern/x86_64/xen/hypercall.S' object='kern/x86_64/xen/kernel_exec-hypercall.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ DEPDIR=$(DEPDIR) $(CCASDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS@am__nodep@)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CCASFLAGS) $(CCASFLAGS) -c -o kern/x86_64/xen/kernel_exec-hypercall.o `test -f 'kern/x86_64/xen/hypercall.S' || echo '$(srcdir)/'`kern/x86_64/xen/hypercall.S - -kern/x86_64/xen/kernel_exec-hypercall.obj: kern/x86_64/xen/hypercall.S -@am__fastdepCCAS_TRUE@ $(AM_V_CPPAS)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CCASFLAGS) $(CCASFLAGS) -MT kern/x86_64/xen/kernel_exec-hypercall.obj -MD -MP -MF kern/x86_64/xen/$(DEPDIR)/kernel_exec-hypercall.Tpo -c -o kern/x86_64/xen/kernel_exec-hypercall.obj `if test -f 'kern/x86_64/xen/hypercall.S'; then $(CYGPATH_W) 'kern/x86_64/xen/hypercall.S'; else $(CYGPATH_W) '$(srcdir)/kern/x86_64/xen/hypercall.S'; fi` -@am__fastdepCCAS_TRUE@ $(AM_V_at)$(am__mv) kern/x86_64/xen/$(DEPDIR)/kernel_exec-hypercall.Tpo kern/x86_64/xen/$(DEPDIR)/kernel_exec-hypercall.Po -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS)source='kern/x86_64/xen/hypercall.S' object='kern/x86_64/xen/kernel_exec-hypercall.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ DEPDIR=$(DEPDIR) $(CCASDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS@am__nodep@)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CCASFLAGS) $(CCASFLAGS) -c -o kern/x86_64/xen/kernel_exec-hypercall.obj `if test -f 'kern/x86_64/xen/hypercall.S'; then $(CYGPATH_W) 'kern/x86_64/xen/hypercall.S'; else $(CYGPATH_W) '$(srcdir)/kern/x86_64/xen/hypercall.S'; fi` - -boot/i386/pc/lnxboot_image-lnxboot.o: boot/i386/pc/lnxboot.S -@am__fastdepCCAS_TRUE@ $(AM_V_CPPAS)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lnxboot_image_CPPFLAGS) $(CPPFLAGS) $(lnxboot_image_CCASFLAGS) $(CCASFLAGS) -MT boot/i386/pc/lnxboot_image-lnxboot.o -MD -MP -MF boot/i386/pc/$(DEPDIR)/lnxboot_image-lnxboot.Tpo -c -o boot/i386/pc/lnxboot_image-lnxboot.o `test -f 'boot/i386/pc/lnxboot.S' || echo '$(srcdir)/'`boot/i386/pc/lnxboot.S -@am__fastdepCCAS_TRUE@ $(AM_V_at)$(am__mv) boot/i386/pc/$(DEPDIR)/lnxboot_image-lnxboot.Tpo boot/i386/pc/$(DEPDIR)/lnxboot_image-lnxboot.Po -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS)source='boot/i386/pc/lnxboot.S' object='boot/i386/pc/lnxboot_image-lnxboot.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ DEPDIR=$(DEPDIR) $(CCASDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS@am__nodep@)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lnxboot_image_CPPFLAGS) $(CPPFLAGS) $(lnxboot_image_CCASFLAGS) $(CCASFLAGS) -c -o boot/i386/pc/lnxboot_image-lnxboot.o `test -f 'boot/i386/pc/lnxboot.S' || echo '$(srcdir)/'`boot/i386/pc/lnxboot.S - -boot/i386/pc/lnxboot_image-lnxboot.obj: boot/i386/pc/lnxboot.S -@am__fastdepCCAS_TRUE@ $(AM_V_CPPAS)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lnxboot_image_CPPFLAGS) $(CPPFLAGS) $(lnxboot_image_CCASFLAGS) $(CCASFLAGS) -MT boot/i386/pc/lnxboot_image-lnxboot.obj -MD -MP -MF boot/i386/pc/$(DEPDIR)/lnxboot_image-lnxboot.Tpo -c -o boot/i386/pc/lnxboot_image-lnxboot.obj `if test -f 'boot/i386/pc/lnxboot.S'; then $(CYGPATH_W) 'boot/i386/pc/lnxboot.S'; else $(CYGPATH_W) '$(srcdir)/boot/i386/pc/lnxboot.S'; fi` -@am__fastdepCCAS_TRUE@ $(AM_V_at)$(am__mv) boot/i386/pc/$(DEPDIR)/lnxboot_image-lnxboot.Tpo boot/i386/pc/$(DEPDIR)/lnxboot_image-lnxboot.Po -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS)source='boot/i386/pc/lnxboot.S' object='boot/i386/pc/lnxboot_image-lnxboot.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ DEPDIR=$(DEPDIR) $(CCASDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS@am__nodep@)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lnxboot_image_CPPFLAGS) $(CPPFLAGS) $(lnxboot_image_CCASFLAGS) $(CCASFLAGS) -c -o boot/i386/pc/lnxboot_image-lnxboot.obj `if test -f 'boot/i386/pc/lnxboot.S'; then $(CYGPATH_W) 'boot/i386/pc/lnxboot.S'; else $(CYGPATH_W) '$(srcdir)/boot/i386/pc/lnxboot.S'; fi` - -boot/i386/pc/lzma_decompress_image-startup_raw.o: boot/i386/pc/startup_raw.S -@am__fastdepCCAS_TRUE@ $(AM_V_CPPAS)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lzma_decompress_image_CPPFLAGS) $(CPPFLAGS) $(lzma_decompress_image_CCASFLAGS) $(CCASFLAGS) -MT boot/i386/pc/lzma_decompress_image-startup_raw.o -MD -MP -MF boot/i386/pc/$(DEPDIR)/lzma_decompress_image-startup_raw.Tpo -c -o boot/i386/pc/lzma_decompress_image-startup_raw.o `test -f 'boot/i386/pc/startup_raw.S' || echo '$(srcdir)/'`boot/i386/pc/startup_raw.S -@am__fastdepCCAS_TRUE@ $(AM_V_at)$(am__mv) boot/i386/pc/$(DEPDIR)/lzma_decompress_image-startup_raw.Tpo boot/i386/pc/$(DEPDIR)/lzma_decompress_image-startup_raw.Po -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS)source='boot/i386/pc/startup_raw.S' object='boot/i386/pc/lzma_decompress_image-startup_raw.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ DEPDIR=$(DEPDIR) $(CCASDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS@am__nodep@)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lzma_decompress_image_CPPFLAGS) $(CPPFLAGS) $(lzma_decompress_image_CCASFLAGS) $(CCASFLAGS) -c -o boot/i386/pc/lzma_decompress_image-startup_raw.o `test -f 'boot/i386/pc/startup_raw.S' || echo '$(srcdir)/'`boot/i386/pc/startup_raw.S - -boot/i386/pc/lzma_decompress_image-startup_raw.obj: boot/i386/pc/startup_raw.S -@am__fastdepCCAS_TRUE@ $(AM_V_CPPAS)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lzma_decompress_image_CPPFLAGS) $(CPPFLAGS) $(lzma_decompress_image_CCASFLAGS) $(CCASFLAGS) -MT boot/i386/pc/lzma_decompress_image-startup_raw.obj -MD -MP -MF boot/i386/pc/$(DEPDIR)/lzma_decompress_image-startup_raw.Tpo -c -o boot/i386/pc/lzma_decompress_image-startup_raw.obj `if test -f 'boot/i386/pc/startup_raw.S'; then $(CYGPATH_W) 'boot/i386/pc/startup_raw.S'; else $(CYGPATH_W) '$(srcdir)/boot/i386/pc/startup_raw.S'; fi` -@am__fastdepCCAS_TRUE@ $(AM_V_at)$(am__mv) boot/i386/pc/$(DEPDIR)/lzma_decompress_image-startup_raw.Tpo boot/i386/pc/$(DEPDIR)/lzma_decompress_image-startup_raw.Po -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS)source='boot/i386/pc/startup_raw.S' object='boot/i386/pc/lzma_decompress_image-startup_raw.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ DEPDIR=$(DEPDIR) $(CCASDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS@am__nodep@)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lzma_decompress_image_CPPFLAGS) $(CPPFLAGS) $(lzma_decompress_image_CCASFLAGS) $(CCASFLAGS) -c -o boot/i386/pc/lzma_decompress_image-startup_raw.obj `if test -f 'boot/i386/pc/startup_raw.S'; then $(CYGPATH_W) 'boot/i386/pc/startup_raw.S'; else $(CYGPATH_W) '$(srcdir)/boot/i386/pc/startup_raw.S'; fi` - -mmap/i386/pc/mmap_module-mmap_helper.o: mmap/i386/pc/mmap_helper.S -@am__fastdepCCAS_TRUE@ $(AM_V_CPPAS)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mmap_module_CPPFLAGS) $(CPPFLAGS) $(mmap_module_CCASFLAGS) $(CCASFLAGS) -MT mmap/i386/pc/mmap_module-mmap_helper.o -MD -MP -MF mmap/i386/pc/$(DEPDIR)/mmap_module-mmap_helper.Tpo -c -o mmap/i386/pc/mmap_module-mmap_helper.o `test -f 'mmap/i386/pc/mmap_helper.S' || echo '$(srcdir)/'`mmap/i386/pc/mmap_helper.S -@am__fastdepCCAS_TRUE@ $(AM_V_at)$(am__mv) mmap/i386/pc/$(DEPDIR)/mmap_module-mmap_helper.Tpo mmap/i386/pc/$(DEPDIR)/mmap_module-mmap_helper.Po -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS)source='mmap/i386/pc/mmap_helper.S' object='mmap/i386/pc/mmap_module-mmap_helper.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ DEPDIR=$(DEPDIR) $(CCASDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS@am__nodep@)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mmap_module_CPPFLAGS) $(CPPFLAGS) $(mmap_module_CCASFLAGS) $(CCASFLAGS) -c -o mmap/i386/pc/mmap_module-mmap_helper.o `test -f 'mmap/i386/pc/mmap_helper.S' || echo '$(srcdir)/'`mmap/i386/pc/mmap_helper.S - -mmap/i386/pc/mmap_module-mmap_helper.obj: mmap/i386/pc/mmap_helper.S -@am__fastdepCCAS_TRUE@ $(AM_V_CPPAS)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mmap_module_CPPFLAGS) $(CPPFLAGS) $(mmap_module_CCASFLAGS) $(CCASFLAGS) -MT mmap/i386/pc/mmap_module-mmap_helper.obj -MD -MP -MF mmap/i386/pc/$(DEPDIR)/mmap_module-mmap_helper.Tpo -c -o mmap/i386/pc/mmap_module-mmap_helper.obj `if test -f 'mmap/i386/pc/mmap_helper.S'; then $(CYGPATH_W) 'mmap/i386/pc/mmap_helper.S'; else $(CYGPATH_W) '$(srcdir)/mmap/i386/pc/mmap_helper.S'; fi` -@am__fastdepCCAS_TRUE@ $(AM_V_at)$(am__mv) mmap/i386/pc/$(DEPDIR)/mmap_module-mmap_helper.Tpo mmap/i386/pc/$(DEPDIR)/mmap_module-mmap_helper.Po -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS)source='mmap/i386/pc/mmap_helper.S' object='mmap/i386/pc/mmap_module-mmap_helper.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ DEPDIR=$(DEPDIR) $(CCASDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS@am__nodep@)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mmap_module_CPPFLAGS) $(CPPFLAGS) $(mmap_module_CCASFLAGS) $(CCASFLAGS) -c -o mmap/i386/pc/mmap_module-mmap_helper.obj `if test -f 'mmap/i386/pc/mmap_helper.S'; then $(CYGPATH_W) 'mmap/i386/pc/mmap_helper.S'; else $(CYGPATH_W) '$(srcdir)/mmap/i386/pc/mmap_helper.S'; fi` - -boot/mips/none_decompress_image-startup_raw.o: boot/mips/startup_raw.S -@am__fastdepCCAS_TRUE@ $(AM_V_CPPAS)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(none_decompress_image_CPPFLAGS) $(CPPFLAGS) $(none_decompress_image_CCASFLAGS) $(CCASFLAGS) -MT boot/mips/none_decompress_image-startup_raw.o -MD -MP -MF boot/mips/$(DEPDIR)/none_decompress_image-startup_raw.Tpo -c -o boot/mips/none_decompress_image-startup_raw.o `test -f 'boot/mips/startup_raw.S' || echo '$(srcdir)/'`boot/mips/startup_raw.S -@am__fastdepCCAS_TRUE@ $(AM_V_at)$(am__mv) boot/mips/$(DEPDIR)/none_decompress_image-startup_raw.Tpo boot/mips/$(DEPDIR)/none_decompress_image-startup_raw.Po -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS)source='boot/mips/startup_raw.S' object='boot/mips/none_decompress_image-startup_raw.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ DEPDIR=$(DEPDIR) $(CCASDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS@am__nodep@)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(none_decompress_image_CPPFLAGS) $(CPPFLAGS) $(none_decompress_image_CCASFLAGS) $(CCASFLAGS) -c -o boot/mips/none_decompress_image-startup_raw.o `test -f 'boot/mips/startup_raw.S' || echo '$(srcdir)/'`boot/mips/startup_raw.S - -boot/mips/none_decompress_image-startup_raw.obj: boot/mips/startup_raw.S -@am__fastdepCCAS_TRUE@ $(AM_V_CPPAS)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(none_decompress_image_CPPFLAGS) $(CPPFLAGS) $(none_decompress_image_CCASFLAGS) $(CCASFLAGS) -MT boot/mips/none_decompress_image-startup_raw.obj -MD -MP -MF boot/mips/$(DEPDIR)/none_decompress_image-startup_raw.Tpo -c -o boot/mips/none_decompress_image-startup_raw.obj `if test -f 'boot/mips/startup_raw.S'; then $(CYGPATH_W) 'boot/mips/startup_raw.S'; else $(CYGPATH_W) '$(srcdir)/boot/mips/startup_raw.S'; fi` -@am__fastdepCCAS_TRUE@ $(AM_V_at)$(am__mv) boot/mips/$(DEPDIR)/none_decompress_image-startup_raw.Tpo boot/mips/$(DEPDIR)/none_decompress_image-startup_raw.Po -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS)source='boot/mips/startup_raw.S' object='boot/mips/none_decompress_image-startup_raw.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ DEPDIR=$(DEPDIR) $(CCASDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS@am__nodep@)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(none_decompress_image_CPPFLAGS) $(CPPFLAGS) $(none_decompress_image_CCASFLAGS) $(CCASFLAGS) -c -o boot/mips/none_decompress_image-startup_raw.obj `if test -f 'boot/mips/startup_raw.S'; then $(CYGPATH_W) 'boot/mips/startup_raw.S'; else $(CYGPATH_W) '$(srcdir)/boot/mips/startup_raw.S'; fi` - -boot/i386/pc/pxeboot_image-pxeboot.o: boot/i386/pc/pxeboot.S -@am__fastdepCCAS_TRUE@ $(AM_V_CPPAS)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(pxeboot_image_CPPFLAGS) $(CPPFLAGS) $(pxeboot_image_CCASFLAGS) $(CCASFLAGS) -MT boot/i386/pc/pxeboot_image-pxeboot.o -MD -MP -MF boot/i386/pc/$(DEPDIR)/pxeboot_image-pxeboot.Tpo -c -o boot/i386/pc/pxeboot_image-pxeboot.o `test -f 'boot/i386/pc/pxeboot.S' || echo '$(srcdir)/'`boot/i386/pc/pxeboot.S -@am__fastdepCCAS_TRUE@ $(AM_V_at)$(am__mv) boot/i386/pc/$(DEPDIR)/pxeboot_image-pxeboot.Tpo boot/i386/pc/$(DEPDIR)/pxeboot_image-pxeboot.Po -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS)source='boot/i386/pc/pxeboot.S' object='boot/i386/pc/pxeboot_image-pxeboot.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ DEPDIR=$(DEPDIR) $(CCASDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS@am__nodep@)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(pxeboot_image_CPPFLAGS) $(CPPFLAGS) $(pxeboot_image_CCASFLAGS) $(CCASFLAGS) -c -o boot/i386/pc/pxeboot_image-pxeboot.o `test -f 'boot/i386/pc/pxeboot.S' || echo '$(srcdir)/'`boot/i386/pc/pxeboot.S - -boot/i386/pc/pxeboot_image-pxeboot.obj: boot/i386/pc/pxeboot.S -@am__fastdepCCAS_TRUE@ $(AM_V_CPPAS)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(pxeboot_image_CPPFLAGS) $(CPPFLAGS) $(pxeboot_image_CCASFLAGS) $(CCASFLAGS) -MT boot/i386/pc/pxeboot_image-pxeboot.obj -MD -MP -MF boot/i386/pc/$(DEPDIR)/pxeboot_image-pxeboot.Tpo -c -o boot/i386/pc/pxeboot_image-pxeboot.obj `if test -f 'boot/i386/pc/pxeboot.S'; then $(CYGPATH_W) 'boot/i386/pc/pxeboot.S'; else $(CYGPATH_W) '$(srcdir)/boot/i386/pc/pxeboot.S'; fi` -@am__fastdepCCAS_TRUE@ $(AM_V_at)$(am__mv) boot/i386/pc/$(DEPDIR)/pxeboot_image-pxeboot.Tpo boot/i386/pc/$(DEPDIR)/pxeboot_image-pxeboot.Po -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS)source='boot/i386/pc/pxeboot.S' object='boot/i386/pc/pxeboot_image-pxeboot.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ DEPDIR=$(DEPDIR) $(CCASDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS@am__nodep@)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(pxeboot_image_CPPFLAGS) $(CPPFLAGS) $(pxeboot_image_CCASFLAGS) $(CCASFLAGS) -c -o boot/i386/pc/pxeboot_image-pxeboot.obj `if test -f 'boot/i386/pc/pxeboot.S'; then $(CYGPATH_W) 'boot/i386/pc/pxeboot.S'; else $(CYGPATH_W) '$(srcdir)/boot/i386/pc/pxeboot.S'; fi` - -lib/i386/reboot_module-reboot_trampoline.o: lib/i386/reboot_trampoline.S -@am__fastdepCCAS_TRUE@ $(AM_V_CPPAS)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(reboot_module_CPPFLAGS) $(CPPFLAGS) $(reboot_module_CCASFLAGS) $(CCASFLAGS) -MT lib/i386/reboot_module-reboot_trampoline.o -MD -MP -MF lib/i386/$(DEPDIR)/reboot_module-reboot_trampoline.Tpo -c -o lib/i386/reboot_module-reboot_trampoline.o `test -f 'lib/i386/reboot_trampoline.S' || echo '$(srcdir)/'`lib/i386/reboot_trampoline.S -@am__fastdepCCAS_TRUE@ $(AM_V_at)$(am__mv) lib/i386/$(DEPDIR)/reboot_module-reboot_trampoline.Tpo lib/i386/$(DEPDIR)/reboot_module-reboot_trampoline.Po -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS)source='lib/i386/reboot_trampoline.S' object='lib/i386/reboot_module-reboot_trampoline.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ DEPDIR=$(DEPDIR) $(CCASDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS@am__nodep@)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(reboot_module_CPPFLAGS) $(CPPFLAGS) $(reboot_module_CCASFLAGS) $(CCASFLAGS) -c -o lib/i386/reboot_module-reboot_trampoline.o `test -f 'lib/i386/reboot_trampoline.S' || echo '$(srcdir)/'`lib/i386/reboot_trampoline.S - -lib/i386/reboot_module-reboot_trampoline.obj: lib/i386/reboot_trampoline.S -@am__fastdepCCAS_TRUE@ $(AM_V_CPPAS)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(reboot_module_CPPFLAGS) $(CPPFLAGS) $(reboot_module_CCASFLAGS) $(CCASFLAGS) -MT lib/i386/reboot_module-reboot_trampoline.obj -MD -MP -MF lib/i386/$(DEPDIR)/reboot_module-reboot_trampoline.Tpo -c -o lib/i386/reboot_module-reboot_trampoline.obj `if test -f 'lib/i386/reboot_trampoline.S'; then $(CYGPATH_W) 'lib/i386/reboot_trampoline.S'; else $(CYGPATH_W) '$(srcdir)/lib/i386/reboot_trampoline.S'; fi` -@am__fastdepCCAS_TRUE@ $(AM_V_at)$(am__mv) lib/i386/$(DEPDIR)/reboot_module-reboot_trampoline.Tpo lib/i386/$(DEPDIR)/reboot_module-reboot_trampoline.Po -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS)source='lib/i386/reboot_trampoline.S' object='lib/i386/reboot_module-reboot_trampoline.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ DEPDIR=$(DEPDIR) $(CCASDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS@am__nodep@)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(reboot_module_CPPFLAGS) $(CPPFLAGS) $(reboot_module_CCASFLAGS) $(CCASFLAGS) -c -o lib/i386/reboot_module-reboot_trampoline.obj `if test -f 'lib/i386/reboot_trampoline.S'; then $(CYGPATH_W) 'lib/i386/reboot_trampoline.S'; else $(CYGPATH_W) '$(srcdir)/lib/i386/reboot_trampoline.S'; fi` - -lib/i386/relocator_module-relocator_asm.o: lib/i386/relocator_asm.S -@am__fastdepCCAS_TRUE@ $(AM_V_CPPAS)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(relocator_module_CPPFLAGS) $(CPPFLAGS) $(relocator_module_CCASFLAGS) $(CCASFLAGS) -MT lib/i386/relocator_module-relocator_asm.o -MD -MP -MF lib/i386/$(DEPDIR)/relocator_module-relocator_asm.Tpo -c -o lib/i386/relocator_module-relocator_asm.o `test -f 'lib/i386/relocator_asm.S' || echo '$(srcdir)/'`lib/i386/relocator_asm.S -@am__fastdepCCAS_TRUE@ $(AM_V_at)$(am__mv) lib/i386/$(DEPDIR)/relocator_module-relocator_asm.Tpo lib/i386/$(DEPDIR)/relocator_module-relocator_asm.Po -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS)source='lib/i386/relocator_asm.S' object='lib/i386/relocator_module-relocator_asm.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ DEPDIR=$(DEPDIR) $(CCASDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS@am__nodep@)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(relocator_module_CPPFLAGS) $(CPPFLAGS) $(relocator_module_CCASFLAGS) $(CCASFLAGS) -c -o lib/i386/relocator_module-relocator_asm.o `test -f 'lib/i386/relocator_asm.S' || echo '$(srcdir)/'`lib/i386/relocator_asm.S - -lib/i386/relocator_module-relocator_asm.obj: lib/i386/relocator_asm.S -@am__fastdepCCAS_TRUE@ $(AM_V_CPPAS)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(relocator_module_CPPFLAGS) $(CPPFLAGS) $(relocator_module_CCASFLAGS) $(CCASFLAGS) -MT lib/i386/relocator_module-relocator_asm.obj -MD -MP -MF lib/i386/$(DEPDIR)/relocator_module-relocator_asm.Tpo -c -o lib/i386/relocator_module-relocator_asm.obj `if test -f 'lib/i386/relocator_asm.S'; then $(CYGPATH_W) 'lib/i386/relocator_asm.S'; else $(CYGPATH_W) '$(srcdir)/lib/i386/relocator_asm.S'; fi` -@am__fastdepCCAS_TRUE@ $(AM_V_at)$(am__mv) lib/i386/$(DEPDIR)/relocator_module-relocator_asm.Tpo lib/i386/$(DEPDIR)/relocator_module-relocator_asm.Po -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS)source='lib/i386/relocator_asm.S' object='lib/i386/relocator_module-relocator_asm.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ DEPDIR=$(DEPDIR) $(CCASDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS@am__nodep@)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(relocator_module_CPPFLAGS) $(CPPFLAGS) $(relocator_module_CCASFLAGS) $(CCASFLAGS) -c -o lib/i386/relocator_module-relocator_asm.obj `if test -f 'lib/i386/relocator_asm.S'; then $(CYGPATH_W) 'lib/i386/relocator_asm.S'; else $(CYGPATH_W) '$(srcdir)/lib/i386/relocator_asm.S'; fi` - -lib/i386/relocator_module-relocator16.o: lib/i386/relocator16.S -@am__fastdepCCAS_TRUE@ $(AM_V_CPPAS)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(relocator_module_CPPFLAGS) $(CPPFLAGS) $(relocator_module_CCASFLAGS) $(CCASFLAGS) -MT lib/i386/relocator_module-relocator16.o -MD -MP -MF lib/i386/$(DEPDIR)/relocator_module-relocator16.Tpo -c -o lib/i386/relocator_module-relocator16.o `test -f 'lib/i386/relocator16.S' || echo '$(srcdir)/'`lib/i386/relocator16.S -@am__fastdepCCAS_TRUE@ $(AM_V_at)$(am__mv) lib/i386/$(DEPDIR)/relocator_module-relocator16.Tpo lib/i386/$(DEPDIR)/relocator_module-relocator16.Po -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS)source='lib/i386/relocator16.S' object='lib/i386/relocator_module-relocator16.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ DEPDIR=$(DEPDIR) $(CCASDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS@am__nodep@)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(relocator_module_CPPFLAGS) $(CPPFLAGS) $(relocator_module_CCASFLAGS) $(CCASFLAGS) -c -o lib/i386/relocator_module-relocator16.o `test -f 'lib/i386/relocator16.S' || echo '$(srcdir)/'`lib/i386/relocator16.S - -lib/i386/relocator_module-relocator16.obj: lib/i386/relocator16.S -@am__fastdepCCAS_TRUE@ $(AM_V_CPPAS)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(relocator_module_CPPFLAGS) $(CPPFLAGS) $(relocator_module_CCASFLAGS) $(CCASFLAGS) -MT lib/i386/relocator_module-relocator16.obj -MD -MP -MF lib/i386/$(DEPDIR)/relocator_module-relocator16.Tpo -c -o lib/i386/relocator_module-relocator16.obj `if test -f 'lib/i386/relocator16.S'; then $(CYGPATH_W) 'lib/i386/relocator16.S'; else $(CYGPATH_W) '$(srcdir)/lib/i386/relocator16.S'; fi` -@am__fastdepCCAS_TRUE@ $(AM_V_at)$(am__mv) lib/i386/$(DEPDIR)/relocator_module-relocator16.Tpo lib/i386/$(DEPDIR)/relocator_module-relocator16.Po -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS)source='lib/i386/relocator16.S' object='lib/i386/relocator_module-relocator16.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ DEPDIR=$(DEPDIR) $(CCASDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS@am__nodep@)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(relocator_module_CPPFLAGS) $(CPPFLAGS) $(relocator_module_CCASFLAGS) $(CCASFLAGS) -c -o lib/i386/relocator_module-relocator16.obj `if test -f 'lib/i386/relocator16.S'; then $(CYGPATH_W) 'lib/i386/relocator16.S'; else $(CYGPATH_W) '$(srcdir)/lib/i386/relocator16.S'; fi` - -lib/i386/relocator_module-relocator32.o: lib/i386/relocator32.S -@am__fastdepCCAS_TRUE@ $(AM_V_CPPAS)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(relocator_module_CPPFLAGS) $(CPPFLAGS) $(relocator_module_CCASFLAGS) $(CCASFLAGS) -MT lib/i386/relocator_module-relocator32.o -MD -MP -MF lib/i386/$(DEPDIR)/relocator_module-relocator32.Tpo -c -o lib/i386/relocator_module-relocator32.o `test -f 'lib/i386/relocator32.S' || echo '$(srcdir)/'`lib/i386/relocator32.S -@am__fastdepCCAS_TRUE@ $(AM_V_at)$(am__mv) lib/i386/$(DEPDIR)/relocator_module-relocator32.Tpo lib/i386/$(DEPDIR)/relocator_module-relocator32.Po -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS)source='lib/i386/relocator32.S' object='lib/i386/relocator_module-relocator32.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ DEPDIR=$(DEPDIR) $(CCASDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS@am__nodep@)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(relocator_module_CPPFLAGS) $(CPPFLAGS) $(relocator_module_CCASFLAGS) $(CCASFLAGS) -c -o lib/i386/relocator_module-relocator32.o `test -f 'lib/i386/relocator32.S' || echo '$(srcdir)/'`lib/i386/relocator32.S - -lib/i386/relocator_module-relocator32.obj: lib/i386/relocator32.S -@am__fastdepCCAS_TRUE@ $(AM_V_CPPAS)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(relocator_module_CPPFLAGS) $(CPPFLAGS) $(relocator_module_CCASFLAGS) $(CCASFLAGS) -MT lib/i386/relocator_module-relocator32.obj -MD -MP -MF lib/i386/$(DEPDIR)/relocator_module-relocator32.Tpo -c -o lib/i386/relocator_module-relocator32.obj `if test -f 'lib/i386/relocator32.S'; then $(CYGPATH_W) 'lib/i386/relocator32.S'; else $(CYGPATH_W) '$(srcdir)/lib/i386/relocator32.S'; fi` -@am__fastdepCCAS_TRUE@ $(AM_V_at)$(am__mv) lib/i386/$(DEPDIR)/relocator_module-relocator32.Tpo lib/i386/$(DEPDIR)/relocator_module-relocator32.Po -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS)source='lib/i386/relocator32.S' object='lib/i386/relocator_module-relocator32.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ DEPDIR=$(DEPDIR) $(CCASDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS@am__nodep@)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(relocator_module_CPPFLAGS) $(CPPFLAGS) $(relocator_module_CCASFLAGS) $(CCASFLAGS) -c -o lib/i386/relocator_module-relocator32.obj `if test -f 'lib/i386/relocator32.S'; then $(CYGPATH_W) 'lib/i386/relocator32.S'; else $(CYGPATH_W) '$(srcdir)/lib/i386/relocator32.S'; fi` - -lib/i386/relocator_module-relocator64.o: lib/i386/relocator64.S -@am__fastdepCCAS_TRUE@ $(AM_V_CPPAS)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(relocator_module_CPPFLAGS) $(CPPFLAGS) $(relocator_module_CCASFLAGS) $(CCASFLAGS) -MT lib/i386/relocator_module-relocator64.o -MD -MP -MF lib/i386/$(DEPDIR)/relocator_module-relocator64.Tpo -c -o lib/i386/relocator_module-relocator64.o `test -f 'lib/i386/relocator64.S' || echo '$(srcdir)/'`lib/i386/relocator64.S -@am__fastdepCCAS_TRUE@ $(AM_V_at)$(am__mv) lib/i386/$(DEPDIR)/relocator_module-relocator64.Tpo lib/i386/$(DEPDIR)/relocator_module-relocator64.Po -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS)source='lib/i386/relocator64.S' object='lib/i386/relocator_module-relocator64.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ DEPDIR=$(DEPDIR) $(CCASDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS@am__nodep@)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(relocator_module_CPPFLAGS) $(CPPFLAGS) $(relocator_module_CCASFLAGS) $(CCASFLAGS) -c -o lib/i386/relocator_module-relocator64.o `test -f 'lib/i386/relocator64.S' || echo '$(srcdir)/'`lib/i386/relocator64.S - -lib/i386/relocator_module-relocator64.obj: lib/i386/relocator64.S -@am__fastdepCCAS_TRUE@ $(AM_V_CPPAS)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(relocator_module_CPPFLAGS) $(CPPFLAGS) $(relocator_module_CCASFLAGS) $(CCASFLAGS) -MT lib/i386/relocator_module-relocator64.obj -MD -MP -MF lib/i386/$(DEPDIR)/relocator_module-relocator64.Tpo -c -o lib/i386/relocator_module-relocator64.obj `if test -f 'lib/i386/relocator64.S'; then $(CYGPATH_W) 'lib/i386/relocator64.S'; else $(CYGPATH_W) '$(srcdir)/lib/i386/relocator64.S'; fi` -@am__fastdepCCAS_TRUE@ $(AM_V_at)$(am__mv) lib/i386/$(DEPDIR)/relocator_module-relocator64.Tpo lib/i386/$(DEPDIR)/relocator_module-relocator64.Po -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS)source='lib/i386/relocator64.S' object='lib/i386/relocator_module-relocator64.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ DEPDIR=$(DEPDIR) $(CCASDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS@am__nodep@)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(relocator_module_CPPFLAGS) $(CPPFLAGS) $(relocator_module_CCASFLAGS) $(CCASFLAGS) -c -o lib/i386/relocator_module-relocator64.obj `if test -f 'lib/i386/relocator64.S'; then $(CYGPATH_W) 'lib/i386/relocator64.S'; else $(CYGPATH_W) '$(srcdir)/lib/i386/relocator64.S'; fi` - -lib/i386/xen/relocator_module-relocator.o: lib/i386/xen/relocator.S -@am__fastdepCCAS_TRUE@ $(AM_V_CPPAS)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(relocator_module_CPPFLAGS) $(CPPFLAGS) $(relocator_module_CCASFLAGS) $(CCASFLAGS) -MT lib/i386/xen/relocator_module-relocator.o -MD -MP -MF lib/i386/xen/$(DEPDIR)/relocator_module-relocator.Tpo -c -o lib/i386/xen/relocator_module-relocator.o `test -f 'lib/i386/xen/relocator.S' || echo '$(srcdir)/'`lib/i386/xen/relocator.S -@am__fastdepCCAS_TRUE@ $(AM_V_at)$(am__mv) lib/i386/xen/$(DEPDIR)/relocator_module-relocator.Tpo lib/i386/xen/$(DEPDIR)/relocator_module-relocator.Po -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS)source='lib/i386/xen/relocator.S' object='lib/i386/xen/relocator_module-relocator.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ DEPDIR=$(DEPDIR) $(CCASDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS@am__nodep@)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(relocator_module_CPPFLAGS) $(CPPFLAGS) $(relocator_module_CCASFLAGS) $(CCASFLAGS) -c -o lib/i386/xen/relocator_module-relocator.o `test -f 'lib/i386/xen/relocator.S' || echo '$(srcdir)/'`lib/i386/xen/relocator.S - -lib/i386/xen/relocator_module-relocator.obj: lib/i386/xen/relocator.S -@am__fastdepCCAS_TRUE@ $(AM_V_CPPAS)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(relocator_module_CPPFLAGS) $(CPPFLAGS) $(relocator_module_CCASFLAGS) $(CCASFLAGS) -MT lib/i386/xen/relocator_module-relocator.obj -MD -MP -MF lib/i386/xen/$(DEPDIR)/relocator_module-relocator.Tpo -c -o lib/i386/xen/relocator_module-relocator.obj `if test -f 'lib/i386/xen/relocator.S'; then $(CYGPATH_W) 'lib/i386/xen/relocator.S'; else $(CYGPATH_W) '$(srcdir)/lib/i386/xen/relocator.S'; fi` -@am__fastdepCCAS_TRUE@ $(AM_V_at)$(am__mv) lib/i386/xen/$(DEPDIR)/relocator_module-relocator.Tpo lib/i386/xen/$(DEPDIR)/relocator_module-relocator.Po -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS)source='lib/i386/xen/relocator.S' object='lib/i386/xen/relocator_module-relocator.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ DEPDIR=$(DEPDIR) $(CCASDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS@am__nodep@)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(relocator_module_CPPFLAGS) $(CPPFLAGS) $(relocator_module_CCASFLAGS) $(CCASFLAGS) -c -o lib/i386/xen/relocator_module-relocator.obj `if test -f 'lib/i386/xen/relocator.S'; then $(CYGPATH_W) 'lib/i386/xen/relocator.S'; else $(CYGPATH_W) '$(srcdir)/lib/i386/xen/relocator.S'; fi` - -lib/mips/relocator_module-relocator_asm.o: lib/mips/relocator_asm.S -@am__fastdepCCAS_TRUE@ $(AM_V_CPPAS)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(relocator_module_CPPFLAGS) $(CPPFLAGS) $(relocator_module_CCASFLAGS) $(CCASFLAGS) -MT lib/mips/relocator_module-relocator_asm.o -MD -MP -MF lib/mips/$(DEPDIR)/relocator_module-relocator_asm.Tpo -c -o lib/mips/relocator_module-relocator_asm.o `test -f 'lib/mips/relocator_asm.S' || echo '$(srcdir)/'`lib/mips/relocator_asm.S -@am__fastdepCCAS_TRUE@ $(AM_V_at)$(am__mv) lib/mips/$(DEPDIR)/relocator_module-relocator_asm.Tpo lib/mips/$(DEPDIR)/relocator_module-relocator_asm.Po -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS)source='lib/mips/relocator_asm.S' object='lib/mips/relocator_module-relocator_asm.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ DEPDIR=$(DEPDIR) $(CCASDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS@am__nodep@)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(relocator_module_CPPFLAGS) $(CPPFLAGS) $(relocator_module_CCASFLAGS) $(CCASFLAGS) -c -o lib/mips/relocator_module-relocator_asm.o `test -f 'lib/mips/relocator_asm.S' || echo '$(srcdir)/'`lib/mips/relocator_asm.S - -lib/mips/relocator_module-relocator_asm.obj: lib/mips/relocator_asm.S -@am__fastdepCCAS_TRUE@ $(AM_V_CPPAS)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(relocator_module_CPPFLAGS) $(CPPFLAGS) $(relocator_module_CCASFLAGS) $(CCASFLAGS) -MT lib/mips/relocator_module-relocator_asm.obj -MD -MP -MF lib/mips/$(DEPDIR)/relocator_module-relocator_asm.Tpo -c -o lib/mips/relocator_module-relocator_asm.obj `if test -f 'lib/mips/relocator_asm.S'; then $(CYGPATH_W) 'lib/mips/relocator_asm.S'; else $(CYGPATH_W) '$(srcdir)/lib/mips/relocator_asm.S'; fi` -@am__fastdepCCAS_TRUE@ $(AM_V_at)$(am__mv) lib/mips/$(DEPDIR)/relocator_module-relocator_asm.Tpo lib/mips/$(DEPDIR)/relocator_module-relocator_asm.Po -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS)source='lib/mips/relocator_asm.S' object='lib/mips/relocator_module-relocator_asm.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ DEPDIR=$(DEPDIR) $(CCASDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS@am__nodep@)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(relocator_module_CPPFLAGS) $(CPPFLAGS) $(relocator_module_CCASFLAGS) $(CCASFLAGS) -c -o lib/mips/relocator_module-relocator_asm.obj `if test -f 'lib/mips/relocator_asm.S'; then $(CYGPATH_W) 'lib/mips/relocator_asm.S'; else $(CYGPATH_W) '$(srcdir)/lib/mips/relocator_asm.S'; fi` - -lib/powerpc/relocator_module-relocator_asm.o: lib/powerpc/relocator_asm.S -@am__fastdepCCAS_TRUE@ $(AM_V_CPPAS)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(relocator_module_CPPFLAGS) $(CPPFLAGS) $(relocator_module_CCASFLAGS) $(CCASFLAGS) -MT lib/powerpc/relocator_module-relocator_asm.o -MD -MP -MF lib/powerpc/$(DEPDIR)/relocator_module-relocator_asm.Tpo -c -o lib/powerpc/relocator_module-relocator_asm.o `test -f 'lib/powerpc/relocator_asm.S' || echo '$(srcdir)/'`lib/powerpc/relocator_asm.S -@am__fastdepCCAS_TRUE@ $(AM_V_at)$(am__mv) lib/powerpc/$(DEPDIR)/relocator_module-relocator_asm.Tpo lib/powerpc/$(DEPDIR)/relocator_module-relocator_asm.Po -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS)source='lib/powerpc/relocator_asm.S' object='lib/powerpc/relocator_module-relocator_asm.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ DEPDIR=$(DEPDIR) $(CCASDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS@am__nodep@)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(relocator_module_CPPFLAGS) $(CPPFLAGS) $(relocator_module_CCASFLAGS) $(CCASFLAGS) -c -o lib/powerpc/relocator_module-relocator_asm.o `test -f 'lib/powerpc/relocator_asm.S' || echo '$(srcdir)/'`lib/powerpc/relocator_asm.S - -lib/powerpc/relocator_module-relocator_asm.obj: lib/powerpc/relocator_asm.S -@am__fastdepCCAS_TRUE@ $(AM_V_CPPAS)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(relocator_module_CPPFLAGS) $(CPPFLAGS) $(relocator_module_CCASFLAGS) $(CCASFLAGS) -MT lib/powerpc/relocator_module-relocator_asm.obj -MD -MP -MF lib/powerpc/$(DEPDIR)/relocator_module-relocator_asm.Tpo -c -o lib/powerpc/relocator_module-relocator_asm.obj `if test -f 'lib/powerpc/relocator_asm.S'; then $(CYGPATH_W) 'lib/powerpc/relocator_asm.S'; else $(CYGPATH_W) '$(srcdir)/lib/powerpc/relocator_asm.S'; fi` -@am__fastdepCCAS_TRUE@ $(AM_V_at)$(am__mv) lib/powerpc/$(DEPDIR)/relocator_module-relocator_asm.Tpo lib/powerpc/$(DEPDIR)/relocator_module-relocator_asm.Po -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS)source='lib/powerpc/relocator_asm.S' object='lib/powerpc/relocator_module-relocator_asm.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ DEPDIR=$(DEPDIR) $(CCASDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS@am__nodep@)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(relocator_module_CPPFLAGS) $(CPPFLAGS) $(relocator_module_CCASFLAGS) $(CCASFLAGS) -c -o lib/powerpc/relocator_module-relocator_asm.obj `if test -f 'lib/powerpc/relocator_asm.S'; then $(CYGPATH_W) 'lib/powerpc/relocator_asm.S'; else $(CYGPATH_W) '$(srcdir)/lib/powerpc/relocator_asm.S'; fi` - -lib/x86_64/relocator_module-relocator_asm.o: lib/x86_64/relocator_asm.S -@am__fastdepCCAS_TRUE@ $(AM_V_CPPAS)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(relocator_module_CPPFLAGS) $(CPPFLAGS) $(relocator_module_CCASFLAGS) $(CCASFLAGS) -MT lib/x86_64/relocator_module-relocator_asm.o -MD -MP -MF lib/x86_64/$(DEPDIR)/relocator_module-relocator_asm.Tpo -c -o lib/x86_64/relocator_module-relocator_asm.o `test -f 'lib/x86_64/relocator_asm.S' || echo '$(srcdir)/'`lib/x86_64/relocator_asm.S -@am__fastdepCCAS_TRUE@ $(AM_V_at)$(am__mv) lib/x86_64/$(DEPDIR)/relocator_module-relocator_asm.Tpo lib/x86_64/$(DEPDIR)/relocator_module-relocator_asm.Po -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS)source='lib/x86_64/relocator_asm.S' object='lib/x86_64/relocator_module-relocator_asm.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ DEPDIR=$(DEPDIR) $(CCASDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS@am__nodep@)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(relocator_module_CPPFLAGS) $(CPPFLAGS) $(relocator_module_CCASFLAGS) $(CCASFLAGS) -c -o lib/x86_64/relocator_module-relocator_asm.o `test -f 'lib/x86_64/relocator_asm.S' || echo '$(srcdir)/'`lib/x86_64/relocator_asm.S - -lib/x86_64/relocator_module-relocator_asm.obj: lib/x86_64/relocator_asm.S -@am__fastdepCCAS_TRUE@ $(AM_V_CPPAS)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(relocator_module_CPPFLAGS) $(CPPFLAGS) $(relocator_module_CCASFLAGS) $(CCASFLAGS) -MT lib/x86_64/relocator_module-relocator_asm.obj -MD -MP -MF lib/x86_64/$(DEPDIR)/relocator_module-relocator_asm.Tpo -c -o lib/x86_64/relocator_module-relocator_asm.obj `if test -f 'lib/x86_64/relocator_asm.S'; then $(CYGPATH_W) 'lib/x86_64/relocator_asm.S'; else $(CYGPATH_W) '$(srcdir)/lib/x86_64/relocator_asm.S'; fi` -@am__fastdepCCAS_TRUE@ $(AM_V_at)$(am__mv) lib/x86_64/$(DEPDIR)/relocator_module-relocator_asm.Tpo lib/x86_64/$(DEPDIR)/relocator_module-relocator_asm.Po -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS)source='lib/x86_64/relocator_asm.S' object='lib/x86_64/relocator_module-relocator_asm.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ DEPDIR=$(DEPDIR) $(CCASDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS@am__nodep@)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(relocator_module_CPPFLAGS) $(CPPFLAGS) $(relocator_module_CCASFLAGS) $(CCASFLAGS) -c -o lib/x86_64/relocator_module-relocator_asm.obj `if test -f 'lib/x86_64/relocator_asm.S'; then $(CYGPATH_W) 'lib/x86_64/relocator_asm.S'; else $(CYGPATH_W) '$(srcdir)/lib/x86_64/relocator_asm.S'; fi` - -lib/x86_64/xen/relocator_module-relocator.o: lib/x86_64/xen/relocator.S -@am__fastdepCCAS_TRUE@ $(AM_V_CPPAS)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(relocator_module_CPPFLAGS) $(CPPFLAGS) $(relocator_module_CCASFLAGS) $(CCASFLAGS) -MT lib/x86_64/xen/relocator_module-relocator.o -MD -MP -MF lib/x86_64/xen/$(DEPDIR)/relocator_module-relocator.Tpo -c -o lib/x86_64/xen/relocator_module-relocator.o `test -f 'lib/x86_64/xen/relocator.S' || echo '$(srcdir)/'`lib/x86_64/xen/relocator.S -@am__fastdepCCAS_TRUE@ $(AM_V_at)$(am__mv) lib/x86_64/xen/$(DEPDIR)/relocator_module-relocator.Tpo lib/x86_64/xen/$(DEPDIR)/relocator_module-relocator.Po -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS)source='lib/x86_64/xen/relocator.S' object='lib/x86_64/xen/relocator_module-relocator.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ DEPDIR=$(DEPDIR) $(CCASDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS@am__nodep@)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(relocator_module_CPPFLAGS) $(CPPFLAGS) $(relocator_module_CCASFLAGS) $(CCASFLAGS) -c -o lib/x86_64/xen/relocator_module-relocator.o `test -f 'lib/x86_64/xen/relocator.S' || echo '$(srcdir)/'`lib/x86_64/xen/relocator.S - -lib/x86_64/xen/relocator_module-relocator.obj: lib/x86_64/xen/relocator.S -@am__fastdepCCAS_TRUE@ $(AM_V_CPPAS)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(relocator_module_CPPFLAGS) $(CPPFLAGS) $(relocator_module_CCASFLAGS) $(CCASFLAGS) -MT lib/x86_64/xen/relocator_module-relocator.obj -MD -MP -MF lib/x86_64/xen/$(DEPDIR)/relocator_module-relocator.Tpo -c -o lib/x86_64/xen/relocator_module-relocator.obj `if test -f 'lib/x86_64/xen/relocator.S'; then $(CYGPATH_W) 'lib/x86_64/xen/relocator.S'; else $(CYGPATH_W) '$(srcdir)/lib/x86_64/xen/relocator.S'; fi` -@am__fastdepCCAS_TRUE@ $(AM_V_at)$(am__mv) lib/x86_64/xen/$(DEPDIR)/relocator_module-relocator.Tpo lib/x86_64/xen/$(DEPDIR)/relocator_module-relocator.Po -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS)source='lib/x86_64/xen/relocator.S' object='lib/x86_64/xen/relocator_module-relocator.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ DEPDIR=$(DEPDIR) $(CCASDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS@am__nodep@)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(relocator_module_CPPFLAGS) $(CPPFLAGS) $(relocator_module_CCASFLAGS) $(CCASFLAGS) -c -o lib/x86_64/xen/relocator_module-relocator.obj `if test -f 'lib/x86_64/xen/relocator.S'; then $(CYGPATH_W) 'lib/x86_64/xen/relocator.S'; else $(CYGPATH_W) '$(srcdir)/lib/x86_64/xen/relocator.S'; fi` - -lib/setjmp_module-setjmp.o: lib/setjmp.S -@am__fastdepCCAS_TRUE@ $(AM_V_CPPAS)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(setjmp_module_CPPFLAGS) $(CPPFLAGS) $(setjmp_module_CCASFLAGS) $(CCASFLAGS) -MT lib/setjmp_module-setjmp.o -MD -MP -MF lib/$(DEPDIR)/setjmp_module-setjmp.Tpo -c -o lib/setjmp_module-setjmp.o `test -f 'lib/setjmp.S' || echo '$(srcdir)/'`lib/setjmp.S -@am__fastdepCCAS_TRUE@ $(AM_V_at)$(am__mv) lib/$(DEPDIR)/setjmp_module-setjmp.Tpo lib/$(DEPDIR)/setjmp_module-setjmp.Po -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS)source='lib/setjmp.S' object='lib/setjmp_module-setjmp.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ DEPDIR=$(DEPDIR) $(CCASDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS@am__nodep@)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(setjmp_module_CPPFLAGS) $(CPPFLAGS) $(setjmp_module_CCASFLAGS) $(CCASFLAGS) -c -o lib/setjmp_module-setjmp.o `test -f 'lib/setjmp.S' || echo '$(srcdir)/'`lib/setjmp.S - -lib/setjmp_module-setjmp.obj: lib/setjmp.S -@am__fastdepCCAS_TRUE@ $(AM_V_CPPAS)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(setjmp_module_CPPFLAGS) $(CPPFLAGS) $(setjmp_module_CCASFLAGS) $(CCASFLAGS) -MT lib/setjmp_module-setjmp.obj -MD -MP -MF lib/$(DEPDIR)/setjmp_module-setjmp.Tpo -c -o lib/setjmp_module-setjmp.obj `if test -f 'lib/setjmp.S'; then $(CYGPATH_W) 'lib/setjmp.S'; else $(CYGPATH_W) '$(srcdir)/lib/setjmp.S'; fi` -@am__fastdepCCAS_TRUE@ $(AM_V_at)$(am__mv) lib/$(DEPDIR)/setjmp_module-setjmp.Tpo lib/$(DEPDIR)/setjmp_module-setjmp.Po -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS)source='lib/setjmp.S' object='lib/setjmp_module-setjmp.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ DEPDIR=$(DEPDIR) $(CCASDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS@am__nodep@)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(setjmp_module_CPPFLAGS) $(CPPFLAGS) $(setjmp_module_CCASFLAGS) $(CCASFLAGS) -c -o lib/setjmp_module-setjmp.obj `if test -f 'lib/setjmp.S'; then $(CYGPATH_W) 'lib/setjmp.S'; else $(CYGPATH_W) '$(srcdir)/lib/setjmp.S'; fi` - -boot/mips/xz_decompress_image-startup_raw.o: boot/mips/startup_raw.S -@am__fastdepCCAS_TRUE@ $(AM_V_CPPAS)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(xz_decompress_image_CPPFLAGS) $(CPPFLAGS) $(xz_decompress_image_CCASFLAGS) $(CCASFLAGS) -MT boot/mips/xz_decompress_image-startup_raw.o -MD -MP -MF boot/mips/$(DEPDIR)/xz_decompress_image-startup_raw.Tpo -c -o boot/mips/xz_decompress_image-startup_raw.o `test -f 'boot/mips/startup_raw.S' || echo '$(srcdir)/'`boot/mips/startup_raw.S -@am__fastdepCCAS_TRUE@ $(AM_V_at)$(am__mv) boot/mips/$(DEPDIR)/xz_decompress_image-startup_raw.Tpo boot/mips/$(DEPDIR)/xz_decompress_image-startup_raw.Po -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS)source='boot/mips/startup_raw.S' object='boot/mips/xz_decompress_image-startup_raw.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ DEPDIR=$(DEPDIR) $(CCASDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS@am__nodep@)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(xz_decompress_image_CPPFLAGS) $(CPPFLAGS) $(xz_decompress_image_CCASFLAGS) $(CCASFLAGS) -c -o boot/mips/xz_decompress_image-startup_raw.o `test -f 'boot/mips/startup_raw.S' || echo '$(srcdir)/'`boot/mips/startup_raw.S - -boot/mips/xz_decompress_image-startup_raw.obj: boot/mips/startup_raw.S -@am__fastdepCCAS_TRUE@ $(AM_V_CPPAS)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(xz_decompress_image_CPPFLAGS) $(CPPFLAGS) $(xz_decompress_image_CCASFLAGS) $(CCASFLAGS) -MT boot/mips/xz_decompress_image-startup_raw.obj -MD -MP -MF boot/mips/$(DEPDIR)/xz_decompress_image-startup_raw.Tpo -c -o boot/mips/xz_decompress_image-startup_raw.obj `if test -f 'boot/mips/startup_raw.S'; then $(CYGPATH_W) 'boot/mips/startup_raw.S'; else $(CYGPATH_W) '$(srcdir)/boot/mips/startup_raw.S'; fi` -@am__fastdepCCAS_TRUE@ $(AM_V_at)$(am__mv) boot/mips/$(DEPDIR)/xz_decompress_image-startup_raw.Tpo boot/mips/$(DEPDIR)/xz_decompress_image-startup_raw.Po -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS)source='boot/mips/startup_raw.S' object='boot/mips/xz_decompress_image-startup_raw.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ DEPDIR=$(DEPDIR) $(CCASDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS@am__nodep@)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(xz_decompress_image_CPPFLAGS) $(CPPFLAGS) $(xz_decompress_image_CCASFLAGS) $(CCASFLAGS) -c -o boot/mips/xz_decompress_image-startup_raw.obj `if test -f 'boot/mips/startup_raw.S'; then $(CYGPATH_W) 'boot/mips/startup_raw.S'; else $(CYGPATH_W) '$(srcdir)/boot/mips/startup_raw.S'; fi` - -.c.o: -@am__fastdepCC_TRUE@ $(AM_V_CC)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.o$$||'`;\ -@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ $< &&\ -@am__fastdepCC_TRUE@ $(am__mv) $$depbase.Tpo $$depbase.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ $< - -.c.obj: -@am__fastdepCC_TRUE@ $(AM_V_CC)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.obj$$||'`;\ -@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ `$(CYGPATH_W) '$<'` &&\ -@am__fastdepCC_TRUE@ $(am__mv) $$depbase.Tpo $$depbase.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ `$(CYGPATH_W) '$<'` - -commands/acpi_module-acpi.o: commands/acpi.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(acpi_module_CPPFLAGS) $(CPPFLAGS) $(acpi_module_CFLAGS) $(CFLAGS) -MT commands/acpi_module-acpi.o -MD -MP -MF commands/$(DEPDIR)/acpi_module-acpi.Tpo -c -o commands/acpi_module-acpi.o `test -f 'commands/acpi.c' || echo '$(srcdir)/'`commands/acpi.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/$(DEPDIR)/acpi_module-acpi.Tpo commands/$(DEPDIR)/acpi_module-acpi.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/acpi.c' object='commands/acpi_module-acpi.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(acpi_module_CPPFLAGS) $(CPPFLAGS) $(acpi_module_CFLAGS) $(CFLAGS) -c -o commands/acpi_module-acpi.o `test -f 'commands/acpi.c' || echo '$(srcdir)/'`commands/acpi.c - -commands/acpi_module-acpi.obj: commands/acpi.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(acpi_module_CPPFLAGS) $(CPPFLAGS) $(acpi_module_CFLAGS) $(CFLAGS) -MT commands/acpi_module-acpi.obj -MD -MP -MF commands/$(DEPDIR)/acpi_module-acpi.Tpo -c -o commands/acpi_module-acpi.obj `if test -f 'commands/acpi.c'; then $(CYGPATH_W) 'commands/acpi.c'; else $(CYGPATH_W) '$(srcdir)/commands/acpi.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/$(DEPDIR)/acpi_module-acpi.Tpo commands/$(DEPDIR)/acpi_module-acpi.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/acpi.c' object='commands/acpi_module-acpi.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(acpi_module_CPPFLAGS) $(CPPFLAGS) $(acpi_module_CFLAGS) $(CFLAGS) -c -o commands/acpi_module-acpi.obj `if test -f 'commands/acpi.c'; then $(CYGPATH_W) 'commands/acpi.c'; else $(CYGPATH_W) '$(srcdir)/commands/acpi.c'; fi` - -kern/acpi_module-acpi.o: kern/acpi.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(acpi_module_CPPFLAGS) $(CPPFLAGS) $(acpi_module_CFLAGS) $(CFLAGS) -MT kern/acpi_module-acpi.o -MD -MP -MF kern/$(DEPDIR)/acpi_module-acpi.Tpo -c -o kern/acpi_module-acpi.o `test -f 'kern/acpi.c' || echo '$(srcdir)/'`kern/acpi.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/$(DEPDIR)/acpi_module-acpi.Tpo kern/$(DEPDIR)/acpi_module-acpi.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/acpi.c' object='kern/acpi_module-acpi.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(acpi_module_CPPFLAGS) $(CPPFLAGS) $(acpi_module_CFLAGS) $(CFLAGS) -c -o kern/acpi_module-acpi.o `test -f 'kern/acpi.c' || echo '$(srcdir)/'`kern/acpi.c - -kern/acpi_module-acpi.obj: kern/acpi.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(acpi_module_CPPFLAGS) $(CPPFLAGS) $(acpi_module_CFLAGS) $(CFLAGS) -MT kern/acpi_module-acpi.obj -MD -MP -MF kern/$(DEPDIR)/acpi_module-acpi.Tpo -c -o kern/acpi_module-acpi.obj `if test -f 'kern/acpi.c'; then $(CYGPATH_W) 'kern/acpi.c'; else $(CYGPATH_W) '$(srcdir)/kern/acpi.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/$(DEPDIR)/acpi_module-acpi.Tpo kern/$(DEPDIR)/acpi_module-acpi.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/acpi.c' object='kern/acpi_module-acpi.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(acpi_module_CPPFLAGS) $(CPPFLAGS) $(acpi_module_CFLAGS) $(CFLAGS) -c -o kern/acpi_module-acpi.obj `if test -f 'kern/acpi.c'; then $(CYGPATH_W) 'kern/acpi.c'; else $(CYGPATH_W) '$(srcdir)/kern/acpi.c'; fi` - -kern/i386/pc/acpi_module-acpi.o: kern/i386/pc/acpi.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(acpi_module_CPPFLAGS) $(CPPFLAGS) $(acpi_module_CFLAGS) $(CFLAGS) -MT kern/i386/pc/acpi_module-acpi.o -MD -MP -MF kern/i386/pc/$(DEPDIR)/acpi_module-acpi.Tpo -c -o kern/i386/pc/acpi_module-acpi.o `test -f 'kern/i386/pc/acpi.c' || echo '$(srcdir)/'`kern/i386/pc/acpi.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/i386/pc/$(DEPDIR)/acpi_module-acpi.Tpo kern/i386/pc/$(DEPDIR)/acpi_module-acpi.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/i386/pc/acpi.c' object='kern/i386/pc/acpi_module-acpi.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(acpi_module_CPPFLAGS) $(CPPFLAGS) $(acpi_module_CFLAGS) $(CFLAGS) -c -o kern/i386/pc/acpi_module-acpi.o `test -f 'kern/i386/pc/acpi.c' || echo '$(srcdir)/'`kern/i386/pc/acpi.c - -kern/i386/pc/acpi_module-acpi.obj: kern/i386/pc/acpi.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(acpi_module_CPPFLAGS) $(CPPFLAGS) $(acpi_module_CFLAGS) $(CFLAGS) -MT kern/i386/pc/acpi_module-acpi.obj -MD -MP -MF kern/i386/pc/$(DEPDIR)/acpi_module-acpi.Tpo -c -o kern/i386/pc/acpi_module-acpi.obj `if test -f 'kern/i386/pc/acpi.c'; then $(CYGPATH_W) 'kern/i386/pc/acpi.c'; else $(CYGPATH_W) '$(srcdir)/kern/i386/pc/acpi.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/i386/pc/$(DEPDIR)/acpi_module-acpi.Tpo kern/i386/pc/$(DEPDIR)/acpi_module-acpi.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/i386/pc/acpi.c' object='kern/i386/pc/acpi_module-acpi.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(acpi_module_CPPFLAGS) $(CPPFLAGS) $(acpi_module_CFLAGS) $(CFLAGS) -c -o kern/i386/pc/acpi_module-acpi.obj `if test -f 'kern/i386/pc/acpi.c'; then $(CYGPATH_W) 'kern/i386/pc/acpi.c'; else $(CYGPATH_W) '$(srcdir)/kern/i386/pc/acpi.c'; fi` - -lib/adler32_module-adler32.o: lib/adler32.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(adler32_module_CPPFLAGS) $(CPPFLAGS) $(adler32_module_CFLAGS) $(CFLAGS) -MT lib/adler32_module-adler32.o -MD -MP -MF lib/$(DEPDIR)/adler32_module-adler32.Tpo -c -o lib/adler32_module-adler32.o `test -f 'lib/adler32.c' || echo '$(srcdir)/'`lib/adler32.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/$(DEPDIR)/adler32_module-adler32.Tpo lib/$(DEPDIR)/adler32_module-adler32.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/adler32.c' object='lib/adler32_module-adler32.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(adler32_module_CPPFLAGS) $(CPPFLAGS) $(adler32_module_CFLAGS) $(CFLAGS) -c -o lib/adler32_module-adler32.o `test -f 'lib/adler32.c' || echo '$(srcdir)/'`lib/adler32.c - -lib/adler32_module-adler32.obj: lib/adler32.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(adler32_module_CPPFLAGS) $(CPPFLAGS) $(adler32_module_CFLAGS) $(CFLAGS) -MT lib/adler32_module-adler32.obj -MD -MP -MF lib/$(DEPDIR)/adler32_module-adler32.Tpo -c -o lib/adler32_module-adler32.obj `if test -f 'lib/adler32.c'; then $(CYGPATH_W) 'lib/adler32.c'; else $(CYGPATH_W) '$(srcdir)/lib/adler32.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/$(DEPDIR)/adler32_module-adler32.Tpo lib/$(DEPDIR)/adler32_module-adler32.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/adler32.c' object='lib/adler32_module-adler32.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(adler32_module_CPPFLAGS) $(CPPFLAGS) $(adler32_module_CFLAGS) $(CFLAGS) -c -o lib/adler32_module-adler32.obj `if test -f 'lib/adler32.c'; then $(CYGPATH_W) 'lib/adler32.c'; else $(CYGPATH_W) '$(srcdir)/lib/adler32.c'; fi` - -fs/affs_module-affs.o: fs/affs.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(affs_module_CPPFLAGS) $(CPPFLAGS) $(affs_module_CFLAGS) $(CFLAGS) -MT fs/affs_module-affs.o -MD -MP -MF fs/$(DEPDIR)/affs_module-affs.Tpo -c -o fs/affs_module-affs.o `test -f 'fs/affs.c' || echo '$(srcdir)/'`fs/affs.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) fs/$(DEPDIR)/affs_module-affs.Tpo fs/$(DEPDIR)/affs_module-affs.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='fs/affs.c' object='fs/affs_module-affs.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(affs_module_CPPFLAGS) $(CPPFLAGS) $(affs_module_CFLAGS) $(CFLAGS) -c -o fs/affs_module-affs.o `test -f 'fs/affs.c' || echo '$(srcdir)/'`fs/affs.c - -fs/affs_module-affs.obj: fs/affs.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(affs_module_CPPFLAGS) $(CPPFLAGS) $(affs_module_CFLAGS) $(CFLAGS) -MT fs/affs_module-affs.obj -MD -MP -MF fs/$(DEPDIR)/affs_module-affs.Tpo -c -o fs/affs_module-affs.obj `if test -f 'fs/affs.c'; then $(CYGPATH_W) 'fs/affs.c'; else $(CYGPATH_W) '$(srcdir)/fs/affs.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) fs/$(DEPDIR)/affs_module-affs.Tpo fs/$(DEPDIR)/affs_module-affs.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='fs/affs.c' object='fs/affs_module-affs.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(affs_module_CPPFLAGS) $(CPPFLAGS) $(affs_module_CFLAGS) $(CFLAGS) -c -o fs/affs_module-affs.obj `if test -f 'fs/affs.c'; then $(CYGPATH_W) 'fs/affs.c'; else $(CYGPATH_W) '$(srcdir)/fs/affs.c'; fi` - -fs/afs_module-afs.o: fs/afs.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(afs_module_CPPFLAGS) $(CPPFLAGS) $(afs_module_CFLAGS) $(CFLAGS) -MT fs/afs_module-afs.o -MD -MP -MF fs/$(DEPDIR)/afs_module-afs.Tpo -c -o fs/afs_module-afs.o `test -f 'fs/afs.c' || echo '$(srcdir)/'`fs/afs.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) fs/$(DEPDIR)/afs_module-afs.Tpo fs/$(DEPDIR)/afs_module-afs.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='fs/afs.c' object='fs/afs_module-afs.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(afs_module_CPPFLAGS) $(CPPFLAGS) $(afs_module_CFLAGS) $(CFLAGS) -c -o fs/afs_module-afs.o `test -f 'fs/afs.c' || echo '$(srcdir)/'`fs/afs.c - -fs/afs_module-afs.obj: fs/afs.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(afs_module_CPPFLAGS) $(CPPFLAGS) $(afs_module_CFLAGS) $(CFLAGS) -MT fs/afs_module-afs.obj -MD -MP -MF fs/$(DEPDIR)/afs_module-afs.Tpo -c -o fs/afs_module-afs.obj `if test -f 'fs/afs.c'; then $(CYGPATH_W) 'fs/afs.c'; else $(CYGPATH_W) '$(srcdir)/fs/afs.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) fs/$(DEPDIR)/afs_module-afs.Tpo fs/$(DEPDIR)/afs_module-afs.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='fs/afs.c' object='fs/afs_module-afs.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(afs_module_CPPFLAGS) $(CPPFLAGS) $(afs_module_CFLAGS) $(CFLAGS) -c -o fs/afs_module-afs.obj `if test -f 'fs/afs.c'; then $(CYGPATH_W) 'fs/afs.c'; else $(CYGPATH_W) '$(srcdir)/fs/afs.c'; fi` - -disk/ahci_module-ahci.o: disk/ahci.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ahci_module_CPPFLAGS) $(CPPFLAGS) $(ahci_module_CFLAGS) $(CFLAGS) -MT disk/ahci_module-ahci.o -MD -MP -MF disk/$(DEPDIR)/ahci_module-ahci.Tpo -c -o disk/ahci_module-ahci.o `test -f 'disk/ahci.c' || echo '$(srcdir)/'`disk/ahci.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) disk/$(DEPDIR)/ahci_module-ahci.Tpo disk/$(DEPDIR)/ahci_module-ahci.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='disk/ahci.c' object='disk/ahci_module-ahci.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ahci_module_CPPFLAGS) $(CPPFLAGS) $(ahci_module_CFLAGS) $(CFLAGS) -c -o disk/ahci_module-ahci.o `test -f 'disk/ahci.c' || echo '$(srcdir)/'`disk/ahci.c - -disk/ahci_module-ahci.obj: disk/ahci.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ahci_module_CPPFLAGS) $(CPPFLAGS) $(ahci_module_CFLAGS) $(CFLAGS) -MT disk/ahci_module-ahci.obj -MD -MP -MF disk/$(DEPDIR)/ahci_module-ahci.Tpo -c -o disk/ahci_module-ahci.obj `if test -f 'disk/ahci.c'; then $(CYGPATH_W) 'disk/ahci.c'; else $(CYGPATH_W) '$(srcdir)/disk/ahci.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) disk/$(DEPDIR)/ahci_module-ahci.Tpo disk/$(DEPDIR)/ahci_module-ahci.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='disk/ahci.c' object='disk/ahci_module-ahci.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ahci_module_CPPFLAGS) $(CPPFLAGS) $(ahci_module_CFLAGS) $(CFLAGS) -c -o disk/ahci_module-ahci.obj `if test -f 'disk/ahci.c'; then $(CYGPATH_W) 'disk/ahci.c'; else $(CYGPATH_W) '$(srcdir)/disk/ahci.c'; fi` - -lib/all_video_module-fake_module.o: lib/fake_module.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(all_video_module_CPPFLAGS) $(CPPFLAGS) $(all_video_module_CFLAGS) $(CFLAGS) -MT lib/all_video_module-fake_module.o -MD -MP -MF lib/$(DEPDIR)/all_video_module-fake_module.Tpo -c -o lib/all_video_module-fake_module.o `test -f 'lib/fake_module.c' || echo '$(srcdir)/'`lib/fake_module.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/$(DEPDIR)/all_video_module-fake_module.Tpo lib/$(DEPDIR)/all_video_module-fake_module.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/fake_module.c' object='lib/all_video_module-fake_module.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(all_video_module_CPPFLAGS) $(CPPFLAGS) $(all_video_module_CFLAGS) $(CFLAGS) -c -o lib/all_video_module-fake_module.o `test -f 'lib/fake_module.c' || echo '$(srcdir)/'`lib/fake_module.c - -lib/all_video_module-fake_module.obj: lib/fake_module.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(all_video_module_CPPFLAGS) $(CPPFLAGS) $(all_video_module_CFLAGS) $(CFLAGS) -MT lib/all_video_module-fake_module.obj -MD -MP -MF lib/$(DEPDIR)/all_video_module-fake_module.Tpo -c -o lib/all_video_module-fake_module.obj `if test -f 'lib/fake_module.c'; then $(CYGPATH_W) 'lib/fake_module.c'; else $(CYGPATH_W) '$(srcdir)/lib/fake_module.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/$(DEPDIR)/all_video_module-fake_module.Tpo lib/$(DEPDIR)/all_video_module-fake_module.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/fake_module.c' object='lib/all_video_module-fake_module.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(all_video_module_CPPFLAGS) $(CPPFLAGS) $(all_video_module_CFLAGS) $(CFLAGS) -c -o lib/all_video_module-fake_module.obj `if test -f 'lib/fake_module.c'; then $(CYGPATH_W) 'lib/fake_module.c'; else $(CYGPATH_W) '$(srcdir)/lib/fake_module.c'; fi` - -loader/aout_module-aout.o: loader/aout.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(aout_module_CPPFLAGS) $(CPPFLAGS) $(aout_module_CFLAGS) $(CFLAGS) -MT loader/aout_module-aout.o -MD -MP -MF loader/$(DEPDIR)/aout_module-aout.Tpo -c -o loader/aout_module-aout.o `test -f 'loader/aout.c' || echo '$(srcdir)/'`loader/aout.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) loader/$(DEPDIR)/aout_module-aout.Tpo loader/$(DEPDIR)/aout_module-aout.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='loader/aout.c' object='loader/aout_module-aout.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(aout_module_CPPFLAGS) $(CPPFLAGS) $(aout_module_CFLAGS) $(CFLAGS) -c -o loader/aout_module-aout.o `test -f 'loader/aout.c' || echo '$(srcdir)/'`loader/aout.c - -loader/aout_module-aout.obj: loader/aout.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(aout_module_CPPFLAGS) $(CPPFLAGS) $(aout_module_CFLAGS) $(CFLAGS) -MT loader/aout_module-aout.obj -MD -MP -MF loader/$(DEPDIR)/aout_module-aout.Tpo -c -o loader/aout_module-aout.obj `if test -f 'loader/aout.c'; then $(CYGPATH_W) 'loader/aout.c'; else $(CYGPATH_W) '$(srcdir)/loader/aout.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) loader/$(DEPDIR)/aout_module-aout.Tpo loader/$(DEPDIR)/aout_module-aout.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='loader/aout.c' object='loader/aout_module-aout.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(aout_module_CPPFLAGS) $(CPPFLAGS) $(aout_module_CFLAGS) $(CFLAGS) -c -o loader/aout_module-aout.obj `if test -f 'loader/aout.c'; then $(CYGPATH_W) 'loader/aout.c'; else $(CYGPATH_W) '$(srcdir)/loader/aout.c'; fi` - -loader/efi/appleldr_module-appleloader.o: loader/efi/appleloader.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(appleldr_module_CPPFLAGS) $(CPPFLAGS) $(appleldr_module_CFLAGS) $(CFLAGS) -MT loader/efi/appleldr_module-appleloader.o -MD -MP -MF loader/efi/$(DEPDIR)/appleldr_module-appleloader.Tpo -c -o loader/efi/appleldr_module-appleloader.o `test -f 'loader/efi/appleloader.c' || echo '$(srcdir)/'`loader/efi/appleloader.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) loader/efi/$(DEPDIR)/appleldr_module-appleloader.Tpo loader/efi/$(DEPDIR)/appleldr_module-appleloader.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='loader/efi/appleloader.c' object='loader/efi/appleldr_module-appleloader.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(appleldr_module_CPPFLAGS) $(CPPFLAGS) $(appleldr_module_CFLAGS) $(CFLAGS) -c -o loader/efi/appleldr_module-appleloader.o `test -f 'loader/efi/appleloader.c' || echo '$(srcdir)/'`loader/efi/appleloader.c - -loader/efi/appleldr_module-appleloader.obj: loader/efi/appleloader.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(appleldr_module_CPPFLAGS) $(CPPFLAGS) $(appleldr_module_CFLAGS) $(CFLAGS) -MT loader/efi/appleldr_module-appleloader.obj -MD -MP -MF loader/efi/$(DEPDIR)/appleldr_module-appleloader.Tpo -c -o loader/efi/appleldr_module-appleloader.obj `if test -f 'loader/efi/appleloader.c'; then $(CYGPATH_W) 'loader/efi/appleloader.c'; else $(CYGPATH_W) '$(srcdir)/loader/efi/appleloader.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) loader/efi/$(DEPDIR)/appleldr_module-appleloader.Tpo loader/efi/$(DEPDIR)/appleldr_module-appleloader.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='loader/efi/appleloader.c' object='loader/efi/appleldr_module-appleloader.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(appleldr_module_CPPFLAGS) $(CPPFLAGS) $(appleldr_module_CFLAGS) $(CFLAGS) -c -o loader/efi/appleldr_module-appleloader.obj `if test -f 'loader/efi/appleloader.c'; then $(CYGPATH_W) 'loader/efi/appleloader.c'; else $(CYGPATH_W) '$(srcdir)/loader/efi/appleloader.c'; fi` - -fs/archelp_module-archelp.o: fs/archelp.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(archelp_module_CPPFLAGS) $(CPPFLAGS) $(archelp_module_CFLAGS) $(CFLAGS) -MT fs/archelp_module-archelp.o -MD -MP -MF fs/$(DEPDIR)/archelp_module-archelp.Tpo -c -o fs/archelp_module-archelp.o `test -f 'fs/archelp.c' || echo '$(srcdir)/'`fs/archelp.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) fs/$(DEPDIR)/archelp_module-archelp.Tpo fs/$(DEPDIR)/archelp_module-archelp.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='fs/archelp.c' object='fs/archelp_module-archelp.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(archelp_module_CPPFLAGS) $(CPPFLAGS) $(archelp_module_CFLAGS) $(CFLAGS) -c -o fs/archelp_module-archelp.o `test -f 'fs/archelp.c' || echo '$(srcdir)/'`fs/archelp.c - -fs/archelp_module-archelp.obj: fs/archelp.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(archelp_module_CPPFLAGS) $(CPPFLAGS) $(archelp_module_CFLAGS) $(CFLAGS) -MT fs/archelp_module-archelp.obj -MD -MP -MF fs/$(DEPDIR)/archelp_module-archelp.Tpo -c -o fs/archelp_module-archelp.obj `if test -f 'fs/archelp.c'; then $(CYGPATH_W) 'fs/archelp.c'; else $(CYGPATH_W) '$(srcdir)/fs/archelp.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) fs/$(DEPDIR)/archelp_module-archelp.Tpo fs/$(DEPDIR)/archelp_module-archelp.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='fs/archelp.c' object='fs/archelp_module-archelp.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(archelp_module_CPPFLAGS) $(CPPFLAGS) $(archelp_module_CFLAGS) $(CFLAGS) -c -o fs/archelp_module-archelp.obj `if test -f 'fs/archelp.c'; then $(CYGPATH_W) 'fs/archelp.c'; else $(CYGPATH_W) '$(srcdir)/fs/archelp.c'; fi` - -term/at_keyboard_module-at_keyboard.o: term/at_keyboard.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(at_keyboard_module_CPPFLAGS) $(CPPFLAGS) $(at_keyboard_module_CFLAGS) $(CFLAGS) -MT term/at_keyboard_module-at_keyboard.o -MD -MP -MF term/$(DEPDIR)/at_keyboard_module-at_keyboard.Tpo -c -o term/at_keyboard_module-at_keyboard.o `test -f 'term/at_keyboard.c' || echo '$(srcdir)/'`term/at_keyboard.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) term/$(DEPDIR)/at_keyboard_module-at_keyboard.Tpo term/$(DEPDIR)/at_keyboard_module-at_keyboard.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='term/at_keyboard.c' object='term/at_keyboard_module-at_keyboard.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(at_keyboard_module_CPPFLAGS) $(CPPFLAGS) $(at_keyboard_module_CFLAGS) $(CFLAGS) -c -o term/at_keyboard_module-at_keyboard.o `test -f 'term/at_keyboard.c' || echo '$(srcdir)/'`term/at_keyboard.c - -term/at_keyboard_module-at_keyboard.obj: term/at_keyboard.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(at_keyboard_module_CPPFLAGS) $(CPPFLAGS) $(at_keyboard_module_CFLAGS) $(CFLAGS) -MT term/at_keyboard_module-at_keyboard.obj -MD -MP -MF term/$(DEPDIR)/at_keyboard_module-at_keyboard.Tpo -c -o term/at_keyboard_module-at_keyboard.obj `if test -f 'term/at_keyboard.c'; then $(CYGPATH_W) 'term/at_keyboard.c'; else $(CYGPATH_W) '$(srcdir)/term/at_keyboard.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) term/$(DEPDIR)/at_keyboard_module-at_keyboard.Tpo term/$(DEPDIR)/at_keyboard_module-at_keyboard.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='term/at_keyboard.c' object='term/at_keyboard_module-at_keyboard.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(at_keyboard_module_CPPFLAGS) $(CPPFLAGS) $(at_keyboard_module_CFLAGS) $(CFLAGS) -c -o term/at_keyboard_module-at_keyboard.obj `if test -f 'term/at_keyboard.c'; then $(CYGPATH_W) 'term/at_keyboard.c'; else $(CYGPATH_W) '$(srcdir)/term/at_keyboard.c'; fi` - -term/at_keyboard_module-ps2.o: term/ps2.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(at_keyboard_module_CPPFLAGS) $(CPPFLAGS) $(at_keyboard_module_CFLAGS) $(CFLAGS) -MT term/at_keyboard_module-ps2.o -MD -MP -MF term/$(DEPDIR)/at_keyboard_module-ps2.Tpo -c -o term/at_keyboard_module-ps2.o `test -f 'term/ps2.c' || echo '$(srcdir)/'`term/ps2.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) term/$(DEPDIR)/at_keyboard_module-ps2.Tpo term/$(DEPDIR)/at_keyboard_module-ps2.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='term/ps2.c' object='term/at_keyboard_module-ps2.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(at_keyboard_module_CPPFLAGS) $(CPPFLAGS) $(at_keyboard_module_CFLAGS) $(CFLAGS) -c -o term/at_keyboard_module-ps2.o `test -f 'term/ps2.c' || echo '$(srcdir)/'`term/ps2.c - -term/at_keyboard_module-ps2.obj: term/ps2.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(at_keyboard_module_CPPFLAGS) $(CPPFLAGS) $(at_keyboard_module_CFLAGS) $(CFLAGS) -MT term/at_keyboard_module-ps2.obj -MD -MP -MF term/$(DEPDIR)/at_keyboard_module-ps2.Tpo -c -o term/at_keyboard_module-ps2.obj `if test -f 'term/ps2.c'; then $(CYGPATH_W) 'term/ps2.c'; else $(CYGPATH_W) '$(srcdir)/term/ps2.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) term/$(DEPDIR)/at_keyboard_module-ps2.Tpo term/$(DEPDIR)/at_keyboard_module-ps2.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='term/ps2.c' object='term/at_keyboard_module-ps2.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(at_keyboard_module_CPPFLAGS) $(CPPFLAGS) $(at_keyboard_module_CFLAGS) $(CFLAGS) -c -o term/at_keyboard_module-ps2.obj `if test -f 'term/ps2.c'; then $(CYGPATH_W) 'term/ps2.c'; else $(CYGPATH_W) '$(srcdir)/term/ps2.c'; fi` - -disk/ata_module-ata.o: disk/ata.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ata_module_CPPFLAGS) $(CPPFLAGS) $(ata_module_CFLAGS) $(CFLAGS) -MT disk/ata_module-ata.o -MD -MP -MF disk/$(DEPDIR)/ata_module-ata.Tpo -c -o disk/ata_module-ata.o `test -f 'disk/ata.c' || echo '$(srcdir)/'`disk/ata.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) disk/$(DEPDIR)/ata_module-ata.Tpo disk/$(DEPDIR)/ata_module-ata.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='disk/ata.c' object='disk/ata_module-ata.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ata_module_CPPFLAGS) $(CPPFLAGS) $(ata_module_CFLAGS) $(CFLAGS) -c -o disk/ata_module-ata.o `test -f 'disk/ata.c' || echo '$(srcdir)/'`disk/ata.c - -disk/ata_module-ata.obj: disk/ata.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ata_module_CPPFLAGS) $(CPPFLAGS) $(ata_module_CFLAGS) $(CFLAGS) -MT disk/ata_module-ata.obj -MD -MP -MF disk/$(DEPDIR)/ata_module-ata.Tpo -c -o disk/ata_module-ata.obj `if test -f 'disk/ata.c'; then $(CYGPATH_W) 'disk/ata.c'; else $(CYGPATH_W) '$(srcdir)/disk/ata.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) disk/$(DEPDIR)/ata_module-ata.Tpo disk/$(DEPDIR)/ata_module-ata.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='disk/ata.c' object='disk/ata_module-ata.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ata_module_CPPFLAGS) $(CPPFLAGS) $(ata_module_CFLAGS) $(CFLAGS) -c -o disk/ata_module-ata.obj `if test -f 'disk/ata.c'; then $(CYGPATH_W) 'disk/ata.c'; else $(CYGPATH_W) '$(srcdir)/disk/ata.c'; fi` - -lib/i386/backtrace_module-backtrace.o: lib/i386/backtrace.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(backtrace_module_CPPFLAGS) $(CPPFLAGS) $(backtrace_module_CFLAGS) $(CFLAGS) -MT lib/i386/backtrace_module-backtrace.o -MD -MP -MF lib/i386/$(DEPDIR)/backtrace_module-backtrace.Tpo -c -o lib/i386/backtrace_module-backtrace.o `test -f 'lib/i386/backtrace.c' || echo '$(srcdir)/'`lib/i386/backtrace.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/i386/$(DEPDIR)/backtrace_module-backtrace.Tpo lib/i386/$(DEPDIR)/backtrace_module-backtrace.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/i386/backtrace.c' object='lib/i386/backtrace_module-backtrace.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(backtrace_module_CPPFLAGS) $(CPPFLAGS) $(backtrace_module_CFLAGS) $(CFLAGS) -c -o lib/i386/backtrace_module-backtrace.o `test -f 'lib/i386/backtrace.c' || echo '$(srcdir)/'`lib/i386/backtrace.c - -lib/i386/backtrace_module-backtrace.obj: lib/i386/backtrace.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(backtrace_module_CPPFLAGS) $(CPPFLAGS) $(backtrace_module_CFLAGS) $(CFLAGS) -MT lib/i386/backtrace_module-backtrace.obj -MD -MP -MF lib/i386/$(DEPDIR)/backtrace_module-backtrace.Tpo -c -o lib/i386/backtrace_module-backtrace.obj `if test -f 'lib/i386/backtrace.c'; then $(CYGPATH_W) 'lib/i386/backtrace.c'; else $(CYGPATH_W) '$(srcdir)/lib/i386/backtrace.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/i386/$(DEPDIR)/backtrace_module-backtrace.Tpo lib/i386/$(DEPDIR)/backtrace_module-backtrace.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/i386/backtrace.c' object='lib/i386/backtrace_module-backtrace.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(backtrace_module_CPPFLAGS) $(CPPFLAGS) $(backtrace_module_CFLAGS) $(CFLAGS) -c -o lib/i386/backtrace_module-backtrace.obj `if test -f 'lib/i386/backtrace.c'; then $(CYGPATH_W) 'lib/i386/backtrace.c'; else $(CYGPATH_W) '$(srcdir)/lib/i386/backtrace.c'; fi` - -lib/backtrace_module-backtrace.o: lib/backtrace.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(backtrace_module_CPPFLAGS) $(CPPFLAGS) $(backtrace_module_CFLAGS) $(CFLAGS) -MT lib/backtrace_module-backtrace.o -MD -MP -MF lib/$(DEPDIR)/backtrace_module-backtrace.Tpo -c -o lib/backtrace_module-backtrace.o `test -f 'lib/backtrace.c' || echo '$(srcdir)/'`lib/backtrace.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/$(DEPDIR)/backtrace_module-backtrace.Tpo lib/$(DEPDIR)/backtrace_module-backtrace.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/backtrace.c' object='lib/backtrace_module-backtrace.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(backtrace_module_CPPFLAGS) $(CPPFLAGS) $(backtrace_module_CFLAGS) $(CFLAGS) -c -o lib/backtrace_module-backtrace.o `test -f 'lib/backtrace.c' || echo '$(srcdir)/'`lib/backtrace.c - -lib/backtrace_module-backtrace.obj: lib/backtrace.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(backtrace_module_CPPFLAGS) $(CPPFLAGS) $(backtrace_module_CFLAGS) $(CFLAGS) -MT lib/backtrace_module-backtrace.obj -MD -MP -MF lib/$(DEPDIR)/backtrace_module-backtrace.Tpo -c -o lib/backtrace_module-backtrace.obj `if test -f 'lib/backtrace.c'; then $(CYGPATH_W) 'lib/backtrace.c'; else $(CYGPATH_W) '$(srcdir)/lib/backtrace.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/$(DEPDIR)/backtrace_module-backtrace.Tpo lib/$(DEPDIR)/backtrace_module-backtrace.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/backtrace.c' object='lib/backtrace_module-backtrace.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(backtrace_module_CPPFLAGS) $(CPPFLAGS) $(backtrace_module_CFLAGS) $(CFLAGS) -c -o lib/backtrace_module-backtrace.obj `if test -f 'lib/backtrace.c'; then $(CYGPATH_W) 'lib/backtrace.c'; else $(CYGPATH_W) '$(srcdir)/lib/backtrace.c'; fi` - -fs/bfs_module-bfs.o: fs/bfs.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(bfs_module_CPPFLAGS) $(CPPFLAGS) $(bfs_module_CFLAGS) $(CFLAGS) -MT fs/bfs_module-bfs.o -MD -MP -MF fs/$(DEPDIR)/bfs_module-bfs.Tpo -c -o fs/bfs_module-bfs.o `test -f 'fs/bfs.c' || echo '$(srcdir)/'`fs/bfs.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) fs/$(DEPDIR)/bfs_module-bfs.Tpo fs/$(DEPDIR)/bfs_module-bfs.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='fs/bfs.c' object='fs/bfs_module-bfs.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(bfs_module_CPPFLAGS) $(CPPFLAGS) $(bfs_module_CFLAGS) $(CFLAGS) -c -o fs/bfs_module-bfs.o `test -f 'fs/bfs.c' || echo '$(srcdir)/'`fs/bfs.c - -fs/bfs_module-bfs.obj: fs/bfs.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(bfs_module_CPPFLAGS) $(CPPFLAGS) $(bfs_module_CFLAGS) $(CFLAGS) -MT fs/bfs_module-bfs.obj -MD -MP -MF fs/$(DEPDIR)/bfs_module-bfs.Tpo -c -o fs/bfs_module-bfs.obj `if test -f 'fs/bfs.c'; then $(CYGPATH_W) 'fs/bfs.c'; else $(CYGPATH_W) '$(srcdir)/fs/bfs.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) fs/$(DEPDIR)/bfs_module-bfs.Tpo fs/$(DEPDIR)/bfs_module-bfs.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='fs/bfs.c' object='fs/bfs_module-bfs.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(bfs_module_CPPFLAGS) $(CPPFLAGS) $(bfs_module_CFLAGS) $(CFLAGS) -c -o fs/bfs_module-bfs.obj `if test -f 'fs/bfs.c'; then $(CYGPATH_W) 'fs/bfs.c'; else $(CYGPATH_W) '$(srcdir)/fs/bfs.c'; fi` - -disk/i386/pc/biosdisk_module-biosdisk.o: disk/i386/pc/biosdisk.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(biosdisk_module_CPPFLAGS) $(CPPFLAGS) $(biosdisk_module_CFLAGS) $(CFLAGS) -MT disk/i386/pc/biosdisk_module-biosdisk.o -MD -MP -MF disk/i386/pc/$(DEPDIR)/biosdisk_module-biosdisk.Tpo -c -o disk/i386/pc/biosdisk_module-biosdisk.o `test -f 'disk/i386/pc/biosdisk.c' || echo '$(srcdir)/'`disk/i386/pc/biosdisk.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) disk/i386/pc/$(DEPDIR)/biosdisk_module-biosdisk.Tpo disk/i386/pc/$(DEPDIR)/biosdisk_module-biosdisk.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='disk/i386/pc/biosdisk.c' object='disk/i386/pc/biosdisk_module-biosdisk.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(biosdisk_module_CPPFLAGS) $(CPPFLAGS) $(biosdisk_module_CFLAGS) $(CFLAGS) -c -o disk/i386/pc/biosdisk_module-biosdisk.o `test -f 'disk/i386/pc/biosdisk.c' || echo '$(srcdir)/'`disk/i386/pc/biosdisk.c - -disk/i386/pc/biosdisk_module-biosdisk.obj: disk/i386/pc/biosdisk.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(biosdisk_module_CPPFLAGS) $(CPPFLAGS) $(biosdisk_module_CFLAGS) $(CFLAGS) -MT disk/i386/pc/biosdisk_module-biosdisk.obj -MD -MP -MF disk/i386/pc/$(DEPDIR)/biosdisk_module-biosdisk.Tpo -c -o disk/i386/pc/biosdisk_module-biosdisk.obj `if test -f 'disk/i386/pc/biosdisk.c'; then $(CYGPATH_W) 'disk/i386/pc/biosdisk.c'; else $(CYGPATH_W) '$(srcdir)/disk/i386/pc/biosdisk.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) disk/i386/pc/$(DEPDIR)/biosdisk_module-biosdisk.Tpo disk/i386/pc/$(DEPDIR)/biosdisk_module-biosdisk.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='disk/i386/pc/biosdisk.c' object='disk/i386/pc/biosdisk_module-biosdisk.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(biosdisk_module_CPPFLAGS) $(CPPFLAGS) $(biosdisk_module_CFLAGS) $(CFLAGS) -c -o disk/i386/pc/biosdisk_module-biosdisk.obj `if test -f 'disk/i386/pc/biosdisk.c'; then $(CYGPATH_W) 'disk/i386/pc/biosdisk.c'; else $(CYGPATH_W) '$(srcdir)/disk/i386/pc/biosdisk.c'; fi` - -video/bitmap_module-bitmap.o: video/bitmap.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(bitmap_module_CPPFLAGS) $(CPPFLAGS) $(bitmap_module_CFLAGS) $(CFLAGS) -MT video/bitmap_module-bitmap.o -MD -MP -MF video/$(DEPDIR)/bitmap_module-bitmap.Tpo -c -o video/bitmap_module-bitmap.o `test -f 'video/bitmap.c' || echo '$(srcdir)/'`video/bitmap.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) video/$(DEPDIR)/bitmap_module-bitmap.Tpo video/$(DEPDIR)/bitmap_module-bitmap.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='video/bitmap.c' object='video/bitmap_module-bitmap.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(bitmap_module_CPPFLAGS) $(CPPFLAGS) $(bitmap_module_CFLAGS) $(CFLAGS) -c -o video/bitmap_module-bitmap.o `test -f 'video/bitmap.c' || echo '$(srcdir)/'`video/bitmap.c - -video/bitmap_module-bitmap.obj: video/bitmap.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(bitmap_module_CPPFLAGS) $(CPPFLAGS) $(bitmap_module_CFLAGS) $(CFLAGS) -MT video/bitmap_module-bitmap.obj -MD -MP -MF video/$(DEPDIR)/bitmap_module-bitmap.Tpo -c -o video/bitmap_module-bitmap.obj `if test -f 'video/bitmap.c'; then $(CYGPATH_W) 'video/bitmap.c'; else $(CYGPATH_W) '$(srcdir)/video/bitmap.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) video/$(DEPDIR)/bitmap_module-bitmap.Tpo video/$(DEPDIR)/bitmap_module-bitmap.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='video/bitmap.c' object='video/bitmap_module-bitmap.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(bitmap_module_CPPFLAGS) $(CPPFLAGS) $(bitmap_module_CFLAGS) $(CFLAGS) -c -o video/bitmap_module-bitmap.obj `if test -f 'video/bitmap.c'; then $(CYGPATH_W) 'video/bitmap.c'; else $(CYGPATH_W) '$(srcdir)/video/bitmap.c'; fi` - -video/bitmap_scale_module-bitmap_scale.o: video/bitmap_scale.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(bitmap_scale_module_CPPFLAGS) $(CPPFLAGS) $(bitmap_scale_module_CFLAGS) $(CFLAGS) -MT video/bitmap_scale_module-bitmap_scale.o -MD -MP -MF video/$(DEPDIR)/bitmap_scale_module-bitmap_scale.Tpo -c -o video/bitmap_scale_module-bitmap_scale.o `test -f 'video/bitmap_scale.c' || echo '$(srcdir)/'`video/bitmap_scale.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) video/$(DEPDIR)/bitmap_scale_module-bitmap_scale.Tpo video/$(DEPDIR)/bitmap_scale_module-bitmap_scale.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='video/bitmap_scale.c' object='video/bitmap_scale_module-bitmap_scale.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(bitmap_scale_module_CPPFLAGS) $(CPPFLAGS) $(bitmap_scale_module_CFLAGS) $(CFLAGS) -c -o video/bitmap_scale_module-bitmap_scale.o `test -f 'video/bitmap_scale.c' || echo '$(srcdir)/'`video/bitmap_scale.c - -video/bitmap_scale_module-bitmap_scale.obj: video/bitmap_scale.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(bitmap_scale_module_CPPFLAGS) $(CPPFLAGS) $(bitmap_scale_module_CFLAGS) $(CFLAGS) -MT video/bitmap_scale_module-bitmap_scale.obj -MD -MP -MF video/$(DEPDIR)/bitmap_scale_module-bitmap_scale.Tpo -c -o video/bitmap_scale_module-bitmap_scale.obj `if test -f 'video/bitmap_scale.c'; then $(CYGPATH_W) 'video/bitmap_scale.c'; else $(CYGPATH_W) '$(srcdir)/video/bitmap_scale.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) video/$(DEPDIR)/bitmap_scale_module-bitmap_scale.Tpo video/$(DEPDIR)/bitmap_scale_module-bitmap_scale.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='video/bitmap_scale.c' object='video/bitmap_scale_module-bitmap_scale.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(bitmap_scale_module_CPPFLAGS) $(CPPFLAGS) $(bitmap_scale_module_CFLAGS) $(CFLAGS) -c -o video/bitmap_scale_module-bitmap_scale.obj `if test -f 'video/bitmap_scale.c'; then $(CYGPATH_W) 'video/bitmap_scale.c'; else $(CYGPATH_W) '$(srcdir)/video/bitmap_scale.c'; fi` - -commands/blocklist_module-blocklist.o: commands/blocklist.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(blocklist_module_CPPFLAGS) $(CPPFLAGS) $(blocklist_module_CFLAGS) $(CFLAGS) -MT commands/blocklist_module-blocklist.o -MD -MP -MF commands/$(DEPDIR)/blocklist_module-blocklist.Tpo -c -o commands/blocklist_module-blocklist.o `test -f 'commands/blocklist.c' || echo '$(srcdir)/'`commands/blocklist.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/$(DEPDIR)/blocklist_module-blocklist.Tpo commands/$(DEPDIR)/blocklist_module-blocklist.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/blocklist.c' object='commands/blocklist_module-blocklist.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(blocklist_module_CPPFLAGS) $(CPPFLAGS) $(blocklist_module_CFLAGS) $(CFLAGS) -c -o commands/blocklist_module-blocklist.o `test -f 'commands/blocklist.c' || echo '$(srcdir)/'`commands/blocklist.c - -commands/blocklist_module-blocklist.obj: commands/blocklist.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(blocklist_module_CPPFLAGS) $(CPPFLAGS) $(blocklist_module_CFLAGS) $(CFLAGS) -MT commands/blocklist_module-blocklist.obj -MD -MP -MF commands/$(DEPDIR)/blocklist_module-blocklist.Tpo -c -o commands/blocklist_module-blocklist.obj `if test -f 'commands/blocklist.c'; then $(CYGPATH_W) 'commands/blocklist.c'; else $(CYGPATH_W) '$(srcdir)/commands/blocklist.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/$(DEPDIR)/blocklist_module-blocklist.Tpo commands/$(DEPDIR)/blocklist_module-blocklist.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/blocklist.c' object='commands/blocklist_module-blocklist.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(blocklist_module_CPPFLAGS) $(CPPFLAGS) $(blocklist_module_CFLAGS) $(CFLAGS) -c -o commands/blocklist_module-blocklist.obj `if test -f 'commands/blocklist.c'; then $(CYGPATH_W) 'commands/blocklist.c'; else $(CYGPATH_W) '$(srcdir)/commands/blocklist.c'; fi` - -commands/boot_module-boot.o: commands/boot.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(boot_module_CPPFLAGS) $(CPPFLAGS) $(boot_module_CFLAGS) $(CFLAGS) -MT commands/boot_module-boot.o -MD -MP -MF commands/$(DEPDIR)/boot_module-boot.Tpo -c -o commands/boot_module-boot.o `test -f 'commands/boot.c' || echo '$(srcdir)/'`commands/boot.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/$(DEPDIR)/boot_module-boot.Tpo commands/$(DEPDIR)/boot_module-boot.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/boot.c' object='commands/boot_module-boot.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(boot_module_CPPFLAGS) $(CPPFLAGS) $(boot_module_CFLAGS) $(CFLAGS) -c -o commands/boot_module-boot.o `test -f 'commands/boot.c' || echo '$(srcdir)/'`commands/boot.c - -commands/boot_module-boot.obj: commands/boot.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(boot_module_CPPFLAGS) $(CPPFLAGS) $(boot_module_CFLAGS) $(CFLAGS) -MT commands/boot_module-boot.obj -MD -MP -MF commands/$(DEPDIR)/boot_module-boot.Tpo -c -o commands/boot_module-boot.obj `if test -f 'commands/boot.c'; then $(CYGPATH_W) 'commands/boot.c'; else $(CYGPATH_W) '$(srcdir)/commands/boot.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/$(DEPDIR)/boot_module-boot.Tpo commands/$(DEPDIR)/boot_module-boot.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/boot.c' object='commands/boot_module-boot.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(boot_module_CPPFLAGS) $(CPPFLAGS) $(boot_module_CFLAGS) $(CFLAGS) -c -o commands/boot_module-boot.obj `if test -f 'commands/boot.c'; then $(CYGPATH_W) 'commands/boot.c'; else $(CYGPATH_W) '$(srcdir)/commands/boot.c'; fi` - -lib/i386/pc/boot_module-biosnum.o: lib/i386/pc/biosnum.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(boot_module_CPPFLAGS) $(CPPFLAGS) $(boot_module_CFLAGS) $(CFLAGS) -MT lib/i386/pc/boot_module-biosnum.o -MD -MP -MF lib/i386/pc/$(DEPDIR)/boot_module-biosnum.Tpo -c -o lib/i386/pc/boot_module-biosnum.o `test -f 'lib/i386/pc/biosnum.c' || echo '$(srcdir)/'`lib/i386/pc/biosnum.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/i386/pc/$(DEPDIR)/boot_module-biosnum.Tpo lib/i386/pc/$(DEPDIR)/boot_module-biosnum.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/i386/pc/biosnum.c' object='lib/i386/pc/boot_module-biosnum.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(boot_module_CPPFLAGS) $(CPPFLAGS) $(boot_module_CFLAGS) $(CFLAGS) -c -o lib/i386/pc/boot_module-biosnum.o `test -f 'lib/i386/pc/biosnum.c' || echo '$(srcdir)/'`lib/i386/pc/biosnum.c - -lib/i386/pc/boot_module-biosnum.obj: lib/i386/pc/biosnum.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(boot_module_CPPFLAGS) $(CPPFLAGS) $(boot_module_CFLAGS) $(CFLAGS) -MT lib/i386/pc/boot_module-biosnum.obj -MD -MP -MF lib/i386/pc/$(DEPDIR)/boot_module-biosnum.Tpo -c -o lib/i386/pc/boot_module-biosnum.obj `if test -f 'lib/i386/pc/biosnum.c'; then $(CYGPATH_W) 'lib/i386/pc/biosnum.c'; else $(CYGPATH_W) '$(srcdir)/lib/i386/pc/biosnum.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/i386/pc/$(DEPDIR)/boot_module-biosnum.Tpo lib/i386/pc/$(DEPDIR)/boot_module-biosnum.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/i386/pc/biosnum.c' object='lib/i386/pc/boot_module-biosnum.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(boot_module_CPPFLAGS) $(CPPFLAGS) $(boot_module_CFLAGS) $(CFLAGS) -c -o lib/i386/pc/boot_module-biosnum.obj `if test -f 'lib/i386/pc/biosnum.c'; then $(CYGPATH_W) 'lib/i386/pc/biosnum.c'; else $(CYGPATH_W) '$(srcdir)/lib/i386/pc/biosnum.c'; fi` - -commands/boottime_module-boottime.o: commands/boottime.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(boottime_module_CPPFLAGS) $(CPPFLAGS) $(boottime_module_CFLAGS) $(CFLAGS) -MT commands/boottime_module-boottime.o -MD -MP -MF commands/$(DEPDIR)/boottime_module-boottime.Tpo -c -o commands/boottime_module-boottime.o `test -f 'commands/boottime.c' || echo '$(srcdir)/'`commands/boottime.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/$(DEPDIR)/boottime_module-boottime.Tpo commands/$(DEPDIR)/boottime_module-boottime.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/boottime.c' object='commands/boottime_module-boottime.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(boottime_module_CPPFLAGS) $(CPPFLAGS) $(boottime_module_CFLAGS) $(CFLAGS) -c -o commands/boottime_module-boottime.o `test -f 'commands/boottime.c' || echo '$(srcdir)/'`commands/boottime.c - -commands/boottime_module-boottime.obj: commands/boottime.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(boottime_module_CPPFLAGS) $(CPPFLAGS) $(boottime_module_CFLAGS) $(CFLAGS) -MT commands/boottime_module-boottime.obj -MD -MP -MF commands/$(DEPDIR)/boottime_module-boottime.Tpo -c -o commands/boottime_module-boottime.obj `if test -f 'commands/boottime.c'; then $(CYGPATH_W) 'commands/boottime.c'; else $(CYGPATH_W) '$(srcdir)/commands/boottime.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/$(DEPDIR)/boottime_module-boottime.Tpo commands/$(DEPDIR)/boottime_module-boottime.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/boottime.c' object='commands/boottime_module-boottime.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(boottime_module_CPPFLAGS) $(CPPFLAGS) $(boottime_module_CFLAGS) $(CFLAGS) -c -o commands/boottime_module-boottime.obj `if test -f 'commands/boottime.c'; then $(CYGPATH_W) 'commands/boottime.c'; else $(CYGPATH_W) '$(srcdir)/commands/boottime.c'; fi` - -loader/i386/bsd_module-bsd.o: loader/i386/bsd.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(bsd_module_CPPFLAGS) $(CPPFLAGS) $(bsd_module_CFLAGS) $(CFLAGS) -MT loader/i386/bsd_module-bsd.o -MD -MP -MF loader/i386/$(DEPDIR)/bsd_module-bsd.Tpo -c -o loader/i386/bsd_module-bsd.o `test -f 'loader/i386/bsd.c' || echo '$(srcdir)/'`loader/i386/bsd.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) loader/i386/$(DEPDIR)/bsd_module-bsd.Tpo loader/i386/$(DEPDIR)/bsd_module-bsd.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='loader/i386/bsd.c' object='loader/i386/bsd_module-bsd.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(bsd_module_CPPFLAGS) $(CPPFLAGS) $(bsd_module_CFLAGS) $(CFLAGS) -c -o loader/i386/bsd_module-bsd.o `test -f 'loader/i386/bsd.c' || echo '$(srcdir)/'`loader/i386/bsd.c - -loader/i386/bsd_module-bsd.obj: loader/i386/bsd.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(bsd_module_CPPFLAGS) $(CPPFLAGS) $(bsd_module_CFLAGS) $(CFLAGS) -MT loader/i386/bsd_module-bsd.obj -MD -MP -MF loader/i386/$(DEPDIR)/bsd_module-bsd.Tpo -c -o loader/i386/bsd_module-bsd.obj `if test -f 'loader/i386/bsd.c'; then $(CYGPATH_W) 'loader/i386/bsd.c'; else $(CYGPATH_W) '$(srcdir)/loader/i386/bsd.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) loader/i386/$(DEPDIR)/bsd_module-bsd.Tpo loader/i386/$(DEPDIR)/bsd_module-bsd.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='loader/i386/bsd.c' object='loader/i386/bsd_module-bsd.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(bsd_module_CPPFLAGS) $(CPPFLAGS) $(bsd_module_CFLAGS) $(CFLAGS) -c -o loader/i386/bsd_module-bsd.obj `if test -f 'loader/i386/bsd.c'; then $(CYGPATH_W) 'loader/i386/bsd.c'; else $(CYGPATH_W) '$(srcdir)/loader/i386/bsd.c'; fi` - -loader/i386/bsd_module-bsd32.o: loader/i386/bsd32.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(bsd_module_CPPFLAGS) $(CPPFLAGS) $(bsd_module_CFLAGS) $(CFLAGS) -MT loader/i386/bsd_module-bsd32.o -MD -MP -MF loader/i386/$(DEPDIR)/bsd_module-bsd32.Tpo -c -o loader/i386/bsd_module-bsd32.o `test -f 'loader/i386/bsd32.c' || echo '$(srcdir)/'`loader/i386/bsd32.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) loader/i386/$(DEPDIR)/bsd_module-bsd32.Tpo loader/i386/$(DEPDIR)/bsd_module-bsd32.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='loader/i386/bsd32.c' object='loader/i386/bsd_module-bsd32.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(bsd_module_CPPFLAGS) $(CPPFLAGS) $(bsd_module_CFLAGS) $(CFLAGS) -c -o loader/i386/bsd_module-bsd32.o `test -f 'loader/i386/bsd32.c' || echo '$(srcdir)/'`loader/i386/bsd32.c - -loader/i386/bsd_module-bsd32.obj: loader/i386/bsd32.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(bsd_module_CPPFLAGS) $(CPPFLAGS) $(bsd_module_CFLAGS) $(CFLAGS) -MT loader/i386/bsd_module-bsd32.obj -MD -MP -MF loader/i386/$(DEPDIR)/bsd_module-bsd32.Tpo -c -o loader/i386/bsd_module-bsd32.obj `if test -f 'loader/i386/bsd32.c'; then $(CYGPATH_W) 'loader/i386/bsd32.c'; else $(CYGPATH_W) '$(srcdir)/loader/i386/bsd32.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) loader/i386/$(DEPDIR)/bsd_module-bsd32.Tpo loader/i386/$(DEPDIR)/bsd_module-bsd32.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='loader/i386/bsd32.c' object='loader/i386/bsd_module-bsd32.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(bsd_module_CPPFLAGS) $(CPPFLAGS) $(bsd_module_CFLAGS) $(CFLAGS) -c -o loader/i386/bsd_module-bsd32.obj `if test -f 'loader/i386/bsd32.c'; then $(CYGPATH_W) 'loader/i386/bsd32.c'; else $(CYGPATH_W) '$(srcdir)/loader/i386/bsd32.c'; fi` - -loader/i386/bsd_module-bsd64.o: loader/i386/bsd64.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(bsd_module_CPPFLAGS) $(CPPFLAGS) $(bsd_module_CFLAGS) $(CFLAGS) -MT loader/i386/bsd_module-bsd64.o -MD -MP -MF loader/i386/$(DEPDIR)/bsd_module-bsd64.Tpo -c -o loader/i386/bsd_module-bsd64.o `test -f 'loader/i386/bsd64.c' || echo '$(srcdir)/'`loader/i386/bsd64.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) loader/i386/$(DEPDIR)/bsd_module-bsd64.Tpo loader/i386/$(DEPDIR)/bsd_module-bsd64.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='loader/i386/bsd64.c' object='loader/i386/bsd_module-bsd64.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(bsd_module_CPPFLAGS) $(CPPFLAGS) $(bsd_module_CFLAGS) $(CFLAGS) -c -o loader/i386/bsd_module-bsd64.o `test -f 'loader/i386/bsd64.c' || echo '$(srcdir)/'`loader/i386/bsd64.c - -loader/i386/bsd_module-bsd64.obj: loader/i386/bsd64.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(bsd_module_CPPFLAGS) $(CPPFLAGS) $(bsd_module_CFLAGS) $(CFLAGS) -MT loader/i386/bsd_module-bsd64.obj -MD -MP -MF loader/i386/$(DEPDIR)/bsd_module-bsd64.Tpo -c -o loader/i386/bsd_module-bsd64.obj `if test -f 'loader/i386/bsd64.c'; then $(CYGPATH_W) 'loader/i386/bsd64.c'; else $(CYGPATH_W) '$(srcdir)/loader/i386/bsd64.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) loader/i386/$(DEPDIR)/bsd_module-bsd64.Tpo loader/i386/$(DEPDIR)/bsd_module-bsd64.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='loader/i386/bsd64.c' object='loader/i386/bsd_module-bsd64.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(bsd_module_CPPFLAGS) $(CPPFLAGS) $(bsd_module_CFLAGS) $(CFLAGS) -c -o loader/i386/bsd_module-bsd64.obj `if test -f 'loader/i386/bsd64.c'; then $(CYGPATH_W) 'loader/i386/bsd64.c'; else $(CYGPATH_W) '$(srcdir)/loader/i386/bsd64.c'; fi` - -tests/bswap_test_module-bswap_test.o: tests/bswap_test.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(bswap_test_module_CPPFLAGS) $(CPPFLAGS) $(bswap_test_module_CFLAGS) $(CFLAGS) -MT tests/bswap_test_module-bswap_test.o -MD -MP -MF tests/$(DEPDIR)/bswap_test_module-bswap_test.Tpo -c -o tests/bswap_test_module-bswap_test.o `test -f 'tests/bswap_test.c' || echo '$(srcdir)/'`tests/bswap_test.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) tests/$(DEPDIR)/bswap_test_module-bswap_test.Tpo tests/$(DEPDIR)/bswap_test_module-bswap_test.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='tests/bswap_test.c' object='tests/bswap_test_module-bswap_test.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(bswap_test_module_CPPFLAGS) $(CPPFLAGS) $(bswap_test_module_CFLAGS) $(CFLAGS) -c -o tests/bswap_test_module-bswap_test.o `test -f 'tests/bswap_test.c' || echo '$(srcdir)/'`tests/bswap_test.c - -tests/bswap_test_module-bswap_test.obj: tests/bswap_test.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(bswap_test_module_CPPFLAGS) $(CPPFLAGS) $(bswap_test_module_CFLAGS) $(CFLAGS) -MT tests/bswap_test_module-bswap_test.obj -MD -MP -MF tests/$(DEPDIR)/bswap_test_module-bswap_test.Tpo -c -o tests/bswap_test_module-bswap_test.obj `if test -f 'tests/bswap_test.c'; then $(CYGPATH_W) 'tests/bswap_test.c'; else $(CYGPATH_W) '$(srcdir)/tests/bswap_test.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) tests/$(DEPDIR)/bswap_test_module-bswap_test.Tpo tests/$(DEPDIR)/bswap_test_module-bswap_test.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='tests/bswap_test.c' object='tests/bswap_test_module-bswap_test.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(bswap_test_module_CPPFLAGS) $(CPPFLAGS) $(bswap_test_module_CFLAGS) $(CFLAGS) -c -o tests/bswap_test_module-bswap_test.obj `if test -f 'tests/bswap_test.c'; then $(CYGPATH_W) 'tests/bswap_test.c'; else $(CYGPATH_W) '$(srcdir)/tests/bswap_test.c'; fi` - -fs/btrfs_module-btrfs.o: fs/btrfs.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(btrfs_module_CPPFLAGS) $(CPPFLAGS) $(btrfs_module_CFLAGS) $(CFLAGS) -MT fs/btrfs_module-btrfs.o -MD -MP -MF fs/$(DEPDIR)/btrfs_module-btrfs.Tpo -c -o fs/btrfs_module-btrfs.o `test -f 'fs/btrfs.c' || echo '$(srcdir)/'`fs/btrfs.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) fs/$(DEPDIR)/btrfs_module-btrfs.Tpo fs/$(DEPDIR)/btrfs_module-btrfs.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='fs/btrfs.c' object='fs/btrfs_module-btrfs.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(btrfs_module_CPPFLAGS) $(CPPFLAGS) $(btrfs_module_CFLAGS) $(CFLAGS) -c -o fs/btrfs_module-btrfs.o `test -f 'fs/btrfs.c' || echo '$(srcdir)/'`fs/btrfs.c - -fs/btrfs_module-btrfs.obj: fs/btrfs.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(btrfs_module_CPPFLAGS) $(CPPFLAGS) $(btrfs_module_CFLAGS) $(CFLAGS) -MT fs/btrfs_module-btrfs.obj -MD -MP -MF fs/$(DEPDIR)/btrfs_module-btrfs.Tpo -c -o fs/btrfs_module-btrfs.obj `if test -f 'fs/btrfs.c'; then $(CYGPATH_W) 'fs/btrfs.c'; else $(CYGPATH_W) '$(srcdir)/fs/btrfs.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) fs/$(DEPDIR)/btrfs_module-btrfs.Tpo fs/$(DEPDIR)/btrfs_module-btrfs.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='fs/btrfs.c' object='fs/btrfs_module-btrfs.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(btrfs_module_CPPFLAGS) $(CPPFLAGS) $(btrfs_module_CFLAGS) $(CFLAGS) -c -o fs/btrfs_module-btrfs.obj `if test -f 'fs/btrfs.c'; then $(CYGPATH_W) 'fs/btrfs.c'; else $(CYGPATH_W) '$(srcdir)/fs/btrfs.c'; fi` - -lib/btrfs_module-crc.o: lib/crc.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(btrfs_module_CPPFLAGS) $(CPPFLAGS) $(btrfs_module_CFLAGS) $(CFLAGS) -MT lib/btrfs_module-crc.o -MD -MP -MF lib/$(DEPDIR)/btrfs_module-crc.Tpo -c -o lib/btrfs_module-crc.o `test -f 'lib/crc.c' || echo '$(srcdir)/'`lib/crc.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/$(DEPDIR)/btrfs_module-crc.Tpo lib/$(DEPDIR)/btrfs_module-crc.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/crc.c' object='lib/btrfs_module-crc.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(btrfs_module_CPPFLAGS) $(CPPFLAGS) $(btrfs_module_CFLAGS) $(CFLAGS) -c -o lib/btrfs_module-crc.o `test -f 'lib/crc.c' || echo '$(srcdir)/'`lib/crc.c - -lib/btrfs_module-crc.obj: lib/crc.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(btrfs_module_CPPFLAGS) $(CPPFLAGS) $(btrfs_module_CFLAGS) $(CFLAGS) -MT lib/btrfs_module-crc.obj -MD -MP -MF lib/$(DEPDIR)/btrfs_module-crc.Tpo -c -o lib/btrfs_module-crc.obj `if test -f 'lib/crc.c'; then $(CYGPATH_W) 'lib/crc.c'; else $(CYGPATH_W) '$(srcdir)/lib/crc.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/$(DEPDIR)/btrfs_module-crc.Tpo lib/$(DEPDIR)/btrfs_module-crc.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/crc.c' object='lib/btrfs_module-crc.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(btrfs_module_CPPFLAGS) $(CPPFLAGS) $(btrfs_module_CFLAGS) $(CFLAGS) -c -o lib/btrfs_module-crc.obj `if test -f 'lib/crc.c'; then $(CYGPATH_W) 'lib/crc.c'; else $(CYGPATH_W) '$(srcdir)/lib/crc.c'; fi` - -io/bufio_module-bufio.o: io/bufio.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(bufio_module_CPPFLAGS) $(CPPFLAGS) $(bufio_module_CFLAGS) $(CFLAGS) -MT io/bufio_module-bufio.o -MD -MP -MF io/$(DEPDIR)/bufio_module-bufio.Tpo -c -o io/bufio_module-bufio.o `test -f 'io/bufio.c' || echo '$(srcdir)/'`io/bufio.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) io/$(DEPDIR)/bufio_module-bufio.Tpo io/$(DEPDIR)/bufio_module-bufio.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='io/bufio.c' object='io/bufio_module-bufio.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(bufio_module_CPPFLAGS) $(CPPFLAGS) $(bufio_module_CFLAGS) $(CFLAGS) -c -o io/bufio_module-bufio.o `test -f 'io/bufio.c' || echo '$(srcdir)/'`io/bufio.c - -io/bufio_module-bufio.obj: io/bufio.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(bufio_module_CPPFLAGS) $(CPPFLAGS) $(bufio_module_CFLAGS) $(CFLAGS) -MT io/bufio_module-bufio.obj -MD -MP -MF io/$(DEPDIR)/bufio_module-bufio.Tpo -c -o io/bufio_module-bufio.obj `if test -f 'io/bufio.c'; then $(CYGPATH_W) 'io/bufio.c'; else $(CYGPATH_W) '$(srcdir)/io/bufio.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) io/$(DEPDIR)/bufio_module-bufio.Tpo io/$(DEPDIR)/bufio_module-bufio.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='io/bufio.c' object='io/bufio_module-bufio.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(bufio_module_CPPFLAGS) $(CPPFLAGS) $(bufio_module_CFLAGS) $(CFLAGS) -c -o io/bufio_module-bufio.obj `if test -f 'io/bufio.c'; then $(CYGPATH_W) 'io/bufio.c'; else $(CYGPATH_W) '$(srcdir)/io/bufio.c'; fi` - -commands/cacheinfo_module-cacheinfo.o: commands/cacheinfo.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cacheinfo_module_CPPFLAGS) $(CPPFLAGS) $(cacheinfo_module_CFLAGS) $(CFLAGS) -MT commands/cacheinfo_module-cacheinfo.o -MD -MP -MF commands/$(DEPDIR)/cacheinfo_module-cacheinfo.Tpo -c -o commands/cacheinfo_module-cacheinfo.o `test -f 'commands/cacheinfo.c' || echo '$(srcdir)/'`commands/cacheinfo.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/$(DEPDIR)/cacheinfo_module-cacheinfo.Tpo commands/$(DEPDIR)/cacheinfo_module-cacheinfo.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/cacheinfo.c' object='commands/cacheinfo_module-cacheinfo.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cacheinfo_module_CPPFLAGS) $(CPPFLAGS) $(cacheinfo_module_CFLAGS) $(CFLAGS) -c -o commands/cacheinfo_module-cacheinfo.o `test -f 'commands/cacheinfo.c' || echo '$(srcdir)/'`commands/cacheinfo.c - -commands/cacheinfo_module-cacheinfo.obj: commands/cacheinfo.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cacheinfo_module_CPPFLAGS) $(CPPFLAGS) $(cacheinfo_module_CFLAGS) $(CFLAGS) -MT commands/cacheinfo_module-cacheinfo.obj -MD -MP -MF commands/$(DEPDIR)/cacheinfo_module-cacheinfo.Tpo -c -o commands/cacheinfo_module-cacheinfo.obj `if test -f 'commands/cacheinfo.c'; then $(CYGPATH_W) 'commands/cacheinfo.c'; else $(CYGPATH_W) '$(srcdir)/commands/cacheinfo.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/$(DEPDIR)/cacheinfo_module-cacheinfo.Tpo commands/$(DEPDIR)/cacheinfo_module-cacheinfo.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/cacheinfo.c' object='commands/cacheinfo_module-cacheinfo.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cacheinfo_module_CPPFLAGS) $(CPPFLAGS) $(cacheinfo_module_CFLAGS) $(CFLAGS) -c -o commands/cacheinfo_module-cacheinfo.obj `if test -f 'commands/cacheinfo.c'; then $(CYGPATH_W) 'commands/cacheinfo.c'; else $(CYGPATH_W) '$(srcdir)/commands/cacheinfo.c'; fi` - -commands/cat_module-cat.o: commands/cat.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cat_module_CPPFLAGS) $(CPPFLAGS) $(cat_module_CFLAGS) $(CFLAGS) -MT commands/cat_module-cat.o -MD -MP -MF commands/$(DEPDIR)/cat_module-cat.Tpo -c -o commands/cat_module-cat.o `test -f 'commands/cat.c' || echo '$(srcdir)/'`commands/cat.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/$(DEPDIR)/cat_module-cat.Tpo commands/$(DEPDIR)/cat_module-cat.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/cat.c' object='commands/cat_module-cat.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cat_module_CPPFLAGS) $(CPPFLAGS) $(cat_module_CFLAGS) $(CFLAGS) -c -o commands/cat_module-cat.o `test -f 'commands/cat.c' || echo '$(srcdir)/'`commands/cat.c - -commands/cat_module-cat.obj: commands/cat.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cat_module_CPPFLAGS) $(CPPFLAGS) $(cat_module_CFLAGS) $(CFLAGS) -MT commands/cat_module-cat.obj -MD -MP -MF commands/$(DEPDIR)/cat_module-cat.Tpo -c -o commands/cat_module-cat.obj `if test -f 'commands/cat.c'; then $(CYGPATH_W) 'commands/cat.c'; else $(CYGPATH_W) '$(srcdir)/commands/cat.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/$(DEPDIR)/cat_module-cat.Tpo commands/$(DEPDIR)/cat_module-cat.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/cat.c' object='commands/cat_module-cat.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cat_module_CPPFLAGS) $(CPPFLAGS) $(cat_module_CFLAGS) $(CFLAGS) -c -o commands/cat_module-cat.obj `if test -f 'commands/cat.c'; then $(CYGPATH_W) 'commands/cat.c'; else $(CYGPATH_W) '$(srcdir)/commands/cat.c'; fi` - -fs/cbfs_module-cbfs.o: fs/cbfs.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cbfs_module_CPPFLAGS) $(CPPFLAGS) $(cbfs_module_CFLAGS) $(CFLAGS) -MT fs/cbfs_module-cbfs.o -MD -MP -MF fs/$(DEPDIR)/cbfs_module-cbfs.Tpo -c -o fs/cbfs_module-cbfs.o `test -f 'fs/cbfs.c' || echo '$(srcdir)/'`fs/cbfs.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) fs/$(DEPDIR)/cbfs_module-cbfs.Tpo fs/$(DEPDIR)/cbfs_module-cbfs.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='fs/cbfs.c' object='fs/cbfs_module-cbfs.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cbfs_module_CPPFLAGS) $(CPPFLAGS) $(cbfs_module_CFLAGS) $(CFLAGS) -c -o fs/cbfs_module-cbfs.o `test -f 'fs/cbfs.c' || echo '$(srcdir)/'`fs/cbfs.c - -fs/cbfs_module-cbfs.obj: fs/cbfs.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cbfs_module_CPPFLAGS) $(CPPFLAGS) $(cbfs_module_CFLAGS) $(CFLAGS) -MT fs/cbfs_module-cbfs.obj -MD -MP -MF fs/$(DEPDIR)/cbfs_module-cbfs.Tpo -c -o fs/cbfs_module-cbfs.obj `if test -f 'fs/cbfs.c'; then $(CYGPATH_W) 'fs/cbfs.c'; else $(CYGPATH_W) '$(srcdir)/fs/cbfs.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) fs/$(DEPDIR)/cbfs_module-cbfs.Tpo fs/$(DEPDIR)/cbfs_module-cbfs.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='fs/cbfs.c' object='fs/cbfs_module-cbfs.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cbfs_module_CPPFLAGS) $(CPPFLAGS) $(cbfs_module_CFLAGS) $(CFLAGS) -c -o fs/cbfs_module-cbfs.obj `if test -f 'fs/cbfs.c'; then $(CYGPATH_W) 'fs/cbfs.c'; else $(CYGPATH_W) '$(srcdir)/fs/cbfs.c'; fi` - -commands/i386/coreboot/cbls_module-cbls.o: commands/i386/coreboot/cbls.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cbls_module_CPPFLAGS) $(CPPFLAGS) $(cbls_module_CFLAGS) $(CFLAGS) -MT commands/i386/coreboot/cbls_module-cbls.o -MD -MP -MF commands/i386/coreboot/$(DEPDIR)/cbls_module-cbls.Tpo -c -o commands/i386/coreboot/cbls_module-cbls.o `test -f 'commands/i386/coreboot/cbls.c' || echo '$(srcdir)/'`commands/i386/coreboot/cbls.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/i386/coreboot/$(DEPDIR)/cbls_module-cbls.Tpo commands/i386/coreboot/$(DEPDIR)/cbls_module-cbls.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/i386/coreboot/cbls.c' object='commands/i386/coreboot/cbls_module-cbls.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cbls_module_CPPFLAGS) $(CPPFLAGS) $(cbls_module_CFLAGS) $(CFLAGS) -c -o commands/i386/coreboot/cbls_module-cbls.o `test -f 'commands/i386/coreboot/cbls.c' || echo '$(srcdir)/'`commands/i386/coreboot/cbls.c - -commands/i386/coreboot/cbls_module-cbls.obj: commands/i386/coreboot/cbls.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cbls_module_CPPFLAGS) $(CPPFLAGS) $(cbls_module_CFLAGS) $(CFLAGS) -MT commands/i386/coreboot/cbls_module-cbls.obj -MD -MP -MF commands/i386/coreboot/$(DEPDIR)/cbls_module-cbls.Tpo -c -o commands/i386/coreboot/cbls_module-cbls.obj `if test -f 'commands/i386/coreboot/cbls.c'; then $(CYGPATH_W) 'commands/i386/coreboot/cbls.c'; else $(CYGPATH_W) '$(srcdir)/commands/i386/coreboot/cbls.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/i386/coreboot/$(DEPDIR)/cbls_module-cbls.Tpo commands/i386/coreboot/$(DEPDIR)/cbls_module-cbls.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/i386/coreboot/cbls.c' object='commands/i386/coreboot/cbls_module-cbls.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cbls_module_CPPFLAGS) $(CPPFLAGS) $(cbls_module_CFLAGS) $(CFLAGS) -c -o commands/i386/coreboot/cbls_module-cbls.obj `if test -f 'commands/i386/coreboot/cbls.c'; then $(CYGPATH_W) 'commands/i386/coreboot/cbls.c'; else $(CYGPATH_W) '$(srcdir)/commands/i386/coreboot/cbls.c'; fi` - -term/i386/coreboot/cbmemc_module-cbmemc.o: term/i386/coreboot/cbmemc.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cbmemc_module_CPPFLAGS) $(CPPFLAGS) $(cbmemc_module_CFLAGS) $(CFLAGS) -MT term/i386/coreboot/cbmemc_module-cbmemc.o -MD -MP -MF term/i386/coreboot/$(DEPDIR)/cbmemc_module-cbmemc.Tpo -c -o term/i386/coreboot/cbmemc_module-cbmemc.o `test -f 'term/i386/coreboot/cbmemc.c' || echo '$(srcdir)/'`term/i386/coreboot/cbmemc.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) term/i386/coreboot/$(DEPDIR)/cbmemc_module-cbmemc.Tpo term/i386/coreboot/$(DEPDIR)/cbmemc_module-cbmemc.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='term/i386/coreboot/cbmemc.c' object='term/i386/coreboot/cbmemc_module-cbmemc.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cbmemc_module_CPPFLAGS) $(CPPFLAGS) $(cbmemc_module_CFLAGS) $(CFLAGS) -c -o term/i386/coreboot/cbmemc_module-cbmemc.o `test -f 'term/i386/coreboot/cbmemc.c' || echo '$(srcdir)/'`term/i386/coreboot/cbmemc.c - -term/i386/coreboot/cbmemc_module-cbmemc.obj: term/i386/coreboot/cbmemc.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cbmemc_module_CPPFLAGS) $(CPPFLAGS) $(cbmemc_module_CFLAGS) $(CFLAGS) -MT term/i386/coreboot/cbmemc_module-cbmemc.obj -MD -MP -MF term/i386/coreboot/$(DEPDIR)/cbmemc_module-cbmemc.Tpo -c -o term/i386/coreboot/cbmemc_module-cbmemc.obj `if test -f 'term/i386/coreboot/cbmemc.c'; then $(CYGPATH_W) 'term/i386/coreboot/cbmemc.c'; else $(CYGPATH_W) '$(srcdir)/term/i386/coreboot/cbmemc.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) term/i386/coreboot/$(DEPDIR)/cbmemc_module-cbmemc.Tpo term/i386/coreboot/$(DEPDIR)/cbmemc_module-cbmemc.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='term/i386/coreboot/cbmemc.c' object='term/i386/coreboot/cbmemc_module-cbmemc.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cbmemc_module_CPPFLAGS) $(CPPFLAGS) $(cbmemc_module_CFLAGS) $(CFLAGS) -c -o term/i386/coreboot/cbmemc_module-cbmemc.obj `if test -f 'term/i386/coreboot/cbmemc.c'; then $(CYGPATH_W) 'term/i386/coreboot/cbmemc.c'; else $(CYGPATH_W) '$(srcdir)/term/i386/coreboot/cbmemc.c'; fi` - -kern/i386/coreboot/cbtable_module-cbtable.o: kern/i386/coreboot/cbtable.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cbtable_module_CPPFLAGS) $(CPPFLAGS) $(cbtable_module_CFLAGS) $(CFLAGS) -MT kern/i386/coreboot/cbtable_module-cbtable.o -MD -MP -MF kern/i386/coreboot/$(DEPDIR)/cbtable_module-cbtable.Tpo -c -o kern/i386/coreboot/cbtable_module-cbtable.o `test -f 'kern/i386/coreboot/cbtable.c' || echo '$(srcdir)/'`kern/i386/coreboot/cbtable.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/i386/coreboot/$(DEPDIR)/cbtable_module-cbtable.Tpo kern/i386/coreboot/$(DEPDIR)/cbtable_module-cbtable.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/i386/coreboot/cbtable.c' object='kern/i386/coreboot/cbtable_module-cbtable.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cbtable_module_CPPFLAGS) $(CPPFLAGS) $(cbtable_module_CFLAGS) $(CFLAGS) -c -o kern/i386/coreboot/cbtable_module-cbtable.o `test -f 'kern/i386/coreboot/cbtable.c' || echo '$(srcdir)/'`kern/i386/coreboot/cbtable.c - -kern/i386/coreboot/cbtable_module-cbtable.obj: kern/i386/coreboot/cbtable.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cbtable_module_CPPFLAGS) $(CPPFLAGS) $(cbtable_module_CFLAGS) $(CFLAGS) -MT kern/i386/coreboot/cbtable_module-cbtable.obj -MD -MP -MF kern/i386/coreboot/$(DEPDIR)/cbtable_module-cbtable.Tpo -c -o kern/i386/coreboot/cbtable_module-cbtable.obj `if test -f 'kern/i386/coreboot/cbtable.c'; then $(CYGPATH_W) 'kern/i386/coreboot/cbtable.c'; else $(CYGPATH_W) '$(srcdir)/kern/i386/coreboot/cbtable.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/i386/coreboot/$(DEPDIR)/cbtable_module-cbtable.Tpo kern/i386/coreboot/$(DEPDIR)/cbtable_module-cbtable.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/i386/coreboot/cbtable.c' object='kern/i386/coreboot/cbtable_module-cbtable.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cbtable_module_CPPFLAGS) $(CPPFLAGS) $(cbtable_module_CFLAGS) $(CFLAGS) -c -o kern/i386/coreboot/cbtable_module-cbtable.obj `if test -f 'kern/i386/coreboot/cbtable.c'; then $(CYGPATH_W) 'kern/i386/coreboot/cbtable.c'; else $(CYGPATH_W) '$(srcdir)/kern/i386/coreboot/cbtable.c'; fi` - -kern/coreboot/cbtable_module-cbtable.o: kern/coreboot/cbtable.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cbtable_module_CPPFLAGS) $(CPPFLAGS) $(cbtable_module_CFLAGS) $(CFLAGS) -MT kern/coreboot/cbtable_module-cbtable.o -MD -MP -MF kern/coreboot/$(DEPDIR)/cbtable_module-cbtable.Tpo -c -o kern/coreboot/cbtable_module-cbtable.o `test -f 'kern/coreboot/cbtable.c' || echo '$(srcdir)/'`kern/coreboot/cbtable.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/coreboot/$(DEPDIR)/cbtable_module-cbtable.Tpo kern/coreboot/$(DEPDIR)/cbtable_module-cbtable.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/coreboot/cbtable.c' object='kern/coreboot/cbtable_module-cbtable.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cbtable_module_CPPFLAGS) $(CPPFLAGS) $(cbtable_module_CFLAGS) $(CFLAGS) -c -o kern/coreboot/cbtable_module-cbtable.o `test -f 'kern/coreboot/cbtable.c' || echo '$(srcdir)/'`kern/coreboot/cbtable.c - -kern/coreboot/cbtable_module-cbtable.obj: kern/coreboot/cbtable.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cbtable_module_CPPFLAGS) $(CPPFLAGS) $(cbtable_module_CFLAGS) $(CFLAGS) -MT kern/coreboot/cbtable_module-cbtable.obj -MD -MP -MF kern/coreboot/$(DEPDIR)/cbtable_module-cbtable.Tpo -c -o kern/coreboot/cbtable_module-cbtable.obj `if test -f 'kern/coreboot/cbtable.c'; then $(CYGPATH_W) 'kern/coreboot/cbtable.c'; else $(CYGPATH_W) '$(srcdir)/kern/coreboot/cbtable.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/coreboot/$(DEPDIR)/cbtable_module-cbtable.Tpo kern/coreboot/$(DEPDIR)/cbtable_module-cbtable.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/coreboot/cbtable.c' object='kern/coreboot/cbtable_module-cbtable.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cbtable_module_CPPFLAGS) $(CPPFLAGS) $(cbtable_module_CFLAGS) $(CFLAGS) -c -o kern/coreboot/cbtable_module-cbtable.obj `if test -f 'kern/coreboot/cbtable.c'; then $(CYGPATH_W) 'kern/coreboot/cbtable.c'; else $(CYGPATH_W) '$(srcdir)/kern/coreboot/cbtable.c'; fi` - -commands/i386/coreboot/cbtime_module-cb_timestamps.o: commands/i386/coreboot/cb_timestamps.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cbtime_module_CPPFLAGS) $(CPPFLAGS) $(cbtime_module_CFLAGS) $(CFLAGS) -MT commands/i386/coreboot/cbtime_module-cb_timestamps.o -MD -MP -MF commands/i386/coreboot/$(DEPDIR)/cbtime_module-cb_timestamps.Tpo -c -o commands/i386/coreboot/cbtime_module-cb_timestamps.o `test -f 'commands/i386/coreboot/cb_timestamps.c' || echo '$(srcdir)/'`commands/i386/coreboot/cb_timestamps.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/i386/coreboot/$(DEPDIR)/cbtime_module-cb_timestamps.Tpo commands/i386/coreboot/$(DEPDIR)/cbtime_module-cb_timestamps.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/i386/coreboot/cb_timestamps.c' object='commands/i386/coreboot/cbtime_module-cb_timestamps.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cbtime_module_CPPFLAGS) $(CPPFLAGS) $(cbtime_module_CFLAGS) $(CFLAGS) -c -o commands/i386/coreboot/cbtime_module-cb_timestamps.o `test -f 'commands/i386/coreboot/cb_timestamps.c' || echo '$(srcdir)/'`commands/i386/coreboot/cb_timestamps.c - -commands/i386/coreboot/cbtime_module-cb_timestamps.obj: commands/i386/coreboot/cb_timestamps.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cbtime_module_CPPFLAGS) $(CPPFLAGS) $(cbtime_module_CFLAGS) $(CFLAGS) -MT commands/i386/coreboot/cbtime_module-cb_timestamps.obj -MD -MP -MF commands/i386/coreboot/$(DEPDIR)/cbtime_module-cb_timestamps.Tpo -c -o commands/i386/coreboot/cbtime_module-cb_timestamps.obj `if test -f 'commands/i386/coreboot/cb_timestamps.c'; then $(CYGPATH_W) 'commands/i386/coreboot/cb_timestamps.c'; else $(CYGPATH_W) '$(srcdir)/commands/i386/coreboot/cb_timestamps.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/i386/coreboot/$(DEPDIR)/cbtime_module-cb_timestamps.Tpo commands/i386/coreboot/$(DEPDIR)/cbtime_module-cb_timestamps.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/i386/coreboot/cb_timestamps.c' object='commands/i386/coreboot/cbtime_module-cb_timestamps.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cbtime_module_CPPFLAGS) $(CPPFLAGS) $(cbtime_module_CFLAGS) $(CFLAGS) -c -o commands/i386/coreboot/cbtime_module-cb_timestamps.obj `if test -f 'commands/i386/coreboot/cb_timestamps.c'; then $(CYGPATH_W) 'commands/i386/coreboot/cb_timestamps.c'; else $(CYGPATH_W) '$(srcdir)/commands/i386/coreboot/cb_timestamps.c'; fi` - -loader/efi/chain_module-chainloader.o: loader/efi/chainloader.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(chain_module_CPPFLAGS) $(CPPFLAGS) $(chain_module_CFLAGS) $(CFLAGS) -MT loader/efi/chain_module-chainloader.o -MD -MP -MF loader/efi/$(DEPDIR)/chain_module-chainloader.Tpo -c -o loader/efi/chain_module-chainloader.o `test -f 'loader/efi/chainloader.c' || echo '$(srcdir)/'`loader/efi/chainloader.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) loader/efi/$(DEPDIR)/chain_module-chainloader.Tpo loader/efi/$(DEPDIR)/chain_module-chainloader.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='loader/efi/chainloader.c' object='loader/efi/chain_module-chainloader.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(chain_module_CPPFLAGS) $(CPPFLAGS) $(chain_module_CFLAGS) $(CFLAGS) -c -o loader/efi/chain_module-chainloader.o `test -f 'loader/efi/chainloader.c' || echo '$(srcdir)/'`loader/efi/chainloader.c - -loader/efi/chain_module-chainloader.obj: loader/efi/chainloader.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(chain_module_CPPFLAGS) $(CPPFLAGS) $(chain_module_CFLAGS) $(CFLAGS) -MT loader/efi/chain_module-chainloader.obj -MD -MP -MF loader/efi/$(DEPDIR)/chain_module-chainloader.Tpo -c -o loader/efi/chain_module-chainloader.obj `if test -f 'loader/efi/chainloader.c'; then $(CYGPATH_W) 'loader/efi/chainloader.c'; else $(CYGPATH_W) '$(srcdir)/loader/efi/chainloader.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) loader/efi/$(DEPDIR)/chain_module-chainloader.Tpo loader/efi/$(DEPDIR)/chain_module-chainloader.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='loader/efi/chainloader.c' object='loader/efi/chain_module-chainloader.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(chain_module_CPPFLAGS) $(CPPFLAGS) $(chain_module_CFLAGS) $(CFLAGS) -c -o loader/efi/chain_module-chainloader.obj `if test -f 'loader/efi/chainloader.c'; then $(CYGPATH_W) 'loader/efi/chainloader.c'; else $(CYGPATH_W) '$(srcdir)/loader/efi/chainloader.c'; fi` - -loader/i386/coreboot/chain_module-chainloader.o: loader/i386/coreboot/chainloader.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(chain_module_CPPFLAGS) $(CPPFLAGS) $(chain_module_CFLAGS) $(CFLAGS) -MT loader/i386/coreboot/chain_module-chainloader.o -MD -MP -MF loader/i386/coreboot/$(DEPDIR)/chain_module-chainloader.Tpo -c -o loader/i386/coreboot/chain_module-chainloader.o `test -f 'loader/i386/coreboot/chainloader.c' || echo '$(srcdir)/'`loader/i386/coreboot/chainloader.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) loader/i386/coreboot/$(DEPDIR)/chain_module-chainloader.Tpo loader/i386/coreboot/$(DEPDIR)/chain_module-chainloader.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='loader/i386/coreboot/chainloader.c' object='loader/i386/coreboot/chain_module-chainloader.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(chain_module_CPPFLAGS) $(CPPFLAGS) $(chain_module_CFLAGS) $(CFLAGS) -c -o loader/i386/coreboot/chain_module-chainloader.o `test -f 'loader/i386/coreboot/chainloader.c' || echo '$(srcdir)/'`loader/i386/coreboot/chainloader.c - -loader/i386/coreboot/chain_module-chainloader.obj: loader/i386/coreboot/chainloader.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(chain_module_CPPFLAGS) $(CPPFLAGS) $(chain_module_CFLAGS) $(CFLAGS) -MT loader/i386/coreboot/chain_module-chainloader.obj -MD -MP -MF loader/i386/coreboot/$(DEPDIR)/chain_module-chainloader.Tpo -c -o loader/i386/coreboot/chain_module-chainloader.obj `if test -f 'loader/i386/coreboot/chainloader.c'; then $(CYGPATH_W) 'loader/i386/coreboot/chainloader.c'; else $(CYGPATH_W) '$(srcdir)/loader/i386/coreboot/chainloader.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) loader/i386/coreboot/$(DEPDIR)/chain_module-chainloader.Tpo loader/i386/coreboot/$(DEPDIR)/chain_module-chainloader.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='loader/i386/coreboot/chainloader.c' object='loader/i386/coreboot/chain_module-chainloader.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(chain_module_CPPFLAGS) $(CPPFLAGS) $(chain_module_CFLAGS) $(CFLAGS) -c -o loader/i386/coreboot/chain_module-chainloader.obj `if test -f 'loader/i386/coreboot/chainloader.c'; then $(CYGPATH_W) 'loader/i386/coreboot/chainloader.c'; else $(CYGPATH_W) '$(srcdir)/loader/i386/coreboot/chainloader.c'; fi` - -lib/chain_module-LzmaDec.o: lib/LzmaDec.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(chain_module_CPPFLAGS) $(CPPFLAGS) $(chain_module_CFLAGS) $(CFLAGS) -MT lib/chain_module-LzmaDec.o -MD -MP -MF lib/$(DEPDIR)/chain_module-LzmaDec.Tpo -c -o lib/chain_module-LzmaDec.o `test -f 'lib/LzmaDec.c' || echo '$(srcdir)/'`lib/LzmaDec.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/$(DEPDIR)/chain_module-LzmaDec.Tpo lib/$(DEPDIR)/chain_module-LzmaDec.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/LzmaDec.c' object='lib/chain_module-LzmaDec.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(chain_module_CPPFLAGS) $(CPPFLAGS) $(chain_module_CFLAGS) $(CFLAGS) -c -o lib/chain_module-LzmaDec.o `test -f 'lib/LzmaDec.c' || echo '$(srcdir)/'`lib/LzmaDec.c - -lib/chain_module-LzmaDec.obj: lib/LzmaDec.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(chain_module_CPPFLAGS) $(CPPFLAGS) $(chain_module_CFLAGS) $(CFLAGS) -MT lib/chain_module-LzmaDec.obj -MD -MP -MF lib/$(DEPDIR)/chain_module-LzmaDec.Tpo -c -o lib/chain_module-LzmaDec.obj `if test -f 'lib/LzmaDec.c'; then $(CYGPATH_W) 'lib/LzmaDec.c'; else $(CYGPATH_W) '$(srcdir)/lib/LzmaDec.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/$(DEPDIR)/chain_module-LzmaDec.Tpo lib/$(DEPDIR)/chain_module-LzmaDec.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/LzmaDec.c' object='lib/chain_module-LzmaDec.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(chain_module_CPPFLAGS) $(CPPFLAGS) $(chain_module_CFLAGS) $(CFLAGS) -c -o lib/chain_module-LzmaDec.obj `if test -f 'lib/LzmaDec.c'; then $(CYGPATH_W) 'lib/LzmaDec.c'; else $(CYGPATH_W) '$(srcdir)/lib/LzmaDec.c'; fi` - -loader/i386/pc/chain_module-chainloader.o: loader/i386/pc/chainloader.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(chain_module_CPPFLAGS) $(CPPFLAGS) $(chain_module_CFLAGS) $(CFLAGS) -MT loader/i386/pc/chain_module-chainloader.o -MD -MP -MF loader/i386/pc/$(DEPDIR)/chain_module-chainloader.Tpo -c -o loader/i386/pc/chain_module-chainloader.o `test -f 'loader/i386/pc/chainloader.c' || echo '$(srcdir)/'`loader/i386/pc/chainloader.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) loader/i386/pc/$(DEPDIR)/chain_module-chainloader.Tpo loader/i386/pc/$(DEPDIR)/chain_module-chainloader.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='loader/i386/pc/chainloader.c' object='loader/i386/pc/chain_module-chainloader.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(chain_module_CPPFLAGS) $(CPPFLAGS) $(chain_module_CFLAGS) $(CFLAGS) -c -o loader/i386/pc/chain_module-chainloader.o `test -f 'loader/i386/pc/chainloader.c' || echo '$(srcdir)/'`loader/i386/pc/chainloader.c - -loader/i386/pc/chain_module-chainloader.obj: loader/i386/pc/chainloader.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(chain_module_CPPFLAGS) $(CPPFLAGS) $(chain_module_CFLAGS) $(CFLAGS) -MT loader/i386/pc/chain_module-chainloader.obj -MD -MP -MF loader/i386/pc/$(DEPDIR)/chain_module-chainloader.Tpo -c -o loader/i386/pc/chain_module-chainloader.obj `if test -f 'loader/i386/pc/chainloader.c'; then $(CYGPATH_W) 'loader/i386/pc/chainloader.c'; else $(CYGPATH_W) '$(srcdir)/loader/i386/pc/chainloader.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) loader/i386/pc/$(DEPDIR)/chain_module-chainloader.Tpo loader/i386/pc/$(DEPDIR)/chain_module-chainloader.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='loader/i386/pc/chainloader.c' object='loader/i386/pc/chain_module-chainloader.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(chain_module_CPPFLAGS) $(CPPFLAGS) $(chain_module_CFLAGS) $(CFLAGS) -c -o loader/i386/pc/chain_module-chainloader.obj `if test -f 'loader/i386/pc/chainloader.c'; then $(CYGPATH_W) 'loader/i386/pc/chainloader.c'; else $(CYGPATH_W) '$(srcdir)/loader/i386/pc/chainloader.c'; fi` - -tests/cmdline_cat_test_module-cmdline_cat_test.o: tests/cmdline_cat_test.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cmdline_cat_test_module_CPPFLAGS) $(CPPFLAGS) $(cmdline_cat_test_module_CFLAGS) $(CFLAGS) -MT tests/cmdline_cat_test_module-cmdline_cat_test.o -MD -MP -MF tests/$(DEPDIR)/cmdline_cat_test_module-cmdline_cat_test.Tpo -c -o tests/cmdline_cat_test_module-cmdline_cat_test.o `test -f 'tests/cmdline_cat_test.c' || echo '$(srcdir)/'`tests/cmdline_cat_test.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) tests/$(DEPDIR)/cmdline_cat_test_module-cmdline_cat_test.Tpo tests/$(DEPDIR)/cmdline_cat_test_module-cmdline_cat_test.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='tests/cmdline_cat_test.c' object='tests/cmdline_cat_test_module-cmdline_cat_test.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cmdline_cat_test_module_CPPFLAGS) $(CPPFLAGS) $(cmdline_cat_test_module_CFLAGS) $(CFLAGS) -c -o tests/cmdline_cat_test_module-cmdline_cat_test.o `test -f 'tests/cmdline_cat_test.c' || echo '$(srcdir)/'`tests/cmdline_cat_test.c - -tests/cmdline_cat_test_module-cmdline_cat_test.obj: tests/cmdline_cat_test.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cmdline_cat_test_module_CPPFLAGS) $(CPPFLAGS) $(cmdline_cat_test_module_CFLAGS) $(CFLAGS) -MT tests/cmdline_cat_test_module-cmdline_cat_test.obj -MD -MP -MF tests/$(DEPDIR)/cmdline_cat_test_module-cmdline_cat_test.Tpo -c -o tests/cmdline_cat_test_module-cmdline_cat_test.obj `if test -f 'tests/cmdline_cat_test.c'; then $(CYGPATH_W) 'tests/cmdline_cat_test.c'; else $(CYGPATH_W) '$(srcdir)/tests/cmdline_cat_test.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) tests/$(DEPDIR)/cmdline_cat_test_module-cmdline_cat_test.Tpo tests/$(DEPDIR)/cmdline_cat_test_module-cmdline_cat_test.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='tests/cmdline_cat_test.c' object='tests/cmdline_cat_test_module-cmdline_cat_test.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cmdline_cat_test_module_CPPFLAGS) $(CPPFLAGS) $(cmdline_cat_test_module_CFLAGS) $(CFLAGS) -c -o tests/cmdline_cat_test_module-cmdline_cat_test.obj `if test -f 'tests/cmdline_cat_test.c'; then $(CYGPATH_W) 'tests/cmdline_cat_test.c'; else $(CYGPATH_W) '$(srcdir)/tests/cmdline_cat_test.c'; fi` - -commands/i386/cmosdump_module-cmosdump.o: commands/i386/cmosdump.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cmosdump_module_CPPFLAGS) $(CPPFLAGS) $(cmosdump_module_CFLAGS) $(CFLAGS) -MT commands/i386/cmosdump_module-cmosdump.o -MD -MP -MF commands/i386/$(DEPDIR)/cmosdump_module-cmosdump.Tpo -c -o commands/i386/cmosdump_module-cmosdump.o `test -f 'commands/i386/cmosdump.c' || echo '$(srcdir)/'`commands/i386/cmosdump.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/i386/$(DEPDIR)/cmosdump_module-cmosdump.Tpo commands/i386/$(DEPDIR)/cmosdump_module-cmosdump.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/i386/cmosdump.c' object='commands/i386/cmosdump_module-cmosdump.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cmosdump_module_CPPFLAGS) $(CPPFLAGS) $(cmosdump_module_CFLAGS) $(CFLAGS) -c -o commands/i386/cmosdump_module-cmosdump.o `test -f 'commands/i386/cmosdump.c' || echo '$(srcdir)/'`commands/i386/cmosdump.c - -commands/i386/cmosdump_module-cmosdump.obj: commands/i386/cmosdump.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cmosdump_module_CPPFLAGS) $(CPPFLAGS) $(cmosdump_module_CFLAGS) $(CFLAGS) -MT commands/i386/cmosdump_module-cmosdump.obj -MD -MP -MF commands/i386/$(DEPDIR)/cmosdump_module-cmosdump.Tpo -c -o commands/i386/cmosdump_module-cmosdump.obj `if test -f 'commands/i386/cmosdump.c'; then $(CYGPATH_W) 'commands/i386/cmosdump.c'; else $(CYGPATH_W) '$(srcdir)/commands/i386/cmosdump.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/i386/$(DEPDIR)/cmosdump_module-cmosdump.Tpo commands/i386/$(DEPDIR)/cmosdump_module-cmosdump.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/i386/cmosdump.c' object='commands/i386/cmosdump_module-cmosdump.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cmosdump_module_CPPFLAGS) $(CPPFLAGS) $(cmosdump_module_CFLAGS) $(CFLAGS) -c -o commands/i386/cmosdump_module-cmosdump.obj `if test -f 'commands/i386/cmosdump.c'; then $(CYGPATH_W) 'commands/i386/cmosdump.c'; else $(CYGPATH_W) '$(srcdir)/commands/i386/cmosdump.c'; fi` - -commands/i386/cmostest_module-cmostest.o: commands/i386/cmostest.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cmostest_module_CPPFLAGS) $(CPPFLAGS) $(cmostest_module_CFLAGS) $(CFLAGS) -MT commands/i386/cmostest_module-cmostest.o -MD -MP -MF commands/i386/$(DEPDIR)/cmostest_module-cmostest.Tpo -c -o commands/i386/cmostest_module-cmostest.o `test -f 'commands/i386/cmostest.c' || echo '$(srcdir)/'`commands/i386/cmostest.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/i386/$(DEPDIR)/cmostest_module-cmostest.Tpo commands/i386/$(DEPDIR)/cmostest_module-cmostest.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/i386/cmostest.c' object='commands/i386/cmostest_module-cmostest.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cmostest_module_CPPFLAGS) $(CPPFLAGS) $(cmostest_module_CFLAGS) $(CFLAGS) -c -o commands/i386/cmostest_module-cmostest.o `test -f 'commands/i386/cmostest.c' || echo '$(srcdir)/'`commands/i386/cmostest.c - -commands/i386/cmostest_module-cmostest.obj: commands/i386/cmostest.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cmostest_module_CPPFLAGS) $(CPPFLAGS) $(cmostest_module_CFLAGS) $(CFLAGS) -MT commands/i386/cmostest_module-cmostest.obj -MD -MP -MF commands/i386/$(DEPDIR)/cmostest_module-cmostest.Tpo -c -o commands/i386/cmostest_module-cmostest.obj `if test -f 'commands/i386/cmostest.c'; then $(CYGPATH_W) 'commands/i386/cmostest.c'; else $(CYGPATH_W) '$(srcdir)/commands/i386/cmostest.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/i386/$(DEPDIR)/cmostest_module-cmostest.Tpo commands/i386/$(DEPDIR)/cmostest_module-cmostest.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/i386/cmostest.c' object='commands/i386/cmostest_module-cmostest.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cmostest_module_CPPFLAGS) $(CPPFLAGS) $(cmostest_module_CFLAGS) $(CFLAGS) -c -o commands/i386/cmostest_module-cmostest.obj `if test -f 'commands/i386/cmostest.c'; then $(CYGPATH_W) 'commands/i386/cmostest.c'; else $(CYGPATH_W) '$(srcdir)/commands/i386/cmostest.c'; fi` - -commands/cmp_module-cmp.o: commands/cmp.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cmp_module_CPPFLAGS) $(CPPFLAGS) $(cmp_module_CFLAGS) $(CFLAGS) -MT commands/cmp_module-cmp.o -MD -MP -MF commands/$(DEPDIR)/cmp_module-cmp.Tpo -c -o commands/cmp_module-cmp.o `test -f 'commands/cmp.c' || echo '$(srcdir)/'`commands/cmp.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/$(DEPDIR)/cmp_module-cmp.Tpo commands/$(DEPDIR)/cmp_module-cmp.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/cmp.c' object='commands/cmp_module-cmp.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cmp_module_CPPFLAGS) $(CPPFLAGS) $(cmp_module_CFLAGS) $(CFLAGS) -c -o commands/cmp_module-cmp.o `test -f 'commands/cmp.c' || echo '$(srcdir)/'`commands/cmp.c - -commands/cmp_module-cmp.obj: commands/cmp.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cmp_module_CPPFLAGS) $(CPPFLAGS) $(cmp_module_CFLAGS) $(CFLAGS) -MT commands/cmp_module-cmp.obj -MD -MP -MF commands/$(DEPDIR)/cmp_module-cmp.Tpo -c -o commands/cmp_module-cmp.obj `if test -f 'commands/cmp.c'; then $(CYGPATH_W) 'commands/cmp.c'; else $(CYGPATH_W) '$(srcdir)/commands/cmp.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/$(DEPDIR)/cmp_module-cmp.Tpo commands/$(DEPDIR)/cmp_module-cmp.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/cmp.c' object='commands/cmp_module-cmp.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cmp_module_CPPFLAGS) $(CPPFLAGS) $(cmp_module_CFLAGS) $(CFLAGS) -c -o commands/cmp_module-cmp.obj `if test -f 'commands/cmp.c'; then $(CYGPATH_W) 'commands/cmp.c'; else $(CYGPATH_W) '$(srcdir)/commands/cmp.c'; fi` - -tests/cmp_test_module-cmp_test.o: tests/cmp_test.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cmp_test_module_CPPFLAGS) $(CPPFLAGS) $(cmp_test_module_CFLAGS) $(CFLAGS) -MT tests/cmp_test_module-cmp_test.o -MD -MP -MF tests/$(DEPDIR)/cmp_test_module-cmp_test.Tpo -c -o tests/cmp_test_module-cmp_test.o `test -f 'tests/cmp_test.c' || echo '$(srcdir)/'`tests/cmp_test.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) tests/$(DEPDIR)/cmp_test_module-cmp_test.Tpo tests/$(DEPDIR)/cmp_test_module-cmp_test.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='tests/cmp_test.c' object='tests/cmp_test_module-cmp_test.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cmp_test_module_CPPFLAGS) $(CPPFLAGS) $(cmp_test_module_CFLAGS) $(CFLAGS) -c -o tests/cmp_test_module-cmp_test.o `test -f 'tests/cmp_test.c' || echo '$(srcdir)/'`tests/cmp_test.c - -tests/cmp_test_module-cmp_test.obj: tests/cmp_test.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cmp_test_module_CPPFLAGS) $(CPPFLAGS) $(cmp_test_module_CFLAGS) $(CFLAGS) -MT tests/cmp_test_module-cmp_test.obj -MD -MP -MF tests/$(DEPDIR)/cmp_test_module-cmp_test.Tpo -c -o tests/cmp_test_module-cmp_test.obj `if test -f 'tests/cmp_test.c'; then $(CYGPATH_W) 'tests/cmp_test.c'; else $(CYGPATH_W) '$(srcdir)/tests/cmp_test.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) tests/$(DEPDIR)/cmp_test_module-cmp_test.Tpo tests/$(DEPDIR)/cmp_test_module-cmp_test.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='tests/cmp_test.c' object='tests/cmp_test_module-cmp_test.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cmp_test_module_CPPFLAGS) $(CPPFLAGS) $(cmp_test_module_CFLAGS) $(CFLAGS) -c -o tests/cmp_test_module-cmp_test.obj `if test -f 'tests/cmp_test.c'; then $(CYGPATH_W) 'tests/cmp_test.c'; else $(CYGPATH_W) '$(srcdir)/tests/cmp_test.c'; fi` - -commands/configfile_module-configfile.o: commands/configfile.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(configfile_module_CPPFLAGS) $(CPPFLAGS) $(configfile_module_CFLAGS) $(CFLAGS) -MT commands/configfile_module-configfile.o -MD -MP -MF commands/$(DEPDIR)/configfile_module-configfile.Tpo -c -o commands/configfile_module-configfile.o `test -f 'commands/configfile.c' || echo '$(srcdir)/'`commands/configfile.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/$(DEPDIR)/configfile_module-configfile.Tpo commands/$(DEPDIR)/configfile_module-configfile.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/configfile.c' object='commands/configfile_module-configfile.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(configfile_module_CPPFLAGS) $(CPPFLAGS) $(configfile_module_CFLAGS) $(CFLAGS) -c -o commands/configfile_module-configfile.o `test -f 'commands/configfile.c' || echo '$(srcdir)/'`commands/configfile.c - -commands/configfile_module-configfile.obj: commands/configfile.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(configfile_module_CPPFLAGS) $(CPPFLAGS) $(configfile_module_CFLAGS) $(CFLAGS) -MT commands/configfile_module-configfile.obj -MD -MP -MF commands/$(DEPDIR)/configfile_module-configfile.Tpo -c -o commands/configfile_module-configfile.obj `if test -f 'commands/configfile.c'; then $(CYGPATH_W) 'commands/configfile.c'; else $(CYGPATH_W) '$(srcdir)/commands/configfile.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/$(DEPDIR)/configfile_module-configfile.Tpo commands/$(DEPDIR)/configfile_module-configfile.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/configfile.c' object='commands/configfile_module-configfile.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(configfile_module_CPPFLAGS) $(CPPFLAGS) $(configfile_module_CFLAGS) $(CFLAGS) -c -o commands/configfile_module-configfile.obj `if test -f 'commands/configfile.c'; then $(CYGPATH_W) 'commands/configfile.c'; else $(CYGPATH_W) '$(srcdir)/commands/configfile.c'; fi` - -fs/cpio_module-cpio.o: fs/cpio.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cpio_module_CPPFLAGS) $(CPPFLAGS) $(cpio_module_CFLAGS) $(CFLAGS) -MT fs/cpio_module-cpio.o -MD -MP -MF fs/$(DEPDIR)/cpio_module-cpio.Tpo -c -o fs/cpio_module-cpio.o `test -f 'fs/cpio.c' || echo '$(srcdir)/'`fs/cpio.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) fs/$(DEPDIR)/cpio_module-cpio.Tpo fs/$(DEPDIR)/cpio_module-cpio.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='fs/cpio.c' object='fs/cpio_module-cpio.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cpio_module_CPPFLAGS) $(CPPFLAGS) $(cpio_module_CFLAGS) $(CFLAGS) -c -o fs/cpio_module-cpio.o `test -f 'fs/cpio.c' || echo '$(srcdir)/'`fs/cpio.c - -fs/cpio_module-cpio.obj: fs/cpio.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cpio_module_CPPFLAGS) $(CPPFLAGS) $(cpio_module_CFLAGS) $(CFLAGS) -MT fs/cpio_module-cpio.obj -MD -MP -MF fs/$(DEPDIR)/cpio_module-cpio.Tpo -c -o fs/cpio_module-cpio.obj `if test -f 'fs/cpio.c'; then $(CYGPATH_W) 'fs/cpio.c'; else $(CYGPATH_W) '$(srcdir)/fs/cpio.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) fs/$(DEPDIR)/cpio_module-cpio.Tpo fs/$(DEPDIR)/cpio_module-cpio.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='fs/cpio.c' object='fs/cpio_module-cpio.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cpio_module_CPPFLAGS) $(CPPFLAGS) $(cpio_module_CFLAGS) $(CFLAGS) -c -o fs/cpio_module-cpio.obj `if test -f 'fs/cpio.c'; then $(CYGPATH_W) 'fs/cpio.c'; else $(CYGPATH_W) '$(srcdir)/fs/cpio.c'; fi` - -fs/cpio_be_module-cpio_be.o: fs/cpio_be.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cpio_be_module_CPPFLAGS) $(CPPFLAGS) $(cpio_be_module_CFLAGS) $(CFLAGS) -MT fs/cpio_be_module-cpio_be.o -MD -MP -MF fs/$(DEPDIR)/cpio_be_module-cpio_be.Tpo -c -o fs/cpio_be_module-cpio_be.o `test -f 'fs/cpio_be.c' || echo '$(srcdir)/'`fs/cpio_be.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) fs/$(DEPDIR)/cpio_be_module-cpio_be.Tpo fs/$(DEPDIR)/cpio_be_module-cpio_be.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='fs/cpio_be.c' object='fs/cpio_be_module-cpio_be.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cpio_be_module_CPPFLAGS) $(CPPFLAGS) $(cpio_be_module_CFLAGS) $(CFLAGS) -c -o fs/cpio_be_module-cpio_be.o `test -f 'fs/cpio_be.c' || echo '$(srcdir)/'`fs/cpio_be.c - -fs/cpio_be_module-cpio_be.obj: fs/cpio_be.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cpio_be_module_CPPFLAGS) $(CPPFLAGS) $(cpio_be_module_CFLAGS) $(CFLAGS) -MT fs/cpio_be_module-cpio_be.obj -MD -MP -MF fs/$(DEPDIR)/cpio_be_module-cpio_be.Tpo -c -o fs/cpio_be_module-cpio_be.obj `if test -f 'fs/cpio_be.c'; then $(CYGPATH_W) 'fs/cpio_be.c'; else $(CYGPATH_W) '$(srcdir)/fs/cpio_be.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) fs/$(DEPDIR)/cpio_be_module-cpio_be.Tpo fs/$(DEPDIR)/cpio_be_module-cpio_be.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='fs/cpio_be.c' object='fs/cpio_be_module-cpio_be.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cpio_be_module_CPPFLAGS) $(CPPFLAGS) $(cpio_be_module_CFLAGS) $(CFLAGS) -c -o fs/cpio_be_module-cpio_be.obj `if test -f 'fs/cpio_be.c'; then $(CYGPATH_W) 'fs/cpio_be.c'; else $(CYGPATH_W) '$(srcdir)/fs/cpio_be.c'; fi` - -commands/i386/cpuid_module-cpuid.o: commands/i386/cpuid.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cpuid_module_CPPFLAGS) $(CPPFLAGS) $(cpuid_module_CFLAGS) $(CFLAGS) -MT commands/i386/cpuid_module-cpuid.o -MD -MP -MF commands/i386/$(DEPDIR)/cpuid_module-cpuid.Tpo -c -o commands/i386/cpuid_module-cpuid.o `test -f 'commands/i386/cpuid.c' || echo '$(srcdir)/'`commands/i386/cpuid.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/i386/$(DEPDIR)/cpuid_module-cpuid.Tpo commands/i386/$(DEPDIR)/cpuid_module-cpuid.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/i386/cpuid.c' object='commands/i386/cpuid_module-cpuid.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cpuid_module_CPPFLAGS) $(CPPFLAGS) $(cpuid_module_CFLAGS) $(CFLAGS) -c -o commands/i386/cpuid_module-cpuid.o `test -f 'commands/i386/cpuid.c' || echo '$(srcdir)/'`commands/i386/cpuid.c - -commands/i386/cpuid_module-cpuid.obj: commands/i386/cpuid.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cpuid_module_CPPFLAGS) $(CPPFLAGS) $(cpuid_module_CFLAGS) $(CFLAGS) -MT commands/i386/cpuid_module-cpuid.obj -MD -MP -MF commands/i386/$(DEPDIR)/cpuid_module-cpuid.Tpo -c -o commands/i386/cpuid_module-cpuid.obj `if test -f 'commands/i386/cpuid.c'; then $(CYGPATH_W) 'commands/i386/cpuid.c'; else $(CYGPATH_W) '$(srcdir)/commands/i386/cpuid.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/i386/$(DEPDIR)/cpuid_module-cpuid.Tpo commands/i386/$(DEPDIR)/cpuid_module-cpuid.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/i386/cpuid.c' object='commands/i386/cpuid_module-cpuid.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cpuid_module_CPPFLAGS) $(CPPFLAGS) $(cpuid_module_CFLAGS) $(CFLAGS) -c -o commands/i386/cpuid_module-cpuid.obj `if test -f 'commands/i386/cpuid.c'; then $(CYGPATH_W) 'commands/i386/cpuid.c'; else $(CYGPATH_W) '$(srcdir)/commands/i386/cpuid.c'; fi` - -lib/crc64_module-crc64.o: lib/crc64.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(crc64_module_CPPFLAGS) $(CPPFLAGS) $(crc64_module_CFLAGS) $(CFLAGS) -MT lib/crc64_module-crc64.o -MD -MP -MF lib/$(DEPDIR)/crc64_module-crc64.Tpo -c -o lib/crc64_module-crc64.o `test -f 'lib/crc64.c' || echo '$(srcdir)/'`lib/crc64.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/$(DEPDIR)/crc64_module-crc64.Tpo lib/$(DEPDIR)/crc64_module-crc64.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/crc64.c' object='lib/crc64_module-crc64.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(crc64_module_CPPFLAGS) $(CPPFLAGS) $(crc64_module_CFLAGS) $(CFLAGS) -c -o lib/crc64_module-crc64.o `test -f 'lib/crc64.c' || echo '$(srcdir)/'`lib/crc64.c - -lib/crc64_module-crc64.obj: lib/crc64.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(crc64_module_CPPFLAGS) $(CPPFLAGS) $(crc64_module_CFLAGS) $(CFLAGS) -MT lib/crc64_module-crc64.obj -MD -MP -MF lib/$(DEPDIR)/crc64_module-crc64.Tpo -c -o lib/crc64_module-crc64.obj `if test -f 'lib/crc64.c'; then $(CYGPATH_W) 'lib/crc64.c'; else $(CYGPATH_W) '$(srcdir)/lib/crc64.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/$(DEPDIR)/crc64_module-crc64.Tpo lib/$(DEPDIR)/crc64_module-crc64.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/crc64.c' object='lib/crc64_module-crc64.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(crc64_module_CPPFLAGS) $(CPPFLAGS) $(crc64_module_CFLAGS) $(CFLAGS) -c -o lib/crc64_module-crc64.obj `if test -f 'lib/crc64.c'; then $(CYGPATH_W) 'lib/crc64.c'; else $(CYGPATH_W) '$(srcdir)/lib/crc64.c'; fi` - -lib/crypto_module-crypto.o: lib/crypto.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(crypto_module_CPPFLAGS) $(CPPFLAGS) $(crypto_module_CFLAGS) $(CFLAGS) -MT lib/crypto_module-crypto.o -MD -MP -MF lib/$(DEPDIR)/crypto_module-crypto.Tpo -c -o lib/crypto_module-crypto.o `test -f 'lib/crypto.c' || echo '$(srcdir)/'`lib/crypto.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/$(DEPDIR)/crypto_module-crypto.Tpo lib/$(DEPDIR)/crypto_module-crypto.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/crypto.c' object='lib/crypto_module-crypto.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(crypto_module_CPPFLAGS) $(CPPFLAGS) $(crypto_module_CFLAGS) $(CFLAGS) -c -o lib/crypto_module-crypto.o `test -f 'lib/crypto.c' || echo '$(srcdir)/'`lib/crypto.c - -lib/crypto_module-crypto.obj: lib/crypto.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(crypto_module_CPPFLAGS) $(CPPFLAGS) $(crypto_module_CFLAGS) $(CFLAGS) -MT lib/crypto_module-crypto.obj -MD -MP -MF lib/$(DEPDIR)/crypto_module-crypto.Tpo -c -o lib/crypto_module-crypto.obj `if test -f 'lib/crypto.c'; then $(CYGPATH_W) 'lib/crypto.c'; else $(CYGPATH_W) '$(srcdir)/lib/crypto.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/$(DEPDIR)/crypto_module-crypto.Tpo lib/$(DEPDIR)/crypto_module-crypto.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/crypto.c' object='lib/crypto_module-crypto.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(crypto_module_CPPFLAGS) $(CPPFLAGS) $(crypto_module_CFLAGS) $(CFLAGS) -c -o lib/crypto_module-crypto.obj `if test -f 'lib/crypto.c'; then $(CYGPATH_W) 'lib/crypto.c'; else $(CYGPATH_W) '$(srcdir)/lib/crypto.c'; fi` - -disk/cryptodisk_module-cryptodisk.o: disk/cryptodisk.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cryptodisk_module_CPPFLAGS) $(CPPFLAGS) $(cryptodisk_module_CFLAGS) $(CFLAGS) -MT disk/cryptodisk_module-cryptodisk.o -MD -MP -MF disk/$(DEPDIR)/cryptodisk_module-cryptodisk.Tpo -c -o disk/cryptodisk_module-cryptodisk.o `test -f 'disk/cryptodisk.c' || echo '$(srcdir)/'`disk/cryptodisk.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) disk/$(DEPDIR)/cryptodisk_module-cryptodisk.Tpo disk/$(DEPDIR)/cryptodisk_module-cryptodisk.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='disk/cryptodisk.c' object='disk/cryptodisk_module-cryptodisk.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cryptodisk_module_CPPFLAGS) $(CPPFLAGS) $(cryptodisk_module_CFLAGS) $(CFLAGS) -c -o disk/cryptodisk_module-cryptodisk.o `test -f 'disk/cryptodisk.c' || echo '$(srcdir)/'`disk/cryptodisk.c - -disk/cryptodisk_module-cryptodisk.obj: disk/cryptodisk.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cryptodisk_module_CPPFLAGS) $(CPPFLAGS) $(cryptodisk_module_CFLAGS) $(CFLAGS) -MT disk/cryptodisk_module-cryptodisk.obj -MD -MP -MF disk/$(DEPDIR)/cryptodisk_module-cryptodisk.Tpo -c -o disk/cryptodisk_module-cryptodisk.obj `if test -f 'disk/cryptodisk.c'; then $(CYGPATH_W) 'disk/cryptodisk.c'; else $(CYGPATH_W) '$(srcdir)/disk/cryptodisk.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) disk/$(DEPDIR)/cryptodisk_module-cryptodisk.Tpo disk/$(DEPDIR)/cryptodisk_module-cryptodisk.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='disk/cryptodisk.c' object='disk/cryptodisk_module-cryptodisk.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cryptodisk_module_CPPFLAGS) $(CPPFLAGS) $(cryptodisk_module_CFLAGS) $(CFLAGS) -c -o disk/cryptodisk_module-cryptodisk.obj `if test -f 'disk/cryptodisk.c'; then $(CYGPATH_W) 'disk/cryptodisk.c'; else $(CYGPATH_W) '$(srcdir)/disk/cryptodisk.c'; fi` - -bus/cs5536_module-cs5536.o: bus/cs5536.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cs5536_module_CPPFLAGS) $(CPPFLAGS) $(cs5536_module_CFLAGS) $(CFLAGS) -MT bus/cs5536_module-cs5536.o -MD -MP -MF bus/$(DEPDIR)/cs5536_module-cs5536.Tpo -c -o bus/cs5536_module-cs5536.o `test -f 'bus/cs5536.c' || echo '$(srcdir)/'`bus/cs5536.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) bus/$(DEPDIR)/cs5536_module-cs5536.Tpo bus/$(DEPDIR)/cs5536_module-cs5536.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='bus/cs5536.c' object='bus/cs5536_module-cs5536.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cs5536_module_CPPFLAGS) $(CPPFLAGS) $(cs5536_module_CFLAGS) $(CFLAGS) -c -o bus/cs5536_module-cs5536.o `test -f 'bus/cs5536.c' || echo '$(srcdir)/'`bus/cs5536.c - -bus/cs5536_module-cs5536.obj: bus/cs5536.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cs5536_module_CPPFLAGS) $(CPPFLAGS) $(cs5536_module_CFLAGS) $(CFLAGS) -MT bus/cs5536_module-cs5536.obj -MD -MP -MF bus/$(DEPDIR)/cs5536_module-cs5536.Tpo -c -o bus/cs5536_module-cs5536.obj `if test -f 'bus/cs5536.c'; then $(CYGPATH_W) 'bus/cs5536.c'; else $(CYGPATH_W) '$(srcdir)/bus/cs5536.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) bus/$(DEPDIR)/cs5536_module-cs5536.Tpo bus/$(DEPDIR)/cs5536_module-cs5536.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='bus/cs5536.c' object='bus/cs5536_module-cs5536.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cs5536_module_CPPFLAGS) $(CPPFLAGS) $(cs5536_module_CFLAGS) $(CFLAGS) -c -o bus/cs5536_module-cs5536.obj `if test -f 'bus/cs5536.c'; then $(CYGPATH_W) 'bus/cs5536.c'; else $(CYGPATH_W) '$(srcdir)/bus/cs5536.c'; fi` - -tests/ctz_test_module-ctz_test.o: tests/ctz_test.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ctz_test_module_CPPFLAGS) $(CPPFLAGS) $(ctz_test_module_CFLAGS) $(CFLAGS) -MT tests/ctz_test_module-ctz_test.o -MD -MP -MF tests/$(DEPDIR)/ctz_test_module-ctz_test.Tpo -c -o tests/ctz_test_module-ctz_test.o `test -f 'tests/ctz_test.c' || echo '$(srcdir)/'`tests/ctz_test.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) tests/$(DEPDIR)/ctz_test_module-ctz_test.Tpo tests/$(DEPDIR)/ctz_test_module-ctz_test.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='tests/ctz_test.c' object='tests/ctz_test_module-ctz_test.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ctz_test_module_CPPFLAGS) $(CPPFLAGS) $(ctz_test_module_CFLAGS) $(CFLAGS) -c -o tests/ctz_test_module-ctz_test.o `test -f 'tests/ctz_test.c' || echo '$(srcdir)/'`tests/ctz_test.c - -tests/ctz_test_module-ctz_test.obj: tests/ctz_test.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ctz_test_module_CPPFLAGS) $(CPPFLAGS) $(ctz_test_module_CFLAGS) $(CFLAGS) -MT tests/ctz_test_module-ctz_test.obj -MD -MP -MF tests/$(DEPDIR)/ctz_test_module-ctz_test.Tpo -c -o tests/ctz_test_module-ctz_test.obj `if test -f 'tests/ctz_test.c'; then $(CYGPATH_W) 'tests/ctz_test.c'; else $(CYGPATH_W) '$(srcdir)/tests/ctz_test.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) tests/$(DEPDIR)/ctz_test_module-ctz_test.Tpo tests/$(DEPDIR)/ctz_test_module-ctz_test.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='tests/ctz_test.c' object='tests/ctz_test_module-ctz_test.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ctz_test_module_CPPFLAGS) $(CPPFLAGS) $(ctz_test_module_CFLAGS) $(CFLAGS) -c -o tests/ctz_test_module-ctz_test.obj `if test -f 'tests/ctz_test.c'; then $(CYGPATH_W) 'tests/ctz_test.c'; else $(CYGPATH_W) '$(srcdir)/tests/ctz_test.c'; fi` - -commands/date_module-date.o: commands/date.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(date_module_CPPFLAGS) $(CPPFLAGS) $(date_module_CFLAGS) $(CFLAGS) -MT commands/date_module-date.o -MD -MP -MF commands/$(DEPDIR)/date_module-date.Tpo -c -o commands/date_module-date.o `test -f 'commands/date.c' || echo '$(srcdir)/'`commands/date.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/$(DEPDIR)/date_module-date.Tpo commands/$(DEPDIR)/date_module-date.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/date.c' object='commands/date_module-date.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(date_module_CPPFLAGS) $(CPPFLAGS) $(date_module_CFLAGS) $(CFLAGS) -c -o commands/date_module-date.o `test -f 'commands/date.c' || echo '$(srcdir)/'`commands/date.c - -commands/date_module-date.obj: commands/date.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(date_module_CPPFLAGS) $(CPPFLAGS) $(date_module_CFLAGS) $(CFLAGS) -MT commands/date_module-date.obj -MD -MP -MF commands/$(DEPDIR)/date_module-date.Tpo -c -o commands/date_module-date.obj `if test -f 'commands/date.c'; then $(CYGPATH_W) 'commands/date.c'; else $(CYGPATH_W) '$(srcdir)/commands/date.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/$(DEPDIR)/date_module-date.Tpo commands/$(DEPDIR)/date_module-date.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/date.c' object='commands/date_module-date.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(date_module_CPPFLAGS) $(CPPFLAGS) $(date_module_CFLAGS) $(CFLAGS) -c -o commands/date_module-date.obj `if test -f 'commands/date.c'; then $(CYGPATH_W) 'commands/date.c'; else $(CYGPATH_W) '$(srcdir)/commands/date.c'; fi` - -hook/datehook_module-datehook.o: hook/datehook.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(datehook_module_CPPFLAGS) $(CPPFLAGS) $(datehook_module_CFLAGS) $(CFLAGS) -MT hook/datehook_module-datehook.o -MD -MP -MF hook/$(DEPDIR)/datehook_module-datehook.Tpo -c -o hook/datehook_module-datehook.o `test -f 'hook/datehook.c' || echo '$(srcdir)/'`hook/datehook.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) hook/$(DEPDIR)/datehook_module-datehook.Tpo hook/$(DEPDIR)/datehook_module-datehook.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='hook/datehook.c' object='hook/datehook_module-datehook.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(datehook_module_CPPFLAGS) $(CPPFLAGS) $(datehook_module_CFLAGS) $(CFLAGS) -c -o hook/datehook_module-datehook.o `test -f 'hook/datehook.c' || echo '$(srcdir)/'`hook/datehook.c - -hook/datehook_module-datehook.obj: hook/datehook.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(datehook_module_CPPFLAGS) $(CPPFLAGS) $(datehook_module_CFLAGS) $(CFLAGS) -MT hook/datehook_module-datehook.obj -MD -MP -MF hook/$(DEPDIR)/datehook_module-datehook.Tpo -c -o hook/datehook_module-datehook.obj `if test -f 'hook/datehook.c'; then $(CYGPATH_W) 'hook/datehook.c'; else $(CYGPATH_W) '$(srcdir)/hook/datehook.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) hook/$(DEPDIR)/datehook_module-datehook.Tpo hook/$(DEPDIR)/datehook_module-datehook.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='hook/datehook.c' object='hook/datehook_module-datehook.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(datehook_module_CPPFLAGS) $(CPPFLAGS) $(datehook_module_CFLAGS) $(CFLAGS) -c -o hook/datehook_module-datehook.obj `if test -f 'hook/datehook.c'; then $(CYGPATH_W) 'hook/datehook.c'; else $(CYGPATH_W) '$(srcdir)/hook/datehook.c'; fi` - -lib/efi/datetime_module-datetime.o: lib/efi/datetime.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(datetime_module_CPPFLAGS) $(CPPFLAGS) $(datetime_module_CFLAGS) $(CFLAGS) -MT lib/efi/datetime_module-datetime.o -MD -MP -MF lib/efi/$(DEPDIR)/datetime_module-datetime.Tpo -c -o lib/efi/datetime_module-datetime.o `test -f 'lib/efi/datetime.c' || echo '$(srcdir)/'`lib/efi/datetime.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/efi/$(DEPDIR)/datetime_module-datetime.Tpo lib/efi/$(DEPDIR)/datetime_module-datetime.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/efi/datetime.c' object='lib/efi/datetime_module-datetime.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(datetime_module_CPPFLAGS) $(CPPFLAGS) $(datetime_module_CFLAGS) $(CFLAGS) -c -o lib/efi/datetime_module-datetime.o `test -f 'lib/efi/datetime.c' || echo '$(srcdir)/'`lib/efi/datetime.c - -lib/efi/datetime_module-datetime.obj: lib/efi/datetime.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(datetime_module_CPPFLAGS) $(CPPFLAGS) $(datetime_module_CFLAGS) $(CFLAGS) -MT lib/efi/datetime_module-datetime.obj -MD -MP -MF lib/efi/$(DEPDIR)/datetime_module-datetime.Tpo -c -o lib/efi/datetime_module-datetime.obj `if test -f 'lib/efi/datetime.c'; then $(CYGPATH_W) 'lib/efi/datetime.c'; else $(CYGPATH_W) '$(srcdir)/lib/efi/datetime.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/efi/$(DEPDIR)/datetime_module-datetime.Tpo lib/efi/$(DEPDIR)/datetime_module-datetime.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/efi/datetime.c' object='lib/efi/datetime_module-datetime.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(datetime_module_CPPFLAGS) $(CPPFLAGS) $(datetime_module_CFLAGS) $(CFLAGS) -c -o lib/efi/datetime_module-datetime.obj `if test -f 'lib/efi/datetime.c'; then $(CYGPATH_W) 'lib/efi/datetime.c'; else $(CYGPATH_W) '$(srcdir)/lib/efi/datetime.c'; fi` - -lib/dummy/datetime_module-datetime.o: lib/dummy/datetime.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(datetime_module_CPPFLAGS) $(CPPFLAGS) $(datetime_module_CFLAGS) $(CFLAGS) -MT lib/dummy/datetime_module-datetime.o -MD -MP -MF lib/dummy/$(DEPDIR)/datetime_module-datetime.Tpo -c -o lib/dummy/datetime_module-datetime.o `test -f 'lib/dummy/datetime.c' || echo '$(srcdir)/'`lib/dummy/datetime.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/dummy/$(DEPDIR)/datetime_module-datetime.Tpo lib/dummy/$(DEPDIR)/datetime_module-datetime.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/dummy/datetime.c' object='lib/dummy/datetime_module-datetime.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(datetime_module_CPPFLAGS) $(CPPFLAGS) $(datetime_module_CFLAGS) $(CFLAGS) -c -o lib/dummy/datetime_module-datetime.o `test -f 'lib/dummy/datetime.c' || echo '$(srcdir)/'`lib/dummy/datetime.c - -lib/dummy/datetime_module-datetime.obj: lib/dummy/datetime.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(datetime_module_CPPFLAGS) $(CPPFLAGS) $(datetime_module_CFLAGS) $(CFLAGS) -MT lib/dummy/datetime_module-datetime.obj -MD -MP -MF lib/dummy/$(DEPDIR)/datetime_module-datetime.Tpo -c -o lib/dummy/datetime_module-datetime.obj `if test -f 'lib/dummy/datetime.c'; then $(CYGPATH_W) 'lib/dummy/datetime.c'; else $(CYGPATH_W) '$(srcdir)/lib/dummy/datetime.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/dummy/$(DEPDIR)/datetime_module-datetime.Tpo lib/dummy/$(DEPDIR)/datetime_module-datetime.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/dummy/datetime.c' object='lib/dummy/datetime_module-datetime.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(datetime_module_CPPFLAGS) $(CPPFLAGS) $(datetime_module_CFLAGS) $(CFLAGS) -c -o lib/dummy/datetime_module-datetime.obj `if test -f 'lib/dummy/datetime.c'; then $(CYGPATH_W) 'lib/dummy/datetime.c'; else $(CYGPATH_W) '$(srcdir)/lib/dummy/datetime.c'; fi` - -lib/datetime_module-cmos_datetime.o: lib/cmos_datetime.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(datetime_module_CPPFLAGS) $(CPPFLAGS) $(datetime_module_CFLAGS) $(CFLAGS) -MT lib/datetime_module-cmos_datetime.o -MD -MP -MF lib/$(DEPDIR)/datetime_module-cmos_datetime.Tpo -c -o lib/datetime_module-cmos_datetime.o `test -f 'lib/cmos_datetime.c' || echo '$(srcdir)/'`lib/cmos_datetime.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/$(DEPDIR)/datetime_module-cmos_datetime.Tpo lib/$(DEPDIR)/datetime_module-cmos_datetime.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/cmos_datetime.c' object='lib/datetime_module-cmos_datetime.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(datetime_module_CPPFLAGS) $(CPPFLAGS) $(datetime_module_CFLAGS) $(CFLAGS) -c -o lib/datetime_module-cmos_datetime.o `test -f 'lib/cmos_datetime.c' || echo '$(srcdir)/'`lib/cmos_datetime.c - -lib/datetime_module-cmos_datetime.obj: lib/cmos_datetime.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(datetime_module_CPPFLAGS) $(CPPFLAGS) $(datetime_module_CFLAGS) $(CFLAGS) -MT lib/datetime_module-cmos_datetime.obj -MD -MP -MF lib/$(DEPDIR)/datetime_module-cmos_datetime.Tpo -c -o lib/datetime_module-cmos_datetime.obj `if test -f 'lib/cmos_datetime.c'; then $(CYGPATH_W) 'lib/cmos_datetime.c'; else $(CYGPATH_W) '$(srcdir)/lib/cmos_datetime.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/$(DEPDIR)/datetime_module-cmos_datetime.Tpo lib/$(DEPDIR)/datetime_module-cmos_datetime.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/cmos_datetime.c' object='lib/datetime_module-cmos_datetime.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(datetime_module_CPPFLAGS) $(CPPFLAGS) $(datetime_module_CFLAGS) $(CFLAGS) -c -o lib/datetime_module-cmos_datetime.obj `if test -f 'lib/cmos_datetime.c'; then $(CYGPATH_W) 'lib/cmos_datetime.c'; else $(CYGPATH_W) '$(srcdir)/lib/cmos_datetime.c'; fi` - -lib/xen/datetime_module-datetime.o: lib/xen/datetime.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(datetime_module_CPPFLAGS) $(CPPFLAGS) $(datetime_module_CFLAGS) $(CFLAGS) -MT lib/xen/datetime_module-datetime.o -MD -MP -MF lib/xen/$(DEPDIR)/datetime_module-datetime.Tpo -c -o lib/xen/datetime_module-datetime.o `test -f 'lib/xen/datetime.c' || echo '$(srcdir)/'`lib/xen/datetime.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/xen/$(DEPDIR)/datetime_module-datetime.Tpo lib/xen/$(DEPDIR)/datetime_module-datetime.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/xen/datetime.c' object='lib/xen/datetime_module-datetime.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(datetime_module_CPPFLAGS) $(CPPFLAGS) $(datetime_module_CFLAGS) $(CFLAGS) -c -o lib/xen/datetime_module-datetime.o `test -f 'lib/xen/datetime.c' || echo '$(srcdir)/'`lib/xen/datetime.c - -lib/xen/datetime_module-datetime.obj: lib/xen/datetime.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(datetime_module_CPPFLAGS) $(CPPFLAGS) $(datetime_module_CFLAGS) $(CFLAGS) -MT lib/xen/datetime_module-datetime.obj -MD -MP -MF lib/xen/$(DEPDIR)/datetime_module-datetime.Tpo -c -o lib/xen/datetime_module-datetime.obj `if test -f 'lib/xen/datetime.c'; then $(CYGPATH_W) 'lib/xen/datetime.c'; else $(CYGPATH_W) '$(srcdir)/lib/xen/datetime.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/xen/$(DEPDIR)/datetime_module-datetime.Tpo lib/xen/$(DEPDIR)/datetime_module-datetime.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/xen/datetime.c' object='lib/xen/datetime_module-datetime.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(datetime_module_CPPFLAGS) $(CPPFLAGS) $(datetime_module_CFLAGS) $(CFLAGS) -c -o lib/xen/datetime_module-datetime.obj `if test -f 'lib/xen/datetime.c'; then $(CYGPATH_W) 'lib/xen/datetime.c'; else $(CYGPATH_W) '$(srcdir)/lib/xen/datetime.c'; fi` - -lib/arc/datetime_module-datetime.o: lib/arc/datetime.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(datetime_module_CPPFLAGS) $(CPPFLAGS) $(datetime_module_CFLAGS) $(CFLAGS) -MT lib/arc/datetime_module-datetime.o -MD -MP -MF lib/arc/$(DEPDIR)/datetime_module-datetime.Tpo -c -o lib/arc/datetime_module-datetime.o `test -f 'lib/arc/datetime.c' || echo '$(srcdir)/'`lib/arc/datetime.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/arc/$(DEPDIR)/datetime_module-datetime.Tpo lib/arc/$(DEPDIR)/datetime_module-datetime.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/arc/datetime.c' object='lib/arc/datetime_module-datetime.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(datetime_module_CPPFLAGS) $(CPPFLAGS) $(datetime_module_CFLAGS) $(CFLAGS) -c -o lib/arc/datetime_module-datetime.o `test -f 'lib/arc/datetime.c' || echo '$(srcdir)/'`lib/arc/datetime.c - -lib/arc/datetime_module-datetime.obj: lib/arc/datetime.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(datetime_module_CPPFLAGS) $(CPPFLAGS) $(datetime_module_CFLAGS) $(CFLAGS) -MT lib/arc/datetime_module-datetime.obj -MD -MP -MF lib/arc/$(DEPDIR)/datetime_module-datetime.Tpo -c -o lib/arc/datetime_module-datetime.obj `if test -f 'lib/arc/datetime.c'; then $(CYGPATH_W) 'lib/arc/datetime.c'; else $(CYGPATH_W) '$(srcdir)/lib/arc/datetime.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/arc/$(DEPDIR)/datetime_module-datetime.Tpo lib/arc/$(DEPDIR)/datetime_module-datetime.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/arc/datetime.c' object='lib/arc/datetime_module-datetime.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(datetime_module_CPPFLAGS) $(CPPFLAGS) $(datetime_module_CFLAGS) $(CFLAGS) -c -o lib/arc/datetime_module-datetime.obj `if test -f 'lib/arc/datetime.c'; then $(CYGPATH_W) 'lib/arc/datetime.c'; else $(CYGPATH_W) '$(srcdir)/lib/arc/datetime.c'; fi` - -lib/ieee1275/datetime_module-datetime.o: lib/ieee1275/datetime.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(datetime_module_CPPFLAGS) $(CPPFLAGS) $(datetime_module_CFLAGS) $(CFLAGS) -MT lib/ieee1275/datetime_module-datetime.o -MD -MP -MF lib/ieee1275/$(DEPDIR)/datetime_module-datetime.Tpo -c -o lib/ieee1275/datetime_module-datetime.o `test -f 'lib/ieee1275/datetime.c' || echo '$(srcdir)/'`lib/ieee1275/datetime.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/ieee1275/$(DEPDIR)/datetime_module-datetime.Tpo lib/ieee1275/$(DEPDIR)/datetime_module-datetime.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/ieee1275/datetime.c' object='lib/ieee1275/datetime_module-datetime.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(datetime_module_CPPFLAGS) $(CPPFLAGS) $(datetime_module_CFLAGS) $(CFLAGS) -c -o lib/ieee1275/datetime_module-datetime.o `test -f 'lib/ieee1275/datetime.c' || echo '$(srcdir)/'`lib/ieee1275/datetime.c - -lib/ieee1275/datetime_module-datetime.obj: lib/ieee1275/datetime.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(datetime_module_CPPFLAGS) $(CPPFLAGS) $(datetime_module_CFLAGS) $(CFLAGS) -MT lib/ieee1275/datetime_module-datetime.obj -MD -MP -MF lib/ieee1275/$(DEPDIR)/datetime_module-datetime.Tpo -c -o lib/ieee1275/datetime_module-datetime.obj `if test -f 'lib/ieee1275/datetime.c'; then $(CYGPATH_W) 'lib/ieee1275/datetime.c'; else $(CYGPATH_W) '$(srcdir)/lib/ieee1275/datetime.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/ieee1275/$(DEPDIR)/datetime_module-datetime.Tpo lib/ieee1275/$(DEPDIR)/datetime_module-datetime.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/ieee1275/datetime.c' object='lib/ieee1275/datetime_module-datetime.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(datetime_module_CPPFLAGS) $(CPPFLAGS) $(datetime_module_CFLAGS) $(CFLAGS) -c -o lib/ieee1275/datetime_module-datetime.obj `if test -f 'lib/ieee1275/datetime.c'; then $(CYGPATH_W) 'lib/ieee1275/datetime.c'; else $(CYGPATH_W) '$(srcdir)/lib/ieee1275/datetime.c'; fi` - -lib/ieee1275/datetime_module-cmos.o: lib/ieee1275/cmos.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(datetime_module_CPPFLAGS) $(CPPFLAGS) $(datetime_module_CFLAGS) $(CFLAGS) -MT lib/ieee1275/datetime_module-cmos.o -MD -MP -MF lib/ieee1275/$(DEPDIR)/datetime_module-cmos.Tpo -c -o lib/ieee1275/datetime_module-cmos.o `test -f 'lib/ieee1275/cmos.c' || echo '$(srcdir)/'`lib/ieee1275/cmos.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/ieee1275/$(DEPDIR)/datetime_module-cmos.Tpo lib/ieee1275/$(DEPDIR)/datetime_module-cmos.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/ieee1275/cmos.c' object='lib/ieee1275/datetime_module-cmos.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(datetime_module_CPPFLAGS) $(CPPFLAGS) $(datetime_module_CFLAGS) $(CFLAGS) -c -o lib/ieee1275/datetime_module-cmos.o `test -f 'lib/ieee1275/cmos.c' || echo '$(srcdir)/'`lib/ieee1275/cmos.c - -lib/ieee1275/datetime_module-cmos.obj: lib/ieee1275/cmos.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(datetime_module_CPPFLAGS) $(CPPFLAGS) $(datetime_module_CFLAGS) $(CFLAGS) -MT lib/ieee1275/datetime_module-cmos.obj -MD -MP -MF lib/ieee1275/$(DEPDIR)/datetime_module-cmos.Tpo -c -o lib/ieee1275/datetime_module-cmos.obj `if test -f 'lib/ieee1275/cmos.c'; then $(CYGPATH_W) 'lib/ieee1275/cmos.c'; else $(CYGPATH_W) '$(srcdir)/lib/ieee1275/cmos.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/ieee1275/$(DEPDIR)/datetime_module-cmos.Tpo lib/ieee1275/$(DEPDIR)/datetime_module-cmos.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/ieee1275/cmos.c' object='lib/ieee1275/datetime_module-cmos.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(datetime_module_CPPFLAGS) $(CPPFLAGS) $(datetime_module_CFLAGS) $(CFLAGS) -c -o lib/ieee1275/datetime_module-cmos.obj `if test -f 'lib/ieee1275/cmos.c'; then $(CYGPATH_W) 'lib/ieee1275/cmos.c'; else $(CYGPATH_W) '$(srcdir)/lib/ieee1275/cmos.c'; fi` - -lib/disk_module-disk.o: lib/disk.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(disk_module_CPPFLAGS) $(CPPFLAGS) $(disk_module_CFLAGS) $(CFLAGS) -MT lib/disk_module-disk.o -MD -MP -MF lib/$(DEPDIR)/disk_module-disk.Tpo -c -o lib/disk_module-disk.o `test -f 'lib/disk.c' || echo '$(srcdir)/'`lib/disk.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/$(DEPDIR)/disk_module-disk.Tpo lib/$(DEPDIR)/disk_module-disk.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/disk.c' object='lib/disk_module-disk.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(disk_module_CPPFLAGS) $(CPPFLAGS) $(disk_module_CFLAGS) $(CFLAGS) -c -o lib/disk_module-disk.o `test -f 'lib/disk.c' || echo '$(srcdir)/'`lib/disk.c - -lib/disk_module-disk.obj: lib/disk.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(disk_module_CPPFLAGS) $(CPPFLAGS) $(disk_module_CFLAGS) $(CFLAGS) -MT lib/disk_module-disk.obj -MD -MP -MF lib/$(DEPDIR)/disk_module-disk.Tpo -c -o lib/disk_module-disk.obj `if test -f 'lib/disk.c'; then $(CYGPATH_W) 'lib/disk.c'; else $(CYGPATH_W) '$(srcdir)/lib/disk.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/$(DEPDIR)/disk_module-disk.Tpo lib/$(DEPDIR)/disk_module-disk.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/disk.c' object='lib/disk_module-disk.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(disk_module_CPPFLAGS) $(CPPFLAGS) $(disk_module_CFLAGS) $(CFLAGS) -c -o lib/disk_module-disk.obj `if test -f 'lib/disk.c'; then $(CYGPATH_W) 'lib/disk.c'; else $(CYGPATH_W) '$(srcdir)/lib/disk.c'; fi` - -disk/diskfilter_module-diskfilter.o: disk/diskfilter.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(diskfilter_module_CPPFLAGS) $(CPPFLAGS) $(diskfilter_module_CFLAGS) $(CFLAGS) -MT disk/diskfilter_module-diskfilter.o -MD -MP -MF disk/$(DEPDIR)/diskfilter_module-diskfilter.Tpo -c -o disk/diskfilter_module-diskfilter.o `test -f 'disk/diskfilter.c' || echo '$(srcdir)/'`disk/diskfilter.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) disk/$(DEPDIR)/diskfilter_module-diskfilter.Tpo disk/$(DEPDIR)/diskfilter_module-diskfilter.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='disk/diskfilter.c' object='disk/diskfilter_module-diskfilter.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(diskfilter_module_CPPFLAGS) $(CPPFLAGS) $(diskfilter_module_CFLAGS) $(CFLAGS) -c -o disk/diskfilter_module-diskfilter.o `test -f 'disk/diskfilter.c' || echo '$(srcdir)/'`disk/diskfilter.c - -disk/diskfilter_module-diskfilter.obj: disk/diskfilter.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(diskfilter_module_CPPFLAGS) $(CPPFLAGS) $(diskfilter_module_CFLAGS) $(CFLAGS) -MT disk/diskfilter_module-diskfilter.obj -MD -MP -MF disk/$(DEPDIR)/diskfilter_module-diskfilter.Tpo -c -o disk/diskfilter_module-diskfilter.obj `if test -f 'disk/diskfilter.c'; then $(CYGPATH_W) 'disk/diskfilter.c'; else $(CYGPATH_W) '$(srcdir)/disk/diskfilter.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) disk/$(DEPDIR)/diskfilter_module-diskfilter.Tpo disk/$(DEPDIR)/diskfilter_module-diskfilter.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='disk/diskfilter.c' object='disk/diskfilter_module-diskfilter.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(diskfilter_module_CPPFLAGS) $(CPPFLAGS) $(diskfilter_module_CFLAGS) $(CFLAGS) -c -o disk/diskfilter_module-diskfilter.obj `if test -f 'disk/diskfilter.c'; then $(CYGPATH_W) 'disk/diskfilter.c'; else $(CYGPATH_W) '$(srcdir)/disk/diskfilter.c'; fi` - -lib/div_module-division.o: lib/division.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(div_module_CPPFLAGS) $(CPPFLAGS) $(div_module_CFLAGS) $(CFLAGS) -MT lib/div_module-division.o -MD -MP -MF lib/$(DEPDIR)/div_module-division.Tpo -c -o lib/div_module-division.o `test -f 'lib/division.c' || echo '$(srcdir)/'`lib/division.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/$(DEPDIR)/div_module-division.Tpo lib/$(DEPDIR)/div_module-division.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/division.c' object='lib/div_module-division.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(div_module_CPPFLAGS) $(CPPFLAGS) $(div_module_CFLAGS) $(CFLAGS) -c -o lib/div_module-division.o `test -f 'lib/division.c' || echo '$(srcdir)/'`lib/division.c - -lib/div_module-division.obj: lib/division.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(div_module_CPPFLAGS) $(CPPFLAGS) $(div_module_CFLAGS) $(CFLAGS) -MT lib/div_module-division.obj -MD -MP -MF lib/$(DEPDIR)/div_module-division.Tpo -c -o lib/div_module-division.obj `if test -f 'lib/division.c'; then $(CYGPATH_W) 'lib/division.c'; else $(CYGPATH_W) '$(srcdir)/lib/division.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/$(DEPDIR)/div_module-division.Tpo lib/$(DEPDIR)/div_module-division.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/division.c' object='lib/div_module-division.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(div_module_CPPFLAGS) $(CPPFLAGS) $(div_module_CFLAGS) $(CFLAGS) -c -o lib/div_module-division.obj `if test -f 'lib/division.c'; then $(CYGPATH_W) 'lib/division.c'; else $(CYGPATH_W) '$(srcdir)/lib/division.c'; fi` - -tests/div_test_module-div_test.o: tests/div_test.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(div_test_module_CPPFLAGS) $(CPPFLAGS) $(div_test_module_CFLAGS) $(CFLAGS) -MT tests/div_test_module-div_test.o -MD -MP -MF tests/$(DEPDIR)/div_test_module-div_test.Tpo -c -o tests/div_test_module-div_test.o `test -f 'tests/div_test.c' || echo '$(srcdir)/'`tests/div_test.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) tests/$(DEPDIR)/div_test_module-div_test.Tpo tests/$(DEPDIR)/div_test_module-div_test.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='tests/div_test.c' object='tests/div_test_module-div_test.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(div_test_module_CPPFLAGS) $(CPPFLAGS) $(div_test_module_CFLAGS) $(CFLAGS) -c -o tests/div_test_module-div_test.o `test -f 'tests/div_test.c' || echo '$(srcdir)/'`tests/div_test.c - -tests/div_test_module-div_test.obj: tests/div_test.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(div_test_module_CPPFLAGS) $(CPPFLAGS) $(div_test_module_CFLAGS) $(CFLAGS) -MT tests/div_test_module-div_test.obj -MD -MP -MF tests/$(DEPDIR)/div_test_module-div_test.Tpo -c -o tests/div_test_module-div_test.obj `if test -f 'tests/div_test.c'; then $(CYGPATH_W) 'tests/div_test.c'; else $(CYGPATH_W) '$(srcdir)/tests/div_test.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) tests/$(DEPDIR)/div_test_module-div_test.Tpo tests/$(DEPDIR)/div_test_module-div_test.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='tests/div_test.c' object='tests/div_test_module-div_test.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(div_test_module_CPPFLAGS) $(CPPFLAGS) $(div_test_module_CFLAGS) $(CFLAGS) -c -o tests/div_test_module-div_test.obj `if test -f 'tests/div_test.c'; then $(CYGPATH_W) 'tests/div_test.c'; else $(CYGPATH_W) '$(srcdir)/tests/div_test.c'; fi` - -disk/dm_nv_module-dmraid_nvidia.o: disk/dmraid_nvidia.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(dm_nv_module_CPPFLAGS) $(CPPFLAGS) $(dm_nv_module_CFLAGS) $(CFLAGS) -MT disk/dm_nv_module-dmraid_nvidia.o -MD -MP -MF disk/$(DEPDIR)/dm_nv_module-dmraid_nvidia.Tpo -c -o disk/dm_nv_module-dmraid_nvidia.o `test -f 'disk/dmraid_nvidia.c' || echo '$(srcdir)/'`disk/dmraid_nvidia.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) disk/$(DEPDIR)/dm_nv_module-dmraid_nvidia.Tpo disk/$(DEPDIR)/dm_nv_module-dmraid_nvidia.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='disk/dmraid_nvidia.c' object='disk/dm_nv_module-dmraid_nvidia.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(dm_nv_module_CPPFLAGS) $(CPPFLAGS) $(dm_nv_module_CFLAGS) $(CFLAGS) -c -o disk/dm_nv_module-dmraid_nvidia.o `test -f 'disk/dmraid_nvidia.c' || echo '$(srcdir)/'`disk/dmraid_nvidia.c - -disk/dm_nv_module-dmraid_nvidia.obj: disk/dmraid_nvidia.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(dm_nv_module_CPPFLAGS) $(CPPFLAGS) $(dm_nv_module_CFLAGS) $(CFLAGS) -MT disk/dm_nv_module-dmraid_nvidia.obj -MD -MP -MF disk/$(DEPDIR)/dm_nv_module-dmraid_nvidia.Tpo -c -o disk/dm_nv_module-dmraid_nvidia.obj `if test -f 'disk/dmraid_nvidia.c'; then $(CYGPATH_W) 'disk/dmraid_nvidia.c'; else $(CYGPATH_W) '$(srcdir)/disk/dmraid_nvidia.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) disk/$(DEPDIR)/dm_nv_module-dmraid_nvidia.Tpo disk/$(DEPDIR)/dm_nv_module-dmraid_nvidia.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='disk/dmraid_nvidia.c' object='disk/dm_nv_module-dmraid_nvidia.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(dm_nv_module_CPPFLAGS) $(CPPFLAGS) $(dm_nv_module_CFLAGS) $(CFLAGS) -c -o disk/dm_nv_module-dmraid_nvidia.obj `if test -f 'disk/dmraid_nvidia.c'; then $(CYGPATH_W) 'disk/dmraid_nvidia.c'; else $(CYGPATH_W) '$(srcdir)/disk/dmraid_nvidia.c'; fi` - -commands/i386/pc/drivemap_module-drivemap.o: commands/i386/pc/drivemap.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(drivemap_module_CPPFLAGS) $(CPPFLAGS) $(drivemap_module_CFLAGS) $(CFLAGS) -MT commands/i386/pc/drivemap_module-drivemap.o -MD -MP -MF commands/i386/pc/$(DEPDIR)/drivemap_module-drivemap.Tpo -c -o commands/i386/pc/drivemap_module-drivemap.o `test -f 'commands/i386/pc/drivemap.c' || echo '$(srcdir)/'`commands/i386/pc/drivemap.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/i386/pc/$(DEPDIR)/drivemap_module-drivemap.Tpo commands/i386/pc/$(DEPDIR)/drivemap_module-drivemap.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/i386/pc/drivemap.c' object='commands/i386/pc/drivemap_module-drivemap.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(drivemap_module_CPPFLAGS) $(CPPFLAGS) $(drivemap_module_CFLAGS) $(CFLAGS) -c -o commands/i386/pc/drivemap_module-drivemap.o `test -f 'commands/i386/pc/drivemap.c' || echo '$(srcdir)/'`commands/i386/pc/drivemap.c - -commands/i386/pc/drivemap_module-drivemap.obj: commands/i386/pc/drivemap.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(drivemap_module_CPPFLAGS) $(CPPFLAGS) $(drivemap_module_CFLAGS) $(CFLAGS) -MT commands/i386/pc/drivemap_module-drivemap.obj -MD -MP -MF commands/i386/pc/$(DEPDIR)/drivemap_module-drivemap.Tpo -c -o commands/i386/pc/drivemap_module-drivemap.obj `if test -f 'commands/i386/pc/drivemap.c'; then $(CYGPATH_W) 'commands/i386/pc/drivemap.c'; else $(CYGPATH_W) '$(srcdir)/commands/i386/pc/drivemap.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/i386/pc/$(DEPDIR)/drivemap_module-drivemap.Tpo commands/i386/pc/$(DEPDIR)/drivemap_module-drivemap.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/i386/pc/drivemap.c' object='commands/i386/pc/drivemap_module-drivemap.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(drivemap_module_CPPFLAGS) $(CPPFLAGS) $(drivemap_module_CFLAGS) $(CFLAGS) -c -o commands/i386/pc/drivemap_module-drivemap.obj `if test -f 'commands/i386/pc/drivemap.c'; then $(CYGPATH_W) 'commands/i386/pc/drivemap.c'; else $(CYGPATH_W) '$(srcdir)/commands/i386/pc/drivemap.c'; fi` - -commands/echo_module-echo.o: commands/echo.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(echo_module_CPPFLAGS) $(CPPFLAGS) $(echo_module_CFLAGS) $(CFLAGS) -MT commands/echo_module-echo.o -MD -MP -MF commands/$(DEPDIR)/echo_module-echo.Tpo -c -o commands/echo_module-echo.o `test -f 'commands/echo.c' || echo '$(srcdir)/'`commands/echo.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/$(DEPDIR)/echo_module-echo.Tpo commands/$(DEPDIR)/echo_module-echo.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/echo.c' object='commands/echo_module-echo.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(echo_module_CPPFLAGS) $(CPPFLAGS) $(echo_module_CFLAGS) $(CFLAGS) -c -o commands/echo_module-echo.o `test -f 'commands/echo.c' || echo '$(srcdir)/'`commands/echo.c - -commands/echo_module-echo.obj: commands/echo.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(echo_module_CPPFLAGS) $(CPPFLAGS) $(echo_module_CFLAGS) $(CFLAGS) -MT commands/echo_module-echo.obj -MD -MP -MF commands/$(DEPDIR)/echo_module-echo.Tpo -c -o commands/echo_module-echo.obj `if test -f 'commands/echo.c'; then $(CYGPATH_W) 'commands/echo.c'; else $(CYGPATH_W) '$(srcdir)/commands/echo.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/$(DEPDIR)/echo_module-echo.Tpo commands/$(DEPDIR)/echo_module-echo.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/echo.c' object='commands/echo_module-echo.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(echo_module_CPPFLAGS) $(CPPFLAGS) $(echo_module_CFLAGS) $(CFLAGS) -c -o commands/echo_module-echo.obj `if test -f 'commands/echo.c'; then $(CYGPATH_W) 'commands/echo.c'; else $(CYGPATH_W) '$(srcdir)/commands/echo.c'; fi` - -video/efi_gop_module-efi_gop.o: video/efi_gop.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(efi_gop_module_CPPFLAGS) $(CPPFLAGS) $(efi_gop_module_CFLAGS) $(CFLAGS) -MT video/efi_gop_module-efi_gop.o -MD -MP -MF video/$(DEPDIR)/efi_gop_module-efi_gop.Tpo -c -o video/efi_gop_module-efi_gop.o `test -f 'video/efi_gop.c' || echo '$(srcdir)/'`video/efi_gop.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) video/$(DEPDIR)/efi_gop_module-efi_gop.Tpo video/$(DEPDIR)/efi_gop_module-efi_gop.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='video/efi_gop.c' object='video/efi_gop_module-efi_gop.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(efi_gop_module_CPPFLAGS) $(CPPFLAGS) $(efi_gop_module_CFLAGS) $(CFLAGS) -c -o video/efi_gop_module-efi_gop.o `test -f 'video/efi_gop.c' || echo '$(srcdir)/'`video/efi_gop.c - -video/efi_gop_module-efi_gop.obj: video/efi_gop.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(efi_gop_module_CPPFLAGS) $(CPPFLAGS) $(efi_gop_module_CFLAGS) $(CFLAGS) -MT video/efi_gop_module-efi_gop.obj -MD -MP -MF video/$(DEPDIR)/efi_gop_module-efi_gop.Tpo -c -o video/efi_gop_module-efi_gop.obj `if test -f 'video/efi_gop.c'; then $(CYGPATH_W) 'video/efi_gop.c'; else $(CYGPATH_W) '$(srcdir)/video/efi_gop.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) video/$(DEPDIR)/efi_gop_module-efi_gop.Tpo video/$(DEPDIR)/efi_gop_module-efi_gop.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='video/efi_gop.c' object='video/efi_gop_module-efi_gop.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(efi_gop_module_CPPFLAGS) $(CPPFLAGS) $(efi_gop_module_CFLAGS) $(CFLAGS) -c -o video/efi_gop_module-efi_gop.obj `if test -f 'video/efi_gop.c'; then $(CYGPATH_W) 'video/efi_gop.c'; else $(CYGPATH_W) '$(srcdir)/video/efi_gop.c'; fi` - -video/efi_uga_module-efi_uga.o: video/efi_uga.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(efi_uga_module_CPPFLAGS) $(CPPFLAGS) $(efi_uga_module_CFLAGS) $(CFLAGS) -MT video/efi_uga_module-efi_uga.o -MD -MP -MF video/$(DEPDIR)/efi_uga_module-efi_uga.Tpo -c -o video/efi_uga_module-efi_uga.o `test -f 'video/efi_uga.c' || echo '$(srcdir)/'`video/efi_uga.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) video/$(DEPDIR)/efi_uga_module-efi_uga.Tpo video/$(DEPDIR)/efi_uga_module-efi_uga.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='video/efi_uga.c' object='video/efi_uga_module-efi_uga.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(efi_uga_module_CPPFLAGS) $(CPPFLAGS) $(efi_uga_module_CFLAGS) $(CFLAGS) -c -o video/efi_uga_module-efi_uga.o `test -f 'video/efi_uga.c' || echo '$(srcdir)/'`video/efi_uga.c - -video/efi_uga_module-efi_uga.obj: video/efi_uga.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(efi_uga_module_CPPFLAGS) $(CPPFLAGS) $(efi_uga_module_CFLAGS) $(CFLAGS) -MT video/efi_uga_module-efi_uga.obj -MD -MP -MF video/$(DEPDIR)/efi_uga_module-efi_uga.Tpo -c -o video/efi_uga_module-efi_uga.obj `if test -f 'video/efi_uga.c'; then $(CYGPATH_W) 'video/efi_uga.c'; else $(CYGPATH_W) '$(srcdir)/video/efi_uga.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) video/$(DEPDIR)/efi_uga_module-efi_uga.Tpo video/$(DEPDIR)/efi_uga_module-efi_uga.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='video/efi_uga.c' object='video/efi_uga_module-efi_uga.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(efi_uga_module_CPPFLAGS) $(CPPFLAGS) $(efi_uga_module_CFLAGS) $(CFLAGS) -c -o video/efi_uga_module-efi_uga.obj `if test -f 'video/efi_uga.c'; then $(CYGPATH_W) 'video/efi_uga.c'; else $(CYGPATH_W) '$(srcdir)/video/efi_uga.c'; fi` - -efiemu/i386/pc/efiemu_module-cfgtables.o: efiemu/i386/pc/cfgtables.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(efiemu_module_CPPFLAGS) $(CPPFLAGS) $(efiemu_module_CFLAGS) $(CFLAGS) -MT efiemu/i386/pc/efiemu_module-cfgtables.o -MD -MP -MF efiemu/i386/pc/$(DEPDIR)/efiemu_module-cfgtables.Tpo -c -o efiemu/i386/pc/efiemu_module-cfgtables.o `test -f 'efiemu/i386/pc/cfgtables.c' || echo '$(srcdir)/'`efiemu/i386/pc/cfgtables.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) efiemu/i386/pc/$(DEPDIR)/efiemu_module-cfgtables.Tpo efiemu/i386/pc/$(DEPDIR)/efiemu_module-cfgtables.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='efiemu/i386/pc/cfgtables.c' object='efiemu/i386/pc/efiemu_module-cfgtables.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(efiemu_module_CPPFLAGS) $(CPPFLAGS) $(efiemu_module_CFLAGS) $(CFLAGS) -c -o efiemu/i386/pc/efiemu_module-cfgtables.o `test -f 'efiemu/i386/pc/cfgtables.c' || echo '$(srcdir)/'`efiemu/i386/pc/cfgtables.c - -efiemu/i386/pc/efiemu_module-cfgtables.obj: efiemu/i386/pc/cfgtables.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(efiemu_module_CPPFLAGS) $(CPPFLAGS) $(efiemu_module_CFLAGS) $(CFLAGS) -MT efiemu/i386/pc/efiemu_module-cfgtables.obj -MD -MP -MF efiemu/i386/pc/$(DEPDIR)/efiemu_module-cfgtables.Tpo -c -o efiemu/i386/pc/efiemu_module-cfgtables.obj `if test -f 'efiemu/i386/pc/cfgtables.c'; then $(CYGPATH_W) 'efiemu/i386/pc/cfgtables.c'; else $(CYGPATH_W) '$(srcdir)/efiemu/i386/pc/cfgtables.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) efiemu/i386/pc/$(DEPDIR)/efiemu_module-cfgtables.Tpo efiemu/i386/pc/$(DEPDIR)/efiemu_module-cfgtables.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='efiemu/i386/pc/cfgtables.c' object='efiemu/i386/pc/efiemu_module-cfgtables.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(efiemu_module_CPPFLAGS) $(CPPFLAGS) $(efiemu_module_CFLAGS) $(CFLAGS) -c -o efiemu/i386/pc/efiemu_module-cfgtables.obj `if test -f 'efiemu/i386/pc/cfgtables.c'; then $(CYGPATH_W) 'efiemu/i386/pc/cfgtables.c'; else $(CYGPATH_W) '$(srcdir)/efiemu/i386/pc/cfgtables.c'; fi` - -efiemu/efiemu_module-main.o: efiemu/main.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(efiemu_module_CPPFLAGS) $(CPPFLAGS) $(efiemu_module_CFLAGS) $(CFLAGS) -MT efiemu/efiemu_module-main.o -MD -MP -MF efiemu/$(DEPDIR)/efiemu_module-main.Tpo -c -o efiemu/efiemu_module-main.o `test -f 'efiemu/main.c' || echo '$(srcdir)/'`efiemu/main.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) efiemu/$(DEPDIR)/efiemu_module-main.Tpo efiemu/$(DEPDIR)/efiemu_module-main.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='efiemu/main.c' object='efiemu/efiemu_module-main.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(efiemu_module_CPPFLAGS) $(CPPFLAGS) $(efiemu_module_CFLAGS) $(CFLAGS) -c -o efiemu/efiemu_module-main.o `test -f 'efiemu/main.c' || echo '$(srcdir)/'`efiemu/main.c - -efiemu/efiemu_module-main.obj: efiemu/main.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(efiemu_module_CPPFLAGS) $(CPPFLAGS) $(efiemu_module_CFLAGS) $(CFLAGS) -MT efiemu/efiemu_module-main.obj -MD -MP -MF efiemu/$(DEPDIR)/efiemu_module-main.Tpo -c -o efiemu/efiemu_module-main.obj `if test -f 'efiemu/main.c'; then $(CYGPATH_W) 'efiemu/main.c'; else $(CYGPATH_W) '$(srcdir)/efiemu/main.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) efiemu/$(DEPDIR)/efiemu_module-main.Tpo efiemu/$(DEPDIR)/efiemu_module-main.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='efiemu/main.c' object='efiemu/efiemu_module-main.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(efiemu_module_CPPFLAGS) $(CPPFLAGS) $(efiemu_module_CFLAGS) $(CFLAGS) -c -o efiemu/efiemu_module-main.obj `if test -f 'efiemu/main.c'; then $(CYGPATH_W) 'efiemu/main.c'; else $(CYGPATH_W) '$(srcdir)/efiemu/main.c'; fi` - -efiemu/i386/efiemu_module-loadcore32.o: efiemu/i386/loadcore32.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(efiemu_module_CPPFLAGS) $(CPPFLAGS) $(efiemu_module_CFLAGS) $(CFLAGS) -MT efiemu/i386/efiemu_module-loadcore32.o -MD -MP -MF efiemu/i386/$(DEPDIR)/efiemu_module-loadcore32.Tpo -c -o efiemu/i386/efiemu_module-loadcore32.o `test -f 'efiemu/i386/loadcore32.c' || echo '$(srcdir)/'`efiemu/i386/loadcore32.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) efiemu/i386/$(DEPDIR)/efiemu_module-loadcore32.Tpo efiemu/i386/$(DEPDIR)/efiemu_module-loadcore32.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='efiemu/i386/loadcore32.c' object='efiemu/i386/efiemu_module-loadcore32.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(efiemu_module_CPPFLAGS) $(CPPFLAGS) $(efiemu_module_CFLAGS) $(CFLAGS) -c -o efiemu/i386/efiemu_module-loadcore32.o `test -f 'efiemu/i386/loadcore32.c' || echo '$(srcdir)/'`efiemu/i386/loadcore32.c - -efiemu/i386/efiemu_module-loadcore32.obj: efiemu/i386/loadcore32.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(efiemu_module_CPPFLAGS) $(CPPFLAGS) $(efiemu_module_CFLAGS) $(CFLAGS) -MT efiemu/i386/efiemu_module-loadcore32.obj -MD -MP -MF efiemu/i386/$(DEPDIR)/efiemu_module-loadcore32.Tpo -c -o efiemu/i386/efiemu_module-loadcore32.obj `if test -f 'efiemu/i386/loadcore32.c'; then $(CYGPATH_W) 'efiemu/i386/loadcore32.c'; else $(CYGPATH_W) '$(srcdir)/efiemu/i386/loadcore32.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) efiemu/i386/$(DEPDIR)/efiemu_module-loadcore32.Tpo efiemu/i386/$(DEPDIR)/efiemu_module-loadcore32.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='efiemu/i386/loadcore32.c' object='efiemu/i386/efiemu_module-loadcore32.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(efiemu_module_CPPFLAGS) $(CPPFLAGS) $(efiemu_module_CFLAGS) $(CFLAGS) -c -o efiemu/i386/efiemu_module-loadcore32.obj `if test -f 'efiemu/i386/loadcore32.c'; then $(CYGPATH_W) 'efiemu/i386/loadcore32.c'; else $(CYGPATH_W) '$(srcdir)/efiemu/i386/loadcore32.c'; fi` - -efiemu/i386/efiemu_module-loadcore64.o: efiemu/i386/loadcore64.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(efiemu_module_CPPFLAGS) $(CPPFLAGS) $(efiemu_module_CFLAGS) $(CFLAGS) -MT efiemu/i386/efiemu_module-loadcore64.o -MD -MP -MF efiemu/i386/$(DEPDIR)/efiemu_module-loadcore64.Tpo -c -o efiemu/i386/efiemu_module-loadcore64.o `test -f 'efiemu/i386/loadcore64.c' || echo '$(srcdir)/'`efiemu/i386/loadcore64.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) efiemu/i386/$(DEPDIR)/efiemu_module-loadcore64.Tpo efiemu/i386/$(DEPDIR)/efiemu_module-loadcore64.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='efiemu/i386/loadcore64.c' object='efiemu/i386/efiemu_module-loadcore64.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(efiemu_module_CPPFLAGS) $(CPPFLAGS) $(efiemu_module_CFLAGS) $(CFLAGS) -c -o efiemu/i386/efiemu_module-loadcore64.o `test -f 'efiemu/i386/loadcore64.c' || echo '$(srcdir)/'`efiemu/i386/loadcore64.c - -efiemu/i386/efiemu_module-loadcore64.obj: efiemu/i386/loadcore64.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(efiemu_module_CPPFLAGS) $(CPPFLAGS) $(efiemu_module_CFLAGS) $(CFLAGS) -MT efiemu/i386/efiemu_module-loadcore64.obj -MD -MP -MF efiemu/i386/$(DEPDIR)/efiemu_module-loadcore64.Tpo -c -o efiemu/i386/efiemu_module-loadcore64.obj `if test -f 'efiemu/i386/loadcore64.c'; then $(CYGPATH_W) 'efiemu/i386/loadcore64.c'; else $(CYGPATH_W) '$(srcdir)/efiemu/i386/loadcore64.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) efiemu/i386/$(DEPDIR)/efiemu_module-loadcore64.Tpo efiemu/i386/$(DEPDIR)/efiemu_module-loadcore64.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='efiemu/i386/loadcore64.c' object='efiemu/i386/efiemu_module-loadcore64.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(efiemu_module_CPPFLAGS) $(CPPFLAGS) $(efiemu_module_CFLAGS) $(CFLAGS) -c -o efiemu/i386/efiemu_module-loadcore64.obj `if test -f 'efiemu/i386/loadcore64.c'; then $(CYGPATH_W) 'efiemu/i386/loadcore64.c'; else $(CYGPATH_W) '$(srcdir)/efiemu/i386/loadcore64.c'; fi` - -efiemu/efiemu_module-mm.o: efiemu/mm.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(efiemu_module_CPPFLAGS) $(CPPFLAGS) $(efiemu_module_CFLAGS) $(CFLAGS) -MT efiemu/efiemu_module-mm.o -MD -MP -MF efiemu/$(DEPDIR)/efiemu_module-mm.Tpo -c -o efiemu/efiemu_module-mm.o `test -f 'efiemu/mm.c' || echo '$(srcdir)/'`efiemu/mm.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) efiemu/$(DEPDIR)/efiemu_module-mm.Tpo efiemu/$(DEPDIR)/efiemu_module-mm.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='efiemu/mm.c' object='efiemu/efiemu_module-mm.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(efiemu_module_CPPFLAGS) $(CPPFLAGS) $(efiemu_module_CFLAGS) $(CFLAGS) -c -o efiemu/efiemu_module-mm.o `test -f 'efiemu/mm.c' || echo '$(srcdir)/'`efiemu/mm.c - -efiemu/efiemu_module-mm.obj: efiemu/mm.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(efiemu_module_CPPFLAGS) $(CPPFLAGS) $(efiemu_module_CFLAGS) $(CFLAGS) -MT efiemu/efiemu_module-mm.obj -MD -MP -MF efiemu/$(DEPDIR)/efiemu_module-mm.Tpo -c -o efiemu/efiemu_module-mm.obj `if test -f 'efiemu/mm.c'; then $(CYGPATH_W) 'efiemu/mm.c'; else $(CYGPATH_W) '$(srcdir)/efiemu/mm.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) efiemu/$(DEPDIR)/efiemu_module-mm.Tpo efiemu/$(DEPDIR)/efiemu_module-mm.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='efiemu/mm.c' object='efiemu/efiemu_module-mm.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(efiemu_module_CPPFLAGS) $(CPPFLAGS) $(efiemu_module_CFLAGS) $(CFLAGS) -c -o efiemu/efiemu_module-mm.obj `if test -f 'efiemu/mm.c'; then $(CYGPATH_W) 'efiemu/mm.c'; else $(CYGPATH_W) '$(srcdir)/efiemu/mm.c'; fi` - -efiemu/efiemu_module-loadcore_common.o: efiemu/loadcore_common.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(efiemu_module_CPPFLAGS) $(CPPFLAGS) $(efiemu_module_CFLAGS) $(CFLAGS) -MT efiemu/efiemu_module-loadcore_common.o -MD -MP -MF efiemu/$(DEPDIR)/efiemu_module-loadcore_common.Tpo -c -o efiemu/efiemu_module-loadcore_common.o `test -f 'efiemu/loadcore_common.c' || echo '$(srcdir)/'`efiemu/loadcore_common.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) efiemu/$(DEPDIR)/efiemu_module-loadcore_common.Tpo efiemu/$(DEPDIR)/efiemu_module-loadcore_common.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='efiemu/loadcore_common.c' object='efiemu/efiemu_module-loadcore_common.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(efiemu_module_CPPFLAGS) $(CPPFLAGS) $(efiemu_module_CFLAGS) $(CFLAGS) -c -o efiemu/efiemu_module-loadcore_common.o `test -f 'efiemu/loadcore_common.c' || echo '$(srcdir)/'`efiemu/loadcore_common.c - -efiemu/efiemu_module-loadcore_common.obj: efiemu/loadcore_common.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(efiemu_module_CPPFLAGS) $(CPPFLAGS) $(efiemu_module_CFLAGS) $(CFLAGS) -MT efiemu/efiemu_module-loadcore_common.obj -MD -MP -MF efiemu/$(DEPDIR)/efiemu_module-loadcore_common.Tpo -c -o efiemu/efiemu_module-loadcore_common.obj `if test -f 'efiemu/loadcore_common.c'; then $(CYGPATH_W) 'efiemu/loadcore_common.c'; else $(CYGPATH_W) '$(srcdir)/efiemu/loadcore_common.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) efiemu/$(DEPDIR)/efiemu_module-loadcore_common.Tpo efiemu/$(DEPDIR)/efiemu_module-loadcore_common.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='efiemu/loadcore_common.c' object='efiemu/efiemu_module-loadcore_common.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(efiemu_module_CPPFLAGS) $(CPPFLAGS) $(efiemu_module_CFLAGS) $(CFLAGS) -c -o efiemu/efiemu_module-loadcore_common.obj `if test -f 'efiemu/loadcore_common.c'; then $(CYGPATH_W) 'efiemu/loadcore_common.c'; else $(CYGPATH_W) '$(srcdir)/efiemu/loadcore_common.c'; fi` - -efiemu/efiemu_module-symbols.o: efiemu/symbols.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(efiemu_module_CPPFLAGS) $(CPPFLAGS) $(efiemu_module_CFLAGS) $(CFLAGS) -MT efiemu/efiemu_module-symbols.o -MD -MP -MF efiemu/$(DEPDIR)/efiemu_module-symbols.Tpo -c -o efiemu/efiemu_module-symbols.o `test -f 'efiemu/symbols.c' || echo '$(srcdir)/'`efiemu/symbols.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) efiemu/$(DEPDIR)/efiemu_module-symbols.Tpo efiemu/$(DEPDIR)/efiemu_module-symbols.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='efiemu/symbols.c' object='efiemu/efiemu_module-symbols.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(efiemu_module_CPPFLAGS) $(CPPFLAGS) $(efiemu_module_CFLAGS) $(CFLAGS) -c -o efiemu/efiemu_module-symbols.o `test -f 'efiemu/symbols.c' || echo '$(srcdir)/'`efiemu/symbols.c - -efiemu/efiemu_module-symbols.obj: efiemu/symbols.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(efiemu_module_CPPFLAGS) $(CPPFLAGS) $(efiemu_module_CFLAGS) $(CFLAGS) -MT efiemu/efiemu_module-symbols.obj -MD -MP -MF efiemu/$(DEPDIR)/efiemu_module-symbols.Tpo -c -o efiemu/efiemu_module-symbols.obj `if test -f 'efiemu/symbols.c'; then $(CYGPATH_W) 'efiemu/symbols.c'; else $(CYGPATH_W) '$(srcdir)/efiemu/symbols.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) efiemu/$(DEPDIR)/efiemu_module-symbols.Tpo efiemu/$(DEPDIR)/efiemu_module-symbols.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='efiemu/symbols.c' object='efiemu/efiemu_module-symbols.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(efiemu_module_CPPFLAGS) $(CPPFLAGS) $(efiemu_module_CFLAGS) $(CFLAGS) -c -o efiemu/efiemu_module-symbols.obj `if test -f 'efiemu/symbols.c'; then $(CYGPATH_W) 'efiemu/symbols.c'; else $(CYGPATH_W) '$(srcdir)/efiemu/symbols.c'; fi` - -efiemu/efiemu_module-loadcore32.o: efiemu/loadcore32.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(efiemu_module_CPPFLAGS) $(CPPFLAGS) $(efiemu_module_CFLAGS) $(CFLAGS) -MT efiemu/efiemu_module-loadcore32.o -MD -MP -MF efiemu/$(DEPDIR)/efiemu_module-loadcore32.Tpo -c -o efiemu/efiemu_module-loadcore32.o `test -f 'efiemu/loadcore32.c' || echo '$(srcdir)/'`efiemu/loadcore32.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) efiemu/$(DEPDIR)/efiemu_module-loadcore32.Tpo efiemu/$(DEPDIR)/efiemu_module-loadcore32.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='efiemu/loadcore32.c' object='efiemu/efiemu_module-loadcore32.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(efiemu_module_CPPFLAGS) $(CPPFLAGS) $(efiemu_module_CFLAGS) $(CFLAGS) -c -o efiemu/efiemu_module-loadcore32.o `test -f 'efiemu/loadcore32.c' || echo '$(srcdir)/'`efiemu/loadcore32.c - -efiemu/efiemu_module-loadcore32.obj: efiemu/loadcore32.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(efiemu_module_CPPFLAGS) $(CPPFLAGS) $(efiemu_module_CFLAGS) $(CFLAGS) -MT efiemu/efiemu_module-loadcore32.obj -MD -MP -MF efiemu/$(DEPDIR)/efiemu_module-loadcore32.Tpo -c -o efiemu/efiemu_module-loadcore32.obj `if test -f 'efiemu/loadcore32.c'; then $(CYGPATH_W) 'efiemu/loadcore32.c'; else $(CYGPATH_W) '$(srcdir)/efiemu/loadcore32.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) efiemu/$(DEPDIR)/efiemu_module-loadcore32.Tpo efiemu/$(DEPDIR)/efiemu_module-loadcore32.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='efiemu/loadcore32.c' object='efiemu/efiemu_module-loadcore32.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(efiemu_module_CPPFLAGS) $(CPPFLAGS) $(efiemu_module_CFLAGS) $(CFLAGS) -c -o efiemu/efiemu_module-loadcore32.obj `if test -f 'efiemu/loadcore32.c'; then $(CYGPATH_W) 'efiemu/loadcore32.c'; else $(CYGPATH_W) '$(srcdir)/efiemu/loadcore32.c'; fi` - -efiemu/efiemu_module-loadcore64.o: efiemu/loadcore64.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(efiemu_module_CPPFLAGS) $(CPPFLAGS) $(efiemu_module_CFLAGS) $(CFLAGS) -MT efiemu/efiemu_module-loadcore64.o -MD -MP -MF efiemu/$(DEPDIR)/efiemu_module-loadcore64.Tpo -c -o efiemu/efiemu_module-loadcore64.o `test -f 'efiemu/loadcore64.c' || echo '$(srcdir)/'`efiemu/loadcore64.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) efiemu/$(DEPDIR)/efiemu_module-loadcore64.Tpo efiemu/$(DEPDIR)/efiemu_module-loadcore64.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='efiemu/loadcore64.c' object='efiemu/efiemu_module-loadcore64.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(efiemu_module_CPPFLAGS) $(CPPFLAGS) $(efiemu_module_CFLAGS) $(CFLAGS) -c -o efiemu/efiemu_module-loadcore64.o `test -f 'efiemu/loadcore64.c' || echo '$(srcdir)/'`efiemu/loadcore64.c - -efiemu/efiemu_module-loadcore64.obj: efiemu/loadcore64.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(efiemu_module_CPPFLAGS) $(CPPFLAGS) $(efiemu_module_CFLAGS) $(CFLAGS) -MT efiemu/efiemu_module-loadcore64.obj -MD -MP -MF efiemu/$(DEPDIR)/efiemu_module-loadcore64.Tpo -c -o efiemu/efiemu_module-loadcore64.obj `if test -f 'efiemu/loadcore64.c'; then $(CYGPATH_W) 'efiemu/loadcore64.c'; else $(CYGPATH_W) '$(srcdir)/efiemu/loadcore64.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) efiemu/$(DEPDIR)/efiemu_module-loadcore64.Tpo efiemu/$(DEPDIR)/efiemu_module-loadcore64.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='efiemu/loadcore64.c' object='efiemu/efiemu_module-loadcore64.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(efiemu_module_CPPFLAGS) $(CPPFLAGS) $(efiemu_module_CFLAGS) $(CFLAGS) -c -o efiemu/efiemu_module-loadcore64.obj `if test -f 'efiemu/loadcore64.c'; then $(CYGPATH_W) 'efiemu/loadcore64.c'; else $(CYGPATH_W) '$(srcdir)/efiemu/loadcore64.c'; fi` - -efiemu/efiemu_module-prepare32.o: efiemu/prepare32.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(efiemu_module_CPPFLAGS) $(CPPFLAGS) $(efiemu_module_CFLAGS) $(CFLAGS) -MT efiemu/efiemu_module-prepare32.o -MD -MP -MF efiemu/$(DEPDIR)/efiemu_module-prepare32.Tpo -c -o efiemu/efiemu_module-prepare32.o `test -f 'efiemu/prepare32.c' || echo '$(srcdir)/'`efiemu/prepare32.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) efiemu/$(DEPDIR)/efiemu_module-prepare32.Tpo efiemu/$(DEPDIR)/efiemu_module-prepare32.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='efiemu/prepare32.c' object='efiemu/efiemu_module-prepare32.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(efiemu_module_CPPFLAGS) $(CPPFLAGS) $(efiemu_module_CFLAGS) $(CFLAGS) -c -o efiemu/efiemu_module-prepare32.o `test -f 'efiemu/prepare32.c' || echo '$(srcdir)/'`efiemu/prepare32.c - -efiemu/efiemu_module-prepare32.obj: efiemu/prepare32.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(efiemu_module_CPPFLAGS) $(CPPFLAGS) $(efiemu_module_CFLAGS) $(CFLAGS) -MT efiemu/efiemu_module-prepare32.obj -MD -MP -MF efiemu/$(DEPDIR)/efiemu_module-prepare32.Tpo -c -o efiemu/efiemu_module-prepare32.obj `if test -f 'efiemu/prepare32.c'; then $(CYGPATH_W) 'efiemu/prepare32.c'; else $(CYGPATH_W) '$(srcdir)/efiemu/prepare32.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) efiemu/$(DEPDIR)/efiemu_module-prepare32.Tpo efiemu/$(DEPDIR)/efiemu_module-prepare32.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='efiemu/prepare32.c' object='efiemu/efiemu_module-prepare32.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(efiemu_module_CPPFLAGS) $(CPPFLAGS) $(efiemu_module_CFLAGS) $(CFLAGS) -c -o efiemu/efiemu_module-prepare32.obj `if test -f 'efiemu/prepare32.c'; then $(CYGPATH_W) 'efiemu/prepare32.c'; else $(CYGPATH_W) '$(srcdir)/efiemu/prepare32.c'; fi` - -efiemu/efiemu_module-prepare64.o: efiemu/prepare64.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(efiemu_module_CPPFLAGS) $(CPPFLAGS) $(efiemu_module_CFLAGS) $(CFLAGS) -MT efiemu/efiemu_module-prepare64.o -MD -MP -MF efiemu/$(DEPDIR)/efiemu_module-prepare64.Tpo -c -o efiemu/efiemu_module-prepare64.o `test -f 'efiemu/prepare64.c' || echo '$(srcdir)/'`efiemu/prepare64.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) efiemu/$(DEPDIR)/efiemu_module-prepare64.Tpo efiemu/$(DEPDIR)/efiemu_module-prepare64.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='efiemu/prepare64.c' object='efiemu/efiemu_module-prepare64.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(efiemu_module_CPPFLAGS) $(CPPFLAGS) $(efiemu_module_CFLAGS) $(CFLAGS) -c -o efiemu/efiemu_module-prepare64.o `test -f 'efiemu/prepare64.c' || echo '$(srcdir)/'`efiemu/prepare64.c - -efiemu/efiemu_module-prepare64.obj: efiemu/prepare64.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(efiemu_module_CPPFLAGS) $(CPPFLAGS) $(efiemu_module_CFLAGS) $(CFLAGS) -MT efiemu/efiemu_module-prepare64.obj -MD -MP -MF efiemu/$(DEPDIR)/efiemu_module-prepare64.Tpo -c -o efiemu/efiemu_module-prepare64.obj `if test -f 'efiemu/prepare64.c'; then $(CYGPATH_W) 'efiemu/prepare64.c'; else $(CYGPATH_W) '$(srcdir)/efiemu/prepare64.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) efiemu/$(DEPDIR)/efiemu_module-prepare64.Tpo efiemu/$(DEPDIR)/efiemu_module-prepare64.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='efiemu/prepare64.c' object='efiemu/efiemu_module-prepare64.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(efiemu_module_CPPFLAGS) $(CPPFLAGS) $(efiemu_module_CFLAGS) $(CFLAGS) -c -o efiemu/efiemu_module-prepare64.obj `if test -f 'efiemu/prepare64.c'; then $(CYGPATH_W) 'efiemu/prepare64.c'; else $(CYGPATH_W) '$(srcdir)/efiemu/prepare64.c'; fi` - -efiemu/efiemu_module-pnvram.o: efiemu/pnvram.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(efiemu_module_CPPFLAGS) $(CPPFLAGS) $(efiemu_module_CFLAGS) $(CFLAGS) -MT efiemu/efiemu_module-pnvram.o -MD -MP -MF efiemu/$(DEPDIR)/efiemu_module-pnvram.Tpo -c -o efiemu/efiemu_module-pnvram.o `test -f 'efiemu/pnvram.c' || echo '$(srcdir)/'`efiemu/pnvram.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) efiemu/$(DEPDIR)/efiemu_module-pnvram.Tpo efiemu/$(DEPDIR)/efiemu_module-pnvram.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='efiemu/pnvram.c' object='efiemu/efiemu_module-pnvram.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(efiemu_module_CPPFLAGS) $(CPPFLAGS) $(efiemu_module_CFLAGS) $(CFLAGS) -c -o efiemu/efiemu_module-pnvram.o `test -f 'efiemu/pnvram.c' || echo '$(srcdir)/'`efiemu/pnvram.c - -efiemu/efiemu_module-pnvram.obj: efiemu/pnvram.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(efiemu_module_CPPFLAGS) $(CPPFLAGS) $(efiemu_module_CFLAGS) $(CFLAGS) -MT efiemu/efiemu_module-pnvram.obj -MD -MP -MF efiemu/$(DEPDIR)/efiemu_module-pnvram.Tpo -c -o efiemu/efiemu_module-pnvram.obj `if test -f 'efiemu/pnvram.c'; then $(CYGPATH_W) 'efiemu/pnvram.c'; else $(CYGPATH_W) '$(srcdir)/efiemu/pnvram.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) efiemu/$(DEPDIR)/efiemu_module-pnvram.Tpo efiemu/$(DEPDIR)/efiemu_module-pnvram.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='efiemu/pnvram.c' object='efiemu/efiemu_module-pnvram.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(efiemu_module_CPPFLAGS) $(CPPFLAGS) $(efiemu_module_CFLAGS) $(CFLAGS) -c -o efiemu/efiemu_module-pnvram.obj `if test -f 'efiemu/pnvram.c'; then $(CYGPATH_W) 'efiemu/pnvram.c'; else $(CYGPATH_W) '$(srcdir)/efiemu/pnvram.c'; fi` - -efiemu/i386/efiemu_module-coredetect.o: efiemu/i386/coredetect.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(efiemu_module_CPPFLAGS) $(CPPFLAGS) $(efiemu_module_CFLAGS) $(CFLAGS) -MT efiemu/i386/efiemu_module-coredetect.o -MD -MP -MF efiemu/i386/$(DEPDIR)/efiemu_module-coredetect.Tpo -c -o efiemu/i386/efiemu_module-coredetect.o `test -f 'efiemu/i386/coredetect.c' || echo '$(srcdir)/'`efiemu/i386/coredetect.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) efiemu/i386/$(DEPDIR)/efiemu_module-coredetect.Tpo efiemu/i386/$(DEPDIR)/efiemu_module-coredetect.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='efiemu/i386/coredetect.c' object='efiemu/i386/efiemu_module-coredetect.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(efiemu_module_CPPFLAGS) $(CPPFLAGS) $(efiemu_module_CFLAGS) $(CFLAGS) -c -o efiemu/i386/efiemu_module-coredetect.o `test -f 'efiemu/i386/coredetect.c' || echo '$(srcdir)/'`efiemu/i386/coredetect.c - -efiemu/i386/efiemu_module-coredetect.obj: efiemu/i386/coredetect.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(efiemu_module_CPPFLAGS) $(CPPFLAGS) $(efiemu_module_CFLAGS) $(CFLAGS) -MT efiemu/i386/efiemu_module-coredetect.obj -MD -MP -MF efiemu/i386/$(DEPDIR)/efiemu_module-coredetect.Tpo -c -o efiemu/i386/efiemu_module-coredetect.obj `if test -f 'efiemu/i386/coredetect.c'; then $(CYGPATH_W) 'efiemu/i386/coredetect.c'; else $(CYGPATH_W) '$(srcdir)/efiemu/i386/coredetect.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) efiemu/i386/$(DEPDIR)/efiemu_module-coredetect.Tpo efiemu/i386/$(DEPDIR)/efiemu_module-coredetect.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='efiemu/i386/coredetect.c' object='efiemu/i386/efiemu_module-coredetect.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(efiemu_module_CPPFLAGS) $(CPPFLAGS) $(efiemu_module_CFLAGS) $(CFLAGS) -c -o efiemu/i386/efiemu_module-coredetect.obj `if test -f 'efiemu/i386/coredetect.c'; then $(CYGPATH_W) 'efiemu/i386/coredetect.c'; else $(CYGPATH_W) '$(srcdir)/efiemu/i386/coredetect.c'; fi` - -efiemu/i386/efiemu_module-nocfgtables.o: efiemu/i386/nocfgtables.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(efiemu_module_CPPFLAGS) $(CPPFLAGS) $(efiemu_module_CFLAGS) $(CFLAGS) -MT efiemu/i386/efiemu_module-nocfgtables.o -MD -MP -MF efiemu/i386/$(DEPDIR)/efiemu_module-nocfgtables.Tpo -c -o efiemu/i386/efiemu_module-nocfgtables.o `test -f 'efiemu/i386/nocfgtables.c' || echo '$(srcdir)/'`efiemu/i386/nocfgtables.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) efiemu/i386/$(DEPDIR)/efiemu_module-nocfgtables.Tpo efiemu/i386/$(DEPDIR)/efiemu_module-nocfgtables.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='efiemu/i386/nocfgtables.c' object='efiemu/i386/efiemu_module-nocfgtables.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(efiemu_module_CPPFLAGS) $(CPPFLAGS) $(efiemu_module_CFLAGS) $(CFLAGS) -c -o efiemu/i386/efiemu_module-nocfgtables.o `test -f 'efiemu/i386/nocfgtables.c' || echo '$(srcdir)/'`efiemu/i386/nocfgtables.c - -efiemu/i386/efiemu_module-nocfgtables.obj: efiemu/i386/nocfgtables.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(efiemu_module_CPPFLAGS) $(CPPFLAGS) $(efiemu_module_CFLAGS) $(CFLAGS) -MT efiemu/i386/efiemu_module-nocfgtables.obj -MD -MP -MF efiemu/i386/$(DEPDIR)/efiemu_module-nocfgtables.Tpo -c -o efiemu/i386/efiemu_module-nocfgtables.obj `if test -f 'efiemu/i386/nocfgtables.c'; then $(CYGPATH_W) 'efiemu/i386/nocfgtables.c'; else $(CYGPATH_W) '$(srcdir)/efiemu/i386/nocfgtables.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) efiemu/i386/$(DEPDIR)/efiemu_module-nocfgtables.Tpo efiemu/i386/$(DEPDIR)/efiemu_module-nocfgtables.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='efiemu/i386/nocfgtables.c' object='efiemu/i386/efiemu_module-nocfgtables.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(efiemu_module_CPPFLAGS) $(CPPFLAGS) $(efiemu_module_CFLAGS) $(CFLAGS) -c -o efiemu/i386/efiemu_module-nocfgtables.obj `if test -f 'efiemu/i386/nocfgtables.c'; then $(CYGPATH_W) 'efiemu/i386/nocfgtables.c'; else $(CYGPATH_W) '$(srcdir)/efiemu/i386/nocfgtables.c'; fi` - -commands/efi/efifwsetup_module-efifwsetup.o: commands/efi/efifwsetup.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(efifwsetup_module_CPPFLAGS) $(CPPFLAGS) $(efifwsetup_module_CFLAGS) $(CFLAGS) -MT commands/efi/efifwsetup_module-efifwsetup.o -MD -MP -MF commands/efi/$(DEPDIR)/efifwsetup_module-efifwsetup.Tpo -c -o commands/efi/efifwsetup_module-efifwsetup.o `test -f 'commands/efi/efifwsetup.c' || echo '$(srcdir)/'`commands/efi/efifwsetup.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/efi/$(DEPDIR)/efifwsetup_module-efifwsetup.Tpo commands/efi/$(DEPDIR)/efifwsetup_module-efifwsetup.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/efi/efifwsetup.c' object='commands/efi/efifwsetup_module-efifwsetup.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(efifwsetup_module_CPPFLAGS) $(CPPFLAGS) $(efifwsetup_module_CFLAGS) $(CFLAGS) -c -o commands/efi/efifwsetup_module-efifwsetup.o `test -f 'commands/efi/efifwsetup.c' || echo '$(srcdir)/'`commands/efi/efifwsetup.c - -commands/efi/efifwsetup_module-efifwsetup.obj: commands/efi/efifwsetup.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(efifwsetup_module_CPPFLAGS) $(CPPFLAGS) $(efifwsetup_module_CFLAGS) $(CFLAGS) -MT commands/efi/efifwsetup_module-efifwsetup.obj -MD -MP -MF commands/efi/$(DEPDIR)/efifwsetup_module-efifwsetup.Tpo -c -o commands/efi/efifwsetup_module-efifwsetup.obj `if test -f 'commands/efi/efifwsetup.c'; then $(CYGPATH_W) 'commands/efi/efifwsetup.c'; else $(CYGPATH_W) '$(srcdir)/commands/efi/efifwsetup.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/efi/$(DEPDIR)/efifwsetup_module-efifwsetup.Tpo commands/efi/$(DEPDIR)/efifwsetup_module-efifwsetup.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/efi/efifwsetup.c' object='commands/efi/efifwsetup_module-efifwsetup.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(efifwsetup_module_CPPFLAGS) $(CPPFLAGS) $(efifwsetup_module_CFLAGS) $(CFLAGS) -c -o commands/efi/efifwsetup_module-efifwsetup.obj `if test -f 'commands/efi/efifwsetup.c'; then $(CYGPATH_W) 'commands/efi/efifwsetup.c'; else $(CYGPATH_W) '$(srcdir)/commands/efi/efifwsetup.c'; fi` - -net/drivers/efi/efinet_module-efinet.o: net/drivers/efi/efinet.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(efinet_module_CPPFLAGS) $(CPPFLAGS) $(efinet_module_CFLAGS) $(CFLAGS) -MT net/drivers/efi/efinet_module-efinet.o -MD -MP -MF net/drivers/efi/$(DEPDIR)/efinet_module-efinet.Tpo -c -o net/drivers/efi/efinet_module-efinet.o `test -f 'net/drivers/efi/efinet.c' || echo '$(srcdir)/'`net/drivers/efi/efinet.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) net/drivers/efi/$(DEPDIR)/efinet_module-efinet.Tpo net/drivers/efi/$(DEPDIR)/efinet_module-efinet.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='net/drivers/efi/efinet.c' object='net/drivers/efi/efinet_module-efinet.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(efinet_module_CPPFLAGS) $(CPPFLAGS) $(efinet_module_CFLAGS) $(CFLAGS) -c -o net/drivers/efi/efinet_module-efinet.o `test -f 'net/drivers/efi/efinet.c' || echo '$(srcdir)/'`net/drivers/efi/efinet.c - -net/drivers/efi/efinet_module-efinet.obj: net/drivers/efi/efinet.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(efinet_module_CPPFLAGS) $(CPPFLAGS) $(efinet_module_CFLAGS) $(CFLAGS) -MT net/drivers/efi/efinet_module-efinet.obj -MD -MP -MF net/drivers/efi/$(DEPDIR)/efinet_module-efinet.Tpo -c -o net/drivers/efi/efinet_module-efinet.obj `if test -f 'net/drivers/efi/efinet.c'; then $(CYGPATH_W) 'net/drivers/efi/efinet.c'; else $(CYGPATH_W) '$(srcdir)/net/drivers/efi/efinet.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) net/drivers/efi/$(DEPDIR)/efinet_module-efinet.Tpo net/drivers/efi/$(DEPDIR)/efinet_module-efinet.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='net/drivers/efi/efinet.c' object='net/drivers/efi/efinet_module-efinet.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(efinet_module_CPPFLAGS) $(CPPFLAGS) $(efinet_module_CFLAGS) $(CFLAGS) -c -o net/drivers/efi/efinet_module-efinet.obj `if test -f 'net/drivers/efi/efinet.c'; then $(CYGPATH_W) 'net/drivers/efi/efinet.c'; else $(CYGPATH_W) '$(srcdir)/net/drivers/efi/efinet.c'; fi` - -bus/usb/ehci_module-ehci-fdt.o: bus/usb/ehci-fdt.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ehci_module_CPPFLAGS) $(CPPFLAGS) $(ehci_module_CFLAGS) $(CFLAGS) -MT bus/usb/ehci_module-ehci-fdt.o -MD -MP -MF bus/usb/$(DEPDIR)/ehci_module-ehci-fdt.Tpo -c -o bus/usb/ehci_module-ehci-fdt.o `test -f 'bus/usb/ehci-fdt.c' || echo '$(srcdir)/'`bus/usb/ehci-fdt.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) bus/usb/$(DEPDIR)/ehci_module-ehci-fdt.Tpo bus/usb/$(DEPDIR)/ehci_module-ehci-fdt.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='bus/usb/ehci-fdt.c' object='bus/usb/ehci_module-ehci-fdt.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ehci_module_CPPFLAGS) $(CPPFLAGS) $(ehci_module_CFLAGS) $(CFLAGS) -c -o bus/usb/ehci_module-ehci-fdt.o `test -f 'bus/usb/ehci-fdt.c' || echo '$(srcdir)/'`bus/usb/ehci-fdt.c - -bus/usb/ehci_module-ehci-fdt.obj: bus/usb/ehci-fdt.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ehci_module_CPPFLAGS) $(CPPFLAGS) $(ehci_module_CFLAGS) $(CFLAGS) -MT bus/usb/ehci_module-ehci-fdt.obj -MD -MP -MF bus/usb/$(DEPDIR)/ehci_module-ehci-fdt.Tpo -c -o bus/usb/ehci_module-ehci-fdt.obj `if test -f 'bus/usb/ehci-fdt.c'; then $(CYGPATH_W) 'bus/usb/ehci-fdt.c'; else $(CYGPATH_W) '$(srcdir)/bus/usb/ehci-fdt.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) bus/usb/$(DEPDIR)/ehci_module-ehci-fdt.Tpo bus/usb/$(DEPDIR)/ehci_module-ehci-fdt.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='bus/usb/ehci-fdt.c' object='bus/usb/ehci_module-ehci-fdt.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ehci_module_CPPFLAGS) $(CPPFLAGS) $(ehci_module_CFLAGS) $(CFLAGS) -c -o bus/usb/ehci_module-ehci-fdt.obj `if test -f 'bus/usb/ehci-fdt.c'; then $(CYGPATH_W) 'bus/usb/ehci-fdt.c'; else $(CYGPATH_W) '$(srcdir)/bus/usb/ehci-fdt.c'; fi` - -bus/usb/ehci_module-ehci.o: bus/usb/ehci.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ehci_module_CPPFLAGS) $(CPPFLAGS) $(ehci_module_CFLAGS) $(CFLAGS) -MT bus/usb/ehci_module-ehci.o -MD -MP -MF bus/usb/$(DEPDIR)/ehci_module-ehci.Tpo -c -o bus/usb/ehci_module-ehci.o `test -f 'bus/usb/ehci.c' || echo '$(srcdir)/'`bus/usb/ehci.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) bus/usb/$(DEPDIR)/ehci_module-ehci.Tpo bus/usb/$(DEPDIR)/ehci_module-ehci.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='bus/usb/ehci.c' object='bus/usb/ehci_module-ehci.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ehci_module_CPPFLAGS) $(CPPFLAGS) $(ehci_module_CFLAGS) $(CFLAGS) -c -o bus/usb/ehci_module-ehci.o `test -f 'bus/usb/ehci.c' || echo '$(srcdir)/'`bus/usb/ehci.c - -bus/usb/ehci_module-ehci.obj: bus/usb/ehci.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ehci_module_CPPFLAGS) $(CPPFLAGS) $(ehci_module_CFLAGS) $(CFLAGS) -MT bus/usb/ehci_module-ehci.obj -MD -MP -MF bus/usb/$(DEPDIR)/ehci_module-ehci.Tpo -c -o bus/usb/ehci_module-ehci.obj `if test -f 'bus/usb/ehci.c'; then $(CYGPATH_W) 'bus/usb/ehci.c'; else $(CYGPATH_W) '$(srcdir)/bus/usb/ehci.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) bus/usb/$(DEPDIR)/ehci_module-ehci.Tpo bus/usb/$(DEPDIR)/ehci_module-ehci.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='bus/usb/ehci.c' object='bus/usb/ehci_module-ehci.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ehci_module_CPPFLAGS) $(CPPFLAGS) $(ehci_module_CFLAGS) $(CFLAGS) -c -o bus/usb/ehci_module-ehci.obj `if test -f 'bus/usb/ehci.c'; then $(CYGPATH_W) 'bus/usb/ehci.c'; else $(CYGPATH_W) '$(srcdir)/bus/usb/ehci.c'; fi` - -bus/usb/ehci_module-ehci-pci.o: bus/usb/ehci-pci.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ehci_module_CPPFLAGS) $(CPPFLAGS) $(ehci_module_CFLAGS) $(CFLAGS) -MT bus/usb/ehci_module-ehci-pci.o -MD -MP -MF bus/usb/$(DEPDIR)/ehci_module-ehci-pci.Tpo -c -o bus/usb/ehci_module-ehci-pci.o `test -f 'bus/usb/ehci-pci.c' || echo '$(srcdir)/'`bus/usb/ehci-pci.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) bus/usb/$(DEPDIR)/ehci_module-ehci-pci.Tpo bus/usb/$(DEPDIR)/ehci_module-ehci-pci.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='bus/usb/ehci-pci.c' object='bus/usb/ehci_module-ehci-pci.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ehci_module_CPPFLAGS) $(CPPFLAGS) $(ehci_module_CFLAGS) $(CFLAGS) -c -o bus/usb/ehci_module-ehci-pci.o `test -f 'bus/usb/ehci-pci.c' || echo '$(srcdir)/'`bus/usb/ehci-pci.c - -bus/usb/ehci_module-ehci-pci.obj: bus/usb/ehci-pci.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ehci_module_CPPFLAGS) $(CPPFLAGS) $(ehci_module_CFLAGS) $(CFLAGS) -MT bus/usb/ehci_module-ehci-pci.obj -MD -MP -MF bus/usb/$(DEPDIR)/ehci_module-ehci-pci.Tpo -c -o bus/usb/ehci_module-ehci-pci.obj `if test -f 'bus/usb/ehci-pci.c'; then $(CYGPATH_W) 'bus/usb/ehci-pci.c'; else $(CYGPATH_W) '$(srcdir)/bus/usb/ehci-pci.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) bus/usb/$(DEPDIR)/ehci_module-ehci-pci.Tpo bus/usb/$(DEPDIR)/ehci_module-ehci-pci.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='bus/usb/ehci-pci.c' object='bus/usb/ehci_module-ehci-pci.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ehci_module_CPPFLAGS) $(CPPFLAGS) $(ehci_module_CFLAGS) $(CFLAGS) -c -o bus/usb/ehci_module-ehci-pci.obj `if test -f 'bus/usb/ehci-pci.c'; then $(CYGPATH_W) 'bus/usb/ehci-pci.c'; else $(CYGPATH_W) '$(srcdir)/bus/usb/ehci-pci.c'; fi` - -kern/elf_module-elf.o: kern/elf.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(elf_module_CPPFLAGS) $(CPPFLAGS) $(elf_module_CFLAGS) $(CFLAGS) -MT kern/elf_module-elf.o -MD -MP -MF kern/$(DEPDIR)/elf_module-elf.Tpo -c -o kern/elf_module-elf.o `test -f 'kern/elf.c' || echo '$(srcdir)/'`kern/elf.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/$(DEPDIR)/elf_module-elf.Tpo kern/$(DEPDIR)/elf_module-elf.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/elf.c' object='kern/elf_module-elf.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(elf_module_CPPFLAGS) $(CPPFLAGS) $(elf_module_CFLAGS) $(CFLAGS) -c -o kern/elf_module-elf.o `test -f 'kern/elf.c' || echo '$(srcdir)/'`kern/elf.c - -kern/elf_module-elf.obj: kern/elf.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(elf_module_CPPFLAGS) $(CPPFLAGS) $(elf_module_CFLAGS) $(CFLAGS) -MT kern/elf_module-elf.obj -MD -MP -MF kern/$(DEPDIR)/elf_module-elf.Tpo -c -o kern/elf_module-elf.obj `if test -f 'kern/elf.c'; then $(CYGPATH_W) 'kern/elf.c'; else $(CYGPATH_W) '$(srcdir)/kern/elf.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/$(DEPDIR)/elf_module-elf.Tpo kern/$(DEPDIR)/elf_module-elf.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/elf.c' object='kern/elf_module-elf.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(elf_module_CPPFLAGS) $(CPPFLAGS) $(elf_module_CFLAGS) $(CFLAGS) -c -o kern/elf_module-elf.obj `if test -f 'kern/elf.c'; then $(CYGPATH_W) 'kern/elf.c'; else $(CYGPATH_W) '$(srcdir)/kern/elf.c'; fi` - -net/drivers/emu/emunet_module-emunet.o: net/drivers/emu/emunet.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(emunet_module_CPPFLAGS) $(CPPFLAGS) $(emunet_module_CFLAGS) $(CFLAGS) -MT net/drivers/emu/emunet_module-emunet.o -MD -MP -MF net/drivers/emu/$(DEPDIR)/emunet_module-emunet.Tpo -c -o net/drivers/emu/emunet_module-emunet.o `test -f 'net/drivers/emu/emunet.c' || echo '$(srcdir)/'`net/drivers/emu/emunet.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) net/drivers/emu/$(DEPDIR)/emunet_module-emunet.Tpo net/drivers/emu/$(DEPDIR)/emunet_module-emunet.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='net/drivers/emu/emunet.c' object='net/drivers/emu/emunet_module-emunet.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(emunet_module_CPPFLAGS) $(CPPFLAGS) $(emunet_module_CFLAGS) $(CFLAGS) -c -o net/drivers/emu/emunet_module-emunet.o `test -f 'net/drivers/emu/emunet.c' || echo '$(srcdir)/'`net/drivers/emu/emunet.c - -net/drivers/emu/emunet_module-emunet.obj: net/drivers/emu/emunet.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(emunet_module_CPPFLAGS) $(CPPFLAGS) $(emunet_module_CFLAGS) $(CFLAGS) -MT net/drivers/emu/emunet_module-emunet.obj -MD -MP -MF net/drivers/emu/$(DEPDIR)/emunet_module-emunet.Tpo -c -o net/drivers/emu/emunet_module-emunet.obj `if test -f 'net/drivers/emu/emunet.c'; then $(CYGPATH_W) 'net/drivers/emu/emunet.c'; else $(CYGPATH_W) '$(srcdir)/net/drivers/emu/emunet.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) net/drivers/emu/$(DEPDIR)/emunet_module-emunet.Tpo net/drivers/emu/$(DEPDIR)/emunet_module-emunet.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='net/drivers/emu/emunet.c' object='net/drivers/emu/emunet_module-emunet.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(emunet_module_CPPFLAGS) $(CPPFLAGS) $(emunet_module_CFLAGS) $(CFLAGS) -c -o net/drivers/emu/emunet_module-emunet.obj `if test -f 'net/drivers/emu/emunet.c'; then $(CYGPATH_W) 'net/drivers/emu/emunet.c'; else $(CYGPATH_W) '$(srcdir)/net/drivers/emu/emunet.c'; fi` - -bus/emu/emupci_module-pci.o: bus/emu/pci.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(emupci_module_CPPFLAGS) $(CPPFLAGS) $(emupci_module_CFLAGS) $(CFLAGS) -MT bus/emu/emupci_module-pci.o -MD -MP -MF bus/emu/$(DEPDIR)/emupci_module-pci.Tpo -c -o bus/emu/emupci_module-pci.o `test -f 'bus/emu/pci.c' || echo '$(srcdir)/'`bus/emu/pci.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) bus/emu/$(DEPDIR)/emupci_module-pci.Tpo bus/emu/$(DEPDIR)/emupci_module-pci.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='bus/emu/pci.c' object='bus/emu/emupci_module-pci.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(emupci_module_CPPFLAGS) $(CPPFLAGS) $(emupci_module_CFLAGS) $(CFLAGS) -c -o bus/emu/emupci_module-pci.o `test -f 'bus/emu/pci.c' || echo '$(srcdir)/'`bus/emu/pci.c - -bus/emu/emupci_module-pci.obj: bus/emu/pci.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(emupci_module_CPPFLAGS) $(CPPFLAGS) $(emupci_module_CFLAGS) $(CFLAGS) -MT bus/emu/emupci_module-pci.obj -MD -MP -MF bus/emu/$(DEPDIR)/emupci_module-pci.Tpo -c -o bus/emu/emupci_module-pci.obj `if test -f 'bus/emu/pci.c'; then $(CYGPATH_W) 'bus/emu/pci.c'; else $(CYGPATH_W) '$(srcdir)/bus/emu/pci.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) bus/emu/$(DEPDIR)/emupci_module-pci.Tpo bus/emu/$(DEPDIR)/emupci_module-pci.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='bus/emu/pci.c' object='bus/emu/emupci_module-pci.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(emupci_module_CPPFLAGS) $(CPPFLAGS) $(emupci_module_CFLAGS) $(CFLAGS) -c -o bus/emu/emupci_module-pci.obj `if test -f 'bus/emu/pci.c'; then $(CYGPATH_W) 'bus/emu/pci.c'; else $(CYGPATH_W) '$(srcdir)/bus/emu/pci.c'; fi` - -commands/emupci_module-lspci.o: commands/lspci.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(emupci_module_CPPFLAGS) $(CPPFLAGS) $(emupci_module_CFLAGS) $(CFLAGS) -MT commands/emupci_module-lspci.o -MD -MP -MF commands/$(DEPDIR)/emupci_module-lspci.Tpo -c -o commands/emupci_module-lspci.o `test -f 'commands/lspci.c' || echo '$(srcdir)/'`commands/lspci.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/$(DEPDIR)/emupci_module-lspci.Tpo commands/$(DEPDIR)/emupci_module-lspci.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/lspci.c' object='commands/emupci_module-lspci.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(emupci_module_CPPFLAGS) $(CPPFLAGS) $(emupci_module_CFLAGS) $(CFLAGS) -c -o commands/emupci_module-lspci.o `test -f 'commands/lspci.c' || echo '$(srcdir)/'`commands/lspci.c - -commands/emupci_module-lspci.obj: commands/lspci.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(emupci_module_CPPFLAGS) $(CPPFLAGS) $(emupci_module_CFLAGS) $(CFLAGS) -MT commands/emupci_module-lspci.obj -MD -MP -MF commands/$(DEPDIR)/emupci_module-lspci.Tpo -c -o commands/emupci_module-lspci.obj `if test -f 'commands/lspci.c'; then $(CYGPATH_W) 'commands/lspci.c'; else $(CYGPATH_W) '$(srcdir)/commands/lspci.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/$(DEPDIR)/emupci_module-lspci.Tpo commands/$(DEPDIR)/emupci_module-lspci.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/lspci.c' object='commands/emupci_module-lspci.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(emupci_module_CPPFLAGS) $(CPPFLAGS) $(emupci_module_CFLAGS) $(CFLAGS) -c -o commands/emupci_module-lspci.obj `if test -f 'commands/lspci.c'; then $(CYGPATH_W) 'commands/lspci.c'; else $(CYGPATH_W) '$(srcdir)/commands/lspci.c'; fi` - -term/ieee1275/escc_module-escc.o: term/ieee1275/escc.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(escc_module_CPPFLAGS) $(CPPFLAGS) $(escc_module_CFLAGS) $(CFLAGS) -MT term/ieee1275/escc_module-escc.o -MD -MP -MF term/ieee1275/$(DEPDIR)/escc_module-escc.Tpo -c -o term/ieee1275/escc_module-escc.o `test -f 'term/ieee1275/escc.c' || echo '$(srcdir)/'`term/ieee1275/escc.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) term/ieee1275/$(DEPDIR)/escc_module-escc.Tpo term/ieee1275/$(DEPDIR)/escc_module-escc.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='term/ieee1275/escc.c' object='term/ieee1275/escc_module-escc.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(escc_module_CPPFLAGS) $(CPPFLAGS) $(escc_module_CFLAGS) $(CFLAGS) -c -o term/ieee1275/escc_module-escc.o `test -f 'term/ieee1275/escc.c' || echo '$(srcdir)/'`term/ieee1275/escc.c - -term/ieee1275/escc_module-escc.obj: term/ieee1275/escc.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(escc_module_CPPFLAGS) $(CPPFLAGS) $(escc_module_CFLAGS) $(CFLAGS) -MT term/ieee1275/escc_module-escc.obj -MD -MP -MF term/ieee1275/$(DEPDIR)/escc_module-escc.Tpo -c -o term/ieee1275/escc_module-escc.obj `if test -f 'term/ieee1275/escc.c'; then $(CYGPATH_W) 'term/ieee1275/escc.c'; else $(CYGPATH_W) '$(srcdir)/term/ieee1275/escc.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) term/ieee1275/$(DEPDIR)/escc_module-escc.Tpo term/ieee1275/$(DEPDIR)/escc_module-escc.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='term/ieee1275/escc.c' object='term/ieee1275/escc_module-escc.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(escc_module_CPPFLAGS) $(CPPFLAGS) $(escc_module_CFLAGS) $(CFLAGS) -c -o term/ieee1275/escc_module-escc.obj `if test -f 'term/ieee1275/escc.c'; then $(CYGPATH_W) 'term/ieee1275/escc.c'; else $(CYGPATH_W) '$(srcdir)/term/ieee1275/escc.c'; fi` - -commands/eval_module-eval.o: commands/eval.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(eval_module_CPPFLAGS) $(CPPFLAGS) $(eval_module_CFLAGS) $(CFLAGS) -MT commands/eval_module-eval.o -MD -MP -MF commands/$(DEPDIR)/eval_module-eval.Tpo -c -o commands/eval_module-eval.o `test -f 'commands/eval.c' || echo '$(srcdir)/'`commands/eval.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/$(DEPDIR)/eval_module-eval.Tpo commands/$(DEPDIR)/eval_module-eval.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/eval.c' object='commands/eval_module-eval.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(eval_module_CPPFLAGS) $(CPPFLAGS) $(eval_module_CFLAGS) $(CFLAGS) -c -o commands/eval_module-eval.o `test -f 'commands/eval.c' || echo '$(srcdir)/'`commands/eval.c - -commands/eval_module-eval.obj: commands/eval.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(eval_module_CPPFLAGS) $(CPPFLAGS) $(eval_module_CFLAGS) $(CFLAGS) -MT commands/eval_module-eval.obj -MD -MP -MF commands/$(DEPDIR)/eval_module-eval.Tpo -c -o commands/eval_module-eval.obj `if test -f 'commands/eval.c'; then $(CYGPATH_W) 'commands/eval.c'; else $(CYGPATH_W) '$(srcdir)/commands/eval.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/$(DEPDIR)/eval_module-eval.Tpo commands/$(DEPDIR)/eval_module-eval.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/eval.c' object='commands/eval_module-eval.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(eval_module_CPPFLAGS) $(CPPFLAGS) $(eval_module_CFLAGS) $(CFLAGS) -c -o commands/eval_module-eval.obj `if test -f 'commands/eval.c'; then $(CYGPATH_W) 'commands/eval.c'; else $(CYGPATH_W) '$(srcdir)/commands/eval.c'; fi` - -fs/exfat_module-exfat.o: fs/exfat.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(exfat_module_CPPFLAGS) $(CPPFLAGS) $(exfat_module_CFLAGS) $(CFLAGS) -MT fs/exfat_module-exfat.o -MD -MP -MF fs/$(DEPDIR)/exfat_module-exfat.Tpo -c -o fs/exfat_module-exfat.o `test -f 'fs/exfat.c' || echo '$(srcdir)/'`fs/exfat.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) fs/$(DEPDIR)/exfat_module-exfat.Tpo fs/$(DEPDIR)/exfat_module-exfat.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='fs/exfat.c' object='fs/exfat_module-exfat.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(exfat_module_CPPFLAGS) $(CPPFLAGS) $(exfat_module_CFLAGS) $(CFLAGS) -c -o fs/exfat_module-exfat.o `test -f 'fs/exfat.c' || echo '$(srcdir)/'`fs/exfat.c - -fs/exfat_module-exfat.obj: fs/exfat.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(exfat_module_CPPFLAGS) $(CPPFLAGS) $(exfat_module_CFLAGS) $(CFLAGS) -MT fs/exfat_module-exfat.obj -MD -MP -MF fs/$(DEPDIR)/exfat_module-exfat.Tpo -c -o fs/exfat_module-exfat.obj `if test -f 'fs/exfat.c'; then $(CYGPATH_W) 'fs/exfat.c'; else $(CYGPATH_W) '$(srcdir)/fs/exfat.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) fs/$(DEPDIR)/exfat_module-exfat.Tpo fs/$(DEPDIR)/exfat_module-exfat.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='fs/exfat.c' object='fs/exfat_module-exfat.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(exfat_module_CPPFLAGS) $(CPPFLAGS) $(exfat_module_CFLAGS) $(CFLAGS) -c -o fs/exfat_module-exfat.obj `if test -f 'fs/exfat.c'; then $(CYGPATH_W) 'fs/exfat.c'; else $(CYGPATH_W) '$(srcdir)/fs/exfat.c'; fi` - -tests/exfctest_module-example_functional_test.o: tests/example_functional_test.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(exfctest_module_CPPFLAGS) $(CPPFLAGS) $(exfctest_module_CFLAGS) $(CFLAGS) -MT tests/exfctest_module-example_functional_test.o -MD -MP -MF tests/$(DEPDIR)/exfctest_module-example_functional_test.Tpo -c -o tests/exfctest_module-example_functional_test.o `test -f 'tests/example_functional_test.c' || echo '$(srcdir)/'`tests/example_functional_test.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) tests/$(DEPDIR)/exfctest_module-example_functional_test.Tpo tests/$(DEPDIR)/exfctest_module-example_functional_test.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='tests/example_functional_test.c' object='tests/exfctest_module-example_functional_test.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(exfctest_module_CPPFLAGS) $(CPPFLAGS) $(exfctest_module_CFLAGS) $(CFLAGS) -c -o tests/exfctest_module-example_functional_test.o `test -f 'tests/example_functional_test.c' || echo '$(srcdir)/'`tests/example_functional_test.c - -tests/exfctest_module-example_functional_test.obj: tests/example_functional_test.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(exfctest_module_CPPFLAGS) $(CPPFLAGS) $(exfctest_module_CFLAGS) $(CFLAGS) -MT tests/exfctest_module-example_functional_test.obj -MD -MP -MF tests/$(DEPDIR)/exfctest_module-example_functional_test.Tpo -c -o tests/exfctest_module-example_functional_test.obj `if test -f 'tests/example_functional_test.c'; then $(CYGPATH_W) 'tests/example_functional_test.c'; else $(CYGPATH_W) '$(srcdir)/tests/example_functional_test.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) tests/$(DEPDIR)/exfctest_module-example_functional_test.Tpo tests/$(DEPDIR)/exfctest_module-example_functional_test.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='tests/example_functional_test.c' object='tests/exfctest_module-example_functional_test.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(exfctest_module_CPPFLAGS) $(CPPFLAGS) $(exfctest_module_CFLAGS) $(CFLAGS) -c -o tests/exfctest_module-example_functional_test.obj `if test -f 'tests/example_functional_test.c'; then $(CYGPATH_W) 'tests/example_functional_test.c'; else $(CYGPATH_W) '$(srcdir)/tests/example_functional_test.c'; fi` - -fs/ext2_module-ext2.o: fs/ext2.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ext2_module_CPPFLAGS) $(CPPFLAGS) $(ext2_module_CFLAGS) $(CFLAGS) -MT fs/ext2_module-ext2.o -MD -MP -MF fs/$(DEPDIR)/ext2_module-ext2.Tpo -c -o fs/ext2_module-ext2.o `test -f 'fs/ext2.c' || echo '$(srcdir)/'`fs/ext2.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) fs/$(DEPDIR)/ext2_module-ext2.Tpo fs/$(DEPDIR)/ext2_module-ext2.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='fs/ext2.c' object='fs/ext2_module-ext2.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ext2_module_CPPFLAGS) $(CPPFLAGS) $(ext2_module_CFLAGS) $(CFLAGS) -c -o fs/ext2_module-ext2.o `test -f 'fs/ext2.c' || echo '$(srcdir)/'`fs/ext2.c - -fs/ext2_module-ext2.obj: fs/ext2.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ext2_module_CPPFLAGS) $(CPPFLAGS) $(ext2_module_CFLAGS) $(CFLAGS) -MT fs/ext2_module-ext2.obj -MD -MP -MF fs/$(DEPDIR)/ext2_module-ext2.Tpo -c -o fs/ext2_module-ext2.obj `if test -f 'fs/ext2.c'; then $(CYGPATH_W) 'fs/ext2.c'; else $(CYGPATH_W) '$(srcdir)/fs/ext2.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) fs/$(DEPDIR)/ext2_module-ext2.Tpo fs/$(DEPDIR)/ext2_module-ext2.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='fs/ext2.c' object='fs/ext2_module-ext2.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ext2_module_CPPFLAGS) $(CPPFLAGS) $(ext2_module_CFLAGS) $(CFLAGS) -c -o fs/ext2_module-ext2.obj `if test -f 'fs/ext2.c'; then $(CYGPATH_W) 'fs/ext2.c'; else $(CYGPATH_W) '$(srcdir)/fs/ext2.c'; fi` - -commands/extcmd_module-extcmd.o: commands/extcmd.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(extcmd_module_CPPFLAGS) $(CPPFLAGS) $(extcmd_module_CFLAGS) $(CFLAGS) -MT commands/extcmd_module-extcmd.o -MD -MP -MF commands/$(DEPDIR)/extcmd_module-extcmd.Tpo -c -o commands/extcmd_module-extcmd.o `test -f 'commands/extcmd.c' || echo '$(srcdir)/'`commands/extcmd.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/$(DEPDIR)/extcmd_module-extcmd.Tpo commands/$(DEPDIR)/extcmd_module-extcmd.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/extcmd.c' object='commands/extcmd_module-extcmd.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(extcmd_module_CPPFLAGS) $(CPPFLAGS) $(extcmd_module_CFLAGS) $(CFLAGS) -c -o commands/extcmd_module-extcmd.o `test -f 'commands/extcmd.c' || echo '$(srcdir)/'`commands/extcmd.c - -commands/extcmd_module-extcmd.obj: commands/extcmd.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(extcmd_module_CPPFLAGS) $(CPPFLAGS) $(extcmd_module_CFLAGS) $(CFLAGS) -MT commands/extcmd_module-extcmd.obj -MD -MP -MF commands/$(DEPDIR)/extcmd_module-extcmd.Tpo -c -o commands/extcmd_module-extcmd.obj `if test -f 'commands/extcmd.c'; then $(CYGPATH_W) 'commands/extcmd.c'; else $(CYGPATH_W) '$(srcdir)/commands/extcmd.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/$(DEPDIR)/extcmd_module-extcmd.Tpo commands/$(DEPDIR)/extcmd_module-extcmd.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/extcmd.c' object='commands/extcmd_module-extcmd.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(extcmd_module_CPPFLAGS) $(CPPFLAGS) $(extcmd_module_CFLAGS) $(CFLAGS) -c -o commands/extcmd_module-extcmd.obj `if test -f 'commands/extcmd.c'; then $(CYGPATH_W) 'commands/extcmd.c'; else $(CYGPATH_W) '$(srcdir)/commands/extcmd.c'; fi` - -lib/extcmd_module-arg.o: lib/arg.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(extcmd_module_CPPFLAGS) $(CPPFLAGS) $(extcmd_module_CFLAGS) $(CFLAGS) -MT lib/extcmd_module-arg.o -MD -MP -MF lib/$(DEPDIR)/extcmd_module-arg.Tpo -c -o lib/extcmd_module-arg.o `test -f 'lib/arg.c' || echo '$(srcdir)/'`lib/arg.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/$(DEPDIR)/extcmd_module-arg.Tpo lib/$(DEPDIR)/extcmd_module-arg.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/arg.c' object='lib/extcmd_module-arg.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(extcmd_module_CPPFLAGS) $(CPPFLAGS) $(extcmd_module_CFLAGS) $(CFLAGS) -c -o lib/extcmd_module-arg.o `test -f 'lib/arg.c' || echo '$(srcdir)/'`lib/arg.c - -lib/extcmd_module-arg.obj: lib/arg.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(extcmd_module_CPPFLAGS) $(CPPFLAGS) $(extcmd_module_CFLAGS) $(CFLAGS) -MT lib/extcmd_module-arg.obj -MD -MP -MF lib/$(DEPDIR)/extcmd_module-arg.Tpo -c -o lib/extcmd_module-arg.obj `if test -f 'lib/arg.c'; then $(CYGPATH_W) 'lib/arg.c'; else $(CYGPATH_W) '$(srcdir)/lib/arg.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/$(DEPDIR)/extcmd_module-arg.Tpo lib/$(DEPDIR)/extcmd_module-arg.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/arg.c' object='lib/extcmd_module-arg.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(extcmd_module_CPPFLAGS) $(CPPFLAGS) $(extcmd_module_CFLAGS) $(CFLAGS) -c -o lib/extcmd_module-arg.obj `if test -f 'lib/arg.c'; then $(CYGPATH_W) 'lib/arg.c'; else $(CYGPATH_W) '$(srcdir)/lib/arg.c'; fi` - -fs/f2fs_module-f2fs.o: fs/f2fs.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(f2fs_module_CPPFLAGS) $(CPPFLAGS) $(f2fs_module_CFLAGS) $(CFLAGS) -MT fs/f2fs_module-f2fs.o -MD -MP -MF fs/$(DEPDIR)/f2fs_module-f2fs.Tpo -c -o fs/f2fs_module-f2fs.o `test -f 'fs/f2fs.c' || echo '$(srcdir)/'`fs/f2fs.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) fs/$(DEPDIR)/f2fs_module-f2fs.Tpo fs/$(DEPDIR)/f2fs_module-f2fs.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='fs/f2fs.c' object='fs/f2fs_module-f2fs.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(f2fs_module_CPPFLAGS) $(CPPFLAGS) $(f2fs_module_CFLAGS) $(CFLAGS) -c -o fs/f2fs_module-f2fs.o `test -f 'fs/f2fs.c' || echo '$(srcdir)/'`fs/f2fs.c - -fs/f2fs_module-f2fs.obj: fs/f2fs.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(f2fs_module_CPPFLAGS) $(CPPFLAGS) $(f2fs_module_CFLAGS) $(CFLAGS) -MT fs/f2fs_module-f2fs.obj -MD -MP -MF fs/$(DEPDIR)/f2fs_module-f2fs.Tpo -c -o fs/f2fs_module-f2fs.obj `if test -f 'fs/f2fs.c'; then $(CYGPATH_W) 'fs/f2fs.c'; else $(CYGPATH_W) '$(srcdir)/fs/f2fs.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) fs/$(DEPDIR)/f2fs_module-f2fs.Tpo fs/$(DEPDIR)/f2fs_module-f2fs.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='fs/f2fs.c' object='fs/f2fs_module-f2fs.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(f2fs_module_CPPFLAGS) $(CPPFLAGS) $(f2fs_module_CFLAGS) $(CFLAGS) -c -o fs/f2fs_module-f2fs.obj `if test -f 'fs/f2fs.c'; then $(CYGPATH_W) 'fs/f2fs.c'; else $(CYGPATH_W) '$(srcdir)/fs/f2fs.c'; fi` - -fs/fat_module-fat.o: fs/fat.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(fat_module_CPPFLAGS) $(CPPFLAGS) $(fat_module_CFLAGS) $(CFLAGS) -MT fs/fat_module-fat.o -MD -MP -MF fs/$(DEPDIR)/fat_module-fat.Tpo -c -o fs/fat_module-fat.o `test -f 'fs/fat.c' || echo '$(srcdir)/'`fs/fat.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) fs/$(DEPDIR)/fat_module-fat.Tpo fs/$(DEPDIR)/fat_module-fat.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='fs/fat.c' object='fs/fat_module-fat.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(fat_module_CPPFLAGS) $(CPPFLAGS) $(fat_module_CFLAGS) $(CFLAGS) -c -o fs/fat_module-fat.o `test -f 'fs/fat.c' || echo '$(srcdir)/'`fs/fat.c - -fs/fat_module-fat.obj: fs/fat.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(fat_module_CPPFLAGS) $(CPPFLAGS) $(fat_module_CFLAGS) $(CFLAGS) -MT fs/fat_module-fat.obj -MD -MP -MF fs/$(DEPDIR)/fat_module-fat.Tpo -c -o fs/fat_module-fat.obj `if test -f 'fs/fat.c'; then $(CYGPATH_W) 'fs/fat.c'; else $(CYGPATH_W) '$(srcdir)/fs/fat.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) fs/$(DEPDIR)/fat_module-fat.Tpo fs/$(DEPDIR)/fat_module-fat.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='fs/fat.c' object='fs/fat_module-fat.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(fat_module_CPPFLAGS) $(CPPFLAGS) $(fat_module_CFLAGS) $(CFLAGS) -c -o fs/fat_module-fat.obj `if test -f 'fs/fat.c'; then $(CYGPATH_W) 'fs/fat.c'; else $(CYGPATH_W) '$(srcdir)/fs/fat.c'; fi` - -loader/efi/fdt_module-fdt.o: loader/efi/fdt.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(fdt_module_CPPFLAGS) $(CPPFLAGS) $(fdt_module_CFLAGS) $(CFLAGS) -MT loader/efi/fdt_module-fdt.o -MD -MP -MF loader/efi/$(DEPDIR)/fdt_module-fdt.Tpo -c -o loader/efi/fdt_module-fdt.o `test -f 'loader/efi/fdt.c' || echo '$(srcdir)/'`loader/efi/fdt.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) loader/efi/$(DEPDIR)/fdt_module-fdt.Tpo loader/efi/$(DEPDIR)/fdt_module-fdt.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='loader/efi/fdt.c' object='loader/efi/fdt_module-fdt.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(fdt_module_CPPFLAGS) $(CPPFLAGS) $(fdt_module_CFLAGS) $(CFLAGS) -c -o loader/efi/fdt_module-fdt.o `test -f 'loader/efi/fdt.c' || echo '$(srcdir)/'`loader/efi/fdt.c - -loader/efi/fdt_module-fdt.obj: loader/efi/fdt.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(fdt_module_CPPFLAGS) $(CPPFLAGS) $(fdt_module_CFLAGS) $(CFLAGS) -MT loader/efi/fdt_module-fdt.obj -MD -MP -MF loader/efi/$(DEPDIR)/fdt_module-fdt.Tpo -c -o loader/efi/fdt_module-fdt.obj `if test -f 'loader/efi/fdt.c'; then $(CYGPATH_W) 'loader/efi/fdt.c'; else $(CYGPATH_W) '$(srcdir)/loader/efi/fdt.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) loader/efi/$(DEPDIR)/fdt_module-fdt.Tpo loader/efi/$(DEPDIR)/fdt_module-fdt.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='loader/efi/fdt.c' object='loader/efi/fdt_module-fdt.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(fdt_module_CPPFLAGS) $(CPPFLAGS) $(fdt_module_CFLAGS) $(CFLAGS) -c -o loader/efi/fdt_module-fdt.obj `if test -f 'loader/efi/fdt.c'; then $(CYGPATH_W) 'loader/efi/fdt.c'; else $(CYGPATH_W) '$(srcdir)/loader/efi/fdt.c'; fi` - -lib/fdt_module-fdt.o: lib/fdt.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(fdt_module_CPPFLAGS) $(CPPFLAGS) $(fdt_module_CFLAGS) $(CFLAGS) -MT lib/fdt_module-fdt.o -MD -MP -MF lib/$(DEPDIR)/fdt_module-fdt.Tpo -c -o lib/fdt_module-fdt.o `test -f 'lib/fdt.c' || echo '$(srcdir)/'`lib/fdt.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/$(DEPDIR)/fdt_module-fdt.Tpo lib/$(DEPDIR)/fdt_module-fdt.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/fdt.c' object='lib/fdt_module-fdt.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(fdt_module_CPPFLAGS) $(CPPFLAGS) $(fdt_module_CFLAGS) $(CFLAGS) -c -o lib/fdt_module-fdt.o `test -f 'lib/fdt.c' || echo '$(srcdir)/'`lib/fdt.c - -lib/fdt_module-fdt.obj: lib/fdt.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(fdt_module_CPPFLAGS) $(CPPFLAGS) $(fdt_module_CFLAGS) $(CFLAGS) -MT lib/fdt_module-fdt.obj -MD -MP -MF lib/$(DEPDIR)/fdt_module-fdt.Tpo -c -o lib/fdt_module-fdt.obj `if test -f 'lib/fdt.c'; then $(CYGPATH_W) 'lib/fdt.c'; else $(CYGPATH_W) '$(srcdir)/lib/fdt.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/$(DEPDIR)/fdt_module-fdt.Tpo lib/$(DEPDIR)/fdt_module-fdt.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/fdt.c' object='lib/fdt_module-fdt.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(fdt_module_CPPFLAGS) $(CPPFLAGS) $(fdt_module_CFLAGS) $(CFLAGS) -c -o lib/fdt_module-fdt.obj `if test -f 'lib/fdt.c'; then $(CYGPATH_W) 'lib/fdt.c'; else $(CYGPATH_W) '$(srcdir)/lib/fdt.c'; fi` - -commands/file_module-file.o: commands/file.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(file_module_CPPFLAGS) $(CPPFLAGS) $(file_module_CFLAGS) $(CFLAGS) -MT commands/file_module-file.o -MD -MP -MF commands/$(DEPDIR)/file_module-file.Tpo -c -o commands/file_module-file.o `test -f 'commands/file.c' || echo '$(srcdir)/'`commands/file.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/$(DEPDIR)/file_module-file.Tpo commands/$(DEPDIR)/file_module-file.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/file.c' object='commands/file_module-file.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(file_module_CPPFLAGS) $(CPPFLAGS) $(file_module_CFLAGS) $(CFLAGS) -c -o commands/file_module-file.o `test -f 'commands/file.c' || echo '$(srcdir)/'`commands/file.c - -commands/file_module-file.obj: commands/file.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(file_module_CPPFLAGS) $(CPPFLAGS) $(file_module_CFLAGS) $(CFLAGS) -MT commands/file_module-file.obj -MD -MP -MF commands/$(DEPDIR)/file_module-file.Tpo -c -o commands/file_module-file.obj `if test -f 'commands/file.c'; then $(CYGPATH_W) 'commands/file.c'; else $(CYGPATH_W) '$(srcdir)/commands/file.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/$(DEPDIR)/file_module-file.Tpo commands/$(DEPDIR)/file_module-file.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/file.c' object='commands/file_module-file.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(file_module_CPPFLAGS) $(CPPFLAGS) $(file_module_CFLAGS) $(CFLAGS) -c -o commands/file_module-file.obj `if test -f 'commands/file.c'; then $(CYGPATH_W) 'commands/file.c'; else $(CYGPATH_W) '$(srcdir)/commands/file.c'; fi` - -commands/file_module-file32.o: commands/file32.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(file_module_CPPFLAGS) $(CPPFLAGS) $(file_module_CFLAGS) $(CFLAGS) -MT commands/file_module-file32.o -MD -MP -MF commands/$(DEPDIR)/file_module-file32.Tpo -c -o commands/file_module-file32.o `test -f 'commands/file32.c' || echo '$(srcdir)/'`commands/file32.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/$(DEPDIR)/file_module-file32.Tpo commands/$(DEPDIR)/file_module-file32.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/file32.c' object='commands/file_module-file32.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(file_module_CPPFLAGS) $(CPPFLAGS) $(file_module_CFLAGS) $(CFLAGS) -c -o commands/file_module-file32.o `test -f 'commands/file32.c' || echo '$(srcdir)/'`commands/file32.c - -commands/file_module-file32.obj: commands/file32.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(file_module_CPPFLAGS) $(CPPFLAGS) $(file_module_CFLAGS) $(CFLAGS) -MT commands/file_module-file32.obj -MD -MP -MF commands/$(DEPDIR)/file_module-file32.Tpo -c -o commands/file_module-file32.obj `if test -f 'commands/file32.c'; then $(CYGPATH_W) 'commands/file32.c'; else $(CYGPATH_W) '$(srcdir)/commands/file32.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/$(DEPDIR)/file_module-file32.Tpo commands/$(DEPDIR)/file_module-file32.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/file32.c' object='commands/file_module-file32.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(file_module_CPPFLAGS) $(CPPFLAGS) $(file_module_CFLAGS) $(CFLAGS) -c -o commands/file_module-file32.obj `if test -f 'commands/file32.c'; then $(CYGPATH_W) 'commands/file32.c'; else $(CYGPATH_W) '$(srcdir)/commands/file32.c'; fi` - -commands/file_module-file64.o: commands/file64.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(file_module_CPPFLAGS) $(CPPFLAGS) $(file_module_CFLAGS) $(CFLAGS) -MT commands/file_module-file64.o -MD -MP -MF commands/$(DEPDIR)/file_module-file64.Tpo -c -o commands/file_module-file64.o `test -f 'commands/file64.c' || echo '$(srcdir)/'`commands/file64.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/$(DEPDIR)/file_module-file64.Tpo commands/$(DEPDIR)/file_module-file64.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/file64.c' object='commands/file_module-file64.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(file_module_CPPFLAGS) $(CPPFLAGS) $(file_module_CFLAGS) $(CFLAGS) -c -o commands/file_module-file64.o `test -f 'commands/file64.c' || echo '$(srcdir)/'`commands/file64.c - -commands/file_module-file64.obj: commands/file64.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(file_module_CPPFLAGS) $(CPPFLAGS) $(file_module_CFLAGS) $(CFLAGS) -MT commands/file_module-file64.obj -MD -MP -MF commands/$(DEPDIR)/file_module-file64.Tpo -c -o commands/file_module-file64.obj `if test -f 'commands/file64.c'; then $(CYGPATH_W) 'commands/file64.c'; else $(CYGPATH_W) '$(srcdir)/commands/file64.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/$(DEPDIR)/file_module-file64.Tpo commands/$(DEPDIR)/file_module-file64.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/file64.c' object='commands/file_module-file64.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(file_module_CPPFLAGS) $(CPPFLAGS) $(file_module_CFLAGS) $(CFLAGS) -c -o commands/file_module-file64.obj `if test -f 'commands/file64.c'; then $(CYGPATH_W) 'commands/file64.c'; else $(CYGPATH_W) '$(srcdir)/commands/file64.c'; fi` - -loader/i386/file_module-xen_file.o: loader/i386/xen_file.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(file_module_CPPFLAGS) $(CPPFLAGS) $(file_module_CFLAGS) $(CFLAGS) -MT loader/i386/file_module-xen_file.o -MD -MP -MF loader/i386/$(DEPDIR)/file_module-xen_file.Tpo -c -o loader/i386/file_module-xen_file.o `test -f 'loader/i386/xen_file.c' || echo '$(srcdir)/'`loader/i386/xen_file.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) loader/i386/$(DEPDIR)/file_module-xen_file.Tpo loader/i386/$(DEPDIR)/file_module-xen_file.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='loader/i386/xen_file.c' object='loader/i386/file_module-xen_file.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(file_module_CPPFLAGS) $(CPPFLAGS) $(file_module_CFLAGS) $(CFLAGS) -c -o loader/i386/file_module-xen_file.o `test -f 'loader/i386/xen_file.c' || echo '$(srcdir)/'`loader/i386/xen_file.c - -loader/i386/file_module-xen_file.obj: loader/i386/xen_file.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(file_module_CPPFLAGS) $(CPPFLAGS) $(file_module_CFLAGS) $(CFLAGS) -MT loader/i386/file_module-xen_file.obj -MD -MP -MF loader/i386/$(DEPDIR)/file_module-xen_file.Tpo -c -o loader/i386/file_module-xen_file.obj `if test -f 'loader/i386/xen_file.c'; then $(CYGPATH_W) 'loader/i386/xen_file.c'; else $(CYGPATH_W) '$(srcdir)/loader/i386/xen_file.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) loader/i386/$(DEPDIR)/file_module-xen_file.Tpo loader/i386/$(DEPDIR)/file_module-xen_file.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='loader/i386/xen_file.c' object='loader/i386/file_module-xen_file.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(file_module_CPPFLAGS) $(CPPFLAGS) $(file_module_CFLAGS) $(CFLAGS) -c -o loader/i386/file_module-xen_file.obj `if test -f 'loader/i386/xen_file.c'; then $(CYGPATH_W) 'loader/i386/xen_file.c'; else $(CYGPATH_W) '$(srcdir)/loader/i386/xen_file.c'; fi` - -loader/i386/file_module-xen_file32.o: loader/i386/xen_file32.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(file_module_CPPFLAGS) $(CPPFLAGS) $(file_module_CFLAGS) $(CFLAGS) -MT loader/i386/file_module-xen_file32.o -MD -MP -MF loader/i386/$(DEPDIR)/file_module-xen_file32.Tpo -c -o loader/i386/file_module-xen_file32.o `test -f 'loader/i386/xen_file32.c' || echo '$(srcdir)/'`loader/i386/xen_file32.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) loader/i386/$(DEPDIR)/file_module-xen_file32.Tpo loader/i386/$(DEPDIR)/file_module-xen_file32.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='loader/i386/xen_file32.c' object='loader/i386/file_module-xen_file32.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(file_module_CPPFLAGS) $(CPPFLAGS) $(file_module_CFLAGS) $(CFLAGS) -c -o loader/i386/file_module-xen_file32.o `test -f 'loader/i386/xen_file32.c' || echo '$(srcdir)/'`loader/i386/xen_file32.c - -loader/i386/file_module-xen_file32.obj: loader/i386/xen_file32.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(file_module_CPPFLAGS) $(CPPFLAGS) $(file_module_CFLAGS) $(CFLAGS) -MT loader/i386/file_module-xen_file32.obj -MD -MP -MF loader/i386/$(DEPDIR)/file_module-xen_file32.Tpo -c -o loader/i386/file_module-xen_file32.obj `if test -f 'loader/i386/xen_file32.c'; then $(CYGPATH_W) 'loader/i386/xen_file32.c'; else $(CYGPATH_W) '$(srcdir)/loader/i386/xen_file32.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) loader/i386/$(DEPDIR)/file_module-xen_file32.Tpo loader/i386/$(DEPDIR)/file_module-xen_file32.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='loader/i386/xen_file32.c' object='loader/i386/file_module-xen_file32.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(file_module_CPPFLAGS) $(CPPFLAGS) $(file_module_CFLAGS) $(CFLAGS) -c -o loader/i386/file_module-xen_file32.obj `if test -f 'loader/i386/xen_file32.c'; then $(CYGPATH_W) 'loader/i386/xen_file32.c'; else $(CYGPATH_W) '$(srcdir)/loader/i386/xen_file32.c'; fi` - -loader/i386/file_module-xen_file64.o: loader/i386/xen_file64.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(file_module_CPPFLAGS) $(CPPFLAGS) $(file_module_CFLAGS) $(CFLAGS) -MT loader/i386/file_module-xen_file64.o -MD -MP -MF loader/i386/$(DEPDIR)/file_module-xen_file64.Tpo -c -o loader/i386/file_module-xen_file64.o `test -f 'loader/i386/xen_file64.c' || echo '$(srcdir)/'`loader/i386/xen_file64.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) loader/i386/$(DEPDIR)/file_module-xen_file64.Tpo loader/i386/$(DEPDIR)/file_module-xen_file64.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='loader/i386/xen_file64.c' object='loader/i386/file_module-xen_file64.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(file_module_CPPFLAGS) $(CPPFLAGS) $(file_module_CFLAGS) $(CFLAGS) -c -o loader/i386/file_module-xen_file64.o `test -f 'loader/i386/xen_file64.c' || echo '$(srcdir)/'`loader/i386/xen_file64.c - -loader/i386/file_module-xen_file64.obj: loader/i386/xen_file64.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(file_module_CPPFLAGS) $(CPPFLAGS) $(file_module_CFLAGS) $(CFLAGS) -MT loader/i386/file_module-xen_file64.obj -MD -MP -MF loader/i386/$(DEPDIR)/file_module-xen_file64.Tpo -c -o loader/i386/file_module-xen_file64.obj `if test -f 'loader/i386/xen_file64.c'; then $(CYGPATH_W) 'loader/i386/xen_file64.c'; else $(CYGPATH_W) '$(srcdir)/loader/i386/xen_file64.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) loader/i386/$(DEPDIR)/file_module-xen_file64.Tpo loader/i386/$(DEPDIR)/file_module-xen_file64.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='loader/i386/xen_file64.c' object='loader/i386/file_module-xen_file64.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(file_module_CPPFLAGS) $(CPPFLAGS) $(file_module_CFLAGS) $(CFLAGS) -c -o loader/i386/file_module-xen_file64.obj `if test -f 'loader/i386/xen_file64.c'; then $(CYGPATH_W) 'loader/i386/xen_file64.c'; else $(CYGPATH_W) '$(srcdir)/loader/i386/xen_file64.c'; fi` - -commands/efi/fixvideo_module-fixvideo.o: commands/efi/fixvideo.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(fixvideo_module_CPPFLAGS) $(CPPFLAGS) $(fixvideo_module_CFLAGS) $(CFLAGS) -MT commands/efi/fixvideo_module-fixvideo.o -MD -MP -MF commands/efi/$(DEPDIR)/fixvideo_module-fixvideo.Tpo -c -o commands/efi/fixvideo_module-fixvideo.o `test -f 'commands/efi/fixvideo.c' || echo '$(srcdir)/'`commands/efi/fixvideo.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/efi/$(DEPDIR)/fixvideo_module-fixvideo.Tpo commands/efi/$(DEPDIR)/fixvideo_module-fixvideo.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/efi/fixvideo.c' object='commands/efi/fixvideo_module-fixvideo.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(fixvideo_module_CPPFLAGS) $(CPPFLAGS) $(fixvideo_module_CFLAGS) $(CFLAGS) -c -o commands/efi/fixvideo_module-fixvideo.o `test -f 'commands/efi/fixvideo.c' || echo '$(srcdir)/'`commands/efi/fixvideo.c - -commands/efi/fixvideo_module-fixvideo.obj: commands/efi/fixvideo.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(fixvideo_module_CPPFLAGS) $(CPPFLAGS) $(fixvideo_module_CFLAGS) $(CFLAGS) -MT commands/efi/fixvideo_module-fixvideo.obj -MD -MP -MF commands/efi/$(DEPDIR)/fixvideo_module-fixvideo.Tpo -c -o commands/efi/fixvideo_module-fixvideo.obj `if test -f 'commands/efi/fixvideo.c'; then $(CYGPATH_W) 'commands/efi/fixvideo.c'; else $(CYGPATH_W) '$(srcdir)/commands/efi/fixvideo.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/efi/$(DEPDIR)/fixvideo_module-fixvideo.Tpo commands/efi/$(DEPDIR)/fixvideo_module-fixvideo.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/efi/fixvideo.c' object='commands/efi/fixvideo_module-fixvideo.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(fixvideo_module_CPPFLAGS) $(CPPFLAGS) $(fixvideo_module_CFLAGS) $(CFLAGS) -c -o commands/efi/fixvideo_module-fixvideo.obj `if test -f 'commands/efi/fixvideo.c'; then $(CYGPATH_W) 'commands/efi/fixvideo.c'; else $(CYGPATH_W) '$(srcdir)/commands/efi/fixvideo.c'; fi` - -font/font_module-font.o: font/font.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(font_module_CPPFLAGS) $(CPPFLAGS) $(font_module_CFLAGS) $(CFLAGS) -MT font/font_module-font.o -MD -MP -MF font/$(DEPDIR)/font_module-font.Tpo -c -o font/font_module-font.o `test -f 'font/font.c' || echo '$(srcdir)/'`font/font.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) font/$(DEPDIR)/font_module-font.Tpo font/$(DEPDIR)/font_module-font.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='font/font.c' object='font/font_module-font.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(font_module_CPPFLAGS) $(CPPFLAGS) $(font_module_CFLAGS) $(CFLAGS) -c -o font/font_module-font.o `test -f 'font/font.c' || echo '$(srcdir)/'`font/font.c - -font/font_module-font.obj: font/font.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(font_module_CPPFLAGS) $(CPPFLAGS) $(font_module_CFLAGS) $(CFLAGS) -MT font/font_module-font.obj -MD -MP -MF font/$(DEPDIR)/font_module-font.Tpo -c -o font/font_module-font.obj `if test -f 'font/font.c'; then $(CYGPATH_W) 'font/font.c'; else $(CYGPATH_W) '$(srcdir)/font/font.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) font/$(DEPDIR)/font_module-font.Tpo font/$(DEPDIR)/font_module-font.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='font/font.c' object='font/font_module-font.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(font_module_CPPFLAGS) $(CPPFLAGS) $(font_module_CFLAGS) $(CFLAGS) -c -o font/font_module-font.obj `if test -f 'font/font.c'; then $(CYGPATH_W) 'font/font.c'; else $(CYGPATH_W) '$(srcdir)/font/font.c'; fi` - -font/font_module-font_cmd.o: font/font_cmd.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(font_module_CPPFLAGS) $(CPPFLAGS) $(font_module_CFLAGS) $(CFLAGS) -MT font/font_module-font_cmd.o -MD -MP -MF font/$(DEPDIR)/font_module-font_cmd.Tpo -c -o font/font_module-font_cmd.o `test -f 'font/font_cmd.c' || echo '$(srcdir)/'`font/font_cmd.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) font/$(DEPDIR)/font_module-font_cmd.Tpo font/$(DEPDIR)/font_module-font_cmd.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='font/font_cmd.c' object='font/font_module-font_cmd.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(font_module_CPPFLAGS) $(CPPFLAGS) $(font_module_CFLAGS) $(CFLAGS) -c -o font/font_module-font_cmd.o `test -f 'font/font_cmd.c' || echo '$(srcdir)/'`font/font_cmd.c - -font/font_module-font_cmd.obj: font/font_cmd.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(font_module_CPPFLAGS) $(CPPFLAGS) $(font_module_CFLAGS) $(CFLAGS) -MT font/font_module-font_cmd.obj -MD -MP -MF font/$(DEPDIR)/font_module-font_cmd.Tpo -c -o font/font_module-font_cmd.obj `if test -f 'font/font_cmd.c'; then $(CYGPATH_W) 'font/font_cmd.c'; else $(CYGPATH_W) '$(srcdir)/font/font_cmd.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) font/$(DEPDIR)/font_module-font_cmd.Tpo font/$(DEPDIR)/font_module-font_cmd.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='font/font_cmd.c' object='font/font_module-font_cmd.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(font_module_CPPFLAGS) $(CPPFLAGS) $(font_module_CFLAGS) $(CFLAGS) -c -o font/font_module-font_cmd.obj `if test -f 'font/font_cmd.c'; then $(CYGPATH_W) 'font/font_cmd.c'; else $(CYGPATH_W) '$(srcdir)/font/font_cmd.c'; fi` - -loader/i386/pc/freedos_module-freedos.o: loader/i386/pc/freedos.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(freedos_module_CPPFLAGS) $(CPPFLAGS) $(freedos_module_CFLAGS) $(CFLAGS) -MT loader/i386/pc/freedos_module-freedos.o -MD -MP -MF loader/i386/pc/$(DEPDIR)/freedos_module-freedos.Tpo -c -o loader/i386/pc/freedos_module-freedos.o `test -f 'loader/i386/pc/freedos.c' || echo '$(srcdir)/'`loader/i386/pc/freedos.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) loader/i386/pc/$(DEPDIR)/freedos_module-freedos.Tpo loader/i386/pc/$(DEPDIR)/freedos_module-freedos.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='loader/i386/pc/freedos.c' object='loader/i386/pc/freedos_module-freedos.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(freedos_module_CPPFLAGS) $(CPPFLAGS) $(freedos_module_CFLAGS) $(CFLAGS) -c -o loader/i386/pc/freedos_module-freedos.o `test -f 'loader/i386/pc/freedos.c' || echo '$(srcdir)/'`loader/i386/pc/freedos.c - -loader/i386/pc/freedos_module-freedos.obj: loader/i386/pc/freedos.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(freedos_module_CPPFLAGS) $(CPPFLAGS) $(freedos_module_CFLAGS) $(CFLAGS) -MT loader/i386/pc/freedos_module-freedos.obj -MD -MP -MF loader/i386/pc/$(DEPDIR)/freedos_module-freedos.Tpo -c -o loader/i386/pc/freedos_module-freedos.obj `if test -f 'loader/i386/pc/freedos.c'; then $(CYGPATH_W) 'loader/i386/pc/freedos.c'; else $(CYGPATH_W) '$(srcdir)/loader/i386/pc/freedos.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) loader/i386/pc/$(DEPDIR)/freedos_module-freedos.Tpo loader/i386/pc/$(DEPDIR)/freedos_module-freedos.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='loader/i386/pc/freedos.c' object='loader/i386/pc/freedos_module-freedos.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(freedos_module_CPPFLAGS) $(CPPFLAGS) $(freedos_module_CFLAGS) $(CFLAGS) -c -o loader/i386/pc/freedos_module-freedos.obj `if test -f 'loader/i386/pc/freedos.c'; then $(CYGPATH_W) 'loader/i386/pc/freedos.c'; else $(CYGPATH_W) '$(srcdir)/loader/i386/pc/freedos.c'; fi` - -fs/fshelp_module-fshelp.o: fs/fshelp.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(fshelp_module_CPPFLAGS) $(CPPFLAGS) $(fshelp_module_CFLAGS) $(CFLAGS) -MT fs/fshelp_module-fshelp.o -MD -MP -MF fs/$(DEPDIR)/fshelp_module-fshelp.Tpo -c -o fs/fshelp_module-fshelp.o `test -f 'fs/fshelp.c' || echo '$(srcdir)/'`fs/fshelp.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) fs/$(DEPDIR)/fshelp_module-fshelp.Tpo fs/$(DEPDIR)/fshelp_module-fshelp.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='fs/fshelp.c' object='fs/fshelp_module-fshelp.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(fshelp_module_CPPFLAGS) $(CPPFLAGS) $(fshelp_module_CFLAGS) $(CFLAGS) -c -o fs/fshelp_module-fshelp.o `test -f 'fs/fshelp.c' || echo '$(srcdir)/'`fs/fshelp.c - -fs/fshelp_module-fshelp.obj: fs/fshelp.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(fshelp_module_CPPFLAGS) $(CPPFLAGS) $(fshelp_module_CFLAGS) $(CFLAGS) -MT fs/fshelp_module-fshelp.obj -MD -MP -MF fs/$(DEPDIR)/fshelp_module-fshelp.Tpo -c -o fs/fshelp_module-fshelp.obj `if test -f 'fs/fshelp.c'; then $(CYGPATH_W) 'fs/fshelp.c'; else $(CYGPATH_W) '$(srcdir)/fs/fshelp.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) fs/$(DEPDIR)/fshelp_module-fshelp.Tpo fs/$(DEPDIR)/fshelp_module-fshelp.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='fs/fshelp.c' object='fs/fshelp_module-fshelp.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(fshelp_module_CPPFLAGS) $(CPPFLAGS) $(fshelp_module_CFLAGS) $(CFLAGS) -c -o fs/fshelp_module-fshelp.obj `if test -f 'fs/fshelp.c'; then $(CYGPATH_W) 'fs/fshelp.c'; else $(CYGPATH_W) '$(srcdir)/fs/fshelp.c'; fi` - -tests/lib/functional_test_module-functional_test.o: tests/lib/functional_test.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(functional_test_module_CPPFLAGS) $(CPPFLAGS) $(functional_test_module_CFLAGS) $(CFLAGS) -MT tests/lib/functional_test_module-functional_test.o -MD -MP -MF tests/lib/$(DEPDIR)/functional_test_module-functional_test.Tpo -c -o tests/lib/functional_test_module-functional_test.o `test -f 'tests/lib/functional_test.c' || echo '$(srcdir)/'`tests/lib/functional_test.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) tests/lib/$(DEPDIR)/functional_test_module-functional_test.Tpo tests/lib/$(DEPDIR)/functional_test_module-functional_test.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='tests/lib/functional_test.c' object='tests/lib/functional_test_module-functional_test.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(functional_test_module_CPPFLAGS) $(CPPFLAGS) $(functional_test_module_CFLAGS) $(CFLAGS) -c -o tests/lib/functional_test_module-functional_test.o `test -f 'tests/lib/functional_test.c' || echo '$(srcdir)/'`tests/lib/functional_test.c - -tests/lib/functional_test_module-functional_test.obj: tests/lib/functional_test.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(functional_test_module_CPPFLAGS) $(CPPFLAGS) $(functional_test_module_CFLAGS) $(CFLAGS) -MT tests/lib/functional_test_module-functional_test.obj -MD -MP -MF tests/lib/$(DEPDIR)/functional_test_module-functional_test.Tpo -c -o tests/lib/functional_test_module-functional_test.obj `if test -f 'tests/lib/functional_test.c'; then $(CYGPATH_W) 'tests/lib/functional_test.c'; else $(CYGPATH_W) '$(srcdir)/tests/lib/functional_test.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) tests/lib/$(DEPDIR)/functional_test_module-functional_test.Tpo tests/lib/$(DEPDIR)/functional_test_module-functional_test.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='tests/lib/functional_test.c' object='tests/lib/functional_test_module-functional_test.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(functional_test_module_CPPFLAGS) $(CPPFLAGS) $(functional_test_module_CFLAGS) $(CFLAGS) -c -o tests/lib/functional_test_module-functional_test.obj `if test -f 'tests/lib/functional_test.c'; then $(CYGPATH_W) 'tests/lib/functional_test.c'; else $(CYGPATH_W) '$(srcdir)/tests/lib/functional_test.c'; fi` - -tests/lib/functional_test_module-test.o: tests/lib/test.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(functional_test_module_CPPFLAGS) $(CPPFLAGS) $(functional_test_module_CFLAGS) $(CFLAGS) -MT tests/lib/functional_test_module-test.o -MD -MP -MF tests/lib/$(DEPDIR)/functional_test_module-test.Tpo -c -o tests/lib/functional_test_module-test.o `test -f 'tests/lib/test.c' || echo '$(srcdir)/'`tests/lib/test.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) tests/lib/$(DEPDIR)/functional_test_module-test.Tpo tests/lib/$(DEPDIR)/functional_test_module-test.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='tests/lib/test.c' object='tests/lib/functional_test_module-test.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(functional_test_module_CPPFLAGS) $(CPPFLAGS) $(functional_test_module_CFLAGS) $(CFLAGS) -c -o tests/lib/functional_test_module-test.o `test -f 'tests/lib/test.c' || echo '$(srcdir)/'`tests/lib/test.c - -tests/lib/functional_test_module-test.obj: tests/lib/test.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(functional_test_module_CPPFLAGS) $(CPPFLAGS) $(functional_test_module_CFLAGS) $(CFLAGS) -MT tests/lib/functional_test_module-test.obj -MD -MP -MF tests/lib/$(DEPDIR)/functional_test_module-test.Tpo -c -o tests/lib/functional_test_module-test.obj `if test -f 'tests/lib/test.c'; then $(CYGPATH_W) 'tests/lib/test.c'; else $(CYGPATH_W) '$(srcdir)/tests/lib/test.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) tests/lib/$(DEPDIR)/functional_test_module-test.Tpo tests/lib/$(DEPDIR)/functional_test_module-test.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='tests/lib/test.c' object='tests/lib/functional_test_module-test.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(functional_test_module_CPPFLAGS) $(CPPFLAGS) $(functional_test_module_CFLAGS) $(CFLAGS) -c -o tests/lib/functional_test_module-test.obj `if test -f 'tests/lib/test.c'; then $(CYGPATH_W) 'tests/lib/test.c'; else $(CYGPATH_W) '$(srcdir)/tests/lib/test.c'; fi` - -tests/functional_test_module-video_checksum.o: tests/video_checksum.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(functional_test_module_CPPFLAGS) $(CPPFLAGS) $(functional_test_module_CFLAGS) $(CFLAGS) -MT tests/functional_test_module-video_checksum.o -MD -MP -MF tests/$(DEPDIR)/functional_test_module-video_checksum.Tpo -c -o tests/functional_test_module-video_checksum.o `test -f 'tests/video_checksum.c' || echo '$(srcdir)/'`tests/video_checksum.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) tests/$(DEPDIR)/functional_test_module-video_checksum.Tpo tests/$(DEPDIR)/functional_test_module-video_checksum.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='tests/video_checksum.c' object='tests/functional_test_module-video_checksum.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(functional_test_module_CPPFLAGS) $(CPPFLAGS) $(functional_test_module_CFLAGS) $(CFLAGS) -c -o tests/functional_test_module-video_checksum.o `test -f 'tests/video_checksum.c' || echo '$(srcdir)/'`tests/video_checksum.c - -tests/functional_test_module-video_checksum.obj: tests/video_checksum.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(functional_test_module_CPPFLAGS) $(CPPFLAGS) $(functional_test_module_CFLAGS) $(CFLAGS) -MT tests/functional_test_module-video_checksum.obj -MD -MP -MF tests/$(DEPDIR)/functional_test_module-video_checksum.Tpo -c -o tests/functional_test_module-video_checksum.obj `if test -f 'tests/video_checksum.c'; then $(CYGPATH_W) 'tests/video_checksum.c'; else $(CYGPATH_W) '$(srcdir)/tests/video_checksum.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) tests/$(DEPDIR)/functional_test_module-video_checksum.Tpo tests/$(DEPDIR)/functional_test_module-video_checksum.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='tests/video_checksum.c' object='tests/functional_test_module-video_checksum.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(functional_test_module_CPPFLAGS) $(CPPFLAGS) $(functional_test_module_CFLAGS) $(CFLAGS) -c -o tests/functional_test_module-video_checksum.obj `if test -f 'tests/video_checksum.c'; then $(CYGPATH_W) 'tests/video_checksum.c'; else $(CYGPATH_W) '$(srcdir)/tests/video_checksum.c'; fi` - -tests/functional_test_module-fake_input.o: tests/fake_input.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(functional_test_module_CPPFLAGS) $(CPPFLAGS) $(functional_test_module_CFLAGS) $(CFLAGS) -MT tests/functional_test_module-fake_input.o -MD -MP -MF tests/$(DEPDIR)/functional_test_module-fake_input.Tpo -c -o tests/functional_test_module-fake_input.o `test -f 'tests/fake_input.c' || echo '$(srcdir)/'`tests/fake_input.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) tests/$(DEPDIR)/functional_test_module-fake_input.Tpo tests/$(DEPDIR)/functional_test_module-fake_input.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='tests/fake_input.c' object='tests/functional_test_module-fake_input.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(functional_test_module_CPPFLAGS) $(CPPFLAGS) $(functional_test_module_CFLAGS) $(CFLAGS) -c -o tests/functional_test_module-fake_input.o `test -f 'tests/fake_input.c' || echo '$(srcdir)/'`tests/fake_input.c - -tests/functional_test_module-fake_input.obj: tests/fake_input.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(functional_test_module_CPPFLAGS) $(CPPFLAGS) $(functional_test_module_CFLAGS) $(CFLAGS) -MT tests/functional_test_module-fake_input.obj -MD -MP -MF tests/$(DEPDIR)/functional_test_module-fake_input.Tpo -c -o tests/functional_test_module-fake_input.obj `if test -f 'tests/fake_input.c'; then $(CYGPATH_W) 'tests/fake_input.c'; else $(CYGPATH_W) '$(srcdir)/tests/fake_input.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) tests/$(DEPDIR)/functional_test_module-fake_input.Tpo tests/$(DEPDIR)/functional_test_module-fake_input.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='tests/fake_input.c' object='tests/functional_test_module-fake_input.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(functional_test_module_CPPFLAGS) $(CPPFLAGS) $(functional_test_module_CFLAGS) $(CFLAGS) -c -o tests/functional_test_module-fake_input.obj `if test -f 'tests/fake_input.c'; then $(CYGPATH_W) 'tests/fake_input.c'; else $(CYGPATH_W) '$(srcdir)/tests/fake_input.c'; fi` - -video/functional_test_module-capture.o: video/capture.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(functional_test_module_CPPFLAGS) $(CPPFLAGS) $(functional_test_module_CFLAGS) $(CFLAGS) -MT video/functional_test_module-capture.o -MD -MP -MF video/$(DEPDIR)/functional_test_module-capture.Tpo -c -o video/functional_test_module-capture.o `test -f 'video/capture.c' || echo '$(srcdir)/'`video/capture.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) video/$(DEPDIR)/functional_test_module-capture.Tpo video/$(DEPDIR)/functional_test_module-capture.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='video/capture.c' object='video/functional_test_module-capture.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(functional_test_module_CPPFLAGS) $(CPPFLAGS) $(functional_test_module_CFLAGS) $(CFLAGS) -c -o video/functional_test_module-capture.o `test -f 'video/capture.c' || echo '$(srcdir)/'`video/capture.c - -video/functional_test_module-capture.obj: video/capture.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(functional_test_module_CPPFLAGS) $(CPPFLAGS) $(functional_test_module_CFLAGS) $(CFLAGS) -MT video/functional_test_module-capture.obj -MD -MP -MF video/$(DEPDIR)/functional_test_module-capture.Tpo -c -o video/functional_test_module-capture.obj `if test -f 'video/capture.c'; then $(CYGPATH_W) 'video/capture.c'; else $(CYGPATH_W) '$(srcdir)/video/capture.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) video/$(DEPDIR)/functional_test_module-capture.Tpo video/$(DEPDIR)/functional_test_module-capture.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='video/capture.c' object='video/functional_test_module-capture.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(functional_test_module_CPPFLAGS) $(CPPFLAGS) $(functional_test_module_CFLAGS) $(CFLAGS) -c -o video/functional_test_module-capture.obj `if test -f 'video/capture.c'; then $(CYGPATH_W) 'video/capture.c'; else $(CYGPATH_W) '$(srcdir)/video/capture.c'; fi` - -lib/libgcrypt-grub/cipher/gcry_arcfour_module-arcfour.o: lib/libgcrypt-grub/cipher/arcfour.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gcry_arcfour_module_CPPFLAGS) $(CPPFLAGS) $(gcry_arcfour_module_CFLAGS) $(CFLAGS) -MT lib/libgcrypt-grub/cipher/gcry_arcfour_module-arcfour.o -MD -MP -MF lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_arcfour_module-arcfour.Tpo -c -o lib/libgcrypt-grub/cipher/gcry_arcfour_module-arcfour.o `test -f 'lib/libgcrypt-grub/cipher/arcfour.c' || echo '$(srcdir)/'`lib/libgcrypt-grub/cipher/arcfour.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_arcfour_module-arcfour.Tpo lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_arcfour_module-arcfour.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/libgcrypt-grub/cipher/arcfour.c' object='lib/libgcrypt-grub/cipher/gcry_arcfour_module-arcfour.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gcry_arcfour_module_CPPFLAGS) $(CPPFLAGS) $(gcry_arcfour_module_CFLAGS) $(CFLAGS) -c -o lib/libgcrypt-grub/cipher/gcry_arcfour_module-arcfour.o `test -f 'lib/libgcrypt-grub/cipher/arcfour.c' || echo '$(srcdir)/'`lib/libgcrypt-grub/cipher/arcfour.c - -lib/libgcrypt-grub/cipher/gcry_arcfour_module-arcfour.obj: lib/libgcrypt-grub/cipher/arcfour.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gcry_arcfour_module_CPPFLAGS) $(CPPFLAGS) $(gcry_arcfour_module_CFLAGS) $(CFLAGS) -MT lib/libgcrypt-grub/cipher/gcry_arcfour_module-arcfour.obj -MD -MP -MF lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_arcfour_module-arcfour.Tpo -c -o lib/libgcrypt-grub/cipher/gcry_arcfour_module-arcfour.obj `if test -f 'lib/libgcrypt-grub/cipher/arcfour.c'; then $(CYGPATH_W) 'lib/libgcrypt-grub/cipher/arcfour.c'; else $(CYGPATH_W) '$(srcdir)/lib/libgcrypt-grub/cipher/arcfour.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_arcfour_module-arcfour.Tpo lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_arcfour_module-arcfour.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/libgcrypt-grub/cipher/arcfour.c' object='lib/libgcrypt-grub/cipher/gcry_arcfour_module-arcfour.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gcry_arcfour_module_CPPFLAGS) $(CPPFLAGS) $(gcry_arcfour_module_CFLAGS) $(CFLAGS) -c -o lib/libgcrypt-grub/cipher/gcry_arcfour_module-arcfour.obj `if test -f 'lib/libgcrypt-grub/cipher/arcfour.c'; then $(CYGPATH_W) 'lib/libgcrypt-grub/cipher/arcfour.c'; else $(CYGPATH_W) '$(srcdir)/lib/libgcrypt-grub/cipher/arcfour.c'; fi` - -lib/libgcrypt-grub/cipher/gcry_blowfish_module-blowfish.o: lib/libgcrypt-grub/cipher/blowfish.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gcry_blowfish_module_CPPFLAGS) $(CPPFLAGS) $(gcry_blowfish_module_CFLAGS) $(CFLAGS) -MT lib/libgcrypt-grub/cipher/gcry_blowfish_module-blowfish.o -MD -MP -MF lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_blowfish_module-blowfish.Tpo -c -o lib/libgcrypt-grub/cipher/gcry_blowfish_module-blowfish.o `test -f 'lib/libgcrypt-grub/cipher/blowfish.c' || echo '$(srcdir)/'`lib/libgcrypt-grub/cipher/blowfish.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_blowfish_module-blowfish.Tpo lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_blowfish_module-blowfish.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/libgcrypt-grub/cipher/blowfish.c' object='lib/libgcrypt-grub/cipher/gcry_blowfish_module-blowfish.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gcry_blowfish_module_CPPFLAGS) $(CPPFLAGS) $(gcry_blowfish_module_CFLAGS) $(CFLAGS) -c -o lib/libgcrypt-grub/cipher/gcry_blowfish_module-blowfish.o `test -f 'lib/libgcrypt-grub/cipher/blowfish.c' || echo '$(srcdir)/'`lib/libgcrypt-grub/cipher/blowfish.c - -lib/libgcrypt-grub/cipher/gcry_blowfish_module-blowfish.obj: lib/libgcrypt-grub/cipher/blowfish.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gcry_blowfish_module_CPPFLAGS) $(CPPFLAGS) $(gcry_blowfish_module_CFLAGS) $(CFLAGS) -MT lib/libgcrypt-grub/cipher/gcry_blowfish_module-blowfish.obj -MD -MP -MF lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_blowfish_module-blowfish.Tpo -c -o lib/libgcrypt-grub/cipher/gcry_blowfish_module-blowfish.obj `if test -f 'lib/libgcrypt-grub/cipher/blowfish.c'; then $(CYGPATH_W) 'lib/libgcrypt-grub/cipher/blowfish.c'; else $(CYGPATH_W) '$(srcdir)/lib/libgcrypt-grub/cipher/blowfish.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_blowfish_module-blowfish.Tpo lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_blowfish_module-blowfish.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/libgcrypt-grub/cipher/blowfish.c' object='lib/libgcrypt-grub/cipher/gcry_blowfish_module-blowfish.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gcry_blowfish_module_CPPFLAGS) $(CPPFLAGS) $(gcry_blowfish_module_CFLAGS) $(CFLAGS) -c -o lib/libgcrypt-grub/cipher/gcry_blowfish_module-blowfish.obj `if test -f 'lib/libgcrypt-grub/cipher/blowfish.c'; then $(CYGPATH_W) 'lib/libgcrypt-grub/cipher/blowfish.c'; else $(CYGPATH_W) '$(srcdir)/lib/libgcrypt-grub/cipher/blowfish.c'; fi` - -lib/libgcrypt-grub/cipher/gcry_camellia_module-camellia-glue.o: lib/libgcrypt-grub/cipher/camellia-glue.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gcry_camellia_module_CPPFLAGS) $(CPPFLAGS) $(gcry_camellia_module_CFLAGS) $(CFLAGS) -MT lib/libgcrypt-grub/cipher/gcry_camellia_module-camellia-glue.o -MD -MP -MF lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_camellia_module-camellia-glue.Tpo -c -o lib/libgcrypt-grub/cipher/gcry_camellia_module-camellia-glue.o `test -f 'lib/libgcrypt-grub/cipher/camellia-glue.c' || echo '$(srcdir)/'`lib/libgcrypt-grub/cipher/camellia-glue.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_camellia_module-camellia-glue.Tpo lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_camellia_module-camellia-glue.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/libgcrypt-grub/cipher/camellia-glue.c' object='lib/libgcrypt-grub/cipher/gcry_camellia_module-camellia-glue.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gcry_camellia_module_CPPFLAGS) $(CPPFLAGS) $(gcry_camellia_module_CFLAGS) $(CFLAGS) -c -o lib/libgcrypt-grub/cipher/gcry_camellia_module-camellia-glue.o `test -f 'lib/libgcrypt-grub/cipher/camellia-glue.c' || echo '$(srcdir)/'`lib/libgcrypt-grub/cipher/camellia-glue.c - -lib/libgcrypt-grub/cipher/gcry_camellia_module-camellia-glue.obj: lib/libgcrypt-grub/cipher/camellia-glue.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gcry_camellia_module_CPPFLAGS) $(CPPFLAGS) $(gcry_camellia_module_CFLAGS) $(CFLAGS) -MT lib/libgcrypt-grub/cipher/gcry_camellia_module-camellia-glue.obj -MD -MP -MF lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_camellia_module-camellia-glue.Tpo -c -o lib/libgcrypt-grub/cipher/gcry_camellia_module-camellia-glue.obj `if test -f 'lib/libgcrypt-grub/cipher/camellia-glue.c'; then $(CYGPATH_W) 'lib/libgcrypt-grub/cipher/camellia-glue.c'; else $(CYGPATH_W) '$(srcdir)/lib/libgcrypt-grub/cipher/camellia-glue.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_camellia_module-camellia-glue.Tpo lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_camellia_module-camellia-glue.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/libgcrypt-grub/cipher/camellia-glue.c' object='lib/libgcrypt-grub/cipher/gcry_camellia_module-camellia-glue.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gcry_camellia_module_CPPFLAGS) $(CPPFLAGS) $(gcry_camellia_module_CFLAGS) $(CFLAGS) -c -o lib/libgcrypt-grub/cipher/gcry_camellia_module-camellia-glue.obj `if test -f 'lib/libgcrypt-grub/cipher/camellia-glue.c'; then $(CYGPATH_W) 'lib/libgcrypt-grub/cipher/camellia-glue.c'; else $(CYGPATH_W) '$(srcdir)/lib/libgcrypt-grub/cipher/camellia-glue.c'; fi` - -lib/libgcrypt-grub/cipher/gcry_camellia_module-camellia.o: lib/libgcrypt-grub/cipher/camellia.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gcry_camellia_module_CPPFLAGS) $(CPPFLAGS) $(gcry_camellia_module_CFLAGS) $(CFLAGS) -MT lib/libgcrypt-grub/cipher/gcry_camellia_module-camellia.o -MD -MP -MF lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_camellia_module-camellia.Tpo -c -o lib/libgcrypt-grub/cipher/gcry_camellia_module-camellia.o `test -f 'lib/libgcrypt-grub/cipher/camellia.c' || echo '$(srcdir)/'`lib/libgcrypt-grub/cipher/camellia.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_camellia_module-camellia.Tpo lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_camellia_module-camellia.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/libgcrypt-grub/cipher/camellia.c' object='lib/libgcrypt-grub/cipher/gcry_camellia_module-camellia.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gcry_camellia_module_CPPFLAGS) $(CPPFLAGS) $(gcry_camellia_module_CFLAGS) $(CFLAGS) -c -o lib/libgcrypt-grub/cipher/gcry_camellia_module-camellia.o `test -f 'lib/libgcrypt-grub/cipher/camellia.c' || echo '$(srcdir)/'`lib/libgcrypt-grub/cipher/camellia.c - -lib/libgcrypt-grub/cipher/gcry_camellia_module-camellia.obj: lib/libgcrypt-grub/cipher/camellia.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gcry_camellia_module_CPPFLAGS) $(CPPFLAGS) $(gcry_camellia_module_CFLAGS) $(CFLAGS) -MT lib/libgcrypt-grub/cipher/gcry_camellia_module-camellia.obj -MD -MP -MF lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_camellia_module-camellia.Tpo -c -o lib/libgcrypt-grub/cipher/gcry_camellia_module-camellia.obj `if test -f 'lib/libgcrypt-grub/cipher/camellia.c'; then $(CYGPATH_W) 'lib/libgcrypt-grub/cipher/camellia.c'; else $(CYGPATH_W) '$(srcdir)/lib/libgcrypt-grub/cipher/camellia.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_camellia_module-camellia.Tpo lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_camellia_module-camellia.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/libgcrypt-grub/cipher/camellia.c' object='lib/libgcrypt-grub/cipher/gcry_camellia_module-camellia.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gcry_camellia_module_CPPFLAGS) $(CPPFLAGS) $(gcry_camellia_module_CFLAGS) $(CFLAGS) -c -o lib/libgcrypt-grub/cipher/gcry_camellia_module-camellia.obj `if test -f 'lib/libgcrypt-grub/cipher/camellia.c'; then $(CYGPATH_W) 'lib/libgcrypt-grub/cipher/camellia.c'; else $(CYGPATH_W) '$(srcdir)/lib/libgcrypt-grub/cipher/camellia.c'; fi` - -lib/libgcrypt-grub/cipher/gcry_cast5_module-cast5.o: lib/libgcrypt-grub/cipher/cast5.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gcry_cast5_module_CPPFLAGS) $(CPPFLAGS) $(gcry_cast5_module_CFLAGS) $(CFLAGS) -MT lib/libgcrypt-grub/cipher/gcry_cast5_module-cast5.o -MD -MP -MF lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_cast5_module-cast5.Tpo -c -o lib/libgcrypt-grub/cipher/gcry_cast5_module-cast5.o `test -f 'lib/libgcrypt-grub/cipher/cast5.c' || echo '$(srcdir)/'`lib/libgcrypt-grub/cipher/cast5.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_cast5_module-cast5.Tpo lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_cast5_module-cast5.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/libgcrypt-grub/cipher/cast5.c' object='lib/libgcrypt-grub/cipher/gcry_cast5_module-cast5.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gcry_cast5_module_CPPFLAGS) $(CPPFLAGS) $(gcry_cast5_module_CFLAGS) $(CFLAGS) -c -o lib/libgcrypt-grub/cipher/gcry_cast5_module-cast5.o `test -f 'lib/libgcrypt-grub/cipher/cast5.c' || echo '$(srcdir)/'`lib/libgcrypt-grub/cipher/cast5.c - -lib/libgcrypt-grub/cipher/gcry_cast5_module-cast5.obj: lib/libgcrypt-grub/cipher/cast5.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gcry_cast5_module_CPPFLAGS) $(CPPFLAGS) $(gcry_cast5_module_CFLAGS) $(CFLAGS) -MT lib/libgcrypt-grub/cipher/gcry_cast5_module-cast5.obj -MD -MP -MF lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_cast5_module-cast5.Tpo -c -o lib/libgcrypt-grub/cipher/gcry_cast5_module-cast5.obj `if test -f 'lib/libgcrypt-grub/cipher/cast5.c'; then $(CYGPATH_W) 'lib/libgcrypt-grub/cipher/cast5.c'; else $(CYGPATH_W) '$(srcdir)/lib/libgcrypt-grub/cipher/cast5.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_cast5_module-cast5.Tpo lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_cast5_module-cast5.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/libgcrypt-grub/cipher/cast5.c' object='lib/libgcrypt-grub/cipher/gcry_cast5_module-cast5.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gcry_cast5_module_CPPFLAGS) $(CPPFLAGS) $(gcry_cast5_module_CFLAGS) $(CFLAGS) -c -o lib/libgcrypt-grub/cipher/gcry_cast5_module-cast5.obj `if test -f 'lib/libgcrypt-grub/cipher/cast5.c'; then $(CYGPATH_W) 'lib/libgcrypt-grub/cipher/cast5.c'; else $(CYGPATH_W) '$(srcdir)/lib/libgcrypt-grub/cipher/cast5.c'; fi` - -lib/libgcrypt-grub/cipher/gcry_crc_module-crc.o: lib/libgcrypt-grub/cipher/crc.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gcry_crc_module_CPPFLAGS) $(CPPFLAGS) $(gcry_crc_module_CFLAGS) $(CFLAGS) -MT lib/libgcrypt-grub/cipher/gcry_crc_module-crc.o -MD -MP -MF lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_crc_module-crc.Tpo -c -o lib/libgcrypt-grub/cipher/gcry_crc_module-crc.o `test -f 'lib/libgcrypt-grub/cipher/crc.c' || echo '$(srcdir)/'`lib/libgcrypt-grub/cipher/crc.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_crc_module-crc.Tpo lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_crc_module-crc.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/libgcrypt-grub/cipher/crc.c' object='lib/libgcrypt-grub/cipher/gcry_crc_module-crc.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gcry_crc_module_CPPFLAGS) $(CPPFLAGS) $(gcry_crc_module_CFLAGS) $(CFLAGS) -c -o lib/libgcrypt-grub/cipher/gcry_crc_module-crc.o `test -f 'lib/libgcrypt-grub/cipher/crc.c' || echo '$(srcdir)/'`lib/libgcrypt-grub/cipher/crc.c - -lib/libgcrypt-grub/cipher/gcry_crc_module-crc.obj: lib/libgcrypt-grub/cipher/crc.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gcry_crc_module_CPPFLAGS) $(CPPFLAGS) $(gcry_crc_module_CFLAGS) $(CFLAGS) -MT lib/libgcrypt-grub/cipher/gcry_crc_module-crc.obj -MD -MP -MF lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_crc_module-crc.Tpo -c -o lib/libgcrypt-grub/cipher/gcry_crc_module-crc.obj `if test -f 'lib/libgcrypt-grub/cipher/crc.c'; then $(CYGPATH_W) 'lib/libgcrypt-grub/cipher/crc.c'; else $(CYGPATH_W) '$(srcdir)/lib/libgcrypt-grub/cipher/crc.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_crc_module-crc.Tpo lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_crc_module-crc.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/libgcrypt-grub/cipher/crc.c' object='lib/libgcrypt-grub/cipher/gcry_crc_module-crc.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gcry_crc_module_CPPFLAGS) $(CPPFLAGS) $(gcry_crc_module_CFLAGS) $(CFLAGS) -c -o lib/libgcrypt-grub/cipher/gcry_crc_module-crc.obj `if test -f 'lib/libgcrypt-grub/cipher/crc.c'; then $(CYGPATH_W) 'lib/libgcrypt-grub/cipher/crc.c'; else $(CYGPATH_W) '$(srcdir)/lib/libgcrypt-grub/cipher/crc.c'; fi` - -lib/libgcrypt-grub/cipher/gcry_des_module-des.o: lib/libgcrypt-grub/cipher/des.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gcry_des_module_CPPFLAGS) $(CPPFLAGS) $(gcry_des_module_CFLAGS) $(CFLAGS) -MT lib/libgcrypt-grub/cipher/gcry_des_module-des.o -MD -MP -MF lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_des_module-des.Tpo -c -o lib/libgcrypt-grub/cipher/gcry_des_module-des.o `test -f 'lib/libgcrypt-grub/cipher/des.c' || echo '$(srcdir)/'`lib/libgcrypt-grub/cipher/des.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_des_module-des.Tpo lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_des_module-des.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/libgcrypt-grub/cipher/des.c' object='lib/libgcrypt-grub/cipher/gcry_des_module-des.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gcry_des_module_CPPFLAGS) $(CPPFLAGS) $(gcry_des_module_CFLAGS) $(CFLAGS) -c -o lib/libgcrypt-grub/cipher/gcry_des_module-des.o `test -f 'lib/libgcrypt-grub/cipher/des.c' || echo '$(srcdir)/'`lib/libgcrypt-grub/cipher/des.c - -lib/libgcrypt-grub/cipher/gcry_des_module-des.obj: lib/libgcrypt-grub/cipher/des.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gcry_des_module_CPPFLAGS) $(CPPFLAGS) $(gcry_des_module_CFLAGS) $(CFLAGS) -MT lib/libgcrypt-grub/cipher/gcry_des_module-des.obj -MD -MP -MF lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_des_module-des.Tpo -c -o lib/libgcrypt-grub/cipher/gcry_des_module-des.obj `if test -f 'lib/libgcrypt-grub/cipher/des.c'; then $(CYGPATH_W) 'lib/libgcrypt-grub/cipher/des.c'; else $(CYGPATH_W) '$(srcdir)/lib/libgcrypt-grub/cipher/des.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_des_module-des.Tpo lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_des_module-des.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/libgcrypt-grub/cipher/des.c' object='lib/libgcrypt-grub/cipher/gcry_des_module-des.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gcry_des_module_CPPFLAGS) $(CPPFLAGS) $(gcry_des_module_CFLAGS) $(CFLAGS) -c -o lib/libgcrypt-grub/cipher/gcry_des_module-des.obj `if test -f 'lib/libgcrypt-grub/cipher/des.c'; then $(CYGPATH_W) 'lib/libgcrypt-grub/cipher/des.c'; else $(CYGPATH_W) '$(srcdir)/lib/libgcrypt-grub/cipher/des.c'; fi` - -lib/libgcrypt-grub/cipher/gcry_dsa_module-dsa.o: lib/libgcrypt-grub/cipher/dsa.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gcry_dsa_module_CPPFLAGS) $(CPPFLAGS) $(gcry_dsa_module_CFLAGS) $(CFLAGS) -MT lib/libgcrypt-grub/cipher/gcry_dsa_module-dsa.o -MD -MP -MF lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_dsa_module-dsa.Tpo -c -o lib/libgcrypt-grub/cipher/gcry_dsa_module-dsa.o `test -f 'lib/libgcrypt-grub/cipher/dsa.c' || echo '$(srcdir)/'`lib/libgcrypt-grub/cipher/dsa.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_dsa_module-dsa.Tpo lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_dsa_module-dsa.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/libgcrypt-grub/cipher/dsa.c' object='lib/libgcrypt-grub/cipher/gcry_dsa_module-dsa.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gcry_dsa_module_CPPFLAGS) $(CPPFLAGS) $(gcry_dsa_module_CFLAGS) $(CFLAGS) -c -o lib/libgcrypt-grub/cipher/gcry_dsa_module-dsa.o `test -f 'lib/libgcrypt-grub/cipher/dsa.c' || echo '$(srcdir)/'`lib/libgcrypt-grub/cipher/dsa.c - -lib/libgcrypt-grub/cipher/gcry_dsa_module-dsa.obj: lib/libgcrypt-grub/cipher/dsa.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gcry_dsa_module_CPPFLAGS) $(CPPFLAGS) $(gcry_dsa_module_CFLAGS) $(CFLAGS) -MT lib/libgcrypt-grub/cipher/gcry_dsa_module-dsa.obj -MD -MP -MF lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_dsa_module-dsa.Tpo -c -o lib/libgcrypt-grub/cipher/gcry_dsa_module-dsa.obj `if test -f 'lib/libgcrypt-grub/cipher/dsa.c'; then $(CYGPATH_W) 'lib/libgcrypt-grub/cipher/dsa.c'; else $(CYGPATH_W) '$(srcdir)/lib/libgcrypt-grub/cipher/dsa.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_dsa_module-dsa.Tpo lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_dsa_module-dsa.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/libgcrypt-grub/cipher/dsa.c' object='lib/libgcrypt-grub/cipher/gcry_dsa_module-dsa.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gcry_dsa_module_CPPFLAGS) $(CPPFLAGS) $(gcry_dsa_module_CFLAGS) $(CFLAGS) -c -o lib/libgcrypt-grub/cipher/gcry_dsa_module-dsa.obj `if test -f 'lib/libgcrypt-grub/cipher/dsa.c'; then $(CYGPATH_W) 'lib/libgcrypt-grub/cipher/dsa.c'; else $(CYGPATH_W) '$(srcdir)/lib/libgcrypt-grub/cipher/dsa.c'; fi` - -lib/libgcrypt-grub/cipher/gcry_idea_module-idea.o: lib/libgcrypt-grub/cipher/idea.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gcry_idea_module_CPPFLAGS) $(CPPFLAGS) $(gcry_idea_module_CFLAGS) $(CFLAGS) -MT lib/libgcrypt-grub/cipher/gcry_idea_module-idea.o -MD -MP -MF lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_idea_module-idea.Tpo -c -o lib/libgcrypt-grub/cipher/gcry_idea_module-idea.o `test -f 'lib/libgcrypt-grub/cipher/idea.c' || echo '$(srcdir)/'`lib/libgcrypt-grub/cipher/idea.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_idea_module-idea.Tpo lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_idea_module-idea.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/libgcrypt-grub/cipher/idea.c' object='lib/libgcrypt-grub/cipher/gcry_idea_module-idea.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gcry_idea_module_CPPFLAGS) $(CPPFLAGS) $(gcry_idea_module_CFLAGS) $(CFLAGS) -c -o lib/libgcrypt-grub/cipher/gcry_idea_module-idea.o `test -f 'lib/libgcrypt-grub/cipher/idea.c' || echo '$(srcdir)/'`lib/libgcrypt-grub/cipher/idea.c - -lib/libgcrypt-grub/cipher/gcry_idea_module-idea.obj: lib/libgcrypt-grub/cipher/idea.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gcry_idea_module_CPPFLAGS) $(CPPFLAGS) $(gcry_idea_module_CFLAGS) $(CFLAGS) -MT lib/libgcrypt-grub/cipher/gcry_idea_module-idea.obj -MD -MP -MF lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_idea_module-idea.Tpo -c -o lib/libgcrypt-grub/cipher/gcry_idea_module-idea.obj `if test -f 'lib/libgcrypt-grub/cipher/idea.c'; then $(CYGPATH_W) 'lib/libgcrypt-grub/cipher/idea.c'; else $(CYGPATH_W) '$(srcdir)/lib/libgcrypt-grub/cipher/idea.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_idea_module-idea.Tpo lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_idea_module-idea.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/libgcrypt-grub/cipher/idea.c' object='lib/libgcrypt-grub/cipher/gcry_idea_module-idea.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gcry_idea_module_CPPFLAGS) $(CPPFLAGS) $(gcry_idea_module_CFLAGS) $(CFLAGS) -c -o lib/libgcrypt-grub/cipher/gcry_idea_module-idea.obj `if test -f 'lib/libgcrypt-grub/cipher/idea.c'; then $(CYGPATH_W) 'lib/libgcrypt-grub/cipher/idea.c'; else $(CYGPATH_W) '$(srcdir)/lib/libgcrypt-grub/cipher/idea.c'; fi` - -lib/libgcrypt-grub/cipher/gcry_md4_module-md4.o: lib/libgcrypt-grub/cipher/md4.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gcry_md4_module_CPPFLAGS) $(CPPFLAGS) $(gcry_md4_module_CFLAGS) $(CFLAGS) -MT lib/libgcrypt-grub/cipher/gcry_md4_module-md4.o -MD -MP -MF lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_md4_module-md4.Tpo -c -o lib/libgcrypt-grub/cipher/gcry_md4_module-md4.o `test -f 'lib/libgcrypt-grub/cipher/md4.c' || echo '$(srcdir)/'`lib/libgcrypt-grub/cipher/md4.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_md4_module-md4.Tpo lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_md4_module-md4.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/libgcrypt-grub/cipher/md4.c' object='lib/libgcrypt-grub/cipher/gcry_md4_module-md4.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gcry_md4_module_CPPFLAGS) $(CPPFLAGS) $(gcry_md4_module_CFLAGS) $(CFLAGS) -c -o lib/libgcrypt-grub/cipher/gcry_md4_module-md4.o `test -f 'lib/libgcrypt-grub/cipher/md4.c' || echo '$(srcdir)/'`lib/libgcrypt-grub/cipher/md4.c - -lib/libgcrypt-grub/cipher/gcry_md4_module-md4.obj: lib/libgcrypt-grub/cipher/md4.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gcry_md4_module_CPPFLAGS) $(CPPFLAGS) $(gcry_md4_module_CFLAGS) $(CFLAGS) -MT lib/libgcrypt-grub/cipher/gcry_md4_module-md4.obj -MD -MP -MF lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_md4_module-md4.Tpo -c -o lib/libgcrypt-grub/cipher/gcry_md4_module-md4.obj `if test -f 'lib/libgcrypt-grub/cipher/md4.c'; then $(CYGPATH_W) 'lib/libgcrypt-grub/cipher/md4.c'; else $(CYGPATH_W) '$(srcdir)/lib/libgcrypt-grub/cipher/md4.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_md4_module-md4.Tpo lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_md4_module-md4.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/libgcrypt-grub/cipher/md4.c' object='lib/libgcrypt-grub/cipher/gcry_md4_module-md4.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gcry_md4_module_CPPFLAGS) $(CPPFLAGS) $(gcry_md4_module_CFLAGS) $(CFLAGS) -c -o lib/libgcrypt-grub/cipher/gcry_md4_module-md4.obj `if test -f 'lib/libgcrypt-grub/cipher/md4.c'; then $(CYGPATH_W) 'lib/libgcrypt-grub/cipher/md4.c'; else $(CYGPATH_W) '$(srcdir)/lib/libgcrypt-grub/cipher/md4.c'; fi` - -lib/libgcrypt-grub/cipher/gcry_md5_module-md5.o: lib/libgcrypt-grub/cipher/md5.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gcry_md5_module_CPPFLAGS) $(CPPFLAGS) $(gcry_md5_module_CFLAGS) $(CFLAGS) -MT lib/libgcrypt-grub/cipher/gcry_md5_module-md5.o -MD -MP -MF lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_md5_module-md5.Tpo -c -o lib/libgcrypt-grub/cipher/gcry_md5_module-md5.o `test -f 'lib/libgcrypt-grub/cipher/md5.c' || echo '$(srcdir)/'`lib/libgcrypt-grub/cipher/md5.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_md5_module-md5.Tpo lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_md5_module-md5.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/libgcrypt-grub/cipher/md5.c' object='lib/libgcrypt-grub/cipher/gcry_md5_module-md5.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gcry_md5_module_CPPFLAGS) $(CPPFLAGS) $(gcry_md5_module_CFLAGS) $(CFLAGS) -c -o lib/libgcrypt-grub/cipher/gcry_md5_module-md5.o `test -f 'lib/libgcrypt-grub/cipher/md5.c' || echo '$(srcdir)/'`lib/libgcrypt-grub/cipher/md5.c - -lib/libgcrypt-grub/cipher/gcry_md5_module-md5.obj: lib/libgcrypt-grub/cipher/md5.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gcry_md5_module_CPPFLAGS) $(CPPFLAGS) $(gcry_md5_module_CFLAGS) $(CFLAGS) -MT lib/libgcrypt-grub/cipher/gcry_md5_module-md5.obj -MD -MP -MF lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_md5_module-md5.Tpo -c -o lib/libgcrypt-grub/cipher/gcry_md5_module-md5.obj `if test -f 'lib/libgcrypt-grub/cipher/md5.c'; then $(CYGPATH_W) 'lib/libgcrypt-grub/cipher/md5.c'; else $(CYGPATH_W) '$(srcdir)/lib/libgcrypt-grub/cipher/md5.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_md5_module-md5.Tpo lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_md5_module-md5.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/libgcrypt-grub/cipher/md5.c' object='lib/libgcrypt-grub/cipher/gcry_md5_module-md5.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gcry_md5_module_CPPFLAGS) $(CPPFLAGS) $(gcry_md5_module_CFLAGS) $(CFLAGS) -c -o lib/libgcrypt-grub/cipher/gcry_md5_module-md5.obj `if test -f 'lib/libgcrypt-grub/cipher/md5.c'; then $(CYGPATH_W) 'lib/libgcrypt-grub/cipher/md5.c'; else $(CYGPATH_W) '$(srcdir)/lib/libgcrypt-grub/cipher/md5.c'; fi` - -lib/libgcrypt-grub/cipher/gcry_rfc2268_module-rfc2268.o: lib/libgcrypt-grub/cipher/rfc2268.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gcry_rfc2268_module_CPPFLAGS) $(CPPFLAGS) $(gcry_rfc2268_module_CFLAGS) $(CFLAGS) -MT lib/libgcrypt-grub/cipher/gcry_rfc2268_module-rfc2268.o -MD -MP -MF lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_rfc2268_module-rfc2268.Tpo -c -o lib/libgcrypt-grub/cipher/gcry_rfc2268_module-rfc2268.o `test -f 'lib/libgcrypt-grub/cipher/rfc2268.c' || echo '$(srcdir)/'`lib/libgcrypt-grub/cipher/rfc2268.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_rfc2268_module-rfc2268.Tpo lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_rfc2268_module-rfc2268.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/libgcrypt-grub/cipher/rfc2268.c' object='lib/libgcrypt-grub/cipher/gcry_rfc2268_module-rfc2268.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gcry_rfc2268_module_CPPFLAGS) $(CPPFLAGS) $(gcry_rfc2268_module_CFLAGS) $(CFLAGS) -c -o lib/libgcrypt-grub/cipher/gcry_rfc2268_module-rfc2268.o `test -f 'lib/libgcrypt-grub/cipher/rfc2268.c' || echo '$(srcdir)/'`lib/libgcrypt-grub/cipher/rfc2268.c - -lib/libgcrypt-grub/cipher/gcry_rfc2268_module-rfc2268.obj: lib/libgcrypt-grub/cipher/rfc2268.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gcry_rfc2268_module_CPPFLAGS) $(CPPFLAGS) $(gcry_rfc2268_module_CFLAGS) $(CFLAGS) -MT lib/libgcrypt-grub/cipher/gcry_rfc2268_module-rfc2268.obj -MD -MP -MF lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_rfc2268_module-rfc2268.Tpo -c -o lib/libgcrypt-grub/cipher/gcry_rfc2268_module-rfc2268.obj `if test -f 'lib/libgcrypt-grub/cipher/rfc2268.c'; then $(CYGPATH_W) 'lib/libgcrypt-grub/cipher/rfc2268.c'; else $(CYGPATH_W) '$(srcdir)/lib/libgcrypt-grub/cipher/rfc2268.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_rfc2268_module-rfc2268.Tpo lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_rfc2268_module-rfc2268.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/libgcrypt-grub/cipher/rfc2268.c' object='lib/libgcrypt-grub/cipher/gcry_rfc2268_module-rfc2268.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gcry_rfc2268_module_CPPFLAGS) $(CPPFLAGS) $(gcry_rfc2268_module_CFLAGS) $(CFLAGS) -c -o lib/libgcrypt-grub/cipher/gcry_rfc2268_module-rfc2268.obj `if test -f 'lib/libgcrypt-grub/cipher/rfc2268.c'; then $(CYGPATH_W) 'lib/libgcrypt-grub/cipher/rfc2268.c'; else $(CYGPATH_W) '$(srcdir)/lib/libgcrypt-grub/cipher/rfc2268.c'; fi` - -lib/libgcrypt-grub/cipher/gcry_rijndael_module-rijndael.o: lib/libgcrypt-grub/cipher/rijndael.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gcry_rijndael_module_CPPFLAGS) $(CPPFLAGS) $(gcry_rijndael_module_CFLAGS) $(CFLAGS) -MT lib/libgcrypt-grub/cipher/gcry_rijndael_module-rijndael.o -MD -MP -MF lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_rijndael_module-rijndael.Tpo -c -o lib/libgcrypt-grub/cipher/gcry_rijndael_module-rijndael.o `test -f 'lib/libgcrypt-grub/cipher/rijndael.c' || echo '$(srcdir)/'`lib/libgcrypt-grub/cipher/rijndael.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_rijndael_module-rijndael.Tpo lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_rijndael_module-rijndael.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/libgcrypt-grub/cipher/rijndael.c' object='lib/libgcrypt-grub/cipher/gcry_rijndael_module-rijndael.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gcry_rijndael_module_CPPFLAGS) $(CPPFLAGS) $(gcry_rijndael_module_CFLAGS) $(CFLAGS) -c -o lib/libgcrypt-grub/cipher/gcry_rijndael_module-rijndael.o `test -f 'lib/libgcrypt-grub/cipher/rijndael.c' || echo '$(srcdir)/'`lib/libgcrypt-grub/cipher/rijndael.c - -lib/libgcrypt-grub/cipher/gcry_rijndael_module-rijndael.obj: lib/libgcrypt-grub/cipher/rijndael.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gcry_rijndael_module_CPPFLAGS) $(CPPFLAGS) $(gcry_rijndael_module_CFLAGS) $(CFLAGS) -MT lib/libgcrypt-grub/cipher/gcry_rijndael_module-rijndael.obj -MD -MP -MF lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_rijndael_module-rijndael.Tpo -c -o lib/libgcrypt-grub/cipher/gcry_rijndael_module-rijndael.obj `if test -f 'lib/libgcrypt-grub/cipher/rijndael.c'; then $(CYGPATH_W) 'lib/libgcrypt-grub/cipher/rijndael.c'; else $(CYGPATH_W) '$(srcdir)/lib/libgcrypt-grub/cipher/rijndael.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_rijndael_module-rijndael.Tpo lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_rijndael_module-rijndael.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/libgcrypt-grub/cipher/rijndael.c' object='lib/libgcrypt-grub/cipher/gcry_rijndael_module-rijndael.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gcry_rijndael_module_CPPFLAGS) $(CPPFLAGS) $(gcry_rijndael_module_CFLAGS) $(CFLAGS) -c -o lib/libgcrypt-grub/cipher/gcry_rijndael_module-rijndael.obj `if test -f 'lib/libgcrypt-grub/cipher/rijndael.c'; then $(CYGPATH_W) 'lib/libgcrypt-grub/cipher/rijndael.c'; else $(CYGPATH_W) '$(srcdir)/lib/libgcrypt-grub/cipher/rijndael.c'; fi` - -lib/libgcrypt-grub/cipher/gcry_rmd160_module-rmd160.o: lib/libgcrypt-grub/cipher/rmd160.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gcry_rmd160_module_CPPFLAGS) $(CPPFLAGS) $(gcry_rmd160_module_CFLAGS) $(CFLAGS) -MT lib/libgcrypt-grub/cipher/gcry_rmd160_module-rmd160.o -MD -MP -MF lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_rmd160_module-rmd160.Tpo -c -o lib/libgcrypt-grub/cipher/gcry_rmd160_module-rmd160.o `test -f 'lib/libgcrypt-grub/cipher/rmd160.c' || echo '$(srcdir)/'`lib/libgcrypt-grub/cipher/rmd160.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_rmd160_module-rmd160.Tpo lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_rmd160_module-rmd160.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/libgcrypt-grub/cipher/rmd160.c' object='lib/libgcrypt-grub/cipher/gcry_rmd160_module-rmd160.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gcry_rmd160_module_CPPFLAGS) $(CPPFLAGS) $(gcry_rmd160_module_CFLAGS) $(CFLAGS) -c -o lib/libgcrypt-grub/cipher/gcry_rmd160_module-rmd160.o `test -f 'lib/libgcrypt-grub/cipher/rmd160.c' || echo '$(srcdir)/'`lib/libgcrypt-grub/cipher/rmd160.c - -lib/libgcrypt-grub/cipher/gcry_rmd160_module-rmd160.obj: lib/libgcrypt-grub/cipher/rmd160.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gcry_rmd160_module_CPPFLAGS) $(CPPFLAGS) $(gcry_rmd160_module_CFLAGS) $(CFLAGS) -MT lib/libgcrypt-grub/cipher/gcry_rmd160_module-rmd160.obj -MD -MP -MF lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_rmd160_module-rmd160.Tpo -c -o lib/libgcrypt-grub/cipher/gcry_rmd160_module-rmd160.obj `if test -f 'lib/libgcrypt-grub/cipher/rmd160.c'; then $(CYGPATH_W) 'lib/libgcrypt-grub/cipher/rmd160.c'; else $(CYGPATH_W) '$(srcdir)/lib/libgcrypt-grub/cipher/rmd160.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_rmd160_module-rmd160.Tpo lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_rmd160_module-rmd160.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/libgcrypt-grub/cipher/rmd160.c' object='lib/libgcrypt-grub/cipher/gcry_rmd160_module-rmd160.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gcry_rmd160_module_CPPFLAGS) $(CPPFLAGS) $(gcry_rmd160_module_CFLAGS) $(CFLAGS) -c -o lib/libgcrypt-grub/cipher/gcry_rmd160_module-rmd160.obj `if test -f 'lib/libgcrypt-grub/cipher/rmd160.c'; then $(CYGPATH_W) 'lib/libgcrypt-grub/cipher/rmd160.c'; else $(CYGPATH_W) '$(srcdir)/lib/libgcrypt-grub/cipher/rmd160.c'; fi` - -lib/libgcrypt-grub/cipher/gcry_rsa_module-rsa.o: lib/libgcrypt-grub/cipher/rsa.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gcry_rsa_module_CPPFLAGS) $(CPPFLAGS) $(gcry_rsa_module_CFLAGS) $(CFLAGS) -MT lib/libgcrypt-grub/cipher/gcry_rsa_module-rsa.o -MD -MP -MF lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_rsa_module-rsa.Tpo -c -o lib/libgcrypt-grub/cipher/gcry_rsa_module-rsa.o `test -f 'lib/libgcrypt-grub/cipher/rsa.c' || echo '$(srcdir)/'`lib/libgcrypt-grub/cipher/rsa.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_rsa_module-rsa.Tpo lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_rsa_module-rsa.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/libgcrypt-grub/cipher/rsa.c' object='lib/libgcrypt-grub/cipher/gcry_rsa_module-rsa.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gcry_rsa_module_CPPFLAGS) $(CPPFLAGS) $(gcry_rsa_module_CFLAGS) $(CFLAGS) -c -o lib/libgcrypt-grub/cipher/gcry_rsa_module-rsa.o `test -f 'lib/libgcrypt-grub/cipher/rsa.c' || echo '$(srcdir)/'`lib/libgcrypt-grub/cipher/rsa.c - -lib/libgcrypt-grub/cipher/gcry_rsa_module-rsa.obj: lib/libgcrypt-grub/cipher/rsa.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gcry_rsa_module_CPPFLAGS) $(CPPFLAGS) $(gcry_rsa_module_CFLAGS) $(CFLAGS) -MT lib/libgcrypt-grub/cipher/gcry_rsa_module-rsa.obj -MD -MP -MF lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_rsa_module-rsa.Tpo -c -o lib/libgcrypt-grub/cipher/gcry_rsa_module-rsa.obj `if test -f 'lib/libgcrypt-grub/cipher/rsa.c'; then $(CYGPATH_W) 'lib/libgcrypt-grub/cipher/rsa.c'; else $(CYGPATH_W) '$(srcdir)/lib/libgcrypt-grub/cipher/rsa.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_rsa_module-rsa.Tpo lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_rsa_module-rsa.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/libgcrypt-grub/cipher/rsa.c' object='lib/libgcrypt-grub/cipher/gcry_rsa_module-rsa.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gcry_rsa_module_CPPFLAGS) $(CPPFLAGS) $(gcry_rsa_module_CFLAGS) $(CFLAGS) -c -o lib/libgcrypt-grub/cipher/gcry_rsa_module-rsa.obj `if test -f 'lib/libgcrypt-grub/cipher/rsa.c'; then $(CYGPATH_W) 'lib/libgcrypt-grub/cipher/rsa.c'; else $(CYGPATH_W) '$(srcdir)/lib/libgcrypt-grub/cipher/rsa.c'; fi` - -lib/libgcrypt-grub/cipher/gcry_seed_module-seed.o: lib/libgcrypt-grub/cipher/seed.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gcry_seed_module_CPPFLAGS) $(CPPFLAGS) $(gcry_seed_module_CFLAGS) $(CFLAGS) -MT lib/libgcrypt-grub/cipher/gcry_seed_module-seed.o -MD -MP -MF lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_seed_module-seed.Tpo -c -o lib/libgcrypt-grub/cipher/gcry_seed_module-seed.o `test -f 'lib/libgcrypt-grub/cipher/seed.c' || echo '$(srcdir)/'`lib/libgcrypt-grub/cipher/seed.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_seed_module-seed.Tpo lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_seed_module-seed.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/libgcrypt-grub/cipher/seed.c' object='lib/libgcrypt-grub/cipher/gcry_seed_module-seed.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gcry_seed_module_CPPFLAGS) $(CPPFLAGS) $(gcry_seed_module_CFLAGS) $(CFLAGS) -c -o lib/libgcrypt-grub/cipher/gcry_seed_module-seed.o `test -f 'lib/libgcrypt-grub/cipher/seed.c' || echo '$(srcdir)/'`lib/libgcrypt-grub/cipher/seed.c - -lib/libgcrypt-grub/cipher/gcry_seed_module-seed.obj: lib/libgcrypt-grub/cipher/seed.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gcry_seed_module_CPPFLAGS) $(CPPFLAGS) $(gcry_seed_module_CFLAGS) $(CFLAGS) -MT lib/libgcrypt-grub/cipher/gcry_seed_module-seed.obj -MD -MP -MF lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_seed_module-seed.Tpo -c -o lib/libgcrypt-grub/cipher/gcry_seed_module-seed.obj `if test -f 'lib/libgcrypt-grub/cipher/seed.c'; then $(CYGPATH_W) 'lib/libgcrypt-grub/cipher/seed.c'; else $(CYGPATH_W) '$(srcdir)/lib/libgcrypt-grub/cipher/seed.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_seed_module-seed.Tpo lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_seed_module-seed.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/libgcrypt-grub/cipher/seed.c' object='lib/libgcrypt-grub/cipher/gcry_seed_module-seed.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gcry_seed_module_CPPFLAGS) $(CPPFLAGS) $(gcry_seed_module_CFLAGS) $(CFLAGS) -c -o lib/libgcrypt-grub/cipher/gcry_seed_module-seed.obj `if test -f 'lib/libgcrypt-grub/cipher/seed.c'; then $(CYGPATH_W) 'lib/libgcrypt-grub/cipher/seed.c'; else $(CYGPATH_W) '$(srcdir)/lib/libgcrypt-grub/cipher/seed.c'; fi` - -lib/libgcrypt-grub/cipher/gcry_serpent_module-serpent.o: lib/libgcrypt-grub/cipher/serpent.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gcry_serpent_module_CPPFLAGS) $(CPPFLAGS) $(gcry_serpent_module_CFLAGS) $(CFLAGS) -MT lib/libgcrypt-grub/cipher/gcry_serpent_module-serpent.o -MD -MP -MF lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_serpent_module-serpent.Tpo -c -o lib/libgcrypt-grub/cipher/gcry_serpent_module-serpent.o `test -f 'lib/libgcrypt-grub/cipher/serpent.c' || echo '$(srcdir)/'`lib/libgcrypt-grub/cipher/serpent.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_serpent_module-serpent.Tpo lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_serpent_module-serpent.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/libgcrypt-grub/cipher/serpent.c' object='lib/libgcrypt-grub/cipher/gcry_serpent_module-serpent.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gcry_serpent_module_CPPFLAGS) $(CPPFLAGS) $(gcry_serpent_module_CFLAGS) $(CFLAGS) -c -o lib/libgcrypt-grub/cipher/gcry_serpent_module-serpent.o `test -f 'lib/libgcrypt-grub/cipher/serpent.c' || echo '$(srcdir)/'`lib/libgcrypt-grub/cipher/serpent.c - -lib/libgcrypt-grub/cipher/gcry_serpent_module-serpent.obj: lib/libgcrypt-grub/cipher/serpent.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gcry_serpent_module_CPPFLAGS) $(CPPFLAGS) $(gcry_serpent_module_CFLAGS) $(CFLAGS) -MT lib/libgcrypt-grub/cipher/gcry_serpent_module-serpent.obj -MD -MP -MF lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_serpent_module-serpent.Tpo -c -o lib/libgcrypt-grub/cipher/gcry_serpent_module-serpent.obj `if test -f 'lib/libgcrypt-grub/cipher/serpent.c'; then $(CYGPATH_W) 'lib/libgcrypt-grub/cipher/serpent.c'; else $(CYGPATH_W) '$(srcdir)/lib/libgcrypt-grub/cipher/serpent.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_serpent_module-serpent.Tpo lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_serpent_module-serpent.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/libgcrypt-grub/cipher/serpent.c' object='lib/libgcrypt-grub/cipher/gcry_serpent_module-serpent.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gcry_serpent_module_CPPFLAGS) $(CPPFLAGS) $(gcry_serpent_module_CFLAGS) $(CFLAGS) -c -o lib/libgcrypt-grub/cipher/gcry_serpent_module-serpent.obj `if test -f 'lib/libgcrypt-grub/cipher/serpent.c'; then $(CYGPATH_W) 'lib/libgcrypt-grub/cipher/serpent.c'; else $(CYGPATH_W) '$(srcdir)/lib/libgcrypt-grub/cipher/serpent.c'; fi` - -lib/libgcrypt-grub/cipher/gcry_sha1_module-sha1.o: lib/libgcrypt-grub/cipher/sha1.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gcry_sha1_module_CPPFLAGS) $(CPPFLAGS) $(gcry_sha1_module_CFLAGS) $(CFLAGS) -MT lib/libgcrypt-grub/cipher/gcry_sha1_module-sha1.o -MD -MP -MF lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_sha1_module-sha1.Tpo -c -o lib/libgcrypt-grub/cipher/gcry_sha1_module-sha1.o `test -f 'lib/libgcrypt-grub/cipher/sha1.c' || echo '$(srcdir)/'`lib/libgcrypt-grub/cipher/sha1.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_sha1_module-sha1.Tpo lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_sha1_module-sha1.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/libgcrypt-grub/cipher/sha1.c' object='lib/libgcrypt-grub/cipher/gcry_sha1_module-sha1.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gcry_sha1_module_CPPFLAGS) $(CPPFLAGS) $(gcry_sha1_module_CFLAGS) $(CFLAGS) -c -o lib/libgcrypt-grub/cipher/gcry_sha1_module-sha1.o `test -f 'lib/libgcrypt-grub/cipher/sha1.c' || echo '$(srcdir)/'`lib/libgcrypt-grub/cipher/sha1.c - -lib/libgcrypt-grub/cipher/gcry_sha1_module-sha1.obj: lib/libgcrypt-grub/cipher/sha1.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gcry_sha1_module_CPPFLAGS) $(CPPFLAGS) $(gcry_sha1_module_CFLAGS) $(CFLAGS) -MT lib/libgcrypt-grub/cipher/gcry_sha1_module-sha1.obj -MD -MP -MF lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_sha1_module-sha1.Tpo -c -o lib/libgcrypt-grub/cipher/gcry_sha1_module-sha1.obj `if test -f 'lib/libgcrypt-grub/cipher/sha1.c'; then $(CYGPATH_W) 'lib/libgcrypt-grub/cipher/sha1.c'; else $(CYGPATH_W) '$(srcdir)/lib/libgcrypt-grub/cipher/sha1.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_sha1_module-sha1.Tpo lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_sha1_module-sha1.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/libgcrypt-grub/cipher/sha1.c' object='lib/libgcrypt-grub/cipher/gcry_sha1_module-sha1.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gcry_sha1_module_CPPFLAGS) $(CPPFLAGS) $(gcry_sha1_module_CFLAGS) $(CFLAGS) -c -o lib/libgcrypt-grub/cipher/gcry_sha1_module-sha1.obj `if test -f 'lib/libgcrypt-grub/cipher/sha1.c'; then $(CYGPATH_W) 'lib/libgcrypt-grub/cipher/sha1.c'; else $(CYGPATH_W) '$(srcdir)/lib/libgcrypt-grub/cipher/sha1.c'; fi` - -lib/libgcrypt-grub/cipher/gcry_sha256_module-sha256.o: lib/libgcrypt-grub/cipher/sha256.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gcry_sha256_module_CPPFLAGS) $(CPPFLAGS) $(gcry_sha256_module_CFLAGS) $(CFLAGS) -MT lib/libgcrypt-grub/cipher/gcry_sha256_module-sha256.o -MD -MP -MF lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_sha256_module-sha256.Tpo -c -o lib/libgcrypt-grub/cipher/gcry_sha256_module-sha256.o `test -f 'lib/libgcrypt-grub/cipher/sha256.c' || echo '$(srcdir)/'`lib/libgcrypt-grub/cipher/sha256.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_sha256_module-sha256.Tpo lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_sha256_module-sha256.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/libgcrypt-grub/cipher/sha256.c' object='lib/libgcrypt-grub/cipher/gcry_sha256_module-sha256.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gcry_sha256_module_CPPFLAGS) $(CPPFLAGS) $(gcry_sha256_module_CFLAGS) $(CFLAGS) -c -o lib/libgcrypt-grub/cipher/gcry_sha256_module-sha256.o `test -f 'lib/libgcrypt-grub/cipher/sha256.c' || echo '$(srcdir)/'`lib/libgcrypt-grub/cipher/sha256.c - -lib/libgcrypt-grub/cipher/gcry_sha256_module-sha256.obj: lib/libgcrypt-grub/cipher/sha256.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gcry_sha256_module_CPPFLAGS) $(CPPFLAGS) $(gcry_sha256_module_CFLAGS) $(CFLAGS) -MT lib/libgcrypt-grub/cipher/gcry_sha256_module-sha256.obj -MD -MP -MF lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_sha256_module-sha256.Tpo -c -o lib/libgcrypt-grub/cipher/gcry_sha256_module-sha256.obj `if test -f 'lib/libgcrypt-grub/cipher/sha256.c'; then $(CYGPATH_W) 'lib/libgcrypt-grub/cipher/sha256.c'; else $(CYGPATH_W) '$(srcdir)/lib/libgcrypt-grub/cipher/sha256.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_sha256_module-sha256.Tpo lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_sha256_module-sha256.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/libgcrypt-grub/cipher/sha256.c' object='lib/libgcrypt-grub/cipher/gcry_sha256_module-sha256.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gcry_sha256_module_CPPFLAGS) $(CPPFLAGS) $(gcry_sha256_module_CFLAGS) $(CFLAGS) -c -o lib/libgcrypt-grub/cipher/gcry_sha256_module-sha256.obj `if test -f 'lib/libgcrypt-grub/cipher/sha256.c'; then $(CYGPATH_W) 'lib/libgcrypt-grub/cipher/sha256.c'; else $(CYGPATH_W) '$(srcdir)/lib/libgcrypt-grub/cipher/sha256.c'; fi` - -lib/libgcrypt-grub/cipher/gcry_sha512_module-sha512.o: lib/libgcrypt-grub/cipher/sha512.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gcry_sha512_module_CPPFLAGS) $(CPPFLAGS) $(gcry_sha512_module_CFLAGS) $(CFLAGS) -MT lib/libgcrypt-grub/cipher/gcry_sha512_module-sha512.o -MD -MP -MF lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_sha512_module-sha512.Tpo -c -o lib/libgcrypt-grub/cipher/gcry_sha512_module-sha512.o `test -f 'lib/libgcrypt-grub/cipher/sha512.c' || echo '$(srcdir)/'`lib/libgcrypt-grub/cipher/sha512.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_sha512_module-sha512.Tpo lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_sha512_module-sha512.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/libgcrypt-grub/cipher/sha512.c' object='lib/libgcrypt-grub/cipher/gcry_sha512_module-sha512.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gcry_sha512_module_CPPFLAGS) $(CPPFLAGS) $(gcry_sha512_module_CFLAGS) $(CFLAGS) -c -o lib/libgcrypt-grub/cipher/gcry_sha512_module-sha512.o `test -f 'lib/libgcrypt-grub/cipher/sha512.c' || echo '$(srcdir)/'`lib/libgcrypt-grub/cipher/sha512.c - -lib/libgcrypt-grub/cipher/gcry_sha512_module-sha512.obj: lib/libgcrypt-grub/cipher/sha512.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gcry_sha512_module_CPPFLAGS) $(CPPFLAGS) $(gcry_sha512_module_CFLAGS) $(CFLAGS) -MT lib/libgcrypt-grub/cipher/gcry_sha512_module-sha512.obj -MD -MP -MF lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_sha512_module-sha512.Tpo -c -o lib/libgcrypt-grub/cipher/gcry_sha512_module-sha512.obj `if test -f 'lib/libgcrypt-grub/cipher/sha512.c'; then $(CYGPATH_W) 'lib/libgcrypt-grub/cipher/sha512.c'; else $(CYGPATH_W) '$(srcdir)/lib/libgcrypt-grub/cipher/sha512.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_sha512_module-sha512.Tpo lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_sha512_module-sha512.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/libgcrypt-grub/cipher/sha512.c' object='lib/libgcrypt-grub/cipher/gcry_sha512_module-sha512.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gcry_sha512_module_CPPFLAGS) $(CPPFLAGS) $(gcry_sha512_module_CFLAGS) $(CFLAGS) -c -o lib/libgcrypt-grub/cipher/gcry_sha512_module-sha512.obj `if test -f 'lib/libgcrypt-grub/cipher/sha512.c'; then $(CYGPATH_W) 'lib/libgcrypt-grub/cipher/sha512.c'; else $(CYGPATH_W) '$(srcdir)/lib/libgcrypt-grub/cipher/sha512.c'; fi` - -lib/libgcrypt-grub/cipher/gcry_tiger_module-tiger.o: lib/libgcrypt-grub/cipher/tiger.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gcry_tiger_module_CPPFLAGS) $(CPPFLAGS) $(gcry_tiger_module_CFLAGS) $(CFLAGS) -MT lib/libgcrypt-grub/cipher/gcry_tiger_module-tiger.o -MD -MP -MF lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_tiger_module-tiger.Tpo -c -o lib/libgcrypt-grub/cipher/gcry_tiger_module-tiger.o `test -f 'lib/libgcrypt-grub/cipher/tiger.c' || echo '$(srcdir)/'`lib/libgcrypt-grub/cipher/tiger.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_tiger_module-tiger.Tpo lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_tiger_module-tiger.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/libgcrypt-grub/cipher/tiger.c' object='lib/libgcrypt-grub/cipher/gcry_tiger_module-tiger.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gcry_tiger_module_CPPFLAGS) $(CPPFLAGS) $(gcry_tiger_module_CFLAGS) $(CFLAGS) -c -o lib/libgcrypt-grub/cipher/gcry_tiger_module-tiger.o `test -f 'lib/libgcrypt-grub/cipher/tiger.c' || echo '$(srcdir)/'`lib/libgcrypt-grub/cipher/tiger.c - -lib/libgcrypt-grub/cipher/gcry_tiger_module-tiger.obj: lib/libgcrypt-grub/cipher/tiger.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gcry_tiger_module_CPPFLAGS) $(CPPFLAGS) $(gcry_tiger_module_CFLAGS) $(CFLAGS) -MT lib/libgcrypt-grub/cipher/gcry_tiger_module-tiger.obj -MD -MP -MF lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_tiger_module-tiger.Tpo -c -o lib/libgcrypt-grub/cipher/gcry_tiger_module-tiger.obj `if test -f 'lib/libgcrypt-grub/cipher/tiger.c'; then $(CYGPATH_W) 'lib/libgcrypt-grub/cipher/tiger.c'; else $(CYGPATH_W) '$(srcdir)/lib/libgcrypt-grub/cipher/tiger.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_tiger_module-tiger.Tpo lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_tiger_module-tiger.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/libgcrypt-grub/cipher/tiger.c' object='lib/libgcrypt-grub/cipher/gcry_tiger_module-tiger.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gcry_tiger_module_CPPFLAGS) $(CPPFLAGS) $(gcry_tiger_module_CFLAGS) $(CFLAGS) -c -o lib/libgcrypt-grub/cipher/gcry_tiger_module-tiger.obj `if test -f 'lib/libgcrypt-grub/cipher/tiger.c'; then $(CYGPATH_W) 'lib/libgcrypt-grub/cipher/tiger.c'; else $(CYGPATH_W) '$(srcdir)/lib/libgcrypt-grub/cipher/tiger.c'; fi` - -lib/libgcrypt-grub/cipher/gcry_twofish_module-twofish.o: lib/libgcrypt-grub/cipher/twofish.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gcry_twofish_module_CPPFLAGS) $(CPPFLAGS) $(gcry_twofish_module_CFLAGS) $(CFLAGS) -MT lib/libgcrypt-grub/cipher/gcry_twofish_module-twofish.o -MD -MP -MF lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_twofish_module-twofish.Tpo -c -o lib/libgcrypt-grub/cipher/gcry_twofish_module-twofish.o `test -f 'lib/libgcrypt-grub/cipher/twofish.c' || echo '$(srcdir)/'`lib/libgcrypt-grub/cipher/twofish.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_twofish_module-twofish.Tpo lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_twofish_module-twofish.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/libgcrypt-grub/cipher/twofish.c' object='lib/libgcrypt-grub/cipher/gcry_twofish_module-twofish.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gcry_twofish_module_CPPFLAGS) $(CPPFLAGS) $(gcry_twofish_module_CFLAGS) $(CFLAGS) -c -o lib/libgcrypt-grub/cipher/gcry_twofish_module-twofish.o `test -f 'lib/libgcrypt-grub/cipher/twofish.c' || echo '$(srcdir)/'`lib/libgcrypt-grub/cipher/twofish.c - -lib/libgcrypt-grub/cipher/gcry_twofish_module-twofish.obj: lib/libgcrypt-grub/cipher/twofish.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gcry_twofish_module_CPPFLAGS) $(CPPFLAGS) $(gcry_twofish_module_CFLAGS) $(CFLAGS) -MT lib/libgcrypt-grub/cipher/gcry_twofish_module-twofish.obj -MD -MP -MF lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_twofish_module-twofish.Tpo -c -o lib/libgcrypt-grub/cipher/gcry_twofish_module-twofish.obj `if test -f 'lib/libgcrypt-grub/cipher/twofish.c'; then $(CYGPATH_W) 'lib/libgcrypt-grub/cipher/twofish.c'; else $(CYGPATH_W) '$(srcdir)/lib/libgcrypt-grub/cipher/twofish.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_twofish_module-twofish.Tpo lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_twofish_module-twofish.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/libgcrypt-grub/cipher/twofish.c' object='lib/libgcrypt-grub/cipher/gcry_twofish_module-twofish.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gcry_twofish_module_CPPFLAGS) $(CPPFLAGS) $(gcry_twofish_module_CFLAGS) $(CFLAGS) -c -o lib/libgcrypt-grub/cipher/gcry_twofish_module-twofish.obj `if test -f 'lib/libgcrypt-grub/cipher/twofish.c'; then $(CYGPATH_W) 'lib/libgcrypt-grub/cipher/twofish.c'; else $(CYGPATH_W) '$(srcdir)/lib/libgcrypt-grub/cipher/twofish.c'; fi` - -lib/libgcrypt-grub/cipher/gcry_whirlpool_module-whirlpool.o: lib/libgcrypt-grub/cipher/whirlpool.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gcry_whirlpool_module_CPPFLAGS) $(CPPFLAGS) $(gcry_whirlpool_module_CFLAGS) $(CFLAGS) -MT lib/libgcrypt-grub/cipher/gcry_whirlpool_module-whirlpool.o -MD -MP -MF lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_whirlpool_module-whirlpool.Tpo -c -o lib/libgcrypt-grub/cipher/gcry_whirlpool_module-whirlpool.o `test -f 'lib/libgcrypt-grub/cipher/whirlpool.c' || echo '$(srcdir)/'`lib/libgcrypt-grub/cipher/whirlpool.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_whirlpool_module-whirlpool.Tpo lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_whirlpool_module-whirlpool.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/libgcrypt-grub/cipher/whirlpool.c' object='lib/libgcrypt-grub/cipher/gcry_whirlpool_module-whirlpool.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gcry_whirlpool_module_CPPFLAGS) $(CPPFLAGS) $(gcry_whirlpool_module_CFLAGS) $(CFLAGS) -c -o lib/libgcrypt-grub/cipher/gcry_whirlpool_module-whirlpool.o `test -f 'lib/libgcrypt-grub/cipher/whirlpool.c' || echo '$(srcdir)/'`lib/libgcrypt-grub/cipher/whirlpool.c - -lib/libgcrypt-grub/cipher/gcry_whirlpool_module-whirlpool.obj: lib/libgcrypt-grub/cipher/whirlpool.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gcry_whirlpool_module_CPPFLAGS) $(CPPFLAGS) $(gcry_whirlpool_module_CFLAGS) $(CFLAGS) -MT lib/libgcrypt-grub/cipher/gcry_whirlpool_module-whirlpool.obj -MD -MP -MF lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_whirlpool_module-whirlpool.Tpo -c -o lib/libgcrypt-grub/cipher/gcry_whirlpool_module-whirlpool.obj `if test -f 'lib/libgcrypt-grub/cipher/whirlpool.c'; then $(CYGPATH_W) 'lib/libgcrypt-grub/cipher/whirlpool.c'; else $(CYGPATH_W) '$(srcdir)/lib/libgcrypt-grub/cipher/whirlpool.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_whirlpool_module-whirlpool.Tpo lib/libgcrypt-grub/cipher/$(DEPDIR)/gcry_whirlpool_module-whirlpool.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/libgcrypt-grub/cipher/whirlpool.c' object='lib/libgcrypt-grub/cipher/gcry_whirlpool_module-whirlpool.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gcry_whirlpool_module_CPPFLAGS) $(CPPFLAGS) $(gcry_whirlpool_module_CFLAGS) $(CFLAGS) -c -o lib/libgcrypt-grub/cipher/gcry_whirlpool_module-whirlpool.obj `if test -f 'lib/libgcrypt-grub/cipher/whirlpool.c'; then $(CYGPATH_W) 'lib/libgcrypt-grub/cipher/whirlpool.c'; else $(CYGPATH_W) '$(srcdir)/lib/libgcrypt-grub/cipher/whirlpool.c'; fi` - -gdb/i386/gdb_module-idt.o: gdb/i386/idt.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gdb_module_CPPFLAGS) $(CPPFLAGS) $(gdb_module_CFLAGS) $(CFLAGS) -MT gdb/i386/gdb_module-idt.o -MD -MP -MF gdb/i386/$(DEPDIR)/gdb_module-idt.Tpo -c -o gdb/i386/gdb_module-idt.o `test -f 'gdb/i386/idt.c' || echo '$(srcdir)/'`gdb/i386/idt.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) gdb/i386/$(DEPDIR)/gdb_module-idt.Tpo gdb/i386/$(DEPDIR)/gdb_module-idt.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='gdb/i386/idt.c' object='gdb/i386/gdb_module-idt.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gdb_module_CPPFLAGS) $(CPPFLAGS) $(gdb_module_CFLAGS) $(CFLAGS) -c -o gdb/i386/gdb_module-idt.o `test -f 'gdb/i386/idt.c' || echo '$(srcdir)/'`gdb/i386/idt.c - -gdb/i386/gdb_module-idt.obj: gdb/i386/idt.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gdb_module_CPPFLAGS) $(CPPFLAGS) $(gdb_module_CFLAGS) $(CFLAGS) -MT gdb/i386/gdb_module-idt.obj -MD -MP -MF gdb/i386/$(DEPDIR)/gdb_module-idt.Tpo -c -o gdb/i386/gdb_module-idt.obj `if test -f 'gdb/i386/idt.c'; then $(CYGPATH_W) 'gdb/i386/idt.c'; else $(CYGPATH_W) '$(srcdir)/gdb/i386/idt.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) gdb/i386/$(DEPDIR)/gdb_module-idt.Tpo gdb/i386/$(DEPDIR)/gdb_module-idt.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='gdb/i386/idt.c' object='gdb/i386/gdb_module-idt.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gdb_module_CPPFLAGS) $(CPPFLAGS) $(gdb_module_CFLAGS) $(CFLAGS) -c -o gdb/i386/gdb_module-idt.obj `if test -f 'gdb/i386/idt.c'; then $(CYGPATH_W) 'gdb/i386/idt.c'; else $(CYGPATH_W) '$(srcdir)/gdb/i386/idt.c'; fi` - -gdb/i386/gdb_module-signal.o: gdb/i386/signal.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gdb_module_CPPFLAGS) $(CPPFLAGS) $(gdb_module_CFLAGS) $(CFLAGS) -MT gdb/i386/gdb_module-signal.o -MD -MP -MF gdb/i386/$(DEPDIR)/gdb_module-signal.Tpo -c -o gdb/i386/gdb_module-signal.o `test -f 'gdb/i386/signal.c' || echo '$(srcdir)/'`gdb/i386/signal.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) gdb/i386/$(DEPDIR)/gdb_module-signal.Tpo gdb/i386/$(DEPDIR)/gdb_module-signal.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='gdb/i386/signal.c' object='gdb/i386/gdb_module-signal.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gdb_module_CPPFLAGS) $(CPPFLAGS) $(gdb_module_CFLAGS) $(CFLAGS) -c -o gdb/i386/gdb_module-signal.o `test -f 'gdb/i386/signal.c' || echo '$(srcdir)/'`gdb/i386/signal.c - -gdb/i386/gdb_module-signal.obj: gdb/i386/signal.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gdb_module_CPPFLAGS) $(CPPFLAGS) $(gdb_module_CFLAGS) $(CFLAGS) -MT gdb/i386/gdb_module-signal.obj -MD -MP -MF gdb/i386/$(DEPDIR)/gdb_module-signal.Tpo -c -o gdb/i386/gdb_module-signal.obj `if test -f 'gdb/i386/signal.c'; then $(CYGPATH_W) 'gdb/i386/signal.c'; else $(CYGPATH_W) '$(srcdir)/gdb/i386/signal.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) gdb/i386/$(DEPDIR)/gdb_module-signal.Tpo gdb/i386/$(DEPDIR)/gdb_module-signal.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='gdb/i386/signal.c' object='gdb/i386/gdb_module-signal.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gdb_module_CPPFLAGS) $(CPPFLAGS) $(gdb_module_CFLAGS) $(CFLAGS) -c -o gdb/i386/gdb_module-signal.obj `if test -f 'gdb/i386/signal.c'; then $(CYGPATH_W) 'gdb/i386/signal.c'; else $(CYGPATH_W) '$(srcdir)/gdb/i386/signal.c'; fi` - -gdb/gdb_module-cstub.o: gdb/cstub.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gdb_module_CPPFLAGS) $(CPPFLAGS) $(gdb_module_CFLAGS) $(CFLAGS) -MT gdb/gdb_module-cstub.o -MD -MP -MF gdb/$(DEPDIR)/gdb_module-cstub.Tpo -c -o gdb/gdb_module-cstub.o `test -f 'gdb/cstub.c' || echo '$(srcdir)/'`gdb/cstub.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) gdb/$(DEPDIR)/gdb_module-cstub.Tpo gdb/$(DEPDIR)/gdb_module-cstub.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='gdb/cstub.c' object='gdb/gdb_module-cstub.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gdb_module_CPPFLAGS) $(CPPFLAGS) $(gdb_module_CFLAGS) $(CFLAGS) -c -o gdb/gdb_module-cstub.o `test -f 'gdb/cstub.c' || echo '$(srcdir)/'`gdb/cstub.c - -gdb/gdb_module-cstub.obj: gdb/cstub.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gdb_module_CPPFLAGS) $(CPPFLAGS) $(gdb_module_CFLAGS) $(CFLAGS) -MT gdb/gdb_module-cstub.obj -MD -MP -MF gdb/$(DEPDIR)/gdb_module-cstub.Tpo -c -o gdb/gdb_module-cstub.obj `if test -f 'gdb/cstub.c'; then $(CYGPATH_W) 'gdb/cstub.c'; else $(CYGPATH_W) '$(srcdir)/gdb/cstub.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) gdb/$(DEPDIR)/gdb_module-cstub.Tpo gdb/$(DEPDIR)/gdb_module-cstub.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='gdb/cstub.c' object='gdb/gdb_module-cstub.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gdb_module_CPPFLAGS) $(CPPFLAGS) $(gdb_module_CFLAGS) $(CFLAGS) -c -o gdb/gdb_module-cstub.obj `if test -f 'gdb/cstub.c'; then $(CYGPATH_W) 'gdb/cstub.c'; else $(CYGPATH_W) '$(srcdir)/gdb/cstub.c'; fi` - -gdb/gdb_module-gdb.o: gdb/gdb.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gdb_module_CPPFLAGS) $(CPPFLAGS) $(gdb_module_CFLAGS) $(CFLAGS) -MT gdb/gdb_module-gdb.o -MD -MP -MF gdb/$(DEPDIR)/gdb_module-gdb.Tpo -c -o gdb/gdb_module-gdb.o `test -f 'gdb/gdb.c' || echo '$(srcdir)/'`gdb/gdb.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) gdb/$(DEPDIR)/gdb_module-gdb.Tpo gdb/$(DEPDIR)/gdb_module-gdb.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='gdb/gdb.c' object='gdb/gdb_module-gdb.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gdb_module_CPPFLAGS) $(CPPFLAGS) $(gdb_module_CFLAGS) $(CFLAGS) -c -o gdb/gdb_module-gdb.o `test -f 'gdb/gdb.c' || echo '$(srcdir)/'`gdb/gdb.c - -gdb/gdb_module-gdb.obj: gdb/gdb.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gdb_module_CPPFLAGS) $(CPPFLAGS) $(gdb_module_CFLAGS) $(CFLAGS) -MT gdb/gdb_module-gdb.obj -MD -MP -MF gdb/$(DEPDIR)/gdb_module-gdb.Tpo -c -o gdb/gdb_module-gdb.obj `if test -f 'gdb/gdb.c'; then $(CYGPATH_W) 'gdb/gdb.c'; else $(CYGPATH_W) '$(srcdir)/gdb/gdb.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) gdb/$(DEPDIR)/gdb_module-gdb.Tpo gdb/$(DEPDIR)/gdb_module-gdb.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='gdb/gdb.c' object='gdb/gdb_module-gdb.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gdb_module_CPPFLAGS) $(CPPFLAGS) $(gdb_module_CFLAGS) $(CFLAGS) -c -o gdb/gdb_module-gdb.obj `if test -f 'gdb/gdb.c'; then $(CYGPATH_W) 'gdb/gdb.c'; else $(CYGPATH_W) '$(srcdir)/gdb/gdb.c'; fi` - -disk/geli_module-geli.o: disk/geli.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(geli_module_CPPFLAGS) $(CPPFLAGS) $(geli_module_CFLAGS) $(CFLAGS) -MT disk/geli_module-geli.o -MD -MP -MF disk/$(DEPDIR)/geli_module-geli.Tpo -c -o disk/geli_module-geli.o `test -f 'disk/geli.c' || echo '$(srcdir)/'`disk/geli.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) disk/$(DEPDIR)/geli_module-geli.Tpo disk/$(DEPDIR)/geli_module-geli.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='disk/geli.c' object='disk/geli_module-geli.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(geli_module_CPPFLAGS) $(CPPFLAGS) $(geli_module_CFLAGS) $(CFLAGS) -c -o disk/geli_module-geli.o `test -f 'disk/geli.c' || echo '$(srcdir)/'`disk/geli.c - -disk/geli_module-geli.obj: disk/geli.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(geli_module_CPPFLAGS) $(CPPFLAGS) $(geli_module_CFLAGS) $(CFLAGS) -MT disk/geli_module-geli.obj -MD -MP -MF disk/$(DEPDIR)/geli_module-geli.Tpo -c -o disk/geli_module-geli.obj `if test -f 'disk/geli.c'; then $(CYGPATH_W) 'disk/geli.c'; else $(CYGPATH_W) '$(srcdir)/disk/geli.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) disk/$(DEPDIR)/geli_module-geli.Tpo disk/$(DEPDIR)/geli_module-geli.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='disk/geli.c' object='disk/geli_module-geli.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(geli_module_CPPFLAGS) $(CPPFLAGS) $(geli_module_CFLAGS) $(CFLAGS) -c -o disk/geli_module-geli.obj `if test -f 'disk/geli.c'; then $(CYGPATH_W) 'disk/geli.c'; else $(CYGPATH_W) '$(srcdir)/disk/geli.c'; fi` - -gettext/gettext_module-gettext.o: gettext/gettext.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gettext_module_CPPFLAGS) $(CPPFLAGS) $(gettext_module_CFLAGS) $(CFLAGS) -MT gettext/gettext_module-gettext.o -MD -MP -MF gettext/$(DEPDIR)/gettext_module-gettext.Tpo -c -o gettext/gettext_module-gettext.o `test -f 'gettext/gettext.c' || echo '$(srcdir)/'`gettext/gettext.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) gettext/$(DEPDIR)/gettext_module-gettext.Tpo gettext/$(DEPDIR)/gettext_module-gettext.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='gettext/gettext.c' object='gettext/gettext_module-gettext.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gettext_module_CPPFLAGS) $(CPPFLAGS) $(gettext_module_CFLAGS) $(CFLAGS) -c -o gettext/gettext_module-gettext.o `test -f 'gettext/gettext.c' || echo '$(srcdir)/'`gettext/gettext.c - -gettext/gettext_module-gettext.obj: gettext/gettext.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gettext_module_CPPFLAGS) $(CPPFLAGS) $(gettext_module_CFLAGS) $(CFLAGS) -MT gettext/gettext_module-gettext.obj -MD -MP -MF gettext/$(DEPDIR)/gettext_module-gettext.Tpo -c -o gettext/gettext_module-gettext.obj `if test -f 'gettext/gettext.c'; then $(CYGPATH_W) 'gettext/gettext.c'; else $(CYGPATH_W) '$(srcdir)/gettext/gettext.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) gettext/$(DEPDIR)/gettext_module-gettext.Tpo gettext/$(DEPDIR)/gettext_module-gettext.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='gettext/gettext.c' object='gettext/gettext_module-gettext.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gettext_module_CPPFLAGS) $(CPPFLAGS) $(gettext_module_CFLAGS) $(CFLAGS) -c -o gettext/gettext_module-gettext.obj `if test -f 'gettext/gettext.c'; then $(CYGPATH_W) 'gettext/gettext.c'; else $(CYGPATH_W) '$(srcdir)/gettext/gettext.c'; fi` - -gfxmenu/gfxmenu_module-gfxmenu.o: gfxmenu/gfxmenu.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gfxmenu_module_CPPFLAGS) $(CPPFLAGS) $(gfxmenu_module_CFLAGS) $(CFLAGS) -MT gfxmenu/gfxmenu_module-gfxmenu.o -MD -MP -MF gfxmenu/$(DEPDIR)/gfxmenu_module-gfxmenu.Tpo -c -o gfxmenu/gfxmenu_module-gfxmenu.o `test -f 'gfxmenu/gfxmenu.c' || echo '$(srcdir)/'`gfxmenu/gfxmenu.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) gfxmenu/$(DEPDIR)/gfxmenu_module-gfxmenu.Tpo gfxmenu/$(DEPDIR)/gfxmenu_module-gfxmenu.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='gfxmenu/gfxmenu.c' object='gfxmenu/gfxmenu_module-gfxmenu.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gfxmenu_module_CPPFLAGS) $(CPPFLAGS) $(gfxmenu_module_CFLAGS) $(CFLAGS) -c -o gfxmenu/gfxmenu_module-gfxmenu.o `test -f 'gfxmenu/gfxmenu.c' || echo '$(srcdir)/'`gfxmenu/gfxmenu.c - -gfxmenu/gfxmenu_module-gfxmenu.obj: gfxmenu/gfxmenu.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gfxmenu_module_CPPFLAGS) $(CPPFLAGS) $(gfxmenu_module_CFLAGS) $(CFLAGS) -MT gfxmenu/gfxmenu_module-gfxmenu.obj -MD -MP -MF gfxmenu/$(DEPDIR)/gfxmenu_module-gfxmenu.Tpo -c -o gfxmenu/gfxmenu_module-gfxmenu.obj `if test -f 'gfxmenu/gfxmenu.c'; then $(CYGPATH_W) 'gfxmenu/gfxmenu.c'; else $(CYGPATH_W) '$(srcdir)/gfxmenu/gfxmenu.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) gfxmenu/$(DEPDIR)/gfxmenu_module-gfxmenu.Tpo gfxmenu/$(DEPDIR)/gfxmenu_module-gfxmenu.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='gfxmenu/gfxmenu.c' object='gfxmenu/gfxmenu_module-gfxmenu.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gfxmenu_module_CPPFLAGS) $(CPPFLAGS) $(gfxmenu_module_CFLAGS) $(CFLAGS) -c -o gfxmenu/gfxmenu_module-gfxmenu.obj `if test -f 'gfxmenu/gfxmenu.c'; then $(CYGPATH_W) 'gfxmenu/gfxmenu.c'; else $(CYGPATH_W) '$(srcdir)/gfxmenu/gfxmenu.c'; fi` - -gfxmenu/gfxmenu_module-view.o: gfxmenu/view.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gfxmenu_module_CPPFLAGS) $(CPPFLAGS) $(gfxmenu_module_CFLAGS) $(CFLAGS) -MT gfxmenu/gfxmenu_module-view.o -MD -MP -MF gfxmenu/$(DEPDIR)/gfxmenu_module-view.Tpo -c -o gfxmenu/gfxmenu_module-view.o `test -f 'gfxmenu/view.c' || echo '$(srcdir)/'`gfxmenu/view.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) gfxmenu/$(DEPDIR)/gfxmenu_module-view.Tpo gfxmenu/$(DEPDIR)/gfxmenu_module-view.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='gfxmenu/view.c' object='gfxmenu/gfxmenu_module-view.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gfxmenu_module_CPPFLAGS) $(CPPFLAGS) $(gfxmenu_module_CFLAGS) $(CFLAGS) -c -o gfxmenu/gfxmenu_module-view.o `test -f 'gfxmenu/view.c' || echo '$(srcdir)/'`gfxmenu/view.c - -gfxmenu/gfxmenu_module-view.obj: gfxmenu/view.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gfxmenu_module_CPPFLAGS) $(CPPFLAGS) $(gfxmenu_module_CFLAGS) $(CFLAGS) -MT gfxmenu/gfxmenu_module-view.obj -MD -MP -MF gfxmenu/$(DEPDIR)/gfxmenu_module-view.Tpo -c -o gfxmenu/gfxmenu_module-view.obj `if test -f 'gfxmenu/view.c'; then $(CYGPATH_W) 'gfxmenu/view.c'; else $(CYGPATH_W) '$(srcdir)/gfxmenu/view.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) gfxmenu/$(DEPDIR)/gfxmenu_module-view.Tpo gfxmenu/$(DEPDIR)/gfxmenu_module-view.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='gfxmenu/view.c' object='gfxmenu/gfxmenu_module-view.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gfxmenu_module_CPPFLAGS) $(CPPFLAGS) $(gfxmenu_module_CFLAGS) $(CFLAGS) -c -o gfxmenu/gfxmenu_module-view.obj `if test -f 'gfxmenu/view.c'; then $(CYGPATH_W) 'gfxmenu/view.c'; else $(CYGPATH_W) '$(srcdir)/gfxmenu/view.c'; fi` - -gfxmenu/gfxmenu_module-font.o: gfxmenu/font.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gfxmenu_module_CPPFLAGS) $(CPPFLAGS) $(gfxmenu_module_CFLAGS) $(CFLAGS) -MT gfxmenu/gfxmenu_module-font.o -MD -MP -MF gfxmenu/$(DEPDIR)/gfxmenu_module-font.Tpo -c -o gfxmenu/gfxmenu_module-font.o `test -f 'gfxmenu/font.c' || echo '$(srcdir)/'`gfxmenu/font.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) gfxmenu/$(DEPDIR)/gfxmenu_module-font.Tpo gfxmenu/$(DEPDIR)/gfxmenu_module-font.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='gfxmenu/font.c' object='gfxmenu/gfxmenu_module-font.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gfxmenu_module_CPPFLAGS) $(CPPFLAGS) $(gfxmenu_module_CFLAGS) $(CFLAGS) -c -o gfxmenu/gfxmenu_module-font.o `test -f 'gfxmenu/font.c' || echo '$(srcdir)/'`gfxmenu/font.c - -gfxmenu/gfxmenu_module-font.obj: gfxmenu/font.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gfxmenu_module_CPPFLAGS) $(CPPFLAGS) $(gfxmenu_module_CFLAGS) $(CFLAGS) -MT gfxmenu/gfxmenu_module-font.obj -MD -MP -MF gfxmenu/$(DEPDIR)/gfxmenu_module-font.Tpo -c -o gfxmenu/gfxmenu_module-font.obj `if test -f 'gfxmenu/font.c'; then $(CYGPATH_W) 'gfxmenu/font.c'; else $(CYGPATH_W) '$(srcdir)/gfxmenu/font.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) gfxmenu/$(DEPDIR)/gfxmenu_module-font.Tpo gfxmenu/$(DEPDIR)/gfxmenu_module-font.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='gfxmenu/font.c' object='gfxmenu/gfxmenu_module-font.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gfxmenu_module_CPPFLAGS) $(CPPFLAGS) $(gfxmenu_module_CFLAGS) $(CFLAGS) -c -o gfxmenu/gfxmenu_module-font.obj `if test -f 'gfxmenu/font.c'; then $(CYGPATH_W) 'gfxmenu/font.c'; else $(CYGPATH_W) '$(srcdir)/gfxmenu/font.c'; fi` - -gfxmenu/gfxmenu_module-icon_manager.o: gfxmenu/icon_manager.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gfxmenu_module_CPPFLAGS) $(CPPFLAGS) $(gfxmenu_module_CFLAGS) $(CFLAGS) -MT gfxmenu/gfxmenu_module-icon_manager.o -MD -MP -MF gfxmenu/$(DEPDIR)/gfxmenu_module-icon_manager.Tpo -c -o gfxmenu/gfxmenu_module-icon_manager.o `test -f 'gfxmenu/icon_manager.c' || echo '$(srcdir)/'`gfxmenu/icon_manager.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) gfxmenu/$(DEPDIR)/gfxmenu_module-icon_manager.Tpo gfxmenu/$(DEPDIR)/gfxmenu_module-icon_manager.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='gfxmenu/icon_manager.c' object='gfxmenu/gfxmenu_module-icon_manager.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gfxmenu_module_CPPFLAGS) $(CPPFLAGS) $(gfxmenu_module_CFLAGS) $(CFLAGS) -c -o gfxmenu/gfxmenu_module-icon_manager.o `test -f 'gfxmenu/icon_manager.c' || echo '$(srcdir)/'`gfxmenu/icon_manager.c - -gfxmenu/gfxmenu_module-icon_manager.obj: gfxmenu/icon_manager.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gfxmenu_module_CPPFLAGS) $(CPPFLAGS) $(gfxmenu_module_CFLAGS) $(CFLAGS) -MT gfxmenu/gfxmenu_module-icon_manager.obj -MD -MP -MF gfxmenu/$(DEPDIR)/gfxmenu_module-icon_manager.Tpo -c -o gfxmenu/gfxmenu_module-icon_manager.obj `if test -f 'gfxmenu/icon_manager.c'; then $(CYGPATH_W) 'gfxmenu/icon_manager.c'; else $(CYGPATH_W) '$(srcdir)/gfxmenu/icon_manager.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) gfxmenu/$(DEPDIR)/gfxmenu_module-icon_manager.Tpo gfxmenu/$(DEPDIR)/gfxmenu_module-icon_manager.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='gfxmenu/icon_manager.c' object='gfxmenu/gfxmenu_module-icon_manager.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gfxmenu_module_CPPFLAGS) $(CPPFLAGS) $(gfxmenu_module_CFLAGS) $(CFLAGS) -c -o gfxmenu/gfxmenu_module-icon_manager.obj `if test -f 'gfxmenu/icon_manager.c'; then $(CYGPATH_W) 'gfxmenu/icon_manager.c'; else $(CYGPATH_W) '$(srcdir)/gfxmenu/icon_manager.c'; fi` - -gfxmenu/gfxmenu_module-theme_loader.o: gfxmenu/theme_loader.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gfxmenu_module_CPPFLAGS) $(CPPFLAGS) $(gfxmenu_module_CFLAGS) $(CFLAGS) -MT gfxmenu/gfxmenu_module-theme_loader.o -MD -MP -MF gfxmenu/$(DEPDIR)/gfxmenu_module-theme_loader.Tpo -c -o gfxmenu/gfxmenu_module-theme_loader.o `test -f 'gfxmenu/theme_loader.c' || echo '$(srcdir)/'`gfxmenu/theme_loader.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) gfxmenu/$(DEPDIR)/gfxmenu_module-theme_loader.Tpo gfxmenu/$(DEPDIR)/gfxmenu_module-theme_loader.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='gfxmenu/theme_loader.c' object='gfxmenu/gfxmenu_module-theme_loader.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gfxmenu_module_CPPFLAGS) $(CPPFLAGS) $(gfxmenu_module_CFLAGS) $(CFLAGS) -c -o gfxmenu/gfxmenu_module-theme_loader.o `test -f 'gfxmenu/theme_loader.c' || echo '$(srcdir)/'`gfxmenu/theme_loader.c - -gfxmenu/gfxmenu_module-theme_loader.obj: gfxmenu/theme_loader.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gfxmenu_module_CPPFLAGS) $(CPPFLAGS) $(gfxmenu_module_CFLAGS) $(CFLAGS) -MT gfxmenu/gfxmenu_module-theme_loader.obj -MD -MP -MF gfxmenu/$(DEPDIR)/gfxmenu_module-theme_loader.Tpo -c -o gfxmenu/gfxmenu_module-theme_loader.obj `if test -f 'gfxmenu/theme_loader.c'; then $(CYGPATH_W) 'gfxmenu/theme_loader.c'; else $(CYGPATH_W) '$(srcdir)/gfxmenu/theme_loader.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) gfxmenu/$(DEPDIR)/gfxmenu_module-theme_loader.Tpo gfxmenu/$(DEPDIR)/gfxmenu_module-theme_loader.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='gfxmenu/theme_loader.c' object='gfxmenu/gfxmenu_module-theme_loader.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gfxmenu_module_CPPFLAGS) $(CPPFLAGS) $(gfxmenu_module_CFLAGS) $(CFLAGS) -c -o gfxmenu/gfxmenu_module-theme_loader.obj `if test -f 'gfxmenu/theme_loader.c'; then $(CYGPATH_W) 'gfxmenu/theme_loader.c'; else $(CYGPATH_W) '$(srcdir)/gfxmenu/theme_loader.c'; fi` - -gfxmenu/gfxmenu_module-widget-box.o: gfxmenu/widget-box.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gfxmenu_module_CPPFLAGS) $(CPPFLAGS) $(gfxmenu_module_CFLAGS) $(CFLAGS) -MT gfxmenu/gfxmenu_module-widget-box.o -MD -MP -MF gfxmenu/$(DEPDIR)/gfxmenu_module-widget-box.Tpo -c -o gfxmenu/gfxmenu_module-widget-box.o `test -f 'gfxmenu/widget-box.c' || echo '$(srcdir)/'`gfxmenu/widget-box.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) gfxmenu/$(DEPDIR)/gfxmenu_module-widget-box.Tpo gfxmenu/$(DEPDIR)/gfxmenu_module-widget-box.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='gfxmenu/widget-box.c' object='gfxmenu/gfxmenu_module-widget-box.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gfxmenu_module_CPPFLAGS) $(CPPFLAGS) $(gfxmenu_module_CFLAGS) $(CFLAGS) -c -o gfxmenu/gfxmenu_module-widget-box.o `test -f 'gfxmenu/widget-box.c' || echo '$(srcdir)/'`gfxmenu/widget-box.c - -gfxmenu/gfxmenu_module-widget-box.obj: gfxmenu/widget-box.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gfxmenu_module_CPPFLAGS) $(CPPFLAGS) $(gfxmenu_module_CFLAGS) $(CFLAGS) -MT gfxmenu/gfxmenu_module-widget-box.obj -MD -MP -MF gfxmenu/$(DEPDIR)/gfxmenu_module-widget-box.Tpo -c -o gfxmenu/gfxmenu_module-widget-box.obj `if test -f 'gfxmenu/widget-box.c'; then $(CYGPATH_W) 'gfxmenu/widget-box.c'; else $(CYGPATH_W) '$(srcdir)/gfxmenu/widget-box.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) gfxmenu/$(DEPDIR)/gfxmenu_module-widget-box.Tpo gfxmenu/$(DEPDIR)/gfxmenu_module-widget-box.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='gfxmenu/widget-box.c' object='gfxmenu/gfxmenu_module-widget-box.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gfxmenu_module_CPPFLAGS) $(CPPFLAGS) $(gfxmenu_module_CFLAGS) $(CFLAGS) -c -o gfxmenu/gfxmenu_module-widget-box.obj `if test -f 'gfxmenu/widget-box.c'; then $(CYGPATH_W) 'gfxmenu/widget-box.c'; else $(CYGPATH_W) '$(srcdir)/gfxmenu/widget-box.c'; fi` - -gfxmenu/gfxmenu_module-gui_canvas.o: gfxmenu/gui_canvas.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gfxmenu_module_CPPFLAGS) $(CPPFLAGS) $(gfxmenu_module_CFLAGS) $(CFLAGS) -MT gfxmenu/gfxmenu_module-gui_canvas.o -MD -MP -MF gfxmenu/$(DEPDIR)/gfxmenu_module-gui_canvas.Tpo -c -o gfxmenu/gfxmenu_module-gui_canvas.o `test -f 'gfxmenu/gui_canvas.c' || echo '$(srcdir)/'`gfxmenu/gui_canvas.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) gfxmenu/$(DEPDIR)/gfxmenu_module-gui_canvas.Tpo gfxmenu/$(DEPDIR)/gfxmenu_module-gui_canvas.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='gfxmenu/gui_canvas.c' object='gfxmenu/gfxmenu_module-gui_canvas.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gfxmenu_module_CPPFLAGS) $(CPPFLAGS) $(gfxmenu_module_CFLAGS) $(CFLAGS) -c -o gfxmenu/gfxmenu_module-gui_canvas.o `test -f 'gfxmenu/gui_canvas.c' || echo '$(srcdir)/'`gfxmenu/gui_canvas.c - -gfxmenu/gfxmenu_module-gui_canvas.obj: gfxmenu/gui_canvas.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gfxmenu_module_CPPFLAGS) $(CPPFLAGS) $(gfxmenu_module_CFLAGS) $(CFLAGS) -MT gfxmenu/gfxmenu_module-gui_canvas.obj -MD -MP -MF gfxmenu/$(DEPDIR)/gfxmenu_module-gui_canvas.Tpo -c -o gfxmenu/gfxmenu_module-gui_canvas.obj `if test -f 'gfxmenu/gui_canvas.c'; then $(CYGPATH_W) 'gfxmenu/gui_canvas.c'; else $(CYGPATH_W) '$(srcdir)/gfxmenu/gui_canvas.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) gfxmenu/$(DEPDIR)/gfxmenu_module-gui_canvas.Tpo gfxmenu/$(DEPDIR)/gfxmenu_module-gui_canvas.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='gfxmenu/gui_canvas.c' object='gfxmenu/gfxmenu_module-gui_canvas.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gfxmenu_module_CPPFLAGS) $(CPPFLAGS) $(gfxmenu_module_CFLAGS) $(CFLAGS) -c -o gfxmenu/gfxmenu_module-gui_canvas.obj `if test -f 'gfxmenu/gui_canvas.c'; then $(CYGPATH_W) 'gfxmenu/gui_canvas.c'; else $(CYGPATH_W) '$(srcdir)/gfxmenu/gui_canvas.c'; fi` - -gfxmenu/gfxmenu_module-gui_circular_progress.o: gfxmenu/gui_circular_progress.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gfxmenu_module_CPPFLAGS) $(CPPFLAGS) $(gfxmenu_module_CFLAGS) $(CFLAGS) -MT gfxmenu/gfxmenu_module-gui_circular_progress.o -MD -MP -MF gfxmenu/$(DEPDIR)/gfxmenu_module-gui_circular_progress.Tpo -c -o gfxmenu/gfxmenu_module-gui_circular_progress.o `test -f 'gfxmenu/gui_circular_progress.c' || echo '$(srcdir)/'`gfxmenu/gui_circular_progress.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) gfxmenu/$(DEPDIR)/gfxmenu_module-gui_circular_progress.Tpo gfxmenu/$(DEPDIR)/gfxmenu_module-gui_circular_progress.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='gfxmenu/gui_circular_progress.c' object='gfxmenu/gfxmenu_module-gui_circular_progress.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gfxmenu_module_CPPFLAGS) $(CPPFLAGS) $(gfxmenu_module_CFLAGS) $(CFLAGS) -c -o gfxmenu/gfxmenu_module-gui_circular_progress.o `test -f 'gfxmenu/gui_circular_progress.c' || echo '$(srcdir)/'`gfxmenu/gui_circular_progress.c - -gfxmenu/gfxmenu_module-gui_circular_progress.obj: gfxmenu/gui_circular_progress.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gfxmenu_module_CPPFLAGS) $(CPPFLAGS) $(gfxmenu_module_CFLAGS) $(CFLAGS) -MT gfxmenu/gfxmenu_module-gui_circular_progress.obj -MD -MP -MF gfxmenu/$(DEPDIR)/gfxmenu_module-gui_circular_progress.Tpo -c -o gfxmenu/gfxmenu_module-gui_circular_progress.obj `if test -f 'gfxmenu/gui_circular_progress.c'; then $(CYGPATH_W) 'gfxmenu/gui_circular_progress.c'; else $(CYGPATH_W) '$(srcdir)/gfxmenu/gui_circular_progress.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) gfxmenu/$(DEPDIR)/gfxmenu_module-gui_circular_progress.Tpo gfxmenu/$(DEPDIR)/gfxmenu_module-gui_circular_progress.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='gfxmenu/gui_circular_progress.c' object='gfxmenu/gfxmenu_module-gui_circular_progress.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gfxmenu_module_CPPFLAGS) $(CPPFLAGS) $(gfxmenu_module_CFLAGS) $(CFLAGS) -c -o gfxmenu/gfxmenu_module-gui_circular_progress.obj `if test -f 'gfxmenu/gui_circular_progress.c'; then $(CYGPATH_W) 'gfxmenu/gui_circular_progress.c'; else $(CYGPATH_W) '$(srcdir)/gfxmenu/gui_circular_progress.c'; fi` - -gfxmenu/gfxmenu_module-gui_box.o: gfxmenu/gui_box.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gfxmenu_module_CPPFLAGS) $(CPPFLAGS) $(gfxmenu_module_CFLAGS) $(CFLAGS) -MT gfxmenu/gfxmenu_module-gui_box.o -MD -MP -MF gfxmenu/$(DEPDIR)/gfxmenu_module-gui_box.Tpo -c -o gfxmenu/gfxmenu_module-gui_box.o `test -f 'gfxmenu/gui_box.c' || echo '$(srcdir)/'`gfxmenu/gui_box.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) gfxmenu/$(DEPDIR)/gfxmenu_module-gui_box.Tpo gfxmenu/$(DEPDIR)/gfxmenu_module-gui_box.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='gfxmenu/gui_box.c' object='gfxmenu/gfxmenu_module-gui_box.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gfxmenu_module_CPPFLAGS) $(CPPFLAGS) $(gfxmenu_module_CFLAGS) $(CFLAGS) -c -o gfxmenu/gfxmenu_module-gui_box.o `test -f 'gfxmenu/gui_box.c' || echo '$(srcdir)/'`gfxmenu/gui_box.c - -gfxmenu/gfxmenu_module-gui_box.obj: gfxmenu/gui_box.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gfxmenu_module_CPPFLAGS) $(CPPFLAGS) $(gfxmenu_module_CFLAGS) $(CFLAGS) -MT gfxmenu/gfxmenu_module-gui_box.obj -MD -MP -MF gfxmenu/$(DEPDIR)/gfxmenu_module-gui_box.Tpo -c -o gfxmenu/gfxmenu_module-gui_box.obj `if test -f 'gfxmenu/gui_box.c'; then $(CYGPATH_W) 'gfxmenu/gui_box.c'; else $(CYGPATH_W) '$(srcdir)/gfxmenu/gui_box.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) gfxmenu/$(DEPDIR)/gfxmenu_module-gui_box.Tpo gfxmenu/$(DEPDIR)/gfxmenu_module-gui_box.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='gfxmenu/gui_box.c' object='gfxmenu/gfxmenu_module-gui_box.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gfxmenu_module_CPPFLAGS) $(CPPFLAGS) $(gfxmenu_module_CFLAGS) $(CFLAGS) -c -o gfxmenu/gfxmenu_module-gui_box.obj `if test -f 'gfxmenu/gui_box.c'; then $(CYGPATH_W) 'gfxmenu/gui_box.c'; else $(CYGPATH_W) '$(srcdir)/gfxmenu/gui_box.c'; fi` - -gfxmenu/gfxmenu_module-gui_label.o: gfxmenu/gui_label.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gfxmenu_module_CPPFLAGS) $(CPPFLAGS) $(gfxmenu_module_CFLAGS) $(CFLAGS) -MT gfxmenu/gfxmenu_module-gui_label.o -MD -MP -MF gfxmenu/$(DEPDIR)/gfxmenu_module-gui_label.Tpo -c -o gfxmenu/gfxmenu_module-gui_label.o `test -f 'gfxmenu/gui_label.c' || echo '$(srcdir)/'`gfxmenu/gui_label.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) gfxmenu/$(DEPDIR)/gfxmenu_module-gui_label.Tpo gfxmenu/$(DEPDIR)/gfxmenu_module-gui_label.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='gfxmenu/gui_label.c' object='gfxmenu/gfxmenu_module-gui_label.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gfxmenu_module_CPPFLAGS) $(CPPFLAGS) $(gfxmenu_module_CFLAGS) $(CFLAGS) -c -o gfxmenu/gfxmenu_module-gui_label.o `test -f 'gfxmenu/gui_label.c' || echo '$(srcdir)/'`gfxmenu/gui_label.c - -gfxmenu/gfxmenu_module-gui_label.obj: gfxmenu/gui_label.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gfxmenu_module_CPPFLAGS) $(CPPFLAGS) $(gfxmenu_module_CFLAGS) $(CFLAGS) -MT gfxmenu/gfxmenu_module-gui_label.obj -MD -MP -MF gfxmenu/$(DEPDIR)/gfxmenu_module-gui_label.Tpo -c -o gfxmenu/gfxmenu_module-gui_label.obj `if test -f 'gfxmenu/gui_label.c'; then $(CYGPATH_W) 'gfxmenu/gui_label.c'; else $(CYGPATH_W) '$(srcdir)/gfxmenu/gui_label.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) gfxmenu/$(DEPDIR)/gfxmenu_module-gui_label.Tpo gfxmenu/$(DEPDIR)/gfxmenu_module-gui_label.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='gfxmenu/gui_label.c' object='gfxmenu/gfxmenu_module-gui_label.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gfxmenu_module_CPPFLAGS) $(CPPFLAGS) $(gfxmenu_module_CFLAGS) $(CFLAGS) -c -o gfxmenu/gfxmenu_module-gui_label.obj `if test -f 'gfxmenu/gui_label.c'; then $(CYGPATH_W) 'gfxmenu/gui_label.c'; else $(CYGPATH_W) '$(srcdir)/gfxmenu/gui_label.c'; fi` - -gfxmenu/gfxmenu_module-gui_list.o: gfxmenu/gui_list.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gfxmenu_module_CPPFLAGS) $(CPPFLAGS) $(gfxmenu_module_CFLAGS) $(CFLAGS) -MT gfxmenu/gfxmenu_module-gui_list.o -MD -MP -MF gfxmenu/$(DEPDIR)/gfxmenu_module-gui_list.Tpo -c -o gfxmenu/gfxmenu_module-gui_list.o `test -f 'gfxmenu/gui_list.c' || echo '$(srcdir)/'`gfxmenu/gui_list.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) gfxmenu/$(DEPDIR)/gfxmenu_module-gui_list.Tpo gfxmenu/$(DEPDIR)/gfxmenu_module-gui_list.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='gfxmenu/gui_list.c' object='gfxmenu/gfxmenu_module-gui_list.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gfxmenu_module_CPPFLAGS) $(CPPFLAGS) $(gfxmenu_module_CFLAGS) $(CFLAGS) -c -o gfxmenu/gfxmenu_module-gui_list.o `test -f 'gfxmenu/gui_list.c' || echo '$(srcdir)/'`gfxmenu/gui_list.c - -gfxmenu/gfxmenu_module-gui_list.obj: gfxmenu/gui_list.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gfxmenu_module_CPPFLAGS) $(CPPFLAGS) $(gfxmenu_module_CFLAGS) $(CFLAGS) -MT gfxmenu/gfxmenu_module-gui_list.obj -MD -MP -MF gfxmenu/$(DEPDIR)/gfxmenu_module-gui_list.Tpo -c -o gfxmenu/gfxmenu_module-gui_list.obj `if test -f 'gfxmenu/gui_list.c'; then $(CYGPATH_W) 'gfxmenu/gui_list.c'; else $(CYGPATH_W) '$(srcdir)/gfxmenu/gui_list.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) gfxmenu/$(DEPDIR)/gfxmenu_module-gui_list.Tpo gfxmenu/$(DEPDIR)/gfxmenu_module-gui_list.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='gfxmenu/gui_list.c' object='gfxmenu/gfxmenu_module-gui_list.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gfxmenu_module_CPPFLAGS) $(CPPFLAGS) $(gfxmenu_module_CFLAGS) $(CFLAGS) -c -o gfxmenu/gfxmenu_module-gui_list.obj `if test -f 'gfxmenu/gui_list.c'; then $(CYGPATH_W) 'gfxmenu/gui_list.c'; else $(CYGPATH_W) '$(srcdir)/gfxmenu/gui_list.c'; fi` - -gfxmenu/gfxmenu_module-gui_image.o: gfxmenu/gui_image.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gfxmenu_module_CPPFLAGS) $(CPPFLAGS) $(gfxmenu_module_CFLAGS) $(CFLAGS) -MT gfxmenu/gfxmenu_module-gui_image.o -MD -MP -MF gfxmenu/$(DEPDIR)/gfxmenu_module-gui_image.Tpo -c -o gfxmenu/gfxmenu_module-gui_image.o `test -f 'gfxmenu/gui_image.c' || echo '$(srcdir)/'`gfxmenu/gui_image.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) gfxmenu/$(DEPDIR)/gfxmenu_module-gui_image.Tpo gfxmenu/$(DEPDIR)/gfxmenu_module-gui_image.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='gfxmenu/gui_image.c' object='gfxmenu/gfxmenu_module-gui_image.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gfxmenu_module_CPPFLAGS) $(CPPFLAGS) $(gfxmenu_module_CFLAGS) $(CFLAGS) -c -o gfxmenu/gfxmenu_module-gui_image.o `test -f 'gfxmenu/gui_image.c' || echo '$(srcdir)/'`gfxmenu/gui_image.c - -gfxmenu/gfxmenu_module-gui_image.obj: gfxmenu/gui_image.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gfxmenu_module_CPPFLAGS) $(CPPFLAGS) $(gfxmenu_module_CFLAGS) $(CFLAGS) -MT gfxmenu/gfxmenu_module-gui_image.obj -MD -MP -MF gfxmenu/$(DEPDIR)/gfxmenu_module-gui_image.Tpo -c -o gfxmenu/gfxmenu_module-gui_image.obj `if test -f 'gfxmenu/gui_image.c'; then $(CYGPATH_W) 'gfxmenu/gui_image.c'; else $(CYGPATH_W) '$(srcdir)/gfxmenu/gui_image.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) gfxmenu/$(DEPDIR)/gfxmenu_module-gui_image.Tpo gfxmenu/$(DEPDIR)/gfxmenu_module-gui_image.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='gfxmenu/gui_image.c' object='gfxmenu/gfxmenu_module-gui_image.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gfxmenu_module_CPPFLAGS) $(CPPFLAGS) $(gfxmenu_module_CFLAGS) $(CFLAGS) -c -o gfxmenu/gfxmenu_module-gui_image.obj `if test -f 'gfxmenu/gui_image.c'; then $(CYGPATH_W) 'gfxmenu/gui_image.c'; else $(CYGPATH_W) '$(srcdir)/gfxmenu/gui_image.c'; fi` - -gfxmenu/gfxmenu_module-gui_progress_bar.o: gfxmenu/gui_progress_bar.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gfxmenu_module_CPPFLAGS) $(CPPFLAGS) $(gfxmenu_module_CFLAGS) $(CFLAGS) -MT gfxmenu/gfxmenu_module-gui_progress_bar.o -MD -MP -MF gfxmenu/$(DEPDIR)/gfxmenu_module-gui_progress_bar.Tpo -c -o gfxmenu/gfxmenu_module-gui_progress_bar.o `test -f 'gfxmenu/gui_progress_bar.c' || echo '$(srcdir)/'`gfxmenu/gui_progress_bar.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) gfxmenu/$(DEPDIR)/gfxmenu_module-gui_progress_bar.Tpo gfxmenu/$(DEPDIR)/gfxmenu_module-gui_progress_bar.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='gfxmenu/gui_progress_bar.c' object='gfxmenu/gfxmenu_module-gui_progress_bar.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gfxmenu_module_CPPFLAGS) $(CPPFLAGS) $(gfxmenu_module_CFLAGS) $(CFLAGS) -c -o gfxmenu/gfxmenu_module-gui_progress_bar.o `test -f 'gfxmenu/gui_progress_bar.c' || echo '$(srcdir)/'`gfxmenu/gui_progress_bar.c - -gfxmenu/gfxmenu_module-gui_progress_bar.obj: gfxmenu/gui_progress_bar.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gfxmenu_module_CPPFLAGS) $(CPPFLAGS) $(gfxmenu_module_CFLAGS) $(CFLAGS) -MT gfxmenu/gfxmenu_module-gui_progress_bar.obj -MD -MP -MF gfxmenu/$(DEPDIR)/gfxmenu_module-gui_progress_bar.Tpo -c -o gfxmenu/gfxmenu_module-gui_progress_bar.obj `if test -f 'gfxmenu/gui_progress_bar.c'; then $(CYGPATH_W) 'gfxmenu/gui_progress_bar.c'; else $(CYGPATH_W) '$(srcdir)/gfxmenu/gui_progress_bar.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) gfxmenu/$(DEPDIR)/gfxmenu_module-gui_progress_bar.Tpo gfxmenu/$(DEPDIR)/gfxmenu_module-gui_progress_bar.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='gfxmenu/gui_progress_bar.c' object='gfxmenu/gfxmenu_module-gui_progress_bar.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gfxmenu_module_CPPFLAGS) $(CPPFLAGS) $(gfxmenu_module_CFLAGS) $(CFLAGS) -c -o gfxmenu/gfxmenu_module-gui_progress_bar.obj `if test -f 'gfxmenu/gui_progress_bar.c'; then $(CYGPATH_W) 'gfxmenu/gui_progress_bar.c'; else $(CYGPATH_W) '$(srcdir)/gfxmenu/gui_progress_bar.c'; fi` - -gfxmenu/gfxmenu_module-gui_util.o: gfxmenu/gui_util.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gfxmenu_module_CPPFLAGS) $(CPPFLAGS) $(gfxmenu_module_CFLAGS) $(CFLAGS) -MT gfxmenu/gfxmenu_module-gui_util.o -MD -MP -MF gfxmenu/$(DEPDIR)/gfxmenu_module-gui_util.Tpo -c -o gfxmenu/gfxmenu_module-gui_util.o `test -f 'gfxmenu/gui_util.c' || echo '$(srcdir)/'`gfxmenu/gui_util.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) gfxmenu/$(DEPDIR)/gfxmenu_module-gui_util.Tpo gfxmenu/$(DEPDIR)/gfxmenu_module-gui_util.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='gfxmenu/gui_util.c' object='gfxmenu/gfxmenu_module-gui_util.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gfxmenu_module_CPPFLAGS) $(CPPFLAGS) $(gfxmenu_module_CFLAGS) $(CFLAGS) -c -o gfxmenu/gfxmenu_module-gui_util.o `test -f 'gfxmenu/gui_util.c' || echo '$(srcdir)/'`gfxmenu/gui_util.c - -gfxmenu/gfxmenu_module-gui_util.obj: gfxmenu/gui_util.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gfxmenu_module_CPPFLAGS) $(CPPFLAGS) $(gfxmenu_module_CFLAGS) $(CFLAGS) -MT gfxmenu/gfxmenu_module-gui_util.obj -MD -MP -MF gfxmenu/$(DEPDIR)/gfxmenu_module-gui_util.Tpo -c -o gfxmenu/gfxmenu_module-gui_util.obj `if test -f 'gfxmenu/gui_util.c'; then $(CYGPATH_W) 'gfxmenu/gui_util.c'; else $(CYGPATH_W) '$(srcdir)/gfxmenu/gui_util.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) gfxmenu/$(DEPDIR)/gfxmenu_module-gui_util.Tpo gfxmenu/$(DEPDIR)/gfxmenu_module-gui_util.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='gfxmenu/gui_util.c' object='gfxmenu/gfxmenu_module-gui_util.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gfxmenu_module_CPPFLAGS) $(CPPFLAGS) $(gfxmenu_module_CFLAGS) $(CFLAGS) -c -o gfxmenu/gfxmenu_module-gui_util.obj `if test -f 'gfxmenu/gui_util.c'; then $(CYGPATH_W) 'gfxmenu/gui_util.c'; else $(CYGPATH_W) '$(srcdir)/gfxmenu/gui_util.c'; fi` - -gfxmenu/gfxmenu_module-gui_string_util.o: gfxmenu/gui_string_util.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gfxmenu_module_CPPFLAGS) $(CPPFLAGS) $(gfxmenu_module_CFLAGS) $(CFLAGS) -MT gfxmenu/gfxmenu_module-gui_string_util.o -MD -MP -MF gfxmenu/$(DEPDIR)/gfxmenu_module-gui_string_util.Tpo -c -o gfxmenu/gfxmenu_module-gui_string_util.o `test -f 'gfxmenu/gui_string_util.c' || echo '$(srcdir)/'`gfxmenu/gui_string_util.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) gfxmenu/$(DEPDIR)/gfxmenu_module-gui_string_util.Tpo gfxmenu/$(DEPDIR)/gfxmenu_module-gui_string_util.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='gfxmenu/gui_string_util.c' object='gfxmenu/gfxmenu_module-gui_string_util.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gfxmenu_module_CPPFLAGS) $(CPPFLAGS) $(gfxmenu_module_CFLAGS) $(CFLAGS) -c -o gfxmenu/gfxmenu_module-gui_string_util.o `test -f 'gfxmenu/gui_string_util.c' || echo '$(srcdir)/'`gfxmenu/gui_string_util.c - -gfxmenu/gfxmenu_module-gui_string_util.obj: gfxmenu/gui_string_util.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gfxmenu_module_CPPFLAGS) $(CPPFLAGS) $(gfxmenu_module_CFLAGS) $(CFLAGS) -MT gfxmenu/gfxmenu_module-gui_string_util.obj -MD -MP -MF gfxmenu/$(DEPDIR)/gfxmenu_module-gui_string_util.Tpo -c -o gfxmenu/gfxmenu_module-gui_string_util.obj `if test -f 'gfxmenu/gui_string_util.c'; then $(CYGPATH_W) 'gfxmenu/gui_string_util.c'; else $(CYGPATH_W) '$(srcdir)/gfxmenu/gui_string_util.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) gfxmenu/$(DEPDIR)/gfxmenu_module-gui_string_util.Tpo gfxmenu/$(DEPDIR)/gfxmenu_module-gui_string_util.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='gfxmenu/gui_string_util.c' object='gfxmenu/gfxmenu_module-gui_string_util.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gfxmenu_module_CPPFLAGS) $(CPPFLAGS) $(gfxmenu_module_CFLAGS) $(CFLAGS) -c -o gfxmenu/gfxmenu_module-gui_string_util.obj `if test -f 'gfxmenu/gui_string_util.c'; then $(CYGPATH_W) 'gfxmenu/gui_string_util.c'; else $(CYGPATH_W) '$(srcdir)/gfxmenu/gui_string_util.c'; fi` - -term/gfxterm_module-gfxterm.o: term/gfxterm.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gfxterm_module_CPPFLAGS) $(CPPFLAGS) $(gfxterm_module_CFLAGS) $(CFLAGS) -MT term/gfxterm_module-gfxterm.o -MD -MP -MF term/$(DEPDIR)/gfxterm_module-gfxterm.Tpo -c -o term/gfxterm_module-gfxterm.o `test -f 'term/gfxterm.c' || echo '$(srcdir)/'`term/gfxterm.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) term/$(DEPDIR)/gfxterm_module-gfxterm.Tpo term/$(DEPDIR)/gfxterm_module-gfxterm.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='term/gfxterm.c' object='term/gfxterm_module-gfxterm.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gfxterm_module_CPPFLAGS) $(CPPFLAGS) $(gfxterm_module_CFLAGS) $(CFLAGS) -c -o term/gfxterm_module-gfxterm.o `test -f 'term/gfxterm.c' || echo '$(srcdir)/'`term/gfxterm.c - -term/gfxterm_module-gfxterm.obj: term/gfxterm.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gfxterm_module_CPPFLAGS) $(CPPFLAGS) $(gfxterm_module_CFLAGS) $(CFLAGS) -MT term/gfxterm_module-gfxterm.obj -MD -MP -MF term/$(DEPDIR)/gfxterm_module-gfxterm.Tpo -c -o term/gfxterm_module-gfxterm.obj `if test -f 'term/gfxterm.c'; then $(CYGPATH_W) 'term/gfxterm.c'; else $(CYGPATH_W) '$(srcdir)/term/gfxterm.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) term/$(DEPDIR)/gfxterm_module-gfxterm.Tpo term/$(DEPDIR)/gfxterm_module-gfxterm.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='term/gfxterm.c' object='term/gfxterm_module-gfxterm.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gfxterm_module_CPPFLAGS) $(CPPFLAGS) $(gfxterm_module_CFLAGS) $(CFLAGS) -c -o term/gfxterm_module-gfxterm.obj `if test -f 'term/gfxterm.c'; then $(CYGPATH_W) 'term/gfxterm.c'; else $(CYGPATH_W) '$(srcdir)/term/gfxterm.c'; fi` - -term/gfxterm_background_module-gfxterm_background.o: term/gfxterm_background.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gfxterm_background_module_CPPFLAGS) $(CPPFLAGS) $(gfxterm_background_module_CFLAGS) $(CFLAGS) -MT term/gfxterm_background_module-gfxterm_background.o -MD -MP -MF term/$(DEPDIR)/gfxterm_background_module-gfxterm_background.Tpo -c -o term/gfxterm_background_module-gfxterm_background.o `test -f 'term/gfxterm_background.c' || echo '$(srcdir)/'`term/gfxterm_background.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) term/$(DEPDIR)/gfxterm_background_module-gfxterm_background.Tpo term/$(DEPDIR)/gfxterm_background_module-gfxterm_background.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='term/gfxterm_background.c' object='term/gfxterm_background_module-gfxterm_background.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gfxterm_background_module_CPPFLAGS) $(CPPFLAGS) $(gfxterm_background_module_CFLAGS) $(CFLAGS) -c -o term/gfxterm_background_module-gfxterm_background.o `test -f 'term/gfxterm_background.c' || echo '$(srcdir)/'`term/gfxterm_background.c - -term/gfxterm_background_module-gfxterm_background.obj: term/gfxterm_background.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gfxterm_background_module_CPPFLAGS) $(CPPFLAGS) $(gfxterm_background_module_CFLAGS) $(CFLAGS) -MT term/gfxterm_background_module-gfxterm_background.obj -MD -MP -MF term/$(DEPDIR)/gfxterm_background_module-gfxterm_background.Tpo -c -o term/gfxterm_background_module-gfxterm_background.obj `if test -f 'term/gfxterm_background.c'; then $(CYGPATH_W) 'term/gfxterm_background.c'; else $(CYGPATH_W) '$(srcdir)/term/gfxterm_background.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) term/$(DEPDIR)/gfxterm_background_module-gfxterm_background.Tpo term/$(DEPDIR)/gfxterm_background_module-gfxterm_background.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='term/gfxterm_background.c' object='term/gfxterm_background_module-gfxterm_background.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gfxterm_background_module_CPPFLAGS) $(CPPFLAGS) $(gfxterm_background_module_CFLAGS) $(CFLAGS) -c -o term/gfxterm_background_module-gfxterm_background.obj `if test -f 'term/gfxterm_background.c'; then $(CYGPATH_W) 'term/gfxterm_background.c'; else $(CYGPATH_W) '$(srcdir)/term/gfxterm_background.c'; fi` - -tests/gfxterm_menu_module-gfxterm_menu.o: tests/gfxterm_menu.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gfxterm_menu_module_CPPFLAGS) $(CPPFLAGS) $(gfxterm_menu_module_CFLAGS) $(CFLAGS) -MT tests/gfxterm_menu_module-gfxterm_menu.o -MD -MP -MF tests/$(DEPDIR)/gfxterm_menu_module-gfxterm_menu.Tpo -c -o tests/gfxterm_menu_module-gfxterm_menu.o `test -f 'tests/gfxterm_menu.c' || echo '$(srcdir)/'`tests/gfxterm_menu.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) tests/$(DEPDIR)/gfxterm_menu_module-gfxterm_menu.Tpo tests/$(DEPDIR)/gfxterm_menu_module-gfxterm_menu.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='tests/gfxterm_menu.c' object='tests/gfxterm_menu_module-gfxterm_menu.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gfxterm_menu_module_CPPFLAGS) $(CPPFLAGS) $(gfxterm_menu_module_CFLAGS) $(CFLAGS) -c -o tests/gfxterm_menu_module-gfxterm_menu.o `test -f 'tests/gfxterm_menu.c' || echo '$(srcdir)/'`tests/gfxterm_menu.c - -tests/gfxterm_menu_module-gfxterm_menu.obj: tests/gfxterm_menu.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gfxterm_menu_module_CPPFLAGS) $(CPPFLAGS) $(gfxterm_menu_module_CFLAGS) $(CFLAGS) -MT tests/gfxterm_menu_module-gfxterm_menu.obj -MD -MP -MF tests/$(DEPDIR)/gfxterm_menu_module-gfxterm_menu.Tpo -c -o tests/gfxterm_menu_module-gfxterm_menu.obj `if test -f 'tests/gfxterm_menu.c'; then $(CYGPATH_W) 'tests/gfxterm_menu.c'; else $(CYGPATH_W) '$(srcdir)/tests/gfxterm_menu.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) tests/$(DEPDIR)/gfxterm_menu_module-gfxterm_menu.Tpo tests/$(DEPDIR)/gfxterm_menu_module-gfxterm_menu.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='tests/gfxterm_menu.c' object='tests/gfxterm_menu_module-gfxterm_menu.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gfxterm_menu_module_CPPFLAGS) $(CPPFLAGS) $(gfxterm_menu_module_CFLAGS) $(CFLAGS) -c -o tests/gfxterm_menu_module-gfxterm_menu.obj `if test -f 'tests/gfxterm_menu.c'; then $(CYGPATH_W) 'tests/gfxterm_menu.c'; else $(CYGPATH_W) '$(srcdir)/tests/gfxterm_menu.c'; fi` - -commands/gptsync_module-gptsync.o: commands/gptsync.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gptsync_module_CPPFLAGS) $(CPPFLAGS) $(gptsync_module_CFLAGS) $(CFLAGS) -MT commands/gptsync_module-gptsync.o -MD -MP -MF commands/$(DEPDIR)/gptsync_module-gptsync.Tpo -c -o commands/gptsync_module-gptsync.o `test -f 'commands/gptsync.c' || echo '$(srcdir)/'`commands/gptsync.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/$(DEPDIR)/gptsync_module-gptsync.Tpo commands/$(DEPDIR)/gptsync_module-gptsync.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/gptsync.c' object='commands/gptsync_module-gptsync.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gptsync_module_CPPFLAGS) $(CPPFLAGS) $(gptsync_module_CFLAGS) $(CFLAGS) -c -o commands/gptsync_module-gptsync.o `test -f 'commands/gptsync.c' || echo '$(srcdir)/'`commands/gptsync.c - -commands/gptsync_module-gptsync.obj: commands/gptsync.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gptsync_module_CPPFLAGS) $(CPPFLAGS) $(gptsync_module_CFLAGS) $(CFLAGS) -MT commands/gptsync_module-gptsync.obj -MD -MP -MF commands/$(DEPDIR)/gptsync_module-gptsync.Tpo -c -o commands/gptsync_module-gptsync.obj `if test -f 'commands/gptsync.c'; then $(CYGPATH_W) 'commands/gptsync.c'; else $(CYGPATH_W) '$(srcdir)/commands/gptsync.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/$(DEPDIR)/gptsync_module-gptsync.Tpo commands/$(DEPDIR)/gptsync_module-gptsync.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/gptsync.c' object='commands/gptsync_module-gptsync.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gptsync_module_CPPFLAGS) $(CPPFLAGS) $(gptsync_module_CFLAGS) $(CFLAGS) -c -o commands/gptsync_module-gptsync.obj `if test -f 'commands/gptsync.c'; then $(CYGPATH_W) 'commands/gptsync.c'; else $(CYGPATH_W) '$(srcdir)/commands/gptsync.c'; fi` - -kern/emu/grub_emu-full.o: kern/emu/full.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_emu_CPPFLAGS) $(CPPFLAGS) $(grub_emu_CFLAGS) $(CFLAGS) -MT kern/emu/grub_emu-full.o -MD -MP -MF kern/emu/$(DEPDIR)/grub_emu-full.Tpo -c -o kern/emu/grub_emu-full.o `test -f 'kern/emu/full.c' || echo '$(srcdir)/'`kern/emu/full.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/emu/$(DEPDIR)/grub_emu-full.Tpo kern/emu/$(DEPDIR)/grub_emu-full.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/emu/full.c' object='kern/emu/grub_emu-full.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_emu_CPPFLAGS) $(CPPFLAGS) $(grub_emu_CFLAGS) $(CFLAGS) -c -o kern/emu/grub_emu-full.o `test -f 'kern/emu/full.c' || echo '$(srcdir)/'`kern/emu/full.c - -kern/emu/grub_emu-full.obj: kern/emu/full.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_emu_CPPFLAGS) $(CPPFLAGS) $(grub_emu_CFLAGS) $(CFLAGS) -MT kern/emu/grub_emu-full.obj -MD -MP -MF kern/emu/$(DEPDIR)/grub_emu-full.Tpo -c -o kern/emu/grub_emu-full.obj `if test -f 'kern/emu/full.c'; then $(CYGPATH_W) 'kern/emu/full.c'; else $(CYGPATH_W) '$(srcdir)/kern/emu/full.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/emu/$(DEPDIR)/grub_emu-full.Tpo kern/emu/$(DEPDIR)/grub_emu-full.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/emu/full.c' object='kern/emu/grub_emu-full.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_emu_CPPFLAGS) $(CPPFLAGS) $(grub_emu_CFLAGS) $(CFLAGS) -c -o kern/emu/grub_emu-full.obj `if test -f 'kern/emu/full.c'; then $(CYGPATH_W) 'kern/emu/full.c'; else $(CYGPATH_W) '$(srcdir)/kern/emu/full.c'; fi` - -grub_emu-grub_emu_init.o: grub_emu_init.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_emu_CPPFLAGS) $(CPPFLAGS) $(grub_emu_CFLAGS) $(CFLAGS) -MT grub_emu-grub_emu_init.o -MD -MP -MF $(DEPDIR)/grub_emu-grub_emu_init.Tpo -c -o grub_emu-grub_emu_init.o `test -f 'grub_emu_init.c' || echo '$(srcdir)/'`grub_emu_init.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/grub_emu-grub_emu_init.Tpo $(DEPDIR)/grub_emu-grub_emu_init.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub_emu_init.c' object='grub_emu-grub_emu_init.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_emu_CPPFLAGS) $(CPPFLAGS) $(grub_emu_CFLAGS) $(CFLAGS) -c -o grub_emu-grub_emu_init.o `test -f 'grub_emu_init.c' || echo '$(srcdir)/'`grub_emu_init.c - -grub_emu-grub_emu_init.obj: grub_emu_init.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_emu_CPPFLAGS) $(CPPFLAGS) $(grub_emu_CFLAGS) $(CFLAGS) -MT grub_emu-grub_emu_init.obj -MD -MP -MF $(DEPDIR)/grub_emu-grub_emu_init.Tpo -c -o grub_emu-grub_emu_init.obj `if test -f 'grub_emu_init.c'; then $(CYGPATH_W) 'grub_emu_init.c'; else $(CYGPATH_W) '$(srcdir)/grub_emu_init.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/grub_emu-grub_emu_init.Tpo $(DEPDIR)/grub_emu-grub_emu_init.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub_emu_init.c' object='grub_emu-grub_emu_init.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_emu_CPPFLAGS) $(CPPFLAGS) $(grub_emu_CFLAGS) $(CFLAGS) -c -o grub_emu-grub_emu_init.obj `if test -f 'grub_emu_init.c'; then $(CYGPATH_W) 'grub_emu_init.c'; else $(CYGPATH_W) '$(srcdir)/grub_emu_init.c'; fi` - -kern/emu/grub_emu_lite-lite.o: kern/emu/lite.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_emu_lite_CPPFLAGS) $(CPPFLAGS) $(grub_emu_lite_CFLAGS) $(CFLAGS) -MT kern/emu/grub_emu_lite-lite.o -MD -MP -MF kern/emu/$(DEPDIR)/grub_emu_lite-lite.Tpo -c -o kern/emu/grub_emu_lite-lite.o `test -f 'kern/emu/lite.c' || echo '$(srcdir)/'`kern/emu/lite.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/emu/$(DEPDIR)/grub_emu_lite-lite.Tpo kern/emu/$(DEPDIR)/grub_emu_lite-lite.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/emu/lite.c' object='kern/emu/grub_emu_lite-lite.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_emu_lite_CPPFLAGS) $(CPPFLAGS) $(grub_emu_lite_CFLAGS) $(CFLAGS) -c -o kern/emu/grub_emu_lite-lite.o `test -f 'kern/emu/lite.c' || echo '$(srcdir)/'`kern/emu/lite.c - -kern/emu/grub_emu_lite-lite.obj: kern/emu/lite.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_emu_lite_CPPFLAGS) $(CPPFLAGS) $(grub_emu_lite_CFLAGS) $(CFLAGS) -MT kern/emu/grub_emu_lite-lite.obj -MD -MP -MF kern/emu/$(DEPDIR)/grub_emu_lite-lite.Tpo -c -o kern/emu/grub_emu_lite-lite.obj `if test -f 'kern/emu/lite.c'; then $(CYGPATH_W) 'kern/emu/lite.c'; else $(CYGPATH_W) '$(srcdir)/kern/emu/lite.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/emu/$(DEPDIR)/grub_emu_lite-lite.Tpo kern/emu/$(DEPDIR)/grub_emu_lite-lite.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/emu/lite.c' object='kern/emu/grub_emu_lite-lite.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_emu_lite_CPPFLAGS) $(CPPFLAGS) $(grub_emu_lite_CFLAGS) $(CFLAGS) -c -o kern/emu/grub_emu_lite-lite.obj `if test -f 'kern/emu/lite.c'; then $(CYGPATH_W) 'kern/emu/lite.c'; else $(CYGPATH_W) '$(srcdir)/kern/emu/lite.c'; fi` - -grub_emu_lite-symlist.o: symlist.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_emu_lite_CPPFLAGS) $(CPPFLAGS) $(grub_emu_lite_CFLAGS) $(CFLAGS) -MT grub_emu_lite-symlist.o -MD -MP -MF $(DEPDIR)/grub_emu_lite-symlist.Tpo -c -o grub_emu_lite-symlist.o `test -f 'symlist.c' || echo '$(srcdir)/'`symlist.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/grub_emu_lite-symlist.Tpo $(DEPDIR)/grub_emu_lite-symlist.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='symlist.c' object='grub_emu_lite-symlist.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_emu_lite_CPPFLAGS) $(CPPFLAGS) $(grub_emu_lite_CFLAGS) $(CFLAGS) -c -o grub_emu_lite-symlist.o `test -f 'symlist.c' || echo '$(srcdir)/'`symlist.c - -grub_emu_lite-symlist.obj: symlist.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_emu_lite_CPPFLAGS) $(CPPFLAGS) $(grub_emu_lite_CFLAGS) $(CFLAGS) -MT grub_emu_lite-symlist.obj -MD -MP -MF $(DEPDIR)/grub_emu_lite-symlist.Tpo -c -o grub_emu_lite-symlist.obj `if test -f 'symlist.c'; then $(CYGPATH_W) 'symlist.c'; else $(CYGPATH_W) '$(srcdir)/symlist.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/grub_emu_lite-symlist.Tpo $(DEPDIR)/grub_emu_lite-symlist.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='symlist.c' object='grub_emu_lite-symlist.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(grub_emu_lite_CPPFLAGS) $(CPPFLAGS) $(grub_emu_lite_CFLAGS) $(CFLAGS) -c -o grub_emu_lite-symlist.obj `if test -f 'symlist.c'; then $(CYGPATH_W) 'symlist.c'; else $(CYGPATH_W) '$(srcdir)/symlist.c'; fi` - -io/gzio_module-gzio.o: io/gzio.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gzio_module_CPPFLAGS) $(CPPFLAGS) $(gzio_module_CFLAGS) $(CFLAGS) -MT io/gzio_module-gzio.o -MD -MP -MF io/$(DEPDIR)/gzio_module-gzio.Tpo -c -o io/gzio_module-gzio.o `test -f 'io/gzio.c' || echo '$(srcdir)/'`io/gzio.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) io/$(DEPDIR)/gzio_module-gzio.Tpo io/$(DEPDIR)/gzio_module-gzio.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='io/gzio.c' object='io/gzio_module-gzio.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gzio_module_CPPFLAGS) $(CPPFLAGS) $(gzio_module_CFLAGS) $(CFLAGS) -c -o io/gzio_module-gzio.o `test -f 'io/gzio.c' || echo '$(srcdir)/'`io/gzio.c - -io/gzio_module-gzio.obj: io/gzio.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gzio_module_CPPFLAGS) $(CPPFLAGS) $(gzio_module_CFLAGS) $(CFLAGS) -MT io/gzio_module-gzio.obj -MD -MP -MF io/$(DEPDIR)/gzio_module-gzio.Tpo -c -o io/gzio_module-gzio.obj `if test -f 'io/gzio.c'; then $(CYGPATH_W) 'io/gzio.c'; else $(CYGPATH_W) '$(srcdir)/io/gzio.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) io/$(DEPDIR)/gzio_module-gzio.Tpo io/$(DEPDIR)/gzio_module-gzio.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='io/gzio.c' object='io/gzio_module-gzio.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gzio_module_CPPFLAGS) $(CPPFLAGS) $(gzio_module_CFLAGS) $(CFLAGS) -c -o io/gzio_module-gzio.obj `if test -f 'io/gzio.c'; then $(CYGPATH_W) 'io/gzio.c'; else $(CYGPATH_W) '$(srcdir)/io/gzio.c'; fi` - -lib/efi/halt_module-halt.o: lib/efi/halt.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(halt_module_CPPFLAGS) $(CPPFLAGS) $(halt_module_CFLAGS) $(CFLAGS) -MT lib/efi/halt_module-halt.o -MD -MP -MF lib/efi/$(DEPDIR)/halt_module-halt.Tpo -c -o lib/efi/halt_module-halt.o `test -f 'lib/efi/halt.c' || echo '$(srcdir)/'`lib/efi/halt.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/efi/$(DEPDIR)/halt_module-halt.Tpo lib/efi/$(DEPDIR)/halt_module-halt.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/efi/halt.c' object='lib/efi/halt_module-halt.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(halt_module_CPPFLAGS) $(CPPFLAGS) $(halt_module_CFLAGS) $(CFLAGS) -c -o lib/efi/halt_module-halt.o `test -f 'lib/efi/halt.c' || echo '$(srcdir)/'`lib/efi/halt.c - -lib/efi/halt_module-halt.obj: lib/efi/halt.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(halt_module_CPPFLAGS) $(CPPFLAGS) $(halt_module_CFLAGS) $(CFLAGS) -MT lib/efi/halt_module-halt.obj -MD -MP -MF lib/efi/$(DEPDIR)/halt_module-halt.Tpo -c -o lib/efi/halt_module-halt.obj `if test -f 'lib/efi/halt.c'; then $(CYGPATH_W) 'lib/efi/halt.c'; else $(CYGPATH_W) '$(srcdir)/lib/efi/halt.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/efi/$(DEPDIR)/halt_module-halt.Tpo lib/efi/$(DEPDIR)/halt_module-halt.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/efi/halt.c' object='lib/efi/halt_module-halt.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(halt_module_CPPFLAGS) $(CPPFLAGS) $(halt_module_CFLAGS) $(CFLAGS) -c -o lib/efi/halt_module-halt.obj `if test -f 'lib/efi/halt.c'; then $(CYGPATH_W) 'lib/efi/halt.c'; else $(CYGPATH_W) '$(srcdir)/lib/efi/halt.c'; fi` - -commands/halt_module-halt.o: commands/halt.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(halt_module_CPPFLAGS) $(CPPFLAGS) $(halt_module_CFLAGS) $(CFLAGS) -MT commands/halt_module-halt.o -MD -MP -MF commands/$(DEPDIR)/halt_module-halt.Tpo -c -o commands/halt_module-halt.o `test -f 'commands/halt.c' || echo '$(srcdir)/'`commands/halt.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/$(DEPDIR)/halt_module-halt.Tpo commands/$(DEPDIR)/halt_module-halt.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/halt.c' object='commands/halt_module-halt.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(halt_module_CPPFLAGS) $(CPPFLAGS) $(halt_module_CFLAGS) $(CFLAGS) -c -o commands/halt_module-halt.o `test -f 'commands/halt.c' || echo '$(srcdir)/'`commands/halt.c - -commands/halt_module-halt.obj: commands/halt.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(halt_module_CPPFLAGS) $(CPPFLAGS) $(halt_module_CFLAGS) $(CFLAGS) -MT commands/halt_module-halt.obj -MD -MP -MF commands/$(DEPDIR)/halt_module-halt.Tpo -c -o commands/halt_module-halt.obj `if test -f 'commands/halt.c'; then $(CYGPATH_W) 'commands/halt.c'; else $(CYGPATH_W) '$(srcdir)/commands/halt.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/$(DEPDIR)/halt_module-halt.Tpo commands/$(DEPDIR)/halt_module-halt.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/halt.c' object='commands/halt_module-halt.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(halt_module_CPPFLAGS) $(CPPFLAGS) $(halt_module_CFLAGS) $(CFLAGS) -c -o commands/halt_module-halt.obj `if test -f 'commands/halt.c'; then $(CYGPATH_W) 'commands/halt.c'; else $(CYGPATH_W) '$(srcdir)/commands/halt.c'; fi` - -lib/dummy/halt_module-halt.o: lib/dummy/halt.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(halt_module_CPPFLAGS) $(CPPFLAGS) $(halt_module_CFLAGS) $(CFLAGS) -MT lib/dummy/halt_module-halt.o -MD -MP -MF lib/dummy/$(DEPDIR)/halt_module-halt.Tpo -c -o lib/dummy/halt_module-halt.o `test -f 'lib/dummy/halt.c' || echo '$(srcdir)/'`lib/dummy/halt.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/dummy/$(DEPDIR)/halt_module-halt.Tpo lib/dummy/$(DEPDIR)/halt_module-halt.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/dummy/halt.c' object='lib/dummy/halt_module-halt.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(halt_module_CPPFLAGS) $(CPPFLAGS) $(halt_module_CFLAGS) $(CFLAGS) -c -o lib/dummy/halt_module-halt.o `test -f 'lib/dummy/halt.c' || echo '$(srcdir)/'`lib/dummy/halt.c - -lib/dummy/halt_module-halt.obj: lib/dummy/halt.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(halt_module_CPPFLAGS) $(CPPFLAGS) $(halt_module_CFLAGS) $(CFLAGS) -MT lib/dummy/halt_module-halt.obj -MD -MP -MF lib/dummy/$(DEPDIR)/halt_module-halt.Tpo -c -o lib/dummy/halt_module-halt.obj `if test -f 'lib/dummy/halt.c'; then $(CYGPATH_W) 'lib/dummy/halt.c'; else $(CYGPATH_W) '$(srcdir)/lib/dummy/halt.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/dummy/$(DEPDIR)/halt_module-halt.Tpo lib/dummy/$(DEPDIR)/halt_module-halt.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/dummy/halt.c' object='lib/dummy/halt_module-halt.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(halt_module_CPPFLAGS) $(CPPFLAGS) $(halt_module_CFLAGS) $(CFLAGS) -c -o lib/dummy/halt_module-halt.obj `if test -f 'lib/dummy/halt.c'; then $(CYGPATH_W) 'lib/dummy/halt.c'; else $(CYGPATH_W) '$(srcdir)/lib/dummy/halt.c'; fi` - -lib/emu/halt_module-halt.o: lib/emu/halt.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(halt_module_CPPFLAGS) $(CPPFLAGS) $(halt_module_CFLAGS) $(CFLAGS) -MT lib/emu/halt_module-halt.o -MD -MP -MF lib/emu/$(DEPDIR)/halt_module-halt.Tpo -c -o lib/emu/halt_module-halt.o `test -f 'lib/emu/halt.c' || echo '$(srcdir)/'`lib/emu/halt.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/emu/$(DEPDIR)/halt_module-halt.Tpo lib/emu/$(DEPDIR)/halt_module-halt.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/emu/halt.c' object='lib/emu/halt_module-halt.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(halt_module_CPPFLAGS) $(CPPFLAGS) $(halt_module_CFLAGS) $(CFLAGS) -c -o lib/emu/halt_module-halt.o `test -f 'lib/emu/halt.c' || echo '$(srcdir)/'`lib/emu/halt.c - -lib/emu/halt_module-halt.obj: lib/emu/halt.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(halt_module_CPPFLAGS) $(CPPFLAGS) $(halt_module_CFLAGS) $(CFLAGS) -MT lib/emu/halt_module-halt.obj -MD -MP -MF lib/emu/$(DEPDIR)/halt_module-halt.Tpo -c -o lib/emu/halt_module-halt.obj `if test -f 'lib/emu/halt.c'; then $(CYGPATH_W) 'lib/emu/halt.c'; else $(CYGPATH_W) '$(srcdir)/lib/emu/halt.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/emu/$(DEPDIR)/halt_module-halt.Tpo lib/emu/$(DEPDIR)/halt_module-halt.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/emu/halt.c' object='lib/emu/halt_module-halt.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(halt_module_CPPFLAGS) $(CPPFLAGS) $(halt_module_CFLAGS) $(CFLAGS) -c -o lib/emu/halt_module-halt.obj `if test -f 'lib/emu/halt.c'; then $(CYGPATH_W) 'lib/emu/halt.c'; else $(CYGPATH_W) '$(srcdir)/lib/emu/halt.c'; fi` - -commands/halt_module-acpihalt.o: commands/acpihalt.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(halt_module_CPPFLAGS) $(CPPFLAGS) $(halt_module_CFLAGS) $(CFLAGS) -MT commands/halt_module-acpihalt.o -MD -MP -MF commands/$(DEPDIR)/halt_module-acpihalt.Tpo -c -o commands/halt_module-acpihalt.o `test -f 'commands/acpihalt.c' || echo '$(srcdir)/'`commands/acpihalt.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/$(DEPDIR)/halt_module-acpihalt.Tpo commands/$(DEPDIR)/halt_module-acpihalt.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/acpihalt.c' object='commands/halt_module-acpihalt.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(halt_module_CPPFLAGS) $(CPPFLAGS) $(halt_module_CFLAGS) $(CFLAGS) -c -o commands/halt_module-acpihalt.o `test -f 'commands/acpihalt.c' || echo '$(srcdir)/'`commands/acpihalt.c - -commands/halt_module-acpihalt.obj: commands/acpihalt.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(halt_module_CPPFLAGS) $(CPPFLAGS) $(halt_module_CFLAGS) $(CFLAGS) -MT commands/halt_module-acpihalt.obj -MD -MP -MF commands/$(DEPDIR)/halt_module-acpihalt.Tpo -c -o commands/halt_module-acpihalt.obj `if test -f 'commands/acpihalt.c'; then $(CYGPATH_W) 'commands/acpihalt.c'; else $(CYGPATH_W) '$(srcdir)/commands/acpihalt.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/$(DEPDIR)/halt_module-acpihalt.Tpo commands/$(DEPDIR)/halt_module-acpihalt.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/acpihalt.c' object='commands/halt_module-acpihalt.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(halt_module_CPPFLAGS) $(CPPFLAGS) $(halt_module_CFLAGS) $(CFLAGS) -c -o commands/halt_module-acpihalt.obj `if test -f 'commands/acpihalt.c'; then $(CYGPATH_W) 'commands/acpihalt.c'; else $(CYGPATH_W) '$(srcdir)/commands/acpihalt.c'; fi` - -lib/i386/halt_module-halt.o: lib/i386/halt.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(halt_module_CPPFLAGS) $(CPPFLAGS) $(halt_module_CFLAGS) $(CFLAGS) -MT lib/i386/halt_module-halt.o -MD -MP -MF lib/i386/$(DEPDIR)/halt_module-halt.Tpo -c -o lib/i386/halt_module-halt.o `test -f 'lib/i386/halt.c' || echo '$(srcdir)/'`lib/i386/halt.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/i386/$(DEPDIR)/halt_module-halt.Tpo lib/i386/$(DEPDIR)/halt_module-halt.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/i386/halt.c' object='lib/i386/halt_module-halt.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(halt_module_CPPFLAGS) $(CPPFLAGS) $(halt_module_CFLAGS) $(CFLAGS) -c -o lib/i386/halt_module-halt.o `test -f 'lib/i386/halt.c' || echo '$(srcdir)/'`lib/i386/halt.c - -lib/i386/halt_module-halt.obj: lib/i386/halt.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(halt_module_CPPFLAGS) $(CPPFLAGS) $(halt_module_CFLAGS) $(CFLAGS) -MT lib/i386/halt_module-halt.obj -MD -MP -MF lib/i386/$(DEPDIR)/halt_module-halt.Tpo -c -o lib/i386/halt_module-halt.obj `if test -f 'lib/i386/halt.c'; then $(CYGPATH_W) 'lib/i386/halt.c'; else $(CYGPATH_W) '$(srcdir)/lib/i386/halt.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/i386/$(DEPDIR)/halt_module-halt.Tpo lib/i386/$(DEPDIR)/halt_module-halt.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/i386/halt.c' object='lib/i386/halt_module-halt.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(halt_module_CPPFLAGS) $(CPPFLAGS) $(halt_module_CFLAGS) $(CFLAGS) -c -o lib/i386/halt_module-halt.obj `if test -f 'lib/i386/halt.c'; then $(CYGPATH_W) 'lib/i386/halt.c'; else $(CYGPATH_W) '$(srcdir)/lib/i386/halt.c'; fi` - -lib/ieee1275/halt_module-halt.o: lib/ieee1275/halt.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(halt_module_CPPFLAGS) $(CPPFLAGS) $(halt_module_CFLAGS) $(CFLAGS) -MT lib/ieee1275/halt_module-halt.o -MD -MP -MF lib/ieee1275/$(DEPDIR)/halt_module-halt.Tpo -c -o lib/ieee1275/halt_module-halt.o `test -f 'lib/ieee1275/halt.c' || echo '$(srcdir)/'`lib/ieee1275/halt.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/ieee1275/$(DEPDIR)/halt_module-halt.Tpo lib/ieee1275/$(DEPDIR)/halt_module-halt.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/ieee1275/halt.c' object='lib/ieee1275/halt_module-halt.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(halt_module_CPPFLAGS) $(CPPFLAGS) $(halt_module_CFLAGS) $(CFLAGS) -c -o lib/ieee1275/halt_module-halt.o `test -f 'lib/ieee1275/halt.c' || echo '$(srcdir)/'`lib/ieee1275/halt.c - -lib/ieee1275/halt_module-halt.obj: lib/ieee1275/halt.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(halt_module_CPPFLAGS) $(CPPFLAGS) $(halt_module_CFLAGS) $(CFLAGS) -MT lib/ieee1275/halt_module-halt.obj -MD -MP -MF lib/ieee1275/$(DEPDIR)/halt_module-halt.Tpo -c -o lib/ieee1275/halt_module-halt.obj `if test -f 'lib/ieee1275/halt.c'; then $(CYGPATH_W) 'lib/ieee1275/halt.c'; else $(CYGPATH_W) '$(srcdir)/lib/ieee1275/halt.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/ieee1275/$(DEPDIR)/halt_module-halt.Tpo lib/ieee1275/$(DEPDIR)/halt_module-halt.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/ieee1275/halt.c' object='lib/ieee1275/halt_module-halt.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(halt_module_CPPFLAGS) $(CPPFLAGS) $(halt_module_CFLAGS) $(CFLAGS) -c -o lib/ieee1275/halt_module-halt.obj `if test -f 'lib/ieee1275/halt.c'; then $(CYGPATH_W) 'lib/ieee1275/halt.c'; else $(CYGPATH_W) '$(srcdir)/lib/ieee1275/halt.c'; fi` - -commands/i386/pc/halt_module-halt.o: commands/i386/pc/halt.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(halt_module_CPPFLAGS) $(CPPFLAGS) $(halt_module_CFLAGS) $(CFLAGS) -MT commands/i386/pc/halt_module-halt.o -MD -MP -MF commands/i386/pc/$(DEPDIR)/halt_module-halt.Tpo -c -o commands/i386/pc/halt_module-halt.o `test -f 'commands/i386/pc/halt.c' || echo '$(srcdir)/'`commands/i386/pc/halt.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/i386/pc/$(DEPDIR)/halt_module-halt.Tpo commands/i386/pc/$(DEPDIR)/halt_module-halt.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/i386/pc/halt.c' object='commands/i386/pc/halt_module-halt.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(halt_module_CPPFLAGS) $(CPPFLAGS) $(halt_module_CFLAGS) $(CFLAGS) -c -o commands/i386/pc/halt_module-halt.o `test -f 'commands/i386/pc/halt.c' || echo '$(srcdir)/'`commands/i386/pc/halt.c - -commands/i386/pc/halt_module-halt.obj: commands/i386/pc/halt.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(halt_module_CPPFLAGS) $(CPPFLAGS) $(halt_module_CFLAGS) $(CFLAGS) -MT commands/i386/pc/halt_module-halt.obj -MD -MP -MF commands/i386/pc/$(DEPDIR)/halt_module-halt.Tpo -c -o commands/i386/pc/halt_module-halt.obj `if test -f 'commands/i386/pc/halt.c'; then $(CYGPATH_W) 'commands/i386/pc/halt.c'; else $(CYGPATH_W) '$(srcdir)/commands/i386/pc/halt.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/i386/pc/$(DEPDIR)/halt_module-halt.Tpo commands/i386/pc/$(DEPDIR)/halt_module-halt.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/i386/pc/halt.c' object='commands/i386/pc/halt_module-halt.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(halt_module_CPPFLAGS) $(CPPFLAGS) $(halt_module_CFLAGS) $(CFLAGS) -c -o commands/i386/pc/halt_module-halt.obj `if test -f 'commands/i386/pc/halt.c'; then $(CYGPATH_W) 'commands/i386/pc/halt.c'; else $(CYGPATH_W) '$(srcdir)/commands/i386/pc/halt.c'; fi` - -lib/xen/halt_module-halt.o: lib/xen/halt.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(halt_module_CPPFLAGS) $(CPPFLAGS) $(halt_module_CFLAGS) $(CFLAGS) -MT lib/xen/halt_module-halt.o -MD -MP -MF lib/xen/$(DEPDIR)/halt_module-halt.Tpo -c -o lib/xen/halt_module-halt.o `test -f 'lib/xen/halt.c' || echo '$(srcdir)/'`lib/xen/halt.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/xen/$(DEPDIR)/halt_module-halt.Tpo lib/xen/$(DEPDIR)/halt_module-halt.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/xen/halt.c' object='lib/xen/halt_module-halt.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(halt_module_CPPFLAGS) $(CPPFLAGS) $(halt_module_CFLAGS) $(CFLAGS) -c -o lib/xen/halt_module-halt.o `test -f 'lib/xen/halt.c' || echo '$(srcdir)/'`lib/xen/halt.c - -lib/xen/halt_module-halt.obj: lib/xen/halt.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(halt_module_CPPFLAGS) $(CPPFLAGS) $(halt_module_CFLAGS) $(CFLAGS) -MT lib/xen/halt_module-halt.obj -MD -MP -MF lib/xen/$(DEPDIR)/halt_module-halt.Tpo -c -o lib/xen/halt_module-halt.obj `if test -f 'lib/xen/halt.c'; then $(CYGPATH_W) 'lib/xen/halt.c'; else $(CYGPATH_W) '$(srcdir)/lib/xen/halt.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/xen/$(DEPDIR)/halt_module-halt.Tpo lib/xen/$(DEPDIR)/halt_module-halt.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/xen/halt.c' object='lib/xen/halt_module-halt.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(halt_module_CPPFLAGS) $(CPPFLAGS) $(halt_module_CFLAGS) $(CFLAGS) -c -o lib/xen/halt_module-halt.obj `if test -f 'lib/xen/halt.c'; then $(CYGPATH_W) 'lib/xen/halt.c'; else $(CYGPATH_W) '$(srcdir)/lib/xen/halt.c'; fi` - -commands/hashsum_module-hashsum.o: commands/hashsum.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(hashsum_module_CPPFLAGS) $(CPPFLAGS) $(hashsum_module_CFLAGS) $(CFLAGS) -MT commands/hashsum_module-hashsum.o -MD -MP -MF commands/$(DEPDIR)/hashsum_module-hashsum.Tpo -c -o commands/hashsum_module-hashsum.o `test -f 'commands/hashsum.c' || echo '$(srcdir)/'`commands/hashsum.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/$(DEPDIR)/hashsum_module-hashsum.Tpo commands/$(DEPDIR)/hashsum_module-hashsum.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/hashsum.c' object='commands/hashsum_module-hashsum.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(hashsum_module_CPPFLAGS) $(CPPFLAGS) $(hashsum_module_CFLAGS) $(CFLAGS) -c -o commands/hashsum_module-hashsum.o `test -f 'commands/hashsum.c' || echo '$(srcdir)/'`commands/hashsum.c - -commands/hashsum_module-hashsum.obj: commands/hashsum.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(hashsum_module_CPPFLAGS) $(CPPFLAGS) $(hashsum_module_CFLAGS) $(CFLAGS) -MT commands/hashsum_module-hashsum.obj -MD -MP -MF commands/$(DEPDIR)/hashsum_module-hashsum.Tpo -c -o commands/hashsum_module-hashsum.obj `if test -f 'commands/hashsum.c'; then $(CYGPATH_W) 'commands/hashsum.c'; else $(CYGPATH_W) '$(srcdir)/commands/hashsum.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/$(DEPDIR)/hashsum_module-hashsum.Tpo commands/$(DEPDIR)/hashsum_module-hashsum.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/hashsum.c' object='commands/hashsum_module-hashsum.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(hashsum_module_CPPFLAGS) $(CPPFLAGS) $(hashsum_module_CFLAGS) $(CFLAGS) -c -o commands/hashsum_module-hashsum.obj `if test -f 'commands/hashsum.c'; then $(CYGPATH_W) 'commands/hashsum.c'; else $(CYGPATH_W) '$(srcdir)/commands/hashsum.c'; fi` - -commands/hdparm_module-hdparm.o: commands/hdparm.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(hdparm_module_CPPFLAGS) $(CPPFLAGS) $(hdparm_module_CFLAGS) $(CFLAGS) -MT commands/hdparm_module-hdparm.o -MD -MP -MF commands/$(DEPDIR)/hdparm_module-hdparm.Tpo -c -o commands/hdparm_module-hdparm.o `test -f 'commands/hdparm.c' || echo '$(srcdir)/'`commands/hdparm.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/$(DEPDIR)/hdparm_module-hdparm.Tpo commands/$(DEPDIR)/hdparm_module-hdparm.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/hdparm.c' object='commands/hdparm_module-hdparm.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(hdparm_module_CPPFLAGS) $(CPPFLAGS) $(hdparm_module_CFLAGS) $(CFLAGS) -c -o commands/hdparm_module-hdparm.o `test -f 'commands/hdparm.c' || echo '$(srcdir)/'`commands/hdparm.c - -commands/hdparm_module-hdparm.obj: commands/hdparm.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(hdparm_module_CPPFLAGS) $(CPPFLAGS) $(hdparm_module_CFLAGS) $(CFLAGS) -MT commands/hdparm_module-hdparm.obj -MD -MP -MF commands/$(DEPDIR)/hdparm_module-hdparm.Tpo -c -o commands/hdparm_module-hdparm.obj `if test -f 'commands/hdparm.c'; then $(CYGPATH_W) 'commands/hdparm.c'; else $(CYGPATH_W) '$(srcdir)/commands/hdparm.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/$(DEPDIR)/hdparm_module-hdparm.Tpo commands/$(DEPDIR)/hdparm_module-hdparm.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/hdparm.c' object='commands/hdparm_module-hdparm.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(hdparm_module_CPPFLAGS) $(CPPFLAGS) $(hdparm_module_CFLAGS) $(CFLAGS) -c -o commands/hdparm_module-hdparm.obj `if test -f 'commands/hdparm.c'; then $(CYGPATH_W) 'commands/hdparm.c'; else $(CYGPATH_W) '$(srcdir)/commands/hdparm.c'; fi` - -hello/hello_module-hello.o: hello/hello.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(hello_module_CPPFLAGS) $(CPPFLAGS) $(hello_module_CFLAGS) $(CFLAGS) -MT hello/hello_module-hello.o -MD -MP -MF hello/$(DEPDIR)/hello_module-hello.Tpo -c -o hello/hello_module-hello.o `test -f 'hello/hello.c' || echo '$(srcdir)/'`hello/hello.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) hello/$(DEPDIR)/hello_module-hello.Tpo hello/$(DEPDIR)/hello_module-hello.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='hello/hello.c' object='hello/hello_module-hello.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(hello_module_CPPFLAGS) $(CPPFLAGS) $(hello_module_CFLAGS) $(CFLAGS) -c -o hello/hello_module-hello.o `test -f 'hello/hello.c' || echo '$(srcdir)/'`hello/hello.c - -hello/hello_module-hello.obj: hello/hello.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(hello_module_CPPFLAGS) $(CPPFLAGS) $(hello_module_CFLAGS) $(CFLAGS) -MT hello/hello_module-hello.obj -MD -MP -MF hello/$(DEPDIR)/hello_module-hello.Tpo -c -o hello/hello_module-hello.obj `if test -f 'hello/hello.c'; then $(CYGPATH_W) 'hello/hello.c'; else $(CYGPATH_W) '$(srcdir)/hello/hello.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) hello/$(DEPDIR)/hello_module-hello.Tpo hello/$(DEPDIR)/hello_module-hello.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='hello/hello.c' object='hello/hello_module-hello.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(hello_module_CPPFLAGS) $(CPPFLAGS) $(hello_module_CFLAGS) $(CFLAGS) -c -o hello/hello_module-hello.obj `if test -f 'hello/hello.c'; then $(CYGPATH_W) 'hello/hello.c'; else $(CYGPATH_W) '$(srcdir)/hello/hello.c'; fi` - -commands/help_module-help.o: commands/help.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(help_module_CPPFLAGS) $(CPPFLAGS) $(help_module_CFLAGS) $(CFLAGS) -MT commands/help_module-help.o -MD -MP -MF commands/$(DEPDIR)/help_module-help.Tpo -c -o commands/help_module-help.o `test -f 'commands/help.c' || echo '$(srcdir)/'`commands/help.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/$(DEPDIR)/help_module-help.Tpo commands/$(DEPDIR)/help_module-help.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/help.c' object='commands/help_module-help.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(help_module_CPPFLAGS) $(CPPFLAGS) $(help_module_CFLAGS) $(CFLAGS) -c -o commands/help_module-help.o `test -f 'commands/help.c' || echo '$(srcdir)/'`commands/help.c - -commands/help_module-help.obj: commands/help.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(help_module_CPPFLAGS) $(CPPFLAGS) $(help_module_CFLAGS) $(CFLAGS) -MT commands/help_module-help.obj -MD -MP -MF commands/$(DEPDIR)/help_module-help.Tpo -c -o commands/help_module-help.obj `if test -f 'commands/help.c'; then $(CYGPATH_W) 'commands/help.c'; else $(CYGPATH_W) '$(srcdir)/commands/help.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/$(DEPDIR)/help_module-help.Tpo commands/$(DEPDIR)/help_module-help.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/help.c' object='commands/help_module-help.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(help_module_CPPFLAGS) $(CPPFLAGS) $(help_module_CFLAGS) $(CFLAGS) -c -o commands/help_module-help.obj `if test -f 'commands/help.c'; then $(CYGPATH_W) 'commands/help.c'; else $(CYGPATH_W) '$(srcdir)/commands/help.c'; fi` - -commands/hexdump_module-hexdump.o: commands/hexdump.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(hexdump_module_CPPFLAGS) $(CPPFLAGS) $(hexdump_module_CFLAGS) $(CFLAGS) -MT commands/hexdump_module-hexdump.o -MD -MP -MF commands/$(DEPDIR)/hexdump_module-hexdump.Tpo -c -o commands/hexdump_module-hexdump.o `test -f 'commands/hexdump.c' || echo '$(srcdir)/'`commands/hexdump.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/$(DEPDIR)/hexdump_module-hexdump.Tpo commands/$(DEPDIR)/hexdump_module-hexdump.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/hexdump.c' object='commands/hexdump_module-hexdump.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(hexdump_module_CPPFLAGS) $(CPPFLAGS) $(hexdump_module_CFLAGS) $(CFLAGS) -c -o commands/hexdump_module-hexdump.o `test -f 'commands/hexdump.c' || echo '$(srcdir)/'`commands/hexdump.c - -commands/hexdump_module-hexdump.obj: commands/hexdump.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(hexdump_module_CPPFLAGS) $(CPPFLAGS) $(hexdump_module_CFLAGS) $(CFLAGS) -MT commands/hexdump_module-hexdump.obj -MD -MP -MF commands/$(DEPDIR)/hexdump_module-hexdump.Tpo -c -o commands/hexdump_module-hexdump.obj `if test -f 'commands/hexdump.c'; then $(CYGPATH_W) 'commands/hexdump.c'; else $(CYGPATH_W) '$(srcdir)/commands/hexdump.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/$(DEPDIR)/hexdump_module-hexdump.Tpo commands/$(DEPDIR)/hexdump_module-hexdump.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/hexdump.c' object='commands/hexdump_module-hexdump.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(hexdump_module_CPPFLAGS) $(CPPFLAGS) $(hexdump_module_CFLAGS) $(CFLAGS) -c -o commands/hexdump_module-hexdump.obj `if test -f 'commands/hexdump.c'; then $(CYGPATH_W) 'commands/hexdump.c'; else $(CYGPATH_W) '$(srcdir)/commands/hexdump.c'; fi` - -lib/hexdump_module-hexdump.o: lib/hexdump.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(hexdump_module_CPPFLAGS) $(CPPFLAGS) $(hexdump_module_CFLAGS) $(CFLAGS) -MT lib/hexdump_module-hexdump.o -MD -MP -MF lib/$(DEPDIR)/hexdump_module-hexdump.Tpo -c -o lib/hexdump_module-hexdump.o `test -f 'lib/hexdump.c' || echo '$(srcdir)/'`lib/hexdump.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/$(DEPDIR)/hexdump_module-hexdump.Tpo lib/$(DEPDIR)/hexdump_module-hexdump.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/hexdump.c' object='lib/hexdump_module-hexdump.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(hexdump_module_CPPFLAGS) $(CPPFLAGS) $(hexdump_module_CFLAGS) $(CFLAGS) -c -o lib/hexdump_module-hexdump.o `test -f 'lib/hexdump.c' || echo '$(srcdir)/'`lib/hexdump.c - -lib/hexdump_module-hexdump.obj: lib/hexdump.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(hexdump_module_CPPFLAGS) $(CPPFLAGS) $(hexdump_module_CFLAGS) $(CFLAGS) -MT lib/hexdump_module-hexdump.obj -MD -MP -MF lib/$(DEPDIR)/hexdump_module-hexdump.Tpo -c -o lib/hexdump_module-hexdump.obj `if test -f 'lib/hexdump.c'; then $(CYGPATH_W) 'lib/hexdump.c'; else $(CYGPATH_W) '$(srcdir)/lib/hexdump.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/$(DEPDIR)/hexdump_module-hexdump.Tpo lib/$(DEPDIR)/hexdump_module-hexdump.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/hexdump.c' object='lib/hexdump_module-hexdump.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(hexdump_module_CPPFLAGS) $(CPPFLAGS) $(hexdump_module_CFLAGS) $(CFLAGS) -c -o lib/hexdump_module-hexdump.obj `if test -f 'lib/hexdump.c'; then $(CYGPATH_W) 'lib/hexdump.c'; else $(CYGPATH_W) '$(srcdir)/lib/hexdump.c'; fi` - -fs/hfs_module-hfs.o: fs/hfs.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(hfs_module_CPPFLAGS) $(CPPFLAGS) $(hfs_module_CFLAGS) $(CFLAGS) -MT fs/hfs_module-hfs.o -MD -MP -MF fs/$(DEPDIR)/hfs_module-hfs.Tpo -c -o fs/hfs_module-hfs.o `test -f 'fs/hfs.c' || echo '$(srcdir)/'`fs/hfs.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) fs/$(DEPDIR)/hfs_module-hfs.Tpo fs/$(DEPDIR)/hfs_module-hfs.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='fs/hfs.c' object='fs/hfs_module-hfs.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(hfs_module_CPPFLAGS) $(CPPFLAGS) $(hfs_module_CFLAGS) $(CFLAGS) -c -o fs/hfs_module-hfs.o `test -f 'fs/hfs.c' || echo '$(srcdir)/'`fs/hfs.c - -fs/hfs_module-hfs.obj: fs/hfs.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(hfs_module_CPPFLAGS) $(CPPFLAGS) $(hfs_module_CFLAGS) $(CFLAGS) -MT fs/hfs_module-hfs.obj -MD -MP -MF fs/$(DEPDIR)/hfs_module-hfs.Tpo -c -o fs/hfs_module-hfs.obj `if test -f 'fs/hfs.c'; then $(CYGPATH_W) 'fs/hfs.c'; else $(CYGPATH_W) '$(srcdir)/fs/hfs.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) fs/$(DEPDIR)/hfs_module-hfs.Tpo fs/$(DEPDIR)/hfs_module-hfs.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='fs/hfs.c' object='fs/hfs_module-hfs.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(hfs_module_CPPFLAGS) $(CPPFLAGS) $(hfs_module_CFLAGS) $(CFLAGS) -c -o fs/hfs_module-hfs.obj `if test -f 'fs/hfs.c'; then $(CYGPATH_W) 'fs/hfs.c'; else $(CYGPATH_W) '$(srcdir)/fs/hfs.c'; fi` - -fs/hfsplus_module-hfsplus.o: fs/hfsplus.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(hfsplus_module_CPPFLAGS) $(CPPFLAGS) $(hfsplus_module_CFLAGS) $(CFLAGS) -MT fs/hfsplus_module-hfsplus.o -MD -MP -MF fs/$(DEPDIR)/hfsplus_module-hfsplus.Tpo -c -o fs/hfsplus_module-hfsplus.o `test -f 'fs/hfsplus.c' || echo '$(srcdir)/'`fs/hfsplus.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) fs/$(DEPDIR)/hfsplus_module-hfsplus.Tpo fs/$(DEPDIR)/hfsplus_module-hfsplus.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='fs/hfsplus.c' object='fs/hfsplus_module-hfsplus.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(hfsplus_module_CPPFLAGS) $(CPPFLAGS) $(hfsplus_module_CFLAGS) $(CFLAGS) -c -o fs/hfsplus_module-hfsplus.o `test -f 'fs/hfsplus.c' || echo '$(srcdir)/'`fs/hfsplus.c - -fs/hfsplus_module-hfsplus.obj: fs/hfsplus.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(hfsplus_module_CPPFLAGS) $(CPPFLAGS) $(hfsplus_module_CFLAGS) $(CFLAGS) -MT fs/hfsplus_module-hfsplus.obj -MD -MP -MF fs/$(DEPDIR)/hfsplus_module-hfsplus.Tpo -c -o fs/hfsplus_module-hfsplus.obj `if test -f 'fs/hfsplus.c'; then $(CYGPATH_W) 'fs/hfsplus.c'; else $(CYGPATH_W) '$(srcdir)/fs/hfsplus.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) fs/$(DEPDIR)/hfsplus_module-hfsplus.Tpo fs/$(DEPDIR)/hfsplus_module-hfsplus.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='fs/hfsplus.c' object='fs/hfsplus_module-hfsplus.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(hfsplus_module_CPPFLAGS) $(CPPFLAGS) $(hfsplus_module_CFLAGS) $(CFLAGS) -c -o fs/hfsplus_module-hfsplus.obj `if test -f 'fs/hfsplus.c'; then $(CYGPATH_W) 'fs/hfsplus.c'; else $(CYGPATH_W) '$(srcdir)/fs/hfsplus.c'; fi` - -fs/hfspluscomp_module-hfspluscomp.o: fs/hfspluscomp.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(hfspluscomp_module_CPPFLAGS) $(CPPFLAGS) $(hfspluscomp_module_CFLAGS) $(CFLAGS) -MT fs/hfspluscomp_module-hfspluscomp.o -MD -MP -MF fs/$(DEPDIR)/hfspluscomp_module-hfspluscomp.Tpo -c -o fs/hfspluscomp_module-hfspluscomp.o `test -f 'fs/hfspluscomp.c' || echo '$(srcdir)/'`fs/hfspluscomp.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) fs/$(DEPDIR)/hfspluscomp_module-hfspluscomp.Tpo fs/$(DEPDIR)/hfspluscomp_module-hfspluscomp.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='fs/hfspluscomp.c' object='fs/hfspluscomp_module-hfspluscomp.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(hfspluscomp_module_CPPFLAGS) $(CPPFLAGS) $(hfspluscomp_module_CFLAGS) $(CFLAGS) -c -o fs/hfspluscomp_module-hfspluscomp.o `test -f 'fs/hfspluscomp.c' || echo '$(srcdir)/'`fs/hfspluscomp.c - -fs/hfspluscomp_module-hfspluscomp.obj: fs/hfspluscomp.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(hfspluscomp_module_CPPFLAGS) $(CPPFLAGS) $(hfspluscomp_module_CFLAGS) $(CFLAGS) -MT fs/hfspluscomp_module-hfspluscomp.obj -MD -MP -MF fs/$(DEPDIR)/hfspluscomp_module-hfspluscomp.Tpo -c -o fs/hfspluscomp_module-hfspluscomp.obj `if test -f 'fs/hfspluscomp.c'; then $(CYGPATH_W) 'fs/hfspluscomp.c'; else $(CYGPATH_W) '$(srcdir)/fs/hfspluscomp.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) fs/$(DEPDIR)/hfspluscomp_module-hfspluscomp.Tpo fs/$(DEPDIR)/hfspluscomp_module-hfspluscomp.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='fs/hfspluscomp.c' object='fs/hfspluscomp_module-hfspluscomp.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(hfspluscomp_module_CPPFLAGS) $(CPPFLAGS) $(hfspluscomp_module_CFLAGS) $(CFLAGS) -c -o fs/hfspluscomp_module-hfspluscomp.obj `if test -f 'fs/hfspluscomp.c'; then $(CYGPATH_W) 'fs/hfspluscomp.c'; else $(CYGPATH_W) '$(srcdir)/fs/hfspluscomp.c'; fi` - -net/http_module-http.o: net/http.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(http_module_CPPFLAGS) $(CPPFLAGS) $(http_module_CFLAGS) $(CFLAGS) -MT net/http_module-http.o -MD -MP -MF net/$(DEPDIR)/http_module-http.Tpo -c -o net/http_module-http.o `test -f 'net/http.c' || echo '$(srcdir)/'`net/http.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) net/$(DEPDIR)/http_module-http.Tpo net/$(DEPDIR)/http_module-http.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='net/http.c' object='net/http_module-http.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(http_module_CPPFLAGS) $(CPPFLAGS) $(http_module_CFLAGS) $(CFLAGS) -c -o net/http_module-http.o `test -f 'net/http.c' || echo '$(srcdir)/'`net/http.c - -net/http_module-http.obj: net/http.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(http_module_CPPFLAGS) $(CPPFLAGS) $(http_module_CFLAGS) $(CFLAGS) -MT net/http_module-http.obj -MD -MP -MF net/$(DEPDIR)/http_module-http.Tpo -c -o net/http_module-http.obj `if test -f 'net/http.c'; then $(CYGPATH_W) 'net/http.c'; else $(CYGPATH_W) '$(srcdir)/net/http.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) net/$(DEPDIR)/http_module-http.Tpo net/$(DEPDIR)/http_module-http.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='net/http.c' object='net/http_module-http.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(http_module_CPPFLAGS) $(CPPFLAGS) $(http_module_CFLAGS) $(CFLAGS) -c -o net/http_module-http.obj `if test -f 'net/http.c'; then $(CYGPATH_W) 'net/http.c'; else $(CYGPATH_W) '$(srcdir)/net/http.c'; fi` - -video/ieee1275_fb_module-ieee1275.o: video/ieee1275.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ieee1275_fb_module_CPPFLAGS) $(CPPFLAGS) $(ieee1275_fb_module_CFLAGS) $(CFLAGS) -MT video/ieee1275_fb_module-ieee1275.o -MD -MP -MF video/$(DEPDIR)/ieee1275_fb_module-ieee1275.Tpo -c -o video/ieee1275_fb_module-ieee1275.o `test -f 'video/ieee1275.c' || echo '$(srcdir)/'`video/ieee1275.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) video/$(DEPDIR)/ieee1275_fb_module-ieee1275.Tpo video/$(DEPDIR)/ieee1275_fb_module-ieee1275.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='video/ieee1275.c' object='video/ieee1275_fb_module-ieee1275.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ieee1275_fb_module_CPPFLAGS) $(CPPFLAGS) $(ieee1275_fb_module_CFLAGS) $(CFLAGS) -c -o video/ieee1275_fb_module-ieee1275.o `test -f 'video/ieee1275.c' || echo '$(srcdir)/'`video/ieee1275.c - -video/ieee1275_fb_module-ieee1275.obj: video/ieee1275.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ieee1275_fb_module_CPPFLAGS) $(CPPFLAGS) $(ieee1275_fb_module_CFLAGS) $(CFLAGS) -MT video/ieee1275_fb_module-ieee1275.obj -MD -MP -MF video/$(DEPDIR)/ieee1275_fb_module-ieee1275.Tpo -c -o video/ieee1275_fb_module-ieee1275.obj `if test -f 'video/ieee1275.c'; then $(CYGPATH_W) 'video/ieee1275.c'; else $(CYGPATH_W) '$(srcdir)/video/ieee1275.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) video/$(DEPDIR)/ieee1275_fb_module-ieee1275.Tpo video/$(DEPDIR)/ieee1275_fb_module-ieee1275.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='video/ieee1275.c' object='video/ieee1275_fb_module-ieee1275.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ieee1275_fb_module_CPPFLAGS) $(CPPFLAGS) $(ieee1275_fb_module_CFLAGS) $(CFLAGS) -c -o video/ieee1275_fb_module-ieee1275.obj `if test -f 'video/ieee1275.c'; then $(CYGPATH_W) 'video/ieee1275.c'; else $(CYGPATH_W) '$(srcdir)/video/ieee1275.c'; fi` - -commands/iorw_module-iorw.o: commands/iorw.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(iorw_module_CPPFLAGS) $(CPPFLAGS) $(iorw_module_CFLAGS) $(CFLAGS) -MT commands/iorw_module-iorw.o -MD -MP -MF commands/$(DEPDIR)/iorw_module-iorw.Tpo -c -o commands/iorw_module-iorw.o `test -f 'commands/iorw.c' || echo '$(srcdir)/'`commands/iorw.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/$(DEPDIR)/iorw_module-iorw.Tpo commands/$(DEPDIR)/iorw_module-iorw.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/iorw.c' object='commands/iorw_module-iorw.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(iorw_module_CPPFLAGS) $(CPPFLAGS) $(iorw_module_CFLAGS) $(CFLAGS) -c -o commands/iorw_module-iorw.o `test -f 'commands/iorw.c' || echo '$(srcdir)/'`commands/iorw.c - -commands/iorw_module-iorw.obj: commands/iorw.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(iorw_module_CPPFLAGS) $(CPPFLAGS) $(iorw_module_CFLAGS) $(CFLAGS) -MT commands/iorw_module-iorw.obj -MD -MP -MF commands/$(DEPDIR)/iorw_module-iorw.Tpo -c -o commands/iorw_module-iorw.obj `if test -f 'commands/iorw.c'; then $(CYGPATH_W) 'commands/iorw.c'; else $(CYGPATH_W) '$(srcdir)/commands/iorw.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/$(DEPDIR)/iorw_module-iorw.Tpo commands/$(DEPDIR)/iorw_module-iorw.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/iorw.c' object='commands/iorw_module-iorw.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(iorw_module_CPPFLAGS) $(CPPFLAGS) $(iorw_module_CFLAGS) $(CFLAGS) -c -o commands/iorw_module-iorw.obj `if test -f 'commands/iorw.c'; then $(CYGPATH_W) 'commands/iorw.c'; else $(CYGPATH_W) '$(srcdir)/commands/iorw.c'; fi` - -fs/iso9660_module-iso9660.o: fs/iso9660.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(iso9660_module_CPPFLAGS) $(CPPFLAGS) $(iso9660_module_CFLAGS) $(CFLAGS) -MT fs/iso9660_module-iso9660.o -MD -MP -MF fs/$(DEPDIR)/iso9660_module-iso9660.Tpo -c -o fs/iso9660_module-iso9660.o `test -f 'fs/iso9660.c' || echo '$(srcdir)/'`fs/iso9660.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) fs/$(DEPDIR)/iso9660_module-iso9660.Tpo fs/$(DEPDIR)/iso9660_module-iso9660.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='fs/iso9660.c' object='fs/iso9660_module-iso9660.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(iso9660_module_CPPFLAGS) $(CPPFLAGS) $(iso9660_module_CFLAGS) $(CFLAGS) -c -o fs/iso9660_module-iso9660.o `test -f 'fs/iso9660.c' || echo '$(srcdir)/'`fs/iso9660.c - -fs/iso9660_module-iso9660.obj: fs/iso9660.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(iso9660_module_CPPFLAGS) $(CPPFLAGS) $(iso9660_module_CFLAGS) $(CFLAGS) -MT fs/iso9660_module-iso9660.obj -MD -MP -MF fs/$(DEPDIR)/iso9660_module-iso9660.Tpo -c -o fs/iso9660_module-iso9660.obj `if test -f 'fs/iso9660.c'; then $(CYGPATH_W) 'fs/iso9660.c'; else $(CYGPATH_W) '$(srcdir)/fs/iso9660.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) fs/$(DEPDIR)/iso9660_module-iso9660.Tpo fs/$(DEPDIR)/iso9660_module-iso9660.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='fs/iso9660.c' object='fs/iso9660_module-iso9660.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(iso9660_module_CPPFLAGS) $(CPPFLAGS) $(iso9660_module_CFLAGS) $(CFLAGS) -c -o fs/iso9660_module-iso9660.obj `if test -f 'fs/iso9660.c'; then $(CYGPATH_W) 'fs/iso9660.c'; else $(CYGPATH_W) '$(srcdir)/fs/iso9660.c'; fi` - -fs/jfs_module-jfs.o: fs/jfs.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(jfs_module_CPPFLAGS) $(CPPFLAGS) $(jfs_module_CFLAGS) $(CFLAGS) -MT fs/jfs_module-jfs.o -MD -MP -MF fs/$(DEPDIR)/jfs_module-jfs.Tpo -c -o fs/jfs_module-jfs.o `test -f 'fs/jfs.c' || echo '$(srcdir)/'`fs/jfs.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) fs/$(DEPDIR)/jfs_module-jfs.Tpo fs/$(DEPDIR)/jfs_module-jfs.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='fs/jfs.c' object='fs/jfs_module-jfs.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(jfs_module_CPPFLAGS) $(CPPFLAGS) $(jfs_module_CFLAGS) $(CFLAGS) -c -o fs/jfs_module-jfs.o `test -f 'fs/jfs.c' || echo '$(srcdir)/'`fs/jfs.c - -fs/jfs_module-jfs.obj: fs/jfs.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(jfs_module_CPPFLAGS) $(CPPFLAGS) $(jfs_module_CFLAGS) $(CFLAGS) -MT fs/jfs_module-jfs.obj -MD -MP -MF fs/$(DEPDIR)/jfs_module-jfs.Tpo -c -o fs/jfs_module-jfs.obj `if test -f 'fs/jfs.c'; then $(CYGPATH_W) 'fs/jfs.c'; else $(CYGPATH_W) '$(srcdir)/fs/jfs.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) fs/$(DEPDIR)/jfs_module-jfs.Tpo fs/$(DEPDIR)/jfs_module-jfs.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='fs/jfs.c' object='fs/jfs_module-jfs.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(jfs_module_CPPFLAGS) $(CPPFLAGS) $(jfs_module_CFLAGS) $(CFLAGS) -c -o fs/jfs_module-jfs.obj `if test -f 'fs/jfs.c'; then $(CYGPATH_W) 'fs/jfs.c'; else $(CYGPATH_W) '$(srcdir)/fs/jfs.c'; fi` - -video/readers/jpeg_module-jpeg.o: video/readers/jpeg.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(jpeg_module_CPPFLAGS) $(CPPFLAGS) $(jpeg_module_CFLAGS) $(CFLAGS) -MT video/readers/jpeg_module-jpeg.o -MD -MP -MF video/readers/$(DEPDIR)/jpeg_module-jpeg.Tpo -c -o video/readers/jpeg_module-jpeg.o `test -f 'video/readers/jpeg.c' || echo '$(srcdir)/'`video/readers/jpeg.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) video/readers/$(DEPDIR)/jpeg_module-jpeg.Tpo video/readers/$(DEPDIR)/jpeg_module-jpeg.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='video/readers/jpeg.c' object='video/readers/jpeg_module-jpeg.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(jpeg_module_CPPFLAGS) $(CPPFLAGS) $(jpeg_module_CFLAGS) $(CFLAGS) -c -o video/readers/jpeg_module-jpeg.o `test -f 'video/readers/jpeg.c' || echo '$(srcdir)/'`video/readers/jpeg.c - -video/readers/jpeg_module-jpeg.obj: video/readers/jpeg.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(jpeg_module_CPPFLAGS) $(CPPFLAGS) $(jpeg_module_CFLAGS) $(CFLAGS) -MT video/readers/jpeg_module-jpeg.obj -MD -MP -MF video/readers/$(DEPDIR)/jpeg_module-jpeg.Tpo -c -o video/readers/jpeg_module-jpeg.obj `if test -f 'video/readers/jpeg.c'; then $(CYGPATH_W) 'video/readers/jpeg.c'; else $(CYGPATH_W) '$(srcdir)/video/readers/jpeg.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) video/readers/$(DEPDIR)/jpeg_module-jpeg.Tpo video/readers/$(DEPDIR)/jpeg_module-jpeg.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='video/readers/jpeg.c' object='video/readers/jpeg_module-jpeg.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(jpeg_module_CPPFLAGS) $(CPPFLAGS) $(jpeg_module_CFLAGS) $(CFLAGS) -c -o video/readers/jpeg_module-jpeg.obj `if test -f 'video/readers/jpeg.c'; then $(CYGPATH_W) 'video/readers/jpeg.c'; else $(CYGPATH_W) '$(srcdir)/video/readers/jpeg.c'; fi` - -kern/arm64/efi/kernel_exec-init.o: kern/arm64/efi/init.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/arm64/efi/kernel_exec-init.o -MD -MP -MF kern/arm64/efi/$(DEPDIR)/kernel_exec-init.Tpo -c -o kern/arm64/efi/kernel_exec-init.o `test -f 'kern/arm64/efi/init.c' || echo '$(srcdir)/'`kern/arm64/efi/init.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/arm64/efi/$(DEPDIR)/kernel_exec-init.Tpo kern/arm64/efi/$(DEPDIR)/kernel_exec-init.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/arm64/efi/init.c' object='kern/arm64/efi/kernel_exec-init.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/arm64/efi/kernel_exec-init.o `test -f 'kern/arm64/efi/init.c' || echo '$(srcdir)/'`kern/arm64/efi/init.c - -kern/arm64/efi/kernel_exec-init.obj: kern/arm64/efi/init.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/arm64/efi/kernel_exec-init.obj -MD -MP -MF kern/arm64/efi/$(DEPDIR)/kernel_exec-init.Tpo -c -o kern/arm64/efi/kernel_exec-init.obj `if test -f 'kern/arm64/efi/init.c'; then $(CYGPATH_W) 'kern/arm64/efi/init.c'; else $(CYGPATH_W) '$(srcdir)/kern/arm64/efi/init.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/arm64/efi/$(DEPDIR)/kernel_exec-init.Tpo kern/arm64/efi/$(DEPDIR)/kernel_exec-init.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/arm64/efi/init.c' object='kern/arm64/efi/kernel_exec-init.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/arm64/efi/kernel_exec-init.obj `if test -f 'kern/arm64/efi/init.c'; then $(CYGPATH_W) 'kern/arm64/efi/init.c'; else $(CYGPATH_W) '$(srcdir)/kern/arm64/efi/init.c'; fi` - -kern/efi/kernel_exec-fdt.o: kern/efi/fdt.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/efi/kernel_exec-fdt.o -MD -MP -MF kern/efi/$(DEPDIR)/kernel_exec-fdt.Tpo -c -o kern/efi/kernel_exec-fdt.o `test -f 'kern/efi/fdt.c' || echo '$(srcdir)/'`kern/efi/fdt.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/efi/$(DEPDIR)/kernel_exec-fdt.Tpo kern/efi/$(DEPDIR)/kernel_exec-fdt.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/efi/fdt.c' object='kern/efi/kernel_exec-fdt.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/efi/kernel_exec-fdt.o `test -f 'kern/efi/fdt.c' || echo '$(srcdir)/'`kern/efi/fdt.c - -kern/efi/kernel_exec-fdt.obj: kern/efi/fdt.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/efi/kernel_exec-fdt.obj -MD -MP -MF kern/efi/$(DEPDIR)/kernel_exec-fdt.Tpo -c -o kern/efi/kernel_exec-fdt.obj `if test -f 'kern/efi/fdt.c'; then $(CYGPATH_W) 'kern/efi/fdt.c'; else $(CYGPATH_W) '$(srcdir)/kern/efi/fdt.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/efi/$(DEPDIR)/kernel_exec-fdt.Tpo kern/efi/$(DEPDIR)/kernel_exec-fdt.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/efi/fdt.c' object='kern/efi/kernel_exec-fdt.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/efi/kernel_exec-fdt.obj `if test -f 'kern/efi/fdt.c'; then $(CYGPATH_W) 'kern/efi/fdt.c'; else $(CYGPATH_W) '$(srcdir)/kern/efi/fdt.c'; fi` - -kern/arm64/kernel_exec-cache.o: kern/arm64/cache.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/arm64/kernel_exec-cache.o -MD -MP -MF kern/arm64/$(DEPDIR)/kernel_exec-cache.Tpo -c -o kern/arm64/kernel_exec-cache.o `test -f 'kern/arm64/cache.c' || echo '$(srcdir)/'`kern/arm64/cache.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/arm64/$(DEPDIR)/kernel_exec-cache.Tpo kern/arm64/$(DEPDIR)/kernel_exec-cache.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/arm64/cache.c' object='kern/arm64/kernel_exec-cache.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/arm64/kernel_exec-cache.o `test -f 'kern/arm64/cache.c' || echo '$(srcdir)/'`kern/arm64/cache.c - -kern/arm64/kernel_exec-cache.obj: kern/arm64/cache.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/arm64/kernel_exec-cache.obj -MD -MP -MF kern/arm64/$(DEPDIR)/kernel_exec-cache.Tpo -c -o kern/arm64/kernel_exec-cache.obj `if test -f 'kern/arm64/cache.c'; then $(CYGPATH_W) 'kern/arm64/cache.c'; else $(CYGPATH_W) '$(srcdir)/kern/arm64/cache.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/arm64/$(DEPDIR)/kernel_exec-cache.Tpo kern/arm64/$(DEPDIR)/kernel_exec-cache.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/arm64/cache.c' object='kern/arm64/kernel_exec-cache.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/arm64/kernel_exec-cache.obj `if test -f 'kern/arm64/cache.c'; then $(CYGPATH_W) 'kern/arm64/cache.c'; else $(CYGPATH_W) '$(srcdir)/kern/arm64/cache.c'; fi` - -kern/arm64/kernel_exec-dl.o: kern/arm64/dl.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/arm64/kernel_exec-dl.o -MD -MP -MF kern/arm64/$(DEPDIR)/kernel_exec-dl.Tpo -c -o kern/arm64/kernel_exec-dl.o `test -f 'kern/arm64/dl.c' || echo '$(srcdir)/'`kern/arm64/dl.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/arm64/$(DEPDIR)/kernel_exec-dl.Tpo kern/arm64/$(DEPDIR)/kernel_exec-dl.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/arm64/dl.c' object='kern/arm64/kernel_exec-dl.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/arm64/kernel_exec-dl.o `test -f 'kern/arm64/dl.c' || echo '$(srcdir)/'`kern/arm64/dl.c - -kern/arm64/kernel_exec-dl.obj: kern/arm64/dl.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/arm64/kernel_exec-dl.obj -MD -MP -MF kern/arm64/$(DEPDIR)/kernel_exec-dl.Tpo -c -o kern/arm64/kernel_exec-dl.obj `if test -f 'kern/arm64/dl.c'; then $(CYGPATH_W) 'kern/arm64/dl.c'; else $(CYGPATH_W) '$(srcdir)/kern/arm64/dl.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/arm64/$(DEPDIR)/kernel_exec-dl.Tpo kern/arm64/$(DEPDIR)/kernel_exec-dl.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/arm64/dl.c' object='kern/arm64/kernel_exec-dl.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/arm64/kernel_exec-dl.obj `if test -f 'kern/arm64/dl.c'; then $(CYGPATH_W) 'kern/arm64/dl.c'; else $(CYGPATH_W) '$(srcdir)/kern/arm64/dl.c'; fi` - -kern/arm64/kernel_exec-dl_helper.o: kern/arm64/dl_helper.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/arm64/kernel_exec-dl_helper.o -MD -MP -MF kern/arm64/$(DEPDIR)/kernel_exec-dl_helper.Tpo -c -o kern/arm64/kernel_exec-dl_helper.o `test -f 'kern/arm64/dl_helper.c' || echo '$(srcdir)/'`kern/arm64/dl_helper.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/arm64/$(DEPDIR)/kernel_exec-dl_helper.Tpo kern/arm64/$(DEPDIR)/kernel_exec-dl_helper.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/arm64/dl_helper.c' object='kern/arm64/kernel_exec-dl_helper.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/arm64/kernel_exec-dl_helper.o `test -f 'kern/arm64/dl_helper.c' || echo '$(srcdir)/'`kern/arm64/dl_helper.c - -kern/arm64/kernel_exec-dl_helper.obj: kern/arm64/dl_helper.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/arm64/kernel_exec-dl_helper.obj -MD -MP -MF kern/arm64/$(DEPDIR)/kernel_exec-dl_helper.Tpo -c -o kern/arm64/kernel_exec-dl_helper.obj `if test -f 'kern/arm64/dl_helper.c'; then $(CYGPATH_W) 'kern/arm64/dl_helper.c'; else $(CYGPATH_W) '$(srcdir)/kern/arm64/dl_helper.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/arm64/$(DEPDIR)/kernel_exec-dl_helper.Tpo kern/arm64/$(DEPDIR)/kernel_exec-dl_helper.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/arm64/dl_helper.c' object='kern/arm64/kernel_exec-dl_helper.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/arm64/kernel_exec-dl_helper.obj `if test -f 'kern/arm64/dl_helper.c'; then $(CYGPATH_W) 'kern/arm64/dl_helper.c'; else $(CYGPATH_W) '$(srcdir)/kern/arm64/dl_helper.c'; fi` - -disk/efi/kernel_exec-efidisk.o: disk/efi/efidisk.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT disk/efi/kernel_exec-efidisk.o -MD -MP -MF disk/efi/$(DEPDIR)/kernel_exec-efidisk.Tpo -c -o disk/efi/kernel_exec-efidisk.o `test -f 'disk/efi/efidisk.c' || echo '$(srcdir)/'`disk/efi/efidisk.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) disk/efi/$(DEPDIR)/kernel_exec-efidisk.Tpo disk/efi/$(DEPDIR)/kernel_exec-efidisk.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='disk/efi/efidisk.c' object='disk/efi/kernel_exec-efidisk.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o disk/efi/kernel_exec-efidisk.o `test -f 'disk/efi/efidisk.c' || echo '$(srcdir)/'`disk/efi/efidisk.c - -disk/efi/kernel_exec-efidisk.obj: disk/efi/efidisk.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT disk/efi/kernel_exec-efidisk.obj -MD -MP -MF disk/efi/$(DEPDIR)/kernel_exec-efidisk.Tpo -c -o disk/efi/kernel_exec-efidisk.obj `if test -f 'disk/efi/efidisk.c'; then $(CYGPATH_W) 'disk/efi/efidisk.c'; else $(CYGPATH_W) '$(srcdir)/disk/efi/efidisk.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) disk/efi/$(DEPDIR)/kernel_exec-efidisk.Tpo disk/efi/$(DEPDIR)/kernel_exec-efidisk.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='disk/efi/efidisk.c' object='disk/efi/kernel_exec-efidisk.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o disk/efi/kernel_exec-efidisk.obj `if test -f 'disk/efi/efidisk.c'; then $(CYGPATH_W) 'disk/efi/efidisk.c'; else $(CYGPATH_W) '$(srcdir)/disk/efi/efidisk.c'; fi` - -kern/efi/kernel_exec-efi.o: kern/efi/efi.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/efi/kernel_exec-efi.o -MD -MP -MF kern/efi/$(DEPDIR)/kernel_exec-efi.Tpo -c -o kern/efi/kernel_exec-efi.o `test -f 'kern/efi/efi.c' || echo '$(srcdir)/'`kern/efi/efi.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/efi/$(DEPDIR)/kernel_exec-efi.Tpo kern/efi/$(DEPDIR)/kernel_exec-efi.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/efi/efi.c' object='kern/efi/kernel_exec-efi.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/efi/kernel_exec-efi.o `test -f 'kern/efi/efi.c' || echo '$(srcdir)/'`kern/efi/efi.c - -kern/efi/kernel_exec-efi.obj: kern/efi/efi.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/efi/kernel_exec-efi.obj -MD -MP -MF kern/efi/$(DEPDIR)/kernel_exec-efi.Tpo -c -o kern/efi/kernel_exec-efi.obj `if test -f 'kern/efi/efi.c'; then $(CYGPATH_W) 'kern/efi/efi.c'; else $(CYGPATH_W) '$(srcdir)/kern/efi/efi.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/efi/$(DEPDIR)/kernel_exec-efi.Tpo kern/efi/$(DEPDIR)/kernel_exec-efi.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/efi/efi.c' object='kern/efi/kernel_exec-efi.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/efi/kernel_exec-efi.obj `if test -f 'kern/efi/efi.c'; then $(CYGPATH_W) 'kern/efi/efi.c'; else $(CYGPATH_W) '$(srcdir)/kern/efi/efi.c'; fi` - -kern/efi/kernel_exec-init.o: kern/efi/init.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/efi/kernel_exec-init.o -MD -MP -MF kern/efi/$(DEPDIR)/kernel_exec-init.Tpo -c -o kern/efi/kernel_exec-init.o `test -f 'kern/efi/init.c' || echo '$(srcdir)/'`kern/efi/init.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/efi/$(DEPDIR)/kernel_exec-init.Tpo kern/efi/$(DEPDIR)/kernel_exec-init.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/efi/init.c' object='kern/efi/kernel_exec-init.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/efi/kernel_exec-init.o `test -f 'kern/efi/init.c' || echo '$(srcdir)/'`kern/efi/init.c - -kern/efi/kernel_exec-init.obj: kern/efi/init.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/efi/kernel_exec-init.obj -MD -MP -MF kern/efi/$(DEPDIR)/kernel_exec-init.Tpo -c -o kern/efi/kernel_exec-init.obj `if test -f 'kern/efi/init.c'; then $(CYGPATH_W) 'kern/efi/init.c'; else $(CYGPATH_W) '$(srcdir)/kern/efi/init.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/efi/$(DEPDIR)/kernel_exec-init.Tpo kern/efi/$(DEPDIR)/kernel_exec-init.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/efi/init.c' object='kern/efi/kernel_exec-init.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/efi/kernel_exec-init.obj `if test -f 'kern/efi/init.c'; then $(CYGPATH_W) 'kern/efi/init.c'; else $(CYGPATH_W) '$(srcdir)/kern/efi/init.c'; fi` - -kern/efi/kernel_exec-mm.o: kern/efi/mm.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/efi/kernel_exec-mm.o -MD -MP -MF kern/efi/$(DEPDIR)/kernel_exec-mm.Tpo -c -o kern/efi/kernel_exec-mm.o `test -f 'kern/efi/mm.c' || echo '$(srcdir)/'`kern/efi/mm.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/efi/$(DEPDIR)/kernel_exec-mm.Tpo kern/efi/$(DEPDIR)/kernel_exec-mm.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/efi/mm.c' object='kern/efi/kernel_exec-mm.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/efi/kernel_exec-mm.o `test -f 'kern/efi/mm.c' || echo '$(srcdir)/'`kern/efi/mm.c - -kern/efi/kernel_exec-mm.obj: kern/efi/mm.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/efi/kernel_exec-mm.obj -MD -MP -MF kern/efi/$(DEPDIR)/kernel_exec-mm.Tpo -c -o kern/efi/kernel_exec-mm.obj `if test -f 'kern/efi/mm.c'; then $(CYGPATH_W) 'kern/efi/mm.c'; else $(CYGPATH_W) '$(srcdir)/kern/efi/mm.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/efi/$(DEPDIR)/kernel_exec-mm.Tpo kern/efi/$(DEPDIR)/kernel_exec-mm.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/efi/mm.c' object='kern/efi/kernel_exec-mm.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/efi/kernel_exec-mm.obj `if test -f 'kern/efi/mm.c'; then $(CYGPATH_W) 'kern/efi/mm.c'; else $(CYGPATH_W) '$(srcdir)/kern/efi/mm.c'; fi` - -term/efi/kernel_exec-console.o: term/efi/console.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT term/efi/kernel_exec-console.o -MD -MP -MF term/efi/$(DEPDIR)/kernel_exec-console.Tpo -c -o term/efi/kernel_exec-console.o `test -f 'term/efi/console.c' || echo '$(srcdir)/'`term/efi/console.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) term/efi/$(DEPDIR)/kernel_exec-console.Tpo term/efi/$(DEPDIR)/kernel_exec-console.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='term/efi/console.c' object='term/efi/kernel_exec-console.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o term/efi/kernel_exec-console.o `test -f 'term/efi/console.c' || echo '$(srcdir)/'`term/efi/console.c - -term/efi/kernel_exec-console.obj: term/efi/console.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT term/efi/kernel_exec-console.obj -MD -MP -MF term/efi/$(DEPDIR)/kernel_exec-console.Tpo -c -o term/efi/kernel_exec-console.obj `if test -f 'term/efi/console.c'; then $(CYGPATH_W) 'term/efi/console.c'; else $(CYGPATH_W) '$(srcdir)/term/efi/console.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) term/efi/$(DEPDIR)/kernel_exec-console.Tpo term/efi/$(DEPDIR)/kernel_exec-console.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='term/efi/console.c' object='term/efi/kernel_exec-console.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o term/efi/kernel_exec-console.obj `if test -f 'term/efi/console.c'; then $(CYGPATH_W) 'term/efi/console.c'; else $(CYGPATH_W) '$(srcdir)/term/efi/console.c'; fi` - -kern/kernel_exec-acpi.o: kern/acpi.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/kernel_exec-acpi.o -MD -MP -MF kern/$(DEPDIR)/kernel_exec-acpi.Tpo -c -o kern/kernel_exec-acpi.o `test -f 'kern/acpi.c' || echo '$(srcdir)/'`kern/acpi.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/$(DEPDIR)/kernel_exec-acpi.Tpo kern/$(DEPDIR)/kernel_exec-acpi.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/acpi.c' object='kern/kernel_exec-acpi.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/kernel_exec-acpi.o `test -f 'kern/acpi.c' || echo '$(srcdir)/'`kern/acpi.c - -kern/kernel_exec-acpi.obj: kern/acpi.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/kernel_exec-acpi.obj -MD -MP -MF kern/$(DEPDIR)/kernel_exec-acpi.Tpo -c -o kern/kernel_exec-acpi.obj `if test -f 'kern/acpi.c'; then $(CYGPATH_W) 'kern/acpi.c'; else $(CYGPATH_W) '$(srcdir)/kern/acpi.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/$(DEPDIR)/kernel_exec-acpi.Tpo kern/$(DEPDIR)/kernel_exec-acpi.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/acpi.c' object='kern/kernel_exec-acpi.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/kernel_exec-acpi.obj `if test -f 'kern/acpi.c'; then $(CYGPATH_W) 'kern/acpi.c'; else $(CYGPATH_W) '$(srcdir)/kern/acpi.c'; fi` - -kern/efi/kernel_exec-acpi.o: kern/efi/acpi.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/efi/kernel_exec-acpi.o -MD -MP -MF kern/efi/$(DEPDIR)/kernel_exec-acpi.Tpo -c -o kern/efi/kernel_exec-acpi.o `test -f 'kern/efi/acpi.c' || echo '$(srcdir)/'`kern/efi/acpi.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/efi/$(DEPDIR)/kernel_exec-acpi.Tpo kern/efi/$(DEPDIR)/kernel_exec-acpi.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/efi/acpi.c' object='kern/efi/kernel_exec-acpi.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/efi/kernel_exec-acpi.o `test -f 'kern/efi/acpi.c' || echo '$(srcdir)/'`kern/efi/acpi.c - -kern/efi/kernel_exec-acpi.obj: kern/efi/acpi.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/efi/kernel_exec-acpi.obj -MD -MP -MF kern/efi/$(DEPDIR)/kernel_exec-acpi.Tpo -c -o kern/efi/kernel_exec-acpi.obj `if test -f 'kern/efi/acpi.c'; then $(CYGPATH_W) 'kern/efi/acpi.c'; else $(CYGPATH_W) '$(srcdir)/kern/efi/acpi.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/efi/$(DEPDIR)/kernel_exec-acpi.Tpo kern/efi/$(DEPDIR)/kernel_exec-acpi.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/efi/acpi.c' object='kern/efi/kernel_exec-acpi.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/efi/kernel_exec-acpi.obj `if test -f 'kern/efi/acpi.c'; then $(CYGPATH_W) 'kern/efi/acpi.c'; else $(CYGPATH_W) '$(srcdir)/kern/efi/acpi.c'; fi` - -kern/kernel_exec-compiler-rt.o: kern/compiler-rt.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/kernel_exec-compiler-rt.o -MD -MP -MF kern/$(DEPDIR)/kernel_exec-compiler-rt.Tpo -c -o kern/kernel_exec-compiler-rt.o `test -f 'kern/compiler-rt.c' || echo '$(srcdir)/'`kern/compiler-rt.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/$(DEPDIR)/kernel_exec-compiler-rt.Tpo kern/$(DEPDIR)/kernel_exec-compiler-rt.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/compiler-rt.c' object='kern/kernel_exec-compiler-rt.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/kernel_exec-compiler-rt.o `test -f 'kern/compiler-rt.c' || echo '$(srcdir)/'`kern/compiler-rt.c - -kern/kernel_exec-compiler-rt.obj: kern/compiler-rt.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/kernel_exec-compiler-rt.obj -MD -MP -MF kern/$(DEPDIR)/kernel_exec-compiler-rt.Tpo -c -o kern/kernel_exec-compiler-rt.obj `if test -f 'kern/compiler-rt.c'; then $(CYGPATH_W) 'kern/compiler-rt.c'; else $(CYGPATH_W) '$(srcdir)/kern/compiler-rt.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/$(DEPDIR)/kernel_exec-compiler-rt.Tpo kern/$(DEPDIR)/kernel_exec-compiler-rt.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/compiler-rt.c' object='kern/kernel_exec-compiler-rt.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/kernel_exec-compiler-rt.obj `if test -f 'kern/compiler-rt.c'; then $(CYGPATH_W) 'kern/compiler-rt.c'; else $(CYGPATH_W) '$(srcdir)/kern/compiler-rt.c'; fi` - -kern/kernel_exec-mm.o: kern/mm.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/kernel_exec-mm.o -MD -MP -MF kern/$(DEPDIR)/kernel_exec-mm.Tpo -c -o kern/kernel_exec-mm.o `test -f 'kern/mm.c' || echo '$(srcdir)/'`kern/mm.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/$(DEPDIR)/kernel_exec-mm.Tpo kern/$(DEPDIR)/kernel_exec-mm.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/mm.c' object='kern/kernel_exec-mm.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/kernel_exec-mm.o `test -f 'kern/mm.c' || echo '$(srcdir)/'`kern/mm.c - -kern/kernel_exec-mm.obj: kern/mm.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/kernel_exec-mm.obj -MD -MP -MF kern/$(DEPDIR)/kernel_exec-mm.Tpo -c -o kern/kernel_exec-mm.obj `if test -f 'kern/mm.c'; then $(CYGPATH_W) 'kern/mm.c'; else $(CYGPATH_W) '$(srcdir)/kern/mm.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/$(DEPDIR)/kernel_exec-mm.Tpo kern/$(DEPDIR)/kernel_exec-mm.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/mm.c' object='kern/kernel_exec-mm.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/kernel_exec-mm.obj `if test -f 'kern/mm.c'; then $(CYGPATH_W) 'kern/mm.c'; else $(CYGPATH_W) '$(srcdir)/kern/mm.c'; fi` - -kern/kernel_exec-time.o: kern/time.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/kernel_exec-time.o -MD -MP -MF kern/$(DEPDIR)/kernel_exec-time.Tpo -c -o kern/kernel_exec-time.o `test -f 'kern/time.c' || echo '$(srcdir)/'`kern/time.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/$(DEPDIR)/kernel_exec-time.Tpo kern/$(DEPDIR)/kernel_exec-time.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/time.c' object='kern/kernel_exec-time.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/kernel_exec-time.o `test -f 'kern/time.c' || echo '$(srcdir)/'`kern/time.c - -kern/kernel_exec-time.obj: kern/time.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/kernel_exec-time.obj -MD -MP -MF kern/$(DEPDIR)/kernel_exec-time.Tpo -c -o kern/kernel_exec-time.obj `if test -f 'kern/time.c'; then $(CYGPATH_W) 'kern/time.c'; else $(CYGPATH_W) '$(srcdir)/kern/time.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/$(DEPDIR)/kernel_exec-time.Tpo kern/$(DEPDIR)/kernel_exec-time.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/time.c' object='kern/kernel_exec-time.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/kernel_exec-time.obj `if test -f 'kern/time.c'; then $(CYGPATH_W) 'kern/time.c'; else $(CYGPATH_W) '$(srcdir)/kern/time.c'; fi` - -kern/generic/kernel_exec-millisleep.o: kern/generic/millisleep.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/generic/kernel_exec-millisleep.o -MD -MP -MF kern/generic/$(DEPDIR)/kernel_exec-millisleep.Tpo -c -o kern/generic/kernel_exec-millisleep.o `test -f 'kern/generic/millisleep.c' || echo '$(srcdir)/'`kern/generic/millisleep.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/generic/$(DEPDIR)/kernel_exec-millisleep.Tpo kern/generic/$(DEPDIR)/kernel_exec-millisleep.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/generic/millisleep.c' object='kern/generic/kernel_exec-millisleep.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/generic/kernel_exec-millisleep.o `test -f 'kern/generic/millisleep.c' || echo '$(srcdir)/'`kern/generic/millisleep.c - -kern/generic/kernel_exec-millisleep.obj: kern/generic/millisleep.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/generic/kernel_exec-millisleep.obj -MD -MP -MF kern/generic/$(DEPDIR)/kernel_exec-millisleep.Tpo -c -o kern/generic/kernel_exec-millisleep.obj `if test -f 'kern/generic/millisleep.c'; then $(CYGPATH_W) 'kern/generic/millisleep.c'; else $(CYGPATH_W) '$(srcdir)/kern/generic/millisleep.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/generic/$(DEPDIR)/kernel_exec-millisleep.Tpo kern/generic/$(DEPDIR)/kernel_exec-millisleep.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/generic/millisleep.c' object='kern/generic/kernel_exec-millisleep.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/generic/kernel_exec-millisleep.obj `if test -f 'kern/generic/millisleep.c'; then $(CYGPATH_W) 'kern/generic/millisleep.c'; else $(CYGPATH_W) '$(srcdir)/kern/generic/millisleep.c'; fi` - -kern/kernel_exec-command.o: kern/command.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/kernel_exec-command.o -MD -MP -MF kern/$(DEPDIR)/kernel_exec-command.Tpo -c -o kern/kernel_exec-command.o `test -f 'kern/command.c' || echo '$(srcdir)/'`kern/command.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/$(DEPDIR)/kernel_exec-command.Tpo kern/$(DEPDIR)/kernel_exec-command.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/command.c' object='kern/kernel_exec-command.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/kernel_exec-command.o `test -f 'kern/command.c' || echo '$(srcdir)/'`kern/command.c - -kern/kernel_exec-command.obj: kern/command.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/kernel_exec-command.obj -MD -MP -MF kern/$(DEPDIR)/kernel_exec-command.Tpo -c -o kern/kernel_exec-command.obj `if test -f 'kern/command.c'; then $(CYGPATH_W) 'kern/command.c'; else $(CYGPATH_W) '$(srcdir)/kern/command.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/$(DEPDIR)/kernel_exec-command.Tpo kern/$(DEPDIR)/kernel_exec-command.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/command.c' object='kern/kernel_exec-command.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/kernel_exec-command.obj `if test -f 'kern/command.c'; then $(CYGPATH_W) 'kern/command.c'; else $(CYGPATH_W) '$(srcdir)/kern/command.c'; fi` - -kern/kernel_exec-corecmd.o: kern/corecmd.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/kernel_exec-corecmd.o -MD -MP -MF kern/$(DEPDIR)/kernel_exec-corecmd.Tpo -c -o kern/kernel_exec-corecmd.o `test -f 'kern/corecmd.c' || echo '$(srcdir)/'`kern/corecmd.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/$(DEPDIR)/kernel_exec-corecmd.Tpo kern/$(DEPDIR)/kernel_exec-corecmd.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/corecmd.c' object='kern/kernel_exec-corecmd.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/kernel_exec-corecmd.o `test -f 'kern/corecmd.c' || echo '$(srcdir)/'`kern/corecmd.c - -kern/kernel_exec-corecmd.obj: kern/corecmd.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/kernel_exec-corecmd.obj -MD -MP -MF kern/$(DEPDIR)/kernel_exec-corecmd.Tpo -c -o kern/kernel_exec-corecmd.obj `if test -f 'kern/corecmd.c'; then $(CYGPATH_W) 'kern/corecmd.c'; else $(CYGPATH_W) '$(srcdir)/kern/corecmd.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/$(DEPDIR)/kernel_exec-corecmd.Tpo kern/$(DEPDIR)/kernel_exec-corecmd.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/corecmd.c' object='kern/kernel_exec-corecmd.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/kernel_exec-corecmd.obj `if test -f 'kern/corecmd.c'; then $(CYGPATH_W) 'kern/corecmd.c'; else $(CYGPATH_W) '$(srcdir)/kern/corecmd.c'; fi` - -kern/kernel_exec-device.o: kern/device.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/kernel_exec-device.o -MD -MP -MF kern/$(DEPDIR)/kernel_exec-device.Tpo -c -o kern/kernel_exec-device.o `test -f 'kern/device.c' || echo '$(srcdir)/'`kern/device.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/$(DEPDIR)/kernel_exec-device.Tpo kern/$(DEPDIR)/kernel_exec-device.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/device.c' object='kern/kernel_exec-device.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/kernel_exec-device.o `test -f 'kern/device.c' || echo '$(srcdir)/'`kern/device.c - -kern/kernel_exec-device.obj: kern/device.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/kernel_exec-device.obj -MD -MP -MF kern/$(DEPDIR)/kernel_exec-device.Tpo -c -o kern/kernel_exec-device.obj `if test -f 'kern/device.c'; then $(CYGPATH_W) 'kern/device.c'; else $(CYGPATH_W) '$(srcdir)/kern/device.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/$(DEPDIR)/kernel_exec-device.Tpo kern/$(DEPDIR)/kernel_exec-device.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/device.c' object='kern/kernel_exec-device.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/kernel_exec-device.obj `if test -f 'kern/device.c'; then $(CYGPATH_W) 'kern/device.c'; else $(CYGPATH_W) '$(srcdir)/kern/device.c'; fi` - -kern/kernel_exec-disk.o: kern/disk.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/kernel_exec-disk.o -MD -MP -MF kern/$(DEPDIR)/kernel_exec-disk.Tpo -c -o kern/kernel_exec-disk.o `test -f 'kern/disk.c' || echo '$(srcdir)/'`kern/disk.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/$(DEPDIR)/kernel_exec-disk.Tpo kern/$(DEPDIR)/kernel_exec-disk.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/disk.c' object='kern/kernel_exec-disk.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/kernel_exec-disk.o `test -f 'kern/disk.c' || echo '$(srcdir)/'`kern/disk.c - -kern/kernel_exec-disk.obj: kern/disk.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/kernel_exec-disk.obj -MD -MP -MF kern/$(DEPDIR)/kernel_exec-disk.Tpo -c -o kern/kernel_exec-disk.obj `if test -f 'kern/disk.c'; then $(CYGPATH_W) 'kern/disk.c'; else $(CYGPATH_W) '$(srcdir)/kern/disk.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/$(DEPDIR)/kernel_exec-disk.Tpo kern/$(DEPDIR)/kernel_exec-disk.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/disk.c' object='kern/kernel_exec-disk.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/kernel_exec-disk.obj `if test -f 'kern/disk.c'; then $(CYGPATH_W) 'kern/disk.c'; else $(CYGPATH_W) '$(srcdir)/kern/disk.c'; fi` - -kern/kernel_exec-dl.o: kern/dl.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/kernel_exec-dl.o -MD -MP -MF kern/$(DEPDIR)/kernel_exec-dl.Tpo -c -o kern/kernel_exec-dl.o `test -f 'kern/dl.c' || echo '$(srcdir)/'`kern/dl.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/$(DEPDIR)/kernel_exec-dl.Tpo kern/$(DEPDIR)/kernel_exec-dl.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/dl.c' object='kern/kernel_exec-dl.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/kernel_exec-dl.o `test -f 'kern/dl.c' || echo '$(srcdir)/'`kern/dl.c - -kern/kernel_exec-dl.obj: kern/dl.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/kernel_exec-dl.obj -MD -MP -MF kern/$(DEPDIR)/kernel_exec-dl.Tpo -c -o kern/kernel_exec-dl.obj `if test -f 'kern/dl.c'; then $(CYGPATH_W) 'kern/dl.c'; else $(CYGPATH_W) '$(srcdir)/kern/dl.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/$(DEPDIR)/kernel_exec-dl.Tpo kern/$(DEPDIR)/kernel_exec-dl.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/dl.c' object='kern/kernel_exec-dl.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/kernel_exec-dl.obj `if test -f 'kern/dl.c'; then $(CYGPATH_W) 'kern/dl.c'; else $(CYGPATH_W) '$(srcdir)/kern/dl.c'; fi` - -kern/kernel_exec-env.o: kern/env.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/kernel_exec-env.o -MD -MP -MF kern/$(DEPDIR)/kernel_exec-env.Tpo -c -o kern/kernel_exec-env.o `test -f 'kern/env.c' || echo '$(srcdir)/'`kern/env.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/$(DEPDIR)/kernel_exec-env.Tpo kern/$(DEPDIR)/kernel_exec-env.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/env.c' object='kern/kernel_exec-env.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/kernel_exec-env.o `test -f 'kern/env.c' || echo '$(srcdir)/'`kern/env.c - -kern/kernel_exec-env.obj: kern/env.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/kernel_exec-env.obj -MD -MP -MF kern/$(DEPDIR)/kernel_exec-env.Tpo -c -o kern/kernel_exec-env.obj `if test -f 'kern/env.c'; then $(CYGPATH_W) 'kern/env.c'; else $(CYGPATH_W) '$(srcdir)/kern/env.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/$(DEPDIR)/kernel_exec-env.Tpo kern/$(DEPDIR)/kernel_exec-env.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/env.c' object='kern/kernel_exec-env.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/kernel_exec-env.obj `if test -f 'kern/env.c'; then $(CYGPATH_W) 'kern/env.c'; else $(CYGPATH_W) '$(srcdir)/kern/env.c'; fi` - -kern/kernel_exec-err.o: kern/err.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/kernel_exec-err.o -MD -MP -MF kern/$(DEPDIR)/kernel_exec-err.Tpo -c -o kern/kernel_exec-err.o `test -f 'kern/err.c' || echo '$(srcdir)/'`kern/err.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/$(DEPDIR)/kernel_exec-err.Tpo kern/$(DEPDIR)/kernel_exec-err.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/err.c' object='kern/kernel_exec-err.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/kernel_exec-err.o `test -f 'kern/err.c' || echo '$(srcdir)/'`kern/err.c - -kern/kernel_exec-err.obj: kern/err.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/kernel_exec-err.obj -MD -MP -MF kern/$(DEPDIR)/kernel_exec-err.Tpo -c -o kern/kernel_exec-err.obj `if test -f 'kern/err.c'; then $(CYGPATH_W) 'kern/err.c'; else $(CYGPATH_W) '$(srcdir)/kern/err.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/$(DEPDIR)/kernel_exec-err.Tpo kern/$(DEPDIR)/kernel_exec-err.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/err.c' object='kern/kernel_exec-err.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/kernel_exec-err.obj `if test -f 'kern/err.c'; then $(CYGPATH_W) 'kern/err.c'; else $(CYGPATH_W) '$(srcdir)/kern/err.c'; fi` - -kern/kernel_exec-file.o: kern/file.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/kernel_exec-file.o -MD -MP -MF kern/$(DEPDIR)/kernel_exec-file.Tpo -c -o kern/kernel_exec-file.o `test -f 'kern/file.c' || echo '$(srcdir)/'`kern/file.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/$(DEPDIR)/kernel_exec-file.Tpo kern/$(DEPDIR)/kernel_exec-file.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/file.c' object='kern/kernel_exec-file.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/kernel_exec-file.o `test -f 'kern/file.c' || echo '$(srcdir)/'`kern/file.c - -kern/kernel_exec-file.obj: kern/file.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/kernel_exec-file.obj -MD -MP -MF kern/$(DEPDIR)/kernel_exec-file.Tpo -c -o kern/kernel_exec-file.obj `if test -f 'kern/file.c'; then $(CYGPATH_W) 'kern/file.c'; else $(CYGPATH_W) '$(srcdir)/kern/file.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/$(DEPDIR)/kernel_exec-file.Tpo kern/$(DEPDIR)/kernel_exec-file.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/file.c' object='kern/kernel_exec-file.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/kernel_exec-file.obj `if test -f 'kern/file.c'; then $(CYGPATH_W) 'kern/file.c'; else $(CYGPATH_W) '$(srcdir)/kern/file.c'; fi` - -kern/kernel_exec-fs.o: kern/fs.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/kernel_exec-fs.o -MD -MP -MF kern/$(DEPDIR)/kernel_exec-fs.Tpo -c -o kern/kernel_exec-fs.o `test -f 'kern/fs.c' || echo '$(srcdir)/'`kern/fs.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/$(DEPDIR)/kernel_exec-fs.Tpo kern/$(DEPDIR)/kernel_exec-fs.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/fs.c' object='kern/kernel_exec-fs.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/kernel_exec-fs.o `test -f 'kern/fs.c' || echo '$(srcdir)/'`kern/fs.c - -kern/kernel_exec-fs.obj: kern/fs.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/kernel_exec-fs.obj -MD -MP -MF kern/$(DEPDIR)/kernel_exec-fs.Tpo -c -o kern/kernel_exec-fs.obj `if test -f 'kern/fs.c'; then $(CYGPATH_W) 'kern/fs.c'; else $(CYGPATH_W) '$(srcdir)/kern/fs.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/$(DEPDIR)/kernel_exec-fs.Tpo kern/$(DEPDIR)/kernel_exec-fs.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/fs.c' object='kern/kernel_exec-fs.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/kernel_exec-fs.obj `if test -f 'kern/fs.c'; then $(CYGPATH_W) 'kern/fs.c'; else $(CYGPATH_W) '$(srcdir)/kern/fs.c'; fi` - -kern/kernel_exec-list.o: kern/list.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/kernel_exec-list.o -MD -MP -MF kern/$(DEPDIR)/kernel_exec-list.Tpo -c -o kern/kernel_exec-list.o `test -f 'kern/list.c' || echo '$(srcdir)/'`kern/list.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/$(DEPDIR)/kernel_exec-list.Tpo kern/$(DEPDIR)/kernel_exec-list.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/list.c' object='kern/kernel_exec-list.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/kernel_exec-list.o `test -f 'kern/list.c' || echo '$(srcdir)/'`kern/list.c - -kern/kernel_exec-list.obj: kern/list.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/kernel_exec-list.obj -MD -MP -MF kern/$(DEPDIR)/kernel_exec-list.Tpo -c -o kern/kernel_exec-list.obj `if test -f 'kern/list.c'; then $(CYGPATH_W) 'kern/list.c'; else $(CYGPATH_W) '$(srcdir)/kern/list.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/$(DEPDIR)/kernel_exec-list.Tpo kern/$(DEPDIR)/kernel_exec-list.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/list.c' object='kern/kernel_exec-list.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/kernel_exec-list.obj `if test -f 'kern/list.c'; then $(CYGPATH_W) 'kern/list.c'; else $(CYGPATH_W) '$(srcdir)/kern/list.c'; fi` - -kern/kernel_exec-main.o: kern/main.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/kernel_exec-main.o -MD -MP -MF kern/$(DEPDIR)/kernel_exec-main.Tpo -c -o kern/kernel_exec-main.o `test -f 'kern/main.c' || echo '$(srcdir)/'`kern/main.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/$(DEPDIR)/kernel_exec-main.Tpo kern/$(DEPDIR)/kernel_exec-main.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/main.c' object='kern/kernel_exec-main.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/kernel_exec-main.o `test -f 'kern/main.c' || echo '$(srcdir)/'`kern/main.c - -kern/kernel_exec-main.obj: kern/main.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/kernel_exec-main.obj -MD -MP -MF kern/$(DEPDIR)/kernel_exec-main.Tpo -c -o kern/kernel_exec-main.obj `if test -f 'kern/main.c'; then $(CYGPATH_W) 'kern/main.c'; else $(CYGPATH_W) '$(srcdir)/kern/main.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/$(DEPDIR)/kernel_exec-main.Tpo kern/$(DEPDIR)/kernel_exec-main.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/main.c' object='kern/kernel_exec-main.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/kernel_exec-main.obj `if test -f 'kern/main.c'; then $(CYGPATH_W) 'kern/main.c'; else $(CYGPATH_W) '$(srcdir)/kern/main.c'; fi` - -kern/kernel_exec-misc.o: kern/misc.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/kernel_exec-misc.o -MD -MP -MF kern/$(DEPDIR)/kernel_exec-misc.Tpo -c -o kern/kernel_exec-misc.o `test -f 'kern/misc.c' || echo '$(srcdir)/'`kern/misc.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/$(DEPDIR)/kernel_exec-misc.Tpo kern/$(DEPDIR)/kernel_exec-misc.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/misc.c' object='kern/kernel_exec-misc.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/kernel_exec-misc.o `test -f 'kern/misc.c' || echo '$(srcdir)/'`kern/misc.c - -kern/kernel_exec-misc.obj: kern/misc.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/kernel_exec-misc.obj -MD -MP -MF kern/$(DEPDIR)/kernel_exec-misc.Tpo -c -o kern/kernel_exec-misc.obj `if test -f 'kern/misc.c'; then $(CYGPATH_W) 'kern/misc.c'; else $(CYGPATH_W) '$(srcdir)/kern/misc.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/$(DEPDIR)/kernel_exec-misc.Tpo kern/$(DEPDIR)/kernel_exec-misc.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/misc.c' object='kern/kernel_exec-misc.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/kernel_exec-misc.obj `if test -f 'kern/misc.c'; then $(CYGPATH_W) 'kern/misc.c'; else $(CYGPATH_W) '$(srcdir)/kern/misc.c'; fi` - -kern/kernel_exec-parser.o: kern/parser.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/kernel_exec-parser.o -MD -MP -MF kern/$(DEPDIR)/kernel_exec-parser.Tpo -c -o kern/kernel_exec-parser.o `test -f 'kern/parser.c' || echo '$(srcdir)/'`kern/parser.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/$(DEPDIR)/kernel_exec-parser.Tpo kern/$(DEPDIR)/kernel_exec-parser.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/parser.c' object='kern/kernel_exec-parser.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/kernel_exec-parser.o `test -f 'kern/parser.c' || echo '$(srcdir)/'`kern/parser.c - -kern/kernel_exec-parser.obj: kern/parser.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/kernel_exec-parser.obj -MD -MP -MF kern/$(DEPDIR)/kernel_exec-parser.Tpo -c -o kern/kernel_exec-parser.obj `if test -f 'kern/parser.c'; then $(CYGPATH_W) 'kern/parser.c'; else $(CYGPATH_W) '$(srcdir)/kern/parser.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/$(DEPDIR)/kernel_exec-parser.Tpo kern/$(DEPDIR)/kernel_exec-parser.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/parser.c' object='kern/kernel_exec-parser.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/kernel_exec-parser.obj `if test -f 'kern/parser.c'; then $(CYGPATH_W) 'kern/parser.c'; else $(CYGPATH_W) '$(srcdir)/kern/parser.c'; fi` - -kern/kernel_exec-partition.o: kern/partition.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/kernel_exec-partition.o -MD -MP -MF kern/$(DEPDIR)/kernel_exec-partition.Tpo -c -o kern/kernel_exec-partition.o `test -f 'kern/partition.c' || echo '$(srcdir)/'`kern/partition.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/$(DEPDIR)/kernel_exec-partition.Tpo kern/$(DEPDIR)/kernel_exec-partition.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/partition.c' object='kern/kernel_exec-partition.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/kernel_exec-partition.o `test -f 'kern/partition.c' || echo '$(srcdir)/'`kern/partition.c - -kern/kernel_exec-partition.obj: kern/partition.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/kernel_exec-partition.obj -MD -MP -MF kern/$(DEPDIR)/kernel_exec-partition.Tpo -c -o kern/kernel_exec-partition.obj `if test -f 'kern/partition.c'; then $(CYGPATH_W) 'kern/partition.c'; else $(CYGPATH_W) '$(srcdir)/kern/partition.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/$(DEPDIR)/kernel_exec-partition.Tpo kern/$(DEPDIR)/kernel_exec-partition.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/partition.c' object='kern/kernel_exec-partition.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/kernel_exec-partition.obj `if test -f 'kern/partition.c'; then $(CYGPATH_W) 'kern/partition.c'; else $(CYGPATH_W) '$(srcdir)/kern/partition.c'; fi` - -kern/kernel_exec-rescue_parser.o: kern/rescue_parser.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/kernel_exec-rescue_parser.o -MD -MP -MF kern/$(DEPDIR)/kernel_exec-rescue_parser.Tpo -c -o kern/kernel_exec-rescue_parser.o `test -f 'kern/rescue_parser.c' || echo '$(srcdir)/'`kern/rescue_parser.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/$(DEPDIR)/kernel_exec-rescue_parser.Tpo kern/$(DEPDIR)/kernel_exec-rescue_parser.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/rescue_parser.c' object='kern/kernel_exec-rescue_parser.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/kernel_exec-rescue_parser.o `test -f 'kern/rescue_parser.c' || echo '$(srcdir)/'`kern/rescue_parser.c - -kern/kernel_exec-rescue_parser.obj: kern/rescue_parser.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/kernel_exec-rescue_parser.obj -MD -MP -MF kern/$(DEPDIR)/kernel_exec-rescue_parser.Tpo -c -o kern/kernel_exec-rescue_parser.obj `if test -f 'kern/rescue_parser.c'; then $(CYGPATH_W) 'kern/rescue_parser.c'; else $(CYGPATH_W) '$(srcdir)/kern/rescue_parser.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/$(DEPDIR)/kernel_exec-rescue_parser.Tpo kern/$(DEPDIR)/kernel_exec-rescue_parser.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/rescue_parser.c' object='kern/kernel_exec-rescue_parser.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/kernel_exec-rescue_parser.obj `if test -f 'kern/rescue_parser.c'; then $(CYGPATH_W) 'kern/rescue_parser.c'; else $(CYGPATH_W) '$(srcdir)/kern/rescue_parser.c'; fi` - -kern/kernel_exec-rescue_reader.o: kern/rescue_reader.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/kernel_exec-rescue_reader.o -MD -MP -MF kern/$(DEPDIR)/kernel_exec-rescue_reader.Tpo -c -o kern/kernel_exec-rescue_reader.o `test -f 'kern/rescue_reader.c' || echo '$(srcdir)/'`kern/rescue_reader.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/$(DEPDIR)/kernel_exec-rescue_reader.Tpo kern/$(DEPDIR)/kernel_exec-rescue_reader.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/rescue_reader.c' object='kern/kernel_exec-rescue_reader.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/kernel_exec-rescue_reader.o `test -f 'kern/rescue_reader.c' || echo '$(srcdir)/'`kern/rescue_reader.c - -kern/kernel_exec-rescue_reader.obj: kern/rescue_reader.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/kernel_exec-rescue_reader.obj -MD -MP -MF kern/$(DEPDIR)/kernel_exec-rescue_reader.Tpo -c -o kern/kernel_exec-rescue_reader.obj `if test -f 'kern/rescue_reader.c'; then $(CYGPATH_W) 'kern/rescue_reader.c'; else $(CYGPATH_W) '$(srcdir)/kern/rescue_reader.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/$(DEPDIR)/kernel_exec-rescue_reader.Tpo kern/$(DEPDIR)/kernel_exec-rescue_reader.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/rescue_reader.c' object='kern/kernel_exec-rescue_reader.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/kernel_exec-rescue_reader.obj `if test -f 'kern/rescue_reader.c'; then $(CYGPATH_W) 'kern/rescue_reader.c'; else $(CYGPATH_W) '$(srcdir)/kern/rescue_reader.c'; fi` - -kern/kernel_exec-term.o: kern/term.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/kernel_exec-term.o -MD -MP -MF kern/$(DEPDIR)/kernel_exec-term.Tpo -c -o kern/kernel_exec-term.o `test -f 'kern/term.c' || echo '$(srcdir)/'`kern/term.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/$(DEPDIR)/kernel_exec-term.Tpo kern/$(DEPDIR)/kernel_exec-term.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/term.c' object='kern/kernel_exec-term.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/kernel_exec-term.o `test -f 'kern/term.c' || echo '$(srcdir)/'`kern/term.c - -kern/kernel_exec-term.obj: kern/term.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/kernel_exec-term.obj -MD -MP -MF kern/$(DEPDIR)/kernel_exec-term.Tpo -c -o kern/kernel_exec-term.obj `if test -f 'kern/term.c'; then $(CYGPATH_W) 'kern/term.c'; else $(CYGPATH_W) '$(srcdir)/kern/term.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/$(DEPDIR)/kernel_exec-term.Tpo kern/$(DEPDIR)/kernel_exec-term.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/term.c' object='kern/kernel_exec-term.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/kernel_exec-term.obj `if test -f 'kern/term.c'; then $(CYGPATH_W) 'kern/term.c'; else $(CYGPATH_W) '$(srcdir)/kern/term.c'; fi` - -kern/arm/coreboot/kernel_exec-init.o: kern/arm/coreboot/init.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/arm/coreboot/kernel_exec-init.o -MD -MP -MF kern/arm/coreboot/$(DEPDIR)/kernel_exec-init.Tpo -c -o kern/arm/coreboot/kernel_exec-init.o `test -f 'kern/arm/coreboot/init.c' || echo '$(srcdir)/'`kern/arm/coreboot/init.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/arm/coreboot/$(DEPDIR)/kernel_exec-init.Tpo kern/arm/coreboot/$(DEPDIR)/kernel_exec-init.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/arm/coreboot/init.c' object='kern/arm/coreboot/kernel_exec-init.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/arm/coreboot/kernel_exec-init.o `test -f 'kern/arm/coreboot/init.c' || echo '$(srcdir)/'`kern/arm/coreboot/init.c - -kern/arm/coreboot/kernel_exec-init.obj: kern/arm/coreboot/init.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/arm/coreboot/kernel_exec-init.obj -MD -MP -MF kern/arm/coreboot/$(DEPDIR)/kernel_exec-init.Tpo -c -o kern/arm/coreboot/kernel_exec-init.obj `if test -f 'kern/arm/coreboot/init.c'; then $(CYGPATH_W) 'kern/arm/coreboot/init.c'; else $(CYGPATH_W) '$(srcdir)/kern/arm/coreboot/init.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/arm/coreboot/$(DEPDIR)/kernel_exec-init.Tpo kern/arm/coreboot/$(DEPDIR)/kernel_exec-init.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/arm/coreboot/init.c' object='kern/arm/coreboot/kernel_exec-init.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/arm/coreboot/kernel_exec-init.obj `if test -f 'kern/arm/coreboot/init.c'; then $(CYGPATH_W) 'kern/arm/coreboot/init.c'; else $(CYGPATH_W) '$(srcdir)/kern/arm/coreboot/init.c'; fi` - -kern/arm/coreboot/kernel_exec-timer.o: kern/arm/coreboot/timer.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/arm/coreboot/kernel_exec-timer.o -MD -MP -MF kern/arm/coreboot/$(DEPDIR)/kernel_exec-timer.Tpo -c -o kern/arm/coreboot/kernel_exec-timer.o `test -f 'kern/arm/coreboot/timer.c' || echo '$(srcdir)/'`kern/arm/coreboot/timer.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/arm/coreboot/$(DEPDIR)/kernel_exec-timer.Tpo kern/arm/coreboot/$(DEPDIR)/kernel_exec-timer.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/arm/coreboot/timer.c' object='kern/arm/coreboot/kernel_exec-timer.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/arm/coreboot/kernel_exec-timer.o `test -f 'kern/arm/coreboot/timer.c' || echo '$(srcdir)/'`kern/arm/coreboot/timer.c - -kern/arm/coreboot/kernel_exec-timer.obj: kern/arm/coreboot/timer.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/arm/coreboot/kernel_exec-timer.obj -MD -MP -MF kern/arm/coreboot/$(DEPDIR)/kernel_exec-timer.Tpo -c -o kern/arm/coreboot/kernel_exec-timer.obj `if test -f 'kern/arm/coreboot/timer.c'; then $(CYGPATH_W) 'kern/arm/coreboot/timer.c'; else $(CYGPATH_W) '$(srcdir)/kern/arm/coreboot/timer.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/arm/coreboot/$(DEPDIR)/kernel_exec-timer.Tpo kern/arm/coreboot/$(DEPDIR)/kernel_exec-timer.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/arm/coreboot/timer.c' object='kern/arm/coreboot/kernel_exec-timer.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/arm/coreboot/kernel_exec-timer.obj `if test -f 'kern/arm/coreboot/timer.c'; then $(CYGPATH_W) 'kern/arm/coreboot/timer.c'; else $(CYGPATH_W) '$(srcdir)/kern/arm/coreboot/timer.c'; fi` - -lib/kernel_exec-fdt.o: lib/fdt.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT lib/kernel_exec-fdt.o -MD -MP -MF lib/$(DEPDIR)/kernel_exec-fdt.Tpo -c -o lib/kernel_exec-fdt.o `test -f 'lib/fdt.c' || echo '$(srcdir)/'`lib/fdt.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/$(DEPDIR)/kernel_exec-fdt.Tpo lib/$(DEPDIR)/kernel_exec-fdt.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/fdt.c' object='lib/kernel_exec-fdt.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o lib/kernel_exec-fdt.o `test -f 'lib/fdt.c' || echo '$(srcdir)/'`lib/fdt.c - -lib/kernel_exec-fdt.obj: lib/fdt.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT lib/kernel_exec-fdt.obj -MD -MP -MF lib/$(DEPDIR)/kernel_exec-fdt.Tpo -c -o lib/kernel_exec-fdt.obj `if test -f 'lib/fdt.c'; then $(CYGPATH_W) 'lib/fdt.c'; else $(CYGPATH_W) '$(srcdir)/lib/fdt.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/$(DEPDIR)/kernel_exec-fdt.Tpo lib/$(DEPDIR)/kernel_exec-fdt.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/fdt.c' object='lib/kernel_exec-fdt.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o lib/kernel_exec-fdt.obj `if test -f 'lib/fdt.c'; then $(CYGPATH_W) 'lib/fdt.c'; else $(CYGPATH_W) '$(srcdir)/lib/fdt.c'; fi` - -bus/kernel_exec-fdt.o: bus/fdt.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT bus/kernel_exec-fdt.o -MD -MP -MF bus/$(DEPDIR)/kernel_exec-fdt.Tpo -c -o bus/kernel_exec-fdt.o `test -f 'bus/fdt.c' || echo '$(srcdir)/'`bus/fdt.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) bus/$(DEPDIR)/kernel_exec-fdt.Tpo bus/$(DEPDIR)/kernel_exec-fdt.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='bus/fdt.c' object='bus/kernel_exec-fdt.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o bus/kernel_exec-fdt.o `test -f 'bus/fdt.c' || echo '$(srcdir)/'`bus/fdt.c - -bus/kernel_exec-fdt.obj: bus/fdt.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT bus/kernel_exec-fdt.obj -MD -MP -MF bus/$(DEPDIR)/kernel_exec-fdt.Tpo -c -o bus/kernel_exec-fdt.obj `if test -f 'bus/fdt.c'; then $(CYGPATH_W) 'bus/fdt.c'; else $(CYGPATH_W) '$(srcdir)/bus/fdt.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) bus/$(DEPDIR)/kernel_exec-fdt.Tpo bus/$(DEPDIR)/kernel_exec-fdt.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='bus/fdt.c' object='bus/kernel_exec-fdt.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o bus/kernel_exec-fdt.obj `if test -f 'bus/fdt.c'; then $(CYGPATH_W) 'bus/fdt.c'; else $(CYGPATH_W) '$(srcdir)/bus/fdt.c'; fi` - -term/kernel_exec-ps2.o: term/ps2.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT term/kernel_exec-ps2.o -MD -MP -MF term/$(DEPDIR)/kernel_exec-ps2.Tpo -c -o term/kernel_exec-ps2.o `test -f 'term/ps2.c' || echo '$(srcdir)/'`term/ps2.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) term/$(DEPDIR)/kernel_exec-ps2.Tpo term/$(DEPDIR)/kernel_exec-ps2.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='term/ps2.c' object='term/kernel_exec-ps2.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o term/kernel_exec-ps2.o `test -f 'term/ps2.c' || echo '$(srcdir)/'`term/ps2.c - -term/kernel_exec-ps2.obj: term/ps2.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT term/kernel_exec-ps2.obj -MD -MP -MF term/$(DEPDIR)/kernel_exec-ps2.Tpo -c -o term/kernel_exec-ps2.obj `if test -f 'term/ps2.c'; then $(CYGPATH_W) 'term/ps2.c'; else $(CYGPATH_W) '$(srcdir)/term/ps2.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) term/$(DEPDIR)/kernel_exec-ps2.Tpo term/$(DEPDIR)/kernel_exec-ps2.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='term/ps2.c' object='term/kernel_exec-ps2.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o term/kernel_exec-ps2.obj `if test -f 'term/ps2.c'; then $(CYGPATH_W) 'term/ps2.c'; else $(CYGPATH_W) '$(srcdir)/term/ps2.c'; fi` - -term/arm/kernel_exec-pl050.o: term/arm/pl050.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT term/arm/kernel_exec-pl050.o -MD -MP -MF term/arm/$(DEPDIR)/kernel_exec-pl050.Tpo -c -o term/arm/kernel_exec-pl050.o `test -f 'term/arm/pl050.c' || echo '$(srcdir)/'`term/arm/pl050.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) term/arm/$(DEPDIR)/kernel_exec-pl050.Tpo term/arm/$(DEPDIR)/kernel_exec-pl050.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='term/arm/pl050.c' object='term/arm/kernel_exec-pl050.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o term/arm/kernel_exec-pl050.o `test -f 'term/arm/pl050.c' || echo '$(srcdir)/'`term/arm/pl050.c - -term/arm/kernel_exec-pl050.obj: term/arm/pl050.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT term/arm/kernel_exec-pl050.obj -MD -MP -MF term/arm/$(DEPDIR)/kernel_exec-pl050.Tpo -c -o term/arm/kernel_exec-pl050.obj `if test -f 'term/arm/pl050.c'; then $(CYGPATH_W) 'term/arm/pl050.c'; else $(CYGPATH_W) '$(srcdir)/term/arm/pl050.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) term/arm/$(DEPDIR)/kernel_exec-pl050.Tpo term/arm/$(DEPDIR)/kernel_exec-pl050.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='term/arm/pl050.c' object='term/arm/kernel_exec-pl050.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o term/arm/kernel_exec-pl050.obj `if test -f 'term/arm/pl050.c'; then $(CYGPATH_W) 'term/arm/pl050.c'; else $(CYGPATH_W) '$(srcdir)/term/arm/pl050.c'; fi` - -term/arm/kernel_exec-cros.o: term/arm/cros.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT term/arm/kernel_exec-cros.o -MD -MP -MF term/arm/$(DEPDIR)/kernel_exec-cros.Tpo -c -o term/arm/kernel_exec-cros.o `test -f 'term/arm/cros.c' || echo '$(srcdir)/'`term/arm/cros.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) term/arm/$(DEPDIR)/kernel_exec-cros.Tpo term/arm/$(DEPDIR)/kernel_exec-cros.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='term/arm/cros.c' object='term/arm/kernel_exec-cros.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o term/arm/kernel_exec-cros.o `test -f 'term/arm/cros.c' || echo '$(srcdir)/'`term/arm/cros.c - -term/arm/kernel_exec-cros.obj: term/arm/cros.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT term/arm/kernel_exec-cros.obj -MD -MP -MF term/arm/$(DEPDIR)/kernel_exec-cros.Tpo -c -o term/arm/kernel_exec-cros.obj `if test -f 'term/arm/cros.c'; then $(CYGPATH_W) 'term/arm/cros.c'; else $(CYGPATH_W) '$(srcdir)/term/arm/cros.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) term/arm/$(DEPDIR)/kernel_exec-cros.Tpo term/arm/$(DEPDIR)/kernel_exec-cros.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='term/arm/cros.c' object='term/arm/kernel_exec-cros.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o term/arm/kernel_exec-cros.obj `if test -f 'term/arm/cros.c'; then $(CYGPATH_W) 'term/arm/cros.c'; else $(CYGPATH_W) '$(srcdir)/term/arm/cros.c'; fi` - -term/arm/kernel_exec-cros_ec.o: term/arm/cros_ec.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT term/arm/kernel_exec-cros_ec.o -MD -MP -MF term/arm/$(DEPDIR)/kernel_exec-cros_ec.Tpo -c -o term/arm/kernel_exec-cros_ec.o `test -f 'term/arm/cros_ec.c' || echo '$(srcdir)/'`term/arm/cros_ec.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) term/arm/$(DEPDIR)/kernel_exec-cros_ec.Tpo term/arm/$(DEPDIR)/kernel_exec-cros_ec.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='term/arm/cros_ec.c' object='term/arm/kernel_exec-cros_ec.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o term/arm/kernel_exec-cros_ec.o `test -f 'term/arm/cros_ec.c' || echo '$(srcdir)/'`term/arm/cros_ec.c - -term/arm/kernel_exec-cros_ec.obj: term/arm/cros_ec.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT term/arm/kernel_exec-cros_ec.obj -MD -MP -MF term/arm/$(DEPDIR)/kernel_exec-cros_ec.Tpo -c -o term/arm/kernel_exec-cros_ec.obj `if test -f 'term/arm/cros_ec.c'; then $(CYGPATH_W) 'term/arm/cros_ec.c'; else $(CYGPATH_W) '$(srcdir)/term/arm/cros_ec.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) term/arm/$(DEPDIR)/kernel_exec-cros_ec.Tpo term/arm/$(DEPDIR)/kernel_exec-cros_ec.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='term/arm/cros_ec.c' object='term/arm/kernel_exec-cros_ec.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o term/arm/kernel_exec-cros_ec.obj `if test -f 'term/arm/cros_ec.c'; then $(CYGPATH_W) 'term/arm/cros_ec.c'; else $(CYGPATH_W) '$(srcdir)/term/arm/cros_ec.c'; fi` - -bus/spi/kernel_exec-rk3288_spi.o: bus/spi/rk3288_spi.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT bus/spi/kernel_exec-rk3288_spi.o -MD -MP -MF bus/spi/$(DEPDIR)/kernel_exec-rk3288_spi.Tpo -c -o bus/spi/kernel_exec-rk3288_spi.o `test -f 'bus/spi/rk3288_spi.c' || echo '$(srcdir)/'`bus/spi/rk3288_spi.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) bus/spi/$(DEPDIR)/kernel_exec-rk3288_spi.Tpo bus/spi/$(DEPDIR)/kernel_exec-rk3288_spi.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='bus/spi/rk3288_spi.c' object='bus/spi/kernel_exec-rk3288_spi.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o bus/spi/kernel_exec-rk3288_spi.o `test -f 'bus/spi/rk3288_spi.c' || echo '$(srcdir)/'`bus/spi/rk3288_spi.c - -bus/spi/kernel_exec-rk3288_spi.obj: bus/spi/rk3288_spi.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT bus/spi/kernel_exec-rk3288_spi.obj -MD -MP -MF bus/spi/$(DEPDIR)/kernel_exec-rk3288_spi.Tpo -c -o bus/spi/kernel_exec-rk3288_spi.obj `if test -f 'bus/spi/rk3288_spi.c'; then $(CYGPATH_W) 'bus/spi/rk3288_spi.c'; else $(CYGPATH_W) '$(srcdir)/bus/spi/rk3288_spi.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) bus/spi/$(DEPDIR)/kernel_exec-rk3288_spi.Tpo bus/spi/$(DEPDIR)/kernel_exec-rk3288_spi.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='bus/spi/rk3288_spi.c' object='bus/spi/kernel_exec-rk3288_spi.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o bus/spi/kernel_exec-rk3288_spi.obj `if test -f 'bus/spi/rk3288_spi.c'; then $(CYGPATH_W) 'bus/spi/rk3288_spi.c'; else $(CYGPATH_W) '$(srcdir)/bus/spi/rk3288_spi.c'; fi` - -commands/kernel_exec-keylayouts.o: commands/keylayouts.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT commands/kernel_exec-keylayouts.o -MD -MP -MF commands/$(DEPDIR)/kernel_exec-keylayouts.Tpo -c -o commands/kernel_exec-keylayouts.o `test -f 'commands/keylayouts.c' || echo '$(srcdir)/'`commands/keylayouts.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/$(DEPDIR)/kernel_exec-keylayouts.Tpo commands/$(DEPDIR)/kernel_exec-keylayouts.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/keylayouts.c' object='commands/kernel_exec-keylayouts.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o commands/kernel_exec-keylayouts.o `test -f 'commands/keylayouts.c' || echo '$(srcdir)/'`commands/keylayouts.c - -commands/kernel_exec-keylayouts.obj: commands/keylayouts.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT commands/kernel_exec-keylayouts.obj -MD -MP -MF commands/$(DEPDIR)/kernel_exec-keylayouts.Tpo -c -o commands/kernel_exec-keylayouts.obj `if test -f 'commands/keylayouts.c'; then $(CYGPATH_W) 'commands/keylayouts.c'; else $(CYGPATH_W) '$(srcdir)/commands/keylayouts.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/$(DEPDIR)/kernel_exec-keylayouts.Tpo commands/$(DEPDIR)/kernel_exec-keylayouts.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/keylayouts.c' object='commands/kernel_exec-keylayouts.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o commands/kernel_exec-keylayouts.obj `if test -f 'commands/keylayouts.c'; then $(CYGPATH_W) 'commands/keylayouts.c'; else $(CYGPATH_W) '$(srcdir)/commands/keylayouts.c'; fi` - -kern/arm/coreboot/kernel_exec-dma.o: kern/arm/coreboot/dma.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/arm/coreboot/kernel_exec-dma.o -MD -MP -MF kern/arm/coreboot/$(DEPDIR)/kernel_exec-dma.Tpo -c -o kern/arm/coreboot/kernel_exec-dma.o `test -f 'kern/arm/coreboot/dma.c' || echo '$(srcdir)/'`kern/arm/coreboot/dma.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/arm/coreboot/$(DEPDIR)/kernel_exec-dma.Tpo kern/arm/coreboot/$(DEPDIR)/kernel_exec-dma.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/arm/coreboot/dma.c' object='kern/arm/coreboot/kernel_exec-dma.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/arm/coreboot/kernel_exec-dma.o `test -f 'kern/arm/coreboot/dma.c' || echo '$(srcdir)/'`kern/arm/coreboot/dma.c - -kern/arm/coreboot/kernel_exec-dma.obj: kern/arm/coreboot/dma.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/arm/coreboot/kernel_exec-dma.obj -MD -MP -MF kern/arm/coreboot/$(DEPDIR)/kernel_exec-dma.Tpo -c -o kern/arm/coreboot/kernel_exec-dma.obj `if test -f 'kern/arm/coreboot/dma.c'; then $(CYGPATH_W) 'kern/arm/coreboot/dma.c'; else $(CYGPATH_W) '$(srcdir)/kern/arm/coreboot/dma.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/arm/coreboot/$(DEPDIR)/kernel_exec-dma.Tpo kern/arm/coreboot/$(DEPDIR)/kernel_exec-dma.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/arm/coreboot/dma.c' object='kern/arm/coreboot/kernel_exec-dma.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/arm/coreboot/kernel_exec-dma.obj `if test -f 'kern/arm/coreboot/dma.c'; then $(CYGPATH_W) 'kern/arm/coreboot/dma.c'; else $(CYGPATH_W) '$(srcdir)/kern/arm/coreboot/dma.c'; fi` - -kern/arm/coreboot/kernel_exec-cbtable.o: kern/arm/coreboot/cbtable.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/arm/coreboot/kernel_exec-cbtable.o -MD -MP -MF kern/arm/coreboot/$(DEPDIR)/kernel_exec-cbtable.Tpo -c -o kern/arm/coreboot/kernel_exec-cbtable.o `test -f 'kern/arm/coreboot/cbtable.c' || echo '$(srcdir)/'`kern/arm/coreboot/cbtable.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/arm/coreboot/$(DEPDIR)/kernel_exec-cbtable.Tpo kern/arm/coreboot/$(DEPDIR)/kernel_exec-cbtable.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/arm/coreboot/cbtable.c' object='kern/arm/coreboot/kernel_exec-cbtable.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/arm/coreboot/kernel_exec-cbtable.o `test -f 'kern/arm/coreboot/cbtable.c' || echo '$(srcdir)/'`kern/arm/coreboot/cbtable.c - -kern/arm/coreboot/kernel_exec-cbtable.obj: kern/arm/coreboot/cbtable.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/arm/coreboot/kernel_exec-cbtable.obj -MD -MP -MF kern/arm/coreboot/$(DEPDIR)/kernel_exec-cbtable.Tpo -c -o kern/arm/coreboot/kernel_exec-cbtable.obj `if test -f 'kern/arm/coreboot/cbtable.c'; then $(CYGPATH_W) 'kern/arm/coreboot/cbtable.c'; else $(CYGPATH_W) '$(srcdir)/kern/arm/coreboot/cbtable.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/arm/coreboot/$(DEPDIR)/kernel_exec-cbtable.Tpo kern/arm/coreboot/$(DEPDIR)/kernel_exec-cbtable.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/arm/coreboot/cbtable.c' object='kern/arm/coreboot/kernel_exec-cbtable.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/arm/coreboot/kernel_exec-cbtable.obj `if test -f 'kern/arm/coreboot/cbtable.c'; then $(CYGPATH_W) 'kern/arm/coreboot/cbtable.c'; else $(CYGPATH_W) '$(srcdir)/kern/arm/coreboot/cbtable.c'; fi` - -video/coreboot/kernel_exec-cbfb.o: video/coreboot/cbfb.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT video/coreboot/kernel_exec-cbfb.o -MD -MP -MF video/coreboot/$(DEPDIR)/kernel_exec-cbfb.Tpo -c -o video/coreboot/kernel_exec-cbfb.o `test -f 'video/coreboot/cbfb.c' || echo '$(srcdir)/'`video/coreboot/cbfb.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) video/coreboot/$(DEPDIR)/kernel_exec-cbfb.Tpo video/coreboot/$(DEPDIR)/kernel_exec-cbfb.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='video/coreboot/cbfb.c' object='video/coreboot/kernel_exec-cbfb.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o video/coreboot/kernel_exec-cbfb.o `test -f 'video/coreboot/cbfb.c' || echo '$(srcdir)/'`video/coreboot/cbfb.c - -video/coreboot/kernel_exec-cbfb.obj: video/coreboot/cbfb.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT video/coreboot/kernel_exec-cbfb.obj -MD -MP -MF video/coreboot/$(DEPDIR)/kernel_exec-cbfb.Tpo -c -o video/coreboot/kernel_exec-cbfb.obj `if test -f 'video/coreboot/cbfb.c'; then $(CYGPATH_W) 'video/coreboot/cbfb.c'; else $(CYGPATH_W) '$(srcdir)/video/coreboot/cbfb.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) video/coreboot/$(DEPDIR)/kernel_exec-cbfb.Tpo video/coreboot/$(DEPDIR)/kernel_exec-cbfb.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='video/coreboot/cbfb.c' object='video/coreboot/kernel_exec-cbfb.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o video/coreboot/kernel_exec-cbfb.obj `if test -f 'video/coreboot/cbfb.c'; then $(CYGPATH_W) 'video/coreboot/cbfb.c'; else $(CYGPATH_W) '$(srcdir)/video/coreboot/cbfb.c'; fi` - -kern/coreboot/kernel_exec-mmap.o: kern/coreboot/mmap.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/coreboot/kernel_exec-mmap.o -MD -MP -MF kern/coreboot/$(DEPDIR)/kernel_exec-mmap.Tpo -c -o kern/coreboot/kernel_exec-mmap.o `test -f 'kern/coreboot/mmap.c' || echo '$(srcdir)/'`kern/coreboot/mmap.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/coreboot/$(DEPDIR)/kernel_exec-mmap.Tpo kern/coreboot/$(DEPDIR)/kernel_exec-mmap.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/coreboot/mmap.c' object='kern/coreboot/kernel_exec-mmap.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/coreboot/kernel_exec-mmap.o `test -f 'kern/coreboot/mmap.c' || echo '$(srcdir)/'`kern/coreboot/mmap.c - -kern/coreboot/kernel_exec-mmap.obj: kern/coreboot/mmap.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/coreboot/kernel_exec-mmap.obj -MD -MP -MF kern/coreboot/$(DEPDIR)/kernel_exec-mmap.Tpo -c -o kern/coreboot/kernel_exec-mmap.obj `if test -f 'kern/coreboot/mmap.c'; then $(CYGPATH_W) 'kern/coreboot/mmap.c'; else $(CYGPATH_W) '$(srcdir)/kern/coreboot/mmap.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/coreboot/$(DEPDIR)/kernel_exec-mmap.Tpo kern/coreboot/$(DEPDIR)/kernel_exec-mmap.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/coreboot/mmap.c' object='kern/coreboot/kernel_exec-mmap.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/coreboot/kernel_exec-mmap.obj `if test -f 'kern/coreboot/mmap.c'; then $(CYGPATH_W) 'kern/coreboot/mmap.c'; else $(CYGPATH_W) '$(srcdir)/kern/coreboot/mmap.c'; fi` - -kern/coreboot/kernel_exec-cbtable.o: kern/coreboot/cbtable.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/coreboot/kernel_exec-cbtable.o -MD -MP -MF kern/coreboot/$(DEPDIR)/kernel_exec-cbtable.Tpo -c -o kern/coreboot/kernel_exec-cbtable.o `test -f 'kern/coreboot/cbtable.c' || echo '$(srcdir)/'`kern/coreboot/cbtable.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/coreboot/$(DEPDIR)/kernel_exec-cbtable.Tpo kern/coreboot/$(DEPDIR)/kernel_exec-cbtable.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/coreboot/cbtable.c' object='kern/coreboot/kernel_exec-cbtable.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/coreboot/kernel_exec-cbtable.o `test -f 'kern/coreboot/cbtable.c' || echo '$(srcdir)/'`kern/coreboot/cbtable.c - -kern/coreboot/kernel_exec-cbtable.obj: kern/coreboot/cbtable.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/coreboot/kernel_exec-cbtable.obj -MD -MP -MF kern/coreboot/$(DEPDIR)/kernel_exec-cbtable.Tpo -c -o kern/coreboot/kernel_exec-cbtable.obj `if test -f 'kern/coreboot/cbtable.c'; then $(CYGPATH_W) 'kern/coreboot/cbtable.c'; else $(CYGPATH_W) '$(srcdir)/kern/coreboot/cbtable.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/coreboot/$(DEPDIR)/kernel_exec-cbtable.Tpo kern/coreboot/$(DEPDIR)/kernel_exec-cbtable.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/coreboot/cbtable.c' object='kern/coreboot/kernel_exec-cbtable.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/coreboot/kernel_exec-cbtable.obj `if test -f 'kern/coreboot/cbtable.c'; then $(CYGPATH_W) 'kern/coreboot/cbtable.c'; else $(CYGPATH_W) '$(srcdir)/kern/coreboot/cbtable.c'; fi` - -term/kernel_exec-gfxterm.o: term/gfxterm.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT term/kernel_exec-gfxterm.o -MD -MP -MF term/$(DEPDIR)/kernel_exec-gfxterm.Tpo -c -o term/kernel_exec-gfxterm.o `test -f 'term/gfxterm.c' || echo '$(srcdir)/'`term/gfxterm.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) term/$(DEPDIR)/kernel_exec-gfxterm.Tpo term/$(DEPDIR)/kernel_exec-gfxterm.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='term/gfxterm.c' object='term/kernel_exec-gfxterm.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o term/kernel_exec-gfxterm.o `test -f 'term/gfxterm.c' || echo '$(srcdir)/'`term/gfxterm.c - -term/kernel_exec-gfxterm.obj: term/gfxterm.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT term/kernel_exec-gfxterm.obj -MD -MP -MF term/$(DEPDIR)/kernel_exec-gfxterm.Tpo -c -o term/kernel_exec-gfxterm.obj `if test -f 'term/gfxterm.c'; then $(CYGPATH_W) 'term/gfxterm.c'; else $(CYGPATH_W) '$(srcdir)/term/gfxterm.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) term/$(DEPDIR)/kernel_exec-gfxterm.Tpo term/$(DEPDIR)/kernel_exec-gfxterm.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='term/gfxterm.c' object='term/kernel_exec-gfxterm.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o term/kernel_exec-gfxterm.obj `if test -f 'term/gfxterm.c'; then $(CYGPATH_W) 'term/gfxterm.c'; else $(CYGPATH_W) '$(srcdir)/term/gfxterm.c'; fi` - -font/kernel_exec-font.o: font/font.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT font/kernel_exec-font.o -MD -MP -MF font/$(DEPDIR)/kernel_exec-font.Tpo -c -o font/kernel_exec-font.o `test -f 'font/font.c' || echo '$(srcdir)/'`font/font.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) font/$(DEPDIR)/kernel_exec-font.Tpo font/$(DEPDIR)/kernel_exec-font.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='font/font.c' object='font/kernel_exec-font.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o font/kernel_exec-font.o `test -f 'font/font.c' || echo '$(srcdir)/'`font/font.c - -font/kernel_exec-font.obj: font/font.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT font/kernel_exec-font.obj -MD -MP -MF font/$(DEPDIR)/kernel_exec-font.Tpo -c -o font/kernel_exec-font.obj `if test -f 'font/font.c'; then $(CYGPATH_W) 'font/font.c'; else $(CYGPATH_W) '$(srcdir)/font/font.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) font/$(DEPDIR)/kernel_exec-font.Tpo font/$(DEPDIR)/kernel_exec-font.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='font/font.c' object='font/kernel_exec-font.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o font/kernel_exec-font.obj `if test -f 'font/font.c'; then $(CYGPATH_W) 'font/font.c'; else $(CYGPATH_W) '$(srcdir)/font/font.c'; fi` - -font/kernel_exec-font_cmd.o: font/font_cmd.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT font/kernel_exec-font_cmd.o -MD -MP -MF font/$(DEPDIR)/kernel_exec-font_cmd.Tpo -c -o font/kernel_exec-font_cmd.o `test -f 'font/font_cmd.c' || echo '$(srcdir)/'`font/font_cmd.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) font/$(DEPDIR)/kernel_exec-font_cmd.Tpo font/$(DEPDIR)/kernel_exec-font_cmd.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='font/font_cmd.c' object='font/kernel_exec-font_cmd.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o font/kernel_exec-font_cmd.o `test -f 'font/font_cmd.c' || echo '$(srcdir)/'`font/font_cmd.c - -font/kernel_exec-font_cmd.obj: font/font_cmd.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT font/kernel_exec-font_cmd.obj -MD -MP -MF font/$(DEPDIR)/kernel_exec-font_cmd.Tpo -c -o font/kernel_exec-font_cmd.obj `if test -f 'font/font_cmd.c'; then $(CYGPATH_W) 'font/font_cmd.c'; else $(CYGPATH_W) '$(srcdir)/font/font_cmd.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) font/$(DEPDIR)/kernel_exec-font_cmd.Tpo font/$(DEPDIR)/kernel_exec-font_cmd.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='font/font_cmd.c' object='font/kernel_exec-font_cmd.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o font/kernel_exec-font_cmd.obj `if test -f 'font/font_cmd.c'; then $(CYGPATH_W) 'font/font_cmd.c'; else $(CYGPATH_W) '$(srcdir)/font/font_cmd.c'; fi` - -io/kernel_exec-bufio.o: io/bufio.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT io/kernel_exec-bufio.o -MD -MP -MF io/$(DEPDIR)/kernel_exec-bufio.Tpo -c -o io/kernel_exec-bufio.o `test -f 'io/bufio.c' || echo '$(srcdir)/'`io/bufio.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) io/$(DEPDIR)/kernel_exec-bufio.Tpo io/$(DEPDIR)/kernel_exec-bufio.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='io/bufio.c' object='io/kernel_exec-bufio.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o io/kernel_exec-bufio.o `test -f 'io/bufio.c' || echo '$(srcdir)/'`io/bufio.c - -io/kernel_exec-bufio.obj: io/bufio.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT io/kernel_exec-bufio.obj -MD -MP -MF io/$(DEPDIR)/kernel_exec-bufio.Tpo -c -o io/kernel_exec-bufio.obj `if test -f 'io/bufio.c'; then $(CYGPATH_W) 'io/bufio.c'; else $(CYGPATH_W) '$(srcdir)/io/bufio.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) io/$(DEPDIR)/kernel_exec-bufio.Tpo io/$(DEPDIR)/kernel_exec-bufio.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='io/bufio.c' object='io/kernel_exec-bufio.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o io/kernel_exec-bufio.obj `if test -f 'io/bufio.c'; then $(CYGPATH_W) 'io/bufio.c'; else $(CYGPATH_W) '$(srcdir)/io/bufio.c'; fi` - -video/fb/kernel_exec-fbblit.o: video/fb/fbblit.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT video/fb/kernel_exec-fbblit.o -MD -MP -MF video/fb/$(DEPDIR)/kernel_exec-fbblit.Tpo -c -o video/fb/kernel_exec-fbblit.o `test -f 'video/fb/fbblit.c' || echo '$(srcdir)/'`video/fb/fbblit.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) video/fb/$(DEPDIR)/kernel_exec-fbblit.Tpo video/fb/$(DEPDIR)/kernel_exec-fbblit.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='video/fb/fbblit.c' object='video/fb/kernel_exec-fbblit.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o video/fb/kernel_exec-fbblit.o `test -f 'video/fb/fbblit.c' || echo '$(srcdir)/'`video/fb/fbblit.c - -video/fb/kernel_exec-fbblit.obj: video/fb/fbblit.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT video/fb/kernel_exec-fbblit.obj -MD -MP -MF video/fb/$(DEPDIR)/kernel_exec-fbblit.Tpo -c -o video/fb/kernel_exec-fbblit.obj `if test -f 'video/fb/fbblit.c'; then $(CYGPATH_W) 'video/fb/fbblit.c'; else $(CYGPATH_W) '$(srcdir)/video/fb/fbblit.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) video/fb/$(DEPDIR)/kernel_exec-fbblit.Tpo video/fb/$(DEPDIR)/kernel_exec-fbblit.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='video/fb/fbblit.c' object='video/fb/kernel_exec-fbblit.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o video/fb/kernel_exec-fbblit.obj `if test -f 'video/fb/fbblit.c'; then $(CYGPATH_W) 'video/fb/fbblit.c'; else $(CYGPATH_W) '$(srcdir)/video/fb/fbblit.c'; fi` - -video/fb/kernel_exec-fbfill.o: video/fb/fbfill.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT video/fb/kernel_exec-fbfill.o -MD -MP -MF video/fb/$(DEPDIR)/kernel_exec-fbfill.Tpo -c -o video/fb/kernel_exec-fbfill.o `test -f 'video/fb/fbfill.c' || echo '$(srcdir)/'`video/fb/fbfill.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) video/fb/$(DEPDIR)/kernel_exec-fbfill.Tpo video/fb/$(DEPDIR)/kernel_exec-fbfill.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='video/fb/fbfill.c' object='video/fb/kernel_exec-fbfill.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o video/fb/kernel_exec-fbfill.o `test -f 'video/fb/fbfill.c' || echo '$(srcdir)/'`video/fb/fbfill.c - -video/fb/kernel_exec-fbfill.obj: video/fb/fbfill.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT video/fb/kernel_exec-fbfill.obj -MD -MP -MF video/fb/$(DEPDIR)/kernel_exec-fbfill.Tpo -c -o video/fb/kernel_exec-fbfill.obj `if test -f 'video/fb/fbfill.c'; then $(CYGPATH_W) 'video/fb/fbfill.c'; else $(CYGPATH_W) '$(srcdir)/video/fb/fbfill.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) video/fb/$(DEPDIR)/kernel_exec-fbfill.Tpo video/fb/$(DEPDIR)/kernel_exec-fbfill.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='video/fb/fbfill.c' object='video/fb/kernel_exec-fbfill.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o video/fb/kernel_exec-fbfill.obj `if test -f 'video/fb/fbfill.c'; then $(CYGPATH_W) 'video/fb/fbfill.c'; else $(CYGPATH_W) '$(srcdir)/video/fb/fbfill.c'; fi` - -video/fb/kernel_exec-fbutil.o: video/fb/fbutil.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT video/fb/kernel_exec-fbutil.o -MD -MP -MF video/fb/$(DEPDIR)/kernel_exec-fbutil.Tpo -c -o video/fb/kernel_exec-fbutil.o `test -f 'video/fb/fbutil.c' || echo '$(srcdir)/'`video/fb/fbutil.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) video/fb/$(DEPDIR)/kernel_exec-fbutil.Tpo video/fb/$(DEPDIR)/kernel_exec-fbutil.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='video/fb/fbutil.c' object='video/fb/kernel_exec-fbutil.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o video/fb/kernel_exec-fbutil.o `test -f 'video/fb/fbutil.c' || echo '$(srcdir)/'`video/fb/fbutil.c - -video/fb/kernel_exec-fbutil.obj: video/fb/fbutil.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT video/fb/kernel_exec-fbutil.obj -MD -MP -MF video/fb/$(DEPDIR)/kernel_exec-fbutil.Tpo -c -o video/fb/kernel_exec-fbutil.obj `if test -f 'video/fb/fbutil.c'; then $(CYGPATH_W) 'video/fb/fbutil.c'; else $(CYGPATH_W) '$(srcdir)/video/fb/fbutil.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) video/fb/$(DEPDIR)/kernel_exec-fbutil.Tpo video/fb/$(DEPDIR)/kernel_exec-fbutil.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='video/fb/fbutil.c' object='video/fb/kernel_exec-fbutil.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o video/fb/kernel_exec-fbutil.obj `if test -f 'video/fb/fbutil.c'; then $(CYGPATH_W) 'video/fb/fbutil.c'; else $(CYGPATH_W) '$(srcdir)/video/fb/fbutil.c'; fi` - -video/fb/kernel_exec-video_fb.o: video/fb/video_fb.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT video/fb/kernel_exec-video_fb.o -MD -MP -MF video/fb/$(DEPDIR)/kernel_exec-video_fb.Tpo -c -o video/fb/kernel_exec-video_fb.o `test -f 'video/fb/video_fb.c' || echo '$(srcdir)/'`video/fb/video_fb.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) video/fb/$(DEPDIR)/kernel_exec-video_fb.Tpo video/fb/$(DEPDIR)/kernel_exec-video_fb.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='video/fb/video_fb.c' object='video/fb/kernel_exec-video_fb.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o video/fb/kernel_exec-video_fb.o `test -f 'video/fb/video_fb.c' || echo '$(srcdir)/'`video/fb/video_fb.c - -video/fb/kernel_exec-video_fb.obj: video/fb/video_fb.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT video/fb/kernel_exec-video_fb.obj -MD -MP -MF video/fb/$(DEPDIR)/kernel_exec-video_fb.Tpo -c -o video/fb/kernel_exec-video_fb.obj `if test -f 'video/fb/video_fb.c'; then $(CYGPATH_W) 'video/fb/video_fb.c'; else $(CYGPATH_W) '$(srcdir)/video/fb/video_fb.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) video/fb/$(DEPDIR)/kernel_exec-video_fb.Tpo video/fb/$(DEPDIR)/kernel_exec-video_fb.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='video/fb/video_fb.c' object='video/fb/kernel_exec-video_fb.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o video/fb/kernel_exec-video_fb.obj `if test -f 'video/fb/video_fb.c'; then $(CYGPATH_W) 'video/fb/video_fb.c'; else $(CYGPATH_W) '$(srcdir)/video/fb/video_fb.c'; fi` - -video/kernel_exec-video.o: video/video.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT video/kernel_exec-video.o -MD -MP -MF video/$(DEPDIR)/kernel_exec-video.Tpo -c -o video/kernel_exec-video.o `test -f 'video/video.c' || echo '$(srcdir)/'`video/video.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) video/$(DEPDIR)/kernel_exec-video.Tpo video/$(DEPDIR)/kernel_exec-video.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='video/video.c' object='video/kernel_exec-video.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o video/kernel_exec-video.o `test -f 'video/video.c' || echo '$(srcdir)/'`video/video.c - -video/kernel_exec-video.obj: video/video.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT video/kernel_exec-video.obj -MD -MP -MF video/$(DEPDIR)/kernel_exec-video.Tpo -c -o video/kernel_exec-video.obj `if test -f 'video/video.c'; then $(CYGPATH_W) 'video/video.c'; else $(CYGPATH_W) '$(srcdir)/video/video.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) video/$(DEPDIR)/kernel_exec-video.Tpo video/$(DEPDIR)/kernel_exec-video.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='video/video.c' object='video/kernel_exec-video.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o video/kernel_exec-video.obj `if test -f 'video/video.c'; then $(CYGPATH_W) 'video/video.c'; else $(CYGPATH_W) '$(srcdir)/video/video.c'; fi` - -kern/arm/kernel_exec-dl.o: kern/arm/dl.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/arm/kernel_exec-dl.o -MD -MP -MF kern/arm/$(DEPDIR)/kernel_exec-dl.Tpo -c -o kern/arm/kernel_exec-dl.o `test -f 'kern/arm/dl.c' || echo '$(srcdir)/'`kern/arm/dl.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/arm/$(DEPDIR)/kernel_exec-dl.Tpo kern/arm/$(DEPDIR)/kernel_exec-dl.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/arm/dl.c' object='kern/arm/kernel_exec-dl.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/arm/kernel_exec-dl.o `test -f 'kern/arm/dl.c' || echo '$(srcdir)/'`kern/arm/dl.c - -kern/arm/kernel_exec-dl.obj: kern/arm/dl.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/arm/kernel_exec-dl.obj -MD -MP -MF kern/arm/$(DEPDIR)/kernel_exec-dl.Tpo -c -o kern/arm/kernel_exec-dl.obj `if test -f 'kern/arm/dl.c'; then $(CYGPATH_W) 'kern/arm/dl.c'; else $(CYGPATH_W) '$(srcdir)/kern/arm/dl.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/arm/$(DEPDIR)/kernel_exec-dl.Tpo kern/arm/$(DEPDIR)/kernel_exec-dl.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/arm/dl.c' object='kern/arm/kernel_exec-dl.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/arm/kernel_exec-dl.obj `if test -f 'kern/arm/dl.c'; then $(CYGPATH_W) 'kern/arm/dl.c'; else $(CYGPATH_W) '$(srcdir)/kern/arm/dl.c'; fi` - -kern/arm/kernel_exec-dl_helper.o: kern/arm/dl_helper.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/arm/kernel_exec-dl_helper.o -MD -MP -MF kern/arm/$(DEPDIR)/kernel_exec-dl_helper.Tpo -c -o kern/arm/kernel_exec-dl_helper.o `test -f 'kern/arm/dl_helper.c' || echo '$(srcdir)/'`kern/arm/dl_helper.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/arm/$(DEPDIR)/kernel_exec-dl_helper.Tpo kern/arm/$(DEPDIR)/kernel_exec-dl_helper.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/arm/dl_helper.c' object='kern/arm/kernel_exec-dl_helper.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/arm/kernel_exec-dl_helper.o `test -f 'kern/arm/dl_helper.c' || echo '$(srcdir)/'`kern/arm/dl_helper.c - -kern/arm/kernel_exec-dl_helper.obj: kern/arm/dl_helper.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/arm/kernel_exec-dl_helper.obj -MD -MP -MF kern/arm/$(DEPDIR)/kernel_exec-dl_helper.Tpo -c -o kern/arm/kernel_exec-dl_helper.obj `if test -f 'kern/arm/dl_helper.c'; then $(CYGPATH_W) 'kern/arm/dl_helper.c'; else $(CYGPATH_W) '$(srcdir)/kern/arm/dl_helper.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/arm/$(DEPDIR)/kernel_exec-dl_helper.Tpo kern/arm/$(DEPDIR)/kernel_exec-dl_helper.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/arm/dl_helper.c' object='kern/arm/kernel_exec-dl_helper.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/arm/kernel_exec-dl_helper.obj `if test -f 'kern/arm/dl_helper.c'; then $(CYGPATH_W) 'kern/arm/dl_helper.c'; else $(CYGPATH_W) '$(srcdir)/kern/arm/dl_helper.c'; fi` - -kern/arm/kernel_exec-cache.o: kern/arm/cache.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/arm/kernel_exec-cache.o -MD -MP -MF kern/arm/$(DEPDIR)/kernel_exec-cache.Tpo -c -o kern/arm/kernel_exec-cache.o `test -f 'kern/arm/cache.c' || echo '$(srcdir)/'`kern/arm/cache.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/arm/$(DEPDIR)/kernel_exec-cache.Tpo kern/arm/$(DEPDIR)/kernel_exec-cache.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/arm/cache.c' object='kern/arm/kernel_exec-cache.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/arm/kernel_exec-cache.o `test -f 'kern/arm/cache.c' || echo '$(srcdir)/'`kern/arm/cache.c - -kern/arm/kernel_exec-cache.obj: kern/arm/cache.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/arm/kernel_exec-cache.obj -MD -MP -MF kern/arm/$(DEPDIR)/kernel_exec-cache.Tpo -c -o kern/arm/kernel_exec-cache.obj `if test -f 'kern/arm/cache.c'; then $(CYGPATH_W) 'kern/arm/cache.c'; else $(CYGPATH_W) '$(srcdir)/kern/arm/cache.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/arm/$(DEPDIR)/kernel_exec-cache.Tpo kern/arm/$(DEPDIR)/kernel_exec-cache.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/arm/cache.c' object='kern/arm/kernel_exec-cache.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/arm/kernel_exec-cache.obj `if test -f 'kern/arm/cache.c'; then $(CYGPATH_W) 'kern/arm/cache.c'; else $(CYGPATH_W) '$(srcdir)/kern/arm/cache.c'; fi` - -lib/kernel_exec-division.o: lib/division.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT lib/kernel_exec-division.o -MD -MP -MF lib/$(DEPDIR)/kernel_exec-division.Tpo -c -o lib/kernel_exec-division.o `test -f 'lib/division.c' || echo '$(srcdir)/'`lib/division.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/$(DEPDIR)/kernel_exec-division.Tpo lib/$(DEPDIR)/kernel_exec-division.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/division.c' object='lib/kernel_exec-division.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o lib/kernel_exec-division.o `test -f 'lib/division.c' || echo '$(srcdir)/'`lib/division.c - -lib/kernel_exec-division.obj: lib/division.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT lib/kernel_exec-division.obj -MD -MP -MF lib/$(DEPDIR)/kernel_exec-division.Tpo -c -o lib/kernel_exec-division.obj `if test -f 'lib/division.c'; then $(CYGPATH_W) 'lib/division.c'; else $(CYGPATH_W) '$(srcdir)/lib/division.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/$(DEPDIR)/kernel_exec-division.Tpo lib/$(DEPDIR)/kernel_exec-division.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/division.c' object='lib/kernel_exec-division.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o lib/kernel_exec-division.obj `if test -f 'lib/division.c'; then $(CYGPATH_W) 'lib/division.c'; else $(CYGPATH_W) '$(srcdir)/lib/division.c'; fi` - -kern/arm/efi/kernel_exec-init.o: kern/arm/efi/init.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/arm/efi/kernel_exec-init.o -MD -MP -MF kern/arm/efi/$(DEPDIR)/kernel_exec-init.Tpo -c -o kern/arm/efi/kernel_exec-init.o `test -f 'kern/arm/efi/init.c' || echo '$(srcdir)/'`kern/arm/efi/init.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/arm/efi/$(DEPDIR)/kernel_exec-init.Tpo kern/arm/efi/$(DEPDIR)/kernel_exec-init.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/arm/efi/init.c' object='kern/arm/efi/kernel_exec-init.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/arm/efi/kernel_exec-init.o `test -f 'kern/arm/efi/init.c' || echo '$(srcdir)/'`kern/arm/efi/init.c - -kern/arm/efi/kernel_exec-init.obj: kern/arm/efi/init.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/arm/efi/kernel_exec-init.obj -MD -MP -MF kern/arm/efi/$(DEPDIR)/kernel_exec-init.Tpo -c -o kern/arm/efi/kernel_exec-init.obj `if test -f 'kern/arm/efi/init.c'; then $(CYGPATH_W) 'kern/arm/efi/init.c'; else $(CYGPATH_W) '$(srcdir)/kern/arm/efi/init.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/arm/efi/$(DEPDIR)/kernel_exec-init.Tpo kern/arm/efi/$(DEPDIR)/kernel_exec-init.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/arm/efi/init.c' object='kern/arm/efi/kernel_exec-init.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/arm/efi/kernel_exec-init.obj `if test -f 'kern/arm/efi/init.c'; then $(CYGPATH_W) 'kern/arm/efi/init.c'; else $(CYGPATH_W) '$(srcdir)/kern/arm/efi/init.c'; fi` - -kern/arm/uboot/kernel_exec-init.o: kern/arm/uboot/init.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/arm/uboot/kernel_exec-init.o -MD -MP -MF kern/arm/uboot/$(DEPDIR)/kernel_exec-init.Tpo -c -o kern/arm/uboot/kernel_exec-init.o `test -f 'kern/arm/uboot/init.c' || echo '$(srcdir)/'`kern/arm/uboot/init.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/arm/uboot/$(DEPDIR)/kernel_exec-init.Tpo kern/arm/uboot/$(DEPDIR)/kernel_exec-init.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/arm/uboot/init.c' object='kern/arm/uboot/kernel_exec-init.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/arm/uboot/kernel_exec-init.o `test -f 'kern/arm/uboot/init.c' || echo '$(srcdir)/'`kern/arm/uboot/init.c - -kern/arm/uboot/kernel_exec-init.obj: kern/arm/uboot/init.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/arm/uboot/kernel_exec-init.obj -MD -MP -MF kern/arm/uboot/$(DEPDIR)/kernel_exec-init.Tpo -c -o kern/arm/uboot/kernel_exec-init.obj `if test -f 'kern/arm/uboot/init.c'; then $(CYGPATH_W) 'kern/arm/uboot/init.c'; else $(CYGPATH_W) '$(srcdir)/kern/arm/uboot/init.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/arm/uboot/$(DEPDIR)/kernel_exec-init.Tpo kern/arm/uboot/$(DEPDIR)/kernel_exec-init.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/arm/uboot/init.c' object='kern/arm/uboot/kernel_exec-init.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/arm/uboot/kernel_exec-init.obj `if test -f 'kern/arm/uboot/init.c'; then $(CYGPATH_W) 'kern/arm/uboot/init.c'; else $(CYGPATH_W) '$(srcdir)/kern/arm/uboot/init.c'; fi` - -disk/uboot/kernel_exec-ubootdisk.o: disk/uboot/ubootdisk.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT disk/uboot/kernel_exec-ubootdisk.o -MD -MP -MF disk/uboot/$(DEPDIR)/kernel_exec-ubootdisk.Tpo -c -o disk/uboot/kernel_exec-ubootdisk.o `test -f 'disk/uboot/ubootdisk.c' || echo '$(srcdir)/'`disk/uboot/ubootdisk.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) disk/uboot/$(DEPDIR)/kernel_exec-ubootdisk.Tpo disk/uboot/$(DEPDIR)/kernel_exec-ubootdisk.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='disk/uboot/ubootdisk.c' object='disk/uboot/kernel_exec-ubootdisk.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o disk/uboot/kernel_exec-ubootdisk.o `test -f 'disk/uboot/ubootdisk.c' || echo '$(srcdir)/'`disk/uboot/ubootdisk.c - -disk/uboot/kernel_exec-ubootdisk.obj: disk/uboot/ubootdisk.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT disk/uboot/kernel_exec-ubootdisk.obj -MD -MP -MF disk/uboot/$(DEPDIR)/kernel_exec-ubootdisk.Tpo -c -o disk/uboot/kernel_exec-ubootdisk.obj `if test -f 'disk/uboot/ubootdisk.c'; then $(CYGPATH_W) 'disk/uboot/ubootdisk.c'; else $(CYGPATH_W) '$(srcdir)/disk/uboot/ubootdisk.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) disk/uboot/$(DEPDIR)/kernel_exec-ubootdisk.Tpo disk/uboot/$(DEPDIR)/kernel_exec-ubootdisk.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='disk/uboot/ubootdisk.c' object='disk/uboot/kernel_exec-ubootdisk.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o disk/uboot/kernel_exec-ubootdisk.obj `if test -f 'disk/uboot/ubootdisk.c'; then $(CYGPATH_W) 'disk/uboot/ubootdisk.c'; else $(CYGPATH_W) '$(srcdir)/disk/uboot/ubootdisk.c'; fi` - -kern/uboot/kernel_exec-uboot.o: kern/uboot/uboot.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/uboot/kernel_exec-uboot.o -MD -MP -MF kern/uboot/$(DEPDIR)/kernel_exec-uboot.Tpo -c -o kern/uboot/kernel_exec-uboot.o `test -f 'kern/uboot/uboot.c' || echo '$(srcdir)/'`kern/uboot/uboot.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/uboot/$(DEPDIR)/kernel_exec-uboot.Tpo kern/uboot/$(DEPDIR)/kernel_exec-uboot.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/uboot/uboot.c' object='kern/uboot/kernel_exec-uboot.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/uboot/kernel_exec-uboot.o `test -f 'kern/uboot/uboot.c' || echo '$(srcdir)/'`kern/uboot/uboot.c - -kern/uboot/kernel_exec-uboot.obj: kern/uboot/uboot.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/uboot/kernel_exec-uboot.obj -MD -MP -MF kern/uboot/$(DEPDIR)/kernel_exec-uboot.Tpo -c -o kern/uboot/kernel_exec-uboot.obj `if test -f 'kern/uboot/uboot.c'; then $(CYGPATH_W) 'kern/uboot/uboot.c'; else $(CYGPATH_W) '$(srcdir)/kern/uboot/uboot.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/uboot/$(DEPDIR)/kernel_exec-uboot.Tpo kern/uboot/$(DEPDIR)/kernel_exec-uboot.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/uboot/uboot.c' object='kern/uboot/kernel_exec-uboot.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/uboot/kernel_exec-uboot.obj `if test -f 'kern/uboot/uboot.c'; then $(CYGPATH_W) 'kern/uboot/uboot.c'; else $(CYGPATH_W) '$(srcdir)/kern/uboot/uboot.c'; fi` - -kern/uboot/kernel_exec-init.o: kern/uboot/init.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/uboot/kernel_exec-init.o -MD -MP -MF kern/uboot/$(DEPDIR)/kernel_exec-init.Tpo -c -o kern/uboot/kernel_exec-init.o `test -f 'kern/uboot/init.c' || echo '$(srcdir)/'`kern/uboot/init.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/uboot/$(DEPDIR)/kernel_exec-init.Tpo kern/uboot/$(DEPDIR)/kernel_exec-init.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/uboot/init.c' object='kern/uboot/kernel_exec-init.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/uboot/kernel_exec-init.o `test -f 'kern/uboot/init.c' || echo '$(srcdir)/'`kern/uboot/init.c - -kern/uboot/kernel_exec-init.obj: kern/uboot/init.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/uboot/kernel_exec-init.obj -MD -MP -MF kern/uboot/$(DEPDIR)/kernel_exec-init.Tpo -c -o kern/uboot/kernel_exec-init.obj `if test -f 'kern/uboot/init.c'; then $(CYGPATH_W) 'kern/uboot/init.c'; else $(CYGPATH_W) '$(srcdir)/kern/uboot/init.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/uboot/$(DEPDIR)/kernel_exec-init.Tpo kern/uboot/$(DEPDIR)/kernel_exec-init.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/uboot/init.c' object='kern/uboot/kernel_exec-init.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/uboot/kernel_exec-init.obj `if test -f 'kern/uboot/init.c'; then $(CYGPATH_W) 'kern/uboot/init.c'; else $(CYGPATH_W) '$(srcdir)/kern/uboot/init.c'; fi` - -kern/uboot/kernel_exec-hw.o: kern/uboot/hw.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/uboot/kernel_exec-hw.o -MD -MP -MF kern/uboot/$(DEPDIR)/kernel_exec-hw.Tpo -c -o kern/uboot/kernel_exec-hw.o `test -f 'kern/uboot/hw.c' || echo '$(srcdir)/'`kern/uboot/hw.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/uboot/$(DEPDIR)/kernel_exec-hw.Tpo kern/uboot/$(DEPDIR)/kernel_exec-hw.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/uboot/hw.c' object='kern/uboot/kernel_exec-hw.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/uboot/kernel_exec-hw.o `test -f 'kern/uboot/hw.c' || echo '$(srcdir)/'`kern/uboot/hw.c - -kern/uboot/kernel_exec-hw.obj: kern/uboot/hw.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/uboot/kernel_exec-hw.obj -MD -MP -MF kern/uboot/$(DEPDIR)/kernel_exec-hw.Tpo -c -o kern/uboot/kernel_exec-hw.obj `if test -f 'kern/uboot/hw.c'; then $(CYGPATH_W) 'kern/uboot/hw.c'; else $(CYGPATH_W) '$(srcdir)/kern/uboot/hw.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/uboot/$(DEPDIR)/kernel_exec-hw.Tpo kern/uboot/$(DEPDIR)/kernel_exec-hw.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/uboot/hw.c' object='kern/uboot/kernel_exec-hw.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/uboot/kernel_exec-hw.obj `if test -f 'kern/uboot/hw.c'; then $(CYGPATH_W) 'kern/uboot/hw.c'; else $(CYGPATH_W) '$(srcdir)/kern/uboot/hw.c'; fi` - -term/uboot/kernel_exec-console.o: term/uboot/console.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT term/uboot/kernel_exec-console.o -MD -MP -MF term/uboot/$(DEPDIR)/kernel_exec-console.Tpo -c -o term/uboot/kernel_exec-console.o `test -f 'term/uboot/console.c' || echo '$(srcdir)/'`term/uboot/console.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) term/uboot/$(DEPDIR)/kernel_exec-console.Tpo term/uboot/$(DEPDIR)/kernel_exec-console.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='term/uboot/console.c' object='term/uboot/kernel_exec-console.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o term/uboot/kernel_exec-console.o `test -f 'term/uboot/console.c' || echo '$(srcdir)/'`term/uboot/console.c - -term/uboot/kernel_exec-console.obj: term/uboot/console.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT term/uboot/kernel_exec-console.obj -MD -MP -MF term/uboot/$(DEPDIR)/kernel_exec-console.Tpo -c -o term/uboot/kernel_exec-console.obj `if test -f 'term/uboot/console.c'; then $(CYGPATH_W) 'term/uboot/console.c'; else $(CYGPATH_W) '$(srcdir)/term/uboot/console.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) term/uboot/$(DEPDIR)/kernel_exec-console.Tpo term/uboot/$(DEPDIR)/kernel_exec-console.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='term/uboot/console.c' object='term/uboot/kernel_exec-console.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o term/uboot/kernel_exec-console.obj `if test -f 'term/uboot/console.c'; then $(CYGPATH_W) 'term/uboot/console.c'; else $(CYGPATH_W) '$(srcdir)/term/uboot/console.c'; fi` - -term/kernel_exec-terminfo.o: term/terminfo.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT term/kernel_exec-terminfo.o -MD -MP -MF term/$(DEPDIR)/kernel_exec-terminfo.Tpo -c -o term/kernel_exec-terminfo.o `test -f 'term/terminfo.c' || echo '$(srcdir)/'`term/terminfo.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) term/$(DEPDIR)/kernel_exec-terminfo.Tpo term/$(DEPDIR)/kernel_exec-terminfo.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='term/terminfo.c' object='term/kernel_exec-terminfo.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o term/kernel_exec-terminfo.o `test -f 'term/terminfo.c' || echo '$(srcdir)/'`term/terminfo.c - -term/kernel_exec-terminfo.obj: term/terminfo.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT term/kernel_exec-terminfo.obj -MD -MP -MF term/$(DEPDIR)/kernel_exec-terminfo.Tpo -c -o term/kernel_exec-terminfo.obj `if test -f 'term/terminfo.c'; then $(CYGPATH_W) 'term/terminfo.c'; else $(CYGPATH_W) '$(srcdir)/term/terminfo.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) term/$(DEPDIR)/kernel_exec-terminfo.Tpo term/$(DEPDIR)/kernel_exec-terminfo.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='term/terminfo.c' object='term/kernel_exec-terminfo.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o term/kernel_exec-terminfo.obj `if test -f 'term/terminfo.c'; then $(CYGPATH_W) 'term/terminfo.c'; else $(CYGPATH_W) '$(srcdir)/term/terminfo.c'; fi` - -term/kernel_exec-tparm.o: term/tparm.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT term/kernel_exec-tparm.o -MD -MP -MF term/$(DEPDIR)/kernel_exec-tparm.Tpo -c -o term/kernel_exec-tparm.o `test -f 'term/tparm.c' || echo '$(srcdir)/'`term/tparm.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) term/$(DEPDIR)/kernel_exec-tparm.Tpo term/$(DEPDIR)/kernel_exec-tparm.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='term/tparm.c' object='term/kernel_exec-tparm.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o term/kernel_exec-tparm.o `test -f 'term/tparm.c' || echo '$(srcdir)/'`term/tparm.c - -term/kernel_exec-tparm.obj: term/tparm.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT term/kernel_exec-tparm.obj -MD -MP -MF term/$(DEPDIR)/kernel_exec-tparm.Tpo -c -o term/kernel_exec-tparm.obj `if test -f 'term/tparm.c'; then $(CYGPATH_W) 'term/tparm.c'; else $(CYGPATH_W) '$(srcdir)/term/tparm.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) term/$(DEPDIR)/kernel_exec-tparm.Tpo term/$(DEPDIR)/kernel_exec-tparm.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='term/tparm.c' object='term/kernel_exec-tparm.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o term/kernel_exec-tparm.obj `if test -f 'term/tparm.c'; then $(CYGPATH_W) 'term/tparm.c'; else $(CYGPATH_W) '$(srcdir)/term/tparm.c'; fi` - -commands/kernel_exec-extcmd.o: commands/extcmd.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT commands/kernel_exec-extcmd.o -MD -MP -MF commands/$(DEPDIR)/kernel_exec-extcmd.Tpo -c -o commands/kernel_exec-extcmd.o `test -f 'commands/extcmd.c' || echo '$(srcdir)/'`commands/extcmd.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/$(DEPDIR)/kernel_exec-extcmd.Tpo commands/$(DEPDIR)/kernel_exec-extcmd.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/extcmd.c' object='commands/kernel_exec-extcmd.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o commands/kernel_exec-extcmd.o `test -f 'commands/extcmd.c' || echo '$(srcdir)/'`commands/extcmd.c - -commands/kernel_exec-extcmd.obj: commands/extcmd.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT commands/kernel_exec-extcmd.obj -MD -MP -MF commands/$(DEPDIR)/kernel_exec-extcmd.Tpo -c -o commands/kernel_exec-extcmd.obj `if test -f 'commands/extcmd.c'; then $(CYGPATH_W) 'commands/extcmd.c'; else $(CYGPATH_W) '$(srcdir)/commands/extcmd.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/$(DEPDIR)/kernel_exec-extcmd.Tpo commands/$(DEPDIR)/kernel_exec-extcmd.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/extcmd.c' object='commands/kernel_exec-extcmd.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o commands/kernel_exec-extcmd.obj `if test -f 'commands/extcmd.c'; then $(CYGPATH_W) 'commands/extcmd.c'; else $(CYGPATH_W) '$(srcdir)/commands/extcmd.c'; fi` - -lib/kernel_exec-arg.o: lib/arg.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT lib/kernel_exec-arg.o -MD -MP -MF lib/$(DEPDIR)/kernel_exec-arg.Tpo -c -o lib/kernel_exec-arg.o `test -f 'lib/arg.c' || echo '$(srcdir)/'`lib/arg.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/$(DEPDIR)/kernel_exec-arg.Tpo lib/$(DEPDIR)/kernel_exec-arg.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/arg.c' object='lib/kernel_exec-arg.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o lib/kernel_exec-arg.o `test -f 'lib/arg.c' || echo '$(srcdir)/'`lib/arg.c - -lib/kernel_exec-arg.obj: lib/arg.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT lib/kernel_exec-arg.obj -MD -MP -MF lib/$(DEPDIR)/kernel_exec-arg.Tpo -c -o lib/kernel_exec-arg.obj `if test -f 'lib/arg.c'; then $(CYGPATH_W) 'lib/arg.c'; else $(CYGPATH_W) '$(srcdir)/lib/arg.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/$(DEPDIR)/kernel_exec-arg.Tpo lib/$(DEPDIR)/kernel_exec-arg.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/arg.c' object='lib/kernel_exec-arg.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o lib/kernel_exec-arg.obj `if test -f 'lib/arg.c'; then $(CYGPATH_W) 'lib/arg.c'; else $(CYGPATH_W) '$(srcdir)/lib/arg.c'; fi` - -disk/kernel_exec-host.o: disk/host.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT disk/kernel_exec-host.o -MD -MP -MF disk/$(DEPDIR)/kernel_exec-host.Tpo -c -o disk/kernel_exec-host.o `test -f 'disk/host.c' || echo '$(srcdir)/'`disk/host.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) disk/$(DEPDIR)/kernel_exec-host.Tpo disk/$(DEPDIR)/kernel_exec-host.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='disk/host.c' object='disk/kernel_exec-host.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o disk/kernel_exec-host.o `test -f 'disk/host.c' || echo '$(srcdir)/'`disk/host.c - -disk/kernel_exec-host.obj: disk/host.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT disk/kernel_exec-host.obj -MD -MP -MF disk/$(DEPDIR)/kernel_exec-host.Tpo -c -o disk/kernel_exec-host.obj `if test -f 'disk/host.c'; then $(CYGPATH_W) 'disk/host.c'; else $(CYGPATH_W) '$(srcdir)/disk/host.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) disk/$(DEPDIR)/kernel_exec-host.Tpo disk/$(DEPDIR)/kernel_exec-host.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='disk/host.c' object='disk/kernel_exec-host.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o disk/kernel_exec-host.obj `if test -f 'disk/host.c'; then $(CYGPATH_W) 'disk/host.c'; else $(CYGPATH_W) '$(srcdir)/disk/host.c'; fi` - -kern/emu/kernel_exec-hostdisk.o: kern/emu/hostdisk.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/emu/kernel_exec-hostdisk.o -MD -MP -MF kern/emu/$(DEPDIR)/kernel_exec-hostdisk.Tpo -c -o kern/emu/kernel_exec-hostdisk.o `test -f 'kern/emu/hostdisk.c' || echo '$(srcdir)/'`kern/emu/hostdisk.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/emu/$(DEPDIR)/kernel_exec-hostdisk.Tpo kern/emu/$(DEPDIR)/kernel_exec-hostdisk.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/emu/hostdisk.c' object='kern/emu/kernel_exec-hostdisk.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/emu/kernel_exec-hostdisk.o `test -f 'kern/emu/hostdisk.c' || echo '$(srcdir)/'`kern/emu/hostdisk.c - -kern/emu/kernel_exec-hostdisk.obj: kern/emu/hostdisk.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/emu/kernel_exec-hostdisk.obj -MD -MP -MF kern/emu/$(DEPDIR)/kernel_exec-hostdisk.Tpo -c -o kern/emu/kernel_exec-hostdisk.obj `if test -f 'kern/emu/hostdisk.c'; then $(CYGPATH_W) 'kern/emu/hostdisk.c'; else $(CYGPATH_W) '$(srcdir)/kern/emu/hostdisk.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/emu/$(DEPDIR)/kernel_exec-hostdisk.Tpo kern/emu/$(DEPDIR)/kernel_exec-hostdisk.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/emu/hostdisk.c' object='kern/emu/kernel_exec-hostdisk.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/emu/kernel_exec-hostdisk.obj `if test -f 'kern/emu/hostdisk.c'; then $(CYGPATH_W) 'kern/emu/hostdisk.c'; else $(CYGPATH_W) '$(srcdir)/kern/emu/hostdisk.c'; fi` - -osdep/unix/kernel_exec-hostdisk.o: osdep/unix/hostdisk.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT osdep/unix/kernel_exec-hostdisk.o -MD -MP -MF osdep/unix/$(DEPDIR)/kernel_exec-hostdisk.Tpo -c -o osdep/unix/kernel_exec-hostdisk.o `test -f 'osdep/unix/hostdisk.c' || echo '$(srcdir)/'`osdep/unix/hostdisk.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) osdep/unix/$(DEPDIR)/kernel_exec-hostdisk.Tpo osdep/unix/$(DEPDIR)/kernel_exec-hostdisk.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='osdep/unix/hostdisk.c' object='osdep/unix/kernel_exec-hostdisk.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o osdep/unix/kernel_exec-hostdisk.o `test -f 'osdep/unix/hostdisk.c' || echo '$(srcdir)/'`osdep/unix/hostdisk.c - -osdep/unix/kernel_exec-hostdisk.obj: osdep/unix/hostdisk.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT osdep/unix/kernel_exec-hostdisk.obj -MD -MP -MF osdep/unix/$(DEPDIR)/kernel_exec-hostdisk.Tpo -c -o osdep/unix/kernel_exec-hostdisk.obj `if test -f 'osdep/unix/hostdisk.c'; then $(CYGPATH_W) 'osdep/unix/hostdisk.c'; else $(CYGPATH_W) '$(srcdir)/osdep/unix/hostdisk.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) osdep/unix/$(DEPDIR)/kernel_exec-hostdisk.Tpo osdep/unix/$(DEPDIR)/kernel_exec-hostdisk.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='osdep/unix/hostdisk.c' object='osdep/unix/kernel_exec-hostdisk.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o osdep/unix/kernel_exec-hostdisk.obj `if test -f 'osdep/unix/hostdisk.c'; then $(CYGPATH_W) 'osdep/unix/hostdisk.c'; else $(CYGPATH_W) '$(srcdir)/osdep/unix/hostdisk.c'; fi` - -osdep/kernel_exec-exec.o: osdep/exec.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT osdep/kernel_exec-exec.o -MD -MP -MF osdep/$(DEPDIR)/kernel_exec-exec.Tpo -c -o osdep/kernel_exec-exec.o `test -f 'osdep/exec.c' || echo '$(srcdir)/'`osdep/exec.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) osdep/$(DEPDIR)/kernel_exec-exec.Tpo osdep/$(DEPDIR)/kernel_exec-exec.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='osdep/exec.c' object='osdep/kernel_exec-exec.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o osdep/kernel_exec-exec.o `test -f 'osdep/exec.c' || echo '$(srcdir)/'`osdep/exec.c - -osdep/kernel_exec-exec.obj: osdep/exec.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT osdep/kernel_exec-exec.obj -MD -MP -MF osdep/$(DEPDIR)/kernel_exec-exec.Tpo -c -o osdep/kernel_exec-exec.obj `if test -f 'osdep/exec.c'; then $(CYGPATH_W) 'osdep/exec.c'; else $(CYGPATH_W) '$(srcdir)/osdep/exec.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) osdep/$(DEPDIR)/kernel_exec-exec.Tpo osdep/$(DEPDIR)/kernel_exec-exec.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='osdep/exec.c' object='osdep/kernel_exec-exec.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o osdep/kernel_exec-exec.obj `if test -f 'osdep/exec.c'; then $(CYGPATH_W) 'osdep/exec.c'; else $(CYGPATH_W) '$(srcdir)/osdep/exec.c'; fi` - -osdep/devmapper/kernel_exec-hostdisk.o: osdep/devmapper/hostdisk.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT osdep/devmapper/kernel_exec-hostdisk.o -MD -MP -MF osdep/devmapper/$(DEPDIR)/kernel_exec-hostdisk.Tpo -c -o osdep/devmapper/kernel_exec-hostdisk.o `test -f 'osdep/devmapper/hostdisk.c' || echo '$(srcdir)/'`osdep/devmapper/hostdisk.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) osdep/devmapper/$(DEPDIR)/kernel_exec-hostdisk.Tpo osdep/devmapper/$(DEPDIR)/kernel_exec-hostdisk.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='osdep/devmapper/hostdisk.c' object='osdep/devmapper/kernel_exec-hostdisk.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o osdep/devmapper/kernel_exec-hostdisk.o `test -f 'osdep/devmapper/hostdisk.c' || echo '$(srcdir)/'`osdep/devmapper/hostdisk.c - -osdep/devmapper/kernel_exec-hostdisk.obj: osdep/devmapper/hostdisk.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT osdep/devmapper/kernel_exec-hostdisk.obj -MD -MP -MF osdep/devmapper/$(DEPDIR)/kernel_exec-hostdisk.Tpo -c -o osdep/devmapper/kernel_exec-hostdisk.obj `if test -f 'osdep/devmapper/hostdisk.c'; then $(CYGPATH_W) 'osdep/devmapper/hostdisk.c'; else $(CYGPATH_W) '$(srcdir)/osdep/devmapper/hostdisk.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) osdep/devmapper/$(DEPDIR)/kernel_exec-hostdisk.Tpo osdep/devmapper/$(DEPDIR)/kernel_exec-hostdisk.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='osdep/devmapper/hostdisk.c' object='osdep/devmapper/kernel_exec-hostdisk.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o osdep/devmapper/kernel_exec-hostdisk.obj `if test -f 'osdep/devmapper/hostdisk.c'; then $(CYGPATH_W) 'osdep/devmapper/hostdisk.c'; else $(CYGPATH_W) '$(srcdir)/osdep/devmapper/hostdisk.c'; fi` - -osdep/kernel_exec-hostdisk.o: osdep/hostdisk.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT osdep/kernel_exec-hostdisk.o -MD -MP -MF osdep/$(DEPDIR)/kernel_exec-hostdisk.Tpo -c -o osdep/kernel_exec-hostdisk.o `test -f 'osdep/hostdisk.c' || echo '$(srcdir)/'`osdep/hostdisk.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) osdep/$(DEPDIR)/kernel_exec-hostdisk.Tpo osdep/$(DEPDIR)/kernel_exec-hostdisk.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='osdep/hostdisk.c' object='osdep/kernel_exec-hostdisk.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o osdep/kernel_exec-hostdisk.o `test -f 'osdep/hostdisk.c' || echo '$(srcdir)/'`osdep/hostdisk.c - -osdep/kernel_exec-hostdisk.obj: osdep/hostdisk.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT osdep/kernel_exec-hostdisk.obj -MD -MP -MF osdep/$(DEPDIR)/kernel_exec-hostdisk.Tpo -c -o osdep/kernel_exec-hostdisk.obj `if test -f 'osdep/hostdisk.c'; then $(CYGPATH_W) 'osdep/hostdisk.c'; else $(CYGPATH_W) '$(srcdir)/osdep/hostdisk.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) osdep/$(DEPDIR)/kernel_exec-hostdisk.Tpo osdep/$(DEPDIR)/kernel_exec-hostdisk.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='osdep/hostdisk.c' object='osdep/kernel_exec-hostdisk.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o osdep/kernel_exec-hostdisk.obj `if test -f 'osdep/hostdisk.c'; then $(CYGPATH_W) 'osdep/hostdisk.c'; else $(CYGPATH_W) '$(srcdir)/osdep/hostdisk.c'; fi` - -kern/emu/kernel_exec-hostfs.o: kern/emu/hostfs.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/emu/kernel_exec-hostfs.o -MD -MP -MF kern/emu/$(DEPDIR)/kernel_exec-hostfs.Tpo -c -o kern/emu/kernel_exec-hostfs.o `test -f 'kern/emu/hostfs.c' || echo '$(srcdir)/'`kern/emu/hostfs.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/emu/$(DEPDIR)/kernel_exec-hostfs.Tpo kern/emu/$(DEPDIR)/kernel_exec-hostfs.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/emu/hostfs.c' object='kern/emu/kernel_exec-hostfs.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/emu/kernel_exec-hostfs.o `test -f 'kern/emu/hostfs.c' || echo '$(srcdir)/'`kern/emu/hostfs.c - -kern/emu/kernel_exec-hostfs.obj: kern/emu/hostfs.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/emu/kernel_exec-hostfs.obj -MD -MP -MF kern/emu/$(DEPDIR)/kernel_exec-hostfs.Tpo -c -o kern/emu/kernel_exec-hostfs.obj `if test -f 'kern/emu/hostfs.c'; then $(CYGPATH_W) 'kern/emu/hostfs.c'; else $(CYGPATH_W) '$(srcdir)/kern/emu/hostfs.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/emu/$(DEPDIR)/kernel_exec-hostfs.Tpo kern/emu/$(DEPDIR)/kernel_exec-hostfs.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/emu/hostfs.c' object='kern/emu/kernel_exec-hostfs.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/emu/kernel_exec-hostfs.obj `if test -f 'kern/emu/hostfs.c'; then $(CYGPATH_W) 'kern/emu/hostfs.c'; else $(CYGPATH_W) '$(srcdir)/kern/emu/hostfs.c'; fi` - -kern/emu/kernel_exec-main.o: kern/emu/main.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/emu/kernel_exec-main.o -MD -MP -MF kern/emu/$(DEPDIR)/kernel_exec-main.Tpo -c -o kern/emu/kernel_exec-main.o `test -f 'kern/emu/main.c' || echo '$(srcdir)/'`kern/emu/main.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/emu/$(DEPDIR)/kernel_exec-main.Tpo kern/emu/$(DEPDIR)/kernel_exec-main.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/emu/main.c' object='kern/emu/kernel_exec-main.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/emu/kernel_exec-main.o `test -f 'kern/emu/main.c' || echo '$(srcdir)/'`kern/emu/main.c - -kern/emu/kernel_exec-main.obj: kern/emu/main.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/emu/kernel_exec-main.obj -MD -MP -MF kern/emu/$(DEPDIR)/kernel_exec-main.Tpo -c -o kern/emu/kernel_exec-main.obj `if test -f 'kern/emu/main.c'; then $(CYGPATH_W) 'kern/emu/main.c'; else $(CYGPATH_W) '$(srcdir)/kern/emu/main.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/emu/$(DEPDIR)/kernel_exec-main.Tpo kern/emu/$(DEPDIR)/kernel_exec-main.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/emu/main.c' object='kern/emu/kernel_exec-main.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/emu/kernel_exec-main.obj `if test -f 'kern/emu/main.c'; then $(CYGPATH_W) 'kern/emu/main.c'; else $(CYGPATH_W) '$(srcdir)/kern/emu/main.c'; fi` - -kern/emu/kernel_exec-argp_common.o: kern/emu/argp_common.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/emu/kernel_exec-argp_common.o -MD -MP -MF kern/emu/$(DEPDIR)/kernel_exec-argp_common.Tpo -c -o kern/emu/kernel_exec-argp_common.o `test -f 'kern/emu/argp_common.c' || echo '$(srcdir)/'`kern/emu/argp_common.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/emu/$(DEPDIR)/kernel_exec-argp_common.Tpo kern/emu/$(DEPDIR)/kernel_exec-argp_common.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/emu/argp_common.c' object='kern/emu/kernel_exec-argp_common.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/emu/kernel_exec-argp_common.o `test -f 'kern/emu/argp_common.c' || echo '$(srcdir)/'`kern/emu/argp_common.c - -kern/emu/kernel_exec-argp_common.obj: kern/emu/argp_common.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/emu/kernel_exec-argp_common.obj -MD -MP -MF kern/emu/$(DEPDIR)/kernel_exec-argp_common.Tpo -c -o kern/emu/kernel_exec-argp_common.obj `if test -f 'kern/emu/argp_common.c'; then $(CYGPATH_W) 'kern/emu/argp_common.c'; else $(CYGPATH_W) '$(srcdir)/kern/emu/argp_common.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/emu/$(DEPDIR)/kernel_exec-argp_common.Tpo kern/emu/$(DEPDIR)/kernel_exec-argp_common.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/emu/argp_common.c' object='kern/emu/kernel_exec-argp_common.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/emu/kernel_exec-argp_common.obj `if test -f 'kern/emu/argp_common.c'; then $(CYGPATH_W) 'kern/emu/argp_common.c'; else $(CYGPATH_W) '$(srcdir)/kern/emu/argp_common.c'; fi` - -kern/emu/kernel_exec-misc.o: kern/emu/misc.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/emu/kernel_exec-misc.o -MD -MP -MF kern/emu/$(DEPDIR)/kernel_exec-misc.Tpo -c -o kern/emu/kernel_exec-misc.o `test -f 'kern/emu/misc.c' || echo '$(srcdir)/'`kern/emu/misc.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/emu/$(DEPDIR)/kernel_exec-misc.Tpo kern/emu/$(DEPDIR)/kernel_exec-misc.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/emu/misc.c' object='kern/emu/kernel_exec-misc.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/emu/kernel_exec-misc.o `test -f 'kern/emu/misc.c' || echo '$(srcdir)/'`kern/emu/misc.c - -kern/emu/kernel_exec-misc.obj: kern/emu/misc.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/emu/kernel_exec-misc.obj -MD -MP -MF kern/emu/$(DEPDIR)/kernel_exec-misc.Tpo -c -o kern/emu/kernel_exec-misc.obj `if test -f 'kern/emu/misc.c'; then $(CYGPATH_W) 'kern/emu/misc.c'; else $(CYGPATH_W) '$(srcdir)/kern/emu/misc.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/emu/$(DEPDIR)/kernel_exec-misc.Tpo kern/emu/$(DEPDIR)/kernel_exec-misc.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/emu/misc.c' object='kern/emu/kernel_exec-misc.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/emu/kernel_exec-misc.obj `if test -f 'kern/emu/misc.c'; then $(CYGPATH_W) 'kern/emu/misc.c'; else $(CYGPATH_W) '$(srcdir)/kern/emu/misc.c'; fi` - -kern/emu/kernel_exec-mm.o: kern/emu/mm.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/emu/kernel_exec-mm.o -MD -MP -MF kern/emu/$(DEPDIR)/kernel_exec-mm.Tpo -c -o kern/emu/kernel_exec-mm.o `test -f 'kern/emu/mm.c' || echo '$(srcdir)/'`kern/emu/mm.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/emu/$(DEPDIR)/kernel_exec-mm.Tpo kern/emu/$(DEPDIR)/kernel_exec-mm.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/emu/mm.c' object='kern/emu/kernel_exec-mm.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/emu/kernel_exec-mm.o `test -f 'kern/emu/mm.c' || echo '$(srcdir)/'`kern/emu/mm.c - -kern/emu/kernel_exec-mm.obj: kern/emu/mm.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/emu/kernel_exec-mm.obj -MD -MP -MF kern/emu/$(DEPDIR)/kernel_exec-mm.Tpo -c -o kern/emu/kernel_exec-mm.obj `if test -f 'kern/emu/mm.c'; then $(CYGPATH_W) 'kern/emu/mm.c'; else $(CYGPATH_W) '$(srcdir)/kern/emu/mm.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/emu/$(DEPDIR)/kernel_exec-mm.Tpo kern/emu/$(DEPDIR)/kernel_exec-mm.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/emu/mm.c' object='kern/emu/kernel_exec-mm.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/emu/kernel_exec-mm.obj `if test -f 'kern/emu/mm.c'; then $(CYGPATH_W) 'kern/emu/mm.c'; else $(CYGPATH_W) '$(srcdir)/kern/emu/mm.c'; fi` - -kern/emu/kernel_exec-time.o: kern/emu/time.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/emu/kernel_exec-time.o -MD -MP -MF kern/emu/$(DEPDIR)/kernel_exec-time.Tpo -c -o kern/emu/kernel_exec-time.o `test -f 'kern/emu/time.c' || echo '$(srcdir)/'`kern/emu/time.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/emu/$(DEPDIR)/kernel_exec-time.Tpo kern/emu/$(DEPDIR)/kernel_exec-time.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/emu/time.c' object='kern/emu/kernel_exec-time.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/emu/kernel_exec-time.o `test -f 'kern/emu/time.c' || echo '$(srcdir)/'`kern/emu/time.c - -kern/emu/kernel_exec-time.obj: kern/emu/time.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/emu/kernel_exec-time.obj -MD -MP -MF kern/emu/$(DEPDIR)/kernel_exec-time.Tpo -c -o kern/emu/kernel_exec-time.obj `if test -f 'kern/emu/time.c'; then $(CYGPATH_W) 'kern/emu/time.c'; else $(CYGPATH_W) '$(srcdir)/kern/emu/time.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/emu/$(DEPDIR)/kernel_exec-time.Tpo kern/emu/$(DEPDIR)/kernel_exec-time.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/emu/time.c' object='kern/emu/kernel_exec-time.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/emu/kernel_exec-time.obj `if test -f 'kern/emu/time.c'; then $(CYGPATH_W) 'kern/emu/time.c'; else $(CYGPATH_W) '$(srcdir)/kern/emu/time.c'; fi` - -kern/emu/kernel_exec-cache.o: kern/emu/cache.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/emu/kernel_exec-cache.o -MD -MP -MF kern/emu/$(DEPDIR)/kernel_exec-cache.Tpo -c -o kern/emu/kernel_exec-cache.o `test -f 'kern/emu/cache.c' || echo '$(srcdir)/'`kern/emu/cache.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/emu/$(DEPDIR)/kernel_exec-cache.Tpo kern/emu/$(DEPDIR)/kernel_exec-cache.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/emu/cache.c' object='kern/emu/kernel_exec-cache.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/emu/kernel_exec-cache.o `test -f 'kern/emu/cache.c' || echo '$(srcdir)/'`kern/emu/cache.c - -kern/emu/kernel_exec-cache.obj: kern/emu/cache.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/emu/kernel_exec-cache.obj -MD -MP -MF kern/emu/$(DEPDIR)/kernel_exec-cache.Tpo -c -o kern/emu/kernel_exec-cache.obj `if test -f 'kern/emu/cache.c'; then $(CYGPATH_W) 'kern/emu/cache.c'; else $(CYGPATH_W) '$(srcdir)/kern/emu/cache.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/emu/$(DEPDIR)/kernel_exec-cache.Tpo kern/emu/$(DEPDIR)/kernel_exec-cache.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/emu/cache.c' object='kern/emu/kernel_exec-cache.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/emu/kernel_exec-cache.obj `if test -f 'kern/emu/cache.c'; then $(CYGPATH_W) 'kern/emu/cache.c'; else $(CYGPATH_W) '$(srcdir)/kern/emu/cache.c'; fi` - -osdep/kernel_exec-emuconsole.o: osdep/emuconsole.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT osdep/kernel_exec-emuconsole.o -MD -MP -MF osdep/$(DEPDIR)/kernel_exec-emuconsole.Tpo -c -o osdep/kernel_exec-emuconsole.o `test -f 'osdep/emuconsole.c' || echo '$(srcdir)/'`osdep/emuconsole.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) osdep/$(DEPDIR)/kernel_exec-emuconsole.Tpo osdep/$(DEPDIR)/kernel_exec-emuconsole.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='osdep/emuconsole.c' object='osdep/kernel_exec-emuconsole.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o osdep/kernel_exec-emuconsole.o `test -f 'osdep/emuconsole.c' || echo '$(srcdir)/'`osdep/emuconsole.c - -osdep/kernel_exec-emuconsole.obj: osdep/emuconsole.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT osdep/kernel_exec-emuconsole.obj -MD -MP -MF osdep/$(DEPDIR)/kernel_exec-emuconsole.Tpo -c -o osdep/kernel_exec-emuconsole.obj `if test -f 'osdep/emuconsole.c'; then $(CYGPATH_W) 'osdep/emuconsole.c'; else $(CYGPATH_W) '$(srcdir)/osdep/emuconsole.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) osdep/$(DEPDIR)/kernel_exec-emuconsole.Tpo osdep/$(DEPDIR)/kernel_exec-emuconsole.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='osdep/emuconsole.c' object='osdep/kernel_exec-emuconsole.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o osdep/kernel_exec-emuconsole.obj `if test -f 'osdep/emuconsole.c'; then $(CYGPATH_W) 'osdep/emuconsole.c'; else $(CYGPATH_W) '$(srcdir)/osdep/emuconsole.c'; fi` - -osdep/kernel_exec-dl.o: osdep/dl.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT osdep/kernel_exec-dl.o -MD -MP -MF osdep/$(DEPDIR)/kernel_exec-dl.Tpo -c -o osdep/kernel_exec-dl.o `test -f 'osdep/dl.c' || echo '$(srcdir)/'`osdep/dl.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) osdep/$(DEPDIR)/kernel_exec-dl.Tpo osdep/$(DEPDIR)/kernel_exec-dl.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='osdep/dl.c' object='osdep/kernel_exec-dl.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o osdep/kernel_exec-dl.o `test -f 'osdep/dl.c' || echo '$(srcdir)/'`osdep/dl.c - -osdep/kernel_exec-dl.obj: osdep/dl.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT osdep/kernel_exec-dl.obj -MD -MP -MF osdep/$(DEPDIR)/kernel_exec-dl.Tpo -c -o osdep/kernel_exec-dl.obj `if test -f 'osdep/dl.c'; then $(CYGPATH_W) 'osdep/dl.c'; else $(CYGPATH_W) '$(srcdir)/osdep/dl.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) osdep/$(DEPDIR)/kernel_exec-dl.Tpo osdep/$(DEPDIR)/kernel_exec-dl.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='osdep/dl.c' object='osdep/kernel_exec-dl.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o osdep/kernel_exec-dl.obj `if test -f 'osdep/dl.c'; then $(CYGPATH_W) 'osdep/dl.c'; else $(CYGPATH_W) '$(srcdir)/osdep/dl.c'; fi` - -osdep/kernel_exec-sleep.o: osdep/sleep.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT osdep/kernel_exec-sleep.o -MD -MP -MF osdep/$(DEPDIR)/kernel_exec-sleep.Tpo -c -o osdep/kernel_exec-sleep.o `test -f 'osdep/sleep.c' || echo '$(srcdir)/'`osdep/sleep.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) osdep/$(DEPDIR)/kernel_exec-sleep.Tpo osdep/$(DEPDIR)/kernel_exec-sleep.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='osdep/sleep.c' object='osdep/kernel_exec-sleep.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o osdep/kernel_exec-sleep.o `test -f 'osdep/sleep.c' || echo '$(srcdir)/'`osdep/sleep.c - -osdep/kernel_exec-sleep.obj: osdep/sleep.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT osdep/kernel_exec-sleep.obj -MD -MP -MF osdep/$(DEPDIR)/kernel_exec-sleep.Tpo -c -o osdep/kernel_exec-sleep.obj `if test -f 'osdep/sleep.c'; then $(CYGPATH_W) 'osdep/sleep.c'; else $(CYGPATH_W) '$(srcdir)/osdep/sleep.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) osdep/$(DEPDIR)/kernel_exec-sleep.Tpo osdep/$(DEPDIR)/kernel_exec-sleep.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='osdep/sleep.c' object='osdep/kernel_exec-sleep.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o osdep/kernel_exec-sleep.obj `if test -f 'osdep/sleep.c'; then $(CYGPATH_W) 'osdep/sleep.c'; else $(CYGPATH_W) '$(srcdir)/osdep/sleep.c'; fi` - -osdep/kernel_exec-init.o: osdep/init.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT osdep/kernel_exec-init.o -MD -MP -MF osdep/$(DEPDIR)/kernel_exec-init.Tpo -c -o osdep/kernel_exec-init.o `test -f 'osdep/init.c' || echo '$(srcdir)/'`osdep/init.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) osdep/$(DEPDIR)/kernel_exec-init.Tpo osdep/$(DEPDIR)/kernel_exec-init.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='osdep/init.c' object='osdep/kernel_exec-init.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o osdep/kernel_exec-init.o `test -f 'osdep/init.c' || echo '$(srcdir)/'`osdep/init.c - -osdep/kernel_exec-init.obj: osdep/init.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT osdep/kernel_exec-init.obj -MD -MP -MF osdep/$(DEPDIR)/kernel_exec-init.Tpo -c -o osdep/kernel_exec-init.obj `if test -f 'osdep/init.c'; then $(CYGPATH_W) 'osdep/init.c'; else $(CYGPATH_W) '$(srcdir)/osdep/init.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) osdep/$(DEPDIR)/kernel_exec-init.Tpo osdep/$(DEPDIR)/kernel_exec-init.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='osdep/init.c' object='osdep/kernel_exec-init.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o osdep/kernel_exec-init.obj `if test -f 'osdep/init.c'; then $(CYGPATH_W) 'osdep/init.c'; else $(CYGPATH_W) '$(srcdir)/osdep/init.c'; fi` - -osdep/kernel_exec-emunet.o: osdep/emunet.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT osdep/kernel_exec-emunet.o -MD -MP -MF osdep/$(DEPDIR)/kernel_exec-emunet.Tpo -c -o osdep/kernel_exec-emunet.o `test -f 'osdep/emunet.c' || echo '$(srcdir)/'`osdep/emunet.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) osdep/$(DEPDIR)/kernel_exec-emunet.Tpo osdep/$(DEPDIR)/kernel_exec-emunet.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='osdep/emunet.c' object='osdep/kernel_exec-emunet.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o osdep/kernel_exec-emunet.o `test -f 'osdep/emunet.c' || echo '$(srcdir)/'`osdep/emunet.c - -osdep/kernel_exec-emunet.obj: osdep/emunet.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT osdep/kernel_exec-emunet.obj -MD -MP -MF osdep/$(DEPDIR)/kernel_exec-emunet.Tpo -c -o osdep/kernel_exec-emunet.obj `if test -f 'osdep/emunet.c'; then $(CYGPATH_W) 'osdep/emunet.c'; else $(CYGPATH_W) '$(srcdir)/osdep/emunet.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) osdep/$(DEPDIR)/kernel_exec-emunet.Tpo osdep/$(DEPDIR)/kernel_exec-emunet.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='osdep/emunet.c' object='osdep/kernel_exec-emunet.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o osdep/kernel_exec-emunet.obj `if test -f 'osdep/emunet.c'; then $(CYGPATH_W) 'osdep/emunet.c'; else $(CYGPATH_W) '$(srcdir)/osdep/emunet.c'; fi` - -osdep/kernel_exec-cputime.o: osdep/cputime.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT osdep/kernel_exec-cputime.o -MD -MP -MF osdep/$(DEPDIR)/kernel_exec-cputime.Tpo -c -o osdep/kernel_exec-cputime.o `test -f 'osdep/cputime.c' || echo '$(srcdir)/'`osdep/cputime.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) osdep/$(DEPDIR)/kernel_exec-cputime.Tpo osdep/$(DEPDIR)/kernel_exec-cputime.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='osdep/cputime.c' object='osdep/kernel_exec-cputime.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o osdep/kernel_exec-cputime.o `test -f 'osdep/cputime.c' || echo '$(srcdir)/'`osdep/cputime.c - -osdep/kernel_exec-cputime.obj: osdep/cputime.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT osdep/kernel_exec-cputime.obj -MD -MP -MF osdep/$(DEPDIR)/kernel_exec-cputime.Tpo -c -o osdep/kernel_exec-cputime.obj `if test -f 'osdep/cputime.c'; then $(CYGPATH_W) 'osdep/cputime.c'; else $(CYGPATH_W) '$(srcdir)/osdep/cputime.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) osdep/$(DEPDIR)/kernel_exec-cputime.Tpo osdep/$(DEPDIR)/kernel_exec-cputime.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='osdep/cputime.c' object='osdep/kernel_exec-cputime.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o osdep/kernel_exec-cputime.obj `if test -f 'osdep/cputime.c'; then $(CYGPATH_W) 'osdep/cputime.c'; else $(CYGPATH_W) '$(srcdir)/osdep/cputime.c'; fi` - -kern/i386/coreboot/kernel_exec-init.o: kern/i386/coreboot/init.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/i386/coreboot/kernel_exec-init.o -MD -MP -MF kern/i386/coreboot/$(DEPDIR)/kernel_exec-init.Tpo -c -o kern/i386/coreboot/kernel_exec-init.o `test -f 'kern/i386/coreboot/init.c' || echo '$(srcdir)/'`kern/i386/coreboot/init.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/i386/coreboot/$(DEPDIR)/kernel_exec-init.Tpo kern/i386/coreboot/$(DEPDIR)/kernel_exec-init.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/i386/coreboot/init.c' object='kern/i386/coreboot/kernel_exec-init.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/i386/coreboot/kernel_exec-init.o `test -f 'kern/i386/coreboot/init.c' || echo '$(srcdir)/'`kern/i386/coreboot/init.c - -kern/i386/coreboot/kernel_exec-init.obj: kern/i386/coreboot/init.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/i386/coreboot/kernel_exec-init.obj -MD -MP -MF kern/i386/coreboot/$(DEPDIR)/kernel_exec-init.Tpo -c -o kern/i386/coreboot/kernel_exec-init.obj `if test -f 'kern/i386/coreboot/init.c'; then $(CYGPATH_W) 'kern/i386/coreboot/init.c'; else $(CYGPATH_W) '$(srcdir)/kern/i386/coreboot/init.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/i386/coreboot/$(DEPDIR)/kernel_exec-init.Tpo kern/i386/coreboot/$(DEPDIR)/kernel_exec-init.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/i386/coreboot/init.c' object='kern/i386/coreboot/kernel_exec-init.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/i386/coreboot/kernel_exec-init.obj `if test -f 'kern/i386/coreboot/init.c'; then $(CYGPATH_W) 'kern/i386/coreboot/init.c'; else $(CYGPATH_W) '$(srcdir)/kern/i386/coreboot/init.c'; fi` - -kern/i386/pc/kernel_exec-acpi.o: kern/i386/pc/acpi.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/i386/pc/kernel_exec-acpi.o -MD -MP -MF kern/i386/pc/$(DEPDIR)/kernel_exec-acpi.Tpo -c -o kern/i386/pc/kernel_exec-acpi.o `test -f 'kern/i386/pc/acpi.c' || echo '$(srcdir)/'`kern/i386/pc/acpi.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/i386/pc/$(DEPDIR)/kernel_exec-acpi.Tpo kern/i386/pc/$(DEPDIR)/kernel_exec-acpi.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/i386/pc/acpi.c' object='kern/i386/pc/kernel_exec-acpi.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/i386/pc/kernel_exec-acpi.o `test -f 'kern/i386/pc/acpi.c' || echo '$(srcdir)/'`kern/i386/pc/acpi.c - -kern/i386/pc/kernel_exec-acpi.obj: kern/i386/pc/acpi.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/i386/pc/kernel_exec-acpi.obj -MD -MP -MF kern/i386/pc/$(DEPDIR)/kernel_exec-acpi.Tpo -c -o kern/i386/pc/kernel_exec-acpi.obj `if test -f 'kern/i386/pc/acpi.c'; then $(CYGPATH_W) 'kern/i386/pc/acpi.c'; else $(CYGPATH_W) '$(srcdir)/kern/i386/pc/acpi.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/i386/pc/$(DEPDIR)/kernel_exec-acpi.Tpo kern/i386/pc/$(DEPDIR)/kernel_exec-acpi.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/i386/pc/acpi.c' object='kern/i386/pc/kernel_exec-acpi.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/i386/pc/kernel_exec-acpi.obj `if test -f 'kern/i386/pc/acpi.c'; then $(CYGPATH_W) 'kern/i386/pc/acpi.c'; else $(CYGPATH_W) '$(srcdir)/kern/i386/pc/acpi.c'; fi` - -kern/i386/kernel_exec-tsc_pmtimer.o: kern/i386/tsc_pmtimer.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/i386/kernel_exec-tsc_pmtimer.o -MD -MP -MF kern/i386/$(DEPDIR)/kernel_exec-tsc_pmtimer.Tpo -c -o kern/i386/kernel_exec-tsc_pmtimer.o `test -f 'kern/i386/tsc_pmtimer.c' || echo '$(srcdir)/'`kern/i386/tsc_pmtimer.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/i386/$(DEPDIR)/kernel_exec-tsc_pmtimer.Tpo kern/i386/$(DEPDIR)/kernel_exec-tsc_pmtimer.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/i386/tsc_pmtimer.c' object='kern/i386/kernel_exec-tsc_pmtimer.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/i386/kernel_exec-tsc_pmtimer.o `test -f 'kern/i386/tsc_pmtimer.c' || echo '$(srcdir)/'`kern/i386/tsc_pmtimer.c - -kern/i386/kernel_exec-tsc_pmtimer.obj: kern/i386/tsc_pmtimer.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/i386/kernel_exec-tsc_pmtimer.obj -MD -MP -MF kern/i386/$(DEPDIR)/kernel_exec-tsc_pmtimer.Tpo -c -o kern/i386/kernel_exec-tsc_pmtimer.obj `if test -f 'kern/i386/tsc_pmtimer.c'; then $(CYGPATH_W) 'kern/i386/tsc_pmtimer.c'; else $(CYGPATH_W) '$(srcdir)/kern/i386/tsc_pmtimer.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/i386/$(DEPDIR)/kernel_exec-tsc_pmtimer.Tpo kern/i386/$(DEPDIR)/kernel_exec-tsc_pmtimer.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/i386/tsc_pmtimer.c' object='kern/i386/kernel_exec-tsc_pmtimer.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/i386/kernel_exec-tsc_pmtimer.obj `if test -f 'kern/i386/tsc_pmtimer.c'; then $(CYGPATH_W) 'kern/i386/tsc_pmtimer.c'; else $(CYGPATH_W) '$(srcdir)/kern/i386/tsc_pmtimer.c'; fi` - -kern/i386/coreboot/kernel_exec-cbtable.o: kern/i386/coreboot/cbtable.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/i386/coreboot/kernel_exec-cbtable.o -MD -MP -MF kern/i386/coreboot/$(DEPDIR)/kernel_exec-cbtable.Tpo -c -o kern/i386/coreboot/kernel_exec-cbtable.o `test -f 'kern/i386/coreboot/cbtable.c' || echo '$(srcdir)/'`kern/i386/coreboot/cbtable.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/i386/coreboot/$(DEPDIR)/kernel_exec-cbtable.Tpo kern/i386/coreboot/$(DEPDIR)/kernel_exec-cbtable.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/i386/coreboot/cbtable.c' object='kern/i386/coreboot/kernel_exec-cbtable.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/i386/coreboot/kernel_exec-cbtable.o `test -f 'kern/i386/coreboot/cbtable.c' || echo '$(srcdir)/'`kern/i386/coreboot/cbtable.c - -kern/i386/coreboot/kernel_exec-cbtable.obj: kern/i386/coreboot/cbtable.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/i386/coreboot/kernel_exec-cbtable.obj -MD -MP -MF kern/i386/coreboot/$(DEPDIR)/kernel_exec-cbtable.Tpo -c -o kern/i386/coreboot/kernel_exec-cbtable.obj `if test -f 'kern/i386/coreboot/cbtable.c'; then $(CYGPATH_W) 'kern/i386/coreboot/cbtable.c'; else $(CYGPATH_W) '$(srcdir)/kern/i386/coreboot/cbtable.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/i386/coreboot/$(DEPDIR)/kernel_exec-cbtable.Tpo kern/i386/coreboot/$(DEPDIR)/kernel_exec-cbtable.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/i386/coreboot/cbtable.c' object='kern/i386/coreboot/kernel_exec-cbtable.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/i386/coreboot/kernel_exec-cbtable.obj `if test -f 'kern/i386/coreboot/cbtable.c'; then $(CYGPATH_W) 'kern/i386/coreboot/cbtable.c'; else $(CYGPATH_W) '$(srcdir)/kern/i386/coreboot/cbtable.c'; fi` - -term/i386/pc/kernel_exec-vga_text.o: term/i386/pc/vga_text.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT term/i386/pc/kernel_exec-vga_text.o -MD -MP -MF term/i386/pc/$(DEPDIR)/kernel_exec-vga_text.Tpo -c -o term/i386/pc/kernel_exec-vga_text.o `test -f 'term/i386/pc/vga_text.c' || echo '$(srcdir)/'`term/i386/pc/vga_text.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) term/i386/pc/$(DEPDIR)/kernel_exec-vga_text.Tpo term/i386/pc/$(DEPDIR)/kernel_exec-vga_text.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='term/i386/pc/vga_text.c' object='term/i386/pc/kernel_exec-vga_text.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o term/i386/pc/kernel_exec-vga_text.o `test -f 'term/i386/pc/vga_text.c' || echo '$(srcdir)/'`term/i386/pc/vga_text.c - -term/i386/pc/kernel_exec-vga_text.obj: term/i386/pc/vga_text.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT term/i386/pc/kernel_exec-vga_text.obj -MD -MP -MF term/i386/pc/$(DEPDIR)/kernel_exec-vga_text.Tpo -c -o term/i386/pc/kernel_exec-vga_text.obj `if test -f 'term/i386/pc/vga_text.c'; then $(CYGPATH_W) 'term/i386/pc/vga_text.c'; else $(CYGPATH_W) '$(srcdir)/term/i386/pc/vga_text.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) term/i386/pc/$(DEPDIR)/kernel_exec-vga_text.Tpo term/i386/pc/$(DEPDIR)/kernel_exec-vga_text.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='term/i386/pc/vga_text.c' object='term/i386/pc/kernel_exec-vga_text.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o term/i386/pc/kernel_exec-vga_text.obj `if test -f 'term/i386/pc/vga_text.c'; then $(CYGPATH_W) 'term/i386/pc/vga_text.c'; else $(CYGPATH_W) '$(srcdir)/term/i386/pc/vga_text.c'; fi` - -kern/i386/kernel_exec-dl.o: kern/i386/dl.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/i386/kernel_exec-dl.o -MD -MP -MF kern/i386/$(DEPDIR)/kernel_exec-dl.Tpo -c -o kern/i386/kernel_exec-dl.o `test -f 'kern/i386/dl.c' || echo '$(srcdir)/'`kern/i386/dl.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/i386/$(DEPDIR)/kernel_exec-dl.Tpo kern/i386/$(DEPDIR)/kernel_exec-dl.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/i386/dl.c' object='kern/i386/kernel_exec-dl.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/i386/kernel_exec-dl.o `test -f 'kern/i386/dl.c' || echo '$(srcdir)/'`kern/i386/dl.c - -kern/i386/kernel_exec-dl.obj: kern/i386/dl.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/i386/kernel_exec-dl.obj -MD -MP -MF kern/i386/$(DEPDIR)/kernel_exec-dl.Tpo -c -o kern/i386/kernel_exec-dl.obj `if test -f 'kern/i386/dl.c'; then $(CYGPATH_W) 'kern/i386/dl.c'; else $(CYGPATH_W) '$(srcdir)/kern/i386/dl.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/i386/$(DEPDIR)/kernel_exec-dl.Tpo kern/i386/$(DEPDIR)/kernel_exec-dl.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/i386/dl.c' object='kern/i386/kernel_exec-dl.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/i386/kernel_exec-dl.obj `if test -f 'kern/i386/dl.c'; then $(CYGPATH_W) 'kern/i386/dl.c'; else $(CYGPATH_W) '$(srcdir)/kern/i386/dl.c'; fi` - -kern/i386/kernel_exec-tsc.o: kern/i386/tsc.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/i386/kernel_exec-tsc.o -MD -MP -MF kern/i386/$(DEPDIR)/kernel_exec-tsc.Tpo -c -o kern/i386/kernel_exec-tsc.o `test -f 'kern/i386/tsc.c' || echo '$(srcdir)/'`kern/i386/tsc.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/i386/$(DEPDIR)/kernel_exec-tsc.Tpo kern/i386/$(DEPDIR)/kernel_exec-tsc.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/i386/tsc.c' object='kern/i386/kernel_exec-tsc.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/i386/kernel_exec-tsc.o `test -f 'kern/i386/tsc.c' || echo '$(srcdir)/'`kern/i386/tsc.c - -kern/i386/kernel_exec-tsc.obj: kern/i386/tsc.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/i386/kernel_exec-tsc.obj -MD -MP -MF kern/i386/$(DEPDIR)/kernel_exec-tsc.Tpo -c -o kern/i386/kernel_exec-tsc.obj `if test -f 'kern/i386/tsc.c'; then $(CYGPATH_W) 'kern/i386/tsc.c'; else $(CYGPATH_W) '$(srcdir)/kern/i386/tsc.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/i386/$(DEPDIR)/kernel_exec-tsc.Tpo kern/i386/$(DEPDIR)/kernel_exec-tsc.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/i386/tsc.c' object='kern/i386/kernel_exec-tsc.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/i386/kernel_exec-tsc.obj `if test -f 'kern/i386/tsc.c'; then $(CYGPATH_W) 'kern/i386/tsc.c'; else $(CYGPATH_W) '$(srcdir)/kern/i386/tsc.c'; fi` - -kern/i386/kernel_exec-tsc_pit.o: kern/i386/tsc_pit.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/i386/kernel_exec-tsc_pit.o -MD -MP -MF kern/i386/$(DEPDIR)/kernel_exec-tsc_pit.Tpo -c -o kern/i386/kernel_exec-tsc_pit.o `test -f 'kern/i386/tsc_pit.c' || echo '$(srcdir)/'`kern/i386/tsc_pit.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/i386/$(DEPDIR)/kernel_exec-tsc_pit.Tpo kern/i386/$(DEPDIR)/kernel_exec-tsc_pit.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/i386/tsc_pit.c' object='kern/i386/kernel_exec-tsc_pit.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/i386/kernel_exec-tsc_pit.o `test -f 'kern/i386/tsc_pit.c' || echo '$(srcdir)/'`kern/i386/tsc_pit.c - -kern/i386/kernel_exec-tsc_pit.obj: kern/i386/tsc_pit.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/i386/kernel_exec-tsc_pit.obj -MD -MP -MF kern/i386/$(DEPDIR)/kernel_exec-tsc_pit.Tpo -c -o kern/i386/kernel_exec-tsc_pit.obj `if test -f 'kern/i386/tsc_pit.c'; then $(CYGPATH_W) 'kern/i386/tsc_pit.c'; else $(CYGPATH_W) '$(srcdir)/kern/i386/tsc_pit.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/i386/$(DEPDIR)/kernel_exec-tsc_pit.Tpo kern/i386/$(DEPDIR)/kernel_exec-tsc_pit.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/i386/tsc_pit.c' object='kern/i386/kernel_exec-tsc_pit.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/i386/kernel_exec-tsc_pit.obj `if test -f 'kern/i386/tsc_pit.c'; then $(CYGPATH_W) 'kern/i386/tsc_pit.c'; else $(CYGPATH_W) '$(srcdir)/kern/i386/tsc_pit.c'; fi` - -kern/i386/efi/kernel_exec-tsc.o: kern/i386/efi/tsc.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/i386/efi/kernel_exec-tsc.o -MD -MP -MF kern/i386/efi/$(DEPDIR)/kernel_exec-tsc.Tpo -c -o kern/i386/efi/kernel_exec-tsc.o `test -f 'kern/i386/efi/tsc.c' || echo '$(srcdir)/'`kern/i386/efi/tsc.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/i386/efi/$(DEPDIR)/kernel_exec-tsc.Tpo kern/i386/efi/$(DEPDIR)/kernel_exec-tsc.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/i386/efi/tsc.c' object='kern/i386/efi/kernel_exec-tsc.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/i386/efi/kernel_exec-tsc.o `test -f 'kern/i386/efi/tsc.c' || echo '$(srcdir)/'`kern/i386/efi/tsc.c - -kern/i386/efi/kernel_exec-tsc.obj: kern/i386/efi/tsc.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/i386/efi/kernel_exec-tsc.obj -MD -MP -MF kern/i386/efi/$(DEPDIR)/kernel_exec-tsc.Tpo -c -o kern/i386/efi/kernel_exec-tsc.obj `if test -f 'kern/i386/efi/tsc.c'; then $(CYGPATH_W) 'kern/i386/efi/tsc.c'; else $(CYGPATH_W) '$(srcdir)/kern/i386/efi/tsc.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/i386/efi/$(DEPDIR)/kernel_exec-tsc.Tpo kern/i386/efi/$(DEPDIR)/kernel_exec-tsc.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/i386/efi/tsc.c' object='kern/i386/efi/kernel_exec-tsc.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/i386/efi/kernel_exec-tsc.obj `if test -f 'kern/i386/efi/tsc.c'; then $(CYGPATH_W) 'kern/i386/efi/tsc.c'; else $(CYGPATH_W) '$(srcdir)/kern/i386/efi/tsc.c'; fi` - -kern/i386/efi/kernel_exec-init.o: kern/i386/efi/init.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/i386/efi/kernel_exec-init.o -MD -MP -MF kern/i386/efi/$(DEPDIR)/kernel_exec-init.Tpo -c -o kern/i386/efi/kernel_exec-init.o `test -f 'kern/i386/efi/init.c' || echo '$(srcdir)/'`kern/i386/efi/init.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/i386/efi/$(DEPDIR)/kernel_exec-init.Tpo kern/i386/efi/$(DEPDIR)/kernel_exec-init.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/i386/efi/init.c' object='kern/i386/efi/kernel_exec-init.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/i386/efi/kernel_exec-init.o `test -f 'kern/i386/efi/init.c' || echo '$(srcdir)/'`kern/i386/efi/init.c - -kern/i386/efi/kernel_exec-init.obj: kern/i386/efi/init.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/i386/efi/kernel_exec-init.obj -MD -MP -MF kern/i386/efi/$(DEPDIR)/kernel_exec-init.Tpo -c -o kern/i386/efi/kernel_exec-init.obj `if test -f 'kern/i386/efi/init.c'; then $(CYGPATH_W) 'kern/i386/efi/init.c'; else $(CYGPATH_W) '$(srcdir)/kern/i386/efi/init.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/i386/efi/$(DEPDIR)/kernel_exec-init.Tpo kern/i386/efi/$(DEPDIR)/kernel_exec-init.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/i386/efi/init.c' object='kern/i386/efi/kernel_exec-init.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/i386/efi/kernel_exec-init.obj `if test -f 'kern/i386/efi/init.c'; then $(CYGPATH_W) 'kern/i386/efi/init.c'; else $(CYGPATH_W) '$(srcdir)/kern/i386/efi/init.c'; fi` - -bus/kernel_exec-pci.o: bus/pci.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT bus/kernel_exec-pci.o -MD -MP -MF bus/$(DEPDIR)/kernel_exec-pci.Tpo -c -o bus/kernel_exec-pci.o `test -f 'bus/pci.c' || echo '$(srcdir)/'`bus/pci.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) bus/$(DEPDIR)/kernel_exec-pci.Tpo bus/$(DEPDIR)/kernel_exec-pci.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='bus/pci.c' object='bus/kernel_exec-pci.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o bus/kernel_exec-pci.o `test -f 'bus/pci.c' || echo '$(srcdir)/'`bus/pci.c - -bus/kernel_exec-pci.obj: bus/pci.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT bus/kernel_exec-pci.obj -MD -MP -MF bus/$(DEPDIR)/kernel_exec-pci.Tpo -c -o bus/kernel_exec-pci.obj `if test -f 'bus/pci.c'; then $(CYGPATH_W) 'bus/pci.c'; else $(CYGPATH_W) '$(srcdir)/bus/pci.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) bus/$(DEPDIR)/kernel_exec-pci.Tpo bus/$(DEPDIR)/kernel_exec-pci.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='bus/pci.c' object='bus/kernel_exec-pci.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o bus/kernel_exec-pci.obj `if test -f 'bus/pci.c'; then $(CYGPATH_W) 'bus/pci.c'; else $(CYGPATH_W) '$(srcdir)/bus/pci.c'; fi` - -disk/ieee1275/kernel_exec-ofdisk.o: disk/ieee1275/ofdisk.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT disk/ieee1275/kernel_exec-ofdisk.o -MD -MP -MF disk/ieee1275/$(DEPDIR)/kernel_exec-ofdisk.Tpo -c -o disk/ieee1275/kernel_exec-ofdisk.o `test -f 'disk/ieee1275/ofdisk.c' || echo '$(srcdir)/'`disk/ieee1275/ofdisk.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) disk/ieee1275/$(DEPDIR)/kernel_exec-ofdisk.Tpo disk/ieee1275/$(DEPDIR)/kernel_exec-ofdisk.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='disk/ieee1275/ofdisk.c' object='disk/ieee1275/kernel_exec-ofdisk.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o disk/ieee1275/kernel_exec-ofdisk.o `test -f 'disk/ieee1275/ofdisk.c' || echo '$(srcdir)/'`disk/ieee1275/ofdisk.c - -disk/ieee1275/kernel_exec-ofdisk.obj: disk/ieee1275/ofdisk.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT disk/ieee1275/kernel_exec-ofdisk.obj -MD -MP -MF disk/ieee1275/$(DEPDIR)/kernel_exec-ofdisk.Tpo -c -o disk/ieee1275/kernel_exec-ofdisk.obj `if test -f 'disk/ieee1275/ofdisk.c'; then $(CYGPATH_W) 'disk/ieee1275/ofdisk.c'; else $(CYGPATH_W) '$(srcdir)/disk/ieee1275/ofdisk.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) disk/ieee1275/$(DEPDIR)/kernel_exec-ofdisk.Tpo disk/ieee1275/$(DEPDIR)/kernel_exec-ofdisk.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='disk/ieee1275/ofdisk.c' object='disk/ieee1275/kernel_exec-ofdisk.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o disk/ieee1275/kernel_exec-ofdisk.obj `if test -f 'disk/ieee1275/ofdisk.c'; then $(CYGPATH_W) 'disk/ieee1275/ofdisk.c'; else $(CYGPATH_W) '$(srcdir)/disk/ieee1275/ofdisk.c'; fi` - -kern/ieee1275/kernel_exec-cmain.o: kern/ieee1275/cmain.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/ieee1275/kernel_exec-cmain.o -MD -MP -MF kern/ieee1275/$(DEPDIR)/kernel_exec-cmain.Tpo -c -o kern/ieee1275/kernel_exec-cmain.o `test -f 'kern/ieee1275/cmain.c' || echo '$(srcdir)/'`kern/ieee1275/cmain.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/ieee1275/$(DEPDIR)/kernel_exec-cmain.Tpo kern/ieee1275/$(DEPDIR)/kernel_exec-cmain.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/ieee1275/cmain.c' object='kern/ieee1275/kernel_exec-cmain.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/ieee1275/kernel_exec-cmain.o `test -f 'kern/ieee1275/cmain.c' || echo '$(srcdir)/'`kern/ieee1275/cmain.c - -kern/ieee1275/kernel_exec-cmain.obj: kern/ieee1275/cmain.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/ieee1275/kernel_exec-cmain.obj -MD -MP -MF kern/ieee1275/$(DEPDIR)/kernel_exec-cmain.Tpo -c -o kern/ieee1275/kernel_exec-cmain.obj `if test -f 'kern/ieee1275/cmain.c'; then $(CYGPATH_W) 'kern/ieee1275/cmain.c'; else $(CYGPATH_W) '$(srcdir)/kern/ieee1275/cmain.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/ieee1275/$(DEPDIR)/kernel_exec-cmain.Tpo kern/ieee1275/$(DEPDIR)/kernel_exec-cmain.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/ieee1275/cmain.c' object='kern/ieee1275/kernel_exec-cmain.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/ieee1275/kernel_exec-cmain.obj `if test -f 'kern/ieee1275/cmain.c'; then $(CYGPATH_W) 'kern/ieee1275/cmain.c'; else $(CYGPATH_W) '$(srcdir)/kern/ieee1275/cmain.c'; fi` - -kern/ieee1275/kernel_exec-ieee1275.o: kern/ieee1275/ieee1275.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/ieee1275/kernel_exec-ieee1275.o -MD -MP -MF kern/ieee1275/$(DEPDIR)/kernel_exec-ieee1275.Tpo -c -o kern/ieee1275/kernel_exec-ieee1275.o `test -f 'kern/ieee1275/ieee1275.c' || echo '$(srcdir)/'`kern/ieee1275/ieee1275.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/ieee1275/$(DEPDIR)/kernel_exec-ieee1275.Tpo kern/ieee1275/$(DEPDIR)/kernel_exec-ieee1275.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/ieee1275/ieee1275.c' object='kern/ieee1275/kernel_exec-ieee1275.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/ieee1275/kernel_exec-ieee1275.o `test -f 'kern/ieee1275/ieee1275.c' || echo '$(srcdir)/'`kern/ieee1275/ieee1275.c - -kern/ieee1275/kernel_exec-ieee1275.obj: kern/ieee1275/ieee1275.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/ieee1275/kernel_exec-ieee1275.obj -MD -MP -MF kern/ieee1275/$(DEPDIR)/kernel_exec-ieee1275.Tpo -c -o kern/ieee1275/kernel_exec-ieee1275.obj `if test -f 'kern/ieee1275/ieee1275.c'; then $(CYGPATH_W) 'kern/ieee1275/ieee1275.c'; else $(CYGPATH_W) '$(srcdir)/kern/ieee1275/ieee1275.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/ieee1275/$(DEPDIR)/kernel_exec-ieee1275.Tpo kern/ieee1275/$(DEPDIR)/kernel_exec-ieee1275.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/ieee1275/ieee1275.c' object='kern/ieee1275/kernel_exec-ieee1275.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/ieee1275/kernel_exec-ieee1275.obj `if test -f 'kern/ieee1275/ieee1275.c'; then $(CYGPATH_W) 'kern/ieee1275/ieee1275.c'; else $(CYGPATH_W) '$(srcdir)/kern/ieee1275/ieee1275.c'; fi` - -kern/ieee1275/kernel_exec-mmap.o: kern/ieee1275/mmap.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/ieee1275/kernel_exec-mmap.o -MD -MP -MF kern/ieee1275/$(DEPDIR)/kernel_exec-mmap.Tpo -c -o kern/ieee1275/kernel_exec-mmap.o `test -f 'kern/ieee1275/mmap.c' || echo '$(srcdir)/'`kern/ieee1275/mmap.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/ieee1275/$(DEPDIR)/kernel_exec-mmap.Tpo kern/ieee1275/$(DEPDIR)/kernel_exec-mmap.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/ieee1275/mmap.c' object='kern/ieee1275/kernel_exec-mmap.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/ieee1275/kernel_exec-mmap.o `test -f 'kern/ieee1275/mmap.c' || echo '$(srcdir)/'`kern/ieee1275/mmap.c - -kern/ieee1275/kernel_exec-mmap.obj: kern/ieee1275/mmap.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/ieee1275/kernel_exec-mmap.obj -MD -MP -MF kern/ieee1275/$(DEPDIR)/kernel_exec-mmap.Tpo -c -o kern/ieee1275/kernel_exec-mmap.obj `if test -f 'kern/ieee1275/mmap.c'; then $(CYGPATH_W) 'kern/ieee1275/mmap.c'; else $(CYGPATH_W) '$(srcdir)/kern/ieee1275/mmap.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/ieee1275/$(DEPDIR)/kernel_exec-mmap.Tpo kern/ieee1275/$(DEPDIR)/kernel_exec-mmap.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/ieee1275/mmap.c' object='kern/ieee1275/kernel_exec-mmap.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/ieee1275/kernel_exec-mmap.obj `if test -f 'kern/ieee1275/mmap.c'; then $(CYGPATH_W) 'kern/ieee1275/mmap.c'; else $(CYGPATH_W) '$(srcdir)/kern/ieee1275/mmap.c'; fi` - -kern/ieee1275/kernel_exec-openfw.o: kern/ieee1275/openfw.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/ieee1275/kernel_exec-openfw.o -MD -MP -MF kern/ieee1275/$(DEPDIR)/kernel_exec-openfw.Tpo -c -o kern/ieee1275/kernel_exec-openfw.o `test -f 'kern/ieee1275/openfw.c' || echo '$(srcdir)/'`kern/ieee1275/openfw.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/ieee1275/$(DEPDIR)/kernel_exec-openfw.Tpo kern/ieee1275/$(DEPDIR)/kernel_exec-openfw.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/ieee1275/openfw.c' object='kern/ieee1275/kernel_exec-openfw.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/ieee1275/kernel_exec-openfw.o `test -f 'kern/ieee1275/openfw.c' || echo '$(srcdir)/'`kern/ieee1275/openfw.c - -kern/ieee1275/kernel_exec-openfw.obj: kern/ieee1275/openfw.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/ieee1275/kernel_exec-openfw.obj -MD -MP -MF kern/ieee1275/$(DEPDIR)/kernel_exec-openfw.Tpo -c -o kern/ieee1275/kernel_exec-openfw.obj `if test -f 'kern/ieee1275/openfw.c'; then $(CYGPATH_W) 'kern/ieee1275/openfw.c'; else $(CYGPATH_W) '$(srcdir)/kern/ieee1275/openfw.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/ieee1275/$(DEPDIR)/kernel_exec-openfw.Tpo kern/ieee1275/$(DEPDIR)/kernel_exec-openfw.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/ieee1275/openfw.c' object='kern/ieee1275/kernel_exec-openfw.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/ieee1275/kernel_exec-openfw.obj `if test -f 'kern/ieee1275/openfw.c'; then $(CYGPATH_W) 'kern/ieee1275/openfw.c'; else $(CYGPATH_W) '$(srcdir)/kern/ieee1275/openfw.c'; fi` - -term/ieee1275/kernel_exec-console.o: term/ieee1275/console.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT term/ieee1275/kernel_exec-console.o -MD -MP -MF term/ieee1275/$(DEPDIR)/kernel_exec-console.Tpo -c -o term/ieee1275/kernel_exec-console.o `test -f 'term/ieee1275/console.c' || echo '$(srcdir)/'`term/ieee1275/console.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) term/ieee1275/$(DEPDIR)/kernel_exec-console.Tpo term/ieee1275/$(DEPDIR)/kernel_exec-console.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='term/ieee1275/console.c' object='term/ieee1275/kernel_exec-console.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o term/ieee1275/kernel_exec-console.o `test -f 'term/ieee1275/console.c' || echo '$(srcdir)/'`term/ieee1275/console.c - -term/ieee1275/kernel_exec-console.obj: term/ieee1275/console.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT term/ieee1275/kernel_exec-console.obj -MD -MP -MF term/ieee1275/$(DEPDIR)/kernel_exec-console.Tpo -c -o term/ieee1275/kernel_exec-console.obj `if test -f 'term/ieee1275/console.c'; then $(CYGPATH_W) 'term/ieee1275/console.c'; else $(CYGPATH_W) '$(srcdir)/term/ieee1275/console.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) term/ieee1275/$(DEPDIR)/kernel_exec-console.Tpo term/ieee1275/$(DEPDIR)/kernel_exec-console.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='term/ieee1275/console.c' object='term/ieee1275/kernel_exec-console.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o term/ieee1275/kernel_exec-console.obj `if test -f 'term/ieee1275/console.c'; then $(CYGPATH_W) 'term/ieee1275/console.c'; else $(CYGPATH_W) '$(srcdir)/term/ieee1275/console.c'; fi` - -kern/ieee1275/kernel_exec-init.o: kern/ieee1275/init.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/ieee1275/kernel_exec-init.o -MD -MP -MF kern/ieee1275/$(DEPDIR)/kernel_exec-init.Tpo -c -o kern/ieee1275/kernel_exec-init.o `test -f 'kern/ieee1275/init.c' || echo '$(srcdir)/'`kern/ieee1275/init.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/ieee1275/$(DEPDIR)/kernel_exec-init.Tpo kern/ieee1275/$(DEPDIR)/kernel_exec-init.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/ieee1275/init.c' object='kern/ieee1275/kernel_exec-init.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/ieee1275/kernel_exec-init.o `test -f 'kern/ieee1275/init.c' || echo '$(srcdir)/'`kern/ieee1275/init.c - -kern/ieee1275/kernel_exec-init.obj: kern/ieee1275/init.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/ieee1275/kernel_exec-init.obj -MD -MP -MF kern/ieee1275/$(DEPDIR)/kernel_exec-init.Tpo -c -o kern/ieee1275/kernel_exec-init.obj `if test -f 'kern/ieee1275/init.c'; then $(CYGPATH_W) 'kern/ieee1275/init.c'; else $(CYGPATH_W) '$(srcdir)/kern/ieee1275/init.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/ieee1275/$(DEPDIR)/kernel_exec-init.Tpo kern/ieee1275/$(DEPDIR)/kernel_exec-init.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/ieee1275/init.c' object='kern/ieee1275/kernel_exec-init.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/ieee1275/kernel_exec-init.obj `if test -f 'kern/ieee1275/init.c'; then $(CYGPATH_W) 'kern/ieee1275/init.c'; else $(CYGPATH_W) '$(srcdir)/kern/ieee1275/init.c'; fi` - -kern/i386/kernel_exec-multiboot_mmap.o: kern/i386/multiboot_mmap.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/i386/kernel_exec-multiboot_mmap.o -MD -MP -MF kern/i386/$(DEPDIR)/kernel_exec-multiboot_mmap.Tpo -c -o kern/i386/kernel_exec-multiboot_mmap.o `test -f 'kern/i386/multiboot_mmap.c' || echo '$(srcdir)/'`kern/i386/multiboot_mmap.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/i386/$(DEPDIR)/kernel_exec-multiboot_mmap.Tpo kern/i386/$(DEPDIR)/kernel_exec-multiboot_mmap.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/i386/multiboot_mmap.c' object='kern/i386/kernel_exec-multiboot_mmap.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/i386/kernel_exec-multiboot_mmap.o `test -f 'kern/i386/multiboot_mmap.c' || echo '$(srcdir)/'`kern/i386/multiboot_mmap.c - -kern/i386/kernel_exec-multiboot_mmap.obj: kern/i386/multiboot_mmap.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/i386/kernel_exec-multiboot_mmap.obj -MD -MP -MF kern/i386/$(DEPDIR)/kernel_exec-multiboot_mmap.Tpo -c -o kern/i386/kernel_exec-multiboot_mmap.obj `if test -f 'kern/i386/multiboot_mmap.c'; then $(CYGPATH_W) 'kern/i386/multiboot_mmap.c'; else $(CYGPATH_W) '$(srcdir)/kern/i386/multiboot_mmap.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/i386/$(DEPDIR)/kernel_exec-multiboot_mmap.Tpo kern/i386/$(DEPDIR)/kernel_exec-multiboot_mmap.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/i386/multiboot_mmap.c' object='kern/i386/kernel_exec-multiboot_mmap.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/i386/kernel_exec-multiboot_mmap.obj `if test -f 'kern/i386/multiboot_mmap.c'; then $(CYGPATH_W) 'kern/i386/multiboot_mmap.c'; else $(CYGPATH_W) '$(srcdir)/kern/i386/multiboot_mmap.c'; fi` - -kern/i386/pc/kernel_exec-init.o: kern/i386/pc/init.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/i386/pc/kernel_exec-init.o -MD -MP -MF kern/i386/pc/$(DEPDIR)/kernel_exec-init.Tpo -c -o kern/i386/pc/kernel_exec-init.o `test -f 'kern/i386/pc/init.c' || echo '$(srcdir)/'`kern/i386/pc/init.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/i386/pc/$(DEPDIR)/kernel_exec-init.Tpo kern/i386/pc/$(DEPDIR)/kernel_exec-init.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/i386/pc/init.c' object='kern/i386/pc/kernel_exec-init.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/i386/pc/kernel_exec-init.o `test -f 'kern/i386/pc/init.c' || echo '$(srcdir)/'`kern/i386/pc/init.c - -kern/i386/pc/kernel_exec-init.obj: kern/i386/pc/init.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/i386/pc/kernel_exec-init.obj -MD -MP -MF kern/i386/pc/$(DEPDIR)/kernel_exec-init.Tpo -c -o kern/i386/pc/kernel_exec-init.obj `if test -f 'kern/i386/pc/init.c'; then $(CYGPATH_W) 'kern/i386/pc/init.c'; else $(CYGPATH_W) '$(srcdir)/kern/i386/pc/init.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/i386/pc/$(DEPDIR)/kernel_exec-init.Tpo kern/i386/pc/$(DEPDIR)/kernel_exec-init.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/i386/pc/init.c' object='kern/i386/pc/kernel_exec-init.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/i386/pc/kernel_exec-init.obj `if test -f 'kern/i386/pc/init.c'; then $(CYGPATH_W) 'kern/i386/pc/init.c'; else $(CYGPATH_W) '$(srcdir)/kern/i386/pc/init.c'; fi` - -kern/i386/pc/kernel_exec-mmap.o: kern/i386/pc/mmap.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/i386/pc/kernel_exec-mmap.o -MD -MP -MF kern/i386/pc/$(DEPDIR)/kernel_exec-mmap.Tpo -c -o kern/i386/pc/kernel_exec-mmap.o `test -f 'kern/i386/pc/mmap.c' || echo '$(srcdir)/'`kern/i386/pc/mmap.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/i386/pc/$(DEPDIR)/kernel_exec-mmap.Tpo kern/i386/pc/$(DEPDIR)/kernel_exec-mmap.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/i386/pc/mmap.c' object='kern/i386/pc/kernel_exec-mmap.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/i386/pc/kernel_exec-mmap.o `test -f 'kern/i386/pc/mmap.c' || echo '$(srcdir)/'`kern/i386/pc/mmap.c - -kern/i386/pc/kernel_exec-mmap.obj: kern/i386/pc/mmap.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/i386/pc/kernel_exec-mmap.obj -MD -MP -MF kern/i386/pc/$(DEPDIR)/kernel_exec-mmap.Tpo -c -o kern/i386/pc/kernel_exec-mmap.obj `if test -f 'kern/i386/pc/mmap.c'; then $(CYGPATH_W) 'kern/i386/pc/mmap.c'; else $(CYGPATH_W) '$(srcdir)/kern/i386/pc/mmap.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/i386/pc/$(DEPDIR)/kernel_exec-mmap.Tpo kern/i386/pc/$(DEPDIR)/kernel_exec-mmap.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/i386/pc/mmap.c' object='kern/i386/pc/kernel_exec-mmap.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/i386/pc/kernel_exec-mmap.obj `if test -f 'kern/i386/pc/mmap.c'; then $(CYGPATH_W) 'kern/i386/pc/mmap.c'; else $(CYGPATH_W) '$(srcdir)/kern/i386/pc/mmap.c'; fi` - -term/i386/pc/kernel_exec-console.o: term/i386/pc/console.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT term/i386/pc/kernel_exec-console.o -MD -MP -MF term/i386/pc/$(DEPDIR)/kernel_exec-console.Tpo -c -o term/i386/pc/kernel_exec-console.o `test -f 'term/i386/pc/console.c' || echo '$(srcdir)/'`term/i386/pc/console.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) term/i386/pc/$(DEPDIR)/kernel_exec-console.Tpo term/i386/pc/$(DEPDIR)/kernel_exec-console.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='term/i386/pc/console.c' object='term/i386/pc/kernel_exec-console.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o term/i386/pc/kernel_exec-console.o `test -f 'term/i386/pc/console.c' || echo '$(srcdir)/'`term/i386/pc/console.c - -term/i386/pc/kernel_exec-console.obj: term/i386/pc/console.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT term/i386/pc/kernel_exec-console.obj -MD -MP -MF term/i386/pc/$(DEPDIR)/kernel_exec-console.Tpo -c -o term/i386/pc/kernel_exec-console.obj `if test -f 'term/i386/pc/console.c'; then $(CYGPATH_W) 'term/i386/pc/console.c'; else $(CYGPATH_W) '$(srcdir)/term/i386/pc/console.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) term/i386/pc/$(DEPDIR)/kernel_exec-console.Tpo term/i386/pc/$(DEPDIR)/kernel_exec-console.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='term/i386/pc/console.c' object='term/i386/pc/kernel_exec-console.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o term/i386/pc/kernel_exec-console.obj `if test -f 'term/i386/pc/console.c'; then $(CYGPATH_W) 'term/i386/pc/console.c'; else $(CYGPATH_W) '$(srcdir)/term/i386/pc/console.c'; fi` - -kern/i386/qemu/kernel_exec-init.o: kern/i386/qemu/init.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/i386/qemu/kernel_exec-init.o -MD -MP -MF kern/i386/qemu/$(DEPDIR)/kernel_exec-init.Tpo -c -o kern/i386/qemu/kernel_exec-init.o `test -f 'kern/i386/qemu/init.c' || echo '$(srcdir)/'`kern/i386/qemu/init.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/i386/qemu/$(DEPDIR)/kernel_exec-init.Tpo kern/i386/qemu/$(DEPDIR)/kernel_exec-init.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/i386/qemu/init.c' object='kern/i386/qemu/kernel_exec-init.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/i386/qemu/kernel_exec-init.o `test -f 'kern/i386/qemu/init.c' || echo '$(srcdir)/'`kern/i386/qemu/init.c - -kern/i386/qemu/kernel_exec-init.obj: kern/i386/qemu/init.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/i386/qemu/kernel_exec-init.obj -MD -MP -MF kern/i386/qemu/$(DEPDIR)/kernel_exec-init.Tpo -c -o kern/i386/qemu/kernel_exec-init.obj `if test -f 'kern/i386/qemu/init.c'; then $(CYGPATH_W) 'kern/i386/qemu/init.c'; else $(CYGPATH_W) '$(srcdir)/kern/i386/qemu/init.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/i386/qemu/$(DEPDIR)/kernel_exec-init.Tpo kern/i386/qemu/$(DEPDIR)/kernel_exec-init.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/i386/qemu/init.c' object='kern/i386/qemu/kernel_exec-init.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/i386/qemu/kernel_exec-init.obj `if test -f 'kern/i386/qemu/init.c'; then $(CYGPATH_W) 'kern/i386/qemu/init.c'; else $(CYGPATH_W) '$(srcdir)/kern/i386/qemu/init.c'; fi` - -kern/kernel_exec-vga_init.o: kern/vga_init.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/kernel_exec-vga_init.o -MD -MP -MF kern/$(DEPDIR)/kernel_exec-vga_init.Tpo -c -o kern/kernel_exec-vga_init.o `test -f 'kern/vga_init.c' || echo '$(srcdir)/'`kern/vga_init.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/$(DEPDIR)/kernel_exec-vga_init.Tpo kern/$(DEPDIR)/kernel_exec-vga_init.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/vga_init.c' object='kern/kernel_exec-vga_init.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/kernel_exec-vga_init.o `test -f 'kern/vga_init.c' || echo '$(srcdir)/'`kern/vga_init.c - -kern/kernel_exec-vga_init.obj: kern/vga_init.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/kernel_exec-vga_init.obj -MD -MP -MF kern/$(DEPDIR)/kernel_exec-vga_init.Tpo -c -o kern/kernel_exec-vga_init.obj `if test -f 'kern/vga_init.c'; then $(CYGPATH_W) 'kern/vga_init.c'; else $(CYGPATH_W) '$(srcdir)/kern/vga_init.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/$(DEPDIR)/kernel_exec-vga_init.Tpo kern/$(DEPDIR)/kernel_exec-vga_init.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/vga_init.c' object='kern/kernel_exec-vga_init.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/kernel_exec-vga_init.obj `if test -f 'kern/vga_init.c'; then $(CYGPATH_W) 'kern/vga_init.c'; else $(CYGPATH_W) '$(srcdir)/kern/vga_init.c'; fi` - -kern/i386/qemu/kernel_exec-mmap.o: kern/i386/qemu/mmap.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/i386/qemu/kernel_exec-mmap.o -MD -MP -MF kern/i386/qemu/$(DEPDIR)/kernel_exec-mmap.Tpo -c -o kern/i386/qemu/kernel_exec-mmap.o `test -f 'kern/i386/qemu/mmap.c' || echo '$(srcdir)/'`kern/i386/qemu/mmap.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/i386/qemu/$(DEPDIR)/kernel_exec-mmap.Tpo kern/i386/qemu/$(DEPDIR)/kernel_exec-mmap.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/i386/qemu/mmap.c' object='kern/i386/qemu/kernel_exec-mmap.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/i386/qemu/kernel_exec-mmap.o `test -f 'kern/i386/qemu/mmap.c' || echo '$(srcdir)/'`kern/i386/qemu/mmap.c - -kern/i386/qemu/kernel_exec-mmap.obj: kern/i386/qemu/mmap.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/i386/qemu/kernel_exec-mmap.obj -MD -MP -MF kern/i386/qemu/$(DEPDIR)/kernel_exec-mmap.Tpo -c -o kern/i386/qemu/kernel_exec-mmap.obj `if test -f 'kern/i386/qemu/mmap.c'; then $(CYGPATH_W) 'kern/i386/qemu/mmap.c'; else $(CYGPATH_W) '$(srcdir)/kern/i386/qemu/mmap.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/i386/qemu/$(DEPDIR)/kernel_exec-mmap.Tpo kern/i386/qemu/$(DEPDIR)/kernel_exec-mmap.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/i386/qemu/mmap.c' object='kern/i386/qemu/kernel_exec-mmap.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/i386/qemu/kernel_exec-mmap.obj `if test -f 'kern/i386/qemu/mmap.c'; then $(CYGPATH_W) 'kern/i386/qemu/mmap.c'; else $(CYGPATH_W) '$(srcdir)/kern/i386/qemu/mmap.c'; fi` - -kern/i386/xen/kernel_exec-tsc.o: kern/i386/xen/tsc.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/i386/xen/kernel_exec-tsc.o -MD -MP -MF kern/i386/xen/$(DEPDIR)/kernel_exec-tsc.Tpo -c -o kern/i386/xen/kernel_exec-tsc.o `test -f 'kern/i386/xen/tsc.c' || echo '$(srcdir)/'`kern/i386/xen/tsc.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/i386/xen/$(DEPDIR)/kernel_exec-tsc.Tpo kern/i386/xen/$(DEPDIR)/kernel_exec-tsc.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/i386/xen/tsc.c' object='kern/i386/xen/kernel_exec-tsc.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/i386/xen/kernel_exec-tsc.o `test -f 'kern/i386/xen/tsc.c' || echo '$(srcdir)/'`kern/i386/xen/tsc.c - -kern/i386/xen/kernel_exec-tsc.obj: kern/i386/xen/tsc.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/i386/xen/kernel_exec-tsc.obj -MD -MP -MF kern/i386/xen/$(DEPDIR)/kernel_exec-tsc.Tpo -c -o kern/i386/xen/kernel_exec-tsc.obj `if test -f 'kern/i386/xen/tsc.c'; then $(CYGPATH_W) 'kern/i386/xen/tsc.c'; else $(CYGPATH_W) '$(srcdir)/kern/i386/xen/tsc.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/i386/xen/$(DEPDIR)/kernel_exec-tsc.Tpo kern/i386/xen/$(DEPDIR)/kernel_exec-tsc.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/i386/xen/tsc.c' object='kern/i386/xen/kernel_exec-tsc.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/i386/xen/kernel_exec-tsc.obj `if test -f 'kern/i386/xen/tsc.c'; then $(CYGPATH_W) 'kern/i386/xen/tsc.c'; else $(CYGPATH_W) '$(srcdir)/kern/i386/xen/tsc.c'; fi` - -kern/xen/kernel_exec-init.o: kern/xen/init.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/xen/kernel_exec-init.o -MD -MP -MF kern/xen/$(DEPDIR)/kernel_exec-init.Tpo -c -o kern/xen/kernel_exec-init.o `test -f 'kern/xen/init.c' || echo '$(srcdir)/'`kern/xen/init.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/xen/$(DEPDIR)/kernel_exec-init.Tpo kern/xen/$(DEPDIR)/kernel_exec-init.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/xen/init.c' object='kern/xen/kernel_exec-init.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/xen/kernel_exec-init.o `test -f 'kern/xen/init.c' || echo '$(srcdir)/'`kern/xen/init.c - -kern/xen/kernel_exec-init.obj: kern/xen/init.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/xen/kernel_exec-init.obj -MD -MP -MF kern/xen/$(DEPDIR)/kernel_exec-init.Tpo -c -o kern/xen/kernel_exec-init.obj `if test -f 'kern/xen/init.c'; then $(CYGPATH_W) 'kern/xen/init.c'; else $(CYGPATH_W) '$(srcdir)/kern/xen/init.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/xen/$(DEPDIR)/kernel_exec-init.Tpo kern/xen/$(DEPDIR)/kernel_exec-init.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/xen/init.c' object='kern/xen/kernel_exec-init.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/xen/kernel_exec-init.obj `if test -f 'kern/xen/init.c'; then $(CYGPATH_W) 'kern/xen/init.c'; else $(CYGPATH_W) '$(srcdir)/kern/xen/init.c'; fi` - -term/xen/kernel_exec-console.o: term/xen/console.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT term/xen/kernel_exec-console.o -MD -MP -MF term/xen/$(DEPDIR)/kernel_exec-console.Tpo -c -o term/xen/kernel_exec-console.o `test -f 'term/xen/console.c' || echo '$(srcdir)/'`term/xen/console.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) term/xen/$(DEPDIR)/kernel_exec-console.Tpo term/xen/$(DEPDIR)/kernel_exec-console.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='term/xen/console.c' object='term/xen/kernel_exec-console.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o term/xen/kernel_exec-console.o `test -f 'term/xen/console.c' || echo '$(srcdir)/'`term/xen/console.c - -term/xen/kernel_exec-console.obj: term/xen/console.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT term/xen/kernel_exec-console.obj -MD -MP -MF term/xen/$(DEPDIR)/kernel_exec-console.Tpo -c -o term/xen/kernel_exec-console.obj `if test -f 'term/xen/console.c'; then $(CYGPATH_W) 'term/xen/console.c'; else $(CYGPATH_W) '$(srcdir)/term/xen/console.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) term/xen/$(DEPDIR)/kernel_exec-console.Tpo term/xen/$(DEPDIR)/kernel_exec-console.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='term/xen/console.c' object='term/xen/kernel_exec-console.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o term/xen/kernel_exec-console.obj `if test -f 'term/xen/console.c'; then $(CYGPATH_W) 'term/xen/console.c'; else $(CYGPATH_W) '$(srcdir)/term/xen/console.c'; fi` - -disk/xen/kernel_exec-xendisk.o: disk/xen/xendisk.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT disk/xen/kernel_exec-xendisk.o -MD -MP -MF disk/xen/$(DEPDIR)/kernel_exec-xendisk.Tpo -c -o disk/xen/kernel_exec-xendisk.o `test -f 'disk/xen/xendisk.c' || echo '$(srcdir)/'`disk/xen/xendisk.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) disk/xen/$(DEPDIR)/kernel_exec-xendisk.Tpo disk/xen/$(DEPDIR)/kernel_exec-xendisk.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='disk/xen/xendisk.c' object='disk/xen/kernel_exec-xendisk.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o disk/xen/kernel_exec-xendisk.o `test -f 'disk/xen/xendisk.c' || echo '$(srcdir)/'`disk/xen/xendisk.c - -disk/xen/kernel_exec-xendisk.obj: disk/xen/xendisk.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT disk/xen/kernel_exec-xendisk.obj -MD -MP -MF disk/xen/$(DEPDIR)/kernel_exec-xendisk.Tpo -c -o disk/xen/kernel_exec-xendisk.obj `if test -f 'disk/xen/xendisk.c'; then $(CYGPATH_W) 'disk/xen/xendisk.c'; else $(CYGPATH_W) '$(srcdir)/disk/xen/xendisk.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) disk/xen/$(DEPDIR)/kernel_exec-xendisk.Tpo disk/xen/$(DEPDIR)/kernel_exec-xendisk.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='disk/xen/xendisk.c' object='disk/xen/kernel_exec-xendisk.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o disk/xen/kernel_exec-xendisk.obj `if test -f 'disk/xen/xendisk.c'; then $(CYGPATH_W) 'disk/xen/xendisk.c'; else $(CYGPATH_W) '$(srcdir)/disk/xen/xendisk.c'; fi` - -commands/kernel_exec-boot.o: commands/boot.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT commands/kernel_exec-boot.o -MD -MP -MF commands/$(DEPDIR)/kernel_exec-boot.Tpo -c -o commands/kernel_exec-boot.o `test -f 'commands/boot.c' || echo '$(srcdir)/'`commands/boot.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/$(DEPDIR)/kernel_exec-boot.Tpo commands/$(DEPDIR)/kernel_exec-boot.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/boot.c' object='commands/kernel_exec-boot.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o commands/kernel_exec-boot.o `test -f 'commands/boot.c' || echo '$(srcdir)/'`commands/boot.c - -commands/kernel_exec-boot.obj: commands/boot.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT commands/kernel_exec-boot.obj -MD -MP -MF commands/$(DEPDIR)/kernel_exec-boot.Tpo -c -o commands/kernel_exec-boot.obj `if test -f 'commands/boot.c'; then $(CYGPATH_W) 'commands/boot.c'; else $(CYGPATH_W) '$(srcdir)/commands/boot.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/$(DEPDIR)/kernel_exec-boot.Tpo commands/$(DEPDIR)/kernel_exec-boot.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/boot.c' object='commands/kernel_exec-boot.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o commands/kernel_exec-boot.obj `if test -f 'commands/boot.c'; then $(CYGPATH_W) 'commands/boot.c'; else $(CYGPATH_W) '$(srcdir)/commands/boot.c'; fi` - -kern/i386/xen/kernel_exec-pvh.o: kern/i386/xen/pvh.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/i386/xen/kernel_exec-pvh.o -MD -MP -MF kern/i386/xen/$(DEPDIR)/kernel_exec-pvh.Tpo -c -o kern/i386/xen/kernel_exec-pvh.o `test -f 'kern/i386/xen/pvh.c' || echo '$(srcdir)/'`kern/i386/xen/pvh.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/i386/xen/$(DEPDIR)/kernel_exec-pvh.Tpo kern/i386/xen/$(DEPDIR)/kernel_exec-pvh.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/i386/xen/pvh.c' object='kern/i386/xen/kernel_exec-pvh.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/i386/xen/kernel_exec-pvh.o `test -f 'kern/i386/xen/pvh.c' || echo '$(srcdir)/'`kern/i386/xen/pvh.c - -kern/i386/xen/kernel_exec-pvh.obj: kern/i386/xen/pvh.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/i386/xen/kernel_exec-pvh.obj -MD -MP -MF kern/i386/xen/$(DEPDIR)/kernel_exec-pvh.Tpo -c -o kern/i386/xen/kernel_exec-pvh.obj `if test -f 'kern/i386/xen/pvh.c'; then $(CYGPATH_W) 'kern/i386/xen/pvh.c'; else $(CYGPATH_W) '$(srcdir)/kern/i386/xen/pvh.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/i386/xen/$(DEPDIR)/kernel_exec-pvh.Tpo kern/i386/xen/$(DEPDIR)/kernel_exec-pvh.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/i386/xen/pvh.c' object='kern/i386/xen/kernel_exec-pvh.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/i386/xen/kernel_exec-pvh.obj `if test -f 'kern/i386/xen/pvh.c'; then $(CYGPATH_W) 'kern/i386/xen/pvh.c'; else $(CYGPATH_W) '$(srcdir)/kern/i386/xen/pvh.c'; fi` - -kern/ia64/efi/kernel_exec-init.o: kern/ia64/efi/init.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/ia64/efi/kernel_exec-init.o -MD -MP -MF kern/ia64/efi/$(DEPDIR)/kernel_exec-init.Tpo -c -o kern/ia64/efi/kernel_exec-init.o `test -f 'kern/ia64/efi/init.c' || echo '$(srcdir)/'`kern/ia64/efi/init.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/ia64/efi/$(DEPDIR)/kernel_exec-init.Tpo kern/ia64/efi/$(DEPDIR)/kernel_exec-init.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/ia64/efi/init.c' object='kern/ia64/efi/kernel_exec-init.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/ia64/efi/kernel_exec-init.o `test -f 'kern/ia64/efi/init.c' || echo '$(srcdir)/'`kern/ia64/efi/init.c - -kern/ia64/efi/kernel_exec-init.obj: kern/ia64/efi/init.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/ia64/efi/kernel_exec-init.obj -MD -MP -MF kern/ia64/efi/$(DEPDIR)/kernel_exec-init.Tpo -c -o kern/ia64/efi/kernel_exec-init.obj `if test -f 'kern/ia64/efi/init.c'; then $(CYGPATH_W) 'kern/ia64/efi/init.c'; else $(CYGPATH_W) '$(srcdir)/kern/ia64/efi/init.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/ia64/efi/$(DEPDIR)/kernel_exec-init.Tpo kern/ia64/efi/$(DEPDIR)/kernel_exec-init.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/ia64/efi/init.c' object='kern/ia64/efi/kernel_exec-init.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/ia64/efi/kernel_exec-init.obj `if test -f 'kern/ia64/efi/init.c'; then $(CYGPATH_W) 'kern/ia64/efi/init.c'; else $(CYGPATH_W) '$(srcdir)/kern/ia64/efi/init.c'; fi` - -kern/ia64/kernel_exec-dl.o: kern/ia64/dl.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/ia64/kernel_exec-dl.o -MD -MP -MF kern/ia64/$(DEPDIR)/kernel_exec-dl.Tpo -c -o kern/ia64/kernel_exec-dl.o `test -f 'kern/ia64/dl.c' || echo '$(srcdir)/'`kern/ia64/dl.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/ia64/$(DEPDIR)/kernel_exec-dl.Tpo kern/ia64/$(DEPDIR)/kernel_exec-dl.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/ia64/dl.c' object='kern/ia64/kernel_exec-dl.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/ia64/kernel_exec-dl.o `test -f 'kern/ia64/dl.c' || echo '$(srcdir)/'`kern/ia64/dl.c - -kern/ia64/kernel_exec-dl.obj: kern/ia64/dl.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/ia64/kernel_exec-dl.obj -MD -MP -MF kern/ia64/$(DEPDIR)/kernel_exec-dl.Tpo -c -o kern/ia64/kernel_exec-dl.obj `if test -f 'kern/ia64/dl.c'; then $(CYGPATH_W) 'kern/ia64/dl.c'; else $(CYGPATH_W) '$(srcdir)/kern/ia64/dl.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/ia64/$(DEPDIR)/kernel_exec-dl.Tpo kern/ia64/$(DEPDIR)/kernel_exec-dl.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/ia64/dl.c' object='kern/ia64/kernel_exec-dl.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/ia64/kernel_exec-dl.obj `if test -f 'kern/ia64/dl.c'; then $(CYGPATH_W) 'kern/ia64/dl.c'; else $(CYGPATH_W) '$(srcdir)/kern/ia64/dl.c'; fi` - -kern/ia64/kernel_exec-dl_helper.o: kern/ia64/dl_helper.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/ia64/kernel_exec-dl_helper.o -MD -MP -MF kern/ia64/$(DEPDIR)/kernel_exec-dl_helper.Tpo -c -o kern/ia64/kernel_exec-dl_helper.o `test -f 'kern/ia64/dl_helper.c' || echo '$(srcdir)/'`kern/ia64/dl_helper.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/ia64/$(DEPDIR)/kernel_exec-dl_helper.Tpo kern/ia64/$(DEPDIR)/kernel_exec-dl_helper.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/ia64/dl_helper.c' object='kern/ia64/kernel_exec-dl_helper.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/ia64/kernel_exec-dl_helper.o `test -f 'kern/ia64/dl_helper.c' || echo '$(srcdir)/'`kern/ia64/dl_helper.c - -kern/ia64/kernel_exec-dl_helper.obj: kern/ia64/dl_helper.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/ia64/kernel_exec-dl_helper.obj -MD -MP -MF kern/ia64/$(DEPDIR)/kernel_exec-dl_helper.Tpo -c -o kern/ia64/kernel_exec-dl_helper.obj `if test -f 'kern/ia64/dl_helper.c'; then $(CYGPATH_W) 'kern/ia64/dl_helper.c'; else $(CYGPATH_W) '$(srcdir)/kern/ia64/dl_helper.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/ia64/$(DEPDIR)/kernel_exec-dl_helper.Tpo kern/ia64/$(DEPDIR)/kernel_exec-dl_helper.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/ia64/dl_helper.c' object='kern/ia64/kernel_exec-dl_helper.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/ia64/kernel_exec-dl_helper.obj `if test -f 'kern/ia64/dl_helper.c'; then $(CYGPATH_W) 'kern/ia64/dl_helper.c'; else $(CYGPATH_W) '$(srcdir)/kern/ia64/dl_helper.c'; fi` - -kern/ia64/kernel_exec-cache.o: kern/ia64/cache.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/ia64/kernel_exec-cache.o -MD -MP -MF kern/ia64/$(DEPDIR)/kernel_exec-cache.Tpo -c -o kern/ia64/kernel_exec-cache.o `test -f 'kern/ia64/cache.c' || echo '$(srcdir)/'`kern/ia64/cache.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/ia64/$(DEPDIR)/kernel_exec-cache.Tpo kern/ia64/$(DEPDIR)/kernel_exec-cache.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/ia64/cache.c' object='kern/ia64/kernel_exec-cache.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/ia64/kernel_exec-cache.o `test -f 'kern/ia64/cache.c' || echo '$(srcdir)/'`kern/ia64/cache.c - -kern/ia64/kernel_exec-cache.obj: kern/ia64/cache.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/ia64/kernel_exec-cache.obj -MD -MP -MF kern/ia64/$(DEPDIR)/kernel_exec-cache.Tpo -c -o kern/ia64/kernel_exec-cache.obj `if test -f 'kern/ia64/cache.c'; then $(CYGPATH_W) 'kern/ia64/cache.c'; else $(CYGPATH_W) '$(srcdir)/kern/ia64/cache.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/ia64/$(DEPDIR)/kernel_exec-cache.Tpo kern/ia64/$(DEPDIR)/kernel_exec-cache.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/ia64/cache.c' object='kern/ia64/kernel_exec-cache.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/ia64/kernel_exec-cache.obj `if test -f 'kern/ia64/cache.c'; then $(CYGPATH_W) 'kern/ia64/cache.c'; else $(CYGPATH_W) '$(srcdir)/kern/ia64/cache.c'; fi` - -kern/mips/arc/kernel_exec-init.o: kern/mips/arc/init.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/mips/arc/kernel_exec-init.o -MD -MP -MF kern/mips/arc/$(DEPDIR)/kernel_exec-init.Tpo -c -o kern/mips/arc/kernel_exec-init.o `test -f 'kern/mips/arc/init.c' || echo '$(srcdir)/'`kern/mips/arc/init.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/mips/arc/$(DEPDIR)/kernel_exec-init.Tpo kern/mips/arc/$(DEPDIR)/kernel_exec-init.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/mips/arc/init.c' object='kern/mips/arc/kernel_exec-init.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/mips/arc/kernel_exec-init.o `test -f 'kern/mips/arc/init.c' || echo '$(srcdir)/'`kern/mips/arc/init.c - -kern/mips/arc/kernel_exec-init.obj: kern/mips/arc/init.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/mips/arc/kernel_exec-init.obj -MD -MP -MF kern/mips/arc/$(DEPDIR)/kernel_exec-init.Tpo -c -o kern/mips/arc/kernel_exec-init.obj `if test -f 'kern/mips/arc/init.c'; then $(CYGPATH_W) 'kern/mips/arc/init.c'; else $(CYGPATH_W) '$(srcdir)/kern/mips/arc/init.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/mips/arc/$(DEPDIR)/kernel_exec-init.Tpo kern/mips/arc/$(DEPDIR)/kernel_exec-init.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/mips/arc/init.c' object='kern/mips/arc/kernel_exec-init.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/mips/arc/kernel_exec-init.obj `if test -f 'kern/mips/arc/init.c'; then $(CYGPATH_W) 'kern/mips/arc/init.c'; else $(CYGPATH_W) '$(srcdir)/kern/mips/arc/init.c'; fi` - -term/arc/kernel_exec-console.o: term/arc/console.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT term/arc/kernel_exec-console.o -MD -MP -MF term/arc/$(DEPDIR)/kernel_exec-console.Tpo -c -o term/arc/kernel_exec-console.o `test -f 'term/arc/console.c' || echo '$(srcdir)/'`term/arc/console.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) term/arc/$(DEPDIR)/kernel_exec-console.Tpo term/arc/$(DEPDIR)/kernel_exec-console.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='term/arc/console.c' object='term/arc/kernel_exec-console.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o term/arc/kernel_exec-console.o `test -f 'term/arc/console.c' || echo '$(srcdir)/'`term/arc/console.c - -term/arc/kernel_exec-console.obj: term/arc/console.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT term/arc/kernel_exec-console.obj -MD -MP -MF term/arc/$(DEPDIR)/kernel_exec-console.Tpo -c -o term/arc/kernel_exec-console.obj `if test -f 'term/arc/console.c'; then $(CYGPATH_W) 'term/arc/console.c'; else $(CYGPATH_W) '$(srcdir)/term/arc/console.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) term/arc/$(DEPDIR)/kernel_exec-console.Tpo term/arc/$(DEPDIR)/kernel_exec-console.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='term/arc/console.c' object='term/arc/kernel_exec-console.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o term/arc/kernel_exec-console.obj `if test -f 'term/arc/console.c'; then $(CYGPATH_W) 'term/arc/console.c'; else $(CYGPATH_W) '$(srcdir)/term/arc/console.c'; fi` - -disk/arc/kernel_exec-arcdisk.o: disk/arc/arcdisk.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT disk/arc/kernel_exec-arcdisk.o -MD -MP -MF disk/arc/$(DEPDIR)/kernel_exec-arcdisk.Tpo -c -o disk/arc/kernel_exec-arcdisk.o `test -f 'disk/arc/arcdisk.c' || echo '$(srcdir)/'`disk/arc/arcdisk.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) disk/arc/$(DEPDIR)/kernel_exec-arcdisk.Tpo disk/arc/$(DEPDIR)/kernel_exec-arcdisk.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='disk/arc/arcdisk.c' object='disk/arc/kernel_exec-arcdisk.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o disk/arc/kernel_exec-arcdisk.o `test -f 'disk/arc/arcdisk.c' || echo '$(srcdir)/'`disk/arc/arcdisk.c - -disk/arc/kernel_exec-arcdisk.obj: disk/arc/arcdisk.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT disk/arc/kernel_exec-arcdisk.obj -MD -MP -MF disk/arc/$(DEPDIR)/kernel_exec-arcdisk.Tpo -c -o disk/arc/kernel_exec-arcdisk.obj `if test -f 'disk/arc/arcdisk.c'; then $(CYGPATH_W) 'disk/arc/arcdisk.c'; else $(CYGPATH_W) '$(srcdir)/disk/arc/arcdisk.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) disk/arc/$(DEPDIR)/kernel_exec-arcdisk.Tpo disk/arc/$(DEPDIR)/kernel_exec-arcdisk.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='disk/arc/arcdisk.c' object='disk/arc/kernel_exec-arcdisk.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o disk/arc/kernel_exec-arcdisk.obj `if test -f 'disk/arc/arcdisk.c'; then $(CYGPATH_W) 'disk/arc/arcdisk.c'; else $(CYGPATH_W) '$(srcdir)/disk/arc/arcdisk.c'; fi` - -kern/generic/kernel_exec-rtc_get_time_ms.o: kern/generic/rtc_get_time_ms.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/generic/kernel_exec-rtc_get_time_ms.o -MD -MP -MF kern/generic/$(DEPDIR)/kernel_exec-rtc_get_time_ms.Tpo -c -o kern/generic/kernel_exec-rtc_get_time_ms.o `test -f 'kern/generic/rtc_get_time_ms.c' || echo '$(srcdir)/'`kern/generic/rtc_get_time_ms.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/generic/$(DEPDIR)/kernel_exec-rtc_get_time_ms.Tpo kern/generic/$(DEPDIR)/kernel_exec-rtc_get_time_ms.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/generic/rtc_get_time_ms.c' object='kern/generic/kernel_exec-rtc_get_time_ms.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/generic/kernel_exec-rtc_get_time_ms.o `test -f 'kern/generic/rtc_get_time_ms.c' || echo '$(srcdir)/'`kern/generic/rtc_get_time_ms.c - -kern/generic/kernel_exec-rtc_get_time_ms.obj: kern/generic/rtc_get_time_ms.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/generic/kernel_exec-rtc_get_time_ms.obj -MD -MP -MF kern/generic/$(DEPDIR)/kernel_exec-rtc_get_time_ms.Tpo -c -o kern/generic/kernel_exec-rtc_get_time_ms.obj `if test -f 'kern/generic/rtc_get_time_ms.c'; then $(CYGPATH_W) 'kern/generic/rtc_get_time_ms.c'; else $(CYGPATH_W) '$(srcdir)/kern/generic/rtc_get_time_ms.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/generic/$(DEPDIR)/kernel_exec-rtc_get_time_ms.Tpo kern/generic/$(DEPDIR)/kernel_exec-rtc_get_time_ms.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/generic/rtc_get_time_ms.c' object='kern/generic/kernel_exec-rtc_get_time_ms.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/generic/kernel_exec-rtc_get_time_ms.obj `if test -f 'kern/generic/rtc_get_time_ms.c'; then $(CYGPATH_W) 'kern/generic/rtc_get_time_ms.c'; else $(CYGPATH_W) '$(srcdir)/kern/generic/rtc_get_time_ms.c'; fi` - -kern/mips/kernel_exec-dl.o: kern/mips/dl.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/mips/kernel_exec-dl.o -MD -MP -MF kern/mips/$(DEPDIR)/kernel_exec-dl.Tpo -c -o kern/mips/kernel_exec-dl.o `test -f 'kern/mips/dl.c' || echo '$(srcdir)/'`kern/mips/dl.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/mips/$(DEPDIR)/kernel_exec-dl.Tpo kern/mips/$(DEPDIR)/kernel_exec-dl.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/mips/dl.c' object='kern/mips/kernel_exec-dl.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/mips/kernel_exec-dl.o `test -f 'kern/mips/dl.c' || echo '$(srcdir)/'`kern/mips/dl.c - -kern/mips/kernel_exec-dl.obj: kern/mips/dl.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/mips/kernel_exec-dl.obj -MD -MP -MF kern/mips/$(DEPDIR)/kernel_exec-dl.Tpo -c -o kern/mips/kernel_exec-dl.obj `if test -f 'kern/mips/dl.c'; then $(CYGPATH_W) 'kern/mips/dl.c'; else $(CYGPATH_W) '$(srcdir)/kern/mips/dl.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/mips/$(DEPDIR)/kernel_exec-dl.Tpo kern/mips/$(DEPDIR)/kernel_exec-dl.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/mips/dl.c' object='kern/mips/kernel_exec-dl.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/mips/kernel_exec-dl.obj `if test -f 'kern/mips/dl.c'; then $(CYGPATH_W) 'kern/mips/dl.c'; else $(CYGPATH_W) '$(srcdir)/kern/mips/dl.c'; fi` - -kern/mips/kernel_exec-init.o: kern/mips/init.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/mips/kernel_exec-init.o -MD -MP -MF kern/mips/$(DEPDIR)/kernel_exec-init.Tpo -c -o kern/mips/kernel_exec-init.o `test -f 'kern/mips/init.c' || echo '$(srcdir)/'`kern/mips/init.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/mips/$(DEPDIR)/kernel_exec-init.Tpo kern/mips/$(DEPDIR)/kernel_exec-init.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/mips/init.c' object='kern/mips/kernel_exec-init.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/mips/kernel_exec-init.o `test -f 'kern/mips/init.c' || echo '$(srcdir)/'`kern/mips/init.c - -kern/mips/kernel_exec-init.obj: kern/mips/init.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/mips/kernel_exec-init.obj -MD -MP -MF kern/mips/$(DEPDIR)/kernel_exec-init.Tpo -c -o kern/mips/kernel_exec-init.obj `if test -f 'kern/mips/init.c'; then $(CYGPATH_W) 'kern/mips/init.c'; else $(CYGPATH_W) '$(srcdir)/kern/mips/init.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/mips/$(DEPDIR)/kernel_exec-init.Tpo kern/mips/$(DEPDIR)/kernel_exec-init.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/mips/init.c' object='kern/mips/kernel_exec-init.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/mips/kernel_exec-init.obj `if test -f 'kern/mips/init.c'; then $(CYGPATH_W) 'kern/mips/init.c'; else $(CYGPATH_W) '$(srcdir)/kern/mips/init.c'; fi` - -term/kernel_exec-ns8250.o: term/ns8250.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT term/kernel_exec-ns8250.o -MD -MP -MF term/$(DEPDIR)/kernel_exec-ns8250.Tpo -c -o term/kernel_exec-ns8250.o `test -f 'term/ns8250.c' || echo '$(srcdir)/'`term/ns8250.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) term/$(DEPDIR)/kernel_exec-ns8250.Tpo term/$(DEPDIR)/kernel_exec-ns8250.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='term/ns8250.c' object='term/kernel_exec-ns8250.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o term/kernel_exec-ns8250.o `test -f 'term/ns8250.c' || echo '$(srcdir)/'`term/ns8250.c - -term/kernel_exec-ns8250.obj: term/ns8250.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT term/kernel_exec-ns8250.obj -MD -MP -MF term/$(DEPDIR)/kernel_exec-ns8250.Tpo -c -o term/kernel_exec-ns8250.obj `if test -f 'term/ns8250.c'; then $(CYGPATH_W) 'term/ns8250.c'; else $(CYGPATH_W) '$(srcdir)/term/ns8250.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) term/$(DEPDIR)/kernel_exec-ns8250.Tpo term/$(DEPDIR)/kernel_exec-ns8250.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='term/ns8250.c' object='term/kernel_exec-ns8250.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o term/kernel_exec-ns8250.obj `if test -f 'term/ns8250.c'; then $(CYGPATH_W) 'term/ns8250.c'; else $(CYGPATH_W) '$(srcdir)/term/ns8250.c'; fi` - -bus/kernel_exec-bonito.o: bus/bonito.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT bus/kernel_exec-bonito.o -MD -MP -MF bus/$(DEPDIR)/kernel_exec-bonito.Tpo -c -o bus/kernel_exec-bonito.o `test -f 'bus/bonito.c' || echo '$(srcdir)/'`bus/bonito.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) bus/$(DEPDIR)/kernel_exec-bonito.Tpo bus/$(DEPDIR)/kernel_exec-bonito.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='bus/bonito.c' object='bus/kernel_exec-bonito.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o bus/kernel_exec-bonito.o `test -f 'bus/bonito.c' || echo '$(srcdir)/'`bus/bonito.c - -bus/kernel_exec-bonito.obj: bus/bonito.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT bus/kernel_exec-bonito.obj -MD -MP -MF bus/$(DEPDIR)/kernel_exec-bonito.Tpo -c -o bus/kernel_exec-bonito.obj `if test -f 'bus/bonito.c'; then $(CYGPATH_W) 'bus/bonito.c'; else $(CYGPATH_W) '$(srcdir)/bus/bonito.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) bus/$(DEPDIR)/kernel_exec-bonito.Tpo bus/$(DEPDIR)/kernel_exec-bonito.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='bus/bonito.c' object='bus/kernel_exec-bonito.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o bus/kernel_exec-bonito.obj `if test -f 'bus/bonito.c'; then $(CYGPATH_W) 'bus/bonito.c'; else $(CYGPATH_W) '$(srcdir)/bus/bonito.c'; fi` - -bus/kernel_exec-cs5536.o: bus/cs5536.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT bus/kernel_exec-cs5536.o -MD -MP -MF bus/$(DEPDIR)/kernel_exec-cs5536.Tpo -c -o bus/kernel_exec-cs5536.o `test -f 'bus/cs5536.c' || echo '$(srcdir)/'`bus/cs5536.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) bus/$(DEPDIR)/kernel_exec-cs5536.Tpo bus/$(DEPDIR)/kernel_exec-cs5536.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='bus/cs5536.c' object='bus/kernel_exec-cs5536.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o bus/kernel_exec-cs5536.o `test -f 'bus/cs5536.c' || echo '$(srcdir)/'`bus/cs5536.c - -bus/kernel_exec-cs5536.obj: bus/cs5536.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT bus/kernel_exec-cs5536.obj -MD -MP -MF bus/$(DEPDIR)/kernel_exec-cs5536.Tpo -c -o bus/kernel_exec-cs5536.obj `if test -f 'bus/cs5536.c'; then $(CYGPATH_W) 'bus/cs5536.c'; else $(CYGPATH_W) '$(srcdir)/bus/cs5536.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) bus/$(DEPDIR)/kernel_exec-cs5536.Tpo bus/$(DEPDIR)/kernel_exec-cs5536.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='bus/cs5536.c' object='bus/kernel_exec-cs5536.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o bus/kernel_exec-cs5536.obj `if test -f 'bus/cs5536.c'; then $(CYGPATH_W) 'bus/cs5536.c'; else $(CYGPATH_W) '$(srcdir)/bus/cs5536.c'; fi` - -kern/mips/loongson/kernel_exec-init.o: kern/mips/loongson/init.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/mips/loongson/kernel_exec-init.o -MD -MP -MF kern/mips/loongson/$(DEPDIR)/kernel_exec-init.Tpo -c -o kern/mips/loongson/kernel_exec-init.o `test -f 'kern/mips/loongson/init.c' || echo '$(srcdir)/'`kern/mips/loongson/init.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/mips/loongson/$(DEPDIR)/kernel_exec-init.Tpo kern/mips/loongson/$(DEPDIR)/kernel_exec-init.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/mips/loongson/init.c' object='kern/mips/loongson/kernel_exec-init.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/mips/loongson/kernel_exec-init.o `test -f 'kern/mips/loongson/init.c' || echo '$(srcdir)/'`kern/mips/loongson/init.c - -kern/mips/loongson/kernel_exec-init.obj: kern/mips/loongson/init.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/mips/loongson/kernel_exec-init.obj -MD -MP -MF kern/mips/loongson/$(DEPDIR)/kernel_exec-init.Tpo -c -o kern/mips/loongson/kernel_exec-init.obj `if test -f 'kern/mips/loongson/init.c'; then $(CYGPATH_W) 'kern/mips/loongson/init.c'; else $(CYGPATH_W) '$(srcdir)/kern/mips/loongson/init.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/mips/loongson/$(DEPDIR)/kernel_exec-init.Tpo kern/mips/loongson/$(DEPDIR)/kernel_exec-init.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/mips/loongson/init.c' object='kern/mips/loongson/kernel_exec-init.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/mips/loongson/kernel_exec-init.obj `if test -f 'kern/mips/loongson/init.c'; then $(CYGPATH_W) 'kern/mips/loongson/init.c'; else $(CYGPATH_W) '$(srcdir)/kern/mips/loongson/init.c'; fi` - -term/kernel_exec-at_keyboard.o: term/at_keyboard.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT term/kernel_exec-at_keyboard.o -MD -MP -MF term/$(DEPDIR)/kernel_exec-at_keyboard.Tpo -c -o term/kernel_exec-at_keyboard.o `test -f 'term/at_keyboard.c' || echo '$(srcdir)/'`term/at_keyboard.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) term/$(DEPDIR)/kernel_exec-at_keyboard.Tpo term/$(DEPDIR)/kernel_exec-at_keyboard.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='term/at_keyboard.c' object='term/kernel_exec-at_keyboard.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o term/kernel_exec-at_keyboard.o `test -f 'term/at_keyboard.c' || echo '$(srcdir)/'`term/at_keyboard.c - -term/kernel_exec-at_keyboard.obj: term/at_keyboard.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT term/kernel_exec-at_keyboard.obj -MD -MP -MF term/$(DEPDIR)/kernel_exec-at_keyboard.Tpo -c -o term/kernel_exec-at_keyboard.obj `if test -f 'term/at_keyboard.c'; then $(CYGPATH_W) 'term/at_keyboard.c'; else $(CYGPATH_W) '$(srcdir)/term/at_keyboard.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) term/$(DEPDIR)/kernel_exec-at_keyboard.Tpo term/$(DEPDIR)/kernel_exec-at_keyboard.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='term/at_keyboard.c' object='term/kernel_exec-at_keyboard.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o term/kernel_exec-at_keyboard.obj `if test -f 'term/at_keyboard.c'; then $(CYGPATH_W) 'term/at_keyboard.c'; else $(CYGPATH_W) '$(srcdir)/term/at_keyboard.c'; fi` - -term/kernel_exec-serial.o: term/serial.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT term/kernel_exec-serial.o -MD -MP -MF term/$(DEPDIR)/kernel_exec-serial.Tpo -c -o term/kernel_exec-serial.o `test -f 'term/serial.c' || echo '$(srcdir)/'`term/serial.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) term/$(DEPDIR)/kernel_exec-serial.Tpo term/$(DEPDIR)/kernel_exec-serial.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='term/serial.c' object='term/kernel_exec-serial.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o term/kernel_exec-serial.o `test -f 'term/serial.c' || echo '$(srcdir)/'`term/serial.c - -term/kernel_exec-serial.obj: term/serial.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT term/kernel_exec-serial.obj -MD -MP -MF term/$(DEPDIR)/kernel_exec-serial.Tpo -c -o term/kernel_exec-serial.obj `if test -f 'term/serial.c'; then $(CYGPATH_W) 'term/serial.c'; else $(CYGPATH_W) '$(srcdir)/term/serial.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) term/$(DEPDIR)/kernel_exec-serial.Tpo term/$(DEPDIR)/kernel_exec-serial.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='term/serial.c' object='term/kernel_exec-serial.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o term/kernel_exec-serial.obj `if test -f 'term/serial.c'; then $(CYGPATH_W) 'term/serial.c'; else $(CYGPATH_W) '$(srcdir)/term/serial.c'; fi` - -video/kernel_exec-sm712.o: video/sm712.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT video/kernel_exec-sm712.o -MD -MP -MF video/$(DEPDIR)/kernel_exec-sm712.Tpo -c -o video/kernel_exec-sm712.o `test -f 'video/sm712.c' || echo '$(srcdir)/'`video/sm712.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) video/$(DEPDIR)/kernel_exec-sm712.Tpo video/$(DEPDIR)/kernel_exec-sm712.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='video/sm712.c' object='video/kernel_exec-sm712.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o video/kernel_exec-sm712.o `test -f 'video/sm712.c' || echo '$(srcdir)/'`video/sm712.c - -video/kernel_exec-sm712.obj: video/sm712.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT video/kernel_exec-sm712.obj -MD -MP -MF video/$(DEPDIR)/kernel_exec-sm712.Tpo -c -o video/kernel_exec-sm712.obj `if test -f 'video/sm712.c'; then $(CYGPATH_W) 'video/sm712.c'; else $(CYGPATH_W) '$(srcdir)/video/sm712.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) video/$(DEPDIR)/kernel_exec-sm712.Tpo video/$(DEPDIR)/kernel_exec-sm712.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='video/sm712.c' object='video/kernel_exec-sm712.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o video/kernel_exec-sm712.obj `if test -f 'video/sm712.c'; then $(CYGPATH_W) 'video/sm712.c'; else $(CYGPATH_W) '$(srcdir)/video/sm712.c'; fi` - -video/kernel_exec-sis315pro.o: video/sis315pro.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT video/kernel_exec-sis315pro.o -MD -MP -MF video/$(DEPDIR)/kernel_exec-sis315pro.Tpo -c -o video/kernel_exec-sis315pro.o `test -f 'video/sis315pro.c' || echo '$(srcdir)/'`video/sis315pro.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) video/$(DEPDIR)/kernel_exec-sis315pro.Tpo video/$(DEPDIR)/kernel_exec-sis315pro.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='video/sis315pro.c' object='video/kernel_exec-sis315pro.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o video/kernel_exec-sis315pro.o `test -f 'video/sis315pro.c' || echo '$(srcdir)/'`video/sis315pro.c - -video/kernel_exec-sis315pro.obj: video/sis315pro.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT video/kernel_exec-sis315pro.obj -MD -MP -MF video/$(DEPDIR)/kernel_exec-sis315pro.Tpo -c -o video/kernel_exec-sis315pro.obj `if test -f 'video/sis315pro.c'; then $(CYGPATH_W) 'video/sis315pro.c'; else $(CYGPATH_W) '$(srcdir)/video/sis315pro.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) video/$(DEPDIR)/kernel_exec-sis315pro.Tpo video/$(DEPDIR)/kernel_exec-sis315pro.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='video/sis315pro.c' object='video/kernel_exec-sis315pro.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o video/kernel_exec-sis315pro.obj `if test -f 'video/sis315pro.c'; then $(CYGPATH_W) 'video/sis315pro.c'; else $(CYGPATH_W) '$(srcdir)/video/sis315pro.c'; fi` - -video/kernel_exec-radeon_fuloong2e.o: video/radeon_fuloong2e.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT video/kernel_exec-radeon_fuloong2e.o -MD -MP -MF video/$(DEPDIR)/kernel_exec-radeon_fuloong2e.Tpo -c -o video/kernel_exec-radeon_fuloong2e.o `test -f 'video/radeon_fuloong2e.c' || echo '$(srcdir)/'`video/radeon_fuloong2e.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) video/$(DEPDIR)/kernel_exec-radeon_fuloong2e.Tpo video/$(DEPDIR)/kernel_exec-radeon_fuloong2e.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='video/radeon_fuloong2e.c' object='video/kernel_exec-radeon_fuloong2e.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o video/kernel_exec-radeon_fuloong2e.o `test -f 'video/radeon_fuloong2e.c' || echo '$(srcdir)/'`video/radeon_fuloong2e.c - -video/kernel_exec-radeon_fuloong2e.obj: video/radeon_fuloong2e.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT video/kernel_exec-radeon_fuloong2e.obj -MD -MP -MF video/$(DEPDIR)/kernel_exec-radeon_fuloong2e.Tpo -c -o video/kernel_exec-radeon_fuloong2e.obj `if test -f 'video/radeon_fuloong2e.c'; then $(CYGPATH_W) 'video/radeon_fuloong2e.c'; else $(CYGPATH_W) '$(srcdir)/video/radeon_fuloong2e.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) video/$(DEPDIR)/kernel_exec-radeon_fuloong2e.Tpo video/$(DEPDIR)/kernel_exec-radeon_fuloong2e.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='video/radeon_fuloong2e.c' object='video/kernel_exec-radeon_fuloong2e.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o video/kernel_exec-radeon_fuloong2e.obj `if test -f 'video/radeon_fuloong2e.c'; then $(CYGPATH_W) 'video/radeon_fuloong2e.c'; else $(CYGPATH_W) '$(srcdir)/video/radeon_fuloong2e.c'; fi` - -video/kernel_exec-radeon_yeeloong3a.o: video/radeon_yeeloong3a.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT video/kernel_exec-radeon_yeeloong3a.o -MD -MP -MF video/$(DEPDIR)/kernel_exec-radeon_yeeloong3a.Tpo -c -o video/kernel_exec-radeon_yeeloong3a.o `test -f 'video/radeon_yeeloong3a.c' || echo '$(srcdir)/'`video/radeon_yeeloong3a.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) video/$(DEPDIR)/kernel_exec-radeon_yeeloong3a.Tpo video/$(DEPDIR)/kernel_exec-radeon_yeeloong3a.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='video/radeon_yeeloong3a.c' object='video/kernel_exec-radeon_yeeloong3a.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o video/kernel_exec-radeon_yeeloong3a.o `test -f 'video/radeon_yeeloong3a.c' || echo '$(srcdir)/'`video/radeon_yeeloong3a.c - -video/kernel_exec-radeon_yeeloong3a.obj: video/radeon_yeeloong3a.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT video/kernel_exec-radeon_yeeloong3a.obj -MD -MP -MF video/$(DEPDIR)/kernel_exec-radeon_yeeloong3a.Tpo -c -o video/kernel_exec-radeon_yeeloong3a.obj `if test -f 'video/radeon_yeeloong3a.c'; then $(CYGPATH_W) 'video/radeon_yeeloong3a.c'; else $(CYGPATH_W) '$(srcdir)/video/radeon_yeeloong3a.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) video/$(DEPDIR)/kernel_exec-radeon_yeeloong3a.Tpo video/$(DEPDIR)/kernel_exec-radeon_yeeloong3a.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='video/radeon_yeeloong3a.c' object='video/kernel_exec-radeon_yeeloong3a.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o video/kernel_exec-radeon_yeeloong3a.obj `if test -f 'video/radeon_yeeloong3a.c'; then $(CYGPATH_W) 'video/radeon_yeeloong3a.c'; else $(CYGPATH_W) '$(srcdir)/video/radeon_yeeloong3a.c'; fi` - -kern/mips/qemu_mips/kernel_exec-init.o: kern/mips/qemu_mips/init.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/mips/qemu_mips/kernel_exec-init.o -MD -MP -MF kern/mips/qemu_mips/$(DEPDIR)/kernel_exec-init.Tpo -c -o kern/mips/qemu_mips/kernel_exec-init.o `test -f 'kern/mips/qemu_mips/init.c' || echo '$(srcdir)/'`kern/mips/qemu_mips/init.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/mips/qemu_mips/$(DEPDIR)/kernel_exec-init.Tpo kern/mips/qemu_mips/$(DEPDIR)/kernel_exec-init.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/mips/qemu_mips/init.c' object='kern/mips/qemu_mips/kernel_exec-init.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/mips/qemu_mips/kernel_exec-init.o `test -f 'kern/mips/qemu_mips/init.c' || echo '$(srcdir)/'`kern/mips/qemu_mips/init.c - -kern/mips/qemu_mips/kernel_exec-init.obj: kern/mips/qemu_mips/init.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/mips/qemu_mips/kernel_exec-init.obj -MD -MP -MF kern/mips/qemu_mips/$(DEPDIR)/kernel_exec-init.Tpo -c -o kern/mips/qemu_mips/kernel_exec-init.obj `if test -f 'kern/mips/qemu_mips/init.c'; then $(CYGPATH_W) 'kern/mips/qemu_mips/init.c'; else $(CYGPATH_W) '$(srcdir)/kern/mips/qemu_mips/init.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/mips/qemu_mips/$(DEPDIR)/kernel_exec-init.Tpo kern/mips/qemu_mips/$(DEPDIR)/kernel_exec-init.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/mips/qemu_mips/init.c' object='kern/mips/qemu_mips/kernel_exec-init.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/mips/qemu_mips/kernel_exec-init.obj `if test -f 'kern/mips/qemu_mips/init.c'; then $(CYGPATH_W) 'kern/mips/qemu_mips/init.c'; else $(CYGPATH_W) '$(srcdir)/kern/mips/qemu_mips/init.c'; fi` - -kern/powerpc/kernel_exec-dl.o: kern/powerpc/dl.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/powerpc/kernel_exec-dl.o -MD -MP -MF kern/powerpc/$(DEPDIR)/kernel_exec-dl.Tpo -c -o kern/powerpc/kernel_exec-dl.o `test -f 'kern/powerpc/dl.c' || echo '$(srcdir)/'`kern/powerpc/dl.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/powerpc/$(DEPDIR)/kernel_exec-dl.Tpo kern/powerpc/$(DEPDIR)/kernel_exec-dl.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/powerpc/dl.c' object='kern/powerpc/kernel_exec-dl.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/powerpc/kernel_exec-dl.o `test -f 'kern/powerpc/dl.c' || echo '$(srcdir)/'`kern/powerpc/dl.c - -kern/powerpc/kernel_exec-dl.obj: kern/powerpc/dl.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/powerpc/kernel_exec-dl.obj -MD -MP -MF kern/powerpc/$(DEPDIR)/kernel_exec-dl.Tpo -c -o kern/powerpc/kernel_exec-dl.obj `if test -f 'kern/powerpc/dl.c'; then $(CYGPATH_W) 'kern/powerpc/dl.c'; else $(CYGPATH_W) '$(srcdir)/kern/powerpc/dl.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/powerpc/$(DEPDIR)/kernel_exec-dl.Tpo kern/powerpc/$(DEPDIR)/kernel_exec-dl.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/powerpc/dl.c' object='kern/powerpc/kernel_exec-dl.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/powerpc/kernel_exec-dl.obj `if test -f 'kern/powerpc/dl.c'; then $(CYGPATH_W) 'kern/powerpc/dl.c'; else $(CYGPATH_W) '$(srcdir)/kern/powerpc/dl.c'; fi` - -kern/riscv/efi/kernel_exec-init.o: kern/riscv/efi/init.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/riscv/efi/kernel_exec-init.o -MD -MP -MF kern/riscv/efi/$(DEPDIR)/kernel_exec-init.Tpo -c -o kern/riscv/efi/kernel_exec-init.o `test -f 'kern/riscv/efi/init.c' || echo '$(srcdir)/'`kern/riscv/efi/init.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/riscv/efi/$(DEPDIR)/kernel_exec-init.Tpo kern/riscv/efi/$(DEPDIR)/kernel_exec-init.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/riscv/efi/init.c' object='kern/riscv/efi/kernel_exec-init.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/riscv/efi/kernel_exec-init.o `test -f 'kern/riscv/efi/init.c' || echo '$(srcdir)/'`kern/riscv/efi/init.c - -kern/riscv/efi/kernel_exec-init.obj: kern/riscv/efi/init.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/riscv/efi/kernel_exec-init.obj -MD -MP -MF kern/riscv/efi/$(DEPDIR)/kernel_exec-init.Tpo -c -o kern/riscv/efi/kernel_exec-init.obj `if test -f 'kern/riscv/efi/init.c'; then $(CYGPATH_W) 'kern/riscv/efi/init.c'; else $(CYGPATH_W) '$(srcdir)/kern/riscv/efi/init.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/riscv/efi/$(DEPDIR)/kernel_exec-init.Tpo kern/riscv/efi/$(DEPDIR)/kernel_exec-init.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/riscv/efi/init.c' object='kern/riscv/efi/kernel_exec-init.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/riscv/efi/kernel_exec-init.obj `if test -f 'kern/riscv/efi/init.c'; then $(CYGPATH_W) 'kern/riscv/efi/init.c'; else $(CYGPATH_W) '$(srcdir)/kern/riscv/efi/init.c'; fi` - -kern/riscv/kernel_exec-cache.o: kern/riscv/cache.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/riscv/kernel_exec-cache.o -MD -MP -MF kern/riscv/$(DEPDIR)/kernel_exec-cache.Tpo -c -o kern/riscv/kernel_exec-cache.o `test -f 'kern/riscv/cache.c' || echo '$(srcdir)/'`kern/riscv/cache.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/riscv/$(DEPDIR)/kernel_exec-cache.Tpo kern/riscv/$(DEPDIR)/kernel_exec-cache.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/riscv/cache.c' object='kern/riscv/kernel_exec-cache.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/riscv/kernel_exec-cache.o `test -f 'kern/riscv/cache.c' || echo '$(srcdir)/'`kern/riscv/cache.c - -kern/riscv/kernel_exec-cache.obj: kern/riscv/cache.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/riscv/kernel_exec-cache.obj -MD -MP -MF kern/riscv/$(DEPDIR)/kernel_exec-cache.Tpo -c -o kern/riscv/kernel_exec-cache.obj `if test -f 'kern/riscv/cache.c'; then $(CYGPATH_W) 'kern/riscv/cache.c'; else $(CYGPATH_W) '$(srcdir)/kern/riscv/cache.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/riscv/$(DEPDIR)/kernel_exec-cache.Tpo kern/riscv/$(DEPDIR)/kernel_exec-cache.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/riscv/cache.c' object='kern/riscv/kernel_exec-cache.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/riscv/kernel_exec-cache.obj `if test -f 'kern/riscv/cache.c'; then $(CYGPATH_W) 'kern/riscv/cache.c'; else $(CYGPATH_W) '$(srcdir)/kern/riscv/cache.c'; fi` - -kern/riscv/kernel_exec-dl.o: kern/riscv/dl.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/riscv/kernel_exec-dl.o -MD -MP -MF kern/riscv/$(DEPDIR)/kernel_exec-dl.Tpo -c -o kern/riscv/kernel_exec-dl.o `test -f 'kern/riscv/dl.c' || echo '$(srcdir)/'`kern/riscv/dl.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/riscv/$(DEPDIR)/kernel_exec-dl.Tpo kern/riscv/$(DEPDIR)/kernel_exec-dl.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/riscv/dl.c' object='kern/riscv/kernel_exec-dl.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/riscv/kernel_exec-dl.o `test -f 'kern/riscv/dl.c' || echo '$(srcdir)/'`kern/riscv/dl.c - -kern/riscv/kernel_exec-dl.obj: kern/riscv/dl.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/riscv/kernel_exec-dl.obj -MD -MP -MF kern/riscv/$(DEPDIR)/kernel_exec-dl.Tpo -c -o kern/riscv/kernel_exec-dl.obj `if test -f 'kern/riscv/dl.c'; then $(CYGPATH_W) 'kern/riscv/dl.c'; else $(CYGPATH_W) '$(srcdir)/kern/riscv/dl.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/riscv/$(DEPDIR)/kernel_exec-dl.Tpo kern/riscv/$(DEPDIR)/kernel_exec-dl.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/riscv/dl.c' object='kern/riscv/kernel_exec-dl.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/riscv/kernel_exec-dl.obj `if test -f 'kern/riscv/dl.c'; then $(CYGPATH_W) 'kern/riscv/dl.c'; else $(CYGPATH_W) '$(srcdir)/kern/riscv/dl.c'; fi` - -kern/sparc64/kernel_exec-dl.o: kern/sparc64/dl.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/sparc64/kernel_exec-dl.o -MD -MP -MF kern/sparc64/$(DEPDIR)/kernel_exec-dl.Tpo -c -o kern/sparc64/kernel_exec-dl.o `test -f 'kern/sparc64/dl.c' || echo '$(srcdir)/'`kern/sparc64/dl.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/sparc64/$(DEPDIR)/kernel_exec-dl.Tpo kern/sparc64/$(DEPDIR)/kernel_exec-dl.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/sparc64/dl.c' object='kern/sparc64/kernel_exec-dl.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/sparc64/kernel_exec-dl.o `test -f 'kern/sparc64/dl.c' || echo '$(srcdir)/'`kern/sparc64/dl.c - -kern/sparc64/kernel_exec-dl.obj: kern/sparc64/dl.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/sparc64/kernel_exec-dl.obj -MD -MP -MF kern/sparc64/$(DEPDIR)/kernel_exec-dl.Tpo -c -o kern/sparc64/kernel_exec-dl.obj `if test -f 'kern/sparc64/dl.c'; then $(CYGPATH_W) 'kern/sparc64/dl.c'; else $(CYGPATH_W) '$(srcdir)/kern/sparc64/dl.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/sparc64/$(DEPDIR)/kernel_exec-dl.Tpo kern/sparc64/$(DEPDIR)/kernel_exec-dl.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/sparc64/dl.c' object='kern/sparc64/kernel_exec-dl.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/sparc64/kernel_exec-dl.obj `if test -f 'kern/sparc64/dl.c'; then $(CYGPATH_W) 'kern/sparc64/dl.c'; else $(CYGPATH_W) '$(srcdir)/kern/sparc64/dl.c'; fi` - -kern/sparc64/ieee1275/kernel_exec-ieee1275.o: kern/sparc64/ieee1275/ieee1275.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/sparc64/ieee1275/kernel_exec-ieee1275.o -MD -MP -MF kern/sparc64/ieee1275/$(DEPDIR)/kernel_exec-ieee1275.Tpo -c -o kern/sparc64/ieee1275/kernel_exec-ieee1275.o `test -f 'kern/sparc64/ieee1275/ieee1275.c' || echo '$(srcdir)/'`kern/sparc64/ieee1275/ieee1275.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/sparc64/ieee1275/$(DEPDIR)/kernel_exec-ieee1275.Tpo kern/sparc64/ieee1275/$(DEPDIR)/kernel_exec-ieee1275.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/sparc64/ieee1275/ieee1275.c' object='kern/sparc64/ieee1275/kernel_exec-ieee1275.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/sparc64/ieee1275/kernel_exec-ieee1275.o `test -f 'kern/sparc64/ieee1275/ieee1275.c' || echo '$(srcdir)/'`kern/sparc64/ieee1275/ieee1275.c - -kern/sparc64/ieee1275/kernel_exec-ieee1275.obj: kern/sparc64/ieee1275/ieee1275.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/sparc64/ieee1275/kernel_exec-ieee1275.obj -MD -MP -MF kern/sparc64/ieee1275/$(DEPDIR)/kernel_exec-ieee1275.Tpo -c -o kern/sparc64/ieee1275/kernel_exec-ieee1275.obj `if test -f 'kern/sparc64/ieee1275/ieee1275.c'; then $(CYGPATH_W) 'kern/sparc64/ieee1275/ieee1275.c'; else $(CYGPATH_W) '$(srcdir)/kern/sparc64/ieee1275/ieee1275.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/sparc64/ieee1275/$(DEPDIR)/kernel_exec-ieee1275.Tpo kern/sparc64/ieee1275/$(DEPDIR)/kernel_exec-ieee1275.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/sparc64/ieee1275/ieee1275.c' object='kern/sparc64/ieee1275/kernel_exec-ieee1275.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/sparc64/ieee1275/kernel_exec-ieee1275.obj `if test -f 'kern/sparc64/ieee1275/ieee1275.c'; then $(CYGPATH_W) 'kern/sparc64/ieee1275/ieee1275.c'; else $(CYGPATH_W) '$(srcdir)/kern/sparc64/ieee1275/ieee1275.c'; fi` - -disk/ieee1275/kernel_exec-obdisk.o: disk/ieee1275/obdisk.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT disk/ieee1275/kernel_exec-obdisk.o -MD -MP -MF disk/ieee1275/$(DEPDIR)/kernel_exec-obdisk.Tpo -c -o disk/ieee1275/kernel_exec-obdisk.o `test -f 'disk/ieee1275/obdisk.c' || echo '$(srcdir)/'`disk/ieee1275/obdisk.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) disk/ieee1275/$(DEPDIR)/kernel_exec-obdisk.Tpo disk/ieee1275/$(DEPDIR)/kernel_exec-obdisk.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='disk/ieee1275/obdisk.c' object='disk/ieee1275/kernel_exec-obdisk.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o disk/ieee1275/kernel_exec-obdisk.o `test -f 'disk/ieee1275/obdisk.c' || echo '$(srcdir)/'`disk/ieee1275/obdisk.c - -disk/ieee1275/kernel_exec-obdisk.obj: disk/ieee1275/obdisk.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT disk/ieee1275/kernel_exec-obdisk.obj -MD -MP -MF disk/ieee1275/$(DEPDIR)/kernel_exec-obdisk.Tpo -c -o disk/ieee1275/kernel_exec-obdisk.obj `if test -f 'disk/ieee1275/obdisk.c'; then $(CYGPATH_W) 'disk/ieee1275/obdisk.c'; else $(CYGPATH_W) '$(srcdir)/disk/ieee1275/obdisk.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) disk/ieee1275/$(DEPDIR)/kernel_exec-obdisk.Tpo disk/ieee1275/$(DEPDIR)/kernel_exec-obdisk.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='disk/ieee1275/obdisk.c' object='disk/ieee1275/kernel_exec-obdisk.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o disk/ieee1275/kernel_exec-obdisk.obj `if test -f 'disk/ieee1275/obdisk.c'; then $(CYGPATH_W) 'disk/ieee1275/obdisk.c'; else $(CYGPATH_W) '$(srcdir)/disk/ieee1275/obdisk.c'; fi` - -kern/x86_64/kernel_exec-dl.o: kern/x86_64/dl.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/x86_64/kernel_exec-dl.o -MD -MP -MF kern/x86_64/$(DEPDIR)/kernel_exec-dl.Tpo -c -o kern/x86_64/kernel_exec-dl.o `test -f 'kern/x86_64/dl.c' || echo '$(srcdir)/'`kern/x86_64/dl.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/x86_64/$(DEPDIR)/kernel_exec-dl.Tpo kern/x86_64/$(DEPDIR)/kernel_exec-dl.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/x86_64/dl.c' object='kern/x86_64/kernel_exec-dl.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/x86_64/kernel_exec-dl.o `test -f 'kern/x86_64/dl.c' || echo '$(srcdir)/'`kern/x86_64/dl.c - -kern/x86_64/kernel_exec-dl.obj: kern/x86_64/dl.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kern/x86_64/kernel_exec-dl.obj -MD -MP -MF kern/x86_64/$(DEPDIR)/kernel_exec-dl.Tpo -c -o kern/x86_64/kernel_exec-dl.obj `if test -f 'kern/x86_64/dl.c'; then $(CYGPATH_W) 'kern/x86_64/dl.c'; else $(CYGPATH_W) '$(srcdir)/kern/x86_64/dl.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/x86_64/$(DEPDIR)/kernel_exec-dl.Tpo kern/x86_64/$(DEPDIR)/kernel_exec-dl.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/x86_64/dl.c' object='kern/x86_64/kernel_exec-dl.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kern/x86_64/kernel_exec-dl.obj `if test -f 'kern/x86_64/dl.c'; then $(CYGPATH_W) 'kern/x86_64/dl.c'; else $(CYGPATH_W) '$(srcdir)/kern/x86_64/dl.c'; fi` - -kernel_exec-symlist.o: symlist.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kernel_exec-symlist.o -MD -MP -MF $(DEPDIR)/kernel_exec-symlist.Tpo -c -o kernel_exec-symlist.o `test -f 'symlist.c' || echo '$(srcdir)/'`symlist.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/kernel_exec-symlist.Tpo $(DEPDIR)/kernel_exec-symlist.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='symlist.c' object='kernel_exec-symlist.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kernel_exec-symlist.o `test -f 'symlist.c' || echo '$(srcdir)/'`symlist.c - -kernel_exec-symlist.obj: symlist.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -MT kernel_exec-symlist.obj -MD -MP -MF $(DEPDIR)/kernel_exec-symlist.Tpo -c -o kernel_exec-symlist.obj `if test -f 'symlist.c'; then $(CYGPATH_W) 'symlist.c'; else $(CYGPATH_W) '$(srcdir)/symlist.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/kernel_exec-symlist.Tpo $(DEPDIR)/kernel_exec-symlist.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='symlist.c' object='kernel_exec-symlist.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(kernel_exec_CPPFLAGS) $(CPPFLAGS) $(kernel_exec_CFLAGS) $(CFLAGS) -c -o kernel_exec-symlist.obj `if test -f 'symlist.c'; then $(CYGPATH_W) 'symlist.c'; else $(CYGPATH_W) '$(srcdir)/symlist.c'; fi` - -commands/keylayouts_module-keylayouts.o: commands/keylayouts.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(keylayouts_module_CPPFLAGS) $(CPPFLAGS) $(keylayouts_module_CFLAGS) $(CFLAGS) -MT commands/keylayouts_module-keylayouts.o -MD -MP -MF commands/$(DEPDIR)/keylayouts_module-keylayouts.Tpo -c -o commands/keylayouts_module-keylayouts.o `test -f 'commands/keylayouts.c' || echo '$(srcdir)/'`commands/keylayouts.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/$(DEPDIR)/keylayouts_module-keylayouts.Tpo commands/$(DEPDIR)/keylayouts_module-keylayouts.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/keylayouts.c' object='commands/keylayouts_module-keylayouts.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(keylayouts_module_CPPFLAGS) $(CPPFLAGS) $(keylayouts_module_CFLAGS) $(CFLAGS) -c -o commands/keylayouts_module-keylayouts.o `test -f 'commands/keylayouts.c' || echo '$(srcdir)/'`commands/keylayouts.c - -commands/keylayouts_module-keylayouts.obj: commands/keylayouts.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(keylayouts_module_CPPFLAGS) $(CPPFLAGS) $(keylayouts_module_CFLAGS) $(CFLAGS) -MT commands/keylayouts_module-keylayouts.obj -MD -MP -MF commands/$(DEPDIR)/keylayouts_module-keylayouts.Tpo -c -o commands/keylayouts_module-keylayouts.obj `if test -f 'commands/keylayouts.c'; then $(CYGPATH_W) 'commands/keylayouts.c'; else $(CYGPATH_W) '$(srcdir)/commands/keylayouts.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/$(DEPDIR)/keylayouts_module-keylayouts.Tpo commands/$(DEPDIR)/keylayouts_module-keylayouts.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/keylayouts.c' object='commands/keylayouts_module-keylayouts.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(keylayouts_module_CPPFLAGS) $(CPPFLAGS) $(keylayouts_module_CFLAGS) $(CFLAGS) -c -o commands/keylayouts_module-keylayouts.obj `if test -f 'commands/keylayouts.c'; then $(CYGPATH_W) 'commands/keylayouts.c'; else $(CYGPATH_W) '$(srcdir)/commands/keylayouts.c'; fi` - -commands/keystatus_module-keystatus.o: commands/keystatus.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(keystatus_module_CPPFLAGS) $(CPPFLAGS) $(keystatus_module_CFLAGS) $(CFLAGS) -MT commands/keystatus_module-keystatus.o -MD -MP -MF commands/$(DEPDIR)/keystatus_module-keystatus.Tpo -c -o commands/keystatus_module-keystatus.o `test -f 'commands/keystatus.c' || echo '$(srcdir)/'`commands/keystatus.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/$(DEPDIR)/keystatus_module-keystatus.Tpo commands/$(DEPDIR)/keystatus_module-keystatus.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/keystatus.c' object='commands/keystatus_module-keystatus.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(keystatus_module_CPPFLAGS) $(CPPFLAGS) $(keystatus_module_CFLAGS) $(CFLAGS) -c -o commands/keystatus_module-keystatus.o `test -f 'commands/keystatus.c' || echo '$(srcdir)/'`commands/keystatus.c - -commands/keystatus_module-keystatus.obj: commands/keystatus.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(keystatus_module_CPPFLAGS) $(CPPFLAGS) $(keystatus_module_CFLAGS) $(CFLAGS) -MT commands/keystatus_module-keystatus.obj -MD -MP -MF commands/$(DEPDIR)/keystatus_module-keystatus.Tpo -c -o commands/keystatus_module-keystatus.obj `if test -f 'commands/keystatus.c'; then $(CYGPATH_W) 'commands/keystatus.c'; else $(CYGPATH_W) '$(srcdir)/commands/keystatus.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/$(DEPDIR)/keystatus_module-keystatus.Tpo commands/$(DEPDIR)/keystatus_module-keystatus.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/keystatus.c' object='commands/keystatus_module-keystatus.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(keystatus_module_CPPFLAGS) $(CPPFLAGS) $(keystatus_module_CFLAGS) $(CFLAGS) -c -o commands/keystatus_module-keystatus.obj `if test -f 'commands/keystatus.c'; then $(CYGPATH_W) 'commands/keystatus.c'; else $(CYGPATH_W) '$(srcdir)/commands/keystatus.c'; fi` - -disk/ldm_module-ldm.o: disk/ldm.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ldm_module_CPPFLAGS) $(CPPFLAGS) $(ldm_module_CFLAGS) $(CFLAGS) -MT disk/ldm_module-ldm.o -MD -MP -MF disk/$(DEPDIR)/ldm_module-ldm.Tpo -c -o disk/ldm_module-ldm.o `test -f 'disk/ldm.c' || echo '$(srcdir)/'`disk/ldm.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) disk/$(DEPDIR)/ldm_module-ldm.Tpo disk/$(DEPDIR)/ldm_module-ldm.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='disk/ldm.c' object='disk/ldm_module-ldm.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ldm_module_CPPFLAGS) $(CPPFLAGS) $(ldm_module_CFLAGS) $(CFLAGS) -c -o disk/ldm_module-ldm.o `test -f 'disk/ldm.c' || echo '$(srcdir)/'`disk/ldm.c - -disk/ldm_module-ldm.obj: disk/ldm.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ldm_module_CPPFLAGS) $(CPPFLAGS) $(ldm_module_CFLAGS) $(CFLAGS) -MT disk/ldm_module-ldm.obj -MD -MP -MF disk/$(DEPDIR)/ldm_module-ldm.Tpo -c -o disk/ldm_module-ldm.obj `if test -f 'disk/ldm.c'; then $(CYGPATH_W) 'disk/ldm.c'; else $(CYGPATH_W) '$(srcdir)/disk/ldm.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) disk/$(DEPDIR)/ldm_module-ldm.Tpo disk/$(DEPDIR)/ldm_module-ldm.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='disk/ldm.c' object='disk/ldm_module-ldm.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ldm_module_CPPFLAGS) $(CPPFLAGS) $(ldm_module_CFLAGS) $(CFLAGS) -c -o disk/ldm_module-ldm.obj `if test -f 'disk/ldm.c'; then $(CYGPATH_W) 'disk/ldm.c'; else $(CYGPATH_W) '$(srcdir)/disk/ldm.c'; fi` - -tests/legacy_password_test_module-legacy_password_test.o: tests/legacy_password_test.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(legacy_password_test_module_CPPFLAGS) $(CPPFLAGS) $(legacy_password_test_module_CFLAGS) $(CFLAGS) -MT tests/legacy_password_test_module-legacy_password_test.o -MD -MP -MF tests/$(DEPDIR)/legacy_password_test_module-legacy_password_test.Tpo -c -o tests/legacy_password_test_module-legacy_password_test.o `test -f 'tests/legacy_password_test.c' || echo '$(srcdir)/'`tests/legacy_password_test.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) tests/$(DEPDIR)/legacy_password_test_module-legacy_password_test.Tpo tests/$(DEPDIR)/legacy_password_test_module-legacy_password_test.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='tests/legacy_password_test.c' object='tests/legacy_password_test_module-legacy_password_test.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(legacy_password_test_module_CPPFLAGS) $(CPPFLAGS) $(legacy_password_test_module_CFLAGS) $(CFLAGS) -c -o tests/legacy_password_test_module-legacy_password_test.o `test -f 'tests/legacy_password_test.c' || echo '$(srcdir)/'`tests/legacy_password_test.c - -tests/legacy_password_test_module-legacy_password_test.obj: tests/legacy_password_test.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(legacy_password_test_module_CPPFLAGS) $(CPPFLAGS) $(legacy_password_test_module_CFLAGS) $(CFLAGS) -MT tests/legacy_password_test_module-legacy_password_test.obj -MD -MP -MF tests/$(DEPDIR)/legacy_password_test_module-legacy_password_test.Tpo -c -o tests/legacy_password_test_module-legacy_password_test.obj `if test -f 'tests/legacy_password_test.c'; then $(CYGPATH_W) 'tests/legacy_password_test.c'; else $(CYGPATH_W) '$(srcdir)/tests/legacy_password_test.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) tests/$(DEPDIR)/legacy_password_test_module-legacy_password_test.Tpo tests/$(DEPDIR)/legacy_password_test_module-legacy_password_test.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='tests/legacy_password_test.c' object='tests/legacy_password_test_module-legacy_password_test.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(legacy_password_test_module_CPPFLAGS) $(CPPFLAGS) $(legacy_password_test_module_CFLAGS) $(CFLAGS) -c -o tests/legacy_password_test_module-legacy_password_test.obj `if test -f 'tests/legacy_password_test.c'; then $(CYGPATH_W) 'tests/legacy_password_test.c'; else $(CYGPATH_W) '$(srcdir)/tests/legacy_password_test.c'; fi` - -lib/i386/pc/legacycfg_module-vesa_modes_table.o: lib/i386/pc/vesa_modes_table.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(legacycfg_module_CPPFLAGS) $(CPPFLAGS) $(legacycfg_module_CFLAGS) $(CFLAGS) -MT lib/i386/pc/legacycfg_module-vesa_modes_table.o -MD -MP -MF lib/i386/pc/$(DEPDIR)/legacycfg_module-vesa_modes_table.Tpo -c -o lib/i386/pc/legacycfg_module-vesa_modes_table.o `test -f 'lib/i386/pc/vesa_modes_table.c' || echo '$(srcdir)/'`lib/i386/pc/vesa_modes_table.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/i386/pc/$(DEPDIR)/legacycfg_module-vesa_modes_table.Tpo lib/i386/pc/$(DEPDIR)/legacycfg_module-vesa_modes_table.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/i386/pc/vesa_modes_table.c' object='lib/i386/pc/legacycfg_module-vesa_modes_table.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(legacycfg_module_CPPFLAGS) $(CPPFLAGS) $(legacycfg_module_CFLAGS) $(CFLAGS) -c -o lib/i386/pc/legacycfg_module-vesa_modes_table.o `test -f 'lib/i386/pc/vesa_modes_table.c' || echo '$(srcdir)/'`lib/i386/pc/vesa_modes_table.c - -lib/i386/pc/legacycfg_module-vesa_modes_table.obj: lib/i386/pc/vesa_modes_table.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(legacycfg_module_CPPFLAGS) $(CPPFLAGS) $(legacycfg_module_CFLAGS) $(CFLAGS) -MT lib/i386/pc/legacycfg_module-vesa_modes_table.obj -MD -MP -MF lib/i386/pc/$(DEPDIR)/legacycfg_module-vesa_modes_table.Tpo -c -o lib/i386/pc/legacycfg_module-vesa_modes_table.obj `if test -f 'lib/i386/pc/vesa_modes_table.c'; then $(CYGPATH_W) 'lib/i386/pc/vesa_modes_table.c'; else $(CYGPATH_W) '$(srcdir)/lib/i386/pc/vesa_modes_table.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/i386/pc/$(DEPDIR)/legacycfg_module-vesa_modes_table.Tpo lib/i386/pc/$(DEPDIR)/legacycfg_module-vesa_modes_table.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/i386/pc/vesa_modes_table.c' object='lib/i386/pc/legacycfg_module-vesa_modes_table.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(legacycfg_module_CPPFLAGS) $(CPPFLAGS) $(legacycfg_module_CFLAGS) $(CFLAGS) -c -o lib/i386/pc/legacycfg_module-vesa_modes_table.obj `if test -f 'lib/i386/pc/vesa_modes_table.c'; then $(CYGPATH_W) 'lib/i386/pc/vesa_modes_table.c'; else $(CYGPATH_W) '$(srcdir)/lib/i386/pc/vesa_modes_table.c'; fi` - -commands/legacycfg_module-legacycfg.o: commands/legacycfg.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(legacycfg_module_CPPFLAGS) $(CPPFLAGS) $(legacycfg_module_CFLAGS) $(CFLAGS) -MT commands/legacycfg_module-legacycfg.o -MD -MP -MF commands/$(DEPDIR)/legacycfg_module-legacycfg.Tpo -c -o commands/legacycfg_module-legacycfg.o `test -f 'commands/legacycfg.c' || echo '$(srcdir)/'`commands/legacycfg.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/$(DEPDIR)/legacycfg_module-legacycfg.Tpo commands/$(DEPDIR)/legacycfg_module-legacycfg.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/legacycfg.c' object='commands/legacycfg_module-legacycfg.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(legacycfg_module_CPPFLAGS) $(CPPFLAGS) $(legacycfg_module_CFLAGS) $(CFLAGS) -c -o commands/legacycfg_module-legacycfg.o `test -f 'commands/legacycfg.c' || echo '$(srcdir)/'`commands/legacycfg.c - -commands/legacycfg_module-legacycfg.obj: commands/legacycfg.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(legacycfg_module_CPPFLAGS) $(CPPFLAGS) $(legacycfg_module_CFLAGS) $(CFLAGS) -MT commands/legacycfg_module-legacycfg.obj -MD -MP -MF commands/$(DEPDIR)/legacycfg_module-legacycfg.Tpo -c -o commands/legacycfg_module-legacycfg.obj `if test -f 'commands/legacycfg.c'; then $(CYGPATH_W) 'commands/legacycfg.c'; else $(CYGPATH_W) '$(srcdir)/commands/legacycfg.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/$(DEPDIR)/legacycfg_module-legacycfg.Tpo commands/$(DEPDIR)/legacycfg_module-legacycfg.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/legacycfg.c' object='commands/legacycfg_module-legacycfg.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(legacycfg_module_CPPFLAGS) $(CPPFLAGS) $(legacycfg_module_CFLAGS) $(CFLAGS) -c -o commands/legacycfg_module-legacycfg.obj `if test -f 'commands/legacycfg.c'; then $(CYGPATH_W) 'commands/legacycfg.c'; else $(CYGPATH_W) '$(srcdir)/commands/legacycfg.c'; fi` - -lib/legacycfg_module-legacy_parse.o: lib/legacy_parse.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(legacycfg_module_CPPFLAGS) $(CPPFLAGS) $(legacycfg_module_CFLAGS) $(CFLAGS) -MT lib/legacycfg_module-legacy_parse.o -MD -MP -MF lib/$(DEPDIR)/legacycfg_module-legacy_parse.Tpo -c -o lib/legacycfg_module-legacy_parse.o `test -f 'lib/legacy_parse.c' || echo '$(srcdir)/'`lib/legacy_parse.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/$(DEPDIR)/legacycfg_module-legacy_parse.Tpo lib/$(DEPDIR)/legacycfg_module-legacy_parse.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/legacy_parse.c' object='lib/legacycfg_module-legacy_parse.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(legacycfg_module_CPPFLAGS) $(CPPFLAGS) $(legacycfg_module_CFLAGS) $(CFLAGS) -c -o lib/legacycfg_module-legacy_parse.o `test -f 'lib/legacy_parse.c' || echo '$(srcdir)/'`lib/legacy_parse.c - -lib/legacycfg_module-legacy_parse.obj: lib/legacy_parse.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(legacycfg_module_CPPFLAGS) $(CPPFLAGS) $(legacycfg_module_CFLAGS) $(CFLAGS) -MT lib/legacycfg_module-legacy_parse.obj -MD -MP -MF lib/$(DEPDIR)/legacycfg_module-legacy_parse.Tpo -c -o lib/legacycfg_module-legacy_parse.obj `if test -f 'lib/legacy_parse.c'; then $(CYGPATH_W) 'lib/legacy_parse.c'; else $(CYGPATH_W) '$(srcdir)/lib/legacy_parse.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/$(DEPDIR)/legacycfg_module-legacy_parse.Tpo lib/$(DEPDIR)/legacycfg_module-legacy_parse.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/legacy_parse.c' object='lib/legacycfg_module-legacy_parse.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(legacycfg_module_CPPFLAGS) $(CPPFLAGS) $(legacycfg_module_CFLAGS) $(CFLAGS) -c -o lib/legacycfg_module-legacy_parse.obj `if test -f 'lib/legacy_parse.c'; then $(CYGPATH_W) 'lib/legacy_parse.c'; else $(CYGPATH_W) '$(srcdir)/lib/legacy_parse.c'; fi` - -loader/arm64/linux_module-linux.o: loader/arm64/linux.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(linux_module_CPPFLAGS) $(CPPFLAGS) $(linux_module_CFLAGS) $(CFLAGS) -MT loader/arm64/linux_module-linux.o -MD -MP -MF loader/arm64/$(DEPDIR)/linux_module-linux.Tpo -c -o loader/arm64/linux_module-linux.o `test -f 'loader/arm64/linux.c' || echo '$(srcdir)/'`loader/arm64/linux.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) loader/arm64/$(DEPDIR)/linux_module-linux.Tpo loader/arm64/$(DEPDIR)/linux_module-linux.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='loader/arm64/linux.c' object='loader/arm64/linux_module-linux.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(linux_module_CPPFLAGS) $(CPPFLAGS) $(linux_module_CFLAGS) $(CFLAGS) -c -o loader/arm64/linux_module-linux.o `test -f 'loader/arm64/linux.c' || echo '$(srcdir)/'`loader/arm64/linux.c - -loader/arm64/linux_module-linux.obj: loader/arm64/linux.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(linux_module_CPPFLAGS) $(CPPFLAGS) $(linux_module_CFLAGS) $(CFLAGS) -MT loader/arm64/linux_module-linux.obj -MD -MP -MF loader/arm64/$(DEPDIR)/linux_module-linux.Tpo -c -o loader/arm64/linux_module-linux.obj `if test -f 'loader/arm64/linux.c'; then $(CYGPATH_W) 'loader/arm64/linux.c'; else $(CYGPATH_W) '$(srcdir)/loader/arm64/linux.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) loader/arm64/$(DEPDIR)/linux_module-linux.Tpo loader/arm64/$(DEPDIR)/linux_module-linux.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='loader/arm64/linux.c' object='loader/arm64/linux_module-linux.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(linux_module_CPPFLAGS) $(CPPFLAGS) $(linux_module_CFLAGS) $(CFLAGS) -c -o loader/arm64/linux_module-linux.obj `if test -f 'loader/arm64/linux.c'; then $(CYGPATH_W) 'loader/arm64/linux.c'; else $(CYGPATH_W) '$(srcdir)/loader/arm64/linux.c'; fi` - -loader/linux_module-linux.o: loader/linux.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(linux_module_CPPFLAGS) $(CPPFLAGS) $(linux_module_CFLAGS) $(CFLAGS) -MT loader/linux_module-linux.o -MD -MP -MF loader/$(DEPDIR)/linux_module-linux.Tpo -c -o loader/linux_module-linux.o `test -f 'loader/linux.c' || echo '$(srcdir)/'`loader/linux.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) loader/$(DEPDIR)/linux_module-linux.Tpo loader/$(DEPDIR)/linux_module-linux.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='loader/linux.c' object='loader/linux_module-linux.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(linux_module_CPPFLAGS) $(CPPFLAGS) $(linux_module_CFLAGS) $(CFLAGS) -c -o loader/linux_module-linux.o `test -f 'loader/linux.c' || echo '$(srcdir)/'`loader/linux.c - -loader/linux_module-linux.obj: loader/linux.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(linux_module_CPPFLAGS) $(CPPFLAGS) $(linux_module_CFLAGS) $(CFLAGS) -MT loader/linux_module-linux.obj -MD -MP -MF loader/$(DEPDIR)/linux_module-linux.Tpo -c -o loader/linux_module-linux.obj `if test -f 'loader/linux.c'; then $(CYGPATH_W) 'loader/linux.c'; else $(CYGPATH_W) '$(srcdir)/loader/linux.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) loader/$(DEPDIR)/linux_module-linux.Tpo loader/$(DEPDIR)/linux_module-linux.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='loader/linux.c' object='loader/linux_module-linux.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(linux_module_CPPFLAGS) $(CPPFLAGS) $(linux_module_CFLAGS) $(CFLAGS) -c -o loader/linux_module-linux.obj `if test -f 'loader/linux.c'; then $(CYGPATH_W) 'loader/linux.c'; else $(CYGPATH_W) '$(srcdir)/loader/linux.c'; fi` - -lib/linux_module-cmdline.o: lib/cmdline.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(linux_module_CPPFLAGS) $(CPPFLAGS) $(linux_module_CFLAGS) $(CFLAGS) -MT lib/linux_module-cmdline.o -MD -MP -MF lib/$(DEPDIR)/linux_module-cmdline.Tpo -c -o lib/linux_module-cmdline.o `test -f 'lib/cmdline.c' || echo '$(srcdir)/'`lib/cmdline.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/$(DEPDIR)/linux_module-cmdline.Tpo lib/$(DEPDIR)/linux_module-cmdline.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/cmdline.c' object='lib/linux_module-cmdline.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(linux_module_CPPFLAGS) $(CPPFLAGS) $(linux_module_CFLAGS) $(CFLAGS) -c -o lib/linux_module-cmdline.o `test -f 'lib/cmdline.c' || echo '$(srcdir)/'`lib/cmdline.c - -lib/linux_module-cmdline.obj: lib/cmdline.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(linux_module_CPPFLAGS) $(CPPFLAGS) $(linux_module_CFLAGS) $(CFLAGS) -MT lib/linux_module-cmdline.obj -MD -MP -MF lib/$(DEPDIR)/linux_module-cmdline.Tpo -c -o lib/linux_module-cmdline.obj `if test -f 'lib/cmdline.c'; then $(CYGPATH_W) 'lib/cmdline.c'; else $(CYGPATH_W) '$(srcdir)/lib/cmdline.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/$(DEPDIR)/linux_module-cmdline.Tpo lib/$(DEPDIR)/linux_module-cmdline.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/cmdline.c' object='lib/linux_module-cmdline.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(linux_module_CPPFLAGS) $(CPPFLAGS) $(linux_module_CFLAGS) $(CFLAGS) -c -o lib/linux_module-cmdline.obj `if test -f 'lib/cmdline.c'; then $(CYGPATH_W) 'lib/cmdline.c'; else $(CYGPATH_W) '$(srcdir)/lib/cmdline.c'; fi` - -loader/arm/linux_module-linux.o: loader/arm/linux.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(linux_module_CPPFLAGS) $(CPPFLAGS) $(linux_module_CFLAGS) $(CFLAGS) -MT loader/arm/linux_module-linux.o -MD -MP -MF loader/arm/$(DEPDIR)/linux_module-linux.Tpo -c -o loader/arm/linux_module-linux.o `test -f 'loader/arm/linux.c' || echo '$(srcdir)/'`loader/arm/linux.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) loader/arm/$(DEPDIR)/linux_module-linux.Tpo loader/arm/$(DEPDIR)/linux_module-linux.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='loader/arm/linux.c' object='loader/arm/linux_module-linux.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(linux_module_CPPFLAGS) $(CPPFLAGS) $(linux_module_CFLAGS) $(CFLAGS) -c -o loader/arm/linux_module-linux.o `test -f 'loader/arm/linux.c' || echo '$(srcdir)/'`loader/arm/linux.c - -loader/arm/linux_module-linux.obj: loader/arm/linux.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(linux_module_CPPFLAGS) $(CPPFLAGS) $(linux_module_CFLAGS) $(CFLAGS) -MT loader/arm/linux_module-linux.obj -MD -MP -MF loader/arm/$(DEPDIR)/linux_module-linux.Tpo -c -o loader/arm/linux_module-linux.obj `if test -f 'loader/arm/linux.c'; then $(CYGPATH_W) 'loader/arm/linux.c'; else $(CYGPATH_W) '$(srcdir)/loader/arm/linux.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) loader/arm/$(DEPDIR)/linux_module-linux.Tpo loader/arm/$(DEPDIR)/linux_module-linux.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='loader/arm/linux.c' object='loader/arm/linux_module-linux.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(linux_module_CPPFLAGS) $(CPPFLAGS) $(linux_module_CFLAGS) $(CFLAGS) -c -o loader/arm/linux_module-linux.obj `if test -f 'loader/arm/linux.c'; then $(CYGPATH_W) 'loader/arm/linux.c'; else $(CYGPATH_W) '$(srcdir)/loader/arm/linux.c'; fi` - -loader/i386/linux_module-linux.o: loader/i386/linux.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(linux_module_CPPFLAGS) $(CPPFLAGS) $(linux_module_CFLAGS) $(CFLAGS) -MT loader/i386/linux_module-linux.o -MD -MP -MF loader/i386/$(DEPDIR)/linux_module-linux.Tpo -c -o loader/i386/linux_module-linux.o `test -f 'loader/i386/linux.c' || echo '$(srcdir)/'`loader/i386/linux.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) loader/i386/$(DEPDIR)/linux_module-linux.Tpo loader/i386/$(DEPDIR)/linux_module-linux.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='loader/i386/linux.c' object='loader/i386/linux_module-linux.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(linux_module_CPPFLAGS) $(CPPFLAGS) $(linux_module_CFLAGS) $(CFLAGS) -c -o loader/i386/linux_module-linux.o `test -f 'loader/i386/linux.c' || echo '$(srcdir)/'`loader/i386/linux.c - -loader/i386/linux_module-linux.obj: loader/i386/linux.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(linux_module_CPPFLAGS) $(CPPFLAGS) $(linux_module_CFLAGS) $(CFLAGS) -MT loader/i386/linux_module-linux.obj -MD -MP -MF loader/i386/$(DEPDIR)/linux_module-linux.Tpo -c -o loader/i386/linux_module-linux.obj `if test -f 'loader/i386/linux.c'; then $(CYGPATH_W) 'loader/i386/linux.c'; else $(CYGPATH_W) '$(srcdir)/loader/i386/linux.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) loader/i386/$(DEPDIR)/linux_module-linux.Tpo loader/i386/$(DEPDIR)/linux_module-linux.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='loader/i386/linux.c' object='loader/i386/linux_module-linux.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(linux_module_CPPFLAGS) $(CPPFLAGS) $(linux_module_CFLAGS) $(CFLAGS) -c -o loader/i386/linux_module-linux.obj `if test -f 'loader/i386/linux.c'; then $(CYGPATH_W) 'loader/i386/linux.c'; else $(CYGPATH_W) '$(srcdir)/loader/i386/linux.c'; fi` - -lib/i386/pc/linux_module-vesa_modes_table.o: lib/i386/pc/vesa_modes_table.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(linux_module_CPPFLAGS) $(CPPFLAGS) $(linux_module_CFLAGS) $(CFLAGS) -MT lib/i386/pc/linux_module-vesa_modes_table.o -MD -MP -MF lib/i386/pc/$(DEPDIR)/linux_module-vesa_modes_table.Tpo -c -o lib/i386/pc/linux_module-vesa_modes_table.o `test -f 'lib/i386/pc/vesa_modes_table.c' || echo '$(srcdir)/'`lib/i386/pc/vesa_modes_table.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/i386/pc/$(DEPDIR)/linux_module-vesa_modes_table.Tpo lib/i386/pc/$(DEPDIR)/linux_module-vesa_modes_table.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/i386/pc/vesa_modes_table.c' object='lib/i386/pc/linux_module-vesa_modes_table.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(linux_module_CPPFLAGS) $(CPPFLAGS) $(linux_module_CFLAGS) $(CFLAGS) -c -o lib/i386/pc/linux_module-vesa_modes_table.o `test -f 'lib/i386/pc/vesa_modes_table.c' || echo '$(srcdir)/'`lib/i386/pc/vesa_modes_table.c - -lib/i386/pc/linux_module-vesa_modes_table.obj: lib/i386/pc/vesa_modes_table.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(linux_module_CPPFLAGS) $(CPPFLAGS) $(linux_module_CFLAGS) $(CFLAGS) -MT lib/i386/pc/linux_module-vesa_modes_table.obj -MD -MP -MF lib/i386/pc/$(DEPDIR)/linux_module-vesa_modes_table.Tpo -c -o lib/i386/pc/linux_module-vesa_modes_table.obj `if test -f 'lib/i386/pc/vesa_modes_table.c'; then $(CYGPATH_W) 'lib/i386/pc/vesa_modes_table.c'; else $(CYGPATH_W) '$(srcdir)/lib/i386/pc/vesa_modes_table.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/i386/pc/$(DEPDIR)/linux_module-vesa_modes_table.Tpo lib/i386/pc/$(DEPDIR)/linux_module-vesa_modes_table.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/i386/pc/vesa_modes_table.c' object='lib/i386/pc/linux_module-vesa_modes_table.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(linux_module_CPPFLAGS) $(CPPFLAGS) $(linux_module_CFLAGS) $(CFLAGS) -c -o lib/i386/pc/linux_module-vesa_modes_table.obj `if test -f 'lib/i386/pc/vesa_modes_table.c'; then $(CYGPATH_W) 'lib/i386/pc/vesa_modes_table.c'; else $(CYGPATH_W) '$(srcdir)/lib/i386/pc/vesa_modes_table.c'; fi` - -loader/i386/linux_module-xen.o: loader/i386/xen.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(linux_module_CPPFLAGS) $(CPPFLAGS) $(linux_module_CFLAGS) $(CFLAGS) -MT loader/i386/linux_module-xen.o -MD -MP -MF loader/i386/$(DEPDIR)/linux_module-xen.Tpo -c -o loader/i386/linux_module-xen.o `test -f 'loader/i386/xen.c' || echo '$(srcdir)/'`loader/i386/xen.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) loader/i386/$(DEPDIR)/linux_module-xen.Tpo loader/i386/$(DEPDIR)/linux_module-xen.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='loader/i386/xen.c' object='loader/i386/linux_module-xen.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(linux_module_CPPFLAGS) $(CPPFLAGS) $(linux_module_CFLAGS) $(CFLAGS) -c -o loader/i386/linux_module-xen.o `test -f 'loader/i386/xen.c' || echo '$(srcdir)/'`loader/i386/xen.c - -loader/i386/linux_module-xen.obj: loader/i386/xen.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(linux_module_CPPFLAGS) $(CPPFLAGS) $(linux_module_CFLAGS) $(CFLAGS) -MT loader/i386/linux_module-xen.obj -MD -MP -MF loader/i386/$(DEPDIR)/linux_module-xen.Tpo -c -o loader/i386/linux_module-xen.obj `if test -f 'loader/i386/xen.c'; then $(CYGPATH_W) 'loader/i386/xen.c'; else $(CYGPATH_W) '$(srcdir)/loader/i386/xen.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) loader/i386/$(DEPDIR)/linux_module-xen.Tpo loader/i386/$(DEPDIR)/linux_module-xen.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='loader/i386/xen.c' object='loader/i386/linux_module-xen.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(linux_module_CPPFLAGS) $(CPPFLAGS) $(linux_module_CFLAGS) $(CFLAGS) -c -o loader/i386/linux_module-xen.obj `if test -f 'loader/i386/xen.c'; then $(CYGPATH_W) 'loader/i386/xen.c'; else $(CYGPATH_W) '$(srcdir)/loader/i386/xen.c'; fi` - -loader/ia64/efi/linux_module-linux.o: loader/ia64/efi/linux.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(linux_module_CPPFLAGS) $(CPPFLAGS) $(linux_module_CFLAGS) $(CFLAGS) -MT loader/ia64/efi/linux_module-linux.o -MD -MP -MF loader/ia64/efi/$(DEPDIR)/linux_module-linux.Tpo -c -o loader/ia64/efi/linux_module-linux.o `test -f 'loader/ia64/efi/linux.c' || echo '$(srcdir)/'`loader/ia64/efi/linux.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) loader/ia64/efi/$(DEPDIR)/linux_module-linux.Tpo loader/ia64/efi/$(DEPDIR)/linux_module-linux.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='loader/ia64/efi/linux.c' object='loader/ia64/efi/linux_module-linux.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(linux_module_CPPFLAGS) $(CPPFLAGS) $(linux_module_CFLAGS) $(CFLAGS) -c -o loader/ia64/efi/linux_module-linux.o `test -f 'loader/ia64/efi/linux.c' || echo '$(srcdir)/'`loader/ia64/efi/linux.c - -loader/ia64/efi/linux_module-linux.obj: loader/ia64/efi/linux.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(linux_module_CPPFLAGS) $(CPPFLAGS) $(linux_module_CFLAGS) $(CFLAGS) -MT loader/ia64/efi/linux_module-linux.obj -MD -MP -MF loader/ia64/efi/$(DEPDIR)/linux_module-linux.Tpo -c -o loader/ia64/efi/linux_module-linux.obj `if test -f 'loader/ia64/efi/linux.c'; then $(CYGPATH_W) 'loader/ia64/efi/linux.c'; else $(CYGPATH_W) '$(srcdir)/loader/ia64/efi/linux.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) loader/ia64/efi/$(DEPDIR)/linux_module-linux.Tpo loader/ia64/efi/$(DEPDIR)/linux_module-linux.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='loader/ia64/efi/linux.c' object='loader/ia64/efi/linux_module-linux.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(linux_module_CPPFLAGS) $(CPPFLAGS) $(linux_module_CFLAGS) $(CFLAGS) -c -o loader/ia64/efi/linux_module-linux.obj `if test -f 'loader/ia64/efi/linux.c'; then $(CYGPATH_W) 'loader/ia64/efi/linux.c'; else $(CYGPATH_W) '$(srcdir)/loader/ia64/efi/linux.c'; fi` - -loader/mips/linux_module-linux.o: loader/mips/linux.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(linux_module_CPPFLAGS) $(CPPFLAGS) $(linux_module_CFLAGS) $(CFLAGS) -MT loader/mips/linux_module-linux.o -MD -MP -MF loader/mips/$(DEPDIR)/linux_module-linux.Tpo -c -o loader/mips/linux_module-linux.o `test -f 'loader/mips/linux.c' || echo '$(srcdir)/'`loader/mips/linux.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) loader/mips/$(DEPDIR)/linux_module-linux.Tpo loader/mips/$(DEPDIR)/linux_module-linux.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='loader/mips/linux.c' object='loader/mips/linux_module-linux.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(linux_module_CPPFLAGS) $(CPPFLAGS) $(linux_module_CFLAGS) $(CFLAGS) -c -o loader/mips/linux_module-linux.o `test -f 'loader/mips/linux.c' || echo '$(srcdir)/'`loader/mips/linux.c - -loader/mips/linux_module-linux.obj: loader/mips/linux.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(linux_module_CPPFLAGS) $(CPPFLAGS) $(linux_module_CFLAGS) $(CFLAGS) -MT loader/mips/linux_module-linux.obj -MD -MP -MF loader/mips/$(DEPDIR)/linux_module-linux.Tpo -c -o loader/mips/linux_module-linux.obj `if test -f 'loader/mips/linux.c'; then $(CYGPATH_W) 'loader/mips/linux.c'; else $(CYGPATH_W) '$(srcdir)/loader/mips/linux.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) loader/mips/$(DEPDIR)/linux_module-linux.Tpo loader/mips/$(DEPDIR)/linux_module-linux.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='loader/mips/linux.c' object='loader/mips/linux_module-linux.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(linux_module_CPPFLAGS) $(CPPFLAGS) $(linux_module_CFLAGS) $(CFLAGS) -c -o loader/mips/linux_module-linux.obj `if test -f 'loader/mips/linux.c'; then $(CYGPATH_W) 'loader/mips/linux.c'; else $(CYGPATH_W) '$(srcdir)/loader/mips/linux.c'; fi` - -loader/powerpc/ieee1275/linux_module-linux.o: loader/powerpc/ieee1275/linux.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(linux_module_CPPFLAGS) $(CPPFLAGS) $(linux_module_CFLAGS) $(CFLAGS) -MT loader/powerpc/ieee1275/linux_module-linux.o -MD -MP -MF loader/powerpc/ieee1275/$(DEPDIR)/linux_module-linux.Tpo -c -o loader/powerpc/ieee1275/linux_module-linux.o `test -f 'loader/powerpc/ieee1275/linux.c' || echo '$(srcdir)/'`loader/powerpc/ieee1275/linux.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) loader/powerpc/ieee1275/$(DEPDIR)/linux_module-linux.Tpo loader/powerpc/ieee1275/$(DEPDIR)/linux_module-linux.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='loader/powerpc/ieee1275/linux.c' object='loader/powerpc/ieee1275/linux_module-linux.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(linux_module_CPPFLAGS) $(CPPFLAGS) $(linux_module_CFLAGS) $(CFLAGS) -c -o loader/powerpc/ieee1275/linux_module-linux.o `test -f 'loader/powerpc/ieee1275/linux.c' || echo '$(srcdir)/'`loader/powerpc/ieee1275/linux.c - -loader/powerpc/ieee1275/linux_module-linux.obj: loader/powerpc/ieee1275/linux.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(linux_module_CPPFLAGS) $(CPPFLAGS) $(linux_module_CFLAGS) $(CFLAGS) -MT loader/powerpc/ieee1275/linux_module-linux.obj -MD -MP -MF loader/powerpc/ieee1275/$(DEPDIR)/linux_module-linux.Tpo -c -o loader/powerpc/ieee1275/linux_module-linux.obj `if test -f 'loader/powerpc/ieee1275/linux.c'; then $(CYGPATH_W) 'loader/powerpc/ieee1275/linux.c'; else $(CYGPATH_W) '$(srcdir)/loader/powerpc/ieee1275/linux.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) loader/powerpc/ieee1275/$(DEPDIR)/linux_module-linux.Tpo loader/powerpc/ieee1275/$(DEPDIR)/linux_module-linux.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='loader/powerpc/ieee1275/linux.c' object='loader/powerpc/ieee1275/linux_module-linux.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(linux_module_CPPFLAGS) $(CPPFLAGS) $(linux_module_CFLAGS) $(CFLAGS) -c -o loader/powerpc/ieee1275/linux_module-linux.obj `if test -f 'loader/powerpc/ieee1275/linux.c'; then $(CYGPATH_W) 'loader/powerpc/ieee1275/linux.c'; else $(CYGPATH_W) '$(srcdir)/loader/powerpc/ieee1275/linux.c'; fi` - -loader/riscv/linux_module-linux.o: loader/riscv/linux.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(linux_module_CPPFLAGS) $(CPPFLAGS) $(linux_module_CFLAGS) $(CFLAGS) -MT loader/riscv/linux_module-linux.o -MD -MP -MF loader/riscv/$(DEPDIR)/linux_module-linux.Tpo -c -o loader/riscv/linux_module-linux.o `test -f 'loader/riscv/linux.c' || echo '$(srcdir)/'`loader/riscv/linux.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) loader/riscv/$(DEPDIR)/linux_module-linux.Tpo loader/riscv/$(DEPDIR)/linux_module-linux.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='loader/riscv/linux.c' object='loader/riscv/linux_module-linux.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(linux_module_CPPFLAGS) $(CPPFLAGS) $(linux_module_CFLAGS) $(CFLAGS) -c -o loader/riscv/linux_module-linux.o `test -f 'loader/riscv/linux.c' || echo '$(srcdir)/'`loader/riscv/linux.c - -loader/riscv/linux_module-linux.obj: loader/riscv/linux.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(linux_module_CPPFLAGS) $(CPPFLAGS) $(linux_module_CFLAGS) $(CFLAGS) -MT loader/riscv/linux_module-linux.obj -MD -MP -MF loader/riscv/$(DEPDIR)/linux_module-linux.Tpo -c -o loader/riscv/linux_module-linux.obj `if test -f 'loader/riscv/linux.c'; then $(CYGPATH_W) 'loader/riscv/linux.c'; else $(CYGPATH_W) '$(srcdir)/loader/riscv/linux.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) loader/riscv/$(DEPDIR)/linux_module-linux.Tpo loader/riscv/$(DEPDIR)/linux_module-linux.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='loader/riscv/linux.c' object='loader/riscv/linux_module-linux.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(linux_module_CPPFLAGS) $(CPPFLAGS) $(linux_module_CFLAGS) $(CFLAGS) -c -o loader/riscv/linux_module-linux.obj `if test -f 'loader/riscv/linux.c'; then $(CYGPATH_W) 'loader/riscv/linux.c'; else $(CYGPATH_W) '$(srcdir)/loader/riscv/linux.c'; fi` - -loader/sparc64/ieee1275/linux_module-linux.o: loader/sparc64/ieee1275/linux.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(linux_module_CPPFLAGS) $(CPPFLAGS) $(linux_module_CFLAGS) $(CFLAGS) -MT loader/sparc64/ieee1275/linux_module-linux.o -MD -MP -MF loader/sparc64/ieee1275/$(DEPDIR)/linux_module-linux.Tpo -c -o loader/sparc64/ieee1275/linux_module-linux.o `test -f 'loader/sparc64/ieee1275/linux.c' || echo '$(srcdir)/'`loader/sparc64/ieee1275/linux.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) loader/sparc64/ieee1275/$(DEPDIR)/linux_module-linux.Tpo loader/sparc64/ieee1275/$(DEPDIR)/linux_module-linux.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='loader/sparc64/ieee1275/linux.c' object='loader/sparc64/ieee1275/linux_module-linux.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(linux_module_CPPFLAGS) $(CPPFLAGS) $(linux_module_CFLAGS) $(CFLAGS) -c -o loader/sparc64/ieee1275/linux_module-linux.o `test -f 'loader/sparc64/ieee1275/linux.c' || echo '$(srcdir)/'`loader/sparc64/ieee1275/linux.c - -loader/sparc64/ieee1275/linux_module-linux.obj: loader/sparc64/ieee1275/linux.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(linux_module_CPPFLAGS) $(CPPFLAGS) $(linux_module_CFLAGS) $(CFLAGS) -MT loader/sparc64/ieee1275/linux_module-linux.obj -MD -MP -MF loader/sparc64/ieee1275/$(DEPDIR)/linux_module-linux.Tpo -c -o loader/sparc64/ieee1275/linux_module-linux.obj `if test -f 'loader/sparc64/ieee1275/linux.c'; then $(CYGPATH_W) 'loader/sparc64/ieee1275/linux.c'; else $(CYGPATH_W) '$(srcdir)/loader/sparc64/ieee1275/linux.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) loader/sparc64/ieee1275/$(DEPDIR)/linux_module-linux.Tpo loader/sparc64/ieee1275/$(DEPDIR)/linux_module-linux.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='loader/sparc64/ieee1275/linux.c' object='loader/sparc64/ieee1275/linux_module-linux.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(linux_module_CPPFLAGS) $(CPPFLAGS) $(linux_module_CFLAGS) $(CFLAGS) -c -o loader/sparc64/ieee1275/linux_module-linux.obj `if test -f 'loader/sparc64/ieee1275/linux.c'; then $(CYGPATH_W) 'loader/sparc64/ieee1275/linux.c'; else $(CYGPATH_W) '$(srcdir)/loader/sparc64/ieee1275/linux.c'; fi` - -loader/i386/pc/linux16_module-linux.o: loader/i386/pc/linux.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(linux16_module_CPPFLAGS) $(CPPFLAGS) $(linux16_module_CFLAGS) $(CFLAGS) -MT loader/i386/pc/linux16_module-linux.o -MD -MP -MF loader/i386/pc/$(DEPDIR)/linux16_module-linux.Tpo -c -o loader/i386/pc/linux16_module-linux.o `test -f 'loader/i386/pc/linux.c' || echo '$(srcdir)/'`loader/i386/pc/linux.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) loader/i386/pc/$(DEPDIR)/linux16_module-linux.Tpo loader/i386/pc/$(DEPDIR)/linux16_module-linux.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='loader/i386/pc/linux.c' object='loader/i386/pc/linux16_module-linux.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(linux16_module_CPPFLAGS) $(CPPFLAGS) $(linux16_module_CFLAGS) $(CFLAGS) -c -o loader/i386/pc/linux16_module-linux.o `test -f 'loader/i386/pc/linux.c' || echo '$(srcdir)/'`loader/i386/pc/linux.c - -loader/i386/pc/linux16_module-linux.obj: loader/i386/pc/linux.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(linux16_module_CPPFLAGS) $(CPPFLAGS) $(linux16_module_CFLAGS) $(CFLAGS) -MT loader/i386/pc/linux16_module-linux.obj -MD -MP -MF loader/i386/pc/$(DEPDIR)/linux16_module-linux.Tpo -c -o loader/i386/pc/linux16_module-linux.obj `if test -f 'loader/i386/pc/linux.c'; then $(CYGPATH_W) 'loader/i386/pc/linux.c'; else $(CYGPATH_W) '$(srcdir)/loader/i386/pc/linux.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) loader/i386/pc/$(DEPDIR)/linux16_module-linux.Tpo loader/i386/pc/$(DEPDIR)/linux16_module-linux.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='loader/i386/pc/linux.c' object='loader/i386/pc/linux16_module-linux.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(linux16_module_CPPFLAGS) $(CPPFLAGS) $(linux16_module_CFLAGS) $(CFLAGS) -c -o loader/i386/pc/linux16_module-linux.obj `if test -f 'loader/i386/pc/linux.c'; then $(CYGPATH_W) 'loader/i386/pc/linux.c'; else $(CYGPATH_W) '$(srcdir)/loader/i386/pc/linux.c'; fi` - -commands/efi/loadbios_module-loadbios.o: commands/efi/loadbios.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(loadbios_module_CPPFLAGS) $(CPPFLAGS) $(loadbios_module_CFLAGS) $(CFLAGS) -MT commands/efi/loadbios_module-loadbios.o -MD -MP -MF commands/efi/$(DEPDIR)/loadbios_module-loadbios.Tpo -c -o commands/efi/loadbios_module-loadbios.o `test -f 'commands/efi/loadbios.c' || echo '$(srcdir)/'`commands/efi/loadbios.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/efi/$(DEPDIR)/loadbios_module-loadbios.Tpo commands/efi/$(DEPDIR)/loadbios_module-loadbios.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/efi/loadbios.c' object='commands/efi/loadbios_module-loadbios.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(loadbios_module_CPPFLAGS) $(CPPFLAGS) $(loadbios_module_CFLAGS) $(CFLAGS) -c -o commands/efi/loadbios_module-loadbios.o `test -f 'commands/efi/loadbios.c' || echo '$(srcdir)/'`commands/efi/loadbios.c - -commands/efi/loadbios_module-loadbios.obj: commands/efi/loadbios.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(loadbios_module_CPPFLAGS) $(CPPFLAGS) $(loadbios_module_CFLAGS) $(CFLAGS) -MT commands/efi/loadbios_module-loadbios.obj -MD -MP -MF commands/efi/$(DEPDIR)/loadbios_module-loadbios.Tpo -c -o commands/efi/loadbios_module-loadbios.obj `if test -f 'commands/efi/loadbios.c'; then $(CYGPATH_W) 'commands/efi/loadbios.c'; else $(CYGPATH_W) '$(srcdir)/commands/efi/loadbios.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/efi/$(DEPDIR)/loadbios_module-loadbios.Tpo commands/efi/$(DEPDIR)/loadbios_module-loadbios.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/efi/loadbios.c' object='commands/efi/loadbios_module-loadbios.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(loadbios_module_CPPFLAGS) $(CPPFLAGS) $(loadbios_module_CFLAGS) $(CFLAGS) -c -o commands/efi/loadbios_module-loadbios.obj `if test -f 'commands/efi/loadbios.c'; then $(CYGPATH_W) 'commands/efi/loadbios.c'; else $(CYGPATH_W) '$(srcdir)/commands/efi/loadbios.c'; fi` - -commands/loadenv_module-loadenv.o: commands/loadenv.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(loadenv_module_CPPFLAGS) $(CPPFLAGS) $(loadenv_module_CFLAGS) $(CFLAGS) -MT commands/loadenv_module-loadenv.o -MD -MP -MF commands/$(DEPDIR)/loadenv_module-loadenv.Tpo -c -o commands/loadenv_module-loadenv.o `test -f 'commands/loadenv.c' || echo '$(srcdir)/'`commands/loadenv.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/$(DEPDIR)/loadenv_module-loadenv.Tpo commands/$(DEPDIR)/loadenv_module-loadenv.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/loadenv.c' object='commands/loadenv_module-loadenv.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(loadenv_module_CPPFLAGS) $(CPPFLAGS) $(loadenv_module_CFLAGS) $(CFLAGS) -c -o commands/loadenv_module-loadenv.o `test -f 'commands/loadenv.c' || echo '$(srcdir)/'`commands/loadenv.c - -commands/loadenv_module-loadenv.obj: commands/loadenv.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(loadenv_module_CPPFLAGS) $(CPPFLAGS) $(loadenv_module_CFLAGS) $(CFLAGS) -MT commands/loadenv_module-loadenv.obj -MD -MP -MF commands/$(DEPDIR)/loadenv_module-loadenv.Tpo -c -o commands/loadenv_module-loadenv.obj `if test -f 'commands/loadenv.c'; then $(CYGPATH_W) 'commands/loadenv.c'; else $(CYGPATH_W) '$(srcdir)/commands/loadenv.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/$(DEPDIR)/loadenv_module-loadenv.Tpo commands/$(DEPDIR)/loadenv_module-loadenv.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/loadenv.c' object='commands/loadenv_module-loadenv.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(loadenv_module_CPPFLAGS) $(CPPFLAGS) $(loadenv_module_CFLAGS) $(CFLAGS) -c -o commands/loadenv_module-loadenv.obj `if test -f 'commands/loadenv.c'; then $(CYGPATH_W) 'commands/loadenv.c'; else $(CYGPATH_W) '$(srcdir)/commands/loadenv.c'; fi` - -lib/loadenv_module-envblk.o: lib/envblk.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(loadenv_module_CPPFLAGS) $(CPPFLAGS) $(loadenv_module_CFLAGS) $(CFLAGS) -MT lib/loadenv_module-envblk.o -MD -MP -MF lib/$(DEPDIR)/loadenv_module-envblk.Tpo -c -o lib/loadenv_module-envblk.o `test -f 'lib/envblk.c' || echo '$(srcdir)/'`lib/envblk.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/$(DEPDIR)/loadenv_module-envblk.Tpo lib/$(DEPDIR)/loadenv_module-envblk.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/envblk.c' object='lib/loadenv_module-envblk.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(loadenv_module_CPPFLAGS) $(CPPFLAGS) $(loadenv_module_CFLAGS) $(CFLAGS) -c -o lib/loadenv_module-envblk.o `test -f 'lib/envblk.c' || echo '$(srcdir)/'`lib/envblk.c - -lib/loadenv_module-envblk.obj: lib/envblk.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(loadenv_module_CPPFLAGS) $(CPPFLAGS) $(loadenv_module_CFLAGS) $(CFLAGS) -MT lib/loadenv_module-envblk.obj -MD -MP -MF lib/$(DEPDIR)/loadenv_module-envblk.Tpo -c -o lib/loadenv_module-envblk.obj `if test -f 'lib/envblk.c'; then $(CYGPATH_W) 'lib/envblk.c'; else $(CYGPATH_W) '$(srcdir)/lib/envblk.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/$(DEPDIR)/loadenv_module-envblk.Tpo lib/$(DEPDIR)/loadenv_module-envblk.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/envblk.c' object='lib/loadenv_module-envblk.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(loadenv_module_CPPFLAGS) $(CPPFLAGS) $(loadenv_module_CFLAGS) $(CFLAGS) -c -o lib/loadenv_module-envblk.obj `if test -f 'lib/envblk.c'; then $(CYGPATH_W) 'lib/envblk.c'; else $(CYGPATH_W) '$(srcdir)/lib/envblk.c'; fi` - -disk/loopback_module-loopback.o: disk/loopback.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(loopback_module_CPPFLAGS) $(CPPFLAGS) $(loopback_module_CFLAGS) $(CFLAGS) -MT disk/loopback_module-loopback.o -MD -MP -MF disk/$(DEPDIR)/loopback_module-loopback.Tpo -c -o disk/loopback_module-loopback.o `test -f 'disk/loopback.c' || echo '$(srcdir)/'`disk/loopback.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) disk/$(DEPDIR)/loopback_module-loopback.Tpo disk/$(DEPDIR)/loopback_module-loopback.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='disk/loopback.c' object='disk/loopback_module-loopback.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(loopback_module_CPPFLAGS) $(CPPFLAGS) $(loopback_module_CFLAGS) $(CFLAGS) -c -o disk/loopback_module-loopback.o `test -f 'disk/loopback.c' || echo '$(srcdir)/'`disk/loopback.c - -disk/loopback_module-loopback.obj: disk/loopback.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(loopback_module_CPPFLAGS) $(CPPFLAGS) $(loopback_module_CFLAGS) $(CFLAGS) -MT disk/loopback_module-loopback.obj -MD -MP -MF disk/$(DEPDIR)/loopback_module-loopback.Tpo -c -o disk/loopback_module-loopback.obj `if test -f 'disk/loopback.c'; then $(CYGPATH_W) 'disk/loopback.c'; else $(CYGPATH_W) '$(srcdir)/disk/loopback.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) disk/$(DEPDIR)/loopback_module-loopback.Tpo disk/$(DEPDIR)/loopback_module-loopback.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='disk/loopback.c' object='disk/loopback_module-loopback.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(loopback_module_CPPFLAGS) $(CPPFLAGS) $(loopback_module_CFLAGS) $(CFLAGS) -c -o disk/loopback_module-loopback.obj `if test -f 'disk/loopback.c'; then $(CYGPATH_W) 'disk/loopback.c'; else $(CYGPATH_W) '$(srcdir)/disk/loopback.c'; fi` - -commands/ls_module-ls.o: commands/ls.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ls_module_CPPFLAGS) $(CPPFLAGS) $(ls_module_CFLAGS) $(CFLAGS) -MT commands/ls_module-ls.o -MD -MP -MF commands/$(DEPDIR)/ls_module-ls.Tpo -c -o commands/ls_module-ls.o `test -f 'commands/ls.c' || echo '$(srcdir)/'`commands/ls.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/$(DEPDIR)/ls_module-ls.Tpo commands/$(DEPDIR)/ls_module-ls.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/ls.c' object='commands/ls_module-ls.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ls_module_CPPFLAGS) $(CPPFLAGS) $(ls_module_CFLAGS) $(CFLAGS) -c -o commands/ls_module-ls.o `test -f 'commands/ls.c' || echo '$(srcdir)/'`commands/ls.c - -commands/ls_module-ls.obj: commands/ls.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ls_module_CPPFLAGS) $(CPPFLAGS) $(ls_module_CFLAGS) $(CFLAGS) -MT commands/ls_module-ls.obj -MD -MP -MF commands/$(DEPDIR)/ls_module-ls.Tpo -c -o commands/ls_module-ls.obj `if test -f 'commands/ls.c'; then $(CYGPATH_W) 'commands/ls.c'; else $(CYGPATH_W) '$(srcdir)/commands/ls.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/$(DEPDIR)/ls_module-ls.Tpo commands/$(DEPDIR)/ls_module-ls.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/ls.c' object='commands/ls_module-ls.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ls_module_CPPFLAGS) $(CPPFLAGS) $(ls_module_CFLAGS) $(CFLAGS) -c -o commands/ls_module-ls.obj `if test -f 'commands/ls.c'; then $(CYGPATH_W) 'commands/ls.c'; else $(CYGPATH_W) '$(srcdir)/commands/ls.c'; fi` - -commands/lsacpi_module-lsacpi.o: commands/lsacpi.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lsacpi_module_CPPFLAGS) $(CPPFLAGS) $(lsacpi_module_CFLAGS) $(CFLAGS) -MT commands/lsacpi_module-lsacpi.o -MD -MP -MF commands/$(DEPDIR)/lsacpi_module-lsacpi.Tpo -c -o commands/lsacpi_module-lsacpi.o `test -f 'commands/lsacpi.c' || echo '$(srcdir)/'`commands/lsacpi.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/$(DEPDIR)/lsacpi_module-lsacpi.Tpo commands/$(DEPDIR)/lsacpi_module-lsacpi.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/lsacpi.c' object='commands/lsacpi_module-lsacpi.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lsacpi_module_CPPFLAGS) $(CPPFLAGS) $(lsacpi_module_CFLAGS) $(CFLAGS) -c -o commands/lsacpi_module-lsacpi.o `test -f 'commands/lsacpi.c' || echo '$(srcdir)/'`commands/lsacpi.c - -commands/lsacpi_module-lsacpi.obj: commands/lsacpi.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lsacpi_module_CPPFLAGS) $(CPPFLAGS) $(lsacpi_module_CFLAGS) $(CFLAGS) -MT commands/lsacpi_module-lsacpi.obj -MD -MP -MF commands/$(DEPDIR)/lsacpi_module-lsacpi.Tpo -c -o commands/lsacpi_module-lsacpi.obj `if test -f 'commands/lsacpi.c'; then $(CYGPATH_W) 'commands/lsacpi.c'; else $(CYGPATH_W) '$(srcdir)/commands/lsacpi.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/$(DEPDIR)/lsacpi_module-lsacpi.Tpo commands/$(DEPDIR)/lsacpi_module-lsacpi.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/lsacpi.c' object='commands/lsacpi_module-lsacpi.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lsacpi_module_CPPFLAGS) $(CPPFLAGS) $(lsacpi_module_CFLAGS) $(CFLAGS) -c -o commands/lsacpi_module-lsacpi.obj `if test -f 'commands/lsacpi.c'; then $(CYGPATH_W) 'commands/lsacpi.c'; else $(CYGPATH_W) '$(srcdir)/commands/lsacpi.c'; fi` - -commands/i386/pc/lsapm_module-lsapm.o: commands/i386/pc/lsapm.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lsapm_module_CPPFLAGS) $(CPPFLAGS) $(lsapm_module_CFLAGS) $(CFLAGS) -MT commands/i386/pc/lsapm_module-lsapm.o -MD -MP -MF commands/i386/pc/$(DEPDIR)/lsapm_module-lsapm.Tpo -c -o commands/i386/pc/lsapm_module-lsapm.o `test -f 'commands/i386/pc/lsapm.c' || echo '$(srcdir)/'`commands/i386/pc/lsapm.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/i386/pc/$(DEPDIR)/lsapm_module-lsapm.Tpo commands/i386/pc/$(DEPDIR)/lsapm_module-lsapm.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/i386/pc/lsapm.c' object='commands/i386/pc/lsapm_module-lsapm.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lsapm_module_CPPFLAGS) $(CPPFLAGS) $(lsapm_module_CFLAGS) $(CFLAGS) -c -o commands/i386/pc/lsapm_module-lsapm.o `test -f 'commands/i386/pc/lsapm.c' || echo '$(srcdir)/'`commands/i386/pc/lsapm.c - -commands/i386/pc/lsapm_module-lsapm.obj: commands/i386/pc/lsapm.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lsapm_module_CPPFLAGS) $(CPPFLAGS) $(lsapm_module_CFLAGS) $(CFLAGS) -MT commands/i386/pc/lsapm_module-lsapm.obj -MD -MP -MF commands/i386/pc/$(DEPDIR)/lsapm_module-lsapm.Tpo -c -o commands/i386/pc/lsapm_module-lsapm.obj `if test -f 'commands/i386/pc/lsapm.c'; then $(CYGPATH_W) 'commands/i386/pc/lsapm.c'; else $(CYGPATH_W) '$(srcdir)/commands/i386/pc/lsapm.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/i386/pc/$(DEPDIR)/lsapm_module-lsapm.Tpo commands/i386/pc/$(DEPDIR)/lsapm_module-lsapm.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/i386/pc/lsapm.c' object='commands/i386/pc/lsapm_module-lsapm.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lsapm_module_CPPFLAGS) $(CPPFLAGS) $(lsapm_module_CFLAGS) $(CFLAGS) -c -o commands/i386/pc/lsapm_module-lsapm.obj `if test -f 'commands/i386/pc/lsapm.c'; then $(CYGPATH_W) 'commands/i386/pc/lsapm.c'; else $(CYGPATH_W) '$(srcdir)/commands/i386/pc/lsapm.c'; fi` - -commands/arc/lsdev_module-lsdev.o: commands/arc/lsdev.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lsdev_module_CPPFLAGS) $(CPPFLAGS) $(lsdev_module_CFLAGS) $(CFLAGS) -MT commands/arc/lsdev_module-lsdev.o -MD -MP -MF commands/arc/$(DEPDIR)/lsdev_module-lsdev.Tpo -c -o commands/arc/lsdev_module-lsdev.o `test -f 'commands/arc/lsdev.c' || echo '$(srcdir)/'`commands/arc/lsdev.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/arc/$(DEPDIR)/lsdev_module-lsdev.Tpo commands/arc/$(DEPDIR)/lsdev_module-lsdev.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/arc/lsdev.c' object='commands/arc/lsdev_module-lsdev.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lsdev_module_CPPFLAGS) $(CPPFLAGS) $(lsdev_module_CFLAGS) $(CFLAGS) -c -o commands/arc/lsdev_module-lsdev.o `test -f 'commands/arc/lsdev.c' || echo '$(srcdir)/'`commands/arc/lsdev.c - -commands/arc/lsdev_module-lsdev.obj: commands/arc/lsdev.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lsdev_module_CPPFLAGS) $(CPPFLAGS) $(lsdev_module_CFLAGS) $(CFLAGS) -MT commands/arc/lsdev_module-lsdev.obj -MD -MP -MF commands/arc/$(DEPDIR)/lsdev_module-lsdev.Tpo -c -o commands/arc/lsdev_module-lsdev.obj `if test -f 'commands/arc/lsdev.c'; then $(CYGPATH_W) 'commands/arc/lsdev.c'; else $(CYGPATH_W) '$(srcdir)/commands/arc/lsdev.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/arc/$(DEPDIR)/lsdev_module-lsdev.Tpo commands/arc/$(DEPDIR)/lsdev_module-lsdev.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/arc/lsdev.c' object='commands/arc/lsdev_module-lsdev.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lsdev_module_CPPFLAGS) $(CPPFLAGS) $(lsdev_module_CFLAGS) $(CFLAGS) -c -o commands/arc/lsdev_module-lsdev.obj `if test -f 'commands/arc/lsdev.c'; then $(CYGPATH_W) 'commands/arc/lsdev.c'; else $(CYGPATH_W) '$(srcdir)/commands/arc/lsdev.c'; fi` - -commands/efi/lsefi_module-lsefi.o: commands/efi/lsefi.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lsefi_module_CPPFLAGS) $(CPPFLAGS) $(lsefi_module_CFLAGS) $(CFLAGS) -MT commands/efi/lsefi_module-lsefi.o -MD -MP -MF commands/efi/$(DEPDIR)/lsefi_module-lsefi.Tpo -c -o commands/efi/lsefi_module-lsefi.o `test -f 'commands/efi/lsefi.c' || echo '$(srcdir)/'`commands/efi/lsefi.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/efi/$(DEPDIR)/lsefi_module-lsefi.Tpo commands/efi/$(DEPDIR)/lsefi_module-lsefi.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/efi/lsefi.c' object='commands/efi/lsefi_module-lsefi.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lsefi_module_CPPFLAGS) $(CPPFLAGS) $(lsefi_module_CFLAGS) $(CFLAGS) -c -o commands/efi/lsefi_module-lsefi.o `test -f 'commands/efi/lsefi.c' || echo '$(srcdir)/'`commands/efi/lsefi.c - -commands/efi/lsefi_module-lsefi.obj: commands/efi/lsefi.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lsefi_module_CPPFLAGS) $(CPPFLAGS) $(lsefi_module_CFLAGS) $(CFLAGS) -MT commands/efi/lsefi_module-lsefi.obj -MD -MP -MF commands/efi/$(DEPDIR)/lsefi_module-lsefi.Tpo -c -o commands/efi/lsefi_module-lsefi.obj `if test -f 'commands/efi/lsefi.c'; then $(CYGPATH_W) 'commands/efi/lsefi.c'; else $(CYGPATH_W) '$(srcdir)/commands/efi/lsefi.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/efi/$(DEPDIR)/lsefi_module-lsefi.Tpo commands/efi/$(DEPDIR)/lsefi_module-lsefi.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/efi/lsefi.c' object='commands/efi/lsefi_module-lsefi.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lsefi_module_CPPFLAGS) $(CPPFLAGS) $(lsefi_module_CFLAGS) $(CFLAGS) -c -o commands/efi/lsefi_module-lsefi.obj `if test -f 'commands/efi/lsefi.c'; then $(CYGPATH_W) 'commands/efi/lsefi.c'; else $(CYGPATH_W) '$(srcdir)/commands/efi/lsefi.c'; fi` - -commands/efi/lsefimmap_module-lsefimmap.o: commands/efi/lsefimmap.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lsefimmap_module_CPPFLAGS) $(CPPFLAGS) $(lsefimmap_module_CFLAGS) $(CFLAGS) -MT commands/efi/lsefimmap_module-lsefimmap.o -MD -MP -MF commands/efi/$(DEPDIR)/lsefimmap_module-lsefimmap.Tpo -c -o commands/efi/lsefimmap_module-lsefimmap.o `test -f 'commands/efi/lsefimmap.c' || echo '$(srcdir)/'`commands/efi/lsefimmap.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/efi/$(DEPDIR)/lsefimmap_module-lsefimmap.Tpo commands/efi/$(DEPDIR)/lsefimmap_module-lsefimmap.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/efi/lsefimmap.c' object='commands/efi/lsefimmap_module-lsefimmap.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lsefimmap_module_CPPFLAGS) $(CPPFLAGS) $(lsefimmap_module_CFLAGS) $(CFLAGS) -c -o commands/efi/lsefimmap_module-lsefimmap.o `test -f 'commands/efi/lsefimmap.c' || echo '$(srcdir)/'`commands/efi/lsefimmap.c - -commands/efi/lsefimmap_module-lsefimmap.obj: commands/efi/lsefimmap.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lsefimmap_module_CPPFLAGS) $(CPPFLAGS) $(lsefimmap_module_CFLAGS) $(CFLAGS) -MT commands/efi/lsefimmap_module-lsefimmap.obj -MD -MP -MF commands/efi/$(DEPDIR)/lsefimmap_module-lsefimmap.Tpo -c -o commands/efi/lsefimmap_module-lsefimmap.obj `if test -f 'commands/efi/lsefimmap.c'; then $(CYGPATH_W) 'commands/efi/lsefimmap.c'; else $(CYGPATH_W) '$(srcdir)/commands/efi/lsefimmap.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/efi/$(DEPDIR)/lsefimmap_module-lsefimmap.Tpo commands/efi/$(DEPDIR)/lsefimmap_module-lsefimmap.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/efi/lsefimmap.c' object='commands/efi/lsefimmap_module-lsefimmap.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lsefimmap_module_CPPFLAGS) $(CPPFLAGS) $(lsefimmap_module_CFLAGS) $(CFLAGS) -c -o commands/efi/lsefimmap_module-lsefimmap.obj `if test -f 'commands/efi/lsefimmap.c'; then $(CYGPATH_W) 'commands/efi/lsefimmap.c'; else $(CYGPATH_W) '$(srcdir)/commands/efi/lsefimmap.c'; fi` - -commands/efi/lsefisystab_module-lsefisystab.o: commands/efi/lsefisystab.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lsefisystab_module_CPPFLAGS) $(CPPFLAGS) $(lsefisystab_module_CFLAGS) $(CFLAGS) -MT commands/efi/lsefisystab_module-lsefisystab.o -MD -MP -MF commands/efi/$(DEPDIR)/lsefisystab_module-lsefisystab.Tpo -c -o commands/efi/lsefisystab_module-lsefisystab.o `test -f 'commands/efi/lsefisystab.c' || echo '$(srcdir)/'`commands/efi/lsefisystab.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/efi/$(DEPDIR)/lsefisystab_module-lsefisystab.Tpo commands/efi/$(DEPDIR)/lsefisystab_module-lsefisystab.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/efi/lsefisystab.c' object='commands/efi/lsefisystab_module-lsefisystab.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lsefisystab_module_CPPFLAGS) $(CPPFLAGS) $(lsefisystab_module_CFLAGS) $(CFLAGS) -c -o commands/efi/lsefisystab_module-lsefisystab.o `test -f 'commands/efi/lsefisystab.c' || echo '$(srcdir)/'`commands/efi/lsefisystab.c - -commands/efi/lsefisystab_module-lsefisystab.obj: commands/efi/lsefisystab.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lsefisystab_module_CPPFLAGS) $(CPPFLAGS) $(lsefisystab_module_CFLAGS) $(CFLAGS) -MT commands/efi/lsefisystab_module-lsefisystab.obj -MD -MP -MF commands/efi/$(DEPDIR)/lsefisystab_module-lsefisystab.Tpo -c -o commands/efi/lsefisystab_module-lsefisystab.obj `if test -f 'commands/efi/lsefisystab.c'; then $(CYGPATH_W) 'commands/efi/lsefisystab.c'; else $(CYGPATH_W) '$(srcdir)/commands/efi/lsefisystab.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/efi/$(DEPDIR)/lsefisystab_module-lsefisystab.Tpo commands/efi/$(DEPDIR)/lsefisystab_module-lsefisystab.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/efi/lsefisystab.c' object='commands/efi/lsefisystab_module-lsefisystab.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lsefisystab_module_CPPFLAGS) $(CPPFLAGS) $(lsefisystab_module_CFLAGS) $(CFLAGS) -c -o commands/efi/lsefisystab_module-lsefisystab.obj `if test -f 'commands/efi/lsefisystab.c'; then $(CYGPATH_W) 'commands/efi/lsefisystab.c'; else $(CYGPATH_W) '$(srcdir)/commands/efi/lsefisystab.c'; fi` - -commands/lsmmap_module-lsmmap.o: commands/lsmmap.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lsmmap_module_CPPFLAGS) $(CPPFLAGS) $(lsmmap_module_CFLAGS) $(CFLAGS) -MT commands/lsmmap_module-lsmmap.o -MD -MP -MF commands/$(DEPDIR)/lsmmap_module-lsmmap.Tpo -c -o commands/lsmmap_module-lsmmap.o `test -f 'commands/lsmmap.c' || echo '$(srcdir)/'`commands/lsmmap.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/$(DEPDIR)/lsmmap_module-lsmmap.Tpo commands/$(DEPDIR)/lsmmap_module-lsmmap.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/lsmmap.c' object='commands/lsmmap_module-lsmmap.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lsmmap_module_CPPFLAGS) $(CPPFLAGS) $(lsmmap_module_CFLAGS) $(CFLAGS) -c -o commands/lsmmap_module-lsmmap.o `test -f 'commands/lsmmap.c' || echo '$(srcdir)/'`commands/lsmmap.c - -commands/lsmmap_module-lsmmap.obj: commands/lsmmap.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lsmmap_module_CPPFLAGS) $(CPPFLAGS) $(lsmmap_module_CFLAGS) $(CFLAGS) -MT commands/lsmmap_module-lsmmap.obj -MD -MP -MF commands/$(DEPDIR)/lsmmap_module-lsmmap.Tpo -c -o commands/lsmmap_module-lsmmap.obj `if test -f 'commands/lsmmap.c'; then $(CYGPATH_W) 'commands/lsmmap.c'; else $(CYGPATH_W) '$(srcdir)/commands/lsmmap.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/$(DEPDIR)/lsmmap_module-lsmmap.Tpo commands/$(DEPDIR)/lsmmap_module-lsmmap.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/lsmmap.c' object='commands/lsmmap_module-lsmmap.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lsmmap_module_CPPFLAGS) $(CPPFLAGS) $(lsmmap_module_CFLAGS) $(CFLAGS) -c -o commands/lsmmap_module-lsmmap.obj `if test -f 'commands/lsmmap.c'; then $(CYGPATH_W) 'commands/lsmmap.c'; else $(CYGPATH_W) '$(srcdir)/commands/lsmmap.c'; fi` - -commands/lspci_module-lspci.o: commands/lspci.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lspci_module_CPPFLAGS) $(CPPFLAGS) $(lspci_module_CFLAGS) $(CFLAGS) -MT commands/lspci_module-lspci.o -MD -MP -MF commands/$(DEPDIR)/lspci_module-lspci.Tpo -c -o commands/lspci_module-lspci.o `test -f 'commands/lspci.c' || echo '$(srcdir)/'`commands/lspci.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/$(DEPDIR)/lspci_module-lspci.Tpo commands/$(DEPDIR)/lspci_module-lspci.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/lspci.c' object='commands/lspci_module-lspci.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lspci_module_CPPFLAGS) $(CPPFLAGS) $(lspci_module_CFLAGS) $(CFLAGS) -c -o commands/lspci_module-lspci.o `test -f 'commands/lspci.c' || echo '$(srcdir)/'`commands/lspci.c - -commands/lspci_module-lspci.obj: commands/lspci.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lspci_module_CPPFLAGS) $(CPPFLAGS) $(lspci_module_CFLAGS) $(CFLAGS) -MT commands/lspci_module-lspci.obj -MD -MP -MF commands/$(DEPDIR)/lspci_module-lspci.Tpo -c -o commands/lspci_module-lspci.obj `if test -f 'commands/lspci.c'; then $(CYGPATH_W) 'commands/lspci.c'; else $(CYGPATH_W) '$(srcdir)/commands/lspci.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/$(DEPDIR)/lspci_module-lspci.Tpo commands/$(DEPDIR)/lspci_module-lspci.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/lspci.c' object='commands/lspci_module-lspci.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lspci_module_CPPFLAGS) $(CPPFLAGS) $(lspci_module_CFLAGS) $(CFLAGS) -c -o commands/lspci_module-lspci.obj `if test -f 'commands/lspci.c'; then $(CYGPATH_W) 'commands/lspci.c'; else $(CYGPATH_W) '$(srcdir)/commands/lspci.c'; fi` - -commands/efi/lssal_module-lssal.o: commands/efi/lssal.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lssal_module_CPPFLAGS) $(CPPFLAGS) $(lssal_module_CFLAGS) $(CFLAGS) -MT commands/efi/lssal_module-lssal.o -MD -MP -MF commands/efi/$(DEPDIR)/lssal_module-lssal.Tpo -c -o commands/efi/lssal_module-lssal.o `test -f 'commands/efi/lssal.c' || echo '$(srcdir)/'`commands/efi/lssal.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/efi/$(DEPDIR)/lssal_module-lssal.Tpo commands/efi/$(DEPDIR)/lssal_module-lssal.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/efi/lssal.c' object='commands/efi/lssal_module-lssal.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lssal_module_CPPFLAGS) $(CPPFLAGS) $(lssal_module_CFLAGS) $(CFLAGS) -c -o commands/efi/lssal_module-lssal.o `test -f 'commands/efi/lssal.c' || echo '$(srcdir)/'`commands/efi/lssal.c - -commands/efi/lssal_module-lssal.obj: commands/efi/lssal.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lssal_module_CPPFLAGS) $(CPPFLAGS) $(lssal_module_CFLAGS) $(CFLAGS) -MT commands/efi/lssal_module-lssal.obj -MD -MP -MF commands/efi/$(DEPDIR)/lssal_module-lssal.Tpo -c -o commands/efi/lssal_module-lssal.obj `if test -f 'commands/efi/lssal.c'; then $(CYGPATH_W) 'commands/efi/lssal.c'; else $(CYGPATH_W) '$(srcdir)/commands/efi/lssal.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/efi/$(DEPDIR)/lssal_module-lssal.Tpo commands/efi/$(DEPDIR)/lssal_module-lssal.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/efi/lssal.c' object='commands/efi/lssal_module-lssal.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lssal_module_CPPFLAGS) $(CPPFLAGS) $(lssal_module_CFLAGS) $(CFLAGS) -c -o commands/efi/lssal_module-lssal.obj `if test -f 'commands/efi/lssal.c'; then $(CYGPATH_W) 'commands/efi/lssal.c'; else $(CYGPATH_W) '$(srcdir)/commands/efi/lssal.c'; fi` - -commands/mips/loongson/lsspd_module-lsspd.o: commands/mips/loongson/lsspd.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lsspd_module_CPPFLAGS) $(CPPFLAGS) $(lsspd_module_CFLAGS) $(CFLAGS) -MT commands/mips/loongson/lsspd_module-lsspd.o -MD -MP -MF commands/mips/loongson/$(DEPDIR)/lsspd_module-lsspd.Tpo -c -o commands/mips/loongson/lsspd_module-lsspd.o `test -f 'commands/mips/loongson/lsspd.c' || echo '$(srcdir)/'`commands/mips/loongson/lsspd.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/mips/loongson/$(DEPDIR)/lsspd_module-lsspd.Tpo commands/mips/loongson/$(DEPDIR)/lsspd_module-lsspd.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/mips/loongson/lsspd.c' object='commands/mips/loongson/lsspd_module-lsspd.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lsspd_module_CPPFLAGS) $(CPPFLAGS) $(lsspd_module_CFLAGS) $(CFLAGS) -c -o commands/mips/loongson/lsspd_module-lsspd.o `test -f 'commands/mips/loongson/lsspd.c' || echo '$(srcdir)/'`commands/mips/loongson/lsspd.c - -commands/mips/loongson/lsspd_module-lsspd.obj: commands/mips/loongson/lsspd.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lsspd_module_CPPFLAGS) $(CPPFLAGS) $(lsspd_module_CFLAGS) $(CFLAGS) -MT commands/mips/loongson/lsspd_module-lsspd.obj -MD -MP -MF commands/mips/loongson/$(DEPDIR)/lsspd_module-lsspd.Tpo -c -o commands/mips/loongson/lsspd_module-lsspd.obj `if test -f 'commands/mips/loongson/lsspd.c'; then $(CYGPATH_W) 'commands/mips/loongson/lsspd.c'; else $(CYGPATH_W) '$(srcdir)/commands/mips/loongson/lsspd.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/mips/loongson/$(DEPDIR)/lsspd_module-lsspd.Tpo commands/mips/loongson/$(DEPDIR)/lsspd_module-lsspd.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/mips/loongson/lsspd.c' object='commands/mips/loongson/lsspd_module-lsspd.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lsspd_module_CPPFLAGS) $(CPPFLAGS) $(lsspd_module_CFLAGS) $(CFLAGS) -c -o commands/mips/loongson/lsspd_module-lsspd.obj `if test -f 'commands/mips/loongson/lsspd.c'; then $(CYGPATH_W) 'commands/mips/loongson/lsspd.c'; else $(CYGPATH_W) '$(srcdir)/commands/mips/loongson/lsspd.c'; fi` - -commands/xen/lsxen_module-lsxen.o: commands/xen/lsxen.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lsxen_module_CPPFLAGS) $(CPPFLAGS) $(lsxen_module_CFLAGS) $(CFLAGS) -MT commands/xen/lsxen_module-lsxen.o -MD -MP -MF commands/xen/$(DEPDIR)/lsxen_module-lsxen.Tpo -c -o commands/xen/lsxen_module-lsxen.o `test -f 'commands/xen/lsxen.c' || echo '$(srcdir)/'`commands/xen/lsxen.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/xen/$(DEPDIR)/lsxen_module-lsxen.Tpo commands/xen/$(DEPDIR)/lsxen_module-lsxen.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/xen/lsxen.c' object='commands/xen/lsxen_module-lsxen.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lsxen_module_CPPFLAGS) $(CPPFLAGS) $(lsxen_module_CFLAGS) $(CFLAGS) -c -o commands/xen/lsxen_module-lsxen.o `test -f 'commands/xen/lsxen.c' || echo '$(srcdir)/'`commands/xen/lsxen.c - -commands/xen/lsxen_module-lsxen.obj: commands/xen/lsxen.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lsxen_module_CPPFLAGS) $(CPPFLAGS) $(lsxen_module_CFLAGS) $(CFLAGS) -MT commands/xen/lsxen_module-lsxen.obj -MD -MP -MF commands/xen/$(DEPDIR)/lsxen_module-lsxen.Tpo -c -o commands/xen/lsxen_module-lsxen.obj `if test -f 'commands/xen/lsxen.c'; then $(CYGPATH_W) 'commands/xen/lsxen.c'; else $(CYGPATH_W) '$(srcdir)/commands/xen/lsxen.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/xen/$(DEPDIR)/lsxen_module-lsxen.Tpo commands/xen/$(DEPDIR)/lsxen_module-lsxen.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/xen/lsxen.c' object='commands/xen/lsxen_module-lsxen.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lsxen_module_CPPFLAGS) $(CPPFLAGS) $(lsxen_module_CFLAGS) $(CFLAGS) -c -o commands/xen/lsxen_module-lsxen.obj `if test -f 'commands/xen/lsxen.c'; then $(CYGPATH_W) 'commands/xen/lsxen.c'; else $(CYGPATH_W) '$(srcdir)/commands/xen/lsxen.c'; fi` - -disk/luks_module-luks.o: disk/luks.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(luks_module_CPPFLAGS) $(CPPFLAGS) $(luks_module_CFLAGS) $(CFLAGS) -MT disk/luks_module-luks.o -MD -MP -MF disk/$(DEPDIR)/luks_module-luks.Tpo -c -o disk/luks_module-luks.o `test -f 'disk/luks.c' || echo '$(srcdir)/'`disk/luks.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) disk/$(DEPDIR)/luks_module-luks.Tpo disk/$(DEPDIR)/luks_module-luks.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='disk/luks.c' object='disk/luks_module-luks.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(luks_module_CPPFLAGS) $(CPPFLAGS) $(luks_module_CFLAGS) $(CFLAGS) -c -o disk/luks_module-luks.o `test -f 'disk/luks.c' || echo '$(srcdir)/'`disk/luks.c - -disk/luks_module-luks.obj: disk/luks.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(luks_module_CPPFLAGS) $(CPPFLAGS) $(luks_module_CFLAGS) $(CFLAGS) -MT disk/luks_module-luks.obj -MD -MP -MF disk/$(DEPDIR)/luks_module-luks.Tpo -c -o disk/luks_module-luks.obj `if test -f 'disk/luks.c'; then $(CYGPATH_W) 'disk/luks.c'; else $(CYGPATH_W) '$(srcdir)/disk/luks.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) disk/$(DEPDIR)/luks_module-luks.Tpo disk/$(DEPDIR)/luks_module-luks.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='disk/luks.c' object='disk/luks_module-luks.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(luks_module_CPPFLAGS) $(CPPFLAGS) $(luks_module_CFLAGS) $(CFLAGS) -c -o disk/luks_module-luks.obj `if test -f 'disk/luks.c'; then $(CYGPATH_W) 'disk/luks.c'; else $(CYGPATH_W) '$(srcdir)/disk/luks.c'; fi` - -disk/luks_module-AFSplitter.o: disk/AFSplitter.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(luks_module_CPPFLAGS) $(CPPFLAGS) $(luks_module_CFLAGS) $(CFLAGS) -MT disk/luks_module-AFSplitter.o -MD -MP -MF disk/$(DEPDIR)/luks_module-AFSplitter.Tpo -c -o disk/luks_module-AFSplitter.o `test -f 'disk/AFSplitter.c' || echo '$(srcdir)/'`disk/AFSplitter.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) disk/$(DEPDIR)/luks_module-AFSplitter.Tpo disk/$(DEPDIR)/luks_module-AFSplitter.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='disk/AFSplitter.c' object='disk/luks_module-AFSplitter.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(luks_module_CPPFLAGS) $(CPPFLAGS) $(luks_module_CFLAGS) $(CFLAGS) -c -o disk/luks_module-AFSplitter.o `test -f 'disk/AFSplitter.c' || echo '$(srcdir)/'`disk/AFSplitter.c - -disk/luks_module-AFSplitter.obj: disk/AFSplitter.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(luks_module_CPPFLAGS) $(CPPFLAGS) $(luks_module_CFLAGS) $(CFLAGS) -MT disk/luks_module-AFSplitter.obj -MD -MP -MF disk/$(DEPDIR)/luks_module-AFSplitter.Tpo -c -o disk/luks_module-AFSplitter.obj `if test -f 'disk/AFSplitter.c'; then $(CYGPATH_W) 'disk/AFSplitter.c'; else $(CYGPATH_W) '$(srcdir)/disk/AFSplitter.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) disk/$(DEPDIR)/luks_module-AFSplitter.Tpo disk/$(DEPDIR)/luks_module-AFSplitter.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='disk/AFSplitter.c' object='disk/luks_module-AFSplitter.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(luks_module_CPPFLAGS) $(CPPFLAGS) $(luks_module_CFLAGS) $(CFLAGS) -c -o disk/luks_module-AFSplitter.obj `if test -f 'disk/AFSplitter.c'; then $(CYGPATH_W) 'disk/AFSplitter.c'; else $(CYGPATH_W) '$(srcdir)/disk/AFSplitter.c'; fi` - -disk/lvm_module-lvm.o: disk/lvm.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lvm_module_CPPFLAGS) $(CPPFLAGS) $(lvm_module_CFLAGS) $(CFLAGS) -MT disk/lvm_module-lvm.o -MD -MP -MF disk/$(DEPDIR)/lvm_module-lvm.Tpo -c -o disk/lvm_module-lvm.o `test -f 'disk/lvm.c' || echo '$(srcdir)/'`disk/lvm.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) disk/$(DEPDIR)/lvm_module-lvm.Tpo disk/$(DEPDIR)/lvm_module-lvm.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='disk/lvm.c' object='disk/lvm_module-lvm.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lvm_module_CPPFLAGS) $(CPPFLAGS) $(lvm_module_CFLAGS) $(CFLAGS) -c -o disk/lvm_module-lvm.o `test -f 'disk/lvm.c' || echo '$(srcdir)/'`disk/lvm.c - -disk/lvm_module-lvm.obj: disk/lvm.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lvm_module_CPPFLAGS) $(CPPFLAGS) $(lvm_module_CFLAGS) $(CFLAGS) -MT disk/lvm_module-lvm.obj -MD -MP -MF disk/$(DEPDIR)/lvm_module-lvm.Tpo -c -o disk/lvm_module-lvm.obj `if test -f 'disk/lvm.c'; then $(CYGPATH_W) 'disk/lvm.c'; else $(CYGPATH_W) '$(srcdir)/disk/lvm.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) disk/$(DEPDIR)/lvm_module-lvm.Tpo disk/$(DEPDIR)/lvm_module-lvm.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='disk/lvm.c' object='disk/lvm_module-lvm.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lvm_module_CPPFLAGS) $(CPPFLAGS) $(lvm_module_CFLAGS) $(CFLAGS) -c -o disk/lvm_module-lvm.obj `if test -f 'disk/lvm.c'; then $(CYGPATH_W) 'disk/lvm.c'; else $(CYGPATH_W) '$(srcdir)/disk/lvm.c'; fi` - -io/lzopio_module-lzopio.o: io/lzopio.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lzopio_module_CPPFLAGS) $(CPPFLAGS) $(lzopio_module_CFLAGS) $(CFLAGS) -MT io/lzopio_module-lzopio.o -MD -MP -MF io/$(DEPDIR)/lzopio_module-lzopio.Tpo -c -o io/lzopio_module-lzopio.o `test -f 'io/lzopio.c' || echo '$(srcdir)/'`io/lzopio.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) io/$(DEPDIR)/lzopio_module-lzopio.Tpo io/$(DEPDIR)/lzopio_module-lzopio.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='io/lzopio.c' object='io/lzopio_module-lzopio.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lzopio_module_CPPFLAGS) $(CPPFLAGS) $(lzopio_module_CFLAGS) $(CFLAGS) -c -o io/lzopio_module-lzopio.o `test -f 'io/lzopio.c' || echo '$(srcdir)/'`io/lzopio.c - -io/lzopio_module-lzopio.obj: io/lzopio.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lzopio_module_CPPFLAGS) $(CPPFLAGS) $(lzopio_module_CFLAGS) $(CFLAGS) -MT io/lzopio_module-lzopio.obj -MD -MP -MF io/$(DEPDIR)/lzopio_module-lzopio.Tpo -c -o io/lzopio_module-lzopio.obj `if test -f 'io/lzopio.c'; then $(CYGPATH_W) 'io/lzopio.c'; else $(CYGPATH_W) '$(srcdir)/io/lzopio.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) io/$(DEPDIR)/lzopio_module-lzopio.Tpo io/$(DEPDIR)/lzopio_module-lzopio.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='io/lzopio.c' object='io/lzopio_module-lzopio.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lzopio_module_CPPFLAGS) $(CPPFLAGS) $(lzopio_module_CFLAGS) $(CFLAGS) -c -o io/lzopio_module-lzopio.obj `if test -f 'io/lzopio.c'; then $(CYGPATH_W) 'io/lzopio.c'; else $(CYGPATH_W) '$(srcdir)/io/lzopio.c'; fi` - -lib/minilzo/lzopio_module-minilzo.o: lib/minilzo/minilzo.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lzopio_module_CPPFLAGS) $(CPPFLAGS) $(lzopio_module_CFLAGS) $(CFLAGS) -MT lib/minilzo/lzopio_module-minilzo.o -MD -MP -MF lib/minilzo/$(DEPDIR)/lzopio_module-minilzo.Tpo -c -o lib/minilzo/lzopio_module-minilzo.o `test -f 'lib/minilzo/minilzo.c' || echo '$(srcdir)/'`lib/minilzo/minilzo.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/minilzo/$(DEPDIR)/lzopio_module-minilzo.Tpo lib/minilzo/$(DEPDIR)/lzopio_module-minilzo.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/minilzo/minilzo.c' object='lib/minilzo/lzopio_module-minilzo.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lzopio_module_CPPFLAGS) $(CPPFLAGS) $(lzopio_module_CFLAGS) $(CFLAGS) -c -o lib/minilzo/lzopio_module-minilzo.o `test -f 'lib/minilzo/minilzo.c' || echo '$(srcdir)/'`lib/minilzo/minilzo.c - -lib/minilzo/lzopio_module-minilzo.obj: lib/minilzo/minilzo.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lzopio_module_CPPFLAGS) $(CPPFLAGS) $(lzopio_module_CFLAGS) $(CFLAGS) -MT lib/minilzo/lzopio_module-minilzo.obj -MD -MP -MF lib/minilzo/$(DEPDIR)/lzopio_module-minilzo.Tpo -c -o lib/minilzo/lzopio_module-minilzo.obj `if test -f 'lib/minilzo/minilzo.c'; then $(CYGPATH_W) 'lib/minilzo/minilzo.c'; else $(CYGPATH_W) '$(srcdir)/lib/minilzo/minilzo.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/minilzo/$(DEPDIR)/lzopio_module-minilzo.Tpo lib/minilzo/$(DEPDIR)/lzopio_module-minilzo.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/minilzo/minilzo.c' object='lib/minilzo/lzopio_module-minilzo.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lzopio_module_CPPFLAGS) $(CPPFLAGS) $(lzopio_module_CFLAGS) $(CFLAGS) -c -o lib/minilzo/lzopio_module-minilzo.obj `if test -f 'lib/minilzo/minilzo.c'; then $(CYGPATH_W) 'lib/minilzo/minilzo.c'; else $(CYGPATH_W) '$(srcdir)/lib/minilzo/minilzo.c'; fi` - -commands/macbless_module-macbless.o: commands/macbless.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(macbless_module_CPPFLAGS) $(CPPFLAGS) $(macbless_module_CFLAGS) $(CFLAGS) -MT commands/macbless_module-macbless.o -MD -MP -MF commands/$(DEPDIR)/macbless_module-macbless.Tpo -c -o commands/macbless_module-macbless.o `test -f 'commands/macbless.c' || echo '$(srcdir)/'`commands/macbless.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/$(DEPDIR)/macbless_module-macbless.Tpo commands/$(DEPDIR)/macbless_module-macbless.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/macbless.c' object='commands/macbless_module-macbless.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(macbless_module_CPPFLAGS) $(CPPFLAGS) $(macbless_module_CFLAGS) $(CFLAGS) -c -o commands/macbless_module-macbless.o `test -f 'commands/macbless.c' || echo '$(srcdir)/'`commands/macbless.c - -commands/macbless_module-macbless.obj: commands/macbless.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(macbless_module_CPPFLAGS) $(CPPFLAGS) $(macbless_module_CFLAGS) $(CFLAGS) -MT commands/macbless_module-macbless.obj -MD -MP -MF commands/$(DEPDIR)/macbless_module-macbless.Tpo -c -o commands/macbless_module-macbless.obj `if test -f 'commands/macbless.c'; then $(CYGPATH_W) 'commands/macbless.c'; else $(CYGPATH_W) '$(srcdir)/commands/macbless.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/$(DEPDIR)/macbless_module-macbless.Tpo commands/$(DEPDIR)/macbless_module-macbless.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/macbless.c' object='commands/macbless_module-macbless.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(macbless_module_CPPFLAGS) $(CPPFLAGS) $(macbless_module_CFLAGS) $(CFLAGS) -c -o commands/macbless_module-macbless.obj `if test -f 'commands/macbless.c'; then $(CYGPATH_W) 'commands/macbless.c'; else $(CYGPATH_W) '$(srcdir)/commands/macbless.c'; fi` - -loader/macho_module-macho.o: loader/macho.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(macho_module_CPPFLAGS) $(CPPFLAGS) $(macho_module_CFLAGS) $(CFLAGS) -MT loader/macho_module-macho.o -MD -MP -MF loader/$(DEPDIR)/macho_module-macho.Tpo -c -o loader/macho_module-macho.o `test -f 'loader/macho.c' || echo '$(srcdir)/'`loader/macho.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) loader/$(DEPDIR)/macho_module-macho.Tpo loader/$(DEPDIR)/macho_module-macho.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='loader/macho.c' object='loader/macho_module-macho.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(macho_module_CPPFLAGS) $(CPPFLAGS) $(macho_module_CFLAGS) $(CFLAGS) -c -o loader/macho_module-macho.o `test -f 'loader/macho.c' || echo '$(srcdir)/'`loader/macho.c - -loader/macho_module-macho.obj: loader/macho.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(macho_module_CPPFLAGS) $(CPPFLAGS) $(macho_module_CFLAGS) $(CFLAGS) -MT loader/macho_module-macho.obj -MD -MP -MF loader/$(DEPDIR)/macho_module-macho.Tpo -c -o loader/macho_module-macho.obj `if test -f 'loader/macho.c'; then $(CYGPATH_W) 'loader/macho.c'; else $(CYGPATH_W) '$(srcdir)/loader/macho.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) loader/$(DEPDIR)/macho_module-macho.Tpo loader/$(DEPDIR)/macho_module-macho.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='loader/macho.c' object='loader/macho_module-macho.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(macho_module_CPPFLAGS) $(CPPFLAGS) $(macho_module_CFLAGS) $(CFLAGS) -c -o loader/macho_module-macho.obj `if test -f 'loader/macho.c'; then $(CYGPATH_W) 'loader/macho.c'; else $(CYGPATH_W) '$(srcdir)/loader/macho.c'; fi` - -loader/macho_module-macho32.o: loader/macho32.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(macho_module_CPPFLAGS) $(CPPFLAGS) $(macho_module_CFLAGS) $(CFLAGS) -MT loader/macho_module-macho32.o -MD -MP -MF loader/$(DEPDIR)/macho_module-macho32.Tpo -c -o loader/macho_module-macho32.o `test -f 'loader/macho32.c' || echo '$(srcdir)/'`loader/macho32.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) loader/$(DEPDIR)/macho_module-macho32.Tpo loader/$(DEPDIR)/macho_module-macho32.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='loader/macho32.c' object='loader/macho_module-macho32.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(macho_module_CPPFLAGS) $(CPPFLAGS) $(macho_module_CFLAGS) $(CFLAGS) -c -o loader/macho_module-macho32.o `test -f 'loader/macho32.c' || echo '$(srcdir)/'`loader/macho32.c - -loader/macho_module-macho32.obj: loader/macho32.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(macho_module_CPPFLAGS) $(CPPFLAGS) $(macho_module_CFLAGS) $(CFLAGS) -MT loader/macho_module-macho32.obj -MD -MP -MF loader/$(DEPDIR)/macho_module-macho32.Tpo -c -o loader/macho_module-macho32.obj `if test -f 'loader/macho32.c'; then $(CYGPATH_W) 'loader/macho32.c'; else $(CYGPATH_W) '$(srcdir)/loader/macho32.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) loader/$(DEPDIR)/macho_module-macho32.Tpo loader/$(DEPDIR)/macho_module-macho32.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='loader/macho32.c' object='loader/macho_module-macho32.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(macho_module_CPPFLAGS) $(CPPFLAGS) $(macho_module_CFLAGS) $(CFLAGS) -c -o loader/macho_module-macho32.obj `if test -f 'loader/macho32.c'; then $(CYGPATH_W) 'loader/macho32.c'; else $(CYGPATH_W) '$(srcdir)/loader/macho32.c'; fi` - -loader/macho_module-macho64.o: loader/macho64.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(macho_module_CPPFLAGS) $(CPPFLAGS) $(macho_module_CFLAGS) $(CFLAGS) -MT loader/macho_module-macho64.o -MD -MP -MF loader/$(DEPDIR)/macho_module-macho64.Tpo -c -o loader/macho_module-macho64.o `test -f 'loader/macho64.c' || echo '$(srcdir)/'`loader/macho64.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) loader/$(DEPDIR)/macho_module-macho64.Tpo loader/$(DEPDIR)/macho_module-macho64.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='loader/macho64.c' object='loader/macho_module-macho64.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(macho_module_CPPFLAGS) $(CPPFLAGS) $(macho_module_CFLAGS) $(CFLAGS) -c -o loader/macho_module-macho64.o `test -f 'loader/macho64.c' || echo '$(srcdir)/'`loader/macho64.c - -loader/macho_module-macho64.obj: loader/macho64.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(macho_module_CPPFLAGS) $(CPPFLAGS) $(macho_module_CFLAGS) $(CFLAGS) -MT loader/macho_module-macho64.obj -MD -MP -MF loader/$(DEPDIR)/macho_module-macho64.Tpo -c -o loader/macho_module-macho64.obj `if test -f 'loader/macho64.c'; then $(CYGPATH_W) 'loader/macho64.c'; else $(CYGPATH_W) '$(srcdir)/loader/macho64.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) loader/$(DEPDIR)/macho_module-macho64.Tpo loader/$(DEPDIR)/macho_module-macho64.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='loader/macho64.c' object='loader/macho_module-macho64.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(macho_module_CPPFLAGS) $(CPPFLAGS) $(macho_module_CFLAGS) $(CFLAGS) -c -o loader/macho_module-macho64.obj `if test -f 'loader/macho64.c'; then $(CYGPATH_W) 'loader/macho64.c'; else $(CYGPATH_W) '$(srcdir)/loader/macho64.c'; fi` - -loader/macho_module-lzss.o: loader/lzss.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(macho_module_CPPFLAGS) $(CPPFLAGS) $(macho_module_CFLAGS) $(CFLAGS) -MT loader/macho_module-lzss.o -MD -MP -MF loader/$(DEPDIR)/macho_module-lzss.Tpo -c -o loader/macho_module-lzss.o `test -f 'loader/lzss.c' || echo '$(srcdir)/'`loader/lzss.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) loader/$(DEPDIR)/macho_module-lzss.Tpo loader/$(DEPDIR)/macho_module-lzss.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='loader/lzss.c' object='loader/macho_module-lzss.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(macho_module_CPPFLAGS) $(CPPFLAGS) $(macho_module_CFLAGS) $(CFLAGS) -c -o loader/macho_module-lzss.o `test -f 'loader/lzss.c' || echo '$(srcdir)/'`loader/lzss.c - -loader/macho_module-lzss.obj: loader/lzss.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(macho_module_CPPFLAGS) $(CPPFLAGS) $(macho_module_CFLAGS) $(CFLAGS) -MT loader/macho_module-lzss.obj -MD -MP -MF loader/$(DEPDIR)/macho_module-lzss.Tpo -c -o loader/macho_module-lzss.obj `if test -f 'loader/lzss.c'; then $(CYGPATH_W) 'loader/lzss.c'; else $(CYGPATH_W) '$(srcdir)/loader/lzss.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) loader/$(DEPDIR)/macho_module-lzss.Tpo loader/$(DEPDIR)/macho_module-lzss.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='loader/lzss.c' object='loader/macho_module-lzss.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(macho_module_CPPFLAGS) $(CPPFLAGS) $(macho_module_CFLAGS) $(CFLAGS) -c -o loader/macho_module-lzss.obj `if test -f 'loader/lzss.c'; then $(CYGPATH_W) 'loader/lzss.c'; else $(CYGPATH_W) '$(srcdir)/loader/lzss.c'; fi` - -term/i386/pc/mda_text_module-mda_text.o: term/i386/pc/mda_text.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mda_text_module_CPPFLAGS) $(CPPFLAGS) $(mda_text_module_CFLAGS) $(CFLAGS) -MT term/i386/pc/mda_text_module-mda_text.o -MD -MP -MF term/i386/pc/$(DEPDIR)/mda_text_module-mda_text.Tpo -c -o term/i386/pc/mda_text_module-mda_text.o `test -f 'term/i386/pc/mda_text.c' || echo '$(srcdir)/'`term/i386/pc/mda_text.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) term/i386/pc/$(DEPDIR)/mda_text_module-mda_text.Tpo term/i386/pc/$(DEPDIR)/mda_text_module-mda_text.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='term/i386/pc/mda_text.c' object='term/i386/pc/mda_text_module-mda_text.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mda_text_module_CPPFLAGS) $(CPPFLAGS) $(mda_text_module_CFLAGS) $(CFLAGS) -c -o term/i386/pc/mda_text_module-mda_text.o `test -f 'term/i386/pc/mda_text.c' || echo '$(srcdir)/'`term/i386/pc/mda_text.c - -term/i386/pc/mda_text_module-mda_text.obj: term/i386/pc/mda_text.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mda_text_module_CPPFLAGS) $(CPPFLAGS) $(mda_text_module_CFLAGS) $(CFLAGS) -MT term/i386/pc/mda_text_module-mda_text.obj -MD -MP -MF term/i386/pc/$(DEPDIR)/mda_text_module-mda_text.Tpo -c -o term/i386/pc/mda_text_module-mda_text.obj `if test -f 'term/i386/pc/mda_text.c'; then $(CYGPATH_W) 'term/i386/pc/mda_text.c'; else $(CYGPATH_W) '$(srcdir)/term/i386/pc/mda_text.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) term/i386/pc/$(DEPDIR)/mda_text_module-mda_text.Tpo term/i386/pc/$(DEPDIR)/mda_text_module-mda_text.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='term/i386/pc/mda_text.c' object='term/i386/pc/mda_text_module-mda_text.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mda_text_module_CPPFLAGS) $(CPPFLAGS) $(mda_text_module_CFLAGS) $(CFLAGS) -c -o term/i386/pc/mda_text_module-mda_text.obj `if test -f 'term/i386/pc/mda_text.c'; then $(CYGPATH_W) 'term/i386/pc/mda_text.c'; else $(CYGPATH_W) '$(srcdir)/term/i386/pc/mda_text.c'; fi` - -disk/mdraid09_module-mdraid_linux.o: disk/mdraid_linux.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mdraid09_module_CPPFLAGS) $(CPPFLAGS) $(mdraid09_module_CFLAGS) $(CFLAGS) -MT disk/mdraid09_module-mdraid_linux.o -MD -MP -MF disk/$(DEPDIR)/mdraid09_module-mdraid_linux.Tpo -c -o disk/mdraid09_module-mdraid_linux.o `test -f 'disk/mdraid_linux.c' || echo '$(srcdir)/'`disk/mdraid_linux.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) disk/$(DEPDIR)/mdraid09_module-mdraid_linux.Tpo disk/$(DEPDIR)/mdraid09_module-mdraid_linux.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='disk/mdraid_linux.c' object='disk/mdraid09_module-mdraid_linux.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mdraid09_module_CPPFLAGS) $(CPPFLAGS) $(mdraid09_module_CFLAGS) $(CFLAGS) -c -o disk/mdraid09_module-mdraid_linux.o `test -f 'disk/mdraid_linux.c' || echo '$(srcdir)/'`disk/mdraid_linux.c - -disk/mdraid09_module-mdraid_linux.obj: disk/mdraid_linux.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mdraid09_module_CPPFLAGS) $(CPPFLAGS) $(mdraid09_module_CFLAGS) $(CFLAGS) -MT disk/mdraid09_module-mdraid_linux.obj -MD -MP -MF disk/$(DEPDIR)/mdraid09_module-mdraid_linux.Tpo -c -o disk/mdraid09_module-mdraid_linux.obj `if test -f 'disk/mdraid_linux.c'; then $(CYGPATH_W) 'disk/mdraid_linux.c'; else $(CYGPATH_W) '$(srcdir)/disk/mdraid_linux.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) disk/$(DEPDIR)/mdraid09_module-mdraid_linux.Tpo disk/$(DEPDIR)/mdraid09_module-mdraid_linux.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='disk/mdraid_linux.c' object='disk/mdraid09_module-mdraid_linux.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mdraid09_module_CPPFLAGS) $(CPPFLAGS) $(mdraid09_module_CFLAGS) $(CFLAGS) -c -o disk/mdraid09_module-mdraid_linux.obj `if test -f 'disk/mdraid_linux.c'; then $(CYGPATH_W) 'disk/mdraid_linux.c'; else $(CYGPATH_W) '$(srcdir)/disk/mdraid_linux.c'; fi` - -disk/mdraid09_be_module-mdraid_linux_be.o: disk/mdraid_linux_be.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mdraid09_be_module_CPPFLAGS) $(CPPFLAGS) $(mdraid09_be_module_CFLAGS) $(CFLAGS) -MT disk/mdraid09_be_module-mdraid_linux_be.o -MD -MP -MF disk/$(DEPDIR)/mdraid09_be_module-mdraid_linux_be.Tpo -c -o disk/mdraid09_be_module-mdraid_linux_be.o `test -f 'disk/mdraid_linux_be.c' || echo '$(srcdir)/'`disk/mdraid_linux_be.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) disk/$(DEPDIR)/mdraid09_be_module-mdraid_linux_be.Tpo disk/$(DEPDIR)/mdraid09_be_module-mdraid_linux_be.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='disk/mdraid_linux_be.c' object='disk/mdraid09_be_module-mdraid_linux_be.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mdraid09_be_module_CPPFLAGS) $(CPPFLAGS) $(mdraid09_be_module_CFLAGS) $(CFLAGS) -c -o disk/mdraid09_be_module-mdraid_linux_be.o `test -f 'disk/mdraid_linux_be.c' || echo '$(srcdir)/'`disk/mdraid_linux_be.c - -disk/mdraid09_be_module-mdraid_linux_be.obj: disk/mdraid_linux_be.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mdraid09_be_module_CPPFLAGS) $(CPPFLAGS) $(mdraid09_be_module_CFLAGS) $(CFLAGS) -MT disk/mdraid09_be_module-mdraid_linux_be.obj -MD -MP -MF disk/$(DEPDIR)/mdraid09_be_module-mdraid_linux_be.Tpo -c -o disk/mdraid09_be_module-mdraid_linux_be.obj `if test -f 'disk/mdraid_linux_be.c'; then $(CYGPATH_W) 'disk/mdraid_linux_be.c'; else $(CYGPATH_W) '$(srcdir)/disk/mdraid_linux_be.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) disk/$(DEPDIR)/mdraid09_be_module-mdraid_linux_be.Tpo disk/$(DEPDIR)/mdraid09_be_module-mdraid_linux_be.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='disk/mdraid_linux_be.c' object='disk/mdraid09_be_module-mdraid_linux_be.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mdraid09_be_module_CPPFLAGS) $(CPPFLAGS) $(mdraid09_be_module_CFLAGS) $(CFLAGS) -c -o disk/mdraid09_be_module-mdraid_linux_be.obj `if test -f 'disk/mdraid_linux_be.c'; then $(CYGPATH_W) 'disk/mdraid_linux_be.c'; else $(CYGPATH_W) '$(srcdir)/disk/mdraid_linux_be.c'; fi` - -disk/mdraid1x_module-mdraid1x_linux.o: disk/mdraid1x_linux.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mdraid1x_module_CPPFLAGS) $(CPPFLAGS) $(mdraid1x_module_CFLAGS) $(CFLAGS) -MT disk/mdraid1x_module-mdraid1x_linux.o -MD -MP -MF disk/$(DEPDIR)/mdraid1x_module-mdraid1x_linux.Tpo -c -o disk/mdraid1x_module-mdraid1x_linux.o `test -f 'disk/mdraid1x_linux.c' || echo '$(srcdir)/'`disk/mdraid1x_linux.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) disk/$(DEPDIR)/mdraid1x_module-mdraid1x_linux.Tpo disk/$(DEPDIR)/mdraid1x_module-mdraid1x_linux.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='disk/mdraid1x_linux.c' object='disk/mdraid1x_module-mdraid1x_linux.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mdraid1x_module_CPPFLAGS) $(CPPFLAGS) $(mdraid1x_module_CFLAGS) $(CFLAGS) -c -o disk/mdraid1x_module-mdraid1x_linux.o `test -f 'disk/mdraid1x_linux.c' || echo '$(srcdir)/'`disk/mdraid1x_linux.c - -disk/mdraid1x_module-mdraid1x_linux.obj: disk/mdraid1x_linux.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mdraid1x_module_CPPFLAGS) $(CPPFLAGS) $(mdraid1x_module_CFLAGS) $(CFLAGS) -MT disk/mdraid1x_module-mdraid1x_linux.obj -MD -MP -MF disk/$(DEPDIR)/mdraid1x_module-mdraid1x_linux.Tpo -c -o disk/mdraid1x_module-mdraid1x_linux.obj `if test -f 'disk/mdraid1x_linux.c'; then $(CYGPATH_W) 'disk/mdraid1x_linux.c'; else $(CYGPATH_W) '$(srcdir)/disk/mdraid1x_linux.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) disk/$(DEPDIR)/mdraid1x_module-mdraid1x_linux.Tpo disk/$(DEPDIR)/mdraid1x_module-mdraid1x_linux.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='disk/mdraid1x_linux.c' object='disk/mdraid1x_module-mdraid1x_linux.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mdraid1x_module_CPPFLAGS) $(CPPFLAGS) $(mdraid1x_module_CFLAGS) $(CFLAGS) -c -o disk/mdraid1x_module-mdraid1x_linux.obj `if test -f 'disk/mdraid1x_linux.c'; then $(CYGPATH_W) 'disk/mdraid1x_linux.c'; else $(CYGPATH_W) '$(srcdir)/disk/mdraid1x_linux.c'; fi` - -disk/memdisk_module-memdisk.o: disk/memdisk.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(memdisk_module_CPPFLAGS) $(CPPFLAGS) $(memdisk_module_CFLAGS) $(CFLAGS) -MT disk/memdisk_module-memdisk.o -MD -MP -MF disk/$(DEPDIR)/memdisk_module-memdisk.Tpo -c -o disk/memdisk_module-memdisk.o `test -f 'disk/memdisk.c' || echo '$(srcdir)/'`disk/memdisk.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) disk/$(DEPDIR)/memdisk_module-memdisk.Tpo disk/$(DEPDIR)/memdisk_module-memdisk.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='disk/memdisk.c' object='disk/memdisk_module-memdisk.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(memdisk_module_CPPFLAGS) $(CPPFLAGS) $(memdisk_module_CFLAGS) $(CFLAGS) -c -o disk/memdisk_module-memdisk.o `test -f 'disk/memdisk.c' || echo '$(srcdir)/'`disk/memdisk.c - -disk/memdisk_module-memdisk.obj: disk/memdisk.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(memdisk_module_CPPFLAGS) $(CPPFLAGS) $(memdisk_module_CFLAGS) $(CFLAGS) -MT disk/memdisk_module-memdisk.obj -MD -MP -MF disk/$(DEPDIR)/memdisk_module-memdisk.Tpo -c -o disk/memdisk_module-memdisk.obj `if test -f 'disk/memdisk.c'; then $(CYGPATH_W) 'disk/memdisk.c'; else $(CYGPATH_W) '$(srcdir)/disk/memdisk.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) disk/$(DEPDIR)/memdisk_module-memdisk.Tpo disk/$(DEPDIR)/memdisk_module-memdisk.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='disk/memdisk.c' object='disk/memdisk_module-memdisk.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(memdisk_module_CPPFLAGS) $(CPPFLAGS) $(memdisk_module_CFLAGS) $(CFLAGS) -c -o disk/memdisk_module-memdisk.obj `if test -f 'disk/memdisk.c'; then $(CYGPATH_W) 'disk/memdisk.c'; else $(CYGPATH_W) '$(srcdir)/disk/memdisk.c'; fi` - -commands/memrw_module-memrw.o: commands/memrw.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(memrw_module_CPPFLAGS) $(CPPFLAGS) $(memrw_module_CFLAGS) $(CFLAGS) -MT commands/memrw_module-memrw.o -MD -MP -MF commands/$(DEPDIR)/memrw_module-memrw.Tpo -c -o commands/memrw_module-memrw.o `test -f 'commands/memrw.c' || echo '$(srcdir)/'`commands/memrw.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/$(DEPDIR)/memrw_module-memrw.Tpo commands/$(DEPDIR)/memrw_module-memrw.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/memrw.c' object='commands/memrw_module-memrw.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(memrw_module_CPPFLAGS) $(CPPFLAGS) $(memrw_module_CFLAGS) $(CFLAGS) -c -o commands/memrw_module-memrw.o `test -f 'commands/memrw.c' || echo '$(srcdir)/'`commands/memrw.c - -commands/memrw_module-memrw.obj: commands/memrw.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(memrw_module_CPPFLAGS) $(CPPFLAGS) $(memrw_module_CFLAGS) $(CFLAGS) -MT commands/memrw_module-memrw.obj -MD -MP -MF commands/$(DEPDIR)/memrw_module-memrw.Tpo -c -o commands/memrw_module-memrw.obj `if test -f 'commands/memrw.c'; then $(CYGPATH_W) 'commands/memrw.c'; else $(CYGPATH_W) '$(srcdir)/commands/memrw.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/$(DEPDIR)/memrw_module-memrw.Tpo commands/$(DEPDIR)/memrw_module-memrw.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/memrw.c' object='commands/memrw_module-memrw.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(memrw_module_CPPFLAGS) $(CPPFLAGS) $(memrw_module_CFLAGS) $(CFLAGS) -c -o commands/memrw_module-memrw.obj `if test -f 'commands/memrw.c'; then $(CYGPATH_W) 'commands/memrw.c'; else $(CYGPATH_W) '$(srcdir)/commands/memrw.c'; fi` - -commands/minicmd_module-minicmd.o: commands/minicmd.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(minicmd_module_CPPFLAGS) $(CPPFLAGS) $(minicmd_module_CFLAGS) $(CFLAGS) -MT commands/minicmd_module-minicmd.o -MD -MP -MF commands/$(DEPDIR)/minicmd_module-minicmd.Tpo -c -o commands/minicmd_module-minicmd.o `test -f 'commands/minicmd.c' || echo '$(srcdir)/'`commands/minicmd.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/$(DEPDIR)/minicmd_module-minicmd.Tpo commands/$(DEPDIR)/minicmd_module-minicmd.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/minicmd.c' object='commands/minicmd_module-minicmd.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(minicmd_module_CPPFLAGS) $(CPPFLAGS) $(minicmd_module_CFLAGS) $(CFLAGS) -c -o commands/minicmd_module-minicmd.o `test -f 'commands/minicmd.c' || echo '$(srcdir)/'`commands/minicmd.c - -commands/minicmd_module-minicmd.obj: commands/minicmd.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(minicmd_module_CPPFLAGS) $(CPPFLAGS) $(minicmd_module_CFLAGS) $(CFLAGS) -MT commands/minicmd_module-minicmd.obj -MD -MP -MF commands/$(DEPDIR)/minicmd_module-minicmd.Tpo -c -o commands/minicmd_module-minicmd.obj `if test -f 'commands/minicmd.c'; then $(CYGPATH_W) 'commands/minicmd.c'; else $(CYGPATH_W) '$(srcdir)/commands/minicmd.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/$(DEPDIR)/minicmd_module-minicmd.Tpo commands/$(DEPDIR)/minicmd_module-minicmd.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/minicmd.c' object='commands/minicmd_module-minicmd.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(minicmd_module_CPPFLAGS) $(CPPFLAGS) $(minicmd_module_CFLAGS) $(CFLAGS) -c -o commands/minicmd_module-minicmd.obj `if test -f 'commands/minicmd.c'; then $(CYGPATH_W) 'commands/minicmd.c'; else $(CYGPATH_W) '$(srcdir)/commands/minicmd.c'; fi` - -fs/minix_module-minix.o: fs/minix.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(minix_module_CPPFLAGS) $(CPPFLAGS) $(minix_module_CFLAGS) $(CFLAGS) -MT fs/minix_module-minix.o -MD -MP -MF fs/$(DEPDIR)/minix_module-minix.Tpo -c -o fs/minix_module-minix.o `test -f 'fs/minix.c' || echo '$(srcdir)/'`fs/minix.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) fs/$(DEPDIR)/minix_module-minix.Tpo fs/$(DEPDIR)/minix_module-minix.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='fs/minix.c' object='fs/minix_module-minix.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(minix_module_CPPFLAGS) $(CPPFLAGS) $(minix_module_CFLAGS) $(CFLAGS) -c -o fs/minix_module-minix.o `test -f 'fs/minix.c' || echo '$(srcdir)/'`fs/minix.c - -fs/minix_module-minix.obj: fs/minix.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(minix_module_CPPFLAGS) $(CPPFLAGS) $(minix_module_CFLAGS) $(CFLAGS) -MT fs/minix_module-minix.obj -MD -MP -MF fs/$(DEPDIR)/minix_module-minix.Tpo -c -o fs/minix_module-minix.obj `if test -f 'fs/minix.c'; then $(CYGPATH_W) 'fs/minix.c'; else $(CYGPATH_W) '$(srcdir)/fs/minix.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) fs/$(DEPDIR)/minix_module-minix.Tpo fs/$(DEPDIR)/minix_module-minix.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='fs/minix.c' object='fs/minix_module-minix.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(minix_module_CPPFLAGS) $(CPPFLAGS) $(minix_module_CFLAGS) $(CFLAGS) -c -o fs/minix_module-minix.obj `if test -f 'fs/minix.c'; then $(CYGPATH_W) 'fs/minix.c'; else $(CYGPATH_W) '$(srcdir)/fs/minix.c'; fi` - -fs/minix2_module-minix2.o: fs/minix2.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(minix2_module_CPPFLAGS) $(CPPFLAGS) $(minix2_module_CFLAGS) $(CFLAGS) -MT fs/minix2_module-minix2.o -MD -MP -MF fs/$(DEPDIR)/minix2_module-minix2.Tpo -c -o fs/minix2_module-minix2.o `test -f 'fs/minix2.c' || echo '$(srcdir)/'`fs/minix2.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) fs/$(DEPDIR)/minix2_module-minix2.Tpo fs/$(DEPDIR)/minix2_module-minix2.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='fs/minix2.c' object='fs/minix2_module-minix2.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(minix2_module_CPPFLAGS) $(CPPFLAGS) $(minix2_module_CFLAGS) $(CFLAGS) -c -o fs/minix2_module-minix2.o `test -f 'fs/minix2.c' || echo '$(srcdir)/'`fs/minix2.c - -fs/minix2_module-minix2.obj: fs/minix2.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(minix2_module_CPPFLAGS) $(CPPFLAGS) $(minix2_module_CFLAGS) $(CFLAGS) -MT fs/minix2_module-minix2.obj -MD -MP -MF fs/$(DEPDIR)/minix2_module-minix2.Tpo -c -o fs/minix2_module-minix2.obj `if test -f 'fs/minix2.c'; then $(CYGPATH_W) 'fs/minix2.c'; else $(CYGPATH_W) '$(srcdir)/fs/minix2.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) fs/$(DEPDIR)/minix2_module-minix2.Tpo fs/$(DEPDIR)/minix2_module-minix2.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='fs/minix2.c' object='fs/minix2_module-minix2.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(minix2_module_CPPFLAGS) $(CPPFLAGS) $(minix2_module_CFLAGS) $(CFLAGS) -c -o fs/minix2_module-minix2.obj `if test -f 'fs/minix2.c'; then $(CYGPATH_W) 'fs/minix2.c'; else $(CYGPATH_W) '$(srcdir)/fs/minix2.c'; fi` - -fs/minix2_be_module-minix2_be.o: fs/minix2_be.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(minix2_be_module_CPPFLAGS) $(CPPFLAGS) $(minix2_be_module_CFLAGS) $(CFLAGS) -MT fs/minix2_be_module-minix2_be.o -MD -MP -MF fs/$(DEPDIR)/minix2_be_module-minix2_be.Tpo -c -o fs/minix2_be_module-minix2_be.o `test -f 'fs/minix2_be.c' || echo '$(srcdir)/'`fs/minix2_be.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) fs/$(DEPDIR)/minix2_be_module-minix2_be.Tpo fs/$(DEPDIR)/minix2_be_module-minix2_be.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='fs/minix2_be.c' object='fs/minix2_be_module-minix2_be.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(minix2_be_module_CPPFLAGS) $(CPPFLAGS) $(minix2_be_module_CFLAGS) $(CFLAGS) -c -o fs/minix2_be_module-minix2_be.o `test -f 'fs/minix2_be.c' || echo '$(srcdir)/'`fs/minix2_be.c - -fs/minix2_be_module-minix2_be.obj: fs/minix2_be.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(minix2_be_module_CPPFLAGS) $(CPPFLAGS) $(minix2_be_module_CFLAGS) $(CFLAGS) -MT fs/minix2_be_module-minix2_be.obj -MD -MP -MF fs/$(DEPDIR)/minix2_be_module-minix2_be.Tpo -c -o fs/minix2_be_module-minix2_be.obj `if test -f 'fs/minix2_be.c'; then $(CYGPATH_W) 'fs/minix2_be.c'; else $(CYGPATH_W) '$(srcdir)/fs/minix2_be.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) fs/$(DEPDIR)/minix2_be_module-minix2_be.Tpo fs/$(DEPDIR)/minix2_be_module-minix2_be.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='fs/minix2_be.c' object='fs/minix2_be_module-minix2_be.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(minix2_be_module_CPPFLAGS) $(CPPFLAGS) $(minix2_be_module_CFLAGS) $(CFLAGS) -c -o fs/minix2_be_module-minix2_be.obj `if test -f 'fs/minix2_be.c'; then $(CYGPATH_W) 'fs/minix2_be.c'; else $(CYGPATH_W) '$(srcdir)/fs/minix2_be.c'; fi` - -fs/minix3_module-minix3.o: fs/minix3.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(minix3_module_CPPFLAGS) $(CPPFLAGS) $(minix3_module_CFLAGS) $(CFLAGS) -MT fs/minix3_module-minix3.o -MD -MP -MF fs/$(DEPDIR)/minix3_module-minix3.Tpo -c -o fs/minix3_module-minix3.o `test -f 'fs/minix3.c' || echo '$(srcdir)/'`fs/minix3.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) fs/$(DEPDIR)/minix3_module-minix3.Tpo fs/$(DEPDIR)/minix3_module-minix3.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='fs/minix3.c' object='fs/minix3_module-minix3.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(minix3_module_CPPFLAGS) $(CPPFLAGS) $(minix3_module_CFLAGS) $(CFLAGS) -c -o fs/minix3_module-minix3.o `test -f 'fs/minix3.c' || echo '$(srcdir)/'`fs/minix3.c - -fs/minix3_module-minix3.obj: fs/minix3.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(minix3_module_CPPFLAGS) $(CPPFLAGS) $(minix3_module_CFLAGS) $(CFLAGS) -MT fs/minix3_module-minix3.obj -MD -MP -MF fs/$(DEPDIR)/minix3_module-minix3.Tpo -c -o fs/minix3_module-minix3.obj `if test -f 'fs/minix3.c'; then $(CYGPATH_W) 'fs/minix3.c'; else $(CYGPATH_W) '$(srcdir)/fs/minix3.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) fs/$(DEPDIR)/minix3_module-minix3.Tpo fs/$(DEPDIR)/minix3_module-minix3.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='fs/minix3.c' object='fs/minix3_module-minix3.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(minix3_module_CPPFLAGS) $(CPPFLAGS) $(minix3_module_CFLAGS) $(CFLAGS) -c -o fs/minix3_module-minix3.obj `if test -f 'fs/minix3.c'; then $(CYGPATH_W) 'fs/minix3.c'; else $(CYGPATH_W) '$(srcdir)/fs/minix3.c'; fi` - -fs/minix3_be_module-minix3_be.o: fs/minix3_be.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(minix3_be_module_CPPFLAGS) $(CPPFLAGS) $(minix3_be_module_CFLAGS) $(CFLAGS) -MT fs/minix3_be_module-minix3_be.o -MD -MP -MF fs/$(DEPDIR)/minix3_be_module-minix3_be.Tpo -c -o fs/minix3_be_module-minix3_be.o `test -f 'fs/minix3_be.c' || echo '$(srcdir)/'`fs/minix3_be.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) fs/$(DEPDIR)/minix3_be_module-minix3_be.Tpo fs/$(DEPDIR)/minix3_be_module-minix3_be.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='fs/minix3_be.c' object='fs/minix3_be_module-minix3_be.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(minix3_be_module_CPPFLAGS) $(CPPFLAGS) $(minix3_be_module_CFLAGS) $(CFLAGS) -c -o fs/minix3_be_module-minix3_be.o `test -f 'fs/minix3_be.c' || echo '$(srcdir)/'`fs/minix3_be.c - -fs/minix3_be_module-minix3_be.obj: fs/minix3_be.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(minix3_be_module_CPPFLAGS) $(CPPFLAGS) $(minix3_be_module_CFLAGS) $(CFLAGS) -MT fs/minix3_be_module-minix3_be.obj -MD -MP -MF fs/$(DEPDIR)/minix3_be_module-minix3_be.Tpo -c -o fs/minix3_be_module-minix3_be.obj `if test -f 'fs/minix3_be.c'; then $(CYGPATH_W) 'fs/minix3_be.c'; else $(CYGPATH_W) '$(srcdir)/fs/minix3_be.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) fs/$(DEPDIR)/minix3_be_module-minix3_be.Tpo fs/$(DEPDIR)/minix3_be_module-minix3_be.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='fs/minix3_be.c' object='fs/minix3_be_module-minix3_be.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(minix3_be_module_CPPFLAGS) $(CPPFLAGS) $(minix3_be_module_CFLAGS) $(CFLAGS) -c -o fs/minix3_be_module-minix3_be.obj `if test -f 'fs/minix3_be.c'; then $(CYGPATH_W) 'fs/minix3_be.c'; else $(CYGPATH_W) '$(srcdir)/fs/minix3_be.c'; fi` - -fs/minix_be_module-minix_be.o: fs/minix_be.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(minix_be_module_CPPFLAGS) $(CPPFLAGS) $(minix_be_module_CFLAGS) $(CFLAGS) -MT fs/minix_be_module-minix_be.o -MD -MP -MF fs/$(DEPDIR)/minix_be_module-minix_be.Tpo -c -o fs/minix_be_module-minix_be.o `test -f 'fs/minix_be.c' || echo '$(srcdir)/'`fs/minix_be.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) fs/$(DEPDIR)/minix_be_module-minix_be.Tpo fs/$(DEPDIR)/minix_be_module-minix_be.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='fs/minix_be.c' object='fs/minix_be_module-minix_be.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(minix_be_module_CPPFLAGS) $(CPPFLAGS) $(minix_be_module_CFLAGS) $(CFLAGS) -c -o fs/minix_be_module-minix_be.o `test -f 'fs/minix_be.c' || echo '$(srcdir)/'`fs/minix_be.c - -fs/minix_be_module-minix_be.obj: fs/minix_be.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(minix_be_module_CPPFLAGS) $(CPPFLAGS) $(minix_be_module_CFLAGS) $(CFLAGS) -MT fs/minix_be_module-minix_be.obj -MD -MP -MF fs/$(DEPDIR)/minix_be_module-minix_be.Tpo -c -o fs/minix_be_module-minix_be.obj `if test -f 'fs/minix_be.c'; then $(CYGPATH_W) 'fs/minix_be.c'; else $(CYGPATH_W) '$(srcdir)/fs/minix_be.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) fs/$(DEPDIR)/minix_be_module-minix_be.Tpo fs/$(DEPDIR)/minix_be_module-minix_be.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='fs/minix_be.c' object='fs/minix_be_module-minix_be.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(minix_be_module_CPPFLAGS) $(CPPFLAGS) $(minix_be_module_CFLAGS) $(CFLAGS) -c -o fs/minix_be_module-minix_be.obj `if test -f 'fs/minix_be.c'; then $(CYGPATH_W) 'fs/minix_be.c'; else $(CYGPATH_W) '$(srcdir)/fs/minix_be.c'; fi` - -mmap/efi/mmap_module-mmap.o: mmap/efi/mmap.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mmap_module_CPPFLAGS) $(CPPFLAGS) $(mmap_module_CFLAGS) $(CFLAGS) -MT mmap/efi/mmap_module-mmap.o -MD -MP -MF mmap/efi/$(DEPDIR)/mmap_module-mmap.Tpo -c -o mmap/efi/mmap_module-mmap.o `test -f 'mmap/efi/mmap.c' || echo '$(srcdir)/'`mmap/efi/mmap.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) mmap/efi/$(DEPDIR)/mmap_module-mmap.Tpo mmap/efi/$(DEPDIR)/mmap_module-mmap.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='mmap/efi/mmap.c' object='mmap/efi/mmap_module-mmap.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mmap_module_CPPFLAGS) $(CPPFLAGS) $(mmap_module_CFLAGS) $(CFLAGS) -c -o mmap/efi/mmap_module-mmap.o `test -f 'mmap/efi/mmap.c' || echo '$(srcdir)/'`mmap/efi/mmap.c - -mmap/efi/mmap_module-mmap.obj: mmap/efi/mmap.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mmap_module_CPPFLAGS) $(CPPFLAGS) $(mmap_module_CFLAGS) $(CFLAGS) -MT mmap/efi/mmap_module-mmap.obj -MD -MP -MF mmap/efi/$(DEPDIR)/mmap_module-mmap.Tpo -c -o mmap/efi/mmap_module-mmap.obj `if test -f 'mmap/efi/mmap.c'; then $(CYGPATH_W) 'mmap/efi/mmap.c'; else $(CYGPATH_W) '$(srcdir)/mmap/efi/mmap.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) mmap/efi/$(DEPDIR)/mmap_module-mmap.Tpo mmap/efi/$(DEPDIR)/mmap_module-mmap.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='mmap/efi/mmap.c' object='mmap/efi/mmap_module-mmap.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mmap_module_CPPFLAGS) $(CPPFLAGS) $(mmap_module_CFLAGS) $(CFLAGS) -c -o mmap/efi/mmap_module-mmap.obj `if test -f 'mmap/efi/mmap.c'; then $(CYGPATH_W) 'mmap/efi/mmap.c'; else $(CYGPATH_W) '$(srcdir)/mmap/efi/mmap.c'; fi` - -mmap/mmap_module-mmap.o: mmap/mmap.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mmap_module_CPPFLAGS) $(CPPFLAGS) $(mmap_module_CFLAGS) $(CFLAGS) -MT mmap/mmap_module-mmap.o -MD -MP -MF mmap/$(DEPDIR)/mmap_module-mmap.Tpo -c -o mmap/mmap_module-mmap.o `test -f 'mmap/mmap.c' || echo '$(srcdir)/'`mmap/mmap.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) mmap/$(DEPDIR)/mmap_module-mmap.Tpo mmap/$(DEPDIR)/mmap_module-mmap.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='mmap/mmap.c' object='mmap/mmap_module-mmap.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mmap_module_CPPFLAGS) $(CPPFLAGS) $(mmap_module_CFLAGS) $(CFLAGS) -c -o mmap/mmap_module-mmap.o `test -f 'mmap/mmap.c' || echo '$(srcdir)/'`mmap/mmap.c - -mmap/mmap_module-mmap.obj: mmap/mmap.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mmap_module_CPPFLAGS) $(CPPFLAGS) $(mmap_module_CFLAGS) $(CFLAGS) -MT mmap/mmap_module-mmap.obj -MD -MP -MF mmap/$(DEPDIR)/mmap_module-mmap.Tpo -c -o mmap/mmap_module-mmap.obj `if test -f 'mmap/mmap.c'; then $(CYGPATH_W) 'mmap/mmap.c'; else $(CYGPATH_W) '$(srcdir)/mmap/mmap.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) mmap/$(DEPDIR)/mmap_module-mmap.Tpo mmap/$(DEPDIR)/mmap_module-mmap.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='mmap/mmap.c' object='mmap/mmap_module-mmap.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mmap_module_CPPFLAGS) $(CPPFLAGS) $(mmap_module_CFLAGS) $(CFLAGS) -c -o mmap/mmap_module-mmap.obj `if test -f 'mmap/mmap.c'; then $(CYGPATH_W) 'mmap/mmap.c'; else $(CYGPATH_W) '$(srcdir)/mmap/mmap.c'; fi` - -mmap/i386/mmap_module-uppermem.o: mmap/i386/uppermem.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mmap_module_CPPFLAGS) $(CPPFLAGS) $(mmap_module_CFLAGS) $(CFLAGS) -MT mmap/i386/mmap_module-uppermem.o -MD -MP -MF mmap/i386/$(DEPDIR)/mmap_module-uppermem.Tpo -c -o mmap/i386/mmap_module-uppermem.o `test -f 'mmap/i386/uppermem.c' || echo '$(srcdir)/'`mmap/i386/uppermem.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) mmap/i386/$(DEPDIR)/mmap_module-uppermem.Tpo mmap/i386/$(DEPDIR)/mmap_module-uppermem.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='mmap/i386/uppermem.c' object='mmap/i386/mmap_module-uppermem.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mmap_module_CPPFLAGS) $(CPPFLAGS) $(mmap_module_CFLAGS) $(CFLAGS) -c -o mmap/i386/mmap_module-uppermem.o `test -f 'mmap/i386/uppermem.c' || echo '$(srcdir)/'`mmap/i386/uppermem.c - -mmap/i386/mmap_module-uppermem.obj: mmap/i386/uppermem.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mmap_module_CPPFLAGS) $(CPPFLAGS) $(mmap_module_CFLAGS) $(CFLAGS) -MT mmap/i386/mmap_module-uppermem.obj -MD -MP -MF mmap/i386/$(DEPDIR)/mmap_module-uppermem.Tpo -c -o mmap/i386/mmap_module-uppermem.obj `if test -f 'mmap/i386/uppermem.c'; then $(CYGPATH_W) 'mmap/i386/uppermem.c'; else $(CYGPATH_W) '$(srcdir)/mmap/i386/uppermem.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) mmap/i386/$(DEPDIR)/mmap_module-uppermem.Tpo mmap/i386/$(DEPDIR)/mmap_module-uppermem.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='mmap/i386/uppermem.c' object='mmap/i386/mmap_module-uppermem.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mmap_module_CPPFLAGS) $(CPPFLAGS) $(mmap_module_CFLAGS) $(CFLAGS) -c -o mmap/i386/mmap_module-uppermem.obj `if test -f 'mmap/i386/uppermem.c'; then $(CYGPATH_W) 'mmap/i386/uppermem.c'; else $(CYGPATH_W) '$(srcdir)/mmap/i386/uppermem.c'; fi` - -mmap/i386/mmap_module-mmap.o: mmap/i386/mmap.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mmap_module_CPPFLAGS) $(CPPFLAGS) $(mmap_module_CFLAGS) $(CFLAGS) -MT mmap/i386/mmap_module-mmap.o -MD -MP -MF mmap/i386/$(DEPDIR)/mmap_module-mmap.Tpo -c -o mmap/i386/mmap_module-mmap.o `test -f 'mmap/i386/mmap.c' || echo '$(srcdir)/'`mmap/i386/mmap.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) mmap/i386/$(DEPDIR)/mmap_module-mmap.Tpo mmap/i386/$(DEPDIR)/mmap_module-mmap.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='mmap/i386/mmap.c' object='mmap/i386/mmap_module-mmap.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mmap_module_CPPFLAGS) $(CPPFLAGS) $(mmap_module_CFLAGS) $(CFLAGS) -c -o mmap/i386/mmap_module-mmap.o `test -f 'mmap/i386/mmap.c' || echo '$(srcdir)/'`mmap/i386/mmap.c - -mmap/i386/mmap_module-mmap.obj: mmap/i386/mmap.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mmap_module_CPPFLAGS) $(CPPFLAGS) $(mmap_module_CFLAGS) $(CFLAGS) -MT mmap/i386/mmap_module-mmap.obj -MD -MP -MF mmap/i386/$(DEPDIR)/mmap_module-mmap.Tpo -c -o mmap/i386/mmap_module-mmap.obj `if test -f 'mmap/i386/mmap.c'; then $(CYGPATH_W) 'mmap/i386/mmap.c'; else $(CYGPATH_W) '$(srcdir)/mmap/i386/mmap.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) mmap/i386/$(DEPDIR)/mmap_module-mmap.Tpo mmap/i386/$(DEPDIR)/mmap_module-mmap.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='mmap/i386/mmap.c' object='mmap/i386/mmap_module-mmap.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mmap_module_CPPFLAGS) $(CPPFLAGS) $(mmap_module_CFLAGS) $(CFLAGS) -c -o mmap/i386/mmap_module-mmap.obj `if test -f 'mmap/i386/mmap.c'; then $(CYGPATH_W) 'mmap/i386/mmap.c'; else $(CYGPATH_W) '$(srcdir)/mmap/i386/mmap.c'; fi` - -mmap/i386/pc/mmap_module-mmap.o: mmap/i386/pc/mmap.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mmap_module_CPPFLAGS) $(CPPFLAGS) $(mmap_module_CFLAGS) $(CFLAGS) -MT mmap/i386/pc/mmap_module-mmap.o -MD -MP -MF mmap/i386/pc/$(DEPDIR)/mmap_module-mmap.Tpo -c -o mmap/i386/pc/mmap_module-mmap.o `test -f 'mmap/i386/pc/mmap.c' || echo '$(srcdir)/'`mmap/i386/pc/mmap.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) mmap/i386/pc/$(DEPDIR)/mmap_module-mmap.Tpo mmap/i386/pc/$(DEPDIR)/mmap_module-mmap.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='mmap/i386/pc/mmap.c' object='mmap/i386/pc/mmap_module-mmap.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mmap_module_CPPFLAGS) $(CPPFLAGS) $(mmap_module_CFLAGS) $(CFLAGS) -c -o mmap/i386/pc/mmap_module-mmap.o `test -f 'mmap/i386/pc/mmap.c' || echo '$(srcdir)/'`mmap/i386/pc/mmap.c - -mmap/i386/pc/mmap_module-mmap.obj: mmap/i386/pc/mmap.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mmap_module_CPPFLAGS) $(CPPFLAGS) $(mmap_module_CFLAGS) $(CFLAGS) -MT mmap/i386/pc/mmap_module-mmap.obj -MD -MP -MF mmap/i386/pc/$(DEPDIR)/mmap_module-mmap.Tpo -c -o mmap/i386/pc/mmap_module-mmap.obj `if test -f 'mmap/i386/pc/mmap.c'; then $(CYGPATH_W) 'mmap/i386/pc/mmap.c'; else $(CYGPATH_W) '$(srcdir)/mmap/i386/pc/mmap.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) mmap/i386/pc/$(DEPDIR)/mmap_module-mmap.Tpo mmap/i386/pc/$(DEPDIR)/mmap_module-mmap.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='mmap/i386/pc/mmap.c' object='mmap/i386/pc/mmap_module-mmap.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mmap_module_CPPFLAGS) $(CPPFLAGS) $(mmap_module_CFLAGS) $(CFLAGS) -c -o mmap/i386/pc/mmap_module-mmap.obj `if test -f 'mmap/i386/pc/mmap.c'; then $(CYGPATH_W) 'mmap/i386/pc/mmap.c'; else $(CYGPATH_W) '$(srcdir)/mmap/i386/pc/mmap.c'; fi` - -mmap/mips/mmap_module-uppermem.o: mmap/mips/uppermem.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mmap_module_CPPFLAGS) $(CPPFLAGS) $(mmap_module_CFLAGS) $(CFLAGS) -MT mmap/mips/mmap_module-uppermem.o -MD -MP -MF mmap/mips/$(DEPDIR)/mmap_module-uppermem.Tpo -c -o mmap/mips/mmap_module-uppermem.o `test -f 'mmap/mips/uppermem.c' || echo '$(srcdir)/'`mmap/mips/uppermem.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) mmap/mips/$(DEPDIR)/mmap_module-uppermem.Tpo mmap/mips/$(DEPDIR)/mmap_module-uppermem.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='mmap/mips/uppermem.c' object='mmap/mips/mmap_module-uppermem.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mmap_module_CPPFLAGS) $(CPPFLAGS) $(mmap_module_CFLAGS) $(CFLAGS) -c -o mmap/mips/mmap_module-uppermem.o `test -f 'mmap/mips/uppermem.c' || echo '$(srcdir)/'`mmap/mips/uppermem.c - -mmap/mips/mmap_module-uppermem.obj: mmap/mips/uppermem.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mmap_module_CPPFLAGS) $(CPPFLAGS) $(mmap_module_CFLAGS) $(CFLAGS) -MT mmap/mips/mmap_module-uppermem.obj -MD -MP -MF mmap/mips/$(DEPDIR)/mmap_module-uppermem.Tpo -c -o mmap/mips/mmap_module-uppermem.obj `if test -f 'mmap/mips/uppermem.c'; then $(CYGPATH_W) 'mmap/mips/uppermem.c'; else $(CYGPATH_W) '$(srcdir)/mmap/mips/uppermem.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) mmap/mips/$(DEPDIR)/mmap_module-uppermem.Tpo mmap/mips/$(DEPDIR)/mmap_module-uppermem.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='mmap/mips/uppermem.c' object='mmap/mips/mmap_module-uppermem.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mmap_module_CPPFLAGS) $(CPPFLAGS) $(mmap_module_CFLAGS) $(CFLAGS) -c -o mmap/mips/mmap_module-uppermem.obj `if test -f 'mmap/mips/uppermem.c'; then $(CYGPATH_W) 'mmap/mips/uppermem.c'; else $(CYGPATH_W) '$(srcdir)/mmap/mips/uppermem.c'; fi` - -term/morse_module-morse.o: term/morse.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(morse_module_CPPFLAGS) $(CPPFLAGS) $(morse_module_CFLAGS) $(CFLAGS) -MT term/morse_module-morse.o -MD -MP -MF term/$(DEPDIR)/morse_module-morse.Tpo -c -o term/morse_module-morse.o `test -f 'term/morse.c' || echo '$(srcdir)/'`term/morse.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) term/$(DEPDIR)/morse_module-morse.Tpo term/$(DEPDIR)/morse_module-morse.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='term/morse.c' object='term/morse_module-morse.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(morse_module_CPPFLAGS) $(CPPFLAGS) $(morse_module_CFLAGS) $(CFLAGS) -c -o term/morse_module-morse.o `test -f 'term/morse.c' || echo '$(srcdir)/'`term/morse.c - -term/morse_module-morse.obj: term/morse.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(morse_module_CPPFLAGS) $(CPPFLAGS) $(morse_module_CFLAGS) $(CFLAGS) -MT term/morse_module-morse.obj -MD -MP -MF term/$(DEPDIR)/morse_module-morse.Tpo -c -o term/morse_module-morse.obj `if test -f 'term/morse.c'; then $(CYGPATH_W) 'term/morse.c'; else $(CYGPATH_W) '$(srcdir)/term/morse.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) term/$(DEPDIR)/morse_module-morse.Tpo term/$(DEPDIR)/morse_module-morse.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='term/morse.c' object='term/morse_module-morse.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(morse_module_CPPFLAGS) $(CPPFLAGS) $(morse_module_CFLAGS) $(CFLAGS) -c -o term/morse_module-morse.obj `if test -f 'term/morse.c'; then $(CYGPATH_W) 'term/morse.c'; else $(CYGPATH_W) '$(srcdir)/term/morse.c'; fi` - -lib/libgcrypt-grub/mpi/mpi_module-mpiutil.o: lib/libgcrypt-grub/mpi/mpiutil.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mpi_module_CPPFLAGS) $(CPPFLAGS) $(mpi_module_CFLAGS) $(CFLAGS) -MT lib/libgcrypt-grub/mpi/mpi_module-mpiutil.o -MD -MP -MF lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpiutil.Tpo -c -o lib/libgcrypt-grub/mpi/mpi_module-mpiutil.o `test -f 'lib/libgcrypt-grub/mpi/mpiutil.c' || echo '$(srcdir)/'`lib/libgcrypt-grub/mpi/mpiutil.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpiutil.Tpo lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpiutil.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/libgcrypt-grub/mpi/mpiutil.c' object='lib/libgcrypt-grub/mpi/mpi_module-mpiutil.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mpi_module_CPPFLAGS) $(CPPFLAGS) $(mpi_module_CFLAGS) $(CFLAGS) -c -o lib/libgcrypt-grub/mpi/mpi_module-mpiutil.o `test -f 'lib/libgcrypt-grub/mpi/mpiutil.c' || echo '$(srcdir)/'`lib/libgcrypt-grub/mpi/mpiutil.c - -lib/libgcrypt-grub/mpi/mpi_module-mpiutil.obj: lib/libgcrypt-grub/mpi/mpiutil.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mpi_module_CPPFLAGS) $(CPPFLAGS) $(mpi_module_CFLAGS) $(CFLAGS) -MT lib/libgcrypt-grub/mpi/mpi_module-mpiutil.obj -MD -MP -MF lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpiutil.Tpo -c -o lib/libgcrypt-grub/mpi/mpi_module-mpiutil.obj `if test -f 'lib/libgcrypt-grub/mpi/mpiutil.c'; then $(CYGPATH_W) 'lib/libgcrypt-grub/mpi/mpiutil.c'; else $(CYGPATH_W) '$(srcdir)/lib/libgcrypt-grub/mpi/mpiutil.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpiutil.Tpo lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpiutil.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/libgcrypt-grub/mpi/mpiutil.c' object='lib/libgcrypt-grub/mpi/mpi_module-mpiutil.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mpi_module_CPPFLAGS) $(CPPFLAGS) $(mpi_module_CFLAGS) $(CFLAGS) -c -o lib/libgcrypt-grub/mpi/mpi_module-mpiutil.obj `if test -f 'lib/libgcrypt-grub/mpi/mpiutil.c'; then $(CYGPATH_W) 'lib/libgcrypt-grub/mpi/mpiutil.c'; else $(CYGPATH_W) '$(srcdir)/lib/libgcrypt-grub/mpi/mpiutil.c'; fi` - -lib/libgcrypt-grub/mpi/mpi_module-mpi-bit.o: lib/libgcrypt-grub/mpi/mpi-bit.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mpi_module_CPPFLAGS) $(CPPFLAGS) $(mpi_module_CFLAGS) $(CFLAGS) -MT lib/libgcrypt-grub/mpi/mpi_module-mpi-bit.o -MD -MP -MF lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpi-bit.Tpo -c -o lib/libgcrypt-grub/mpi/mpi_module-mpi-bit.o `test -f 'lib/libgcrypt-grub/mpi/mpi-bit.c' || echo '$(srcdir)/'`lib/libgcrypt-grub/mpi/mpi-bit.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpi-bit.Tpo lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpi-bit.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/libgcrypt-grub/mpi/mpi-bit.c' object='lib/libgcrypt-grub/mpi/mpi_module-mpi-bit.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mpi_module_CPPFLAGS) $(CPPFLAGS) $(mpi_module_CFLAGS) $(CFLAGS) -c -o lib/libgcrypt-grub/mpi/mpi_module-mpi-bit.o `test -f 'lib/libgcrypt-grub/mpi/mpi-bit.c' || echo '$(srcdir)/'`lib/libgcrypt-grub/mpi/mpi-bit.c - -lib/libgcrypt-grub/mpi/mpi_module-mpi-bit.obj: lib/libgcrypt-grub/mpi/mpi-bit.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mpi_module_CPPFLAGS) $(CPPFLAGS) $(mpi_module_CFLAGS) $(CFLAGS) -MT lib/libgcrypt-grub/mpi/mpi_module-mpi-bit.obj -MD -MP -MF lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpi-bit.Tpo -c -o lib/libgcrypt-grub/mpi/mpi_module-mpi-bit.obj `if test -f 'lib/libgcrypt-grub/mpi/mpi-bit.c'; then $(CYGPATH_W) 'lib/libgcrypt-grub/mpi/mpi-bit.c'; else $(CYGPATH_W) '$(srcdir)/lib/libgcrypt-grub/mpi/mpi-bit.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpi-bit.Tpo lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpi-bit.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/libgcrypt-grub/mpi/mpi-bit.c' object='lib/libgcrypt-grub/mpi/mpi_module-mpi-bit.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mpi_module_CPPFLAGS) $(CPPFLAGS) $(mpi_module_CFLAGS) $(CFLAGS) -c -o lib/libgcrypt-grub/mpi/mpi_module-mpi-bit.obj `if test -f 'lib/libgcrypt-grub/mpi/mpi-bit.c'; then $(CYGPATH_W) 'lib/libgcrypt-grub/mpi/mpi-bit.c'; else $(CYGPATH_W) '$(srcdir)/lib/libgcrypt-grub/mpi/mpi-bit.c'; fi` - -lib/libgcrypt-grub/mpi/mpi_module-mpi-add.o: lib/libgcrypt-grub/mpi/mpi-add.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mpi_module_CPPFLAGS) $(CPPFLAGS) $(mpi_module_CFLAGS) $(CFLAGS) -MT lib/libgcrypt-grub/mpi/mpi_module-mpi-add.o -MD -MP -MF lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpi-add.Tpo -c -o lib/libgcrypt-grub/mpi/mpi_module-mpi-add.o `test -f 'lib/libgcrypt-grub/mpi/mpi-add.c' || echo '$(srcdir)/'`lib/libgcrypt-grub/mpi/mpi-add.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpi-add.Tpo lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpi-add.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/libgcrypt-grub/mpi/mpi-add.c' object='lib/libgcrypt-grub/mpi/mpi_module-mpi-add.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mpi_module_CPPFLAGS) $(CPPFLAGS) $(mpi_module_CFLAGS) $(CFLAGS) -c -o lib/libgcrypt-grub/mpi/mpi_module-mpi-add.o `test -f 'lib/libgcrypt-grub/mpi/mpi-add.c' || echo '$(srcdir)/'`lib/libgcrypt-grub/mpi/mpi-add.c - -lib/libgcrypt-grub/mpi/mpi_module-mpi-add.obj: lib/libgcrypt-grub/mpi/mpi-add.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mpi_module_CPPFLAGS) $(CPPFLAGS) $(mpi_module_CFLAGS) $(CFLAGS) -MT lib/libgcrypt-grub/mpi/mpi_module-mpi-add.obj -MD -MP -MF lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpi-add.Tpo -c -o lib/libgcrypt-grub/mpi/mpi_module-mpi-add.obj `if test -f 'lib/libgcrypt-grub/mpi/mpi-add.c'; then $(CYGPATH_W) 'lib/libgcrypt-grub/mpi/mpi-add.c'; else $(CYGPATH_W) '$(srcdir)/lib/libgcrypt-grub/mpi/mpi-add.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpi-add.Tpo lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpi-add.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/libgcrypt-grub/mpi/mpi-add.c' object='lib/libgcrypt-grub/mpi/mpi_module-mpi-add.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mpi_module_CPPFLAGS) $(CPPFLAGS) $(mpi_module_CFLAGS) $(CFLAGS) -c -o lib/libgcrypt-grub/mpi/mpi_module-mpi-add.obj `if test -f 'lib/libgcrypt-grub/mpi/mpi-add.c'; then $(CYGPATH_W) 'lib/libgcrypt-grub/mpi/mpi-add.c'; else $(CYGPATH_W) '$(srcdir)/lib/libgcrypt-grub/mpi/mpi-add.c'; fi` - -lib/libgcrypt-grub/mpi/mpi_module-mpi-mul.o: lib/libgcrypt-grub/mpi/mpi-mul.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mpi_module_CPPFLAGS) $(CPPFLAGS) $(mpi_module_CFLAGS) $(CFLAGS) -MT lib/libgcrypt-grub/mpi/mpi_module-mpi-mul.o -MD -MP -MF lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpi-mul.Tpo -c -o lib/libgcrypt-grub/mpi/mpi_module-mpi-mul.o `test -f 'lib/libgcrypt-grub/mpi/mpi-mul.c' || echo '$(srcdir)/'`lib/libgcrypt-grub/mpi/mpi-mul.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpi-mul.Tpo lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpi-mul.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/libgcrypt-grub/mpi/mpi-mul.c' object='lib/libgcrypt-grub/mpi/mpi_module-mpi-mul.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mpi_module_CPPFLAGS) $(CPPFLAGS) $(mpi_module_CFLAGS) $(CFLAGS) -c -o lib/libgcrypt-grub/mpi/mpi_module-mpi-mul.o `test -f 'lib/libgcrypt-grub/mpi/mpi-mul.c' || echo '$(srcdir)/'`lib/libgcrypt-grub/mpi/mpi-mul.c - -lib/libgcrypt-grub/mpi/mpi_module-mpi-mul.obj: lib/libgcrypt-grub/mpi/mpi-mul.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mpi_module_CPPFLAGS) $(CPPFLAGS) $(mpi_module_CFLAGS) $(CFLAGS) -MT lib/libgcrypt-grub/mpi/mpi_module-mpi-mul.obj -MD -MP -MF lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpi-mul.Tpo -c -o lib/libgcrypt-grub/mpi/mpi_module-mpi-mul.obj `if test -f 'lib/libgcrypt-grub/mpi/mpi-mul.c'; then $(CYGPATH_W) 'lib/libgcrypt-grub/mpi/mpi-mul.c'; else $(CYGPATH_W) '$(srcdir)/lib/libgcrypt-grub/mpi/mpi-mul.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpi-mul.Tpo lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpi-mul.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/libgcrypt-grub/mpi/mpi-mul.c' object='lib/libgcrypt-grub/mpi/mpi_module-mpi-mul.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mpi_module_CPPFLAGS) $(CPPFLAGS) $(mpi_module_CFLAGS) $(CFLAGS) -c -o lib/libgcrypt-grub/mpi/mpi_module-mpi-mul.obj `if test -f 'lib/libgcrypt-grub/mpi/mpi-mul.c'; then $(CYGPATH_W) 'lib/libgcrypt-grub/mpi/mpi-mul.c'; else $(CYGPATH_W) '$(srcdir)/lib/libgcrypt-grub/mpi/mpi-mul.c'; fi` - -lib/libgcrypt-grub/mpi/mpi_module-mpi-mod.o: lib/libgcrypt-grub/mpi/mpi-mod.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mpi_module_CPPFLAGS) $(CPPFLAGS) $(mpi_module_CFLAGS) $(CFLAGS) -MT lib/libgcrypt-grub/mpi/mpi_module-mpi-mod.o -MD -MP -MF lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpi-mod.Tpo -c -o lib/libgcrypt-grub/mpi/mpi_module-mpi-mod.o `test -f 'lib/libgcrypt-grub/mpi/mpi-mod.c' || echo '$(srcdir)/'`lib/libgcrypt-grub/mpi/mpi-mod.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpi-mod.Tpo lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpi-mod.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/libgcrypt-grub/mpi/mpi-mod.c' object='lib/libgcrypt-grub/mpi/mpi_module-mpi-mod.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mpi_module_CPPFLAGS) $(CPPFLAGS) $(mpi_module_CFLAGS) $(CFLAGS) -c -o lib/libgcrypt-grub/mpi/mpi_module-mpi-mod.o `test -f 'lib/libgcrypt-grub/mpi/mpi-mod.c' || echo '$(srcdir)/'`lib/libgcrypt-grub/mpi/mpi-mod.c - -lib/libgcrypt-grub/mpi/mpi_module-mpi-mod.obj: lib/libgcrypt-grub/mpi/mpi-mod.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mpi_module_CPPFLAGS) $(CPPFLAGS) $(mpi_module_CFLAGS) $(CFLAGS) -MT lib/libgcrypt-grub/mpi/mpi_module-mpi-mod.obj -MD -MP -MF lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpi-mod.Tpo -c -o lib/libgcrypt-grub/mpi/mpi_module-mpi-mod.obj `if test -f 'lib/libgcrypt-grub/mpi/mpi-mod.c'; then $(CYGPATH_W) 'lib/libgcrypt-grub/mpi/mpi-mod.c'; else $(CYGPATH_W) '$(srcdir)/lib/libgcrypt-grub/mpi/mpi-mod.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpi-mod.Tpo lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpi-mod.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/libgcrypt-grub/mpi/mpi-mod.c' object='lib/libgcrypt-grub/mpi/mpi_module-mpi-mod.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mpi_module_CPPFLAGS) $(CPPFLAGS) $(mpi_module_CFLAGS) $(CFLAGS) -c -o lib/libgcrypt-grub/mpi/mpi_module-mpi-mod.obj `if test -f 'lib/libgcrypt-grub/mpi/mpi-mod.c'; then $(CYGPATH_W) 'lib/libgcrypt-grub/mpi/mpi-mod.c'; else $(CYGPATH_W) '$(srcdir)/lib/libgcrypt-grub/mpi/mpi-mod.c'; fi` - -lib/libgcrypt-grub/mpi/mpi_module-mpi-gcd.o: lib/libgcrypt-grub/mpi/mpi-gcd.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mpi_module_CPPFLAGS) $(CPPFLAGS) $(mpi_module_CFLAGS) $(CFLAGS) -MT lib/libgcrypt-grub/mpi/mpi_module-mpi-gcd.o -MD -MP -MF lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpi-gcd.Tpo -c -o lib/libgcrypt-grub/mpi/mpi_module-mpi-gcd.o `test -f 'lib/libgcrypt-grub/mpi/mpi-gcd.c' || echo '$(srcdir)/'`lib/libgcrypt-grub/mpi/mpi-gcd.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpi-gcd.Tpo lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpi-gcd.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/libgcrypt-grub/mpi/mpi-gcd.c' object='lib/libgcrypt-grub/mpi/mpi_module-mpi-gcd.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mpi_module_CPPFLAGS) $(CPPFLAGS) $(mpi_module_CFLAGS) $(CFLAGS) -c -o lib/libgcrypt-grub/mpi/mpi_module-mpi-gcd.o `test -f 'lib/libgcrypt-grub/mpi/mpi-gcd.c' || echo '$(srcdir)/'`lib/libgcrypt-grub/mpi/mpi-gcd.c - -lib/libgcrypt-grub/mpi/mpi_module-mpi-gcd.obj: lib/libgcrypt-grub/mpi/mpi-gcd.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mpi_module_CPPFLAGS) $(CPPFLAGS) $(mpi_module_CFLAGS) $(CFLAGS) -MT lib/libgcrypt-grub/mpi/mpi_module-mpi-gcd.obj -MD -MP -MF lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpi-gcd.Tpo -c -o lib/libgcrypt-grub/mpi/mpi_module-mpi-gcd.obj `if test -f 'lib/libgcrypt-grub/mpi/mpi-gcd.c'; then $(CYGPATH_W) 'lib/libgcrypt-grub/mpi/mpi-gcd.c'; else $(CYGPATH_W) '$(srcdir)/lib/libgcrypt-grub/mpi/mpi-gcd.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpi-gcd.Tpo lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpi-gcd.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/libgcrypt-grub/mpi/mpi-gcd.c' object='lib/libgcrypt-grub/mpi/mpi_module-mpi-gcd.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mpi_module_CPPFLAGS) $(CPPFLAGS) $(mpi_module_CFLAGS) $(CFLAGS) -c -o lib/libgcrypt-grub/mpi/mpi_module-mpi-gcd.obj `if test -f 'lib/libgcrypt-grub/mpi/mpi-gcd.c'; then $(CYGPATH_W) 'lib/libgcrypt-grub/mpi/mpi-gcd.c'; else $(CYGPATH_W) '$(srcdir)/lib/libgcrypt-grub/mpi/mpi-gcd.c'; fi` - -lib/libgcrypt-grub/mpi/mpi_module-mpi-div.o: lib/libgcrypt-grub/mpi/mpi-div.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mpi_module_CPPFLAGS) $(CPPFLAGS) $(mpi_module_CFLAGS) $(CFLAGS) -MT lib/libgcrypt-grub/mpi/mpi_module-mpi-div.o -MD -MP -MF lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpi-div.Tpo -c -o lib/libgcrypt-grub/mpi/mpi_module-mpi-div.o `test -f 'lib/libgcrypt-grub/mpi/mpi-div.c' || echo '$(srcdir)/'`lib/libgcrypt-grub/mpi/mpi-div.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpi-div.Tpo lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpi-div.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/libgcrypt-grub/mpi/mpi-div.c' object='lib/libgcrypt-grub/mpi/mpi_module-mpi-div.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mpi_module_CPPFLAGS) $(CPPFLAGS) $(mpi_module_CFLAGS) $(CFLAGS) -c -o lib/libgcrypt-grub/mpi/mpi_module-mpi-div.o `test -f 'lib/libgcrypt-grub/mpi/mpi-div.c' || echo '$(srcdir)/'`lib/libgcrypt-grub/mpi/mpi-div.c - -lib/libgcrypt-grub/mpi/mpi_module-mpi-div.obj: lib/libgcrypt-grub/mpi/mpi-div.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mpi_module_CPPFLAGS) $(CPPFLAGS) $(mpi_module_CFLAGS) $(CFLAGS) -MT lib/libgcrypt-grub/mpi/mpi_module-mpi-div.obj -MD -MP -MF lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpi-div.Tpo -c -o lib/libgcrypt-grub/mpi/mpi_module-mpi-div.obj `if test -f 'lib/libgcrypt-grub/mpi/mpi-div.c'; then $(CYGPATH_W) 'lib/libgcrypt-grub/mpi/mpi-div.c'; else $(CYGPATH_W) '$(srcdir)/lib/libgcrypt-grub/mpi/mpi-div.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpi-div.Tpo lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpi-div.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/libgcrypt-grub/mpi/mpi-div.c' object='lib/libgcrypt-grub/mpi/mpi_module-mpi-div.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mpi_module_CPPFLAGS) $(CPPFLAGS) $(mpi_module_CFLAGS) $(CFLAGS) -c -o lib/libgcrypt-grub/mpi/mpi_module-mpi-div.obj `if test -f 'lib/libgcrypt-grub/mpi/mpi-div.c'; then $(CYGPATH_W) 'lib/libgcrypt-grub/mpi/mpi-div.c'; else $(CYGPATH_W) '$(srcdir)/lib/libgcrypt-grub/mpi/mpi-div.c'; fi` - -lib/libgcrypt-grub/mpi/mpi_module-mpi-cmp.o: lib/libgcrypt-grub/mpi/mpi-cmp.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mpi_module_CPPFLAGS) $(CPPFLAGS) $(mpi_module_CFLAGS) $(CFLAGS) -MT lib/libgcrypt-grub/mpi/mpi_module-mpi-cmp.o -MD -MP -MF lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpi-cmp.Tpo -c -o lib/libgcrypt-grub/mpi/mpi_module-mpi-cmp.o `test -f 'lib/libgcrypt-grub/mpi/mpi-cmp.c' || echo '$(srcdir)/'`lib/libgcrypt-grub/mpi/mpi-cmp.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpi-cmp.Tpo lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpi-cmp.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/libgcrypt-grub/mpi/mpi-cmp.c' object='lib/libgcrypt-grub/mpi/mpi_module-mpi-cmp.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mpi_module_CPPFLAGS) $(CPPFLAGS) $(mpi_module_CFLAGS) $(CFLAGS) -c -o lib/libgcrypt-grub/mpi/mpi_module-mpi-cmp.o `test -f 'lib/libgcrypt-grub/mpi/mpi-cmp.c' || echo '$(srcdir)/'`lib/libgcrypt-grub/mpi/mpi-cmp.c - -lib/libgcrypt-grub/mpi/mpi_module-mpi-cmp.obj: lib/libgcrypt-grub/mpi/mpi-cmp.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mpi_module_CPPFLAGS) $(CPPFLAGS) $(mpi_module_CFLAGS) $(CFLAGS) -MT lib/libgcrypt-grub/mpi/mpi_module-mpi-cmp.obj -MD -MP -MF lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpi-cmp.Tpo -c -o lib/libgcrypt-grub/mpi/mpi_module-mpi-cmp.obj `if test -f 'lib/libgcrypt-grub/mpi/mpi-cmp.c'; then $(CYGPATH_W) 'lib/libgcrypt-grub/mpi/mpi-cmp.c'; else $(CYGPATH_W) '$(srcdir)/lib/libgcrypt-grub/mpi/mpi-cmp.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpi-cmp.Tpo lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpi-cmp.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/libgcrypt-grub/mpi/mpi-cmp.c' object='lib/libgcrypt-grub/mpi/mpi_module-mpi-cmp.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mpi_module_CPPFLAGS) $(CPPFLAGS) $(mpi_module_CFLAGS) $(CFLAGS) -c -o lib/libgcrypt-grub/mpi/mpi_module-mpi-cmp.obj `if test -f 'lib/libgcrypt-grub/mpi/mpi-cmp.c'; then $(CYGPATH_W) 'lib/libgcrypt-grub/mpi/mpi-cmp.c'; else $(CYGPATH_W) '$(srcdir)/lib/libgcrypt-grub/mpi/mpi-cmp.c'; fi` - -lib/libgcrypt-grub/mpi/mpi_module-mpi-inv.o: lib/libgcrypt-grub/mpi/mpi-inv.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mpi_module_CPPFLAGS) $(CPPFLAGS) $(mpi_module_CFLAGS) $(CFLAGS) -MT lib/libgcrypt-grub/mpi/mpi_module-mpi-inv.o -MD -MP -MF lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpi-inv.Tpo -c -o lib/libgcrypt-grub/mpi/mpi_module-mpi-inv.o `test -f 'lib/libgcrypt-grub/mpi/mpi-inv.c' || echo '$(srcdir)/'`lib/libgcrypt-grub/mpi/mpi-inv.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpi-inv.Tpo lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpi-inv.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/libgcrypt-grub/mpi/mpi-inv.c' object='lib/libgcrypt-grub/mpi/mpi_module-mpi-inv.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mpi_module_CPPFLAGS) $(CPPFLAGS) $(mpi_module_CFLAGS) $(CFLAGS) -c -o lib/libgcrypt-grub/mpi/mpi_module-mpi-inv.o `test -f 'lib/libgcrypt-grub/mpi/mpi-inv.c' || echo '$(srcdir)/'`lib/libgcrypt-grub/mpi/mpi-inv.c - -lib/libgcrypt-grub/mpi/mpi_module-mpi-inv.obj: lib/libgcrypt-grub/mpi/mpi-inv.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mpi_module_CPPFLAGS) $(CPPFLAGS) $(mpi_module_CFLAGS) $(CFLAGS) -MT lib/libgcrypt-grub/mpi/mpi_module-mpi-inv.obj -MD -MP -MF lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpi-inv.Tpo -c -o lib/libgcrypt-grub/mpi/mpi_module-mpi-inv.obj `if test -f 'lib/libgcrypt-grub/mpi/mpi-inv.c'; then $(CYGPATH_W) 'lib/libgcrypt-grub/mpi/mpi-inv.c'; else $(CYGPATH_W) '$(srcdir)/lib/libgcrypt-grub/mpi/mpi-inv.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpi-inv.Tpo lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpi-inv.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/libgcrypt-grub/mpi/mpi-inv.c' object='lib/libgcrypt-grub/mpi/mpi_module-mpi-inv.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mpi_module_CPPFLAGS) $(CPPFLAGS) $(mpi_module_CFLAGS) $(CFLAGS) -c -o lib/libgcrypt-grub/mpi/mpi_module-mpi-inv.obj `if test -f 'lib/libgcrypt-grub/mpi/mpi-inv.c'; then $(CYGPATH_W) 'lib/libgcrypt-grub/mpi/mpi-inv.c'; else $(CYGPATH_W) '$(srcdir)/lib/libgcrypt-grub/mpi/mpi-inv.c'; fi` - -lib/libgcrypt-grub/mpi/mpi_module-mpi-pow.o: lib/libgcrypt-grub/mpi/mpi-pow.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mpi_module_CPPFLAGS) $(CPPFLAGS) $(mpi_module_CFLAGS) $(CFLAGS) -MT lib/libgcrypt-grub/mpi/mpi_module-mpi-pow.o -MD -MP -MF lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpi-pow.Tpo -c -o lib/libgcrypt-grub/mpi/mpi_module-mpi-pow.o `test -f 'lib/libgcrypt-grub/mpi/mpi-pow.c' || echo '$(srcdir)/'`lib/libgcrypt-grub/mpi/mpi-pow.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpi-pow.Tpo lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpi-pow.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/libgcrypt-grub/mpi/mpi-pow.c' object='lib/libgcrypt-grub/mpi/mpi_module-mpi-pow.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mpi_module_CPPFLAGS) $(CPPFLAGS) $(mpi_module_CFLAGS) $(CFLAGS) -c -o lib/libgcrypt-grub/mpi/mpi_module-mpi-pow.o `test -f 'lib/libgcrypt-grub/mpi/mpi-pow.c' || echo '$(srcdir)/'`lib/libgcrypt-grub/mpi/mpi-pow.c - -lib/libgcrypt-grub/mpi/mpi_module-mpi-pow.obj: lib/libgcrypt-grub/mpi/mpi-pow.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mpi_module_CPPFLAGS) $(CPPFLAGS) $(mpi_module_CFLAGS) $(CFLAGS) -MT lib/libgcrypt-grub/mpi/mpi_module-mpi-pow.obj -MD -MP -MF lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpi-pow.Tpo -c -o lib/libgcrypt-grub/mpi/mpi_module-mpi-pow.obj `if test -f 'lib/libgcrypt-grub/mpi/mpi-pow.c'; then $(CYGPATH_W) 'lib/libgcrypt-grub/mpi/mpi-pow.c'; else $(CYGPATH_W) '$(srcdir)/lib/libgcrypt-grub/mpi/mpi-pow.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpi-pow.Tpo lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpi-pow.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/libgcrypt-grub/mpi/mpi-pow.c' object='lib/libgcrypt-grub/mpi/mpi_module-mpi-pow.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mpi_module_CPPFLAGS) $(CPPFLAGS) $(mpi_module_CFLAGS) $(CFLAGS) -c -o lib/libgcrypt-grub/mpi/mpi_module-mpi-pow.obj `if test -f 'lib/libgcrypt-grub/mpi/mpi-pow.c'; then $(CYGPATH_W) 'lib/libgcrypt-grub/mpi/mpi-pow.c'; else $(CYGPATH_W) '$(srcdir)/lib/libgcrypt-grub/mpi/mpi-pow.c'; fi` - -lib/libgcrypt-grub/mpi/mpi_module-mpi-mpow.o: lib/libgcrypt-grub/mpi/mpi-mpow.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mpi_module_CPPFLAGS) $(CPPFLAGS) $(mpi_module_CFLAGS) $(CFLAGS) -MT lib/libgcrypt-grub/mpi/mpi_module-mpi-mpow.o -MD -MP -MF lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpi-mpow.Tpo -c -o lib/libgcrypt-grub/mpi/mpi_module-mpi-mpow.o `test -f 'lib/libgcrypt-grub/mpi/mpi-mpow.c' || echo '$(srcdir)/'`lib/libgcrypt-grub/mpi/mpi-mpow.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpi-mpow.Tpo lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpi-mpow.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/libgcrypt-grub/mpi/mpi-mpow.c' object='lib/libgcrypt-grub/mpi/mpi_module-mpi-mpow.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mpi_module_CPPFLAGS) $(CPPFLAGS) $(mpi_module_CFLAGS) $(CFLAGS) -c -o lib/libgcrypt-grub/mpi/mpi_module-mpi-mpow.o `test -f 'lib/libgcrypt-grub/mpi/mpi-mpow.c' || echo '$(srcdir)/'`lib/libgcrypt-grub/mpi/mpi-mpow.c - -lib/libgcrypt-grub/mpi/mpi_module-mpi-mpow.obj: lib/libgcrypt-grub/mpi/mpi-mpow.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mpi_module_CPPFLAGS) $(CPPFLAGS) $(mpi_module_CFLAGS) $(CFLAGS) -MT lib/libgcrypt-grub/mpi/mpi_module-mpi-mpow.obj -MD -MP -MF lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpi-mpow.Tpo -c -o lib/libgcrypt-grub/mpi/mpi_module-mpi-mpow.obj `if test -f 'lib/libgcrypt-grub/mpi/mpi-mpow.c'; then $(CYGPATH_W) 'lib/libgcrypt-grub/mpi/mpi-mpow.c'; else $(CYGPATH_W) '$(srcdir)/lib/libgcrypt-grub/mpi/mpi-mpow.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpi-mpow.Tpo lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpi-mpow.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/libgcrypt-grub/mpi/mpi-mpow.c' object='lib/libgcrypt-grub/mpi/mpi_module-mpi-mpow.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mpi_module_CPPFLAGS) $(CPPFLAGS) $(mpi_module_CFLAGS) $(CFLAGS) -c -o lib/libgcrypt-grub/mpi/mpi_module-mpi-mpow.obj `if test -f 'lib/libgcrypt-grub/mpi/mpi-mpow.c'; then $(CYGPATH_W) 'lib/libgcrypt-grub/mpi/mpi-mpow.c'; else $(CYGPATH_W) '$(srcdir)/lib/libgcrypt-grub/mpi/mpi-mpow.c'; fi` - -lib/libgcrypt-grub/mpi/mpi_module-mpih-lshift.o: lib/libgcrypt-grub/mpi/mpih-lshift.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mpi_module_CPPFLAGS) $(CPPFLAGS) $(mpi_module_CFLAGS) $(CFLAGS) -MT lib/libgcrypt-grub/mpi/mpi_module-mpih-lshift.o -MD -MP -MF lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpih-lshift.Tpo -c -o lib/libgcrypt-grub/mpi/mpi_module-mpih-lshift.o `test -f 'lib/libgcrypt-grub/mpi/mpih-lshift.c' || echo '$(srcdir)/'`lib/libgcrypt-grub/mpi/mpih-lshift.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpih-lshift.Tpo lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpih-lshift.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/libgcrypt-grub/mpi/mpih-lshift.c' object='lib/libgcrypt-grub/mpi/mpi_module-mpih-lshift.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mpi_module_CPPFLAGS) $(CPPFLAGS) $(mpi_module_CFLAGS) $(CFLAGS) -c -o lib/libgcrypt-grub/mpi/mpi_module-mpih-lshift.o `test -f 'lib/libgcrypt-grub/mpi/mpih-lshift.c' || echo '$(srcdir)/'`lib/libgcrypt-grub/mpi/mpih-lshift.c - -lib/libgcrypt-grub/mpi/mpi_module-mpih-lshift.obj: lib/libgcrypt-grub/mpi/mpih-lshift.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mpi_module_CPPFLAGS) $(CPPFLAGS) $(mpi_module_CFLAGS) $(CFLAGS) -MT lib/libgcrypt-grub/mpi/mpi_module-mpih-lshift.obj -MD -MP -MF lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpih-lshift.Tpo -c -o lib/libgcrypt-grub/mpi/mpi_module-mpih-lshift.obj `if test -f 'lib/libgcrypt-grub/mpi/mpih-lshift.c'; then $(CYGPATH_W) 'lib/libgcrypt-grub/mpi/mpih-lshift.c'; else $(CYGPATH_W) '$(srcdir)/lib/libgcrypt-grub/mpi/mpih-lshift.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpih-lshift.Tpo lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpih-lshift.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/libgcrypt-grub/mpi/mpih-lshift.c' object='lib/libgcrypt-grub/mpi/mpi_module-mpih-lshift.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mpi_module_CPPFLAGS) $(CPPFLAGS) $(mpi_module_CFLAGS) $(CFLAGS) -c -o lib/libgcrypt-grub/mpi/mpi_module-mpih-lshift.obj `if test -f 'lib/libgcrypt-grub/mpi/mpih-lshift.c'; then $(CYGPATH_W) 'lib/libgcrypt-grub/mpi/mpih-lshift.c'; else $(CYGPATH_W) '$(srcdir)/lib/libgcrypt-grub/mpi/mpih-lshift.c'; fi` - -lib/libgcrypt-grub/mpi/mpi_module-mpih-mul.o: lib/libgcrypt-grub/mpi/mpih-mul.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mpi_module_CPPFLAGS) $(CPPFLAGS) $(mpi_module_CFLAGS) $(CFLAGS) -MT lib/libgcrypt-grub/mpi/mpi_module-mpih-mul.o -MD -MP -MF lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpih-mul.Tpo -c -o lib/libgcrypt-grub/mpi/mpi_module-mpih-mul.o `test -f 'lib/libgcrypt-grub/mpi/mpih-mul.c' || echo '$(srcdir)/'`lib/libgcrypt-grub/mpi/mpih-mul.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpih-mul.Tpo lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpih-mul.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/libgcrypt-grub/mpi/mpih-mul.c' object='lib/libgcrypt-grub/mpi/mpi_module-mpih-mul.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mpi_module_CPPFLAGS) $(CPPFLAGS) $(mpi_module_CFLAGS) $(CFLAGS) -c -o lib/libgcrypt-grub/mpi/mpi_module-mpih-mul.o `test -f 'lib/libgcrypt-grub/mpi/mpih-mul.c' || echo '$(srcdir)/'`lib/libgcrypt-grub/mpi/mpih-mul.c - -lib/libgcrypt-grub/mpi/mpi_module-mpih-mul.obj: lib/libgcrypt-grub/mpi/mpih-mul.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mpi_module_CPPFLAGS) $(CPPFLAGS) $(mpi_module_CFLAGS) $(CFLAGS) -MT lib/libgcrypt-grub/mpi/mpi_module-mpih-mul.obj -MD -MP -MF lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpih-mul.Tpo -c -o lib/libgcrypt-grub/mpi/mpi_module-mpih-mul.obj `if test -f 'lib/libgcrypt-grub/mpi/mpih-mul.c'; then $(CYGPATH_W) 'lib/libgcrypt-grub/mpi/mpih-mul.c'; else $(CYGPATH_W) '$(srcdir)/lib/libgcrypt-grub/mpi/mpih-mul.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpih-mul.Tpo lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpih-mul.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/libgcrypt-grub/mpi/mpih-mul.c' object='lib/libgcrypt-grub/mpi/mpi_module-mpih-mul.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mpi_module_CPPFLAGS) $(CPPFLAGS) $(mpi_module_CFLAGS) $(CFLAGS) -c -o lib/libgcrypt-grub/mpi/mpi_module-mpih-mul.obj `if test -f 'lib/libgcrypt-grub/mpi/mpih-mul.c'; then $(CYGPATH_W) 'lib/libgcrypt-grub/mpi/mpih-mul.c'; else $(CYGPATH_W) '$(srcdir)/lib/libgcrypt-grub/mpi/mpih-mul.c'; fi` - -lib/libgcrypt-grub/mpi/mpi_module-mpih-mul1.o: lib/libgcrypt-grub/mpi/mpih-mul1.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mpi_module_CPPFLAGS) $(CPPFLAGS) $(mpi_module_CFLAGS) $(CFLAGS) -MT lib/libgcrypt-grub/mpi/mpi_module-mpih-mul1.o -MD -MP -MF lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpih-mul1.Tpo -c -o lib/libgcrypt-grub/mpi/mpi_module-mpih-mul1.o `test -f 'lib/libgcrypt-grub/mpi/mpih-mul1.c' || echo '$(srcdir)/'`lib/libgcrypt-grub/mpi/mpih-mul1.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpih-mul1.Tpo lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpih-mul1.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/libgcrypt-grub/mpi/mpih-mul1.c' object='lib/libgcrypt-grub/mpi/mpi_module-mpih-mul1.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mpi_module_CPPFLAGS) $(CPPFLAGS) $(mpi_module_CFLAGS) $(CFLAGS) -c -o lib/libgcrypt-grub/mpi/mpi_module-mpih-mul1.o `test -f 'lib/libgcrypt-grub/mpi/mpih-mul1.c' || echo '$(srcdir)/'`lib/libgcrypt-grub/mpi/mpih-mul1.c - -lib/libgcrypt-grub/mpi/mpi_module-mpih-mul1.obj: lib/libgcrypt-grub/mpi/mpih-mul1.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mpi_module_CPPFLAGS) $(CPPFLAGS) $(mpi_module_CFLAGS) $(CFLAGS) -MT lib/libgcrypt-grub/mpi/mpi_module-mpih-mul1.obj -MD -MP -MF lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpih-mul1.Tpo -c -o lib/libgcrypt-grub/mpi/mpi_module-mpih-mul1.obj `if test -f 'lib/libgcrypt-grub/mpi/mpih-mul1.c'; then $(CYGPATH_W) 'lib/libgcrypt-grub/mpi/mpih-mul1.c'; else $(CYGPATH_W) '$(srcdir)/lib/libgcrypt-grub/mpi/mpih-mul1.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpih-mul1.Tpo lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpih-mul1.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/libgcrypt-grub/mpi/mpih-mul1.c' object='lib/libgcrypt-grub/mpi/mpi_module-mpih-mul1.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mpi_module_CPPFLAGS) $(CPPFLAGS) $(mpi_module_CFLAGS) $(CFLAGS) -c -o lib/libgcrypt-grub/mpi/mpi_module-mpih-mul1.obj `if test -f 'lib/libgcrypt-grub/mpi/mpih-mul1.c'; then $(CYGPATH_W) 'lib/libgcrypt-grub/mpi/mpih-mul1.c'; else $(CYGPATH_W) '$(srcdir)/lib/libgcrypt-grub/mpi/mpih-mul1.c'; fi` - -lib/libgcrypt-grub/mpi/mpi_module-mpih-mul2.o: lib/libgcrypt-grub/mpi/mpih-mul2.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mpi_module_CPPFLAGS) $(CPPFLAGS) $(mpi_module_CFLAGS) $(CFLAGS) -MT lib/libgcrypt-grub/mpi/mpi_module-mpih-mul2.o -MD -MP -MF lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpih-mul2.Tpo -c -o lib/libgcrypt-grub/mpi/mpi_module-mpih-mul2.o `test -f 'lib/libgcrypt-grub/mpi/mpih-mul2.c' || echo '$(srcdir)/'`lib/libgcrypt-grub/mpi/mpih-mul2.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpih-mul2.Tpo lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpih-mul2.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/libgcrypt-grub/mpi/mpih-mul2.c' object='lib/libgcrypt-grub/mpi/mpi_module-mpih-mul2.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mpi_module_CPPFLAGS) $(CPPFLAGS) $(mpi_module_CFLAGS) $(CFLAGS) -c -o lib/libgcrypt-grub/mpi/mpi_module-mpih-mul2.o `test -f 'lib/libgcrypt-grub/mpi/mpih-mul2.c' || echo '$(srcdir)/'`lib/libgcrypt-grub/mpi/mpih-mul2.c - -lib/libgcrypt-grub/mpi/mpi_module-mpih-mul2.obj: lib/libgcrypt-grub/mpi/mpih-mul2.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mpi_module_CPPFLAGS) $(CPPFLAGS) $(mpi_module_CFLAGS) $(CFLAGS) -MT lib/libgcrypt-grub/mpi/mpi_module-mpih-mul2.obj -MD -MP -MF lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpih-mul2.Tpo -c -o lib/libgcrypt-grub/mpi/mpi_module-mpih-mul2.obj `if test -f 'lib/libgcrypt-grub/mpi/mpih-mul2.c'; then $(CYGPATH_W) 'lib/libgcrypt-grub/mpi/mpih-mul2.c'; else $(CYGPATH_W) '$(srcdir)/lib/libgcrypt-grub/mpi/mpih-mul2.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpih-mul2.Tpo lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpih-mul2.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/libgcrypt-grub/mpi/mpih-mul2.c' object='lib/libgcrypt-grub/mpi/mpi_module-mpih-mul2.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mpi_module_CPPFLAGS) $(CPPFLAGS) $(mpi_module_CFLAGS) $(CFLAGS) -c -o lib/libgcrypt-grub/mpi/mpi_module-mpih-mul2.obj `if test -f 'lib/libgcrypt-grub/mpi/mpih-mul2.c'; then $(CYGPATH_W) 'lib/libgcrypt-grub/mpi/mpih-mul2.c'; else $(CYGPATH_W) '$(srcdir)/lib/libgcrypt-grub/mpi/mpih-mul2.c'; fi` - -lib/libgcrypt-grub/mpi/mpi_module-mpih-mul3.o: lib/libgcrypt-grub/mpi/mpih-mul3.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mpi_module_CPPFLAGS) $(CPPFLAGS) $(mpi_module_CFLAGS) $(CFLAGS) -MT lib/libgcrypt-grub/mpi/mpi_module-mpih-mul3.o -MD -MP -MF lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpih-mul3.Tpo -c -o lib/libgcrypt-grub/mpi/mpi_module-mpih-mul3.o `test -f 'lib/libgcrypt-grub/mpi/mpih-mul3.c' || echo '$(srcdir)/'`lib/libgcrypt-grub/mpi/mpih-mul3.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpih-mul3.Tpo lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpih-mul3.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/libgcrypt-grub/mpi/mpih-mul3.c' object='lib/libgcrypt-grub/mpi/mpi_module-mpih-mul3.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mpi_module_CPPFLAGS) $(CPPFLAGS) $(mpi_module_CFLAGS) $(CFLAGS) -c -o lib/libgcrypt-grub/mpi/mpi_module-mpih-mul3.o `test -f 'lib/libgcrypt-grub/mpi/mpih-mul3.c' || echo '$(srcdir)/'`lib/libgcrypt-grub/mpi/mpih-mul3.c - -lib/libgcrypt-grub/mpi/mpi_module-mpih-mul3.obj: lib/libgcrypt-grub/mpi/mpih-mul3.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mpi_module_CPPFLAGS) $(CPPFLAGS) $(mpi_module_CFLAGS) $(CFLAGS) -MT lib/libgcrypt-grub/mpi/mpi_module-mpih-mul3.obj -MD -MP -MF lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpih-mul3.Tpo -c -o lib/libgcrypt-grub/mpi/mpi_module-mpih-mul3.obj `if test -f 'lib/libgcrypt-grub/mpi/mpih-mul3.c'; then $(CYGPATH_W) 'lib/libgcrypt-grub/mpi/mpih-mul3.c'; else $(CYGPATH_W) '$(srcdir)/lib/libgcrypt-grub/mpi/mpih-mul3.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpih-mul3.Tpo lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpih-mul3.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/libgcrypt-grub/mpi/mpih-mul3.c' object='lib/libgcrypt-grub/mpi/mpi_module-mpih-mul3.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mpi_module_CPPFLAGS) $(CPPFLAGS) $(mpi_module_CFLAGS) $(CFLAGS) -c -o lib/libgcrypt-grub/mpi/mpi_module-mpih-mul3.obj `if test -f 'lib/libgcrypt-grub/mpi/mpih-mul3.c'; then $(CYGPATH_W) 'lib/libgcrypt-grub/mpi/mpih-mul3.c'; else $(CYGPATH_W) '$(srcdir)/lib/libgcrypt-grub/mpi/mpih-mul3.c'; fi` - -lib/libgcrypt-grub/mpi/mpi_module-mpih-add1.o: lib/libgcrypt-grub/mpi/mpih-add1.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mpi_module_CPPFLAGS) $(CPPFLAGS) $(mpi_module_CFLAGS) $(CFLAGS) -MT lib/libgcrypt-grub/mpi/mpi_module-mpih-add1.o -MD -MP -MF lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpih-add1.Tpo -c -o lib/libgcrypt-grub/mpi/mpi_module-mpih-add1.o `test -f 'lib/libgcrypt-grub/mpi/mpih-add1.c' || echo '$(srcdir)/'`lib/libgcrypt-grub/mpi/mpih-add1.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpih-add1.Tpo lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpih-add1.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/libgcrypt-grub/mpi/mpih-add1.c' object='lib/libgcrypt-grub/mpi/mpi_module-mpih-add1.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mpi_module_CPPFLAGS) $(CPPFLAGS) $(mpi_module_CFLAGS) $(CFLAGS) -c -o lib/libgcrypt-grub/mpi/mpi_module-mpih-add1.o `test -f 'lib/libgcrypt-grub/mpi/mpih-add1.c' || echo '$(srcdir)/'`lib/libgcrypt-grub/mpi/mpih-add1.c - -lib/libgcrypt-grub/mpi/mpi_module-mpih-add1.obj: lib/libgcrypt-grub/mpi/mpih-add1.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mpi_module_CPPFLAGS) $(CPPFLAGS) $(mpi_module_CFLAGS) $(CFLAGS) -MT lib/libgcrypt-grub/mpi/mpi_module-mpih-add1.obj -MD -MP -MF lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpih-add1.Tpo -c -o lib/libgcrypt-grub/mpi/mpi_module-mpih-add1.obj `if test -f 'lib/libgcrypt-grub/mpi/mpih-add1.c'; then $(CYGPATH_W) 'lib/libgcrypt-grub/mpi/mpih-add1.c'; else $(CYGPATH_W) '$(srcdir)/lib/libgcrypt-grub/mpi/mpih-add1.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpih-add1.Tpo lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpih-add1.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/libgcrypt-grub/mpi/mpih-add1.c' object='lib/libgcrypt-grub/mpi/mpi_module-mpih-add1.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mpi_module_CPPFLAGS) $(CPPFLAGS) $(mpi_module_CFLAGS) $(CFLAGS) -c -o lib/libgcrypt-grub/mpi/mpi_module-mpih-add1.obj `if test -f 'lib/libgcrypt-grub/mpi/mpih-add1.c'; then $(CYGPATH_W) 'lib/libgcrypt-grub/mpi/mpih-add1.c'; else $(CYGPATH_W) '$(srcdir)/lib/libgcrypt-grub/mpi/mpih-add1.c'; fi` - -lib/libgcrypt-grub/mpi/mpi_module-mpih-sub1.o: lib/libgcrypt-grub/mpi/mpih-sub1.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mpi_module_CPPFLAGS) $(CPPFLAGS) $(mpi_module_CFLAGS) $(CFLAGS) -MT lib/libgcrypt-grub/mpi/mpi_module-mpih-sub1.o -MD -MP -MF lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpih-sub1.Tpo -c -o lib/libgcrypt-grub/mpi/mpi_module-mpih-sub1.o `test -f 'lib/libgcrypt-grub/mpi/mpih-sub1.c' || echo '$(srcdir)/'`lib/libgcrypt-grub/mpi/mpih-sub1.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpih-sub1.Tpo lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpih-sub1.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/libgcrypt-grub/mpi/mpih-sub1.c' object='lib/libgcrypt-grub/mpi/mpi_module-mpih-sub1.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mpi_module_CPPFLAGS) $(CPPFLAGS) $(mpi_module_CFLAGS) $(CFLAGS) -c -o lib/libgcrypt-grub/mpi/mpi_module-mpih-sub1.o `test -f 'lib/libgcrypt-grub/mpi/mpih-sub1.c' || echo '$(srcdir)/'`lib/libgcrypt-grub/mpi/mpih-sub1.c - -lib/libgcrypt-grub/mpi/mpi_module-mpih-sub1.obj: lib/libgcrypt-grub/mpi/mpih-sub1.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mpi_module_CPPFLAGS) $(CPPFLAGS) $(mpi_module_CFLAGS) $(CFLAGS) -MT lib/libgcrypt-grub/mpi/mpi_module-mpih-sub1.obj -MD -MP -MF lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpih-sub1.Tpo -c -o lib/libgcrypt-grub/mpi/mpi_module-mpih-sub1.obj `if test -f 'lib/libgcrypt-grub/mpi/mpih-sub1.c'; then $(CYGPATH_W) 'lib/libgcrypt-grub/mpi/mpih-sub1.c'; else $(CYGPATH_W) '$(srcdir)/lib/libgcrypt-grub/mpi/mpih-sub1.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpih-sub1.Tpo lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpih-sub1.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/libgcrypt-grub/mpi/mpih-sub1.c' object='lib/libgcrypt-grub/mpi/mpi_module-mpih-sub1.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mpi_module_CPPFLAGS) $(CPPFLAGS) $(mpi_module_CFLAGS) $(CFLAGS) -c -o lib/libgcrypt-grub/mpi/mpi_module-mpih-sub1.obj `if test -f 'lib/libgcrypt-grub/mpi/mpih-sub1.c'; then $(CYGPATH_W) 'lib/libgcrypt-grub/mpi/mpih-sub1.c'; else $(CYGPATH_W) '$(srcdir)/lib/libgcrypt-grub/mpi/mpih-sub1.c'; fi` - -lib/libgcrypt-grub/mpi/mpi_module-mpih-div.o: lib/libgcrypt-grub/mpi/mpih-div.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mpi_module_CPPFLAGS) $(CPPFLAGS) $(mpi_module_CFLAGS) $(CFLAGS) -MT lib/libgcrypt-grub/mpi/mpi_module-mpih-div.o -MD -MP -MF lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpih-div.Tpo -c -o lib/libgcrypt-grub/mpi/mpi_module-mpih-div.o `test -f 'lib/libgcrypt-grub/mpi/mpih-div.c' || echo '$(srcdir)/'`lib/libgcrypt-grub/mpi/mpih-div.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpih-div.Tpo lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpih-div.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/libgcrypt-grub/mpi/mpih-div.c' object='lib/libgcrypt-grub/mpi/mpi_module-mpih-div.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mpi_module_CPPFLAGS) $(CPPFLAGS) $(mpi_module_CFLAGS) $(CFLAGS) -c -o lib/libgcrypt-grub/mpi/mpi_module-mpih-div.o `test -f 'lib/libgcrypt-grub/mpi/mpih-div.c' || echo '$(srcdir)/'`lib/libgcrypt-grub/mpi/mpih-div.c - -lib/libgcrypt-grub/mpi/mpi_module-mpih-div.obj: lib/libgcrypt-grub/mpi/mpih-div.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mpi_module_CPPFLAGS) $(CPPFLAGS) $(mpi_module_CFLAGS) $(CFLAGS) -MT lib/libgcrypt-grub/mpi/mpi_module-mpih-div.obj -MD -MP -MF lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpih-div.Tpo -c -o lib/libgcrypt-grub/mpi/mpi_module-mpih-div.obj `if test -f 'lib/libgcrypt-grub/mpi/mpih-div.c'; then $(CYGPATH_W) 'lib/libgcrypt-grub/mpi/mpih-div.c'; else $(CYGPATH_W) '$(srcdir)/lib/libgcrypt-grub/mpi/mpih-div.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpih-div.Tpo lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpih-div.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/libgcrypt-grub/mpi/mpih-div.c' object='lib/libgcrypt-grub/mpi/mpi_module-mpih-div.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mpi_module_CPPFLAGS) $(CPPFLAGS) $(mpi_module_CFLAGS) $(CFLAGS) -c -o lib/libgcrypt-grub/mpi/mpi_module-mpih-div.obj `if test -f 'lib/libgcrypt-grub/mpi/mpih-div.c'; then $(CYGPATH_W) 'lib/libgcrypt-grub/mpi/mpih-div.c'; else $(CYGPATH_W) '$(srcdir)/lib/libgcrypt-grub/mpi/mpih-div.c'; fi` - -lib/libgcrypt-grub/mpi/mpi_module-mpicoder.o: lib/libgcrypt-grub/mpi/mpicoder.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mpi_module_CPPFLAGS) $(CPPFLAGS) $(mpi_module_CFLAGS) $(CFLAGS) -MT lib/libgcrypt-grub/mpi/mpi_module-mpicoder.o -MD -MP -MF lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpicoder.Tpo -c -o lib/libgcrypt-grub/mpi/mpi_module-mpicoder.o `test -f 'lib/libgcrypt-grub/mpi/mpicoder.c' || echo '$(srcdir)/'`lib/libgcrypt-grub/mpi/mpicoder.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpicoder.Tpo lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpicoder.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/libgcrypt-grub/mpi/mpicoder.c' object='lib/libgcrypt-grub/mpi/mpi_module-mpicoder.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mpi_module_CPPFLAGS) $(CPPFLAGS) $(mpi_module_CFLAGS) $(CFLAGS) -c -o lib/libgcrypt-grub/mpi/mpi_module-mpicoder.o `test -f 'lib/libgcrypt-grub/mpi/mpicoder.c' || echo '$(srcdir)/'`lib/libgcrypt-grub/mpi/mpicoder.c - -lib/libgcrypt-grub/mpi/mpi_module-mpicoder.obj: lib/libgcrypt-grub/mpi/mpicoder.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mpi_module_CPPFLAGS) $(CPPFLAGS) $(mpi_module_CFLAGS) $(CFLAGS) -MT lib/libgcrypt-grub/mpi/mpi_module-mpicoder.obj -MD -MP -MF lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpicoder.Tpo -c -o lib/libgcrypt-grub/mpi/mpi_module-mpicoder.obj `if test -f 'lib/libgcrypt-grub/mpi/mpicoder.c'; then $(CYGPATH_W) 'lib/libgcrypt-grub/mpi/mpicoder.c'; else $(CYGPATH_W) '$(srcdir)/lib/libgcrypt-grub/mpi/mpicoder.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpicoder.Tpo lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpicoder.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/libgcrypt-grub/mpi/mpicoder.c' object='lib/libgcrypt-grub/mpi/mpi_module-mpicoder.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mpi_module_CPPFLAGS) $(CPPFLAGS) $(mpi_module_CFLAGS) $(CFLAGS) -c -o lib/libgcrypt-grub/mpi/mpi_module-mpicoder.obj `if test -f 'lib/libgcrypt-grub/mpi/mpicoder.c'; then $(CYGPATH_W) 'lib/libgcrypt-grub/mpi/mpicoder.c'; else $(CYGPATH_W) '$(srcdir)/lib/libgcrypt-grub/mpi/mpicoder.c'; fi` - -lib/libgcrypt-grub/mpi/mpi_module-mpih-rshift.o: lib/libgcrypt-grub/mpi/mpih-rshift.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mpi_module_CPPFLAGS) $(CPPFLAGS) $(mpi_module_CFLAGS) $(CFLAGS) -MT lib/libgcrypt-grub/mpi/mpi_module-mpih-rshift.o -MD -MP -MF lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpih-rshift.Tpo -c -o lib/libgcrypt-grub/mpi/mpi_module-mpih-rshift.o `test -f 'lib/libgcrypt-grub/mpi/mpih-rshift.c' || echo '$(srcdir)/'`lib/libgcrypt-grub/mpi/mpih-rshift.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpih-rshift.Tpo lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpih-rshift.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/libgcrypt-grub/mpi/mpih-rshift.c' object='lib/libgcrypt-grub/mpi/mpi_module-mpih-rshift.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mpi_module_CPPFLAGS) $(CPPFLAGS) $(mpi_module_CFLAGS) $(CFLAGS) -c -o lib/libgcrypt-grub/mpi/mpi_module-mpih-rshift.o `test -f 'lib/libgcrypt-grub/mpi/mpih-rshift.c' || echo '$(srcdir)/'`lib/libgcrypt-grub/mpi/mpih-rshift.c - -lib/libgcrypt-grub/mpi/mpi_module-mpih-rshift.obj: lib/libgcrypt-grub/mpi/mpih-rshift.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mpi_module_CPPFLAGS) $(CPPFLAGS) $(mpi_module_CFLAGS) $(CFLAGS) -MT lib/libgcrypt-grub/mpi/mpi_module-mpih-rshift.obj -MD -MP -MF lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpih-rshift.Tpo -c -o lib/libgcrypt-grub/mpi/mpi_module-mpih-rshift.obj `if test -f 'lib/libgcrypt-grub/mpi/mpih-rshift.c'; then $(CYGPATH_W) 'lib/libgcrypt-grub/mpi/mpih-rshift.c'; else $(CYGPATH_W) '$(srcdir)/lib/libgcrypt-grub/mpi/mpih-rshift.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpih-rshift.Tpo lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpih-rshift.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/libgcrypt-grub/mpi/mpih-rshift.c' object='lib/libgcrypt-grub/mpi/mpi_module-mpih-rshift.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mpi_module_CPPFLAGS) $(CPPFLAGS) $(mpi_module_CFLAGS) $(CFLAGS) -c -o lib/libgcrypt-grub/mpi/mpi_module-mpih-rshift.obj `if test -f 'lib/libgcrypt-grub/mpi/mpih-rshift.c'; then $(CYGPATH_W) 'lib/libgcrypt-grub/mpi/mpih-rshift.c'; else $(CYGPATH_W) '$(srcdir)/lib/libgcrypt-grub/mpi/mpih-rshift.c'; fi` - -lib/libgcrypt-grub/mpi/mpi_module-mpi-inline.o: lib/libgcrypt-grub/mpi/mpi-inline.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mpi_module_CPPFLAGS) $(CPPFLAGS) $(mpi_module_CFLAGS) $(CFLAGS) -MT lib/libgcrypt-grub/mpi/mpi_module-mpi-inline.o -MD -MP -MF lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpi-inline.Tpo -c -o lib/libgcrypt-grub/mpi/mpi_module-mpi-inline.o `test -f 'lib/libgcrypt-grub/mpi/mpi-inline.c' || echo '$(srcdir)/'`lib/libgcrypt-grub/mpi/mpi-inline.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpi-inline.Tpo lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpi-inline.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/libgcrypt-grub/mpi/mpi-inline.c' object='lib/libgcrypt-grub/mpi/mpi_module-mpi-inline.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mpi_module_CPPFLAGS) $(CPPFLAGS) $(mpi_module_CFLAGS) $(CFLAGS) -c -o lib/libgcrypt-grub/mpi/mpi_module-mpi-inline.o `test -f 'lib/libgcrypt-grub/mpi/mpi-inline.c' || echo '$(srcdir)/'`lib/libgcrypt-grub/mpi/mpi-inline.c - -lib/libgcrypt-grub/mpi/mpi_module-mpi-inline.obj: lib/libgcrypt-grub/mpi/mpi-inline.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mpi_module_CPPFLAGS) $(CPPFLAGS) $(mpi_module_CFLAGS) $(CFLAGS) -MT lib/libgcrypt-grub/mpi/mpi_module-mpi-inline.obj -MD -MP -MF lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpi-inline.Tpo -c -o lib/libgcrypt-grub/mpi/mpi_module-mpi-inline.obj `if test -f 'lib/libgcrypt-grub/mpi/mpi-inline.c'; then $(CYGPATH_W) 'lib/libgcrypt-grub/mpi/mpi-inline.c'; else $(CYGPATH_W) '$(srcdir)/lib/libgcrypt-grub/mpi/mpi-inline.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpi-inline.Tpo lib/libgcrypt-grub/mpi/$(DEPDIR)/mpi_module-mpi-inline.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/libgcrypt-grub/mpi/mpi-inline.c' object='lib/libgcrypt-grub/mpi/mpi_module-mpi-inline.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mpi_module_CPPFLAGS) $(CPPFLAGS) $(mpi_module_CFLAGS) $(CFLAGS) -c -o lib/libgcrypt-grub/mpi/mpi_module-mpi-inline.obj `if test -f 'lib/libgcrypt-grub/mpi/mpi-inline.c'; then $(CYGPATH_W) 'lib/libgcrypt-grub/mpi/mpi-inline.c'; else $(CYGPATH_W) '$(srcdir)/lib/libgcrypt-grub/mpi/mpi-inline.c'; fi` - -lib/libgcrypt_wrap/mpi_module-mem.o: lib/libgcrypt_wrap/mem.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mpi_module_CPPFLAGS) $(CPPFLAGS) $(mpi_module_CFLAGS) $(CFLAGS) -MT lib/libgcrypt_wrap/mpi_module-mem.o -MD -MP -MF lib/libgcrypt_wrap/$(DEPDIR)/mpi_module-mem.Tpo -c -o lib/libgcrypt_wrap/mpi_module-mem.o `test -f 'lib/libgcrypt_wrap/mem.c' || echo '$(srcdir)/'`lib/libgcrypt_wrap/mem.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/libgcrypt_wrap/$(DEPDIR)/mpi_module-mem.Tpo lib/libgcrypt_wrap/$(DEPDIR)/mpi_module-mem.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/libgcrypt_wrap/mem.c' object='lib/libgcrypt_wrap/mpi_module-mem.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mpi_module_CPPFLAGS) $(CPPFLAGS) $(mpi_module_CFLAGS) $(CFLAGS) -c -o lib/libgcrypt_wrap/mpi_module-mem.o `test -f 'lib/libgcrypt_wrap/mem.c' || echo '$(srcdir)/'`lib/libgcrypt_wrap/mem.c - -lib/libgcrypt_wrap/mpi_module-mem.obj: lib/libgcrypt_wrap/mem.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mpi_module_CPPFLAGS) $(CPPFLAGS) $(mpi_module_CFLAGS) $(CFLAGS) -MT lib/libgcrypt_wrap/mpi_module-mem.obj -MD -MP -MF lib/libgcrypt_wrap/$(DEPDIR)/mpi_module-mem.Tpo -c -o lib/libgcrypt_wrap/mpi_module-mem.obj `if test -f 'lib/libgcrypt_wrap/mem.c'; then $(CYGPATH_W) 'lib/libgcrypt_wrap/mem.c'; else $(CYGPATH_W) '$(srcdir)/lib/libgcrypt_wrap/mem.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/libgcrypt_wrap/$(DEPDIR)/mpi_module-mem.Tpo lib/libgcrypt_wrap/$(DEPDIR)/mpi_module-mem.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/libgcrypt_wrap/mem.c' object='lib/libgcrypt_wrap/mpi_module-mem.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mpi_module_CPPFLAGS) $(CPPFLAGS) $(mpi_module_CFLAGS) $(CFLAGS) -c -o lib/libgcrypt_wrap/mpi_module-mem.obj `if test -f 'lib/libgcrypt_wrap/mem.c'; then $(CYGPATH_W) 'lib/libgcrypt_wrap/mem.c'; else $(CYGPATH_W) '$(srcdir)/lib/libgcrypt_wrap/mem.c'; fi` - -parttool/msdospart_module-msdospart.o: parttool/msdospart.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(msdospart_module_CPPFLAGS) $(CPPFLAGS) $(msdospart_module_CFLAGS) $(CFLAGS) -MT parttool/msdospart_module-msdospart.o -MD -MP -MF parttool/$(DEPDIR)/msdospart_module-msdospart.Tpo -c -o parttool/msdospart_module-msdospart.o `test -f 'parttool/msdospart.c' || echo '$(srcdir)/'`parttool/msdospart.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) parttool/$(DEPDIR)/msdospart_module-msdospart.Tpo parttool/$(DEPDIR)/msdospart_module-msdospart.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='parttool/msdospart.c' object='parttool/msdospart_module-msdospart.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(msdospart_module_CPPFLAGS) $(CPPFLAGS) $(msdospart_module_CFLAGS) $(CFLAGS) -c -o parttool/msdospart_module-msdospart.o `test -f 'parttool/msdospart.c' || echo '$(srcdir)/'`parttool/msdospart.c - -parttool/msdospart_module-msdospart.obj: parttool/msdospart.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(msdospart_module_CPPFLAGS) $(CPPFLAGS) $(msdospart_module_CFLAGS) $(CFLAGS) -MT parttool/msdospart_module-msdospart.obj -MD -MP -MF parttool/$(DEPDIR)/msdospart_module-msdospart.Tpo -c -o parttool/msdospart_module-msdospart.obj `if test -f 'parttool/msdospart.c'; then $(CYGPATH_W) 'parttool/msdospart.c'; else $(CYGPATH_W) '$(srcdir)/parttool/msdospart.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) parttool/$(DEPDIR)/msdospart_module-msdospart.Tpo parttool/$(DEPDIR)/msdospart_module-msdospart.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='parttool/msdospart.c' object='parttool/msdospart_module-msdospart.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(msdospart_module_CPPFLAGS) $(CPPFLAGS) $(msdospart_module_CFLAGS) $(CFLAGS) -c -o parttool/msdospart_module-msdospart.obj `if test -f 'parttool/msdospart.c'; then $(CYGPATH_W) 'parttool/msdospart.c'; else $(CYGPATH_W) '$(srcdir)/parttool/msdospart.c'; fi` - -tests/mul_test_module-mul_test.o: tests/mul_test.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mul_test_module_CPPFLAGS) $(CPPFLAGS) $(mul_test_module_CFLAGS) $(CFLAGS) -MT tests/mul_test_module-mul_test.o -MD -MP -MF tests/$(DEPDIR)/mul_test_module-mul_test.Tpo -c -o tests/mul_test_module-mul_test.o `test -f 'tests/mul_test.c' || echo '$(srcdir)/'`tests/mul_test.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) tests/$(DEPDIR)/mul_test_module-mul_test.Tpo tests/$(DEPDIR)/mul_test_module-mul_test.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='tests/mul_test.c' object='tests/mul_test_module-mul_test.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mul_test_module_CPPFLAGS) $(CPPFLAGS) $(mul_test_module_CFLAGS) $(CFLAGS) -c -o tests/mul_test_module-mul_test.o `test -f 'tests/mul_test.c' || echo '$(srcdir)/'`tests/mul_test.c - -tests/mul_test_module-mul_test.obj: tests/mul_test.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mul_test_module_CPPFLAGS) $(CPPFLAGS) $(mul_test_module_CFLAGS) $(CFLAGS) -MT tests/mul_test_module-mul_test.obj -MD -MP -MF tests/$(DEPDIR)/mul_test_module-mul_test.Tpo -c -o tests/mul_test_module-mul_test.obj `if test -f 'tests/mul_test.c'; then $(CYGPATH_W) 'tests/mul_test.c'; else $(CYGPATH_W) '$(srcdir)/tests/mul_test.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) tests/$(DEPDIR)/mul_test_module-mul_test.Tpo tests/$(DEPDIR)/mul_test_module-mul_test.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='tests/mul_test.c' object='tests/mul_test_module-mul_test.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mul_test_module_CPPFLAGS) $(CPPFLAGS) $(mul_test_module_CFLAGS) $(CFLAGS) -c -o tests/mul_test_module-mul_test.obj `if test -f 'tests/mul_test.c'; then $(CYGPATH_W) 'tests/mul_test.c'; else $(CYGPATH_W) '$(srcdir)/tests/mul_test.c'; fi` - -loader/i386/multiboot_module-multiboot_mbi.o: loader/i386/multiboot_mbi.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(multiboot_module_CPPFLAGS) $(CPPFLAGS) $(multiboot_module_CFLAGS) $(CFLAGS) -MT loader/i386/multiboot_module-multiboot_mbi.o -MD -MP -MF loader/i386/$(DEPDIR)/multiboot_module-multiboot_mbi.Tpo -c -o loader/i386/multiboot_module-multiboot_mbi.o `test -f 'loader/i386/multiboot_mbi.c' || echo '$(srcdir)/'`loader/i386/multiboot_mbi.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) loader/i386/$(DEPDIR)/multiboot_module-multiboot_mbi.Tpo loader/i386/$(DEPDIR)/multiboot_module-multiboot_mbi.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='loader/i386/multiboot_mbi.c' object='loader/i386/multiboot_module-multiboot_mbi.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(multiboot_module_CPPFLAGS) $(CPPFLAGS) $(multiboot_module_CFLAGS) $(CFLAGS) -c -o loader/i386/multiboot_module-multiboot_mbi.o `test -f 'loader/i386/multiboot_mbi.c' || echo '$(srcdir)/'`loader/i386/multiboot_mbi.c - -loader/i386/multiboot_module-multiboot_mbi.obj: loader/i386/multiboot_mbi.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(multiboot_module_CPPFLAGS) $(CPPFLAGS) $(multiboot_module_CFLAGS) $(CFLAGS) -MT loader/i386/multiboot_module-multiboot_mbi.obj -MD -MP -MF loader/i386/$(DEPDIR)/multiboot_module-multiboot_mbi.Tpo -c -o loader/i386/multiboot_module-multiboot_mbi.obj `if test -f 'loader/i386/multiboot_mbi.c'; then $(CYGPATH_W) 'loader/i386/multiboot_mbi.c'; else $(CYGPATH_W) '$(srcdir)/loader/i386/multiboot_mbi.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) loader/i386/$(DEPDIR)/multiboot_module-multiboot_mbi.Tpo loader/i386/$(DEPDIR)/multiboot_module-multiboot_mbi.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='loader/i386/multiboot_mbi.c' object='loader/i386/multiboot_module-multiboot_mbi.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(multiboot_module_CPPFLAGS) $(CPPFLAGS) $(multiboot_module_CFLAGS) $(CFLAGS) -c -o loader/i386/multiboot_module-multiboot_mbi.obj `if test -f 'loader/i386/multiboot_mbi.c'; then $(CYGPATH_W) 'loader/i386/multiboot_mbi.c'; else $(CYGPATH_W) '$(srcdir)/loader/i386/multiboot_mbi.c'; fi` - -loader/multiboot_module-multiboot.o: loader/multiboot.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(multiboot_module_CPPFLAGS) $(CPPFLAGS) $(multiboot_module_CFLAGS) $(CFLAGS) -MT loader/multiboot_module-multiboot.o -MD -MP -MF loader/$(DEPDIR)/multiboot_module-multiboot.Tpo -c -o loader/multiboot_module-multiboot.o `test -f 'loader/multiboot.c' || echo '$(srcdir)/'`loader/multiboot.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) loader/$(DEPDIR)/multiboot_module-multiboot.Tpo loader/$(DEPDIR)/multiboot_module-multiboot.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='loader/multiboot.c' object='loader/multiboot_module-multiboot.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(multiboot_module_CPPFLAGS) $(CPPFLAGS) $(multiboot_module_CFLAGS) $(CFLAGS) -c -o loader/multiboot_module-multiboot.o `test -f 'loader/multiboot.c' || echo '$(srcdir)/'`loader/multiboot.c - -loader/multiboot_module-multiboot.obj: loader/multiboot.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(multiboot_module_CPPFLAGS) $(CPPFLAGS) $(multiboot_module_CFLAGS) $(CFLAGS) -MT loader/multiboot_module-multiboot.obj -MD -MP -MF loader/$(DEPDIR)/multiboot_module-multiboot.Tpo -c -o loader/multiboot_module-multiboot.obj `if test -f 'loader/multiboot.c'; then $(CYGPATH_W) 'loader/multiboot.c'; else $(CYGPATH_W) '$(srcdir)/loader/multiboot.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) loader/$(DEPDIR)/multiboot_module-multiboot.Tpo loader/$(DEPDIR)/multiboot_module-multiboot.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='loader/multiboot.c' object='loader/multiboot_module-multiboot.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(multiboot_module_CPPFLAGS) $(CPPFLAGS) $(multiboot_module_CFLAGS) $(CFLAGS) -c -o loader/multiboot_module-multiboot.obj `if test -f 'loader/multiboot.c'; then $(CYGPATH_W) 'loader/multiboot.c'; else $(CYGPATH_W) '$(srcdir)/loader/multiboot.c'; fi` - -loader/multiboot2_module-multiboot.o: loader/multiboot.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(multiboot2_module_CPPFLAGS) $(CPPFLAGS) $(multiboot2_module_CFLAGS) $(CFLAGS) -MT loader/multiboot2_module-multiboot.o -MD -MP -MF loader/$(DEPDIR)/multiboot2_module-multiboot.Tpo -c -o loader/multiboot2_module-multiboot.o `test -f 'loader/multiboot.c' || echo '$(srcdir)/'`loader/multiboot.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) loader/$(DEPDIR)/multiboot2_module-multiboot.Tpo loader/$(DEPDIR)/multiboot2_module-multiboot.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='loader/multiboot.c' object='loader/multiboot2_module-multiboot.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(multiboot2_module_CPPFLAGS) $(CPPFLAGS) $(multiboot2_module_CFLAGS) $(CFLAGS) -c -o loader/multiboot2_module-multiboot.o `test -f 'loader/multiboot.c' || echo '$(srcdir)/'`loader/multiboot.c - -loader/multiboot2_module-multiboot.obj: loader/multiboot.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(multiboot2_module_CPPFLAGS) $(CPPFLAGS) $(multiboot2_module_CFLAGS) $(CFLAGS) -MT loader/multiboot2_module-multiboot.obj -MD -MP -MF loader/$(DEPDIR)/multiboot2_module-multiboot.Tpo -c -o loader/multiboot2_module-multiboot.obj `if test -f 'loader/multiboot.c'; then $(CYGPATH_W) 'loader/multiboot.c'; else $(CYGPATH_W) '$(srcdir)/loader/multiboot.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) loader/$(DEPDIR)/multiboot2_module-multiboot.Tpo loader/$(DEPDIR)/multiboot2_module-multiboot.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='loader/multiboot.c' object='loader/multiboot2_module-multiboot.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(multiboot2_module_CPPFLAGS) $(CPPFLAGS) $(multiboot2_module_CFLAGS) $(CFLAGS) -c -o loader/multiboot2_module-multiboot.obj `if test -f 'loader/multiboot.c'; then $(CYGPATH_W) 'loader/multiboot.c'; else $(CYGPATH_W) '$(srcdir)/loader/multiboot.c'; fi` - -loader/multiboot2_module-multiboot_mbi2.o: loader/multiboot_mbi2.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(multiboot2_module_CPPFLAGS) $(CPPFLAGS) $(multiboot2_module_CFLAGS) $(CFLAGS) -MT loader/multiboot2_module-multiboot_mbi2.o -MD -MP -MF loader/$(DEPDIR)/multiboot2_module-multiboot_mbi2.Tpo -c -o loader/multiboot2_module-multiboot_mbi2.o `test -f 'loader/multiboot_mbi2.c' || echo '$(srcdir)/'`loader/multiboot_mbi2.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) loader/$(DEPDIR)/multiboot2_module-multiboot_mbi2.Tpo loader/$(DEPDIR)/multiboot2_module-multiboot_mbi2.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='loader/multiboot_mbi2.c' object='loader/multiboot2_module-multiboot_mbi2.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(multiboot2_module_CPPFLAGS) $(CPPFLAGS) $(multiboot2_module_CFLAGS) $(CFLAGS) -c -o loader/multiboot2_module-multiboot_mbi2.o `test -f 'loader/multiboot_mbi2.c' || echo '$(srcdir)/'`loader/multiboot_mbi2.c - -loader/multiboot2_module-multiboot_mbi2.obj: loader/multiboot_mbi2.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(multiboot2_module_CPPFLAGS) $(CPPFLAGS) $(multiboot2_module_CFLAGS) $(CFLAGS) -MT loader/multiboot2_module-multiboot_mbi2.obj -MD -MP -MF loader/$(DEPDIR)/multiboot2_module-multiboot_mbi2.Tpo -c -o loader/multiboot2_module-multiboot_mbi2.obj `if test -f 'loader/multiboot_mbi2.c'; then $(CYGPATH_W) 'loader/multiboot_mbi2.c'; else $(CYGPATH_W) '$(srcdir)/loader/multiboot_mbi2.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) loader/$(DEPDIR)/multiboot2_module-multiboot_mbi2.Tpo loader/$(DEPDIR)/multiboot2_module-multiboot_mbi2.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='loader/multiboot_mbi2.c' object='loader/multiboot2_module-multiboot_mbi2.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(multiboot2_module_CPPFLAGS) $(CPPFLAGS) $(multiboot2_module_CFLAGS) $(CFLAGS) -c -o loader/multiboot2_module-multiboot_mbi2.obj `if test -f 'loader/multiboot_mbi2.c'; then $(CYGPATH_W) 'loader/multiboot_mbi2.c'; else $(CYGPATH_W) '$(srcdir)/loader/multiboot_mbi2.c'; fi` - -disk/ieee1275/nand_module-nand.o: disk/ieee1275/nand.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(nand_module_CPPFLAGS) $(CPPFLAGS) $(nand_module_CFLAGS) $(CFLAGS) -MT disk/ieee1275/nand_module-nand.o -MD -MP -MF disk/ieee1275/$(DEPDIR)/nand_module-nand.Tpo -c -o disk/ieee1275/nand_module-nand.o `test -f 'disk/ieee1275/nand.c' || echo '$(srcdir)/'`disk/ieee1275/nand.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) disk/ieee1275/$(DEPDIR)/nand_module-nand.Tpo disk/ieee1275/$(DEPDIR)/nand_module-nand.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='disk/ieee1275/nand.c' object='disk/ieee1275/nand_module-nand.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(nand_module_CPPFLAGS) $(CPPFLAGS) $(nand_module_CFLAGS) $(CFLAGS) -c -o disk/ieee1275/nand_module-nand.o `test -f 'disk/ieee1275/nand.c' || echo '$(srcdir)/'`disk/ieee1275/nand.c - -disk/ieee1275/nand_module-nand.obj: disk/ieee1275/nand.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(nand_module_CPPFLAGS) $(CPPFLAGS) $(nand_module_CFLAGS) $(CFLAGS) -MT disk/ieee1275/nand_module-nand.obj -MD -MP -MF disk/ieee1275/$(DEPDIR)/nand_module-nand.Tpo -c -o disk/ieee1275/nand_module-nand.obj `if test -f 'disk/ieee1275/nand.c'; then $(CYGPATH_W) 'disk/ieee1275/nand.c'; else $(CYGPATH_W) '$(srcdir)/disk/ieee1275/nand.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) disk/ieee1275/$(DEPDIR)/nand_module-nand.Tpo disk/ieee1275/$(DEPDIR)/nand_module-nand.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='disk/ieee1275/nand.c' object='disk/ieee1275/nand_module-nand.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(nand_module_CPPFLAGS) $(CPPFLAGS) $(nand_module_CFLAGS) $(CFLAGS) -c -o disk/ieee1275/nand_module-nand.obj `if test -f 'disk/ieee1275/nand.c'; then $(CYGPATH_W) 'disk/ieee1275/nand.c'; else $(CYGPATH_W) '$(srcdir)/disk/ieee1275/nand.c'; fi` - -commands/nativedisk_module-nativedisk.o: commands/nativedisk.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(nativedisk_module_CPPFLAGS) $(CPPFLAGS) $(nativedisk_module_CFLAGS) $(CFLAGS) -MT commands/nativedisk_module-nativedisk.o -MD -MP -MF commands/$(DEPDIR)/nativedisk_module-nativedisk.Tpo -c -o commands/nativedisk_module-nativedisk.o `test -f 'commands/nativedisk.c' || echo '$(srcdir)/'`commands/nativedisk.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/$(DEPDIR)/nativedisk_module-nativedisk.Tpo commands/$(DEPDIR)/nativedisk_module-nativedisk.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/nativedisk.c' object='commands/nativedisk_module-nativedisk.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(nativedisk_module_CPPFLAGS) $(CPPFLAGS) $(nativedisk_module_CFLAGS) $(CFLAGS) -c -o commands/nativedisk_module-nativedisk.o `test -f 'commands/nativedisk.c' || echo '$(srcdir)/'`commands/nativedisk.c - -commands/nativedisk_module-nativedisk.obj: commands/nativedisk.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(nativedisk_module_CPPFLAGS) $(CPPFLAGS) $(nativedisk_module_CFLAGS) $(CFLAGS) -MT commands/nativedisk_module-nativedisk.obj -MD -MP -MF commands/$(DEPDIR)/nativedisk_module-nativedisk.Tpo -c -o commands/nativedisk_module-nativedisk.obj `if test -f 'commands/nativedisk.c'; then $(CYGPATH_W) 'commands/nativedisk.c'; else $(CYGPATH_W) '$(srcdir)/commands/nativedisk.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/$(DEPDIR)/nativedisk_module-nativedisk.Tpo commands/$(DEPDIR)/nativedisk_module-nativedisk.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/nativedisk.c' object='commands/nativedisk_module-nativedisk.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(nativedisk_module_CPPFLAGS) $(CPPFLAGS) $(nativedisk_module_CFLAGS) $(CFLAGS) -c -o commands/nativedisk_module-nativedisk.obj `if test -f 'commands/nativedisk.c'; then $(CYGPATH_W) 'commands/nativedisk.c'; else $(CYGPATH_W) '$(srcdir)/commands/nativedisk.c'; fi` - -net/net_module-net.o: net/net.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(net_module_CPPFLAGS) $(CPPFLAGS) $(net_module_CFLAGS) $(CFLAGS) -MT net/net_module-net.o -MD -MP -MF net/$(DEPDIR)/net_module-net.Tpo -c -o net/net_module-net.o `test -f 'net/net.c' || echo '$(srcdir)/'`net/net.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) net/$(DEPDIR)/net_module-net.Tpo net/$(DEPDIR)/net_module-net.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='net/net.c' object='net/net_module-net.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(net_module_CPPFLAGS) $(CPPFLAGS) $(net_module_CFLAGS) $(CFLAGS) -c -o net/net_module-net.o `test -f 'net/net.c' || echo '$(srcdir)/'`net/net.c - -net/net_module-net.obj: net/net.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(net_module_CPPFLAGS) $(CPPFLAGS) $(net_module_CFLAGS) $(CFLAGS) -MT net/net_module-net.obj -MD -MP -MF net/$(DEPDIR)/net_module-net.Tpo -c -o net/net_module-net.obj `if test -f 'net/net.c'; then $(CYGPATH_W) 'net/net.c'; else $(CYGPATH_W) '$(srcdir)/net/net.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) net/$(DEPDIR)/net_module-net.Tpo net/$(DEPDIR)/net_module-net.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='net/net.c' object='net/net_module-net.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(net_module_CPPFLAGS) $(CPPFLAGS) $(net_module_CFLAGS) $(CFLAGS) -c -o net/net_module-net.obj `if test -f 'net/net.c'; then $(CYGPATH_W) 'net/net.c'; else $(CYGPATH_W) '$(srcdir)/net/net.c'; fi` - -net/net_module-dns.o: net/dns.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(net_module_CPPFLAGS) $(CPPFLAGS) $(net_module_CFLAGS) $(CFLAGS) -MT net/net_module-dns.o -MD -MP -MF net/$(DEPDIR)/net_module-dns.Tpo -c -o net/net_module-dns.o `test -f 'net/dns.c' || echo '$(srcdir)/'`net/dns.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) net/$(DEPDIR)/net_module-dns.Tpo net/$(DEPDIR)/net_module-dns.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='net/dns.c' object='net/net_module-dns.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(net_module_CPPFLAGS) $(CPPFLAGS) $(net_module_CFLAGS) $(CFLAGS) -c -o net/net_module-dns.o `test -f 'net/dns.c' || echo '$(srcdir)/'`net/dns.c - -net/net_module-dns.obj: net/dns.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(net_module_CPPFLAGS) $(CPPFLAGS) $(net_module_CFLAGS) $(CFLAGS) -MT net/net_module-dns.obj -MD -MP -MF net/$(DEPDIR)/net_module-dns.Tpo -c -o net/net_module-dns.obj `if test -f 'net/dns.c'; then $(CYGPATH_W) 'net/dns.c'; else $(CYGPATH_W) '$(srcdir)/net/dns.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) net/$(DEPDIR)/net_module-dns.Tpo net/$(DEPDIR)/net_module-dns.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='net/dns.c' object='net/net_module-dns.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(net_module_CPPFLAGS) $(CPPFLAGS) $(net_module_CFLAGS) $(CFLAGS) -c -o net/net_module-dns.obj `if test -f 'net/dns.c'; then $(CYGPATH_W) 'net/dns.c'; else $(CYGPATH_W) '$(srcdir)/net/dns.c'; fi` - -net/net_module-bootp.o: net/bootp.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(net_module_CPPFLAGS) $(CPPFLAGS) $(net_module_CFLAGS) $(CFLAGS) -MT net/net_module-bootp.o -MD -MP -MF net/$(DEPDIR)/net_module-bootp.Tpo -c -o net/net_module-bootp.o `test -f 'net/bootp.c' || echo '$(srcdir)/'`net/bootp.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) net/$(DEPDIR)/net_module-bootp.Tpo net/$(DEPDIR)/net_module-bootp.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='net/bootp.c' object='net/net_module-bootp.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(net_module_CPPFLAGS) $(CPPFLAGS) $(net_module_CFLAGS) $(CFLAGS) -c -o net/net_module-bootp.o `test -f 'net/bootp.c' || echo '$(srcdir)/'`net/bootp.c - -net/net_module-bootp.obj: net/bootp.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(net_module_CPPFLAGS) $(CPPFLAGS) $(net_module_CFLAGS) $(CFLAGS) -MT net/net_module-bootp.obj -MD -MP -MF net/$(DEPDIR)/net_module-bootp.Tpo -c -o net/net_module-bootp.obj `if test -f 'net/bootp.c'; then $(CYGPATH_W) 'net/bootp.c'; else $(CYGPATH_W) '$(srcdir)/net/bootp.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) net/$(DEPDIR)/net_module-bootp.Tpo net/$(DEPDIR)/net_module-bootp.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='net/bootp.c' object='net/net_module-bootp.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(net_module_CPPFLAGS) $(CPPFLAGS) $(net_module_CFLAGS) $(CFLAGS) -c -o net/net_module-bootp.obj `if test -f 'net/bootp.c'; then $(CYGPATH_W) 'net/bootp.c'; else $(CYGPATH_W) '$(srcdir)/net/bootp.c'; fi` - -net/net_module-ip.o: net/ip.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(net_module_CPPFLAGS) $(CPPFLAGS) $(net_module_CFLAGS) $(CFLAGS) -MT net/net_module-ip.o -MD -MP -MF net/$(DEPDIR)/net_module-ip.Tpo -c -o net/net_module-ip.o `test -f 'net/ip.c' || echo '$(srcdir)/'`net/ip.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) net/$(DEPDIR)/net_module-ip.Tpo net/$(DEPDIR)/net_module-ip.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='net/ip.c' object='net/net_module-ip.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(net_module_CPPFLAGS) $(CPPFLAGS) $(net_module_CFLAGS) $(CFLAGS) -c -o net/net_module-ip.o `test -f 'net/ip.c' || echo '$(srcdir)/'`net/ip.c - -net/net_module-ip.obj: net/ip.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(net_module_CPPFLAGS) $(CPPFLAGS) $(net_module_CFLAGS) $(CFLAGS) -MT net/net_module-ip.obj -MD -MP -MF net/$(DEPDIR)/net_module-ip.Tpo -c -o net/net_module-ip.obj `if test -f 'net/ip.c'; then $(CYGPATH_W) 'net/ip.c'; else $(CYGPATH_W) '$(srcdir)/net/ip.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) net/$(DEPDIR)/net_module-ip.Tpo net/$(DEPDIR)/net_module-ip.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='net/ip.c' object='net/net_module-ip.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(net_module_CPPFLAGS) $(CPPFLAGS) $(net_module_CFLAGS) $(CFLAGS) -c -o net/net_module-ip.obj `if test -f 'net/ip.c'; then $(CYGPATH_W) 'net/ip.c'; else $(CYGPATH_W) '$(srcdir)/net/ip.c'; fi` - -net/net_module-udp.o: net/udp.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(net_module_CPPFLAGS) $(CPPFLAGS) $(net_module_CFLAGS) $(CFLAGS) -MT net/net_module-udp.o -MD -MP -MF net/$(DEPDIR)/net_module-udp.Tpo -c -o net/net_module-udp.o `test -f 'net/udp.c' || echo '$(srcdir)/'`net/udp.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) net/$(DEPDIR)/net_module-udp.Tpo net/$(DEPDIR)/net_module-udp.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='net/udp.c' object='net/net_module-udp.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(net_module_CPPFLAGS) $(CPPFLAGS) $(net_module_CFLAGS) $(CFLAGS) -c -o net/net_module-udp.o `test -f 'net/udp.c' || echo '$(srcdir)/'`net/udp.c - -net/net_module-udp.obj: net/udp.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(net_module_CPPFLAGS) $(CPPFLAGS) $(net_module_CFLAGS) $(CFLAGS) -MT net/net_module-udp.obj -MD -MP -MF net/$(DEPDIR)/net_module-udp.Tpo -c -o net/net_module-udp.obj `if test -f 'net/udp.c'; then $(CYGPATH_W) 'net/udp.c'; else $(CYGPATH_W) '$(srcdir)/net/udp.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) net/$(DEPDIR)/net_module-udp.Tpo net/$(DEPDIR)/net_module-udp.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='net/udp.c' object='net/net_module-udp.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(net_module_CPPFLAGS) $(CPPFLAGS) $(net_module_CFLAGS) $(CFLAGS) -c -o net/net_module-udp.obj `if test -f 'net/udp.c'; then $(CYGPATH_W) 'net/udp.c'; else $(CYGPATH_W) '$(srcdir)/net/udp.c'; fi` - -net/net_module-tcp.o: net/tcp.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(net_module_CPPFLAGS) $(CPPFLAGS) $(net_module_CFLAGS) $(CFLAGS) -MT net/net_module-tcp.o -MD -MP -MF net/$(DEPDIR)/net_module-tcp.Tpo -c -o net/net_module-tcp.o `test -f 'net/tcp.c' || echo '$(srcdir)/'`net/tcp.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) net/$(DEPDIR)/net_module-tcp.Tpo net/$(DEPDIR)/net_module-tcp.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='net/tcp.c' object='net/net_module-tcp.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(net_module_CPPFLAGS) $(CPPFLAGS) $(net_module_CFLAGS) $(CFLAGS) -c -o net/net_module-tcp.o `test -f 'net/tcp.c' || echo '$(srcdir)/'`net/tcp.c - -net/net_module-tcp.obj: net/tcp.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(net_module_CPPFLAGS) $(CPPFLAGS) $(net_module_CFLAGS) $(CFLAGS) -MT net/net_module-tcp.obj -MD -MP -MF net/$(DEPDIR)/net_module-tcp.Tpo -c -o net/net_module-tcp.obj `if test -f 'net/tcp.c'; then $(CYGPATH_W) 'net/tcp.c'; else $(CYGPATH_W) '$(srcdir)/net/tcp.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) net/$(DEPDIR)/net_module-tcp.Tpo net/$(DEPDIR)/net_module-tcp.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='net/tcp.c' object='net/net_module-tcp.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(net_module_CPPFLAGS) $(CPPFLAGS) $(net_module_CFLAGS) $(CFLAGS) -c -o net/net_module-tcp.obj `if test -f 'net/tcp.c'; then $(CYGPATH_W) 'net/tcp.c'; else $(CYGPATH_W) '$(srcdir)/net/tcp.c'; fi` - -net/net_module-icmp.o: net/icmp.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(net_module_CPPFLAGS) $(CPPFLAGS) $(net_module_CFLAGS) $(CFLAGS) -MT net/net_module-icmp.o -MD -MP -MF net/$(DEPDIR)/net_module-icmp.Tpo -c -o net/net_module-icmp.o `test -f 'net/icmp.c' || echo '$(srcdir)/'`net/icmp.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) net/$(DEPDIR)/net_module-icmp.Tpo net/$(DEPDIR)/net_module-icmp.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='net/icmp.c' object='net/net_module-icmp.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(net_module_CPPFLAGS) $(CPPFLAGS) $(net_module_CFLAGS) $(CFLAGS) -c -o net/net_module-icmp.o `test -f 'net/icmp.c' || echo '$(srcdir)/'`net/icmp.c - -net/net_module-icmp.obj: net/icmp.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(net_module_CPPFLAGS) $(CPPFLAGS) $(net_module_CFLAGS) $(CFLAGS) -MT net/net_module-icmp.obj -MD -MP -MF net/$(DEPDIR)/net_module-icmp.Tpo -c -o net/net_module-icmp.obj `if test -f 'net/icmp.c'; then $(CYGPATH_W) 'net/icmp.c'; else $(CYGPATH_W) '$(srcdir)/net/icmp.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) net/$(DEPDIR)/net_module-icmp.Tpo net/$(DEPDIR)/net_module-icmp.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='net/icmp.c' object='net/net_module-icmp.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(net_module_CPPFLAGS) $(CPPFLAGS) $(net_module_CFLAGS) $(CFLAGS) -c -o net/net_module-icmp.obj `if test -f 'net/icmp.c'; then $(CYGPATH_W) 'net/icmp.c'; else $(CYGPATH_W) '$(srcdir)/net/icmp.c'; fi` - -net/net_module-icmp6.o: net/icmp6.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(net_module_CPPFLAGS) $(CPPFLAGS) $(net_module_CFLAGS) $(CFLAGS) -MT net/net_module-icmp6.o -MD -MP -MF net/$(DEPDIR)/net_module-icmp6.Tpo -c -o net/net_module-icmp6.o `test -f 'net/icmp6.c' || echo '$(srcdir)/'`net/icmp6.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) net/$(DEPDIR)/net_module-icmp6.Tpo net/$(DEPDIR)/net_module-icmp6.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='net/icmp6.c' object='net/net_module-icmp6.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(net_module_CPPFLAGS) $(CPPFLAGS) $(net_module_CFLAGS) $(CFLAGS) -c -o net/net_module-icmp6.o `test -f 'net/icmp6.c' || echo '$(srcdir)/'`net/icmp6.c - -net/net_module-icmp6.obj: net/icmp6.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(net_module_CPPFLAGS) $(CPPFLAGS) $(net_module_CFLAGS) $(CFLAGS) -MT net/net_module-icmp6.obj -MD -MP -MF net/$(DEPDIR)/net_module-icmp6.Tpo -c -o net/net_module-icmp6.obj `if test -f 'net/icmp6.c'; then $(CYGPATH_W) 'net/icmp6.c'; else $(CYGPATH_W) '$(srcdir)/net/icmp6.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) net/$(DEPDIR)/net_module-icmp6.Tpo net/$(DEPDIR)/net_module-icmp6.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='net/icmp6.c' object='net/net_module-icmp6.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(net_module_CPPFLAGS) $(CPPFLAGS) $(net_module_CFLAGS) $(CFLAGS) -c -o net/net_module-icmp6.obj `if test -f 'net/icmp6.c'; then $(CYGPATH_W) 'net/icmp6.c'; else $(CYGPATH_W) '$(srcdir)/net/icmp6.c'; fi` - -net/net_module-ethernet.o: net/ethernet.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(net_module_CPPFLAGS) $(CPPFLAGS) $(net_module_CFLAGS) $(CFLAGS) -MT net/net_module-ethernet.o -MD -MP -MF net/$(DEPDIR)/net_module-ethernet.Tpo -c -o net/net_module-ethernet.o `test -f 'net/ethernet.c' || echo '$(srcdir)/'`net/ethernet.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) net/$(DEPDIR)/net_module-ethernet.Tpo net/$(DEPDIR)/net_module-ethernet.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='net/ethernet.c' object='net/net_module-ethernet.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(net_module_CPPFLAGS) $(CPPFLAGS) $(net_module_CFLAGS) $(CFLAGS) -c -o net/net_module-ethernet.o `test -f 'net/ethernet.c' || echo '$(srcdir)/'`net/ethernet.c - -net/net_module-ethernet.obj: net/ethernet.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(net_module_CPPFLAGS) $(CPPFLAGS) $(net_module_CFLAGS) $(CFLAGS) -MT net/net_module-ethernet.obj -MD -MP -MF net/$(DEPDIR)/net_module-ethernet.Tpo -c -o net/net_module-ethernet.obj `if test -f 'net/ethernet.c'; then $(CYGPATH_W) 'net/ethernet.c'; else $(CYGPATH_W) '$(srcdir)/net/ethernet.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) net/$(DEPDIR)/net_module-ethernet.Tpo net/$(DEPDIR)/net_module-ethernet.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='net/ethernet.c' object='net/net_module-ethernet.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(net_module_CPPFLAGS) $(CPPFLAGS) $(net_module_CFLAGS) $(CFLAGS) -c -o net/net_module-ethernet.obj `if test -f 'net/ethernet.c'; then $(CYGPATH_W) 'net/ethernet.c'; else $(CYGPATH_W) '$(srcdir)/net/ethernet.c'; fi` - -net/net_module-arp.o: net/arp.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(net_module_CPPFLAGS) $(CPPFLAGS) $(net_module_CFLAGS) $(CFLAGS) -MT net/net_module-arp.o -MD -MP -MF net/$(DEPDIR)/net_module-arp.Tpo -c -o net/net_module-arp.o `test -f 'net/arp.c' || echo '$(srcdir)/'`net/arp.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) net/$(DEPDIR)/net_module-arp.Tpo net/$(DEPDIR)/net_module-arp.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='net/arp.c' object='net/net_module-arp.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(net_module_CPPFLAGS) $(CPPFLAGS) $(net_module_CFLAGS) $(CFLAGS) -c -o net/net_module-arp.o `test -f 'net/arp.c' || echo '$(srcdir)/'`net/arp.c - -net/net_module-arp.obj: net/arp.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(net_module_CPPFLAGS) $(CPPFLAGS) $(net_module_CFLAGS) $(CFLAGS) -MT net/net_module-arp.obj -MD -MP -MF net/$(DEPDIR)/net_module-arp.Tpo -c -o net/net_module-arp.obj `if test -f 'net/arp.c'; then $(CYGPATH_W) 'net/arp.c'; else $(CYGPATH_W) '$(srcdir)/net/arp.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) net/$(DEPDIR)/net_module-arp.Tpo net/$(DEPDIR)/net_module-arp.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='net/arp.c' object='net/net_module-arp.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(net_module_CPPFLAGS) $(CPPFLAGS) $(net_module_CFLAGS) $(CFLAGS) -c -o net/net_module-arp.obj `if test -f 'net/arp.c'; then $(CYGPATH_W) 'net/arp.c'; else $(CYGPATH_W) '$(srcdir)/net/arp.c'; fi` - -net/net_module-netbuff.o: net/netbuff.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(net_module_CPPFLAGS) $(CPPFLAGS) $(net_module_CFLAGS) $(CFLAGS) -MT net/net_module-netbuff.o -MD -MP -MF net/$(DEPDIR)/net_module-netbuff.Tpo -c -o net/net_module-netbuff.o `test -f 'net/netbuff.c' || echo '$(srcdir)/'`net/netbuff.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) net/$(DEPDIR)/net_module-netbuff.Tpo net/$(DEPDIR)/net_module-netbuff.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='net/netbuff.c' object='net/net_module-netbuff.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(net_module_CPPFLAGS) $(CPPFLAGS) $(net_module_CFLAGS) $(CFLAGS) -c -o net/net_module-netbuff.o `test -f 'net/netbuff.c' || echo '$(srcdir)/'`net/netbuff.c - -net/net_module-netbuff.obj: net/netbuff.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(net_module_CPPFLAGS) $(CPPFLAGS) $(net_module_CFLAGS) $(CFLAGS) -MT net/net_module-netbuff.obj -MD -MP -MF net/$(DEPDIR)/net_module-netbuff.Tpo -c -o net/net_module-netbuff.obj `if test -f 'net/netbuff.c'; then $(CYGPATH_W) 'net/netbuff.c'; else $(CYGPATH_W) '$(srcdir)/net/netbuff.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) net/$(DEPDIR)/net_module-netbuff.Tpo net/$(DEPDIR)/net_module-netbuff.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='net/netbuff.c' object='net/net_module-netbuff.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(net_module_CPPFLAGS) $(CPPFLAGS) $(net_module_CFLAGS) $(CFLAGS) -c -o net/net_module-netbuff.obj `if test -f 'net/netbuff.c'; then $(CYGPATH_W) 'net/netbuff.c'; else $(CYGPATH_W) '$(srcdir)/net/netbuff.c'; fi` - -fs/newc_module-newc.o: fs/newc.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(newc_module_CPPFLAGS) $(CPPFLAGS) $(newc_module_CFLAGS) $(CFLAGS) -MT fs/newc_module-newc.o -MD -MP -MF fs/$(DEPDIR)/newc_module-newc.Tpo -c -o fs/newc_module-newc.o `test -f 'fs/newc.c' || echo '$(srcdir)/'`fs/newc.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) fs/$(DEPDIR)/newc_module-newc.Tpo fs/$(DEPDIR)/newc_module-newc.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='fs/newc.c' object='fs/newc_module-newc.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(newc_module_CPPFLAGS) $(CPPFLAGS) $(newc_module_CFLAGS) $(CFLAGS) -c -o fs/newc_module-newc.o `test -f 'fs/newc.c' || echo '$(srcdir)/'`fs/newc.c - -fs/newc_module-newc.obj: fs/newc.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(newc_module_CPPFLAGS) $(CPPFLAGS) $(newc_module_CFLAGS) $(CFLAGS) -MT fs/newc_module-newc.obj -MD -MP -MF fs/$(DEPDIR)/newc_module-newc.Tpo -c -o fs/newc_module-newc.obj `if test -f 'fs/newc.c'; then $(CYGPATH_W) 'fs/newc.c'; else $(CYGPATH_W) '$(srcdir)/fs/newc.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) fs/$(DEPDIR)/newc_module-newc.Tpo fs/$(DEPDIR)/newc_module-newc.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='fs/newc.c' object='fs/newc_module-newc.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(newc_module_CPPFLAGS) $(CPPFLAGS) $(newc_module_CFLAGS) $(CFLAGS) -c -o fs/newc_module-newc.obj `if test -f 'fs/newc.c'; then $(CYGPATH_W) 'fs/newc.c'; else $(CYGPATH_W) '$(srcdir)/fs/newc.c'; fi` - -fs/nilfs2_module-nilfs2.o: fs/nilfs2.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(nilfs2_module_CPPFLAGS) $(CPPFLAGS) $(nilfs2_module_CFLAGS) $(CFLAGS) -MT fs/nilfs2_module-nilfs2.o -MD -MP -MF fs/$(DEPDIR)/nilfs2_module-nilfs2.Tpo -c -o fs/nilfs2_module-nilfs2.o `test -f 'fs/nilfs2.c' || echo '$(srcdir)/'`fs/nilfs2.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) fs/$(DEPDIR)/nilfs2_module-nilfs2.Tpo fs/$(DEPDIR)/nilfs2_module-nilfs2.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='fs/nilfs2.c' object='fs/nilfs2_module-nilfs2.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(nilfs2_module_CPPFLAGS) $(CPPFLAGS) $(nilfs2_module_CFLAGS) $(CFLAGS) -c -o fs/nilfs2_module-nilfs2.o `test -f 'fs/nilfs2.c' || echo '$(srcdir)/'`fs/nilfs2.c - -fs/nilfs2_module-nilfs2.obj: fs/nilfs2.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(nilfs2_module_CPPFLAGS) $(CPPFLAGS) $(nilfs2_module_CFLAGS) $(CFLAGS) -MT fs/nilfs2_module-nilfs2.obj -MD -MP -MF fs/$(DEPDIR)/nilfs2_module-nilfs2.Tpo -c -o fs/nilfs2_module-nilfs2.obj `if test -f 'fs/nilfs2.c'; then $(CYGPATH_W) 'fs/nilfs2.c'; else $(CYGPATH_W) '$(srcdir)/fs/nilfs2.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) fs/$(DEPDIR)/nilfs2_module-nilfs2.Tpo fs/$(DEPDIR)/nilfs2_module-nilfs2.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='fs/nilfs2.c' object='fs/nilfs2_module-nilfs2.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(nilfs2_module_CPPFLAGS) $(CPPFLAGS) $(nilfs2_module_CFLAGS) $(CFLAGS) -c -o fs/nilfs2_module-nilfs2.obj `if test -f 'fs/nilfs2.c'; then $(CYGPATH_W) 'fs/nilfs2.c'; else $(CYGPATH_W) '$(srcdir)/fs/nilfs2.c'; fi` - -boot/decompressor/none_decompress_image-none.o: boot/decompressor/none.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(none_decompress_image_CPPFLAGS) $(CPPFLAGS) $(none_decompress_image_CFLAGS) $(CFLAGS) -MT boot/decompressor/none_decompress_image-none.o -MD -MP -MF boot/decompressor/$(DEPDIR)/none_decompress_image-none.Tpo -c -o boot/decompressor/none_decompress_image-none.o `test -f 'boot/decompressor/none.c' || echo '$(srcdir)/'`boot/decompressor/none.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) boot/decompressor/$(DEPDIR)/none_decompress_image-none.Tpo boot/decompressor/$(DEPDIR)/none_decompress_image-none.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='boot/decompressor/none.c' object='boot/decompressor/none_decompress_image-none.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(none_decompress_image_CPPFLAGS) $(CPPFLAGS) $(none_decompress_image_CFLAGS) $(CFLAGS) -c -o boot/decompressor/none_decompress_image-none.o `test -f 'boot/decompressor/none.c' || echo '$(srcdir)/'`boot/decompressor/none.c - -boot/decompressor/none_decompress_image-none.obj: boot/decompressor/none.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(none_decompress_image_CPPFLAGS) $(CPPFLAGS) $(none_decompress_image_CFLAGS) $(CFLAGS) -MT boot/decompressor/none_decompress_image-none.obj -MD -MP -MF boot/decompressor/$(DEPDIR)/none_decompress_image-none.Tpo -c -o boot/decompressor/none_decompress_image-none.obj `if test -f 'boot/decompressor/none.c'; then $(CYGPATH_W) 'boot/decompressor/none.c'; else $(CYGPATH_W) '$(srcdir)/boot/decompressor/none.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) boot/decompressor/$(DEPDIR)/none_decompress_image-none.Tpo boot/decompressor/$(DEPDIR)/none_decompress_image-none.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='boot/decompressor/none.c' object='boot/decompressor/none_decompress_image-none.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(none_decompress_image_CPPFLAGS) $(CPPFLAGS) $(none_decompress_image_CFLAGS) $(CFLAGS) -c -o boot/decompressor/none_decompress_image-none.obj `if test -f 'boot/decompressor/none.c'; then $(CYGPATH_W) 'boot/decompressor/none.c'; else $(CYGPATH_W) '$(srcdir)/boot/decompressor/none.c'; fi` - -normal/normal_module-main.o: normal/main.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(normal_module_CPPFLAGS) $(CPPFLAGS) $(normal_module_CFLAGS) $(CFLAGS) -MT normal/normal_module-main.o -MD -MP -MF normal/$(DEPDIR)/normal_module-main.Tpo -c -o normal/normal_module-main.o `test -f 'normal/main.c' || echo '$(srcdir)/'`normal/main.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) normal/$(DEPDIR)/normal_module-main.Tpo normal/$(DEPDIR)/normal_module-main.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='normal/main.c' object='normal/normal_module-main.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(normal_module_CPPFLAGS) $(CPPFLAGS) $(normal_module_CFLAGS) $(CFLAGS) -c -o normal/normal_module-main.o `test -f 'normal/main.c' || echo '$(srcdir)/'`normal/main.c - -normal/normal_module-main.obj: normal/main.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(normal_module_CPPFLAGS) $(CPPFLAGS) $(normal_module_CFLAGS) $(CFLAGS) -MT normal/normal_module-main.obj -MD -MP -MF normal/$(DEPDIR)/normal_module-main.Tpo -c -o normal/normal_module-main.obj `if test -f 'normal/main.c'; then $(CYGPATH_W) 'normal/main.c'; else $(CYGPATH_W) '$(srcdir)/normal/main.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) normal/$(DEPDIR)/normal_module-main.Tpo normal/$(DEPDIR)/normal_module-main.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='normal/main.c' object='normal/normal_module-main.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(normal_module_CPPFLAGS) $(CPPFLAGS) $(normal_module_CFLAGS) $(CFLAGS) -c -o normal/normal_module-main.obj `if test -f 'normal/main.c'; then $(CYGPATH_W) 'normal/main.c'; else $(CYGPATH_W) '$(srcdir)/normal/main.c'; fi` - -normal/normal_module-cmdline.o: normal/cmdline.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(normal_module_CPPFLAGS) $(CPPFLAGS) $(normal_module_CFLAGS) $(CFLAGS) -MT normal/normal_module-cmdline.o -MD -MP -MF normal/$(DEPDIR)/normal_module-cmdline.Tpo -c -o normal/normal_module-cmdline.o `test -f 'normal/cmdline.c' || echo '$(srcdir)/'`normal/cmdline.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) normal/$(DEPDIR)/normal_module-cmdline.Tpo normal/$(DEPDIR)/normal_module-cmdline.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='normal/cmdline.c' object='normal/normal_module-cmdline.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(normal_module_CPPFLAGS) $(CPPFLAGS) $(normal_module_CFLAGS) $(CFLAGS) -c -o normal/normal_module-cmdline.o `test -f 'normal/cmdline.c' || echo '$(srcdir)/'`normal/cmdline.c - -normal/normal_module-cmdline.obj: normal/cmdline.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(normal_module_CPPFLAGS) $(CPPFLAGS) $(normal_module_CFLAGS) $(CFLAGS) -MT normal/normal_module-cmdline.obj -MD -MP -MF normal/$(DEPDIR)/normal_module-cmdline.Tpo -c -o normal/normal_module-cmdline.obj `if test -f 'normal/cmdline.c'; then $(CYGPATH_W) 'normal/cmdline.c'; else $(CYGPATH_W) '$(srcdir)/normal/cmdline.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) normal/$(DEPDIR)/normal_module-cmdline.Tpo normal/$(DEPDIR)/normal_module-cmdline.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='normal/cmdline.c' object='normal/normal_module-cmdline.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(normal_module_CPPFLAGS) $(CPPFLAGS) $(normal_module_CFLAGS) $(CFLAGS) -c -o normal/normal_module-cmdline.obj `if test -f 'normal/cmdline.c'; then $(CYGPATH_W) 'normal/cmdline.c'; else $(CYGPATH_W) '$(srcdir)/normal/cmdline.c'; fi` - -normal/normal_module-dyncmd.o: normal/dyncmd.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(normal_module_CPPFLAGS) $(CPPFLAGS) $(normal_module_CFLAGS) $(CFLAGS) -MT normal/normal_module-dyncmd.o -MD -MP -MF normal/$(DEPDIR)/normal_module-dyncmd.Tpo -c -o normal/normal_module-dyncmd.o `test -f 'normal/dyncmd.c' || echo '$(srcdir)/'`normal/dyncmd.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) normal/$(DEPDIR)/normal_module-dyncmd.Tpo normal/$(DEPDIR)/normal_module-dyncmd.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='normal/dyncmd.c' object='normal/normal_module-dyncmd.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(normal_module_CPPFLAGS) $(CPPFLAGS) $(normal_module_CFLAGS) $(CFLAGS) -c -o normal/normal_module-dyncmd.o `test -f 'normal/dyncmd.c' || echo '$(srcdir)/'`normal/dyncmd.c - -normal/normal_module-dyncmd.obj: normal/dyncmd.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(normal_module_CPPFLAGS) $(CPPFLAGS) $(normal_module_CFLAGS) $(CFLAGS) -MT normal/normal_module-dyncmd.obj -MD -MP -MF normal/$(DEPDIR)/normal_module-dyncmd.Tpo -c -o normal/normal_module-dyncmd.obj `if test -f 'normal/dyncmd.c'; then $(CYGPATH_W) 'normal/dyncmd.c'; else $(CYGPATH_W) '$(srcdir)/normal/dyncmd.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) normal/$(DEPDIR)/normal_module-dyncmd.Tpo normal/$(DEPDIR)/normal_module-dyncmd.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='normal/dyncmd.c' object='normal/normal_module-dyncmd.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(normal_module_CPPFLAGS) $(CPPFLAGS) $(normal_module_CFLAGS) $(CFLAGS) -c -o normal/normal_module-dyncmd.obj `if test -f 'normal/dyncmd.c'; then $(CYGPATH_W) 'normal/dyncmd.c'; else $(CYGPATH_W) '$(srcdir)/normal/dyncmd.c'; fi` - -normal/normal_module-auth.o: normal/auth.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(normal_module_CPPFLAGS) $(CPPFLAGS) $(normal_module_CFLAGS) $(CFLAGS) -MT normal/normal_module-auth.o -MD -MP -MF normal/$(DEPDIR)/normal_module-auth.Tpo -c -o normal/normal_module-auth.o `test -f 'normal/auth.c' || echo '$(srcdir)/'`normal/auth.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) normal/$(DEPDIR)/normal_module-auth.Tpo normal/$(DEPDIR)/normal_module-auth.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='normal/auth.c' object='normal/normal_module-auth.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(normal_module_CPPFLAGS) $(CPPFLAGS) $(normal_module_CFLAGS) $(CFLAGS) -c -o normal/normal_module-auth.o `test -f 'normal/auth.c' || echo '$(srcdir)/'`normal/auth.c - -normal/normal_module-auth.obj: normal/auth.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(normal_module_CPPFLAGS) $(CPPFLAGS) $(normal_module_CFLAGS) $(CFLAGS) -MT normal/normal_module-auth.obj -MD -MP -MF normal/$(DEPDIR)/normal_module-auth.Tpo -c -o normal/normal_module-auth.obj `if test -f 'normal/auth.c'; then $(CYGPATH_W) 'normal/auth.c'; else $(CYGPATH_W) '$(srcdir)/normal/auth.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) normal/$(DEPDIR)/normal_module-auth.Tpo normal/$(DEPDIR)/normal_module-auth.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='normal/auth.c' object='normal/normal_module-auth.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(normal_module_CPPFLAGS) $(CPPFLAGS) $(normal_module_CFLAGS) $(CFLAGS) -c -o normal/normal_module-auth.obj `if test -f 'normal/auth.c'; then $(CYGPATH_W) 'normal/auth.c'; else $(CYGPATH_W) '$(srcdir)/normal/auth.c'; fi` - -normal/normal_module-autofs.o: normal/autofs.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(normal_module_CPPFLAGS) $(CPPFLAGS) $(normal_module_CFLAGS) $(CFLAGS) -MT normal/normal_module-autofs.o -MD -MP -MF normal/$(DEPDIR)/normal_module-autofs.Tpo -c -o normal/normal_module-autofs.o `test -f 'normal/autofs.c' || echo '$(srcdir)/'`normal/autofs.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) normal/$(DEPDIR)/normal_module-autofs.Tpo normal/$(DEPDIR)/normal_module-autofs.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='normal/autofs.c' object='normal/normal_module-autofs.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(normal_module_CPPFLAGS) $(CPPFLAGS) $(normal_module_CFLAGS) $(CFLAGS) -c -o normal/normal_module-autofs.o `test -f 'normal/autofs.c' || echo '$(srcdir)/'`normal/autofs.c - -normal/normal_module-autofs.obj: normal/autofs.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(normal_module_CPPFLAGS) $(CPPFLAGS) $(normal_module_CFLAGS) $(CFLAGS) -MT normal/normal_module-autofs.obj -MD -MP -MF normal/$(DEPDIR)/normal_module-autofs.Tpo -c -o normal/normal_module-autofs.obj `if test -f 'normal/autofs.c'; then $(CYGPATH_W) 'normal/autofs.c'; else $(CYGPATH_W) '$(srcdir)/normal/autofs.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) normal/$(DEPDIR)/normal_module-autofs.Tpo normal/$(DEPDIR)/normal_module-autofs.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='normal/autofs.c' object='normal/normal_module-autofs.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(normal_module_CPPFLAGS) $(CPPFLAGS) $(normal_module_CFLAGS) $(CFLAGS) -c -o normal/normal_module-autofs.obj `if test -f 'normal/autofs.c'; then $(CYGPATH_W) 'normal/autofs.c'; else $(CYGPATH_W) '$(srcdir)/normal/autofs.c'; fi` - -normal/normal_module-color.o: normal/color.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(normal_module_CPPFLAGS) $(CPPFLAGS) $(normal_module_CFLAGS) $(CFLAGS) -MT normal/normal_module-color.o -MD -MP -MF normal/$(DEPDIR)/normal_module-color.Tpo -c -o normal/normal_module-color.o `test -f 'normal/color.c' || echo '$(srcdir)/'`normal/color.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) normal/$(DEPDIR)/normal_module-color.Tpo normal/$(DEPDIR)/normal_module-color.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='normal/color.c' object='normal/normal_module-color.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(normal_module_CPPFLAGS) $(CPPFLAGS) $(normal_module_CFLAGS) $(CFLAGS) -c -o normal/normal_module-color.o `test -f 'normal/color.c' || echo '$(srcdir)/'`normal/color.c - -normal/normal_module-color.obj: normal/color.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(normal_module_CPPFLAGS) $(CPPFLAGS) $(normal_module_CFLAGS) $(CFLAGS) -MT normal/normal_module-color.obj -MD -MP -MF normal/$(DEPDIR)/normal_module-color.Tpo -c -o normal/normal_module-color.obj `if test -f 'normal/color.c'; then $(CYGPATH_W) 'normal/color.c'; else $(CYGPATH_W) '$(srcdir)/normal/color.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) normal/$(DEPDIR)/normal_module-color.Tpo normal/$(DEPDIR)/normal_module-color.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='normal/color.c' object='normal/normal_module-color.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(normal_module_CPPFLAGS) $(CPPFLAGS) $(normal_module_CFLAGS) $(CFLAGS) -c -o normal/normal_module-color.obj `if test -f 'normal/color.c'; then $(CYGPATH_W) 'normal/color.c'; else $(CYGPATH_W) '$(srcdir)/normal/color.c'; fi` - -normal/normal_module-completion.o: normal/completion.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(normal_module_CPPFLAGS) $(CPPFLAGS) $(normal_module_CFLAGS) $(CFLAGS) -MT normal/normal_module-completion.o -MD -MP -MF normal/$(DEPDIR)/normal_module-completion.Tpo -c -o normal/normal_module-completion.o `test -f 'normal/completion.c' || echo '$(srcdir)/'`normal/completion.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) normal/$(DEPDIR)/normal_module-completion.Tpo normal/$(DEPDIR)/normal_module-completion.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='normal/completion.c' object='normal/normal_module-completion.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(normal_module_CPPFLAGS) $(CPPFLAGS) $(normal_module_CFLAGS) $(CFLAGS) -c -o normal/normal_module-completion.o `test -f 'normal/completion.c' || echo '$(srcdir)/'`normal/completion.c - -normal/normal_module-completion.obj: normal/completion.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(normal_module_CPPFLAGS) $(CPPFLAGS) $(normal_module_CFLAGS) $(CFLAGS) -MT normal/normal_module-completion.obj -MD -MP -MF normal/$(DEPDIR)/normal_module-completion.Tpo -c -o normal/normal_module-completion.obj `if test -f 'normal/completion.c'; then $(CYGPATH_W) 'normal/completion.c'; else $(CYGPATH_W) '$(srcdir)/normal/completion.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) normal/$(DEPDIR)/normal_module-completion.Tpo normal/$(DEPDIR)/normal_module-completion.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='normal/completion.c' object='normal/normal_module-completion.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(normal_module_CPPFLAGS) $(CPPFLAGS) $(normal_module_CFLAGS) $(CFLAGS) -c -o normal/normal_module-completion.obj `if test -f 'normal/completion.c'; then $(CYGPATH_W) 'normal/completion.c'; else $(CYGPATH_W) '$(srcdir)/normal/completion.c'; fi` - -normal/normal_module-datetime.o: normal/datetime.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(normal_module_CPPFLAGS) $(CPPFLAGS) $(normal_module_CFLAGS) $(CFLAGS) -MT normal/normal_module-datetime.o -MD -MP -MF normal/$(DEPDIR)/normal_module-datetime.Tpo -c -o normal/normal_module-datetime.o `test -f 'normal/datetime.c' || echo '$(srcdir)/'`normal/datetime.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) normal/$(DEPDIR)/normal_module-datetime.Tpo normal/$(DEPDIR)/normal_module-datetime.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='normal/datetime.c' object='normal/normal_module-datetime.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(normal_module_CPPFLAGS) $(CPPFLAGS) $(normal_module_CFLAGS) $(CFLAGS) -c -o normal/normal_module-datetime.o `test -f 'normal/datetime.c' || echo '$(srcdir)/'`normal/datetime.c - -normal/normal_module-datetime.obj: normal/datetime.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(normal_module_CPPFLAGS) $(CPPFLAGS) $(normal_module_CFLAGS) $(CFLAGS) -MT normal/normal_module-datetime.obj -MD -MP -MF normal/$(DEPDIR)/normal_module-datetime.Tpo -c -o normal/normal_module-datetime.obj `if test -f 'normal/datetime.c'; then $(CYGPATH_W) 'normal/datetime.c'; else $(CYGPATH_W) '$(srcdir)/normal/datetime.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) normal/$(DEPDIR)/normal_module-datetime.Tpo normal/$(DEPDIR)/normal_module-datetime.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='normal/datetime.c' object='normal/normal_module-datetime.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(normal_module_CPPFLAGS) $(CPPFLAGS) $(normal_module_CFLAGS) $(CFLAGS) -c -o normal/normal_module-datetime.obj `if test -f 'normal/datetime.c'; then $(CYGPATH_W) 'normal/datetime.c'; else $(CYGPATH_W) '$(srcdir)/normal/datetime.c'; fi` - -normal/normal_module-menu.o: normal/menu.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(normal_module_CPPFLAGS) $(CPPFLAGS) $(normal_module_CFLAGS) $(CFLAGS) -MT normal/normal_module-menu.o -MD -MP -MF normal/$(DEPDIR)/normal_module-menu.Tpo -c -o normal/normal_module-menu.o `test -f 'normal/menu.c' || echo '$(srcdir)/'`normal/menu.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) normal/$(DEPDIR)/normal_module-menu.Tpo normal/$(DEPDIR)/normal_module-menu.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='normal/menu.c' object='normal/normal_module-menu.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(normal_module_CPPFLAGS) $(CPPFLAGS) $(normal_module_CFLAGS) $(CFLAGS) -c -o normal/normal_module-menu.o `test -f 'normal/menu.c' || echo '$(srcdir)/'`normal/menu.c - -normal/normal_module-menu.obj: normal/menu.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(normal_module_CPPFLAGS) $(CPPFLAGS) $(normal_module_CFLAGS) $(CFLAGS) -MT normal/normal_module-menu.obj -MD -MP -MF normal/$(DEPDIR)/normal_module-menu.Tpo -c -o normal/normal_module-menu.obj `if test -f 'normal/menu.c'; then $(CYGPATH_W) 'normal/menu.c'; else $(CYGPATH_W) '$(srcdir)/normal/menu.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) normal/$(DEPDIR)/normal_module-menu.Tpo normal/$(DEPDIR)/normal_module-menu.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='normal/menu.c' object='normal/normal_module-menu.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(normal_module_CPPFLAGS) $(CPPFLAGS) $(normal_module_CFLAGS) $(CFLAGS) -c -o normal/normal_module-menu.obj `if test -f 'normal/menu.c'; then $(CYGPATH_W) 'normal/menu.c'; else $(CYGPATH_W) '$(srcdir)/normal/menu.c'; fi` - -normal/normal_module-menu_entry.o: normal/menu_entry.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(normal_module_CPPFLAGS) $(CPPFLAGS) $(normal_module_CFLAGS) $(CFLAGS) -MT normal/normal_module-menu_entry.o -MD -MP -MF normal/$(DEPDIR)/normal_module-menu_entry.Tpo -c -o normal/normal_module-menu_entry.o `test -f 'normal/menu_entry.c' || echo '$(srcdir)/'`normal/menu_entry.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) normal/$(DEPDIR)/normal_module-menu_entry.Tpo normal/$(DEPDIR)/normal_module-menu_entry.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='normal/menu_entry.c' object='normal/normal_module-menu_entry.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(normal_module_CPPFLAGS) $(CPPFLAGS) $(normal_module_CFLAGS) $(CFLAGS) -c -o normal/normal_module-menu_entry.o `test -f 'normal/menu_entry.c' || echo '$(srcdir)/'`normal/menu_entry.c - -normal/normal_module-menu_entry.obj: normal/menu_entry.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(normal_module_CPPFLAGS) $(CPPFLAGS) $(normal_module_CFLAGS) $(CFLAGS) -MT normal/normal_module-menu_entry.obj -MD -MP -MF normal/$(DEPDIR)/normal_module-menu_entry.Tpo -c -o normal/normal_module-menu_entry.obj `if test -f 'normal/menu_entry.c'; then $(CYGPATH_W) 'normal/menu_entry.c'; else $(CYGPATH_W) '$(srcdir)/normal/menu_entry.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) normal/$(DEPDIR)/normal_module-menu_entry.Tpo normal/$(DEPDIR)/normal_module-menu_entry.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='normal/menu_entry.c' object='normal/normal_module-menu_entry.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(normal_module_CPPFLAGS) $(CPPFLAGS) $(normal_module_CFLAGS) $(CFLAGS) -c -o normal/normal_module-menu_entry.obj `if test -f 'normal/menu_entry.c'; then $(CYGPATH_W) 'normal/menu_entry.c'; else $(CYGPATH_W) '$(srcdir)/normal/menu_entry.c'; fi` - -normal/normal_module-menu_text.o: normal/menu_text.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(normal_module_CPPFLAGS) $(CPPFLAGS) $(normal_module_CFLAGS) $(CFLAGS) -MT normal/normal_module-menu_text.o -MD -MP -MF normal/$(DEPDIR)/normal_module-menu_text.Tpo -c -o normal/normal_module-menu_text.o `test -f 'normal/menu_text.c' || echo '$(srcdir)/'`normal/menu_text.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) normal/$(DEPDIR)/normal_module-menu_text.Tpo normal/$(DEPDIR)/normal_module-menu_text.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='normal/menu_text.c' object='normal/normal_module-menu_text.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(normal_module_CPPFLAGS) $(CPPFLAGS) $(normal_module_CFLAGS) $(CFLAGS) -c -o normal/normal_module-menu_text.o `test -f 'normal/menu_text.c' || echo '$(srcdir)/'`normal/menu_text.c - -normal/normal_module-menu_text.obj: normal/menu_text.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(normal_module_CPPFLAGS) $(CPPFLAGS) $(normal_module_CFLAGS) $(CFLAGS) -MT normal/normal_module-menu_text.obj -MD -MP -MF normal/$(DEPDIR)/normal_module-menu_text.Tpo -c -o normal/normal_module-menu_text.obj `if test -f 'normal/menu_text.c'; then $(CYGPATH_W) 'normal/menu_text.c'; else $(CYGPATH_W) '$(srcdir)/normal/menu_text.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) normal/$(DEPDIR)/normal_module-menu_text.Tpo normal/$(DEPDIR)/normal_module-menu_text.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='normal/menu_text.c' object='normal/normal_module-menu_text.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(normal_module_CPPFLAGS) $(CPPFLAGS) $(normal_module_CFLAGS) $(CFLAGS) -c -o normal/normal_module-menu_text.obj `if test -f 'normal/menu_text.c'; then $(CYGPATH_W) 'normal/menu_text.c'; else $(CYGPATH_W) '$(srcdir)/normal/menu_text.c'; fi` - -normal/normal_module-misc.o: normal/misc.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(normal_module_CPPFLAGS) $(CPPFLAGS) $(normal_module_CFLAGS) $(CFLAGS) -MT normal/normal_module-misc.o -MD -MP -MF normal/$(DEPDIR)/normal_module-misc.Tpo -c -o normal/normal_module-misc.o `test -f 'normal/misc.c' || echo '$(srcdir)/'`normal/misc.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) normal/$(DEPDIR)/normal_module-misc.Tpo normal/$(DEPDIR)/normal_module-misc.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='normal/misc.c' object='normal/normal_module-misc.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(normal_module_CPPFLAGS) $(CPPFLAGS) $(normal_module_CFLAGS) $(CFLAGS) -c -o normal/normal_module-misc.o `test -f 'normal/misc.c' || echo '$(srcdir)/'`normal/misc.c - -normal/normal_module-misc.obj: normal/misc.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(normal_module_CPPFLAGS) $(CPPFLAGS) $(normal_module_CFLAGS) $(CFLAGS) -MT normal/normal_module-misc.obj -MD -MP -MF normal/$(DEPDIR)/normal_module-misc.Tpo -c -o normal/normal_module-misc.obj `if test -f 'normal/misc.c'; then $(CYGPATH_W) 'normal/misc.c'; else $(CYGPATH_W) '$(srcdir)/normal/misc.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) normal/$(DEPDIR)/normal_module-misc.Tpo normal/$(DEPDIR)/normal_module-misc.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='normal/misc.c' object='normal/normal_module-misc.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(normal_module_CPPFLAGS) $(CPPFLAGS) $(normal_module_CFLAGS) $(CFLAGS) -c -o normal/normal_module-misc.obj `if test -f 'normal/misc.c'; then $(CYGPATH_W) 'normal/misc.c'; else $(CYGPATH_W) '$(srcdir)/normal/misc.c'; fi` - -normal/normal_module-crypto.o: normal/crypto.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(normal_module_CPPFLAGS) $(CPPFLAGS) $(normal_module_CFLAGS) $(CFLAGS) -MT normal/normal_module-crypto.o -MD -MP -MF normal/$(DEPDIR)/normal_module-crypto.Tpo -c -o normal/normal_module-crypto.o `test -f 'normal/crypto.c' || echo '$(srcdir)/'`normal/crypto.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) normal/$(DEPDIR)/normal_module-crypto.Tpo normal/$(DEPDIR)/normal_module-crypto.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='normal/crypto.c' object='normal/normal_module-crypto.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(normal_module_CPPFLAGS) $(CPPFLAGS) $(normal_module_CFLAGS) $(CFLAGS) -c -o normal/normal_module-crypto.o `test -f 'normal/crypto.c' || echo '$(srcdir)/'`normal/crypto.c - -normal/normal_module-crypto.obj: normal/crypto.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(normal_module_CPPFLAGS) $(CPPFLAGS) $(normal_module_CFLAGS) $(CFLAGS) -MT normal/normal_module-crypto.obj -MD -MP -MF normal/$(DEPDIR)/normal_module-crypto.Tpo -c -o normal/normal_module-crypto.obj `if test -f 'normal/crypto.c'; then $(CYGPATH_W) 'normal/crypto.c'; else $(CYGPATH_W) '$(srcdir)/normal/crypto.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) normal/$(DEPDIR)/normal_module-crypto.Tpo normal/$(DEPDIR)/normal_module-crypto.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='normal/crypto.c' object='normal/normal_module-crypto.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(normal_module_CPPFLAGS) $(CPPFLAGS) $(normal_module_CFLAGS) $(CFLAGS) -c -o normal/normal_module-crypto.obj `if test -f 'normal/crypto.c'; then $(CYGPATH_W) 'normal/crypto.c'; else $(CYGPATH_W) '$(srcdir)/normal/crypto.c'; fi` - -normal/normal_module-term.o: normal/term.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(normal_module_CPPFLAGS) $(CPPFLAGS) $(normal_module_CFLAGS) $(CFLAGS) -MT normal/normal_module-term.o -MD -MP -MF normal/$(DEPDIR)/normal_module-term.Tpo -c -o normal/normal_module-term.o `test -f 'normal/term.c' || echo '$(srcdir)/'`normal/term.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) normal/$(DEPDIR)/normal_module-term.Tpo normal/$(DEPDIR)/normal_module-term.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='normal/term.c' object='normal/normal_module-term.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(normal_module_CPPFLAGS) $(CPPFLAGS) $(normal_module_CFLAGS) $(CFLAGS) -c -o normal/normal_module-term.o `test -f 'normal/term.c' || echo '$(srcdir)/'`normal/term.c - -normal/normal_module-term.obj: normal/term.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(normal_module_CPPFLAGS) $(CPPFLAGS) $(normal_module_CFLAGS) $(CFLAGS) -MT normal/normal_module-term.obj -MD -MP -MF normal/$(DEPDIR)/normal_module-term.Tpo -c -o normal/normal_module-term.obj `if test -f 'normal/term.c'; then $(CYGPATH_W) 'normal/term.c'; else $(CYGPATH_W) '$(srcdir)/normal/term.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) normal/$(DEPDIR)/normal_module-term.Tpo normal/$(DEPDIR)/normal_module-term.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='normal/term.c' object='normal/normal_module-term.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(normal_module_CPPFLAGS) $(CPPFLAGS) $(normal_module_CFLAGS) $(CFLAGS) -c -o normal/normal_module-term.obj `if test -f 'normal/term.c'; then $(CYGPATH_W) 'normal/term.c'; else $(CYGPATH_W) '$(srcdir)/normal/term.c'; fi` - -normal/normal_module-context.o: normal/context.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(normal_module_CPPFLAGS) $(CPPFLAGS) $(normal_module_CFLAGS) $(CFLAGS) -MT normal/normal_module-context.o -MD -MP -MF normal/$(DEPDIR)/normal_module-context.Tpo -c -o normal/normal_module-context.o `test -f 'normal/context.c' || echo '$(srcdir)/'`normal/context.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) normal/$(DEPDIR)/normal_module-context.Tpo normal/$(DEPDIR)/normal_module-context.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='normal/context.c' object='normal/normal_module-context.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(normal_module_CPPFLAGS) $(CPPFLAGS) $(normal_module_CFLAGS) $(CFLAGS) -c -o normal/normal_module-context.o `test -f 'normal/context.c' || echo '$(srcdir)/'`normal/context.c - -normal/normal_module-context.obj: normal/context.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(normal_module_CPPFLAGS) $(CPPFLAGS) $(normal_module_CFLAGS) $(CFLAGS) -MT normal/normal_module-context.obj -MD -MP -MF normal/$(DEPDIR)/normal_module-context.Tpo -c -o normal/normal_module-context.obj `if test -f 'normal/context.c'; then $(CYGPATH_W) 'normal/context.c'; else $(CYGPATH_W) '$(srcdir)/normal/context.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) normal/$(DEPDIR)/normal_module-context.Tpo normal/$(DEPDIR)/normal_module-context.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='normal/context.c' object='normal/normal_module-context.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(normal_module_CPPFLAGS) $(CPPFLAGS) $(normal_module_CFLAGS) $(CFLAGS) -c -o normal/normal_module-context.obj `if test -f 'normal/context.c'; then $(CYGPATH_W) 'normal/context.c'; else $(CYGPATH_W) '$(srcdir)/normal/context.c'; fi` - -normal/normal_module-charset.o: normal/charset.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(normal_module_CPPFLAGS) $(CPPFLAGS) $(normal_module_CFLAGS) $(CFLAGS) -MT normal/normal_module-charset.o -MD -MP -MF normal/$(DEPDIR)/normal_module-charset.Tpo -c -o normal/normal_module-charset.o `test -f 'normal/charset.c' || echo '$(srcdir)/'`normal/charset.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) normal/$(DEPDIR)/normal_module-charset.Tpo normal/$(DEPDIR)/normal_module-charset.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='normal/charset.c' object='normal/normal_module-charset.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(normal_module_CPPFLAGS) $(CPPFLAGS) $(normal_module_CFLAGS) $(CFLAGS) -c -o normal/normal_module-charset.o `test -f 'normal/charset.c' || echo '$(srcdir)/'`normal/charset.c - -normal/normal_module-charset.obj: normal/charset.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(normal_module_CPPFLAGS) $(CPPFLAGS) $(normal_module_CFLAGS) $(CFLAGS) -MT normal/normal_module-charset.obj -MD -MP -MF normal/$(DEPDIR)/normal_module-charset.Tpo -c -o normal/normal_module-charset.obj `if test -f 'normal/charset.c'; then $(CYGPATH_W) 'normal/charset.c'; else $(CYGPATH_W) '$(srcdir)/normal/charset.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) normal/$(DEPDIR)/normal_module-charset.Tpo normal/$(DEPDIR)/normal_module-charset.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='normal/charset.c' object='normal/normal_module-charset.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(normal_module_CPPFLAGS) $(CPPFLAGS) $(normal_module_CFLAGS) $(CFLAGS) -c -o normal/normal_module-charset.obj `if test -f 'normal/charset.c'; then $(CYGPATH_W) 'normal/charset.c'; else $(CYGPATH_W) '$(srcdir)/normal/charset.c'; fi` - -lib/normal_module-getline.o: lib/getline.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(normal_module_CPPFLAGS) $(CPPFLAGS) $(normal_module_CFLAGS) $(CFLAGS) -MT lib/normal_module-getline.o -MD -MP -MF lib/$(DEPDIR)/normal_module-getline.Tpo -c -o lib/normal_module-getline.o `test -f 'lib/getline.c' || echo '$(srcdir)/'`lib/getline.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/$(DEPDIR)/normal_module-getline.Tpo lib/$(DEPDIR)/normal_module-getline.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/getline.c' object='lib/normal_module-getline.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(normal_module_CPPFLAGS) $(CPPFLAGS) $(normal_module_CFLAGS) $(CFLAGS) -c -o lib/normal_module-getline.o `test -f 'lib/getline.c' || echo '$(srcdir)/'`lib/getline.c - -lib/normal_module-getline.obj: lib/getline.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(normal_module_CPPFLAGS) $(CPPFLAGS) $(normal_module_CFLAGS) $(CFLAGS) -MT lib/normal_module-getline.obj -MD -MP -MF lib/$(DEPDIR)/normal_module-getline.Tpo -c -o lib/normal_module-getline.obj `if test -f 'lib/getline.c'; then $(CYGPATH_W) 'lib/getline.c'; else $(CYGPATH_W) '$(srcdir)/lib/getline.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/$(DEPDIR)/normal_module-getline.Tpo lib/$(DEPDIR)/normal_module-getline.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/getline.c' object='lib/normal_module-getline.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(normal_module_CPPFLAGS) $(CPPFLAGS) $(normal_module_CFLAGS) $(CFLAGS) -c -o lib/normal_module-getline.obj `if test -f 'lib/getline.c'; then $(CYGPATH_W) 'lib/getline.c'; else $(CYGPATH_W) '$(srcdir)/lib/getline.c'; fi` - -script/normal_module-main.o: script/main.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(normal_module_CPPFLAGS) $(CPPFLAGS) $(normal_module_CFLAGS) $(CFLAGS) -MT script/normal_module-main.o -MD -MP -MF script/$(DEPDIR)/normal_module-main.Tpo -c -o script/normal_module-main.o `test -f 'script/main.c' || echo '$(srcdir)/'`script/main.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) script/$(DEPDIR)/normal_module-main.Tpo script/$(DEPDIR)/normal_module-main.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='script/main.c' object='script/normal_module-main.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(normal_module_CPPFLAGS) $(CPPFLAGS) $(normal_module_CFLAGS) $(CFLAGS) -c -o script/normal_module-main.o `test -f 'script/main.c' || echo '$(srcdir)/'`script/main.c - -script/normal_module-main.obj: script/main.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(normal_module_CPPFLAGS) $(CPPFLAGS) $(normal_module_CFLAGS) $(CFLAGS) -MT script/normal_module-main.obj -MD -MP -MF script/$(DEPDIR)/normal_module-main.Tpo -c -o script/normal_module-main.obj `if test -f 'script/main.c'; then $(CYGPATH_W) 'script/main.c'; else $(CYGPATH_W) '$(srcdir)/script/main.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) script/$(DEPDIR)/normal_module-main.Tpo script/$(DEPDIR)/normal_module-main.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='script/main.c' object='script/normal_module-main.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(normal_module_CPPFLAGS) $(CPPFLAGS) $(normal_module_CFLAGS) $(CFLAGS) -c -o script/normal_module-main.obj `if test -f 'script/main.c'; then $(CYGPATH_W) 'script/main.c'; else $(CYGPATH_W) '$(srcdir)/script/main.c'; fi` - -script/normal_module-script.o: script/script.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(normal_module_CPPFLAGS) $(CPPFLAGS) $(normal_module_CFLAGS) $(CFLAGS) -MT script/normal_module-script.o -MD -MP -MF script/$(DEPDIR)/normal_module-script.Tpo -c -o script/normal_module-script.o `test -f 'script/script.c' || echo '$(srcdir)/'`script/script.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) script/$(DEPDIR)/normal_module-script.Tpo script/$(DEPDIR)/normal_module-script.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='script/script.c' object='script/normal_module-script.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(normal_module_CPPFLAGS) $(CPPFLAGS) $(normal_module_CFLAGS) $(CFLAGS) -c -o script/normal_module-script.o `test -f 'script/script.c' || echo '$(srcdir)/'`script/script.c - -script/normal_module-script.obj: script/script.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(normal_module_CPPFLAGS) $(CPPFLAGS) $(normal_module_CFLAGS) $(CFLAGS) -MT script/normal_module-script.obj -MD -MP -MF script/$(DEPDIR)/normal_module-script.Tpo -c -o script/normal_module-script.obj `if test -f 'script/script.c'; then $(CYGPATH_W) 'script/script.c'; else $(CYGPATH_W) '$(srcdir)/script/script.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) script/$(DEPDIR)/normal_module-script.Tpo script/$(DEPDIR)/normal_module-script.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='script/script.c' object='script/normal_module-script.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(normal_module_CPPFLAGS) $(CPPFLAGS) $(normal_module_CFLAGS) $(CFLAGS) -c -o script/normal_module-script.obj `if test -f 'script/script.c'; then $(CYGPATH_W) 'script/script.c'; else $(CYGPATH_W) '$(srcdir)/script/script.c'; fi` - -script/normal_module-execute.o: script/execute.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(normal_module_CPPFLAGS) $(CPPFLAGS) $(normal_module_CFLAGS) $(CFLAGS) -MT script/normal_module-execute.o -MD -MP -MF script/$(DEPDIR)/normal_module-execute.Tpo -c -o script/normal_module-execute.o `test -f 'script/execute.c' || echo '$(srcdir)/'`script/execute.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) script/$(DEPDIR)/normal_module-execute.Tpo script/$(DEPDIR)/normal_module-execute.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='script/execute.c' object='script/normal_module-execute.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(normal_module_CPPFLAGS) $(CPPFLAGS) $(normal_module_CFLAGS) $(CFLAGS) -c -o script/normal_module-execute.o `test -f 'script/execute.c' || echo '$(srcdir)/'`script/execute.c - -script/normal_module-execute.obj: script/execute.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(normal_module_CPPFLAGS) $(CPPFLAGS) $(normal_module_CFLAGS) $(CFLAGS) -MT script/normal_module-execute.obj -MD -MP -MF script/$(DEPDIR)/normal_module-execute.Tpo -c -o script/normal_module-execute.obj `if test -f 'script/execute.c'; then $(CYGPATH_W) 'script/execute.c'; else $(CYGPATH_W) '$(srcdir)/script/execute.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) script/$(DEPDIR)/normal_module-execute.Tpo script/$(DEPDIR)/normal_module-execute.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='script/execute.c' object='script/normal_module-execute.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(normal_module_CPPFLAGS) $(CPPFLAGS) $(normal_module_CFLAGS) $(CFLAGS) -c -o script/normal_module-execute.obj `if test -f 'script/execute.c'; then $(CYGPATH_W) 'script/execute.c'; else $(CYGPATH_W) '$(srcdir)/script/execute.c'; fi` - -script/normal_module-function.o: script/function.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(normal_module_CPPFLAGS) $(CPPFLAGS) $(normal_module_CFLAGS) $(CFLAGS) -MT script/normal_module-function.o -MD -MP -MF script/$(DEPDIR)/normal_module-function.Tpo -c -o script/normal_module-function.o `test -f 'script/function.c' || echo '$(srcdir)/'`script/function.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) script/$(DEPDIR)/normal_module-function.Tpo script/$(DEPDIR)/normal_module-function.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='script/function.c' object='script/normal_module-function.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(normal_module_CPPFLAGS) $(CPPFLAGS) $(normal_module_CFLAGS) $(CFLAGS) -c -o script/normal_module-function.o `test -f 'script/function.c' || echo '$(srcdir)/'`script/function.c - -script/normal_module-function.obj: script/function.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(normal_module_CPPFLAGS) $(CPPFLAGS) $(normal_module_CFLAGS) $(CFLAGS) -MT script/normal_module-function.obj -MD -MP -MF script/$(DEPDIR)/normal_module-function.Tpo -c -o script/normal_module-function.obj `if test -f 'script/function.c'; then $(CYGPATH_W) 'script/function.c'; else $(CYGPATH_W) '$(srcdir)/script/function.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) script/$(DEPDIR)/normal_module-function.Tpo script/$(DEPDIR)/normal_module-function.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='script/function.c' object='script/normal_module-function.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(normal_module_CPPFLAGS) $(CPPFLAGS) $(normal_module_CFLAGS) $(CFLAGS) -c -o script/normal_module-function.obj `if test -f 'script/function.c'; then $(CYGPATH_W) 'script/function.c'; else $(CYGPATH_W) '$(srcdir)/script/function.c'; fi` - -script/normal_module-lexer.o: script/lexer.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(normal_module_CPPFLAGS) $(CPPFLAGS) $(normal_module_CFLAGS) $(CFLAGS) -MT script/normal_module-lexer.o -MD -MP -MF script/$(DEPDIR)/normal_module-lexer.Tpo -c -o script/normal_module-lexer.o `test -f 'script/lexer.c' || echo '$(srcdir)/'`script/lexer.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) script/$(DEPDIR)/normal_module-lexer.Tpo script/$(DEPDIR)/normal_module-lexer.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='script/lexer.c' object='script/normal_module-lexer.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(normal_module_CPPFLAGS) $(CPPFLAGS) $(normal_module_CFLAGS) $(CFLAGS) -c -o script/normal_module-lexer.o `test -f 'script/lexer.c' || echo '$(srcdir)/'`script/lexer.c - -script/normal_module-lexer.obj: script/lexer.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(normal_module_CPPFLAGS) $(CPPFLAGS) $(normal_module_CFLAGS) $(CFLAGS) -MT script/normal_module-lexer.obj -MD -MP -MF script/$(DEPDIR)/normal_module-lexer.Tpo -c -o script/normal_module-lexer.obj `if test -f 'script/lexer.c'; then $(CYGPATH_W) 'script/lexer.c'; else $(CYGPATH_W) '$(srcdir)/script/lexer.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) script/$(DEPDIR)/normal_module-lexer.Tpo script/$(DEPDIR)/normal_module-lexer.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='script/lexer.c' object='script/normal_module-lexer.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(normal_module_CPPFLAGS) $(CPPFLAGS) $(normal_module_CFLAGS) $(CFLAGS) -c -o script/normal_module-lexer.obj `if test -f 'script/lexer.c'; then $(CYGPATH_W) 'script/lexer.c'; else $(CYGPATH_W) '$(srcdir)/script/lexer.c'; fi` - -script/normal_module-argv.o: script/argv.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(normal_module_CPPFLAGS) $(CPPFLAGS) $(normal_module_CFLAGS) $(CFLAGS) -MT script/normal_module-argv.o -MD -MP -MF script/$(DEPDIR)/normal_module-argv.Tpo -c -o script/normal_module-argv.o `test -f 'script/argv.c' || echo '$(srcdir)/'`script/argv.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) script/$(DEPDIR)/normal_module-argv.Tpo script/$(DEPDIR)/normal_module-argv.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='script/argv.c' object='script/normal_module-argv.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(normal_module_CPPFLAGS) $(CPPFLAGS) $(normal_module_CFLAGS) $(CFLAGS) -c -o script/normal_module-argv.o `test -f 'script/argv.c' || echo '$(srcdir)/'`script/argv.c - -script/normal_module-argv.obj: script/argv.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(normal_module_CPPFLAGS) $(CPPFLAGS) $(normal_module_CFLAGS) $(CFLAGS) -MT script/normal_module-argv.obj -MD -MP -MF script/$(DEPDIR)/normal_module-argv.Tpo -c -o script/normal_module-argv.obj `if test -f 'script/argv.c'; then $(CYGPATH_W) 'script/argv.c'; else $(CYGPATH_W) '$(srcdir)/script/argv.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) script/$(DEPDIR)/normal_module-argv.Tpo script/$(DEPDIR)/normal_module-argv.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='script/argv.c' object='script/normal_module-argv.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(normal_module_CPPFLAGS) $(CPPFLAGS) $(normal_module_CFLAGS) $(CFLAGS) -c -o script/normal_module-argv.obj `if test -f 'script/argv.c'; then $(CYGPATH_W) 'script/argv.c'; else $(CYGPATH_W) '$(srcdir)/script/argv.c'; fi` - -commands/normal_module-menuentry.o: commands/menuentry.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(normal_module_CPPFLAGS) $(CPPFLAGS) $(normal_module_CFLAGS) $(CFLAGS) -MT commands/normal_module-menuentry.o -MD -MP -MF commands/$(DEPDIR)/normal_module-menuentry.Tpo -c -o commands/normal_module-menuentry.o `test -f 'commands/menuentry.c' || echo '$(srcdir)/'`commands/menuentry.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/$(DEPDIR)/normal_module-menuentry.Tpo commands/$(DEPDIR)/normal_module-menuentry.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/menuentry.c' object='commands/normal_module-menuentry.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(normal_module_CPPFLAGS) $(CPPFLAGS) $(normal_module_CFLAGS) $(CFLAGS) -c -o commands/normal_module-menuentry.o `test -f 'commands/menuentry.c' || echo '$(srcdir)/'`commands/menuentry.c - -commands/normal_module-menuentry.obj: commands/menuentry.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(normal_module_CPPFLAGS) $(CPPFLAGS) $(normal_module_CFLAGS) $(CFLAGS) -MT commands/normal_module-menuentry.obj -MD -MP -MF commands/$(DEPDIR)/normal_module-menuentry.Tpo -c -o commands/normal_module-menuentry.obj `if test -f 'commands/menuentry.c'; then $(CYGPATH_W) 'commands/menuentry.c'; else $(CYGPATH_W) '$(srcdir)/commands/menuentry.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/$(DEPDIR)/normal_module-menuentry.Tpo commands/$(DEPDIR)/normal_module-menuentry.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/menuentry.c' object='commands/normal_module-menuentry.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(normal_module_CPPFLAGS) $(CPPFLAGS) $(normal_module_CFLAGS) $(CFLAGS) -c -o commands/normal_module-menuentry.obj `if test -f 'commands/menuentry.c'; then $(CYGPATH_W) 'commands/menuentry.c'; else $(CYGPATH_W) '$(srcdir)/commands/menuentry.c'; fi` - -normal_module-unidata.o: unidata.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(normal_module_CPPFLAGS) $(CPPFLAGS) $(normal_module_CFLAGS) $(CFLAGS) -MT normal_module-unidata.o -MD -MP -MF $(DEPDIR)/normal_module-unidata.Tpo -c -o normal_module-unidata.o `test -f 'unidata.c' || echo '$(srcdir)/'`unidata.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/normal_module-unidata.Tpo $(DEPDIR)/normal_module-unidata.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='unidata.c' object='normal_module-unidata.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(normal_module_CPPFLAGS) $(CPPFLAGS) $(normal_module_CFLAGS) $(CFLAGS) -c -o normal_module-unidata.o `test -f 'unidata.c' || echo '$(srcdir)/'`unidata.c - -normal_module-unidata.obj: unidata.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(normal_module_CPPFLAGS) $(CPPFLAGS) $(normal_module_CFLAGS) $(CFLAGS) -MT normal_module-unidata.obj -MD -MP -MF $(DEPDIR)/normal_module-unidata.Tpo -c -o normal_module-unidata.obj `if test -f 'unidata.c'; then $(CYGPATH_W) 'unidata.c'; else $(CYGPATH_W) '$(srcdir)/unidata.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/normal_module-unidata.Tpo $(DEPDIR)/normal_module-unidata.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='unidata.c' object='normal_module-unidata.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(normal_module_CPPFLAGS) $(CPPFLAGS) $(normal_module_CFLAGS) $(CFLAGS) -c -o normal_module-unidata.obj `if test -f 'unidata.c'; then $(CYGPATH_W) 'unidata.c'; else $(CYGPATH_W) '$(srcdir)/unidata.c'; fi` - -normal_module-grub_script.tab.o: grub_script.tab.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(normal_module_CPPFLAGS) $(CPPFLAGS) $(normal_module_CFLAGS) $(CFLAGS) -MT normal_module-grub_script.tab.o -MD -MP -MF $(DEPDIR)/normal_module-grub_script.tab.Tpo -c -o normal_module-grub_script.tab.o `test -f 'grub_script.tab.c' || echo '$(srcdir)/'`grub_script.tab.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/normal_module-grub_script.tab.Tpo $(DEPDIR)/normal_module-grub_script.tab.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub_script.tab.c' object='normal_module-grub_script.tab.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(normal_module_CPPFLAGS) $(CPPFLAGS) $(normal_module_CFLAGS) $(CFLAGS) -c -o normal_module-grub_script.tab.o `test -f 'grub_script.tab.c' || echo '$(srcdir)/'`grub_script.tab.c - -normal_module-grub_script.tab.obj: grub_script.tab.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(normal_module_CPPFLAGS) $(CPPFLAGS) $(normal_module_CFLAGS) $(CFLAGS) -MT normal_module-grub_script.tab.obj -MD -MP -MF $(DEPDIR)/normal_module-grub_script.tab.Tpo -c -o normal_module-grub_script.tab.obj `if test -f 'grub_script.tab.c'; then $(CYGPATH_W) 'grub_script.tab.c'; else $(CYGPATH_W) '$(srcdir)/grub_script.tab.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/normal_module-grub_script.tab.Tpo $(DEPDIR)/normal_module-grub_script.tab.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub_script.tab.c' object='normal_module-grub_script.tab.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(normal_module_CPPFLAGS) $(CPPFLAGS) $(normal_module_CFLAGS) $(CFLAGS) -c -o normal_module-grub_script.tab.obj `if test -f 'grub_script.tab.c'; then $(CYGPATH_W) 'grub_script.tab.c'; else $(CYGPATH_W) '$(srcdir)/grub_script.tab.c'; fi` - -normal_module-grub_script.yy.o: grub_script.yy.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(normal_module_CPPFLAGS) $(CPPFLAGS) $(normal_module_CFLAGS) $(CFLAGS) -MT normal_module-grub_script.yy.o -MD -MP -MF $(DEPDIR)/normal_module-grub_script.yy.Tpo -c -o normal_module-grub_script.yy.o `test -f 'grub_script.yy.c' || echo '$(srcdir)/'`grub_script.yy.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/normal_module-grub_script.yy.Tpo $(DEPDIR)/normal_module-grub_script.yy.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub_script.yy.c' object='normal_module-grub_script.yy.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(normal_module_CPPFLAGS) $(CPPFLAGS) $(normal_module_CFLAGS) $(CFLAGS) -c -o normal_module-grub_script.yy.o `test -f 'grub_script.yy.c' || echo '$(srcdir)/'`grub_script.yy.c - -normal_module-grub_script.yy.obj: grub_script.yy.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(normal_module_CPPFLAGS) $(CPPFLAGS) $(normal_module_CFLAGS) $(CFLAGS) -MT normal_module-grub_script.yy.obj -MD -MP -MF $(DEPDIR)/normal_module-grub_script.yy.Tpo -c -o normal_module-grub_script.yy.obj `if test -f 'grub_script.yy.c'; then $(CYGPATH_W) 'grub_script.yy.c'; else $(CYGPATH_W) '$(srcdir)/grub_script.yy.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/normal_module-grub_script.yy.Tpo $(DEPDIR)/normal_module-grub_script.yy.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='grub_script.yy.c' object='normal_module-grub_script.yy.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(normal_module_CPPFLAGS) $(CPPFLAGS) $(normal_module_CFLAGS) $(CFLAGS) -c -o normal_module-grub_script.yy.obj `if test -f 'grub_script.yy.c'; then $(CYGPATH_W) 'grub_script.yy.c'; else $(CYGPATH_W) '$(srcdir)/grub_script.yy.c'; fi` - -fs/ntfs_module-ntfs.o: fs/ntfs.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ntfs_module_CPPFLAGS) $(CPPFLAGS) $(ntfs_module_CFLAGS) $(CFLAGS) -MT fs/ntfs_module-ntfs.o -MD -MP -MF fs/$(DEPDIR)/ntfs_module-ntfs.Tpo -c -o fs/ntfs_module-ntfs.o `test -f 'fs/ntfs.c' || echo '$(srcdir)/'`fs/ntfs.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) fs/$(DEPDIR)/ntfs_module-ntfs.Tpo fs/$(DEPDIR)/ntfs_module-ntfs.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='fs/ntfs.c' object='fs/ntfs_module-ntfs.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ntfs_module_CPPFLAGS) $(CPPFLAGS) $(ntfs_module_CFLAGS) $(CFLAGS) -c -o fs/ntfs_module-ntfs.o `test -f 'fs/ntfs.c' || echo '$(srcdir)/'`fs/ntfs.c - -fs/ntfs_module-ntfs.obj: fs/ntfs.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ntfs_module_CPPFLAGS) $(CPPFLAGS) $(ntfs_module_CFLAGS) $(CFLAGS) -MT fs/ntfs_module-ntfs.obj -MD -MP -MF fs/$(DEPDIR)/ntfs_module-ntfs.Tpo -c -o fs/ntfs_module-ntfs.obj `if test -f 'fs/ntfs.c'; then $(CYGPATH_W) 'fs/ntfs.c'; else $(CYGPATH_W) '$(srcdir)/fs/ntfs.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) fs/$(DEPDIR)/ntfs_module-ntfs.Tpo fs/$(DEPDIR)/ntfs_module-ntfs.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='fs/ntfs.c' object='fs/ntfs_module-ntfs.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ntfs_module_CPPFLAGS) $(CPPFLAGS) $(ntfs_module_CFLAGS) $(CFLAGS) -c -o fs/ntfs_module-ntfs.obj `if test -f 'fs/ntfs.c'; then $(CYGPATH_W) 'fs/ntfs.c'; else $(CYGPATH_W) '$(srcdir)/fs/ntfs.c'; fi` - -fs/ntfscomp_module-ntfscomp.o: fs/ntfscomp.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ntfscomp_module_CPPFLAGS) $(CPPFLAGS) $(ntfscomp_module_CFLAGS) $(CFLAGS) -MT fs/ntfscomp_module-ntfscomp.o -MD -MP -MF fs/$(DEPDIR)/ntfscomp_module-ntfscomp.Tpo -c -o fs/ntfscomp_module-ntfscomp.o `test -f 'fs/ntfscomp.c' || echo '$(srcdir)/'`fs/ntfscomp.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) fs/$(DEPDIR)/ntfscomp_module-ntfscomp.Tpo fs/$(DEPDIR)/ntfscomp_module-ntfscomp.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='fs/ntfscomp.c' object='fs/ntfscomp_module-ntfscomp.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ntfscomp_module_CPPFLAGS) $(CPPFLAGS) $(ntfscomp_module_CFLAGS) $(CFLAGS) -c -o fs/ntfscomp_module-ntfscomp.o `test -f 'fs/ntfscomp.c' || echo '$(srcdir)/'`fs/ntfscomp.c - -fs/ntfscomp_module-ntfscomp.obj: fs/ntfscomp.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ntfscomp_module_CPPFLAGS) $(CPPFLAGS) $(ntfscomp_module_CFLAGS) $(CFLAGS) -MT fs/ntfscomp_module-ntfscomp.obj -MD -MP -MF fs/$(DEPDIR)/ntfscomp_module-ntfscomp.Tpo -c -o fs/ntfscomp_module-ntfscomp.obj `if test -f 'fs/ntfscomp.c'; then $(CYGPATH_W) 'fs/ntfscomp.c'; else $(CYGPATH_W) '$(srcdir)/fs/ntfscomp.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) fs/$(DEPDIR)/ntfscomp_module-ntfscomp.Tpo fs/$(DEPDIR)/ntfscomp_module-ntfscomp.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='fs/ntfscomp.c' object='fs/ntfscomp_module-ntfscomp.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ntfscomp_module_CPPFLAGS) $(CPPFLAGS) $(ntfscomp_module_CFLAGS) $(CFLAGS) -c -o fs/ntfscomp_module-ntfscomp.obj `if test -f 'fs/ntfscomp.c'; then $(CYGPATH_W) 'fs/ntfscomp.c'; else $(CYGPATH_W) '$(srcdir)/fs/ntfscomp.c'; fi` - -loader/i386/pc/ntldr_module-ntldr.o: loader/i386/pc/ntldr.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ntldr_module_CPPFLAGS) $(CPPFLAGS) $(ntldr_module_CFLAGS) $(CFLAGS) -MT loader/i386/pc/ntldr_module-ntldr.o -MD -MP -MF loader/i386/pc/$(DEPDIR)/ntldr_module-ntldr.Tpo -c -o loader/i386/pc/ntldr_module-ntldr.o `test -f 'loader/i386/pc/ntldr.c' || echo '$(srcdir)/'`loader/i386/pc/ntldr.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) loader/i386/pc/$(DEPDIR)/ntldr_module-ntldr.Tpo loader/i386/pc/$(DEPDIR)/ntldr_module-ntldr.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='loader/i386/pc/ntldr.c' object='loader/i386/pc/ntldr_module-ntldr.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ntldr_module_CPPFLAGS) $(CPPFLAGS) $(ntldr_module_CFLAGS) $(CFLAGS) -c -o loader/i386/pc/ntldr_module-ntldr.o `test -f 'loader/i386/pc/ntldr.c' || echo '$(srcdir)/'`loader/i386/pc/ntldr.c - -loader/i386/pc/ntldr_module-ntldr.obj: loader/i386/pc/ntldr.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ntldr_module_CPPFLAGS) $(CPPFLAGS) $(ntldr_module_CFLAGS) $(CFLAGS) -MT loader/i386/pc/ntldr_module-ntldr.obj -MD -MP -MF loader/i386/pc/$(DEPDIR)/ntldr_module-ntldr.Tpo -c -o loader/i386/pc/ntldr_module-ntldr.obj `if test -f 'loader/i386/pc/ntldr.c'; then $(CYGPATH_W) 'loader/i386/pc/ntldr.c'; else $(CYGPATH_W) '$(srcdir)/loader/i386/pc/ntldr.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) loader/i386/pc/$(DEPDIR)/ntldr_module-ntldr.Tpo loader/i386/pc/$(DEPDIR)/ntldr_module-ntldr.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='loader/i386/pc/ntldr.c' object='loader/i386/pc/ntldr_module-ntldr.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ntldr_module_CPPFLAGS) $(CPPFLAGS) $(ntldr_module_CFLAGS) $(CFLAGS) -c -o loader/i386/pc/ntldr_module-ntldr.obj `if test -f 'loader/i386/pc/ntldr.c'; then $(CYGPATH_W) 'loader/i386/pc/ntldr.c'; else $(CYGPATH_W) '$(srcdir)/loader/i386/pc/ntldr.c'; fi` - -fs/odc_module-odc.o: fs/odc.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(odc_module_CPPFLAGS) $(CPPFLAGS) $(odc_module_CFLAGS) $(CFLAGS) -MT fs/odc_module-odc.o -MD -MP -MF fs/$(DEPDIR)/odc_module-odc.Tpo -c -o fs/odc_module-odc.o `test -f 'fs/odc.c' || echo '$(srcdir)/'`fs/odc.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) fs/$(DEPDIR)/odc_module-odc.Tpo fs/$(DEPDIR)/odc_module-odc.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='fs/odc.c' object='fs/odc_module-odc.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(odc_module_CPPFLAGS) $(CPPFLAGS) $(odc_module_CFLAGS) $(CFLAGS) -c -o fs/odc_module-odc.o `test -f 'fs/odc.c' || echo '$(srcdir)/'`fs/odc.c - -fs/odc_module-odc.obj: fs/odc.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(odc_module_CPPFLAGS) $(CPPFLAGS) $(odc_module_CFLAGS) $(CFLAGS) -MT fs/odc_module-odc.obj -MD -MP -MF fs/$(DEPDIR)/odc_module-odc.Tpo -c -o fs/odc_module-odc.obj `if test -f 'fs/odc.c'; then $(CYGPATH_W) 'fs/odc.c'; else $(CYGPATH_W) '$(srcdir)/fs/odc.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) fs/$(DEPDIR)/odc_module-odc.Tpo fs/$(DEPDIR)/odc_module-odc.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='fs/odc.c' object='fs/odc_module-odc.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(odc_module_CPPFLAGS) $(CPPFLAGS) $(odc_module_CFLAGS) $(CFLAGS) -c -o fs/odc_module-odc.obj `if test -f 'fs/odc.c'; then $(CYGPATH_W) 'fs/odc.c'; else $(CYGPATH_W) '$(srcdir)/fs/odc.c'; fi` - -io/offsetio_module-offset.o: io/offset.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(offsetio_module_CPPFLAGS) $(CPPFLAGS) $(offsetio_module_CFLAGS) $(CFLAGS) -MT io/offsetio_module-offset.o -MD -MP -MF io/$(DEPDIR)/offsetio_module-offset.Tpo -c -o io/offsetio_module-offset.o `test -f 'io/offset.c' || echo '$(srcdir)/'`io/offset.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) io/$(DEPDIR)/offsetio_module-offset.Tpo io/$(DEPDIR)/offsetio_module-offset.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='io/offset.c' object='io/offsetio_module-offset.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(offsetio_module_CPPFLAGS) $(CPPFLAGS) $(offsetio_module_CFLAGS) $(CFLAGS) -c -o io/offsetio_module-offset.o `test -f 'io/offset.c' || echo '$(srcdir)/'`io/offset.c - -io/offsetio_module-offset.obj: io/offset.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(offsetio_module_CPPFLAGS) $(CPPFLAGS) $(offsetio_module_CFLAGS) $(CFLAGS) -MT io/offsetio_module-offset.obj -MD -MP -MF io/$(DEPDIR)/offsetio_module-offset.Tpo -c -o io/offsetio_module-offset.obj `if test -f 'io/offset.c'; then $(CYGPATH_W) 'io/offset.c'; else $(CYGPATH_W) '$(srcdir)/io/offset.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) io/$(DEPDIR)/offsetio_module-offset.Tpo io/$(DEPDIR)/offsetio_module-offset.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='io/offset.c' object='io/offsetio_module-offset.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(offsetio_module_CPPFLAGS) $(CPPFLAGS) $(offsetio_module_CFLAGS) $(CFLAGS) -c -o io/offsetio_module-offset.obj `if test -f 'io/offset.c'; then $(CYGPATH_W) 'io/offset.c'; else $(CYGPATH_W) '$(srcdir)/io/offset.c'; fi` - -net/drivers/ieee1275/ofnet_module-ofnet.o: net/drivers/ieee1275/ofnet.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ofnet_module_CPPFLAGS) $(CPPFLAGS) $(ofnet_module_CFLAGS) $(CFLAGS) -MT net/drivers/ieee1275/ofnet_module-ofnet.o -MD -MP -MF net/drivers/ieee1275/$(DEPDIR)/ofnet_module-ofnet.Tpo -c -o net/drivers/ieee1275/ofnet_module-ofnet.o `test -f 'net/drivers/ieee1275/ofnet.c' || echo '$(srcdir)/'`net/drivers/ieee1275/ofnet.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) net/drivers/ieee1275/$(DEPDIR)/ofnet_module-ofnet.Tpo net/drivers/ieee1275/$(DEPDIR)/ofnet_module-ofnet.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='net/drivers/ieee1275/ofnet.c' object='net/drivers/ieee1275/ofnet_module-ofnet.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ofnet_module_CPPFLAGS) $(CPPFLAGS) $(ofnet_module_CFLAGS) $(CFLAGS) -c -o net/drivers/ieee1275/ofnet_module-ofnet.o `test -f 'net/drivers/ieee1275/ofnet.c' || echo '$(srcdir)/'`net/drivers/ieee1275/ofnet.c - -net/drivers/ieee1275/ofnet_module-ofnet.obj: net/drivers/ieee1275/ofnet.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ofnet_module_CPPFLAGS) $(CPPFLAGS) $(ofnet_module_CFLAGS) $(CFLAGS) -MT net/drivers/ieee1275/ofnet_module-ofnet.obj -MD -MP -MF net/drivers/ieee1275/$(DEPDIR)/ofnet_module-ofnet.Tpo -c -o net/drivers/ieee1275/ofnet_module-ofnet.obj `if test -f 'net/drivers/ieee1275/ofnet.c'; then $(CYGPATH_W) 'net/drivers/ieee1275/ofnet.c'; else $(CYGPATH_W) '$(srcdir)/net/drivers/ieee1275/ofnet.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) net/drivers/ieee1275/$(DEPDIR)/ofnet_module-ofnet.Tpo net/drivers/ieee1275/$(DEPDIR)/ofnet_module-ofnet.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='net/drivers/ieee1275/ofnet.c' object='net/drivers/ieee1275/ofnet_module-ofnet.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ofnet_module_CPPFLAGS) $(CPPFLAGS) $(ofnet_module_CFLAGS) $(CFLAGS) -c -o net/drivers/ieee1275/ofnet_module-ofnet.obj `if test -f 'net/drivers/ieee1275/ofnet.c'; then $(CYGPATH_W) 'net/drivers/ieee1275/ofnet.c'; else $(CYGPATH_W) '$(srcdir)/net/drivers/ieee1275/ofnet.c'; fi` - -bus/usb/ohci_module-ohci.o: bus/usb/ohci.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ohci_module_CPPFLAGS) $(CPPFLAGS) $(ohci_module_CFLAGS) $(CFLAGS) -MT bus/usb/ohci_module-ohci.o -MD -MP -MF bus/usb/$(DEPDIR)/ohci_module-ohci.Tpo -c -o bus/usb/ohci_module-ohci.o `test -f 'bus/usb/ohci.c' || echo '$(srcdir)/'`bus/usb/ohci.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) bus/usb/$(DEPDIR)/ohci_module-ohci.Tpo bus/usb/$(DEPDIR)/ohci_module-ohci.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='bus/usb/ohci.c' object='bus/usb/ohci_module-ohci.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ohci_module_CPPFLAGS) $(CPPFLAGS) $(ohci_module_CFLAGS) $(CFLAGS) -c -o bus/usb/ohci_module-ohci.o `test -f 'bus/usb/ohci.c' || echo '$(srcdir)/'`bus/usb/ohci.c - -bus/usb/ohci_module-ohci.obj: bus/usb/ohci.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ohci_module_CPPFLAGS) $(CPPFLAGS) $(ohci_module_CFLAGS) $(CFLAGS) -MT bus/usb/ohci_module-ohci.obj -MD -MP -MF bus/usb/$(DEPDIR)/ohci_module-ohci.Tpo -c -o bus/usb/ohci_module-ohci.obj `if test -f 'bus/usb/ohci.c'; then $(CYGPATH_W) 'bus/usb/ohci.c'; else $(CYGPATH_W) '$(srcdir)/bus/usb/ohci.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) bus/usb/$(DEPDIR)/ohci_module-ohci.Tpo bus/usb/$(DEPDIR)/ohci_module-ohci.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='bus/usb/ohci.c' object='bus/usb/ohci_module-ohci.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ohci_module_CPPFLAGS) $(CPPFLAGS) $(ohci_module_CFLAGS) $(CFLAGS) -c -o bus/usb/ohci_module-ohci.obj `if test -f 'bus/usb/ohci.c'; then $(CYGPATH_W) 'bus/usb/ohci.c'; else $(CYGPATH_W) '$(srcdir)/bus/usb/ohci.c'; fi` - -partmap/part_acorn_module-acorn.o: partmap/acorn.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(part_acorn_module_CPPFLAGS) $(CPPFLAGS) $(part_acorn_module_CFLAGS) $(CFLAGS) -MT partmap/part_acorn_module-acorn.o -MD -MP -MF partmap/$(DEPDIR)/part_acorn_module-acorn.Tpo -c -o partmap/part_acorn_module-acorn.o `test -f 'partmap/acorn.c' || echo '$(srcdir)/'`partmap/acorn.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) partmap/$(DEPDIR)/part_acorn_module-acorn.Tpo partmap/$(DEPDIR)/part_acorn_module-acorn.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='partmap/acorn.c' object='partmap/part_acorn_module-acorn.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(part_acorn_module_CPPFLAGS) $(CPPFLAGS) $(part_acorn_module_CFLAGS) $(CFLAGS) -c -o partmap/part_acorn_module-acorn.o `test -f 'partmap/acorn.c' || echo '$(srcdir)/'`partmap/acorn.c - -partmap/part_acorn_module-acorn.obj: partmap/acorn.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(part_acorn_module_CPPFLAGS) $(CPPFLAGS) $(part_acorn_module_CFLAGS) $(CFLAGS) -MT partmap/part_acorn_module-acorn.obj -MD -MP -MF partmap/$(DEPDIR)/part_acorn_module-acorn.Tpo -c -o partmap/part_acorn_module-acorn.obj `if test -f 'partmap/acorn.c'; then $(CYGPATH_W) 'partmap/acorn.c'; else $(CYGPATH_W) '$(srcdir)/partmap/acorn.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) partmap/$(DEPDIR)/part_acorn_module-acorn.Tpo partmap/$(DEPDIR)/part_acorn_module-acorn.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='partmap/acorn.c' object='partmap/part_acorn_module-acorn.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(part_acorn_module_CPPFLAGS) $(CPPFLAGS) $(part_acorn_module_CFLAGS) $(CFLAGS) -c -o partmap/part_acorn_module-acorn.obj `if test -f 'partmap/acorn.c'; then $(CYGPATH_W) 'partmap/acorn.c'; else $(CYGPATH_W) '$(srcdir)/partmap/acorn.c'; fi` - -partmap/part_amiga_module-amiga.o: partmap/amiga.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(part_amiga_module_CPPFLAGS) $(CPPFLAGS) $(part_amiga_module_CFLAGS) $(CFLAGS) -MT partmap/part_amiga_module-amiga.o -MD -MP -MF partmap/$(DEPDIR)/part_amiga_module-amiga.Tpo -c -o partmap/part_amiga_module-amiga.o `test -f 'partmap/amiga.c' || echo '$(srcdir)/'`partmap/amiga.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) partmap/$(DEPDIR)/part_amiga_module-amiga.Tpo partmap/$(DEPDIR)/part_amiga_module-amiga.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='partmap/amiga.c' object='partmap/part_amiga_module-amiga.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(part_amiga_module_CPPFLAGS) $(CPPFLAGS) $(part_amiga_module_CFLAGS) $(CFLAGS) -c -o partmap/part_amiga_module-amiga.o `test -f 'partmap/amiga.c' || echo '$(srcdir)/'`partmap/amiga.c - -partmap/part_amiga_module-amiga.obj: partmap/amiga.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(part_amiga_module_CPPFLAGS) $(CPPFLAGS) $(part_amiga_module_CFLAGS) $(CFLAGS) -MT partmap/part_amiga_module-amiga.obj -MD -MP -MF partmap/$(DEPDIR)/part_amiga_module-amiga.Tpo -c -o partmap/part_amiga_module-amiga.obj `if test -f 'partmap/amiga.c'; then $(CYGPATH_W) 'partmap/amiga.c'; else $(CYGPATH_W) '$(srcdir)/partmap/amiga.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) partmap/$(DEPDIR)/part_amiga_module-amiga.Tpo partmap/$(DEPDIR)/part_amiga_module-amiga.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='partmap/amiga.c' object='partmap/part_amiga_module-amiga.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(part_amiga_module_CPPFLAGS) $(CPPFLAGS) $(part_amiga_module_CFLAGS) $(CFLAGS) -c -o partmap/part_amiga_module-amiga.obj `if test -f 'partmap/amiga.c'; then $(CYGPATH_W) 'partmap/amiga.c'; else $(CYGPATH_W) '$(srcdir)/partmap/amiga.c'; fi` - -partmap/part_apple_module-apple.o: partmap/apple.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(part_apple_module_CPPFLAGS) $(CPPFLAGS) $(part_apple_module_CFLAGS) $(CFLAGS) -MT partmap/part_apple_module-apple.o -MD -MP -MF partmap/$(DEPDIR)/part_apple_module-apple.Tpo -c -o partmap/part_apple_module-apple.o `test -f 'partmap/apple.c' || echo '$(srcdir)/'`partmap/apple.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) partmap/$(DEPDIR)/part_apple_module-apple.Tpo partmap/$(DEPDIR)/part_apple_module-apple.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='partmap/apple.c' object='partmap/part_apple_module-apple.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(part_apple_module_CPPFLAGS) $(CPPFLAGS) $(part_apple_module_CFLAGS) $(CFLAGS) -c -o partmap/part_apple_module-apple.o `test -f 'partmap/apple.c' || echo '$(srcdir)/'`partmap/apple.c - -partmap/part_apple_module-apple.obj: partmap/apple.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(part_apple_module_CPPFLAGS) $(CPPFLAGS) $(part_apple_module_CFLAGS) $(CFLAGS) -MT partmap/part_apple_module-apple.obj -MD -MP -MF partmap/$(DEPDIR)/part_apple_module-apple.Tpo -c -o partmap/part_apple_module-apple.obj `if test -f 'partmap/apple.c'; then $(CYGPATH_W) 'partmap/apple.c'; else $(CYGPATH_W) '$(srcdir)/partmap/apple.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) partmap/$(DEPDIR)/part_apple_module-apple.Tpo partmap/$(DEPDIR)/part_apple_module-apple.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='partmap/apple.c' object='partmap/part_apple_module-apple.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(part_apple_module_CPPFLAGS) $(CPPFLAGS) $(part_apple_module_CFLAGS) $(CFLAGS) -c -o partmap/part_apple_module-apple.obj `if test -f 'partmap/apple.c'; then $(CYGPATH_W) 'partmap/apple.c'; else $(CYGPATH_W) '$(srcdir)/partmap/apple.c'; fi` - -partmap/part_bsd_module-bsdlabel.o: partmap/bsdlabel.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(part_bsd_module_CPPFLAGS) $(CPPFLAGS) $(part_bsd_module_CFLAGS) $(CFLAGS) -MT partmap/part_bsd_module-bsdlabel.o -MD -MP -MF partmap/$(DEPDIR)/part_bsd_module-bsdlabel.Tpo -c -o partmap/part_bsd_module-bsdlabel.o `test -f 'partmap/bsdlabel.c' || echo '$(srcdir)/'`partmap/bsdlabel.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) partmap/$(DEPDIR)/part_bsd_module-bsdlabel.Tpo partmap/$(DEPDIR)/part_bsd_module-bsdlabel.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='partmap/bsdlabel.c' object='partmap/part_bsd_module-bsdlabel.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(part_bsd_module_CPPFLAGS) $(CPPFLAGS) $(part_bsd_module_CFLAGS) $(CFLAGS) -c -o partmap/part_bsd_module-bsdlabel.o `test -f 'partmap/bsdlabel.c' || echo '$(srcdir)/'`partmap/bsdlabel.c - -partmap/part_bsd_module-bsdlabel.obj: partmap/bsdlabel.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(part_bsd_module_CPPFLAGS) $(CPPFLAGS) $(part_bsd_module_CFLAGS) $(CFLAGS) -MT partmap/part_bsd_module-bsdlabel.obj -MD -MP -MF partmap/$(DEPDIR)/part_bsd_module-bsdlabel.Tpo -c -o partmap/part_bsd_module-bsdlabel.obj `if test -f 'partmap/bsdlabel.c'; then $(CYGPATH_W) 'partmap/bsdlabel.c'; else $(CYGPATH_W) '$(srcdir)/partmap/bsdlabel.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) partmap/$(DEPDIR)/part_bsd_module-bsdlabel.Tpo partmap/$(DEPDIR)/part_bsd_module-bsdlabel.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='partmap/bsdlabel.c' object='partmap/part_bsd_module-bsdlabel.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(part_bsd_module_CPPFLAGS) $(CPPFLAGS) $(part_bsd_module_CFLAGS) $(CFLAGS) -c -o partmap/part_bsd_module-bsdlabel.obj `if test -f 'partmap/bsdlabel.c'; then $(CYGPATH_W) 'partmap/bsdlabel.c'; else $(CYGPATH_W) '$(srcdir)/partmap/bsdlabel.c'; fi` - -partmap/part_dfly_module-dfly.o: partmap/dfly.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(part_dfly_module_CPPFLAGS) $(CPPFLAGS) $(part_dfly_module_CFLAGS) $(CFLAGS) -MT partmap/part_dfly_module-dfly.o -MD -MP -MF partmap/$(DEPDIR)/part_dfly_module-dfly.Tpo -c -o partmap/part_dfly_module-dfly.o `test -f 'partmap/dfly.c' || echo '$(srcdir)/'`partmap/dfly.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) partmap/$(DEPDIR)/part_dfly_module-dfly.Tpo partmap/$(DEPDIR)/part_dfly_module-dfly.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='partmap/dfly.c' object='partmap/part_dfly_module-dfly.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(part_dfly_module_CPPFLAGS) $(CPPFLAGS) $(part_dfly_module_CFLAGS) $(CFLAGS) -c -o partmap/part_dfly_module-dfly.o `test -f 'partmap/dfly.c' || echo '$(srcdir)/'`partmap/dfly.c - -partmap/part_dfly_module-dfly.obj: partmap/dfly.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(part_dfly_module_CPPFLAGS) $(CPPFLAGS) $(part_dfly_module_CFLAGS) $(CFLAGS) -MT partmap/part_dfly_module-dfly.obj -MD -MP -MF partmap/$(DEPDIR)/part_dfly_module-dfly.Tpo -c -o partmap/part_dfly_module-dfly.obj `if test -f 'partmap/dfly.c'; then $(CYGPATH_W) 'partmap/dfly.c'; else $(CYGPATH_W) '$(srcdir)/partmap/dfly.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) partmap/$(DEPDIR)/part_dfly_module-dfly.Tpo partmap/$(DEPDIR)/part_dfly_module-dfly.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='partmap/dfly.c' object='partmap/part_dfly_module-dfly.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(part_dfly_module_CPPFLAGS) $(CPPFLAGS) $(part_dfly_module_CFLAGS) $(CFLAGS) -c -o partmap/part_dfly_module-dfly.obj `if test -f 'partmap/dfly.c'; then $(CYGPATH_W) 'partmap/dfly.c'; else $(CYGPATH_W) '$(srcdir)/partmap/dfly.c'; fi` - -partmap/part_dvh_module-dvh.o: partmap/dvh.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(part_dvh_module_CPPFLAGS) $(CPPFLAGS) $(part_dvh_module_CFLAGS) $(CFLAGS) -MT partmap/part_dvh_module-dvh.o -MD -MP -MF partmap/$(DEPDIR)/part_dvh_module-dvh.Tpo -c -o partmap/part_dvh_module-dvh.o `test -f 'partmap/dvh.c' || echo '$(srcdir)/'`partmap/dvh.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) partmap/$(DEPDIR)/part_dvh_module-dvh.Tpo partmap/$(DEPDIR)/part_dvh_module-dvh.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='partmap/dvh.c' object='partmap/part_dvh_module-dvh.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(part_dvh_module_CPPFLAGS) $(CPPFLAGS) $(part_dvh_module_CFLAGS) $(CFLAGS) -c -o partmap/part_dvh_module-dvh.o `test -f 'partmap/dvh.c' || echo '$(srcdir)/'`partmap/dvh.c - -partmap/part_dvh_module-dvh.obj: partmap/dvh.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(part_dvh_module_CPPFLAGS) $(CPPFLAGS) $(part_dvh_module_CFLAGS) $(CFLAGS) -MT partmap/part_dvh_module-dvh.obj -MD -MP -MF partmap/$(DEPDIR)/part_dvh_module-dvh.Tpo -c -o partmap/part_dvh_module-dvh.obj `if test -f 'partmap/dvh.c'; then $(CYGPATH_W) 'partmap/dvh.c'; else $(CYGPATH_W) '$(srcdir)/partmap/dvh.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) partmap/$(DEPDIR)/part_dvh_module-dvh.Tpo partmap/$(DEPDIR)/part_dvh_module-dvh.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='partmap/dvh.c' object='partmap/part_dvh_module-dvh.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(part_dvh_module_CPPFLAGS) $(CPPFLAGS) $(part_dvh_module_CFLAGS) $(CFLAGS) -c -o partmap/part_dvh_module-dvh.obj `if test -f 'partmap/dvh.c'; then $(CYGPATH_W) 'partmap/dvh.c'; else $(CYGPATH_W) '$(srcdir)/partmap/dvh.c'; fi` - -partmap/part_gpt_module-gpt.o: partmap/gpt.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(part_gpt_module_CPPFLAGS) $(CPPFLAGS) $(part_gpt_module_CFLAGS) $(CFLAGS) -MT partmap/part_gpt_module-gpt.o -MD -MP -MF partmap/$(DEPDIR)/part_gpt_module-gpt.Tpo -c -o partmap/part_gpt_module-gpt.o `test -f 'partmap/gpt.c' || echo '$(srcdir)/'`partmap/gpt.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) partmap/$(DEPDIR)/part_gpt_module-gpt.Tpo partmap/$(DEPDIR)/part_gpt_module-gpt.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='partmap/gpt.c' object='partmap/part_gpt_module-gpt.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(part_gpt_module_CPPFLAGS) $(CPPFLAGS) $(part_gpt_module_CFLAGS) $(CFLAGS) -c -o partmap/part_gpt_module-gpt.o `test -f 'partmap/gpt.c' || echo '$(srcdir)/'`partmap/gpt.c - -partmap/part_gpt_module-gpt.obj: partmap/gpt.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(part_gpt_module_CPPFLAGS) $(CPPFLAGS) $(part_gpt_module_CFLAGS) $(CFLAGS) -MT partmap/part_gpt_module-gpt.obj -MD -MP -MF partmap/$(DEPDIR)/part_gpt_module-gpt.Tpo -c -o partmap/part_gpt_module-gpt.obj `if test -f 'partmap/gpt.c'; then $(CYGPATH_W) 'partmap/gpt.c'; else $(CYGPATH_W) '$(srcdir)/partmap/gpt.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) partmap/$(DEPDIR)/part_gpt_module-gpt.Tpo partmap/$(DEPDIR)/part_gpt_module-gpt.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='partmap/gpt.c' object='partmap/part_gpt_module-gpt.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(part_gpt_module_CPPFLAGS) $(CPPFLAGS) $(part_gpt_module_CFLAGS) $(CFLAGS) -c -o partmap/part_gpt_module-gpt.obj `if test -f 'partmap/gpt.c'; then $(CYGPATH_W) 'partmap/gpt.c'; else $(CYGPATH_W) '$(srcdir)/partmap/gpt.c'; fi` - -partmap/part_msdos_module-msdos.o: partmap/msdos.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(part_msdos_module_CPPFLAGS) $(CPPFLAGS) $(part_msdos_module_CFLAGS) $(CFLAGS) -MT partmap/part_msdos_module-msdos.o -MD -MP -MF partmap/$(DEPDIR)/part_msdos_module-msdos.Tpo -c -o partmap/part_msdos_module-msdos.o `test -f 'partmap/msdos.c' || echo '$(srcdir)/'`partmap/msdos.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) partmap/$(DEPDIR)/part_msdos_module-msdos.Tpo partmap/$(DEPDIR)/part_msdos_module-msdos.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='partmap/msdos.c' object='partmap/part_msdos_module-msdos.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(part_msdos_module_CPPFLAGS) $(CPPFLAGS) $(part_msdos_module_CFLAGS) $(CFLAGS) -c -o partmap/part_msdos_module-msdos.o `test -f 'partmap/msdos.c' || echo '$(srcdir)/'`partmap/msdos.c - -partmap/part_msdos_module-msdos.obj: partmap/msdos.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(part_msdos_module_CPPFLAGS) $(CPPFLAGS) $(part_msdos_module_CFLAGS) $(CFLAGS) -MT partmap/part_msdos_module-msdos.obj -MD -MP -MF partmap/$(DEPDIR)/part_msdos_module-msdos.Tpo -c -o partmap/part_msdos_module-msdos.obj `if test -f 'partmap/msdos.c'; then $(CYGPATH_W) 'partmap/msdos.c'; else $(CYGPATH_W) '$(srcdir)/partmap/msdos.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) partmap/$(DEPDIR)/part_msdos_module-msdos.Tpo partmap/$(DEPDIR)/part_msdos_module-msdos.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='partmap/msdos.c' object='partmap/part_msdos_module-msdos.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(part_msdos_module_CPPFLAGS) $(CPPFLAGS) $(part_msdos_module_CFLAGS) $(CFLAGS) -c -o partmap/part_msdos_module-msdos.obj `if test -f 'partmap/msdos.c'; then $(CYGPATH_W) 'partmap/msdos.c'; else $(CYGPATH_W) '$(srcdir)/partmap/msdos.c'; fi` - -partmap/part_plan_module-plan.o: partmap/plan.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(part_plan_module_CPPFLAGS) $(CPPFLAGS) $(part_plan_module_CFLAGS) $(CFLAGS) -MT partmap/part_plan_module-plan.o -MD -MP -MF partmap/$(DEPDIR)/part_plan_module-plan.Tpo -c -o partmap/part_plan_module-plan.o `test -f 'partmap/plan.c' || echo '$(srcdir)/'`partmap/plan.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) partmap/$(DEPDIR)/part_plan_module-plan.Tpo partmap/$(DEPDIR)/part_plan_module-plan.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='partmap/plan.c' object='partmap/part_plan_module-plan.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(part_plan_module_CPPFLAGS) $(CPPFLAGS) $(part_plan_module_CFLAGS) $(CFLAGS) -c -o partmap/part_plan_module-plan.o `test -f 'partmap/plan.c' || echo '$(srcdir)/'`partmap/plan.c - -partmap/part_plan_module-plan.obj: partmap/plan.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(part_plan_module_CPPFLAGS) $(CPPFLAGS) $(part_plan_module_CFLAGS) $(CFLAGS) -MT partmap/part_plan_module-plan.obj -MD -MP -MF partmap/$(DEPDIR)/part_plan_module-plan.Tpo -c -o partmap/part_plan_module-plan.obj `if test -f 'partmap/plan.c'; then $(CYGPATH_W) 'partmap/plan.c'; else $(CYGPATH_W) '$(srcdir)/partmap/plan.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) partmap/$(DEPDIR)/part_plan_module-plan.Tpo partmap/$(DEPDIR)/part_plan_module-plan.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='partmap/plan.c' object='partmap/part_plan_module-plan.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(part_plan_module_CPPFLAGS) $(CPPFLAGS) $(part_plan_module_CFLAGS) $(CFLAGS) -c -o partmap/part_plan_module-plan.obj `if test -f 'partmap/plan.c'; then $(CYGPATH_W) 'partmap/plan.c'; else $(CYGPATH_W) '$(srcdir)/partmap/plan.c'; fi` - -partmap/part_sun_module-sun.o: partmap/sun.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(part_sun_module_CPPFLAGS) $(CPPFLAGS) $(part_sun_module_CFLAGS) $(CFLAGS) -MT partmap/part_sun_module-sun.o -MD -MP -MF partmap/$(DEPDIR)/part_sun_module-sun.Tpo -c -o partmap/part_sun_module-sun.o `test -f 'partmap/sun.c' || echo '$(srcdir)/'`partmap/sun.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) partmap/$(DEPDIR)/part_sun_module-sun.Tpo partmap/$(DEPDIR)/part_sun_module-sun.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='partmap/sun.c' object='partmap/part_sun_module-sun.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(part_sun_module_CPPFLAGS) $(CPPFLAGS) $(part_sun_module_CFLAGS) $(CFLAGS) -c -o partmap/part_sun_module-sun.o `test -f 'partmap/sun.c' || echo '$(srcdir)/'`partmap/sun.c - -partmap/part_sun_module-sun.obj: partmap/sun.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(part_sun_module_CPPFLAGS) $(CPPFLAGS) $(part_sun_module_CFLAGS) $(CFLAGS) -MT partmap/part_sun_module-sun.obj -MD -MP -MF partmap/$(DEPDIR)/part_sun_module-sun.Tpo -c -o partmap/part_sun_module-sun.obj `if test -f 'partmap/sun.c'; then $(CYGPATH_W) 'partmap/sun.c'; else $(CYGPATH_W) '$(srcdir)/partmap/sun.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) partmap/$(DEPDIR)/part_sun_module-sun.Tpo partmap/$(DEPDIR)/part_sun_module-sun.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='partmap/sun.c' object='partmap/part_sun_module-sun.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(part_sun_module_CPPFLAGS) $(CPPFLAGS) $(part_sun_module_CFLAGS) $(CFLAGS) -c -o partmap/part_sun_module-sun.obj `if test -f 'partmap/sun.c'; then $(CYGPATH_W) 'partmap/sun.c'; else $(CYGPATH_W) '$(srcdir)/partmap/sun.c'; fi` - -partmap/part_sunpc_module-sunpc.o: partmap/sunpc.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(part_sunpc_module_CPPFLAGS) $(CPPFLAGS) $(part_sunpc_module_CFLAGS) $(CFLAGS) -MT partmap/part_sunpc_module-sunpc.o -MD -MP -MF partmap/$(DEPDIR)/part_sunpc_module-sunpc.Tpo -c -o partmap/part_sunpc_module-sunpc.o `test -f 'partmap/sunpc.c' || echo '$(srcdir)/'`partmap/sunpc.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) partmap/$(DEPDIR)/part_sunpc_module-sunpc.Tpo partmap/$(DEPDIR)/part_sunpc_module-sunpc.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='partmap/sunpc.c' object='partmap/part_sunpc_module-sunpc.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(part_sunpc_module_CPPFLAGS) $(CPPFLAGS) $(part_sunpc_module_CFLAGS) $(CFLAGS) -c -o partmap/part_sunpc_module-sunpc.o `test -f 'partmap/sunpc.c' || echo '$(srcdir)/'`partmap/sunpc.c - -partmap/part_sunpc_module-sunpc.obj: partmap/sunpc.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(part_sunpc_module_CPPFLAGS) $(CPPFLAGS) $(part_sunpc_module_CFLAGS) $(CFLAGS) -MT partmap/part_sunpc_module-sunpc.obj -MD -MP -MF partmap/$(DEPDIR)/part_sunpc_module-sunpc.Tpo -c -o partmap/part_sunpc_module-sunpc.obj `if test -f 'partmap/sunpc.c'; then $(CYGPATH_W) 'partmap/sunpc.c'; else $(CYGPATH_W) '$(srcdir)/partmap/sunpc.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) partmap/$(DEPDIR)/part_sunpc_module-sunpc.Tpo partmap/$(DEPDIR)/part_sunpc_module-sunpc.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='partmap/sunpc.c' object='partmap/part_sunpc_module-sunpc.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(part_sunpc_module_CPPFLAGS) $(CPPFLAGS) $(part_sunpc_module_CFLAGS) $(CFLAGS) -c -o partmap/part_sunpc_module-sunpc.obj `if test -f 'partmap/sunpc.c'; then $(CYGPATH_W) 'partmap/sunpc.c'; else $(CYGPATH_W) '$(srcdir)/partmap/sunpc.c'; fi` - -commands/parttool_module-parttool.o: commands/parttool.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(parttool_module_CPPFLAGS) $(CPPFLAGS) $(parttool_module_CFLAGS) $(CFLAGS) -MT commands/parttool_module-parttool.o -MD -MP -MF commands/$(DEPDIR)/parttool_module-parttool.Tpo -c -o commands/parttool_module-parttool.o `test -f 'commands/parttool.c' || echo '$(srcdir)/'`commands/parttool.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/$(DEPDIR)/parttool_module-parttool.Tpo commands/$(DEPDIR)/parttool_module-parttool.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/parttool.c' object='commands/parttool_module-parttool.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(parttool_module_CPPFLAGS) $(CPPFLAGS) $(parttool_module_CFLAGS) $(CFLAGS) -c -o commands/parttool_module-parttool.o `test -f 'commands/parttool.c' || echo '$(srcdir)/'`commands/parttool.c - -commands/parttool_module-parttool.obj: commands/parttool.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(parttool_module_CPPFLAGS) $(CPPFLAGS) $(parttool_module_CFLAGS) $(CFLAGS) -MT commands/parttool_module-parttool.obj -MD -MP -MF commands/$(DEPDIR)/parttool_module-parttool.Tpo -c -o commands/parttool_module-parttool.obj `if test -f 'commands/parttool.c'; then $(CYGPATH_W) 'commands/parttool.c'; else $(CYGPATH_W) '$(srcdir)/commands/parttool.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/$(DEPDIR)/parttool_module-parttool.Tpo commands/$(DEPDIR)/parttool_module-parttool.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/parttool.c' object='commands/parttool_module-parttool.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(parttool_module_CPPFLAGS) $(CPPFLAGS) $(parttool_module_CFLAGS) $(CFLAGS) -c -o commands/parttool_module-parttool.obj `if test -f 'commands/parttool.c'; then $(CYGPATH_W) 'commands/parttool.c'; else $(CYGPATH_W) '$(srcdir)/commands/parttool.c'; fi` - -commands/password_module-password.o: commands/password.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(password_module_CPPFLAGS) $(CPPFLAGS) $(password_module_CFLAGS) $(CFLAGS) -MT commands/password_module-password.o -MD -MP -MF commands/$(DEPDIR)/password_module-password.Tpo -c -o commands/password_module-password.o `test -f 'commands/password.c' || echo '$(srcdir)/'`commands/password.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/$(DEPDIR)/password_module-password.Tpo commands/$(DEPDIR)/password_module-password.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/password.c' object='commands/password_module-password.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(password_module_CPPFLAGS) $(CPPFLAGS) $(password_module_CFLAGS) $(CFLAGS) -c -o commands/password_module-password.o `test -f 'commands/password.c' || echo '$(srcdir)/'`commands/password.c - -commands/password_module-password.obj: commands/password.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(password_module_CPPFLAGS) $(CPPFLAGS) $(password_module_CFLAGS) $(CFLAGS) -MT commands/password_module-password.obj -MD -MP -MF commands/$(DEPDIR)/password_module-password.Tpo -c -o commands/password_module-password.obj `if test -f 'commands/password.c'; then $(CYGPATH_W) 'commands/password.c'; else $(CYGPATH_W) '$(srcdir)/commands/password.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/$(DEPDIR)/password_module-password.Tpo commands/$(DEPDIR)/password_module-password.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/password.c' object='commands/password_module-password.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(password_module_CPPFLAGS) $(CPPFLAGS) $(password_module_CFLAGS) $(CFLAGS) -c -o commands/password_module-password.obj `if test -f 'commands/password.c'; then $(CYGPATH_W) 'commands/password.c'; else $(CYGPATH_W) '$(srcdir)/commands/password.c'; fi` - -commands/password_pbkdf2_module-password_pbkdf2.o: commands/password_pbkdf2.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(password_pbkdf2_module_CPPFLAGS) $(CPPFLAGS) $(password_pbkdf2_module_CFLAGS) $(CFLAGS) -MT commands/password_pbkdf2_module-password_pbkdf2.o -MD -MP -MF commands/$(DEPDIR)/password_pbkdf2_module-password_pbkdf2.Tpo -c -o commands/password_pbkdf2_module-password_pbkdf2.o `test -f 'commands/password_pbkdf2.c' || echo '$(srcdir)/'`commands/password_pbkdf2.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/$(DEPDIR)/password_pbkdf2_module-password_pbkdf2.Tpo commands/$(DEPDIR)/password_pbkdf2_module-password_pbkdf2.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/password_pbkdf2.c' object='commands/password_pbkdf2_module-password_pbkdf2.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(password_pbkdf2_module_CPPFLAGS) $(CPPFLAGS) $(password_pbkdf2_module_CFLAGS) $(CFLAGS) -c -o commands/password_pbkdf2_module-password_pbkdf2.o `test -f 'commands/password_pbkdf2.c' || echo '$(srcdir)/'`commands/password_pbkdf2.c - -commands/password_pbkdf2_module-password_pbkdf2.obj: commands/password_pbkdf2.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(password_pbkdf2_module_CPPFLAGS) $(CPPFLAGS) $(password_pbkdf2_module_CFLAGS) $(CFLAGS) -MT commands/password_pbkdf2_module-password_pbkdf2.obj -MD -MP -MF commands/$(DEPDIR)/password_pbkdf2_module-password_pbkdf2.Tpo -c -o commands/password_pbkdf2_module-password_pbkdf2.obj `if test -f 'commands/password_pbkdf2.c'; then $(CYGPATH_W) 'commands/password_pbkdf2.c'; else $(CYGPATH_W) '$(srcdir)/commands/password_pbkdf2.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/$(DEPDIR)/password_pbkdf2_module-password_pbkdf2.Tpo commands/$(DEPDIR)/password_pbkdf2_module-password_pbkdf2.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/password_pbkdf2.c' object='commands/password_pbkdf2_module-password_pbkdf2.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(password_pbkdf2_module_CPPFLAGS) $(CPPFLAGS) $(password_pbkdf2_module_CFLAGS) $(CFLAGS) -c -o commands/password_pbkdf2_module-password_pbkdf2.obj `if test -f 'commands/password_pbkdf2.c'; then $(CYGPATH_W) 'commands/password_pbkdf2.c'; else $(CYGPATH_W) '$(srcdir)/commands/password_pbkdf2.c'; fi` - -disk/pata_module-pata.o: disk/pata.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(pata_module_CPPFLAGS) $(CPPFLAGS) $(pata_module_CFLAGS) $(CFLAGS) -MT disk/pata_module-pata.o -MD -MP -MF disk/$(DEPDIR)/pata_module-pata.Tpo -c -o disk/pata_module-pata.o `test -f 'disk/pata.c' || echo '$(srcdir)/'`disk/pata.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) disk/$(DEPDIR)/pata_module-pata.Tpo disk/$(DEPDIR)/pata_module-pata.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='disk/pata.c' object='disk/pata_module-pata.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(pata_module_CPPFLAGS) $(CPPFLAGS) $(pata_module_CFLAGS) $(CFLAGS) -c -o disk/pata_module-pata.o `test -f 'disk/pata.c' || echo '$(srcdir)/'`disk/pata.c - -disk/pata_module-pata.obj: disk/pata.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(pata_module_CPPFLAGS) $(CPPFLAGS) $(pata_module_CFLAGS) $(CFLAGS) -MT disk/pata_module-pata.obj -MD -MP -MF disk/$(DEPDIR)/pata_module-pata.Tpo -c -o disk/pata_module-pata.obj `if test -f 'disk/pata.c'; then $(CYGPATH_W) 'disk/pata.c'; else $(CYGPATH_W) '$(srcdir)/disk/pata.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) disk/$(DEPDIR)/pata_module-pata.Tpo disk/$(DEPDIR)/pata_module-pata.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='disk/pata.c' object='disk/pata_module-pata.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(pata_module_CPPFLAGS) $(CPPFLAGS) $(pata_module_CFLAGS) $(CFLAGS) -c -o disk/pata_module-pata.obj `if test -f 'disk/pata.c'; then $(CYGPATH_W) 'disk/pata.c'; else $(CYGPATH_W) '$(srcdir)/disk/pata.c'; fi` - -lib/pbkdf2_module-pbkdf2.o: lib/pbkdf2.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(pbkdf2_module_CPPFLAGS) $(CPPFLAGS) $(pbkdf2_module_CFLAGS) $(CFLAGS) -MT lib/pbkdf2_module-pbkdf2.o -MD -MP -MF lib/$(DEPDIR)/pbkdf2_module-pbkdf2.Tpo -c -o lib/pbkdf2_module-pbkdf2.o `test -f 'lib/pbkdf2.c' || echo '$(srcdir)/'`lib/pbkdf2.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/$(DEPDIR)/pbkdf2_module-pbkdf2.Tpo lib/$(DEPDIR)/pbkdf2_module-pbkdf2.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/pbkdf2.c' object='lib/pbkdf2_module-pbkdf2.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(pbkdf2_module_CPPFLAGS) $(CPPFLAGS) $(pbkdf2_module_CFLAGS) $(CFLAGS) -c -o lib/pbkdf2_module-pbkdf2.o `test -f 'lib/pbkdf2.c' || echo '$(srcdir)/'`lib/pbkdf2.c - -lib/pbkdf2_module-pbkdf2.obj: lib/pbkdf2.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(pbkdf2_module_CPPFLAGS) $(CPPFLAGS) $(pbkdf2_module_CFLAGS) $(CFLAGS) -MT lib/pbkdf2_module-pbkdf2.obj -MD -MP -MF lib/$(DEPDIR)/pbkdf2_module-pbkdf2.Tpo -c -o lib/pbkdf2_module-pbkdf2.obj `if test -f 'lib/pbkdf2.c'; then $(CYGPATH_W) 'lib/pbkdf2.c'; else $(CYGPATH_W) '$(srcdir)/lib/pbkdf2.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/$(DEPDIR)/pbkdf2_module-pbkdf2.Tpo lib/$(DEPDIR)/pbkdf2_module-pbkdf2.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/pbkdf2.c' object='lib/pbkdf2_module-pbkdf2.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(pbkdf2_module_CPPFLAGS) $(CPPFLAGS) $(pbkdf2_module_CFLAGS) $(CFLAGS) -c -o lib/pbkdf2_module-pbkdf2.obj `if test -f 'lib/pbkdf2.c'; then $(CYGPATH_W) 'lib/pbkdf2.c'; else $(CYGPATH_W) '$(srcdir)/lib/pbkdf2.c'; fi` - -tests/pbkdf2_test_module-pbkdf2_test.o: tests/pbkdf2_test.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(pbkdf2_test_module_CPPFLAGS) $(CPPFLAGS) $(pbkdf2_test_module_CFLAGS) $(CFLAGS) -MT tests/pbkdf2_test_module-pbkdf2_test.o -MD -MP -MF tests/$(DEPDIR)/pbkdf2_test_module-pbkdf2_test.Tpo -c -o tests/pbkdf2_test_module-pbkdf2_test.o `test -f 'tests/pbkdf2_test.c' || echo '$(srcdir)/'`tests/pbkdf2_test.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) tests/$(DEPDIR)/pbkdf2_test_module-pbkdf2_test.Tpo tests/$(DEPDIR)/pbkdf2_test_module-pbkdf2_test.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='tests/pbkdf2_test.c' object='tests/pbkdf2_test_module-pbkdf2_test.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(pbkdf2_test_module_CPPFLAGS) $(CPPFLAGS) $(pbkdf2_test_module_CFLAGS) $(CFLAGS) -c -o tests/pbkdf2_test_module-pbkdf2_test.o `test -f 'tests/pbkdf2_test.c' || echo '$(srcdir)/'`tests/pbkdf2_test.c - -tests/pbkdf2_test_module-pbkdf2_test.obj: tests/pbkdf2_test.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(pbkdf2_test_module_CPPFLAGS) $(CPPFLAGS) $(pbkdf2_test_module_CFLAGS) $(CFLAGS) -MT tests/pbkdf2_test_module-pbkdf2_test.obj -MD -MP -MF tests/$(DEPDIR)/pbkdf2_test_module-pbkdf2_test.Tpo -c -o tests/pbkdf2_test_module-pbkdf2_test.obj `if test -f 'tests/pbkdf2_test.c'; then $(CYGPATH_W) 'tests/pbkdf2_test.c'; else $(CYGPATH_W) '$(srcdir)/tests/pbkdf2_test.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) tests/$(DEPDIR)/pbkdf2_test_module-pbkdf2_test.Tpo tests/$(DEPDIR)/pbkdf2_test_module-pbkdf2_test.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='tests/pbkdf2_test.c' object='tests/pbkdf2_test_module-pbkdf2_test.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(pbkdf2_test_module_CPPFLAGS) $(CPPFLAGS) $(pbkdf2_test_module_CFLAGS) $(CFLAGS) -c -o tests/pbkdf2_test_module-pbkdf2_test.obj `if test -f 'tests/pbkdf2_test.c'; then $(CYGPATH_W) 'tests/pbkdf2_test.c'; else $(CYGPATH_W) '$(srcdir)/tests/pbkdf2_test.c'; fi` - -bus/pci_module-pci.o: bus/pci.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(pci_module_CPPFLAGS) $(CPPFLAGS) $(pci_module_CFLAGS) $(CFLAGS) -MT bus/pci_module-pci.o -MD -MP -MF bus/$(DEPDIR)/pci_module-pci.Tpo -c -o bus/pci_module-pci.o `test -f 'bus/pci.c' || echo '$(srcdir)/'`bus/pci.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) bus/$(DEPDIR)/pci_module-pci.Tpo bus/$(DEPDIR)/pci_module-pci.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='bus/pci.c' object='bus/pci_module-pci.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(pci_module_CPPFLAGS) $(CPPFLAGS) $(pci_module_CFLAGS) $(CFLAGS) -c -o bus/pci_module-pci.o `test -f 'bus/pci.c' || echo '$(srcdir)/'`bus/pci.c - -bus/pci_module-pci.obj: bus/pci.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(pci_module_CPPFLAGS) $(CPPFLAGS) $(pci_module_CFLAGS) $(CFLAGS) -MT bus/pci_module-pci.obj -MD -MP -MF bus/$(DEPDIR)/pci_module-pci.Tpo -c -o bus/pci_module-pci.obj `if test -f 'bus/pci.c'; then $(CYGPATH_W) 'bus/pci.c'; else $(CYGPATH_W) '$(srcdir)/bus/pci.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) bus/$(DEPDIR)/pci_module-pci.Tpo bus/$(DEPDIR)/pci_module-pci.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='bus/pci.c' object='bus/pci_module-pci.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(pci_module_CPPFLAGS) $(CPPFLAGS) $(pci_module_CFLAGS) $(CFLAGS) -c -o bus/pci_module-pci.obj `if test -f 'bus/pci.c'; then $(CYGPATH_W) 'bus/pci.c'; else $(CYGPATH_W) '$(srcdir)/bus/pci.c'; fi` - -bus/i386/ieee1275/pci_module-pci.o: bus/i386/ieee1275/pci.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(pci_module_CPPFLAGS) $(CPPFLAGS) $(pci_module_CFLAGS) $(CFLAGS) -MT bus/i386/ieee1275/pci_module-pci.o -MD -MP -MF bus/i386/ieee1275/$(DEPDIR)/pci_module-pci.Tpo -c -o bus/i386/ieee1275/pci_module-pci.o `test -f 'bus/i386/ieee1275/pci.c' || echo '$(srcdir)/'`bus/i386/ieee1275/pci.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) bus/i386/ieee1275/$(DEPDIR)/pci_module-pci.Tpo bus/i386/ieee1275/$(DEPDIR)/pci_module-pci.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='bus/i386/ieee1275/pci.c' object='bus/i386/ieee1275/pci_module-pci.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(pci_module_CPPFLAGS) $(CPPFLAGS) $(pci_module_CFLAGS) $(CFLAGS) -c -o bus/i386/ieee1275/pci_module-pci.o `test -f 'bus/i386/ieee1275/pci.c' || echo '$(srcdir)/'`bus/i386/ieee1275/pci.c - -bus/i386/ieee1275/pci_module-pci.obj: bus/i386/ieee1275/pci.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(pci_module_CPPFLAGS) $(CPPFLAGS) $(pci_module_CFLAGS) $(CFLAGS) -MT bus/i386/ieee1275/pci_module-pci.obj -MD -MP -MF bus/i386/ieee1275/$(DEPDIR)/pci_module-pci.Tpo -c -o bus/i386/ieee1275/pci_module-pci.obj `if test -f 'bus/i386/ieee1275/pci.c'; then $(CYGPATH_W) 'bus/i386/ieee1275/pci.c'; else $(CYGPATH_W) '$(srcdir)/bus/i386/ieee1275/pci.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) bus/i386/ieee1275/$(DEPDIR)/pci_module-pci.Tpo bus/i386/ieee1275/$(DEPDIR)/pci_module-pci.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='bus/i386/ieee1275/pci.c' object='bus/i386/ieee1275/pci_module-pci.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(pci_module_CPPFLAGS) $(CPPFLAGS) $(pci_module_CFLAGS) $(CFLAGS) -c -o bus/i386/ieee1275/pci_module-pci.obj `if test -f 'bus/i386/ieee1275/pci.c'; then $(CYGPATH_W) 'bus/i386/ieee1275/pci.c'; else $(CYGPATH_W) '$(srcdir)/bus/i386/ieee1275/pci.c'; fi` - -commands/pcidump_module-pcidump.o: commands/pcidump.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(pcidump_module_CPPFLAGS) $(CPPFLAGS) $(pcidump_module_CFLAGS) $(CFLAGS) -MT commands/pcidump_module-pcidump.o -MD -MP -MF commands/$(DEPDIR)/pcidump_module-pcidump.Tpo -c -o commands/pcidump_module-pcidump.o `test -f 'commands/pcidump.c' || echo '$(srcdir)/'`commands/pcidump.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/$(DEPDIR)/pcidump_module-pcidump.Tpo commands/$(DEPDIR)/pcidump_module-pcidump.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/pcidump.c' object='commands/pcidump_module-pcidump.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(pcidump_module_CPPFLAGS) $(CPPFLAGS) $(pcidump_module_CFLAGS) $(CFLAGS) -c -o commands/pcidump_module-pcidump.o `test -f 'commands/pcidump.c' || echo '$(srcdir)/'`commands/pcidump.c - -commands/pcidump_module-pcidump.obj: commands/pcidump.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(pcidump_module_CPPFLAGS) $(CPPFLAGS) $(pcidump_module_CFLAGS) $(CFLAGS) -MT commands/pcidump_module-pcidump.obj -MD -MP -MF commands/$(DEPDIR)/pcidump_module-pcidump.Tpo -c -o commands/pcidump_module-pcidump.obj `if test -f 'commands/pcidump.c'; then $(CYGPATH_W) 'commands/pcidump.c'; else $(CYGPATH_W) '$(srcdir)/commands/pcidump.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/$(DEPDIR)/pcidump_module-pcidump.Tpo commands/$(DEPDIR)/pcidump_module-pcidump.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/pcidump.c' object='commands/pcidump_module-pcidump.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(pcidump_module_CPPFLAGS) $(CPPFLAGS) $(pcidump_module_CFLAGS) $(CFLAGS) -c -o commands/pcidump_module-pcidump.obj `if test -f 'commands/pcidump.c'; then $(CYGPATH_W) 'commands/pcidump.c'; else $(CYGPATH_W) '$(srcdir)/commands/pcidump.c'; fi` - -commands/pgp_module-pgp.o: commands/pgp.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(pgp_module_CPPFLAGS) $(CPPFLAGS) $(pgp_module_CFLAGS) $(CFLAGS) -MT commands/pgp_module-pgp.o -MD -MP -MF commands/$(DEPDIR)/pgp_module-pgp.Tpo -c -o commands/pgp_module-pgp.o `test -f 'commands/pgp.c' || echo '$(srcdir)/'`commands/pgp.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/$(DEPDIR)/pgp_module-pgp.Tpo commands/$(DEPDIR)/pgp_module-pgp.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/pgp.c' object='commands/pgp_module-pgp.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(pgp_module_CPPFLAGS) $(CPPFLAGS) $(pgp_module_CFLAGS) $(CFLAGS) -c -o commands/pgp_module-pgp.o `test -f 'commands/pgp.c' || echo '$(srcdir)/'`commands/pgp.c - -commands/pgp_module-pgp.obj: commands/pgp.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(pgp_module_CPPFLAGS) $(CPPFLAGS) $(pgp_module_CFLAGS) $(CFLAGS) -MT commands/pgp_module-pgp.obj -MD -MP -MF commands/$(DEPDIR)/pgp_module-pgp.Tpo -c -o commands/pgp_module-pgp.obj `if test -f 'commands/pgp.c'; then $(CYGPATH_W) 'commands/pgp.c'; else $(CYGPATH_W) '$(srcdir)/commands/pgp.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/$(DEPDIR)/pgp_module-pgp.Tpo commands/$(DEPDIR)/pgp_module-pgp.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/pgp.c' object='commands/pgp_module-pgp.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(pgp_module_CPPFLAGS) $(CPPFLAGS) $(pgp_module_CFLAGS) $(CFLAGS) -c -o commands/pgp_module-pgp.obj `if test -f 'commands/pgp.c'; then $(CYGPATH_W) 'commands/pgp.c'; else $(CYGPATH_W) '$(srcdir)/commands/pgp.c'; fi` - -loader/i386/pc/plan9_module-plan9.o: loader/i386/pc/plan9.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(plan9_module_CPPFLAGS) $(CPPFLAGS) $(plan9_module_CFLAGS) $(CFLAGS) -MT loader/i386/pc/plan9_module-plan9.o -MD -MP -MF loader/i386/pc/$(DEPDIR)/plan9_module-plan9.Tpo -c -o loader/i386/pc/plan9_module-plan9.o `test -f 'loader/i386/pc/plan9.c' || echo '$(srcdir)/'`loader/i386/pc/plan9.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) loader/i386/pc/$(DEPDIR)/plan9_module-plan9.Tpo loader/i386/pc/$(DEPDIR)/plan9_module-plan9.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='loader/i386/pc/plan9.c' object='loader/i386/pc/plan9_module-plan9.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(plan9_module_CPPFLAGS) $(CPPFLAGS) $(plan9_module_CFLAGS) $(CFLAGS) -c -o loader/i386/pc/plan9_module-plan9.o `test -f 'loader/i386/pc/plan9.c' || echo '$(srcdir)/'`loader/i386/pc/plan9.c - -loader/i386/pc/plan9_module-plan9.obj: loader/i386/pc/plan9.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(plan9_module_CPPFLAGS) $(CPPFLAGS) $(plan9_module_CFLAGS) $(CFLAGS) -MT loader/i386/pc/plan9_module-plan9.obj -MD -MP -MF loader/i386/pc/$(DEPDIR)/plan9_module-plan9.Tpo -c -o loader/i386/pc/plan9_module-plan9.obj `if test -f 'loader/i386/pc/plan9.c'; then $(CYGPATH_W) 'loader/i386/pc/plan9.c'; else $(CYGPATH_W) '$(srcdir)/loader/i386/pc/plan9.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) loader/i386/pc/$(DEPDIR)/plan9_module-plan9.Tpo loader/i386/pc/$(DEPDIR)/plan9_module-plan9.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='loader/i386/pc/plan9.c' object='loader/i386/pc/plan9_module-plan9.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(plan9_module_CPPFLAGS) $(CPPFLAGS) $(plan9_module_CFLAGS) $(CFLAGS) -c -o loader/i386/pc/plan9_module-plan9.obj `if test -f 'loader/i386/pc/plan9.c'; then $(CYGPATH_W) 'loader/i386/pc/plan9.c'; else $(CYGPATH_W) '$(srcdir)/loader/i386/pc/plan9.c'; fi` - -commands/i386/pc/play_module-play.o: commands/i386/pc/play.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(play_module_CPPFLAGS) $(CPPFLAGS) $(play_module_CFLAGS) $(CFLAGS) -MT commands/i386/pc/play_module-play.o -MD -MP -MF commands/i386/pc/$(DEPDIR)/play_module-play.Tpo -c -o commands/i386/pc/play_module-play.o `test -f 'commands/i386/pc/play.c' || echo '$(srcdir)/'`commands/i386/pc/play.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/i386/pc/$(DEPDIR)/play_module-play.Tpo commands/i386/pc/$(DEPDIR)/play_module-play.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/i386/pc/play.c' object='commands/i386/pc/play_module-play.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(play_module_CPPFLAGS) $(CPPFLAGS) $(play_module_CFLAGS) $(CFLAGS) -c -o commands/i386/pc/play_module-play.o `test -f 'commands/i386/pc/play.c' || echo '$(srcdir)/'`commands/i386/pc/play.c - -commands/i386/pc/play_module-play.obj: commands/i386/pc/play.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(play_module_CPPFLAGS) $(CPPFLAGS) $(play_module_CFLAGS) $(CFLAGS) -MT commands/i386/pc/play_module-play.obj -MD -MP -MF commands/i386/pc/$(DEPDIR)/play_module-play.Tpo -c -o commands/i386/pc/play_module-play.obj `if test -f 'commands/i386/pc/play.c'; then $(CYGPATH_W) 'commands/i386/pc/play.c'; else $(CYGPATH_W) '$(srcdir)/commands/i386/pc/play.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/i386/pc/$(DEPDIR)/play_module-play.Tpo commands/i386/pc/$(DEPDIR)/play_module-play.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/i386/pc/play.c' object='commands/i386/pc/play_module-play.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(play_module_CPPFLAGS) $(CPPFLAGS) $(play_module_CFLAGS) $(CFLAGS) -c -o commands/i386/pc/play_module-play.obj `if test -f 'commands/i386/pc/play.c'; then $(CYGPATH_W) 'commands/i386/pc/play.c'; else $(CYGPATH_W) '$(srcdir)/commands/i386/pc/play.c'; fi` - -video/readers/png_module-png.o: video/readers/png.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(png_module_CPPFLAGS) $(CPPFLAGS) $(png_module_CFLAGS) $(CFLAGS) -MT video/readers/png_module-png.o -MD -MP -MF video/readers/$(DEPDIR)/png_module-png.Tpo -c -o video/readers/png_module-png.o `test -f 'video/readers/png.c' || echo '$(srcdir)/'`video/readers/png.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) video/readers/$(DEPDIR)/png_module-png.Tpo video/readers/$(DEPDIR)/png_module-png.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='video/readers/png.c' object='video/readers/png_module-png.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(png_module_CPPFLAGS) $(CPPFLAGS) $(png_module_CFLAGS) $(CFLAGS) -c -o video/readers/png_module-png.o `test -f 'video/readers/png.c' || echo '$(srcdir)/'`video/readers/png.c - -video/readers/png_module-png.obj: video/readers/png.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(png_module_CPPFLAGS) $(CPPFLAGS) $(png_module_CFLAGS) $(CFLAGS) -MT video/readers/png_module-png.obj -MD -MP -MF video/readers/$(DEPDIR)/png_module-png.Tpo -c -o video/readers/png_module-png.obj `if test -f 'video/readers/png.c'; then $(CYGPATH_W) 'video/readers/png.c'; else $(CYGPATH_W) '$(srcdir)/video/readers/png.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) video/readers/$(DEPDIR)/png_module-png.Tpo video/readers/$(DEPDIR)/png_module-png.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='video/readers/png.c' object='video/readers/png_module-png.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(png_module_CPPFLAGS) $(CPPFLAGS) $(png_module_CFLAGS) $(CFLAGS) -c -o video/readers/png_module-png.obj `if test -f 'video/readers/png.c'; then $(CYGPATH_W) 'video/readers/png.c'; else $(CYGPATH_W) '$(srcdir)/video/readers/png.c'; fi` - -lib/priority_queue_module-priority_queue.o: lib/priority_queue.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(priority_queue_module_CPPFLAGS) $(CPPFLAGS) $(priority_queue_module_CFLAGS) $(CFLAGS) -MT lib/priority_queue_module-priority_queue.o -MD -MP -MF lib/$(DEPDIR)/priority_queue_module-priority_queue.Tpo -c -o lib/priority_queue_module-priority_queue.o `test -f 'lib/priority_queue.c' || echo '$(srcdir)/'`lib/priority_queue.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/$(DEPDIR)/priority_queue_module-priority_queue.Tpo lib/$(DEPDIR)/priority_queue_module-priority_queue.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/priority_queue.c' object='lib/priority_queue_module-priority_queue.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(priority_queue_module_CPPFLAGS) $(CPPFLAGS) $(priority_queue_module_CFLAGS) $(CFLAGS) -c -o lib/priority_queue_module-priority_queue.o `test -f 'lib/priority_queue.c' || echo '$(srcdir)/'`lib/priority_queue.c - -lib/priority_queue_module-priority_queue.obj: lib/priority_queue.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(priority_queue_module_CPPFLAGS) $(CPPFLAGS) $(priority_queue_module_CFLAGS) $(CFLAGS) -MT lib/priority_queue_module-priority_queue.obj -MD -MP -MF lib/$(DEPDIR)/priority_queue_module-priority_queue.Tpo -c -o lib/priority_queue_module-priority_queue.obj `if test -f 'lib/priority_queue.c'; then $(CYGPATH_W) 'lib/priority_queue.c'; else $(CYGPATH_W) '$(srcdir)/lib/priority_queue.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/$(DEPDIR)/priority_queue_module-priority_queue.Tpo lib/$(DEPDIR)/priority_queue_module-priority_queue.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/priority_queue.c' object='lib/priority_queue_module-priority_queue.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(priority_queue_module_CPPFLAGS) $(CPPFLAGS) $(priority_queue_module_CFLAGS) $(CFLAGS) -c -o lib/priority_queue_module-priority_queue.obj `if test -f 'lib/priority_queue.c'; then $(CYGPATH_W) 'lib/priority_queue.c'; else $(CYGPATH_W) '$(srcdir)/lib/priority_queue.c'; fi` - -commands/probe_module-probe.o: commands/probe.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(probe_module_CPPFLAGS) $(CPPFLAGS) $(probe_module_CFLAGS) $(CFLAGS) -MT commands/probe_module-probe.o -MD -MP -MF commands/$(DEPDIR)/probe_module-probe.Tpo -c -o commands/probe_module-probe.o `test -f 'commands/probe.c' || echo '$(srcdir)/'`commands/probe.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/$(DEPDIR)/probe_module-probe.Tpo commands/$(DEPDIR)/probe_module-probe.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/probe.c' object='commands/probe_module-probe.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(probe_module_CPPFLAGS) $(CPPFLAGS) $(probe_module_CFLAGS) $(CFLAGS) -c -o commands/probe_module-probe.o `test -f 'commands/probe.c' || echo '$(srcdir)/'`commands/probe.c - -commands/probe_module-probe.obj: commands/probe.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(probe_module_CPPFLAGS) $(CPPFLAGS) $(probe_module_CFLAGS) $(CFLAGS) -MT commands/probe_module-probe.obj -MD -MP -MF commands/$(DEPDIR)/probe_module-probe.Tpo -c -o commands/probe_module-probe.obj `if test -f 'commands/probe.c'; then $(CYGPATH_W) 'commands/probe.c'; else $(CYGPATH_W) '$(srcdir)/commands/probe.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/$(DEPDIR)/probe_module-probe.Tpo commands/$(DEPDIR)/probe_module-probe.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/probe.c' object='commands/probe_module-probe.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(probe_module_CPPFLAGS) $(CPPFLAGS) $(probe_module_CFLAGS) $(CFLAGS) -c -o commands/probe_module-probe.obj `if test -f 'commands/probe.c'; then $(CYGPATH_W) 'commands/probe.c'; else $(CYGPATH_W) '$(srcdir)/commands/probe.c'; fi` - -fs/procfs_module-proc.o: fs/proc.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(procfs_module_CPPFLAGS) $(CPPFLAGS) $(procfs_module_CFLAGS) $(CFLAGS) -MT fs/procfs_module-proc.o -MD -MP -MF fs/$(DEPDIR)/procfs_module-proc.Tpo -c -o fs/procfs_module-proc.o `test -f 'fs/proc.c' || echo '$(srcdir)/'`fs/proc.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) fs/$(DEPDIR)/procfs_module-proc.Tpo fs/$(DEPDIR)/procfs_module-proc.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='fs/proc.c' object='fs/procfs_module-proc.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(procfs_module_CPPFLAGS) $(CPPFLAGS) $(procfs_module_CFLAGS) $(CFLAGS) -c -o fs/procfs_module-proc.o `test -f 'fs/proc.c' || echo '$(srcdir)/'`fs/proc.c - -fs/procfs_module-proc.obj: fs/proc.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(procfs_module_CPPFLAGS) $(CPPFLAGS) $(procfs_module_CFLAGS) $(CFLAGS) -MT fs/procfs_module-proc.obj -MD -MP -MF fs/$(DEPDIR)/procfs_module-proc.Tpo -c -o fs/procfs_module-proc.obj `if test -f 'fs/proc.c'; then $(CYGPATH_W) 'fs/proc.c'; else $(CYGPATH_W) '$(srcdir)/fs/proc.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) fs/$(DEPDIR)/procfs_module-proc.Tpo fs/$(DEPDIR)/procfs_module-proc.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='fs/proc.c' object='fs/procfs_module-proc.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(procfs_module_CPPFLAGS) $(CPPFLAGS) $(procfs_module_CFLAGS) $(CFLAGS) -c -o fs/procfs_module-proc.obj `if test -f 'fs/proc.c'; then $(CYGPATH_W) 'fs/proc.c'; else $(CYGPATH_W) '$(srcdir)/fs/proc.c'; fi` - -lib/progress_module-progress.o: lib/progress.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(progress_module_CPPFLAGS) $(CPPFLAGS) $(progress_module_CFLAGS) $(CFLAGS) -MT lib/progress_module-progress.o -MD -MP -MF lib/$(DEPDIR)/progress_module-progress.Tpo -c -o lib/progress_module-progress.o `test -f 'lib/progress.c' || echo '$(srcdir)/'`lib/progress.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/$(DEPDIR)/progress_module-progress.Tpo lib/$(DEPDIR)/progress_module-progress.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/progress.c' object='lib/progress_module-progress.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(progress_module_CPPFLAGS) $(CPPFLAGS) $(progress_module_CFLAGS) $(CFLAGS) -c -o lib/progress_module-progress.o `test -f 'lib/progress.c' || echo '$(srcdir)/'`lib/progress.c - -lib/progress_module-progress.obj: lib/progress.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(progress_module_CPPFLAGS) $(CPPFLAGS) $(progress_module_CFLAGS) $(CFLAGS) -MT lib/progress_module-progress.obj -MD -MP -MF lib/$(DEPDIR)/progress_module-progress.Tpo -c -o lib/progress_module-progress.obj `if test -f 'lib/progress.c'; then $(CYGPATH_W) 'lib/progress.c'; else $(CYGPATH_W) '$(srcdir)/lib/progress.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/$(DEPDIR)/progress_module-progress.Tpo lib/$(DEPDIR)/progress_module-progress.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/progress.c' object='lib/progress_module-progress.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(progress_module_CPPFLAGS) $(CPPFLAGS) $(progress_module_CFLAGS) $(CFLAGS) -c -o lib/progress_module-progress.obj `if test -f 'lib/progress.c'; then $(CYGPATH_W) 'lib/progress.c'; else $(CYGPATH_W) '$(srcdir)/lib/progress.c'; fi` - -net/drivers/i386/pc/pxe_module-pxe.o: net/drivers/i386/pc/pxe.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(pxe_module_CPPFLAGS) $(CPPFLAGS) $(pxe_module_CFLAGS) $(CFLAGS) -MT net/drivers/i386/pc/pxe_module-pxe.o -MD -MP -MF net/drivers/i386/pc/$(DEPDIR)/pxe_module-pxe.Tpo -c -o net/drivers/i386/pc/pxe_module-pxe.o `test -f 'net/drivers/i386/pc/pxe.c' || echo '$(srcdir)/'`net/drivers/i386/pc/pxe.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) net/drivers/i386/pc/$(DEPDIR)/pxe_module-pxe.Tpo net/drivers/i386/pc/$(DEPDIR)/pxe_module-pxe.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='net/drivers/i386/pc/pxe.c' object='net/drivers/i386/pc/pxe_module-pxe.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(pxe_module_CPPFLAGS) $(CPPFLAGS) $(pxe_module_CFLAGS) $(CFLAGS) -c -o net/drivers/i386/pc/pxe_module-pxe.o `test -f 'net/drivers/i386/pc/pxe.c' || echo '$(srcdir)/'`net/drivers/i386/pc/pxe.c - -net/drivers/i386/pc/pxe_module-pxe.obj: net/drivers/i386/pc/pxe.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(pxe_module_CPPFLAGS) $(CPPFLAGS) $(pxe_module_CFLAGS) $(CFLAGS) -MT net/drivers/i386/pc/pxe_module-pxe.obj -MD -MP -MF net/drivers/i386/pc/$(DEPDIR)/pxe_module-pxe.Tpo -c -o net/drivers/i386/pc/pxe_module-pxe.obj `if test -f 'net/drivers/i386/pc/pxe.c'; then $(CYGPATH_W) 'net/drivers/i386/pc/pxe.c'; else $(CYGPATH_W) '$(srcdir)/net/drivers/i386/pc/pxe.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) net/drivers/i386/pc/$(DEPDIR)/pxe_module-pxe.Tpo net/drivers/i386/pc/$(DEPDIR)/pxe_module-pxe.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='net/drivers/i386/pc/pxe.c' object='net/drivers/i386/pc/pxe_module-pxe.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(pxe_module_CPPFLAGS) $(CPPFLAGS) $(pxe_module_CFLAGS) $(CFLAGS) -c -o net/drivers/i386/pc/pxe_module-pxe.obj `if test -f 'net/drivers/i386/pc/pxe.c'; then $(CYGPATH_W) 'net/drivers/i386/pc/pxe.c'; else $(CYGPATH_W) '$(srcdir)/net/drivers/i386/pc/pxe.c'; fi` - -loader/i386/pc/pxechain_module-pxechainloader.o: loader/i386/pc/pxechainloader.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(pxechain_module_CPPFLAGS) $(CPPFLAGS) $(pxechain_module_CFLAGS) $(CFLAGS) -MT loader/i386/pc/pxechain_module-pxechainloader.o -MD -MP -MF loader/i386/pc/$(DEPDIR)/pxechain_module-pxechainloader.Tpo -c -o loader/i386/pc/pxechain_module-pxechainloader.o `test -f 'loader/i386/pc/pxechainloader.c' || echo '$(srcdir)/'`loader/i386/pc/pxechainloader.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) loader/i386/pc/$(DEPDIR)/pxechain_module-pxechainloader.Tpo loader/i386/pc/$(DEPDIR)/pxechain_module-pxechainloader.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='loader/i386/pc/pxechainloader.c' object='loader/i386/pc/pxechain_module-pxechainloader.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(pxechain_module_CPPFLAGS) $(CPPFLAGS) $(pxechain_module_CFLAGS) $(CFLAGS) -c -o loader/i386/pc/pxechain_module-pxechainloader.o `test -f 'loader/i386/pc/pxechainloader.c' || echo '$(srcdir)/'`loader/i386/pc/pxechainloader.c - -loader/i386/pc/pxechain_module-pxechainloader.obj: loader/i386/pc/pxechainloader.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(pxechain_module_CPPFLAGS) $(CPPFLAGS) $(pxechain_module_CFLAGS) $(CFLAGS) -MT loader/i386/pc/pxechain_module-pxechainloader.obj -MD -MP -MF loader/i386/pc/$(DEPDIR)/pxechain_module-pxechainloader.Tpo -c -o loader/i386/pc/pxechain_module-pxechainloader.obj `if test -f 'loader/i386/pc/pxechainloader.c'; then $(CYGPATH_W) 'loader/i386/pc/pxechainloader.c'; else $(CYGPATH_W) '$(srcdir)/loader/i386/pc/pxechainloader.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) loader/i386/pc/$(DEPDIR)/pxechain_module-pxechainloader.Tpo loader/i386/pc/$(DEPDIR)/pxechain_module-pxechainloader.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='loader/i386/pc/pxechainloader.c' object='loader/i386/pc/pxechain_module-pxechainloader.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(pxechain_module_CPPFLAGS) $(CPPFLAGS) $(pxechain_module_CFLAGS) $(CFLAGS) -c -o loader/i386/pc/pxechain_module-pxechainloader.obj `if test -f 'loader/i386/pc/pxechainloader.c'; then $(CYGPATH_W) 'loader/i386/pc/pxechainloader.c'; else $(CYGPATH_W) '$(srcdir)/loader/i386/pc/pxechainloader.c'; fi` - -disk/raid5rec_module-raid5_recover.o: disk/raid5_recover.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(raid5rec_module_CPPFLAGS) $(CPPFLAGS) $(raid5rec_module_CFLAGS) $(CFLAGS) -MT disk/raid5rec_module-raid5_recover.o -MD -MP -MF disk/$(DEPDIR)/raid5rec_module-raid5_recover.Tpo -c -o disk/raid5rec_module-raid5_recover.o `test -f 'disk/raid5_recover.c' || echo '$(srcdir)/'`disk/raid5_recover.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) disk/$(DEPDIR)/raid5rec_module-raid5_recover.Tpo disk/$(DEPDIR)/raid5rec_module-raid5_recover.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='disk/raid5_recover.c' object='disk/raid5rec_module-raid5_recover.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(raid5rec_module_CPPFLAGS) $(CPPFLAGS) $(raid5rec_module_CFLAGS) $(CFLAGS) -c -o disk/raid5rec_module-raid5_recover.o `test -f 'disk/raid5_recover.c' || echo '$(srcdir)/'`disk/raid5_recover.c - -disk/raid5rec_module-raid5_recover.obj: disk/raid5_recover.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(raid5rec_module_CPPFLAGS) $(CPPFLAGS) $(raid5rec_module_CFLAGS) $(CFLAGS) -MT disk/raid5rec_module-raid5_recover.obj -MD -MP -MF disk/$(DEPDIR)/raid5rec_module-raid5_recover.Tpo -c -o disk/raid5rec_module-raid5_recover.obj `if test -f 'disk/raid5_recover.c'; then $(CYGPATH_W) 'disk/raid5_recover.c'; else $(CYGPATH_W) '$(srcdir)/disk/raid5_recover.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) disk/$(DEPDIR)/raid5rec_module-raid5_recover.Tpo disk/$(DEPDIR)/raid5rec_module-raid5_recover.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='disk/raid5_recover.c' object='disk/raid5rec_module-raid5_recover.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(raid5rec_module_CPPFLAGS) $(CPPFLAGS) $(raid5rec_module_CFLAGS) $(CFLAGS) -c -o disk/raid5rec_module-raid5_recover.obj `if test -f 'disk/raid5_recover.c'; then $(CYGPATH_W) 'disk/raid5_recover.c'; else $(CYGPATH_W) '$(srcdir)/disk/raid5_recover.c'; fi` - -disk/raid6rec_module-raid6_recover.o: disk/raid6_recover.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(raid6rec_module_CPPFLAGS) $(CPPFLAGS) $(raid6rec_module_CFLAGS) $(CFLAGS) -MT disk/raid6rec_module-raid6_recover.o -MD -MP -MF disk/$(DEPDIR)/raid6rec_module-raid6_recover.Tpo -c -o disk/raid6rec_module-raid6_recover.o `test -f 'disk/raid6_recover.c' || echo '$(srcdir)/'`disk/raid6_recover.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) disk/$(DEPDIR)/raid6rec_module-raid6_recover.Tpo disk/$(DEPDIR)/raid6rec_module-raid6_recover.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='disk/raid6_recover.c' object='disk/raid6rec_module-raid6_recover.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(raid6rec_module_CPPFLAGS) $(CPPFLAGS) $(raid6rec_module_CFLAGS) $(CFLAGS) -c -o disk/raid6rec_module-raid6_recover.o `test -f 'disk/raid6_recover.c' || echo '$(srcdir)/'`disk/raid6_recover.c - -disk/raid6rec_module-raid6_recover.obj: disk/raid6_recover.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(raid6rec_module_CPPFLAGS) $(CPPFLAGS) $(raid6rec_module_CFLAGS) $(CFLAGS) -MT disk/raid6rec_module-raid6_recover.obj -MD -MP -MF disk/$(DEPDIR)/raid6rec_module-raid6_recover.Tpo -c -o disk/raid6rec_module-raid6_recover.obj `if test -f 'disk/raid6_recover.c'; then $(CYGPATH_W) 'disk/raid6_recover.c'; else $(CYGPATH_W) '$(srcdir)/disk/raid6_recover.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) disk/$(DEPDIR)/raid6rec_module-raid6_recover.Tpo disk/$(DEPDIR)/raid6rec_module-raid6_recover.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='disk/raid6_recover.c' object='disk/raid6rec_module-raid6_recover.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(raid6rec_module_CPPFLAGS) $(CPPFLAGS) $(raid6rec_module_CFLAGS) $(CFLAGS) -c -o disk/raid6rec_module-raid6_recover.obj `if test -f 'disk/raid6_recover.c'; then $(CYGPATH_W) 'disk/raid6_recover.c'; else $(CYGPATH_W) '$(srcdir)/disk/raid6_recover.c'; fi` - -kern/i386/random_module-tsc_pmtimer.o: kern/i386/tsc_pmtimer.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(random_module_CPPFLAGS) $(CPPFLAGS) $(random_module_CFLAGS) $(CFLAGS) -MT kern/i386/random_module-tsc_pmtimer.o -MD -MP -MF kern/i386/$(DEPDIR)/random_module-tsc_pmtimer.Tpo -c -o kern/i386/random_module-tsc_pmtimer.o `test -f 'kern/i386/tsc_pmtimer.c' || echo '$(srcdir)/'`kern/i386/tsc_pmtimer.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/i386/$(DEPDIR)/random_module-tsc_pmtimer.Tpo kern/i386/$(DEPDIR)/random_module-tsc_pmtimer.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/i386/tsc_pmtimer.c' object='kern/i386/random_module-tsc_pmtimer.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(random_module_CPPFLAGS) $(CPPFLAGS) $(random_module_CFLAGS) $(CFLAGS) -c -o kern/i386/random_module-tsc_pmtimer.o `test -f 'kern/i386/tsc_pmtimer.c' || echo '$(srcdir)/'`kern/i386/tsc_pmtimer.c - -kern/i386/random_module-tsc_pmtimer.obj: kern/i386/tsc_pmtimer.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(random_module_CPPFLAGS) $(CPPFLAGS) $(random_module_CFLAGS) $(CFLAGS) -MT kern/i386/random_module-tsc_pmtimer.obj -MD -MP -MF kern/i386/$(DEPDIR)/random_module-tsc_pmtimer.Tpo -c -o kern/i386/random_module-tsc_pmtimer.obj `if test -f 'kern/i386/tsc_pmtimer.c'; then $(CYGPATH_W) 'kern/i386/tsc_pmtimer.c'; else $(CYGPATH_W) '$(srcdir)/kern/i386/tsc_pmtimer.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/i386/$(DEPDIR)/random_module-tsc_pmtimer.Tpo kern/i386/$(DEPDIR)/random_module-tsc_pmtimer.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/i386/tsc_pmtimer.c' object='kern/i386/random_module-tsc_pmtimer.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(random_module_CPPFLAGS) $(CPPFLAGS) $(random_module_CFLAGS) $(CFLAGS) -c -o kern/i386/random_module-tsc_pmtimer.obj `if test -f 'kern/i386/tsc_pmtimer.c'; then $(CYGPATH_W) 'kern/i386/tsc_pmtimer.c'; else $(CYGPATH_W) '$(srcdir)/kern/i386/tsc_pmtimer.c'; fi` - -lib/i386/random_module-random.o: lib/i386/random.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(random_module_CPPFLAGS) $(CPPFLAGS) $(random_module_CFLAGS) $(CFLAGS) -MT lib/i386/random_module-random.o -MD -MP -MF lib/i386/$(DEPDIR)/random_module-random.Tpo -c -o lib/i386/random_module-random.o `test -f 'lib/i386/random.c' || echo '$(srcdir)/'`lib/i386/random.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/i386/$(DEPDIR)/random_module-random.Tpo lib/i386/$(DEPDIR)/random_module-random.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/i386/random.c' object='lib/i386/random_module-random.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(random_module_CPPFLAGS) $(CPPFLAGS) $(random_module_CFLAGS) $(CFLAGS) -c -o lib/i386/random_module-random.o `test -f 'lib/i386/random.c' || echo '$(srcdir)/'`lib/i386/random.c - -lib/i386/random_module-random.obj: lib/i386/random.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(random_module_CPPFLAGS) $(CPPFLAGS) $(random_module_CFLAGS) $(CFLAGS) -MT lib/i386/random_module-random.obj -MD -MP -MF lib/i386/$(DEPDIR)/random_module-random.Tpo -c -o lib/i386/random_module-random.obj `if test -f 'lib/i386/random.c'; then $(CYGPATH_W) 'lib/i386/random.c'; else $(CYGPATH_W) '$(srcdir)/lib/i386/random.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/i386/$(DEPDIR)/random_module-random.Tpo lib/i386/$(DEPDIR)/random_module-random.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/i386/random.c' object='lib/i386/random_module-random.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(random_module_CPPFLAGS) $(CPPFLAGS) $(random_module_CFLAGS) $(CFLAGS) -c -o lib/i386/random_module-random.obj `if test -f 'lib/i386/random.c'; then $(CYGPATH_W) 'lib/i386/random.c'; else $(CYGPATH_W) '$(srcdir)/lib/i386/random.c'; fi` - -lib/random_module-random.o: lib/random.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(random_module_CPPFLAGS) $(CPPFLAGS) $(random_module_CFLAGS) $(CFLAGS) -MT lib/random_module-random.o -MD -MP -MF lib/$(DEPDIR)/random_module-random.Tpo -c -o lib/random_module-random.o `test -f 'lib/random.c' || echo '$(srcdir)/'`lib/random.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/$(DEPDIR)/random_module-random.Tpo lib/$(DEPDIR)/random_module-random.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/random.c' object='lib/random_module-random.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(random_module_CPPFLAGS) $(CPPFLAGS) $(random_module_CFLAGS) $(CFLAGS) -c -o lib/random_module-random.o `test -f 'lib/random.c' || echo '$(srcdir)/'`lib/random.c - -lib/random_module-random.obj: lib/random.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(random_module_CPPFLAGS) $(CPPFLAGS) $(random_module_CFLAGS) $(CFLAGS) -MT lib/random_module-random.obj -MD -MP -MF lib/$(DEPDIR)/random_module-random.Tpo -c -o lib/random_module-random.obj `if test -f 'lib/random.c'; then $(CYGPATH_W) 'lib/random.c'; else $(CYGPATH_W) '$(srcdir)/lib/random.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/$(DEPDIR)/random_module-random.Tpo lib/$(DEPDIR)/random_module-random.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/random.c' object='lib/random_module-random.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(random_module_CPPFLAGS) $(CPPFLAGS) $(random_module_CFLAGS) $(CFLAGS) -c -o lib/random_module-random.obj `if test -f 'lib/random.c'; then $(CYGPATH_W) 'lib/random.c'; else $(CYGPATH_W) '$(srcdir)/lib/random.c'; fi` - -commands/i386/rdmsr_module-rdmsr.o: commands/i386/rdmsr.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(rdmsr_module_CPPFLAGS) $(CPPFLAGS) $(rdmsr_module_CFLAGS) $(CFLAGS) -MT commands/i386/rdmsr_module-rdmsr.o -MD -MP -MF commands/i386/$(DEPDIR)/rdmsr_module-rdmsr.Tpo -c -o commands/i386/rdmsr_module-rdmsr.o `test -f 'commands/i386/rdmsr.c' || echo '$(srcdir)/'`commands/i386/rdmsr.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/i386/$(DEPDIR)/rdmsr_module-rdmsr.Tpo commands/i386/$(DEPDIR)/rdmsr_module-rdmsr.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/i386/rdmsr.c' object='commands/i386/rdmsr_module-rdmsr.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(rdmsr_module_CPPFLAGS) $(CPPFLAGS) $(rdmsr_module_CFLAGS) $(CFLAGS) -c -o commands/i386/rdmsr_module-rdmsr.o `test -f 'commands/i386/rdmsr.c' || echo '$(srcdir)/'`commands/i386/rdmsr.c - -commands/i386/rdmsr_module-rdmsr.obj: commands/i386/rdmsr.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(rdmsr_module_CPPFLAGS) $(CPPFLAGS) $(rdmsr_module_CFLAGS) $(CFLAGS) -MT commands/i386/rdmsr_module-rdmsr.obj -MD -MP -MF commands/i386/$(DEPDIR)/rdmsr_module-rdmsr.Tpo -c -o commands/i386/rdmsr_module-rdmsr.obj `if test -f 'commands/i386/rdmsr.c'; then $(CYGPATH_W) 'commands/i386/rdmsr.c'; else $(CYGPATH_W) '$(srcdir)/commands/i386/rdmsr.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/i386/$(DEPDIR)/rdmsr_module-rdmsr.Tpo commands/i386/$(DEPDIR)/rdmsr_module-rdmsr.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/i386/rdmsr.c' object='commands/i386/rdmsr_module-rdmsr.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(rdmsr_module_CPPFLAGS) $(CPPFLAGS) $(rdmsr_module_CFLAGS) $(CFLAGS) -c -o commands/i386/rdmsr_module-rdmsr.obj `if test -f 'commands/i386/rdmsr.c'; then $(CYGPATH_W) 'commands/i386/rdmsr.c'; else $(CYGPATH_W) '$(srcdir)/commands/i386/rdmsr.c'; fi` - -commands/read_module-read.o: commands/read.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(read_module_CPPFLAGS) $(CPPFLAGS) $(read_module_CFLAGS) $(CFLAGS) -MT commands/read_module-read.o -MD -MP -MF commands/$(DEPDIR)/read_module-read.Tpo -c -o commands/read_module-read.o `test -f 'commands/read.c' || echo '$(srcdir)/'`commands/read.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/$(DEPDIR)/read_module-read.Tpo commands/$(DEPDIR)/read_module-read.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/read.c' object='commands/read_module-read.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(read_module_CPPFLAGS) $(CPPFLAGS) $(read_module_CFLAGS) $(CFLAGS) -c -o commands/read_module-read.o `test -f 'commands/read.c' || echo '$(srcdir)/'`commands/read.c - -commands/read_module-read.obj: commands/read.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(read_module_CPPFLAGS) $(CPPFLAGS) $(read_module_CFLAGS) $(CFLAGS) -MT commands/read_module-read.obj -MD -MP -MF commands/$(DEPDIR)/read_module-read.Tpo -c -o commands/read_module-read.obj `if test -f 'commands/read.c'; then $(CYGPATH_W) 'commands/read.c'; else $(CYGPATH_W) '$(srcdir)/commands/read.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/$(DEPDIR)/read_module-read.Tpo commands/$(DEPDIR)/read_module-read.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/read.c' object='commands/read_module-read.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(read_module_CPPFLAGS) $(CPPFLAGS) $(read_module_CFLAGS) $(CFLAGS) -c -o commands/read_module-read.obj `if test -f 'commands/read.c'; then $(CYGPATH_W) 'commands/read.c'; else $(CYGPATH_W) '$(srcdir)/commands/read.c'; fi` - -commands/reboot_module-reboot.o: commands/reboot.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(reboot_module_CPPFLAGS) $(CPPFLAGS) $(reboot_module_CFLAGS) $(CFLAGS) -MT commands/reboot_module-reboot.o -MD -MP -MF commands/$(DEPDIR)/reboot_module-reboot.Tpo -c -o commands/reboot_module-reboot.o `test -f 'commands/reboot.c' || echo '$(srcdir)/'`commands/reboot.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/$(DEPDIR)/reboot_module-reboot.Tpo commands/$(DEPDIR)/reboot_module-reboot.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/reboot.c' object='commands/reboot_module-reboot.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(reboot_module_CPPFLAGS) $(CPPFLAGS) $(reboot_module_CFLAGS) $(CFLAGS) -c -o commands/reboot_module-reboot.o `test -f 'commands/reboot.c' || echo '$(srcdir)/'`commands/reboot.c - -commands/reboot_module-reboot.obj: commands/reboot.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(reboot_module_CPPFLAGS) $(CPPFLAGS) $(reboot_module_CFLAGS) $(CFLAGS) -MT commands/reboot_module-reboot.obj -MD -MP -MF commands/$(DEPDIR)/reboot_module-reboot.Tpo -c -o commands/reboot_module-reboot.obj `if test -f 'commands/reboot.c'; then $(CYGPATH_W) 'commands/reboot.c'; else $(CYGPATH_W) '$(srcdir)/commands/reboot.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/$(DEPDIR)/reboot_module-reboot.Tpo commands/$(DEPDIR)/reboot_module-reboot.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/reboot.c' object='commands/reboot_module-reboot.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(reboot_module_CPPFLAGS) $(CPPFLAGS) $(reboot_module_CFLAGS) $(CFLAGS) -c -o commands/reboot_module-reboot.obj `if test -f 'commands/reboot.c'; then $(CYGPATH_W) 'commands/reboot.c'; else $(CYGPATH_W) '$(srcdir)/commands/reboot.c'; fi` - -lib/dummy/reboot_module-reboot.o: lib/dummy/reboot.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(reboot_module_CPPFLAGS) $(CPPFLAGS) $(reboot_module_CFLAGS) $(CFLAGS) -MT lib/dummy/reboot_module-reboot.o -MD -MP -MF lib/dummy/$(DEPDIR)/reboot_module-reboot.Tpo -c -o lib/dummy/reboot_module-reboot.o `test -f 'lib/dummy/reboot.c' || echo '$(srcdir)/'`lib/dummy/reboot.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/dummy/$(DEPDIR)/reboot_module-reboot.Tpo lib/dummy/$(DEPDIR)/reboot_module-reboot.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/dummy/reboot.c' object='lib/dummy/reboot_module-reboot.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(reboot_module_CPPFLAGS) $(CPPFLAGS) $(reboot_module_CFLAGS) $(CFLAGS) -c -o lib/dummy/reboot_module-reboot.o `test -f 'lib/dummy/reboot.c' || echo '$(srcdir)/'`lib/dummy/reboot.c - -lib/dummy/reboot_module-reboot.obj: lib/dummy/reboot.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(reboot_module_CPPFLAGS) $(CPPFLAGS) $(reboot_module_CFLAGS) $(CFLAGS) -MT lib/dummy/reboot_module-reboot.obj -MD -MP -MF lib/dummy/$(DEPDIR)/reboot_module-reboot.Tpo -c -o lib/dummy/reboot_module-reboot.obj `if test -f 'lib/dummy/reboot.c'; then $(CYGPATH_W) 'lib/dummy/reboot.c'; else $(CYGPATH_W) '$(srcdir)/lib/dummy/reboot.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/dummy/$(DEPDIR)/reboot_module-reboot.Tpo lib/dummy/$(DEPDIR)/reboot_module-reboot.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/dummy/reboot.c' object='lib/dummy/reboot_module-reboot.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(reboot_module_CPPFLAGS) $(CPPFLAGS) $(reboot_module_CFLAGS) $(CFLAGS) -c -o lib/dummy/reboot_module-reboot.obj `if test -f 'lib/dummy/reboot.c'; then $(CYGPATH_W) 'lib/dummy/reboot.c'; else $(CYGPATH_W) '$(srcdir)/lib/dummy/reboot.c'; fi` - -lib/uboot/reboot_module-reboot.o: lib/uboot/reboot.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(reboot_module_CPPFLAGS) $(CPPFLAGS) $(reboot_module_CFLAGS) $(CFLAGS) -MT lib/uboot/reboot_module-reboot.o -MD -MP -MF lib/uboot/$(DEPDIR)/reboot_module-reboot.Tpo -c -o lib/uboot/reboot_module-reboot.o `test -f 'lib/uboot/reboot.c' || echo '$(srcdir)/'`lib/uboot/reboot.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/uboot/$(DEPDIR)/reboot_module-reboot.Tpo lib/uboot/$(DEPDIR)/reboot_module-reboot.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/uboot/reboot.c' object='lib/uboot/reboot_module-reboot.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(reboot_module_CPPFLAGS) $(CPPFLAGS) $(reboot_module_CFLAGS) $(CFLAGS) -c -o lib/uboot/reboot_module-reboot.o `test -f 'lib/uboot/reboot.c' || echo '$(srcdir)/'`lib/uboot/reboot.c - -lib/uboot/reboot_module-reboot.obj: lib/uboot/reboot.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(reboot_module_CPPFLAGS) $(CPPFLAGS) $(reboot_module_CFLAGS) $(CFLAGS) -MT lib/uboot/reboot_module-reboot.obj -MD -MP -MF lib/uboot/$(DEPDIR)/reboot_module-reboot.Tpo -c -o lib/uboot/reboot_module-reboot.obj `if test -f 'lib/uboot/reboot.c'; then $(CYGPATH_W) 'lib/uboot/reboot.c'; else $(CYGPATH_W) '$(srcdir)/lib/uboot/reboot.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/uboot/$(DEPDIR)/reboot_module-reboot.Tpo lib/uboot/$(DEPDIR)/reboot_module-reboot.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/uboot/reboot.c' object='lib/uboot/reboot_module-reboot.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(reboot_module_CPPFLAGS) $(CPPFLAGS) $(reboot_module_CFLAGS) $(CFLAGS) -c -o lib/uboot/reboot_module-reboot.obj `if test -f 'lib/uboot/reboot.c'; then $(CYGPATH_W) 'lib/uboot/reboot.c'; else $(CYGPATH_W) '$(srcdir)/lib/uboot/reboot.c'; fi` - -lib/i386/reboot_module-reboot.o: lib/i386/reboot.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(reboot_module_CPPFLAGS) $(CPPFLAGS) $(reboot_module_CFLAGS) $(CFLAGS) -MT lib/i386/reboot_module-reboot.o -MD -MP -MF lib/i386/$(DEPDIR)/reboot_module-reboot.Tpo -c -o lib/i386/reboot_module-reboot.o `test -f 'lib/i386/reboot.c' || echo '$(srcdir)/'`lib/i386/reboot.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/i386/$(DEPDIR)/reboot_module-reboot.Tpo lib/i386/$(DEPDIR)/reboot_module-reboot.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/i386/reboot.c' object='lib/i386/reboot_module-reboot.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(reboot_module_CPPFLAGS) $(CPPFLAGS) $(reboot_module_CFLAGS) $(CFLAGS) -c -o lib/i386/reboot_module-reboot.o `test -f 'lib/i386/reboot.c' || echo '$(srcdir)/'`lib/i386/reboot.c - -lib/i386/reboot_module-reboot.obj: lib/i386/reboot.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(reboot_module_CPPFLAGS) $(CPPFLAGS) $(reboot_module_CFLAGS) $(CFLAGS) -MT lib/i386/reboot_module-reboot.obj -MD -MP -MF lib/i386/$(DEPDIR)/reboot_module-reboot.Tpo -c -o lib/i386/reboot_module-reboot.obj `if test -f 'lib/i386/reboot.c'; then $(CYGPATH_W) 'lib/i386/reboot.c'; else $(CYGPATH_W) '$(srcdir)/lib/i386/reboot.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/i386/$(DEPDIR)/reboot_module-reboot.Tpo lib/i386/$(DEPDIR)/reboot_module-reboot.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/i386/reboot.c' object='lib/i386/reboot_module-reboot.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(reboot_module_CPPFLAGS) $(CPPFLAGS) $(reboot_module_CFLAGS) $(CFLAGS) -c -o lib/i386/reboot_module-reboot.obj `if test -f 'lib/i386/reboot.c'; then $(CYGPATH_W) 'lib/i386/reboot.c'; else $(CYGPATH_W) '$(srcdir)/lib/i386/reboot.c'; fi` - -lib/xen/reboot_module-reboot.o: lib/xen/reboot.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(reboot_module_CPPFLAGS) $(CPPFLAGS) $(reboot_module_CFLAGS) $(CFLAGS) -MT lib/xen/reboot_module-reboot.o -MD -MP -MF lib/xen/$(DEPDIR)/reboot_module-reboot.Tpo -c -o lib/xen/reboot_module-reboot.o `test -f 'lib/xen/reboot.c' || echo '$(srcdir)/'`lib/xen/reboot.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/xen/$(DEPDIR)/reboot_module-reboot.Tpo lib/xen/$(DEPDIR)/reboot_module-reboot.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/xen/reboot.c' object='lib/xen/reboot_module-reboot.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(reboot_module_CPPFLAGS) $(CPPFLAGS) $(reboot_module_CFLAGS) $(CFLAGS) -c -o lib/xen/reboot_module-reboot.o `test -f 'lib/xen/reboot.c' || echo '$(srcdir)/'`lib/xen/reboot.c - -lib/xen/reboot_module-reboot.obj: lib/xen/reboot.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(reboot_module_CPPFLAGS) $(CPPFLAGS) $(reboot_module_CFLAGS) $(CFLAGS) -MT lib/xen/reboot_module-reboot.obj -MD -MP -MF lib/xen/$(DEPDIR)/reboot_module-reboot.Tpo -c -o lib/xen/reboot_module-reboot.obj `if test -f 'lib/xen/reboot.c'; then $(CYGPATH_W) 'lib/xen/reboot.c'; else $(CYGPATH_W) '$(srcdir)/lib/xen/reboot.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/xen/$(DEPDIR)/reboot_module-reboot.Tpo lib/xen/$(DEPDIR)/reboot_module-reboot.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/xen/reboot.c' object='lib/xen/reboot_module-reboot.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(reboot_module_CPPFLAGS) $(CPPFLAGS) $(reboot_module_CFLAGS) $(CFLAGS) -c -o lib/xen/reboot_module-reboot.obj `if test -f 'lib/xen/reboot.c'; then $(CYGPATH_W) 'lib/xen/reboot.c'; else $(CYGPATH_W) '$(srcdir)/lib/xen/reboot.c'; fi` - -lib/mips/arc/reboot_module-reboot.o: lib/mips/arc/reboot.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(reboot_module_CPPFLAGS) $(CPPFLAGS) $(reboot_module_CFLAGS) $(CFLAGS) -MT lib/mips/arc/reboot_module-reboot.o -MD -MP -MF lib/mips/arc/$(DEPDIR)/reboot_module-reboot.Tpo -c -o lib/mips/arc/reboot_module-reboot.o `test -f 'lib/mips/arc/reboot.c' || echo '$(srcdir)/'`lib/mips/arc/reboot.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/mips/arc/$(DEPDIR)/reboot_module-reboot.Tpo lib/mips/arc/$(DEPDIR)/reboot_module-reboot.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/mips/arc/reboot.c' object='lib/mips/arc/reboot_module-reboot.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(reboot_module_CPPFLAGS) $(CPPFLAGS) $(reboot_module_CFLAGS) $(CFLAGS) -c -o lib/mips/arc/reboot_module-reboot.o `test -f 'lib/mips/arc/reboot.c' || echo '$(srcdir)/'`lib/mips/arc/reboot.c - -lib/mips/arc/reboot_module-reboot.obj: lib/mips/arc/reboot.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(reboot_module_CPPFLAGS) $(CPPFLAGS) $(reboot_module_CFLAGS) $(CFLAGS) -MT lib/mips/arc/reboot_module-reboot.obj -MD -MP -MF lib/mips/arc/$(DEPDIR)/reboot_module-reboot.Tpo -c -o lib/mips/arc/reboot_module-reboot.obj `if test -f 'lib/mips/arc/reboot.c'; then $(CYGPATH_W) 'lib/mips/arc/reboot.c'; else $(CYGPATH_W) '$(srcdir)/lib/mips/arc/reboot.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/mips/arc/$(DEPDIR)/reboot_module-reboot.Tpo lib/mips/arc/$(DEPDIR)/reboot_module-reboot.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/mips/arc/reboot.c' object='lib/mips/arc/reboot_module-reboot.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(reboot_module_CPPFLAGS) $(CPPFLAGS) $(reboot_module_CFLAGS) $(CFLAGS) -c -o lib/mips/arc/reboot_module-reboot.obj `if test -f 'lib/mips/arc/reboot.c'; then $(CYGPATH_W) 'lib/mips/arc/reboot.c'; else $(CYGPATH_W) '$(srcdir)/lib/mips/arc/reboot.c'; fi` - -lib/mips/loongson/reboot_module-reboot.o: lib/mips/loongson/reboot.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(reboot_module_CPPFLAGS) $(CPPFLAGS) $(reboot_module_CFLAGS) $(CFLAGS) -MT lib/mips/loongson/reboot_module-reboot.o -MD -MP -MF lib/mips/loongson/$(DEPDIR)/reboot_module-reboot.Tpo -c -o lib/mips/loongson/reboot_module-reboot.o `test -f 'lib/mips/loongson/reboot.c' || echo '$(srcdir)/'`lib/mips/loongson/reboot.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/mips/loongson/$(DEPDIR)/reboot_module-reboot.Tpo lib/mips/loongson/$(DEPDIR)/reboot_module-reboot.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/mips/loongson/reboot.c' object='lib/mips/loongson/reboot_module-reboot.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(reboot_module_CPPFLAGS) $(CPPFLAGS) $(reboot_module_CFLAGS) $(CFLAGS) -c -o lib/mips/loongson/reboot_module-reboot.o `test -f 'lib/mips/loongson/reboot.c' || echo '$(srcdir)/'`lib/mips/loongson/reboot.c - -lib/mips/loongson/reboot_module-reboot.obj: lib/mips/loongson/reboot.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(reboot_module_CPPFLAGS) $(CPPFLAGS) $(reboot_module_CFLAGS) $(CFLAGS) -MT lib/mips/loongson/reboot_module-reboot.obj -MD -MP -MF lib/mips/loongson/$(DEPDIR)/reboot_module-reboot.Tpo -c -o lib/mips/loongson/reboot_module-reboot.obj `if test -f 'lib/mips/loongson/reboot.c'; then $(CYGPATH_W) 'lib/mips/loongson/reboot.c'; else $(CYGPATH_W) '$(srcdir)/lib/mips/loongson/reboot.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/mips/loongson/$(DEPDIR)/reboot_module-reboot.Tpo lib/mips/loongson/$(DEPDIR)/reboot_module-reboot.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/mips/loongson/reboot.c' object='lib/mips/loongson/reboot_module-reboot.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(reboot_module_CPPFLAGS) $(CPPFLAGS) $(reboot_module_CFLAGS) $(CFLAGS) -c -o lib/mips/loongson/reboot_module-reboot.obj `if test -f 'lib/mips/loongson/reboot.c'; then $(CYGPATH_W) 'lib/mips/loongson/reboot.c'; else $(CYGPATH_W) '$(srcdir)/lib/mips/loongson/reboot.c'; fi` - -lib/mips/qemu_mips/reboot_module-reboot.o: lib/mips/qemu_mips/reboot.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(reboot_module_CPPFLAGS) $(CPPFLAGS) $(reboot_module_CFLAGS) $(CFLAGS) -MT lib/mips/qemu_mips/reboot_module-reboot.o -MD -MP -MF lib/mips/qemu_mips/$(DEPDIR)/reboot_module-reboot.Tpo -c -o lib/mips/qemu_mips/reboot_module-reboot.o `test -f 'lib/mips/qemu_mips/reboot.c' || echo '$(srcdir)/'`lib/mips/qemu_mips/reboot.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/mips/qemu_mips/$(DEPDIR)/reboot_module-reboot.Tpo lib/mips/qemu_mips/$(DEPDIR)/reboot_module-reboot.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/mips/qemu_mips/reboot.c' object='lib/mips/qemu_mips/reboot_module-reboot.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(reboot_module_CPPFLAGS) $(CPPFLAGS) $(reboot_module_CFLAGS) $(CFLAGS) -c -o lib/mips/qemu_mips/reboot_module-reboot.o `test -f 'lib/mips/qemu_mips/reboot.c' || echo '$(srcdir)/'`lib/mips/qemu_mips/reboot.c - -lib/mips/qemu_mips/reboot_module-reboot.obj: lib/mips/qemu_mips/reboot.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(reboot_module_CPPFLAGS) $(CPPFLAGS) $(reboot_module_CFLAGS) $(CFLAGS) -MT lib/mips/qemu_mips/reboot_module-reboot.obj -MD -MP -MF lib/mips/qemu_mips/$(DEPDIR)/reboot_module-reboot.Tpo -c -o lib/mips/qemu_mips/reboot_module-reboot.obj `if test -f 'lib/mips/qemu_mips/reboot.c'; then $(CYGPATH_W) 'lib/mips/qemu_mips/reboot.c'; else $(CYGPATH_W) '$(srcdir)/lib/mips/qemu_mips/reboot.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/mips/qemu_mips/$(DEPDIR)/reboot_module-reboot.Tpo lib/mips/qemu_mips/$(DEPDIR)/reboot_module-reboot.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/mips/qemu_mips/reboot.c' object='lib/mips/qemu_mips/reboot_module-reboot.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(reboot_module_CPPFLAGS) $(CPPFLAGS) $(reboot_module_CFLAGS) $(CFLAGS) -c -o lib/mips/qemu_mips/reboot_module-reboot.obj `if test -f 'lib/mips/qemu_mips/reboot.c'; then $(CYGPATH_W) 'lib/mips/qemu_mips/reboot.c'; else $(CYGPATH_W) '$(srcdir)/lib/mips/qemu_mips/reboot.c'; fi` - -lib/ieee1275/reboot_module-reboot.o: lib/ieee1275/reboot.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(reboot_module_CPPFLAGS) $(CPPFLAGS) $(reboot_module_CFLAGS) $(CFLAGS) -MT lib/ieee1275/reboot_module-reboot.o -MD -MP -MF lib/ieee1275/$(DEPDIR)/reboot_module-reboot.Tpo -c -o lib/ieee1275/reboot_module-reboot.o `test -f 'lib/ieee1275/reboot.c' || echo '$(srcdir)/'`lib/ieee1275/reboot.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/ieee1275/$(DEPDIR)/reboot_module-reboot.Tpo lib/ieee1275/$(DEPDIR)/reboot_module-reboot.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/ieee1275/reboot.c' object='lib/ieee1275/reboot_module-reboot.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(reboot_module_CPPFLAGS) $(CPPFLAGS) $(reboot_module_CFLAGS) $(CFLAGS) -c -o lib/ieee1275/reboot_module-reboot.o `test -f 'lib/ieee1275/reboot.c' || echo '$(srcdir)/'`lib/ieee1275/reboot.c - -lib/ieee1275/reboot_module-reboot.obj: lib/ieee1275/reboot.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(reboot_module_CPPFLAGS) $(CPPFLAGS) $(reboot_module_CFLAGS) $(CFLAGS) -MT lib/ieee1275/reboot_module-reboot.obj -MD -MP -MF lib/ieee1275/$(DEPDIR)/reboot_module-reboot.Tpo -c -o lib/ieee1275/reboot_module-reboot.obj `if test -f 'lib/ieee1275/reboot.c'; then $(CYGPATH_W) 'lib/ieee1275/reboot.c'; else $(CYGPATH_W) '$(srcdir)/lib/ieee1275/reboot.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/ieee1275/$(DEPDIR)/reboot_module-reboot.Tpo lib/ieee1275/$(DEPDIR)/reboot_module-reboot.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/ieee1275/reboot.c' object='lib/ieee1275/reboot_module-reboot.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(reboot_module_CPPFLAGS) $(CPPFLAGS) $(reboot_module_CFLAGS) $(CFLAGS) -c -o lib/ieee1275/reboot_module-reboot.obj `if test -f 'lib/ieee1275/reboot.c'; then $(CYGPATH_W) 'lib/ieee1275/reboot.c'; else $(CYGPATH_W) '$(srcdir)/lib/ieee1275/reboot.c'; fi` - -commands/regexp_module-regexp.o: commands/regexp.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(regexp_module_CPPFLAGS) $(CPPFLAGS) $(regexp_module_CFLAGS) $(CFLAGS) -MT commands/regexp_module-regexp.o -MD -MP -MF commands/$(DEPDIR)/regexp_module-regexp.Tpo -c -o commands/regexp_module-regexp.o `test -f 'commands/regexp.c' || echo '$(srcdir)/'`commands/regexp.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/$(DEPDIR)/regexp_module-regexp.Tpo commands/$(DEPDIR)/regexp_module-regexp.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/regexp.c' object='commands/regexp_module-regexp.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(regexp_module_CPPFLAGS) $(CPPFLAGS) $(regexp_module_CFLAGS) $(CFLAGS) -c -o commands/regexp_module-regexp.o `test -f 'commands/regexp.c' || echo '$(srcdir)/'`commands/regexp.c - -commands/regexp_module-regexp.obj: commands/regexp.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(regexp_module_CPPFLAGS) $(CPPFLAGS) $(regexp_module_CFLAGS) $(CFLAGS) -MT commands/regexp_module-regexp.obj -MD -MP -MF commands/$(DEPDIR)/regexp_module-regexp.Tpo -c -o commands/regexp_module-regexp.obj `if test -f 'commands/regexp.c'; then $(CYGPATH_W) 'commands/regexp.c'; else $(CYGPATH_W) '$(srcdir)/commands/regexp.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/$(DEPDIR)/regexp_module-regexp.Tpo commands/$(DEPDIR)/regexp_module-regexp.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/regexp.c' object='commands/regexp_module-regexp.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(regexp_module_CPPFLAGS) $(CPPFLAGS) $(regexp_module_CFLAGS) $(CFLAGS) -c -o commands/regexp_module-regexp.obj `if test -f 'commands/regexp.c'; then $(CYGPATH_W) 'commands/regexp.c'; else $(CYGPATH_W) '$(srcdir)/commands/regexp.c'; fi` - -commands/regexp_module-wildcard.o: commands/wildcard.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(regexp_module_CPPFLAGS) $(CPPFLAGS) $(regexp_module_CFLAGS) $(CFLAGS) -MT commands/regexp_module-wildcard.o -MD -MP -MF commands/$(DEPDIR)/regexp_module-wildcard.Tpo -c -o commands/regexp_module-wildcard.o `test -f 'commands/wildcard.c' || echo '$(srcdir)/'`commands/wildcard.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/$(DEPDIR)/regexp_module-wildcard.Tpo commands/$(DEPDIR)/regexp_module-wildcard.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/wildcard.c' object='commands/regexp_module-wildcard.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(regexp_module_CPPFLAGS) $(CPPFLAGS) $(regexp_module_CFLAGS) $(CFLAGS) -c -o commands/regexp_module-wildcard.o `test -f 'commands/wildcard.c' || echo '$(srcdir)/'`commands/wildcard.c - -commands/regexp_module-wildcard.obj: commands/wildcard.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(regexp_module_CPPFLAGS) $(CPPFLAGS) $(regexp_module_CFLAGS) $(CFLAGS) -MT commands/regexp_module-wildcard.obj -MD -MP -MF commands/$(DEPDIR)/regexp_module-wildcard.Tpo -c -o commands/regexp_module-wildcard.obj `if test -f 'commands/wildcard.c'; then $(CYGPATH_W) 'commands/wildcard.c'; else $(CYGPATH_W) '$(srcdir)/commands/wildcard.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/$(DEPDIR)/regexp_module-wildcard.Tpo commands/$(DEPDIR)/regexp_module-wildcard.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/wildcard.c' object='commands/regexp_module-wildcard.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(regexp_module_CPPFLAGS) $(CPPFLAGS) $(regexp_module_CFLAGS) $(CFLAGS) -c -o commands/regexp_module-wildcard.obj `if test -f 'commands/wildcard.c'; then $(CYGPATH_W) 'commands/wildcard.c'; else $(CYGPATH_W) '$(srcdir)/commands/wildcard.c'; fi` - -lib/gnulib/regexp_module-regex.o: lib/gnulib/regex.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(regexp_module_CPPFLAGS) $(CPPFLAGS) $(regexp_module_CFLAGS) $(CFLAGS) -MT lib/gnulib/regexp_module-regex.o -MD -MP -MF lib/gnulib/$(DEPDIR)/regexp_module-regex.Tpo -c -o lib/gnulib/regexp_module-regex.o `test -f 'lib/gnulib/regex.c' || echo '$(srcdir)/'`lib/gnulib/regex.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/gnulib/$(DEPDIR)/regexp_module-regex.Tpo lib/gnulib/$(DEPDIR)/regexp_module-regex.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/gnulib/regex.c' object='lib/gnulib/regexp_module-regex.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(regexp_module_CPPFLAGS) $(CPPFLAGS) $(regexp_module_CFLAGS) $(CFLAGS) -c -o lib/gnulib/regexp_module-regex.o `test -f 'lib/gnulib/regex.c' || echo '$(srcdir)/'`lib/gnulib/regex.c - -lib/gnulib/regexp_module-regex.obj: lib/gnulib/regex.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(regexp_module_CPPFLAGS) $(CPPFLAGS) $(regexp_module_CFLAGS) $(CFLAGS) -MT lib/gnulib/regexp_module-regex.obj -MD -MP -MF lib/gnulib/$(DEPDIR)/regexp_module-regex.Tpo -c -o lib/gnulib/regexp_module-regex.obj `if test -f 'lib/gnulib/regex.c'; then $(CYGPATH_W) 'lib/gnulib/regex.c'; else $(CYGPATH_W) '$(srcdir)/lib/gnulib/regex.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/gnulib/$(DEPDIR)/regexp_module-regex.Tpo lib/gnulib/$(DEPDIR)/regexp_module-regex.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/gnulib/regex.c' object='lib/gnulib/regexp_module-regex.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(regexp_module_CPPFLAGS) $(CPPFLAGS) $(regexp_module_CFLAGS) $(CFLAGS) -c -o lib/gnulib/regexp_module-regex.obj `if test -f 'lib/gnulib/regex.c'; then $(CYGPATH_W) 'lib/gnulib/regex.c'; else $(CYGPATH_W) '$(srcdir)/lib/gnulib/regex.c'; fi` - -fs/reiserfs_module-reiserfs.o: fs/reiserfs.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(reiserfs_module_CPPFLAGS) $(CPPFLAGS) $(reiserfs_module_CFLAGS) $(CFLAGS) -MT fs/reiserfs_module-reiserfs.o -MD -MP -MF fs/$(DEPDIR)/reiserfs_module-reiserfs.Tpo -c -o fs/reiserfs_module-reiserfs.o `test -f 'fs/reiserfs.c' || echo '$(srcdir)/'`fs/reiserfs.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) fs/$(DEPDIR)/reiserfs_module-reiserfs.Tpo fs/$(DEPDIR)/reiserfs_module-reiserfs.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='fs/reiserfs.c' object='fs/reiserfs_module-reiserfs.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(reiserfs_module_CPPFLAGS) $(CPPFLAGS) $(reiserfs_module_CFLAGS) $(CFLAGS) -c -o fs/reiserfs_module-reiserfs.o `test -f 'fs/reiserfs.c' || echo '$(srcdir)/'`fs/reiserfs.c - -fs/reiserfs_module-reiserfs.obj: fs/reiserfs.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(reiserfs_module_CPPFLAGS) $(CPPFLAGS) $(reiserfs_module_CFLAGS) $(CFLAGS) -MT fs/reiserfs_module-reiserfs.obj -MD -MP -MF fs/$(DEPDIR)/reiserfs_module-reiserfs.Tpo -c -o fs/reiserfs_module-reiserfs.obj `if test -f 'fs/reiserfs.c'; then $(CYGPATH_W) 'fs/reiserfs.c'; else $(CYGPATH_W) '$(srcdir)/fs/reiserfs.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) fs/$(DEPDIR)/reiserfs_module-reiserfs.Tpo fs/$(DEPDIR)/reiserfs_module-reiserfs.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='fs/reiserfs.c' object='fs/reiserfs_module-reiserfs.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(reiserfs_module_CPPFLAGS) $(CPPFLAGS) $(reiserfs_module_CFLAGS) $(CFLAGS) -c -o fs/reiserfs_module-reiserfs.obj `if test -f 'fs/reiserfs.c'; then $(CYGPATH_W) 'fs/reiserfs.c'; else $(CYGPATH_W) '$(srcdir)/fs/reiserfs.c'; fi` - -lib/i386/relocator_module-relocator.o: lib/i386/relocator.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(relocator_module_CPPFLAGS) $(CPPFLAGS) $(relocator_module_CFLAGS) $(CFLAGS) -MT lib/i386/relocator_module-relocator.o -MD -MP -MF lib/i386/$(DEPDIR)/relocator_module-relocator.Tpo -c -o lib/i386/relocator_module-relocator.o `test -f 'lib/i386/relocator.c' || echo '$(srcdir)/'`lib/i386/relocator.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/i386/$(DEPDIR)/relocator_module-relocator.Tpo lib/i386/$(DEPDIR)/relocator_module-relocator.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/i386/relocator.c' object='lib/i386/relocator_module-relocator.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(relocator_module_CPPFLAGS) $(CPPFLAGS) $(relocator_module_CFLAGS) $(CFLAGS) -c -o lib/i386/relocator_module-relocator.o `test -f 'lib/i386/relocator.c' || echo '$(srcdir)/'`lib/i386/relocator.c - -lib/i386/relocator_module-relocator.obj: lib/i386/relocator.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(relocator_module_CPPFLAGS) $(CPPFLAGS) $(relocator_module_CFLAGS) $(CFLAGS) -MT lib/i386/relocator_module-relocator.obj -MD -MP -MF lib/i386/$(DEPDIR)/relocator_module-relocator.Tpo -c -o lib/i386/relocator_module-relocator.obj `if test -f 'lib/i386/relocator.c'; then $(CYGPATH_W) 'lib/i386/relocator.c'; else $(CYGPATH_W) '$(srcdir)/lib/i386/relocator.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/i386/$(DEPDIR)/relocator_module-relocator.Tpo lib/i386/$(DEPDIR)/relocator_module-relocator.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/i386/relocator.c' object='lib/i386/relocator_module-relocator.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(relocator_module_CPPFLAGS) $(CPPFLAGS) $(relocator_module_CFLAGS) $(CFLAGS) -c -o lib/i386/relocator_module-relocator.obj `if test -f 'lib/i386/relocator.c'; then $(CYGPATH_W) 'lib/i386/relocator.c'; else $(CYGPATH_W) '$(srcdir)/lib/i386/relocator.c'; fi` - -lib/i386/relocator_module-relocator_common_c.o: lib/i386/relocator_common_c.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(relocator_module_CPPFLAGS) $(CPPFLAGS) $(relocator_module_CFLAGS) $(CFLAGS) -MT lib/i386/relocator_module-relocator_common_c.o -MD -MP -MF lib/i386/$(DEPDIR)/relocator_module-relocator_common_c.Tpo -c -o lib/i386/relocator_module-relocator_common_c.o `test -f 'lib/i386/relocator_common_c.c' || echo '$(srcdir)/'`lib/i386/relocator_common_c.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/i386/$(DEPDIR)/relocator_module-relocator_common_c.Tpo lib/i386/$(DEPDIR)/relocator_module-relocator_common_c.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/i386/relocator_common_c.c' object='lib/i386/relocator_module-relocator_common_c.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(relocator_module_CPPFLAGS) $(CPPFLAGS) $(relocator_module_CFLAGS) $(CFLAGS) -c -o lib/i386/relocator_module-relocator_common_c.o `test -f 'lib/i386/relocator_common_c.c' || echo '$(srcdir)/'`lib/i386/relocator_common_c.c - -lib/i386/relocator_module-relocator_common_c.obj: lib/i386/relocator_common_c.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(relocator_module_CPPFLAGS) $(CPPFLAGS) $(relocator_module_CFLAGS) $(CFLAGS) -MT lib/i386/relocator_module-relocator_common_c.obj -MD -MP -MF lib/i386/$(DEPDIR)/relocator_module-relocator_common_c.Tpo -c -o lib/i386/relocator_module-relocator_common_c.obj `if test -f 'lib/i386/relocator_common_c.c'; then $(CYGPATH_W) 'lib/i386/relocator_common_c.c'; else $(CYGPATH_W) '$(srcdir)/lib/i386/relocator_common_c.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/i386/$(DEPDIR)/relocator_module-relocator_common_c.Tpo lib/i386/$(DEPDIR)/relocator_module-relocator_common_c.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/i386/relocator_common_c.c' object='lib/i386/relocator_module-relocator_common_c.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(relocator_module_CPPFLAGS) $(CPPFLAGS) $(relocator_module_CFLAGS) $(CFLAGS) -c -o lib/i386/relocator_module-relocator_common_c.obj `if test -f 'lib/i386/relocator_common_c.c'; then $(CYGPATH_W) 'lib/i386/relocator_common_c.c'; else $(CYGPATH_W) '$(srcdir)/lib/i386/relocator_common_c.c'; fi` - -lib/relocator_module-relocator.o: lib/relocator.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(relocator_module_CPPFLAGS) $(CPPFLAGS) $(relocator_module_CFLAGS) $(CFLAGS) -MT lib/relocator_module-relocator.o -MD -MP -MF lib/$(DEPDIR)/relocator_module-relocator.Tpo -c -o lib/relocator_module-relocator.o `test -f 'lib/relocator.c' || echo '$(srcdir)/'`lib/relocator.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/$(DEPDIR)/relocator_module-relocator.Tpo lib/$(DEPDIR)/relocator_module-relocator.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/relocator.c' object='lib/relocator_module-relocator.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(relocator_module_CPPFLAGS) $(CPPFLAGS) $(relocator_module_CFLAGS) $(CFLAGS) -c -o lib/relocator_module-relocator.o `test -f 'lib/relocator.c' || echo '$(srcdir)/'`lib/relocator.c - -lib/relocator_module-relocator.obj: lib/relocator.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(relocator_module_CPPFLAGS) $(CPPFLAGS) $(relocator_module_CFLAGS) $(CFLAGS) -MT lib/relocator_module-relocator.obj -MD -MP -MF lib/$(DEPDIR)/relocator_module-relocator.Tpo -c -o lib/relocator_module-relocator.obj `if test -f 'lib/relocator.c'; then $(CYGPATH_W) 'lib/relocator.c'; else $(CYGPATH_W) '$(srcdir)/lib/relocator.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/$(DEPDIR)/relocator_module-relocator.Tpo lib/$(DEPDIR)/relocator_module-relocator.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/relocator.c' object='lib/relocator_module-relocator.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(relocator_module_CPPFLAGS) $(CPPFLAGS) $(relocator_module_CFLAGS) $(CFLAGS) -c -o lib/relocator_module-relocator.obj `if test -f 'lib/relocator.c'; then $(CYGPATH_W) 'lib/relocator.c'; else $(CYGPATH_W) '$(srcdir)/lib/relocator.c'; fi` - -lib/efi/relocator_module-relocator.o: lib/efi/relocator.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(relocator_module_CPPFLAGS) $(CPPFLAGS) $(relocator_module_CFLAGS) $(CFLAGS) -MT lib/efi/relocator_module-relocator.o -MD -MP -MF lib/efi/$(DEPDIR)/relocator_module-relocator.Tpo -c -o lib/efi/relocator_module-relocator.o `test -f 'lib/efi/relocator.c' || echo '$(srcdir)/'`lib/efi/relocator.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/efi/$(DEPDIR)/relocator_module-relocator.Tpo lib/efi/$(DEPDIR)/relocator_module-relocator.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/efi/relocator.c' object='lib/efi/relocator_module-relocator.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(relocator_module_CPPFLAGS) $(CPPFLAGS) $(relocator_module_CFLAGS) $(CFLAGS) -c -o lib/efi/relocator_module-relocator.o `test -f 'lib/efi/relocator.c' || echo '$(srcdir)/'`lib/efi/relocator.c - -lib/efi/relocator_module-relocator.obj: lib/efi/relocator.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(relocator_module_CPPFLAGS) $(CPPFLAGS) $(relocator_module_CFLAGS) $(CFLAGS) -MT lib/efi/relocator_module-relocator.obj -MD -MP -MF lib/efi/$(DEPDIR)/relocator_module-relocator.Tpo -c -o lib/efi/relocator_module-relocator.obj `if test -f 'lib/efi/relocator.c'; then $(CYGPATH_W) 'lib/efi/relocator.c'; else $(CYGPATH_W) '$(srcdir)/lib/efi/relocator.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/efi/$(DEPDIR)/relocator_module-relocator.Tpo lib/efi/$(DEPDIR)/relocator_module-relocator.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/efi/relocator.c' object='lib/efi/relocator_module-relocator.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(relocator_module_CPPFLAGS) $(CPPFLAGS) $(relocator_module_CFLAGS) $(CFLAGS) -c -o lib/efi/relocator_module-relocator.obj `if test -f 'lib/efi/relocator.c'; then $(CYGPATH_W) 'lib/efi/relocator.c'; else $(CYGPATH_W) '$(srcdir)/lib/efi/relocator.c'; fi` - -lib/ieee1275/relocator_module-relocator.o: lib/ieee1275/relocator.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(relocator_module_CPPFLAGS) $(CPPFLAGS) $(relocator_module_CFLAGS) $(CFLAGS) -MT lib/ieee1275/relocator_module-relocator.o -MD -MP -MF lib/ieee1275/$(DEPDIR)/relocator_module-relocator.Tpo -c -o lib/ieee1275/relocator_module-relocator.o `test -f 'lib/ieee1275/relocator.c' || echo '$(srcdir)/'`lib/ieee1275/relocator.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/ieee1275/$(DEPDIR)/relocator_module-relocator.Tpo lib/ieee1275/$(DEPDIR)/relocator_module-relocator.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/ieee1275/relocator.c' object='lib/ieee1275/relocator_module-relocator.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(relocator_module_CPPFLAGS) $(CPPFLAGS) $(relocator_module_CFLAGS) $(CFLAGS) -c -o lib/ieee1275/relocator_module-relocator.o `test -f 'lib/ieee1275/relocator.c' || echo '$(srcdir)/'`lib/ieee1275/relocator.c - -lib/ieee1275/relocator_module-relocator.obj: lib/ieee1275/relocator.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(relocator_module_CPPFLAGS) $(CPPFLAGS) $(relocator_module_CFLAGS) $(CFLAGS) -MT lib/ieee1275/relocator_module-relocator.obj -MD -MP -MF lib/ieee1275/$(DEPDIR)/relocator_module-relocator.Tpo -c -o lib/ieee1275/relocator_module-relocator.obj `if test -f 'lib/ieee1275/relocator.c'; then $(CYGPATH_W) 'lib/ieee1275/relocator.c'; else $(CYGPATH_W) '$(srcdir)/lib/ieee1275/relocator.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/ieee1275/$(DEPDIR)/relocator_module-relocator.Tpo lib/ieee1275/$(DEPDIR)/relocator_module-relocator.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/ieee1275/relocator.c' object='lib/ieee1275/relocator_module-relocator.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(relocator_module_CPPFLAGS) $(CPPFLAGS) $(relocator_module_CFLAGS) $(CFLAGS) -c -o lib/ieee1275/relocator_module-relocator.obj `if test -f 'lib/ieee1275/relocator.c'; then $(CYGPATH_W) 'lib/ieee1275/relocator.c'; else $(CYGPATH_W) '$(srcdir)/lib/ieee1275/relocator.c'; fi` - -lib/xen/relocator_module-relocator.o: lib/xen/relocator.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(relocator_module_CPPFLAGS) $(CPPFLAGS) $(relocator_module_CFLAGS) $(CFLAGS) -MT lib/xen/relocator_module-relocator.o -MD -MP -MF lib/xen/$(DEPDIR)/relocator_module-relocator.Tpo -c -o lib/xen/relocator_module-relocator.o `test -f 'lib/xen/relocator.c' || echo '$(srcdir)/'`lib/xen/relocator.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/xen/$(DEPDIR)/relocator_module-relocator.Tpo lib/xen/$(DEPDIR)/relocator_module-relocator.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/xen/relocator.c' object='lib/xen/relocator_module-relocator.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(relocator_module_CPPFLAGS) $(CPPFLAGS) $(relocator_module_CFLAGS) $(CFLAGS) -c -o lib/xen/relocator_module-relocator.o `test -f 'lib/xen/relocator.c' || echo '$(srcdir)/'`lib/xen/relocator.c - -lib/xen/relocator_module-relocator.obj: lib/xen/relocator.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(relocator_module_CPPFLAGS) $(CPPFLAGS) $(relocator_module_CFLAGS) $(CFLAGS) -MT lib/xen/relocator_module-relocator.obj -MD -MP -MF lib/xen/$(DEPDIR)/relocator_module-relocator.Tpo -c -o lib/xen/relocator_module-relocator.obj `if test -f 'lib/xen/relocator.c'; then $(CYGPATH_W) 'lib/xen/relocator.c'; else $(CYGPATH_W) '$(srcdir)/lib/xen/relocator.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/xen/$(DEPDIR)/relocator_module-relocator.Tpo lib/xen/$(DEPDIR)/relocator_module-relocator.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/xen/relocator.c' object='lib/xen/relocator_module-relocator.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(relocator_module_CPPFLAGS) $(CPPFLAGS) $(relocator_module_CFLAGS) $(CFLAGS) -c -o lib/xen/relocator_module-relocator.obj `if test -f 'lib/xen/relocator.c'; then $(CYGPATH_W) 'lib/xen/relocator.c'; else $(CYGPATH_W) '$(srcdir)/lib/xen/relocator.c'; fi` - -lib/mips/relocator_module-relocator.o: lib/mips/relocator.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(relocator_module_CPPFLAGS) $(CPPFLAGS) $(relocator_module_CFLAGS) $(CFLAGS) -MT lib/mips/relocator_module-relocator.o -MD -MP -MF lib/mips/$(DEPDIR)/relocator_module-relocator.Tpo -c -o lib/mips/relocator_module-relocator.o `test -f 'lib/mips/relocator.c' || echo '$(srcdir)/'`lib/mips/relocator.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/mips/$(DEPDIR)/relocator_module-relocator.Tpo lib/mips/$(DEPDIR)/relocator_module-relocator.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/mips/relocator.c' object='lib/mips/relocator_module-relocator.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(relocator_module_CPPFLAGS) $(CPPFLAGS) $(relocator_module_CFLAGS) $(CFLAGS) -c -o lib/mips/relocator_module-relocator.o `test -f 'lib/mips/relocator.c' || echo '$(srcdir)/'`lib/mips/relocator.c - -lib/mips/relocator_module-relocator.obj: lib/mips/relocator.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(relocator_module_CPPFLAGS) $(CPPFLAGS) $(relocator_module_CFLAGS) $(CFLAGS) -MT lib/mips/relocator_module-relocator.obj -MD -MP -MF lib/mips/$(DEPDIR)/relocator_module-relocator.Tpo -c -o lib/mips/relocator_module-relocator.obj `if test -f 'lib/mips/relocator.c'; then $(CYGPATH_W) 'lib/mips/relocator.c'; else $(CYGPATH_W) '$(srcdir)/lib/mips/relocator.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/mips/$(DEPDIR)/relocator_module-relocator.Tpo lib/mips/$(DEPDIR)/relocator_module-relocator.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/mips/relocator.c' object='lib/mips/relocator_module-relocator.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(relocator_module_CPPFLAGS) $(CPPFLAGS) $(relocator_module_CFLAGS) $(CFLAGS) -c -o lib/mips/relocator_module-relocator.obj `if test -f 'lib/mips/relocator.c'; then $(CYGPATH_W) 'lib/mips/relocator.c'; else $(CYGPATH_W) '$(srcdir)/lib/mips/relocator.c'; fi` - -lib/powerpc/relocator_module-relocator.o: lib/powerpc/relocator.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(relocator_module_CPPFLAGS) $(CPPFLAGS) $(relocator_module_CFLAGS) $(CFLAGS) -MT lib/powerpc/relocator_module-relocator.o -MD -MP -MF lib/powerpc/$(DEPDIR)/relocator_module-relocator.Tpo -c -o lib/powerpc/relocator_module-relocator.o `test -f 'lib/powerpc/relocator.c' || echo '$(srcdir)/'`lib/powerpc/relocator.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/powerpc/$(DEPDIR)/relocator_module-relocator.Tpo lib/powerpc/$(DEPDIR)/relocator_module-relocator.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/powerpc/relocator.c' object='lib/powerpc/relocator_module-relocator.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(relocator_module_CPPFLAGS) $(CPPFLAGS) $(relocator_module_CFLAGS) $(CFLAGS) -c -o lib/powerpc/relocator_module-relocator.o `test -f 'lib/powerpc/relocator.c' || echo '$(srcdir)/'`lib/powerpc/relocator.c - -lib/powerpc/relocator_module-relocator.obj: lib/powerpc/relocator.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(relocator_module_CPPFLAGS) $(CPPFLAGS) $(relocator_module_CFLAGS) $(CFLAGS) -MT lib/powerpc/relocator_module-relocator.obj -MD -MP -MF lib/powerpc/$(DEPDIR)/relocator_module-relocator.Tpo -c -o lib/powerpc/relocator_module-relocator.obj `if test -f 'lib/powerpc/relocator.c'; then $(CYGPATH_W) 'lib/powerpc/relocator.c'; else $(CYGPATH_W) '$(srcdir)/lib/powerpc/relocator.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/powerpc/$(DEPDIR)/relocator_module-relocator.Tpo lib/powerpc/$(DEPDIR)/relocator_module-relocator.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/powerpc/relocator.c' object='lib/powerpc/relocator_module-relocator.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(relocator_module_CPPFLAGS) $(CPPFLAGS) $(relocator_module_CFLAGS) $(CFLAGS) -c -o lib/powerpc/relocator_module-relocator.obj `if test -f 'lib/powerpc/relocator.c'; then $(CYGPATH_W) 'lib/powerpc/relocator.c'; else $(CYGPATH_W) '$(srcdir)/lib/powerpc/relocator.c'; fi` - -lib/x86_64/efi/relocator_module-relocator.o: lib/x86_64/efi/relocator.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(relocator_module_CPPFLAGS) $(CPPFLAGS) $(relocator_module_CFLAGS) $(CFLAGS) -MT lib/x86_64/efi/relocator_module-relocator.o -MD -MP -MF lib/x86_64/efi/$(DEPDIR)/relocator_module-relocator.Tpo -c -o lib/x86_64/efi/relocator_module-relocator.o `test -f 'lib/x86_64/efi/relocator.c' || echo '$(srcdir)/'`lib/x86_64/efi/relocator.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/x86_64/efi/$(DEPDIR)/relocator_module-relocator.Tpo lib/x86_64/efi/$(DEPDIR)/relocator_module-relocator.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/x86_64/efi/relocator.c' object='lib/x86_64/efi/relocator_module-relocator.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(relocator_module_CPPFLAGS) $(CPPFLAGS) $(relocator_module_CFLAGS) $(CFLAGS) -c -o lib/x86_64/efi/relocator_module-relocator.o `test -f 'lib/x86_64/efi/relocator.c' || echo '$(srcdir)/'`lib/x86_64/efi/relocator.c - -lib/x86_64/efi/relocator_module-relocator.obj: lib/x86_64/efi/relocator.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(relocator_module_CPPFLAGS) $(CPPFLAGS) $(relocator_module_CFLAGS) $(CFLAGS) -MT lib/x86_64/efi/relocator_module-relocator.obj -MD -MP -MF lib/x86_64/efi/$(DEPDIR)/relocator_module-relocator.Tpo -c -o lib/x86_64/efi/relocator_module-relocator.obj `if test -f 'lib/x86_64/efi/relocator.c'; then $(CYGPATH_W) 'lib/x86_64/efi/relocator.c'; else $(CYGPATH_W) '$(srcdir)/lib/x86_64/efi/relocator.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/x86_64/efi/$(DEPDIR)/relocator_module-relocator.Tpo lib/x86_64/efi/$(DEPDIR)/relocator_module-relocator.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/x86_64/efi/relocator.c' object='lib/x86_64/efi/relocator_module-relocator.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(relocator_module_CPPFLAGS) $(CPPFLAGS) $(relocator_module_CFLAGS) $(CFLAGS) -c -o lib/x86_64/efi/relocator_module-relocator.obj `if test -f 'lib/x86_64/efi/relocator.c'; then $(CYGPATH_W) 'lib/x86_64/efi/relocator.c'; else $(CYGPATH_W) '$(srcdir)/lib/x86_64/efi/relocator.c'; fi` - -fs/romfs_module-romfs.o: fs/romfs.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(romfs_module_CPPFLAGS) $(CPPFLAGS) $(romfs_module_CFLAGS) $(CFLAGS) -MT fs/romfs_module-romfs.o -MD -MP -MF fs/$(DEPDIR)/romfs_module-romfs.Tpo -c -o fs/romfs_module-romfs.o `test -f 'fs/romfs.c' || echo '$(srcdir)/'`fs/romfs.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) fs/$(DEPDIR)/romfs_module-romfs.Tpo fs/$(DEPDIR)/romfs_module-romfs.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='fs/romfs.c' object='fs/romfs_module-romfs.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(romfs_module_CPPFLAGS) $(CPPFLAGS) $(romfs_module_CFLAGS) $(CFLAGS) -c -o fs/romfs_module-romfs.o `test -f 'fs/romfs.c' || echo '$(srcdir)/'`fs/romfs.c - -fs/romfs_module-romfs.obj: fs/romfs.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(romfs_module_CPPFLAGS) $(CPPFLAGS) $(romfs_module_CFLAGS) $(CFLAGS) -MT fs/romfs_module-romfs.obj -MD -MP -MF fs/$(DEPDIR)/romfs_module-romfs.Tpo -c -o fs/romfs_module-romfs.obj `if test -f 'fs/romfs.c'; then $(CYGPATH_W) 'fs/romfs.c'; else $(CYGPATH_W) '$(srcdir)/fs/romfs.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) fs/$(DEPDIR)/romfs_module-romfs.Tpo fs/$(DEPDIR)/romfs_module-romfs.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='fs/romfs.c' object='fs/romfs_module-romfs.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(romfs_module_CPPFLAGS) $(CPPFLAGS) $(romfs_module_CFLAGS) $(CFLAGS) -c -o fs/romfs_module-romfs.obj `if test -f 'fs/romfs.c'; then $(CYGPATH_W) 'fs/romfs.c'; else $(CYGPATH_W) '$(srcdir)/fs/romfs.c'; fi` - -disk/scsi_module-scsi.o: disk/scsi.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(scsi_module_CPPFLAGS) $(CPPFLAGS) $(scsi_module_CFLAGS) $(CFLAGS) -MT disk/scsi_module-scsi.o -MD -MP -MF disk/$(DEPDIR)/scsi_module-scsi.Tpo -c -o disk/scsi_module-scsi.o `test -f 'disk/scsi.c' || echo '$(srcdir)/'`disk/scsi.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) disk/$(DEPDIR)/scsi_module-scsi.Tpo disk/$(DEPDIR)/scsi_module-scsi.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='disk/scsi.c' object='disk/scsi_module-scsi.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(scsi_module_CPPFLAGS) $(CPPFLAGS) $(scsi_module_CFLAGS) $(CFLAGS) -c -o disk/scsi_module-scsi.o `test -f 'disk/scsi.c' || echo '$(srcdir)/'`disk/scsi.c - -disk/scsi_module-scsi.obj: disk/scsi.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(scsi_module_CPPFLAGS) $(CPPFLAGS) $(scsi_module_CFLAGS) $(CFLAGS) -MT disk/scsi_module-scsi.obj -MD -MP -MF disk/$(DEPDIR)/scsi_module-scsi.Tpo -c -o disk/scsi_module-scsi.obj `if test -f 'disk/scsi.c'; then $(CYGPATH_W) 'disk/scsi.c'; else $(CYGPATH_W) '$(srcdir)/disk/scsi.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) disk/$(DEPDIR)/scsi_module-scsi.Tpo disk/$(DEPDIR)/scsi_module-scsi.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='disk/scsi.c' object='disk/scsi_module-scsi.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(scsi_module_CPPFLAGS) $(CPPFLAGS) $(scsi_module_CFLAGS) $(CFLAGS) -c -o disk/scsi_module-scsi.obj `if test -f 'disk/scsi.c'; then $(CYGPATH_W) 'disk/scsi.c'; else $(CYGPATH_W) '$(srcdir)/disk/scsi.c'; fi` - -video/emu/sdl_module-sdl.o: video/emu/sdl.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(sdl_module_CPPFLAGS) $(CPPFLAGS) $(sdl_module_CFLAGS) $(CFLAGS) -MT video/emu/sdl_module-sdl.o -MD -MP -MF video/emu/$(DEPDIR)/sdl_module-sdl.Tpo -c -o video/emu/sdl_module-sdl.o `test -f 'video/emu/sdl.c' || echo '$(srcdir)/'`video/emu/sdl.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) video/emu/$(DEPDIR)/sdl_module-sdl.Tpo video/emu/$(DEPDIR)/sdl_module-sdl.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='video/emu/sdl.c' object='video/emu/sdl_module-sdl.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(sdl_module_CPPFLAGS) $(CPPFLAGS) $(sdl_module_CFLAGS) $(CFLAGS) -c -o video/emu/sdl_module-sdl.o `test -f 'video/emu/sdl.c' || echo '$(srcdir)/'`video/emu/sdl.c - -video/emu/sdl_module-sdl.obj: video/emu/sdl.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(sdl_module_CPPFLAGS) $(CPPFLAGS) $(sdl_module_CFLAGS) $(CFLAGS) -MT video/emu/sdl_module-sdl.obj -MD -MP -MF video/emu/$(DEPDIR)/sdl_module-sdl.Tpo -c -o video/emu/sdl_module-sdl.obj `if test -f 'video/emu/sdl.c'; then $(CYGPATH_W) 'video/emu/sdl.c'; else $(CYGPATH_W) '$(srcdir)/video/emu/sdl.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) video/emu/$(DEPDIR)/sdl_module-sdl.Tpo video/emu/$(DEPDIR)/sdl_module-sdl.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='video/emu/sdl.c' object='video/emu/sdl_module-sdl.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(sdl_module_CPPFLAGS) $(CPPFLAGS) $(sdl_module_CFLAGS) $(CFLAGS) -c -o video/emu/sdl_module-sdl.obj `if test -f 'video/emu/sdl.c'; then $(CYGPATH_W) 'video/emu/sdl.c'; else $(CYGPATH_W) '$(srcdir)/video/emu/sdl.c'; fi` - -commands/search_module-search_wrap.o: commands/search_wrap.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(search_module_CPPFLAGS) $(CPPFLAGS) $(search_module_CFLAGS) $(CFLAGS) -MT commands/search_module-search_wrap.o -MD -MP -MF commands/$(DEPDIR)/search_module-search_wrap.Tpo -c -o commands/search_module-search_wrap.o `test -f 'commands/search_wrap.c' || echo '$(srcdir)/'`commands/search_wrap.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/$(DEPDIR)/search_module-search_wrap.Tpo commands/$(DEPDIR)/search_module-search_wrap.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/search_wrap.c' object='commands/search_module-search_wrap.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(search_module_CPPFLAGS) $(CPPFLAGS) $(search_module_CFLAGS) $(CFLAGS) -c -o commands/search_module-search_wrap.o `test -f 'commands/search_wrap.c' || echo '$(srcdir)/'`commands/search_wrap.c - -commands/search_module-search_wrap.obj: commands/search_wrap.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(search_module_CPPFLAGS) $(CPPFLAGS) $(search_module_CFLAGS) $(CFLAGS) -MT commands/search_module-search_wrap.obj -MD -MP -MF commands/$(DEPDIR)/search_module-search_wrap.Tpo -c -o commands/search_module-search_wrap.obj `if test -f 'commands/search_wrap.c'; then $(CYGPATH_W) 'commands/search_wrap.c'; else $(CYGPATH_W) '$(srcdir)/commands/search_wrap.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/$(DEPDIR)/search_module-search_wrap.Tpo commands/$(DEPDIR)/search_module-search_wrap.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/search_wrap.c' object='commands/search_module-search_wrap.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(search_module_CPPFLAGS) $(CPPFLAGS) $(search_module_CFLAGS) $(CFLAGS) -c -o commands/search_module-search_wrap.obj `if test -f 'commands/search_wrap.c'; then $(CYGPATH_W) 'commands/search_wrap.c'; else $(CYGPATH_W) '$(srcdir)/commands/search_wrap.c'; fi` - -commands/search_fs_file_module-search_file.o: commands/search_file.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(search_fs_file_module_CPPFLAGS) $(CPPFLAGS) $(search_fs_file_module_CFLAGS) $(CFLAGS) -MT commands/search_fs_file_module-search_file.o -MD -MP -MF commands/$(DEPDIR)/search_fs_file_module-search_file.Tpo -c -o commands/search_fs_file_module-search_file.o `test -f 'commands/search_file.c' || echo '$(srcdir)/'`commands/search_file.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/$(DEPDIR)/search_fs_file_module-search_file.Tpo commands/$(DEPDIR)/search_fs_file_module-search_file.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/search_file.c' object='commands/search_fs_file_module-search_file.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(search_fs_file_module_CPPFLAGS) $(CPPFLAGS) $(search_fs_file_module_CFLAGS) $(CFLAGS) -c -o commands/search_fs_file_module-search_file.o `test -f 'commands/search_file.c' || echo '$(srcdir)/'`commands/search_file.c - -commands/search_fs_file_module-search_file.obj: commands/search_file.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(search_fs_file_module_CPPFLAGS) $(CPPFLAGS) $(search_fs_file_module_CFLAGS) $(CFLAGS) -MT commands/search_fs_file_module-search_file.obj -MD -MP -MF commands/$(DEPDIR)/search_fs_file_module-search_file.Tpo -c -o commands/search_fs_file_module-search_file.obj `if test -f 'commands/search_file.c'; then $(CYGPATH_W) 'commands/search_file.c'; else $(CYGPATH_W) '$(srcdir)/commands/search_file.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/$(DEPDIR)/search_fs_file_module-search_file.Tpo commands/$(DEPDIR)/search_fs_file_module-search_file.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/search_file.c' object='commands/search_fs_file_module-search_file.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(search_fs_file_module_CPPFLAGS) $(CPPFLAGS) $(search_fs_file_module_CFLAGS) $(CFLAGS) -c -o commands/search_fs_file_module-search_file.obj `if test -f 'commands/search_file.c'; then $(CYGPATH_W) 'commands/search_file.c'; else $(CYGPATH_W) '$(srcdir)/commands/search_file.c'; fi` - -commands/search_fs_uuid_module-search_uuid.o: commands/search_uuid.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(search_fs_uuid_module_CPPFLAGS) $(CPPFLAGS) $(search_fs_uuid_module_CFLAGS) $(CFLAGS) -MT commands/search_fs_uuid_module-search_uuid.o -MD -MP -MF commands/$(DEPDIR)/search_fs_uuid_module-search_uuid.Tpo -c -o commands/search_fs_uuid_module-search_uuid.o `test -f 'commands/search_uuid.c' || echo '$(srcdir)/'`commands/search_uuid.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/$(DEPDIR)/search_fs_uuid_module-search_uuid.Tpo commands/$(DEPDIR)/search_fs_uuid_module-search_uuid.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/search_uuid.c' object='commands/search_fs_uuid_module-search_uuid.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(search_fs_uuid_module_CPPFLAGS) $(CPPFLAGS) $(search_fs_uuid_module_CFLAGS) $(CFLAGS) -c -o commands/search_fs_uuid_module-search_uuid.o `test -f 'commands/search_uuid.c' || echo '$(srcdir)/'`commands/search_uuid.c - -commands/search_fs_uuid_module-search_uuid.obj: commands/search_uuid.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(search_fs_uuid_module_CPPFLAGS) $(CPPFLAGS) $(search_fs_uuid_module_CFLAGS) $(CFLAGS) -MT commands/search_fs_uuid_module-search_uuid.obj -MD -MP -MF commands/$(DEPDIR)/search_fs_uuid_module-search_uuid.Tpo -c -o commands/search_fs_uuid_module-search_uuid.obj `if test -f 'commands/search_uuid.c'; then $(CYGPATH_W) 'commands/search_uuid.c'; else $(CYGPATH_W) '$(srcdir)/commands/search_uuid.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/$(DEPDIR)/search_fs_uuid_module-search_uuid.Tpo commands/$(DEPDIR)/search_fs_uuid_module-search_uuid.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/search_uuid.c' object='commands/search_fs_uuid_module-search_uuid.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(search_fs_uuid_module_CPPFLAGS) $(CPPFLAGS) $(search_fs_uuid_module_CFLAGS) $(CFLAGS) -c -o commands/search_fs_uuid_module-search_uuid.obj `if test -f 'commands/search_uuid.c'; then $(CYGPATH_W) 'commands/search_uuid.c'; else $(CYGPATH_W) '$(srcdir)/commands/search_uuid.c'; fi` - -commands/search_label_module-search_label.o: commands/search_label.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(search_label_module_CPPFLAGS) $(CPPFLAGS) $(search_label_module_CFLAGS) $(CFLAGS) -MT commands/search_label_module-search_label.o -MD -MP -MF commands/$(DEPDIR)/search_label_module-search_label.Tpo -c -o commands/search_label_module-search_label.o `test -f 'commands/search_label.c' || echo '$(srcdir)/'`commands/search_label.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/$(DEPDIR)/search_label_module-search_label.Tpo commands/$(DEPDIR)/search_label_module-search_label.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/search_label.c' object='commands/search_label_module-search_label.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(search_label_module_CPPFLAGS) $(CPPFLAGS) $(search_label_module_CFLAGS) $(CFLAGS) -c -o commands/search_label_module-search_label.o `test -f 'commands/search_label.c' || echo '$(srcdir)/'`commands/search_label.c - -commands/search_label_module-search_label.obj: commands/search_label.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(search_label_module_CPPFLAGS) $(CPPFLAGS) $(search_label_module_CFLAGS) $(CFLAGS) -MT commands/search_label_module-search_label.obj -MD -MP -MF commands/$(DEPDIR)/search_label_module-search_label.Tpo -c -o commands/search_label_module-search_label.obj `if test -f 'commands/search_label.c'; then $(CYGPATH_W) 'commands/search_label.c'; else $(CYGPATH_W) '$(srcdir)/commands/search_label.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/$(DEPDIR)/search_label_module-search_label.Tpo commands/$(DEPDIR)/search_label_module-search_label.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/search_label.c' object='commands/search_label_module-search_label.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(search_label_module_CPPFLAGS) $(CPPFLAGS) $(search_label_module_CFLAGS) $(CFLAGS) -c -o commands/search_label_module-search_label.obj `if test -f 'commands/search_label.c'; then $(CYGPATH_W) 'commands/search_label.c'; else $(CYGPATH_W) '$(srcdir)/commands/search_label.c'; fi` - -commands/i386/pc/sendkey_module-sendkey.o: commands/i386/pc/sendkey.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(sendkey_module_CPPFLAGS) $(CPPFLAGS) $(sendkey_module_CFLAGS) $(CFLAGS) -MT commands/i386/pc/sendkey_module-sendkey.o -MD -MP -MF commands/i386/pc/$(DEPDIR)/sendkey_module-sendkey.Tpo -c -o commands/i386/pc/sendkey_module-sendkey.o `test -f 'commands/i386/pc/sendkey.c' || echo '$(srcdir)/'`commands/i386/pc/sendkey.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/i386/pc/$(DEPDIR)/sendkey_module-sendkey.Tpo commands/i386/pc/$(DEPDIR)/sendkey_module-sendkey.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/i386/pc/sendkey.c' object='commands/i386/pc/sendkey_module-sendkey.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(sendkey_module_CPPFLAGS) $(CPPFLAGS) $(sendkey_module_CFLAGS) $(CFLAGS) -c -o commands/i386/pc/sendkey_module-sendkey.o `test -f 'commands/i386/pc/sendkey.c' || echo '$(srcdir)/'`commands/i386/pc/sendkey.c - -commands/i386/pc/sendkey_module-sendkey.obj: commands/i386/pc/sendkey.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(sendkey_module_CPPFLAGS) $(CPPFLAGS) $(sendkey_module_CFLAGS) $(CFLAGS) -MT commands/i386/pc/sendkey_module-sendkey.obj -MD -MP -MF commands/i386/pc/$(DEPDIR)/sendkey_module-sendkey.Tpo -c -o commands/i386/pc/sendkey_module-sendkey.obj `if test -f 'commands/i386/pc/sendkey.c'; then $(CYGPATH_W) 'commands/i386/pc/sendkey.c'; else $(CYGPATH_W) '$(srcdir)/commands/i386/pc/sendkey.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/i386/pc/$(DEPDIR)/sendkey_module-sendkey.Tpo commands/i386/pc/$(DEPDIR)/sendkey_module-sendkey.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/i386/pc/sendkey.c' object='commands/i386/pc/sendkey_module-sendkey.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(sendkey_module_CPPFLAGS) $(CPPFLAGS) $(sendkey_module_CFLAGS) $(CFLAGS) -c -o commands/i386/pc/sendkey_module-sendkey.obj `if test -f 'commands/i386/pc/sendkey.c'; then $(CYGPATH_W) 'commands/i386/pc/sendkey.c'; else $(CYGPATH_W) '$(srcdir)/commands/i386/pc/sendkey.c'; fi` - -term/efi/serial_module-serial.o: term/efi/serial.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(serial_module_CPPFLAGS) $(CPPFLAGS) $(serial_module_CFLAGS) $(CFLAGS) -MT term/efi/serial_module-serial.o -MD -MP -MF term/efi/$(DEPDIR)/serial_module-serial.Tpo -c -o term/efi/serial_module-serial.o `test -f 'term/efi/serial.c' || echo '$(srcdir)/'`term/efi/serial.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) term/efi/$(DEPDIR)/serial_module-serial.Tpo term/efi/$(DEPDIR)/serial_module-serial.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='term/efi/serial.c' object='term/efi/serial_module-serial.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(serial_module_CPPFLAGS) $(CPPFLAGS) $(serial_module_CFLAGS) $(CFLAGS) -c -o term/efi/serial_module-serial.o `test -f 'term/efi/serial.c' || echo '$(srcdir)/'`term/efi/serial.c - -term/efi/serial_module-serial.obj: term/efi/serial.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(serial_module_CPPFLAGS) $(CPPFLAGS) $(serial_module_CFLAGS) $(CFLAGS) -MT term/efi/serial_module-serial.obj -MD -MP -MF term/efi/$(DEPDIR)/serial_module-serial.Tpo -c -o term/efi/serial_module-serial.obj `if test -f 'term/efi/serial.c'; then $(CYGPATH_W) 'term/efi/serial.c'; else $(CYGPATH_W) '$(srcdir)/term/efi/serial.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) term/efi/$(DEPDIR)/serial_module-serial.Tpo term/efi/$(DEPDIR)/serial_module-serial.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='term/efi/serial.c' object='term/efi/serial_module-serial.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(serial_module_CPPFLAGS) $(CPPFLAGS) $(serial_module_CFLAGS) $(CFLAGS) -c -o term/efi/serial_module-serial.obj `if test -f 'term/efi/serial.c'; then $(CYGPATH_W) 'term/efi/serial.c'; else $(CYGPATH_W) '$(srcdir)/term/efi/serial.c'; fi` - -term/serial_module-serial.o: term/serial.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(serial_module_CPPFLAGS) $(CPPFLAGS) $(serial_module_CFLAGS) $(CFLAGS) -MT term/serial_module-serial.o -MD -MP -MF term/$(DEPDIR)/serial_module-serial.Tpo -c -o term/serial_module-serial.o `test -f 'term/serial.c' || echo '$(srcdir)/'`term/serial.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) term/$(DEPDIR)/serial_module-serial.Tpo term/$(DEPDIR)/serial_module-serial.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='term/serial.c' object='term/serial_module-serial.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(serial_module_CPPFLAGS) $(CPPFLAGS) $(serial_module_CFLAGS) $(CFLAGS) -c -o term/serial_module-serial.o `test -f 'term/serial.c' || echo '$(srcdir)/'`term/serial.c - -term/serial_module-serial.obj: term/serial.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(serial_module_CPPFLAGS) $(CPPFLAGS) $(serial_module_CFLAGS) $(CFLAGS) -MT term/serial_module-serial.obj -MD -MP -MF term/$(DEPDIR)/serial_module-serial.Tpo -c -o term/serial_module-serial.obj `if test -f 'term/serial.c'; then $(CYGPATH_W) 'term/serial.c'; else $(CYGPATH_W) '$(srcdir)/term/serial.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) term/$(DEPDIR)/serial_module-serial.Tpo term/$(DEPDIR)/serial_module-serial.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='term/serial.c' object='term/serial_module-serial.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(serial_module_CPPFLAGS) $(CPPFLAGS) $(serial_module_CFLAGS) $(CFLAGS) -c -o term/serial_module-serial.obj `if test -f 'term/serial.c'; then $(CYGPATH_W) 'term/serial.c'; else $(CYGPATH_W) '$(srcdir)/term/serial.c'; fi` - -term/serial_module-ns8250.o: term/ns8250.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(serial_module_CPPFLAGS) $(CPPFLAGS) $(serial_module_CFLAGS) $(CFLAGS) -MT term/serial_module-ns8250.o -MD -MP -MF term/$(DEPDIR)/serial_module-ns8250.Tpo -c -o term/serial_module-ns8250.o `test -f 'term/ns8250.c' || echo '$(srcdir)/'`term/ns8250.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) term/$(DEPDIR)/serial_module-ns8250.Tpo term/$(DEPDIR)/serial_module-ns8250.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='term/ns8250.c' object='term/serial_module-ns8250.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(serial_module_CPPFLAGS) $(CPPFLAGS) $(serial_module_CFLAGS) $(CFLAGS) -c -o term/serial_module-ns8250.o `test -f 'term/ns8250.c' || echo '$(srcdir)/'`term/ns8250.c - -term/serial_module-ns8250.obj: term/ns8250.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(serial_module_CPPFLAGS) $(CPPFLAGS) $(serial_module_CFLAGS) $(CFLAGS) -MT term/serial_module-ns8250.obj -MD -MP -MF term/$(DEPDIR)/serial_module-ns8250.Tpo -c -o term/serial_module-ns8250.obj `if test -f 'term/ns8250.c'; then $(CYGPATH_W) 'term/ns8250.c'; else $(CYGPATH_W) '$(srcdir)/term/ns8250.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) term/$(DEPDIR)/serial_module-ns8250.Tpo term/$(DEPDIR)/serial_module-ns8250.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='term/ns8250.c' object='term/serial_module-ns8250.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(serial_module_CPPFLAGS) $(CPPFLAGS) $(serial_module_CFLAGS) $(CFLAGS) -c -o term/serial_module-ns8250.obj `if test -f 'term/ns8250.c'; then $(CYGPATH_W) 'term/ns8250.c'; else $(CYGPATH_W) '$(srcdir)/term/ns8250.c'; fi` - -term/ieee1275/serial_module-serial.o: term/ieee1275/serial.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(serial_module_CPPFLAGS) $(CPPFLAGS) $(serial_module_CFLAGS) $(CFLAGS) -MT term/ieee1275/serial_module-serial.o -MD -MP -MF term/ieee1275/$(DEPDIR)/serial_module-serial.Tpo -c -o term/ieee1275/serial_module-serial.o `test -f 'term/ieee1275/serial.c' || echo '$(srcdir)/'`term/ieee1275/serial.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) term/ieee1275/$(DEPDIR)/serial_module-serial.Tpo term/ieee1275/$(DEPDIR)/serial_module-serial.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='term/ieee1275/serial.c' object='term/ieee1275/serial_module-serial.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(serial_module_CPPFLAGS) $(CPPFLAGS) $(serial_module_CFLAGS) $(CFLAGS) -c -o term/ieee1275/serial_module-serial.o `test -f 'term/ieee1275/serial.c' || echo '$(srcdir)/'`term/ieee1275/serial.c - -term/ieee1275/serial_module-serial.obj: term/ieee1275/serial.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(serial_module_CPPFLAGS) $(CPPFLAGS) $(serial_module_CFLAGS) $(CFLAGS) -MT term/ieee1275/serial_module-serial.obj -MD -MP -MF term/ieee1275/$(DEPDIR)/serial_module-serial.Tpo -c -o term/ieee1275/serial_module-serial.obj `if test -f 'term/ieee1275/serial.c'; then $(CYGPATH_W) 'term/ieee1275/serial.c'; else $(CYGPATH_W) '$(srcdir)/term/ieee1275/serial.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) term/ieee1275/$(DEPDIR)/serial_module-serial.Tpo term/ieee1275/$(DEPDIR)/serial_module-serial.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='term/ieee1275/serial.c' object='term/ieee1275/serial_module-serial.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(serial_module_CPPFLAGS) $(CPPFLAGS) $(serial_module_CFLAGS) $(CFLAGS) -c -o term/ieee1275/serial_module-serial.obj `if test -f 'term/ieee1275/serial.c'; then $(CYGPATH_W) 'term/ieee1275/serial.c'; else $(CYGPATH_W) '$(srcdir)/term/ieee1275/serial.c'; fi` - -term/arc/serial_module-serial.o: term/arc/serial.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(serial_module_CPPFLAGS) $(CPPFLAGS) $(serial_module_CFLAGS) $(CFLAGS) -MT term/arc/serial_module-serial.o -MD -MP -MF term/arc/$(DEPDIR)/serial_module-serial.Tpo -c -o term/arc/serial_module-serial.o `test -f 'term/arc/serial.c' || echo '$(srcdir)/'`term/arc/serial.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) term/arc/$(DEPDIR)/serial_module-serial.Tpo term/arc/$(DEPDIR)/serial_module-serial.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='term/arc/serial.c' object='term/arc/serial_module-serial.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(serial_module_CPPFLAGS) $(CPPFLAGS) $(serial_module_CFLAGS) $(CFLAGS) -c -o term/arc/serial_module-serial.o `test -f 'term/arc/serial.c' || echo '$(srcdir)/'`term/arc/serial.c - -term/arc/serial_module-serial.obj: term/arc/serial.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(serial_module_CPPFLAGS) $(CPPFLAGS) $(serial_module_CFLAGS) $(CFLAGS) -MT term/arc/serial_module-serial.obj -MD -MP -MF term/arc/$(DEPDIR)/serial_module-serial.Tpo -c -o term/arc/serial_module-serial.obj `if test -f 'term/arc/serial.c'; then $(CYGPATH_W) 'term/arc/serial.c'; else $(CYGPATH_W) '$(srcdir)/term/arc/serial.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) term/arc/$(DEPDIR)/serial_module-serial.Tpo term/arc/$(DEPDIR)/serial_module-serial.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='term/arc/serial.c' object='term/arc/serial_module-serial.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(serial_module_CPPFLAGS) $(CPPFLAGS) $(serial_module_CFLAGS) $(CFLAGS) -c -o term/arc/serial_module-serial.obj `if test -f 'term/arc/serial.c'; then $(CYGPATH_W) 'term/arc/serial.c'; else $(CYGPATH_W) '$(srcdir)/term/arc/serial.c'; fi` - -tests/setjmp_test_module-setjmp_test.o: tests/setjmp_test.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(setjmp_test_module_CPPFLAGS) $(CPPFLAGS) $(setjmp_test_module_CFLAGS) $(CFLAGS) -MT tests/setjmp_test_module-setjmp_test.o -MD -MP -MF tests/$(DEPDIR)/setjmp_test_module-setjmp_test.Tpo -c -o tests/setjmp_test_module-setjmp_test.o `test -f 'tests/setjmp_test.c' || echo '$(srcdir)/'`tests/setjmp_test.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) tests/$(DEPDIR)/setjmp_test_module-setjmp_test.Tpo tests/$(DEPDIR)/setjmp_test_module-setjmp_test.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='tests/setjmp_test.c' object='tests/setjmp_test_module-setjmp_test.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(setjmp_test_module_CPPFLAGS) $(CPPFLAGS) $(setjmp_test_module_CFLAGS) $(CFLAGS) -c -o tests/setjmp_test_module-setjmp_test.o `test -f 'tests/setjmp_test.c' || echo '$(srcdir)/'`tests/setjmp_test.c - -tests/setjmp_test_module-setjmp_test.obj: tests/setjmp_test.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(setjmp_test_module_CPPFLAGS) $(CPPFLAGS) $(setjmp_test_module_CFLAGS) $(CFLAGS) -MT tests/setjmp_test_module-setjmp_test.obj -MD -MP -MF tests/$(DEPDIR)/setjmp_test_module-setjmp_test.Tpo -c -o tests/setjmp_test_module-setjmp_test.obj `if test -f 'tests/setjmp_test.c'; then $(CYGPATH_W) 'tests/setjmp_test.c'; else $(CYGPATH_W) '$(srcdir)/tests/setjmp_test.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) tests/$(DEPDIR)/setjmp_test_module-setjmp_test.Tpo tests/$(DEPDIR)/setjmp_test_module-setjmp_test.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='tests/setjmp_test.c' object='tests/setjmp_test_module-setjmp_test.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(setjmp_test_module_CPPFLAGS) $(CPPFLAGS) $(setjmp_test_module_CFLAGS) $(CFLAGS) -c -o tests/setjmp_test_module-setjmp_test.obj `if test -f 'tests/setjmp_test.c'; then $(CYGPATH_W) 'tests/setjmp_test.c'; else $(CYGPATH_W) '$(srcdir)/tests/setjmp_test.c'; fi` - -commands/setpci_module-setpci.o: commands/setpci.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(setpci_module_CPPFLAGS) $(CPPFLAGS) $(setpci_module_CFLAGS) $(CFLAGS) -MT commands/setpci_module-setpci.o -MD -MP -MF commands/$(DEPDIR)/setpci_module-setpci.Tpo -c -o commands/setpci_module-setpci.o `test -f 'commands/setpci.c' || echo '$(srcdir)/'`commands/setpci.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/$(DEPDIR)/setpci_module-setpci.Tpo commands/$(DEPDIR)/setpci_module-setpci.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/setpci.c' object='commands/setpci_module-setpci.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(setpci_module_CPPFLAGS) $(CPPFLAGS) $(setpci_module_CFLAGS) $(CFLAGS) -c -o commands/setpci_module-setpci.o `test -f 'commands/setpci.c' || echo '$(srcdir)/'`commands/setpci.c - -commands/setpci_module-setpci.obj: commands/setpci.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(setpci_module_CPPFLAGS) $(CPPFLAGS) $(setpci_module_CFLAGS) $(CFLAGS) -MT commands/setpci_module-setpci.obj -MD -MP -MF commands/$(DEPDIR)/setpci_module-setpci.Tpo -c -o commands/setpci_module-setpci.obj `if test -f 'commands/setpci.c'; then $(CYGPATH_W) 'commands/setpci.c'; else $(CYGPATH_W) '$(srcdir)/commands/setpci.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/$(DEPDIR)/setpci_module-setpci.Tpo commands/$(DEPDIR)/setpci_module-setpci.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/setpci.c' object='commands/setpci_module-setpci.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(setpci_module_CPPFLAGS) $(CPPFLAGS) $(setpci_module_CFLAGS) $(CFLAGS) -c -o commands/setpci_module-setpci.obj `if test -f 'commands/setpci.c'; then $(CYGPATH_W) 'commands/setpci.c'; else $(CYGPATH_W) '$(srcdir)/commands/setpci.c'; fi` - -fs/sfs_module-sfs.o: fs/sfs.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(sfs_module_CPPFLAGS) $(CPPFLAGS) $(sfs_module_CFLAGS) $(CFLAGS) -MT fs/sfs_module-sfs.o -MD -MP -MF fs/$(DEPDIR)/sfs_module-sfs.Tpo -c -o fs/sfs_module-sfs.o `test -f 'fs/sfs.c' || echo '$(srcdir)/'`fs/sfs.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) fs/$(DEPDIR)/sfs_module-sfs.Tpo fs/$(DEPDIR)/sfs_module-sfs.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='fs/sfs.c' object='fs/sfs_module-sfs.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(sfs_module_CPPFLAGS) $(CPPFLAGS) $(sfs_module_CFLAGS) $(CFLAGS) -c -o fs/sfs_module-sfs.o `test -f 'fs/sfs.c' || echo '$(srcdir)/'`fs/sfs.c - -fs/sfs_module-sfs.obj: fs/sfs.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(sfs_module_CPPFLAGS) $(CPPFLAGS) $(sfs_module_CFLAGS) $(CFLAGS) -MT fs/sfs_module-sfs.obj -MD -MP -MF fs/$(DEPDIR)/sfs_module-sfs.Tpo -c -o fs/sfs_module-sfs.obj `if test -f 'fs/sfs.c'; then $(CYGPATH_W) 'fs/sfs.c'; else $(CYGPATH_W) '$(srcdir)/fs/sfs.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) fs/$(DEPDIR)/sfs_module-sfs.Tpo fs/$(DEPDIR)/sfs_module-sfs.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='fs/sfs.c' object='fs/sfs_module-sfs.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(sfs_module_CPPFLAGS) $(CPPFLAGS) $(sfs_module_CFLAGS) $(CFLAGS) -c -o fs/sfs_module-sfs.obj `if test -f 'fs/sfs.c'; then $(CYGPATH_W) 'fs/sfs.c'; else $(CYGPATH_W) '$(srcdir)/fs/sfs.c'; fi` - -tests/shift_test_module-shift_test.o: tests/shift_test.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(shift_test_module_CPPFLAGS) $(CPPFLAGS) $(shift_test_module_CFLAGS) $(CFLAGS) -MT tests/shift_test_module-shift_test.o -MD -MP -MF tests/$(DEPDIR)/shift_test_module-shift_test.Tpo -c -o tests/shift_test_module-shift_test.o `test -f 'tests/shift_test.c' || echo '$(srcdir)/'`tests/shift_test.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) tests/$(DEPDIR)/shift_test_module-shift_test.Tpo tests/$(DEPDIR)/shift_test_module-shift_test.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='tests/shift_test.c' object='tests/shift_test_module-shift_test.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(shift_test_module_CPPFLAGS) $(CPPFLAGS) $(shift_test_module_CFLAGS) $(CFLAGS) -c -o tests/shift_test_module-shift_test.o `test -f 'tests/shift_test.c' || echo '$(srcdir)/'`tests/shift_test.c - -tests/shift_test_module-shift_test.obj: tests/shift_test.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(shift_test_module_CPPFLAGS) $(CPPFLAGS) $(shift_test_module_CFLAGS) $(CFLAGS) -MT tests/shift_test_module-shift_test.obj -MD -MP -MF tests/$(DEPDIR)/shift_test_module-shift_test.Tpo -c -o tests/shift_test_module-shift_test.obj `if test -f 'tests/shift_test.c'; then $(CYGPATH_W) 'tests/shift_test.c'; else $(CYGPATH_W) '$(srcdir)/tests/shift_test.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) tests/$(DEPDIR)/shift_test_module-shift_test.Tpo tests/$(DEPDIR)/shift_test_module-shift_test.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='tests/shift_test.c' object='tests/shift_test_module-shift_test.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(shift_test_module_CPPFLAGS) $(CPPFLAGS) $(shift_test_module_CFLAGS) $(CFLAGS) -c -o tests/shift_test_module-shift_test.obj `if test -f 'tests/shift_test.c'; then $(CYGPATH_W) 'tests/shift_test.c'; else $(CYGPATH_W) '$(srcdir)/tests/shift_test.c'; fi` - -commands/efi/shim_lock_module-shim_lock.o: commands/efi/shim_lock.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(shim_lock_module_CPPFLAGS) $(CPPFLAGS) $(shim_lock_module_CFLAGS) $(CFLAGS) -MT commands/efi/shim_lock_module-shim_lock.o -MD -MP -MF commands/efi/$(DEPDIR)/shim_lock_module-shim_lock.Tpo -c -o commands/efi/shim_lock_module-shim_lock.o `test -f 'commands/efi/shim_lock.c' || echo '$(srcdir)/'`commands/efi/shim_lock.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/efi/$(DEPDIR)/shim_lock_module-shim_lock.Tpo commands/efi/$(DEPDIR)/shim_lock_module-shim_lock.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/efi/shim_lock.c' object='commands/efi/shim_lock_module-shim_lock.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(shim_lock_module_CPPFLAGS) $(CPPFLAGS) $(shim_lock_module_CFLAGS) $(CFLAGS) -c -o commands/efi/shim_lock_module-shim_lock.o `test -f 'commands/efi/shim_lock.c' || echo '$(srcdir)/'`commands/efi/shim_lock.c - -commands/efi/shim_lock_module-shim_lock.obj: commands/efi/shim_lock.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(shim_lock_module_CPPFLAGS) $(CPPFLAGS) $(shim_lock_module_CFLAGS) $(CFLAGS) -MT commands/efi/shim_lock_module-shim_lock.obj -MD -MP -MF commands/efi/$(DEPDIR)/shim_lock_module-shim_lock.Tpo -c -o commands/efi/shim_lock_module-shim_lock.obj `if test -f 'commands/efi/shim_lock.c'; then $(CYGPATH_W) 'commands/efi/shim_lock.c'; else $(CYGPATH_W) '$(srcdir)/commands/efi/shim_lock.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/efi/$(DEPDIR)/shim_lock_module-shim_lock.Tpo commands/efi/$(DEPDIR)/shim_lock_module-shim_lock.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/efi/shim_lock.c' object='commands/efi/shim_lock_module-shim_lock.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(shim_lock_module_CPPFLAGS) $(CPPFLAGS) $(shim_lock_module_CFLAGS) $(CFLAGS) -c -o commands/efi/shim_lock_module-shim_lock.obj `if test -f 'commands/efi/shim_lock.c'; then $(CYGPATH_W) 'commands/efi/shim_lock.c'; else $(CYGPATH_W) '$(srcdir)/commands/efi/shim_lock.c'; fi` - -tests/signature_test_module-signature_test.o: tests/signature_test.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(signature_test_module_CPPFLAGS) $(CPPFLAGS) $(signature_test_module_CFLAGS) $(CFLAGS) -MT tests/signature_test_module-signature_test.o -MD -MP -MF tests/$(DEPDIR)/signature_test_module-signature_test.Tpo -c -o tests/signature_test_module-signature_test.o `test -f 'tests/signature_test.c' || echo '$(srcdir)/'`tests/signature_test.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) tests/$(DEPDIR)/signature_test_module-signature_test.Tpo tests/$(DEPDIR)/signature_test_module-signature_test.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='tests/signature_test.c' object='tests/signature_test_module-signature_test.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(signature_test_module_CPPFLAGS) $(CPPFLAGS) $(signature_test_module_CFLAGS) $(CFLAGS) -c -o tests/signature_test_module-signature_test.o `test -f 'tests/signature_test.c' || echo '$(srcdir)/'`tests/signature_test.c - -tests/signature_test_module-signature_test.obj: tests/signature_test.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(signature_test_module_CPPFLAGS) $(CPPFLAGS) $(signature_test_module_CFLAGS) $(CFLAGS) -MT tests/signature_test_module-signature_test.obj -MD -MP -MF tests/$(DEPDIR)/signature_test_module-signature_test.Tpo -c -o tests/signature_test_module-signature_test.obj `if test -f 'tests/signature_test.c'; then $(CYGPATH_W) 'tests/signature_test.c'; else $(CYGPATH_W) '$(srcdir)/tests/signature_test.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) tests/$(DEPDIR)/signature_test_module-signature_test.Tpo tests/$(DEPDIR)/signature_test_module-signature_test.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='tests/signature_test.c' object='tests/signature_test_module-signature_test.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(signature_test_module_CPPFLAGS) $(CPPFLAGS) $(signature_test_module_CFLAGS) $(CFLAGS) -c -o tests/signature_test_module-signature_test.obj `if test -f 'tests/signature_test.c'; then $(CYGPATH_W) 'tests/signature_test.c'; else $(CYGPATH_W) '$(srcdir)/tests/signature_test.c'; fi` - -commands/sleep_module-sleep.o: commands/sleep.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(sleep_module_CPPFLAGS) $(CPPFLAGS) $(sleep_module_CFLAGS) $(CFLAGS) -MT commands/sleep_module-sleep.o -MD -MP -MF commands/$(DEPDIR)/sleep_module-sleep.Tpo -c -o commands/sleep_module-sleep.o `test -f 'commands/sleep.c' || echo '$(srcdir)/'`commands/sleep.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/$(DEPDIR)/sleep_module-sleep.Tpo commands/$(DEPDIR)/sleep_module-sleep.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/sleep.c' object='commands/sleep_module-sleep.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(sleep_module_CPPFLAGS) $(CPPFLAGS) $(sleep_module_CFLAGS) $(CFLAGS) -c -o commands/sleep_module-sleep.o `test -f 'commands/sleep.c' || echo '$(srcdir)/'`commands/sleep.c - -commands/sleep_module-sleep.obj: commands/sleep.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(sleep_module_CPPFLAGS) $(CPPFLAGS) $(sleep_module_CFLAGS) $(CFLAGS) -MT commands/sleep_module-sleep.obj -MD -MP -MF commands/$(DEPDIR)/sleep_module-sleep.Tpo -c -o commands/sleep_module-sleep.obj `if test -f 'commands/sleep.c'; then $(CYGPATH_W) 'commands/sleep.c'; else $(CYGPATH_W) '$(srcdir)/commands/sleep.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/$(DEPDIR)/sleep_module-sleep.Tpo commands/$(DEPDIR)/sleep_module-sleep.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/sleep.c' object='commands/sleep_module-sleep.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(sleep_module_CPPFLAGS) $(CPPFLAGS) $(sleep_module_CFLAGS) $(CFLAGS) -c -o commands/sleep_module-sleep.obj `if test -f 'commands/sleep.c'; then $(CYGPATH_W) 'commands/sleep.c'; else $(CYGPATH_W) '$(srcdir)/commands/sleep.c'; fi` - -tests/sleep_test_module-sleep_test.o: tests/sleep_test.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(sleep_test_module_CPPFLAGS) $(CPPFLAGS) $(sleep_test_module_CFLAGS) $(CFLAGS) -MT tests/sleep_test_module-sleep_test.o -MD -MP -MF tests/$(DEPDIR)/sleep_test_module-sleep_test.Tpo -c -o tests/sleep_test_module-sleep_test.o `test -f 'tests/sleep_test.c' || echo '$(srcdir)/'`tests/sleep_test.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) tests/$(DEPDIR)/sleep_test_module-sleep_test.Tpo tests/$(DEPDIR)/sleep_test_module-sleep_test.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='tests/sleep_test.c' object='tests/sleep_test_module-sleep_test.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(sleep_test_module_CPPFLAGS) $(CPPFLAGS) $(sleep_test_module_CFLAGS) $(CFLAGS) -c -o tests/sleep_test_module-sleep_test.o `test -f 'tests/sleep_test.c' || echo '$(srcdir)/'`tests/sleep_test.c - -tests/sleep_test_module-sleep_test.obj: tests/sleep_test.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(sleep_test_module_CPPFLAGS) $(CPPFLAGS) $(sleep_test_module_CFLAGS) $(CFLAGS) -MT tests/sleep_test_module-sleep_test.obj -MD -MP -MF tests/$(DEPDIR)/sleep_test_module-sleep_test.Tpo -c -o tests/sleep_test_module-sleep_test.obj `if test -f 'tests/sleep_test.c'; then $(CYGPATH_W) 'tests/sleep_test.c'; else $(CYGPATH_W) '$(srcdir)/tests/sleep_test.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) tests/$(DEPDIR)/sleep_test_module-sleep_test.Tpo tests/$(DEPDIR)/sleep_test_module-sleep_test.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='tests/sleep_test.c' object='tests/sleep_test_module-sleep_test.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(sleep_test_module_CPPFLAGS) $(CPPFLAGS) $(sleep_test_module_CFLAGS) $(CFLAGS) -c -o tests/sleep_test_module-sleep_test.obj `if test -f 'tests/sleep_test.c'; then $(CYGPATH_W) 'tests/sleep_test.c'; else $(CYGPATH_W) '$(srcdir)/tests/sleep_test.c'; fi` - -term/spkmodem_module-spkmodem.o: term/spkmodem.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(spkmodem_module_CPPFLAGS) $(CPPFLAGS) $(spkmodem_module_CFLAGS) $(CFLAGS) -MT term/spkmodem_module-spkmodem.o -MD -MP -MF term/$(DEPDIR)/spkmodem_module-spkmodem.Tpo -c -o term/spkmodem_module-spkmodem.o `test -f 'term/spkmodem.c' || echo '$(srcdir)/'`term/spkmodem.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) term/$(DEPDIR)/spkmodem_module-spkmodem.Tpo term/$(DEPDIR)/spkmodem_module-spkmodem.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='term/spkmodem.c' object='term/spkmodem_module-spkmodem.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(spkmodem_module_CPPFLAGS) $(CPPFLAGS) $(spkmodem_module_CFLAGS) $(CFLAGS) -c -o term/spkmodem_module-spkmodem.o `test -f 'term/spkmodem.c' || echo '$(srcdir)/'`term/spkmodem.c - -term/spkmodem_module-spkmodem.obj: term/spkmodem.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(spkmodem_module_CPPFLAGS) $(CPPFLAGS) $(spkmodem_module_CFLAGS) $(CFLAGS) -MT term/spkmodem_module-spkmodem.obj -MD -MP -MF term/$(DEPDIR)/spkmodem_module-spkmodem.Tpo -c -o term/spkmodem_module-spkmodem.obj `if test -f 'term/spkmodem.c'; then $(CYGPATH_W) 'term/spkmodem.c'; else $(CYGPATH_W) '$(srcdir)/term/spkmodem.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) term/$(DEPDIR)/spkmodem_module-spkmodem.Tpo term/$(DEPDIR)/spkmodem_module-spkmodem.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='term/spkmodem.c' object='term/spkmodem_module-spkmodem.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(spkmodem_module_CPPFLAGS) $(CPPFLAGS) $(spkmodem_module_CFLAGS) $(CFLAGS) -c -o term/spkmodem_module-spkmodem.obj `if test -f 'term/spkmodem.c'; then $(CYGPATH_W) 'term/spkmodem.c'; else $(CYGPATH_W) '$(srcdir)/term/spkmodem.c'; fi` - -fs/squash4_module-squash4.o: fs/squash4.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(squash4_module_CPPFLAGS) $(CPPFLAGS) $(squash4_module_CFLAGS) $(CFLAGS) -MT fs/squash4_module-squash4.o -MD -MP -MF fs/$(DEPDIR)/squash4_module-squash4.Tpo -c -o fs/squash4_module-squash4.o `test -f 'fs/squash4.c' || echo '$(srcdir)/'`fs/squash4.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) fs/$(DEPDIR)/squash4_module-squash4.Tpo fs/$(DEPDIR)/squash4_module-squash4.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='fs/squash4.c' object='fs/squash4_module-squash4.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(squash4_module_CPPFLAGS) $(CPPFLAGS) $(squash4_module_CFLAGS) $(CFLAGS) -c -o fs/squash4_module-squash4.o `test -f 'fs/squash4.c' || echo '$(srcdir)/'`fs/squash4.c - -fs/squash4_module-squash4.obj: fs/squash4.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(squash4_module_CPPFLAGS) $(CPPFLAGS) $(squash4_module_CFLAGS) $(CFLAGS) -MT fs/squash4_module-squash4.obj -MD -MP -MF fs/$(DEPDIR)/squash4_module-squash4.Tpo -c -o fs/squash4_module-squash4.obj `if test -f 'fs/squash4.c'; then $(CYGPATH_W) 'fs/squash4.c'; else $(CYGPATH_W) '$(srcdir)/fs/squash4.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) fs/$(DEPDIR)/squash4_module-squash4.Tpo fs/$(DEPDIR)/squash4_module-squash4.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='fs/squash4.c' object='fs/squash4_module-squash4.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(squash4_module_CPPFLAGS) $(CPPFLAGS) $(squash4_module_CFLAGS) $(CFLAGS) -c -o fs/squash4_module-squash4.obj `if test -f 'fs/squash4.c'; then $(CYGPATH_W) 'fs/squash4.c'; else $(CYGPATH_W) '$(srcdir)/fs/squash4.c'; fi` - -tests/strtoull_test_module-strtoull_test.o: tests/strtoull_test.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(strtoull_test_module_CPPFLAGS) $(CPPFLAGS) $(strtoull_test_module_CFLAGS) $(CFLAGS) -MT tests/strtoull_test_module-strtoull_test.o -MD -MP -MF tests/$(DEPDIR)/strtoull_test_module-strtoull_test.Tpo -c -o tests/strtoull_test_module-strtoull_test.o `test -f 'tests/strtoull_test.c' || echo '$(srcdir)/'`tests/strtoull_test.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) tests/$(DEPDIR)/strtoull_test_module-strtoull_test.Tpo tests/$(DEPDIR)/strtoull_test_module-strtoull_test.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='tests/strtoull_test.c' object='tests/strtoull_test_module-strtoull_test.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(strtoull_test_module_CPPFLAGS) $(CPPFLAGS) $(strtoull_test_module_CFLAGS) $(CFLAGS) -c -o tests/strtoull_test_module-strtoull_test.o `test -f 'tests/strtoull_test.c' || echo '$(srcdir)/'`tests/strtoull_test.c - -tests/strtoull_test_module-strtoull_test.obj: tests/strtoull_test.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(strtoull_test_module_CPPFLAGS) $(CPPFLAGS) $(strtoull_test_module_CFLAGS) $(CFLAGS) -MT tests/strtoull_test_module-strtoull_test.obj -MD -MP -MF tests/$(DEPDIR)/strtoull_test_module-strtoull_test.Tpo -c -o tests/strtoull_test_module-strtoull_test.obj `if test -f 'tests/strtoull_test.c'; then $(CYGPATH_W) 'tests/strtoull_test.c'; else $(CYGPATH_W) '$(srcdir)/tests/strtoull_test.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) tests/$(DEPDIR)/strtoull_test_module-strtoull_test.Tpo tests/$(DEPDIR)/strtoull_test_module-strtoull_test.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='tests/strtoull_test.c' object='tests/strtoull_test_module-strtoull_test.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(strtoull_test_module_CPPFLAGS) $(CPPFLAGS) $(strtoull_test_module_CFLAGS) $(CFLAGS) -c -o tests/strtoull_test_module-strtoull_test.obj `if test -f 'tests/strtoull_test.c'; then $(CYGPATH_W) 'tests/strtoull_test.c'; else $(CYGPATH_W) '$(srcdir)/tests/strtoull_test.c'; fi` - -commands/ieee1275/suspend_module-suspend.o: commands/ieee1275/suspend.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(suspend_module_CPPFLAGS) $(CPPFLAGS) $(suspend_module_CFLAGS) $(CFLAGS) -MT commands/ieee1275/suspend_module-suspend.o -MD -MP -MF commands/ieee1275/$(DEPDIR)/suspend_module-suspend.Tpo -c -o commands/ieee1275/suspend_module-suspend.o `test -f 'commands/ieee1275/suspend.c' || echo '$(srcdir)/'`commands/ieee1275/suspend.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/ieee1275/$(DEPDIR)/suspend_module-suspend.Tpo commands/ieee1275/$(DEPDIR)/suspend_module-suspend.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/ieee1275/suspend.c' object='commands/ieee1275/suspend_module-suspend.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(suspend_module_CPPFLAGS) $(CPPFLAGS) $(suspend_module_CFLAGS) $(CFLAGS) -c -o commands/ieee1275/suspend_module-suspend.o `test -f 'commands/ieee1275/suspend.c' || echo '$(srcdir)/'`commands/ieee1275/suspend.c - -commands/ieee1275/suspend_module-suspend.obj: commands/ieee1275/suspend.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(suspend_module_CPPFLAGS) $(CPPFLAGS) $(suspend_module_CFLAGS) $(CFLAGS) -MT commands/ieee1275/suspend_module-suspend.obj -MD -MP -MF commands/ieee1275/$(DEPDIR)/suspend_module-suspend.Tpo -c -o commands/ieee1275/suspend_module-suspend.obj `if test -f 'commands/ieee1275/suspend.c'; then $(CYGPATH_W) 'commands/ieee1275/suspend.c'; else $(CYGPATH_W) '$(srcdir)/commands/ieee1275/suspend.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/ieee1275/$(DEPDIR)/suspend_module-suspend.Tpo commands/ieee1275/$(DEPDIR)/suspend_module-suspend.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/ieee1275/suspend.c' object='commands/ieee1275/suspend_module-suspend.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(suspend_module_CPPFLAGS) $(CPPFLAGS) $(suspend_module_CFLAGS) $(CFLAGS) -c -o commands/ieee1275/suspend_module-suspend.obj `if test -f 'commands/ieee1275/suspend.c'; then $(CYGPATH_W) 'commands/ieee1275/suspend.c'; else $(CYGPATH_W) '$(srcdir)/commands/ieee1275/suspend.c'; fi` - -lib/syslinuxcfg_module-syslinux_parse.o: lib/syslinux_parse.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(syslinuxcfg_module_CPPFLAGS) $(CPPFLAGS) $(syslinuxcfg_module_CFLAGS) $(CFLAGS) -MT lib/syslinuxcfg_module-syslinux_parse.o -MD -MP -MF lib/$(DEPDIR)/syslinuxcfg_module-syslinux_parse.Tpo -c -o lib/syslinuxcfg_module-syslinux_parse.o `test -f 'lib/syslinux_parse.c' || echo '$(srcdir)/'`lib/syslinux_parse.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/$(DEPDIR)/syslinuxcfg_module-syslinux_parse.Tpo lib/$(DEPDIR)/syslinuxcfg_module-syslinux_parse.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/syslinux_parse.c' object='lib/syslinuxcfg_module-syslinux_parse.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(syslinuxcfg_module_CPPFLAGS) $(CPPFLAGS) $(syslinuxcfg_module_CFLAGS) $(CFLAGS) -c -o lib/syslinuxcfg_module-syslinux_parse.o `test -f 'lib/syslinux_parse.c' || echo '$(srcdir)/'`lib/syslinux_parse.c - -lib/syslinuxcfg_module-syslinux_parse.obj: lib/syslinux_parse.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(syslinuxcfg_module_CPPFLAGS) $(CPPFLAGS) $(syslinuxcfg_module_CFLAGS) $(CFLAGS) -MT lib/syslinuxcfg_module-syslinux_parse.obj -MD -MP -MF lib/$(DEPDIR)/syslinuxcfg_module-syslinux_parse.Tpo -c -o lib/syslinuxcfg_module-syslinux_parse.obj `if test -f 'lib/syslinux_parse.c'; then $(CYGPATH_W) 'lib/syslinux_parse.c'; else $(CYGPATH_W) '$(srcdir)/lib/syslinux_parse.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/$(DEPDIR)/syslinuxcfg_module-syslinux_parse.Tpo lib/$(DEPDIR)/syslinuxcfg_module-syslinux_parse.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/syslinux_parse.c' object='lib/syslinuxcfg_module-syslinux_parse.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(syslinuxcfg_module_CPPFLAGS) $(CPPFLAGS) $(syslinuxcfg_module_CFLAGS) $(CFLAGS) -c -o lib/syslinuxcfg_module-syslinux_parse.obj `if test -f 'lib/syslinux_parse.c'; then $(CYGPATH_W) 'lib/syslinux_parse.c'; else $(CYGPATH_W) '$(srcdir)/lib/syslinux_parse.c'; fi` - -commands/syslinuxcfg_module-syslinuxcfg.o: commands/syslinuxcfg.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(syslinuxcfg_module_CPPFLAGS) $(CPPFLAGS) $(syslinuxcfg_module_CFLAGS) $(CFLAGS) -MT commands/syslinuxcfg_module-syslinuxcfg.o -MD -MP -MF commands/$(DEPDIR)/syslinuxcfg_module-syslinuxcfg.Tpo -c -o commands/syslinuxcfg_module-syslinuxcfg.o `test -f 'commands/syslinuxcfg.c' || echo '$(srcdir)/'`commands/syslinuxcfg.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/$(DEPDIR)/syslinuxcfg_module-syslinuxcfg.Tpo commands/$(DEPDIR)/syslinuxcfg_module-syslinuxcfg.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/syslinuxcfg.c' object='commands/syslinuxcfg_module-syslinuxcfg.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(syslinuxcfg_module_CPPFLAGS) $(CPPFLAGS) $(syslinuxcfg_module_CFLAGS) $(CFLAGS) -c -o commands/syslinuxcfg_module-syslinuxcfg.o `test -f 'commands/syslinuxcfg.c' || echo '$(srcdir)/'`commands/syslinuxcfg.c - -commands/syslinuxcfg_module-syslinuxcfg.obj: commands/syslinuxcfg.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(syslinuxcfg_module_CPPFLAGS) $(CPPFLAGS) $(syslinuxcfg_module_CFLAGS) $(CFLAGS) -MT commands/syslinuxcfg_module-syslinuxcfg.obj -MD -MP -MF commands/$(DEPDIR)/syslinuxcfg_module-syslinuxcfg.Tpo -c -o commands/syslinuxcfg_module-syslinuxcfg.obj `if test -f 'commands/syslinuxcfg.c'; then $(CYGPATH_W) 'commands/syslinuxcfg.c'; else $(CYGPATH_W) '$(srcdir)/commands/syslinuxcfg.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/$(DEPDIR)/syslinuxcfg_module-syslinuxcfg.Tpo commands/$(DEPDIR)/syslinuxcfg_module-syslinuxcfg.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/syslinuxcfg.c' object='commands/syslinuxcfg_module-syslinuxcfg.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(syslinuxcfg_module_CPPFLAGS) $(CPPFLAGS) $(syslinuxcfg_module_CFLAGS) $(CFLAGS) -c -o commands/syslinuxcfg_module-syslinuxcfg.obj `if test -f 'commands/syslinuxcfg.c'; then $(CYGPATH_W) 'commands/syslinuxcfg.c'; else $(CYGPATH_W) '$(srcdir)/commands/syslinuxcfg.c'; fi` - -fs/tar_module-tar.o: fs/tar.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(tar_module_CPPFLAGS) $(CPPFLAGS) $(tar_module_CFLAGS) $(CFLAGS) -MT fs/tar_module-tar.o -MD -MP -MF fs/$(DEPDIR)/tar_module-tar.Tpo -c -o fs/tar_module-tar.o `test -f 'fs/tar.c' || echo '$(srcdir)/'`fs/tar.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) fs/$(DEPDIR)/tar_module-tar.Tpo fs/$(DEPDIR)/tar_module-tar.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='fs/tar.c' object='fs/tar_module-tar.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(tar_module_CPPFLAGS) $(CPPFLAGS) $(tar_module_CFLAGS) $(CFLAGS) -c -o fs/tar_module-tar.o `test -f 'fs/tar.c' || echo '$(srcdir)/'`fs/tar.c - -fs/tar_module-tar.obj: fs/tar.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(tar_module_CPPFLAGS) $(CPPFLAGS) $(tar_module_CFLAGS) $(CFLAGS) -MT fs/tar_module-tar.obj -MD -MP -MF fs/$(DEPDIR)/tar_module-tar.Tpo -c -o fs/tar_module-tar.obj `if test -f 'fs/tar.c'; then $(CYGPATH_W) 'fs/tar.c'; else $(CYGPATH_W) '$(srcdir)/fs/tar.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) fs/$(DEPDIR)/tar_module-tar.Tpo fs/$(DEPDIR)/tar_module-tar.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='fs/tar.c' object='fs/tar_module-tar.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(tar_module_CPPFLAGS) $(CPPFLAGS) $(tar_module_CFLAGS) $(CFLAGS) -c -o fs/tar_module-tar.obj `if test -f 'fs/tar.c'; then $(CYGPATH_W) 'fs/tar.c'; else $(CYGPATH_W) '$(srcdir)/fs/tar.c'; fi` - -commands/terminal_module-terminal.o: commands/terminal.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(terminal_module_CPPFLAGS) $(CPPFLAGS) $(terminal_module_CFLAGS) $(CFLAGS) -MT commands/terminal_module-terminal.o -MD -MP -MF commands/$(DEPDIR)/terminal_module-terminal.Tpo -c -o commands/terminal_module-terminal.o `test -f 'commands/terminal.c' || echo '$(srcdir)/'`commands/terminal.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/$(DEPDIR)/terminal_module-terminal.Tpo commands/$(DEPDIR)/terminal_module-terminal.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/terminal.c' object='commands/terminal_module-terminal.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(terminal_module_CPPFLAGS) $(CPPFLAGS) $(terminal_module_CFLAGS) $(CFLAGS) -c -o commands/terminal_module-terminal.o `test -f 'commands/terminal.c' || echo '$(srcdir)/'`commands/terminal.c - -commands/terminal_module-terminal.obj: commands/terminal.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(terminal_module_CPPFLAGS) $(CPPFLAGS) $(terminal_module_CFLAGS) $(CFLAGS) -MT commands/terminal_module-terminal.obj -MD -MP -MF commands/$(DEPDIR)/terminal_module-terminal.Tpo -c -o commands/terminal_module-terminal.obj `if test -f 'commands/terminal.c'; then $(CYGPATH_W) 'commands/terminal.c'; else $(CYGPATH_W) '$(srcdir)/commands/terminal.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/$(DEPDIR)/terminal_module-terminal.Tpo commands/$(DEPDIR)/terminal_module-terminal.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/terminal.c' object='commands/terminal_module-terminal.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(terminal_module_CPPFLAGS) $(CPPFLAGS) $(terminal_module_CFLAGS) $(CFLAGS) -c -o commands/terminal_module-terminal.obj `if test -f 'commands/terminal.c'; then $(CYGPATH_W) 'commands/terminal.c'; else $(CYGPATH_W) '$(srcdir)/commands/terminal.c'; fi` - -term/terminfo_module-terminfo.o: term/terminfo.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(terminfo_module_CPPFLAGS) $(CPPFLAGS) $(terminfo_module_CFLAGS) $(CFLAGS) -MT term/terminfo_module-terminfo.o -MD -MP -MF term/$(DEPDIR)/terminfo_module-terminfo.Tpo -c -o term/terminfo_module-terminfo.o `test -f 'term/terminfo.c' || echo '$(srcdir)/'`term/terminfo.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) term/$(DEPDIR)/terminfo_module-terminfo.Tpo term/$(DEPDIR)/terminfo_module-terminfo.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='term/terminfo.c' object='term/terminfo_module-terminfo.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(terminfo_module_CPPFLAGS) $(CPPFLAGS) $(terminfo_module_CFLAGS) $(CFLAGS) -c -o term/terminfo_module-terminfo.o `test -f 'term/terminfo.c' || echo '$(srcdir)/'`term/terminfo.c - -term/terminfo_module-terminfo.obj: term/terminfo.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(terminfo_module_CPPFLAGS) $(CPPFLAGS) $(terminfo_module_CFLAGS) $(CFLAGS) -MT term/terminfo_module-terminfo.obj -MD -MP -MF term/$(DEPDIR)/terminfo_module-terminfo.Tpo -c -o term/terminfo_module-terminfo.obj `if test -f 'term/terminfo.c'; then $(CYGPATH_W) 'term/terminfo.c'; else $(CYGPATH_W) '$(srcdir)/term/terminfo.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) term/$(DEPDIR)/terminfo_module-terminfo.Tpo term/$(DEPDIR)/terminfo_module-terminfo.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='term/terminfo.c' object='term/terminfo_module-terminfo.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(terminfo_module_CPPFLAGS) $(CPPFLAGS) $(terminfo_module_CFLAGS) $(CFLAGS) -c -o term/terminfo_module-terminfo.obj `if test -f 'term/terminfo.c'; then $(CYGPATH_W) 'term/terminfo.c'; else $(CYGPATH_W) '$(srcdir)/term/terminfo.c'; fi` - -term/terminfo_module-tparm.o: term/tparm.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(terminfo_module_CPPFLAGS) $(CPPFLAGS) $(terminfo_module_CFLAGS) $(CFLAGS) -MT term/terminfo_module-tparm.o -MD -MP -MF term/$(DEPDIR)/terminfo_module-tparm.Tpo -c -o term/terminfo_module-tparm.o `test -f 'term/tparm.c' || echo '$(srcdir)/'`term/tparm.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) term/$(DEPDIR)/terminfo_module-tparm.Tpo term/$(DEPDIR)/terminfo_module-tparm.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='term/tparm.c' object='term/terminfo_module-tparm.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(terminfo_module_CPPFLAGS) $(CPPFLAGS) $(terminfo_module_CFLAGS) $(CFLAGS) -c -o term/terminfo_module-tparm.o `test -f 'term/tparm.c' || echo '$(srcdir)/'`term/tparm.c - -term/terminfo_module-tparm.obj: term/tparm.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(terminfo_module_CPPFLAGS) $(CPPFLAGS) $(terminfo_module_CFLAGS) $(CFLAGS) -MT term/terminfo_module-tparm.obj -MD -MP -MF term/$(DEPDIR)/terminfo_module-tparm.Tpo -c -o term/terminfo_module-tparm.obj `if test -f 'term/tparm.c'; then $(CYGPATH_W) 'term/tparm.c'; else $(CYGPATH_W) '$(srcdir)/term/tparm.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) term/$(DEPDIR)/terminfo_module-tparm.Tpo term/$(DEPDIR)/terminfo_module-tparm.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='term/tparm.c' object='term/terminfo_module-tparm.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(terminfo_module_CPPFLAGS) $(CPPFLAGS) $(terminfo_module_CFLAGS) $(CFLAGS) -c -o term/terminfo_module-tparm.obj `if test -f 'term/tparm.c'; then $(CYGPATH_W) 'term/tparm.c'; else $(CYGPATH_W) '$(srcdir)/term/tparm.c'; fi` - -commands/test_module-test.o: commands/test.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(test_module_CPPFLAGS) $(CPPFLAGS) $(test_module_CFLAGS) $(CFLAGS) -MT commands/test_module-test.o -MD -MP -MF commands/$(DEPDIR)/test_module-test.Tpo -c -o commands/test_module-test.o `test -f 'commands/test.c' || echo '$(srcdir)/'`commands/test.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/$(DEPDIR)/test_module-test.Tpo commands/$(DEPDIR)/test_module-test.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/test.c' object='commands/test_module-test.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(test_module_CPPFLAGS) $(CPPFLAGS) $(test_module_CFLAGS) $(CFLAGS) -c -o commands/test_module-test.o `test -f 'commands/test.c' || echo '$(srcdir)/'`commands/test.c - -commands/test_module-test.obj: commands/test.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(test_module_CPPFLAGS) $(CPPFLAGS) $(test_module_CFLAGS) $(CFLAGS) -MT commands/test_module-test.obj -MD -MP -MF commands/$(DEPDIR)/test_module-test.Tpo -c -o commands/test_module-test.obj `if test -f 'commands/test.c'; then $(CYGPATH_W) 'commands/test.c'; else $(CYGPATH_W) '$(srcdir)/commands/test.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/$(DEPDIR)/test_module-test.Tpo commands/$(DEPDIR)/test_module-test.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/test.c' object='commands/test_module-test.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(test_module_CPPFLAGS) $(CPPFLAGS) $(test_module_CFLAGS) $(CFLAGS) -c -o commands/test_module-test.obj `if test -f 'commands/test.c'; then $(CYGPATH_W) 'commands/test.c'; else $(CYGPATH_W) '$(srcdir)/commands/test.c'; fi` - -tests/test_blockarg_module-test_blockarg.o: tests/test_blockarg.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(test_blockarg_module_CPPFLAGS) $(CPPFLAGS) $(test_blockarg_module_CFLAGS) $(CFLAGS) -MT tests/test_blockarg_module-test_blockarg.o -MD -MP -MF tests/$(DEPDIR)/test_blockarg_module-test_blockarg.Tpo -c -o tests/test_blockarg_module-test_blockarg.o `test -f 'tests/test_blockarg.c' || echo '$(srcdir)/'`tests/test_blockarg.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) tests/$(DEPDIR)/test_blockarg_module-test_blockarg.Tpo tests/$(DEPDIR)/test_blockarg_module-test_blockarg.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='tests/test_blockarg.c' object='tests/test_blockarg_module-test_blockarg.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(test_blockarg_module_CPPFLAGS) $(CPPFLAGS) $(test_blockarg_module_CFLAGS) $(CFLAGS) -c -o tests/test_blockarg_module-test_blockarg.o `test -f 'tests/test_blockarg.c' || echo '$(srcdir)/'`tests/test_blockarg.c - -tests/test_blockarg_module-test_blockarg.obj: tests/test_blockarg.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(test_blockarg_module_CPPFLAGS) $(CPPFLAGS) $(test_blockarg_module_CFLAGS) $(CFLAGS) -MT tests/test_blockarg_module-test_blockarg.obj -MD -MP -MF tests/$(DEPDIR)/test_blockarg_module-test_blockarg.Tpo -c -o tests/test_blockarg_module-test_blockarg.obj `if test -f 'tests/test_blockarg.c'; then $(CYGPATH_W) 'tests/test_blockarg.c'; else $(CYGPATH_W) '$(srcdir)/tests/test_blockarg.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) tests/$(DEPDIR)/test_blockarg_module-test_blockarg.Tpo tests/$(DEPDIR)/test_blockarg_module-test_blockarg.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='tests/test_blockarg.c' object='tests/test_blockarg_module-test_blockarg.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(test_blockarg_module_CPPFLAGS) $(CPPFLAGS) $(test_blockarg_module_CFLAGS) $(CFLAGS) -c -o tests/test_blockarg_module-test_blockarg.obj `if test -f 'tests/test_blockarg.c'; then $(CYGPATH_W) 'tests/test_blockarg.c'; else $(CYGPATH_W) '$(srcdir)/tests/test_blockarg.c'; fi` - -commands/testload_module-testload.o: commands/testload.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(testload_module_CPPFLAGS) $(CPPFLAGS) $(testload_module_CFLAGS) $(CFLAGS) -MT commands/testload_module-testload.o -MD -MP -MF commands/$(DEPDIR)/testload_module-testload.Tpo -c -o commands/testload_module-testload.o `test -f 'commands/testload.c' || echo '$(srcdir)/'`commands/testload.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/$(DEPDIR)/testload_module-testload.Tpo commands/$(DEPDIR)/testload_module-testload.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/testload.c' object='commands/testload_module-testload.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(testload_module_CPPFLAGS) $(CPPFLAGS) $(testload_module_CFLAGS) $(CFLAGS) -c -o commands/testload_module-testload.o `test -f 'commands/testload.c' || echo '$(srcdir)/'`commands/testload.c - -commands/testload_module-testload.obj: commands/testload.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(testload_module_CPPFLAGS) $(CPPFLAGS) $(testload_module_CFLAGS) $(CFLAGS) -MT commands/testload_module-testload.obj -MD -MP -MF commands/$(DEPDIR)/testload_module-testload.Tpo -c -o commands/testload_module-testload.obj `if test -f 'commands/testload.c'; then $(CYGPATH_W) 'commands/testload.c'; else $(CYGPATH_W) '$(srcdir)/commands/testload.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/$(DEPDIR)/testload_module-testload.Tpo commands/$(DEPDIR)/testload_module-testload.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/testload.c' object='commands/testload_module-testload.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(testload_module_CPPFLAGS) $(CPPFLAGS) $(testload_module_CFLAGS) $(CFLAGS) -c -o commands/testload_module-testload.obj `if test -f 'commands/testload.c'; then $(CYGPATH_W) 'commands/testload.c'; else $(CYGPATH_W) '$(srcdir)/commands/testload.c'; fi` - -commands/testspeed_module-testspeed.o: commands/testspeed.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(testspeed_module_CPPFLAGS) $(CPPFLAGS) $(testspeed_module_CFLAGS) $(CFLAGS) -MT commands/testspeed_module-testspeed.o -MD -MP -MF commands/$(DEPDIR)/testspeed_module-testspeed.Tpo -c -o commands/testspeed_module-testspeed.o `test -f 'commands/testspeed.c' || echo '$(srcdir)/'`commands/testspeed.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/$(DEPDIR)/testspeed_module-testspeed.Tpo commands/$(DEPDIR)/testspeed_module-testspeed.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/testspeed.c' object='commands/testspeed_module-testspeed.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(testspeed_module_CPPFLAGS) $(CPPFLAGS) $(testspeed_module_CFLAGS) $(CFLAGS) -c -o commands/testspeed_module-testspeed.o `test -f 'commands/testspeed.c' || echo '$(srcdir)/'`commands/testspeed.c - -commands/testspeed_module-testspeed.obj: commands/testspeed.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(testspeed_module_CPPFLAGS) $(CPPFLAGS) $(testspeed_module_CFLAGS) $(CFLAGS) -MT commands/testspeed_module-testspeed.obj -MD -MP -MF commands/$(DEPDIR)/testspeed_module-testspeed.Tpo -c -o commands/testspeed_module-testspeed.obj `if test -f 'commands/testspeed.c'; then $(CYGPATH_W) 'commands/testspeed.c'; else $(CYGPATH_W) '$(srcdir)/commands/testspeed.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/$(DEPDIR)/testspeed_module-testspeed.Tpo commands/$(DEPDIR)/testspeed_module-testspeed.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/testspeed.c' object='commands/testspeed_module-testspeed.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(testspeed_module_CPPFLAGS) $(CPPFLAGS) $(testspeed_module_CFLAGS) $(CFLAGS) -c -o commands/testspeed_module-testspeed.obj `if test -f 'commands/testspeed.c'; then $(CYGPATH_W) 'commands/testspeed.c'; else $(CYGPATH_W) '$(srcdir)/commands/testspeed.c'; fi` - -net/tftp_module-tftp.o: net/tftp.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(tftp_module_CPPFLAGS) $(CPPFLAGS) $(tftp_module_CFLAGS) $(CFLAGS) -MT net/tftp_module-tftp.o -MD -MP -MF net/$(DEPDIR)/tftp_module-tftp.Tpo -c -o net/tftp_module-tftp.o `test -f 'net/tftp.c' || echo '$(srcdir)/'`net/tftp.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) net/$(DEPDIR)/tftp_module-tftp.Tpo net/$(DEPDIR)/tftp_module-tftp.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='net/tftp.c' object='net/tftp_module-tftp.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(tftp_module_CPPFLAGS) $(CPPFLAGS) $(tftp_module_CFLAGS) $(CFLAGS) -c -o net/tftp_module-tftp.o `test -f 'net/tftp.c' || echo '$(srcdir)/'`net/tftp.c - -net/tftp_module-tftp.obj: net/tftp.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(tftp_module_CPPFLAGS) $(CPPFLAGS) $(tftp_module_CFLAGS) $(CFLAGS) -MT net/tftp_module-tftp.obj -MD -MP -MF net/$(DEPDIR)/tftp_module-tftp.Tpo -c -o net/tftp_module-tftp.obj `if test -f 'net/tftp.c'; then $(CYGPATH_W) 'net/tftp.c'; else $(CYGPATH_W) '$(srcdir)/net/tftp.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) net/$(DEPDIR)/tftp_module-tftp.Tpo net/$(DEPDIR)/tftp_module-tftp.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='net/tftp.c' object='net/tftp_module-tftp.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(tftp_module_CPPFLAGS) $(CPPFLAGS) $(tftp_module_CFLAGS) $(CFLAGS) -c -o net/tftp_module-tftp.obj `if test -f 'net/tftp.c'; then $(CYGPATH_W) 'net/tftp.c'; else $(CYGPATH_W) '$(srcdir)/net/tftp.c'; fi` - -video/readers/tga_module-tga.o: video/readers/tga.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(tga_module_CPPFLAGS) $(CPPFLAGS) $(tga_module_CFLAGS) $(CFLAGS) -MT video/readers/tga_module-tga.o -MD -MP -MF video/readers/$(DEPDIR)/tga_module-tga.Tpo -c -o video/readers/tga_module-tga.o `test -f 'video/readers/tga.c' || echo '$(srcdir)/'`video/readers/tga.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) video/readers/$(DEPDIR)/tga_module-tga.Tpo video/readers/$(DEPDIR)/tga_module-tga.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='video/readers/tga.c' object='video/readers/tga_module-tga.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(tga_module_CPPFLAGS) $(CPPFLAGS) $(tga_module_CFLAGS) $(CFLAGS) -c -o video/readers/tga_module-tga.o `test -f 'video/readers/tga.c' || echo '$(srcdir)/'`video/readers/tga.c - -video/readers/tga_module-tga.obj: video/readers/tga.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(tga_module_CPPFLAGS) $(CPPFLAGS) $(tga_module_CFLAGS) $(CFLAGS) -MT video/readers/tga_module-tga.obj -MD -MP -MF video/readers/$(DEPDIR)/tga_module-tga.Tpo -c -o video/readers/tga_module-tga.obj `if test -f 'video/readers/tga.c'; then $(CYGPATH_W) 'video/readers/tga.c'; else $(CYGPATH_W) '$(srcdir)/video/readers/tga.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) video/readers/$(DEPDIR)/tga_module-tga.Tpo video/readers/$(DEPDIR)/tga_module-tga.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='video/readers/tga.c' object='video/readers/tga_module-tga.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(tga_module_CPPFLAGS) $(CPPFLAGS) $(tga_module_CFLAGS) $(CFLAGS) -c -o video/readers/tga_module-tga.obj `if test -f 'video/readers/tga.c'; then $(CYGPATH_W) 'video/readers/tga.c'; else $(CYGPATH_W) '$(srcdir)/video/readers/tga.c'; fi` - -commands/time_module-time.o: commands/time.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(time_module_CPPFLAGS) $(CPPFLAGS) $(time_module_CFLAGS) $(CFLAGS) -MT commands/time_module-time.o -MD -MP -MF commands/$(DEPDIR)/time_module-time.Tpo -c -o commands/time_module-time.o `test -f 'commands/time.c' || echo '$(srcdir)/'`commands/time.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/$(DEPDIR)/time_module-time.Tpo commands/$(DEPDIR)/time_module-time.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/time.c' object='commands/time_module-time.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(time_module_CPPFLAGS) $(CPPFLAGS) $(time_module_CFLAGS) $(CFLAGS) -c -o commands/time_module-time.o `test -f 'commands/time.c' || echo '$(srcdir)/'`commands/time.c - -commands/time_module-time.obj: commands/time.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(time_module_CPPFLAGS) $(CPPFLAGS) $(time_module_CFLAGS) $(CFLAGS) -MT commands/time_module-time.obj -MD -MP -MF commands/$(DEPDIR)/time_module-time.Tpo -c -o commands/time_module-time.obj `if test -f 'commands/time.c'; then $(CYGPATH_W) 'commands/time.c'; else $(CYGPATH_W) '$(srcdir)/commands/time.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/$(DEPDIR)/time_module-time.Tpo commands/$(DEPDIR)/time_module-time.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/time.c' object='commands/time_module-time.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(time_module_CPPFLAGS) $(CPPFLAGS) $(time_module_CFLAGS) $(CFLAGS) -c -o commands/time_module-time.obj `if test -f 'commands/time.c'; then $(CYGPATH_W) 'commands/time.c'; else $(CYGPATH_W) '$(srcdir)/commands/time.c'; fi` - -commands/efi/tpm_module-tpm.o: commands/efi/tpm.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(tpm_module_CPPFLAGS) $(CPPFLAGS) $(tpm_module_CFLAGS) $(CFLAGS) -MT commands/efi/tpm_module-tpm.o -MD -MP -MF commands/efi/$(DEPDIR)/tpm_module-tpm.Tpo -c -o commands/efi/tpm_module-tpm.o `test -f 'commands/efi/tpm.c' || echo '$(srcdir)/'`commands/efi/tpm.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/efi/$(DEPDIR)/tpm_module-tpm.Tpo commands/efi/$(DEPDIR)/tpm_module-tpm.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/efi/tpm.c' object='commands/efi/tpm_module-tpm.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(tpm_module_CPPFLAGS) $(CPPFLAGS) $(tpm_module_CFLAGS) $(CFLAGS) -c -o commands/efi/tpm_module-tpm.o `test -f 'commands/efi/tpm.c' || echo '$(srcdir)/'`commands/efi/tpm.c - -commands/efi/tpm_module-tpm.obj: commands/efi/tpm.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(tpm_module_CPPFLAGS) $(CPPFLAGS) $(tpm_module_CFLAGS) $(CFLAGS) -MT commands/efi/tpm_module-tpm.obj -MD -MP -MF commands/efi/$(DEPDIR)/tpm_module-tpm.Tpo -c -o commands/efi/tpm_module-tpm.obj `if test -f 'commands/efi/tpm.c'; then $(CYGPATH_W) 'commands/efi/tpm.c'; else $(CYGPATH_W) '$(srcdir)/commands/efi/tpm.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/efi/$(DEPDIR)/tpm_module-tpm.Tpo commands/efi/$(DEPDIR)/tpm_module-tpm.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/efi/tpm.c' object='commands/efi/tpm_module-tpm.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(tpm_module_CPPFLAGS) $(CPPFLAGS) $(tpm_module_CFLAGS) $(CFLAGS) -c -o commands/efi/tpm_module-tpm.obj `if test -f 'commands/efi/tpm.c'; then $(CYGPATH_W) 'commands/efi/tpm.c'; else $(CYGPATH_W) '$(srcdir)/commands/efi/tpm.c'; fi` - -commands/tpm_module-tpm.o: commands/tpm.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(tpm_module_CPPFLAGS) $(CPPFLAGS) $(tpm_module_CFLAGS) $(CFLAGS) -MT commands/tpm_module-tpm.o -MD -MP -MF commands/$(DEPDIR)/tpm_module-tpm.Tpo -c -o commands/tpm_module-tpm.o `test -f 'commands/tpm.c' || echo '$(srcdir)/'`commands/tpm.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/$(DEPDIR)/tpm_module-tpm.Tpo commands/$(DEPDIR)/tpm_module-tpm.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/tpm.c' object='commands/tpm_module-tpm.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(tpm_module_CPPFLAGS) $(CPPFLAGS) $(tpm_module_CFLAGS) $(CFLAGS) -c -o commands/tpm_module-tpm.o `test -f 'commands/tpm.c' || echo '$(srcdir)/'`commands/tpm.c - -commands/tpm_module-tpm.obj: commands/tpm.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(tpm_module_CPPFLAGS) $(CPPFLAGS) $(tpm_module_CFLAGS) $(CFLAGS) -MT commands/tpm_module-tpm.obj -MD -MP -MF commands/$(DEPDIR)/tpm_module-tpm.Tpo -c -o commands/tpm_module-tpm.obj `if test -f 'commands/tpm.c'; then $(CYGPATH_W) 'commands/tpm.c'; else $(CYGPATH_W) '$(srcdir)/commands/tpm.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/$(DEPDIR)/tpm_module-tpm.Tpo commands/$(DEPDIR)/tpm_module-tpm.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/tpm.c' object='commands/tpm_module-tpm.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(tpm_module_CPPFLAGS) $(CPPFLAGS) $(tpm_module_CFLAGS) $(CFLAGS) -c -o commands/tpm_module-tpm.obj `if test -f 'commands/tpm.c'; then $(CYGPATH_W) 'commands/tpm.c'; else $(CYGPATH_W) '$(srcdir)/commands/tpm.c'; fi` - -commands/tr_module-tr.o: commands/tr.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(tr_module_CPPFLAGS) $(CPPFLAGS) $(tr_module_CFLAGS) $(CFLAGS) -MT commands/tr_module-tr.o -MD -MP -MF commands/$(DEPDIR)/tr_module-tr.Tpo -c -o commands/tr_module-tr.o `test -f 'commands/tr.c' || echo '$(srcdir)/'`commands/tr.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/$(DEPDIR)/tr_module-tr.Tpo commands/$(DEPDIR)/tr_module-tr.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/tr.c' object='commands/tr_module-tr.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(tr_module_CPPFLAGS) $(CPPFLAGS) $(tr_module_CFLAGS) $(CFLAGS) -c -o commands/tr_module-tr.o `test -f 'commands/tr.c' || echo '$(srcdir)/'`commands/tr.c - -commands/tr_module-tr.obj: commands/tr.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(tr_module_CPPFLAGS) $(CPPFLAGS) $(tr_module_CFLAGS) $(CFLAGS) -MT commands/tr_module-tr.obj -MD -MP -MF commands/$(DEPDIR)/tr_module-tr.Tpo -c -o commands/tr_module-tr.obj `if test -f 'commands/tr.c'; then $(CYGPATH_W) 'commands/tr.c'; else $(CYGPATH_W) '$(srcdir)/commands/tr.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/$(DEPDIR)/tr_module-tr.Tpo commands/$(DEPDIR)/tr_module-tr.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/tr.c' object='commands/tr_module-tr.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(tr_module_CPPFLAGS) $(CPPFLAGS) $(tr_module_CFLAGS) $(CFLAGS) -c -o commands/tr_module-tr.obj `if test -f 'commands/tr.c'; then $(CYGPATH_W) 'commands/tr.c'; else $(CYGPATH_W) '$(srcdir)/commands/tr.c'; fi` - -trig_module-trigtables.o: trigtables.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(trig_module_CPPFLAGS) $(CPPFLAGS) $(trig_module_CFLAGS) $(CFLAGS) -MT trig_module-trigtables.o -MD -MP -MF $(DEPDIR)/trig_module-trigtables.Tpo -c -o trig_module-trigtables.o `test -f 'trigtables.c' || echo '$(srcdir)/'`trigtables.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/trig_module-trigtables.Tpo $(DEPDIR)/trig_module-trigtables.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='trigtables.c' object='trig_module-trigtables.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(trig_module_CPPFLAGS) $(CPPFLAGS) $(trig_module_CFLAGS) $(CFLAGS) -c -o trig_module-trigtables.o `test -f 'trigtables.c' || echo '$(srcdir)/'`trigtables.c - -trig_module-trigtables.obj: trigtables.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(trig_module_CPPFLAGS) $(CPPFLAGS) $(trig_module_CFLAGS) $(CFLAGS) -MT trig_module-trigtables.obj -MD -MP -MF $(DEPDIR)/trig_module-trigtables.Tpo -c -o trig_module-trigtables.obj `if test -f 'trigtables.c'; then $(CYGPATH_W) 'trigtables.c'; else $(CYGPATH_W) '$(srcdir)/trigtables.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/trig_module-trigtables.Tpo $(DEPDIR)/trig_module-trigtables.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='trigtables.c' object='trig_module-trigtables.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(trig_module_CPPFLAGS) $(CPPFLAGS) $(trig_module_CFLAGS) $(CFLAGS) -c -o trig_module-trigtables.obj `if test -f 'trigtables.c'; then $(CYGPATH_W) 'trigtables.c'; else $(CYGPATH_W) '$(srcdir)/trigtables.c'; fi` - -commands/true_module-true.o: commands/true.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(true_module_CPPFLAGS) $(CPPFLAGS) $(true_module_CFLAGS) $(CFLAGS) -MT commands/true_module-true.o -MD -MP -MF commands/$(DEPDIR)/true_module-true.Tpo -c -o commands/true_module-true.o `test -f 'commands/true.c' || echo '$(srcdir)/'`commands/true.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/$(DEPDIR)/true_module-true.Tpo commands/$(DEPDIR)/true_module-true.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/true.c' object='commands/true_module-true.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(true_module_CPPFLAGS) $(CPPFLAGS) $(true_module_CFLAGS) $(CFLAGS) -c -o commands/true_module-true.o `test -f 'commands/true.c' || echo '$(srcdir)/'`commands/true.c - -commands/true_module-true.obj: commands/true.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(true_module_CPPFLAGS) $(CPPFLAGS) $(true_module_CFLAGS) $(CFLAGS) -MT commands/true_module-true.obj -MD -MP -MF commands/$(DEPDIR)/true_module-true.Tpo -c -o commands/true_module-true.obj `if test -f 'commands/true.c'; then $(CYGPATH_W) 'commands/true.c'; else $(CYGPATH_W) '$(srcdir)/commands/true.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/$(DEPDIR)/true_module-true.Tpo commands/$(DEPDIR)/true_module-true.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/true.c' object='commands/true_module-true.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(true_module_CPPFLAGS) $(CPPFLAGS) $(true_module_CFLAGS) $(CFLAGS) -c -o commands/true_module-true.obj `if test -f 'commands/true.c'; then $(CYGPATH_W) 'commands/true.c'; else $(CYGPATH_W) '$(srcdir)/commands/true.c'; fi` - -loader/i386/pc/truecrypt_module-truecrypt.o: loader/i386/pc/truecrypt.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(truecrypt_module_CPPFLAGS) $(CPPFLAGS) $(truecrypt_module_CFLAGS) $(CFLAGS) -MT loader/i386/pc/truecrypt_module-truecrypt.o -MD -MP -MF loader/i386/pc/$(DEPDIR)/truecrypt_module-truecrypt.Tpo -c -o loader/i386/pc/truecrypt_module-truecrypt.o `test -f 'loader/i386/pc/truecrypt.c' || echo '$(srcdir)/'`loader/i386/pc/truecrypt.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) loader/i386/pc/$(DEPDIR)/truecrypt_module-truecrypt.Tpo loader/i386/pc/$(DEPDIR)/truecrypt_module-truecrypt.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='loader/i386/pc/truecrypt.c' object='loader/i386/pc/truecrypt_module-truecrypt.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(truecrypt_module_CPPFLAGS) $(CPPFLAGS) $(truecrypt_module_CFLAGS) $(CFLAGS) -c -o loader/i386/pc/truecrypt_module-truecrypt.o `test -f 'loader/i386/pc/truecrypt.c' || echo '$(srcdir)/'`loader/i386/pc/truecrypt.c - -loader/i386/pc/truecrypt_module-truecrypt.obj: loader/i386/pc/truecrypt.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(truecrypt_module_CPPFLAGS) $(CPPFLAGS) $(truecrypt_module_CFLAGS) $(CFLAGS) -MT loader/i386/pc/truecrypt_module-truecrypt.obj -MD -MP -MF loader/i386/pc/$(DEPDIR)/truecrypt_module-truecrypt.Tpo -c -o loader/i386/pc/truecrypt_module-truecrypt.obj `if test -f 'loader/i386/pc/truecrypt.c'; then $(CYGPATH_W) 'loader/i386/pc/truecrypt.c'; else $(CYGPATH_W) '$(srcdir)/loader/i386/pc/truecrypt.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) loader/i386/pc/$(DEPDIR)/truecrypt_module-truecrypt.Tpo loader/i386/pc/$(DEPDIR)/truecrypt_module-truecrypt.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='loader/i386/pc/truecrypt.c' object='loader/i386/pc/truecrypt_module-truecrypt.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(truecrypt_module_CPPFLAGS) $(CPPFLAGS) $(truecrypt_module_CFLAGS) $(CFLAGS) -c -o loader/i386/pc/truecrypt_module-truecrypt.obj `if test -f 'loader/i386/pc/truecrypt.c'; then $(CYGPATH_W) 'loader/i386/pc/truecrypt.c'; else $(CYGPATH_W) '$(srcdir)/loader/i386/pc/truecrypt.c'; fi` - -net/drivers/uboot/ubootnet_module-ubootnet.o: net/drivers/uboot/ubootnet.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ubootnet_module_CPPFLAGS) $(CPPFLAGS) $(ubootnet_module_CFLAGS) $(CFLAGS) -MT net/drivers/uboot/ubootnet_module-ubootnet.o -MD -MP -MF net/drivers/uboot/$(DEPDIR)/ubootnet_module-ubootnet.Tpo -c -o net/drivers/uboot/ubootnet_module-ubootnet.o `test -f 'net/drivers/uboot/ubootnet.c' || echo '$(srcdir)/'`net/drivers/uboot/ubootnet.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) net/drivers/uboot/$(DEPDIR)/ubootnet_module-ubootnet.Tpo net/drivers/uboot/$(DEPDIR)/ubootnet_module-ubootnet.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='net/drivers/uboot/ubootnet.c' object='net/drivers/uboot/ubootnet_module-ubootnet.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ubootnet_module_CPPFLAGS) $(CPPFLAGS) $(ubootnet_module_CFLAGS) $(CFLAGS) -c -o net/drivers/uboot/ubootnet_module-ubootnet.o `test -f 'net/drivers/uboot/ubootnet.c' || echo '$(srcdir)/'`net/drivers/uboot/ubootnet.c - -net/drivers/uboot/ubootnet_module-ubootnet.obj: net/drivers/uboot/ubootnet.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ubootnet_module_CPPFLAGS) $(CPPFLAGS) $(ubootnet_module_CFLAGS) $(CFLAGS) -MT net/drivers/uboot/ubootnet_module-ubootnet.obj -MD -MP -MF net/drivers/uboot/$(DEPDIR)/ubootnet_module-ubootnet.Tpo -c -o net/drivers/uboot/ubootnet_module-ubootnet.obj `if test -f 'net/drivers/uboot/ubootnet.c'; then $(CYGPATH_W) 'net/drivers/uboot/ubootnet.c'; else $(CYGPATH_W) '$(srcdir)/net/drivers/uboot/ubootnet.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) net/drivers/uboot/$(DEPDIR)/ubootnet_module-ubootnet.Tpo net/drivers/uboot/$(DEPDIR)/ubootnet_module-ubootnet.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='net/drivers/uboot/ubootnet.c' object='net/drivers/uboot/ubootnet_module-ubootnet.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ubootnet_module_CPPFLAGS) $(CPPFLAGS) $(ubootnet_module_CFLAGS) $(CFLAGS) -c -o net/drivers/uboot/ubootnet_module-ubootnet.obj `if test -f 'net/drivers/uboot/ubootnet.c'; then $(CYGPATH_W) 'net/drivers/uboot/ubootnet.c'; else $(CYGPATH_W) '$(srcdir)/net/drivers/uboot/ubootnet.c'; fi` - -fs/udf_module-udf.o: fs/udf.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(udf_module_CPPFLAGS) $(CPPFLAGS) $(udf_module_CFLAGS) $(CFLAGS) -MT fs/udf_module-udf.o -MD -MP -MF fs/$(DEPDIR)/udf_module-udf.Tpo -c -o fs/udf_module-udf.o `test -f 'fs/udf.c' || echo '$(srcdir)/'`fs/udf.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) fs/$(DEPDIR)/udf_module-udf.Tpo fs/$(DEPDIR)/udf_module-udf.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='fs/udf.c' object='fs/udf_module-udf.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(udf_module_CPPFLAGS) $(CPPFLAGS) $(udf_module_CFLAGS) $(CFLAGS) -c -o fs/udf_module-udf.o `test -f 'fs/udf.c' || echo '$(srcdir)/'`fs/udf.c - -fs/udf_module-udf.obj: fs/udf.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(udf_module_CPPFLAGS) $(CPPFLAGS) $(udf_module_CFLAGS) $(CFLAGS) -MT fs/udf_module-udf.obj -MD -MP -MF fs/$(DEPDIR)/udf_module-udf.Tpo -c -o fs/udf_module-udf.obj `if test -f 'fs/udf.c'; then $(CYGPATH_W) 'fs/udf.c'; else $(CYGPATH_W) '$(srcdir)/fs/udf.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) fs/$(DEPDIR)/udf_module-udf.Tpo fs/$(DEPDIR)/udf_module-udf.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='fs/udf.c' object='fs/udf_module-udf.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(udf_module_CPPFLAGS) $(CPPFLAGS) $(udf_module_CFLAGS) $(CFLAGS) -c -o fs/udf_module-udf.obj `if test -f 'fs/udf.c'; then $(CYGPATH_W) 'fs/udf.c'; else $(CYGPATH_W) '$(srcdir)/fs/udf.c'; fi` - -fs/ufs1_module-ufs.o: fs/ufs.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ufs1_module_CPPFLAGS) $(CPPFLAGS) $(ufs1_module_CFLAGS) $(CFLAGS) -MT fs/ufs1_module-ufs.o -MD -MP -MF fs/$(DEPDIR)/ufs1_module-ufs.Tpo -c -o fs/ufs1_module-ufs.o `test -f 'fs/ufs.c' || echo '$(srcdir)/'`fs/ufs.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) fs/$(DEPDIR)/ufs1_module-ufs.Tpo fs/$(DEPDIR)/ufs1_module-ufs.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='fs/ufs.c' object='fs/ufs1_module-ufs.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ufs1_module_CPPFLAGS) $(CPPFLAGS) $(ufs1_module_CFLAGS) $(CFLAGS) -c -o fs/ufs1_module-ufs.o `test -f 'fs/ufs.c' || echo '$(srcdir)/'`fs/ufs.c - -fs/ufs1_module-ufs.obj: fs/ufs.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ufs1_module_CPPFLAGS) $(CPPFLAGS) $(ufs1_module_CFLAGS) $(CFLAGS) -MT fs/ufs1_module-ufs.obj -MD -MP -MF fs/$(DEPDIR)/ufs1_module-ufs.Tpo -c -o fs/ufs1_module-ufs.obj `if test -f 'fs/ufs.c'; then $(CYGPATH_W) 'fs/ufs.c'; else $(CYGPATH_W) '$(srcdir)/fs/ufs.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) fs/$(DEPDIR)/ufs1_module-ufs.Tpo fs/$(DEPDIR)/ufs1_module-ufs.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='fs/ufs.c' object='fs/ufs1_module-ufs.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ufs1_module_CPPFLAGS) $(CPPFLAGS) $(ufs1_module_CFLAGS) $(CFLAGS) -c -o fs/ufs1_module-ufs.obj `if test -f 'fs/ufs.c'; then $(CYGPATH_W) 'fs/ufs.c'; else $(CYGPATH_W) '$(srcdir)/fs/ufs.c'; fi` - -fs/ufs1_be_module-ufs_be.o: fs/ufs_be.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ufs1_be_module_CPPFLAGS) $(CPPFLAGS) $(ufs1_be_module_CFLAGS) $(CFLAGS) -MT fs/ufs1_be_module-ufs_be.o -MD -MP -MF fs/$(DEPDIR)/ufs1_be_module-ufs_be.Tpo -c -o fs/ufs1_be_module-ufs_be.o `test -f 'fs/ufs_be.c' || echo '$(srcdir)/'`fs/ufs_be.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) fs/$(DEPDIR)/ufs1_be_module-ufs_be.Tpo fs/$(DEPDIR)/ufs1_be_module-ufs_be.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='fs/ufs_be.c' object='fs/ufs1_be_module-ufs_be.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ufs1_be_module_CPPFLAGS) $(CPPFLAGS) $(ufs1_be_module_CFLAGS) $(CFLAGS) -c -o fs/ufs1_be_module-ufs_be.o `test -f 'fs/ufs_be.c' || echo '$(srcdir)/'`fs/ufs_be.c - -fs/ufs1_be_module-ufs_be.obj: fs/ufs_be.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ufs1_be_module_CPPFLAGS) $(CPPFLAGS) $(ufs1_be_module_CFLAGS) $(CFLAGS) -MT fs/ufs1_be_module-ufs_be.obj -MD -MP -MF fs/$(DEPDIR)/ufs1_be_module-ufs_be.Tpo -c -o fs/ufs1_be_module-ufs_be.obj `if test -f 'fs/ufs_be.c'; then $(CYGPATH_W) 'fs/ufs_be.c'; else $(CYGPATH_W) '$(srcdir)/fs/ufs_be.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) fs/$(DEPDIR)/ufs1_be_module-ufs_be.Tpo fs/$(DEPDIR)/ufs1_be_module-ufs_be.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='fs/ufs_be.c' object='fs/ufs1_be_module-ufs_be.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ufs1_be_module_CPPFLAGS) $(CPPFLAGS) $(ufs1_be_module_CFLAGS) $(CFLAGS) -c -o fs/ufs1_be_module-ufs_be.obj `if test -f 'fs/ufs_be.c'; then $(CYGPATH_W) 'fs/ufs_be.c'; else $(CYGPATH_W) '$(srcdir)/fs/ufs_be.c'; fi` - -fs/ufs2_module-ufs2.o: fs/ufs2.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ufs2_module_CPPFLAGS) $(CPPFLAGS) $(ufs2_module_CFLAGS) $(CFLAGS) -MT fs/ufs2_module-ufs2.o -MD -MP -MF fs/$(DEPDIR)/ufs2_module-ufs2.Tpo -c -o fs/ufs2_module-ufs2.o `test -f 'fs/ufs2.c' || echo '$(srcdir)/'`fs/ufs2.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) fs/$(DEPDIR)/ufs2_module-ufs2.Tpo fs/$(DEPDIR)/ufs2_module-ufs2.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='fs/ufs2.c' object='fs/ufs2_module-ufs2.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ufs2_module_CPPFLAGS) $(CPPFLAGS) $(ufs2_module_CFLAGS) $(CFLAGS) -c -o fs/ufs2_module-ufs2.o `test -f 'fs/ufs2.c' || echo '$(srcdir)/'`fs/ufs2.c - -fs/ufs2_module-ufs2.obj: fs/ufs2.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ufs2_module_CPPFLAGS) $(CPPFLAGS) $(ufs2_module_CFLAGS) $(CFLAGS) -MT fs/ufs2_module-ufs2.obj -MD -MP -MF fs/$(DEPDIR)/ufs2_module-ufs2.Tpo -c -o fs/ufs2_module-ufs2.obj `if test -f 'fs/ufs2.c'; then $(CYGPATH_W) 'fs/ufs2.c'; else $(CYGPATH_W) '$(srcdir)/fs/ufs2.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) fs/$(DEPDIR)/ufs2_module-ufs2.Tpo fs/$(DEPDIR)/ufs2_module-ufs2.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='fs/ufs2.c' object='fs/ufs2_module-ufs2.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ufs2_module_CPPFLAGS) $(CPPFLAGS) $(ufs2_module_CFLAGS) $(CFLAGS) -c -o fs/ufs2_module-ufs2.obj `if test -f 'fs/ufs2.c'; then $(CYGPATH_W) 'fs/ufs2.c'; else $(CYGPATH_W) '$(srcdir)/fs/ufs2.c'; fi` - -bus/usb/uhci_module-uhci.o: bus/usb/uhci.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(uhci_module_CPPFLAGS) $(CPPFLAGS) $(uhci_module_CFLAGS) $(CFLAGS) -MT bus/usb/uhci_module-uhci.o -MD -MP -MF bus/usb/$(DEPDIR)/uhci_module-uhci.Tpo -c -o bus/usb/uhci_module-uhci.o `test -f 'bus/usb/uhci.c' || echo '$(srcdir)/'`bus/usb/uhci.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) bus/usb/$(DEPDIR)/uhci_module-uhci.Tpo bus/usb/$(DEPDIR)/uhci_module-uhci.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='bus/usb/uhci.c' object='bus/usb/uhci_module-uhci.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(uhci_module_CPPFLAGS) $(CPPFLAGS) $(uhci_module_CFLAGS) $(CFLAGS) -c -o bus/usb/uhci_module-uhci.o `test -f 'bus/usb/uhci.c' || echo '$(srcdir)/'`bus/usb/uhci.c - -bus/usb/uhci_module-uhci.obj: bus/usb/uhci.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(uhci_module_CPPFLAGS) $(CPPFLAGS) $(uhci_module_CFLAGS) $(CFLAGS) -MT bus/usb/uhci_module-uhci.obj -MD -MP -MF bus/usb/$(DEPDIR)/uhci_module-uhci.Tpo -c -o bus/usb/uhci_module-uhci.obj `if test -f 'bus/usb/uhci.c'; then $(CYGPATH_W) 'bus/usb/uhci.c'; else $(CYGPATH_W) '$(srcdir)/bus/usb/uhci.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) bus/usb/$(DEPDIR)/uhci_module-uhci.Tpo bus/usb/$(DEPDIR)/uhci_module-uhci.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='bus/usb/uhci.c' object='bus/usb/uhci_module-uhci.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(uhci_module_CPPFLAGS) $(CPPFLAGS) $(uhci_module_CFLAGS) $(CFLAGS) -c -o bus/usb/uhci_module-uhci.obj `if test -f 'bus/usb/uhci.c'; then $(CYGPATH_W) 'bus/usb/uhci.c'; else $(CYGPATH_W) '$(srcdir)/bus/usb/uhci.c'; fi` - -bus/usb/usb_module-usb.o: bus/usb/usb.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usb_module_CPPFLAGS) $(CPPFLAGS) $(usb_module_CFLAGS) $(CFLAGS) -MT bus/usb/usb_module-usb.o -MD -MP -MF bus/usb/$(DEPDIR)/usb_module-usb.Tpo -c -o bus/usb/usb_module-usb.o `test -f 'bus/usb/usb.c' || echo '$(srcdir)/'`bus/usb/usb.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) bus/usb/$(DEPDIR)/usb_module-usb.Tpo bus/usb/$(DEPDIR)/usb_module-usb.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='bus/usb/usb.c' object='bus/usb/usb_module-usb.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usb_module_CPPFLAGS) $(CPPFLAGS) $(usb_module_CFLAGS) $(CFLAGS) -c -o bus/usb/usb_module-usb.o `test -f 'bus/usb/usb.c' || echo '$(srcdir)/'`bus/usb/usb.c - -bus/usb/usb_module-usb.obj: bus/usb/usb.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usb_module_CPPFLAGS) $(CPPFLAGS) $(usb_module_CFLAGS) $(CFLAGS) -MT bus/usb/usb_module-usb.obj -MD -MP -MF bus/usb/$(DEPDIR)/usb_module-usb.Tpo -c -o bus/usb/usb_module-usb.obj `if test -f 'bus/usb/usb.c'; then $(CYGPATH_W) 'bus/usb/usb.c'; else $(CYGPATH_W) '$(srcdir)/bus/usb/usb.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) bus/usb/$(DEPDIR)/usb_module-usb.Tpo bus/usb/$(DEPDIR)/usb_module-usb.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='bus/usb/usb.c' object='bus/usb/usb_module-usb.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usb_module_CPPFLAGS) $(CPPFLAGS) $(usb_module_CFLAGS) $(CFLAGS) -c -o bus/usb/usb_module-usb.obj `if test -f 'bus/usb/usb.c'; then $(CYGPATH_W) 'bus/usb/usb.c'; else $(CYGPATH_W) '$(srcdir)/bus/usb/usb.c'; fi` - -bus/usb/usb_module-usbtrans.o: bus/usb/usbtrans.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usb_module_CPPFLAGS) $(CPPFLAGS) $(usb_module_CFLAGS) $(CFLAGS) -MT bus/usb/usb_module-usbtrans.o -MD -MP -MF bus/usb/$(DEPDIR)/usb_module-usbtrans.Tpo -c -o bus/usb/usb_module-usbtrans.o `test -f 'bus/usb/usbtrans.c' || echo '$(srcdir)/'`bus/usb/usbtrans.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) bus/usb/$(DEPDIR)/usb_module-usbtrans.Tpo bus/usb/$(DEPDIR)/usb_module-usbtrans.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='bus/usb/usbtrans.c' object='bus/usb/usb_module-usbtrans.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usb_module_CPPFLAGS) $(CPPFLAGS) $(usb_module_CFLAGS) $(CFLAGS) -c -o bus/usb/usb_module-usbtrans.o `test -f 'bus/usb/usbtrans.c' || echo '$(srcdir)/'`bus/usb/usbtrans.c - -bus/usb/usb_module-usbtrans.obj: bus/usb/usbtrans.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usb_module_CPPFLAGS) $(CPPFLAGS) $(usb_module_CFLAGS) $(CFLAGS) -MT bus/usb/usb_module-usbtrans.obj -MD -MP -MF bus/usb/$(DEPDIR)/usb_module-usbtrans.Tpo -c -o bus/usb/usb_module-usbtrans.obj `if test -f 'bus/usb/usbtrans.c'; then $(CYGPATH_W) 'bus/usb/usbtrans.c'; else $(CYGPATH_W) '$(srcdir)/bus/usb/usbtrans.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) bus/usb/$(DEPDIR)/usb_module-usbtrans.Tpo bus/usb/$(DEPDIR)/usb_module-usbtrans.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='bus/usb/usbtrans.c' object='bus/usb/usb_module-usbtrans.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usb_module_CPPFLAGS) $(CPPFLAGS) $(usb_module_CFLAGS) $(CFLAGS) -c -o bus/usb/usb_module-usbtrans.obj `if test -f 'bus/usb/usbtrans.c'; then $(CYGPATH_W) 'bus/usb/usbtrans.c'; else $(CYGPATH_W) '$(srcdir)/bus/usb/usbtrans.c'; fi` - -bus/usb/usb_module-usbhub.o: bus/usb/usbhub.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usb_module_CPPFLAGS) $(CPPFLAGS) $(usb_module_CFLAGS) $(CFLAGS) -MT bus/usb/usb_module-usbhub.o -MD -MP -MF bus/usb/$(DEPDIR)/usb_module-usbhub.Tpo -c -o bus/usb/usb_module-usbhub.o `test -f 'bus/usb/usbhub.c' || echo '$(srcdir)/'`bus/usb/usbhub.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) bus/usb/$(DEPDIR)/usb_module-usbhub.Tpo bus/usb/$(DEPDIR)/usb_module-usbhub.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='bus/usb/usbhub.c' object='bus/usb/usb_module-usbhub.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usb_module_CPPFLAGS) $(CPPFLAGS) $(usb_module_CFLAGS) $(CFLAGS) -c -o bus/usb/usb_module-usbhub.o `test -f 'bus/usb/usbhub.c' || echo '$(srcdir)/'`bus/usb/usbhub.c - -bus/usb/usb_module-usbhub.obj: bus/usb/usbhub.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usb_module_CPPFLAGS) $(CPPFLAGS) $(usb_module_CFLAGS) $(CFLAGS) -MT bus/usb/usb_module-usbhub.obj -MD -MP -MF bus/usb/$(DEPDIR)/usb_module-usbhub.Tpo -c -o bus/usb/usb_module-usbhub.obj `if test -f 'bus/usb/usbhub.c'; then $(CYGPATH_W) 'bus/usb/usbhub.c'; else $(CYGPATH_W) '$(srcdir)/bus/usb/usbhub.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) bus/usb/$(DEPDIR)/usb_module-usbhub.Tpo bus/usb/$(DEPDIR)/usb_module-usbhub.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='bus/usb/usbhub.c' object='bus/usb/usb_module-usbhub.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usb_module_CPPFLAGS) $(CPPFLAGS) $(usb_module_CFLAGS) $(CFLAGS) -c -o bus/usb/usb_module-usbhub.obj `if test -f 'bus/usb/usbhub.c'; then $(CYGPATH_W) 'bus/usb/usbhub.c'; else $(CYGPATH_W) '$(srcdir)/bus/usb/usbhub.c'; fi` - -term/usb_keyboard_module-usb_keyboard.o: term/usb_keyboard.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usb_keyboard_module_CPPFLAGS) $(CPPFLAGS) $(usb_keyboard_module_CFLAGS) $(CFLAGS) -MT term/usb_keyboard_module-usb_keyboard.o -MD -MP -MF term/$(DEPDIR)/usb_keyboard_module-usb_keyboard.Tpo -c -o term/usb_keyboard_module-usb_keyboard.o `test -f 'term/usb_keyboard.c' || echo '$(srcdir)/'`term/usb_keyboard.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) term/$(DEPDIR)/usb_keyboard_module-usb_keyboard.Tpo term/$(DEPDIR)/usb_keyboard_module-usb_keyboard.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='term/usb_keyboard.c' object='term/usb_keyboard_module-usb_keyboard.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usb_keyboard_module_CPPFLAGS) $(CPPFLAGS) $(usb_keyboard_module_CFLAGS) $(CFLAGS) -c -o term/usb_keyboard_module-usb_keyboard.o `test -f 'term/usb_keyboard.c' || echo '$(srcdir)/'`term/usb_keyboard.c - -term/usb_keyboard_module-usb_keyboard.obj: term/usb_keyboard.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usb_keyboard_module_CPPFLAGS) $(CPPFLAGS) $(usb_keyboard_module_CFLAGS) $(CFLAGS) -MT term/usb_keyboard_module-usb_keyboard.obj -MD -MP -MF term/$(DEPDIR)/usb_keyboard_module-usb_keyboard.Tpo -c -o term/usb_keyboard_module-usb_keyboard.obj `if test -f 'term/usb_keyboard.c'; then $(CYGPATH_W) 'term/usb_keyboard.c'; else $(CYGPATH_W) '$(srcdir)/term/usb_keyboard.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) term/$(DEPDIR)/usb_keyboard_module-usb_keyboard.Tpo term/$(DEPDIR)/usb_keyboard_module-usb_keyboard.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='term/usb_keyboard.c' object='term/usb_keyboard_module-usb_keyboard.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usb_keyboard_module_CPPFLAGS) $(CPPFLAGS) $(usb_keyboard_module_CFLAGS) $(CFLAGS) -c -o term/usb_keyboard_module-usb_keyboard.obj `if test -f 'term/usb_keyboard.c'; then $(CYGPATH_W) 'term/usb_keyboard.c'; else $(CYGPATH_W) '$(srcdir)/term/usb_keyboard.c'; fi` - -disk/usbms_module-usbms.o: disk/usbms.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usbms_module_CPPFLAGS) $(CPPFLAGS) $(usbms_module_CFLAGS) $(CFLAGS) -MT disk/usbms_module-usbms.o -MD -MP -MF disk/$(DEPDIR)/usbms_module-usbms.Tpo -c -o disk/usbms_module-usbms.o `test -f 'disk/usbms.c' || echo '$(srcdir)/'`disk/usbms.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) disk/$(DEPDIR)/usbms_module-usbms.Tpo disk/$(DEPDIR)/usbms_module-usbms.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='disk/usbms.c' object='disk/usbms_module-usbms.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usbms_module_CPPFLAGS) $(CPPFLAGS) $(usbms_module_CFLAGS) $(CFLAGS) -c -o disk/usbms_module-usbms.o `test -f 'disk/usbms.c' || echo '$(srcdir)/'`disk/usbms.c - -disk/usbms_module-usbms.obj: disk/usbms.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usbms_module_CPPFLAGS) $(CPPFLAGS) $(usbms_module_CFLAGS) $(CFLAGS) -MT disk/usbms_module-usbms.obj -MD -MP -MF disk/$(DEPDIR)/usbms_module-usbms.Tpo -c -o disk/usbms_module-usbms.obj `if test -f 'disk/usbms.c'; then $(CYGPATH_W) 'disk/usbms.c'; else $(CYGPATH_W) '$(srcdir)/disk/usbms.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) disk/$(DEPDIR)/usbms_module-usbms.Tpo disk/$(DEPDIR)/usbms_module-usbms.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='disk/usbms.c' object='disk/usbms_module-usbms.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usbms_module_CPPFLAGS) $(CPPFLAGS) $(usbms_module_CFLAGS) $(CFLAGS) -c -o disk/usbms_module-usbms.obj `if test -f 'disk/usbms.c'; then $(CYGPATH_W) 'disk/usbms.c'; else $(CYGPATH_W) '$(srcdir)/disk/usbms.c'; fi` - -bus/usb/serial/usbserial_common_module-common.o: bus/usb/serial/common.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usbserial_common_module_CPPFLAGS) $(CPPFLAGS) $(usbserial_common_module_CFLAGS) $(CFLAGS) -MT bus/usb/serial/usbserial_common_module-common.o -MD -MP -MF bus/usb/serial/$(DEPDIR)/usbserial_common_module-common.Tpo -c -o bus/usb/serial/usbserial_common_module-common.o `test -f 'bus/usb/serial/common.c' || echo '$(srcdir)/'`bus/usb/serial/common.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) bus/usb/serial/$(DEPDIR)/usbserial_common_module-common.Tpo bus/usb/serial/$(DEPDIR)/usbserial_common_module-common.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='bus/usb/serial/common.c' object='bus/usb/serial/usbserial_common_module-common.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usbserial_common_module_CPPFLAGS) $(CPPFLAGS) $(usbserial_common_module_CFLAGS) $(CFLAGS) -c -o bus/usb/serial/usbserial_common_module-common.o `test -f 'bus/usb/serial/common.c' || echo '$(srcdir)/'`bus/usb/serial/common.c - -bus/usb/serial/usbserial_common_module-common.obj: bus/usb/serial/common.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usbserial_common_module_CPPFLAGS) $(CPPFLAGS) $(usbserial_common_module_CFLAGS) $(CFLAGS) -MT bus/usb/serial/usbserial_common_module-common.obj -MD -MP -MF bus/usb/serial/$(DEPDIR)/usbserial_common_module-common.Tpo -c -o bus/usb/serial/usbserial_common_module-common.obj `if test -f 'bus/usb/serial/common.c'; then $(CYGPATH_W) 'bus/usb/serial/common.c'; else $(CYGPATH_W) '$(srcdir)/bus/usb/serial/common.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) bus/usb/serial/$(DEPDIR)/usbserial_common_module-common.Tpo bus/usb/serial/$(DEPDIR)/usbserial_common_module-common.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='bus/usb/serial/common.c' object='bus/usb/serial/usbserial_common_module-common.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usbserial_common_module_CPPFLAGS) $(CPPFLAGS) $(usbserial_common_module_CFLAGS) $(CFLAGS) -c -o bus/usb/serial/usbserial_common_module-common.obj `if test -f 'bus/usb/serial/common.c'; then $(CYGPATH_W) 'bus/usb/serial/common.c'; else $(CYGPATH_W) '$(srcdir)/bus/usb/serial/common.c'; fi` - -bus/usb/serial/usbserial_ftdi_module-ftdi.o: bus/usb/serial/ftdi.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usbserial_ftdi_module_CPPFLAGS) $(CPPFLAGS) $(usbserial_ftdi_module_CFLAGS) $(CFLAGS) -MT bus/usb/serial/usbserial_ftdi_module-ftdi.o -MD -MP -MF bus/usb/serial/$(DEPDIR)/usbserial_ftdi_module-ftdi.Tpo -c -o bus/usb/serial/usbserial_ftdi_module-ftdi.o `test -f 'bus/usb/serial/ftdi.c' || echo '$(srcdir)/'`bus/usb/serial/ftdi.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) bus/usb/serial/$(DEPDIR)/usbserial_ftdi_module-ftdi.Tpo bus/usb/serial/$(DEPDIR)/usbserial_ftdi_module-ftdi.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='bus/usb/serial/ftdi.c' object='bus/usb/serial/usbserial_ftdi_module-ftdi.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usbserial_ftdi_module_CPPFLAGS) $(CPPFLAGS) $(usbserial_ftdi_module_CFLAGS) $(CFLAGS) -c -o bus/usb/serial/usbserial_ftdi_module-ftdi.o `test -f 'bus/usb/serial/ftdi.c' || echo '$(srcdir)/'`bus/usb/serial/ftdi.c - -bus/usb/serial/usbserial_ftdi_module-ftdi.obj: bus/usb/serial/ftdi.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usbserial_ftdi_module_CPPFLAGS) $(CPPFLAGS) $(usbserial_ftdi_module_CFLAGS) $(CFLAGS) -MT bus/usb/serial/usbserial_ftdi_module-ftdi.obj -MD -MP -MF bus/usb/serial/$(DEPDIR)/usbserial_ftdi_module-ftdi.Tpo -c -o bus/usb/serial/usbserial_ftdi_module-ftdi.obj `if test -f 'bus/usb/serial/ftdi.c'; then $(CYGPATH_W) 'bus/usb/serial/ftdi.c'; else $(CYGPATH_W) '$(srcdir)/bus/usb/serial/ftdi.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) bus/usb/serial/$(DEPDIR)/usbserial_ftdi_module-ftdi.Tpo bus/usb/serial/$(DEPDIR)/usbserial_ftdi_module-ftdi.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='bus/usb/serial/ftdi.c' object='bus/usb/serial/usbserial_ftdi_module-ftdi.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usbserial_ftdi_module_CPPFLAGS) $(CPPFLAGS) $(usbserial_ftdi_module_CFLAGS) $(CFLAGS) -c -o bus/usb/serial/usbserial_ftdi_module-ftdi.obj `if test -f 'bus/usb/serial/ftdi.c'; then $(CYGPATH_W) 'bus/usb/serial/ftdi.c'; else $(CYGPATH_W) '$(srcdir)/bus/usb/serial/ftdi.c'; fi` - -bus/usb/serial/usbserial_pl2303_module-pl2303.o: bus/usb/serial/pl2303.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usbserial_pl2303_module_CPPFLAGS) $(CPPFLAGS) $(usbserial_pl2303_module_CFLAGS) $(CFLAGS) -MT bus/usb/serial/usbserial_pl2303_module-pl2303.o -MD -MP -MF bus/usb/serial/$(DEPDIR)/usbserial_pl2303_module-pl2303.Tpo -c -o bus/usb/serial/usbserial_pl2303_module-pl2303.o `test -f 'bus/usb/serial/pl2303.c' || echo '$(srcdir)/'`bus/usb/serial/pl2303.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) bus/usb/serial/$(DEPDIR)/usbserial_pl2303_module-pl2303.Tpo bus/usb/serial/$(DEPDIR)/usbserial_pl2303_module-pl2303.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='bus/usb/serial/pl2303.c' object='bus/usb/serial/usbserial_pl2303_module-pl2303.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usbserial_pl2303_module_CPPFLAGS) $(CPPFLAGS) $(usbserial_pl2303_module_CFLAGS) $(CFLAGS) -c -o bus/usb/serial/usbserial_pl2303_module-pl2303.o `test -f 'bus/usb/serial/pl2303.c' || echo '$(srcdir)/'`bus/usb/serial/pl2303.c - -bus/usb/serial/usbserial_pl2303_module-pl2303.obj: bus/usb/serial/pl2303.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usbserial_pl2303_module_CPPFLAGS) $(CPPFLAGS) $(usbserial_pl2303_module_CFLAGS) $(CFLAGS) -MT bus/usb/serial/usbserial_pl2303_module-pl2303.obj -MD -MP -MF bus/usb/serial/$(DEPDIR)/usbserial_pl2303_module-pl2303.Tpo -c -o bus/usb/serial/usbserial_pl2303_module-pl2303.obj `if test -f 'bus/usb/serial/pl2303.c'; then $(CYGPATH_W) 'bus/usb/serial/pl2303.c'; else $(CYGPATH_W) '$(srcdir)/bus/usb/serial/pl2303.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) bus/usb/serial/$(DEPDIR)/usbserial_pl2303_module-pl2303.Tpo bus/usb/serial/$(DEPDIR)/usbserial_pl2303_module-pl2303.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='bus/usb/serial/pl2303.c' object='bus/usb/serial/usbserial_pl2303_module-pl2303.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usbserial_pl2303_module_CPPFLAGS) $(CPPFLAGS) $(usbserial_pl2303_module_CFLAGS) $(CFLAGS) -c -o bus/usb/serial/usbserial_pl2303_module-pl2303.obj `if test -f 'bus/usb/serial/pl2303.c'; then $(CYGPATH_W) 'bus/usb/serial/pl2303.c'; else $(CYGPATH_W) '$(srcdir)/bus/usb/serial/pl2303.c'; fi` - -bus/usb/serial/usbserial_usbdebug_module-usbdebug_late.o: bus/usb/serial/usbdebug_late.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usbserial_usbdebug_module_CPPFLAGS) $(CPPFLAGS) $(usbserial_usbdebug_module_CFLAGS) $(CFLAGS) -MT bus/usb/serial/usbserial_usbdebug_module-usbdebug_late.o -MD -MP -MF bus/usb/serial/$(DEPDIR)/usbserial_usbdebug_module-usbdebug_late.Tpo -c -o bus/usb/serial/usbserial_usbdebug_module-usbdebug_late.o `test -f 'bus/usb/serial/usbdebug_late.c' || echo '$(srcdir)/'`bus/usb/serial/usbdebug_late.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) bus/usb/serial/$(DEPDIR)/usbserial_usbdebug_module-usbdebug_late.Tpo bus/usb/serial/$(DEPDIR)/usbserial_usbdebug_module-usbdebug_late.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='bus/usb/serial/usbdebug_late.c' object='bus/usb/serial/usbserial_usbdebug_module-usbdebug_late.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usbserial_usbdebug_module_CPPFLAGS) $(CPPFLAGS) $(usbserial_usbdebug_module_CFLAGS) $(CFLAGS) -c -o bus/usb/serial/usbserial_usbdebug_module-usbdebug_late.o `test -f 'bus/usb/serial/usbdebug_late.c' || echo '$(srcdir)/'`bus/usb/serial/usbdebug_late.c - -bus/usb/serial/usbserial_usbdebug_module-usbdebug_late.obj: bus/usb/serial/usbdebug_late.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usbserial_usbdebug_module_CPPFLAGS) $(CPPFLAGS) $(usbserial_usbdebug_module_CFLAGS) $(CFLAGS) -MT bus/usb/serial/usbserial_usbdebug_module-usbdebug_late.obj -MD -MP -MF bus/usb/serial/$(DEPDIR)/usbserial_usbdebug_module-usbdebug_late.Tpo -c -o bus/usb/serial/usbserial_usbdebug_module-usbdebug_late.obj `if test -f 'bus/usb/serial/usbdebug_late.c'; then $(CYGPATH_W) 'bus/usb/serial/usbdebug_late.c'; else $(CYGPATH_W) '$(srcdir)/bus/usb/serial/usbdebug_late.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) bus/usb/serial/$(DEPDIR)/usbserial_usbdebug_module-usbdebug_late.Tpo bus/usb/serial/$(DEPDIR)/usbserial_usbdebug_module-usbdebug_late.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='bus/usb/serial/usbdebug_late.c' object='bus/usb/serial/usbserial_usbdebug_module-usbdebug_late.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usbserial_usbdebug_module_CPPFLAGS) $(CPPFLAGS) $(usbserial_usbdebug_module_CFLAGS) $(CFLAGS) -c -o bus/usb/serial/usbserial_usbdebug_module-usbdebug_late.obj `if test -f 'bus/usb/serial/usbdebug_late.c'; then $(CYGPATH_W) 'bus/usb/serial/usbdebug_late.c'; else $(CYGPATH_W) '$(srcdir)/bus/usb/serial/usbdebug_late.c'; fi` - -commands/usbtest_module-usbtest.o: commands/usbtest.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usbtest_module_CPPFLAGS) $(CPPFLAGS) $(usbtest_module_CFLAGS) $(CFLAGS) -MT commands/usbtest_module-usbtest.o -MD -MP -MF commands/$(DEPDIR)/usbtest_module-usbtest.Tpo -c -o commands/usbtest_module-usbtest.o `test -f 'commands/usbtest.c' || echo '$(srcdir)/'`commands/usbtest.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/$(DEPDIR)/usbtest_module-usbtest.Tpo commands/$(DEPDIR)/usbtest_module-usbtest.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/usbtest.c' object='commands/usbtest_module-usbtest.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usbtest_module_CPPFLAGS) $(CPPFLAGS) $(usbtest_module_CFLAGS) $(CFLAGS) -c -o commands/usbtest_module-usbtest.o `test -f 'commands/usbtest.c' || echo '$(srcdir)/'`commands/usbtest.c - -commands/usbtest_module-usbtest.obj: commands/usbtest.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usbtest_module_CPPFLAGS) $(CPPFLAGS) $(usbtest_module_CFLAGS) $(CFLAGS) -MT commands/usbtest_module-usbtest.obj -MD -MP -MF commands/$(DEPDIR)/usbtest_module-usbtest.Tpo -c -o commands/usbtest_module-usbtest.obj `if test -f 'commands/usbtest.c'; then $(CYGPATH_W) 'commands/usbtest.c'; else $(CYGPATH_W) '$(srcdir)/commands/usbtest.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/$(DEPDIR)/usbtest_module-usbtest.Tpo commands/$(DEPDIR)/usbtest_module-usbtest.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/usbtest.c' object='commands/usbtest_module-usbtest.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usbtest_module_CPPFLAGS) $(CPPFLAGS) $(usbtest_module_CFLAGS) $(CFLAGS) -c -o commands/usbtest_module-usbtest.obj `if test -f 'commands/usbtest.c'; then $(CYGPATH_W) 'commands/usbtest.c'; else $(CYGPATH_W) '$(srcdir)/commands/usbtest.c'; fi` - -video/i386/pc/vbe_module-vbe.o: video/i386/pc/vbe.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(vbe_module_CPPFLAGS) $(CPPFLAGS) $(vbe_module_CFLAGS) $(CFLAGS) -MT video/i386/pc/vbe_module-vbe.o -MD -MP -MF video/i386/pc/$(DEPDIR)/vbe_module-vbe.Tpo -c -o video/i386/pc/vbe_module-vbe.o `test -f 'video/i386/pc/vbe.c' || echo '$(srcdir)/'`video/i386/pc/vbe.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) video/i386/pc/$(DEPDIR)/vbe_module-vbe.Tpo video/i386/pc/$(DEPDIR)/vbe_module-vbe.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='video/i386/pc/vbe.c' object='video/i386/pc/vbe_module-vbe.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(vbe_module_CPPFLAGS) $(CPPFLAGS) $(vbe_module_CFLAGS) $(CFLAGS) -c -o video/i386/pc/vbe_module-vbe.o `test -f 'video/i386/pc/vbe.c' || echo '$(srcdir)/'`video/i386/pc/vbe.c - -video/i386/pc/vbe_module-vbe.obj: video/i386/pc/vbe.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(vbe_module_CPPFLAGS) $(CPPFLAGS) $(vbe_module_CFLAGS) $(CFLAGS) -MT video/i386/pc/vbe_module-vbe.obj -MD -MP -MF video/i386/pc/$(DEPDIR)/vbe_module-vbe.Tpo -c -o video/i386/pc/vbe_module-vbe.obj `if test -f 'video/i386/pc/vbe.c'; then $(CYGPATH_W) 'video/i386/pc/vbe.c'; else $(CYGPATH_W) '$(srcdir)/video/i386/pc/vbe.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) video/i386/pc/$(DEPDIR)/vbe_module-vbe.Tpo video/i386/pc/$(DEPDIR)/vbe_module-vbe.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='video/i386/pc/vbe.c' object='video/i386/pc/vbe_module-vbe.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(vbe_module_CPPFLAGS) $(CPPFLAGS) $(vbe_module_CFLAGS) $(CFLAGS) -c -o video/i386/pc/vbe_module-vbe.obj `if test -f 'video/i386/pc/vbe.c'; then $(CYGPATH_W) 'video/i386/pc/vbe.c'; else $(CYGPATH_W) '$(srcdir)/video/i386/pc/vbe.c'; fi` - -commands/verifiers_module-verifiers.o: commands/verifiers.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(verifiers_module_CPPFLAGS) $(CPPFLAGS) $(verifiers_module_CFLAGS) $(CFLAGS) -MT commands/verifiers_module-verifiers.o -MD -MP -MF commands/$(DEPDIR)/verifiers_module-verifiers.Tpo -c -o commands/verifiers_module-verifiers.o `test -f 'commands/verifiers.c' || echo '$(srcdir)/'`commands/verifiers.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/$(DEPDIR)/verifiers_module-verifiers.Tpo commands/$(DEPDIR)/verifiers_module-verifiers.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/verifiers.c' object='commands/verifiers_module-verifiers.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(verifiers_module_CPPFLAGS) $(CPPFLAGS) $(verifiers_module_CFLAGS) $(CFLAGS) -c -o commands/verifiers_module-verifiers.o `test -f 'commands/verifiers.c' || echo '$(srcdir)/'`commands/verifiers.c - -commands/verifiers_module-verifiers.obj: commands/verifiers.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(verifiers_module_CPPFLAGS) $(CPPFLAGS) $(verifiers_module_CFLAGS) $(CFLAGS) -MT commands/verifiers_module-verifiers.obj -MD -MP -MF commands/$(DEPDIR)/verifiers_module-verifiers.Tpo -c -o commands/verifiers_module-verifiers.obj `if test -f 'commands/verifiers.c'; then $(CYGPATH_W) 'commands/verifiers.c'; else $(CYGPATH_W) '$(srcdir)/commands/verifiers.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/$(DEPDIR)/verifiers_module-verifiers.Tpo commands/$(DEPDIR)/verifiers_module-verifiers.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/verifiers.c' object='commands/verifiers_module-verifiers.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(verifiers_module_CPPFLAGS) $(CPPFLAGS) $(verifiers_module_CFLAGS) $(CFLAGS) -c -o commands/verifiers_module-verifiers.obj `if test -f 'commands/verifiers.c'; then $(CYGPATH_W) 'commands/verifiers.c'; else $(CYGPATH_W) '$(srcdir)/commands/verifiers.c'; fi` - -video/i386/pc/vga_module-vga.o: video/i386/pc/vga.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(vga_module_CPPFLAGS) $(CPPFLAGS) $(vga_module_CFLAGS) $(CFLAGS) -MT video/i386/pc/vga_module-vga.o -MD -MP -MF video/i386/pc/$(DEPDIR)/vga_module-vga.Tpo -c -o video/i386/pc/vga_module-vga.o `test -f 'video/i386/pc/vga.c' || echo '$(srcdir)/'`video/i386/pc/vga.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) video/i386/pc/$(DEPDIR)/vga_module-vga.Tpo video/i386/pc/$(DEPDIR)/vga_module-vga.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='video/i386/pc/vga.c' object='video/i386/pc/vga_module-vga.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(vga_module_CPPFLAGS) $(CPPFLAGS) $(vga_module_CFLAGS) $(CFLAGS) -c -o video/i386/pc/vga_module-vga.o `test -f 'video/i386/pc/vga.c' || echo '$(srcdir)/'`video/i386/pc/vga.c - -video/i386/pc/vga_module-vga.obj: video/i386/pc/vga.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(vga_module_CPPFLAGS) $(CPPFLAGS) $(vga_module_CFLAGS) $(CFLAGS) -MT video/i386/pc/vga_module-vga.obj -MD -MP -MF video/i386/pc/$(DEPDIR)/vga_module-vga.Tpo -c -o video/i386/pc/vga_module-vga.obj `if test -f 'video/i386/pc/vga.c'; then $(CYGPATH_W) 'video/i386/pc/vga.c'; else $(CYGPATH_W) '$(srcdir)/video/i386/pc/vga.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) video/i386/pc/$(DEPDIR)/vga_module-vga.Tpo video/i386/pc/$(DEPDIR)/vga_module-vga.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='video/i386/pc/vga.c' object='video/i386/pc/vga_module-vga.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(vga_module_CPPFLAGS) $(CPPFLAGS) $(vga_module_CFLAGS) $(CFLAGS) -c -o video/i386/pc/vga_module-vga.obj `if test -f 'video/i386/pc/vga.c'; then $(CYGPATH_W) 'video/i386/pc/vga.c'; else $(CYGPATH_W) '$(srcdir)/video/i386/pc/vga.c'; fi` - -term/i386/pc/vga_text_module-vga_text.o: term/i386/pc/vga_text.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(vga_text_module_CPPFLAGS) $(CPPFLAGS) $(vga_text_module_CFLAGS) $(CFLAGS) -MT term/i386/pc/vga_text_module-vga_text.o -MD -MP -MF term/i386/pc/$(DEPDIR)/vga_text_module-vga_text.Tpo -c -o term/i386/pc/vga_text_module-vga_text.o `test -f 'term/i386/pc/vga_text.c' || echo '$(srcdir)/'`term/i386/pc/vga_text.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) term/i386/pc/$(DEPDIR)/vga_text_module-vga_text.Tpo term/i386/pc/$(DEPDIR)/vga_text_module-vga_text.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='term/i386/pc/vga_text.c' object='term/i386/pc/vga_text_module-vga_text.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(vga_text_module_CPPFLAGS) $(CPPFLAGS) $(vga_text_module_CFLAGS) $(CFLAGS) -c -o term/i386/pc/vga_text_module-vga_text.o `test -f 'term/i386/pc/vga_text.c' || echo '$(srcdir)/'`term/i386/pc/vga_text.c - -term/i386/pc/vga_text_module-vga_text.obj: term/i386/pc/vga_text.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(vga_text_module_CPPFLAGS) $(CPPFLAGS) $(vga_text_module_CFLAGS) $(CFLAGS) -MT term/i386/pc/vga_text_module-vga_text.obj -MD -MP -MF term/i386/pc/$(DEPDIR)/vga_text_module-vga_text.Tpo -c -o term/i386/pc/vga_text_module-vga_text.obj `if test -f 'term/i386/pc/vga_text.c'; then $(CYGPATH_W) 'term/i386/pc/vga_text.c'; else $(CYGPATH_W) '$(srcdir)/term/i386/pc/vga_text.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) term/i386/pc/$(DEPDIR)/vga_text_module-vga_text.Tpo term/i386/pc/$(DEPDIR)/vga_text_module-vga_text.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='term/i386/pc/vga_text.c' object='term/i386/pc/vga_text_module-vga_text.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(vga_text_module_CPPFLAGS) $(CPPFLAGS) $(vga_text_module_CFLAGS) $(CFLAGS) -c -o term/i386/pc/vga_text_module-vga_text.obj `if test -f 'term/i386/pc/vga_text.c'; then $(CYGPATH_W) 'term/i386/pc/vga_text.c'; else $(CYGPATH_W) '$(srcdir)/term/i386/pc/vga_text.c'; fi` - -video/video_module-video.o: video/video.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(video_module_CPPFLAGS) $(CPPFLAGS) $(video_module_CFLAGS) $(CFLAGS) -MT video/video_module-video.o -MD -MP -MF video/$(DEPDIR)/video_module-video.Tpo -c -o video/video_module-video.o `test -f 'video/video.c' || echo '$(srcdir)/'`video/video.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) video/$(DEPDIR)/video_module-video.Tpo video/$(DEPDIR)/video_module-video.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='video/video.c' object='video/video_module-video.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(video_module_CPPFLAGS) $(CPPFLAGS) $(video_module_CFLAGS) $(CFLAGS) -c -o video/video_module-video.o `test -f 'video/video.c' || echo '$(srcdir)/'`video/video.c - -video/video_module-video.obj: video/video.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(video_module_CPPFLAGS) $(CPPFLAGS) $(video_module_CFLAGS) $(CFLAGS) -MT video/video_module-video.obj -MD -MP -MF video/$(DEPDIR)/video_module-video.Tpo -c -o video/video_module-video.obj `if test -f 'video/video.c'; then $(CYGPATH_W) 'video/video.c'; else $(CYGPATH_W) '$(srcdir)/video/video.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) video/$(DEPDIR)/video_module-video.Tpo video/$(DEPDIR)/video_module-video.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='video/video.c' object='video/video_module-video.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(video_module_CPPFLAGS) $(CPPFLAGS) $(video_module_CFLAGS) $(CFLAGS) -c -o video/video_module-video.obj `if test -f 'video/video.c'; then $(CYGPATH_W) 'video/video.c'; else $(CYGPATH_W) '$(srcdir)/video/video.c'; fi` - -video/video_bochs_module-bochs.o: video/bochs.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(video_bochs_module_CPPFLAGS) $(CPPFLAGS) $(video_bochs_module_CFLAGS) $(CFLAGS) -MT video/video_bochs_module-bochs.o -MD -MP -MF video/$(DEPDIR)/video_bochs_module-bochs.Tpo -c -o video/video_bochs_module-bochs.o `test -f 'video/bochs.c' || echo '$(srcdir)/'`video/bochs.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) video/$(DEPDIR)/video_bochs_module-bochs.Tpo video/$(DEPDIR)/video_bochs_module-bochs.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='video/bochs.c' object='video/video_bochs_module-bochs.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(video_bochs_module_CPPFLAGS) $(CPPFLAGS) $(video_bochs_module_CFLAGS) $(CFLAGS) -c -o video/video_bochs_module-bochs.o `test -f 'video/bochs.c' || echo '$(srcdir)/'`video/bochs.c - -video/video_bochs_module-bochs.obj: video/bochs.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(video_bochs_module_CPPFLAGS) $(CPPFLAGS) $(video_bochs_module_CFLAGS) $(CFLAGS) -MT video/video_bochs_module-bochs.obj -MD -MP -MF video/$(DEPDIR)/video_bochs_module-bochs.Tpo -c -o video/video_bochs_module-bochs.obj `if test -f 'video/bochs.c'; then $(CYGPATH_W) 'video/bochs.c'; else $(CYGPATH_W) '$(srcdir)/video/bochs.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) video/$(DEPDIR)/video_bochs_module-bochs.Tpo video/$(DEPDIR)/video_bochs_module-bochs.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='video/bochs.c' object='video/video_bochs_module-bochs.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(video_bochs_module_CPPFLAGS) $(CPPFLAGS) $(video_bochs_module_CFLAGS) $(CFLAGS) -c -o video/video_bochs_module-bochs.obj `if test -f 'video/bochs.c'; then $(CYGPATH_W) 'video/bochs.c'; else $(CYGPATH_W) '$(srcdir)/video/bochs.c'; fi` - -video/video_cirrus_module-cirrus.o: video/cirrus.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(video_cirrus_module_CPPFLAGS) $(CPPFLAGS) $(video_cirrus_module_CFLAGS) $(CFLAGS) -MT video/video_cirrus_module-cirrus.o -MD -MP -MF video/$(DEPDIR)/video_cirrus_module-cirrus.Tpo -c -o video/video_cirrus_module-cirrus.o `test -f 'video/cirrus.c' || echo '$(srcdir)/'`video/cirrus.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) video/$(DEPDIR)/video_cirrus_module-cirrus.Tpo video/$(DEPDIR)/video_cirrus_module-cirrus.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='video/cirrus.c' object='video/video_cirrus_module-cirrus.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(video_cirrus_module_CPPFLAGS) $(CPPFLAGS) $(video_cirrus_module_CFLAGS) $(CFLAGS) -c -o video/video_cirrus_module-cirrus.o `test -f 'video/cirrus.c' || echo '$(srcdir)/'`video/cirrus.c - -video/video_cirrus_module-cirrus.obj: video/cirrus.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(video_cirrus_module_CPPFLAGS) $(CPPFLAGS) $(video_cirrus_module_CFLAGS) $(CFLAGS) -MT video/video_cirrus_module-cirrus.obj -MD -MP -MF video/$(DEPDIR)/video_cirrus_module-cirrus.Tpo -c -o video/video_cirrus_module-cirrus.obj `if test -f 'video/cirrus.c'; then $(CYGPATH_W) 'video/cirrus.c'; else $(CYGPATH_W) '$(srcdir)/video/cirrus.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) video/$(DEPDIR)/video_cirrus_module-cirrus.Tpo video/$(DEPDIR)/video_cirrus_module-cirrus.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='video/cirrus.c' object='video/video_cirrus_module-cirrus.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(video_cirrus_module_CPPFLAGS) $(CPPFLAGS) $(video_cirrus_module_CFLAGS) $(CFLAGS) -c -o video/video_cirrus_module-cirrus.obj `if test -f 'video/cirrus.c'; then $(CYGPATH_W) 'video/cirrus.c'; else $(CYGPATH_W) '$(srcdir)/video/cirrus.c'; fi` - -video/video_colors_module-colors.o: video/colors.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(video_colors_module_CPPFLAGS) $(CPPFLAGS) $(video_colors_module_CFLAGS) $(CFLAGS) -MT video/video_colors_module-colors.o -MD -MP -MF video/$(DEPDIR)/video_colors_module-colors.Tpo -c -o video/video_colors_module-colors.o `test -f 'video/colors.c' || echo '$(srcdir)/'`video/colors.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) video/$(DEPDIR)/video_colors_module-colors.Tpo video/$(DEPDIR)/video_colors_module-colors.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='video/colors.c' object='video/video_colors_module-colors.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(video_colors_module_CPPFLAGS) $(CPPFLAGS) $(video_colors_module_CFLAGS) $(CFLAGS) -c -o video/video_colors_module-colors.o `test -f 'video/colors.c' || echo '$(srcdir)/'`video/colors.c - -video/video_colors_module-colors.obj: video/colors.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(video_colors_module_CPPFLAGS) $(CPPFLAGS) $(video_colors_module_CFLAGS) $(CFLAGS) -MT video/video_colors_module-colors.obj -MD -MP -MF video/$(DEPDIR)/video_colors_module-colors.Tpo -c -o video/video_colors_module-colors.obj `if test -f 'video/colors.c'; then $(CYGPATH_W) 'video/colors.c'; else $(CYGPATH_W) '$(srcdir)/video/colors.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) video/$(DEPDIR)/video_colors_module-colors.Tpo video/$(DEPDIR)/video_colors_module-colors.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='video/colors.c' object='video/video_colors_module-colors.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(video_colors_module_CPPFLAGS) $(CPPFLAGS) $(video_colors_module_CFLAGS) $(CFLAGS) -c -o video/video_colors_module-colors.obj `if test -f 'video/colors.c'; then $(CYGPATH_W) 'video/colors.c'; else $(CYGPATH_W) '$(srcdir)/video/colors.c'; fi` - -video/fb/video_fb_module-video_fb.o: video/fb/video_fb.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(video_fb_module_CPPFLAGS) $(CPPFLAGS) $(video_fb_module_CFLAGS) $(CFLAGS) -MT video/fb/video_fb_module-video_fb.o -MD -MP -MF video/fb/$(DEPDIR)/video_fb_module-video_fb.Tpo -c -o video/fb/video_fb_module-video_fb.o `test -f 'video/fb/video_fb.c' || echo '$(srcdir)/'`video/fb/video_fb.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) video/fb/$(DEPDIR)/video_fb_module-video_fb.Tpo video/fb/$(DEPDIR)/video_fb_module-video_fb.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='video/fb/video_fb.c' object='video/fb/video_fb_module-video_fb.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(video_fb_module_CPPFLAGS) $(CPPFLAGS) $(video_fb_module_CFLAGS) $(CFLAGS) -c -o video/fb/video_fb_module-video_fb.o `test -f 'video/fb/video_fb.c' || echo '$(srcdir)/'`video/fb/video_fb.c - -video/fb/video_fb_module-video_fb.obj: video/fb/video_fb.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(video_fb_module_CPPFLAGS) $(CPPFLAGS) $(video_fb_module_CFLAGS) $(CFLAGS) -MT video/fb/video_fb_module-video_fb.obj -MD -MP -MF video/fb/$(DEPDIR)/video_fb_module-video_fb.Tpo -c -o video/fb/video_fb_module-video_fb.obj `if test -f 'video/fb/video_fb.c'; then $(CYGPATH_W) 'video/fb/video_fb.c'; else $(CYGPATH_W) '$(srcdir)/video/fb/video_fb.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) video/fb/$(DEPDIR)/video_fb_module-video_fb.Tpo video/fb/$(DEPDIR)/video_fb_module-video_fb.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='video/fb/video_fb.c' object='video/fb/video_fb_module-video_fb.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(video_fb_module_CPPFLAGS) $(CPPFLAGS) $(video_fb_module_CFLAGS) $(CFLAGS) -c -o video/fb/video_fb_module-video_fb.obj `if test -f 'video/fb/video_fb.c'; then $(CYGPATH_W) 'video/fb/video_fb.c'; else $(CYGPATH_W) '$(srcdir)/video/fb/video_fb.c'; fi` - -video/fb/video_fb_module-fbblit.o: video/fb/fbblit.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(video_fb_module_CPPFLAGS) $(CPPFLAGS) $(video_fb_module_CFLAGS) $(CFLAGS) -MT video/fb/video_fb_module-fbblit.o -MD -MP -MF video/fb/$(DEPDIR)/video_fb_module-fbblit.Tpo -c -o video/fb/video_fb_module-fbblit.o `test -f 'video/fb/fbblit.c' || echo '$(srcdir)/'`video/fb/fbblit.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) video/fb/$(DEPDIR)/video_fb_module-fbblit.Tpo video/fb/$(DEPDIR)/video_fb_module-fbblit.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='video/fb/fbblit.c' object='video/fb/video_fb_module-fbblit.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(video_fb_module_CPPFLAGS) $(CPPFLAGS) $(video_fb_module_CFLAGS) $(CFLAGS) -c -o video/fb/video_fb_module-fbblit.o `test -f 'video/fb/fbblit.c' || echo '$(srcdir)/'`video/fb/fbblit.c - -video/fb/video_fb_module-fbblit.obj: video/fb/fbblit.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(video_fb_module_CPPFLAGS) $(CPPFLAGS) $(video_fb_module_CFLAGS) $(CFLAGS) -MT video/fb/video_fb_module-fbblit.obj -MD -MP -MF video/fb/$(DEPDIR)/video_fb_module-fbblit.Tpo -c -o video/fb/video_fb_module-fbblit.obj `if test -f 'video/fb/fbblit.c'; then $(CYGPATH_W) 'video/fb/fbblit.c'; else $(CYGPATH_W) '$(srcdir)/video/fb/fbblit.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) video/fb/$(DEPDIR)/video_fb_module-fbblit.Tpo video/fb/$(DEPDIR)/video_fb_module-fbblit.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='video/fb/fbblit.c' object='video/fb/video_fb_module-fbblit.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(video_fb_module_CPPFLAGS) $(CPPFLAGS) $(video_fb_module_CFLAGS) $(CFLAGS) -c -o video/fb/video_fb_module-fbblit.obj `if test -f 'video/fb/fbblit.c'; then $(CYGPATH_W) 'video/fb/fbblit.c'; else $(CYGPATH_W) '$(srcdir)/video/fb/fbblit.c'; fi` - -video/fb/video_fb_module-fbfill.o: video/fb/fbfill.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(video_fb_module_CPPFLAGS) $(CPPFLAGS) $(video_fb_module_CFLAGS) $(CFLAGS) -MT video/fb/video_fb_module-fbfill.o -MD -MP -MF video/fb/$(DEPDIR)/video_fb_module-fbfill.Tpo -c -o video/fb/video_fb_module-fbfill.o `test -f 'video/fb/fbfill.c' || echo '$(srcdir)/'`video/fb/fbfill.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) video/fb/$(DEPDIR)/video_fb_module-fbfill.Tpo video/fb/$(DEPDIR)/video_fb_module-fbfill.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='video/fb/fbfill.c' object='video/fb/video_fb_module-fbfill.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(video_fb_module_CPPFLAGS) $(CPPFLAGS) $(video_fb_module_CFLAGS) $(CFLAGS) -c -o video/fb/video_fb_module-fbfill.o `test -f 'video/fb/fbfill.c' || echo '$(srcdir)/'`video/fb/fbfill.c - -video/fb/video_fb_module-fbfill.obj: video/fb/fbfill.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(video_fb_module_CPPFLAGS) $(CPPFLAGS) $(video_fb_module_CFLAGS) $(CFLAGS) -MT video/fb/video_fb_module-fbfill.obj -MD -MP -MF video/fb/$(DEPDIR)/video_fb_module-fbfill.Tpo -c -o video/fb/video_fb_module-fbfill.obj `if test -f 'video/fb/fbfill.c'; then $(CYGPATH_W) 'video/fb/fbfill.c'; else $(CYGPATH_W) '$(srcdir)/video/fb/fbfill.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) video/fb/$(DEPDIR)/video_fb_module-fbfill.Tpo video/fb/$(DEPDIR)/video_fb_module-fbfill.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='video/fb/fbfill.c' object='video/fb/video_fb_module-fbfill.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(video_fb_module_CPPFLAGS) $(CPPFLAGS) $(video_fb_module_CFLAGS) $(CFLAGS) -c -o video/fb/video_fb_module-fbfill.obj `if test -f 'video/fb/fbfill.c'; then $(CYGPATH_W) 'video/fb/fbfill.c'; else $(CYGPATH_W) '$(srcdir)/video/fb/fbfill.c'; fi` - -video/fb/video_fb_module-fbutil.o: video/fb/fbutil.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(video_fb_module_CPPFLAGS) $(CPPFLAGS) $(video_fb_module_CFLAGS) $(CFLAGS) -MT video/fb/video_fb_module-fbutil.o -MD -MP -MF video/fb/$(DEPDIR)/video_fb_module-fbutil.Tpo -c -o video/fb/video_fb_module-fbutil.o `test -f 'video/fb/fbutil.c' || echo '$(srcdir)/'`video/fb/fbutil.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) video/fb/$(DEPDIR)/video_fb_module-fbutil.Tpo video/fb/$(DEPDIR)/video_fb_module-fbutil.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='video/fb/fbutil.c' object='video/fb/video_fb_module-fbutil.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(video_fb_module_CPPFLAGS) $(CPPFLAGS) $(video_fb_module_CFLAGS) $(CFLAGS) -c -o video/fb/video_fb_module-fbutil.o `test -f 'video/fb/fbutil.c' || echo '$(srcdir)/'`video/fb/fbutil.c - -video/fb/video_fb_module-fbutil.obj: video/fb/fbutil.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(video_fb_module_CPPFLAGS) $(CPPFLAGS) $(video_fb_module_CFLAGS) $(CFLAGS) -MT video/fb/video_fb_module-fbutil.obj -MD -MP -MF video/fb/$(DEPDIR)/video_fb_module-fbutil.Tpo -c -o video/fb/video_fb_module-fbutil.obj `if test -f 'video/fb/fbutil.c'; then $(CYGPATH_W) 'video/fb/fbutil.c'; else $(CYGPATH_W) '$(srcdir)/video/fb/fbutil.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) video/fb/$(DEPDIR)/video_fb_module-fbutil.Tpo video/fb/$(DEPDIR)/video_fb_module-fbutil.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='video/fb/fbutil.c' object='video/fb/video_fb_module-fbutil.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(video_fb_module_CPPFLAGS) $(CPPFLAGS) $(video_fb_module_CFLAGS) $(CFLAGS) -c -o video/fb/video_fb_module-fbutil.obj `if test -f 'video/fb/fbutil.c'; then $(CYGPATH_W) 'video/fb/fbutil.c'; else $(CYGPATH_W) '$(srcdir)/video/fb/fbutil.c'; fi` - -commands/videoinfo_module-videoinfo.o: commands/videoinfo.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(videoinfo_module_CPPFLAGS) $(CPPFLAGS) $(videoinfo_module_CFLAGS) $(CFLAGS) -MT commands/videoinfo_module-videoinfo.o -MD -MP -MF commands/$(DEPDIR)/videoinfo_module-videoinfo.Tpo -c -o commands/videoinfo_module-videoinfo.o `test -f 'commands/videoinfo.c' || echo '$(srcdir)/'`commands/videoinfo.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/$(DEPDIR)/videoinfo_module-videoinfo.Tpo commands/$(DEPDIR)/videoinfo_module-videoinfo.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/videoinfo.c' object='commands/videoinfo_module-videoinfo.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(videoinfo_module_CPPFLAGS) $(CPPFLAGS) $(videoinfo_module_CFLAGS) $(CFLAGS) -c -o commands/videoinfo_module-videoinfo.o `test -f 'commands/videoinfo.c' || echo '$(srcdir)/'`commands/videoinfo.c - -commands/videoinfo_module-videoinfo.obj: commands/videoinfo.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(videoinfo_module_CPPFLAGS) $(CPPFLAGS) $(videoinfo_module_CFLAGS) $(CFLAGS) -MT commands/videoinfo_module-videoinfo.obj -MD -MP -MF commands/$(DEPDIR)/videoinfo_module-videoinfo.Tpo -c -o commands/videoinfo_module-videoinfo.obj `if test -f 'commands/videoinfo.c'; then $(CYGPATH_W) 'commands/videoinfo.c'; else $(CYGPATH_W) '$(srcdir)/commands/videoinfo.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/$(DEPDIR)/videoinfo_module-videoinfo.Tpo commands/$(DEPDIR)/videoinfo_module-videoinfo.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/videoinfo.c' object='commands/videoinfo_module-videoinfo.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(videoinfo_module_CPPFLAGS) $(CPPFLAGS) $(videoinfo_module_CFLAGS) $(CFLAGS) -c -o commands/videoinfo_module-videoinfo.obj `if test -f 'commands/videoinfo.c'; then $(CYGPATH_W) 'commands/videoinfo.c'; else $(CYGPATH_W) '$(srcdir)/commands/videoinfo.c'; fi` - -commands/videotest_module-videotest.o: commands/videotest.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(videotest_module_CPPFLAGS) $(CPPFLAGS) $(videotest_module_CFLAGS) $(CFLAGS) -MT commands/videotest_module-videotest.o -MD -MP -MF commands/$(DEPDIR)/videotest_module-videotest.Tpo -c -o commands/videotest_module-videotest.o `test -f 'commands/videotest.c' || echo '$(srcdir)/'`commands/videotest.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/$(DEPDIR)/videotest_module-videotest.Tpo commands/$(DEPDIR)/videotest_module-videotest.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/videotest.c' object='commands/videotest_module-videotest.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(videotest_module_CPPFLAGS) $(CPPFLAGS) $(videotest_module_CFLAGS) $(CFLAGS) -c -o commands/videotest_module-videotest.o `test -f 'commands/videotest.c' || echo '$(srcdir)/'`commands/videotest.c - -commands/videotest_module-videotest.obj: commands/videotest.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(videotest_module_CPPFLAGS) $(CPPFLAGS) $(videotest_module_CFLAGS) $(CFLAGS) -MT commands/videotest_module-videotest.obj -MD -MP -MF commands/$(DEPDIR)/videotest_module-videotest.Tpo -c -o commands/videotest_module-videotest.obj `if test -f 'commands/videotest.c'; then $(CYGPATH_W) 'commands/videotest.c'; else $(CYGPATH_W) '$(srcdir)/commands/videotest.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/$(DEPDIR)/videotest_module-videotest.Tpo commands/$(DEPDIR)/videotest_module-videotest.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/videotest.c' object='commands/videotest_module-videotest.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(videotest_module_CPPFLAGS) $(CPPFLAGS) $(videotest_module_CFLAGS) $(CFLAGS) -c -o commands/videotest_module-videotest.obj `if test -f 'commands/videotest.c'; then $(CYGPATH_W) 'commands/videotest.c'; else $(CYGPATH_W) '$(srcdir)/commands/videotest.c'; fi` - -tests/videotest_checksum_module-videotest_checksum.o: tests/videotest_checksum.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(videotest_checksum_module_CPPFLAGS) $(CPPFLAGS) $(videotest_checksum_module_CFLAGS) $(CFLAGS) -MT tests/videotest_checksum_module-videotest_checksum.o -MD -MP -MF tests/$(DEPDIR)/videotest_checksum_module-videotest_checksum.Tpo -c -o tests/videotest_checksum_module-videotest_checksum.o `test -f 'tests/videotest_checksum.c' || echo '$(srcdir)/'`tests/videotest_checksum.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) tests/$(DEPDIR)/videotest_checksum_module-videotest_checksum.Tpo tests/$(DEPDIR)/videotest_checksum_module-videotest_checksum.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='tests/videotest_checksum.c' object='tests/videotest_checksum_module-videotest_checksum.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(videotest_checksum_module_CPPFLAGS) $(CPPFLAGS) $(videotest_checksum_module_CFLAGS) $(CFLAGS) -c -o tests/videotest_checksum_module-videotest_checksum.o `test -f 'tests/videotest_checksum.c' || echo '$(srcdir)/'`tests/videotest_checksum.c - -tests/videotest_checksum_module-videotest_checksum.obj: tests/videotest_checksum.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(videotest_checksum_module_CPPFLAGS) $(CPPFLAGS) $(videotest_checksum_module_CFLAGS) $(CFLAGS) -MT tests/videotest_checksum_module-videotest_checksum.obj -MD -MP -MF tests/$(DEPDIR)/videotest_checksum_module-videotest_checksum.Tpo -c -o tests/videotest_checksum_module-videotest_checksum.obj `if test -f 'tests/videotest_checksum.c'; then $(CYGPATH_W) 'tests/videotest_checksum.c'; else $(CYGPATH_W) '$(srcdir)/tests/videotest_checksum.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) tests/$(DEPDIR)/videotest_checksum_module-videotest_checksum.Tpo tests/$(DEPDIR)/videotest_checksum_module-videotest_checksum.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='tests/videotest_checksum.c' object='tests/videotest_checksum_module-videotest_checksum.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(videotest_checksum_module_CPPFLAGS) $(CPPFLAGS) $(videotest_checksum_module_CFLAGS) $(CFLAGS) -c -o tests/videotest_checksum_module-videotest_checksum.obj `if test -f 'tests/videotest_checksum.c'; then $(CYGPATH_W) 'tests/videotest_checksum.c'; else $(CYGPATH_W) '$(srcdir)/tests/videotest_checksum.c'; fi` - -commands/i386/wrmsr_module-wrmsr.o: commands/i386/wrmsr.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(wrmsr_module_CPPFLAGS) $(CPPFLAGS) $(wrmsr_module_CFLAGS) $(CFLAGS) -MT commands/i386/wrmsr_module-wrmsr.o -MD -MP -MF commands/i386/$(DEPDIR)/wrmsr_module-wrmsr.Tpo -c -o commands/i386/wrmsr_module-wrmsr.o `test -f 'commands/i386/wrmsr.c' || echo '$(srcdir)/'`commands/i386/wrmsr.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/i386/$(DEPDIR)/wrmsr_module-wrmsr.Tpo commands/i386/$(DEPDIR)/wrmsr_module-wrmsr.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/i386/wrmsr.c' object='commands/i386/wrmsr_module-wrmsr.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(wrmsr_module_CPPFLAGS) $(CPPFLAGS) $(wrmsr_module_CFLAGS) $(CFLAGS) -c -o commands/i386/wrmsr_module-wrmsr.o `test -f 'commands/i386/wrmsr.c' || echo '$(srcdir)/'`commands/i386/wrmsr.c - -commands/i386/wrmsr_module-wrmsr.obj: commands/i386/wrmsr.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(wrmsr_module_CPPFLAGS) $(CPPFLAGS) $(wrmsr_module_CFLAGS) $(CFLAGS) -MT commands/i386/wrmsr_module-wrmsr.obj -MD -MP -MF commands/i386/$(DEPDIR)/wrmsr_module-wrmsr.Tpo -c -o commands/i386/wrmsr_module-wrmsr.obj `if test -f 'commands/i386/wrmsr.c'; then $(CYGPATH_W) 'commands/i386/wrmsr.c'; else $(CYGPATH_W) '$(srcdir)/commands/i386/wrmsr.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/i386/$(DEPDIR)/wrmsr_module-wrmsr.Tpo commands/i386/$(DEPDIR)/wrmsr_module-wrmsr.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/i386/wrmsr.c' object='commands/i386/wrmsr_module-wrmsr.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(wrmsr_module_CPPFLAGS) $(CPPFLAGS) $(wrmsr_module_CFLAGS) $(CFLAGS) -c -o commands/i386/wrmsr_module-wrmsr.obj `if test -f 'commands/i386/wrmsr.c'; then $(CYGPATH_W) 'commands/i386/wrmsr.c'; else $(CYGPATH_W) '$(srcdir)/commands/i386/wrmsr.c'; fi` - -loader/arm64/xen_boot_module-xen_boot.o: loader/arm64/xen_boot.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(xen_boot_module_CPPFLAGS) $(CPPFLAGS) $(xen_boot_module_CFLAGS) $(CFLAGS) -MT loader/arm64/xen_boot_module-xen_boot.o -MD -MP -MF loader/arm64/$(DEPDIR)/xen_boot_module-xen_boot.Tpo -c -o loader/arm64/xen_boot_module-xen_boot.o `test -f 'loader/arm64/xen_boot.c' || echo '$(srcdir)/'`loader/arm64/xen_boot.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) loader/arm64/$(DEPDIR)/xen_boot_module-xen_boot.Tpo loader/arm64/$(DEPDIR)/xen_boot_module-xen_boot.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='loader/arm64/xen_boot.c' object='loader/arm64/xen_boot_module-xen_boot.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(xen_boot_module_CPPFLAGS) $(CPPFLAGS) $(xen_boot_module_CFLAGS) $(CFLAGS) -c -o loader/arm64/xen_boot_module-xen_boot.o `test -f 'loader/arm64/xen_boot.c' || echo '$(srcdir)/'`loader/arm64/xen_boot.c - -loader/arm64/xen_boot_module-xen_boot.obj: loader/arm64/xen_boot.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(xen_boot_module_CPPFLAGS) $(CPPFLAGS) $(xen_boot_module_CFLAGS) $(CFLAGS) -MT loader/arm64/xen_boot_module-xen_boot.obj -MD -MP -MF loader/arm64/$(DEPDIR)/xen_boot_module-xen_boot.Tpo -c -o loader/arm64/xen_boot_module-xen_boot.obj `if test -f 'loader/arm64/xen_boot.c'; then $(CYGPATH_W) 'loader/arm64/xen_boot.c'; else $(CYGPATH_W) '$(srcdir)/loader/arm64/xen_boot.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) loader/arm64/$(DEPDIR)/xen_boot_module-xen_boot.Tpo loader/arm64/$(DEPDIR)/xen_boot_module-xen_boot.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='loader/arm64/xen_boot.c' object='loader/arm64/xen_boot_module-xen_boot.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(xen_boot_module_CPPFLAGS) $(CPPFLAGS) $(xen_boot_module_CFLAGS) $(CFLAGS) -c -o loader/arm64/xen_boot_module-xen_boot.obj `if test -f 'loader/arm64/xen_boot.c'; then $(CYGPATH_W) 'loader/arm64/xen_boot.c'; else $(CYGPATH_W) '$(srcdir)/loader/arm64/xen_boot.c'; fi` - -fs/xfs_module-xfs.o: fs/xfs.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(xfs_module_CPPFLAGS) $(CPPFLAGS) $(xfs_module_CFLAGS) $(CFLAGS) -MT fs/xfs_module-xfs.o -MD -MP -MF fs/$(DEPDIR)/xfs_module-xfs.Tpo -c -o fs/xfs_module-xfs.o `test -f 'fs/xfs.c' || echo '$(srcdir)/'`fs/xfs.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) fs/$(DEPDIR)/xfs_module-xfs.Tpo fs/$(DEPDIR)/xfs_module-xfs.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='fs/xfs.c' object='fs/xfs_module-xfs.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(xfs_module_CPPFLAGS) $(CPPFLAGS) $(xfs_module_CFLAGS) $(CFLAGS) -c -o fs/xfs_module-xfs.o `test -f 'fs/xfs.c' || echo '$(srcdir)/'`fs/xfs.c - -fs/xfs_module-xfs.obj: fs/xfs.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(xfs_module_CPPFLAGS) $(CPPFLAGS) $(xfs_module_CFLAGS) $(CFLAGS) -MT fs/xfs_module-xfs.obj -MD -MP -MF fs/$(DEPDIR)/xfs_module-xfs.Tpo -c -o fs/xfs_module-xfs.obj `if test -f 'fs/xfs.c'; then $(CYGPATH_W) 'fs/xfs.c'; else $(CYGPATH_W) '$(srcdir)/fs/xfs.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) fs/$(DEPDIR)/xfs_module-xfs.Tpo fs/$(DEPDIR)/xfs_module-xfs.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='fs/xfs.c' object='fs/xfs_module-xfs.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(xfs_module_CPPFLAGS) $(CPPFLAGS) $(xfs_module_CFLAGS) $(CFLAGS) -c -o fs/xfs_module-xfs.obj `if test -f 'fs/xfs.c'; then $(CYGPATH_W) 'fs/xfs.c'; else $(CYGPATH_W) '$(srcdir)/fs/xfs.c'; fi` - -loader/xnu_module-xnu_resume.o: loader/xnu_resume.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(xnu_module_CPPFLAGS) $(CPPFLAGS) $(xnu_module_CFLAGS) $(CFLAGS) -MT loader/xnu_module-xnu_resume.o -MD -MP -MF loader/$(DEPDIR)/xnu_module-xnu_resume.Tpo -c -o loader/xnu_module-xnu_resume.o `test -f 'loader/xnu_resume.c' || echo '$(srcdir)/'`loader/xnu_resume.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) loader/$(DEPDIR)/xnu_module-xnu_resume.Tpo loader/$(DEPDIR)/xnu_module-xnu_resume.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='loader/xnu_resume.c' object='loader/xnu_module-xnu_resume.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(xnu_module_CPPFLAGS) $(CPPFLAGS) $(xnu_module_CFLAGS) $(CFLAGS) -c -o loader/xnu_module-xnu_resume.o `test -f 'loader/xnu_resume.c' || echo '$(srcdir)/'`loader/xnu_resume.c - -loader/xnu_module-xnu_resume.obj: loader/xnu_resume.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(xnu_module_CPPFLAGS) $(CPPFLAGS) $(xnu_module_CFLAGS) $(CFLAGS) -MT loader/xnu_module-xnu_resume.obj -MD -MP -MF loader/$(DEPDIR)/xnu_module-xnu_resume.Tpo -c -o loader/xnu_module-xnu_resume.obj `if test -f 'loader/xnu_resume.c'; then $(CYGPATH_W) 'loader/xnu_resume.c'; else $(CYGPATH_W) '$(srcdir)/loader/xnu_resume.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) loader/$(DEPDIR)/xnu_module-xnu_resume.Tpo loader/$(DEPDIR)/xnu_module-xnu_resume.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='loader/xnu_resume.c' object='loader/xnu_module-xnu_resume.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(xnu_module_CPPFLAGS) $(CPPFLAGS) $(xnu_module_CFLAGS) $(CFLAGS) -c -o loader/xnu_module-xnu_resume.obj `if test -f 'loader/xnu_resume.c'; then $(CYGPATH_W) 'loader/xnu_resume.c'; else $(CYGPATH_W) '$(srcdir)/loader/xnu_resume.c'; fi` - -loader/i386/xnu_module-xnu.o: loader/i386/xnu.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(xnu_module_CPPFLAGS) $(CPPFLAGS) $(xnu_module_CFLAGS) $(CFLAGS) -MT loader/i386/xnu_module-xnu.o -MD -MP -MF loader/i386/$(DEPDIR)/xnu_module-xnu.Tpo -c -o loader/i386/xnu_module-xnu.o `test -f 'loader/i386/xnu.c' || echo '$(srcdir)/'`loader/i386/xnu.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) loader/i386/$(DEPDIR)/xnu_module-xnu.Tpo loader/i386/$(DEPDIR)/xnu_module-xnu.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='loader/i386/xnu.c' object='loader/i386/xnu_module-xnu.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(xnu_module_CPPFLAGS) $(CPPFLAGS) $(xnu_module_CFLAGS) $(CFLAGS) -c -o loader/i386/xnu_module-xnu.o `test -f 'loader/i386/xnu.c' || echo '$(srcdir)/'`loader/i386/xnu.c - -loader/i386/xnu_module-xnu.obj: loader/i386/xnu.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(xnu_module_CPPFLAGS) $(CPPFLAGS) $(xnu_module_CFLAGS) $(CFLAGS) -MT loader/i386/xnu_module-xnu.obj -MD -MP -MF loader/i386/$(DEPDIR)/xnu_module-xnu.Tpo -c -o loader/i386/xnu_module-xnu.obj `if test -f 'loader/i386/xnu.c'; then $(CYGPATH_W) 'loader/i386/xnu.c'; else $(CYGPATH_W) '$(srcdir)/loader/i386/xnu.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) loader/i386/$(DEPDIR)/xnu_module-xnu.Tpo loader/i386/$(DEPDIR)/xnu_module-xnu.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='loader/i386/xnu.c' object='loader/i386/xnu_module-xnu.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(xnu_module_CPPFLAGS) $(CPPFLAGS) $(xnu_module_CFLAGS) $(CFLAGS) -c -o loader/i386/xnu_module-xnu.obj `if test -f 'loader/i386/xnu.c'; then $(CYGPATH_W) 'loader/i386/xnu.c'; else $(CYGPATH_W) '$(srcdir)/loader/i386/xnu.c'; fi` - -loader/xnu_module-xnu.o: loader/xnu.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(xnu_module_CPPFLAGS) $(CPPFLAGS) $(xnu_module_CFLAGS) $(CFLAGS) -MT loader/xnu_module-xnu.o -MD -MP -MF loader/$(DEPDIR)/xnu_module-xnu.Tpo -c -o loader/xnu_module-xnu.o `test -f 'loader/xnu.c' || echo '$(srcdir)/'`loader/xnu.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) loader/$(DEPDIR)/xnu_module-xnu.Tpo loader/$(DEPDIR)/xnu_module-xnu.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='loader/xnu.c' object='loader/xnu_module-xnu.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(xnu_module_CPPFLAGS) $(CPPFLAGS) $(xnu_module_CFLAGS) $(CFLAGS) -c -o loader/xnu_module-xnu.o `test -f 'loader/xnu.c' || echo '$(srcdir)/'`loader/xnu.c - -loader/xnu_module-xnu.obj: loader/xnu.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(xnu_module_CPPFLAGS) $(CPPFLAGS) $(xnu_module_CFLAGS) $(CFLAGS) -MT loader/xnu_module-xnu.obj -MD -MP -MF loader/$(DEPDIR)/xnu_module-xnu.Tpo -c -o loader/xnu_module-xnu.obj `if test -f 'loader/xnu.c'; then $(CYGPATH_W) 'loader/xnu.c'; else $(CYGPATH_W) '$(srcdir)/loader/xnu.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) loader/$(DEPDIR)/xnu_module-xnu.Tpo loader/$(DEPDIR)/xnu_module-xnu.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='loader/xnu.c' object='loader/xnu_module-xnu.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(xnu_module_CPPFLAGS) $(CPPFLAGS) $(xnu_module_CFLAGS) $(CFLAGS) -c -o loader/xnu_module-xnu.obj `if test -f 'loader/xnu.c'; then $(CYGPATH_W) 'loader/xnu.c'; else $(CYGPATH_W) '$(srcdir)/loader/xnu.c'; fi` - -commands/xnu_uuid_module-xnu_uuid.o: commands/xnu_uuid.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(xnu_uuid_module_CPPFLAGS) $(CPPFLAGS) $(xnu_uuid_module_CFLAGS) $(CFLAGS) -MT commands/xnu_uuid_module-xnu_uuid.o -MD -MP -MF commands/$(DEPDIR)/xnu_uuid_module-xnu_uuid.Tpo -c -o commands/xnu_uuid_module-xnu_uuid.o `test -f 'commands/xnu_uuid.c' || echo '$(srcdir)/'`commands/xnu_uuid.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/$(DEPDIR)/xnu_uuid_module-xnu_uuid.Tpo commands/$(DEPDIR)/xnu_uuid_module-xnu_uuid.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/xnu_uuid.c' object='commands/xnu_uuid_module-xnu_uuid.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(xnu_uuid_module_CPPFLAGS) $(CPPFLAGS) $(xnu_uuid_module_CFLAGS) $(CFLAGS) -c -o commands/xnu_uuid_module-xnu_uuid.o `test -f 'commands/xnu_uuid.c' || echo '$(srcdir)/'`commands/xnu_uuid.c - -commands/xnu_uuid_module-xnu_uuid.obj: commands/xnu_uuid.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(xnu_uuid_module_CPPFLAGS) $(CPPFLAGS) $(xnu_uuid_module_CFLAGS) $(CFLAGS) -MT commands/xnu_uuid_module-xnu_uuid.obj -MD -MP -MF commands/$(DEPDIR)/xnu_uuid_module-xnu_uuid.Tpo -c -o commands/xnu_uuid_module-xnu_uuid.obj `if test -f 'commands/xnu_uuid.c'; then $(CYGPATH_W) 'commands/xnu_uuid.c'; else $(CYGPATH_W) '$(srcdir)/commands/xnu_uuid.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) commands/$(DEPDIR)/xnu_uuid_module-xnu_uuid.Tpo commands/$(DEPDIR)/xnu_uuid_module-xnu_uuid.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='commands/xnu_uuid.c' object='commands/xnu_uuid_module-xnu_uuid.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(xnu_uuid_module_CPPFLAGS) $(CPPFLAGS) $(xnu_uuid_module_CFLAGS) $(CFLAGS) -c -o commands/xnu_uuid_module-xnu_uuid.obj `if test -f 'commands/xnu_uuid.c'; then $(CYGPATH_W) 'commands/xnu_uuid.c'; else $(CYGPATH_W) '$(srcdir)/commands/xnu_uuid.c'; fi` - -tests/xnu_uuid_test_module-xnu_uuid_test.o: tests/xnu_uuid_test.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(xnu_uuid_test_module_CPPFLAGS) $(CPPFLAGS) $(xnu_uuid_test_module_CFLAGS) $(CFLAGS) -MT tests/xnu_uuid_test_module-xnu_uuid_test.o -MD -MP -MF tests/$(DEPDIR)/xnu_uuid_test_module-xnu_uuid_test.Tpo -c -o tests/xnu_uuid_test_module-xnu_uuid_test.o `test -f 'tests/xnu_uuid_test.c' || echo '$(srcdir)/'`tests/xnu_uuid_test.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) tests/$(DEPDIR)/xnu_uuid_test_module-xnu_uuid_test.Tpo tests/$(DEPDIR)/xnu_uuid_test_module-xnu_uuid_test.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='tests/xnu_uuid_test.c' object='tests/xnu_uuid_test_module-xnu_uuid_test.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(xnu_uuid_test_module_CPPFLAGS) $(CPPFLAGS) $(xnu_uuid_test_module_CFLAGS) $(CFLAGS) -c -o tests/xnu_uuid_test_module-xnu_uuid_test.o `test -f 'tests/xnu_uuid_test.c' || echo '$(srcdir)/'`tests/xnu_uuid_test.c - -tests/xnu_uuid_test_module-xnu_uuid_test.obj: tests/xnu_uuid_test.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(xnu_uuid_test_module_CPPFLAGS) $(CPPFLAGS) $(xnu_uuid_test_module_CFLAGS) $(CFLAGS) -MT tests/xnu_uuid_test_module-xnu_uuid_test.obj -MD -MP -MF tests/$(DEPDIR)/xnu_uuid_test_module-xnu_uuid_test.Tpo -c -o tests/xnu_uuid_test_module-xnu_uuid_test.obj `if test -f 'tests/xnu_uuid_test.c'; then $(CYGPATH_W) 'tests/xnu_uuid_test.c'; else $(CYGPATH_W) '$(srcdir)/tests/xnu_uuid_test.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) tests/$(DEPDIR)/xnu_uuid_test_module-xnu_uuid_test.Tpo tests/$(DEPDIR)/xnu_uuid_test_module-xnu_uuid_test.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='tests/xnu_uuid_test.c' object='tests/xnu_uuid_test_module-xnu_uuid_test.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(xnu_uuid_test_module_CPPFLAGS) $(CPPFLAGS) $(xnu_uuid_test_module_CFLAGS) $(CFLAGS) -c -o tests/xnu_uuid_test_module-xnu_uuid_test.obj `if test -f 'tests/xnu_uuid_test.c'; then $(CYGPATH_W) 'tests/xnu_uuid_test.c'; else $(CYGPATH_W) '$(srcdir)/tests/xnu_uuid_test.c'; fi` - -boot/decompressor/xz_decompress_image-minilib.o: boot/decompressor/minilib.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(xz_decompress_image_CPPFLAGS) $(CPPFLAGS) $(xz_decompress_image_CFLAGS) $(CFLAGS) -MT boot/decompressor/xz_decompress_image-minilib.o -MD -MP -MF boot/decompressor/$(DEPDIR)/xz_decompress_image-minilib.Tpo -c -o boot/decompressor/xz_decompress_image-minilib.o `test -f 'boot/decompressor/minilib.c' || echo '$(srcdir)/'`boot/decompressor/minilib.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) boot/decompressor/$(DEPDIR)/xz_decompress_image-minilib.Tpo boot/decompressor/$(DEPDIR)/xz_decompress_image-minilib.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='boot/decompressor/minilib.c' object='boot/decompressor/xz_decompress_image-minilib.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(xz_decompress_image_CPPFLAGS) $(CPPFLAGS) $(xz_decompress_image_CFLAGS) $(CFLAGS) -c -o boot/decompressor/xz_decompress_image-minilib.o `test -f 'boot/decompressor/minilib.c' || echo '$(srcdir)/'`boot/decompressor/minilib.c - -boot/decompressor/xz_decompress_image-minilib.obj: boot/decompressor/minilib.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(xz_decompress_image_CPPFLAGS) $(CPPFLAGS) $(xz_decompress_image_CFLAGS) $(CFLAGS) -MT boot/decompressor/xz_decompress_image-minilib.obj -MD -MP -MF boot/decompressor/$(DEPDIR)/xz_decompress_image-minilib.Tpo -c -o boot/decompressor/xz_decompress_image-minilib.obj `if test -f 'boot/decompressor/minilib.c'; then $(CYGPATH_W) 'boot/decompressor/minilib.c'; else $(CYGPATH_W) '$(srcdir)/boot/decompressor/minilib.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) boot/decompressor/$(DEPDIR)/xz_decompress_image-minilib.Tpo boot/decompressor/$(DEPDIR)/xz_decompress_image-minilib.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='boot/decompressor/minilib.c' object='boot/decompressor/xz_decompress_image-minilib.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(xz_decompress_image_CPPFLAGS) $(CPPFLAGS) $(xz_decompress_image_CFLAGS) $(CFLAGS) -c -o boot/decompressor/xz_decompress_image-minilib.obj `if test -f 'boot/decompressor/minilib.c'; then $(CYGPATH_W) 'boot/decompressor/minilib.c'; else $(CYGPATH_W) '$(srcdir)/boot/decompressor/minilib.c'; fi` - -boot/decompressor/xz_decompress_image-xz.o: boot/decompressor/xz.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(xz_decompress_image_CPPFLAGS) $(CPPFLAGS) $(xz_decompress_image_CFLAGS) $(CFLAGS) -MT boot/decompressor/xz_decompress_image-xz.o -MD -MP -MF boot/decompressor/$(DEPDIR)/xz_decompress_image-xz.Tpo -c -o boot/decompressor/xz_decompress_image-xz.o `test -f 'boot/decompressor/xz.c' || echo '$(srcdir)/'`boot/decompressor/xz.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) boot/decompressor/$(DEPDIR)/xz_decompress_image-xz.Tpo boot/decompressor/$(DEPDIR)/xz_decompress_image-xz.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='boot/decompressor/xz.c' object='boot/decompressor/xz_decompress_image-xz.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(xz_decompress_image_CPPFLAGS) $(CPPFLAGS) $(xz_decompress_image_CFLAGS) $(CFLAGS) -c -o boot/decompressor/xz_decompress_image-xz.o `test -f 'boot/decompressor/xz.c' || echo '$(srcdir)/'`boot/decompressor/xz.c - -boot/decompressor/xz_decompress_image-xz.obj: boot/decompressor/xz.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(xz_decompress_image_CPPFLAGS) $(CPPFLAGS) $(xz_decompress_image_CFLAGS) $(CFLAGS) -MT boot/decompressor/xz_decompress_image-xz.obj -MD -MP -MF boot/decompressor/$(DEPDIR)/xz_decompress_image-xz.Tpo -c -o boot/decompressor/xz_decompress_image-xz.obj `if test -f 'boot/decompressor/xz.c'; then $(CYGPATH_W) 'boot/decompressor/xz.c'; else $(CYGPATH_W) '$(srcdir)/boot/decompressor/xz.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) boot/decompressor/$(DEPDIR)/xz_decompress_image-xz.Tpo boot/decompressor/$(DEPDIR)/xz_decompress_image-xz.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='boot/decompressor/xz.c' object='boot/decompressor/xz_decompress_image-xz.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(xz_decompress_image_CPPFLAGS) $(CPPFLAGS) $(xz_decompress_image_CFLAGS) $(CFLAGS) -c -o boot/decompressor/xz_decompress_image-xz.obj `if test -f 'boot/decompressor/xz.c'; then $(CYGPATH_W) 'boot/decompressor/xz.c'; else $(CYGPATH_W) '$(srcdir)/boot/decompressor/xz.c'; fi` - -lib/xzembed/xz_decompress_image-xz_dec_bcj.o: lib/xzembed/xz_dec_bcj.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(xz_decompress_image_CPPFLAGS) $(CPPFLAGS) $(xz_decompress_image_CFLAGS) $(CFLAGS) -MT lib/xzembed/xz_decompress_image-xz_dec_bcj.o -MD -MP -MF lib/xzembed/$(DEPDIR)/xz_decompress_image-xz_dec_bcj.Tpo -c -o lib/xzembed/xz_decompress_image-xz_dec_bcj.o `test -f 'lib/xzembed/xz_dec_bcj.c' || echo '$(srcdir)/'`lib/xzembed/xz_dec_bcj.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/xzembed/$(DEPDIR)/xz_decompress_image-xz_dec_bcj.Tpo lib/xzembed/$(DEPDIR)/xz_decompress_image-xz_dec_bcj.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/xzembed/xz_dec_bcj.c' object='lib/xzembed/xz_decompress_image-xz_dec_bcj.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(xz_decompress_image_CPPFLAGS) $(CPPFLAGS) $(xz_decompress_image_CFLAGS) $(CFLAGS) -c -o lib/xzembed/xz_decompress_image-xz_dec_bcj.o `test -f 'lib/xzembed/xz_dec_bcj.c' || echo '$(srcdir)/'`lib/xzembed/xz_dec_bcj.c - -lib/xzembed/xz_decompress_image-xz_dec_bcj.obj: lib/xzembed/xz_dec_bcj.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(xz_decompress_image_CPPFLAGS) $(CPPFLAGS) $(xz_decompress_image_CFLAGS) $(CFLAGS) -MT lib/xzembed/xz_decompress_image-xz_dec_bcj.obj -MD -MP -MF lib/xzembed/$(DEPDIR)/xz_decompress_image-xz_dec_bcj.Tpo -c -o lib/xzembed/xz_decompress_image-xz_dec_bcj.obj `if test -f 'lib/xzembed/xz_dec_bcj.c'; then $(CYGPATH_W) 'lib/xzembed/xz_dec_bcj.c'; else $(CYGPATH_W) '$(srcdir)/lib/xzembed/xz_dec_bcj.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/xzembed/$(DEPDIR)/xz_decompress_image-xz_dec_bcj.Tpo lib/xzembed/$(DEPDIR)/xz_decompress_image-xz_dec_bcj.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/xzembed/xz_dec_bcj.c' object='lib/xzembed/xz_decompress_image-xz_dec_bcj.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(xz_decompress_image_CPPFLAGS) $(CPPFLAGS) $(xz_decompress_image_CFLAGS) $(CFLAGS) -c -o lib/xzembed/xz_decompress_image-xz_dec_bcj.obj `if test -f 'lib/xzembed/xz_dec_bcj.c'; then $(CYGPATH_W) 'lib/xzembed/xz_dec_bcj.c'; else $(CYGPATH_W) '$(srcdir)/lib/xzembed/xz_dec_bcj.c'; fi` - -lib/xzembed/xz_decompress_image-xz_dec_lzma2.o: lib/xzembed/xz_dec_lzma2.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(xz_decompress_image_CPPFLAGS) $(CPPFLAGS) $(xz_decompress_image_CFLAGS) $(CFLAGS) -MT lib/xzembed/xz_decompress_image-xz_dec_lzma2.o -MD -MP -MF lib/xzembed/$(DEPDIR)/xz_decompress_image-xz_dec_lzma2.Tpo -c -o lib/xzembed/xz_decompress_image-xz_dec_lzma2.o `test -f 'lib/xzembed/xz_dec_lzma2.c' || echo '$(srcdir)/'`lib/xzembed/xz_dec_lzma2.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/xzembed/$(DEPDIR)/xz_decompress_image-xz_dec_lzma2.Tpo lib/xzembed/$(DEPDIR)/xz_decompress_image-xz_dec_lzma2.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/xzembed/xz_dec_lzma2.c' object='lib/xzembed/xz_decompress_image-xz_dec_lzma2.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(xz_decompress_image_CPPFLAGS) $(CPPFLAGS) $(xz_decompress_image_CFLAGS) $(CFLAGS) -c -o lib/xzembed/xz_decompress_image-xz_dec_lzma2.o `test -f 'lib/xzembed/xz_dec_lzma2.c' || echo '$(srcdir)/'`lib/xzembed/xz_dec_lzma2.c - -lib/xzembed/xz_decompress_image-xz_dec_lzma2.obj: lib/xzembed/xz_dec_lzma2.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(xz_decompress_image_CPPFLAGS) $(CPPFLAGS) $(xz_decompress_image_CFLAGS) $(CFLAGS) -MT lib/xzembed/xz_decompress_image-xz_dec_lzma2.obj -MD -MP -MF lib/xzembed/$(DEPDIR)/xz_decompress_image-xz_dec_lzma2.Tpo -c -o lib/xzembed/xz_decompress_image-xz_dec_lzma2.obj `if test -f 'lib/xzembed/xz_dec_lzma2.c'; then $(CYGPATH_W) 'lib/xzembed/xz_dec_lzma2.c'; else $(CYGPATH_W) '$(srcdir)/lib/xzembed/xz_dec_lzma2.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/xzembed/$(DEPDIR)/xz_decompress_image-xz_dec_lzma2.Tpo lib/xzembed/$(DEPDIR)/xz_decompress_image-xz_dec_lzma2.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/xzembed/xz_dec_lzma2.c' object='lib/xzembed/xz_decompress_image-xz_dec_lzma2.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(xz_decompress_image_CPPFLAGS) $(CPPFLAGS) $(xz_decompress_image_CFLAGS) $(CFLAGS) -c -o lib/xzembed/xz_decompress_image-xz_dec_lzma2.obj `if test -f 'lib/xzembed/xz_dec_lzma2.c'; then $(CYGPATH_W) 'lib/xzembed/xz_dec_lzma2.c'; else $(CYGPATH_W) '$(srcdir)/lib/xzembed/xz_dec_lzma2.c'; fi` - -lib/xzembed/xz_decompress_image-xz_dec_stream.o: lib/xzembed/xz_dec_stream.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(xz_decompress_image_CPPFLAGS) $(CPPFLAGS) $(xz_decompress_image_CFLAGS) $(CFLAGS) -MT lib/xzembed/xz_decompress_image-xz_dec_stream.o -MD -MP -MF lib/xzembed/$(DEPDIR)/xz_decompress_image-xz_dec_stream.Tpo -c -o lib/xzembed/xz_decompress_image-xz_dec_stream.o `test -f 'lib/xzembed/xz_dec_stream.c' || echo '$(srcdir)/'`lib/xzembed/xz_dec_stream.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/xzembed/$(DEPDIR)/xz_decompress_image-xz_dec_stream.Tpo lib/xzembed/$(DEPDIR)/xz_decompress_image-xz_dec_stream.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/xzembed/xz_dec_stream.c' object='lib/xzembed/xz_decompress_image-xz_dec_stream.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(xz_decompress_image_CPPFLAGS) $(CPPFLAGS) $(xz_decompress_image_CFLAGS) $(CFLAGS) -c -o lib/xzembed/xz_decompress_image-xz_dec_stream.o `test -f 'lib/xzembed/xz_dec_stream.c' || echo '$(srcdir)/'`lib/xzembed/xz_dec_stream.c - -lib/xzembed/xz_decompress_image-xz_dec_stream.obj: lib/xzembed/xz_dec_stream.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(xz_decompress_image_CPPFLAGS) $(CPPFLAGS) $(xz_decompress_image_CFLAGS) $(CFLAGS) -MT lib/xzembed/xz_decompress_image-xz_dec_stream.obj -MD -MP -MF lib/xzembed/$(DEPDIR)/xz_decompress_image-xz_dec_stream.Tpo -c -o lib/xzembed/xz_decompress_image-xz_dec_stream.obj `if test -f 'lib/xzembed/xz_dec_stream.c'; then $(CYGPATH_W) 'lib/xzembed/xz_dec_stream.c'; else $(CYGPATH_W) '$(srcdir)/lib/xzembed/xz_dec_stream.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/xzembed/$(DEPDIR)/xz_decompress_image-xz_dec_stream.Tpo lib/xzembed/$(DEPDIR)/xz_decompress_image-xz_dec_stream.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/xzembed/xz_dec_stream.c' object='lib/xzembed/xz_decompress_image-xz_dec_stream.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(xz_decompress_image_CPPFLAGS) $(CPPFLAGS) $(xz_decompress_image_CFLAGS) $(CFLAGS) -c -o lib/xzembed/xz_decompress_image-xz_dec_stream.obj `if test -f 'lib/xzembed/xz_dec_stream.c'; then $(CYGPATH_W) 'lib/xzembed/xz_dec_stream.c'; else $(CYGPATH_W) '$(srcdir)/lib/xzembed/xz_dec_stream.c'; fi` - -kern/xz_decompress_image-compiler-rt.o: kern/compiler-rt.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(xz_decompress_image_CPPFLAGS) $(CPPFLAGS) $(xz_decompress_image_CFLAGS) $(CFLAGS) -MT kern/xz_decompress_image-compiler-rt.o -MD -MP -MF kern/$(DEPDIR)/xz_decompress_image-compiler-rt.Tpo -c -o kern/xz_decompress_image-compiler-rt.o `test -f 'kern/compiler-rt.c' || echo '$(srcdir)/'`kern/compiler-rt.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/$(DEPDIR)/xz_decompress_image-compiler-rt.Tpo kern/$(DEPDIR)/xz_decompress_image-compiler-rt.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/compiler-rt.c' object='kern/xz_decompress_image-compiler-rt.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(xz_decompress_image_CPPFLAGS) $(CPPFLAGS) $(xz_decompress_image_CFLAGS) $(CFLAGS) -c -o kern/xz_decompress_image-compiler-rt.o `test -f 'kern/compiler-rt.c' || echo '$(srcdir)/'`kern/compiler-rt.c - -kern/xz_decompress_image-compiler-rt.obj: kern/compiler-rt.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(xz_decompress_image_CPPFLAGS) $(CPPFLAGS) $(xz_decompress_image_CFLAGS) $(CFLAGS) -MT kern/xz_decompress_image-compiler-rt.obj -MD -MP -MF kern/$(DEPDIR)/xz_decompress_image-compiler-rt.Tpo -c -o kern/xz_decompress_image-compiler-rt.obj `if test -f 'kern/compiler-rt.c'; then $(CYGPATH_W) 'kern/compiler-rt.c'; else $(CYGPATH_W) '$(srcdir)/kern/compiler-rt.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) kern/$(DEPDIR)/xz_decompress_image-compiler-rt.Tpo kern/$(DEPDIR)/xz_decompress_image-compiler-rt.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='kern/compiler-rt.c' object='kern/xz_decompress_image-compiler-rt.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(xz_decompress_image_CPPFLAGS) $(CPPFLAGS) $(xz_decompress_image_CFLAGS) $(CFLAGS) -c -o kern/xz_decompress_image-compiler-rt.obj `if test -f 'kern/compiler-rt.c'; then $(CYGPATH_W) 'kern/compiler-rt.c'; else $(CYGPATH_W) '$(srcdir)/kern/compiler-rt.c'; fi` - -io/xzio_module-xzio.o: io/xzio.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(xzio_module_CPPFLAGS) $(CPPFLAGS) $(xzio_module_CFLAGS) $(CFLAGS) -MT io/xzio_module-xzio.o -MD -MP -MF io/$(DEPDIR)/xzio_module-xzio.Tpo -c -o io/xzio_module-xzio.o `test -f 'io/xzio.c' || echo '$(srcdir)/'`io/xzio.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) io/$(DEPDIR)/xzio_module-xzio.Tpo io/$(DEPDIR)/xzio_module-xzio.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='io/xzio.c' object='io/xzio_module-xzio.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(xzio_module_CPPFLAGS) $(CPPFLAGS) $(xzio_module_CFLAGS) $(CFLAGS) -c -o io/xzio_module-xzio.o `test -f 'io/xzio.c' || echo '$(srcdir)/'`io/xzio.c - -io/xzio_module-xzio.obj: io/xzio.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(xzio_module_CPPFLAGS) $(CPPFLAGS) $(xzio_module_CFLAGS) $(CFLAGS) -MT io/xzio_module-xzio.obj -MD -MP -MF io/$(DEPDIR)/xzio_module-xzio.Tpo -c -o io/xzio_module-xzio.obj `if test -f 'io/xzio.c'; then $(CYGPATH_W) 'io/xzio.c'; else $(CYGPATH_W) '$(srcdir)/io/xzio.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) io/$(DEPDIR)/xzio_module-xzio.Tpo io/$(DEPDIR)/xzio_module-xzio.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='io/xzio.c' object='io/xzio_module-xzio.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(xzio_module_CPPFLAGS) $(CPPFLAGS) $(xzio_module_CFLAGS) $(CFLAGS) -c -o io/xzio_module-xzio.obj `if test -f 'io/xzio.c'; then $(CYGPATH_W) 'io/xzio.c'; else $(CYGPATH_W) '$(srcdir)/io/xzio.c'; fi` - -lib/xzembed/xzio_module-xz_dec_bcj.o: lib/xzembed/xz_dec_bcj.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(xzio_module_CPPFLAGS) $(CPPFLAGS) $(xzio_module_CFLAGS) $(CFLAGS) -MT lib/xzembed/xzio_module-xz_dec_bcj.o -MD -MP -MF lib/xzembed/$(DEPDIR)/xzio_module-xz_dec_bcj.Tpo -c -o lib/xzembed/xzio_module-xz_dec_bcj.o `test -f 'lib/xzembed/xz_dec_bcj.c' || echo '$(srcdir)/'`lib/xzembed/xz_dec_bcj.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/xzembed/$(DEPDIR)/xzio_module-xz_dec_bcj.Tpo lib/xzembed/$(DEPDIR)/xzio_module-xz_dec_bcj.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/xzembed/xz_dec_bcj.c' object='lib/xzembed/xzio_module-xz_dec_bcj.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(xzio_module_CPPFLAGS) $(CPPFLAGS) $(xzio_module_CFLAGS) $(CFLAGS) -c -o lib/xzembed/xzio_module-xz_dec_bcj.o `test -f 'lib/xzembed/xz_dec_bcj.c' || echo '$(srcdir)/'`lib/xzembed/xz_dec_bcj.c - -lib/xzembed/xzio_module-xz_dec_bcj.obj: lib/xzembed/xz_dec_bcj.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(xzio_module_CPPFLAGS) $(CPPFLAGS) $(xzio_module_CFLAGS) $(CFLAGS) -MT lib/xzembed/xzio_module-xz_dec_bcj.obj -MD -MP -MF lib/xzembed/$(DEPDIR)/xzio_module-xz_dec_bcj.Tpo -c -o lib/xzembed/xzio_module-xz_dec_bcj.obj `if test -f 'lib/xzembed/xz_dec_bcj.c'; then $(CYGPATH_W) 'lib/xzembed/xz_dec_bcj.c'; else $(CYGPATH_W) '$(srcdir)/lib/xzembed/xz_dec_bcj.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/xzembed/$(DEPDIR)/xzio_module-xz_dec_bcj.Tpo lib/xzembed/$(DEPDIR)/xzio_module-xz_dec_bcj.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/xzembed/xz_dec_bcj.c' object='lib/xzembed/xzio_module-xz_dec_bcj.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(xzio_module_CPPFLAGS) $(CPPFLAGS) $(xzio_module_CFLAGS) $(CFLAGS) -c -o lib/xzembed/xzio_module-xz_dec_bcj.obj `if test -f 'lib/xzembed/xz_dec_bcj.c'; then $(CYGPATH_W) 'lib/xzembed/xz_dec_bcj.c'; else $(CYGPATH_W) '$(srcdir)/lib/xzembed/xz_dec_bcj.c'; fi` - -lib/xzembed/xzio_module-xz_dec_lzma2.o: lib/xzembed/xz_dec_lzma2.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(xzio_module_CPPFLAGS) $(CPPFLAGS) $(xzio_module_CFLAGS) $(CFLAGS) -MT lib/xzembed/xzio_module-xz_dec_lzma2.o -MD -MP -MF lib/xzembed/$(DEPDIR)/xzio_module-xz_dec_lzma2.Tpo -c -o lib/xzembed/xzio_module-xz_dec_lzma2.o `test -f 'lib/xzembed/xz_dec_lzma2.c' || echo '$(srcdir)/'`lib/xzembed/xz_dec_lzma2.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/xzembed/$(DEPDIR)/xzio_module-xz_dec_lzma2.Tpo lib/xzembed/$(DEPDIR)/xzio_module-xz_dec_lzma2.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/xzembed/xz_dec_lzma2.c' object='lib/xzembed/xzio_module-xz_dec_lzma2.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(xzio_module_CPPFLAGS) $(CPPFLAGS) $(xzio_module_CFLAGS) $(CFLAGS) -c -o lib/xzembed/xzio_module-xz_dec_lzma2.o `test -f 'lib/xzembed/xz_dec_lzma2.c' || echo '$(srcdir)/'`lib/xzembed/xz_dec_lzma2.c - -lib/xzembed/xzio_module-xz_dec_lzma2.obj: lib/xzembed/xz_dec_lzma2.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(xzio_module_CPPFLAGS) $(CPPFLAGS) $(xzio_module_CFLAGS) $(CFLAGS) -MT lib/xzembed/xzio_module-xz_dec_lzma2.obj -MD -MP -MF lib/xzembed/$(DEPDIR)/xzio_module-xz_dec_lzma2.Tpo -c -o lib/xzembed/xzio_module-xz_dec_lzma2.obj `if test -f 'lib/xzembed/xz_dec_lzma2.c'; then $(CYGPATH_W) 'lib/xzembed/xz_dec_lzma2.c'; else $(CYGPATH_W) '$(srcdir)/lib/xzembed/xz_dec_lzma2.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/xzembed/$(DEPDIR)/xzio_module-xz_dec_lzma2.Tpo lib/xzembed/$(DEPDIR)/xzio_module-xz_dec_lzma2.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/xzembed/xz_dec_lzma2.c' object='lib/xzembed/xzio_module-xz_dec_lzma2.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(xzio_module_CPPFLAGS) $(CPPFLAGS) $(xzio_module_CFLAGS) $(CFLAGS) -c -o lib/xzembed/xzio_module-xz_dec_lzma2.obj `if test -f 'lib/xzembed/xz_dec_lzma2.c'; then $(CYGPATH_W) 'lib/xzembed/xz_dec_lzma2.c'; else $(CYGPATH_W) '$(srcdir)/lib/xzembed/xz_dec_lzma2.c'; fi` - -lib/xzembed/xzio_module-xz_dec_stream.o: lib/xzembed/xz_dec_stream.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(xzio_module_CPPFLAGS) $(CPPFLAGS) $(xzio_module_CFLAGS) $(CFLAGS) -MT lib/xzembed/xzio_module-xz_dec_stream.o -MD -MP -MF lib/xzembed/$(DEPDIR)/xzio_module-xz_dec_stream.Tpo -c -o lib/xzembed/xzio_module-xz_dec_stream.o `test -f 'lib/xzembed/xz_dec_stream.c' || echo '$(srcdir)/'`lib/xzembed/xz_dec_stream.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/xzembed/$(DEPDIR)/xzio_module-xz_dec_stream.Tpo lib/xzembed/$(DEPDIR)/xzio_module-xz_dec_stream.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/xzembed/xz_dec_stream.c' object='lib/xzembed/xzio_module-xz_dec_stream.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(xzio_module_CPPFLAGS) $(CPPFLAGS) $(xzio_module_CFLAGS) $(CFLAGS) -c -o lib/xzembed/xzio_module-xz_dec_stream.o `test -f 'lib/xzembed/xz_dec_stream.c' || echo '$(srcdir)/'`lib/xzembed/xz_dec_stream.c - -lib/xzembed/xzio_module-xz_dec_stream.obj: lib/xzembed/xz_dec_stream.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(xzio_module_CPPFLAGS) $(CPPFLAGS) $(xzio_module_CFLAGS) $(CFLAGS) -MT lib/xzembed/xzio_module-xz_dec_stream.obj -MD -MP -MF lib/xzembed/$(DEPDIR)/xzio_module-xz_dec_stream.Tpo -c -o lib/xzembed/xzio_module-xz_dec_stream.obj `if test -f 'lib/xzembed/xz_dec_stream.c'; then $(CYGPATH_W) 'lib/xzembed/xz_dec_stream.c'; else $(CYGPATH_W) '$(srcdir)/lib/xzembed/xz_dec_stream.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/xzembed/$(DEPDIR)/xzio_module-xz_dec_stream.Tpo lib/xzembed/$(DEPDIR)/xzio_module-xz_dec_stream.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/xzembed/xz_dec_stream.c' object='lib/xzembed/xzio_module-xz_dec_stream.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(xzio_module_CPPFLAGS) $(CPPFLAGS) $(xzio_module_CFLAGS) $(CFLAGS) -c -o lib/xzembed/xzio_module-xz_dec_stream.obj `if test -f 'lib/xzembed/xz_dec_stream.c'; then $(CYGPATH_W) 'lib/xzembed/xz_dec_stream.c'; else $(CYGPATH_W) '$(srcdir)/lib/xzembed/xz_dec_stream.c'; fi` - -fs/zfs/zfs_module-zfs.o: fs/zfs/zfs.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(zfs_module_CPPFLAGS) $(CPPFLAGS) $(zfs_module_CFLAGS) $(CFLAGS) -MT fs/zfs/zfs_module-zfs.o -MD -MP -MF fs/zfs/$(DEPDIR)/zfs_module-zfs.Tpo -c -o fs/zfs/zfs_module-zfs.o `test -f 'fs/zfs/zfs.c' || echo '$(srcdir)/'`fs/zfs/zfs.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) fs/zfs/$(DEPDIR)/zfs_module-zfs.Tpo fs/zfs/$(DEPDIR)/zfs_module-zfs.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='fs/zfs/zfs.c' object='fs/zfs/zfs_module-zfs.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(zfs_module_CPPFLAGS) $(CPPFLAGS) $(zfs_module_CFLAGS) $(CFLAGS) -c -o fs/zfs/zfs_module-zfs.o `test -f 'fs/zfs/zfs.c' || echo '$(srcdir)/'`fs/zfs/zfs.c - -fs/zfs/zfs_module-zfs.obj: fs/zfs/zfs.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(zfs_module_CPPFLAGS) $(CPPFLAGS) $(zfs_module_CFLAGS) $(CFLAGS) -MT fs/zfs/zfs_module-zfs.obj -MD -MP -MF fs/zfs/$(DEPDIR)/zfs_module-zfs.Tpo -c -o fs/zfs/zfs_module-zfs.obj `if test -f 'fs/zfs/zfs.c'; then $(CYGPATH_W) 'fs/zfs/zfs.c'; else $(CYGPATH_W) '$(srcdir)/fs/zfs/zfs.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) fs/zfs/$(DEPDIR)/zfs_module-zfs.Tpo fs/zfs/$(DEPDIR)/zfs_module-zfs.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='fs/zfs/zfs.c' object='fs/zfs/zfs_module-zfs.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(zfs_module_CPPFLAGS) $(CPPFLAGS) $(zfs_module_CFLAGS) $(CFLAGS) -c -o fs/zfs/zfs_module-zfs.obj `if test -f 'fs/zfs/zfs.c'; then $(CYGPATH_W) 'fs/zfs/zfs.c'; else $(CYGPATH_W) '$(srcdir)/fs/zfs/zfs.c'; fi` - -fs/zfs/zfs_module-zfs_lzjb.o: fs/zfs/zfs_lzjb.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(zfs_module_CPPFLAGS) $(CPPFLAGS) $(zfs_module_CFLAGS) $(CFLAGS) -MT fs/zfs/zfs_module-zfs_lzjb.o -MD -MP -MF fs/zfs/$(DEPDIR)/zfs_module-zfs_lzjb.Tpo -c -o fs/zfs/zfs_module-zfs_lzjb.o `test -f 'fs/zfs/zfs_lzjb.c' || echo '$(srcdir)/'`fs/zfs/zfs_lzjb.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) fs/zfs/$(DEPDIR)/zfs_module-zfs_lzjb.Tpo fs/zfs/$(DEPDIR)/zfs_module-zfs_lzjb.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='fs/zfs/zfs_lzjb.c' object='fs/zfs/zfs_module-zfs_lzjb.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(zfs_module_CPPFLAGS) $(CPPFLAGS) $(zfs_module_CFLAGS) $(CFLAGS) -c -o fs/zfs/zfs_module-zfs_lzjb.o `test -f 'fs/zfs/zfs_lzjb.c' || echo '$(srcdir)/'`fs/zfs/zfs_lzjb.c - -fs/zfs/zfs_module-zfs_lzjb.obj: fs/zfs/zfs_lzjb.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(zfs_module_CPPFLAGS) $(CPPFLAGS) $(zfs_module_CFLAGS) $(CFLAGS) -MT fs/zfs/zfs_module-zfs_lzjb.obj -MD -MP -MF fs/zfs/$(DEPDIR)/zfs_module-zfs_lzjb.Tpo -c -o fs/zfs/zfs_module-zfs_lzjb.obj `if test -f 'fs/zfs/zfs_lzjb.c'; then $(CYGPATH_W) 'fs/zfs/zfs_lzjb.c'; else $(CYGPATH_W) '$(srcdir)/fs/zfs/zfs_lzjb.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) fs/zfs/$(DEPDIR)/zfs_module-zfs_lzjb.Tpo fs/zfs/$(DEPDIR)/zfs_module-zfs_lzjb.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='fs/zfs/zfs_lzjb.c' object='fs/zfs/zfs_module-zfs_lzjb.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(zfs_module_CPPFLAGS) $(CPPFLAGS) $(zfs_module_CFLAGS) $(CFLAGS) -c -o fs/zfs/zfs_module-zfs_lzjb.obj `if test -f 'fs/zfs/zfs_lzjb.c'; then $(CYGPATH_W) 'fs/zfs/zfs_lzjb.c'; else $(CYGPATH_W) '$(srcdir)/fs/zfs/zfs_lzjb.c'; fi` - -fs/zfs/zfs_module-zfs_lz4.o: fs/zfs/zfs_lz4.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(zfs_module_CPPFLAGS) $(CPPFLAGS) $(zfs_module_CFLAGS) $(CFLAGS) -MT fs/zfs/zfs_module-zfs_lz4.o -MD -MP -MF fs/zfs/$(DEPDIR)/zfs_module-zfs_lz4.Tpo -c -o fs/zfs/zfs_module-zfs_lz4.o `test -f 'fs/zfs/zfs_lz4.c' || echo '$(srcdir)/'`fs/zfs/zfs_lz4.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) fs/zfs/$(DEPDIR)/zfs_module-zfs_lz4.Tpo fs/zfs/$(DEPDIR)/zfs_module-zfs_lz4.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='fs/zfs/zfs_lz4.c' object='fs/zfs/zfs_module-zfs_lz4.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(zfs_module_CPPFLAGS) $(CPPFLAGS) $(zfs_module_CFLAGS) $(CFLAGS) -c -o fs/zfs/zfs_module-zfs_lz4.o `test -f 'fs/zfs/zfs_lz4.c' || echo '$(srcdir)/'`fs/zfs/zfs_lz4.c - -fs/zfs/zfs_module-zfs_lz4.obj: fs/zfs/zfs_lz4.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(zfs_module_CPPFLAGS) $(CPPFLAGS) $(zfs_module_CFLAGS) $(CFLAGS) -MT fs/zfs/zfs_module-zfs_lz4.obj -MD -MP -MF fs/zfs/$(DEPDIR)/zfs_module-zfs_lz4.Tpo -c -o fs/zfs/zfs_module-zfs_lz4.obj `if test -f 'fs/zfs/zfs_lz4.c'; then $(CYGPATH_W) 'fs/zfs/zfs_lz4.c'; else $(CYGPATH_W) '$(srcdir)/fs/zfs/zfs_lz4.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) fs/zfs/$(DEPDIR)/zfs_module-zfs_lz4.Tpo fs/zfs/$(DEPDIR)/zfs_module-zfs_lz4.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='fs/zfs/zfs_lz4.c' object='fs/zfs/zfs_module-zfs_lz4.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(zfs_module_CPPFLAGS) $(CPPFLAGS) $(zfs_module_CFLAGS) $(CFLAGS) -c -o fs/zfs/zfs_module-zfs_lz4.obj `if test -f 'fs/zfs/zfs_lz4.c'; then $(CYGPATH_W) 'fs/zfs/zfs_lz4.c'; else $(CYGPATH_W) '$(srcdir)/fs/zfs/zfs_lz4.c'; fi` - -fs/zfs/zfs_module-zfs_sha256.o: fs/zfs/zfs_sha256.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(zfs_module_CPPFLAGS) $(CPPFLAGS) $(zfs_module_CFLAGS) $(CFLAGS) -MT fs/zfs/zfs_module-zfs_sha256.o -MD -MP -MF fs/zfs/$(DEPDIR)/zfs_module-zfs_sha256.Tpo -c -o fs/zfs/zfs_module-zfs_sha256.o `test -f 'fs/zfs/zfs_sha256.c' || echo '$(srcdir)/'`fs/zfs/zfs_sha256.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) fs/zfs/$(DEPDIR)/zfs_module-zfs_sha256.Tpo fs/zfs/$(DEPDIR)/zfs_module-zfs_sha256.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='fs/zfs/zfs_sha256.c' object='fs/zfs/zfs_module-zfs_sha256.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(zfs_module_CPPFLAGS) $(CPPFLAGS) $(zfs_module_CFLAGS) $(CFLAGS) -c -o fs/zfs/zfs_module-zfs_sha256.o `test -f 'fs/zfs/zfs_sha256.c' || echo '$(srcdir)/'`fs/zfs/zfs_sha256.c - -fs/zfs/zfs_module-zfs_sha256.obj: fs/zfs/zfs_sha256.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(zfs_module_CPPFLAGS) $(CPPFLAGS) $(zfs_module_CFLAGS) $(CFLAGS) -MT fs/zfs/zfs_module-zfs_sha256.obj -MD -MP -MF fs/zfs/$(DEPDIR)/zfs_module-zfs_sha256.Tpo -c -o fs/zfs/zfs_module-zfs_sha256.obj `if test -f 'fs/zfs/zfs_sha256.c'; then $(CYGPATH_W) 'fs/zfs/zfs_sha256.c'; else $(CYGPATH_W) '$(srcdir)/fs/zfs/zfs_sha256.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) fs/zfs/$(DEPDIR)/zfs_module-zfs_sha256.Tpo fs/zfs/$(DEPDIR)/zfs_module-zfs_sha256.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='fs/zfs/zfs_sha256.c' object='fs/zfs/zfs_module-zfs_sha256.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(zfs_module_CPPFLAGS) $(CPPFLAGS) $(zfs_module_CFLAGS) $(CFLAGS) -c -o fs/zfs/zfs_module-zfs_sha256.obj `if test -f 'fs/zfs/zfs_sha256.c'; then $(CYGPATH_W) 'fs/zfs/zfs_sha256.c'; else $(CYGPATH_W) '$(srcdir)/fs/zfs/zfs_sha256.c'; fi` - -fs/zfs/zfs_module-zfs_fletcher.o: fs/zfs/zfs_fletcher.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(zfs_module_CPPFLAGS) $(CPPFLAGS) $(zfs_module_CFLAGS) $(CFLAGS) -MT fs/zfs/zfs_module-zfs_fletcher.o -MD -MP -MF fs/zfs/$(DEPDIR)/zfs_module-zfs_fletcher.Tpo -c -o fs/zfs/zfs_module-zfs_fletcher.o `test -f 'fs/zfs/zfs_fletcher.c' || echo '$(srcdir)/'`fs/zfs/zfs_fletcher.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) fs/zfs/$(DEPDIR)/zfs_module-zfs_fletcher.Tpo fs/zfs/$(DEPDIR)/zfs_module-zfs_fletcher.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='fs/zfs/zfs_fletcher.c' object='fs/zfs/zfs_module-zfs_fletcher.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(zfs_module_CPPFLAGS) $(CPPFLAGS) $(zfs_module_CFLAGS) $(CFLAGS) -c -o fs/zfs/zfs_module-zfs_fletcher.o `test -f 'fs/zfs/zfs_fletcher.c' || echo '$(srcdir)/'`fs/zfs/zfs_fletcher.c - -fs/zfs/zfs_module-zfs_fletcher.obj: fs/zfs/zfs_fletcher.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(zfs_module_CPPFLAGS) $(CPPFLAGS) $(zfs_module_CFLAGS) $(CFLAGS) -MT fs/zfs/zfs_module-zfs_fletcher.obj -MD -MP -MF fs/zfs/$(DEPDIR)/zfs_module-zfs_fletcher.Tpo -c -o fs/zfs/zfs_module-zfs_fletcher.obj `if test -f 'fs/zfs/zfs_fletcher.c'; then $(CYGPATH_W) 'fs/zfs/zfs_fletcher.c'; else $(CYGPATH_W) '$(srcdir)/fs/zfs/zfs_fletcher.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) fs/zfs/$(DEPDIR)/zfs_module-zfs_fletcher.Tpo fs/zfs/$(DEPDIR)/zfs_module-zfs_fletcher.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='fs/zfs/zfs_fletcher.c' object='fs/zfs/zfs_module-zfs_fletcher.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(zfs_module_CPPFLAGS) $(CPPFLAGS) $(zfs_module_CFLAGS) $(CFLAGS) -c -o fs/zfs/zfs_module-zfs_fletcher.obj `if test -f 'fs/zfs/zfs_fletcher.c'; then $(CYGPATH_W) 'fs/zfs/zfs_fletcher.c'; else $(CYGPATH_W) '$(srcdir)/fs/zfs/zfs_fletcher.c'; fi` - -fs/zfs/zfscrypt_module-zfscrypt.o: fs/zfs/zfscrypt.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(zfscrypt_module_CPPFLAGS) $(CPPFLAGS) $(zfscrypt_module_CFLAGS) $(CFLAGS) -MT fs/zfs/zfscrypt_module-zfscrypt.o -MD -MP -MF fs/zfs/$(DEPDIR)/zfscrypt_module-zfscrypt.Tpo -c -o fs/zfs/zfscrypt_module-zfscrypt.o `test -f 'fs/zfs/zfscrypt.c' || echo '$(srcdir)/'`fs/zfs/zfscrypt.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) fs/zfs/$(DEPDIR)/zfscrypt_module-zfscrypt.Tpo fs/zfs/$(DEPDIR)/zfscrypt_module-zfscrypt.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='fs/zfs/zfscrypt.c' object='fs/zfs/zfscrypt_module-zfscrypt.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(zfscrypt_module_CPPFLAGS) $(CPPFLAGS) $(zfscrypt_module_CFLAGS) $(CFLAGS) -c -o fs/zfs/zfscrypt_module-zfscrypt.o `test -f 'fs/zfs/zfscrypt.c' || echo '$(srcdir)/'`fs/zfs/zfscrypt.c - -fs/zfs/zfscrypt_module-zfscrypt.obj: fs/zfs/zfscrypt.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(zfscrypt_module_CPPFLAGS) $(CPPFLAGS) $(zfscrypt_module_CFLAGS) $(CFLAGS) -MT fs/zfs/zfscrypt_module-zfscrypt.obj -MD -MP -MF fs/zfs/$(DEPDIR)/zfscrypt_module-zfscrypt.Tpo -c -o fs/zfs/zfscrypt_module-zfscrypt.obj `if test -f 'fs/zfs/zfscrypt.c'; then $(CYGPATH_W) 'fs/zfs/zfscrypt.c'; else $(CYGPATH_W) '$(srcdir)/fs/zfs/zfscrypt.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) fs/zfs/$(DEPDIR)/zfscrypt_module-zfscrypt.Tpo fs/zfs/$(DEPDIR)/zfscrypt_module-zfscrypt.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='fs/zfs/zfscrypt.c' object='fs/zfs/zfscrypt_module-zfscrypt.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(zfscrypt_module_CPPFLAGS) $(CPPFLAGS) $(zfscrypt_module_CFLAGS) $(CFLAGS) -c -o fs/zfs/zfscrypt_module-zfscrypt.obj `if test -f 'fs/zfs/zfscrypt.c'; then $(CYGPATH_W) 'fs/zfs/zfscrypt.c'; else $(CYGPATH_W) '$(srcdir)/fs/zfs/zfscrypt.c'; fi` - -fs/zfs/zfsinfo_module-zfsinfo.o: fs/zfs/zfsinfo.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(zfsinfo_module_CPPFLAGS) $(CPPFLAGS) $(zfsinfo_module_CFLAGS) $(CFLAGS) -MT fs/zfs/zfsinfo_module-zfsinfo.o -MD -MP -MF fs/zfs/$(DEPDIR)/zfsinfo_module-zfsinfo.Tpo -c -o fs/zfs/zfsinfo_module-zfsinfo.o `test -f 'fs/zfs/zfsinfo.c' || echo '$(srcdir)/'`fs/zfs/zfsinfo.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) fs/zfs/$(DEPDIR)/zfsinfo_module-zfsinfo.Tpo fs/zfs/$(DEPDIR)/zfsinfo_module-zfsinfo.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='fs/zfs/zfsinfo.c' object='fs/zfs/zfsinfo_module-zfsinfo.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(zfsinfo_module_CPPFLAGS) $(CPPFLAGS) $(zfsinfo_module_CFLAGS) $(CFLAGS) -c -o fs/zfs/zfsinfo_module-zfsinfo.o `test -f 'fs/zfs/zfsinfo.c' || echo '$(srcdir)/'`fs/zfs/zfsinfo.c - -fs/zfs/zfsinfo_module-zfsinfo.obj: fs/zfs/zfsinfo.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(zfsinfo_module_CPPFLAGS) $(CPPFLAGS) $(zfsinfo_module_CFLAGS) $(CFLAGS) -MT fs/zfs/zfsinfo_module-zfsinfo.obj -MD -MP -MF fs/zfs/$(DEPDIR)/zfsinfo_module-zfsinfo.Tpo -c -o fs/zfs/zfsinfo_module-zfsinfo.obj `if test -f 'fs/zfs/zfsinfo.c'; then $(CYGPATH_W) 'fs/zfs/zfsinfo.c'; else $(CYGPATH_W) '$(srcdir)/fs/zfs/zfsinfo.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) fs/zfs/$(DEPDIR)/zfsinfo_module-zfsinfo.Tpo fs/zfs/$(DEPDIR)/zfsinfo_module-zfsinfo.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='fs/zfs/zfsinfo.c' object='fs/zfs/zfsinfo_module-zfsinfo.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(zfsinfo_module_CPPFLAGS) $(CPPFLAGS) $(zfsinfo_module_CFLAGS) $(CFLAGS) -c -o fs/zfs/zfsinfo_module-zfsinfo.obj `if test -f 'fs/zfs/zfsinfo.c'; then $(CYGPATH_W) 'fs/zfs/zfsinfo.c'; else $(CYGPATH_W) '$(srcdir)/fs/zfs/zfsinfo.c'; fi` - -lib/zstd/zstd_module-debug.o: lib/zstd/debug.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(zstd_module_CPPFLAGS) $(CPPFLAGS) $(zstd_module_CFLAGS) $(CFLAGS) -MT lib/zstd/zstd_module-debug.o -MD -MP -MF lib/zstd/$(DEPDIR)/zstd_module-debug.Tpo -c -o lib/zstd/zstd_module-debug.o `test -f 'lib/zstd/debug.c' || echo '$(srcdir)/'`lib/zstd/debug.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/zstd/$(DEPDIR)/zstd_module-debug.Tpo lib/zstd/$(DEPDIR)/zstd_module-debug.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/zstd/debug.c' object='lib/zstd/zstd_module-debug.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(zstd_module_CPPFLAGS) $(CPPFLAGS) $(zstd_module_CFLAGS) $(CFLAGS) -c -o lib/zstd/zstd_module-debug.o `test -f 'lib/zstd/debug.c' || echo '$(srcdir)/'`lib/zstd/debug.c - -lib/zstd/zstd_module-debug.obj: lib/zstd/debug.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(zstd_module_CPPFLAGS) $(CPPFLAGS) $(zstd_module_CFLAGS) $(CFLAGS) -MT lib/zstd/zstd_module-debug.obj -MD -MP -MF lib/zstd/$(DEPDIR)/zstd_module-debug.Tpo -c -o lib/zstd/zstd_module-debug.obj `if test -f 'lib/zstd/debug.c'; then $(CYGPATH_W) 'lib/zstd/debug.c'; else $(CYGPATH_W) '$(srcdir)/lib/zstd/debug.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/zstd/$(DEPDIR)/zstd_module-debug.Tpo lib/zstd/$(DEPDIR)/zstd_module-debug.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/zstd/debug.c' object='lib/zstd/zstd_module-debug.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(zstd_module_CPPFLAGS) $(CPPFLAGS) $(zstd_module_CFLAGS) $(CFLAGS) -c -o lib/zstd/zstd_module-debug.obj `if test -f 'lib/zstd/debug.c'; then $(CYGPATH_W) 'lib/zstd/debug.c'; else $(CYGPATH_W) '$(srcdir)/lib/zstd/debug.c'; fi` - -lib/zstd/zstd_module-entropy_common.o: lib/zstd/entropy_common.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(zstd_module_CPPFLAGS) $(CPPFLAGS) $(zstd_module_CFLAGS) $(CFLAGS) -MT lib/zstd/zstd_module-entropy_common.o -MD -MP -MF lib/zstd/$(DEPDIR)/zstd_module-entropy_common.Tpo -c -o lib/zstd/zstd_module-entropy_common.o `test -f 'lib/zstd/entropy_common.c' || echo '$(srcdir)/'`lib/zstd/entropy_common.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/zstd/$(DEPDIR)/zstd_module-entropy_common.Tpo lib/zstd/$(DEPDIR)/zstd_module-entropy_common.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/zstd/entropy_common.c' object='lib/zstd/zstd_module-entropy_common.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(zstd_module_CPPFLAGS) $(CPPFLAGS) $(zstd_module_CFLAGS) $(CFLAGS) -c -o lib/zstd/zstd_module-entropy_common.o `test -f 'lib/zstd/entropy_common.c' || echo '$(srcdir)/'`lib/zstd/entropy_common.c - -lib/zstd/zstd_module-entropy_common.obj: lib/zstd/entropy_common.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(zstd_module_CPPFLAGS) $(CPPFLAGS) $(zstd_module_CFLAGS) $(CFLAGS) -MT lib/zstd/zstd_module-entropy_common.obj -MD -MP -MF lib/zstd/$(DEPDIR)/zstd_module-entropy_common.Tpo -c -o lib/zstd/zstd_module-entropy_common.obj `if test -f 'lib/zstd/entropy_common.c'; then $(CYGPATH_W) 'lib/zstd/entropy_common.c'; else $(CYGPATH_W) '$(srcdir)/lib/zstd/entropy_common.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/zstd/$(DEPDIR)/zstd_module-entropy_common.Tpo lib/zstd/$(DEPDIR)/zstd_module-entropy_common.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/zstd/entropy_common.c' object='lib/zstd/zstd_module-entropy_common.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(zstd_module_CPPFLAGS) $(CPPFLAGS) $(zstd_module_CFLAGS) $(CFLAGS) -c -o lib/zstd/zstd_module-entropy_common.obj `if test -f 'lib/zstd/entropy_common.c'; then $(CYGPATH_W) 'lib/zstd/entropy_common.c'; else $(CYGPATH_W) '$(srcdir)/lib/zstd/entropy_common.c'; fi` - -lib/zstd/zstd_module-error_private.o: lib/zstd/error_private.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(zstd_module_CPPFLAGS) $(CPPFLAGS) $(zstd_module_CFLAGS) $(CFLAGS) -MT lib/zstd/zstd_module-error_private.o -MD -MP -MF lib/zstd/$(DEPDIR)/zstd_module-error_private.Tpo -c -o lib/zstd/zstd_module-error_private.o `test -f 'lib/zstd/error_private.c' || echo '$(srcdir)/'`lib/zstd/error_private.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/zstd/$(DEPDIR)/zstd_module-error_private.Tpo lib/zstd/$(DEPDIR)/zstd_module-error_private.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/zstd/error_private.c' object='lib/zstd/zstd_module-error_private.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(zstd_module_CPPFLAGS) $(CPPFLAGS) $(zstd_module_CFLAGS) $(CFLAGS) -c -o lib/zstd/zstd_module-error_private.o `test -f 'lib/zstd/error_private.c' || echo '$(srcdir)/'`lib/zstd/error_private.c - -lib/zstd/zstd_module-error_private.obj: lib/zstd/error_private.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(zstd_module_CPPFLAGS) $(CPPFLAGS) $(zstd_module_CFLAGS) $(CFLAGS) -MT lib/zstd/zstd_module-error_private.obj -MD -MP -MF lib/zstd/$(DEPDIR)/zstd_module-error_private.Tpo -c -o lib/zstd/zstd_module-error_private.obj `if test -f 'lib/zstd/error_private.c'; then $(CYGPATH_W) 'lib/zstd/error_private.c'; else $(CYGPATH_W) '$(srcdir)/lib/zstd/error_private.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/zstd/$(DEPDIR)/zstd_module-error_private.Tpo lib/zstd/$(DEPDIR)/zstd_module-error_private.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/zstd/error_private.c' object='lib/zstd/zstd_module-error_private.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(zstd_module_CPPFLAGS) $(CPPFLAGS) $(zstd_module_CFLAGS) $(CFLAGS) -c -o lib/zstd/zstd_module-error_private.obj `if test -f 'lib/zstd/error_private.c'; then $(CYGPATH_W) 'lib/zstd/error_private.c'; else $(CYGPATH_W) '$(srcdir)/lib/zstd/error_private.c'; fi` - -lib/zstd/zstd_module-fse_decompress.o: lib/zstd/fse_decompress.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(zstd_module_CPPFLAGS) $(CPPFLAGS) $(zstd_module_CFLAGS) $(CFLAGS) -MT lib/zstd/zstd_module-fse_decompress.o -MD -MP -MF lib/zstd/$(DEPDIR)/zstd_module-fse_decompress.Tpo -c -o lib/zstd/zstd_module-fse_decompress.o `test -f 'lib/zstd/fse_decompress.c' || echo '$(srcdir)/'`lib/zstd/fse_decompress.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/zstd/$(DEPDIR)/zstd_module-fse_decompress.Tpo lib/zstd/$(DEPDIR)/zstd_module-fse_decompress.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/zstd/fse_decompress.c' object='lib/zstd/zstd_module-fse_decompress.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(zstd_module_CPPFLAGS) $(CPPFLAGS) $(zstd_module_CFLAGS) $(CFLAGS) -c -o lib/zstd/zstd_module-fse_decompress.o `test -f 'lib/zstd/fse_decompress.c' || echo '$(srcdir)/'`lib/zstd/fse_decompress.c - -lib/zstd/zstd_module-fse_decompress.obj: lib/zstd/fse_decompress.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(zstd_module_CPPFLAGS) $(CPPFLAGS) $(zstd_module_CFLAGS) $(CFLAGS) -MT lib/zstd/zstd_module-fse_decompress.obj -MD -MP -MF lib/zstd/$(DEPDIR)/zstd_module-fse_decompress.Tpo -c -o lib/zstd/zstd_module-fse_decompress.obj `if test -f 'lib/zstd/fse_decompress.c'; then $(CYGPATH_W) 'lib/zstd/fse_decompress.c'; else $(CYGPATH_W) '$(srcdir)/lib/zstd/fse_decompress.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/zstd/$(DEPDIR)/zstd_module-fse_decompress.Tpo lib/zstd/$(DEPDIR)/zstd_module-fse_decompress.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/zstd/fse_decompress.c' object='lib/zstd/zstd_module-fse_decompress.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(zstd_module_CPPFLAGS) $(CPPFLAGS) $(zstd_module_CFLAGS) $(CFLAGS) -c -o lib/zstd/zstd_module-fse_decompress.obj `if test -f 'lib/zstd/fse_decompress.c'; then $(CYGPATH_W) 'lib/zstd/fse_decompress.c'; else $(CYGPATH_W) '$(srcdir)/lib/zstd/fse_decompress.c'; fi` - -lib/zstd/zstd_module-huf_decompress.o: lib/zstd/huf_decompress.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(zstd_module_CPPFLAGS) $(CPPFLAGS) $(zstd_module_CFLAGS) $(CFLAGS) -MT lib/zstd/zstd_module-huf_decompress.o -MD -MP -MF lib/zstd/$(DEPDIR)/zstd_module-huf_decompress.Tpo -c -o lib/zstd/zstd_module-huf_decompress.o `test -f 'lib/zstd/huf_decompress.c' || echo '$(srcdir)/'`lib/zstd/huf_decompress.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/zstd/$(DEPDIR)/zstd_module-huf_decompress.Tpo lib/zstd/$(DEPDIR)/zstd_module-huf_decompress.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/zstd/huf_decompress.c' object='lib/zstd/zstd_module-huf_decompress.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(zstd_module_CPPFLAGS) $(CPPFLAGS) $(zstd_module_CFLAGS) $(CFLAGS) -c -o lib/zstd/zstd_module-huf_decompress.o `test -f 'lib/zstd/huf_decompress.c' || echo '$(srcdir)/'`lib/zstd/huf_decompress.c - -lib/zstd/zstd_module-huf_decompress.obj: lib/zstd/huf_decompress.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(zstd_module_CPPFLAGS) $(CPPFLAGS) $(zstd_module_CFLAGS) $(CFLAGS) -MT lib/zstd/zstd_module-huf_decompress.obj -MD -MP -MF lib/zstd/$(DEPDIR)/zstd_module-huf_decompress.Tpo -c -o lib/zstd/zstd_module-huf_decompress.obj `if test -f 'lib/zstd/huf_decompress.c'; then $(CYGPATH_W) 'lib/zstd/huf_decompress.c'; else $(CYGPATH_W) '$(srcdir)/lib/zstd/huf_decompress.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/zstd/$(DEPDIR)/zstd_module-huf_decompress.Tpo lib/zstd/$(DEPDIR)/zstd_module-huf_decompress.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/zstd/huf_decompress.c' object='lib/zstd/zstd_module-huf_decompress.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(zstd_module_CPPFLAGS) $(CPPFLAGS) $(zstd_module_CFLAGS) $(CFLAGS) -c -o lib/zstd/zstd_module-huf_decompress.obj `if test -f 'lib/zstd/huf_decompress.c'; then $(CYGPATH_W) 'lib/zstd/huf_decompress.c'; else $(CYGPATH_W) '$(srcdir)/lib/zstd/huf_decompress.c'; fi` - -lib/zstd/zstd_module-module.o: lib/zstd/module.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(zstd_module_CPPFLAGS) $(CPPFLAGS) $(zstd_module_CFLAGS) $(CFLAGS) -MT lib/zstd/zstd_module-module.o -MD -MP -MF lib/zstd/$(DEPDIR)/zstd_module-module.Tpo -c -o lib/zstd/zstd_module-module.o `test -f 'lib/zstd/module.c' || echo '$(srcdir)/'`lib/zstd/module.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/zstd/$(DEPDIR)/zstd_module-module.Tpo lib/zstd/$(DEPDIR)/zstd_module-module.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/zstd/module.c' object='lib/zstd/zstd_module-module.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(zstd_module_CPPFLAGS) $(CPPFLAGS) $(zstd_module_CFLAGS) $(CFLAGS) -c -o lib/zstd/zstd_module-module.o `test -f 'lib/zstd/module.c' || echo '$(srcdir)/'`lib/zstd/module.c - -lib/zstd/zstd_module-module.obj: lib/zstd/module.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(zstd_module_CPPFLAGS) $(CPPFLAGS) $(zstd_module_CFLAGS) $(CFLAGS) -MT lib/zstd/zstd_module-module.obj -MD -MP -MF lib/zstd/$(DEPDIR)/zstd_module-module.Tpo -c -o lib/zstd/zstd_module-module.obj `if test -f 'lib/zstd/module.c'; then $(CYGPATH_W) 'lib/zstd/module.c'; else $(CYGPATH_W) '$(srcdir)/lib/zstd/module.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/zstd/$(DEPDIR)/zstd_module-module.Tpo lib/zstd/$(DEPDIR)/zstd_module-module.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/zstd/module.c' object='lib/zstd/zstd_module-module.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(zstd_module_CPPFLAGS) $(CPPFLAGS) $(zstd_module_CFLAGS) $(CFLAGS) -c -o lib/zstd/zstd_module-module.obj `if test -f 'lib/zstd/module.c'; then $(CYGPATH_W) 'lib/zstd/module.c'; else $(CYGPATH_W) '$(srcdir)/lib/zstd/module.c'; fi` - -lib/zstd/zstd_module-xxhash.o: lib/zstd/xxhash.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(zstd_module_CPPFLAGS) $(CPPFLAGS) $(zstd_module_CFLAGS) $(CFLAGS) -MT lib/zstd/zstd_module-xxhash.o -MD -MP -MF lib/zstd/$(DEPDIR)/zstd_module-xxhash.Tpo -c -o lib/zstd/zstd_module-xxhash.o `test -f 'lib/zstd/xxhash.c' || echo '$(srcdir)/'`lib/zstd/xxhash.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/zstd/$(DEPDIR)/zstd_module-xxhash.Tpo lib/zstd/$(DEPDIR)/zstd_module-xxhash.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/zstd/xxhash.c' object='lib/zstd/zstd_module-xxhash.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(zstd_module_CPPFLAGS) $(CPPFLAGS) $(zstd_module_CFLAGS) $(CFLAGS) -c -o lib/zstd/zstd_module-xxhash.o `test -f 'lib/zstd/xxhash.c' || echo '$(srcdir)/'`lib/zstd/xxhash.c - -lib/zstd/zstd_module-xxhash.obj: lib/zstd/xxhash.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(zstd_module_CPPFLAGS) $(CPPFLAGS) $(zstd_module_CFLAGS) $(CFLAGS) -MT lib/zstd/zstd_module-xxhash.obj -MD -MP -MF lib/zstd/$(DEPDIR)/zstd_module-xxhash.Tpo -c -o lib/zstd/zstd_module-xxhash.obj `if test -f 'lib/zstd/xxhash.c'; then $(CYGPATH_W) 'lib/zstd/xxhash.c'; else $(CYGPATH_W) '$(srcdir)/lib/zstd/xxhash.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/zstd/$(DEPDIR)/zstd_module-xxhash.Tpo lib/zstd/$(DEPDIR)/zstd_module-xxhash.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/zstd/xxhash.c' object='lib/zstd/zstd_module-xxhash.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(zstd_module_CPPFLAGS) $(CPPFLAGS) $(zstd_module_CFLAGS) $(CFLAGS) -c -o lib/zstd/zstd_module-xxhash.obj `if test -f 'lib/zstd/xxhash.c'; then $(CYGPATH_W) 'lib/zstd/xxhash.c'; else $(CYGPATH_W) '$(srcdir)/lib/zstd/xxhash.c'; fi` - -lib/zstd/zstd_module-zstd_common.o: lib/zstd/zstd_common.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(zstd_module_CPPFLAGS) $(CPPFLAGS) $(zstd_module_CFLAGS) $(CFLAGS) -MT lib/zstd/zstd_module-zstd_common.o -MD -MP -MF lib/zstd/$(DEPDIR)/zstd_module-zstd_common.Tpo -c -o lib/zstd/zstd_module-zstd_common.o `test -f 'lib/zstd/zstd_common.c' || echo '$(srcdir)/'`lib/zstd/zstd_common.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/zstd/$(DEPDIR)/zstd_module-zstd_common.Tpo lib/zstd/$(DEPDIR)/zstd_module-zstd_common.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/zstd/zstd_common.c' object='lib/zstd/zstd_module-zstd_common.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(zstd_module_CPPFLAGS) $(CPPFLAGS) $(zstd_module_CFLAGS) $(CFLAGS) -c -o lib/zstd/zstd_module-zstd_common.o `test -f 'lib/zstd/zstd_common.c' || echo '$(srcdir)/'`lib/zstd/zstd_common.c - -lib/zstd/zstd_module-zstd_common.obj: lib/zstd/zstd_common.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(zstd_module_CPPFLAGS) $(CPPFLAGS) $(zstd_module_CFLAGS) $(CFLAGS) -MT lib/zstd/zstd_module-zstd_common.obj -MD -MP -MF lib/zstd/$(DEPDIR)/zstd_module-zstd_common.Tpo -c -o lib/zstd/zstd_module-zstd_common.obj `if test -f 'lib/zstd/zstd_common.c'; then $(CYGPATH_W) 'lib/zstd/zstd_common.c'; else $(CYGPATH_W) '$(srcdir)/lib/zstd/zstd_common.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/zstd/$(DEPDIR)/zstd_module-zstd_common.Tpo lib/zstd/$(DEPDIR)/zstd_module-zstd_common.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/zstd/zstd_common.c' object='lib/zstd/zstd_module-zstd_common.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(zstd_module_CPPFLAGS) $(CPPFLAGS) $(zstd_module_CFLAGS) $(CFLAGS) -c -o lib/zstd/zstd_module-zstd_common.obj `if test -f 'lib/zstd/zstd_common.c'; then $(CYGPATH_W) 'lib/zstd/zstd_common.c'; else $(CYGPATH_W) '$(srcdir)/lib/zstd/zstd_common.c'; fi` - -lib/zstd/zstd_module-zstd_decompress.o: lib/zstd/zstd_decompress.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(zstd_module_CPPFLAGS) $(CPPFLAGS) $(zstd_module_CFLAGS) $(CFLAGS) -MT lib/zstd/zstd_module-zstd_decompress.o -MD -MP -MF lib/zstd/$(DEPDIR)/zstd_module-zstd_decompress.Tpo -c -o lib/zstd/zstd_module-zstd_decompress.o `test -f 'lib/zstd/zstd_decompress.c' || echo '$(srcdir)/'`lib/zstd/zstd_decompress.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/zstd/$(DEPDIR)/zstd_module-zstd_decompress.Tpo lib/zstd/$(DEPDIR)/zstd_module-zstd_decompress.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/zstd/zstd_decompress.c' object='lib/zstd/zstd_module-zstd_decompress.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(zstd_module_CPPFLAGS) $(CPPFLAGS) $(zstd_module_CFLAGS) $(CFLAGS) -c -o lib/zstd/zstd_module-zstd_decompress.o `test -f 'lib/zstd/zstd_decompress.c' || echo '$(srcdir)/'`lib/zstd/zstd_decompress.c - -lib/zstd/zstd_module-zstd_decompress.obj: lib/zstd/zstd_decompress.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(zstd_module_CPPFLAGS) $(CPPFLAGS) $(zstd_module_CFLAGS) $(CFLAGS) -MT lib/zstd/zstd_module-zstd_decompress.obj -MD -MP -MF lib/zstd/$(DEPDIR)/zstd_module-zstd_decompress.Tpo -c -o lib/zstd/zstd_module-zstd_decompress.obj `if test -f 'lib/zstd/zstd_decompress.c'; then $(CYGPATH_W) 'lib/zstd/zstd_decompress.c'; else $(CYGPATH_W) '$(srcdir)/lib/zstd/zstd_decompress.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) lib/zstd/$(DEPDIR)/zstd_module-zstd_decompress.Tpo lib/zstd/$(DEPDIR)/zstd_module-zstd_decompress.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib/zstd/zstd_decompress.c' object='lib/zstd/zstd_module-zstd_decompress.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(zstd_module_CPPFLAGS) $(CPPFLAGS) $(zstd_module_CFLAGS) $(CFLAGS) -c -o lib/zstd/zstd_module-zstd_decompress.obj `if test -f 'lib/zstd/zstd_decompress.c'; then $(CYGPATH_W) 'lib/zstd/zstd_decompress.c'; else $(CYGPATH_W) '$(srcdir)/lib/zstd/zstd_decompress.c'; fi` -install-man1: $(man_MANS) - @$(NORMAL_INSTALL) - @list1=''; \ - list2='$(man_MANS)'; \ - test -n "$(man1dir)" \ - && test -n "`echo $$list1$$list2`" \ - || exit 0; \ - echo " $(MKDIR_P) '$(DESTDIR)$(man1dir)'"; \ - $(MKDIR_P) "$(DESTDIR)$(man1dir)" || exit 1; \ - { for i in $$list1; do echo "$$i"; done; \ - if test -n "$$list2"; then \ - for i in $$list2; do echo "$$i"; done \ - | sed -n '/\.1[a-z]*$$/p'; \ - fi; \ - } | while read p; do \ - if test -f $$p; then d=; else d="$(srcdir)/"; fi; \ - echo "$$d$$p"; echo "$$p"; \ - done | \ - sed -e 'n;s,.*/,,;p;h;s,.*\.,,;s,^[^1][0-9a-z]*$$,1,;x' \ - -e 's,\.[0-9a-z]*$$,,;$(transform);G;s,\n,.,' | \ - sed 'N;N;s,\n, ,g' | { \ - list=; while read file base inst; do \ - if test "$$base" = "$$inst"; then list="$$list $$file"; else \ - echo " $(INSTALL_DATA) '$$file' '$(DESTDIR)$(man1dir)/$$inst'"; \ - $(INSTALL_DATA) "$$file" "$(DESTDIR)$(man1dir)/$$inst" || exit $$?; \ - fi; \ - done; \ - for i in $$list; do echo "$$i"; done | $(am__base_list) | \ - while read files; do \ - test -z "$$files" || { \ - echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(man1dir)'"; \ - $(INSTALL_DATA) $$files "$(DESTDIR)$(man1dir)" || exit $$?; }; \ - done; } - -uninstall-man1: - @$(NORMAL_UNINSTALL) - @list=''; test -n "$(man1dir)" || exit 0; \ - files=`{ for i in $$list; do echo "$$i"; done; \ - l2='$(man_MANS)'; for i in $$l2; do echo "$$i"; done | \ - sed -n '/\.1[a-z]*$$/p'; \ - } | sed -e 's,.*/,,;h;s,.*\.,,;s,^[^1][0-9a-z]*$$,1,;x' \ - -e 's,\.[0-9a-z]*$$,,;$(transform);G;s,\n,.,'`; \ - dir='$(DESTDIR)$(man1dir)'; $(am__uninstall_files_from_dir) -install-dist_grubconfDATA: $(dist_grubconf_DATA) - @$(NORMAL_INSTALL) - @list='$(dist_grubconf_DATA)'; test -n "$(grubconfdir)" || list=; \ - if test -n "$$list"; then \ - echo " $(MKDIR_P) '$(DESTDIR)$(grubconfdir)'"; \ - $(MKDIR_P) "$(DESTDIR)$(grubconfdir)" || exit 1; \ - fi; \ - for p in $$list; do \ - if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ - echo "$$d$$p"; \ - done | $(am__base_list) | \ - while read files; do \ - echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(grubconfdir)'"; \ - $(INSTALL_DATA) $$files "$(DESTDIR)$(grubconfdir)" || exit $$?; \ - done - -uninstall-dist_grubconfDATA: - @$(NORMAL_UNINSTALL) - @list='$(dist_grubconf_DATA)'; test -n "$(grubconfdir)" || list=; \ - files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ - dir='$(DESTDIR)$(grubconfdir)'; $(am__uninstall_files_from_dir) -install-pkgdataDATA: $(pkgdata_DATA) - @$(NORMAL_INSTALL) - @list='$(pkgdata_DATA)'; test -n "$(pkgdatadir)" || list=; \ - if test -n "$$list"; then \ - echo " $(MKDIR_P) '$(DESTDIR)$(pkgdatadir)'"; \ - $(MKDIR_P) "$(DESTDIR)$(pkgdatadir)" || exit 1; \ - fi; \ - for p in $$list; do \ - if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ - echo "$$d$$p"; \ - done | $(am__base_list) | \ - while read files; do \ - echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(pkgdatadir)'"; \ - $(INSTALL_DATA) $$files "$(DESTDIR)$(pkgdatadir)" || exit $$?; \ - done - -uninstall-pkgdataDATA: - @$(NORMAL_UNINSTALL) - @list='$(pkgdata_DATA)'; test -n "$(pkgdatadir)" || list=; \ - files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ - dir='$(DESTDIR)$(pkgdatadir)'; $(am__uninstall_files_from_dir) -install-platformDATA: $(platform_DATA) - @$(NORMAL_INSTALL) - @list='$(platform_DATA)'; test -n "$(platformdir)" || list=; \ - if test -n "$$list"; then \ - echo " $(MKDIR_P) '$(DESTDIR)$(platformdir)'"; \ - $(MKDIR_P) "$(DESTDIR)$(platformdir)" || exit 1; \ - fi; \ - for p in $$list; do \ - if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ - echo "$$d$$p"; \ - done | $(am__base_list) | \ - while read files; do \ - echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(platformdir)'"; \ - $(INSTALL_DATA) $$files "$(DESTDIR)$(platformdir)" || exit $$?; \ - done - -uninstall-platformDATA: - @$(NORMAL_UNINSTALL) - @list='$(platform_DATA)'; test -n "$(platformdir)" || list=; \ - files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ - dir='$(DESTDIR)$(platformdir)'; $(am__uninstall_files_from_dir) - -ID: $(am__tagged_files) - $(am__define_uniq_tagged_files); mkid -fID $$unique -tags: tags-am -TAGS: tags - -tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files) - set x; \ - here=`pwd`; \ - $(am__define_uniq_tagged_files); \ - shift; \ - if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \ - test -n "$$unique" || unique=$$empty_fix; \ - if test $$# -gt 0; then \ - $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ - "$$@" $$unique; \ - else \ - $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ - $$unique; \ - fi; \ - fi -ctags: ctags-am - -CTAGS: ctags -ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files) - $(am__define_uniq_tagged_files); \ - test -z "$(CTAGS_ARGS)$$unique" \ - || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ - $$unique - -GTAGS: - here=`$(am__cd) $(top_builddir) && pwd` \ - && $(am__cd) $(top_srcdir) \ - && gtags -i $(GTAGS_ARGS) "$$here" -cscopelist: cscopelist-am - -cscopelist-am: $(am__tagged_files) - list='$(am__tagged_files)'; \ - case "$(srcdir)" in \ - [\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \ - *) sdir=$(subdir)/$(srcdir) ;; \ - esac; \ - for i in $$list; do \ - if test -f "$$i"; then \ - echo "$(subdir)/$$i"; \ - else \ - echo "$$sdir/$$i"; \ - fi; \ - done >> $(top_builddir)/cscope.files - -distclean-tags: - -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags - -# Recover from deleted '.trs' file; this should ensure that -# "rm -f foo.log; make foo.trs" re-run 'foo.test', and re-create -# both 'foo.log' and 'foo.trs'. Break the recipe in two subshells -# to avoid problems with "make -n". -.log.trs: - rm -f $< $@ - $(MAKE) $(AM_MAKEFLAGS) $< - -# Leading 'am--fnord' is there to ensure the list of targets does not -# expand to empty, as could happen e.g. with make check TESTS=''. -am--fnord $(TEST_LOGS) $(TEST_LOGS:.log=.trs): $(am__force_recheck) -am--force-recheck: - @: - -$(TEST_SUITE_LOG): $(TEST_LOGS) - @$(am__set_TESTS_bases); \ - am__f_ok () { test -f "$$1" && test -r "$$1"; }; \ - redo_bases=`for i in $$bases; do \ - am__f_ok $$i.trs && am__f_ok $$i.log || echo $$i; \ - done`; \ - if test -n "$$redo_bases"; then \ - redo_logs=`for i in $$redo_bases; do echo $$i.log; done`; \ - redo_results=`for i in $$redo_bases; do echo $$i.trs; done`; \ - if $(am__make_dryrun); then :; else \ - rm -f $$redo_logs && rm -f $$redo_results || exit 1; \ - fi; \ - fi; \ - if test -n "$$am__remaking_logs"; then \ - echo "fatal: making $(TEST_SUITE_LOG): possible infinite" \ - "recursion detected" >&2; \ - elif test -n "$$redo_logs"; then \ - am__remaking_logs=yes $(MAKE) $(AM_MAKEFLAGS) $$redo_logs; \ - fi; \ - if $(am__make_dryrun); then :; else \ - st=0; \ - errmsg="fatal: making $(TEST_SUITE_LOG): failed to create"; \ - for i in $$redo_bases; do \ - test -f $$i.trs && test -r $$i.trs \ - || { echo "$$errmsg $$i.trs" >&2; st=1; }; \ - test -f $$i.log && test -r $$i.log \ - || { echo "$$errmsg $$i.log" >&2; st=1; }; \ - done; \ - test $$st -eq 0 || exit 1; \ - fi - @$(am__sh_e_setup); $(am__tty_colors); $(am__set_TESTS_bases); \ - ws='[ ]'; \ - results=`for b in $$bases; do echo $$b.trs; done`; \ - test -n "$$results" || results=/dev/null; \ - all=` grep "^$$ws*:test-result:" $$results | wc -l`; \ - pass=` grep "^$$ws*:test-result:$$ws*PASS" $$results | wc -l`; \ - fail=` grep "^$$ws*:test-result:$$ws*FAIL" $$results | wc -l`; \ - skip=` grep "^$$ws*:test-result:$$ws*SKIP" $$results | wc -l`; \ - xfail=`grep "^$$ws*:test-result:$$ws*XFAIL" $$results | wc -l`; \ - xpass=`grep "^$$ws*:test-result:$$ws*XPASS" $$results | wc -l`; \ - error=`grep "^$$ws*:test-result:$$ws*ERROR" $$results | wc -l`; \ - if test `expr $$fail + $$xpass + $$error` -eq 0; then \ - success=true; \ - else \ - success=false; \ - fi; \ - br='==================='; br=$$br$$br$$br$$br; \ - result_count () \ - { \ - if test x"$$1" = x"--maybe-color"; then \ - maybe_colorize=yes; \ - elif test x"$$1" = x"--no-color"; then \ - maybe_colorize=no; \ - else \ - echo "$@: invalid 'result_count' usage" >&2; exit 4; \ - fi; \ - shift; \ - desc=$$1 count=$$2; \ - if test $$maybe_colorize = yes && test $$count -gt 0; then \ - color_start=$$3 color_end=$$std; \ - else \ - color_start= color_end=; \ - fi; \ - echo "$${color_start}# $$desc $$count$${color_end}"; \ - }; \ - create_testsuite_report () \ - { \ - result_count $$1 "TOTAL:" $$all "$$brg"; \ - result_count $$1 "PASS: " $$pass "$$grn"; \ - result_count $$1 "SKIP: " $$skip "$$blu"; \ - result_count $$1 "XFAIL:" $$xfail "$$lgn"; \ - result_count $$1 "FAIL: " $$fail "$$red"; \ - result_count $$1 "XPASS:" $$xpass "$$red"; \ - result_count $$1 "ERROR:" $$error "$$mgn"; \ - }; \ - { \ - echo "$(PACKAGE_STRING): $(subdir)/$(TEST_SUITE_LOG)" | \ - $(am__rst_title); \ - create_testsuite_report --no-color; \ - echo; \ - echo ".. contents:: :depth: 2"; \ - echo; \ - for b in $$bases; do echo $$b; done \ - | $(am__create_global_log); \ - } >$(TEST_SUITE_LOG).tmp || exit 1; \ - mv $(TEST_SUITE_LOG).tmp $(TEST_SUITE_LOG); \ - if $$success; then \ - col="$$grn"; \ - else \ - col="$$red"; \ - test x"$$VERBOSE" = x || cat $(TEST_SUITE_LOG); \ - fi; \ - echo "$${col}$$br$${std}"; \ - echo "$${col}Testsuite summary for $(PACKAGE_STRING)$${std}"; \ - echo "$${col}$$br$${std}"; \ - create_testsuite_report --maybe-color; \ - echo "$$col$$br$$std"; \ - if $$success; then :; else \ - echo "$${col}See $(subdir)/$(TEST_SUITE_LOG)$${std}"; \ - if test -n "$(PACKAGE_BUGREPORT)"; then \ - echo "$${col}Please report to $(PACKAGE_BUGREPORT)$${std}"; \ - fi; \ - echo "$$col$$br$$std"; \ - fi; \ - $$success || exit 1 - -check-TESTS: - @list='$(RECHECK_LOGS)'; test -z "$$list" || rm -f $$list - @list='$(RECHECK_LOGS:.log=.trs)'; test -z "$$list" || rm -f $$list - @test -z "$(TEST_SUITE_LOG)" || rm -f $(TEST_SUITE_LOG) - @set +e; $(am__set_TESTS_bases); \ - log_list=`for i in $$bases; do echo $$i.log; done`; \ - trs_list=`for i in $$bases; do echo $$i.trs; done`; \ - log_list=`echo $$log_list`; trs_list=`echo $$trs_list`; \ - $(MAKE) $(AM_MAKEFLAGS) $(TEST_SUITE_LOG) TEST_LOGS="$$log_list"; \ - exit $$?; -recheck: all $(check_PROGRAMS) $(check_SCRIPTS) - @test -z "$(TEST_SUITE_LOG)" || rm -f $(TEST_SUITE_LOG) - @set +e; $(am__set_TESTS_bases); \ - bases=`for i in $$bases; do echo $$i; done \ - | $(am__list_recheck_tests)` || exit 1; \ - log_list=`for i in $$bases; do echo $$i.log; done`; \ - log_list=`echo $$log_list`; \ - $(MAKE) $(AM_MAKEFLAGS) $(TEST_SUITE_LOG) \ - am__force_recheck=am--force-recheck \ - TEST_LOGS="$$log_list"; \ - exit $$? -.test.log: - @p='$<'; \ - $(am__set_b); \ - $(am__check_pre) $(TEST_LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_TEST_LOG_DRIVER_FLAGS) $(TEST_LOG_DRIVER_FLAGS) -- $(TEST_LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -@am__EXEEXT_TRUE@.test$(EXEEXT).log: -@am__EXEEXT_TRUE@ @p='$<'; \ -@am__EXEEXT_TRUE@ $(am__set_b); \ -@am__EXEEXT_TRUE@ $(am__check_pre) $(TEST_LOG_DRIVER) --test-name "$$f" \ -@am__EXEEXT_TRUE@ --log-file $$b.log --trs-file $$b.trs \ -@am__EXEEXT_TRUE@ $(am__common_driver_flags) $(AM_TEST_LOG_DRIVER_FLAGS) $(TEST_LOG_DRIVER_FLAGS) -- $(TEST_LOG_COMPILE) \ -@am__EXEEXT_TRUE@ "$$tst" $(AM_TESTS_FD_REDIRECT) - -distdir: $(DISTFILES) - @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ - topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ - list='$(DISTFILES)'; \ - dist_files=`for file in $$list; do echo $$file; done | \ - sed -e "s|^$$srcdirstrip/||;t" \ - -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ - case $$dist_files in \ - */*) $(MKDIR_P) `echo "$$dist_files" | \ - sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ - sort -u` ;; \ - esac; \ - for file in $$dist_files; do \ - if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ - if test -d $$d/$$file; then \ - dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ - if test -d "$(distdir)/$$file"; then \ - find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ - fi; \ - if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ - cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ - find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ - fi; \ - cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ - else \ - test -f "$(distdir)/$$file" \ - || cp -p $$d/$$file "$(distdir)/$$file" \ - || exit 1; \ - fi; \ - done -check-am: all-am - $(MAKE) $(AM_MAKEFLAGS) $(check_PROGRAMS) $(check_SCRIPTS) - $(MAKE) $(AM_MAKEFLAGS) check-TESTS -check: $(BUILT_SOURCES) - $(MAKE) $(AM_MAKEFLAGS) check-am -all-am: Makefile $(LIBRARIES) $(PROGRAMS) $(SCRIPTS) $(MANS) $(DATA) -installdirs: - for dir in "$(DESTDIR)$(bindir)" "$(DESTDIR)$(platformdir)" "$(DESTDIR)$(sbindir)" "$(DESTDIR)$(bindir)" "$(DESTDIR)$(grubconfdir)" "$(DESTDIR)$(platformdir)" "$(DESTDIR)$(sbindir)" "$(DESTDIR)$(man1dir)" "$(DESTDIR)$(grubconfdir)" "$(DESTDIR)$(pkgdatadir)" "$(DESTDIR)$(platformdir)"; do \ - test -z "$$dir" || $(MKDIR_P) "$$dir"; \ - done -install: $(BUILT_SOURCES) - $(MAKE) $(AM_MAKEFLAGS) install-am -install-exec: install-exec-am -install-data: install-data-am -uninstall: uninstall-am - -install-am: all-am - @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am - -installcheck: installcheck-am -install-strip: - if test -z '$(STRIP)'; then \ - $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ - install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ - install; \ - else \ - $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ - install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ - "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \ - fi -mostlyclean-generic: - -test -z "$(TEST_LOGS)" || rm -f $(TEST_LOGS) - -test -z "$(TEST_LOGS:.log=.trs)" || rm -f $(TEST_LOGS:.log=.trs) - -test -z "$(TEST_SUITE_LOG)" || rm -f $(TEST_SUITE_LOG) - -clean-generic: - -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES) - -distclean-generic: - -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) - -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) - -rm -f boot/decompressor/$(DEPDIR)/$(am__dirstamp) - -rm -f boot/decompressor/$(am__dirstamp) - -rm -f boot/i386/pc/$(DEPDIR)/$(am__dirstamp) - -rm -f boot/i386/pc/$(am__dirstamp) - -rm -f boot/i386/qemu/$(DEPDIR)/$(am__dirstamp) - -rm -f boot/i386/qemu/$(am__dirstamp) - -rm -f boot/mips/$(DEPDIR)/$(am__dirstamp) - -rm -f boot/mips/$(am__dirstamp) - -rm -f boot/mips/loongson/$(DEPDIR)/$(am__dirstamp) - -rm -f boot/mips/loongson/$(am__dirstamp) - -rm -f boot/sparc64/ieee1275/$(DEPDIR)/$(am__dirstamp) - -rm -f boot/sparc64/ieee1275/$(am__dirstamp) - -rm -f bus/$(DEPDIR)/$(am__dirstamp) - -rm -f bus/$(am__dirstamp) - -rm -f bus/emu/$(DEPDIR)/$(am__dirstamp) - -rm -f bus/emu/$(am__dirstamp) - -rm -f bus/i386/ieee1275/$(DEPDIR)/$(am__dirstamp) - -rm -f bus/i386/ieee1275/$(am__dirstamp) - -rm -f bus/spi/$(DEPDIR)/$(am__dirstamp) - -rm -f bus/spi/$(am__dirstamp) - -rm -f bus/usb/$(DEPDIR)/$(am__dirstamp) - -rm -f bus/usb/$(am__dirstamp) - -rm -f bus/usb/serial/$(DEPDIR)/$(am__dirstamp) - -rm -f bus/usb/serial/$(am__dirstamp) - -rm -f commands/$(DEPDIR)/$(am__dirstamp) - -rm -f commands/$(am__dirstamp) - -rm -f commands/arc/$(DEPDIR)/$(am__dirstamp) - -rm -f commands/arc/$(am__dirstamp) - -rm -f commands/efi/$(DEPDIR)/$(am__dirstamp) - -rm -f commands/efi/$(am__dirstamp) - -rm -f commands/i386/$(DEPDIR)/$(am__dirstamp) - -rm -f commands/i386/$(am__dirstamp) - -rm -f commands/i386/coreboot/$(DEPDIR)/$(am__dirstamp) - -rm -f commands/i386/coreboot/$(am__dirstamp) - -rm -f commands/i386/pc/$(DEPDIR)/$(am__dirstamp) - -rm -f commands/i386/pc/$(am__dirstamp) - -rm -f commands/ieee1275/$(DEPDIR)/$(am__dirstamp) - -rm -f commands/ieee1275/$(am__dirstamp) - -rm -f commands/mips/loongson/$(DEPDIR)/$(am__dirstamp) - -rm -f commands/mips/loongson/$(am__dirstamp) - -rm -f commands/xen/$(DEPDIR)/$(am__dirstamp) - -rm -f commands/xen/$(am__dirstamp) - -rm -f disk/$(DEPDIR)/$(am__dirstamp) - -rm -f disk/$(am__dirstamp) - -rm -f disk/arc/$(DEPDIR)/$(am__dirstamp) - -rm -f disk/arc/$(am__dirstamp) - -rm -f disk/efi/$(DEPDIR)/$(am__dirstamp) - -rm -f disk/efi/$(am__dirstamp) - -rm -f disk/i386/pc/$(DEPDIR)/$(am__dirstamp) - -rm -f disk/i386/pc/$(am__dirstamp) - -rm -f disk/ieee1275/$(DEPDIR)/$(am__dirstamp) - -rm -f disk/ieee1275/$(am__dirstamp) - -rm -f disk/uboot/$(DEPDIR)/$(am__dirstamp) - -rm -f disk/uboot/$(am__dirstamp) - -rm -f disk/xen/$(DEPDIR)/$(am__dirstamp) - -rm -f disk/xen/$(am__dirstamp) - -rm -f efiemu/$(DEPDIR)/$(am__dirstamp) - -rm -f efiemu/$(am__dirstamp) - -rm -f efiemu/i386/$(DEPDIR)/$(am__dirstamp) - -rm -f efiemu/i386/$(am__dirstamp) - -rm -f efiemu/i386/pc/$(DEPDIR)/$(am__dirstamp) - -rm -f efiemu/i386/pc/$(am__dirstamp) - -rm -f font/$(DEPDIR)/$(am__dirstamp) - -rm -f font/$(am__dirstamp) - -rm -f fs/$(DEPDIR)/$(am__dirstamp) - -rm -f fs/$(am__dirstamp) - -rm -f fs/zfs/$(DEPDIR)/$(am__dirstamp) - -rm -f fs/zfs/$(am__dirstamp) - -rm -f gdb/$(DEPDIR)/$(am__dirstamp) - -rm -f gdb/$(am__dirstamp) - -rm -f gdb/i386/$(DEPDIR)/$(am__dirstamp) - -rm -f gdb/i386/$(am__dirstamp) - -rm -f gettext/$(DEPDIR)/$(am__dirstamp) - -rm -f gettext/$(am__dirstamp) - -rm -f gfxmenu/$(DEPDIR)/$(am__dirstamp) - -rm -f gfxmenu/$(am__dirstamp) - -rm -f hello/$(DEPDIR)/$(am__dirstamp) - -rm -f hello/$(am__dirstamp) - -rm -f hook/$(DEPDIR)/$(am__dirstamp) - -rm -f hook/$(am__dirstamp) - -rm -f io/$(DEPDIR)/$(am__dirstamp) - -rm -f io/$(am__dirstamp) - -rm -f kern/$(DEPDIR)/$(am__dirstamp) - -rm -f kern/$(am__dirstamp) - -rm -f kern/arm/$(DEPDIR)/$(am__dirstamp) - -rm -f kern/arm/$(am__dirstamp) - -rm -f kern/arm/coreboot/$(DEPDIR)/$(am__dirstamp) - -rm -f kern/arm/coreboot/$(am__dirstamp) - -rm -f kern/arm/efi/$(DEPDIR)/$(am__dirstamp) - -rm -f kern/arm/efi/$(am__dirstamp) - -rm -f kern/arm/uboot/$(DEPDIR)/$(am__dirstamp) - -rm -f kern/arm/uboot/$(am__dirstamp) - -rm -f kern/arm64/$(DEPDIR)/$(am__dirstamp) - -rm -f kern/arm64/$(am__dirstamp) - -rm -f kern/arm64/efi/$(DEPDIR)/$(am__dirstamp) - -rm -f kern/arm64/efi/$(am__dirstamp) - -rm -f kern/coreboot/$(DEPDIR)/$(am__dirstamp) - -rm -f kern/coreboot/$(am__dirstamp) - -rm -f kern/efi/$(DEPDIR)/$(am__dirstamp) - -rm -f kern/efi/$(am__dirstamp) - -rm -f kern/emu/$(DEPDIR)/$(am__dirstamp) - -rm -f kern/emu/$(am__dirstamp) - -rm -f kern/generic/$(DEPDIR)/$(am__dirstamp) - -rm -f kern/generic/$(am__dirstamp) - -rm -f kern/i386/$(DEPDIR)/$(am__dirstamp) - -rm -f kern/i386/$(am__dirstamp) - -rm -f kern/i386/coreboot/$(DEPDIR)/$(am__dirstamp) - -rm -f kern/i386/coreboot/$(am__dirstamp) - -rm -f kern/i386/efi/$(DEPDIR)/$(am__dirstamp) - -rm -f kern/i386/efi/$(am__dirstamp) - -rm -f kern/i386/ieee1275/$(DEPDIR)/$(am__dirstamp) - -rm -f kern/i386/ieee1275/$(am__dirstamp) - -rm -f kern/i386/pc/$(DEPDIR)/$(am__dirstamp) - -rm -f kern/i386/pc/$(am__dirstamp) - -rm -f kern/i386/qemu/$(DEPDIR)/$(am__dirstamp) - -rm -f kern/i386/qemu/$(am__dirstamp) - -rm -f kern/i386/xen/$(DEPDIR)/$(am__dirstamp) - -rm -f kern/i386/xen/$(am__dirstamp) - -rm -f kern/ia64/$(DEPDIR)/$(am__dirstamp) - -rm -f kern/ia64/$(am__dirstamp) - -rm -f kern/ia64/efi/$(DEPDIR)/$(am__dirstamp) - -rm -f kern/ia64/efi/$(am__dirstamp) - -rm -f kern/ieee1275/$(DEPDIR)/$(am__dirstamp) - -rm -f kern/ieee1275/$(am__dirstamp) - -rm -f kern/mips/$(DEPDIR)/$(am__dirstamp) - -rm -f kern/mips/$(am__dirstamp) - -rm -f kern/mips/arc/$(DEPDIR)/$(am__dirstamp) - -rm -f kern/mips/arc/$(am__dirstamp) - -rm -f kern/mips/loongson/$(DEPDIR)/$(am__dirstamp) - -rm -f kern/mips/loongson/$(am__dirstamp) - -rm -f kern/mips/qemu_mips/$(DEPDIR)/$(am__dirstamp) - -rm -f kern/mips/qemu_mips/$(am__dirstamp) - -rm -f kern/powerpc/$(DEPDIR)/$(am__dirstamp) - -rm -f kern/powerpc/$(am__dirstamp) - -rm -f kern/powerpc/ieee1275/$(DEPDIR)/$(am__dirstamp) - -rm -f kern/powerpc/ieee1275/$(am__dirstamp) - -rm -f kern/riscv/$(DEPDIR)/$(am__dirstamp) - -rm -f kern/riscv/$(am__dirstamp) - -rm -f kern/riscv/efi/$(DEPDIR)/$(am__dirstamp) - -rm -f kern/riscv/efi/$(am__dirstamp) - -rm -f kern/sparc64/$(DEPDIR)/$(am__dirstamp) - -rm -f kern/sparc64/$(am__dirstamp) - -rm -f kern/sparc64/ieee1275/$(DEPDIR)/$(am__dirstamp) - -rm -f kern/sparc64/ieee1275/$(am__dirstamp) - -rm -f kern/uboot/$(DEPDIR)/$(am__dirstamp) - -rm -f kern/uboot/$(am__dirstamp) - -rm -f kern/x86_64/$(DEPDIR)/$(am__dirstamp) - -rm -f kern/x86_64/$(am__dirstamp) - -rm -f kern/x86_64/efi/$(DEPDIR)/$(am__dirstamp) - -rm -f kern/x86_64/efi/$(am__dirstamp) - -rm -f kern/x86_64/xen/$(DEPDIR)/$(am__dirstamp) - -rm -f kern/x86_64/xen/$(am__dirstamp) - -rm -f kern/xen/$(DEPDIR)/$(am__dirstamp) - -rm -f kern/xen/$(am__dirstamp) - -rm -f lib/$(DEPDIR)/$(am__dirstamp) - -rm -f lib/$(am__dirstamp) - -rm -f lib/arc/$(DEPDIR)/$(am__dirstamp) - -rm -f lib/arc/$(am__dirstamp) - -rm -f lib/dummy/$(DEPDIR)/$(am__dirstamp) - -rm -f lib/dummy/$(am__dirstamp) - -rm -f lib/efi/$(DEPDIR)/$(am__dirstamp) - -rm -f lib/efi/$(am__dirstamp) - -rm -f lib/emu/$(DEPDIR)/$(am__dirstamp) - -rm -f lib/emu/$(am__dirstamp) - -rm -f lib/gnulib/$(DEPDIR)/$(am__dirstamp) - -rm -f lib/gnulib/$(am__dirstamp) - -rm -f lib/i386/$(DEPDIR)/$(am__dirstamp) - -rm -f lib/i386/$(am__dirstamp) - -rm -f lib/i386/pc/$(DEPDIR)/$(am__dirstamp) - -rm -f lib/i386/pc/$(am__dirstamp) - -rm -f lib/i386/xen/$(DEPDIR)/$(am__dirstamp) - -rm -f lib/i386/xen/$(am__dirstamp) - -rm -f lib/ieee1275/$(DEPDIR)/$(am__dirstamp) - -rm -f lib/ieee1275/$(am__dirstamp) - -rm -f lib/libgcrypt-grub/cipher/$(DEPDIR)/$(am__dirstamp) - -rm -f lib/libgcrypt-grub/cipher/$(am__dirstamp) - -rm -f lib/libgcrypt-grub/mpi/$(DEPDIR)/$(am__dirstamp) - -rm -f lib/libgcrypt-grub/mpi/$(am__dirstamp) - -rm -f lib/libgcrypt_wrap/$(DEPDIR)/$(am__dirstamp) - -rm -f lib/libgcrypt_wrap/$(am__dirstamp) - -rm -f lib/minilzo/$(DEPDIR)/$(am__dirstamp) - -rm -f lib/minilzo/$(am__dirstamp) - -rm -f lib/mips/$(DEPDIR)/$(am__dirstamp) - -rm -f lib/mips/$(am__dirstamp) - -rm -f lib/mips/arc/$(DEPDIR)/$(am__dirstamp) - -rm -f lib/mips/arc/$(am__dirstamp) - -rm -f lib/mips/loongson/$(DEPDIR)/$(am__dirstamp) - -rm -f lib/mips/loongson/$(am__dirstamp) - -rm -f lib/mips/qemu_mips/$(DEPDIR)/$(am__dirstamp) - -rm -f lib/mips/qemu_mips/$(am__dirstamp) - -rm -f lib/powerpc/$(DEPDIR)/$(am__dirstamp) - -rm -f lib/powerpc/$(am__dirstamp) - -rm -f lib/uboot/$(DEPDIR)/$(am__dirstamp) - -rm -f lib/uboot/$(am__dirstamp) - -rm -f lib/x86_64/$(DEPDIR)/$(am__dirstamp) - -rm -f lib/x86_64/$(am__dirstamp) - -rm -f lib/x86_64/efi/$(DEPDIR)/$(am__dirstamp) - -rm -f lib/x86_64/efi/$(am__dirstamp) - -rm -f lib/x86_64/xen/$(DEPDIR)/$(am__dirstamp) - -rm -f lib/x86_64/xen/$(am__dirstamp) - -rm -f lib/xen/$(DEPDIR)/$(am__dirstamp) - -rm -f lib/xen/$(am__dirstamp) - -rm -f lib/xzembed/$(DEPDIR)/$(am__dirstamp) - -rm -f lib/xzembed/$(am__dirstamp) - -rm -f lib/zstd/$(DEPDIR)/$(am__dirstamp) - -rm -f lib/zstd/$(am__dirstamp) - -rm -f loader/$(DEPDIR)/$(am__dirstamp) - -rm -f loader/$(am__dirstamp) - -rm -f loader/arm/$(DEPDIR)/$(am__dirstamp) - -rm -f loader/arm/$(am__dirstamp) - -rm -f loader/arm64/$(DEPDIR)/$(am__dirstamp) - -rm -f loader/arm64/$(am__dirstamp) - -rm -f loader/efi/$(DEPDIR)/$(am__dirstamp) - -rm -f loader/efi/$(am__dirstamp) - -rm -f loader/i386/$(DEPDIR)/$(am__dirstamp) - -rm -f loader/i386/$(am__dirstamp) - -rm -f loader/i386/coreboot/$(DEPDIR)/$(am__dirstamp) - -rm -f loader/i386/coreboot/$(am__dirstamp) - -rm -f loader/i386/pc/$(DEPDIR)/$(am__dirstamp) - -rm -f loader/i386/pc/$(am__dirstamp) - -rm -f loader/ia64/efi/$(DEPDIR)/$(am__dirstamp) - -rm -f loader/ia64/efi/$(am__dirstamp) - -rm -f loader/mips/$(DEPDIR)/$(am__dirstamp) - -rm -f loader/mips/$(am__dirstamp) - -rm -f loader/powerpc/ieee1275/$(DEPDIR)/$(am__dirstamp) - -rm -f loader/powerpc/ieee1275/$(am__dirstamp) - -rm -f loader/riscv/$(DEPDIR)/$(am__dirstamp) - -rm -f loader/riscv/$(am__dirstamp) - -rm -f loader/sparc64/ieee1275/$(DEPDIR)/$(am__dirstamp) - -rm -f loader/sparc64/ieee1275/$(am__dirstamp) - -rm -f mmap/$(DEPDIR)/$(am__dirstamp) - -rm -f mmap/$(am__dirstamp) - -rm -f mmap/efi/$(DEPDIR)/$(am__dirstamp) - -rm -f mmap/efi/$(am__dirstamp) - -rm -f mmap/i386/$(DEPDIR)/$(am__dirstamp) - -rm -f mmap/i386/$(am__dirstamp) - -rm -f mmap/i386/pc/$(DEPDIR)/$(am__dirstamp) - -rm -f mmap/i386/pc/$(am__dirstamp) - -rm -f mmap/mips/$(DEPDIR)/$(am__dirstamp) - -rm -f mmap/mips/$(am__dirstamp) - -rm -f net/$(DEPDIR)/$(am__dirstamp) - -rm -f net/$(am__dirstamp) - -rm -f net/drivers/efi/$(DEPDIR)/$(am__dirstamp) - -rm -f net/drivers/efi/$(am__dirstamp) - -rm -f net/drivers/emu/$(DEPDIR)/$(am__dirstamp) - -rm -f net/drivers/emu/$(am__dirstamp) - -rm -f net/drivers/i386/pc/$(DEPDIR)/$(am__dirstamp) - -rm -f net/drivers/i386/pc/$(am__dirstamp) - -rm -f net/drivers/ieee1275/$(DEPDIR)/$(am__dirstamp) - -rm -f net/drivers/ieee1275/$(am__dirstamp) - -rm -f net/drivers/uboot/$(DEPDIR)/$(am__dirstamp) - -rm -f net/drivers/uboot/$(am__dirstamp) - -rm -f normal/$(DEPDIR)/$(am__dirstamp) - -rm -f normal/$(am__dirstamp) - -rm -f osdep/$(DEPDIR)/$(am__dirstamp) - -rm -f osdep/$(am__dirstamp) - -rm -f osdep/devmapper/$(DEPDIR)/$(am__dirstamp) - -rm -f osdep/devmapper/$(am__dirstamp) - -rm -f osdep/unix/$(DEPDIR)/$(am__dirstamp) - -rm -f osdep/unix/$(am__dirstamp) - -rm -f partmap/$(DEPDIR)/$(am__dirstamp) - -rm -f partmap/$(am__dirstamp) - -rm -f parttool/$(DEPDIR)/$(am__dirstamp) - -rm -f parttool/$(am__dirstamp) - -rm -f script/$(DEPDIR)/$(am__dirstamp) - -rm -f script/$(am__dirstamp) - -rm -f term/$(DEPDIR)/$(am__dirstamp) - -rm -f term/$(am__dirstamp) - -rm -f term/arc/$(DEPDIR)/$(am__dirstamp) - -rm -f term/arc/$(am__dirstamp) - -rm -f term/arm/$(DEPDIR)/$(am__dirstamp) - -rm -f term/arm/$(am__dirstamp) - -rm -f term/efi/$(DEPDIR)/$(am__dirstamp) - -rm -f term/efi/$(am__dirstamp) - -rm -f term/i386/coreboot/$(DEPDIR)/$(am__dirstamp) - -rm -f term/i386/coreboot/$(am__dirstamp) - -rm -f term/i386/pc/$(DEPDIR)/$(am__dirstamp) - -rm -f term/i386/pc/$(am__dirstamp) - -rm -f term/ieee1275/$(DEPDIR)/$(am__dirstamp) - -rm -f term/ieee1275/$(am__dirstamp) - -rm -f term/uboot/$(DEPDIR)/$(am__dirstamp) - -rm -f term/uboot/$(am__dirstamp) - -rm -f term/xen/$(DEPDIR)/$(am__dirstamp) - -rm -f term/xen/$(am__dirstamp) - -rm -f tests/$(DEPDIR)/$(am__dirstamp) - -rm -f tests/$(am__dirstamp) - -rm -f tests/lib/$(DEPDIR)/$(am__dirstamp) - -rm -f tests/lib/$(am__dirstamp) - -rm -f video/$(DEPDIR)/$(am__dirstamp) - -rm -f video/$(am__dirstamp) - -rm -f video/coreboot/$(DEPDIR)/$(am__dirstamp) - -rm -f video/coreboot/$(am__dirstamp) - -rm -f video/emu/$(DEPDIR)/$(am__dirstamp) - -rm -f video/emu/$(am__dirstamp) - -rm -f video/fb/$(DEPDIR)/$(am__dirstamp) - -rm -f video/fb/$(am__dirstamp) - -rm -f video/i386/pc/$(DEPDIR)/$(am__dirstamp) - -rm -f video/i386/pc/$(am__dirstamp) - -rm -f video/readers/$(DEPDIR)/$(am__dirstamp) - -rm -f video/readers/$(am__dirstamp) - -maintainer-clean-generic: - @echo "This command is intended for maintainers to use" - @echo "it deletes files that may require special tools to rebuild." - -test -z "$(BUILT_SOURCES)" || rm -f $(BUILT_SOURCES) -clean: clean-am - -clean-am: clean-binPROGRAMS clean-checkPROGRAMS clean-generic \ - clean-noinstLIBRARIES clean-noinstPROGRAMS \ - clean-platformPROGRAMS clean-sbinPROGRAMS mostlyclean-am - -distclean: distclean-am - -rm -rf ./$(DEPDIR) boot/decompressor/$(DEPDIR) boot/i386/pc/$(DEPDIR) boot/i386/qemu/$(DEPDIR) boot/mips/$(DEPDIR) boot/mips/loongson/$(DEPDIR) boot/sparc64/ieee1275/$(DEPDIR) bus/$(DEPDIR) bus/emu/$(DEPDIR) bus/i386/ieee1275/$(DEPDIR) bus/spi/$(DEPDIR) bus/usb/$(DEPDIR) bus/usb/serial/$(DEPDIR) commands/$(DEPDIR) commands/arc/$(DEPDIR) commands/efi/$(DEPDIR) commands/i386/$(DEPDIR) commands/i386/coreboot/$(DEPDIR) commands/i386/pc/$(DEPDIR) commands/ieee1275/$(DEPDIR) commands/mips/loongson/$(DEPDIR) commands/xen/$(DEPDIR) disk/$(DEPDIR) disk/arc/$(DEPDIR) disk/efi/$(DEPDIR) disk/i386/pc/$(DEPDIR) disk/ieee1275/$(DEPDIR) disk/uboot/$(DEPDIR) disk/xen/$(DEPDIR) efiemu/$(DEPDIR) efiemu/i386/$(DEPDIR) efiemu/i386/pc/$(DEPDIR) font/$(DEPDIR) fs/$(DEPDIR) fs/zfs/$(DEPDIR) gdb/$(DEPDIR) gdb/i386/$(DEPDIR) gettext/$(DEPDIR) gfxmenu/$(DEPDIR) hello/$(DEPDIR) hook/$(DEPDIR) io/$(DEPDIR) kern/$(DEPDIR) kern/arm/$(DEPDIR) kern/arm/coreboot/$(DEPDIR) kern/arm/efi/$(DEPDIR) kern/arm/uboot/$(DEPDIR) kern/arm64/$(DEPDIR) kern/arm64/efi/$(DEPDIR) kern/coreboot/$(DEPDIR) kern/efi/$(DEPDIR) kern/emu/$(DEPDIR) kern/generic/$(DEPDIR) kern/i386/$(DEPDIR) kern/i386/coreboot/$(DEPDIR) kern/i386/efi/$(DEPDIR) kern/i386/ieee1275/$(DEPDIR) kern/i386/pc/$(DEPDIR) kern/i386/qemu/$(DEPDIR) kern/i386/xen/$(DEPDIR) kern/ia64/$(DEPDIR) kern/ia64/efi/$(DEPDIR) kern/ieee1275/$(DEPDIR) kern/mips/$(DEPDIR) kern/mips/arc/$(DEPDIR) kern/mips/loongson/$(DEPDIR) kern/mips/qemu_mips/$(DEPDIR) kern/powerpc/$(DEPDIR) kern/powerpc/ieee1275/$(DEPDIR) kern/riscv/$(DEPDIR) kern/riscv/efi/$(DEPDIR) kern/sparc64/$(DEPDIR) kern/sparc64/ieee1275/$(DEPDIR) kern/uboot/$(DEPDIR) kern/x86_64/$(DEPDIR) kern/x86_64/efi/$(DEPDIR) kern/x86_64/xen/$(DEPDIR) kern/xen/$(DEPDIR) lib/$(DEPDIR) lib/arc/$(DEPDIR) lib/dummy/$(DEPDIR) lib/efi/$(DEPDIR) lib/emu/$(DEPDIR) lib/gnulib/$(DEPDIR) lib/i386/$(DEPDIR) lib/i386/pc/$(DEPDIR) lib/i386/xen/$(DEPDIR) lib/ieee1275/$(DEPDIR) lib/libgcrypt-grub/cipher/$(DEPDIR) lib/libgcrypt-grub/mpi/$(DEPDIR) lib/libgcrypt_wrap/$(DEPDIR) lib/minilzo/$(DEPDIR) lib/mips/$(DEPDIR) lib/mips/arc/$(DEPDIR) lib/mips/loongson/$(DEPDIR) lib/mips/qemu_mips/$(DEPDIR) lib/powerpc/$(DEPDIR) lib/uboot/$(DEPDIR) lib/x86_64/$(DEPDIR) lib/x86_64/efi/$(DEPDIR) lib/x86_64/xen/$(DEPDIR) lib/xen/$(DEPDIR) lib/xzembed/$(DEPDIR) lib/zstd/$(DEPDIR) loader/$(DEPDIR) loader/arm/$(DEPDIR) loader/arm64/$(DEPDIR) loader/efi/$(DEPDIR) loader/i386/$(DEPDIR) loader/i386/coreboot/$(DEPDIR) loader/i386/pc/$(DEPDIR) loader/ia64/efi/$(DEPDIR) loader/mips/$(DEPDIR) loader/powerpc/ieee1275/$(DEPDIR) loader/riscv/$(DEPDIR) loader/sparc64/ieee1275/$(DEPDIR) mmap/$(DEPDIR) mmap/efi/$(DEPDIR) mmap/i386/$(DEPDIR) mmap/i386/pc/$(DEPDIR) mmap/mips/$(DEPDIR) net/$(DEPDIR) net/drivers/efi/$(DEPDIR) net/drivers/emu/$(DEPDIR) net/drivers/i386/pc/$(DEPDIR) net/drivers/ieee1275/$(DEPDIR) net/drivers/uboot/$(DEPDIR) normal/$(DEPDIR) osdep/$(DEPDIR) osdep/devmapper/$(DEPDIR) osdep/unix/$(DEPDIR) partmap/$(DEPDIR) parttool/$(DEPDIR) script/$(DEPDIR) term/$(DEPDIR) term/arc/$(DEPDIR) term/arm/$(DEPDIR) term/efi/$(DEPDIR) term/i386/coreboot/$(DEPDIR) term/i386/pc/$(DEPDIR) term/ieee1275/$(DEPDIR) term/uboot/$(DEPDIR) term/xen/$(DEPDIR) tests/$(DEPDIR) tests/lib/$(DEPDIR) video/$(DEPDIR) video/coreboot/$(DEPDIR) video/emu/$(DEPDIR) video/fb/$(DEPDIR) video/i386/pc/$(DEPDIR) video/readers/$(DEPDIR) - -rm -f Makefile -distclean-am: clean-am distclean-compile distclean-generic \ - distclean-tags - -dvi: dvi-am - -dvi-am: - -html: html-am - -html-am: - -info: info-am - -info-am: - -install-data-am: install-dist_grubconfDATA install-grubconfSCRIPTS \ - install-man install-pkgdataDATA install-platformDATA \ - install-platformPROGRAMS install-platformSCRIPTS - -install-dvi: install-dvi-am - -install-dvi-am: - -install-exec-am: install-binPROGRAMS install-binSCRIPTS \ - install-sbinPROGRAMS install-sbinSCRIPTS - -install-html: install-html-am - -install-html-am: - -install-info: install-info-am - -install-info-am: - -install-man: install-man1 - -install-pdf: install-pdf-am - -install-pdf-am: - -install-ps: install-ps-am - -install-ps-am: - -installcheck-am: - -maintainer-clean: maintainer-clean-am - -rm -rf ./$(DEPDIR) boot/decompressor/$(DEPDIR) boot/i386/pc/$(DEPDIR) boot/i386/qemu/$(DEPDIR) boot/mips/$(DEPDIR) boot/mips/loongson/$(DEPDIR) boot/sparc64/ieee1275/$(DEPDIR) bus/$(DEPDIR) bus/emu/$(DEPDIR) bus/i386/ieee1275/$(DEPDIR) bus/spi/$(DEPDIR) bus/usb/$(DEPDIR) bus/usb/serial/$(DEPDIR) commands/$(DEPDIR) commands/arc/$(DEPDIR) commands/efi/$(DEPDIR) commands/i386/$(DEPDIR) commands/i386/coreboot/$(DEPDIR) commands/i386/pc/$(DEPDIR) commands/ieee1275/$(DEPDIR) commands/mips/loongson/$(DEPDIR) commands/xen/$(DEPDIR) disk/$(DEPDIR) disk/arc/$(DEPDIR) disk/efi/$(DEPDIR) disk/i386/pc/$(DEPDIR) disk/ieee1275/$(DEPDIR) disk/uboot/$(DEPDIR) disk/xen/$(DEPDIR) efiemu/$(DEPDIR) efiemu/i386/$(DEPDIR) efiemu/i386/pc/$(DEPDIR) font/$(DEPDIR) fs/$(DEPDIR) fs/zfs/$(DEPDIR) gdb/$(DEPDIR) gdb/i386/$(DEPDIR) gettext/$(DEPDIR) gfxmenu/$(DEPDIR) hello/$(DEPDIR) hook/$(DEPDIR) io/$(DEPDIR) kern/$(DEPDIR) kern/arm/$(DEPDIR) kern/arm/coreboot/$(DEPDIR) kern/arm/efi/$(DEPDIR) kern/arm/uboot/$(DEPDIR) kern/arm64/$(DEPDIR) kern/arm64/efi/$(DEPDIR) kern/coreboot/$(DEPDIR) kern/efi/$(DEPDIR) kern/emu/$(DEPDIR) kern/generic/$(DEPDIR) kern/i386/$(DEPDIR) kern/i386/coreboot/$(DEPDIR) kern/i386/efi/$(DEPDIR) kern/i386/ieee1275/$(DEPDIR) kern/i386/pc/$(DEPDIR) kern/i386/qemu/$(DEPDIR) kern/i386/xen/$(DEPDIR) kern/ia64/$(DEPDIR) kern/ia64/efi/$(DEPDIR) kern/ieee1275/$(DEPDIR) kern/mips/$(DEPDIR) kern/mips/arc/$(DEPDIR) kern/mips/loongson/$(DEPDIR) kern/mips/qemu_mips/$(DEPDIR) kern/powerpc/$(DEPDIR) kern/powerpc/ieee1275/$(DEPDIR) kern/riscv/$(DEPDIR) kern/riscv/efi/$(DEPDIR) kern/sparc64/$(DEPDIR) kern/sparc64/ieee1275/$(DEPDIR) kern/uboot/$(DEPDIR) kern/x86_64/$(DEPDIR) kern/x86_64/efi/$(DEPDIR) kern/x86_64/xen/$(DEPDIR) kern/xen/$(DEPDIR) lib/$(DEPDIR) lib/arc/$(DEPDIR) lib/dummy/$(DEPDIR) lib/efi/$(DEPDIR) lib/emu/$(DEPDIR) lib/gnulib/$(DEPDIR) lib/i386/$(DEPDIR) lib/i386/pc/$(DEPDIR) lib/i386/xen/$(DEPDIR) lib/ieee1275/$(DEPDIR) lib/libgcrypt-grub/cipher/$(DEPDIR) lib/libgcrypt-grub/mpi/$(DEPDIR) lib/libgcrypt_wrap/$(DEPDIR) lib/minilzo/$(DEPDIR) lib/mips/$(DEPDIR) lib/mips/arc/$(DEPDIR) lib/mips/loongson/$(DEPDIR) lib/mips/qemu_mips/$(DEPDIR) lib/powerpc/$(DEPDIR) lib/uboot/$(DEPDIR) lib/x86_64/$(DEPDIR) lib/x86_64/efi/$(DEPDIR) lib/x86_64/xen/$(DEPDIR) lib/xen/$(DEPDIR) lib/xzembed/$(DEPDIR) lib/zstd/$(DEPDIR) loader/$(DEPDIR) loader/arm/$(DEPDIR) loader/arm64/$(DEPDIR) loader/efi/$(DEPDIR) loader/i386/$(DEPDIR) loader/i386/coreboot/$(DEPDIR) loader/i386/pc/$(DEPDIR) loader/ia64/efi/$(DEPDIR) loader/mips/$(DEPDIR) loader/powerpc/ieee1275/$(DEPDIR) loader/riscv/$(DEPDIR) loader/sparc64/ieee1275/$(DEPDIR) mmap/$(DEPDIR) mmap/efi/$(DEPDIR) mmap/i386/$(DEPDIR) mmap/i386/pc/$(DEPDIR) mmap/mips/$(DEPDIR) net/$(DEPDIR) net/drivers/efi/$(DEPDIR) net/drivers/emu/$(DEPDIR) net/drivers/i386/pc/$(DEPDIR) net/drivers/ieee1275/$(DEPDIR) net/drivers/uboot/$(DEPDIR) normal/$(DEPDIR) osdep/$(DEPDIR) osdep/devmapper/$(DEPDIR) osdep/unix/$(DEPDIR) partmap/$(DEPDIR) parttool/$(DEPDIR) script/$(DEPDIR) term/$(DEPDIR) term/arc/$(DEPDIR) term/arm/$(DEPDIR) term/efi/$(DEPDIR) term/i386/coreboot/$(DEPDIR) term/i386/pc/$(DEPDIR) term/ieee1275/$(DEPDIR) term/uboot/$(DEPDIR) term/xen/$(DEPDIR) tests/$(DEPDIR) tests/lib/$(DEPDIR) video/$(DEPDIR) video/coreboot/$(DEPDIR) video/emu/$(DEPDIR) video/fb/$(DEPDIR) video/i386/pc/$(DEPDIR) video/readers/$(DEPDIR) - -rm -f Makefile -maintainer-clean-am: distclean-am maintainer-clean-generic - -mostlyclean: mostlyclean-am - -mostlyclean-am: mostlyclean-compile mostlyclean-generic - -pdf: pdf-am - -pdf-am: - -ps: ps-am - -ps-am: - -uninstall-am: uninstall-binPROGRAMS uninstall-binSCRIPTS \ - uninstall-dist_grubconfDATA uninstall-grubconfSCRIPTS \ - uninstall-man uninstall-pkgdataDATA uninstall-platformDATA \ - uninstall-platformPROGRAMS uninstall-platformSCRIPTS \ - uninstall-sbinPROGRAMS uninstall-sbinSCRIPTS - -uninstall-man: uninstall-man1 - -.MAKE: all check check-am install install-am install-strip - -.PHONY: CTAGS GTAGS TAGS all all-am check check-TESTS check-am clean \ - clean-binPROGRAMS clean-checkPROGRAMS clean-generic \ - clean-noinstLIBRARIES clean-noinstPROGRAMS \ - clean-platformPROGRAMS clean-sbinPROGRAMS cscopelist-am ctags \ - ctags-am distclean distclean-compile distclean-generic \ - distclean-tags distdir dvi dvi-am html html-am info info-am \ - install install-am install-binPROGRAMS install-binSCRIPTS \ - install-data install-data-am install-dist_grubconfDATA \ - install-dvi install-dvi-am install-exec install-exec-am \ - install-grubconfSCRIPTS install-html install-html-am \ - install-info install-info-am install-man install-man1 \ - install-pdf install-pdf-am install-pkgdataDATA \ - install-platformDATA install-platformPROGRAMS \ - install-platformSCRIPTS install-ps install-ps-am \ - install-sbinPROGRAMS install-sbinSCRIPTS install-strip \ - installcheck installcheck-am installdirs maintainer-clean \ - maintainer-clean-generic mostlyclean mostlyclean-compile \ - mostlyclean-generic pdf pdf-am ps ps-am recheck tags tags-am \ - uninstall uninstall-am uninstall-binPROGRAMS \ - uninstall-binSCRIPTS uninstall-dist_grubconfDATA \ - uninstall-grubconfSCRIPTS uninstall-man uninstall-man1 \ - uninstall-pkgdataDATA uninstall-platformDATA \ - uninstall-platformPROGRAMS uninstall-platformSCRIPTS \ - uninstall-sbinPROGRAMS uninstall-sbinSCRIPTS - -.PRECIOUS: Makefile - - -export LC_COLLATE := C -unexport LC_ALL - -# Rules for Automake input - -.PRECIOUS: $(top_srcdir)/Makefile.util.am -$(top_srcdir)/Makefile.util.am: $(top_srcdir)/gentpl.py $(top_srcdir)/Makefile.util.def $(top_srcdir)/Makefile.utilgcry.def - $(PYTHON) $^ > $@.new || (rm -f $@.new; exit 1) - mv $@.new $@ - -.PRECIOUS: $(top_srcdir)/grub-core/Makefile.core.am -$(top_srcdir)/grub-core/Makefile.core.am: $(top_srcdir)/gentpl.py $(top_srcdir)/grub-core/Makefile.core.def $(top_srcdir)/grub-core/Makefile.gcry.def - if [ "x$$GRUB_CONTRIB" != x ]; then echo "You need to run ./bootstrap manually." >&2; exit 1; fi - $(PYTHON) $^ > $@.new || (rm -f $@.new; exit 1) - mv $@.new $@ - -build-grub-pep2elf$(BUILD_EXEEXT): $(top_srcdir)/util/grub-pe2elf.c $(top_srcdir)/grub-core/kern/emu/misc.c $(top_srcdir)/util/misc.c - $(BUILD_CC) -o $@ -I$(top_srcdir)/include $(BUILD_CFLAGS) $(BUILD_CPPFLAGS) $(BUILD_LDFLAGS) -DGRUB_BUILD=1 -DGRUB_TARGET_WORDSIZE=64 -DGRUB_UTIL=1 -DGRUB_BUILD_PROGRAM_NAME=\"build-grub-pep2elf\" $^ - -build-grub-pe2elf$(BUILD_EXEEXT): $(top_srcdir)/util/grub-pe2elf.c $(top_srcdir)/grub-core/kern/emu/misc.c $(top_srcdir)/util/misc.c - $(BUILD_CC) -o $@ -I$(top_srcdir)/include $(BUILD_CFLAGS) $(BUILD_CPPFLAGS) $(BUILD_LDFLAGS) -DGRUB_BUILD=1 -DGRUB_TARGET_WORDSIZE=32 -DGRUB_UTIL=1 -DGRUB_BUILD_PROGRAM_NAME=\"build-grub-pe2elf\" $^ - -# gentrigtables -gentrigtables$(BUILD_EXEEXT): gentrigtables.c - $(BUILD_CC) -o $@ -I$(top_srcdir)/include $(BUILD_CFLAGS) $(BUILD_CPPFLAGS) $(BUILD_LDFLAGS) $< $(BUILD_LIBM) - -build-grub-module-verifier$(BUILD_EXEEXT): $(top_srcdir)/util/grub-module-verifier.c $(top_srcdir)/util/grub-module-verifier32.c $(top_srcdir)/util/grub-module-verifier64.c $(top_srcdir)/grub-core/kern/emu/misc.c $(top_srcdir)/util/misc.c - $(BUILD_CC) -o $@ -I$(top_srcdir)/include $(BUILD_CFLAGS) $(BUILD_CPPFLAGS) $(BUILD_LDFLAGS) -DGRUB_BUILD=1 -DGRUB_UTIL=1 -DGRUB_BUILD_PROGRAM_NAME=\"build-grub-module-verifier\" $^ - -# trigtables.c -trigtables.c: gentrigtables$(BUILD_EXEEXT) gentrigtables.c $(top_srcdir)/configure.ac - ./gentrigtables$(BUILD_EXEEXT) > $@ - -# XXX Use Automake's LEX & YACC support -grub_script.tab.h: script/parser.y - $(YACC) -d -p grub_script_yy -b grub_script $< -grub_script.tab.c: grub_script.tab.h - -# For the lexer. -grub_script.yy.h: script/yylex.l - $(LEX) -o grub_script.yy.c --header-file=grub_script.yy.h $< -grub_script.yy.c: grub_script.yy.h - -rs_decoder.h: $(srcdir)/lib/reed_solomon.c - $(TARGET_CC) $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) -Os -I$(top_builddir) -S -DSTANDALONE -o $@ $< -g0 -mregparm=3 -ffreestanding - -disk.marker: $(disk_module_SOURCES) $(nodist_disk_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(disk_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -trig.marker: $(trig_module_SOURCES) $(nodist_trig_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(trig_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_pc_TRUE@cs5536.marker: $(cs5536_module_SOURCES) $(nodist_cs5536_module_SOURCES) -@COND_i386_pc_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cs5536_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_pc_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_efi_TRUE@cs5536.marker: $(cs5536_module_SOURCES) $(nodist_cs5536_module_SOURCES) -@COND_i386_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cs5536_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_qemu_TRUE@cs5536.marker: $(cs5536_module_SOURCES) $(nodist_cs5536_module_SOURCES) -@COND_i386_qemu_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cs5536_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_qemu_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_coreboot_TRUE@cs5536.marker: $(cs5536_module_SOURCES) $(nodist_cs5536_module_SOURCES) -@COND_i386_coreboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cs5536_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_coreboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_multiboot_TRUE@cs5536.marker: $(cs5536_module_SOURCES) $(nodist_cs5536_module_SOURCES) -@COND_i386_multiboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cs5536_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_multiboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_ieee1275_TRUE@cs5536.marker: $(cs5536_module_SOURCES) $(nodist_cs5536_module_SOURCES) -@COND_i386_ieee1275_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cs5536_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_ieee1275_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_x86_64_efi_TRUE@cs5536.marker: $(cs5536_module_SOURCES) $(nodist_cs5536_module_SOURCES) -@COND_x86_64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cs5536_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_x86_64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_mips_loongson_TRUE@lsspd.marker: $(lsspd_module_SOURCES) $(nodist_lsspd_module_SOURCES) -@COND_mips_loongson_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lsspd_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_mips_loongson_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_pc_TRUE@usb.marker: $(usb_module_SOURCES) $(nodist_usb_module_SOURCES) -@COND_i386_pc_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usb_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_pc_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_efi_TRUE@usb.marker: $(usb_module_SOURCES) $(nodist_usb_module_SOURCES) -@COND_i386_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usb_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_qemu_TRUE@usb.marker: $(usb_module_SOURCES) $(nodist_usb_module_SOURCES) -@COND_i386_qemu_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usb_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_qemu_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_coreboot_TRUE@usb.marker: $(usb_module_SOURCES) $(nodist_usb_module_SOURCES) -@COND_i386_coreboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usb_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_coreboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_multiboot_TRUE@usb.marker: $(usb_module_SOURCES) $(nodist_usb_module_SOURCES) -@COND_i386_multiboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usb_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_multiboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_ieee1275_TRUE@usb.marker: $(usb_module_SOURCES) $(nodist_usb_module_SOURCES) -@COND_i386_ieee1275_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usb_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_ieee1275_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_x86_64_efi_TRUE@usb.marker: $(usb_module_SOURCES) $(nodist_usb_module_SOURCES) -@COND_x86_64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usb_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_x86_64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_mips_loongson_TRUE@usb.marker: $(usb_module_SOURCES) $(nodist_usb_module_SOURCES) -@COND_mips_loongson_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usb_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_mips_loongson_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_arm_coreboot_TRUE@usb.marker: $(usb_module_SOURCES) $(nodist_usb_module_SOURCES) -@COND_arm_coreboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usb_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_arm_coreboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_pc_TRUE@usbserial_common.marker: $(usbserial_common_module_SOURCES) $(nodist_usbserial_common_module_SOURCES) -@COND_i386_pc_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usbserial_common_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_pc_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_efi_TRUE@usbserial_common.marker: $(usbserial_common_module_SOURCES) $(nodist_usbserial_common_module_SOURCES) -@COND_i386_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usbserial_common_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_qemu_TRUE@usbserial_common.marker: $(usbserial_common_module_SOURCES) $(nodist_usbserial_common_module_SOURCES) -@COND_i386_qemu_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usbserial_common_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_qemu_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_coreboot_TRUE@usbserial_common.marker: $(usbserial_common_module_SOURCES) $(nodist_usbserial_common_module_SOURCES) -@COND_i386_coreboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usbserial_common_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_coreboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_multiboot_TRUE@usbserial_common.marker: $(usbserial_common_module_SOURCES) $(nodist_usbserial_common_module_SOURCES) -@COND_i386_multiboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usbserial_common_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_multiboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_ieee1275_TRUE@usbserial_common.marker: $(usbserial_common_module_SOURCES) $(nodist_usbserial_common_module_SOURCES) -@COND_i386_ieee1275_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usbserial_common_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_ieee1275_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_x86_64_efi_TRUE@usbserial_common.marker: $(usbserial_common_module_SOURCES) $(nodist_usbserial_common_module_SOURCES) -@COND_x86_64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usbserial_common_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_x86_64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_mips_loongson_TRUE@usbserial_common.marker: $(usbserial_common_module_SOURCES) $(nodist_usbserial_common_module_SOURCES) -@COND_mips_loongson_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usbserial_common_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_mips_loongson_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_arm_coreboot_TRUE@usbserial_common.marker: $(usbserial_common_module_SOURCES) $(nodist_usbserial_common_module_SOURCES) -@COND_arm_coreboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usbserial_common_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_arm_coreboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_pc_TRUE@usbserial_pl2303.marker: $(usbserial_pl2303_module_SOURCES) $(nodist_usbserial_pl2303_module_SOURCES) -@COND_i386_pc_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usbserial_pl2303_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_pc_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_efi_TRUE@usbserial_pl2303.marker: $(usbserial_pl2303_module_SOURCES) $(nodist_usbserial_pl2303_module_SOURCES) -@COND_i386_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usbserial_pl2303_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_qemu_TRUE@usbserial_pl2303.marker: $(usbserial_pl2303_module_SOURCES) $(nodist_usbserial_pl2303_module_SOURCES) -@COND_i386_qemu_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usbserial_pl2303_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_qemu_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_coreboot_TRUE@usbserial_pl2303.marker: $(usbserial_pl2303_module_SOURCES) $(nodist_usbserial_pl2303_module_SOURCES) -@COND_i386_coreboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usbserial_pl2303_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_coreboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_multiboot_TRUE@usbserial_pl2303.marker: $(usbserial_pl2303_module_SOURCES) $(nodist_usbserial_pl2303_module_SOURCES) -@COND_i386_multiboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usbserial_pl2303_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_multiboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_ieee1275_TRUE@usbserial_pl2303.marker: $(usbserial_pl2303_module_SOURCES) $(nodist_usbserial_pl2303_module_SOURCES) -@COND_i386_ieee1275_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usbserial_pl2303_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_ieee1275_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_x86_64_efi_TRUE@usbserial_pl2303.marker: $(usbserial_pl2303_module_SOURCES) $(nodist_usbserial_pl2303_module_SOURCES) -@COND_x86_64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usbserial_pl2303_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_x86_64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_mips_loongson_TRUE@usbserial_pl2303.marker: $(usbserial_pl2303_module_SOURCES) $(nodist_usbserial_pl2303_module_SOURCES) -@COND_mips_loongson_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usbserial_pl2303_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_mips_loongson_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_arm_coreboot_TRUE@usbserial_pl2303.marker: $(usbserial_pl2303_module_SOURCES) $(nodist_usbserial_pl2303_module_SOURCES) -@COND_arm_coreboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usbserial_pl2303_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_arm_coreboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_pc_TRUE@usbserial_ftdi.marker: $(usbserial_ftdi_module_SOURCES) $(nodist_usbserial_ftdi_module_SOURCES) -@COND_i386_pc_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usbserial_ftdi_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_pc_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_efi_TRUE@usbserial_ftdi.marker: $(usbserial_ftdi_module_SOURCES) $(nodist_usbserial_ftdi_module_SOURCES) -@COND_i386_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usbserial_ftdi_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_qemu_TRUE@usbserial_ftdi.marker: $(usbserial_ftdi_module_SOURCES) $(nodist_usbserial_ftdi_module_SOURCES) -@COND_i386_qemu_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usbserial_ftdi_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_qemu_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_coreboot_TRUE@usbserial_ftdi.marker: $(usbserial_ftdi_module_SOURCES) $(nodist_usbserial_ftdi_module_SOURCES) -@COND_i386_coreboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usbserial_ftdi_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_coreboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_multiboot_TRUE@usbserial_ftdi.marker: $(usbserial_ftdi_module_SOURCES) $(nodist_usbserial_ftdi_module_SOURCES) -@COND_i386_multiboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usbserial_ftdi_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_multiboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_ieee1275_TRUE@usbserial_ftdi.marker: $(usbserial_ftdi_module_SOURCES) $(nodist_usbserial_ftdi_module_SOURCES) -@COND_i386_ieee1275_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usbserial_ftdi_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_ieee1275_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_x86_64_efi_TRUE@usbserial_ftdi.marker: $(usbserial_ftdi_module_SOURCES) $(nodist_usbserial_ftdi_module_SOURCES) -@COND_x86_64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usbserial_ftdi_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_x86_64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_mips_loongson_TRUE@usbserial_ftdi.marker: $(usbserial_ftdi_module_SOURCES) $(nodist_usbserial_ftdi_module_SOURCES) -@COND_mips_loongson_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usbserial_ftdi_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_mips_loongson_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_arm_coreboot_TRUE@usbserial_ftdi.marker: $(usbserial_ftdi_module_SOURCES) $(nodist_usbserial_ftdi_module_SOURCES) -@COND_arm_coreboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usbserial_ftdi_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_arm_coreboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_pc_TRUE@usbserial_usbdebug.marker: $(usbserial_usbdebug_module_SOURCES) $(nodist_usbserial_usbdebug_module_SOURCES) -@COND_i386_pc_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usbserial_usbdebug_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_pc_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_efi_TRUE@usbserial_usbdebug.marker: $(usbserial_usbdebug_module_SOURCES) $(nodist_usbserial_usbdebug_module_SOURCES) -@COND_i386_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usbserial_usbdebug_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_qemu_TRUE@usbserial_usbdebug.marker: $(usbserial_usbdebug_module_SOURCES) $(nodist_usbserial_usbdebug_module_SOURCES) -@COND_i386_qemu_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usbserial_usbdebug_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_qemu_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_coreboot_TRUE@usbserial_usbdebug.marker: $(usbserial_usbdebug_module_SOURCES) $(nodist_usbserial_usbdebug_module_SOURCES) -@COND_i386_coreboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usbserial_usbdebug_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_coreboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_multiboot_TRUE@usbserial_usbdebug.marker: $(usbserial_usbdebug_module_SOURCES) $(nodist_usbserial_usbdebug_module_SOURCES) -@COND_i386_multiboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usbserial_usbdebug_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_multiboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_ieee1275_TRUE@usbserial_usbdebug.marker: $(usbserial_usbdebug_module_SOURCES) $(nodist_usbserial_usbdebug_module_SOURCES) -@COND_i386_ieee1275_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usbserial_usbdebug_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_ieee1275_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_x86_64_efi_TRUE@usbserial_usbdebug.marker: $(usbserial_usbdebug_module_SOURCES) $(nodist_usbserial_usbdebug_module_SOURCES) -@COND_x86_64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usbserial_usbdebug_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_x86_64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_mips_loongson_TRUE@usbserial_usbdebug.marker: $(usbserial_usbdebug_module_SOURCES) $(nodist_usbserial_usbdebug_module_SOURCES) -@COND_mips_loongson_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usbserial_usbdebug_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_mips_loongson_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_arm_coreboot_TRUE@usbserial_usbdebug.marker: $(usbserial_usbdebug_module_SOURCES) $(nodist_usbserial_usbdebug_module_SOURCES) -@COND_arm_coreboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usbserial_usbdebug_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_arm_coreboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_pc_TRUE@uhci.marker: $(uhci_module_SOURCES) $(nodist_uhci_module_SOURCES) -@COND_i386_pc_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(uhci_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_pc_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_efi_TRUE@uhci.marker: $(uhci_module_SOURCES) $(nodist_uhci_module_SOURCES) -@COND_i386_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(uhci_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_qemu_TRUE@uhci.marker: $(uhci_module_SOURCES) $(nodist_uhci_module_SOURCES) -@COND_i386_qemu_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(uhci_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_qemu_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_coreboot_TRUE@uhci.marker: $(uhci_module_SOURCES) $(nodist_uhci_module_SOURCES) -@COND_i386_coreboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(uhci_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_coreboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_multiboot_TRUE@uhci.marker: $(uhci_module_SOURCES) $(nodist_uhci_module_SOURCES) -@COND_i386_multiboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(uhci_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_multiboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_ieee1275_TRUE@uhci.marker: $(uhci_module_SOURCES) $(nodist_uhci_module_SOURCES) -@COND_i386_ieee1275_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(uhci_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_ieee1275_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_x86_64_efi_TRUE@uhci.marker: $(uhci_module_SOURCES) $(nodist_uhci_module_SOURCES) -@COND_x86_64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(uhci_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_x86_64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_mips_loongson_TRUE@uhci.marker: $(uhci_module_SOURCES) $(nodist_uhci_module_SOURCES) -@COND_mips_loongson_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(uhci_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_mips_loongson_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_pc_TRUE@ohci.marker: $(ohci_module_SOURCES) $(nodist_ohci_module_SOURCES) -@COND_i386_pc_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ohci_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_pc_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_efi_TRUE@ohci.marker: $(ohci_module_SOURCES) $(nodist_ohci_module_SOURCES) -@COND_i386_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ohci_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_qemu_TRUE@ohci.marker: $(ohci_module_SOURCES) $(nodist_ohci_module_SOURCES) -@COND_i386_qemu_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ohci_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_qemu_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_coreboot_TRUE@ohci.marker: $(ohci_module_SOURCES) $(nodist_ohci_module_SOURCES) -@COND_i386_coreboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ohci_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_coreboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_multiboot_TRUE@ohci.marker: $(ohci_module_SOURCES) $(nodist_ohci_module_SOURCES) -@COND_i386_multiboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ohci_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_multiboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_ieee1275_TRUE@ohci.marker: $(ohci_module_SOURCES) $(nodist_ohci_module_SOURCES) -@COND_i386_ieee1275_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ohci_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_ieee1275_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_x86_64_efi_TRUE@ohci.marker: $(ohci_module_SOURCES) $(nodist_ohci_module_SOURCES) -@COND_x86_64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ohci_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_x86_64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_mips_loongson_TRUE@ohci.marker: $(ohci_module_SOURCES) $(nodist_ohci_module_SOURCES) -@COND_mips_loongson_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ohci_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_mips_loongson_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_pc_TRUE@ehci.marker: $(ehci_module_SOURCES) $(nodist_ehci_module_SOURCES) -@COND_i386_pc_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ehci_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_pc_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_efi_TRUE@ehci.marker: $(ehci_module_SOURCES) $(nodist_ehci_module_SOURCES) -@COND_i386_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ehci_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_qemu_TRUE@ehci.marker: $(ehci_module_SOURCES) $(nodist_ehci_module_SOURCES) -@COND_i386_qemu_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ehci_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_qemu_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_coreboot_TRUE@ehci.marker: $(ehci_module_SOURCES) $(nodist_ehci_module_SOURCES) -@COND_i386_coreboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ehci_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_coreboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_multiboot_TRUE@ehci.marker: $(ehci_module_SOURCES) $(nodist_ehci_module_SOURCES) -@COND_i386_multiboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ehci_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_multiboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_ieee1275_TRUE@ehci.marker: $(ehci_module_SOURCES) $(nodist_ehci_module_SOURCES) -@COND_i386_ieee1275_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ehci_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_ieee1275_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_x86_64_efi_TRUE@ehci.marker: $(ehci_module_SOURCES) $(nodist_ehci_module_SOURCES) -@COND_x86_64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ehci_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_x86_64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_mips_loongson_TRUE@ehci.marker: $(ehci_module_SOURCES) $(nodist_ehci_module_SOURCES) -@COND_mips_loongson_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ehci_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_mips_loongson_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_arm_coreboot_TRUE@ehci.marker: $(ehci_module_SOURCES) $(nodist_ehci_module_SOURCES) -@COND_arm_coreboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ehci_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_arm_coreboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_pc_TRUE@pci.marker: $(pci_module_SOURCES) $(nodist_pci_module_SOURCES) -@COND_i386_pc_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(pci_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_pc_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_coreboot_TRUE@pci.marker: $(pci_module_SOURCES) $(nodist_pci_module_SOURCES) -@COND_i386_coreboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(pci_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_coreboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_multiboot_TRUE@pci.marker: $(pci_module_SOURCES) $(nodist_pci_module_SOURCES) -@COND_i386_multiboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(pci_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_multiboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_ieee1275_TRUE@pci.marker: $(pci_module_SOURCES) $(nodist_pci_module_SOURCES) -@COND_i386_ieee1275_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(pci_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_ieee1275_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_pc_TRUE@nativedisk.marker: $(nativedisk_module_SOURCES) $(nodist_nativedisk_module_SOURCES) -@COND_i386_pc_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(nativedisk_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_pc_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_efi_TRUE@nativedisk.marker: $(nativedisk_module_SOURCES) $(nodist_nativedisk_module_SOURCES) -@COND_i386_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(nativedisk_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_qemu_TRUE@nativedisk.marker: $(nativedisk_module_SOURCES) $(nodist_nativedisk_module_SOURCES) -@COND_i386_qemu_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(nativedisk_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_qemu_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_coreboot_TRUE@nativedisk.marker: $(nativedisk_module_SOURCES) $(nodist_nativedisk_module_SOURCES) -@COND_i386_coreboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(nativedisk_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_coreboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_multiboot_TRUE@nativedisk.marker: $(nativedisk_module_SOURCES) $(nodist_nativedisk_module_SOURCES) -@COND_i386_multiboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(nativedisk_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_multiboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_ieee1275_TRUE@nativedisk.marker: $(nativedisk_module_SOURCES) $(nodist_nativedisk_module_SOURCES) -@COND_i386_ieee1275_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(nativedisk_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_ieee1275_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_x86_64_efi_TRUE@nativedisk.marker: $(nativedisk_module_SOURCES) $(nodist_nativedisk_module_SOURCES) -@COND_x86_64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(nativedisk_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_x86_64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_mips_loongson_TRUE@nativedisk.marker: $(nativedisk_module_SOURCES) $(nodist_nativedisk_module_SOURCES) -@COND_mips_loongson_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(nativedisk_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_mips_loongson_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_mips_qemu_mips_TRUE@nativedisk.marker: $(nativedisk_module_SOURCES) $(nodist_nativedisk_module_SOURCES) -@COND_mips_qemu_mips_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(nativedisk_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_mips_qemu_mips_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_GRUB_EMU_PCI_TRUE@@COND_emu_TRUE@emupci.marker: $(emupci_module_SOURCES) $(nodist_emupci_module_SOURCES) -@COND_GRUB_EMU_PCI_TRUE@@COND_emu_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(emupci_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_GRUB_EMU_PCI_TRUE@@COND_emu_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_mips_arc_TRUE@lsdev.marker: $(lsdev_module_SOURCES) $(nodist_lsdev_module_SOURCES) -@COND_mips_arc_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lsdev_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_mips_arc_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_xen_TRUE@lsxen.marker: $(lsxen_module_SOURCES) $(nodist_lsxen_module_SOURCES) -@COND_i386_xen_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lsxen_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_xen_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_x86_64_xen_TRUE@lsxen.marker: $(lsxen_module_SOURCES) $(nodist_lsxen_module_SOURCES) -@COND_x86_64_xen_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lsxen_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_x86_64_xen_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_pc_TRUE@cmostest.marker: $(cmostest_module_SOURCES) $(nodist_cmostest_module_SOURCES) -@COND_i386_pc_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cmostest_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_pc_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_qemu_TRUE@cmostest.marker: $(cmostest_module_SOURCES) $(nodist_cmostest_module_SOURCES) -@COND_i386_qemu_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cmostest_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_qemu_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_coreboot_TRUE@cmostest.marker: $(cmostest_module_SOURCES) $(nodist_cmostest_module_SOURCES) -@COND_i386_coreboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cmostest_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_coreboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_multiboot_TRUE@cmostest.marker: $(cmostest_module_SOURCES) $(nodist_cmostest_module_SOURCES) -@COND_i386_multiboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cmostest_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_multiboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_ieee1275_TRUE@cmostest.marker: $(cmostest_module_SOURCES) $(nodist_cmostest_module_SOURCES) -@COND_i386_ieee1275_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cmostest_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_ieee1275_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_mips_loongson_TRUE@cmostest.marker: $(cmostest_module_SOURCES) $(nodist_cmostest_module_SOURCES) -@COND_mips_loongson_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cmostest_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_mips_loongson_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_sparc64_ieee1275_TRUE@cmostest.marker: $(cmostest_module_SOURCES) $(nodist_cmostest_module_SOURCES) -@COND_sparc64_ieee1275_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cmostest_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_sparc64_ieee1275_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_powerpc_ieee1275_TRUE@cmostest.marker: $(cmostest_module_SOURCES) $(nodist_cmostest_module_SOURCES) -@COND_powerpc_ieee1275_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cmostest_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_powerpc_ieee1275_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_mips_qemu_mips_TRUE@cmostest.marker: $(cmostest_module_SOURCES) $(nodist_cmostest_module_SOURCES) -@COND_mips_qemu_mips_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cmostest_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_mips_qemu_mips_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_pc_TRUE@cmosdump.marker: $(cmosdump_module_SOURCES) $(nodist_cmosdump_module_SOURCES) -@COND_i386_pc_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cmosdump_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_pc_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_qemu_TRUE@cmosdump.marker: $(cmosdump_module_SOURCES) $(nodist_cmosdump_module_SOURCES) -@COND_i386_qemu_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cmosdump_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_qemu_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_coreboot_TRUE@cmosdump.marker: $(cmosdump_module_SOURCES) $(nodist_cmosdump_module_SOURCES) -@COND_i386_coreboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cmosdump_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_coreboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_multiboot_TRUE@cmosdump.marker: $(cmosdump_module_SOURCES) $(nodist_cmosdump_module_SOURCES) -@COND_i386_multiboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cmosdump_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_multiboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_ieee1275_TRUE@cmosdump.marker: $(cmosdump_module_SOURCES) $(nodist_cmosdump_module_SOURCES) -@COND_i386_ieee1275_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cmosdump_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_ieee1275_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_mips_loongson_TRUE@cmosdump.marker: $(cmosdump_module_SOURCES) $(nodist_cmosdump_module_SOURCES) -@COND_mips_loongson_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cmosdump_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_mips_loongson_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_sparc64_ieee1275_TRUE@cmosdump.marker: $(cmosdump_module_SOURCES) $(nodist_cmosdump_module_SOURCES) -@COND_sparc64_ieee1275_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cmosdump_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_sparc64_ieee1275_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_powerpc_ieee1275_TRUE@cmosdump.marker: $(cmosdump_module_SOURCES) $(nodist_cmosdump_module_SOURCES) -@COND_powerpc_ieee1275_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cmosdump_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_powerpc_ieee1275_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_mips_qemu_mips_TRUE@cmosdump.marker: $(cmosdump_module_SOURCES) $(nodist_cmosdump_module_SOURCES) -@COND_mips_qemu_mips_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cmosdump_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_mips_qemu_mips_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_pc_TRUE@iorw.marker: $(iorw_module_SOURCES) $(nodist_iorw_module_SOURCES) -@COND_i386_pc_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(iorw_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_pc_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_efi_TRUE@iorw.marker: $(iorw_module_SOURCES) $(nodist_iorw_module_SOURCES) -@COND_i386_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(iorw_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_qemu_TRUE@iorw.marker: $(iorw_module_SOURCES) $(nodist_iorw_module_SOURCES) -@COND_i386_qemu_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(iorw_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_qemu_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_coreboot_TRUE@iorw.marker: $(iorw_module_SOURCES) $(nodist_iorw_module_SOURCES) -@COND_i386_coreboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(iorw_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_coreboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_multiboot_TRUE@iorw.marker: $(iorw_module_SOURCES) $(nodist_iorw_module_SOURCES) -@COND_i386_multiboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(iorw_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_multiboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_ieee1275_TRUE@iorw.marker: $(iorw_module_SOURCES) $(nodist_iorw_module_SOURCES) -@COND_i386_ieee1275_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(iorw_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_ieee1275_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_x86_64_efi_TRUE@iorw.marker: $(iorw_module_SOURCES) $(nodist_iorw_module_SOURCES) -@COND_x86_64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(iorw_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_x86_64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_pc_TRUE@cbtable.marker: $(cbtable_module_SOURCES) $(nodist_cbtable_module_SOURCES) -@COND_i386_pc_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cbtable_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_pc_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_efi_TRUE@cbtable.marker: $(cbtable_module_SOURCES) $(nodist_cbtable_module_SOURCES) -@COND_i386_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cbtable_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_qemu_TRUE@cbtable.marker: $(cbtable_module_SOURCES) $(nodist_cbtable_module_SOURCES) -@COND_i386_qemu_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cbtable_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_qemu_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_multiboot_TRUE@cbtable.marker: $(cbtable_module_SOURCES) $(nodist_cbtable_module_SOURCES) -@COND_i386_multiboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cbtable_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_multiboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_ieee1275_TRUE@cbtable.marker: $(cbtable_module_SOURCES) $(nodist_cbtable_module_SOURCES) -@COND_i386_ieee1275_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cbtable_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_ieee1275_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_x86_64_efi_TRUE@cbtable.marker: $(cbtable_module_SOURCES) $(nodist_cbtable_module_SOURCES) -@COND_x86_64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cbtable_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_x86_64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_pc_TRUE@cbtime.marker: $(cbtime_module_SOURCES) $(nodist_cbtime_module_SOURCES) -@COND_i386_pc_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cbtime_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_pc_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_efi_TRUE@cbtime.marker: $(cbtime_module_SOURCES) $(nodist_cbtime_module_SOURCES) -@COND_i386_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cbtime_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_qemu_TRUE@cbtime.marker: $(cbtime_module_SOURCES) $(nodist_cbtime_module_SOURCES) -@COND_i386_qemu_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cbtime_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_qemu_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_coreboot_TRUE@cbtime.marker: $(cbtime_module_SOURCES) $(nodist_cbtime_module_SOURCES) -@COND_i386_coreboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cbtime_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_coreboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_multiboot_TRUE@cbtime.marker: $(cbtime_module_SOURCES) $(nodist_cbtime_module_SOURCES) -@COND_i386_multiboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cbtime_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_multiboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_ieee1275_TRUE@cbtime.marker: $(cbtime_module_SOURCES) $(nodist_cbtime_module_SOURCES) -@COND_i386_ieee1275_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cbtime_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_ieee1275_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_x86_64_efi_TRUE@cbtime.marker: $(cbtime_module_SOURCES) $(nodist_cbtime_module_SOURCES) -@COND_x86_64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cbtime_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_x86_64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_pc_TRUE@cbls.marker: $(cbls_module_SOURCES) $(nodist_cbls_module_SOURCES) -@COND_i386_pc_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cbls_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_pc_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_efi_TRUE@cbls.marker: $(cbls_module_SOURCES) $(nodist_cbls_module_SOURCES) -@COND_i386_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cbls_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_qemu_TRUE@cbls.marker: $(cbls_module_SOURCES) $(nodist_cbls_module_SOURCES) -@COND_i386_qemu_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cbls_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_qemu_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_coreboot_TRUE@cbls.marker: $(cbls_module_SOURCES) $(nodist_cbls_module_SOURCES) -@COND_i386_coreboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cbls_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_coreboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_multiboot_TRUE@cbls.marker: $(cbls_module_SOURCES) $(nodist_cbls_module_SOURCES) -@COND_i386_multiboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cbls_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_multiboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_ieee1275_TRUE@cbls.marker: $(cbls_module_SOURCES) $(nodist_cbls_module_SOURCES) -@COND_i386_ieee1275_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cbls_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_ieee1275_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_x86_64_efi_TRUE@cbls.marker: $(cbls_module_SOURCES) $(nodist_cbls_module_SOURCES) -@COND_x86_64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cbls_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_x86_64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_pc_TRUE@cbmemc.marker: $(cbmemc_module_SOURCES) $(nodist_cbmemc_module_SOURCES) -@COND_i386_pc_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cbmemc_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_pc_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_efi_TRUE@cbmemc.marker: $(cbmemc_module_SOURCES) $(nodist_cbmemc_module_SOURCES) -@COND_i386_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cbmemc_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_qemu_TRUE@cbmemc.marker: $(cbmemc_module_SOURCES) $(nodist_cbmemc_module_SOURCES) -@COND_i386_qemu_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cbmemc_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_qemu_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_coreboot_TRUE@cbmemc.marker: $(cbmemc_module_SOURCES) $(nodist_cbmemc_module_SOURCES) -@COND_i386_coreboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cbmemc_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_coreboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_multiboot_TRUE@cbmemc.marker: $(cbmemc_module_SOURCES) $(nodist_cbmemc_module_SOURCES) -@COND_i386_multiboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cbmemc_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_multiboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_ieee1275_TRUE@cbmemc.marker: $(cbmemc_module_SOURCES) $(nodist_cbmemc_module_SOURCES) -@COND_i386_ieee1275_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cbmemc_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_ieee1275_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_x86_64_efi_TRUE@cbmemc.marker: $(cbmemc_module_SOURCES) $(nodist_cbmemc_module_SOURCES) -@COND_x86_64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cbmemc_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_x86_64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -regexp.marker: $(regexp_module_SOURCES) $(nodist_regexp_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(regexp_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_pc_TRUE@acpi.marker: $(acpi_module_SOURCES) $(nodist_acpi_module_SOURCES) -@COND_i386_pc_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(acpi_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_pc_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_efi_TRUE@acpi.marker: $(acpi_module_SOURCES) $(nodist_acpi_module_SOURCES) -@COND_i386_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(acpi_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_coreboot_TRUE@acpi.marker: $(acpi_module_SOURCES) $(nodist_acpi_module_SOURCES) -@COND_i386_coreboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(acpi_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_coreboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_multiboot_TRUE@acpi.marker: $(acpi_module_SOURCES) $(nodist_acpi_module_SOURCES) -@COND_i386_multiboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(acpi_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_multiboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_x86_64_efi_TRUE@acpi.marker: $(acpi_module_SOURCES) $(nodist_acpi_module_SOURCES) -@COND_x86_64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(acpi_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_x86_64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_ia64_efi_TRUE@acpi.marker: $(acpi_module_SOURCES) $(nodist_acpi_module_SOURCES) -@COND_ia64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(acpi_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_ia64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_arm_efi_TRUE@acpi.marker: $(acpi_module_SOURCES) $(nodist_acpi_module_SOURCES) -@COND_arm_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(acpi_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_arm_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_arm64_efi_TRUE@acpi.marker: $(acpi_module_SOURCES) $(nodist_acpi_module_SOURCES) -@COND_arm64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(acpi_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_arm64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_riscv32_efi_TRUE@acpi.marker: $(acpi_module_SOURCES) $(nodist_acpi_module_SOURCES) -@COND_riscv32_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(acpi_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_riscv32_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_riscv64_efi_TRUE@acpi.marker: $(acpi_module_SOURCES) $(nodist_acpi_module_SOURCES) -@COND_riscv64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(acpi_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_riscv64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_pc_TRUE@lsacpi.marker: $(lsacpi_module_SOURCES) $(nodist_lsacpi_module_SOURCES) -@COND_i386_pc_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lsacpi_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_pc_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_efi_TRUE@lsacpi.marker: $(lsacpi_module_SOURCES) $(nodist_lsacpi_module_SOURCES) -@COND_i386_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lsacpi_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_coreboot_TRUE@lsacpi.marker: $(lsacpi_module_SOURCES) $(nodist_lsacpi_module_SOURCES) -@COND_i386_coreboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lsacpi_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_coreboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_multiboot_TRUE@lsacpi.marker: $(lsacpi_module_SOURCES) $(nodist_lsacpi_module_SOURCES) -@COND_i386_multiboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lsacpi_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_multiboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_x86_64_efi_TRUE@lsacpi.marker: $(lsacpi_module_SOURCES) $(nodist_lsacpi_module_SOURCES) -@COND_x86_64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lsacpi_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_x86_64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_ia64_efi_TRUE@lsacpi.marker: $(lsacpi_module_SOURCES) $(nodist_lsacpi_module_SOURCES) -@COND_ia64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lsacpi_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_ia64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_arm_efi_TRUE@lsacpi.marker: $(lsacpi_module_SOURCES) $(nodist_lsacpi_module_SOURCES) -@COND_arm_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lsacpi_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_arm_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_arm64_efi_TRUE@lsacpi.marker: $(lsacpi_module_SOURCES) $(nodist_lsacpi_module_SOURCES) -@COND_arm64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lsacpi_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_arm64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_riscv32_efi_TRUE@lsacpi.marker: $(lsacpi_module_SOURCES) $(nodist_lsacpi_module_SOURCES) -@COND_riscv32_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lsacpi_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_riscv32_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_riscv64_efi_TRUE@lsacpi.marker: $(lsacpi_module_SOURCES) $(nodist_lsacpi_module_SOURCES) -@COND_riscv64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lsacpi_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_riscv64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_efi_TRUE@lsefisystab.marker: $(lsefisystab_module_SOURCES) $(nodist_lsefisystab_module_SOURCES) -@COND_i386_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lsefisystab_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_x86_64_efi_TRUE@lsefisystab.marker: $(lsefisystab_module_SOURCES) $(nodist_lsefisystab_module_SOURCES) -@COND_x86_64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lsefisystab_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_x86_64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_ia64_efi_TRUE@lsefisystab.marker: $(lsefisystab_module_SOURCES) $(nodist_lsefisystab_module_SOURCES) -@COND_ia64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lsefisystab_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_ia64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_arm_efi_TRUE@lsefisystab.marker: $(lsefisystab_module_SOURCES) $(nodist_lsefisystab_module_SOURCES) -@COND_arm_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lsefisystab_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_arm_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_arm64_efi_TRUE@lsefisystab.marker: $(lsefisystab_module_SOURCES) $(nodist_lsefisystab_module_SOURCES) -@COND_arm64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lsefisystab_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_arm64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_riscv32_efi_TRUE@lsefisystab.marker: $(lsefisystab_module_SOURCES) $(nodist_lsefisystab_module_SOURCES) -@COND_riscv32_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lsefisystab_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_riscv32_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_riscv64_efi_TRUE@lsefisystab.marker: $(lsefisystab_module_SOURCES) $(nodist_lsefisystab_module_SOURCES) -@COND_riscv64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lsefisystab_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_riscv64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_efi_TRUE@lssal.marker: $(lssal_module_SOURCES) $(nodist_lssal_module_SOURCES) -@COND_i386_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lssal_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_x86_64_efi_TRUE@lssal.marker: $(lssal_module_SOURCES) $(nodist_lssal_module_SOURCES) -@COND_x86_64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lssal_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_x86_64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_ia64_efi_TRUE@lssal.marker: $(lssal_module_SOURCES) $(nodist_lssal_module_SOURCES) -@COND_ia64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lssal_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_ia64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_arm_efi_TRUE@lssal.marker: $(lssal_module_SOURCES) $(nodist_lssal_module_SOURCES) -@COND_arm_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lssal_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_arm_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_arm64_efi_TRUE@lssal.marker: $(lssal_module_SOURCES) $(nodist_lssal_module_SOURCES) -@COND_arm64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lssal_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_arm64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_riscv32_efi_TRUE@lssal.marker: $(lssal_module_SOURCES) $(nodist_lssal_module_SOURCES) -@COND_riscv32_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lssal_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_riscv32_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_riscv64_efi_TRUE@lssal.marker: $(lssal_module_SOURCES) $(nodist_lssal_module_SOURCES) -@COND_riscv64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lssal_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_riscv64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_efi_TRUE@lsefimmap.marker: $(lsefimmap_module_SOURCES) $(nodist_lsefimmap_module_SOURCES) -@COND_i386_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lsefimmap_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_x86_64_efi_TRUE@lsefimmap.marker: $(lsefimmap_module_SOURCES) $(nodist_lsefimmap_module_SOURCES) -@COND_x86_64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lsefimmap_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_x86_64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_ia64_efi_TRUE@lsefimmap.marker: $(lsefimmap_module_SOURCES) $(nodist_lsefimmap_module_SOURCES) -@COND_ia64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lsefimmap_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_ia64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_arm_efi_TRUE@lsefimmap.marker: $(lsefimmap_module_SOURCES) $(nodist_lsefimmap_module_SOURCES) -@COND_arm_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lsefimmap_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_arm_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_arm64_efi_TRUE@lsefimmap.marker: $(lsefimmap_module_SOURCES) $(nodist_lsefimmap_module_SOURCES) -@COND_arm64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lsefimmap_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_arm64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_riscv32_efi_TRUE@lsefimmap.marker: $(lsefimmap_module_SOURCES) $(nodist_lsefimmap_module_SOURCES) -@COND_riscv32_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lsefimmap_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_riscv32_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_riscv64_efi_TRUE@lsefimmap.marker: $(lsefimmap_module_SOURCES) $(nodist_lsefimmap_module_SOURCES) -@COND_riscv64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lsefimmap_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_riscv64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_efi_TRUE@lsefi.marker: $(lsefi_module_SOURCES) $(nodist_lsefi_module_SOURCES) -@COND_i386_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lsefi_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_x86_64_efi_TRUE@lsefi.marker: $(lsefi_module_SOURCES) $(nodist_lsefi_module_SOURCES) -@COND_x86_64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lsefi_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_x86_64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_ia64_efi_TRUE@lsefi.marker: $(lsefi_module_SOURCES) $(nodist_lsefi_module_SOURCES) -@COND_ia64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lsefi_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_ia64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_arm_efi_TRUE@lsefi.marker: $(lsefi_module_SOURCES) $(nodist_lsefi_module_SOURCES) -@COND_arm_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lsefi_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_arm_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_arm64_efi_TRUE@lsefi.marker: $(lsefi_module_SOURCES) $(nodist_lsefi_module_SOURCES) -@COND_arm64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lsefi_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_arm64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_riscv32_efi_TRUE@lsefi.marker: $(lsefi_module_SOURCES) $(nodist_lsefi_module_SOURCES) -@COND_riscv32_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lsefi_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_riscv32_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_riscv64_efi_TRUE@lsefi.marker: $(lsefi_module_SOURCES) $(nodist_lsefi_module_SOURCES) -@COND_riscv64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lsefi_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_riscv64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_efi_TRUE@efifwsetup.marker: $(efifwsetup_module_SOURCES) $(nodist_efifwsetup_module_SOURCES) -@COND_i386_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(efifwsetup_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_x86_64_efi_TRUE@efifwsetup.marker: $(efifwsetup_module_SOURCES) $(nodist_efifwsetup_module_SOURCES) -@COND_x86_64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(efifwsetup_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_x86_64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_ia64_efi_TRUE@efifwsetup.marker: $(efifwsetup_module_SOURCES) $(nodist_efifwsetup_module_SOURCES) -@COND_ia64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(efifwsetup_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_ia64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_arm_efi_TRUE@efifwsetup.marker: $(efifwsetup_module_SOURCES) $(nodist_efifwsetup_module_SOURCES) -@COND_arm_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(efifwsetup_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_arm_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_arm64_efi_TRUE@efifwsetup.marker: $(efifwsetup_module_SOURCES) $(nodist_efifwsetup_module_SOURCES) -@COND_arm64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(efifwsetup_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_arm64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_riscv32_efi_TRUE@efifwsetup.marker: $(efifwsetup_module_SOURCES) $(nodist_efifwsetup_module_SOURCES) -@COND_riscv32_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(efifwsetup_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_riscv32_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_riscv64_efi_TRUE@efifwsetup.marker: $(efifwsetup_module_SOURCES) $(nodist_efifwsetup_module_SOURCES) -@COND_riscv64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(efifwsetup_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_riscv64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -blocklist.marker: $(blocklist_module_SOURCES) $(nodist_blocklist_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(blocklist_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_emu_TRUE@boot.marker: $(boot_module_SOURCES) $(nodist_boot_module_SOURCES) -@COND_emu_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(boot_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_emu_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_pc_TRUE@boot.marker: $(boot_module_SOURCES) $(nodist_boot_module_SOURCES) -@COND_i386_pc_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(boot_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_pc_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_efi_TRUE@boot.marker: $(boot_module_SOURCES) $(nodist_boot_module_SOURCES) -@COND_i386_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(boot_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_qemu_TRUE@boot.marker: $(boot_module_SOURCES) $(nodist_boot_module_SOURCES) -@COND_i386_qemu_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(boot_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_qemu_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_coreboot_TRUE@boot.marker: $(boot_module_SOURCES) $(nodist_boot_module_SOURCES) -@COND_i386_coreboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(boot_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_coreboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_multiboot_TRUE@boot.marker: $(boot_module_SOURCES) $(nodist_boot_module_SOURCES) -@COND_i386_multiboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(boot_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_multiboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_ieee1275_TRUE@boot.marker: $(boot_module_SOURCES) $(nodist_boot_module_SOURCES) -@COND_i386_ieee1275_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(boot_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_ieee1275_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_x86_64_efi_TRUE@boot.marker: $(boot_module_SOURCES) $(nodist_boot_module_SOURCES) -@COND_x86_64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(boot_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_x86_64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_sparc64_ieee1275_TRUE@boot.marker: $(boot_module_SOURCES) $(nodist_boot_module_SOURCES) -@COND_sparc64_ieee1275_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(boot_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_sparc64_ieee1275_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_powerpc_ieee1275_TRUE@boot.marker: $(boot_module_SOURCES) $(nodist_boot_module_SOURCES) -@COND_powerpc_ieee1275_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(boot_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_powerpc_ieee1275_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_mips_arc_TRUE@boot.marker: $(boot_module_SOURCES) $(nodist_boot_module_SOURCES) -@COND_mips_arc_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(boot_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_mips_arc_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_ia64_efi_TRUE@boot.marker: $(boot_module_SOURCES) $(nodist_boot_module_SOURCES) -@COND_ia64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(boot_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_ia64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_arm_uboot_TRUE@boot.marker: $(boot_module_SOURCES) $(nodist_boot_module_SOURCES) -@COND_arm_uboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(boot_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_arm_uboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_arm_efi_TRUE@boot.marker: $(boot_module_SOURCES) $(nodist_boot_module_SOURCES) -@COND_arm_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(boot_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_arm_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_arm64_efi_TRUE@boot.marker: $(boot_module_SOURCES) $(nodist_boot_module_SOURCES) -@COND_arm64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(boot_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_arm64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_arm_coreboot_TRUE@boot.marker: $(boot_module_SOURCES) $(nodist_boot_module_SOURCES) -@COND_arm_coreboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(boot_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_arm_coreboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_riscv32_efi_TRUE@boot.marker: $(boot_module_SOURCES) $(nodist_boot_module_SOURCES) -@COND_riscv32_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(boot_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_riscv32_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_riscv64_efi_TRUE@boot.marker: $(boot_module_SOURCES) $(nodist_boot_module_SOURCES) -@COND_riscv64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(boot_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_riscv64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -cat.marker: $(cat_module_SOURCES) $(nodist_cat_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cat_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -cmp.marker: $(cmp_module_SOURCES) $(nodist_cmp_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cmp_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -configfile.marker: $(configfile_module_SOURCES) $(nodist_configfile_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(configfile_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_pc_TRUE@cpuid.marker: $(cpuid_module_SOURCES) $(nodist_cpuid_module_SOURCES) -@COND_i386_pc_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cpuid_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_pc_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_efi_TRUE@cpuid.marker: $(cpuid_module_SOURCES) $(nodist_cpuid_module_SOURCES) -@COND_i386_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cpuid_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_qemu_TRUE@cpuid.marker: $(cpuid_module_SOURCES) $(nodist_cpuid_module_SOURCES) -@COND_i386_qemu_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cpuid_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_qemu_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_coreboot_TRUE@cpuid.marker: $(cpuid_module_SOURCES) $(nodist_cpuid_module_SOURCES) -@COND_i386_coreboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cpuid_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_coreboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_multiboot_TRUE@cpuid.marker: $(cpuid_module_SOURCES) $(nodist_cpuid_module_SOURCES) -@COND_i386_multiboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cpuid_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_multiboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_ieee1275_TRUE@cpuid.marker: $(cpuid_module_SOURCES) $(nodist_cpuid_module_SOURCES) -@COND_i386_ieee1275_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cpuid_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_ieee1275_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_x86_64_efi_TRUE@cpuid.marker: $(cpuid_module_SOURCES) $(nodist_cpuid_module_SOURCES) -@COND_x86_64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cpuid_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_x86_64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_xen_TRUE@cpuid.marker: $(cpuid_module_SOURCES) $(nodist_cpuid_module_SOURCES) -@COND_i386_xen_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cpuid_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_xen_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_x86_64_xen_TRUE@cpuid.marker: $(cpuid_module_SOURCES) $(nodist_cpuid_module_SOURCES) -@COND_x86_64_xen_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cpuid_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_x86_64_xen_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_xen_pvh_TRUE@cpuid.marker: $(cpuid_module_SOURCES) $(nodist_cpuid_module_SOURCES) -@COND_i386_xen_pvh_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cpuid_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_xen_pvh_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -date.marker: $(date_module_SOURCES) $(nodist_date_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(date_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_pc_TRUE@drivemap.marker: $(drivemap_module_SOURCES) $(nodist_drivemap_module_SOURCES) -@COND_i386_pc_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(drivemap_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_pc_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -echo.marker: $(echo_module_SOURCES) $(nodist_echo_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(echo_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -eval.marker: $(eval_module_SOURCES) $(nodist_eval_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(eval_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_pc_TRUE@extcmd.marker: $(extcmd_module_SOURCES) $(nodist_extcmd_module_SOURCES) -@COND_i386_pc_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(extcmd_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_pc_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_efi_TRUE@extcmd.marker: $(extcmd_module_SOURCES) $(nodist_extcmd_module_SOURCES) -@COND_i386_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(extcmd_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_qemu_TRUE@extcmd.marker: $(extcmd_module_SOURCES) $(nodist_extcmd_module_SOURCES) -@COND_i386_qemu_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(extcmd_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_qemu_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_coreboot_TRUE@extcmd.marker: $(extcmd_module_SOURCES) $(nodist_extcmd_module_SOURCES) -@COND_i386_coreboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(extcmd_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_coreboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_multiboot_TRUE@extcmd.marker: $(extcmd_module_SOURCES) $(nodist_extcmd_module_SOURCES) -@COND_i386_multiboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(extcmd_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_multiboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_x86_64_efi_TRUE@extcmd.marker: $(extcmd_module_SOURCES) $(nodist_extcmd_module_SOURCES) -@COND_x86_64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(extcmd_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_x86_64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_ia64_efi_TRUE@extcmd.marker: $(extcmd_module_SOURCES) $(nodist_extcmd_module_SOURCES) -@COND_ia64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(extcmd_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_ia64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_arm_efi_TRUE@extcmd.marker: $(extcmd_module_SOURCES) $(nodist_extcmd_module_SOURCES) -@COND_arm_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(extcmd_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_arm_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_arm64_efi_TRUE@extcmd.marker: $(extcmd_module_SOURCES) $(nodist_extcmd_module_SOURCES) -@COND_arm64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(extcmd_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_arm64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_arm_coreboot_TRUE@extcmd.marker: $(extcmd_module_SOURCES) $(nodist_extcmd_module_SOURCES) -@COND_arm_coreboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(extcmd_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_arm_coreboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_riscv32_efi_TRUE@extcmd.marker: $(extcmd_module_SOURCES) $(nodist_extcmd_module_SOURCES) -@COND_riscv32_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(extcmd_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_riscv32_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_riscv64_efi_TRUE@extcmd.marker: $(extcmd_module_SOURCES) $(nodist_extcmd_module_SOURCES) -@COND_riscv64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(extcmd_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_riscv64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_efi_TRUE@fixvideo.marker: $(fixvideo_module_SOURCES) $(nodist_fixvideo_module_SOURCES) -@COND_i386_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(fixvideo_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_x86_64_efi_TRUE@fixvideo.marker: $(fixvideo_module_SOURCES) $(nodist_fixvideo_module_SOURCES) -@COND_x86_64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(fixvideo_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_x86_64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -gptsync.marker: $(gptsync_module_SOURCES) $(nodist_gptsync_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gptsync_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_emu_TRUE@halt.marker: $(halt_module_SOURCES) $(nodist_halt_module_SOURCES) -@COND_emu_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(halt_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_emu_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_pc_TRUE@halt.marker: $(halt_module_SOURCES) $(nodist_halt_module_SOURCES) -@COND_i386_pc_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(halt_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_pc_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_efi_TRUE@halt.marker: $(halt_module_SOURCES) $(nodist_halt_module_SOURCES) -@COND_i386_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(halt_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_qemu_TRUE@halt.marker: $(halt_module_SOURCES) $(nodist_halt_module_SOURCES) -@COND_i386_qemu_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(halt_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_qemu_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_coreboot_TRUE@halt.marker: $(halt_module_SOURCES) $(nodist_halt_module_SOURCES) -@COND_i386_coreboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(halt_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_coreboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_multiboot_TRUE@halt.marker: $(halt_module_SOURCES) $(nodist_halt_module_SOURCES) -@COND_i386_multiboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(halt_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_multiboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_ieee1275_TRUE@halt.marker: $(halt_module_SOURCES) $(nodist_halt_module_SOURCES) -@COND_i386_ieee1275_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(halt_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_ieee1275_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_x86_64_efi_TRUE@halt.marker: $(halt_module_SOURCES) $(nodist_halt_module_SOURCES) -@COND_x86_64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(halt_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_x86_64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_xen_TRUE@halt.marker: $(halt_module_SOURCES) $(nodist_halt_module_SOURCES) -@COND_i386_xen_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(halt_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_xen_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_x86_64_xen_TRUE@halt.marker: $(halt_module_SOURCES) $(nodist_halt_module_SOURCES) -@COND_x86_64_xen_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(halt_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_x86_64_xen_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_xen_pvh_TRUE@halt.marker: $(halt_module_SOURCES) $(nodist_halt_module_SOURCES) -@COND_i386_xen_pvh_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(halt_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_xen_pvh_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_mips_loongson_TRUE@halt.marker: $(halt_module_SOURCES) $(nodist_halt_module_SOURCES) -@COND_mips_loongson_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(halt_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_mips_loongson_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_sparc64_ieee1275_TRUE@halt.marker: $(halt_module_SOURCES) $(nodist_halt_module_SOURCES) -@COND_sparc64_ieee1275_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(halt_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_sparc64_ieee1275_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_powerpc_ieee1275_TRUE@halt.marker: $(halt_module_SOURCES) $(nodist_halt_module_SOURCES) -@COND_powerpc_ieee1275_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(halt_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_powerpc_ieee1275_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_mips_arc_TRUE@halt.marker: $(halt_module_SOURCES) $(nodist_halt_module_SOURCES) -@COND_mips_arc_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(halt_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_mips_arc_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_ia64_efi_TRUE@halt.marker: $(halt_module_SOURCES) $(nodist_halt_module_SOURCES) -@COND_ia64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(halt_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_ia64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_mips_qemu_mips_TRUE@halt.marker: $(halt_module_SOURCES) $(nodist_halt_module_SOURCES) -@COND_mips_qemu_mips_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(halt_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_mips_qemu_mips_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_arm_uboot_TRUE@halt.marker: $(halt_module_SOURCES) $(nodist_halt_module_SOURCES) -@COND_arm_uboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(halt_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_arm_uboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_arm_efi_TRUE@halt.marker: $(halt_module_SOURCES) $(nodist_halt_module_SOURCES) -@COND_arm_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(halt_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_arm_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_arm64_efi_TRUE@halt.marker: $(halt_module_SOURCES) $(nodist_halt_module_SOURCES) -@COND_arm64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(halt_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_arm64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_arm_coreboot_TRUE@halt.marker: $(halt_module_SOURCES) $(nodist_halt_module_SOURCES) -@COND_arm_coreboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(halt_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_arm_coreboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_riscv32_efi_TRUE@halt.marker: $(halt_module_SOURCES) $(nodist_halt_module_SOURCES) -@COND_riscv32_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(halt_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_riscv32_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_riscv64_efi_TRUE@halt.marker: $(halt_module_SOURCES) $(nodist_halt_module_SOURCES) -@COND_riscv64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(halt_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_riscv64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_emu_TRUE@reboot.marker: $(reboot_module_SOURCES) $(nodist_reboot_module_SOURCES) -@COND_emu_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(reboot_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_emu_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_pc_TRUE@reboot.marker: $(reboot_module_SOURCES) $(nodist_reboot_module_SOURCES) -@COND_i386_pc_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(reboot_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_pc_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_efi_TRUE@reboot.marker: $(reboot_module_SOURCES) $(nodist_reboot_module_SOURCES) -@COND_i386_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(reboot_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_qemu_TRUE@reboot.marker: $(reboot_module_SOURCES) $(nodist_reboot_module_SOURCES) -@COND_i386_qemu_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(reboot_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_qemu_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_coreboot_TRUE@reboot.marker: $(reboot_module_SOURCES) $(nodist_reboot_module_SOURCES) -@COND_i386_coreboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(reboot_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_coreboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_multiboot_TRUE@reboot.marker: $(reboot_module_SOURCES) $(nodist_reboot_module_SOURCES) -@COND_i386_multiboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(reboot_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_multiboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_ieee1275_TRUE@reboot.marker: $(reboot_module_SOURCES) $(nodist_reboot_module_SOURCES) -@COND_i386_ieee1275_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(reboot_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_ieee1275_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_x86_64_efi_TRUE@reboot.marker: $(reboot_module_SOURCES) $(nodist_reboot_module_SOURCES) -@COND_x86_64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(reboot_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_x86_64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_xen_TRUE@reboot.marker: $(reboot_module_SOURCES) $(nodist_reboot_module_SOURCES) -@COND_i386_xen_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(reboot_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_xen_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_x86_64_xen_TRUE@reboot.marker: $(reboot_module_SOURCES) $(nodist_reboot_module_SOURCES) -@COND_x86_64_xen_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(reboot_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_x86_64_xen_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_xen_pvh_TRUE@reboot.marker: $(reboot_module_SOURCES) $(nodist_reboot_module_SOURCES) -@COND_i386_xen_pvh_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(reboot_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_xen_pvh_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_mips_loongson_TRUE@reboot.marker: $(reboot_module_SOURCES) $(nodist_reboot_module_SOURCES) -@COND_mips_loongson_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(reboot_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_mips_loongson_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_sparc64_ieee1275_TRUE@reboot.marker: $(reboot_module_SOURCES) $(nodist_reboot_module_SOURCES) -@COND_sparc64_ieee1275_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(reboot_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_sparc64_ieee1275_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_powerpc_ieee1275_TRUE@reboot.marker: $(reboot_module_SOURCES) $(nodist_reboot_module_SOURCES) -@COND_powerpc_ieee1275_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(reboot_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_powerpc_ieee1275_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_mips_arc_TRUE@reboot.marker: $(reboot_module_SOURCES) $(nodist_reboot_module_SOURCES) -@COND_mips_arc_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(reboot_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_mips_arc_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_ia64_efi_TRUE@reboot.marker: $(reboot_module_SOURCES) $(nodist_reboot_module_SOURCES) -@COND_ia64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(reboot_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_ia64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_mips_qemu_mips_TRUE@reboot.marker: $(reboot_module_SOURCES) $(nodist_reboot_module_SOURCES) -@COND_mips_qemu_mips_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(reboot_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_mips_qemu_mips_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_arm_uboot_TRUE@reboot.marker: $(reboot_module_SOURCES) $(nodist_reboot_module_SOURCES) -@COND_arm_uboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(reboot_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_arm_uboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_arm_efi_TRUE@reboot.marker: $(reboot_module_SOURCES) $(nodist_reboot_module_SOURCES) -@COND_arm_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(reboot_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_arm_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_arm64_efi_TRUE@reboot.marker: $(reboot_module_SOURCES) $(nodist_reboot_module_SOURCES) -@COND_arm64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(reboot_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_arm64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_arm_coreboot_TRUE@reboot.marker: $(reboot_module_SOURCES) $(nodist_reboot_module_SOURCES) -@COND_arm_coreboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(reboot_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_arm_coreboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_riscv32_efi_TRUE@reboot.marker: $(reboot_module_SOURCES) $(nodist_reboot_module_SOURCES) -@COND_riscv32_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(reboot_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_riscv32_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_riscv64_efi_TRUE@reboot.marker: $(reboot_module_SOURCES) $(nodist_reboot_module_SOURCES) -@COND_riscv64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(reboot_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_riscv64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -hashsum.marker: $(hashsum_module_SOURCES) $(nodist_hashsum_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(hashsum_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -pgp.marker: $(pgp_module_SOURCES) $(nodist_pgp_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(pgp_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -verifiers.marker: $(verifiers_module_SOURCES) $(nodist_verifiers_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(verifiers_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_x86_64_efi_TRUE@shim_lock.marker: $(shim_lock_module_SOURCES) $(nodist_shim_lock_module_SOURCES) -@COND_x86_64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(shim_lock_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_x86_64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_pc_TRUE@hdparm.marker: $(hdparm_module_SOURCES) $(nodist_hdparm_module_SOURCES) -@COND_i386_pc_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(hdparm_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_pc_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_efi_TRUE@hdparm.marker: $(hdparm_module_SOURCES) $(nodist_hdparm_module_SOURCES) -@COND_i386_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(hdparm_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_qemu_TRUE@hdparm.marker: $(hdparm_module_SOURCES) $(nodist_hdparm_module_SOURCES) -@COND_i386_qemu_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(hdparm_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_qemu_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_coreboot_TRUE@hdparm.marker: $(hdparm_module_SOURCES) $(nodist_hdparm_module_SOURCES) -@COND_i386_coreboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(hdparm_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_coreboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_multiboot_TRUE@hdparm.marker: $(hdparm_module_SOURCES) $(nodist_hdparm_module_SOURCES) -@COND_i386_multiboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(hdparm_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_multiboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_ieee1275_TRUE@hdparm.marker: $(hdparm_module_SOURCES) $(nodist_hdparm_module_SOURCES) -@COND_i386_ieee1275_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(hdparm_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_ieee1275_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_x86_64_efi_TRUE@hdparm.marker: $(hdparm_module_SOURCES) $(nodist_hdparm_module_SOURCES) -@COND_x86_64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(hdparm_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_x86_64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_mips_loongson_TRUE@hdparm.marker: $(hdparm_module_SOURCES) $(nodist_hdparm_module_SOURCES) -@COND_mips_loongson_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(hdparm_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_mips_loongson_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_mips_qemu_mips_TRUE@hdparm.marker: $(hdparm_module_SOURCES) $(nodist_hdparm_module_SOURCES) -@COND_mips_qemu_mips_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(hdparm_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_mips_qemu_mips_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -help.marker: $(help_module_SOURCES) $(nodist_help_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(help_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -hexdump.marker: $(hexdump_module_SOURCES) $(nodist_hexdump_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(hexdump_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -keystatus.marker: $(keystatus_module_SOURCES) $(nodist_keystatus_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(keystatus_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_efi_TRUE@loadbios.marker: $(loadbios_module_SOURCES) $(nodist_loadbios_module_SOURCES) -@COND_i386_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(loadbios_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_x86_64_efi_TRUE@loadbios.marker: $(loadbios_module_SOURCES) $(nodist_loadbios_module_SOURCES) -@COND_x86_64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(loadbios_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_x86_64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -loadenv.marker: $(loadenv_module_SOURCES) $(nodist_loadenv_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(loadenv_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -ls.marker: $(ls_module_SOURCES) $(nodist_ls_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ls_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -lsmmap.marker: $(lsmmap_module_SOURCES) $(nodist_lsmmap_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lsmmap_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_pc_TRUE@lspci.marker: $(lspci_module_SOURCES) $(nodist_lspci_module_SOURCES) -@COND_i386_pc_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lspci_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_pc_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_efi_TRUE@lspci.marker: $(lspci_module_SOURCES) $(nodist_lspci_module_SOURCES) -@COND_i386_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lspci_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_qemu_TRUE@lspci.marker: $(lspci_module_SOURCES) $(nodist_lspci_module_SOURCES) -@COND_i386_qemu_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lspci_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_qemu_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_coreboot_TRUE@lspci.marker: $(lspci_module_SOURCES) $(nodist_lspci_module_SOURCES) -@COND_i386_coreboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lspci_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_coreboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_multiboot_TRUE@lspci.marker: $(lspci_module_SOURCES) $(nodist_lspci_module_SOURCES) -@COND_i386_multiboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lspci_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_multiboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_ieee1275_TRUE@lspci.marker: $(lspci_module_SOURCES) $(nodist_lspci_module_SOURCES) -@COND_i386_ieee1275_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lspci_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_ieee1275_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_x86_64_efi_TRUE@lspci.marker: $(lspci_module_SOURCES) $(nodist_lspci_module_SOURCES) -@COND_x86_64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lspci_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_x86_64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_mips_loongson_TRUE@lspci.marker: $(lspci_module_SOURCES) $(nodist_lspci_module_SOURCES) -@COND_mips_loongson_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lspci_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_mips_loongson_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -memrw.marker: $(memrw_module_SOURCES) $(nodist_memrw_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(memrw_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -minicmd.marker: $(minicmd_module_SOURCES) $(nodist_minicmd_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(minicmd_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -parttool.marker: $(parttool_module_SOURCES) $(nodist_parttool_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(parttool_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -password.marker: $(password_module_SOURCES) $(nodist_password_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(password_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -password_pbkdf2.marker: $(password_pbkdf2_module_SOURCES) $(nodist_password_pbkdf2_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(password_pbkdf2_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_pc_TRUE@play.marker: $(play_module_SOURCES) $(nodist_play_module_SOURCES) -@COND_i386_pc_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(play_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_pc_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_efi_TRUE@play.marker: $(play_module_SOURCES) $(nodist_play_module_SOURCES) -@COND_i386_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(play_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_qemu_TRUE@play.marker: $(play_module_SOURCES) $(nodist_play_module_SOURCES) -@COND_i386_qemu_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(play_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_qemu_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_coreboot_TRUE@play.marker: $(play_module_SOURCES) $(nodist_play_module_SOURCES) -@COND_i386_coreboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(play_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_coreboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_multiboot_TRUE@play.marker: $(play_module_SOURCES) $(nodist_play_module_SOURCES) -@COND_i386_multiboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(play_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_multiboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_ieee1275_TRUE@play.marker: $(play_module_SOURCES) $(nodist_play_module_SOURCES) -@COND_i386_ieee1275_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(play_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_ieee1275_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_x86_64_efi_TRUE@play.marker: $(play_module_SOURCES) $(nodist_play_module_SOURCES) -@COND_x86_64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(play_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_x86_64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_pc_TRUE@spkmodem.marker: $(spkmodem_module_SOURCES) $(nodist_spkmodem_module_SOURCES) -@COND_i386_pc_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(spkmodem_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_pc_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_efi_TRUE@spkmodem.marker: $(spkmodem_module_SOURCES) $(nodist_spkmodem_module_SOURCES) -@COND_i386_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(spkmodem_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_qemu_TRUE@spkmodem.marker: $(spkmodem_module_SOURCES) $(nodist_spkmodem_module_SOURCES) -@COND_i386_qemu_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(spkmodem_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_qemu_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_coreboot_TRUE@spkmodem.marker: $(spkmodem_module_SOURCES) $(nodist_spkmodem_module_SOURCES) -@COND_i386_coreboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(spkmodem_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_coreboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_multiboot_TRUE@spkmodem.marker: $(spkmodem_module_SOURCES) $(nodist_spkmodem_module_SOURCES) -@COND_i386_multiboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(spkmodem_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_multiboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_ieee1275_TRUE@spkmodem.marker: $(spkmodem_module_SOURCES) $(nodist_spkmodem_module_SOURCES) -@COND_i386_ieee1275_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(spkmodem_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_ieee1275_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_x86_64_efi_TRUE@spkmodem.marker: $(spkmodem_module_SOURCES) $(nodist_spkmodem_module_SOURCES) -@COND_x86_64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(spkmodem_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_x86_64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_pc_TRUE@morse.marker: $(morse_module_SOURCES) $(nodist_morse_module_SOURCES) -@COND_i386_pc_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(morse_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_pc_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_efi_TRUE@morse.marker: $(morse_module_SOURCES) $(nodist_morse_module_SOURCES) -@COND_i386_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(morse_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_qemu_TRUE@morse.marker: $(morse_module_SOURCES) $(nodist_morse_module_SOURCES) -@COND_i386_qemu_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(morse_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_qemu_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_coreboot_TRUE@morse.marker: $(morse_module_SOURCES) $(nodist_morse_module_SOURCES) -@COND_i386_coreboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(morse_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_coreboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_multiboot_TRUE@morse.marker: $(morse_module_SOURCES) $(nodist_morse_module_SOURCES) -@COND_i386_multiboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(morse_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_multiboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_ieee1275_TRUE@morse.marker: $(morse_module_SOURCES) $(nodist_morse_module_SOURCES) -@COND_i386_ieee1275_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(morse_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_ieee1275_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_x86_64_efi_TRUE@morse.marker: $(morse_module_SOURCES) $(nodist_morse_module_SOURCES) -@COND_x86_64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(morse_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_x86_64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -probe.marker: $(probe_module_SOURCES) $(nodist_probe_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(probe_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -read.marker: $(read_module_SOURCES) $(nodist_read_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(read_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -search.marker: $(search_module_SOURCES) $(nodist_search_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(search_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -search_fs_file.marker: $(search_fs_file_module_SOURCES) $(nodist_search_fs_file_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(search_fs_file_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -search_fs_uuid.marker: $(search_fs_uuid_module_SOURCES) $(nodist_search_fs_uuid_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(search_fs_uuid_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -search_label.marker: $(search_label_module_SOURCES) $(nodist_search_label_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(search_label_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_pc_TRUE@setpci.marker: $(setpci_module_SOURCES) $(nodist_setpci_module_SOURCES) -@COND_i386_pc_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(setpci_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_pc_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_efi_TRUE@setpci.marker: $(setpci_module_SOURCES) $(nodist_setpci_module_SOURCES) -@COND_i386_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(setpci_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_qemu_TRUE@setpci.marker: $(setpci_module_SOURCES) $(nodist_setpci_module_SOURCES) -@COND_i386_qemu_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(setpci_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_qemu_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_coreboot_TRUE@setpci.marker: $(setpci_module_SOURCES) $(nodist_setpci_module_SOURCES) -@COND_i386_coreboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(setpci_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_coreboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_multiboot_TRUE@setpci.marker: $(setpci_module_SOURCES) $(nodist_setpci_module_SOURCES) -@COND_i386_multiboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(setpci_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_multiboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_ieee1275_TRUE@setpci.marker: $(setpci_module_SOURCES) $(nodist_setpci_module_SOURCES) -@COND_i386_ieee1275_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(setpci_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_ieee1275_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_x86_64_efi_TRUE@setpci.marker: $(setpci_module_SOURCES) $(nodist_setpci_module_SOURCES) -@COND_x86_64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(setpci_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_x86_64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_mips_loongson_TRUE@setpci.marker: $(setpci_module_SOURCES) $(nodist_setpci_module_SOURCES) -@COND_mips_loongson_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(setpci_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_mips_loongson_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_pc_TRUE@pcidump.marker: $(pcidump_module_SOURCES) $(nodist_pcidump_module_SOURCES) -@COND_i386_pc_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(pcidump_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_pc_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_efi_TRUE@pcidump.marker: $(pcidump_module_SOURCES) $(nodist_pcidump_module_SOURCES) -@COND_i386_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(pcidump_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_qemu_TRUE@pcidump.marker: $(pcidump_module_SOURCES) $(nodist_pcidump_module_SOURCES) -@COND_i386_qemu_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(pcidump_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_qemu_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_coreboot_TRUE@pcidump.marker: $(pcidump_module_SOURCES) $(nodist_pcidump_module_SOURCES) -@COND_i386_coreboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(pcidump_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_coreboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_multiboot_TRUE@pcidump.marker: $(pcidump_module_SOURCES) $(nodist_pcidump_module_SOURCES) -@COND_i386_multiboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(pcidump_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_multiboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_ieee1275_TRUE@pcidump.marker: $(pcidump_module_SOURCES) $(nodist_pcidump_module_SOURCES) -@COND_i386_ieee1275_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(pcidump_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_ieee1275_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_x86_64_efi_TRUE@pcidump.marker: $(pcidump_module_SOURCES) $(nodist_pcidump_module_SOURCES) -@COND_x86_64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(pcidump_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_x86_64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_mips_loongson_TRUE@pcidump.marker: $(pcidump_module_SOURCES) $(nodist_pcidump_module_SOURCES) -@COND_mips_loongson_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(pcidump_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_mips_loongson_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -sleep.marker: $(sleep_module_SOURCES) $(nodist_sleep_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(sleep_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_ieee1275_TRUE@suspend.marker: $(suspend_module_SOURCES) $(nodist_suspend_module_SOURCES) -@COND_i386_ieee1275_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(suspend_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_ieee1275_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_powerpc_ieee1275_TRUE@suspend.marker: $(suspend_module_SOURCES) $(nodist_suspend_module_SOURCES) -@COND_powerpc_ieee1275_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(suspend_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_powerpc_ieee1275_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_powerpc_ieee1275_TRUE@escc.marker: $(escc_module_SOURCES) $(nodist_escc_module_SOURCES) -@COND_powerpc_ieee1275_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(escc_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_powerpc_ieee1275_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -terminal.marker: $(terminal_module_SOURCES) $(nodist_terminal_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(terminal_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -test.marker: $(test_module_SOURCES) $(nodist_test_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(test_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -true.marker: $(true_module_SOURCES) $(nodist_true_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(true_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_pc_TRUE@usbtest.marker: $(usbtest_module_SOURCES) $(nodist_usbtest_module_SOURCES) -@COND_i386_pc_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usbtest_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_pc_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_efi_TRUE@usbtest.marker: $(usbtest_module_SOURCES) $(nodist_usbtest_module_SOURCES) -@COND_i386_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usbtest_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_qemu_TRUE@usbtest.marker: $(usbtest_module_SOURCES) $(nodist_usbtest_module_SOURCES) -@COND_i386_qemu_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usbtest_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_qemu_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_coreboot_TRUE@usbtest.marker: $(usbtest_module_SOURCES) $(nodist_usbtest_module_SOURCES) -@COND_i386_coreboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usbtest_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_coreboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_multiboot_TRUE@usbtest.marker: $(usbtest_module_SOURCES) $(nodist_usbtest_module_SOURCES) -@COND_i386_multiboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usbtest_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_multiboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_ieee1275_TRUE@usbtest.marker: $(usbtest_module_SOURCES) $(nodist_usbtest_module_SOURCES) -@COND_i386_ieee1275_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usbtest_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_ieee1275_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_x86_64_efi_TRUE@usbtest.marker: $(usbtest_module_SOURCES) $(nodist_usbtest_module_SOURCES) -@COND_x86_64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usbtest_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_x86_64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_mips_loongson_TRUE@usbtest.marker: $(usbtest_module_SOURCES) $(nodist_usbtest_module_SOURCES) -@COND_mips_loongson_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usbtest_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_mips_loongson_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_arm_coreboot_TRUE@usbtest.marker: $(usbtest_module_SOURCES) $(nodist_usbtest_module_SOURCES) -@COND_arm_coreboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usbtest_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_arm_coreboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -videoinfo.marker: $(videoinfo_module_SOURCES) $(nodist_videoinfo_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(videoinfo_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -videotest.marker: $(videotest_module_SOURCES) $(nodist_videotest_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(videotest_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -xnu_uuid.marker: $(xnu_uuid_module_SOURCES) $(nodist_xnu_uuid_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(xnu_uuid_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -dm_nv.marker: $(dm_nv_module_SOURCES) $(nodist_dm_nv_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(dm_nv_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -loopback.marker: $(loopback_module_SOURCES) $(nodist_loopback_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(loopback_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -cryptodisk.marker: $(cryptodisk_module_SOURCES) $(nodist_cryptodisk_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cryptodisk_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -luks.marker: $(luks_module_SOURCES) $(nodist_luks_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(luks_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -geli.marker: $(geli_module_SOURCES) $(nodist_geli_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(geli_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -lvm.marker: $(lvm_module_SOURCES) $(nodist_lvm_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lvm_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -ldm.marker: $(ldm_module_SOURCES) $(nodist_ldm_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ldm_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -mdraid09.marker: $(mdraid09_module_SOURCES) $(nodist_mdraid09_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mdraid09_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -mdraid09_be.marker: $(mdraid09_be_module_SOURCES) $(nodist_mdraid09_be_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mdraid09_be_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -mdraid1x.marker: $(mdraid1x_module_SOURCES) $(nodist_mdraid1x_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mdraid1x_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -diskfilter.marker: $(diskfilter_module_SOURCES) $(nodist_diskfilter_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(diskfilter_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -raid5rec.marker: $(raid5rec_module_SOURCES) $(nodist_raid5rec_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(raid5rec_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -raid6rec.marker: $(raid6rec_module_SOURCES) $(nodist_raid6rec_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(raid6rec_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -scsi.marker: $(scsi_module_SOURCES) $(nodist_scsi_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(scsi_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -memdisk.marker: $(memdisk_module_SOURCES) $(nodist_memdisk_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(memdisk_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_pc_TRUE@ata.marker: $(ata_module_SOURCES) $(nodist_ata_module_SOURCES) -@COND_i386_pc_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ata_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_pc_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_efi_TRUE@ata.marker: $(ata_module_SOURCES) $(nodist_ata_module_SOURCES) -@COND_i386_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ata_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_qemu_TRUE@ata.marker: $(ata_module_SOURCES) $(nodist_ata_module_SOURCES) -@COND_i386_qemu_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ata_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_qemu_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_coreboot_TRUE@ata.marker: $(ata_module_SOURCES) $(nodist_ata_module_SOURCES) -@COND_i386_coreboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ata_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_coreboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_multiboot_TRUE@ata.marker: $(ata_module_SOURCES) $(nodist_ata_module_SOURCES) -@COND_i386_multiboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ata_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_multiboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_ieee1275_TRUE@ata.marker: $(ata_module_SOURCES) $(nodist_ata_module_SOURCES) -@COND_i386_ieee1275_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ata_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_ieee1275_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_x86_64_efi_TRUE@ata.marker: $(ata_module_SOURCES) $(nodist_ata_module_SOURCES) -@COND_x86_64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ata_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_x86_64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_mips_loongson_TRUE@ata.marker: $(ata_module_SOURCES) $(nodist_ata_module_SOURCES) -@COND_mips_loongson_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ata_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_mips_loongson_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_mips_qemu_mips_TRUE@ata.marker: $(ata_module_SOURCES) $(nodist_ata_module_SOURCES) -@COND_mips_qemu_mips_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ata_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_mips_qemu_mips_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_pc_TRUE@ahci.marker: $(ahci_module_SOURCES) $(nodist_ahci_module_SOURCES) -@COND_i386_pc_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ahci_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_pc_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_efi_TRUE@ahci.marker: $(ahci_module_SOURCES) $(nodist_ahci_module_SOURCES) -@COND_i386_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ahci_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_qemu_TRUE@ahci.marker: $(ahci_module_SOURCES) $(nodist_ahci_module_SOURCES) -@COND_i386_qemu_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ahci_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_qemu_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_coreboot_TRUE@ahci.marker: $(ahci_module_SOURCES) $(nodist_ahci_module_SOURCES) -@COND_i386_coreboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ahci_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_coreboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_multiboot_TRUE@ahci.marker: $(ahci_module_SOURCES) $(nodist_ahci_module_SOURCES) -@COND_i386_multiboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ahci_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_multiboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_ieee1275_TRUE@ahci.marker: $(ahci_module_SOURCES) $(nodist_ahci_module_SOURCES) -@COND_i386_ieee1275_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ahci_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_ieee1275_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_x86_64_efi_TRUE@ahci.marker: $(ahci_module_SOURCES) $(nodist_ahci_module_SOURCES) -@COND_x86_64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ahci_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_x86_64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_mips_loongson_TRUE@ahci.marker: $(ahci_module_SOURCES) $(nodist_ahci_module_SOURCES) -@COND_mips_loongson_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ahci_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_mips_loongson_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_pc_TRUE@pata.marker: $(pata_module_SOURCES) $(nodist_pata_module_SOURCES) -@COND_i386_pc_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(pata_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_pc_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_efi_TRUE@pata.marker: $(pata_module_SOURCES) $(nodist_pata_module_SOURCES) -@COND_i386_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(pata_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_qemu_TRUE@pata.marker: $(pata_module_SOURCES) $(nodist_pata_module_SOURCES) -@COND_i386_qemu_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(pata_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_qemu_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_coreboot_TRUE@pata.marker: $(pata_module_SOURCES) $(nodist_pata_module_SOURCES) -@COND_i386_coreboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(pata_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_coreboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_multiboot_TRUE@pata.marker: $(pata_module_SOURCES) $(nodist_pata_module_SOURCES) -@COND_i386_multiboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(pata_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_multiboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_ieee1275_TRUE@pata.marker: $(pata_module_SOURCES) $(nodist_pata_module_SOURCES) -@COND_i386_ieee1275_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(pata_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_ieee1275_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_x86_64_efi_TRUE@pata.marker: $(pata_module_SOURCES) $(nodist_pata_module_SOURCES) -@COND_x86_64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(pata_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_x86_64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_mips_loongson_TRUE@pata.marker: $(pata_module_SOURCES) $(nodist_pata_module_SOURCES) -@COND_mips_loongson_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(pata_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_mips_loongson_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_mips_qemu_mips_TRUE@pata.marker: $(pata_module_SOURCES) $(nodist_pata_module_SOURCES) -@COND_mips_qemu_mips_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(pata_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_mips_qemu_mips_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_pc_TRUE@biosdisk.marker: $(biosdisk_module_SOURCES) $(nodist_biosdisk_module_SOURCES) -@COND_i386_pc_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(biosdisk_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_pc_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_pc_TRUE@usbms.marker: $(usbms_module_SOURCES) $(nodist_usbms_module_SOURCES) -@COND_i386_pc_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usbms_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_pc_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_efi_TRUE@usbms.marker: $(usbms_module_SOURCES) $(nodist_usbms_module_SOURCES) -@COND_i386_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usbms_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_qemu_TRUE@usbms.marker: $(usbms_module_SOURCES) $(nodist_usbms_module_SOURCES) -@COND_i386_qemu_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usbms_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_qemu_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_coreboot_TRUE@usbms.marker: $(usbms_module_SOURCES) $(nodist_usbms_module_SOURCES) -@COND_i386_coreboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usbms_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_coreboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_multiboot_TRUE@usbms.marker: $(usbms_module_SOURCES) $(nodist_usbms_module_SOURCES) -@COND_i386_multiboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usbms_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_multiboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_ieee1275_TRUE@usbms.marker: $(usbms_module_SOURCES) $(nodist_usbms_module_SOURCES) -@COND_i386_ieee1275_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usbms_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_ieee1275_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_x86_64_efi_TRUE@usbms.marker: $(usbms_module_SOURCES) $(nodist_usbms_module_SOURCES) -@COND_x86_64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usbms_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_x86_64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_mips_loongson_TRUE@usbms.marker: $(usbms_module_SOURCES) $(nodist_usbms_module_SOURCES) -@COND_mips_loongson_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usbms_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_mips_loongson_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_arm_coreboot_TRUE@usbms.marker: $(usbms_module_SOURCES) $(nodist_usbms_module_SOURCES) -@COND_arm_coreboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usbms_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_arm_coreboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_ieee1275_TRUE@nand.marker: $(nand_module_SOURCES) $(nodist_nand_module_SOURCES) -@COND_i386_ieee1275_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(nand_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_ieee1275_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_pc_TRUE@efiemu.marker: $(efiemu_module_SOURCES) $(nodist_efiemu_module_SOURCES) -@COND_i386_pc_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(efiemu_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_pc_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_qemu_TRUE@efiemu.marker: $(efiemu_module_SOURCES) $(nodist_efiemu_module_SOURCES) -@COND_i386_qemu_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(efiemu_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_qemu_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_coreboot_TRUE@efiemu.marker: $(efiemu_module_SOURCES) $(nodist_efiemu_module_SOURCES) -@COND_i386_coreboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(efiemu_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_coreboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_multiboot_TRUE@efiemu.marker: $(efiemu_module_SOURCES) $(nodist_efiemu_module_SOURCES) -@COND_i386_multiboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(efiemu_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_multiboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_ieee1275_TRUE@efiemu.marker: $(efiemu_module_SOURCES) $(nodist_efiemu_module_SOURCES) -@COND_i386_ieee1275_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(efiemu_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_ieee1275_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_emu_TRUE@font.marker: $(font_module_SOURCES) $(nodist_font_module_SOURCES) -@COND_emu_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(font_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_emu_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_pc_TRUE@font.marker: $(font_module_SOURCES) $(nodist_font_module_SOURCES) -@COND_i386_pc_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(font_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_pc_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_efi_TRUE@font.marker: $(font_module_SOURCES) $(nodist_font_module_SOURCES) -@COND_i386_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(font_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_qemu_TRUE@font.marker: $(font_module_SOURCES) $(nodist_font_module_SOURCES) -@COND_i386_qemu_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(font_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_qemu_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_multiboot_TRUE@font.marker: $(font_module_SOURCES) $(nodist_font_module_SOURCES) -@COND_i386_multiboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(font_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_multiboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_ieee1275_TRUE@font.marker: $(font_module_SOURCES) $(nodist_font_module_SOURCES) -@COND_i386_ieee1275_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(font_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_ieee1275_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_x86_64_efi_TRUE@font.marker: $(font_module_SOURCES) $(nodist_font_module_SOURCES) -@COND_x86_64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(font_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_x86_64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_xen_TRUE@font.marker: $(font_module_SOURCES) $(nodist_font_module_SOURCES) -@COND_i386_xen_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(font_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_xen_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_x86_64_xen_TRUE@font.marker: $(font_module_SOURCES) $(nodist_font_module_SOURCES) -@COND_x86_64_xen_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(font_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_x86_64_xen_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_xen_pvh_TRUE@font.marker: $(font_module_SOURCES) $(nodist_font_module_SOURCES) -@COND_i386_xen_pvh_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(font_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_xen_pvh_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_sparc64_ieee1275_TRUE@font.marker: $(font_module_SOURCES) $(nodist_font_module_SOURCES) -@COND_sparc64_ieee1275_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(font_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_sparc64_ieee1275_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_powerpc_ieee1275_TRUE@font.marker: $(font_module_SOURCES) $(nodist_font_module_SOURCES) -@COND_powerpc_ieee1275_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(font_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_powerpc_ieee1275_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_mips_arc_TRUE@font.marker: $(font_module_SOURCES) $(nodist_font_module_SOURCES) -@COND_mips_arc_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(font_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_mips_arc_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_ia64_efi_TRUE@font.marker: $(font_module_SOURCES) $(nodist_font_module_SOURCES) -@COND_ia64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(font_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_ia64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_mips_qemu_mips_TRUE@font.marker: $(font_module_SOURCES) $(nodist_font_module_SOURCES) -@COND_mips_qemu_mips_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(font_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_mips_qemu_mips_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_arm_uboot_TRUE@font.marker: $(font_module_SOURCES) $(nodist_font_module_SOURCES) -@COND_arm_uboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(font_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_arm_uboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_arm_efi_TRUE@font.marker: $(font_module_SOURCES) $(nodist_font_module_SOURCES) -@COND_arm_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(font_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_arm_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_arm64_efi_TRUE@font.marker: $(font_module_SOURCES) $(nodist_font_module_SOURCES) -@COND_arm64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(font_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_arm64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_riscv32_efi_TRUE@font.marker: $(font_module_SOURCES) $(nodist_font_module_SOURCES) -@COND_riscv32_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(font_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_riscv32_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_riscv64_efi_TRUE@font.marker: $(font_module_SOURCES) $(nodist_font_module_SOURCES) -@COND_riscv64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(font_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_riscv64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -procfs.marker: $(procfs_module_SOURCES) $(nodist_procfs_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(procfs_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -affs.marker: $(affs_module_SOURCES) $(nodist_affs_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(affs_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -afs.marker: $(afs_module_SOURCES) $(nodist_afs_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(afs_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -bfs.marker: $(bfs_module_SOURCES) $(nodist_bfs_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(bfs_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -zstd.marker: $(zstd_module_SOURCES) $(nodist_zstd_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(zstd_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -btrfs.marker: $(btrfs_module_SOURCES) $(nodist_btrfs_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(btrfs_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -archelp.marker: $(archelp_module_SOURCES) $(nodist_archelp_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(archelp_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -cbfs.marker: $(cbfs_module_SOURCES) $(nodist_cbfs_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cbfs_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -cpio.marker: $(cpio_module_SOURCES) $(nodist_cpio_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cpio_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -cpio_be.marker: $(cpio_be_module_SOURCES) $(nodist_cpio_be_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cpio_be_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -newc.marker: $(newc_module_SOURCES) $(nodist_newc_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(newc_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -odc.marker: $(odc_module_SOURCES) $(nodist_odc_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(odc_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -ext2.marker: $(ext2_module_SOURCES) $(nodist_ext2_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ext2_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -fat.marker: $(fat_module_SOURCES) $(nodist_fat_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(fat_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -exfat.marker: $(exfat_module_SOURCES) $(nodist_exfat_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(exfat_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -f2fs.marker: $(f2fs_module_SOURCES) $(nodist_f2fs_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(f2fs_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -fshelp.marker: $(fshelp_module_SOURCES) $(nodist_fshelp_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(fshelp_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -hfs.marker: $(hfs_module_SOURCES) $(nodist_hfs_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(hfs_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -hfsplus.marker: $(hfsplus_module_SOURCES) $(nodist_hfsplus_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(hfsplus_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -hfspluscomp.marker: $(hfspluscomp_module_SOURCES) $(nodist_hfspluscomp_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(hfspluscomp_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -iso9660.marker: $(iso9660_module_SOURCES) $(nodist_iso9660_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(iso9660_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -jfs.marker: $(jfs_module_SOURCES) $(nodist_jfs_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(jfs_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -minix.marker: $(minix_module_SOURCES) $(nodist_minix_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(minix_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -minix2.marker: $(minix2_module_SOURCES) $(nodist_minix2_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(minix2_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -minix3.marker: $(minix3_module_SOURCES) $(nodist_minix3_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(minix3_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -minix_be.marker: $(minix_be_module_SOURCES) $(nodist_minix_be_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(minix_be_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -minix2_be.marker: $(minix2_be_module_SOURCES) $(nodist_minix2_be_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(minix2_be_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -minix3_be.marker: $(minix3_be_module_SOURCES) $(nodist_minix3_be_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(minix3_be_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -nilfs2.marker: $(nilfs2_module_SOURCES) $(nodist_nilfs2_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(nilfs2_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -ntfs.marker: $(ntfs_module_SOURCES) $(nodist_ntfs_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ntfs_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -ntfscomp.marker: $(ntfscomp_module_SOURCES) $(nodist_ntfscomp_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ntfscomp_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -reiserfs.marker: $(reiserfs_module_SOURCES) $(nodist_reiserfs_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(reiserfs_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -romfs.marker: $(romfs_module_SOURCES) $(nodist_romfs_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(romfs_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -sfs.marker: $(sfs_module_SOURCES) $(nodist_sfs_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(sfs_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -squash4.marker: $(squash4_module_SOURCES) $(nodist_squash4_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(squash4_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -tar.marker: $(tar_module_SOURCES) $(nodist_tar_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(tar_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -udf.marker: $(udf_module_SOURCES) $(nodist_udf_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(udf_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -ufs1.marker: $(ufs1_module_SOURCES) $(nodist_ufs1_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ufs1_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -ufs1_be.marker: $(ufs1_be_module_SOURCES) $(nodist_ufs1_be_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ufs1_be_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -ufs2.marker: $(ufs2_module_SOURCES) $(nodist_ufs2_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ufs2_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -xfs.marker: $(xfs_module_SOURCES) $(nodist_xfs_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(xfs_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -zfs.marker: $(zfs_module_SOURCES) $(nodist_zfs_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(zfs_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -zfscrypt.marker: $(zfscrypt_module_SOURCES) $(nodist_zfscrypt_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(zfscrypt_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -zfsinfo.marker: $(zfsinfo_module_SOURCES) $(nodist_zfsinfo_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(zfsinfo_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -macbless.marker: $(macbless_module_SOURCES) $(nodist_macbless_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(macbless_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_pc_TRUE@pxe.marker: $(pxe_module_SOURCES) $(nodist_pxe_module_SOURCES) -@COND_i386_pc_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(pxe_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_pc_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -gettext.marker: $(gettext_module_SOURCES) $(nodist_gettext_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gettext_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -gfxmenu.marker: $(gfxmenu_module_SOURCES) $(nodist_gfxmenu_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gfxmenu_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -hello.marker: $(hello_module_SOURCES) $(nodist_hello_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(hello_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -gzio.marker: $(gzio_module_SOURCES) $(nodist_gzio_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gzio_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -offsetio.marker: $(offsetio_module_SOURCES) $(nodist_offsetio_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(offsetio_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_emu_TRUE@bufio.marker: $(bufio_module_SOURCES) $(nodist_bufio_module_SOURCES) -@COND_emu_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(bufio_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_emu_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_pc_TRUE@bufio.marker: $(bufio_module_SOURCES) $(nodist_bufio_module_SOURCES) -@COND_i386_pc_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(bufio_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_pc_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_efi_TRUE@bufio.marker: $(bufio_module_SOURCES) $(nodist_bufio_module_SOURCES) -@COND_i386_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(bufio_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_qemu_TRUE@bufio.marker: $(bufio_module_SOURCES) $(nodist_bufio_module_SOURCES) -@COND_i386_qemu_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(bufio_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_qemu_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_multiboot_TRUE@bufio.marker: $(bufio_module_SOURCES) $(nodist_bufio_module_SOURCES) -@COND_i386_multiboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(bufio_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_multiboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_ieee1275_TRUE@bufio.marker: $(bufio_module_SOURCES) $(nodist_bufio_module_SOURCES) -@COND_i386_ieee1275_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(bufio_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_ieee1275_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_x86_64_efi_TRUE@bufio.marker: $(bufio_module_SOURCES) $(nodist_bufio_module_SOURCES) -@COND_x86_64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(bufio_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_x86_64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_xen_TRUE@bufio.marker: $(bufio_module_SOURCES) $(nodist_bufio_module_SOURCES) -@COND_i386_xen_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(bufio_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_xen_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_x86_64_xen_TRUE@bufio.marker: $(bufio_module_SOURCES) $(nodist_bufio_module_SOURCES) -@COND_x86_64_xen_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(bufio_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_x86_64_xen_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_xen_pvh_TRUE@bufio.marker: $(bufio_module_SOURCES) $(nodist_bufio_module_SOURCES) -@COND_i386_xen_pvh_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(bufio_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_xen_pvh_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_sparc64_ieee1275_TRUE@bufio.marker: $(bufio_module_SOURCES) $(nodist_bufio_module_SOURCES) -@COND_sparc64_ieee1275_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(bufio_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_sparc64_ieee1275_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_powerpc_ieee1275_TRUE@bufio.marker: $(bufio_module_SOURCES) $(nodist_bufio_module_SOURCES) -@COND_powerpc_ieee1275_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(bufio_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_powerpc_ieee1275_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_mips_arc_TRUE@bufio.marker: $(bufio_module_SOURCES) $(nodist_bufio_module_SOURCES) -@COND_mips_arc_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(bufio_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_mips_arc_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_ia64_efi_TRUE@bufio.marker: $(bufio_module_SOURCES) $(nodist_bufio_module_SOURCES) -@COND_ia64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(bufio_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_ia64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_mips_qemu_mips_TRUE@bufio.marker: $(bufio_module_SOURCES) $(nodist_bufio_module_SOURCES) -@COND_mips_qemu_mips_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(bufio_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_mips_qemu_mips_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_arm_uboot_TRUE@bufio.marker: $(bufio_module_SOURCES) $(nodist_bufio_module_SOURCES) -@COND_arm_uboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(bufio_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_arm_uboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_arm_efi_TRUE@bufio.marker: $(bufio_module_SOURCES) $(nodist_bufio_module_SOURCES) -@COND_arm_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(bufio_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_arm_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_arm64_efi_TRUE@bufio.marker: $(bufio_module_SOURCES) $(nodist_bufio_module_SOURCES) -@COND_arm64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(bufio_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_arm64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_riscv32_efi_TRUE@bufio.marker: $(bufio_module_SOURCES) $(nodist_bufio_module_SOURCES) -@COND_riscv32_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(bufio_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_riscv32_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_riscv64_efi_TRUE@bufio.marker: $(bufio_module_SOURCES) $(nodist_bufio_module_SOURCES) -@COND_riscv64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(bufio_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_riscv64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -elf.marker: $(elf_module_SOURCES) $(nodist_elf_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(elf_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -crypto.marker: $(crypto_module_SOURCES) $(nodist_crypto_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(crypto_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -pbkdf2.marker: $(pbkdf2_module_SOURCES) $(nodist_pbkdf2_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(pbkdf2_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_pc_TRUE@relocator.marker: $(relocator_module_SOURCES) $(nodist_relocator_module_SOURCES) -@COND_i386_pc_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(relocator_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_pc_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_efi_TRUE@relocator.marker: $(relocator_module_SOURCES) $(nodist_relocator_module_SOURCES) -@COND_i386_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(relocator_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_qemu_TRUE@relocator.marker: $(relocator_module_SOURCES) $(nodist_relocator_module_SOURCES) -@COND_i386_qemu_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(relocator_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_qemu_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_coreboot_TRUE@relocator.marker: $(relocator_module_SOURCES) $(nodist_relocator_module_SOURCES) -@COND_i386_coreboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(relocator_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_coreboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_multiboot_TRUE@relocator.marker: $(relocator_module_SOURCES) $(nodist_relocator_module_SOURCES) -@COND_i386_multiboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(relocator_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_multiboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_ieee1275_TRUE@relocator.marker: $(relocator_module_SOURCES) $(nodist_relocator_module_SOURCES) -@COND_i386_ieee1275_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(relocator_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_ieee1275_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_x86_64_efi_TRUE@relocator.marker: $(relocator_module_SOURCES) $(nodist_relocator_module_SOURCES) -@COND_x86_64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(relocator_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_x86_64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_xen_TRUE@relocator.marker: $(relocator_module_SOURCES) $(nodist_relocator_module_SOURCES) -@COND_i386_xen_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(relocator_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_xen_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_x86_64_xen_TRUE@relocator.marker: $(relocator_module_SOURCES) $(nodist_relocator_module_SOURCES) -@COND_x86_64_xen_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(relocator_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_x86_64_xen_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_xen_pvh_TRUE@relocator.marker: $(relocator_module_SOURCES) $(nodist_relocator_module_SOURCES) -@COND_i386_xen_pvh_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(relocator_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_xen_pvh_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_mips_loongson_TRUE@relocator.marker: $(relocator_module_SOURCES) $(nodist_relocator_module_SOURCES) -@COND_mips_loongson_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(relocator_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_mips_loongson_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_powerpc_ieee1275_TRUE@relocator.marker: $(relocator_module_SOURCES) $(nodist_relocator_module_SOURCES) -@COND_powerpc_ieee1275_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(relocator_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_powerpc_ieee1275_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_mips_arc_TRUE@relocator.marker: $(relocator_module_SOURCES) $(nodist_relocator_module_SOURCES) -@COND_mips_arc_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(relocator_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_mips_arc_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_mips_qemu_mips_TRUE@relocator.marker: $(relocator_module_SOURCES) $(nodist_relocator_module_SOURCES) -@COND_mips_qemu_mips_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(relocator_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_mips_qemu_mips_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_pc_TRUE@datetime.marker: $(datetime_module_SOURCES) $(nodist_datetime_module_SOURCES) -@COND_i386_pc_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(datetime_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_pc_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_efi_TRUE@datetime.marker: $(datetime_module_SOURCES) $(nodist_datetime_module_SOURCES) -@COND_i386_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(datetime_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_qemu_TRUE@datetime.marker: $(datetime_module_SOURCES) $(nodist_datetime_module_SOURCES) -@COND_i386_qemu_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(datetime_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_qemu_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_coreboot_TRUE@datetime.marker: $(datetime_module_SOURCES) $(nodist_datetime_module_SOURCES) -@COND_i386_coreboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(datetime_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_coreboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_multiboot_TRUE@datetime.marker: $(datetime_module_SOURCES) $(nodist_datetime_module_SOURCES) -@COND_i386_multiboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(datetime_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_multiboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_ieee1275_TRUE@datetime.marker: $(datetime_module_SOURCES) $(nodist_datetime_module_SOURCES) -@COND_i386_ieee1275_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(datetime_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_ieee1275_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_x86_64_efi_TRUE@datetime.marker: $(datetime_module_SOURCES) $(nodist_datetime_module_SOURCES) -@COND_x86_64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(datetime_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_x86_64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_xen_TRUE@datetime.marker: $(datetime_module_SOURCES) $(nodist_datetime_module_SOURCES) -@COND_i386_xen_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(datetime_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_xen_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_x86_64_xen_TRUE@datetime.marker: $(datetime_module_SOURCES) $(nodist_datetime_module_SOURCES) -@COND_x86_64_xen_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(datetime_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_x86_64_xen_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_xen_pvh_TRUE@datetime.marker: $(datetime_module_SOURCES) $(nodist_datetime_module_SOURCES) -@COND_i386_xen_pvh_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(datetime_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_xen_pvh_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_mips_loongson_TRUE@datetime.marker: $(datetime_module_SOURCES) $(nodist_datetime_module_SOURCES) -@COND_mips_loongson_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(datetime_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_mips_loongson_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_sparc64_ieee1275_TRUE@datetime.marker: $(datetime_module_SOURCES) $(nodist_datetime_module_SOURCES) -@COND_sparc64_ieee1275_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(datetime_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_sparc64_ieee1275_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_powerpc_ieee1275_TRUE@datetime.marker: $(datetime_module_SOURCES) $(nodist_datetime_module_SOURCES) -@COND_powerpc_ieee1275_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(datetime_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_powerpc_ieee1275_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_mips_arc_TRUE@datetime.marker: $(datetime_module_SOURCES) $(nodist_datetime_module_SOURCES) -@COND_mips_arc_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(datetime_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_mips_arc_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_ia64_efi_TRUE@datetime.marker: $(datetime_module_SOURCES) $(nodist_datetime_module_SOURCES) -@COND_ia64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(datetime_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_ia64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_mips_qemu_mips_TRUE@datetime.marker: $(datetime_module_SOURCES) $(nodist_datetime_module_SOURCES) -@COND_mips_qemu_mips_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(datetime_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_mips_qemu_mips_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_arm_uboot_TRUE@datetime.marker: $(datetime_module_SOURCES) $(nodist_datetime_module_SOURCES) -@COND_arm_uboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(datetime_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_arm_uboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_arm_efi_TRUE@datetime.marker: $(datetime_module_SOURCES) $(nodist_datetime_module_SOURCES) -@COND_arm_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(datetime_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_arm_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_arm64_efi_TRUE@datetime.marker: $(datetime_module_SOURCES) $(nodist_datetime_module_SOURCES) -@COND_arm64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(datetime_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_arm64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_arm_coreboot_TRUE@datetime.marker: $(datetime_module_SOURCES) $(nodist_datetime_module_SOURCES) -@COND_arm_coreboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(datetime_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_arm_coreboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_riscv32_efi_TRUE@datetime.marker: $(datetime_module_SOURCES) $(nodist_datetime_module_SOURCES) -@COND_riscv32_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(datetime_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_riscv32_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_riscv64_efi_TRUE@datetime.marker: $(datetime_module_SOURCES) $(nodist_datetime_module_SOURCES) -@COND_riscv64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(datetime_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_riscv64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -setjmp.marker: $(setjmp_module_SOURCES) $(nodist_setjmp_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(setjmp_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_pc_TRUE@aout.marker: $(aout_module_SOURCES) $(nodist_aout_module_SOURCES) -@COND_i386_pc_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(aout_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_pc_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_efi_TRUE@aout.marker: $(aout_module_SOURCES) $(nodist_aout_module_SOURCES) -@COND_i386_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(aout_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_qemu_TRUE@aout.marker: $(aout_module_SOURCES) $(nodist_aout_module_SOURCES) -@COND_i386_qemu_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(aout_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_qemu_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_coreboot_TRUE@aout.marker: $(aout_module_SOURCES) $(nodist_aout_module_SOURCES) -@COND_i386_coreboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(aout_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_coreboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_multiboot_TRUE@aout.marker: $(aout_module_SOURCES) $(nodist_aout_module_SOURCES) -@COND_i386_multiboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(aout_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_multiboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_ieee1275_TRUE@aout.marker: $(aout_module_SOURCES) $(nodist_aout_module_SOURCES) -@COND_i386_ieee1275_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(aout_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_ieee1275_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_x86_64_efi_TRUE@aout.marker: $(aout_module_SOURCES) $(nodist_aout_module_SOURCES) -@COND_x86_64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(aout_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_x86_64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_pc_TRUE@bsd.marker: $(bsd_module_SOURCES) $(nodist_bsd_module_SOURCES) -@COND_i386_pc_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(bsd_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_pc_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_efi_TRUE@bsd.marker: $(bsd_module_SOURCES) $(nodist_bsd_module_SOURCES) -@COND_i386_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(bsd_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_qemu_TRUE@bsd.marker: $(bsd_module_SOURCES) $(nodist_bsd_module_SOURCES) -@COND_i386_qemu_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(bsd_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_qemu_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_coreboot_TRUE@bsd.marker: $(bsd_module_SOURCES) $(nodist_bsd_module_SOURCES) -@COND_i386_coreboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(bsd_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_coreboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_multiboot_TRUE@bsd.marker: $(bsd_module_SOURCES) $(nodist_bsd_module_SOURCES) -@COND_i386_multiboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(bsd_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_multiboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_ieee1275_TRUE@bsd.marker: $(bsd_module_SOURCES) $(nodist_bsd_module_SOURCES) -@COND_i386_ieee1275_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(bsd_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_ieee1275_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_x86_64_efi_TRUE@bsd.marker: $(bsd_module_SOURCES) $(nodist_bsd_module_SOURCES) -@COND_x86_64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(bsd_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_x86_64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_pc_TRUE@plan9.marker: $(plan9_module_SOURCES) $(nodist_plan9_module_SOURCES) -@COND_i386_pc_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(plan9_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_pc_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_pc_TRUE@linux16.marker: $(linux16_module_SOURCES) $(nodist_linux16_module_SOURCES) -@COND_i386_pc_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(linux16_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_pc_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_efi_TRUE@linux16.marker: $(linux16_module_SOURCES) $(nodist_linux16_module_SOURCES) -@COND_i386_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(linux16_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_qemu_TRUE@linux16.marker: $(linux16_module_SOURCES) $(nodist_linux16_module_SOURCES) -@COND_i386_qemu_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(linux16_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_qemu_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_coreboot_TRUE@linux16.marker: $(linux16_module_SOURCES) $(nodist_linux16_module_SOURCES) -@COND_i386_coreboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(linux16_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_coreboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_multiboot_TRUE@linux16.marker: $(linux16_module_SOURCES) $(nodist_linux16_module_SOURCES) -@COND_i386_multiboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(linux16_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_multiboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_ieee1275_TRUE@linux16.marker: $(linux16_module_SOURCES) $(nodist_linux16_module_SOURCES) -@COND_i386_ieee1275_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(linux16_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_ieee1275_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_x86_64_efi_TRUE@linux16.marker: $(linux16_module_SOURCES) $(nodist_linux16_module_SOURCES) -@COND_x86_64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(linux16_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_x86_64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_pc_TRUE@ntldr.marker: $(ntldr_module_SOURCES) $(nodist_ntldr_module_SOURCES) -@COND_i386_pc_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ntldr_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_pc_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_pc_TRUE@truecrypt.marker: $(truecrypt_module_SOURCES) $(nodist_truecrypt_module_SOURCES) -@COND_i386_pc_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(truecrypt_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_pc_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_pc_TRUE@freedos.marker: $(freedos_module_SOURCES) $(nodist_freedos_module_SOURCES) -@COND_i386_pc_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(freedos_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_pc_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_pc_TRUE@pxechain.marker: $(pxechain_module_SOURCES) $(nodist_pxechain_module_SOURCES) -@COND_i386_pc_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(pxechain_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_pc_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_pc_TRUE@multiboot2.marker: $(multiboot2_module_SOURCES) $(nodist_multiboot2_module_SOURCES) -@COND_i386_pc_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(multiboot2_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_pc_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_efi_TRUE@multiboot2.marker: $(multiboot2_module_SOURCES) $(nodist_multiboot2_module_SOURCES) -@COND_i386_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(multiboot2_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_qemu_TRUE@multiboot2.marker: $(multiboot2_module_SOURCES) $(nodist_multiboot2_module_SOURCES) -@COND_i386_qemu_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(multiboot2_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_qemu_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_coreboot_TRUE@multiboot2.marker: $(multiboot2_module_SOURCES) $(nodist_multiboot2_module_SOURCES) -@COND_i386_coreboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(multiboot2_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_coreboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_multiboot_TRUE@multiboot2.marker: $(multiboot2_module_SOURCES) $(nodist_multiboot2_module_SOURCES) -@COND_i386_multiboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(multiboot2_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_multiboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_ieee1275_TRUE@multiboot2.marker: $(multiboot2_module_SOURCES) $(nodist_multiboot2_module_SOURCES) -@COND_i386_ieee1275_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(multiboot2_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_ieee1275_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_x86_64_efi_TRUE@multiboot2.marker: $(multiboot2_module_SOURCES) $(nodist_multiboot2_module_SOURCES) -@COND_x86_64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(multiboot2_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_x86_64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_xen_pvh_TRUE@multiboot2.marker: $(multiboot2_module_SOURCES) $(nodist_multiboot2_module_SOURCES) -@COND_i386_xen_pvh_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(multiboot2_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_xen_pvh_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_mips_loongson_TRUE@multiboot2.marker: $(multiboot2_module_SOURCES) $(nodist_multiboot2_module_SOURCES) -@COND_mips_loongson_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(multiboot2_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_mips_loongson_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_mips_arc_TRUE@multiboot2.marker: $(multiboot2_module_SOURCES) $(nodist_multiboot2_module_SOURCES) -@COND_mips_arc_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(multiboot2_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_mips_arc_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_mips_qemu_mips_TRUE@multiboot2.marker: $(multiboot2_module_SOURCES) $(nodist_multiboot2_module_SOURCES) -@COND_mips_qemu_mips_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(multiboot2_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_mips_qemu_mips_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_pc_TRUE@multiboot.marker: $(multiboot_module_SOURCES) $(nodist_multiboot_module_SOURCES) -@COND_i386_pc_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(multiboot_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_pc_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_efi_TRUE@multiboot.marker: $(multiboot_module_SOURCES) $(nodist_multiboot_module_SOURCES) -@COND_i386_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(multiboot_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_qemu_TRUE@multiboot.marker: $(multiboot_module_SOURCES) $(nodist_multiboot_module_SOURCES) -@COND_i386_qemu_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(multiboot_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_qemu_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_coreboot_TRUE@multiboot.marker: $(multiboot_module_SOURCES) $(nodist_multiboot_module_SOURCES) -@COND_i386_coreboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(multiboot_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_coreboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_multiboot_TRUE@multiboot.marker: $(multiboot_module_SOURCES) $(nodist_multiboot_module_SOURCES) -@COND_i386_multiboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(multiboot_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_multiboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_ieee1275_TRUE@multiboot.marker: $(multiboot_module_SOURCES) $(nodist_multiboot_module_SOURCES) -@COND_i386_ieee1275_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(multiboot_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_ieee1275_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_x86_64_efi_TRUE@multiboot.marker: $(multiboot_module_SOURCES) $(nodist_multiboot_module_SOURCES) -@COND_x86_64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(multiboot_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_x86_64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_xen_pvh_TRUE@multiboot.marker: $(multiboot_module_SOURCES) $(nodist_multiboot_module_SOURCES) -@COND_i386_xen_pvh_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(multiboot_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_xen_pvh_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_arm64_efi_TRUE@xen_boot.marker: $(xen_boot_module_SOURCES) $(nodist_xen_boot_module_SOURCES) -@COND_arm64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(xen_boot_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_arm64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_pc_TRUE@linux.marker: $(linux_module_SOURCES) $(nodist_linux_module_SOURCES) -@COND_i386_pc_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(linux_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_pc_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_efi_TRUE@linux.marker: $(linux_module_SOURCES) $(nodist_linux_module_SOURCES) -@COND_i386_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(linux_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_qemu_TRUE@linux.marker: $(linux_module_SOURCES) $(nodist_linux_module_SOURCES) -@COND_i386_qemu_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(linux_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_qemu_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_coreboot_TRUE@linux.marker: $(linux_module_SOURCES) $(nodist_linux_module_SOURCES) -@COND_i386_coreboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(linux_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_coreboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_multiboot_TRUE@linux.marker: $(linux_module_SOURCES) $(nodist_linux_module_SOURCES) -@COND_i386_multiboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(linux_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_multiboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_ieee1275_TRUE@linux.marker: $(linux_module_SOURCES) $(nodist_linux_module_SOURCES) -@COND_i386_ieee1275_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(linux_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_ieee1275_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_x86_64_efi_TRUE@linux.marker: $(linux_module_SOURCES) $(nodist_linux_module_SOURCES) -@COND_x86_64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(linux_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_x86_64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_xen_TRUE@linux.marker: $(linux_module_SOURCES) $(nodist_linux_module_SOURCES) -@COND_i386_xen_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(linux_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_xen_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_x86_64_xen_TRUE@linux.marker: $(linux_module_SOURCES) $(nodist_linux_module_SOURCES) -@COND_x86_64_xen_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(linux_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_x86_64_xen_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_xen_pvh_TRUE@linux.marker: $(linux_module_SOURCES) $(nodist_linux_module_SOURCES) -@COND_i386_xen_pvh_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(linux_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_xen_pvh_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_mips_loongson_TRUE@linux.marker: $(linux_module_SOURCES) $(nodist_linux_module_SOURCES) -@COND_mips_loongson_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(linux_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_mips_loongson_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_sparc64_ieee1275_TRUE@linux.marker: $(linux_module_SOURCES) $(nodist_linux_module_SOURCES) -@COND_sparc64_ieee1275_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(linux_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_sparc64_ieee1275_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_powerpc_ieee1275_TRUE@linux.marker: $(linux_module_SOURCES) $(nodist_linux_module_SOURCES) -@COND_powerpc_ieee1275_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(linux_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_powerpc_ieee1275_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_mips_arc_TRUE@linux.marker: $(linux_module_SOURCES) $(nodist_linux_module_SOURCES) -@COND_mips_arc_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(linux_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_mips_arc_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_ia64_efi_TRUE@linux.marker: $(linux_module_SOURCES) $(nodist_linux_module_SOURCES) -@COND_ia64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(linux_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_ia64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_mips_qemu_mips_TRUE@linux.marker: $(linux_module_SOURCES) $(nodist_linux_module_SOURCES) -@COND_mips_qemu_mips_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(linux_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_mips_qemu_mips_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_arm_uboot_TRUE@linux.marker: $(linux_module_SOURCES) $(nodist_linux_module_SOURCES) -@COND_arm_uboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(linux_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_arm_uboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_arm_efi_TRUE@linux.marker: $(linux_module_SOURCES) $(nodist_linux_module_SOURCES) -@COND_arm_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(linux_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_arm_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_arm64_efi_TRUE@linux.marker: $(linux_module_SOURCES) $(nodist_linux_module_SOURCES) -@COND_arm64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(linux_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_arm64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_arm_coreboot_TRUE@linux.marker: $(linux_module_SOURCES) $(nodist_linux_module_SOURCES) -@COND_arm_coreboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(linux_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_arm_coreboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_riscv32_efi_TRUE@linux.marker: $(linux_module_SOURCES) $(nodist_linux_module_SOURCES) -@COND_riscv32_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(linux_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_riscv32_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_riscv64_efi_TRUE@linux.marker: $(linux_module_SOURCES) $(nodist_linux_module_SOURCES) -@COND_riscv64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(linux_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_riscv64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_arm_uboot_TRUE@fdt.marker: $(fdt_module_SOURCES) $(nodist_fdt_module_SOURCES) -@COND_arm_uboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(fdt_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_arm_uboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_arm_efi_TRUE@fdt.marker: $(fdt_module_SOURCES) $(nodist_fdt_module_SOURCES) -@COND_arm_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(fdt_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_arm_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_arm64_efi_TRUE@fdt.marker: $(fdt_module_SOURCES) $(nodist_fdt_module_SOURCES) -@COND_arm64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(fdt_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_arm64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_riscv32_efi_TRUE@fdt.marker: $(fdt_module_SOURCES) $(nodist_fdt_module_SOURCES) -@COND_riscv32_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(fdt_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_riscv32_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_riscv64_efi_TRUE@fdt.marker: $(fdt_module_SOURCES) $(nodist_fdt_module_SOURCES) -@COND_riscv64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(fdt_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_riscv64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_pc_TRUE@xnu.marker: $(xnu_module_SOURCES) $(nodist_xnu_module_SOURCES) -@COND_i386_pc_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(xnu_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_pc_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_efi_TRUE@xnu.marker: $(xnu_module_SOURCES) $(nodist_xnu_module_SOURCES) -@COND_i386_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(xnu_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_coreboot_TRUE@xnu.marker: $(xnu_module_SOURCES) $(nodist_xnu_module_SOURCES) -@COND_i386_coreboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(xnu_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_coreboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_multiboot_TRUE@xnu.marker: $(xnu_module_SOURCES) $(nodist_xnu_module_SOURCES) -@COND_i386_multiboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(xnu_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_multiboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_x86_64_efi_TRUE@xnu.marker: $(xnu_module_SOURCES) $(nodist_xnu_module_SOURCES) -@COND_x86_64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(xnu_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_x86_64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_pc_TRUE@random.marker: $(random_module_SOURCES) $(nodist_random_module_SOURCES) -@COND_i386_pc_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(random_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_pc_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_efi_TRUE@random.marker: $(random_module_SOURCES) $(nodist_random_module_SOURCES) -@COND_i386_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(random_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_coreboot_TRUE@random.marker: $(random_module_SOURCES) $(nodist_random_module_SOURCES) -@COND_i386_coreboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(random_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_coreboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_multiboot_TRUE@random.marker: $(random_module_SOURCES) $(nodist_random_module_SOURCES) -@COND_i386_multiboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(random_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_multiboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_x86_64_efi_TRUE@random.marker: $(random_module_SOURCES) $(nodist_random_module_SOURCES) -@COND_x86_64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(random_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_x86_64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -macho.marker: $(macho_module_SOURCES) $(nodist_macho_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(macho_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_efi_TRUE@appleldr.marker: $(appleldr_module_SOURCES) $(nodist_appleldr_module_SOURCES) -@COND_i386_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(appleldr_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_x86_64_efi_TRUE@appleldr.marker: $(appleldr_module_SOURCES) $(nodist_appleldr_module_SOURCES) -@COND_x86_64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(appleldr_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_x86_64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_pc_TRUE@chain.marker: $(chain_module_SOURCES) $(nodist_chain_module_SOURCES) -@COND_i386_pc_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(chain_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_pc_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_efi_TRUE@chain.marker: $(chain_module_SOURCES) $(nodist_chain_module_SOURCES) -@COND_i386_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(chain_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_coreboot_TRUE@chain.marker: $(chain_module_SOURCES) $(nodist_chain_module_SOURCES) -@COND_i386_coreboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(chain_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_coreboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_x86_64_efi_TRUE@chain.marker: $(chain_module_SOURCES) $(nodist_chain_module_SOURCES) -@COND_x86_64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(chain_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_x86_64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_ia64_efi_TRUE@chain.marker: $(chain_module_SOURCES) $(nodist_chain_module_SOURCES) -@COND_ia64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(chain_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_ia64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_arm_efi_TRUE@chain.marker: $(chain_module_SOURCES) $(nodist_chain_module_SOURCES) -@COND_arm_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(chain_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_arm_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_arm64_efi_TRUE@chain.marker: $(chain_module_SOURCES) $(nodist_chain_module_SOURCES) -@COND_arm64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(chain_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_arm64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_riscv32_efi_TRUE@chain.marker: $(chain_module_SOURCES) $(nodist_chain_module_SOURCES) -@COND_riscv32_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(chain_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_riscv32_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_riscv64_efi_TRUE@chain.marker: $(chain_module_SOURCES) $(nodist_chain_module_SOURCES) -@COND_riscv64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(chain_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_riscv64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_pc_TRUE@mmap.marker: $(mmap_module_SOURCES) $(nodist_mmap_module_SOURCES) -@COND_i386_pc_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mmap_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_pc_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_efi_TRUE@mmap.marker: $(mmap_module_SOURCES) $(nodist_mmap_module_SOURCES) -@COND_i386_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mmap_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_qemu_TRUE@mmap.marker: $(mmap_module_SOURCES) $(nodist_mmap_module_SOURCES) -@COND_i386_qemu_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mmap_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_qemu_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_coreboot_TRUE@mmap.marker: $(mmap_module_SOURCES) $(nodist_mmap_module_SOURCES) -@COND_i386_coreboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mmap_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_coreboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_multiboot_TRUE@mmap.marker: $(mmap_module_SOURCES) $(nodist_mmap_module_SOURCES) -@COND_i386_multiboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mmap_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_multiboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_ieee1275_TRUE@mmap.marker: $(mmap_module_SOURCES) $(nodist_mmap_module_SOURCES) -@COND_i386_ieee1275_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mmap_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_ieee1275_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_x86_64_efi_TRUE@mmap.marker: $(mmap_module_SOURCES) $(nodist_mmap_module_SOURCES) -@COND_x86_64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mmap_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_x86_64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_xen_pvh_TRUE@mmap.marker: $(mmap_module_SOURCES) $(nodist_mmap_module_SOURCES) -@COND_i386_xen_pvh_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mmap_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_xen_pvh_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_mips_loongson_TRUE@mmap.marker: $(mmap_module_SOURCES) $(nodist_mmap_module_SOURCES) -@COND_mips_loongson_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mmap_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_mips_loongson_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_mips_arc_TRUE@mmap.marker: $(mmap_module_SOURCES) $(nodist_mmap_module_SOURCES) -@COND_mips_arc_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mmap_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_mips_arc_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_ia64_efi_TRUE@mmap.marker: $(mmap_module_SOURCES) $(nodist_mmap_module_SOURCES) -@COND_ia64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mmap_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_ia64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_mips_qemu_mips_TRUE@mmap.marker: $(mmap_module_SOURCES) $(nodist_mmap_module_SOURCES) -@COND_mips_qemu_mips_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mmap_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_mips_qemu_mips_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_arm_efi_TRUE@mmap.marker: $(mmap_module_SOURCES) $(nodist_mmap_module_SOURCES) -@COND_arm_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mmap_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_arm_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_arm64_efi_TRUE@mmap.marker: $(mmap_module_SOURCES) $(nodist_mmap_module_SOURCES) -@COND_arm64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mmap_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_arm64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_riscv32_efi_TRUE@mmap.marker: $(mmap_module_SOURCES) $(nodist_mmap_module_SOURCES) -@COND_riscv32_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mmap_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_riscv32_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_riscv64_efi_TRUE@mmap.marker: $(mmap_module_SOURCES) $(nodist_mmap_module_SOURCES) -@COND_riscv64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mmap_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_riscv64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -normal.marker: $(normal_module_SOURCES) $(nodist_normal_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(normal_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -part_acorn.marker: $(part_acorn_module_SOURCES) $(nodist_part_acorn_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(part_acorn_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -part_amiga.marker: $(part_amiga_module_SOURCES) $(nodist_part_amiga_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(part_amiga_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -part_apple.marker: $(part_apple_module_SOURCES) $(nodist_part_apple_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(part_apple_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -part_gpt.marker: $(part_gpt_module_SOURCES) $(nodist_part_gpt_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(part_gpt_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -part_msdos.marker: $(part_msdos_module_SOURCES) $(nodist_part_msdos_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(part_msdos_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -part_sun.marker: $(part_sun_module_SOURCES) $(nodist_part_sun_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(part_sun_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -part_plan.marker: $(part_plan_module_SOURCES) $(nodist_part_plan_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(part_plan_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -part_dvh.marker: $(part_dvh_module_SOURCES) $(nodist_part_dvh_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(part_dvh_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -part_bsd.marker: $(part_bsd_module_SOURCES) $(nodist_part_bsd_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(part_bsd_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -part_sunpc.marker: $(part_sunpc_module_SOURCES) $(nodist_part_sunpc_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(part_sunpc_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -part_dfly.marker: $(part_dfly_module_SOURCES) $(nodist_part_dfly_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(part_dfly_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -msdospart.marker: $(msdospart_module_SOURCES) $(nodist_msdospart_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(msdospart_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_pc_TRUE@at_keyboard.marker: $(at_keyboard_module_SOURCES) $(nodist_at_keyboard_module_SOURCES) -@COND_i386_pc_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(at_keyboard_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_pc_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_efi_TRUE@at_keyboard.marker: $(at_keyboard_module_SOURCES) $(nodist_at_keyboard_module_SOURCES) -@COND_i386_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(at_keyboard_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_qemu_TRUE@at_keyboard.marker: $(at_keyboard_module_SOURCES) $(nodist_at_keyboard_module_SOURCES) -@COND_i386_qemu_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(at_keyboard_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_qemu_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_coreboot_TRUE@at_keyboard.marker: $(at_keyboard_module_SOURCES) $(nodist_at_keyboard_module_SOURCES) -@COND_i386_coreboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(at_keyboard_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_coreboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_multiboot_TRUE@at_keyboard.marker: $(at_keyboard_module_SOURCES) $(nodist_at_keyboard_module_SOURCES) -@COND_i386_multiboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(at_keyboard_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_multiboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_ieee1275_TRUE@at_keyboard.marker: $(at_keyboard_module_SOURCES) $(nodist_at_keyboard_module_SOURCES) -@COND_i386_ieee1275_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(at_keyboard_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_ieee1275_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_x86_64_efi_TRUE@at_keyboard.marker: $(at_keyboard_module_SOURCES) $(nodist_at_keyboard_module_SOURCES) -@COND_x86_64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(at_keyboard_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_x86_64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_emu_TRUE@gfxterm.marker: $(gfxterm_module_SOURCES) $(nodist_gfxterm_module_SOURCES) -@COND_emu_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gfxterm_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_emu_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_pc_TRUE@gfxterm.marker: $(gfxterm_module_SOURCES) $(nodist_gfxterm_module_SOURCES) -@COND_i386_pc_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gfxterm_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_pc_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_efi_TRUE@gfxterm.marker: $(gfxterm_module_SOURCES) $(nodist_gfxterm_module_SOURCES) -@COND_i386_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gfxterm_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_qemu_TRUE@gfxterm.marker: $(gfxterm_module_SOURCES) $(nodist_gfxterm_module_SOURCES) -@COND_i386_qemu_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gfxterm_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_qemu_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_multiboot_TRUE@gfxterm.marker: $(gfxterm_module_SOURCES) $(nodist_gfxterm_module_SOURCES) -@COND_i386_multiboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gfxterm_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_multiboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_ieee1275_TRUE@gfxterm.marker: $(gfxterm_module_SOURCES) $(nodist_gfxterm_module_SOURCES) -@COND_i386_ieee1275_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gfxterm_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_ieee1275_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_x86_64_efi_TRUE@gfxterm.marker: $(gfxterm_module_SOURCES) $(nodist_gfxterm_module_SOURCES) -@COND_x86_64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gfxterm_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_x86_64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_xen_TRUE@gfxterm.marker: $(gfxterm_module_SOURCES) $(nodist_gfxterm_module_SOURCES) -@COND_i386_xen_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gfxterm_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_xen_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_x86_64_xen_TRUE@gfxterm.marker: $(gfxterm_module_SOURCES) $(nodist_gfxterm_module_SOURCES) -@COND_x86_64_xen_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gfxterm_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_x86_64_xen_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_xen_pvh_TRUE@gfxterm.marker: $(gfxterm_module_SOURCES) $(nodist_gfxterm_module_SOURCES) -@COND_i386_xen_pvh_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gfxterm_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_xen_pvh_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_sparc64_ieee1275_TRUE@gfxterm.marker: $(gfxterm_module_SOURCES) $(nodist_gfxterm_module_SOURCES) -@COND_sparc64_ieee1275_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gfxterm_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_sparc64_ieee1275_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_powerpc_ieee1275_TRUE@gfxterm.marker: $(gfxterm_module_SOURCES) $(nodist_gfxterm_module_SOURCES) -@COND_powerpc_ieee1275_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gfxterm_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_powerpc_ieee1275_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_mips_arc_TRUE@gfxterm.marker: $(gfxterm_module_SOURCES) $(nodist_gfxterm_module_SOURCES) -@COND_mips_arc_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gfxterm_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_mips_arc_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_ia64_efi_TRUE@gfxterm.marker: $(gfxterm_module_SOURCES) $(nodist_gfxterm_module_SOURCES) -@COND_ia64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gfxterm_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_ia64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_mips_qemu_mips_TRUE@gfxterm.marker: $(gfxterm_module_SOURCES) $(nodist_gfxterm_module_SOURCES) -@COND_mips_qemu_mips_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gfxterm_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_mips_qemu_mips_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_arm_uboot_TRUE@gfxterm.marker: $(gfxterm_module_SOURCES) $(nodist_gfxterm_module_SOURCES) -@COND_arm_uboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gfxterm_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_arm_uboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_arm_efi_TRUE@gfxterm.marker: $(gfxterm_module_SOURCES) $(nodist_gfxterm_module_SOURCES) -@COND_arm_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gfxterm_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_arm_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_arm64_efi_TRUE@gfxterm.marker: $(gfxterm_module_SOURCES) $(nodist_gfxterm_module_SOURCES) -@COND_arm64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gfxterm_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_arm64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_riscv32_efi_TRUE@gfxterm.marker: $(gfxterm_module_SOURCES) $(nodist_gfxterm_module_SOURCES) -@COND_riscv32_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gfxterm_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_riscv32_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_riscv64_efi_TRUE@gfxterm.marker: $(gfxterm_module_SOURCES) $(nodist_gfxterm_module_SOURCES) -@COND_riscv64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gfxterm_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_riscv64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -gfxterm_background.marker: $(gfxterm_background_module_SOURCES) $(nodist_gfxterm_background_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gfxterm_background_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_pc_TRUE@serial.marker: $(serial_module_SOURCES) $(nodist_serial_module_SOURCES) -@COND_i386_pc_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(serial_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_pc_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_efi_TRUE@serial.marker: $(serial_module_SOURCES) $(nodist_serial_module_SOURCES) -@COND_i386_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(serial_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_qemu_TRUE@serial.marker: $(serial_module_SOURCES) $(nodist_serial_module_SOURCES) -@COND_i386_qemu_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(serial_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_qemu_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_coreboot_TRUE@serial.marker: $(serial_module_SOURCES) $(nodist_serial_module_SOURCES) -@COND_i386_coreboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(serial_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_coreboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_multiboot_TRUE@serial.marker: $(serial_module_SOURCES) $(nodist_serial_module_SOURCES) -@COND_i386_multiboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(serial_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_multiboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_ieee1275_TRUE@serial.marker: $(serial_module_SOURCES) $(nodist_serial_module_SOURCES) -@COND_i386_ieee1275_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(serial_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_ieee1275_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_x86_64_efi_TRUE@serial.marker: $(serial_module_SOURCES) $(nodist_serial_module_SOURCES) -@COND_x86_64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(serial_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_x86_64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_sparc64_ieee1275_TRUE@serial.marker: $(serial_module_SOURCES) $(nodist_serial_module_SOURCES) -@COND_sparc64_ieee1275_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(serial_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_sparc64_ieee1275_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_powerpc_ieee1275_TRUE@serial.marker: $(serial_module_SOURCES) $(nodist_serial_module_SOURCES) -@COND_powerpc_ieee1275_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(serial_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_powerpc_ieee1275_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_mips_arc_TRUE@serial.marker: $(serial_module_SOURCES) $(nodist_serial_module_SOURCES) -@COND_mips_arc_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(serial_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_mips_arc_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_ia64_efi_TRUE@serial.marker: $(serial_module_SOURCES) $(nodist_serial_module_SOURCES) -@COND_ia64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(serial_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_ia64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_arm_efi_TRUE@serial.marker: $(serial_module_SOURCES) $(nodist_serial_module_SOURCES) -@COND_arm_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(serial_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_arm_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_arm64_efi_TRUE@serial.marker: $(serial_module_SOURCES) $(nodist_serial_module_SOURCES) -@COND_arm64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(serial_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_arm64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_arm_coreboot_TRUE@serial.marker: $(serial_module_SOURCES) $(nodist_serial_module_SOURCES) -@COND_arm_coreboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(serial_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_arm_coreboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_riscv32_efi_TRUE@serial.marker: $(serial_module_SOURCES) $(nodist_serial_module_SOURCES) -@COND_riscv32_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(serial_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_riscv32_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_riscv64_efi_TRUE@serial.marker: $(serial_module_SOURCES) $(nodist_serial_module_SOURCES) -@COND_riscv64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(serial_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_riscv64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_pc_TRUE@sendkey.marker: $(sendkey_module_SOURCES) $(nodist_sendkey_module_SOURCES) -@COND_i386_pc_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(sendkey_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_pc_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_pc_TRUE@terminfo.marker: $(terminfo_module_SOURCES) $(nodist_terminfo_module_SOURCES) -@COND_i386_pc_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(terminfo_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_pc_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_efi_TRUE@terminfo.marker: $(terminfo_module_SOURCES) $(nodist_terminfo_module_SOURCES) -@COND_i386_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(terminfo_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_qemu_TRUE@terminfo.marker: $(terminfo_module_SOURCES) $(nodist_terminfo_module_SOURCES) -@COND_i386_qemu_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(terminfo_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_qemu_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_coreboot_TRUE@terminfo.marker: $(terminfo_module_SOURCES) $(nodist_terminfo_module_SOURCES) -@COND_i386_coreboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(terminfo_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_coreboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_multiboot_TRUE@terminfo.marker: $(terminfo_module_SOURCES) $(nodist_terminfo_module_SOURCES) -@COND_i386_multiboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(terminfo_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_multiboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_x86_64_efi_TRUE@terminfo.marker: $(terminfo_module_SOURCES) $(nodist_terminfo_module_SOURCES) -@COND_x86_64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(terminfo_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_x86_64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_ia64_efi_TRUE@terminfo.marker: $(terminfo_module_SOURCES) $(nodist_terminfo_module_SOURCES) -@COND_ia64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(terminfo_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_ia64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_arm_efi_TRUE@terminfo.marker: $(terminfo_module_SOURCES) $(nodist_terminfo_module_SOURCES) -@COND_arm_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(terminfo_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_arm_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_arm64_efi_TRUE@terminfo.marker: $(terminfo_module_SOURCES) $(nodist_terminfo_module_SOURCES) -@COND_arm64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(terminfo_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_arm64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_arm_coreboot_TRUE@terminfo.marker: $(terminfo_module_SOURCES) $(nodist_terminfo_module_SOURCES) -@COND_arm_coreboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(terminfo_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_arm_coreboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_riscv32_efi_TRUE@terminfo.marker: $(terminfo_module_SOURCES) $(nodist_terminfo_module_SOURCES) -@COND_riscv32_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(terminfo_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_riscv32_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_riscv64_efi_TRUE@terminfo.marker: $(terminfo_module_SOURCES) $(nodist_terminfo_module_SOURCES) -@COND_riscv64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(terminfo_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_riscv64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_pc_TRUE@usb_keyboard.marker: $(usb_keyboard_module_SOURCES) $(nodist_usb_keyboard_module_SOURCES) -@COND_i386_pc_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usb_keyboard_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_pc_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_efi_TRUE@usb_keyboard.marker: $(usb_keyboard_module_SOURCES) $(nodist_usb_keyboard_module_SOURCES) -@COND_i386_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usb_keyboard_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_qemu_TRUE@usb_keyboard.marker: $(usb_keyboard_module_SOURCES) $(nodist_usb_keyboard_module_SOURCES) -@COND_i386_qemu_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usb_keyboard_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_qemu_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_coreboot_TRUE@usb_keyboard.marker: $(usb_keyboard_module_SOURCES) $(nodist_usb_keyboard_module_SOURCES) -@COND_i386_coreboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usb_keyboard_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_coreboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_multiboot_TRUE@usb_keyboard.marker: $(usb_keyboard_module_SOURCES) $(nodist_usb_keyboard_module_SOURCES) -@COND_i386_multiboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usb_keyboard_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_multiboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_ieee1275_TRUE@usb_keyboard.marker: $(usb_keyboard_module_SOURCES) $(nodist_usb_keyboard_module_SOURCES) -@COND_i386_ieee1275_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usb_keyboard_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_ieee1275_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_x86_64_efi_TRUE@usb_keyboard.marker: $(usb_keyboard_module_SOURCES) $(nodist_usb_keyboard_module_SOURCES) -@COND_x86_64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usb_keyboard_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_x86_64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_mips_loongson_TRUE@usb_keyboard.marker: $(usb_keyboard_module_SOURCES) $(nodist_usb_keyboard_module_SOURCES) -@COND_mips_loongson_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usb_keyboard_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_mips_loongson_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_arm_coreboot_TRUE@usb_keyboard.marker: $(usb_keyboard_module_SOURCES) $(nodist_usb_keyboard_module_SOURCES) -@COND_arm_coreboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(usb_keyboard_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_arm_coreboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_pc_TRUE@vga.marker: $(vga_module_SOURCES) $(nodist_vga_module_SOURCES) -@COND_i386_pc_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(vga_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_pc_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_pc_TRUE@vga_text.marker: $(vga_text_module_SOURCES) $(nodist_vga_text_module_SOURCES) -@COND_i386_pc_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(vga_text_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_pc_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_pc_TRUE@mda_text.marker: $(mda_text_module_SOURCES) $(nodist_mda_text_module_SOURCES) -@COND_i386_pc_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mda_text_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_pc_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_qemu_TRUE@mda_text.marker: $(mda_text_module_SOURCES) $(nodist_mda_text_module_SOURCES) -@COND_i386_qemu_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mda_text_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_qemu_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_coreboot_TRUE@mda_text.marker: $(mda_text_module_SOURCES) $(nodist_mda_text_module_SOURCES) -@COND_i386_coreboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mda_text_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_coreboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_multiboot_TRUE@mda_text.marker: $(mda_text_module_SOURCES) $(nodist_mda_text_module_SOURCES) -@COND_i386_multiboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mda_text_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_multiboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_pc_TRUE@video_cirrus.marker: $(video_cirrus_module_SOURCES) $(nodist_video_cirrus_module_SOURCES) -@COND_i386_pc_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(video_cirrus_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_pc_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_efi_TRUE@video_cirrus.marker: $(video_cirrus_module_SOURCES) $(nodist_video_cirrus_module_SOURCES) -@COND_i386_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(video_cirrus_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_qemu_TRUE@video_cirrus.marker: $(video_cirrus_module_SOURCES) $(nodist_video_cirrus_module_SOURCES) -@COND_i386_qemu_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(video_cirrus_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_qemu_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_coreboot_TRUE@video_cirrus.marker: $(video_cirrus_module_SOURCES) $(nodist_video_cirrus_module_SOURCES) -@COND_i386_coreboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(video_cirrus_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_coreboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_multiboot_TRUE@video_cirrus.marker: $(video_cirrus_module_SOURCES) $(nodist_video_cirrus_module_SOURCES) -@COND_i386_multiboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(video_cirrus_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_multiboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_ieee1275_TRUE@video_cirrus.marker: $(video_cirrus_module_SOURCES) $(nodist_video_cirrus_module_SOURCES) -@COND_i386_ieee1275_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(video_cirrus_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_ieee1275_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_x86_64_efi_TRUE@video_cirrus.marker: $(video_cirrus_module_SOURCES) $(nodist_video_cirrus_module_SOURCES) -@COND_x86_64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(video_cirrus_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_x86_64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_pc_TRUE@video_bochs.marker: $(video_bochs_module_SOURCES) $(nodist_video_bochs_module_SOURCES) -@COND_i386_pc_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(video_bochs_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_pc_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_efi_TRUE@video_bochs.marker: $(video_bochs_module_SOURCES) $(nodist_video_bochs_module_SOURCES) -@COND_i386_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(video_bochs_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_qemu_TRUE@video_bochs.marker: $(video_bochs_module_SOURCES) $(nodist_video_bochs_module_SOURCES) -@COND_i386_qemu_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(video_bochs_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_qemu_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_coreboot_TRUE@video_bochs.marker: $(video_bochs_module_SOURCES) $(nodist_video_bochs_module_SOURCES) -@COND_i386_coreboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(video_bochs_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_coreboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_multiboot_TRUE@video_bochs.marker: $(video_bochs_module_SOURCES) $(nodist_video_bochs_module_SOURCES) -@COND_i386_multiboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(video_bochs_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_multiboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_ieee1275_TRUE@video_bochs.marker: $(video_bochs_module_SOURCES) $(nodist_video_bochs_module_SOURCES) -@COND_i386_ieee1275_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(video_bochs_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_ieee1275_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_x86_64_efi_TRUE@video_bochs.marker: $(video_bochs_module_SOURCES) $(nodist_video_bochs_module_SOURCES) -@COND_x86_64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(video_bochs_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_x86_64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -functional_test.marker: $(functional_test_module_SOURCES) $(nodist_functional_test_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(functional_test_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -exfctest.marker: $(exfctest_module_SOURCES) $(nodist_exfctest_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(exfctest_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -strtoull_test.marker: $(strtoull_test_module_SOURCES) $(nodist_strtoull_test_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(strtoull_test_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -setjmp_test.marker: $(setjmp_test_module_SOURCES) $(nodist_setjmp_test_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(setjmp_test_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -signature_test.marker: $(signature_test_module_SOURCES) $(nodist_signature_test_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(signature_test_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -sleep_test.marker: $(sleep_test_module_SOURCES) $(nodist_sleep_test_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(sleep_test_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -xnu_uuid_test.marker: $(xnu_uuid_test_module_SOURCES) $(nodist_xnu_uuid_test_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(xnu_uuid_test_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -pbkdf2_test.marker: $(pbkdf2_test_module_SOURCES) $(nodist_pbkdf2_test_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(pbkdf2_test_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_emu_TRUE@legacy_password_test.marker: $(legacy_password_test_module_SOURCES) $(nodist_legacy_password_test_module_SOURCES) -@COND_emu_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(legacy_password_test_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_emu_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_pc_TRUE@legacy_password_test.marker: $(legacy_password_test_module_SOURCES) $(nodist_legacy_password_test_module_SOURCES) -@COND_i386_pc_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(legacy_password_test_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_pc_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_efi_TRUE@legacy_password_test.marker: $(legacy_password_test_module_SOURCES) $(nodist_legacy_password_test_module_SOURCES) -@COND_i386_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(legacy_password_test_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_x86_64_efi_TRUE@legacy_password_test.marker: $(legacy_password_test_module_SOURCES) $(nodist_legacy_password_test_module_SOURCES) -@COND_x86_64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(legacy_password_test_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_x86_64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_xen_TRUE@legacy_password_test.marker: $(legacy_password_test_module_SOURCES) $(nodist_legacy_password_test_module_SOURCES) -@COND_i386_xen_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(legacy_password_test_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_xen_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_x86_64_xen_TRUE@legacy_password_test.marker: $(legacy_password_test_module_SOURCES) $(nodist_legacy_password_test_module_SOURCES) -@COND_x86_64_xen_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(legacy_password_test_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_x86_64_xen_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_xen_pvh_TRUE@legacy_password_test.marker: $(legacy_password_test_module_SOURCES) $(nodist_legacy_password_test_module_SOURCES) -@COND_i386_xen_pvh_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(legacy_password_test_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_xen_pvh_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_emu_TRUE@div.marker: $(div_module_SOURCES) $(nodist_div_module_SOURCES) -@COND_emu_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(div_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_emu_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_pc_TRUE@div.marker: $(div_module_SOURCES) $(nodist_div_module_SOURCES) -@COND_i386_pc_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(div_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_pc_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_efi_TRUE@div.marker: $(div_module_SOURCES) $(nodist_div_module_SOURCES) -@COND_i386_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(div_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_qemu_TRUE@div.marker: $(div_module_SOURCES) $(nodist_div_module_SOURCES) -@COND_i386_qemu_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(div_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_qemu_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_coreboot_TRUE@div.marker: $(div_module_SOURCES) $(nodist_div_module_SOURCES) -@COND_i386_coreboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(div_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_coreboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_multiboot_TRUE@div.marker: $(div_module_SOURCES) $(nodist_div_module_SOURCES) -@COND_i386_multiboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(div_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_multiboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_ieee1275_TRUE@div.marker: $(div_module_SOURCES) $(nodist_div_module_SOURCES) -@COND_i386_ieee1275_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(div_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_ieee1275_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_x86_64_efi_TRUE@div.marker: $(div_module_SOURCES) $(nodist_div_module_SOURCES) -@COND_x86_64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(div_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_x86_64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_xen_TRUE@div.marker: $(div_module_SOURCES) $(nodist_div_module_SOURCES) -@COND_i386_xen_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(div_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_xen_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_x86_64_xen_TRUE@div.marker: $(div_module_SOURCES) $(nodist_div_module_SOURCES) -@COND_x86_64_xen_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(div_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_x86_64_xen_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_xen_pvh_TRUE@div.marker: $(div_module_SOURCES) $(nodist_div_module_SOURCES) -@COND_i386_xen_pvh_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(div_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_xen_pvh_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_mips_loongson_TRUE@div.marker: $(div_module_SOURCES) $(nodist_div_module_SOURCES) -@COND_mips_loongson_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(div_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_mips_loongson_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_sparc64_ieee1275_TRUE@div.marker: $(div_module_SOURCES) $(nodist_div_module_SOURCES) -@COND_sparc64_ieee1275_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(div_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_sparc64_ieee1275_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_powerpc_ieee1275_TRUE@div.marker: $(div_module_SOURCES) $(nodist_div_module_SOURCES) -@COND_powerpc_ieee1275_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(div_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_powerpc_ieee1275_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_mips_arc_TRUE@div.marker: $(div_module_SOURCES) $(nodist_div_module_SOURCES) -@COND_mips_arc_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(div_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_mips_arc_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_mips_qemu_mips_TRUE@div.marker: $(div_module_SOURCES) $(nodist_div_module_SOURCES) -@COND_mips_qemu_mips_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(div_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_mips_qemu_mips_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_arm64_efi_TRUE@div.marker: $(div_module_SOURCES) $(nodist_div_module_SOURCES) -@COND_arm64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(div_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_arm64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_riscv64_efi_TRUE@div.marker: $(div_module_SOURCES) $(nodist_div_module_SOURCES) -@COND_riscv64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(div_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_riscv64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -div_test.marker: $(div_test_module_SOURCES) $(nodist_div_test_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(div_test_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -mul_test.marker: $(mul_test_module_SOURCES) $(nodist_mul_test_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mul_test_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -shift_test.marker: $(shift_test_module_SOURCES) $(nodist_shift_test_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(shift_test_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -cmp_test.marker: $(cmp_test_module_SOURCES) $(nodist_cmp_test_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cmp_test_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -ctz_test.marker: $(ctz_test_module_SOURCES) $(nodist_ctz_test_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ctz_test_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -bswap_test.marker: $(bswap_test_module_SOURCES) $(nodist_bswap_test_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(bswap_test_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -videotest_checksum.marker: $(videotest_checksum_module_SOURCES) $(nodist_videotest_checksum_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(videotest_checksum_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -gfxterm_menu.marker: $(gfxterm_menu_module_SOURCES) $(nodist_gfxterm_menu_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gfxterm_menu_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -cmdline_cat_test.marker: $(cmdline_cat_test_module_SOURCES) $(nodist_cmdline_cat_test_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cmdline_cat_test_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -bitmap.marker: $(bitmap_module_SOURCES) $(nodist_bitmap_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(bitmap_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -bitmap_scale.marker: $(bitmap_scale_module_SOURCES) $(nodist_bitmap_scale_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(bitmap_scale_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_efi_TRUE@efi_gop.marker: $(efi_gop_module_SOURCES) $(nodist_efi_gop_module_SOURCES) -@COND_i386_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(efi_gop_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_x86_64_efi_TRUE@efi_gop.marker: $(efi_gop_module_SOURCES) $(nodist_efi_gop_module_SOURCES) -@COND_x86_64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(efi_gop_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_x86_64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_ia64_efi_TRUE@efi_gop.marker: $(efi_gop_module_SOURCES) $(nodist_efi_gop_module_SOURCES) -@COND_ia64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(efi_gop_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_ia64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_arm_efi_TRUE@efi_gop.marker: $(efi_gop_module_SOURCES) $(nodist_efi_gop_module_SOURCES) -@COND_arm_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(efi_gop_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_arm_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_arm64_efi_TRUE@efi_gop.marker: $(efi_gop_module_SOURCES) $(nodist_efi_gop_module_SOURCES) -@COND_arm64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(efi_gop_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_arm64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_riscv32_efi_TRUE@efi_gop.marker: $(efi_gop_module_SOURCES) $(nodist_efi_gop_module_SOURCES) -@COND_riscv32_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(efi_gop_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_riscv32_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_riscv64_efi_TRUE@efi_gop.marker: $(efi_gop_module_SOURCES) $(nodist_efi_gop_module_SOURCES) -@COND_riscv64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(efi_gop_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_riscv64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_efi_TRUE@efi_uga.marker: $(efi_uga_module_SOURCES) $(nodist_efi_uga_module_SOURCES) -@COND_i386_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(efi_uga_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_x86_64_efi_TRUE@efi_uga.marker: $(efi_uga_module_SOURCES) $(nodist_efi_uga_module_SOURCES) -@COND_x86_64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(efi_uga_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_x86_64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -jpeg.marker: $(jpeg_module_SOURCES) $(nodist_jpeg_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(jpeg_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -png.marker: $(png_module_SOURCES) $(nodist_png_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(png_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -tga.marker: $(tga_module_SOURCES) $(nodist_tga_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(tga_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_pc_TRUE@vbe.marker: $(vbe_module_SOURCES) $(nodist_vbe_module_SOURCES) -@COND_i386_pc_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(vbe_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_pc_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_emu_TRUE@video_fb.marker: $(video_fb_module_SOURCES) $(nodist_video_fb_module_SOURCES) -@COND_emu_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(video_fb_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_emu_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_pc_TRUE@video_fb.marker: $(video_fb_module_SOURCES) $(nodist_video_fb_module_SOURCES) -@COND_i386_pc_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(video_fb_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_pc_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_efi_TRUE@video_fb.marker: $(video_fb_module_SOURCES) $(nodist_video_fb_module_SOURCES) -@COND_i386_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(video_fb_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_qemu_TRUE@video_fb.marker: $(video_fb_module_SOURCES) $(nodist_video_fb_module_SOURCES) -@COND_i386_qemu_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(video_fb_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_qemu_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_multiboot_TRUE@video_fb.marker: $(video_fb_module_SOURCES) $(nodist_video_fb_module_SOURCES) -@COND_i386_multiboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(video_fb_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_multiboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_ieee1275_TRUE@video_fb.marker: $(video_fb_module_SOURCES) $(nodist_video_fb_module_SOURCES) -@COND_i386_ieee1275_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(video_fb_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_ieee1275_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_x86_64_efi_TRUE@video_fb.marker: $(video_fb_module_SOURCES) $(nodist_video_fb_module_SOURCES) -@COND_x86_64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(video_fb_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_x86_64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_xen_TRUE@video_fb.marker: $(video_fb_module_SOURCES) $(nodist_video_fb_module_SOURCES) -@COND_i386_xen_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(video_fb_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_xen_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_x86_64_xen_TRUE@video_fb.marker: $(video_fb_module_SOURCES) $(nodist_video_fb_module_SOURCES) -@COND_x86_64_xen_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(video_fb_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_x86_64_xen_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_xen_pvh_TRUE@video_fb.marker: $(video_fb_module_SOURCES) $(nodist_video_fb_module_SOURCES) -@COND_i386_xen_pvh_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(video_fb_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_xen_pvh_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_sparc64_ieee1275_TRUE@video_fb.marker: $(video_fb_module_SOURCES) $(nodist_video_fb_module_SOURCES) -@COND_sparc64_ieee1275_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(video_fb_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_sparc64_ieee1275_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_powerpc_ieee1275_TRUE@video_fb.marker: $(video_fb_module_SOURCES) $(nodist_video_fb_module_SOURCES) -@COND_powerpc_ieee1275_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(video_fb_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_powerpc_ieee1275_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_mips_arc_TRUE@video_fb.marker: $(video_fb_module_SOURCES) $(nodist_video_fb_module_SOURCES) -@COND_mips_arc_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(video_fb_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_mips_arc_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_ia64_efi_TRUE@video_fb.marker: $(video_fb_module_SOURCES) $(nodist_video_fb_module_SOURCES) -@COND_ia64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(video_fb_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_ia64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_mips_qemu_mips_TRUE@video_fb.marker: $(video_fb_module_SOURCES) $(nodist_video_fb_module_SOURCES) -@COND_mips_qemu_mips_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(video_fb_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_mips_qemu_mips_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_arm_uboot_TRUE@video_fb.marker: $(video_fb_module_SOURCES) $(nodist_video_fb_module_SOURCES) -@COND_arm_uboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(video_fb_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_arm_uboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_arm_efi_TRUE@video_fb.marker: $(video_fb_module_SOURCES) $(nodist_video_fb_module_SOURCES) -@COND_arm_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(video_fb_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_arm_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_arm64_efi_TRUE@video_fb.marker: $(video_fb_module_SOURCES) $(nodist_video_fb_module_SOURCES) -@COND_arm64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(video_fb_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_arm64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_riscv32_efi_TRUE@video_fb.marker: $(video_fb_module_SOURCES) $(nodist_video_fb_module_SOURCES) -@COND_riscv32_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(video_fb_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_riscv32_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_riscv64_efi_TRUE@video_fb.marker: $(video_fb_module_SOURCES) $(nodist_video_fb_module_SOURCES) -@COND_riscv64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(video_fb_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_riscv64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_emu_TRUE@video.marker: $(video_module_SOURCES) $(nodist_video_module_SOURCES) -@COND_emu_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(video_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_emu_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_pc_TRUE@video.marker: $(video_module_SOURCES) $(nodist_video_module_SOURCES) -@COND_i386_pc_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(video_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_pc_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_efi_TRUE@video.marker: $(video_module_SOURCES) $(nodist_video_module_SOURCES) -@COND_i386_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(video_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_qemu_TRUE@video.marker: $(video_module_SOURCES) $(nodist_video_module_SOURCES) -@COND_i386_qemu_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(video_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_qemu_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_multiboot_TRUE@video.marker: $(video_module_SOURCES) $(nodist_video_module_SOURCES) -@COND_i386_multiboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(video_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_multiboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_ieee1275_TRUE@video.marker: $(video_module_SOURCES) $(nodist_video_module_SOURCES) -@COND_i386_ieee1275_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(video_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_ieee1275_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_x86_64_efi_TRUE@video.marker: $(video_module_SOURCES) $(nodist_video_module_SOURCES) -@COND_x86_64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(video_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_x86_64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_xen_TRUE@video.marker: $(video_module_SOURCES) $(nodist_video_module_SOURCES) -@COND_i386_xen_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(video_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_xen_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_x86_64_xen_TRUE@video.marker: $(video_module_SOURCES) $(nodist_video_module_SOURCES) -@COND_x86_64_xen_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(video_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_x86_64_xen_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_xen_pvh_TRUE@video.marker: $(video_module_SOURCES) $(nodist_video_module_SOURCES) -@COND_i386_xen_pvh_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(video_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_xen_pvh_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_sparc64_ieee1275_TRUE@video.marker: $(video_module_SOURCES) $(nodist_video_module_SOURCES) -@COND_sparc64_ieee1275_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(video_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_sparc64_ieee1275_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_powerpc_ieee1275_TRUE@video.marker: $(video_module_SOURCES) $(nodist_video_module_SOURCES) -@COND_powerpc_ieee1275_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(video_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_powerpc_ieee1275_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_mips_arc_TRUE@video.marker: $(video_module_SOURCES) $(nodist_video_module_SOURCES) -@COND_mips_arc_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(video_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_mips_arc_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_ia64_efi_TRUE@video.marker: $(video_module_SOURCES) $(nodist_video_module_SOURCES) -@COND_ia64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(video_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_ia64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_mips_qemu_mips_TRUE@video.marker: $(video_module_SOURCES) $(nodist_video_module_SOURCES) -@COND_mips_qemu_mips_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(video_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_mips_qemu_mips_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_arm_uboot_TRUE@video.marker: $(video_module_SOURCES) $(nodist_video_module_SOURCES) -@COND_arm_uboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(video_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_arm_uboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_arm_efi_TRUE@video.marker: $(video_module_SOURCES) $(nodist_video_module_SOURCES) -@COND_arm_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(video_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_arm_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_arm64_efi_TRUE@video.marker: $(video_module_SOURCES) $(nodist_video_module_SOURCES) -@COND_arm64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(video_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_arm64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_riscv32_efi_TRUE@video.marker: $(video_module_SOURCES) $(nodist_video_module_SOURCES) -@COND_riscv32_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(video_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_riscv32_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_riscv64_efi_TRUE@video.marker: $(video_module_SOURCES) $(nodist_video_module_SOURCES) -@COND_riscv64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(video_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_riscv64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -video_colors.marker: $(video_colors_module_SOURCES) $(nodist_video_colors_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(video_colors_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_powerpc_ieee1275_TRUE@ieee1275_fb.marker: $(ieee1275_fb_module_SOURCES) $(nodist_ieee1275_fb_module_SOURCES) -@COND_powerpc_ieee1275_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ieee1275_fb_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_powerpc_ieee1275_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_GRUB_EMU_SDL_TRUE@@COND_emu_TRUE@sdl.marker: $(sdl_module_SOURCES) $(nodist_sdl_module_SOURCES) -@COND_GRUB_EMU_SDL_TRUE@@COND_emu_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(sdl_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_GRUB_EMU_SDL_TRUE@@COND_emu_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -datehook.marker: $(datehook_module_SOURCES) $(nodist_datehook_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(datehook_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -net.marker: $(net_module_SOURCES) $(nodist_net_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(net_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -tftp.marker: $(tftp_module_SOURCES) $(nodist_tftp_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(tftp_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -http.marker: $(http_module_SOURCES) $(nodist_http_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(http_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_ieee1275_TRUE@ofnet.marker: $(ofnet_module_SOURCES) $(nodist_ofnet_module_SOURCES) -@COND_i386_ieee1275_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ofnet_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_ieee1275_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_sparc64_ieee1275_TRUE@ofnet.marker: $(ofnet_module_SOURCES) $(nodist_ofnet_module_SOURCES) -@COND_sparc64_ieee1275_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ofnet_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_sparc64_ieee1275_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_powerpc_ieee1275_TRUE@ofnet.marker: $(ofnet_module_SOURCES) $(nodist_ofnet_module_SOURCES) -@COND_powerpc_ieee1275_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ofnet_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_powerpc_ieee1275_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_arm_uboot_TRUE@ubootnet.marker: $(ubootnet_module_SOURCES) $(nodist_ubootnet_module_SOURCES) -@COND_arm_uboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ubootnet_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_arm_uboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_efi_TRUE@efinet.marker: $(efinet_module_SOURCES) $(nodist_efinet_module_SOURCES) -@COND_i386_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(efinet_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_x86_64_efi_TRUE@efinet.marker: $(efinet_module_SOURCES) $(nodist_efinet_module_SOURCES) -@COND_x86_64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(efinet_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_x86_64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_ia64_efi_TRUE@efinet.marker: $(efinet_module_SOURCES) $(nodist_efinet_module_SOURCES) -@COND_ia64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(efinet_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_ia64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_arm_efi_TRUE@efinet.marker: $(efinet_module_SOURCES) $(nodist_efinet_module_SOURCES) -@COND_arm_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(efinet_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_arm_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_arm64_efi_TRUE@efinet.marker: $(efinet_module_SOURCES) $(nodist_efinet_module_SOURCES) -@COND_arm64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(efinet_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_arm64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_riscv32_efi_TRUE@efinet.marker: $(efinet_module_SOURCES) $(nodist_efinet_module_SOURCES) -@COND_riscv32_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(efinet_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_riscv32_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_riscv64_efi_TRUE@efinet.marker: $(efinet_module_SOURCES) $(nodist_efinet_module_SOURCES) -@COND_riscv64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(efinet_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_riscv64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_emu_TRUE@emunet.marker: $(emunet_module_SOURCES) $(nodist_emunet_module_SOURCES) -@COND_emu_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(emunet_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_emu_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_emu_TRUE@legacycfg.marker: $(legacycfg_module_SOURCES) $(nodist_legacycfg_module_SOURCES) -@COND_emu_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(legacycfg_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_emu_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_pc_TRUE@legacycfg.marker: $(legacycfg_module_SOURCES) $(nodist_legacycfg_module_SOURCES) -@COND_i386_pc_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(legacycfg_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_pc_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_efi_TRUE@legacycfg.marker: $(legacycfg_module_SOURCES) $(nodist_legacycfg_module_SOURCES) -@COND_i386_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(legacycfg_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_x86_64_efi_TRUE@legacycfg.marker: $(legacycfg_module_SOURCES) $(nodist_legacycfg_module_SOURCES) -@COND_x86_64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(legacycfg_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_x86_64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_xen_TRUE@legacycfg.marker: $(legacycfg_module_SOURCES) $(nodist_legacycfg_module_SOURCES) -@COND_i386_xen_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(legacycfg_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_xen_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_x86_64_xen_TRUE@legacycfg.marker: $(legacycfg_module_SOURCES) $(nodist_legacycfg_module_SOURCES) -@COND_x86_64_xen_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(legacycfg_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_x86_64_xen_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_xen_pvh_TRUE@legacycfg.marker: $(legacycfg_module_SOURCES) $(nodist_legacycfg_module_SOURCES) -@COND_i386_xen_pvh_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(legacycfg_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_xen_pvh_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -syslinuxcfg.marker: $(syslinuxcfg_module_SOURCES) $(nodist_syslinuxcfg_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(syslinuxcfg_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -test_blockarg.marker: $(test_blockarg_module_SOURCES) $(nodist_test_blockarg_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(test_blockarg_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -xzio.marker: $(xzio_module_SOURCES) $(nodist_xzio_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(xzio_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -lzopio.marker: $(lzopio_module_SOURCES) $(nodist_lzopio_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lzopio_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -testload.marker: $(testload_module_SOURCES) $(nodist_testload_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(testload_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_pc_TRUE@backtrace.marker: $(backtrace_module_SOURCES) $(nodist_backtrace_module_SOURCES) -@COND_i386_pc_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(backtrace_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_pc_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_efi_TRUE@backtrace.marker: $(backtrace_module_SOURCES) $(nodist_backtrace_module_SOURCES) -@COND_i386_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(backtrace_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_qemu_TRUE@backtrace.marker: $(backtrace_module_SOURCES) $(nodist_backtrace_module_SOURCES) -@COND_i386_qemu_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(backtrace_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_qemu_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_coreboot_TRUE@backtrace.marker: $(backtrace_module_SOURCES) $(nodist_backtrace_module_SOURCES) -@COND_i386_coreboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(backtrace_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_coreboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_multiboot_TRUE@backtrace.marker: $(backtrace_module_SOURCES) $(nodist_backtrace_module_SOURCES) -@COND_i386_multiboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(backtrace_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_multiboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_ieee1275_TRUE@backtrace.marker: $(backtrace_module_SOURCES) $(nodist_backtrace_module_SOURCES) -@COND_i386_ieee1275_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(backtrace_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_ieee1275_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_x86_64_efi_TRUE@backtrace.marker: $(backtrace_module_SOURCES) $(nodist_backtrace_module_SOURCES) -@COND_x86_64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(backtrace_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_x86_64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_xen_TRUE@backtrace.marker: $(backtrace_module_SOURCES) $(nodist_backtrace_module_SOURCES) -@COND_i386_xen_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(backtrace_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_xen_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_x86_64_xen_TRUE@backtrace.marker: $(backtrace_module_SOURCES) $(nodist_backtrace_module_SOURCES) -@COND_x86_64_xen_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(backtrace_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_x86_64_xen_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_xen_pvh_TRUE@backtrace.marker: $(backtrace_module_SOURCES) $(nodist_backtrace_module_SOURCES) -@COND_i386_xen_pvh_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(backtrace_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_xen_pvh_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_pc_TRUE@lsapm.marker: $(lsapm_module_SOURCES) $(nodist_lsapm_module_SOURCES) -@COND_i386_pc_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lsapm_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_pc_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_pc_TRUE@keylayouts.marker: $(keylayouts_module_SOURCES) $(nodist_keylayouts_module_SOURCES) -@COND_i386_pc_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(keylayouts_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_pc_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_efi_TRUE@keylayouts.marker: $(keylayouts_module_SOURCES) $(nodist_keylayouts_module_SOURCES) -@COND_i386_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(keylayouts_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_qemu_TRUE@keylayouts.marker: $(keylayouts_module_SOURCES) $(nodist_keylayouts_module_SOURCES) -@COND_i386_qemu_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(keylayouts_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_qemu_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_coreboot_TRUE@keylayouts.marker: $(keylayouts_module_SOURCES) $(nodist_keylayouts_module_SOURCES) -@COND_i386_coreboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(keylayouts_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_coreboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_multiboot_TRUE@keylayouts.marker: $(keylayouts_module_SOURCES) $(nodist_keylayouts_module_SOURCES) -@COND_i386_multiboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(keylayouts_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_multiboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_ieee1275_TRUE@keylayouts.marker: $(keylayouts_module_SOURCES) $(nodist_keylayouts_module_SOURCES) -@COND_i386_ieee1275_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(keylayouts_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_ieee1275_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_x86_64_efi_TRUE@keylayouts.marker: $(keylayouts_module_SOURCES) $(nodist_keylayouts_module_SOURCES) -@COND_x86_64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(keylayouts_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_x86_64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -priority_queue.marker: $(priority_queue_module_SOURCES) $(nodist_priority_queue_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(priority_queue_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -time.marker: $(time_module_SOURCES) $(nodist_time_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(time_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_ENABLE_CACHE_STATS_TRUE@cacheinfo.marker: $(cacheinfo_module_SOURCES) $(nodist_cacheinfo_module_SOURCES) -@COND_ENABLE_CACHE_STATS_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(cacheinfo_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_ENABLE_CACHE_STATS_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_ENABLE_BOOT_TIME_STATS_TRUE@boottime.marker: $(boottime_module_SOURCES) $(nodist_boottime_module_SOURCES) -@COND_ENABLE_BOOT_TIME_STATS_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(boottime_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_ENABLE_BOOT_TIME_STATS_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -adler32.marker: $(adler32_module_SOURCES) $(nodist_adler32_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(adler32_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -crc64.marker: $(crc64_module_SOURCES) $(nodist_crc64_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(crc64_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -mpi.marker: $(mpi_module_SOURCES) $(nodist_mpi_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mpi_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -all_video.marker: $(all_video_module_SOURCES) $(nodist_all_video_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(all_video_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_pc_TRUE@gdb.marker: $(gdb_module_SOURCES) $(nodist_gdb_module_SOURCES) -@COND_i386_pc_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gdb_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_pc_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_efi_TRUE@gdb.marker: $(gdb_module_SOURCES) $(nodist_gdb_module_SOURCES) -@COND_i386_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gdb_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_qemu_TRUE@gdb.marker: $(gdb_module_SOURCES) $(nodist_gdb_module_SOURCES) -@COND_i386_qemu_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gdb_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_qemu_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_coreboot_TRUE@gdb.marker: $(gdb_module_SOURCES) $(nodist_gdb_module_SOURCES) -@COND_i386_coreboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gdb_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_coreboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_multiboot_TRUE@gdb.marker: $(gdb_module_SOURCES) $(nodist_gdb_module_SOURCES) -@COND_i386_multiboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gdb_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_multiboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_ieee1275_TRUE@gdb.marker: $(gdb_module_SOURCES) $(nodist_gdb_module_SOURCES) -@COND_i386_ieee1275_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gdb_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_ieee1275_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -testspeed.marker: $(testspeed_module_SOURCES) $(nodist_testspeed_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(testspeed_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_x86_64_efi_TRUE@tpm.marker: $(tpm_module_SOURCES) $(nodist_tpm_module_SOURCES) -@COND_x86_64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(tpm_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_x86_64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -tr.marker: $(tr_module_SOURCES) $(nodist_tr_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(tr_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -progress.marker: $(progress_module_SOURCES) $(nodist_progress_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(progress_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -file.marker: $(file_module_SOURCES) $(nodist_file_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(file_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_pc_TRUE@rdmsr.marker: $(rdmsr_module_SOURCES) $(nodist_rdmsr_module_SOURCES) -@COND_i386_pc_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(rdmsr_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_pc_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_efi_TRUE@rdmsr.marker: $(rdmsr_module_SOURCES) $(nodist_rdmsr_module_SOURCES) -@COND_i386_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(rdmsr_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_qemu_TRUE@rdmsr.marker: $(rdmsr_module_SOURCES) $(nodist_rdmsr_module_SOURCES) -@COND_i386_qemu_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(rdmsr_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_qemu_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_coreboot_TRUE@rdmsr.marker: $(rdmsr_module_SOURCES) $(nodist_rdmsr_module_SOURCES) -@COND_i386_coreboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(rdmsr_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_coreboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_multiboot_TRUE@rdmsr.marker: $(rdmsr_module_SOURCES) $(nodist_rdmsr_module_SOURCES) -@COND_i386_multiboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(rdmsr_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_multiboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_ieee1275_TRUE@rdmsr.marker: $(rdmsr_module_SOURCES) $(nodist_rdmsr_module_SOURCES) -@COND_i386_ieee1275_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(rdmsr_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_ieee1275_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_x86_64_efi_TRUE@rdmsr.marker: $(rdmsr_module_SOURCES) $(nodist_rdmsr_module_SOURCES) -@COND_x86_64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(rdmsr_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_x86_64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_pc_TRUE@wrmsr.marker: $(wrmsr_module_SOURCES) $(nodist_wrmsr_module_SOURCES) -@COND_i386_pc_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(wrmsr_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_pc_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_efi_TRUE@wrmsr.marker: $(wrmsr_module_SOURCES) $(nodist_wrmsr_module_SOURCES) -@COND_i386_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(wrmsr_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_qemu_TRUE@wrmsr.marker: $(wrmsr_module_SOURCES) $(nodist_wrmsr_module_SOURCES) -@COND_i386_qemu_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(wrmsr_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_qemu_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_coreboot_TRUE@wrmsr.marker: $(wrmsr_module_SOURCES) $(nodist_wrmsr_module_SOURCES) -@COND_i386_coreboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(wrmsr_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_coreboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_multiboot_TRUE@wrmsr.marker: $(wrmsr_module_SOURCES) $(nodist_wrmsr_module_SOURCES) -@COND_i386_multiboot_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(wrmsr_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_multiboot_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_i386_ieee1275_TRUE@wrmsr.marker: $(wrmsr_module_SOURCES) $(nodist_wrmsr_module_SOURCES) -@COND_i386_ieee1275_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(wrmsr_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_i386_ieee1275_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_x86_64_efi_TRUE@wrmsr.marker: $(wrmsr_module_SOURCES) $(nodist_wrmsr_module_SOURCES) -@COND_x86_64_efi_TRUE@ $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(wrmsr_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) -@COND_x86_64_efi_TRUE@ grep 'MARKER' $@.new > $@; rm -f $@.new - -gcry_arcfour.marker: $(gcry_arcfour_module_SOURCES) $(nodist_gcry_arcfour_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gcry_arcfour_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -gcry_blowfish.marker: $(gcry_blowfish_module_SOURCES) $(nodist_gcry_blowfish_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gcry_blowfish_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -gcry_camellia.marker: $(gcry_camellia_module_SOURCES) $(nodist_gcry_camellia_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gcry_camellia_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -gcry_cast5.marker: $(gcry_cast5_module_SOURCES) $(nodist_gcry_cast5_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gcry_cast5_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -gcry_crc.marker: $(gcry_crc_module_SOURCES) $(nodist_gcry_crc_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gcry_crc_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -gcry_des.marker: $(gcry_des_module_SOURCES) $(nodist_gcry_des_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gcry_des_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -gcry_dsa.marker: $(gcry_dsa_module_SOURCES) $(nodist_gcry_dsa_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gcry_dsa_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -gcry_idea.marker: $(gcry_idea_module_SOURCES) $(nodist_gcry_idea_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gcry_idea_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -gcry_md4.marker: $(gcry_md4_module_SOURCES) $(nodist_gcry_md4_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gcry_md4_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -gcry_md5.marker: $(gcry_md5_module_SOURCES) $(nodist_gcry_md5_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gcry_md5_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -gcry_rfc2268.marker: $(gcry_rfc2268_module_SOURCES) $(nodist_gcry_rfc2268_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gcry_rfc2268_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -gcry_rijndael.marker: $(gcry_rijndael_module_SOURCES) $(nodist_gcry_rijndael_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gcry_rijndael_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -gcry_rmd160.marker: $(gcry_rmd160_module_SOURCES) $(nodist_gcry_rmd160_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gcry_rmd160_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -gcry_rsa.marker: $(gcry_rsa_module_SOURCES) $(nodist_gcry_rsa_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gcry_rsa_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -gcry_seed.marker: $(gcry_seed_module_SOURCES) $(nodist_gcry_seed_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gcry_seed_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -gcry_serpent.marker: $(gcry_serpent_module_SOURCES) $(nodist_gcry_serpent_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gcry_serpent_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -gcry_sha1.marker: $(gcry_sha1_module_SOURCES) $(nodist_gcry_sha1_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gcry_sha1_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -gcry_sha256.marker: $(gcry_sha256_module_SOURCES) $(nodist_gcry_sha256_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gcry_sha256_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -gcry_sha512.marker: $(gcry_sha512_module_SOURCES) $(nodist_gcry_sha512_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gcry_sha512_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -gcry_tiger.marker: $(gcry_tiger_module_SOURCES) $(nodist_gcry_tiger_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gcry_tiger_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -gcry_twofish.marker: $(gcry_twofish_module_SOURCES) $(nodist_gcry_twofish_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gcry_twofish_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -gcry_whirlpool.marker: $(gcry_whirlpool_module_SOURCES) $(nodist_gcry_whirlpool_module_SOURCES) - $(TARGET_CPP) -DGRUB_LST_GENERATOR $(CPPFLAGS_MARKER) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(gcry_whirlpool_module_CPPFLAGS) $(CPPFLAGS) $^ > $@.new || (rm -f $@; exit 1) - grep 'MARKER' $@.new > $@; rm -f $@.new - -@COND_emu_TRUE@kernel.img: kernel.exec$(EXEEXT) -@COND_emu_TRUE@ if test x$(TARGET_APPLE_LINKER) = x1; then $(TARGET_OBJCONV) -f$(TARGET_MODULE_FORMAT) -nr:_grub_mod_init:grub_mod_init -nr:_grub_mod_fini:grub_mod_fini -ed2022 -wd1106 -nu -nd $< $@; elif test ! -z '$(TARGET_OBJ2ELF)'; then $(TARGET_OBJ2ELF) $< $@ || (rm -f $@; exit 1); else cp $< $@; fi - -@COND_i386_pc_TRUE@kernel.img: kernel.exec$(EXEEXT) -@COND_i386_pc_TRUE@ if test x$(TARGET_APPLE_LINKER) = x1; then $(TARGET_STRIP) -S -x $(kernel_exec) -o $@.bin $<; $(TARGET_OBJCONV) -f$(TARGET_MODULE_FORMAT) -nr:_grub_mod_init:grub_mod_init -nr:_grub_mod_fini:grub_mod_fini -ed2022 -ed2016 -wd1106 -nu -nd $@.bin $@; rm -f $@.bin; elif test ! -z '$(TARGET_OBJ2ELF)'; then $(TARGET_STRIP) $(kernel_exec_STRIPFLAGS) -o $@.bin $< && $(TARGET_OBJ2ELF) $@.bin $@ || (rm -f $@; rm -f $@.bin; exit 1); rm -f $@.bin; else $(TARGET_STRIP) $(kernel_exec_STRIPFLAGS) -o $@ $<; fi - -@COND_i386_efi_TRUE@kernel.img: kernel.exec$(EXEEXT) -@COND_i386_efi_TRUE@ if test x$(TARGET_APPLE_LINKER) = x1; then $(TARGET_STRIP) -S -x $(kernel_exec) -o $@.bin $<; $(TARGET_OBJCONV) -f$(TARGET_MODULE_FORMAT) -nr:_grub_mod_init:grub_mod_init -nr:_grub_mod_fini:grub_mod_fini -ed2022 -ed2016 -wd1106 -nu -nd $@.bin $@; rm -f $@.bin; elif test ! -z '$(TARGET_OBJ2ELF)'; then $(TARGET_STRIP) $(kernel_exec_STRIPFLAGS) -o $@.bin $< && $(TARGET_OBJ2ELF) $@.bin $@ || (rm -f $@; rm -f $@.bin; exit 1); rm -f $@.bin; else $(TARGET_STRIP) $(kernel_exec_STRIPFLAGS) -o $@ $<; fi - -@COND_i386_qemu_TRUE@kernel.img: kernel.exec$(EXEEXT) -@COND_i386_qemu_TRUE@ if test x$(TARGET_APPLE_LINKER) = x1; then $(TARGET_STRIP) -S -x $(kernel_exec) -o $@.bin $<; $(TARGET_OBJCONV) -f$(TARGET_MODULE_FORMAT) -nr:_grub_mod_init:grub_mod_init -nr:_grub_mod_fini:grub_mod_fini -ed2022 -ed2016 -wd1106 -nu -nd $@.bin $@; rm -f $@.bin; elif test ! -z '$(TARGET_OBJ2ELF)'; then $(TARGET_STRIP) $(kernel_exec_STRIPFLAGS) -o $@.bin $< && $(TARGET_OBJ2ELF) $@.bin $@ || (rm -f $@; rm -f $@.bin; exit 1); rm -f $@.bin; else $(TARGET_STRIP) $(kernel_exec_STRIPFLAGS) -o $@ $<; fi - -@COND_i386_coreboot_TRUE@kernel.img: kernel.exec$(EXEEXT) -@COND_i386_coreboot_TRUE@ if test x$(TARGET_APPLE_LINKER) = x1; then $(TARGET_STRIP) -S -x $(kernel_exec) -o $@.bin $<; $(TARGET_OBJCONV) -f$(TARGET_MODULE_FORMAT) -nr:_grub_mod_init:grub_mod_init -nr:_grub_mod_fini:grub_mod_fini -ed2022 -ed2016 -wd1106 -nu -nd $@.bin $@; rm -f $@.bin; elif test ! -z '$(TARGET_OBJ2ELF)'; then $(TARGET_STRIP) $(kernel_exec_STRIPFLAGS) -o $@.bin $< && $(TARGET_OBJ2ELF) $@.bin $@ || (rm -f $@; rm -f $@.bin; exit 1); rm -f $@.bin; else $(TARGET_STRIP) $(kernel_exec_STRIPFLAGS) -o $@ $<; fi - -@COND_i386_multiboot_TRUE@kernel.img: kernel.exec$(EXEEXT) -@COND_i386_multiboot_TRUE@ if test x$(TARGET_APPLE_LINKER) = x1; then $(TARGET_STRIP) -S -x $(kernel_exec) -o $@.bin $<; $(TARGET_OBJCONV) -f$(TARGET_MODULE_FORMAT) -nr:_grub_mod_init:grub_mod_init -nr:_grub_mod_fini:grub_mod_fini -ed2022 -ed2016 -wd1106 -nu -nd $@.bin $@; rm -f $@.bin; elif test ! -z '$(TARGET_OBJ2ELF)'; then $(TARGET_STRIP) $(kernel_exec_STRIPFLAGS) -o $@.bin $< && $(TARGET_OBJ2ELF) $@.bin $@ || (rm -f $@; rm -f $@.bin; exit 1); rm -f $@.bin; else $(TARGET_STRIP) $(kernel_exec_STRIPFLAGS) -o $@ $<; fi - -@COND_i386_ieee1275_TRUE@kernel.img: kernel.exec$(EXEEXT) -@COND_i386_ieee1275_TRUE@ if test x$(TARGET_APPLE_LINKER) = x1; then $(TARGET_STRIP) -S -x $(kernel_exec) -o $@.bin $<; $(TARGET_OBJCONV) -f$(TARGET_MODULE_FORMAT) -nr:_grub_mod_init:grub_mod_init -nr:_grub_mod_fini:grub_mod_fini -ed2022 -ed2016 -wd1106 -nu -nd $@.bin $@; rm -f $@.bin; elif test ! -z '$(TARGET_OBJ2ELF)'; then $(TARGET_STRIP) $(kernel_exec_STRIPFLAGS) -o $@.bin $< && $(TARGET_OBJ2ELF) $@.bin $@ || (rm -f $@; rm -f $@.bin; exit 1); rm -f $@.bin; else $(TARGET_STRIP) $(kernel_exec_STRIPFLAGS) -o $@ $<; fi - -@COND_x86_64_efi_TRUE@kernel.img: kernel.exec$(EXEEXT) -@COND_x86_64_efi_TRUE@ if test x$(TARGET_APPLE_LINKER) = x1; then $(TARGET_STRIP) -S -x $(kernel_exec) -o $@.bin $<; $(TARGET_OBJCONV) -f$(TARGET_MODULE_FORMAT) -nr:_grub_mod_init:grub_mod_init -nr:_grub_mod_fini:grub_mod_fini -ed2022 -ed2016 -wd1106 -nu -nd $@.bin $@; rm -f $@.bin; elif test ! -z '$(TARGET_OBJ2ELF)'; then $(TARGET_STRIP) $(kernel_exec_STRIPFLAGS) -o $@.bin $< && $(TARGET_OBJ2ELF) $@.bin $@ || (rm -f $@; rm -f $@.bin; exit 1); rm -f $@.bin; else $(TARGET_STRIP) $(kernel_exec_STRIPFLAGS) -o $@ $<; fi - -@COND_i386_xen_TRUE@kernel.img: kernel.exec$(EXEEXT) -@COND_i386_xen_TRUE@ if test x$(TARGET_APPLE_LINKER) = x1; then $(TARGET_STRIP) -S -x $(kernel_exec) -o $@.bin $<; $(TARGET_OBJCONV) -f$(TARGET_MODULE_FORMAT) -nr:_grub_mod_init:grub_mod_init -nr:_grub_mod_fini:grub_mod_fini -ed2022 -ed2016 -wd1106 -nu -nd $@.bin $@; rm -f $@.bin; elif test ! -z '$(TARGET_OBJ2ELF)'; then $(TARGET_STRIP) $(kernel_exec_STRIPFLAGS) -o $@.bin $< && $(TARGET_OBJ2ELF) $@.bin $@ || (rm -f $@; rm -f $@.bin; exit 1); rm -f $@.bin; else $(TARGET_STRIP) $(kernel_exec_STRIPFLAGS) -o $@ $<; fi - -@COND_x86_64_xen_TRUE@kernel.img: kernel.exec$(EXEEXT) -@COND_x86_64_xen_TRUE@ if test x$(TARGET_APPLE_LINKER) = x1; then $(TARGET_STRIP) -S -x $(kernel_exec) -o $@.bin $<; $(TARGET_OBJCONV) -f$(TARGET_MODULE_FORMAT) -nr:_grub_mod_init:grub_mod_init -nr:_grub_mod_fini:grub_mod_fini -ed2022 -ed2016 -wd1106 -nu -nd $@.bin $@; rm -f $@.bin; elif test ! -z '$(TARGET_OBJ2ELF)'; then $(TARGET_STRIP) $(kernel_exec_STRIPFLAGS) -o $@.bin $< && $(TARGET_OBJ2ELF) $@.bin $@ || (rm -f $@; rm -f $@.bin; exit 1); rm -f $@.bin; else $(TARGET_STRIP) $(kernel_exec_STRIPFLAGS) -o $@ $<; fi - -@COND_i386_xen_pvh_TRUE@kernel.img: kernel.exec$(EXEEXT) -@COND_i386_xen_pvh_TRUE@ if test x$(TARGET_APPLE_LINKER) = x1; then $(TARGET_STRIP) -S -x $(kernel_exec) -o $@.bin $<; $(TARGET_OBJCONV) -f$(TARGET_MODULE_FORMAT) -nr:_grub_mod_init:grub_mod_init -nr:_grub_mod_fini:grub_mod_fini -ed2022 -ed2016 -wd1106 -nu -nd $@.bin $@; rm -f $@.bin; elif test ! -z '$(TARGET_OBJ2ELF)'; then $(TARGET_STRIP) $(kernel_exec_STRIPFLAGS) -o $@.bin $< && $(TARGET_OBJ2ELF) $@.bin $@ || (rm -f $@; rm -f $@.bin; exit 1); rm -f $@.bin; else $(TARGET_STRIP) $(kernel_exec_STRIPFLAGS) -o $@ $<; fi - -@COND_mips_loongson_TRUE@kernel.img: kernel.exec$(EXEEXT) -@COND_mips_loongson_TRUE@ if test x$(TARGET_APPLE_LINKER) = x1; then $(TARGET_STRIP) -S -x $(kernel_exec) -o $@.bin $<; $(TARGET_OBJCONV) -f$(TARGET_MODULE_FORMAT) -nr:_grub_mod_init:grub_mod_init -nr:_grub_mod_fini:grub_mod_fini -ed2022 -ed2016 -wd1106 -nu -nd $@.bin $@; rm -f $@.bin; elif test ! -z '$(TARGET_OBJ2ELF)'; then $(TARGET_STRIP) $(kernel_exec_STRIPFLAGS) -o $@.bin $< && $(TARGET_OBJ2ELF) $@.bin $@ || (rm -f $@; rm -f $@.bin; exit 1); rm -f $@.bin; else $(TARGET_STRIP) $(kernel_exec_STRIPFLAGS) -o $@ $<; fi - -@COND_sparc64_ieee1275_TRUE@kernel.img: kernel.exec$(EXEEXT) -@COND_sparc64_ieee1275_TRUE@ if test x$(TARGET_APPLE_LINKER) = x1; then $(TARGET_STRIP) -S -x $(kernel_exec) -o $@.bin $<; $(TARGET_OBJCONV) -f$(TARGET_MODULE_FORMAT) -nr:_grub_mod_init:grub_mod_init -nr:_grub_mod_fini:grub_mod_fini -ed2022 -ed2016 -wd1106 -nu -nd $@.bin $@; rm -f $@.bin; elif test ! -z '$(TARGET_OBJ2ELF)'; then $(TARGET_STRIP) $(kernel_exec_STRIPFLAGS) -o $@.bin $< && $(TARGET_OBJ2ELF) $@.bin $@ || (rm -f $@; rm -f $@.bin; exit 1); rm -f $@.bin; else $(TARGET_STRIP) $(kernel_exec_STRIPFLAGS) -o $@ $<; fi - -@COND_powerpc_ieee1275_TRUE@kernel.img: kernel.exec$(EXEEXT) -@COND_powerpc_ieee1275_TRUE@ if test x$(TARGET_APPLE_LINKER) = x1; then $(TARGET_STRIP) -S -x $(kernel_exec) -o $@.bin $<; $(TARGET_OBJCONV) -f$(TARGET_MODULE_FORMAT) -nr:_grub_mod_init:grub_mod_init -nr:_grub_mod_fini:grub_mod_fini -ed2022 -ed2016 -wd1106 -nu -nd $@.bin $@; rm -f $@.bin; elif test ! -z '$(TARGET_OBJ2ELF)'; then $(TARGET_STRIP) $(kernel_exec_STRIPFLAGS) -o $@.bin $< && $(TARGET_OBJ2ELF) $@.bin $@ || (rm -f $@; rm -f $@.bin; exit 1); rm -f $@.bin; else $(TARGET_STRIP) $(kernel_exec_STRIPFLAGS) -o $@ $<; fi - -@COND_mips_arc_TRUE@kernel.img: kernel.exec$(EXEEXT) -@COND_mips_arc_TRUE@ if test x$(TARGET_APPLE_LINKER) = x1; then $(TARGET_STRIP) -S -x $(kernel_exec) -o $@.bin $<; $(TARGET_OBJCONV) -f$(TARGET_MODULE_FORMAT) -nr:_grub_mod_init:grub_mod_init -nr:_grub_mod_fini:grub_mod_fini -ed2022 -ed2016 -wd1106 -nu -nd $@.bin $@; rm -f $@.bin; elif test ! -z '$(TARGET_OBJ2ELF)'; then $(TARGET_STRIP) $(kernel_exec_STRIPFLAGS) -o $@.bin $< && $(TARGET_OBJ2ELF) $@.bin $@ || (rm -f $@; rm -f $@.bin; exit 1); rm -f $@.bin; else $(TARGET_STRIP) $(kernel_exec_STRIPFLAGS) -o $@ $<; fi - -@COND_ia64_efi_TRUE@kernel.img: kernel.exec$(EXEEXT) -@COND_ia64_efi_TRUE@ if test x$(TARGET_APPLE_LINKER) = x1; then $(TARGET_STRIP) -S -x $(kernel_exec) -o $@.bin $<; $(TARGET_OBJCONV) -f$(TARGET_MODULE_FORMAT) -nr:_grub_mod_init:grub_mod_init -nr:_grub_mod_fini:grub_mod_fini -ed2022 -ed2016 -wd1106 -nu -nd $@.bin $@; rm -f $@.bin; elif test ! -z '$(TARGET_OBJ2ELF)'; then $(TARGET_STRIP) $(kernel_exec_STRIPFLAGS) -o $@.bin $< && $(TARGET_OBJ2ELF) $@.bin $@ || (rm -f $@; rm -f $@.bin; exit 1); rm -f $@.bin; else $(TARGET_STRIP) $(kernel_exec_STRIPFLAGS) -o $@ $<; fi - -@COND_mips_qemu_mips_TRUE@kernel.img: kernel.exec$(EXEEXT) -@COND_mips_qemu_mips_TRUE@ if test x$(TARGET_APPLE_LINKER) = x1; then $(TARGET_STRIP) -S -x $(kernel_exec) -o $@.bin $<; $(TARGET_OBJCONV) -f$(TARGET_MODULE_FORMAT) -nr:_grub_mod_init:grub_mod_init -nr:_grub_mod_fini:grub_mod_fini -ed2022 -ed2016 -wd1106 -nu -nd $@.bin $@; rm -f $@.bin; elif test ! -z '$(TARGET_OBJ2ELF)'; then $(TARGET_STRIP) $(kernel_exec_STRIPFLAGS) -o $@.bin $< && $(TARGET_OBJ2ELF) $@.bin $@ || (rm -f $@; rm -f $@.bin; exit 1); rm -f $@.bin; else $(TARGET_STRIP) $(kernel_exec_STRIPFLAGS) -o $@ $<; fi - -@COND_arm_uboot_TRUE@kernel.img: kernel.exec$(EXEEXT) -@COND_arm_uboot_TRUE@ if test x$(TARGET_APPLE_LINKER) = x1; then $(TARGET_STRIP) -S -x $(kernel_exec) -o $@.bin $<; $(TARGET_OBJCONV) -f$(TARGET_MODULE_FORMAT) -nr:_grub_mod_init:grub_mod_init -nr:_grub_mod_fini:grub_mod_fini -ed2022 -ed2016 -wd1106 -nu -nd $@.bin $@; rm -f $@.bin; elif test ! -z '$(TARGET_OBJ2ELF)'; then $(TARGET_STRIP) $(kernel_exec_STRIPFLAGS) -o $@.bin $< && $(TARGET_OBJ2ELF) $@.bin $@ || (rm -f $@; rm -f $@.bin; exit 1); rm -f $@.bin; else $(TARGET_STRIP) $(kernel_exec_STRIPFLAGS) -o $@ $<; fi - -@COND_arm_efi_TRUE@kernel.img: kernel.exec$(EXEEXT) -@COND_arm_efi_TRUE@ if test x$(TARGET_APPLE_LINKER) = x1; then $(TARGET_STRIP) -S -x $(kernel_exec) -o $@.bin $<; $(TARGET_OBJCONV) -f$(TARGET_MODULE_FORMAT) -nr:_grub_mod_init:grub_mod_init -nr:_grub_mod_fini:grub_mod_fini -ed2022 -ed2016 -wd1106 -nu -nd $@.bin $@; rm -f $@.bin; elif test ! -z '$(TARGET_OBJ2ELF)'; then $(TARGET_STRIP) $(kernel_exec_STRIPFLAGS) -o $@.bin $< && $(TARGET_OBJ2ELF) $@.bin $@ || (rm -f $@; rm -f $@.bin; exit 1); rm -f $@.bin; else $(TARGET_STRIP) $(kernel_exec_STRIPFLAGS) -o $@ $<; fi - -@COND_arm64_efi_TRUE@kernel.img: kernel.exec$(EXEEXT) -@COND_arm64_efi_TRUE@ if test x$(TARGET_APPLE_LINKER) = x1; then $(TARGET_STRIP) -S -x $(kernel_exec) -o $@.bin $<; $(TARGET_OBJCONV) -f$(TARGET_MODULE_FORMAT) -nr:_grub_mod_init:grub_mod_init -nr:_grub_mod_fini:grub_mod_fini -ed2022 -ed2016 -wd1106 -nu -nd $@.bin $@; rm -f $@.bin; elif test ! -z '$(TARGET_OBJ2ELF)'; then $(TARGET_STRIP) $(kernel_exec_STRIPFLAGS) -o $@.bin $< && $(TARGET_OBJ2ELF) $@.bin $@ || (rm -f $@; rm -f $@.bin; exit 1); rm -f $@.bin; else $(TARGET_STRIP) $(kernel_exec_STRIPFLAGS) -o $@ $<; fi - -@COND_arm_coreboot_TRUE@kernel.img: kernel.exec$(EXEEXT) -@COND_arm_coreboot_TRUE@ if test x$(TARGET_APPLE_LINKER) = x1; then $(TARGET_STRIP) -S -x $(kernel_exec) -o $@.bin $<; $(TARGET_OBJCONV) -f$(TARGET_MODULE_FORMAT) -nr:_grub_mod_init:grub_mod_init -nr:_grub_mod_fini:grub_mod_fini -ed2022 -ed2016 -wd1106 -nu -nd $@.bin $@; rm -f $@.bin; elif test ! -z '$(TARGET_OBJ2ELF)'; then $(TARGET_STRIP) $(kernel_exec_STRIPFLAGS) -o $@.bin $< && $(TARGET_OBJ2ELF) $@.bin $@ || (rm -f $@; rm -f $@.bin; exit 1); rm -f $@.bin; else $(TARGET_STRIP) $(kernel_exec_STRIPFLAGS) -o $@ $<; fi - -@COND_riscv32_efi_TRUE@kernel.img: kernel.exec$(EXEEXT) -@COND_riscv32_efi_TRUE@ if test x$(TARGET_APPLE_LINKER) = x1; then $(TARGET_STRIP) -S -x $(kernel_exec) -o $@.bin $<; $(TARGET_OBJCONV) -f$(TARGET_MODULE_FORMAT) -nr:_grub_mod_init:grub_mod_init -nr:_grub_mod_fini:grub_mod_fini -ed2022 -ed2016 -wd1106 -nu -nd $@.bin $@; rm -f $@.bin; elif test ! -z '$(TARGET_OBJ2ELF)'; then $(TARGET_STRIP) $(kernel_exec_STRIPFLAGS) -o $@.bin $< && $(TARGET_OBJ2ELF) $@.bin $@ || (rm -f $@; rm -f $@.bin; exit 1); rm -f $@.bin; else $(TARGET_STRIP) $(kernel_exec_STRIPFLAGS) -o $@ $<; fi - -@COND_riscv64_efi_TRUE@kernel.img: kernel.exec$(EXEEXT) -@COND_riscv64_efi_TRUE@ if test x$(TARGET_APPLE_LINKER) = x1; then $(TARGET_STRIP) -S -x $(kernel_exec) -o $@.bin $<; $(TARGET_OBJCONV) -f$(TARGET_MODULE_FORMAT) -nr:_grub_mod_init:grub_mod_init -nr:_grub_mod_fini:grub_mod_fini -ed2022 -ed2016 -wd1106 -nu -nd $@.bin $@; rm -f $@.bin; elif test ! -z '$(TARGET_OBJ2ELF)'; then $(TARGET_STRIP) $(kernel_exec_STRIPFLAGS) -o $@.bin $< && $(TARGET_OBJ2ELF) $@.bin $@ || (rm -f $@; rm -f $@.bin; exit 1); rm -f $@.bin; else $(TARGET_STRIP) $(kernel_exec_STRIPFLAGS) -o $@ $<; fi - -@COND_i386_pc_TRUE@boot.img: boot.image$(EXEEXT) -@COND_i386_pc_TRUE@ if test x$(TARGET_APPLE_LINKER) = x1; then $(MACHO2IMG) $< $@; else $(TARGET_OBJCOPY) $(boot_image_OBJCOPYFLAGS) --strip-unneeded -R .note -R .comment -R .note.gnu.build-id -R .MIPS.abiflags -R .reginfo -R .rel.dyn -R .note.gnu.gold-version -R .ARM.exidx $< $@; fi - -@COND_i386_qemu_TRUE@boot.img: boot.image$(EXEEXT) -@COND_i386_qemu_TRUE@ if test x$(TARGET_APPLE_LINKER) = x1; then $(MACHO2IMG) $< $@; else $(TARGET_OBJCOPY) $(boot_image_OBJCOPYFLAGS) --strip-unneeded -R .note -R .comment -R .note.gnu.build-id -R .MIPS.abiflags -R .reginfo -R .rel.dyn -R .note.gnu.gold-version -R .ARM.exidx $< $@; fi - -@COND_sparc64_ieee1275_TRUE@boot.img: boot.image$(EXEEXT) -@COND_sparc64_ieee1275_TRUE@ if test x$(TARGET_APPLE_LINKER) = x1; then $(MACHO2IMG) $< $@; else $(TARGET_OBJCOPY) $(boot_image_OBJCOPYFLAGS) --strip-unneeded -R .note -R .comment -R .note.gnu.build-id -R .MIPS.abiflags -R .reginfo -R .rel.dyn -R .note.gnu.gold-version -R .ARM.exidx $< $@; fi - -@COND_i386_pc_TRUE@boot_hybrid.img: boot_hybrid.image$(EXEEXT) -@COND_i386_pc_TRUE@ if test x$(TARGET_APPLE_LINKER) = x1; then $(MACHO2IMG) $< $@; else $(TARGET_OBJCOPY) $(boot_hybrid_image_OBJCOPYFLAGS) --strip-unneeded -R .note -R .comment -R .note.gnu.build-id -R .MIPS.abiflags -R .reginfo -R .rel.dyn -R .note.gnu.gold-version -R .ARM.exidx $< $@; fi - -@COND_i386_pc_TRUE@cdboot.img: cdboot.image$(EXEEXT) -@COND_i386_pc_TRUE@ if test x$(TARGET_APPLE_LINKER) = x1; then $(MACHO2IMG) $< $@; else $(TARGET_OBJCOPY) $(cdboot_image_OBJCOPYFLAGS) --strip-unneeded -R .note -R .comment -R .note.gnu.build-id -R .MIPS.abiflags -R .reginfo -R .rel.dyn -R .note.gnu.gold-version -R .ARM.exidx $< $@; fi - -@COND_sparc64_ieee1275_TRUE@cdboot.img: cdboot.image$(EXEEXT) -@COND_sparc64_ieee1275_TRUE@ if test x$(TARGET_APPLE_LINKER) = x1; then $(MACHO2IMG) $< $@; else $(TARGET_OBJCOPY) $(cdboot_image_OBJCOPYFLAGS) --strip-unneeded -R .note -R .comment -R .note.gnu.build-id -R .MIPS.abiflags -R .reginfo -R .rel.dyn -R .note.gnu.gold-version -R .ARM.exidx $< $@; fi - -@COND_i386_pc_TRUE@pxeboot.img: pxeboot.image$(EXEEXT) -@COND_i386_pc_TRUE@ if test x$(TARGET_APPLE_LINKER) = x1; then $(MACHO2IMG) $< $@; else $(TARGET_OBJCOPY) $(pxeboot_image_OBJCOPYFLAGS) --strip-unneeded -R .note -R .comment -R .note.gnu.build-id -R .MIPS.abiflags -R .reginfo -R .rel.dyn -R .note.gnu.gold-version -R .ARM.exidx $< $@; fi - -@COND_i386_pc_TRUE@diskboot.img: diskboot.image$(EXEEXT) -@COND_i386_pc_TRUE@ if test x$(TARGET_APPLE_LINKER) = x1; then $(MACHO2IMG) $< $@; else $(TARGET_OBJCOPY) $(diskboot_image_OBJCOPYFLAGS) --strip-unneeded -R .note -R .comment -R .note.gnu.build-id -R .MIPS.abiflags -R .reginfo -R .rel.dyn -R .note.gnu.gold-version -R .ARM.exidx $< $@; fi - -@COND_sparc64_ieee1275_TRUE@diskboot.img: diskboot.image$(EXEEXT) -@COND_sparc64_ieee1275_TRUE@ if test x$(TARGET_APPLE_LINKER) = x1; then $(MACHO2IMG) $< $@; else $(TARGET_OBJCOPY) $(diskboot_image_OBJCOPYFLAGS) --strip-unneeded -R .note -R .comment -R .note.gnu.build-id -R .MIPS.abiflags -R .reginfo -R .rel.dyn -R .note.gnu.gold-version -R .ARM.exidx $< $@; fi - -@COND_i386_pc_TRUE@lnxboot.img: lnxboot.image$(EXEEXT) -@COND_i386_pc_TRUE@ if test x$(TARGET_APPLE_LINKER) = x1; then $(MACHO2IMG) $< $@; else $(TARGET_OBJCOPY) $(lnxboot_image_OBJCOPYFLAGS) --strip-unneeded -R .note -R .comment -R .note.gnu.build-id -R .MIPS.abiflags -R .reginfo -R .rel.dyn -R .note.gnu.gold-version -R .ARM.exidx $< $@; fi - -@COND_mips_loongson_TRUE@xz_decompress.img: xz_decompress.image$(EXEEXT) -@COND_mips_loongson_TRUE@ if test x$(TARGET_APPLE_LINKER) = x1; then $(MACHO2IMG) $< $@; else $(TARGET_OBJCOPY) $(xz_decompress_image_OBJCOPYFLAGS) --strip-unneeded -R .note -R .comment -R .note.gnu.build-id -R .MIPS.abiflags -R .reginfo -R .rel.dyn -R .note.gnu.gold-version -R .ARM.exidx $< $@; fi - -@COND_mips_arc_TRUE@xz_decompress.img: xz_decompress.image$(EXEEXT) -@COND_mips_arc_TRUE@ if test x$(TARGET_APPLE_LINKER) = x1; then $(MACHO2IMG) $< $@; else $(TARGET_OBJCOPY) $(xz_decompress_image_OBJCOPYFLAGS) --strip-unneeded -R .note -R .comment -R .note.gnu.build-id -R .MIPS.abiflags -R .reginfo -R .rel.dyn -R .note.gnu.gold-version -R .ARM.exidx $< $@; fi - -@COND_mips_qemu_mips_TRUE@xz_decompress.img: xz_decompress.image$(EXEEXT) -@COND_mips_qemu_mips_TRUE@ if test x$(TARGET_APPLE_LINKER) = x1; then $(MACHO2IMG) $< $@; else $(TARGET_OBJCOPY) $(xz_decompress_image_OBJCOPYFLAGS) --strip-unneeded -R .note -R .comment -R .note.gnu.build-id -R .MIPS.abiflags -R .reginfo -R .rel.dyn -R .note.gnu.gold-version -R .ARM.exidx $< $@; fi - -@COND_mips_loongson_TRUE@none_decompress.img: none_decompress.image$(EXEEXT) -@COND_mips_loongson_TRUE@ if test x$(TARGET_APPLE_LINKER) = x1; then $(MACHO2IMG) $< $@; else $(TARGET_OBJCOPY) $(none_decompress_image_OBJCOPYFLAGS) --strip-unneeded -R .note -R .comment -R .note.gnu.build-id -R .MIPS.abiflags -R .reginfo -R .rel.dyn -R .note.gnu.gold-version -R .ARM.exidx $< $@; fi - -@COND_mips_arc_TRUE@none_decompress.img: none_decompress.image$(EXEEXT) -@COND_mips_arc_TRUE@ if test x$(TARGET_APPLE_LINKER) = x1; then $(MACHO2IMG) $< $@; else $(TARGET_OBJCOPY) $(none_decompress_image_OBJCOPYFLAGS) --strip-unneeded -R .note -R .comment -R .note.gnu.build-id -R .MIPS.abiflags -R .reginfo -R .rel.dyn -R .note.gnu.gold-version -R .ARM.exidx $< $@; fi - -@COND_mips_qemu_mips_TRUE@none_decompress.img: none_decompress.image$(EXEEXT) -@COND_mips_qemu_mips_TRUE@ if test x$(TARGET_APPLE_LINKER) = x1; then $(MACHO2IMG) $< $@; else $(TARGET_OBJCOPY) $(none_decompress_image_OBJCOPYFLAGS) --strip-unneeded -R .note -R .comment -R .note.gnu.build-id -R .MIPS.abiflags -R .reginfo -R .rel.dyn -R .note.gnu.gold-version -R .ARM.exidx $< $@; fi - -@COND_i386_pc_TRUE@lzma_decompress.img: lzma_decompress.image$(EXEEXT) -@COND_i386_pc_TRUE@ if test x$(TARGET_APPLE_LINKER) = x1; then $(MACHO2IMG) $< $@; else $(TARGET_OBJCOPY) $(lzma_decompress_image_OBJCOPYFLAGS) --strip-unneeded -R .note -R .comment -R .note.gnu.build-id -R .MIPS.abiflags -R .reginfo -R .rel.dyn -R .note.gnu.gold-version -R .ARM.exidx $< $@; fi - -@COND_mips_loongson_TRUE@fwstart.img: fwstart.image$(EXEEXT) -@COND_mips_loongson_TRUE@ if test x$(TARGET_APPLE_LINKER) = x1; then $(MACHO2IMG) $< $@; else $(TARGET_OBJCOPY) $(fwstart_image_OBJCOPYFLAGS) --strip-unneeded -R .note -R .comment -R .note.gnu.build-id -R .MIPS.abiflags -R .reginfo -R .rel.dyn -R .note.gnu.gold-version -R .ARM.exidx $< $@; fi - -@COND_mips_loongson_TRUE@fwstart_fuloong2f.img: fwstart_fuloong2f.image$(EXEEXT) -@COND_mips_loongson_TRUE@ if test x$(TARGET_APPLE_LINKER) = x1; then $(MACHO2IMG) $< $@; else $(TARGET_OBJCOPY) $(fwstart_fuloong2f_image_OBJCOPYFLAGS) --strip-unneeded -R .note -R .comment -R .note.gnu.build-id -R .MIPS.abiflags -R .reginfo -R .rel.dyn -R .note.gnu.gold-version -R .ARM.exidx $< $@; fi - -@COND_MAN_PAGES_TRUE@@COND_emu_TRUE@grub-emu.1: grub-emu -@COND_MAN_PAGES_TRUE@@COND_emu_TRUE@ chmod a+x grub-emu -@COND_MAN_PAGES_TRUE@@COND_emu_TRUE@ PATH=$(builddir):$$PATH pkgdatadir=$(builddir) $(HELP2MAN) --section=1 -i $(top_srcdir)/docs/man/grub-emu.h2m -o $@ grub-emu - -gensyminfo.sh: $(top_builddir)/config.status gensyminfo.sh.in - (for x in gensyminfo.sh.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x gensyminfo.sh - -genmod.sh: $(top_builddir)/config.status genmod.sh.in - (for x in genmod.sh.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x genmod.sh - -modinfo.sh: $(top_builddir)/config.status modinfo.sh.in - (for x in modinfo.sh.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x modinfo.sh - -gmodule.pl: $(top_builddir)/config.status gmodule.pl.in - (for x in gmodule.pl.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x gmodule.pl - -gdb_grub: $(top_builddir)/config.status gdb_grub.in - (for x in gdb_grub.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- - chmod a+x gdb_grub - -@COND_powerpc_ieee1275_TRUE@grub.chrp: $(top_builddir)/config.status boot/powerpc/grub.chrp.in -@COND_powerpc_ieee1275_TRUE@ (for x in boot/powerpc/grub.chrp.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- -@COND_powerpc_ieee1275_TRUE@ chmod a+x grub.chrp - -@COND_powerpc_ieee1275_TRUE@bootinfo.txt: $(top_builddir)/config.status boot/powerpc/bootinfo.txt.in -@COND_powerpc_ieee1275_TRUE@ (for x in boot/powerpc/bootinfo.txt.in ; do cat $(srcdir)/"$$x"; done) | $(top_builddir)/config.status --file=$@:- -@COND_powerpc_ieee1275_TRUE@ chmod a+x bootinfo.txt - -symlist.h: $(top_builddir)/config.h $(KERNEL_HEADER_FILES) - @list='$^'; \ - for p in $$list; do \ - echo "#include <$$p>" >> $@ || (rm -f $@; exit 1); \ - done - -symlist.c: symlist.h gensymlist.sh - $(TARGET_CPP) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS_KERNEL) $(CPPFLAGS) -DGRUB_SYMBOL_GENERATOR=1 symlist.h > symlist.p || (rm -f symlist.p; exit 1) - cat symlist.p | $(SHELL) $(srcdir)/gensymlist.sh $(top_builddir)/config.h $(KERNEL_HEADER_FILES) >$@ || (rm -f $@; exit 1) - rm -f symlist.p - -kernel_syms.lst: $(KERNEL_HEADER_FILES) $(top_builddir)/config.h - $(TARGET_CPP) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS_KERNEL) $(CPPFLAGS) $(CFLAGS) -DGRUB_SYMBOL_GENERATOR=1 $^ >kernel_syms.input - cat kernel_syms.input | grep -v '^#' | sed -n \ - -e '/EXPORT_FUNC *([a-zA-Z0-9_]*)/{s/.*EXPORT_FUNC *(\([a-zA-Z0-9_]*\)).*/defined kernel '"$(ASM_PREFIX)"'\1/;p;}' \ - -e '/EXPORT_VAR *([a-zA-Z0-9_]*)/{s/.*EXPORT_VAR *(\([a-zA-Z0-9_]*\)).*/defined kernel '"$(ASM_PREFIX)"'\1/;p;}' \ - | sort -u >$@ - rm -f kernel_syms.input - -@COND_emu_TRUE@kern/emu/grub_emu-main.$(OBJEXT):grub_emu_init.h -@COND_emu_TRUE@grub_emu-grub_emu_init.$(OBJEXT):grub_emu_init.h -@COND_emu_TRUE@kern/emu/grub_emu_dyn-main.$(OBJEXT):grub_emu_init.h -@COND_emu_TRUE@grub_emu_dyn-grub_emu_init.$(OBJEXT):grub_emu_init.h - -@COND_emu_TRUE@grub_emu_init.h: genemuinitheader.sh $(MODULE_FILES) -@COND_emu_TRUE@ rm -f $@; echo $(MODULE_FILES) | sh $(srcdir)/genemuinitheader.sh $(TARGET_NM) > $@ - -@COND_emu_TRUE@grub_emu_init.c: grub_emu_init.h genemuinit.sh $(MODULE_FILES) -@COND_emu_TRUE@ rm -f $@; echo $(MODULE_FILES) | sh $(srcdir)/genemuinit.sh $(TARGET_NM) > $@ - -# List files - -fs.lst: $(MARKER_FILES) - (for pp in $^; do \ - b=`basename $$pp .marker`; \ - if grep 'FS_LIST_MARKER' $$pp >/dev/null 2>&1; then \ - echo $$b; \ - fi; \ - done) | sort -u > $@ - -command.lst: $(MARKER_FILES) - (for pp in $^; do \ - b=`basename $$pp .marker`; \ - sed -n \ - -e "/EXTCOMMAND_LIST_MARKER *( *\"/{s/.*( *\"\([^\"]*\)\".*/*\1: $$b/;p;}" \ - -e "/P1COMMAND_LIST_MARKER *( *\"/{s/.*( *\"\([^\"]*\)\".*/*\1: $$b/;p;}" \ - -e "/COMMAND_LIST_MARKER *( *\"/{s/.*( *\"\([^\"]*\)\".*/\1: $$b/;p;}" $$pp; \ - done) | sort -u > $@ - -partmap.lst: $(MARKER_FILES) - (for pp in $^; do \ - b=`basename $$pp .marker`; \ - if grep 'PARTMAP_LIST_MARKER' $$pp >/dev/null 2>&1; then \ - echo $$b; \ - fi; \ - done) | sort -u > $@ - -terminal.lst: $(MARKER_FILES) - (for pp in $^; do \ - b=`basename $$pp .marker`; \ - sed -n \ - -e "/INPUT_TERMINAL_LIST_MARKER *( *\"/{s/.*( *\"\([^\"]*\)\".*/i\1: $$b/;p;}" \ - -e "/OUTPUT_TERMINAL_LIST_MARKER *( *\"/{s/.*( *\"\([^\"]*\)\".*/o\1: $$b/;p;}" $$pp; \ - done) | sort -u > $@ - -fdt.lst: $(MARKER_FILES) - (for pp in $^; do \ - b=`basename $$pp .marker`; \ - sed -n \ - -e "/FDT_DRIVER_LIST_MARKER *( *\"/{s/.*( *\"\([^\"]*\)\".*/i\1: $$b/;p;}" \ - -e "/FDT_DRIVER_LIST_MARKER *( *\"/{s/.*( *\"\([^\"]*\)\".*/o\1: $$b/;p;}" $$pp; \ - done) | sort -u > $@ - -parttool.lst: $(MARKER_FILES) - (for pp in $^; do \ - b=`basename $$pp .marker`; \ - sed -n \ - -e "/PARTTOOL_LIST_MARKER *( *\"/{s/.*( *\"\([^\"]*\)\".*/\1: $$b/;p;}" $$pp; \ - done) | sort -u > $@ - -video.lst: $(MARKER_FILES) - (for pp in $^; do \ - b=`basename $$pp .marker`; \ - if grep 'VIDEO_LIST_MARKER' $$pp >/dev/null 2>&1; then \ - echo $$b; \ - fi; \ - done) | sort -u > $@ - -# but, crypto.lst is simply copied -crypto.lst: $(srcdir)/lib/libgcrypt-grub/cipher/crypto.lst - cp $^ $@ - -syminfo.lst: gensyminfo.sh kernel_syms.lst $(MODULE_FILES) - cat kernel_syms.lst > $@.new - for m in $(MODULE_FILES); do \ - sh $< $$m >> $@.new || exit 1; \ - done - mv $@.new $@ - -# generate global module dependencies list -moddep.lst: syminfo.lst genmoddep.awk video.lst - cat $< | sort | $(AWK) -f $(srcdir)/genmoddep.awk > $@ || (rm -f $@; exit 1) - -$(MOD_FILES): %.mod : genmod.sh moddep.lst %.module$(EXEEXT) build-grub-module-verifier$(BUILD_EXEEXT) - TARGET_OBJ2ELF=@TARGET_OBJ2ELF@ sh $^ $@ - -@COND_ENABLE_EFIEMU_TRUE@efiemu32.o: efiemu/runtime/efiemu.c $(TARGET_OBJ2ELF) -@COND_ENABLE_EFIEMU_TRUE@ -rm -f $@ -@COND_ENABLE_EFIEMU_TRUE@ -rm -f $@.bin -@COND_ENABLE_EFIEMU_TRUE@ $(TARGET_CC) $(DEFS) $(INCLUDES) $(CPPFLAGS_EFIEMU) $(CPPFLAGS_DEFAULT) -m32 -Wall -Werror -nostdlib -static -O2 -c -o $@.bin $< -@COND_ENABLE_EFIEMU_TRUE@ if test "x$(TARGET_APPLE_LINKER)" = x1; then \ -@COND_ENABLE_EFIEMU_TRUE@ $(TARGET_OBJCONV) -felf32 -nu -nd $@.bin $@ || exit 1; \ -@COND_ENABLE_EFIEMU_TRUE@ rm -f $@.bin ; \ -@COND_ENABLE_EFIEMU_TRUE@ elif test ! -z "$(TARGET_OBJ2ELF)"; then \ -@COND_ENABLE_EFIEMU_TRUE@ $(TARGET_OBJ2ELF) $@.bin || (rm -f $@.bin; exit 1); \ -@COND_ENABLE_EFIEMU_TRUE@ mv $@.bin $@ ; \ -@COND_ENABLE_EFIEMU_TRUE@ else \ -@COND_ENABLE_EFIEMU_TRUE@ mv $@.bin $@ ; \ -@COND_ENABLE_EFIEMU_TRUE@ fi - -# Link format -arch,x86_64 means Apple linker -@COND_ENABLE_EFIEMU_TRUE@efiemu64_c.o: efiemu/runtime/efiemu.c -@COND_ENABLE_EFIEMU_TRUE@ $(TARGET_CC) $(DEFS) $(INCLUDES) $(CPPFLAGS_EFIEMU) $(CPPFLAGS_DEFAULT) -m64 -nostdlib -Wall -Werror -O2 -mcmodel=large -mno-red-zone -c -o $@ $< - -@COND_ENABLE_EFIEMU_TRUE@efiemu64_s.o: efiemu/runtime/efiemu.S -@COND_ENABLE_EFIEMU_TRUE@ $(TARGET_CC) $(DEFS) $(INCLUDES) $(CPPFLAGS_EFIEMU) $(CPPFLAGS_DEFAULT) -m64 -Wall -Werror -nostdlib -O2 -mcmodel=large -mno-red-zone -c -o $@ $< - -@COND_ENABLE_EFIEMU_TRUE@efiemu64.o: efiemu64_c.o efiemu64_s.o $(TARGET_OBJ2ELEF) -@COND_ENABLE_EFIEMU_TRUE@ -rm -f $@ -@COND_ENABLE_EFIEMU_TRUE@ -rm -f $@.bin -@COND_ENABLE_EFIEMU_TRUE@ $(TARGET_CC) -m64 $(EFIEMU64_LINK_FORMAT) -nostdlib -static -Wl,-r -o $@.bin $^ -@COND_ENABLE_EFIEMU_TRUE@ if test "x$(EFIEMU64_LINK_FORMAT)" = x-arch,x86_64; then \ -@COND_ENABLE_EFIEMU_TRUE@ $(TARGET_OBJCONV) -felf64 -nu -nd $@.bin $@ || exit 1; \ -@COND_ENABLE_EFIEMU_TRUE@ rm -f $@.bin; \ -@COND_ENABLE_EFIEMU_TRUE@ else \ -@COND_ENABLE_EFIEMU_TRUE@ mv $@.bin $@ ; \ -@COND_ENABLE_EFIEMU_TRUE@ fi -windowsdir: $(PROGRAMS) $(starfield_DATA) $(platform_DATA) - test -d $(windowsdir)/$(target_cpu)-$(platform) || mkdir $(windowsdir)/$(target_cpu)-$(platform) - for x in $(platform_DATA); do \ - cp -fp $$x $(windowsdir)/$(target_cpu)-$(platform)/$$x; \ - done - -# Tell versions [3.59,3.63) of GNU make to not export all variables. -# Otherwise a system limit (for SysV at least) may be exceeded. -.NOEXPORT: diff --git a/thirdparty/grub-2.04/grub-core/boot/decompressor/minilib.c b/thirdparty/grub-2.04/grub-core/boot/decompressor/minilib.c deleted file mode 100644 index fc46ee07b..000000000 --- a/thirdparty/grub-2.04/grub-core/boot/decompressor/minilib.c +++ /dev/null @@ -1,93 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2010 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include - -void * -grub_memset (void *s, int c, grub_size_t len) -{ - grub_uint8_t *ptr; - for (ptr = s; len; ptr++, len--) - *ptr = c; - return s; -} - -void * -grub_memmove (void *dest, const void *src, grub_size_t n) -{ - char *d = (char *) dest; - const char *s = (const char *) src; - - if (d < s) - while (n--) - *d++ = *s++; - else - { - d += n; - s += n; - - while (n--) - *--d = *--s; - } - - return dest; -} - -int -grub_memcmp (const void *s1, const void *s2, grub_size_t n) -{ - const unsigned char *t1 = s1; - const unsigned char *t2 = s2; - - while (n--) - { - if (*t1 != *t2) - return (int) *t1 - (int) *t2; - - t1++; - t2++; - } - - return 0; -} - -void *grub_decompressor_scratch; - -void -find_scratch (void *src, void *dst, unsigned long srcsize, - unsigned long dstsize) -{ -#ifdef _mips - /* Decoding from ROM. */ - if (((grub_addr_t) src & 0x10000000)) - { - grub_decompressor_scratch = (void *) ALIGN_UP((grub_addr_t) dst + dstsize, - 256); - return; - } -#endif - if ((char *) src + srcsize > (char *) dst + dstsize) - grub_decompressor_scratch = (void *) ALIGN_UP ((grub_addr_t) src + srcsize, - 256); - else - grub_decompressor_scratch = (void *) ALIGN_UP ((grub_addr_t) dst + dstsize, - 256); - return; -} diff --git a/thirdparty/grub-2.04/grub-core/boot/decompressor/none.c b/thirdparty/grub-2.04/grub-core/boot/decompressor/none.c deleted file mode 100644 index 911e861e3..000000000 --- a/thirdparty/grub-2.04/grub-core/boot/decompressor/none.c +++ /dev/null @@ -1,42 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2010 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include - -void -grub_decompress_core (void *src, void *dest, unsigned long n, - unsigned long dstsize __attribute__ ((unused))) -{ - char *d = (char *) dest; - const char *s = (const char *) src; - - if (d == s) - return; - - if (d < s) - while (n--) - *d++ = *s++; - else - { - d += n; - s += n; - - while (n--) - *--d = *--s; - } -} diff --git a/thirdparty/grub-2.04/grub-core/boot/decompressor/xz.c b/thirdparty/grub-2.04/grub-core/boot/decompressor/xz.c deleted file mode 100644 index 2279118e1..000000000 --- a/thirdparty/grub-2.04/grub-core/boot/decompressor/xz.c +++ /dev/null @@ -1,60 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2010 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include - -#include "xz.h" -#include "xz_stream.h" - -void -grub_decompress_core (void *src, void *dst, unsigned long srcsize, - unsigned long dstsize) -{ - struct xz_dec *dec; - struct xz_buf buf; - - find_scratch (src, dst, srcsize, dstsize); - - dec = xz_dec_init (GRUB_DECOMPRESSOR_DICT_SIZE); - - buf.in = src; - buf.in_pos = 0; - buf.in_size = srcsize; - buf.out = dst; - buf.out_pos = 0; - buf.out_size = dstsize; - - while (buf.in_pos != buf.in_size) - { - enum xz_ret xzret; - xzret = xz_dec_run (dec, &buf); - switch (xzret) - { - case XZ_MEMLIMIT_ERROR: - case XZ_FORMAT_ERROR: - case XZ_OPTIONS_ERROR: - case XZ_DATA_ERROR: - case XZ_BUF_ERROR: - return; - default: - break; - } - } -} diff --git a/thirdparty/grub-2.04/grub-core/boot/i386/pc/boot.S b/thirdparty/grub-2.04/grub-core/boot/i386/pc/boot.S deleted file mode 100644 index 2bd0b2d28..000000000 --- a/thirdparty/grub-2.04/grub-core/boot/i386/pc/boot.S +++ /dev/null @@ -1,542 +0,0 @@ -/* -*-Asm-*- */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 1999,2000,2001,2002,2005,2006,2007,2008,2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include - -/* - * defines for the code go here - */ - - /* Print message string */ -#define MSG(x) movw $x, %si; call LOCAL(message) -#define ERR(x) movw $x, %si; jmp LOCAL(error_message) - - .macro floppy -part_start: - -LOCAL(probe_values): - .byte 36, 18, 15, 9, 0 - -LOCAL(floppy_probe): - pushw %dx -/* - * Perform floppy probe. - */ -#ifdef __APPLE__ - LOCAL(probe_values_minus_one) = LOCAL(probe_values) - 1 - movw MACRO_DOLLAR(LOCAL(probe_values_minus_one)), %si -#else - movw MACRO_DOLLAR(LOCAL(probe_values)) - 1, %si -#endif - -LOCAL(probe_loop): - /* reset floppy controller INT 13h AH=0 */ - xorw %ax, %ax - int MACRO_DOLLAR(0x13) - - incw %si - movb (%si), %cl - - /* if number of sectors is 0, display error and die */ - testb %cl, %cl - jnz 1f - -/* - * Floppy disk probe failure. - */ - MSG(fd_probe_error_string) - jmp LOCAL(general_error) - -/* "Floppy" */ -fd_probe_error_string: .asciz "Floppy" - -1: - /* perform read */ - movw MACRO_DOLLAR(GRUB_BOOT_MACHINE_BUFFER_SEG), %bx - movw %bx, %es - xorw %bx, %bx - movw MACRO_DOLLAR(0x201), %ax - movb MACRO_DOLLAR(0), %ch - movb MACRO_DOLLAR(0), %dh - int MACRO_DOLLAR(0x13) - - /* if error, jump to "LOCAL(probe_loop)" */ - jc LOCAL(probe_loop) - - /* %cl is already the correct value! */ - movb MACRO_DOLLAR(1), %dh - movb MACRO_DOLLAR(79), %ch - - jmp LOCAL(final_init) - .endm - - .macro scratch - - /* scratch space */ -mode: - .byte 0 -disk_address_packet: -sectors: - .long 0 -heads: - .long 0 -cylinders: - .word 0 -sector_start: - .byte 0 -head_start: - .byte 0 -cylinder_start: - .word 0 - /* more space... */ - .endm - - .file "boot.S" - - .text - - /* Tell GAS to generate 16-bit instructions so that this code works - in real mode. */ - .code16 - -.globl _start, start; -_start: -start: - /* - * _start is loaded at 0x7c00 and is jumped to with CS:IP 0:0x7c00 - */ - - /* - * Beginning of the sector is compatible with the FAT/HPFS BIOS - * parameter block. - */ - - jmp LOCAL(after_BPB) - nop /* do I care about this ??? */ - -#ifdef HYBRID_BOOT - nop - nop - nop - nop - nop - nop - nop - nop - nop - nop - nop - nop - nop - - nop - nop - nop - nop - nop - nop - nop - nop - - nop - nop - jmp LOCAL(after_BPB) -#else - /* - * This space is for the BIOS parameter block!!!! Don't change - * the first jump, nor start the code anywhere but right after - * this area. - */ - - .org GRUB_BOOT_MACHINE_BPB_START - .org 4 -#endif -#ifdef HYBRID_BOOT - floppy -#else - scratch -#endif - - .org GRUB_BOOT_MACHINE_BPB_END - /* - * End of BIOS parameter block. - */ - -LOCAL(kernel_address): - .word GRUB_BOOT_MACHINE_KERNEL_ADDR - -#ifndef HYBRID_BOOT - .org GRUB_BOOT_MACHINE_KERNEL_SECTOR -LOCAL(kernel_sector): - .long 1 -LOCAL(kernel_sector_high): - .long 0 -#endif - - .org GRUB_BOOT_MACHINE_BOOT_DRIVE -boot_drive: - .byte 0xff /* the disk to load kernel from */ - /* 0xff means use the boot drive */ - -LOCAL(after_BPB): - -/* general setup */ - cli /* we're not safe here! */ - - /* - * This is a workaround for buggy BIOSes which don't pass boot - * drive correctly. If GRUB is installed into a HDD, check if - * DL is masked correctly. If not, assume that the BIOS passed - * a bogus value and set DL to 0x80, since this is the only - * possible boot drive. If GRUB is installed into a floppy, - * this does nothing (only jump). - */ - .org GRUB_BOOT_MACHINE_DRIVE_CHECK -boot_drive_check: - jmp 3f /* grub-setup may overwrite this jump */ - testb $0x80, %dl - jz 2f -3: - /* Ignore %dl different from 0-0x0f and 0x80-0x8f. */ - testb $0x70, %dl - jz 1f -2: - movb $0x80, %dl -1: - /* - * ljmp to the next instruction because some bogus BIOSes - * jump to 07C0:0000 instead of 0000:7C00. - */ - ljmp $0, $real_start - -real_start: - - /* set up %ds and %ss as offset from 0 */ - xorw %ax, %ax - movw %ax, %ds - movw %ax, %ss - - /* set up the REAL stack */ - movw $GRUB_BOOT_MACHINE_STACK_SEG, %sp - - sti /* we're safe again */ - - /* - * Check if we have a forced disk reference here - */ - movb boot_drive, %al - cmpb $0xff, %al - je 1f - movb %al, %dl -1: - /* save drive reference first thing! */ - pushw %dx - - /* print a notification message on the screen */ - MSG(notification_string) - - /* set %si to the disk address packet */ - movw $disk_address_packet, %si - - /* check if LBA is supported */ - movb $0x41, %ah - movw $0x55aa, %bx - int $0x13 - - /* - * %dl may have been clobbered by INT 13, AH=41H. - * This happens, for example, with AST BIOS 1.04. - */ - popw %dx - pushw %dx - - /* use CHS if fails */ - jc LOCAL(chs_mode) - cmpw $0xaa55, %bx - jne LOCAL(chs_mode) - - andw $1, %cx - jz LOCAL(chs_mode) - -LOCAL(lba_mode): - xorw %ax, %ax - movw %ax, 4(%si) - - incw %ax - /* set the mode to non-zero */ - movb %al, -1(%si) - - /* the blocks */ - movw %ax, 2(%si) - - /* the size and the reserved byte */ - movw $0x0010, (%si) - - /* the absolute address */ - movl LOCAL(kernel_sector), %ebx - movl %ebx, 8(%si) - movl LOCAL(kernel_sector_high), %ebx - movl %ebx, 12(%si) - - /* the segment of buffer address */ - movw $GRUB_BOOT_MACHINE_BUFFER_SEG, 6(%si) - -/* - * BIOS call "INT 0x13 Function 0x42" to read sectors from disk into memory - * Call with %ah = 0x42 - * %dl = drive number - * %ds:%si = segment:offset of disk address packet - * Return: - * %al = 0x0 on success; err code on failure - */ - - movb $0x42, %ah - int $0x13 - - /* LBA read is not supported, so fallback to CHS. */ - jc LOCAL(chs_mode) - - movw $GRUB_BOOT_MACHINE_BUFFER_SEG, %bx - jmp LOCAL(copy_buffer) - -LOCAL(chs_mode): - /* - * Determine the hard disk geometry from the BIOS! - * We do this first, so that LS-120 IDE floppies work correctly. - */ - movb $8, %ah - int $0x13 - jnc LOCAL(final_init) - - popw %dx - /* - * The call failed, so maybe use the floppy probe instead. - */ - testb %dl, %dl - jnb LOCAL(floppy_probe) - - /* Nope, we definitely have a hard disk, and we're screwed. */ - ERR(hd_probe_error_string) - -LOCAL(final_init): - /* set the mode to zero */ - movzbl %dh, %eax - movb %ah, -1(%si) - - /* save number of heads */ - incw %ax - movl %eax, 4(%si) - - movzbw %cl, %dx - shlw $2, %dx - movb %ch, %al - movb %dh, %ah - - /* save number of cylinders */ - incw %ax - movw %ax, 8(%si) - - movzbw %dl, %ax - shrb $2, %al - - /* save number of sectors */ - movl %eax, (%si) - -setup_sectors: - /* load logical sector start (top half) */ - movl LOCAL(kernel_sector_high), %eax - - orl %eax, %eax - jnz LOCAL(geometry_error) - - /* load logical sector start (bottom half) */ - movl LOCAL(kernel_sector), %eax - - /* zero %edx */ - xorl %edx, %edx - - /* divide by number of sectors */ - divl (%si) - - /* save sector start */ - movb %dl, %cl - - xorw %dx, %dx /* zero %edx */ - divl 4(%si) /* divide by number of heads */ - - /* do we need too many cylinders? */ - cmpw 8(%si), %ax - jge LOCAL(geometry_error) - - /* normalize sector start (1-based) */ - incb %cl - - /* low bits of cylinder start */ - movb %al, %ch - - /* high bits of cylinder start */ - xorb %al, %al - shrw $2, %ax - orb %al, %cl - - /* save head start */ - movb %dl, %al - - /* restore %dl */ - popw %dx - - /* head start */ - movb %al, %dh - -/* - * BIOS call "INT 0x13 Function 0x2" to read sectors from disk into memory - * Call with %ah = 0x2 - * %al = number of sectors - * %ch = cylinder - * %cl = sector (bits 6-7 are high bits of "cylinder") - * %dh = head - * %dl = drive (0x80 for hard disk, 0x0 for floppy disk) - * %es:%bx = segment:offset of buffer - * Return: - * %al = 0x0 on success; err code on failure - */ - - movw $GRUB_BOOT_MACHINE_BUFFER_SEG, %bx - movw %bx, %es /* load %es segment with disk buffer */ - - xorw %bx, %bx /* %bx = 0, put it at 0 in the segment */ - movw $0x0201, %ax /* function 2 */ - int $0x13 - - jc LOCAL(read_error) - - movw %es, %bx - -LOCAL(copy_buffer): - /* - * We need to save %cx and %si because the startup code in - * kernel uses them without initializing them. - */ - pusha - pushw %ds - - movw $0x100, %cx - movw %bx, %ds - xorw %si, %si - movw $GRUB_BOOT_MACHINE_KERNEL_ADDR, %di - movw %si, %es - - cld - - rep - movsw - - popw %ds - popa - - /* boot kernel */ - jmp *(LOCAL(kernel_address)) - -/* END OF MAIN LOOP */ - -/* - * BIOS Geometry translation error (past the end of the disk geometry!). - */ -LOCAL(geometry_error): - ERR(geometry_error_string) - -/* - * Read error on the disk. - */ -LOCAL(read_error): - movw $read_error_string, %si -LOCAL(error_message): - call LOCAL(message) -LOCAL(general_error): - MSG(general_error_string) - -/* go here when you need to stop the machine hard after an error condition */ - /* tell the BIOS a boot failure, which may result in no effect */ - int $0x18 -LOCAL(stop): - jmp LOCAL(stop) - -notification_string: .asciz "GRUB " -geometry_error_string: .asciz "Geom" -hd_probe_error_string: .asciz "Hard Disk" -read_error_string: .asciz "Read" -general_error_string: .asciz " Error\r\n" - -/* - * message: write the string pointed to by %si - * - * WARNING: trashes %si, %ax, and %bx - */ - - /* - * Use BIOS "int 10H Function 0Eh" to write character in teletype mode - * %ah = 0xe %al = character - * %bh = page %bl = foreground color (graphics modes) - */ -1: - movw $0x0001, %bx - movb $0xe, %ah - int $0x10 /* display a byte */ -LOCAL(message): - lodsb - cmpb $0, %al - jne 1b /* if not end of string, jmp to display */ - ret - - /* - * Windows NT breaks compatibility by embedding a magic - * number here. - */ - -#ifdef HYBRID_BOOT - .org 0x1b0 -LOCAL(kernel_sector): - .long 1 -LOCAL(kernel_sector_high): - .long 0 -#endif - .org GRUB_BOOT_MACHINE_WINDOWS_NT_MAGIC -nt_magic: - .long 0 - .word 0 - - /* - * This is where an MBR would go if on a hard disk. The code - * here isn't even referenced unless we're on a floppy. Kinda - * sneaky, huh? - */ - - .org GRUB_BOOT_MACHINE_PART_START - -#ifndef HYBRID_BOOT - floppy -#else - scratch -#endif - - .org GRUB_BOOT_MACHINE_PART_END - -/* the last 2 bytes in the sector 0 contain the signature */ - .word GRUB_BOOT_MACHINE_SIGNATURE diff --git a/thirdparty/grub-2.04/grub-core/boot/i386/pc/cdboot.S b/thirdparty/grub-2.04/grub-core/boot/i386/pc/cdboot.S deleted file mode 100644 index de4f80929..000000000 --- a/thirdparty/grub-2.04/grub-core/boot/i386/pc/cdboot.S +++ /dev/null @@ -1,173 +0,0 @@ -/* -*-Asm-*- */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2008,2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include - - .file "cdboot.S" - -#define CODE_ADDR 0x6000 -#define DATA_ADDR ((GRUB_BOOT_MACHINE_KERNEL_ADDR) + 0x200) - -#define CDSEC_SHIFT 11 -#define CDBLK_LENG 16 - - .text - - .code16 - - .globl start, _start - -start: -_start: - call LOCAL(next) - -LOCAL(next): - jmp 1f - - .org 8 - -bi_pvd: - .long 0 /* LBA of primary volume descriptor. */ -bi_file: - .long 0 /* LBA of boot file. */ -bi_length: - .long 0 /* Length of boot file. */ -bi_csum: - .long 0 /* Checksum of boot file */ -bi_reserved: - .space (10*4) /* Reserved */ - -1: - popw %bx - - /* Boot from CDROM. */ - - xorw %ax, %ax - movw %ax, %ss - movw $(CODE_ADDR), %sp - movw %ax, %ds - movw %ax, %es - - movw $(0x7C00 + err_noboot_msg - start), %si - movl %cs: bi_length - LOCAL(next)(%bx), %ecx - orl %ecx, %ecx - jz LOCAL(fail) - - addl $((1 << CDSEC_SHIFT) - 1), %ecx - shrl $CDSEC_SHIFT, %ecx - - movl %cs: bi_file - LOCAL(next)(%bx), %esi - - call LOCAL(read_cdrom) - - ljmp $(DATA_ADDR >> 4), $0 - -/* - * Parameters: - * esi: start sector - * ecx: number of sectors - */ -LOCAL(read_cdrom): - xorl %eax, %eax - - /* Number of blocks to read. */ - pushw $CDBLK_LENG - - /* Block number. */ - incl %esi - pushl %eax - pushl %esi - - /* Buffer address. */ - pushw $((DATA_ADDR - 0x200)>> 4) - pushl %eax - pushw $0x10 - - xorl %edi, %edi - movw %sp, %si - -1: - movw 0x10(%si), %di - cmpl %ecx, %edi - jbe 2f - movl %ecx, %edi - -2: - mov %di, 2(%si) - - pushl %ecx - - movb $0x42, %ah - int $0x13 - - jnc 3f - - movb $0x42, %ah /* Try again. */ - int $0x13 - - jnc 3f - -2: - shrw $1, %di /* Reduce transfer size. */ - jz LOCAL(cdrom_fail) - movw %di, 0x10(%si) - movw %di, 2(%si) - movb $0x42, %ah - int $0x13 - jc 2b - -3: - - movw %di, %ax - shlw $(CDSEC_SHIFT - 4), %ax - addw %ax, 6(%si) - addl %edi, 8(%si) - - popl %ecx - subl %edi, %ecx - jnz 1b - - addw $0x12, %sp - ret - -LOCAL(cdrom_fail): - movw $(0x7C00 + err_cdfail_msg - start), %si - -LOCAL(fail): - movb $0x0e, %ah - xorw %bx, %bx -1: - lodsb (%si), %al - int $0x10 - cmpb $0, %al - jne 1b -1: jmp 1b - -err_noboot_msg: - .ascii "no boot info\0" - -err_cdfail_msg: - .ascii "cdrom read fails\0" - - .org 0x7FF - - .byte 0 diff --git a/thirdparty/grub-2.04/grub-core/boot/i386/pc/diskboot.S b/thirdparty/grub-2.04/grub-core/boot/i386/pc/diskboot.S deleted file mode 100644 index c1addc0df..000000000 --- a/thirdparty/grub-2.04/grub-core/boot/i386/pc/diskboot.S +++ /dev/null @@ -1,378 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 1999,2000,2001,2002,2006,2007,2009,2010 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include - -/* - * defines for the code go here - */ - -#define MSG(x) movw $x, %si; call LOCAL(message) - - .file "diskboot.S" - - .text - - /* Tell GAS to generate 16-bit instructions so that this code works - in real mode. */ - .code16 - - .globl start, _start -start: -_start: - /* - * _start is loaded at 0x8000 and is jumped to with - * CS:IP 0:0x8000 in kernel. - */ - - /* - * we continue to use the stack for boot.img and assume that - * some registers are set to correct values. See boot.S - * for more information. - */ - - /* save drive reference first thing! */ - pushw %dx - - /* print a notification message on the screen */ - pushw %si - MSG(notification_string) - popw %si - - /* this sets up for the first run through "bootloop" */ - movw $LOCAL(firstlist), %di - - /* save the sector number of the second sector in %ebp */ - movl (%di), %ebp - - /* this is the loop for reading the rest of the kernel in */ -LOCAL(bootloop): - - /* check the number of sectors to read */ - cmpw $0, 8(%di) - - /* if zero, go to the start function */ - je LOCAL(bootit) - -LOCAL(setup_sectors): - /* check if we use LBA or CHS */ - cmpb $0, -1(%si) - - /* use CHS if zero, LBA otherwise */ - je LOCAL(chs_mode) - - /* load logical sector start */ - movl (%di), %ebx - movl 4(%di), %ecx - - /* the maximum is limited to 0x7f because of Phoenix EDD */ - xorl %eax, %eax - movb $0x7f, %al - - /* how many do we really want to read? */ - cmpw %ax, 8(%di) /* compare against total number of sectors */ - - /* which is greater? */ - jg 1f - - /* if less than, set to total */ - movw 8(%di), %ax - -1: - /* subtract from total */ - subw %ax, 8(%di) - - /* add into logical sector start */ - addl %eax, (%di) - adcl $0, 4(%di) - - /* set up disk address packet */ - - /* the size and the reserved byte */ - movw $0x0010, (%si) - - /* the number of sectors */ - movw %ax, 2(%si) - - /* the absolute address */ - movl %ebx, 8(%si) - movl %ecx, 12(%si) - - /* the segment of buffer address */ - movw $GRUB_BOOT_MACHINE_BUFFER_SEG, 6(%si) - - /* save %ax from destruction! */ - pushw %ax - - /* the offset of buffer address */ - movw $0, 4(%si) - -/* - * BIOS call "INT 0x13 Function 0x42" to read sectors from disk into memory - * Call with %ah = 0x42 - * %dl = drive number - * %ds:%si = segment:offset of disk address packet - * Return: - * %al = 0x0 on success; err code on failure - */ - - movb $0x42, %ah - int $0x13 - - jc LOCAL(read_error) - - movw $GRUB_BOOT_MACHINE_BUFFER_SEG, %bx - jmp LOCAL(copy_buffer) - -LOCAL(chs_mode): - /* load logical sector start (top half) */ - movl 4(%di), %eax - orl %eax, %eax - jnz LOCAL(geometry_error) - - /* load logical sector start (bottom half) */ - movl (%di), %eax - - /* zero %edx */ - xorl %edx, %edx - - /* divide by number of sectors */ - divl (%si) - - /* save sector start */ - movb %dl, 10(%si) - - xorl %edx, %edx /* zero %edx */ - divl 4(%si) /* divide by number of heads */ - - /* save head start */ - movb %dl, 11(%si) - - /* save cylinder start */ - movw %ax, 12(%si) - - /* do we need too many cylinders? */ - cmpw 8(%si), %ax - jge LOCAL(geometry_error) - - /* determine the maximum sector length of this read */ - movw (%si), %ax /* get number of sectors per track/head */ - - /* subtract sector start */ - subb 10(%si), %al - - /* how many do we really want to read? */ - cmpw %ax, 8(%di) /* compare against total number of sectors */ - - - /* which is greater? */ - jg 2f - - /* if less than, set to total */ - movw 8(%di), %ax - -2: - /* subtract from total */ - subw %ax, 8(%di) - - /* add into logical sector start */ - addl %eax, (%di) - adcl $0, 4(%di) - -/* - * This is the loop for taking care of BIOS geometry translation (ugh!) - */ - - /* get high bits of cylinder */ - movb 13(%si), %dl - - shlb $6, %dl /* shift left by 6 bits */ - movb 10(%si), %cl /* get sector */ - - incb %cl /* normalize sector (sectors go - from 1-N, not 0-(N-1) ) */ - orb %dl, %cl /* composite together */ - movb 12(%si), %ch /* sector+hcyl in cl, cylinder in ch */ - - /* restore %dx */ - popw %dx - pushw %dx - - /* head number */ - movb 11(%si), %dh - - pushw %ax /* save %ax from destruction! */ - -/* - * BIOS call "INT 0x13 Function 0x2" to read sectors from disk into memory - * Call with %ah = 0x2 - * %al = number of sectors - * %ch = cylinder - * %cl = sector (bits 6-7 are high bits of "cylinder") - * %dh = head - * %dl = drive (0x80 for hard disk, 0x0 for floppy disk) - * %es:%bx = segment:offset of buffer - * Return: - * %al = 0x0 on success; err code on failure - */ - - movw $GRUB_BOOT_MACHINE_BUFFER_SEG, %bx - movw %bx, %es /* load %es segment with disk buffer */ - - xorw %bx, %bx /* %bx = 0, put it at 0 in the segment */ - movb $0x2, %ah /* function 2 */ - int $0x13 - - jc LOCAL(read_error) - - /* save source segment */ - movw %es, %bx - -LOCAL(copy_buffer): - - /* load addresses for copy from disk buffer to destination */ - movw 10(%di), %es /* load destination segment */ - - /* restore %ax */ - popw %ax - - /* determine the next possible destination address (presuming - 512 byte sectors!) */ - shlw $5, %ax /* shift %ax five bits to the left */ - addw %ax, 10(%di) /* add the corrected value to the destination - address for next time */ - - /* save addressing regs */ - pusha - pushw %ds - - /* get the copy length */ - shlw $3, %ax - movw %ax, %cx - - xorw %di, %di /* zero offset of destination addresses */ - xorw %si, %si /* zero offset of source addresses */ - movw %bx, %ds /* restore the source segment */ - - cld /* sets the copy direction to forward */ - - /* perform copy */ - rep /* sets a repeat */ - movsw /* this runs the actual copy */ - - /* restore addressing regs and print a dot with correct DS - (MSG modifies SI, which is saved, and unused AX and BX) */ - popw %ds - MSG(notification_step) - popa - - /* check if finished with this dataset */ - cmpw $0, 8(%di) - jne LOCAL(setup_sectors) - - /* update position to load from */ - subw $GRUB_BOOT_MACHINE_LIST_SIZE, %di - - /* jump to bootloop */ - jmp LOCAL(bootloop) - -/* END OF MAIN LOOP */ - -LOCAL(bootit): - /* print a newline */ - MSG(notification_done) - popw %dx /* this makes sure %dl is our "boot" drive */ - ljmp $0, $(GRUB_BOOT_MACHINE_KERNEL_ADDR + 0x200) - - -/* - * BIOS Geometry translation error (past the end of the disk geometry!). - */ -LOCAL(geometry_error): - MSG(geometry_error_string) - jmp LOCAL(general_error) - -/* - * Read error on the disk. - */ -LOCAL(read_error): - MSG(read_error_string) - -LOCAL(general_error): - MSG(general_error_string) - -/* go here when you need to stop the machine hard after an error condition */ -LOCAL(stop): jmp LOCAL(stop) - -notification_string: .asciz "loading" - -notification_step: .asciz "." -notification_done: .asciz "\r\n" - -geometry_error_string: .asciz "Geom" -read_error_string: .asciz "Read" -general_error_string: .asciz " Error" - -/* - * message: write the string pointed to by %si - * - * WARNING: trashes %si, %ax, and %bx - */ - - /* - * Use BIOS "int 10H Function 0Eh" to write character in teletype mode - * %ah = 0xe %al = character - * %bh = page %bl = foreground color (graphics modes) - */ -1: - movw $0x0001, %bx - movb $0xe, %ah - int $0x10 /* display a byte */ - - incw %si -LOCAL(message): - movb (%si), %al - cmpb $0, %al - jne 1b /* if not end of string, jmp to display */ - ret - -/* - * This area is an empty space between the main body of code below which - * grows up (fixed after compilation, but between releases it may change - * in size easily), and the lists of sectors to read, which grows down - * from a fixed top location. - */ - - .word 0 - .word 0 - - .org 0x200 - GRUB_BOOT_MACHINE_LIST_SIZE -LOCAL(firstlist): /* this label has to be before the first list entry!!! */ - /* fill the first data listing with the default */ -blocklist_default_start: - /* this is the sector start parameter, in logical sectors from - the start of the disk, sector 0 */ - .long 2, 0 -blocklist_default_len: - /* this is the number of sectors to read. grub-mkimage - will fill this up */ - .word 0 -blocklist_default_seg: - /* this is the segment of the starting address to load the data into */ - .word (GRUB_BOOT_MACHINE_KERNEL_SEG + 0x20) diff --git a/thirdparty/grub-2.04/grub-core/boot/i386/pc/lnxboot.S b/thirdparty/grub-2.04/grub-core/boot/i386/pc/lnxboot.S deleted file mode 100644 index 2dda0e06b..000000000 --- a/thirdparty/grub-2.04/grub-core/boot/i386/pc/lnxboot.S +++ /dev/null @@ -1,295 +0,0 @@ -/* -*-Asm-*- */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2007,2008,2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include - - .file "lnxboot.S" - -#define CODE_ADDR 0x6000 -#define CODE_SECTORS 1 -#define DATA_ADDR ((GRUB_BOOT_MACHINE_KERNEL_ADDR) + 0x200) - -#define BLCK_LENG 0x4000 - - .text - - .code16 - - .globl start, _start - -data_start: - xorl %ebp, %ebp - jmp LOCAL(linux_next) - - .org 0x1F1 - -setup_sects: - .byte CODE_SECTORS -root_flags: - .word 0 -syssize: - .word 0 -swap_dev: - .word 0 -ram_size: - .word 0 -vid_mode: - .word 0 -root_dev: - .word 0 -boot_flag: - .word 0xAA55 - -start: -_start: - - jmp LOCAL(linux_init) - - .ascii "HdrS" /* Header signature. */ - .word 0x0203 /* Header version number. */ - -realmode_swtch: - .word 0, 0 /* default_switch, SETUPSEG. */ -start_sys_seg: - .word 0x1000 /* Obsolete. */ -version_ptr: - .word 0 /* Version string ptr. */ -type_of_loader: - .byte 0 /* Filled in by boot loader. */ -loadflags: - .byte 1 /* Please load high. */ -setup_move_size: - .word 0 /* Unused. */ -code32_start: - .long 0x100000 /* 32-bit start address. */ -ramdisk_image: - .long 0 /* Loaded ramdisk image address. */ -ramdisk_size: - .long 0 /* Size of loaded ramdisk. */ -bootsect_kludge: - .word 0, 0 -heap_end_ptr: - .word 0 -pad1: - .word 0 -cmd_line_ptr: - .long 0 /* Command line. */ -ramdisk_max: - .long 0xffffffff /* Highest allowed ramdisk address. */ - -gdt: - .long 0, 0, 0, 0 /* Must be zero. */ - .word 0xffff /* 64 K segment size. */ -gdt_src1: - .byte 0, 0 ,0 /* Low 24 bits of source address. */ - .byte 0x93 /* Access rights. */ - .byte 0 /* Extended access rights. */ -gdt_src2: - .byte 0 /* High 8 bits of source address. */ - .word 0xffff /* 64 K segment size. */ -gdt_dst1: - .byte 0, 0, 0 /* Low 24 bits of target address. */ - .byte 0x93 /* Access rights. */ - .byte 0 /* Extended access rights. */ -gdt_dst2: - .byte 0 /* High 8 bits of source address. */ - .long 0, 0, 0, 0 /* More space for the BIOS. */ - -reg_edx: - .byte 0x80, 0, 0xFF, 0xFF - -data_leng: - .long 0 - -LOCAL(linux_init): - movw %cs:(reg_edx - start), %dx - movl %cs:(code32_start - start), %ebp - -LOCAL(linux_next): - - call LOCAL(normalize) - -LOCAL(normalize): - popw %bx - subw $(LOCAL(normalize) - start), %bx - shrw $4, %bx - movw %cs, %ax - addw %bx, %ax - pushw %ax - pushw $(real_code - start) - lret /* Jump to real_code. */ - -real_code: - subw $0x20, %ax - movw %ax, %ds - movw (setup_sects - data_start), %cx - shlw $7, %cx - - /* Setup stack. */ - - xorw %si, %si - movw %si, %ss - movw $(CODE_ADDR), %sp - - /* Move itself to 0:CODE_ADDR. */ - - cld - movw %cs, %ax - movw %ax, %ds - movw $(CODE_ADDR >> 4), %ax - movw %ax, %es - movw %si, %di - - rep - movsl - ljmp $(CODE_ADDR >> 4), $(real_code_2 - start) - -real_code_2: - - xchgl %ebp, %esi - orl %esi, %esi - jnz 1f - movw %ds, %si - shll $4, %esi - addl %ebp, %esi -1: - - pushw %es - popw %ds - - movl $0x1000, %ecx - addl $0x200, %esi - movl $DATA_ADDR, %edi - - call LOCAL(move_memory) - - /* Check for multiboot signature. */ - movl $DATA_ADDR, %edi -3: - movl %ss:(%edi), %eax - cmpl $MULTIBOOT_HEADER_MAGIC, %eax - jz 1f - addl $4, %edi - cmpl $(DATA_ADDR + 0x1000), %edi - jne 3b - - movl (ramdisk_image - start), %esi - movl (ramdisk_size - start), %ecx - movl $(DATA_ADDR - 0x200), %edi - jmp 2f - -1: - - movl $(DATA_ADDR + 0x1000), %edi - movl %ss:(DATA_ADDR + GRUB_DECOMPRESSOR_MACHINE_COMPRESSED_SIZE), %ecx - addl $GRUB_DECOMPRESSOR_I386_PC_MAX_DECOMPRESSOR_SIZE, %ecx - -2: - call LOCAL(move_memory) - - movb %dh, %ss:(DATA_ADDR + GRUB_DECOMPRESSOR_I386_PC_BOOT_DEVICE + 2) - movb (reg_edx + 2 - start), %dh - movb %dh, %ss:(DATA_ADDR + GRUB_DECOMPRESSOR_I386_PC_BOOT_DEVICE + 1) - - movb $0xFF, %dh - - ljmp $(DATA_ADDR >> 4), $0 - -/* - * Parameters: - * esi: source address - * edi: target address - * ecx: number of bytes - */ - -LOCAL(move_memory): - incl %ecx - andb $0xFE, %cl - pushw %dx -1: - pushl %esi - pushl %edi - pushl %ecx - cmpl $BLCK_LENG, %ecx - jbe 2f - movl $BLCK_LENG, %ecx -2: - pushl %ecx - - movl %esi, %eax - movw %si, (gdt_src1 - start) - shrl $16, %eax - movb %al, (gdt_src1 + 2 - start) - movb %ah, (gdt_src2 - start) - - movl %edi, %eax - movw %di, (gdt_dst1 - start) - shrl $16, %eax - movb %al, (gdt_dst1 + 2 - start) - movb %ah, (gdt_dst2 - start) - - movw $(gdt - start), %si - movb $0x87, %ah - shrw $1, %cx - - int $0x15 - - popl %eax - popl %ecx - popl %edi - popl %esi - - jnc 2f - movw $(err_int15_msg - start), %si - jmp LOCAL(fail) - -2: - - addl %eax, %esi - addl %eax, %edi - subl %eax, %ecx - jnz 1b - - - popw %dx - ret - -/* - * Parameters: - * si: message - */ - -LOCAL(fail): - movb $0x0e, %ah - xorw %bx, %bx -1: - lodsb (%si), %al - int $0x10 - cmpb $0, %al - jne 1b -1: jmp 1b - -err_int15_msg: - .ascii "move memory fails\0" - - .org (CODE_SECTORS * 512 + 512) diff --git a/thirdparty/grub-2.04/grub-core/boot/i386/pc/lzma_decode.S b/thirdparty/grub-2.04/grub-core/boot/i386/pc/lzma_decode.S deleted file mode 100644 index 88c668d5e..000000000 --- a/thirdparty/grub-2.04/grub-core/boot/i386/pc/lzma_decode.S +++ /dev/null @@ -1,614 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2008 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#define FIXED_PROPS - -#define LZMA_BASE_SIZE 1846 -#define LZMA_LIT_SIZE 768 - -#define LZMA_PROPERTIES_SIZE 5 - -#define kNumTopBits 24 -#define kTopValue (1 << kNumTopBits) - -#define kNumBitModelTotalBits 11 -#define kBitModelTotal (1 << kNumBitModelTotalBits) -#define kNumMoveBits 5 - - -#define kNumPosBitsMax 4 -#define kNumPosStatesMax (1 << kNumPosBitsMax) - -#define kLenNumLowBits 3 -#define kLenNumLowSymbols (1 << kLenNumLowBits) -#define kLenNumMidBits 3 -#define kLenNumMidSymbols (1 << kLenNumMidBits) -#define kLenNumHighBits 8 -#define kLenNumHighSymbols (1 << kLenNumHighBits) - -#define LenChoice 0 -#define LenChoice2 (LenChoice + 1) -#define LenLow (LenChoice2 + 1) -#define LenMid (LenLow + (kNumPosStatesMax << kLenNumLowBits)) -#define LenHigh (LenMid + (kNumPosStatesMax << kLenNumMidBits)) -#define kNumLenProbs (LenHigh + kLenNumHighSymbols) - - -#define kNumStates 12 -#define kNumLitStates 7 - -#define kStartPosModelIndex 4 -#define kEndPosModelIndex 14 -#define kNumFullDistances (1 << (kEndPosModelIndex >> 1)) - -#define kNumPosSlotBits 6 -#define kNumLenToPosStates 4 - -#define kNumAlignBits 4 -#define kAlignTableSize (1 << kNumAlignBits) - -#define kMatchMinLen 2 - -#define IsMatch 0 -#define IsRep (IsMatch + (kNumStates << kNumPosBitsMax)) -#define IsRepG0 (IsRep + kNumStates) -#define IsRepG1 (IsRepG0 + kNumStates) -#define IsRepG2 (IsRepG1 + kNumStates) -#define IsRep0Long (IsRepG2 + kNumStates) -#define PosSlot (IsRep0Long + (kNumStates << kNumPosBitsMax)) -#define SpecPos (PosSlot + (kNumLenToPosStates << kNumPosSlotBits)) -#define Align (SpecPos + kNumFullDistances - kEndPosModelIndex) -#define LenCoder (Align + kAlignTableSize) -#define RepLenCoder (LenCoder + kNumLenProbs) -#define Literal (RepLenCoder + kNumLenProbs) - -#define out_size 8(%ebp) - -#define now_pos -4(%ebp) -#define prev_byte -8(%ebp) -#define range -12(%ebp) -#define code -16(%ebp) -#define state -20(%ebp) -#define rep0 -24(%ebp) -#define rep1 -28(%ebp) -#define rep2 -32(%ebp) -#define rep3 -36(%ebp) - -#ifdef FIXED_PROPS - -#define FIXED_LC 3 -#define FIXED_LP 0 -#define FIXED_PB 2 - -#define POS_STATE_MASK ((1 << (FIXED_PB)) - 1) -#define LIT_POS_MASK ((1 << (FIXED_LP)) - 1) - -#define LOCAL_SIZE 36 - -#else - -#define lc (%ebx) -#define lp 4(%ebx) -#define pb 8(%ebx) -#define probs 12(%ebx) - -#define pos_state_mask -40(%ebp) -#define lit_pos_mask -44(%ebp) - -#define LOCAL_SIZE 44 - -#endif - -RangeDecoderBitDecode: -#ifdef FIXED_PROPS - leal (%ebx, %eax, 4), %eax -#else - shll $2, %eax - addl probs, %eax -#endif - - movl %eax, %ecx - movl (%ecx), %eax - - movl range, %edx - shrl $kNumBitModelTotalBits, %edx - mull %edx - - cmpl code, %eax - jbe 1f - - movl %eax, range - movl $kBitModelTotal, %edx - subl (%ecx), %edx - shrl $kNumMoveBits, %edx - addl %edx, (%ecx) - clc -3: - pushf - cmpl $kTopValue, range - jnc 2f - shll $8, code - lodsb - movb %al, code - shll $8, range -2: - popf - ret -1: - subl %eax, range - subl %eax, code - movl (%ecx), %edx - shrl $kNumMoveBits, %edx - subl %edx, (%ecx) - stc - jmp 3b - -RangeDecoderBitTreeDecode: -RangeDecoderReverseBitTreeDecode: - movzbl %cl, %ecx - xorl %edx, %edx - pushl %edx - incl %edx - pushl %edx - -1: - pushl %eax - pushl %ecx - pushl %edx - - addl %edx, %eax - call RangeDecoderBitDecode - - popl %edx - popl %ecx - - jnc 2f - movl 4(%esp), %eax - orl %eax, 8(%esp) - stc - -2: - adcl %edx, %edx - popl %eax - - shll $1, (%esp) - loop 1b - - popl %ecx - subl %ecx, %edx /* RangeDecoderBitTreeDecode */ - popl %ecx /* RangeDecoderReverseBitTreeDecode */ - ret - -LzmaLenDecode: - pushl %eax - addl $LenChoice, %eax - call RangeDecoderBitDecode - popl %eax - jc 1f - pushl $0 - movb $kLenNumLowBits, %cl - addl $LenLow, %eax -2: - movl 12(%esp), %edx - shll %cl, %edx - addl %edx, %eax -3: - - call RangeDecoderBitTreeDecode - popl %eax - addl %eax, %edx - ret - -1: - pushl %eax - addl $LenChoice2, %eax - call RangeDecoderBitDecode - popl %eax - jc 1f - pushl $kLenNumLowSymbols - movb $kLenNumMidBits, %cl - addl $LenMid, %eax - jmp 2b - -1: - pushl $(kLenNumLowSymbols + kLenNumMidSymbols) - addl $LenHigh, %eax - movb $kLenNumHighBits, %cl - jmp 3b - -WriteByte: - movb %al, prev_byte - stosb - incl now_pos - ret - -/* - * int LzmaDecode(CLzmaDecoderState *vs, - * const unsigned char *inStream, - * unsigned char *outStream, - * SizeT outSize); - */ - -_LzmaDecodeA: - - pushl %ebp - movl %esp, %ebp - subl $LOCAL_SIZE, %esp - -#ifndef ASM_FILE - pushl %esi - pushl %edi - pushl %ebx - - movl %eax, %ebx - movl %edx, %esi - pushl %ecx -#else - pushl %edi -#endif - - cld - -#ifdef FIXED_PROPS - movl %ebx, %edi - movl $(Literal + (LZMA_LIT_SIZE << (FIXED_LC + FIXED_LP))), %ecx -#else - movl $LZMA_LIT_SIZE, %eax - movb lc, %cl - addb lp, %cl - shll %cl, %eax - addl $Literal, %eax - movl %eax, %ecx - movl probs, %edi -#endif - - movl $(kBitModelTotal >> 1), %eax - - rep - stosl - - popl %edi - - xorl %eax, %eax - movl %eax, now_pos - movl %eax, prev_byte - movl %eax, state - - incl %eax - movl %eax, rep0 - movl %eax, rep1 - movl %eax, rep2 - movl %eax, rep3 - -#ifndef FIXED_PROPS - movl %eax, %edx - movb pb, %cl - shll %cl, %edx - decl %edx - movl %edx, pos_state_mask - - movl %eax, %edx - movb lp, %cl - shll %cl, %edx - decl %edx - movl %edx, lit_pos_mask; -#endif - - /* RangeDecoderInit */ - negl %eax - movl %eax, range - - incl %eax - movb $5, %cl - -1: - shll $8, %eax - lodsb - loop 1b - - movl %eax, code - -lzma_decode_loop: - movl now_pos, %eax - cmpl out_size, %eax - - jb 1f - -#ifndef ASM_FILE - xorl %eax, %eax - - popl %ebx - popl %edi - popl %esi -#endif - - movl %ebp, %esp - popl %ebp - ret - -1: -#ifdef FIXED_PROPS - andl $POS_STATE_MASK, %eax -#else - andl pos_state_mask, %eax -#endif - pushl %eax /* posState */ - movl state, %edx - shll $kNumPosBitsMax, %edx - addl %edx, %eax - pushl %eax /* (state << kNumPosBitsMax) + posState */ - - call RangeDecoderBitDecode - jc 1f - - movl now_pos, %eax - -#ifdef FIXED_PROPS - andl $LIT_POS_MASK, %eax - shll $FIXED_LC, %eax - movl prev_byte, %edx - shrl $(8 - FIXED_LC), %edx -#else - andl lit_pos_mask, %eax - movb lc, %cl - shll %cl, %eax - negb %cl - addb $8, %cl - movl prev_byte, %edx - shrl %cl, %edx -#endif - - addl %edx, %eax - movl $LZMA_LIT_SIZE, %edx - mull %edx - addl $Literal, %eax - pushl %eax - - incl %edx /* edx = 1 */ - - movl rep0, %eax - negl %eax - pushl (%edi, %eax) /* matchByte */ - - cmpb $kNumLitStates, state - jb 5f - - /* LzmaLiteralDecodeMatch */ - -3: - cmpl $0x100, %edx - jae 4f - - xorl %eax, %eax - shlb $1, (%esp) - adcl %eax, %eax - - pushl %eax - pushl %edx - - shll $8, %eax - leal 0x100(%edx, %eax), %eax - addl 12(%esp), %eax - call RangeDecoderBitDecode - - setc %al - popl %edx - adcl %edx, %edx - - popl %ecx - cmpb %cl, %al - jz 3b - -5: - - /* LzmaLiteralDecode */ - - cmpl $0x100, %edx - jae 4f - - pushl %edx - movl %edx, %eax - addl 8(%esp), %eax - call RangeDecoderBitDecode - popl %edx - adcl %edx, %edx - jmp 5b - -4: - addl $16, %esp - - movb %dl, %al - call WriteByte - - movb state, %al - cmpb $4, %al - jae 2f - xorb %al, %al - jmp 3f -2: - subb $3, %al - cmpb $7, %al - jb 3f - subb $3, %al -3: - movb %al, state - jmp lzma_decode_loop - -1: - movl state, %eax - addl $IsRep, %eax - call RangeDecoderBitDecode - jnc 1f - - movl state, %eax - addl $IsRepG0, %eax - call RangeDecoderBitDecode - jc 10f - - movl (%esp), %eax - addl $IsRep0Long, %eax - call RangeDecoderBitDecode - jc 20f - - cmpb $7, state - movb $9, state - jb 100f - addb $2, state -100: - - movl $1, %ecx - -3: - movl rep0, %edx - negl %edx - -4: - movb (%edi, %edx), %al - call WriteByte - loop 4b - - popl %eax - popl %eax - jmp lzma_decode_loop - -10: - movl state, %eax - addl $IsRepG1, %eax - call RangeDecoderBitDecode - movl rep1, %edx - jnc 100f - - movl state, %eax - addl $IsRepG2, %eax - call RangeDecoderBitDecode - movl rep2, %edx - jnc 1000f - movl rep2, %edx - xchgl rep3, %edx -1000: - pushl rep1 - popl rep2 -100: - xchg rep0, %edx - movl %edx, rep1 -20: - - movl $RepLenCoder, %eax - call LzmaLenDecode - - cmpb $7, state - movb $8, state - jb 100f - addb $3, state -100: - jmp 2f - -1: - movl rep0, %eax - xchgl rep1, %eax - xchgl rep2, %eax - movl %eax, rep3 - - cmpb $7, state - movb $7, state - jb 10f - addb $3, state -10: - - movl $LenCoder, %eax - call LzmaLenDecode - pushl %edx - - movl $(kNumLenToPosStates - 1), %eax - cmpl %eax, %edx - jbe 100f - movl %eax, %edx -100: - movb $kNumPosSlotBits, %cl - shll %cl, %edx - leal PosSlot(%edx), %eax - call RangeDecoderBitTreeDecode - - movl %edx, rep0 - cmpl $kStartPosModelIndex, %edx - jb 100f - - movl %edx, %ecx - shrl $1, %ecx - decl %ecx - - movzbl %dl, %eax - andb $1, %al - orb $2, %al - shll %cl, %eax - movl %eax, rep0 - - cmpl $kEndPosModelIndex, %edx - jae 200f - movl rep0, %eax - addl $(SpecPos - 1), %eax - subl %edx, %eax - jmp 300f -200: - - subb $kNumAlignBits, %cl - - /* RangeDecoderDecodeDirectBits */ - xorl %edx, %edx - -1000: - shrl $1, range - shll $1, %edx - - movl range, %eax - cmpl %eax, code - jb 2000f - subl %eax, code - orb $1, %dl -2000: - - cmpl $kTopValue, %eax - jae 3000f - shll $8, range - shll $8, code - lodsb - movb %al, code - -3000: - loop 1000b - - movb $kNumAlignBits, %cl - shll %cl, %edx - addl %edx, rep0 - - movl $Align, %eax - -300: - call RangeDecoderReverseBitTreeDecode - addl %ecx, rep0 - -100: - incl rep0 - popl %edx - -2: - - addl $kMatchMinLen, %edx - movl %edx, %ecx - - jmp 3b diff --git a/thirdparty/grub-2.04/grub-core/boot/i386/pc/pxeboot.S b/thirdparty/grub-2.04/grub-core/boot/i386/pc/pxeboot.S deleted file mode 100644 index b695b24d0..000000000 --- a/thirdparty/grub-2.04/grub-core/boot/i386/pc/pxeboot.S +++ /dev/null @@ -1,42 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2000,2005,2007,2008,2009,2010 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include - - .file "pxeboot.S" - .text - - /* Start with the prehistoric environment... */ - .code16 - - /* Let's go */ -.globl start, _start; -_start: -start: - - /* Use drive number 0x7F for PXE */ - movb $GRUB_BOOT_MACHINE_PXE_DL, %dl - - /* Jump to the real world */ - ljmp $0, $0x8200 - - /* This region is a junk. Do you say that this is wasteful? - But I like that the memory layout of the body is consistent - among different kernels rather than scamping just for 1.5KB. */ - .org 0x8200 - 0x7C00 - 0x200 - 1 - .byte 0 diff --git a/thirdparty/grub-2.04/grub-core/boot/i386/pc/startup_raw.S b/thirdparty/grub-2.04/grub-core/boot/i386/pc/startup_raw.S deleted file mode 100644 index 28974821e..000000000 --- a/thirdparty/grub-2.04/grub-core/boot/i386/pc/startup_raw.S +++ /dev/null @@ -1,369 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 1999,2000,2001,2002,2003,2005,2006,2007,2008,2009,2011 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include - -#define ABS(x) ((x) - LOCAL (base) + GRUB_BOOT_MACHINE_KERNEL_ADDR + 0x200) - - .file "startup_raw.S" - - .text - - /* Tell GAS to generate 16-bit instructions so that this code works - in real mode. */ - .code16 - - .globl start, _start -start: -_start: -LOCAL (base): - /* - * Guarantee that "main" is loaded at 0x0:0x8200. - */ -#ifdef __APPLE__ - ljmp $0, $(ABS(LOCAL (codestart)) - 0x10000) -#else - ljmp $0, $ABS(LOCAL (codestart)) -#endif - - /* - * This is a special data area. - */ - - .org GRUB_DECOMPRESSOR_MACHINE_COMPRESSED_SIZE -LOCAL(compressed_size): - .long 0 - .org GRUB_DECOMPRESSOR_MACHINE_UNCOMPRESSED_SIZE -LOCAL(uncompressed_size): - .long 0 - - .org GRUB_KERNEL_I386_PC_REED_SOLOMON_REDUNDANCY -reed_solomon_redundancy: - .long 0 - .org GRUB_KERNEL_I386_PC_NO_REED_SOLOMON_LENGTH - .short (LOCAL(reed_solomon_part) - _start) - -/* - * This is the area for all of the special variables. - */ - .org GRUB_DECOMPRESSOR_I386_PC_BOOT_DEVICE -LOCAL(boot_dev): - .byte 0xFF, 0xFF, 0xFF -LOCAL(boot_drive): - .byte 0x00 - -/* the real mode code continues... */ -LOCAL (codestart): - cli /* we're not safe here! */ - - /* set up %ds, %ss, and %es */ - xorw %ax, %ax - movw %ax, %ds - movw %ax, %ss - movw %ax, %es - - /* set up the real mode/BIOS stack */ - movl $GRUB_MEMORY_MACHINE_REAL_STACK, %ebp - movl %ebp, %esp - - sti /* we're safe again */ - - /* save the boot drive */ - movb %dl, LOCAL(boot_drive) - - /* reset disk system (%ah = 0) */ - int $0x13 - - /* transition to protected mode */ - calll real_to_prot - - /* The ".code32" directive takes GAS out of 16-bit mode. */ - .code32 - - cld - call grub_gate_a20 - - movl LOCAL(compressed_size), %edx -#ifdef __APPLE__ - addl $decompressor_end, %edx - subl $(LOCAL(reed_solomon_part)), %edx -#else - addl $(LOCAL(decompressor_end) - LOCAL(reed_solomon_part)), %edx -#endif - movl reed_solomon_redundancy, %ecx - leal LOCAL(reed_solomon_part), %eax - cld - call EXT_C (grub_reed_solomon_recover) - jmp post_reed_solomon - -#include "../../../kern/i386/realmode.S" - -/* - * - * This is a workaround for clang adding a section containing only .addrsig - * Since clang itself is unable to assemble this pseudo-opcode, just replace - * it with .text - * - */ -#define addrsig text -#include -#undef addrsig - - .text - -/* - * grub_gate_a20(void) - * - * Gate address-line 20 for high memory. - * - * This routine is probably overconservative in what it does, but so what? - * - * It also eats any keystrokes in the keyboard buffer. :-( - */ - -grub_gate_a20: -gate_a20_test_current_state: - /* first of all, test if already in a good state */ - call gate_a20_check_state - testb %al, %al - jnz gate_a20_try_bios - ret - -gate_a20_try_bios: - /* second, try a BIOS call */ - pushl %ebp - call prot_to_real - - .code16 - movw $0x2401, %ax - int $0x15 - - calll real_to_prot - .code32 - - popl %ebp - call gate_a20_check_state - testb %al, %al - jnz gate_a20_try_system_control_port_a - ret - -gate_a20_try_system_control_port_a: - /* - * In macbook, the keyboard test would hang the machine, so we move - * this forward. - */ - /* fourth, try the system control port A */ - inb $0x92 - andb $(~0x03), %al - orb $0x02, %al - outb $0x92 - - call gate_a20_check_state - testb %al, %al - jnz gate_a20_try_keyboard_controller - ret - -gate_a20_flush_keyboard_buffer: - inb $0x64 - andb $0x02, %al - jnz gate_a20_flush_keyboard_buffer -2: - inb $0x64 - andb $0x01, %al - jz 3f - inb $0x60 - jmp 2b -3: - ret - -gate_a20_try_keyboard_controller: - /* third, try the keyboard controller */ - call gate_a20_flush_keyboard_buffer - - movb $0xd1, %al - outb $0x64 -4: - inb $0x64 - andb $0x02, %al - jnz 4b - - movb $0xdf, %al - outb $0x60 - call gate_a20_flush_keyboard_buffer - - /* output a dummy command (USB keyboard hack) */ - movb $0xff, %al - outb $0x64 - call gate_a20_flush_keyboard_buffer - - call gate_a20_check_state - testb %al, %al - /* everything failed, so restart from the beginning */ - jnz gate_a20_try_bios - ret - -gate_a20_check_state: - /* iterate the checking for a while */ - movl $100, %ecx -1: - call 3f - testb %al, %al - jz 2f - loop 1b -2: - ret -3: - pushl %ebx - pushl %ecx - xorl %eax, %eax - /* compare the byte at 0x8000 with that at 0x108000 */ - movl $GRUB_BOOT_MACHINE_KERNEL_ADDR, %ebx - pushl %ebx - /* save the original byte in CL */ - movb (%ebx), %cl - /* store the value at 0x108000 in AL */ - addl $0x100000, %ebx - movb (%ebx), %al - /* try to set one less value at 0x8000 */ - popl %ebx - movb %al, %ch - decb %ch - movb %ch, (%ebx) - /* serialize */ - outb %al, $0x80 - outb %al, $0x80 - /* obtain the value at 0x108000 in CH */ - pushl %ebx - addl $0x100000, %ebx - movb (%ebx), %ch - /* this result is 0 if A20 is on or 1 if it is off */ - subb %ch, %al - /* restore the original */ - popl %ebx - movb %cl, (%ebx) - popl %ecx - popl %ebx - ret - -LOCAL(reed_solomon_part): - -/* - * Support for booting GRUB from a Multiboot boot loader (e.g. GRUB itself). - * This uses the a.out kludge to load raw binary to the area starting at 1MB, - * and relocates itself after loaded. - */ - .p2align 2 /* force 4-byte alignment */ -multiboot_header: - /* magic */ - .long 0x1BADB002 - /* flags */ - .long (1 << 16) - /* checksum */ - .long -0x1BADB002 - (1 << 16) - /* header addr */ - .long multiboot_header - _start + 0x100000 + 0x200 - /* load addr */ - .long 0x100000 - /* load end addr */ - .long 0 - /* bss end addr */ - .long 0 - /* entry addr */ - .long multiboot_entry - _start + 0x100000 + 0x200 - -multiboot_entry: - .code32 - /* obtain the boot device */ - movl 12(%ebx), %edx - - movl $GRUB_MEMORY_MACHINE_PROT_STACK, %ebp - movl %ebp, %esp - - /* relocate the code */ -#ifdef __APPLE__ - LOCAL(compressed_size_offset) = LOCAL(compressed_size) - LOCAL(base) - movl $0x200, %ecx - addl $decompressor_end, %ecx - subl $LOCAL(base), %ecx - addl LOCAL(compressed_size_offset) + 0x100000 + 0x200, %ecx -#else - movl $(LOCAL(decompressor_end) - _start + 0x200), %ecx - addl LOCAL(compressed_size) - _start + 0x100000 + 0x200, %ecx -#endif - movl $0x100000, %esi - movl $GRUB_BOOT_MACHINE_KERNEL_ADDR, %edi - cld - rep - movsb - /* jump to the real address */ - movl $multiboot_trampoline, %eax - jmp *%eax - -multiboot_trampoline: - /* fill the boot information */ - movl %edx, LOCAL(boot_dev) - shrl $24, %edx - /* enter the usual booting */ - call prot_to_real - .code16 - jmp LOCAL (codestart) - .code32 - -post_reed_solomon: - -#ifdef ENABLE_LZMA - movl $GRUB_MEMORY_MACHINE_DECOMPRESSION_ADDR, %edi -#ifdef __APPLE__ - movl $decompressor_end, %esi -#else - movl $LOCAL(decompressor_end), %esi -#endif - pushl %edi - movl LOCAL (uncompressed_size), %ecx - leal (%edi, %ecx), %ebx - /* Don't remove this push: it's an argument. */ - push %ecx - call _LzmaDecodeA - pop %ecx - /* _LzmaDecodeA clears DF, so no need to run cld */ - popl %esi -#endif - - movl LOCAL(boot_dev), %edx - movl $prot_to_real, %edi - movl $real_to_prot, %ecx - movl $LOCAL(realidt), %eax - jmp *%esi - -#ifdef ENABLE_LZMA -#include "lzma_decode.S" -#endif - - .p2align 4 - -#ifdef __APPLE__ - .zerofill __DATA, __aa_before_bss, decompressor_end, 10, 0 -#else - .bss -LOCAL(decompressor_end): -#endif diff --git a/thirdparty/grub-2.04/grub-core/boot/i386/qemu/boot.S b/thirdparty/grub-2.04/grub-core/boot/i386/qemu/boot.S deleted file mode 100644 index 8c3a1db71..000000000 --- a/thirdparty/grub-2.04/grub-core/boot/i386/qemu/boot.S +++ /dev/null @@ -1,74 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 1999,2000,2001,2002,2003,2005,2006,2007,2008,2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include - - .text - .code16 - .globl _start -_start: - /* Disable interrupts. */ - cli - - jmp 1f - - .org GRUB_BOOT_I386_QEMU_CORE_ENTRY_ADDR -VARIABLE(grub_core_entry_addr) - .long 0 -1: - - /* Set up %ds, %ss, and %es. */ - xorw %ax, %ax - movw %ax, %ds - movw %ax, %ss - movw %ax, %es - - /* Set up the real mode stack. */ - movl $GRUB_MEMORY_MACHINE_REAL_STACK, %esp - - /* Transition to protected mode. We use pushl to force generation - of a flat return address. */ - pushl $1f - jmp real_to_prot - .code32 -1: - /* Ensure A20 is enabled. We're in qemu, so control port A works - and there is no need to wait since there is no real logic, it's - all emulated. */ - inb $0x92 - andb $(~0x03), %al - orb $0x02, %al - outb $0x92 - movl EXT_C(grub_core_entry_addr), %edx - jmp *%edx - -#include "../../../kern/i386/realmode.S" - - /* Intel, in its infinite wisdom, decided to put the i8086 entry point - *right here* and this is why we need this kludge. */ - - .org GRUB_BOOT_MACHINE_SIZE - 16 - - .code16 - - jmp _start - .org GRUB_BOOT_MACHINE_SIZE diff --git a/thirdparty/grub-2.04/grub-core/boot/mips/loongson/fuloong2f.S b/thirdparty/grub-2.04/grub-core/boot/mips/loongson/fuloong2f.S deleted file mode 100644 index a88c81efe..000000000 --- a/thirdparty/grub-2.04/grub-core/boot/mips/loongson/fuloong2f.S +++ /dev/null @@ -1,2 +0,0 @@ -#define FULOONG2F 1 -#include "fwstart.S" diff --git a/thirdparty/grub-2.04/grub-core/boot/mips/loongson/fwstart.S b/thirdparty/grub-2.04/grub-core/boot/mips/loongson/fwstart.S deleted file mode 100644 index 28c634614..000000000 --- a/thirdparty/grub-2.04/grub-core/boot/mips/loongson/fwstart.S +++ /dev/null @@ -1,756 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2000,2001,2002,2003,2004,2005,2007,2008,2009,2010 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#ifndef FULOONG2F -#include -#define GRUB_SM712_REG_BASE 0x700000 -#define GRUB_SM712_PCIID 0x0712126f -#endif - -#ifdef FULOONG2F -#define GRUB_MACHINE_SERIAL_PORT GRUB_MACHINE_SERIAL_PORT2 -#define GRUB_MACHINE_SERIAL_DIVISOR_115200 GRUB_MACHINE_SERIAL_PORT2_DIVISOR_115200 -#else -#define GRUB_MACHINE_SERIAL_PORT GRUB_MACHINE_SERIAL_PORT0 -#define GRUB_MACHINE_SERIAL_DIVISOR_115200 GRUB_MACHINE_SERIAL_PORT0_DIVISOR_115200 -#endif - - .set noreorder - .set noat - .set nomacro - .set mips3 - - .global start,_start,__start -start: -_start: -__start: - /* Put serial init as soon as possible. But on Fuloong2f serial is past - Geode, so on Fuloong2f we need Geode first. - */ -#ifndef FULOONG2F - bal serial_hw_init - nop -#endif - - /* Find CS5536 controller. */ - /* $t4 chooses device in priority encoding. */ - /* Resulting value is kept in GRUB_MACHINE_PCI_CONF_CTRL_REG. - This way we don't need to sacrifice a register for it. */ -retry_cs5536: - /* We have only one bus (0). Function is 0. */ - lui $t0, %hi(GRUB_MACHINE_PCI_CONF_CTRL_REG_ADDR_2F) - lui $t1, %hi(GRUB_MACHINE_PCI_CONFSPACE_2F) - lui $t3, %hi(GRUB_CS5536_PCIID) - addiu $t3, $t3, %lo(GRUB_CS5536_PCIID) - ori $t4, $zero, 1 -1: - andi $t4, $t4, ((1 << GRUB_PCI_NUM_DEVICES_2F) - 1) - /* In case of failure try again. CS5536 may be slow to come up. */ - beql $t4, $zero, retry_cs5536 - nop - sw $t4, %lo(GRUB_MACHINE_PCI_CONF_CTRL_REG_ADDR_2F) ($t0) - lw $t2, (%lo(GRUB_MACHINE_PCI_CONFSPACE_2F) + GRUB_PCI_REG_PCI_ID) ($t1) - bnel $t2, $t3, 1b - sll $t4, $t4, 1 - -#ifndef FULOONG2F - lui $a0, %hi(cs5536_found) - bal message - addiu $a0, $a0, %lo(cs5536_found) - bal printhex - move $a0, $t4 -#endif - - lui $t0, %hi(GRUB_MACHINE_PCI_CONFSPACE_2F) - li $t1, GRUB_CS5536_MSR_MAILBOX_CONFIG_ENABLED - sw $t1, (%lo(GRUB_MACHINE_PCI_CONFSPACE_2F) + GRUB_CS5536_MSR_MAILBOX_CONFIG) ($t0) - - /* Set GPIO LBAR. */ - lui $a0, %hi(GRUB_CS5536_MSR_GPIO_BAR) - addiu $a0, $a0, %lo(GRUB_CS5536_MSR_GPIO_BAR) - ori $a1, $zero, GRUB_CS5536_LBAR_GPIO - /* Set mask to 0xf and enabled bit to 1. */ - bal wrmsr - ori $a2, $zero, ((GRUB_CS5536_LBAR_MASK_MASK \ - | GRUB_CS5536_LBAR_ENABLE) >> 32) - - bal gpio_init - nop - -#ifdef FULOONG2F - bal serial_hw_init - nop -#endif - - /* Initialise SMBus controller. */ - /* Set SMBUS LBAR. */ - lui $a0, %hi(GRUB_CS5536_MSR_SMB_BAR) - addiu $a0, $a0, %lo(GRUB_CS5536_MSR_SMB_BAR) - ori $a1, $zero, GRUB_CS5536_LBAR_SMBUS - /* Set mask to 0xf and enabled bit to 1. */ - bal wrmsr - ori $a2, $zero, ((GRUB_CS5536_LBAR_MASK_MASK \ - | GRUB_CS5536_LBAR_ENABLE) >> 32) - - lui $a0, %hi(smbus_enabled) - bal message - addiu $a0, $a0, %lo(smbus_enabled) - - lui $t0, %hi(GRUB_MACHINE_PCI_IO_BASE_2F + GRUB_CS5536_LBAR_SMBUS) - - /* Disable SMB. */ - sb $zero, %lo(GRUB_MACHINE_PCI_IO_BASE_2F + GRUB_CS5536_LBAR_SMBUS + GRUB_CS5536_SMB_REG_CTRL2) ($t0) - - /* Disable interrupts. */ - sb $zero, %lo(GRUB_MACHINE_PCI_IO_BASE_2F + GRUB_CS5536_LBAR_SMBUS + GRUB_CS5536_SMB_REG_CTRL1) ($t0) - - /* Set as master. */ - sb $zero, %lo(GRUB_MACHINE_PCI_IO_BASE_2F + GRUB_CS5536_LBAR_SMBUS + GRUB_CS5536_SMB_REG_ADDR) ($t0) - - /* Launch SMBus controller at slowest speed possible. */ - ori $t1, $zero, 0xff - sb $t1, %lo(GRUB_MACHINE_PCI_IO_BASE_2F + GRUB_CS5536_LBAR_SMBUS + GRUB_CS5536_SMB_REG_CTRL3) ($t0) - sb $t1, %lo(GRUB_MACHINE_PCI_IO_BASE_2F + GRUB_CS5536_LBAR_SMBUS + GRUB_CS5536_SMB_REG_CTRL2) ($t0) - - /* Yeeloong and Fuloong2f have only one memory slot. */ - /* Output first byte on serial for debugging. */ - ori $a1, $zero, GRUB_SMB_RAM_START_ADDR - bal read_spd - move $a0, $zero - bal printhex - move $a0, $v0 - - bal read_spd - ori $a0, $zero, GRUB_SMBUS_SPD_MEMORY_TYPE_ADDR - ori $t0, $zero, GRUB_SMBUS_SPD_MEMORY_TYPE_DDR2 - lui $a0, %hi(unimplemented_memory_type) - bne $t0, $v0, fatal - addiu $a0, $a0, %lo(unimplemented_memory_type) - - /* And here is our goal: DDR2 controller initialisation. */ - lui $t0, %hi(GRUB_CPU_LOONGSON_CORECFG) - ld $t1, %lo(GRUB_CPU_LOONGSON_CORECFG) ($t0) - /* Use addiu for sign-extension. */ - addiu $t2, $zero, ~(GRUB_CPU_LOONGSON_CORECFG_DISABLE_DDR2_SPACE|GRUB_CPU_LOONGSON_CORECFG_BUFFER_CPU) - and $t1, $t1, $t2 - sd $t1, %lo (GRUB_CPU_LOONGSON_CORECFG) ($t0) - - b continue - - .org GRUB_CPU_LOONGSON_FLASH_TLB_REFILL - GRUB_CPU_LOONGSON_FLASH_START -tlb_refill: - mfc0 $s1, GRUB_CPU_LOONGSON_COP0_EPC - mfc0 $s2, GRUB_CPU_LOONGSON_COP0_BADVADDR - move $s3, $ra - lui $a0, %hi(epc) - bal message - addiu $a0, $a0, %lo(epc) - - bal printhex - move $a0, $s1 - - lui $a0, %hi(badvaddr) - bal message - addiu $a0, $a0, %lo(badvaddr) - - bal printhex - move $a0, $s2 - - lui $a0, %hi(return_msg) - bal message - addiu $a0, $a0, %lo(return_msg) - - bal printhex - move $a0, $s3 - - lui $a0, %hi(newline) - bal message - addiu $a0, $a0, %lo(newline) - - lui $a0, %hi(unhandled_tlb_refill) - b fatal - addiu $a0, $a0, %lo(unhandled_tlb_refill) - - .org GRUB_CPU_LOONGSON_FLASH_CACHE_ERROR - GRUB_CPU_LOONGSON_FLASH_START -cache_error: - lui $a0, %hi(unhandled_cache_error) - b fatal - addiu $a0, $a0, %lo(unhandled_cache_error) - - .org GRUB_CPU_LOONGSON_FLASH_OTHER_EXCEPTION - GRUB_CPU_LOONGSON_FLASH_START -other_exception: - mfc0 $s0, GRUB_CPU_LOONGSON_COP0_CAUSE - mfc0 $s1, GRUB_CPU_LOONGSON_COP0_EPC - mfc0 $s2, GRUB_CPU_LOONGSON_COP0_BADVADDR - lui $a0, %hi(cause) - bal message - addiu $a0, $a0, %lo(cause) - - bal printhex - move $a0, $s0 - - lui $a0, %hi(epc) - bal message - addiu $a0, $a0, %lo(epc) - - bal printhex - move $a0, $s1 - - lui $a0, %hi(badvaddr) - bal message - addiu $a0, $a0, %lo(badvaddr) - - bal printhex - move $a0, $s2 - - lui $a0, %hi(newline) - bal message - addiu $a0, $a0, %lo(newline) - - lui $a0, %hi(unhandled_exception) - b fatal - addiu $a0, $a0, %lo(unhandled_exception) - -gpio_init: - lui $t0, %hi(GRUB_MACHINE_PCI_IO_BASE_2F + GRUB_CS5536_LBAR_GPIO) - addiu $t0, $t0, %lo(GRUB_MACHINE_PCI_IO_BASE_2F + GRUB_CS5536_LBAR_GPIO) - lui $t1, %hi (gpio_dump) - addiu $t1, $t1, %lo (gpio_dump) - -1: - lw $t2, 0($t1) - sw $t2, 0($t0) - addiu $t0, $t0, 4 - addiu $t1, $t1, 4 - lui $t2, %hi (gpio_dump_end) - addiu $t2, $t2, %lo (gpio_dump_end) - bne $t1, $t2, 1b - nop - jr $ra - nop - - /* Same as similarly named C function but in asm since - we need it early. */ - /* In: none. Out: none. Clobbered: $t0, $t1, $t2, $a0, $a1, $a2. */ -serial_hw_init: - move $t2, $ra -#ifdef FULOONG2F - lui $a0, %hi(GRUB_CS5536_MSR_DIVIL_LEG_IO) - addiu $a0, $a0, %lo(GRUB_CS5536_MSR_DIVIL_LEG_IO) - lui $a1, %hi (GRUB_CS5536_MSR_DIVIL_LEG_IO_UART2_COM3 \ - | GRUB_CS5536_MSR_DIVIL_LEG_IO_F_REMAP \ - | GRUB_CS5536_MSR_DIVIL_LEG_IO_MODE_X86 \ - | GRUB_CS5536_MSR_DIVIL_LEG_IO_UART1_COM1) - ori $a1, $a1, (GRUB_CS5536_MSR_DIVIL_LEG_IO_RTC_ENABLE0 \ - | GRUB_CS5536_MSR_DIVIL_LEG_IO_RTC_ENABLE1) - bal wrmsr - move $a2, $zero - - lui $a0, %hi(GRUB_CS5536_MSR_DIVIL_UART1_CONF) - addiu $a0, $a0, %lo(GRUB_CS5536_MSR_DIVIL_UART1_CONF) - li $a1, 2 - bal wrmsr - move $a2, $zero - - lui $a0, %hi(GRUB_CS5536_MSR_DIVIL_UART2_CONF) - addiu $a0, $a0, %lo(GRUB_CS5536_MSR_DIVIL_UART2_CONF) - li $a1, 2 - bal wrmsr - move $a2, $zero -#endif - - lui $t0, %hi (GRUB_MACHINE_SERIAL_PORT) - - /* Turn off the interrupt. */ - sb $zero, (%lo (GRUB_MACHINE_SERIAL_PORT) + UART_IER)($t0) - - /* Set DLAB. */ - ori $t1, $zero, UART_DLAB - sb $t1, (%lo (GRUB_MACHINE_SERIAL_PORT) + UART_LCR)($t0) - - /* Set the baud rate 115200. */ - ori $t1, $zero, GRUB_MACHINE_SERIAL_DIVISOR_115200 - sb $t1, (%lo (GRUB_MACHINE_SERIAL_PORT) + UART_DLL)($t0) - sb $zero, (%lo (GRUB_MACHINE_SERIAL_PORT) + UART_DLH)($t0) - - /* Set the line status. */ - ori $t1, $zero, (UART_NO_PARITY | UART_8BITS_WORD | UART_1_STOP_BIT) - sb $t1, (%lo (GRUB_MACHINE_SERIAL_PORT) + UART_LCR)($t0) - - /* Enable the FIFO. */ - ori $t1, $zero, UART_ENABLE_FIFO_TRIGGER1 - sb $t1, (%lo (GRUB_MACHINE_SERIAL_PORT) + UART_FCR)($t0) - - /* Turn on DTR and RTS. */ - ori $t1, $zero, UART_ENABLE_DTRRTS - sb $t1, (%lo (GRUB_MACHINE_SERIAL_PORT) + UART_MCR)($t0) - - /* Let message return to original caller. */ - lui $a0, %hi(notification_string) - addiu $a0, $a0, %lo(notification_string) - move $ra, $t2 - - /* Print message on serial console. */ - /* In: $a0 = asciiz message. Out: none. Clobbered: $t0, $t1, $a0. */ -message: - lui $t0, %hi (GRUB_MACHINE_SERIAL_PORT) -1: - lb $t1, (%lo (GRUB_MACHINE_SERIAL_PORT) + UART_LSR)($t0) - andi $t1, $t1, UART_EMPTY_TRANSMITTER - beq $t1, $zero, 1b - nop - lb $t1, 0($a0) - sb $t1, (%lo (GRUB_MACHINE_SERIAL_PORT) + UART_TX)($t0) - bne $t1, $zero, 1b - addiu $a0, $a0, 1 - jr $ra - nop - - /* Print 32-bit hexadecimal on serial. - In: $a0. Out: None. Clobbered: $a0, $t0, $t1, $t2 - */ -printhex: - lui $t0, %hi (GRUB_MACHINE_SERIAL_PORT) - ori $t2, $zero, 8 -1: - lb $t1, (%lo (GRUB_MACHINE_SERIAL_PORT) + UART_LSR)($t0) - andi $t1, $t1, UART_EMPTY_TRANSMITTER - beq $t1, $zero, 1b - nop - srl $t1, $a0, 28 - addiu $t1, $t1, -10 - bltz $t1, 2f - sll $a0, $a0, 4 - addiu $t1, $t1, 'A'-10-'0' -2: addiu $t1, $t1, '0'+10 - sb $t1, (%lo (GRUB_MACHINE_SERIAL_PORT) + UART_TX)($t0) - addiu $t2, $t2, -1 - bne $t2, $zero, 1b - nop - jr $ra - nop - -fatal: - bal message - nop -self: - b self - nop - - /* Write CS5536 MSR. - In: $a0 address, $a1 lower word, $a2 upper word. - Out: None - Clobbered: $t0 - */ -wrmsr: - lui $t0, %hi(GRUB_MACHINE_PCI_CONFSPACE_2F) - sw $a0, (%lo(GRUB_MACHINE_PCI_CONFSPACE_2F) + GRUB_CS5536_MSR_MAILBOX_ADDR) ($t0) - sw $a1, (%lo(GRUB_MACHINE_PCI_CONFSPACE_2F) + GRUB_CS5536_MSR_MAILBOX_DATA0) ($t0) - jr $ra - sw $a2, (%lo(GRUB_MACHINE_PCI_CONFSPACE_2F) + GRUB_CS5536_MSR_MAILBOX_DATA1) ($t0) - - /* Wait for SMBus data or empty transmitter. */ - /* In: $a0 = exception handler. Out: none. Clobbered: $t0, $t1 */ -smbus_wait: -1: - lui $t0, %hi(GRUB_CS5536_LBAR_SMBUS + GRUB_CS5536_SMB_REG_STATUS + GRUB_MACHINE_PCI_IO_BASE_2F) - lb $t0, %lo(GRUB_CS5536_LBAR_SMBUS + GRUB_CS5536_SMB_REG_STATUS + GRUB_MACHINE_PCI_IO_BASE_2F) ($t0) - andi $t1, $t0, GRUB_CS5536_SMB_REG_STATUS_SDAST - bne $t1, $zero, return - nop - andi $t1, $t0, (GRUB_CS5536_SMB_REG_STATUS_BER | GRUB_CS5536_SMB_REG_STATUS_NACK) - beq $t1, $zero, 1b - nop - jr $a0 - nop -return: - jr $ra - nop - - /* Read SPD byte. In: $a0 byte, $a1 device. Out: $v0 read byte (0x100 on failure). - Clobbered: $t0, $t1, $t2, $t3, $a0. */ -read_spd: - move $t2, $a0 - move $t3, $ra - lui $a0, %hi(read_spd_fail) - addiu $a0, $a0, %lo(read_spd_fail) - - /* Send START. */ - lui $t0, %hi(GRUB_CS5536_LBAR_SMBUS + GRUB_CS5536_SMB_REG_CTRL1 + GRUB_MACHINE_PCI_IO_BASE_2F) - lb $t1, %lo(GRUB_CS5536_LBAR_SMBUS + GRUB_CS5536_SMB_REG_CTRL1 + GRUB_MACHINE_PCI_IO_BASE_2F) ($t0) - ori $t1, $t1, GRUB_CS5536_SMB_REG_CTRL1_START - bal smbus_wait - sb $t1, %lo(GRUB_CS5536_LBAR_SMBUS + GRUB_CS5536_SMB_REG_CTRL1 + GRUB_MACHINE_PCI_IO_BASE_2F) ($t0) - - /* Send device address. */ - lui $t0, %hi(GRUB_CS5536_LBAR_SMBUS + GRUB_CS5536_SMB_REG_DATA + GRUB_MACHINE_PCI_IO_BASE_2F) - sll $t1, $a1, 1 - bal smbus_wait - sb $t1, %lo(GRUB_CS5536_LBAR_SMBUS + GRUB_CS5536_SMB_REG_DATA + GRUB_MACHINE_PCI_IO_BASE_2F) ($t0) - - /* Send ACK. */ - lui $t0, %hi(GRUB_CS5536_LBAR_SMBUS + GRUB_CS5536_SMB_REG_CTRL1 + GRUB_MACHINE_PCI_IO_BASE_2F) - lb $t1, %lo(GRUB_CS5536_LBAR_SMBUS + GRUB_CS5536_SMB_REG_CTRL1 + GRUB_MACHINE_PCI_IO_BASE_2F) ($t0) - ori $t1, $t1, GRUB_CS5536_SMB_REG_CTRL1_ACK - sb $t1, %lo(GRUB_CS5536_LBAR_SMBUS + GRUB_CS5536_SMB_REG_CTRL1 + GRUB_MACHINE_PCI_IO_BASE_2F) ($t0) - - /* Send byte address. */ - lui $t0, %hi(GRUB_CS5536_LBAR_SMBUS + GRUB_CS5536_SMB_REG_DATA + GRUB_MACHINE_PCI_IO_BASE_2F) - bal smbus_wait - sb $t2, %lo(GRUB_CS5536_LBAR_SMBUS + GRUB_CS5536_SMB_REG_DATA + GRUB_MACHINE_PCI_IO_BASE_2F) ($t0) - - /* Send START. */ - lui $t0, %hi(GRUB_CS5536_LBAR_SMBUS + GRUB_CS5536_SMB_REG_CTRL1 + GRUB_MACHINE_PCI_IO_BASE_2F) - lb $t1, %lo(GRUB_CS5536_LBAR_SMBUS + GRUB_CS5536_SMB_REG_CTRL1 + GRUB_MACHINE_PCI_IO_BASE_2F) ($t0) - ori $t1, $t1, GRUB_CS5536_SMB_REG_CTRL1_START - bal smbus_wait - sb $t1, %lo(GRUB_CS5536_LBAR_SMBUS + GRUB_CS5536_SMB_REG_CTRL1 + GRUB_MACHINE_PCI_IO_BASE_2F) ($t0) - - /* Send device address. */ - lui $t0, %hi(GRUB_CS5536_LBAR_SMBUS + GRUB_CS5536_SMB_REG_DATA + GRUB_MACHINE_PCI_IO_BASE_2F) - sll $t1, $a1, 1 - ori $t1, $t1, 1 - bal smbus_wait - sb $t1, %lo(GRUB_CS5536_LBAR_SMBUS + GRUB_CS5536_SMB_REG_DATA + GRUB_MACHINE_PCI_IO_BASE_2F) ($t0) - - /* Send STOP. */ - lui $t0, %hi(GRUB_CS5536_LBAR_SMBUS + GRUB_CS5536_SMB_REG_CTRL1 + GRUB_MACHINE_PCI_IO_BASE_2F) - lb $t1, %lo(GRUB_CS5536_LBAR_SMBUS + GRUB_CS5536_SMB_REG_CTRL1 + GRUB_MACHINE_PCI_IO_BASE_2F) ($t0) - ori $t1, $t1, GRUB_CS5536_SMB_REG_CTRL1_STOP - bal smbus_wait - sb $t1, %lo(GRUB_CS5536_LBAR_SMBUS + GRUB_CS5536_SMB_REG_CTRL1 + GRUB_MACHINE_PCI_IO_BASE_2F) ($t0) - - lui $t0, %hi(GRUB_CS5536_LBAR_SMBUS + GRUB_CS5536_SMB_REG_DATA + GRUB_MACHINE_PCI_IO_BASE_2F) - lb $v0, %lo(GRUB_CS5536_LBAR_SMBUS + GRUB_CS5536_SMB_REG_DATA + GRUB_MACHINE_PCI_IO_BASE_2F) ($t0) - jr $t3 - andi $v0, $v0, 0xff -read_spd_fail: - jr $t3 - ori $v0, $v0, 0x100 - -notification_string: .asciz "GRUB " -cs5536_found: .asciz "CS5536 at " -sm_failed: .asciz "SM transaction failed.\n\r" -unhandled_tlb_refill: .asciz "Unhandled TLB refill.\n\r" -unhandled_cache_error: .asciz "Unhandled cache error.\n\r" -unhandled_exception: .asciz "Unhandled exception.\n\r" -smbus_enabled: .asciz "SMBus controller enabled.\n\r" -unimplemented_memory_type: .asciz "non-DDR2 memory isn't supported.\n\r" -no_cas_latency: .asciz "Couldn't determine CAS latency.\n\r" -cause: .asciz "Cause: " -epc: .asciz "\n\rEPC: " -badvaddr: .asciz "\n\rBadVaddr: " -newline: .asciz "\n\r" -return_msg: .asciz "\n\rReturn address: " -caches_enabled: .asciz "Caches enabled\n\r" - - .p2align 3 - -regdump: - .quad 0x0100010000000101 /* 0 */ - .quad 0x0100010100000000 /* 2 */ - .quad 0x0101000001000000 /* 3 */ - .quad 0x0100020200010101 /* 4 */ - .quad 0x0a04030603050203 /* 6 */ - .quad 0x0f0e040000010a0b /* 7 */ -#ifdef FULOONG2F - .quad 0x0000000100000001 /* 8 */ -#else - .quad 0x0000010200000102 /* 8 */ -#endif - .quad 0x0000060c00000000 /* 9 */ - .quad 0x2323233f3f1f0200 /* a */ - .quad 0x5f7f232323232323 /* b */ - .quad 0x002a3c0615000000 /* c */ - .quad 0x002a002a002a002a /* d */ - .quad 0x002a002a002a002a /* e */ -#ifdef FULOONG2F - .quad 0x00b40020005b0004 /* f */ -#else - .quad 0x00b40020006d0004 /* f */ -#endif - .quad 0x070007ff00000087 /* 10 */ - .quad 0x000000000016101f /* 11 */ - .quad 0x001c000000000000 /* 12 */ - .quad 0x28e1000200c8006b /* 13 */ - .quad 0x0000204200c8002f /* 14 */ - .quad 0x0000000000030d40 /* 15 */ - .quad 0 /* 16 */ - .quad 0 /* 17 */ - .quad 0 /* 18 */ - .quad 0 /* 19 */ - .quad 0 /* 1a */ - .quad 0 /* 1b */ - .quad 0 /* 1c */ - -/* Dump of GPIO connections. FIXME: Remove useless and macroify. */ -gpio_dump: -#ifdef FULOONG2F - .long 0xffff0000, 0x2eefd110, 0xffff0000, 0xffff0000 - .long 0x2eefd110, 0xffff0000, 0x1000efff, 0xefff1000 - .long 0x3df3c20c, 0xffff0000, 0xffff0000, 0xffff0000 - .long 0x7df3820c, 0x3df3c20c, 0xffff0000, 0x00000000 - .long 0xffff0000, 0xffff0000, 0x3de3c21c, 0x3d83c27c - .long 0x00000000, 0x00000000, 0x00000000, 0x00000000 - .long 0x00000000, 0x00000000, 0x00000000, 0x00000000 - .long 0x00000000, 0x00000000, 0x00000000, 0x00000000 - .long 0xffff0000, 0xffff0000, 0xffff0000, 0xffff0000 - .long 0xffff0000, 0xffff0000, 0x0000ffff, 0xffff0000 - .long 0xefff1000, 0xffff0000, 0xffff0000, 0xffff0000 - .long 0xefff1000, 0xefff1000, 0xffff0000, 0x00000000 - .long 0xffff0000, 0xffff0000, 0xefff1000, 0xefff1000 - .long 0x00000000, 0x00000000, 0x00000000, 0x00000000 - .long 0x00000000, 0x00000000, 0x00000000, 0x00000000 - .long 0x00000000, 0x00000000, 0x00000000, 0x00000000 -#else - .long 0xffff0000, 0x2ffdd002, 0xffff0000, 0xffff0000 - .long 0x2fffd000, 0xffff0000, 0x1000efff, 0xefff1000 - .long 0x3ffbc004, 0xffff0000, 0xffff0000, 0xffff0000 - .long 0x3ffbc004, 0x3ffbc004, 0xffff0000, 0x00000000 - .long 0xffff0000, 0xffff0000, 0x3ffbc004, 0x3f9bc064 - .long 0x00000000, 0x00000000, 0x00000000, 0x00000000 - .long 0x00000000, 0x00000000, 0x00000000, 0x00000000 - .long 0x00000000, 0x00000000, 0x00000000, 0x00000000 - .long 0xffff0000, 0xffff0000, 0xffff0000, 0xffff0000 - .long 0xffff0000, 0xffff0000, 0x0000ffff, 0xffff0000 - .long 0xefff1000, 0xffff0000, 0xffff0000, 0xffff0000 - .long 0xefff1000, 0xefff1000, 0xffff0000, 0x00000000 - .long 0xffff0000, 0xffff0000, 0xefff1000, 0xffff0000 - .long 0x00000000, 0x00000000, 0x00000000, 0x00000000 - .long 0x00000000, 0x00000000, 0x00000000, 0x00000000 - .long 0x00000000, 0x50000000, 0x00000000, 0x00000000 -#endif -gpio_dump_end: - - .p2align 3 - -write_dumpreg: - ld $t2, 0($t6) - sd $t2, 0($t4) - addiu $t4, $t4, GRUB_CPU_LOONGSON_DDR2_REG_STEP - jr $ra - addiu $t6, $t6, GRUB_CPU_LOONGSON_DDR2_REG_SIZE - -continue: - lui $t4, %hi(GRUB_CPU_LOONGSON_DDR2_BASE) - addiu $t4, $t4, %lo(GRUB_CPU_LOONGSON_DDR2_BASE) - lui $t6, %hi(regdump) - - /* 0 */ - bal write_dumpreg - addiu $t6, $t6, %lo(regdump) - - /* 1 */ - ori $a1, $a1, GRUB_SMB_RAM_START_ADDR - move $t8, $zero - lui $t5, 0x0001 - bal read_spd - ori $a0, $zero, GRUB_SMBUS_SPD_MEMORY_NUM_BANKS_ADDR - ori $t7, $zero, 8 - bne $v0, $t7, 1f - ori $t5, $t5, 0x0001 - ori $t8, $t8, GRUB_CPU_LOONGSON_DDR2_REG1_HI_8BANKS -1: - dsll $t8, $t8, 32 - or $t5, $t5, $t8 - sd $t5, 0 ($t4) - addiu $t4, $t4, GRUB_CPU_LOONGSON_DDR2_REG_STEP - - /* 2 */ - bal write_dumpreg - nop - - /* 3 */ - bal write_dumpreg - nop - - /* 4 */ - bal write_dumpreg - nop - - /* 5 */ - /* FIXME: figure termination resistance. */ - ori $t5, $zero, 0x2 - bal read_spd - ori $a0, $zero, GRUB_SMBUS_SPD_MEMORY_NUM_ROWS_ADDR - /* $v0 = 15 - $v0. */ - xori $v0, $v0, 0xf - andi $v0, $v0, 0x7 - sll $v0, $v0, 8 - or $t5, $t5, $v0 - - /* Find the fastest supported CAS latency. */ - bal read_spd - ori $a0, $zero, GRUB_SMBUS_SPD_MEMORY_CAS_LATENCY_ADDR - ori $t0, $zero, GRUB_SMBUS_SPD_MEMORY_CAS_LATENCY_MIN_VALUE - ori $t1, $zero, (1 << GRUB_SMBUS_SPD_MEMORY_CAS_LATENCY_MIN_VALUE) -2: - and $t2, $t1, $v0 - bne $t2, $zero, 1f - ori $t3, $zero, 8 - lui $a0, %hi(no_cas_latency) - beq $t0, $t3, fatal - addiu $a0, $a0, %lo(no_cas_latency) - addiu $t0, $t0, 1 - b 2b - sll $t1, $t1, 1 -1: - sll $t0, $t0, 16 - or $t5, $t5, $t0 - - bal read_spd - ori $a0, $zero, GRUB_SMBUS_SPD_MEMORY_NUM_COLUMNS_ADDR - /* $v0 = 15 - ($v0 + 1) = 14 - $v0. */ - addiu $v0, $v0, 1 - xori $v0, $v0, 0xf - andi $v0, $v0, 0x7 - sll $v0, 24 - or $t5, $t5, $v0 - sd $t5, 0 ($t4) - - addiu $t4, $t4, GRUB_CPU_LOONGSON_DDR2_REG_STEP - - ori $t7, $zero, 0x16 - -1: - ld $t2, 0($t6) - sd $t2, 0($t4) - addiu $t4, $t4, GRUB_CPU_LOONGSON_DDR2_REG_STEP - addiu $t7, $t7, -1 - bne $t7, $zero, 1b - addiu $t6, $t6, GRUB_CPU_LOONGSON_DDR2_REG_SIZE - - lui $t4, %hi(GRUB_CPU_LOONGSON_DDR2_BASE) - ld $t5, (%lo(GRUB_CPU_LOONGSON_DDR2_BASE) + 0x30) ($t4) - ori $t0, $zero, 1 - dsll $t0, $t0, 40 - or $t5, $t5, $t0 - sd $t5, (%lo(GRUB_CPU_LOONGSON_DDR2_BASE) + 0x30) ($t4) - - /* Desactivate DDR2 registers. */ - lui $t0, %hi (GRUB_CPU_LOONGSON_CORECFG) - ld $t1, %lo (GRUB_CPU_LOONGSON_CORECFG) ($t0) - ori $t1, $t1, GRUB_CPU_LOONGSON_CORECFG_DISABLE_DDR2_SPACE - sd $t1, %lo (GRUB_CPU_LOONGSON_CORECFG) ($t0) - - /* Enable cache. */ - mfc0 $t0, GRUB_CPU_LOONGSON_COP0_CACHE_CONFIG - addiu $t1, $zero, ~GRUB_CPU_LOONGSON_CACHE_TYPE_MASK - and $t0, $t1, $t1 - /* Set line size to 32 bytes and disabled cache. */ - ori $t0, $t0, (GRUB_CPU_LOONGSON_COP0_CACHE_CONFIG_ILINESIZE \ - | GRUB_CPU_LOONGSON_COP0_CACHE_CONFIG_DLINESIZE \ - | GRUB_CPU_LOONGSON_CACHE_ACCELERATED) - mtc0 $t0, GRUB_CPU_LOONGSON_COP0_CACHE_CONFIG - - /* Invalidate all I-cache entries. */ - srl $t1, $t0, GRUB_CPU_LOONGSON_COP0_CACHE_ISIZE_SHIFT - andi $t1, $t1, GRUB_CPU_LOONGSON_COP0_CACHE_SIZE_MASK - ori $t2, $zero, (1 << (GRUB_CPU_LOONGSON_COP0_CACHE_SIZE_OFFSET \ - - GRUB_CPU_LOONGSON_CACHE_LINE_SIZE_LOG_BIG \ - - GRUB_CPU_LOONGSON_I_CACHE_LOG_WAYS)) - sll $t1, $t2, $t1 - lui $t2, 0x8000 - -1: - cache GRUB_CPU_LOONGSON_COP0_I_INDEX_INVALIDATE, 0($t2) - addiu $t1, $t1, -1 - bne $t1, $zero, 1b - addiu $t2, $t2, (1 << GRUB_CPU_LOONGSON_COP0_I_INDEX_BIT_OFFSET) - - /* Invalidate all D-cache entries. */ - srl $t1, $t0, GRUB_CPU_LOONGSON_COP0_CACHE_DSIZE_SHIFT - andi $t1, $t1, GRUB_CPU_LOONGSON_COP0_CACHE_SIZE_MASK - ori $t2, $zero, (1 << (GRUB_CPU_LOONGSON_COP0_CACHE_SIZE_OFFSET \ - - GRUB_CPU_LOONGSON_CACHE_LINE_SIZE_LOG_BIG \ - - GRUB_CPU_LOONGSON_D_CACHE_LOG_WAYS)) - sll $t1, $t2, $t1 - lui $t2, 0x8000 - mtc0 $zero, GRUB_CPU_LOONGSON_COP0_CACHE_TAGLO - mtc0 $zero, GRUB_CPU_LOONGSON_COP0_CACHE_TAGHI -1: - /* All four ways. */ - cache GRUB_CPU_LOONGSON_COP0_D_INDEX_TAG_STORE, 0($t2) - cache GRUB_CPU_LOONGSON_COP0_D_INDEX_TAG_STORE, 1($t2) - cache GRUB_CPU_LOONGSON_COP0_D_INDEX_TAG_STORE, 2($t2) - cache GRUB_CPU_LOONGSON_COP0_D_INDEX_TAG_STORE, 3($t2) - addiu $t1, $t1, -1 - bne $t1, $zero, 1b - addiu $t2, $t2, (1 << GRUB_CPU_LOONGSON_COP0_D_INDEX_BIT_OFFSET) - - /* Invalidate all S-cache entries. */ - ori $t1, $zero, (1 << (GRUB_CPU_LOONGSON_SECONDARY_CACHE_LOG_SIZE \ - - GRUB_CPU_LOONGSON_CACHE_LINE_SIZE_LOG_BIG \ - - GRUB_CPU_LOONGSON_S_CACHE_LOG_WAYS)) - lui $t2, 0x8000 - mtc0 $zero, GRUB_CPU_LOONGSON_COP0_CACHE_TAGLO - mtc0 $zero, GRUB_CPU_LOONGSON_COP0_CACHE_TAGHI -1: - /* All four ways. */ - cache GRUB_CPU_LOONGSON_COP0_S_INDEX_TAG_STORE, 0($t2) - cache GRUB_CPU_LOONGSON_COP0_S_INDEX_TAG_STORE, 1($t2) - cache GRUB_CPU_LOONGSON_COP0_S_INDEX_TAG_STORE, 2($t2) - cache GRUB_CPU_LOONGSON_COP0_S_INDEX_TAG_STORE, 3($t2) - addiu $t1, $t1, -1 - bne $t1, $zero, 1b - addiu $t2, $t2, (1 << GRUB_CPU_LOONGSON_COP0_D_INDEX_BIT_OFFSET) - - /* Finally enable cache. */ - mfc0 $t0, GRUB_CPU_LOONGSON_COP0_CACHE_CONFIG - addiu $t1, $zero, ~GRUB_CPU_LOONGSON_CACHE_TYPE_MASK - and $t0, $t1, $t1 - ori $t0, $t0, GRUB_CPU_LOONGSON_CACHE_CACHED - mtc0 $t0, GRUB_CPU_LOONGSON_COP0_CACHE_CONFIG - - lui $a0, %hi(caches_enabled) - bal message - addiu $a0, $a0, %lo(caches_enabled) - - /* Set ROM delay cycles to 1. */ - lui $t0, %hi(GRUB_CPU_LOONGSON_LIOCFG) - lw $t1, %lo(GRUB_CPU_LOONGSON_LIOCFG) ($t0) - addiu $t2, $zero, ~(GRUB_CPU_LOONGSON_ROM_DELAY_MASK \ - << GRUB_CPU_LOONGSON_ROM_DELAY_OFFSET) - and $t1, $t1, $t2 - ori $t1, $t1, (1 << GRUB_CPU_LOONGSON_ROM_DELAY_OFFSET) - sw $t1, %lo(GRUB_CPU_LOONGSON_LIOCFG) ($t0) - - addiu $a0, $zero, -1 - addiu $a1, $zero, -1 - - /* Take advantage of cache. */ - lui $t0, %hi(cached_continue - 0x20000000) - addiu $t0, $t0, %lo(cached_continue - 0x20000000) - jr $t0 -#ifdef FULOONG2F - addiu $a2, $zero, -(1 + GRUB_ARCH_MACHINE_FULOONG2F) -#else - addiu $a2, $zero, -(1 + GRUB_ARCH_MACHINE_YEELOONG) -#endif - -cached_continue: diff --git a/thirdparty/grub-2.04/grub-core/boot/mips/startup_raw.S b/thirdparty/grub-2.04/grub-core/boot/mips/startup_raw.S deleted file mode 100644 index 6a81b3733..000000000 --- a/thirdparty/grub-2.04/grub-core/boot/mips/startup_raw.S +++ /dev/null @@ -1,300 +0,0 @@ -/* startup.S - Startup code for the MIPS. */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include - -#define BASE_ADDR 8 - -.extern __bss_start -.extern _end -.extern _edata - - .globl __start, _start, start - .set noreorder - .set nomacro -__start: -_start: -start: - - bal codestart - nop -base: - .org GRUB_DECOMPRESSOR_MACHINE_COMPRESSED_SIZE -compressed_size: - .long 0 - .org GRUB_DECOMPRESSOR_MACHINE_UNCOMPRESSED_SIZE -uncompressed_size: - .long 0 - .org GRUB_DECOMPRESSOR_MACHINE_UNCOMPRESSED_ADDR -uncompressed_addr: - .long 0 -codestart: - /* Save our base. */ - move $s0, $ra - - /* Parse arguments. Has to be done before relocation. - So need to do it in asm. */ -#ifdef GRUB_MACHINE_MIPS_QEMU_MIPS - lui $t0, %hi (((16 << 20) - 264 + 4) | 0x80000000) - lw $t1, %lo (((16 << 20) - 264 + 4) | 0x80000000) ($t0) - - lui $t2, 0x1234 - ori $t2, 0x5678 - - bne $t1, $t2, 1f - nop - - lui $t0, %hi (((16 << 20) - 264) | 0x80000000) - b 2f - lw $s4, %lo (((16 << 20) - 264) | 0x80000000) ($t0) - -1: - li $s4, 0 -2: -#endif - -#ifdef GRUB_MACHINE_MIPS_LOONGSON - move $s2, $zero - move $s3, $zero - move $s4, $zero - move $s5, $zero - move $s7, $zero - - /* $a2 has the environment. */ - addiu $t0, $zero, -0x10 - and $t1, $a2, $t0 - beq $t0, $t1, argfw - nop - move $t0, $a2 -argcont: - lw $t1, 0($t0) - beq $t1, $zero, argdone - nop -#define DO_PARSE(str, reg) \ - addiu $t2, $s0, (str-base);\ - bal parsestr;\ - nop ;\ - beq $v0, $zero, 1f;\ - nop ;\ - b 2f;\ - move reg, $v0; \ -1: -#define DO_CHECKT1(str, val) \ - move $t6, $t1 ;\ - addiu $t7, $s0, (str - base);\ - bal do_check ;\ - li $t2, val - - DO_PARSE (busclockstr, $s2) - DO_PARSE (cpuclockstr, $s3) - DO_PARSE (memsizestr, $s4) - DO_PARSE (highmemsizestr, $s5) - DO_CHECKT1 (pmon_yeeloong_verstr, GRUB_ARCH_MACHINE_YEELOONG) - DO_CHECKT1 (pmon_fuloong2f_verstr, GRUB_ARCH_MACHINE_FULOONG2F) -2: - b argcont - addiu $t0, $t0, 4 -parsestr: - move $v0, $zero - move $t3, $t1 -3: - lb GRUB_ASM_T4, 0($t2) - lb GRUB_ASM_T5, 0($t3) - addiu $t2, $t2, 1 - addiu $t3, $t3, 1 - beq GRUB_ASM_T5, $zero, 1f - nop - beq GRUB_ASM_T5, GRUB_ASM_T4, 3b - nop - bne GRUB_ASM_T4, $zero, 1f - nop - - addiu $t3, $t3, 0xffff -digcont: - lb GRUB_ASM_T5, 0($t3) - /* Substract '0' from digit. */ - addiu GRUB_ASM_T5, GRUB_ASM_T5, 0xffd0 - bltz GRUB_ASM_T5, 1f - nop - addiu GRUB_ASM_T4, GRUB_ASM_T5, 0xfff7 - bgtz GRUB_ASM_T4, 1f - nop - /* Multiply $v0 by 10 with bitshifts. */ - sll $v0, $v0, 1 - sll GRUB_ASM_T4, $v0, 2 - addu $v0, $v0, GRUB_ASM_T4 - addu $v0, $v0, GRUB_ASM_T5 - addiu $t3, $t3, 1 - b digcont - nop -1: - jr $ra - nop -busclockstr: .asciz "busclock=" -cpuclockstr: .asciz "cpuclock=" -memsizestr: .asciz "memsize=" -highmemsizestr: .asciz "highmemsize=" -machtype_yeeloong_str1: .asciz "machtype=8.9" -machtype_yeeloong_str2: .asciz "machtype=lemote-yeeloong-" -machtype_fuloong2f_str: .asciz "machtype=lemote-fuloong-2f" -machtype_fuloong2e_str: .asciz "machtype=lemote-fuloong-2e" -pmon_yeeloong_str: .asciz "PMON_VER=LM8" -pmon_fuloong2f_str: .asciz "PMON_VER=LM6" -pmon_yeeloong_verstr: .asciz "Version=LM8" -pmon_fuloong2f_verstr: .asciz "Version=LM6" - .p2align 2 - -argdone: - beq $a0, $zero, cmdlinedone - nop -#define DO_CHECKA1(str, val) \ - lw $t6, 0($a1) ;\ - addiu $t7, $s0, (str - base);\ - bal do_check ;\ - li $t2, val - DO_CHECKA1 (machtype_yeeloong_str1, GRUB_ARCH_MACHINE_YEELOONG) - DO_CHECKA1 (machtype_yeeloong_str2, GRUB_ARCH_MACHINE_YEELOONG) - DO_CHECKA1 (pmon_yeeloong_str, GRUB_ARCH_MACHINE_YEELOONG) - DO_CHECKA1 (machtype_fuloong2f_str, GRUB_ARCH_MACHINE_FULOONG2F) - DO_CHECKA1 (machtype_fuloong2e_str, GRUB_ARCH_MACHINE_FULOONG2E) - DO_CHECKA1 (pmon_fuloong2f_str, GRUB_ARCH_MACHINE_FULOONG2F) - addiu $a0, $a0, -1 - b argdone - addiu $a1, $a1, 4 -do_check: - lb GRUB_ASM_T4, 0($t7) - beq GRUB_ASM_T4, $zero, 1f - lb $t3, 0($t6) - bne $t3, GRUB_ASM_T4, 2f - addiu $t6, $t6, 1 - b do_check - addiu $t7, $t7, 1 -1: - move $s7, $t2 -2: - jr $ra - nop -argfw: - not $s7, $a2 -cmdlinedone: -#endif -#ifdef GRUB_MACHINE_ARC - lui $t0, %hi(_start - 256) - addiu $t0, $t0, %lo(_start - 256) - addiu $t3, $t0, 255 - lw $t1, 0($a1) -1: - bne $t0, $t3, 2f - lb $t2, 0($t1) - move $t2, $zero -2: - sb $t2, 0($t0) - addiu $t0, $t0, 1 - bnez $t2, 1b - addiu $t1, $t1, 1 -#endif - /* Copy the decompressor. */ - lui $t1, %hi(base) - addiu $t1, $t1, %lo(base) - lui $t3, %hi(__bss_start) - addiu $t3, $t3, %lo(__bss_start) - move $t2, $s0 - -1: - beq $t1, $t3, 2f - lb GRUB_ASM_T4, 0($t2) - sb GRUB_ASM_T4, 0($t1) - addiu $t1, $t1, 1 - b 1b - addiu $t2, $t2, 1 -2: - /* Clean out its BSS. */ - lui $t1, %hi(__bss_start) - addiu $t1, $t1, %lo(__bss_start) - lui $t2, %hi(_end) - addiu $t2, $t2, %lo(_end) -1: - beq $t1, $t2, 2f - nop - sb $zero, 0($t1) - b 1b - addiu $t1, $t1, 1 -2: - lui $a0, %hi(base) - addiu $a0, $a0, %lo(base) - lui $a1, %hi(_end) - addiu $a1, %lo(_end) - subu $a1,$a1,$a0 - -#include "../../kern/mips/cache_flush.S" - - /* Decompress the payload. */ - lui $a0, %hi(_edata) - addiu $a0, $a0, %lo(_edata) - - lui $t0, %hi(base) - addiu $t0, $t0, %lo(base) - subu $a0, $a0, $t0 - addu $a0, $a0, $s0 - - lw $a1, (GRUB_DECOMPRESSOR_MACHINE_UNCOMPRESSED_ADDR - BASE_ADDR)($s0) - lw $a2, (GRUB_DECOMPRESSOR_MACHINE_COMPRESSED_SIZE - BASE_ADDR)($s0) - lw $a3, (GRUB_DECOMPRESSOR_MACHINE_UNCOMPRESSED_SIZE - BASE_ADDR)($s0) - move $s1, $a1 - - /* $a0 contains source compressed address, $a1 is destination, - $a2 is compressed size, $a3 is uncompressed size. - */ - move $s6, $a3 - - lui $t9, %hi(EXT_C(grub_decompress_core)) - addiu $t9, $t9, %lo(EXT_C(grub_decompress_core)) - -#ifdef GRUB_MACHINE_ARC - lui $sp, %hi(_start - 512) - jalr $t9 - addiu $sp, $sp, %lo(_start - 512) -#else - lui $sp, %hi(_start - 256) - jalr $t9 - addiu $sp, $sp, %lo(_start - 256) -#endif - move $a0, $s1 - move $a1, $s6 - -#include "../../kern/mips/cache_flush.S" - - lui $t1, %hi(GRUB_MACHINE_LINK_ADDR) - addiu $t1, %lo(GRUB_MACHINE_LINK_ADDR) - - jr $t1 - nop - /* Ensure that .data section is created. In code we suppose that _edata - is first location not in decompressor image. Strictly speaking it's - _edata only when .data is present and _etext otherwise. But checking - for .data presence would cost more in code than it is to ensure that - .data is created. - */ - .data - .long 0 diff --git a/thirdparty/grub-2.04/grub-core/boot/powerpc/bootinfo.txt.in b/thirdparty/grub-2.04/grub-core/boot/powerpc/bootinfo.txt.in deleted file mode 100644 index bc831daa9..000000000 --- a/thirdparty/grub-2.04/grub-core/boot/powerpc/bootinfo.txt.in +++ /dev/null @@ -1,73 +0,0 @@ - -@PACKAGE@ @VERSION@ -@PACKAGE@ @VERSION@ -boot &device;:\boot\grub\powerpc.elf - - -FF FF FF FF FF FF FF FF FF FF 92 6D 6D 6D 6D 6D 6D 6D 6D 6D DB FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF B6 92 6D 92 92 92 DB FF FF FF FF FF FF FF FF FF FF -FF FF FF FF FF FF FF DB 6D 92 DB FF FF FF FF FF DB B6 FF FF 92 6D FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF 92 92 DB FF FF FF FF FF B6 6D 92 DB FF FF FF FF FF FF FF -FF FF FF FF FF FF 49 92 FF FF B6 B6 24 00 24 00 00 00 00 49 6D DB 6D 92 DB B6 DB FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF B6 6D DB 92 6D 24 49 92 6D 6D FF FF FF 92 6D FF FF FF FF FF FF -FF FF FF FF B6 49 DB FF FF 24 00 00 00 92 92 B6 FF DB DB FF DB B6 FF DB 92 49 DB FF FF FF FF FF FF FF FF FF FF FF FF FF DB 49 6D B6 FF 6D B6 6D 6D 92 24 24 00 00 24 6D FF FF 49 DB FF FF FF FF -FF FF FF B6 49 FF DB 49 24 00 49 6D B6 FF B6 92 6D 6D 6D 92 DB DB DB B6 6D 92 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF 6D DB FF FF FF FF DB B6 B6 B6 FF DB 24 00 00 92 B6 FF 49 FF FF FF FF -FF FF DB 49 FF FF 49 00 00 24 FF FF 6D 49 92 DB FF FF FF DB 92 92 92 B6 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF 92 92 92 6D 6D B6 DB DB B6 6D 6D FF FF 24 00 00 DB FF 49 FF FF FF -FF FF 49 FF FF 49 00 00 6D DB DB 49 DB FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF 92 B6 B6 24 00 24 DB DB 6D FF FF -FF B6 92 FF B6 00 00 24 FF DB 6D FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF 92 B6 FF 00 00 49 FF 92 B6 FF -FF 6D FF FF 92 00 00 49 FF 6D FF FF FF FF FF FF FF FF FF FF FF FF FF B6 92 92 6D 6D 6D 6D DB FF FF FF FF FF FF B6 92 92 92 92 92 FF FF FF FF FF FF FF FF FF FF FF FF 6D FF 24 00 24 FF FF 6D FF -DB 92 FF DB 00 00 49 FF 92 DB FF FF FF FF FF FF FF FF FF FF FF DB 6D B6 FF FF FF FF FF FF 92 6D FF FF FF FF 6D B6 FF FF FF FF FF B6 B6 FF FF FF FF FF FF FF FF FF FF FF 92 DB 00 00 92 FF 92 DB -92 FF FF B6 00 00 6D FF 6D FF FF FF FF FF FF FF FF FF FF FF DB 6D FF FF FF 92 49 49 49 92 FF FF 49 DB DB 24 DB FF B6 49 49 92 FF FF DB 92 FF FF FF FF FF FF FF FF FF FF 92 FF 00 00 6D FF DB 92 -6D FF FF FF 00 00 49 92 DB FF FF FF FF FF FF FF FF FF FF DB 6D FF FF 6D 00 00 00 00 00 00 00 B6 FF 49 00 24 24 49 24 00 00 00 00 6D FF DB 92 FF FF FF FF FF FF FF FF FF DB B6 00 00 92 FF FF 6D -6D FF FF 24 00 00 DB 6D FF FF FF FF FF FF FF FF FF FF DB 6D FF DB 00 00 00 00 00 00 00 00 00 00 B6 FF DB B6 49 92 24 24 00 00 00 00 24 FF DB 92 FF FF FF FF FF FF FF FF FF 92 6D 00 00 DB FF 6D -6D FF FF 24 00 00 FF 6D FF FF FF FF FF FF FF FF FF FF 49 FF B6 00 00 00 00 00 00 00 00 00 00 00 00 92 FF FF 92 DB DB 24 24 00 00 00 00 24 FF 92 DB FF FF FF FF FF FF FF FF 92 92 00 00 FF FF 6D -6D FF FF B6 00 00 92 6D FF FF FF FF FF FF FF FF FF 49 FF DB 00 00 00 00 00 00 00 00 00 00 00 00 00 92 FF FF B6 B6 FF 92 24 00 00 00 00 00 49 FF 6D FF FF FF FF FF FF FF FF 92 24 00 49 FF FF 6D -6D FF FF 00 00 00 DB 6D FF FF FF FF FF FF FF FF 6D DB DB 00 00 00 00 00 00 00 00 00 00 00 00 00 00 92 FF FF DB B6 FF B6 49 00 00 00 00 00 00 6D FF 6D FF FF FF FF FF FF FF 92 92 00 00 DB FF 6D -6D FF FF DB 00 00 B6 6D FF FF FF FF FF FF FF 6D B6 FF 24 00 00 00 00 00 00 00 00 00 00 00 24 B6 DB 6D FF FF FF FF FF 6D 49 24 00 00 00 00 00 00 B6 DB B6 FF FF FF FF FF B6 DB 24 00 92 FF FF 6D -6D FF FF 6D 00 00 24 DB 92 FF FF FF FF FF 92 92 FF 49 00 00 00 00 00 49 B6 FF FF DB B6 DB FF FF FF B6 92 FF FF DB 92 FF FF FF 49 6D 92 24 00 00 00 DB B6 DB FF FF FF FF 6D FF 00 00 00 DB FF 6D -6D FF FF 92 24 00 49 FF 6D B6 FF FF FF 6D 92 FF 49 00 00 49 DB FF FF FF FF FF FF B6 FF FF FF FF FF FF B6 6D 92 92 FF FF FF FF 6D FF FF FF DB 24 00 24 FF 92 B6 FF FF 92 B6 FF 00 00 B6 FF FF 6D -92 FF FF FF 00 00 24 92 FF 92 6D 92 49 B6 DB 24 00 24 DB FF FF FF FF FF DB 92 24 00 FF FF FF FF 6D 6D FF FF FF 6D 6D FF FF B6 DB 6D FF FF FF FF 00 00 24 DB B6 6D 6D B6 DB 00 00 00 6D FF FF 6D -DB 92 FF DB 49 00 00 00 B6 FF FF DB FF 6D 00 00 6D FF FF FF FF FF FF FF 24 92 00 49 FF FF FF FF FF 6D B6 FF FF 6D 6D FF 6D 00 DB DB 92 FF FF FF DB 00 00 00 6D FF FF DB 6D 00 00 24 FF FF 92 DB -FF 49 FF FF 6D 00 00 00 24 49 B6 FF 24 00 00 6D FF FF FF FF FF FF FF 49 92 B6 00 DB FF FF DB DB FF FF B6 FF FF FF FF FF 00 49 DB FF 92 FF FF FF FF 92 00 00 00 24 6D 00 00 00 00 24 DB FF 49 FF -FF 92 B6 FF 92 49 00 00 00 00 00 24 00 00 00 FF FF FF FF FF FF FF 92 6D FF B6 DB FF DB B6 DB B6 B6 FF FF B6 FF FF FF DB 00 B6 DB FF 92 FF FF FF FF FF 24 00 00 00 00 00 00 00 00 B6 FF 92 B6 FF -FF FF 49 FF FF 49 24 00 00 00 00 00 00 00 B6 FF FF FF FF FF FF FF B6 FF FF FF FF FF FF FF FF FF 6D FF FF 6D FF FF FF DB 24 FF FF FF 92 FF FF FF FF FF 6D 00 00 00 00 00 00 00 DB FF FF 6D FF FF -FF FF DB 6D FF FF 6D 49 00 00 00 00 00 24 FF FF FF FF FF FF FF FF FF FF FF FF FF DB 6D 49 24 24 24 FF FF DB FF FF FF FF 24 24 00 00 92 FF FF FF FF FF DB 00 00 00 00 00 00 FF DB FF 6D FF FF FF -FF FF FF 92 B6 FF FF DB 49 24 00 00 00 92 FF FF FF FF FF FF FF FF FF DB FF FF FF 49 49 24 00 24 FF FF FF FF FF FF FF FF 49 6D 00 24 49 FF FF FF FF FF FF 49 00 24 6D 6D B6 FF FF 6D B6 FF FF FF -FF FF FF FF 6D B6 FF FF DB 92 B6 49 00 FF FF FF FF FF FF FF FF FF FF B6 FF FF FF 92 DB 92 00 24 FF FF FF FF FF FF FF FF FF 00 00 6D FF FF FF FF FF FF FF DB 00 6D DB FF FF FF 6D B6 FF FF FF FF -FF FF FF FF FF 92 6D FF FF FF FF B6 49 FF FF FF FF FF FF FF FF FF FF 6D FF FF FF FF B6 92 92 B6 B6 DB FF FF FF FF FF FF FF B6 6D 49 6D FF FF FF FF FF FF FF 92 24 FF FF B6 6D DB FF FF FF FF FF -FF FF FF FF FF FF DB 49 6D B6 FF 6D 92 FF FF FF FF FF FF FF FF FF DB 6D FF FF FF FF FF FF FF FF FF 92 FF FF FF FF FF FF FF FF 6D DB 92 FF FF FF FF FF FF FF FF 6D 49 6D DB FF FF FF FF FF FF FF -FF FF FF FF FF FF FF FF DB 92 49 00 FF FF FF FF FF FF FF FF FF FF 6D 92 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF 92 92 6D FF FF FF FF FF FF FF DB 92 FF FF FF FF FF FF FF FF FF -FF FF FF FF FF FF FF FF FF FF FF 49 FF FF FF FF FF FF FF FF FF DB 00 92 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF 92 B6 92 6D B6 FF FF FF FF FF FF 49 DB FF FF FF FF FF FF FF FF -FF FF FF FF FF FF FF FF FF FF FF 24 FF FF FF FF FF FF FF FF FF 49 DB 92 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF 6D 6D FF 92 49 92 FF FF FF FF DB 49 DB FF FF FF FF FF FF FF -FF FF FF FF FF FF FF FF FF FF B6 49 FF FF FF FF FF FF FF FF 6D 92 FF 92 FF FF FF FF FF FF FF FF FF FF B6 6D 49 6D DB FF FF FF FF FF 6D 49 FF FF FF DB 6D 6D 92 92 6D 49 FF FF FF FF FF FF FF FF -FF FF FF FF FF FF FF FF FF FF 24 FF FF FF FF FF FF FF FF 6D 92 FF FF FF DB FF FF FF FF FF FF FF FF 6D 6D FF FF FF 92 6D FF FF FF FF FF 49 92 B6 92 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF -FF FF FF FF FF FF FF FF FF DB 6D FF FF FF FF FF FF DB 24 92 FF FF FF FF FF FF FF FF FF FF FF FF FF 49 49 6D DB FF FF DB 6D B6 FF FF FF FF B6 B6 DB 49 FF FF FF FF FF FF FF FF FF FF FF FF FF FF -FF FF FF FF FF FF FF FF FF 24 B6 FF FF FF FF B6 49 49 24 B6 FF FF FF FF FF FF FF FF FF FF FF FF FF 00 49 FF DB DB FF FF FF B6 92 FF FF FF FF FF FF 92 DB FF FF FF FF FF FF FF FF FF FF FF FF FF -FF FF FF FF FF FF FF FF 24 B6 FF FF B6 24 00 6D DB FF 6D 92 FF FF FF FF FF FF FF FF FF FF FF FF FF 6D DB DB 00 00 24 FF FF FF FF B6 FF FF FF FF FF B6 B6 FF FF FF FF FF FF FF FF FF FF FF FF FF -FF FF FF FF FF FF FF B6 B6 DB B6 6D 49 49 92 FF FF FF B6 6D FF FF FF FF FF FF FF 92 92 FF FF FF FF FF FF FF 49 92 DB 49 FF FF FF FF FF FF FF FF FF 92 B6 FF FF FF FF FF FF FF FF FF FF FF FF FF -FF FF FF FF FF FF FF 92 24 49 49 6D FF 6D 92 FF FF FF B6 6D FF FF FF FF FF FF FF FF FF FF DB FF FF FF FF FF FF FF FF B6 FF FF FF FF FF FF FF FF FF 49 FF FF FF FF FF FF FF FF FF FF FF FF FF FF -FF FF FF FF FF FF FF FF FF FF FF FF FF 6D 92 FF FF FF B6 6D FF FF FF FF FF FF FF FF FF FF B6 DB DB FF FF FF FF FF FF FF DB FF FF FF FF FF FF FF 6D 92 FF FF FF FF FF FF FF FF FF FF FF FF FF FF -FF FF FF FF FF FF FF FF FF FF FF FF FF 6D 92 FF FF FF FF 24 92 FF FF FF FF FF FF FF FF FF FF 6D B6 FF FF FF FF FF FF FF FF FF FF FF FF FF DB 49 92 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF -FF FF FF FF FF FF FF FF FF FF FF FF FF 6D B6 FF FF FF FF B6 6D FF FF FF FF FF FF FF FF FF FF B6 92 FF FF FF FF FF FF FF FF FF FF FF DB 6D 00 B6 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF -FF FF FF FF FF FF FF FF FF FF FF FF FF 6D 92 FF FF FF FF DB 49 FF FF FF FF FF FF FF FF FF FF FF 49 FF FF FF FF FF FF FF FF FF FF FF FF FF DB 49 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF -FF FF FF FF FF FF FF FF FF FF FF FF FF 92 6D FF FF FF FF FF 00 24 DB FF FF FF FF FF FF FF FF FF DB 6D FF FF FF FF FF FF FF FF FF FF FF FF FF FF 49 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF -FF FF FF FF FF FF FF FF FF FF FF FF FF B6 49 FF FF FF FF FF FF 92 6D FF FF FF FF FF FF FF FF FF FF 6D B6 FF FF FF FF FF FF FF FF FF FF FF FF B6 49 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF -FF FF FF FF FF FF FF FF FF FF FF FF FF FF 00 FF FF FF FF FF FF FF 49 00 DB FF FF FF FF FF FF FF FF FF 6D 6D B6 DB DB DB 92 49 00 00 00 00 00 49 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF -FF FF FF FF FF FF FF FF FF FF FF FF FF FF 49 DB FF FF FF FF FF FF FF 24 FF FF FF FF FF FF FF FF FF FF FF DB 6D 49 49 6D B6 DB FF FF FF B6 6D FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF -FF FF FF FF FF FF FF FF FF FF FF FF FF FF 92 92 FF FF FF FF FF FF B6 6D FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF 6D FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF -FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF 24 FF FF FF FF FF FF DB 00 B6 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF DB 92 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF -FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF 92 B6 FF FF FF FF FF FF DB 6D 00 49 FF FF FF FF FF FF FF FF FF FF FF FF DB B6 92 6D 6D 6D 49 DB FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF -FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF 49 FF FF FF FF FF FF FF FF 49 00 92 FF FF FF FF FF FF FF FF 49 00 00 00 00 00 49 B6 DB FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF -FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF DB 6D FF FF FF FF FF FF FF FF 6D 6D FF B6 B6 FF FF FF FF FF FF 92 92 FF FF 00 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF -FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF 92 B6 FF FF FF FF FF FF DB 00 DB 6D 00 B6 FF FF FF FF FF FF FF FF FF FF 24 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF -FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF 92 DB FF FF FF FF FF 92 00 FF 24 00 00 49 FF FF FF FF FF FF FF FF FF B6 B6 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF -FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF 92 FF FF FF FF FF FF 49 24 24 00 00 6D FF FF FF FF FF FF FF DB FF DB 6D FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF -FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF B6 FF FF FF FF FF FF 6D 00 24 24 24 FF FF FF FF FF FF DB B6 DB 49 B6 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF -FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF B6 00 B6 00 49 DB FF FF FF DB 24 6D 24 B6 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF -FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF 00 B6 6D 00 00 DB FF 6D 00 00 00 DB FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF -FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF DB 00 6D FF FF 00 00 DB 49 00 00 00 00 B6 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF -FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF 92 DB FF FF 6D 00 00 92 24 00 00 00 00 00 B6 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF -FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF B6 FF FF 00 6D 00 00 24 00 00 00 00 00 00 24 92 DB FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF -FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF 6D DB 00 00 00 00 00 00 00 00 00 00 92 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF -FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF DB 00 24 00 00 6D 00 00 00 B6 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF -FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF DB 49 92 6D 6D DB B6 92 92 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF - - - diff --git a/thirdparty/grub-2.04/grub-core/boot/powerpc/grub.chrp.in b/thirdparty/grub-2.04/grub-core/boot/powerpc/grub.chrp.in deleted file mode 100644 index 9b2218352..000000000 --- a/thirdparty/grub-2.04/grub-core/boot/powerpc/grub.chrp.in +++ /dev/null @@ -1,172 +0,0 @@ - - -MacRISC MacRISC3 MacRISC4 - - -@PACKAGE@ @VERSION@ - - -3434 -00000000000000F781FB8181818181FBFAF500000000000000000000000000000000000000F6FAFAFAFA81F9F600000000000000 -0000000000F8FBF9F500F95656FCFB5656FBF800000000000000000000000000000000F5FAF9F5F7F600F6F6F9FAF70000000000 -000000F5FBFA0056FDFEFEFDFDFAAC81FB56568181560000000000000000000000F9F9F9F7FCFDFEFEFEFFFC81F656FA00000000 -0000F5AC2BF7FBFEFEFD2BF6568181F9F7F6F6F8FBF50000000000000000000000FAF700F600F5F7F7F6F7FEFFACF82BFB000000 -0000FC2BF5FEFFFFF5F7FC81F70000F7F9FAFAF8000000000000000000000000000056F9F9FAF9F7F7FA812BF7FFFF56F7FA0000 -005656F5FEFFAC2BF9FA000000000000000000000000000000000000000000000000000000000000000000FA56FAFEFEF8F9F700 -00FB00F7FFFF56F9F800000000000000000000F656FAFA56F50000000000F5F8F9F8F5000000000000000000F9F7FCFFFB00FB00 -F8F800ACFFACF6FA000000000000000000F6FA562BF5F5F781FA000000F9FA2B00F556F9F5000000000000000081F8FFFEF6562B -810000FFFFF9FAF500000000000000002B8100F5F9FCACFBF82BFBF6FCFAF6FAFC81F600FA2B000000000000002BF8FEFFF8F5FA -FA00F5FEFFFA8100000000000000002B8100F9FEFFFFFFFFFFFBF6FDFEACFDFEFFFFFFFBF581F600000000000000F9FEFFF700FA -FA00FBFFFEF6F900000000000000F6FB00FCFFFFFFFFFFFFFFFFFCF600FCF7ACFEFFFFFFFDF6810000000000000056F9FFAC00FA -FA00F6FFFFF856000000000000F5FBF5ACFFFFFFFFFFFFFFFFFFFF2B002BF8F5ACFFFFFFFFFDF6FA000000000000F9FCFF560081 -FA0081FFFFF8F9000000000000FBF6FBFFFFFFFFFFFFFFFFFFFFFFF800F55600FCFFFFFFFFFF81F8F80000000000F981FFAC0081 -FA0000FEFEF8FB0000000000812BFAFFFFFFFFFFFFFEFFFFFDF92BFA0000F6F981ACFEFFFFFFFF56F9F600000000F9FDFF2B0081 -FA00FAFFFF81812B000000FAF8F9FFFFFEACFBF80000F500000000F9F900562B0000FCF7F9ACFFFF2BF9F50000F9F6FEFFFB0081 -810000FCFFFBF6FB56F7FBF8F9FFFE5600000000F5FAAC000000F82BF6FAFBF800F556F80000F9FFFE2BFAFAFAF8FAFFFEF60081 -FAF6F5ACFFFFAC00F856F7ACFFFCF500000000FAFCFFFC00000056AC00F581F92BFEF9FAF6000081FFFFFBF6F62BFFFFACF6F6FA -F6FA00FAFFFFFFACFA56FFFFAC0000000000F6FD2BFEF6F5565600F5F800F60081FEF7F656000000FDFFFFFDFDFFFFFFAC0081F5 -0081F52BFDFFFFFFFFFFFFFFF60000000000FBF6F6F5F656F52BF900FA000000FCFAF5F656000000F7FFFFFFFFFFFFFDF7F68100 -00F6FB00F8FDFFFFFFFFFF810000000000F6F5000000F52B56F9FC00F7F70000FCF881FCF500000000FEFFFFFFFFAC5600FBF500 -000056F900F8ACFDFFFFFFF5000000000000002B0000FDFEFFFE560000F60000F9ACFFFE810000000081FFFEFDFAF800FAF70000 -000000FAF9002B56FAFDFC0000000000000000F80000FBF5FEFEF5000000000000ACFFFA2B0000000000FEFB2BF5008156000000 -00000000F9FBF600F6FBF800000000000000F7F8000000F9F9F9F82B0000000000F6ACACF70000000000F7FD2BFA812B00000000 -0000000000F681FCFBFD0000000000000000FBF6000000000000F52B000000000000F92B810000000000008181F6000000000000 -0000000000000000F6FC00000000000000F6FF0000000000000000000000000000000081FBFB2B00000000F7F900000000000000 -000000000000000000FC00000000000000FCFAF600000000000000000000000000000056ACF581FBF700000081FB000000000000 -0000000000000000FAF90000000000008156F5F8000000000000002BFBFCFBF800000000FD2B000056FB8181FBF8000000000000 -0000000000000000AC0000000000F5FBF90000F6000000000000F5AC56F6005681F50000F6ACFCFBF70000000000000000000000 -00000000000000F881000000F5FAFDFD00000000000000000000F7FEFA2B0000F581F70000000000810000000000000000000000 -000000000000F9FCF500FAFDACFAF5FD00000000000000000000F5ACF5FDFEFA0000F82B00000000810000000000000000000000 -000000000000FCF8F9AC81FD000000FD000000000000FAF7000000F50081F9FAF800000000000000FB0000000000000000000000 -000000000000FC81F956F5FD000000FD0000000000000000F800F5000000000056000000000000F7FB0000000000000000000000 -00000000000000000000F5AC000000ACF800000000000000F5FAF80000000000F50000000000F8ACF50000000000000000000000 -00000000000000000000F5AC000000F5AC000000000000000056F9000000000000000000F7ACFCF5000000000000000000000000 -00000000000000000000F5FD00000000AC000000000000000000FB0000000000000000F5F6F5FCF6000000000000000000000000 -0000000000000000000000FD00000000FBFDF600000000000000F8F900000000000000000000F5FB000000000000000000000000 -0000000000000000000000FDF500000000F9ACF800000000000000815600000000F656818181AC56000000000000000000000000 -000000000000000000000081F80000000000F9FC0000000000000000F9ACACACFCFBFAFA81FD2B00000000000000000000000000 -0000000000000000000000F7FB0000000000FBF70000000000000000000000000000000000FB0000000000000000000000000000 -000000000000000000000000ACF500000000F9FD56F5000000000000000000000000000000FB0000000000000000000000000000 -000000000000000000000000F8FA0000000000F6FEFEF5000000000000F55681FCACFDACFC560000000000000000000000000000 -00000000000000000000000000FBF600000000002BFCFA00F700000000F9FDFDFAFEF90000000000000000000000000000000000 -00000000000000000000000000F5FB0000000000F5FEF7ACAC0000000000000000FCF50000000000000000000000000000000000 -0000000000000000000000000000F6FA000000002BFF2BFFFFAC00000000000000F7FA0000000000000000000000000000000000 -000000000000000000000000000000F65600000000FAFEFFFFAC0000000000F800F6810000000000000000000000000000000000 -00000000000000000000000000000000F52B00000000F8FEFBFF5600000000FCFAACF60000000000000000000000000000000000 -0000000000000000000000000000000000000000000000F9FCFCFFFB00F8FEFFFDF5000000000000000000000000000000000000 -00000000000000000000000000000000000000000000F9FDF7F5FFFD56FFFFFFFD00000000000000000000000000000000000000 -00000000000000000000000000000000000000000000810000FBFFFFFBFFFFFFFFACF9F5F5000000000000000000000000000000 -0000000000000000000000000000000000000000000000F600FC81FFFEFFFFFFFFFFFE8100000000000000000000000000000000 -00000000000000000000000000000000000000000000000000F7F6FDFFFFFFFEFFFFACF500000000000000000000000000000000 -000000000000000000000000000000000000000000000000000000F5FC81FC81FAFBF9F500000000000000000000000000000000 - -00000000000000F781FB8181818181FBFAF500000000000000000000000000000000000000F6FAFAFAFA81F9F600000000000000 -0000000000F8FBF9F500F95656FCFB5656FBF800000000000000000000000000000000F5FAF9F5F7F600F6F6F9FAF70000000000 -000000F5FBFA0056FDFEFEFDFDFAAC81FB56568181560000000000000000000000F9F9F9F7FCFDFEFEFEFFFC81F656FA00000000 -0000F5AC2BF7FBFEFEFD2BF6568181F9F7F6F6F8FBF50000000000000000000000FAF700F600F5F7F7F6F7FEFFACF82BFB000000 -0000FC2BF5FEFFFFF5F7FC81F70000F7F9FAFAF8000000000000000000000000000056F9F9FAF9F7F7FA812BF7FFFF56F7FA0000 -005656F5FEFFAC2BF9FA000000000000000000000000000000000000000000000000000000000000000000FA56FAFEFEF8F9F700 -00FB00F7FFFF56F9F800000000000000000000F656FAFA56F50000000000F5F8F9F8F5000000000000000000F9F7FCFFFB00FB00 -F8F800ACFFACF6FA000000000000000000F6FA562BF5F5F781FA000000F9FA2B00F556F9F5000000000000000081F8FFFEF6562B -810000FFFFF9FAF500000000000000002B8100F5F9FCACFBF82BFBF6FCFAF6FAFC81F600FA2B000000000000002BF8FEFFF8F5FA -FA00F5FEFFFA8100000000000000002B8100F9FEFFFFFFFFFFFBF6FDFEACFDFEFFFFFFFBF581F600000000000000F9FEFFF700FA -FA00FBFFFEF6F900000000000000F6FB00FCFFFFFFFFFFFFFFFFFCF600FCF7ACFEFFFFFFFDF6810000000000000056F9FFAC00FA -FA00F6FFFFF856000000000000F5FBF5ACFFFFFFFFFFFFFFFFFFFF2B002BF8F5ACFFFFFFFFFDF6FA000000000000F9FCFF560081 -FA0081FFFFF8F9000000000000FBF6FBFFFFFFFFFFFFFFFFFFFFFFF800F55600FCFFFFFFFFFF81F8F80000000000F981FFAC0081 -FA0000FEFEF8FB0000000000812BFAFFFFFFFFFFFFFEFFFFFDF92BFA0000F6F981ACFEFFFFFFFF56F9F600000000F9FDFF2B0081 -FA00FAFFFF81812B000000FAF8F9FFFFFEACFBF80000F500000000F9F900562B0000FCF7F9ACFFFF2BF9F50000F9F6FEFFFB0081 -810000FCFFFBF6FB56F7FBF8F9FFFE5600000000F5FAAC000000F82BF6FAFBF800F556F80000F9FFFE2BFAFAFAF8FAFFFEF60081 -FAF6F5ACFFFFAC00F856F7ACFFFCF500000000FAFCFFFC00000056AC00F581F92BFEF9FAF6000081FFFFFBF6F62BFFFFACF6F6FA -F6FA00FAFFFFFFACFA56FFFFAC0000000000F6FD2BFEF6F5565600F5F800F60081FEF7F656000000FDFFFFFDFDFFFFFFAC0081F5 -0081F52BFDFFFFFFFFFFFFFFF60000000000FBF6F6F5F656F52BF900FA000000FCFAF5F656000000F7FFFFFFFFFFFFFDF7F68100 -00F6FB00F8FDFFFFFFFFFF810000000000F6F5000000F52B56F9FC00F7F70000FCF881FCF500000000FEFFFFFFFFAC5600FBF500 -000056F900F8ACFDFFFFFFF5000000000000002B0000FDFEFFFE560000F60000F9ACFFFE810000000081FFFEFDFAF800FAF70000 -000000FAF9002B56FAFDFC0000000000000000F80000FBF5FEFEF5000000000000ACFFFA2B0000000000FEFB2BF5008156000000 -00000000F9FBF600F6FBF800000000000000F7F8000000F9F9F9F82B0000000000F6ACACF70000000000F7FD2BFA812B00000000 -0000000000F681FCFBFD0000000000000000FBF6000000000000F52B000000000000F92B810000000000008181F6000000000000 -0000000000000000F6FC00000000000000F6FF0000000000000000000000000000000081FBFB2B00000000F7F900000000000000 -000000000000000000FC00000000000000FCFAF600000000000000000000000000000056ACF581FBF700000081FB000000000000 -0000000000000000FAF90000000000008156F5F8000000000000002BFBFCFBF800000000FD2B000056FB8181FBF8000000000000 -0000000000000000AC0000000000F5FBF90000F6000000000000F5AC56F6005681F50000F6ACFCFBF70000000000000000000000 -00000000000000F881000000F5FAFDFD00000000000000000000F7FEFA2B0000F581F70000000000810000000000000000000000 -000000000000F9FCF500FAFDACFAF5FD00000000000000000000F5ACF5FDFEFA0000F82B00000000810000000000000000000000 -000000000000FCF8F9AC81FD000000FD000000000000FAF7000000F50081F9FAF800000000000000FB0000000000000000000000 -000000000000FC81F956F5FD000000FD0000000000000000F800F5000000000056000000000000F7FB0000000000000000000000 -00000000000000000000F5AC000000ACF800000000000000F5FAF80000000000F50000000000F8ACF50000000000000000000000 -00000000000000000000F5AC000000F5AC000000000000000056F9000000000000000000F7ACFCF5000000000000000000000000 -00000000000000000000F5FD00000000AC000000000000000000FB0000000000000000F5F6F5FCF6000000000000000000000000 -0000000000000000000000FD00000000FBFDF600000000000000F8F900000000000000000000F5FB000000000000000000000000 -0000000000000000000000FDF500000000F9ACF800000000000000815600000000F656818181AC56000000000000000000000000 -000000000000000000000081F80000000000F9FC0000000000000000F9ACACACFCFBFAFA81FD2B00000000000000000000000000 -0000000000000000000000F7FB0000000000FBF70000000000000000000000000000000000FB0000000000000000000000000000 -000000000000000000000000ACF500000000F9FD56F5000000000000000000000000000000FB0000000000000000000000000000 -000000000000000000000000F8FA0000000000F6FEFEF5000000000000F55681FCACFDACFC560000000000000000000000000000 -00000000000000000000000000FBF600000000002BFCFA00F700000000F9FDFDFAFEF90000000000000000000000000000000000 -00000000000000000000000000F5FB0000000000F5FEF7ACAC0000000000000000FCF50000000000000000000000000000000000 -0000000000000000000000000000F6FA000000002BFF2BFFFFAC00000000000000F7FA0000000000000000000000000000000000 -000000000000000000000000000000F65600000000FAFEFFFFAC0000000000F800F6810000000000000000000000000000000000 -00000000000000000000000000000000F52B00000000F8FEFBFF5600000000FCFAACF60000000000000000000000000000000000 -0000000000000000000000000000000000000000000000F9FCFCFFFB00F8FEFFFDF5000000000000000000000000000000000000 -00000000000000000000000000000000000000000000F9FDF7F5FFFD56FFFFFFFD00000000000000000000000000000000000000 -00000000000000000000000000000000000000000000810000FBFFFFFBFFFFFFFFACF9F5F5000000000000000000000000000000 -0000000000000000000000000000000000000000000000F600FC81FFFEFFFFFFFFFFFE8100000000000000000000000000000000 -00000000000000000000000000000000000000000000000000F7F6FDFFFFFFFEFFFFACF500000000000000000000000000000000 -000000000000000000000000000000000000000000000000000000F5FC81FC81FAFBF9F500000000000000000000000000000000 - -FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF -FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF -FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF -FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF -FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF -FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF -FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF -FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF -FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF -FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF -FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF -FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF -FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF -FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF -FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF -FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF -FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF -FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF -FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF -FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF -FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF -FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF -FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF -FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF -FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF -FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF -FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF -FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF -FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF -FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF -FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF -FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF -FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF -FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF -FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF -FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF -FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF -FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF -FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF -FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF -FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF -FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF -FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF -FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF -FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF -FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF -FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF -FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF -FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF -FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF -FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF -FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF - - -boot &device;:&partition;,\System\Library\CoreServices\grub.elf - - diff --git a/thirdparty/grub-2.04/grub-core/boot/sparc64/ieee1275/boot.S b/thirdparty/grub-2.04/grub-core/boot/sparc64/ieee1275/boot.S deleted file mode 100644 index ff8a79d3b..000000000 --- a/thirdparty/grub-2.04/grub-core/boot/sparc64/ieee1275/boot.S +++ /dev/null @@ -1,262 +0,0 @@ -/* -*-Asm-*- */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include - - .text - .align 4 - /* - * We're writing the a.out header ourselves as newer - * upstream versions of binutils no longer support - * the a.out format on sparc64. - * - * The boot loader fits into 512 bytes with 32 bytes - * used for the a.out header, hence the text segment - * size is 512 - 32. There is no data segment and no - * code relocation, thus those fields remain zero. - */ - .word 0x1030107 /* Magic number. */ - .word 512 - GRUB_BOOT_AOUT_HEADER_SIZE /* Size of text segment. */ - .word 0 /* Size of initialized data. */ - .word 0 /* Size of uninitialized data. */ - .word 0 /* Size of symbol table || checksum. */ - .word _start /* Entry point. */ - .word 0 /* Size of text relocation. */ - .word 0 /* Size of data relocation. */ - .globl _start -_start: - /* OF CIF entry point arrives in %o4 */ -pic_base: - call boot_continue - mov %o4, CIF_REG - -#ifndef CDBOOT - /* The offsets to these locations are defined by the - * GRUB_BOOT_MACHINE_foo macros in include/grub/sparc64/ieee1275/boot.h, - * and grub-setup uses this to patch these next three values as needed. - * - * The boot_path will be the OF device path of the partition where the - * rest of the GRUB kernel image resides. kernel_sector will be set to - * the location of the first block of the GRUB kernel, and - * kernel_address is the location where we should load that first block. - * - * After loading in that block we will execute it by jumping to the - * load address plus the size of the prepended A.OUT header (32 bytes). - * - * Since this assembly code includes the 32 bytes long a.out header, - * we need to move the actual code entry point forward by the size - * of the a.out header, i.e. += GRUB_BOOT_AOUT_HEADER_SIZE. - */ - .org GRUB_BOOT_MACHINE_BOOT_DEVPATH + GRUB_BOOT_AOUT_HEADER_SIZE -boot_path: - .org GRUB_BOOT_MACHINE_KERNEL_BYTE + GRUB_BOOT_AOUT_HEADER_SIZE -boot_path_end: -kernel_byte: .xword (2 << 9) -kernel_address: .word GRUB_BOOT_MACHINE_KERNEL_ADDR -#else -#define boot_path (_start + 512 + SCRATCH_PAD_BOOT_SIZE) -#define boot_path_end (_start + 1024) -#include - - .org 8 + GRUB_BOOT_AOUT_HEADER_SIZE -kernel_byte: .xword (2 << 9) -kernel_size: .word 512 -kernel_address: .word GRUB_BOOT_SPARC64_IEEE1275_IMAGE_ADDRESS -#endif - -prom_finddev_name: .asciz "finddevice" -prom_chosen_path: .asciz "/chosen" -prom_getprop_name: .asciz "getprop" -prom_stdout_name: .asciz "stdout" -prom_write_name: .asciz "write" -prom_bootpath_name: .asciz "bootpath" -prom_open_name: .asciz "open" -prom_seek_name: .asciz "seek" -prom_read_name: .asciz "read" -prom_exit_name: .asciz "exit" -grub_name: .asciz "GRUB " -#ifdef CDBOOT -prom_close_name: .asciz "close" -#endif - -#define GRUB_NAME_LEN 5 - - .align 4 - -prom_open_error: - GET_ABS(prom_open_name, %o2) - call console_write - mov 4, %o3 - /* fallthru */ - -prom_error: - GET_ABS(prom_exit_name, %o0) - /* fallthru */ - - /* %o0: OF call name - * %o1: input arg 1 - */ -prom_call_1_1_o2: - clr %o2 - ba prom_call_x_1 - mov 1, %g1 - -prom_call_getprop: - mov 4, %g1 - stx %g1, [%l1 + 256] - mov CHOSEN_NODE_REG, %o1 - ba prom_call_x_1 - GET_ABS(prom_getprop_name, %o0) - -prom_call_3_1_o1: - ba prom_call_3_1 - mov BOOTDEV_REG, %o1 - - - /* %o2: message string - * %o3: message length - */ -console_write: - GET_ABS(prom_write_name, %o0) - mov STDOUT_NODE_REG, %o1 - /* fallthru */ - - /* %o0: OF call name - * %o1: input arg 1 - * %o2: input arg 2 - * %o3: input arg 3 - */ -prom_call_3_1: - mov 3, %g1 -prom_call_x_1: - mov 1, %o5 - /* fallthru */ - - /* %o0: OF call name - * %g1: num inputs - * %o5: num outputs - * %o1-%o4: inputs - */ -prom_call: - stx %o0, [%l1 + 0x00] - stx %g1, [%l1 + 0x08] - stx %o5, [%l1 + 0x10] - stx %o1, [%l1 + 0x18] - stx %o2, [%l1 + 0x20] - stx %o3, [%l1 + 0x28] - stx %o4, [%l1 + 0x30] - jmpl CIF_REG, %g0 - mov %l1, %o0 - -boot_continue: - mov %o7, PIC_REG /* PIC base */ -#ifndef CDBOOT - sethi %hi(SCRATCH_PAD_BOOT), %l1 /* OF argument slots */ -#else - GET_ABS(_start + 512, %l1) /* OF argument slots */ -#endif - - /* Find the /chosen node so we can fetch the stdout handle, - * and thus perform console output. - * - * chosen_node = prom_finddevice("/chosen") - */ - GET_ABS(prom_finddev_name, %o0) - call prom_call_1_1_o2 - GET_ABS(prom_chosen_path, %o1) - - ldx [%l1 + 0x20], CHOSEN_NODE_REG - brz CHOSEN_NODE_REG, prom_error - - /* getprop(chosen_node, "stdout", &buffer, buffer_size) */ - GET_ABS(prom_stdout_name, %o2) - add %l1, 256, %o3 - call prom_call_getprop - mov 1024, %o4 - - lduw [%l1 + 256], STDOUT_NODE_REG - brz,pn STDOUT_NODE_REG, prom_error - - /* write(stdout_node, "GRUB ", strlen("GRUB ")) */ - GET_ABS(grub_name, %o2) - call console_write - mov GRUB_NAME_LEN, %o3 - - GET_ABS(boot_path, %o3) -#ifndef CDBOOT - ldub [%o3], %o1 - brnz,pn %o1, bootpath_known -#endif - - /* getprop(chosen_node, "bootpath", &buffer, buffer_size) */ - GET_ABS(prom_bootpath_name, %o2) - call prom_call_getprop - mov (boot_path_end - boot_path), %o4 - -bootpath_known: - - /* Open up the boot_path, and use that handle to read the - * first block of the GRUB kernel image. - * - * bootdev_handle = open(boot_path) - */ - GET_ABS(prom_open_name, %o0) - call prom_call_1_1_o2 - GET_ABS(boot_path, %o1) - - ldx [%l1 + 0x20], BOOTDEV_REG - brz,pn BOOTDEV_REG, prom_open_error - - /* Since we have 64-bit cells, the high cell of the seek offset - * is zero and the low cell is the entire value. - * - * seek(bootdev, 0, *kernel_byte) - */ - GET_ABS(prom_seek_name, %o0) - clr %o2 - call prom_call_3_1_o1 - LDX_ABS(kernel_byte, 0x00, %o3) - - /* read(bootdev, *kernel_address, 512) */ - GET_ABS(prom_read_name, %o0) - LDUW_ABS(kernel_address, 0x00, %o2) - call prom_call_3_1_o1 -#ifdef CDBOOT - LDUW_ABS(kernel_size, 0x00, %o3) - - GET_ABS(prom_close_name, %o0) - mov 1, %g1 - mov 0, %o5 - call prom_call - mov BOOTDEV_REG, %o1 -#else - mov 512, %o3 -#endif - - LDUW_ABS(kernel_address, 0x00, %o2) - jmpl %o2, %o7 -#ifdef CDBOOT - mov CIF_REG, %o4 -#else - nop -#endif - .org GRUB_BOOT_MACHINE_CODE_END - -/* the last 4 bytes in the sector 0 contain the signature */ - .word GRUB_BOOT_MACHINE_SIGNATURE diff --git a/thirdparty/grub-2.04/grub-core/boot/sparc64/ieee1275/diskboot.S b/thirdparty/grub-2.04/grub-core/boot/sparc64/ieee1275/diskboot.S deleted file mode 100644 index 35e02c1b6..000000000 --- a/thirdparty/grub-2.04/grub-core/boot/sparc64/ieee1275/diskboot.S +++ /dev/null @@ -1,145 +0,0 @@ -/* -*-Asm-*- */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include - - .text - .align 4 - .globl _start -_start: - /* First stage boot block jumps to us here. */ -pic_base: - call after_info_block - mov %o7, PIC_REG - -prom_write_name: .asciz "write" -prom_seek_name: .asciz "seek" -prom_read_name: .asciz "read" -prom_close_name: .asciz "close" - -notification_string: .asciz "Loading kernel" -#define NOTIFICATION_STRING_LEN 14 - -notification_step: .asciz "." -#define NOTIFICATION_STEP_LEN 1 - -notification_done: .asciz "\r\n" -#define NOTIFICATION_DONE_LEN 2 - - .align 4 - - /* %o2: message string - * %o3: message length - */ -console_write: - GET_ABS(prom_write_name, %o0) - mov STDOUT_NODE_REG, %o1 - /* fallthru */ - - /* %o0: OF call name - * %o1: input arg 1 - * %o2: input arg 2 - * %o3: input arg 3 - */ -prom_call_3_1: - mov 3, %g1 - mov 1, %o5 - /* fallthru */ - - /* %o0: OF call name - * %g1: num inputs - * %o5: num outputs - * %o1-%o4: inputs - */ -prom_call: - stx %o0, [%l1 + 0x00] - stx %g1, [%l1 + 0x08] - stx %o5, [%l1 + 0x10] - stx %o1, [%l1 + 0x18] - stx %o2, [%l1 + 0x20] - stx %o3, [%l1 + 0x28] - stx %o4, [%l1 + 0x30] - jmpl CIF_REG, %g0 - mov %l1, %o0 - - -after_info_block: - sethi %hi(SCRATCH_PAD_DISKBOOT), %l1 /* OF argument slots */ - - GET_ABS(notification_string, %o2) - call console_write - mov NOTIFICATION_STRING_LEN, %o3 - - GET_ABS(firstlist - GRUB_BOOT_SPARC64_IEEE1275_LIST_SIZE, %l2) - set GRUB_BOOT_SPARC64_IEEE1275_IMAGE_ADDRESS, %l3 -bootloop: - lduw [%l2 + 0x08], %o0 - brz %o0, bootit - lduw [%l2 + 0x00], %o3 - sllx %o3, 32, %o3 - lduw [%l2 + 0x04], %o4 - or %o3, %o4, %o3 - GET_ABS(prom_seek_name, %o0) - mov BOOTDEV_REG, %o1 - clr %o2 - call prom_call_3_1 - sllx %o3, 9, %o3 - - GET_ABS(prom_read_name, %o0) - mov BOOTDEV_REG, %o1 - lduw [%l2 + 0x08], %o3 - sllx %o3, 9, %o3 - mov %l3, %o2 - call prom_call_3_1 - add %l3, %o3, %l3 - - GET_ABS(notification_step, %o2) - call console_write - mov NOTIFICATION_STEP_LEN, %o3 - - ba bootloop - sub %l2, GRUB_BOOT_SPARC64_IEEE1275_LIST_SIZE, %l2 - -bootit: - GET_ABS(prom_close_name, %o0) - mov 1, %g1 - mov 0, %o5 - call prom_call - mov BOOTDEV_REG, %o1 - - GET_ABS(notification_done, %o2) - call console_write - mov NOTIFICATION_DONE_LEN, %o3 - sethi %hi(GRUB_BOOT_SPARC64_IEEE1275_IMAGE_ADDRESS), %o2 - jmpl %o2 + %lo(GRUB_BOOT_SPARC64_IEEE1275_IMAGE_ADDRESS), %o7 - mov CIF_REG, %o4 -1: ba,a 1b - -lastlist: - .word 0 - .word 0 - - .org (0x200 - GRUB_BOOT_SPARC64_IEEE1275_LIST_SIZE) -blocklist_default_start: - .word 0 - .word 2 -blocklist_default_len: - .word 0 -firstlist: diff --git a/thirdparty/grub-2.04/grub-core/bus/bonito.c b/thirdparty/grub-2.04/grub-core/bus/bonito.c deleted file mode 100644 index 9a63f073c..000000000 --- a/thirdparty/grub-2.04/grub-core/bus/bonito.c +++ /dev/null @@ -1,176 +0,0 @@ -/* bonito.c - PCI bonito interface. */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include - -static grub_uint32_t base_win[GRUB_MACHINE_PCI_NUM_WIN]; -static const grub_size_t sizes_win[GRUB_MACHINE_PCI_NUM_WIN] = - {GRUB_MACHINE_PCI_WIN1_SIZE, GRUB_MACHINE_PCI_WIN_SIZE, - GRUB_MACHINE_PCI_WIN_SIZE}; -/* Usage counters. */ -static int usage_win[GRUB_MACHINE_PCI_NUM_WIN]; -static grub_addr_t addr_win[GRUB_MACHINE_PCI_NUM_WIN] = - {GRUB_MACHINE_PCI_WIN1_ADDR, GRUB_MACHINE_PCI_WIN2_ADDR, - GRUB_MACHINE_PCI_WIN3_ADDR}; - -grub_bonito_type_t grub_bonito_type; - -static volatile void * -config_addr (grub_pci_address_t addr) -{ - if (grub_bonito_type == GRUB_BONITO_2F) - { - GRUB_MACHINE_PCI_CONF_CTRL_REG_2F = 1 << ((addr >> 11) & 0xf); - return (volatile void *) (GRUB_MACHINE_PCI_CONFSPACE_2F - | (addr & 0x07ff)); - } - else - { - - if (addr >> 16) - return (volatile void *) (GRUB_MACHINE_PCI_CONFSPACE_3A_EXT | addr); - else - return (volatile void *) (GRUB_MACHINE_PCI_CONFSPACE_3A | addr); - } -} - -grub_uint32_t -grub_pci_read (grub_pci_address_t addr) -{ - return *(volatile grub_uint32_t *) config_addr (addr); -} - -grub_uint16_t -grub_pci_read_word (grub_pci_address_t addr) -{ - return *(volatile grub_uint16_t *) config_addr (addr); -} - -grub_uint8_t -grub_pci_read_byte (grub_pci_address_t addr) -{ - return *(volatile grub_uint8_t *) config_addr (addr); -} - -void -grub_pci_write (grub_pci_address_t addr, grub_uint32_t data) -{ - *(volatile grub_uint32_t *) config_addr (addr) = data; -} - -void -grub_pci_write_word (grub_pci_address_t addr, grub_uint16_t data) -{ - *(volatile grub_uint16_t *) config_addr (addr) = data; -} - -void -grub_pci_write_byte (grub_pci_address_t addr, grub_uint8_t data) -{ - *(volatile grub_uint8_t *) config_addr (addr) = data; -} - - -static inline void -write_bases_2f (void) -{ - int i; - grub_uint32_t reg = 0; - for (i = 0; i < GRUB_MACHINE_PCI_NUM_WIN; i++) - reg |= (((base_win[i] >> GRUB_MACHINE_PCI_WIN_SHIFT) - & GRUB_MACHINE_PCI_WIN_MASK) - << (i * GRUB_MACHINE_PCI_WIN_MASK_SIZE)); - GRUB_MACHINE_PCI_IO_CTRL_REG_2F = reg; -} - -volatile void * -grub_pci_device_map_range (grub_pci_device_t dev __attribute__ ((unused)), - grub_addr_t base, grub_size_t size) -{ - if (grub_bonito_type == GRUB_BONITO_2F) - { - int i; - grub_addr_t newbase; - - /* First try already used registers. */ - for (i = 0; i < GRUB_MACHINE_PCI_NUM_WIN; i++) - if (usage_win[i] && base_win[i] <= base - && base_win[i] + sizes_win[i] > base + size) - { - usage_win[i]++; - return (void *) - (addr_win[i] | (base & GRUB_MACHINE_PCI_WIN_OFFSET_MASK)); - } - /* Map new register. */ - newbase = base & ~GRUB_MACHINE_PCI_WIN_OFFSET_MASK; - for (i = 0; i < GRUB_MACHINE_PCI_NUM_WIN; i++) - if (!usage_win[i] && newbase <= base - && newbase + sizes_win[i] > base + size) - { - usage_win[i]++; - base_win[i] = newbase; - write_bases_2f (); - return (void *) - (addr_win[i] | (base & GRUB_MACHINE_PCI_WIN_OFFSET_MASK)); - } - grub_fatal ("Out of PCI windows."); - } - else - { - int region = 0; - if (base >= 0x10000000 - && base + size <= 0x18000000) - region = 1; - if (base >= 0x1c000000 - && base + size <= 0x1f000000) - region = 2; - if (region == 0) - grub_fatal ("Attempt to map out of regions"); - return (void *) (0xa0000000 | base); - } -} - -void * -grub_pci_device_map_range_cached (grub_pci_device_t dev, - grub_addr_t base, grub_size_t size) -{ - return (void *) (((grub_addr_t) grub_pci_device_map_range (dev, base, size)) - & ~0x20000000); -} - -void -grub_pci_device_unmap_range (grub_pci_device_t dev __attribute__ ((unused)), - volatile void *mem, - grub_size_t size __attribute__ ((unused))) -{ - if (grub_bonito_type == GRUB_BONITO_2F) - { - int i; - for (i = 0; i < GRUB_MACHINE_PCI_NUM_WIN; i++) - if (usage_win[i] && addr_win[i] - == (((grub_addr_t) mem | 0x20000000) - & ~GRUB_MACHINE_PCI_WIN_OFFSET_MASK)) - { - usage_win[i]--; - return; - } - grub_fatal ("Tried to unmap not mapped region"); - } -} diff --git a/thirdparty/grub-2.04/grub-core/bus/cs5536.c b/thirdparty/grub-2.04/grub-core/bus/cs5536.c deleted file mode 100644 index bb9aa27e5..000000000 --- a/thirdparty/grub-2.04/grub-core/bus/cs5536.c +++ /dev/null @@ -1,381 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2010 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#ifdef GRUB_MACHINE_MIPS_LOONGSON -#include -#endif - -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -/* Context for grub_cs5536_find. */ -struct grub_cs5536_find_ctx -{ - grub_pci_device_t *devp; - int found; -}; - -/* Helper for grub_cs5536_find. */ -static int -grub_cs5536_find_iter (grub_pci_device_t dev, grub_pci_id_t pciid, void *data) -{ - struct grub_cs5536_find_ctx *ctx = data; - - if (pciid == GRUB_CS5536_PCIID) - { - *ctx->devp = dev; - ctx->found = 1; - return 1; - } - return 0; -} - -int -grub_cs5536_find (grub_pci_device_t *devp) -{ - struct grub_cs5536_find_ctx ctx = { - .devp = devp, - .found = 0 - }; - - grub_pci_iterate (grub_cs5536_find_iter, &ctx); - - return ctx.found; -} - -grub_uint64_t -grub_cs5536_read_msr (grub_pci_device_t dev, grub_uint32_t addr) -{ - grub_uint64_t ret = 0; - grub_pci_write (grub_pci_make_address (dev, GRUB_CS5536_MSR_MAILBOX_ADDR), - addr); - ret = (grub_uint64_t) - grub_pci_read (grub_pci_make_address (dev, GRUB_CS5536_MSR_MAILBOX_DATA0)); - ret |= (((grub_uint64_t) - grub_pci_read (grub_pci_make_address (dev, - GRUB_CS5536_MSR_MAILBOX_DATA1))) - << 32); - return ret; -} - -void -grub_cs5536_write_msr (grub_pci_device_t dev, grub_uint32_t addr, - grub_uint64_t val) -{ - grub_pci_write (grub_pci_make_address (dev, GRUB_CS5536_MSR_MAILBOX_ADDR), - addr); - grub_pci_write (grub_pci_make_address (dev, GRUB_CS5536_MSR_MAILBOX_DATA0), - val & 0xffffffff); - grub_pci_write (grub_pci_make_address (dev, GRUB_CS5536_MSR_MAILBOX_DATA1), - val >> 32); -} - -grub_err_t -grub_cs5536_smbus_wait (grub_port_t smbbase) -{ - grub_uint64_t start = grub_get_time_ms (); - while (1) - { - grub_uint8_t status; - status = grub_inb (smbbase + GRUB_CS5536_SMB_REG_STATUS); - if (status & GRUB_CS5536_SMB_REG_STATUS_SDAST) - return GRUB_ERR_NONE; - if (status & GRUB_CS5536_SMB_REG_STATUS_BER) - return grub_error (GRUB_ERR_IO, "SM bus error"); - if (status & GRUB_CS5536_SMB_REG_STATUS_NACK) - return grub_error (GRUB_ERR_IO, "NACK received"); - if (grub_get_time_ms () > start + 40) - return grub_error (GRUB_ERR_IO, "SM stalled"); - } -} - -grub_err_t -grub_cs5536_read_spd_byte (grub_port_t smbbase, grub_uint8_t dev, - grub_uint8_t addr, grub_uint8_t *res) -{ - grub_err_t err; - - /* Send START. */ - grub_outb (grub_inb (smbbase + GRUB_CS5536_SMB_REG_CTRL1) - | GRUB_CS5536_SMB_REG_CTRL1_START, - smbbase + GRUB_CS5536_SMB_REG_CTRL1); - - /* Send device address. */ - err = grub_cs5536_smbus_wait (smbbase); - if (err) - return err; - grub_outb (dev << 1, smbbase + GRUB_CS5536_SMB_REG_DATA); - - /* Send ACK. */ - err = grub_cs5536_smbus_wait (smbbase); - if (err) - return err; - grub_outb (grub_inb (smbbase + GRUB_CS5536_SMB_REG_CTRL1) - | GRUB_CS5536_SMB_REG_CTRL1_ACK, - smbbase + GRUB_CS5536_SMB_REG_CTRL1); - - /* Send byte address. */ - grub_outb (addr, smbbase + GRUB_CS5536_SMB_REG_DATA); - - /* Send START. */ - err = grub_cs5536_smbus_wait (smbbase); - if (err) - return err; - grub_outb (grub_inb (smbbase + GRUB_CS5536_SMB_REG_CTRL1) - | GRUB_CS5536_SMB_REG_CTRL1_START, - smbbase + GRUB_CS5536_SMB_REG_CTRL1); - - /* Send device address. */ - err = grub_cs5536_smbus_wait (smbbase); - if (err) - return err; - grub_outb ((dev << 1) | 1, smbbase + GRUB_CS5536_SMB_REG_DATA); - - /* Send STOP. */ - err = grub_cs5536_smbus_wait (smbbase); - if (err) - return err; - grub_outb (grub_inb (smbbase + GRUB_CS5536_SMB_REG_CTRL1) - | GRUB_CS5536_SMB_REG_CTRL1_STOP, - smbbase + GRUB_CS5536_SMB_REG_CTRL1); - - err = grub_cs5536_smbus_wait (smbbase); - if (err) - return err; - *res = grub_inb (smbbase + GRUB_CS5536_SMB_REG_DATA); - - return GRUB_ERR_NONE; -} - -grub_err_t -grub_cs5536_init_smbus (grub_pci_device_t dev, grub_uint16_t divisor, - grub_port_t *smbbase) -{ - grub_uint64_t smbbar; - - smbbar = grub_cs5536_read_msr (dev, GRUB_CS5536_MSR_SMB_BAR); - - /* FIXME */ - if (!(smbbar & GRUB_CS5536_LBAR_ENABLE)) - return grub_error(GRUB_ERR_IO, "SMB controller not enabled\n"); - *smbbase = (smbbar & GRUB_CS5536_LBAR_ADDR_MASK) + GRUB_MACHINE_PCI_IO_BASE; - - if (divisor < 8) - return grub_error (GRUB_ERR_BAD_ARGUMENT, "invalid divisor"); - - /* Disable SMB. */ - grub_outb (0, *smbbase + GRUB_CS5536_SMB_REG_CTRL2); - - /* Disable interrupts. */ - grub_outb (0, *smbbase + GRUB_CS5536_SMB_REG_CTRL1); - - /* Set as master. */ - grub_outb (GRUB_CS5536_SMB_REG_ADDR_MASTER, - *smbbase + GRUB_CS5536_SMB_REG_ADDR); - - /* Launch. */ - grub_outb (((divisor >> 7) & 0xff), *smbbase + GRUB_CS5536_SMB_REG_CTRL3); - grub_outb (((divisor << 1) & 0xfe) | GRUB_CS5536_SMB_REG_CTRL2_ENABLE, - *smbbase + GRUB_CS5536_SMB_REG_CTRL2); - - return GRUB_ERR_NONE; -} - -grub_err_t -grub_cs5536_read_spd (grub_port_t smbbase, grub_uint8_t dev, - struct grub_smbus_spd *res) -{ - grub_err_t err; - grub_size_t size; - grub_uint8_t b; - grub_size_t ptr; - - err = grub_cs5536_read_spd_byte (smbbase, dev, 0, &b); - if (err) - return err; - if (b == 0) - return grub_error (GRUB_ERR_IO, "no SPD found"); - size = b; - - ((grub_uint8_t *) res)[0] = b; - for (ptr = 1; ptr < size; ptr++) - { - err = grub_cs5536_read_spd_byte (smbbase, dev, ptr, - &((grub_uint8_t *) res)[ptr]); - if (err) - return err; - } - return GRUB_ERR_NONE; -} - -static inline void -set_io_space (grub_pci_device_t dev, int num, grub_uint16_t start, - grub_uint16_t len) -{ - grub_cs5536_write_msr (dev, GRUB_CS5536_MSR_GL_REGIONS_START + num, - ((((grub_uint64_t) start + len - 4) - << GRUB_CS5536_MSR_GL_REGION_IO_TOP_SHIFT) - & GRUB_CS5536_MSR_GL_REGION_TOP_MASK) - | (((grub_uint64_t) start - << GRUB_CS5536_MSR_GL_REGION_IO_BASE_SHIFT) - & GRUB_CS5536_MSR_GL_REGION_BASE_MASK) - | GRUB_CS5536_MSR_GL_REGION_IO - | GRUB_CS5536_MSR_GL_REGION_ENABLE); -} - -static inline void -set_iod (grub_pci_device_t dev, int num, int dest, int start, int mask) -{ - grub_cs5536_write_msr (dev, GRUB_CS5536_MSR_GL_IOD_START + num, - ((grub_uint64_t) dest << GRUB_CS5536_IOD_DEST_SHIFT) - | (((grub_uint64_t) start & GRUB_CS5536_IOD_ADDR_MASK) - << GRUB_CS5536_IOD_BASE_SHIFT) - | ((mask & GRUB_CS5536_IOD_ADDR_MASK) - << GRUB_CS5536_IOD_MASK_SHIFT)); -} - -static inline void -set_p2d (grub_pci_device_t dev, int num, int dest, grub_uint32_t start) -{ - grub_cs5536_write_msr (dev, GRUB_CS5536_MSR_GL_P2D_START + num, - (((grub_uint64_t) dest) << GRUB_CS5536_P2D_DEST_SHIFT) - | ((grub_uint64_t) (start >> GRUB_CS5536_P2D_LOG_ALIGN) - << GRUB_CS5536_P2D_BASE_SHIFT) - | (((1 << (32 - GRUB_CS5536_P2D_LOG_ALIGN)) - 1) - << GRUB_CS5536_P2D_MASK_SHIFT)); -} - -void -grub_cs5536_init_geode (grub_pci_device_t dev) -{ - /* Enable more BARs. */ - grub_cs5536_write_msr (dev, GRUB_CS5536_MSR_IRQ_MAP_BAR, - GRUB_CS5536_LBAR_TURN_ON | GRUB_CS5536_LBAR_IRQ_MAP); - grub_cs5536_write_msr (dev, GRUB_CS5536_MSR_MFGPT_BAR, - GRUB_CS5536_LBAR_TURN_ON | GRUB_CS5536_LBAR_MFGPT); - grub_cs5536_write_msr (dev, GRUB_CS5536_MSR_ACPI_BAR, - GRUB_CS5536_LBAR_TURN_ON | GRUB_CS5536_LBAR_ACPI); - grub_cs5536_write_msr (dev, GRUB_CS5536_MSR_PM_BAR, - GRUB_CS5536_LBAR_TURN_ON | GRUB_CS5536_LBAR_PM); - - /* Setup DIVIL. */ -#ifdef GRUB_MACHINE_MIPS_LOONGSON - switch (grub_arch_machine) - { - case GRUB_ARCH_MACHINE_YEELOONG: - grub_cs5536_write_msr (dev, GRUB_CS5536_MSR_DIVIL_LEG_IO, - GRUB_CS5536_MSR_DIVIL_LEG_IO_MODE_X86 - | GRUB_CS5536_MSR_DIVIL_LEG_IO_F_REMAP - | GRUB_CS5536_MSR_DIVIL_LEG_IO_RTC_ENABLE0 - | GRUB_CS5536_MSR_DIVIL_LEG_IO_RTC_ENABLE1); - break; - case GRUB_ARCH_MACHINE_FULOONG2F: - grub_cs5536_write_msr (dev, GRUB_CS5536_MSR_DIVIL_LEG_IO, - GRUB_CS5536_MSR_DIVIL_LEG_IO_UART2_COM3 - | GRUB_CS5536_MSR_DIVIL_LEG_IO_UART1_COM1 - | GRUB_CS5536_MSR_DIVIL_LEG_IO_MODE_X86 - | GRUB_CS5536_MSR_DIVIL_LEG_IO_F_REMAP - | GRUB_CS5536_MSR_DIVIL_LEG_IO_RTC_ENABLE0 - | GRUB_CS5536_MSR_DIVIL_LEG_IO_RTC_ENABLE1); - break; - } -#endif - grub_cs5536_write_msr (dev, GRUB_CS5536_MSR_DIVIL_IRQ_MAPPER_PRIMARY_MASK, - (~GRUB_CS5536_DIVIL_LPC_INTERRUPTS) & 0xffff); - grub_cs5536_write_msr (dev, GRUB_CS5536_MSR_DIVIL_IRQ_MAPPER_LPC_MASK, - GRUB_CS5536_DIVIL_LPC_INTERRUPTS); - grub_cs5536_write_msr (dev, GRUB_CS5536_MSR_DIVIL_LPC_SERIAL_IRQ_CONTROL, - GRUB_CS5536_MSR_DIVIL_LPC_SERIAL_IRQ_CONTROL_ENABLE); - - /* Initialise USB controller. */ - /* FIXME: assign adresses dynamically. */ - grub_cs5536_write_msr (dev, GRUB_CS5536_MSR_USB_OHCI_BASE, - GRUB_CS5536_MSR_USB_BASE_BUS_MASTER - | GRUB_CS5536_MSR_USB_BASE_MEMORY_ENABLE - | 0x05024000); - grub_cs5536_write_msr (dev, GRUB_CS5536_MSR_USB_EHCI_BASE, - GRUB_CS5536_MSR_USB_BASE_BUS_MASTER - | GRUB_CS5536_MSR_USB_BASE_MEMORY_ENABLE - | (0x20ULL << GRUB_CS5536_MSR_USB_EHCI_BASE_FLDJ_SHIFT) - | 0x05023000); - grub_cs5536_write_msr (dev, GRUB_CS5536_MSR_USB_CONTROLLER_BASE, - GRUB_CS5536_MSR_USB_BASE_BUS_MASTER - | GRUB_CS5536_MSR_USB_BASE_MEMORY_ENABLE | 0x05020000); - grub_cs5536_write_msr (dev, GRUB_CS5536_MSR_USB_OPTION_CONTROLLER_BASE, - GRUB_CS5536_MSR_USB_BASE_MEMORY_ENABLE | 0x05022000); - set_p2d (dev, 0, GRUB_CS5536_DESTINATION_USB, 0x05020000); - set_p2d (dev, 1, GRUB_CS5536_DESTINATION_USB, 0x05022000); - set_p2d (dev, 5, GRUB_CS5536_DESTINATION_USB, 0x05024000); - set_p2d (dev, 6, GRUB_CS5536_DESTINATION_USB, 0x05023000); - - { - volatile grub_uint32_t *oc; - oc = grub_pci_device_map_range (dev, 0x05022000, - GRUB_CS5536_USB_OPTION_REGS_SIZE); - - oc[GRUB_CS5536_USB_OPTION_REG_UOCMUX] = - (oc[GRUB_CS5536_USB_OPTION_REG_UOCMUX] - & ~GRUB_CS5536_USB_OPTION_REG_UOCMUX_PMUX_MASK) - | GRUB_CS5536_USB_OPTION_REG_UOCMUX_PMUX_HC; - grub_pci_device_unmap_range (dev, oc, GRUB_CS5536_USB_OPTION_REGS_SIZE); - } - - /* Setup IDE controller. */ - grub_cs5536_write_msr (dev, GRUB_CS5536_MSR_IDE_IO_BAR, - GRUB_CS5536_LBAR_IDE - | GRUB_CS5536_MSR_IDE_IO_BAR_UNITS); - grub_cs5536_write_msr (dev, GRUB_CS5536_MSR_IDE_CFG, - GRUB_CS5536_MSR_IDE_CFG_CHANNEL_ENABLE); - grub_cs5536_write_msr (dev, GRUB_CS5536_MSR_IDE_TIMING, - (GRUB_CS5536_MSR_IDE_TIMING_PIO0 - << GRUB_CS5536_MSR_IDE_TIMING_DRIVE0_SHIFT) - | (GRUB_CS5536_MSR_IDE_TIMING_PIO0 - << GRUB_CS5536_MSR_IDE_TIMING_DRIVE1_SHIFT)); - grub_cs5536_write_msr (dev, GRUB_CS5536_MSR_IDE_CAS_TIMING, - (GRUB_CS5536_MSR_IDE_CAS_TIMING_CMD_PIO0 - << GRUB_CS5536_MSR_IDE_CAS_TIMING_CMD_SHIFT) - | (GRUB_CS5536_MSR_IDE_CAS_TIMING_PIO0 - << GRUB_CS5536_MSR_IDE_CAS_TIMING_DRIVE0_SHIFT) - | (GRUB_CS5536_MSR_IDE_CAS_TIMING_PIO0 - << GRUB_CS5536_MSR_IDE_CAS_TIMING_DRIVE1_SHIFT)); - - /* Setup Geodelink PCI. */ - grub_cs5536_write_msr (dev, GRUB_CS5536_MSR_GL_PCI_CTRL, - (4ULL << GRUB_CS5536_MSR_GL_PCI_CTRL_OUT_THR_SHIFT) - | (4ULL << GRUB_CS5536_MSR_GL_PCI_CTRL_IN_THR_SHIFT) - | (8ULL << GRUB_CS5536_MSR_GL_PCI_CTRL_LATENCY_SHIFT) - | GRUB_CS5536_MSR_GL_PCI_CTRL_IO_ENABLE - | GRUB_CS5536_MSR_GL_PCI_CTRL_MEMORY_ENABLE); - - /* Setup windows. */ - set_io_space (dev, 0, GRUB_CS5536_LBAR_SMBUS, GRUB_CS5536_SMBUS_REGS_SIZE); - set_io_space (dev, 1, GRUB_CS5536_LBAR_GPIO, GRUB_CS5536_GPIO_REGS_SIZE); - set_io_space (dev, 2, GRUB_CS5536_LBAR_MFGPT, GRUB_CS5536_MFGPT_REGS_SIZE); - set_io_space (dev, 3, GRUB_CS5536_LBAR_IRQ_MAP, GRUB_CS5536_IRQ_MAP_REGS_SIZE); - set_io_space (dev, 4, GRUB_CS5536_LBAR_PM, GRUB_CS5536_PM_REGS_SIZE); - set_io_space (dev, 5, GRUB_CS5536_LBAR_ACPI, GRUB_CS5536_ACPI_REGS_SIZE); - set_iod (dev, 0, GRUB_CS5536_DESTINATION_IDE, GRUB_ATA_CH0_PORT1, 0xffff8); - set_iod (dev, 1, GRUB_CS5536_DESTINATION_ACC, GRUB_CS5536_LBAR_ACC, 0xfff80); - set_iod (dev, 2, GRUB_CS5536_DESTINATION_IDE, GRUB_CS5536_LBAR_IDE, 0xffff0); -} diff --git a/thirdparty/grub-2.04/grub-core/bus/emu/pci.c b/thirdparty/grub-2.04/grub-core/bus/emu/pci.c deleted file mode 100644 index 267f2622d..000000000 --- a/thirdparty/grub-2.04/grub-core/bus/emu/pci.c +++ /dev/null @@ -1,78 +0,0 @@ -/* pci.c - Generic PCI interfaces. */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2007,2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include - -grub_pci_address_t -grub_pci_make_address (grub_pci_device_t dev, int reg) -{ - grub_pci_address_t ret; - ret.dev = dev; - ret.pos = reg; - return ret; -} - -void -grub_pci_iterate (grub_pci_iteratefunc_t hook, void *hook_data) -{ - struct pci_device_iterator *iter; - struct pci_slot_match slot; - struct pci_device *dev; - slot.domain = PCI_MATCH_ANY; - slot.bus = PCI_MATCH_ANY; - slot.dev = PCI_MATCH_ANY; - slot.func = PCI_MATCH_ANY; - iter = pci_slot_match_iterator_create (&slot); - while ((dev = pci_device_next (iter))) - hook (dev, dev->vendor_id | (dev->device_id << 16), hook_data); - pci_iterator_destroy (iter); -} - -void * -grub_pci_device_map_range (grub_pci_device_t dev, grub_addr_t base, - grub_size_t size) -{ - void *addr; - int err; - err = pci_device_map_range (dev, base, size, PCI_DEV_MAP_FLAG_WRITABLE, &addr); - if (err) - grub_util_error ("mapping 0x%llx failed (error %d)", - (unsigned long long) base, err); - return addr; -} - -void -grub_pci_device_unmap_range (grub_pci_device_t dev, void *mem, - grub_size_t size) -{ - pci_device_unmap_range (dev, mem, size); -} - -GRUB_MOD_INIT (emupci) -{ - pci_system_init (); -} - -GRUB_MOD_FINI (emupci) -{ - pci_system_cleanup (); -} diff --git a/thirdparty/grub-2.04/grub-core/bus/fdt.c b/thirdparty/grub-2.04/grub-core/bus/fdt.c deleted file mode 100644 index 135da497b..000000000 --- a/thirdparty/grub-2.04/grub-core/bus/fdt.c +++ /dev/null @@ -1,256 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2016 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include - -static const void *dtb; -static grub_size_t root_address_cells, root_size_cells; -/* Pointer to this symbol signals invalid mapping. */ -char grub_fdtbus_invalid_mapping[1]; - -struct grub_fdtbus_dev *devs; -struct grub_fdtbus_driver *drivers; - -int -grub_fdtbus_is_compatible (const char *compat_string, - const struct grub_fdtbus_dev *dev) -{ - grub_size_t compatible_size; - const char *compatible = grub_fdt_get_prop (dtb, dev->node, "compatible", - &compatible_size); - if (!compatible) - return 0; - const char *compatible_end = compatible + compatible_size; - while (compatible < compatible_end) - { - if (grub_strcmp (compat_string, compatible) == 0) - return 1; - compatible += grub_strlen (compatible) + 1; - } - return 0; -} - -static void -fdtbus_scan (struct grub_fdtbus_dev *parent) -{ - int node; - for (node = grub_fdt_first_node (dtb, parent ? parent->node : 0); node >= 0; - node = grub_fdt_next_node (dtb, node)) - { - struct grub_fdtbus_dev *dev; - struct grub_fdtbus_driver *driver; - dev = grub_zalloc (sizeof (*dev)); - if (!dev) - { - grub_print_error (); - return; - } - dev->node = node; - dev->next = devs; - dev->parent = parent; - devs = dev; - FOR_LIST_ELEMENTS(driver, drivers) - if (!dev->driver && grub_fdtbus_is_compatible (driver->compatible, dev)) - { - grub_dprintf ("fdtbus", "Attaching %s\n", driver->compatible); - if (driver->attach (dev) == GRUB_ERR_NONE) - { - grub_dprintf ("fdtbus", "Attached %s\n", driver->compatible); - dev->driver = driver; - break; - } - grub_print_error (); - } - fdtbus_scan (dev); - } -} - -void -grub_fdtbus_register (struct grub_fdtbus_driver *driver) -{ - struct grub_fdtbus_dev *dev; - grub_dprintf ("fdtbus", "Registering %s\n", driver->compatible); - grub_list_push (GRUB_AS_LIST_P (&drivers), - GRUB_AS_LIST (driver)); - for (dev = devs; dev; dev = dev->next) - if (!dev->driver && grub_fdtbus_is_compatible (driver->compatible, dev)) - { - grub_dprintf ("fdtbus", "Attaching %s (%p)\n", driver->compatible, dev); - if (driver->attach (dev) == GRUB_ERR_NONE) - { - grub_dprintf ("fdtbus", "Attached %s\n", driver->compatible); - dev->driver = driver; - } - grub_print_error (); - } -} - -void -grub_fdtbus_unregister (struct grub_fdtbus_driver *driver) -{ - grub_list_remove (GRUB_AS_LIST (driver)); - struct grub_fdtbus_dev *dev; - for (dev = devs; dev; dev = dev->next) - if (dev->driver == driver) - { - if (driver->detach) - driver->detach(dev); - dev->driver = 0; - } -} - -void -grub_fdtbus_init (const void *dtb_in, grub_size_t size) -{ - if (!dtb_in || grub_fdt_check_header (dtb_in, size) < 0) - grub_fatal ("invalid FDT"); - dtb = dtb_in; - const grub_uint32_t *prop = grub_fdt_get_prop (dtb, 0, "#address-cells", 0); - if (prop) - root_address_cells = grub_be_to_cpu32 (*prop); - else - root_address_cells = 1; - - prop = grub_fdt_get_prop (dtb, 0, "#size-cells", 0); - if (prop) - root_size_cells = grub_be_to_cpu32 (*prop); - else - root_size_cells = 1; - - fdtbus_scan (0); -} - -static int -get_address_cells (const struct grub_fdtbus_dev *dev) -{ - const grub_uint32_t *prop; - if (!dev) - return root_address_cells; - prop = grub_fdt_get_prop (dtb, dev->node, "#address-cells", 0); - if (prop) - return grub_be_to_cpu32 (*prop); - return 1; -} - -static int -get_size_cells (const struct grub_fdtbus_dev *dev) -{ - const grub_uint32_t *prop; - if (!dev) - return root_size_cells; - prop = grub_fdt_get_prop (dtb, dev->node, "#size-cells", 0); - if (prop) - return grub_be_to_cpu32 (*prop); - return 1; -} - -static grub_uint64_t -get64 (const grub_uint32_t *reg, grub_size_t cells) -{ - grub_uint64_t val = 0; - if (cells >= 1) - val = grub_be_to_cpu32 (reg[cells - 1]); - if (cells >= 2) - val |= ((grub_uint64_t) grub_be_to_cpu32 (reg[cells - 2])) << 32; - return val; -} - -static volatile void * -translate (const struct grub_fdtbus_dev *dev, const grub_uint32_t *reg) -{ - volatile void *ret; - const grub_uint32_t *ranges; - grub_size_t ranges_size, cells_per_mapping; - grub_size_t parent_address_cells, child_address_cells, child_size_cells; - grub_size_t nmappings, i; - if (dev == 0) - { - grub_uint64_t val; - val = get64 (reg, root_address_cells); - if (sizeof (void *) == 4 && (val >> 32)) - return grub_fdtbus_invalid_mapping; - return (void *) (grub_addr_t) val; - } - ranges = grub_fdt_get_prop (dtb, dev->node, "ranges", &ranges_size); - if (!ranges) - return grub_fdtbus_invalid_mapping; - if (ranges_size == 0) - return translate (dev->parent, reg); - parent_address_cells = get_address_cells (dev->parent); - child_address_cells = get_address_cells (dev); - child_size_cells = get_size_cells (dev); - cells_per_mapping = parent_address_cells + child_address_cells + child_size_cells; - nmappings = ranges_size / 4 / cells_per_mapping; - for (i = 0; i < nmappings; i++) - { - const grub_uint32_t *child_addr = &ranges[i * cells_per_mapping]; - const grub_uint32_t *parent_addr = child_addr + child_address_cells; - grub_uint64_t child_size = get64 (parent_addr + parent_address_cells, child_size_cells); - - if (child_address_cells > 2 && grub_memcmp (reg, child_addr, (child_address_cells - 2) * 4) != 0) - continue; - if (get64 (reg, child_address_cells) < get64 (child_addr, child_address_cells)) - continue; - - grub_uint64_t offset = get64 (reg, child_address_cells) - get64 (child_addr, child_address_cells); - if (offset >= child_size) - continue; - - ret = translate (dev->parent, parent_addr); - if (grub_fdtbus_is_mapping_valid (ret)) - ret = (volatile char *) ret + offset; - return ret; - } - return grub_fdtbus_invalid_mapping; -} - -volatile void * -grub_fdtbus_map_reg (const struct grub_fdtbus_dev *dev, int regno, grub_size_t *size) -{ - grub_size_t address_cells, size_cells; - address_cells = get_address_cells (dev->parent); - size_cells = get_size_cells (dev->parent); - const grub_uint32_t *reg = grub_fdt_get_prop (dtb, dev->node, "reg", 0); - if (size && size_cells) - *size = reg[(address_cells + size_cells) * regno + address_cells]; - if (size && !size_cells) - *size = 0; - return translate (dev->parent, reg + (address_cells + size_cells) * regno); -} - -const char * -grub_fdtbus_get_name (const struct grub_fdtbus_dev *dev) -{ - return grub_fdt_get_nodename (dtb, dev->node); -} - -const void * -grub_fdtbus_get_prop (const struct grub_fdtbus_dev *dev, - const char *name, - grub_uint32_t *len) -{ - return grub_fdt_get_prop (dtb, dev->node, name, len); -} - -const void * -grub_fdtbus_get_fdt (void) -{ - return dtb; -} diff --git a/thirdparty/grub-2.04/grub-core/bus/i386/ieee1275/pci.c b/thirdparty/grub-2.04/grub-core/bus/i386/ieee1275/pci.c deleted file mode 100644 index 1fd3b5610..000000000 --- a/thirdparty/grub-2.04/grub-core/bus/i386/ieee1275/pci.c +++ /dev/null @@ -1,42 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2013 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include - -volatile void * -grub_pci_device_map_range (grub_pci_device_t dev __attribute__ ((unused)), - grub_addr_t base, - grub_size_t size) -{ - if (grub_ieee1275_test_flag (GRUB_IEEE1275_FLAG_REAL_MODE)) - return (volatile void *) base; - if (grub_ieee1275_map (base, base, size, 7)) - grub_fatal ("couldn't map 0x%lx", base); - return (volatile void *) base; -} - -void -grub_pci_device_unmap_range (grub_pci_device_t dev __attribute__ ((unused)), - volatile void *mem __attribute__ ((unused)), - grub_size_t size __attribute__ ((unused))) -{ -} diff --git a/thirdparty/grub-2.04/grub-core/bus/pci.c b/thirdparty/grub-2.04/grub-core/bus/pci.c deleted file mode 100644 index b388ce5c8..000000000 --- a/thirdparty/grub-2.04/grub-core/bus/pci.c +++ /dev/null @@ -1,173 +0,0 @@ -/* pci.c - Generic PCI interfaces. */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2007,2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -/* FIXME: correctly support 64-bit architectures. */ -/* #if GRUB_TARGET_SIZEOF_VOID_P == 4 */ -struct grub_pci_dma_chunk * -grub_memalign_dma32 (grub_size_t align, grub_size_t size) -{ - void *ret; - if (align < 64) - align = 64; - size = ALIGN_UP (size, align); - ret = grub_memalign (align, size); -#if GRUB_CPU_SIZEOF_VOID_P == 8 - if ((grub_addr_t) ret >> 32) - { - /* Shouldn't happend since the only platform in this case is - x86_64-efi and it skips any regions > 4GiB because - of EFI bugs anyway. */ - grub_error (GRUB_ERR_BUG, "allocation outside 32-bit range"); - return 0; - } -#endif - if (!ret) - return 0; - grub_arch_sync_dma_caches (ret, size); - return ret; -} - -/* FIXME: evil. */ -void -grub_dma_free (struct grub_pci_dma_chunk *ch) -{ - grub_size_t size = (((struct grub_mm_header *) ch) - 1)->size * GRUB_MM_ALIGN; - grub_arch_sync_dma_caches (ch, size); - grub_free (ch); -} -/* #endif */ - -#ifdef GRUB_MACHINE_MIPS_LOONGSON -volatile void * -grub_dma_get_virt (struct grub_pci_dma_chunk *ch) -{ - return (void *) ((((grub_uint32_t) ch) & 0x1fffffff) | 0xa0000000); -} - -grub_uint32_t -grub_dma_get_phys (struct grub_pci_dma_chunk *ch) -{ - return (((grub_uint32_t) ch) & 0x1fffffff) | 0x80000000; -} -#else - -volatile void * -grub_dma_get_virt (struct grub_pci_dma_chunk *ch) -{ - return (void *) ch; -} - -grub_uint32_t -grub_dma_get_phys (struct grub_pci_dma_chunk *ch) -{ - return (grub_uint32_t) (grub_addr_t) ch; -} - -#endif - -grub_pci_address_t -grub_pci_make_address (grub_pci_device_t dev, int reg) -{ - return (1 << 31) | (dev.bus << 16) | (dev.device << 11) - | (dev.function << 8) | reg; -} - -void -grub_pci_iterate (grub_pci_iteratefunc_t hook, void *hook_data) -{ - grub_pci_device_t dev; - grub_pci_address_t addr; - grub_pci_id_t id; - grub_uint32_t hdr; - - for (dev.bus = 0; dev.bus < GRUB_PCI_NUM_BUS; dev.bus++) - { - for (dev.device = 0; dev.device < GRUB_PCI_NUM_DEVICES; dev.device++) - { - for (dev.function = 0; dev.function < 8; dev.function++) - { - addr = grub_pci_make_address (dev, GRUB_PCI_REG_PCI_ID); - id = grub_pci_read (addr); - - /* Check if there is a device present. */ - if (id >> 16 == 0xFFFF) - { - if (dev.function == 0) - /* Devices are required to implement function 0, so if - it's missing then there is no device here. */ - break; - else - continue; - } - - if (hook (dev, id, hook_data)) - return; - - /* Probe only func = 0 if the device if not multifunction */ - if (dev.function == 0) - { - addr = grub_pci_make_address (dev, GRUB_PCI_REG_CACHELINE); - hdr = grub_pci_read (addr); - if (!(hdr & 0x800000)) - break; - } - } - } - } -} - -grub_uint8_t -grub_pci_find_capability (grub_pci_device_t dev, grub_uint8_t cap) -{ - grub_uint8_t pos = 0x34; - int ttl = 48; - - while (ttl--) - { - grub_uint8_t id; - grub_pci_address_t addr; - - addr = grub_pci_make_address (dev, pos); - pos = grub_pci_read_byte (addr); - if (pos < 0x40) - break; - - pos &= ~3; - - addr = grub_pci_make_address (dev, pos); - id = grub_pci_read_byte (addr); - - if (id == 0xff) - break; - - if (id == cap) - return pos; - pos++; - } - return 0; -} diff --git a/thirdparty/grub-2.04/grub-core/bus/spi/rk3288_spi.c b/thirdparty/grub-2.04/grub-core/bus/spi/rk3288_spi.c deleted file mode 100644 index aacb79ffe..000000000 --- a/thirdparty/grub-2.04/grub-core/bus/spi/rk3288_spi.c +++ /dev/null @@ -1,103 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * - * Copyright (C) 2012 Google Inc. - * Copyright (C) 2016 Free Software Foundation, Inc. - * - * This is based on depthcharge code. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include - -static grub_err_t -spi_send (const struct grub_fdtbus_dev *dev, const void *data, grub_size_t sz) -{ - const grub_uint8_t *ptr = data, *end = ptr + sz; - volatile grub_uint32_t *spi = grub_fdtbus_map_reg (dev, 0, 0); - spi[2] = 0; - spi[1] = sz - 1; - spi[0] = ((1 << 18) | spi[0]) & ~(1 << 19); - spi[2] = 1; - while (ptr < end) - { - while (spi[9] & 2); - spi[256] = *ptr++; - } - while (spi[9] & 1); - return GRUB_ERR_NONE; -} - -static grub_err_t -spi_receive (const struct grub_fdtbus_dev *dev, void *data, grub_size_t sz) -{ - grub_uint8_t *ptr = data, *end = ptr + sz; - volatile grub_uint32_t *spi = grub_fdtbus_map_reg (dev, 0, 0); - spi[2] = 0; - spi[1] = sz - 1; - spi[0] = ((1 << 19) | spi[0]) & ~(1 << 18); - spi[2] = 1; - while (ptr < end) - { - while (spi[9] & 8); - *ptr++ = spi[512]; - } - while (spi[9] & 1); - return GRUB_ERR_NONE; -} - -static grub_err_t -spi_start (const struct grub_fdtbus_dev *dev) -{ - volatile grub_uint32_t *spi = grub_fdtbus_map_reg (dev, 0, 0); - spi[3] = 1; - return GRUB_ERR_NONE; -} - -static void -spi_stop (const struct grub_fdtbus_dev *dev) -{ - volatile grub_uint32_t *spi = grub_fdtbus_map_reg (dev, 0, 0); - spi[3] = 0; -} - -static grub_err_t -spi_attach(const struct grub_fdtbus_dev *dev) -{ - if (!grub_fdtbus_is_mapping_valid (grub_fdtbus_map_reg (dev, 0, 0))) - return GRUB_ERR_IO; - - return GRUB_ERR_NONE; -} - -static struct grub_fdtbus_driver spi = -{ - .compatible = "rockchip,rk3288-spi", - .attach = spi_attach, - .send = spi_send, - .receive = spi_receive, - .start = spi_start, - .stop = spi_stop, -}; - -void -grub_rk3288_spi_init (void) -{ - grub_fdtbus_register (&spi); -} diff --git a/thirdparty/grub-2.04/grub-core/bus/usb/ehci-fdt.c b/thirdparty/grub-2.04/grub-core/bus/usb/ehci-fdt.c deleted file mode 100644 index 29b50bdd5..000000000 --- a/thirdparty/grub-2.04/grub-core/bus/usb/ehci-fdt.c +++ /dev/null @@ -1,45 +0,0 @@ -/* ehci.c - EHCI Support. */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2011 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include - -static grub_err_t -ehci_attach(const struct grub_fdtbus_dev *dev) -{ - grub_dprintf ("ehci", "Found generic-ehci\n"); - - grub_ehci_init_device (grub_fdtbus_map_reg (dev, 0, 0)); - return 0; -} - -struct grub_fdtbus_driver ehci = -{ - .compatible = "generic-ehci", - .attach = ehci_attach -}; - -void -grub_ehci_pci_scan (void) -{ - grub_fdtbus_register (&ehci); -} diff --git a/thirdparty/grub-2.04/grub-core/bus/usb/ehci-pci.c b/thirdparty/grub-2.04/grub-core/bus/usb/ehci-pci.c deleted file mode 100644 index 65e6cb574..000000000 --- a/thirdparty/grub-2.04/grub-core/bus/usb/ehci-pci.c +++ /dev/null @@ -1,208 +0,0 @@ -/* ehci.c - EHCI Support. */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2011 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include - -#define GRUB_EHCI_PCI_SBRN_REG 0x60 -#define GRUB_EHCI_ADDR_MEM_MASK (~0xff) - -/* USBLEGSUP bits and related OS OWNED byte offset */ -enum -{ - GRUB_EHCI_BIOS_OWNED = (1 << 16), - GRUB_EHCI_OS_OWNED = (1 << 24) -}; - -/* PCI iteration function... */ -static int -grub_ehci_pci_iter (grub_pci_device_t dev, grub_pci_id_t pciid, - void *data __attribute__ ((unused))) -{ - volatile grub_uint32_t *regs; - grub_uint32_t base, base_h; - grub_uint32_t eecp_offset; - grub_uint32_t usblegsup = 0; - grub_uint64_t maxtime; - grub_uint32_t interf; - grub_uint32_t subclass; - grub_uint32_t class; - grub_uint8_t release; - grub_uint32_t class_code; - - grub_dprintf ("ehci", "EHCI grub_ehci_pci_iter: begin\n"); - - if (pciid == GRUB_CS5536_PCIID) - { - grub_uint64_t basereg; - - basereg = grub_cs5536_read_msr (dev, GRUB_CS5536_MSR_USB_EHCI_BASE); - if (!(basereg & GRUB_CS5536_MSR_USB_BASE_MEMORY_ENABLE)) - { - /* Shouldn't happen. */ - grub_dprintf ("ehci", "No EHCI address is assigned\n"); - return 0; - } - base = (basereg & GRUB_CS5536_MSR_USB_BASE_ADDR_MASK); - basereg |= GRUB_CS5536_MSR_USB_BASE_BUS_MASTER; - basereg &= ~GRUB_CS5536_MSR_USB_BASE_PME_ENABLED; - basereg &= ~GRUB_CS5536_MSR_USB_BASE_PME_STATUS; - basereg &= ~GRUB_CS5536_MSR_USB_BASE_SMI_ENABLE; - grub_cs5536_write_msr (dev, GRUB_CS5536_MSR_USB_EHCI_BASE, basereg); - } - else - { - grub_pci_address_t addr; - addr = grub_pci_make_address (dev, GRUB_PCI_REG_CLASS); - class_code = grub_pci_read (addr) >> 8; - interf = class_code & 0xFF; - subclass = (class_code >> 8) & 0xFF; - class = class_code >> 16; - - /* If this is not an EHCI controller, just return. */ - if (class != 0x0c || subclass != 0x03 || interf != 0x20) - return 0; - - grub_dprintf ("ehci", "EHCI grub_ehci_pci_iter: class OK\n"); - - /* Check Serial Bus Release Number */ - addr = grub_pci_make_address (dev, GRUB_EHCI_PCI_SBRN_REG); - release = grub_pci_read_byte (addr); - if (release != 0x20) - { - grub_dprintf ("ehci", "EHCI grub_ehci_pci_iter: Wrong SBRN: %0x\n", - release); - return 0; - } - grub_dprintf ("ehci", "EHCI grub_ehci_pci_iter: bus rev. num. OK\n"); - - /* Determine EHCI EHCC registers base address. */ - addr = grub_pci_make_address (dev, GRUB_PCI_REG_ADDRESS_REG0); - base = grub_pci_read (addr); - addr = grub_pci_make_address (dev, GRUB_PCI_REG_ADDRESS_REG1); - base_h = grub_pci_read (addr); - /* Stop if registers are mapped above 4G - GRUB does not currently - * work with registers mapped above 4G */ - if (((base & GRUB_PCI_ADDR_MEM_TYPE_MASK) != GRUB_PCI_ADDR_MEM_TYPE_32) - && (base_h != 0)) - { - grub_dprintf ("ehci", - "EHCI grub_ehci_pci_iter: registers above 4G are not supported\n"); - return 0; - } - base &= GRUB_PCI_ADDR_MEM_MASK; - if (!base) - { - grub_dprintf ("ehci", - "EHCI: EHCI is not mapped\n"); - return 0; - } - - /* Set bus master - needed for coreboot, VMware, broken BIOSes etc. */ - addr = grub_pci_make_address (dev, GRUB_PCI_REG_COMMAND); - grub_pci_write_word(addr, - GRUB_PCI_COMMAND_MEM_ENABLED - | GRUB_PCI_COMMAND_BUS_MASTER - | grub_pci_read_word(addr)); - - grub_dprintf ("ehci", "EHCI grub_ehci_pci_iter: 32-bit EHCI OK\n"); - } - - grub_dprintf ("ehci", "EHCI grub_ehci_pci_iter: iobase of EHCC: %08x\n", - (base & GRUB_EHCI_ADDR_MEM_MASK)); - - regs = grub_pci_device_map_range (dev, - (base & GRUB_EHCI_ADDR_MEM_MASK), - 0x100); - - /* Is there EECP ? */ - eecp_offset = (grub_le_to_cpu32 (regs[2]) >> 8) & 0xff; - - /* Determine and change ownership. */ - /* EECP offset valid in HCCPARAMS */ - /* Ownership can be changed via EECP only */ - if (pciid != GRUB_CS5536_PCIID && eecp_offset >= 0x40) - { - grub_pci_address_t pciaddr_eecp; - pciaddr_eecp = grub_pci_make_address (dev, eecp_offset); - - usblegsup = grub_pci_read (pciaddr_eecp); - if (usblegsup & GRUB_EHCI_BIOS_OWNED) - { - grub_boot_time ("Taking ownership of EHCI controller"); - grub_dprintf ("ehci", - "EHCI grub_ehci_pci_iter: EHCI owned by: BIOS\n"); - /* Ownership change - set OS_OWNED bit */ - grub_pci_write (pciaddr_eecp, usblegsup | GRUB_EHCI_OS_OWNED); - /* Ensure PCI register is written */ - grub_pci_read (pciaddr_eecp); - - /* Wait for finish of ownership change, EHCI specification - * doesn't say how long it can take... */ - maxtime = grub_get_time_ms () + 1000; - while ((grub_pci_read (pciaddr_eecp) & GRUB_EHCI_BIOS_OWNED) - && (grub_get_time_ms () < maxtime)); - if (grub_pci_read (pciaddr_eecp) & GRUB_EHCI_BIOS_OWNED) - { - grub_dprintf ("ehci", - "EHCI grub_ehci_pci_iter: EHCI change ownership timeout"); - /* Change ownership in "hard way" - reset BIOS ownership */ - grub_pci_write (pciaddr_eecp, GRUB_EHCI_OS_OWNED); - /* Ensure PCI register is written */ - grub_pci_read (pciaddr_eecp); - } - } - else if (usblegsup & GRUB_EHCI_OS_OWNED) - /* XXX: What to do in this case - nothing ? Can it happen ? */ - grub_dprintf ("ehci", "EHCI grub_ehci_pci_iter: EHCI owned by: OS\n"); - else - { - grub_dprintf ("ehci", - "EHCI grub_ehci_pci_iter: EHCI owned by: NONE\n"); - /* XXX: What to do in this case ? Can it happen ? - * Is code below correct ? */ - /* Ownership change - set OS_OWNED bit */ - grub_pci_write (pciaddr_eecp, GRUB_EHCI_OS_OWNED); - /* Ensure PCI register is written */ - grub_pci_read (pciaddr_eecp); - } - - /* Disable SMI, just to be sure. */ - pciaddr_eecp = grub_pci_make_address (dev, eecp_offset + 4); - grub_pci_write (pciaddr_eecp, 0); - /* Ensure PCI register is written */ - grub_pci_read (pciaddr_eecp); - } - - grub_dprintf ("ehci", "inithw: EHCI grub_ehci_pci_iter: ownership OK\n"); - - grub_ehci_init_device (regs); - return 0; -} - -void -grub_ehci_pci_scan (void) -{ - grub_pci_iterate (grub_ehci_pci_iter, NULL); -} diff --git a/thirdparty/grub-2.04/grub-core/bus/usb/ehci.c b/thirdparty/grub-2.04/grub-core/bus/usb/ehci.c deleted file mode 100644 index d966fc210..000000000 --- a/thirdparty/grub-2.04/grub-core/bus/usb/ehci.c +++ /dev/null @@ -1,1839 +0,0 @@ -/* ehci.c - EHCI Support. */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2011 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -/* This simple GRUB implementation of EHCI driver: - * - assumes no IRQ - * - is not supporting isochronous transfers (iTD, siTD) - * - is not supporting interrupt transfers - */ - -/* Capability registers offsets */ -enum -{ - GRUB_EHCI_EHCC_CAPLEN = 0x00, /* byte */ - GRUB_EHCI_EHCC_VERSION = 0x02, /* word */ - GRUB_EHCI_EHCC_SPARAMS = 0x04, /* dword */ - GRUB_EHCI_EHCC_CPARAMS = 0x08, /* dword */ - GRUB_EHCI_EHCC_PROUTE = 0x0c, /* 60 bits */ -}; - -#define GRUB_EHCI_EECP_MASK (0xff << 8) -#define GRUB_EHCI_EECP_SHIFT 8 - -#define GRUB_EHCI_POINTER_MASK (~0x1f) - -/* Capability register SPARAMS bits */ -enum -{ - GRUB_EHCI_SPARAMS_N_PORTS = (0xf << 0), - GRUB_EHCI_SPARAMS_PPC = (1 << 4), /* Power port control */ - GRUB_EHCI_SPARAMS_PRR = (1 << 7), /* Port routing rules */ - GRUB_EHCI_SPARAMS_N_PCC = (0xf << 8), /* No of ports per comp. */ - GRUB_EHCI_SPARAMS_NCC = (0xf << 12), /* No of com. controllers */ - GRUB_EHCI_SPARAMS_P_IND = (1 << 16), /* Port indicators present */ - GRUB_EHCI_SPARAMS_DEBUG_P = (0xf << 20) /* Debug port */ -}; - -#define GRUB_EHCI_MAX_N_PORTS 15 /* Max. number of ports */ - -/* Capability register CPARAMS bits */ -enum -{ - GRUB_EHCI_CPARAMS_64BIT = (1 << 0), - GRUB_EHCI_CPARAMS_PROG_FRAMELIST = (1 << 1), - GRUB_EHCI_CPARAMS_PARK_CAP = (1 << 2) -}; - -#define GRUB_EHCI_N_FRAMELIST 1024 -#define GRUB_EHCI_N_QH 256 -#define GRUB_EHCI_N_TD 640 - -#define GRUB_EHCI_QH_EMPTY 1 - -/* Operational registers offsets */ -enum -{ - GRUB_EHCI_COMMAND = 0x00, - GRUB_EHCI_STATUS = 0x04, - GRUB_EHCI_INTERRUPT = 0x08, - GRUB_EHCI_FRAME_INDEX = 0x0c, - GRUB_EHCI_64BIT_SEL = 0x10, - GRUB_EHCI_FL_BASE = 0x14, - GRUB_EHCI_CUR_AL_ADDR = 0x18, - GRUB_EHCI_CONFIG_FLAG = 0x40, - GRUB_EHCI_PORT_STAT_CMD = 0x44 -}; - -/* Operational register COMMAND bits */ -enum -{ - GRUB_EHCI_CMD_RUNSTOP = (1 << 0), - GRUB_EHCI_CMD_HC_RESET = (1 << 1), - GRUB_EHCI_CMD_FL_SIZE = (3 << 2), - GRUB_EHCI_CMD_PS_ENABL = (1 << 4), - GRUB_EHCI_CMD_AS_ENABL = (1 << 5), - GRUB_EHCI_CMD_AS_ADV_D = (1 << 6), - GRUB_EHCI_CMD_L_HC_RES = (1 << 7), - GRUB_EHCI_CMD_AS_PARKM = (3 << 8), - GRUB_EHCI_CMD_AS_PARKE = (1 << 11), - GRUB_EHCI_CMD_INT_THRS = (0xff << 16) -}; - -/* Operational register STATUS bits */ -enum -{ - GRUB_EHCI_ST_INTERRUPT = (1 << 0), - GRUB_EHCI_ST_ERROR_INT = (1 << 1), - GRUB_EHCI_ST_PORT_CHG = (1 << 2), - GRUB_EHCI_ST_FL_ROLLOVR = (1 << 3), - GRUB_EHCI_ST_HS_ERROR = (1 << 4), - GRUB_EHCI_ST_AS_ADVANCE = (1 << 5), - GRUB_EHCI_ST_HC_HALTED = (1 << 12), - GRUB_EHCI_ST_RECLAM = (1 << 13), - GRUB_EHCI_ST_PS_STATUS = (1 << 14), - GRUB_EHCI_ST_AS_STATUS = (1 << 15) -}; - -/* Operational register PORT_STAT_CMD bits */ -enum -{ - GRUB_EHCI_PORT_CONNECT = (1 << 0), - GRUB_EHCI_PORT_CONNECT_CH = (1 << 1), - GRUB_EHCI_PORT_ENABLED = (1 << 2), - GRUB_EHCI_PORT_ENABLED_CH = (1 << 3), - GRUB_EHCI_PORT_OVERCUR = (1 << 4), - GRUB_EHCI_PORT_OVERCUR_CH = (1 << 5), - GRUB_EHCI_PORT_RESUME = (1 << 6), - GRUB_EHCI_PORT_SUSPEND = (1 << 7), - GRUB_EHCI_PORT_RESET = (1 << 8), - GRUB_EHCI_PORT_LINE_STAT = (3 << 10), - GRUB_EHCI_PORT_POWER = (1 << 12), - GRUB_EHCI_PORT_OWNER = (1 << 13), - GRUB_EHCI_PORT_INDICATOR = (3 << 14), - GRUB_EHCI_PORT_TEST = (0xf << 16), - GRUB_EHCI_PORT_WON_CONN_E = (1 << 20), - GRUB_EHCI_PORT_WON_DISC_E = (1 << 21), - GRUB_EHCI_PORT_WON_OVER_E = (1 << 22), - - GRUB_EHCI_PORT_LINE_SE0 = (0 << 10), - GRUB_EHCI_PORT_LINE_K = (1 << 10), - GRUB_EHCI_PORT_LINE_J = (2 << 10), - GRUB_EHCI_PORT_LINE_UNDEF = (3 << 10), - GRUB_EHCI_PORT_LINE_LOWSP = GRUB_EHCI_PORT_LINE_K, /* K state means low speed */ - GRUB_EHCI_PORT_WMASK = ~(GRUB_EHCI_PORT_CONNECT_CH - | GRUB_EHCI_PORT_ENABLED_CH - | GRUB_EHCI_PORT_OVERCUR_CH) -}; - -/* Operational register CONFIGFLAGS bits */ -enum -{ - GRUB_EHCI_CF_EHCI_OWNER = (1 << 0) -}; - -/* Queue Head & Transfer Descriptor constants */ -#define GRUB_EHCI_HPTR_OFF 5 /* Horiz. pointer bit offset */ -enum -{ - GRUB_EHCI_HPTR_TYPE_MASK = (3 << 1), - GRUB_EHCI_HPTR_TYPE_ITD = (0 << 1), - GRUB_EHCI_HPTR_TYPE_QH = (1 << 1), - GRUB_EHCI_HPTR_TYPE_SITD = (2 << 1), - GRUB_EHCI_HPTR_TYPE_FSTN = (3 << 1) -}; - -enum -{ - GRUB_EHCI_C = (1 << 27), - GRUB_EHCI_MAXPLEN_MASK = (0x7ff << 16), - GRUB_EHCI_H = (1 << 15), - GRUB_EHCI_DTC = (1 << 14), - GRUB_EHCI_SPEED_MASK = (3 << 12), - GRUB_EHCI_SPEED_FULL = (0 << 12), - GRUB_EHCI_SPEED_LOW = (1 << 12), - GRUB_EHCI_SPEED_HIGH = (2 << 12), - GRUB_EHCI_SPEED_RESERVED = (3 << 12), - GRUB_EHCI_EP_NUM_MASK = (0xf << 8), - GRUB_EHCI_DEVADDR_MASK = 0x7f, - GRUB_EHCI_TARGET_MASK = (GRUB_EHCI_EP_NUM_MASK | GRUB_EHCI_DEVADDR_MASK) -}; - -enum -{ - GRUB_EHCI_MAXPLEN_OFF = 16, - GRUB_EHCI_SPEED_OFF = 12, - GRUB_EHCI_EP_NUM_OFF = 8 -}; - -enum -{ - GRUB_EHCI_MULT_MASK = (3 << 30), - GRUB_EHCI_MULT_RESERVED = (0 << 30), - GRUB_EHCI_MULT_ONE = (1 << 30), - GRUB_EHCI_MULT_TWO = (2 << 30), - GRUB_EHCI_MULT_THREE = (3 << 30), - GRUB_EHCI_DEVPORT_MASK = (0x7f << 23), - GRUB_EHCI_HUBADDR_MASK = (0x7f << 16), - GRUB_EHCI_CMASK_MASK = (0xff << 8), - GRUB_EHCI_SMASK_MASK = (0xff << 0), -}; - -enum -{ - GRUB_EHCI_MULT_OFF = 30, - GRUB_EHCI_DEVPORT_OFF = 23, - GRUB_EHCI_HUBADDR_OFF = 16, - GRUB_EHCI_CMASK_OFF = 8, - GRUB_EHCI_SMASK_OFF = 0, -}; - -#define GRUB_EHCI_TERMINATE (1<<0) - -#define GRUB_EHCI_TOGGLE (1<<31) - -enum -{ - GRUB_EHCI_TOTAL_MASK = (0x7fff << 16), - GRUB_EHCI_CERR_MASK = (3 << 10), - GRUB_EHCI_CERR_0 = (0 << 10), - GRUB_EHCI_CERR_1 = (1 << 10), - GRUB_EHCI_CERR_2 = (2 << 10), - GRUB_EHCI_CERR_3 = (3 << 10), - GRUB_EHCI_PIDCODE_OUT = (0 << 8), - GRUB_EHCI_PIDCODE_IN = (1 << 8), - GRUB_EHCI_PIDCODE_SETUP = (2 << 8), - GRUB_EHCI_STATUS_MASK = 0xff, - GRUB_EHCI_STATUS_ACTIVE = (1 << 7), - GRUB_EHCI_STATUS_HALTED = (1 << 6), - GRUB_EHCI_STATUS_BUFERR = (1 << 5), - GRUB_EHCI_STATUS_BABBLE = (1 << 4), - GRUB_EHCI_STATUS_TRANERR = (1 << 3), - GRUB_EHCI_STATUS_MISSDMF = (1 << 2), - GRUB_EHCI_STATUS_SPLITST = (1 << 1), - GRUB_EHCI_STATUS_PINGERR = (1 << 0) -}; - -enum -{ - GRUB_EHCI_TOTAL_OFF = 16, - GRUB_EHCI_CERR_OFF = 10 -}; - -#define GRUB_EHCI_BUFPTR_MASK (0xfffff<<12) -#define GRUB_EHCI_QHTDPTR_MASK 0xffffffe0 - -#define GRUB_EHCI_TD_BUF_PAGES 5 - -#define GRUB_EHCI_BUFPAGELEN 0x1000 -#define GRUB_EHCI_MAXBUFLEN 0x5000 - -struct grub_ehci_td; -struct grub_ehci_qh; -typedef volatile struct grub_ehci_td *grub_ehci_td_t; -typedef volatile struct grub_ehci_qh *grub_ehci_qh_t; - -/* EHCI Isochronous Transfer Descriptor */ -/* Currently not supported */ - -/* EHCI Split Transaction Isochronous Transfer Descriptor */ -/* Currently not supported */ - -/* EHCI Queue Element Transfer Descriptor (qTD) */ -/* Align to 32-byte boundaries */ -struct grub_ehci_td -{ - /* EHCI HW part */ - grub_uint32_t next_td; /* Pointer to next qTD */ - grub_uint32_t alt_next_td; /* Pointer to alternate next qTD */ - grub_uint32_t token; /* Toggle, Len, Interrupt, Page, Error, PID, Status */ - grub_uint32_t buffer_page[GRUB_EHCI_TD_BUF_PAGES]; /* Buffer pointer (+ cur. offset in page 0 */ - /* 64-bits part */ - grub_uint32_t buffer_page_high[GRUB_EHCI_TD_BUF_PAGES]; - /* EHCI driver part */ - grub_uint32_t link_td; /* pointer to next free/chained TD */ - grub_uint32_t size; - grub_uint32_t pad[1]; /* padding to some multiple of 32 bytes */ -}; - -/* EHCI Queue Head */ -/* Align to 32-byte boundaries */ -/* QH allocation is made in the similar/same way as in OHCI driver, - * because unlninking QH from the Asynchronous list is not so - * trivial as on UHCI (at least it is time consuming) */ -struct grub_ehci_qh -{ - /* EHCI HW part */ - grub_uint32_t qh_hptr; /* Horiz. pointer & Terminate */ - grub_uint32_t ep_char; /* EP characteristics */ - grub_uint32_t ep_cap; /* EP capabilities */ - grub_uint32_t td_current; /* current TD link pointer */ - struct grub_ehci_td td_overlay; /* TD overlay area = 64 bytes */ - /* EHCI driver part */ - grub_uint32_t pad[4]; /* padding to some multiple of 32 bytes */ -}; - -/* EHCI Periodic Frame Span Traversal Node */ -/* Currently not supported */ - -struct grub_ehci -{ - volatile grub_uint32_t *iobase_ehcc; /* Capability registers */ - volatile grub_uint32_t *iobase; /* Operational registers */ - struct grub_pci_dma_chunk *framelist_chunk; /* Currently not used */ - volatile grub_uint32_t *framelist_virt; - grub_uint32_t framelist_phys; - struct grub_pci_dma_chunk *qh_chunk; /* GRUB_EHCI_N_QH Queue Heads */ - grub_ehci_qh_t qh_virt; - grub_uint32_t qh_phys; - struct grub_pci_dma_chunk *td_chunk; /* GRUB_EHCI_N_TD Transfer Descriptors */ - grub_ehci_td_t td_virt; - grub_uint32_t td_phys; - grub_ehci_td_t tdfree_virt; /* Free Transfer Descriptors */ - int flag64; - grub_uint32_t reset; /* bits 1-15 are flags if port was reset from connected time or not */ - struct grub_ehci *next; -}; - -static struct grub_ehci *ehci; - -static void -sync_all_caches (struct grub_ehci *e) -{ - if (!e) - return; - if (e->td_virt) - grub_arch_sync_dma_caches (e->td_virt, sizeof (struct grub_ehci_td) * - GRUB_EHCI_N_TD); - if (e->qh_virt) - grub_arch_sync_dma_caches (e->qh_virt, sizeof (struct grub_ehci_qh) * - GRUB_EHCI_N_QH); - if (e->framelist_virt) - grub_arch_sync_dma_caches (e->framelist_virt, 4096); -} - -/* EHCC registers access functions */ -static inline grub_uint32_t -grub_ehci_ehcc_read32 (struct grub_ehci *e, grub_uint32_t addr) -{ - return - grub_le_to_cpu32 (*((volatile grub_uint32_t *) e->iobase_ehcc + - (addr / sizeof (grub_uint32_t)))); -} - -static inline grub_uint16_t -grub_ehci_ehcc_read16 (struct grub_ehci *e, grub_uint32_t addr) -{ - return - grub_le_to_cpu16 (*((volatile grub_uint16_t *) e->iobase_ehcc + - (addr / sizeof (grub_uint16_t)))); -} - -static inline grub_uint8_t -grub_ehci_ehcc_read8 (struct grub_ehci *e, grub_uint32_t addr) -{ - return *((volatile grub_uint8_t *) e->iobase_ehcc + addr); -} - -/* Operational registers access functions */ -static inline grub_uint32_t -grub_ehci_oper_read32 (struct grub_ehci *e, grub_uint32_t addr) -{ - return - grub_le_to_cpu32 (* - ((volatile grub_uint32_t *) e->iobase + - (addr / sizeof (grub_uint32_t)))); -} - -static inline void -grub_ehci_oper_write32 (struct grub_ehci *e, grub_uint32_t addr, - grub_uint32_t value) -{ - *((volatile grub_uint32_t *) e->iobase + (addr / sizeof (grub_uint32_t))) = - grub_cpu_to_le32 (value); -} - -static inline grub_uint32_t -grub_ehci_port_read (struct grub_ehci *e, grub_uint32_t port) -{ - return grub_ehci_oper_read32 (e, GRUB_EHCI_PORT_STAT_CMD + port * 4); -} - -static inline void -grub_ehci_port_resbits (struct grub_ehci *e, grub_uint32_t port, - grub_uint32_t bits) -{ - grub_ehci_oper_write32 (e, GRUB_EHCI_PORT_STAT_CMD + port * 4, - grub_ehci_port_read (e, - port) & GRUB_EHCI_PORT_WMASK & - ~(bits)); - grub_ehci_port_read (e, port); -} - -static inline void -grub_ehci_port_setbits (struct grub_ehci *e, grub_uint32_t port, - grub_uint32_t bits) -{ - grub_ehci_oper_write32 (e, GRUB_EHCI_PORT_STAT_CMD + port * 4, - (grub_ehci_port_read (e, port) & - GRUB_EHCI_PORT_WMASK) | bits); - grub_ehci_port_read (e, port); -} - -/* Halt if EHCI HC not halted */ -static grub_usb_err_t -grub_ehci_halt (struct grub_ehci *e) -{ - grub_uint64_t maxtime; - - if ((grub_ehci_oper_read32 (e, GRUB_EHCI_STATUS) & GRUB_EHCI_ST_HC_HALTED) == 0) /* EHCI is not halted */ - { - /* Halt EHCI */ - grub_ehci_oper_write32 (e, GRUB_EHCI_COMMAND, - ~GRUB_EHCI_CMD_RUNSTOP - & grub_ehci_oper_read32 (e, GRUB_EHCI_COMMAND)); - /* Ensure command is written */ - grub_ehci_oper_read32 (e, GRUB_EHCI_COMMAND); - maxtime = grub_get_time_ms () + 1000; /* Fix: Should be 2ms ! */ - while (((grub_ehci_oper_read32 (e, GRUB_EHCI_STATUS) - & GRUB_EHCI_ST_HC_HALTED) == 0) - && (grub_get_time_ms () < maxtime)); - if ((grub_ehci_oper_read32 (e, GRUB_EHCI_STATUS) - & GRUB_EHCI_ST_HC_HALTED) == 0) - return GRUB_USB_ERR_TIMEOUT; - } - - return GRUB_USB_ERR_NONE; -} - -/* EHCI HC reset */ -static grub_usb_err_t -grub_ehci_reset (struct grub_ehci *e) -{ - grub_uint64_t maxtime; - - sync_all_caches (e); - - grub_dprintf ("ehci", "reset\n"); - - grub_ehci_oper_write32 (e, GRUB_EHCI_COMMAND, - GRUB_EHCI_CMD_HC_RESET); - /* Ensure command is written */ - grub_ehci_oper_read32 (e, GRUB_EHCI_COMMAND); - /* XXX: How long time could take reset of HC ? */ - maxtime = grub_get_time_ms () + 1000; - while (((grub_ehci_oper_read32 (e, GRUB_EHCI_COMMAND) - & GRUB_EHCI_CMD_HC_RESET) != 0) - && (grub_get_time_ms () < maxtime)); - if ((grub_ehci_oper_read32 (e, GRUB_EHCI_COMMAND) - & GRUB_EHCI_CMD_HC_RESET) != 0) - return GRUB_USB_ERR_TIMEOUT; - - return GRUB_USB_ERR_NONE; -} - -/* PCI iteration function... */ -void -grub_ehci_init_device (volatile void *regs) -{ - struct grub_ehci *e; - grub_uint32_t fp; - int i; - grub_uint32_t n_ports; - grub_uint8_t caplen; - - /* Allocate memory for the controller and fill basic values. */ - e = grub_zalloc (sizeof (*e)); - if (!e) - return; - e->framelist_chunk = NULL; - e->td_chunk = NULL; - e->qh_chunk = NULL; - e->iobase_ehcc = regs; - - grub_dprintf ("ehci", "EHCI grub_ehci_pci_iter: CAPLEN: %02x\n", - grub_ehci_ehcc_read8 (e, GRUB_EHCI_EHCC_CAPLEN)); - grub_dprintf ("ehci", "EHCI grub_ehci_pci_iter: VERSION: %04x\n", - grub_ehci_ehcc_read16 (e, GRUB_EHCI_EHCC_VERSION)); - grub_dprintf ("ehci", "EHCI grub_ehci_pci_iter: SPARAMS: %08x\n", - grub_ehci_ehcc_read32 (e, GRUB_EHCI_EHCC_SPARAMS)); - grub_dprintf ("ehci", "EHCI grub_ehci_pci_iter: CPARAMS: %08x\n", - grub_ehci_ehcc_read32 (e, GRUB_EHCI_EHCC_CPARAMS)); - - /* Determine base address of EHCI operational registers */ - caplen = grub_ehci_ehcc_read8 (e, GRUB_EHCI_EHCC_CAPLEN); -#ifndef GRUB_HAVE_UNALIGNED_ACCESS - if (caplen & (sizeof (grub_uint32_t) - 1)) - { - grub_dprintf ("ehci", "Unaligned caplen\n"); - return; - } - e->iobase = ((volatile grub_uint32_t *) e->iobase_ehcc - + (caplen / sizeof (grub_uint32_t))); -#else - e->iobase = (volatile grub_uint32_t *) - ((grub_uint8_t *) e->iobase_ehcc + caplen); -#endif - - grub_dprintf ("ehci", - "EHCI grub_ehci_pci_iter: iobase of oper. regs: %08llxx\n", - (unsigned long long) (grub_addr_t) e->iobase_ehcc + caplen); - grub_dprintf ("ehci", "EHCI grub_ehci_pci_iter: COMMAND: %08x\n", - grub_ehci_oper_read32 (e, GRUB_EHCI_COMMAND)); - grub_dprintf ("ehci", "EHCI grub_ehci_pci_iter: STATUS: %08x\n", - grub_ehci_oper_read32 (e, GRUB_EHCI_STATUS)); - grub_dprintf ("ehci", "EHCI grub_ehci_pci_iter: INTERRUPT: %08x\n", - grub_ehci_oper_read32 (e, GRUB_EHCI_INTERRUPT)); - grub_dprintf ("ehci", "EHCI grub_ehci_pci_iter: FRAME_INDEX: %08x\n", - grub_ehci_oper_read32 (e, GRUB_EHCI_FRAME_INDEX)); - grub_dprintf ("ehci", "EHCI grub_ehci_pci_iter: FL_BASE: %08x\n", - grub_ehci_oper_read32 (e, GRUB_EHCI_FL_BASE)); - grub_dprintf ("ehci", "EHCI grub_ehci_pci_iter: CUR_AL_ADDR: %08x\n", - grub_ehci_oper_read32 (e, GRUB_EHCI_CUR_AL_ADDR)); - grub_dprintf ("ehci", "EHCI grub_ehci_pci_iter: CONFIG_FLAG: %08x\n", - grub_ehci_oper_read32 (e, GRUB_EHCI_CONFIG_FLAG)); - - /* Check format of data structures requested by EHCI */ - /* XXX: In fact it is not used at any place, it is prepared for future - * This implementation uses 32-bits pointers only */ - e->flag64 = ((grub_ehci_ehcc_read32 (e, GRUB_EHCI_EHCC_CPARAMS) - & GRUB_EHCI_CPARAMS_64BIT) != 0); - - grub_dprintf ("ehci", "EHCI grub_ehci_pci_iter: flag64=%d\n", e->flag64); - - /* Reserve a page for the frame list - it is accurate for max. - * possible size of framelist. But currently it is not used. */ - e->framelist_chunk = grub_memalign_dma32 (4096, 4096); - if (!e->framelist_chunk) - goto fail; - e->framelist_virt = grub_dma_get_virt (e->framelist_chunk); - e->framelist_phys = grub_dma_get_phys (e->framelist_chunk); - grub_memset ((void *) e->framelist_virt, 0, 4096); - - grub_dprintf ("ehci", "EHCI grub_ehci_pci_iter: framelist mem=%p. OK\n", - e->framelist_virt); - - /* Allocate memory for the QHs and register it in "e". */ - e->qh_chunk = grub_memalign_dma32 (4096, - sizeof (struct grub_ehci_qh) * - GRUB_EHCI_N_QH); - if (!e->qh_chunk) - goto fail; - e->qh_virt = (grub_ehci_qh_t) grub_dma_get_virt (e->qh_chunk); - e->qh_phys = grub_dma_get_phys (e->qh_chunk); - grub_memset ((void *) e->qh_virt, 0, - sizeof (struct grub_ehci_qh) * GRUB_EHCI_N_QH); - - grub_dprintf ("ehci", "EHCI grub_ehci_pci_iter: QH mem=%p. OK\n", - e->qh_virt); - - /* Allocate memory for the TDs and register it in "e". */ - e->td_chunk = grub_memalign_dma32 (4096, - sizeof (struct grub_ehci_td) * - GRUB_EHCI_N_TD); - if (!e->td_chunk) - goto fail; - e->td_virt = (grub_ehci_td_t) grub_dma_get_virt (e->td_chunk); - e->td_phys = grub_dma_get_phys (e->td_chunk); - grub_memset ((void *) e->td_virt, 0, - sizeof (struct grub_ehci_td) * GRUB_EHCI_N_TD); - - grub_dprintf ("ehci", "EHCI grub_ehci_pci_iter: TD mem=%p. OK\n", - e->td_virt); - - /* Setup all frame list pointers. Since no isochronous transfers - are supported, they all point to the (same!) queue - head with index 0. */ - fp = grub_cpu_to_le32 ((e->qh_phys & GRUB_EHCI_POINTER_MASK) - | GRUB_EHCI_HPTR_TYPE_QH); - for (i = 0; i < GRUB_EHCI_N_FRAMELIST; i++) - e->framelist_virt[i] = fp; - /* Prepare chain of all TDs and set Terminate in all TDs */ - for (i = 0; i < (GRUB_EHCI_N_TD - 1); i++) - { - e->td_virt[i].link_td = e->td_phys + (i + 1) * sizeof (struct grub_ehci_td); - e->td_virt[i].next_td = grub_cpu_to_le32_compile_time (GRUB_EHCI_TERMINATE); - e->td_virt[i].alt_next_td = grub_cpu_to_le32_compile_time (GRUB_EHCI_TERMINATE); - } - e->td_virt[GRUB_EHCI_N_TD - 1].next_td = - grub_cpu_to_le32_compile_time (GRUB_EHCI_TERMINATE); - e->td_virt[GRUB_EHCI_N_TD - 1].alt_next_td = - grub_cpu_to_le32_compile_time (GRUB_EHCI_TERMINATE); - e->tdfree_virt = e->td_virt; - /* Set Terminate in first QH, which is used in framelist */ - e->qh_virt[0].qh_hptr = grub_cpu_to_le32_compile_time (GRUB_EHCI_TERMINATE | GRUB_EHCI_HPTR_TYPE_QH); - e->qh_virt[0].td_overlay.next_td = grub_cpu_to_le32_compile_time (GRUB_EHCI_TERMINATE); - e->qh_virt[0].td_overlay.alt_next_td = - grub_cpu_to_le32_compile_time (GRUB_EHCI_TERMINATE); - /* Also set Halted bit in token */ - e->qh_virt[0].td_overlay.token = grub_cpu_to_le32_compile_time (GRUB_EHCI_STATUS_HALTED); - /* Set the H bit in first QH used for AL */ - e->qh_virt[1].ep_char = grub_cpu_to_le32_compile_time (GRUB_EHCI_H); - /* Set Terminate into TD in rest of QHs and set horizontal link - * pointer to itself - these QHs will be used for asynchronous - * schedule and they should have valid value in horiz. link */ - for (i = 1; i < GRUB_EHCI_N_QH; i++) - { - e->qh_virt[i].qh_hptr = - grub_cpu_to_le32 ((grub_dma_virt2phys (&e->qh_virt[i], - e->qh_chunk) & - GRUB_EHCI_POINTER_MASK) | GRUB_EHCI_HPTR_TYPE_QH); - e->qh_virt[i].td_overlay.next_td = - grub_cpu_to_le32_compile_time (GRUB_EHCI_TERMINATE); - e->qh_virt[i].td_overlay.alt_next_td = - grub_cpu_to_le32_compile_time (GRUB_EHCI_TERMINATE); - /* Also set Halted bit in token */ - e->qh_virt[i].td_overlay.token = - grub_cpu_to_le32_compile_time (GRUB_EHCI_STATUS_HALTED); - } - - /* Note: QH 0 and QH 1 are reserved and must not be used anywhere. - * QH 0 is used as empty QH for framelist - * QH 1 is used as starting empty QH for asynchronous schedule - * QH 1 must exist at any time because at least one QH linked to - * itself must exist in asynchronous schedule - * QH 1 has the H flag set to one */ - - grub_dprintf ("ehci", "EHCI grub_ehci_pci_iter: QH/TD init. OK\n"); - - /* Now we can setup EHCI (maybe...) */ - - /* Check if EHCI is halted and halt it if not */ - if (grub_ehci_halt (e) != GRUB_USB_ERR_NONE) - { - grub_error (GRUB_ERR_TIMEOUT, - "EHCI grub_ehci_pci_iter: EHCI halt timeout"); - goto fail; - } - - grub_dprintf ("ehci", "EHCI grub_ehci_pci_iter: halted OK\n"); - - /* Reset EHCI */ - if (grub_ehci_reset (e) != GRUB_USB_ERR_NONE) - { - grub_error (GRUB_ERR_TIMEOUT, - "EHCI grub_ehci_pci_iter: EHCI reset timeout"); - goto fail; - } - - grub_dprintf ("ehci", "EHCI grub_ehci_pci_iter: reset OK\n"); - - /* Setup list address registers */ - grub_ehci_oper_write32 (e, GRUB_EHCI_FL_BASE, e->framelist_phys); - grub_ehci_oper_write32 (e, GRUB_EHCI_CUR_AL_ADDR, - grub_dma_virt2phys (&e->qh_virt[1], - e->qh_chunk)); - - /* Set ownership of root hub ports to EHCI */ - grub_ehci_oper_write32 (e, GRUB_EHCI_CONFIG_FLAG, GRUB_EHCI_CF_EHCI_OWNER); - - /* Enable both lists */ - grub_ehci_oper_write32 (e, GRUB_EHCI_COMMAND, - GRUB_EHCI_CMD_AS_ENABL - | GRUB_EHCI_CMD_PS_ENABL - | grub_ehci_oper_read32 (e, GRUB_EHCI_COMMAND)); - - /* Now should be possible to power-up and enumerate ports etc. */ - if ((grub_ehci_ehcc_read32 (e, GRUB_EHCI_EHCC_SPARAMS) - & GRUB_EHCI_SPARAMS_PPC) != 0) - { /* EHCI has port powering control */ - /* Power on all ports */ - n_ports = grub_ehci_ehcc_read32 (e, GRUB_EHCI_EHCC_SPARAMS) - & GRUB_EHCI_SPARAMS_N_PORTS; - for (i = 0; i < (int) n_ports; i++) - grub_ehci_oper_write32 (e, GRUB_EHCI_PORT_STAT_CMD + i * 4, - GRUB_EHCI_PORT_POWER - | grub_ehci_oper_read32 (e, - GRUB_EHCI_PORT_STAT_CMD - + i * 4)); - } - - /* Ensure all commands are written */ - grub_ehci_oper_read32 (e, GRUB_EHCI_COMMAND); - - /* Enable EHCI */ - grub_ehci_oper_write32 (e, GRUB_EHCI_COMMAND, - GRUB_EHCI_CMD_RUNSTOP - | grub_ehci_oper_read32 (e, GRUB_EHCI_COMMAND)); - - /* Ensure command is written */ - grub_ehci_oper_read32 (e, GRUB_EHCI_COMMAND); - - /* Link to ehci now that initialisation is successful. */ - e->next = ehci; - ehci = e; - - sync_all_caches (e); - - grub_dprintf ("ehci", "EHCI grub_ehci_pci_iter: OK at all\n"); - - grub_dprintf ("ehci", - "EHCI grub_ehci_pci_iter: iobase of oper. regs: %08llx\n", - (unsigned long long) (grub_addr_t) regs); - grub_dprintf ("ehci", "EHCI grub_ehci_pci_iter: COMMAND: %08x\n", - grub_ehci_oper_read32 (e, GRUB_EHCI_COMMAND)); - grub_dprintf ("ehci", "EHCI grub_ehci_pci_iter: STATUS: %08x\n", - grub_ehci_oper_read32 (e, GRUB_EHCI_STATUS)); - grub_dprintf ("ehci", "EHCI grub_ehci_pci_iter: INTERRUPT: %08x\n", - grub_ehci_oper_read32 (e, GRUB_EHCI_INTERRUPT)); - grub_dprintf ("ehci", "EHCI grub_ehci_pci_iter: FRAME_INDEX: %08x\n", - grub_ehci_oper_read32 (e, GRUB_EHCI_FRAME_INDEX)); - grub_dprintf ("ehci", "EHCI grub_ehci_pci_iter: FL_BASE: %08x\n", - grub_ehci_oper_read32 (e, GRUB_EHCI_FL_BASE)); - grub_dprintf ("ehci", "EHCI grub_ehci_pci_iter: CUR_AL_ADDR: %08x\n", - grub_ehci_oper_read32 (e, GRUB_EHCI_CUR_AL_ADDR)); - grub_dprintf ("ehci", "EHCI grub_ehci_pci_iter: CONFIG_FLAG: %08x\n", - grub_ehci_oper_read32 (e, GRUB_EHCI_CONFIG_FLAG)); - - return; - -fail: - if (e) - { - if (e->td_chunk) - grub_dma_free ((void *) e->td_chunk); - if (e->qh_chunk) - grub_dma_free ((void *) e->qh_chunk); - if (e->framelist_chunk) - grub_dma_free (e->framelist_chunk); - } - grub_free (e); - - return; -} - -static int -grub_ehci_iterate (grub_usb_controller_iterate_hook_t hook, void *hook_data) -{ - struct grub_ehci *e; - struct grub_usb_controller dev; - - for (e = ehci; e; e = e->next) - { - dev.data = e; - if (hook (&dev, hook_data)) - return 1; - } - - return 0; -} - -static void -grub_ehci_setup_qh (grub_ehci_qh_t qh, grub_usb_transfer_t transfer) -{ - grub_uint32_t ep_char = 0; - grub_uint32_t ep_cap = 0; - - /* Note: Another part of code is responsible to this QH is - * Halted ! But it can be linked in AL, so we cannot erase or - * change qh_hptr ! */ - /* We will not change any TD field because they should/must be - * in safe state from previous use. */ - - /* EP characteristic setup */ - /* Currently not used NAK counter (RL=0), - * C bit set if EP is not HIGH speed and is control, - * Max Packet Length is taken from transfer structure, - * H bit = 0 (because QH[1] has this bit set), - * DTC bit set to 1 because we are using our own toggle bit control, - * SPEED is selected according to value from transfer structure, - * EP number is taken from transfer structure - * "I" bit must not be set, - * Device Address is taken from transfer structure - * */ - if ((transfer->dev->speed != GRUB_USB_SPEED_HIGH) - && (transfer->type == GRUB_USB_TRANSACTION_TYPE_CONTROL)) - ep_char |= GRUB_EHCI_C; - ep_char |= (transfer->max << GRUB_EHCI_MAXPLEN_OFF) - & GRUB_EHCI_MAXPLEN_MASK; - ep_char |= GRUB_EHCI_DTC; - switch (transfer->dev->speed) - { - case GRUB_USB_SPEED_LOW: - ep_char |= GRUB_EHCI_SPEED_LOW; - break; - case GRUB_USB_SPEED_FULL: - ep_char |= GRUB_EHCI_SPEED_FULL; - break; - case GRUB_USB_SPEED_HIGH: - default: - ep_char |= GRUB_EHCI_SPEED_HIGH; - /* XXX: How we will handle unknown value of speed? */ - } - ep_char |= (transfer->endpoint << GRUB_EHCI_EP_NUM_OFF) - & GRUB_EHCI_EP_NUM_MASK; - ep_char |= transfer->devaddr & GRUB_EHCI_DEVADDR_MASK; - qh->ep_char = grub_cpu_to_le32 (ep_char); - /* EP capabilities setup */ - /* MULT field - we try to use max. number - * PortNumber - included now in device structure referenced - * inside transfer structure - * HubAddress - included now in device structure referenced - * inside transfer structure - * SplitCompletionMask - AFAIK it is ignored in asynchronous list, - * InterruptScheduleMask - AFAIK it should be zero in async. list */ - ep_cap |= GRUB_EHCI_MULT_THREE; - ep_cap |= (transfer->dev->split_hubport << GRUB_EHCI_DEVPORT_OFF) - & GRUB_EHCI_DEVPORT_MASK; - ep_cap |= (transfer->dev->split_hubaddr << GRUB_EHCI_HUBADDR_OFF) - & GRUB_EHCI_HUBADDR_MASK; - if (transfer->dev->speed == GRUB_USB_SPEED_LOW - && transfer->type != GRUB_USB_TRANSACTION_TYPE_CONTROL) - { - ep_cap |= (1<<0) << GRUB_EHCI_SMASK_OFF; - ep_cap |= (7<<2) << GRUB_EHCI_CMASK_OFF; - } - qh->ep_cap = grub_cpu_to_le32 (ep_cap); - - grub_dprintf ("ehci", "setup_qh: qh=%p, not changed: qh_hptr=%08x\n", - qh, grub_le_to_cpu32 (qh->qh_hptr)); - grub_dprintf ("ehci", "setup_qh: ep_char=%08x, ep_cap=%08x\n", - ep_char, ep_cap); - grub_dprintf ("ehci", "setup_qh: end\n"); - grub_dprintf ("ehci", "setup_qh: not changed: td_current=%08x\n", - grub_le_to_cpu32 (qh->td_current)); - grub_dprintf ("ehci", "setup_qh: not changed: next_td=%08x\n", - grub_le_to_cpu32 (qh->td_overlay.next_td)); - grub_dprintf ("ehci", "setup_qh: not changed: alt_next_td=%08x\n", - grub_le_to_cpu32 (qh->td_overlay.alt_next_td)); - grub_dprintf ("ehci", "setup_qh: not changed: token=%08x\n", - grub_le_to_cpu32 (qh->td_overlay.token)); -} - -static grub_ehci_qh_t -grub_ehci_find_qh (struct grub_ehci *e, grub_usb_transfer_t transfer) -{ - grub_uint32_t target, mask; - int i; - grub_ehci_qh_t qh = e->qh_virt; - grub_ehci_qh_t head; - grub_uint32_t qh_phys; - grub_uint32_t qh_terminate = - GRUB_EHCI_TERMINATE | GRUB_EHCI_HPTR_TYPE_QH; - grub_ehci_qh_t qh_iter; - - /* Prepare part of EP Characteristic to find existing QH */ - target = ((transfer->endpoint << GRUB_EHCI_EP_NUM_OFF) | - transfer->devaddr) & GRUB_EHCI_TARGET_MASK; - target = grub_cpu_to_le32 (target); - mask = grub_cpu_to_le32_compile_time (GRUB_EHCI_TARGET_MASK); - - /* low speed interrupt transfers are linked to the periodic */ - /* schedule, everything else to the asynchronous schedule */ - if (transfer->dev->speed == GRUB_USB_SPEED_LOW - && transfer->type != GRUB_USB_TRANSACTION_TYPE_CONTROL) - head = &qh[0]; - else - head = &qh[1]; - - /* First try to find existing QH with proper target in proper list */ - qh_phys = grub_le_to_cpu32( head->qh_hptr ); - if (qh_phys != qh_terminate) - qh_iter = grub_dma_phys2virt ( qh_phys & GRUB_EHCI_QHTDPTR_MASK, - e->qh_chunk ); - else - qh_iter = NULL; - - for ( - i = 0; - (qh_phys != qh_terminate) && (qh_iter != NULL) && - (qh_iter != head) && (i < GRUB_EHCI_N_QH); - i++ ) - { - if (target == (qh_iter->ep_char & mask)) - { - /* Found proper existing (and linked) QH, do setup of QH */ - grub_dprintf ("ehci", "find_qh: found, QH=%p\n", qh_iter); - grub_ehci_setup_qh (qh_iter, transfer); - sync_all_caches (e); - return qh_iter; - } - - qh_phys = grub_le_to_cpu32( qh_iter->qh_hptr ); - if (qh_phys != qh_terminate) - qh_iter = grub_dma_phys2virt ( qh_phys & GRUB_EHCI_QHTDPTR_MASK, - e->qh_chunk ); - else - qh_iter = NULL; - } - - /* variable "i" should be never equal to GRUB_EHCI_N_QH here */ - if (i >= GRUB_EHCI_N_QH) - { /* Something very bad happened in QH list(s) ! */ - grub_dprintf ("ehci", "find_qh: Mismatch in QH list! head=%p\n", - head); - } - - /* QH with target_addr does not exist, we have to find and add it */ - for (i = 2; i < GRUB_EHCI_N_QH; i++) /* We ignore zero and first QH */ - { - if (!qh[i].ep_char) - break; /* Found first not-allocated QH, finish */ - } - - /* Have we any free QH in array ? */ - if (i >= GRUB_EHCI_N_QH) /* No. */ - { - grub_dprintf ("ehci", "find_qh: end - no free QH\n"); - return NULL; - } - grub_dprintf ("ehci", "find_qh: new, i=%d, QH=%p\n", - i, &qh[i]); - /* Currently we simply take next (current) QH in array, no allocation - * function is used. It should be no problem until we will need to - * de-allocate QHs of unplugged devices. */ - /* We should preset new QH and link it into AL */ - grub_ehci_setup_qh (&qh[i], transfer); - - /* Linking - this new (last) QH will copy the QH from the head QH */ - qh[i].qh_hptr = head->qh_hptr; - /* Linking - the head QH will point to this new QH */ - head->qh_hptr = grub_cpu_to_le32 (GRUB_EHCI_HPTR_TYPE_QH - | grub_dma_virt2phys (&qh[i], - e->qh_chunk)); - - return &qh[i]; -} - -static grub_ehci_td_t -grub_ehci_alloc_td (struct grub_ehci *e) -{ - grub_ehci_td_t ret; - - /* Check if there is a Transfer Descriptor available. */ - if (!e->tdfree_virt) - { - grub_dprintf ("ehci", "alloc_td: end - no free TD\n"); - return NULL; - } - - ret = e->tdfree_virt; /* Take current free TD */ - /* Advance to next free TD in chain */ - if (ret->link_td) - e->tdfree_virt = grub_dma_phys2virt (ret->link_td, e->td_chunk); - else - e->tdfree_virt = NULL; - ret->link_td = 0; /* Reset link_td in allocated TD */ - return ret; -} - -static void -grub_ehci_free_td (struct grub_ehci *e, grub_ehci_td_t td) -{ - /* Chain new free TD & rest */ - if (e->tdfree_virt) - td->link_td = grub_dma_virt2phys (e->tdfree_virt, e->td_chunk); - else - td->link_td = 0; - e->tdfree_virt = td; /* Change address of first free TD */ -} - -static void -grub_ehci_free_tds (struct grub_ehci *e, grub_ehci_td_t td, - grub_usb_transfer_t transfer, grub_size_t * actual) -{ - int i; /* Index of TD in transfer */ - grub_uint32_t token, to_transfer; - - /* Note: Another part of code is responsible to this QH is - * INACTIVE ! */ - *actual = 0; - - /* Free the TDs in this queue and set last_trans. */ - for (i = 0; td; i++) - { - grub_ehci_td_t tdprev; - - token = grub_le_to_cpu32 (td->token); - to_transfer = (token & GRUB_EHCI_TOTAL_MASK) >> GRUB_EHCI_TOTAL_OFF; - - /* Check state of TD - if it did not transfer - * whole data then set last_trans - it should be last executed TD - * in case when something went wrong. */ - if (transfer && (td->size != to_transfer)) - transfer->last_trans = i; - - *actual += td->size - to_transfer; - - /* Unlink the TD */ - tdprev = td; - if (td->link_td) - td = grub_dma_phys2virt (td->link_td, e->td_chunk); - else - td = NULL; - - /* Free the TD. */ - grub_ehci_free_td (e, tdprev); - } - - /* Check if last_trans was set. If not and something was - * transferred (it should be all data in this case), set it - * to index of last TD, i.e. i-1 */ - if (transfer && (transfer->last_trans < 0) && (*actual != 0)) - transfer->last_trans = i - 1; - - /* XXX: Fix it: last_trans may be set to bad index. - * Probably we should test more error flags to distinguish - * if TD was at least partialy executed or not at all. - * Generaly, we still could have problem with toggling because - * EHCI can probably split transactions into smaller parts then - * we defined in transaction even if we did not exceed MaxFrame - * length - it probably could happen at the end of microframe (?) - * and if the buffer is crossing page boundary (?). */ -} - -static grub_ehci_td_t -grub_ehci_transaction (struct grub_ehci *e, - grub_transfer_type_t type, - unsigned int toggle, grub_size_t size, - grub_uint32_t data, grub_ehci_td_t td_alt) -{ - grub_ehci_td_t td; - grub_uint32_t token; - grub_uint32_t bufadr; - int i; - - /* Test of transfer size, it can be: - * <= GRUB_EHCI_MAXBUFLEN if data aligned to page boundary - * <= GRUB_EHCI_MAXBUFLEN - GRUB_EHCI_BUFPAGELEN if not aligned - * (worst case) - */ - if ((((data % GRUB_EHCI_BUFPAGELEN) == 0) - && (size > GRUB_EHCI_MAXBUFLEN)) - || - (((data % GRUB_EHCI_BUFPAGELEN) != 0) - && (size > (GRUB_EHCI_MAXBUFLEN - GRUB_EHCI_BUFPAGELEN)))) - { - grub_error (GRUB_ERR_OUT_OF_MEMORY, - "too long data buffer for EHCI transaction"); - return 0; - } - - /* Grab a free Transfer Descriptor and initialize it. */ - td = grub_ehci_alloc_td (e); - if (!td) - { - grub_error (GRUB_ERR_OUT_OF_MEMORY, - "no transfer descriptors available for EHCI transfer"); - return 0; - } - - grub_dprintf ("ehci", - "transaction: type=%d, toggle=%d, size=%lu data=0x%x td=%p\n", - type, toggle, (unsigned long) size, data, td); - - /* Fill whole TD by zeros */ - grub_memset ((void *) td, 0, sizeof (struct grub_ehci_td)); - - /* Don't point to any TD yet, just terminate. */ - td->next_td = grub_cpu_to_le32_compile_time (GRUB_EHCI_TERMINATE); - /* Set alternate pointer. When short packet occurs, alternate TD - * will not be really fetched because it is not active. But don't - * forget, EHCI will try to fetch alternate TD every scan of AL - * until QH is halted. */ - td->alt_next_td = grub_cpu_to_le32 (grub_dma_virt2phys (td_alt, - e->td_chunk)); - /* token: - * TOGGLE - according to toggle - * TOTAL SIZE = size - * Interrupt On Complete = FALSE, we don't need IRQ - * Current Page = 0 - * Error Counter = max. value = 3 - * PID Code - according to type - * STATUS: - * ACTIVE bit should be set to one - * SPLIT TRANS. STATE bit should be zero. It is ignored - * in HIGH speed transaction, and should be zero for LOW/FULL - * speed to indicate state Do Split Transaction */ - token = toggle ? GRUB_EHCI_TOGGLE : 0; - token |= (size << GRUB_EHCI_TOTAL_OFF) & GRUB_EHCI_TOTAL_MASK; - token |= GRUB_EHCI_CERR_3; - switch (type) - { - case GRUB_USB_TRANSFER_TYPE_IN: - token |= GRUB_EHCI_PIDCODE_IN; - break; - case GRUB_USB_TRANSFER_TYPE_OUT: - token |= GRUB_EHCI_PIDCODE_OUT; - break; - case GRUB_USB_TRANSFER_TYPE_SETUP: - token |= GRUB_EHCI_PIDCODE_SETUP; - break; - default: /* XXX: Should not happen, but what to do if it does ? */ - break; - } - token |= GRUB_EHCI_STATUS_ACTIVE; - td->token = grub_cpu_to_le32 (token); - - /* Fill buffer pointers according to size */ - bufadr = data; - td->buffer_page[0] = grub_cpu_to_le32 (bufadr); - bufadr = ((bufadr / GRUB_EHCI_BUFPAGELEN) + 1) * GRUB_EHCI_BUFPAGELEN; - for (i = 1; ((bufadr - data) < size) && (i < GRUB_EHCI_TD_BUF_PAGES); i++) - { - td->buffer_page[i] = grub_cpu_to_le32 (bufadr & GRUB_EHCI_BUFPTR_MASK); - bufadr = ((bufadr / GRUB_EHCI_BUFPAGELEN) + 1) * GRUB_EHCI_BUFPAGELEN; - } - - /* Remember data size for future use... */ - td->size = (grub_uint32_t) size; - - grub_dprintf ("ehci", "td=%p\n", td); - grub_dprintf ("ehci", "HW: next_td=%08x, alt_next_td=%08x\n", - grub_le_to_cpu32 (td->next_td), - grub_le_to_cpu32 (td->alt_next_td)); - grub_dprintf ("ehci", "HW: token=%08x, buffer[0]=%08x\n", - grub_le_to_cpu32 (td->token), - grub_le_to_cpu32 (td->buffer_page[0])); - grub_dprintf ("ehci", "HW: buffer[1]=%08x, buffer[2]=%08x\n", - grub_le_to_cpu32 (td->buffer_page[1]), - grub_le_to_cpu32 (td->buffer_page[2])); - grub_dprintf ("ehci", "HW: buffer[3]=%08x, buffer[4]=%08x\n", - grub_le_to_cpu32 (td->buffer_page[3]), - grub_le_to_cpu32 (td->buffer_page[4])); - grub_dprintf ("ehci", "link_td=%08x, size=%08x\n", - td->link_td, td->size); - - return td; -} - -struct grub_ehci_transfer_controller_data -{ - grub_ehci_qh_t qh_virt; - grub_ehci_td_t td_first_virt; - grub_ehci_td_t td_alt_virt; - grub_ehci_td_t td_last_virt; - grub_uint32_t td_last_phys; -}; - -static grub_usb_err_t -grub_ehci_setup_transfer (grub_usb_controller_t dev, - grub_usb_transfer_t transfer) -{ - struct grub_ehci *e = (struct grub_ehci *) dev->data; - grub_ehci_td_t td = NULL; - grub_ehci_td_t td_prev = NULL; - int i; - struct grub_ehci_transfer_controller_data *cdata; - grub_uint32_t status; - - sync_all_caches (e); - - /* Check if EHCI is running and AL is enabled */ - status = grub_ehci_oper_read32 (e, GRUB_EHCI_STATUS); - if ((status & GRUB_EHCI_ST_HC_HALTED) != 0) - /* XXX: Fix it: Currently we don't do anything to restart EHCI */ - { - grub_dprintf ("ehci", "setup_transfer: halted, status = 0x%x\n", - status); - return GRUB_USB_ERR_INTERNAL; - } - status = grub_ehci_oper_read32 (e, GRUB_EHCI_STATUS); - if ((status - & (GRUB_EHCI_ST_AS_STATUS | GRUB_EHCI_ST_PS_STATUS)) == 0) - /* XXX: Fix it: Currently we don't do anything to restart EHCI */ - { - grub_dprintf ("ehci", "setup_transfer: no AS/PS, status = 0x%x\n", - status); - return GRUB_USB_ERR_INTERNAL; - } - - /* Allocate memory for controller transfer data. */ - cdata = grub_malloc (sizeof (*cdata)); - if (!cdata) - return GRUB_USB_ERR_INTERNAL; - cdata->td_first_virt = NULL; - - /* Allocate a queue head for the transfer queue. */ - cdata->qh_virt = grub_ehci_find_qh (e, transfer); - if (!cdata->qh_virt) - { - grub_dprintf ("ehci", "setup_transfer: no QH\n"); - grub_free (cdata); - return GRUB_USB_ERR_INTERNAL; - } - - /* To detect short packet we need some additional "alternate" TD, - * allocate it first. */ - cdata->td_alt_virt = grub_ehci_alloc_td (e); - if (!cdata->td_alt_virt) - { - grub_dprintf ("ehci", "setup_transfer: no TDs\n"); - grub_free (cdata); - return GRUB_USB_ERR_INTERNAL; - } - /* Fill whole alternate TD by zeros (= inactive) and set - * Terminate bits and Halt bit */ - grub_memset ((void *) cdata->td_alt_virt, 0, sizeof (struct grub_ehci_td)); - cdata->td_alt_virt->next_td = grub_cpu_to_le32_compile_time (GRUB_EHCI_TERMINATE); - cdata->td_alt_virt->alt_next_td = grub_cpu_to_le32_compile_time (GRUB_EHCI_TERMINATE); - cdata->td_alt_virt->token = grub_cpu_to_le32_compile_time (GRUB_EHCI_STATUS_HALTED); - - /* Allocate appropriate number of TDs and set */ - for (i = 0; i < transfer->transcnt; i++) - { - grub_usb_transaction_t tr = &transfer->transactions[i]; - - td = grub_ehci_transaction (e, tr->pid, tr->toggle, tr->size, - tr->data, cdata->td_alt_virt); - - if (!td) /* de-allocate and free all */ - { - grub_size_t actual = 0; - - if (cdata->td_first_virt) - grub_ehci_free_tds (e, cdata->td_first_virt, NULL, &actual); - - grub_free (cdata); - grub_dprintf ("ehci", "setup_transfer: no TD\n"); - return GRUB_USB_ERR_INTERNAL; - } - - /* Register new TD in cdata or previous TD */ - if (!cdata->td_first_virt) - cdata->td_first_virt = td; - else - { - td_prev->link_td = grub_dma_virt2phys (td, e->td_chunk); - td_prev->next_td = - grub_cpu_to_le32 (grub_dma_virt2phys (td, e->td_chunk)); - } - td_prev = td; - } - - /* Remember last TD */ - cdata->td_last_virt = td; - cdata->td_last_phys = grub_dma_virt2phys (td, e->td_chunk); - /* Last TD should not have set alternate TD */ - cdata->td_last_virt->alt_next_td = grub_cpu_to_le32_compile_time (GRUB_EHCI_TERMINATE); - - grub_dprintf ("ehci", "setup_transfer: cdata=%p, qh=%p\n", - cdata,cdata->qh_virt); - grub_dprintf ("ehci", "setup_transfer: td_first=%p, td_alt=%p\n", - cdata->td_first_virt, - cdata->td_alt_virt); - grub_dprintf ("ehci", "setup_transfer: td_last=%p\n", - cdata->td_last_virt); - - /* Start transfer: */ - /* Unlink possible alternate pointer in QH */ - cdata->qh_virt->td_overlay.alt_next_td = - grub_cpu_to_le32_compile_time (GRUB_EHCI_TERMINATE); - /* Link new TDs with QH via next_td */ - cdata->qh_virt->td_overlay.next_td = - grub_cpu_to_le32 (grub_dma_virt2phys - (cdata->td_first_virt, e->td_chunk)); - /* Reset Active and Halted bits in QH to activate Advance Queue, - * i.e. reset token */ - cdata->qh_virt->td_overlay.token = grub_cpu_to_le32_compile_time (0); - - sync_all_caches (e); - - /* Finito */ - transfer->controller_data = cdata; - - return GRUB_USB_ERR_NONE; -} - -/* This function expects QH is not active. - * Function set Halt bit in QH TD overlay and possibly prints - * necessary debug information. */ -static void -grub_ehci_pre_finish_transfer (grub_usb_transfer_t transfer) -{ - struct grub_ehci_transfer_controller_data *cdata = - transfer->controller_data; - - /* Collect debug data here if necessary */ - - /* Set Halt bit in not active QH. AL will not attempt to do - * Advance Queue on QH with Halt bit set, i.e., we can then - * safely manipulate with QH TD part. */ - cdata->qh_virt->td_overlay.token = (cdata->qh_virt->td_overlay.token - | - grub_cpu_to_le32_compile_time - (GRUB_EHCI_STATUS_HALTED)) & - grub_cpu_to_le32_compile_time (~GRUB_EHCI_STATUS_ACTIVE); - - /* Print debug data here if necessary */ - -} - -static grub_usb_err_t -grub_ehci_parse_notrun (grub_usb_controller_t dev, - grub_usb_transfer_t transfer, grub_size_t * actual) -{ - struct grub_ehci *e = dev->data; - struct grub_ehci_transfer_controller_data *cdata = - transfer->controller_data; - - grub_dprintf ("ehci", "parse_notrun: info\n"); - - /* QH can be in any state in this case. */ - /* But EHCI or AL is not running, so QH is surely not active - * even if it has Active bit set... */ - grub_ehci_pre_finish_transfer (transfer); - grub_ehci_free_tds (e, cdata->td_first_virt, transfer, actual); - grub_ehci_free_td (e, cdata->td_alt_virt); - grub_free (cdata); - - sync_all_caches (e); - - /* Additionally, do something with EHCI to make it running (what?) */ - /* Try enable EHCI and AL */ - grub_ehci_oper_write32 (e, GRUB_EHCI_COMMAND, - GRUB_EHCI_CMD_RUNSTOP | GRUB_EHCI_CMD_AS_ENABL - | GRUB_EHCI_CMD_PS_ENABL - | grub_ehci_oper_read32 (e, GRUB_EHCI_COMMAND)); - /* Ensure command is written */ - grub_ehci_oper_read32 (e, GRUB_EHCI_COMMAND); - - return GRUB_USB_ERR_UNRECOVERABLE; -} - -static grub_usb_err_t -grub_ehci_parse_halt (grub_usb_controller_t dev, - grub_usb_transfer_t transfer, grub_size_t * actual) -{ - struct grub_ehci *e = dev->data; - struct grub_ehci_transfer_controller_data *cdata = - transfer->controller_data; - grub_uint32_t token; - grub_usb_err_t err = GRUB_USB_ERR_NAK; - - /* QH should be halted and not active in this case. */ - - grub_dprintf ("ehci", "parse_halt: info\n"); - - /* Remember token before call pre-finish function */ - token = grub_le_to_cpu32 (cdata->qh_virt->td_overlay.token); - - /* Do things like in normal finish */ - grub_ehci_pre_finish_transfer (transfer); - grub_ehci_free_tds (e, cdata->td_first_virt, transfer, actual); - grub_ehci_free_td (e, cdata->td_alt_virt); - grub_free (cdata); - - sync_all_caches (e); - - /* Evaluation of error code - currently we don't have GRUB USB error - * codes for some EHCI states, GRUB_USB_ERR_DATA is used for them. - * Order of evaluation is critical, specially bubble/stall. */ - if ((token & GRUB_EHCI_STATUS_BABBLE) != 0) - err = GRUB_USB_ERR_BABBLE; - else if ((token & GRUB_EHCI_CERR_MASK) != 0) - err = GRUB_USB_ERR_STALL; - else if ((token & GRUB_EHCI_STATUS_TRANERR) != 0) - err = GRUB_USB_ERR_DATA; - else if ((token & GRUB_EHCI_STATUS_BUFERR) != 0) - err = GRUB_USB_ERR_DATA; - else if ((token & GRUB_EHCI_STATUS_MISSDMF) != 0) - err = GRUB_USB_ERR_DATA; - - return err; -} - -static grub_usb_err_t -grub_ehci_parse_success (grub_usb_controller_t dev, - grub_usb_transfer_t transfer, grub_size_t * actual) -{ - struct grub_ehci *e = dev->data; - struct grub_ehci_transfer_controller_data *cdata = - transfer->controller_data; - - grub_dprintf ("ehci", "parse_success: info\n"); - - /* QH should be not active in this case, but it is not halted. */ - grub_ehci_pre_finish_transfer (transfer); - grub_ehci_free_tds (e, cdata->td_first_virt, transfer, actual); - grub_ehci_free_td (e, cdata->td_alt_virt); - grub_free (cdata); - - sync_all_caches (e); - - return GRUB_USB_ERR_NONE; -} - - -static grub_usb_err_t -grub_ehci_check_transfer (grub_usb_controller_t dev, - grub_usb_transfer_t transfer, grub_size_t * actual) -{ - struct grub_ehci *e = dev->data; - struct grub_ehci_transfer_controller_data *cdata = - transfer->controller_data; - grub_uint32_t token, token_ftd; - - sync_all_caches (e); - - grub_dprintf ("ehci", - "check_transfer: EHCI STATUS=%08x, cdata=%p, qh=%p\n", - grub_ehci_oper_read32 (e, GRUB_EHCI_STATUS), - cdata, cdata->qh_virt); - grub_dprintf ("ehci", "check_transfer: qh_hptr=%08x, ep_char=%08x\n", - grub_le_to_cpu32 (cdata->qh_virt->qh_hptr), - grub_le_to_cpu32 (cdata->qh_virt->ep_char)); - grub_dprintf ("ehci", "check_transfer: ep_cap=%08x, td_current=%08x\n", - grub_le_to_cpu32 (cdata->qh_virt->ep_cap), - grub_le_to_cpu32 (cdata->qh_virt->td_current)); - grub_dprintf ("ehci", "check_transfer: next_td=%08x, alt_next_td=%08x\n", - grub_le_to_cpu32 (cdata->qh_virt->td_overlay.next_td), - grub_le_to_cpu32 (cdata->qh_virt->td_overlay.alt_next_td)); - grub_dprintf ("ehci", "check_transfer: token=%08x, buffer[0]=%08x\n", - grub_le_to_cpu32 (cdata->qh_virt->td_overlay.token), - grub_le_to_cpu32 (cdata->qh_virt->td_overlay.buffer_page[0])); - - /* Check if EHCI is running and AL is enabled */ - if ((grub_ehci_oper_read32 (e, GRUB_EHCI_STATUS) - & GRUB_EHCI_ST_HC_HALTED) != 0) - return grub_ehci_parse_notrun (dev, transfer, actual); - if ((grub_ehci_oper_read32 (e, GRUB_EHCI_STATUS) - & (GRUB_EHCI_ST_AS_STATUS | GRUB_EHCI_ST_PS_STATUS)) == 0) - return grub_ehci_parse_notrun (dev, transfer, actual); - - token = grub_le_to_cpu32 (cdata->qh_virt->td_overlay.token); - /* If the transfer consist from only one TD, we should check */ - /* if the TD was really executed and deactivated - to prevent */ - /* false detection of transfer finish. */ - token_ftd = grub_le_to_cpu32 (cdata->td_first_virt->token); - - /* Detect QH halted */ - if ((token & GRUB_EHCI_STATUS_HALTED) != 0) - return grub_ehci_parse_halt (dev, transfer, actual); - - /* Detect QH not active - QH is not active and no next TD */ - if (token && ((token & GRUB_EHCI_STATUS_ACTIVE) == 0) - && ((token_ftd & GRUB_EHCI_STATUS_ACTIVE) == 0)) - { - /* It could be finish at all or short packet condition */ - if ((grub_le_to_cpu32 (cdata->qh_virt->td_overlay.next_td) - & GRUB_EHCI_TERMINATE) && - ((grub_le_to_cpu32 (cdata->qh_virt->td_current) - & GRUB_EHCI_QHTDPTR_MASK) == cdata->td_last_phys)) - /* Normal finish */ - return grub_ehci_parse_success (dev, transfer, actual); - else if ((token & GRUB_EHCI_TOTAL_MASK) != 0) - /* Short packet condition */ - /* But currently we don't handle it - higher level will do it */ - return grub_ehci_parse_success (dev, transfer, actual); - } - - return GRUB_USB_ERR_WAIT; -} - -static grub_usb_err_t -grub_ehci_cancel_transfer (grub_usb_controller_t dev, - grub_usb_transfer_t transfer) -{ - struct grub_ehci *e = dev->data; - struct grub_ehci_transfer_controller_data *cdata = - transfer->controller_data; - grub_size_t actual; - int i; - grub_uint64_t maxtime; - grub_uint32_t qh_phys; - - sync_all_caches (e); - - grub_uint32_t interrupt = - cdata->qh_virt->ep_cap & GRUB_EHCI_SMASK_MASK; - - /* QH can be active and should be de-activated and halted */ - - grub_dprintf ("ehci", "cancel_transfer: begin\n"); - - /* First check if EHCI is running - if not, there is no problem */ - /* to cancel any transfer. Or, if transfer is asynchronous, check */ - /* if AL is enabled - if not, transfer can be canceled also. */ - if (((grub_ehci_oper_read32 (e, GRUB_EHCI_STATUS) & - GRUB_EHCI_ST_HC_HALTED) != 0) || - (!interrupt && ((grub_ehci_oper_read32 (e, GRUB_EHCI_STATUS) & - (GRUB_EHCI_ST_AS_STATUS | GRUB_EHCI_ST_PS_STATUS)) == 0))) - { - grub_ehci_pre_finish_transfer (transfer); - grub_ehci_free_tds (e, cdata->td_first_virt, transfer, &actual); - grub_ehci_free_td (e, cdata->td_alt_virt); - grub_free (cdata); - sync_all_caches (e); - grub_dprintf ("ehci", "cancel_transfer: end - EHCI not running\n"); - return GRUB_USB_ERR_NONE; - } - - /* EHCI and (AL or SL) are running. What to do? */ - /* Try to Halt QH via de-scheduling QH. */ - /* Find index of previous QH */ - qh_phys = grub_dma_virt2phys(cdata->qh_virt, e->qh_chunk); - for (i = 0; i < GRUB_EHCI_N_QH; i++) - { - if ((grub_le_to_cpu32(e->qh_virt[i].qh_hptr) - & GRUB_EHCI_QHTDPTR_MASK) == qh_phys) - break; - } - if (i == GRUB_EHCI_N_QH) - { - grub_printf ("%s: prev not found, queues are corrupt\n", __func__); - return GRUB_USB_ERR_UNRECOVERABLE; - } - /* Unlink QH from AL */ - e->qh_virt[i].qh_hptr = cdata->qh_virt->qh_hptr; - - sync_all_caches (e); - - /* If this is an interrupt transfer, we just wait for the periodic - * schedule to advance a few times and then assume that the EHCI - * controller has read the updated QH. */ - if (cdata->qh_virt->ep_cap & GRUB_EHCI_SMASK_MASK) - { - grub_millisleep(20); - } - else - { - /* For the asynchronous schedule we use the advance doorbell to find - * out when the EHCI controller has read the updated QH. */ - - /* Ring the doorbell */ - grub_ehci_oper_write32 (e, GRUB_EHCI_COMMAND, - GRUB_EHCI_CMD_AS_ADV_D - | grub_ehci_oper_read32 (e, GRUB_EHCI_COMMAND)); - /* Ensure command is written */ - grub_ehci_oper_read32 (e, GRUB_EHCI_COMMAND); - /* Wait answer with timeout */ - maxtime = grub_get_time_ms () + 2; - while (((grub_ehci_oper_read32 (e, GRUB_EHCI_STATUS) - & GRUB_EHCI_ST_AS_ADVANCE) == 0) - && (grub_get_time_ms () < maxtime)); - - /* We do not detect the timeout because if timeout occurs, it most - * probably means something wrong with EHCI - maybe stopped etc. */ - - /* Shut up the doorbell */ - grub_ehci_oper_write32 (e, GRUB_EHCI_COMMAND, - ~GRUB_EHCI_CMD_AS_ADV_D - & grub_ehci_oper_read32 (e, GRUB_EHCI_COMMAND)); - grub_ehci_oper_write32 (e, GRUB_EHCI_STATUS, - GRUB_EHCI_ST_AS_ADVANCE - | grub_ehci_oper_read32 (e, GRUB_EHCI_STATUS)); - /* Ensure command is written */ - grub_ehci_oper_read32 (e, GRUB_EHCI_STATUS); - } - - /* Now is QH out of AL and we can do anything with it... */ - grub_ehci_pre_finish_transfer (transfer); - grub_ehci_free_tds (e, cdata->td_first_virt, transfer, &actual); - grub_ehci_free_td (e, cdata->td_alt_virt); - - /* "Free" the QH - link it to itself */ - cdata->qh_virt->ep_char = 0; - cdata->qh_virt->qh_hptr = - grub_cpu_to_le32 ((grub_dma_virt2phys (cdata->qh_virt, - e->qh_chunk) - & GRUB_EHCI_POINTER_MASK) | GRUB_EHCI_HPTR_TYPE_QH); - - grub_free (cdata); - - grub_dprintf ("ehci", "cancel_transfer: end\n"); - - sync_all_caches (e); - - return GRUB_USB_ERR_NONE; -} - -static int -grub_ehci_hubports (grub_usb_controller_t dev) -{ - struct grub_ehci *e = (struct grub_ehci *) dev->data; - grub_uint32_t portinfo; - - portinfo = grub_ehci_ehcc_read32 (e, GRUB_EHCI_EHCC_SPARAMS) - & GRUB_EHCI_SPARAMS_N_PORTS; - grub_dprintf ("ehci", "root hub ports=%d\n", portinfo); - return portinfo; -} - -static grub_usb_err_t -grub_ehci_portstatus (grub_usb_controller_t dev, - unsigned int port, unsigned int enable) -{ - struct grub_ehci *e = (struct grub_ehci *) dev->data; - grub_uint64_t endtime; - - grub_dprintf ("ehci", "portstatus: EHCI STATUS: %08x\n", - grub_ehci_oper_read32 (e, GRUB_EHCI_STATUS)); - grub_dprintf ("ehci", - "portstatus: begin, iobase=%p, port=%d, status=0x%02x\n", - e->iobase, port, grub_ehci_port_read (e, port)); - - /* In any case we need to disable port: - * - if enable==false - we should disable port - * - if enable==true we will do the reset and the specification says - * PortEnable should be FALSE in such case */ - /* Disable the port and wait for it. */ - grub_ehci_port_resbits (e, port, GRUB_EHCI_PORT_ENABLED); - endtime = grub_get_time_ms () + 1000; - while (grub_ehci_port_read (e, port) & GRUB_EHCI_PORT_ENABLED) - if (grub_get_time_ms () > endtime) - return GRUB_USB_ERR_TIMEOUT; - - if (!enable) /* We don't need reset port */ - { - grub_dprintf ("ehci", "portstatus: Disabled.\n"); - grub_dprintf ("ehci", "portstatus: end, status=0x%02x\n", - grub_ehci_port_read (e, port)); - return GRUB_USB_ERR_NONE; - } - - grub_dprintf ("ehci", "portstatus: enable\n"); - - grub_boot_time ("Resetting port %d", port); - - /* Now we will do reset - if HIGH speed device connected, it will - * result in Enabled state, otherwise port remains disabled. */ - /* Set RESET bit for 50ms */ - grub_ehci_port_setbits (e, port, GRUB_EHCI_PORT_RESET); - grub_millisleep (50); - - /* Reset RESET bit and wait for the end of reset */ - grub_ehci_port_resbits (e, port, GRUB_EHCI_PORT_RESET); - endtime = grub_get_time_ms () + 1000; - while (grub_ehci_port_read (e, port) & GRUB_EHCI_PORT_RESET) - if (grub_get_time_ms () > endtime) - return GRUB_USB_ERR_TIMEOUT; - grub_boot_time ("Port %d reset", port); - /* Remember "we did the reset" - needed by detect_dev */ - e->reset |= (1 << port); - /* Test if port enabled, i.e. HIGH speed device connected */ - if ((grub_ehci_port_read (e, port) & GRUB_EHCI_PORT_ENABLED) != 0) /* yes! */ - { - grub_dprintf ("ehci", "portstatus: Enabled!\n"); - /* "Reset recovery time" (USB spec.) */ - grub_millisleep (10); - } - else /* no... */ - { - /* FULL speed device connected - change port ownership. - * It results in disconnected state of this EHCI port. */ - grub_ehci_port_setbits (e, port, GRUB_EHCI_PORT_OWNER); - return GRUB_USB_ERR_BADDEVICE; - } - - /* XXX: Fix it! There is possible problem - we can say to calling - * function that we lost device if it is FULL speed onlu via - * return value <> GRUB_ERR_NONE. It (maybe) displays also error - * message on screen - but this situation is not error, it is normal - * state! */ - - grub_dprintf ("ehci", "portstatus: end, status=0x%02x\n", - grub_ehci_port_read (e, port)); - - return GRUB_USB_ERR_NONE; -} - -static grub_usb_speed_t -grub_ehci_detect_dev (grub_usb_controller_t dev, int port, int *changed) -{ - struct grub_ehci *e = (struct grub_ehci *) dev->data; - grub_uint32_t status, line_state; - - status = grub_ehci_port_read (e, port); - - /* Connect Status Change bit - it detects change of connection */ - if (status & GRUB_EHCI_PORT_CONNECT_CH) - { - *changed = 1; - /* Reset bit Connect Status Change */ - grub_ehci_port_setbits (e, port, GRUB_EHCI_PORT_CONNECT_CH); - } - else - *changed = 0; - - if (!(status & GRUB_EHCI_PORT_CONNECT)) - { /* We should reset related "reset" flag in not connected state */ - e->reset &= ~(1 << port); - return GRUB_USB_SPEED_NONE; - } - /* Detected connected state, so we should return speed. - * But we can detect only LOW speed device and only at connection - * time when PortEnabled=FALSE. FULL / HIGH speed detection is made - * later by EHCI-specific reset procedure. - * Another thing - if detected speed is LOW at connection time, - * we should change port ownership to companion controller. - * So: - * 1. If we detect connected and enabled and EHCI-owned port, - * we can say it is HIGH speed. - * 2. If we detect connected and not EHCI-owned port, we can say - * NONE speed, because such devices are not handled by EHCI. - * 3. If we detect connected, not enabled but reset port, we can say - * NONE speed, because it means FULL device connected to port and - * such devices are not handled by EHCI. - * 4. If we detect connected, not enabled and not reset port, which - * has line state != "K", we will say HIGH - it could be FULL or HIGH - * device, we will see it later after end of EHCI-specific reset - * procedure. - * 5. If we detect connected, not enabled and not reset port, which - * has line state == "K", we can say NONE speed, because LOW speed - * device is connected and we should change port ownership. */ - if ((status & GRUB_EHCI_PORT_ENABLED) != 0) /* Port already enabled, return high speed. */ - return GRUB_USB_SPEED_HIGH; - if ((status & GRUB_EHCI_PORT_OWNER) != 0) /* EHCI is not port owner */ - return GRUB_USB_SPEED_NONE; /* EHCI driver is ignoring this port. */ - if ((e->reset & (1 << port)) != 0) /* Port reset was done = FULL speed */ - return GRUB_USB_SPEED_NONE; /* EHCI driver is ignoring this port. */ - else /* Port connected but not enabled - test port speed. */ - { - line_state = status & GRUB_EHCI_PORT_LINE_STAT; - if (line_state != GRUB_EHCI_PORT_LINE_LOWSP) - return GRUB_USB_SPEED_HIGH; - /* Detected LOW speed device, we should change - * port ownership. - * XXX: Fix it!: There should be test if related companion - * controler is available ! And what to do if it does not exist ? */ - grub_ehci_port_setbits (e, port, GRUB_EHCI_PORT_OWNER); - return GRUB_USB_SPEED_NONE; /* Ignore this port */ - /* Note: Reset of PORT_OWNER bit is done by EHCI HW when - * device is really disconnected from port. - * Don't do PORT_OWNER bit reset by SW when not connected signal - * is detected in port register ! */ - } -} - -static grub_err_t -grub_ehci_restore_hw (void) -{ - struct grub_ehci *e; - grub_uint32_t n_ports; - int i; - - /* We should re-enable all EHCI HW similarly as on inithw */ - for (e = ehci; e; e = e->next) - { - /* Check if EHCI is halted and halt it if not */ - if (grub_ehci_halt (e) != GRUB_USB_ERR_NONE) - grub_error (GRUB_ERR_TIMEOUT, "restore_hw: EHCI halt timeout"); - - /* Reset EHCI */ - if (grub_ehci_reset (e) != GRUB_USB_ERR_NONE) - grub_error (GRUB_ERR_TIMEOUT, "restore_hw: EHCI reset timeout"); - - /* Setup some EHCI registers and enable EHCI */ - grub_ehci_oper_write32 (e, GRUB_EHCI_FL_BASE, e->framelist_phys); - grub_ehci_oper_write32 (e, GRUB_EHCI_CUR_AL_ADDR, - grub_dma_virt2phys (&e->qh_virt[1], - e->qh_chunk)); - grub_ehci_oper_write32 (e, GRUB_EHCI_COMMAND, - GRUB_EHCI_CMD_RUNSTOP | - grub_ehci_oper_read32 (e, GRUB_EHCI_COMMAND)); - - /* Set ownership of root hub ports to EHCI */ - grub_ehci_oper_write32 (e, GRUB_EHCI_CONFIG_FLAG, - GRUB_EHCI_CF_EHCI_OWNER); - - /* Enable asynchronous list */ - grub_ehci_oper_write32 (e, GRUB_EHCI_COMMAND, - GRUB_EHCI_CMD_AS_ENABL - | GRUB_EHCI_CMD_PS_ENABL - | grub_ehci_oper_read32 (e, GRUB_EHCI_COMMAND)); - - /* Now should be possible to power-up and enumerate ports etc. */ - if ((grub_ehci_ehcc_read32 (e, GRUB_EHCI_EHCC_SPARAMS) - & GRUB_EHCI_SPARAMS_PPC) != 0) - { /* EHCI has port powering control */ - /* Power on all ports */ - n_ports = grub_ehci_ehcc_read32 (e, GRUB_EHCI_EHCC_SPARAMS) - & GRUB_EHCI_SPARAMS_N_PORTS; - for (i = 0; i < (int) n_ports; i++) - grub_ehci_oper_write32 (e, GRUB_EHCI_PORT_STAT_CMD + i * 4, - GRUB_EHCI_PORT_POWER - | grub_ehci_oper_read32 (e, - GRUB_EHCI_PORT_STAT_CMD - + i * 4)); - } - } - - return GRUB_ERR_NONE; -} - -static grub_err_t -grub_ehci_fini_hw (int noreturn __attribute__ ((unused))) -{ - struct grub_ehci *e; - - /* We should disable all EHCI HW to prevent any DMA access etc. */ - for (e = ehci; e; e = e->next) - { - /* Disable both lists */ - grub_ehci_oper_write32 (e, GRUB_EHCI_COMMAND, - ~(GRUB_EHCI_CMD_AS_ENABL | GRUB_EHCI_CMD_PS_ENABL) - & grub_ehci_oper_read32 (e, GRUB_EHCI_COMMAND)); - - /* Check if EHCI is halted and halt it if not */ - grub_ehci_halt (e); - - /* Reset EHCI */ - grub_ehci_reset (e); - } - - return GRUB_ERR_NONE; -} - -static struct grub_usb_controller_dev usb_controller = { - .name = "ehci", - .iterate = grub_ehci_iterate, - .setup_transfer = grub_ehci_setup_transfer, - .check_transfer = grub_ehci_check_transfer, - .cancel_transfer = grub_ehci_cancel_transfer, - .hubports = grub_ehci_hubports, - .portstatus = grub_ehci_portstatus, - .detect_dev = grub_ehci_detect_dev, - /* estimated max. count of TDs for one bulk transfer */ - .max_bulk_tds = GRUB_EHCI_N_TD * 3 / 4 -}; - -GRUB_MOD_INIT (ehci) -{ - COMPILE_TIME_ASSERT (sizeof (struct grub_ehci_td) == 64); - COMPILE_TIME_ASSERT (sizeof (struct grub_ehci_qh) == 96); - - grub_stop_disk_firmware (); - - grub_boot_time ("Initing EHCI hardware"); - grub_ehci_pci_scan (); - grub_boot_time ("Registering EHCI driver"); - grub_usb_controller_dev_register (&usb_controller); - grub_boot_time ("EHCI driver registered"); - grub_loader_register_preboot_hook (grub_ehci_fini_hw, grub_ehci_restore_hw, - GRUB_LOADER_PREBOOT_HOOK_PRIO_DISK); -} - -GRUB_MOD_FINI (ehci) -{ - grub_ehci_fini_hw (0); - grub_usb_controller_dev_unregister (&usb_controller); -} diff --git a/thirdparty/grub-2.04/grub-core/bus/usb/ohci.c b/thirdparty/grub-2.04/grub-core/bus/usb/ohci.c deleted file mode 100644 index f0be533d4..000000000 --- a/thirdparty/grub-2.04/grub-core/bus/usb/ohci.c +++ /dev/null @@ -1,1468 +0,0 @@ -/* ohci.c - OHCI Support. */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2008 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -struct grub_ohci_hcca -{ - /* Pointers to Interrupt Endpoint Descriptors. Not used by - GRUB. */ - grub_uint32_t inttable[32]; - - /* Current frame number. */ - grub_uint16_t framenumber; - - grub_uint16_t pad; - - /* List of completed TDs. */ - grub_uint32_t donehead; - - grub_uint8_t reserved[116]; -} GRUB_PACKED; - -/* OHCI General Transfer Descriptor */ -struct grub_ohci_td -{ - /* Information used to construct the TOKEN packet. */ - grub_uint32_t token; - grub_uint32_t buffer; /* LittleEndian physical address */ - grub_uint32_t next_td; /* LittleEndian physical address */ - grub_uint32_t buffer_end; /* LittleEndian physical address */ - /* next values are not for OHCI HW */ - volatile struct grub_ohci_td *link_td; /* pointer to next free/chained TD - * pointer as uint32 */ - grub_uint32_t prev_td_phys; /* we need it to find previous TD - * physical address in CPU endian */ - grub_uint32_t tr_index; /* index of TD in transfer */ - grub_uint8_t pad[8 - sizeof (volatile struct grub_ohci_td *)]; /* padding to 32 bytes */ -} GRUB_PACKED; - -/* OHCI Endpoint Descriptor. */ -struct grub_ohci_ed -{ - grub_uint32_t target; - grub_uint32_t td_tail; - grub_uint32_t td_head; - grub_uint32_t next_ed; -} GRUB_PACKED; - -typedef volatile struct grub_ohci_td *grub_ohci_td_t; -typedef volatile struct grub_ohci_ed *grub_ohci_ed_t; - -/* Experimental change of ED/TD allocation */ -/* Little bit similar as in UHCI */ -/* Implementation assumes: - * 32-bits architecture - XXX: fix for 64-bits - * memory allocated by grub_memalign_dma32 must be continuous - * in virtual and also in physical memory */ -struct grub_ohci -{ - volatile grub_uint32_t *iobase; - volatile struct grub_ohci_hcca *hcca; - grub_uint32_t hcca_addr; - struct grub_pci_dma_chunk *hcca_chunk; - grub_ohci_ed_t ed_ctrl; /* EDs for CONTROL */ - grub_uint32_t ed_ctrl_addr; - struct grub_pci_dma_chunk *ed_ctrl_chunk; - grub_ohci_ed_t ed_bulk; /* EDs for BULK */ - grub_uint32_t ed_bulk_addr; - struct grub_pci_dma_chunk *ed_bulk_chunk; - grub_ohci_td_t td; /* TDs */ - grub_uint32_t td_addr; - struct grub_pci_dma_chunk *td_chunk; - struct grub_ohci *next; - grub_ohci_td_t td_free; /* Pointer to first free TD */ -}; - -static struct grub_ohci *ohci; - -typedef enum -{ - GRUB_OHCI_REG_REVISION = 0x00, - GRUB_OHCI_REG_CONTROL, - GRUB_OHCI_REG_CMDSTATUS, - GRUB_OHCI_REG_INTSTATUS, - GRUB_OHCI_REG_INTENA, - GRUB_OHCI_REG_INTDIS, - GRUB_OHCI_REG_HCCA, - GRUB_OHCI_REG_PERIODIC, - GRUB_OHCI_REG_CONTROLHEAD, - GRUB_OHCI_REG_CONTROLCURR, - GRUB_OHCI_REG_BULKHEAD, - GRUB_OHCI_REG_BULKCURR, - GRUB_OHCI_REG_DONEHEAD, - GRUB_OHCI_REG_FRAME_INTERVAL, - GRUB_OHCI_REG_PERIODIC_START = 16, - GRUB_OHCI_REG_RHUBA = 18, - GRUB_OHCI_REG_RHUBPORT = 21, - GRUB_OHCI_REG_LEGACY_CONTROL = 0x100, - GRUB_OHCI_REG_LEGACY_INPUT = 0x104, - GRUB_OHCI_REG_LEGACY_OUTPUT = 0x108, - GRUB_OHCI_REG_LEGACY_STATUS = 0x10c -} grub_ohci_reg_t; - -#define GRUB_OHCI_RHUB_PORT_POWER_MASK 0x300 -#define GRUB_OHCI_RHUB_PORT_ALL_POWERED 0x200 - -#define GRUB_OHCI_REG_FRAME_INTERVAL_FSMPS_MASK 0x8fff0000 -#define GRUB_OHCI_REG_FRAME_INTERVAL_FSMPS_SHIFT 16 -#define GRUB_OHCI_REG_FRAME_INTERVAL_FI_SHIFT 0 - -/* XXX: Is this choice of timings sane? */ -#define GRUB_OHCI_FSMPS 0x2778 -#define GRUB_OHCI_PERIODIC_START 0x257f -#define GRUB_OHCI_FRAME_INTERVAL 0x2edf - -#define GRUB_OHCI_SET_PORT_ENABLE (1 << 1) -#define GRUB_OHCI_CLEAR_PORT_ENABLE (1 << 0) -#define GRUB_OHCI_SET_PORT_RESET (1 << 4) -#define GRUB_OHCI_SET_PORT_RESET_STATUS_CHANGE (1 << 20) - -#define GRUB_OHCI_REG_CONTROL_BULK_ENABLE (1 << 5) -#define GRUB_OHCI_REG_CONTROL_CONTROL_ENABLE (1 << 4) - -#define GRUB_OHCI_RESET_CONNECT_CHANGE (1 << 16) -#define GRUB_OHCI_CTRL_EDS 256 -#define GRUB_OHCI_BULK_EDS 510 -#define GRUB_OHCI_TDS 640 - -#define GRUB_OHCI_ED_ADDR_MASK 0x7ff - -static inline grub_ohci_ed_t -grub_ohci_ed_phys2virt (struct grub_ohci *o, int bulk, grub_uint32_t x) -{ - if (!x) - return NULL; - if (bulk) - return (grub_ohci_ed_t) (x - o->ed_bulk_addr - + (grub_uint8_t *) o->ed_bulk); - return (grub_ohci_ed_t) (x - o->ed_ctrl_addr - + (grub_uint8_t *) o->ed_ctrl); -} - -static grub_uint32_t -grub_ohci_virt_to_phys (struct grub_ohci *o, int bulk, grub_ohci_ed_t x) -{ - if (!x) - return 0; - - if (bulk) - return (grub_uint8_t *) x - (grub_uint8_t *) o->ed_bulk + o->ed_bulk_addr; - return (grub_uint8_t *) x - (grub_uint8_t *) o->ed_ctrl + o->ed_ctrl_addr; -} - -static inline grub_ohci_td_t -grub_ohci_td_phys2virt (struct grub_ohci *o, grub_uint32_t x) -{ - if (!x) - return NULL; - return (grub_ohci_td_t) (x - o->td_addr + (grub_uint8_t *) o->td); -} - -static grub_uint32_t -grub_ohci_td_virt2phys (struct grub_ohci *o, grub_ohci_td_t x) -{ - if (!x) - return 0; - return (grub_uint8_t *)x - (grub_uint8_t *)o->td + o->td_addr; -} - - -static grub_uint32_t -grub_ohci_readreg32 (struct grub_ohci *o, grub_ohci_reg_t reg) -{ - return grub_le_to_cpu32 (*(o->iobase + reg)); -} - -static void -grub_ohci_writereg32 (struct grub_ohci *o, - grub_ohci_reg_t reg, grub_uint32_t val) -{ - *(o->iobase + reg) = grub_cpu_to_le32 (val); -} - - - -/* Iterate over all PCI devices. Determine if a device is an OHCI - controller. If this is the case, initialize it. */ -static int -grub_ohci_pci_iter (grub_pci_device_t dev, grub_pci_id_t pciid, - void *data __attribute__ ((unused))) -{ - grub_uint32_t interf; - grub_uint32_t base; - grub_pci_address_t addr; - struct grub_ohci *o; - grub_uint32_t revision; - int j; - - /* Determine IO base address. */ - grub_dprintf ("ohci", "pciid = %x\n", pciid); - - if (pciid == GRUB_CS5536_PCIID) - { - grub_uint64_t basereg; - - basereg = grub_cs5536_read_msr (dev, GRUB_CS5536_MSR_USB_OHCI_BASE); - if (!(basereg & GRUB_CS5536_MSR_USB_BASE_MEMORY_ENABLE)) - { - /* Shouldn't happen. */ - grub_dprintf ("ohci", "No OHCI address is assigned\n"); - return 0; - } - base = (basereg & GRUB_CS5536_MSR_USB_BASE_ADDR_MASK); - basereg |= GRUB_CS5536_MSR_USB_BASE_BUS_MASTER; - basereg &= ~GRUB_CS5536_MSR_USB_BASE_PME_ENABLED; - basereg &= ~GRUB_CS5536_MSR_USB_BASE_PME_STATUS; - grub_cs5536_write_msr (dev, GRUB_CS5536_MSR_USB_OHCI_BASE, basereg); - } - else - { - grub_uint32_t class_code; - grub_uint32_t class; - grub_uint32_t subclass; - - addr = grub_pci_make_address (dev, GRUB_PCI_REG_CLASS); - class_code = grub_pci_read (addr) >> 8; - - interf = class_code & 0xFF; - subclass = (class_code >> 8) & 0xFF; - class = class_code >> 16; - - /* If this is not an OHCI controller, just return. */ - if (class != 0x0c || subclass != 0x03 || interf != 0x10) - return 0; - - addr = grub_pci_make_address (dev, GRUB_PCI_REG_ADDRESS_REG0); - base = grub_pci_read (addr); - - base &= GRUB_PCI_ADDR_MEM_MASK; - if (!base) - { - grub_dprintf ("ehci", - "EHCI: EHCI is not mapper\n"); - return 0; - } - - /* Set bus master - needed for coreboot, VMware, broken BIOSes etc. */ - addr = grub_pci_make_address (dev, GRUB_PCI_REG_COMMAND); - grub_pci_write_word(addr, - GRUB_PCI_COMMAND_MEM_ENABLED - | GRUB_PCI_COMMAND_BUS_MASTER - | grub_pci_read_word(addr)); - - grub_dprintf ("ohci", "class=0x%02x 0x%02x interface 0x%02x\n", - class, subclass, interf); - } - - /* Allocate memory for the controller and register it. */ - o = grub_malloc (sizeof (*o)); - if (! o) - return 1; - grub_memset ((void*)o, 0, sizeof (*o)); - o->iobase = grub_pci_device_map_range (dev, base, 0x800); - - grub_dprintf ("ohci", "base=%p\n", o->iobase); - - /* Reserve memory for the HCCA. */ - o->hcca_chunk = grub_memalign_dma32 (256, 256); - if (! o->hcca_chunk) - goto fail; - o->hcca = grub_dma_get_virt (o->hcca_chunk); - o->hcca_addr = grub_dma_get_phys (o->hcca_chunk); - grub_memset ((void*)o->hcca, 0, sizeof(*o->hcca)); - grub_dprintf ("ohci", "hcca: chunk=%p, virt=%p, phys=0x%02x\n", - o->hcca_chunk, o->hcca, o->hcca_addr); - - /* Reserve memory for ctrl EDs. */ - o->ed_ctrl_chunk = grub_memalign_dma32 (16, sizeof(struct grub_ohci_ed) - * GRUB_OHCI_CTRL_EDS); - if (! o->ed_ctrl_chunk) - goto fail; - o->ed_ctrl = grub_dma_get_virt (o->ed_ctrl_chunk); - o->ed_ctrl_addr = grub_dma_get_phys (o->ed_ctrl_chunk); - /* Preset EDs */ - grub_memset ((void *) o->ed_ctrl, 0, sizeof (struct grub_ohci_ed) - * GRUB_OHCI_CTRL_EDS); - for (j=0; j < GRUB_OHCI_CTRL_EDS; j++) - o->ed_ctrl[j].target = grub_cpu_to_le32_compile_time (1 << 14); /* skip */ - - grub_dprintf ("ohci", "EDs-C: chunk=%p, virt=%p, phys=0x%02x\n", - o->ed_ctrl_chunk, o->ed_ctrl, o->ed_ctrl_addr); - - /* Reserve memory for bulk EDs. */ - o->ed_bulk_chunk = grub_memalign_dma32 (16, sizeof (struct grub_ohci_ed) - * GRUB_OHCI_BULK_EDS); - if (! o->ed_bulk_chunk) - goto fail; - o->ed_bulk = grub_dma_get_virt (o->ed_bulk_chunk); - o->ed_bulk_addr = grub_dma_get_phys (o->ed_bulk_chunk); - /* Preset EDs */ - grub_memset ((void*)o->ed_bulk, 0, sizeof(struct grub_ohci_ed) * GRUB_OHCI_BULK_EDS); - for (j=0; j < GRUB_OHCI_BULK_EDS; j++) - o->ed_bulk[j].target = grub_cpu_to_le32_compile_time (1 << 14); /* skip */ - - grub_dprintf ("ohci", "EDs-B: chunk=%p, virt=%p, phys=0x%02x\n", - o->ed_bulk_chunk, o->ed_bulk, o->ed_bulk_addr); - - /* Reserve memory for TDs. */ - o->td_chunk = grub_memalign_dma32 (32, sizeof(struct grub_ohci_td)*GRUB_OHCI_TDS); - /* Why is it aligned on 32 boundary if spec. says 16 ? - * We have structure 32 bytes long and we don't want cross - * 4K boundary inside structure. */ - if (! o->td_chunk) - goto fail; - o->td_free = o->td = grub_dma_get_virt (o->td_chunk); - o->td_addr = grub_dma_get_phys (o->td_chunk); - /* Preset free TDs chain in TDs */ - grub_memset ((void*)o->td, 0, sizeof(struct grub_ohci_td) * GRUB_OHCI_TDS); - for (j=0; j < (GRUB_OHCI_TDS-1); j++) - o->td[j].link_td = &o->td[j+1]; - - grub_dprintf ("ohci", "TDs: chunk=%p, virt=%p, phys=0x%02x\n", - o->td_chunk, o->td, o->td_addr); - - /* Check if the OHCI revision is actually 1.0 as supported. */ - revision = grub_ohci_readreg32 (o, GRUB_OHCI_REG_REVISION); - grub_dprintf ("ohci", "OHCI revision=0x%02x\n", revision & 0xFF); - if ((revision & 0xFF) != 0x10) - goto fail; - - { - grub_uint32_t control; - /* Check SMM/BIOS ownership of OHCI (SMM = USB Legacy Support driver for BIOS) */ - control = grub_ohci_readreg32 (o, GRUB_OHCI_REG_CONTROL); - if ((control & 0x100) != 0) - { - unsigned i; - grub_dprintf("ohci", "OHCI is owned by SMM\n"); - /* Do change of ownership */ - /* Ownership change request */ - grub_ohci_writereg32 (o, GRUB_OHCI_REG_CMDSTATUS, (1<<3)); /* XXX: Magic. */ - /* Waiting for SMM deactivation */ - for (i=0; i < 10; i++) - { - if ((grub_ohci_readreg32 (o, GRUB_OHCI_REG_CONTROL) & 0x100) == 0) - { - grub_dprintf("ohci", "Ownership changed normally.\n"); - break; - } - grub_millisleep (100); - } - if (i >= 10) - { - grub_ohci_writereg32 (o, GRUB_OHCI_REG_CONTROL, - grub_ohci_readreg32 (o, GRUB_OHCI_REG_CONTROL) & ~0x100); - grub_dprintf("ohci", "Ownership changing timeout, change forced !\n"); - } - } - else if (((control & 0x100) == 0) && - ((control & 0xc0) != 0)) /* Not owned by SMM nor reset */ - { - grub_dprintf("ohci", "OHCI is owned by BIOS\n"); - /* Do change of ownership - not implemented yet... */ - /* In fact we probably need to do nothing ...? */ - } - else - { - grub_dprintf("ohci", "OHCI is not owned by SMM nor BIOS\n"); - /* We can setup OHCI. */ - } - } - - /* Suspend the OHCI by issuing a reset. */ - grub_ohci_writereg32 (o, GRUB_OHCI_REG_CMDSTATUS, 1); /* XXX: Magic. */ - grub_millisleep (1); - grub_dprintf ("ohci", "OHCI reset\n"); - - grub_ohci_writereg32 (o, GRUB_OHCI_REG_FRAME_INTERVAL, - (GRUB_OHCI_FSMPS - << GRUB_OHCI_REG_FRAME_INTERVAL_FSMPS_SHIFT) - | (GRUB_OHCI_FRAME_INTERVAL - << GRUB_OHCI_REG_FRAME_INTERVAL_FI_SHIFT)); - - grub_ohci_writereg32 (o, GRUB_OHCI_REG_PERIODIC_START, - GRUB_OHCI_PERIODIC_START); - - /* Setup the HCCA. */ - o->hcca->donehead = 0; - grub_ohci_writereg32 (o, GRUB_OHCI_REG_HCCA, o->hcca_addr); - grub_dprintf ("ohci", "OHCI HCCA\n"); - - /* Misc. pre-sets. */ - o->hcca->donehead = 0; - grub_ohci_writereg32 (o, GRUB_OHCI_REG_INTSTATUS, 0x7f); /* Clears everything */ - /* We don't want modify CONTROL/BULK HEAD registers. - * So we assign to HEAD registers zero ED from related array - * and we will not use this ED, it will be always skipped. - * It should not produce notable performance penalty (I hope). */ - grub_ohci_writereg32 (o, GRUB_OHCI_REG_CONTROLHEAD, o->ed_ctrl_addr); - grub_ohci_writereg32 (o, GRUB_OHCI_REG_CONTROLCURR, 0); - grub_ohci_writereg32 (o, GRUB_OHCI_REG_BULKHEAD, o->ed_bulk_addr); - grub_ohci_writereg32 (o, GRUB_OHCI_REG_BULKCURR, 0); - - /* Check OHCI Legacy Support */ - if ((revision & 0x100) != 0) - { - grub_dprintf ("ohci", "Legacy Support registers detected\n"); - grub_dprintf ("ohci", "Current state of legacy control reg.: 0x%04x\n", - grub_ohci_readreg32 (o, GRUB_OHCI_REG_LEGACY_CONTROL)); - grub_ohci_writereg32 (o, GRUB_OHCI_REG_LEGACY_CONTROL, - (grub_ohci_readreg32 (o, GRUB_OHCI_REG_LEGACY_CONTROL)) & ~1); - grub_dprintf ("ohci", "OHCI Legacy Support disabled.\n"); - } - - /* Enable the OHCI + enable CONTROL and BULK LIST. */ - grub_ohci_writereg32 (o, GRUB_OHCI_REG_CONTROL, - (2 << 6) - | GRUB_OHCI_REG_CONTROL_CONTROL_ENABLE - | GRUB_OHCI_REG_CONTROL_BULK_ENABLE ); - grub_dprintf ("ohci", "OHCI enable: 0x%02x\n", - (grub_ohci_readreg32 (o, GRUB_OHCI_REG_CONTROL) >> 6) & 3); - - /* Power on all ports */ - grub_ohci_writereg32 (o, GRUB_OHCI_REG_RHUBA, - (grub_ohci_readreg32 (o, GRUB_OHCI_REG_RHUBA) - & ~GRUB_OHCI_RHUB_PORT_POWER_MASK) - | GRUB_OHCI_RHUB_PORT_ALL_POWERED); -#if 0 /* We don't need it at all, handled via hotplugging */ - /* Now we have hot-plugging, we need to wait for stable power only */ - grub_millisleep (100); -#endif - - /* Link to ohci now that initialisation is successful. */ - o->next = ohci; - ohci = o; - - return 0; - - fail: - if (o) - { - grub_dma_free (o->td_chunk); - grub_dma_free (o->ed_bulk_chunk); - grub_dma_free (o->ed_ctrl_chunk); - grub_dma_free (o->hcca_chunk); - } - grub_free (o); - - return 0; -} - - -static void -grub_ohci_inithw (void) -{ - grub_pci_iterate (grub_ohci_pci_iter, NULL); -} - - - -static int -grub_ohci_iterate (grub_usb_controller_iterate_hook_t hook, void *hook_data) -{ - struct grub_ohci *o; - struct grub_usb_controller dev; - - for (o = ohci; o; o = o->next) - { - dev.data = o; - if (hook (&dev, hook_data)) - return 1; - } - - return 0; -} - -static grub_ohci_ed_t -grub_ohci_find_ed (struct grub_ohci *o, int bulk, grub_uint32_t target) -{ - grub_ohci_ed_t ed, ed_next; - grub_uint32_t target_addr = target & GRUB_OHCI_ED_ADDR_MASK; - int count; - int i; - - /* Use proper values and structures. */ - if (bulk) - { - count = GRUB_OHCI_BULK_EDS; - ed = o->ed_bulk; - ed_next = grub_ohci_ed_phys2virt(o, bulk, - grub_le_to_cpu32 (ed->next_ed) ); - } - else - { - count = GRUB_OHCI_CTRL_EDS; - ed = o->ed_ctrl; - ed_next = grub_ohci_ed_phys2virt(o, bulk, - grub_le_to_cpu32 (ed->next_ed) ); - } - - /* First try to find existing ED with proper target address */ - for (i = 0; ; ) - { - if (i && /* We ignore zero ED */ - ((ed->target & GRUB_OHCI_ED_ADDR_MASK) == target_addr)) - return ed; /* Found proper existing ED */ - i++; - if (ed_next && (i < count)) - { - ed = ed_next; - ed_next = grub_ohci_ed_phys2virt(o, bulk, - grub_le_to_cpu32 (ed->next_ed) ); - continue; - } - break; - } - /* ED with target_addr does not exist, we have to add it */ - /* Have we any free ED in array ? */ - if (i >= count) /* No. */ - return NULL; - /* Currently we simply take next ED in array, no allocation - * function is used. It should be no problem until hot-plugging - * will be implemented, i.e. until we will need to de-allocate EDs - * of unplugged devices. */ - /* We can link new ED to previous ED safely as the new ED should - * still have set skip bit. */ - ed->next_ed = grub_cpu_to_le32 ( grub_ohci_virt_to_phys (o, - bulk, &ed[1])); - return &ed[1]; -} - -static grub_ohci_td_t -grub_ohci_alloc_td (struct grub_ohci *o) -{ - grub_ohci_td_t ret; - - /* Check if there is a Transfer Descriptor available. */ - if (! o->td_free) - return NULL; - - ret = o->td_free; /* Take current free TD */ - o->td_free = (grub_ohci_td_t)ret->link_td; /* Advance to next free TD in chain */ - ret->link_td = 0; /* Reset link_td in allocated TD */ - return ret; -} - -static void -grub_ohci_free_td (struct grub_ohci *o, grub_ohci_td_t td) -{ - grub_memset ( (void*)td, 0, sizeof(struct grub_ohci_td) ); - td->link_td = o->td_free; /* Cahin new free TD & rest */ - o->td_free = td; /* Change address of first free TD */ -} - -static void -grub_ohci_free_tds (struct grub_ohci *o, grub_ohci_td_t td) -{ - if (!td) - return; - - /* Unchain first TD from previous TD if it is chained */ - if (td->prev_td_phys) - { - grub_ohci_td_t td_prev_virt = grub_ohci_td_phys2virt(o, - td->prev_td_phys); - - if (td == (grub_ohci_td_t) td_prev_virt->link_td) - td_prev_virt->link_td = 0; - } - - /* Free all TDs from td (chained by link_td) */ - while (td) - { - grub_ohci_td_t tdprev; - - /* Unlink the queue. */ - tdprev = td; - td = (grub_ohci_td_t) td->link_td; - - /* Free the TD. */ - grub_ohci_free_td (o, tdprev); - } -} - -static void -grub_ohci_transaction (grub_ohci_td_t td, - grub_transfer_type_t type, unsigned int toggle, - grub_size_t size, grub_uint32_t data) -{ - grub_uint32_t token; - grub_uint32_t buffer; - grub_uint32_t buffer_end; - - grub_dprintf ("ohci", "OHCI transaction td=%p type=%d, toggle=%d, size=%lu\n", - td, type, toggle, (unsigned long) size); - - switch (type) - { - case GRUB_USB_TRANSFER_TYPE_SETUP: - token = 0 << 19; - break; - case GRUB_USB_TRANSFER_TYPE_IN: - token = 2 << 19; - break; - case GRUB_USB_TRANSFER_TYPE_OUT: - token = 1 << 19; - break; - default: - token = 0; - break; - } - - /* Set the token */ - token |= ( 7 << 21); /* Never generate interrupt */ - token |= toggle << 24; - token |= 1 << 25; - - /* Set "Not accessed" error code */ - token |= 15 << 28; - - buffer = data; - buffer_end = buffer + size - 1; - - /* Set correct buffer values in TD if zero transfer occurs */ - if (size) - { - buffer = (grub_uint32_t) data; - buffer_end = buffer + size - 1; - td->buffer = grub_cpu_to_le32 (buffer); - td->buffer_end = grub_cpu_to_le32 (buffer_end); - } - else - { - td->buffer = 0; - td->buffer_end = 0; - } - - /* Set the rest of TD */ - td->token = grub_cpu_to_le32 (token); - td->next_td = 0; -} - -struct grub_ohci_transfer_controller_data -{ - grub_uint32_t tderr_phys; - grub_uint32_t td_last_phys; - grub_ohci_ed_t ed_virt; - grub_ohci_td_t td_current_virt; - grub_ohci_td_t td_head_virt; -}; - -static grub_usb_err_t -grub_ohci_setup_transfer (grub_usb_controller_t dev, - grub_usb_transfer_t transfer) -{ - struct grub_ohci *o = (struct grub_ohci *) dev->data; - int bulk = 0; - grub_ohci_td_t td_next_virt; - grub_uint32_t target; - grub_uint32_t td_head_phys; - grub_uint32_t td_tail_phys; - int i; - struct grub_ohci_transfer_controller_data *cdata; - - cdata = grub_zalloc (sizeof (*cdata)); - if (!cdata) - return GRUB_USB_ERR_INTERNAL; - - /* Pre-set target for ED - we need it to find proper ED */ - /* Set the device address. */ - target = transfer->devaddr; - /* Set the endpoint. It should be masked, we need 4 bits only. */ - target |= (transfer->endpoint & 15) << 7; - /* Set the device speed. */ - target |= (transfer->dev->speed == GRUB_USB_SPEED_LOW) << 13; - /* Set the maximum packet size. */ - target |= transfer->max << 16; - - /* Determine if transfer type is bulk - we need to select proper ED */ - switch (transfer->type) - { - case GRUB_USB_TRANSACTION_TYPE_BULK: - bulk = 1; - break; - - case GRUB_USB_TRANSACTION_TYPE_CONTROL: - break; - - default: - grub_free (cdata); - return GRUB_USB_ERR_INTERNAL; - } - - /* Find proper ED or add new ED */ - cdata->ed_virt = grub_ohci_find_ed (o, bulk, target); - if (!cdata->ed_virt) - { - grub_dprintf ("ohci","Fatal: No free ED !\n"); - grub_free (cdata); - return GRUB_USB_ERR_INTERNAL; - } - - /* Take pointer to first TD from ED */ - td_head_phys = grub_le_to_cpu32 (cdata->ed_virt->td_head) & ~0xf; - td_tail_phys = grub_le_to_cpu32 (cdata->ed_virt->td_tail) & ~0xf; - - /* Sanity check - td_head should be equal to td_tail */ - if (td_head_phys != td_tail_phys) /* Should never happen ! */ - { - grub_dprintf ("ohci", "Fatal: HEAD is not equal to TAIL !\n"); - grub_dprintf ("ohci", "HEAD = 0x%02x, TAIL = 0x%02x\n", - td_head_phys, td_tail_phys); - /* XXX: Fix: What to do ? */ - grub_free (cdata); - return GRUB_USB_ERR_INTERNAL; - } - - /* Now we should handle first TD. If ED is newly allocated, - * we must allocate the first TD. */ - if (!td_head_phys) - { - cdata->td_head_virt = grub_ohci_alloc_td (o); - if (!cdata->td_head_virt) - { - grub_free (cdata); - return GRUB_USB_ERR_INTERNAL; /* We don't need de-allocate ED */ - } - /* We can set td_head only when ED is not active, i.e. - * when it is newly allocated. */ - cdata->ed_virt->td_head - = grub_cpu_to_le32 (grub_ohci_td_virt2phys (o, cdata->td_head_virt)); - cdata->ed_virt->td_tail = cdata->ed_virt->td_head; - } - else - cdata->td_head_virt = grub_ohci_td_phys2virt ( o, td_head_phys ); - - /* Set TDs */ - cdata->td_last_phys = td_head_phys; /* initial value to make compiler happy... */ - for (i = 0, cdata->td_current_virt = cdata->td_head_virt; - i < transfer->transcnt; i++) - { - grub_usb_transaction_t tr = &transfer->transactions[i]; - - grub_ohci_transaction (cdata->td_current_virt, tr->pid, tr->toggle, - tr->size, tr->data); - - /* Set index of TD in transfer */ - cdata->td_current_virt->tr_index = (grub_uint32_t) i; - - /* Remember last used (processed) TD phys. addr. */ - cdata->td_last_phys = grub_ohci_td_virt2phys (o, cdata->td_current_virt); - - /* Allocate next TD */ - td_next_virt = grub_ohci_alloc_td (o); - if (!td_next_virt) /* No free TD, cancel transfer and free TDs except head TD */ - { - if (i) /* if i==0 we have nothing to free... */ - grub_ohci_free_tds (o, grub_ohci_td_phys2virt(o, - grub_le_to_cpu32 (cdata->td_head_virt->next_td))); - /* Reset head TD */ - grub_memset ( (void*)cdata->td_head_virt, 0, - sizeof(struct grub_ohci_td) ); - grub_dprintf ("ohci", "Fatal: No free TD !"); - grub_free (cdata); - return GRUB_USB_ERR_INTERNAL; - } - - /* Chain TDs */ - - cdata->td_current_virt->link_td = td_next_virt; - cdata->td_current_virt->next_td = grub_cpu_to_le32 ( - grub_ohci_td_virt2phys (o, - td_next_virt) ); - td_next_virt->prev_td_phys = grub_ohci_td_virt2phys (o, - cdata->td_current_virt); - cdata->td_current_virt = td_next_virt; - } - - grub_dprintf ("ohci", "Tail TD (not processed) = %p\n", - cdata->td_current_virt); - - /* Setup the Endpoint Descriptor for transfer. */ - /* First set necessary fields in TARGET but keep (or set) skip bit */ - /* Note: It could be simpler if speed, format and max. packet - * size never change after first allocation of ED. - * But unfortunately max. packet size may change during initial - * setup sequence and we must handle it. */ - cdata->ed_virt->target = grub_cpu_to_le32 (target | (1 << 14)); - /* Set td_tail */ - cdata->ed_virt->td_tail - = grub_cpu_to_le32 (grub_ohci_td_virt2phys (o, cdata->td_current_virt)); - /* Now reset skip bit */ - cdata->ed_virt->target = grub_cpu_to_le32 (target); - /* ed_virt->td_head = grub_cpu_to_le32 (td_head); Must not be changed, it is maintained by OHCI */ - /* ed_virt->next_ed = grub_cpu_to_le32 (0); Handled by grub_ohci_find_ed, do not change ! */ - - grub_dprintf ("ohci", "program OHCI\n"); - - /* Program the OHCI to actually transfer. */ - switch (transfer->type) - { - case GRUB_USB_TRANSACTION_TYPE_BULK: - { - grub_dprintf ("ohci", "BULK list filled\n"); - /* Set BulkListFilled. */ - grub_ohci_writereg32 (o, GRUB_OHCI_REG_CMDSTATUS, 1 << 2); - /* Read back of register should ensure it is really written */ - grub_ohci_readreg32 (o, GRUB_OHCI_REG_CMDSTATUS); - break; - } - - case GRUB_USB_TRANSACTION_TYPE_CONTROL: - { - grub_dprintf ("ohci", "CONTROL list filled\n"); - /* Set ControlListFilled. */ - grub_ohci_writereg32 (o, GRUB_OHCI_REG_CMDSTATUS, 1 << 1); - /* Read back of register should ensure it is really written */ - grub_ohci_readreg32 (o, GRUB_OHCI_REG_CMDSTATUS); - break; - } - } - - transfer->controller_data = cdata; - - return GRUB_USB_ERR_NONE; -} - -static void -pre_finish_transfer (grub_usb_controller_t dev, - grub_usb_transfer_t transfer) -{ - struct grub_ohci *o = dev->data; - struct grub_ohci_transfer_controller_data *cdata = transfer->controller_data; - grub_uint32_t target; - grub_uint32_t status; - grub_uint32_t control; - grub_uint32_t intstatus; - - /* There are many ways how the loop above can finish: - * - normally without any error via INTSTATUS WDH bit - * : tderr_phys == td_last_phys, td_head == td_tail - * - normally with error via HALT bit in ED TD HEAD - * : td_head = next TD after TD with error - * : tderr_phys = last processed and retired TD with error, - * i.e. should be != 0 - * : if bad_OHCI == TRUE, tderr_phys will be probably invalid - * - unrecoverable error - I never seen it but it could be - * : err_unrec == TRUE, other values can contain anything... - * - timeout, it can be caused by: - * -- bad USB device - some devices have some bugs, see Linux source - * and related links - * -- bad OHCI controller - e.g. lost interrupts or does not set - * proper bits in INTSTATUS when real IRQ not enabled etc., - * see Linux source and related links - * One known bug is handled - if transfer finished - * successfully (i.e. HEAD==TAIL, last transfer TD is retired, - * HALT bit is not set) and WDH bit is not set in INTSTATUS - in - * this case we set o->bad_OHCI=TRUE and do alternate loop - * and error handling - but there is problem how to find retired - * TD with error code if HALT occurs and if DONEHEAD is not - * working - we need to find TD previous to current ED HEAD - * -- bad code of this driver or some unknown reasons - :-( - * it can be e.g. bad handling of EDs/TDs/toggle bit... - */ - - /* Remember target for debug and set skip flag in ED */ - /* It should be normaly not necessary but we need it at least - * in case of timeout */ - target = grub_le_to_cpu32 ( cdata->ed_virt->target ); - cdata->ed_virt->target = grub_cpu_to_le32 (target | (1 << 14)); - /* Read registers for debug - they should be read now because - * debug prints case unwanted delays, so something can happen - * in the meantime... */ - control = grub_ohci_readreg32 (o, GRUB_OHCI_REG_CONTROL); - status = grub_ohci_readreg32 (o, GRUB_OHCI_REG_CMDSTATUS); - intstatus = grub_ohci_readreg32 (o, GRUB_OHCI_REG_INTSTATUS); - /* Now print debug values - to have full info what happened */ - grub_dprintf ("ohci", "loop finished: control=0x%02x status=0x%02x\n", - control, status); - grub_dprintf ("ohci", "intstatus=0x%02x, td_last_phys=0x%02x\n", - intstatus, cdata->td_last_phys); - grub_dprintf ("ohci", "TARGET=0x%02x, HEAD=0x%02x, TAIL=0x%02x\n", - target, - grub_le_to_cpu32 (cdata->ed_virt->td_head), - grub_le_to_cpu32 (cdata->ed_virt->td_tail) ); - -} - -static void -finish_transfer (grub_usb_controller_t dev, - grub_usb_transfer_t transfer) -{ - struct grub_ohci *o = dev->data; - struct grub_ohci_transfer_controller_data *cdata = transfer->controller_data; - - /* Set empty ED - set HEAD = TAIL = last (not processed) TD */ - cdata->ed_virt->td_head = grub_cpu_to_le32 (grub_le_to_cpu32 (cdata->ed_virt->td_tail) & ~0xf); - - /* At this point always should be: - * ED has skip bit set and halted or empty or after next SOF, - * i.e. it is safe to free all TDs except last not processed - * ED HEAD == TAIL == phys. addr. of td_current_virt */ - - /* Un-chainig of last TD */ - if (cdata->td_current_virt->prev_td_phys) - { - grub_ohci_td_t td_prev_virt - = grub_ohci_td_phys2virt (o, cdata->td_current_virt->prev_td_phys); - - if (cdata->td_current_virt == (grub_ohci_td_t) td_prev_virt->link_td) - td_prev_virt->link_td = 0; - - cdata->td_current_virt->prev_td_phys = 0; - } - - grub_dprintf ("ohci", "OHCI finished, freeing\n"); - grub_ohci_free_tds (o, cdata->td_head_virt); - grub_free (cdata); -} - -static grub_usb_err_t -parse_halt (grub_usb_controller_t dev, - grub_usb_transfer_t transfer, - grub_size_t *actual) -{ - struct grub_ohci *o = dev->data; - struct grub_ohci_transfer_controller_data *cdata = transfer->controller_data; - grub_uint8_t errcode = 0; - grub_usb_err_t err = GRUB_USB_ERR_NAK; - grub_ohci_td_t tderr_virt = NULL; - - *actual = 0; - - pre_finish_transfer (dev, transfer); - - /* First we must get proper tderr_phys value */ - /* Retired TD with error should be previous TD to ED->td_head */ - cdata->tderr_phys = grub_ohci_td_phys2virt (o, - grub_le_to_cpu32 (cdata->ed_virt->td_head) & ~0xf ) - ->prev_td_phys; - - /* Prepare pointer to last processed TD and get error code */ - tderr_virt = grub_ohci_td_phys2virt (o, cdata->tderr_phys); - /* Set index of last processed TD */ - if (tderr_virt) - { - errcode = grub_le_to_cpu32 (tderr_virt->token) >> 28; - transfer->last_trans = tderr_virt->tr_index; - } - else - transfer->last_trans = -1; - - /* Evaluation of error code */ - grub_dprintf ("ohci", "OHCI tderr_phys=0x%02x, errcode=0x%02x\n", - cdata->tderr_phys, errcode); - switch (errcode) - { - case 0: - /* XXX: Should not happen! */ - grub_error (GRUB_ERR_IO, "OHCI failed without reporting the reason"); - err = GRUB_USB_ERR_INTERNAL; - break; - - case 1: - /* XXX: CRC error. */ - err = GRUB_USB_ERR_TIMEOUT; - break; - - case 2: - err = GRUB_USB_ERR_BITSTUFF; - break; - - case 3: - /* XXX: Data Toggle error. */ - err = GRUB_USB_ERR_DATA; - break; - - case 4: - err = GRUB_USB_ERR_STALL; - break; - - case 5: - /* XXX: Not responding. */ - err = GRUB_USB_ERR_TIMEOUT; - break; - - case 6: - /* XXX: PID Check bits failed. */ - err = GRUB_USB_ERR_BABBLE; - break; - - case 7: - /* XXX: PID unexpected failed. */ - err = GRUB_USB_ERR_BABBLE; - break; - - case 8: - /* XXX: Data overrun error. */ - err = GRUB_USB_ERR_DATA; - grub_dprintf ("ohci", "Overrun, failed TD address: %p, index: %d\n", - tderr_virt, tderr_virt->tr_index); - break; - - case 9: - /* XXX: Data underrun error. */ - grub_dprintf ("ohci", "Underrun, failed TD address: %p, index: %d\n", - tderr_virt, tderr_virt->tr_index); - if (transfer->last_trans == -1) - break; - *actual = transfer->transactions[transfer->last_trans].size - - (grub_le_to_cpu32 (tderr_virt->buffer_end) - - grub_le_to_cpu32 (tderr_virt->buffer)) - + transfer->transactions[transfer->last_trans].preceding; - err = GRUB_USB_ERR_NONE; - break; - - case 10: - /* XXX: Reserved. */ - err = GRUB_USB_ERR_NAK; - break; - - case 11: - /* XXX: Reserved. */ - err = GRUB_USB_ERR_NAK; - break; - - case 12: - /* XXX: Buffer overrun. */ - err = GRUB_USB_ERR_DATA; - break; - - case 13: - /* XXX: Buffer underrun. */ - err = GRUB_USB_ERR_DATA; - break; - - default: - err = GRUB_USB_ERR_NAK; - break; - } - - finish_transfer (dev, transfer); - - return err; -} - -static grub_usb_err_t -parse_success (grub_usb_controller_t dev, - grub_usb_transfer_t transfer, - grub_size_t *actual) -{ - struct grub_ohci *o = dev->data; - struct grub_ohci_transfer_controller_data *cdata = transfer->controller_data; - grub_ohci_td_t tderr_virt = NULL; - - pre_finish_transfer (dev, transfer); - - /* I hope we can do it as transfer (most probably) finished OK */ - cdata->tderr_phys = cdata->td_last_phys; - - /* Prepare pointer to last processed TD */ - tderr_virt = grub_ohci_td_phys2virt (o, cdata->tderr_phys); - - /* Set index of last processed TD */ - if (tderr_virt) - transfer->last_trans = tderr_virt->tr_index; - else - transfer->last_trans = -1; - *actual = transfer->size + 1; - - finish_transfer (dev, transfer); - - return GRUB_USB_ERR_NONE; -} - -static grub_usb_err_t -parse_unrec (grub_usb_controller_t dev, - grub_usb_transfer_t transfer, - grub_size_t *actual) -{ - struct grub_ohci *o = dev->data; - - *actual = 0; - - pre_finish_transfer (dev, transfer); - - /* Don't try to get error code and last processed TD for proper - * toggle bit value - anything can be invalid */ - grub_dprintf("ohci", "Unrecoverable error!"); - - /* Do OHCI reset in case of unrecoverable error - maybe we will need - * do more - re-enumerate bus etc. (?) */ - - /* Suspend the OHCI by issuing a reset. */ - grub_ohci_writereg32 (o, GRUB_OHCI_REG_CMDSTATUS, 1); /* XXX: Magic. */ - /* Read back of register should ensure it is really written */ - grub_ohci_readreg32 (o, GRUB_OHCI_REG_CMDSTATUS); - grub_millisleep (1); - grub_dprintf ("ohci", "Unrecoverable error - OHCI reset\n"); - - /* Misc. resets. */ - o->hcca->donehead = 0; - grub_ohci_writereg32 (o, GRUB_OHCI_REG_INTSTATUS, 0x7f); /* Clears everything */ - grub_ohci_writereg32 (o, GRUB_OHCI_REG_CONTROLHEAD, o->ed_ctrl_addr); - grub_ohci_writereg32 (o, GRUB_OHCI_REG_CONTROLCURR, 0); - grub_ohci_writereg32 (o, GRUB_OHCI_REG_BULKHEAD, o->ed_bulk_addr); - grub_ohci_writereg32 (o, GRUB_OHCI_REG_BULKCURR, 0); - /* Read back of register should ensure it is really written */ - grub_ohci_readreg32 (o, GRUB_OHCI_REG_INTSTATUS); - - /* Enable the OHCI. */ - grub_ohci_writereg32 (o, GRUB_OHCI_REG_CONTROL, - (2 << 6) - | GRUB_OHCI_REG_CONTROL_CONTROL_ENABLE - | GRUB_OHCI_REG_CONTROL_BULK_ENABLE ); - finish_transfer (dev, transfer); - - return GRUB_USB_ERR_UNRECOVERABLE; -} - -static grub_usb_err_t -grub_ohci_check_transfer (grub_usb_controller_t dev, - grub_usb_transfer_t transfer, - grub_size_t *actual) -{ - struct grub_ohci *o = dev->data; - struct grub_ohci_transfer_controller_data *cdata = transfer->controller_data; - grub_uint32_t intstatus; - - /* Check transfer status */ - intstatus = grub_ohci_readreg32 (o, GRUB_OHCI_REG_INTSTATUS); - - if ((intstatus & 0x10) != 0) - /* Unrecoverable error - only reset can help...! */ - return parse_unrec (dev, transfer, actual); - - /* Detected a HALT. */ - if ((grub_le_to_cpu32 (cdata->ed_virt->td_head) & 1)) - return parse_halt (dev, transfer, actual); - - /* Finished ED detection */ - if ( (grub_le_to_cpu32 (cdata->ed_virt->td_head) & ~0xfU) == - (grub_le_to_cpu32 (cdata->ed_virt->td_tail) & ~0xfU) ) /* Empty ED */ - { - /* Check the HALT bit */ - /* It looks like nonsense - it was tested previously... - * but it can change because OHCI is working - * simultaneously via DMA... */ - if (grub_le_to_cpu32 (cdata->ed_virt->td_head) & 1) - return parse_halt (dev, transfer, actual); - else - return parse_success (dev, transfer, actual); - } - - return GRUB_USB_ERR_WAIT; -} - -static grub_usb_err_t -grub_ohci_cancel_transfer (grub_usb_controller_t dev, - grub_usb_transfer_t transfer) -{ - struct grub_ohci *o = dev->data; - struct grub_ohci_transfer_controller_data *cdata = transfer->controller_data; - grub_ohci_td_t tderr_virt = NULL; - - pre_finish_transfer (dev, transfer); - - grub_dprintf("ohci", "Timeout !\n"); - - /* We should wait for next SOF to be sure that ED is unaccessed - * by OHCI */ - /* SF bit reset. (SF bit indicates Start Of Frame (SOF) packet) */ - grub_ohci_writereg32 (o, GRUB_OHCI_REG_INTSTATUS, (1<<2)); - /* Wait for new SOF */ - while ((grub_ohci_readreg32 (o, GRUB_OHCI_REG_INTSTATUS) & 0x4) == 0); - - /* Possible retired TD with error should be previous TD to ED->td_head */ - cdata->tderr_phys - = grub_ohci_td_phys2virt (o, grub_le_to_cpu32 (cdata->ed_virt->td_head) - & ~0xf)->prev_td_phys; - - tderr_virt = grub_ohci_td_phys2virt (o,cdata-> tderr_phys); - - grub_dprintf ("ohci", "Cancel: tderr_phys=0x%x, tderr_virt=%p\n", - cdata->tderr_phys, tderr_virt); - - if (tderr_virt) - transfer->last_trans = tderr_virt->tr_index; - else - transfer->last_trans = -1; - - finish_transfer (dev, transfer); - - return GRUB_USB_ERR_NONE; -} - -static grub_usb_err_t -grub_ohci_portstatus (grub_usb_controller_t dev, - unsigned int port, unsigned int enable) -{ - struct grub_ohci *o = (struct grub_ohci *) dev->data; - grub_uint64_t endtime; - int i; - - grub_dprintf ("ohci", "begin of portstatus=0x%02x\n", - grub_ohci_readreg32 (o, GRUB_OHCI_REG_RHUBPORT + port)); - - if (!enable) /* We don't need reset port */ - { - /* Disable the port and wait for it. */ - grub_ohci_writereg32 (o, GRUB_OHCI_REG_RHUBPORT + port, - GRUB_OHCI_CLEAR_PORT_ENABLE); - endtime = grub_get_time_ms () + 1000; - while ((grub_ohci_readreg32 (o, GRUB_OHCI_REG_RHUBPORT + port) - & (1 << 1))) - if (grub_get_time_ms () > endtime) - return GRUB_USB_ERR_TIMEOUT; - - grub_dprintf ("ohci", "end of portstatus=0x%02x\n", - grub_ohci_readreg32 (o, GRUB_OHCI_REG_RHUBPORT + port)); - return GRUB_USB_ERR_NONE; - } - - /* OHCI does one reset signal 10ms long but USB spec. - * requests 50ms for root hub (no need to be continuous). - * So, we do reset 5 times... */ - for (i = 0; i < 5; i++) - { - /* Reset the port - timing of reset is done by OHCI */ - grub_ohci_writereg32 (o, GRUB_OHCI_REG_RHUBPORT + port, - GRUB_OHCI_SET_PORT_RESET); - - /* Wait for reset completion */ - endtime = grub_get_time_ms () + 1000; - while (! (grub_ohci_readreg32 (o, GRUB_OHCI_REG_RHUBPORT + port) - & GRUB_OHCI_SET_PORT_RESET_STATUS_CHANGE)) - if (grub_get_time_ms () > endtime) - return GRUB_USB_ERR_TIMEOUT; - - /* End the reset signaling - reset the reset status change */ - grub_ohci_writereg32 (o, GRUB_OHCI_REG_RHUBPORT + port, - GRUB_OHCI_SET_PORT_RESET_STATUS_CHANGE); - grub_ohci_readreg32 (o, GRUB_OHCI_REG_RHUBPORT + port); - } - - /* Enable port */ - grub_ohci_writereg32 (o, GRUB_OHCI_REG_RHUBPORT + port, - GRUB_OHCI_SET_PORT_ENABLE); - grub_ohci_readreg32 (o, GRUB_OHCI_REG_RHUBPORT + port); - - /* Wait for signal enabled */ - endtime = grub_get_time_ms () + 1000; - while (! (grub_ohci_readreg32 (o, GRUB_OHCI_REG_RHUBPORT + port) - & (1 << 1))) - if (grub_get_time_ms () > endtime) - return GRUB_USB_ERR_TIMEOUT; - - /* Reset bit Connect Status Change */ - grub_ohci_writereg32 (o, GRUB_OHCI_REG_RHUBPORT + port, - GRUB_OHCI_RESET_CONNECT_CHANGE); - - /* "Reset recovery time" (USB spec.) */ - grub_millisleep (10); - - grub_dprintf ("ohci", "end of portstatus=0x%02x\n", - grub_ohci_readreg32 (o, GRUB_OHCI_REG_RHUBPORT + port)); - - return GRUB_USB_ERR_NONE; -} - -static grub_usb_speed_t -grub_ohci_detect_dev (grub_usb_controller_t dev, int port, int *changed) -{ - struct grub_ohci *o = (struct grub_ohci *) dev->data; - grub_uint32_t status; - - status = grub_ohci_readreg32 (o, GRUB_OHCI_REG_RHUBPORT + port); - - grub_dprintf ("ohci", "detect_dev status=0x%02x\n", status); - - /* Connect Status Change bit - it detects change of connection */ - if (status & GRUB_OHCI_RESET_CONNECT_CHANGE) - { - *changed = 1; - /* Reset bit Connect Status Change */ - grub_ohci_writereg32 (o, GRUB_OHCI_REG_RHUBPORT + port, - GRUB_OHCI_RESET_CONNECT_CHANGE); - } - else - *changed = 0; - - if (! (status & 1)) - return GRUB_USB_SPEED_NONE; - else if (status & (1 << 9)) - return GRUB_USB_SPEED_LOW; - else - return GRUB_USB_SPEED_FULL; -} - -static int -grub_ohci_hubports (grub_usb_controller_t dev) -{ - struct grub_ohci *o = (struct grub_ohci *) dev->data; - grub_uint32_t portinfo; - - portinfo = grub_ohci_readreg32 (o, GRUB_OHCI_REG_RHUBA); - - grub_dprintf ("ohci", "root hub ports=%d\n", portinfo & 0xFF); - - return portinfo & 0xFF; -} - -static grub_err_t -grub_ohci_fini_hw (int noreturn __attribute__ ((unused))) -{ - struct grub_ohci *o; - - for (o = ohci; o; o = o->next) - { - int i, nports = grub_ohci_readreg32 (o, GRUB_OHCI_REG_RHUBA) & 0xff; - grub_uint64_t maxtime; - - /* Set skip in all EDs */ - if (o->ed_bulk) - for (i=0; i < GRUB_OHCI_BULK_EDS; i++) - o->ed_bulk[i].target |= grub_cpu_to_le32_compile_time (1 << 14); /* skip */ - if (o->ed_ctrl) - for (i=0; i < GRUB_OHCI_CTRL_EDS; i++) - o->ed_ctrl[i].target |= grub_cpu_to_le32_compile_time (1 << 14); /* skip */ - - /* We should wait for next SOF to be sure that all EDs are - * unaccessed by OHCI. But OHCI can be non-functional, so - * more than 1ms timeout have to be applied. */ - /* SF bit reset. (SF bit indicates Start Of Frame (SOF) packet) */ - grub_ohci_writereg32 (o, GRUB_OHCI_REG_INTSTATUS, (1<<2)); - maxtime = grub_get_time_ms () + 2; - /* Wait for new SOF or timeout */ - while ( ((grub_ohci_readreg32 (o, GRUB_OHCI_REG_INTSTATUS) & 0x4) - == 0) || (grub_get_time_ms () >= maxtime) ); - - for (i = 0; i < nports; i++) - grub_ohci_writereg32 (o, GRUB_OHCI_REG_RHUBPORT + i, - GRUB_OHCI_CLEAR_PORT_ENABLE); - - grub_ohci_writereg32 (o, GRUB_OHCI_REG_CMDSTATUS, 1); - grub_millisleep (1); - grub_ohci_writereg32 (o, GRUB_OHCI_REG_HCCA, 0); - grub_ohci_writereg32 (o, GRUB_OHCI_REG_CONTROLHEAD, 0); - grub_ohci_writereg32 (o, GRUB_OHCI_REG_CONTROLCURR, 0); - grub_ohci_writereg32 (o, GRUB_OHCI_REG_BULKHEAD, 0); - grub_ohci_writereg32 (o, GRUB_OHCI_REG_BULKCURR, 0); - grub_ohci_writereg32 (o, GRUB_OHCI_REG_DONEHEAD, 0); - grub_ohci_writereg32 (o, GRUB_OHCI_REG_CONTROL, 0); - /* Read back of register should ensure it is really written */ - grub_ohci_readreg32 (o, GRUB_OHCI_REG_INTSTATUS); - -#if 0 /* Is this necessary before booting? Probably not .(?) - * But it must be done if module is removed ! (Or not ?) - * How to do it ? - Probably grub_ohci_restore_hw should be more - * complicated. (?) - * (If we do it, we need to reallocate EDs and TDs in function - * grub_ohci_restore_hw ! */ - - /* Free allocated EDs and TDs */ - grub_dma_free (o->td_chunk); - grub_dma_free (o->ed_bulk_chunk); - grub_dma_free (o->ed_ctrl_chunk); - grub_dma_free (o->hcca_chunk); -#endif - } - grub_millisleep (10); - - return GRUB_ERR_NONE; -} - -static grub_err_t -grub_ohci_restore_hw (void) -{ - struct grub_ohci *o; - - for (o = ohci; o; o = o->next) - { - grub_ohci_writereg32 (o, GRUB_OHCI_REG_HCCA, o->hcca_addr); - o->hcca->donehead = 0; - grub_ohci_writereg32 (o, GRUB_OHCI_REG_INTSTATUS, 0x7f); /* Clears everything */ - grub_ohci_writereg32 (o, GRUB_OHCI_REG_CONTROLHEAD, o->ed_ctrl_addr); - grub_ohci_writereg32 (o, GRUB_OHCI_REG_CONTROLCURR, 0); - grub_ohci_writereg32 (o, GRUB_OHCI_REG_BULKHEAD, o->ed_bulk_addr); - grub_ohci_writereg32 (o, GRUB_OHCI_REG_BULKCURR, 0); - /* Read back of register should ensure it is really written */ - grub_ohci_readreg32 (o, GRUB_OHCI_REG_INTSTATUS); - - /* Enable the OHCI. */ - grub_ohci_writereg32 (o, GRUB_OHCI_REG_CONTROL, - (2 << 6) - | GRUB_OHCI_REG_CONTROL_CONTROL_ENABLE - | GRUB_OHCI_REG_CONTROL_BULK_ENABLE ); - } - - return GRUB_ERR_NONE; -} - - -static struct grub_usb_controller_dev usb_controller = -{ - .name = "ohci", - .iterate = grub_ohci_iterate, - .setup_transfer = grub_ohci_setup_transfer, - .check_transfer = grub_ohci_check_transfer, - .cancel_transfer = grub_ohci_cancel_transfer, - .hubports = grub_ohci_hubports, - .portstatus = grub_ohci_portstatus, - .detect_dev = grub_ohci_detect_dev, - /* estimated max. count of TDs for one bulk transfer */ - .max_bulk_tds = GRUB_OHCI_TDS * 3 / 4 -}; - -static struct grub_preboot *fini_hnd; - -GRUB_MOD_INIT(ohci) -{ - COMPILE_TIME_ASSERT (sizeof (struct grub_ohci_td) == 32); - COMPILE_TIME_ASSERT (sizeof (struct grub_ohci_ed) == 16); - - grub_stop_disk_firmware (); - - grub_ohci_inithw (); - grub_usb_controller_dev_register (&usb_controller); - fini_hnd = grub_loader_register_preboot_hook (grub_ohci_fini_hw, - grub_ohci_restore_hw, - GRUB_LOADER_PREBOOT_HOOK_PRIO_DISK); -} - -GRUB_MOD_FINI(ohci) -{ - grub_ohci_fini_hw (0); - grub_loader_unregister_preboot_hook (fini_hnd); - grub_usb_controller_dev_unregister (&usb_controller); -} diff --git a/thirdparty/grub-2.04/grub-core/bus/usb/serial/common.c b/thirdparty/grub-2.04/grub-core/bus/usb/serial/common.c deleted file mode 100644 index 8e94c7dc0..000000000 --- a/thirdparty/grub-2.04/grub-core/bus/usb/serial/common.c +++ /dev/null @@ -1,139 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2000,2001,2002,2003,2004,2005,2007,2008,2009,2010 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -void -grub_usbserial_fini (struct grub_serial_port *port) -{ - port->usbdev->config[port->configno].interf[port->interfno].detach_hook = 0; - port->usbdev->config[port->configno].interf[port->interfno].attached = 0; -} - -void -grub_usbserial_detach (grub_usb_device_t usbdev, int configno, int interfno) -{ - static struct grub_serial_port *port; - port = usbdev->config[configno].interf[interfno].detach_data; - - grub_serial_unregister (port); -} - -static int usbnum = 0; - -int -grub_usbserial_attach (grub_usb_device_t usbdev, int configno, int interfno, - struct grub_serial_driver *driver, int in_endp, - int out_endp) -{ - struct grub_serial_port *port; - int j; - struct grub_usb_desc_if *interf; - grub_usb_err_t err = GRUB_USB_ERR_NONE; - - interf = usbdev->config[configno].interf[interfno].descif; - - port = grub_zalloc (sizeof (*port)); - if (!port) - { - grub_print_error (); - return 0; - } - - port->name = grub_xasprintf ("usb%d", usbnum++); - if (!port->name) - { - grub_free (port); - grub_print_error (); - return 0; - } - - port->usbdev = usbdev; - port->driver = driver; - for (j = 0; j < interf->endpointcnt; j++) - { - struct grub_usb_desc_endp *endp; - endp = &usbdev->config[0].interf[interfno].descendp[j]; - - if ((endp->endp_addr & 128) && (endp->attrib & 3) == 2 - && (in_endp == GRUB_USB_SERIAL_ENDPOINT_LAST_MATCHING - || in_endp == endp->endp_addr)) - { - /* Bulk IN endpoint. */ - port->in_endp = endp; - } - else if (!(endp->endp_addr & 128) && (endp->attrib & 3) == 2 - && (out_endp == GRUB_USB_SERIAL_ENDPOINT_LAST_MATCHING - || out_endp == endp->endp_addr)) - { - /* Bulk OUT endpoint. */ - port->out_endp = endp; - } - } - - /* Configure device */ - if (port->out_endp && port->in_endp) - err = grub_usb_set_configuration (usbdev, configno + 1); - - if (!port->out_endp || !port->in_endp || err) - { - grub_free (port->name); - grub_free (port); - return 0; - } - - port->configno = configno; - port->interfno = interfno; - - grub_serial_config_defaults (port); - grub_serial_register (port); - - port->usbdev->config[port->configno].interf[port->interfno].detach_hook - = grub_usbserial_detach; - port->usbdev->config[port->configno].interf[port->interfno].detach_data - = port; - - return 1; -} - -int -grub_usbserial_fetch (struct grub_serial_port *port, grub_size_t header_size) -{ - grub_usb_err_t err; - grub_size_t actual; - - if (port->bufstart < port->bufend) - return port->buf[port->bufstart++]; - - err = grub_usb_bulk_read_extended (port->usbdev, port->in_endp, - sizeof (port->buf), port->buf, 10, - &actual); - if (err != GRUB_USB_ERR_NONE) - return -1; - - port->bufstart = header_size; - port->bufend = actual; - if (port->bufstart >= port->bufend) - return -1; - - return port->buf[port->bufstart++]; -} diff --git a/thirdparty/grub-2.04/grub-core/bus/usb/serial/ftdi.c b/thirdparty/grub-2.04/grub-core/bus/usb/serial/ftdi.c deleted file mode 100644 index 1a99cba17..000000000 --- a/thirdparty/grub-2.04/grub-core/bus/usb/serial/ftdi.c +++ /dev/null @@ -1,218 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2000,2001,2002,2003,2004,2005,2007,2008,2009,2010 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -enum - { - GRUB_FTDI_MODEM_CTRL = 0x01, - GRUB_FTDI_FLOW_CTRL = 0x02, - GRUB_FTDI_SPEED_CTRL = 0x03, - GRUB_FTDI_DATA_CTRL = 0x04 - }; - -#define GRUB_FTDI_MODEM_CTRL_DTRRTS 3 -#define GRUB_FTDI_FLOW_CTRL_DTRRTS 3 - -/* Convert speed to divisor. */ -static grub_uint32_t -get_divisor (unsigned int speed) -{ - unsigned int i; - - /* The structure for speed vs. divisor. */ - struct divisor - { - unsigned int speed; - grub_uint32_t div; - }; - - /* The table which lists common configurations. */ - /* Computed with a division formula with 3MHz as base frequency. */ - static struct divisor divisor_tab[] = - { - { 2400, 0x04e2 }, - { 4800, 0x0271 }, - { 9600, 0x4138 }, - { 19200, 0x809c }, - { 38400, 0xc04e }, - { 57600, 0xc034 }, - { 115200, 0x001a } - }; - - /* Set the baud rate. */ - for (i = 0; i < ARRAY_SIZE (divisor_tab); i++) - if (divisor_tab[i].speed == speed) - return divisor_tab[i].div; - return 0; -} - -static void -real_config (struct grub_serial_port *port) -{ - grub_uint32_t divisor; - const grub_uint16_t parities[] = { - [GRUB_SERIAL_PARITY_NONE] = 0x0000, - [GRUB_SERIAL_PARITY_ODD] = 0x0100, - [GRUB_SERIAL_PARITY_EVEN] = 0x0200 - }; - const grub_uint16_t stop_bits[] = { - [GRUB_SERIAL_STOP_BITS_1] = 0x0000, - [GRUB_SERIAL_STOP_BITS_1_5] = 0x0800, - [GRUB_SERIAL_STOP_BITS_2] = 0x1000, - }; - - if (port->configured) - return; - - grub_usb_control_msg (port->usbdev, GRUB_USB_REQTYPE_VENDOR_OUT, - GRUB_FTDI_MODEM_CTRL, - port->config.rtscts ? GRUB_FTDI_MODEM_CTRL_DTRRTS : 0, - 0, 0, 0); - - grub_usb_control_msg (port->usbdev, GRUB_USB_REQTYPE_VENDOR_OUT, - GRUB_FTDI_FLOW_CTRL, - port->config.rtscts ? GRUB_FTDI_FLOW_CTRL_DTRRTS : 0, - 0, 0, 0); - - divisor = get_divisor (port->config.speed); - grub_usb_control_msg (port->usbdev, GRUB_USB_REQTYPE_VENDOR_OUT, - GRUB_FTDI_SPEED_CTRL, - divisor & 0xffff, divisor >> 16, 0, 0); - - grub_usb_control_msg (port->usbdev, GRUB_USB_REQTYPE_VENDOR_OUT, - GRUB_FTDI_DATA_CTRL, - parities[port->config.parity] - | stop_bits[port->config.stop_bits] - | port->config.word_len, 0, 0, 0); - - port->configured = 1; -} - -/* Fetch a key. */ -static int -ftdi_hw_fetch (struct grub_serial_port *port) -{ - real_config (port); - - return grub_usbserial_fetch (port, 2); -} - -/* Put a character. */ -static void -ftdi_hw_put (struct grub_serial_port *port, const int c) -{ - char cc = c; - - real_config (port); - - grub_usb_bulk_write (port->usbdev, port->out_endp, 1, &cc); -} - -static grub_err_t -ftdi_hw_configure (struct grub_serial_port *port, - struct grub_serial_config *config) -{ - grub_uint16_t divisor; - - divisor = get_divisor (config->speed); - if (divisor == 0) - return grub_error (GRUB_ERR_BAD_ARGUMENT, - N_("unsupported serial port speed")); - - if (config->parity != GRUB_SERIAL_PARITY_NONE - && config->parity != GRUB_SERIAL_PARITY_ODD - && config->parity != GRUB_SERIAL_PARITY_EVEN) - return grub_error (GRUB_ERR_BAD_ARGUMENT, - N_("unsupported serial port parity")); - - if (config->stop_bits != GRUB_SERIAL_STOP_BITS_1 - && config->stop_bits != GRUB_SERIAL_STOP_BITS_1_5 - && config->stop_bits != GRUB_SERIAL_STOP_BITS_2) - return grub_error (GRUB_ERR_BAD_ARGUMENT, - N_("unsupported serial port stop bits number")); - - if (config->word_len < 5 || config->word_len > 8) - return grub_error (GRUB_ERR_BAD_ARGUMENT, - N_("unsupported serial port word length")); - - port->config = *config; - port->configured = 0; - - return GRUB_ERR_NONE; -} - -static struct grub_serial_driver grub_ftdi_driver = - { - .configure = ftdi_hw_configure, - .fetch = ftdi_hw_fetch, - .put = ftdi_hw_put, - .fini = grub_usbserial_fini - }; - -static const struct -{ - grub_uint16_t vendor, product; -} products[] = - { - {0x0403, 0x6001} /* QEMU virtual USBserial. */ - }; - -static int -grub_ftdi_attach (grub_usb_device_t usbdev, int configno, int interfno) -{ - unsigned j; - - for (j = 0; j < ARRAY_SIZE (products); j++) - if (usbdev->descdev.vendorid == products[j].vendor - && usbdev->descdev.prodid == products[j].product) - break; - if (j == ARRAY_SIZE (products)) - return 0; - - return grub_usbserial_attach (usbdev, configno, interfno, - &grub_ftdi_driver, - GRUB_USB_SERIAL_ENDPOINT_LAST_MATCHING, - GRUB_USB_SERIAL_ENDPOINT_LAST_MATCHING); -} - -static struct grub_usb_attach_desc attach_hook = -{ - .class = 0xff, - .hook = grub_ftdi_attach -}; - -GRUB_MOD_INIT(usbserial_ftdi) -{ - grub_usb_register_attach_hook_class (&attach_hook); -} - -GRUB_MOD_FINI(usbserial_ftdi) -{ - grub_serial_unregister_driver (&grub_ftdi_driver); - grub_usb_unregister_attach_hook_class (&attach_hook); -} diff --git a/thirdparty/grub-2.04/grub-core/bus/usb/serial/pl2303.c b/thirdparty/grub-2.04/grub-core/bus/usb/serial/pl2303.c deleted file mode 100644 index d1945a2cb..000000000 --- a/thirdparty/grub-2.04/grub-core/bus/usb/serial/pl2303.c +++ /dev/null @@ -1,231 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2000,2001,2002,2003,2004,2005,2007,2008,2009,2010 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -/* Convert speed to divisor. */ -static grub_uint32_t -is_speed_supported (unsigned int speed) -{ - unsigned int i; - unsigned int supported[] = { 2400, 4800, 9600, 19200, 38400, 57600, 115200}; - - for (i = 0; i < ARRAY_SIZE (supported); i++) - if (supported[i] == speed) - return 1; - return 0; -} - -#define GRUB_PL2303_REQUEST_SET_CONFIG 0x20 -#define GRUB_PL2303_STOP_BITS_1 0x0 -#define GRUB_PL2303_STOP_BITS_1_5 0x1 -#define GRUB_PL2303_STOP_BITS_2 0x2 - -#define GRUB_PL2303_PARITY_NONE 0 -#define GRUB_PL2303_PARITY_ODD 1 -#define GRUB_PL2303_PARITY_EVEN 2 - -struct grub_pl2303_config -{ - grub_uint32_t speed; - grub_uint8_t stop_bits; - grub_uint8_t parity; - grub_uint8_t word_len; -} GRUB_PACKED; - -static void -real_config (struct grub_serial_port *port) -{ - struct grub_pl2303_config config_pl2303; - char xx; - - if (port->configured) - return; - - grub_usb_control_msg (port->usbdev, GRUB_USB_REQTYPE_VENDOR_IN, - 1, 0x8484, 0, 1, &xx); - grub_usb_control_msg (port->usbdev, GRUB_USB_REQTYPE_VENDOR_OUT, - 1, 0x0404, 0, 0, 0); - - grub_usb_control_msg (port->usbdev, GRUB_USB_REQTYPE_VENDOR_IN, - 1, 0x8484, 0, 1, &xx); - grub_usb_control_msg (port->usbdev, GRUB_USB_REQTYPE_VENDOR_IN, - 1, 0x8383, 0, 1, &xx); - grub_usb_control_msg (port->usbdev, GRUB_USB_REQTYPE_VENDOR_IN, - 1, 0x8484, 0, 1, &xx); - grub_usb_control_msg (port->usbdev, GRUB_USB_REQTYPE_VENDOR_OUT, - 1, 0x0404, 1, 0, 0); - - grub_usb_control_msg (port->usbdev, GRUB_USB_REQTYPE_VENDOR_IN, - 1, 0x8484, 0, 1, &xx); - grub_usb_control_msg (port->usbdev, GRUB_USB_REQTYPE_VENDOR_IN, - 1, 0x8383, 0, 1, &xx); - - grub_usb_control_msg (port->usbdev, GRUB_USB_REQTYPE_VENDOR_OUT, - 1, 0, 1, 0, 0); - grub_usb_control_msg (port->usbdev, GRUB_USB_REQTYPE_VENDOR_OUT, - 1, 1, 0, 0, 0); - grub_usb_control_msg (port->usbdev, GRUB_USB_REQTYPE_VENDOR_OUT, - 1, 2, 0x44, 0, 0); - grub_usb_control_msg (port->usbdev, GRUB_USB_REQTYPE_VENDOR_OUT, - 1, 8, 0, 0, 0); - grub_usb_control_msg (port->usbdev, GRUB_USB_REQTYPE_VENDOR_OUT, - 1, 9, 0, 0, 0); - - if (port->config.stop_bits == GRUB_SERIAL_STOP_BITS_2) - config_pl2303.stop_bits = GRUB_PL2303_STOP_BITS_2; - else if (port->config.stop_bits == GRUB_SERIAL_STOP_BITS_1_5) - config_pl2303.stop_bits = GRUB_PL2303_STOP_BITS_1_5; - else - config_pl2303.stop_bits = GRUB_PL2303_STOP_BITS_1; - - switch (port->config.parity) - { - case GRUB_SERIAL_PARITY_NONE: - config_pl2303.parity = GRUB_PL2303_PARITY_NONE; - break; - case GRUB_SERIAL_PARITY_ODD: - config_pl2303.parity = GRUB_PL2303_PARITY_ODD; - break; - case GRUB_SERIAL_PARITY_EVEN: - config_pl2303.parity = GRUB_PL2303_PARITY_EVEN; - break; - } - - config_pl2303.word_len = port->config.word_len; - config_pl2303.speed = port->config.speed; - grub_usb_control_msg (port->usbdev, GRUB_USB_REQTYPE_CLASS_INTERFACE_OUT, - GRUB_PL2303_REQUEST_SET_CONFIG, 0, 0, - sizeof (config_pl2303), (char *) &config_pl2303); - grub_usb_control_msg (port->usbdev, GRUB_USB_REQTYPE_CLASS_INTERFACE_OUT, - 0x22, 3, 0, 0, 0); - - grub_usb_control_msg (port->usbdev, GRUB_USB_REQTYPE_VENDOR_OUT, - 1, 0, port->config.rtscts ? 0x61 : 0, 0, 0); - port->configured = 1; -} - -/* Fetch a key. */ -static int -pl2303_hw_fetch (struct grub_serial_port *port) -{ - real_config (port); - - return grub_usbserial_fetch (port, 0); -} - -/* Put a character. */ -static void -pl2303_hw_put (struct grub_serial_port *port, const int c) -{ - char cc = c; - - real_config (port); - - grub_usb_bulk_write (port->usbdev, port->out_endp, 1, &cc); -} - -static grub_err_t -pl2303_hw_configure (struct grub_serial_port *port, - struct grub_serial_config *config) -{ - if (!is_speed_supported (config->speed)) - return grub_error (GRUB_ERR_BAD_ARGUMENT, - N_("unsupported serial port speed")); - - if (config->parity != GRUB_SERIAL_PARITY_NONE - && config->parity != GRUB_SERIAL_PARITY_ODD - && config->parity != GRUB_SERIAL_PARITY_EVEN) - return grub_error (GRUB_ERR_BAD_ARGUMENT, - N_("unsupported serial port parity")); - - if (config->stop_bits != GRUB_SERIAL_STOP_BITS_1 - && config->stop_bits != GRUB_SERIAL_STOP_BITS_1_5 - && config->stop_bits != GRUB_SERIAL_STOP_BITS_2) - return grub_error (GRUB_ERR_BAD_ARGUMENT, - N_("unsupported serial port stop bits number")); - - if (config->word_len < 5 || config->word_len > 8) - return grub_error (GRUB_ERR_BAD_ARGUMENT, - N_("unsupported serial port word length")); - - port->config = *config; - port->configured = 0; - - return GRUB_ERR_NONE; -} - -static struct grub_serial_driver grub_pl2303_driver = - { - .configure = pl2303_hw_configure, - .fetch = pl2303_hw_fetch, - .put = pl2303_hw_put, - .fini = grub_usbserial_fini - }; - -static const struct -{ - grub_uint16_t vendor, product; -} products[] = - { - {0x067b, 0x2303} - }; - -static int -grub_pl2303_attach (grub_usb_device_t usbdev, int configno, int interfno) -{ - unsigned j; - - for (j = 0; j < ARRAY_SIZE (products); j++) - if (usbdev->descdev.vendorid == products[j].vendor - && usbdev->descdev.prodid == products[j].product) - break; - if (j == ARRAY_SIZE (products)) - return 0; - - return grub_usbserial_attach (usbdev, configno, interfno, - &grub_pl2303_driver, - GRUB_USB_SERIAL_ENDPOINT_LAST_MATCHING, - GRUB_USB_SERIAL_ENDPOINT_LAST_MATCHING); -} - -static struct grub_usb_attach_desc attach_hook = -{ - .class = 0xff, - .hook = grub_pl2303_attach -}; - -GRUB_MOD_INIT(usbserial_pl2303) -{ - grub_usb_register_attach_hook_class (&attach_hook); -} - -GRUB_MOD_FINI(usbserial_pl2303) -{ - grub_serial_unregister_driver (&grub_pl2303_driver); - grub_usb_unregister_attach_hook_class (&attach_hook); -} diff --git a/thirdparty/grub-2.04/grub-core/bus/usb/serial/usbdebug_late.c b/thirdparty/grub-2.04/grub-core/bus/usb/serial/usbdebug_late.c deleted file mode 100644 index e88ba130e..000000000 --- a/thirdparty/grub-2.04/grub-core/bus/usb/serial/usbdebug_late.c +++ /dev/null @@ -1,93 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2000,2001,2002,2003,2004,2005,2007,2008,2009,2010,2013 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - - -/* Fetch a key. */ -static int -usbdebug_late_hw_fetch (struct grub_serial_port *port) -{ - return grub_usbserial_fetch (port, 0); -} - -/* Put a character. */ -static void -usbdebug_late_hw_put (struct grub_serial_port *port, const int c) -{ - char cc = c; - - grub_usb_bulk_write (port->usbdev, port->out_endp, 1, &cc); -} - -static grub_err_t -usbdebug_late_hw_configure (struct grub_serial_port *port __attribute__ ((unused)), - struct grub_serial_config *config __attribute__ ((unused))) -{ - return GRUB_ERR_NONE; -} - -static struct grub_serial_driver grub_usbdebug_late_driver = - { - .configure = usbdebug_late_hw_configure, - .fetch = usbdebug_late_hw_fetch, - .put = usbdebug_late_hw_put, - .fini = grub_usbserial_fini - }; - -static int -grub_usbdebug_late_attach (grub_usb_device_t usbdev, int configno, int interfno) -{ - grub_usb_err_t err; - struct grub_usb_desc_debug debugdesc; - - err = grub_usb_get_descriptor (usbdev, GRUB_USB_DESCRIPTOR_DEBUG, configno, - sizeof (debugdesc), (char *) &debugdesc); - if (err) - return 0; - - return grub_usbserial_attach (usbdev, configno, interfno, - &grub_usbdebug_late_driver, - debugdesc.in_endp, debugdesc.out_endp); -} - -static struct grub_usb_attach_desc attach_hook = -{ - .class = 0xff, - .hook = grub_usbdebug_late_attach -}; - -GRUB_MOD_INIT(usbserial_usbdebug_late) -{ - grub_usb_register_attach_hook_class (&attach_hook); -} - -GRUB_MOD_FINI(usbserial_usbdebug_late) -{ - grub_serial_unregister_driver (&grub_usbdebug_late_driver); - grub_usb_unregister_attach_hook_class (&attach_hook); -} diff --git a/thirdparty/grub-2.04/grub-core/bus/usb/uhci.c b/thirdparty/grub-2.04/grub-core/bus/usb/uhci.c deleted file mode 100644 index 7c5811fd6..000000000 --- a/thirdparty/grub-2.04/grub-core/bus/usb/uhci.c +++ /dev/null @@ -1,871 +0,0 @@ -/* uhci.c - UHCI Support. */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2008 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -#define GRUB_UHCI_IOMASK (0x7FF << 5) - -#define N_QH 256 -#define N_TD 640 - -typedef enum - { - GRUB_UHCI_REG_USBCMD = 0x00, - GRUB_UHCI_REG_USBINTR = 0x04, - GRUB_UHCI_REG_FLBASEADD = 0x08, - GRUB_UHCI_REG_PORTSC1 = 0x10, - GRUB_UHCI_REG_PORTSC2 = 0x12, - GRUB_UHCI_REG_USBLEGSUP = 0xc0 - } grub_uhci_reg_t; - -enum - { - GRUB_UHCI_DETECT_CHANGED = (1 << 1), - GRUB_UHCI_DETECT_HAVE_DEVICE = 1, - GRUB_UHCI_DETECT_LOW_SPEED = (1 << 8) - }; - -/* R/WC legacy support bits */ -enum - { - GRUB_UHCI_LEGSUP_END_A20GATE = (1 << 15), - GRUB_UHCI_TRAP_BY_64H_WSTAT = (1 << 11), - GRUB_UHCI_TRAP_BY_64H_RSTAT = (1 << 10), - GRUB_UHCI_TRAP_BY_60H_WSTAT = (1 << 9), - GRUB_UHCI_TRAP_BY_60H_RSTAT = (1 << 8) - }; - -/* Reset all legacy support - clear all R/WC bits and all R/W bits */ -#define GRUB_UHCI_RESET_LEGSUP_SMI ( GRUB_UHCI_LEGSUP_END_A20GATE \ - | GRUB_UHCI_TRAP_BY_64H_WSTAT \ - | GRUB_UHCI_TRAP_BY_64H_RSTAT \ - | GRUB_UHCI_TRAP_BY_60H_WSTAT \ - | GRUB_UHCI_TRAP_BY_60H_RSTAT ) - -/* Some UHCI commands */ -#define GRUB_UHCI_CMD_RUN_STOP (1 << 0) -#define GRUB_UHCI_CMD_HCRESET (1 << 1) -#define GRUB_UHCI_CMD_MAXP (1 << 7) - -/* Important bits in structures */ -#define GRUB_UHCI_LINK_TERMINATE 1 -#define GRUB_UHCI_LINK_QUEUE_HEAD 2 - -enum - { - GRUB_UHCI_REG_PORTSC_CONNECT_CHANGED = 0x0002, - GRUB_UHCI_REG_PORTSC_PORT_ENABLED = 0x0004, - GRUB_UHCI_REG_PORTSC_RESUME = 0x0040, - GRUB_UHCI_REG_PORTSC_RESET = 0x0200, - GRUB_UHCI_REG_PORTSC_SUSPEND = 0x1000, - GRUB_UHCI_REG_PORTSC_RW = GRUB_UHCI_REG_PORTSC_PORT_ENABLED - | GRUB_UHCI_REG_PORTSC_RESUME | GRUB_UHCI_REG_PORTSC_RESET - | GRUB_UHCI_REG_PORTSC_SUSPEND, - /* These bits should not be written as 1 unless we really need it */ - GRUB_UHCI_PORTSC_RWC = ((1 << 1) | (1 << 3) | (1 << 11) | (3 << 13)) - }; - -/* UHCI Queue Head. */ -struct grub_uhci_qh -{ - /* Queue head link pointer which points to the next queue head. */ - grub_uint32_t linkptr; - - /* Queue element link pointer which points to the first data object - within the queue. */ - grub_uint32_t elinkptr; - - /* Queue heads are aligned on 16 bytes, pad so a queue head is 16 - bytes so we can store many in a 4K page. */ - grub_uint8_t pad[8]; -} GRUB_PACKED; - -/* UHCI Transfer Descriptor. */ -struct grub_uhci_td -{ - /* Pointer to the next TD in the list. */ - grub_uint32_t linkptr; - - /* Control and status bits. */ - grub_uint32_t ctrl_status; - - /* All information required to transfer the Token packet. */ - grub_uint32_t token; - - /* A pointer to the data buffer, UHCI requires this pointer to be 32 - bits. */ - grub_uint32_t buffer; - - /* Another linkptr that is not overwritten by the Host Controller. - This is GRUB specific. */ - grub_uint32_t linkptr2; - - /* 3 additional 32 bits words reserved for the Host Controller Driver. */ - grub_uint32_t data[3]; -} GRUB_PACKED; - -typedef volatile struct grub_uhci_td *grub_uhci_td_t; -typedef volatile struct grub_uhci_qh *grub_uhci_qh_t; - -struct grub_uhci -{ - grub_port_t iobase; - volatile grub_uint32_t *framelist_virt; - grub_uint32_t framelist_phys; - struct grub_pci_dma_chunk *framelist_chunk; - - /* N_QH Queue Heads. */ - struct grub_pci_dma_chunk *qh_chunk; - volatile grub_uhci_qh_t qh_virt; - grub_uint32_t qh_phys; - - /* N_TD Transfer Descriptors. */ - struct grub_pci_dma_chunk *td_chunk; - volatile grub_uhci_td_t td_virt; - grub_uint32_t td_phys; - - /* Free Transfer Descriptors. */ - grub_uhci_td_t tdfree; - - int qh_busy[N_QH]; - - struct grub_uhci *next; -}; - -static struct grub_uhci *uhci; - -static grub_uint16_t -grub_uhci_readreg16 (struct grub_uhci *u, grub_uhci_reg_t reg) -{ - return grub_inw (u->iobase + reg); -} - -#if 0 -static grub_uint32_t -grub_uhci_readreg32 (struct grub_uhci *u, grub_uhci_reg_t reg) -{ - return grub_inl (u->iobase + reg); -} -#endif - -static void -grub_uhci_writereg16 (struct grub_uhci *u, - grub_uhci_reg_t reg, grub_uint16_t val) -{ - grub_outw (val, u->iobase + reg); -} - -static void -grub_uhci_writereg32 (struct grub_uhci *u, - grub_uhci_reg_t reg, grub_uint32_t val) -{ - grub_outl (val, u->iobase + reg); -} - -/* Iterate over all PCI devices. Determine if a device is an UHCI - controller. If this is the case, initialize it. */ -static int -grub_uhci_pci_iter (grub_pci_device_t dev, - grub_pci_id_t pciid __attribute__((unused)), - void *data __attribute__ ((unused))) -{ - grub_uint32_t class_code; - grub_uint32_t class; - grub_uint32_t subclass; - grub_uint32_t interf; - grub_uint32_t base; - grub_uint32_t fp; - grub_pci_address_t addr; - struct grub_uhci *u; - int i; - - addr = grub_pci_make_address (dev, GRUB_PCI_REG_CLASS); - class_code = grub_pci_read (addr) >> 8; - - interf = class_code & 0xFF; - subclass = (class_code >> 8) & 0xFF; - class = class_code >> 16; - - /* If this is not an UHCI controller, just return. */ - if (class != 0x0c || subclass != 0x03 || interf != 0x00) - return 0; - - /* Determine IO base address. */ - addr = grub_pci_make_address (dev, GRUB_PCI_REG_ADDRESS_REG4); - base = grub_pci_read (addr); - /* Stop if there is no IO space base address defined. */ - if ((base & GRUB_PCI_ADDR_SPACE_MASK) != GRUB_PCI_ADDR_SPACE_IO) - return 0; - - if ((base & GRUB_UHCI_IOMASK) == 0) - return 0; - - /* Set bus master - needed for coreboot or broken BIOSes */ - addr = grub_pci_make_address (dev, GRUB_PCI_REG_COMMAND); - grub_pci_write_word(addr, GRUB_PCI_COMMAND_IO_ENABLED - | GRUB_PCI_COMMAND_BUS_MASTER - | GRUB_PCI_COMMAND_MEM_ENABLED - | grub_pci_read_word (addr)); - - grub_dprintf ("uhci", "base = %x\n", base); - - /* Allocate memory for the controller and register it. */ - u = grub_zalloc (sizeof (*u)); - if (! u) - return 1; - - u->iobase = (base & GRUB_UHCI_IOMASK) + GRUB_MACHINE_PCI_IO_BASE; - - /* Reset PIRQ and SMI */ - addr = grub_pci_make_address (dev, GRUB_UHCI_REG_USBLEGSUP); - grub_pci_write_word(addr, GRUB_UHCI_RESET_LEGSUP_SMI); - /* Reset the HC */ - grub_uhci_writereg16(u, GRUB_UHCI_REG_USBCMD, GRUB_UHCI_CMD_HCRESET); - grub_millisleep(5); - /* Disable interrupts and commands (just to be safe) */ - grub_uhci_writereg16(u, GRUB_UHCI_REG_USBINTR, 0); - /* Finish HC reset, HC remains disabled */ - grub_uhci_writereg16(u, GRUB_UHCI_REG_USBCMD, 0); - /* Read back to be sure PCI write is done */ - grub_uhci_readreg16(u, GRUB_UHCI_REG_USBCMD); - - /* Reserve a page for the frame list. */ - u->framelist_chunk = grub_memalign_dma32 (4096, 4096); - if (! u->framelist_chunk) - goto fail; - u->framelist_virt = grub_dma_get_virt (u->framelist_chunk); - u->framelist_phys = grub_dma_get_phys (u->framelist_chunk); - - grub_dprintf ("uhci", - "class=0x%02x 0x%02x interface 0x%02x base=0x%x framelist=%p\n", - class, subclass, interf, u->iobase, u->framelist_virt); - - /* The QH pointer of UHCI is only 32 bits, make sure this - code works on on 64 bits architectures. */ - u->qh_chunk = grub_memalign_dma32 (4096, sizeof(struct grub_uhci_qh) * N_QH); - if (! u->qh_chunk) - goto fail; - u->qh_virt = grub_dma_get_virt (u->qh_chunk); - u->qh_phys = grub_dma_get_phys (u->qh_chunk); - - /* The TD pointer of UHCI is only 32 bits, make sure this - code works on on 64 bits architectures. */ - u->td_chunk = grub_memalign_dma32 (4096, sizeof(struct grub_uhci_td) * N_TD); - if (! u->td_chunk) - goto fail; - u->td_virt = grub_dma_get_virt (u->td_chunk); - u->td_phys = grub_dma_get_phys (u->td_chunk); - - grub_dprintf ("uhci", "QH=%p, TD=%p\n", - u->qh_virt, u->td_virt); - - /* Link all Transfer Descriptors in a list of available Transfer - Descriptors. */ - for (i = 0; i < N_TD; i++) - u->td_virt[i].linkptr = u->td_phys + (i + 1) * sizeof(struct grub_uhci_td); - u->td_virt[N_TD - 2].linkptr = 0; - u->tdfree = u->td_virt; - - /* Setup the frame list pointers. Since no isochronous transfers - are and will be supported, they all point to the (same!) queue - head. */ - fp = u->qh_phys & (~15); - /* Mark this as a queue head. */ - fp |= 2; - for (i = 0; i < 1024; i++) - u->framelist_virt[i] = fp; - /* Program the framelist address into the UHCI controller. */ - grub_uhci_writereg32 (u, GRUB_UHCI_REG_FLBASEADD, u->framelist_phys); - - /* Make the Queue Heads point to each other. */ - for (i = 0; i < N_QH; i++) - { - /* Point to the next QH. */ - u->qh_virt[i].linkptr = ((u->qh_phys - + (i + 1) * sizeof(struct grub_uhci_qh)) - & (~15)); - - /* This is a QH. */ - u->qh_virt[i].linkptr |= GRUB_UHCI_LINK_QUEUE_HEAD; - - /* For the moment, do not point to a Transfer Descriptor. These - are set at transfer time, so just terminate it. */ - u->qh_virt[i].elinkptr = 1; - } - - /* The last Queue Head should terminate. */ - u->qh_virt[N_QH - 1].linkptr = 1; - - /* Enable UHCI again. */ - grub_uhci_writereg16 (u, GRUB_UHCI_REG_USBCMD, - GRUB_UHCI_CMD_RUN_STOP | GRUB_UHCI_CMD_MAXP); - - /* UHCI is initialized and ready for transfers. */ - grub_dprintf ("uhci", "UHCI initialized\n"); - - -#if 0 - { - int i; - for (i = 0; i < 10; i++) - { - grub_uint16_t frnum; - - frnum = grub_uhci_readreg16 (u, 6); - grub_dprintf ("uhci", "Framenum=%d\n", frnum); - grub_millisleep (100); - } - } -#endif - - /* Link to uhci now that initialisation is successful. */ - u->next = uhci; - uhci = u; - - return 0; - - fail: - if (u) - { - grub_dma_free (u->qh_chunk); - grub_dma_free (u->framelist_chunk); - } - grub_free (u); - - return 1; -} - -static void -grub_uhci_inithw (void) -{ - grub_pci_iterate (grub_uhci_pci_iter, NULL); -} - -static grub_uhci_td_t -grub_alloc_td (struct grub_uhci *u) -{ - grub_uhci_td_t ret; - - /* Check if there is a Transfer Descriptor available. */ - if (! u->tdfree) - return NULL; - - ret = u->tdfree; - u->tdfree = grub_dma_phys2virt (u->tdfree->linkptr, u->td_chunk); - - return ret; -} - -static void -grub_free_td (struct grub_uhci *u, grub_uhci_td_t td) -{ - td->linkptr = grub_dma_virt2phys (u->tdfree, u->td_chunk); - u->tdfree = td; -} - -static void -grub_free_queue (struct grub_uhci *u, grub_uhci_qh_t qh, grub_uhci_td_t td, - grub_usb_transfer_t transfer, grub_size_t *actual) -{ - int i; /* Index of TD in transfer */ - - u->qh_busy[qh - u->qh_virt] = 0; - - *actual = 0; - - /* Free the TDs in this queue and set last_trans. */ - for (i=0; td; i++) - { - grub_uhci_td_t tdprev; - - grub_dprintf ("uhci", "Freeing %p\n", td); - /* Check state of TD and possibly set last_trans */ - if (transfer && (td->linkptr & 1)) - transfer->last_trans = i; - - *actual += (td->ctrl_status + 1) & 0x7ff; - - /* Unlink the queue. */ - tdprev = td; - if (!td->linkptr2) - td = 0; - else - td = grub_dma_phys2virt (td->linkptr2, u->td_chunk); - - /* Free the TD. */ - grub_free_td (u, tdprev); - } -} - -static grub_uhci_qh_t -grub_alloc_qh (struct grub_uhci *u, - grub_transaction_type_t tr __attribute__((unused))) -{ - int i; - grub_uhci_qh_t qh; - - /* Look for a Queue Head for this transfer. Skip the first QH if - this is a Interrupt Transfer. */ -#if 0 - if (tr == GRUB_USB_TRANSACTION_TYPE_INTERRUPT) - i = 0; - else -#endif - i = 1; - - for (; i < N_QH; i++) - { - if (!u->qh_busy[i]) - break; - } - qh = &u->qh_virt[i]; - if (i == N_QH) - { - grub_error (GRUB_ERR_OUT_OF_MEMORY, - "no free queue heads available"); - return NULL; - } - - u->qh_busy[qh - u->qh_virt] = 1; - - return qh; -} - -static grub_uhci_td_t -grub_uhci_transaction (struct grub_uhci *u, unsigned int endp, - grub_transfer_type_t type, unsigned int addr, - unsigned int toggle, grub_size_t size, - grub_uint32_t data, grub_usb_speed_t speed) -{ - grub_uhci_td_t td; - static const unsigned int tf[] = { 0x69, 0xE1, 0x2D }; - - /* XXX: Check if data is <4GB. If it isn't, just copy stuff around. - This is only relevant for 64 bits architectures. */ - - /* Grab a free Transfer Descriptor and initialize it. */ - td = grub_alloc_td (u); - if (! td) - { - grub_error (GRUB_ERR_OUT_OF_MEMORY, - "no transfer descriptors available for UHCI transfer"); - return 0; - } - - grub_dprintf ("uhci", - "transaction: endp=%d, type=%d, addr=%d, toggle=%d, size=%lu data=0x%x td=%p\n", - endp, type, addr, toggle, (unsigned long) size, data, td); - - /* Don't point to any TD, just terminate. */ - td->linkptr = 1; - - /* Active! Only retry a transfer 3 times. */ - td->ctrl_status = (1 << 23) | (3 << 27) | - ((speed == GRUB_USB_SPEED_LOW) ? (1 << 26) : 0); - - /* If zero bytes are transmitted, size is 0x7FF. Otherwise size is - size-1. */ - if (size == 0) - size = 0x7FF; - else - size = size - 1; - - /* Setup whatever is required for the token packet. */ - td->token = ((size << 21) | (toggle << 19) | (endp << 15) - | (addr << 8) | tf[type]); - - td->buffer = data; - - return td; -} - -struct grub_uhci_transfer_controller_data -{ - grub_uhci_qh_t qh; - grub_uhci_td_t td_first; -}; - -static grub_usb_err_t -grub_uhci_setup_transfer (grub_usb_controller_t dev, - grub_usb_transfer_t transfer) -{ - struct grub_uhci *u = (struct grub_uhci *) dev->data; - grub_uhci_td_t td; - grub_uhci_td_t td_prev = NULL; - int i; - struct grub_uhci_transfer_controller_data *cdata; - - cdata = grub_malloc (sizeof (*cdata)); - if (!cdata) - return GRUB_USB_ERR_INTERNAL; - - cdata->td_first = NULL; - - /* Allocate a queue head for the transfer queue. */ - cdata->qh = grub_alloc_qh (u, GRUB_USB_TRANSACTION_TYPE_CONTROL); - if (! cdata->qh) - { - grub_free (cdata); - return GRUB_USB_ERR_INTERNAL; - } - - grub_dprintf ("uhci", "transfer, iobase:%08x\n", u->iobase); - - for (i = 0; i < transfer->transcnt; i++) - { - grub_usb_transaction_t tr = &transfer->transactions[i]; - - td = grub_uhci_transaction (u, transfer->endpoint & 15, tr->pid, - transfer->devaddr, tr->toggle, - tr->size, tr->data, - transfer->dev->speed); - if (! td) - { - grub_size_t actual = 0; - /* Terminate and free. */ - if (td_prev) - { - td_prev->linkptr2 = 0; - td_prev->linkptr = 1; - } - - if (cdata->td_first) - grub_free_queue (u, cdata->qh, cdata->td_first, NULL, &actual); - - grub_free (cdata); - return GRUB_USB_ERR_INTERNAL; - } - - if (! cdata->td_first) - cdata->td_first = td; - else - { - td_prev->linkptr2 = grub_dma_virt2phys (td, u->td_chunk); - td_prev->linkptr = grub_dma_virt2phys (td, u->td_chunk); - td_prev->linkptr |= 4; - } - td_prev = td; - } - td_prev->linkptr2 = 0; - td_prev->linkptr = 1; - - grub_dprintf ("uhci", "setup transaction %d\n", transfer->type); - - /* Link it into the queue and terminate. Now the transaction can - take place. */ - cdata->qh->elinkptr = grub_dma_virt2phys (cdata->td_first, u->td_chunk); - - grub_dprintf ("uhci", "initiate transaction\n"); - - transfer->controller_data = cdata; - - return GRUB_USB_ERR_NONE; -} - -static grub_usb_err_t -grub_uhci_check_transfer (grub_usb_controller_t dev, - grub_usb_transfer_t transfer, - grub_size_t *actual) -{ - struct grub_uhci *u = (struct grub_uhci *) dev->data; - grub_uhci_td_t errtd; - struct grub_uhci_transfer_controller_data *cdata = transfer->controller_data; - - *actual = 0; - - if (cdata->qh->elinkptr & ~0x0f) - errtd = grub_dma_phys2virt (cdata->qh->elinkptr & ~0x0f, u->qh_chunk); - else - errtd = 0; - - if (errtd) - { - grub_dprintf ("uhci", ">t status=0x%02x data=0x%02x td=%p, %x\n", - errtd->ctrl_status, errtd->buffer & (~15), errtd, - cdata->qh->elinkptr); - } - - /* Check if the transaction completed. */ - if (cdata->qh->elinkptr & 1) - { - grub_dprintf ("uhci", "transaction complete\n"); - - /* Place the QH back in the free list and deallocate the associated - TDs. */ - cdata->qh->elinkptr = 1; - grub_free_queue (u, cdata->qh, cdata->td_first, transfer, actual); - grub_free (cdata); - return GRUB_USB_ERR_NONE; - } - - if (errtd && !(errtd->ctrl_status & (1 << 23))) - { - grub_usb_err_t err = GRUB_USB_ERR_NONE; - - /* Check if the endpoint is stalled. */ - if (errtd->ctrl_status & (1 << 22)) - err = GRUB_USB_ERR_STALL; - - /* Check if an error related to the data buffer occurred. */ - else if (errtd->ctrl_status & (1 << 21)) - err = GRUB_USB_ERR_DATA; - - /* Check if a babble error occurred. */ - else if (errtd->ctrl_status & (1 << 20)) - err = GRUB_USB_ERR_BABBLE; - - /* Check if a NAK occurred. */ - else if (errtd->ctrl_status & (1 << 19)) - err = GRUB_USB_ERR_NAK; - - /* Check if a timeout occurred. */ - else if (errtd->ctrl_status & (1 << 18)) - err = GRUB_USB_ERR_TIMEOUT; - - /* Check if a bitstuff error occurred. */ - else if (errtd->ctrl_status & (1 << 17)) - err = GRUB_USB_ERR_BITSTUFF; - - if (err) - { - grub_dprintf ("uhci", "transaction failed\n"); - - /* Place the QH back in the free list and deallocate the associated - TDs. */ - cdata->qh->elinkptr = 1; - grub_free_queue (u, cdata->qh, cdata->td_first, transfer, actual); - grub_free (cdata); - - return err; - } - } - - /* Fall through, no errors occurred, so the QH might be - updated. */ - grub_dprintf ("uhci", "transaction fallthrough\n"); - - return GRUB_USB_ERR_WAIT; -} - -static grub_usb_err_t -grub_uhci_cancel_transfer (grub_usb_controller_t dev, - grub_usb_transfer_t transfer) -{ - struct grub_uhci *u = (struct grub_uhci *) dev->data; - grub_size_t actual; - struct grub_uhci_transfer_controller_data *cdata = transfer->controller_data; - - grub_dprintf ("uhci", "transaction cancel\n"); - - /* Place the QH back in the free list and deallocate the associated - TDs. */ - cdata->qh->elinkptr = 1; - grub_free_queue (u, cdata->qh, cdata->td_first, transfer, &actual); - grub_free (cdata); - - return GRUB_USB_ERR_NONE; -} - -static int -grub_uhci_iterate (grub_usb_controller_iterate_hook_t hook, void *hook_data) -{ - struct grub_uhci *u; - struct grub_usb_controller dev; - - for (u = uhci; u; u = u->next) - { - dev.data = u; - if (hook (&dev, hook_data)) - return 1; - } - - return 0; -} - -static grub_usb_err_t -grub_uhci_portstatus (grub_usb_controller_t dev, - unsigned int port, unsigned int enable) -{ - struct grub_uhci *u = (struct grub_uhci *) dev->data; - int reg; - unsigned int status; - grub_uint64_t endtime; - - grub_dprintf ("uhci", "portstatus, iobase:%08x\n", u->iobase); - - grub_dprintf ("uhci", "enable=%d port=%d\n", enable, port); - - if (port == 0) - reg = GRUB_UHCI_REG_PORTSC1; - else if (port == 1) - reg = GRUB_UHCI_REG_PORTSC2; - else - return GRUB_USB_ERR_INTERNAL; - - status = grub_uhci_readreg16 (u, reg); - grub_dprintf ("uhci", "detect=0x%02x\n", status); - - if (!enable) /* We don't need reset port */ - { - /* Disable the port. */ - grub_uhci_writereg16 (u, reg, 0 << 2); - grub_dprintf ("uhci", "waiting for the port to be disabled\n"); - endtime = grub_get_time_ms () + 1000; - while ((grub_uhci_readreg16 (u, reg) & (1 << 2))) - if (grub_get_time_ms () > endtime) - return GRUB_USB_ERR_TIMEOUT; - - status = grub_uhci_readreg16 (u, reg); - grub_dprintf ("uhci", ">3detect=0x%02x\n", status); - return GRUB_USB_ERR_NONE; - } - - /* Reset the port. */ - status = grub_uhci_readreg16 (u, reg) & ~GRUB_UHCI_PORTSC_RWC; - grub_uhci_writereg16 (u, reg, status | (1 << 9)); - grub_uhci_readreg16 (u, reg); /* Ensure it is writen... */ - - /* Wait for the reset to complete. XXX: How long exactly? */ - grub_millisleep (50); /* For root hub should be nominaly 50ms */ - status = grub_uhci_readreg16 (u, reg) & ~GRUB_UHCI_PORTSC_RWC; - grub_uhci_writereg16 (u, reg, status & ~(1 << 9)); - grub_uhci_readreg16 (u, reg); /* Ensure it is writen... */ - - /* Note: some debug prints were removed because they affected reset/enable timing. */ - - grub_millisleep (1); /* Probably not needed at all or only few microsecs. */ - - /* Reset bits Connect & Enable Status Change */ - status = grub_uhci_readreg16 (u, reg) & ~GRUB_UHCI_PORTSC_RWC; - grub_uhci_writereg16 (u, reg, status | (1 << 3) | GRUB_UHCI_REG_PORTSC_CONNECT_CHANGED); - grub_uhci_readreg16 (u, reg); /* Ensure it is writen... */ - - /* Enable the port. */ - status = grub_uhci_readreg16 (u, reg) & ~GRUB_UHCI_PORTSC_RWC; - grub_uhci_writereg16 (u, reg, status | (1 << 2)); - grub_uhci_readreg16 (u, reg); /* Ensure it is writen... */ - - endtime = grub_get_time_ms () + 1000; - while (! ((status = grub_uhci_readreg16 (u, reg)) & (1 << 2))) - if (grub_get_time_ms () > endtime) - return GRUB_USB_ERR_TIMEOUT; - - /* Reset recovery time */ - grub_millisleep (10); - - /* Read final port status */ - status = grub_uhci_readreg16 (u, reg); - grub_dprintf ("uhci", ">3detect=0x%02x\n", status); - - - return GRUB_USB_ERR_NONE; -} - -static grub_usb_speed_t -grub_uhci_detect_dev (grub_usb_controller_t dev, int port, int *changed) -{ - struct grub_uhci *u = (struct grub_uhci *) dev->data; - int reg; - unsigned int status; - - grub_dprintf ("uhci", "detect_dev, iobase:%08x\n", u->iobase); - - if (port == 0) - reg = GRUB_UHCI_REG_PORTSC1; - else if (port == 1) - reg = GRUB_UHCI_REG_PORTSC2; - else - return GRUB_USB_SPEED_NONE; - - status = grub_uhci_readreg16 (u, reg); - - grub_dprintf ("uhci", "detect=0x%02x port=%d\n", status, port); - - /* Connect Status Change bit - it detects change of connection */ - if (status & GRUB_UHCI_DETECT_CHANGED) - { - *changed = 1; - /* Reset bit Connect Status Change */ - grub_uhci_writereg16 (u, reg, (status & GRUB_UHCI_REG_PORTSC_RW) - | GRUB_UHCI_REG_PORTSC_CONNECT_CHANGED); - } - else - *changed = 0; - - if (! (status & GRUB_UHCI_DETECT_HAVE_DEVICE)) - return GRUB_USB_SPEED_NONE; - else if (status & GRUB_UHCI_DETECT_LOW_SPEED) - return GRUB_USB_SPEED_LOW; - else - return GRUB_USB_SPEED_FULL; -} - -static int -grub_uhci_hubports (grub_usb_controller_t dev __attribute__((unused))) -{ - /* The root hub has exactly two ports. */ - return 2; -} - - -static struct grub_usb_controller_dev usb_controller = -{ - .name = "uhci", - .iterate = grub_uhci_iterate, - .setup_transfer = grub_uhci_setup_transfer, - .check_transfer = grub_uhci_check_transfer, - .cancel_transfer = grub_uhci_cancel_transfer, - .hubports = grub_uhci_hubports, - .portstatus = grub_uhci_portstatus, - .detect_dev = grub_uhci_detect_dev, - /* estimated max. count of TDs for one bulk transfer */ - .max_bulk_tds = N_TD * 3 / 4 -}; - -GRUB_MOD_INIT(uhci) -{ - grub_stop_disk_firmware (); - - grub_uhci_inithw (); - grub_usb_controller_dev_register (&usb_controller); - grub_dprintf ("uhci", "registered\n"); -} - -GRUB_MOD_FINI(uhci) -{ - struct grub_uhci *u; - - /* Disable all UHCI controllers. */ - for (u = uhci; u; u = u->next) - grub_uhci_writereg16 (u, GRUB_UHCI_REG_USBCMD, 0); - - /* Unregister the controller. */ - grub_usb_controller_dev_unregister (&usb_controller); -} diff --git a/thirdparty/grub-2.04/grub-core/bus/usb/usb.c b/thirdparty/grub-2.04/grub-core/bus/usb/usb.c deleted file mode 100644 index 8da5e4c74..000000000 --- a/thirdparty/grub-2.04/grub-core/bus/usb/usb.c +++ /dev/null @@ -1,337 +0,0 @@ -/* usb.c - Generic USB interfaces. */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2008 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -static struct grub_usb_attach_desc *attach_hooks; - -#if 0 -/* Context for grub_usb_controller_iterate. */ -struct grub_usb_controller_iterate_ctx -{ - grub_usb_controller_iterate_hook_t hook; - void *hook_data; - grub_usb_controller_dev_t p; -}; - -/* Helper for grub_usb_controller_iterate. */ -static int -grub_usb_controller_iterate_iter (grub_usb_controller_t dev, void *data) -{ - struct grub_usb_controller_iterate_ctx *ctx = data; - - dev->dev = ctx->p; - if (ctx->hook (dev, ctx->hook_data)) - return 1; - return 0; -} - -int -grub_usb_controller_iterate (grub_usb_controller_iterate_hook_t hook, - void *hook_data) -{ - struct grub_usb_controller_iterate_ctx ctx = { - .hook = hook, - .hook_data = hook_data - }; - - /* Iterate over all controller drivers. */ - for (ctx.p = grub_usb_list; ctx.p; ctx.p = ctx.p->next) - { - /* Iterate over the busses of the controllers. XXX: Actually, a - hub driver should do this. */ - if (ctx.p->iterate (grub_usb_controller_iterate_iter, &ctx)) - return 1; - } - - return 0; -} -#endif - - -grub_usb_err_t -grub_usb_clear_halt (grub_usb_device_t dev, int endpoint) -{ - dev->toggle[endpoint] = 0; - return grub_usb_control_msg (dev, (GRUB_USB_REQTYPE_OUT - | GRUB_USB_REQTYPE_STANDARD - | GRUB_USB_REQTYPE_TARGET_ENDP), - GRUB_USB_REQ_CLEAR_FEATURE, - GRUB_USB_FEATURE_ENDP_HALT, - endpoint, 0, 0); -} - -grub_usb_err_t -grub_usb_set_configuration (grub_usb_device_t dev, int configuration) -{ - grub_memset (dev->toggle, 0, sizeof (dev->toggle)); - - return grub_usb_control_msg (dev, (GRUB_USB_REQTYPE_OUT - | GRUB_USB_REQTYPE_STANDARD - | GRUB_USB_REQTYPE_TARGET_DEV), - GRUB_USB_REQ_SET_CONFIGURATION, configuration, - 0, 0, NULL); -} - -grub_usb_err_t -grub_usb_get_descriptor (grub_usb_device_t dev, - grub_uint8_t type, grub_uint8_t index, - grub_size_t size, char *data) -{ - return grub_usb_control_msg (dev, (GRUB_USB_REQTYPE_IN - | GRUB_USB_REQTYPE_STANDARD - | GRUB_USB_REQTYPE_TARGET_DEV), - GRUB_USB_REQ_GET_DESCRIPTOR, - (type << 8) | index, - 0, size, data); -} - -grub_usb_err_t -grub_usb_device_initialize (grub_usb_device_t dev) -{ - struct grub_usb_desc_device *descdev; - struct grub_usb_desc_config config; - grub_usb_err_t err; - int i; - - /* First we have to read first 8 bytes only and determine - * max. size of packet */ - dev->descdev.maxsize0 = 0; /* invalidating, for safety only, can be removed if it is sure it is zero here */ - err = grub_usb_get_descriptor (dev, GRUB_USB_DESCRIPTOR_DEVICE, - 0, 8, (char *) &dev->descdev); - if (err) - return err; - - /* Now we have valid value in dev->descdev.maxsize0, - * so we can read whole device descriptor */ - err = grub_usb_get_descriptor (dev, GRUB_USB_DESCRIPTOR_DEVICE, - 0, sizeof (struct grub_usb_desc_device), - (char *) &dev->descdev); - if (err) - return err; - descdev = &dev->descdev; - - for (i = 0; i < 8; i++) - dev->config[i].descconf = NULL; - - if (descdev->configcnt == 0) - { - err = GRUB_USB_ERR_BADDEVICE; - goto fail; - } - - for (i = 0; i < descdev->configcnt; i++) - { - int pos; - int currif; - char *data; - struct grub_usb_desc *desc; - - /* First just read the first 4 bytes of the configuration - descriptor, after that it is known how many bytes really have - to be read. */ - err = grub_usb_get_descriptor (dev, GRUB_USB_DESCRIPTOR_CONFIG, i, 4, - (char *) &config); - - data = grub_malloc (config.totallen); - if (! data) - { - err = GRUB_USB_ERR_INTERNAL; - goto fail; - } - - dev->config[i].descconf = (struct grub_usb_desc_config *) data; - err = grub_usb_get_descriptor (dev, GRUB_USB_DESCRIPTOR_CONFIG, i, - config.totallen, data); - if (err) - goto fail; - - /* Skip the configuration descriptor. */ - pos = dev->config[i].descconf->length; - - /* Read all interfaces. */ - for (currif = 0; currif < dev->config[i].descconf->numif; currif++) - { - while (pos < config.totallen) - { - desc = (struct grub_usb_desc *)&data[pos]; - if (desc->type == GRUB_USB_DESCRIPTOR_INTERFACE) - break; - if (!desc->length) - { - err = GRUB_USB_ERR_BADDEVICE; - goto fail; - } - pos += desc->length; - } - - dev->config[i].interf[currif].descif - = (struct grub_usb_desc_if *) &data[pos]; - pos += dev->config[i].interf[currif].descif->length; - - while (pos < config.totallen) - { - desc = (struct grub_usb_desc *)&data[pos]; - if (desc->type == GRUB_USB_DESCRIPTOR_ENDPOINT) - break; - if (!desc->length) - { - err = GRUB_USB_ERR_BADDEVICE; - goto fail; - } - pos += desc->length; - } - - /* Point to the first endpoint. */ - dev->config[i].interf[currif].descendp - = (struct grub_usb_desc_endp *) &data[pos]; - pos += (sizeof (struct grub_usb_desc_endp) - * dev->config[i].interf[currif].descif->endpointcnt); - } - } - - return GRUB_USB_ERR_NONE; - - fail: - - for (i = 0; i < 8; i++) - grub_free (dev->config[i].descconf); - - return err; -} - -void grub_usb_device_attach (grub_usb_device_t dev) -{ - int i; - - /* XXX: Just check configuration 0 for now. */ - for (i = 0; i < dev->config[0].descconf->numif; i++) - { - struct grub_usb_desc_if *interf; - struct grub_usb_attach_desc *desc; - - interf = dev->config[0].interf[i].descif; - - grub_dprintf ("usb", "iterate: interf=%d, class=%d, subclass=%d, protocol=%d\n", - i, interf->class, interf->subclass, interf->protocol); - - if (dev->config[0].interf[i].attached) - continue; - - for (desc = attach_hooks; desc; desc = desc->next) - if (interf->class == desc->class) - { - grub_boot_time ("Probing USB device driver class %x", desc->class); - if (desc->hook (dev, 0, i)) - dev->config[0].interf[i].attached = 1; - grub_boot_time ("Probed USB device driver class %x", desc->class); - } - - if (dev->config[0].interf[i].attached) - continue; - - switch (interf->class) - { - case GRUB_USB_CLASS_MASS_STORAGE: - grub_dl_load ("usbms"); - grub_print_error (); - break; - case GRUB_USB_CLASS_HID: - grub_dl_load ("usb_keyboard"); - grub_print_error (); - break; - case 0xff: - /* FIXME: don't load useless modules. */ - grub_dl_load ("usbserial_ftdi"); - grub_print_error (); - grub_dl_load ("usbserial_pl2303"); - grub_print_error (); - grub_dl_load ("usbserial_usbdebug"); - grub_print_error (); - break; - } - } -} - -/* Helper for grub_usb_register_attach_hook_class. */ -static int -grub_usb_register_attach_hook_class_iter (grub_usb_device_t usbdev, void *data) -{ - struct grub_usb_attach_desc *desc = data; - struct grub_usb_desc_device *descdev = &usbdev->descdev; - int i; - - if (descdev->class != 0 || descdev->subclass || descdev->protocol != 0 - || descdev->configcnt == 0) - return 0; - - /* XXX: Just check configuration 0 for now. */ - for (i = 0; i < usbdev->config[0].descconf->numif; i++) - { - struct grub_usb_desc_if *interf; - - interf = usbdev->config[0].interf[i].descif; - - grub_dprintf ("usb", "iterate: interf=%d, class=%d, subclass=%d, protocol=%d\n", - i, interf->class, interf->subclass, interf->protocol); - - if (usbdev->config[0].interf[i].attached) - continue; - - if (interf->class != desc->class) - continue; - if (desc->hook (usbdev, 0, i)) - usbdev->config[0].interf[i].attached = 1; - } - - return 0; -} - -void -grub_usb_register_attach_hook_class (struct grub_usb_attach_desc *desc) -{ - desc->next = attach_hooks; - attach_hooks = desc; - - grub_usb_iterate (grub_usb_register_attach_hook_class_iter, desc); -} - -void -grub_usb_unregister_attach_hook_class (struct grub_usb_attach_desc *desc) -{ - grub_list_remove (GRUB_AS_LIST (desc)); -} - - -GRUB_MOD_INIT(usb) -{ - grub_term_poll_usb = grub_usb_poll_devices; -} - -GRUB_MOD_FINI(usb) -{ - grub_term_poll_usb = NULL; -} diff --git a/thirdparty/grub-2.04/grub-core/bus/usb/usbhub.c b/thirdparty/grub-2.04/grub-core/bus/usb/usbhub.c deleted file mode 100644 index 34a7ff1b5..000000000 --- a/thirdparty/grub-2.04/grub-core/bus/usb/usbhub.c +++ /dev/null @@ -1,756 +0,0 @@ -/* usb.c - USB Hub Support. */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2008 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include - -#define GRUB_USBHUB_MAX_DEVICES 128 - -/* USB Supports 127 devices, with device 0 as special case. */ -static struct grub_usb_device *grub_usb_devs[GRUB_USBHUB_MAX_DEVICES]; - -static int rescan = 0; -static int npending = 0; - -struct grub_usb_hub -{ - struct grub_usb_hub *next; - grub_usb_controller_t controller; - int nports; - struct grub_usb_device **devices; - struct grub_usb_hub_port *ports; - grub_usb_device_t dev; -}; - -static struct grub_usb_hub *hubs; -static grub_usb_controller_dev_t grub_usb_list; - -/* Add a device that currently has device number 0 and resides on - CONTROLLER, the Hub reported that the device speed is SPEED. */ -static grub_usb_device_t -grub_usb_hub_add_dev (grub_usb_controller_t controller, - grub_usb_speed_t speed, - int split_hubport, int split_hubaddr) -{ - grub_usb_device_t dev; - int i; - grub_usb_err_t err; - - grub_boot_time ("Attaching USB device"); - - dev = grub_zalloc (sizeof (struct grub_usb_device)); - if (! dev) - return NULL; - - dev->controller = *controller; - dev->speed = speed; - dev->split_hubport = split_hubport; - dev->split_hubaddr = split_hubaddr; - - err = grub_usb_device_initialize (dev); - if (err) - { - grub_free (dev); - return NULL; - } - - /* Assign a new address to the device. */ - for (i = 1; i < GRUB_USBHUB_MAX_DEVICES; i++) - { - if (! grub_usb_devs[i]) - break; - } - if (i == GRUB_USBHUB_MAX_DEVICES) - { - grub_error (GRUB_ERR_IO, "can't assign address to USB device"); - for (i = 0; i < 8; i++) - grub_free (dev->config[i].descconf); - grub_free (dev); - return NULL; - } - - err = grub_usb_control_msg (dev, - (GRUB_USB_REQTYPE_OUT - | GRUB_USB_REQTYPE_STANDARD - | GRUB_USB_REQTYPE_TARGET_DEV), - GRUB_USB_REQ_SET_ADDRESS, - i, 0, 0, NULL); - if (err) - { - for (i = 0; i < 8; i++) - grub_free (dev->config[i].descconf); - grub_free (dev); - return NULL; - } - - dev->addr = i; - dev->initialized = 1; - grub_usb_devs[i] = dev; - - grub_dprintf ("usb", "Added new usb device: %p, addr=%d\n", - dev, i); - grub_dprintf ("usb", "speed=%d, split_hubport=%d, split_hubaddr=%d\n", - speed, split_hubport, split_hubaddr); - - /* Wait "recovery interval", spec. says 2ms */ - grub_millisleep (2); - - grub_boot_time ("Probing USB device driver"); - - grub_usb_device_attach (dev); - - grub_boot_time ("Attached USB device"); - - return dev; -} - - -static grub_usb_err_t -grub_usb_add_hub (grub_usb_device_t dev) -{ - struct grub_usb_usb_hubdesc hubdesc; - grub_usb_err_t err; - int i; - - err = grub_usb_control_msg (dev, (GRUB_USB_REQTYPE_IN - | GRUB_USB_REQTYPE_CLASS - | GRUB_USB_REQTYPE_TARGET_DEV), - GRUB_USB_REQ_GET_DESCRIPTOR, - (GRUB_USB_DESCRIPTOR_HUB << 8) | 0, - 0, sizeof (hubdesc), (char *) &hubdesc); - if (err) - return err; - grub_dprintf ("usb", "Hub descriptor:\n\t\t len:%d, typ:0x%02x, cnt:%d, char:0x%02x, pwg:%d, curr:%d\n", - hubdesc.length, hubdesc.type, hubdesc.portcnt, - hubdesc.characteristics, hubdesc.pwdgood, - hubdesc.current); - - /* Activate the first configuration. Hubs should have only one conf. */ - grub_dprintf ("usb", "Hub set configuration\n"); - grub_usb_set_configuration (dev, 1); - - dev->nports = hubdesc.portcnt; - dev->children = grub_zalloc (hubdesc.portcnt * sizeof (dev->children[0])); - dev->ports = grub_zalloc (dev->nports * sizeof (dev->ports[0])); - if (!dev->children || !dev->ports) - { - grub_free (dev->children); - grub_free (dev->ports); - return GRUB_USB_ERR_INTERNAL; - } - - /* Power on all Hub ports. */ - for (i = 1; i <= hubdesc.portcnt; i++) - { - grub_dprintf ("usb", "Power on - port %d\n", i); - /* Power on the port and wait for possible device connect */ - grub_usb_control_msg (dev, (GRUB_USB_REQTYPE_OUT - | GRUB_USB_REQTYPE_CLASS - | GRUB_USB_REQTYPE_TARGET_OTHER), - GRUB_USB_REQ_SET_FEATURE, - GRUB_USB_HUB_FEATURE_PORT_POWER, - i, 0, NULL); - } - - /* Rest will be done on next usb poll. */ - for (i = 0; i < dev->config[0].interf[0].descif->endpointcnt; - i++) - { - struct grub_usb_desc_endp *endp = NULL; - endp = &dev->config[0].interf[0].descendp[i]; - - if ((endp->endp_addr & 128) && grub_usb_get_ep_type(endp) - == GRUB_USB_EP_INTERRUPT) - { - grub_size_t len; - dev->hub_endpoint = endp; - len = endp->maxpacket; - if (len > sizeof (dev->statuschange)) - len = sizeof (dev->statuschange); - dev->hub_transfer - = grub_usb_bulk_read_background (dev, endp, len, - (char *) &dev->statuschange); - break; - } - } - - rescan = 1; - - return GRUB_USB_ERR_NONE; -} - -static void -attach_root_port (struct grub_usb_hub *hub, int portno, - grub_usb_speed_t speed) -{ - grub_usb_device_t dev; - grub_usb_err_t err; - - grub_boot_time ("After detect_dev"); - - /* Enable the port. */ - err = hub->controller->dev->portstatus (hub->controller, portno, 1); - if (err) - return; - hub->controller->dev->pending_reset = grub_get_time_ms () + 5000; - npending++; - - grub_millisleep (10); - - grub_boot_time ("Port enabled"); - - /* Enable the port and create a device. */ - /* High speed device needs not transaction translation - and full/low speed device cannot be connected to EHCI root hub - and full/low speed device connected to OHCI/UHCI needs not - transaction translation - e.g. hubport and hubaddr should be - always none (zero) for any device connected to any root hub. */ - dev = grub_usb_hub_add_dev (hub->controller, speed, 0, 0); - hub->controller->dev->pending_reset = 0; - npending--; - if (! dev) - return; - - hub->devices[portno] = dev; - - /* If the device is a Hub, scan it for more devices. */ - if (dev->descdev.class == 0x09) - grub_usb_add_hub (dev); - - grub_boot_time ("Attached root port"); -} - -/* Iterate over all controllers found by the driver. */ -static int -grub_usb_controller_dev_register_iter (grub_usb_controller_t controller, void *data) -{ - grub_usb_controller_dev_t usb = data; - struct grub_usb_hub *hub; - - controller->dev = usb; - - grub_boot_time ("Registering USB root hub"); - - hub = grub_malloc (sizeof (*hub)); - if (!hub) - return GRUB_USB_ERR_INTERNAL; - - hub->next = hubs; - hubs = hub; - hub->controller = grub_malloc (sizeof (*controller)); - if (!hub->controller) - { - grub_free (hub); - return GRUB_USB_ERR_INTERNAL; - } - - grub_memcpy (hub->controller, controller, sizeof (*controller)); - hub->dev = 0; - - /* Query the number of ports the root Hub has. */ - hub->nports = controller->dev->hubports (controller); - hub->devices = grub_zalloc (sizeof (hub->devices[0]) * hub->nports); - hub->ports = grub_zalloc (sizeof (hub->ports[0]) * hub->nports); - if (!hub->devices || !hub->ports) - { - grub_free (hub->devices); - grub_free (hub->ports); - grub_free (hub->controller); - grub_free (hub); - grub_print_error (); - return 0; - } - - return 0; -} - -void -grub_usb_controller_dev_unregister (grub_usb_controller_dev_t usb) -{ - grub_usb_controller_dev_t *p, q; - - for (p = &grub_usb_list, q = *p; q; p = &(q->next), q = q->next) - if (q == usb) - { - *p = q->next; - break; - } -} - -void -grub_usb_controller_dev_register (grub_usb_controller_dev_t usb) -{ - int portno; - int continue_waiting = 0; - struct grub_usb_hub *hub; - - usb->next = grub_usb_list; - grub_usb_list = usb; - - if (usb->iterate) - usb->iterate (grub_usb_controller_dev_register_iter, usb); - - grub_boot_time ("waiting for stable power on USB root\n"); - - while (1) - { - for (hub = hubs; hub; hub = hub->next) - if (hub->controller->dev == usb) - { - /* Wait for completion of insertion and stable power (USB spec.) - * Should be at least 100ms, some devices requires more... - * There is also another thing - some devices have worse contacts - * and connected signal is unstable for some time - we should handle - * it - but prevent deadlock in case when device is too faulty... */ - for (portno = 0; portno < hub->nports; portno++) - { - grub_usb_speed_t speed; - int changed = 0; - - speed = hub->controller->dev->detect_dev (hub->controller, portno, - &changed); - - if (hub->ports[portno].state == PORT_STATE_NORMAL - && speed != GRUB_USB_SPEED_NONE) - { - hub->ports[portno].soft_limit_time = grub_get_time_ms () + 250; - hub->ports[portno].hard_limit_time = hub->ports[portno].soft_limit_time + 1750; - hub->ports[portno].state = PORT_STATE_WAITING_FOR_STABLE_POWER; - grub_boot_time ("Scheduling stable power wait for port %p:%d", - usb, portno); - continue_waiting++; - continue; - } - - if (hub->ports[portno].state == PORT_STATE_WAITING_FOR_STABLE_POWER - && speed == GRUB_USB_SPEED_NONE) - { - hub->ports[portno].soft_limit_time = grub_get_time_ms () + 250; - continue; - } - if (hub->ports[portno].state == PORT_STATE_WAITING_FOR_STABLE_POWER - && grub_get_time_ms () > hub->ports[portno].soft_limit_time) - { - hub->ports[portno].state = PORT_STATE_STABLE_POWER; - grub_boot_time ("Got stable power wait for port %p:%d", - usb, portno); - continue_waiting--; - continue; - } - if (hub->ports[portno].state == PORT_STATE_WAITING_FOR_STABLE_POWER - && grub_get_time_ms () > hub->ports[portno].hard_limit_time) - { - hub->ports[portno].state = PORT_STATE_FAILED_DEVICE; - continue_waiting--; - continue; - } - } - } - if (!continue_waiting) - break; - grub_millisleep (1); - } - - grub_boot_time ("After the stable power wait on USB root"); - - for (hub = hubs; hub; hub = hub->next) - if (hub->controller->dev == usb) - for (portno = 0; portno < hub->nports; portno++) - if (hub->ports[portno].state == PORT_STATE_STABLE_POWER) - { - grub_usb_speed_t speed; - int changed = 0; - hub->ports[portno].state = PORT_STATE_NORMAL; - speed = hub->controller->dev->detect_dev (hub->controller, portno, &changed); - attach_root_port (hub, portno, speed); - } - - grub_boot_time ("USB root hub registered"); -} - -static void detach_device (grub_usb_device_t dev); - -static void -detach_device (grub_usb_device_t dev) -{ - unsigned i; - int k; - if (!dev) - return; - if (dev->descdev.class == GRUB_USB_CLASS_HUB) - { - if (dev->hub_transfer) - grub_usb_cancel_transfer (dev->hub_transfer); - - for (i = 0; i < dev->nports; i++) - detach_device (dev->children[i]); - grub_free (dev->children); - } - for (i = 0; i < ARRAY_SIZE (dev->config); i++) - if (dev->config[i].descconf) - for (k = 0; k < dev->config[i].descconf->numif; k++) - { - struct grub_usb_interface *inter = &dev->config[i].interf[k]; - if (inter && inter->detach_hook) - inter->detach_hook (dev, i, k); - } - grub_usb_devs[dev->addr] = 0; -} - -static int -wait_power_nonroot_hub (grub_usb_device_t dev) -{ - grub_usb_err_t err; - int continue_waiting = 0; - unsigned i; - - for (i = 1; i <= dev->nports; i++) - if (dev->ports[i - 1].state == PORT_STATE_WAITING_FOR_STABLE_POWER) - { - grub_uint64_t tm; - grub_uint32_t current_status = 0; - - /* Get the port status. */ - err = grub_usb_control_msg (dev, (GRUB_USB_REQTYPE_IN - | GRUB_USB_REQTYPE_CLASS - | GRUB_USB_REQTYPE_TARGET_OTHER), - GRUB_USB_REQ_GET_STATUS, - 0, i, - sizeof (current_status), - (char *) ¤t_status); - if (err) - { - dev->ports[i - 1].state = PORT_STATE_FAILED_DEVICE; - continue; - } - tm = grub_get_time_ms (); - if (!(current_status & GRUB_USB_HUB_STATUS_PORT_CONNECTED)) - dev->ports[i - 1].soft_limit_time = tm + 250; - if (tm >= dev->ports[i - 1].soft_limit_time) - { - if (dev->controller.dev->pending_reset) - continue; - /* Now do reset of port. */ - grub_usb_control_msg (dev, (GRUB_USB_REQTYPE_OUT - | GRUB_USB_REQTYPE_CLASS - | GRUB_USB_REQTYPE_TARGET_OTHER), - GRUB_USB_REQ_SET_FEATURE, - GRUB_USB_HUB_FEATURE_PORT_RESET, - i, 0, 0); - dev->ports[i - 1].state = PORT_STATE_NORMAL; - grub_boot_time ("Resetting port %p:%d", dev, i - 1); - - rescan = 1; - /* We cannot reset more than one device at the same time ! - * Resetting more devices together results in very bad - * situation: more than one device has default address 0 - * at the same time !!! - * Additionaly, we cannot perform another reset - * anywhere on the same OHCI controller until - * we will finish addressing of reseted device ! */ - dev->controller.dev->pending_reset = grub_get_time_ms () + 5000; - npending++; - continue; - } - if (tm >= dev->ports[i - 1].hard_limit_time) - { - dev->ports[i - 1].state = PORT_STATE_FAILED_DEVICE; - continue; - } - continue_waiting = 1; - } - return continue_waiting && dev->controller.dev->pending_reset == 0; -} - -static void -poll_nonroot_hub (grub_usb_device_t dev) -{ - grub_usb_err_t err; - unsigned i; - grub_uint32_t changed; - grub_size_t actual, len; - - if (!dev->hub_transfer) - return; - - err = grub_usb_check_transfer (dev->hub_transfer, &actual); - - if (err == GRUB_USB_ERR_WAIT) - return; - - changed = dev->statuschange; - - len = dev->hub_endpoint->maxpacket; - if (len > sizeof (dev->statuschange)) - len = sizeof (dev->statuschange); - dev->hub_transfer - = grub_usb_bulk_read_background (dev, dev->hub_endpoint, len, - (char *) &dev->statuschange); - - if (err || actual == 0 || changed == 0) - return; - - /* Iterate over the Hub ports. */ - for (i = 1; i <= dev->nports; i++) - { - grub_uint32_t status; - - if (!(changed & (1 << i)) - || dev->ports[i - 1].state == PORT_STATE_WAITING_FOR_STABLE_POWER) - continue; - - /* Get the port status. */ - err = grub_usb_control_msg (dev, (GRUB_USB_REQTYPE_IN - | GRUB_USB_REQTYPE_CLASS - | GRUB_USB_REQTYPE_TARGET_OTHER), - GRUB_USB_REQ_GET_STATUS, - 0, i, sizeof (status), (char *) &status); - - grub_dprintf ("usb", "dev = %p, i = %d, status = %08x\n", - dev, i, status); - - if (err) - continue; - - /* FIXME: properly handle these conditions. */ - if (status & GRUB_USB_HUB_STATUS_C_PORT_ENABLED) - grub_usb_control_msg (dev, (GRUB_USB_REQTYPE_OUT - | GRUB_USB_REQTYPE_CLASS - | GRUB_USB_REQTYPE_TARGET_OTHER), - GRUB_USB_REQ_CLEAR_FEATURE, - GRUB_USB_HUB_FEATURE_C_PORT_ENABLED, i, 0, 0); - - if (status & GRUB_USB_HUB_STATUS_C_PORT_SUSPEND) - grub_usb_control_msg (dev, (GRUB_USB_REQTYPE_OUT - | GRUB_USB_REQTYPE_CLASS - | GRUB_USB_REQTYPE_TARGET_OTHER), - GRUB_USB_REQ_CLEAR_FEATURE, - GRUB_USB_HUB_FEATURE_C_PORT_SUSPEND, i, 0, 0); - - if (status & GRUB_USB_HUB_STATUS_C_PORT_OVERCURRENT) - grub_usb_control_msg (dev, (GRUB_USB_REQTYPE_OUT - | GRUB_USB_REQTYPE_CLASS - | GRUB_USB_REQTYPE_TARGET_OTHER), - GRUB_USB_REQ_CLEAR_FEATURE, - GRUB_USB_HUB_FEATURE_C_PORT_OVERCURRENT, i, 0, 0); - - if (!dev->controller.dev->pending_reset && - (status & GRUB_USB_HUB_STATUS_C_PORT_CONNECTED)) - { - grub_usb_control_msg (dev, (GRUB_USB_REQTYPE_OUT - | GRUB_USB_REQTYPE_CLASS - | GRUB_USB_REQTYPE_TARGET_OTHER), - GRUB_USB_REQ_CLEAR_FEATURE, - GRUB_USB_HUB_FEATURE_C_PORT_CONNECTED, i, 0, 0); - - detach_device (dev->children[i - 1]); - dev->children[i - 1] = NULL; - - /* Connected and status of connection changed ? */ - if (status & GRUB_USB_HUB_STATUS_PORT_CONNECTED) - { - grub_boot_time ("Before the stable power wait portno=%d", i); - /* A device is actually connected to this port. */ - /* Wait for completion of insertion and stable power (USB spec.) - * Should be at least 100ms, some devices requires more... - * There is also another thing - some devices have worse contacts - * and connected signal is unstable for some time - we should handle - * it - but prevent deadlock in case when device is too faulty... */ - dev->ports[i - 1].soft_limit_time = grub_get_time_ms () + 250; - dev->ports[i - 1].hard_limit_time = dev->ports[i - 1].soft_limit_time + 1750; - dev->ports[i - 1].state = PORT_STATE_WAITING_FOR_STABLE_POWER; - grub_boot_time ("Scheduling stable power wait for port %p:%d", - dev, i - 1); - continue; - } - } - - if (status & GRUB_USB_HUB_STATUS_C_PORT_RESET) - { - grub_usb_control_msg (dev, (GRUB_USB_REQTYPE_OUT - | GRUB_USB_REQTYPE_CLASS - | GRUB_USB_REQTYPE_TARGET_OTHER), - GRUB_USB_REQ_CLEAR_FEATURE, - GRUB_USB_HUB_FEATURE_C_PORT_RESET, i, 0, 0); - - grub_boot_time ("Port %d reset", i); - - if (status & GRUB_USB_HUB_STATUS_PORT_CONNECTED) - { - grub_usb_speed_t speed; - grub_usb_device_t next_dev; - int split_hubport = 0; - int split_hubaddr = 0; - - /* Determine the device speed. */ - if (status & GRUB_USB_HUB_STATUS_PORT_LOWSPEED) - speed = GRUB_USB_SPEED_LOW; - else - { - if (status & GRUB_USB_HUB_STATUS_PORT_HIGHSPEED) - speed = GRUB_USB_SPEED_HIGH; - else - speed = GRUB_USB_SPEED_FULL; - } - - /* Wait a recovery time after reset, spec. says 10ms */ - grub_millisleep (10); - - /* Find correct values for SPLIT hubport and hubaddr */ - if (speed == GRUB_USB_SPEED_HIGH) - { - /* HIGH speed device needs not transaction translation */ - split_hubport = 0; - split_hubaddr = 0; - } - else - /* FULL/LOW device needs hub port and hub address - for transaction translation (if connected to EHCI) */ - if (dev->speed == GRUB_USB_SPEED_HIGH) - { - /* This port is the first FULL/LOW speed port - in the chain from root hub. Attached device - should use its port number and hub address */ - split_hubport = i; - split_hubaddr = dev->addr; - } - else - { - /* This port is NOT the first FULL/LOW speed port - in the chain from root hub. Attached device - should use values inherited from some parent - HIGH speed hub - if any. */ - split_hubport = dev->split_hubport; - split_hubaddr = dev->split_hubaddr; - } - - /* Add the device and assign a device address to it. */ - next_dev = grub_usb_hub_add_dev (&dev->controller, speed, - split_hubport, split_hubaddr); - if (dev->controller.dev->pending_reset) - { - dev->controller.dev->pending_reset = 0; - npending--; - } - if (! next_dev) - continue; - - dev->children[i - 1] = next_dev; - - /* If the device is a Hub, scan it for more devices. */ - if (next_dev->descdev.class == 0x09) - grub_usb_add_hub (next_dev); - } - } - } -} - -void -grub_usb_poll_devices (int wait_for_completion) -{ - struct grub_usb_hub *hub; - int i; - - for (hub = hubs; hub; hub = hub->next) - { - /* Do we have to recheck number of ports? */ - /* No, it should be never changed, it should be constant. */ - for (i = 0; i < hub->nports; i++) - { - grub_usb_speed_t speed = GRUB_USB_SPEED_NONE; - int changed = 0; - - if (hub->controller->dev->pending_reset) - { - /* Check for possible timeout */ - if (grub_get_time_ms () > hub->controller->dev->pending_reset) - { - /* Something went wrong, reset device was not - * addressed properly, timeout happened */ - hub->controller->dev->pending_reset = 0; - npending--; - } - } - if (!hub->controller->dev->pending_reset) - speed = hub->controller->dev->detect_dev (hub->controller, - i, &changed); - - if (changed) - { - detach_device (hub->devices[i]); - hub->devices[i] = NULL; - if (speed != GRUB_USB_SPEED_NONE) - attach_root_port (hub, i, speed); - } - } - } - - while (1) - { - rescan = 0; - - /* We should check changes of non-root hubs too. */ - for (i = 0; i < GRUB_USBHUB_MAX_DEVICES; i++) - { - grub_usb_device_t dev = grub_usb_devs[i]; - - if (dev && dev->descdev.class == 0x09) - poll_nonroot_hub (dev); - } - - while (1) - { - int continue_waiting = 0; - for (i = 0; i < GRUB_USBHUB_MAX_DEVICES; i++) - { - grub_usb_device_t dev = grub_usb_devs[i]; - - if (dev && dev->descdev.class == 0x09) - continue_waiting = continue_waiting || wait_power_nonroot_hub (dev); - } - if (!continue_waiting) - break; - grub_millisleep (1); - } - - if (!(rescan || (npending && wait_for_completion))) - break; - grub_millisleep (25); - } -} - -int -grub_usb_iterate (grub_usb_iterate_hook_t hook, void *hook_data) -{ - int i; - - for (i = 0; i < GRUB_USBHUB_MAX_DEVICES; i++) - { - if (grub_usb_devs[i]) - { - if (hook (grub_usb_devs[i], hook_data)) - return 1; - } - } - - return 0; -} diff --git a/thirdparty/grub-2.04/grub-core/bus/usb/usbtrans.c b/thirdparty/grub-2.04/grub-core/bus/usb/usbtrans.c deleted file mode 100644 index 85f081fff..000000000 --- a/thirdparty/grub-2.04/grub-core/bus/usb/usbtrans.c +++ /dev/null @@ -1,462 +0,0 @@ -/* usbtrans.c - USB Transfers and Transactions. */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2008 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include -#include - - -static inline unsigned int -grub_usb_bulk_maxpacket (grub_usb_device_t dev, - struct grub_usb_desc_endp *endpoint) -{ - /* Use the maximum packet size given in the endpoint descriptor. */ - if (dev->initialized && endpoint && (unsigned int) endpoint->maxpacket) - return endpoint->maxpacket; - - return 64; -} - - -static grub_usb_err_t -grub_usb_execute_and_wait_transfer (grub_usb_device_t dev, - grub_usb_transfer_t transfer, - int timeout, grub_size_t *actual) -{ - grub_usb_err_t err; - grub_uint64_t endtime; - - err = dev->controller.dev->setup_transfer (&dev->controller, transfer); - if (err) - return err; - /* endtime moved behind setup transfer to prevent false timeouts - * while debugging... */ - endtime = grub_get_time_ms () + timeout; - while (1) - { - err = dev->controller.dev->check_transfer (&dev->controller, transfer, - actual); - if (!err) - return GRUB_USB_ERR_NONE; - if (err != GRUB_USB_ERR_WAIT) - return err; - if (grub_get_time_ms () > endtime) - { - err = dev->controller.dev->cancel_transfer (&dev->controller, - transfer); - if (err) - return err; - return GRUB_USB_ERR_TIMEOUT; - } - grub_cpu_idle (); - } -} - -grub_usb_err_t -grub_usb_control_msg (grub_usb_device_t dev, - grub_uint8_t reqtype, - grub_uint8_t request, - grub_uint16_t value, - grub_uint16_t index, - grub_size_t size0, char *data_in) -{ - int i; - grub_usb_transfer_t transfer; - int datablocks; - volatile struct grub_usb_packet_setup *setupdata; - grub_uint32_t setupdata_addr; - grub_usb_err_t err; - unsigned int max; - struct grub_pci_dma_chunk *data_chunk, *setupdata_chunk; - volatile char *data; - grub_uint32_t data_addr; - grub_size_t size = size0; - grub_size_t actual; - - /* FIXME: avoid allocation any kind of buffer in a first place. */ - data_chunk = grub_memalign_dma32 (128, size ? : 16); - if (!data_chunk) - return GRUB_USB_ERR_INTERNAL; - data = grub_dma_get_virt (data_chunk); - data_addr = grub_dma_get_phys (data_chunk); - grub_memcpy ((char *) data, data_in, size); - - grub_arch_sync_dma_caches (data, size); - - grub_dprintf ("usb", - "control: reqtype=0x%02x req=0x%02x val=0x%02x idx=0x%02x size=%lu\n", - reqtype, request, value, index, (unsigned long)size); - - /* Create a transfer. */ - transfer = grub_malloc (sizeof (*transfer)); - if (! transfer) - { - grub_dma_free (data_chunk); - return GRUB_USB_ERR_INTERNAL; - } - - setupdata_chunk = grub_memalign_dma32 (32, sizeof (*setupdata)); - if (! setupdata_chunk) - { - grub_free (transfer); - grub_dma_free (data_chunk); - return GRUB_USB_ERR_INTERNAL; - } - - setupdata = grub_dma_get_virt (setupdata_chunk); - setupdata_addr = grub_dma_get_phys (setupdata_chunk); - - /* Determine the maximum packet size. */ - if (dev->descdev.maxsize0) - max = dev->descdev.maxsize0; - else - max = 64; - - grub_dprintf ("usb", "control: transfer = %p, dev = %p\n", transfer, dev); - - datablocks = (size + max - 1) / max; - - /* XXX: Discriminate between different types of control - messages. */ - transfer->transcnt = datablocks + 2; - transfer->size = size; /* XXX ? */ - transfer->endpoint = 0; - transfer->devaddr = dev->addr; - transfer->type = GRUB_USB_TRANSACTION_TYPE_CONTROL; - transfer->max = max; - transfer->dev = dev; - - /* Allocate an array of transfer data structures. */ - transfer->transactions = grub_malloc (transfer->transcnt - * sizeof (struct grub_usb_transfer)); - if (! transfer->transactions) - { - grub_free (transfer); - grub_dma_free (setupdata_chunk); - grub_dma_free (data_chunk); - return GRUB_USB_ERR_INTERNAL; - } - - /* Build a Setup packet. XXX: Endianness. */ - setupdata->reqtype = reqtype; - setupdata->request = request; - setupdata->value = value; - setupdata->index = index; - setupdata->length = size; - grub_arch_sync_dma_caches (setupdata, sizeof (*setupdata)); - - transfer->transactions[0].size = sizeof (*setupdata); - transfer->transactions[0].pid = GRUB_USB_TRANSFER_TYPE_SETUP; - transfer->transactions[0].data = setupdata_addr; - transfer->transactions[0].toggle = 0; - - /* Now the data... XXX: Is this the right way to transfer control - transfers? */ - for (i = 0; i < datablocks; i++) - { - grub_usb_transaction_t tr = &transfer->transactions[i + 1]; - - tr->size = (size > max) ? max : size; - /* Use the right most bit as the data toggle. Simple and - effective. */ - tr->toggle = !(i & 1); - if (reqtype & 128) - tr->pid = GRUB_USB_TRANSFER_TYPE_IN; - else - tr->pid = GRUB_USB_TRANSFER_TYPE_OUT; - tr->data = data_addr + i * max; - tr->preceding = i * max; - size -= max; - } - - /* End with an empty OUT transaction. */ - transfer->transactions[datablocks + 1].size = 0; - transfer->transactions[datablocks + 1].data = 0; - if ((reqtype & 128) && datablocks) - transfer->transactions[datablocks + 1].pid = GRUB_USB_TRANSFER_TYPE_OUT; - else - transfer->transactions[datablocks + 1].pid = GRUB_USB_TRANSFER_TYPE_IN; - - transfer->transactions[datablocks + 1].toggle = 1; - - err = grub_usb_execute_and_wait_transfer (dev, transfer, 1000, &actual); - - grub_dprintf ("usb", "control: err=%d\n", err); - - grub_free (transfer->transactions); - - grub_free (transfer); - grub_dma_free (setupdata_chunk); - - grub_arch_sync_dma_caches (data, size0); - grub_memcpy (data_in, (char *) data, size0); - - grub_dma_free (data_chunk); - - return err; -} - -static grub_usb_transfer_t -grub_usb_bulk_setup_readwrite (grub_usb_device_t dev, - struct grub_usb_desc_endp *endpoint, - grub_size_t size0, char *data_in, - grub_transfer_type_t type) -{ - int i; - grub_usb_transfer_t transfer; - int datablocks; - unsigned int max; - volatile char *data; - grub_uint32_t data_addr; - struct grub_pci_dma_chunk *data_chunk; - grub_size_t size = size0; - int toggle = dev->toggle[endpoint->endp_addr]; - - grub_dprintf ("usb", "bulk: size=0x%02lx type=%d\n", (unsigned long) size, - type); - - /* FIXME: avoid allocation any kind of buffer in a first place. */ - data_chunk = grub_memalign_dma32 (128, size); - if (!data_chunk) - return NULL; - data = grub_dma_get_virt (data_chunk); - data_addr = grub_dma_get_phys (data_chunk); - if (type == GRUB_USB_TRANSFER_TYPE_OUT) - { - grub_memcpy ((char *) data, data_in, size); - grub_arch_sync_dma_caches (data, size); - } - - /* Create a transfer. */ - transfer = grub_malloc (sizeof (struct grub_usb_transfer)); - if (! transfer) - { - grub_dma_free (data_chunk); - return NULL; - } - - max = grub_usb_bulk_maxpacket (dev, endpoint); - - datablocks = ((size + max - 1) / max); - transfer->transcnt = datablocks; - transfer->size = size - 1; - transfer->endpoint = endpoint->endp_addr; - transfer->devaddr = dev->addr; - transfer->type = GRUB_USB_TRANSACTION_TYPE_BULK; - transfer->dir = type; - transfer->max = max; - transfer->dev = dev; - transfer->last_trans = -1; /* Reset index of last processed transaction (TD) */ - transfer->data_chunk = data_chunk; - transfer->data = data_in; - - /* Allocate an array of transfer data structures. */ - transfer->transactions = grub_malloc (transfer->transcnt - * sizeof (struct grub_usb_transfer)); - if (! transfer->transactions) - { - grub_free (transfer); - grub_dma_free (data_chunk); - return NULL; - } - - /* Set up all transfers. */ - for (i = 0; i < datablocks; i++) - { - grub_usb_transaction_t tr = &transfer->transactions[i]; - - tr->size = (size > max) ? max : size; - /* XXX: Use the right most bit as the data toggle. Simple and - effective. */ - tr->toggle = toggle; - toggle = toggle ? 0 : 1; - tr->pid = type; - tr->data = data_addr + i * max; - tr->preceding = i * max; - size -= tr->size; - } - return transfer; -} - -static void -grub_usb_bulk_finish_readwrite (grub_usb_transfer_t transfer) -{ - grub_usb_device_t dev = transfer->dev; - int toggle = dev->toggle[transfer->endpoint]; - - /* We must remember proper toggle value even if some transactions - * were not processed - correct value should be inversion of last - * processed transaction (TD). */ - if (transfer->last_trans >= 0) - toggle = transfer->transactions[transfer->last_trans].toggle ? 0 : 1; - else - toggle = dev->toggle[transfer->endpoint]; /* Nothing done, take original */ - grub_dprintf ("usb", "bulk: toggle=%d\n", toggle); - dev->toggle[transfer->endpoint] = toggle; - - if (transfer->dir == GRUB_USB_TRANSFER_TYPE_IN) - { - grub_arch_sync_dma_caches (grub_dma_get_virt (transfer->data_chunk), - transfer->size + 1); - grub_memcpy (transfer->data, (void *) - grub_dma_get_virt (transfer->data_chunk), - transfer->size + 1); - } - - grub_free (transfer->transactions); - grub_dma_free (transfer->data_chunk); - grub_free (transfer); -} - -static grub_usb_err_t -grub_usb_bulk_readwrite (grub_usb_device_t dev, - struct grub_usb_desc_endp *endpoint, - grub_size_t size0, char *data_in, - grub_transfer_type_t type, int timeout, - grub_size_t *actual) -{ - grub_usb_err_t err; - grub_usb_transfer_t transfer; - - transfer = grub_usb_bulk_setup_readwrite (dev, endpoint, size0, - data_in, type); - if (!transfer) - return GRUB_USB_ERR_INTERNAL; - err = grub_usb_execute_and_wait_transfer (dev, transfer, timeout, actual); - - grub_usb_bulk_finish_readwrite (transfer); - - return err; -} - -static grub_usb_err_t -grub_usb_bulk_readwrite_packetize (grub_usb_device_t dev, - struct grub_usb_desc_endp *endpoint, - grub_transfer_type_t type, - grub_size_t size, char *data) -{ - grub_size_t actual, transferred; - grub_usb_err_t err = GRUB_USB_ERR_NONE; - grub_size_t current_size, position; - grub_size_t max_bulk_transfer_len = MAX_USB_TRANSFER_LEN; - grub_size_t max; - - if (dev->controller.dev->max_bulk_tds) - { - max = grub_usb_bulk_maxpacket (dev, endpoint); - - /* Calculate max. possible length of bulk transfer */ - max_bulk_transfer_len = dev->controller.dev->max_bulk_tds * max; - } - - for (position = 0, transferred = 0; - position < size; position += max_bulk_transfer_len) - { - current_size = size - position; - if (current_size >= max_bulk_transfer_len) - current_size = max_bulk_transfer_len; - err = grub_usb_bulk_readwrite (dev, endpoint, current_size, - &data[position], type, 1000, &actual); - transferred += actual; - if (err || (current_size != actual)) break; - } - - if (!err && transferred != size) - err = GRUB_USB_ERR_DATA; - return err; -} - -grub_usb_err_t -grub_usb_bulk_write (grub_usb_device_t dev, - struct grub_usb_desc_endp *endpoint, - grub_size_t size, char *data) -{ - return grub_usb_bulk_readwrite_packetize (dev, endpoint, - GRUB_USB_TRANSFER_TYPE_OUT, - size, data); -} - -grub_usb_err_t -grub_usb_bulk_read (grub_usb_device_t dev, - struct grub_usb_desc_endp *endpoint, - grub_size_t size, char *data) -{ - return grub_usb_bulk_readwrite_packetize (dev, endpoint, - GRUB_USB_TRANSFER_TYPE_IN, - size, data); -} - -grub_usb_err_t -grub_usb_check_transfer (grub_usb_transfer_t transfer, grub_size_t *actual) -{ - grub_usb_err_t err; - grub_usb_device_t dev = transfer->dev; - - err = dev->controller.dev->check_transfer (&dev->controller, transfer, - actual); - if (err == GRUB_USB_ERR_WAIT) - return err; - - grub_usb_bulk_finish_readwrite (transfer); - - return err; -} - -grub_usb_transfer_t -grub_usb_bulk_read_background (grub_usb_device_t dev, - struct grub_usb_desc_endp *endpoint, - grub_size_t size, void *data) -{ - grub_usb_err_t err; - grub_usb_transfer_t transfer; - - transfer = grub_usb_bulk_setup_readwrite (dev, endpoint, size, - data, GRUB_USB_TRANSFER_TYPE_IN); - if (!transfer) - return NULL; - - err = dev->controller.dev->setup_transfer (&dev->controller, transfer); - if (err) - return NULL; - - return transfer; -} - -void -grub_usb_cancel_transfer (grub_usb_transfer_t transfer) -{ - grub_usb_device_t dev = transfer->dev; - dev->controller.dev->cancel_transfer (&dev->controller, transfer); - grub_errno = GRUB_ERR_NONE; -} - -grub_usb_err_t -grub_usb_bulk_read_extended (grub_usb_device_t dev, - struct grub_usb_desc_endp *endpoint, - grub_size_t size, char *data, - int timeout, grub_size_t *actual) -{ - return grub_usb_bulk_readwrite (dev, endpoint, size, data, - GRUB_USB_TRANSFER_TYPE_IN, timeout, actual); -} diff --git a/thirdparty/grub-2.04/grub-core/commands/acpi.c b/thirdparty/grub-2.04/grub-core/commands/acpi.c deleted file mode 100644 index 5a1499aa0..000000000 --- a/thirdparty/grub-2.04/grub-core/commands/acpi.c +++ /dev/null @@ -1,790 +0,0 @@ -/* acpi.c - modify acpi tables. */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#ifdef GRUB_MACHINE_EFI -#include -#include -#endif - -#pragma GCC diagnostic ignored "-Wcast-align" - -GRUB_MOD_LICENSE ("GPLv3+"); - -static const struct grub_arg_option options[] = { - {"exclude", 'x', 0, - N_("Don't load host tables specified by comma-separated list."), - 0, ARG_TYPE_STRING}, - {"load-only", 'n', 0, - N_("Load only tables specified by comma-separated list."), 0, ARG_TYPE_STRING}, - {"v1", '1', 0, N_("Export version 1 tables to the OS."), 0, ARG_TYPE_NONE}, - {"v2", '2', 0, N_("Export version 2 and version 3 tables to the OS."), 0, ARG_TYPE_NONE}, - {"oemid", 'o', 0, N_("Set OEMID of RSDP, XSDT and RSDT."), 0, ARG_TYPE_STRING}, - {"oemtable", 't', 0, - N_("Set OEMTABLE ID of RSDP, XSDT and RSDT."), 0, ARG_TYPE_STRING}, - {"oemtablerev", 'r', 0, - N_("Set OEMTABLE revision of RSDP, XSDT and RSDT."), 0, ARG_TYPE_INT}, - {"oemtablecreator", 'c', 0, - N_("Set creator field of RSDP, XSDT and RSDT."), 0, ARG_TYPE_STRING}, - {"oemtablecreatorrev", 'd', 0, - N_("Set creator revision of RSDP, XSDT and RSDT."), 0, ARG_TYPE_INT}, - /* TRANSLATORS: "hangs" here is a noun, not a verb. */ - {"no-ebda", 'e', 0, N_("Don't update EBDA. May fix failures or hangs on some " - "BIOSes but makes it ineffective with OS not receiving RSDP from GRUB."), - 0, ARG_TYPE_NONE}, - {0, 0, 0, 0, 0, 0} -}; - -/* rev1 is 1 if ACPIv1 is to be generated, 0 otherwise. - rev2 contains the revision of ACPIv2+ to generate or 0 if none. */ -static int rev1, rev2; -/* OEMID of RSDP, RSDT and XSDT. */ -static char root_oemid[6]; -/* OEMTABLE of the same tables. */ -static char root_oemtable[8]; -/* OEMREVISION of the same tables. */ -static grub_uint32_t root_oemrev; -/* CreatorID of the same tables. */ -static char root_creator_id[4]; -/* CreatorRevision of the same tables. */ -static grub_uint32_t root_creator_rev; -static struct grub_acpi_rsdp_v10 *rsdpv1_new = 0; -static struct grub_acpi_rsdp_v20 *rsdpv2_new = 0; -static char *playground = 0, *playground_ptr = 0; -static int playground_size = 0; - -/* Linked list of ACPI tables. */ -struct efiemu_acpi_table -{ - void *addr; - grub_size_t size; - struct efiemu_acpi_table *next; -}; -static struct efiemu_acpi_table *acpi_tables = 0; - -/* DSDT isn't in RSDT. So treat it specially. */ -static void *table_dsdt = 0; -/* Pointer to recreated RSDT. */ -static void *rsdt_addr = 0; - -/* Allocation handles for different tables. */ -static grub_size_t dsdt_size = 0; - -/* Address of original FACS. */ -static grub_uint32_t facs_addr = 0; - -struct grub_acpi_rsdp_v20 * -grub_acpi_get_rsdpv2 (void) -{ - if (rsdpv2_new) - return rsdpv2_new; - if (rsdpv1_new) - return 0; - return grub_machine_acpi_get_rsdpv2 (); -} - -struct grub_acpi_rsdp_v10 * -grub_acpi_get_rsdpv1 (void) -{ - if (rsdpv1_new) - return rsdpv1_new; - if (rsdpv2_new) - return 0; - return grub_machine_acpi_get_rsdpv1 (); -} - -#if defined (__i386__) || defined (__x86_64__) - -static inline int -iszero (grub_uint8_t *reg, int size) -{ - int i; - for (i = 0; i < size; i++) - if (reg[i]) - return 0; - return 1; -} - -/* Context for grub_acpi_create_ebda. */ -struct grub_acpi_create_ebda_ctx { - int ebda_len; - grub_uint64_t highestlow; -}; - -/* Helper for grub_acpi_create_ebda. */ -static int -find_hook (grub_uint64_t start, grub_uint64_t size, grub_memory_type_t type, - void *data) -{ - struct grub_acpi_create_ebda_ctx *ctx = data; - grub_uint64_t end = start + size; - if (type != GRUB_MEMORY_AVAILABLE) - return 0; - if (end > 0x100000) - end = 0x100000; - if (end > start + ctx->ebda_len - && ctx->highestlow < ((end - ctx->ebda_len) & (~0xf)) ) - ctx->highestlow = (end - ctx->ebda_len) & (~0xf); - return 0; -} - -grub_err_t -grub_acpi_create_ebda (void) -{ - struct grub_acpi_create_ebda_ctx ctx = { - .highestlow = 0 - }; - int ebda_kb_len = 0; - int mmapregion = 0; - grub_uint8_t *ebda, *v1inebda = 0, *v2inebda = 0; - grub_uint8_t *targetebda, *target; - struct grub_acpi_rsdp_v10 *v1; - struct grub_acpi_rsdp_v20 *v2; - - ebda = (grub_uint8_t *) (grub_addr_t) ((*((grub_uint16_t *)0x40e)) << 4); - grub_dprintf ("acpi", "EBDA @%p\n", ebda); - if (ebda) - ebda_kb_len = *(grub_uint16_t *) ebda; - grub_dprintf ("acpi", "EBDA length 0x%x\n", ebda_kb_len); - if (ebda_kb_len > 16) - ebda_kb_len = 0; - ctx.ebda_len = (ebda_kb_len + 1) << 10; - - /* FIXME: use low-memory mm allocation once it's available. */ - grub_mmap_iterate (find_hook, &ctx); - targetebda = (grub_uint8_t *) (grub_addr_t) ctx.highestlow; - grub_dprintf ("acpi", "creating ebda @%llx\n", - (unsigned long long) ctx.highestlow); - if (! ctx.highestlow) - return grub_error (GRUB_ERR_OUT_OF_MEMORY, - "couldn't find space for the new EBDA"); - - mmapregion = grub_mmap_register ((grub_addr_t) targetebda, ctx.ebda_len, - GRUB_MEMORY_RESERVED); - if (! mmapregion) - return grub_errno; - - /* XXX: EBDA is unstandardized, so this implementation is heuristical. */ - if (ebda_kb_len) - grub_memcpy (targetebda, ebda, 0x400); - else - grub_memset (targetebda, 0, 0x400); - *((grub_uint16_t *) targetebda) = ebda_kb_len + 1; - target = targetebda; - - v1 = grub_acpi_get_rsdpv1 (); - v2 = grub_acpi_get_rsdpv2 (); - if (v2 && v2->length > 40) - v2 = 0; - - /* First try to replace already existing rsdp. */ - if (v2) - { - grub_dprintf ("acpi", "Scanning EBDA for old rsdpv2\n"); - for (; target < targetebda + 0x400 - v2->length; target += 0x10) - if (grub_memcmp (target, GRUB_RSDP_SIGNATURE, GRUB_RSDP_SIGNATURE_SIZE) == 0 - && grub_byte_checksum (target, - sizeof (struct grub_acpi_rsdp_v10)) == 0 - && ((struct grub_acpi_rsdp_v10 *) target)->revision != 0 - && ((struct grub_acpi_rsdp_v20 *) target)->length <= v2->length) - { - grub_memcpy (target, v2, v2->length); - grub_dprintf ("acpi", "Copying rsdpv2 to %p\n", target); - v2inebda = target; - target += v2->length; - target = (grub_uint8_t *) ALIGN_UP((grub_addr_t) target, 16); - v2 = 0; - break; - } - } - - if (v1) - { - grub_dprintf ("acpi", "Scanning EBDA for old rsdpv1\n"); - for (; target < targetebda + 0x400 - sizeof (struct grub_acpi_rsdp_v10); - target += 0x10) - if (grub_memcmp (target, GRUB_RSDP_SIGNATURE, GRUB_RSDP_SIGNATURE_SIZE) == 0 - && grub_byte_checksum (target, - sizeof (struct grub_acpi_rsdp_v10)) == 0) - { - grub_memcpy (target, v1, sizeof (struct grub_acpi_rsdp_v10)); - grub_dprintf ("acpi", "Copying rsdpv1 to %p\n", target); - v1inebda = target; - target += sizeof (struct grub_acpi_rsdp_v10); - target = (grub_uint8_t *) ALIGN_UP((grub_addr_t) target, 16); - v1 = 0; - break; - } - } - - target = targetebda + 0x100; - - /* Try contiguous zeros. */ - if (v2) - { - grub_dprintf ("acpi", "Scanning EBDA for block of zeros\n"); - for (; target < targetebda + 0x400 - v2->length; target += 0x10) - if (iszero (target, v2->length)) - { - grub_dprintf ("acpi", "Copying rsdpv2 to %p\n", target); - grub_memcpy (target, v2, v2->length); - v2inebda = target; - target += v2->length; - target = (grub_uint8_t *) ALIGN_UP((grub_addr_t) target, 16); - v2 = 0; - break; - } - } - - if (v1) - { - grub_dprintf ("acpi", "Scanning EBDA for block of zeros\n"); - for (; target < targetebda + 0x400 - sizeof (struct grub_acpi_rsdp_v10); - target += 0x10) - if (iszero (target, sizeof (struct grub_acpi_rsdp_v10))) - { - grub_dprintf ("acpi", "Copying rsdpv1 to %p\n", target); - grub_memcpy (target, v1, sizeof (struct grub_acpi_rsdp_v10)); - v1inebda = target; - target += sizeof (struct grub_acpi_rsdp_v10); - target = (grub_uint8_t *) ALIGN_UP((grub_addr_t) target, 16); - v1 = 0; - break; - } - } - - if (v1 || v2) - { - grub_mmap_unregister (mmapregion); - return grub_error (GRUB_ERR_OUT_OF_MEMORY, - "couldn't find suitable spot in EBDA"); - } - - /* Remove any other RSDT. */ - for (target = targetebda; - target < targetebda + 0x400 - sizeof (struct grub_acpi_rsdp_v10); - target += 0x10) - if (grub_memcmp (target, GRUB_RSDP_SIGNATURE, GRUB_RSDP_SIGNATURE_SIZE) == 0 - && grub_byte_checksum (target, - sizeof (struct grub_acpi_rsdp_v10)) == 0 - && target != v1inebda && target != v2inebda) - *target = 0; - - grub_dprintf ("acpi", "Switching EBDA\n"); - (*((grub_uint16_t *) 0x40e)) = ((grub_addr_t) targetebda) >> 4; - grub_dprintf ("acpi", "EBDA switched\n"); - - return GRUB_ERR_NONE; -} -#endif - -/* Create tables common to ACPIv1 and ACPIv2+ */ -static void -setup_common_tables (void) -{ - struct efiemu_acpi_table *cur; - struct grub_acpi_table_header *rsdt; - grub_uint32_t *rsdt_entry; - int numoftables; - - /* Treat DSDT. */ - grub_memcpy (playground_ptr, table_dsdt, dsdt_size); - grub_free (table_dsdt); - table_dsdt = playground_ptr; - playground_ptr += dsdt_size; - - /* Treat other tables. */ - for (cur = acpi_tables; cur; cur = cur->next) - { - struct grub_acpi_fadt *fadt; - - grub_memcpy (playground_ptr, cur->addr, cur->size); - grub_free (cur->addr); - cur->addr = playground_ptr; - playground_ptr += cur->size; - - /* If it's FADT correct DSDT and FACS addresses. */ - fadt = (struct grub_acpi_fadt *) cur->addr; - if (grub_memcmp (fadt->hdr.signature, GRUB_ACPI_FADT_SIGNATURE, - sizeof (fadt->hdr.signature)) == 0) - { - fadt->dsdt_addr = (grub_addr_t) table_dsdt; - fadt->facs_addr = facs_addr; - - /* Does a revision 2 exist at all? */ - if (fadt->hdr.revision >= 3) - { - fadt->dsdt_xaddr = (grub_addr_t) table_dsdt; - fadt->facs_xaddr = facs_addr; - } - - /* Recompute checksum. */ - fadt->hdr.checksum = 0; - fadt->hdr.checksum = 1 + ~grub_byte_checksum (fadt, fadt->hdr.length); - } - } - - /* Fill RSDT entries. */ - numoftables = 0; - for (cur = acpi_tables; cur; cur = cur->next) - numoftables++; - - rsdt_addr = rsdt = (struct grub_acpi_table_header *) playground_ptr; - playground_ptr += sizeof (struct grub_acpi_table_header) + sizeof (grub_uint32_t) * numoftables; - - rsdt_entry = (grub_uint32_t *) (rsdt + 1); - - /* Fill RSDT header. */ - grub_memcpy (&(rsdt->signature), "RSDT", 4); - rsdt->length = sizeof (struct grub_acpi_table_header) + sizeof (grub_uint32_t) * numoftables; - rsdt->revision = 1; - grub_memcpy (&(rsdt->oemid), root_oemid, sizeof (rsdt->oemid)); - grub_memcpy (&(rsdt->oemtable), root_oemtable, sizeof (rsdt->oemtable)); - rsdt->oemrev = root_oemrev; - grub_memcpy (&(rsdt->creator_id), root_creator_id, sizeof (rsdt->creator_id)); - rsdt->creator_rev = root_creator_rev; - - for (cur = acpi_tables; cur; cur = cur->next) - *(rsdt_entry++) = (grub_addr_t) cur->addr; - - /* Recompute checksum. */ - rsdt->checksum = 0; - rsdt->checksum = 1 + ~grub_byte_checksum (rsdt, rsdt->length); -} - -/* Regenerate ACPIv1 RSDP */ -static void -setv1table (void) -{ - /* Create RSDP. */ - rsdpv1_new = (struct grub_acpi_rsdp_v10 *) playground_ptr; - playground_ptr += sizeof (struct grub_acpi_rsdp_v10); - grub_memcpy (&(rsdpv1_new->signature), GRUB_RSDP_SIGNATURE, - sizeof (rsdpv1_new->signature)); - grub_memcpy (&(rsdpv1_new->oemid), root_oemid, sizeof (rsdpv1_new->oemid)); - rsdpv1_new->revision = 0; - rsdpv1_new->rsdt_addr = (grub_addr_t) rsdt_addr; - rsdpv1_new->checksum = 0; - rsdpv1_new->checksum = 1 + ~grub_byte_checksum (rsdpv1_new, - sizeof (*rsdpv1_new)); - grub_dprintf ("acpi", "Generated ACPIv1 tables\n"); -} - -static void -setv2table (void) -{ - struct grub_acpi_table_header *xsdt; - struct efiemu_acpi_table *cur; - grub_uint64_t *xsdt_entry; - int numoftables; - - numoftables = 0; - for (cur = acpi_tables; cur; cur = cur->next) - numoftables++; - - /* Create XSDT. */ - xsdt = (struct grub_acpi_table_header *) playground_ptr; - playground_ptr += sizeof (struct grub_acpi_table_header) + sizeof (grub_uint64_t) * numoftables; - - xsdt_entry = (grub_uint64_t *)(xsdt + 1); - for (cur = acpi_tables; cur; cur = cur->next) - *(xsdt_entry++) = (grub_addr_t) cur->addr; - grub_memcpy (&(xsdt->signature), "XSDT", 4); - xsdt->length = sizeof (struct grub_acpi_table_header) + sizeof (grub_uint64_t) * numoftables; - xsdt->revision = 1; - grub_memcpy (&(xsdt->oemid), root_oemid, sizeof (xsdt->oemid)); - grub_memcpy (&(xsdt->oemtable), root_oemtable, sizeof (xsdt->oemtable)); - xsdt->oemrev = root_oemrev; - grub_memcpy (&(xsdt->creator_id), root_creator_id, sizeof (xsdt->creator_id)); - xsdt->creator_rev = root_creator_rev; - xsdt->checksum = 0; - xsdt->checksum = 1 + ~grub_byte_checksum (xsdt, xsdt->length); - - /* Create RSDPv2. */ - rsdpv2_new = (struct grub_acpi_rsdp_v20 *) playground_ptr; - playground_ptr += sizeof (struct grub_acpi_rsdp_v20); - grub_memcpy (&(rsdpv2_new->rsdpv1.signature), GRUB_RSDP_SIGNATURE, - sizeof (rsdpv2_new->rsdpv1.signature)); - grub_memcpy (&(rsdpv2_new->rsdpv1.oemid), root_oemid, - sizeof (rsdpv2_new->rsdpv1.oemid)); - rsdpv2_new->rsdpv1.revision = rev2; - rsdpv2_new->rsdpv1.rsdt_addr = (grub_addr_t) rsdt_addr; - rsdpv2_new->rsdpv1.checksum = 0; - rsdpv2_new->rsdpv1.checksum = 1 + ~grub_byte_checksum - (&(rsdpv2_new->rsdpv1), sizeof (rsdpv2_new->rsdpv1)); - rsdpv2_new->length = sizeof (*rsdpv2_new); - rsdpv2_new->xsdt_addr = (grub_addr_t) xsdt; - rsdpv2_new->checksum = 0; - rsdpv2_new->checksum = 1 + ~grub_byte_checksum (rsdpv2_new, - rsdpv2_new->length); - grub_dprintf ("acpi", "Generated ACPIv2 tables\n"); -} - -static void -free_tables (void) -{ - struct efiemu_acpi_table *cur, *t; - if (table_dsdt) - grub_free (table_dsdt); - for (cur = acpi_tables; cur;) - { - t = cur; - grub_free (cur->addr); - cur = cur->next; - grub_free (t); - } - acpi_tables = 0; - table_dsdt = 0; -} - -static grub_err_t -grub_cmd_acpi (struct grub_extcmd_context *ctxt, int argc, char **args) -{ - struct grub_arg_list *state = ctxt->state; - struct grub_acpi_rsdp_v10 *rsdp; - struct efiemu_acpi_table *cur, *t; - int i, mmapregion; - int numoftables; - - /* Default values if no RSDP is found. */ - rev1 = 1; - rev2 = 3; - - facs_addr = 0; - playground = playground_ptr = 0; - playground_size = 0; - - rsdp = (struct grub_acpi_rsdp_v10 *) grub_machine_acpi_get_rsdpv2 (); - - if (! rsdp) - rsdp = grub_machine_acpi_get_rsdpv1 (); - - grub_dprintf ("acpi", "RSDP @%p\n", rsdp); - - if (rsdp) - { - grub_uint32_t *entry_ptr; - char *exclude = 0; - char *load_only = 0; - char *ptr; - /* RSDT consists of header and an array of 32-bit pointers. */ - struct grub_acpi_table_header *rsdt; - - exclude = state[0].set ? grub_strdup (state[0].arg) : 0; - if (exclude) - { - for (ptr = exclude; *ptr; ptr++) - *ptr = grub_tolower (*ptr); - } - - load_only = state[1].set ? grub_strdup (state[1].arg) : 0; - if (load_only) - { - for (ptr = load_only; *ptr; ptr++) - *ptr = grub_tolower (*ptr); - } - - /* Set revision variables to replicate the same version as host. */ - rev1 = ! rsdp->revision; - rev2 = rsdp->revision; - rsdt = (struct grub_acpi_table_header *) (grub_addr_t) rsdp->rsdt_addr; - /* Load host tables. */ - for (entry_ptr = (grub_uint32_t *) (rsdt + 1); - entry_ptr < (grub_uint32_t *) (((grub_uint8_t *) rsdt) - + rsdt->length); - entry_ptr++) - { - char signature[5]; - struct efiemu_acpi_table *table; - struct grub_acpi_table_header *curtable - = (struct grub_acpi_table_header *) (grub_addr_t) *entry_ptr; - signature[4] = 0; - for (i = 0; i < 4;i++) - signature[i] = grub_tolower (curtable->signature[i]); - - /* If it's FADT it contains addresses of DSDT and FACS. */ - if (grub_strcmp (signature, "facp") == 0) - { - struct grub_acpi_table_header *dsdt; - struct grub_acpi_fadt *fadt = (struct grub_acpi_fadt *) curtable; - - /* Set root header variables to the same values - as FADT by default. */ - grub_memcpy (&root_oemid, &(fadt->hdr.oemid), - sizeof (root_oemid)); - grub_memcpy (&root_oemtable, &(fadt->hdr.oemtable), - sizeof (root_oemtable)); - root_oemrev = fadt->hdr.oemrev; - grub_memcpy (&root_creator_id, &(fadt->hdr.creator_id), - sizeof (root_creator_id)); - root_creator_rev = fadt->hdr.creator_rev; - - /* Load DSDT if not excluded. */ - dsdt = (struct grub_acpi_table_header *) - (grub_addr_t) fadt->dsdt_addr; - if (dsdt && (! exclude || ! grub_strword (exclude, "dsdt")) - && (! load_only || grub_strword (load_only, "dsdt")) - && dsdt->length >= sizeof (*dsdt)) - { - dsdt_size = dsdt->length; - table_dsdt = grub_malloc (dsdt->length); - if (! table_dsdt) - { - free_tables (); - grub_free (exclude); - grub_free (load_only); - return grub_errno; - } - grub_memcpy (table_dsdt, dsdt, dsdt->length); - } - - /* Save FACS address. FACS shouldn't be overridden. */ - facs_addr = fadt->facs_addr; - } - - /* Skip excluded tables. */ - if (exclude && grub_strword (exclude, signature)) - continue; - if (load_only && ! grub_strword (load_only, signature)) - continue; - - /* Sanity check. */ - if (curtable->length < sizeof (*curtable)) - continue; - - table = (struct efiemu_acpi_table *) grub_malloc - (sizeof (struct efiemu_acpi_table)); - if (! table) - { - free_tables (); - grub_free (exclude); - grub_free (load_only); - return grub_errno; - } - table->size = curtable->length; - table->addr = grub_malloc (table->size); - playground_size += table->size; - if (! table->addr) - { - free_tables (); - grub_free (exclude); - grub_free (load_only); - grub_free (table); - return grub_errno; - } - table->next = acpi_tables; - acpi_tables = table; - grub_memcpy (table->addr, curtable, table->size); - } - grub_free (exclude); - grub_free (load_only); - } - - /* Does user specify versions to generate? */ - if (state[2].set || state[3].set) - { - rev1 = state[2].set; - if (state[3].set) - rev2 = rev2 ? : 2; - else - rev2 = 0; - } - - /* Does user override root header information? */ - if (state[4].set) - grub_strncpy (root_oemid, state[4].arg, sizeof (root_oemid)); - if (state[5].set) - grub_strncpy (root_oemtable, state[5].arg, sizeof (root_oemtable)); - if (state[6].set) - root_oemrev = grub_strtoul (state[6].arg, 0, 0); - if (state[7].set) - grub_strncpy (root_creator_id, state[7].arg, sizeof (root_creator_id)); - if (state[8].set) - root_creator_rev = grub_strtoul (state[8].arg, 0, 0); - - /* Load user tables */ - for (i = 0; i < argc; i++) - { - grub_file_t file; - grub_size_t size; - char *buf; - - file = grub_file_open (args[i], GRUB_FILE_TYPE_ACPI_TABLE); - if (! file) - { - free_tables (); - return grub_errno; - } - - size = grub_file_size (file); - if (size < sizeof (struct grub_acpi_table_header)) - { - grub_file_close (file); - free_tables (); - return grub_error (GRUB_ERR_BAD_OS, N_("premature end of file %s"), - args[i]); - } - - buf = (char *) grub_malloc (size); - if (! buf) - { - grub_file_close (file); - free_tables (); - return grub_errno; - } - - if (grub_file_read (file, buf, size) != (int) size) - { - grub_file_close (file); - free_tables (); - if (!grub_errno) - grub_error (GRUB_ERR_BAD_OS, N_("premature end of file %s"), - args[i]); - return grub_errno; - } - grub_file_close (file); - - if (grub_memcmp (((struct grub_acpi_table_header *) buf)->signature, - "DSDT", 4) == 0) - { - grub_free (table_dsdt); - table_dsdt = buf; - dsdt_size = size; - } - else - { - struct efiemu_acpi_table *table; - table = (struct efiemu_acpi_table *) grub_malloc - (sizeof (struct efiemu_acpi_table)); - if (! table) - { - free_tables (); - return grub_errno; - } - - table->size = size; - table->addr = buf; - playground_size += table->size; - - table->next = acpi_tables; - acpi_tables = table; - } - } - - numoftables = 0; - for (cur = acpi_tables; cur; cur = cur->next) - numoftables++; - - /* DSDT. */ - playground_size += dsdt_size; - /* RSDT. */ - playground_size += sizeof (struct grub_acpi_table_header) + sizeof (grub_uint32_t) * numoftables; - /* RSDPv1. */ - playground_size += sizeof (struct grub_acpi_rsdp_v10); - /* XSDT. */ - playground_size += sizeof (struct grub_acpi_table_header) + sizeof (grub_uint64_t) * numoftables; - /* RSDPv2. */ - playground_size += sizeof (struct grub_acpi_rsdp_v20); - - playground = playground_ptr - = grub_mmap_malign_and_register (1, playground_size, &mmapregion, - GRUB_MEMORY_ACPI, 0); - - if (! playground) - { - free_tables (); - return grub_error (GRUB_ERR_OUT_OF_MEMORY, - "couldn't allocate space for ACPI tables"); - } - - setup_common_tables (); - - /* Request space for RSDPv1. */ - if (rev1) - setv1table (); - - /* Request space for RSDPv2+ and XSDT. */ - if (rev2) - setv2table (); - - for (cur = acpi_tables; cur;) - { - t = cur; - cur = cur->next; - grub_free (t); - } - acpi_tables = 0; - -#if defined (__i386__) || defined (__x86_64__) - if (! state[9].set) - { - grub_err_t err; - err = grub_acpi_create_ebda (); - if (err) - { - rsdpv1_new = 0; - rsdpv2_new = 0; - grub_mmap_free_and_unregister (mmapregion); - return err; - } - } -#endif - -#ifdef GRUB_MACHINE_EFI - { - struct grub_efi_guid acpi = GRUB_EFI_ACPI_TABLE_GUID; - struct grub_efi_guid acpi20 = GRUB_EFI_ACPI_20_TABLE_GUID; - - efi_call_2 (grub_efi_system_table->boot_services->install_configuration_table, - &acpi20, grub_acpi_get_rsdpv2 ()); - efi_call_2 (grub_efi_system_table->boot_services->install_configuration_table, - &acpi, grub_acpi_get_rsdpv1 ()); - } -#endif - - return GRUB_ERR_NONE; -} - -static grub_extcmd_t cmd; - -GRUB_MOD_INIT(acpi) -{ - cmd = grub_register_extcmd ("acpi", grub_cmd_acpi, 0, - N_("[-1|-2] [--exclude=TABLE1,TABLE2|" - "--load-only=TABLE1,TABLE2] FILE1" - " [FILE2] [...]"), - N_("Load host ACPI tables and tables " - "specified by arguments."), - options); -} - -GRUB_MOD_FINI(acpi) -{ - grub_unregister_extcmd (cmd); -} diff --git a/thirdparty/grub-2.04/grub-core/commands/acpihalt.c b/thirdparty/grub-2.04/grub-core/commands/acpihalt.c deleted file mode 100644 index 9cc7f18e3..000000000 --- a/thirdparty/grub-2.04/grub-core/commands/acpihalt.c +++ /dev/null @@ -1,454 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2010 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#ifdef GRUB_DSDT_TEST -#include -#include -#include -#include -#include -#include - -#define grub_dprintf(cond, args...) printf ( args ) -#define grub_printf printf -#define grub_util_fopen fopen -#define grub_memcmp memcmp -typedef uint64_t grub_uint64_t; -typedef uint32_t grub_uint32_t; -typedef uint16_t grub_uint16_t; -typedef uint8_t grub_uint8_t; - -#endif - -#include -#ifndef GRUB_DSDT_TEST -#include -#else -#define _(x) x -#define N_(x) x -#endif - -#ifndef GRUB_DSDT_TEST -#include -#include -#include -#include -#endif - -static inline grub_uint32_t -decode_length (const grub_uint8_t *ptr, int *numlen) -{ - int num_bytes, i; - grub_uint32_t ret; - if (*ptr < 64) - { - if (numlen) - *numlen = 1; - return *ptr; - } - num_bytes = *ptr >> 6; - if (numlen) - *numlen = num_bytes + 1; - ret = *ptr & 0xf; - ptr++; - for (i = 0; i < num_bytes; i++) - { - ret |= *ptr << (8 * i + 4); - ptr++; - } - return ret; -} - -static inline grub_uint32_t -skip_name_string (const grub_uint8_t *ptr, const grub_uint8_t *end) -{ - const grub_uint8_t *ptr0 = ptr; - - while (ptr < end && (*ptr == '^' || *ptr == '\\')) - ptr++; - switch (*ptr) - { - case '.': - ptr++; - ptr += 8; - break; - case '/': - ptr++; - ptr += 1 + (*ptr) * 4; - break; - case 0: - ptr++; - break; - default: - ptr += 4; - break; - } - return ptr - ptr0; -} - -static inline grub_uint32_t -skip_data_ref_object (const grub_uint8_t *ptr, const grub_uint8_t *end) -{ - grub_dprintf ("acpi", "data type = 0x%x\n", *ptr); - switch (*ptr) - { - case GRUB_ACPI_OPCODE_PACKAGE: - case GRUB_ACPI_OPCODE_BUFFER: - return 1 + decode_length (ptr + 1, 0); - case GRUB_ACPI_OPCODE_ZERO: - case GRUB_ACPI_OPCODE_ONES: - case GRUB_ACPI_OPCODE_ONE: - return 1; - case GRUB_ACPI_OPCODE_BYTE_CONST: - return 2; - case GRUB_ACPI_OPCODE_WORD_CONST: - return 3; - case GRUB_ACPI_OPCODE_DWORD_CONST: - return 5; - case GRUB_ACPI_OPCODE_STRING_CONST: - { - const grub_uint8_t *ptr0 = ptr; - for (ptr++; ptr < end && *ptr; ptr++); - if (ptr == end) - return 0; - return ptr - ptr0 + 1; - } - default: - if (*ptr == '^' || *ptr == '\\' || *ptr == '_' - || (*ptr >= 'A' && *ptr <= 'Z')) - return skip_name_string (ptr, end); - grub_printf ("Unknown opcode 0x%x\n", *ptr); - return 0; - } -} - -static inline grub_uint32_t -skip_term (const grub_uint8_t *ptr, const grub_uint8_t *end) -{ - grub_uint32_t add; - const grub_uint8_t *ptr0 = ptr; - - switch(*ptr) - { - case GRUB_ACPI_OPCODE_ADD: - case GRUB_ACPI_OPCODE_AND: - case GRUB_ACPI_OPCODE_CONCAT: - case GRUB_ACPI_OPCODE_CONCATRES: - case GRUB_ACPI_OPCODE_DIVIDE: - case GRUB_ACPI_OPCODE_INDEX: - case GRUB_ACPI_OPCODE_LSHIFT: - case GRUB_ACPI_OPCODE_MOD: - case GRUB_ACPI_OPCODE_MULTIPLY: - case GRUB_ACPI_OPCODE_NAND: - case GRUB_ACPI_OPCODE_NOR: - case GRUB_ACPI_OPCODE_OR: - case GRUB_ACPI_OPCODE_RSHIFT: - case GRUB_ACPI_OPCODE_SUBTRACT: - case GRUB_ACPI_OPCODE_TOSTRING: - case GRUB_ACPI_OPCODE_XOR: - /* - * Parameters for these opcodes: TermArg, TermArg Target, see ACPI - * spec r5.0, page 828f. - */ - ptr++; - ptr += add = skip_term (ptr, end); - if (!add) - return 0; - ptr += add = skip_term (ptr, end); - if (!add) - return 0; - ptr += skip_name_string (ptr, end); - break; - default: - return skip_data_ref_object (ptr, end); - } - return ptr - ptr0; -} - -static inline grub_uint32_t -skip_ext_op (const grub_uint8_t *ptr, const grub_uint8_t *end) -{ - const grub_uint8_t *ptr0 = ptr; - int add; - grub_dprintf ("acpi", "Extended opcode: 0x%x\n", *ptr); - switch (*ptr) - { - case GRUB_ACPI_EXTOPCODE_MUTEX: - ptr++; - ptr += skip_name_string (ptr, end); - ptr++; - break; - case GRUB_ACPI_EXTOPCODE_EVENT_OP: - ptr++; - ptr += skip_name_string (ptr, end); - break; - case GRUB_ACPI_EXTOPCODE_OPERATION_REGION: - ptr++; - ptr += skip_name_string (ptr, end); - ptr++; - ptr += add = skip_term (ptr, end); - if (!add) - return 0; - ptr += add = skip_term (ptr, end); - if (!add) - return 0; - break; - case GRUB_ACPI_EXTOPCODE_FIELD_OP: - case GRUB_ACPI_EXTOPCODE_DEVICE_OP: - case GRUB_ACPI_EXTOPCODE_PROCESSOR_OP: - case GRUB_ACPI_EXTOPCODE_POWER_RES_OP: - case GRUB_ACPI_EXTOPCODE_THERMAL_ZONE_OP: - case GRUB_ACPI_EXTOPCODE_INDEX_FIELD_OP: - case GRUB_ACPI_EXTOPCODE_BANK_FIELD_OP: - ptr++; - ptr += decode_length (ptr, 0); - break; - default: - grub_printf ("Unexpected extended opcode: 0x%x\n", *ptr); - return 0; - } - return ptr - ptr0; -} - - -static int -get_sleep_type (grub_uint8_t *table, grub_uint8_t *ptr, grub_uint8_t *end, - grub_uint8_t *scope, int scope_len) -{ - grub_uint8_t *prev = table; - - if (!ptr) - ptr = table + sizeof (struct grub_acpi_table_header); - while (ptr < end && prev < ptr) - { - int add; - prev = ptr; - grub_dprintf ("acpi", "Opcode 0x%x\n", *ptr); - grub_dprintf ("acpi", "Tell %x\n", (unsigned) (ptr - table)); - switch (*ptr) - { - case GRUB_ACPI_OPCODE_EXTOP: - ptr++; - ptr += add = skip_ext_op (ptr, end); - if (!add) - return -1; - break; - case GRUB_ACPI_OPCODE_CREATE_DWORD_FIELD: - case GRUB_ACPI_OPCODE_CREATE_WORD_FIELD: - case GRUB_ACPI_OPCODE_CREATE_BYTE_FIELD: - { - ptr += 5; - ptr += add = skip_data_ref_object (ptr, end); - if (!add) - return -1; - ptr += 4; - break; - } - case GRUB_ACPI_OPCODE_NAME: - ptr++; - if ((!scope || grub_memcmp (scope, "\\", scope_len) == 0) && - (grub_memcmp (ptr, "_S5_", 4) == 0 || grub_memcmp (ptr, "\\_S5_", 4) == 0)) - { - int ll; - grub_uint8_t *ptr2 = ptr; - grub_dprintf ("acpi", "S5 found\n"); - ptr2 += skip_name_string (ptr, end); - if (*ptr2 != 0x12) - { - grub_printf ("Unknown opcode in _S5: 0x%x\n", *ptr2); - return -1; - } - ptr2++; - decode_length (ptr2, &ll); - ptr2 += ll; - ptr2++; - switch (*ptr2) - { - case GRUB_ACPI_OPCODE_ZERO: - return 0; - case GRUB_ACPI_OPCODE_ONE: - return 1; - case GRUB_ACPI_OPCODE_BYTE_CONST: - return ptr2[1]; - default: - grub_printf ("Unknown data type in _S5: 0x%x\n", *ptr2); - return -1; - } - } - ptr += add = skip_name_string (ptr, end); - if (!add) - return -1; - ptr += add = skip_data_ref_object (ptr, end); - if (!add) - return -1; - break; - case GRUB_ACPI_OPCODE_ALIAS: - ptr++; - /* We need to skip two name strings */ - ptr += add = skip_name_string (ptr, end); - if (!add) - return -1; - ptr += add = skip_name_string (ptr, end); - if (!add) - return -1; - break; - - case GRUB_ACPI_OPCODE_SCOPE: - { - int scope_sleep_type; - int ll; - grub_uint8_t *name; - int name_len; - - ptr++; - add = decode_length (ptr, &ll); - name = ptr + ll; - name_len = skip_name_string (name, ptr + add); - if (!name_len) - return -1; - scope_sleep_type = get_sleep_type (table, name + name_len, - ptr + add, name, name_len); - if (scope_sleep_type != -2) - return scope_sleep_type; - ptr += add; - break; - } - case GRUB_ACPI_OPCODE_IF: - case GRUB_ACPI_OPCODE_METHOD: - { - ptr++; - ptr += decode_length (ptr, 0); - break; - } - default: - grub_printf ("Unknown opcode 0x%x\n", *ptr); - return -1; - } - } - - return -2; -} - -#ifdef GRUB_DSDT_TEST -int -main (int argc, char **argv) -{ - FILE *f; - size_t len; - unsigned char *buf; - if (argc < 2) - printf ("Usage: %s FILE\n", argv[0]); - f = grub_util_fopen (argv[1], "rb"); - if (!f) - { - printf ("Couldn't open file\n"); - return 1; - } - fseek (f, 0, SEEK_END); - len = ftell (f); - fseek (f, 0, SEEK_SET); - buf = malloc (len); - if (!buf) - { - printf (_("error: %s.\n"), _("out of memory")); - fclose (f); - return 2; - } - if (fread (buf, 1, len, f) != len) - { - printf (_("cannot read `%s': %s"), argv[1], strerror (errno)); - free (buf); - fclose (f); - return 2; - } - - printf ("Sleep type = %d\n", get_sleep_type (buf, NULL, buf + len, NULL, 0)); - free (buf); - fclose (f); - return 0; -} - -#else - -void -grub_acpi_halt (void) -{ - struct grub_acpi_rsdp_v20 *rsdp2; - struct grub_acpi_rsdp_v10 *rsdp1; - struct grub_acpi_table_header *rsdt; - grub_uint32_t *entry_ptr; - grub_uint32_t port = 0; - int sleep_type = -1; - - rsdp2 = grub_acpi_get_rsdpv2 (); - if (rsdp2) - rsdp1 = &(rsdp2->rsdpv1); - else - rsdp1 = grub_acpi_get_rsdpv1 (); - grub_dprintf ("acpi", "rsdp1=%p\n", rsdp1); - if (!rsdp1) - return; - - rsdt = (struct grub_acpi_table_header *) (grub_addr_t) rsdp1->rsdt_addr; - for (entry_ptr = (grub_uint32_t *) (rsdt + 1); - entry_ptr < (grub_uint32_t *) (((grub_uint8_t *) rsdt) - + rsdt->length); - entry_ptr++) - { - if (grub_memcmp ((void *) (grub_addr_t) *entry_ptr, "FACP", 4) == 0) - { - struct grub_acpi_fadt *fadt - = ((struct grub_acpi_fadt *) (grub_addr_t) *entry_ptr); - struct grub_acpi_table_header *dsdt - = (struct grub_acpi_table_header *) (grub_addr_t) fadt->dsdt_addr; - grub_uint8_t *buf = (grub_uint8_t *) dsdt; - - port = fadt->pm1a; - - grub_dprintf ("acpi", "PM1a port=%x\n", port); - - if (grub_memcmp (dsdt->signature, "DSDT", - sizeof (dsdt->signature)) == 0 - && sleep_type < 0) - sleep_type = get_sleep_type (buf, NULL, buf + dsdt->length, - NULL, 0); - } - else if (grub_memcmp ((void *) (grub_addr_t) *entry_ptr, "SSDT", 4) == 0 - && sleep_type < 0) - { - struct grub_acpi_table_header *ssdt - = (struct grub_acpi_table_header *) (grub_addr_t) *entry_ptr; - grub_uint8_t *buf = (grub_uint8_t *) ssdt; - - grub_dprintf ("acpi", "SSDT = %p\n", ssdt); - - sleep_type = get_sleep_type (buf, NULL, buf + ssdt->length, NULL, 0); - } - } - - grub_dprintf ("acpi", "SLP_TYP = %d, port = 0x%x\n", sleep_type, port); - if (port && sleep_type >= 0 && sleep_type < 8) - grub_outw (GRUB_ACPI_SLP_EN | (sleep_type << GRUB_ACPI_SLP_TYP_OFFSET), - port & 0xffff); - - grub_millisleep (1500); - - /* TRANSLATORS: It's computer shutdown using ACPI, not disabling ACPI. */ - grub_puts_ (N_("ACPI shutdown failed")); -} -#endif diff --git a/thirdparty/grub-2.04/grub-core/commands/arc/lsdev.c b/thirdparty/grub-2.04/grub-core/commands/arc/lsdev.c deleted file mode 100644 index 27ed0a248..000000000 --- a/thirdparty/grub-2.04/grub-core/commands/arc/lsdev.c +++ /dev/null @@ -1,57 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2011 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -/* Helper for grub_cmd_lsdev. */ -static int -grub_cmd_lsdev_iter (const char *name, - const struct grub_arc_component *comp __attribute__ ((unused)), - void *data __attribute__ ((unused))) -{ - grub_printf ("%s\n", name); - return 0; -} - -static grub_err_t -grub_cmd_lsdev (grub_command_t cmd __attribute__ ((unused)), - int argc __attribute__ ((unused)), - char **args __attribute__ ((unused))) -{ - grub_arc_iterate_devs (grub_cmd_lsdev_iter, 0, 0); - return 0; -} - -static grub_command_t cmd; - -GRUB_MOD_INIT(lsdev) -{ - cmd = grub_register_command ("lsdev", grub_cmd_lsdev, "", - N_("List devices.")); -} - -GRUB_MOD_FINI(lsdev) -{ - grub_unregister_command (cmd); -} diff --git a/thirdparty/grub-2.04/grub-core/commands/blocklist.c b/thirdparty/grub-2.04/grub-core/commands/blocklist.c deleted file mode 100644 index 944449b77..000000000 --- a/thirdparty/grub-2.04/grub-core/commands/blocklist.c +++ /dev/null @@ -1,160 +0,0 @@ -/* blocklist.c - print the block list of a file */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2006,2007 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -/* Context for grub_cmd_blocklist. */ -struct blocklist_ctx -{ - unsigned long start_sector; - unsigned num_sectors; - int num_entries; - grub_disk_addr_t part_start; -}; - -/* Helper for grub_cmd_blocklist. */ -static void -print_blocklist (grub_disk_addr_t sector, unsigned num, - unsigned offset, unsigned length, struct blocklist_ctx *ctx) -{ - if (ctx->num_entries++) - grub_printf (","); - - grub_printf ("%llu", (unsigned long long) (sector - ctx->part_start)); - if (num > 0) - grub_printf ("+%u", num); - if (offset != 0 || length != 0) - grub_printf ("[%u-%u]", offset, offset + length); -} - -/* Helper for grub_cmd_blocklist. */ -static void -read_blocklist (grub_disk_addr_t sector, unsigned offset, unsigned length, - void *data) -{ - struct blocklist_ctx *ctx = data; - - if (ctx->num_sectors > 0) - { - if (ctx->start_sector + ctx->num_sectors == sector - && offset == 0 && length >= GRUB_DISK_SECTOR_SIZE) - { - ctx->num_sectors += length >> GRUB_DISK_SECTOR_BITS; - sector += length >> GRUB_DISK_SECTOR_BITS; - length &= (GRUB_DISK_SECTOR_SIZE - 1); - } - - if (!length) - return; - print_blocklist (ctx->start_sector, ctx->num_sectors, 0, 0, ctx); - ctx->num_sectors = 0; - } - - if (offset) - { - unsigned l = length + offset; - l &= (GRUB_DISK_SECTOR_SIZE - 1); - l -= offset; - print_blocklist (sector, 0, offset, l, ctx); - length -= l; - sector++; - offset = 0; - } - - if (!length) - return; - - if (length & (GRUB_DISK_SECTOR_SIZE - 1)) - { - if (length >> GRUB_DISK_SECTOR_BITS) - { - print_blocklist (sector, length >> GRUB_DISK_SECTOR_BITS, 0, 0, ctx); - sector += length >> GRUB_DISK_SECTOR_BITS; - } - print_blocklist (sector, 0, 0, length & (GRUB_DISK_SECTOR_SIZE - 1), ctx); - } - else - { - ctx->start_sector = sector; - ctx->num_sectors = length >> GRUB_DISK_SECTOR_BITS; - } -} - -static grub_err_t -grub_cmd_blocklist (grub_command_t cmd __attribute__ ((unused)), - int argc, char **args) -{ - grub_file_t file; - char buf[GRUB_DISK_SECTOR_SIZE]; - struct blocklist_ctx ctx = { - .start_sector = 0, - .num_sectors = 0, - .num_entries = 0, - .part_start = 0 - }; - - if (argc < 1) - return grub_error (GRUB_ERR_BAD_ARGUMENT, N_("filename expected")); - - file = grub_file_open (args[0], GRUB_FILE_TYPE_PRINT_BLOCKLIST - | GRUB_FILE_TYPE_NO_DECOMPRESS); - if (! file) - return grub_errno; - - if (! file->device->disk) - return grub_error (GRUB_ERR_BAD_DEVICE, - "this command is available only for disk devices"); - - ctx.part_start = grub_partition_get_start (file->device->disk->partition); - - file->read_hook = read_blocklist; - file->read_hook_data = &ctx; - - while (grub_file_read (file, buf, sizeof (buf)) > 0) - ; - - if (ctx.num_sectors > 0) - print_blocklist (ctx.start_sector, ctx.num_sectors, 0, 0, &ctx); - - grub_file_close (file); - - return grub_errno; -} - -static grub_command_t cmd; - -GRUB_MOD_INIT(blocklist) -{ - cmd = grub_register_command ("blocklist", grub_cmd_blocklist, - N_("FILE"), N_("Print a block list.")); -} - -GRUB_MOD_FINI(blocklist) -{ - grub_unregister_command (cmd); -} diff --git a/thirdparty/grub-2.04/grub-core/commands/boot.c b/thirdparty/grub-2.04/grub-core/commands/boot.c deleted file mode 100644 index bbca81e94..000000000 --- a/thirdparty/grub-2.04/grub-core/commands/boot.c +++ /dev/null @@ -1,195 +0,0 @@ -/* boot.c - command to boot an operating system */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2002,2003,2004,2005,2007,2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -static grub_err_t (*grub_loader_boot_func) (void); -static grub_err_t (*grub_loader_unload_func) (void); -static int grub_loader_flags; - -struct grub_preboot -{ - grub_err_t (*preboot_func) (int); - grub_err_t (*preboot_rest_func) (void); - grub_loader_preboot_hook_prio_t prio; - struct grub_preboot *next; - struct grub_preboot *prev; -}; - -static int grub_loader_loaded; -static struct grub_preboot *preboots_head = 0, - *preboots_tail = 0; - -int -grub_loader_is_loaded (void) -{ - return grub_loader_loaded; -} - -/* Register a preboot hook. */ -struct grub_preboot * -grub_loader_register_preboot_hook (grub_err_t (*preboot_func) (int flags), - grub_err_t (*preboot_rest_func) (void), - grub_loader_preboot_hook_prio_t prio) -{ - struct grub_preboot *cur, *new_preboot; - - if (! preboot_func && ! preboot_rest_func) - return 0; - - new_preboot = (struct grub_preboot *) - grub_malloc (sizeof (struct grub_preboot)); - if (! new_preboot) - return 0; - - new_preboot->preboot_func = preboot_func; - new_preboot->preboot_rest_func = preboot_rest_func; - new_preboot->prio = prio; - - for (cur = preboots_head; cur && cur->prio > prio; cur = cur->next); - - if (cur) - { - new_preboot->next = cur; - new_preboot->prev = cur->prev; - cur->prev = new_preboot; - } - else - { - new_preboot->next = 0; - new_preboot->prev = preboots_tail; - preboots_tail = new_preboot; - } - if (new_preboot->prev) - new_preboot->prev->next = new_preboot; - else - preboots_head = new_preboot; - - return new_preboot; -} - -void -grub_loader_unregister_preboot_hook (struct grub_preboot *hnd) -{ - struct grub_preboot *preb = hnd; - - if (preb->next) - preb->next->prev = preb->prev; - else - preboots_tail = preb->prev; - if (preb->prev) - preb->prev->next = preb->next; - else - preboots_head = preb->next; - - grub_free (preb); -} - -void -grub_loader_set (grub_err_t (*boot) (void), - grub_err_t (*unload) (void), - int flags) -{ - if (grub_loader_loaded && grub_loader_unload_func) - grub_loader_unload_func (); - - grub_loader_boot_func = boot; - grub_loader_unload_func = unload; - grub_loader_flags = flags; - - grub_loader_loaded = 1; -} - -void -grub_loader_unset(void) -{ - if (grub_loader_loaded && grub_loader_unload_func) - grub_loader_unload_func (); - - grub_loader_boot_func = 0; - grub_loader_unload_func = 0; - - grub_loader_loaded = 0; -} - -grub_err_t -grub_loader_boot (void) -{ - grub_err_t err = GRUB_ERR_NONE; - struct grub_preboot *cur; - - if (! grub_loader_loaded) - return grub_error (GRUB_ERR_NO_KERNEL, - N_("you need to load the kernel first")); - - grub_machine_fini (grub_loader_flags); - - for (cur = preboots_head; cur; cur = cur->next) - { - err = cur->preboot_func (grub_loader_flags); - if (err) - { - for (cur = cur->prev; cur; cur = cur->prev) - cur->preboot_rest_func (); - return err; - } - } - err = (grub_loader_boot_func) (); - - for (cur = preboots_tail; cur; cur = cur->prev) - if (! err) - err = cur->preboot_rest_func (); - else - cur->preboot_rest_func (); - - return err; -} - -/* boot */ -static grub_err_t -grub_cmd_boot (struct grub_command *cmd __attribute__ ((unused)), - int argc __attribute__ ((unused)), - char *argv[] __attribute__ ((unused))) -{ - return grub_loader_boot (); -} - - - -static grub_command_t cmd_boot; - -GRUB_MOD_INIT(boot) -{ - cmd_boot = - grub_register_command ("boot", grub_cmd_boot, - 0, N_("Boot an operating system.")); -} - -GRUB_MOD_FINI(boot) -{ - grub_unregister_command (cmd_boot); -} diff --git a/thirdparty/grub-2.04/grub-core/commands/boottime.c b/thirdparty/grub-2.04/grub-core/commands/boottime.c deleted file mode 100644 index dcc078c2a..000000000 --- a/thirdparty/grub-2.04/grub-core/commands/boottime.c +++ /dev/null @@ -1,65 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2013 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - - -static grub_err_t -grub_cmd_boottime (struct grub_command *cmd __attribute__ ((unused)), - int argc __attribute__ ((unused)), - char *argv[] __attribute__ ((unused))) -{ - struct grub_boot_time *cur; - grub_uint64_t last_time = 0, start_time = 0; - if (!grub_boot_time_head) - { - grub_puts_ (N_("No boot time statistics is available\n")); - return 0; - } - start_time = last_time = grub_boot_time_head->tp; - for (cur = grub_boot_time_head; cur; cur = cur->next) - { - grub_uint32_t tmabs = cur->tp - start_time; - grub_uint32_t tmrel = cur->tp - last_time; - last_time = cur->tp; - - grub_printf ("%3d.%03ds %2d.%03ds %s:%d %s\n", - tmabs / 1000, tmabs % 1000, tmrel / 1000, tmrel % 1000, cur->file, cur->line, - cur->msg); - } - return 0; -} - -static grub_command_t cmd_boottime; - -GRUB_MOD_INIT(boottime) -{ - cmd_boottime = - grub_register_command ("boottime", grub_cmd_boottime, - 0, N_("Show boot time statistics.")); -} - -GRUB_MOD_FINI(boottime) -{ - grub_unregister_command (cmd_boottime); -} diff --git a/thirdparty/grub-2.04/grub-core/commands/cacheinfo.c b/thirdparty/grub-2.04/grub-core/commands/cacheinfo.c deleted file mode 100644 index d34a34696..000000000 --- a/thirdparty/grub-2.04/grub-core/commands/cacheinfo.c +++ /dev/null @@ -1,62 +0,0 @@ -/* cacheinfo.c - disk cache statistics */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2008,2010 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -static grub_err_t -grub_rescue_cmd_info (struct grub_command *cmd __attribute__ ((unused)), - int argc __attribute__ ((unused)), - char *argv[] __attribute__ ((unused))) -{ - unsigned long hits, misses; - - grub_disk_cache_get_performance (&hits, &misses); - if (hits + misses) - { - unsigned long ratio = hits * 10000 / (hits + misses); - grub_printf ("(%lu.%lu%%)\n", ratio / 100, ratio % 100); - grub_printf_ (N_("Disk cache statistics: hits = %lu (%lu.%02lu%%)," - " misses = %lu\n"), ratio / 100, ratio % 100, - hits, misses); - } - else - grub_printf ("%s\n", _("No disk cache statistics available\n")); - - return 0; -} - -static grub_command_t cmd_cacheinfo; - -GRUB_MOD_INIT(cacheinfo) -{ - cmd_cacheinfo = - grub_register_command ("cacheinfo", grub_rescue_cmd_info, - 0, N_("Get disk cache info.")); -} - -GRUB_MOD_FINI(cacheinfo) -{ - grub_unregister_command (cmd_cacheinfo); -} diff --git a/thirdparty/grub-2.04/grub-core/commands/cat.c b/thirdparty/grub-2.04/grub-core/commands/cat.c deleted file mode 100644 index ba5f0061a..000000000 --- a/thirdparty/grub-2.04/grub-core/commands/cat.c +++ /dev/null @@ -1,170 +0,0 @@ -/* cat.c - command to show the contents of a file */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2003,2005,2007,2008 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -static const struct grub_arg_option options[] = - { - {"dos", -1, 0, N_("Accept DOS-style CR/NL line endings."), 0, 0}, - {0, 0, 0, 0, 0, 0} - }; - -static grub_err_t -grub_cmd_cat (grub_extcmd_context_t ctxt, int argc, char **args) -{ - struct grub_arg_list *state = ctxt->state; - int dos = 0; - grub_file_t file; - unsigned char buf[GRUB_DISK_SECTOR_SIZE]; - grub_ssize_t size; - int key = GRUB_TERM_NO_KEY; - grub_uint32_t code = 0; - int count = 0; - unsigned char utbuf[GRUB_MAX_UTF8_PER_CODEPOINT + 1]; - int utcount = 0; - int is_0d = 0; - int j; - - if (state[0].set) - dos = 1; - - if (argc != 1) - return grub_error (GRUB_ERR_BAD_ARGUMENT, N_("filename expected")); - - file = grub_file_open (args[0], GRUB_FILE_TYPE_CAT); - if (! file) - return grub_errno; - - while ((size = grub_file_read (file, buf, sizeof (buf))) > 0 - && key != GRUB_TERM_ESC) - { - int i; - - for (i = 0; i < size; i++) - { - utbuf[utcount++] = buf[i]; - - if (is_0d && buf[i] != '\n') - { - grub_setcolorstate (GRUB_TERM_COLOR_HIGHLIGHT); - grub_printf ("<%x>", (int) '\r'); - grub_setcolorstate (GRUB_TERM_COLOR_STANDARD); - } - - is_0d = 0; - - if (!grub_utf8_process (buf[i], &code, &count)) - { - grub_setcolorstate (GRUB_TERM_COLOR_HIGHLIGHT); - for (j = 0; j < utcount - 1; j++) - grub_printf ("<%x>", (unsigned int) utbuf[j]); - code = 0; - count = 0; - if (utcount == 1 || !grub_utf8_process (buf[i], &code, &count)) - { - grub_printf ("<%x>", (unsigned int) buf[i]); - code = 0; - count = 0; - utcount = 0; - grub_setcolorstate (GRUB_TERM_COLOR_STANDARD); - continue; - } - grub_setcolorstate (GRUB_TERM_COLOR_STANDARD); - utcount = 1; - } - if (count) - continue; - - if ((code >= 0xa1 || grub_isprint (code) - || grub_isspace (code)) && code != '\r') - { - grub_printf ("%C", code); - count = 0; - code = 0; - utcount = 0; - continue; - } - - if (dos && code == '\r') - { - is_0d = 1; - count = 0; - code = 0; - utcount = 0; - continue; - } - - grub_setcolorstate (GRUB_TERM_COLOR_HIGHLIGHT); - for (j = 0; j < utcount; j++) - grub_printf ("<%x>", (unsigned int) utbuf[j]); - grub_setcolorstate (GRUB_TERM_COLOR_STANDARD); - count = 0; - code = 0; - utcount = 0; - } - - do - key = grub_getkey_noblock (); - while (key != GRUB_TERM_ESC && key != GRUB_TERM_NO_KEY); - } - - if (is_0d) - { - grub_setcolorstate (GRUB_TERM_COLOR_HIGHLIGHT); - grub_printf ("<%x>", (unsigned int) '\r'); - grub_setcolorstate (GRUB_TERM_COLOR_STANDARD); - } - - if (utcount) - { - grub_setcolorstate (GRUB_TERM_COLOR_HIGHLIGHT); - for (j = 0; j < utcount; j++) - grub_printf ("<%x>", (unsigned int) utbuf[j]); - grub_setcolorstate (GRUB_TERM_COLOR_STANDARD); - } - - grub_xputs ("\n"); - grub_refresh (); - grub_file_close (file); - - return 0; -} - -static grub_extcmd_t cmd; - -GRUB_MOD_INIT(cat) -{ - cmd = grub_register_extcmd ("cat", grub_cmd_cat, 0, - N_("FILE"), N_("Show the contents of a file."), - options); -} - -GRUB_MOD_FINI(cat) -{ - grub_unregister_extcmd (cmd); -} diff --git a/thirdparty/grub-2.04/grub-core/commands/cmp.c b/thirdparty/grub-2.04/grub-core/commands/cmp.c deleted file mode 100644 index e9c3b25d3..000000000 --- a/thirdparty/grub-2.04/grub-core/commands/cmp.c +++ /dev/null @@ -1,119 +0,0 @@ -/* cmd.c - command to cmp an operating system */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2003,2005,2006,2007,2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -#define BUFFER_SIZE 512 - -static grub_err_t -grub_cmd_cmp (grub_command_t cmd __attribute__ ((unused)), - int argc, char **args) -{ - grub_ssize_t rd1, rd2; - grub_off_t pos; - grub_file_t file1 = 0; - grub_file_t file2 = 0; - char *buf1 = 0; - char *buf2 = 0; - - if (argc != 2) - return grub_error (GRUB_ERR_BAD_ARGUMENT, N_("two arguments expected")); - - grub_printf_ (N_("Compare file `%s' with `%s':\n"), args[0], - args[1]); - - file1 = grub_file_open (args[0], GRUB_FILE_TYPE_CMP); - file2 = grub_file_open (args[1], GRUB_FILE_TYPE_CMP); - if (! file1 || ! file2) - goto cleanup; - - if (grub_file_size (file1) != grub_file_size (file2)) - grub_printf_ (N_("Files differ in size: %llu [%s], %llu [%s]\n"), - (unsigned long long) grub_file_size (file1), args[0], - (unsigned long long) grub_file_size (file2), args[1]); - else - { - pos = 0; - - buf1 = grub_malloc (BUFFER_SIZE); - buf2 = grub_malloc (BUFFER_SIZE); - - if (! buf1 || ! buf2) - goto cleanup; - - do - { - int i; - - rd1 = grub_file_read (file1, buf1, BUFFER_SIZE); - rd2 = grub_file_read (file2, buf2, BUFFER_SIZE); - - if (rd1 != rd2) - goto cleanup; - - for (i = 0; i < rd2; i++) - { - if (buf1[i] != buf2[i]) - { - grub_printf_ (N_("Files differ at the offset %llu: 0x%x [%s], 0x%x [%s]\n"), - (unsigned long long) (i + pos), buf1[i], - args[0], buf2[i], args[1]); - goto cleanup; - } - } - pos += BUFFER_SIZE; - - } - while (rd2); - - /* TRANSLATORS: it's always exactly 2 files. */ - grub_printf_ (N_("The files are identical.\n")); - } - -cleanup: - - grub_free (buf1); - grub_free (buf2); - if (file1) - grub_file_close (file1); - if (file2) - grub_file_close (file2); - - return grub_errno; -} - -static grub_command_t cmd; - -GRUB_MOD_INIT(cmp) -{ - cmd = grub_register_command ("cmp", grub_cmd_cmp, - N_("FILE1 FILE2"), N_("Compare two files.")); -} - -GRUB_MOD_FINI(cmp) -{ - grub_unregister_command (cmd); -} diff --git a/thirdparty/grub-2.04/grub-core/commands/configfile.c b/thirdparty/grub-2.04/grub-core/commands/configfile.c deleted file mode 100644 index f2d2abb5f..000000000 --- a/thirdparty/grub-2.04/grub-core/commands/configfile.c +++ /dev/null @@ -1,98 +0,0 @@ -/* configfile.c - command to manually load config file */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2005,2006,2007,2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -static grub_err_t -grub_cmd_source (grub_command_t cmd, int argc, char **args) -{ - int new_env, extractor; - - if (argc != 1) - return grub_error (GRUB_ERR_BAD_ARGUMENT, N_("filename expected")); - - extractor = (cmd->name[0] == 'e'); - new_env = (cmd->name[extractor ? sizeof ("extract_entries_") - 1 : 0] == 'c'); - - if (new_env) - grub_cls (); - - if (new_env && !extractor) - grub_env_context_open (); - if (extractor) - grub_env_extractor_open (!new_env); - - grub_normal_execute (args[0], 1, ! new_env); - - if (new_env && !extractor) - grub_env_context_close (); - if (extractor) - grub_env_extractor_close (!new_env); - - return 0; -} - -static grub_command_t cmd_configfile, cmd_source, cmd_dot; -static grub_command_t cmd_extractor_source, cmd_extractor_configfile; - -GRUB_MOD_INIT(configfile) -{ - cmd_configfile = - grub_register_command ("configfile", grub_cmd_source, - N_("FILE"), N_("Load another config file.")); - cmd_source = - grub_register_command ("source", grub_cmd_source, - N_("FILE"), - N_("Load another config file without changing context.") - ); - - cmd_extractor_source = - grub_register_command ("extract_entries_source", grub_cmd_source, - N_("FILE"), - N_("Load another config file without changing context but take only menu entries.") - ); - - cmd_extractor_configfile = - grub_register_command ("extract_entries_configfile", grub_cmd_source, - N_("FILE"), - N_("Load another config file but take only menu entries.") - ); - - cmd_dot = - grub_register_command (".", grub_cmd_source, - N_("FILE"), - N_("Load another config file without changing context.") - ); -} - -GRUB_MOD_FINI(configfile) -{ - grub_unregister_command (cmd_configfile); - grub_unregister_command (cmd_source); - grub_unregister_command (cmd_extractor_configfile); - grub_unregister_command (cmd_extractor_source); - grub_unregister_command (cmd_dot); -} diff --git a/thirdparty/grub-2.04/grub-core/commands/date.c b/thirdparty/grub-2.04/grub-core/commands/date.c deleted file mode 100644 index 8e1f41f14..000000000 --- a/thirdparty/grub-2.04/grub-core/commands/date.c +++ /dev/null @@ -1,148 +0,0 @@ -/* date.c - command to display/set current datetime. */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2008 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -#define GRUB_DATETIME_SET_YEAR 1 -#define GRUB_DATETIME_SET_MONTH 2 -#define GRUB_DATETIME_SET_DAY 4 -#define GRUB_DATETIME_SET_HOUR 8 -#define GRUB_DATETIME_SET_MINUTE 16 -#define GRUB_DATETIME_SET_SECOND 32 - -static grub_err_t -grub_cmd_date (grub_command_t cmd __attribute__ ((unused)), - int argc, char **args) -{ - struct grub_datetime datetime; - int limit[6][2] = {{1980, 2079}, {1, 12}, {1, 31}, {0, 23}, {0, 59}, {0, 59}}; - int value[6], mask; - - if (argc == 0) - { - if (grub_get_datetime (&datetime)) - return grub_errno; - - grub_printf ("%d-%02d-%02d %02d:%02d:%02d %s\n", - datetime.year, datetime.month, datetime.day, - datetime.hour, datetime.minute, datetime.second, - grub_get_weekday_name (&datetime)); - - return 0; - } - - grub_memset (&value, 0, sizeof (value)); - mask = 0; - - for (; argc; argc--, args++) - { - char *p, c; - int m1, ofs, n, cur_mask; - - p = args[0]; - m1 = grub_strtoul (p, &p, 10); - - c = *p; - if (c == '-') - ofs = 0; - else if (c == ':') - ofs = 3; - else - goto fail; - - value[ofs] = m1; - cur_mask = (1 << ofs); - mask &= ~(cur_mask * (1 + 2 + 4)); - - for (n = 1; (n < 3) && (*p); n++) - { - if (*p != c) - goto fail; - - value[ofs + n] = grub_strtoul (p + 1, &p, 10); - cur_mask |= (1 << (ofs + n)); - } - - if (*p) - goto fail; - - if ((ofs == 0) && (n == 2)) - { - value[ofs + 2] = value[ofs + 1]; - value[ofs + 1] = value[ofs]; - ofs++; - cur_mask <<= 1; - } - - for (; n; n--, ofs++) - if ((value [ofs] < limit[ofs][0]) || - (value [ofs] > limit[ofs][1])) - goto fail; - - mask |= cur_mask; - } - - if (grub_get_datetime (&datetime)) - return grub_errno; - - if (mask & GRUB_DATETIME_SET_YEAR) - datetime.year = value[0]; - - if (mask & GRUB_DATETIME_SET_MONTH) - datetime.month = value[1]; - - if (mask & GRUB_DATETIME_SET_DAY) - datetime.day = value[2]; - - if (mask & GRUB_DATETIME_SET_HOUR) - datetime.hour = value[3]; - - if (mask & GRUB_DATETIME_SET_MINUTE) - datetime.minute = value[4]; - - if (mask & GRUB_DATETIME_SET_SECOND) - datetime.second = value[5]; - - return grub_set_datetime (&datetime); - -fail: - return grub_error (GRUB_ERR_BAD_ARGUMENT, "invalid datetime"); -} - -static grub_command_t cmd; - -GRUB_MOD_INIT(date) -{ - cmd = - grub_register_command ("date", grub_cmd_date, - N_("[[year-]month-day] [hour:minute[:second]]"), - N_("Display/set current datetime.")); -} - -GRUB_MOD_FINI(date) -{ - grub_unregister_command (cmd); -} diff --git a/thirdparty/grub-2.04/grub-core/commands/echo.c b/thirdparty/grub-2.04/grub-core/commands/echo.c deleted file mode 100644 index 81ba50d68..000000000 --- a/thirdparty/grub-2.04/grub-core/commands/echo.c +++ /dev/null @@ -1,141 +0,0 @@ -/* echo.c - Command to display a line of text */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2006,2007,2010 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -static const struct grub_arg_option options[] = - { - {0, 'n', 0, N_("Do not output the trailing newline."), 0, 0}, - {0, 'e', 0, N_("Enable interpretation of backslash escapes."), 0, 0}, - {0, 0, 0, 0, 0, 0} - }; - -static grub_err_t -grub_cmd_echo (grub_extcmd_context_t ctxt, int argc, char **args) -{ - struct grub_arg_list *state = ctxt->state; - int newline = 1; - int i; - - /* Check if `-n' was used. */ - if (state[0].set) - newline = 0; - - for (i = 0; i < argc; i++) - { - char *arg = *args; - /* Unescaping results in a string no longer than the original. */ - char *unescaped = grub_malloc (grub_strlen (arg) + 1); - char *p = unescaped; - args++; - - if (!unescaped) - return grub_errno; - - while (*arg) - { - /* In case `-e' is used, parse backslashes. */ - if (*arg == '\\' && state[1].set) - { - arg++; - if (*arg == '\0') - break; - - switch (*arg) - { - case '\\': - *p++ = '\\'; - break; - - case 'a': - *p++ = '\a'; - break; - - case 'c': - newline = 0; - break; - - case 'f': - *p++ = '\f'; - break; - - case 'n': - *p++ = '\n'; - break; - - case 'r': - *p++ = '\r'; - break; - - case 't': - *p++ = '\t'; - break; - - case 'v': - *p++ = '\v'; - break; - } - arg++; - continue; - } - - /* This was not an escaped character, or escaping is not - enabled. */ - *p++ = *arg; - arg++; - } - - *p = '\0'; - grub_xputs (unescaped); - grub_free (unescaped); - - /* If another argument follows, insert a space. */ - if (i != argc - 1) - grub_printf (" " ); - } - - if (newline) - grub_printf ("\n"); - - grub_refresh (); - - return 0; -} - -static grub_extcmd_t cmd; - -GRUB_MOD_INIT(echo) -{ - cmd = grub_register_extcmd ("echo", grub_cmd_echo, - GRUB_COMMAND_ACCEPT_DASH - | GRUB_COMMAND_OPTIONS_AT_START, - N_("[-e|-n] STRING"), N_("Display a line of text."), - options); -} - -GRUB_MOD_FINI(echo) -{ - grub_unregister_extcmd (cmd); -} diff --git a/thirdparty/grub-2.04/grub-core/commands/efi/efifwsetup.c b/thirdparty/grub-2.04/grub-core/commands/efi/efifwsetup.c deleted file mode 100644 index 7a137a72a..000000000 --- a/thirdparty/grub-2.04/grub-core/commands/efi/efifwsetup.c +++ /dev/null @@ -1,90 +0,0 @@ -/* fwsetup.c - Reboot into firmware setup menu. */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2012 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -static grub_err_t -grub_cmd_fwsetup (grub_command_t cmd __attribute__ ((unused)), - int argc __attribute__ ((unused)), - char **args __attribute__ ((unused))) -{ - grub_efi_uint64_t *old_os_indications; - grub_efi_uint64_t os_indications = GRUB_EFI_OS_INDICATIONS_BOOT_TO_FW_UI; - grub_err_t status; - grub_size_t oi_size; - grub_efi_guid_t global = GRUB_EFI_GLOBAL_VARIABLE_GUID; - - old_os_indications = grub_efi_get_variable ("OsIndications", &global, - &oi_size); - - if (old_os_indications != NULL && oi_size == sizeof (os_indications)) - os_indications |= *old_os_indications; - - status = grub_efi_set_variable ("OsIndications", &global, &os_indications, - sizeof (os_indications)); - if (status != GRUB_ERR_NONE) - return status; - - grub_reboot (); - - return GRUB_ERR_BUG; -} - -static grub_command_t cmd = NULL; - -static grub_efi_boolean_t -efifwsetup_is_supported (void) -{ - grub_efi_uint64_t *os_indications_supported = NULL; - grub_size_t oi_size = 0; - grub_efi_guid_t global = GRUB_EFI_GLOBAL_VARIABLE_GUID; - - os_indications_supported = grub_efi_get_variable ("OsIndicationsSupported", - &global, &oi_size); - - if (!os_indications_supported) - return 0; - - if (*os_indications_supported & GRUB_EFI_OS_INDICATIONS_BOOT_TO_FW_UI) - return 1; - - return 0; -} - -GRUB_MOD_INIT (efifwsetup) -{ - if (efifwsetup_is_supported ()) - cmd = grub_register_command ("fwsetup", grub_cmd_fwsetup, NULL, - N_("Reboot into firmware setup menu.")); - -} - -GRUB_MOD_FINI (efifwsetup) -{ - if (cmd) - grub_unregister_command (cmd); -} diff --git a/thirdparty/grub-2.04/grub-core/commands/efi/fixvideo.c b/thirdparty/grub-2.04/grub-core/commands/efi/fixvideo.c deleted file mode 100644 index d9d54a2e8..000000000 --- a/thirdparty/grub-2.04/grub-core/commands/efi/fixvideo.c +++ /dev/null @@ -1,114 +0,0 @@ -/* fixvideo.c - fix video problem in efi */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -static struct grub_video_patch -{ - const char *name; - grub_uint32_t pci_id; - grub_uint32_t mmio_bar; - grub_uint32_t mmio_reg; - grub_uint32_t mmio_old; -} video_patches[] = - { - {"Intel 945GM", 0x27a28086, 0, 0x71184, 0x1000000}, /* DSPBBASE */ - {"Intel 965GM", 0x2a028086, 0, 0x7119C, 0x1000000}, /* DSPBSURF */ - {0, 0, 0, 0, 0} - }; - -static int -scan_card (grub_pci_device_t dev, grub_pci_id_t pciid, - void *data __attribute__ ((unused))) -{ - grub_pci_address_t addr; - - addr = grub_pci_make_address (dev, GRUB_PCI_REG_CLASS); - if (grub_pci_read_byte (addr + 3) == 0x3) - { - struct grub_video_patch *p = video_patches; - - while (p->name) - { - if (p->pci_id == pciid) - { - grub_addr_t base; - - grub_dprintf ("fixvideo", "Found graphic card: %s\n", p->name); - addr += 8 + p->mmio_bar * 4; - base = grub_pci_read (addr); - if ((! base) || (base & GRUB_PCI_ADDR_SPACE_IO) || - (base & GRUB_PCI_ADDR_MEM_PREFETCH)) - grub_dprintf ("fixvideo", "Invalid MMIO bar %d\n", p->mmio_bar); - else - { - base &= GRUB_PCI_ADDR_MEM_MASK; - base += p->mmio_reg; - - if (*((volatile grub_uint32_t *) base) != p->mmio_old) - grub_dprintf ("fixvideo", "Old value doesn't match\n"); - else - { - *((volatile grub_uint32_t *) base) = 0; - if (*((volatile grub_uint32_t *) base)) - grub_dprintf ("fixvideo", "Setting MMIO fails\n"); - } - } - - return 1; - } - p++; - } - - grub_dprintf ("fixvideo", "Unknown graphic card: %x\n", pciid); - } - - return 0; -} - -static grub_err_t -grub_cmd_fixvideo (grub_command_t cmd __attribute__ ((unused)), - int argc __attribute__ ((unused)), - char *argv[] __attribute__ ((unused))) -{ - grub_pci_iterate (scan_card, NULL); - return 0; -} - -static grub_command_t cmd_fixvideo; - -GRUB_MOD_INIT(fixvideo) -{ - cmd_fixvideo = grub_register_command ("fix_video", grub_cmd_fixvideo, - 0, N_("Fix video problem.")); - -} - -GRUB_MOD_FINI(fixvideo) -{ - grub_unregister_command (cmd_fixvideo); -} diff --git a/thirdparty/grub-2.04/grub-core/commands/efi/loadbios.c b/thirdparty/grub-2.04/grub-core/commands/efi/loadbios.c deleted file mode 100644 index d41d521a4..000000000 --- a/thirdparty/grub-2.04/grub-core/commands/efi/loadbios.c +++ /dev/null @@ -1,222 +0,0 @@ -/* loadbios.c - command to load a bios dump */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -static grub_efi_guid_t acpi_guid = GRUB_EFI_ACPI_TABLE_GUID; -static grub_efi_guid_t acpi2_guid = GRUB_EFI_ACPI_20_TABLE_GUID; -static grub_efi_guid_t smbios_guid = GRUB_EFI_SMBIOS_TABLE_GUID; - -#define EBDA_SEG_ADDR 0x40e -#define LOW_MEM_ADDR 0x413 -#define FAKE_EBDA_SEG 0x9fc0 - -#define BLANK_MEM 0xffffffff -#define VBIOS_ADDR 0xc0000 -#define SBIOS_ADDR 0xf0000 - -static int -enable_rom_area (void) -{ - grub_pci_address_t addr; - grub_uint32_t *rom_ptr; - grub_pci_device_t dev = { .bus = 0, .device = 0, .function = 0}; - - rom_ptr = (grub_uint32_t *) VBIOS_ADDR; - if (*rom_ptr != BLANK_MEM) - { - grub_puts_ (N_("ROM image is present.")); - return 0; - } - - /* FIXME: should be macroified. */ - addr = grub_pci_make_address (dev, 144); - grub_pci_write_byte (addr++, 0x30); - grub_pci_write_byte (addr++, 0x33); - grub_pci_write_byte (addr++, 0x33); - grub_pci_write_byte (addr++, 0x33); - grub_pci_write_byte (addr++, 0x33); - grub_pci_write_byte (addr++, 0x33); - grub_pci_write_byte (addr++, 0x33); - grub_pci_write_byte (addr, 0); - - *rom_ptr = 0; - if (*rom_ptr != 0) - { - grub_puts_ (N_("Can\'t enable ROM area.")); - return 0; - } - - return 1; -} - -static void -lock_rom_area (void) -{ - grub_pci_address_t addr; - grub_pci_device_t dev = { .bus = 0, .device = 0, .function = 0}; - - /* FIXME: should be macroified. */ - addr = grub_pci_make_address (dev, 144); - grub_pci_write_byte (addr++, 0x10); - grub_pci_write_byte (addr++, 0x11); - grub_pci_write_byte (addr++, 0x11); - grub_pci_write_byte (addr++, 0x11); - grub_pci_write_byte (addr, 0x11); -} - -static void -fake_bios_data (int use_rom) -{ - unsigned i; - void *acpi, *smbios; - grub_uint16_t *ebda_seg_ptr, *low_mem_ptr; - - ebda_seg_ptr = (grub_uint16_t *) EBDA_SEG_ADDR; - low_mem_ptr = (grub_uint16_t *) LOW_MEM_ADDR; - if ((*ebda_seg_ptr) || (*low_mem_ptr)) - return; - - acpi = 0; - smbios = 0; - for (i = 0; i < grub_efi_system_table->num_table_entries; i++) - { - grub_efi_packed_guid_t *guid = - &grub_efi_system_table->configuration_table[i].vendor_guid; - - if (! grub_memcmp (guid, &acpi2_guid, sizeof (grub_efi_guid_t))) - { - acpi = grub_efi_system_table->configuration_table[i].vendor_table; - grub_dprintf ("efi", "ACPI2: %p\n", acpi); - } - else if (! grub_memcmp (guid, &acpi_guid, sizeof (grub_efi_guid_t))) - { - void *t; - - t = grub_efi_system_table->configuration_table[i].vendor_table; - if (! acpi) - acpi = t; - grub_dprintf ("efi", "ACPI: %p\n", t); - } - else if (! grub_memcmp (guid, &smbios_guid, sizeof (grub_efi_guid_t))) - { - smbios = grub_efi_system_table->configuration_table[i].vendor_table; - grub_dprintf ("efi", "SMBIOS: %p\n", smbios); - } - } - - *ebda_seg_ptr = FAKE_EBDA_SEG; - *low_mem_ptr = (FAKE_EBDA_SEG >> 6); - - *((grub_uint16_t *) (FAKE_EBDA_SEG << 4)) = 640 - *low_mem_ptr; - - if (acpi) - grub_memcpy ((char *) ((FAKE_EBDA_SEG << 4) + 16), acpi, 1024 - 16); - - if ((use_rom) && (smbios)) - grub_memcpy ((char *) SBIOS_ADDR, (char *) smbios + 16, 16); -} - -static grub_err_t -grub_cmd_fakebios (struct grub_command *cmd __attribute__ ((unused)), - int argc __attribute__ ((unused)), - char *argv[] __attribute__ ((unused))) -{ - if (enable_rom_area ()) - { - fake_bios_data (1); - lock_rom_area (); - } - else - fake_bios_data (0); - - return 0; -} - -static grub_err_t -grub_cmd_loadbios (grub_command_t cmd __attribute__ ((unused)), - int argc, char *argv[]) -{ - grub_file_t file; - int size; - - if (argc == 0) - return grub_error (GRUB_ERR_BAD_ARGUMENT, N_("filename expected")); - - if (argc > 1) - { - file = grub_file_open (argv[1], GRUB_FILE_TYPE_VBE_DUMP); - if (! file) - return grub_errno; - - if (file->size != 4) - grub_error (GRUB_ERR_BAD_ARGUMENT, "invalid int10 dump size"); - else - grub_file_read (file, (void *) 0x40, 4); - - grub_file_close (file); - if (grub_errno) - return grub_errno; - } - - file = grub_file_open (argv[0], GRUB_FILE_TYPE_VBE_DUMP); - if (! file) - return grub_errno; - - size = file->size; - if ((size < 0x10000) || (size > 0x40000)) - grub_error (GRUB_ERR_BAD_ARGUMENT, "invalid bios dump size"); - else if (enable_rom_area ()) - { - grub_file_read (file, (void *) VBIOS_ADDR, size); - fake_bios_data (size <= 0x40000); - lock_rom_area (); - } - - grub_file_close (file); - return grub_errno; -} - -static grub_command_t cmd_fakebios, cmd_loadbios; - -GRUB_MOD_INIT(loadbios) -{ - cmd_fakebios = grub_register_command ("fakebios", grub_cmd_fakebios, - 0, N_("Create BIOS-like structures for" - " backward compatibility with" - " existing OS.")); - - cmd_loadbios = grub_register_command ("loadbios", grub_cmd_loadbios, - N_("BIOS_DUMP [INT10_DUMP]"), - N_("Load BIOS dump.")); -} - -GRUB_MOD_FINI(loadbios) -{ - grub_unregister_command (cmd_fakebios); - grub_unregister_command (cmd_loadbios); -} diff --git a/thirdparty/grub-2.04/grub-core/commands/efi/lsefi.c b/thirdparty/grub-2.04/grub-core/commands/efi/lsefi.c deleted file mode 100644 index d1ce99af4..000000000 --- a/thirdparty/grub-2.04/grub-core/commands/efi/lsefi.c +++ /dev/null @@ -1,155 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2012 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -struct known_protocol -{ - grub_efi_guid_t guid; - const char *name; -} known_protocols[] = - { - { GRUB_EFI_DISK_IO_GUID, "disk" }, - { GRUB_EFI_BLOCK_IO_GUID, "block" }, - { GRUB_EFI_SERIAL_IO_GUID, "serial" }, - { GRUB_EFI_SIMPLE_NETWORK_GUID, "network" }, - { GRUB_EFI_PXE_GUID, "pxe" }, - { GRUB_EFI_DEVICE_PATH_GUID, "device path" }, - { GRUB_EFI_PCI_IO_GUID, "PCI" }, - { GRUB_EFI_PCI_ROOT_IO_GUID, "PCI root" }, - { GRUB_EFI_EDID_ACTIVE_GUID, "active EDID" }, - { GRUB_EFI_EDID_DISCOVERED_GUID, "discovered EDID" }, - { GRUB_EFI_EDID_OVERRIDE_GUID, "override EDID" }, - { GRUB_EFI_GOP_GUID, "GOP" }, - { GRUB_EFI_UGA_DRAW_GUID, "UGA draw" }, - { GRUB_EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL_GUID, "simple text output" }, - { GRUB_EFI_SIMPLE_TEXT_INPUT_PROTOCOL_GUID, "simple text input" }, - { GRUB_EFI_SIMPLE_POINTER_PROTOCOL_GUID, "simple pointer" }, - { GRUB_EFI_CONSOLE_CONTROL_GUID, "console control" }, - { GRUB_EFI_ABSOLUTE_POINTER_PROTOCOL_GUID, "absolute pointer" }, - { GRUB_EFI_DRIVER_BINDING_PROTOCOL_GUID, "EFI driver binding" }, - { GRUB_EFI_LOAD_FILE_PROTOCOL_GUID, "load file" }, - { GRUB_EFI_SIMPLE_FILE_SYSTEM_PROTOCOL_GUID, "simple FS" }, - { GRUB_EFI_TAPE_IO_PROTOCOL_GUID, "tape I/O" }, - { GRUB_EFI_UNICODE_COLLATION_PROTOCOL_GUID, "unicode collation" }, - { GRUB_EFI_SCSI_IO_PROTOCOL_GUID, "SCSI I/O" }, - { GRUB_EFI_USB2_HC_PROTOCOL_GUID, "USB host" }, - { GRUB_EFI_DEBUG_SUPPORT_PROTOCOL_GUID, "debug support" }, - { GRUB_EFI_DEBUGPORT_PROTOCOL_GUID, "debug port" }, - { GRUB_EFI_DECOMPRESS_PROTOCOL_GUID, "decompress" }, - { GRUB_EFI_LOADED_IMAGE_PROTOCOL_GUID, "loaded image" }, - { GRUB_EFI_DEVICE_PATH_TO_TEXT_PROTOCOL_GUID, "device path to text" }, - { GRUB_EFI_DEVICE_PATH_UTILITIES_PROTOCOL_GUID, "device path utilities" }, - { GRUB_EFI_DEVICE_PATH_FROM_TEXT_PROTOCOL_GUID, "device path from text" }, - { GRUB_EFI_HII_CONFIG_ROUTING_PROTOCOL_GUID, "HII config routing" }, - { GRUB_EFI_HII_DATABASE_PROTOCOL_GUID, "HII database" }, - { GRUB_EFI_HII_STRING_PROTOCOL_GUID, "HII string" }, - { GRUB_EFI_HII_IMAGE_PROTOCOL_GUID, "HII image" }, - { GRUB_EFI_HII_FONT_PROTOCOL_GUID, "HII font" }, - { GRUB_EFI_COMPONENT_NAME2_PROTOCOL_GUID, "component name 2" }, - { GRUB_EFI_HII_CONFIGURATION_ACCESS_PROTOCOL_GUID, - "HII configuration access" }, - { GRUB_EFI_USB_IO_PROTOCOL_GUID, "USB I/O" }, - }; - -static grub_err_t -grub_cmd_lsefi (grub_command_t cmd __attribute__ ((unused)), - int argc __attribute__ ((unused)), - char **args __attribute__ ((unused))) -{ - grub_efi_handle_t *handles; - grub_efi_uintn_t num_handles; - unsigned i, j, k; - - handles = grub_efi_locate_handle (GRUB_EFI_ALL_HANDLES, - NULL, NULL, &num_handles); - - for (i = 0; i < num_handles; i++) - { - grub_efi_handle_t handle = handles[i]; - grub_efi_status_t status; - grub_efi_uintn_t num_protocols; - grub_efi_packed_guid_t **protocols; - grub_efi_device_path_t *dp; - - grub_printf ("Handle %p\n", handle); - - dp = grub_efi_get_device_path (handle); - if (dp) - { - grub_printf (" "); - grub_efi_print_device_path (dp); - } - - status = efi_call_3 (grub_efi_system_table->boot_services->protocols_per_handle, - handle, &protocols, &num_protocols); - if (status != GRUB_EFI_SUCCESS) { - grub_printf ("Unable to retrieve protocols\n"); - continue; - } - for (j = 0; j < num_protocols; j++) - { - for (k = 0; k < ARRAY_SIZE (known_protocols); k++) - if (grub_memcmp (protocols[j], &known_protocols[k].guid, - sizeof (known_protocols[k].guid)) == 0) - break; - if (k < ARRAY_SIZE (known_protocols)) - grub_printf (" %s\n", known_protocols[k].name); - else - grub_printf (" %08x-%04x-%04x-%02x%02x-%02x%02x%02x%02x%02x%02x\n", - protocols[j]->data1, - protocols[j]->data2, - protocols[j]->data3, - (unsigned) protocols[j]->data4[0], - (unsigned) protocols[j]->data4[1], - (unsigned) protocols[j]->data4[2], - (unsigned) protocols[j]->data4[3], - (unsigned) protocols[j]->data4[4], - (unsigned) protocols[j]->data4[5], - (unsigned) protocols[j]->data4[6], - (unsigned) protocols[j]->data4[7]); - } - - } - - return 0; -} - -static grub_command_t cmd; - -GRUB_MOD_INIT(lsefi) -{ - cmd = grub_register_command ("lsefi", grub_cmd_lsefi, - NULL, "Display EFI handles."); -} - -GRUB_MOD_FINI(lsefi) -{ - grub_unregister_command (cmd); -} diff --git a/thirdparty/grub-2.04/grub-core/commands/efi/lsefimmap.c b/thirdparty/grub-2.04/grub-core/commands/efi/lsefimmap.c deleted file mode 100644 index c85ff7f36..000000000 --- a/thirdparty/grub-2.04/grub-core/commands/efi/lsefimmap.c +++ /dev/null @@ -1,160 +0,0 @@ -/* lsefimemmap.c - Display memory map. */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2008 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ -#include -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -#define ADD_MEMORY_DESCRIPTOR(desc, size) \ - ((grub_efi_memory_descriptor_t *) ((char *) (desc) + (size))) - -static grub_err_t -grub_cmd_lsefimmap (grub_command_t cmd __attribute__ ((unused)), - int argc __attribute__ ((unused)), - char **args __attribute__ ((unused))) -{ - grub_efi_uintn_t map_size; - grub_efi_memory_descriptor_t *memory_map; - grub_efi_memory_descriptor_t *memory_map_end; - grub_efi_memory_descriptor_t *desc; - grub_efi_uintn_t desc_size; - - map_size = 0; - if (grub_efi_get_memory_map (&map_size, NULL, NULL, &desc_size, 0) < 0) - return 0; - - memory_map = grub_malloc (map_size); - if (memory_map == NULL) - return grub_errno; - if (grub_efi_get_memory_map (&map_size, memory_map, NULL, &desc_size, 0) <= 0) - goto fail; - - grub_printf - ("Type Physical start - end #Pages " - " Size Attributes\n"); - memory_map_end = ADD_MEMORY_DESCRIPTOR (memory_map, map_size); - for (desc = memory_map; - desc < memory_map_end; - desc = ADD_MEMORY_DESCRIPTOR (desc, desc_size)) - { - grub_efi_uint64_t size; - grub_efi_uint64_t attr; - static const char types_str[][9] = - { - "reserved", - "ldr-code", - "ldr-data", - "BS-code ", - "BS-data ", - "RT-code ", - "RT-data ", - "conv-mem", - "unusable", - "ACPI-rec", - "ACPI-nvs", - "MMIO ", - "IO-ports", - "PAL-code", - "persist ", - }; - if (desc->type < ARRAY_SIZE (types_str)) - grub_printf ("%s ", types_str[desc->type]); - else - grub_printf ("Unk %02x ", desc->type); - - grub_printf (" %016" PRIxGRUB_UINT64_T "-%016" PRIxGRUB_UINT64_T - " %08" PRIxGRUB_UINT64_T, - desc->physical_start, - desc->physical_start + (desc->num_pages << 12) - 1, - desc->num_pages); - - size = desc->num_pages << 12; /* 4 KiB page size */ - /* - * Since size is a multiple of 4 KiB, no need to handle units - * of just Bytes (which would use a mask of 0x3ff). - * - * 14 characters would support the largest possible number of 4 KiB - * pages that are not a multiple of larger units (e.g., MiB): - * 17592186044415 (0xffffff_fffff000), but that uses a lot of - * whitespace for a rare case. 6 characters usually suffices; - * columns will be off if not, but this is preferable to rounding. - */ - if (size & 0xfffff) - grub_printf (" %6" PRIuGRUB_UINT64_T "KiB", size >> 10); - else if (size & 0x3fffffff) - grub_printf (" %6" PRIuGRUB_UINT64_T "MiB", size >> 20); - else if (size & 0xffffffffff) - grub_printf (" %6" PRIuGRUB_UINT64_T "GiB", size >> 30); - else if (size & 0x3ffffffffffff) - grub_printf (" %6" PRIuGRUB_UINT64_T "TiB", size >> 40); - else if (size & 0xfffffffffffffff) - grub_printf (" %6" PRIuGRUB_UINT64_T "PiB", size >> 50); - else - grub_printf (" %6" PRIuGRUB_UINT64_T "EiB", size >> 60); - - attr = desc->attribute; - if (attr & GRUB_EFI_MEMORY_RUNTIME) - grub_printf (" RT"); - if (attr & GRUB_EFI_MEMORY_UC) - grub_printf (" UC"); - if (attr & GRUB_EFI_MEMORY_WC) - grub_printf (" WC"); - if (attr & GRUB_EFI_MEMORY_WT) - grub_printf (" WT"); - if (attr & GRUB_EFI_MEMORY_WB) - grub_printf (" WB"); - if (attr & GRUB_EFI_MEMORY_UCE) - grub_printf (" UCE"); - if (attr & GRUB_EFI_MEMORY_WP) - grub_printf (" WP"); - if (attr & GRUB_EFI_MEMORY_RP) - grub_printf (" RP"); - if (attr & GRUB_EFI_MEMORY_XP) - grub_printf (" XP"); - if (attr & GRUB_EFI_MEMORY_NV) - grub_printf (" NV"); - if (attr & GRUB_EFI_MEMORY_MORE_RELIABLE) - grub_printf (" MR"); - if (attr & GRUB_EFI_MEMORY_RO) - grub_printf (" RO"); - - grub_printf ("\n"); - } - - fail: - grub_free (memory_map); - return 0; -} - -static grub_command_t cmd; - -GRUB_MOD_INIT(lsefimmap) -{ - cmd = grub_register_command ("lsefimmap", grub_cmd_lsefimmap, - "", "Display EFI memory map."); -} - -GRUB_MOD_FINI(lsefimmap) -{ - grub_unregister_command (cmd); -} diff --git a/thirdparty/grub-2.04/grub-core/commands/efi/lsefisystab.c b/thirdparty/grub-2.04/grub-core/commands/efi/lsefisystab.c deleted file mode 100644 index df1030221..000000000 --- a/thirdparty/grub-2.04/grub-core/commands/efi/lsefisystab.c +++ /dev/null @@ -1,121 +0,0 @@ -/* lsefisystab.c - Display EFI systab. */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2008 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ -#include -#include -#include -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -struct guid_mapping -{ - grub_efi_guid_t guid; - const char *name; -}; - -static const struct guid_mapping guid_mappings[] = - { - { GRUB_EFI_ACPI_20_TABLE_GUID, "ACPI-2.0"}, - { GRUB_EFI_ACPI_TABLE_GUID, "ACPI-1.0"}, - { GRUB_EFI_CRC32_GUIDED_SECTION_EXTRACTION_GUID, - "CRC32 GUIDED SECTION EXTRACTION"}, - { GRUB_EFI_DEBUG_IMAGE_INFO_TABLE_GUID, "DEBUG IMAGE INFO"}, - { GRUB_EFI_DXE_SERVICES_TABLE_GUID, "DXE SERVICES"}, - { GRUB_EFI_HCDP_TABLE_GUID, "HCDP"}, - { GRUB_EFI_HOB_LIST_GUID, "HOB LIST"}, - { GRUB_EFI_LZMA_CUSTOM_DECOMPRESS_GUID, "LZMA CUSTOM DECOMPRESS"}, - { GRUB_EFI_MEMORY_TYPE_INFORMATION_GUID, "MEMORY TYPE INFO"}, - { GRUB_EFI_MPS_TABLE_GUID, "MPS"}, - { GRUB_EFI_SAL_TABLE_GUID, "SAL"}, - { GRUB_EFI_SMBIOS_TABLE_GUID, "SMBIOS"}, - { GRUB_EFI_SYSTEM_RESOURCE_TABLE_GUID, "SYSTEM RESOURCE TABLE"}, - { GRUB_EFI_TIANO_CUSTOM_DECOMPRESS_GUID, "TIANO CUSTOM DECOMPRESS"}, - { GRUB_EFI_TSC_FREQUENCY_GUID, "TSC FREQUENCY"}, - }; - -static grub_err_t -grub_cmd_lsefisystab (struct grub_command *cmd __attribute__ ((unused)), - int argc __attribute__ ((unused)), - char **args __attribute__ ((unused))) -{ - const grub_efi_system_table_t *st = grub_efi_system_table; - grub_efi_configuration_table_t *t; - unsigned int i; - - grub_printf ("Address: %p\n", st); - grub_printf ("Signature: %016" PRIxGRUB_UINT64_T " revision: %08x\n", - st->hdr.signature, st->hdr.revision); - { - char *vendor; - grub_uint16_t *vendor_utf16; - grub_printf ("Vendor: "); - - for (vendor_utf16 = st->firmware_vendor; *vendor_utf16; vendor_utf16++); - vendor = grub_malloc (4 * (vendor_utf16 - st->firmware_vendor) + 1); - if (!vendor) - return grub_errno; - *grub_utf16_to_utf8 ((grub_uint8_t *) vendor, st->firmware_vendor, - vendor_utf16 - st->firmware_vendor) = 0; - grub_printf ("%s", vendor); - grub_free (vendor); - } - - grub_printf (", Version=%x\n", st->firmware_revision); - - grub_printf ("%lld tables:\n", (long long) st->num_table_entries); - t = st->configuration_table; - for (i = 0; i < st->num_table_entries; i++) - { - unsigned int j; - - grub_printf ("%p ", t->vendor_table); - - grub_printf ("%08x-%04x-%04x-", - t->vendor_guid.data1, t->vendor_guid.data2, - t->vendor_guid.data3); - for (j = 0; j < 8; j++) - grub_printf ("%02x", t->vendor_guid.data4[j]); - - for (j = 0; j < ARRAY_SIZE (guid_mappings); j++) - if (grub_memcmp (&guid_mappings[j].guid, &t->vendor_guid, - sizeof (grub_efi_guid_t)) == 0) - grub_printf (" %s", guid_mappings[j].name); - - grub_printf ("\n"); - t++; - } - return GRUB_ERR_NONE; -} - -static grub_command_t cmd; - -GRUB_MOD_INIT(lsefisystab) -{ - cmd = grub_register_command ("lsefisystab", grub_cmd_lsefisystab, - "", "Display EFI system tables."); -} - -GRUB_MOD_FINI(lsefisystab) -{ - grub_unregister_command (cmd); -} diff --git a/thirdparty/grub-2.04/grub-core/commands/efi/lssal.c b/thirdparty/grub-2.04/grub-core/commands/efi/lssal.c deleted file mode 100644 index 5084ddd8b..000000000 --- a/thirdparty/grub-2.04/grub-core/commands/efi/lssal.c +++ /dev/null @@ -1,169 +0,0 @@ -/* lssal.c - Display EFI SAL systab. */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2008 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ -#include -#include -#include -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -static void -disp_sal (void *table) -{ - struct grub_efi_sal_system_table *t = table; - void *desc; - grub_uint32_t len, l, i; - - grub_printf ("SAL rev: %02x, signature: %x, len:%x\n", - t->sal_rev, t->signature, t->total_table_len); - grub_printf ("nbr entry: %d, chksum: %02x, SAL version A: %02x B: %02x\n", - t->entry_count, t->checksum, - t->sal_a_version, t->sal_b_version); - grub_printf ("OEM-ID: %-32s\n", t->oem_id); - grub_printf ("Product-ID: %-32s\n", t->product_id); - - desc = t->entries; - len = t->total_table_len - sizeof (struct grub_efi_sal_system_table); - if (t->total_table_len <= sizeof (struct grub_efi_sal_system_table)) - return; - for (i = 0; i < t->entry_count; i++) - { - switch (*(grub_uint8_t *) desc) - { - case GRUB_EFI_SAL_SYSTEM_TABLE_TYPE_ENTRYPOINT_DESCRIPTOR: - { - struct grub_efi_sal_system_table_entrypoint_descriptor *c = desc; - l = sizeof (*c); - grub_printf (" Entry point: PAL=%016" PRIxGRUB_UINT64_T - " SAL=%016" PRIxGRUB_UINT64_T " GP=%016" - PRIxGRUB_UINT64_T "\n", - c->pal_proc_addr, c->sal_proc_addr, - c->global_data_ptr); - } - break; - case GRUB_EFI_SAL_SYSTEM_TABLE_TYPE_MEMORY_DESCRIPTOR: - { - struct grub_efi_sal_system_table_memory_descriptor *c = desc; - l = sizeof (*c); - grub_printf (" Memory descriptor entry addr=%016" PRIxGRUB_UINT64_T - " len=%" PRIuGRUB_UINT64_T "KB\n", - c->addr, c->len * 4); - grub_printf (" sal_used=%d attr=%x AR=%x attr_mask=%x " - "type=%x usage=%x\n", - c->sal_used, c->attr, c->ar, c->attr_mask, c->mem_type, - c->usage); - } - break; - case GRUB_EFI_SAL_SYSTEM_TABLE_TYPE_PLATFORM_FEATURES: - { - struct grub_efi_sal_system_table_platform_features *c = desc; - l = sizeof (*c); - grub_printf (" Platform features: %02x", c->flags); - if (c->flags & GRUB_EFI_SAL_SYSTEM_TABLE_PLATFORM_FEATURE_BUSLOCK) - grub_printf (" BusLock"); - if (c->flags & GRUB_EFI_SAL_SYSTEM_TABLE_PLATFORM_FEATURE_IRQREDIRECT) - grub_printf (" IrqRedirect"); - if (c->flags & GRUB_EFI_SAL_SYSTEM_TABLE_PLATFORM_FEATURE_IPIREDIRECT) - - grub_printf (" IPIRedirect"); - if (c->flags & GRUB_EFI_SAL_SYSTEM_TABLE_PLATFORM_FEATURE_ITCDRIFT) - - grub_printf (" ITCDrift"); - grub_printf ("\n"); - } - break; - case GRUB_EFI_SAL_SYSTEM_TABLE_TYPE_TRANSLATION_REGISTER_DESCRIPTOR: - { - struct grub_efi_sal_system_table_translation_register_descriptor *c - = desc; - l = sizeof (*c); - grub_printf (" TR type=%d num=%d va=%016" PRIxGRUB_UINT64_T - " pte=%016" PRIxGRUB_UINT64_T "\n", - c->register_type, c->register_number, - c->addr, c->page_size); - } - break; - case GRUB_EFI_SAL_SYSTEM_TABLE_TYPE_PURGE_TRANSLATION_COHERENCE: - { - struct grub_efi_sal_system_table_purge_translation_coherence *c - = desc; - l = sizeof (*c); - grub_printf (" PTC coherence nbr=%d addr=%016" PRIxGRUB_UINT64_T "\n", - c->ndomains, c->coherence); - } - break; - case GRUB_EFI_SAL_SYSTEM_TABLE_TYPE_AP_WAKEUP: - { - struct grub_efi_sal_system_table_ap_wakeup *c = desc; - l = sizeof (*c); - grub_printf (" AP wake-up: mec=%d vect=%" PRIxGRUB_UINT64_T "\n", - c->mechanism, c->vector); - } - break; - default: - grub_printf (" unknown entry 0x%x\n", *(grub_uint8_t *)desc); - return; - } - desc = (grub_uint8_t *)desc + l; - if (len <= l) - return; - len -= l; - } -} - -static grub_err_t -grub_cmd_lssal (struct grub_command *cmd __attribute__ ((unused)), - int argc __attribute__ ((unused)), - char **args __attribute__ ((unused))) -{ - const grub_efi_system_table_t *st = grub_efi_system_table; - grub_efi_configuration_table_t *t = st->configuration_table; - unsigned int i; - grub_efi_packed_guid_t guid = GRUB_EFI_SAL_TABLE_GUID; - - for (i = 0; i < st->num_table_entries; i++) - { - if (grub_memcmp (&guid, &t->vendor_guid, - sizeof (grub_efi_packed_guid_t)) == 0) - { - disp_sal (t->vendor_table); - return GRUB_ERR_NONE; - } - t++; - } - grub_printf ("SAL not found\n"); - return GRUB_ERR_NONE; -} - -static grub_command_t cmd; - -GRUB_MOD_INIT(lssal) -{ - cmd = grub_register_command ("lssal", grub_cmd_lssal, "", - "Display SAL system table."); -} - -GRUB_MOD_FINI(lssal) -{ - grub_unregister_command (cmd); -} diff --git a/thirdparty/grub-2.04/grub-core/commands/efi/shim_lock.c b/thirdparty/grub-2.04/grub-core/commands/efi/shim_lock.c deleted file mode 100644 index 764098cfc..000000000 --- a/thirdparty/grub-2.04/grub-core/commands/efi/shim_lock.c +++ /dev/null @@ -1,142 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2017 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - * - * EFI shim lock verifier. - */ - -#include -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -#define GRUB_EFI_SHIM_LOCK_GUID \ - { 0x605dab50, 0xe046, 0x4300, \ - { 0xab, 0xb6, 0x3d, 0xd8, 0x10, 0xdd, 0x8b, 0x23 } \ - } - -struct grub_efi_shim_lock_protocol -{ - grub_efi_status_t - (*verify) (void *buffer, grub_uint32_t size); -}; -typedef struct grub_efi_shim_lock_protocol grub_efi_shim_lock_protocol_t; - -static grub_efi_guid_t shim_lock_guid = GRUB_EFI_SHIM_LOCK_GUID; -static grub_efi_shim_lock_protocol_t *sl; - -/* List of modules which cannot be loaded if UEFI secure boot mode is enabled. */ -static const char * const disabled_mods[] = {"iorw", "memrw", "wrmsr", NULL}; - -static grub_err_t -shim_lock_init (grub_file_t io, enum grub_file_type type, - void **context __attribute__ ((unused)), - enum grub_verify_flags *flags) -{ - const char *b, *e; - int i; - - *flags = GRUB_VERIFY_FLAGS_SKIP_VERIFICATION; - - if (!sl) - return GRUB_ERR_NONE; - - switch (type & GRUB_FILE_TYPE_MASK) - { - case GRUB_FILE_TYPE_GRUB_MODULE: - /* Establish GRUB module name. */ - b = grub_strrchr (io->name, '/'); - e = grub_strrchr (io->name, '.'); - - b = b ? (b + 1) : io->name; - e = e ? e : io->name + grub_strlen (io->name); - e = (e > b) ? e : io->name + grub_strlen (io->name); - - for (i = 0; disabled_mods[i]; i++) - if (!grub_strncmp (b, disabled_mods[i], grub_strlen (b) - grub_strlen (e))) - { - grub_error (GRUB_ERR_ACCESS_DENIED, - N_("module cannot be loaded in UEFI secure boot mode: %s"), - io->name); - return GRUB_ERR_ACCESS_DENIED; - } - - /* Fall through. */ - - case GRUB_FILE_TYPE_ACPI_TABLE: - case GRUB_FILE_TYPE_DEVICE_TREE_IMAGE: - *flags = GRUB_VERIFY_FLAGS_DEFER_AUTH; - - return GRUB_ERR_NONE; - - case GRUB_FILE_TYPE_LINUX_KERNEL: - case GRUB_FILE_TYPE_MULTIBOOT_KERNEL: - case GRUB_FILE_TYPE_BSD_KERNEL: - case GRUB_FILE_TYPE_XNU_KERNEL: - case GRUB_FILE_TYPE_PLAN9_KERNEL: - for (i = 0; disabled_mods[i]; i++) - if (grub_dl_get (disabled_mods[i])) - { - grub_error (GRUB_ERR_ACCESS_DENIED, - N_("cannot boot due to dangerous module in memory: %s"), - disabled_mods[i]); - return GRUB_ERR_ACCESS_DENIED; - } - - *flags = GRUB_VERIFY_FLAGS_SINGLE_CHUNK; - - /* Fall through. */ - - default: - return GRUB_ERR_NONE; - } -} - -static grub_err_t -shim_lock_write (void *context __attribute__ ((unused)), void *buf, grub_size_t size) -{ - if (sl->verify (buf, size) != GRUB_EFI_SUCCESS) - return grub_error (GRUB_ERR_BAD_SIGNATURE, N_("bad shim signature")); - - return GRUB_ERR_NONE; -} - -struct grub_file_verifier shim_lock = - { - .name = "shim_lock", - .init = shim_lock_init, - .write = shim_lock_write - }; - -GRUB_MOD_INIT(shim_lock) -{ - sl = grub_efi_locate_protocol (&shim_lock_guid, 0); - grub_verifier_register (&shim_lock); - - if (!sl) - return; - - grub_dl_set_persistent (mod); -} - -GRUB_MOD_FINI(shim_lock) -{ - grub_verifier_unregister (&shim_lock); -} diff --git a/thirdparty/grub-2.04/grub-core/commands/efi/tpm.c b/thirdparty/grub-2.04/grub-core/commands/efi/tpm.c deleted file mode 100644 index 32909c192..000000000 --- a/thirdparty/grub-2.04/grub-core/commands/efi/tpm.c +++ /dev/null @@ -1,333 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2018 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - * - * EFI TPM support code. - */ - -#include -#include -#include -#include -#include -#include -#include -#include - -typedef TCG_PCR_EVENT grub_tpm_event_t; - -static grub_efi_guid_t tpm_guid = EFI_TPM_GUID; -static grub_efi_guid_t tpm2_guid = EFI_TPM2_GUID; - -static grub_efi_handle_t *grub_tpm_handle; -static grub_uint8_t grub_tpm_version; - -static grub_int8_t tpm1_present = -1; -static grub_int8_t tpm2_present = -1; - -static grub_efi_boolean_t -grub_tpm1_present (grub_efi_tpm_protocol_t *tpm) -{ - grub_efi_status_t status; - TCG_EFI_BOOT_SERVICE_CAPABILITY caps; - grub_uint32_t flags; - grub_efi_physical_address_t eventlog, lastevent; - - if (tpm1_present != -1) - return (grub_efi_boolean_t) tpm1_present; - - caps.Size = (grub_uint8_t) sizeof (caps); - - status = efi_call_5 (tpm->status_check, tpm, &caps, &flags, &eventlog, - &lastevent); - - if (status != GRUB_EFI_SUCCESS || caps.TPMDeactivatedFlag - || !caps.TPMPresentFlag) - return tpm1_present = 0; - - return tpm1_present = 1; -} - -static grub_efi_boolean_t -grub_tpm2_present (grub_efi_tpm2_protocol_t *tpm) -{ - grub_efi_status_t status; - EFI_TCG2_BOOT_SERVICE_CAPABILITY caps; - - caps.Size = (grub_uint8_t) sizeof (caps); - - if (tpm2_present != -1) - return (grub_efi_boolean_t) tpm2_present; - - status = efi_call_2 (tpm->get_capability, tpm, &caps); - - if (status != GRUB_EFI_SUCCESS || !caps.TPMPresentFlag) - return tpm2_present = 0; - - return tpm2_present = 1; -} - -static grub_efi_boolean_t -grub_tpm_handle_find (grub_efi_handle_t *tpm_handle, - grub_efi_uint8_t *protocol_version) -{ - grub_efi_handle_t *handles; - grub_efi_uintn_t num_handles; - - if (grub_tpm_handle != NULL) - { - *tpm_handle = grub_tpm_handle; - *protocol_version = grub_tpm_version; - return 1; - } - - handles = grub_efi_locate_handle (GRUB_EFI_BY_PROTOCOL, &tpm_guid, NULL, - &num_handles); - if (handles && num_handles > 0) - { - grub_tpm_handle = handles[0]; - *tpm_handle = handles[0]; - grub_tpm_version = 1; - *protocol_version = 1; - return 1; - } - - handles = grub_efi_locate_handle (GRUB_EFI_BY_PROTOCOL, &tpm2_guid, NULL, - &num_handles); - if (handles && num_handles > 0) - { - grub_tpm_handle = handles[0]; - *tpm_handle = handles[0]; - grub_tpm_version = 2; - *protocol_version = 2; - return 1; - } - - return 0; -} - -static grub_err_t -grub_tpm1_execute (grub_efi_handle_t tpm_handle, - PassThroughToTPM_InputParamBlock *inbuf, - PassThroughToTPM_OutputParamBlock *outbuf) -{ - grub_efi_status_t status; - grub_efi_tpm_protocol_t *tpm; - grub_uint32_t inhdrsize = sizeof (*inbuf) - sizeof (inbuf->TPMOperandIn); - grub_uint32_t outhdrsize = - sizeof (*outbuf) - sizeof (outbuf->TPMOperandOut); - - tpm = grub_efi_open_protocol (tpm_handle, &tpm_guid, - GRUB_EFI_OPEN_PROTOCOL_GET_PROTOCOL); - - if (!grub_tpm1_present (tpm)) - return 0; - - /* UEFI TPM protocol takes the raw operand block, no param block header. */ - status = efi_call_5 (tpm->pass_through_to_tpm, tpm, - inbuf->IPBLength - inhdrsize, inbuf->TPMOperandIn, - outbuf->OPBLength - outhdrsize, outbuf->TPMOperandOut); - - switch (status) - { - case GRUB_EFI_SUCCESS: - return 0; - case GRUB_EFI_DEVICE_ERROR: - return grub_error (GRUB_ERR_IO, N_("Command failed")); - case GRUB_EFI_INVALID_PARAMETER: - return grub_error (GRUB_ERR_BAD_ARGUMENT, N_("Invalid parameter")); - case GRUB_EFI_BUFFER_TOO_SMALL: - return grub_error (GRUB_ERR_BAD_ARGUMENT, - N_("Output buffer too small")); - case GRUB_EFI_NOT_FOUND: - return grub_error (GRUB_ERR_UNKNOWN_DEVICE, N_("TPM unavailable")); - default: - return grub_error (GRUB_ERR_UNKNOWN_DEVICE, N_("Unknown TPM error")); - } -} - -static grub_err_t -grub_tpm2_execute (grub_efi_handle_t tpm_handle, - PassThroughToTPM_InputParamBlock *inbuf, - PassThroughToTPM_OutputParamBlock *outbuf) -{ - grub_efi_status_t status; - grub_efi_tpm2_protocol_t *tpm; - grub_uint32_t inhdrsize = sizeof (*inbuf) - sizeof (inbuf->TPMOperandIn); - grub_uint32_t outhdrsize = - sizeof (*outbuf) - sizeof (outbuf->TPMOperandOut); - - tpm = grub_efi_open_protocol (tpm_handle, &tpm2_guid, - GRUB_EFI_OPEN_PROTOCOL_GET_PROTOCOL); - - if (!grub_tpm2_present (tpm)) - return 0; - - /* UEFI TPM protocol takes the raw operand block, no param block header. */ - status = efi_call_5 (tpm->submit_command, tpm, - inbuf->IPBLength - inhdrsize, inbuf->TPMOperandIn, - outbuf->OPBLength - outhdrsize, outbuf->TPMOperandOut); - - switch (status) - { - case GRUB_EFI_SUCCESS: - return 0; - case GRUB_EFI_DEVICE_ERROR: - return grub_error (GRUB_ERR_IO, N_("Command failed")); - case GRUB_EFI_INVALID_PARAMETER: - return grub_error (GRUB_ERR_BAD_ARGUMENT, N_("Invalid parameter")); - case GRUB_EFI_BUFFER_TOO_SMALL: - return grub_error (GRUB_ERR_BAD_ARGUMENT, - N_("Output buffer too small")); - case GRUB_EFI_NOT_FOUND: - return grub_error (GRUB_ERR_UNKNOWN_DEVICE, N_("TPM unavailable")); - default: - return grub_error (GRUB_ERR_UNKNOWN_DEVICE, N_("Unknown TPM error")); - } -} - -grub_err_t -grub_tpm_execute (PassThroughToTPM_InputParamBlock *inbuf, - PassThroughToTPM_OutputParamBlock *outbuf) -{ - grub_efi_handle_t tpm_handle; - grub_uint8_t protocol_version; - - /* Absence of a TPM isn't a failure. */ - if (!grub_tpm_handle_find (&tpm_handle, &protocol_version)) - return 0; - - if (protocol_version == 1) - return grub_tpm1_execute (tpm_handle, inbuf, outbuf); - else - return grub_tpm2_execute (tpm_handle, inbuf, outbuf); -} - -static grub_err_t -grub_tpm1_log_event (grub_efi_handle_t tpm_handle, unsigned char *buf, - grub_size_t size, grub_uint8_t pcr, - const char *description) -{ - grub_tpm_event_t *event; - grub_efi_status_t status; - grub_efi_tpm_protocol_t *tpm; - grub_efi_physical_address_t lastevent; - grub_uint32_t algorithm; - grub_uint32_t eventnum = 0; - - tpm = grub_efi_open_protocol (tpm_handle, &tpm_guid, - GRUB_EFI_OPEN_PROTOCOL_GET_PROTOCOL); - - if (!grub_tpm1_present (tpm)) - return 0; - - event = grub_zalloc (sizeof (*event) + grub_strlen (description) + 1); - if (!event) - return grub_error (GRUB_ERR_OUT_OF_MEMORY, - N_("cannot allocate TPM event buffer")); - - event->PCRIndex = pcr; - event->EventType = EV_IPL; - event->EventSize = grub_strlen (description) + 1; - grub_memcpy (event->Event, description, event->EventSize); - - algorithm = TCG_ALG_SHA; - status = efi_call_7 (tpm->log_extend_event, tpm, (grub_addr_t) buf, (grub_uint64_t) size, - algorithm, event, &eventnum, &lastevent); - - switch (status) - { - case GRUB_EFI_SUCCESS: - return 0; - case GRUB_EFI_DEVICE_ERROR: - return grub_error (GRUB_ERR_IO, N_("Command failed")); - case GRUB_EFI_INVALID_PARAMETER: - return grub_error (GRUB_ERR_BAD_ARGUMENT, N_("Invalid parameter")); - case GRUB_EFI_BUFFER_TOO_SMALL: - return grub_error (GRUB_ERR_BAD_ARGUMENT, - N_("Output buffer too small")); - case GRUB_EFI_NOT_FOUND: - return grub_error (GRUB_ERR_UNKNOWN_DEVICE, N_("TPM unavailable")); - default: - return grub_error (GRUB_ERR_UNKNOWN_DEVICE, N_("Unknown TPM error")); - } -} - -static grub_err_t -grub_tpm2_log_event (grub_efi_handle_t tpm_handle, unsigned char *buf, - grub_size_t size, grub_uint8_t pcr, - const char *description) -{ - EFI_TCG2_EVENT *event; - grub_efi_status_t status; - grub_efi_tpm2_protocol_t *tpm; - - tpm = grub_efi_open_protocol (tpm_handle, &tpm2_guid, - GRUB_EFI_OPEN_PROTOCOL_GET_PROTOCOL); - - if (!grub_tpm2_present (tpm)) - return 0; - - event = - grub_zalloc (sizeof (EFI_TCG2_EVENT) + grub_strlen (description) + 1); - if (!event) - return grub_error (GRUB_ERR_OUT_OF_MEMORY, - N_("cannot allocate TPM event buffer")); - - event->Header.HeaderSize = sizeof (EFI_TCG2_EVENT_HEADER); - event->Header.HeaderVersion = 1; - event->Header.PCRIndex = pcr; - event->Header.EventType = EV_IPL; - event->Size = - sizeof (*event) - sizeof (event->Event) + grub_strlen (description) + 1; - grub_memcpy (event->Event, description, grub_strlen (description) + 1); - - status = efi_call_5 (tpm->hash_log_extend_event, tpm, 0, (grub_addr_t) buf, - (grub_uint64_t) size, event); - - switch (status) - { - case GRUB_EFI_SUCCESS: - return 0; - case GRUB_EFI_DEVICE_ERROR: - return grub_error (GRUB_ERR_IO, N_("Command failed")); - case GRUB_EFI_INVALID_PARAMETER: - return grub_error (GRUB_ERR_BAD_ARGUMENT, N_("Invalid parameter")); - case GRUB_EFI_BUFFER_TOO_SMALL: - return grub_error (GRUB_ERR_BAD_ARGUMENT, - N_("Output buffer too small")); - case GRUB_EFI_NOT_FOUND: - return grub_error (GRUB_ERR_UNKNOWN_DEVICE, N_("TPM unavailable")); - default: - return grub_error (GRUB_ERR_UNKNOWN_DEVICE, N_("Unknown TPM error")); - } -} - -grub_err_t -grub_tpm_log_event (unsigned char *buf, grub_size_t size, grub_uint8_t pcr, - const char *description) -{ - grub_efi_handle_t tpm_handle; - grub_efi_uint8_t protocol_version; - - if (!grub_tpm_handle_find (&tpm_handle, &protocol_version)) - return 0; - - if (protocol_version == 1) - return grub_tpm1_log_event (tpm_handle, buf, size, pcr, description); - else - return grub_tpm2_log_event (tpm_handle, buf, size, pcr, description); -} diff --git a/thirdparty/grub-2.04/grub-core/commands/eval.c b/thirdparty/grub-2.04/grub-core/commands/eval.c deleted file mode 100644 index f826a4f22..000000000 --- a/thirdparty/grub-2.04/grub-core/commands/eval.c +++ /dev/null @@ -1,71 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -static grub_err_t -grub_cmd_eval (grub_command_t cmd __attribute__((__unused__)), - int argc, char *argv[]) -{ - int i; - grub_size_t size = argc; /* +1 for final zero */ - char *str, *p; - grub_err_t ret; - - if (argc == 0) - return GRUB_ERR_NONE; - - for (i = 0; i < argc; i++) - size += grub_strlen (argv[i]); - - str = p = grub_malloc (size); - if (!str) - return grub_errno; - - for (i = 0; i < argc; i++) - { - p = grub_stpcpy (p, argv[i]); - *p++ = ' '; - } - *--p = '\0'; - - ret = grub_script_execute_sourcecode (str); - grub_free (str); - return ret; -} - -static grub_command_t cmd; - -GRUB_MOD_INIT(eval) -{ - cmd = grub_register_command ("eval", grub_cmd_eval, N_("STRING ..."), - N_("Evaluate arguments as GRUB commands")); -} - -GRUB_MOD_FINI(eval) -{ - grub_unregister_command (cmd); -} - diff --git a/thirdparty/grub-2.04/grub-core/commands/extcmd.c b/thirdparty/grub-2.04/grub-core/commands/extcmd.c deleted file mode 100644 index 69574e2b0..000000000 --- a/thirdparty/grub-2.04/grub-core/commands/extcmd.c +++ /dev/null @@ -1,118 +0,0 @@ -/* extcmd.c - support extended command */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -grub_err_t -grub_extcmd_dispatcher (struct grub_command *cmd, int argc, char **args, - struct grub_script *script) -{ - int new_argc; - char **new_args; - struct grub_arg_list *state; - struct grub_extcmd_context context; - grub_err_t ret; - grub_extcmd_t ext = cmd->data; - - context.state = 0; - context.extcmd = ext; - context.script = script; - - if (! ext->options) - { - ret = (ext->func) (&context, argc, args); - return ret; - } - - state = grub_arg_list_alloc (ext, argc, args); - if (grub_arg_parse (ext, argc, args, state, &new_args, &new_argc)) - { - context.state = state; - ret = (ext->func) (&context, new_argc, new_args); - grub_free (new_args); - grub_free (state); - return ret; - } - - grub_free (state); - return grub_errno; -} - -static grub_err_t -grub_extcmd_dispatch (struct grub_command *cmd, int argc, char **args) -{ - return grub_extcmd_dispatcher (cmd, argc, args, 0); -} - -grub_extcmd_t -grub_register_extcmd_prio (const char *name, grub_extcmd_func_t func, - grub_command_flags_t flags, const char *summary, - const char *description, - const struct grub_arg_option *parser, - int prio) -{ - grub_extcmd_t ext; - grub_command_t cmd; - - ext = (grub_extcmd_t) grub_malloc (sizeof (*ext)); - if (! ext) - return 0; - - cmd = grub_register_command_prio (name, grub_extcmd_dispatch, - summary, description, prio); - if (! cmd) - { - grub_free (ext); - return 0; - } - - cmd->flags = (flags | GRUB_COMMAND_FLAG_EXTCMD); - cmd->data = ext; - - ext->cmd = cmd; - ext->func = func; - ext->options = parser; - ext->data = 0; - - return ext; -} - -grub_extcmd_t -grub_register_extcmd (const char *name, grub_extcmd_func_t func, - grub_command_flags_t flags, const char *summary, - const char *description, - const struct grub_arg_option *parser) -{ - return grub_register_extcmd_prio (name, func, flags, - summary, description, parser, 1); -} - -void -grub_unregister_extcmd (grub_extcmd_t ext) -{ - grub_unregister_command (ext->cmd); - grub_free (ext); -} diff --git a/thirdparty/grub-2.04/grub-core/commands/file.c b/thirdparty/grub-2.04/grub-core/commands/file.c deleted file mode 100644 index 2574e6685..000000000 --- a/thirdparty/grub-2.04/grub-core/commands/file.c +++ /dev/null @@ -1,692 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2013 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -static const struct grub_arg_option options[] = { - {"is-i386-xen-pae-domu", 0, 0, - N_("Check if FILE can be booted as i386 PAE Xen unprivileged guest kernel"), - 0, 0}, - {"is-x86_64-xen-domu", 0, 0, - N_("Check if FILE can be booted as x86_64 Xen unprivileged guest kernel"), 0, 0}, - {"is-x86-xen-dom0", 0, 0, - N_("Check if FILE can be used as Xen x86 privileged guest kernel"), 0, 0}, - {"is-x86-multiboot", 0, 0, - N_("Check if FILE can be used as x86 multiboot kernel"), 0, 0}, - {"is-x86-multiboot2", 0, 0, - N_("Check if FILE can be used as x86 multiboot2 kernel"), 0, 0}, - {"is-arm-linux", 0, 0, - N_("Check if FILE is ARM Linux"), 0, 0}, - {"is-arm64-linux", 0, 0, - N_("Check if FILE is ARM64 Linux"), 0, 0}, - {"is-ia64-linux", 0, 0, - N_("Check if FILE is IA64 Linux"), 0, 0}, - {"is-mips-linux", 0, 0, - N_("Check if FILE is MIPS Linux"), 0, 0}, - {"is-mipsel-linux", 0, 0, - N_("Check if FILE is MIPSEL Linux"), 0, 0}, - {"is-sparc64-linux", 0, 0, - N_("Check if FILE is SPARC64 Linux"), 0, 0}, - {"is-powerpc-linux", 0, 0, - N_("Check if FILE is POWERPC Linux"), 0, 0}, - {"is-x86-linux", 0, 0, - N_("Check if FILE is x86 Linux"), 0, 0}, - {"is-x86-linux32", 0, 0, - N_("Check if FILE is x86 Linux supporting 32-bit protocol"), 0, 0}, - {"is-x86-kfreebsd", 0, 0, - N_("Check if FILE is x86 kFreeBSD"), 0, 0}, - {"is-i386-kfreebsd", 0, 0, - N_("Check if FILE is i386 kFreeBSD"), 0, 0}, - {"is-x86_64-kfreebsd", 0, 0, - N_("Check if FILE is x86_64 kFreeBSD"), 0, 0}, - - {"is-x86-knetbsd", 0, 0, - N_("Check if FILE is x86 kNetBSD"), 0, 0}, - {"is-i386-knetbsd", 0, 0, - N_("Check if FILE is i386 kNetBSD"), 0, 0}, - {"is-x86_64-knetbsd", 0, 0, - N_("Check if FILE is x86_64 kNetBSD"), 0, 0}, - - {"is-i386-efi", 0, 0, - N_("Check if FILE is i386 EFI file"), 0, 0}, - {"is-x86_64-efi", 0, 0, - N_("Check if FILE is x86_64 EFI file"), 0, 0}, - {"is-ia64-efi", 0, 0, - N_("Check if FILE is IA64 EFI file"), 0, 0}, - {"is-arm64-efi", 0, 0, - N_("Check if FILE is ARM64 EFI file"), 0, 0}, - {"is-arm-efi", 0, 0, - N_("Check if FILE is ARM EFI file"), 0, 0}, - {"is-riscv32-efi", 0, 0, - N_("Check if FILE is RISC-V 32bit EFI file"), 0, 0}, - {"is-riscv64-efi", 0, 0, - N_("Check if FILE is RISC-V 64bit EFI file"), 0, 0}, - {"is-hibernated-hiberfil", 0, 0, - N_("Check if FILE is hiberfil.sys in hibernated state"), 0, 0}, - {"is-x86_64-xnu", 0, 0, - N_("Check if FILE is x86_64 XNU (Mac OS X kernel)"), 0, 0}, - {"is-i386-xnu", 0, 0, - N_("Check if FILE is i386 XNU (Mac OS X kernel)"), 0, 0}, - {"is-xnu-hibr", 0, 0, - N_("Check if FILE is XNU (Mac OS X kernel) hibernated image"), 0, 0}, - {"is-x86-bios-bootsector", 0, 0, - N_("Check if FILE is BIOS bootsector"), 0, 0}, - {0, 0, 0, 0, 0, 0} -}; - -enum -{ - IS_PAE_DOMU, - IS_64_DOMU, - IS_DOM0, - IS_MULTIBOOT, - IS_MULTIBOOT2, - IS_ARM_LINUX, - IS_ARM64_LINUX, - IS_IA64_LINUX, - IS_MIPS_LINUX, - IS_MIPSEL_LINUX, - IS_SPARC64_LINUX, - IS_POWERPC_LINUX, - IS_X86_LINUX, - IS_X86_LINUX32, - IS_X86_KFREEBSD, - IS_X86_KFREEBSD32, - IS_X86_KFREEBSD64, - IS_X86_KNETBSD, - IS_X86_KNETBSD32, - IS_X86_KNETBSD64, - IS_32_EFI, - IS_64_EFI, - IS_IA_EFI, - IS_ARM64_EFI, - IS_ARM_EFI, - IS_RISCV_EFI, - IS_HIBERNATED, - IS_XNU64, - IS_XNU32, - IS_XNU_HIBR, - IS_BIOS_BOOTSECTOR, - OPT_TYPE_MIN = IS_PAE_DOMU, - OPT_TYPE_MAX = IS_BIOS_BOOTSECTOR -}; - - -static grub_err_t -grub_cmd_file (grub_extcmd_context_t ctxt, int argc, char **args) -{ - grub_file_t file = 0; - grub_elf_t elf = 0; - grub_err_t err; - int type = -1, i; - int ret = 0; - grub_macho_t macho = 0; - - if (argc == 0) - return grub_error (GRUB_ERR_BAD_ARGUMENT, N_("filename expected")); - for (i = OPT_TYPE_MIN; i <= OPT_TYPE_MAX; i++) - if (ctxt->state[i].set) - { - if (type == -1) - { - type = i; - continue; - } - return grub_error (GRUB_ERR_BAD_ARGUMENT, "multiple types specified"); - } - if (type == -1) - return grub_error (GRUB_ERR_BAD_ARGUMENT, "no type specified"); - - file = grub_file_open (args[0], GRUB_FILE_TYPE_XNU_KERNEL); - if (!file) - return grub_errno; - switch (type) - { - case IS_BIOS_BOOTSECTOR: - { - grub_uint16_t sig; - if (grub_file_size (file) != 512) - break; - if (grub_file_seek (file, 510) == (grub_size_t) -1) - break; - if (grub_file_read (file, &sig, 2) != 2) - break; - if (sig != grub_cpu_to_le16_compile_time (0xaa55)) - break; - ret = 1; - break; - } - case IS_IA64_LINUX: - { - Elf64_Ehdr ehdr; - - if (grub_file_read (file, &ehdr, sizeof (ehdr)) != sizeof (ehdr)) - break; - - if (ehdr.e_ident[EI_MAG0] != ELFMAG0 - || ehdr.e_ident[EI_MAG1] != ELFMAG1 - || ehdr.e_ident[EI_MAG2] != ELFMAG2 - || ehdr.e_ident[EI_MAG3] != ELFMAG3 - || ehdr.e_ident[EI_VERSION] != EV_CURRENT - || ehdr.e_version != EV_CURRENT) - break; - - if (ehdr.e_ident[EI_CLASS] != ELFCLASS64 - || ehdr.e_ident[EI_DATA] != ELFDATA2LSB - || ehdr.e_machine != grub_cpu_to_le16_compile_time (EM_IA_64)) - break; - - ret = 1; - - break; - } - - case IS_SPARC64_LINUX: - { - Elf64_Ehdr ehdr; - - if (grub_file_read (file, &ehdr, sizeof (ehdr)) != sizeof (ehdr)) - break; - - if (ehdr.e_ident[EI_MAG0] != ELFMAG0 - || ehdr.e_ident[EI_MAG1] != ELFMAG1 - || ehdr.e_ident[EI_MAG2] != ELFMAG2 - || ehdr.e_ident[EI_MAG3] != ELFMAG3 - || ehdr.e_ident[EI_VERSION] != EV_CURRENT - || ehdr.e_version != EV_CURRENT) - break; - - if (ehdr.e_ident[EI_CLASS] != ELFCLASS64 - || ehdr.e_ident[EI_DATA] != ELFDATA2MSB) - break; - - if (ehdr.e_machine != grub_cpu_to_le16_compile_time (EM_SPARCV9) - || ehdr.e_type != grub_cpu_to_be16_compile_time (ET_EXEC)) - break; - - ret = 1; - - break; - } - - case IS_POWERPC_LINUX: - { - Elf32_Ehdr ehdr; - - if (grub_file_read (file, &ehdr, sizeof (ehdr)) != sizeof (ehdr)) - break; - - if (ehdr.e_ident[EI_MAG0] != ELFMAG0 - || ehdr.e_ident[EI_MAG1] != ELFMAG1 - || ehdr.e_ident[EI_MAG2] != ELFMAG2 - || ehdr.e_ident[EI_MAG3] != ELFMAG3 - || ehdr.e_ident[EI_VERSION] != EV_CURRENT - || ehdr.e_version != EV_CURRENT) - break; - - if (ehdr.e_ident[EI_DATA] != ELFDATA2MSB - || (ehdr.e_machine != grub_cpu_to_le16_compile_time (EM_PPC) - && ehdr.e_machine != - grub_cpu_to_le16_compile_time (EM_PPC64))) - break; - - if (ehdr.e_type != grub_cpu_to_be16_compile_time (ET_EXEC) - && ehdr.e_type != grub_cpu_to_be16_compile_time (ET_DYN)) - break; - - ret = 1; - - break; - } - - case IS_MIPS_LINUX: - { - Elf32_Ehdr ehdr; - - if (grub_file_read (file, &ehdr, sizeof (ehdr)) != sizeof (ehdr)) - break; - - if (ehdr.e_ident[EI_MAG0] != ELFMAG0 - || ehdr.e_ident[EI_MAG1] != ELFMAG1 - || ehdr.e_ident[EI_MAG2] != ELFMAG2 - || ehdr.e_ident[EI_MAG3] != ELFMAG3 - || ehdr.e_ident[EI_VERSION] != EV_CURRENT - || ehdr.e_version != EV_CURRENT) - break; - - if (ehdr.e_ident[EI_DATA] != ELFDATA2MSB - || ehdr.e_machine != grub_cpu_to_be16_compile_time (EM_MIPS) - || ehdr.e_type != grub_cpu_to_be16_compile_time (ET_EXEC)) - break; - - ret = 1; - - break; - } - - case IS_X86_KNETBSD: - case IS_X86_KNETBSD32: - case IS_X86_KNETBSD64: - { - int is32, is64; - - elf = grub_elf_file (file, file->name); - - if (elf->ehdr.ehdr32.e_type != grub_cpu_to_le16_compile_time (ET_EXEC) - || elf->ehdr.ehdr32.e_ident[EI_DATA] != ELFDATA2LSB) - break; - - is32 = grub_elf_is_elf32 (elf); - is64 = grub_elf_is_elf64 (elf); - if (!is32 && !is64) - break; - if (!is32 && type == IS_X86_KNETBSD32) - break; - if (!is64 && type == IS_X86_KNETBSD64) - break; - if (is64) - ret = grub_file_check_netbsd64 (elf); - if (is32) - ret = grub_file_check_netbsd32 (elf); - break; - } - - case IS_X86_KFREEBSD: - case IS_X86_KFREEBSD32: - case IS_X86_KFREEBSD64: - { - Elf32_Ehdr ehdr; - int is32, is64; - - if (grub_file_read (file, &ehdr, sizeof (ehdr)) != sizeof (ehdr)) - break; - - if (ehdr.e_ident[EI_MAG0] != ELFMAG0 - || ehdr.e_ident[EI_MAG1] != ELFMAG1 - || ehdr.e_ident[EI_MAG2] != ELFMAG2 - || ehdr.e_ident[EI_MAG3] != ELFMAG3 - || ehdr.e_ident[EI_VERSION] != EV_CURRENT - || ehdr.e_version != EV_CURRENT) - break; - - if (ehdr.e_type != grub_cpu_to_le16_compile_time (ET_EXEC) - || ehdr.e_ident[EI_DATA] != ELFDATA2LSB) - break; - - if (ehdr.e_ident[EI_OSABI] != ELFOSABI_FREEBSD) - break; - - is32 = (ehdr.e_machine == grub_cpu_to_le16_compile_time (EM_386) - && ehdr.e_ident[EI_CLASS] == ELFCLASS32); - is64 = (ehdr.e_machine == grub_cpu_to_le16_compile_time (EM_X86_64) - && ehdr.e_ident[EI_CLASS] == ELFCLASS64); - if (!is32 && !is64) - break; - if (!is32 && (type == IS_X86_KFREEBSD32 || type == IS_X86_KNETBSD32)) - break; - if (!is64 && (type == IS_X86_KFREEBSD64 || type == IS_X86_KNETBSD64)) - break; - ret = 1; - - break; - } - - - case IS_MIPSEL_LINUX: - { - Elf32_Ehdr ehdr; - - if (grub_file_read (file, &ehdr, sizeof (ehdr)) != sizeof (ehdr)) - break; - - if (ehdr.e_ident[EI_MAG0] != ELFMAG0 - || ehdr.e_ident[EI_MAG1] != ELFMAG1 - || ehdr.e_ident[EI_MAG2] != ELFMAG2 - || ehdr.e_ident[EI_MAG3] != ELFMAG3 - || ehdr.e_ident[EI_VERSION] != EV_CURRENT - || ehdr.e_version != EV_CURRENT) - break; - - if (ehdr.e_machine != grub_cpu_to_le16_compile_time (EM_MIPS) - || ehdr.e_type != grub_cpu_to_le16_compile_time (ET_EXEC)) - break; - - ret = 1; - - break; - } - case IS_ARM_LINUX: - { - struct linux_arm_kernel_header lh; - - if (grub_file_read (file, &lh, sizeof (lh)) != sizeof (lh)) - break; - /* Short forward branch in A32 state (for Raspberry pi kernels). */ - if (lh.code0 == grub_cpu_to_le32_compile_time (0xea000006)) - { - ret = 1; - break; - } - - if (lh.magic == - grub_cpu_to_le32_compile_time (GRUB_LINUX_ARM_MAGIC_SIGNATURE)) - { - ret = 1; - break; - } - break; - } - case IS_ARM64_LINUX: - { - struct linux_arm64_kernel_header lh; - - if (grub_file_read (file, &lh, sizeof (lh)) != sizeof (lh)) - break; - - if (lh.magic == - grub_cpu_to_le32_compile_time (GRUB_LINUX_ARM64_MAGIC_SIGNATURE)) - { - ret = 1; - break; - } - break; - } - case IS_PAE_DOMU ... IS_DOM0: - { - struct grub_xen_file_info xen_inf; - elf = grub_xen_file (file); - if (!elf) - break; - err = grub_xen_get_info (elf, &xen_inf); - if (err) - break; - /* Unfortuntely no way to check if kernel supports dom0. */ - if (type == IS_DOM0) - ret = 1; - if (type == IS_PAE_DOMU) - ret = (xen_inf.arch == GRUB_XEN_FILE_I386_PAE - || xen_inf.arch == GRUB_XEN_FILE_I386_PAE_BIMODE); - if (type == IS_64_DOMU) - ret = (xen_inf.arch == GRUB_XEN_FILE_X86_64); - break; - } - case IS_MULTIBOOT: - case IS_MULTIBOOT2: - { - grub_uint32_t *buffer; - grub_ssize_t len; - grub_size_t search_size; - grub_uint32_t *header; - grub_uint32_t magic; - grub_size_t step; - - if (type == IS_MULTIBOOT2) - { - search_size = 32768; - magic = grub_cpu_to_le32_compile_time (0xe85250d6); - step = 2; - } - else - { - search_size = 8192; - magic = grub_cpu_to_le32_compile_time (0x1BADB002); - step = 1; - } - - buffer = grub_malloc (search_size); - if (!buffer) - break; - - len = grub_file_read (file, buffer, search_size); - if (len < 32) - { - grub_free (buffer); - break; - } - - /* Look for the multiboot header in the buffer. The header should - be at least 12 bytes and aligned on a 4-byte boundary. */ - for (header = buffer; - ((char *) header <= - (char *) buffer + len - (type == IS_MULTIBOOT2 ? 16 : 12)); - header += step) - { - if (header[0] == magic - && !(grub_le_to_cpu32 (header[0]) - + grub_le_to_cpu32 (header[1]) - + grub_le_to_cpu32 (header[2]) - + (type == IS_MULTIBOOT2 - ? grub_le_to_cpu32 (header[3]) : 0))) - { - ret = 1; - break; - } - } - - grub_free (buffer); - break; - } - case IS_X86_LINUX32: - case IS_X86_LINUX: - { - struct linux_i386_kernel_header lh; - if (grub_file_read (file, &lh, sizeof (lh)) != sizeof (lh)) - break; - if (lh.boot_flag != grub_cpu_to_le16_compile_time (0xaa55)) - break; - - if (lh.setup_sects > GRUB_LINUX_MAX_SETUP_SECTS) - break; - - /* FIXME: some really old kernels (< 1.3.73) will fail this. */ - if (lh.header != - grub_cpu_to_le32_compile_time (GRUB_LINUX_I386_MAGIC_SIGNATURE) - || grub_le_to_cpu16 (lh.version) < 0x0200) - break; - - if (type == IS_X86_LINUX) - { - ret = 1; - break; - } - - /* FIXME: 2.03 is not always good enough (Linux 2.4 can be 2.03 and - still not support 32-bit boot. */ - if (lh.header != - grub_cpu_to_le32_compile_time (GRUB_LINUX_I386_MAGIC_SIGNATURE) - || grub_le_to_cpu16 (lh.version) < 0x0203) - break; - - if (!(lh.loadflags & GRUB_LINUX_FLAG_BIG_KERNEL)) - break; - ret = 1; - break; - } - case IS_HIBERNATED: - { - grub_uint8_t hibr_file_magic[4]; - if (grub_file_read (file, &hibr_file_magic, sizeof (hibr_file_magic)) - != sizeof (hibr_file_magic)) - break; - if (grub_memcmp ("hibr", hibr_file_magic, sizeof (hibr_file_magic)) == - 0 - || grub_memcmp ("HIBR", hibr_file_magic, - sizeof (hibr_file_magic)) == 0) - ret = 1; - break; - } - case IS_XNU64: - case IS_XNU32: - { - macho = grub_macho_open (args[0], GRUB_FILE_TYPE_XNU_KERNEL, - (type == IS_XNU64)); - if (!macho) - break; - /* FIXME: more checks? */ - ret = 1; - break; - } - case IS_XNU_HIBR: - { - struct grub_xnu_hibernate_header hibhead; - if (grub_file_read (file, &hibhead, sizeof (hibhead)) - != sizeof (hibhead)) - break; - if (hibhead.magic != - grub_cpu_to_le32_compile_time (GRUB_XNU_HIBERNATE_MAGIC)) - break; - ret = 1; - break; - } - case IS_32_EFI: - case IS_64_EFI: - case IS_IA_EFI: - case IS_ARM64_EFI: - case IS_ARM_EFI: - case IS_RISCV_EFI: - { - char signature[4]; - grub_uint32_t pe_offset; - struct grub_pe32_coff_header coff_head; - - if (grub_file_read (file, signature, 2) != 2) - break; - if (signature[0] != 'M' || signature[1] != 'Z') - break; - if ((grub_ssize_t) grub_file_seek (file, 0x3c) == -1) - break; - if (grub_file_read (file, &pe_offset, 4) != 4) - break; - if ((grub_ssize_t) grub_file_seek (file, grub_le_to_cpu32 (pe_offset)) - == -1) - break; - if (grub_file_read (file, signature, 4) != 4) - break; - if (signature[0] != 'P' || signature[1] != 'E' - || signature[2] != '\0' || signature[3] != '\0') - break; - - if (grub_file_read (file, &coff_head, sizeof (coff_head)) - != sizeof (coff_head)) - break; - if (type == IS_32_EFI - && coff_head.machine != - grub_cpu_to_le16_compile_time (GRUB_PE32_MACHINE_I386)) - break; - if (type == IS_64_EFI - && coff_head.machine != - grub_cpu_to_le16_compile_time (GRUB_PE32_MACHINE_X86_64)) - break; - if (type == IS_IA_EFI - && coff_head.machine != - grub_cpu_to_le16_compile_time (GRUB_PE32_MACHINE_IA64)) - break; - if (type == IS_ARM64_EFI - && coff_head.machine != - grub_cpu_to_le16_compile_time (GRUB_PE32_MACHINE_ARM64)) - break; - if (type == IS_ARM_EFI - && coff_head.machine != - grub_cpu_to_le16_compile_time (GRUB_PE32_MACHINE_ARMTHUMB_MIXED)) - break; - if (type == IS_RISCV_EFI - && coff_head.machine != - grub_cpu_to_le16_compile_time (GRUB_PE32_MACHINE_RISCV64)) - /* TODO: Determine bitness dynamically */ - break; - if (type == IS_IA_EFI || type == IS_64_EFI || type == IS_ARM64_EFI || - type == IS_RISCV_EFI) - { - struct grub_pe64_optional_header o64; - if (grub_file_read (file, &o64, sizeof (o64)) != sizeof (o64)) - break; - if (o64.magic != - grub_cpu_to_le16_compile_time (GRUB_PE32_PE64_MAGIC)) - break; - if (o64.subsystem != - grub_cpu_to_le16_compile_time - (GRUB_PE32_SUBSYSTEM_EFI_APPLICATION)) - break; - ret = 1; - break; - } - if (type == IS_32_EFI || type == IS_ARM_EFI) - { - struct grub_pe32_optional_header o32; - if (grub_file_read (file, &o32, sizeof (o32)) != sizeof (o32)) - break; - if (o32.magic != - grub_cpu_to_le16_compile_time (GRUB_PE32_PE32_MAGIC)) - break; - if (o32.subsystem != - grub_cpu_to_le16_compile_time - (GRUB_PE32_SUBSYSTEM_EFI_APPLICATION)) - break; - ret = 1; - break; - } - break; - } - } - - if (elf) - grub_elf_close (elf); - else if (macho) - grub_macho_close (macho); - else if (file) - grub_file_close (file); - - if (!ret && (grub_errno == GRUB_ERR_BAD_OS || grub_errno == GRUB_ERR_NONE)) - /* TRANSLATORS: it's a standalone boolean value, - opposite of "true". */ - grub_error (GRUB_ERR_TEST_FAILURE, N_("false")); - return grub_errno; -} - -static grub_extcmd_t cmd; - -GRUB_MOD_INIT(file) -{ - cmd = grub_register_extcmd ("file", grub_cmd_file, 0, - N_("OPTIONS FILE"), - N_("Check if FILE is of specified type."), - options); -} - -GRUB_MOD_FINI(file) -{ - grub_unregister_extcmd (cmd); -} diff --git a/thirdparty/grub-2.04/grub-core/commands/file32.c b/thirdparty/grub-2.04/grub-core/commands/file32.c deleted file mode 100644 index 0861c458d..000000000 --- a/thirdparty/grub-2.04/grub-core/commands/file32.c +++ /dev/null @@ -1,5 +0,0 @@ -#define GRUB_TARGET_WORDSIZE 32 -#define XX 32 -#define ehdrXX ehdr32 -#define grub_file_check_netbsdXX grub_file_check_netbsd32 -#include "fileXX.c" diff --git a/thirdparty/grub-2.04/grub-core/commands/file64.c b/thirdparty/grub-2.04/grub-core/commands/file64.c deleted file mode 100644 index 90890d481..000000000 --- a/thirdparty/grub-2.04/grub-core/commands/file64.c +++ /dev/null @@ -1,5 +0,0 @@ -#define GRUB_TARGET_WORDSIZE 64 -#define XX 64 -#define ehdrXX ehdr64 -#define grub_file_check_netbsdXX grub_file_check_netbsd64 -#include "fileXX.c" diff --git a/thirdparty/grub-2.04/grub-core/commands/fileXX.c b/thirdparty/grub-2.04/grub-core/commands/fileXX.c deleted file mode 100644 index c17d26ce6..000000000 --- a/thirdparty/grub-2.04/grub-core/commands/fileXX.c +++ /dev/null @@ -1,74 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2013 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include - -#pragma GCC diagnostic ignored "-Wcast-align" - -int -grub_file_check_netbsdXX (grub_elf_t elf) -{ - Elf_Shdr *s, *s0; - - grub_size_t shnum = elf->ehdr.ehdrXX.e_shnum; - grub_size_t shentsize = elf->ehdr.ehdrXX.e_shentsize; - grub_size_t shsize = shnum * shentsize; - grub_off_t stroff; - - if (!shnum || !shentsize) - return 0; - - s0 = grub_malloc (shsize); - if (!s0) - return 0; - - if (grub_file_seek (elf->file, elf->ehdr.ehdrXX.e_shoff) == (grub_off_t) -1) - goto fail; - - if (grub_file_read (elf->file, s0, shsize) != (grub_ssize_t) shsize) - goto fail; - - s = (Elf_Shdr *) ((char *) s0 + elf->ehdr.ehdrXX.e_shstrndx * shentsize); - stroff = s->sh_offset; - - for (s = s0; s < (Elf_Shdr *) ((char *) s0 + shnum * shentsize); - s = (Elf_Shdr *) ((char *) s + shentsize)) - { - char name[sizeof(".note.netbsd.ident")]; - grub_memset (name, 0, sizeof (name)); - if (grub_file_seek (elf->file, stroff + s->sh_name) == (grub_off_t) -1) - goto fail; - - if (grub_file_read (elf->file, name, sizeof (name)) != (grub_ssize_t) sizeof (name)) - { - if (grub_errno) - goto fail; - continue; - } - if (grub_memcmp (name, ".note.netbsd.ident", - sizeof(".note.netbsd.ident")) != 0) - continue; - grub_free (s0); - return 1; - } - fail: - grub_free (s0); - return 0; -} diff --git a/thirdparty/grub-2.04/grub-core/commands/gptsync.c b/thirdparty/grub-2.04/grub-core/commands/gptsync.c deleted file mode 100644 index 444e24874..000000000 --- a/thirdparty/grub-2.04/grub-core/commands/gptsync.c +++ /dev/null @@ -1,266 +0,0 @@ -/* gptsync.c - fill the mbr based on gpt entries */ -/* XXX: I don't know what to do if sector size isn't 512 bytes */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -/* Convert a LBA address to a CHS address in the INT 13 format. */ -/* Taken from grub1. */ -/* XXX: use hardcoded geometry of C = 1024, H = 255, S = 63. - Is it a problem? -*/ -static void -lba_to_chs (grub_uint32_t lba, grub_uint8_t *cl, grub_uint8_t *ch, - grub_uint8_t *dh) -{ - grub_uint32_t cylinder, head, sector; - grub_uint32_t sectors = 63, heads = 255, cylinders = 1024; - - sector = lba % sectors + 1; - head = (lba / sectors) % heads; - cylinder = lba / (sectors * heads); - - if (cylinder >= cylinders) - { - *cl = *ch = *dh = 0xff; - return; - } - - *cl = sector | ((cylinder & 0x300) >> 2); - *ch = cylinder & 0xFF; - *dh = head; -} - -static grub_err_t -grub_cmd_gptsync (grub_command_t cmd __attribute__ ((unused)), - int argc, char **args) -{ - grub_device_t dev; - struct grub_msdos_partition_mbr mbr; - struct grub_partition *partition; - grub_disk_addr_t first_sector; - int numactive = 0; - int i; - - if (argc < 1) - return grub_error (GRUB_ERR_BAD_ARGUMENT, "device name required"); - if (argc > 4) - return grub_error (GRUB_ERR_BAD_ARGUMENT, "only 3 partitions can be " - "in hybrid MBR"); - - if (args[0][0] == '(' && args[0][grub_strlen (args[0]) - 1] == ')') - { - args[0][grub_strlen (args[0]) - 1] = 0; - dev = grub_device_open (args[0] + 1); - args[0][grub_strlen (args[0])] = ')'; - } - else - dev = grub_device_open (args[0]); - - if (! dev) - return grub_errno; - - if (! dev->disk) - { - grub_device_close (dev); - return grub_error (GRUB_ERR_BAD_ARGUMENT, "not a disk"); - } - - /* Read the protective MBR. */ - if (grub_disk_read (dev->disk, 0, 0, sizeof (mbr), &mbr)) - { - grub_device_close (dev); - return grub_errno; - } - - /* Check if it is valid. */ - if (mbr.signature != grub_cpu_to_le16_compile_time (GRUB_PC_PARTITION_SIGNATURE)) - { - grub_device_close (dev); - return grub_error (GRUB_ERR_BAD_PART_TABLE, "no signature"); - } - - /* Make sure the MBR is a protective MBR and not a normal MBR. */ - for (i = 0; i < 4; i++) - if (mbr.entries[i].type == GRUB_PC_PARTITION_TYPE_GPT_DISK) - break; - if (i == 4) - { - grub_device_close (dev); - return grub_error (GRUB_ERR_BAD_PART_TABLE, "no GPT partition map found"); - } - - first_sector = dev->disk->total_sectors; - for (i = 1; i < argc; i++) - { - char *separator, csep = 0; - grub_uint8_t type; - separator = grub_strchr (args[i], '+'); - if (! separator) - separator = grub_strchr (args[i], '-'); - if (separator) - { - csep = *separator; - *separator = 0; - } - partition = grub_partition_probe (dev->disk, args[i]); - if (separator) - *separator = csep; - if (! partition) - { - grub_device_close (dev); - return grub_error (GRUB_ERR_UNKNOWN_DEVICE, - N_("no such partition")); - } - - if (partition->start + partition->len > 0xffffffff) - { - grub_device_close (dev); - return grub_error (GRUB_ERR_OUT_OF_RANGE, - "only partitions residing in the first 2TB " - "can be present in hybrid MBR"); - } - - - if (first_sector > partition->start) - first_sector = partition->start; - - if (separator && *(separator + 1)) - type = grub_strtoul (separator + 1, 0, 0); - else - { - grub_fs_t fs = 0; - dev->disk->partition = partition; - fs = grub_fs_probe (dev); - - /* Unknown filesystem isn't fatal. */ - if (grub_errno == GRUB_ERR_UNKNOWN_FS) - { - fs = 0; - grub_errno = GRUB_ERR_NONE; - } - - if (fs && grub_strcmp (fs->name, "ntfs") == 0) - type = GRUB_PC_PARTITION_TYPE_NTFS; - else if (fs && grub_strcmp (fs->name, "fat") == 0) - /* FIXME: detect FAT16. */ - type = GRUB_PC_PARTITION_TYPE_FAT32_LBA; - else if (fs && (grub_strcmp (fs->name, "hfsplus") == 0 - || grub_strcmp (fs->name, "hfs") == 0)) - type = GRUB_PC_PARTITION_TYPE_HFS; - else - /* FIXME: detect more types. */ - type = GRUB_PC_PARTITION_TYPE_EXT2FS; - - dev->disk->partition = 0; - } - - mbr.entries[i].flag = (csep == '+') ? 0x80 : 0; - if (csep == '+') - { - numactive++; - if (numactive == 2) - { - grub_device_close (dev); - return grub_error (GRUB_ERR_BAD_ARGUMENT, - "only one partition can be active"); - } - } - mbr.entries[i].type = type; - mbr.entries[i].start = grub_cpu_to_le32 (partition->start); - lba_to_chs (partition->start, - &(mbr.entries[i].start_sector), - &(mbr.entries[i].start_cylinder), - &(mbr.entries[i].start_head)); - lba_to_chs (partition->start + partition->len - 1, - &(mbr.entries[i].end_sector), - &(mbr.entries[i].end_cylinder), - &(mbr.entries[i].end_head)); - mbr.entries[i].length = grub_cpu_to_le32 (partition->len); - grub_free (partition); - } - for (; i < 4; i++) - grub_memset (&(mbr.entries[i]), 0, sizeof (mbr.entries[i])); - - /* The protective partition. */ - if (first_sector > 0xffffffff) - first_sector = 0xffffffff; - else - first_sector--; - mbr.entries[0].flag = 0; - mbr.entries[0].type = GRUB_PC_PARTITION_TYPE_GPT_DISK; - mbr.entries[0].start = grub_cpu_to_le32_compile_time (1); - lba_to_chs (1, - &(mbr.entries[0].start_sector), - &(mbr.entries[0].start_cylinder), - &(mbr.entries[0].start_head)); - lba_to_chs (first_sector, - &(mbr.entries[0].end_sector), - &(mbr.entries[0].end_cylinder), - &(mbr.entries[0].end_head)); - mbr.entries[0].length = grub_cpu_to_le32 (first_sector); - - mbr.signature = grub_cpu_to_le16_compile_time (GRUB_PC_PARTITION_SIGNATURE); - - if (grub_disk_write (dev->disk, 0, 0, sizeof (mbr), &mbr)) - { - grub_device_close (dev); - return grub_errno; - } - - grub_device_close (dev); - - grub_printf_ (N_("New MBR is written to `%s'\n"), args[0]); - - return GRUB_ERR_NONE; -} - - -static grub_command_t cmd; - -GRUB_MOD_INIT(gptsync) -{ - (void) mod; /* To stop warning. */ - cmd = grub_register_command ("gptsync", grub_cmd_gptsync, - N_("DEVICE [PARTITION[+/-[TYPE]]] ..."), - /* TRANSLATORS: MBR type is one-byte partition - type id. */ - N_("Fill hybrid MBR of GPT drive DEVICE. " - "Specified partitions will be a part " - "of hybrid MBR. Up to 3 partitions are " - "allowed. TYPE is an MBR type. " - "+ means that partition is active. " - "Only one partition can be active.")); -} - -GRUB_MOD_FINI(gptsync) -{ - grub_unregister_command (cmd); -} diff --git a/thirdparty/grub-2.04/grub-core/commands/halt.c b/thirdparty/grub-2.04/grub-core/commands/halt.c deleted file mode 100644 index f8596ecdc..000000000 --- a/thirdparty/grub-2.04/grub-core/commands/halt.c +++ /dev/null @@ -1,47 +0,0 @@ -/* halt.c - command to halt the computer. */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2005,2007,2008 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -static grub_err_t __attribute__ ((noreturn)) -grub_cmd_halt (grub_command_t cmd __attribute__ ((unused)), - int argc __attribute__ ((unused)), - char **args __attribute__ ((unused))) -{ - grub_halt (); -} - -static grub_command_t cmd; - -GRUB_MOD_INIT(halt) -{ - cmd = grub_register_command ("halt", grub_cmd_halt, - 0, N_("Halts the computer. This command does" - " not work on all firmware implementations.")); -} - -GRUB_MOD_FINI(halt) -{ - grub_unregister_command (cmd); -} diff --git a/thirdparty/grub-2.04/grub-core/commands/hashsum.c b/thirdparty/grub-2.04/grub-core/commands/hashsum.c deleted file mode 100644 index 456ba908b..000000000 --- a/thirdparty/grub-2.04/grub-core/commands/hashsum.c +++ /dev/null @@ -1,325 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -static const struct grub_arg_option options[] = { - {"hash", 'h', 0, N_("Specify hash to use."), N_("HASH"), ARG_TYPE_STRING}, - {"check", 'c', 0, N_("Check hashes of files with hash list FILE."), - N_("FILE"), ARG_TYPE_STRING}, - {"prefix", 'p', 0, N_("Base directory for hash list."), N_("DIR"), - ARG_TYPE_STRING}, - {"keep-going", 'k', 0, N_("Don't stop after first error."), 0, 0}, - {"uncompress", 'u', 0, N_("Uncompress file before checksumming."), 0, 0}, - {0, 0, 0, 0, 0, 0} -}; - -static struct { const char *name; const char *hashname; } aliases[] = - { - {"sha256sum", "sha256"}, - {"sha512sum", "sha512"}, - {"sha1sum", "sha1"}, - {"md5sum", "md5"}, - {"crc", "crc32"}, - }; - -static inline int -hextoval (char c) -{ - if (c >= '0' && c <= '9') - return c - '0'; - if (c >= 'a' && c <= 'f') - return c - 'a' + 10; - if (c >= 'A' && c <= 'F') - return c - 'A' + 10; - return -1; -} - -static grub_err_t -hash_file (grub_file_t file, const gcry_md_spec_t *hash, void *result) -{ - void *context; - grub_uint8_t *readbuf; -#define BUF_SIZE 4096 - readbuf = grub_malloc (BUF_SIZE); - if (!readbuf) - return grub_errno; - context = grub_zalloc (hash->contextsize); - if (!readbuf || !context) - goto fail; - - hash->init (context); - while (1) - { - grub_ssize_t r; - r = grub_file_read (file, readbuf, BUF_SIZE); - if (r < 0) - goto fail; - if (r == 0) - break; - hash->write (context, readbuf, r); - } - hash->final (context); - grub_memcpy (result, hash->read (context), hash->mdlen); - - grub_free (readbuf); - grub_free (context); - - return GRUB_ERR_NONE; - - fail: - grub_free (readbuf); - grub_free (context); - return grub_errno; -} - -static grub_err_t -check_list (const gcry_md_spec_t *hash, const char *hashfilename, - const char *prefix, int keep, int uncompress) -{ - grub_file_t hashlist, file; - char *buf = NULL; - grub_uint8_t expected[GRUB_CRYPTO_MAX_MDLEN]; - grub_uint8_t actual[GRUB_CRYPTO_MAX_MDLEN]; - grub_err_t err; - unsigned i; - unsigned unread = 0, mismatch = 0; - - if (hash->mdlen > GRUB_CRYPTO_MAX_MDLEN) - return grub_error (GRUB_ERR_BUG, "mdlen is too long"); - - hashlist = grub_file_open (hashfilename, GRUB_FILE_TYPE_HASHLIST); - if (!hashlist) - return grub_errno; - - while (grub_free (buf), (buf = grub_file_getline (hashlist))) - { - const char *p = buf; - while (grub_isspace (p[0])) - p++; - for (i = 0; i < hash->mdlen; i++) - { - int high, low; - high = hextoval (*p++); - low = hextoval (*p++); - if (high < 0 || low < 0) - return grub_error (GRUB_ERR_BAD_FILE_TYPE, "invalid hash list"); - expected[i] = (high << 4) | low; - } - if ((p[0] != ' ' && p[0] != '\t') || (p[1] != ' ' && p[1] != '\t')) - return grub_error (GRUB_ERR_BAD_FILE_TYPE, "invalid hash list"); - p += 2; - if (prefix) - { - char *filename; - - filename = grub_xasprintf ("%s/%s", prefix, p); - if (!filename) - return grub_errno; - file = grub_file_open (filename, GRUB_FILE_TYPE_TO_HASH - | (!uncompress ? GRUB_FILE_TYPE_NO_DECOMPRESS - : GRUB_FILE_TYPE_NONE)); - grub_free (filename); - } - else - file = grub_file_open (p, GRUB_FILE_TYPE_TO_HASH - | (!uncompress ? GRUB_FILE_TYPE_NO_DECOMPRESS - : GRUB_FILE_TYPE_NONE)); - if (!file) - { - grub_file_close (hashlist); - grub_free (buf); - return grub_errno; - } - err = hash_file (file, hash, actual); - grub_file_close (file); - if (err) - { - grub_printf_ (N_("%s: READ ERROR\n"), p); - if (!keep) - { - grub_file_close (hashlist); - grub_free (buf); - return err; - } - grub_print_error (); - grub_errno = GRUB_ERR_NONE; - unread++; - continue; - } - if (grub_crypto_memcmp (expected, actual, hash->mdlen) != 0) - { - grub_printf_ (N_("%s: HASH MISMATCH\n"), p); - if (!keep) - { - grub_file_close (hashlist); - grub_free (buf); - return grub_error (GRUB_ERR_TEST_FAILURE, - "hash of '%s' mismatches", p); - } - mismatch++; - continue; - } - grub_printf_ (N_("%s: OK\n"), p); - } - if (mismatch || unread) - return grub_error (GRUB_ERR_TEST_FAILURE, - "%d files couldn't be read and hash " - "of %d files mismatches", unread, mismatch); - return GRUB_ERR_NONE; -} - -static grub_err_t -grub_cmd_hashsum (struct grub_extcmd_context *ctxt, - int argc, char **args) -{ - struct grub_arg_list *state = ctxt->state; - const char *hashname = NULL; - const char *prefix = NULL; - const gcry_md_spec_t *hash; - unsigned i; - int keep = state[3].set; - int uncompress = state[4].set; - unsigned unread = 0; - - for (i = 0; i < ARRAY_SIZE (aliases); i++) - if (grub_strcmp (ctxt->extcmd->cmd->name, aliases[i].name) == 0) - hashname = aliases[i].hashname; - if (state[0].set) - hashname = state[0].arg; - - if (!hashname) - return grub_error (GRUB_ERR_BAD_ARGUMENT, "no hash specified"); - - hash = grub_crypto_lookup_md_by_name (hashname); - if (!hash) - return grub_error (GRUB_ERR_BAD_ARGUMENT, "unknown hash"); - - if (hash->mdlen > GRUB_CRYPTO_MAX_MDLEN) - return grub_error (GRUB_ERR_BUG, "mdlen is too long"); - - if (state[2].set) - prefix = state[2].arg; - - if (state[1].set) - { - if (argc != 0) - return grub_error (GRUB_ERR_BAD_ARGUMENT, - "--check is incompatible with file list"); - return check_list (hash, state[1].arg, prefix, keep, uncompress); - } - - for (i = 0; i < (unsigned) argc; i++) - { - GRUB_PROPERLY_ALIGNED_ARRAY (result, GRUB_CRYPTO_MAX_MDLEN); - grub_file_t file; - grub_err_t err; - unsigned j; - file = grub_file_open (args[i], GRUB_FILE_TYPE_TO_HASH - | (!uncompress ? GRUB_FILE_TYPE_NO_DECOMPRESS - : GRUB_FILE_TYPE_NONE)); - if (!file) - { - if (!keep) - return grub_errno; - grub_print_error (); - grub_errno = GRUB_ERR_NONE; - unread++; - continue; - } - err = hash_file (file, hash, result); - grub_file_close (file); - if (err) - { - if (!keep) - return err; - grub_print_error (); - grub_errno = GRUB_ERR_NONE; - unread++; - continue; - } - for (j = 0; j < hash->mdlen; j++) - grub_printf ("%02x", ((grub_uint8_t *) result)[j]); - grub_printf (" %s\n", args[i]); - } - - if (unread) - return grub_error (GRUB_ERR_TEST_FAILURE, "%d files couldn't be read", - unread); - return GRUB_ERR_NONE; -} - -static grub_extcmd_t cmd, cmd_md5, cmd_sha1, cmd_sha256, cmd_sha512, cmd_crc; - -GRUB_MOD_INIT(hashsum) -{ - cmd = grub_register_extcmd ("hashsum", grub_cmd_hashsum, 0, - N_("-h HASH [-c FILE [-p PREFIX]] " - "[FILE1 [FILE2 ...]]"), - /* TRANSLATORS: "hash checksum" is just to - be a bit more precise, you can treat it as - just "hash". */ - N_("Compute or check hash checksum."), - options); - cmd_md5 = grub_register_extcmd ("md5sum", grub_cmd_hashsum, 0, - N_("[-c FILE [-p PREFIX]] " - "[FILE1 [FILE2 ...]]"), - N_("Compute or check hash checksum."), - options); - cmd_sha1 = grub_register_extcmd ("sha1sum", grub_cmd_hashsum, 0, - N_("[-c FILE [-p PREFIX]] " - "[FILE1 [FILE2 ...]]"), - N_("Compute or check hash checksum."), - options); - cmd_sha256 = grub_register_extcmd ("sha256sum", grub_cmd_hashsum, 0, - N_("[-c FILE [-p PREFIX]] " - "[FILE1 [FILE2 ...]]"), - N_("Compute or check hash checksum."), - options); - cmd_sha512 = grub_register_extcmd ("sha512sum", grub_cmd_hashsum, 0, - N_("[-c FILE [-p PREFIX]] " - "[FILE1 [FILE2 ...]]"), - N_("Compute or check hash checksum."), - options); - - cmd_crc = grub_register_extcmd ("crc", grub_cmd_hashsum, 0, - N_("[-c FILE [-p PREFIX]] " - "[FILE1 [FILE2 ...]]"), - N_("Compute or check hash checksum."), - options); -} - -GRUB_MOD_FINI(hashsum) -{ - grub_unregister_extcmd (cmd); - grub_unregister_extcmd (cmd_md5); - grub_unregister_extcmd (cmd_sha1); - grub_unregister_extcmd (cmd_sha256); - grub_unregister_extcmd (cmd_sha512); - grub_unregister_extcmd (cmd_crc); -} diff --git a/thirdparty/grub-2.04/grub-core/commands/hdparm.c b/thirdparty/grub-2.04/grub-core/commands/hdparm.c deleted file mode 100644 index d3fa9661e..000000000 --- a/thirdparty/grub-2.04/grub-core/commands/hdparm.c +++ /dev/null @@ -1,447 +0,0 @@ -/* hdparm.c - command to get/set ATA disk parameters. */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -static const struct grub_arg_option options[] = { - {"apm", 'B', 0, N_("Set Advanced Power Management\n" - "(1=low, ..., 254=high, 255=off)."), - 0, ARG_TYPE_INT}, - {"power", 'C', 0, N_("Display power mode."), 0, ARG_TYPE_NONE}, - {"security-freeze", 'F', 0, N_("Freeze ATA security settings until reset."), - 0, ARG_TYPE_NONE}, - {"health", 'H', 0, N_("Display SMART health status."), 0, ARG_TYPE_NONE}, - {"aam", 'M', 0, N_("Set Automatic Acoustic Management\n" - "(0=off, 128=quiet, ..., 254=fast)."), - 0, ARG_TYPE_INT}, - {"standby-timeout", 'S', 0, N_("Set standby timeout\n" - "(0=off, 1=5s, 2=10s, ..., 240=20m, 241=30m, ...)."), - 0, ARG_TYPE_INT}, - {"standby", 'y', 0, N_("Set drive to standby mode."), 0, ARG_TYPE_NONE}, - {"sleep", 'Y', 0, N_("Set drive to sleep mode."), 0, ARG_TYPE_NONE}, - {"identify", 'i', 0, N_("Print drive identity and settings."), - 0, ARG_TYPE_NONE}, - {"dumpid", 'I', 0, N_("Show raw contents of ATA IDENTIFY sector."), - 0, ARG_TYPE_NONE}, - {"smart", -1, 0, N_("Disable/enable SMART (0/1)."), 0, ARG_TYPE_INT}, - {"quiet", 'q', 0, N_("Do not print messages."), 0, ARG_TYPE_NONE}, - {0, 0, 0, 0, 0, 0} -}; - -enum grub_ata_smart_commands - { - GRUB_ATA_FEAT_SMART_ENABLE = 0xd8, - GRUB_ATA_FEAT_SMART_DISABLE = 0xd9, - GRUB_ATA_FEAT_SMART_STATUS = 0xda, - }; - -static int quiet = 0; - -static grub_err_t -grub_hdparm_do_ata_cmd (grub_ata_t ata, grub_uint8_t cmd, - grub_uint8_t features, grub_uint8_t sectors, - void * buffer, int size) -{ - struct grub_disk_ata_pass_through_parms apt; - grub_memset (&apt, 0, sizeof (apt)); - - apt.taskfile.cmd = cmd; - apt.taskfile.features = features; - apt.taskfile.sectors = sectors; - apt.taskfile.disk = 0xE0; - - apt.buffer = buffer; - apt.size = size; - - if (ata->dev->readwrite (ata, &apt, 0)) - return grub_errno; - - return GRUB_ERR_NONE; -} - -static int -grub_hdparm_do_check_powermode_cmd (grub_ata_t ata) -{ - struct grub_disk_ata_pass_through_parms apt; - grub_memset (&apt, 0, sizeof (apt)); - - apt.taskfile.cmd = GRUB_ATA_CMD_CHECK_POWER_MODE; - apt.taskfile.disk = 0xE0; - - if (ata->dev->readwrite (ata, &apt, 0)) - return -1; - - return apt.taskfile.sectors; -} - -static int -grub_hdparm_do_smart_cmd (grub_ata_t ata, grub_uint8_t features) -{ - struct grub_disk_ata_pass_through_parms apt; - grub_memset (&apt, 0, sizeof (apt)); - - apt.taskfile.cmd = GRUB_ATA_CMD_SMART; - apt.taskfile.features = features; - apt.taskfile.lba_mid = 0x4f; - apt.taskfile.lba_high = 0xc2; - apt.taskfile.disk = 0xE0; - - if (ata->dev->readwrite (ata, &apt, 0)) - return -1; - - if (features == GRUB_ATA_FEAT_SMART_STATUS) - { - if ( apt.taskfile.lba_mid == 0x4f - && apt.taskfile.lba_high == 0xc2) - return 0; /* Good SMART status. */ - else if ( apt.taskfile.lba_mid == 0xf4 - && apt.taskfile.lba_high == 0x2c) - return 1; /* Bad SMART status. */ - else - return -1; - } - return 0; -} - -static grub_err_t -grub_hdparm_simple_cmd (const char * msg, - grub_ata_t ata, grub_uint8_t cmd) -{ - if (! quiet && msg) - grub_printf ("%s", msg); - - grub_err_t err = grub_hdparm_do_ata_cmd (ata, cmd, 0, 0, NULL, 0); - - if (! quiet && msg) - grub_printf ("%s\n", ! err ? "" : ": not supported"); - return err; -} - -static grub_err_t -grub_hdparm_set_val_cmd (const char * msg, int val, - grub_ata_t ata, grub_uint8_t cmd, - grub_uint8_t features, grub_uint8_t sectors) -{ - if (! quiet && msg && *msg) - { - if (val >= 0) - grub_printf ("Set %s to %d", msg, val); - else - grub_printf ("Disable %s", msg); - } - - grub_err_t err = grub_hdparm_do_ata_cmd (ata, cmd, features, sectors, - NULL, 0); - - if (! quiet && msg) - grub_printf ("%s\n", ! err ? "" : ": not supported"); - return err; -} - -static const char * -le16_to_char (grub_uint16_t *dest, const grub_uint16_t * src16, unsigned bytes) -{ - unsigned i; - for (i = 0; i < bytes / 2; i++) - dest[i] = grub_swap_bytes16 (src16[i]); - dest[i] = 0; - return (char *) dest; -} - -static void -grub_hdparm_print_identify (const grub_uint16_t * idw) -{ - /* Print identity strings. */ - grub_uint16_t tmp[21]; - grub_printf ("Model: \"%.40s\"\n", le16_to_char (tmp, &idw[27], 40)); - grub_printf ("Firmware: \"%.8s\"\n", le16_to_char (tmp, &idw[23], 8)); - grub_printf ("Serial: \"%.20s\"\n", le16_to_char (tmp, &idw[10], 20)); - - /* Print AAM, APM and SMART settings. */ - grub_uint16_t features1 = grub_le_to_cpu16 (idw[82]); - grub_uint16_t features2 = grub_le_to_cpu16 (idw[83]); - grub_uint16_t enabled1 = grub_le_to_cpu16 (idw[85]); - grub_uint16_t enabled2 = grub_le_to_cpu16 (idw[86]); - - grub_printf ("Automatic Acoustic Management: "); - if (features2 & 0x0200) - { - if (enabled2 & 0x0200) - { - grub_uint16_t aam = grub_le_to_cpu16 (idw[94]); - grub_printf ("%u (128=quiet, ..., 254=fast, recommended=%u)\n", - aam & 0xff, (aam >> 8) & 0xff); - } - else - grub_printf ("disabled\n"); - } - else - grub_printf ("not supported\n"); - - grub_printf ("Advanced Power Management: "); - if (features2 & 0x0008) - { - if (enabled2 & 0x0008) - grub_printf ("%u (1=low, ..., 254=high)\n", - grub_le_to_cpu16 (idw[91]) & 0xff); - else - grub_printf ("disabled\n"); - } - else - grub_printf ("not supported\n"); - - grub_printf ("SMART Feature Set: "); - if (features1 & 0x0001) - grub_printf ("%sabled\n", (enabled1 & 0x0001 ? "en" : "dis")); - else - grub_printf ("not supported\n"); - - /* Print security settings. */ - grub_uint16_t security = grub_le_to_cpu16 (idw[128]); - - grub_printf ("ATA Security: "); - if (security & 0x0001) - grub_printf ("%s, %s, %s, %s\n", - (security & 0x0002 ? "ENABLED" : "disabled"), - (security & 0x0004 ? "**LOCKED**" : "not locked"), - (security & 0x0008 ? "frozen" : "NOT FROZEN"), - (security & 0x0010 ? "COUNT EXPIRED" : "count not expired")); - else - grub_printf ("not supported\n"); -} - -static void -grub_hdparm_print_standby_tout (int timeout) -{ - if (timeout == 0) - grub_printf ("off"); - else if (timeout <= 252 || timeout == 255) - { - int h = 0, m = 0 , s = 0; - if (timeout == 255) - { - m = 21; - s = 15; - } - else if (timeout == 252) - m = 21; - else if (timeout <= 240) - { - s = timeout * 5; - m = s / 60; - s %= 60; - } - else - { - m = (timeout - 240) * 30; - h = m / 60; - m %= 60; - } - grub_printf ("%02d:%02d:%02d", h, m, s); - } - else - grub_printf ("invalid or vendor-specific"); -} - -static int get_int_arg (const struct grub_arg_list *state) -{ - return (state->set ? (int)grub_strtoul (state->arg, 0, 0) : -1); -} - -static grub_err_t -grub_cmd_hdparm (grub_extcmd_context_t ctxt, int argc, char **args) -{ - struct grub_arg_list *state = ctxt->state; - struct grub_ata *ata; - const char *diskname; - - /* Check command line. */ - if (argc != 1) - return grub_error (GRUB_ERR_BAD_ARGUMENT, N_("one argument expected")); - - if (args[0][0] == '(') - { - grub_size_t len = grub_strlen (args[0]); - if (args[0][len - 1] == ')') - args[0][len - 1] = 0; - diskname = &args[0][1]; - } - else - diskname = &args[0][0]; - - int i = 0; - int apm = get_int_arg (&state[i++]); - int power = state[i++].set; - int sec_freeze = state[i++].set; - int health = state[i++].set; - int aam = get_int_arg (&state[i++]); - int standby_tout = get_int_arg (&state[i++]); - int standby_now = state[i++].set; - int sleep_now = state[i++].set; - int ident = state[i++].set; - int dumpid = state[i++].set; - int enable_smart = get_int_arg (&state[i++]); - quiet = state[i++].set; - - /* Open disk. */ - grub_disk_t disk = grub_disk_open (diskname); - if (! disk) - return grub_errno; - - switch (disk->dev->id) - { - case GRUB_DISK_DEVICE_ATA_ID: - ata = disk->data; - break; - case GRUB_DISK_DEVICE_SCSI_ID: - if (((disk->id >> GRUB_SCSI_ID_SUBSYSTEM_SHIFT) & 0xFF) - == GRUB_SCSI_SUBSYSTEM_PATA - || (((disk->id >> GRUB_SCSI_ID_SUBSYSTEM_SHIFT) & 0xFF) - == GRUB_SCSI_SUBSYSTEM_AHCI)) - { - ata = ((struct grub_scsi *) disk->data)->data; - break; - } - /* FALLTHROUGH */ - default: - grub_disk_close (disk); - return grub_error (GRUB_ERR_IO, "not an ATA device"); - } - - - /* Change settings. */ - if (aam >= 0) - grub_hdparm_set_val_cmd ("Automatic Acoustic Management", (aam ? aam : -1), - ata, GRUB_ATA_CMD_SET_FEATURES, - (aam ? 0x42 : 0xc2), aam); - - if (apm >= 0) - grub_hdparm_set_val_cmd ("Advanced Power Management", - (apm != 255 ? apm : -1), ata, - GRUB_ATA_CMD_SET_FEATURES, - (apm != 255 ? 0x05 : 0x85), - (apm != 255 ? apm : 0)); - - if (standby_tout >= 0) - { - if (! quiet) - { - grub_printf ("Set standby timeout to %d (", standby_tout); - grub_hdparm_print_standby_tout (standby_tout); - grub_printf (")"); - } - /* The IDLE cmd sets disk to idle mode and configures standby timer. */ - grub_hdparm_set_val_cmd ("", -1, ata, GRUB_ATA_CMD_IDLE, 0, standby_tout); - } - - if (enable_smart >= 0) - { - if (! quiet) - grub_printf ("%sable SMART operations", (enable_smart ? "En" : "Dis")); - int err = grub_hdparm_do_smart_cmd (ata, (enable_smart ? - GRUB_ATA_FEAT_SMART_ENABLE : GRUB_ATA_FEAT_SMART_DISABLE)); - if (! quiet) - grub_printf ("%s\n", err ? ": not supported" : ""); - } - - if (sec_freeze) - grub_hdparm_simple_cmd ("Freeze security settings", ata, - GRUB_ATA_CMD_SECURITY_FREEZE_LOCK); - - /* Print/dump IDENTIFY. */ - if (ident || dumpid) - { - grub_uint16_t buf[GRUB_DISK_SECTOR_SIZE / 2]; - if (grub_hdparm_do_ata_cmd (ata, GRUB_ATA_CMD_IDENTIFY_DEVICE, - 0, 0, buf, sizeof (buf))) - grub_printf ("Cannot read ATA IDENTIFY data\n"); - else - { - if (ident) - grub_hdparm_print_identify (buf); - if (dumpid) - hexdump (0, (char *) buf, sizeof (buf)); - } - } - - /* Check power mode. */ - if (power) - { - grub_printf ("Disk power mode is: "); - int mode = grub_hdparm_do_check_powermode_cmd (ata); - if (mode < 0) - grub_printf ("unknown\n"); - else - grub_printf ("%s (0x%02x)\n", - (mode == 0xff ? "active/idle" : - mode == 0x80 ? "idle" : - mode == 0x00 ? "standby" : "unknown"), mode); - } - - /* Check health. */ - int status = 0; - if (health) - { - if (! quiet) - grub_printf ("SMART status is: "); - int err = grub_hdparm_do_smart_cmd (ata, GRUB_ATA_FEAT_SMART_STATUS); - if (! quiet) - grub_printf ("%s\n", (err < 0 ? "unknown" : - err == 0 ? "OK" : "*BAD*")); - status = (err > 0); - } - - /* Change power mode. */ - if (standby_now) - grub_hdparm_simple_cmd ("Set disk to standby mode", ata, - GRUB_ATA_CMD_STANDBY_IMMEDIATE); - - if (sleep_now) - grub_hdparm_simple_cmd ("Set disk to sleep mode", ata, - GRUB_ATA_CMD_SLEEP); - - grub_disk_close (disk); - - grub_errno = GRUB_ERR_NONE; - return status; -} - -static grub_extcmd_t cmd; - -GRUB_MOD_INIT(hdparm) -{ - cmd = grub_register_extcmd ("hdparm", grub_cmd_hdparm, 0, - N_("[OPTIONS] DISK"), - N_("Get/set ATA disk parameters."), options); -} - -GRUB_MOD_FINI(hdparm) -{ - grub_unregister_extcmd (cmd); -} diff --git a/thirdparty/grub-2.04/grub-core/commands/help.c b/thirdparty/grub-2.04/grub-core/commands/help.c deleted file mode 100644 index f0be89baa..000000000 --- a/thirdparty/grub-2.04/grub-core/commands/help.c +++ /dev/null @@ -1,153 +0,0 @@ -/* help.c - command to show a help text. */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2005,2007,2008,2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -static grub_err_t -grub_cmd_help (grub_extcmd_context_t ctxt __attribute__ ((unused)), int argc, - char **args) -{ - int cnt = 0; - char *currarg; - - if (argc == 0) - { - grub_command_t cmd; - FOR_COMMANDS(cmd) - { - if ((cmd->prio & GRUB_COMMAND_FLAG_ACTIVE)) - { - struct grub_term_output *term; - const char *summary_translated = _(cmd->summary); - char *command_help; - grub_uint32_t *unicode_command_help; - grub_uint32_t *unicode_last_position; - - command_help = grub_xasprintf ("%s %s", cmd->name, summary_translated); - if (!command_help) - break; - - grub_utf8_to_ucs4_alloc (command_help, &unicode_command_help, - &unicode_last_position); - - FOR_ACTIVE_TERM_OUTPUTS(term) - { - unsigned stringwidth; - grub_uint32_t *unicode_last_screen_position; - - unicode_last_screen_position = unicode_command_help; - - stringwidth = 0; - - while (unicode_last_screen_position < unicode_last_position && - stringwidth < ((grub_term_width (term) / 2) - 2)) - { - struct grub_unicode_glyph glyph; - unicode_last_screen_position - += grub_unicode_aglomerate_comb (unicode_last_screen_position, - unicode_last_position - - unicode_last_screen_position, - &glyph); - - stringwidth - += grub_term_getcharwidth (term, &glyph); - } - - grub_print_ucs4 (unicode_command_help, - unicode_last_screen_position, 0, 0, term); - if (!(cnt % 2)) - grub_print_spaces (term, grub_term_width (term) / 2 - - stringwidth); - } - - if (cnt % 2) - grub_printf ("\n"); - cnt++; - - grub_free (command_help); - grub_free (unicode_command_help); - } - } - if (!(cnt % 2)) - grub_printf ("\n"); - } - else - { - int i; - grub_command_t cmd_iter, cmd, cmd_next; - - for (i = 0; i < argc; i++) - { - currarg = args[i]; - - FOR_COMMANDS_SAFE (cmd_iter, cmd_next) - { - if (!(cmd_iter->prio & GRUB_COMMAND_FLAG_ACTIVE)) - continue; - - if (grub_strncmp (cmd_iter->name, currarg, - grub_strlen (currarg)) != 0) - continue; - if (cmd_iter->flags & GRUB_COMMAND_FLAG_DYNCMD) - cmd = grub_dyncmd_get_cmd (cmd_iter); - else - cmd = cmd_iter; - if (!cmd) - { - grub_print_error (); - continue; - } - if (cnt++ > 0) - grub_printf ("\n\n"); - - if ((cmd->flags & GRUB_COMMAND_FLAG_EXTCMD) && - ! (cmd->flags & GRUB_COMMAND_FLAG_DYNCMD)) - grub_arg_show_help ((grub_extcmd_t) cmd->data); - else - grub_printf ("%s %s %s\n%s\n", _("Usage:"), cmd->name, - _(cmd->summary), _(cmd->description)); - } - } - } - - return 0; -} - -static grub_extcmd_t cmd; - -GRUB_MOD_INIT(help) -{ - cmd = grub_register_extcmd ("help", grub_cmd_help, 0, - N_("[PATTERN ...]"), - N_("Show a help message."), 0); -} - -GRUB_MOD_FINI(help) -{ - grub_unregister_extcmd (cmd); -} diff --git a/thirdparty/grub-2.04/grub-core/commands/hexdump.c b/thirdparty/grub-2.04/grub-core/commands/hexdump.c deleted file mode 100644 index eaa12465b..000000000 --- a/thirdparty/grub-2.04/grub-core/commands/hexdump.c +++ /dev/null @@ -1,133 +0,0 @@ -/* hexdump.c - command to dump the contents of a file or memory */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2007,2008,2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -static const struct grub_arg_option options[] = { - {"skip", 's', 0, N_("Skip offset bytes from the beginning of file."), 0, - ARG_TYPE_INT}, - {"length", 'n', 0, N_("Read only LENGTH bytes."), 0, ARG_TYPE_INT}, - {0, 0, 0, 0, 0, 0} -}; - -static grub_err_t -grub_cmd_hexdump (grub_extcmd_context_t ctxt, int argc, char **args) -{ - struct grub_arg_list *state = ctxt->state; - char buf[GRUB_DISK_SECTOR_SIZE * 4]; - grub_ssize_t size, length; - grub_disk_addr_t skip; - int namelen; - - if (argc != 1) - return grub_error (GRUB_ERR_BAD_ARGUMENT, N_("filename expected")); - - namelen = grub_strlen (args[0]); - skip = (state[0].set) ? grub_strtoull (state[0].arg, 0, 0) : 0; - length = (state[1].set) ? grub_strtoul (state[1].arg, 0, 0) : 256; - - if (!grub_strcmp (args[0], "(mem)")) - hexdump (skip, (char *) (grub_addr_t) skip, length); - else if ((args[0][0] == '(') && (args[0][namelen - 1] == ')')) - { - grub_disk_t disk; - grub_disk_addr_t sector; - grub_size_t ofs; - - args[0][namelen - 1] = 0; - disk = grub_disk_open (&args[0][1]); - if (! disk) - return 0; - - sector = (skip >> (GRUB_DISK_SECTOR_BITS + 2)) * 4; - ofs = skip & (GRUB_DISK_SECTOR_SIZE * 4 - 1); - while (length) - { - grub_size_t len; - - len = length; - if (len > sizeof (buf)) - len = sizeof (buf); - - if (grub_disk_read (disk, sector, ofs, len, buf)) - break; - - hexdump (skip, buf, len); - - ofs = 0; - skip += len; - length -= len; - sector += 4; - } - - grub_disk_close (disk); - } - else - { - grub_file_t file; - - file = grub_file_open (args[0], GRUB_FILE_TYPE_HEXCAT); - if (! file) - return 0; - - file->offset = skip; - - while ((size = grub_file_read (file, buf, sizeof (buf))) > 0) - { - unsigned long len; - - len = ((length) && (size > length)) ? length : size; - hexdump (skip, buf, len); - skip += len; - if (length) - { - length -= len; - if (!length) - break; - } - } - - grub_file_close (file); - } - - return 0; -} - -static grub_extcmd_t cmd; - -GRUB_MOD_INIT (hexdump) -{ - cmd = grub_register_extcmd ("hexdump", grub_cmd_hexdump, 0, - N_("[OPTIONS] FILE_OR_DEVICE"), - N_("Show raw contents of a file or memory."), - options); -} - -GRUB_MOD_FINI (hexdump) -{ - grub_unregister_extcmd (cmd); -} diff --git a/thirdparty/grub-2.04/grub-core/commands/i386/cmosdump.c b/thirdparty/grub-2.04/grub-core/commands/i386/cmosdump.c deleted file mode 100644 index 626485ccb..000000000 --- a/thirdparty/grub-2.04/grub-core/commands/i386/cmosdump.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2009,2013 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -static grub_err_t -grub_cmd_cmosdump (struct grub_command *cmd __attribute__ ((unused)), - int argc __attribute__ ((unused)), char *argv[] __attribute__ ((unused))) -{ - int i; - - for (i = 0; i < 256; i++) - { - grub_err_t err; - grub_uint8_t value; - if ((i & 0xf) == 0) - grub_printf ("%02x: ", i); - - err = grub_cmos_read (i, &value); - if (err) - return err; - - grub_printf ("%02x ", value); - if ((i & 0xf) == 0xf) - grub_printf ("\n"); - } - return GRUB_ERR_NONE; -} - -static grub_command_t cmd; - - -GRUB_MOD_INIT(cmosdump) -{ - cmd = grub_register_command ("cmosdump", grub_cmd_cmosdump, - 0, - N_("Show raw dump of the CMOS contents.")); -} - -GRUB_MOD_FINI(cmosdump) -{ - grub_unregister_command (cmd); -} diff --git a/thirdparty/grub-2.04/grub-core/commands/i386/cmostest.c b/thirdparty/grub-2.04/grub-core/commands/i386/cmostest.c deleted file mode 100644 index c839b704d..000000000 --- a/thirdparty/grub-2.04/grub-core/commands/i386/cmostest.c +++ /dev/null @@ -1,124 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -static grub_err_t -parse_args (int argc, char *argv[], int *byte, int *bit) -{ - char *rest; - - if (argc != 1) - return grub_error (GRUB_ERR_BAD_ARGUMENT, "address required"); - - *byte = grub_strtoul (argv[0], &rest, 0); - if (*rest != ':') - return grub_error (GRUB_ERR_BAD_ARGUMENT, "address required"); - - *bit = grub_strtoul (rest + 1, 0, 0); - - return GRUB_ERR_NONE; -} - -static grub_err_t -grub_cmd_cmostest (struct grub_command *cmd __attribute__ ((unused)), - int argc, char *argv[]) -{ - int byte = 0, bit = 0; - grub_err_t err; - grub_uint8_t value; - - err = parse_args (argc, argv, &byte, &bit); - if (err) - return err; - - err = grub_cmos_read (byte, &value); - if (err) - return err; - - if (value & (1 << bit)) - return GRUB_ERR_NONE; - - return grub_error (GRUB_ERR_TEST_FAILURE, N_("false")); -} - -static grub_err_t -grub_cmd_cmosclean (struct grub_command *cmd __attribute__ ((unused)), - int argc, char *argv[]) -{ - int byte = 0, bit = 0; - grub_err_t err; - grub_uint8_t value; - - err = parse_args (argc, argv, &byte, &bit); - if (err) - return err; - err = grub_cmos_read (byte, &value); - if (err) - return err; - - return grub_cmos_write (byte, value & (~(1 << bit))); -} - -static grub_err_t -grub_cmd_cmosset (struct grub_command *cmd __attribute__ ((unused)), - int argc, char *argv[]) -{ - int byte = 0, bit = 0; - grub_err_t err; - grub_uint8_t value; - - err = parse_args (argc, argv, &byte, &bit); - if (err) - return err; - err = grub_cmos_read (byte, &value); - if (err) - return err; - - return grub_cmos_write (byte, value | (1 << bit)); -} - -static grub_command_t cmd, cmd_clean, cmd_set; - - -GRUB_MOD_INIT(cmostest) -{ - cmd = grub_register_command ("cmostest", grub_cmd_cmostest, - N_("BYTE:BIT"), - N_("Test bit at BYTE:BIT in CMOS.")); - cmd_clean = grub_register_command ("cmosclean", grub_cmd_cmosclean, - N_("BYTE:BIT"), - N_("Clear bit at BYTE:BIT in CMOS.")); - cmd_set = grub_register_command ("cmosset", grub_cmd_cmosset, - N_("BYTE:BIT"), - /* TRANSLATORS: A bit may be either set (1) or clear (0). */ - N_("Set bit at BYTE:BIT in CMOS.")); -} - -GRUB_MOD_FINI(cmostest) -{ - grub_unregister_command (cmd); - grub_unregister_command (cmd_clean); - grub_unregister_command (cmd_set); -} diff --git a/thirdparty/grub-2.04/grub-core/commands/i386/coreboot/cb_timestamps.c b/thirdparty/grub-2.04/grub-core/commands/i386/coreboot/cb_timestamps.c deleted file mode 100644 index e97ea6bed..000000000 --- a/thirdparty/grub-2.04/grub-core/commands/i386/coreboot/cb_timestamps.c +++ /dev/null @@ -1,126 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2013 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -static grub_uint32_t -tsc2ms (grub_uint64_t tsc) -{ - grub_uint64_t ah = tsc >> 32; - grub_uint64_t al = tsc & 0xffffffff; - - return ((al * grub_tsc_rate) >> 32) + ah * grub_tsc_rate; -} - -static const char *descs[] = { - [1] = "romstage", - [2] = "before RAM init", - [3] = "after RAM init", - [4] = "end of romstage", - [5] = "start of verified boot", - [6] = "end of verified boot", - [8] = "start of RAM copy", - [9] = "end of RAM copy", - [10] = "start of ramstage", - [11] = "start of bootblock", - [12] = "end of bootblock", - [13] = "starting to load romstage", - [14] = "finished loading romstage", - [15] = "starting LZMA decompress (ignore for x86)", - [16] = "finished LZMA decompress (ignore for x86)", - [30] = "device enumerate", - [40] = "device configure", - [50] = "device enable", - [60] = "device initialize", - [70] = "device done", - [75] = "CBMEM POST", - [80] = "writing tables", - [90] = "loading payload", - [98] = "wake jump", - [99] = "selfboot jump", -}; - -static int -iterate_linuxbios_table (grub_linuxbios_table_item_t table_item, - void *data) -{ - int *available = data; - grub_uint64_t last_tsc = 0; - struct grub_linuxbios_timestamp_table *ts_table; - unsigned i; - - if (table_item->tag != GRUB_LINUXBIOS_MEMBER_TIMESTAMPS) - return 0; - - *available = 1; - ts_table = (struct grub_linuxbios_timestamp_table *) (grub_addr_t) - *(grub_uint64_t *) (table_item + 1); - - for (i = 0; i < ts_table->used; i++) - { - grub_uint32_t tmabs = tsc2ms (ts_table->entries[i].tsc); - grub_uint32_t tmrel = tsc2ms (ts_table->entries[i].tsc - last_tsc); - last_tsc = ts_table->entries[i].tsc; - - grub_printf ("%3d.%03ds %2d.%03ds %02d %s\n", - tmabs / 1000, tmabs % 1000, tmrel / 1000, tmrel % 1000, - ts_table->entries[i].id, - (ts_table->entries[i].id < ARRAY_SIZE (descs) - && descs[ts_table->entries[i].id]) - ? descs[ts_table->entries[i].id] : ""); - } - return 1; -} - - -static grub_err_t -grub_cmd_coreboot_boottime (struct grub_command *cmd __attribute__ ((unused)), - int argc __attribute__ ((unused)), - char *argv[] __attribute__ ((unused))) -{ - int available = 0; - - grub_linuxbios_table_iterate (iterate_linuxbios_table, &available); - if (!available) - { - grub_puts_ (N_("No boot time statistics is available\n")); - return 0; - } - return 0; -} - -static grub_command_t cmd_boottime; - -GRUB_MOD_INIT(cbtime) -{ - cmd_boottime = - grub_register_command ("coreboot_boottime", grub_cmd_coreboot_boottime, - 0, N_("Show coreboot boot time statistics.")); -} - -GRUB_MOD_FINI(cbtime) -{ - grub_unregister_command (cmd_boottime); -} diff --git a/thirdparty/grub-2.04/grub-core/commands/i386/coreboot/cbls.c b/thirdparty/grub-2.04/grub-core/commands/i386/coreboot/cbls.c deleted file mode 100644 index 102291f42..000000000 --- a/thirdparty/grub-2.04/grub-core/commands/i386/coreboot/cbls.c +++ /dev/null @@ -1,143 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2013 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -static const char *console_descs[] = { - "8250 UART", - "VGA", - "BTEXT", - "log buffer console", - "SROM", - "EHCI debug", - "memory-mapped 8250 UART" -}; - -static const char *descs[] = { - [GRUB_LINUXBIOS_MEMBER_MEMORY] = "memory map (`lsmmap' to list)", - [GRUB_LINUXBIOS_MEMBER_MAINBOARD] = "mainboard", - [4] = "version", - [5] = "extra version", - [6] = "build", - [7] = "compile time", - [8] = "compile by", - [9] = "compile host", - [0xa] = "compile domain", - [0xb] = "compiler", - [0xc] = "linker", - [0xd] = "assembler", - [0xf] = "serial", - [GRUB_LINUXBIOS_MEMBER_CONSOLE] = "console", - [GRUB_LINUXBIOS_MEMBER_FRAMEBUFFER] = "framebuffer", - [0x13] = "GPIO", - [0x15] = "VDAT", - [GRUB_LINUXBIOS_MEMBER_TIMESTAMPS] = "timestamps (`coreboot_boottime' to list)", - [GRUB_LINUXBIOS_MEMBER_CBMEMC] = "CBMEM console (`cbmemc' to list)", - [0x18] = "MRC cache", - [0x19] = "VBNV", - [0xc8] = "CMOS option table", - [0xc9] = "CMOS option", - [0xca] = "CMOS option enum", - [0xcb] = "CMOS option defaults", - [0xcc] = "CMOS checksum", -}; - -static int -iterate_linuxbios_table (grub_linuxbios_table_item_t table_item, - void *data __attribute__ ((unused))) -{ - if (table_item->tag < ARRAY_SIZE (descs) && descs[table_item->tag]) - grub_printf ("tag=%02x size=%02x %s", - table_item->tag, table_item->size, descs[table_item->tag]); - else - grub_printf ("tag=%02x size=%02x", - table_item->tag, table_item->size); - - switch (table_item->tag) - { - case GRUB_LINUXBIOS_MEMBER_FRAMEBUFFER: - { - struct grub_linuxbios_table_framebuffer *fb; - fb = (struct grub_linuxbios_table_framebuffer *) (table_item + 1); - - grub_printf (": %dx%dx%d pitch=%d lfb=0x%llx %d/%d/%d/%d %d/%d/%d/%d", - fb->width, fb->height, - fb->bpp, fb->pitch, - (unsigned long long) fb->lfb, - fb->red_mask_size, fb->green_mask_size, - fb->blue_mask_size, fb->reserved_mask_size, - fb->red_field_pos, fb->green_field_pos, - fb->blue_field_pos, fb->reserved_field_pos); - break; - } - case GRUB_LINUXBIOS_MEMBER_MAINBOARD: - { - struct grub_linuxbios_mainboard *mb; - mb = (struct grub_linuxbios_mainboard *) (table_item + 1); - grub_printf (": vendor=`%s' part_number=`%s'", - mb->strings + mb->vendor, - mb->strings + mb->part_number); - break; - } - case 0x04 ... 0x0d: - grub_printf (": `%s'", (char *) (table_item + 1)); - break; - case GRUB_LINUXBIOS_MEMBER_CONSOLE: - { - grub_uint16_t *val = (grub_uint16_t *) (table_item + 1); - grub_printf (": id=%d", *val); - if (*val < ARRAY_SIZE (console_descs) - && console_descs[*val]) - grub_printf (" %s", console_descs[*val]); - } - } - grub_printf ("\n"); - - return 0; -} - - -static grub_err_t -grub_cmd_lscoreboot (struct grub_command *cmd __attribute__ ((unused)), - int argc __attribute__ ((unused)), - char *argv[] __attribute__ ((unused))) -{ - grub_linuxbios_table_iterate (iterate_linuxbios_table, 0); - return 0; -} - -static grub_command_t cmd; - -GRUB_MOD_INIT(cbls) -{ - cmd = - grub_register_command ("lscoreboot", grub_cmd_lscoreboot, - 0, N_("List coreboot tables.")); -} - -GRUB_MOD_FINI(cbls) -{ - grub_unregister_command (cmd); -} diff --git a/thirdparty/grub-2.04/grub-core/commands/i386/cpuid.c b/thirdparty/grub-2.04/grub-core/commands/i386/cpuid.c deleted file mode 100644 index 42b984154..000000000 --- a/thirdparty/grub-2.04/grub-core/commands/i386/cpuid.c +++ /dev/null @@ -1,125 +0,0 @@ -/* cpuid.c - test for CPU features */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2006, 2007, 2009 Free Software Foundation, Inc. - * Based on gcc/gcc/config/i386/driver-i386.c - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -static const struct grub_arg_option options[] = - { - /* TRANSLATORS: "(default)" at the end means that this option is used if - no argument is specified. */ - {"long-mode", 'l', 0, N_("Check if CPU supports 64-bit (long) mode (default)."), 0, 0}, - {"pae", 'p', 0, N_("Check if CPU supports Physical Address Extension."), 0, 0}, - {0, 0, 0, 0, 0, 0} - }; - -enum - { - MODE_LM = 0, - MODE_PAE = 1 - }; - -enum - { - bit_PAE = (1 << 6), - }; -enum - { - bit_LM = (1 << 29) - }; - -unsigned char grub_cpuid_has_longmode = 0, grub_cpuid_has_pae = 0; - -static grub_err_t -grub_cmd_cpuid (grub_extcmd_context_t ctxt, - int argc __attribute__ ((unused)), - char **args __attribute__ ((unused))) -{ - int val = 0; - if (ctxt->state[MODE_PAE].set) - val = grub_cpuid_has_pae; - else - val = grub_cpuid_has_longmode; - return val ? GRUB_ERR_NONE - /* TRANSLATORS: it's a standalone boolean value, - opposite of "true". */ - : grub_error (GRUB_ERR_TEST_FAILURE, N_("false")); -} - -static grub_extcmd_t cmd; - -GRUB_MOD_INIT(cpuid) -{ -#ifdef __x86_64__ - /* grub-emu */ - grub_cpuid_has_longmode = 1; - grub_cpuid_has_pae = 1; -#else - unsigned int eax, ebx, ecx, edx; - unsigned int max_level; - unsigned int ext_level; - - /* See if we can use cpuid. */ - asm volatile ("pushfl; pushfl; popl %0; movl %0,%1; xorl %2,%0;" - "pushl %0; popfl; pushfl; popl %0; popfl" - : "=&r" (eax), "=&r" (ebx) - : "i" (0x00200000)); - if (((eax ^ ebx) & 0x00200000) == 0) - goto done; - - /* Check the highest input value for eax. */ - grub_cpuid (0, eax, ebx, ecx, edx); - /* We only look at the first four characters. */ - max_level = eax; - if (max_level == 0) - goto done; - - if (max_level >= 1) - { - grub_cpuid (1, eax, ebx, ecx, edx); - grub_cpuid_has_pae = !!(edx & bit_PAE); - } - - grub_cpuid (0x80000000, eax, ebx, ecx, edx); - ext_level = eax; - if (ext_level < 0x80000000) - goto done; - - grub_cpuid (0x80000001, eax, ebx, ecx, edx); - grub_cpuid_has_longmode = !!(edx & bit_LM); -done: -#endif - - cmd = grub_register_extcmd ("cpuid", grub_cmd_cpuid, 0, - "[-l]", N_("Check for CPU features."), options); -} - -GRUB_MOD_FINI(cpuid) -{ - grub_unregister_extcmd (cmd); -} diff --git a/thirdparty/grub-2.04/grub-core/commands/i386/pc/drivemap.c b/thirdparty/grub-2.04/grub-core/commands/i386/pc/drivemap.c deleted file mode 100644 index 7f7f2d41c..000000000 --- a/thirdparty/grub-2.04/grub-core/commands/i386/pc/drivemap.c +++ /dev/null @@ -1,428 +0,0 @@ -/* drivemap.c - command to manage the BIOS drive mappings. */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2008, 2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -/* Real mode IVT slot (seg:off far pointer) for interrupt 0x13. */ -static grub_uint32_t *const int13slot = (grub_uint32_t *) (4 * 0x13); - -/* Remember to update enum opt_idxs accordingly. */ -static const struct grub_arg_option options[] = { - /* TRANSLATORS: In this file "mapping" refers to a change GRUB makes so if - your language doesn't have an equivalent of "mapping" you can - use the word like "rerouting". - */ - {"list", 'l', 0, N_("Show the current mappings."), 0, 0}, - {"reset", 'r', 0, N_("Reset all mappings to the default values."), 0, 0}, - {"swap", 's', 0, N_("Perform both direct and reverse mappings."), 0, 0}, - {0, 0, 0, 0, 0, 0} -}; - -/* Remember to update options[] accordingly. */ -enum opt_idxs -{ - OPTIDX_LIST = 0, - OPTIDX_RESET, - OPTIDX_SWAP, -}; - -/* Realmode far ptr (2 * 16b) to the previous INT13h handler. */ -extern grub_uint32_t grub_drivemap_oldhandler; - -/* The type "void" is used for imported assembly labels, takes no storage and - serves just to take the address with &label. */ - -/* The assembly function to replace the old INT13h handler. It does not follow - any C callspecs and returns with IRET. */ -extern const void grub_drivemap_handler; - -/* Start of the drive mappings area (space reserved at runtime). */ -extern const void grub_drivemap_mapstart; - -typedef struct drivemap_node -{ - struct drivemap_node *next; - grub_uint8_t newdrive; - grub_uint8_t redirto; -} drivemap_node_t; - -typedef struct GRUB_PACKED int13map_node -{ - grub_uint8_t disknum; - grub_uint8_t mapto; -} int13map_node_t; - -#define INT13H_OFFSET(x) \ - (((grub_uint8_t *)(x)) - ((grub_uint8_t *)&grub_drivemap_handler)) - -static drivemap_node_t *map_head; -static void *drivemap_hook; -static int drivemap_mmap; - -/* Puts the specified mapping into the table, replacing an existing mapping - for newdrive or adding a new one if required. */ -static grub_err_t -drivemap_set (grub_uint8_t newdrive, grub_uint8_t redirto) -{ - drivemap_node_t *mapping = 0; - drivemap_node_t *search = map_head; - while (search) - { - if (search->newdrive == newdrive) - { - mapping = search; - break; - } - search = search->next; - } - - /* Check for pre-existing mappings to modify before creating a new one. */ - if (mapping) - mapping->redirto = redirto; - else - { - mapping = grub_malloc (sizeof (drivemap_node_t)); - if (! mapping) - return grub_errno; - mapping->newdrive = newdrive; - mapping->redirto = redirto; - mapping->next = map_head; - map_head = mapping; - } - return GRUB_ERR_NONE; -} - -/* Removes the mapping for newdrive from the table. If there is no mapping, - then this function behaves like a no-op on the map. */ -static void -drivemap_remove (grub_uint8_t newdrive) -{ - drivemap_node_t *mapping = 0; - drivemap_node_t *search = map_head; - drivemap_node_t *previous = 0; - - while (search) - { - if (search->newdrive == newdrive) - { - mapping = search; - break; - } - previous = search; - search = search->next; - } - - if (mapping) - { - if (previous) - previous->next = mapping->next; - else - map_head = mapping->next; - grub_free (mapping); - } -} - -/* Given a GRUB-like device name and a convenient location, stores the - related BIOS disk number. Accepts devices like \((f|h)dN\), with - 0 <= N < 128. */ -static grub_err_t -tryparse_diskstring (const char *str, grub_uint8_t *output) -{ - /* Skip opening paren in order to allow both (hd0) and hd0. */ - if (*str == '(') - str++; - if ((str[0] == 'f' || str[0] == 'h') && str[1] == 'd') - { - grub_uint8_t bios_num = (str[0] == 'h') ? 0x80 : 0x00; - unsigned long drivenum = grub_strtoul (str + 2, 0, 0); - if (grub_errno == GRUB_ERR_NONE && drivenum < 128) - { - bios_num |= drivenum; - if (output) - *output = bios_num; - return GRUB_ERR_NONE; - } - } - return grub_error (GRUB_ERR_BAD_ARGUMENT, "device format \"%s\" " - "invalid: must be (f|h)dN, with 0 <= N < 128", str); -} - -static grub_err_t -list_mappings (void) -{ - /* Show: list mappings. */ - if (! map_head) - { - grub_puts_ (N_("No drives have been remapped")); - return GRUB_ERR_NONE; - } - - /* TRANSLATORS: This is the header of mapping list. - On the left is how OS will see the disks and - on the right current GRUB vision. */ - grub_puts_ (N_("OS disk #num ------> GRUB/BIOS device")); - drivemap_node_t *curnode = map_head; - while (curnode) - { - grub_printf ("%cD #%-3u (0x%02x) %cd%d\n", - (curnode->newdrive & 0x80) ? 'H' : 'F', - curnode->newdrive & 0x7F, curnode->newdrive, - (curnode->redirto & 0x80) ? 'h' : 'f', - curnode->redirto & 0x7F - ); - curnode = curnode->next; - } - return GRUB_ERR_NONE; -} - -static grub_err_t -grub_cmd_drivemap (struct grub_extcmd_context *ctxt, int argc, char **args) -{ - if (ctxt->state[OPTIDX_LIST].set) - { - return list_mappings (); - } - else if (ctxt->state[OPTIDX_RESET].set) - { - /* Reset: just delete all mappings, freeing their memory. */ - drivemap_node_t *curnode = map_head; - drivemap_node_t *prevnode = 0; - while (curnode) - { - prevnode = curnode; - curnode = curnode->next; - grub_free (prevnode); - } - map_head = 0; - return GRUB_ERR_NONE; - } - else if (!ctxt->state[OPTIDX_SWAP].set && argc == 0) - { - /* No arguments */ - return list_mappings (); - } - - /* Neither flag: put mapping. */ - grub_uint8_t mapfrom = 0; - grub_uint8_t mapto = 0xFF; - grub_err_t err; - - if (argc != 2) - return grub_error (GRUB_ERR_BAD_ARGUMENT, N_("two arguments expected")); - - err = tryparse_diskstring (args[0], &mapfrom); - if (err != GRUB_ERR_NONE) - return err; - - err = tryparse_diskstring (args[1], &mapto); - if (err != GRUB_ERR_NONE) - return err; - - if (mapto == mapfrom) - { - /* Reset to default. */ - grub_dprintf ("drivemap", "Removing mapping for %s (%02x)\n", - args[0], mapfrom); - drivemap_remove (mapfrom); - return GRUB_ERR_NONE; - } - /* Set the mapping for the disk (overwrites any existing mapping). */ - grub_dprintf ("drivemap", "%s %s (%02x) = %s (%02x)\n", - ctxt->state[OPTIDX_SWAP].set ? "Swapping" : "Mapping", - args[1], mapto, args[0], mapfrom); - err = drivemap_set (mapto, mapfrom); - /* If -s, perform the reverse mapping too (only if the first was OK). */ - if (ctxt->state[OPTIDX_SWAP].set && err == GRUB_ERR_NONE) - err = drivemap_set (mapfrom, mapto); - return err; -} - -/* Int13h handler installer - reserves conventional memory for the handler, - copies it over and sets the IVT entry for int13h. - This code rests on the assumption that GRUB does not activate any kind - of memory mapping apart from identity paging, since it accesses - realmode structures by their absolute addresses, like the IVT at 0; - and transforms a pmode pointer into a rmode seg:off far ptr. */ -static grub_err_t -install_int13_handler (int noret __attribute__ ((unused))) -{ - /* Size of the full int13 handler "bundle", including code and map. */ - grub_uint32_t total_size; - /* Base address of the space reserved for the handler bundle. */ - grub_uint8_t *handler_base = 0; - /* Address of the map within the deployed bundle. */ - int13map_node_t *handler_map; - - int i; - int entries = 0; - drivemap_node_t *curentry = map_head; - - /* Count entries to prepare a contiguous map block. */ - while (curentry) - { - entries++; - curentry = curentry->next; - } - if (entries == 0) - { - /* No need to install the int13h handler. */ - grub_dprintf ("drivemap", "No drives marked as remapped, not installing " - "our int13h handler.\n"); - return GRUB_ERR_NONE; - } - - grub_dprintf ("drivemap", "Installing our int13h handler\n"); - - /* Save the pointer to the old handler. */ - grub_drivemap_oldhandler = *int13slot; - grub_dprintf ("drivemap", "Original int13 handler: %04x:%04x\n", - (grub_drivemap_oldhandler >> 16) & 0x0ffff, - grub_drivemap_oldhandler & 0x0ffff); - - /* Find a rmode-segment-aligned zone in conventional memory big - enough to hold the handler and its data. */ - total_size = INT13H_OFFSET (&grub_drivemap_mapstart) - + (entries + 1) * sizeof (int13map_node_t); - grub_dprintf ("drivemap", "Payload is %u bytes long\n", total_size); - handler_base = grub_mmap_malign_and_register (16, ALIGN_UP (total_size, 16), - &drivemap_mmap, - GRUB_MEMORY_RESERVED, - GRUB_MMAP_MALLOC_LOW); - if (! handler_base) - return grub_error (GRUB_ERR_OUT_OF_MEMORY, "couldn't reserve " - "memory for the int13h handler"); - - /* Copy int13h handler bundle to reserved area. */ - grub_dprintf ("drivemap", "Reserved memory at %p, copying handler\n", - handler_base); - grub_memcpy (handler_base, &grub_drivemap_handler, - INT13H_OFFSET (&grub_drivemap_mapstart)); - - /* Copy the mappings to the reserved area. */ - curentry = map_head; - handler_map = (int13map_node_t *) (handler_base + - INT13H_OFFSET (&grub_drivemap_mapstart)); - grub_dprintf ("drivemap", "Target map at %p, copying mappings\n", handler_map); - for (i = 0; i < entries; ++i, curentry = curentry->next) - { - handler_map[i].disknum = curentry->newdrive; - handler_map[i].mapto = curentry->redirto; - grub_dprintf ("drivemap", "\t#%d: 0x%02x <- 0x%02x\n", i, - handler_map[i].disknum, handler_map[i].mapto); - } - /* Signal end-of-map. */ - handler_map[i].disknum = 0; - handler_map[i].mapto = 0; - grub_dprintf ("drivemap", "\t#%d: 0x00 <- 0x00 (end)\n", i); - - /* Install our function as the int13h handler in the IVT. */ - *int13slot = ((grub_uint32_t) handler_base) << 12; /* Segment address. */ - grub_dprintf ("drivemap", "New int13 handler: %04x:%04x\n", - (*int13slot >> 16) & 0x0ffff, *int13slot & 0x0ffff); - - return GRUB_ERR_NONE; -} - -static grub_err_t -uninstall_int13_handler (void) -{ - if (! grub_drivemap_oldhandler) - return GRUB_ERR_NONE; - - *int13slot = grub_drivemap_oldhandler; - grub_mmap_free_and_unregister (drivemap_mmap); - grub_drivemap_oldhandler = 0; - grub_dprintf ("drivemap", "Restored int13 handler: %04x:%04x\n", - (*int13slot >> 16) & 0x0ffff, *int13slot & 0x0ffff); - - return GRUB_ERR_NONE; -} - -static int -grub_get_root_biosnumber_drivemap (void) -{ - const char *biosnum; - int ret = -1; - grub_device_t dev; - - biosnum = grub_env_get ("biosnum"); - - if (biosnum) - return grub_strtoul (biosnum, 0, 0); - - dev = grub_device_open (0); - if (dev && dev->disk && dev->disk->dev - && dev->disk->dev->id == GRUB_DISK_DEVICE_BIOSDISK_ID) - { - drivemap_node_t *curnode = map_head; - ret = (int) dev->disk->id; - while (curnode) - { - if (curnode->redirto == ret) - { - ret = curnode->newdrive; - break; - } - curnode = curnode->next; - } - - } - - if (dev) - grub_device_close (dev); - - return ret; -} - -static grub_extcmd_t cmd; -static int (*grub_get_root_biosnumber_saved) (void); - -GRUB_MOD_INIT (drivemap) -{ - grub_get_root_biosnumber_saved = grub_get_root_biosnumber; - grub_get_root_biosnumber = grub_get_root_biosnumber_drivemap; - cmd = grub_register_extcmd ("drivemap", grub_cmd_drivemap, 0, - N_("-l | -r | [-s] grubdev osdisk."), - N_("Manage the BIOS drive mappings."), - options); - drivemap_hook = - grub_loader_register_preboot_hook (&install_int13_handler, - &uninstall_int13_handler, - GRUB_LOADER_PREBOOT_HOOK_PRIO_NORMAL); -} - -GRUB_MOD_FINI (drivemap) -{ - grub_get_root_biosnumber = grub_get_root_biosnumber_saved; - grub_loader_unregister_preboot_hook (drivemap_hook); - drivemap_hook = 0; - grub_unregister_extcmd (cmd); -} diff --git a/thirdparty/grub-2.04/grub-core/commands/i386/pc/drivemap_int13h.S b/thirdparty/grub-2.04/grub-core/commands/i386/pc/drivemap_int13h.S deleted file mode 100644 index 3c87521b6..000000000 --- a/thirdparty/grub-2.04/grub-core/commands/i386/pc/drivemap_int13h.S +++ /dev/null @@ -1,124 +0,0 @@ -/* drivemap_int13h.S - interrupt handler for the BIOS drive remapper */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2008, 2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include - -#define INT13H_OFFSET(x) ((x) - LOCAL (base)) - -.code16 - -/* Copy starts here. When deployed, this code must be segment-aligned. */ - -/* The replacement int13 handler. Preserve all registers. */ -FUNCTION(grub_drivemap_handler) -LOCAL (base): - /* Save %dx for future restore. */ - push %dx - /* Push flags. Used to simulate interrupt with original flags. */ - pushf - - /* Map the drive number (always in DL). */ - push %ax - push %bx -#ifdef __APPLE__ - LOCAL(mapstart_offset) = INT13H_OFFSET(LOCAL (mapstart)) - movw $LOCAL(mapstart_offset), %bx -#else - movw $INT13H_OFFSET(LOCAL (mapstart)), %bx -#endif - -more_remaining: - movw %cs:(%bx), %ax - cmpb %ah, %al - jz not_found /* DRV=DST => map end - drive not remapped, keep DL. */ - inc %bx - inc %bx - cmpb %dl, %al - jnz more_remaining /* Not found, but more remaining, loop. */ - movb %ah, %dl /* Found - drive remapped, modify DL. */ - -not_found: - pop %bx - pop %ax - - /* If the call isn't ah=0x8 or ah=0x15 we must restore %dx. */ - cmpb $0x8, %ah - jz norestore - cmpb $0x15, %ah - jz norestore - - /* Restore flags. */ - popf - pushf - -#ifdef __APPLE__ - LOCAL(oldhandler_offset) = INT13H_OFFSET (LOCAL (oldhandler)) - lcall *%cs:LOCAL(oldhandler_offset) -#else - lcall *%cs:INT13H_OFFSET (LOCAL (oldhandler)) -#endif - - push %bp - mov %sp, %bp - -tail: - /* Save new flags below %esp so the caller will recieve new flags. */ - pushf - pop %dx - mov %dx, 8(%bp) - - pop %bp - - /* Restore %dx. */ - pop %dx - iret - -norestore: - - /* Restore flags. */ - popf - pushf - -#ifdef __APPLE__ - lcall *%cs:LOCAL(oldhandler_offset) -#else - lcall *%cs:INT13H_OFFSET (LOCAL (oldhandler)) -#endif - - push %bp - mov %sp, %bp - - /* Save %dx. So it won't be restored to original value. */ - mov %dx, 2(%bp) - - jmp tail - -/* Far pointer to the old handler. Stored as a CS:IP in the style of real-mode - IVT entries (thus PI:SC in mem). */ -VARIABLE(grub_drivemap_oldhandler) -LOCAL (oldhandler): - .word 0x0, 0x0 - -/* This label MUST be at the end of the copied block, since the installer code - reserves additional space for mappings at runtime and copies them over it. */ - .align 2 - -VARIABLE(grub_drivemap_mapstart) -LOCAL (mapstart): - .byte 0 diff --git a/thirdparty/grub-2.04/grub-core/commands/i386/pc/halt.c b/thirdparty/grub-2.04/grub-core/commands/i386/pc/halt.c deleted file mode 100644 index 1e7c2c9b3..000000000 --- a/thirdparty/grub-2.04/grub-core/commands/i386/pc/halt.c +++ /dev/null @@ -1,126 +0,0 @@ -/* halt.c - command to halt the computer. */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2005,2007,2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -static const struct grub_arg_option options[] = - { - {"no-apm", 'n', 0, N_("Do not use APM to halt the computer."), 0, 0}, - {0, 0, 0, 0, 0, 0} - }; - -static inline void __attribute__ ((noreturn)) -stop (void) -{ - while (1) - { - asm volatile ("hlt"); - } -} -/* - * Halt the system, using APM if possible. If NO_APM is true, don't use - * APM even if it is available. - */ -void __attribute__ ((noreturn)) -grub_halt (int no_apm) -{ - struct grub_bios_int_registers regs; - - grub_acpi_halt (); - - if (no_apm) - stop (); - - /* detect APM */ - regs.eax = 0x5300; - regs.ebx = 0; - regs.flags = GRUB_CPU_INT_FLAGS_DEFAULT; - grub_bios_interrupt (0x15, ®s); - - if (regs.flags & GRUB_CPU_INT_FLAGS_CARRY) - stop (); - - /* disconnect APM first */ - regs.eax = 0x5304; - regs.ebx = 0; - regs.flags = GRUB_CPU_INT_FLAGS_DEFAULT; - grub_bios_interrupt (0x15, ®s); - - /* connect APM */ - regs.eax = 0x5301; - regs.ebx = 0; - regs.flags = GRUB_CPU_INT_FLAGS_DEFAULT; - grub_bios_interrupt (0x15, ®s); - if (regs.flags & GRUB_CPU_INT_FLAGS_CARRY) - stop (); - - /* set APM protocol level - 1.1 or bust. (this covers APM 1.2 also) */ - regs.eax = 0x530E; - regs.ebx = 0; - regs.ecx = 0x0101; - regs.flags = GRUB_CPU_INT_FLAGS_DEFAULT; - grub_bios_interrupt (0x15, ®s); - if (regs.flags & GRUB_CPU_INT_FLAGS_CARRY) - stop (); - - /* set the power state to off */ - regs.eax = 0x5307; - regs.ebx = 1; - regs.ecx = 3; - regs.flags = GRUB_CPU_INT_FLAGS_DEFAULT; - grub_bios_interrupt (0x15, ®s); - - /* shouldn't reach here */ - stop (); -} - -static grub_err_t __attribute__ ((noreturn)) -grub_cmd_halt (grub_extcmd_context_t ctxt, - int argc __attribute__ ((unused)), - char **args __attribute__ ((unused))) - -{ - struct grub_arg_list *state = ctxt->state; - int no_apm = 0; - - if (state[0].set) - no_apm = 1; - grub_halt (no_apm); -} - -static grub_extcmd_t cmd; - -GRUB_MOD_INIT(halt) -{ - cmd = grub_register_extcmd ("halt", grub_cmd_halt, 0, "[-n]", - N_("Halt the system, if possible using APM."), - options); -} - -GRUB_MOD_FINI(halt) -{ - grub_unregister_extcmd (cmd); -} diff --git a/thirdparty/grub-2.04/grub-core/commands/i386/pc/lsapm.c b/thirdparty/grub-2.04/grub-core/commands/i386/pc/lsapm.c deleted file mode 100644 index c82476df1..000000000 --- a/thirdparty/grub-2.04/grub-core/commands/i386/pc/lsapm.c +++ /dev/null @@ -1,115 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2010 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -int -grub_apm_get_info (struct grub_apm_info *info) -{ - struct grub_bios_int_registers regs; - - /* detect APM */ - regs.eax = 0x5300; - regs.ebx = 0; - regs.flags = GRUB_CPU_INT_FLAGS_DEFAULT; - grub_bios_interrupt (0x15, ®s); - - if (regs.flags & GRUB_CPU_INT_FLAGS_CARRY) - return 0; - info->version = regs.eax & 0xffff; - info->flags = regs.ecx & 0xffff; - - /* disconnect APM first */ - regs.eax = 0x5304; - regs.ebx = 0; - regs.flags = GRUB_CPU_INT_FLAGS_DEFAULT; - grub_bios_interrupt (0x15, ®s); - - /* connect APM */ - regs.eax = 0x5303; - regs.ebx = 0; - regs.flags = GRUB_CPU_INT_FLAGS_DEFAULT; - grub_bios_interrupt (0x15, ®s); - - if (regs.flags & GRUB_CPU_INT_FLAGS_CARRY) - return 0; - - info->cseg = regs.eax & 0xffff; - info->offset = regs.ebx; - info->cseg_16 = regs.ecx & 0xffff; - info->dseg = regs.edx & 0xffff; - info->cseg_len = regs.esi >> 16; - info->cseg_16_len = regs.esi & 0xffff; - info->dseg_len = regs.edi; - - return 1; -} - -static grub_err_t -grub_cmd_lsapm (grub_command_t cmd __attribute__ ((unused)), - int argc __attribute__ ((unused)), char **args __attribute__ ((unused))) -{ - struct grub_apm_info info; - if (!grub_apm_get_info (&info)) - return grub_error (GRUB_ERR_IO, N_("no APM found")); - - grub_printf_ (N_("Version %u.%u\n" - "32-bit CS = 0x%x, len = 0x%x, offset = 0x%x\n" - "16-bit CS = 0x%x, len = 0x%x\n" - "DS = 0x%x, len = 0x%x\n"), - info.version >> 8, info.version & 0xff, - info.cseg, info.cseg_len, info.offset, - info.cseg_16, info.cseg_16_len, - info.dseg, info.dseg_len); - grub_xputs (info.flags & GRUB_APM_FLAGS_16BITPROTECTED_SUPPORTED - ? _("16-bit protected interface supported\n") - : _("16-bit protected interface unsupported\n")); - grub_xputs (info.flags & GRUB_APM_FLAGS_32BITPROTECTED_SUPPORTED - ? _("32-bit protected interface supported\n") - : _("32-bit protected interface unsupported\n")); - grub_xputs (info.flags & GRUB_APM_FLAGS_CPUIDLE_SLOWS_DOWN - ? _("CPU Idle slows down processor\n") - : _("CPU Idle doesn't slow down processor\n")); - grub_xputs (info.flags & GRUB_APM_FLAGS_DISABLED - ? _("APM disabled\n") : _("APM enabled\n")); - grub_xputs (info.flags & GRUB_APM_FLAGS_DISENGAGED - ? _("APM disengaged\n") : _("APM engaged\n")); - - return GRUB_ERR_NONE; -} - -static grub_command_t cmd; - -GRUB_MOD_INIT(lsapm) -{ - cmd = grub_register_command ("lsapm", grub_cmd_lsapm, 0, - N_("Show APM information.")); -} - -GRUB_MOD_FINI(lsapm) -{ - grub_unregister_command (cmd); -} - - diff --git a/thirdparty/grub-2.04/grub-core/commands/i386/pc/play.c b/thirdparty/grub-2.04/grub-core/commands/i386/pc/play.c deleted file mode 100644 index c81813105..000000000 --- a/thirdparty/grub-2.04/grub-core/commands/i386/pc/play.c +++ /dev/null @@ -1,197 +0,0 @@ -/* play.c - command to play a tune */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2005,2007,2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -/* Lots of this file is borrowed from GNU/Hurd generic-speaker driver. */ - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -#define BASE_TEMPO (60 * 1000) - - -#define T_REST ((grub_uint16_t) 0) -#define T_FINE ((grub_uint16_t) -1) - -struct note -{ - grub_uint16_t pitch; - grub_uint16_t duration; -}; - -/* Returns whether playing should continue. */ -static int -play (unsigned tempo, struct note *note) -{ - grub_uint64_t to; - - if (note->pitch == T_FINE || grub_getkey_noblock () != GRUB_TERM_NO_KEY) - return 1; - - grub_dprintf ("play", "pitch = %d, duration = %d\n", note->pitch, - note->duration); - - switch (note->pitch) - { - case T_REST: - grub_speaker_beep_off (); - break; - - default: - grub_speaker_beep_on (note->pitch); - break; - } - - to = grub_get_time_ms () + BASE_TEMPO * note->duration / tempo; - while ((grub_get_time_ms () <= to) - && (grub_getkey_noblock () == GRUB_TERM_NO_KEY)); - - return 0; -} - -static grub_err_t -grub_cmd_play (grub_command_t cmd __attribute__ ((unused)), - int argc, char **args) -{ - - if (argc < 1) - return grub_error (GRUB_ERR_BAD_ARGUMENT, - /* TRANSLATORS: It's musical notes, not the notes - you take. Play command expects arguments which can - be either a filename or tempo+notes. - This error happens if none is specified. */ - N_("filename or tempo and notes expected")); - - if (argc == 1) - { - struct note buf; - grub_uint32_t tempo; - grub_file_t file; - - file = grub_file_open (args[0], GRUB_FILE_TYPE_AUDIO); - - if (! file) - return grub_errno; - - if (grub_file_read (file, &tempo, sizeof (tempo)) != sizeof (tempo)) - { - grub_file_close (file); - if (!grub_errno) - grub_error (GRUB_ERR_FILE_READ_ERROR, N_("premature end of file %s"), - args[0]); - return grub_errno; - } - - if (!tempo) - { - grub_file_close (file); - grub_error (GRUB_ERR_BAD_ARGUMENT, N_("Invalid tempo in %s"), - args[0]); - return grub_errno; - } - - tempo = grub_le_to_cpu32 (tempo); - grub_dprintf ("play","tempo = %d\n", tempo); - - while (grub_file_read (file, &buf, - sizeof (struct note)) == sizeof (struct note)) - { - buf.pitch = grub_le_to_cpu16 (buf.pitch); - buf.duration = grub_le_to_cpu16 (buf.duration); - - if (play (tempo, &buf)) - break; - } - - grub_file_close (file); - } - else - { - char *end; - unsigned tempo; - struct note note; - int i; - - tempo = grub_strtoul (args[0], &end, 0); - - if (!tempo) - { - grub_error (GRUB_ERR_BAD_ARGUMENT, N_("Invalid tempo in %s"), - args[0]); - return grub_errno; - } - - if (*end) - /* Was not a number either, assume it was supposed to be a file name. */ - return grub_error (GRUB_ERR_FILE_NOT_FOUND, N_("file `%s' not found"), args[0]); - - grub_dprintf ("play","tempo = %d\n", tempo); - - for (i = 1; i + 1 < argc; i += 2) - { - note.pitch = grub_strtoul (args[i], &end, 0); - if (grub_errno) - break; - if (*end) - { - grub_error (GRUB_ERR_BAD_NUMBER, N_("unrecognized number")); - break; - } - - note.duration = grub_strtoul (args[i + 1], &end, 0); - if (grub_errno) - break; - if (*end) - { - grub_error (GRUB_ERR_BAD_NUMBER, N_("unrecognized number")); - break; - } - - if (play (tempo, ¬e)) - break; - } - } - - grub_speaker_beep_off (); - - return 0; -} - -static grub_command_t cmd; - -GRUB_MOD_INIT(play) -{ - cmd = grub_register_command ("play", grub_cmd_play, - N_("FILE | TEMPO [PITCH1 DURATION1] [PITCH2 DURATION2] ... "), - N_("Play a tune.")); -} - -GRUB_MOD_FINI(play) -{ - grub_unregister_command (cmd); -} diff --git a/thirdparty/grub-2.04/grub-core/commands/i386/pc/sendkey.c b/thirdparty/grub-2.04/grub-core/commands/i386/pc/sendkey.c deleted file mode 100644 index 26d9acd3d..000000000 --- a/thirdparty/grub-2.04/grub-core/commands/i386/pc/sendkey.c +++ /dev/null @@ -1,387 +0,0 @@ -/* sendkey.c - fake keystroke. */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2009 Free Software Foundation, Inc. - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - */ - -#include -#include -#include -#include -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv2+"); - -static char sendkey[0x20]; -/* Length of sendkey. */ -static int keylen = 0; -static int noled = 0; -static const struct grub_arg_option options[] = - { - {"num", 'n', 0, N_("set numlock mode"), "[on|off]", ARG_TYPE_STRING}, - {"caps", 'c', 0, N_("set capslock mode"), "[on|off]", ARG_TYPE_STRING}, - {"scroll", 's', 0, N_("set scrolllock mode"), "[on|off]", ARG_TYPE_STRING}, - {"insert", 0, 0, N_("set insert mode"), "[on|off]", ARG_TYPE_STRING}, - {"pause", 0, 0, N_("set pause mode"), "[on|off]", ARG_TYPE_STRING}, - {"left-shift", 0, 0, N_("press left shift"), "[on|off]", ARG_TYPE_STRING}, - {"right-shift", 0, 0, N_("press right shift"), "[on|off]", ARG_TYPE_STRING}, - {"sysrq", 0, 0, N_("press SysRq"), "[on|off]", ARG_TYPE_STRING}, - {"numkey", 0, 0, N_("press NumLock key"), "[on|off]", ARG_TYPE_STRING}, - {"capskey", 0, 0, N_("press CapsLock key"), "[on|off]", ARG_TYPE_STRING}, - {"scrollkey", 0, 0, N_("press ScrollLock key"), "[on|off]", ARG_TYPE_STRING}, - {"insertkey", 0, 0, N_("press Insert key"), "[on|off]", ARG_TYPE_STRING}, - {"left-alt", 0, 0, N_("press left alt"), "[on|off]", ARG_TYPE_STRING}, - {"right-alt", 0, 0, N_("press right alt"), "[on|off]", ARG_TYPE_STRING}, - {"left-ctrl", 0, 0, N_("press left ctrl"), "[on|off]", ARG_TYPE_STRING}, - {"right-ctrl", 0, 0, N_("press right ctrl"), "[on|off]", ARG_TYPE_STRING}, - {"no-led", 0, 0, N_("don't update LED state"), 0, 0}, - {0, 0, 0, 0, 0, 0} - }; -static int simple_flag_offsets[] -= {5, 6, 4, 7, 11, 1, 0, 10, 13, 14, 12, 15, 9, 3, 8, 2}; - -static grub_uint32_t andmask = 0xffffffff, ormask = 0; - -struct -keysym -{ - const char *unshifted_name; /* the name in unshifted state */ - const char *shifted_name; /* the name in shifted state */ - unsigned char unshifted_ascii; /* the ascii code in unshifted state */ - unsigned char shifted_ascii; /* the ascii code in shifted state */ - unsigned char keycode; /* keyboard scancode */ -}; - -/* The table for key symbols. If the "shifted" member of an entry is - NULL, the entry does not have shifted state. Copied from GRUB Legacy setkey fuction */ -static struct keysym keysym_table[] = -{ - {"escape", 0, 0x1b, 0, 0x01}, - {"1", "exclam", '1', '!', 0x02}, - {"2", "at", '2', '@', 0x03}, - {"3", "numbersign", '3', '#', 0x04}, - {"4", "dollar", '4', '$', 0x05}, - {"5", "percent", '5', '%', 0x06}, - {"6", "caret", '6', '^', 0x07}, - {"7", "ampersand", '7', '&', 0x08}, - {"8", "asterisk", '8', '*', 0x09}, - {"9", "parenleft", '9', '(', 0x0a}, - {"0", "parenright", '0', ')', 0x0b}, - {"minus", "underscore", '-', '_', 0x0c}, - {"equal", "plus", '=', '+', 0x0d}, - {"backspace", 0, '\b', 0, 0x0e}, - {"tab", 0, '\t', 0, 0x0f}, - {"q", "Q", 'q', 'Q', 0x10}, - {"w", "W", 'w', 'W', 0x11}, - {"e", "E", 'e', 'E', 0x12}, - {"r", "R", 'r', 'R', 0x13}, - {"t", "T", 't', 'T', 0x14}, - {"y", "Y", 'y', 'Y', 0x15}, - {"u", "U", 'u', 'U', 0x16}, - {"i", "I", 'i', 'I', 0x17}, - {"o", "O", 'o', 'O', 0x18}, - {"p", "P", 'p', 'P', 0x19}, - {"bracketleft", "braceleft", '[', '{', 0x1a}, - {"bracketright", "braceright", ']', '}', 0x1b}, - {"enter", 0, '\r', 0, 0x1c}, - {"control", 0, 0, 0, 0x1d}, - {"a", "A", 'a', 'A', 0x1e}, - {"s", "S", 's', 'S', 0x1f}, - {"d", "D", 'd', 'D', 0x20}, - {"f", "F", 'f', 'F', 0x21}, - {"g", "G", 'g', 'G', 0x22}, - {"h", "H", 'h', 'H', 0x23}, - {"j", "J", 'j', 'J', 0x24}, - {"k", "K", 'k', 'K', 0x25}, - {"l", "L", 'l', 'L', 0x26}, - {"semicolon", "colon", ';', ':', 0x27}, - {"quote", "doublequote", '\'', '"', 0x28}, - {"backquote", "tilde", '`', '~', 0x29}, - {"shift", 0, 0, 0, 0x2a}, - {"backslash", "bar", '\\', '|', 0x2b}, - {"z", "Z", 'z', 'Z', 0x2c}, - {"x", "X", 'x', 'X', 0x2d}, - {"c", "C", 'c', 'C', 0x2e}, - {"v", "V", 'v', 'V', 0x2f}, - {"b", "B", 'b', 'B', 0x30}, - {"n", "N", 'n', 'N', 0x31}, - {"m", "M", 'm', 'M', 0x32}, - {"comma", "less", ',', '<', 0x33}, - {"period", "greater", '.', '>', 0x34}, - {"slash", "question", '/', '?', 0x35}, - {"rshift", 0, 0, 0, 0x36}, - {"numasterisk", 0, '*', 0, 0x37}, - {"alt", 0, 0, 0, 0x38}, - {"space", 0, ' ', 0, 0x39}, - {"capslock", 0, 0, 0, 0x3a}, - {"F1", 0, 0, 0, 0x3b}, - {"F2", 0, 0, 0, 0x3c}, - {"F3", 0, 0, 0, 0x3d}, - {"F4", 0, 0, 0, 0x3e}, - {"F5", 0, 0, 0, 0x3f}, - {"F6", 0, 0, 0, 0x40}, - {"F7", 0, 0, 0, 0x41}, - {"F8", 0, 0, 0, 0x42}, - {"F9", 0, 0, 0, 0x43}, - {"F10", 0, 0, 0, 0x44}, - {"num7", "numhome", '7', 0, 0x47}, - {"num8", "numup", '8', 0, 0x48}, - {"num9", "numpgup", '9', 0, 0x49}, - {"numminus", 0, '-', 0, 0x4a}, - {"num4", "numleft", '4', 0, 0x4b}, - {"num5", "numcenter", '5', 0, 0x4c}, - {"num6", "numright", '6', 0, 0x4d}, - {"numplus", 0, '-', 0, 0x4e}, - {"num1", "numend", '1', 0, 0x4f}, - {"num2", "numdown", '2', 0, 0x50}, - {"num3", "numpgdown", '3', 0, 0x51}, - {"num0", "numinsert", '0', 0, 0x52}, - {"numperiod", "numdelete", 0, 0x7f, 0x53}, - {"F11", 0, 0, 0, 0x57}, - {"F12", 0, 0, 0, 0x58}, - {"numenter", 0, '\r', 0, 0xe0}, - {"numslash", 0, '/', 0, 0xe0}, - {"delete", 0, 0x7f, 0, 0xe0}, - {"insert", 0, 0xe0, 0, 0x52}, - {"home", 0, 0xe0, 0, 0x47}, - {"end", 0, 0xe0, 0, 0x4f}, - {"pgdown", 0, 0xe0, 0, 0x51}, - {"pgup", 0, 0xe0, 0, 0x49}, - {"down", 0, 0xe0, 0, 0x50}, - {"up", 0, 0xe0, 0, 0x48}, - {"left", 0, 0xe0, 0, 0x4b}, - {"right", 0, 0xe0, 0, 0x4d} -}; - -/* Set a simple flag in flags variable - OUTOFFSET - offset of flag in FLAGS, - OP - action id -*/ -static void -grub_sendkey_set_simple_flag (int outoffset, int op) -{ - if (op == 2) - { - andmask |= (1 << outoffset); - ormask &= ~(1 << outoffset); - } - else - { - andmask &= (~(1 << outoffset)); - if (op == 1) - ormask |= (1 << outoffset); - else - ormask &= ~(1 << outoffset); - } -} - -static int -grub_sendkey_parse_op (struct grub_arg_list state) -{ - if (! state.set) - return 2; - - if (grub_strcmp (state.arg, "off") == 0 || grub_strcmp (state.arg, "0") == 0 - || grub_strcmp (state.arg, "unpress") == 0) - return 0; - - if (grub_strcmp (state.arg, "on") == 0 || grub_strcmp (state.arg, "1") == 0 - || grub_strcmp (state.arg, "press") == 0) - return 1; - - return 2; -} - -static grub_uint32_t oldflags; - -static grub_err_t -grub_sendkey_postboot (void) -{ - /* For convention: pointer to flags. */ - grub_uint32_t *flags = (grub_uint32_t *) 0x417; - - *flags = oldflags; - - *((char *) 0x41a) = 0x1e; - *((char *) 0x41c) = 0x1e; - - return GRUB_ERR_NONE; -} - -/* Set keyboard buffer to our sendkey */ -static grub_err_t -grub_sendkey_preboot (int noret __attribute__ ((unused))) -{ - /* For convention: pointer to flags. */ - grub_uint32_t *flags = (grub_uint32_t *) 0x417; - - oldflags = *flags; - - /* Set the sendkey. */ - *((char *) 0x41a) = 0x1e; - *((char *) 0x41c) = keylen + 0x1e; - grub_memcpy ((char *) 0x41e, sendkey, 0x20); - - /* Transform "any ctrl" to "right ctrl" flag. */ - if (*flags & (1 << 8)) - *flags &= ~(1 << 2); - - /* Transform "any alt" to "right alt" flag. */ - if (*flags & (1 << 9)) - *flags &= ~(1 << 3); - - *flags = (*flags & andmask) | ormask; - - /* Transform "right ctrl" to "any ctrl" flag. */ - if (*flags & (1 << 8)) - *flags |= (1 << 2); - - /* Transform "right alt" to "any alt" flag. */ - if (*flags & (1 << 9)) - *flags |= (1 << 3); - - /* Write new LED state */ - if (!noled) - { - int value = 0; - int failed; - /* Try 5 times */ - for (failed = 0; failed < 5; failed++) - { - value = 0; - /* Send command change LEDs */ - grub_outb (0xed, 0x60); - - /* Wait */ - do - value = grub_inb (0x60); - while ((value != 0xfa) && (value != 0xfe)); - - if (value == 0xfa) - { - /* Set new LEDs*/ - grub_outb ((*flags >> 4) & 7, 0x60); - break; - } - } - } - return GRUB_ERR_NONE; -} - -/* Helper for grub_cmd_sendkey. */ -static int -find_key_code (char *key) -{ - unsigned i; - - for (i = 0; i < ARRAY_SIZE(keysym_table); i++) - { - if (keysym_table[i].unshifted_name - && grub_strcmp (key, keysym_table[i].unshifted_name) == 0) - return keysym_table[i].keycode; - else if (keysym_table[i].shifted_name - && grub_strcmp (key, keysym_table[i].shifted_name) == 0) - return keysym_table[i].keycode; - } - - return 0; -} - -/* Helper for grub_cmd_sendkey. */ -static int -find_ascii_code (char *key) -{ - unsigned i; - - for (i = 0; i < ARRAY_SIZE(keysym_table); i++) - { - if (keysym_table[i].unshifted_name - && grub_strcmp (key, keysym_table[i].unshifted_name) == 0) - return keysym_table[i].unshifted_ascii; - else if (keysym_table[i].shifted_name - && grub_strcmp (key, keysym_table[i].shifted_name) == 0) - return keysym_table[i].shifted_ascii; - } - - return 0; -} - -static grub_err_t -grub_cmd_sendkey (grub_extcmd_context_t ctxt, int argc, char **args) -{ - struct grub_arg_list *state = ctxt->state; - - andmask = 0xffffffff; - ormask = 0; - - { - int i; - - keylen = 0; - - for (i = 0; i < argc && keylen < 0x20; i++) - { - int key_code; - - key_code = find_key_code (args[i]); - if (key_code) - { - sendkey[keylen++] = find_ascii_code (args[i]); - sendkey[keylen++] = key_code; - } - } - } - - { - unsigned i; - for (i = 0; i < ARRAY_SIZE(simple_flag_offsets); i++) - grub_sendkey_set_simple_flag (simple_flag_offsets[i], - grub_sendkey_parse_op(state[i])); - } - - /* Set noled. */ - noled = (state[ARRAY_SIZE(simple_flag_offsets)].set); - - return GRUB_ERR_NONE; -} - -static grub_extcmd_t cmd; -static struct grub_preboot *preboot_hook; - -GRUB_MOD_INIT (sendkey) -{ - cmd = grub_register_extcmd ("sendkey", grub_cmd_sendkey, 0, - N_("[KEYSTROKE1] [KEYSTROKE2] ..."), - /* TRANSLATORS: It can emulate multiple - keypresses. */ - N_("Emulate a keystroke sequence"), options); - - preboot_hook - = grub_loader_register_preboot_hook (grub_sendkey_preboot, - grub_sendkey_postboot, - GRUB_LOADER_PREBOOT_HOOK_PRIO_CONSOLE); -} - -GRUB_MOD_FINI (sendkey) -{ - grub_unregister_extcmd (cmd); - grub_loader_unregister_preboot_hook (preboot_hook); -} diff --git a/thirdparty/grub-2.04/grub-core/commands/i386/rdmsr.c b/thirdparty/grub-2.04/grub-core/commands/i386/rdmsr.c deleted file mode 100644 index 15b9adfca..000000000 --- a/thirdparty/grub-2.04/grub-core/commands/i386/rdmsr.c +++ /dev/null @@ -1,102 +0,0 @@ -/* rdmsr.c - Read CPU model-specific registers. */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2019 Free Software Foundation, Inc. - * Based on gcc/gcc/config/i386/driver-i386.c - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE("GPLv3+"); - -static grub_extcmd_t cmd_read; - -static const struct grub_arg_option options[] = -{ - {0, 'v', 0, N_("Save read value into variable VARNAME."), - N_("VARNAME"), ARG_TYPE_STRING}, - {0, 0, 0, 0, 0, 0} -}; - -static grub_err_t -grub_cmd_msr_read (grub_extcmd_context_t ctxt, int argc, char **argv) -{ - grub_uint32_t manufacturer[3], max_cpuid, a, b, c, features, addr; - grub_uint64_t value; - char *ptr; - char buf[sizeof("1122334455667788")]; - - /* - * The CPUID instruction should be used to determine whether MSRs - * are supported. (CPUID.01H:EDX[5] = 1) - */ - if (! grub_cpu_is_cpuid_supported ()) - return grub_error (GRUB_ERR_BUG, N_("unsupported instruction")); - - grub_cpuid (0, max_cpuid, manufacturer[0], manufacturer[2], manufacturer[1]); - - if (max_cpuid < 1) - return grub_error (GRUB_ERR_BUG, N_("unsupported instruction")); - - grub_cpuid (1, a, b, c, features); - - if (!(features & (1 << 5))) - return grub_error (GRUB_ERR_BUG, N_("unsupported instruction")); - - if (argc != 1) - return grub_error (GRUB_ERR_BAD_ARGUMENT, N_("one argument expected")); - - grub_errno = GRUB_ERR_NONE; - ptr = argv[0]; - addr = grub_strtoul (ptr, &ptr, 0); - - if (grub_errno != GRUB_ERR_NONE) - return grub_errno; - if (*ptr != '\0') - return grub_error (GRUB_ERR_BAD_ARGUMENT, N_("invalid argument")); - - value = grub_msr_read (addr); - - if (ctxt->state[0].set) - { - grub_snprintf (buf, sizeof(buf), "%llx", (unsigned long long) value); - grub_env_set (ctxt->state[0].arg, buf); - } - else - grub_printf ("0x%llx\n", (unsigned long long) value); - - return GRUB_ERR_NONE; -} - -GRUB_MOD_INIT(rdmsr) -{ - cmd_read = grub_register_extcmd ("rdmsr", grub_cmd_msr_read, 0, N_("ADDR"), - N_("Read a CPU model specific register."), - options); -} - -GRUB_MOD_FINI(rdmsr) -{ - grub_unregister_extcmd (cmd_read); -} diff --git a/thirdparty/grub-2.04/grub-core/commands/i386/wrmsr.c b/thirdparty/grub-2.04/grub-core/commands/i386/wrmsr.c deleted file mode 100644 index 9c5e510eb..000000000 --- a/thirdparty/grub-2.04/grub-core/commands/i386/wrmsr.c +++ /dev/null @@ -1,93 +0,0 @@ -/* wrmsr.c - Write CPU model-specific registers. */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2019 Free Software Foundation, Inc. - * Based on gcc/gcc/config/i386/driver-i386.c - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE("GPLv3+"); - -static grub_command_t cmd_write; - -static grub_err_t -grub_cmd_msr_write (grub_command_t cmd __attribute__ ((unused)), int argc, char **argv) -{ - grub_uint32_t manufacturer[3], max_cpuid, a, b, c, features, addr; - grub_uint64_t value; - char *ptr; - - /* - * The CPUID instruction should be used to determine whether MSRs - * are supported. (CPUID.01H:EDX[5] = 1) - */ - if (!grub_cpu_is_cpuid_supported ()) - return grub_error (GRUB_ERR_BUG, N_("unsupported instruction")); - - grub_cpuid (0, max_cpuid, manufacturer[0], manufacturer[2], manufacturer[1]); - - if (max_cpuid < 1) - return grub_error (GRUB_ERR_BUG, N_("unsupported instruction")); - - grub_cpuid (1, a, b, c, features); - - if (!(features & (1 << 5))) - return grub_error (GRUB_ERR_BUG, N_("unsupported instruction")); - - if (argc != 2) - return grub_error (GRUB_ERR_BAD_ARGUMENT, N_("two arguments expected")); - - grub_errno = GRUB_ERR_NONE; - ptr = argv[0]; - addr = grub_strtoul (ptr, &ptr, 0); - - if (grub_errno != GRUB_ERR_NONE) - return grub_errno; - if (*ptr != '\0') - return grub_error (GRUB_ERR_BAD_ARGUMENT, N_("invalid argument")); - - ptr = argv[1]; - value = grub_strtoull (ptr, &ptr, 0); - - if (grub_errno != GRUB_ERR_NONE) - return grub_errno; - if (*ptr != '\0') - return grub_error (GRUB_ERR_BAD_ARGUMENT, N_("invalid argument")); - - grub_msr_write (addr, value); - - return GRUB_ERR_NONE; -} - -GRUB_MOD_INIT(wrmsr) -{ - cmd_write = grub_register_command ("wrmsr", grub_cmd_msr_write, N_("ADDR VALUE"), - N_("Write a value to a CPU model specific register.")); -} - -GRUB_MOD_FINI(wrmsr) -{ - grub_unregister_command (cmd_write); -} diff --git a/thirdparty/grub-2.04/grub-core/commands/ieee1275/suspend.c b/thirdparty/grub-2.04/grub-core/commands/ieee1275/suspend.c deleted file mode 100644 index b50548574..000000000 --- a/thirdparty/grub-2.04/grub-core/commands/ieee1275/suspend.c +++ /dev/null @@ -1,51 +0,0 @@ -/* suspend.c - command to suspend GRUB and return to Open Firmware */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2005,2007 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -static grub_err_t -grub_cmd_suspend (grub_command_t cmd __attribute__ ((unused)), - int argc __attribute__ ((unused)), - char **args __attribute__ ((unused))) -{ - grub_puts_ (N_("Run `go' to resume GRUB.")); - grub_ieee1275_enter (); - grub_cls (); - return 0; -} - -static grub_command_t cmd; - -GRUB_MOD_INIT(ieee1275_suspend) -{ - cmd = grub_register_command ("suspend", grub_cmd_suspend, - 0, N_("Return to IEEE1275 prompt.")); -} - -GRUB_MOD_FINI(ieee1275_suspend) -{ - grub_unregister_command (cmd); -} diff --git a/thirdparty/grub-2.04/grub-core/commands/iorw.c b/thirdparty/grub-2.04/grub-core/commands/iorw.c deleted file mode 100644 index a0c164e54..000000000 --- a/thirdparty/grub-2.04/grub-core/commands/iorw.c +++ /dev/null @@ -1,155 +0,0 @@ -/* memrw.c - command to read / write physical memory */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -static grub_extcmd_t cmd_read_byte, cmd_read_word, cmd_read_dword; -static grub_command_t cmd_write_byte, cmd_write_word, cmd_write_dword; - -static const struct grub_arg_option options[] = - { - {0, 'v', 0, N_("Save read value into variable VARNAME."), - N_("VARNAME"), ARG_TYPE_STRING}, - {0, 0, 0, 0, 0, 0} - }; - - -static grub_err_t -grub_cmd_read (grub_extcmd_context_t ctxt, int argc, char **argv) -{ - grub_port_t addr; - grub_uint32_t value = 0; - - if (argc != 1) - return grub_error (GRUB_ERR_BAD_ARGUMENT, N_("one argument expected")); - - addr = grub_strtoul (argv[0], 0, 0); - switch (ctxt->extcmd->cmd->name[sizeof ("in") - 1]) - { - case 'l': - value = grub_inl (addr); - break; - - case 'w': - value = grub_inw (addr); - break; - - case 'b': - value = grub_inb (addr); - break; - } - - if (ctxt->state[0].set) - { - char buf[sizeof ("XXXXXXXX")]; - grub_snprintf (buf, sizeof (buf), "%x", value); - grub_env_set (ctxt->state[0].arg, buf); - } - else - grub_printf ("0x%x\n", value); - - return 0; -} - -static grub_err_t -grub_cmd_write (grub_command_t cmd, int argc, char **argv) -{ - grub_port_t addr; - grub_uint32_t value; - grub_uint32_t mask = 0xffffffff; - - if (argc != 2 && argc != 3) - return grub_error (GRUB_ERR_BAD_ARGUMENT, N_("two arguments expected")); - - addr = grub_strtoul (argv[0], 0, 0); - value = grub_strtoul (argv[1], 0, 0); - if (argc == 3) - mask = grub_strtoul (argv[2], 0, 0); - value &= mask; - switch (cmd->name[sizeof ("out") - 1]) - { - case 'l': - if (mask != 0xffffffff) - grub_outl ((grub_inl (addr) & ~mask) | value, addr); - else - grub_outl (value, addr); - break; - - case 'w': - if ((mask & 0xffff) != 0xffff) - grub_outw ((grub_inw (addr) & ~mask) | value, addr); - else - grub_outw (value, addr); - break; - - case 'b': - if ((mask & 0xff) != 0xff) - grub_outb ((grub_inb (addr) & ~mask) | value, addr); - else - grub_outb (value, addr); - break; - } - - return 0; -} - -GRUB_MOD_INIT(memrw) -{ - cmd_read_byte = - grub_register_extcmd ("inb", grub_cmd_read, 0, - N_("PORT"), N_("Read 8-bit value from PORT."), - options); - cmd_read_word = - grub_register_extcmd ("inw", grub_cmd_read, 0, - N_("PORT"), N_("Read 16-bit value from PORT."), - options); - cmd_read_dword = - grub_register_extcmd ("inl", grub_cmd_read, 0, - N_("PORT"), N_("Read 32-bit value from PORT."), - options); - cmd_write_byte = - grub_register_command ("outb", grub_cmd_write, - N_("PORT VALUE [MASK]"), - N_("Write 8-bit VALUE to PORT.")); - cmd_write_word = - grub_register_command ("outw", grub_cmd_write, - N_("PORT VALUE [MASK]"), - N_("Write 16-bit VALUE to PORT.")); - cmd_write_dword = - grub_register_command ("outl", grub_cmd_write, - N_("ADDR VALUE [MASK]"), - N_("Write 32-bit VALUE to PORT.")); -} - -GRUB_MOD_FINI(memrw) -{ - grub_unregister_extcmd (cmd_read_byte); - grub_unregister_extcmd (cmd_read_word); - grub_unregister_extcmd (cmd_read_dword); - grub_unregister_command (cmd_write_byte); - grub_unregister_command (cmd_write_word); - grub_unregister_command (cmd_write_dword); -} diff --git a/thirdparty/grub-2.04/grub-core/commands/keylayouts.c b/thirdparty/grub-2.04/grub-core/commands/keylayouts.c deleted file mode 100644 index c05d6128a..000000000 --- a/thirdparty/grub-2.04/grub-core/commands/keylayouts.c +++ /dev/null @@ -1,307 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2002,2003,2005,2007,2008,2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -static struct grub_keyboard_layout layout_us = { - .keyboard_map = { - /* Keyboard errors. Handled by driver. */ - /* 0x00 */ 0, 0, 0, 0, - - /* 0x04 */ 'a', 'b', 'c', 'd', - /* 0x08 */ 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', - /* 0x10 */ 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', - /* 0x18 */ 'u', 'v', 'w', 'x', 'y', 'z', '1', '2', - /* 0x20 */ '3', '4', '5', '6', '7', '8', '9', '0', - /* 0x28 */ '\n', GRUB_TERM_ESC, GRUB_TERM_BACKSPACE, GRUB_TERM_TAB, ' ', '-', '=', '[', - /* According to usage table 0x31 should be mapped to '/' - but testing with real keyboard shows that 0x32 is remapped to '/'. - Map 0x31 to 0. - */ - /* 0x30 */ ']', 0, '\\', ';', '\'', '`', ',', '.', - /* 0x39 is CapsLock. Handled by driver. */ - /* 0x38 */ '/', 0, GRUB_TERM_KEY_F1, GRUB_TERM_KEY_F2, - /* 0x3c */ GRUB_TERM_KEY_F3, GRUB_TERM_KEY_F4, - /* 0x3e */ GRUB_TERM_KEY_F5, GRUB_TERM_KEY_F6, - /* 0x40 */ GRUB_TERM_KEY_F7, GRUB_TERM_KEY_F8, - /* 0x42 */ GRUB_TERM_KEY_F9, GRUB_TERM_KEY_F10, - /* 0x44 */ GRUB_TERM_KEY_F11, GRUB_TERM_KEY_F12, - /* PrtScr and ScrollLock. Not handled yet. */ - /* 0x46 */ 0, 0, - /* 0x48 is Pause. Not handled yet. */ - /* 0x48 */ 0, GRUB_TERM_KEY_INSERT, - /* 0x4a */ GRUB_TERM_KEY_HOME, GRUB_TERM_KEY_PPAGE, - /* 0x4c */ GRUB_TERM_KEY_DC, GRUB_TERM_KEY_END, - /* 0x4e */ GRUB_TERM_KEY_NPAGE, GRUB_TERM_KEY_RIGHT, - /* 0x50 */ GRUB_TERM_KEY_LEFT, GRUB_TERM_KEY_DOWN, - /* 0x53 is NumLock. Handled by driver. */ - /* 0x52 */ GRUB_TERM_KEY_UP, 0, - /* 0x54 */ '/', '*', - /* 0x56 */ '-', '+', - /* 0x58 */ '\n', GRUB_TERM_KEY_END, - /* 0x5a */ GRUB_TERM_KEY_DOWN, GRUB_TERM_KEY_NPAGE, - /* 0x5c */ GRUB_TERM_KEY_LEFT, GRUB_TERM_KEY_CENTER, - /* 0x5e */ GRUB_TERM_KEY_RIGHT, GRUB_TERM_KEY_HOME, - /* 0x60 */ GRUB_TERM_KEY_UP, GRUB_TERM_KEY_PPAGE, - /* 0x62 */ GRUB_TERM_KEY_INSERT, GRUB_TERM_KEY_DC, - /* 0x64 */ '\\' - }, - .keyboard_map_shift = { - /* Keyboard errors. Handled by driver. */ - /* 0x00 */ 0, 0, 0, 0, - - /* 0x04 */ 'A', 'B', 'C', 'D', - /* 0x08 */ 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', - /* 0x10 */ 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', - /* 0x18 */ 'U', 'V', 'W', 'X', 'Y', 'Z', '!', '@', - /* 0x20 */ '#', '$', '%', '^', '&', '*', '(', ')', - /* 0x28 */ '\n' | GRUB_TERM_SHIFT, GRUB_TERM_ESC | GRUB_TERM_SHIFT, - /* 0x2a */ GRUB_TERM_BACKSPACE | GRUB_TERM_SHIFT, GRUB_TERM_TAB | GRUB_TERM_SHIFT, - /* 0x2c */ ' ' | GRUB_TERM_SHIFT, '_', '+', '{', - /* According to usage table 0x31 should be mapped to '/' - but testing with real keyboard shows that 0x32 is remapped to '/'. - Map 0x31 to 0. - */ - /* 0x30 */ '}', 0, '|', ':', '"', '~', '<', '>', - /* 0x39 is CapsLock. Handled by driver. */ - /* 0x38 */ '?', 0, - /* 0x3a */ GRUB_TERM_KEY_F1 | GRUB_TERM_SHIFT, - /* 0x3b */ GRUB_TERM_KEY_F2 | GRUB_TERM_SHIFT, - /* 0x3c */ GRUB_TERM_KEY_F3 | GRUB_TERM_SHIFT, - /* 0x3d */ GRUB_TERM_KEY_F4 | GRUB_TERM_SHIFT, - /* 0x3e */ GRUB_TERM_KEY_F5 | GRUB_TERM_SHIFT, - /* 0x3f */ GRUB_TERM_KEY_F6 | GRUB_TERM_SHIFT, - /* 0x40 */ GRUB_TERM_KEY_F7 | GRUB_TERM_SHIFT, - /* 0x41 */ GRUB_TERM_KEY_F8 | GRUB_TERM_SHIFT, - /* 0x42 */ GRUB_TERM_KEY_F9 | GRUB_TERM_SHIFT, - /* 0x43 */ GRUB_TERM_KEY_F10 | GRUB_TERM_SHIFT, - /* 0x44 */ GRUB_TERM_KEY_F11 | GRUB_TERM_SHIFT, - /* 0x45 */ GRUB_TERM_KEY_F12 | GRUB_TERM_SHIFT, - /* PrtScr and ScrollLock. Not handled yet. */ - /* 0x46 */ 0, 0, - /* 0x48 is Pause. Not handled yet. */ - /* 0x48 */ 0, GRUB_TERM_KEY_INSERT | GRUB_TERM_SHIFT, - /* 0x4a */ GRUB_TERM_KEY_HOME | GRUB_TERM_SHIFT, - /* 0x4b */ GRUB_TERM_KEY_PPAGE | GRUB_TERM_SHIFT, - /* 0x4c */ GRUB_TERM_KEY_DC | GRUB_TERM_SHIFT, - /* 0x4d */ GRUB_TERM_KEY_END | GRUB_TERM_SHIFT, - /* 0x4e */ GRUB_TERM_KEY_NPAGE | GRUB_TERM_SHIFT, - /* 0x4f */ GRUB_TERM_KEY_RIGHT | GRUB_TERM_SHIFT, - /* 0x50 */ GRUB_TERM_KEY_LEFT | GRUB_TERM_SHIFT, - /* 0x51 */ GRUB_TERM_KEY_DOWN | GRUB_TERM_SHIFT, - /* 0x53 is NumLock. Handled by driver. */ - /* 0x52 */ GRUB_TERM_KEY_UP | GRUB_TERM_SHIFT, 0, - /* 0x54 */ '/', '*', - /* 0x56 */ '-', '+', - /* 0x58 */ '\n' | GRUB_TERM_SHIFT, '1', '2', '3', '4', '5','6', '7', - /* 0x60 */ '8', '9', '0', '.', '|' - } -}; - -static struct grub_keyboard_layout *grub_current_layout = &layout_us; - -static int -map_key_core (int code, int status, int *alt_gr_consumed) -{ - *alt_gr_consumed = 0; - - if (code >= GRUB_KEYBOARD_LAYOUTS_ARRAY_SIZE) - return 0; - - if (status & GRUB_TERM_STATUS_RALT) - { - if (status & (GRUB_TERM_STATUS_LSHIFT | GRUB_TERM_STATUS_RSHIFT)) - { - if (grub_current_layout->keyboard_map_shift_l3[code]) - { - *alt_gr_consumed = 1; - return grub_current_layout->keyboard_map_shift_l3[code]; - } - } - else if (grub_current_layout->keyboard_map_l3[code]) - { - *alt_gr_consumed = 1; - return grub_current_layout->keyboard_map_l3[code]; - } - } - if (status & (GRUB_TERM_STATUS_LSHIFT | GRUB_TERM_STATUS_RSHIFT)) - return grub_current_layout->keyboard_map_shift[code]; - else - return grub_current_layout->keyboard_map[code]; -} - -unsigned -grub_term_map_key (grub_keyboard_key_t code, int status) -{ - int alt_gr_consumed = 0; - int key; - - if (code >= 0x59 && code <= 0x63 && (status & GRUB_TERM_STATUS_NUM)) - { - if (status & (GRUB_TERM_STATUS_RSHIFT | GRUB_TERM_STATUS_LSHIFT)) - status &= ~(GRUB_TERM_STATUS_RSHIFT | GRUB_TERM_STATUS_LSHIFT); - else - status |= GRUB_TERM_STATUS_RSHIFT; - } - - key = map_key_core (code, status, &alt_gr_consumed); - - if (key == 0 || key == GRUB_TERM_SHIFT) { - grub_printf ("Unknown key 0x%x detected\n", code); - return GRUB_TERM_NO_KEY; - } - - if (status & GRUB_TERM_STATUS_CAPS) - { - if ((key >= 'a') && (key <= 'z')) - key += 'A' - 'a'; - else if ((key >= 'A') && (key <= 'Z')) - key += 'a' - 'A'; - } - - if ((status & GRUB_TERM_STATUS_LALT) || - ((status & GRUB_TERM_STATUS_RALT) && !alt_gr_consumed)) - key |= GRUB_TERM_ALT; - if (status & (GRUB_TERM_STATUS_LCTRL | GRUB_TERM_STATUS_RCTRL)) - key |= GRUB_TERM_CTRL; - - return key; -} - -static grub_err_t -grub_cmd_keymap (struct grub_command *cmd __attribute__ ((unused)), - int argc, char *argv[]) -{ - char *filename; - grub_file_t file; - grub_uint32_t version; - grub_uint8_t magic[GRUB_KEYBOARD_LAYOUTS_FILEMAGIC_SIZE]; - struct grub_keyboard_layout *newmap = NULL; - unsigned i; - - if (argc < 1) - return grub_error (GRUB_ERR_BAD_ARGUMENT, "file or layout name required"); - if (argv[0][0] != '(' && argv[0][0] != '/' && argv[0][0] != '+') - { - const char *prefix = grub_env_get ("prefix"); - if (!prefix) - return grub_error (GRUB_ERR_BAD_ARGUMENT, N_("variable `%s' isn't set"), "prefix"); - filename = grub_xasprintf ("%s/layouts/%s.gkb", prefix, argv[0]); - if (!filename) - return grub_errno; - } - else - filename = argv[0]; - - file = grub_file_open (filename, GRUB_FILE_TYPE_KEYBOARD_LAYOUT); - if (! file) - goto fail; - - if (grub_file_read (file, magic, sizeof (magic)) != sizeof (magic)) - { - if (!grub_errno) - grub_error (GRUB_ERR_BAD_ARGUMENT, N_("premature end of file %s"), - filename); - goto fail; - } - - if (grub_memcmp (magic, GRUB_KEYBOARD_LAYOUTS_FILEMAGIC, - GRUB_KEYBOARD_LAYOUTS_FILEMAGIC_SIZE) != 0) - { - grub_error (GRUB_ERR_BAD_ARGUMENT, "invalid magic"); - goto fail; - } - - if (grub_file_read (file, &version, sizeof (version)) != sizeof (version)) - { - if (!grub_errno) - grub_error (GRUB_ERR_BAD_ARGUMENT, N_("premature end of file %s"), - filename); - goto fail; - } - - if (version != grub_cpu_to_le32_compile_time (GRUB_KEYBOARD_LAYOUTS_VERSION)) - { - grub_error (GRUB_ERR_BAD_ARGUMENT, "invalid version"); - goto fail; - } - - newmap = grub_malloc (sizeof (*newmap)); - if (!newmap) - goto fail; - - if (grub_file_read (file, newmap, sizeof (*newmap)) != sizeof (*newmap)) - { - if (!grub_errno) - grub_error (GRUB_ERR_BAD_ARGUMENT, N_("premature end of file %s"), - filename); - goto fail; - } - - for (i = 0; i < ARRAY_SIZE (newmap->keyboard_map); i++) - newmap->keyboard_map[i] = grub_le_to_cpu32(newmap->keyboard_map[i]); - - for (i = 0; i < ARRAY_SIZE (newmap->keyboard_map_shift); i++) - newmap->keyboard_map_shift[i] - = grub_le_to_cpu32(newmap->keyboard_map_shift[i]); - - for (i = 0; i < ARRAY_SIZE (newmap->keyboard_map_l3); i++) - newmap->keyboard_map_l3[i] - = grub_le_to_cpu32(newmap->keyboard_map_l3[i]); - - for (i = 0; i < ARRAY_SIZE (newmap->keyboard_map_shift_l3); i++) - newmap->keyboard_map_shift_l3[i] - = grub_le_to_cpu32(newmap->keyboard_map_shift_l3[i]); - - grub_current_layout = newmap; - - return GRUB_ERR_NONE; - - fail: - if (filename != argv[0]) - grub_free (filename); - grub_free (newmap); - if (file) - grub_file_close (file); - return grub_errno; -} - -static grub_command_t cmd; - -GRUB_MOD_INIT(keylayouts) -{ - cmd = grub_register_command ("keymap", grub_cmd_keymap, - 0, N_("Load a keyboard layout.")); -} - -GRUB_MOD_FINI(keylayouts) -{ - grub_unregister_command (cmd); -} diff --git a/thirdparty/grub-2.04/grub-core/commands/keystatus.c b/thirdparty/grub-2.04/grub-core/commands/keystatus.c deleted file mode 100644 index 460cf4e7e..000000000 --- a/thirdparty/grub-2.04/grub-core/commands/keystatus.c +++ /dev/null @@ -1,113 +0,0 @@ -/* keystatus.c - Command to check key modifier status. */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -static const struct grub_arg_option options[] = - { - /* TRANSLATORS: "Check" in a sense that if this key is pressed then - "true" is returned, otherwise "false". */ - {"shift", 's', 0, N_("Check Shift key."), 0, 0}, - {"ctrl", 'c', 0, N_("Check Control key."), 0, 0}, - {"alt", 'a', 0, N_("Check Alt key."), 0, 0}, - {0, 0, 0, 0, 0, 0} - }; - -static int -grub_getkeystatus (void) -{ - int status = 0; - grub_term_input_t term; - - if (grub_term_poll_usb) - grub_term_poll_usb (0); - - FOR_ACTIVE_TERM_INPUTS(term) - { - if (term->getkeystatus) - status |= term->getkeystatus (term); - } - - return status; -} - -static grub_err_t -grub_cmd_keystatus (grub_extcmd_context_t ctxt, - int argc __attribute__ ((unused)), - char **args __attribute__ ((unused))) -{ - struct grub_arg_list *state = ctxt->state; - int expect_mods = 0; - int mods; - - if (state[0].set) - expect_mods |= (GRUB_TERM_STATUS_LSHIFT | GRUB_TERM_STATUS_RSHIFT); - if (state[1].set) - expect_mods |= (GRUB_TERM_STATUS_LCTRL | GRUB_TERM_STATUS_RCTRL); - if (state[2].set) - expect_mods |= (GRUB_TERM_STATUS_LALT | GRUB_TERM_STATUS_RALT); - - grub_dprintf ("keystatus", "expect_mods: %d\n", expect_mods); - - /* Without arguments, just check whether getkeystatus is supported at - all. */ - if (expect_mods == 0) - { - grub_term_input_t term; - int nterms = 0; - - FOR_ACTIVE_TERM_INPUTS (term) - if (!term->getkeystatus) - return grub_error (GRUB_ERR_TEST_FAILURE, N_("false")); - else - nterms++; - if (!nterms) - return grub_error (GRUB_ERR_TEST_FAILURE, N_("false")); - return 0; - } - - mods = grub_getkeystatus (); - grub_dprintf ("keystatus", "mods: %d\n", mods); - if (mods >= 0 && (mods & expect_mods) != 0) - return 0; - else - return grub_error (GRUB_ERR_TEST_FAILURE, N_("false")); -} - -static grub_extcmd_t cmd; - -GRUB_MOD_INIT(keystatus) -{ - cmd = grub_register_extcmd ("keystatus", grub_cmd_keystatus, 0, - "[--shift] [--ctrl] [--alt]", - /* TRANSLATORS: there are 3 modifiers. */ - N_("Check key modifier status."), - options); -} - -GRUB_MOD_FINI(keystatus) -{ - grub_unregister_extcmd (cmd); -} diff --git a/thirdparty/grub-2.04/grub-core/commands/legacycfg.c b/thirdparty/grub-2.04/grub-core/commands/legacycfg.c deleted file mode 100644 index db7a8f002..000000000 --- a/thirdparty/grub-2.04/grub-core/commands/legacycfg.c +++ /dev/null @@ -1,893 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2000, 2001, 2010 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -/* Helper for legacy_file. */ -static grub_err_t -legacy_file_getline (char **line, int cont __attribute__ ((unused)), - void *data __attribute__ ((unused))) -{ - *line = 0; - return GRUB_ERR_NONE; -} - -static grub_err_t -legacy_file (const char *filename) -{ - grub_file_t file; - char *entryname = NULL, *entrysrc = NULL; - grub_menu_t menu; - char *suffix = grub_strdup (""); - - if (!suffix) - return grub_errno; - - file = grub_file_open (filename, GRUB_FILE_TYPE_CONFIG); - if (! file) - { - grub_free (suffix); - return grub_errno; - } - - menu = grub_env_get_menu (); - if (! menu) - { - menu = grub_zalloc (sizeof (*menu)); - if (! menu) - { - grub_free (suffix); - return grub_errno; - } - - grub_env_set_menu (menu); - } - - while (1) - { - char *buf = grub_file_getline (file); - char *parsed = NULL; - - if (!buf && grub_errno) - { - grub_file_close (file); - grub_free (suffix); - return grub_errno; - } - - if (!buf) - break; - - { - char *oldname = NULL; - char *newsuffix; - char *ptr; - - for (ptr = buf; *ptr && grub_isspace (*ptr); ptr++); - - oldname = entryname; - parsed = grub_legacy_parse (ptr, &entryname, &newsuffix); - grub_free (buf); - buf = NULL; - if (newsuffix) - { - char *t; - - t = suffix; - suffix = grub_realloc (suffix, grub_strlen (suffix) - + grub_strlen (newsuffix) + 1); - if (!suffix) - { - grub_free (t); - grub_free (entrysrc); - grub_free (parsed); - grub_free (newsuffix); - grub_free (suffix); - return grub_errno; - } - grub_memcpy (suffix + grub_strlen (suffix), newsuffix, - grub_strlen (newsuffix) + 1); - grub_free (newsuffix); - newsuffix = NULL; - } - if (oldname != entryname && oldname) - { - const char **args = grub_malloc (sizeof (args[0])); - if (!args) - { - grub_file_close (file); - return grub_errno; - } - args[0] = oldname; - grub_normal_add_menu_entry (1, args, NULL, NULL, "legacy", - NULL, NULL, - entrysrc, 0); - grub_free (args); - entrysrc[0] = 0; - grub_free (oldname); - } - } - - if (parsed && !entryname) - { - grub_normal_parse_line (parsed, legacy_file_getline, NULL); - grub_print_error (); - grub_free (parsed); - parsed = NULL; - } - else if (parsed) - { - if (!entrysrc) - entrysrc = parsed; - else - { - char *t; - - t = entrysrc; - entrysrc = grub_realloc (entrysrc, grub_strlen (entrysrc) - + grub_strlen (parsed) + 1); - if (!entrysrc) - { - grub_free (t); - grub_free (parsed); - grub_free (suffix); - return grub_errno; - } - grub_memcpy (entrysrc + grub_strlen (entrysrc), parsed, - grub_strlen (parsed) + 1); - grub_free (parsed); - parsed = NULL; - } - } - } - grub_file_close (file); - - if (entryname) - { - const char **args = grub_malloc (sizeof (args[0])); - if (!args) - { - grub_file_close (file); - grub_free (suffix); - grub_free (entrysrc); - return grub_errno; - } - args[0] = entryname; - grub_normal_add_menu_entry (1, args, NULL, NULL, NULL, - NULL, NULL, entrysrc, 0); - grub_free (args); - } - - grub_normal_parse_line (suffix, legacy_file_getline, NULL); - grub_print_error (); - grub_free (suffix); - grub_free (entrysrc); - - return GRUB_ERR_NONE; -} - -static grub_err_t -grub_cmd_legacy_source (struct grub_command *cmd, - int argc, char **args) -{ - int new_env, extractor; - grub_err_t ret; - - if (argc != 1) - return grub_error (GRUB_ERR_BAD_ARGUMENT, N_("filename expected")); - - extractor = (cmd->name[0] == 'e'); - new_env = (cmd->name[extractor ? (sizeof ("extract_legacy_entries_") - 1) - : (sizeof ("legacy_") - 1)] == 'c'); - - if (new_env) - grub_cls (); - - if (new_env && !extractor) - grub_env_context_open (); - if (extractor) - grub_env_extractor_open (!new_env); - - ret = legacy_file (args[0]); - - if (new_env) - { - grub_menu_t menu; - menu = grub_env_get_menu (); - if (menu && menu->size) - grub_show_menu (menu, 1, 0); - if (!extractor) - grub_env_context_close (); - } - if (extractor) - grub_env_extractor_close (!new_env); - - return ret; -} - -static enum - { - GUESS_IT, LINUX, MULTIBOOT, KFREEBSD, KNETBSD, KOPENBSD - } kernel_type; - -static grub_err_t -grub_cmd_legacy_kernel (struct grub_command *mycmd __attribute__ ((unused)), - int argc, char **args) -{ - int i; -#ifdef TODO - int no_mem_option = 0; -#endif - struct grub_command *cmd; - char **cutargs; - int cutargc; - grub_err_t err = GRUB_ERR_NONE; - - for (i = 0; i < 2; i++) - { - /* FIXME: really support this. */ - if (argc >= 1 && grub_strcmp (args[0], "--no-mem-option") == 0) - { -#ifdef TODO - no_mem_option = 1; -#endif - argc--; - args++; - continue; - } - - /* linux16 handles both zImages and bzImages. */ - if (argc >= 1 && (grub_strcmp (args[0], "--type=linux") == 0 - || grub_strcmp (args[0], "--type=biglinux") == 0)) - { - kernel_type = LINUX; - argc--; - args++; - continue; - } - - if (argc >= 1 && grub_strcmp (args[0], "--type=multiboot") == 0) - { - kernel_type = MULTIBOOT; - argc--; - args++; - continue; - } - - if (argc >= 1 && grub_strcmp (args[0], "--type=freebsd") == 0) - { - kernel_type = KFREEBSD; - argc--; - args++; - continue; - } - - if (argc >= 1 && grub_strcmp (args[0], "--type=openbsd") == 0) - { - kernel_type = KOPENBSD; - argc--; - args++; - continue; - } - - if (argc >= 1 && grub_strcmp (args[0], "--type=netbsd") == 0) - { - kernel_type = KNETBSD; - argc--; - args++; - continue; - } - } - - if (argc < 2) - return grub_error (GRUB_ERR_BAD_ARGUMENT, N_("filename expected")); - - cutargs = grub_malloc (sizeof (cutargs[0]) * (argc - 1)); - if (!cutargs) - return grub_errno; - cutargc = argc - 1; - grub_memcpy (cutargs + 1, args + 2, sizeof (cutargs[0]) * (argc - 2)); - cutargs[0] = args[0]; - - do - { - /* First try Linux. */ - if (kernel_type == GUESS_IT || kernel_type == LINUX) - { -#ifdef GRUB_MACHINE_PCBIOS - cmd = grub_command_find ("linux16"); -#else - cmd = grub_command_find ("linux"); -#endif - if (cmd) - { - if (!(cmd->func) (cmd, cutargc, cutargs)) - { - kernel_type = LINUX; - goto out; - } - } - grub_errno = GRUB_ERR_NONE; - } - - /* Then multiboot. */ - if (kernel_type == GUESS_IT || kernel_type == MULTIBOOT) - { - cmd = grub_command_find ("multiboot"); - if (cmd) - { - if (!(cmd->func) (cmd, argc, args)) - { - kernel_type = MULTIBOOT; - goto out; - } - } - grub_errno = GRUB_ERR_NONE; - } - - { - int bsd_device = -1; - int bsd_slice = -1; - int bsd_part = -1; - { - grub_device_t dev; - const char *hdbiasstr; - int hdbias = 0; - hdbiasstr = grub_env_get ("legacy_hdbias"); - if (hdbiasstr) - { - hdbias = grub_strtoul (hdbiasstr, 0, 0); - grub_errno = GRUB_ERR_NONE; - } - dev = grub_device_open (0); - if (dev && dev->disk - && dev->disk->dev->id == GRUB_DISK_DEVICE_BIOSDISK_ID - && dev->disk->id >= 0x80 && dev->disk->id <= 0x90) - { - struct grub_partition *part = dev->disk->partition; - bsd_device = dev->disk->id - 0x80 - hdbias; - if (part && (grub_strcmp (part->partmap->name, "netbsd") == 0 - || grub_strcmp (part->partmap->name, "openbsd") == 0 - || grub_strcmp (part->partmap->name, "bsd") == 0)) - { - bsd_part = part->number; - part = part->parent; - } - if (part && grub_strcmp (part->partmap->name, "msdos") == 0) - bsd_slice = part->number; - } - if (dev) - grub_device_close (dev); - } - - /* k*BSD didn't really work well with grub-legacy. */ - if (kernel_type == GUESS_IT || kernel_type == KFREEBSD) - { - char buf[sizeof("adXXXXXXXXXXXXsXXXXXXXXXXXXYYY")]; - if (bsd_device != -1) - { - if (bsd_slice != -1 && bsd_part != -1) - grub_snprintf(buf, sizeof(buf), "ad%ds%d%c", bsd_device, - bsd_slice, 'a' + bsd_part); - else if (bsd_slice != -1) - grub_snprintf(buf, sizeof(buf), "ad%ds%d", bsd_device, - bsd_slice); - else - grub_snprintf(buf, sizeof(buf), "ad%d", bsd_device); - grub_env_set ("kFreeBSD.vfs.root.mountfrom", buf); - } - else - grub_env_unset ("kFreeBSD.vfs.root.mountfrom"); - cmd = grub_command_find ("kfreebsd"); - if (cmd) - { - if (!(cmd->func) (cmd, cutargc, cutargs)) - { - kernel_type = KFREEBSD; - goto out; - } - } - grub_errno = GRUB_ERR_NONE; - } - { - char **bsdargs; - int bsdargc; - char bsddevname[sizeof ("wdXXXXXXXXXXXXY")]; - int found = 0; - - if (bsd_device == -1) - { - bsdargs = cutargs; - bsdargc = cutargc; - } - else - { - char rbuf[3] = "-r"; - bsdargc = cutargc + 2; - bsdargs = grub_malloc (sizeof (bsdargs[0]) * bsdargc); - if (!bsdargs) - { - err = grub_errno; - goto out; - } - grub_memcpy (bsdargs, args, argc * sizeof (bsdargs[0])); - bsdargs[argc] = rbuf; - bsdargs[argc + 1] = bsddevname; - grub_snprintf (bsddevname, sizeof (bsddevname), - "wd%d%c", bsd_device, - bsd_part != -1 ? bsd_part + 'a' : 'c'); - } - if (kernel_type == GUESS_IT || kernel_type == KNETBSD) - { - cmd = grub_command_find ("knetbsd"); - if (cmd) - { - if (!(cmd->func) (cmd, bsdargc, bsdargs)) - { - kernel_type = KNETBSD; - found = 1; - goto free_bsdargs; - } - } - grub_errno = GRUB_ERR_NONE; - } - if (kernel_type == GUESS_IT || kernel_type == KOPENBSD) - { - cmd = grub_command_find ("kopenbsd"); - if (cmd) - { - if (!(cmd->func) (cmd, bsdargc, bsdargs)) - { - kernel_type = KOPENBSD; - found = 1; - goto free_bsdargs; - } - } - grub_errno = GRUB_ERR_NONE; - } - -free_bsdargs: - if (bsdargs != cutargs) - grub_free (bsdargs); - if (found) - goto out; - } - } - } - while (0); - - err = grub_error (GRUB_ERR_BAD_OS, "couldn't load file %s", - args[0]); -out: - grub_free (cutargs); - return err; -} - -static grub_err_t -grub_cmd_legacy_initrd (struct grub_command *mycmd __attribute__ ((unused)), - int argc, char **args) -{ - struct grub_command *cmd; - - if (kernel_type == LINUX) - { -#ifdef GRUB_MACHINE_PCBIOS - cmd = grub_command_find ("initrd16"); -#else - cmd = grub_command_find ("initrd"); -#endif - if (!cmd) - return grub_error (GRUB_ERR_BAD_ARGUMENT, N_("can't find command `%s'"), -#ifdef GRUB_MACHINE_PCBIOS - "initrd16" -#else - "initrd" -#endif - ); - - return cmd->func (cmd, argc ? 1 : 0, args); - } - if (kernel_type == MULTIBOOT) - { - cmd = grub_command_find ("module"); - if (!cmd) - return grub_error (GRUB_ERR_BAD_ARGUMENT, N_("can't find command `%s'"), - "module"); - - return cmd->func (cmd, argc, args); - } - - return grub_error (GRUB_ERR_BAD_ARGUMENT, - N_("you need to load the kernel first")); -} - -static grub_err_t -grub_cmd_legacy_initrdnounzip (struct grub_command *mycmd __attribute__ ((unused)), - int argc, char **args) -{ - struct grub_command *cmd; - - if (kernel_type == LINUX) - { - cmd = grub_command_find ("initrd16"); - if (!cmd) - return grub_error (GRUB_ERR_BAD_ARGUMENT, N_("can't find command `%s'"), - "initrd16"); - - return cmd->func (cmd, argc, args); - } - if (kernel_type == MULTIBOOT) - { - char **newargs; - grub_err_t err; - char nounzipbuf[10] = "--nounzip"; - - cmd = grub_command_find ("module"); - if (!cmd) - return grub_error (GRUB_ERR_BAD_ARGUMENT, N_("can't find command `%s'"), - "module"); - - newargs = grub_malloc ((argc + 1) * sizeof (newargs[0])); - if (!newargs) - return grub_errno; - grub_memcpy (newargs + 1, args, argc * sizeof (newargs[0])); - newargs[0] = nounzipbuf; - - err = cmd->func (cmd, argc + 1, newargs); - grub_free (newargs); - return err; - } - - return grub_error (GRUB_ERR_BAD_ARGUMENT, - N_("you need to load the kernel first")); -} - -static grub_err_t -check_password_deny (const char *user __attribute__ ((unused)), - const char *entered __attribute__ ((unused)), - void *password __attribute__ ((unused))) -{ - return GRUB_ACCESS_DENIED; -} - -#define MD5_HASHLEN 16 - -struct legacy_md5_password -{ - grub_uint8_t *salt; - int saltlen; - grub_uint8_t hash[MD5_HASHLEN]; -}; - -static int -check_password_md5_real (const char *entered, - struct legacy_md5_password *pw) -{ - grub_size_t enteredlen = grub_strlen (entered); - unsigned char alt_result[MD5_HASHLEN]; - unsigned char *digest; - grub_uint8_t *ctx; - grub_size_t i; - int ret; - - ctx = grub_zalloc (GRUB_MD_MD5->contextsize); - if (!ctx) - return 0; - - GRUB_MD_MD5->init (ctx); - GRUB_MD_MD5->write (ctx, entered, enteredlen); - GRUB_MD_MD5->write (ctx, pw->salt + 3, pw->saltlen - 3); - GRUB_MD_MD5->write (ctx, entered, enteredlen); - digest = GRUB_MD_MD5->read (ctx); - GRUB_MD_MD5->final (ctx); - grub_memcpy (alt_result, digest, MD5_HASHLEN); - - GRUB_MD_MD5->init (ctx); - GRUB_MD_MD5->write (ctx, entered, enteredlen); - GRUB_MD_MD5->write (ctx, pw->salt, pw->saltlen); /* include the $1$ header */ - for (i = enteredlen; i > 16; i -= 16) - GRUB_MD_MD5->write (ctx, alt_result, 16); - GRUB_MD_MD5->write (ctx, alt_result, i); - - for (i = enteredlen; i > 0; i >>= 1) - GRUB_MD_MD5->write (ctx, entered + ((i & 1) ? enteredlen : 0), 1); - digest = GRUB_MD_MD5->read (ctx); - GRUB_MD_MD5->final (ctx); - - for (i = 0; i < 1000; i++) - { - grub_memcpy (alt_result, digest, 16); - - GRUB_MD_MD5->init (ctx); - if ((i & 1) != 0) - GRUB_MD_MD5->write (ctx, entered, enteredlen); - else - GRUB_MD_MD5->write (ctx, alt_result, 16); - - if (i % 3 != 0) - GRUB_MD_MD5->write (ctx, pw->salt + 3, pw->saltlen - 3); - - if (i % 7 != 0) - GRUB_MD_MD5->write (ctx, entered, enteredlen); - - if ((i & 1) != 0) - GRUB_MD_MD5->write (ctx, alt_result, 16); - else - GRUB_MD_MD5->write (ctx, entered, enteredlen); - digest = GRUB_MD_MD5->read (ctx); - GRUB_MD_MD5->final (ctx); - } - - ret = (grub_crypto_memcmp (digest, pw->hash, MD5_HASHLEN) == 0); - grub_free (ctx); - return ret; -} - -static grub_err_t -check_password_md5 (const char *user, - const char *entered, - void *password) -{ - if (!check_password_md5_real (entered, password)) - return GRUB_ACCESS_DENIED; - - grub_auth_authenticate (user); - - return GRUB_ERR_NONE; -} - -static inline int -ib64t (char c) -{ - if (c == '.') - return 0; - if (c == '/') - return 1; - if (c >= '0' && c <= '9') - return c - '0' + 2; - if (c >= 'A' && c <= 'Z') - return c - 'A' + 12; - if (c >= 'a' && c <= 'z') - return c - 'a' + 38; - return -1; -} - -static struct legacy_md5_password * -parse_legacy_md5 (int argc, char **args) -{ - const char *salt, *saltend; - struct legacy_md5_password *pw = NULL; - int i; - const char *p; - - if (grub_memcmp (args[0], "--md5", sizeof ("--md5")) != 0) - goto fail; - if (argc == 1) - goto fail; - if (grub_strlen(args[1]) <= 3) - goto fail; - salt = args[1]; - saltend = grub_strchr (salt + 3, '$'); - if (!saltend) - goto fail; - pw = grub_malloc (sizeof (*pw)); - if (!pw) - goto fail; - - p = saltend + 1; - for (i = 0; i < 5; i++) - { - int n; - grub_uint32_t w = 0; - - for (n = 0; n < 4; n++) - { - int ww = ib64t(*p++); - if (ww == -1) - goto fail; - w |= ww << (n * 6); - } - pw->hash[i == 4 ? 5 : 12+i] = w & 0xff; - pw->hash[6+i] = (w >> 8) & 0xff; - pw->hash[i] = (w >> 16) & 0xff; - } - { - int n; - grub_uint32_t w = 0; - for (n = 0; n < 2; n++) - { - int ww = ib64t(*p++); - if (ww == -1) - goto fail; - w |= ww << (6 * n); - } - if (w >= 0x100) - goto fail; - pw->hash[11] = w; - } - - pw->saltlen = saltend - salt; - pw->salt = (grub_uint8_t *) grub_strndup (salt, pw->saltlen); - if (!pw->salt) - goto fail; - - return pw; - - fail: - grub_free (pw); - return NULL; -} - -static grub_err_t -grub_cmd_legacy_password (struct grub_command *mycmd __attribute__ ((unused)), - int argc, char **args) -{ - struct legacy_md5_password *pw = NULL; - - if (argc == 0) - return grub_error (GRUB_ERR_BAD_ARGUMENT, N_("one argument expected")); - if (args[0][0] != '-' || args[0][1] != '-') - return grub_normal_set_password ("legacy", args[0]); - - pw = parse_legacy_md5 (argc, args); - - if (pw) - return grub_auth_register_authentication ("legacy", check_password_md5, pw); - else - /* This is to imitate minor difference between grub-legacy in GRUB2. - If 2 password commands are executed in a row and second one fails - on GRUB2 the password of first one is used, whereas in grub-legacy - authenthication is denied. In case of no password command was executed - early both versions deny any access. */ - return grub_auth_register_authentication ("legacy", check_password_deny, - NULL); -} - -int -grub_legacy_check_md5_password (int argc, char **args, - char *entered) -{ - struct legacy_md5_password *pw = NULL; - int ret; - - if (args[0][0] != '-' || args[0][1] != '-') - { - char correct[GRUB_AUTH_MAX_PASSLEN]; - - grub_memset (correct, 0, sizeof (correct)); - grub_strncpy (correct, args[0], sizeof (correct)); - - return grub_crypto_memcmp (entered, correct, GRUB_AUTH_MAX_PASSLEN) == 0; - } - - pw = parse_legacy_md5 (argc, args); - - if (!pw) - return 0; - - ret = check_password_md5_real (entered, pw); - grub_free (pw); - return ret; -} - -static grub_err_t -grub_cmd_legacy_check_password (struct grub_command *mycmd __attribute__ ((unused)), - int argc, char **args) -{ - char entered[GRUB_AUTH_MAX_PASSLEN]; - - if (argc == 0) - return grub_error (GRUB_ERR_BAD_ARGUMENT, N_("one argument expected")); - grub_puts_ (N_("Enter password: ")); - if (!grub_password_get (entered, GRUB_AUTH_MAX_PASSLEN)) - return GRUB_ACCESS_DENIED; - - if (!grub_legacy_check_md5_password (argc, args, - entered)) - return GRUB_ACCESS_DENIED; - - return GRUB_ERR_NONE; -} - -static grub_command_t cmd_source, cmd_configfile; -static grub_command_t cmd_source_extract, cmd_configfile_extract; -static grub_command_t cmd_kernel, cmd_initrd, cmd_initrdnounzip; -static grub_command_t cmd_password, cmd_check_password; - -GRUB_MOD_INIT(legacycfg) -{ - cmd_source - = grub_register_command ("legacy_source", - grub_cmd_legacy_source, - N_("FILE"), - /* TRANSLATORS: "legacy config" means - "config as used by grub-legacy". */ - N_("Parse legacy config in same context")); - cmd_configfile - = grub_register_command ("legacy_configfile", - grub_cmd_legacy_source, - N_("FILE"), - N_("Parse legacy config in new context")); - cmd_source_extract - = grub_register_command ("extract_legacy_entries_source", - grub_cmd_legacy_source, - N_("FILE"), - N_("Parse legacy config in same context taking only menu entries")); - cmd_configfile_extract - = grub_register_command ("extract_legacy_entries_configfile", - grub_cmd_legacy_source, - N_("FILE"), - N_("Parse legacy config in new context taking only menu entries")); - - cmd_kernel = grub_register_command ("legacy_kernel", - grub_cmd_legacy_kernel, - N_("[--no-mem-option] [--type=TYPE] FILE [ARG ...]"), - N_("Simulate grub-legacy `kernel' command")); - - cmd_initrd = grub_register_command ("legacy_initrd", - grub_cmd_legacy_initrd, - N_("FILE [ARG ...]"), - N_("Simulate grub-legacy `initrd' command")); - cmd_initrdnounzip = grub_register_command ("legacy_initrd_nounzip", - grub_cmd_legacy_initrdnounzip, - N_("FILE [ARG ...]"), - N_("Simulate grub-legacy `modulenounzip' command")); - - cmd_password = grub_register_command ("legacy_password", - grub_cmd_legacy_password, - N_("[--md5] PASSWD [FILE]"), - N_("Simulate grub-legacy `password' command")); - - cmd_check_password = grub_register_command ("legacy_check_password", - grub_cmd_legacy_check_password, - N_("[--md5] PASSWD [FILE]"), - N_("Simulate grub-legacy `password' command in menu entry mode")); - -} - -GRUB_MOD_FINI(legacycfg) -{ - grub_unregister_command (cmd_source); - grub_unregister_command (cmd_configfile); - grub_unregister_command (cmd_source_extract); - grub_unregister_command (cmd_configfile_extract); - - grub_unregister_command (cmd_kernel); - grub_unregister_command (cmd_initrd); - grub_unregister_command (cmd_initrdnounzip); - - grub_unregister_command (cmd_password); - grub_unregister_command (cmd_check_password); -} diff --git a/thirdparty/grub-2.04/grub-core/commands/loadenv.c b/thirdparty/grub-2.04/grub-core/commands/loadenv.c deleted file mode 100644 index 3fd664aac..000000000 --- a/thirdparty/grub-2.04/grub-core/commands/loadenv.c +++ /dev/null @@ -1,470 +0,0 @@ -/* loadenv.c - command to load/save environment variable. */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2008,2009,2010 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -static const struct grub_arg_option options[] = - { - /* TRANSLATORS: This option is used to override default filename - for loading and storing environment. */ - {"file", 'f', 0, N_("Specify filename."), 0, ARG_TYPE_PATHNAME}, - {"skip-sig", 's', 0, - N_("Skip signature-checking of the environment file."), 0, ARG_TYPE_NONE}, - {0, 0, 0, 0, 0, 0} - }; - -/* Opens 'filename' with compression filters disabled. Optionally disables the - PUBKEY filter (that insists upon properly signed files) as well. PUBKEY - filter is restored before the function returns. */ -static grub_file_t -open_envblk_file (char *filename, - enum grub_file_type type) -{ - grub_file_t file; - char *buf = 0; - - if (! filename) - { - const char *prefix; - int len; - - prefix = grub_env_get ("prefix"); - if (! prefix) - { - grub_error (GRUB_ERR_FILE_NOT_FOUND, N_("variable `%s' isn't set"), "prefix"); - return 0; - } - - len = grub_strlen (prefix); - buf = grub_malloc (len + 1 + sizeof (GRUB_ENVBLK_DEFCFG)); - if (! buf) - return 0; - filename = buf; - - grub_strcpy (filename, prefix); - filename[len] = '/'; - grub_strcpy (filename + len + 1, GRUB_ENVBLK_DEFCFG); - } - - file = grub_file_open (filename, type); - - grub_free (buf); - return file; -} - -static grub_envblk_t -read_envblk_file (grub_file_t file) -{ - grub_off_t offset = 0; - char *buf; - grub_size_t size = grub_file_size (file); - grub_envblk_t envblk; - - buf = grub_malloc (size); - if (! buf) - return 0; - - while (size > 0) - { - grub_ssize_t ret; - - ret = grub_file_read (file, buf + offset, size); - if (ret <= 0) - { - grub_free (buf); - return 0; - } - - size -= ret; - offset += ret; - } - - envblk = grub_envblk_open (buf, offset); - if (! envblk) - { - grub_free (buf); - grub_error (GRUB_ERR_BAD_FILE_TYPE, "invalid environment block"); - return 0; - } - - return envblk; -} - -struct grub_env_whitelist -{ - grub_size_t len; - char **list; -}; -typedef struct grub_env_whitelist grub_env_whitelist_t; - -static int -test_whitelist_membership (const char* name, - const grub_env_whitelist_t* whitelist) -{ - grub_size_t i; - - for (i = 0; i < whitelist->len; i++) - if (grub_strcmp (name, whitelist->list[i]) == 0) - return 1; /* found it */ - - return 0; /* not found */ -} - -/* Helper for grub_cmd_load_env. */ -static int -set_var (const char *name, const char *value, void *whitelist) -{ - if (! whitelist) - { - grub_env_set (name, value); - return 0; - } - - if (test_whitelist_membership (name, - (const grub_env_whitelist_t *) whitelist)) - grub_env_set (name, value); - - return 0; -} - -static grub_err_t -grub_cmd_load_env (grub_extcmd_context_t ctxt, int argc, char **args) -{ - struct grub_arg_list *state = ctxt->state; - grub_file_t file; - grub_envblk_t envblk; - grub_env_whitelist_t whitelist; - - whitelist.len = argc; - whitelist.list = args; - - /* state[0] is the -f flag; state[1] is the --skip-sig flag */ - file = open_envblk_file ((state[0].set) ? state[0].arg : 0, - GRUB_FILE_TYPE_LOADENV - | (state[1].set - ? GRUB_FILE_TYPE_SKIP_SIGNATURE : GRUB_FILE_TYPE_NONE)); - if (! file) - return grub_errno; - - envblk = read_envblk_file (file); - if (! envblk) - goto fail; - - /* argc > 0 indicates caller provided a whitelist of variables to read. */ - grub_envblk_iterate (envblk, argc > 0 ? &whitelist : 0, set_var); - grub_envblk_close (envblk); - - fail: - grub_file_close (file); - return grub_errno; -} - -/* Print all variables in current context. */ -static int -print_var (const char *name, const char *value, - void *hook_data __attribute__ ((unused))) -{ - grub_printf ("%s=%s\n", name, value); - return 0; -} - -static grub_err_t -grub_cmd_list_env (grub_extcmd_context_t ctxt, - int argc __attribute__ ((unused)), - char **args __attribute__ ((unused))) -{ - struct grub_arg_list *state = ctxt->state; - grub_file_t file; - grub_envblk_t envblk; - - file = open_envblk_file ((state[0].set) ? state[0].arg : 0, - GRUB_FILE_TYPE_LOADENV - | (state[1].set - ? GRUB_FILE_TYPE_SKIP_SIGNATURE : GRUB_FILE_TYPE_NONE)); - if (! file) - return grub_errno; - - envblk = read_envblk_file (file); - if (! envblk) - goto fail; - - grub_envblk_iterate (envblk, NULL, print_var); - grub_envblk_close (envblk); - - fail: - grub_file_close (file); - return grub_errno; -} - -/* Used to maintain a variable length of blocklists internally. */ -struct blocklist -{ - grub_disk_addr_t sector; - unsigned offset; - unsigned length; - struct blocklist *next; -}; - -static void -free_blocklists (struct blocklist *p) -{ - struct blocklist *q; - - for (; p; p = q) - { - q = p->next; - grub_free (p); - } -} - -static grub_err_t -check_blocklists (grub_envblk_t envblk, struct blocklist *blocklists, - grub_file_t file) -{ - grub_size_t total_length; - grub_size_t index; - grub_disk_t disk; - grub_disk_addr_t part_start; - struct blocklist *p; - char *buf; - - /* Sanity checks. */ - total_length = 0; - for (p = blocklists; p; p = p->next) - { - struct blocklist *q; - /* Check if any pair of blocks overlap. */ - for (q = p->next; q; q = q->next) - { - grub_disk_addr_t s1, s2; - grub_disk_addr_t e1, e2; - - s1 = p->sector; - e1 = s1 + ((p->length + GRUB_DISK_SECTOR_SIZE - 1) >> GRUB_DISK_SECTOR_BITS); - - s2 = q->sector; - e2 = s2 + ((q->length + GRUB_DISK_SECTOR_SIZE - 1) >> GRUB_DISK_SECTOR_BITS); - - if (s1 < e2 && s2 < e1) - { - /* This might be actually valid, but it is unbelievable that - any filesystem makes such a silly allocation. */ - return grub_error (GRUB_ERR_BAD_FS, "malformed file"); - } - } - - total_length += p->length; - } - - if (total_length != grub_file_size (file)) - { - /* Maybe sparse, unallocated sectors. No way in GRUB. */ - return grub_error (GRUB_ERR_BAD_FILE_TYPE, "sparse file not allowed"); - } - - /* One more sanity check. Re-read all sectors by blocklists, and compare - those with the data read via a file. */ - disk = file->device->disk; - - part_start = grub_partition_get_start (disk->partition); - - buf = grub_envblk_buffer (envblk); - char *blockbuf = NULL; - grub_size_t blockbuf_len = 0; - for (p = blocklists, index = 0; p; index += p->length, p = p->next) - { - if (p->length > blockbuf_len) - { - grub_free (blockbuf); - blockbuf_len = 2 * p->length; - blockbuf = grub_malloc (blockbuf_len); - if (!blockbuf) - return grub_errno; - } - - if (grub_disk_read (disk, p->sector - part_start, - p->offset, p->length, blockbuf)) - return grub_errno; - - if (grub_memcmp (buf + index, blockbuf, p->length) != 0) - return grub_error (GRUB_ERR_FILE_READ_ERROR, "invalid blocklist"); - } - - return GRUB_ERR_NONE; -} - -static int -write_blocklists (grub_envblk_t envblk, struct blocklist *blocklists, - grub_file_t file) -{ - char *buf; - grub_disk_t disk; - grub_disk_addr_t part_start; - struct blocklist *p; - grub_size_t index; - - buf = grub_envblk_buffer (envblk); - disk = file->device->disk; - part_start = grub_partition_get_start (disk->partition); - - index = 0; - for (p = blocklists; p; index += p->length, p = p->next) - { - if (grub_disk_write (disk, p->sector - part_start, - p->offset, p->length, buf + index)) - return 0; - } - - return 1; -} - -/* Context for grub_cmd_save_env. */ -struct grub_cmd_save_env_ctx -{ - struct blocklist *head, *tail; -}; - -/* Store blocklists in a linked list. */ -static void -save_env_read_hook (grub_disk_addr_t sector, unsigned offset, unsigned length, - void *data) -{ - struct grub_cmd_save_env_ctx *ctx = data; - struct blocklist *block; - - block = grub_malloc (sizeof (*block)); - if (! block) - return; - - block->sector = sector; - block->offset = offset; - block->length = length; - - /* Slightly complicated, because the list should be FIFO. */ - block->next = 0; - if (ctx->tail) - ctx->tail->next = block; - ctx->tail = block; - if (! ctx->head) - ctx->head = block; -} - -static grub_err_t -grub_cmd_save_env (grub_extcmd_context_t ctxt, int argc, char **args) -{ - struct grub_arg_list *state = ctxt->state; - grub_file_t file; - grub_envblk_t envblk; - struct grub_cmd_save_env_ctx ctx = { - .head = 0, - .tail = 0 - }; - - if (! argc) - return grub_error (GRUB_ERR_BAD_ARGUMENT, "no variable is specified"); - - file = open_envblk_file ((state[0].set) ? state[0].arg : 0, - GRUB_FILE_TYPE_SAVEENV - | GRUB_FILE_TYPE_SKIP_SIGNATURE); - if (! file) - return grub_errno; - - if (! file->device->disk) - { - grub_file_close (file); - return grub_error (GRUB_ERR_BAD_DEVICE, "disk device required"); - } - - file->read_hook = save_env_read_hook; - file->read_hook_data = &ctx; - envblk = read_envblk_file (file); - file->read_hook = 0; - if (! envblk) - goto fail; - - if (check_blocklists (envblk, ctx.head, file)) - goto fail; - - while (argc) - { - const char *value; - - value = grub_env_get (args[0]); - if (value) - { - if (! grub_envblk_set (envblk, args[0], value)) - { - grub_error (GRUB_ERR_BAD_ARGUMENT, "environment block too small"); - goto fail; - } - } - else - grub_envblk_delete (envblk, args[0]); - - argc--; - args++; - } - - write_blocklists (envblk, ctx.head, file); - - fail: - if (envblk) - grub_envblk_close (envblk); - free_blocklists (ctx.head); - grub_file_close (file); - return grub_errno; -} - -static grub_extcmd_t cmd_load, cmd_list, cmd_save; - -GRUB_MOD_INIT(loadenv) -{ - cmd_load = - grub_register_extcmd ("load_env", grub_cmd_load_env, 0, - N_("[-f FILE] [-s|--skip-sig] [variable_name_to_whitelist] [...]"), - N_("Load variables from environment block file."), - options); - cmd_list = - grub_register_extcmd ("list_env", grub_cmd_list_env, 0, N_("[-f FILE]"), - N_("List variables from environment block file."), - options); - cmd_save = - grub_register_extcmd ("save_env", grub_cmd_save_env, 0, - N_("[-f FILE] variable_name [...]"), - N_("Save variables to environment block file."), - options); -} - -GRUB_MOD_FINI(loadenv) -{ - grub_unregister_extcmd (cmd_load); - grub_unregister_extcmd (cmd_list); - grub_unregister_extcmd (cmd_save); -} diff --git a/thirdparty/grub-2.04/grub-core/commands/ls.c b/thirdparty/grub-2.04/grub-core/commands/ls.c deleted file mode 100644 index 5b7491aa4..000000000 --- a/thirdparty/grub-2.04/grub-core/commands/ls.c +++ /dev/null @@ -1,302 +0,0 @@ -/* ls.c - command to list files and devices */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2003,2005,2007,2008,2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -static const struct grub_arg_option options[] = - { - {"long", 'l', 0, N_("Show a long list with more detailed information."), 0, 0}, - {"human-readable", 'h', 0, N_("Print sizes in a human readable format."), 0, 0}, - {"all", 'a', 0, N_("List all files."), 0, 0}, - {0, 0, 0, 0, 0, 0} - }; - -/* Helper for grub_ls_list_devices. */ -static int -grub_ls_print_devices (const char *name, void *data) -{ - int *longlist = data; - - if (*longlist) - grub_normal_print_device_info (name); - else - grub_printf ("(%s) ", name); - - return 0; -} - -static grub_err_t -grub_ls_list_devices (int longlist) -{ - grub_device_iterate (grub_ls_print_devices, &longlist); - grub_xputs ("\n"); - -#if 0 - { - grub_net_app_level_t proto; - int first = 1; - FOR_NET_APP_LEVEL (proto) - { - if (first) - grub_puts_ (N_ ("Network protocols:")); - first = 0; - grub_printf ("%s ", proto->name); - } - grub_xputs ("\n"); - } -#endif - - grub_refresh (); - - return 0; -} - -/* Context for grub_ls_list_files. */ -struct grub_ls_list_files_ctx -{ - char *dirname; - int all; - int human; -}; - -/* Helper for grub_ls_list_files. */ -static int -print_files (const char *filename, const struct grub_dirhook_info *info, - void *data) -{ - struct grub_ls_list_files_ctx *ctx = data; - - if (ctx->all || filename[0] != '.') - grub_printf ("%s%s ", filename, info->dir ? "/" : ""); - - return 0; -} - -/* Helper for grub_ls_list_files. */ -static int -print_files_long (const char *filename, const struct grub_dirhook_info *info, - void *data) -{ - struct grub_ls_list_files_ctx *ctx = data; - - if ((! ctx->all) && (filename[0] == '.')) - return 0; - - if (! info->dir) - { - grub_file_t file; - char *pathname; - - if (ctx->dirname[grub_strlen (ctx->dirname) - 1] == '/') - pathname = grub_xasprintf ("%s%s", ctx->dirname, filename); - else - pathname = grub_xasprintf ("%s/%s", ctx->dirname, filename); - - if (!pathname) - return 1; - - /* XXX: For ext2fs symlinks are detected as files while they - should be reported as directories. */ - file = grub_file_open (pathname, GRUB_FILE_TYPE_GET_SIZE - | GRUB_FILE_TYPE_NO_DECOMPRESS); - if (! file) - { - grub_errno = 0; - grub_free (pathname); - return 0; - } - - if (! ctx->human) - grub_printf ("%-12llu", (unsigned long long) file->size); - else - grub_printf ("%-12s", grub_get_human_size (file->size, - GRUB_HUMAN_SIZE_SHORT)); - grub_file_close (file); - grub_free (pathname); - } - else - grub_printf ("%-12s", _("DIR")); - - if (info->mtimeset) - { - struct grub_datetime datetime; - grub_unixtime2datetime (info->mtime, &datetime); - if (ctx->human) - grub_printf (" %d-%02d-%02d %02d:%02d:%02d %-11s ", - datetime.year, datetime.month, datetime.day, - datetime.hour, datetime.minute, - datetime.second, - grub_get_weekday_name (&datetime)); - else - grub_printf (" %04d%02d%02d%02d%02d%02d ", - datetime.year, datetime.month, - datetime.day, datetime.hour, - datetime.minute, datetime.second); - } - grub_printf ("%s%s\n", filename, info->dir ? "/" : ""); - - return 0; -} - -static grub_err_t -grub_ls_list_files (char *dirname, int longlist, int all, int human) -{ - char *device_name; - grub_fs_t fs; - const char *path; - grub_device_t dev; - - device_name = grub_file_get_device_name (dirname); - dev = grub_device_open (device_name); - if (! dev) - goto fail; - - fs = grub_fs_probe (dev); - path = grub_strchr (dirname, ')'); - if (! path) - path = dirname; - else - path++; - - if (! path && ! device_name) - { - grub_error (GRUB_ERR_BAD_ARGUMENT, "invalid argument"); - goto fail; - } - - if (! *path) - { - if (grub_errno == GRUB_ERR_UNKNOWN_FS) - grub_errno = GRUB_ERR_NONE; - -#ifdef GRUB_MACHINE_IEEE1275 - /* - * Close device to prevent a double open in grub_normal_print_device_info(). - * Otherwise it may lead to hangs on some IEEE 1275 platforms. - */ - grub_device_close (dev); - dev = NULL; -#endif - - grub_normal_print_device_info (device_name); - } - else if (fs) - { - struct grub_ls_list_files_ctx ctx = { - .dirname = dirname, - .all = all, - .human = human - }; - - if (longlist) - (fs->fs_dir) (dev, path, print_files_long, &ctx); - else - (fs->fs_dir) (dev, path, print_files, &ctx); - - if (grub_errno == GRUB_ERR_BAD_FILE_TYPE - && path[grub_strlen (path) - 1] != '/') - { - /* PATH might be a regular file. */ - char *p; - grub_file_t file; - struct grub_dirhook_info info; - grub_errno = 0; - - file = grub_file_open (dirname, GRUB_FILE_TYPE_GET_SIZE - | GRUB_FILE_TYPE_NO_DECOMPRESS); - if (! file) - goto fail; - - grub_file_close (file); - - p = grub_strrchr (dirname, '/') + 1; - dirname = grub_strndup (dirname, p - dirname); - if (! dirname) - goto fail; - - all = 1; - grub_memset (&info, 0, sizeof (info)); - if (longlist) - print_files_long (p, &info, &ctx); - else - print_files (p, &info, &ctx); - - grub_free (dirname); - } - - if (grub_errno == GRUB_ERR_NONE) - grub_xputs ("\n"); - - grub_refresh (); - } - - fail: - if (dev) - grub_device_close (dev); - - grub_free (device_name); - - return 0; -} - -static grub_err_t -grub_cmd_ls (grub_extcmd_context_t ctxt, int argc, char **args) -{ - struct grub_arg_list *state = ctxt->state; - int i; - - if (argc == 0) - grub_ls_list_devices (state[0].set); - else - for (i = 0; i < argc; i++) - grub_ls_list_files (args[i], state[0].set, state[2].set, - state[1].set); - - return 0; -} - -static grub_extcmd_t cmd; - -GRUB_MOD_INIT(ls) -{ - cmd = grub_register_extcmd ("ls", grub_cmd_ls, 0, - N_("[-l|-h|-a] [FILE ...]"), - N_("List devices and files."), options); -} - -GRUB_MOD_FINI(ls) -{ - grub_unregister_extcmd (cmd); -} diff --git a/thirdparty/grub-2.04/grub-core/commands/lsacpi.c b/thirdparty/grub-2.04/grub-core/commands/lsacpi.c deleted file mode 100644 index 082491405..000000000 --- a/thirdparty/grub-2.04/grub-core/commands/lsacpi.c +++ /dev/null @@ -1,314 +0,0 @@ -/* acpi.c - Display acpi tables. */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2008 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ -#include -#include -#include -#include -#include -#include -#include -#include - -#pragma GCC diagnostic ignored "-Wcast-align" - -GRUB_MOD_LICENSE ("GPLv3+"); - -static void -print_strn (grub_uint8_t *str, grub_size_t len) -{ - for (; *str && len; str++, len--) - grub_printf ("%c", *str); - for (len++; len; len--) - grub_printf (" "); -} - -#define print_field(x) print_strn(x, sizeof (x)) - -static void -disp_acpi_table (struct grub_acpi_table_header *t) -{ - print_field (t->signature); - grub_printf ("%4" PRIuGRUB_UINT32_T "B rev=%u chksum=0x%02x (%s) OEM=", t->length, t->revision, t->checksum, - grub_byte_checksum (t, t->length) == 0 ? "valid" : "invalid"); - print_field (t->oemid); - print_field (t->oemtable); - grub_printf ("OEMrev=%08" PRIxGRUB_UINT32_T " ", t->oemrev); - print_field (t->creator_id); - grub_printf (" %08" PRIxGRUB_UINT32_T "\n", t->creator_rev); -} - -static void -disp_madt_table (struct grub_acpi_madt *t) -{ - struct grub_acpi_madt_entry_header *d; - grub_uint32_t len; - - disp_acpi_table (&t->hdr); - grub_printf ("Local APIC=%08" PRIxGRUB_UINT32_T " Flags=%08" - PRIxGRUB_UINT32_T "\n", - t->lapic_addr, t->flags); - len = t->hdr.length - sizeof (struct grub_acpi_madt); - d = t->entries; - for (;len > 0; len -= d->len, d = (void *) ((grub_uint8_t *) d + d->len)) - { - switch (d->type) - { - case GRUB_ACPI_MADT_ENTRY_TYPE_LAPIC: - { - struct grub_acpi_madt_entry_lapic *dt = (void *) d; - grub_printf (" LAPIC ACPI_ID=%02x APIC_ID=%02x Flags=%08x\n", - dt->acpiid, dt->apicid, dt->flags); - if (dt->hdr.len != sizeof (*dt)) - grub_printf (" table size mismatch %d != %d\n", dt->hdr.len, - (int) sizeof (*dt)); - break; - } - - case GRUB_ACPI_MADT_ENTRY_TYPE_IOAPIC: - { - struct grub_acpi_madt_entry_ioapic *dt = (void *) d; - grub_printf (" IOAPIC ID=%02x address=%08x GSI=%08x\n", - dt->id, dt->address, dt->global_sys_interrupt); - if (dt->hdr.len != sizeof (*dt)) - grub_printf (" table size mismatch %d != %d\n", dt->hdr.len, - (int) sizeof (*dt)); - if (dt->pad) - grub_printf (" non-zero pad: %02x\n", dt->pad); - break; - } - - case GRUB_ACPI_MADT_ENTRY_TYPE_INTERRUPT_OVERRIDE: - { - struct grub_acpi_madt_entry_interrupt_override *dt = (void *) d; - grub_printf (" Int Override bus=%x src=%x GSI=%08x Flags=%04x\n", - dt->bus, dt->source, dt->global_sys_interrupt, - dt->flags); - if (dt->hdr.len != sizeof (*dt)) - grub_printf (" table size mismatch %d != %d\n", dt->hdr.len, - (int) sizeof (*dt)); - } - break; - - case GRUB_ACPI_MADT_ENTRY_TYPE_LAPIC_NMI: - { - struct grub_acpi_madt_entry_lapic_nmi *dt = (void *) d; - grub_printf (" LAPIC_NMI ACPI_ID=%02x Flags=%04x lint=%02x\n", - dt->acpiid, dt->flags, dt->lint); - if (dt->hdr.len != sizeof (*dt)) - grub_printf (" table size mismatch %d != %d\n", dt->hdr.len, - (int) sizeof (*dt)); - break; - } - - case GRUB_ACPI_MADT_ENTRY_TYPE_SAPIC: - { - struct grub_acpi_madt_entry_sapic *dt = (void *) d; - grub_printf (" IOSAPIC Id=%02x GSI=%08x Addr=%016" PRIxGRUB_UINT64_T - "\n", - dt->id, dt->global_sys_interrupt_base, - dt->addr); - if (dt->hdr.len != sizeof (*dt)) - grub_printf (" table size mismatch %d != %d\n", dt->hdr.len, - (int) sizeof (*dt)); - if (dt->pad) - grub_printf (" non-zero pad: %02x\n", dt->pad); - - } - break; - case GRUB_ACPI_MADT_ENTRY_TYPE_LSAPIC: - { - struct grub_acpi_madt_entry_lsapic *dt = (void *) d; - grub_printf (" LSAPIC ProcId=%02x ID=%02x EID=%02x Flags=%x", - dt->cpu_id, dt->id, dt->eid, dt->flags); - if (dt->flags & GRUB_ACPI_MADT_ENTRY_SAPIC_FLAGS_ENABLED) - grub_printf (" Enabled\n"); - else - grub_printf (" Disabled\n"); - if (d->len > sizeof (struct grub_acpi_madt_entry_sapic)) - grub_printf (" UID val=%08x, Str=%s\n", dt->cpu_uid, - dt->cpu_uid_str); - if (dt->hdr.len != sizeof (*dt) + grub_strlen ((char *) dt->cpu_uid_str) + 1) - grub_printf (" table size mismatch %d != %d\n", dt->hdr.len, - (int) sizeof (*dt)); - if (dt->pad[0] || dt->pad[1] || dt->pad[2]) - grub_printf (" non-zero pad: %02x%02x%02x\n", dt->pad[0], dt->pad[1], dt->pad[2]); - } - break; - case GRUB_ACPI_MADT_ENTRY_TYPE_PLATFORM_INT_SOURCE: - { - struct grub_acpi_madt_entry_platform_int_source *dt = (void *) d; - static const char * const platint_type[] = - {"Nul", "PMI", "INIT", "CPEI"}; - - grub_printf (" Platform INT flags=%04x type=%02x (%s)" - " ID=%02x EID=%02x\n", - dt->flags, dt->inttype, - (dt->inttype < ARRAY_SIZE (platint_type)) - ? platint_type[dt->inttype] : "??", dt->cpu_id, - dt->cpu_eid); - grub_printf (" IOSAPIC Vec=%02x GSI=%08x source flags=%08x\n", - dt->sapic_vector, dt->global_sys_int, dt->src_flags); - } - break; - default: - grub_printf (" type=%x l=%u ", d->type, d->len); - grub_printf (" ??\n"); - } - } -} - -static void -disp_acpi_xsdt_table (struct grub_acpi_table_header *t) -{ - grub_uint32_t len; - grub_uint64_t *desc; - - disp_acpi_table (t); - len = t->length - sizeof (*t); - desc = (grub_uint64_t *) (t + 1); - for (; len >= sizeof (*desc); desc++, len -= sizeof (*desc)) - { -#if GRUB_CPU_SIZEOF_VOID_P == 4 - if (*desc >= (1ULL << 32)) - { - grub_printf ("Unreachable table\n"); - continue; - } -#endif - t = (struct grub_acpi_table_header *) (grub_addr_t) *desc; - - if (t == NULL) - continue; - - if (grub_memcmp (t->signature, GRUB_ACPI_MADT_SIGNATURE, - sizeof (t->signature)) == 0) - disp_madt_table ((struct grub_acpi_madt *) t); - else - disp_acpi_table (t); - } -} - -static void -disp_acpi_rsdt_table (struct grub_acpi_table_header *t) -{ - grub_uint32_t len; - grub_uint32_t *desc; - - disp_acpi_table (t); - len = t->length - sizeof (*t); - desc = (grub_uint32_t *) (t + 1); - for (; len >= sizeof (*desc); desc++, len -= sizeof (*desc)) - { - t = (struct grub_acpi_table_header *) (grub_addr_t) *desc; - - if (t == NULL) - continue; - - if (grub_memcmp (t->signature, GRUB_ACPI_MADT_SIGNATURE, - sizeof (t->signature)) == 0) - disp_madt_table ((struct grub_acpi_madt *) t); - else - disp_acpi_table (t); - } -} - -static void -disp_acpi_rsdpv1 (struct grub_acpi_rsdp_v10 *rsdp) -{ - print_field (rsdp->signature); - grub_printf ("chksum:%02x (%s), OEM-ID: ", rsdp->checksum, grub_byte_checksum (rsdp, sizeof (*rsdp)) == 0 ? "valid" : "invalid"); - print_field (rsdp->oemid); - grub_printf ("rev=%d\n", rsdp->revision); - grub_printf ("RSDT=%08" PRIxGRUB_UINT32_T "\n", rsdp->rsdt_addr); -} - -static void -disp_acpi_rsdpv2 (struct grub_acpi_rsdp_v20 *rsdp) -{ - disp_acpi_rsdpv1 (&rsdp->rsdpv1); - grub_printf ("len=%d chksum=%02x (%s) XSDT=%016" PRIxGRUB_UINT64_T "\n", rsdp->length, rsdp->checksum, grub_byte_checksum (rsdp, rsdp->length) == 0 ? "valid" : "invalid", - rsdp->xsdt_addr); - if (rsdp->length != sizeof (*rsdp)) - grub_printf (" length mismatch %d != %d\n", rsdp->length, - (int) sizeof (*rsdp)); - if (rsdp->reserved[0] || rsdp->reserved[1] || rsdp->reserved[2]) - grub_printf (" non-zero reserved %02x%02x%02x\n", rsdp->reserved[0], rsdp->reserved[1], rsdp->reserved[2]); -} - -static const struct grub_arg_option options[] = { - {"v1", '1', 0, N_("Show version 1 tables only."), 0, ARG_TYPE_NONE}, - {"v2", '2', 0, N_("Show version 2 and version 3 tables only."), 0, ARG_TYPE_NONE}, - {0, 0, 0, 0, 0, 0} -}; - -static grub_err_t -grub_cmd_lsacpi (struct grub_extcmd_context *ctxt, - int argc __attribute__ ((unused)), - char **args __attribute__ ((unused))) -{ - if (!ctxt->state[1].set) - { - struct grub_acpi_rsdp_v10 *rsdp1 = grub_acpi_get_rsdpv1 (); - if (!rsdp1) - grub_printf ("No RSDPv1\n"); - else - { - grub_printf ("RSDPv1 signature:"); - disp_acpi_rsdpv1 (rsdp1); - disp_acpi_rsdt_table ((void *) (grub_addr_t) rsdp1->rsdt_addr); - } - } - - if (!ctxt->state[0].set) - { - struct grub_acpi_rsdp_v20 *rsdp2 = grub_acpi_get_rsdpv2 (); - if (!rsdp2) - grub_printf ("No RSDPv2\n"); - else - { -#if GRUB_CPU_SIZEOF_VOID_P == 4 - if (rsdp2->xsdt_addr >= (1ULL << 32)) - grub_printf ("Unreachable RSDPv2\n"); - else -#endif - { - grub_printf ("RSDPv2 signature:"); - disp_acpi_rsdpv2 (rsdp2); - disp_acpi_xsdt_table ((void *) (grub_addr_t) rsdp2->xsdt_addr); - grub_printf ("\n"); - } - } - } - return GRUB_ERR_NONE; -} - -static grub_extcmd_t cmd; - -GRUB_MOD_INIT(lsapi) -{ - cmd = grub_register_extcmd ("lsacpi", grub_cmd_lsacpi, 0, "[-1|-2]", - N_("Show ACPI information."), options); -} - -GRUB_MOD_FINI(lsacpi) -{ - grub_unregister_extcmd (cmd); -} - - diff --git a/thirdparty/grub-2.04/grub-core/commands/lsmmap.c b/thirdparty/grub-2.04/grub-core/commands/lsmmap.c deleted file mode 100644 index 816ee47d1..000000000 --- a/thirdparty/grub-2.04/grub-core/commands/lsmmap.c +++ /dev/null @@ -1,85 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2008 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -#ifndef GRUB_MACHINE_EMU -static const char *names[] = - { - [GRUB_MEMORY_AVAILABLE] = N_("available RAM"), - [GRUB_MEMORY_RESERVED] = N_("reserved RAM"), - /* TRANSLATORS: this refers to memory where ACPI tables are stored - and which can be used by OS once it loads ACPI tables. */ - [GRUB_MEMORY_ACPI] = N_("ACPI reclaimable RAM"), - /* TRANSLATORS: this refers to memory which ACPI-compliant OS - is required to save accross hibernations. */ - [GRUB_MEMORY_NVS] = N_("ACPI non-volatile storage RAM"), - [GRUB_MEMORY_BADRAM] = N_("faulty RAM (BadRAM)"), - [GRUB_MEMORY_PERSISTENT] = N_("persistent RAM"), - [GRUB_MEMORY_PERSISTENT_LEGACY] = N_("persistent RAM (legacy)"), - [GRUB_MEMORY_COREBOOT_TABLES] = N_("RAM holding coreboot tables"), - [GRUB_MEMORY_CODE] = N_("RAM holding firmware code") - }; - -/* Helper for grub_cmd_lsmmap. */ -static int -lsmmap_hook (grub_uint64_t addr, grub_uint64_t size, grub_memory_type_t type, - void *data __attribute__ ((unused))) -{ - if (type < (int) ARRAY_SIZE (names) && type >= 0 && names[type]) - grub_printf_ (N_("base_addr = 0x%llx, length = 0x%llx, %s\n"), - (long long) addr, (long long) size, _(names[type])); - else - grub_printf_ (N_("base_addr = 0x%llx, length = 0x%llx, type = 0x%x\n"), - (long long) addr, (long long) size, type); - return 0; -} -#endif - -static grub_err_t -grub_cmd_lsmmap (grub_command_t cmd __attribute__ ((unused)), - int argc __attribute__ ((unused)), - char **args __attribute__ ((unused))) - -{ -#ifndef GRUB_MACHINE_EMU - grub_machine_mmap_iterate (lsmmap_hook, NULL); -#endif - - return 0; -} - -static grub_command_t cmd; - -GRUB_MOD_INIT(lsmmap) -{ - cmd = grub_register_command ("lsmmap", grub_cmd_lsmmap, - 0, N_("List memory map provided by firmware.")); -} - -GRUB_MOD_FINI(lsmmap) -{ - grub_unregister_command (cmd); -} diff --git a/thirdparty/grub-2.04/grub-core/commands/lspci.c b/thirdparty/grub-2.04/grub-core/commands/lspci.c deleted file mode 100644 index 65213a372..000000000 --- a/thirdparty/grub-2.04/grub-core/commands/lspci.c +++ /dev/null @@ -1,238 +0,0 @@ -/* lspci.c - List PCI devices. */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2008, 2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -struct grub_pci_classname -{ - int class; - int subclass; - const char *desc; -}; - -static const struct grub_pci_classname grub_pci_classes[] = - { - { 0, 0, "" }, - { 1, 0, "SCSI Controller" }, - { 1, 1, "IDE Controller" }, - { 1, 2, "Floppy Controller" }, - { 1, 3, "IPI Controller" }, - { 1, 4, "RAID Controller" }, - { 1, 6, "SATA Controller" }, - { 1, 0x80, "Mass storage Controller" }, - { 2, 0, "Ethernet Controller" }, - { 2, 1, "Token Ring Controller" }, - { 2, 2, "FDDI Controller" }, - { 2, 3, "ATM Controller" }, - { 2, 4, "ISDN Controller" }, - { 2, 0x80, "Network controller" }, - { 3, 0, "VGA Controller" }, - { 3, 1, "XGA Controller" }, - { 3, 2, "3D Controller" }, - { 3, 0x80, "Display Controller" }, - { 4, 0, "Multimedia Video Device" }, - { 4, 1, "Multimedia Audio Device" }, - { 4, 2, "Multimedia Telephony Device" }, - { 4, 0x80, "Multimedia device" }, - { 5, 0, "RAM Controller" }, - { 5, 1, "Flash Memory Controller" }, - { 5, 0x80, "Memory Controller" }, - { 6, 0, "Host Bridge" }, - { 6, 1, "ISA Bridge" }, - { 6, 2, "EISA Bride" }, - { 6, 3, "MCA Bridge" }, - { 6, 4, "PCI-PCI Bridge" }, - { 6, 5, "PCMCIA Bridge" }, - { 6, 6, "NuBus Bridge" }, - { 6, 7, "CardBus Bridge" }, - { 6, 8, "Raceway Bridge" }, - { 6, 0x80, "Unknown Bridge" }, - { 7, 0x80, "Communication controller" }, - { 8, 0x80, "System hardware" }, - { 9, 0, "Keyboard Controller" }, - { 9, 1, "Digitizer" }, - { 9, 2, "Mouse Controller" }, - { 9, 3, "Scanner Controller" }, - { 9, 4, "Gameport Controller" }, - { 9, 0x80, "Unknown Input Device" }, - { 10, 0, "Generic Docking Station" }, - { 10, 0x80, "Unknown Docking Station" }, - { 11, 0, "80386 Processor" }, - { 11, 1, "80486 Processor" }, - { 11, 2, "Pentium Processor" }, - { 11, 0x10, "Alpha Processor" }, - { 11, 0x20, "PowerPC Processor" }, - { 11, 0x30, "MIPS Processor" }, - { 11, 0x40, "Co-Processor" }, - { 11, 0x80, "Unknown Processor" }, - { 12, 3, "USB Controller" }, - { 12, 0x80, "Serial Bus Controller" }, - { 13, 0x80, "Wireless Controller" }, - { 14, 0, "I2O" }, - { 15, 0, "IrDA Controller" }, - { 15, 1, "Consumer IR" }, - { 15, 0x10, "RF-Controller" }, - { 15, 0x80, "Satellite Communication Controller" }, - { 16, 0, "Network Decryption" }, - { 16, 1, "Entertainment Decryption" }, - { 16, 0x80, "Unknown Decryption Controller" }, - { 17, 0, "Digital IO Module" }, - { 17, 0x80, "Unknown Data Input System" }, - { 0, 0, 0 }, - }; - -static const char * -grub_pci_get_class (int class, int subclass) -{ - const struct grub_pci_classname *curr = grub_pci_classes; - - while (curr->desc) - { - if (curr->class == class && curr->subclass == subclass) - return curr->desc; - curr++; - } - - return 0; -} - -static const struct grub_arg_option options[] = - { - {"iospace", 'i', 0, "show I/O spaces", 0, 0}, - {0, 0, 0, 0, 0, 0} - }; - -static int iospace; - -static int -grub_lspci_iter (grub_pci_device_t dev, grub_pci_id_t pciid, - void *data __attribute__ ((unused))) -{ - grub_uint32_t class; - const char *sclass; - grub_pci_address_t addr; - int reg; - - grub_printf ("%02x:%02x.%x %04x:%04x", grub_pci_get_bus (dev), - grub_pci_get_device (dev), grub_pci_get_function (dev), - pciid & 0xFFFF, pciid >> 16); - addr = grub_pci_make_address (dev, GRUB_PCI_REG_CLASS); - class = grub_pci_read (addr); - - /* Lookup the class name, if there isn't a specific one, - retry with 0x80 to get the generic class name. */ - sclass = grub_pci_get_class (class >> 24, (class >> 16) & 0xFF); - if (! sclass) - sclass = grub_pci_get_class (class >> 24, 0x80); - if (! sclass) - sclass = ""; - - grub_printf (" [%04x] %s", (class >> 16) & 0xffff, sclass); - - grub_uint8_t pi = (class >> 8) & 0xff; - if (pi) - grub_printf (" [PI %02x]", pi); - - grub_printf ("\n"); - - if (iospace) - { - reg = GRUB_PCI_REG_ADDRESSES; - while (reg < GRUB_PCI_REG_CIS_POINTER) - { - grub_uint64_t space; - addr = grub_pci_make_address (dev, reg); - space = grub_pci_read (addr); - - reg += sizeof (grub_uint32_t); - - if (space == 0) - continue; - - switch (space & GRUB_PCI_ADDR_SPACE_MASK) - { - case GRUB_PCI_ADDR_SPACE_IO: - grub_printf ("\tIO space %d at 0x%llx\n", - (unsigned) ((reg - GRUB_PCI_REG_ADDRESSES) - / sizeof (grub_uint32_t)) - 1, - (unsigned long long) - (space & GRUB_PCI_ADDR_IO_MASK)); - break; - case GRUB_PCI_ADDR_SPACE_MEMORY: - if ((space & GRUB_PCI_ADDR_MEM_TYPE_MASK) - == GRUB_PCI_ADDR_MEM_TYPE_64) - { - addr = grub_pci_make_address (dev, reg); - space |= ((grub_uint64_t) grub_pci_read (addr)) << 32; - reg += sizeof (grub_uint32_t); - grub_printf ("\t64-bit memory space %d at 0x%016llx [%s]\n", - (unsigned) ((reg - GRUB_PCI_REG_ADDRESSES) - / sizeof (grub_uint32_t)) - 2, - (unsigned long long) - (space & GRUB_PCI_ADDR_MEM_MASK), - space & GRUB_PCI_ADDR_MEM_PREFETCH - ? "prefetchable" : "non-prefetchable"); - - } - else - grub_printf ("\t32-bit memory space %d at 0x%016llx [%s]\n", - (unsigned) ((reg - GRUB_PCI_REG_ADDRESSES) - / sizeof (grub_uint32_t)) - 1, - (unsigned long long) - (space & GRUB_PCI_ADDR_MEM_MASK), - space & GRUB_PCI_ADDR_MEM_PREFETCH - ? "prefetchable" : "non-prefetchable"); - break; - } - } - } - - - return 0; -} - -static grub_err_t -grub_cmd_lspci (grub_extcmd_context_t ctxt, - int argc __attribute__ ((unused)), - char **args __attribute__ ((unused))) -{ - iospace = ctxt->state[0].set; - grub_pci_iterate (grub_lspci_iter, NULL); - return GRUB_ERR_NONE; -} - -static grub_extcmd_t cmd; - -GRUB_MOD_INIT(lspci) -{ - cmd = grub_register_extcmd ("lspci", grub_cmd_lspci, 0, "[-i]", - N_("List PCI devices."), options); -} - -GRUB_MOD_FINI(lspci) -{ - grub_unregister_extcmd (cmd); -} diff --git a/thirdparty/grub-2.04/grub-core/commands/macbless.c b/thirdparty/grub-2.04/grub-core/commands/macbless.c deleted file mode 100644 index 85cefd0f7..000000000 --- a/thirdparty/grub-2.04/grub-core/commands/macbless.c +++ /dev/null @@ -1,235 +0,0 @@ -/* hfspbless.c - set the hfs+ boot directory. */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2003,2005,2007,2008,2009,2012,2013 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -struct find_node_context -{ - grub_uint64_t inode_found; - char *dirname; - enum - { FOUND_NONE, FOUND_FILE, FOUND_DIR } found; -}; - -static int -find_inode (const char *filename, - const struct grub_dirhook_info *info, void *data) -{ - struct find_node_context *ctx = data; - if (!info->inodeset) - return 0; - - if ((grub_strcmp (ctx->dirname, filename) == 0 - || (info->case_insensitive - && grub_strcasecmp (ctx->dirname, filename) == 0))) - { - ctx->inode_found = info->inode; - ctx->found = info->dir ? FOUND_DIR : FOUND_FILE; - } - return 0; -} - -grub_err_t -grub_mac_bless_inode (grub_device_t dev, grub_uint32_t inode, int is_dir, - int intel) -{ - grub_err_t err; - union - { - struct grub_hfs_sblock hfs; - struct grub_hfsplus_volheader hfsplus; - } volheader; - grub_disk_addr_t embedded_offset; - - if (intel && is_dir) - return grub_error (GRUB_ERR_BAD_ARGUMENT, - "can't bless a directory for mactel"); - if (!intel && !is_dir) - return grub_error (GRUB_ERR_NOT_IMPLEMENTED_YET, - "can't bless a file for mac PPC"); - - /* Read the bootblock. */ - err = grub_disk_read (dev->disk, GRUB_HFSPLUS_SBLOCK, 0, sizeof (volheader), - (char *) &volheader); - if (err) - return err; - - embedded_offset = 0; - if (grub_be_to_cpu16 (volheader.hfs.magic) == GRUB_HFS_MAGIC) - { - int extent_start; - int ablk_size; - int ablk_start; - - /* See if there's an embedded HFS+ filesystem. */ - if (grub_be_to_cpu16 (volheader.hfs.embed_sig) != GRUB_HFSPLUS_MAGIC) - { - if (intel) - volheader.hfs.intel_bootfile = grub_be_to_cpu32 (inode); - else - volheader.hfs.ppc_bootdir = grub_be_to_cpu32 (inode); - return GRUB_ERR_NONE; - } - - /* Calculate the offset needed to translate HFS+ sector numbers. */ - extent_start = - grub_be_to_cpu16 (volheader.hfs.embed_extent.first_block); - ablk_size = grub_be_to_cpu32 (volheader.hfs.blksz); - ablk_start = grub_be_to_cpu16 (volheader.hfs.first_block); - embedded_offset = (ablk_start - + ((grub_uint64_t) extent_start) - * (ablk_size >> GRUB_DISK_SECTOR_BITS)); - - err = - grub_disk_read (dev->disk, embedded_offset + GRUB_HFSPLUS_SBLOCK, 0, - sizeof (volheader), (char *) &volheader); - if (err) - return err; - } - - if ((grub_be_to_cpu16 (volheader.hfsplus.magic) != GRUB_HFSPLUS_MAGIC) - && (grub_be_to_cpu16 (volheader.hfsplus.magic) != GRUB_HFSPLUSX_MAGIC)) - return grub_error (GRUB_ERR_BAD_FS, "not a HFS+ filesystem"); - if (intel) - volheader.hfsplus.intel_bootfile = grub_be_to_cpu32 (inode); - else - volheader.hfsplus.ppc_bootdir = grub_be_to_cpu32 (inode); - - return grub_disk_write (dev->disk, embedded_offset + GRUB_HFSPLUS_SBLOCK, 0, - sizeof (volheader), (char *) &volheader); -} - -grub_err_t -grub_mac_bless_file (grub_device_t dev, const char *path_in, int intel) -{ - grub_fs_t fs; - - char *path, *tail; - struct find_node_context ctx; - - fs = grub_fs_probe (dev); - if (!fs || (grub_strcmp (fs->name, "hfsplus") != 0 - && grub_strcmp (fs->name, "hfs") != 0)) - return grub_error (GRUB_ERR_BAD_FS, "no suitable FS found"); - - path = grub_strdup (path_in); - if (!path) - return grub_errno; - - tail = path + grub_strlen (path) - 1; - - /* Remove trailing '/'. */ - while (tail != path && *tail == '/') - *(tail--) = 0; - - tail = grub_strrchr (path, '/'); - ctx.found = 0; - - if (tail) - { - *tail = 0; - ctx.dirname = tail + 1; - - (fs->fs_dir) (dev, *path == 0 ? "/" : path, find_inode, &ctx); - } - else - { - ctx.dirname = path + 1; - (fs->fs_dir) (dev, "/", find_inode, &ctx); - } - if (!ctx.found) - { - grub_free (path); - return grub_error (GRUB_ERR_FILE_NOT_FOUND, N_("file `%s' not found"), - path_in); - } - grub_free (path); - - return grub_mac_bless_inode (dev, (grub_uint32_t) ctx.inode_found, - (ctx.found == FOUND_DIR), intel); -} - -static grub_err_t -grub_cmd_macbless (grub_command_t cmd, int argc, char **args) -{ - char *device_name; - char *path = 0; - grub_device_t dev = 0; - grub_err_t err; - - if (argc != 1) - return grub_error (GRUB_ERR_BAD_ARGUMENT, N_("one argument expected")); - device_name = grub_file_get_device_name (args[0]); - dev = grub_device_open (device_name); - - path = grub_strchr (args[0], ')'); - if (!path) - path = args[0]; - else - path = path + 1; - - if (!path || *path == 0 || !dev) - { - if (dev) - grub_device_close (dev); - - grub_free (device_name); - - return grub_error (GRUB_ERR_BAD_ARGUMENT, "invalid argument"); - } - - err = grub_mac_bless_file (dev, path, cmd->name[3] == 't'); - - grub_device_close (dev); - grub_free (device_name); - return err; -} - -static grub_command_t cmd, cmd_ppc; - -GRUB_MOD_INIT(macbless) -{ - cmd = grub_register_command ("mactelbless", grub_cmd_macbless, - N_("FILE"), - N_ - ("Bless FILE of HFS or HFS+ partition for intel macs.")); - cmd_ppc = - grub_register_command ("macppcbless", grub_cmd_macbless, N_("DIR"), - N_ - ("Bless DIR of HFS or HFS+ partition for PPC macs.")); -} - -GRUB_MOD_FINI(macbless) -{ - grub_unregister_command (cmd); - grub_unregister_command (cmd_ppc); -} diff --git a/thirdparty/grub-2.04/grub-core/commands/memrw.c b/thirdparty/grub-2.04/grub-core/commands/memrw.c deleted file mode 100644 index 98769eadb..000000000 --- a/thirdparty/grub-2.04/grub-core/commands/memrw.c +++ /dev/null @@ -1,157 +0,0 @@ -/* memrw.c - command to read / write physical memory */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -static grub_extcmd_t cmd_read_byte, cmd_read_word, cmd_read_dword; -static grub_command_t cmd_write_byte, cmd_write_word, cmd_write_dword; - -static const struct grub_arg_option options[] = - { - {0, 'v', 0, N_("Save read value into variable VARNAME."), - N_("VARNAME"), ARG_TYPE_STRING}, - {0, 0, 0, 0, 0, 0} - }; - - -static grub_err_t -grub_cmd_read (grub_extcmd_context_t ctxt, int argc, char **argv) -{ - grub_addr_t addr; - grub_uint32_t value = 0; - char buf[sizeof ("XXXXXXXX")]; - - if (argc != 1) - return grub_error (GRUB_ERR_BAD_ARGUMENT, N_("one argument expected")); - - addr = grub_strtoul (argv[0], 0, 0); - switch (ctxt->extcmd->cmd->name[sizeof ("read_") - 1]) - { - case 'd': - value = *((volatile grub_uint32_t *) addr); - break; - - case 'w': - value = *((volatile grub_uint16_t *) addr); - break; - - case 'b': - value = *((volatile grub_uint8_t *) addr); - break; - } - - if (ctxt->state[0].set) - { - grub_snprintf (buf, sizeof (buf), "%x", value); - grub_env_set (ctxt->state[0].arg, buf); - } - else - grub_printf ("0x%x\n", value); - - return 0; -} - -static grub_err_t -grub_cmd_write (grub_command_t cmd, int argc, char **argv) -{ - grub_addr_t addr; - grub_uint32_t value; - grub_uint32_t mask = 0xffffffff; - - if (argc != 2 && argc != 3) - return grub_error (GRUB_ERR_BAD_ARGUMENT, N_("two arguments expected")); - - addr = grub_strtoul (argv[0], 0, 0); - value = grub_strtoul (argv[1], 0, 0); - if (argc == 3) - mask = grub_strtoul (argv[2], 0, 0); - value &= mask; - switch (cmd->name[sizeof ("write_") - 1]) - { - case 'd': - if (mask != 0xffffffff) - *((volatile grub_uint32_t *) addr) - = (*((volatile grub_uint32_t *) addr) & ~mask) | value; - else - *((volatile grub_uint32_t *) addr) = value; - break; - - case 'w': - if ((mask & 0xffff) != 0xffff) - *((volatile grub_uint16_t *) addr) - = (*((volatile grub_uint16_t *) addr) & ~mask) | value; - else - *((volatile grub_uint16_t *) addr) = value; - break; - - case 'b': - if ((mask & 0xff) != 0xff) - *((volatile grub_uint8_t *) addr) - = (*((volatile grub_uint8_t *) addr) & ~mask) | value; - else - *((volatile grub_uint8_t *) addr) = value; - break; - } - - return 0; -} - -GRUB_MOD_INIT(memrw) -{ - cmd_read_byte = - grub_register_extcmd ("read_byte", grub_cmd_read, 0, - N_("ADDR"), N_("Read 8-bit value from ADDR."), - options); - cmd_read_word = - grub_register_extcmd ("read_word", grub_cmd_read, 0, - N_("ADDR"), N_("Read 16-bit value from ADDR."), - options); - cmd_read_dword = - grub_register_extcmd ("read_dword", grub_cmd_read, 0, - N_("ADDR"), N_("Read 32-bit value from ADDR."), - options); - cmd_write_byte = - grub_register_command ("write_byte", grub_cmd_write, - N_("ADDR VALUE [MASK]"), - N_("Write 8-bit VALUE to ADDR.")); - cmd_write_word = - grub_register_command ("write_word", grub_cmd_write, - N_("ADDR VALUE [MASK]"), - N_("Write 16-bit VALUE to ADDR.")); - cmd_write_dword = - grub_register_command ("write_dword", grub_cmd_write, - N_("ADDR VALUE [MASK]"), - N_("Write 32-bit VALUE to ADDR.")); -} - -GRUB_MOD_FINI(memrw) -{ - grub_unregister_extcmd (cmd_read_byte); - grub_unregister_extcmd (cmd_read_word); - grub_unregister_extcmd (cmd_read_dword); - grub_unregister_command (cmd_write_byte); - grub_unregister_command (cmd_write_word); - grub_unregister_command (cmd_write_dword); -} diff --git a/thirdparty/grub-2.04/grub-core/commands/menuentry.c b/thirdparty/grub-2.04/grub-core/commands/menuentry.c deleted file mode 100644 index 2c5363da7..000000000 --- a/thirdparty/grub-2.04/grub-core/commands/menuentry.c +++ /dev/null @@ -1,337 +0,0 @@ -/* menuentry.c - menuentry command */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2010 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include - -static const struct grub_arg_option options[] = - { - {"class", 1, GRUB_ARG_OPTION_REPEATABLE, - N_("Menu entry type."), N_("STRING"), ARG_TYPE_STRING}, - {"users", 2, 0, - N_("List of users allowed to boot this entry."), N_("USERNAME[,USERNAME]"), - ARG_TYPE_STRING}, - {"hotkey", 3, 0, - N_("Keyboard key to quickly boot this entry."), N_("KEYBOARD_KEY"), ARG_TYPE_STRING}, - {"source", 4, 0, - N_("Use STRING as menu entry body."), N_("STRING"), ARG_TYPE_STRING}, - {"id", 0, 0, N_("Menu entry identifier."), N_("STRING"), ARG_TYPE_STRING}, - /* TRANSLATORS: menu entry can either be bootable by anyone or only by - handful of users. By default when security is active only superusers can - boot a given menu entry. With --unrestricted (this option) - anyone can boot it. */ - {"unrestricted", 0, 0, N_("This entry can be booted by any user."), - 0, ARG_TYPE_NONE}, - {0, 0, 0, 0, 0, 0} - }; - -static struct -{ - const char *name; - int key; -} hotkey_aliases[] = - { - {"backspace", GRUB_TERM_BACKSPACE}, - {"tab", GRUB_TERM_TAB}, - {"delete", GRUB_TERM_KEY_DC}, - {"insert", GRUB_TERM_KEY_INSERT}, - {"f1", GRUB_TERM_KEY_F1}, - {"f2", GRUB_TERM_KEY_F2}, - {"f3", GRUB_TERM_KEY_F3}, - {"f4", GRUB_TERM_KEY_F4}, - {"f5", GRUB_TERM_KEY_F5}, - {"f6", GRUB_TERM_KEY_F6}, - {"f7", GRUB_TERM_KEY_F7}, - {"f8", GRUB_TERM_KEY_F8}, - {"f9", GRUB_TERM_KEY_F9}, - {"f10", GRUB_TERM_KEY_F10}, - {"f11", GRUB_TERM_KEY_F11}, - {"f12", GRUB_TERM_KEY_F12}, - }; - -/* Add a menu entry to the current menu context (as given by the environment - variable data slot `menu'). As the configuration file is read, the script - parser calls this when a menu entry is to be created. */ -grub_err_t -grub_normal_add_menu_entry (int argc, const char **args, - char **classes, const char *id, - const char *users, const char *hotkey, - const char *prefix, const char *sourcecode, - int submenu) -{ - int menu_hotkey = 0; - char **menu_args = NULL; - char *menu_users = NULL; - char *menu_title = NULL; - char *menu_sourcecode = NULL; - char *menu_id = NULL; - struct grub_menu_entry_class *menu_classes = NULL; - - grub_menu_t menu; - grub_menu_entry_t *last; - - menu = grub_env_get_menu (); - if (! menu) - return grub_error (GRUB_ERR_MENU, "no menu context"); - - last = &menu->entry_list; - - menu_sourcecode = grub_xasprintf ("%s%s", prefix ?: "", sourcecode); - if (! menu_sourcecode) - return grub_errno; - - if (classes && classes[0]) - { - int i; - for (i = 0; classes[i]; i++); /* count # of menuentry classes */ - menu_classes = grub_zalloc (sizeof (struct grub_menu_entry_class) - * (i + 1)); - if (! menu_classes) - goto fail; - - for (i = 0; classes[i]; i++) - { - menu_classes[i].name = grub_strdup (classes[i]); - if (! menu_classes[i].name) - goto fail; - menu_classes[i].next = classes[i + 1] ? &menu_classes[i + 1] : NULL; - } - } - - if (users) - { - menu_users = grub_strdup (users); - if (! menu_users) - goto fail; - } - - if (hotkey) - { - unsigned i; - for (i = 0; i < ARRAY_SIZE (hotkey_aliases); i++) - if (grub_strcmp (hotkey, hotkey_aliases[i].name) == 0) - { - menu_hotkey = hotkey_aliases[i].key; - break; - } - if (i == ARRAY_SIZE (hotkey_aliases)) - menu_hotkey = hotkey[0]; - } - - if (! argc) - { - grub_error (GRUB_ERR_MENU, "menuentry is missing title"); - goto fail; - } - - menu_title = grub_strdup (args[0]); - if (! menu_title) - goto fail; - - menu_id = grub_strdup (id ? : menu_title); - if (! menu_id) - goto fail; - - /* Save argc, args to pass as parameters to block arg later. */ - menu_args = grub_malloc (sizeof (char*) * (argc + 1)); - if (! menu_args) - goto fail; - - { - int i; - for (i = 0; i < argc; i++) - { - menu_args[i] = grub_strdup (args[i]); - if (! menu_args[i]) - goto fail; - } - menu_args[argc] = NULL; - } - - /* Add the menu entry at the end of the list. */ - while (*last) - last = &(*last)->next; - - *last = grub_zalloc (sizeof (**last)); - if (! *last) - goto fail; - - (*last)->title = menu_title; - (*last)->id = menu_id; - (*last)->hotkey = menu_hotkey; - (*last)->classes = menu_classes; - if (menu_users) - (*last)->restricted = 1; - (*last)->users = menu_users; - (*last)->argc = argc; - (*last)->args = menu_args; - (*last)->sourcecode = menu_sourcecode; - (*last)->submenu = submenu; - - menu->size++; - return GRUB_ERR_NONE; - - fail: - - grub_free (menu_sourcecode); - { - int i; - for (i = 0; menu_classes && menu_classes[i].name; i++) - grub_free (menu_classes[i].name); - grub_free (menu_classes); - } - - { - int i; - for (i = 0; menu_args && menu_args[i]; i++) - grub_free (menu_args[i]); - grub_free (menu_args); - } - - grub_free (menu_users); - grub_free (menu_title); - grub_free (menu_id); - return grub_errno; -} - -static char * -setparams_prefix (int argc, char **args) -{ - int i; - int j; - char *p; - char *result; - grub_size_t len = 10; - - /* Count resulting string length */ - for (i = 0; i < argc; i++) - { - len += 3; /* 3 = 1 space + 2 quotes */ - p = args[i]; - while (*p) - len += (*p++ == '\'' ? 3 : 1); - } - - result = grub_malloc (len + 2); - if (! result) - return 0; - - grub_strcpy (result, "setparams"); - p = result + 9; - - for (j = 0; j < argc; j++) - { - *p++ = ' '; - *p++ = '\''; - p = grub_strchrsub (p, args[j], '\'', "'\\''"); - *p++ = '\''; - } - *p++ = '\n'; - *p = '\0'; - return result; -} - -static grub_err_t -grub_cmd_menuentry (grub_extcmd_context_t ctxt, int argc, char **args) -{ - char ch; - char *src; - char *prefix; - unsigned len; - grub_err_t r; - const char *users; - - if (! argc) - return grub_error (GRUB_ERR_BAD_ARGUMENT, "missing arguments"); - - if (ctxt->state[3].set && ctxt->script) - return grub_error (GRUB_ERR_BAD_ARGUMENT, "multiple menuentry definitions"); - - if (! ctxt->state[3].set && ! ctxt->script) - return grub_error (GRUB_ERR_BAD_ARGUMENT, "no menuentry definition"); - - if (ctxt->state[1].set) - users = ctxt->state[1].arg; - else if (ctxt->state[5].set) - users = NULL; - else - users = ""; - - if (! ctxt->script) - return grub_normal_add_menu_entry (argc, (const char **) args, - (ctxt->state[0].set ? ctxt->state[0].args - : NULL), - ctxt->state[4].arg, - users, - ctxt->state[2].arg, 0, - ctxt->state[3].arg, - ctxt->extcmd->cmd->name[0] == 's'); - - src = args[argc - 1]; - args[argc - 1] = NULL; - - len = grub_strlen(src); - ch = src[len - 1]; - src[len - 1] = '\0'; - - prefix = setparams_prefix (argc - 1, args); - if (! prefix) - return grub_errno; - - r = grub_normal_add_menu_entry (argc - 1, (const char **) args, - ctxt->state[0].args, ctxt->state[4].arg, - users, - ctxt->state[2].arg, prefix, src + 1, - ctxt->extcmd->cmd->name[0] == 's'); - - src[len - 1] = ch; - args[argc - 1] = src; - grub_free (prefix); - return r; -} - -static grub_extcmd_t cmd, cmd_sub; - -void -grub_menu_init (void) -{ - cmd = grub_register_extcmd ("menuentry", grub_cmd_menuentry, - GRUB_COMMAND_FLAG_BLOCKS - | GRUB_COMMAND_ACCEPT_DASH - | GRUB_COMMAND_FLAG_EXTRACTOR, - N_("BLOCK"), N_("Define a menu entry."), options); - cmd_sub = grub_register_extcmd ("submenu", grub_cmd_menuentry, - GRUB_COMMAND_FLAG_BLOCKS - | GRUB_COMMAND_ACCEPT_DASH - | GRUB_COMMAND_FLAG_EXTRACTOR, - N_("BLOCK"), N_("Define a submenu."), - options); -} - -void -grub_menu_fini (void) -{ - grub_unregister_extcmd (cmd); - grub_unregister_extcmd (cmd_sub); -} diff --git a/thirdparty/grub-2.04/grub-core/commands/minicmd.c b/thirdparty/grub-2.04/grub-core/commands/minicmd.c deleted file mode 100644 index 6bbce3128..000000000 --- a/thirdparty/grub-2.04/grub-core/commands/minicmd.c +++ /dev/null @@ -1,224 +0,0 @@ -/* minicmd.c - commands for the rescue mode */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2003,2005,2006,2007,2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -/* cat FILE */ -static grub_err_t -grub_mini_cmd_cat (struct grub_command *cmd __attribute__ ((unused)), - int argc, char *argv[]) -{ - grub_file_t file; - char buf[GRUB_DISK_SECTOR_SIZE]; - grub_ssize_t size; - - if (argc < 1) - return grub_error (GRUB_ERR_BAD_ARGUMENT, N_("filename expected")); - - file = grub_file_open (argv[0], GRUB_FILE_TYPE_CAT); - if (! file) - return grub_errno; - - while ((size = grub_file_read (file, buf, sizeof (buf))) > 0) - { - int i; - - for (i = 0; i < size; i++) - { - unsigned char c = buf[i]; - - if ((grub_isprint (c) || grub_isspace (c)) && c != '\r') - grub_printf ("%c", c); - else - { - grub_setcolorstate (GRUB_TERM_COLOR_HIGHLIGHT); - grub_printf ("<%x>", (int) c); - grub_setcolorstate (GRUB_TERM_COLOR_STANDARD); - } - } - } - - grub_xputs ("\n"); - grub_refresh (); - grub_file_close (file); - - return 0; -} - -/* help */ -static grub_err_t -grub_mini_cmd_help (struct grub_command *cmd __attribute__ ((unused)), - int argc __attribute__ ((unused)), - char *argv[] __attribute__ ((unused))) -{ - grub_command_t p; - - for (p = grub_command_list; p; p = p->next) - grub_printf ("%s (%d%c)\t%s\n", p->name, - p->prio & GRUB_COMMAND_PRIO_MASK, - (p->prio & GRUB_COMMAND_FLAG_ACTIVE) ? '+' : '-', - p->description); - - return 0; -} - -/* dump ADDRESS [SIZE] */ -static grub_err_t -grub_mini_cmd_dump (struct grub_command *cmd __attribute__ ((unused)), - int argc, char *argv[]) -{ - grub_uint8_t *addr; - grub_size_t size = 4; - - if (argc == 0) - return grub_error (GRUB_ERR_BAD_ARGUMENT, "no address specified"); - -#if GRUB_CPU_SIZEOF_VOID_P == GRUB_CPU_SIZEOF_LONG -#define grub_strtoaddr grub_strtoul -#else -#define grub_strtoaddr grub_strtoull -#endif - - addr = (grub_uint8_t *) grub_strtoaddr (argv[0], 0, 0); - if (grub_errno) - return grub_errno; - - if (argc > 1) - size = (grub_size_t) grub_strtoaddr (argv[1], 0, 0); - - while (size--) - { - grub_printf ("%x%x ", *addr >> 4, *addr & 0xf); - addr++; - } - - return 0; -} - -/* rmmod MODULE */ -static grub_err_t -grub_mini_cmd_rmmod (struct grub_command *cmd __attribute__ ((unused)), - int argc, char *argv[]) -{ - grub_dl_t mod; - - if (argc == 0) - return grub_error (GRUB_ERR_BAD_ARGUMENT, "no module specified"); - - mod = grub_dl_get (argv[0]); - if (! mod) - return grub_error (GRUB_ERR_BAD_ARGUMENT, "no such module"); - - if (grub_dl_is_persistent (mod)) - return grub_error (GRUB_ERR_BAD_ARGUMENT, "cannot unload persistent module"); - - if (grub_dl_unref (mod) <= 0) - grub_dl_unload (mod); - - return 0; -} - -/* lsmod */ -static grub_err_t -grub_mini_cmd_lsmod (struct grub_command *cmd __attribute__ ((unused)), - int argc __attribute__ ((unused)), - char *argv[] __attribute__ ((unused))) -{ - grub_dl_t mod; - - /* TRANSLATORS: this is module list header. Name - is module name, Ref Count is a reference counter - (how many modules or open descriptors use it). - Dependencies are the other modules it uses. - */ - grub_printf_ (N_("Name\tRef Count\tDependencies\n")); - FOR_DL_MODULES (mod) - { - grub_dl_dep_t dep; - - grub_printf ("%s\t%d\t\t", mod->name, mod->ref_count); - for (dep = mod->dep; dep; dep = dep->next) - { - if (dep != mod->dep) - grub_xputs (","); - - grub_printf ("%s", dep->mod->name); - } - grub_xputs ("\n"); - } - - return 0; -} - -/* exit */ -static grub_err_t __attribute__ ((noreturn)) -grub_mini_cmd_exit (struct grub_command *cmd __attribute__ ((unused)), - int argc __attribute__ ((unused)), - char *argv[] __attribute__ ((unused))) -{ - grub_exit (); - /* Not reached. */ -} - -static grub_command_t cmd_cat, cmd_help; -static grub_command_t cmd_dump, cmd_rmmod, cmd_lsmod, cmd_exit; - -GRUB_MOD_INIT(minicmd) -{ - cmd_cat = - grub_register_command ("cat", grub_mini_cmd_cat, - N_("FILE"), N_("Show the contents of a file.")); - cmd_help = - grub_register_command ("help", grub_mini_cmd_help, - 0, N_("Show this message.")); - cmd_dump = - grub_register_command ("dump", grub_mini_cmd_dump, - N_("ADDR [SIZE]"), N_("Show memory contents.")); - cmd_rmmod = - grub_register_command ("rmmod", grub_mini_cmd_rmmod, - N_("MODULE"), N_("Remove a module.")); - cmd_lsmod = - grub_register_command ("lsmod", grub_mini_cmd_lsmod, - 0, N_("Show loaded modules.")); - cmd_exit = - grub_register_command ("exit", grub_mini_cmd_exit, - 0, N_("Exit from GRUB.")); -} - -GRUB_MOD_FINI(minicmd) -{ - grub_unregister_command (cmd_cat); - grub_unregister_command (cmd_help); - grub_unregister_command (cmd_dump); - grub_unregister_command (cmd_rmmod); - grub_unregister_command (cmd_lsmod); - grub_unregister_command (cmd_exit); -} diff --git a/thirdparty/grub-2.04/grub-core/commands/mips/loongson/lsspd.c b/thirdparty/grub-2.04/grub-core/commands/mips/loongson/lsspd.c deleted file mode 100644 index a88ab87ac..000000000 --- a/thirdparty/grub-2.04/grub-core/commands/mips/loongson/lsspd.c +++ /dev/null @@ -1,103 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2010 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -static grub_err_t -grub_cmd_lsspd (grub_command_t cmd __attribute__ ((unused)), - int argc __attribute__ ((unused)), - char **args __attribute__ ((unused))) -{ - grub_pci_device_t dev; - grub_port_t smbbase; - int i; - grub_err_t err; - - if (!grub_cs5536_find (&dev)) - { - grub_puts_ (N_("No CS5536 found")); - return GRUB_ERR_NONE; - } - grub_printf_ (N_("CS5536 at %d:%d.%d\n"), grub_pci_get_bus (dev), - grub_pci_get_device (dev), grub_pci_get_function (dev)); - - err = grub_cs5536_init_smbus (dev, 0x7fff, &smbbase); - if (err) - return err; - - /* TRANSLATORS: System management bus is often used to access components like - RAM (info only, not data) or batteries. I/O space is where in memory - its ports are. */ - grub_printf_ (N_("System management bus controller I/O space is at 0x%x\n"), - smbbase); - - for (i = GRUB_SMB_RAM_START_ADDR; - i < GRUB_SMB_RAM_START_ADDR + GRUB_SMB_RAM_NUM_MAX; i++) - { - struct grub_smbus_spd spd; - grub_memset (&spd, 0, sizeof (spd)); - /* TRANSLATORS: it's shown in a report in a way - like number 1: ... number 2: ... - */ - grub_printf_ (N_("RAM slot number %d\n"), i); - err = grub_cs5536_read_spd (smbbase, i, &spd); - if (err) - { - grub_print_error (); - continue; - } - grub_printf_ (N_("Written SPD bytes: %d B.\n"), spd.written_size); - grub_printf_ (N_("Total flash size: %d B.\n"), - 1 << spd.log_total_flash_size); - if (spd.memory_type == GRUB_SMBUS_SPD_MEMORY_TYPE_DDR2) - { - char str[sizeof (spd.ddr2.part_number) + 1]; - grub_puts_ (N_("Memory type: DDR2.")); - grub_memcpy (str, spd.ddr2.part_number, - sizeof (spd.ddr2.part_number)); - str[sizeof (spd.ddr2.part_number)] = 0; - grub_printf_ (N_("Part no: %s.\n"), str); - } - else - grub_puts_ (N_("Memory type: Unknown.")); - } - - return GRUB_ERR_NONE; -} - -static grub_command_t cmd; - -GRUB_MOD_INIT(lsspd) -{ - cmd = grub_register_command ("lsspd", grub_cmd_lsspd, 0, - N_("Print Memory information.")); -} - -GRUB_MOD_FINI(lsspd) -{ - grub_unregister_command (cmd); -} diff --git a/thirdparty/grub-2.04/grub-core/commands/nativedisk.c b/thirdparty/grub-2.04/grub-core/commands/nativedisk.c deleted file mode 100644 index 699447d11..000000000 --- a/thirdparty/grub-2.04/grub-core/commands/nativedisk.c +++ /dev/null @@ -1,332 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2013 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -static const char *modnames_def[] = { - /* FIXME: autogenerate this. */ -#if defined (__i386__) || defined (__x86_64__) || defined (GRUB_MACHINE_MIPS_LOONGSON) - "pata", "ahci", "usbms", "ohci", "uhci", "ehci" -#elif defined (GRUB_MACHINE_MIPS_QEMU_MIPS) - "pata" -#else -#error "Fill this" -#endif - }; - -static grub_err_t -get_uuid (const char *name, char **uuid, int getnative) -{ - grub_device_t dev; - grub_fs_t fs = 0; - - *uuid = 0; - - dev = grub_device_open (name); - if (!dev) - return grub_errno; - - if (!dev->disk) - { - grub_dprintf ("nativedisk", "Skipping non-disk\n"); - grub_device_close (dev); - return 0; - } - - switch (dev->disk->dev->id) - { - /* Firmware disks. */ - case GRUB_DISK_DEVICE_BIOSDISK_ID: - case GRUB_DISK_DEVICE_OFDISK_ID: - case GRUB_DISK_DEVICE_OBDISK_ID: - case GRUB_DISK_DEVICE_EFIDISK_ID: - case GRUB_DISK_DEVICE_NAND_ID: - case GRUB_DISK_DEVICE_ARCDISK_ID: - case GRUB_DISK_DEVICE_HOSTDISK_ID: - case GRUB_DISK_DEVICE_UBOOTDISK_ID: - break; - - /* Native disks. */ - case GRUB_DISK_DEVICE_ATA_ID: - case GRUB_DISK_DEVICE_SCSI_ID: - case GRUB_DISK_DEVICE_XEN: - if (getnative) - break; - /* FALLTHROUGH */ - - /* Virtual disks. */ - /* GRUB dynamically generated files. */ - case GRUB_DISK_DEVICE_PROCFS_ID: - /* To access through host OS routines (grub-emu only). */ - case GRUB_DISK_DEVICE_HOST_ID: - /* To access coreboot roms. */ - case GRUB_DISK_DEVICE_CBFSDISK_ID: - /* GRUB-only memdisk. Can't match any of firmware devices. */ - case GRUB_DISK_DEVICE_MEMDISK_ID: - grub_dprintf ("nativedisk", "Skipping native disk %s\n", - dev->disk->name); - grub_device_close (dev); - return 0; - - /* FIXME: those probably need special handling. */ - case GRUB_DISK_DEVICE_LOOPBACK_ID: - case GRUB_DISK_DEVICE_DISKFILTER_ID: - case GRUB_DISK_DEVICE_CRYPTODISK_ID: - break; - } - if (dev) - fs = grub_fs_probe (dev); - if (!fs) - { - grub_device_close (dev); - return grub_errno; - } - if (!fs->fs_uuid || fs->fs_uuid (dev, uuid) || !*uuid) - { - grub_device_close (dev); - - if (!grub_errno) - grub_error (GRUB_ERR_NOT_IMPLEMENTED_YET, - N_("%s does not support UUIDs"), fs->name); - - return grub_errno; - } - grub_device_close (dev); - return GRUB_ERR_NONE; -} - -struct search_ctx -{ - char *root_uuid; - char *prefix_uuid; - const char *prefix_path; - int prefix_found, root_found; -}; - -static int -iterate_device (const char *name, void *data) -{ - struct search_ctx *ctx = data; - char *cur_uuid; - - if (get_uuid (name, &cur_uuid, 1)) - { - if (grub_errno == GRUB_ERR_UNKNOWN_FS) - grub_errno = 0; - grub_print_error (); - return 0; - } - - grub_dprintf ("nativedisk", "checking %s: %s\n", name, - cur_uuid); - if (ctx->prefix_uuid && grub_strcasecmp (cur_uuid, ctx->prefix_uuid) == 0) - { - char *prefix; - prefix = grub_xasprintf ("(%s)/%s", name, ctx->prefix_path); - grub_env_set ("prefix", prefix); - grub_free (prefix); - ctx->prefix_found = 1; - } - if (ctx->root_uuid && grub_strcasecmp (cur_uuid, ctx->root_uuid) == 0) - { - grub_env_set ("root", name); - ctx->root_found = 1; - } - return ctx->prefix_found && ctx->root_found; -} - -static grub_err_t -grub_cmd_nativedisk (grub_command_t cmd __attribute__ ((unused)), - int argc, char **args_in) -{ - char *uuid_root = 0, *uuid_prefix, *prefdev = 0; - const char *prefix = 0; - const char *path_prefix = 0; - int mods_loaded = 0; - grub_dl_t *mods; - const char **args; - int i; - - if (argc == 0) - { - argc = ARRAY_SIZE (modnames_def); - args = modnames_def; - } - else - args = (const char **) args_in; - - prefix = grub_env_get ("prefix"); - - if (! prefix) - return grub_error (GRUB_ERR_FILE_NOT_FOUND, N_("variable `%s' isn't set"), "prefix"); - - if (prefix) - path_prefix = (prefix[0] == '(') ? grub_strchr (prefix, ')') : NULL; - if (path_prefix) - path_prefix++; - else - path_prefix = prefix; - - mods = grub_malloc (argc * sizeof (mods[0])); - if (!mods) - return grub_errno; - - if (get_uuid (NULL, &uuid_root, 0)) - { - grub_free (mods); - return grub_errno; - } - - prefdev = grub_file_get_device_name (prefix); - if (grub_errno) - { - grub_print_error (); - prefdev = 0; - } - - if (get_uuid (prefdev, &uuid_prefix, 0)) - { - grub_free (uuid_root); - grub_free (prefdev); - grub_free (mods); - return grub_errno; - } - - grub_dprintf ("nativedisk", "uuid_prefix = %s, uuid_root = %s\n", - uuid_prefix, uuid_root); - - for (mods_loaded = 0; mods_loaded < argc; mods_loaded++) - { - char *filename; - grub_dl_t mod; - grub_file_t file = NULL; - grub_ssize_t size; - void *core = 0; - - mod = grub_dl_get (args[mods_loaded]); - if (mod) - { - mods[mods_loaded] = 0; - continue; - } - - filename = grub_xasprintf ("%s/" GRUB_TARGET_CPU "-" GRUB_PLATFORM "/%s.mod", - prefix, args[mods_loaded]); - if (! filename) - goto fail; - - file = grub_file_open (filename, - GRUB_FILE_TYPE_GRUB_MODULE); - grub_free (filename); - if (! file) - goto fail; - - size = grub_file_size (file); - core = grub_malloc (size); - if (! core) - { - grub_file_close (file); - goto fail; - } - - if (grub_file_read (file, core, size) != (grub_ssize_t) size) - { - grub_file_close (file); - grub_free (core); - goto fail; - } - - grub_file_close (file); - - mods[mods_loaded] = grub_dl_load_core_noinit (core, size); - if (! mods[mods_loaded]) - goto fail; - } - - for (i = 0; i < argc; i++) - if (mods[i]) - grub_dl_init (mods[i]); - - if (uuid_prefix || uuid_root) - { - struct search_ctx ctx; - grub_fs_autoload_hook_t saved_autoload; - - /* No need to autoload FS since obviously we already have the necessary fs modules. */ - saved_autoload = grub_fs_autoload_hook; - grub_fs_autoload_hook = 0; - - ctx.root_uuid = uuid_root; - ctx.prefix_uuid = uuid_prefix; - ctx.prefix_path = path_prefix; - ctx.prefix_found = !uuid_prefix; - ctx.root_found = !uuid_root; - - /* FIXME: try to guess the correct values. */ - grub_device_iterate (iterate_device, &ctx); - - grub_fs_autoload_hook = saved_autoload; - } - grub_free (uuid_root); - grub_free (uuid_prefix); - grub_free (prefdev); - grub_free (mods); - - return GRUB_ERR_NONE; - - fail: - grub_free (uuid_root); - grub_free (uuid_prefix); - grub_free (prefdev); - - for (i = 0; i < mods_loaded; i++) - if (mods[i]) - { - mods[i]->fini = 0; - grub_dl_unload (mods[i]); - } - grub_free (mods); - - return grub_errno; -} - -static grub_command_t cmd; - -GRUB_MOD_INIT(nativedisk) -{ - cmd = grub_register_command ("nativedisk", grub_cmd_nativedisk, N_("[MODULE1 MODULE2 ...]"), - N_("Switch to native disk drivers. If no modules are specified default set (pata,ahci,usbms,ohci,uhci,ehci) is used")); -} - -GRUB_MOD_FINI(nativedisk) -{ - grub_unregister_command (cmd); -} diff --git a/thirdparty/grub-2.04/grub-core/commands/parttool.c b/thirdparty/grub-2.04/grub-core/commands/parttool.c deleted file mode 100644 index 22b46b187..000000000 --- a/thirdparty/grub-2.04/grub-core/commands/parttool.c +++ /dev/null @@ -1,351 +0,0 @@ -/* parttool.c - common dispatcher and parser for partition operations */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2009 Free Software Foundation, Inc. - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - */ - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv2+"); - -static struct grub_parttool *parts = 0; -static int curhandle = 0; -static grub_dl_t mymod; -static char helpmsg[] = - N_("Perform COMMANDS on partition.\n" - "Use `parttool PARTITION help' for the list " - "of available commands."); - -int -grub_parttool_register(const char *part_name, - const grub_parttool_function_t func, - const struct grub_parttool_argdesc *args) -{ - struct grub_parttool *cur; - int nargs = 0; - - if (! parts) - grub_dl_ref (mymod); - - cur = (struct grub_parttool *) grub_malloc (sizeof (struct grub_parttool)); - cur->next = parts; - cur->name = grub_strdup (part_name); - cur->handle = curhandle++; - for (nargs = 0; args[nargs].name != 0; nargs++); - cur->nargs = nargs; - cur->args = (struct grub_parttool_argdesc *) - grub_malloc ((nargs + 1) * sizeof (struct grub_parttool_argdesc)); - grub_memcpy (cur->args, args, - (nargs + 1) * sizeof (struct grub_parttool_argdesc)); - - cur->func = func; - parts = cur; - return cur->handle; -} - -void -grub_parttool_unregister (int handle) -{ - struct grub_parttool *prev = 0, *cur, *t; - for (cur = parts; cur; ) - if (cur->handle == handle) - { - grub_free (cur->args); - grub_free (cur->name); - if (prev) - prev->next = cur->next; - else - parts = cur->next; - t = cur; - cur = cur->next; - grub_free (t); - } - else - { - prev = cur; - cur = cur->next; - } - if (! parts) - grub_dl_unref (mymod); -} - -static grub_err_t -show_help (grub_device_t dev) -{ - int found = 0; - struct grub_parttool *cur; - - for (cur = parts; cur; cur = cur->next) - if (grub_strcmp (dev->disk->partition->partmap->name, cur->name) == 0) - { - struct grub_parttool_argdesc *curarg; - found = 1; - for (curarg = cur->args; curarg->name; curarg++) - { - int spacing = 20; - - spacing -= grub_strlen (curarg->name); - grub_printf ("%s", curarg->name); - - switch (curarg->type) - { - case GRUB_PARTTOOL_ARG_BOOL: - grub_printf ("+/-"); - spacing -= 3; - break; - - case GRUB_PARTTOOL_ARG_VAL: - grub_xputs (_("=VAL")); - spacing -= 4; - break; - - case GRUB_PARTTOOL_ARG_END: - break; - } - while (spacing-- > 0) - grub_printf (" "); - grub_puts_ (curarg->desc); - } - } - if (! found) - grub_printf_ (N_("Sorry, no parttool is available for %s\n"), - dev->disk->partition->partmap->name); - return GRUB_ERR_NONE; -} - -static grub_err_t -grub_cmd_parttool (grub_command_t cmd __attribute__ ((unused)), - int argc, char **args) -{ - grub_device_t dev; - struct grub_parttool *cur, *ptool; - int *parsed; - int i, j; - grub_err_t err = GRUB_ERR_NONE; - - if (argc < 1) - { - grub_puts_ (helpmsg); - return grub_error (GRUB_ERR_BAD_ARGUMENT, "too few arguments"); - } - - if (args[0][0] == '(' && args[0][grub_strlen (args[0]) - 1] == ')') - { - args[0][grub_strlen (args[0]) - 1] = 0; - dev = grub_device_open (args[0] + 1); - args[0][grub_strlen (args[0]) - 1] = ')'; - } - else - dev = grub_device_open (args[0]); - - if (! dev) - return grub_errno; - - if (! dev->disk) - { - grub_device_close (dev); - return grub_error (GRUB_ERR_BAD_ARGUMENT, "not a disk"); - } - - if (! dev->disk->partition) - { - grub_device_close (dev); - return grub_error (GRUB_ERR_BAD_ARGUMENT, "not a partition"); - } - - /* Load modules. */ - if (! grub_no_modules) - { - const char *prefix; - prefix = grub_env_get ("prefix"); - if (prefix) - { - char *filename; - - filename = grub_xasprintf ("%s/" GRUB_TARGET_CPU "-" GRUB_PLATFORM - "/parttool.lst", prefix); - if (filename) - { - grub_file_t file; - - file = grub_file_open (filename, GRUB_FILE_TYPE_GRUB_MODULE_LIST); - if (file) - { - char *buf = 0; - for (;; grub_free(buf)) - { - char *p, *name; - - buf = grub_file_getline (file); - - if (! buf) - break; - - name = buf; - while (grub_isspace (name[0])) - name++; - - if (! grub_isgraph (name[0])) - continue; - - p = grub_strchr (name, ':'); - if (! p) - continue; - - *p = '\0'; - p++; - while (*p == ' ' || *p == '\t') - p++; - - if (! grub_isgraph (*p)) - continue; - - if (grub_strcmp (name, dev->disk->partition->partmap->name) - != 0) - continue; - - grub_dl_load (p); - } - - grub_file_close (file); - } - - grub_free (filename); - } - } - /* Ignore errors. */ - grub_errno = GRUB_ERR_NONE; - } - - if (argc == 1) - { - err = show_help (dev); - grub_device_close (dev); - return err; - } - - for (i = 1; i < argc; i++) - if (grub_strcmp (args[i], "help") == 0) - { - err = show_help (dev); - grub_device_close (dev); - return err; - } - - parsed = (int *) grub_zalloc (argc * sizeof (int)); - - for (i = 1; i < argc; i++) - if (! parsed[i]) - { - struct grub_parttool_argdesc *curarg; - struct grub_parttool_args *pargs; - for (cur = parts; cur; cur = cur->next) - if (grub_strcmp (dev->disk->partition->partmap->name, cur->name) == 0) - { - for (curarg = cur->args; curarg->name; curarg++) - if (grub_strncmp (curarg->name, args[i], - grub_strlen (curarg->name)) == 0 - && ((curarg->type == GRUB_PARTTOOL_ARG_BOOL - && (args[i][grub_strlen (curarg->name)] == '+' - || args[i][grub_strlen (curarg->name)] == '-' - || args[i][grub_strlen (curarg->name)] == 0)) - || (curarg->type == GRUB_PARTTOOL_ARG_VAL - && args[i][grub_strlen (curarg->name)] == '='))) - - break; - if (curarg->name) - break; - } - if (! cur) - { - grub_free (parsed); - grub_device_close (dev); - return grub_error (GRUB_ERR_BAD_ARGUMENT, N_("unknown argument `%s'"), - args[i]); - } - ptool = cur; - pargs = (struct grub_parttool_args *) - grub_zalloc (ptool->nargs * sizeof (struct grub_parttool_args)); - for (j = i; j < argc; j++) - if (! parsed[j]) - { - for (curarg = ptool->args; curarg->name; curarg++) - if (grub_strncmp (curarg->name, args[j], - grub_strlen (curarg->name)) == 0 - && ((curarg->type == GRUB_PARTTOOL_ARG_BOOL - && (args[j][grub_strlen (curarg->name)] == '+' - || args[j][grub_strlen (curarg->name)] == '-' - || args[j][grub_strlen (curarg->name)] == 0)) - || (curarg->type == GRUB_PARTTOOL_ARG_VAL - && args[j][grub_strlen (curarg->name)] == '='))) - { - parsed[j] = 1; - pargs[curarg - ptool->args].set = 1; - switch (curarg->type) - { - case GRUB_PARTTOOL_ARG_BOOL: - pargs[curarg - ptool->args].bool - = (args[j][grub_strlen (curarg->name)] != '-'); - break; - - case GRUB_PARTTOOL_ARG_VAL: - pargs[curarg - ptool->args].str - = (args[j] + grub_strlen (curarg->name) + 1); - break; - - case GRUB_PARTTOOL_ARG_END: - break; - } - } - } - - err = ptool->func (dev, pargs); - grub_free (pargs); - if (err) - break; - } - - grub_free (parsed); - grub_device_close (dev); - return err; -} - -static grub_command_t cmd; - -GRUB_MOD_INIT(parttool) -{ - mymod = mod; - cmd = grub_register_command ("parttool", grub_cmd_parttool, - N_("PARTITION COMMANDS"), - helpmsg); -} - -GRUB_MOD_FINI(parttool) -{ - grub_unregister_command (cmd); -} diff --git a/thirdparty/grub-2.04/grub-core/commands/password.c b/thirdparty/grub-2.04/grub-core/commands/password.c deleted file mode 100644 index 6d42c9b02..000000000 --- a/thirdparty/grub-2.04/grub-core/commands/password.c +++ /dev/null @@ -1,93 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -static grub_dl_t my_mod; - -static grub_err_t -check_password (const char *user, const char *entered, - void *password) -{ - if (grub_crypto_memcmp (entered, password, GRUB_AUTH_MAX_PASSLEN) != 0) - return GRUB_ACCESS_DENIED; - - grub_auth_authenticate (user); - - return GRUB_ERR_NONE; -} - -grub_err_t -grub_normal_set_password (const char *user, const char *password) -{ - grub_err_t err; - char *pass; - int copylen; - - pass = grub_zalloc (GRUB_AUTH_MAX_PASSLEN); - if (!pass) - return grub_errno; - copylen = grub_strlen (password); - if (copylen >= GRUB_AUTH_MAX_PASSLEN) - copylen = GRUB_AUTH_MAX_PASSLEN - 1; - grub_memcpy (pass, password, copylen); - - err = grub_auth_register_authentication (user, check_password, pass); - if (err) - { - grub_free (pass); - return err; - } - grub_dl_ref (my_mod); - return GRUB_ERR_NONE; -} - -static grub_err_t -grub_cmd_password (grub_command_t cmd __attribute__ ((unused)), - int argc, char **args) -{ - if (argc != 2) - return grub_error (GRUB_ERR_BAD_ARGUMENT, N_("two arguments expected")); - return grub_normal_set_password (args[0], args[1]); -} - -static grub_command_t cmd; - -GRUB_MOD_INIT(password) -{ - my_mod = mod; - cmd = grub_register_command ("password", grub_cmd_password, - N_("USER PASSWORD"), - N_("Set user password (plaintext). " - "Unrecommended and insecure.")); -} - -GRUB_MOD_FINI(password) -{ - grub_unregister_command (cmd); -} diff --git a/thirdparty/grub-2.04/grub-core/commands/password_pbkdf2.c b/thirdparty/grub-2.04/grub-core/commands/password_pbkdf2.c deleted file mode 100644 index da636e621..000000000 --- a/thirdparty/grub-2.04/grub-core/commands/password_pbkdf2.c +++ /dev/null @@ -1,209 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -static grub_dl_t my_mod; - -struct pbkdf2_password -{ - grub_uint8_t *salt; - grub_size_t saltlen; - unsigned int c; - grub_uint8_t *expected; - grub_size_t buflen; -}; - -static grub_err_t -check_password (const char *user, const char *entered, void *pin) -{ - grub_uint8_t *buf; - struct pbkdf2_password *pass = pin; - gcry_err_code_t err; - grub_err_t ret; - - buf = grub_malloc (pass->buflen); - if (!buf) - return grub_crypto_gcry_error (GPG_ERR_OUT_OF_MEMORY); - - err = grub_crypto_pbkdf2 (GRUB_MD_SHA512, (grub_uint8_t *) entered, - grub_strlen (entered), - pass->salt, pass->saltlen, pass->c, - buf, pass->buflen); - if (err) - ret = grub_crypto_gcry_error (err); - else if (grub_crypto_memcmp (buf, pass->expected, pass->buflen) != 0) - ret = GRUB_ACCESS_DENIED; - else - { - grub_auth_authenticate (user); - ret = GRUB_ERR_NONE; - } - - grub_free (buf); - return ret; -} - -static inline int -hex2val (char hex) -{ - if ('0' <= hex && hex <= '9') - return hex - '0'; - if ('a' <= hex && hex <= 'f') - return hex - 'a' + 10; - if ('A' <= hex && hex <= 'F') - return hex - 'A' + 10; - return -1; -} - -static grub_err_t -grub_cmd_password (grub_command_t cmd __attribute__ ((unused)), - int argc, char **args) -{ - grub_err_t err; - char *ptr, *ptr2; - grub_uint8_t *ptro; - struct pbkdf2_password *pass; - - if (argc != 2) - return grub_error (GRUB_ERR_BAD_ARGUMENT, N_("two arguments expected")); - - if (grub_memcmp (args[1], "grub.pbkdf2.sha512.", - sizeof ("grub.pbkdf2.sha512.") - 1) != 0) - return grub_error (GRUB_ERR_BAD_ARGUMENT, N_("invalid PBKDF2 password")); - - ptr = args[1] + sizeof ("grub.pbkdf2.sha512.") - 1; - - pass = grub_malloc (sizeof (*pass)); - if (!pass) - return grub_errno; - - pass->c = grub_strtoul (ptr, &ptr, 0); - if (grub_errno) - { - grub_free (pass); - return grub_errno; - } - if (*ptr != '.') - { - grub_free (pass); - return grub_error (GRUB_ERR_BAD_ARGUMENT, N_("invalid PBKDF2 password")); - } - ptr++; - - ptr2 = grub_strchr (ptr, '.'); - if (!ptr2 || ((ptr2 - ptr) & 1) || grub_strlen (ptr2 + 1) & 1) - { - grub_free (pass); - return grub_error (GRUB_ERR_BAD_ARGUMENT, N_("invalid PBKDF2 password")); - } - - pass->saltlen = (ptr2 - ptr) >> 1; - pass->buflen = grub_strlen (ptr2 + 1) >> 1; - ptro = pass->salt = grub_malloc (pass->saltlen); - if (!ptro) - { - grub_free (pass); - return grub_errno; - } - while (ptr < ptr2) - { - int hex1, hex2; - hex1 = hex2val (*ptr); - ptr++; - hex2 = hex2val (*ptr); - ptr++; - if (hex1 < 0 || hex2 < 0) - { - grub_free (pass->salt); - grub_free (pass); - return grub_error (GRUB_ERR_BAD_ARGUMENT, - /* TRANSLATORS: it means that the string which - was supposed to be a password hash doesn't - have a correct format, not to password - mismatch. */ - N_("invalid PBKDF2 password")); - } - - *ptro = (hex1 << 4) | hex2; - ptro++; - } - - ptro = pass->expected = grub_malloc (pass->buflen); - if (!ptro) - { - grub_free (pass->salt); - grub_free (pass); - return grub_errno; - } - ptr = ptr2 + 1; - ptr2 += grub_strlen (ptr2); - while (ptr < ptr2) - { - int hex1, hex2; - hex1 = hex2val (*ptr); - ptr++; - hex2 = hex2val (*ptr); - ptr++; - if (hex1 < 0 || hex2 < 0) - { - grub_free (pass->expected); - grub_free (pass->salt); - grub_free (pass); - return grub_error (GRUB_ERR_BAD_ARGUMENT, - N_("invalid PBKDF2 password")); - } - - *ptro = (hex1 << 4) | hex2; - ptro++; - } - - err = grub_auth_register_authentication (args[0], check_password, pass); - if (err) - { - grub_free (pass); - return err; - } - grub_dl_ref (my_mod); - return GRUB_ERR_NONE; -} - -static grub_command_t cmd; - -GRUB_MOD_INIT(password_pbkdf2) -{ - my_mod = mod; - cmd = grub_register_command ("password_pbkdf2", grub_cmd_password, - N_("USER PBKDF2_PASSWORD"), - N_("Set user password (PBKDF2). ")); -} - -GRUB_MOD_FINI(password_pbkdf2) -{ - grub_unregister_command (cmd); -} diff --git a/thirdparty/grub-2.04/grub-core/commands/pcidump.c b/thirdparty/grub-2.04/grub-core/commands/pcidump.c deleted file mode 100644 index f99ad4a21..000000000 --- a/thirdparty/grub-2.04/grub-core/commands/pcidump.c +++ /dev/null @@ -1,175 +0,0 @@ -/* lspci.c - List PCI devices. */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2013 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -struct iter_cxt -{ - grub_uint32_t pciid_check_mask, pciid_check_value; - int bus, device, function; - int check_bus, check_device, check_function; -}; - -static const struct grub_arg_option options[] = - { - {0, 'd', 0, N_("Select device by vendor and device IDs."), - N_("[vendor]:[device]"), ARG_TYPE_STRING}, - {0, 's', 0, N_("Select device by its position on the bus."), - N_("[bus]:[slot][.func]"), ARG_TYPE_STRING}, - {0, 0, 0, 0, 0, 0} - }; - -static int -grub_pcidump_iter (grub_pci_device_t dev, grub_pci_id_t pciid, - void *data) -{ - struct iter_cxt *ctx = data; - grub_pci_address_t addr; - int i; - - if ((pciid & ctx->pciid_check_mask) != ctx->pciid_check_value) - return 0; - - if (ctx->check_bus && grub_pci_get_bus (dev) != ctx->bus) - return 0; - - if (ctx->check_device && grub_pci_get_device (dev) != ctx->device) - return 0; - - if (ctx->check_function && grub_pci_get_function (dev) != ctx->function) - return 0; - - for (i = 0; i < 256; i += 4) - { - addr = grub_pci_make_address (dev, i); - grub_printf ("%08x ", grub_pci_read (addr)); - if ((i & 0xc) == 0xc) - grub_printf ("\n"); - } - - return 0; -} - -static grub_err_t -grub_cmd_pcidump (grub_extcmd_context_t ctxt, - int argc __attribute__ ((unused)), - char **argv __attribute__ ((unused))) -{ - const char *ptr; - struct iter_cxt ctx = - { - .pciid_check_value = 0, - .pciid_check_mask = 0, - .check_bus = 0, - .check_device = 0, - .check_function = 0, - .bus = 0, - .function = 0, - .device = 0 - }; - - if (ctxt->state[0].set) - { - ptr = ctxt->state[0].arg; - ctx.pciid_check_value |= (grub_strtoul (ptr, (char **) &ptr, 16) & 0xffff); - if (grub_errno == GRUB_ERR_BAD_NUMBER) - { - grub_errno = GRUB_ERR_NONE; - ptr = ctxt->state[0].arg; - } - else - ctx.pciid_check_mask |= 0xffff; - if (grub_errno) - return grub_errno; - if (*ptr != ':') - return grub_error (GRUB_ERR_BAD_ARGUMENT, N_("missing `%c' symbol"), ':'); - ptr++; - ctx.pciid_check_value |= (grub_strtoul (ptr, (char **) &ptr, 16) & 0xffff) - << 16; - if (grub_errno == GRUB_ERR_BAD_NUMBER) - grub_errno = GRUB_ERR_NONE; - else - ctx.pciid_check_mask |= 0xffff0000; - } - - ctx.pciid_check_value &= ctx.pciid_check_mask; - - if (ctxt->state[1].set) - { - const char *optr; - - ptr = ctxt->state[1].arg; - optr = ptr; - ctx.bus = grub_strtoul (ptr, (char **) &ptr, 16); - if (grub_errno == GRUB_ERR_BAD_NUMBER) - { - grub_errno = GRUB_ERR_NONE; - ptr = optr; - } - else - ctx.check_bus = 1; - if (grub_errno) - return grub_errno; - if (*ptr != ':') - return grub_error (GRUB_ERR_BAD_ARGUMENT, N_("missing `%c' symbol"), ':'); - ptr++; - optr = ptr; - ctx.device = grub_strtoul (ptr, (char **) &ptr, 16); - if (grub_errno == GRUB_ERR_BAD_NUMBER) - { - grub_errno = GRUB_ERR_NONE; - ptr = optr; - } - else - ctx.check_device = 1; - if (*ptr == '.') - { - ptr++; - ctx.function = grub_strtoul (ptr, (char **) &ptr, 16); - if (grub_errno) - return grub_errno; - ctx.check_function = 1; - } - } - - grub_pci_iterate (grub_pcidump_iter, &ctx); - return GRUB_ERR_NONE; -} - -static grub_extcmd_t cmd; - -GRUB_MOD_INIT(pcidump) -{ - cmd = grub_register_extcmd ("pcidump", grub_cmd_pcidump, 0, - N_("[-s POSITION] [-d DEVICE]"), - N_("Show raw dump of the PCI configuration space."), options); -} - -GRUB_MOD_FINI(pcidump) -{ - grub_unregister_extcmd (cmd); -} diff --git a/thirdparty/grub-2.04/grub-core/commands/pgp.c b/thirdparty/grub-2.04/grub-core/commands/pgp.c deleted file mode 100644 index bbf6871fe..000000000 --- a/thirdparty/grub-2.04/grub-core/commands/pgp.c +++ /dev/null @@ -1,1018 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2013 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -enum - { - OPTION_SKIP_SIG = 0 - }; - -static const struct grub_arg_option options[] = - { - {"skip-sig", 's', 0, - N_("Skip signature-checking of the public key file."), 0, ARG_TYPE_NONE}, - {0, 0, 0, 0, 0, 0} - }; - -static grub_err_t -read_packet_header (grub_file_t sig, grub_uint8_t *out_type, grub_size_t *len) -{ - grub_uint8_t type; - grub_uint8_t l; - grub_uint16_t l16; - grub_uint32_t l32; - - /* New format. */ - switch (grub_file_read (sig, &type, sizeof (type))) - { - case 1: - break; - case 0: - { - *out_type = 0xff; - return 0; - } - default: - if (grub_errno) - return grub_errno; - /* TRANSLATORS: it's about GNUPG signatures. */ - return grub_error (GRUB_ERR_BAD_SIGNATURE, N_("bad signature")); - } - - if (type == 0) - { - *out_type = 0xfe; - return 0; - } - - if (!(type & 0x80)) - return grub_error (GRUB_ERR_BAD_SIGNATURE, N_("bad signature")); - if (type & 0x40) - { - *out_type = (type & 0x3f); - if (grub_file_read (sig, &l, sizeof (l)) != 1) - return grub_error (GRUB_ERR_BAD_SIGNATURE, N_("bad signature")); - if (l < 192) - { - *len = l; - return 0; - } - if (l < 224) - { - *len = (l - 192) << GRUB_CHAR_BIT; - if (grub_file_read (sig, &l, sizeof (l)) != 1) - return grub_error (GRUB_ERR_BAD_SIGNATURE, N_("bad signature")); - *len |= l; - return 0; - } - if (l == 255) - { - if (grub_file_read (sig, &l32, sizeof (l32)) != sizeof (l32)) - return grub_error (GRUB_ERR_BAD_SIGNATURE, N_("bad signature")); - *len = grub_be_to_cpu32 (l32); - return 0; - } - return grub_error (GRUB_ERR_BAD_SIGNATURE, N_("bad signature")); - } - *out_type = ((type >> 2) & 0xf); - switch (type & 0x3) - { - case 0: - if (grub_file_read (sig, &l, sizeof (l)) != sizeof (l)) - return grub_error (GRUB_ERR_BAD_SIGNATURE, N_("bad signature")); - *len = l; - return 0; - case 1: - if (grub_file_read (sig, &l16, sizeof (l16)) != sizeof (l16)) - return grub_error (GRUB_ERR_BAD_SIGNATURE, N_("bad signature")); - *len = grub_be_to_cpu16 (l16); - return 0; - case 2: - if (grub_file_read (sig, &l32, sizeof (l32)) != sizeof (l32)) - return grub_error (GRUB_ERR_BAD_SIGNATURE, N_("bad signature")); - *len = grub_be_to_cpu32 (l32); - return 0; - } - return grub_error (GRUB_ERR_BAD_SIGNATURE, N_("bad signature")); -} - -struct signature_v4_header -{ - grub_uint8_t type; - grub_uint8_t pkeyalgo; - grub_uint8_t hash; - grub_uint16_t hashed_sub; -} GRUB_PACKED; - -const char *hashes[] = { - [0x01] = "md5", - [0x02] = "sha1", - [0x03] = "ripemd160", - [0x08] = "sha256", - [0x09] = "sha384", - [0x0a] = "sha512", - [0x0b] = "sha224" -}; - -struct gcry_pk_spec *grub_crypto_pk_dsa; -struct gcry_pk_spec *grub_crypto_pk_ecdsa; -struct gcry_pk_spec *grub_crypto_pk_rsa; - -static int -dsa_pad (gcry_mpi_t *hmpi, grub_uint8_t *hval, - const gcry_md_spec_t *hash, struct grub_public_subkey *sk); -static int -rsa_pad (gcry_mpi_t *hmpi, grub_uint8_t *hval, - const gcry_md_spec_t *hash, struct grub_public_subkey *sk); - -struct -{ - const char *name; - grub_size_t nmpisig; - grub_size_t nmpipub; - struct gcry_pk_spec **algo; - int (*pad) (gcry_mpi_t *hmpi, grub_uint8_t *hval, - const gcry_md_spec_t *hash, struct grub_public_subkey *sk); - const char *module; -} pkalgos[] = - { - [1] = { "rsa", 1, 2, &grub_crypto_pk_rsa, rsa_pad, "gcry_rsa" }, - [3] = { "rsa", 1, 2, &grub_crypto_pk_rsa, rsa_pad, "gcry_rsa" }, - [17] = { "dsa", 2, 4, &grub_crypto_pk_dsa, dsa_pad, "gcry_dsa" }, - }; - -struct grub_public_key -{ - struct grub_public_key *next; - struct grub_public_subkey *subkeys; -}; - -struct grub_public_subkey -{ - struct grub_public_subkey *next; - grub_uint8_t type; - grub_uint32_t fingerprint[5]; - gcry_mpi_t mpis[10]; -}; - -static void -free_pk (struct grub_public_key *pk) -{ - struct grub_public_subkey *nsk, *sk; - for (sk = pk->subkeys; sk; sk = nsk) - { - grub_size_t i; - for (i = 0; i < ARRAY_SIZE (sk->mpis); i++) - if (sk->mpis[i]) - gcry_mpi_release (sk->mpis[i]); - nsk = sk->next; - grub_free (sk); - } - grub_free (pk); -} - -#define READBUF_SIZE 4096 - -struct grub_public_key * -grub_load_public_key (grub_file_t f) -{ - grub_err_t err; - struct grub_public_key *ret; - struct grub_public_subkey **last = 0; - void *fingerprint_context = NULL; - grub_uint8_t *buffer = NULL; - - ret = grub_zalloc (sizeof (*ret)); - if (!ret) - { - grub_free (fingerprint_context); - return NULL; - } - - buffer = grub_zalloc (READBUF_SIZE); - fingerprint_context = grub_zalloc (GRUB_MD_SHA1->contextsize); - - if (!buffer || !fingerprint_context) - goto fail; - - last = &ret->subkeys; - - while (1) - { - grub_uint8_t type; - grub_size_t len; - grub_uint8_t v, pk; - grub_uint32_t creation_time; - grub_off_t pend; - struct grub_public_subkey *sk; - grub_size_t i; - grub_uint16_t len_be; - - err = read_packet_header (f, &type, &len); - - if (err) - goto fail; - if (type == 0xfe) - continue; - if (type == 0xff) - { - grub_free (fingerprint_context); - grub_free (buffer); - return ret; - } - - grub_dprintf ("crypt", "len = %x\n", (int) len); - - pend = grub_file_tell (f) + len; - if (type != 6 && type != 14 - && type != 5 && type != 7) - { - grub_file_seek (f, pend); - continue; - } - - if (grub_file_read (f, &v, sizeof (v)) != sizeof (v)) - { - grub_error (GRUB_ERR_BAD_SIGNATURE, N_("bad signature")); - goto fail; - } - - grub_dprintf ("crypt", "v = %x\n", v); - - if (v != 4) - { - grub_error (GRUB_ERR_BAD_SIGNATURE, N_("bad signature")); - goto fail; - } - if (grub_file_read (f, &creation_time, sizeof (creation_time)) != sizeof (creation_time)) - { - grub_error (GRUB_ERR_BAD_SIGNATURE, N_("bad signature")); - goto fail; - } - - grub_dprintf ("crypt", "time = %x\n", creation_time); - - if (grub_file_read (f, &pk, sizeof (pk)) != sizeof (pk)) - { - grub_error (GRUB_ERR_BAD_SIGNATURE, N_("bad signature")); - goto fail; - } - - grub_dprintf ("crypt", "pk = %x\n", pk); - - if (pk >= ARRAY_SIZE (pkalgos) || pkalgos[pk].name == NULL) - { - grub_file_seek (f, pend); - continue; - } - - sk = grub_zalloc (sizeof (struct grub_public_subkey)); - if (!sk) - goto fail; - - grub_memset (fingerprint_context, 0, GRUB_MD_SHA1->contextsize); - GRUB_MD_SHA1->init (fingerprint_context); - GRUB_MD_SHA1->write (fingerprint_context, "\x99", 1); - len_be = grub_cpu_to_be16 (len); - GRUB_MD_SHA1->write (fingerprint_context, &len_be, sizeof (len_be)); - GRUB_MD_SHA1->write (fingerprint_context, &v, sizeof (v)); - GRUB_MD_SHA1->write (fingerprint_context, &creation_time, sizeof (creation_time)); - GRUB_MD_SHA1->write (fingerprint_context, &pk, sizeof (pk)); - - for (i = 0; i < pkalgos[pk].nmpipub; i++) - { - grub_uint16_t l; - grub_size_t lb; - if (grub_file_read (f, &l, sizeof (l)) != sizeof (l)) - { - grub_error (GRUB_ERR_BAD_SIGNATURE, N_("bad signature")); - break; - } - - lb = (grub_be_to_cpu16 (l) + GRUB_CHAR_BIT - 1) / GRUB_CHAR_BIT; - if (lb > READBUF_SIZE - sizeof (grub_uint16_t)) - { - grub_error (GRUB_ERR_BAD_SIGNATURE, N_("bad signature")); - break; - } - if (grub_file_read (f, buffer + sizeof (grub_uint16_t), lb) != (grub_ssize_t) lb) - { - grub_error (GRUB_ERR_BAD_SIGNATURE, N_("bad signature")); - break; - } - grub_memcpy (buffer, &l, sizeof (l)); - - GRUB_MD_SHA1->write (fingerprint_context, buffer, lb + sizeof (grub_uint16_t)); - - if (gcry_mpi_scan (&sk->mpis[i], GCRYMPI_FMT_PGP, - buffer, lb + sizeof (grub_uint16_t), 0)) - { - grub_error (GRUB_ERR_BAD_SIGNATURE, N_("bad signature")); - break; - } - } - - if (i < pkalgos[pk].nmpipub) - { - grub_free (sk); - goto fail; - } - - GRUB_MD_SHA1->final (fingerprint_context); - - grub_memcpy (sk->fingerprint, GRUB_MD_SHA1->read (fingerprint_context), 20); - - *last = sk; - last = &sk->next; - - grub_dprintf ("crypt", "actual pos: %x, expected: %x\n", (int)grub_file_tell (f), (int)pend); - - grub_file_seek (f, pend); - } - fail: - free_pk (ret); - grub_free (fingerprint_context); - grub_free (buffer); - return NULL; -} - -struct grub_public_key *grub_pk_trusted; - -struct grub_public_subkey * -grub_crypto_pk_locate_subkey (grub_uint64_t keyid, struct grub_public_key *pkey) -{ - struct grub_public_subkey *sk; - for (sk = pkey->subkeys; sk; sk = sk->next) - if (grub_memcmp (sk->fingerprint + 3, &keyid, 8) == 0) - return sk; - return 0; -} - -struct grub_public_subkey * -grub_crypto_pk_locate_subkey_in_trustdb (grub_uint64_t keyid) -{ - struct grub_public_key *pkey; - struct grub_public_subkey *sk; - for (pkey = grub_pk_trusted; pkey; pkey = pkey->next) - { - sk = grub_crypto_pk_locate_subkey (keyid, pkey); - if (sk) - return sk; - } - return 0; -} - - -static int -dsa_pad (gcry_mpi_t *hmpi, grub_uint8_t *hval, - const gcry_md_spec_t *hash, struct grub_public_subkey *sk) -{ - unsigned nbits = gcry_mpi_get_nbits (sk->mpis[1]); - grub_dprintf ("crypt", "must be %u bits got %d bits\n", nbits, - (int)(8 * hash->mdlen)); - return gcry_mpi_scan (hmpi, GCRYMPI_FMT_USG, hval, - nbits / 8 < (unsigned) hash->mdlen ? nbits / 8 - : (unsigned) hash->mdlen, 0); -} - -static int -rsa_pad (gcry_mpi_t *hmpi, grub_uint8_t *hval, - const gcry_md_spec_t *hash, struct grub_public_subkey *sk) -{ - grub_size_t tlen, emlen, fflen; - grub_uint8_t *em, *emptr; - unsigned nbits = gcry_mpi_get_nbits (sk->mpis[0]); - int ret; - tlen = hash->mdlen + hash->asnlen; - emlen = (nbits + 7) / 8; - if (emlen < tlen + 11) - return 1; - - em = grub_malloc (emlen); - if (!em) - return 1; - - em[0] = 0x00; - em[1] = 0x01; - fflen = emlen - tlen - 3; - for (emptr = em + 2; emptr < em + 2 + fflen; emptr++) - *emptr = 0xff; - *emptr++ = 0x00; - grub_memcpy (emptr, hash->asnoid, hash->asnlen); - emptr += hash->asnlen; - grub_memcpy (emptr, hval, hash->mdlen); - - ret = gcry_mpi_scan (hmpi, GCRYMPI_FMT_USG, em, emlen, 0); - grub_free (em); - return ret; -} - -struct grub_pubkey_context -{ - grub_file_t sig; - struct signature_v4_header v4; - grub_uint8_t v; - const gcry_md_spec_t *hash; - void *hash_context; -}; - -static grub_err_t -grub_verify_signature_init (struct grub_pubkey_context *ctxt, grub_file_t sig) -{ - grub_size_t len; - grub_uint8_t h; - grub_uint8_t t; - grub_uint8_t pk; - grub_err_t err; - grub_uint8_t type = 0; - - grub_memset (ctxt, 0, sizeof (*ctxt)); - - err = read_packet_header (sig, &type, &len); - if (err) - return err; - - if (type != 0x2) - return grub_error (GRUB_ERR_BAD_SIGNATURE, N_("bad signature")); - - if (grub_file_read (sig, &ctxt->v, sizeof (ctxt->v)) != sizeof (ctxt->v)) - return grub_error (GRUB_ERR_BAD_SIGNATURE, N_("bad signature")); - - if (ctxt->v != 4) - return grub_error (GRUB_ERR_BAD_SIGNATURE, N_("bad signature")); - - if (grub_file_read (sig, &ctxt->v4, sizeof (ctxt->v4)) != sizeof (ctxt->v4)) - return grub_error (GRUB_ERR_BAD_SIGNATURE, N_("bad signature")); - - h = ctxt->v4.hash; - t = ctxt->v4.type; - pk = ctxt->v4.pkeyalgo; - - if (t != 0) - return grub_error (GRUB_ERR_BAD_SIGNATURE, N_("bad signature")); - - if (h >= ARRAY_SIZE (hashes) || hashes[h] == NULL) - return grub_error (GRUB_ERR_BAD_SIGNATURE, "unknown hash"); - - if (pk >= ARRAY_SIZE (pkalgos) || pkalgos[pk].name == NULL) - return grub_error (GRUB_ERR_BAD_SIGNATURE, N_("bad signature")); - - ctxt->hash = grub_crypto_lookup_md_by_name (hashes[h]); - if (!ctxt->hash) - return grub_error (GRUB_ERR_BAD_SIGNATURE, "hash `%s' not loaded", hashes[h]); - - grub_dprintf ("crypt", "alive\n"); - - ctxt->hash_context = grub_zalloc (ctxt->hash->contextsize); - if (!ctxt->hash_context) - return grub_errno; - - ctxt->hash->init (ctxt->hash_context); - ctxt->sig = sig; - - return GRUB_ERR_NONE; -} - -static grub_err_t -grub_pubkey_write (void *ctxt_, void *buf, grub_size_t size) -{ - struct grub_pubkey_context *ctxt = ctxt_; - ctxt->hash->write (ctxt->hash_context, buf, size); - return GRUB_ERR_NONE; -} - -static grub_err_t -grub_verify_signature_real (struct grub_pubkey_context *ctxt, - struct grub_public_key *pkey) -{ - gcry_mpi_t mpis[10]; - grub_uint8_t pk = ctxt->v4.pkeyalgo; - grub_size_t i; - grub_uint8_t *readbuf = NULL; - unsigned char *hval; - grub_ssize_t rem = grub_be_to_cpu16 (ctxt->v4.hashed_sub); - grub_uint32_t headlen = grub_cpu_to_be32 (rem + 6); - grub_uint8_t s; - grub_uint16_t unhashed_sub; - grub_ssize_t r; - grub_uint8_t hash_start[2]; - gcry_mpi_t hmpi; - grub_uint64_t keyid = 0; - struct grub_public_subkey *sk; - - readbuf = grub_malloc (READBUF_SIZE); - if (!readbuf) - goto fail; - - ctxt->hash->write (ctxt->hash_context, &ctxt->v, sizeof (ctxt->v)); - ctxt->hash->write (ctxt->hash_context, &ctxt->v4, sizeof (ctxt->v4)); - while (rem) - { - r = grub_file_read (ctxt->sig, readbuf, - rem < READBUF_SIZE ? rem : READBUF_SIZE); - if (r < 0) - goto fail; - if (r == 0) - break; - ctxt->hash->write (ctxt->hash_context, readbuf, r); - rem -= r; - } - ctxt->hash->write (ctxt->hash_context, &ctxt->v, sizeof (ctxt->v)); - s = 0xff; - ctxt->hash->write (ctxt->hash_context, &s, sizeof (s)); - ctxt->hash->write (ctxt->hash_context, &headlen, sizeof (headlen)); - r = grub_file_read (ctxt->sig, &unhashed_sub, sizeof (unhashed_sub)); - if (r != sizeof (unhashed_sub)) - goto fail; - { - grub_uint8_t *ptr; - grub_uint32_t l; - rem = grub_be_to_cpu16 (unhashed_sub); - if (rem > READBUF_SIZE) - goto fail; - r = grub_file_read (ctxt->sig, readbuf, rem); - if (r != rem) - goto fail; - for (ptr = readbuf; ptr < readbuf + rem; ptr += l) - { - if (*ptr < 192) - l = *ptr++; - else if (*ptr < 255) - { - if (ptr + 1 >= readbuf + rem) - break; - l = (((ptr[0] & ~192) << GRUB_CHAR_BIT) | ptr[1]) + 192; - ptr += 2; - } - else - { - if (ptr + 5 >= readbuf + rem) - break; - l = grub_be_to_cpu32 (grub_get_unaligned32 (ptr + 1)); - ptr += 5; - } - if (*ptr == 0x10 && l >= 8) - keyid = grub_get_unaligned64 (ptr + 1); - } - } - - ctxt->hash->final (ctxt->hash_context); - - grub_dprintf ("crypt", "alive\n"); - - hval = ctxt->hash->read (ctxt->hash_context); - - if (grub_file_read (ctxt->sig, hash_start, sizeof (hash_start)) != sizeof (hash_start)) - goto fail; - if (grub_memcmp (hval, hash_start, sizeof (hash_start)) != 0) - goto fail; - - grub_dprintf ("crypt", "@ %x\n", (int)grub_file_tell (ctxt->sig)); - - for (i = 0; i < pkalgos[pk].nmpisig; i++) - { - grub_uint16_t l; - grub_size_t lb; - grub_dprintf ("crypt", "alive\n"); - if (grub_file_read (ctxt->sig, &l, sizeof (l)) != sizeof (l)) - goto fail; - grub_dprintf ("crypt", "alive\n"); - lb = (grub_be_to_cpu16 (l) + 7) / 8; - grub_dprintf ("crypt", "l = 0x%04x\n", grub_be_to_cpu16 (l)); - if (lb > READBUF_SIZE - sizeof (grub_uint16_t)) - goto fail; - grub_dprintf ("crypt", "alive\n"); - if (grub_file_read (ctxt->sig, readbuf + sizeof (grub_uint16_t), lb) != (grub_ssize_t) lb) - goto fail; - grub_dprintf ("crypt", "alive\n"); - grub_memcpy (readbuf, &l, sizeof (l)); - grub_dprintf ("crypt", "alive\n"); - - if (gcry_mpi_scan (&mpis[i], GCRYMPI_FMT_PGP, - readbuf, lb + sizeof (grub_uint16_t), 0)) - goto fail; - grub_dprintf ("crypt", "alive\n"); - } - - if (pkey) - sk = grub_crypto_pk_locate_subkey (keyid, pkey); - else - sk = grub_crypto_pk_locate_subkey_in_trustdb (keyid); - if (!sk) - { - /* TRANSLATORS: %08x is 32-bit key id. */ - grub_error (GRUB_ERR_BAD_SIGNATURE, N_("public key %08x not found"), - keyid); - goto fail; - } - - if (pkalgos[pk].pad (&hmpi, hval, ctxt->hash, sk)) - goto fail; - if (!*pkalgos[pk].algo) - { - grub_dl_load (pkalgos[pk].module); - grub_errno = GRUB_ERR_NONE; - } - - if (!*pkalgos[pk].algo) - { - grub_error (GRUB_ERR_BAD_SIGNATURE, N_("module `%s' isn't loaded"), - pkalgos[pk].module); - goto fail; - } - if ((*pkalgos[pk].algo)->verify (0, hmpi, mpis, sk->mpis, 0, 0)) - goto fail; - - grub_free (readbuf); - - return GRUB_ERR_NONE; - - fail: - grub_free (readbuf); - if (!grub_errno) - return grub_error (GRUB_ERR_BAD_SIGNATURE, N_("bad signature")); - return grub_errno; -} - -static void -grub_pubkey_close_real (struct grub_pubkey_context *ctxt) -{ - if (ctxt->sig) - grub_file_close (ctxt->sig); - if (ctxt->hash_context) - grub_free (ctxt->hash_context); -} - -static void -grub_pubkey_close (void *ctxt) -{ - grub_pubkey_close_real (ctxt); - grub_free (ctxt); -} - -grub_err_t -grub_verify_signature (grub_file_t f, const char *fsig, - struct grub_public_key *pkey) -{ - grub_file_t sig; - grub_err_t err; - struct grub_pubkey_context ctxt; - grub_uint8_t *readbuf = NULL; - - sig = grub_file_open (fsig, - GRUB_FILE_TYPE_SIGNATURE - | GRUB_FILE_TYPE_NO_DECOMPRESS); - if (!sig) - return grub_errno; - - err = grub_verify_signature_init (&ctxt, sig); - if (err) - { - grub_file_close (sig); - return err; - } - - readbuf = grub_zalloc (READBUF_SIZE); - if (!readbuf) - goto fail; - - while (1) - { - grub_ssize_t r; - r = grub_file_read (f, readbuf, READBUF_SIZE); - if (r < 0) - goto fail; - if (r == 0) - break; - err = grub_pubkey_write (&ctxt, readbuf, r); - if (err) - return err; - } - - grub_verify_signature_real (&ctxt, pkey); - fail: - grub_pubkey_close_real (&ctxt); - return grub_errno; -} - -static grub_err_t -grub_cmd_trust (grub_extcmd_context_t ctxt, - int argc, char **args) -{ - grub_file_t pkf; - struct grub_public_key *pk = NULL; - - if (argc < 1) - return grub_error (GRUB_ERR_BAD_ARGUMENT, N_("one argument expected")); - - pkf = grub_file_open (args[0], - GRUB_FILE_TYPE_PUBLIC_KEY_TRUST - | GRUB_FILE_TYPE_NO_DECOMPRESS - | (ctxt->state[OPTION_SKIP_SIG].set - ? GRUB_FILE_TYPE_SKIP_SIGNATURE - : GRUB_FILE_TYPE_NONE)); - if (!pkf) - return grub_errno; - pk = grub_load_public_key (pkf); - if (!pk) - { - grub_file_close (pkf); - return grub_errno; - } - grub_file_close (pkf); - - pk->next = grub_pk_trusted; - grub_pk_trusted = pk; - - return GRUB_ERR_NONE; -} - -static grub_err_t -grub_cmd_list (grub_command_t cmd __attribute__ ((unused)), - int argc __attribute__ ((unused)), - char **args __attribute__ ((unused))) -{ - struct grub_public_key *pk = NULL; - struct grub_public_subkey *sk = NULL; - - for (pk = grub_pk_trusted; pk; pk = pk->next) - for (sk = pk->subkeys; sk; sk = sk->next) - { - unsigned i; - for (i = 0; i < 20; i += 2) - grub_printf ("%02x%02x ", ((grub_uint8_t *) sk->fingerprint)[i], - ((grub_uint8_t *) sk->fingerprint)[i + 1]); - grub_printf ("\n"); - } - - return GRUB_ERR_NONE; -} - -static grub_err_t -grub_cmd_distrust (grub_command_t cmd __attribute__ ((unused)), - int argc, char **args) -{ - grub_uint32_t keyid, keyid_be; - struct grub_public_key **pkey; - struct grub_public_subkey *sk; - - if (argc < 1) - return grub_error (GRUB_ERR_BAD_ARGUMENT, N_("one argument expected")); - keyid = grub_strtoull (args[0], 0, 16); - if (grub_errno) - return grub_errno; - keyid_be = grub_cpu_to_be32 (keyid); - - for (pkey = &grub_pk_trusted; *pkey; pkey = &((*pkey)->next)) - { - struct grub_public_key *next; - for (sk = (*pkey)->subkeys; sk; sk = sk->next) - if (grub_memcmp (sk->fingerprint + 4, &keyid_be, 4) == 0) - break; - if (!sk) - continue; - next = (*pkey)->next; - free_pk (*pkey); - *pkey = next; - return GRUB_ERR_NONE; - } - /* TRANSLATORS: %08x is 32-bit key id. */ - return grub_error (GRUB_ERR_BAD_SIGNATURE, N_("public key %08x not found"), keyid); -} - -static grub_err_t -grub_cmd_verify_signature (grub_extcmd_context_t ctxt, - int argc, char **args) -{ - grub_file_t f = NULL; - grub_err_t err = GRUB_ERR_NONE; - struct grub_public_key *pk = NULL; - - grub_dprintf ("crypt", "alive\n"); - - if (argc < 2) - return grub_error (GRUB_ERR_BAD_ARGUMENT, N_("two arguments expected")); - - grub_dprintf ("crypt", "alive\n"); - - if (argc > 2) - { - grub_file_t pkf; - pkf = grub_file_open (args[2], - GRUB_FILE_TYPE_PUBLIC_KEY - | GRUB_FILE_TYPE_NO_DECOMPRESS - | (ctxt->state[OPTION_SKIP_SIG].set - ? GRUB_FILE_TYPE_SKIP_SIGNATURE - : GRUB_FILE_TYPE_NONE)); - if (!pkf) - return grub_errno; - pk = grub_load_public_key (pkf); - if (!pk) - { - grub_file_close (pkf); - return grub_errno; - } - grub_file_close (pkf); - } - - f = grub_file_open (args[0], GRUB_FILE_TYPE_VERIFY_SIGNATURE); - if (!f) - { - err = grub_errno; - goto fail; - } - - err = grub_verify_signature (f, args[1], pk); - fail: - if (f) - grub_file_close (f); - if (pk) - free_pk (pk); - return err; -} - -static int sec = 0; - -static grub_err_t -grub_pubkey_init (grub_file_t io, enum grub_file_type type __attribute__ ((unused)), - void **context, enum grub_verify_flags *flags) -{ - grub_file_t sig; - char *fsuf, *ptr; - grub_err_t err; - struct grub_pubkey_context *ctxt; - - if (!sec) - { - *flags = GRUB_VERIFY_FLAGS_SKIP_VERIFICATION; - return GRUB_ERR_NONE; - } - - fsuf = grub_malloc (grub_strlen (io->name) + sizeof (".sig")); - if (!fsuf) - return grub_errno; - ptr = grub_stpcpy (fsuf, io->name); - grub_memcpy (ptr, ".sig", sizeof (".sig")); - - sig = grub_file_open (fsuf, GRUB_FILE_TYPE_SIGNATURE); - grub_free (fsuf); - if (!sig) - return grub_errno; - - ctxt = grub_malloc (sizeof (*ctxt)); - if (!ctxt) - { - grub_file_close (sig); - return grub_errno; - } - err = grub_verify_signature_init (ctxt, sig); - if (err) - { - grub_free (ctxt); - grub_file_close (sig); - return err; - } - *context = ctxt; - return GRUB_ERR_NONE; -} - -static grub_err_t -grub_pubkey_fini (void *ctxt) -{ - return grub_verify_signature_real (ctxt, NULL); -} - -static char * -grub_env_write_sec (struct grub_env_var *var __attribute__ ((unused)), - const char *val) -{ - sec = (*val == '1') || (*val == 'e'); - return grub_strdup (sec ? "enforce" : "no"); -} - -static grub_ssize_t -pseudo_read (struct grub_file *file, char *buf, grub_size_t len) -{ - grub_memcpy (buf, (grub_uint8_t *) file->data + file->offset, len); - return len; -} - - -/* Filesystem descriptor. */ -struct grub_fs pseudo_fs = - { - .name = "pseudo", - .fs_read = pseudo_read - }; - -struct grub_file_verifier grub_pubkey_verifier = - { - .name = "pgp", - .init = grub_pubkey_init, - .fini = grub_pubkey_fini, - .write = grub_pubkey_write, - .close = grub_pubkey_close, - }; - -static grub_extcmd_t cmd, cmd_trust; -static grub_command_t cmd_distrust, cmd_list; - -GRUB_MOD_INIT(pgp) -{ - const char *val; - struct grub_module_header *header; - - val = grub_env_get ("check_signatures"); - if (val && (val[0] == '1' || val[0] == 'e')) - sec = 1; - else - sec = 0; - - grub_register_variable_hook ("check_signatures", 0, grub_env_write_sec); - grub_env_export ("check_signatures"); - - grub_pk_trusted = 0; - FOR_MODULES (header) - { - struct grub_file pseudo_file; - struct grub_public_key *pk = NULL; - - grub_memset (&pseudo_file, 0, sizeof (pseudo_file)); - - /* Not an ELF module, skip. */ - if (header->type != OBJ_TYPE_PUBKEY) - continue; - - pseudo_file.fs = &pseudo_fs; - pseudo_file.size = (header->size - sizeof (struct grub_module_header)); - pseudo_file.data = (char *) header + sizeof (struct grub_module_header); - - pk = grub_load_public_key (&pseudo_file); - if (!pk) - grub_fatal ("error loading initial key: %s\n", grub_errmsg); - - pk->next = grub_pk_trusted; - grub_pk_trusted = pk; - } - - if (!val) - grub_env_set ("check_signatures", grub_pk_trusted ? "enforce" : "no"); - - cmd = grub_register_extcmd ("verify_detached", grub_cmd_verify_signature, 0, - N_("[-s|--skip-sig] FILE SIGNATURE_FILE [PUBKEY_FILE]"), - N_("Verify detached signature."), - options); - cmd_trust = grub_register_extcmd ("trust", grub_cmd_trust, 0, - N_("[-s|--skip-sig] PUBKEY_FILE"), - N_("Add PUBKEY_FILE to trusted keys."), - options); - cmd_list = grub_register_command ("list_trusted", grub_cmd_list, - 0, - N_("Show the list of trusted keys.")); - cmd_distrust = grub_register_command ("distrust", grub_cmd_distrust, - N_("PUBKEY_ID"), - N_("Remove PUBKEY_ID from trusted keys.")); - - grub_verifier_register (&grub_pubkey_verifier); -} - -GRUB_MOD_FINI(pgp) -{ - grub_verifier_unregister (&grub_pubkey_verifier); - grub_unregister_extcmd (cmd); - grub_unregister_extcmd (cmd_trust); - grub_unregister_command (cmd_list); - grub_unregister_command (cmd_distrust); -} diff --git a/thirdparty/grub-2.04/grub-core/commands/probe.c b/thirdparty/grub-2.04/grub-core/commands/probe.c deleted file mode 100644 index 95d272287..000000000 --- a/thirdparty/grub-2.04/grub-core/commands/probe.c +++ /dev/null @@ -1,172 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -static const struct grub_arg_option options[] = - { - {"set", 's', 0, - N_("Set a variable to return value."), N_("VARNAME"), ARG_TYPE_STRING}, - /* TRANSLATORS: It's a driver that is currently in use to access - the diven disk. */ - {"driver", 'd', 0, N_("Determine driver."), 0, 0}, - {"partmap", 'p', 0, N_("Determine partition map type."), 0, 0}, - {"fs", 'f', 0, N_("Determine filesystem type."), 0, 0}, - {"fs-uuid", 'u', 0, N_("Determine filesystem UUID."), 0, 0}, - {"label", 'l', 0, N_("Determine filesystem label."), 0, 0}, - {0, 0, 0, 0, 0, 0} - }; - -static grub_err_t -grub_cmd_probe (grub_extcmd_context_t ctxt, int argc, char **args) -{ - struct grub_arg_list *state = ctxt->state; - grub_device_t dev; - grub_fs_t fs; - char *ptr; - grub_err_t err; - - if (argc < 1) - return grub_error (GRUB_ERR_BAD_ARGUMENT, "device name required"); - - ptr = args[0] + grub_strlen (args[0]) - 1; - if (args[0][0] == '(' && *ptr == ')') - { - *ptr = 0; - dev = grub_device_open (args[0] + 1); - *ptr = ')'; - } - else - dev = grub_device_open (args[0]); - if (! dev) - return grub_errno; - - if (state[1].set) - { - const char *val = "none"; - if (dev->net) - val = dev->net->protocol->name; - if (dev->disk) - val = dev->disk->dev->name; - if (state[0].set) - grub_env_set (state[0].arg, val); - else - grub_printf ("%s", val); - grub_device_close (dev); - return GRUB_ERR_NONE; - } - if (state[2].set) - { - const char *val = "none"; - if (dev->disk && dev->disk->partition) - val = dev->disk->partition->partmap->name; - if (state[0].set) - grub_env_set (state[0].arg, val); - else - grub_printf ("%s", val); - grub_device_close (dev); - return GRUB_ERR_NONE; - } - fs = grub_fs_probe (dev); - if (! fs) - return grub_errno; - if (state[3].set) - { - if (state[0].set) - grub_env_set (state[0].arg, fs->name); - else - grub_printf ("%s", fs->name); - grub_device_close (dev); - return GRUB_ERR_NONE; - } - if (state[4].set) - { - char *uuid; - if (! fs->fs_uuid) - return grub_error (GRUB_ERR_NOT_IMPLEMENTED_YET, - N_("%s does not support UUIDs"), fs->name); - err = fs->fs_uuid (dev, &uuid); - if (err) - return err; - if (! uuid) - return grub_error (GRUB_ERR_NOT_IMPLEMENTED_YET, - N_("%s does not support UUIDs"), fs->name); - - if (state[0].set) - grub_env_set (state[0].arg, uuid); - else - grub_printf ("%s", uuid); - grub_free (uuid); - grub_device_close (dev); - return GRUB_ERR_NONE; - } - if (state[5].set) - { - char *label; - if (! fs->fs_label) - return grub_error (GRUB_ERR_NOT_IMPLEMENTED_YET, - N_("filesystem `%s' does not support labels"), - fs->name); - err = fs->fs_label (dev, &label); - if (err) - return err; - if (! label) - return grub_error (GRUB_ERR_NOT_IMPLEMENTED_YET, - N_("filesystem `%s' does not support labels"), - fs->name); - - if (state[0].set) - grub_env_set (state[0].arg, label); - else - grub_printf ("%s", label); - grub_free (label); - grub_device_close (dev); - return GRUB_ERR_NONE; - } - grub_device_close (dev); - return grub_error (GRUB_ERR_BAD_ARGUMENT, "unrecognised target"); -} - -static grub_extcmd_t cmd; - -GRUB_MOD_INIT (probe) -{ - cmd = grub_register_extcmd ("probe", grub_cmd_probe, 0, N_("DEVICE"), - N_("Retrieve device info."), options); -} - -GRUB_MOD_FINI (probe) -{ - grub_unregister_extcmd (cmd); -} diff --git a/thirdparty/grub-2.04/grub-core/commands/read.c b/thirdparty/grub-2.04/grub-core/commands/read.c deleted file mode 100644 index fe3e88b15..000000000 --- a/thirdparty/grub-2.04/grub-core/commands/read.c +++ /dev/null @@ -1,92 +0,0 @@ -/* read.c - Command to read variables from user. */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2006,2007,2008 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -static char * -grub_getline (void) -{ - int i; - char *line; - char *tmp; - char c; - - i = 0; - line = grub_malloc (1 + i + sizeof('\0')); - if (! line) - return NULL; - - while (1) - { - c = grub_getkey (); - if ((c == '\n') || (c == '\r')) - break; - - line[i] = c; - if (grub_isprint (c)) - grub_printf ("%c", c); - i++; - tmp = grub_realloc (line, 1 + i + sizeof('\0')); - if (! tmp) - { - grub_free (line); - return NULL; - } - line = tmp; - } - line[i] = '\0'; - - return line; -} - -static grub_err_t -grub_cmd_read (grub_command_t cmd __attribute__ ((unused)), int argc, char **args) -{ - char *line = grub_getline (); - if (! line) - return grub_errno; - if (argc > 0) - grub_env_set (args[0], line); - - grub_free (line); - return 0; -} - -static grub_command_t cmd; - -GRUB_MOD_INIT(read) -{ - cmd = grub_register_command ("read", grub_cmd_read, - N_("[ENVVAR]"), - N_("Set variable with user input.")); -} - -GRUB_MOD_FINI(read) -{ - grub_unregister_command (cmd); -} diff --git a/thirdparty/grub-2.04/grub-core/commands/reboot.c b/thirdparty/grub-2.04/grub-core/commands/reboot.c deleted file mode 100644 index 46d364c99..000000000 --- a/thirdparty/grub-2.04/grub-core/commands/reboot.c +++ /dev/null @@ -1,46 +0,0 @@ -/* reboot.c - command to reboot the computer. */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2005,2007,2008 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -static grub_err_t __attribute__ ((noreturn)) -grub_cmd_reboot (grub_command_t cmd __attribute__ ((unused)), - int argc __attribute__ ((unused)), - char **args __attribute__ ((unused))) -{ - grub_reboot (); -} - -static grub_command_t cmd; - -GRUB_MOD_INIT(reboot) -{ - cmd = grub_register_command ("reboot", grub_cmd_reboot, - 0, N_("Reboot the computer.")); -} - -GRUB_MOD_FINI(reboot) -{ - grub_unregister_command (cmd); -} diff --git a/thirdparty/grub-2.04/grub-core/commands/regexp.c b/thirdparty/grub-2.04/grub-core/commands/regexp.c deleted file mode 100644 index f00b184c8..000000000 --- a/thirdparty/grub-2.04/grub-core/commands/regexp.c +++ /dev/null @@ -1,168 +0,0 @@ -/* regexp.c -- The regexp command. */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2005,2007 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -static const struct grub_arg_option options[] = - { - { "set", 's', GRUB_ARG_OPTION_REPEATABLE, - /* TRANSLATORS: in regexp you can mark some - groups with parentheses. These groups are - then numbered and you can save some of - them in variables. In other programs - those components aree often referenced with - back slash, e.g. \1. Compare - sed -e 's,\([a-z][a-z]*\),lowercase=\1,g' - The whole matching component is saved in VARNAME, not its number. - */ - N_("Store matched component NUMBER in VARNAME."), - N_("[NUMBER:]VARNAME"), ARG_TYPE_STRING }, - { 0, 0, 0, 0, 0, 0 } - }; - -static grub_err_t -setvar (char *str, char *v, regmatch_t *m) -{ - char ch; - grub_err_t err; - ch = str[m->rm_eo]; - str[m->rm_eo] = '\0'; - err = grub_env_set (v, str + m->rm_so); - str[m->rm_eo] = ch; - return err; -} - -static grub_err_t -set_matches (char **varnames, char *str, grub_size_t nmatches, - regmatch_t *matches) -{ - int i; - char *p; - char *q; - grub_err_t err; - unsigned long j; - - for (i = 0; varnames && varnames[i]; i++) - { - err = GRUB_ERR_NONE; - p = grub_strchr (varnames[i], ':'); - if (! p) - { - /* varname w/o index defaults to 1 */ - if (nmatches < 2 || matches[1].rm_so == -1) - grub_env_unset (varnames[i]); - else - err = setvar (str, varnames[i], &matches[1]); - } - else - { - j = grub_strtoul (varnames[i], &q, 10); - if (q != p) - return grub_error (GRUB_ERR_BAD_ARGUMENT, - "invalid variable name format %s", varnames[i]); - - if (nmatches <= j || matches[j].rm_so == -1) - grub_env_unset (p + 1); - else - err = setvar (str, p + 1, &matches[j]); - } - - if (err != GRUB_ERR_NONE) - return err; - } - return GRUB_ERR_NONE; -} - -static grub_err_t -grub_cmd_regexp (grub_extcmd_context_t ctxt, int argc, char **args) -{ - regex_t regex; - int ret; - grub_size_t s; - char *comperr; - grub_err_t err; - regmatch_t *matches = 0; - - if (argc != 2) - return grub_error (GRUB_ERR_BAD_ARGUMENT, N_("two arguments expected")); - - ret = regcomp (®ex, args[0], REG_EXTENDED); - if (ret) - goto fail; - - matches = grub_zalloc (sizeof (*matches) * (regex.re_nsub + 1)); - if (! matches) - goto fail; - - ret = regexec (®ex, args[1], regex.re_nsub + 1, matches, 0); - if (!ret) - { - err = set_matches (ctxt->state[0].args, args[1], - regex.re_nsub + 1, matches); - regfree (®ex); - grub_free (matches); - return err; - } - - fail: - grub_free (matches); - s = regerror (ret, ®ex, 0, 0); - comperr = grub_malloc (s); - if (!comperr) - { - regfree (®ex); - return grub_errno; - } - regerror (ret, ®ex, comperr, s); - err = grub_error (GRUB_ERR_TEST_FAILURE, "%s", comperr); - regfree (®ex); - grub_free (comperr); - return err; -} - -static grub_extcmd_t cmd; - -GRUB_MOD_INIT(regexp) -{ - cmd = grub_register_extcmd ("regexp", grub_cmd_regexp, 0, - /* TRANSLATORS: This are two arguments. So it's - two separate units to translate and pay - attention not to reverse them. */ - N_("REGEXP STRING"), - N_("Test if REGEXP matches STRING."), options); - - /* Setup GRUB script wildcard translator. */ - grub_wildcard_translator = &grub_filename_translator; -} - -GRUB_MOD_FINI(regexp) -{ - grub_unregister_extcmd (cmd); - grub_wildcard_translator = 0; -} diff --git a/thirdparty/grub-2.04/grub-core/commands/search.c b/thirdparty/grub-2.04/grub-core/commands/search.c deleted file mode 100644 index ed090b3af..000000000 --- a/thirdparty/grub-2.04/grub-core/commands/search.c +++ /dev/null @@ -1,337 +0,0 @@ -/* search.c - search devices based on a file or a filesystem label */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2005,2007,2008,2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -struct cache_entry -{ - struct cache_entry *next; - char *key; - char *value; -}; - -static struct cache_entry *cache; - -/* Context for FUNC_NAME. */ -struct search_ctx -{ - const char *key; - const char *var; - int no_floppy; - char **hints; - unsigned nhints; - int count; - int is_cache; -}; - -/* Helper for FUNC_NAME. */ -static int -iterate_device (const char *name, void *data) -{ - struct search_ctx *ctx = data; - int found = 0; - - /* Skip floppy drives when requested. */ - if (ctx->no_floppy && - name[0] == 'f' && name[1] == 'd' && name[2] >= '0' && name[2] <= '9') - return 1; - -#ifdef DO_SEARCH_FS_UUID -#define compare_fn grub_strcasecmp -#else -#define compare_fn grub_strcmp -#endif - -#ifdef DO_SEARCH_FILE - { - char *buf; - grub_file_t file; - - buf = grub_xasprintf ("(%s)%s", name, ctx->key); - if (! buf) - return 1; - - file = grub_file_open (buf, GRUB_FILE_TYPE_FS_SEARCH - | GRUB_FILE_TYPE_NO_DECOMPRESS); - if (file) - { - found = 1; - grub_file_close (file); - } - grub_free (buf); - } -#else - { - /* SEARCH_FS_UUID or SEARCH_LABEL */ - grub_device_t dev; - grub_fs_t fs; - char *quid; - - dev = grub_device_open (name); - if (dev) - { - fs = grub_fs_probe (dev); - -#ifdef DO_SEARCH_FS_UUID -#define read_fn fs_uuid -#else -#define read_fn fs_label -#endif - - if (fs && fs->read_fn) - { - fs->read_fn (dev, &quid); - - if (grub_errno == GRUB_ERR_NONE && quid) - { - if (compare_fn (quid, ctx->key) == 0) - found = 1; - - grub_free (quid); - } - } - - grub_device_close (dev); - } - } -#endif - - if (!ctx->is_cache && found && ctx->count == 0) - { - struct cache_entry *cache_ent; - cache_ent = grub_malloc (sizeof (*cache_ent)); - if (cache_ent) - { - cache_ent->key = grub_strdup (ctx->key); - cache_ent->value = grub_strdup (name); - if (cache_ent->value && cache_ent->key) - { - cache_ent->next = cache; - cache = cache_ent; - } - else - { - grub_free (cache_ent->value); - grub_free (cache_ent->key); - grub_free (cache_ent); - grub_errno = GRUB_ERR_NONE; - } - } - else - grub_errno = GRUB_ERR_NONE; - } - - if (found) - { - ctx->count++; - if (ctx->var) - grub_env_set (ctx->var, name); - else - grub_printf (" %s", name); - } - - grub_errno = GRUB_ERR_NONE; - return (found && ctx->var); -} - -/* Helper for FUNC_NAME. */ -static int -part_hook (grub_disk_t disk, const grub_partition_t partition, void *data) -{ - struct search_ctx *ctx = data; - char *partition_name, *devname; - int ret; - - partition_name = grub_partition_get_name (partition); - if (! partition_name) - return 1; - - devname = grub_xasprintf ("%s,%s", disk->name, partition_name); - grub_free (partition_name); - if (!devname) - return 1; - ret = iterate_device (devname, ctx); - grub_free (devname); - - return ret; -} - -/* Helper for FUNC_NAME. */ -static void -try (struct search_ctx *ctx) -{ - unsigned i; - struct cache_entry **prev; - struct cache_entry *cache_ent; - - for (prev = &cache, cache_ent = *prev; cache_ent; - prev = &cache_ent->next, cache_ent = *prev) - if (compare_fn (cache_ent->key, ctx->key) == 0) - break; - if (cache_ent) - { - ctx->is_cache = 1; - if (iterate_device (cache_ent->value, ctx)) - { - ctx->is_cache = 0; - return; - } - ctx->is_cache = 0; - /* Cache entry was outdated. Remove it. */ - if (!ctx->count) - { - *prev = cache_ent->next; - grub_free (cache_ent->key); - grub_free (cache_ent->value); - grub_free (cache_ent); - } - } - - for (i = 0; i < ctx->nhints; i++) - { - char *end; - if (!ctx->hints[i][0]) - continue; - end = ctx->hints[i] + grub_strlen (ctx->hints[i]) - 1; - if (*end == ',') - *end = 0; - if (iterate_device (ctx->hints[i], ctx)) - { - if (!*end) - *end = ','; - return; - } - if (!*end) - { - grub_device_t dev; - int ret; - dev = grub_device_open (ctx->hints[i]); - if (!dev) - { - if (!*end) - *end = ','; - continue; - } - if (!dev->disk) - { - grub_device_close (dev); - if (!*end) - *end = ','; - continue; - } - ret = grub_partition_iterate (dev->disk, part_hook, ctx); - if (!*end) - *end = ','; - grub_device_close (dev); - if (ret) - return; - } - } - grub_device_iterate (iterate_device, ctx); -} - -void -FUNC_NAME (const char *key, const char *var, int no_floppy, - char **hints, unsigned nhints) -{ - struct search_ctx ctx = { - .key = key, - .var = var, - .no_floppy = no_floppy, - .hints = hints, - .nhints = nhints, - .count = 0, - .is_cache = 0 - }; - grub_fs_autoload_hook_t saved_autoload; - - /* First try without autoloading if we're setting variable. */ - if (var) - { - saved_autoload = grub_fs_autoload_hook; - grub_fs_autoload_hook = 0; - try (&ctx); - - /* Restore autoload hook. */ - grub_fs_autoload_hook = saved_autoload; - - /* Retry with autoload if nothing found. */ - if (grub_errno == GRUB_ERR_NONE && ctx.count == 0) - try (&ctx); - } - else - try (&ctx); - - if (grub_errno == GRUB_ERR_NONE && ctx.count == 0) - grub_error (GRUB_ERR_FILE_NOT_FOUND, "no such device: %s", key); -} - -static grub_err_t -grub_cmd_do_search (grub_command_t cmd __attribute__ ((unused)), int argc, - char **args) -{ - if (argc == 0) - return grub_error (GRUB_ERR_BAD_ARGUMENT, N_("one argument expected")); - - FUNC_NAME (args[0], argc == 1 ? 0 : args[1], 0, (args + 2), - argc > 2 ? argc - 2 : 0); - - return grub_errno; -} - -static grub_command_t cmd; - -#ifdef DO_SEARCH_FILE -GRUB_MOD_INIT(search_fs_file) -#elif defined (DO_SEARCH_FS_UUID) -GRUB_MOD_INIT(search_fs_uuid) -#else -GRUB_MOD_INIT(search_label) -#endif -{ - cmd = - grub_register_command (COMMAND_NAME, grub_cmd_do_search, - N_("NAME [VARIABLE] [HINTS]"), - HELP_MESSAGE); -} - -#ifdef DO_SEARCH_FILE -GRUB_MOD_FINI(search_fs_file) -#elif defined (DO_SEARCH_FS_UUID) -GRUB_MOD_FINI(search_fs_uuid) -#else -GRUB_MOD_FINI(search_label) -#endif -{ - grub_unregister_command (cmd); -} diff --git a/thirdparty/grub-2.04/grub-core/commands/search_file.c b/thirdparty/grub-2.04/grub-core/commands/search_file.c deleted file mode 100644 index cc2a5f939..000000000 --- a/thirdparty/grub-2.04/grub-core/commands/search_file.c +++ /dev/null @@ -1,5 +0,0 @@ -#define DO_SEARCH_FILE 1 -#define FUNC_NAME grub_search_fs_file -#define COMMAND_NAME "search.file" -#define HELP_MESSAGE N_("Search devices by file. If VARIABLE is specified, the first device found is set to a variable.") -#include "search.c" diff --git a/thirdparty/grub-2.04/grub-core/commands/search_label.c b/thirdparty/grub-2.04/grub-core/commands/search_label.c deleted file mode 100644 index 12e7c1831..000000000 --- a/thirdparty/grub-2.04/grub-core/commands/search_label.c +++ /dev/null @@ -1,5 +0,0 @@ -#define DO_SEARCH_FS_LABEL 1 -#define FUNC_NAME grub_search_label -#define COMMAND_NAME "search.fs_label" -#define HELP_MESSAGE N_("Search devices by label. If VARIABLE is specified, the first device found is set to a variable.") -#include "search.c" diff --git a/thirdparty/grub-2.04/grub-core/commands/search_uuid.c b/thirdparty/grub-2.04/grub-core/commands/search_uuid.c deleted file mode 100644 index 541bcf54b..000000000 --- a/thirdparty/grub-2.04/grub-core/commands/search_uuid.c +++ /dev/null @@ -1,5 +0,0 @@ -#define DO_SEARCH_FS_UUID 1 -#define FUNC_NAME grub_search_fs_uuid -#define COMMAND_NAME "search.fs_uuid" -#define HELP_MESSAGE N_("Search devices by UUID. If VARIABLE is specified, the first device found is set to a variable.") -#include "search.c" diff --git a/thirdparty/grub-2.04/grub-core/commands/search_wrap.c b/thirdparty/grub-2.04/grub-core/commands/search_wrap.c deleted file mode 100644 index d7fd26b94..000000000 --- a/thirdparty/grub-2.04/grub-core/commands/search_wrap.c +++ /dev/null @@ -1,220 +0,0 @@ -/* search.c - search devices based on a file or a filesystem label */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2005,2007,2008,2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -static const struct grub_arg_option options[] = - { - {"file", 'f', 0, N_("Search devices by a file."), 0, 0}, - {"label", 'l', 0, N_("Search devices by a filesystem label."), - 0, 0}, - {"fs-uuid", 'u', 0, N_("Search devices by a filesystem UUID."), - 0, 0}, - {"set", 's', GRUB_ARG_OPTION_OPTIONAL, - N_("Set a variable to the first device found."), N_("VARNAME"), - ARG_TYPE_STRING}, - {"no-floppy", 'n', 0, N_("Do not probe any floppy drive."), 0, 0}, - {"hint", 'h', GRUB_ARG_OPTION_REPEATABLE, - N_("First try the device HINT. If HINT ends in comma, " - "also try subpartitions"), N_("HINT"), ARG_TYPE_STRING}, - {"hint-ieee1275", 0, GRUB_ARG_OPTION_REPEATABLE, - N_("First try the device HINT if currently running on IEEE1275. " - "If HINT ends in comma, also try subpartitions"), - N_("HINT"), ARG_TYPE_STRING}, - {"hint-bios", 0, GRUB_ARG_OPTION_REPEATABLE, - N_("First try the device HINT if currently running on BIOS. " - "If HINT ends in comma, also try subpartitions"), - N_("HINT"), ARG_TYPE_STRING}, - {"hint-baremetal", 0, GRUB_ARG_OPTION_REPEATABLE, - N_("First try the device HINT if direct hardware access is supported. " - "If HINT ends in comma, also try subpartitions"), - N_("HINT"), ARG_TYPE_STRING}, - {"hint-efi", 0, GRUB_ARG_OPTION_REPEATABLE, - N_("First try the device HINT if currently running on EFI. " - "If HINT ends in comma, also try subpartitions"), - N_("HINT"), ARG_TYPE_STRING}, - {"hint-arc", 0, GRUB_ARG_OPTION_REPEATABLE, - N_("First try the device HINT if currently running on ARC." - " If HINT ends in comma, also try subpartitions"), - N_("HINT"), ARG_TYPE_STRING}, - {0, 0, 0, 0, 0, 0} - }; - -enum options - { - SEARCH_FILE, - SEARCH_LABEL, - SEARCH_FS_UUID, - SEARCH_SET, - SEARCH_NO_FLOPPY, - SEARCH_HINT, - SEARCH_HINT_IEEE1275, - SEARCH_HINT_BIOS, - SEARCH_HINT_BAREMETAL, - SEARCH_HINT_EFI, - SEARCH_HINT_ARC, - }; - -static grub_err_t -grub_cmd_search (grub_extcmd_context_t ctxt, int argc, char **args) -{ - struct grub_arg_list *state = ctxt->state; - const char *var = 0; - const char *id = 0; - int i = 0, j = 0, nhints = 0; - char **hints = NULL; - - if (state[SEARCH_HINT].set) - for (i = 0; state[SEARCH_HINT].args[i]; i++) - nhints++; - -#ifdef GRUB_MACHINE_IEEE1275 - if (state[SEARCH_HINT_IEEE1275].set) - for (i = 0; state[SEARCH_HINT_IEEE1275].args[i]; i++) - nhints++; -#endif - -#ifdef GRUB_MACHINE_EFI - if (state[SEARCH_HINT_EFI].set) - for (i = 0; state[SEARCH_HINT_EFI].args[i]; i++) - nhints++; -#endif - -#ifdef GRUB_MACHINE_PCBIOS - if (state[SEARCH_HINT_BIOS].set) - for (i = 0; state[SEARCH_HINT_BIOS].args[i]; i++) - nhints++; -#endif - -#ifdef GRUB_MACHINE_ARC - if (state[SEARCH_HINT_ARC].set) - for (i = 0; state[SEARCH_HINT_ARC].args[i]; i++) - nhints++; -#endif - - if (state[SEARCH_HINT_BAREMETAL].set) - for (i = 0; state[SEARCH_HINT_BAREMETAL].args[i]; i++) - nhints++; - - hints = grub_malloc (sizeof (hints[0]) * nhints); - if (!hints) - return grub_errno; - j = 0; - - if (state[SEARCH_HINT].set) - for (i = 0; state[SEARCH_HINT].args[i]; i++) - hints[j++] = state[SEARCH_HINT].args[i]; - -#ifdef GRUB_MACHINE_IEEE1275 - if (state[SEARCH_HINT_IEEE1275].set) - for (i = 0; state[SEARCH_HINT_IEEE1275].args[i]; i++) - hints[j++] = state[SEARCH_HINT_IEEE1275].args[i]; -#endif - -#ifdef GRUB_MACHINE_EFI - if (state[SEARCH_HINT_EFI].set) - for (i = 0; state[SEARCH_HINT_EFI].args[i]; i++) - hints[j++] = state[SEARCH_HINT_EFI].args[i]; -#endif - -#ifdef GRUB_MACHINE_ARC - if (state[SEARCH_HINT_ARC].set) - for (i = 0; state[SEARCH_HINT_ARC].args[i]; i++) - hints[j++] = state[SEARCH_HINT_ARC].args[i]; -#endif - -#ifdef GRUB_MACHINE_PCBIOS - if (state[SEARCH_HINT_BIOS].set) - for (i = 0; state[SEARCH_HINT_BIOS].args[i]; i++) - hints[j++] = state[SEARCH_HINT_BIOS].args[i]; -#endif - - if (state[SEARCH_HINT_BAREMETAL].set) - for (i = 0; state[SEARCH_HINT_BAREMETAL].args[i]; i++) - hints[j++] = state[SEARCH_HINT_BAREMETAL].args[i]; - - /* Skip hints for future platforms. */ - for (j = 0; j < argc; j++) - if (grub_memcmp (args[j], "--hint-", sizeof ("--hint-") - 1) != 0) - break; - - if (state[SEARCH_SET].set) - var = state[SEARCH_SET].arg ? state[SEARCH_SET].arg : "root"; - - if (argc != j) - id = args[j]; - else if (state[SEARCH_SET].set && state[SEARCH_SET].arg) - { - id = state[SEARCH_SET].arg; - var = "root"; - } - else - { - grub_error (GRUB_ERR_BAD_ARGUMENT, N_("one argument expected")); - goto out; - } - - if (state[SEARCH_LABEL].set) - grub_search_label (id, var, state[SEARCH_NO_FLOPPY].set, - hints, nhints); - else if (state[SEARCH_FS_UUID].set) - grub_search_fs_uuid (id, var, state[SEARCH_NO_FLOPPY].set, - hints, nhints); - else if (state[SEARCH_FILE].set) - grub_search_fs_file (id, var, state[SEARCH_NO_FLOPPY].set, - hints, nhints); - else - grub_error (GRUB_ERR_INVALID_COMMAND, "unspecified search type"); - -out: - grub_free (hints); - return grub_errno; -} - -static grub_extcmd_t cmd; - -GRUB_MOD_INIT(search) -{ - cmd = - grub_register_extcmd ("search", grub_cmd_search, - GRUB_COMMAND_FLAG_EXTRACTOR | GRUB_COMMAND_ACCEPT_DASH, - N_("[-f|-l|-u|-s|-n] [--hint HINT [--hint HINT] ...]" - " NAME"), - N_("Search devices by file, filesystem label" - " or filesystem UUID." - " If --set is specified, the first device found is" - " set to a variable. If no variable name is" - " specified, `root' is used."), - options); -} - -GRUB_MOD_FINI(search) -{ - grub_unregister_extcmd (cmd); -} diff --git a/thirdparty/grub-2.04/grub-core/commands/setpci.c b/thirdparty/grub-2.04/grub-core/commands/setpci.c deleted file mode 100644 index d5bc97d60..000000000 --- a/thirdparty/grub-2.04/grub-core/commands/setpci.c +++ /dev/null @@ -1,341 +0,0 @@ -/* lspci.c - List PCI devices. */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2008, 2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -struct pci_register -{ - const char *name; - grub_uint16_t addr; - unsigned size; -}; - -static struct pci_register pci_registers[] = - { - {"VENDOR_ID", GRUB_PCI_REG_VENDOR , 2}, - {"DEVICE_ID", GRUB_PCI_REG_DEVICE , 2}, - {"COMMAND", GRUB_PCI_REG_COMMAND , 2}, - {"STATUS", GRUB_PCI_REG_STATUS , 2}, - {"REVISION", GRUB_PCI_REG_REVISION , 1}, - {"CLASS_PROG", GRUB_PCI_REG_CLASS + 1 , 1}, - {"CLASS_DEVICE", GRUB_PCI_REG_CLASS + 2 , 2}, - {"CACHE_LINE_SIZE", GRUB_PCI_REG_CACHELINE , 1}, - {"LATENCY_TIMER", GRUB_PCI_REG_LAT_TIMER , 1}, - {"HEADER_TYPE", GRUB_PCI_REG_HEADER_TYPE , 1}, - {"BIST", GRUB_PCI_REG_BIST , 1}, - {"BASE_ADDRESS_0", GRUB_PCI_REG_ADDRESS_REG0, 4}, - {"BASE_ADDRESS_1", GRUB_PCI_REG_ADDRESS_REG1, 4}, - {"BASE_ADDRESS_2", GRUB_PCI_REG_ADDRESS_REG2, 4}, - {"BASE_ADDRESS_3", GRUB_PCI_REG_ADDRESS_REG3, 4}, - {"BASE_ADDRESS_4", GRUB_PCI_REG_ADDRESS_REG4, 4}, - {"BASE_ADDRESS_5", GRUB_PCI_REG_ADDRESS_REG5, 4}, - {"CARDBUS_CIS", GRUB_PCI_REG_CIS_POINTER , 4}, - {"SUBVENDOR_ID", GRUB_PCI_REG_SUBVENDOR , 2}, - {"SUBSYSTEM_ID", GRUB_PCI_REG_SUBSYSTEM , 2}, - {"ROM_ADDRESS", GRUB_PCI_REG_ROM_ADDRESS , 4}, - {"CAP_POINTER", GRUB_PCI_REG_CAP_POINTER , 1}, - {"INTERRUPT_LINE", GRUB_PCI_REG_IRQ_LINE , 1}, - {"INTERRUPT_PIN", GRUB_PCI_REG_IRQ_PIN , 1}, - {"MIN_GNT", GRUB_PCI_REG_MIN_GNT , 1}, - {"MAX_LAT", GRUB_PCI_REG_MIN_GNT , 1}, - }; - -static const struct grub_arg_option options[] = - { - {0, 'd', 0, N_("Select device by vendor and device IDs."), - N_("[vendor]:[device]"), ARG_TYPE_STRING}, - {0, 's', 0, N_("Select device by its position on the bus."), - N_("[bus]:[slot][.func]"), ARG_TYPE_STRING}, - {0, 'v', 0, N_("Save read value into variable VARNAME."), - N_("VARNAME"), ARG_TYPE_STRING}, - {0, 0, 0, 0, 0, 0} - }; - -static grub_uint32_t pciid_check_mask, pciid_check_value; -static int bus, device, function; -static int check_bus, check_device, check_function; -static grub_uint32_t write_mask, regwrite; -static int regsize; -static grub_uint16_t regaddr; -static const char *varname; - -static int -grub_setpci_iter (grub_pci_device_t dev, grub_pci_id_t pciid, - void *data __attribute__ ((unused))) -{ - grub_uint32_t regval = 0; - grub_pci_address_t addr; - - if ((pciid & pciid_check_mask) != pciid_check_value) - return 0; - - if (check_bus && grub_pci_get_bus (dev) != bus) - return 0; - - if (check_device && grub_pci_get_device (dev) != device) - return 0; - - if (check_function && grub_pci_get_function (dev) != function) - return 0; - - addr = grub_pci_make_address (dev, regaddr); - - switch (regsize) - { - case 1: - regval = grub_pci_read_byte (addr); - break; - - case 2: - regval = grub_pci_read_word (addr); - break; - - case 4: - regval = grub_pci_read (addr); - break; - } - - if (varname) - { - char buf[sizeof ("XXXXXXXX")]; - grub_snprintf (buf, sizeof (buf), "%x", regval); - grub_env_set (varname, buf); - return 1; - } - - if (!write_mask) - { - grub_printf (_("Register %x of %x:%02x.%x is %x\n"), regaddr, - grub_pci_get_bus (dev), - grub_pci_get_device (dev), - grub_pci_get_function (dev), - regval); - return 0; - } - - regval = (regval & ~write_mask) | regwrite; - - switch (regsize) - { - case 1: - grub_pci_write_byte (addr, regval); - break; - - case 2: - grub_pci_write_word (addr, regval); - break; - - case 4: - grub_pci_write (addr, regval); - break; - } - - return 0; -} - -static grub_err_t -grub_cmd_setpci (grub_extcmd_context_t ctxt, int argc, char **argv) -{ - const char *ptr; - unsigned i; - - pciid_check_value = 0; - pciid_check_mask = 0; - - if (ctxt->state[0].set) - { - ptr = ctxt->state[0].arg; - pciid_check_value |= (grub_strtoul (ptr, (char **) &ptr, 16) & 0xffff); - if (grub_errno == GRUB_ERR_BAD_NUMBER) - { - grub_errno = GRUB_ERR_NONE; - ptr = ctxt->state[0].arg; - } - else - pciid_check_mask |= 0xffff; - if (grub_errno) - return grub_errno; - if (*ptr != ':') - return grub_error (GRUB_ERR_BAD_ARGUMENT, N_("missing `%c' symbol"), ':'); - ptr++; - pciid_check_value |= (grub_strtoul (ptr, (char **) &ptr, 16) & 0xffff) - << 16; - if (grub_errno == GRUB_ERR_BAD_NUMBER) - grub_errno = GRUB_ERR_NONE; - else - pciid_check_mask |= 0xffff0000; - } - - pciid_check_value &= pciid_check_mask; - - check_bus = check_device = check_function = 0; - - if (ctxt->state[1].set) - { - const char *optr; - - ptr = ctxt->state[1].arg; - optr = ptr; - bus = grub_strtoul (ptr, (char **) &ptr, 16); - if (grub_errno == GRUB_ERR_BAD_NUMBER) - { - grub_errno = GRUB_ERR_NONE; - ptr = optr; - } - else - check_bus = 1; - if (grub_errno) - return grub_errno; - if (*ptr != ':') - return grub_error (GRUB_ERR_BAD_ARGUMENT, N_("missing `%c' symbol"), ':'); - ptr++; - optr = ptr; - device = grub_strtoul (ptr, (char **) &ptr, 16); - if (grub_errno == GRUB_ERR_BAD_NUMBER) - { - grub_errno = GRUB_ERR_NONE; - ptr = optr; - } - else - check_device = 1; - if (*ptr == '.') - { - ptr++; - function = grub_strtoul (ptr, (char **) &ptr, 16); - if (grub_errno) - return grub_errno; - check_function = 1; - } - } - - if (ctxt->state[2].set) - varname = ctxt->state[2].arg; - else - varname = NULL; - - write_mask = 0; - - if (argc != 1) - return grub_error (GRUB_ERR_BAD_ARGUMENT, N_("one argument expected")); - - ptr = argv[0]; - - for (i = 0; i < ARRAY_SIZE (pci_registers); i++) - { - if (grub_strncmp (ptr, pci_registers[i].name, - grub_strlen (pci_registers[i].name)) == 0) - break; - } - if (i == ARRAY_SIZE (pci_registers)) - { - regsize = 0; - regaddr = grub_strtoul (ptr, (char **) &ptr, 16); - if (grub_errno) - return grub_error (GRUB_ERR_BAD_ARGUMENT, "unknown register"); - } - else - { - regaddr = pci_registers[i].addr; - regsize = pci_registers[i].size; - ptr += grub_strlen (pci_registers[i].name); - } - - if (grub_errno) - return grub_errno; - - if (*ptr == '+') - { - ptr++; - regaddr += grub_strtoul (ptr, (char **) &ptr, 16); - if (grub_errno) - return grub_errno; - } - - if (grub_memcmp (ptr, ".L", sizeof (".L") - 1) == 0 - || grub_memcmp (ptr, ".l", sizeof (".l") - 1) == 0) - { - regsize = 4; - ptr += sizeof (".l") - 1; - } - else if (grub_memcmp (ptr, ".W", sizeof (".W") - 1) == 0 - || grub_memcmp (ptr, ".w", sizeof (".w") - 1) == 0) - { - regsize = 2; - ptr += sizeof (".w") - 1; - } - else if (grub_memcmp (ptr, ".B", sizeof (".B") - 1) == 0 - || grub_memcmp (ptr, ".b", sizeof (".b") - 1) == 0) - { - regsize = 1; - ptr += sizeof (".b") - 1; - } - - if (!regsize) - return grub_error (GRUB_ERR_BAD_ARGUMENT, - "unknown register size"); - - write_mask = 0; - if (*ptr == '=') - { - ptr++; - regwrite = grub_strtoul (ptr, (char **) &ptr, 16); - if (grub_errno) - return grub_errno; - write_mask = 0xffffffff; - if (*ptr == ':') - { - ptr++; - write_mask = grub_strtoul (ptr, (char **) &ptr, 16); - if (grub_errno) - return grub_errno; - write_mask = 0xffffffff; - } - regwrite &= write_mask; - } - - if (write_mask && varname) - return grub_error (GRUB_ERR_BAD_ARGUMENT, - "option -v isn't valid for writes"); - - grub_pci_iterate (grub_setpci_iter, NULL); - return GRUB_ERR_NONE; -} - -static grub_extcmd_t cmd; - -GRUB_MOD_INIT(setpci) -{ - cmd = grub_register_extcmd ("setpci", grub_cmd_setpci, 0, - N_("[-s POSITION] [-d DEVICE] [-v VAR] " - "REGISTER[=VALUE[:MASK]]"), - N_("Manipulate PCI devices."), options); -} - -GRUB_MOD_FINI(setpci) -{ - grub_unregister_extcmd (cmd); -} diff --git a/thirdparty/grub-2.04/grub-core/commands/sleep.c b/thirdparty/grub-2.04/grub-core/commands/sleep.c deleted file mode 100644 index e77e7900f..000000000 --- a/thirdparty/grub-2.04/grub-core/commands/sleep.c +++ /dev/null @@ -1,117 +0,0 @@ -/* sleep.c - Command to wait a specified number of seconds. */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2006,2007,2008 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -static const struct grub_arg_option options[] = - { - {"verbose", 'v', 0, N_("Verbose countdown."), 0, 0}, - {"interruptible", 'i', 0, N_("Allow to interrupt with ESC."), 0, 0}, - {0, 0, 0, 0, 0, 0} - }; - -static struct grub_term_coordinate *pos; - -static void -do_print (int n) -{ - grub_term_restore_pos (pos); - /* NOTE: Do not remove the trailing space characters. - They are required to clear the line. */ - grub_printf ("%d ", n); - grub_refresh (); -} - -/* Based on grub_millisleep() from kern/generic/millisleep.c. */ -static int -grub_interruptible_millisleep (grub_uint32_t ms) -{ - grub_uint64_t start; - - start = grub_get_time_ms (); - - while (grub_get_time_ms () - start < ms) - if (grub_getkey_noblock () == GRUB_TERM_ESC) - return 1; - - return 0; -} - -static grub_err_t -grub_cmd_sleep (grub_extcmd_context_t ctxt, int argc, char **args) -{ - struct grub_arg_list *state = ctxt->state; - int n; - - if (argc != 1) - return grub_error (GRUB_ERR_BAD_ARGUMENT, N_("one argument expected")); - - n = grub_strtoul (args[0], 0, 10); - - if (n == 0) - { - /* Either `0' or broken input. */ - return 0; - } - - grub_refresh (); - - pos = grub_term_save_pos (); - - for (; n; n--) - { - if (state[0].set) - do_print (n); - - if (state[1].set) - { - if (grub_interruptible_millisleep (1000)) - return 1; - } - else - grub_millisleep (1000); - } - if (state[0].set) - do_print (0); - - return 0; -} - -static grub_extcmd_t cmd; - -GRUB_MOD_INIT(sleep) -{ - cmd = grub_register_extcmd ("sleep", grub_cmd_sleep, 0, - N_("NUMBER_OF_SECONDS"), - N_("Wait for a specified number of seconds."), - options); -} - -GRUB_MOD_FINI(sleep) -{ - grub_unregister_extcmd (cmd); -} diff --git a/thirdparty/grub-2.04/grub-core/commands/syslinuxcfg.c b/thirdparty/grub-2.04/grub-core/commands/syslinuxcfg.c deleted file mode 100644 index 7be28fada..000000000 --- a/thirdparty/grub-2.04/grub-core/commands/syslinuxcfg.c +++ /dev/null @@ -1,217 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2013 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -/* Helper for syslinux_file. */ -static grub_err_t -syslinux_file_getline (char **line, int cont __attribute__ ((unused)), - void *data __attribute__ ((unused))) -{ - *line = 0; - return GRUB_ERR_NONE; -} - -static const struct grub_arg_option options[] = - { - {"root", 'r', 0, - N_("root directory of the syslinux disk [default=/]."), - N_("DIR"), ARG_TYPE_STRING}, - {"cwd", 'c', 0, - N_("current directory of syslinux [default is parent directory of input file]."), - N_("DIR"), ARG_TYPE_STRING}, - {"isolinux", 'i', 0, N_("assume input is an isolinux configuration file."), 0, 0}, - {"pxelinux", 'p', 0, N_("assume input is a pxelinux configuration file."), 0, 0}, - {"syslinux", 's', 0, N_("assume input is a syslinux configuration file."), 0, 0}, - {0, 0, 0, 0, 0, 0} - }; - -enum - { - OPTION_ROOT, - OPTION_CWD, - OPTION_ISOLINUX, - OPTION_PXELINUX, - OPTION_SYSLINUX - }; - -static grub_err_t -syslinux_file (grub_extcmd_context_t ctxt, const char *filename) -{ - char *result; - const char *root = ctxt->state[OPTION_ROOT].set ? ctxt->state[OPTION_ROOT].arg : "/"; - const char *cwd = ctxt->state[OPTION_CWD].set ? ctxt->state[OPTION_CWD].arg : NULL; - grub_syslinux_flavour_t flav = GRUB_SYSLINUX_UNKNOWN; - char *cwdf = NULL; - grub_menu_t menu; - - if (ctxt->state[OPTION_ISOLINUX].set) - flav = GRUB_SYSLINUX_ISOLINUX; - if (ctxt->state[OPTION_PXELINUX].set) - flav = GRUB_SYSLINUX_PXELINUX; - if (ctxt->state[OPTION_SYSLINUX].set) - flav = GRUB_SYSLINUX_SYSLINUX; - - if (!cwd) - { - char *p; - cwdf = grub_strdup (filename); - if (!cwdf) - return grub_errno; - p = grub_strrchr (cwdf, '/'); - if (!p) - { - grub_free (cwdf); - cwd = "/"; - cwdf = NULL; - } - else - { - *p = '\0'; - cwd = cwdf; - } - } - - grub_dprintf ("syslinux", - "transforming syslinux config %s, root = %s, cwd = %s\n", - filename, root, cwd); - - result = grub_syslinux_config_file (root, root, cwd, cwd, filename, flav); - if (!result) - return grub_errno; - - grub_dprintf ("syslinux", "syslinux config transformed\n"); - - menu = grub_env_get_menu (); - if (! menu) - { - menu = grub_zalloc (sizeof (*menu)); - if (! menu) - { - grub_free (result); - return grub_errno; - } - - grub_env_set_menu (menu); - } - - grub_normal_parse_line (result, syslinux_file_getline, NULL); - grub_print_error (); - grub_free (result); - grub_free (cwdf); - - return GRUB_ERR_NONE; -} - -static grub_err_t -grub_cmd_syslinux_source (grub_extcmd_context_t ctxt, - int argc, char **args) -{ - int new_env, extractor; - grub_err_t ret; - - if (argc != 1) - return grub_error (GRUB_ERR_BAD_ARGUMENT, N_("filename expected")); - - extractor = (ctxt->extcmd->cmd->name[0] == 'e'); - new_env = (ctxt->extcmd->cmd->name[extractor ? (sizeof ("extract_syslinux_entries_") - 1) - : (sizeof ("syslinux_") - 1)] == 'c'); - - if (new_env) - grub_cls (); - - if (new_env && !extractor) - grub_env_context_open (); - if (extractor) - grub_env_extractor_open (!new_env); - - ret = syslinux_file (ctxt, args[0]); - - if (new_env) - { - grub_menu_t menu; - menu = grub_env_get_menu (); - if (menu && menu->size) - grub_show_menu (menu, 1, 0); - if (!extractor) - grub_env_context_close (); - } - if (extractor) - grub_env_extractor_close (!new_env); - - return ret; -} - - -static grub_extcmd_t cmd_source, cmd_configfile; -static grub_extcmd_t cmd_source_extract, cmd_configfile_extract; - -GRUB_MOD_INIT(syslinuxcfg) -{ - cmd_source - = grub_register_extcmd ("syslinux_source", - grub_cmd_syslinux_source, 0, - N_("FILE"), - /* TRANSLATORS: "syslinux config" means - "config as used by syslinux". */ - N_("Execute syslinux config in same context"), - options); - cmd_configfile - = grub_register_extcmd ("syslinux_configfile", - grub_cmd_syslinux_source, 0, - N_("FILE"), - N_("Execute syslinux config in new context"), - options); - cmd_source_extract - = grub_register_extcmd ("extract_syslinux_entries_source", - grub_cmd_syslinux_source, 0, - N_("FILE"), - N_("Execute syslinux config in same context taking only menu entries"), - options); - cmd_configfile_extract - = grub_register_extcmd ("extract_syslinux_entries_configfile", - grub_cmd_syslinux_source, 0, - N_("FILE"), - N_("Execute syslinux config in new context taking only menu entries"), - options); -} - -GRUB_MOD_FINI(syslinuxcfg) -{ - grub_unregister_extcmd (cmd_source); - grub_unregister_extcmd (cmd_configfile); - grub_unregister_extcmd (cmd_source_extract); - grub_unregister_extcmd (cmd_configfile_extract); -} diff --git a/thirdparty/grub-2.04/grub-core/commands/terminal.c b/thirdparty/grub-2.04/grub-core/commands/terminal.c deleted file mode 100644 index 3002186d2..000000000 --- a/thirdparty/grub-2.04/grub-core/commands/terminal.c +++ /dev/null @@ -1,285 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2009,2010 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -struct grub_term_autoload *grub_term_input_autoload = NULL; -struct grub_term_autoload *grub_term_output_autoload = NULL; - -struct abstract_terminal -{ - struct abstract_terminal *next; - struct abstract_terminal *prev; - const char *name; - grub_err_t (*init) (struct abstract_terminal *term); - grub_err_t (*fini) (struct abstract_terminal *term); -}; - -static grub_err_t -handle_command (int argc, char **args, struct abstract_terminal **enabled, - struct abstract_terminal **disabled, - struct grub_term_autoload *autoloads, - const char *active_str, - const char *available_str) -{ - int i; - struct abstract_terminal *term; - struct grub_term_autoload *aut; - - if (argc == 0) - { - grub_puts_ (active_str); - for (term = *enabled; term; term = term->next) - grub_printf ("%s ", term->name); - grub_printf ("\n"); - grub_puts_ (available_str); - for (term = *disabled; term; term = term->next) - grub_printf ("%s ", term->name); - /* This is quadratic but we don't expect mode than 30 terminal - modules ever. */ - for (aut = autoloads; aut; aut = aut->next) - { - for (term = *disabled; term; term = term->next) - if (grub_strcmp (term->name, aut->name) == 0 - || (aut->name[0] && aut->name[grub_strlen (aut->name) - 1] == '*' - && grub_memcmp (term->name, aut->name, - grub_strlen (aut->name) - 1) == 0)) - break; - if (!term) - for (term = *enabled; term; term = term->next) - if (grub_strcmp (term->name, aut->name) == 0 - || (aut->name[0] && aut->name[grub_strlen (aut->name) - 1] == '*' - && grub_memcmp (term->name, aut->name, - grub_strlen (aut->name) - 1) == 0)) - break; - if (!term) - grub_printf ("%s ", aut->name); - } - grub_printf ("\n"); - return GRUB_ERR_NONE; - } - i = 0; - - if (grub_strcmp (args[0], "--append") == 0 - || grub_strcmp (args[0], "--remove") == 0) - i++; - - if (i == argc) - return grub_error (GRUB_ERR_BAD_ARGUMENT, N_ ("no terminal specified")); - - for (; i < argc; i++) - { - int again = 0; - while (1) - { - for (term = *disabled; term; term = term->next) - if (grub_strcmp (args[i], term->name) == 0 - || (grub_strcmp (args[i], "ofconsole") == 0 - && grub_strcmp ("console", term->name) == 0)) - break; - if (term == 0) - for (term = *enabled; term; term = term->next) - if (grub_strcmp (args[i], term->name) == 0 - || (grub_strcmp (args[i], "ofconsole") == 0 - && grub_strcmp ("console", term->name) == 0)) - break; - if (term) - break; - if (again) - return grub_error (GRUB_ERR_BAD_ARGUMENT, - N_("terminal `%s' isn't found"), - args[i]); - for (aut = autoloads; aut; aut = aut->next) - if (grub_strcmp (args[i], aut->name) == 0 - || (grub_strcmp (args[i], "ofconsole") == 0 - && grub_strcmp ("console", aut->name) == 0) - || (aut->name[0] && aut->name[grub_strlen (aut->name) - 1] == '*' - && grub_memcmp (args[i], aut->name, - grub_strlen (aut->name) - 1) == 0)) - { - grub_dl_t mod; - mod = grub_dl_load (aut->modname); - if (mod) - grub_dl_ref (mod); - grub_errno = GRUB_ERR_NONE; - break; - } - if (grub_memcmp (args[i], "serial_usb", - sizeof ("serial_usb") - 1) == 0 - && grub_term_poll_usb) - { - grub_term_poll_usb (1); - again = 1; - continue; - } - if (!aut) - return grub_error (GRUB_ERR_BAD_ARGUMENT, - N_("terminal `%s' isn't found"), - args[i]); - again = 1; - } - } - - if (grub_strcmp (args[0], "--append") == 0) - { - for (i = 1; i < argc; i++) - { - for (term = *disabled; term; term = term->next) - if (grub_strcmp (args[i], term->name) == 0 - || (grub_strcmp (args[i], "ofconsole") == 0 - && grub_strcmp ("console", term->name) == 0)) - break; - if (term) - { - if (term->init && term->init (term) != GRUB_ERR_NONE) - return grub_errno; - - grub_list_remove (GRUB_AS_LIST (term)); - grub_list_push (GRUB_AS_LIST_P (enabled), GRUB_AS_LIST (term)); - } - } - return GRUB_ERR_NONE; - } - - if (grub_strcmp (args[0], "--remove") == 0) - { - for (i = 1; i < argc; i++) - { - for (term = *enabled; term; term = term->next) - if (grub_strcmp (args[i], term->name) == 0 - || (grub_strcmp (args[i], "ofconsole") == 0 - && grub_strcmp ("console", term->name) == 0)) - break; - if (term) - { - if (!term->next && term == *enabled) - return grub_error (GRUB_ERR_BAD_ARGUMENT, - "can't remove the last terminal"); - grub_list_remove (GRUB_AS_LIST (term)); - if (term->fini) - term->fini (term); - grub_list_push (GRUB_AS_LIST_P (disabled), GRUB_AS_LIST (term)); - } - } - return GRUB_ERR_NONE; - } - for (i = 0; i < argc; i++) - { - for (term = *disabled; term; term = term->next) - if (grub_strcmp (args[i], term->name) == 0 - || (grub_strcmp (args[i], "ofconsole") == 0 - && grub_strcmp ("console", term->name) == 0)) - break; - if (term) - { - if (term->init && term->init (term) != GRUB_ERR_NONE) - return grub_errno; - - grub_list_remove (GRUB_AS_LIST (term)); - grub_list_push (GRUB_AS_LIST_P (enabled), GRUB_AS_LIST (term)); - } - } - - { - struct abstract_terminal *next; - for (term = *enabled; term; term = next) - { - next = term->next; - for (i = 0; i < argc; i++) - if (grub_strcmp (args[i], term->name) == 0 - || (grub_strcmp (args[i], "ofconsole") == 0 - && grub_strcmp ("console", term->name) == 0)) - break; - if (i == argc) - { - if (!term->next && term == *enabled) - return grub_error (GRUB_ERR_BAD_ARGUMENT, - "can't remove the last terminal"); - grub_list_remove (GRUB_AS_LIST (term)); - if (term->fini) - term->fini (term); - grub_list_push (GRUB_AS_LIST_P (disabled), GRUB_AS_LIST (term)); - } - } - } - - return GRUB_ERR_NONE; -} - -static grub_err_t -grub_cmd_terminal_input (grub_command_t cmd __attribute__ ((unused)), - int argc, char **args) -{ - (void) GRUB_FIELD_MATCH (grub_term_inputs, struct abstract_terminal *, next); - (void) GRUB_FIELD_MATCH (grub_term_inputs, struct abstract_terminal *, prev); - (void) GRUB_FIELD_MATCH (grub_term_inputs, struct abstract_terminal *, name); - (void) GRUB_FIELD_MATCH (grub_term_inputs, struct abstract_terminal *, init); - (void) GRUB_FIELD_MATCH (grub_term_inputs, struct abstract_terminal *, fini); - return handle_command (argc, args, - (struct abstract_terminal **) (void *) &grub_term_inputs, - (struct abstract_terminal **) (void *) &grub_term_inputs_disabled, - grub_term_input_autoload, - N_ ("Active input terminals:"), - N_ ("Available input terminals:")); -} - -static grub_err_t -grub_cmd_terminal_output (grub_command_t cmd __attribute__ ((unused)), - int argc, char **args) -{ - (void) GRUB_FIELD_MATCH (grub_term_outputs, struct abstract_terminal *, next); - (void) GRUB_FIELD_MATCH (grub_term_outputs, struct abstract_terminal *, prev); - (void) GRUB_FIELD_MATCH (grub_term_outputs, struct abstract_terminal *, name); - (void) GRUB_FIELD_MATCH (grub_term_outputs, struct abstract_terminal *, init); - (void) GRUB_FIELD_MATCH (grub_term_outputs, struct abstract_terminal *, fini); - return handle_command (argc, args, - (struct abstract_terminal **) (void *) &grub_term_outputs, - (struct abstract_terminal **) (void *) &grub_term_outputs_disabled, - grub_term_output_autoload, - N_ ("Active output terminals:"), - N_ ("Available output terminals:")); -} - -static grub_command_t cmd_terminal_input, cmd_terminal_output; - -GRUB_MOD_INIT(terminal) -{ - cmd_terminal_input = - grub_register_command ("terminal_input", grub_cmd_terminal_input, - N_("[--append|--remove] " - "[TERMINAL1] [TERMINAL2] ..."), - N_("List or select an input terminal.")); - cmd_terminal_output = - grub_register_command ("terminal_output", grub_cmd_terminal_output, - N_("[--append|--remove] " - "[TERMINAL1] [TERMINAL2] ..."), - N_("List or select an output terminal.")); -} - -GRUB_MOD_FINI(terminal) -{ - grub_unregister_command (cmd_terminal_input); - grub_unregister_command (cmd_terminal_output); -} diff --git a/thirdparty/grub-2.04/grub-core/commands/test.c b/thirdparty/grub-2.04/grub-core/commands/test.c deleted file mode 100644 index 4e929e045..000000000 --- a/thirdparty/grub-2.04/grub-core/commands/test.c +++ /dev/null @@ -1,455 +0,0 @@ -/* test.c -- The test command.. */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2005,2007,2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -/* A simple implementation for signed numbers. */ -static int -grub_strtosl (char *arg, char **end, int base) -{ - if (arg[0] == '-') - return -grub_strtoul (arg + 1, end, base); - return grub_strtoul (arg, end, base); -} - -/* Context for test_parse. */ -struct test_parse_ctx -{ - int invert; - int or, and; - int file_exists; - struct grub_dirhook_info file_info; - char *filename; -}; - -/* Take care of discarding and inverting. */ -static void -update_val (int val, struct test_parse_ctx *ctx) -{ - ctx->and = ctx->and && (ctx->invert ? ! val : val); - ctx->invert = 0; -} - -/* A hook for iterating directories. */ -static int -find_file (const char *cur_filename, const struct grub_dirhook_info *info, - void *data) -{ - struct test_parse_ctx *ctx = data; - - if ((info->case_insensitive ? grub_strcasecmp (cur_filename, ctx->filename) - : grub_strcmp (cur_filename, ctx->filename)) == 0) - { - ctx->file_info = *info; - ctx->file_exists = 1; - return 1; - } - return 0; -} - -/* Check if file exists and fetch its information. */ -static void -get_fileinfo (char *path, struct test_parse_ctx *ctx) -{ - char *pathname; - char *device_name; - grub_fs_t fs; - grub_device_t dev; - - ctx->file_exists = 0; - device_name = grub_file_get_device_name (path); - dev = grub_device_open (device_name); - if (! dev) - { - grub_free (device_name); - return; - } - - fs = grub_fs_probe (dev); - if (! fs) - { - grub_free (device_name); - grub_device_close (dev); - return; - } - - pathname = grub_strchr (path, ')'); - if (! pathname) - pathname = path; - else - pathname++; - - /* Remove trailing '/'. */ - while (*pathname && pathname[grub_strlen (pathname) - 1] == '/') - pathname[grub_strlen (pathname) - 1] = 0; - - /* Split into path and filename. */ - ctx->filename = grub_strrchr (pathname, '/'); - if (! ctx->filename) - { - path = grub_strdup ("/"); - ctx->filename = pathname; - } - else - { - ctx->filename++; - path = grub_strdup (pathname); - path[ctx->filename - pathname] = 0; - } - - /* It's the whole device. */ - if (! *pathname) - { - ctx->file_exists = 1; - grub_memset (&ctx->file_info, 0, sizeof (ctx->file_info)); - /* Root is always a directory. */ - ctx->file_info.dir = 1; - - /* Fetch writing time. */ - ctx->file_info.mtimeset = 0; - if (fs->fs_mtime) - { - if (! fs->fs_mtime (dev, &ctx->file_info.mtime)) - ctx->file_info.mtimeset = 1; - grub_errno = GRUB_ERR_NONE; - } - } - else - (fs->fs_dir) (dev, path, find_file, ctx); - - grub_device_close (dev); - grub_free (path); - grub_free (device_name); -} - -/* Parse a test expression starting from *argn. */ -static int -test_parse (char **args, int *argn, int argc) -{ - struct test_parse_ctx ctx = { - .and = 1, - .or = 0, - .invert = 0 - }; - - /* Here we have the real parsing. */ - while (*argn < argc) - { - /* First try 3 argument tests. */ - if (*argn + 2 < argc) - { - /* String tests. */ - if (grub_strcmp (args[*argn + 1], "=") == 0 - || grub_strcmp (args[*argn + 1], "==") == 0) - { - update_val (grub_strcmp (args[*argn], args[*argn + 2]) == 0, - &ctx); - (*argn) += 3; - continue; - } - - if (grub_strcmp (args[*argn + 1], "!=") == 0) - { - update_val (grub_strcmp (args[*argn], args[*argn + 2]) != 0, - &ctx); - (*argn) += 3; - continue; - } - - /* GRUB extension: lexicographical sorting. */ - if (grub_strcmp (args[*argn + 1], "<") == 0) - { - update_val (grub_strcmp (args[*argn], args[*argn + 2]) < 0, - &ctx); - (*argn) += 3; - continue; - } - - if (grub_strcmp (args[*argn + 1], "<=") == 0) - { - update_val (grub_strcmp (args[*argn], args[*argn + 2]) <= 0, - &ctx); - (*argn) += 3; - continue; - } - - if (grub_strcmp (args[*argn + 1], ">") == 0) - { - update_val (grub_strcmp (args[*argn], args[*argn + 2]) > 0, - &ctx); - (*argn) += 3; - continue; - } - - if (grub_strcmp (args[*argn + 1], ">=") == 0) - { - update_val (grub_strcmp (args[*argn], args[*argn + 2]) >= 0, - &ctx); - (*argn) += 3; - continue; - } - - /* Number tests. */ - if (grub_strcmp (args[*argn + 1], "-eq") == 0) - { - update_val (grub_strtosl (args[*argn], 0, 0) - == grub_strtosl (args[*argn + 2], 0, 0), &ctx); - (*argn) += 3; - continue; - } - - if (grub_strcmp (args[*argn + 1], "-ge") == 0) - { - update_val (grub_strtosl (args[*argn], 0, 0) - >= grub_strtosl (args[*argn + 2], 0, 0), &ctx); - (*argn) += 3; - continue; - } - - if (grub_strcmp (args[*argn + 1], "-gt") == 0) - { - update_val (grub_strtosl (args[*argn], 0, 0) - > grub_strtosl (args[*argn + 2], 0, 0), &ctx); - (*argn) += 3; - continue; - } - - if (grub_strcmp (args[*argn + 1], "-le") == 0) - { - update_val (grub_strtosl (args[*argn], 0, 0) - <= grub_strtosl (args[*argn + 2], 0, 0), &ctx); - (*argn) += 3; - continue; - } - - if (grub_strcmp (args[*argn + 1], "-lt") == 0) - { - update_val (grub_strtosl (args[*argn], 0, 0) - < grub_strtosl (args[*argn + 2], 0, 0), &ctx); - (*argn) += 3; - continue; - } - - if (grub_strcmp (args[*argn + 1], "-ne") == 0) - { - update_val (grub_strtosl (args[*argn], 0, 0) - != grub_strtosl (args[*argn + 2], 0, 0), &ctx); - (*argn) += 3; - continue; - } - - /* GRUB extension: compare numbers skipping prefixes. - Useful for comparing versions. E.g. vmlinuz-2 -plt vmlinuz-11. */ - if (grub_strcmp (args[*argn + 1], "-pgt") == 0 - || grub_strcmp (args[*argn + 1], "-plt") == 0) - { - int i; - /* Skip common prefix. */ - for (i = 0; args[*argn][i] == args[*argn + 2][i] - && args[*argn][i]; i++); - - /* Go the digits back. */ - i--; - while (grub_isdigit (args[*argn][i]) && i > 0) - i--; - i++; - - if (grub_strcmp (args[*argn + 1], "-pgt") == 0) - update_val (grub_strtoul (args[*argn] + i, 0, 0) - > grub_strtoul (args[*argn + 2] + i, 0, 0), &ctx); - else - update_val (grub_strtoul (args[*argn] + i, 0, 0) - < grub_strtoul (args[*argn + 2] + i, 0, 0), &ctx); - (*argn) += 3; - continue; - } - - /* -nt and -ot tests. GRUB extension: when doing -?t bias - will be added to the first mtime. */ - if (grub_memcmp (args[*argn + 1], "-nt", 3) == 0 - || grub_memcmp (args[*argn + 1], "-ot", 3) == 0) - { - struct grub_dirhook_info file1; - int file1exists; - int bias = 0; - - /* Fetch fileinfo. */ - get_fileinfo (args[*argn], &ctx); - file1 = ctx.file_info; - file1exists = ctx.file_exists; - get_fileinfo (args[*argn + 2], &ctx); - - if (args[*argn + 1][3]) - bias = grub_strtosl (args[*argn + 1] + 3, 0, 0); - - if (grub_memcmp (args[*argn + 1], "-nt", 3) == 0) - update_val ((file1exists && ! ctx.file_exists) - || (file1.mtimeset && ctx.file_info.mtimeset - && file1.mtime + bias > ctx.file_info.mtime), - &ctx); - else - update_val ((! file1exists && ctx.file_exists) - || (file1.mtimeset && ctx.file_info.mtimeset - && file1.mtime + bias < ctx.file_info.mtime), - &ctx); - (*argn) += 3; - continue; - } - } - - /* Two-argument tests. */ - if (*argn + 1 < argc) - { - /* File tests. */ - if (grub_strcmp (args[*argn], "-d") == 0) - { - get_fileinfo (args[*argn + 1], &ctx); - update_val (ctx.file_exists && ctx.file_info.dir, &ctx); - (*argn) += 2; - continue; - } - - if (grub_strcmp (args[*argn], "-e") == 0) - { - get_fileinfo (args[*argn + 1], &ctx); - update_val (ctx.file_exists, &ctx); - (*argn) += 2; - continue; - } - - if (grub_strcmp (args[*argn], "-f") == 0) - { - get_fileinfo (args[*argn + 1], &ctx); - /* FIXME: check for other types. */ - update_val (ctx.file_exists && ! ctx.file_info.dir, &ctx); - (*argn) += 2; - continue; - } - - if (grub_strcmp (args[*argn], "-s") == 0) - { - grub_file_t file; - file = grub_file_open (args[*argn + 1], GRUB_FILE_TYPE_GET_SIZE - | GRUB_FILE_TYPE_NO_DECOMPRESS); - update_val (file && (grub_file_size (file) != 0), &ctx); - if (file) - grub_file_close (file); - grub_errno = GRUB_ERR_NONE; - (*argn) += 2; - continue; - } - - /* String tests. */ - if (grub_strcmp (args[*argn], "-n") == 0) - { - update_val (args[*argn + 1][0], &ctx); - - (*argn) += 2; - continue; - } - if (grub_strcmp (args[*argn], "-z") == 0) - { - update_val (! args[*argn + 1][0], &ctx); - (*argn) += 2; - continue; - } - } - - /* Special modifiers. */ - - /* End of expression. return to parent. */ - if (grub_strcmp (args[*argn], ")") == 0) - { - (*argn)++; - return ctx.or || ctx.and; - } - /* Recursively invoke if parenthesis. */ - if (grub_strcmp (args[*argn], "(") == 0) - { - (*argn)++; - update_val (test_parse (args, argn, argc), &ctx); - continue; - } - - if (grub_strcmp (args[*argn], "!") == 0) - { - ctx.invert = ! ctx.invert; - (*argn)++; - continue; - } - if (grub_strcmp (args[*argn], "-a") == 0) - { - (*argn)++; - continue; - } - if (grub_strcmp (args[*argn], "-o") == 0) - { - ctx.or = ctx.or || ctx.and; - ctx.and = 1; - (*argn)++; - continue; - } - - /* No test found. Interpret if as just a string. */ - update_val (args[*argn][0], &ctx); - (*argn)++; - } - return ctx.or || ctx.and; -} - -static grub_err_t -grub_cmd_test (grub_command_t cmd __attribute__ ((unused)), - int argc, char **args) -{ - int argn = 0; - - if (argc >= 1 && grub_strcmp (args[argc - 1], "]") == 0) - argc--; - - return test_parse (args, &argn, argc) ? GRUB_ERR_NONE - : grub_error (GRUB_ERR_TEST_FAILURE, N_("false")); -} - -static grub_command_t cmd_1, cmd_2; - -GRUB_MOD_INIT(test) -{ - cmd_1 = grub_register_command ("[", grub_cmd_test, - N_("EXPRESSION ]"), N_("Evaluate an expression.")); - cmd_1->flags |= GRUB_COMMAND_FLAG_EXTRACTOR; - cmd_2 = grub_register_command ("test", grub_cmd_test, - N_("EXPRESSION"), N_("Evaluate an expression.")); - cmd_2->flags |= GRUB_COMMAND_FLAG_EXTRACTOR; -} - -GRUB_MOD_FINI(test) -{ - grub_unregister_command (cmd_1); - grub_unregister_command (cmd_2); -} diff --git a/thirdparty/grub-2.04/grub-core/commands/testload.c b/thirdparty/grub-2.04/grub-core/commands/testload.c deleted file mode 100644 index ff01a0516..000000000 --- a/thirdparty/grub-2.04/grub-core/commands/testload.c +++ /dev/null @@ -1,170 +0,0 @@ -/* testload.c - load the same file in multiple ways */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2003,2005,2006,2007,2009,2010 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -/* Helper for grub_cmd_testload. */ -static void -read_progress (grub_disk_addr_t sector __attribute__ ((unused)), - unsigned offset __attribute__ ((unused)), - unsigned len, - void *data __attribute__ ((unused))) -{ - for (; len >= GRUB_DISK_SECTOR_SIZE; len -= GRUB_DISK_SECTOR_SIZE) - grub_xputs ("."); - if (len) - grub_xputs ("."); - grub_refresh (); -} - -static grub_err_t -grub_cmd_testload (struct grub_command *cmd __attribute__ ((unused)), - int argc, char *argv[]) -{ - grub_file_t file; - char *buf; - grub_size_t size; - grub_off_t pos; - - if (argc < 1) - return grub_error (GRUB_ERR_BAD_ARGUMENT, N_("filename expected")); - - file = grub_file_open (argv[0], GRUB_FILE_TYPE_TESTLOAD); - if (! file) - return grub_errno; - - size = grub_file_size (file) & ~(GRUB_DISK_SECTOR_SIZE - 1); - if (size == 0) - { - grub_file_close (file); - return GRUB_ERR_NONE; - } - - buf = grub_malloc (size); - if (! buf) - goto fail; - - grub_printf ("Reading %s sequentially", argv[0]); - file->read_hook = read_progress; - if (grub_file_read (file, buf, size) != (grub_ssize_t) size) - goto fail; - grub_printf (" Done.\n"); - - /* Read sequentially again. */ - grub_printf ("Reading %s sequentially again", argv[0]); - grub_file_seek (file, 0); - - for (pos = 0; pos < size;) - { - char sector[GRUB_DISK_SECTOR_SIZE]; - grub_size_t curlen = GRUB_DISK_SECTOR_SIZE; - - if (curlen > size - pos) - curlen = size - pos; - - if (grub_file_read (file, sector, curlen) - != (grub_ssize_t) curlen) - goto fail; - - if (grub_memcmp (sector, buf + pos, curlen) != 0) - { - grub_printf ("\nDiffers in %lld\n", (unsigned long long) pos); - goto fail; - } - pos += curlen; - } - grub_printf (" Done.\n"); - - /* Read backwards and compare. */ - grub_printf ("Reading %s backwards", argv[0]); - pos = size; - while (pos > 0) - { - char sector[GRUB_DISK_SECTOR_SIZE]; - - if (pos >= GRUB_DISK_SECTOR_SIZE) - pos -= GRUB_DISK_SECTOR_SIZE; - else - pos = 0; - - grub_file_seek (file, pos); - - if (grub_file_read (file, sector, GRUB_DISK_SECTOR_SIZE) - != GRUB_DISK_SECTOR_SIZE) - goto fail; - - if (grub_memcmp (sector, buf + pos, GRUB_DISK_SECTOR_SIZE) != 0) - { - int i; - - grub_printf ("\nDiffers in %lld\n", (unsigned long long) pos); - - for (i = 0; i < GRUB_DISK_SECTOR_SIZE; i++) - { - grub_printf ("%02x ", buf[pos + i]); - if ((i & 15) == 15) - grub_printf ("\n"); - } - - if (i) - grub_refresh (); - - goto fail; - } - } - grub_printf (" Done.\n"); - - return GRUB_ERR_NONE; - - fail: - - grub_file_close (file); - grub_free (buf); - - if (!grub_errno) - grub_error (GRUB_ERR_IO, "bad read"); - return grub_errno; -} - -static grub_command_t cmd; - -GRUB_MOD_INIT(testload) -{ - cmd = - grub_register_command ("testload", grub_cmd_testload, - N_("FILE"), - N_("Load the same file in multiple ways.")); -} - -GRUB_MOD_FINI(testload) -{ - grub_unregister_command (cmd); -} diff --git a/thirdparty/grub-2.04/grub-core/commands/testspeed.c b/thirdparty/grub-2.04/grub-core/commands/testspeed.c deleted file mode 100644 index c13a9b8d8..000000000 --- a/thirdparty/grub-2.04/grub-core/commands/testspeed.c +++ /dev/null @@ -1,115 +0,0 @@ -/* testspeed.c - Command to test file read speed */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2012 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -#define DEFAULT_BLOCK_SIZE 65536 - -static const struct grub_arg_option options[] = - { - {"size", 's', 0, N_("Specify size for each read operation"), 0, ARG_TYPE_INT}, - {0, 0, 0, 0, 0, 0} - }; - -static grub_err_t -grub_cmd_testspeed (grub_extcmd_context_t ctxt, int argc, char **args) -{ - struct grub_arg_list *state = ctxt->state; - grub_uint64_t start; - grub_uint64_t end; - grub_ssize_t block_size; - grub_disk_addr_t total_size; - char *buffer; - grub_file_t file; - grub_uint64_t whole, fraction; - - if (argc == 0) - return grub_error (GRUB_ERR_BAD_ARGUMENT, N_("filename expected")); - - block_size = (state[0].set) ? - grub_strtoul (state[0].arg, 0, 0) : DEFAULT_BLOCK_SIZE; - - if (block_size <= 0) - return grub_error (GRUB_ERR_BAD_ARGUMENT, N_("invalid block size")); - - buffer = grub_malloc (block_size); - if (buffer == NULL) - return grub_errno; - - file = grub_file_open (args[0], GRUB_FILE_TYPE_TESTLOAD); - if (file == NULL) - goto quit; - - total_size = 0; - start = grub_get_time_ms (); - while (1) - { - grub_ssize_t size = grub_file_read (file, buffer, block_size); - if (size <= 0) - break; - total_size += size; - } - end = grub_get_time_ms (); - grub_file_close (file); - - grub_printf_ (N_("File size: %s\n"), - grub_get_human_size (total_size, GRUB_HUMAN_SIZE_NORMAL)); - whole = grub_divmod64 (end - start, 1000, &fraction); - grub_printf_ (N_("Elapsed time: %d.%03d s \n"), - (unsigned) whole, - (unsigned) fraction); - - if (end != start) - { - grub_uint64_t speed = - grub_divmod64 (total_size * 100ULL * 1000ULL, end - start, 0); - - grub_printf_ (N_("Speed: %s \n"), - grub_get_human_size (speed, - GRUB_HUMAN_SIZE_SPEED)); - } - - quit: - grub_free (buffer); - - return grub_errno; -} - -static grub_extcmd_t cmd; - -GRUB_MOD_INIT(testspeed) -{ - cmd = grub_register_extcmd ("testspeed", grub_cmd_testspeed, 0, N_("[-s SIZE] FILENAME"), - N_("Test file read speed."), - options); -} - -GRUB_MOD_FINI(testspeed) -{ - grub_unregister_extcmd (cmd); -} diff --git a/thirdparty/grub-2.04/grub-core/commands/time.c b/thirdparty/grub-2.04/grub-core/commands/time.c deleted file mode 100644 index 40d496e7b..000000000 --- a/thirdparty/grub-2.04/grub-core/commands/time.c +++ /dev/null @@ -1,68 +0,0 @@ -/* echo.c - Command to display a line of text */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2011 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - - -static grub_err_t -grub_cmd_time (grub_command_t ctxt __attribute__ ((unused)), - int argc, char **args) -{ - grub_command_t cmd; - grub_uint32_t start; - grub_uint32_t end; - - if (argc == 0) - return grub_error (GRUB_ERR_BAD_ARGUMENT, N_("no command is specified")); - - cmd = grub_command_find (args[0]); - - if (!cmd) - return grub_error (GRUB_ERR_UNKNOWN_COMMAND, N_("can't find command `%s'"), - args[0]); - - start = grub_get_time_ms (); - (cmd->func) (cmd, argc - 1, &args[1]); - end = grub_get_time_ms (); - - grub_printf_ (N_("Elapsed time: %d.%03d seconds \n"), (end - start) / 1000, - (end - start) % 1000); - - return grub_errno; -} - -static grub_command_t cmd; - -GRUB_MOD_INIT(time) -{ - cmd = grub_register_command ("time", grub_cmd_time, - N_("COMMAND [ARGS]"), - N_("Measure time used by COMMAND")); -} - -GRUB_MOD_FINI(time) -{ - grub_unregister_command (cmd); -} diff --git a/thirdparty/grub-2.04/grub-core/commands/tpm.c b/thirdparty/grub-2.04/grub-core/commands/tpm.c deleted file mode 100644 index 1441c494d..000000000 --- a/thirdparty/grub-2.04/grub-core/commands/tpm.c +++ /dev/null @@ -1,102 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2018 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - * - * Core TPM support code. - */ - -#include -#include -#include -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -grub_err_t -grub_tpm_measure (unsigned char *buf, grub_size_t size, grub_uint8_t pcr, - const char *description) -{ - return grub_tpm_log_event (buf, size, pcr, description); -} - -static grub_err_t -grub_tpm_verify_init (grub_file_t io, - enum grub_file_type type __attribute__ ((unused)), - void **context, enum grub_verify_flags *flags) -{ - *context = io->name; - *flags |= GRUB_VERIFY_FLAGS_SINGLE_CHUNK; - return GRUB_ERR_NONE; -} - -static grub_err_t -grub_tpm_verify_write (void *context, void *buf, grub_size_t size) -{ - return grub_tpm_measure (buf, size, GRUB_BINARY_PCR, context); -} - -static grub_err_t -grub_tpm_verify_string (char *str, enum grub_verify_string_type type) -{ - const char *prefix = NULL; - char *description; - grub_err_t status; - - switch (type) - { - case GRUB_VERIFY_KERNEL_CMDLINE: - prefix = "kernel_cmdline: "; - break; - case GRUB_VERIFY_MODULE_CMDLINE: - prefix = "module_cmdline: "; - break; - case GRUB_VERIFY_COMMAND: - prefix = "grub_cmd: "; - break; - } - description = grub_malloc (grub_strlen (str) + grub_strlen (prefix) + 1); - if (!description) - return grub_errno; - grub_memcpy (description, prefix, grub_strlen (prefix)); - grub_memcpy (description + grub_strlen (prefix), str, - grub_strlen (str) + 1); - status = - grub_tpm_measure ((unsigned char *) str, grub_strlen (str), - GRUB_STRING_PCR, description); - grub_free (description); - return status; -} - -struct grub_file_verifier grub_tpm_verifier = { - .name = "tpm", - .init = grub_tpm_verify_init, - .write = grub_tpm_verify_write, - .verify_string = grub_tpm_verify_string, -}; - -GRUB_MOD_INIT (tpm) -{ - grub_verifier_register (&grub_tpm_verifier); -} - -GRUB_MOD_FINI (tpm) -{ - grub_verifier_unregister (&grub_tpm_verifier); -} diff --git a/thirdparty/grub-2.04/grub-core/commands/tr.c b/thirdparty/grub-2.04/grub-core/commands/tr.c deleted file mode 100644 index ef72841a2..000000000 --- a/thirdparty/grub-2.04/grub-core/commands/tr.c +++ /dev/null @@ -1,126 +0,0 @@ -/* tr.c -- The tr command. */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2010,2013 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -static const struct grub_arg_option options[] = - { - { "set", 's', 0, N_("Set a variable to return value."), N_("VARNAME"), ARG_TYPE_STRING }, - { "upcase", 'U', 0, N_("Translate to upper case."), 0, 0 }, - { "downcase", 'D', 0, N_("Translate to lower case."), 0, 0 }, - { 0, 0, 0, 0, 0, 0 } - }; - -static const char *letters_lowercase = "abcdefghijklmnopqrstuvwxyz"; -static const char *letters_uppercase = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"; - -static grub_err_t -grub_cmd_tr (grub_extcmd_context_t ctxt, int argc, char **args) -{ - char *var = 0; - const char *input = 0; - char *output = 0, *optr; - const char *s1 = 0; - const char *s2 = 0; - const char *iptr; - - /* Select the defaults from options. */ - if (ctxt->state[0].set) { - var = ctxt->state[0].arg; - input = grub_env_get (var); - } - - if (ctxt->state[1].set) { - s1 = letters_lowercase; - s2 = letters_uppercase; - } - - if (ctxt->state[2].set) { - s1 = letters_uppercase; - s2 = letters_lowercase; - } - - /* Check for arguments and update the defaults. */ - if (argc == 1) - input = args[0]; - - else if (argc == 2) { - s1 = args[0]; - s2 = args[1]; - - } else if (argc == 3) { - s1 = args[0]; - s2 = args[1]; - input = args[2]; - - } else if (argc > 3) - return grub_error (GRUB_ERR_BAD_ARGUMENT, "too many parameters"); - - if (!s1 || !s2 || !input) - return grub_error (GRUB_ERR_BAD_ARGUMENT, "missing parameters"); - - if (grub_strlen (s1) != grub_strlen (s2)) - return grub_error (GRUB_ERR_BAD_ARGUMENT, "set sizes did not match"); - - /* Translate input into output buffer. */ - - output = grub_malloc (grub_strlen (input) + 1); - if (! output) - return grub_errno; - - optr = output; - for (iptr = input; *iptr; iptr++) - { - char *p = grub_strchr (s1, *iptr); - if (p) - *optr++ = s2[p - s1]; - else - *optr++ = *iptr; - } - *optr = '\0'; - - if (ctxt->state[0].set) - grub_env_set (var, output); - else - grub_printf ("%s\n", output); - - grub_free (output); - return GRUB_ERR_NONE; -} - -static grub_extcmd_t cmd; - -GRUB_MOD_INIT(tr) -{ - cmd = grub_register_extcmd ("tr", grub_cmd_tr, 0, N_("[OPTIONS] [SET1] [SET2] [STRING]"), - N_("Translate SET1 characters to SET2 in STRING."), options); -} - -GRUB_MOD_FINI(tr) -{ - grub_unregister_extcmd (cmd); -} diff --git a/thirdparty/grub-2.04/grub-core/commands/true.c b/thirdparty/grub-2.04/grub-core/commands/true.c deleted file mode 100644 index 8cbba6583..000000000 --- a/thirdparty/grub-2.04/grub-core/commands/true.c +++ /dev/null @@ -1,61 +0,0 @@ -/* true.c - true and false commands. */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -static grub_err_t -grub_cmd_true (struct grub_command *cmd __attribute__ ((unused)), - int argc __attribute__ ((unused)), - char *argv[] __attribute__ ((unused))) -{ - return 0; -} - -static grub_err_t -grub_cmd_false (struct grub_command *cmd __attribute__ ((unused)), - int argc __attribute__ ((unused)), - char *argv[] __attribute__ ((unused))) -{ - return grub_error (GRUB_ERR_TEST_FAILURE, N_("false")); -} - -static grub_command_t cmd_true, cmd_false; - - -GRUB_MOD_INIT(true) -{ - cmd_true = - grub_register_command ("true", grub_cmd_true, - /* TRANSLATORS: it's a command description. */ - 0, N_("Do nothing, successfully.")); - cmd_false = - grub_register_command ("false", grub_cmd_false, - /* TRANSLATORS: it's a command description. */ - 0, N_("Do nothing, unsuccessfully.")); -} - -GRUB_MOD_FINI(true) -{ - grub_unregister_command (cmd_true); - grub_unregister_command (cmd_false); -} diff --git a/thirdparty/grub-2.04/grub-core/commands/usbtest.c b/thirdparty/grub-2.04/grub-core/commands/usbtest.c deleted file mode 100644 index 2c6d93fe6..000000000 --- a/thirdparty/grub-2.04/grub-core/commands/usbtest.c +++ /dev/null @@ -1,227 +0,0 @@ -/* usbtest.c - test module for USB */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2008 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -static const char *usb_classes[] = - { - "Unknown", - "Audio", - "Communication Interface", - "HID", - "Unknown", - "Physical", - "Image", - "Printer", - "Mass Storage", - "Hub", - "Data Interface", - "Smart Card", - "Content Security", - "Video" - }; - -static const char *usb_endp_type[] = - { - "Control", - "Isochronous", - "Bulk", - "Interrupt" - }; - -static const char *usb_devspeed[] = - { - "", - "Low", - "Full", - "High" - }; - -#if __GNUC__ >= 9 -#pragma GCC diagnostic push -#pragma GCC diagnostic ignored "-Waddress-of-packed-member" -#endif - -static grub_usb_err_t -grub_usb_get_string (grub_usb_device_t dev, grub_uint8_t index, int langid, - char **string) -{ - struct grub_usb_desc_str descstr; - struct grub_usb_desc_str *descstrp; - grub_usb_err_t err; - - /* Only get the length. */ - err = grub_usb_control_msg (dev, 1 << 7, - 0x06, (3 << 8) | index, - langid, 1, (char *) &descstr); - if (err) - return err; - - descstrp = grub_malloc (descstr.length); - if (! descstrp) - return GRUB_USB_ERR_INTERNAL; - err = grub_usb_control_msg (dev, 1 << 7, - 0x06, (3 << 8) | index, - langid, descstr.length, (char *) descstrp); - - if (descstrp->length == 0) - { - grub_free (descstrp); - *string = grub_strdup (""); - if (! *string) - return GRUB_USB_ERR_INTERNAL; - return GRUB_USB_ERR_NONE; - } - - *string = grub_malloc (descstr.length * 2 + 1); - if (! *string) - { - grub_free (descstrp); - return GRUB_USB_ERR_INTERNAL; - } - - *grub_utf16_to_utf8 ((grub_uint8_t *) *string, descstrp->str, - descstrp->length / 2 - 1) = 0; - grub_free (descstrp); - - return GRUB_USB_ERR_NONE; -} - -#if __GNUC__ >= 9 -#pragma GCC diagnostic pop -#endif - -static void -usb_print_str (const char *description, grub_usb_device_t dev, int idx) -{ - char *name = NULL; - grub_usb_err_t err; - /* XXX: LANGID */ - - if (! idx) - return; - - err = grub_usb_get_string (dev, idx, 0x0409, &name); - if (err) - grub_printf ("Error %d retrieving %s\n", err, description); - else - { - grub_printf ("%s: `%s'\n", description, name); - grub_free (name); - } -} - -static int -usb_iterate (grub_usb_device_t dev, void *data __attribute__ ((unused))) -{ - struct grub_usb_desc_device *descdev; - int i; - - descdev = &dev->descdev; - - usb_print_str ("Product", dev, descdev->strprod); - usb_print_str ("Vendor", dev, descdev->strvendor); - usb_print_str ("Serial", dev, descdev->strserial); - - grub_printf ("Class: (0x%02x) %s, Subclass: 0x%02x, Protocol: 0x%02x\n", - descdev->class, descdev->class < ARRAY_SIZE (usb_classes) - ? usb_classes[descdev->class] : "Unknown", - descdev->subclass, descdev->protocol); - grub_printf ("USB version %d.%d, VendorID: 0x%02x, ProductID: 0x%02x, #conf: %d\n", - descdev->usbrel >> 8, (descdev->usbrel >> 4) & 0x0F, - descdev->vendorid, descdev->prodid, descdev->configcnt); - - grub_printf ("%s speed device\n", usb_devspeed[dev->speed]); - - for (i = 0; i < descdev->configcnt; i++) - { - struct grub_usb_desc_config *config; - - config = dev->config[i].descconf; - usb_print_str ("Configuration:", dev, config->strconfig); - } - - for (i = 0; i < dev->config[0].descconf->numif; i++) - { - int j; - struct grub_usb_desc_if *interf; - interf = dev->config[0].interf[i].descif; - - grub_printf ("Interface #%d: #Endpoints: %d ", - i, interf->endpointcnt); - grub_printf ("Class: (0x%02x) %s, Subclass: 0x%02x, Protocol: 0x%02x\n", - interf->class, interf->class < ARRAY_SIZE (usb_classes) - ? usb_classes[interf->class] : "Unknown", - interf->subclass, interf->protocol); - - usb_print_str ("Interface", dev, interf->strif); - - for (j = 0; j < interf->endpointcnt; j++) - { - struct grub_usb_desc_endp *endp; - endp = &dev->config[0].interf[i].descendp[j]; - - grub_printf ("Endpoint #%d: %s, max packed size: %d, transfer type: %s, latency: %d\n", - endp->endp_addr & 15, - (endp->endp_addr & 128) ? "IN" : "OUT", - endp->maxpacket, usb_endp_type[endp->attrib & 3], - endp->interval); - } - } - - grub_printf("\n"); - - return 0; -} - -static grub_err_t -grub_cmd_usbtest (grub_command_t cmd __attribute__ ((unused)), - int argc __attribute__ ((unused)), - char **args __attribute__ ((unused))) -{ - grub_usb_poll_devices (1); - - grub_printf ("USB devices:\n\n"); - grub_usb_iterate (usb_iterate, NULL); - - return 0; -} - -static grub_command_t cmd; - -GRUB_MOD_INIT(usbtest) -{ - cmd = grub_register_command ("usb", grub_cmd_usbtest, - 0, N_("Test USB support.")); -} - -GRUB_MOD_FINI(usbtest) -{ - grub_unregister_command (cmd); -} diff --git a/thirdparty/grub-2.04/grub-core/commands/verifiers.c b/thirdparty/grub-2.04/grub-core/commands/verifiers.c deleted file mode 100644 index 0dde48182..000000000 --- a/thirdparty/grub-2.04/grub-core/commands/verifiers.c +++ /dev/null @@ -1,228 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2017 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - * - * Verifiers helper. - */ - -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -struct grub_file_verifier *grub_file_verifiers; - -struct grub_verified -{ - grub_file_t file; - void *buf; -}; -typedef struct grub_verified *grub_verified_t; - -static void -verified_free (grub_verified_t verified) -{ - if (verified) - { - grub_free (verified->buf); - grub_free (verified); - } -} - -static grub_ssize_t -verified_read (struct grub_file *file, char *buf, grub_size_t len) -{ - grub_verified_t verified = file->data; - - grub_memcpy (buf, (char *) verified->buf + file->offset, len); - return len; -} - -static grub_err_t -verified_close (struct grub_file *file) -{ - grub_verified_t verified = file->data; - - grub_file_close (verified->file); - verified_free (verified); - file->data = 0; - - /* Device and name are freed by parent. */ - file->device = 0; - file->name = 0; - - return grub_errno; -} - -struct grub_fs verified_fs = -{ - .name = "verified_read", - .fs_read = verified_read, - .fs_close = verified_close -}; - -static grub_file_t -grub_verifiers_open (grub_file_t io, enum grub_file_type type) -{ - grub_verified_t verified = NULL; - struct grub_file_verifier *ver; - void *context; - grub_file_t ret = 0; - grub_err_t err; - int defer = 0; - - grub_dprintf ("verify", "file: %s type: %d\n", io->name, type); - - if ((type & GRUB_FILE_TYPE_MASK) == GRUB_FILE_TYPE_SIGNATURE - || (type & GRUB_FILE_TYPE_MASK) == GRUB_FILE_TYPE_VERIFY_SIGNATURE - || (type & GRUB_FILE_TYPE_SKIP_SIGNATURE)) - return io; - - if (io->device->disk && - (io->device->disk->dev->id == GRUB_DISK_DEVICE_MEMDISK_ID - || io->device->disk->dev->id == GRUB_DISK_DEVICE_PROCFS_ID)) - return io; - - FOR_LIST_ELEMENTS(ver, grub_file_verifiers) - { - enum grub_verify_flags flags = 0; - err = ver->init (io, type, &context, &flags); - if (err) - goto fail_noclose; - if (flags & GRUB_VERIFY_FLAGS_DEFER_AUTH) - { - defer = 1; - continue; - } - if (!(flags & GRUB_VERIFY_FLAGS_SKIP_VERIFICATION)) - break; - } - - if (!ver) - { - if (defer) - { - grub_error (GRUB_ERR_ACCESS_DENIED, - N_("verification requested but nobody cares: %s"), io->name); - goto fail_noclose; - } - - /* No verifiers wanted to verify. Just return underlying file. */ - return io; - } - - ret = grub_malloc (sizeof (*ret)); - if (!ret) - { - goto fail; - } - *ret = *io; - - ret->fs = &verified_fs; - ret->not_easily_seekable = 0; - if (ret->size >> (sizeof (grub_size_t) * GRUB_CHAR_BIT - 1)) - { - grub_error (GRUB_ERR_NOT_IMPLEMENTED_YET, - N_("big file signature isn't implemented yet")); - goto fail; - } - verified = grub_malloc (sizeof (*verified)); - if (!verified) - { - goto fail; - } - verified->buf = grub_malloc (ret->size); - if (!verified->buf) - { - goto fail; - } - if (grub_file_read (io, verified->buf, ret->size) != (grub_ssize_t) ret->size) - { - if (!grub_errno) - grub_error (GRUB_ERR_FILE_READ_ERROR, N_("premature end of file %s"), - io->name); - goto fail; - } - - err = ver->write (context, verified->buf, ret->size); - if (err) - goto fail; - - err = ver->fini ? ver->fini (context) : GRUB_ERR_NONE; - if (err) - goto fail; - - if (ver->close) - ver->close (context); - - FOR_LIST_ELEMENTS_NEXT(ver, grub_file_verifiers) - { - enum grub_verify_flags flags = 0; - err = ver->init (io, type, &context, &flags); - if (err) - goto fail_noclose; - if (flags & GRUB_VERIFY_FLAGS_SKIP_VERIFICATION || - /* Verification done earlier. So, we are happy here. */ - flags & GRUB_VERIFY_FLAGS_DEFER_AUTH) - continue; - err = ver->write (context, verified->buf, ret->size); - if (err) - goto fail; - - err = ver->fini ? ver->fini (context) : GRUB_ERR_NONE; - if (err) - goto fail; - - if (ver->close) - ver->close (context); - } - - verified->file = io; - ret->data = verified; - return ret; - - fail: - ver->close (context); - fail_noclose: - verified_free (verified); - grub_free (ret); - return NULL; -} - -grub_err_t -grub_verify_string (char *str, enum grub_verify_string_type type) -{ - struct grub_file_verifier *ver; - FOR_LIST_ELEMENTS(ver, grub_file_verifiers) - { - grub_err_t err; - err = ver->verify_string ? ver->verify_string (str, type) : GRUB_ERR_NONE; - if (err) - return err; - } - return GRUB_ERR_NONE; -} - -GRUB_MOD_INIT(verifiers) -{ - grub_file_filter_register (GRUB_FILE_FILTER_VERIFY, grub_verifiers_open); -} - -GRUB_MOD_FINI(verifiers) -{ - grub_file_filter_unregister (GRUB_FILE_FILTER_VERIFY); -} diff --git a/thirdparty/grub-2.04/grub-core/commands/videoinfo.c b/thirdparty/grub-2.04/grub-core/commands/videoinfo.c deleted file mode 100644 index 4be8107d5..000000000 --- a/thirdparty/grub-2.04/grub-core/commands/videoinfo.c +++ /dev/null @@ -1,262 +0,0 @@ -/* videoinfo.c - command to list video modes. */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2005,2007,2008,2009,2010 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -struct hook_ctx -{ - unsigned height, width, depth; - struct grub_video_mode_info *current_mode; -}; - -static int -hook (const struct grub_video_mode_info *info, void *hook_arg) -{ - struct hook_ctx *ctx = hook_arg; - - if (ctx->height && ctx->width && (info->width != ctx->width || info->height != ctx->height)) - return 0; - - if (ctx->depth && info->bpp != ctx->depth) - return 0; - - if (info->mode_number == GRUB_VIDEO_MODE_NUMBER_INVALID) - grub_printf (" "); - else - { - if (ctx->current_mode && info->mode_number == ctx->current_mode->mode_number) - grub_printf ("*"); - else - grub_printf (" "); - grub_printf (" 0x%03x ", info->mode_number); - } - grub_printf ("%4d x %4d x %2d (%4d) ", info->width, info->height, info->bpp, - info->pitch); - - if (info->mode_type & GRUB_VIDEO_MODE_TYPE_PURE_TEXT) - grub_xputs (_("Text-only ")); - /* Show mask and position details for direct color modes. */ - if (info->mode_type & GRUB_VIDEO_MODE_TYPE_RGB) - /* TRANSLATORS: "Direct color" is a mode when the color components - are written dirrectly into memory. */ - grub_printf_ (N_("Direct color, mask: %d/%d/%d/%d pos: %d/%d/%d/%d"), - info->red_mask_size, - info->green_mask_size, - info->blue_mask_size, - info->reserved_mask_size, - info->red_field_pos, - info->green_field_pos, - info->blue_field_pos, - info->reserved_field_pos); - if (info->mode_type & GRUB_VIDEO_MODE_TYPE_INDEX_COLOR) - /* TRANSLATORS: In "paletted color" mode you write the index of the color - in the palette. Synonyms include "packed pixel". */ - grub_xputs (_("Paletted ")); - if (info->mode_type & GRUB_VIDEO_MODE_TYPE_YUV) - grub_xputs (_("YUV ")); - if (info->mode_type & GRUB_VIDEO_MODE_TYPE_PLANAR) - /* TRANSLATORS: "Planar" is the video memory where you have to write - in several different banks "plans" to control the different color - components of the same pixel. */ - grub_xputs (_("Planar ")); - if (info->mode_type & GRUB_VIDEO_MODE_TYPE_HERCULES) - grub_xputs (_("Hercules ")); - if (info->mode_type & GRUB_VIDEO_MODE_TYPE_CGA) - grub_xputs (_("CGA ")); - if (info->mode_type & GRUB_VIDEO_MODE_TYPE_NONCHAIN4) - /* TRANSLATORS: Non-chain 4 is a 256-color planar - (unchained) video memory mode. */ - grub_xputs (_("Non-chain 4 ")); - if (info->mode_type & GRUB_VIDEO_MODE_TYPE_1BIT_BITMAP) - grub_xputs (_("Monochrome ")); - if (info->mode_type & GRUB_VIDEO_MODE_TYPE_UNKNOWN) - grub_xputs (_("Unknown video mode ")); - - grub_xputs ("\n"); - - return 0; -} - -static void -print_edid (struct grub_video_edid_info *edid_info) -{ - unsigned int edid_width, edid_height; - - if (grub_video_edid_checksum (edid_info)) - { - grub_puts_ (N_(" EDID checksum invalid")); - grub_errno = GRUB_ERR_NONE; - return; - } - - grub_printf_ (N_(" EDID version: %u.%u\n"), - edid_info->version, edid_info->revision); - if (grub_video_edid_preferred_mode (edid_info, &edid_width, &edid_height) - == GRUB_ERR_NONE) - grub_printf_ (N_(" Preferred mode: %ux%u\n"), edid_width, edid_height); - else - { - grub_printf_ (N_(" No preferred mode available\n")); - grub_errno = GRUB_ERR_NONE; - } -} - -static grub_err_t -grub_cmd_videoinfo (grub_command_t cmd __attribute__ ((unused)), - int argc, char **args) -{ - grub_video_adapter_t adapter; - grub_video_driver_id_t id; - struct hook_ctx ctx; - - ctx.height = ctx.width = ctx.depth = 0; - if (argc) - { - char *ptr; - ptr = args[0]; - ctx.width = grub_strtoul (ptr, &ptr, 0); - if (grub_errno) - return grub_errno; - if (*ptr != 'x') - return grub_error (GRUB_ERR_BAD_ARGUMENT, - N_("invalid video mode specification `%s'"), - args[0]); - ptr++; - ctx.height = grub_strtoul (ptr, &ptr, 0); - if (grub_errno) - return grub_errno; - if (*ptr == 'x') - { - ptr++; - ctx.depth = grub_strtoul (ptr, &ptr, 0); - if (grub_errno) - return grub_errno; - } - } - -#ifdef GRUB_MACHINE_PCBIOS - if (grub_strcmp (cmd->name, "vbeinfo") == 0) - grub_dl_load ("vbe"); -#endif - - id = grub_video_get_driver_id (); - - grub_puts_ (N_("List of supported video modes:")); - grub_puts_ (N_("Legend: mask/position=red/green/blue/reserved")); - - FOR_VIDEO_ADAPTERS (adapter) - { - struct grub_video_mode_info info; - struct grub_video_edid_info edid_info; - - grub_printf_ (N_("Adapter `%s':\n"), adapter->name); - - if (!adapter->iterate) - { - grub_puts_ (N_(" No info available")); - continue; - } - - ctx.current_mode = NULL; - - if (adapter->id == id) - { - if (grub_video_get_info (&info) == GRUB_ERR_NONE) - ctx.current_mode = &info; - else - /* Don't worry about errors. */ - grub_errno = GRUB_ERR_NONE; - } - else - { - if (adapter->init ()) - { - grub_puts_ (N_(" Failed to initialize video adapter")); - grub_errno = GRUB_ERR_NONE; - continue; - } - } - - if (adapter->print_adapter_specific_info) - adapter->print_adapter_specific_info (); - - adapter->iterate (hook, &ctx); - - if (adapter->get_edid && adapter->get_edid (&edid_info) == GRUB_ERR_NONE) - print_edid (&edid_info); - else - grub_errno = GRUB_ERR_NONE; - - ctx.current_mode = NULL; - - if (adapter->id != id) - { - if (adapter->fini ()) - { - grub_errno = GRUB_ERR_NONE; - continue; - } - } - } - return GRUB_ERR_NONE; -} - -static grub_command_t cmd; -#ifdef GRUB_MACHINE_PCBIOS -static grub_command_t cmd_vbe; -#endif - -GRUB_MOD_INIT(videoinfo) -{ - cmd = grub_register_command ("videoinfo", grub_cmd_videoinfo, - /* TRANSLATORS: "x" has to be entered in, - like an identifier, so please don't - use better Unicode codepoints. */ - N_("[WxH[xD]]"), - N_("List available video modes. If " - "resolution is given show only modes" - " matching it.")); -#ifdef GRUB_MACHINE_PCBIOS - cmd_vbe = grub_register_command ("vbeinfo", grub_cmd_videoinfo, - /* TRANSLATORS: "x" has to be entered in, - like an identifier, so please don't - use better Unicode codepoints. */ - N_("[WxH[xD]]"), - N_("List available video modes. If " - "resolution is given show only modes" - " matching it.")); -#endif -} - -GRUB_MOD_FINI(videoinfo) -{ - grub_unregister_command (cmd); -#ifdef GRUB_MACHINE_PCBIOS - grub_unregister_command (cmd_vbe); -#endif -} - diff --git a/thirdparty/grub-2.04/grub-core/commands/videotest.c b/thirdparty/grub-2.04/grub-core/commands/videotest.c deleted file mode 100644 index b6c181b52..000000000 --- a/thirdparty/grub-2.04/grub-core/commands/videotest.c +++ /dev/null @@ -1,241 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2006,2007,2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -static grub_err_t -grub_cmd_videotest (grub_command_t cmd __attribute__ ((unused)), - int argc, char **args) -{ - grub_err_t err; - grub_video_color_t color; - unsigned int x; - unsigned int y; - unsigned int width; - unsigned int height; - int i; - struct grub_video_render_target *text_layer; - grub_video_color_t palette[16]; - const char *mode = NULL; - -#ifdef GRUB_MACHINE_PCBIOS - if (grub_strcmp (cmd->name, "vbetest") == 0) - grub_dl_load ("vbe"); -#endif - mode = grub_env_get ("gfxmode"); - if (argc) - mode = args[0]; - if (!mode) - mode = "auto"; - - err = grub_video_set_mode (mode, GRUB_VIDEO_MODE_TYPE_PURE_TEXT, 0); - if (err) - return err; - - grub_video_get_viewport (&x, &y, &width, &height); - - { - const char *str; - int texty; - grub_font_t sansbig; - grub_font_t sans; - grub_font_t sanssmall; - grub_font_t fixed; - struct grub_font_glyph *glyph; - - if (grub_video_create_render_target (&text_layer, width, height, - GRUB_VIDEO_MODE_TYPE_RGB - | GRUB_VIDEO_MODE_TYPE_ALPHA) - || !text_layer) - goto fail; - - grub_video_set_active_render_target (text_layer); - - color = grub_video_map_rgb (0, 255, 255); - sansbig = grub_font_get ("Unknown Regular 16"); - sans = grub_font_get ("Unknown Regular 16"); - sanssmall = grub_font_get ("Unknown Regular 16"); - fixed = grub_font_get ("Fixed 20"); - if (! sansbig || ! sans || ! sanssmall || ! fixed) - return grub_error (GRUB_ERR_BAD_FONT, "no font loaded"); - - glyph = grub_font_get_glyph (fixed, '*'); - grub_font_draw_glyph (glyph, color, 200 ,0); - - color = grub_video_map_rgb (255, 255, 255); - - texty = 32; - grub_font_draw_string ("The quick brown fox jumped over the lazy dog.", - sans, color, 16, texty); - texty += grub_font_get_descent (sans) + grub_font_get_leading (sans); - - texty += grub_font_get_ascent (fixed); - grub_font_draw_string ("The quick brown fox jumped over the lazy dog.", - fixed, color, 16, texty); - texty += grub_font_get_descent (fixed) + grub_font_get_leading (fixed); - - /* To convert Unicode characters into UTF-8 for this test, the following - command is useful: - echo -ne '\x00\x00\x26\x3A' | iconv -f UTF-32BE -t UTF-8 | od -t x1 - This converts the Unicode character U+263A to UTF-8. */ - - /* Characters used: - Code point Description UTF-8 encoding - ----------- ------------------------------ -------------- - U+263A unfilled smiley face E2 98 BA - U+00A1 inverted exclamation point C2 A1 - U+00A3 British pound currency symbol C2 A3 - U+03C4 Greek tau CF 84 - U+00E4 lowercase letter a with umlaut C3 A4 - U+2124 set 'Z' symbol (integers) E2 84 A4 - U+2286 subset symbol E2 8A 86 - U+211D set 'R' symbol (real numbers) E2 84 9D */ - - str = - "Unicode test: happy\xE2\x98\xBA \xC2\xA3 5.00" - " \xC2\xA1\xCF\x84\xC3\xA4u! " - " \xE2\x84\xA4\xE2\x8A\x86\xE2\x84\x9D"; - color = grub_video_map_rgb (128, 128, 255); - - /* All characters in the string exist in the 'Fixed 20' (10x20) font. */ - texty += grub_font_get_ascent(fixed); - grub_font_draw_string (str, fixed, color, 16, texty); - texty += grub_font_get_descent (fixed) + grub_font_get_leading (fixed); - - texty += grub_font_get_ascent(sansbig); - grub_font_draw_string (str, sansbig, color, 16, texty); - texty += grub_font_get_descent (sansbig) + grub_font_get_leading (sansbig); - - texty += grub_font_get_ascent(sans); - grub_font_draw_string (str, sans, color, 16, texty); - texty += grub_font_get_descent (sans) + grub_font_get_leading (sans); - - texty += grub_font_get_ascent(sanssmall); - grub_font_draw_string (str, sanssmall, color, 16, texty); - texty += (grub_font_get_descent (sanssmall) - + grub_font_get_leading (sanssmall)); - - glyph = grub_font_get_glyph (fixed, '*'); - - for (i = 0; i < 16; i++) - { - color = grub_video_map_color (i); - palette[i] = color; - grub_font_draw_glyph (glyph, color, 16 + i * 16, 220); - } - } - - grub_video_set_active_render_target (GRUB_VIDEO_RENDER_TARGET_DISPLAY); - - for (i = 0; i < 5; i++) - { - - if (i == 0 || i == 1) - { - color = grub_video_map_rgb (0, 0, 0); - grub_video_fill_rect (color, 0, 0, width, height); - - color = grub_video_map_rgb (255, 0, 0); - grub_video_fill_rect (color, 0, 0, 100, 100); - - color = grub_video_map_rgb (0, 255, 0); - grub_video_fill_rect (color, 100, 0, 100, 100); - - color = grub_video_map_rgb (0, 0, 255); - grub_video_fill_rect (color, 200, 0, 100, 100); - - color = grub_video_map_rgb (0, 255, 255); - grub_video_fill_rect (color, 0, 100, 100, 100); - - color = grub_video_map_rgb (255, 0, 255); - grub_video_fill_rect (color, 100, 100, 100, 100); - - color = grub_video_map_rgb (255, 255, 0); - grub_video_fill_rect (color, 200, 100, 100, 100); - - grub_video_set_viewport (x + 150, y + 150, - width - 150 * 2, height - 150 * 2); - color = grub_video_map_rgb (77, 33, 77); - grub_video_fill_rect (color, 0, 0, width, height); - } - - color = grub_video_map_rgb (i, 33, 77); - grub_video_fill_rect (color, 0, 0, width, height); - grub_video_blit_render_target (text_layer, GRUB_VIDEO_BLIT_BLEND, 0, 0, - 0, 0, width, height); - grub_video_swap_buffers (); - } - - grub_getkey (); - - grub_video_delete_render_target (text_layer); - - grub_video_restore (); - - for (i = 0; i < 16; i++) - grub_printf("color %d: %08x\n", i, palette[i]); - - grub_errno = GRUB_ERR_NONE; - return grub_errno; - - fail: - grub_video_delete_render_target (text_layer); - grub_video_restore (); - return grub_errno; -} - -static grub_command_t cmd; -#ifdef GRUB_MACHINE_PCBIOS -static grub_command_t cmd_vbe; -#endif - -GRUB_MOD_INIT(videotest) -{ - cmd = grub_register_command ("videotest", grub_cmd_videotest, - /* TRANSLATORS: "x" has to be entered in, - like an identifier, so please don't - use better Unicode codepoints. */ - N_("[WxH]"), - /* TRANSLATORS: Here, on the other hand, it's - nicer to use unicode cross instead of x. */ - N_("Test video subsystem in mode WxH.")); -#ifdef GRUB_MACHINE_PCBIOS - cmd_vbe = grub_register_command ("vbetest", grub_cmd_videotest, - 0, N_("Test video subsystem.")); -#endif -} - -GRUB_MOD_FINI(videotest) -{ - grub_unregister_command (cmd); -#ifdef GRUB_MACHINE_PCBIOS - grub_unregister_command (cmd_vbe); -#endif -} diff --git a/thirdparty/grub-2.04/grub-core/commands/wildcard.c b/thirdparty/grub-2.04/grub-core/commands/wildcard.c deleted file mode 100644 index 4a106ca04..000000000 --- a/thirdparty/grub-2.04/grub-core/commands/wildcard.c +++ /dev/null @@ -1,626 +0,0 @@ -/* wildcard.c - Wildcard character expansion for GRUB script. */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2010 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include - -#include - -static inline int isregexop (char ch); -static char ** merge (char **lhs, char **rhs); -static char *make_dir (const char *prefix, const char *start, const char *end); -static int make_regex (const char *regex_start, const char *regex_end, - regex_t *regexp); -static void split_path (const char *path, const char **suffix_end, const char **regex_end); -static char ** match_devices (const regex_t *regexp, int noparts); -static char ** match_files (const char *prefix, const char *suffix_start, - const char *suffix_end, const regex_t *regexp); - -static grub_err_t wildcard_expand (const char *s, char ***strs); - -struct grub_script_wildcard_translator grub_filename_translator = { - .expand = wildcard_expand, -}; - -static char ** -merge (char **dest, char **ps) -{ - int i; - int j; - char **p; - - if (! dest) - return ps; - - if (! ps) - return dest; - - for (i = 0; dest[i]; i++) - ; - for (j = 0; ps[j]; j++) - ; - - p = grub_realloc (dest, sizeof (char*) * (i + j + 1)); - if (! p) - { - grub_free (dest); - grub_free (ps); - return 0; - } - - dest = p; - for (j = 0; ps[j]; j++) - dest[i++] = ps[j]; - dest[i] = 0; - - grub_free (ps); - return dest; -} - -static inline int -isregexop (char ch) -{ - return grub_strchr ("*.\\|+{}[]?", ch) ? 1 : 0; -} - -static char * -make_dir (const char *prefix, const char *start, const char *end) -{ - char ch; - unsigned i; - unsigned n; - char *result; - - i = grub_strlen (prefix); - n = i + end - start; - - result = grub_malloc (n + 1); - if (! result) - return 0; - - grub_strcpy (result, prefix); - while (start < end && (ch = *start++)) - if (ch == '\\' && isregexop (*start)) - result[i++] = *start++; - else - result[i++] = ch; - - result[i] = '\0'; - return result; -} - -static int -make_regex (const char *start, const char *end, regex_t *regexp) -{ - char ch; - int i = 0; - unsigned len = end - start; - char *buffer = grub_malloc (len * 2 + 2 + 1); /* worst case size. */ - - if (! buffer) - return 1; - - buffer[i++] = '^'; - while (start < end) - { - /* XXX Only * and ? expansion for now. */ - switch ((ch = *start++)) - { - case '\\': - buffer[i++] = ch; - if (*start != '\0') - buffer[i++] = *start++; - break; - - case '.': - case '(': - case ')': - case '@': - case '+': - case '|': - case '{': - case '}': - case '[': - case ']': - buffer[i++] = '\\'; - buffer[i++] = ch; - break; - - case '*': - buffer[i++] = '.'; - buffer[i++] = '*'; - break; - - case '?': - buffer[i++] = '.'; - break; - - default: - buffer[i++] = ch; - } - } - buffer[i++] = '$'; - buffer[i] = '\0'; - grub_dprintf ("expand", "Regexp is %s\n", buffer); - - if (regcomp (regexp, buffer, RE_SYNTAX_GNU_AWK)) - { - grub_free (buffer); - return 1; - } - - grub_free (buffer); - return 0; -} - -/* Split `str' into two parts: (1) dirname that is regexop free (2) - dirname that has a regexop. */ -static void -split_path (const char *str, const char **noregexop, const char **regexop) -{ - char ch = 0; - int regex = 0; - - const char *end; - const char *split; /* points till the end of dirnaname that doesn't - need expansion. */ - - split = end = str; - while ((ch = *end)) - { - if (ch == '\\' && end[1]) - end++; - - else if (ch == '*' || ch == '?') - regex = 1; - - else if (ch == '/' && ! regex) - split = end + 1; /* forward to next regexop-free dirname */ - - else if (ch == '/' && regex) - break; /* stop at the first dirname with a regexop */ - - end++; - } - - *regexop = end; - if (! regex) - *noregexop = end; - else - *noregexop = split; -} - -/* Context for match_devices. */ -struct match_devices_ctx -{ - const regex_t *regexp; - int noparts; - int ndev; - char **devs; -}; - -/* Helper for match_devices. */ -static int -match_devices_iter (const char *name, void *data) -{ - struct match_devices_ctx *ctx = data; - char **t; - char *buffer; - - /* skip partitions if asked to. */ - if (ctx->noparts && grub_strchr (name, ',')) - return 0; - - buffer = grub_xasprintf ("(%s)", name); - if (! buffer) - return 1; - - grub_dprintf ("expand", "matching: %s\n", buffer); - if (regexec (ctx->regexp, buffer, 0, 0, 0)) - { - grub_dprintf ("expand", "not matched\n"); - grub_free (buffer); - return 0; - } - - t = grub_realloc (ctx->devs, sizeof (char*) * (ctx->ndev + 2)); - if (! t) - { - grub_free (buffer); - return 1; - } - - ctx->devs = t; - ctx->devs[ctx->ndev++] = buffer; - ctx->devs[ctx->ndev] = 0; - return 0; -} - -static char ** -match_devices (const regex_t *regexp, int noparts) -{ - struct match_devices_ctx ctx = { - .regexp = regexp, - .noparts = noparts, - .ndev = 0, - .devs = 0 - }; - int i; - - if (grub_device_iterate (match_devices_iter, &ctx)) - goto fail; - - return ctx.devs; - - fail: - - for (i = 0; ctx.devs && ctx.devs[i]; i++) - grub_free (ctx.devs[i]); - - grub_free (ctx.devs); - - return 0; -} - -/* Context for match_files. */ -struct match_files_ctx -{ - const regex_t *regexp; - char **files; - unsigned nfile; - char *dir; -}; - -/* Helper for match_files. */ -static int -match_files_iter (const char *name, - const struct grub_dirhook_info *info __attribute__((unused)), - void *data) -{ - struct match_files_ctx *ctx = data; - char **t; - char *buffer; - - /* skip . and .. names */ - if (grub_strcmp(".", name) == 0 || grub_strcmp("..", name) == 0) - return 0; - - grub_dprintf ("expand", "matching: %s in %s\n", name, ctx->dir); - if (regexec (ctx->regexp, name, 0, 0, 0)) - return 0; - - grub_dprintf ("expand", "matched\n"); - - buffer = grub_xasprintf ("%s%s", ctx->dir, name); - if (! buffer) - return 1; - - t = grub_realloc (ctx->files, sizeof (char*) * (ctx->nfile + 2)); - if (! t) - { - grub_free (buffer); - return 1; - } - - ctx->files = t; - ctx->files[ctx->nfile++] = buffer; - ctx->files[ctx->nfile] = 0; - return 0; -} - -static char ** -match_files (const char *prefix, const char *suffix, const char *end, - const regex_t *regexp) -{ - struct match_files_ctx ctx = { - .regexp = regexp, - .nfile = 0, - .files = 0 - }; - int i; - const char *path; - char *device_name; - grub_fs_t fs; - grub_device_t dev; - - dev = 0; - device_name = 0; - grub_error_push (); - - ctx.dir = make_dir (prefix, suffix, end); - if (! ctx.dir) - goto fail; - - device_name = grub_file_get_device_name (ctx.dir); - dev = grub_device_open (device_name); - if (! dev) - goto fail; - - fs = grub_fs_probe (dev); - if (! fs) - goto fail; - - if (ctx.dir[0] == '(') - { - path = grub_strchr (ctx.dir, ')'); - if (!path) - goto fail; - path++; - } - else - path = ctx.dir; - - if (fs->fs_dir (dev, path, match_files_iter, &ctx)) - goto fail; - - grub_free (ctx.dir); - grub_device_close (dev); - grub_free (device_name); - grub_error_pop (); - return ctx.files; - - fail: - - grub_free (ctx.dir); - - for (i = 0; ctx.files && ctx.files[i]; i++) - grub_free (ctx.files[i]); - - grub_free (ctx.files); - - if (dev) - grub_device_close (dev); - - grub_free (device_name); - - grub_error_pop (); - return 0; -} - -/* Context for check_file. */ -struct check_file_ctx -{ - const char *basename; - int found; -}; - -/* Helper for check_file. */ -static int -check_file_iter (const char *name, const struct grub_dirhook_info *info, - void *data) -{ - struct check_file_ctx *ctx = data; - - if (ctx->basename[0] == 0 - || (info->case_insensitive ? grub_strcasecmp (name, ctx->basename) == 0 - : grub_strcmp (name, ctx->basename) == 0)) - { - ctx->found = 1; - return 1; - } - - return 0; -} - -static int -check_file (const char *dir, const char *basename) -{ - struct check_file_ctx ctx = { - .basename = basename, - .found = 0 - }; - grub_fs_t fs; - grub_device_t dev; - const char *device_name, *path; - - device_name = grub_file_get_device_name (dir); - dev = grub_device_open (device_name); - if (! dev) - goto fail; - - fs = grub_fs_probe (dev); - if (! fs) - goto fail; - - if (dir[0] == '(') - { - path = grub_strchr (dir, ')'); - if (!path) - goto fail; - path++; - } - else - path = dir; - - fs->fs_dir (dev, path[0] ? path : "/", check_file_iter, &ctx); - if (grub_errno == 0 && basename[0] == 0) - ctx.found = 1; - - fail: - grub_errno = 0; - - return ctx.found; -} - -static void -unescape (char *out, const char *in, const char *end) -{ - char *optr; - const char *iptr; - - for (optr = out, iptr = in; iptr < end;) - { - if (*iptr == '\\' && iptr + 1 < end) - { - *optr++ = iptr[1]; - iptr += 2; - continue; - } - if (*iptr == '\\') - break; - *optr++ = *iptr++; - } - *optr = 0; -} - -static grub_err_t -wildcard_expand (const char *s, char ***strs) -{ - const char *start; - const char *regexop; - const char *noregexop; - char **paths = 0; - int had_regexp = 0; - - unsigned i; - regex_t regexp; - - *strs = 0; - if (s[0] != '/' && s[0] != '(' && s[0] != '*') - return 0; - - start = s; - while (*start) - { - split_path (start, &noregexop, ®exop); - - if (noregexop == regexop) - { - grub_dprintf ("expand", "no expansion needed\n"); - if (paths == 0) - { - paths = grub_malloc (sizeof (char *) * 2); - if (!paths) - goto fail; - paths[0] = grub_malloc (regexop - start + 1); - if (!paths[0]) - goto fail; - unescape (paths[0], start, regexop); - paths[1] = 0; - } - else - { - int j = 0; - for (i = 0; paths[i]; i++) - { - char *o, *oend; - char *n; - char *p; - o = paths[i]; - oend = o + grub_strlen (o); - n = grub_malloc ((oend - o) + (regexop - start) + 1); - if (!n) - goto fail; - grub_memcpy (n, o, oend - o); - - unescape (n + (oend - o), start, regexop); - if (had_regexp) - p = grub_strrchr (n, '/'); - else - p = 0; - if (!p) - { - grub_free (o); - paths[j++] = n; - continue; - } - *p = 0; - if (!check_file (n, p + 1)) - { - grub_dprintf ("expand", "file <%s> in <%s> not found\n", - p + 1, n); - grub_free (o); - grub_free (n); - continue; - } - *p = '/'; - grub_free (o); - paths[j++] = n; - } - if (j == 0) - { - grub_free (paths); - paths = 0; - goto done; - } - paths[j] = 0; - } - grub_dprintf ("expand", "paths[0] = `%s'\n", paths[0]); - start = regexop; - continue; - } - - if (make_regex (noregexop, regexop, ®exp)) - goto fail; - - had_regexp = 1; - - if (paths == 0) - { - if (start == noregexop) /* device part has regexop */ - paths = match_devices (®exp, *start != '('); - - else /* device part explicit wo regexop */ - paths = match_files ("", start, noregexop, ®exp); - } - else - { - char **r = 0; - - for (i = 0; paths[i]; i++) - { - char **p; - - p = match_files (paths[i], start, noregexop, ®exp); - grub_free (paths[i]); - if (! p) - continue; - - r = merge (r, p); - if (! r) - goto fail; - } - grub_free (paths); - paths = r; - } - - regfree (®exp); - if (! paths) - goto done; - - start = regexop; - } - - done: - - *strs = paths; - return 0; - - fail: - - for (i = 0; paths && paths[i]; i++) - grub_free (paths[i]); - grub_free (paths); - regfree (®exp); - return grub_errno; -} diff --git a/thirdparty/grub-2.04/grub-core/commands/xen/lsxen.c b/thirdparty/grub-2.04/grub-core/commands/xen/lsxen.c deleted file mode 100644 index 97713102c..000000000 --- a/thirdparty/grub-2.04/grub-core/commands/xen/lsxen.c +++ /dev/null @@ -1,90 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2011 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -static int -hook (const char *dir, void *hook_data __attribute__ ((unused))) -{ - grub_printf ("%s\n", dir); - return 0; -} - -static grub_err_t -grub_cmd_lsxen (grub_command_t cmd __attribute__ ((unused)), - int argc, char **args) -{ - char *dir; - grub_err_t err; - char *buf; - - if (argc >= 1) - return grub_xenstore_dir (args[0], hook, NULL); - - buf = grub_xenstore_get_file ("domid", NULL); - if (!buf) - return grub_errno; - dir = grub_xasprintf ("/local/domain/%s", buf); - grub_free (buf); - err = grub_xenstore_dir (dir, hook, NULL); - grub_free (dir); - return err; -} - -static grub_err_t -grub_cmd_catxen (grub_command_t cmd __attribute__ ((unused)), - int argc, char **args) -{ - const char *dir = "domid"; - char *buf; - - if (argc >= 1) - dir = args[0]; - - buf = grub_xenstore_get_file (dir, NULL); - if (!buf) - return grub_errno; - grub_xputs (buf); - grub_xputs ("\n"); - grub_free (buf); - return GRUB_ERR_NONE; - -} - -static grub_command_t cmd_ls, cmd_cat; - -GRUB_MOD_INIT (lsxen) -{ - cmd_ls = grub_register_command ("xen_ls", grub_cmd_lsxen, N_("[DIR]"), - N_("List Xen storage.")); - cmd_cat = grub_register_command ("xen_cat", grub_cmd_catxen, N_("[DIR]"), - N_("List Xen storage.")); -} - -GRUB_MOD_FINI (lsxen) -{ - grub_unregister_command (cmd_ls); - grub_unregister_command (cmd_cat); -} diff --git a/thirdparty/grub-2.04/grub-core/commands/xnu_uuid.c b/thirdparty/grub-2.04/grub-core/commands/xnu_uuid.c deleted file mode 100644 index ae4b3a415..000000000 --- a/thirdparty/grub-2.04/grub-core/commands/xnu_uuid.c +++ /dev/null @@ -1,119 +0,0 @@ -/* xnu_uuid.c - transform 64-bit serial number - to 128-bit uuid suitable for xnu. */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 1995,1996,1998,1999,2001,2002, - * 2003, 2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -/* This prefix is used by xnu and boot-132 to hash - together with volume serial. */ -static grub_uint8_t hash_prefix[16] - = {0xB3, 0xE2, 0x0F, 0x39, 0xF2, 0x92, 0x11, 0xD6, - 0x97, 0xA4, 0x00, 0x30, 0x65, 0x43, 0xEC, 0xAC}; - -static grub_err_t -grub_cmd_xnu_uuid (grub_command_t cmd __attribute__ ((unused)), - int argc, char **args) -{ - grub_uint64_t serial; - grub_uint8_t *xnu_uuid; - char uuid_string[sizeof ("xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx")]; - char *ptr; - void *ctx; - int low = 0; - - if (argc < 1) - return grub_error (GRUB_ERR_BAD_ARGUMENT, "UUID required"); - - if (argc > 1 && grub_strcmp (args[0], "-l") == 0) - { - low = 1; - argc--; - args++; - } - - serial = grub_cpu_to_be64 (grub_strtoull (args[0], 0, 16)); - - ctx = grub_zalloc (GRUB_MD_MD5->contextsize); - if (!ctx) - return grub_errno; - GRUB_MD_MD5->init (ctx); - GRUB_MD_MD5->write (ctx, hash_prefix, sizeof (hash_prefix)); - GRUB_MD_MD5->write (ctx, &serial, sizeof (serial)); - GRUB_MD_MD5->final (ctx); - xnu_uuid = GRUB_MD_MD5->read (ctx); - - grub_snprintf (uuid_string, sizeof (uuid_string), - "%02x%02x%02x%02x-%02x%02x-%02x%02x-%02x%02x-%02x%02x%02x%02x%02x%02x", - (unsigned int) xnu_uuid[0], (unsigned int) xnu_uuid[1], - (unsigned int) xnu_uuid[2], (unsigned int) xnu_uuid[3], - (unsigned int) xnu_uuid[4], (unsigned int) xnu_uuid[5], - (unsigned int) ((xnu_uuid[6] & 0xf) | 0x30), - (unsigned int) xnu_uuid[7], - (unsigned int) ((xnu_uuid[8] & 0x3f) | 0x80), - (unsigned int) xnu_uuid[9], - (unsigned int) xnu_uuid[10], (unsigned int) xnu_uuid[11], - (unsigned int) xnu_uuid[12], (unsigned int) xnu_uuid[13], - (unsigned int) xnu_uuid[14], (unsigned int) xnu_uuid[15]); - if (!low) - for (ptr = uuid_string; *ptr; ptr++) - *ptr = grub_toupper (*ptr); - if (argc == 1) - grub_printf ("%s\n", uuid_string); - if (argc > 1) - grub_env_set (args[1], uuid_string); - - grub_free (ctx); - - return GRUB_ERR_NONE; -} - -static grub_command_t cmd; - - -GRUB_MOD_INIT (xnu_uuid) -{ - cmd = grub_register_command ("xnu_uuid", grub_cmd_xnu_uuid, - /* TRANSLATORS: GRUBUUID stands for "filesystem - UUID as used in GRUB". */ - N_("[-l] GRUBUUID [VARNAME]"), - N_("Transform 64-bit UUID to format " - "suitable for XNU. If -l is given keep " - "it lowercase as done by blkid.")); -} - -GRUB_MOD_FINI (xnu_uuid) -{ - grub_unregister_command (cmd); -} diff --git a/thirdparty/grub-2.04/grub-core/disk/AFSplitter.c b/thirdparty/grub-2.04/grub-core/disk/AFSplitter.c deleted file mode 100644 index f5a8ddc61..000000000 --- a/thirdparty/grub-2.04/grub-core/disk/AFSplitter.c +++ /dev/null @@ -1,92 +0,0 @@ -/* - * AFsplitter - Anti forensic information splitter - * Copyright 2004, Clemens Fruhwirth - * - * AFsplitter diffuses information over a large stripe of data, - * therefor supporting secure data destruction. - * - * This program is grub_free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the grub_free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Library General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the grub_free Software - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. - */ - -#include -#include -#include - -gcry_err_code_t AF_merge (const gcry_md_spec_t * hash, grub_uint8_t * src, - grub_uint8_t * dst, grub_size_t blocksize, - grub_size_t blocknumbers); - -static void -diffuse (const gcry_md_spec_t * hash, grub_uint8_t * src, - grub_uint8_t * dst, grub_size_t size) -{ - grub_size_t i; - grub_uint32_t IV; /* host byte order independend hash IV */ - - grub_size_t fullblocks = size / hash->mdlen; - int padding = size % hash->mdlen; - grub_uint8_t final[GRUB_CRYPTO_MAX_MDLEN]; - grub_uint8_t temp[sizeof (IV) + GRUB_CRYPTO_MAX_MDLEN]; - - /* hash block the whole data set with different IVs to produce - * more than just a single data block - */ - for (i = 0; i < fullblocks; i++) - { - IV = grub_cpu_to_be32 (i); - grub_memcpy (temp, &IV, sizeof (IV)); - grub_memcpy (temp + sizeof (IV), src + hash->mdlen * i, hash->mdlen); - grub_crypto_hash (hash, dst + hash->mdlen * i, temp, - sizeof (IV) + hash->mdlen); - } - - if (padding) - { - IV = grub_cpu_to_be32 (i); - grub_memcpy (temp, &IV, sizeof (IV)); - grub_memcpy (temp + sizeof (IV), src + hash->mdlen * i, padding); - grub_crypto_hash (hash, final, temp, sizeof (IV) + padding); - grub_memcpy (dst + hash->mdlen * i, final, padding); - } -} - -/** - * Merges the splitted master key stored on disk into the original key - */ -gcry_err_code_t -AF_merge (const gcry_md_spec_t * hash, grub_uint8_t * src, grub_uint8_t * dst, - grub_size_t blocksize, grub_size_t blocknumbers) -{ - grub_size_t i; - grub_uint8_t *bufblock; - - if (hash->mdlen > GRUB_CRYPTO_MAX_MDLEN || hash->mdlen == 0) - return GPG_ERR_INV_ARG; - - bufblock = grub_zalloc (blocksize); - if (bufblock == NULL) - return GPG_ERR_OUT_OF_MEMORY; - - grub_memset (bufblock, 0, blocksize); - for (i = 0; i < blocknumbers - 1; i++) - { - grub_crypto_xor (bufblock, src + (blocksize * i), bufblock, blocksize); - diffuse (hash, bufblock, bufblock, blocksize); - } - grub_crypto_xor (dst, src + (i * blocksize), bufblock, blocksize); - - grub_free (bufblock); - return GPG_ERR_NO_ERROR; -} diff --git a/thirdparty/grub-2.04/grub-core/disk/ahci.c b/thirdparty/grub-2.04/grub-core/disk/ahci.c deleted file mode 100644 index 0e6d56c24..000000000 --- a/thirdparty/grub-2.04/grub-core/disk/ahci.c +++ /dev/null @@ -1,1163 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2007, 2008, 2009, 2010 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -struct grub_ahci_cmd_head -{ - grub_uint32_t config; - grub_uint32_t transferred; - grub_uint64_t command_table_base; - grub_uint32_t unused[4]; -}; - -struct grub_ahci_prdt_entry -{ - grub_uint64_t data_base; - grub_uint32_t unused; - grub_uint32_t size; -}; - -struct grub_ahci_cmd_table -{ - grub_uint8_t cfis[0x40]; - grub_uint8_t command[0x10]; - grub_uint8_t reserved[0x30]; - struct grub_ahci_prdt_entry prdt[1]; -}; - -struct grub_ahci_hba_port -{ - grub_uint64_t command_list_base; - grub_uint64_t fis_base; - grub_uint32_t intstatus; - grub_uint32_t inten; - grub_uint32_t command; - grub_uint32_t unused1; - grub_uint32_t task_file_data; - grub_uint32_t sig; - grub_uint32_t status; - grub_uint32_t unused2; - grub_uint32_t sata_error; - grub_uint32_t sata_active; - grub_uint32_t command_issue; - grub_uint32_t unused3; - grub_uint32_t fbs; - grub_uint32_t unused4[15]; -}; - -enum grub_ahci_hba_port_command - { - GRUB_AHCI_HBA_PORT_CMD_ST = 0x01, - GRUB_AHCI_HBA_PORT_CMD_SPIN_UP = 0x02, - GRUB_AHCI_HBA_PORT_CMD_POWER_ON = 0x04, - GRUB_AHCI_HBA_PORT_CMD_FRE = 0x10, - GRUB_AHCI_HBA_PORT_CMD_CR = 0x8000, - GRUB_AHCI_HBA_PORT_CMD_FR = 0x4000, - }; - -enum grub_ahci_hba_port_int_status - { - GRUB_AHCI_HBA_PORT_IS_IFS = (1UL << 27), - GRUB_AHCI_HBA_PORT_IS_HBDS = (1UL << 28), - GRUB_AHCI_HBA_PORT_IS_HBFS = (1UL << 29), - GRUB_AHCI_HBA_PORT_IS_TFES = (1UL << 30), - }; - -#define GRUB_AHCI_HBA_PORT_IS_FATAL_MASK ( \ - GRUB_AHCI_HBA_PORT_IS_IFS | \ - GRUB_AHCI_HBA_PORT_IS_HBDS | \ - GRUB_AHCI_HBA_PORT_IS_HBFS | \ - GRUB_AHCI_HBA_PORT_IS_TFES) - -struct grub_ahci_hba -{ - grub_uint32_t cap; - grub_uint32_t global_control; - grub_uint32_t intr_status; - grub_uint32_t ports_implemented; - grub_uint32_t unused1[6]; - grub_uint32_t bios_handoff; - grub_uint32_t unused2[53]; - struct grub_ahci_hba_port ports[32]; -}; - -struct grub_ahci_received_fis -{ - char raw[4096]; -}; - -enum - { - GRUB_AHCI_HBA_CAP_NPORTS_MASK = 0x1f - }; - -enum - { - GRUB_AHCI_HBA_GLOBAL_CONTROL_RESET = 0x00000001, - GRUB_AHCI_HBA_GLOBAL_CONTROL_INTR_EN = 0x00000002, - GRUB_AHCI_HBA_GLOBAL_CONTROL_AHCI_EN = 0x80000000, - }; - -enum - { - GRUB_AHCI_BIOS_HANDOFF_BIOS_OWNED = 1, - GRUB_AHCI_BIOS_HANDOFF_OS_OWNED = 2, - GRUB_AHCI_BIOS_HANDOFF_OS_OWNERSHIP_CHANGED = 8, - GRUB_AHCI_BIOS_HANDOFF_RWC = 8 - }; - - -struct grub_ahci_device -{ - struct grub_ahci_device *next; - struct grub_ahci_device **prev; - volatile struct grub_ahci_hba *hba; - int port; - int num; - struct grub_pci_dma_chunk *command_list_chunk; - volatile struct grub_ahci_cmd_head *command_list; - struct grub_pci_dma_chunk *command_table_chunk; - volatile struct grub_ahci_cmd_table *command_table; - struct grub_pci_dma_chunk *rfis; - int present; - int atapi; -}; - -static grub_err_t -grub_ahci_readwrite_real (struct grub_ahci_device *dev, - struct grub_disk_ata_pass_through_parms *parms, - int spinup, int reset); - - -enum - { - GRUB_AHCI_CONFIG_READ = 0, - GRUB_AHCI_CONFIG_CFIS_LENGTH_MASK = 0x1f, - GRUB_AHCI_CONFIG_ATAPI = 0x20, - GRUB_AHCI_CONFIG_WRITE = 0x40, - GRUB_AHCI_CONFIG_PREFETCH = 0x80, - GRUB_AHCI_CONFIG_RESET = 0x100, - GRUB_AHCI_CONFIG_BIST = 0x200, - GRUB_AHCI_CONFIG_CLEAR_R_OK = 0x400, - GRUB_AHCI_CONFIG_PMP_MASK = 0xf000, - GRUB_AHCI_CONFIG_PRDT_LENGTH_MASK = 0xffff0000, - }; -#define GRUB_AHCI_CONFIG_CFIS_LENGTH_SHIFT 0 -#define GRUB_AHCI_CONFIG_PMP_SHIFT 12 -#define GRUB_AHCI_CONFIG_PRDT_LENGTH_SHIFT 16 -#define GRUB_AHCI_INTERRUPT_ON_COMPLETE 0x80000000 - -#define GRUB_AHCI_PRDT_MAX_CHUNK_LENGTH 0x200000 - -static struct grub_ahci_device *grub_ahci_devices; -static int numdevs; - -static int -grub_ahci_pciinit (grub_pci_device_t dev, - grub_pci_id_t pciid __attribute__ ((unused)), - void *data __attribute__ ((unused))) -{ - grub_pci_address_t addr; - grub_uint32_t class; - grub_uint32_t bar; - unsigned i, nports; - volatile struct grub_ahci_hba *hba; - - /* Read class. */ - addr = grub_pci_make_address (dev, GRUB_PCI_REG_CLASS); - class = grub_pci_read (addr); - - /* Check if this class ID matches that of a PCI IDE Controller. */ - if (class >> 8 != 0x010601) - return 0; - - addr = grub_pci_make_address (dev, GRUB_PCI_REG_ADDRESS_REG5); - - bar = grub_pci_read (addr); - - if ((bar & (GRUB_PCI_ADDR_SPACE_MASK | GRUB_PCI_ADDR_MEM_TYPE_MASK - | GRUB_PCI_ADDR_MEM_PREFETCH)) - != (GRUB_PCI_ADDR_SPACE_MEMORY | GRUB_PCI_ADDR_MEM_TYPE_32)) - return 0; - - addr = grub_pci_make_address (dev, GRUB_PCI_REG_COMMAND); - grub_pci_write_word (addr, grub_pci_read_word (addr) - | GRUB_PCI_COMMAND_MEM_ENABLED | GRUB_PCI_COMMAND_BUS_MASTER); - - hba = grub_pci_device_map_range (dev, bar & GRUB_PCI_ADDR_MEM_MASK, - sizeof (*hba)); - grub_dprintf ("ahci", "dev: %x:%x.%x\n", dev.bus, dev.device, dev.function); - - grub_dprintf ("ahci", "tfd[0]: %x\n", - hba->ports[0].task_file_data); - grub_dprintf ("ahci", "cmd[0]: %x\n", - hba->ports[0].command); - grub_dprintf ("ahci", "st[0]: %x\n", - hba->ports[0].status); - grub_dprintf ("ahci", "err[0]: %x\n", - hba->ports[0].sata_error); - - grub_dprintf ("ahci", "tfd[1]: %x\n", - hba->ports[1].task_file_data); - grub_dprintf ("ahci", "cmd[1]: %x\n", - hba->ports[1].command); - grub_dprintf ("ahci", "st[1]: %x\n", - hba->ports[1].status); - grub_dprintf ("ahci", "err[1]: %x\n", - hba->ports[1].sata_error); - - hba->ports[1].sata_error = hba->ports[1].sata_error; - - grub_dprintf ("ahci", "err[1]: %x\n", - hba->ports[1].sata_error); - - grub_dprintf ("ahci", "BH:%x\n", hba->bios_handoff); - - if (! (hba->bios_handoff & GRUB_AHCI_BIOS_HANDOFF_OS_OWNED)) - { - grub_uint64_t endtime; - - grub_dprintf ("ahci", "Requesting AHCI ownership\n"); - hba->bios_handoff = (hba->bios_handoff & ~GRUB_AHCI_BIOS_HANDOFF_RWC) - | GRUB_AHCI_BIOS_HANDOFF_OS_OWNED; - grub_dprintf ("ahci", "Waiting for BIOS to give up ownership\n"); - endtime = grub_get_time_ms () + 1000; - while ((hba->bios_handoff & GRUB_AHCI_BIOS_HANDOFF_BIOS_OWNED) - && grub_get_time_ms () < endtime); - if (hba->bios_handoff & GRUB_AHCI_BIOS_HANDOFF_BIOS_OWNED) - { - grub_dprintf ("ahci", "Forcibly taking ownership\n"); - hba->bios_handoff = GRUB_AHCI_BIOS_HANDOFF_OS_OWNED; - hba->bios_handoff |= GRUB_AHCI_BIOS_HANDOFF_OS_OWNERSHIP_CHANGED; - } - else - grub_dprintf ("ahci", "AHCI ownership obtained\n"); - } - else - grub_dprintf ("ahci", "AHCI is already in OS mode\n"); - - grub_dprintf ("ahci", "GLC:%x\n", hba->global_control); - - grub_dprintf ("ahci", "err[1]: %x\n", - hba->ports[1].sata_error); - - if (!(hba->global_control & GRUB_AHCI_HBA_GLOBAL_CONTROL_AHCI_EN)) - grub_dprintf ("ahci", "AHCI is in compat mode. Switching\n"); - else - grub_dprintf ("ahci", "AHCI is in AHCI mode.\n"); - - grub_dprintf ("ahci", "err[1]: %x\n", - hba->ports[1].sata_error); - - grub_dprintf ("ahci", "GLC:%x\n", hba->global_control); - - /* { - grub_uint64_t endtime; - hba->global_control |= 1; - endtime = grub_get_time_ms () + 1000; - while (hba->global_control & 1) - if (grub_get_time_ms () > endtime) - { - grub_dprintf ("ahci", "couldn't reset AHCI\n"); - return 0; - } - }*/ - - grub_dprintf ("ahci", "GLC:%x\n", hba->global_control); - - grub_dprintf ("ahci", "err[1]: %x\n", - hba->ports[1].sata_error); - - for (i = 0; i < 5; i++) - { - hba->global_control |= GRUB_AHCI_HBA_GLOBAL_CONTROL_AHCI_EN; - grub_millisleep (1); - if (hba->global_control & GRUB_AHCI_HBA_GLOBAL_CONTROL_AHCI_EN) - break; - } - if (i == 5) - { - grub_dprintf ("ahci", "Couldn't put AHCI in AHCI mode\n"); - return 0; - } - - grub_dprintf ("ahci", "GLC:%x\n", hba->global_control); - - grub_dprintf ("ahci", "err[1]: %x\n", - hba->ports[1].sata_error); - - grub_dprintf ("ahci", "err[1]: %x\n", - hba->ports[1].sata_error); - - grub_dprintf ("ahci", "GLC:%x\n", hba->global_control); - - for (i = 0; i < 5; i++) - { - hba->global_control |= GRUB_AHCI_HBA_GLOBAL_CONTROL_AHCI_EN; - grub_millisleep (1); - if (hba->global_control & GRUB_AHCI_HBA_GLOBAL_CONTROL_AHCI_EN) - break; - } - if (i == 5) - { - grub_dprintf ("ahci", "Couldn't put AHCI in AHCI mode\n"); - return 0; - } - - grub_dprintf ("ahci", "err[1]: %x\n", - hba->ports[1].sata_error); - - grub_dprintf ("ahci", "GLC:%x\n", hba->global_control); - - nports = (GRUB_AHCI_HBA_CAP_NPORTS_MASK) + 1; - - grub_dprintf ("ahci", "%d AHCI ports, PI = 0x%x\n", nports, - hba->ports_implemented); - - struct grub_ahci_device *adevs[GRUB_AHCI_HBA_CAP_NPORTS_MASK + 1]; - struct grub_ahci_device *failed_adevs[GRUB_AHCI_HBA_CAP_NPORTS_MASK + 1]; - grub_uint32_t fr_running = 0; - - for (i = 0; i < nports; i++) - failed_adevs[i] = 0; - for (i = 0; i < nports; i++) - { - if (!(hba->ports_implemented & (1 << i))) - { - adevs[i] = 0; - continue; - } - - adevs[i] = grub_zalloc (sizeof (*adevs[i])); - if (!adevs[i]) - return 1; - - adevs[i]->hba = hba; - adevs[i]->port = i; - adevs[i]->present = 1; - adevs[i]->num = numdevs++; - } - - for (i = 0; i < nports; i++) - if (adevs[i]) - { - adevs[i]->hba->ports[adevs[i]->port].sata_error = adevs[i]->hba->ports[adevs[i]->port].sata_error; - grub_dprintf ("ahci", "port: %d, err: %x\n", adevs[i]->port, - adevs[i]->hba->ports[adevs[i]->port].sata_error); - - adevs[i]->command_list_chunk = grub_memalign_dma32 (1024, sizeof (struct grub_ahci_cmd_head) * 32); - if (!adevs[i]->command_list_chunk) - { - adevs[i] = 0; - continue; - } - - adevs[i]->command_table_chunk = grub_memalign_dma32 (1024, - sizeof (struct grub_ahci_cmd_table)); - if (!adevs[i]->command_table_chunk) - { - grub_dma_free (adevs[i]->command_list_chunk); - adevs[i] = 0; - continue; - } - - adevs[i]->command_list = grub_dma_get_virt (adevs[i]->command_list_chunk); - adevs[i]->command_table = grub_dma_get_virt (adevs[i]->command_table_chunk); - - grub_memset ((void *) adevs[i]->command_list, 0, - sizeof (struct grub_ahci_cmd_table)); - grub_memset ((void *) adevs[i]->command_table, 0, - sizeof (struct grub_ahci_cmd_head) * 32); - - adevs[i]->command_list->command_table_base - = grub_dma_get_phys (adevs[i]->command_table_chunk); - - grub_dprintf ("ahci", "found device ahci%d (port %d), command_table = %p, command_list = %p\n", - adevs[i]->num, adevs[i]->port, grub_dma_get_virt (adevs[i]->command_table_chunk), - grub_dma_get_virt (adevs[i]->command_list_chunk)); - - adevs[i]->hba->ports[adevs[i]->port].command &= ~GRUB_AHCI_HBA_PORT_CMD_FRE; - } - - grub_uint64_t endtime; - endtime = grub_get_time_ms () + 1000; - - while (grub_get_time_ms () < endtime) - { - for (i = 0; i < nports; i++) - if (adevs[i] && (adevs[i]->hba->ports[adevs[i]->port].command & GRUB_AHCI_HBA_PORT_CMD_FR)) - break; - if (i == nports) - break; - } - - for (i = 0; i < nports; i++) - if (adevs[i] && (adevs[i]->hba->ports[adevs[i]->port].command & GRUB_AHCI_HBA_PORT_CMD_FR)) - { - grub_dprintf ("ahci", "couldn't stop FR on port %d\n", i); - failed_adevs[i] = adevs[i]; - adevs[i] = 0; - } - - for (i = 0; i < nports; i++) - if (adevs[i]) - adevs[i]->hba->ports[adevs[i]->port].command &= ~GRUB_AHCI_HBA_PORT_CMD_ST; - endtime = grub_get_time_ms () + 1000; - - while (grub_get_time_ms () < endtime) - { - for (i = 0; i < nports; i++) - if (adevs[i] && (adevs[i]->hba->ports[adevs[i]->port].command & GRUB_AHCI_HBA_PORT_CMD_CR)) - break; - if (i == nports) - break; - } - - for (i = 0; i < nports; i++) - if (adevs[i] && (adevs[i]->hba->ports[adevs[i]->port].command & GRUB_AHCI_HBA_PORT_CMD_CR)) - { - grub_dprintf ("ahci", "couldn't stop CR on port %d\n", i); - failed_adevs[i] = adevs[i]; - adevs[i] = 0; - } - for (i = 0; i < nports; i++) - if (adevs[i]) - { - adevs[i]->hba->ports[adevs[i]->port].inten = 0; - adevs[i]->hba->ports[adevs[i]->port].intstatus = ~0; - // adevs[i]->hba->ports[adevs[i]->port].fbs = 0; - - grub_dprintf ("ahci", "port: %d, err: %x\n", adevs[i]->port, - adevs[i]->hba->ports[adevs[i]->port].sata_error); - - adevs[i]->rfis = grub_memalign_dma32 (4096, - sizeof (struct grub_ahci_received_fis)); - grub_memset ((char *) grub_dma_get_virt (adevs[i]->rfis), 0, - sizeof (struct grub_ahci_received_fis)); - grub_memset ((char *) grub_dma_get_virt (adevs[i]->command_list_chunk), 0, - sizeof (struct grub_ahci_cmd_head)); - grub_memset ((char *) grub_dma_get_virt (adevs[i]->command_table_chunk), 0, - sizeof (struct grub_ahci_cmd_table)); - adevs[i]->hba->ports[adevs[i]->port].fis_base = grub_dma_get_phys (adevs[i]->rfis); - adevs[i]->hba->ports[adevs[i]->port].command_list_base - = grub_dma_get_phys (adevs[i]->command_list_chunk); - adevs[i]->hba->ports[adevs[i]->port].command_issue = 0; - adevs[i]->hba->ports[adevs[i]->port].command |= GRUB_AHCI_HBA_PORT_CMD_FRE; - } - - endtime = grub_get_time_ms () + 1000; - - while (grub_get_time_ms () < endtime) - { - for (i = 0; i < nports; i++) - if (adevs[i] && !(adevs[i]->hba->ports[adevs[i]->port].command & GRUB_AHCI_HBA_PORT_CMD_FR)) - break; - if (i == nports) - break; - } - - for (i = 0; i < nports; i++) - if (adevs[i] && !(adevs[i]->hba->ports[adevs[i]->port].command & GRUB_AHCI_HBA_PORT_CMD_FR)) - { - grub_dprintf ("ahci", "couldn't start FR on port %d\n", i); - failed_adevs[i] = adevs[i]; - adevs[i] = 0; - } - - for (i = 0; i < nports; i++) - if (adevs[i]) - { - grub_dprintf ("ahci", "port: %d, err: %x\n", adevs[i]->port, - adevs[i]->hba->ports[adevs[i]->port].sata_error); - fr_running |= (1 << i); - - adevs[i]->hba->ports[adevs[i]->port].command |= GRUB_AHCI_HBA_PORT_CMD_SPIN_UP; - adevs[i]->hba->ports[adevs[i]->port].command |= GRUB_AHCI_HBA_PORT_CMD_POWER_ON; - adevs[i]->hba->ports[adevs[i]->port].command |= 1 << 28; - - grub_dprintf ("ahci", "port: %d, err: %x\n", adevs[i]->port, - adevs[i]->hba->ports[adevs[i]->port].sata_error); - } - - /* 10ms should actually be enough. */ - endtime = grub_get_time_ms () + 100; - - while (grub_get_time_ms () < endtime) - { - for (i = 0; i < nports; i++) - if (adevs[i] && (adevs[i]->hba->ports[adevs[i]->port].status & 7) != 3) - break; - if (i == nports) - break; - } - - for (i = 0; i < nports; i++) - if (adevs[i] && (adevs[i]->hba->ports[adevs[i]->port].status & 7) != 3) - { - grub_dprintf ("ahci", "couldn't detect device on port %d\n", i); - failed_adevs[i] = adevs[i]; - adevs[i] = 0; - } - - for (i = 0; i < nports; i++) - if (adevs[i]) - { - grub_dprintf ("ahci", "port %d, err: %x\n", adevs[i]->port, - adevs[i]->hba->ports[adevs[i]->port].sata_error); - - adevs[i]->hba->ports[adevs[i]->port].command |= GRUB_AHCI_HBA_PORT_CMD_POWER_ON; - adevs[i]->hba->ports[adevs[i]->port].command |= GRUB_AHCI_HBA_PORT_CMD_SPIN_UP; - - grub_dprintf ("ahci", "port %d, err: %x\n", adevs[i]->port, - adevs[i]->hba->ports[adevs[i]->port].sata_error); - - adevs[i]->hba->ports[adevs[i]->port].sata_error = ~0; - grub_dprintf ("ahci", "port %d, err: %x\n", adevs[i]->port, - adevs[i]->hba->ports[adevs[i]->port].sata_error); - - grub_dprintf ("ahci", "port %d, offset: %x, tfd:%x, CMD: %x\n", adevs[i]->port, - (int) ((char *) &adevs[i]->hba->ports[adevs[i]->port].task_file_data - - (char *) adevs[i]->hba), - adevs[i]->hba->ports[adevs[i]->port].task_file_data, - adevs[i]->hba->ports[adevs[i]->port].command); - - grub_dprintf ("ahci", "port %d, err: %x\n", adevs[i]->port, - adevs[i]->hba->ports[adevs[i]->port].sata_error); - } - - - for (i = 0; i < nports; i++) - if (adevs[i]) - { - grub_dprintf ("ahci", "port %d, offset: %x, tfd:%x, CMD: %x\n", adevs[i]->port, - (int) ((char *) &adevs[i]->hba->ports[adevs[i]->port].task_file_data - - (char *) adevs[i]->hba), - adevs[i]->hba->ports[adevs[i]->port].task_file_data, - adevs[i]->hba->ports[adevs[i]->port].command); - - grub_dprintf ("ahci", "port: %d, err: %x\n", adevs[i]->port, - adevs[i]->hba->ports[adevs[i]->port].sata_error); - - adevs[i]->hba->ports[adevs[i]->port].command - = (adevs[i]->hba->ports[adevs[i]->port].command & 0x0fffffff) | (1 << 28) - | GRUB_AHCI_HBA_PORT_CMD_SPIN_UP - | GRUB_AHCI_HBA_PORT_CMD_POWER_ON; - - /* struct grub_disk_ata_pass_through_parms parms2; - grub_memset (&parms2, 0, sizeof (parms2)); - parms2.taskfile.cmd = 8; - grub_ahci_readwrite_real (dev, &parms2, 1, 1);*/ - } - - endtime = grub_get_time_ms () + 32000; - - while (grub_get_time_ms () < endtime) - { - for (i = 0; i < nports; i++) - if (adevs[i] && (adevs[i]->hba->ports[adevs[i]->port].task_file_data & (GRUB_ATA_STATUS_BUSY | GRUB_ATA_STATUS_DRQ))) - break; - if (i == nports) - break; - } - - for (i = 0; i < nports; i++) - if (adevs[i] && (adevs[i]->hba->ports[adevs[i]->port].task_file_data & (GRUB_ATA_STATUS_BUSY | GRUB_ATA_STATUS_DRQ))) - { - grub_dprintf ("ahci", "port %d is busy\n", i); - failed_adevs[i] = adevs[i]; - adevs[i] = 0; - } - - for (i = 0; i < nports; i++) - if (adevs[i]) - adevs[i]->hba->ports[adevs[i]->port].command |= GRUB_AHCI_HBA_PORT_CMD_ST; - - endtime = grub_get_time_ms () + 1000; - - while (grub_get_time_ms () < endtime) - { - for (i = 0; i < nports; i++) - if (adevs[i] && !(adevs[i]->hba->ports[adevs[i]->port].command & GRUB_AHCI_HBA_PORT_CMD_CR)) - break; - if (i == nports) - break; - } - - for (i = 0; i < nports; i++) - if (adevs[i] && !(adevs[i]->hba->ports[adevs[i]->port].command & GRUB_AHCI_HBA_PORT_CMD_CR)) - { - grub_dprintf ("ahci", "couldn't start CR on port %d\n", i); - failed_adevs[i] = adevs[i]; - adevs[i] = 0; - } - - grub_dprintf ("ahci", "cleaning up failed devs\n"); - - for (i = 0; i < nports; i++) - if (failed_adevs[i] && (fr_running & (1 << i))) - failed_adevs[i]->hba->ports[failed_adevs[i]->port].command &= ~GRUB_AHCI_HBA_PORT_CMD_FRE; - - endtime = grub_get_time_ms () + 1000; - while (grub_get_time_ms () < endtime) - { - for (i = 0; i < nports; i++) - if (failed_adevs[i] && (fr_running & (1 << i)) && (failed_adevs[i]->hba->ports[failed_adevs[i]->port].command & GRUB_AHCI_HBA_PORT_CMD_FR)) - break; - if (i == nports) - break; - } - for (i = 0; i < nports; i++) - if (failed_adevs[i]) - { - grub_dma_free (failed_adevs[i]->command_list_chunk); - grub_dma_free (failed_adevs[i]->command_table_chunk); - grub_dma_free (failed_adevs[i]->rfis); - } - - for (i = 0; i < nports; i++) - if (adevs[i] && (adevs[i]->hba->ports[adevs[i]->port].sig >> 16) == 0xeb14) - adevs[i]->atapi = 1; - - addr = grub_pci_make_address (dev, GRUB_PCI_REG_COMMAND); - grub_pci_write_word (addr, grub_pci_read_word (addr) - | GRUB_PCI_COMMAND_BUS_MASTER); - - for (i = 0; i < nports; i++) - if (adevs[i]) - { - grub_list_push (GRUB_AS_LIST_P (&grub_ahci_devices), - GRUB_AS_LIST (adevs[i])); - } - - return 0; -} - -static grub_err_t -grub_ahci_initialize (void) -{ - grub_pci_iterate (grub_ahci_pciinit, NULL); - return grub_errno; -} - -static grub_err_t -grub_ahci_fini_hw (int noreturn __attribute__ ((unused))) -{ - struct grub_ahci_device *dev; - - for (dev = grub_ahci_devices; dev; dev = dev->next) - { - grub_uint64_t endtime; - - dev->hba->ports[dev->port].command &= ~GRUB_AHCI_HBA_PORT_CMD_FRE; - endtime = grub_get_time_ms () + 1000; - while ((dev->hba->ports[dev->port].command & GRUB_AHCI_HBA_PORT_CMD_FR)) - if (grub_get_time_ms () > endtime) - { - grub_dprintf ("ahci", "couldn't stop FR\n"); - break; - } - - dev->hba->ports[dev->port].command &= ~GRUB_AHCI_HBA_PORT_CMD_ST; - endtime = grub_get_time_ms () + 1000; - while ((dev->hba->ports[dev->port].command & GRUB_AHCI_HBA_PORT_CMD_CR)) - if (grub_get_time_ms () > endtime) - { - grub_dprintf ("ahci", "couldn't stop CR\n"); - break; - } - grub_dma_free (dev->command_list_chunk); - grub_dma_free (dev->command_table_chunk); - grub_dma_free (dev->rfis); - dev->command_list_chunk = NULL; - dev->command_table_chunk = NULL; - dev->rfis = NULL; - } - return GRUB_ERR_NONE; -} - -static int -reinit_port (struct grub_ahci_device *dev) -{ - struct grub_pci_dma_chunk *command_list; - struct grub_pci_dma_chunk *command_table; - grub_uint64_t endtime; - - command_list = grub_memalign_dma32 (1024, sizeof (struct grub_ahci_cmd_head)); - if (!command_list) - return 1; - - command_table = grub_memalign_dma32 (1024, - sizeof (struct grub_ahci_cmd_table)); - if (!command_table) - { - grub_dma_free (command_list); - return 1; - } - - grub_dprintf ("ahci", "found device ahci%d (port %d)\n", dev->num, dev->port); - - dev->hba->ports[dev->port].command &= ~GRUB_AHCI_HBA_PORT_CMD_FRE; - endtime = grub_get_time_ms () + 1000; - while ((dev->hba->ports[dev->port].command & GRUB_AHCI_HBA_PORT_CMD_FR)) - if (grub_get_time_ms () > endtime) - { - grub_dprintf ("ahci", "couldn't stop FR\n"); - goto out; - } - - dev->hba->ports[dev->port].command &= ~GRUB_AHCI_HBA_PORT_CMD_ST; - endtime = grub_get_time_ms () + 1000; - while ((dev->hba->ports[dev->port].command & GRUB_AHCI_HBA_PORT_CMD_CR)) - if (grub_get_time_ms () > endtime) - { - grub_dprintf ("ahci", "couldn't stop CR\n"); - goto out; - } - - dev->hba->ports[dev->port].fbs = 2; - - dev->rfis = grub_memalign_dma32 (4096, - sizeof (struct grub_ahci_received_fis)); - grub_memset ((char *) grub_dma_get_virt (dev->rfis), 0, - sizeof (struct grub_ahci_received_fis)); - dev->hba->ports[dev->port].fis_base = grub_dma_get_phys (dev->rfis); - dev->hba->ports[dev->port].command_list_base - = grub_dma_get_phys (command_list); - dev->hba->ports[dev->port].command |= GRUB_AHCI_HBA_PORT_CMD_FRE; - while (!(dev->hba->ports[dev->port].command & GRUB_AHCI_HBA_PORT_CMD_FR)) - if (grub_get_time_ms () > endtime) - { - grub_dprintf ("ahci", "couldn't start FR\n"); - dev->hba->ports[dev->port].command &= ~GRUB_AHCI_HBA_PORT_CMD_FRE; - goto out; - } - dev->hba->ports[dev->port].command |= GRUB_AHCI_HBA_PORT_CMD_ST; - while (!(dev->hba->ports[dev->port].command & GRUB_AHCI_HBA_PORT_CMD_CR)) - if (grub_get_time_ms () > endtime) - { - grub_dprintf ("ahci", "couldn't start CR\n"); - dev->hba->ports[dev->port].command &= ~GRUB_AHCI_HBA_PORT_CMD_CR; - goto out_stop_fr; - } - - dev->hba->ports[dev->port].command - = (dev->hba->ports[dev->port].command & 0x0fffffff) | (1 << 28) | 2 | 4; - - dev->command_list_chunk = command_list; - dev->command_list = grub_dma_get_virt (command_list); - dev->command_table_chunk = command_table; - dev->command_table = grub_dma_get_virt (command_table); - dev->command_list->command_table_base - = grub_dma_get_phys (command_table); - - return 0; - out_stop_fr: - dev->hba->ports[dev->port].command &= ~GRUB_AHCI_HBA_PORT_CMD_FRE; - endtime = grub_get_time_ms () + 1000; - while ((dev->hba->ports[dev->port].command & GRUB_AHCI_HBA_PORT_CMD_FR)) - if (grub_get_time_ms () > endtime) - { - grub_dprintf ("ahci", "couldn't stop FR\n"); - break; - } - out: - grub_dma_free (command_list); - grub_dma_free (command_table); - grub_dma_free (dev->rfis); - return 1; -} - -static grub_err_t -grub_ahci_restore_hw (void) -{ - struct grub_ahci_device **pdev; - - for (pdev = &grub_ahci_devices; *pdev; pdev = &((*pdev)->next)) - if (reinit_port (*pdev)) - { - struct grub_ahci_device *odev; - odev = *pdev; - *pdev = (*pdev)->next; - grub_free (odev); - } - return GRUB_ERR_NONE; -} - - - - -static int -grub_ahci_iterate (grub_ata_dev_iterate_hook_t hook, void *hook_data, - grub_disk_pull_t pull) -{ - struct grub_ahci_device *dev; - - if (pull != GRUB_DISK_PULL_NONE) - return 0; - - FOR_LIST_ELEMENTS(dev, grub_ahci_devices) - if (hook (GRUB_SCSI_SUBSYSTEM_AHCI, dev->num, hook_data)) - return 1; - - return 0; -} - -#if 0 -static int -find_free_cmd_slot (struct grub_ahci_device *dev) -{ - int i; - for (i = 0; i < 32; i++) - { - if (dev->hda->ports[dev->port].command_issue & (1 << i)) - continue; - if (dev->hda->ports[dev->port].sata_active & (1 << i)) - continue; - return i; - } - return -1; -} -#endif - -enum - { - GRUB_AHCI_FIS_REG_H2D = 0x27 - }; - -static const int register_map[11] = { 3 /* Features */, - 12 /* Sectors */, - 4 /* LBA low */, - 5 /* LBA mid */, - 6 /* LBA high */, - 7 /* Device */, - 2 /* CMD register */, - 13 /* Sectors 48 */, - 8 /* LBA48 low */, - 9 /* LBA48 mid */, - 10 /* LBA48 high */ }; - -static grub_err_t -grub_ahci_reset_port (struct grub_ahci_device *dev, int force) -{ - grub_uint64_t endtime; - - dev->hba->ports[dev->port].sata_error = dev->hba->ports[dev->port].sata_error; - - if (force || (dev->hba->ports[dev->port].command_issue & 1) - || (dev->hba->ports[dev->port].task_file_data & 0x80)) - { - struct grub_disk_ata_pass_through_parms parms2; - dev->hba->ports[dev->port].command &= ~GRUB_AHCI_HBA_PORT_CMD_ST; - dev->hba->ports[dev->port].command_issue = 0; - dev->command_list[0].config = 0; - dev->command_table[0].prdt[0].unused = 0; - dev->command_table[0].prdt[0].size = 0; - dev->command_table[0].prdt[0].data_base = 0; - - endtime = grub_get_time_ms () + 1000; - while ((dev->hba->ports[dev->port].command & GRUB_AHCI_HBA_PORT_CMD_CR)) - if (grub_get_time_ms () > endtime) - { - grub_dprintf ("ahci", "couldn't stop CR"); - return grub_error (GRUB_ERR_IO, "couldn't stop CR"); - } - dev->hba->ports[dev->port].command |= 8; - while (dev->hba->ports[dev->port].command & 8) - if (grub_get_time_ms () > endtime) - { - grub_dprintf ("ahci", "couldn't set CLO\n"); - dev->hba->ports[dev->port].command &= ~GRUB_AHCI_HBA_PORT_CMD_FRE; - return grub_error (GRUB_ERR_IO, "couldn't set CLO"); - } - - dev->hba->ports[dev->port].command |= GRUB_AHCI_HBA_PORT_CMD_ST; - while (!(dev->hba->ports[dev->port].command & GRUB_AHCI_HBA_PORT_CMD_CR)) - if (grub_get_time_ms () > endtime) - { - grub_dprintf ("ahci", "couldn't stop CR"); - dev->hba->ports[dev->port].command &= ~GRUB_AHCI_HBA_PORT_CMD_ST; - return grub_error (GRUB_ERR_IO, "couldn't stop CR"); - } - dev->hba->ports[dev->port].sata_error = dev->hba->ports[dev->port].sata_error; - grub_memset (&parms2, 0, sizeof (parms2)); - parms2.taskfile.cmd = 8; - return grub_ahci_readwrite_real (dev, &parms2, 1, 1); - } - return GRUB_ERR_NONE; -} - -static grub_err_t -grub_ahci_readwrite_real (struct grub_ahci_device *dev, - struct grub_disk_ata_pass_through_parms *parms, - int spinup, int reset) -{ - struct grub_pci_dma_chunk *bufc; - grub_uint64_t endtime; - unsigned i; - grub_err_t err = GRUB_ERR_NONE; - - grub_dprintf ("ahci", "AHCI tfd = %x\n", - dev->hba->ports[dev->port].task_file_data); - - if (!reset) - grub_ahci_reset_port (dev, 0); - - grub_dprintf ("ahci", "AHCI tfd = %x\n", - dev->hba->ports[dev->port].task_file_data); - dev->hba->ports[dev->port].task_file_data = 0; - dev->hba->ports[dev->port].command_issue = 0; - grub_dprintf ("ahci", "AHCI tfd = %x\n", - dev->hba->ports[dev->port].task_file_data); - - dev->hba->ports[dev->port].sata_error = dev->hba->ports[dev->port].sata_error; - - grub_dprintf("ahci", "grub_ahci_read (size=%llu, cmdsize = %llu)\n", - (unsigned long long) parms->size, - (unsigned long long) parms->cmdsize); - - if (parms->cmdsize != 0 && parms->cmdsize != 12 && parms->cmdsize != 16) - return grub_error (GRUB_ERR_BUG, "incorrect ATAPI command size"); - - if (parms->size > GRUB_AHCI_PRDT_MAX_CHUNK_LENGTH) - return grub_error (GRUB_ERR_BUG, "too big data buffer"); - - if (parms->size) - bufc = grub_memalign_dma32 (1024, parms->size + (parms->size & 1)); - else - bufc = grub_memalign_dma32 (1024, 512); - - grub_dprintf ("ahci", "AHCI tfd = %x, CL=%p\n", - dev->hba->ports[dev->port].task_file_data, - dev->command_list); - /* FIXME: support port multipliers. */ - dev->command_list[0].config - = (5 << GRUB_AHCI_CONFIG_CFIS_LENGTH_SHIFT) - // | GRUB_AHCI_CONFIG_CLEAR_R_OK - | (0 << GRUB_AHCI_CONFIG_PMP_SHIFT) - | ((parms->size ? 1 : 0) << GRUB_AHCI_CONFIG_PRDT_LENGTH_SHIFT) - | (parms->cmdsize ? GRUB_AHCI_CONFIG_ATAPI : 0) - | (parms->write ? GRUB_AHCI_CONFIG_WRITE : GRUB_AHCI_CONFIG_READ) - | (parms->taskfile.cmd == 8 ? (1 << 8) : 0); - grub_dprintf ("ahci", "AHCI tfd = %x\n", - dev->hba->ports[dev->port].task_file_data); - - dev->command_list[0].transferred = 0; - dev->command_list[0].command_table_base - = grub_dma_get_phys (dev->command_table_chunk); - - grub_memset ((char *) dev->command_list[0].unused, 0, - sizeof (dev->command_list[0].unused)); - - grub_memset ((char *) &dev->command_table[0], 0, - sizeof (dev->command_table[0])); - grub_dprintf ("ahci", "AHCI tfd = %x\n", - dev->hba->ports[dev->port].task_file_data); - - if (parms->cmdsize) - grub_memcpy ((char *) dev->command_table[0].command, parms->cmd, - parms->cmdsize); - - grub_dprintf ("ahci", "AHCI tfd = %x\n", - dev->hba->ports[dev->port].task_file_data); - - dev->command_table[0].cfis[0] = GRUB_AHCI_FIS_REG_H2D; - dev->command_table[0].cfis[1] = 0x80; - for (i = 0; i < sizeof (parms->taskfile.raw); i++) - dev->command_table[0].cfis[register_map[i]] = parms->taskfile.raw[i]; - - grub_dprintf ("ahci", "cfis: %02x %02x %02x %02x %02x %02x %02x %02x\n", - dev->command_table[0].cfis[0], dev->command_table[0].cfis[1], - dev->command_table[0].cfis[2], dev->command_table[0].cfis[3], - dev->command_table[0].cfis[4], dev->command_table[0].cfis[5], - dev->command_table[0].cfis[6], dev->command_table[0].cfis[7]); - grub_dprintf ("ahci", "cfis: %02x %02x %02x %02x %02x %02x %02x %02x\n", - dev->command_table[0].cfis[8], dev->command_table[0].cfis[9], - dev->command_table[0].cfis[10], dev->command_table[0].cfis[11], - dev->command_table[0].cfis[12], dev->command_table[0].cfis[13], - dev->command_table[0].cfis[14], dev->command_table[0].cfis[15]); - - dev->command_table[0].prdt[0].data_base = grub_dma_get_phys (bufc); - dev->command_table[0].prdt[0].unused = 0; - dev->command_table[0].prdt[0].size = (parms->size - 1); - - grub_dprintf ("ahci", "PRDT = %" PRIxGRUB_UINT64_T ", %x, %x (%" - PRIuGRUB_SIZE ")\n", - dev->command_table[0].prdt[0].data_base, - dev->command_table[0].prdt[0].unused, - dev->command_table[0].prdt[0].size, - (grub_size_t) ((char *) &dev->command_table[0].prdt[0] - - (char *) &dev->command_table[0])); - - if (parms->write) - grub_memcpy ((char *) grub_dma_get_virt (bufc), parms->buffer, parms->size); - - grub_dprintf ("ahci", "AHCI command scheduled\n"); - grub_dprintf ("ahci", "AHCI tfd = %x\n", - dev->hba->ports[dev->port].task_file_data); - grub_dprintf ("ahci", "AHCI inten = %x\n", - dev->hba->ports[dev->port].inten); - grub_dprintf ("ahci", "AHCI intstatus = %x\n", - dev->hba->ports[dev->port].intstatus); - - dev->hba->ports[dev->port].inten = 0xffffffff;//(1 << 2) | (1 << 5); - dev->hba->ports[dev->port].intstatus = 0xffffffff;//(1 << 2) | (1 << 5); - grub_dprintf ("ahci", "AHCI inten = %x\n", - dev->hba->ports[dev->port].inten); - grub_dprintf ("ahci", "AHCI tfd = %x\n", - dev->hba->ports[dev->port].task_file_data); - dev->hba->ports[dev->port].sata_active = 1; - dev->hba->ports[dev->port].command_issue = 1; - grub_dprintf ("ahci", "AHCI sig = %x\n", dev->hba->ports[dev->port].sig); - grub_dprintf ("ahci", "AHCI tfd = %x\n", - dev->hba->ports[dev->port].task_file_data); - - endtime = grub_get_time_ms () + (spinup ? 20000 : 20000); - while ((dev->hba->ports[dev->port].command_issue & 1)) - if (grub_get_time_ms () > endtime || - (dev->hba->ports[dev->port].intstatus & GRUB_AHCI_HBA_PORT_IS_FATAL_MASK)) - { - grub_dprintf ("ahci", "AHCI status <%x %x %x %x>\n", - dev->hba->ports[dev->port].command_issue, - dev->hba->ports[dev->port].sata_active, - dev->hba->ports[dev->port].intstatus, - dev->hba->ports[dev->port].task_file_data); - dev->hba->ports[dev->port].command_issue = 0; - if (dev->hba->ports[dev->port].intstatus & GRUB_AHCI_HBA_PORT_IS_FATAL_MASK) - err = grub_error (GRUB_ERR_IO, "AHCI transfer error"); - else - err = grub_error (GRUB_ERR_IO, "AHCI transfer timed out"); - if (!reset) - grub_ahci_reset_port (dev, 1); - break; - } - - grub_dprintf ("ahci", "AHCI command completed <%x %x %x %x %x, %x %x>\n", - dev->hba->ports[dev->port].command_issue, - dev->hba->ports[dev->port].intstatus, - dev->hba->ports[dev->port].task_file_data, - dev->command_list[0].transferred, - dev->hba->ports[dev->port].sata_error, - ((grub_uint32_t *) grub_dma_get_virt (dev->rfis))[0x00], - ((grub_uint32_t *) grub_dma_get_virt (dev->rfis))[0x18]); - grub_dprintf ("ahci", - "last PIO FIS %08x %08x %08x %08x %08x %08x %08x %08x\n", - ((grub_uint32_t *) grub_dma_get_virt (dev->rfis))[0x08], - ((grub_uint32_t *) grub_dma_get_virt (dev->rfis))[0x09], - ((grub_uint32_t *) grub_dma_get_virt (dev->rfis))[0x0a], - ((grub_uint32_t *) grub_dma_get_virt (dev->rfis))[0x0b], - ((grub_uint32_t *) grub_dma_get_virt (dev->rfis))[0x0c], - ((grub_uint32_t *) grub_dma_get_virt (dev->rfis))[0x0d], - ((grub_uint32_t *) grub_dma_get_virt (dev->rfis))[0x0e], - ((grub_uint32_t *) grub_dma_get_virt (dev->rfis))[0x0f]); - grub_dprintf ("ahci", - "last REG FIS %08x %08x %08x %08x %08x %08x %08x %08x\n", - ((grub_uint32_t *) grub_dma_get_virt (dev->rfis))[0x10], - ((grub_uint32_t *) grub_dma_get_virt (dev->rfis))[0x11], - ((grub_uint32_t *) grub_dma_get_virt (dev->rfis))[0x12], - ((grub_uint32_t *) grub_dma_get_virt (dev->rfis))[0x13], - ((grub_uint32_t *) grub_dma_get_virt (dev->rfis))[0x14], - ((grub_uint32_t *) grub_dma_get_virt (dev->rfis))[0x15], - ((grub_uint32_t *) grub_dma_get_virt (dev->rfis))[0x16], - ((grub_uint32_t *) grub_dma_get_virt (dev->rfis))[0x17]); - - if (!parms->write) - grub_memcpy (parms->buffer, (char *) grub_dma_get_virt (bufc), parms->size); - grub_dma_free (bufc); - - return err; -} - -static grub_err_t -grub_ahci_readwrite (grub_ata_t disk, - struct grub_disk_ata_pass_through_parms *parms, - int spinup) -{ - return grub_ahci_readwrite_real (disk->data, parms, spinup, 0); -} - -static grub_err_t -grub_ahci_open (int id, int devnum, struct grub_ata *ata) -{ - struct grub_ahci_device *dev; - - if (id != GRUB_SCSI_SUBSYSTEM_AHCI) - return grub_error (GRUB_ERR_UNKNOWN_DEVICE, "not an AHCI device"); - - FOR_LIST_ELEMENTS(dev, grub_ahci_devices) - if (dev->num == devnum) - break; - - if (! dev) - return grub_error (GRUB_ERR_UNKNOWN_DEVICE, "no such AHCI device"); - - grub_dprintf ("ahci", "opening AHCI dev `ahci%d'\n", dev->num); - - ata->data = dev; - ata->dma = 1; - ata->atapi = dev->atapi; - ata->maxbuffer = GRUB_AHCI_PRDT_MAX_CHUNK_LENGTH; - ata->present = &dev->present; - - return GRUB_ERR_NONE; -} - -static struct grub_ata_dev grub_ahci_dev = - { - .iterate = grub_ahci_iterate, - .open = grub_ahci_open, - .readwrite = grub_ahci_readwrite, - }; - - - -static struct grub_preboot *fini_hnd; - -GRUB_MOD_INIT(ahci) -{ - grub_stop_disk_firmware (); - - /* AHCI initialization. */ - grub_ahci_initialize (); - - /* AHCI devices are handled by scsi.mod. */ - grub_ata_dev_register (&grub_ahci_dev); - - fini_hnd = grub_loader_register_preboot_hook (grub_ahci_fini_hw, - grub_ahci_restore_hw, - GRUB_LOADER_PREBOOT_HOOK_PRIO_DISK); -} - -GRUB_MOD_FINI(ahci) -{ - grub_ahci_fini_hw (0); - grub_loader_unregister_preboot_hook (fini_hnd); - - grub_ata_dev_unregister (&grub_ahci_dev); -} diff --git a/thirdparty/grub-2.04/grub-core/disk/arc/arcdisk.c b/thirdparty/grub-2.04/grub-core/disk/arc/arcdisk.c deleted file mode 100644 index c94039a3d..000000000 --- a/thirdparty/grub-2.04/grub-core/disk/arc/arcdisk.c +++ /dev/null @@ -1,325 +0,0 @@ -/* ofdisk.c - Open Firmware disk access. */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2004,2006,2007,2008,2009,2011 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include - -static grub_arc_fileno_t last_handle = 0; -static char *last_path = NULL; -static int handle_writable = 0; - -static int lnum = 0; - -struct arcdisk_hash_ent -{ - char *devpath; - int num; - struct arcdisk_hash_ent *next; -}; - -#define ARCDISK_HASH_SZ 8 -static struct arcdisk_hash_ent *arcdisk_hash[ARCDISK_HASH_SZ]; - -static int -arcdisk_hash_fn (const char *devpath) -{ - int hash = 0; - while (*devpath) - hash ^= *devpath++; - return (hash & (ARCDISK_HASH_SZ - 1)); -} - -static struct arcdisk_hash_ent * -arcdisk_hash_find (const char *devpath) -{ - struct arcdisk_hash_ent *p = arcdisk_hash[arcdisk_hash_fn (devpath)]; - - while (p) - { - if (!grub_strcmp (p->devpath, devpath)) - break; - p = p->next; - } - return p; -} - -static struct arcdisk_hash_ent * -arcdisk_hash_add (char *devpath) -{ - struct arcdisk_hash_ent *p; - struct arcdisk_hash_ent **head = &arcdisk_hash[arcdisk_hash_fn(devpath)]; - - p = grub_malloc (sizeof (*p)); - if (!p) - return NULL; - - p->devpath = devpath; - p->next = *head; - p->num = lnum++; - *head = p; - return p; -} - - -/* Context for grub_arcdisk_iterate. */ -struct grub_arcdisk_iterate_ctx -{ - grub_disk_dev_iterate_hook_t hook; - void *hook_data; -}; - -/* Helper for grub_arcdisk_iterate. */ -static int -grub_arcdisk_iterate_iter (const char *name, - const struct grub_arc_component *comp, void *data) -{ - struct grub_arcdisk_iterate_ctx *ctx = data; - - if (!(comp->type == GRUB_ARC_COMPONENT_TYPE_DISK - || comp->type == GRUB_ARC_COMPONENT_TYPE_FLOPPY - || comp->type == GRUB_ARC_COMPONENT_TYPE_TAPE)) - return 0; - return ctx->hook (name, ctx->hook_data); -} - -static int -grub_arcdisk_iterate (grub_disk_dev_iterate_hook_t hook, void *hook_data, - grub_disk_pull_t pull) -{ - struct grub_arcdisk_iterate_ctx ctx = { hook, hook_data }; - - if (pull != GRUB_DISK_PULL_NONE) - return 0; - - return grub_arc_iterate_devs (grub_arcdisk_iterate_iter, &ctx, 1); -} - -#ifdef GRUB_CPU_MIPSEL -#define RAW_SUFFIX "partition(0)" -#else -#define RAW_SUFFIX "partition(10)" -#endif - -static grub_err_t -reopen (const char *name, int writable) -{ - grub_arc_fileno_t handle; - - if (last_path && grub_strcmp (last_path, name) == 0 - && (!writable || handle_writable)) - { - grub_dprintf ("arcdisk", "using already opened %s\n", name); - return GRUB_ERR_NONE; - } - if (last_path) - { - GRUB_ARC_FIRMWARE_VECTOR->close (last_handle); - grub_free (last_path); - last_path = NULL; - last_handle = 0; - handle_writable = 0; - } - if (GRUB_ARC_FIRMWARE_VECTOR->open (name, - writable ? GRUB_ARC_FILE_ACCESS_OPEN_RW - : GRUB_ARC_FILE_ACCESS_OPEN_RO, &handle)) - { - grub_dprintf ("arcdisk", "couldn't open %s\n", name); - return grub_error (GRUB_ERR_IO, "couldn't open %s", name); - } - handle_writable = writable; - last_path = grub_strdup (name); - if (!last_path) - return grub_errno; - last_handle = handle; - grub_dprintf ("arcdisk", "opened %s\n", name); - return GRUB_ERR_NONE; -} - -static grub_err_t -grub_arcdisk_open (const char *name, grub_disk_t disk) -{ - char *fullname; - grub_err_t err; - grub_arc_err_t r; - struct grub_arc_fileinfo info; - struct arcdisk_hash_ent *hash; - - if (grub_memcmp (name, "arc/", 4) != 0) - return grub_error (GRUB_ERR_UNKNOWN_DEVICE, "not arc device"); - fullname = grub_arc_alt_name_to_norm (name, RAW_SUFFIX); - disk->data = fullname; - grub_dprintf ("arcdisk", "opening %s\n", fullname); - - hash = arcdisk_hash_find (fullname); - if (!hash) - hash = arcdisk_hash_add (fullname); - if (!hash) - return grub_errno; - - err = reopen (fullname, 0); - if (err) - return err; - - r = GRUB_ARC_FIRMWARE_VECTOR->getfileinformation (last_handle, &info); - if (r) - { - grub_uint64_t res = 0; - int i; - - grub_dprintf ("arcdisk", "couldn't retrieve size: %ld\n", r); - for (i = 40; i >= 9; i--) - { - grub_uint64_t pos = res | (1ULL << i); - char buf[512]; - long unsigned count = 0; - grub_dprintf ("arcdisk", - "seek to 0x%" PRIxGRUB_UINT64_T "\n", pos); - if (GRUB_ARC_FIRMWARE_VECTOR->seek (last_handle, &pos, 0)) - continue; - if (GRUB_ARC_FIRMWARE_VECTOR->read (last_handle, buf, - 0x200, &count)) - continue; - if (count == 0) - continue; - res |= (1ULL << i); - } - grub_dprintf ("arcdisk", - "determined disk size 0x%" PRIxGRUB_UINT64_T "\n", res); - disk->total_sectors = (res + 0x200) >> 9; - } - else - disk->total_sectors = (info.end >> 9); - - disk->id = hash->num; - return GRUB_ERR_NONE; -} - -static void -grub_arcdisk_close (grub_disk_t disk) -{ - grub_free (disk->data); -} - -static grub_err_t -grub_arcdisk_read (grub_disk_t disk, grub_disk_addr_t sector, - grub_size_t size, char *buf) -{ - grub_err_t err; - grub_uint64_t pos = sector << 9; - unsigned long count; - grub_uint64_t totl = size << 9; - grub_arc_err_t r; - - err = reopen (disk->data, 0); - if (err) - return err; - r = GRUB_ARC_FIRMWARE_VECTOR->seek (last_handle, &pos, 0); - if (r) - { - grub_dprintf ("arcdisk", "seek to 0x%" PRIxGRUB_UINT64_T " failed: %ld\n", - pos, r); - return grub_error (GRUB_ERR_IO, "couldn't seek"); - } - - while (totl) - { - if (GRUB_ARC_FIRMWARE_VECTOR->read (last_handle, buf, - totl, &count)) - return grub_error (GRUB_ERR_READ_ERROR, - N_("failure reading sector 0x%llx " - "from `%s'"), - (unsigned long long) sector, - disk->name); - totl -= count; - buf += count; - } - - return GRUB_ERR_NONE; -} - -static grub_err_t -grub_arcdisk_write (grub_disk_t disk, grub_disk_addr_t sector, - grub_size_t size, const char *buf) -{ - grub_err_t err; - grub_uint64_t pos = sector << 9; - unsigned long count; - grub_uint64_t totl = size << 9; - grub_arc_err_t r; - - err = reopen (disk->data, 1); - if (err) - return err; - r = GRUB_ARC_FIRMWARE_VECTOR->seek (last_handle, &pos, 0); - if (r) - { - grub_dprintf ("arcdisk", "seek to 0x%" PRIxGRUB_UINT64_T " failed: %ld\n", - pos, r); - return grub_error (GRUB_ERR_IO, "couldn't seek"); - } - - while (totl) - { - if (GRUB_ARC_FIRMWARE_VECTOR->write (last_handle, buf, - totl, &count)) - return grub_error (GRUB_ERR_WRITE_ERROR, N_("failure writing sector 0x%llx " - "to `%s'"), - (unsigned long long) sector, - disk->name); - totl -= count; - buf += count; - } - - return GRUB_ERR_NONE; -} - -static struct grub_disk_dev grub_arcdisk_dev = - { - .name = "arcdisk", - .id = GRUB_DISK_DEVICE_ARCDISK_ID, - .disk_iterate = grub_arcdisk_iterate, - .disk_open = grub_arcdisk_open, - .disk_close = grub_arcdisk_close, - .disk_read = grub_arcdisk_read, - .disk_write = grub_arcdisk_write, - .next = 0 - }; - -void -grub_arcdisk_init (void) -{ - grub_disk_dev_register (&grub_arcdisk_dev); -} - -void -grub_arcdisk_fini (void) -{ - if (last_path) - { - GRUB_ARC_FIRMWARE_VECTOR->close (last_handle); - grub_free (last_path); - last_path = NULL; - last_handle = 0; - } - - grub_disk_dev_unregister (&grub_arcdisk_dev); -} diff --git a/thirdparty/grub-2.04/grub-core/disk/ata.c b/thirdparty/grub-2.04/grub-core/disk/ata.c deleted file mode 100644 index 685f33a19..000000000 --- a/thirdparty/grub-2.04/grub-core/disk/ata.c +++ /dev/null @@ -1,683 +0,0 @@ -/* ata.c - ATA disk access. */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2007, 2008, 2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -static grub_ata_dev_t grub_ata_dev_list; - -/* Byteorder has to be changed before strings can be read. */ -static void -grub_ata_strncpy (grub_uint16_t *dst16, grub_uint16_t *src16, grub_size_t len) -{ - unsigned int i; - - for (i = 0; i < len / 2; i++) - *(dst16++) = grub_swap_bytes16 (*(src16++)); - *dst16 = 0; -} - -static void -grub_ata_dumpinfo (struct grub_ata *dev, grub_uint16_t *info) -{ - grub_uint16_t text[21]; - - /* The device information was read, dump it for debugging. */ - grub_ata_strncpy (text, info + 10, 20); - grub_dprintf ("ata", "Serial: %s\n", (char *) text); - grub_ata_strncpy (text, info + 23, 8); - grub_dprintf ("ata", "Firmware: %s\n", (char *) text); - grub_ata_strncpy (text, info + 27, 40); - grub_dprintf ("ata", "Model: %s\n", (char *) text); - - if (! dev->atapi) - { - grub_dprintf ("ata", "Addressing: %d\n", dev->addr); - grub_dprintf ("ata", "Sectors: %lld\n", (unsigned long long) dev->size); - grub_dprintf ("ata", "Sector size: %u\n", 1U << dev->log_sector_size); - } -} - -static grub_err_t -grub_atapi_identify (struct grub_ata *dev) -{ - struct grub_disk_ata_pass_through_parms parms; - grub_uint16_t *info; - grub_err_t err; - - info = grub_malloc (GRUB_DISK_SECTOR_SIZE); - if (! info) - return grub_errno; - - grub_memset (&parms, 0, sizeof (parms)); - parms.taskfile.disk = 0xE0; - parms.taskfile.cmd = GRUB_ATA_CMD_IDENTIFY_PACKET_DEVICE; - parms.size = GRUB_DISK_SECTOR_SIZE; - parms.buffer = info; - - err = dev->dev->readwrite (dev, &parms, *dev->present); - if (err) - { - *dev->present = 0; - return err; - } - - if (parms.size != GRUB_DISK_SECTOR_SIZE) - { - *dev->present = 0; - return grub_error (GRUB_ERR_UNKNOWN_DEVICE, - "device cannot be identified"); - } - - dev->atapi = 1; - - grub_ata_dumpinfo (dev, info); - - grub_free (info); - - return GRUB_ERR_NONE; -} - -static grub_err_t -grub_ata_identify (struct grub_ata *dev) -{ - struct grub_disk_ata_pass_through_parms parms; - grub_uint64_t *info64; - grub_uint32_t *info32; - grub_uint16_t *info16; - grub_err_t err; - - if (dev->atapi) - return grub_atapi_identify (dev); - - info64 = grub_malloc (GRUB_DISK_SECTOR_SIZE); - info32 = (grub_uint32_t *) info64; - info16 = (grub_uint16_t *) info64; - if (! info16) - return grub_errno; - - grub_memset (&parms, 0, sizeof (parms)); - parms.buffer = info16; - parms.size = GRUB_DISK_SECTOR_SIZE; - parms.taskfile.disk = 0xE0; - - parms.taskfile.cmd = GRUB_ATA_CMD_IDENTIFY_DEVICE; - - err = dev->dev->readwrite (dev, &parms, *dev->present); - - if (err || parms.size != GRUB_DISK_SECTOR_SIZE) - { - grub_uint8_t sts = parms.taskfile.status; - grub_free (info16); - grub_errno = GRUB_ERR_NONE; - if ((sts & (GRUB_ATA_STATUS_BUSY | GRUB_ATA_STATUS_DRQ - | GRUB_ATA_STATUS_ERR)) == GRUB_ATA_STATUS_ERR - && (parms.taskfile.error & 0x04 /* ABRT */)) - /* Device without ATA IDENTIFY, try ATAPI. */ - return grub_atapi_identify (dev); - - else if (sts == 0x00) - { - *dev->present = 0; - /* No device, return error but don't print message. */ - return GRUB_ERR_UNKNOWN_DEVICE; - } - else - { - *dev->present = 0; - /* Other Error. */ - return grub_error (GRUB_ERR_UNKNOWN_DEVICE, - "device cannot be identified"); - } - } - - /* Now it is certain that this is not an ATAPI device. */ - dev->atapi = 0; - - /* CHS is always supported. */ - dev->addr = GRUB_ATA_CHS; - - /* Check if LBA is supported. */ - if (info16[49] & grub_cpu_to_le16_compile_time ((1 << 9))) - { - /* Check if LBA48 is supported. */ - if (info16[83] & grub_cpu_to_le16_compile_time ((1 << 10))) - dev->addr = GRUB_ATA_LBA48; - else - dev->addr = GRUB_ATA_LBA; - } - - /* Determine the amount of sectors. */ - if (dev->addr != GRUB_ATA_LBA48) - dev->size = grub_le_to_cpu32 (info32[30]); - else - dev->size = grub_le_to_cpu64 (info64[25]); - - if (info16[106] & grub_cpu_to_le16_compile_time ((1 << 12))) - { - grub_uint32_t secsize; - secsize = grub_le_to_cpu32 (grub_get_unaligned32 (&info16[117])); - if (secsize & (secsize - 1) || !secsize - || secsize > 1048576) - secsize = 256; - for (dev->log_sector_size = 0; - (1U << dev->log_sector_size) < secsize; - dev->log_sector_size++); - dev->log_sector_size++; - } - else - dev->log_sector_size = 9; - - /* Read CHS information. */ - dev->cylinders = grub_le_to_cpu16 (info16[1]); - dev->heads = grub_le_to_cpu16 (info16[3]); - dev->sectors_per_track = grub_le_to_cpu16 (info16[6]); - - grub_ata_dumpinfo (dev, info16); - - grub_free (info16); - - return 0; -} - -static grub_err_t -grub_ata_setaddress (struct grub_ata *dev, - struct grub_disk_ata_pass_through_parms *parms, - grub_disk_addr_t sector, - grub_size_t size, - grub_ata_addressing_t addressing) -{ - switch (addressing) - { - case GRUB_ATA_CHS: - { - unsigned int cylinder; - unsigned int head; - unsigned int sect; - - if (dev->sectors_per_track == 0 - || dev->heads == 0) - return grub_error (GRUB_ERR_OUT_OF_RANGE, - "sector %d cannot be addressed " - "using CHS addressing", sector); - - /* Calculate the sector, cylinder and head to use. */ - sect = ((grub_uint32_t) sector % dev->sectors_per_track) + 1; - cylinder = (((grub_uint32_t) sector / dev->sectors_per_track) - / dev->heads); - head = ((grub_uint32_t) sector / dev->sectors_per_track) % dev->heads; - - if (sect > dev->sectors_per_track - || cylinder > dev->cylinders - || head > dev->heads) - return grub_error (GRUB_ERR_OUT_OF_RANGE, - "sector %d cannot be addressed " - "using CHS addressing", sector); - - parms->taskfile.disk = 0xE0 | head; - parms->taskfile.sectnum = sect; - parms->taskfile.cyllsb = cylinder & 0xFF; - parms->taskfile.cylmsb = cylinder >> 8; - - break; - } - - case GRUB_ATA_LBA: - if (size == 256) - size = 0; - parms->taskfile.disk = 0xE0 | ((sector >> 24) & 0x0F); - - parms->taskfile.sectors = size; - parms->taskfile.lba_low = sector & 0xFF; - parms->taskfile.lba_mid = (sector >> 8) & 0xFF; - parms->taskfile.lba_high = (sector >> 16) & 0xFF; - break; - - case GRUB_ATA_LBA48: - if (size == 65536) - size = 0; - - parms->taskfile.disk = 0xE0; - - /* Set "Previous". */ - parms->taskfile.sectors = size & 0xFF; - parms->taskfile.lba_low = sector & 0xFF; - parms->taskfile.lba_mid = (sector >> 8) & 0xFF; - parms->taskfile.lba_high = (sector >> 16) & 0xFF; - - /* Set "Current". */ - parms->taskfile.sectors48 = (size >> 8) & 0xFF; - parms->taskfile.lba48_low = (sector >> 24) & 0xFF; - parms->taskfile.lba48_mid = (sector >> 32) & 0xFF; - parms->taskfile.lba48_high = (sector >> 40) & 0xFF; - - break; - } - - return GRUB_ERR_NONE; -} - -static grub_err_t -grub_ata_readwrite (grub_disk_t disk, grub_disk_addr_t sector, - grub_size_t size, char *buf, int rw) -{ - struct grub_ata *ata = disk->data; - - grub_ata_addressing_t addressing = ata->addr; - grub_size_t batch; - int cmd, cmd_write; - grub_size_t nsectors = 0; - - grub_dprintf("ata", "grub_ata_readwrite (size=%llu, rw=%d)\n", - (unsigned long long) size, rw); - - if (addressing == GRUB_ATA_LBA48 && ((sector + size) >> 28) != 0) - { - if (ata->dma) - { - cmd = GRUB_ATA_CMD_READ_SECTORS_DMA_EXT; - cmd_write = GRUB_ATA_CMD_WRITE_SECTORS_DMA_EXT; - } - else - { - cmd = GRUB_ATA_CMD_READ_SECTORS_EXT; - cmd_write = GRUB_ATA_CMD_WRITE_SECTORS_EXT; - } - } - else - { - if (addressing == GRUB_ATA_LBA48) - addressing = GRUB_ATA_LBA; - if (ata->dma) - { - cmd = GRUB_ATA_CMD_READ_SECTORS_DMA; - cmd_write = GRUB_ATA_CMD_WRITE_SECTORS_DMA; - } - else - { - cmd = GRUB_ATA_CMD_READ_SECTORS; - cmd_write = GRUB_ATA_CMD_WRITE_SECTORS; - } - } - - if (addressing != GRUB_ATA_CHS) - batch = 256; - else - batch = 1; - - while (nsectors < size) - { - struct grub_disk_ata_pass_through_parms parms; - grub_err_t err; - - if (size - nsectors < batch) - batch = size - nsectors; - - grub_dprintf("ata", "rw=%d, sector=%llu, batch=%llu\n", rw, (unsigned long long) sector, (unsigned long long) batch); - grub_memset (&parms, 0, sizeof (parms)); - grub_ata_setaddress (ata, &parms, sector, batch, addressing); - parms.taskfile.cmd = (! rw ? cmd : cmd_write); - parms.buffer = buf; - parms.size = batch << ata->log_sector_size; - parms.write = rw; - if (ata->dma) - parms.dma = 1; - - err = ata->dev->readwrite (ata, &parms, 0); - if (err) - return err; - if (parms.size != batch << ata->log_sector_size) - return grub_error (GRUB_ERR_READ_ERROR, "incomplete read"); - buf += batch << ata->log_sector_size; - sector += batch; - nsectors += batch; - } - - return GRUB_ERR_NONE; -} - - - -static inline void -grub_ata_real_close (struct grub_ata *ata) -{ - if (ata->dev->close) - ata->dev->close (ata); -} - -static struct grub_ata * -grub_ata_real_open (int id, int bus) -{ - struct grub_ata *ata; - grub_ata_dev_t p; - - ata = grub_zalloc (sizeof (*ata)); - if (!ata) - return NULL; - for (p = grub_ata_dev_list; p; p = p->next) - { - grub_err_t err; - if (p->open (id, bus, ata)) - { - grub_errno = GRUB_ERR_NONE; - continue; - } - ata->dev = p; - /* Use the IDENTIFY DEVICE command to query the device. */ - err = grub_ata_identify (ata); - if (err) - { - if (!grub_errno) - grub_error (GRUB_ERR_UNKNOWN_DEVICE, "no such ATA device"); - grub_free (ata); - return NULL; - } - return ata; - } - grub_free (ata); - grub_error (GRUB_ERR_UNKNOWN_DEVICE, "no such ATA device"); - return NULL; -} - -/* Context for grub_ata_iterate. */ -struct grub_ata_iterate_ctx -{ - grub_disk_dev_iterate_hook_t hook; - void *hook_data; -}; - -/* Helper for grub_ata_iterate. */ -static int -grub_ata_iterate_iter (int id, int bus, void *data) -{ - struct grub_ata_iterate_ctx *ctx = data; - struct grub_ata *ata; - int ret; - char devname[40]; - - ata = grub_ata_real_open (id, bus); - - if (!ata) - { - grub_errno = GRUB_ERR_NONE; - return 0; - } - if (ata->atapi) - { - grub_ata_real_close (ata); - return 0; - } - grub_snprintf (devname, sizeof (devname), - "%s%d", grub_scsi_names[id], bus); - ret = ctx->hook (devname, ctx->hook_data); - grub_ata_real_close (ata); - return ret; -} - -static int -grub_ata_iterate (grub_disk_dev_iterate_hook_t hook, void *hook_data, - grub_disk_pull_t pull) -{ - struct grub_ata_iterate_ctx ctx = { hook, hook_data }; - grub_ata_dev_t p; - - for (p = grub_ata_dev_list; p; p = p->next) - if (p->iterate && p->iterate (grub_ata_iterate_iter, &ctx, pull)) - return 1; - return 0; -} - -static grub_err_t -grub_ata_open (const char *name, grub_disk_t disk) -{ - unsigned id, bus; - struct grub_ata *ata; - - for (id = 0; id < GRUB_SCSI_NUM_SUBSYSTEMS; id++) - if (grub_strncmp (grub_scsi_names[id], name, - grub_strlen (grub_scsi_names[id])) == 0 - && grub_isdigit (name[grub_strlen (grub_scsi_names[id])])) - break; - if (id == GRUB_SCSI_NUM_SUBSYSTEMS) - return grub_error (GRUB_ERR_UNKNOWN_DEVICE, "not an ATA harddisk"); - bus = grub_strtoul (name + grub_strlen (grub_scsi_names[id]), 0, 0); - ata = grub_ata_real_open (id, bus); - if (!ata) - return grub_errno; - - if (ata->atapi) - return grub_error (GRUB_ERR_UNKNOWN_DEVICE, "not an ATA harddisk"); - - disk->total_sectors = ata->size; - disk->max_agglomerate = (ata->maxbuffer >> (GRUB_DISK_CACHE_BITS + GRUB_DISK_SECTOR_BITS)); - if (disk->max_agglomerate > (256U >> (GRUB_DISK_CACHE_BITS + GRUB_DISK_SECTOR_BITS - ata->log_sector_size))) - disk->max_agglomerate = (256U >> (GRUB_DISK_CACHE_BITS + GRUB_DISK_SECTOR_BITS - ata->log_sector_size)); - - disk->log_sector_size = ata->log_sector_size; - - disk->id = grub_make_scsi_id (id, bus, 0); - - disk->data = ata; - - return 0; -} - -static void -grub_ata_close (grub_disk_t disk) -{ - struct grub_ata *ata = disk->data; - grub_ata_real_close (ata); -} - -static grub_err_t -grub_ata_read (grub_disk_t disk, grub_disk_addr_t sector, - grub_size_t size, char *buf) -{ - return grub_ata_readwrite (disk, sector, size, buf, 0); -} - -static grub_err_t -grub_ata_write (grub_disk_t disk, - grub_disk_addr_t sector, - grub_size_t size, - const char *buf) -{ - return grub_ata_readwrite (disk, sector, size, (char *) buf, 1); -} - -static struct grub_disk_dev grub_atadisk_dev = - { - .name = "ATA", - .id = GRUB_DISK_DEVICE_ATA_ID, - .disk_iterate = grub_ata_iterate, - .disk_open = grub_ata_open, - .disk_close = grub_ata_close, - .disk_read = grub_ata_read, - .disk_write = grub_ata_write, - .next = 0 - }; - - - -/* ATAPI code. */ - -static grub_err_t -grub_atapi_read (struct grub_scsi *scsi, grub_size_t cmdsize, char *cmd, - grub_size_t size, char *buf) -{ - struct grub_ata *dev = scsi->data; - struct grub_disk_ata_pass_through_parms parms; - grub_err_t err; - - grub_dprintf("ata", "grub_atapi_read (size=%llu)\n", (unsigned long long) size); - grub_memset (&parms, 0, sizeof (parms)); - - parms.taskfile.disk = 0; - parms.taskfile.features = 0; - parms.taskfile.atapi_ireason = 0; - parms.taskfile.atapi_cnthigh = size >> 8; - parms.taskfile.atapi_cntlow = size & 0xff; - parms.taskfile.cmd = GRUB_ATA_CMD_PACKET; - parms.cmd = cmd; - parms.cmdsize = cmdsize; - - parms.size = size; - parms.buffer = buf; - - err = dev->dev->readwrite (dev, &parms, 0); - if (err) - return err; - - if (parms.size != size) - return grub_error (GRUB_ERR_READ_ERROR, "incomplete ATAPI read"); - return GRUB_ERR_NONE; -} - -static grub_err_t -grub_atapi_write (struct grub_scsi *scsi __attribute__((unused)), - grub_size_t cmdsize __attribute__((unused)), - char *cmd __attribute__((unused)), - grub_size_t size __attribute__((unused)), - const char *buf __attribute__((unused))) -{ - // XXX: scsi.mod does not use write yet. - return grub_error (GRUB_ERR_NOT_IMPLEMENTED_YET, "ATAPI write not implemented"); -} - -static grub_err_t -grub_atapi_open (int id, int bus, struct grub_scsi *scsi) -{ - struct grub_ata *ata; - - ata = grub_ata_real_open (id, bus); - if (!ata) - return grub_errno; - - if (! ata->atapi) - return grub_error (GRUB_ERR_UNKNOWN_DEVICE, "no such ATAPI device"); - - scsi->data = ata; - scsi->luns = 1; - - return GRUB_ERR_NONE; -} - -/* Context for grub_atapi_iterate. */ -struct grub_atapi_iterate_ctx -{ - grub_scsi_dev_iterate_hook_t hook; - void *hook_data; -}; - -/* Helper for grub_atapi_iterate. */ -static int -grub_atapi_iterate_iter (int id, int bus, void *data) -{ - struct grub_atapi_iterate_ctx *ctx = data; - struct grub_ata *ata; - int ret; - - ata = grub_ata_real_open (id, bus); - - if (!ata) - { - grub_errno = GRUB_ERR_NONE; - return 0; - } - if (!ata->atapi) - { - grub_ata_real_close (ata); - return 0; - } - ret = ctx->hook (id, bus, 1, ctx->hook_data); - grub_ata_real_close (ata); - return ret; -} - -static int -grub_atapi_iterate (grub_scsi_dev_iterate_hook_t hook, void *hook_data, - grub_disk_pull_t pull) -{ - struct grub_atapi_iterate_ctx ctx = { hook, hook_data }; - grub_ata_dev_t p; - - for (p = grub_ata_dev_list; p; p = p->next) - if (p->iterate && p->iterate (grub_atapi_iterate_iter, &ctx, pull)) - return 1; - return 0; -} - -static void -grub_atapi_close (grub_scsi_t disk) -{ - struct grub_ata *ata = disk->data; - grub_ata_real_close (ata); -} - - -void -grub_ata_dev_register (grub_ata_dev_t dev) -{ - dev->next = grub_ata_dev_list; - grub_ata_dev_list = dev; -} - -void -grub_ata_dev_unregister (grub_ata_dev_t dev) -{ - grub_ata_dev_t *p, q; - - for (p = &grub_ata_dev_list, q = *p; q; p = &(q->next), q = q->next) - if (q == dev) - { - *p = q->next; - break; - } -} - -static struct grub_scsi_dev grub_atapi_dev = - { - .iterate = grub_atapi_iterate, - .open = grub_atapi_open, - .close = grub_atapi_close, - .read = grub_atapi_read, - .write = grub_atapi_write, - .next = 0 - }; - - - -GRUB_MOD_INIT(ata) -{ - grub_disk_dev_register (&grub_atadisk_dev); - - /* ATAPI devices are handled by scsi.mod. */ - grub_scsi_dev_register (&grub_atapi_dev); -} - -GRUB_MOD_FINI(ata) -{ - grub_scsi_dev_unregister (&grub_atapi_dev); - grub_disk_dev_unregister (&grub_atadisk_dev); -} diff --git a/thirdparty/grub-2.04/grub-core/disk/cryptodisk.c b/thirdparty/grub-2.04/grub-core/disk/cryptodisk.c deleted file mode 100644 index 5037768fc..000000000 --- a/thirdparty/grub-2.04/grub-core/disk/cryptodisk.c +++ /dev/null @@ -1,1154 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2003,2007,2010,2011 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#ifdef GRUB_UTIL -#include -#endif - -GRUB_MOD_LICENSE ("GPLv3+"); - -grub_cryptodisk_dev_t grub_cryptodisk_list; - -static const struct grub_arg_option options[] = - { - {"uuid", 'u', 0, N_("Mount by UUID."), 0, 0}, - /* TRANSLATORS: It's still restricted to cryptodisks only. */ - {"all", 'a', 0, N_("Mount all."), 0, 0}, - {"boot", 'b', 0, N_("Mount all volumes with `boot' flag set."), 0, 0}, - {0, 0, 0, 0, 0, 0} - }; - -/* Our irreducible polynom is x^128+x^7+x^2+x+1. Lowest byte of it is: */ -#define GF_POLYNOM 0x87 -static inline int GF_PER_SECTOR (const struct grub_cryptodisk *dev) -{ - return 1U << (dev->log_sector_size - GRUB_CRYPTODISK_GF_LOG_BYTES); -} - -static grub_cryptodisk_t cryptodisk_list = NULL; -static grub_uint8_t last_cryptodisk_id = 0; - -static void -gf_mul_x (grub_uint8_t *g) -{ - int over = 0, over2 = 0; - unsigned j; - - for (j = 0; j < GRUB_CRYPTODISK_GF_BYTES; j++) - { - over2 = !!(g[j] & 0x80); - g[j] <<= 1; - g[j] |= over; - over = over2; - } - if (over) - g[0] ^= GF_POLYNOM; -} - - -static void -gf_mul_x_be (grub_uint8_t *g) -{ - int over = 0, over2 = 0; - int j; - - for (j = (int) GRUB_CRYPTODISK_GF_BYTES - 1; j >= 0; j--) - { - over2 = !!(g[j] & 0x80); - g[j] <<= 1; - g[j] |= over; - over = over2; - } - if (over) - g[GRUB_CRYPTODISK_GF_BYTES - 1] ^= GF_POLYNOM; -} - -static void -gf_mul_be (grub_uint8_t *o, const grub_uint8_t *a, const grub_uint8_t *b) -{ - unsigned i; - grub_uint8_t t[GRUB_CRYPTODISK_GF_BYTES]; - grub_memset (o, 0, GRUB_CRYPTODISK_GF_BYTES); - grub_memcpy (t, b, GRUB_CRYPTODISK_GF_BYTES); - for (i = 0; i < GRUB_CRYPTODISK_GF_SIZE; i++) - { - if (((a[GRUB_CRYPTODISK_GF_BYTES - i / GRUB_CHAR_BIT - 1] >> (i % GRUB_CHAR_BIT))) & 1) - grub_crypto_xor (o, o, t, GRUB_CRYPTODISK_GF_BYTES); - gf_mul_x_be (t); - } -} - -static gcry_err_code_t -grub_crypto_pcbc_decrypt (grub_crypto_cipher_handle_t cipher, - void *out, void *in, grub_size_t size, - void *iv) -{ - grub_uint8_t *inptr, *outptr, *end; - grub_uint8_t ivt[GRUB_CRYPTO_MAX_CIPHER_BLOCKSIZE]; - grub_size_t blocksize; - if (!cipher->cipher->decrypt) - return GPG_ERR_NOT_SUPPORTED; - blocksize = cipher->cipher->blocksize; - if (blocksize == 0 || (((blocksize - 1) & blocksize) != 0) - || ((size & (blocksize - 1)) != 0)) - return GPG_ERR_INV_ARG; - if (blocksize > GRUB_CRYPTO_MAX_CIPHER_BLOCKSIZE) - return GPG_ERR_INV_ARG; - end = (grub_uint8_t *) in + size; - for (inptr = in, outptr = out; inptr < end; - inptr += blocksize, outptr += blocksize) - { - grub_memcpy (ivt, inptr, blocksize); - cipher->cipher->decrypt (cipher->ctx, outptr, inptr); - grub_crypto_xor (outptr, outptr, iv, blocksize); - grub_crypto_xor (iv, ivt, outptr, blocksize); - } - return GPG_ERR_NO_ERROR; -} - -static gcry_err_code_t -grub_crypto_pcbc_encrypt (grub_crypto_cipher_handle_t cipher, - void *out, void *in, grub_size_t size, - void *iv) -{ - grub_uint8_t *inptr, *outptr, *end; - grub_uint8_t ivt[GRUB_CRYPTO_MAX_CIPHER_BLOCKSIZE]; - grub_size_t blocksize; - if (!cipher->cipher->encrypt) - return GPG_ERR_NOT_SUPPORTED; - blocksize = cipher->cipher->blocksize; - if (blocksize > GRUB_CRYPTO_MAX_CIPHER_BLOCKSIZE) - return GPG_ERR_INV_ARG; - if (blocksize == 0 || (((blocksize - 1) & blocksize) != 0) - || ((size & (blocksize - 1)) != 0)) - return GPG_ERR_INV_ARG; - end = (grub_uint8_t *) in + size; - for (inptr = in, outptr = out; inptr < end; - inptr += blocksize, outptr += blocksize) - { - grub_memcpy (ivt, inptr, blocksize); - grub_crypto_xor (outptr, outptr, iv, blocksize); - cipher->cipher->encrypt (cipher->ctx, outptr, inptr); - grub_crypto_xor (iv, ivt, outptr, blocksize); - } - return GPG_ERR_NO_ERROR; -} - -struct lrw_sector -{ - grub_uint8_t low[GRUB_CRYPTODISK_GF_BYTES]; - grub_uint8_t high[GRUB_CRYPTODISK_GF_BYTES]; - grub_uint8_t low_byte, low_byte_c; -}; - -static void -generate_lrw_sector (struct lrw_sector *sec, - const struct grub_cryptodisk *dev, - const grub_uint8_t *iv) -{ - grub_uint8_t idx[GRUB_CRYPTODISK_GF_BYTES]; - grub_uint16_t c; - int j; - grub_memcpy (idx, iv, GRUB_CRYPTODISK_GF_BYTES); - sec->low_byte = (idx[GRUB_CRYPTODISK_GF_BYTES - 1] - & (GF_PER_SECTOR (dev) - 1)); - sec->low_byte_c = (((GF_PER_SECTOR (dev) - 1) & ~sec->low_byte) + 1); - idx[GRUB_CRYPTODISK_GF_BYTES - 1] &= ~(GF_PER_SECTOR (dev) - 1); - gf_mul_be (sec->low, dev->lrw_key, idx); - if (!sec->low_byte) - return; - - c = idx[GRUB_CRYPTODISK_GF_BYTES - 1] + GF_PER_SECTOR (dev); - if (c & 0x100) - { - for (j = GRUB_CRYPTODISK_GF_BYTES - 2; j >= 0; j--) - { - idx[j]++; - if (idx[j] != 0) - break; - } - } - idx[GRUB_CRYPTODISK_GF_BYTES - 1] = c; - gf_mul_be (sec->high, dev->lrw_key, idx); -} - -static void __attribute__ ((unused)) -lrw_xor (const struct lrw_sector *sec, - const struct grub_cryptodisk *dev, - grub_uint8_t *b) -{ - unsigned i; - - for (i = 0; i < sec->low_byte_c * GRUB_CRYPTODISK_GF_BYTES; - i += GRUB_CRYPTODISK_GF_BYTES) - grub_crypto_xor (b + i, b + i, sec->low, GRUB_CRYPTODISK_GF_BYTES); - grub_crypto_xor (b, b, dev->lrw_precalc + GRUB_CRYPTODISK_GF_BYTES * sec->low_byte, - sec->low_byte_c * GRUB_CRYPTODISK_GF_BYTES); - if (!sec->low_byte) - return; - - for (i = sec->low_byte_c * GRUB_CRYPTODISK_GF_BYTES; - i < (1U << dev->log_sector_size); i += GRUB_CRYPTODISK_GF_BYTES) - grub_crypto_xor (b + i, b + i, sec->high, GRUB_CRYPTODISK_GF_BYTES); - grub_crypto_xor (b + sec->low_byte_c * GRUB_CRYPTODISK_GF_BYTES, - b + sec->low_byte_c * GRUB_CRYPTODISK_GF_BYTES, - dev->lrw_precalc, sec->low_byte * GRUB_CRYPTODISK_GF_BYTES); -} - -static gcry_err_code_t -grub_cryptodisk_endecrypt (struct grub_cryptodisk *dev, - grub_uint8_t * data, grub_size_t len, - grub_disk_addr_t sector, int do_encrypt) -{ - grub_size_t i; - gcry_err_code_t err; - - if (dev->cipher->cipher->blocksize > GRUB_CRYPTO_MAX_CIPHER_BLOCKSIZE) - return GPG_ERR_INV_ARG; - - /* The only mode without IV. */ - if (dev->mode == GRUB_CRYPTODISK_MODE_ECB && !dev->rekey) - return (do_encrypt ? grub_crypto_ecb_encrypt (dev->cipher, data, data, len) - : grub_crypto_ecb_decrypt (dev->cipher, data, data, len)); - - for (i = 0; i < len; i += (1U << dev->log_sector_size)) - { - grub_size_t sz = ((dev->cipher->cipher->blocksize - + sizeof (grub_uint32_t) - 1) - / sizeof (grub_uint32_t)); - grub_uint32_t iv[(GRUB_CRYPTO_MAX_CIPHER_BLOCKSIZE + 3) / 4]; - - if (dev->rekey) - { - grub_uint64_t zone = sector >> dev->rekey_shift; - if (zone != dev->last_rekey) - { - err = dev->rekey (dev, zone); - if (err) - return err; - dev->last_rekey = zone; - } - } - - grub_memset (iv, 0, sizeof (iv)); - switch (dev->mode_iv) - { - case GRUB_CRYPTODISK_MODE_IV_NULL: - break; - case GRUB_CRYPTODISK_MODE_IV_BYTECOUNT64_HASH: - { - grub_uint64_t tmp; - void *ctx; - - ctx = grub_zalloc (dev->iv_hash->contextsize); - if (!ctx) - return GPG_ERR_OUT_OF_MEMORY; - - tmp = grub_cpu_to_le64 (sector << dev->log_sector_size); - dev->iv_hash->init (ctx); - dev->iv_hash->write (ctx, dev->iv_prefix, dev->iv_prefix_len); - dev->iv_hash->write (ctx, &tmp, sizeof (tmp)); - dev->iv_hash->final (ctx); - - grub_memcpy (iv, dev->iv_hash->read (ctx), sizeof (iv)); - grub_free (ctx); - } - break; - case GRUB_CRYPTODISK_MODE_IV_PLAIN64: - iv[1] = grub_cpu_to_le32 (sector >> 32); - /* FALLTHROUGH */ - case GRUB_CRYPTODISK_MODE_IV_PLAIN: - iv[0] = grub_cpu_to_le32 (sector & 0xFFFFFFFF); - break; - case GRUB_CRYPTODISK_MODE_IV_BYTECOUNT64: - iv[1] = grub_cpu_to_le32 (sector >> (32 - dev->log_sector_size)); - iv[0] = grub_cpu_to_le32 ((sector << dev->log_sector_size) - & 0xFFFFFFFF); - break; - case GRUB_CRYPTODISK_MODE_IV_BENBI: - { - grub_uint64_t num = (sector << dev->benbi_log) + 1; - iv[sz - 2] = grub_cpu_to_be32 (num >> 32); - iv[sz - 1] = grub_cpu_to_be32 (num & 0xFFFFFFFF); - } - break; - case GRUB_CRYPTODISK_MODE_IV_ESSIV: - iv[0] = grub_cpu_to_le32 (sector & 0xFFFFFFFF); - err = grub_crypto_ecb_encrypt (dev->essiv_cipher, iv, iv, - dev->cipher->cipher->blocksize); - if (err) - return err; - } - - switch (dev->mode) - { - case GRUB_CRYPTODISK_MODE_CBC: - if (do_encrypt) - err = grub_crypto_cbc_encrypt (dev->cipher, data + i, data + i, - (1U << dev->log_sector_size), iv); - else - err = grub_crypto_cbc_decrypt (dev->cipher, data + i, data + i, - (1U << dev->log_sector_size), iv); - if (err) - return err; - break; - - case GRUB_CRYPTODISK_MODE_PCBC: - if (do_encrypt) - err = grub_crypto_pcbc_encrypt (dev->cipher, data + i, data + i, - (1U << dev->log_sector_size), iv); - else - err = grub_crypto_pcbc_decrypt (dev->cipher, data + i, data + i, - (1U << dev->log_sector_size), iv); - if (err) - return err; - break; - case GRUB_CRYPTODISK_MODE_XTS: - { - unsigned j; - err = grub_crypto_ecb_encrypt (dev->secondary_cipher, iv, iv, - dev->cipher->cipher->blocksize); - if (err) - return err; - - for (j = 0; j < (1U << dev->log_sector_size); - j += dev->cipher->cipher->blocksize) - { - grub_crypto_xor (data + i + j, data + i + j, iv, - dev->cipher->cipher->blocksize); - if (do_encrypt) - err = grub_crypto_ecb_encrypt (dev->cipher, data + i + j, - data + i + j, - dev->cipher->cipher->blocksize); - else - err = grub_crypto_ecb_decrypt (dev->cipher, data + i + j, - data + i + j, - dev->cipher->cipher->blocksize); - if (err) - return err; - grub_crypto_xor (data + i + j, data + i + j, iv, - dev->cipher->cipher->blocksize); - gf_mul_x ((grub_uint8_t *) iv); - } - } - break; - case GRUB_CRYPTODISK_MODE_LRW: - { - struct lrw_sector sec; - - generate_lrw_sector (&sec, dev, (grub_uint8_t *) iv); - lrw_xor (&sec, dev, data + i); - - if (do_encrypt) - err = grub_crypto_ecb_encrypt (dev->cipher, data + i, - data + i, - (1U << dev->log_sector_size)); - else - err = grub_crypto_ecb_decrypt (dev->cipher, data + i, - data + i, - (1U << dev->log_sector_size)); - if (err) - return err; - lrw_xor (&sec, dev, data + i); - } - break; - case GRUB_CRYPTODISK_MODE_ECB: - if (do_encrypt) - err = grub_crypto_ecb_encrypt (dev->cipher, data + i, data + i, - (1U << dev->log_sector_size)); - else - err = grub_crypto_ecb_decrypt (dev->cipher, data + i, data + i, - (1U << dev->log_sector_size)); - if (err) - return err; - break; - default: - return GPG_ERR_NOT_IMPLEMENTED; - } - sector++; - } - return GPG_ERR_NO_ERROR; -} - -gcry_err_code_t -grub_cryptodisk_decrypt (struct grub_cryptodisk *dev, - grub_uint8_t * data, grub_size_t len, - grub_disk_addr_t sector) -{ - return grub_cryptodisk_endecrypt (dev, data, len, sector, 0); -} - -gcry_err_code_t -grub_cryptodisk_setkey (grub_cryptodisk_t dev, grub_uint8_t *key, grub_size_t keysize) -{ - gcry_err_code_t err; - int real_keysize; - - real_keysize = keysize; - if (dev->mode == GRUB_CRYPTODISK_MODE_XTS) - real_keysize /= 2; - if (dev->mode == GRUB_CRYPTODISK_MODE_LRW) - real_keysize -= dev->cipher->cipher->blocksize; - - /* Set the PBKDF2 output as the cipher key. */ - err = grub_crypto_cipher_set_key (dev->cipher, key, real_keysize); - if (err) - return err; - grub_memcpy (dev->key, key, keysize); - dev->keysize = keysize; - - /* Configure ESSIV if necessary. */ - if (dev->mode_iv == GRUB_CRYPTODISK_MODE_IV_ESSIV) - { - grub_size_t essiv_keysize = dev->essiv_hash->mdlen; - grub_uint8_t hashed_key[GRUB_CRYPTO_MAX_MDLEN]; - if (essiv_keysize > GRUB_CRYPTO_MAX_MDLEN) - return GPG_ERR_INV_ARG; - - grub_crypto_hash (dev->essiv_hash, hashed_key, key, keysize); - err = grub_crypto_cipher_set_key (dev->essiv_cipher, - hashed_key, essiv_keysize); - if (err) - return err; - } - if (dev->mode == GRUB_CRYPTODISK_MODE_XTS) - { - err = grub_crypto_cipher_set_key (dev->secondary_cipher, - key + real_keysize, - keysize / 2); - if (err) - return err; - } - - if (dev->mode == GRUB_CRYPTODISK_MODE_LRW) - { - unsigned i; - grub_uint8_t idx[GRUB_CRYPTODISK_GF_BYTES]; - - grub_free (dev->lrw_precalc); - grub_memcpy (dev->lrw_key, key + real_keysize, - dev->cipher->cipher->blocksize); - dev->lrw_precalc = grub_malloc ((1U << dev->log_sector_size)); - if (!dev->lrw_precalc) - return GPG_ERR_OUT_OF_MEMORY; - grub_memset (idx, 0, GRUB_CRYPTODISK_GF_BYTES); - for (i = 0; i < (1U << dev->log_sector_size); - i += GRUB_CRYPTODISK_GF_BYTES) - { - idx[GRUB_CRYPTODISK_GF_BYTES - 1] = i / GRUB_CRYPTODISK_GF_BYTES; - gf_mul_be (dev->lrw_precalc + i, idx, dev->lrw_key); - } - } - return GPG_ERR_NO_ERROR; -} - -static int -grub_cryptodisk_iterate (grub_disk_dev_iterate_hook_t hook, void *hook_data, - grub_disk_pull_t pull) -{ - grub_cryptodisk_t i; - - if (pull != GRUB_DISK_PULL_NONE) - return 0; - - for (i = cryptodisk_list; i != NULL; i = i->next) - { - char buf[30]; - grub_snprintf (buf, sizeof (buf), "crypto%lu", i->id); - if (hook (buf, hook_data)) - return 1; - } - - return GRUB_ERR_NONE; -} - -static grub_err_t -grub_cryptodisk_open (const char *name, grub_disk_t disk) -{ - grub_cryptodisk_t dev; - - if (grub_memcmp (name, "crypto", sizeof ("crypto") - 1) != 0) - return grub_error (GRUB_ERR_UNKNOWN_DEVICE, "No such device"); - - if (grub_memcmp (name, "cryptouuid/", sizeof ("cryptouuid/") - 1) == 0) - { - for (dev = cryptodisk_list; dev != NULL; dev = dev->next) - if (grub_strcasecmp (name + sizeof ("cryptouuid/") - 1, dev->uuid) == 0) - break; - } - else - { - unsigned long id = grub_strtoul (name + sizeof ("crypto") - 1, 0, 0); - if (grub_errno) - return grub_error (GRUB_ERR_UNKNOWN_DEVICE, "No such device"); - /* Search for requested device in the list of CRYPTODISK devices. */ - for (dev = cryptodisk_list; dev != NULL; dev = dev->next) - if (dev->id == id) - break; - } - if (!dev) - return grub_error (GRUB_ERR_UNKNOWN_DEVICE, "No such device"); - - disk->log_sector_size = dev->log_sector_size; - -#ifdef GRUB_UTIL - if (dev->cheat) - { - if (!GRUB_UTIL_FD_IS_VALID (dev->cheat_fd)) - dev->cheat_fd = grub_util_fd_open (dev->cheat, GRUB_UTIL_FD_O_RDONLY); - if (!GRUB_UTIL_FD_IS_VALID (dev->cheat_fd)) - return grub_error (GRUB_ERR_IO, N_("cannot open `%s': %s"), - dev->cheat, grub_util_fd_strerror ()); - } -#endif - - if (!dev->source_disk) - { - grub_dprintf ("cryptodisk", "Opening device %s\n", name); - /* Try to open the source disk and populate the requested disk. */ - dev->source_disk = grub_disk_open (dev->source); - if (!dev->source_disk) - return grub_errno; - } - - disk->data = dev; - disk->total_sectors = dev->total_length; - disk->max_agglomerate = GRUB_DISK_MAX_MAX_AGGLOMERATE; - disk->id = dev->id; - dev->ref++; - return GRUB_ERR_NONE; -} - -static void -grub_cryptodisk_close (grub_disk_t disk) -{ - grub_cryptodisk_t dev = (grub_cryptodisk_t) disk->data; - grub_dprintf ("cryptodisk", "Closing disk\n"); - - dev->ref--; - - if (dev->ref != 0) - return; -#ifdef GRUB_UTIL - if (dev->cheat) - { - grub_util_fd_close (dev->cheat_fd); - dev->cheat_fd = GRUB_UTIL_FD_INVALID; - } -#endif - grub_disk_close (dev->source_disk); - dev->source_disk = NULL; -} - -static grub_err_t -grub_cryptodisk_read (grub_disk_t disk, grub_disk_addr_t sector, - grub_size_t size, char *buf) -{ - grub_cryptodisk_t dev = (grub_cryptodisk_t) disk->data; - grub_err_t err; - gcry_err_code_t gcry_err; - -#ifdef GRUB_UTIL - if (dev->cheat) - { - int r; - r = grub_util_fd_seek (dev->cheat_fd, sector << disk->log_sector_size); - if (r) - return grub_error (GRUB_ERR_BAD_DEVICE, N_("cannot seek `%s': %s"), - dev->cheat, grub_util_fd_strerror ()); - if (grub_util_fd_read (dev->cheat_fd, buf, size << disk->log_sector_size) - != (ssize_t) (size << disk->log_sector_size)) - return grub_error (GRUB_ERR_READ_ERROR, N_("cannot read `%s': %s"), - dev->cheat, grub_util_fd_strerror ()); - return GRUB_ERR_NONE; - } -#endif - - grub_dprintf ("cryptodisk", - "Reading %" PRIuGRUB_SIZE " sectors from sector 0x%" - PRIxGRUB_UINT64_T " with offset of %" PRIuGRUB_UINT64_T "\n", - size, sector, dev->offset); - - err = grub_disk_read (dev->source_disk, - (sector << (disk->log_sector_size - - GRUB_DISK_SECTOR_BITS)) + dev->offset, 0, - size << disk->log_sector_size, buf); - if (err) - { - grub_dprintf ("cryptodisk", "grub_disk_read failed with error %d\n", err); - return err; - } - gcry_err = grub_cryptodisk_endecrypt (dev, (grub_uint8_t *) buf, - size << disk->log_sector_size, - sector, 0); - return grub_crypto_gcry_error (gcry_err); -} - -static grub_err_t -grub_cryptodisk_write (grub_disk_t disk, grub_disk_addr_t sector, - grub_size_t size, const char *buf) -{ - grub_cryptodisk_t dev = (grub_cryptodisk_t) disk->data; - gcry_err_code_t gcry_err; - char *tmp; - grub_err_t err; - -#ifdef GRUB_UTIL - if (dev->cheat) - { - int r; - r = grub_util_fd_seek (dev->cheat_fd, sector << disk->log_sector_size); - if (r) - return grub_error (GRUB_ERR_BAD_DEVICE, N_("cannot seek `%s': %s"), - dev->cheat, grub_util_fd_strerror ()); - if (grub_util_fd_write (dev->cheat_fd, buf, size << disk->log_sector_size) - != (ssize_t) (size << disk->log_sector_size)) - return grub_error (GRUB_ERR_READ_ERROR, N_("cannot read `%s': %s"), - dev->cheat, grub_util_fd_strerror ()); - return GRUB_ERR_NONE; - } -#endif - - tmp = grub_malloc (size << disk->log_sector_size); - if (!tmp) - return grub_errno; - grub_memcpy (tmp, buf, size << disk->log_sector_size); - - grub_dprintf ("cryptodisk", - "Writing %" PRIuGRUB_SIZE " sectors to sector 0x%" - PRIxGRUB_UINT64_T " with offset of %" PRIuGRUB_UINT64_T "\n", - size, sector, dev->offset); - - gcry_err = grub_cryptodisk_endecrypt (dev, (grub_uint8_t *) tmp, - size << disk->log_sector_size, - sector, 1); - if (gcry_err) - { - grub_free (tmp); - return grub_crypto_gcry_error (gcry_err); - } - - /* Since ->write was called so disk.mod is loaded but be paranoid */ - - if (grub_disk_write_weak) - err = grub_disk_write_weak (dev->source_disk, - (sector << (disk->log_sector_size - - GRUB_DISK_SECTOR_BITS)) - + dev->offset, - 0, size << disk->log_sector_size, tmp); - else - err = grub_error (GRUB_ERR_BUG, "disk.mod not loaded"); - grub_free (tmp); - return err; -} - -#ifdef GRUB_UTIL -static grub_disk_memberlist_t -grub_cryptodisk_memberlist (grub_disk_t disk) -{ - grub_cryptodisk_t dev = (grub_cryptodisk_t) disk->data; - grub_disk_memberlist_t list = NULL; - - list = grub_malloc (sizeof (*list)); - if (list) - { - list->disk = dev->source_disk; - list->next = NULL; - } - - return list; -} -#endif - -static void -cryptodisk_cleanup (void) -{ -#if 0 - grub_cryptodisk_t dev = cryptodisk_list; - grub_cryptodisk_t tmp; - - while (dev != NULL) - { - grub_free (dev->source); - grub_free (dev->cipher); - grub_free (dev->secondary_cipher); - grub_free (dev->essiv_cipher); - tmp = dev->next; - grub_free (dev); - dev = tmp; - } -#endif -} - -grub_err_t -grub_cryptodisk_insert (grub_cryptodisk_t newdev, const char *name, - grub_disk_t source) -{ - newdev->source = grub_strdup (name); - if (!newdev->source) - { - grub_free (newdev); - return grub_errno; - } - - newdev->id = last_cryptodisk_id++; - newdev->source_id = source->id; - newdev->source_dev_id = source->dev->id; - newdev->partition_start = grub_partition_get_start (source->partition); - newdev->next = cryptodisk_list; - cryptodisk_list = newdev; - - return GRUB_ERR_NONE; -} - -grub_cryptodisk_t -grub_cryptodisk_get_by_uuid (const char *uuid) -{ - grub_cryptodisk_t dev; - for (dev = cryptodisk_list; dev != NULL; dev = dev->next) - if (grub_strcasecmp (dev->uuid, uuid) == 0) - return dev; - return NULL; -} - -grub_cryptodisk_t -grub_cryptodisk_get_by_source_disk (grub_disk_t disk) -{ - grub_cryptodisk_t dev; - for (dev = cryptodisk_list; dev != NULL; dev = dev->next) - if (dev->source_id == disk->id && dev->source_dev_id == disk->dev->id) - if ((disk->partition && grub_partition_get_start (disk->partition) == dev->partition_start) || - (!disk->partition && dev->partition_start == 0)) - return dev; - return NULL; -} - -#ifdef GRUB_UTIL -grub_err_t -grub_cryptodisk_cheat_insert (grub_cryptodisk_t newdev, const char *name, - grub_disk_t source, const char *cheat) -{ - newdev->cheat = grub_strdup (cheat); - newdev->source = grub_strdup (name); - if (!newdev->source || !newdev->cheat) - { - grub_free (newdev->source); - grub_free (newdev->cheat); - return grub_errno; - } - - newdev->cheat_fd = GRUB_UTIL_FD_INVALID; - newdev->source_id = source->id; - newdev->source_dev_id = source->dev->id; - newdev->partition_start = grub_partition_get_start (source->partition); - newdev->id = last_cryptodisk_id++; - newdev->next = cryptodisk_list; - cryptodisk_list = newdev; - - return GRUB_ERR_NONE; -} - -void -grub_util_cryptodisk_get_abstraction (grub_disk_t disk, - void (*cb) (const char *val, void *data), - void *data) -{ - grub_cryptodisk_t dev = (grub_cryptodisk_t) disk->data; - - cb ("cryptodisk", data); - cb (dev->modname, data); - - if (dev->cipher) - cb (dev->cipher->cipher->modname, data); - if (dev->secondary_cipher) - cb (dev->secondary_cipher->cipher->modname, data); - if (dev->essiv_cipher) - cb (dev->essiv_cipher->cipher->modname, data); - if (dev->hash) - cb (dev->hash->modname, data); - if (dev->essiv_hash) - cb (dev->essiv_hash->modname, data); - if (dev->iv_hash) - cb (dev->iv_hash->modname, data); -} - -const char * -grub_util_cryptodisk_get_uuid (grub_disk_t disk) -{ - grub_cryptodisk_t dev = (grub_cryptodisk_t) disk->data; - return dev->uuid; -} - -#endif - -static int check_boot, have_it; -static char *search_uuid; - -static void -cryptodisk_close (grub_cryptodisk_t dev) -{ - grub_crypto_cipher_close (dev->cipher); - grub_crypto_cipher_close (dev->secondary_cipher); - grub_crypto_cipher_close (dev->essiv_cipher); - grub_free (dev); -} - -static grub_err_t -grub_cryptodisk_scan_device_real (const char *name, grub_disk_t source) -{ - grub_err_t err; - grub_cryptodisk_t dev; - grub_cryptodisk_dev_t cr; - - dev = grub_cryptodisk_get_by_source_disk (source); - - if (dev) - return GRUB_ERR_NONE; - - FOR_CRYPTODISK_DEVS (cr) - { - dev = cr->scan (source, search_uuid, check_boot); - if (grub_errno) - return grub_errno; - if (!dev) - continue; - - err = cr->recover_key (source, dev); - if (err) - { - cryptodisk_close (dev); - return err; - } - - grub_cryptodisk_insert (dev, name, source); - - have_it = 1; - - return GRUB_ERR_NONE; - } - return GRUB_ERR_NONE; -} - -#ifdef GRUB_UTIL -#include -grub_err_t -grub_cryptodisk_cheat_mount (const char *sourcedev, const char *cheat) -{ - grub_err_t err; - grub_cryptodisk_t dev; - grub_cryptodisk_dev_t cr; - grub_disk_t source; - - /* Try to open disk. */ - source = grub_disk_open (sourcedev); - if (!source) - return grub_errno; - - dev = grub_cryptodisk_get_by_source_disk (source); - - if (dev) - { - grub_disk_close (source); - return GRUB_ERR_NONE; - } - - FOR_CRYPTODISK_DEVS (cr) - { - dev = cr->scan (source, search_uuid, check_boot); - if (grub_errno) - return grub_errno; - if (!dev) - continue; - - grub_util_info ("cheatmounted %s (%s) at %s", sourcedev, dev->modname, - cheat); - err = grub_cryptodisk_cheat_insert (dev, sourcedev, source, cheat); - grub_disk_close (source); - if (err) - grub_free (dev); - - return GRUB_ERR_NONE; - } - - grub_disk_close (source); - - return GRUB_ERR_NONE; -} -#endif - -static int -grub_cryptodisk_scan_device (const char *name, - void *data __attribute__ ((unused))) -{ - grub_err_t err; - grub_disk_t source; - - /* Try to open disk. */ - source = grub_disk_open (name); - if (!source) - { - grub_print_error (); - return 0; - } - - err = grub_cryptodisk_scan_device_real (name, source); - - grub_disk_close (source); - - if (err) - grub_print_error (); - return have_it && search_uuid ? 1 : 0; -} - -static grub_err_t -grub_cmd_cryptomount (grub_extcmd_context_t ctxt, int argc, char **args) -{ - struct grub_arg_list *state = ctxt->state; - - if (argc < 1 && !state[1].set && !state[2].set) - return grub_error (GRUB_ERR_BAD_ARGUMENT, "device name required"); - - have_it = 0; - if (state[0].set) - { - grub_cryptodisk_t dev; - - dev = grub_cryptodisk_get_by_uuid (args[0]); - if (dev) - { - grub_dprintf ("cryptodisk", - "already mounted as crypto%lu\n", dev->id); - return GRUB_ERR_NONE; - } - - check_boot = state[2].set; - search_uuid = args[0]; - grub_device_iterate (&grub_cryptodisk_scan_device, NULL); - search_uuid = NULL; - - if (!have_it) - return grub_error (GRUB_ERR_BAD_ARGUMENT, "no such cryptodisk found"); - return GRUB_ERR_NONE; - } - else if (state[1].set || (argc == 0 && state[2].set)) - { - search_uuid = NULL; - check_boot = state[2].set; - grub_device_iterate (&grub_cryptodisk_scan_device, NULL); - search_uuid = NULL; - return GRUB_ERR_NONE; - } - else - { - grub_err_t err; - grub_disk_t disk; - grub_cryptodisk_t dev; - char *diskname; - char *disklast = NULL; - grub_size_t len; - - search_uuid = NULL; - check_boot = state[2].set; - diskname = args[0]; - len = grub_strlen (diskname); - if (len && diskname[0] == '(' && diskname[len - 1] == ')') - { - disklast = &diskname[len - 1]; - *disklast = '\0'; - diskname++; - } - - disk = grub_disk_open (diskname); - if (!disk) - { - if (disklast) - *disklast = ')'; - return grub_errno; - } - - dev = grub_cryptodisk_get_by_source_disk (disk); - if (dev) - { - grub_dprintf ("cryptodisk", "already mounted as crypto%lu\n", dev->id); - grub_disk_close (disk); - if (disklast) - *disklast = ')'; - return GRUB_ERR_NONE; - } - - err = grub_cryptodisk_scan_device_real (diskname, disk); - - grub_disk_close (disk); - if (disklast) - *disklast = ')'; - - return err; - } -} - -static struct grub_disk_dev grub_cryptodisk_dev = { - .name = "cryptodisk", - .id = GRUB_DISK_DEVICE_CRYPTODISK_ID, - .disk_iterate = grub_cryptodisk_iterate, - .disk_open = grub_cryptodisk_open, - .disk_close = grub_cryptodisk_close, - .disk_read = grub_cryptodisk_read, - .disk_write = grub_cryptodisk_write, -#ifdef GRUB_UTIL - .disk_memberlist = grub_cryptodisk_memberlist, -#endif - .next = 0 -}; - -static char -hex (grub_uint8_t val) -{ - if (val < 10) - return '0' + val; - return 'a' + val - 10; -} - -/* Open a file named NAME and initialize FILE. */ -static char * -luks_script_get (grub_size_t *sz) -{ - grub_cryptodisk_t i; - grub_size_t size = 0; - char *ptr, *ret; - - *sz = 0; - - for (i = cryptodisk_list; i != NULL; i = i->next) - if (grub_strcmp (i->modname, "luks") == 0) - { - size += sizeof ("luks_mount "); - size += grub_strlen (i->uuid); - size += grub_strlen (i->cipher->cipher->name); - size += 54; - if (i->essiv_hash) - size += grub_strlen (i->essiv_hash->name); - size += i->keysize * 2; - } - - ret = grub_malloc (size + 1); - if (!ret) - return 0; - - ptr = ret; - - for (i = cryptodisk_list; i != NULL; i = i->next) - if (grub_strcmp (i->modname, "luks") == 0) - { - unsigned j; - const char *iptr; - ptr = grub_stpcpy (ptr, "luks_mount "); - ptr = grub_stpcpy (ptr, i->uuid); - *ptr++ = ' '; - grub_snprintf (ptr, 21, "%" PRIuGRUB_UINT64_T " ", i->offset); - while (*ptr) - ptr++; - for (iptr = i->cipher->cipher->name; *iptr; iptr++) - *ptr++ = grub_tolower (*iptr); - switch (i->mode) - { - case GRUB_CRYPTODISK_MODE_ECB: - ptr = grub_stpcpy (ptr, "-ecb"); - break; - case GRUB_CRYPTODISK_MODE_CBC: - ptr = grub_stpcpy (ptr, "-cbc"); - break; - case GRUB_CRYPTODISK_MODE_PCBC: - ptr = grub_stpcpy (ptr, "-pcbc"); - break; - case GRUB_CRYPTODISK_MODE_XTS: - ptr = grub_stpcpy (ptr, "-xts"); - break; - case GRUB_CRYPTODISK_MODE_LRW: - ptr = grub_stpcpy (ptr, "-lrw"); - break; - } - - switch (i->mode_iv) - { - case GRUB_CRYPTODISK_MODE_IV_NULL: - ptr = grub_stpcpy (ptr, "-null"); - break; - case GRUB_CRYPTODISK_MODE_IV_PLAIN: - ptr = grub_stpcpy (ptr, "-plain"); - break; - case GRUB_CRYPTODISK_MODE_IV_PLAIN64: - ptr = grub_stpcpy (ptr, "-plain64"); - break; - case GRUB_CRYPTODISK_MODE_IV_BENBI: - ptr = grub_stpcpy (ptr, "-benbi"); - break; - case GRUB_CRYPTODISK_MODE_IV_ESSIV: - ptr = grub_stpcpy (ptr, "-essiv:"); - ptr = grub_stpcpy (ptr, i->essiv_hash->name); - break; - case GRUB_CRYPTODISK_MODE_IV_BYTECOUNT64: - case GRUB_CRYPTODISK_MODE_IV_BYTECOUNT64_HASH: - break; - } - *ptr++ = ' '; - for (j = 0; j < i->keysize; j++) - { - *ptr++ = hex (i->key[j] >> 4); - *ptr++ = hex (i->key[j] & 0xf); - } - *ptr++ = '\n'; - } - *ptr = '\0'; - *sz = ptr - ret; - return ret; -} - -struct grub_procfs_entry luks_script = -{ - .name = "luks_script", - .get_contents = luks_script_get -}; - -static grub_extcmd_t cmd; - -GRUB_MOD_INIT (cryptodisk) -{ - grub_disk_dev_register (&grub_cryptodisk_dev); - cmd = grub_register_extcmd ("cryptomount", grub_cmd_cryptomount, 0, - N_("SOURCE|-u UUID|-a|-b"), - N_("Mount a crypto device."), options); - grub_procfs_register ("luks_script", &luks_script); -} - -GRUB_MOD_FINI (cryptodisk) -{ - grub_disk_dev_unregister (&grub_cryptodisk_dev); - cryptodisk_cleanup (); - grub_procfs_unregister (&luks_script); -} diff --git a/thirdparty/grub-2.04/grub-core/disk/diskfilter.c b/thirdparty/grub-2.04/grub-core/disk/diskfilter.c deleted file mode 100644 index c3b578acf..000000000 --- a/thirdparty/grub-2.04/grub-core/disk/diskfilter.c +++ /dev/null @@ -1,1350 +0,0 @@ -/* diskfilter.c - module to read RAID arrays. */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2006,2007,2008,2009,2010 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include -#ifdef GRUB_UTIL -#include -#include -#endif - -GRUB_MOD_LICENSE ("GPLv3+"); - -/* Linked list of DISKFILTER arrays. */ -static struct grub_diskfilter_vg *array_list; -grub_raid5_recover_func_t grub_raid5_recover_func; -grub_raid6_recover_func_t grub_raid6_recover_func; -grub_diskfilter_t grub_diskfilter_list; -static int inscnt = 0; -static int lv_num = 0; - -static struct grub_diskfilter_lv * -find_lv (const char *name); -static int is_lv_readable (struct grub_diskfilter_lv *lv, int easily); - - - -static grub_err_t -is_node_readable (const struct grub_diskfilter_node *node, int easily) -{ - /* Check whether we actually know the physical volume we want to - read from. */ - if (node->pv) - return !!(node->pv->disk); - if (node->lv) - return is_lv_readable (node->lv, easily); - return 0; -} - -static int -is_lv_readable (struct grub_diskfilter_lv *lv, int easily) -{ - unsigned i, j; - if (!lv) - return 0; - for (i = 0; i < lv->segment_count; i++) - { - int need = lv->segments[i].node_count, have = 0; - switch (lv->segments[i].type) - { - case GRUB_DISKFILTER_RAID6: - if (!easily) - need--; - /* Fallthrough. */ - case GRUB_DISKFILTER_RAID4: - case GRUB_DISKFILTER_RAID5: - if (!easily) - need--; - /* Fallthrough. */ - case GRUB_DISKFILTER_STRIPED: - break; - - case GRUB_DISKFILTER_MIRROR: - need = 1; - break; - - case GRUB_DISKFILTER_RAID10: - { - unsigned int n; - n = lv->segments[i].layout & 0xFF; - if (n == 1) - n = (lv->segments[i].layout >> 8) & 0xFF; - need = lv->segments[i].node_count - n + 1; - } - break; - } - for (j = 0; j < lv->segments[i].node_count; j++) - { - if (is_node_readable (lv->segments[i].nodes + j, easily)) - have++; - if (have >= need) - break; - } - if (have < need) - return 0; - } - - return 1; -} - -static grub_err_t -insert_array (grub_disk_t disk, const struct grub_diskfilter_pv_id *id, - struct grub_diskfilter_vg *array, - grub_disk_addr_t start_sector, - grub_diskfilter_t diskfilter __attribute__ ((unused))); - -static int -is_valid_diskfilter_name (const char *name) -{ - return (grub_memcmp (name, "md", sizeof ("md") - 1) == 0 - || grub_memcmp (name, "lvm/", sizeof ("lvm/") - 1) == 0 - || grub_memcmp (name, "lvmid/", sizeof ("lvmid/") - 1) == 0 - || grub_memcmp (name, "ldm/", sizeof ("ldm/") - 1) == 0); -} - -/* Helper for scan_disk. */ -static int -scan_disk_partition_iter (grub_disk_t disk, grub_partition_t p, void *data) -{ - const char *name = data; - struct grub_diskfilter_vg *arr; - grub_disk_addr_t start_sector; - struct grub_diskfilter_pv_id id; - grub_diskfilter_t diskfilter; - - grub_dprintf ("diskfilter", "Scanning for DISKFILTER devices on disk %s\n", - name); -#ifdef GRUB_UTIL - grub_util_info ("Scanning for DISKFILTER devices on disk %s", name); -#endif - - disk->partition = p; - - for (arr = array_list; arr != NULL; arr = arr->next) - { - struct grub_diskfilter_pv *m; - for (m = arr->pvs; m; m = m->next) - if (m->disk && m->disk->id == disk->id - && m->disk->dev->id == disk->dev->id - && m->part_start == grub_partition_get_start (disk->partition) - && m->part_size == grub_disk_get_size (disk)) - return 0; - } - - for (diskfilter = grub_diskfilter_list; diskfilter; diskfilter = diskfilter->next) - { -#ifdef GRUB_UTIL - grub_util_info ("Scanning for %s devices on disk %s", - diskfilter->name, name); -#endif - id.uuid = 0; - id.uuidlen = 0; - arr = diskfilter->detect (disk, &id, &start_sector); - if (arr && - (! insert_array (disk, &id, arr, start_sector, diskfilter))) - { - if (id.uuidlen) - grub_free (id.uuid); - return 0; - } - if (arr && id.uuidlen) - grub_free (id.uuid); - - /* This error usually means it's not diskfilter, no need to display - it. */ - if (grub_errno != GRUB_ERR_OUT_OF_RANGE) - grub_print_error (); - - grub_errno = GRUB_ERR_NONE; - } - - return 0; -} - -static int -scan_disk (const char *name, int accept_diskfilter) -{ - grub_disk_t disk; - static int scan_depth = 0; - - if (!accept_diskfilter && is_valid_diskfilter_name (name)) - return 0; - - if (scan_depth > 100) - return 0; - - scan_depth++; - disk = grub_disk_open (name); - if (!disk) - { - grub_errno = GRUB_ERR_NONE; - scan_depth--; - return 0; - } - scan_disk_partition_iter (disk, 0, (void *) name); - grub_partition_iterate (disk, scan_disk_partition_iter, (void *) name); - grub_disk_close (disk); - scan_depth--; - return 0; -} - -static int -scan_disk_hook (const char *name, void *data __attribute__ ((unused))) -{ - return scan_disk (name, 0); -} - -static void -scan_devices (const char *arname) -{ - grub_disk_dev_t p; - grub_disk_pull_t pull; - struct grub_diskfilter_vg *vg; - struct grub_diskfilter_lv *lv = NULL; - int scan_depth; - int need_rescan; - - for (pull = 0; pull < GRUB_DISK_PULL_MAX; pull++) - for (p = grub_disk_dev_list; p; p = p->next) - if (p->id != GRUB_DISK_DEVICE_DISKFILTER_ID - && p->disk_iterate) - { - if ((p->disk_iterate) (scan_disk_hook, NULL, pull)) - return; - if (arname && is_lv_readable (find_lv (arname), 1)) - return; - } - - scan_depth = 0; - need_rescan = 1; - while (need_rescan && scan_depth++ < 100) - { - need_rescan = 0; - for (vg = array_list; vg; vg = vg->next) - { - if (vg->lvs) - for (lv = vg->lvs; lv; lv = lv->next) - if (!lv->scanned && lv->fullname && lv->became_readable_at) - { - scan_disk (lv->fullname, 1); - lv->scanned = 1; - need_rescan = 1; - } - } - } - - if (need_rescan) - grub_error (GRUB_ERR_UNKNOWN_DEVICE, "DISKFILTER scan depth exceeded"); -} - -static int -grub_diskfilter_iterate (grub_disk_dev_iterate_hook_t hook, void *hook_data, - grub_disk_pull_t pull) -{ - struct grub_diskfilter_vg *array; - int islcnt = 0; - - if (pull == GRUB_DISK_PULL_RESCAN) - { - islcnt = inscnt + 1; - scan_devices (NULL); - } - - if (pull != GRUB_DISK_PULL_NONE && pull != GRUB_DISK_PULL_RESCAN) - return 0; - - for (array = array_list; array; array = array->next) - { - struct grub_diskfilter_lv *lv; - if (array->lvs) - for (lv = array->lvs; lv; lv = lv->next) - if (lv->visible && lv->fullname && lv->became_readable_at >= islcnt) - { - if (hook (lv->fullname, hook_data)) - return 1; - } - } - - return 0; -} - -#ifdef GRUB_UTIL -static grub_disk_memberlist_t -grub_diskfilter_memberlist (grub_disk_t disk) -{ - struct grub_diskfilter_lv *lv = disk->data; - grub_disk_memberlist_t list = NULL, tmp; - struct grub_diskfilter_pv *pv; - grub_disk_pull_t pull; - grub_disk_dev_t p; - struct grub_diskfilter_vg *vg; - struct grub_diskfilter_lv *lv2 = NULL; - - if (!lv->vg->pvs) - return NULL; - - pv = lv->vg->pvs; - while (pv && pv->disk) - pv = pv->next; - - for (pull = 0; pv && pull < GRUB_DISK_PULL_MAX; pull++) - for (p = grub_disk_dev_list; pv && p; p = p->next) - if (p->id != GRUB_DISK_DEVICE_DISKFILTER_ID - && p->disk_iterate) - { - (p->disk_iterate) (scan_disk_hook, NULL, pull); - while (pv && pv->disk) - pv = pv->next; - } - - for (vg = array_list; pv && vg; vg = vg->next) - { - if (vg->lvs) - for (lv2 = vg->lvs; pv && lv2; lv2 = lv2->next) - if (!lv2->scanned && lv2->fullname && lv2->became_readable_at) - { - scan_disk (lv2->fullname, 1); - lv2->scanned = 1; - while (pv && pv->disk) - pv = pv->next; - } - } - - for (pv = lv->vg->pvs; pv; pv = pv->next) - { - if (!pv->disk) - { - /* TRANSLATORS: This message kicks in during the detection of - which modules needs to be included in core image. This happens - in the case of degraded RAID and means that autodetection may - fail to include some of modules. It's an installation time - message, not runtime message. */ - grub_util_warn (_("Couldn't find physical volume `%s'." - " Some modules may be missing from core image."), - pv->name); - continue; - } - tmp = grub_malloc (sizeof (*tmp)); - tmp->disk = pv->disk; - tmp->next = list; - list = tmp; - } - - return list; -} - -void -grub_diskfilter_get_partmap (grub_disk_t disk, - void (*cb) (const char *pm, void *data), - void *data) -{ - struct grub_diskfilter_lv *lv = disk->data; - struct grub_diskfilter_pv *pv; - - if (lv->vg->pvs) - for (pv = lv->vg->pvs; pv; pv = pv->next) - { - grub_size_t s; - if (!pv->disk) - { - /* TRANSLATORS: This message kicks in during the detection of - which modules needs to be included in core image. This happens - in the case of degraded RAID and means that autodetection may - fail to include some of modules. It's an installation time - message, not runtime message. */ - grub_util_warn (_("Couldn't find physical volume `%s'." - " Some modules may be missing from core image."), - pv->name); - continue; - } - for (s = 0; pv->partmaps[s]; s++) - cb (pv->partmaps[s], data); - } -} - -static const char * -grub_diskfilter_getname (struct grub_disk *disk) -{ - struct grub_diskfilter_lv *array = disk->data; - - return array->vg->driver->name; -} -#endif - -static inline char -hex2ascii (int c) -{ - if (c >= 10) - return 'a' + c - 10; - return c + '0'; -} - -static struct grub_diskfilter_lv * -find_lv (const char *name) -{ - struct grub_diskfilter_vg *vg; - struct grub_diskfilter_lv *lv = NULL; - - for (vg = array_list; vg; vg = vg->next) - { - if (vg->lvs) - for (lv = vg->lvs; lv; lv = lv->next) - if (((lv->fullname && grub_strcmp (lv->fullname, name) == 0) - || (lv->idname && grub_strcmp (lv->idname, name) == 0)) - && is_lv_readable (lv, 0)) - return lv; - } - return NULL; -} - -static grub_err_t -grub_diskfilter_open (const char *name, grub_disk_t disk) -{ - struct grub_diskfilter_lv *lv; - - if (!is_valid_diskfilter_name (name)) - return grub_error (GRUB_ERR_UNKNOWN_DEVICE, "unknown DISKFILTER device %s", - name); - - lv = find_lv (name); - - if (! lv) - { - scan_devices (name); - if (grub_errno) - { - grub_print_error (); - grub_errno = GRUB_ERR_NONE; - } - lv = find_lv (name); - } - - if (!lv) - return grub_error (GRUB_ERR_UNKNOWN_DEVICE, "unknown DISKFILTER device %s", - name); - - disk->id = lv->number; - disk->data = lv; - - disk->total_sectors = lv->size; - disk->max_agglomerate = GRUB_DISK_MAX_MAX_AGGLOMERATE; - return 0; -} - -static void -grub_diskfilter_close (grub_disk_t disk __attribute ((unused))) -{ - return; -} - -static grub_err_t -read_lv (struct grub_diskfilter_lv *lv, grub_disk_addr_t sector, - grub_size_t size, char *buf); - -grub_err_t -grub_diskfilter_read_node (const struct grub_diskfilter_node *node, - grub_disk_addr_t sector, - grub_size_t size, char *buf) -{ - /* Check whether we actually know the physical volume we want to - read from. */ - if (node->pv) - { - if (node->pv->disk) - return grub_disk_read (node->pv->disk, sector + node->start - + node->pv->start_sector, - 0, size << GRUB_DISK_SECTOR_BITS, buf); - else - return grub_error (GRUB_ERR_UNKNOWN_DEVICE, - N_("physical volume %s not found"), node->pv->name); - - } - if (node->lv) - return read_lv (node->lv, sector + node->start, size, buf); - return grub_error (GRUB_ERR_UNKNOWN_DEVICE, "unknown node '%s'", node->name); -} - - -static grub_err_t -validate_segment (struct grub_diskfilter_segment *seg); - -static grub_err_t -validate_lv (struct grub_diskfilter_lv *lv) -{ - unsigned int i; - if (!lv) - return grub_error (GRUB_ERR_UNKNOWN_DEVICE, "unknown volume"); - - if (!lv->vg || lv->vg->extent_size == 0) - return grub_error (GRUB_ERR_READ_ERROR, "invalid volume"); - - for (i = 0; i < lv->segment_count; i++) - { - grub_err_t err; - err = validate_segment (&lv->segments[i]); - if (err) - return err; - } - return GRUB_ERR_NONE; -} - - -static grub_err_t -validate_node (const struct grub_diskfilter_node *node) -{ - /* Check whether we actually know the physical volume we want to - read from. */ - if (node->pv) - return GRUB_ERR_NONE; - if (node->lv) - return validate_lv (node->lv); - return grub_error (GRUB_ERR_UNKNOWN_DEVICE, "unknown node '%s'", node->name); -} - -static grub_err_t -validate_segment (struct grub_diskfilter_segment *seg) -{ - grub_err_t err; - - if (seg->stripe_size == 0 || seg->node_count == 0) - return grub_error(GRUB_ERR_BAD_FS, "invalid segment"); - - switch (seg->type) - { - case GRUB_DISKFILTER_RAID10: - { - grub_uint8_t near, far; - near = seg->layout & 0xFF; - far = (seg->layout >> 8) & 0xFF; - if ((seg->layout >> 16) == 0 && far == 0) - return grub_error(GRUB_ERR_BAD_FS, "invalid segment"); - if (near > seg->node_count) - return grub_error(GRUB_ERR_BAD_FS, "invalid segment"); - break; - } - - case GRUB_DISKFILTER_STRIPED: - case GRUB_DISKFILTER_MIRROR: - break; - - case GRUB_DISKFILTER_RAID4: - case GRUB_DISKFILTER_RAID5: - if (seg->node_count <= 1) - return grub_error(GRUB_ERR_BAD_FS, "invalid segment"); - break; - - case GRUB_DISKFILTER_RAID6: - if (seg->node_count <= 2) - return grub_error(GRUB_ERR_BAD_FS, "invalid segment"); - break; - - default: - return grub_error (GRUB_ERR_NOT_IMPLEMENTED_YET, - "unsupported RAID level %d", seg->type); - } - - unsigned i; - for (i = 0; i < seg->node_count; i++) - { - err = validate_node (&seg->nodes[i]); - if (err) - return err; - } - return GRUB_ERR_NONE; - -} - -static grub_err_t -read_segment (struct grub_diskfilter_segment *seg, grub_disk_addr_t sector, - grub_size_t size, char *buf) -{ - grub_err_t err; - switch (seg->type) - { - case GRUB_DISKFILTER_STRIPED: - if (seg->node_count == 1) - return grub_diskfilter_read_node (&seg->nodes[0], - sector, size, buf); - /* Fallthrough. */ - case GRUB_DISKFILTER_MIRROR: - case GRUB_DISKFILTER_RAID10: - { - grub_disk_addr_t read_sector, far_ofs; - grub_uint64_t disknr, b, near, far, ofs; - unsigned int i, j; - - read_sector = grub_divmod64 (sector, seg->stripe_size, &b); - far = ofs = near = 1; - far_ofs = 0; - - if (seg->type == 1) - near = seg->node_count; - else if (seg->type == 10) - { - near = seg->layout & 0xFF; - far = (seg->layout >> 8) & 0xFF; - if (seg->layout >> 16) - { - ofs = far; - far_ofs = 1; - } - else - far_ofs = grub_divmod64 (seg->raid_member_size, - far * seg->stripe_size, 0); - - far_ofs *= seg->stripe_size; - } - - read_sector = grub_divmod64 (read_sector * near, - seg->node_count, - &disknr); - - ofs *= seg->stripe_size; - read_sector *= ofs; - - while (1) - { - grub_size_t read_size; - - read_size = seg->stripe_size - b; - if (read_size > size) - read_size = size; - - err = 0; - for (i = 0; i < near; i++) - { - unsigned int k; - - k = disknr; - err = 0; - for (j = 0; j < far; j++) - { - if (grub_errno == GRUB_ERR_READ_ERROR - || grub_errno == GRUB_ERR_UNKNOWN_DEVICE) - grub_errno = GRUB_ERR_NONE; - - err = grub_diskfilter_read_node (&seg->nodes[k], - read_sector - + j * far_ofs + b, - read_size, - buf); - if (! err) - break; - else if (err != GRUB_ERR_READ_ERROR - && err != GRUB_ERR_UNKNOWN_DEVICE) - return err; - k++; - if (k == seg->node_count) - k = 0; - } - - if (! err) - break; - - disknr++; - if (disknr == seg->node_count) - { - disknr = 0; - read_sector += ofs; - } - } - - if (err) - return err; - - buf += read_size << GRUB_DISK_SECTOR_BITS; - size -= read_size; - if (! size) - return GRUB_ERR_NONE; - - b = 0; - disknr += (near - i); - while (disknr >= seg->node_count) - { - disknr -= seg->node_count; - read_sector += ofs; - } - } - } - - case GRUB_DISKFILTER_RAID4: - case GRUB_DISKFILTER_RAID5: - case GRUB_DISKFILTER_RAID6: - { - grub_disk_addr_t read_sector; - grub_uint64_t b, p, n, disknr, e; - - /* n = 1 for level 4 and 5, 2 for level 6. */ - n = seg->type / 3; - - /* Find the first sector to read. */ - read_sector = grub_divmod64 (sector, seg->stripe_size, &b); - read_sector = grub_divmod64 (read_sector, seg->node_count - n, - &disknr); - if (seg->type >= 5) - { - grub_divmod64 (read_sector, seg->node_count, &p); - - if (! (seg->layout & GRUB_RAID_LAYOUT_RIGHT_MASK)) - p = seg->node_count - 1 - p; - - if (seg->layout & GRUB_RAID_LAYOUT_SYMMETRIC_MASK) - { - disknr += p + n; - } - else - { - grub_uint32_t q; - - q = p + (n - 1); - if (q >= seg->node_count) - q -= seg->node_count; - - if (disknr >= p) - disknr += n; - else if (disknr >= q) - disknr += q + 1; - } - - if (disknr >= seg->node_count) - disknr -= seg->node_count; - } - else - p = seg->node_count - n; - read_sector *= seg->stripe_size; - - while (1) - { - grub_size_t read_size; - int next_level; - - read_size = seg->stripe_size - b; - if (read_size > size) - read_size = size; - - e = 0; - /* Reset read error. */ - if (grub_errno == GRUB_ERR_READ_ERROR - || grub_errno == GRUB_ERR_UNKNOWN_DEVICE) - grub_errno = GRUB_ERR_NONE; - - err = grub_diskfilter_read_node (&seg->nodes[disknr], - read_sector + b, - read_size, - buf); - - if ((err) && (err != GRUB_ERR_READ_ERROR - && err != GRUB_ERR_UNKNOWN_DEVICE)) - return err; - e++; - - if (err) - { - grub_errno = GRUB_ERR_NONE; - if (seg->type == GRUB_DISKFILTER_RAID6) - { - err = ((grub_raid6_recover_func) ? - (*grub_raid6_recover_func) (seg, disknr, p, - buf, read_sector + b, - read_size) : - grub_error (GRUB_ERR_BAD_DEVICE, - N_("module `%s' isn't loaded"), - "raid6rec")); - } - else - { - err = ((grub_raid5_recover_func) ? - (*grub_raid5_recover_func) (seg, disknr, - buf, read_sector + b, - read_size) : - grub_error (GRUB_ERR_BAD_DEVICE, - N_("module `%s' isn't loaded"), - "raid5rec")); - } - - if (err) - return err; - } - - buf += read_size << GRUB_DISK_SECTOR_BITS; - size -= read_size; - sector += read_size; - if (! size) - break; - - b = 0; - disknr++; - - if (seg->layout & GRUB_RAID_LAYOUT_SYMMETRIC_MASK) - { - if (disknr == seg->node_count) - disknr = 0; - - next_level = (disknr == p); - } - else - { - if (disknr == p) - disknr += n; - - next_level = (disknr >= seg->node_count); - } - - if (next_level) - { - read_sector += seg->stripe_size; - - if (seg->type >= 5) - { - if (seg->layout & GRUB_RAID_LAYOUT_RIGHT_MASK) - p = (p == seg->node_count - 1) ? 0 : p + 1; - else - p = (p == 0) ? seg->node_count - 1 : p - 1; - - if (seg->layout & GRUB_RAID_LAYOUT_SYMMETRIC_MASK) - { - disknr = p + n; - if (disknr >= seg->node_count) - disknr -= seg->node_count; - } - else - { - disknr -= seg->node_count; - if ((disknr >= p && disknr < p + n) - || (disknr + seg->node_count >= p - && disknr + seg->node_count < p + n)) - disknr = p + n; - if (disknr >= seg->node_count) - disknr -= seg->node_count; - } - } - else - disknr = 0; - } - } - } - return GRUB_ERR_NONE; - default: - return grub_error (GRUB_ERR_NOT_IMPLEMENTED_YET, - "unsupported RAID level %d", seg->type); - } -} - -static grub_err_t -read_lv (struct grub_diskfilter_lv *lv, grub_disk_addr_t sector, - grub_size_t size, char *buf) -{ - if (!lv) - return grub_error (GRUB_ERR_UNKNOWN_DEVICE, "unknown volume"); - - while (size) - { - grub_err_t err = 0; - struct grub_diskfilter_vg *vg = lv->vg; - struct grub_diskfilter_segment *seg = lv->segments; - grub_uint64_t extent; - grub_uint64_t to_read; - - extent = grub_divmod64 (sector, vg->extent_size, NULL); - - /* Find the right segment. */ - { - unsigned int i; - for (i = 0; i < lv->segment_count; i++) - { - if ((seg->start_extent <= extent) - && ((seg->start_extent + seg->extent_count) > extent)) - break; - seg++; - } - if (i == lv->segment_count) - return grub_error (GRUB_ERR_READ_ERROR, "incorrect segment"); - } - to_read = ((seg->start_extent + seg->extent_count) - * vg->extent_size) - sector; - if (to_read > size) - to_read = size; - - err = read_segment (seg, sector - seg->start_extent * vg->extent_size, - to_read, buf); - if (err) - return err; - - size -= to_read; - sector += to_read; - buf += to_read << GRUB_DISK_SECTOR_BITS; - } - return GRUB_ERR_NONE; -} - -static grub_err_t -grub_diskfilter_read (grub_disk_t disk, grub_disk_addr_t sector, - grub_size_t size, char *buf) -{ - return read_lv (disk->data, sector, size, buf); -} - -static grub_err_t -grub_diskfilter_write (grub_disk_t disk __attribute ((unused)), - grub_disk_addr_t sector __attribute ((unused)), - grub_size_t size __attribute ((unused)), - const char *buf __attribute ((unused))) -{ - return grub_error (GRUB_ERR_NOT_IMPLEMENTED_YET, - "diskfilter writes are not supported"); -} - -struct grub_diskfilter_vg * -grub_diskfilter_get_vg_by_uuid (grub_size_t uuidlen, char *uuid) -{ - struct grub_diskfilter_vg *p; - - for (p = array_list; p != NULL; p = p->next) - if ((p->uuid_len == uuidlen) && - (! grub_memcmp (p->uuid, uuid, p->uuid_len))) - return p; - return NULL; -} - -grub_err_t -grub_diskfilter_vg_register (struct grub_diskfilter_vg *vg) -{ - struct grub_diskfilter_lv *lv, *p; - struct grub_diskfilter_vg *vgp; - unsigned i; - - grub_dprintf ("diskfilter", "Found array %s\n", vg->name); -#ifdef GRUB_UTIL - grub_util_info ("Found array %s", vg->name); -#endif - - for (lv = vg->lvs; lv; lv = lv->next) - { - grub_err_t err; - - /* RAID 1 and single-disk RAID 0 don't use a chunksize but code - assumes one so set one. */ - for (i = 0; i < lv->segment_count; i++) - { - if (lv->segments[i].type == 1) - lv->segments[i].stripe_size = 64; - if (lv->segments[i].type == GRUB_DISKFILTER_STRIPED - && lv->segments[i].node_count == 1 - && lv->segments[i].stripe_size == 0) - lv->segments[i].stripe_size = 64; - } - - err = validate_lv(lv); - if (err) - return err; - lv->number = lv_num++; - - if (lv->fullname) - { - grub_size_t len; - int max_used_number = 0, need_new_name = 0; - len = grub_strlen (lv->fullname); - for (vgp = array_list; vgp; vgp = vgp->next) - for (p = vgp->lvs; p; p = p->next) - { - int cur_num; - char *num, *end; - if (!p->fullname) - continue; - if (grub_strncmp (p->fullname, lv->fullname, len) != 0) - continue; - if (p->fullname[len] == 0) - { - need_new_name = 1; - continue; - } - num = p->fullname + len + 1; - if (!grub_isdigit (num[0])) - continue; - cur_num = grub_strtoul (num, &end, 10); - if (end[0]) - continue; - if (cur_num > max_used_number) - max_used_number = cur_num; - } - if (need_new_name) - { - char *tmp; - tmp = grub_xasprintf ("%s_%d", lv->fullname, max_used_number + 1); - if (!tmp) - return grub_errno; - grub_free (lv->fullname); - lv->fullname = tmp; - } - } - } - /* Add our new array to the list. */ - vg->next = array_list; - array_list = vg; - return GRUB_ERR_NONE; -} - -struct grub_diskfilter_vg * -grub_diskfilter_make_raid (grub_size_t uuidlen, char *uuid, int nmemb, - const char *name, grub_uint64_t disk_size, - grub_uint64_t stripe_size, - int layout, int level) -{ - struct grub_diskfilter_vg *array; - int i; - grub_size_t j; - grub_uint64_t totsize; - struct grub_diskfilter_pv *pv; - grub_err_t err; - - switch (level) - { - case 1: - totsize = disk_size; - break; - - case 10: - { - int n; - n = layout & 0xFF; - if (n == 1) - n = (layout >> 8) & 0xFF; - if (n == 0) - { - grub_free (uuid); - return NULL; - } - - totsize = grub_divmod64 (nmemb * disk_size, n, 0); - } - break; - - case 0: - case 4: - case 5: - case 6: - totsize = (nmemb - ((unsigned) level / 3U)) * disk_size; - break; - - default: - grub_free (uuid); - return NULL; - } - - array = grub_diskfilter_get_vg_by_uuid (uuidlen, uuid); - if (array) - { - if (array->lvs && array->lvs->size < totsize) - { - array->lvs->size = totsize; - if (array->lvs->segments) - array->lvs->segments->extent_count = totsize; - } - - if (array->lvs && array->lvs->segments - && array->lvs->segments->raid_member_size > disk_size) - array->lvs->segments->raid_member_size = disk_size; - - grub_free (uuid); - return array; - } - array = grub_zalloc (sizeof (*array)); - if (!array) - { - grub_free (uuid); - return NULL; - } - array->uuid = uuid; - array->uuid_len = uuidlen; - if (name) - { - /* Strip off the homehost if present. */ - char *colon = grub_strchr (name, ':'); - char *new_name = grub_xasprintf ("md/%s", - colon ? colon + 1 : name); - - if (! new_name) - goto fail; - - array->name = new_name; - } - - array->extent_size = 1; - array->lvs = grub_zalloc (sizeof (*array->lvs)); - if (!array->lvs) - goto fail; - array->lvs->segment_count = 1; - array->lvs->visible = 1; - if (array->name) - { - array->lvs->name = grub_strdup (array->name); - if (!array->lvs->name) - goto fail; - array->lvs->fullname = grub_strdup (array->name); - if (!array->lvs->fullname) - goto fail; - } - array->lvs->vg = array; - - array->lvs->idname = grub_malloc (sizeof ("mduuid/") + 2 * uuidlen); - if (!array->lvs->idname) - goto fail; - - grub_memcpy (array->lvs->idname, "mduuid/", sizeof ("mduuid/") - 1); - for (j = 0; j < uuidlen; j++) - { - array->lvs->idname[sizeof ("mduuid/") - 1 + 2 * j] - = hex2ascii (((unsigned char) uuid[j] >> 4)); - array->lvs->idname[sizeof ("mduuid/") - 1 + 2 * j + 1] - = hex2ascii (((unsigned char) uuid[j] & 0xf)); - } - array->lvs->idname[sizeof ("mduuid/") - 1 + 2 * uuidlen] = '\0'; - - array->lvs->size = totsize; - - array->lvs->segments = grub_zalloc (sizeof (*array->lvs->segments)); - if (!array->lvs->segments) - goto fail; - array->lvs->segments->stripe_size = stripe_size; - array->lvs->segments->layout = layout; - array->lvs->segments->start_extent = 0; - array->lvs->segments->extent_count = totsize; - array->lvs->segments->type = level; - array->lvs->segments->node_count = nmemb; - array->lvs->segments->raid_member_size = disk_size; - array->lvs->segments->nodes - = grub_zalloc (nmemb * sizeof (array->lvs->segments->nodes[0])); - array->lvs->segments->stripe_size = stripe_size; - for (i = 0; i < nmemb; i++) - { - pv = grub_zalloc (sizeof (*pv)); - if (!pv) - goto fail; - pv->id.uuidlen = 0; - pv->id.id = i; - pv->next = array->pvs; - array->pvs = pv; - array->lvs->segments->nodes[i].pv = pv; - } - - err = grub_diskfilter_vg_register (array); - if (err) - goto fail; - - return array; - - fail: - if (array->lvs) - { - grub_free (array->lvs->name); - grub_free (array->lvs->fullname); - grub_free (array->lvs->idname); - if (array->lvs->segments) - { - grub_free (array->lvs->segments->nodes); - grub_free (array->lvs->segments); - } - grub_free (array->lvs); - } - while (array->pvs) - { - pv = array->pvs->next; - grub_free (array->pvs); - array->pvs = pv; - } - grub_free (array->name); - grub_free (array->uuid); - grub_free (array); - return NULL; -} - -static grub_err_t -insert_array (grub_disk_t disk, const struct grub_diskfilter_pv_id *id, - struct grub_diskfilter_vg *array, - grub_disk_addr_t start_sector, - grub_diskfilter_t diskfilter __attribute__ ((unused))) -{ - struct grub_diskfilter_pv *pv; - - grub_dprintf ("diskfilter", "Inserting %s (+%lld,%lld) into %s (%s)\n", disk->name, - (unsigned long long) grub_partition_get_start (disk->partition), - (unsigned long long) grub_disk_get_size (disk), - array->name, diskfilter->name); -#ifdef GRUB_UTIL - grub_util_info ("Inserting %s (+%" GRUB_HOST_PRIuLONG_LONG ",%" - GRUB_HOST_PRIuLONG_LONG ") into %s (%s)\n", disk->name, - (unsigned long long) grub_partition_get_start (disk->partition), - (unsigned long long) grub_disk_get_size (disk), - array->name, diskfilter->name); - array->driver = diskfilter; -#endif - - for (pv = array->pvs; pv; pv = pv->next) - if (id->uuidlen == pv->id.uuidlen - && id->uuidlen - ? (grub_memcmp (pv->id.uuid, id->uuid, id->uuidlen) == 0) - : (pv->id.id == id->id)) - { - struct grub_diskfilter_lv *lv; - /* FIXME: Check whether the update time of the superblocks are - the same. */ - if (pv->disk && grub_disk_get_size (disk) >= pv->part_size) - return GRUB_ERR_NONE; - pv->disk = grub_disk_open (disk->name); - if (!pv->disk) - return grub_errno; - /* This could happen to LVM on RAID, pv->disk points to the - raid device, we shouldn't change it. */ - pv->start_sector -= pv->part_start; - pv->part_start = grub_partition_get_start (disk->partition); - pv->part_size = grub_disk_get_size (disk); - -#ifdef GRUB_UTIL - { - grub_size_t s = 1; - grub_partition_t p; - for (p = disk->partition; p; p = p->parent) - s++; - pv->partmaps = xmalloc (s * sizeof (pv->partmaps[0])); - s = 0; - for (p = disk->partition; p; p = p->parent) - pv->partmaps[s++] = xstrdup (p->partmap->name); - pv->partmaps[s++] = 0; - } -#endif - if (start_sector != (grub_uint64_t)-1) - pv->start_sector = start_sector; - pv->start_sector += pv->part_start; - /* Add the device to the array. */ - for (lv = array->lvs; lv; lv = lv->next) - if (!lv->became_readable_at && lv->fullname && is_lv_readable (lv, 0)) - lv->became_readable_at = ++inscnt; - break; - } - - return 0; -} - -static void -free_array (void) -{ - while (array_list) - { - struct grub_diskfilter_vg *vg; - struct grub_diskfilter_pv *pv; - struct grub_diskfilter_lv *lv; - - vg = array_list; - array_list = array_list->next; - - while ((pv = vg->pvs)) - { - vg->pvs = pv->next; - grub_free (pv->name); - if (pv->disk) - grub_disk_close (pv->disk); - if (pv->id.uuidlen) - grub_free (pv->id.uuid); -#ifdef GRUB_UTIL - grub_free (pv->partmaps); -#endif - grub_free (pv->internal_id); - grub_free (pv); - } - - while ((lv = vg->lvs)) - { - unsigned i; - vg->lvs = lv->next; - grub_free (lv->fullname); - grub_free (lv->name); - grub_free (lv->idname); - for (i = 0; i < lv->segment_count; i++) - grub_free (lv->segments[i].nodes); - grub_free (lv->segments); - grub_free (lv->internal_id); - grub_free (lv); - } - - grub_free (vg->uuid); - grub_free (vg->name); - grub_free (vg); - } - - array_list = 0; -} - -#ifdef GRUB_UTIL -struct grub_diskfilter_pv * -grub_diskfilter_get_pv_from_disk (grub_disk_t disk, - struct grub_diskfilter_vg **vg_out) -{ - struct grub_diskfilter_pv *pv; - struct grub_diskfilter_vg *vg; - - scan_disk (disk->name, 1); - for (vg = array_list; vg; vg = vg->next) - for (pv = vg->pvs; pv; pv = pv->next) - { - if (pv->disk && pv->disk->id == disk->id - && pv->disk->dev->id == disk->dev->id - && pv->part_start == grub_partition_get_start (disk->partition) - && pv->part_size == grub_disk_get_size (disk)) - { - if (vg_out) - *vg_out = vg; - return pv; - } - } - return NULL; -} -#endif - -static struct grub_disk_dev grub_diskfilter_dev = - { - .name = "diskfilter", - .id = GRUB_DISK_DEVICE_DISKFILTER_ID, - .disk_iterate = grub_diskfilter_iterate, - .disk_open = grub_diskfilter_open, - .disk_close = grub_diskfilter_close, - .disk_read = grub_diskfilter_read, - .disk_write = grub_diskfilter_write, -#ifdef GRUB_UTIL - .disk_memberlist = grub_diskfilter_memberlist, - .disk_raidname = grub_diskfilter_getname, -#endif - .next = 0 - }; - - -GRUB_MOD_INIT(diskfilter) -{ - grub_disk_dev_register (&grub_diskfilter_dev); -} - -GRUB_MOD_FINI(diskfilter) -{ - grub_disk_dev_unregister (&grub_diskfilter_dev); - free_array (); -} diff --git a/thirdparty/grub-2.04/grub-core/disk/dmraid_nvidia.c b/thirdparty/grub-2.04/grub-core/disk/dmraid_nvidia.c deleted file mode 100644 index 060279124..000000000 --- a/thirdparty/grub-2.04/grub-core/disk/dmraid_nvidia.c +++ /dev/null @@ -1,196 +0,0 @@ -/* dmraid_nvidia.c - module to handle Nvidia fakeraid. */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2006,2007,2008,2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -#define NV_SIGNATURES 4 - -#define NV_IDLE 0 -#define NV_SCDB_INIT_RAID 2 -#define NV_SCDB_REBUILD_RAID 3 -#define NV_SCDB_UPGRADE_RAID 4 -#define NV_SCDB_SYNC_RAID 5 - -#define NV_LEVEL_UNKNOWN 0x00 -#define NV_LEVEL_JBOD 0xFF -#define NV_LEVEL_0 0x80 -#define NV_LEVEL_1 0x81 -#define NV_LEVEL_3 0x83 -#define NV_LEVEL_5 0x85 -#define NV_LEVEL_10 0x8a -#define NV_LEVEL_1_0 0x8180 - -#define NV_ARRAY_FLAG_BOOT 1 /* BIOS use only. */ -#define NV_ARRAY_FLAG_ERROR 2 /* Degraded or offline. */ -#define NV_ARRAY_FLAG_PARITY_VALID 4 /* RAID-3/5 parity valid. */ - -struct grub_nv_array -{ - grub_uint32_t version; - grub_uint32_t signature[NV_SIGNATURES]; - grub_uint8_t raid_job_code; - grub_uint8_t stripe_width; - grub_uint8_t total_volumes; - grub_uint8_t original_width; - grub_uint32_t raid_level; - grub_uint32_t stripe_block_size; - grub_uint32_t stripe_block_size_bytes; - grub_uint32_t stripe_block_size_log2; - grub_uint32_t stripe_mask; - grub_uint32_t stripe_size; - grub_uint32_t stripe_size_bytes; - grub_uint32_t raid_job_mask; - grub_uint32_t original_capacity; - grub_uint32_t flags; -}; - -#define NV_ID_LEN 8 -#define NV_ID_STRING "NVIDIA" -#define NV_VERSION 100 - -#define NV_PRODID_LEN 16 -#define NV_PRODREV_LEN 4 - -struct grub_nv_super -{ - char vendor[NV_ID_LEN]; /* 0x00 - 0x07 ID string. */ - grub_uint32_t size; /* 0x08 - 0x0B Size of metadata in dwords. */ - grub_uint32_t chksum; /* 0x0C - 0x0F Checksum of this struct. */ - grub_uint16_t version; /* 0x10 - 0x11 NV version. */ - grub_uint8_t unit_number; /* 0x12 Disk index in array. */ - grub_uint8_t reserved; /* 0x13. */ - grub_uint32_t capacity; /* 0x14 - 0x17 Array capacity in sectors. */ - grub_uint32_t sector_size; /* 0x18 - 0x1B Sector size. */ - char prodid[NV_PRODID_LEN]; /* 0x1C - 0x2B Array product ID. */ - char prodrev[NV_PRODREV_LEN]; /* 0x2C - 0x2F Array product revision */ - grub_uint32_t unit_flags; /* 0x30 - 0x33 Flags for this disk */ - struct grub_nv_array array; /* Array information */ -} GRUB_PACKED; - -static struct grub_diskfilter_vg * -grub_dmraid_nv_detect (grub_disk_t disk, - struct grub_diskfilter_pv_id *id, - grub_disk_addr_t *start_sector) -{ - grub_disk_addr_t sector; - struct grub_nv_super sb; - int level; - grub_uint64_t disk_size; - grub_uint32_t capacity; - grub_uint8_t total_volumes; - char *uuid; - - if (disk->partition) - /* Skip partition. */ - return NULL; - - sector = grub_disk_get_size (disk); - if (sector == GRUB_DISK_SIZE_UNKNOWN) - /* Not raid. */ - return NULL; - sector -= 2; - if (grub_disk_read (disk, sector, 0, sizeof (sb), &sb)) - return NULL; - - if (grub_memcmp (sb.vendor, NV_ID_STRING, 6)) - /* Not raid. */ - return NULL; - - if (sb.version != NV_VERSION) - { - grub_error (GRUB_ERR_NOT_IMPLEMENTED_YET, - "unknown version: %d.%d", sb.version); - return NULL; - } - - capacity = grub_le_to_cpu32 (sb.capacity); - total_volumes = sb.array.total_volumes; - - switch (sb.array.raid_level) - { - case NV_LEVEL_0: - level = 0; - if (total_volumes == 0) - /* Not RAID. */ - return NULL; - disk_size = capacity / total_volumes; - break; - - case NV_LEVEL_1: - level = 1; - disk_size = sb.capacity; - break; - - case NV_LEVEL_5: - level = 5; - if (total_volumes == 0 || total_volumes == 1) - /* Not RAID. */ - return NULL; - disk_size = capacity / (total_volumes - 1); - break; - - default: - grub_error (GRUB_ERR_NOT_IMPLEMENTED_YET, - "unsupported RAID level: %d", sb.array.raid_level); - return NULL; - } - - uuid = grub_malloc (sizeof (sb.array.signature)); - if (! uuid) - return NULL; - - grub_memcpy (uuid, (char *) &sb.array.signature, - sizeof (sb.array.signature)); - - id->uuidlen = 0; - id->id = sb.unit_number; - - *start_sector = 0; - - return grub_diskfilter_make_raid (sizeof (sb.array.signature), - uuid, sb.array.total_volumes, - "nv", disk_size, - sb.array.stripe_block_size, - GRUB_RAID_LAYOUT_LEFT_ASYMMETRIC, - level); -} - -static struct grub_diskfilter grub_dmraid_nv_dev = -{ - .name = "dmraid_nv", - .detect = grub_dmraid_nv_detect, - .next = 0 -}; - -GRUB_MOD_INIT(dm_nv) -{ - grub_diskfilter_register_front (&grub_dmraid_nv_dev); -} - -GRUB_MOD_FINI(dm_nv) -{ - grub_diskfilter_unregister (&grub_dmraid_nv_dev); -} diff --git a/thirdparty/grub-2.04/grub-core/disk/efi/efidisk.c b/thirdparty/grub-2.04/grub-core/disk/efi/efidisk.c deleted file mode 100644 index 9e20af70e..000000000 --- a/thirdparty/grub-2.04/grub-core/disk/efi/efidisk.c +++ /dev/null @@ -1,902 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2006,2007,2008 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -struct grub_efidisk_data -{ - grub_efi_handle_t handle; - grub_efi_device_path_t *device_path; - grub_efi_device_path_t *last_device_path; - grub_efi_block_io_t *block_io; - struct grub_efidisk_data *next; -}; - -/* GUID. */ -static grub_efi_guid_t block_io_guid = GRUB_EFI_BLOCK_IO_GUID; - -static struct grub_efidisk_data *fd_devices; -static struct grub_efidisk_data *hd_devices; -static struct grub_efidisk_data *cd_devices; - -static struct grub_efidisk_data * -make_devices (void) -{ - grub_efi_uintn_t num_handles; - grub_efi_handle_t *handles; - grub_efi_handle_t *handle; - struct grub_efidisk_data *devices = 0; - - /* Find handles which support the disk io interface. */ - handles = grub_efi_locate_handle (GRUB_EFI_BY_PROTOCOL, &block_io_guid, - 0, &num_handles); - if (! handles) - return 0; - - /* Make a linked list of devices. */ - for (handle = handles; num_handles--; handle++) - { - grub_efi_device_path_t *dp; - grub_efi_device_path_t *ldp; - struct grub_efidisk_data *d; - grub_efi_block_io_t *bio; - - dp = grub_efi_get_device_path (*handle); - if (! dp) - continue; - - ldp = grub_efi_find_last_device_path (dp); - if (! ldp) - /* This is empty. Why? */ - continue; - - bio = grub_efi_open_protocol (*handle, &block_io_guid, - GRUB_EFI_OPEN_PROTOCOL_GET_PROTOCOL); - if (! bio) - /* This should not happen... Why? */ - continue; - - /* iPXE adds stub Block IO protocol to loaded image device handle. It is - completely non-functional and simply returns an error for every method. - So attempt to detect and skip it. Magic number is literal "iPXE" and - check block size as well */ - /* FIXME: shoud we close it? We do not do it elsewhere */ - if (bio->media && bio->media->media_id == 0x69505845U && - bio->media->block_size == 1) - continue; - - d = grub_malloc (sizeof (*d)); - if (! d) - { - /* Uggh. */ - grub_free (handles); - while (devices) - { - d = devices->next; - grub_free (devices); - devices = d; - } - return 0; - } - - d->handle = *handle; - d->device_path = dp; - d->last_device_path = ldp; - d->block_io = bio; - d->next = devices; - devices = d; - } - - grub_free (handles); - - return devices; -} - -/* Find the parent device. */ -static struct grub_efidisk_data * -find_parent_device (struct grub_efidisk_data *devices, - struct grub_efidisk_data *d) -{ - grub_efi_device_path_t *dp, *ldp; - struct grub_efidisk_data *parent; - - dp = grub_efi_duplicate_device_path (d->device_path); - if (! dp) - return 0; - - ldp = grub_efi_find_last_device_path (dp); - if (! ldp) - return 0; - - ldp->type = GRUB_EFI_END_DEVICE_PATH_TYPE; - ldp->subtype = GRUB_EFI_END_ENTIRE_DEVICE_PATH_SUBTYPE; - ldp->length = sizeof (*ldp); - - for (parent = devices; parent; parent = parent->next) - { - /* Ignore itself. */ - if (parent == d) - continue; - - if (grub_efi_compare_device_paths (parent->device_path, dp) == 0) - break; - } - - grub_free (dp); - return parent; -} - -static int -is_child (struct grub_efidisk_data *child, - struct grub_efidisk_data *parent) -{ - grub_efi_device_path_t *dp, *ldp; - int ret; - - dp = grub_efi_duplicate_device_path (child->device_path); - if (! dp) - return 0; - - ldp = grub_efi_find_last_device_path (dp); - if (! ldp) - return 0; - - ldp->type = GRUB_EFI_END_DEVICE_PATH_TYPE; - ldp->subtype = GRUB_EFI_END_ENTIRE_DEVICE_PATH_SUBTYPE; - ldp->length = sizeof (*ldp); - - ret = (grub_efi_compare_device_paths (dp, parent->device_path) == 0); - grub_free (dp); - return ret; -} - -#define FOR_CHILDREN(p, dev) for (p = dev; p; p = p->next) if (is_child (p, d)) - -/* Add a device into a list of devices in an ascending order. */ -static void -add_device (struct grub_efidisk_data **devices, struct grub_efidisk_data *d) -{ - struct grub_efidisk_data **p; - struct grub_efidisk_data *n; - - for (p = devices; *p; p = &((*p)->next)) - { - int ret; - - ret = grub_efi_compare_device_paths (grub_efi_find_last_device_path ((*p)->device_path), - grub_efi_find_last_device_path (d->device_path)); - if (ret == 0) - ret = grub_efi_compare_device_paths ((*p)->device_path, - d->device_path); - if (ret == 0) - return; - else if (ret > 0) - break; - } - - n = grub_malloc (sizeof (*n)); - if (! n) - return; - - grub_memcpy (n, d, sizeof (*n)); - n->next = (*p); - (*p) = n; -} - -/* Name the devices. */ -static void -name_devices (struct grub_efidisk_data *devices) -{ - struct grub_efidisk_data *d; - - /* First, identify devices by media device paths. */ - for (d = devices; d; d = d->next) - { - grub_efi_device_path_t *dp; - - dp = d->last_device_path; - if (! dp) - continue; - - if (GRUB_EFI_DEVICE_PATH_TYPE (dp) == GRUB_EFI_MEDIA_DEVICE_PATH_TYPE) - { - int is_hard_drive = 0; - - switch (GRUB_EFI_DEVICE_PATH_SUBTYPE (dp)) - { - case GRUB_EFI_HARD_DRIVE_DEVICE_PATH_SUBTYPE: - is_hard_drive = 1; - /* Intentionally fall through. */ - case GRUB_EFI_CDROM_DEVICE_PATH_SUBTYPE: - { - struct grub_efidisk_data *parent, *parent2; - - parent = find_parent_device (devices, d); - if (!parent) - { -#ifdef DEBUG_NAMES - grub_printf ("skipping orphaned partition: "); - grub_efi_print_device_path (d->device_path); -#endif - break; - } - parent2 = find_parent_device (devices, parent); - if (parent2) - { -#ifdef DEBUG_NAMES - grub_printf ("skipping subpartition: "); - grub_efi_print_device_path (d->device_path); -#endif - /* Mark itself as used. */ - d->last_device_path = 0; - break; - } - if (!parent->last_device_path) - { - d->last_device_path = 0; - break; - } - if (is_hard_drive) - { -#ifdef DEBUG_NAMES - grub_printf ("adding a hard drive by a partition: "); - grub_efi_print_device_path (parent->device_path); -#endif - add_device (&hd_devices, parent); - } - else - { -#ifdef DEBUG_NAMES - grub_printf ("adding a cdrom by a partition: "); - grub_efi_print_device_path (parent->device_path); -#endif - add_device (&cd_devices, parent); - } - - /* Mark the parent as used. */ - parent->last_device_path = 0; - } - /* Mark itself as used. */ - d->last_device_path = 0; - break; - - default: -#ifdef DEBUG_NAMES - grub_printf ("skipping other type: "); - grub_efi_print_device_path (d->device_path); -#endif - /* For now, ignore the others. */ - break; - } - } - else - { -#ifdef DEBUG_NAMES - grub_printf ("skipping non-media: "); - grub_efi_print_device_path (d->device_path); -#endif - } - } - - /* Let's see what can be added more. */ - for (d = devices; d; d = d->next) - { - grub_efi_device_path_t *dp; - grub_efi_block_io_media_t *m; - int is_floppy = 0; - - dp = d->last_device_path; - if (! dp) - continue; - - /* Ghosts proudly presented by Apple. */ - if (GRUB_EFI_DEVICE_PATH_TYPE (dp) == GRUB_EFI_MEDIA_DEVICE_PATH_TYPE - && GRUB_EFI_DEVICE_PATH_SUBTYPE (dp) - == GRUB_EFI_VENDOR_MEDIA_DEVICE_PATH_SUBTYPE) - { - grub_efi_vendor_device_path_t *vendor = (grub_efi_vendor_device_path_t *) dp; - const struct grub_efi_guid apple = GRUB_EFI_VENDOR_APPLE_GUID; - - if (vendor->header.length == sizeof (*vendor) - && grub_memcmp (&vendor->vendor_guid, &apple, - sizeof (vendor->vendor_guid)) == 0 - && find_parent_device (devices, d)) - continue; - } - - m = d->block_io->media; - if (GRUB_EFI_DEVICE_PATH_TYPE (dp) == GRUB_EFI_ACPI_DEVICE_PATH_TYPE - && GRUB_EFI_DEVICE_PATH_SUBTYPE (dp) - == GRUB_EFI_ACPI_DEVICE_PATH_SUBTYPE) - { - grub_efi_acpi_device_path_t *acpi - = (grub_efi_acpi_device_path_t *) dp; - /* Floppy EISA ID. */ - if (acpi->hid == 0x60441d0 || acpi->hid == 0x70041d0 - || acpi->hid == 0x70141d1) - is_floppy = 1; - } - if (is_floppy) - { -#ifdef DEBUG_NAMES - grub_printf ("adding a floppy: "); - grub_efi_print_device_path (d->device_path); -#endif - add_device (&fd_devices, d); - } - else if (m->read_only && m->block_size > GRUB_DISK_SECTOR_SIZE) - { - /* This check is too heuristic, but assume that this is a - CDROM drive. */ -#ifdef DEBUG_NAMES - grub_printf ("adding a cdrom by guessing: "); - grub_efi_print_device_path (d->device_path); -#endif - add_device (&cd_devices, d); - } - else - { - /* The default is a hard drive. */ -#ifdef DEBUG_NAMES - grub_printf ("adding a hard drive by guessing: "); - grub_efi_print_device_path (d->device_path); -#endif - add_device (&hd_devices, d); - } - } -} - -static void -free_devices (struct grub_efidisk_data *devices) -{ - struct grub_efidisk_data *p, *q; - - for (p = devices; p; p = q) - { - q = p->next; - grub_free (p); - } -} - -/* Enumerate all disks to name devices. */ -static void -enumerate_disks (void) -{ - struct grub_efidisk_data *devices; - - devices = make_devices (); - if (! devices) - return; - - name_devices (devices); - free_devices (devices); -} - -static int -grub_efidisk_iterate (grub_disk_dev_iterate_hook_t hook, void *hook_data, - grub_disk_pull_t pull) -{ - struct grub_efidisk_data *d; - char buf[16]; - int count; - - switch (pull) - { - case GRUB_DISK_PULL_NONE: - for (d = hd_devices, count = 0; d; d = d->next, count++) - { - grub_snprintf (buf, sizeof (buf), "hd%d", count); - grub_dprintf ("efidisk", "iterating %s\n", buf); - if (hook (buf, hook_data)) - return 1; - } - break; - case GRUB_DISK_PULL_REMOVABLE: - for (d = fd_devices, count = 0; d; d = d->next, count++) - { - grub_snprintf (buf, sizeof (buf), "fd%d", count); - grub_dprintf ("efidisk", "iterating %s\n", buf); - if (hook (buf, hook_data)) - return 1; - } - - for (d = cd_devices, count = 0; d; d = d->next, count++) - { - grub_snprintf (buf, sizeof (buf), "cd%d", count); - grub_dprintf ("efidisk", "iterating %s\n", buf); - if (hook (buf, hook_data)) - return 1; - } - break; - default: - return 0; - } - - return 0; -} - -static int -get_drive_number (const char *name) -{ - unsigned long drive; - - if ((name[0] != 'f' && name[0] != 'h' && name[0] != 'c') || name[1] != 'd') - goto fail; - - drive = grub_strtoul (name + 2, 0, 10); - if (grub_errno != GRUB_ERR_NONE) - goto fail; - - return (int) drive ; - - fail: - grub_error (GRUB_ERR_UNKNOWN_DEVICE, "not a efidisk"); - return -1; -} - -static struct grub_efidisk_data * -get_device (struct grub_efidisk_data *devices, int num) -{ - struct grub_efidisk_data *d; - - for (d = devices; d && num; d = d->next, num--) - ; - - if (num == 0) - return d; - - return 0; -} - -static grub_err_t -grub_efidisk_open (const char *name, struct grub_disk *disk) -{ - int num; - struct grub_efidisk_data *d = 0; - grub_efi_block_io_media_t *m; - - grub_dprintf ("efidisk", "opening %s\n", name); - - num = get_drive_number (name); - if (num < 0) - return grub_errno; - - switch (name[0]) - { - case 'f': - d = get_device (fd_devices, num); - break; - case 'c': - d = get_device (cd_devices, num); - break; - case 'h': - d = get_device (hd_devices, num); - break; - default: - /* Never reach here. */ - break; - } - - if (! d) - return grub_error (GRUB_ERR_UNKNOWN_DEVICE, "no such device"); - - disk->id = ((num << GRUB_CHAR_BIT) | name[0]); - m = d->block_io->media; - /* FIXME: Probably it is better to store the block size in the disk, - and total sectors should be replaced with total blocks. */ - grub_dprintf ("efidisk", - "m = %p, last block = %llx, block size = %x, io align = %x\n", - m, (unsigned long long) m->last_block, m->block_size, - m->io_align); - - /* Ensure required buffer alignment is a power of two (or is zero). */ - if (m->io_align & (m->io_align - 1)) - return grub_error (GRUB_ERR_IO, "invalid buffer alignment %d", m->io_align); - - disk->total_sectors = m->last_block + 1; - /* Don't increase this value due to bug in some EFI. */ - disk->max_agglomerate = 0xa0000 >> (GRUB_DISK_CACHE_BITS + GRUB_DISK_SECTOR_BITS); - if (m->block_size & (m->block_size - 1) || !m->block_size) - return grub_error (GRUB_ERR_IO, "invalid sector size %d", - m->block_size); - for (disk->log_sector_size = 0; - (1U << disk->log_sector_size) < m->block_size; - disk->log_sector_size++); - disk->data = d; - - grub_dprintf ("efidisk", "opening %s succeeded\n", name); - - return GRUB_ERR_NONE; -} - -static void -grub_efidisk_close (struct grub_disk *disk __attribute__ ((unused))) -{ - /* EFI disks do not allocate extra memory, so nothing to do here. */ - grub_dprintf ("efidisk", "closing %s\n", disk->name); -} - -static grub_efi_status_t -grub_efidisk_readwrite (struct grub_disk *disk, grub_disk_addr_t sector, - grub_size_t size, char *buf, int wr) -{ - struct grub_efidisk_data *d; - grub_efi_block_io_t *bio; - grub_efi_status_t status; - grub_size_t io_align, num_bytes; - char *aligned_buf; - - d = disk->data; - bio = d->block_io; - - /* Set alignment to 1 if 0 specified */ - io_align = bio->media->io_align ? bio->media->io_align : 1; - num_bytes = size << disk->log_sector_size; - - if ((grub_addr_t) buf & (io_align - 1)) - { - aligned_buf = grub_memalign (io_align, num_bytes); - if (! aligned_buf) - return GRUB_EFI_OUT_OF_RESOURCES; - if (wr) - grub_memcpy (aligned_buf, buf, num_bytes); - } - else - { - aligned_buf = buf; - } - - status = efi_call_5 ((wr ? bio->write_blocks : bio->read_blocks), bio, - bio->media->media_id, (grub_efi_uint64_t) sector, - (grub_efi_uintn_t) num_bytes, aligned_buf); - - if ((grub_addr_t) buf & (io_align - 1)) - { - if (!wr) - grub_memcpy (buf, aligned_buf, num_bytes); - grub_free (aligned_buf); - } - - return status; -} - -static grub_err_t -grub_efidisk_read (struct grub_disk *disk, grub_disk_addr_t sector, - grub_size_t size, char *buf) -{ - grub_efi_status_t status; - - grub_dprintf ("efidisk", - "reading 0x%lx sectors at the sector 0x%llx from %s\n", - (unsigned long) size, (unsigned long long) sector, disk->name); - - status = grub_efidisk_readwrite (disk, sector, size, buf, 0); - - if (status == GRUB_EFI_NO_MEDIA) - return grub_error (GRUB_ERR_OUT_OF_RANGE, N_("no media in `%s'"), disk->name); - else if (status != GRUB_EFI_SUCCESS) - return grub_error (GRUB_ERR_READ_ERROR, - N_("failure reading sector 0x%llx from `%s'"), - (unsigned long long) sector, - disk->name); - - return GRUB_ERR_NONE; -} - -static grub_err_t -grub_efidisk_write (struct grub_disk *disk, grub_disk_addr_t sector, - grub_size_t size, const char *buf) -{ - grub_efi_status_t status; - - grub_dprintf ("efidisk", - "writing 0x%lx sectors at the sector 0x%llx to %s\n", - (unsigned long) size, (unsigned long long) sector, disk->name); - - status = grub_efidisk_readwrite (disk, sector, size, (char *) buf, 1); - - if (status == GRUB_EFI_NO_MEDIA) - return grub_error (GRUB_ERR_OUT_OF_RANGE, N_("no media in `%s'"), disk->name); - else if (status != GRUB_EFI_SUCCESS) - return grub_error (GRUB_ERR_WRITE_ERROR, - N_("failure writing sector 0x%llx to `%s'"), - (unsigned long long) sector, disk->name); - - return GRUB_ERR_NONE; -} - -static struct grub_disk_dev grub_efidisk_dev = - { - .name = "efidisk", - .id = GRUB_DISK_DEVICE_EFIDISK_ID, - .disk_iterate = grub_efidisk_iterate, - .disk_open = grub_efidisk_open, - .disk_close = grub_efidisk_close, - .disk_read = grub_efidisk_read, - .disk_write = grub_efidisk_write, - .next = 0 - }; - -void -grub_efidisk_fini (void) -{ - free_devices (fd_devices); - free_devices (hd_devices); - free_devices (cd_devices); - fd_devices = 0; - hd_devices = 0; - cd_devices = 0; - grub_disk_dev_unregister (&grub_efidisk_dev); -} - -void -grub_efidisk_init (void) -{ - grub_disk_firmware_fini = grub_efidisk_fini; - - enumerate_disks (); - grub_disk_dev_register (&grub_efidisk_dev); -} - -/* Some utility functions to map GRUB devices with EFI devices. */ -grub_efi_handle_t -grub_efidisk_get_device_handle (grub_disk_t disk) -{ - struct grub_efidisk_data *d; - char type; - - if (disk->dev->id != GRUB_DISK_DEVICE_EFIDISK_ID) - return 0; - - d = disk->data; - type = disk->name[0]; - - switch (type) - { - case 'f': - /* This is the simplest case. */ - return d->handle; - - case 'c': - /* FIXME: probably this is not correct. */ - return d->handle; - - case 'h': - /* If this is the whole disk, just return its own data. */ - if (! disk->partition) - return d->handle; - - /* Otherwise, we must query the corresponding device to the firmware. */ - { - struct grub_efidisk_data *devices; - grub_efi_handle_t handle = 0; - struct grub_efidisk_data *c; - - devices = make_devices (); - FOR_CHILDREN (c, devices) - { - grub_efi_hard_drive_device_path_t *hd; - - hd = (grub_efi_hard_drive_device_path_t *) c->last_device_path; - - if ((GRUB_EFI_DEVICE_PATH_TYPE (c->last_device_path) - == GRUB_EFI_MEDIA_DEVICE_PATH_TYPE) - && (GRUB_EFI_DEVICE_PATH_SUBTYPE (c->last_device_path) - == GRUB_EFI_HARD_DRIVE_DEVICE_PATH_SUBTYPE) - && (grub_partition_get_start (disk->partition) - == (hd->partition_start << (disk->log_sector_size - - GRUB_DISK_SECTOR_BITS))) - && (grub_partition_get_len (disk->partition) - == (hd->partition_size << (disk->log_sector_size - - GRUB_DISK_SECTOR_BITS)))) - { - handle = c->handle; - break; - } - } - - free_devices (devices); - - if (handle != 0) - return handle; - } - break; - - default: - break; - } - - return 0; -} - -#define NEEDED_BUFLEN sizeof ("XdXXXXXXXXXX") -static inline int -get_diskname_from_path_real (const grub_efi_device_path_t *path, - struct grub_efidisk_data *head, - char *buf) -{ - int count = 0; - struct grub_efidisk_data *d; - for (d = head, count = 0; d; d = d->next, count++) - if (grub_efi_compare_device_paths (d->device_path, path) == 0) - { - grub_snprintf (buf, NEEDED_BUFLEN - 1, "d%d", count); - return 1; - } - return 0; -} - -static inline int -get_diskname_from_path (const grub_efi_device_path_t *path, - char *buf) -{ - if (get_diskname_from_path_real (path, hd_devices, buf + 1)) - { - buf[0] = 'h'; - return 1; - } - - if (get_diskname_from_path_real (path, fd_devices, buf + 1)) - { - buf[0] = 'f'; - return 1; - } - - if (get_diskname_from_path_real (path, cd_devices, buf + 1)) - { - buf[0] = 'c'; - return 1; - } - return 0; -} - -/* Context for grub_efidisk_get_device_name. */ -struct grub_efidisk_get_device_name_ctx -{ - char *partition_name; - grub_efi_hard_drive_device_path_t *hd; -}; - -/* Helper for grub_efidisk_get_device_name. - Find the identical partition. */ -static int -grub_efidisk_get_device_name_iter (grub_disk_t disk, - const grub_partition_t part, void *data) -{ - struct grub_efidisk_get_device_name_ctx *ctx = data; - - if (grub_partition_get_start (part) - == (ctx->hd->partition_start << (disk->log_sector_size - - GRUB_DISK_SECTOR_BITS)) - && grub_partition_get_len (part) - == (ctx->hd->partition_size << (disk->log_sector_size - - GRUB_DISK_SECTOR_BITS))) - { - ctx->partition_name = grub_partition_get_name (part); - return 1; - } - - return 0; -} - -char * -grub_efidisk_get_device_name (grub_efi_handle_t *handle) -{ - grub_efi_device_path_t *dp, *ldp; - char device_name[NEEDED_BUFLEN]; - - dp = grub_efi_get_device_path (handle); - if (! dp) - return 0; - - ldp = grub_efi_find_last_device_path (dp); - if (! ldp) - return 0; - - if (GRUB_EFI_DEVICE_PATH_TYPE (ldp) == GRUB_EFI_MEDIA_DEVICE_PATH_TYPE - && (GRUB_EFI_DEVICE_PATH_SUBTYPE (ldp) == GRUB_EFI_CDROM_DEVICE_PATH_SUBTYPE - || GRUB_EFI_DEVICE_PATH_SUBTYPE (ldp) == GRUB_EFI_HARD_DRIVE_DEVICE_PATH_SUBTYPE)) - { - struct grub_efidisk_get_device_name_ctx ctx; - char *dev_name; - grub_efi_device_path_t *dup_dp; - grub_disk_t parent = 0; - - /* It is necessary to duplicate the device path so that GRUB - can overwrite it. */ - dup_dp = grub_efi_duplicate_device_path (dp); - if (! dup_dp) - return 0; - - while (1) - { - grub_efi_device_path_t *dup_ldp; - dup_ldp = grub_efi_find_last_device_path (dup_dp); - if (! dup_ldp) - break; - - if (!(GRUB_EFI_DEVICE_PATH_TYPE (dup_ldp) == GRUB_EFI_MEDIA_DEVICE_PATH_TYPE - && (GRUB_EFI_DEVICE_PATH_SUBTYPE (dup_ldp) == GRUB_EFI_CDROM_DEVICE_PATH_SUBTYPE - || GRUB_EFI_DEVICE_PATH_SUBTYPE (dup_ldp) == GRUB_EFI_HARD_DRIVE_DEVICE_PATH_SUBTYPE))) - break; - - dup_ldp->type = GRUB_EFI_END_DEVICE_PATH_TYPE; - dup_ldp->subtype = GRUB_EFI_END_ENTIRE_DEVICE_PATH_SUBTYPE; - dup_ldp->length = sizeof (*dup_ldp); - } - - if (!get_diskname_from_path (dup_dp, device_name)) - { - grub_free (dup_dp); - return 0; - } - - parent = grub_disk_open (device_name); - grub_free (dup_dp); - - if (! parent) - return 0; - - /* Find a partition which matches the hard drive device path. */ - ctx.partition_name = NULL; - ctx.hd = (grub_efi_hard_drive_device_path_t *) ldp; - if (ctx.hd->partition_start == 0 - && (ctx.hd->partition_size << (parent->log_sector_size - - GRUB_DISK_SECTOR_BITS)) - == grub_disk_get_size (parent)) - { - dev_name = grub_strdup (parent->name); - } - else - { - grub_partition_iterate (parent, grub_efidisk_get_device_name_iter, - &ctx); - - if (! ctx.partition_name) - { - /* No partition found. In most cases partition is embed in - the root path anyway, so this is not critical. - This happens only if partition is on partmap that GRUB - doesn't need to access root. - */ - grub_disk_close (parent); - return grub_strdup (device_name); - } - - dev_name = grub_xasprintf ("%s,%s", parent->name, - ctx.partition_name); - grub_free (ctx.partition_name); - } - grub_disk_close (parent); - - return dev_name; - } - /* This may be guessed device - floppy, cdrom or entire disk. */ - if (!get_diskname_from_path (dp, device_name)) - return 0; - return grub_strdup (device_name); -} diff --git a/thirdparty/grub-2.04/grub-core/disk/geli.c b/thirdparty/grub-2.04/grub-core/disk/geli.c deleted file mode 100644 index e9d23299a..000000000 --- a/thirdparty/grub-2.04/grub-core/disk/geli.c +++ /dev/null @@ -1,595 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2003,2007,2010,2011 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -/* This file is loosely based on FreeBSD geli implementation - (but no code was directly copied). FreeBSD geli is distributed under - following terms: */ -/*- - * Copyright (c) 2005-2006 Pawel Jakub Dawidek - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE AUTHORS AND CONTRIBUTORS ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHORS OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - */ - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -/* Dirty trick to solve circular dependency. */ -#ifdef GRUB_UTIL - -#include - -#undef GRUB_MD_SHA256 -#undef GRUB_MD_SHA512 - -static const gcry_md_spec_t * -grub_md_sha256_real (void) -{ - const gcry_md_spec_t *ret; - ret = grub_crypto_lookup_md_by_name ("sha256"); - if (!ret) - grub_util_error ("%s", _("Couldn't load sha256")); - return ret; -} - -static const gcry_md_spec_t * -grub_md_sha512_real (void) -{ - const gcry_md_spec_t *ret; - ret = grub_crypto_lookup_md_by_name ("sha512"); - if (!ret) - grub_util_error ("%s", _("Couldn't load sha512")); - return ret; -} - -#define GRUB_MD_SHA256 grub_md_sha256_real() -#define GRUB_MD_SHA512 grub_md_sha512_real() -#endif - -struct grub_geli_key -{ - grub_uint8_t iv_key[64]; - grub_uint8_t cipher_key[64]; - grub_uint8_t hmac[64]; -} GRUB_PACKED; - -struct grub_geli_phdr -{ - grub_uint8_t magic[16]; -#define GELI_MAGIC "GEOM::ELI" - grub_uint32_t version; - grub_uint32_t flags; - grub_uint16_t alg; - grub_uint16_t keylen; - grub_uint16_t unused3[5]; - grub_uint32_t sector_size; - grub_uint8_t keys_used; - grub_uint32_t niter; - grub_uint8_t salt[64]; - struct grub_geli_key keys[2]; -} GRUB_PACKED; - -enum - { - GRUB_GELI_FLAGS_ONETIME = 1, - GRUB_GELI_FLAGS_BOOT = 2, - }; - -/* FIXME: support version 0. */ -/* FIXME: support big-endian pre-version-4 volumes. */ -/* FIXME: support for keyfiles. */ -/* FIXME: support for HMAC. */ -const char *algorithms[] = { - [0x01] = "des", - [0x02] = "3des", - [0x03] = "blowfish", - [0x04] = "cast5", - /* FIXME: 0x05 is skipjack, but we don't have it. */ - [0x0b] = "aes", - /* FIXME: 0x10 is null. */ - [0x15] = "camellia128", - [0x16] = "aes" -}; - -#define MAX_PASSPHRASE 256 - -static gcry_err_code_t -geli_rekey (struct grub_cryptodisk *dev, grub_uint64_t zoneno) -{ - gcry_err_code_t gcry_err; - const struct { - char magic[4]; - grub_uint64_t zone; - } GRUB_PACKED tohash - = { {'e', 'k', 'e', 'y'}, grub_cpu_to_le64 (zoneno) }; - GRUB_PROPERLY_ALIGNED_ARRAY (key, GRUB_CRYPTO_MAX_MDLEN); - - if (dev->hash->mdlen > GRUB_CRYPTO_MAX_MDLEN) - return GPG_ERR_INV_ARG; - - grub_dprintf ("geli", "rekeying %" PRIuGRUB_UINT64_T " keysize=%d\n", - zoneno, dev->rekey_derived_size); - gcry_err = grub_crypto_hmac_buffer (dev->hash, dev->rekey_key, 64, - &tohash, sizeof (tohash), key); - if (gcry_err) - return gcry_err; - - return grub_cryptodisk_setkey (dev, (grub_uint8_t *) key, - dev->rekey_derived_size); -} - -static inline gcry_err_code_t -make_uuid (const struct grub_geli_phdr *header, - char *uuid) -{ - grub_uint8_t uuidbin[GRUB_CRYPTODISK_MAX_UUID_LENGTH]; - gcry_err_code_t err; - grub_uint8_t *iptr; - char *optr; - - if (2 * GRUB_MD_SHA256->mdlen + 1 > GRUB_CRYPTODISK_MAX_UUID_LENGTH) - return GPG_ERR_TOO_LARGE; - err = grub_crypto_hmac_buffer (GRUB_MD_SHA256, - header->salt, sizeof (header->salt), - "uuid", sizeof ("uuid") - 1, uuidbin); - if (err) - return err; - - optr = uuid; - for (iptr = uuidbin; iptr < &uuidbin[GRUB_MD_SHA256->mdlen]; iptr++) - { - grub_snprintf (optr, 3, "%02x", *iptr); - optr += 2; - } - *optr = 0; - return GPG_ERR_NO_ERROR; -} - -#ifdef GRUB_UTIL - -#include -#include - -char * -grub_util_get_geli_uuid (const char *dev) -{ - grub_util_fd_t fd; - grub_uint64_t s; - unsigned log_secsize; - grub_uint8_t hdr[512]; - struct grub_geli_phdr *header; - char *uuid; - gcry_err_code_t err; - - fd = grub_util_fd_open (dev, GRUB_UTIL_FD_O_RDONLY); - - if (!GRUB_UTIL_FD_IS_VALID (fd)) - return NULL; - - s = grub_util_get_fd_size (fd, dev, &log_secsize); - s >>= log_secsize; - if (grub_util_fd_seek (fd, (s << log_secsize) - 512) < 0) - grub_util_error ("%s", _("couldn't read ELI metadata")); - - uuid = xmalloc (GRUB_MD_SHA256->mdlen * 2 + 1); - if (grub_util_fd_read (fd, (void *) &hdr, 512) < 0) - grub_util_error ("%s", _("couldn't read ELI metadata")); - - grub_util_fd_close (fd); - - COMPILE_TIME_ASSERT (sizeof (header) <= 512); - header = (void *) &hdr; - - /* Look for GELI magic sequence. */ - if (grub_memcmp (header->magic, GELI_MAGIC, sizeof (GELI_MAGIC)) - || grub_le_to_cpu32 (header->version) > 7 - || grub_le_to_cpu32 (header->version) < 1) - grub_util_error ("%s", _("wrong ELI magic or version")); - - err = make_uuid ((void *) &hdr, uuid); - if (err) - { - grub_free (uuid); - return NULL; - } - - return uuid; -} -#endif - -static grub_cryptodisk_t -configure_ciphers (grub_disk_t disk, const char *check_uuid, - int boot_only) -{ - grub_cryptodisk_t newdev; - struct grub_geli_phdr header; - grub_crypto_cipher_handle_t cipher = NULL, secondary_cipher = NULL; - const struct gcry_cipher_spec *ciph; - const char *ciphername = NULL; - gcry_err_code_t gcry_err; - char uuid[GRUB_CRYPTODISK_MAX_UUID_LENGTH]; - grub_disk_addr_t sector; - grub_err_t err; - - if (2 * GRUB_MD_SHA256->mdlen + 1 > GRUB_CRYPTODISK_MAX_UUID_LENGTH) - return NULL; - - sector = grub_disk_get_size (disk); - if (sector == GRUB_DISK_SIZE_UNKNOWN || sector == 0) - return NULL; - - /* Read the GELI header. */ - err = grub_disk_read (disk, sector - 1, 0, sizeof (header), &header); - if (err) - return NULL; - - /* Look for GELI magic sequence. */ - if (grub_memcmp (header.magic, GELI_MAGIC, sizeof (GELI_MAGIC)) - || grub_le_to_cpu32 (header.version) > 7 - || grub_le_to_cpu32 (header.version) < 1) - { - grub_dprintf ("geli", "wrong magic %02x\n", header.magic[0]); - return NULL; - } - - if ((grub_le_to_cpu32 (header.sector_size) - & (grub_le_to_cpu32 (header.sector_size) - 1)) - || grub_le_to_cpu32 (header.sector_size) == 0) - { - grub_dprintf ("geli", "incorrect sector size %d\n", - grub_le_to_cpu32 (header.sector_size)); - return NULL; - } - - if (grub_le_to_cpu32 (header.flags) & GRUB_GELI_FLAGS_ONETIME) - { - grub_dprintf ("geli", "skipping one-time volume\n"); - return NULL; - } - - if (boot_only && !(grub_le_to_cpu32 (header.flags) & GRUB_GELI_FLAGS_BOOT)) - { - grub_dprintf ("geli", "not a boot volume\n"); - return NULL; - } - - gcry_err = make_uuid (&header, uuid); - if (gcry_err) - { - grub_crypto_gcry_error (gcry_err); - return NULL; - } - - if (check_uuid && grub_strcasecmp (check_uuid, uuid) != 0) - { - grub_dprintf ("geli", "%s != %s\n", uuid, check_uuid); - return NULL; - } - - if (grub_le_to_cpu16 (header.alg) >= ARRAY_SIZE (algorithms) - || algorithms[grub_le_to_cpu16 (header.alg)] == NULL) - { - grub_error (GRUB_ERR_FILE_NOT_FOUND, "Cipher 0x%x unknown", - grub_le_to_cpu16 (header.alg)); - return NULL; - } - - ciphername = algorithms[grub_le_to_cpu16 (header.alg)]; - ciph = grub_crypto_lookup_cipher_by_name (ciphername); - if (!ciph) - { - grub_error (GRUB_ERR_FILE_NOT_FOUND, "Cipher %s isn't available", - ciphername); - return NULL; - } - - /* Configure the cipher used for the bulk data. */ - cipher = grub_crypto_cipher_open (ciph); - if (!cipher) - return NULL; - - if (grub_le_to_cpu16 (header.alg) == 0x16) - { - secondary_cipher = grub_crypto_cipher_open (ciph); - if (!secondary_cipher) - { - grub_crypto_cipher_close (cipher); - return NULL; - } - - } - - if (grub_le_to_cpu16 (header.keylen) > 1024) - { - grub_error (GRUB_ERR_BAD_ARGUMENT, "invalid keysize %d", - grub_le_to_cpu16 (header.keylen)); - grub_crypto_cipher_close (cipher); - grub_crypto_cipher_close (secondary_cipher); - return NULL; - } - - newdev = grub_zalloc (sizeof (struct grub_cryptodisk)); - if (!newdev) - { - grub_crypto_cipher_close (cipher); - grub_crypto_cipher_close (secondary_cipher); - return NULL; - } - newdev->cipher = cipher; - newdev->secondary_cipher = secondary_cipher; - newdev->offset = 0; - newdev->source_disk = NULL; - newdev->benbi_log = 0; - if (grub_le_to_cpu16 (header.alg) == 0x16) - { - newdev->mode = GRUB_CRYPTODISK_MODE_XTS; - newdev->mode_iv = GRUB_CRYPTODISK_MODE_IV_BYTECOUNT64; - } - else - { - newdev->mode = GRUB_CRYPTODISK_MODE_CBC; - newdev->mode_iv = GRUB_CRYPTODISK_MODE_IV_BYTECOUNT64_HASH; - } - newdev->essiv_cipher = NULL; - newdev->essiv_hash = NULL; - newdev->hash = GRUB_MD_SHA512; - newdev->iv_hash = GRUB_MD_SHA256; - - for (newdev->log_sector_size = 0; - (1U << newdev->log_sector_size) < grub_le_to_cpu32 (header.sector_size); - newdev->log_sector_size++); - - if (grub_le_to_cpu32 (header.version) >= 5) - { - newdev->rekey = geli_rekey; - newdev->rekey_shift = 20; - } - - newdev->modname = "geli"; - - newdev->total_length = grub_disk_get_size (disk) - 1; - grub_memcpy (newdev->uuid, uuid, sizeof (newdev->uuid)); - COMPILE_TIME_ASSERT (sizeof (newdev->uuid) >= 32 * 2 + 1); - return newdev; -} - -static grub_err_t -recover_key (grub_disk_t source, grub_cryptodisk_t dev) -{ - grub_size_t keysize; - grub_uint8_t digest[GRUB_CRYPTO_MAX_MDLEN]; - grub_uint8_t geomkey[GRUB_CRYPTO_MAX_MDLEN]; - grub_uint8_t verify_key[GRUB_CRYPTO_MAX_MDLEN]; - grub_uint8_t zero[GRUB_CRYPTO_MAX_CIPHER_BLOCKSIZE]; - grub_uint8_t geli_cipher_key[64]; - char passphrase[MAX_PASSPHRASE] = ""; - unsigned i; - gcry_err_code_t gcry_err; - struct grub_geli_phdr header; - char *tmp; - grub_disk_addr_t sector; - grub_err_t err; - - if (dev->cipher->cipher->blocksize > GRUB_CRYPTO_MAX_CIPHER_BLOCKSIZE) - return grub_error (GRUB_ERR_BUG, "cipher block is too long"); - - if (dev->hash->mdlen > GRUB_CRYPTO_MAX_MDLEN) - return grub_error (GRUB_ERR_BUG, "mdlen is too long"); - - sector = grub_disk_get_size (source); - if (sector == GRUB_DISK_SIZE_UNKNOWN || sector == 0) - return grub_error (GRUB_ERR_BUG, "not a geli"); - - /* Read the GELI header. */ - err = grub_disk_read (source, sector - 1, 0, sizeof (header), &header); - if (err) - return err; - - keysize = grub_le_to_cpu16 (header.keylen) / GRUB_CHAR_BIT; - grub_memset (zero, 0, sizeof (zero)); - - grub_puts_ (N_("Attempting to decrypt master key...")); - - /* Get the passphrase from the user. */ - tmp = NULL; - if (source->partition) - tmp = grub_partition_get_name (source->partition); - grub_printf_ (N_("Enter passphrase for %s%s%s (%s): "), source->name, - source->partition ? "," : "", tmp ? : "", - dev->uuid); - grub_free (tmp); - if (!grub_password_get (passphrase, MAX_PASSPHRASE)) - return grub_error (GRUB_ERR_BAD_ARGUMENT, "Passphrase not supplied"); - - /* Calculate the PBKDF2 of the user supplied passphrase. */ - if (grub_le_to_cpu32 (header.niter) != 0) - { - grub_uint8_t pbkdf_key[64]; - gcry_err = grub_crypto_pbkdf2 (dev->hash, (grub_uint8_t *) passphrase, - grub_strlen (passphrase), - header.salt, - sizeof (header.salt), - grub_le_to_cpu32 (header.niter), - pbkdf_key, sizeof (pbkdf_key)); - - if (gcry_err) - return grub_crypto_gcry_error (gcry_err); - - gcry_err = grub_crypto_hmac_buffer (dev->hash, NULL, 0, pbkdf_key, - sizeof (pbkdf_key), geomkey); - if (gcry_err) - return grub_crypto_gcry_error (gcry_err); - } - else - { - struct grub_crypto_hmac_handle *hnd; - - hnd = grub_crypto_hmac_init (dev->hash, NULL, 0); - if (!hnd) - return grub_crypto_gcry_error (GPG_ERR_OUT_OF_MEMORY); - - grub_crypto_hmac_write (hnd, header.salt, sizeof (header.salt)); - grub_crypto_hmac_write (hnd, passphrase, grub_strlen (passphrase)); - - gcry_err = grub_crypto_hmac_fini (hnd, geomkey); - if (gcry_err) - return grub_crypto_gcry_error (gcry_err); - } - - gcry_err = grub_crypto_hmac_buffer (dev->hash, geomkey, - dev->hash->mdlen, "\1", 1, digest); - if (gcry_err) - return grub_crypto_gcry_error (gcry_err); - - gcry_err = grub_crypto_hmac_buffer (dev->hash, geomkey, - dev->hash->mdlen, "\0", 1, verify_key); - if (gcry_err) - return grub_crypto_gcry_error (gcry_err); - - grub_dprintf ("geli", "keylen = %" PRIuGRUB_SIZE "\n", keysize); - - /* Try to recover master key from each active keyslot. */ - for (i = 0; i < ARRAY_SIZE (header.keys); i++) - { - struct grub_geli_key candidate_key; - grub_uint8_t key_hmac[GRUB_CRYPTO_MAX_MDLEN]; - - /* Check if keyslot is enabled. */ - if (! (header.keys_used & (1 << i))) - continue; - - grub_dprintf ("geli", "Trying keyslot %d\n", i); - - gcry_err = grub_crypto_cipher_set_key (dev->cipher, - digest, keysize); - if (gcry_err) - return grub_crypto_gcry_error (gcry_err); - - gcry_err = grub_crypto_cbc_decrypt (dev->cipher, &candidate_key, - &header.keys[i], - sizeof (candidate_key), - zero); - if (gcry_err) - return grub_crypto_gcry_error (gcry_err); - - gcry_err = grub_crypto_hmac_buffer (dev->hash, verify_key, - dev->hash->mdlen, - &candidate_key, - (sizeof (candidate_key) - - sizeof (candidate_key.hmac)), - key_hmac); - if (gcry_err) - return grub_crypto_gcry_error (gcry_err); - - if (grub_memcmp (candidate_key.hmac, key_hmac, dev->hash->mdlen) != 0) - continue; - grub_printf_ (N_("Slot %d opened\n"), i); - - if (grub_le_to_cpu32 (header.version) >= 7) - { - /* GELI >=7 uses the cipher_key */ - grub_memcpy (geli_cipher_key, candidate_key.cipher_key, - sizeof (candidate_key.cipher_key)); - } - else - { - /* GELI <=6 uses the iv_key */ - grub_memcpy (geli_cipher_key, candidate_key.iv_key, - sizeof (candidate_key.iv_key)); - } - - /* Set the master key. */ - if (!dev->rekey) - { - grub_size_t real_keysize = keysize; - if (grub_le_to_cpu16 (header.alg) == 0x16) - real_keysize *= 2; - gcry_err = grub_cryptodisk_setkey (dev, candidate_key.cipher_key, - real_keysize); - if (gcry_err) - return grub_crypto_gcry_error (gcry_err); - } - else - { - grub_size_t real_keysize = keysize; - if (grub_le_to_cpu16 (header.alg) == 0x16) - real_keysize *= 2; - - grub_memcpy (dev->rekey_key, geli_cipher_key, - sizeof (geli_cipher_key)); - dev->rekey_derived_size = real_keysize; - dev->last_rekey = -1; - COMPILE_TIME_ASSERT (sizeof (dev->rekey_key) - >= sizeof (geli_cipher_key)); - } - - dev->iv_prefix_len = sizeof (candidate_key.iv_key); - grub_memcpy (dev->iv_prefix, candidate_key.iv_key, - sizeof (candidate_key.iv_key)); - - COMPILE_TIME_ASSERT (sizeof (dev->iv_prefix) >= sizeof (candidate_key.iv_key)); - - return GRUB_ERR_NONE; - } - - return GRUB_ACCESS_DENIED; -} - -struct grub_cryptodisk_dev geli_crypto = { - .scan = configure_ciphers, - .recover_key = recover_key -}; - -GRUB_MOD_INIT (geli) -{ - grub_cryptodisk_dev_register (&geli_crypto); -} - -GRUB_MOD_FINI (geli) -{ - grub_cryptodisk_dev_unregister (&geli_crypto); -} diff --git a/thirdparty/grub-2.04/grub-core/disk/host.c b/thirdparty/grub-2.04/grub-core/disk/host.c deleted file mode 100644 index c151d225d..000000000 --- a/thirdparty/grub-2.04/grub-core/disk/host.c +++ /dev/null @@ -1,103 +0,0 @@ -/* host.c - Dummy disk driver to provide access to the hosts filesystem */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2007 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -/* When using the disk, make a reference to this module. Otherwise - the user will end up with a useless module :-). */ - -#include -#include - -#include -#include -#include -#include - -int grub_disk_host_i_want_a_reference; - -static int -grub_host_iterate (grub_disk_dev_iterate_hook_t hook, void *hook_data, - grub_disk_pull_t pull) -{ - if (pull != GRUB_DISK_PULL_NONE) - return 0; - - if (hook ("host", hook_data)) - return 1; - return 0; -} - -static grub_err_t -grub_host_open (const char *name, grub_disk_t disk) -{ - if (grub_strcmp (name, "host")) - return grub_error (GRUB_ERR_UNKNOWN_DEVICE, "not a host disk"); - - disk->total_sectors = 0; - disk->id = 0; - - disk->data = 0; - - return GRUB_ERR_NONE; -} - -static void -grub_host_close (grub_disk_t disk __attribute((unused))) -{ -} - -static grub_err_t -grub_host_read (grub_disk_t disk __attribute((unused)), - grub_disk_addr_t sector __attribute((unused)), - grub_size_t size __attribute((unused)), - char *buf __attribute((unused))) -{ - return GRUB_ERR_OUT_OF_RANGE; -} - -static grub_err_t -grub_host_write (grub_disk_t disk __attribute ((unused)), - grub_disk_addr_t sector __attribute ((unused)), - grub_size_t size __attribute ((unused)), - const char *buf __attribute ((unused))) -{ - return GRUB_ERR_OUT_OF_RANGE; -} - -static struct grub_disk_dev grub_host_dev = - { - /* The only important line in this file :-) */ - .name = "host", - .id = GRUB_DISK_DEVICE_HOST_ID, - .disk_iterate = grub_host_iterate, - .disk_open = grub_host_open, - .disk_close = grub_host_close, - .disk_read = grub_host_read, - .disk_write = grub_host_write, - .next = 0 - }; - -GRUB_MOD_INIT(host) -{ - grub_disk_dev_register (&grub_host_dev); -} - -GRUB_MOD_FINI(host) -{ - grub_disk_dev_unregister (&grub_host_dev); -} diff --git a/thirdparty/grub-2.04/grub-core/disk/i386/pc/biosdisk.c b/thirdparty/grub-2.04/grub-core/disk/i386/pc/biosdisk.c deleted file mode 100644 index 8ca250c77..000000000 --- a/thirdparty/grub-2.04/grub-core/disk/i386/pc/biosdisk.c +++ /dev/null @@ -1,688 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 1999,2000,2001,2002,2003,2004,2005,2006,2007,2008,2009,2010 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -static int cd_drive = 0; -static int grub_biosdisk_rw_int13_extensions (int ah, int drive, void *dap); - -static int grub_biosdisk_get_num_floppies (void) -{ - struct grub_bios_int_registers regs; - int drive; - - /* reset the disk system first */ - regs.eax = 0; - regs.edx = 0; - regs.flags = GRUB_CPU_INT_FLAGS_DEFAULT; - - grub_bios_interrupt (0x13, ®s); - - for (drive = 0; drive < 2; drive++) - { - regs.flags = GRUB_CPU_INT_FLAGS_DEFAULT | GRUB_CPU_INT_FLAGS_CARRY; - regs.edx = drive; - - /* call GET DISK TYPE */ - regs.eax = 0x1500; - grub_bios_interrupt (0x13, ®s); - if (regs.flags & GRUB_CPU_INT_FLAGS_CARRY) - break; - - /* check if this drive exists */ - if (!(regs.eax & 0x300)) - break; - } - - return drive; -} - -/* - * Call IBM/MS INT13 Extensions (int 13 %ah=AH) for DRIVE. DAP - * is passed for disk address packet. If an error occurs, return - * non-zero, otherwise zero. - */ - -static int -grub_biosdisk_rw_int13_extensions (int ah, int drive, void *dap) -{ - struct grub_bios_int_registers regs; - regs.eax = ah << 8; - /* compute the address of disk_address_packet */ - regs.ds = (((grub_addr_t) dap) & 0xffff0000) >> 4; - regs.esi = (((grub_addr_t) dap) & 0xffff); - regs.edx = drive; - regs.flags = GRUB_CPU_INT_FLAGS_DEFAULT; - - grub_bios_interrupt (0x13, ®s); - return (regs.eax >> 8) & 0xff; -} - -/* - * Call standard and old INT13 (int 13 %ah=AH) for DRIVE. Read/write - * NSEC sectors from COFF/HOFF/SOFF into SEGMENT. If an error occurs, - * return non-zero, otherwise zero. - */ -static int -grub_biosdisk_rw_standard (int ah, int drive, int coff, int hoff, - int soff, int nsec, int segment) -{ - int ret, i; - - /* Try 3 times. */ - for (i = 0; i < 3; i++) - { - struct grub_bios_int_registers regs; - - /* set up CHS information */ - /* set %ch to low eight bits of cylinder */ - regs.ecx = (coff << 8) & 0xff00; - /* set bits 6-7 of %cl to high two bits of cylinder */ - regs.ecx |= (coff >> 2) & 0xc0; - /* set bits 0-5 of %cl to sector */ - regs.ecx |= soff & 0x3f; - - /* set %dh to head and %dl to drive */ - regs.edx = (drive & 0xff) | ((hoff << 8) & 0xff00); - /* set %ah to AH */ - regs.eax = (ah << 8) & 0xff00; - /* set %al to NSEC */ - regs.eax |= nsec & 0xff; - - regs.ebx = 0; - regs.es = segment; - - regs.flags = GRUB_CPU_INT_FLAGS_DEFAULT; - - grub_bios_interrupt (0x13, ®s); - /* check if successful */ - if (!(regs.flags & GRUB_CPU_INT_FLAGS_CARRY)) - return 0; - - /* save return value */ - ret = regs.eax >> 8; - - /* if fail, reset the disk system */ - regs.eax = 0; - regs.edx = (drive & 0xff); - regs.flags = GRUB_CPU_INT_FLAGS_DEFAULT; - grub_bios_interrupt (0x13, ®s); - } - return ret; -} - -/* - * Check if LBA is supported for DRIVE. If it is supported, then return - * the major version of extensions, otherwise zero. - */ -static int -grub_biosdisk_check_int13_extensions (int drive) -{ - struct grub_bios_int_registers regs; - - regs.edx = drive & 0xff; - regs.eax = 0x4100; - regs.ebx = 0x55aa; - regs.flags = GRUB_CPU_INT_FLAGS_DEFAULT; - grub_bios_interrupt (0x13, ®s); - - if (regs.flags & GRUB_CPU_INT_FLAGS_CARRY) - return 0; - - if ((regs.ebx & 0xffff) != 0xaa55) - return 0; - - /* check if AH=0x42 is supported */ - if (!(regs.ecx & 1)) - return 0; - - return (regs.eax >> 8) & 0xff; -} - -/* - * Return the geometry of DRIVE in CYLINDERS, HEADS and SECTORS. If an - * error occurs, then return non-zero, otherwise zero. - */ -static int -grub_biosdisk_get_diskinfo_standard (int drive, - unsigned long *cylinders, - unsigned long *heads, - unsigned long *sectors) -{ - struct grub_bios_int_registers regs; - - regs.eax = 0x0800; - regs.edx = drive & 0xff; - - regs.flags = GRUB_CPU_INT_FLAGS_DEFAULT; - grub_bios_interrupt (0x13, ®s); - - /* Check if unsuccessful. Ignore return value if carry isn't set to - workaround some buggy BIOSes. */ - if ((regs.flags & GRUB_CPU_INT_FLAGS_CARRY) && ((regs.eax & 0xff00) != 0)) - return (regs.eax & 0xff00) >> 8; - - /* bogus BIOSes may not return an error number */ - /* 0 sectors means no disk */ - if (!(regs.ecx & 0x3f)) - /* XXX 0x60 is one of the unused error numbers */ - return 0x60; - - /* the number of heads is counted from zero */ - *heads = ((regs.edx >> 8) & 0xff) + 1; - *cylinders = (((regs.ecx >> 8) & 0xff) | ((regs.ecx << 2) & 0x0300)) + 1; - *sectors = regs.ecx & 0x3f; - return 0; -} - -static int -grub_biosdisk_get_diskinfo_real (int drive, void *drp, grub_uint16_t ax) -{ - struct grub_bios_int_registers regs; - - regs.eax = ax; - - /* compute the address of drive parameters */ - regs.esi = ((grub_addr_t) drp) & 0xf; - regs.ds = ((grub_addr_t) drp) >> 4; - regs.edx = drive & 0xff; - - regs.flags = GRUB_CPU_INT_FLAGS_DEFAULT; - grub_bios_interrupt (0x13, ®s); - - /* Check if unsuccessful. Ignore return value if carry isn't set to - workaround some buggy BIOSes. */ - if ((regs.flags & GRUB_CPU_INT_FLAGS_CARRY) && ((regs.eax & 0xff00) != 0)) - return (regs.eax & 0xff00) >> 8; - - return 0; -} - -/* - * Return the cdrom information of DRIVE in CDRP. If an error occurs, - * then return non-zero, otherwise zero. - */ -static int -grub_biosdisk_get_cdinfo_int13_extensions (int drive, void *cdrp) -{ - return grub_biosdisk_get_diskinfo_real (drive, cdrp, 0x4b01); -} - -/* - * Return the geometry of DRIVE in a drive parameters, DRP. If an error - * occurs, then return non-zero, otherwise zero. - */ -static int -grub_biosdisk_get_diskinfo_int13_extensions (int drive, void *drp) -{ - return grub_biosdisk_get_diskinfo_real (drive, drp, 0x4800); -} - -static int -grub_biosdisk_get_drive (const char *name) -{ - unsigned long drive; - - if (name[0] == 'c' && name[1] == 'd' && name[2] == 0 && cd_drive) - return cd_drive; - - if ((name[0] != 'f' && name[0] != 'h') || name[1] != 'd') - goto fail; - - drive = grub_strtoul (name + 2, 0, 10); - if (grub_errno != GRUB_ERR_NONE) - goto fail; - - if (name[0] == 'h') - drive += 0x80; - - return (int) drive ; - - fail: - grub_error (GRUB_ERR_UNKNOWN_DEVICE, "not a biosdisk"); - return -1; -} - -static int -grub_biosdisk_call_hook (grub_disk_dev_iterate_hook_t hook, void *hook_data, - int drive) -{ - char name[10]; - - if (cd_drive && drive == cd_drive) - return hook ("cd", hook_data); - - grub_snprintf (name, sizeof (name), - (drive & 0x80) ? "hd%d" : "fd%d", drive & (~0x80)); - return hook (name, hook_data); -} - -static int -grub_biosdisk_iterate (grub_disk_dev_iterate_hook_t hook, void *hook_data, - grub_disk_pull_t pull) -{ - int num_floppies; - int drive; - - /* For hard disks, attempt to read the MBR. */ - switch (pull) - { - case GRUB_DISK_PULL_NONE: - for (drive = 0x80; drive < 0x90; drive++) - { - if (grub_biosdisk_rw_standard (0x02, drive, 0, 0, 1, 1, - GRUB_MEMORY_MACHINE_SCRATCH_SEG) != 0) - { - grub_dprintf ("disk", "Read error when probing drive 0x%2x\n", drive); - break; - } - - if (grub_biosdisk_call_hook (hook, hook_data, drive)) - return 1; - } - return 0; - - case GRUB_DISK_PULL_REMOVABLE: - if (cd_drive) - { - if (grub_biosdisk_call_hook (hook, hook_data, cd_drive)) - return 1; - } - - /* For floppy disks, we can get the number safely. */ - num_floppies = grub_biosdisk_get_num_floppies (); - for (drive = 0; drive < num_floppies; drive++) - if (grub_biosdisk_call_hook (hook, hook_data, drive)) - return 1; - return 0; - default: - return 0; - } - return 0; -} - -static grub_err_t -grub_biosdisk_open (const char *name, grub_disk_t disk) -{ - grub_uint64_t total_sectors = 0; - int drive; - struct grub_biosdisk_data *data; - - drive = grub_biosdisk_get_drive (name); - if (drive < 0) - return grub_errno; - - disk->id = drive; - - data = (struct grub_biosdisk_data *) grub_zalloc (sizeof (*data)); - if (! data) - return grub_errno; - - data->drive = drive; - - if ((cd_drive) && (drive == cd_drive)) - { - data->flags = GRUB_BIOSDISK_FLAG_LBA | GRUB_BIOSDISK_FLAG_CDROM; - data->sectors = 8; - disk->log_sector_size = 11; - /* TODO: get the correct size. */ - total_sectors = GRUB_DISK_SIZE_UNKNOWN; - } - else - { - /* HDD */ - int version; - - disk->log_sector_size = 9; - - version = grub_biosdisk_check_int13_extensions (drive); - if (version) - { - struct grub_biosdisk_drp *drp - = (struct grub_biosdisk_drp *) GRUB_MEMORY_MACHINE_SCRATCH_ADDR; - - /* Clear out the DRP. */ - grub_memset (drp, 0, sizeof (*drp)); - drp->size = sizeof (*drp); - if (! grub_biosdisk_get_diskinfo_int13_extensions (drive, drp)) - { - data->flags = GRUB_BIOSDISK_FLAG_LBA; - - if (drp->total_sectors) - total_sectors = drp->total_sectors; - else - /* Some buggy BIOSes doesn't return the total sectors - correctly but returns zero. So if it is zero, compute - it by C/H/S returned by the LBA BIOS call. */ - total_sectors = ((grub_uint64_t) drp->cylinders) - * drp->heads * drp->sectors; - if (drp->bytes_per_sector - && !(drp->bytes_per_sector & (drp->bytes_per_sector - 1)) - && drp->bytes_per_sector >= 512 - && drp->bytes_per_sector <= 16384) - { - for (disk->log_sector_size = 0; - (1 << disk->log_sector_size) < drp->bytes_per_sector; - disk->log_sector_size++); - } - } - } - } - - if (! (data->flags & GRUB_BIOSDISK_FLAG_CDROM)) - { - if (grub_biosdisk_get_diskinfo_standard (drive, - &data->cylinders, - &data->heads, - &data->sectors) != 0) - { - if (total_sectors && (data->flags & GRUB_BIOSDISK_FLAG_LBA)) - { - data->sectors = 63; - data->heads = 255; - data->cylinders - = grub_divmod64 (total_sectors - + data->heads * data->sectors - 1, - data->heads * data->sectors, 0); - } - else - { - grub_free (data); - return grub_error (GRUB_ERR_BAD_DEVICE, "%s cannot get C/H/S values", disk->name); - } - } - - if (data->sectors == 0) - data->sectors = 63; - if (data->heads == 0) - data->heads = 255; - - if (! total_sectors) - total_sectors = ((grub_uint64_t) data->cylinders) - * data->heads * data->sectors; - } - - disk->total_sectors = total_sectors; - /* Limit the max to 0x7f because of Phoenix EDD. */ - disk->max_agglomerate = 0x7f >> GRUB_DISK_CACHE_BITS; - COMPILE_TIME_ASSERT ((0x7f >> GRUB_DISK_CACHE_BITS - << (GRUB_DISK_SECTOR_BITS + GRUB_DISK_CACHE_BITS)) - + sizeof (struct grub_biosdisk_dap) - < GRUB_MEMORY_MACHINE_SCRATCH_SIZE); - - disk->data = data; - - return GRUB_ERR_NONE; -} - -static void -grub_biosdisk_close (grub_disk_t disk) -{ - grub_free (disk->data); -} - -/* For readability. */ -#define GRUB_BIOSDISK_READ 0 -#define GRUB_BIOSDISK_WRITE 1 - -#define GRUB_BIOSDISK_CDROM_RETRY_COUNT 3 - -static grub_err_t -grub_biosdisk_rw (int cmd, grub_disk_t disk, - grub_disk_addr_t sector, grub_size_t size, - unsigned segment) -{ - struct grub_biosdisk_data *data = disk->data; - - /* VirtualBox fails with sectors above 2T on CDs. - Since even BD-ROMS are never that big anyway, return error. */ - if ((data->flags & GRUB_BIOSDISK_FLAG_CDROM) - && (sector >> 32)) - return grub_error (GRUB_ERR_OUT_OF_RANGE, - N_("attempt to read or write outside of disk `%s'"), - disk->name); - - if (data->flags & GRUB_BIOSDISK_FLAG_LBA) - { - struct grub_biosdisk_dap *dap; - - dap = (struct grub_biosdisk_dap *) (GRUB_MEMORY_MACHINE_SCRATCH_ADDR - + (data->sectors - << disk->log_sector_size)); - dap->length = sizeof (*dap); - dap->reserved = 0; - dap->blocks = size; - dap->buffer = segment << 16; /* The format SEGMENT:ADDRESS. */ - dap->block = sector; - - if (data->flags & GRUB_BIOSDISK_FLAG_CDROM) - { - int i; - - if (cmd) - return grub_error (GRUB_ERR_WRITE_ERROR, N_("cannot write to CD-ROM")); - - for (i = 0; i < GRUB_BIOSDISK_CDROM_RETRY_COUNT; i++) - if (! grub_biosdisk_rw_int13_extensions (0x42, data->drive, dap)) - break; - - if (i == GRUB_BIOSDISK_CDROM_RETRY_COUNT) - return grub_error (GRUB_ERR_READ_ERROR, N_("failure reading sector 0x%llx " - "from `%s'"), - (unsigned long long) sector, - disk->name); - } - else - if (grub_biosdisk_rw_int13_extensions (cmd + 0x42, data->drive, dap)) - { - /* Fall back to the CHS mode. */ - data->flags &= ~GRUB_BIOSDISK_FLAG_LBA; - disk->total_sectors = data->cylinders * data->heads * data->sectors; - return grub_biosdisk_rw (cmd, disk, sector, size, segment); - } - } - else - { - unsigned coff, hoff, soff; - unsigned head; - - /* It is impossible to reach over 8064 MiB (a bit less than LBA24) with - the traditional CHS access. */ - if (sector > - 1024 /* cylinders */ * - 256 /* heads */ * - 63 /* spt */) - return grub_error (GRUB_ERR_OUT_OF_RANGE, - N_("attempt to read or write outside of disk `%s'"), - disk->name); - - soff = ((grub_uint32_t) sector) % data->sectors + 1; - head = ((grub_uint32_t) sector) / data->sectors; - hoff = head % data->heads; - coff = head / data->heads; - - if (coff >= data->cylinders) - return grub_error (GRUB_ERR_OUT_OF_RANGE, - N_("attempt to read or write outside of disk `%s'"), - disk->name); - - if (grub_biosdisk_rw_standard (cmd + 0x02, data->drive, - coff, hoff, soff, size, segment)) - { - switch (cmd) - { - case GRUB_BIOSDISK_READ: - return grub_error (GRUB_ERR_READ_ERROR, N_("failure reading sector 0x%llx " - "from `%s'"), - (unsigned long long) sector, - disk->name); - case GRUB_BIOSDISK_WRITE: - return grub_error (GRUB_ERR_WRITE_ERROR, N_("failure writing sector 0x%llx " - "to `%s'"), - (unsigned long long) sector, - disk->name); - } - } - } - - return GRUB_ERR_NONE; -} - -/* Return the number of sectors which can be read safely at a time. */ -static grub_size_t -get_safe_sectors (grub_disk_t disk, grub_disk_addr_t sector) -{ - grub_size_t size; - grub_uint64_t offset; - struct grub_biosdisk_data *data = disk->data; - grub_uint32_t sectors = data->sectors; - - /* OFFSET = SECTOR % SECTORS */ - grub_divmod64 (sector, sectors, &offset); - - size = sectors - offset; - - return size; -} - -static grub_err_t -grub_biosdisk_read (grub_disk_t disk, grub_disk_addr_t sector, - grub_size_t size, char *buf) -{ - while (size) - { - grub_size_t len; - - len = get_safe_sectors (disk, sector); - - if (len > size) - len = size; - - if (grub_biosdisk_rw (GRUB_BIOSDISK_READ, disk, sector, len, - GRUB_MEMORY_MACHINE_SCRATCH_SEG)) - return grub_errno; - - grub_memcpy (buf, (void *) GRUB_MEMORY_MACHINE_SCRATCH_ADDR, - len << disk->log_sector_size); - - buf += len << disk->log_sector_size; - sector += len; - size -= len; - } - - return grub_errno; -} - -static grub_err_t -grub_biosdisk_write (grub_disk_t disk, grub_disk_addr_t sector, - grub_size_t size, const char *buf) -{ - struct grub_biosdisk_data *data = disk->data; - - if (data->flags & GRUB_BIOSDISK_FLAG_CDROM) - return grub_error (GRUB_ERR_IO, N_("cannot write to CD-ROM")); - - while (size) - { - grub_size_t len; - - len = get_safe_sectors (disk, sector); - if (len > size) - len = size; - - grub_memcpy ((void *) GRUB_MEMORY_MACHINE_SCRATCH_ADDR, buf, - len << disk->log_sector_size); - - if (grub_biosdisk_rw (GRUB_BIOSDISK_WRITE, disk, sector, len, - GRUB_MEMORY_MACHINE_SCRATCH_SEG)) - return grub_errno; - - buf += len << disk->log_sector_size; - sector += len; - size -= len; - } - - return grub_errno; -} - -static struct grub_disk_dev grub_biosdisk_dev = - { - .name = "biosdisk", - .id = GRUB_DISK_DEVICE_BIOSDISK_ID, - .disk_iterate = grub_biosdisk_iterate, - .disk_open = grub_biosdisk_open, - .disk_close = grub_biosdisk_close, - .disk_read = grub_biosdisk_read, - .disk_write = grub_biosdisk_write, - .next = 0 - }; - -static void -grub_disk_biosdisk_fini (void) -{ - grub_disk_dev_unregister (&grub_biosdisk_dev); -} - -GRUB_MOD_INIT(biosdisk) -{ - struct grub_biosdisk_cdrp *cdrp - = (struct grub_biosdisk_cdrp *) GRUB_MEMORY_MACHINE_SCRATCH_ADDR; - grub_uint8_t boot_drive; - - if (grub_disk_firmware_is_tainted) - { - grub_puts_ (N_("Native disk drivers are in use. " - "Refusing to use firmware disk interface.")); - return; - } - grub_disk_firmware_fini = grub_disk_biosdisk_fini; - - grub_memset (cdrp, 0, sizeof (*cdrp)); - cdrp->size = sizeof (*cdrp); - cdrp->media_type = 0xFF; - boot_drive = (grub_boot_device >> 24); - if ((! grub_biosdisk_get_cdinfo_int13_extensions (boot_drive, cdrp)) - && ((cdrp->media_type & GRUB_BIOSDISK_CDTYPE_MASK) - == GRUB_BIOSDISK_CDTYPE_NO_EMUL)) - cd_drive = cdrp->drive_no; - /* Since diskboot.S rejects devices over 0x90 it must be a CD booted with - cdboot.S - */ - if (boot_drive >= 0x90) - cd_drive = boot_drive; - - grub_disk_dev_register (&grub_biosdisk_dev); -} - -GRUB_MOD_FINI(biosdisk) -{ - grub_disk_biosdisk_fini (); -} diff --git a/thirdparty/grub-2.04/grub-core/disk/ieee1275/nand.c b/thirdparty/grub-2.04/grub-core/disk/ieee1275/nand.c deleted file mode 100644 index bcf3a06f4..000000000 --- a/thirdparty/grub-2.04/grub-core/disk/ieee1275/nand.c +++ /dev/null @@ -1,242 +0,0 @@ -/* nand.c - NAND flash disk access. */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2008,2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -struct grub_nand_data -{ - grub_ieee1275_ihandle_t handle; - grub_uint32_t block_size; -}; - -static int -grub_nand_iterate (grub_disk_dev_iterate_hook_t hook, void *hook_data, - grub_disk_pull_t pull) -{ - static int have_nand = -1; - - if (pull != GRUB_DISK_PULL_NONE) - return 0; - - if (have_nand == -1) - { - struct grub_ieee1275_devalias alias; - - have_nand = 0; - FOR_IEEE1275_DEVALIASES(alias) - if (grub_strcmp (alias.name, "nand") == 0) - { - have_nand = 1; - break; - } - grub_ieee1275_devalias_free (&alias); - } - - if (have_nand) - return hook ("nand", hook_data); - - return 0; -} - -static grub_err_t -grub_nand_read (grub_disk_t disk, grub_disk_addr_t sector, - grub_size_t size, char *buf); - -static grub_err_t -grub_nand_open (const char *name, grub_disk_t disk) -{ - grub_ieee1275_ihandle_t dev_ihandle = 0; - struct grub_nand_data *data = 0; - const char *devname; - struct size_args - { - struct grub_ieee1275_common_hdr common; - grub_ieee1275_cell_t method; - grub_ieee1275_cell_t ihandle; - grub_ieee1275_cell_t result; - grub_ieee1275_cell_t size1; - grub_ieee1275_cell_t size2; - } args; - - if (grub_memcmp (name, "nand/", sizeof ("nand/") - 1) == 0) - devname = name + sizeof ("nand/") - 1; - else if (grub_strcmp (name, "nand") == 0) - devname = name; - else - return grub_error (GRUB_ERR_UNKNOWN_DEVICE, "not a NAND device"); - - data = grub_malloc (sizeof (*data)); - if (! data) - goto fail; - - grub_ieee1275_open (devname, &dev_ihandle); - if (! dev_ihandle) - { - grub_error (GRUB_ERR_UNKNOWN_DEVICE, "can't open device"); - goto fail; - } - - data->handle = dev_ihandle; - - INIT_IEEE1275_COMMON (&args.common, "call-method", 2, 2); - args.method = (grub_ieee1275_cell_t) "block-size"; - args.ihandle = dev_ihandle; - args.result = 1; - - if ((IEEE1275_CALL_ENTRY_FN (&args) == -1) || (args.result)) - { - grub_error (GRUB_ERR_UNKNOWN_DEVICE, "can't get block size"); - goto fail; - } - - data->block_size = (args.size1 >> GRUB_DISK_SECTOR_BITS); - if (!data->block_size) - { - grub_error (GRUB_ERR_UNKNOWN_DEVICE, "invalid block size"); - goto fail; - } - - INIT_IEEE1275_COMMON (&args.common, "call-method", 2, 3); - args.method = (grub_ieee1275_cell_t) "size"; - args.ihandle = dev_ihandle; - args.result = 1; - - if ((IEEE1275_CALL_ENTRY_FN (&args) == -1) || (args.result)) - { - grub_error (GRUB_ERR_UNKNOWN_DEVICE, "can't get disk size"); - goto fail; - } - - disk->total_sectors = args.size1; - disk->total_sectors <<= 32; - disk->total_sectors += args.size2; - disk->total_sectors >>= GRUB_DISK_SECTOR_BITS; - - disk->id = dev_ihandle; - - disk->data = data; - - return 0; - -fail: - if (dev_ihandle) - grub_ieee1275_close (dev_ihandle); - grub_free (data); - return grub_errno; -} - -static void -grub_nand_close (grub_disk_t disk) -{ - grub_ieee1275_close (((struct grub_nand_data *) disk->data)->handle); - grub_free (disk->data); -} - -static grub_err_t -grub_nand_read (grub_disk_t disk, grub_disk_addr_t sector, - grub_size_t size, char *buf) -{ - struct grub_nand_data *data = disk->data; - grub_size_t bsize, ofs; - - struct read_args - { - struct grub_ieee1275_common_hdr common; - grub_ieee1275_cell_t method; - grub_ieee1275_cell_t ihandle; - grub_ieee1275_cell_t ofs; - grub_ieee1275_cell_t page; - grub_ieee1275_cell_t len; - grub_ieee1275_cell_t buf; - grub_ieee1275_cell_t result; - } args; - - INIT_IEEE1275_COMMON (&args.common, "call-method", 6, 1); - args.method = (grub_ieee1275_cell_t) "pio-read"; - args.ihandle = data->handle; - args.buf = (grub_ieee1275_cell_t) buf; - args.page = (grub_ieee1275_cell_t) ((grub_size_t) sector / data->block_size); - - ofs = ((grub_size_t) sector % data->block_size) << GRUB_DISK_SECTOR_BITS; - size <<= GRUB_DISK_SECTOR_BITS; - bsize = (data->block_size << GRUB_DISK_SECTOR_BITS); - - do - { - grub_size_t len; - - len = (ofs + size > bsize) ? (bsize - ofs) : size; - - args.len = (grub_ieee1275_cell_t) len; - args.ofs = (grub_ieee1275_cell_t) ofs; - args.result = 1; - - if ((IEEE1275_CALL_ENTRY_FN (&args) == -1) || (args.result)) - return grub_error (GRUB_ERR_READ_ERROR, N_("failure reading sector 0x%llx " - "from `%s'"), - (unsigned long long) sector, - disk->name); - - ofs = 0; - size -= len; - args.buf += len; - args.page++; - } while (size); - - return GRUB_ERR_NONE; -} - -static grub_err_t -grub_nand_write (grub_disk_t disk __attribute ((unused)), - grub_disk_addr_t sector __attribute ((unused)), - grub_size_t size __attribute ((unused)), - const char *buf __attribute ((unused))) -{ - return grub_error (GRUB_ERR_NOT_IMPLEMENTED_YET, - "nand write is not supported"); -} - -static struct grub_disk_dev grub_nand_dev = - { - .name = "nand", - .id = GRUB_DISK_DEVICE_NAND_ID, - .disk_iterate = grub_nand_iterate, - .disk_open = grub_nand_open, - .disk_close = grub_nand_close, - .disk_read = grub_nand_read, - .disk_write = grub_nand_write, - .next = 0 - }; - -GRUB_MOD_INIT(nand) -{ - grub_disk_dev_register (&grub_nand_dev); -} - -GRUB_MOD_FINI(nand) -{ - grub_disk_dev_unregister (&grub_nand_dev); -} diff --git a/thirdparty/grub-2.04/grub-core/disk/ieee1275/obdisk.c b/thirdparty/grub-2.04/grub-core/disk/ieee1275/obdisk.c deleted file mode 100644 index ec413c3fd..000000000 --- a/thirdparty/grub-2.04/grub-core/disk/ieee1275/obdisk.c +++ /dev/null @@ -1,1076 +0,0 @@ -/* obdisk.c - Open Boot disk access. */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2019 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#define IEEE1275_DEV "ieee1275/" -#define IEEE1275_DISK_ALIAS "/disk@" - -struct disk_dev -{ - struct disk_dev *next; - struct disk_dev **prev; - char *name; - char *raw_name; - char *grub_devpath; - char *grub_alias_devpath; - grub_ieee1275_ihandle_t ihandle; - grub_uint32_t block_size; - grub_uint64_t num_blocks; - unsigned int log_sector_size; - grub_uint32_t opened; - grub_uint32_t valid; - grub_uint32_t boot_dev; -}; - -struct parent_dev -{ - struct parent_dev *next; - struct parent_dev **prev; - char *name; - char *type; - grub_ieee1275_ihandle_t ihandle; - grub_uint32_t address_cells; -}; - -static struct grub_scsi_test_unit_ready tur = -{ - .opcode = grub_scsi_cmd_test_unit_ready, - .lun = 0, - .reserved1 = 0, - .reserved2 = 0, - .reserved3 = 0, - .control = 0, -}; - -static int disks_enumerated; -static struct disk_dev *disk_devs; -static struct parent_dev *parent_devs; - -static const char *block_blacklist[] = { - /* Requires additional work in grub before being able to be used. */ - "/iscsi-hba", - /* This block device should never be used by grub. */ - "/reboot-memory@0", - 0 -}; - -#define STRCMP(a, b) ((a) && (b) && (grub_strcmp (a, b) == 0)) - -static char * -strip_ob_partition (char *path) -{ - char *sptr; - - sptr = grub_strstr (path, ":"); - - if (sptr != NULL) - *sptr = '\0'; - - return path; -} - -static void -escape_commas (const char *src, char *dest) -{ - const char *iptr; - - for (iptr = src; *iptr; ) - { - if (*iptr == ',') - *dest++ ='\\'; - - *dest++ = *iptr++; - } - - *dest = '\0'; -} - -static int -count_commas (const char *src) -{ - int count = 0; - - for ( ; *src; src++) - if (*src == ',') - count++; - - return count; -} - - -static char * -decode_grub_devname (const char *name) -{ - char *devpath = grub_malloc (grub_strlen (name) + 1); - char *p, c; - - if (devpath == NULL) - return NULL; - - /* Un-escape commas. */ - p = devpath; - while ((c = *name++) != '\0') - { - if (c == '\\' && *name == ',') - { - *p++ = ','; - name++; - } - else - *p++ = c; - } - - *p++ = '\0'; - - return devpath; -} - -static char * -encode_grub_devname (const char *path) -{ - char *encoding, *optr; - - if (path == NULL) - return NULL; - - encoding = grub_malloc (sizeof (IEEE1275_DEV) + count_commas (path) + - grub_strlen (path) + 1); - - if (encoding == NULL) - { - grub_print_error (); - return NULL; - } - - optr = grub_stpcpy (encoding, IEEE1275_DEV); - escape_commas (path, optr); - return encoding; -} - -static char * -get_parent_devname (const char *devname) -{ - char *parent, *pptr; - - parent = grub_strdup (devname); - - if (parent == NULL) - { - grub_print_error (); - return NULL; - } - - pptr = grub_strstr (parent, IEEE1275_DISK_ALIAS); - - if (pptr != NULL) - *pptr = '\0'; - - return parent; -} - -static void -free_parent_dev (struct parent_dev *parent) -{ - if (parent != NULL) - { - grub_free (parent->name); - grub_free (parent->type); - grub_free (parent); - } -} - -static struct parent_dev * -init_parent (const char *parent) -{ - struct parent_dev *op; - - op = grub_zalloc (sizeof (struct parent_dev)); - - if (op == NULL) - { - grub_print_error (); - return NULL; - } - - op->name = grub_strdup (parent); - op->type = grub_malloc (IEEE1275_MAX_PROP_LEN); - - if ((op->name == NULL) || (op->type == NULL)) - { - grub_print_error (); - free_parent_dev (op); - return NULL; - } - - return op; -} - -static struct parent_dev * -open_new_parent (const char *parent) -{ - struct parent_dev *op = init_parent(parent); - grub_ieee1275_ihandle_t ihandle; - grub_ieee1275_phandle_t phandle; - grub_uint32_t address_cells = 2; - - if (op == NULL) - return NULL; - - grub_ieee1275_open (parent, &ihandle); - - if (ihandle == 0) - { - grub_error (GRUB_ERR_BAD_DEVICE, "unable to open %s", parent); - grub_print_error (); - free_parent_dev (op); - return NULL; - } - - if (grub_ieee1275_instance_to_package (ihandle, &phandle)) - { - grub_error (GRUB_ERR_BAD_DEVICE, "unable to get parent %s", parent); - grub_print_error (); - free_parent_dev (op); - return NULL; - } - - /* - * IEEE Std 1275-1994 page 110: A missing "address-cells" property - * signifies that the number of address cells is two. So ignore on error. - */ - if (grub_ieee1275_get_integer_property (phandle, "#address-cells", - &address_cells, - sizeof (address_cells), 0) != 0) - address_cells = 2; - - grub_ieee1275_get_property (phandle, "device_type", op->type, - IEEE1275_MAX_PROP_LEN, NULL); - - op->ihandle = ihandle; - op->address_cells = address_cells; - return op; -} - -static struct parent_dev * -open_parent (const char *parent) -{ - struct parent_dev *op; - - op = grub_named_list_find (GRUB_AS_NAMED_LIST (parent_devs), parent); - - if (op == NULL) - { - op = open_new_parent (parent); - - if (op != NULL) - grub_list_push (GRUB_AS_LIST_P (&parent_devs), GRUB_AS_LIST (op)); - } - - return op; -} - -static void -display_parents (void) -{ - struct parent_dev *parent; - - grub_printf ("-------------------- PARENTS --------------------\n"); - - FOR_LIST_ELEMENTS (parent, parent_devs) - { - grub_printf ("name: %s\n", parent->name); - grub_printf ("type: %s\n", parent->type); - grub_printf ("address_cells %x\n", parent->address_cells); - } - - grub_printf ("-------------------------------------------------\n"); -} - -static char * -canonicalise_4cell_ua (grub_ieee1275_ihandle_t ihandle, char *unit_address) -{ - grub_uint32_t phy_lo, phy_hi, lun_lo, lun_hi; - int valid_phy = 0; - grub_size_t size; - char *canon = NULL; - - valid_phy = grub_ieee1275_decode_unit4 (ihandle, unit_address, - grub_strlen (unit_address), &phy_lo, - &phy_hi, &lun_lo, &lun_hi); - - if ((valid_phy == 0) && (phy_hi != 0xffffffff)) - canon = grub_ieee1275_encode_uint4 (ihandle, phy_lo, phy_hi, - lun_lo, lun_hi, &size); - - return canon; -} - -static char * -canonicalise_disk (const char *devname) -{ - char *canon, *parent; - struct parent_dev *op; - - canon = grub_ieee1275_canonicalise_devname (devname); - - if (canon == NULL) - { - /* This should not happen. */ - grub_error (GRUB_ERR_BAD_DEVICE, "canonicalise devname failed"); - grub_print_error (); - return NULL; - } - - /* Don't try to open the parent of a virtual device. */ - if (grub_strstr (canon, "virtual-devices")) - return canon; - - parent = get_parent_devname (canon); - - if (parent == NULL) - return NULL; - - op = open_parent (parent); - - /* - * Devices with 4 address cells can have many different types of addressing - * (phy, wwn, and target lun). Use the parents encode-unit / decode-unit - * to find the true canonical name. - */ - if ((op) && (op->address_cells == 4)) - { - char *unit_address, *real_unit_address, *real_canon; - grub_size_t real_unit_str_len; - - unit_address = grub_strstr (canon, IEEE1275_DISK_ALIAS); - unit_address += grub_strlen (IEEE1275_DISK_ALIAS); - - if (unit_address == NULL) - { - /* - * This should not be possible, but return the canonical name for - * the non-disk block device. - */ - grub_free (parent); - return (canon); - } - - real_unit_address = canonicalise_4cell_ua (op->ihandle, unit_address); - - if (real_unit_address == NULL) - { - /* - * This is not an error, since this function could be called with a devalias - * containing a drive that isn't installed in the system. - */ - grub_free (parent); - return NULL; - } - - real_unit_str_len = grub_strlen (op->name) + sizeof (IEEE1275_DISK_ALIAS) - + grub_strlen (real_unit_address); - - real_canon = grub_malloc (real_unit_str_len); - - grub_snprintf (real_canon, real_unit_str_len, "%s/disk@%s", - op->name, real_unit_address); - - grub_free (canon); - canon = real_canon; - } - - grub_free (parent); - return (canon); -} - -static struct disk_dev * -add_canon_disk (const char *cname) -{ - struct disk_dev *dev; - - dev = grub_zalloc (sizeof (struct disk_dev)); - - if (dev == NULL) - goto failed; - - if (grub_ieee1275_test_flag (GRUB_IEEE1275_FLAG_RAW_DEVNAMES)) - { - /* - * Append :nolabel to the end of all SPARC disks. - * nolabel is mutually exclusive with all other - * arguments and allows a client program to open - * the entire (raw) disk. Any disk label is ignored. - */ - dev->raw_name = grub_malloc (grub_strlen (cname) + sizeof (":nolabel")); - - if (dev->raw_name == NULL) - goto failed; - - grub_snprintf (dev->raw_name, grub_strlen (cname) + sizeof (":nolabel"), - "%s:nolabel", cname); - } - - /* - * Don't use grub_ieee1275_encode_devname here, the devpath in grub.cfg doesn't - * understand device aliases, which the layer above sometimes sends us. - */ - dev->grub_devpath = encode_grub_devname(cname); - - if (dev->grub_devpath == NULL) - goto failed; - - dev->name = grub_strdup (cname); - - if (dev->name == NULL) - goto failed; - - dev->valid = 1; - grub_list_push (GRUB_AS_LIST_P (&disk_devs), GRUB_AS_LIST (dev)); - return dev; - - failed: - grub_print_error (); - - if (dev != NULL) - { - grub_free (dev->name); - grub_free (dev->grub_devpath); - grub_free (dev->raw_name); - } - - grub_free (dev); - return NULL; -} - -static grub_err_t -add_disk (const char *path) -{ - grub_err_t ret = GRUB_ERR_NONE; - struct disk_dev *dev; - char *canon; - - canon = canonicalise_disk (path); - dev = grub_named_list_find (GRUB_AS_NAMED_LIST (disk_devs), canon); - - if ((canon != NULL) && (dev == NULL)) - { - struct disk_dev *ob_device; - - ob_device = add_canon_disk (canon); - - if (ob_device == NULL) - ret = grub_error (GRUB_ERR_OUT_OF_MEMORY, "failure to add disk"); - } - else if (dev != NULL) - dev->valid = 1; - - grub_free (canon); - return (ret); -} - -static grub_err_t -grub_obdisk_read (grub_disk_t disk, grub_disk_addr_t sector, - grub_size_t size, char *dest) -{ - grub_err_t ret = GRUB_ERR_NONE; - struct disk_dev *dev; - unsigned long long pos; - grub_ssize_t result = 0; - - if (disk->data == NULL) - return grub_error (GRUB_ERR_BAD_DEVICE, "invalid disk data"); - - dev = (struct disk_dev *)disk->data; - pos = sector << disk->log_sector_size; - grub_ieee1275_seek (dev->ihandle, pos, &result); - - if (result < 0) - { - dev->opened = 0; - return grub_error (GRUB_ERR_READ_ERROR, "seek error, can't seek block %llu", - (long long) sector); - } - - grub_ieee1275_read (dev->ihandle, dest, size << disk->log_sector_size, - &result); - - if (result != (grub_ssize_t) (size << disk->log_sector_size)) - { - dev->opened = 0; - return grub_error (GRUB_ERR_READ_ERROR, N_("failure reading sector 0x%llx " - "from `%s'"), - (unsigned long long) sector, - disk->name); - } - return ret; -} - -static void -grub_obdisk_close (grub_disk_t disk) -{ - grub_memset (disk, 0, sizeof (*disk)); -} - -static void -scan_usb_disk (const char *parent) -{ - struct parent_dev *op; - grub_ssize_t result; - - op = open_parent (parent); - - if (op == NULL) - { - grub_error (GRUB_ERR_BAD_DEVICE, "unable to open %s", parent); - grub_print_error (); - return; - } - - if ((grub_ieee1275_set_address (op->ihandle, 0, 0) == 0) && - (grub_ieee1275_no_data_command (op->ihandle, &tur, &result) == 0) && - (result == 0)) - { - char *buf; - - buf = grub_malloc (IEEE1275_MAX_PATH_LEN); - - if (buf == NULL) - { - grub_error (GRUB_ERR_OUT_OF_MEMORY, "disk scan failure"); - grub_print_error (); - return; - } - - grub_snprintf (buf, IEEE1275_MAX_PATH_LEN, "%s/disk@0", parent); - add_disk (buf); - grub_free (buf); - } -} - -static void -scan_nvme_disk (const char *path) -{ - char *buf; - - buf = grub_malloc (IEEE1275_MAX_PATH_LEN); - - if (buf == NULL) - { - grub_error (GRUB_ERR_OUT_OF_MEMORY, "disk scan failure"); - grub_print_error (); - return; - } - - grub_snprintf (buf, IEEE1275_MAX_PATH_LEN, "%s/disk@1", path); - add_disk (buf); - grub_free (buf); -} - -static void -scan_sparc_sas_2cell (struct parent_dev *op) -{ - grub_ssize_t result; - grub_uint8_t tgt; - char *buf; - - buf = grub_malloc (IEEE1275_MAX_PATH_LEN); - - if (buf == NULL) - { - grub_error (GRUB_ERR_OUT_OF_MEMORY, "disk scan failure"); - grub_print_error (); - return; - } - - for (tgt = 0; tgt < 0xf; tgt++) - { - - if ((grub_ieee1275_set_address(op->ihandle, tgt, 0) == 0) && - (grub_ieee1275_no_data_command (op->ihandle, &tur, &result) == 0) && - (result == 0)) - { - - grub_snprintf (buf, IEEE1275_MAX_PATH_LEN, "%s/disk@%" - PRIxGRUB_UINT32_T, op->name, tgt); - - add_disk (buf); - } - } -} - -static void -scan_sparc_sas_4cell (struct parent_dev *op) -{ - grub_uint16_t exp; - grub_uint8_t phy; - char *buf; - - buf = grub_malloc (IEEE1275_MAX_PATH_LEN); - - if (buf == NULL) - { - grub_error (GRUB_ERR_OUT_OF_MEMORY, "disk scan failure"); - grub_print_error (); - return; - } - - /* - * Cycle thru the potential for dual ported SAS disks - * behind a SAS expander. - */ - for (exp = 0; exp <= 0x100; exp+=0x100) - - /* The current limit is 32 disks on a phy. */ - for (phy = 0; phy < 0x20; phy++) - { - char *canon = NULL; - - grub_snprintf (buf, IEEE1275_MAX_PATH_LEN, "p%" PRIxGRUB_UINT32_T ",0", - exp | phy); - - canon = canonicalise_4cell_ua (op->ihandle, buf); - - if (canon != NULL) - { - grub_snprintf (buf, IEEE1275_MAX_PATH_LEN, "%s/disk@%s", - op->name, canon); - - add_disk (buf); - grub_free (canon); - } - } - - grub_free (buf); -} - -static void -scan_sparc_sas_disk (const char *parent) -{ - struct parent_dev *op; - - op = open_parent (parent); - - if ((op != NULL) && (op->address_cells == 4)) - scan_sparc_sas_4cell (op); - else if ((op != NULL) && (op->address_cells == 2)) - scan_sparc_sas_2cell (op); -} - -static void -iterate_devtree (const struct grub_ieee1275_devalias *alias) -{ - struct grub_ieee1275_devalias child; - - if ((grub_strcmp (alias->type, "scsi-2") == 0) || - (grub_strcmp (alias->type, "scsi-sas") == 0)) - return scan_sparc_sas_disk (alias->path); - - else if (grub_strcmp (alias->type, "nvme") == 0) - return scan_nvme_disk (alias->path); - - else if (grub_strcmp (alias->type, "scsi-usb") == 0) - return scan_usb_disk (alias->path); - - else if (grub_strcmp (alias->type, "block") == 0) - { - const char **bl = block_blacklist; - - while (*bl != NULL) - { - if (grub_strstr (alias->path, *bl)) - return; - bl++; - } - - add_disk (alias->path); - return; - } - - FOR_IEEE1275_DEVCHILDREN (alias->path, child) - iterate_devtree (&child); -} - -static void -enumerate_disks (void) -{ - struct grub_ieee1275_devalias alias; - - FOR_IEEE1275_DEVCHILDREN("/", alias) - iterate_devtree (&alias); -} - -static grub_err_t -add_bootpath (void) -{ - struct disk_dev *ob_device; - grub_err_t ret = GRUB_ERR_NONE; - char *dev, *alias; - char *type; - - dev = grub_ieee1275_get_boot_dev (); - - if (dev == NULL) - return grub_error (GRUB_ERR_OUT_OF_MEMORY, "failure adding boot device"); - - type = grub_ieee1275_get_device_type (dev); - - if (type == NULL) - { - grub_free (dev); - return grub_error (GRUB_ERR_OUT_OF_MEMORY, "failure adding boot device"); - } - - alias = NULL; - - if (grub_strcmp (type, "network") != 0) - { - dev = strip_ob_partition (dev); - ob_device = add_canon_disk (dev); - - if (ob_device == NULL) - ret = grub_error (GRUB_ERR_OUT_OF_MEMORY, "failure adding boot device"); - - ob_device->valid = 1; - - alias = grub_ieee1275_get_devname (dev); - - if (alias && grub_strcmp (alias, dev) != 0) - ob_device->grub_alias_devpath = grub_ieee1275_encode_devname (dev); - - ob_device->boot_dev = 1; - } - - grub_free (type); - grub_free (dev); - grub_free (alias); - return ret; -} - -static void -enumerate_aliases (void) -{ - struct grub_ieee1275_devalias alias; - - /* - * Some block device aliases are not in canonical form - * - * For example: - * - * disk3 /pci@301/pci@1/scsi@0/disk@p3 - * disk2 /pci@301/pci@1/scsi@0/disk@p2 - * disk1 /pci@301/pci@1/scsi@0/disk@p1 - * disk /pci@301/pci@1/scsi@0/disk@p0 - * disk0 /pci@301/pci@1/scsi@0/disk@p0 - * - * None of these devices are in canonical form. - * - * Also, just because there is a devalias, doesn't mean there is a disk - * at that location. And a valid boot block device doesn't have to have - * a devalias at all. - * - * At this point, all valid disks have been found in the system - * and devaliases that point to canonical names are stored in the - * disk_devs list already. - */ - FOR_IEEE1275_DEVALIASES (alias) - { - struct disk_dev *dev; - char *canon; - - if (grub_strcmp (alias.type, "block") != 0) - continue; - - canon = canonicalise_disk (alias.name); - - if (canon == NULL) - /* This is not an error, a devalias could point to a nonexistent disk. */ - continue; - - dev = grub_named_list_find (GRUB_AS_NAMED_LIST (disk_devs), canon); - - if (dev != NULL) - { - /* - * If more than one alias points to the same device, - * remove the previous one unless it is the boot dev, - * since the upper level will use the first one. The reason - * all the others are redone is in the case of hot-plugging - * a disk. If the boot disk gets hot-plugged, it will come - * thru here with a different name without the boot_dev flag - * set. - */ - if ((dev->boot_dev) && (dev->grub_alias_devpath)) - continue; - - grub_free (dev->grub_alias_devpath); - dev->grub_alias_devpath = grub_ieee1275_encode_devname (alias.path); - } - grub_free (canon); - } -} - -static void -display_disks (void) -{ - struct disk_dev *dev; - - grub_printf ("--------------------- DISKS ---------------------\n"); - - FOR_LIST_ELEMENTS (dev, disk_devs) - { - grub_printf ("name: %s\n", dev->name); - grub_printf ("grub_devpath: %s\n", dev->grub_devpath); - grub_printf ("grub_alias_devpath: %s\n", dev->grub_alias_devpath); - grub_printf ("valid: %s\n", (dev->valid) ? "yes" : "no"); - grub_printf ("boot_dev: %s\n", (dev->boot_dev) ? "yes" : "no"); - grub_printf ("opened: %s\n", (dev->ihandle) ? "yes" : "no"); - grub_printf ("block size: %" PRIuGRUB_UINT32_T "\n", - dev->block_size); - grub_printf ("num blocks: %" PRIuGRUB_UINT64_T "\n", - dev->num_blocks); - grub_printf ("log sector size: %" PRIuGRUB_UINT32_T "\n", - dev->log_sector_size); - grub_printf ("\n"); - } - - grub_printf ("-------------------------------------------------\n"); -} - -static void -display_stats (void) -{ - const char *debug = grub_env_get ("debug"); - - if (debug == NULL) - return; - - if (grub_strword (debug, "all") || grub_strword (debug, "obdisk")) - { - display_parents (); - display_disks (); - } -} - -static void -invalidate_all_disks (void) -{ - struct disk_dev *dev = NULL; - - if (disks_enumerated != 0) - FOR_LIST_ELEMENTS (dev, disk_devs) - dev->valid = 0; -} - -static struct disk_dev * -find_legacy_grub_devpath (const char *name) -{ - struct disk_dev *dev = NULL; - char *canon, *devpath = NULL; - - devpath = decode_grub_devname (name + sizeof ("ieee1275")); - canon = canonicalise_disk (devpath); - - if (canon != NULL) - dev = grub_named_list_find (GRUB_AS_NAMED_LIST (disk_devs), canon); - - grub_free (devpath); - grub_free (canon); - return dev; -} - -static void -enumerate_devices (void) -{ - invalidate_all_disks (); - enumerate_disks (); - enumerate_aliases (); - disks_enumerated = 1; - display_stats (); -} - -static struct disk_dev * -find_grub_devpath_real (const char *name) -{ - struct disk_dev *dev = NULL; - - FOR_LIST_ELEMENTS (dev, disk_devs) - { - if ((STRCMP (dev->grub_devpath, name)) - || (STRCMP (dev->grub_alias_devpath, name))) - break; - } - - return dev; -} - -static struct disk_dev * -find_grub_devpath (const char *name) -{ - struct disk_dev *dev = NULL; - int enumerated; - - do { - enumerated = disks_enumerated; - dev = find_grub_devpath_real (name); - - if (dev != NULL) - break; - - dev = find_legacy_grub_devpath (name); - - if (dev != NULL) - break; - - enumerate_devices (); - } while (enumerated == 0); - - return dev; -} - -static int -grub_obdisk_iterate (grub_disk_dev_iterate_hook_t hook, void *hook_data, - grub_disk_pull_t pull) -{ - struct disk_dev *dev; - const char *name; - - if (pull != GRUB_DISK_PULL_NONE) - return 0; - - enumerate_devices (); - - FOR_LIST_ELEMENTS (dev, disk_devs) - { - if (dev->valid == 1) - { - if (dev->grub_alias_devpath) - name = dev->grub_alias_devpath; - else - name = dev->grub_devpath; - - if (hook (name, hook_data)) - return 1; - } - } - - return 0; -} - -static grub_err_t -grub_obdisk_open (const char *name, grub_disk_t disk) -{ - grub_ieee1275_ihandle_t ihandle = 0; - struct disk_dev *dev = NULL; - - if (grub_strncmp (name, IEEE1275_DEV, sizeof (IEEE1275_DEV) - 1) != 0) - return grub_error (GRUB_ERR_UNKNOWN_DEVICE, "not IEEE1275 device"); - - dev = find_grub_devpath (name); - - if (dev == NULL) - { - grub_printf ("UNKNOWN DEVICE: %s\n", name); - return grub_error (GRUB_ERR_UNKNOWN_DEVICE, "%s", name); - } - - if (dev->opened == 0) - { - if (dev->raw_name != NULL) - grub_ieee1275_open (dev->raw_name, &ihandle); - else - grub_ieee1275_open (dev->name, &ihandle); - - if (ihandle == 0) - { - grub_printf ("Can't open device %s\n", name); - return grub_error (GRUB_ERR_UNKNOWN_DEVICE, "can't open device %s", name); - } - - dev->block_size = grub_ieee1275_get_block_size (ihandle); - dev->num_blocks = grub_ieee1275_num_blocks (ihandle); - - if (dev->num_blocks == 0) - dev->num_blocks = grub_ieee1275_num_blocks64 (ihandle); - - if (dev->num_blocks == 0) - dev->num_blocks = GRUB_DISK_SIZE_UNKNOWN; - - if (dev->block_size != 0) - { - for (dev->log_sector_size = 0; - (1U << dev->log_sector_size) < dev->block_size; - dev->log_sector_size++); - } - else - dev->log_sector_size = 9; - - dev->ihandle = ihandle; - dev->opened = 1; - } - - disk->total_sectors = dev->num_blocks; - disk->id = dev->ihandle; - disk->data = dev; - disk->log_sector_size = dev->log_sector_size; - return GRUB_ERR_NONE; -} - - -static struct grub_disk_dev grub_obdisk_dev = - { - .name = "obdisk", - .id = GRUB_DISK_DEVICE_OBDISK_ID, - .disk_iterate = grub_obdisk_iterate, - .disk_open = grub_obdisk_open, - .disk_close = grub_obdisk_close, - .disk_read = grub_obdisk_read, - }; - -void -grub_obdisk_init (void) -{ - grub_disk_firmware_fini = grub_obdisk_fini; - add_bootpath (); - grub_disk_dev_register (&grub_obdisk_dev); -} - -void -grub_obdisk_fini (void) -{ - struct disk_dev *dev; - - FOR_LIST_ELEMENTS (dev, disk_devs) - { - if (dev->opened != 0) - grub_ieee1275_close (dev->ihandle); - } - - grub_disk_dev_unregister (&grub_obdisk_dev); -} diff --git a/thirdparty/grub-2.04/grub-core/disk/ieee1275/ofdisk.c b/thirdparty/grub-2.04/grub-core/disk/ieee1275/ofdisk.c deleted file mode 100644 index f73257e66..000000000 --- a/thirdparty/grub-2.04/grub-core/disk/ieee1275/ofdisk.c +++ /dev/null @@ -1,741 +0,0 @@ -/* ofdisk.c - Open Firmware disk access. */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2004,2006,2007,2008,2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include - -static char *last_devpath; -static grub_ieee1275_ihandle_t last_ihandle; - -struct ofdisk_hash_ent -{ - char *devpath; - char *open_path; - char *grub_devpath; - int is_boot; - int is_removable; - int block_size_fails; - /* Pointer to shortest available name on nodes representing canonical names, - otherwise NULL. */ - const char *shortest; - const char *grub_shortest; - struct ofdisk_hash_ent *next; -}; - -static grub_err_t -grub_ofdisk_get_block_size (const char *device, grub_uint32_t *block_size, - struct ofdisk_hash_ent *op); - -#define OFDISK_HASH_SZ 8 -static struct ofdisk_hash_ent *ofdisk_hash[OFDISK_HASH_SZ]; - -static int -ofdisk_hash_fn (const char *devpath) -{ - int hash = 0; - while (*devpath) - hash ^= *devpath++; - return (hash & (OFDISK_HASH_SZ - 1)); -} - -static struct ofdisk_hash_ent * -ofdisk_hash_find (const char *devpath) -{ - struct ofdisk_hash_ent *p = ofdisk_hash[ofdisk_hash_fn(devpath)]; - - while (p) - { - if (!grub_strcmp (p->devpath, devpath)) - break; - p = p->next; - } - return p; -} - -static struct ofdisk_hash_ent * -ofdisk_hash_add_real (char *devpath) -{ - struct ofdisk_hash_ent *p; - struct ofdisk_hash_ent **head = &ofdisk_hash[ofdisk_hash_fn(devpath)]; - const char *iptr; - char *optr; - - p = grub_zalloc (sizeof (*p)); - if (!p) - return NULL; - - p->devpath = devpath; - - p->grub_devpath = grub_malloc (sizeof ("ieee1275/") - + 2 * grub_strlen (p->devpath)); - - if (!p->grub_devpath) - { - grub_free (p); - return NULL; - } - - if (! grub_ieee1275_test_flag (GRUB_IEEE1275_FLAG_NO_PARTITION_0)) - { - p->open_path = grub_malloc (grub_strlen (p->devpath) + 3); - if (!p->open_path) - { - grub_free (p->grub_devpath); - grub_free (p); - return NULL; - } - optr = grub_stpcpy (p->open_path, p->devpath); - *optr++ = ':'; - *optr++ = '0'; - *optr = '\0'; - } - else - p->open_path = p->devpath; - - optr = grub_stpcpy (p->grub_devpath, "ieee1275/"); - for (iptr = p->devpath; *iptr; ) - { - if (*iptr == ',') - *optr++ = '\\'; - *optr++ = *iptr++; - } - *optr = 0; - - p->next = *head; - *head = p; - return p; -} - -static int -check_string_removable (const char *str) -{ - const char *ptr = grub_strrchr (str, '/'); - - if (ptr) - ptr++; - else - ptr = str; - return (grub_strncmp (ptr, "cdrom", 5) == 0 || grub_strncmp (ptr, "fd", 2) == 0); -} - -static struct ofdisk_hash_ent * -ofdisk_hash_add (char *devpath, char *curcan) -{ - struct ofdisk_hash_ent *p, *pcan; - - p = ofdisk_hash_add_real (devpath); - - grub_dprintf ("disk", "devpath = %s, canonical = %s\n", devpath, curcan); - - if (!curcan) - { - p->shortest = p->devpath; - p->grub_shortest = p->grub_devpath; - if (check_string_removable (devpath)) - p->is_removable = 1; - return p; - } - - pcan = ofdisk_hash_find (curcan); - if (!pcan) - pcan = ofdisk_hash_add_real (curcan); - else - grub_free (curcan); - - if (check_string_removable (devpath) || check_string_removable (curcan)) - pcan->is_removable = 1; - - if (!pcan) - grub_errno = GRUB_ERR_NONE; - else - { - if (!pcan->shortest - || grub_strlen (pcan->shortest) > grub_strlen (devpath)) - { - pcan->shortest = p->devpath; - pcan->grub_shortest = p->grub_devpath; - } - } - - return p; -} - -static void -dev_iterate_real (const char *name, const char *path) -{ - struct ofdisk_hash_ent *op; - - grub_dprintf ("disk", "disk name = %s, path = %s\n", name, - path); - - op = ofdisk_hash_find (path); - if (!op) - { - char *name_dup = grub_strdup (name); - char *can = grub_strdup (path); - if (!name_dup || !can) - { - grub_errno = GRUB_ERR_NONE; - grub_free (name_dup); - grub_free (can); - return; - } - op = ofdisk_hash_add (name_dup, can); - } - return; -} - -static void -dev_iterate (const struct grub_ieee1275_devalias *alias) -{ - if (grub_strcmp (alias->type, "vscsi") == 0) - { - static grub_ieee1275_ihandle_t ihandle; - struct set_color_args - { - struct grub_ieee1275_common_hdr common; - grub_ieee1275_cell_t method; - grub_ieee1275_cell_t ihandle; - grub_ieee1275_cell_t catch_result; - grub_ieee1275_cell_t nentries; - grub_ieee1275_cell_t table; - } - args; - char *buf, *bufptr; - unsigned i; - - if (grub_ieee1275_open (alias->path, &ihandle)) - return; - - /* This method doesn't need memory allocation for the table. Open - firmware takes care of all memory management and the result table - stays in memory and is never freed. */ - INIT_IEEE1275_COMMON (&args.common, "call-method", 2, 3); - args.method = (grub_ieee1275_cell_t) "vscsi-report-luns"; - args.ihandle = ihandle; - args.table = 0; - args.nentries = 0; - - if (IEEE1275_CALL_ENTRY_FN (&args) == -1 || args.catch_result) - { - grub_ieee1275_close (ihandle); - return; - } - - buf = grub_malloc (grub_strlen (alias->path) + 32); - if (!buf) - return; - bufptr = grub_stpcpy (buf, alias->path); - - for (i = 0; i < args.nentries; i++) - { - grub_uint64_t *ptr; - - ptr = *(grub_uint64_t **) (args.table + 4 + 8 * i); - while (*ptr) - { - grub_snprintf (bufptr, 32, "/disk@%" PRIxGRUB_UINT64_T, *ptr++); - dev_iterate_real (buf, buf); - } - } - grub_ieee1275_close (ihandle); - grub_free (buf); - return; - } - else if (grub_strcmp (alias->type, "sas_ioa") == 0) - { - /* The method returns the number of disks and a table where - * each ID is 64-bit long. Example of sas paths: - * /pci@80000002000001f/pci1014,034A@0/sas/disk@c05db70800 - * /pci@80000002000001f/pci1014,034A@0/sas/disk@a05db70800 - * /pci@80000002000001f/pci1014,034A@0/sas/disk@805db70800 */ - - struct sas_children - { - struct grub_ieee1275_common_hdr common; - grub_ieee1275_cell_t method; - grub_ieee1275_cell_t ihandle; - grub_ieee1275_cell_t max; - grub_ieee1275_cell_t table; - grub_ieee1275_cell_t catch_result; - grub_ieee1275_cell_t nentries; - } - args; - char *buf, *bufptr; - unsigned i; - grub_uint64_t *table; - grub_uint16_t table_size; - grub_ieee1275_ihandle_t ihandle; - - buf = grub_malloc (grub_strlen (alias->path) + - sizeof ("/disk@7766554433221100")); - if (!buf) - return; - bufptr = grub_stpcpy (buf, alias->path); - - /* Power machines documentation specify 672 as maximum SAS disks in - one system. Using a slightly larger value to be safe. */ - table_size = 768; - table = grub_malloc (table_size * sizeof (grub_uint64_t)); - - if (!table) - { - grub_free (buf); - return; - } - - if (grub_ieee1275_open (alias->path, &ihandle)) - { - grub_free (buf); - grub_free (table); - return; - } - - INIT_IEEE1275_COMMON (&args.common, "call-method", 4, 2); - args.method = (grub_ieee1275_cell_t) "get-sas-children"; - args.ihandle = ihandle; - args.max = table_size; - args.table = (grub_ieee1275_cell_t) table; - args.catch_result = 0; - args.nentries = 0; - - if (IEEE1275_CALL_ENTRY_FN (&args) == -1) - { - grub_ieee1275_close (ihandle); - grub_free (table); - grub_free (buf); - return; - } - - for (i = 0; i < args.nentries; i++) - { - grub_snprintf (bufptr, sizeof ("/disk@7766554433221100"), - "/disk@%" PRIxGRUB_UINT64_T, table[i]); - dev_iterate_real (buf, buf); - } - - grub_ieee1275_close (ihandle); - grub_free (table); - grub_free (buf); - } - - if (!grub_ieee1275_test_flag (GRUB_IEEE1275_FLAG_NO_TREE_SCANNING_FOR_DISKS) - && grub_strcmp (alias->type, "block") == 0) - { - dev_iterate_real (alias->path, alias->path); - return; - } - - { - struct grub_ieee1275_devalias child; - - FOR_IEEE1275_DEVCHILDREN(alias->path, child) - dev_iterate (&child); - } -} - -static void -scan (void) -{ - struct grub_ieee1275_devalias alias; - FOR_IEEE1275_DEVALIASES(alias) - { - if (grub_strcmp (alias.type, "block") != 0) - continue; - dev_iterate_real (alias.name, alias.path); - } - - FOR_IEEE1275_DEVCHILDREN("/", alias) - dev_iterate (&alias); -} - -static int -grub_ofdisk_iterate (grub_disk_dev_iterate_hook_t hook, void *hook_data, - grub_disk_pull_t pull) -{ - unsigned i; - - if (pull != GRUB_DISK_PULL_NONE) - return 0; - - scan (); - - for (i = 0; i < ARRAY_SIZE (ofdisk_hash); i++) - { - static struct ofdisk_hash_ent *ent; - for (ent = ofdisk_hash[i]; ent; ent = ent->next) - { - if (!ent->shortest) - continue; - if (grub_ieee1275_test_flag (GRUB_IEEE1275_FLAG_OFDISK_SDCARD_ONLY)) - { - grub_ieee1275_phandle_t dev; - char tmp[8]; - - if (grub_ieee1275_finddevice (ent->devpath, &dev)) - { - grub_dprintf ("disk", "finddevice (%s) failed\n", - ent->devpath); - continue; - } - - if (grub_ieee1275_get_property (dev, "iconname", tmp, - sizeof tmp, 0)) - { - grub_dprintf ("disk", "get iconname failed\n"); - continue; - } - - if (grub_strcmp (tmp, "sdmmc") != 0) - { - grub_dprintf ("disk", "device is not an SD card\n"); - continue; - } - } - - if (!ent->is_boot && ent->is_removable) - continue; - - if (hook (ent->grub_shortest, hook_data)) - return 1; - } - } - return 0; -} - -static char * -compute_dev_path (const char *name) -{ - char *devpath = grub_malloc (grub_strlen (name) + 3); - char *p, c; - - if (!devpath) - return NULL; - - /* Un-escape commas. */ - p = devpath; - while ((c = *name++) != '\0') - { - if (c == '\\' && *name == ',') - { - *p++ = ','; - name++; - } - else - *p++ = c; - } - - *p++ = '\0'; - - return devpath; -} - -static grub_err_t -grub_ofdisk_open (const char *name, grub_disk_t disk) -{ - grub_ieee1275_phandle_t dev; - char *devpath; - /* XXX: This should be large enough for any possible case. */ - char prop[64]; - grub_ssize_t actual; - grub_uint32_t block_size = 0; - grub_err_t err; - - if (grub_strncmp (name, "ieee1275/", sizeof ("ieee1275/") - 1) != 0) - return grub_error (GRUB_ERR_UNKNOWN_DEVICE, - "not IEEE1275 device"); - devpath = compute_dev_path (name + sizeof ("ieee1275/") - 1); - if (! devpath) - return grub_errno; - - grub_dprintf ("disk", "Opening `%s'.\n", devpath); - - if (grub_ieee1275_finddevice (devpath, &dev)) - { - grub_free (devpath); - return grub_error (GRUB_ERR_UNKNOWN_DEVICE, - "can't read device properties"); - } - - if (grub_ieee1275_get_property (dev, "device_type", prop, sizeof (prop), - &actual)) - { - grub_free (devpath); - return grub_error (GRUB_ERR_UNKNOWN_DEVICE, "can't read the device type"); - } - - if (grub_strcmp (prop, "block")) - { - grub_free (devpath); - return grub_error (GRUB_ERR_UNKNOWN_DEVICE, "not a block device"); - } - - /* XXX: There is no property to read the number of blocks. There - should be a property `#blocks', but it is not there. Perhaps it - is possible to use seek for this. */ - disk->total_sectors = GRUB_DISK_SIZE_UNKNOWN; - - { - struct ofdisk_hash_ent *op; - op = ofdisk_hash_find (devpath); - if (!op) - op = ofdisk_hash_add (devpath, NULL); - if (!op) - { - grub_free (devpath); - return grub_errno; - } - disk->id = (unsigned long) op; - disk->data = op->open_path; - - err = grub_ofdisk_get_block_size (devpath, &block_size, op); - if (err) - { - grub_free (devpath); - return err; - } - if (block_size != 0) - { - for (disk->log_sector_size = 0; - (1U << disk->log_sector_size) < block_size; - disk->log_sector_size++); - } - else - disk->log_sector_size = 9; - } - - grub_free (devpath); - return 0; -} - -static void -grub_ofdisk_close (grub_disk_t disk) -{ - if (disk->data == last_devpath) - { - if (last_ihandle) - grub_ieee1275_close (last_ihandle); - last_ihandle = 0; - last_devpath = NULL; - } - disk->data = 0; -} - -static grub_err_t -grub_ofdisk_prepare (grub_disk_t disk, grub_disk_addr_t sector) -{ - grub_ssize_t status; - unsigned long long pos; - - if (disk->data != last_devpath) - { - if (last_ihandle) - grub_ieee1275_close (last_ihandle); - last_ihandle = 0; - last_devpath = NULL; - - grub_ieee1275_open (disk->data, &last_ihandle); - if (! last_ihandle) - return grub_error (GRUB_ERR_UNKNOWN_DEVICE, "can't open device"); - last_devpath = disk->data; - } - - pos = sector << disk->log_sector_size; - - grub_ieee1275_seek (last_ihandle, pos, &status); - if (status < 0) - return grub_error (GRUB_ERR_READ_ERROR, - "seek error, can't seek block %llu", - (long long) sector); - return 0; -} - -static grub_err_t -grub_ofdisk_read (grub_disk_t disk, grub_disk_addr_t sector, - grub_size_t size, char *buf) -{ - grub_err_t err; - grub_ssize_t actual; - err = grub_ofdisk_prepare (disk, sector); - if (err) - return err; - grub_ieee1275_read (last_ihandle, buf, size << disk->log_sector_size, - &actual); - if (actual != (grub_ssize_t) (size << disk->log_sector_size)) - return grub_error (GRUB_ERR_READ_ERROR, N_("failure reading sector 0x%llx " - "from `%s'"), - (unsigned long long) sector, - disk->name); - - return 0; -} - -static grub_err_t -grub_ofdisk_write (grub_disk_t disk, grub_disk_addr_t sector, - grub_size_t size, const char *buf) -{ - grub_err_t err; - grub_ssize_t actual; - err = grub_ofdisk_prepare (disk, sector); - if (err) - return err; - grub_ieee1275_write (last_ihandle, buf, size << disk->log_sector_size, - &actual); - if (actual != (grub_ssize_t) (size << disk->log_sector_size)) - return grub_error (GRUB_ERR_WRITE_ERROR, N_("failure writing sector 0x%llx " - "to `%s'"), - (unsigned long long) sector, - disk->name); - - return 0; -} - -static struct grub_disk_dev grub_ofdisk_dev = - { - .name = "ofdisk", - .id = GRUB_DISK_DEVICE_OFDISK_ID, - .disk_iterate = grub_ofdisk_iterate, - .disk_open = grub_ofdisk_open, - .disk_close = grub_ofdisk_close, - .disk_read = grub_ofdisk_read, - .disk_write = grub_ofdisk_write, - .next = 0 - }; - -static void -insert_bootpath (void) -{ - char *bootpath; - grub_ssize_t bootpath_size; - char *type; - - if (grub_ieee1275_get_property_length (grub_ieee1275_chosen, "bootpath", - &bootpath_size) - || bootpath_size <= 0) - { - /* Should never happen. */ - grub_printf ("/chosen/bootpath property missing!\n"); - return; - } - - bootpath = (char *) grub_malloc ((grub_size_t) bootpath_size + 64); - if (! bootpath) - { - grub_print_error (); - return; - } - grub_ieee1275_get_property (grub_ieee1275_chosen, "bootpath", bootpath, - (grub_size_t) bootpath_size + 1, 0); - bootpath[bootpath_size] = '\0'; - - /* Transform an OF device path to a GRUB path. */ - - type = grub_ieee1275_get_device_type (bootpath); - if (!(type && grub_strcmp (type, "network") == 0)) - { - struct ofdisk_hash_ent *op; - char *device = grub_ieee1275_get_devname (bootpath); - op = ofdisk_hash_add (device, NULL); - op->is_boot = 1; - } - grub_free (type); - grub_free (bootpath); -} - -void -grub_ofdisk_fini (void) -{ - if (last_ihandle) - grub_ieee1275_close (last_ihandle); - last_ihandle = 0; - last_devpath = NULL; - - grub_disk_dev_unregister (&grub_ofdisk_dev); -} - -void -grub_ofdisk_init (void) -{ - grub_disk_firmware_fini = grub_ofdisk_fini; - - insert_bootpath (); - - grub_disk_dev_register (&grub_ofdisk_dev); -} - -static grub_err_t -grub_ofdisk_get_block_size (const char *device, grub_uint32_t *block_size, - struct ofdisk_hash_ent *op) -{ - struct size_args_ieee1275 - { - struct grub_ieee1275_common_hdr common; - grub_ieee1275_cell_t method; - grub_ieee1275_cell_t ihandle; - grub_ieee1275_cell_t result; - grub_ieee1275_cell_t size1; - grub_ieee1275_cell_t size2; - } args_ieee1275; - - if (last_ihandle) - grub_ieee1275_close (last_ihandle); - - last_ihandle = 0; - last_devpath = NULL; - - grub_ieee1275_open (device, &last_ihandle); - if (! last_ihandle) - return grub_error (GRUB_ERR_UNKNOWN_DEVICE, "can't open device"); - - *block_size = 0; - - if (op->block_size_fails >= 2) - return GRUB_ERR_NONE; - - INIT_IEEE1275_COMMON (&args_ieee1275.common, "call-method", 2, 2); - args_ieee1275.method = (grub_ieee1275_cell_t) "block-size"; - args_ieee1275.ihandle = last_ihandle; - args_ieee1275.result = 1; - - if (IEEE1275_CALL_ENTRY_FN (&args_ieee1275) == -1) - { - grub_dprintf ("disk", "can't get block size: failed call-method\n"); - op->block_size_fails++; - } - else if (args_ieee1275.result) - { - grub_dprintf ("disk", "can't get block size: %lld\n", - (long long) args_ieee1275.result); - op->block_size_fails++; - } - else if (args_ieee1275.size1 - && !(args_ieee1275.size1 & (args_ieee1275.size1 - 1)) - && args_ieee1275.size1 >= 512 && args_ieee1275.size1 <= 16384) - { - op->block_size_fails = 0; - *block_size = args_ieee1275.size1; - } - - return 0; -} diff --git a/thirdparty/grub-2.04/grub-core/disk/ldm.c b/thirdparty/grub-2.04/grub-core/disk/ldm.c deleted file mode 100644 index 2a22d2d6c..000000000 --- a/thirdparty/grub-2.04/grub-core/disk/ldm.c +++ /dev/null @@ -1,1052 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2006,2007,2008,2009,2011 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#ifdef GRUB_UTIL -#include -#include -#endif - -GRUB_MOD_LICENSE ("GPLv3+"); - -#define LDM_GUID_STRLEN 64 -#define LDM_NAME_STRLEN 32 - -typedef grub_uint8_t *grub_ldm_id_t; - -enum { STRIPE = 1, SPANNED = 2, RAID5 = 3 }; - -#define LDM_LABEL_SECTOR 6 -struct grub_ldm_vblk { - char magic[4]; - grub_uint8_t unused1[12]; - grub_uint16_t update_status; - grub_uint8_t flags; - grub_uint8_t type; - grub_uint32_t unused2; - grub_uint8_t dynamic[104]; -} GRUB_PACKED; -#define LDM_VBLK_MAGIC "VBLK" - -enum - { - STATUS_CONSISTENT = 0, - STATUS_STILL_ACTIVE = 1, - STATUS_NOT_ACTIVE_YET = 2 - }; - -enum - { - ENTRY_COMPONENT = 0x32, - ENTRY_PARTITION = 0x33, - ENTRY_DISK = 0x34, - ENTRY_VOLUME = 0x51, - }; - -struct grub_ldm_label -{ - char magic[8]; - grub_uint32_t unused1; - grub_uint16_t ver_major; - grub_uint16_t ver_minor; - grub_uint8_t unused2[32]; - char disk_guid[LDM_GUID_STRLEN]; - char host_guid[LDM_GUID_STRLEN]; - char group_guid[LDM_GUID_STRLEN]; - char group_name[LDM_NAME_STRLEN]; - grub_uint8_t unused3[11]; - grub_uint64_t pv_start; - grub_uint64_t pv_size; - grub_uint64_t config_start; - grub_uint64_t config_size; -} GRUB_PACKED; - - -#define LDM_MAGIC "PRIVHEAD" - - - -static inline grub_uint64_t -read_int (grub_uint8_t *in, grub_size_t s) -{ - grub_uint8_t *ptr2; - grub_uint64_t ret; - ret = 0; - for (ptr2 = in; ptr2 < in + s; ptr2++) - { - ret <<= 8; - ret |= *ptr2; - } - return ret; -} - -static int -check_ldm_partition (grub_disk_t disk __attribute__ ((unused)), const grub_partition_t p, void *data) -{ - int *has_ldm = data; - - if (p->number >= 4) - return 1; - if (p->msdostype == GRUB_PC_PARTITION_TYPE_LDM) - { - *has_ldm = 1; - return 1; - } - return 0; -} - -static int -msdos_has_ldm_partition (grub_disk_t dsk) -{ - grub_err_t err; - int has_ldm = 0; - - err = grub_partition_msdos_iterate (dsk, check_ldm_partition, &has_ldm); - if (err) - { - grub_errno = GRUB_ERR_NONE; - return 0; - } - - return has_ldm; -} - -static const grub_gpt_part_guid_t ldm_type = GRUB_GPT_PARTITION_TYPE_LDM; - -/* Helper for gpt_ldm_sector. */ -static int -gpt_ldm_sector_iter (grub_disk_t disk, const grub_partition_t p, void *data) -{ - grub_disk_addr_t *sector = data; - struct grub_gpt_partentry gptdata; - grub_partition_t p2; - - p2 = disk->partition; - disk->partition = p->parent; - if (grub_disk_read (disk, p->offset, p->index, - sizeof (gptdata), &gptdata)) - { - disk->partition = p2; - return 0; - } - disk->partition = p2; - - if (! grub_memcmp (&gptdata.type, &ldm_type, 16)) - { - *sector = p->start + p->len - 1; - return 1; - } - return 0; -} - -static grub_disk_addr_t -gpt_ldm_sector (grub_disk_t dsk) -{ - grub_disk_addr_t sector = 0; - grub_err_t err; - - err = grub_gpt_partition_map_iterate (dsk, gpt_ldm_sector_iter, §or); - if (err) - { - grub_errno = GRUB_ERR_NONE; - return 0; - } - return sector; -} - -static struct grub_diskfilter_vg * -make_vg (grub_disk_t disk, - const struct grub_ldm_label *label) -{ - grub_disk_addr_t startsec, endsec, cursec; - struct grub_diskfilter_vg *vg; - grub_err_t err; - - /* First time we see this volume group. We've to create the - whole volume group structure. */ - vg = grub_malloc (sizeof (*vg)); - if (! vg) - return NULL; - vg->extent_size = 1; - vg->name = grub_malloc (LDM_NAME_STRLEN + 1); - vg->uuid = grub_malloc (LDM_GUID_STRLEN + 1); - if (! vg->uuid || !vg->name) - { - grub_free (vg->uuid); - grub_free (vg->name); - return NULL; - } - grub_memcpy (vg->uuid, label->group_guid, LDM_GUID_STRLEN); - grub_memcpy (vg->name, label->group_name, LDM_NAME_STRLEN); - vg->name[LDM_NAME_STRLEN] = 0; - vg->uuid[LDM_GUID_STRLEN] = 0; - vg->uuid_len = grub_strlen (vg->uuid); - - vg->lvs = NULL; - vg->pvs = NULL; - - startsec = grub_be_to_cpu64 (label->config_start); - endsec = startsec + grub_be_to_cpu64 (label->config_size); - - /* First find disks. */ - for (cursec = startsec + 0x12; cursec < endsec; cursec++) - { - struct grub_ldm_vblk vblk[GRUB_DISK_SECTOR_SIZE - / sizeof (struct grub_ldm_vblk)]; - unsigned i; - err = grub_disk_read (disk, cursec, 0, - sizeof(vblk), &vblk); - if (err) - goto fail2; - - for (i = 0; i < ARRAY_SIZE (vblk); i++) - { - struct grub_diskfilter_pv *pv; - grub_uint8_t *ptr; - if (grub_memcmp (vblk[i].magic, LDM_VBLK_MAGIC, - sizeof (vblk[i].magic)) != 0) - continue; - if (grub_be_to_cpu16 (vblk[i].update_status) - != STATUS_CONSISTENT - && grub_be_to_cpu16 (vblk[i].update_status) - != STATUS_STILL_ACTIVE) - continue; - if (vblk[i].type != ENTRY_DISK) - continue; - pv = grub_zalloc (sizeof (*pv)); - if (!pv) - goto fail2; - - pv->disk = 0; - ptr = vblk[i].dynamic; - if (ptr + *ptr + 1 >= vblk[i].dynamic - + sizeof (vblk[i].dynamic)) - { - grub_free (pv); - goto fail2; - } - pv->internal_id = grub_malloc (ptr[0] + 2); - if (!pv->internal_id) - { - grub_free (pv); - goto fail2; - } - grub_memcpy (pv->internal_id, ptr, (grub_size_t) ptr[0] + 1); - pv->internal_id[(grub_size_t) ptr[0] + 1] = 0; - - ptr += *ptr + 1; - if (ptr + *ptr + 1 >= vblk[i].dynamic - + sizeof (vblk[i].dynamic)) - { - grub_free (pv); - goto fail2; - } - /* ptr = name. */ - ptr += *ptr + 1; - if (ptr + *ptr + 1 - >= vblk[i].dynamic + sizeof (vblk[i].dynamic)) - { - grub_free (pv); - goto fail2; - } - pv->id.uuidlen = *ptr; - pv->id.uuid = grub_malloc (pv->id.uuidlen + 1); - grub_memcpy (pv->id.uuid, ptr + 1, pv->id.uuidlen); - pv->id.uuid[pv->id.uuidlen] = 0; - - pv->next = vg->pvs; - vg->pvs = pv; - } - } - - /* Then find LVs. */ - for (cursec = startsec + 0x12; cursec < endsec; cursec++) - { - struct grub_ldm_vblk vblk[GRUB_DISK_SECTOR_SIZE - / sizeof (struct grub_ldm_vblk)]; - unsigned i; - err = grub_disk_read (disk, cursec, 0, - sizeof(vblk), &vblk); - if (err) - goto fail2; - - for (i = 0; i < ARRAY_SIZE (vblk); i++) - { - struct grub_diskfilter_lv *lv; - grub_uint8_t *ptr; - if (grub_memcmp (vblk[i].magic, LDM_VBLK_MAGIC, - sizeof (vblk[i].magic)) != 0) - continue; - if (grub_be_to_cpu16 (vblk[i].update_status) - != STATUS_CONSISTENT - && grub_be_to_cpu16 (vblk[i].update_status) - != STATUS_STILL_ACTIVE) - continue; - if (vblk[i].type != ENTRY_VOLUME) - continue; - lv = grub_zalloc (sizeof (*lv)); - if (!lv) - goto fail2; - - lv->vg = vg; - lv->segment_count = 1; - lv->segment_alloc = 1; - lv->visible = 1; - lv->segments = grub_zalloc (sizeof (*lv->segments)); - if (!lv->segments) - goto fail2; - lv->segments->start_extent = 0; - lv->segments->type = GRUB_DISKFILTER_MIRROR; - lv->segments->node_count = 0; - lv->segments->node_alloc = 8; - lv->segments->nodes = grub_zalloc (sizeof (*lv->segments->nodes) - * lv->segments->node_alloc); - if (!lv->segments->nodes) - goto fail2; - ptr = vblk[i].dynamic; - if (ptr + *ptr + 1 >= vblk[i].dynamic - + sizeof (vblk[i].dynamic)) - { - grub_free (lv); - goto fail2; - } - lv->internal_id = grub_malloc ((grub_size_t) ptr[0] + 2); - if (!lv->internal_id) - { - grub_free (lv); - goto fail2; - } - grub_memcpy (lv->internal_id, ptr, ptr[0] + 1); - lv->internal_id[ptr[0] + 1] = 0; - - ptr += *ptr + 1; - if (ptr + *ptr + 1 >= vblk[i].dynamic - + sizeof (vblk[i].dynamic)) - { - grub_free (lv); - goto fail2; - } - lv->name = grub_malloc (*ptr + 1); - if (!lv->name) - { - grub_free (lv->internal_id); - grub_free (lv); - goto fail2; - } - grub_memcpy (lv->name, ptr + 1, *ptr); - lv->name[*ptr] = 0; - lv->fullname = grub_xasprintf ("ldm/%s/%s", - vg->uuid, lv->name); - if (!lv->fullname) - { - grub_free (lv->internal_id); - grub_free (lv->name); - grub_free (lv); - goto fail2; - } - ptr += *ptr + 1; - if (ptr + *ptr + 1 - >= vblk[i].dynamic + sizeof (vblk[i].dynamic)) - { - grub_free (lv->internal_id); - grub_free (lv->name); - grub_free (lv); - goto fail2; - } - /* ptr = volume type. */ - ptr += *ptr + 1; - if (ptr >= vblk[i].dynamic + sizeof (vblk[i].dynamic)) - { - grub_free (lv->internal_id); - grub_free (lv->name); - grub_free (lv); - goto fail2; - } - /* ptr = flags. */ - ptr += *ptr + 1; - if (ptr >= vblk[i].dynamic + sizeof (vblk[i].dynamic)) - { - grub_free (lv->internal_id); - grub_free (lv->name); - grub_free (lv); - goto fail2; - } - - /* Skip state, type, unknown, volume number, zeros, flags. */ - ptr += 14 + 1 + 1 + 1 + 3 + 1; - /* ptr = number of children. */ - if (ptr >= vblk[i].dynamic + sizeof (vblk[i].dynamic)) - { - grub_free (lv->internal_id); - grub_free (lv->name); - grub_free (lv); - goto fail2; - } - ptr += *ptr + 1; - if (ptr >= vblk[i].dynamic + sizeof (vblk[i].dynamic)) - { - grub_free (lv->internal_id); - grub_free (lv->name); - grub_free (lv); - goto fail2; - } - - /* Skip 2 more fields. */ - ptr += 8 + 8; - if (ptr >= vblk[i].dynamic + sizeof (vblk[i].dynamic) - || ptr + *ptr + 1>= vblk[i].dynamic - + sizeof (vblk[i].dynamic)) - { - grub_free (lv->internal_id); - grub_free (lv->name); - grub_free (lv); - goto fail2; - } - lv->size = read_int (ptr + 1, *ptr); - lv->segments->extent_count = lv->size; - - lv->next = vg->lvs; - vg->lvs = lv; - } - } - - /* Now the components. */ - for (cursec = startsec + 0x12; cursec < endsec; cursec++) - { - struct grub_ldm_vblk vblk[GRUB_DISK_SECTOR_SIZE - / sizeof (struct grub_ldm_vblk)]; - unsigned i; - err = grub_disk_read (disk, cursec, 0, - sizeof(vblk), &vblk); - if (err) - goto fail2; - - for (i = 0; i < ARRAY_SIZE (vblk); i++) - { - struct grub_diskfilter_lv *comp; - struct grub_diskfilter_lv *lv; - grub_uint8_t type; - - grub_uint8_t *ptr; - if (grub_memcmp (vblk[i].magic, LDM_VBLK_MAGIC, - sizeof (vblk[i].magic)) != 0) - continue; - if (grub_be_to_cpu16 (vblk[i].update_status) - != STATUS_CONSISTENT - && grub_be_to_cpu16 (vblk[i].update_status) - != STATUS_STILL_ACTIVE) - continue; - if (vblk[i].type != ENTRY_COMPONENT) - continue; - comp = grub_zalloc (sizeof (*comp)); - if (!comp) - goto fail2; - comp->visible = 0; - comp->name = 0; - comp->fullname = 0; - - ptr = vblk[i].dynamic; - if (ptr + *ptr + 1 >= vblk[i].dynamic + sizeof (vblk[i].dynamic)) - { - goto fail2; - } - comp->internal_id = grub_malloc ((grub_size_t) ptr[0] + 2); - if (!comp->internal_id) - { - grub_free (comp); - goto fail2; - } - grub_memcpy (comp->internal_id, ptr, ptr[0] + 1); - comp->internal_id[ptr[0] + 1] = 0; - - ptr += *ptr + 1; - if (ptr + *ptr + 1 >= vblk[i].dynamic + sizeof (vblk[i].dynamic)) - { - grub_free (comp->internal_id); - grub_free (comp); - goto fail2; - } - /* ptr = name. */ - ptr += *ptr + 1; - if (ptr + *ptr + 1 >= vblk[i].dynamic + sizeof (vblk[i].dynamic)) - { - grub_free (comp->internal_id); - grub_free (comp); - goto fail2; - } - /* ptr = state. */ - ptr += *ptr + 1; - type = *ptr++; - /* skip zeros. */ - ptr += 4; - if (ptr >= vblk[i].dynamic + sizeof (vblk[i].dynamic)) - { - grub_free (comp->internal_id); - grub_free (comp); - goto fail2; - } - - /* ptr = number of children. */ - ptr += *ptr + 1; - if (ptr >= vblk[i].dynamic + sizeof (vblk[i].dynamic)) - { - grub_free (comp->internal_id); - grub_free (comp); - goto fail2; - } - ptr += 8 + 8; - if (ptr + *ptr + 1 >= vblk[i].dynamic - + sizeof (vblk[i].dynamic)) - { - grub_free (comp->internal_id); - grub_free (comp); - goto fail2; - } - for (lv = vg->lvs; lv; lv = lv->next) - { - if (lv->internal_id[0] == ptr[0] - && grub_memcmp (lv->internal_id + 1, ptr + 1, ptr[0]) == 0) - break; - } - if (!lv) - { - grub_free (comp->internal_id); - grub_free (comp); - continue; - } - comp->size = lv->size; - if (type == SPANNED) - { - comp->segment_alloc = 8; - comp->segment_count = 0; - comp->segments = grub_malloc (sizeof (*comp->segments) - * comp->segment_alloc); - if (!comp->segments) - goto fail2; - } - else - { - comp->segment_alloc = 1; - comp->segment_count = 1; - comp->segments = grub_malloc (sizeof (*comp->segments)); - if (!comp->segments) - goto fail2; - comp->segments->start_extent = 0; - comp->segments->extent_count = lv->size; - comp->segments->layout = 0; - if (type == STRIPE) - comp->segments->type = GRUB_DISKFILTER_STRIPED; - else if (type == RAID5) - { - comp->segments->type = GRUB_DISKFILTER_RAID5; - comp->segments->layout = GRUB_RAID_LAYOUT_SYMMETRIC_MASK; - } - else - goto fail2; - ptr += *ptr + 1; - ptr++; - if (!(vblk[i].flags & 0x10)) - goto fail2; - if (ptr >= vblk[i].dynamic + sizeof (vblk[i].dynamic) - || ptr + *ptr + 1 >= vblk[i].dynamic - + sizeof (vblk[i].dynamic)) - { - grub_free (comp->internal_id); - grub_free (comp); - goto fail2; - } - comp->segments->stripe_size = read_int (ptr + 1, *ptr); - ptr += *ptr + 1; - if (ptr + *ptr + 1 >= vblk[i].dynamic - + sizeof (vblk[i].dynamic)) - { - grub_free (comp->internal_id); - grub_free (comp); - goto fail2; - } - comp->segments->node_count = read_int (ptr + 1, *ptr); - comp->segments->node_alloc = comp->segments->node_count; - comp->segments->nodes = grub_zalloc (sizeof (*comp->segments->nodes) - * comp->segments->node_alloc); - if (!lv->segments->nodes) - goto fail2; - } - - if (lv->segments->node_alloc == lv->segments->node_count) - { - void *t; - lv->segments->node_alloc *= 2; - t = grub_realloc (lv->segments->nodes, - sizeof (*lv->segments->nodes) - * lv->segments->node_alloc); - if (!t) - goto fail2; - lv->segments->nodes = t; - } - lv->segments->nodes[lv->segments->node_count].pv = 0; - lv->segments->nodes[lv->segments->node_count].start = 0; - lv->segments->nodes[lv->segments->node_count++].lv = comp; - comp->next = vg->lvs; - vg->lvs = comp; - } - } - /* Partitions. */ - for (cursec = startsec + 0x12; cursec < endsec; cursec++) - { - struct grub_ldm_vblk vblk[GRUB_DISK_SECTOR_SIZE - / sizeof (struct grub_ldm_vblk)]; - unsigned i; - err = grub_disk_read (disk, cursec, 0, - sizeof(vblk), &vblk); - if (err) - goto fail2; - - for (i = 0; i < ARRAY_SIZE (vblk); i++) - { - struct grub_diskfilter_lv *comp; - struct grub_diskfilter_node part; - grub_disk_addr_t start, size; - - grub_uint8_t *ptr; - part.name = 0; - if (grub_memcmp (vblk[i].magic, LDM_VBLK_MAGIC, - sizeof (vblk[i].magic)) != 0) - continue; - if (grub_be_to_cpu16 (vblk[i].update_status) - != STATUS_CONSISTENT - && grub_be_to_cpu16 (vblk[i].update_status) - != STATUS_STILL_ACTIVE) - continue; - if (vblk[i].type != ENTRY_PARTITION) - continue; - part.lv = 0; - part.pv = 0; - - ptr = vblk[i].dynamic; - if (ptr + *ptr + 1 >= vblk[i].dynamic + sizeof (vblk[i].dynamic)) - { - goto fail2; - } - /* ID */ - ptr += *ptr + 1; - if (ptr >= vblk[i].dynamic + sizeof (vblk[i].dynamic)) - { - goto fail2; - } - /* ptr = name. */ - ptr += *ptr + 1; - if (ptr >= vblk[i].dynamic + sizeof (vblk[i].dynamic)) - { - goto fail2; - } - - /* skip zeros and logcommit id. */ - ptr += 4 + 8; - if (ptr + 16 >= vblk[i].dynamic + sizeof (vblk[i].dynamic)) - { - goto fail2; - } - part.start = read_int (ptr, 8); - start = read_int (ptr + 8, 8); - ptr += 16; - if (ptr >= vblk[i].dynamic + sizeof (vblk[i].dynamic) - || ptr + *ptr + 1 >= vblk[i].dynamic + sizeof (vblk[i].dynamic)) - { - goto fail2; - } - size = read_int (ptr + 1, *ptr); - ptr += *ptr + 1; - if (ptr >= vblk[i].dynamic + sizeof (vblk[i].dynamic) - || ptr + *ptr + 1 >= vblk[i].dynamic + sizeof (vblk[i].dynamic)) - { - goto fail2; - } - - for (comp = vg->lvs; comp; comp = comp->next) - if (comp->internal_id[0] == ptr[0] - && grub_memcmp (ptr + 1, comp->internal_id + 1, - comp->internal_id[0]) == 0) - goto out; - continue; - out: - if (ptr >= vblk[i].dynamic + sizeof (vblk[i].dynamic) - || ptr + *ptr + 1 >= vblk[i].dynamic + sizeof (vblk[i].dynamic)) - { - goto fail2; - } - ptr += *ptr + 1; - struct grub_diskfilter_pv *pv; - for (pv = vg->pvs; pv; pv = pv->next) - if (pv->internal_id[0] == ptr[0] - && grub_memcmp (pv->internal_id + 1, ptr + 1, ptr[0]) == 0) - part.pv = pv; - - if (comp->segment_alloc == 1) - { - unsigned node_index; - ptr += *ptr + 1; - if (ptr + *ptr + 1 >= vblk[i].dynamic - + sizeof (vblk[i].dynamic)) - { - goto fail2; - } - node_index = read_int (ptr + 1, *ptr); - if (node_index < comp->segments->node_count) - comp->segments->nodes[node_index] = part; - } - else - { - if (comp->segment_alloc == comp->segment_count) - { - void *t; - comp->segment_alloc *= 2; - t = grub_realloc (comp->segments, - comp->segment_alloc - * sizeof (*comp->segments)); - if (!t) - goto fail2; - comp->segments = t; - } - comp->segments[comp->segment_count].start_extent = start; - comp->segments[comp->segment_count].extent_count = size; - comp->segments[comp->segment_count].type = GRUB_DISKFILTER_STRIPED; - comp->segments[comp->segment_count].node_count = 1; - comp->segments[comp->segment_count].node_alloc = 1; - comp->segments[comp->segment_count].nodes - = grub_malloc (sizeof (*comp->segments[comp->segment_count].nodes)); - if (!comp->segments[comp->segment_count].nodes) - goto fail2; - comp->segments[comp->segment_count].nodes[0] = part; - comp->segment_count++; - } - } - } - if (grub_diskfilter_vg_register (vg)) - goto fail2; - return vg; - fail2: - { - struct grub_diskfilter_lv *lv, *next_lv; - struct grub_diskfilter_pv *pv, *next_pv; - for (lv = vg->lvs; lv; lv = next_lv) - { - unsigned i; - for (i = 0; i < lv->segment_count; i++) - grub_free (lv->segments[i].nodes); - - next_lv = lv->next; - grub_free (lv->segments); - grub_free (lv->internal_id); - grub_free (lv->name); - grub_free (lv->fullname); - grub_free (lv); - } - for (pv = vg->pvs; pv; pv = next_pv) - { - next_pv = pv->next; - grub_free (pv->id.uuid); - grub_free (pv); - } - } - grub_free (vg->uuid); - grub_free (vg); - return NULL; -} - -static struct grub_diskfilter_vg * -grub_ldm_detect (grub_disk_t disk, - struct grub_diskfilter_pv_id *id, - grub_disk_addr_t *start_sector) -{ - grub_err_t err; - struct grub_ldm_label label; - struct grub_diskfilter_vg *vg; - -#ifdef GRUB_UTIL - grub_util_info ("scanning %s for LDM", disk->name); -#endif - - { - int i; - int has_ldm = msdos_has_ldm_partition (disk); - for (i = 0; i < 3; i++) - { - grub_disk_addr_t sector = LDM_LABEL_SECTOR; - switch (i) - { - case 0: - if (!has_ldm) - continue; - sector = LDM_LABEL_SECTOR; - break; - case 1: - /* LDM is never inside a partition. */ - if (!has_ldm || disk->partition) - continue; - sector = grub_disk_get_size (disk); - if (sector == GRUB_DISK_SIZE_UNKNOWN) - continue; - sector--; - break; - /* FIXME: try the third copy. */ - case 2: - sector = gpt_ldm_sector (disk); - if (!sector) - continue; - break; - } - err = grub_disk_read (disk, sector, 0, - sizeof(label), &label); - if (err) - return NULL; - if (grub_memcmp (label.magic, LDM_MAGIC, sizeof (label.magic)) == 0 - && grub_be_to_cpu16 (label.ver_major) == 0x02 - && grub_be_to_cpu16 (label.ver_minor) >= 0x0b - && grub_be_to_cpu16 (label.ver_minor) <= 0x0c) - break; - } - - /* Return if we didn't find a label. */ - if (i == 3) - { -#ifdef GRUB_UTIL - grub_util_info ("no LDM signature found"); -#endif - return NULL; - } - } - - id->uuid = grub_malloc (LDM_GUID_STRLEN + 1); - if (!id->uuid) - return NULL; - grub_memcpy (id->uuid, label.disk_guid, LDM_GUID_STRLEN); - id->uuid[LDM_GUID_STRLEN] = 0; - id->uuidlen = grub_strlen ((char *) id->uuid); - *start_sector = grub_be_to_cpu64 (label.pv_start); - - { - grub_size_t s; - for (s = 0; s < LDM_GUID_STRLEN && label.group_guid[s]; s++); - vg = grub_diskfilter_get_vg_by_uuid (s, label.group_guid); - if (! vg) - vg = make_vg (disk, &label); - } - - if (!vg) - { - grub_free (id->uuid); - return NULL; - } - return vg; -} - -#ifdef GRUB_UTIL - -char * -grub_util_get_ldm (grub_disk_t disk, grub_disk_addr_t start) -{ - struct grub_diskfilter_pv *pv = NULL; - struct grub_diskfilter_vg *vg = NULL; - struct grub_diskfilter_lv *res = 0, *lv, *res_lv = 0; - - pv = grub_diskfilter_get_pv_from_disk (disk, &vg); - - if (!pv) - return NULL; - - for (lv = vg->lvs; lv; lv = lv->next) - if (lv->segment_count == 1 && lv->segments->node_count == 1 - && lv->segments->type == GRUB_DISKFILTER_STRIPED - && lv->segments->nodes->pv == pv - && lv->segments->nodes->start + pv->start_sector == start) - { - res_lv = lv; - break; - } - if (!res_lv) - return NULL; - for (lv = vg->lvs; lv; lv = lv->next) - if (lv->segment_count == 1 && lv->segments->node_count == 1 - && lv->segments->type == GRUB_DISKFILTER_MIRROR - && lv->segments->nodes->lv == res_lv) - { - res = lv; - break; - } - if (res && res->fullname) - return grub_strdup (res->fullname); - return NULL; -} - -int -grub_util_is_ldm (grub_disk_t disk) -{ - int i; - int has_ldm = msdos_has_ldm_partition (disk); - for (i = 0; i < 3; i++) - { - grub_disk_addr_t sector = LDM_LABEL_SECTOR; - grub_err_t err; - struct grub_ldm_label label; - - switch (i) - { - case 0: - if (!has_ldm) - continue; - sector = LDM_LABEL_SECTOR; - break; - case 1: - /* LDM is never inside a partition. */ - if (!has_ldm || disk->partition) - continue; - sector = grub_disk_get_size (disk); - if (sector == GRUB_DISK_SIZE_UNKNOWN) - continue; - sector--; - break; - /* FIXME: try the third copy. */ - case 2: - sector = gpt_ldm_sector (disk); - if (!sector) - continue; - break; - } - err = grub_disk_read (disk, sector, 0, sizeof(label), &label); - if (err) - { - grub_errno = GRUB_ERR_NONE; - return 0; - } - /* This check is more relaxed on purpose. */ - if (grub_memcmp (label.magic, LDM_MAGIC, sizeof (label.magic)) == 0) - return 1; - } - - return 0; -} - -grub_err_t -grub_util_ldm_embed (struct grub_disk *disk, unsigned int *nsectors, - unsigned int max_nsectors, - grub_embed_type_t embed_type, - grub_disk_addr_t **sectors) -{ - struct grub_diskfilter_pv *pv = NULL; - struct grub_diskfilter_vg *vg; - struct grub_diskfilter_lv *lv; - unsigned i; - - if (embed_type != GRUB_EMBED_PCBIOS) - return grub_error (GRUB_ERR_NOT_IMPLEMENTED_YET, - "LDM currently supports only PC-BIOS embedding"); - if (disk->partition) - return grub_error (GRUB_ERR_BUG, "disk isn't LDM"); - pv = grub_diskfilter_get_pv_from_disk (disk, &vg); - if (!pv) - return grub_error (GRUB_ERR_BUG, "disk isn't LDM"); - for (lv = vg->lvs; lv; lv = lv->next) - { - struct grub_diskfilter_lv *comp; - - if (!lv->visible || !lv->fullname) - continue; - - if (lv->segment_count != 1) - continue; - if (lv->segments->type != GRUB_DISKFILTER_MIRROR - || lv->segments->node_count != 1 - || lv->segments->start_extent != 0 - || lv->segments->extent_count != lv->size) - continue; - - comp = lv->segments->nodes->lv; - if (!comp) - continue; - - if (comp->segment_count != 1 || comp->size != lv->size) - continue; - if (comp->segments->type != GRUB_DISKFILTER_STRIPED - || comp->segments->node_count != 1 - || comp->segments->start_extent != 0 - || comp->segments->extent_count != lv->size) - continue; - - /* How to implement proper check is to be discussed. */ -#if 1 - if (1) - continue; -#else - if (grub_strcmp (lv->name, "Volume5") != 0) - continue; -#endif - if (lv->size < *nsectors) - return grub_error (GRUB_ERR_OUT_OF_RANGE, - /* TRANSLATORS: it's a partition for embedding, - not a partition embed into something. GRUB - install tools put core.img into a place - usable for bootloaders (called generically - "embedding zone") and this operation is - called "embedding". */ - N_("your LDM Embedding Partition is too small;" - " embedding won't be possible")); - *nsectors = lv->size; - if (*nsectors > max_nsectors) - *nsectors = max_nsectors; - *sectors = grub_malloc (*nsectors * sizeof (**sectors)); - if (!*sectors) - return grub_errno; - for (i = 0; i < *nsectors; i++) - (*sectors)[i] = (lv->segments->nodes->start - + comp->segments->nodes->start - + comp->segments->nodes->pv->start_sector + i); - return GRUB_ERR_NONE; - } - - return grub_error (GRUB_ERR_FILE_NOT_FOUND, - /* TRANSLATORS: it's a partition for embedding, - not a partition embed into something. */ - N_("this LDM has no Embedding Partition;" - " embedding won't be possible")); -} -#endif - -static struct grub_diskfilter grub_ldm_dev = { - .name = "ldm", - .detect = grub_ldm_detect, - .next = 0 -}; - -GRUB_MOD_INIT (ldm) -{ - grub_diskfilter_register_back (&grub_ldm_dev); -} - -GRUB_MOD_FINI (ldm) -{ - grub_diskfilter_unregister (&grub_ldm_dev); -} diff --git a/thirdparty/grub-2.04/grub-core/disk/loopback.c b/thirdparty/grub-2.04/grub-core/disk/loopback.c deleted file mode 100644 index cdf9123fa..000000000 --- a/thirdparty/grub-2.04/grub-core/disk/loopback.c +++ /dev/null @@ -1,248 +0,0 @@ -/* loopback.c - command to add loopback devices. */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2005,2006,2007 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -struct grub_loopback -{ - char *devname; - grub_file_t file; - struct grub_loopback *next; - unsigned long id; -}; - -static struct grub_loopback *loopback_list; -static unsigned long last_id = 0; - -static const struct grub_arg_option options[] = - { - /* TRANSLATORS: The disk is simply removed from the list of available ones, - not wiped, avoid to scare user. */ - {"delete", 'd', 0, N_("Delete the specified loopback drive."), 0, 0}, - {0, 0, 0, 0, 0, 0} - }; - -/* Delete the loopback device NAME. */ -static grub_err_t -delete_loopback (const char *name) -{ - struct grub_loopback *dev; - struct grub_loopback **prev; - - /* Search for the device. */ - for (dev = loopback_list, prev = &loopback_list; - dev; - prev = &dev->next, dev = dev->next) - if (grub_strcmp (dev->devname, name) == 0) - break; - - if (! dev) - return grub_error (GRUB_ERR_BAD_DEVICE, "device not found"); - - /* Remove the device from the list. */ - *prev = dev->next; - - grub_free (dev->devname); - grub_file_close (dev->file); - grub_free (dev); - - return 0; -} - -/* The command to add and remove loopback devices. */ -static grub_err_t -grub_cmd_loopback (grub_extcmd_context_t ctxt, int argc, char **args) -{ - struct grub_arg_list *state = ctxt->state; - grub_file_t file; - struct grub_loopback *newdev; - grub_err_t ret; - - if (argc < 1) - return grub_error (GRUB_ERR_BAD_ARGUMENT, "device name required"); - - /* Check if `-d' was used. */ - if (state[0].set) - return delete_loopback (args[0]); - - if (argc < 2) - return grub_error (GRUB_ERR_BAD_ARGUMENT, N_("filename expected")); - - file = grub_file_open (args[1], GRUB_FILE_TYPE_LOOPBACK - | GRUB_FILE_TYPE_NO_DECOMPRESS); - if (! file) - return grub_errno; - - /* First try to replace the old device. */ - for (newdev = loopback_list; newdev; newdev = newdev->next) - if (grub_strcmp (newdev->devname, args[0]) == 0) - break; - - if (newdev) - { - grub_file_close (newdev->file); - newdev->file = file; - - return 0; - } - - /* Unable to replace it, make a new entry. */ - newdev = grub_malloc (sizeof (struct grub_loopback)); - if (! newdev) - goto fail; - - newdev->devname = grub_strdup (args[0]); - if (! newdev->devname) - { - grub_free (newdev); - goto fail; - } - - newdev->file = file; - newdev->id = last_id++; - - /* Add the new entry to the list. */ - newdev->next = loopback_list; - loopback_list = newdev; - - return 0; - -fail: - ret = grub_errno; - grub_file_close (file); - return ret; -} - - -static int -grub_loopback_iterate (grub_disk_dev_iterate_hook_t hook, void *hook_data, - grub_disk_pull_t pull) -{ - struct grub_loopback *d; - if (pull != GRUB_DISK_PULL_NONE) - return 0; - for (d = loopback_list; d; d = d->next) - { - if (hook (d->devname, hook_data)) - return 1; - } - return 0; -} - -static grub_err_t -grub_loopback_open (const char *name, grub_disk_t disk) -{ - struct grub_loopback *dev; - - for (dev = loopback_list; dev; dev = dev->next) - if (grub_strcmp (dev->devname, name) == 0) - break; - - if (! dev) - return grub_error (GRUB_ERR_UNKNOWN_DEVICE, "can't open device"); - - /* Use the filesize for the disk size, round up to a complete sector. */ - if (dev->file->size != GRUB_FILE_SIZE_UNKNOWN) - disk->total_sectors = ((dev->file->size + GRUB_DISK_SECTOR_SIZE - 1) - / GRUB_DISK_SECTOR_SIZE); - else - disk->total_sectors = GRUB_DISK_SIZE_UNKNOWN; - /* Avoid reading more than 512M. */ - disk->max_agglomerate = 1 << (29 - GRUB_DISK_SECTOR_BITS - - GRUB_DISK_CACHE_BITS); - - disk->id = dev->id; - - disk->data = dev; - - return 0; -} - -static grub_err_t -grub_loopback_read (grub_disk_t disk, grub_disk_addr_t sector, - grub_size_t size, char *buf) -{ - grub_file_t file = ((struct grub_loopback *) disk->data)->file; - grub_off_t pos; - - grub_file_seek (file, sector << GRUB_DISK_SECTOR_BITS); - - grub_file_read (file, buf, size << GRUB_DISK_SECTOR_BITS); - if (grub_errno) - return grub_errno; - - /* In case there is more data read than there is available, in case - of files that are not a multiple of GRUB_DISK_SECTOR_SIZE, fill - the rest with zeros. */ - pos = (sector + size) << GRUB_DISK_SECTOR_BITS; - if (pos > file->size) - { - grub_size_t amount = pos - file->size; - grub_memset (buf + (size << GRUB_DISK_SECTOR_BITS) - amount, 0, amount); - } - - return 0; -} - -static grub_err_t -grub_loopback_write (grub_disk_t disk __attribute ((unused)), - grub_disk_addr_t sector __attribute ((unused)), - grub_size_t size __attribute ((unused)), - const char *buf __attribute ((unused))) -{ - return grub_error (GRUB_ERR_NOT_IMPLEMENTED_YET, - "loopback write is not supported"); -} - -static struct grub_disk_dev grub_loopback_dev = - { - .name = "loopback", - .id = GRUB_DISK_DEVICE_LOOPBACK_ID, - .disk_iterate = grub_loopback_iterate, - .disk_open = grub_loopback_open, - .disk_read = grub_loopback_read, - .disk_write = grub_loopback_write, - .next = 0 - }; - -static grub_extcmd_t cmd; - -GRUB_MOD_INIT(loopback) -{ - cmd = grub_register_extcmd ("loopback", grub_cmd_loopback, 0, - N_("[-d] DEVICENAME FILE."), - /* TRANSLATORS: The file itself is not destroyed - or transformed into drive. */ - N_("Make a virtual drive from a file."), options); - grub_disk_dev_register (&grub_loopback_dev); -} - -GRUB_MOD_FINI(loopback) -{ - grub_unregister_extcmd (cmd); - grub_disk_dev_unregister (&grub_loopback_dev); -} diff --git a/thirdparty/grub-2.04/grub-core/disk/luks.c b/thirdparty/grub-2.04/grub-core/disk/luks.c deleted file mode 100644 index 86c50c612..000000000 --- a/thirdparty/grub-2.04/grub-core/disk/luks.c +++ /dev/null @@ -1,485 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2003,2007,2010,2011 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -#define MAX_PASSPHRASE 256 - -#define LUKS_KEY_ENABLED 0x00AC71F3 - -/* On disk LUKS header */ -struct grub_luks_phdr -{ - grub_uint8_t magic[6]; -#define LUKS_MAGIC "LUKS\xBA\xBE" - grub_uint16_t version; - char cipherName[32]; - char cipherMode[32]; - char hashSpec[32]; - grub_uint32_t payloadOffset; - grub_uint32_t keyBytes; - grub_uint8_t mkDigest[20]; - grub_uint8_t mkDigestSalt[32]; - grub_uint32_t mkDigestIterations; - char uuid[40]; - struct - { - grub_uint32_t active; - grub_uint32_t passwordIterations; - grub_uint8_t passwordSalt[32]; - grub_uint32_t keyMaterialOffset; - grub_uint32_t stripes; - } keyblock[8]; -} GRUB_PACKED; - -typedef struct grub_luks_phdr *grub_luks_phdr_t; - -gcry_err_code_t AF_merge (const gcry_md_spec_t * hash, grub_uint8_t * src, - grub_uint8_t * dst, grub_size_t blocksize, - grub_size_t blocknumbers); - -static grub_cryptodisk_t -configure_ciphers (grub_disk_t disk, const char *check_uuid, - int check_boot) -{ - grub_cryptodisk_t newdev; - const char *iptr; - struct grub_luks_phdr header; - char *optr; - char uuid[sizeof (header.uuid) + 1]; - char ciphername[sizeof (header.cipherName) + 1]; - char ciphermode[sizeof (header.cipherMode) + 1]; - char *cipheriv = NULL; - char hashspec[sizeof (header.hashSpec) + 1]; - grub_crypto_cipher_handle_t cipher = NULL, secondary_cipher = NULL; - grub_crypto_cipher_handle_t essiv_cipher = NULL; - const gcry_md_spec_t *hash = NULL, *essiv_hash = NULL; - const struct gcry_cipher_spec *ciph; - grub_cryptodisk_mode_t mode; - grub_cryptodisk_mode_iv_t mode_iv = GRUB_CRYPTODISK_MODE_IV_PLAIN64; - int benbi_log = 0; - grub_err_t err; - - if (check_boot) - return NULL; - - /* Read the LUKS header. */ - err = grub_disk_read (disk, 0, 0, sizeof (header), &header); - if (err) - { - if (err == GRUB_ERR_OUT_OF_RANGE) - grub_errno = GRUB_ERR_NONE; - return NULL; - } - - /* Look for LUKS magic sequence. */ - if (grub_memcmp (header.magic, LUKS_MAGIC, sizeof (header.magic)) - || grub_be_to_cpu16 (header.version) != 1) - return NULL; - - optr = uuid; - for (iptr = header.uuid; iptr < &header.uuid[ARRAY_SIZE (header.uuid)]; - iptr++) - { - if (*iptr != '-') - *optr++ = *iptr; - } - *optr = 0; - - if (check_uuid && grub_strcasecmp (check_uuid, uuid) != 0) - { - grub_dprintf ("luks", "%s != %s\n", uuid, check_uuid); - return NULL; - } - - /* Make sure that strings are null terminated. */ - grub_memcpy (ciphername, header.cipherName, sizeof (header.cipherName)); - ciphername[sizeof (header.cipherName)] = 0; - grub_memcpy (ciphermode, header.cipherMode, sizeof (header.cipherMode)); - ciphermode[sizeof (header.cipherMode)] = 0; - grub_memcpy (hashspec, header.hashSpec, sizeof (header.hashSpec)); - hashspec[sizeof (header.hashSpec)] = 0; - - ciph = grub_crypto_lookup_cipher_by_name (ciphername); - if (!ciph) - { - grub_error (GRUB_ERR_FILE_NOT_FOUND, "Cipher %s isn't available", - ciphername); - return NULL; - } - - /* Configure the cipher used for the bulk data. */ - cipher = grub_crypto_cipher_open (ciph); - if (!cipher) - return NULL; - - if (grub_be_to_cpu32 (header.keyBytes) > 1024) - { - grub_error (GRUB_ERR_BAD_ARGUMENT, "invalid keysize %d", - grub_be_to_cpu32 (header.keyBytes)); - grub_crypto_cipher_close (cipher); - return NULL; - } - - /* Configure the cipher mode. */ - if (grub_strcmp (ciphermode, "ecb") == 0) - { - mode = GRUB_CRYPTODISK_MODE_ECB; - mode_iv = GRUB_CRYPTODISK_MODE_IV_PLAIN; - cipheriv = NULL; - } - else if (grub_strcmp (ciphermode, "plain") == 0) - { - mode = GRUB_CRYPTODISK_MODE_CBC; - mode_iv = GRUB_CRYPTODISK_MODE_IV_PLAIN; - cipheriv = NULL; - } - else if (grub_memcmp (ciphermode, "cbc-", sizeof ("cbc-") - 1) == 0) - { - mode = GRUB_CRYPTODISK_MODE_CBC; - cipheriv = ciphermode + sizeof ("cbc-") - 1; - } - else if (grub_memcmp (ciphermode, "pcbc-", sizeof ("pcbc-") - 1) == 0) - { - mode = GRUB_CRYPTODISK_MODE_PCBC; - cipheriv = ciphermode + sizeof ("pcbc-") - 1; - } - else if (grub_memcmp (ciphermode, "xts-", sizeof ("xts-") - 1) == 0) - { - mode = GRUB_CRYPTODISK_MODE_XTS; - cipheriv = ciphermode + sizeof ("xts-") - 1; - secondary_cipher = grub_crypto_cipher_open (ciph); - if (!secondary_cipher) - { - grub_crypto_cipher_close (cipher); - return NULL; - } - if (cipher->cipher->blocksize != GRUB_CRYPTODISK_GF_BYTES) - { - grub_error (GRUB_ERR_BAD_ARGUMENT, "Unsupported XTS block size: %d", - cipher->cipher->blocksize); - grub_crypto_cipher_close (cipher); - grub_crypto_cipher_close (secondary_cipher); - return NULL; - } - if (secondary_cipher->cipher->blocksize != GRUB_CRYPTODISK_GF_BYTES) - { - grub_crypto_cipher_close (cipher); - grub_error (GRUB_ERR_BAD_ARGUMENT, "Unsupported XTS block size: %d", - secondary_cipher->cipher->blocksize); - grub_crypto_cipher_close (secondary_cipher); - return NULL; - } - } - else if (grub_memcmp (ciphermode, "lrw-", sizeof ("lrw-") - 1) == 0) - { - mode = GRUB_CRYPTODISK_MODE_LRW; - cipheriv = ciphermode + sizeof ("lrw-") - 1; - if (cipher->cipher->blocksize != GRUB_CRYPTODISK_GF_BYTES) - { - grub_error (GRUB_ERR_BAD_ARGUMENT, "Unsupported LRW block size: %d", - cipher->cipher->blocksize); - grub_crypto_cipher_close (cipher); - return NULL; - } - } - else - { - grub_crypto_cipher_close (cipher); - grub_error (GRUB_ERR_BAD_ARGUMENT, "Unknown cipher mode: %s", - ciphermode); - return NULL; - } - - if (cipheriv == NULL); - else if (grub_memcmp (cipheriv, "plain", sizeof ("plain") - 1) == 0) - mode_iv = GRUB_CRYPTODISK_MODE_IV_PLAIN; - else if (grub_memcmp (cipheriv, "plain64", sizeof ("plain64") - 1) == 0) - mode_iv = GRUB_CRYPTODISK_MODE_IV_PLAIN64; - else if (grub_memcmp (cipheriv, "benbi", sizeof ("benbi") - 1) == 0) - { - if (cipher->cipher->blocksize & (cipher->cipher->blocksize - 1) - || cipher->cipher->blocksize == 0) - grub_error (GRUB_ERR_BAD_ARGUMENT, "Unsupported benbi blocksize: %d", - cipher->cipher->blocksize); - /* FIXME should we return an error here? */ - for (benbi_log = 0; - (cipher->cipher->blocksize << benbi_log) < GRUB_DISK_SECTOR_SIZE; - benbi_log++); - mode_iv = GRUB_CRYPTODISK_MODE_IV_BENBI; - } - else if (grub_memcmp (cipheriv, "null", sizeof ("null") - 1) == 0) - mode_iv = GRUB_CRYPTODISK_MODE_IV_NULL; - else if (grub_memcmp (cipheriv, "essiv:", sizeof ("essiv:") - 1) == 0) - { - char *hash_str = cipheriv + 6; - - mode_iv = GRUB_CRYPTODISK_MODE_IV_ESSIV; - - /* Configure the hash and cipher used for ESSIV. */ - essiv_hash = grub_crypto_lookup_md_by_name (hash_str); - if (!essiv_hash) - { - grub_crypto_cipher_close (cipher); - grub_crypto_cipher_close (secondary_cipher); - grub_error (GRUB_ERR_FILE_NOT_FOUND, - "Couldn't load %s hash", hash_str); - return NULL; - } - essiv_cipher = grub_crypto_cipher_open (ciph); - if (!essiv_cipher) - { - grub_crypto_cipher_close (cipher); - grub_crypto_cipher_close (secondary_cipher); - return NULL; - } - } - else - { - grub_crypto_cipher_close (cipher); - grub_crypto_cipher_close (secondary_cipher); - grub_error (GRUB_ERR_BAD_ARGUMENT, "Unknown IV mode: %s", - cipheriv); - return NULL; - } - - /* Configure the hash used for the AF splitter and HMAC. */ - hash = grub_crypto_lookup_md_by_name (hashspec); - if (!hash) - { - grub_crypto_cipher_close (cipher); - grub_crypto_cipher_close (essiv_cipher); - grub_crypto_cipher_close (secondary_cipher); - grub_error (GRUB_ERR_FILE_NOT_FOUND, "Couldn't load %s hash", - hashspec); - return NULL; - } - - newdev = grub_zalloc (sizeof (struct grub_cryptodisk)); - if (!newdev) - { - grub_crypto_cipher_close (cipher); - grub_crypto_cipher_close (essiv_cipher); - grub_crypto_cipher_close (secondary_cipher); - return NULL; - } - newdev->cipher = cipher; - newdev->offset = grub_be_to_cpu32 (header.payloadOffset); - newdev->source_disk = NULL; - newdev->benbi_log = benbi_log; - newdev->mode = mode; - newdev->mode_iv = mode_iv; - newdev->secondary_cipher = secondary_cipher; - newdev->essiv_cipher = essiv_cipher; - newdev->essiv_hash = essiv_hash; - newdev->hash = hash; - newdev->log_sector_size = 9; - newdev->total_length = grub_disk_get_size (disk) - newdev->offset; - grub_memcpy (newdev->uuid, uuid, sizeof (newdev->uuid)); - newdev->modname = "luks"; - COMPILE_TIME_ASSERT (sizeof (newdev->uuid) >= sizeof (uuid)); - return newdev; -} - -static grub_err_t -luks_recover_key (grub_disk_t source, - grub_cryptodisk_t dev) -{ - struct grub_luks_phdr header; - grub_size_t keysize; - grub_uint8_t *split_key = NULL; - char passphrase[MAX_PASSPHRASE] = ""; - grub_uint8_t candidate_digest[sizeof (header.mkDigest)]; - unsigned i; - grub_size_t length; - grub_err_t err; - grub_size_t max_stripes = 1; - char *tmp; - - err = grub_disk_read (source, 0, 0, sizeof (header), &header); - if (err) - return err; - - grub_puts_ (N_("Attempting to decrypt master key...")); - keysize = grub_be_to_cpu32 (header.keyBytes); - if (keysize > GRUB_CRYPTODISK_MAX_KEYLEN) - return grub_error (GRUB_ERR_BAD_FS, "key is too long"); - - for (i = 0; i < ARRAY_SIZE (header.keyblock); i++) - if (grub_be_to_cpu32 (header.keyblock[i].active) == LUKS_KEY_ENABLED - && grub_be_to_cpu32 (header.keyblock[i].stripes) > max_stripes) - max_stripes = grub_be_to_cpu32 (header.keyblock[i].stripes); - - split_key = grub_malloc (keysize * max_stripes); - if (!split_key) - return grub_errno; - - /* Get the passphrase from the user. */ - tmp = NULL; - if (source->partition) - tmp = grub_partition_get_name (source->partition); - grub_printf_ (N_("Enter passphrase for %s%s%s (%s): "), source->name, - source->partition ? "," : "", tmp ? : "", - dev->uuid); - grub_free (tmp); - if (!grub_password_get (passphrase, MAX_PASSPHRASE)) - { - grub_free (split_key); - return grub_error (GRUB_ERR_BAD_ARGUMENT, "Passphrase not supplied"); - } - - /* Try to recover master key from each active keyslot. */ - for (i = 0; i < ARRAY_SIZE (header.keyblock); i++) - { - gcry_err_code_t gcry_err; - grub_uint8_t candidate_key[GRUB_CRYPTODISK_MAX_KEYLEN]; - grub_uint8_t digest[GRUB_CRYPTODISK_MAX_KEYLEN]; - - /* Check if keyslot is enabled. */ - if (grub_be_to_cpu32 (header.keyblock[i].active) != LUKS_KEY_ENABLED) - continue; - - grub_dprintf ("luks", "Trying keyslot %d\n", i); - - /* Calculate the PBKDF2 of the user supplied passphrase. */ - gcry_err = grub_crypto_pbkdf2 (dev->hash, (grub_uint8_t *) passphrase, - grub_strlen (passphrase), - header.keyblock[i].passwordSalt, - sizeof (header.keyblock[i].passwordSalt), - grub_be_to_cpu32 (header.keyblock[i]. - passwordIterations), - digest, keysize); - - if (gcry_err) - { - grub_free (split_key); - return grub_crypto_gcry_error (gcry_err); - } - - grub_dprintf ("luks", "PBKDF2 done\n"); - - gcry_err = grub_cryptodisk_setkey (dev, digest, keysize); - if (gcry_err) - { - grub_free (split_key); - return grub_crypto_gcry_error (gcry_err); - } - - length = (keysize * grub_be_to_cpu32 (header.keyblock[i].stripes)); - - /* Read and decrypt the key material from the disk. */ - err = grub_disk_read (source, - grub_be_to_cpu32 (header.keyblock - [i].keyMaterialOffset), 0, - length, split_key); - if (err) - { - grub_free (split_key); - return err; - } - - gcry_err = grub_cryptodisk_decrypt (dev, split_key, length, 0); - if (gcry_err) - { - grub_free (split_key); - return grub_crypto_gcry_error (gcry_err); - } - - /* Merge the decrypted key material to get the candidate master key. */ - gcry_err = AF_merge (dev->hash, split_key, candidate_key, keysize, - grub_be_to_cpu32 (header.keyblock[i].stripes)); - if (gcry_err) - { - grub_free (split_key); - return grub_crypto_gcry_error (gcry_err); - } - - grub_dprintf ("luks", "candidate key recovered\n"); - - /* Calculate the PBKDF2 of the candidate master key. */ - gcry_err = grub_crypto_pbkdf2 (dev->hash, candidate_key, - grub_be_to_cpu32 (header.keyBytes), - header.mkDigestSalt, - sizeof (header.mkDigestSalt), - grub_be_to_cpu32 - (header.mkDigestIterations), - candidate_digest, - sizeof (candidate_digest)); - if (gcry_err) - { - grub_free (split_key); - return grub_crypto_gcry_error (gcry_err); - } - - /* Compare the calculated PBKDF2 to the digest stored - in the header to see if it's correct. */ - if (grub_memcmp (candidate_digest, header.mkDigest, - sizeof (header.mkDigest)) != 0) - { - grub_dprintf ("luks", "bad digest\n"); - continue; - } - - /* TRANSLATORS: It's a cryptographic key slot: one element of an array - where each element is either empty or holds a key. */ - grub_printf_ (N_("Slot %d opened\n"), i); - - /* Set the master key. */ - gcry_err = grub_cryptodisk_setkey (dev, candidate_key, keysize); - if (gcry_err) - { - grub_free (split_key); - return grub_crypto_gcry_error (gcry_err); - } - - grub_free (split_key); - - return GRUB_ERR_NONE; - } - - grub_free (split_key); - return GRUB_ACCESS_DENIED; -} - -struct grub_cryptodisk_dev luks_crypto = { - .scan = configure_ciphers, - .recover_key = luks_recover_key -}; - -GRUB_MOD_INIT (luks) -{ - COMPILE_TIME_ASSERT (sizeof (((struct grub_luks_phdr *) 0)->uuid) - < GRUB_CRYPTODISK_MAX_UUID_LENGTH); - grub_cryptodisk_dev_register (&luks_crypto); -} - -GRUB_MOD_FINI (luks) -{ - grub_cryptodisk_dev_unregister (&luks_crypto); -} diff --git a/thirdparty/grub-2.04/grub-core/disk/lvm.c b/thirdparty/grub-2.04/grub-core/disk/lvm.c deleted file mode 100644 index 7b265c780..000000000 --- a/thirdparty/grub-2.04/grub-core/disk/lvm.c +++ /dev/null @@ -1,795 +0,0 @@ -/* lvm.c - module to read Logical Volumes. */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2006,2007,2008,2009,2011 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include -#include - -#ifdef GRUB_UTIL -#include -#include -#endif - -GRUB_MOD_LICENSE ("GPLv3+"); - - -/* Go the string STR and return the number after STR. *P will point - at the number. In case STR is not found, *P will be NULL and the - return value will be 0. */ -static grub_uint64_t -grub_lvm_getvalue (char **p, const char *str) -{ - *p = grub_strstr (*p, str); - if (! *p) - return 0; - *p += grub_strlen (str); - return grub_strtoull (*p, p, 10); -} - -#if 0 -static int -grub_lvm_checkvalue (char **p, char *str, char *tmpl) -{ - int tmpllen = grub_strlen (tmpl); - *p = grub_strstr (*p, str); - if (! *p) - return 0; - *p += grub_strlen (str); - if (**p != '"') - return 0; - return (grub_memcmp (*p + 1, tmpl, tmpllen) == 0 && (*p)[tmpllen + 1] == '"'); -} -#endif - -static int -grub_lvm_check_flag (char *p, const char *str, const char *flag) -{ - grub_size_t len_str = grub_strlen (str), len_flag = grub_strlen (flag); - while (1) - { - char *q; - p = grub_strstr (p, str); - if (! p) - return 0; - p += len_str; - if (grub_memcmp (p, " = [", sizeof (" = [") - 1) != 0) - continue; - q = p + sizeof (" = [") - 1; - while (1) - { - while (grub_isspace (*q)) - q++; - if (*q != '"') - return 0; - q++; - if (grub_memcmp (q, flag, len_flag) == 0 && q[len_flag] == '"') - return 1; - while (*q != '"') - q++; - q++; - if (*q == ']') - return 0; - q++; - } - } -} - -static struct grub_diskfilter_vg * -grub_lvm_detect (grub_disk_t disk, - struct grub_diskfilter_pv_id *id, - grub_disk_addr_t *start_sector) -{ - grub_err_t err; - grub_uint64_t mda_offset, mda_size; - char buf[GRUB_LVM_LABEL_SIZE]; - char vg_id[GRUB_LVM_ID_STRLEN+1]; - char pv_id[GRUB_LVM_ID_STRLEN+1]; - char *metadatabuf, *p, *q, *vgname; - struct grub_lvm_label_header *lh = (struct grub_lvm_label_header *) buf; - struct grub_lvm_pv_header *pvh; - struct grub_lvm_disk_locn *dlocn; - struct grub_lvm_mda_header *mdah; - struct grub_lvm_raw_locn *rlocn; - unsigned int i, j; - grub_size_t vgname_len; - struct grub_diskfilter_vg *vg; - struct grub_diskfilter_pv *pv; - - /* Search for label. */ - for (i = 0; i < GRUB_LVM_LABEL_SCAN_SECTORS; i++) - { - err = grub_disk_read (disk, i, 0, sizeof(buf), buf); - if (err) - goto fail; - - if ((! grub_strncmp ((char *)lh->id, GRUB_LVM_LABEL_ID, - sizeof (lh->id))) - && (! grub_strncmp ((char *)lh->type, GRUB_LVM_LVM2_LABEL, - sizeof (lh->type)))) - break; - } - - /* Return if we didn't find a label. */ - if (i == GRUB_LVM_LABEL_SCAN_SECTORS) - { -#ifdef GRUB_UTIL - grub_util_info ("no LVM signature found"); -#endif - goto fail; - } - - pvh = (struct grub_lvm_pv_header *) (buf + grub_le_to_cpu32(lh->offset_xl)); - - for (i = 0, j = 0; i < GRUB_LVM_ID_LEN; i++) - { - pv_id[j++] = pvh->pv_uuid[i]; - if ((i != 1) && (i != 29) && (i % 4 == 1)) - pv_id[j++] = '-'; - } - pv_id[j] = '\0'; - - dlocn = pvh->disk_areas_xl; - - dlocn++; - /* Is it possible to have multiple data/metadata areas? I haven't - seen devices that have it. */ - if (dlocn->offset) - { - grub_error (GRUB_ERR_NOT_IMPLEMENTED_YET, - "we don't support multiple LVM data areas"); - -#ifdef GRUB_UTIL - grub_util_info ("we don't support multiple LVM data areas"); -#endif - goto fail; - } - - dlocn++; - mda_offset = grub_le_to_cpu64 (dlocn->offset); - mda_size = grub_le_to_cpu64 (dlocn->size); - - /* It's possible to have multiple copies of metadata areas, we just use the - first one. */ - - /* Allocate buffer space for the circular worst-case scenario. */ - metadatabuf = grub_malloc (2 * mda_size); - if (! metadatabuf) - goto fail; - - err = grub_disk_read (disk, 0, mda_offset, mda_size, metadatabuf); - if (err) - goto fail2; - - mdah = (struct grub_lvm_mda_header *) metadatabuf; - if ((grub_strncmp ((char *)mdah->magic, GRUB_LVM_FMTT_MAGIC, - sizeof (mdah->magic))) - || (grub_le_to_cpu32 (mdah->version) != GRUB_LVM_FMTT_VERSION)) - { - grub_error (GRUB_ERR_NOT_IMPLEMENTED_YET, - "unknown LVM metadata header"); -#ifdef GRUB_UTIL - grub_util_info ("unknown LVM metadata header"); -#endif - goto fail2; - } - - rlocn = mdah->raw_locns; - if (grub_le_to_cpu64 (rlocn->offset) + grub_le_to_cpu64 (rlocn->size) > - grub_le_to_cpu64 (mdah->size)) - { - /* Metadata is circular. Copy the wrap in place. */ - grub_memcpy (metadatabuf + mda_size, - metadatabuf + GRUB_LVM_MDA_HEADER_SIZE, - grub_le_to_cpu64 (rlocn->offset) + - grub_le_to_cpu64 (rlocn->size) - - grub_le_to_cpu64 (mdah->size)); - } - p = q = metadatabuf + grub_le_to_cpu64 (rlocn->offset); - - while (*q != ' ' && q < metadatabuf + mda_size) - q++; - - if (q == metadatabuf + mda_size) - { -#ifdef GRUB_UTIL - grub_util_info ("error parsing metadata"); -#endif - goto fail2; - } - - vgname_len = q - p; - vgname = grub_malloc (vgname_len + 1); - if (!vgname) - goto fail2; - - grub_memcpy (vgname, p, vgname_len); - vgname[vgname_len] = '\0'; - - p = grub_strstr (q, "id = \""); - if (p == NULL) - { -#ifdef GRUB_UTIL - grub_util_info ("couldn't find ID"); -#endif - goto fail3; - } - p += sizeof ("id = \"") - 1; - grub_memcpy (vg_id, p, GRUB_LVM_ID_STRLEN); - vg_id[GRUB_LVM_ID_STRLEN] = '\0'; - - vg = grub_diskfilter_get_vg_by_uuid (GRUB_LVM_ID_STRLEN, vg_id); - - if (! vg) - { - /* First time we see this volume group. We've to create the - whole volume group structure. */ - vg = grub_malloc (sizeof (*vg)); - if (! vg) - goto fail3; - vg->name = vgname; - vg->uuid = grub_malloc (GRUB_LVM_ID_STRLEN); - if (! vg->uuid) - goto fail3; - grub_memcpy (vg->uuid, vg_id, GRUB_LVM_ID_STRLEN); - vg->uuid_len = GRUB_LVM_ID_STRLEN; - - vg->extent_size = grub_lvm_getvalue (&p, "extent_size = "); - if (p == NULL) - { -#ifdef GRUB_UTIL - grub_util_info ("unknown extent size"); -#endif - goto fail4; - } - - vg->lvs = NULL; - vg->pvs = NULL; - - p = grub_strstr (p, "physical_volumes {"); - if (p) - { - p += sizeof ("physical_volumes {") - 1; - - /* Add all the pvs to the volume group. */ - while (1) - { - grub_ssize_t s; - while (grub_isspace (*p)) - p++; - - if (*p == '}') - break; - - pv = grub_zalloc (sizeof (*pv)); - q = p; - while (*q != ' ') - q++; - - s = q - p; - pv->name = grub_malloc (s + 1); - grub_memcpy (pv->name, p, s); - pv->name[s] = '\0'; - - p = grub_strstr (p, "id = \""); - if (p == NULL) - goto pvs_fail; - p += sizeof("id = \"") - 1; - - pv->id.uuid = grub_malloc (GRUB_LVM_ID_STRLEN); - if (!pv->id.uuid) - goto pvs_fail; - grub_memcpy (pv->id.uuid, p, GRUB_LVM_ID_STRLEN); - pv->id.uuidlen = GRUB_LVM_ID_STRLEN; - - pv->start_sector = grub_lvm_getvalue (&p, "pe_start = "); - if (p == NULL) - { -#ifdef GRUB_UTIL - grub_util_info ("unknown pe_start"); -#endif - goto pvs_fail; - } - - p = grub_strchr (p, '}'); - if (p == NULL) - { -#ifdef GRUB_UTIL - grub_util_info ("error parsing pe_start"); -#endif - goto pvs_fail; - } - p++; - - pv->disk = NULL; - pv->next = vg->pvs; - vg->pvs = pv; - - continue; - pvs_fail: - grub_free (pv->name); - grub_free (pv); - goto fail4; - } - } - - p = grub_strstr (p, "logical_volumes {"); - if (p) - { - p += sizeof ("logical_volumes {") - 1; - - /* And add all the lvs to the volume group. */ - while (1) - { - grub_ssize_t s; - int skip_lv = 0; - struct grub_diskfilter_lv *lv; - struct grub_diskfilter_segment *seg; - int is_pvmove; - - while (grub_isspace (*p)) - p++; - - if (*p == '}') - break; - - lv = grub_zalloc (sizeof (*lv)); - - q = p; - while (*q != ' ') - q++; - - s = q - p; - lv->name = grub_strndup (p, s); - if (!lv->name) - goto lvs_fail; - - { - const char *iptr; - char *optr; - lv->fullname = grub_malloc (sizeof ("lvm/") - 1 + 2 * vgname_len - + 1 + 2 * s + 1); - if (!lv->fullname) - goto lvs_fail; - - grub_memcpy (lv->fullname, "lvm/", sizeof ("lvm/") - 1); - optr = lv->fullname + sizeof ("lvm/") - 1; - for (iptr = vgname; iptr < vgname + vgname_len; iptr++) - { - *optr++ = *iptr; - if (*iptr == '-') - *optr++ = '-'; - } - *optr++ = '-'; - for (iptr = p; iptr < p + s; iptr++) - { - *optr++ = *iptr; - if (*iptr == '-') - *optr++ = '-'; - } - *optr++ = 0; - lv->idname = grub_malloc (sizeof ("lvmid/") - + 2 * GRUB_LVM_ID_STRLEN + 1); - if (!lv->idname) - goto lvs_fail; - grub_memcpy (lv->idname, "lvmid/", - sizeof ("lvmid/") - 1); - grub_memcpy (lv->idname + sizeof ("lvmid/") - 1, - vg_id, GRUB_LVM_ID_STRLEN); - lv->idname[sizeof ("lvmid/") - 1 + GRUB_LVM_ID_STRLEN] = '/'; - - p = grub_strstr (q, "id = \""); - if (p == NULL) - { -#ifdef GRUB_UTIL - grub_util_info ("couldn't find ID"); -#endif - goto lvs_fail; - } - p += sizeof ("id = \"") - 1; - grub_memcpy (lv->idname + sizeof ("lvmid/") - 1 - + GRUB_LVM_ID_STRLEN + 1, - p, GRUB_LVM_ID_STRLEN); - lv->idname[sizeof ("lvmid/") - 1 + 2 * GRUB_LVM_ID_STRLEN + 1] = '\0'; - } - - lv->size = 0; - - lv->visible = grub_lvm_check_flag (p, "status", "VISIBLE"); - is_pvmove = grub_lvm_check_flag (p, "status", "PVMOVE"); - - lv->segment_count = grub_lvm_getvalue (&p, "segment_count = "); - if (p == NULL) - { -#ifdef GRUB_UTIL - grub_util_info ("unknown segment_count"); -#endif - goto lvs_fail; - } - lv->segments = grub_zalloc (sizeof (*seg) * lv->segment_count); - seg = lv->segments; - - for (i = 0; i < lv->segment_count; i++) - { - - p = grub_strstr (p, "segment"); - if (p == NULL) - { -#ifdef GRUB_UTIL - grub_util_info ("unknown segment"); -#endif - goto lvs_segment_fail; - } - - seg->start_extent = grub_lvm_getvalue (&p, "start_extent = "); - if (p == NULL) - { -#ifdef GRUB_UTIL - grub_util_info ("unknown start_extent"); -#endif - goto lvs_segment_fail; - } - seg->extent_count = grub_lvm_getvalue (&p, "extent_count = "); - if (p == NULL) - { -#ifdef GRUB_UTIL - grub_util_info ("unknown extent_count"); -#endif - goto lvs_segment_fail; - } - - p = grub_strstr (p, "type = \""); - if (p == NULL) - goto lvs_segment_fail; - p += sizeof("type = \"") - 1; - - lv->size += seg->extent_count * vg->extent_size; - - if (grub_memcmp (p, "striped\"", - sizeof ("striped\"") - 1) == 0) - { - struct grub_diskfilter_node *stripe; - - seg->type = GRUB_DISKFILTER_STRIPED; - seg->node_count = grub_lvm_getvalue (&p, "stripe_count = "); - if (p == NULL) - { -#ifdef GRUB_UTIL - grub_util_info ("unknown stripe_count"); -#endif - goto lvs_segment_fail; - } - - if (seg->node_count != 1) - seg->stripe_size = grub_lvm_getvalue (&p, "stripe_size = "); - - seg->nodes = grub_zalloc (sizeof (*stripe) - * seg->node_count); - stripe = seg->nodes; - - p = grub_strstr (p, "stripes = ["); - if (p == NULL) - { -#ifdef GRUB_UTIL - grub_util_info ("unknown stripes"); -#endif - goto lvs_segment_fail2; - } - p += sizeof("stripes = [") - 1; - - for (j = 0; j < seg->node_count; j++) - { - p = grub_strchr (p, '"'); - if (p == NULL) - continue; - q = ++p; - while (*q != '"') - q++; - - s = q - p; - - stripe->name = grub_malloc (s + 1); - if (stripe->name == NULL) - goto lvs_segment_fail2; - - grub_memcpy (stripe->name, p, s); - stripe->name[s] = '\0'; - - p = q + 1; - - stripe->start = grub_lvm_getvalue (&p, ",") - * vg->extent_size; - if (p == NULL) - continue; - - stripe++; - } - } - else if (grub_memcmp (p, "mirror\"", sizeof ("mirror\"") - 1) - == 0) - { - seg->type = GRUB_DISKFILTER_MIRROR; - seg->node_count = grub_lvm_getvalue (&p, "mirror_count = "); - if (p == NULL) - { -#ifdef GRUB_UTIL - grub_util_info ("unknown mirror_count"); -#endif - goto lvs_segment_fail; - } - - seg->nodes = grub_zalloc (sizeof (seg->nodes[0]) - * seg->node_count); - - p = grub_strstr (p, "mirrors = ["); - if (p == NULL) - { -#ifdef GRUB_UTIL - grub_util_info ("unknown mirrors"); -#endif - goto lvs_segment_fail2; - } - p += sizeof("mirrors = [") - 1; - - for (j = 0; j < seg->node_count; j++) - { - char *lvname; - - p = grub_strchr (p, '"'); - if (p == NULL) - continue; - q = ++p; - while (*q != '"') - q++; - - s = q - p; - - lvname = grub_malloc (s + 1); - if (lvname == NULL) - goto lvs_segment_fail2; - - grub_memcpy (lvname, p, s); - lvname[s] = '\0'; - seg->nodes[j].name = lvname; - p = q + 1; - } - /* Only first (original) is ok with in progress pvmove. */ - if (is_pvmove) - seg->node_count = 1; - } - else if (grub_memcmp (p, "raid", sizeof ("raid") - 1) == 0 - && ((p[sizeof ("raid") - 1] >= '4' - && p[sizeof ("raid") - 1] <= '6') - || p[sizeof ("raid") - 1] == '1') - && p[sizeof ("raidX") - 1] == '"') - { - switch (p[sizeof ("raid") - 1]) - { - case '1': - seg->type = GRUB_DISKFILTER_MIRROR; - break; - case '4': - seg->type = GRUB_DISKFILTER_RAID4; - seg->layout = GRUB_RAID_LAYOUT_LEFT_ASYMMETRIC; - break; - case '5': - seg->type = GRUB_DISKFILTER_RAID5; - seg->layout = GRUB_RAID_LAYOUT_LEFT_SYMMETRIC; - break; - case '6': - seg->type = GRUB_DISKFILTER_RAID6; - seg->layout = (GRUB_RAID_LAYOUT_RIGHT_ASYMMETRIC - | GRUB_RAID_LAYOUT_MUL_FROM_POS); - break; - } - seg->node_count = grub_lvm_getvalue (&p, "device_count = "); - - if (p == NULL) - { -#ifdef GRUB_UTIL - grub_util_info ("unknown device_count"); -#endif - goto lvs_segment_fail; - } - - if (seg->type != GRUB_DISKFILTER_MIRROR) - { - seg->stripe_size = grub_lvm_getvalue (&p, "stripe_size = "); - if (p == NULL) - { -#ifdef GRUB_UTIL - grub_util_info ("unknown stripe_size"); -#endif - goto lvs_segment_fail; - } - } - - seg->nodes = grub_zalloc (sizeof (seg->nodes[0]) - * seg->node_count); - - p = grub_strstr (p, "raids = ["); - if (p == NULL) - { -#ifdef GRUB_UTIL - grub_util_info ("unknown raids"); -#endif - goto lvs_segment_fail2; - } - p += sizeof("raids = [") - 1; - - for (j = 0; j < seg->node_count; j++) - { - char *lvname; - - p = grub_strchr (p, '"'); - p = p ? grub_strchr (p + 1, '"') : 0; - p = p ? grub_strchr (p + 1, '"') : 0; - if (p == NULL) - continue; - q = ++p; - while (*q != '"') - q++; - - s = q - p; - - lvname = grub_malloc (s + 1); - if (lvname == NULL) - goto lvs_segment_fail2; - - grub_memcpy (lvname, p, s); - lvname[s] = '\0'; - seg->nodes[j].name = lvname; - p = q + 1; - } - if (seg->type == GRUB_DISKFILTER_RAID4) - { - char *tmp; - tmp = seg->nodes[0].name; - grub_memmove (seg->nodes, seg->nodes + 1, - sizeof (seg->nodes[0]) - * (seg->node_count - 1)); - seg->nodes[seg->node_count - 1].name = tmp; - } - } - else - { -#ifdef GRUB_UTIL - char *p2; - p2 = grub_strchr (p, '"'); - if (p2) - *p2 = 0; - grub_util_info ("unknown LVM type %s", p); - if (p2) - *p2 ='"'; -#endif - /* Found a non-supported type, give up and move on. */ - skip_lv = 1; - break; - } - - seg++; - - continue; - lvs_segment_fail2: - grub_free (seg->nodes); - lvs_segment_fail: - goto fail4; - } - - if (p != NULL) - p = grub_strchr (p, '}'); - if (p == NULL) - goto lvs_fail; - p += 3; - - if (skip_lv) - { - grub_free (lv->name); - grub_free (lv); - continue; - } - - lv->vg = vg; - lv->next = vg->lvs; - vg->lvs = lv; - - continue; - lvs_fail: - grub_free (lv->name); - grub_free (lv); - goto fail4; - } - } - - /* Match lvs. */ - { - struct grub_diskfilter_lv *lv1; - struct grub_diskfilter_lv *lv2; - for (lv1 = vg->lvs; lv1; lv1 = lv1->next) - for (i = 0; i < lv1->segment_count; i++) - for (j = 0; j < lv1->segments[i].node_count; j++) - { - if (vg->pvs) - for (pv = vg->pvs; pv; pv = pv->next) - { - if (! grub_strcmp (pv->name, - lv1->segments[i].nodes[j].name)) - { - lv1->segments[i].nodes[j].pv = pv; - break; - } - } - if (lv1->segments[i].nodes[j].pv == NULL) - for (lv2 = vg->lvs; lv2; lv2 = lv2->next) - if (grub_strcmp (lv2->name, - lv1->segments[i].nodes[j].name) == 0) - lv1->segments[i].nodes[j].lv = lv2; - } - - } - if (grub_diskfilter_vg_register (vg)) - goto fail4; - } - else - { - grub_free (vgname); - } - - id->uuid = grub_malloc (GRUB_LVM_ID_STRLEN); - if (!id->uuid) - goto fail4; - grub_memcpy (id->uuid, pv_id, GRUB_LVM_ID_STRLEN); - id->uuidlen = GRUB_LVM_ID_STRLEN; - grub_free (metadatabuf); - *start_sector = -1; - return vg; - - /* Failure path. */ - fail4: - grub_free (vg); - fail3: - grub_free (vgname); - - fail2: - grub_free (metadatabuf); - fail: - return NULL; -} - - - -static struct grub_diskfilter grub_lvm_dev = { - .name = "lvm", - .detect = grub_lvm_detect, - .next = 0 -}; - -GRUB_MOD_INIT (lvm) -{ - grub_diskfilter_register_back (&grub_lvm_dev); -} - -GRUB_MOD_FINI (lvm) -{ - grub_diskfilter_unregister (&grub_lvm_dev); -} diff --git a/thirdparty/grub-2.04/grub-core/disk/mdraid1x_linux.c b/thirdparty/grub-2.04/grub-core/disk/mdraid1x_linux.c deleted file mode 100644 index 7cc80d3df..000000000 --- a/thirdparty/grub-2.04/grub-core/disk/mdraid1x_linux.c +++ /dev/null @@ -1,233 +0,0 @@ -/* mdraid_linux.c - module to handle Linux Software RAID. */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2008,2009,2010 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -/* Linux RAID on disk structures and constants, - copied from include/linux/raid/md_p.h. */ - -#define SB_MAGIC 0xa92b4efc - -/* - * The version-1 superblock : - * All numeric fields are little-endian. - * - * Total size: 256 bytes plus 2 per device. - * 1K allows 384 devices. - */ - -struct grub_raid_super_1x -{ - /* Constant array information - 128 bytes. */ - grub_uint32_t magic; /* MD_SB_MAGIC: 0xa92b4efc - little endian. */ - grub_uint32_t major_version; /* 1. */ - grub_uint32_t feature_map; /* Bit 0 set if 'bitmap_offset' is meaningful. */ - grub_uint32_t pad0; /* Always set to 0 when writing. */ - - grub_uint8_t set_uuid[16]; /* User-space generated. */ - char set_name[32]; /* Set and interpreted by user-space. */ - - grub_uint64_t ctime; /* Lo 40 bits are seconds, top 24 are microseconds or 0. */ - grub_uint32_t level; /* -4 (multipath), -1 (linear), 0,1,4,5. */ - grub_uint32_t layout; /* only for raid5 and raid10 currently. */ - grub_uint64_t size; /* Used size of component devices, in 512byte sectors. */ - - grub_uint32_t chunksize; /* In 512byte sectors. */ - grub_uint32_t raid_disks; - grub_uint32_t bitmap_offset; /* Sectors after start of superblock that bitmap starts - * NOTE: signed, so bitmap can be before superblock - * only meaningful of feature_map[0] is set. - */ - - /* These are only valid with feature bit '4'. */ - grub_uint32_t new_level; /* New level we are reshaping to. */ - grub_uint64_t reshape_position; /* Next address in array-space for reshape. */ - grub_uint32_t delta_disks; /* Change in number of raid_disks. */ - grub_uint32_t new_layout; /* New layout. */ - grub_uint32_t new_chunk; /* New chunk size (512byte sectors). */ - grub_uint8_t pad1[128 - 124]; /* Set to 0 when written. */ - - /* Constant this-device information - 64 bytes. */ - grub_uint64_t data_offset; /* Sector start of data, often 0. */ - grub_uint64_t data_size; /* Sectors in this device that can be used for data. */ - grub_uint64_t super_offset; /* Sector start of this superblock. */ - grub_uint64_t recovery_offset; /* Sectors before this offset (from data_offset) have been recovered. */ - grub_uint32_t dev_number; /* Permanent identifier of this device - not role in raid. */ - grub_uint32_t cnt_corrected_read; /* Number of read errors that were corrected by re-writing. */ - grub_uint8_t device_uuid[16]; /* User-space setable, ignored by kernel. */ - grub_uint8_t devflags; /* Per-device flags. Only one defined... */ - grub_uint8_t pad2[64 - 57]; /* Set to 0 when writing. */ - - /* Array state information - 64 bytes. */ - grub_uint64_t utime; /* 40 bits second, 24 btes microseconds. */ - grub_uint64_t events; /* Incremented when superblock updated. */ - grub_uint64_t resync_offset; /* Data before this offset (from data_offset) known to be in sync. */ - grub_uint32_t sb_csum; /* Checksum upto devs[max_dev]. */ - grub_uint32_t max_dev; /* Size of devs[] array to consider. */ - grub_uint8_t pad3[64 - 32]; /* Set to 0 when writing. */ - - /* Device state information. Indexed by dev_number. - * 2 bytes per device. - * Note there are no per-device state flags. State information is rolled - * into the 'roles' value. If a device is spare or faulty, then it doesn't - * have a meaningful role. - */ - grub_uint16_t dev_roles[0]; /* Role in array, or 0xffff for a spare, or 0xfffe for faulty. */ -}; -/* Could be GRUB_PACKED, but since all members in this struct - are already appropriately aligned, we can omit this and avoid suboptimal - assembly in some cases. */ - -#define WriteMostly1 1 /* Mask for writemostly flag in above devflags. */ - -static struct grub_diskfilter_vg * -grub_mdraid_detect (grub_disk_t disk, - struct grub_diskfilter_pv_id *id, - grub_disk_addr_t *start_sector) -{ - grub_uint64_t size; - grub_uint8_t minor_version; - - size = grub_disk_get_size (disk); - - /* Check for an 1.x superblock. - * It's always aligned to a 4K boundary - * and depending on the minor version it can be: - * 0: At least 8K, but less than 12K, from end of device - * 1: At start of device - * 2: 4K from start of device. - */ - - for (minor_version = 0; minor_version < 3; ++minor_version) - { - grub_disk_addr_t sector = 0; - struct grub_raid_super_1x sb; - grub_uint16_t role; - grub_uint32_t level; - struct grub_diskfilter_vg *array; - char *uuid; - - if (size == GRUB_DISK_SIZE_UNKNOWN && minor_version == 0) - continue; - - switch (minor_version) - { - case 0: - sector = (size - 8 * 2) & ~(4 * 2 - 1); - break; - case 1: - sector = 0; - break; - case 2: - sector = 4 * 2; - break; - } - - if (grub_disk_read (disk, sector, 0, sizeof (struct grub_raid_super_1x), - &sb)) - return NULL; - - if (sb.magic != grub_cpu_to_le32_compile_time (SB_MAGIC) - || grub_le_to_cpu64 (sb.super_offset) != sector) - continue; - - if (sb.major_version != grub_cpu_to_le32_compile_time (1)) - /* Unsupported version. */ - return NULL; - - level = grub_le_to_cpu32 (sb.level); - - /* Multipath. */ - if ((int) level == -4) - level = 1; - - if (level != 0 && level != 1 && level != 4 && - level != 5 && level != 6 && level != 10) - { - grub_error (GRUB_ERR_NOT_IMPLEMENTED_YET, - "Unsupported RAID level: %d", sb.level); - return NULL; - } - - if (grub_le_to_cpu32 (sb.dev_number) >= - grub_le_to_cpu32 (sb.max_dev)) - /* Spares aren't implemented. */ - return NULL; - - if (grub_disk_read (disk, sector, - (char *) &sb.dev_roles[grub_le_to_cpu32 (sb.dev_number)] - - (char *) &sb, - sizeof (role), &role)) - return NULL; - - if (grub_le_to_cpu16 (role) - >= grub_le_to_cpu32 (sb.raid_disks)) - /* Spares aren't implemented. */ - return NULL; - - id->uuidlen = 0; - id->id = grub_le_to_cpu16 (role); - - uuid = grub_malloc (16); - if (!uuid) - return NULL; - - grub_memcpy (uuid, sb.set_uuid, 16); - - *start_sector = grub_le_to_cpu64 (sb.data_offset); - - array = grub_diskfilter_make_raid (16, uuid, - grub_le_to_cpu32 (sb.raid_disks), - sb.set_name, - (sb.size) - ? grub_le_to_cpu64 (sb.size) - : grub_le_to_cpu64 (sb.data_size), - grub_le_to_cpu32 (sb.chunksize), - grub_le_to_cpu32 (sb.layout), - grub_le_to_cpu32 (sb.level)); - - return array; - } - - /* not 1.x raid. */ - return NULL; -} - -static struct grub_diskfilter grub_mdraid_dev = { - .name = "mdraid1x", - .detect = grub_mdraid_detect, - .next = 0 -}; - -GRUB_MOD_INIT (mdraid1x) -{ - grub_diskfilter_register_front (&grub_mdraid_dev); -} - -GRUB_MOD_FINI (mdraid1x) -{ - grub_diskfilter_unregister (&grub_mdraid_dev); -} diff --git a/thirdparty/grub-2.04/grub-core/disk/mdraid_linux.c b/thirdparty/grub-2.04/grub-core/disk/mdraid_linux.c deleted file mode 100644 index 11024ae31..000000000 --- a/thirdparty/grub-2.04/grub-core/disk/mdraid_linux.c +++ /dev/null @@ -1,298 +0,0 @@ -/* mdraid_linux.c - module to handle Linux Software RAID. */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2008,2009,2010 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include - -/* Linux RAID on disk structures and constants, - copied from include/linux/raid/md_p.h. */ - -GRUB_MOD_LICENSE ("GPLv3+"); - -#ifdef MODE_BIGENDIAN -#define grub_md_to_cpu64 grub_be_to_cpu64 -#define grub_md_to_cpu32 grub_be_to_cpu32 -#define grub_md_to_cpu16 grub_be_to_cpu16 -#define grub_cpu_to_md64_compile_time grub_cpu_to_be64_compile_time -#define grub_cpu_to_md32_compile_time grub_cpu_to_be32_compile_time -#define grub_cpu_to_md16_compile_time grub_cpu_to_be16_compile_time -#else -#define grub_md_to_cpu64 grub_le_to_cpu64 -#define grub_md_to_cpu32 grub_le_to_cpu32 -#define grub_md_to_cpu16 grub_le_to_cpu16 -#define grub_cpu_to_md64_compile_time grub_cpu_to_le64_compile_time -#define grub_cpu_to_md32_compile_time grub_cpu_to_le32_compile_time -#define grub_cpu_to_md16_compile_time grub_cpu_to_le16_compile_time -#endif - -#define RESERVED_BYTES (64 * 1024) -#define RESERVED_SECTORS (RESERVED_BYTES / 512) - -#define NEW_SIZE_SECTORS(x) ((x & ~(RESERVED_SECTORS - 1)) \ - - RESERVED_SECTORS) - -#define SB_BYTES 4096 -#define SB_WORDS (SB_BYTES / 4) -#define SB_SECTORS (SB_BYTES / 512) - -/* - * The following are counted in 32-bit words - */ -#define SB_GENERIC_OFFSET 0 - -#define SB_PERSONALITY_OFFSET 64 -#define SB_DISKS_OFFSET 128 -#define SB_DESCRIPTOR_OFFSET 992 - -#define SB_GENERIC_CONSTANT_WORDS 32 -#define SB_GENERIC_STATE_WORDS 32 -#define SB_GENERIC_WORDS (SB_GENERIC_CONSTANT_WORDS + \ - SB_GENERIC_STATE_WORDS) - -#define SB_PERSONALITY_WORDS 64 -#define SB_DESCRIPTOR_WORDS 32 -#define SB_DISKS 27 -#define SB_DISKS_WORDS (SB_DISKS * SB_DESCRIPTOR_WORDS) - -#define SB_RESERVED_WORDS (1024 \ - - SB_GENERIC_WORDS \ - - SB_PERSONALITY_WORDS \ - - SB_DISKS_WORDS \ - - SB_DESCRIPTOR_WORDS) - -#define SB_EQUAL_WORDS (SB_GENERIC_WORDS \ - + SB_PERSONALITY_WORDS \ - + SB_DISKS_WORDS) - -/* - * Device "operational" state bits - */ -#define DISK_FAULTY 0 -#define DISK_ACTIVE 1 -#define DISK_SYNC 2 -#define DISK_REMOVED 3 - -#define DISK_WRITEMOSTLY 9 - -#define SB_MAGIC 0xa92b4efc - -/* - * Superblock state bits - */ -#define SB_CLEAN 0 -#define SB_ERRORS 1 - -#define SB_BITMAP_PRESENT 8 - -struct grub_raid_disk_09 -{ - grub_uint32_t number; /* Device number in the entire set. */ - grub_uint32_t major; /* Device major number. */ - grub_uint32_t minor; /* Device minor number. */ - grub_uint32_t raid_disk; /* The role of the device in the raid set. */ - grub_uint32_t state; /* Operational state. */ - grub_uint32_t reserved[SB_DESCRIPTOR_WORDS - 5]; -}; - -struct grub_raid_super_09 -{ - /* - * Constant generic information - */ - grub_uint32_t md_magic; /* MD identifier. */ - grub_uint32_t major_version; /* Major version. */ - grub_uint32_t minor_version; /* Minor version. */ - grub_uint32_t patch_version; /* Patchlevel version. */ - grub_uint32_t gvalid_words; /* Number of used words in this section. */ - grub_uint32_t set_uuid0; /* Raid set identifier. */ - grub_uint32_t ctime; /* Creation time. */ - grub_uint32_t level; /* Raid personality. */ - grub_uint32_t size; /* Apparent size of each individual disk. */ - grub_uint32_t nr_disks; /* Total disks in the raid set. */ - grub_uint32_t raid_disks; /* Disks in a fully functional raid set. */ - grub_uint32_t md_minor; /* Preferred MD minor device number. */ - grub_uint32_t not_persistent; /* Does it have a persistent superblock. */ - grub_uint32_t set_uuid1; /* Raid set identifier #2. */ - grub_uint32_t set_uuid2; /* Raid set identifier #3. */ - grub_uint32_t set_uuid3; /* Raid set identifier #4. */ - grub_uint32_t gstate_creserved[SB_GENERIC_CONSTANT_WORDS - 16]; - - /* - * Generic state information - */ - grub_uint32_t utime; /* Superblock update time. */ - grub_uint32_t state; /* State bits (clean, ...). */ - grub_uint32_t active_disks; /* Number of currently active disks. */ - grub_uint32_t working_disks; /* Number of working disks. */ - grub_uint32_t failed_disks; /* Number of failed disks. */ - grub_uint32_t spare_disks; /* Number of spare disks. */ - grub_uint32_t sb_csum; /* Checksum of the whole superblock. */ - grub_uint64_t events; /* Superblock update count. */ - grub_uint64_t cp_events; /* Checkpoint update count. */ - grub_uint32_t recovery_cp; /* Recovery checkpoint sector count. */ - grub_uint32_t gstate_sreserved[SB_GENERIC_STATE_WORDS - 12]; - - /* - * Personality information - */ - grub_uint32_t layout; /* The array's physical layout. */ - grub_uint32_t chunk_size; /* Chunk size in bytes. */ - grub_uint32_t root_pv; /* LV root PV. */ - grub_uint32_t root_block; /* LV root block. */ - grub_uint32_t pstate_reserved[SB_PERSONALITY_WORDS - 4]; - - /* - * Disks information - */ - struct grub_raid_disk_09 disks[SB_DISKS]; - - /* - * Reserved - */ - grub_uint32_t reserved[SB_RESERVED_WORDS]; - - /* - * Active descriptor - */ - struct grub_raid_disk_09 this_disk; -} GRUB_PACKED; - -static struct grub_diskfilter_vg * -grub_mdraid_detect (grub_disk_t disk, - struct grub_diskfilter_pv_id *id, - grub_disk_addr_t *start_sector) -{ - grub_disk_addr_t sector; - grub_uint64_t size; - struct grub_raid_super_09 *sb = NULL; - grub_uint32_t *uuid; - grub_uint32_t level; - struct grub_diskfilter_vg *ret; - - /* The sector where the mdraid 0.90 superblock is stored, if available. */ - size = grub_disk_get_size (disk); - if (size == GRUB_DISK_SIZE_UNKNOWN) - /* not 0.9x raid. */ - return NULL; - sector = NEW_SIZE_SECTORS (size); - - sb = grub_malloc (sizeof (*sb)); - if (!sb) - return NULL; - - if (grub_disk_read (disk, sector, 0, SB_BYTES, sb)) - goto fail; - - /* Look whether there is a mdraid 0.90 superblock. */ - if (sb->md_magic != grub_cpu_to_md32_compile_time (SB_MAGIC)) - /* not 0.9x raid. */ - goto fail; - - if (sb->major_version != grub_cpu_to_md32_compile_time (0) - || sb->minor_version != grub_cpu_to_md32_compile_time (90)) - /* Unsupported version. */ - goto fail; - - /* No need for explicit check that sb->size is 0 (unspecified) since - 0 >= non-0 is false. */ - if (((grub_disk_addr_t) grub_md_to_cpu32 (sb->size)) * 2 >= size) - goto fail; - - /* FIXME: Check the checksum. */ - - level = grub_md_to_cpu32 (sb->level); - /* Multipath. */ - if ((int) level == -4) - level = 1; - - if (level != 0 && level != 1 && level != 4 && - level != 5 && level != 6 && level != 10) - { - grub_error (GRUB_ERR_NOT_IMPLEMENTED_YET, - "unsupported RAID level: %d", level); - goto fail; - } - if (grub_md_to_cpu32 (sb->this_disk.number) == 0xffff - || grub_md_to_cpu32 (sb->this_disk.number) == 0xfffe) - /* Spares aren't implemented. */ - goto fail; - - uuid = grub_malloc (16); - if (!uuid) - goto fail; - - uuid[0] = grub_swap_bytes32 (sb->set_uuid0); - uuid[1] = grub_swap_bytes32 (sb->set_uuid1); - uuid[2] = grub_swap_bytes32 (sb->set_uuid2); - uuid[3] = grub_swap_bytes32 (sb->set_uuid3); - - *start_sector = 0; - - id->uuidlen = 0; - id->id = grub_md_to_cpu32 (sb->this_disk.number); - - char buf[32]; - grub_snprintf (buf, sizeof (buf), "md%d", grub_md_to_cpu32 (sb->md_minor)); - ret = grub_diskfilter_make_raid (16, (char *) uuid, - grub_md_to_cpu32 (sb->raid_disks), buf, - (sb->size) ? ((grub_disk_addr_t) - grub_md_to_cpu32 (sb->size)) * 2 - : sector, - grub_md_to_cpu32 (sb->chunk_size) >> 9, - grub_md_to_cpu32 (sb->layout), - level); - grub_free (sb); - return ret; - - fail: - grub_free (sb); - return NULL; -} - -static struct grub_diskfilter grub_mdraid_dev = { -#ifdef MODE_BIGENDIAN - .name = "mdraid09_be", -#else - .name = "mdraid09", -#endif - .detect = grub_mdraid_detect, - .next = 0 -}; - -#ifdef MODE_BIGENDIAN -GRUB_MOD_INIT (mdraid09_be) -#else -GRUB_MOD_INIT (mdraid09) -#endif -{ - grub_diskfilter_register_front (&grub_mdraid_dev); -} - -#ifdef MODE_BIGENDIAN -GRUB_MOD_FINI (mdraid09_be) -#else -GRUB_MOD_FINI (mdraid09) -#endif -{ - grub_diskfilter_unregister (&grub_mdraid_dev); -} diff --git a/thirdparty/grub-2.04/grub-core/disk/mdraid_linux_be.c b/thirdparty/grub-2.04/grub-core/disk/mdraid_linux_be.c deleted file mode 100644 index 539bcf469..000000000 --- a/thirdparty/grub-2.04/grub-core/disk/mdraid_linux_be.c +++ /dev/null @@ -1,2 +0,0 @@ -#define MODE_BIGENDIAN 1 -#include "mdraid_linux.c" diff --git a/thirdparty/grub-2.04/grub-core/disk/memdisk.c b/thirdparty/grub-2.04/grub-core/disk/memdisk.c deleted file mode 100644 index 613779cf3..000000000 --- a/thirdparty/grub-2.04/grub-core/disk/memdisk.c +++ /dev/null @@ -1,116 +0,0 @@ -/* memdisk.c - Access embedded memory disk. */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2007,2008 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -static char *memdisk_addr; -static grub_off_t memdisk_size = 0; - -static int -grub_memdisk_iterate (grub_disk_dev_iterate_hook_t hook, void *hook_data, - grub_disk_pull_t pull) -{ - if (pull != GRUB_DISK_PULL_NONE) - return 0; - - return hook ("memdisk", hook_data); -} - -static grub_err_t -grub_memdisk_open (const char *name, grub_disk_t disk) -{ - if (grub_strcmp (name, "memdisk")) - return grub_error (GRUB_ERR_UNKNOWN_DEVICE, "not a memdisk"); - - disk->total_sectors = memdisk_size / GRUB_DISK_SECTOR_SIZE; - disk->max_agglomerate = GRUB_DISK_MAX_MAX_AGGLOMERATE; - disk->id = 0; - - return GRUB_ERR_NONE; -} - -static void -grub_memdisk_close (grub_disk_t disk __attribute((unused))) -{ -} - -static grub_err_t -grub_memdisk_read (grub_disk_t disk __attribute((unused)), grub_disk_addr_t sector, - grub_size_t size, char *buf) -{ - grub_memcpy (buf, memdisk_addr + (sector << GRUB_DISK_SECTOR_BITS), size << GRUB_DISK_SECTOR_BITS); - return 0; -} - -static grub_err_t -grub_memdisk_write (grub_disk_t disk __attribute((unused)), grub_disk_addr_t sector, - grub_size_t size, const char *buf) -{ - grub_memcpy (memdisk_addr + (sector << GRUB_DISK_SECTOR_BITS), buf, size << GRUB_DISK_SECTOR_BITS); - return 0; -} - -static struct grub_disk_dev grub_memdisk_dev = - { - .name = "memdisk", - .id = GRUB_DISK_DEVICE_MEMDISK_ID, - .disk_iterate = grub_memdisk_iterate, - .disk_open = grub_memdisk_open, - .disk_close = grub_memdisk_close, - .disk_read = grub_memdisk_read, - .disk_write = grub_memdisk_write, - .next = 0 - }; - -GRUB_MOD_INIT(memdisk) -{ - struct grub_module_header *header; - FOR_MODULES (header) - if (header->type == OBJ_TYPE_MEMDISK) - { - char *memdisk_orig_addr; - memdisk_orig_addr = (char *) header + sizeof (struct grub_module_header); - - grub_dprintf ("memdisk", "Found memdisk image at %p\n", memdisk_orig_addr); - - memdisk_size = header->size - sizeof (struct grub_module_header); - memdisk_addr = grub_malloc (memdisk_size); - - grub_dprintf ("memdisk", "Copying memdisk image to dynamic memory\n"); - grub_memmove (memdisk_addr, memdisk_orig_addr, memdisk_size); - - grub_disk_dev_register (&grub_memdisk_dev); - break; - } -} - -GRUB_MOD_FINI(memdisk) -{ - if (! memdisk_size) - return; - grub_free (memdisk_addr); - grub_disk_dev_unregister (&grub_memdisk_dev); -} diff --git a/thirdparty/grub-2.04/grub-core/disk/pata.c b/thirdparty/grub-2.04/grub-core/disk/pata.c deleted file mode 100644 index 23eef2be1..000000000 --- a/thirdparty/grub-2.04/grub-core/disk/pata.c +++ /dev/null @@ -1,550 +0,0 @@ -/* ata_pthru.c - ATA pass through for ata.mod. */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#ifndef GRUB_MACHINE_MIPS_QEMU_MIPS -#include -#include -#else -#define GRUB_MACHINE_PCI_IO_BASE 0xb4000000 -#endif -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -/* At the moment, only two IDE ports are supported. */ -static const grub_port_t grub_pata_ioaddress[] = { GRUB_ATA_CH0_PORT1, - GRUB_ATA_CH1_PORT1 }; - -struct grub_pata_device -{ - /* IDE port to use. */ - int port; - - /* IO addresses on which the registers for this device can be - found. */ - grub_port_t ioaddress; - - /* Two devices can be connected to a single cable. Use this field - to select device 0 (commonly known as "master") or device 1 - (commonly known as "slave"). */ - int device; - - int present; - - struct grub_pata_device *next; -}; - -static struct grub_pata_device *grub_pata_devices; - -static inline void -grub_pata_regset (struct grub_pata_device *dev, int reg, int val) -{ - grub_outb (val, dev->ioaddress + reg); -} - -static inline grub_uint8_t -grub_pata_regget (struct grub_pata_device *dev, int reg) -{ - return grub_inb (dev->ioaddress + reg); -} - -/* Wait for !BSY. */ -static grub_err_t -grub_pata_wait_not_busy (struct grub_pata_device *dev, int milliseconds) -{ - /* ATA requires 400ns (after a write to CMD register) or - 1 PIO cycle (after a DRQ block transfer) before - first check of BSY. */ - grub_millisleep (1); - - int i = 1; - grub_uint8_t sts; - while ((sts = grub_pata_regget (dev, GRUB_ATA_REG_STATUS)) - & GRUB_ATA_STATUS_BUSY) - { - if (i >= milliseconds) - { - grub_dprintf ("pata", "timeout: %dms, status=0x%x\n", - milliseconds, sts); - return grub_error (GRUB_ERR_TIMEOUT, "PATA timeout"); - } - - grub_millisleep (1); - i++; - } - - return GRUB_ERR_NONE; -} - -static inline grub_err_t -grub_pata_check_ready (struct grub_pata_device *dev, int spinup) -{ - if (grub_pata_regget (dev, GRUB_ATA_REG_STATUS) & GRUB_ATA_STATUS_BUSY) - return grub_pata_wait_not_busy (dev, spinup ? GRUB_ATA_TOUT_SPINUP - : GRUB_ATA_TOUT_STD); - - return GRUB_ERR_NONE; -} - -static inline void -grub_pata_wait (void) -{ - grub_millisleep (50); -} - -#ifdef GRUB_MACHINE_MIPS_QEMU_MIPS -#define grub_ata_to_cpu16(x) ((grub_uint16_t) (x)) -#define grub_cpu_to_ata16(x) ((grub_uint16_t) (x)) -#else -#define grub_ata_to_cpu16 grub_le_to_cpu16 -#define grub_cpu_to_ata16 grub_cpu_to_le16 -#endif - -static void -grub_pata_pio_read (struct grub_pata_device *dev, char *buf, grub_size_t size) -{ - unsigned int i; - - /* Read in the data, word by word. */ - for (i = 0; i < size / 2; i++) - grub_set_unaligned16 (buf + 2 * i, - grub_ata_to_cpu16 (grub_inw(dev->ioaddress - + GRUB_ATA_REG_DATA))); - if (size & 1) - buf[size - 1] = (char) grub_ata_to_cpu16 (grub_inw (dev->ioaddress - + GRUB_ATA_REG_DATA)); -} - -static void -grub_pata_pio_write (struct grub_pata_device *dev, char *buf, grub_size_t size) -{ - unsigned int i; - - /* Write the data, word by word. */ - for (i = 0; i < size / 2; i++) - grub_outw(grub_cpu_to_ata16 (grub_get_unaligned16 (buf + 2 * i)), dev->ioaddress + GRUB_ATA_REG_DATA); -} - -/* ATA pass through support, used by hdparm.mod. */ -static grub_err_t -grub_pata_readwrite (struct grub_ata *disk, - struct grub_disk_ata_pass_through_parms *parms, - int spinup) -{ - struct grub_pata_device *dev = (struct grub_pata_device *) disk->data; - grub_size_t nread = 0; - int i; - - if (! (parms->cmdsize == 0 || parms->cmdsize == 12)) - return grub_error (GRUB_ERR_NOT_IMPLEMENTED_YET, - "ATAPI non-12 byte commands not supported"); - - grub_dprintf ("pata", "pata_pass_through: cmd=0x%x, features=0x%x, sectors=0x%x\n", - parms->taskfile.cmd, - parms->taskfile.features, - parms->taskfile.sectors); - grub_dprintf ("pata", "lba_high=0x%x, lba_mid=0x%x, lba_low=0x%x, size=%" - PRIuGRUB_SIZE "\n", - parms->taskfile.lba_high, - parms->taskfile.lba_mid, - parms->taskfile.lba_low, parms->size); - - /* Set registers. */ - grub_pata_regset (dev, GRUB_ATA_REG_DISK, (dev->device << 4) - | (parms->taskfile.disk & 0xef)); - if (grub_pata_check_ready (dev, spinup)) - return grub_errno; - - for (i = GRUB_ATA_REG_SECTORS; i <= GRUB_ATA_REG_LBAHIGH; i++) - grub_pata_regset (dev, i, - parms->taskfile.raw[7 + (i - GRUB_ATA_REG_SECTORS)]); - for (i = GRUB_ATA_REG_FEATURES; i <= GRUB_ATA_REG_LBAHIGH; i++) - grub_pata_regset (dev, i, parms->taskfile.raw[i - GRUB_ATA_REG_FEATURES]); - - /* Start command. */ - grub_pata_regset (dev, GRUB_ATA_REG_CMD, parms->taskfile.cmd); - - /* Wait for !BSY. */ - if (grub_pata_wait_not_busy (dev, GRUB_ATA_TOUT_DATA)) - return grub_errno; - - /* Check status. */ - grub_int8_t sts = grub_pata_regget (dev, GRUB_ATA_REG_STATUS); - grub_dprintf ("pata", "status=0x%x\n", sts); - - if (parms->cmdsize) - { - grub_uint8_t irs; - /* Wait for !BSY. */ - if (grub_pata_wait_not_busy (dev, GRUB_ATA_TOUT_DATA)) - return grub_errno; - - irs = grub_pata_regget (dev, GRUB_ATAPI_REG_IREASON); - /* OK if DRQ is asserted and interrupt reason is as expected. */ - if (!((sts & GRUB_ATA_STATUS_DRQ) - && (irs & GRUB_ATAPI_IREASON_MASK) == GRUB_ATAPI_IREASON_CMD_OUT)) - return grub_error (GRUB_ERR_READ_ERROR, "ATAPI protocol error"); - /* Write the packet. */ - grub_pata_pio_write (dev, parms->cmd, parms->cmdsize); - } - - /* Transfer data. */ - while (nread < parms->size - && (sts & (GRUB_ATA_STATUS_DRQ | GRUB_ATA_STATUS_ERR)) - == GRUB_ATA_STATUS_DRQ) - { - unsigned cnt; - - /* Wait for !BSY. */ - if (grub_pata_wait_not_busy (dev, GRUB_ATA_TOUT_DATA)) - return grub_errno; - - if (parms->cmdsize) - { - if ((grub_pata_regget (dev, GRUB_ATAPI_REG_IREASON) - & GRUB_ATAPI_IREASON_MASK) != GRUB_ATAPI_IREASON_DATA_IN) - return grub_error (GRUB_ERR_READ_ERROR, "ATAPI protocol error"); - - cnt = grub_pata_regget (dev, GRUB_ATAPI_REG_CNTHIGH) << 8 - | grub_pata_regget (dev, GRUB_ATAPI_REG_CNTLOW); - grub_dprintf("pata", "DRQ count=%u\n", cnt); - - /* Count of last transfer may be uneven. */ - if (! (0 < cnt && cnt <= parms->size - nread - && (! (cnt & 1) || cnt == parms->size - nread))) - return grub_error (GRUB_ERR_READ_ERROR, - "invalid ATAPI transfer count"); - } - else - cnt = GRUB_DISK_SECTOR_SIZE; - if (cnt > parms->size - nread) - cnt = parms->size - nread; - - if (parms->write) - grub_pata_pio_write (dev, (char *) parms->buffer + nread, cnt); - else - grub_pata_pio_read (dev, (char *) parms->buffer + nread, cnt); - - nread += cnt; - } - if (parms->write) - { - /* Check for write error. */ - if (grub_pata_wait_not_busy (dev, GRUB_ATA_TOUT_DATA)) - return grub_errno; - - if (grub_pata_regget (dev, GRUB_ATA_REG_STATUS) - & (GRUB_ATA_STATUS_DRQ | GRUB_ATA_STATUS_ERR)) - return grub_error (GRUB_ERR_WRITE_ERROR, "ATA write error"); - } - parms->size = nread; - - /* Wait for !BSY. */ - if (grub_pata_wait_not_busy (dev, GRUB_ATA_TOUT_DATA)) - return grub_errno; - - /* Return registers. */ - for (i = GRUB_ATA_REG_ERROR; i <= GRUB_ATA_REG_STATUS; i++) - parms->taskfile.raw[i - GRUB_ATA_REG_FEATURES] = grub_pata_regget (dev, i); - - grub_dprintf ("pata", "status=0x%x, error=0x%x, sectors=0x%x\n", - parms->taskfile.status, - parms->taskfile.error, - parms->taskfile.sectors); - - if (parms->taskfile.status - & (GRUB_ATA_STATUS_DRQ | GRUB_ATA_STATUS_ERR)) - return grub_error (GRUB_ERR_READ_ERROR, "PATA passthrough failed"); - - return GRUB_ERR_NONE; -} - -static grub_err_t -check_device (struct grub_pata_device *dev) -{ - grub_pata_regset (dev, GRUB_ATA_REG_DISK, dev->device << 4); - grub_pata_wait (); - - /* Try to detect if the port is in use by writing to it, - waiting for a while and reading it again. If the value - was preserved, there is a device connected. */ - grub_pata_regset (dev, GRUB_ATA_REG_SECTORS, 0x5A); - grub_pata_wait (); - grub_uint8_t sec = grub_pata_regget (dev, GRUB_ATA_REG_SECTORS); - grub_dprintf ("ata", "sectors=0x%x\n", sec); - if (sec != 0x5A) - return grub_error (GRUB_ERR_UNKNOWN_DEVICE, "no device connected"); - - /* The above test may detect a second (slave) device - connected to a SATA controller which supports only one - (master) device. It is not safe to use the status register - READY bit to check for controller channel existence. Some - ATAPI commands (RESET, DIAGNOSTIC) may clear this bit. */ - - return GRUB_ERR_NONE; -} - -static grub_err_t -grub_pata_device_initialize (int port, int device, int addr) -{ - struct grub_pata_device *dev; - struct grub_pata_device **devp; - grub_err_t err; - - grub_dprintf ("pata", "detecting device %d,%d (0x%x)\n", - port, device, addr); - - dev = grub_malloc (sizeof(*dev)); - if (! dev) - return grub_errno; - - /* Setup the device information. */ - dev->port = port; - dev->device = device; - dev->ioaddress = addr + GRUB_MACHINE_PCI_IO_BASE; - dev->present = 1; - dev->next = NULL; - - /* Register the device. */ - for (devp = &grub_pata_devices; *devp; devp = &(*devp)->next); - *devp = dev; - - err = check_device (dev); - if (err) - grub_print_error (); - - return 0; -} - -#ifndef GRUB_MACHINE_MIPS_QEMU_MIPS -static int -grub_pata_pciinit (grub_pci_device_t dev, - grub_pci_id_t pciid, - void *data __attribute__ ((unused))) -{ - static int compat_use[2] = { 0 }; - grub_pci_address_t addr; - grub_uint32_t class; - grub_uint32_t bar1; - grub_uint32_t bar2; - int rega; - int i; - static int controller = 0; - int cs5536 = 0; - int nports = 2; - - /* Read class. */ - addr = grub_pci_make_address (dev, GRUB_PCI_REG_CLASS); - class = grub_pci_read (addr); - - /* AMD CS5536 Southbridge. */ - if (pciid == GRUB_CS5536_PCIID) - { - cs5536 = 1; - nports = 1; - } - - /* Check if this class ID matches that of a PCI IDE Controller. */ - if (!cs5536 && (class >> 16 != 0x0101)) - return 0; - - for (i = 0; i < nports; i++) - { - /* Set to 0 when the channel operated in compatibility mode. */ - int compat; - - /* We don't support non-compatibility mode for CS5536. */ - if (cs5536) - compat = 0; - else - compat = (class >> (8 + 2 * i)) & 1; - - rega = 0; - - /* If the channel is in compatibility mode, just assign the - default registers. */ - if (compat == 0 && !compat_use[i]) - { - rega = grub_pata_ioaddress[i]; - compat_use[i] = 1; - } - else if (compat) - { - /* Read the BARs, which either contain a mmapped IO address - or the IO port address. */ - addr = grub_pci_make_address (dev, GRUB_PCI_REG_ADDRESSES - + sizeof (grub_uint64_t) * i); - bar1 = grub_pci_read (addr); - addr = grub_pci_make_address (dev, GRUB_PCI_REG_ADDRESSES - + sizeof (grub_uint64_t) * i - + sizeof (grub_uint32_t)); - bar2 = grub_pci_read (addr); - - /* Check if the BARs describe an IO region. */ - if ((bar1 & 1) && (bar2 & 1) && (bar1 & ~3)) - { - rega = bar1 & ~3; - addr = grub_pci_make_address (dev, GRUB_PCI_REG_COMMAND); - grub_pci_write_word (addr, grub_pci_read_word (addr) - | GRUB_PCI_COMMAND_IO_ENABLED - | GRUB_PCI_COMMAND_MEM_ENABLED - | GRUB_PCI_COMMAND_BUS_MASTER); - - } - } - - grub_dprintf ("pata", - "PCI dev (%d,%d,%d) compat=%d rega=0x%x\n", - grub_pci_get_bus (dev), grub_pci_get_device (dev), - grub_pci_get_function (dev), compat, rega); - - if (rega) - { - grub_errno = GRUB_ERR_NONE; - grub_pata_device_initialize (controller * 2 + i, 0, rega); - - /* Most errors raised by grub_ata_device_initialize() are harmless. - They just indicate this particular drive is not responding, most - likely because it doesn't exist. We might want to ignore specific - error types here, instead of printing them. */ - if (grub_errno) - { - grub_print_error (); - grub_errno = GRUB_ERR_NONE; - } - - grub_pata_device_initialize (controller * 2 + i, 1, rega); - - /* Likewise. */ - if (grub_errno) - { - grub_print_error (); - grub_errno = GRUB_ERR_NONE; - } - } - } - - controller++; - - return 0; -} - -static grub_err_t -grub_pata_initialize (void) -{ - grub_pci_iterate (grub_pata_pciinit, NULL); - return 0; -} -#else -static grub_err_t -grub_pata_initialize (void) -{ - int i; - for (i = 0; i < 2; i++) - { - grub_pata_device_initialize (i, 0, grub_pata_ioaddress[i]); - grub_pata_device_initialize (i, 1, grub_pata_ioaddress[i]); - } - return 0; -} -#endif - -static grub_err_t -grub_pata_open (int id, int devnum, struct grub_ata *ata) -{ - struct grub_pata_device *dev; - struct grub_pata_device *devfnd = 0; - grub_err_t err; - - if (id != GRUB_SCSI_SUBSYSTEM_PATA) - return grub_error (GRUB_ERR_UNKNOWN_DEVICE, "not a PATA device"); - - for (dev = grub_pata_devices; dev; dev = dev->next) - { - if (dev->port * 2 + dev->device == devnum) - { - devfnd = dev; - break; - } - } - - grub_dprintf ("pata", "opening PATA dev `ata%d'\n", devnum); - - if (! devfnd) - return grub_error (GRUB_ERR_UNKNOWN_DEVICE, "no such PATA device"); - - err = check_device (devfnd); - if (err) - return err; - - ata->data = devfnd; - ata->dma = 0; - ata->maxbuffer = 256 * 512; - ata->present = &devfnd->present; - - return GRUB_ERR_NONE; -} - -static int -grub_pata_iterate (grub_ata_dev_iterate_hook_t hook, void *hook_data, - grub_disk_pull_t pull) -{ - struct grub_pata_device *dev; - - if (pull != GRUB_DISK_PULL_NONE) - return 0; - - for (dev = grub_pata_devices; dev; dev = dev->next) - if (hook (GRUB_SCSI_SUBSYSTEM_PATA, dev->port * 2 + dev->device, - hook_data)) - return 1; - - return 0; -} - - -static struct grub_ata_dev grub_pata_dev = - { - .iterate = grub_pata_iterate, - .open = grub_pata_open, - .readwrite = grub_pata_readwrite, - }; - - - - -GRUB_MOD_INIT(ata_pthru) -{ - grub_stop_disk_firmware (); - - /* ATA initialization. */ - grub_pata_initialize (); - - grub_ata_dev_register (&grub_pata_dev); -} - -GRUB_MOD_FINI(ata_pthru) -{ - grub_ata_dev_unregister (&grub_pata_dev); -} diff --git a/thirdparty/grub-2.04/grub-core/disk/raid5_recover.c b/thirdparty/grub-2.04/grub-core/disk/raid5_recover.c deleted file mode 100644 index 4ace9172e..000000000 --- a/thirdparty/grub-2.04/grub-core/disk/raid5_recover.c +++ /dev/null @@ -1,76 +0,0 @@ -/* raid5_recover.c - module to recover from faulty RAID4/5 arrays. */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2006,2007,2008 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -static grub_err_t -grub_raid5_recover (struct grub_diskfilter_segment *array, int disknr, - char *buf, grub_disk_addr_t sector, grub_size_t size) -{ - char *buf2; - int i; - - size <<= GRUB_DISK_SECTOR_BITS; - buf2 = grub_malloc (size); - if (!buf2) - return grub_errno; - - grub_memset (buf, 0, size); - - for (i = 0; i < (int) array->node_count; i++) - { - grub_err_t err; - - if (i == disknr) - continue; - - err = grub_diskfilter_read_node (&array->nodes[i], sector, - size >> GRUB_DISK_SECTOR_BITS, buf2); - - if (err) - { - grub_free (buf2); - return err; - } - - grub_crypto_xor (buf, buf, buf2, size); - } - - grub_free (buf2); - - return GRUB_ERR_NONE; -} - -GRUB_MOD_INIT(raid5rec) -{ - grub_raid5_recover_func = grub_raid5_recover; -} - -GRUB_MOD_FINI(raid5rec) -{ - grub_raid5_recover_func = 0; -} diff --git a/thirdparty/grub-2.04/grub-core/disk/raid6_recover.c b/thirdparty/grub-2.04/grub-core/disk/raid6_recover.c deleted file mode 100644 index 75fe464a4..000000000 --- a/thirdparty/grub-2.04/grub-core/disk/raid6_recover.c +++ /dev/null @@ -1,218 +0,0 @@ -/* raid6_recover.c - module to recover from faulty RAID6 arrays. */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2006,2007,2008,2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -/* x**y. */ -static grub_uint8_t powx[255 * 2]; -/* Such an s that x**s = y */ -static unsigned powx_inv[256]; -static const grub_uint8_t poly = 0x1d; - -static void -grub_raid_block_mulx (unsigned mul, char *buf, grub_size_t size) -{ - grub_size_t i; - grub_uint8_t *p; - - p = (grub_uint8_t *) buf; - for (i = 0; i < size; i++, p++) - if (*p) - *p = powx[mul + powx_inv[*p]]; -} - -static void -grub_raid6_init_table (void) -{ - unsigned i; - - grub_uint8_t cur = 1; - for (i = 0; i < 255; i++) - { - powx[i] = cur; - powx[i + 255] = cur; - powx_inv[cur] = i; - if (cur & 0x80) - cur = (cur << 1) ^ poly; - else - cur <<= 1; - } -} - -static unsigned -mod_255 (unsigned x) -{ - while (x > 0xff) - x = (x >> 8) + (x & 0xff); - if (x == 0xff) - return 0; - return x; -} - -static grub_err_t -raid6_recover_read_node (void *data, int disknr, - grub_uint64_t sector, - void *buf, grub_size_t size) -{ - struct grub_diskfilter_segment *array = data; - - return grub_diskfilter_read_node (&array->nodes[disknr], - (grub_disk_addr_t)sector, - size >> GRUB_DISK_SECTOR_BITS, buf); -} - -grub_err_t -grub_raid6_recover_gen (void *data, grub_uint64_t nstripes, int disknr, int p, - char *buf, grub_uint64_t sector, grub_size_t size, - int layout, raid_recover_read_t read_func) -{ - int i, q, pos; - int bad1 = -1, bad2 = -1; - char *pbuf = 0, *qbuf = 0; - - pbuf = grub_zalloc (size); - if (!pbuf) - goto quit; - - qbuf = grub_zalloc (size); - if (!qbuf) - goto quit; - - q = p + 1; - if (q == (int) nstripes) - q = 0; - - pos = q + 1; - if (pos == (int) nstripes) - pos = 0; - - for (i = 0; i < (int) nstripes - 2; i++) - { - int c; - if (layout & GRUB_RAID_LAYOUT_MUL_FROM_POS) - c = pos; - else - c = i; - if (pos == disknr) - bad1 = c; - else - { - if (!read_func (data, pos, sector, buf, size)) - { - grub_crypto_xor (pbuf, pbuf, buf, size); - grub_raid_block_mulx (c, buf, size); - grub_crypto_xor (qbuf, qbuf, buf, size); - } - else - { - /* Too many bad devices */ - if (bad2 >= 0) - goto quit; - - bad2 = c; - grub_errno = GRUB_ERR_NONE; - } - } - - pos++; - if (pos == (int) nstripes) - pos = 0; - } - - /* Invalid disknr or p */ - if (bad1 < 0) - goto quit; - - if (bad2 < 0) - { - /* One bad device */ - if (!read_func (data, p, sector, buf, size)) - { - grub_crypto_xor (buf, buf, pbuf, size); - goto quit; - } - - grub_errno = GRUB_ERR_NONE; - if (read_func (data, q, sector, buf, size)) - goto quit; - - grub_crypto_xor (buf, buf, qbuf, size); - grub_raid_block_mulx (255 - bad1, buf, - size); - } - else - { - /* Two bad devices */ - unsigned c; - - if (read_func (data, p, sector, buf, size)) - goto quit; - - grub_crypto_xor (pbuf, pbuf, buf, size); - - if (read_func (data, q, sector, buf, size)) - goto quit; - - grub_crypto_xor (qbuf, qbuf, buf, size); - - c = mod_255((255 ^ bad1) - + (255 ^ powx_inv[(powx[bad2 + (bad1 ^ 255)] ^ 1)])); - grub_raid_block_mulx (c, qbuf, size); - - c = mod_255((unsigned) bad2 + c); - grub_raid_block_mulx (c, pbuf, size); - - grub_crypto_xor (pbuf, pbuf, qbuf, size); - grub_memcpy (buf, pbuf, size); - } - -quit: - grub_free (pbuf); - grub_free (qbuf); - - return grub_errno; -} - -static grub_err_t -grub_raid6_recover (struct grub_diskfilter_segment *array, int disknr, int p, - char *buf, grub_disk_addr_t sector, grub_size_t size) -{ - return grub_raid6_recover_gen (array, array->node_count, disknr, p, buf, - sector, size << GRUB_DISK_SECTOR_BITS, - array->layout, raid6_recover_read_node); -} - -GRUB_MOD_INIT(raid6rec) -{ - grub_raid6_init_table (); - grub_raid6_recover_func = grub_raid6_recover; -} - -GRUB_MOD_FINI(raid6rec) -{ - grub_raid6_recover_func = 0; -} diff --git a/thirdparty/grub-2.04/grub-core/disk/scsi.c b/thirdparty/grub-2.04/grub-core/disk/scsi.c deleted file mode 100644 index 70767cf00..000000000 --- a/thirdparty/grub-2.04/grub-core/disk/scsi.c +++ /dev/null @@ -1,766 +0,0 @@ -/* scsi.c - scsi support. */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2008,2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - - -static grub_scsi_dev_t grub_scsi_dev_list; - -const char grub_scsi_names[GRUB_SCSI_NUM_SUBSYSTEMS][5] = { - [GRUB_SCSI_SUBSYSTEM_USBMS] = "usb", - [GRUB_SCSI_SUBSYSTEM_PATA] = "ata", - [GRUB_SCSI_SUBSYSTEM_AHCI] = "ahci" -}; - -void -grub_scsi_dev_register (grub_scsi_dev_t dev) -{ - dev->next = grub_scsi_dev_list; - grub_scsi_dev_list = dev; -} - -void -grub_scsi_dev_unregister (grub_scsi_dev_t dev) -{ - grub_scsi_dev_t *p, q; - - for (p = &grub_scsi_dev_list, q = *p; q; p = &(q->next), q = q->next) - if (q == dev) - { - *p = q->next; - break; - } -} - - -/* Check result of previous operation. */ -static grub_err_t -grub_scsi_request_sense (grub_scsi_t scsi) -{ - struct grub_scsi_request_sense rs; - struct grub_scsi_request_sense_data rsd; - grub_err_t err; - - rs.opcode = grub_scsi_cmd_request_sense; - rs.lun = scsi->lun << GRUB_SCSI_LUN_SHIFT; - rs.reserved1 = 0; - rs.reserved2 = 0; - rs.alloc_length = 0x12; /* XXX: Hardcoded for now */ - rs.control = 0; - grub_memset (rs.pad, 0, sizeof(rs.pad)); - - err = scsi->dev->read (scsi, sizeof (rs), (char *) &rs, - sizeof (rsd), (char *) &rsd); - if (err) - return err; - - return GRUB_ERR_NONE; -} -/* Self commenting... */ -static grub_err_t -grub_scsi_test_unit_ready (grub_scsi_t scsi) -{ - struct grub_scsi_test_unit_ready tur; - grub_err_t err; - grub_err_t err_sense; - - tur.opcode = grub_scsi_cmd_test_unit_ready; - tur.lun = scsi->lun << GRUB_SCSI_LUN_SHIFT; - tur.reserved1 = 0; - tur.reserved2 = 0; - tur.reserved3 = 0; - tur.control = 0; - grub_memset (tur.pad, 0, sizeof(tur.pad)); - - err = scsi->dev->read (scsi, sizeof (tur), (char *) &tur, - 0, NULL); - - /* Each SCSI command should be followed by Request Sense. - If not so, many devices STALLs or definitely freezes. */ - err_sense = grub_scsi_request_sense (scsi); - if (err_sense != GRUB_ERR_NONE) - grub_errno = err; - /* err_sense is ignored for now and Request Sense Data also... */ - - if (err) - return err; - - return GRUB_ERR_NONE; -} - -/* Determine if the device is removable and the type of the device - SCSI. */ -static grub_err_t -grub_scsi_inquiry (grub_scsi_t scsi) -{ - struct grub_scsi_inquiry iq; - struct grub_scsi_inquiry_data iqd; - grub_err_t err; - grub_err_t err_sense; - - iq.opcode = grub_scsi_cmd_inquiry; - iq.lun = scsi->lun << GRUB_SCSI_LUN_SHIFT; - iq.page = 0; - iq.reserved = 0; - iq.alloc_length = 0x24; /* XXX: Hardcoded for now */ - iq.control = 0; - grub_memset (iq.pad, 0, sizeof(iq.pad)); - - err = scsi->dev->read (scsi, sizeof (iq), (char *) &iq, - sizeof (iqd), (char *) &iqd); - - /* Each SCSI command should be followed by Request Sense. - If not so, many devices STALLs or definitely freezes. */ - err_sense = grub_scsi_request_sense (scsi); - if (err_sense != GRUB_ERR_NONE) - grub_errno = err; - /* err_sense is ignored for now and Request Sense Data also... */ - - if (err) - return err; - - scsi->devtype = iqd.devtype & GRUB_SCSI_DEVTYPE_MASK; - scsi->removable = iqd.rmb >> GRUB_SCSI_REMOVABLE_BIT; - - return GRUB_ERR_NONE; -} - -/* Read the capacity and block size of SCSI. */ -static grub_err_t -grub_scsi_read_capacity10 (grub_scsi_t scsi) -{ - struct grub_scsi_read_capacity10 rc; - struct grub_scsi_read_capacity10_data rcd; - grub_err_t err; - grub_err_t err_sense; - - rc.opcode = grub_scsi_cmd_read_capacity10; - rc.lun = scsi->lun << GRUB_SCSI_LUN_SHIFT; - rc.logical_block_addr = 0; - rc.reserved1 = 0; - rc.reserved2 = 0; - rc.PMI = 0; - rc.control = 0; - rc.pad = 0; - - err = scsi->dev->read (scsi, sizeof (rc), (char *) &rc, - sizeof (rcd), (char *) &rcd); - - /* Each SCSI command should be followed by Request Sense. - If not so, many devices STALLs or definitely freezes. */ - err_sense = grub_scsi_request_sense (scsi); - if (err_sense != GRUB_ERR_NONE) - grub_errno = err; -/* err_sense is ignored for now and Request Sense Data also... */ - - if (err) - return err; - - scsi->last_block = grub_be_to_cpu32 (rcd.last_block); - scsi->blocksize = grub_be_to_cpu32 (rcd.blocksize); - - return GRUB_ERR_NONE; -} - -/* Read the capacity and block size of SCSI. */ -static grub_err_t -grub_scsi_read_capacity16 (grub_scsi_t scsi) -{ - struct grub_scsi_read_capacity16 rc; - struct grub_scsi_read_capacity16_data rcd; - grub_err_t err; - grub_err_t err_sense; - - rc.opcode = grub_scsi_cmd_read_capacity16; - rc.lun = (scsi->lun << GRUB_SCSI_LUN_SHIFT) | 0x10; - rc.logical_block_addr = 0; - rc.alloc_len = grub_cpu_to_be32_compile_time (sizeof (rcd)); - rc.PMI = 0; - rc.control = 0; - - err = scsi->dev->read (scsi, sizeof (rc), (char *) &rc, - sizeof (rcd), (char *) &rcd); - - /* Each SCSI command should be followed by Request Sense. - If not so, many devices STALLs or definitely freezes. */ - err_sense = grub_scsi_request_sense (scsi); - if (err_sense != GRUB_ERR_NONE) - grub_errno = err; -/* err_sense is ignored for now and Request Sense Data also... */ - - if (err) - return err; - - scsi->last_block = grub_be_to_cpu64 (rcd.last_block); - scsi->blocksize = grub_be_to_cpu32 (rcd.blocksize); - - return GRUB_ERR_NONE; -} - -/* Send a SCSI request for DISK: read SIZE sectors starting with - sector SECTOR to BUF. */ -static grub_err_t -grub_scsi_read10 (grub_disk_t disk, grub_disk_addr_t sector, - grub_size_t size, char *buf) -{ - grub_scsi_t scsi; - struct grub_scsi_read10 rd; - grub_err_t err; - grub_err_t err_sense; - - scsi = disk->data; - - rd.opcode = grub_scsi_cmd_read10; - rd.lun = scsi->lun << GRUB_SCSI_LUN_SHIFT; - rd.lba = grub_cpu_to_be32 (sector); - rd.reserved = 0; - rd.size = grub_cpu_to_be16 (size); - rd.reserved2 = 0; - rd.pad = 0; - - err = scsi->dev->read (scsi, sizeof (rd), (char *) &rd, size * scsi->blocksize, buf); - - /* Each SCSI command should be followed by Request Sense. - If not so, many devices STALLs or definitely freezes. */ - err_sense = grub_scsi_request_sense (scsi); - if (err_sense != GRUB_ERR_NONE) - grub_errno = err; - /* err_sense is ignored for now and Request Sense Data also... */ - - return err; -} - -/* Send a SCSI request for DISK: read SIZE sectors starting with - sector SECTOR to BUF. */ -static grub_err_t -grub_scsi_read12 (grub_disk_t disk, grub_disk_addr_t sector, - grub_size_t size, char *buf) -{ - grub_scsi_t scsi; - struct grub_scsi_read12 rd; - grub_err_t err; - grub_err_t err_sense; - - scsi = disk->data; - - rd.opcode = grub_scsi_cmd_read12; - rd.lun = scsi->lun << GRUB_SCSI_LUN_SHIFT; - rd.lba = grub_cpu_to_be32 (sector); - rd.size = grub_cpu_to_be32 (size); - rd.reserved = 0; - rd.control = 0; - - err = scsi->dev->read (scsi, sizeof (rd), (char *) &rd, size * scsi->blocksize, buf); - - /* Each SCSI command should be followed by Request Sense. - If not so, many devices STALLs or definitely freezes. */ - err_sense = grub_scsi_request_sense (scsi); - if (err_sense != GRUB_ERR_NONE) - grub_errno = err; - /* err_sense is ignored for now and Request Sense Data also... */ - - return err; -} - -/* Send a SCSI request for DISK: read SIZE sectors starting with - sector SECTOR to BUF. */ -static grub_err_t -grub_scsi_read16 (grub_disk_t disk, grub_disk_addr_t sector, - grub_size_t size, char *buf) -{ - grub_scsi_t scsi; - struct grub_scsi_read16 rd; - grub_err_t err; - grub_err_t err_sense; - - scsi = disk->data; - - rd.opcode = grub_scsi_cmd_read16; - rd.lun = scsi->lun << GRUB_SCSI_LUN_SHIFT; - rd.lba = grub_cpu_to_be64 (sector); - rd.size = grub_cpu_to_be32 (size); - rd.reserved = 0; - rd.control = 0; - - err = scsi->dev->read (scsi, sizeof (rd), (char *) &rd, size * scsi->blocksize, buf); - - /* Each SCSI command should be followed by Request Sense. - If not so, many devices STALLs or definitely freezes. */ - err_sense = grub_scsi_request_sense (scsi); - if (err_sense != GRUB_ERR_NONE) - grub_errno = err; - /* err_sense is ignored for now and Request Sense Data also... */ - - return err; -} - -/* Send a SCSI request for DISK: write the data stored in BUF to SIZE - sectors starting with SECTOR. */ -static grub_err_t -grub_scsi_write10 (grub_disk_t disk, grub_disk_addr_t sector, - grub_size_t size, const char *buf) -{ - grub_scsi_t scsi; - struct grub_scsi_write10 wr; - grub_err_t err; - grub_err_t err_sense; - - scsi = disk->data; - - wr.opcode = grub_scsi_cmd_write10; - wr.lun = scsi->lun << GRUB_SCSI_LUN_SHIFT; - wr.lba = grub_cpu_to_be32 (sector); - wr.reserved = 0; - wr.size = grub_cpu_to_be16 (size); - wr.reserved2 = 0; - wr.pad = 0; - - err = scsi->dev->write (scsi, sizeof (wr), (char *) &wr, size * scsi->blocksize, buf); - - /* Each SCSI command should be followed by Request Sense. - If not so, many devices STALLs or definitely freezes. */ - err_sense = grub_scsi_request_sense (scsi); - if (err_sense != GRUB_ERR_NONE) - grub_errno = err; - /* err_sense is ignored for now and Request Sense Data also... */ - - return err; -} - -#if 0 - -/* Send a SCSI request for DISK: write the data stored in BUF to SIZE - sectors starting with SECTOR. */ -static grub_err_t -grub_scsi_write12 (grub_disk_t disk, grub_disk_addr_t sector, - grub_size_t size, char *buf) -{ - grub_scsi_t scsi; - struct grub_scsi_write12 wr; - grub_err_t err; - grub_err_t err_sense; - - scsi = disk->data; - - wr.opcode = grub_scsi_cmd_write12; - wr.lun = scsi->lun << GRUB_SCSI_LUN_SHIFT; - wr.lba = grub_cpu_to_be32 (sector); - wr.size = grub_cpu_to_be32 (size); - wr.reserved = 0; - wr.control = 0; - - err = scsi->dev->write (scsi, sizeof (wr), (char *) &wr, size * scsi->blocksize, buf); - - /* Each SCSI command should be followed by Request Sense. - If not so, many devices STALLs or definitely freezes. */ - err_sense = grub_scsi_request_sense (scsi); - if (err_sense != GRUB_ERR_NONE) - grub_errno = err; - /* err_sense is ignored for now and Request Sense Data also... */ - - return err; -} -#endif - -/* Send a SCSI request for DISK: write the data stored in BUF to SIZE - sectors starting with SECTOR. */ -static grub_err_t -grub_scsi_write16 (grub_disk_t disk, grub_disk_addr_t sector, - grub_size_t size, const char *buf) -{ - grub_scsi_t scsi; - struct grub_scsi_write16 wr; - grub_err_t err; - grub_err_t err_sense; - - scsi = disk->data; - - wr.opcode = grub_scsi_cmd_write16; - wr.lun = scsi->lun << GRUB_SCSI_LUN_SHIFT; - wr.lba = grub_cpu_to_be64 (sector); - wr.size = grub_cpu_to_be32 (size); - wr.reserved = 0; - wr.control = 0; - - err = scsi->dev->write (scsi, sizeof (wr), (char *) &wr, size * scsi->blocksize, buf); - - /* Each SCSI command should be followed by Request Sense. - If not so, many devices STALLs or definitely freezes. */ - err_sense = grub_scsi_request_sense (scsi); - if (err_sense != GRUB_ERR_NONE) - grub_errno = err; - /* err_sense is ignored for now and Request Sense Data also... */ - - return err; -} - - - -/* Context for grub_scsi_iterate. */ -struct grub_scsi_iterate_ctx -{ - grub_disk_dev_iterate_hook_t hook; - void *hook_data; -}; - -/* Helper for grub_scsi_iterate. */ -static int -scsi_iterate (int id, int bus, int luns, void *data) -{ - struct grub_scsi_iterate_ctx *ctx = data; - int i; - - /* In case of a single LUN, just return `usbX'. */ - if (luns == 1) - { - char *sname; - int ret; - sname = grub_xasprintf ("%s%d", grub_scsi_names[id], bus); - if (!sname) - return 1; - ret = ctx->hook (sname, ctx->hook_data); - grub_free (sname); - return ret; - } - - /* In case of multiple LUNs, every LUN will get a prefix to - distinguish it. */ - for (i = 0; i < luns; i++) - { - char *sname; - int ret; - sname = grub_xasprintf ("%s%d%c", grub_scsi_names[id], bus, 'a' + i); - if (!sname) - return 1; - ret = ctx->hook (sname, ctx->hook_data); - grub_free (sname); - if (ret) - return 1; - } - return 0; -} - -static int -grub_scsi_iterate (grub_disk_dev_iterate_hook_t hook, void *hook_data, - grub_disk_pull_t pull) -{ - struct grub_scsi_iterate_ctx ctx = { hook, hook_data }; - grub_scsi_dev_t p; - - for (p = grub_scsi_dev_list; p; p = p->next) - if (p->iterate && (p->iterate) (scsi_iterate, &ctx, pull)) - return 1; - - return 0; -} - -static grub_err_t -grub_scsi_open (const char *name, grub_disk_t disk) -{ - grub_scsi_dev_t p; - grub_scsi_t scsi; - grub_err_t err; - int lun, bus; - grub_uint64_t maxtime; - const char *nameend; - unsigned id; - - nameend = name + grub_strlen (name) - 1; - /* Try to detect a LUN ('a'-'z'), otherwise just use the first - LUN. */ - if (nameend >= name && *nameend >= 'a' && *nameend <= 'z') - { - lun = *nameend - 'a'; - nameend--; - } - else - lun = 0; - - while (nameend >= name && grub_isdigit (*nameend)) - nameend--; - - if (!nameend[1] || !grub_isdigit (nameend[1])) - return grub_error (GRUB_ERR_UNKNOWN_DEVICE, "not a SCSI disk"); - - bus = grub_strtoul (nameend + 1, 0, 0); - - scsi = grub_malloc (sizeof (*scsi)); - if (! scsi) - return grub_errno; - - for (id = 0; id < ARRAY_SIZE (grub_scsi_names); id++) - if (grub_strncmp (grub_scsi_names[id], name, nameend - name) == 0) - break; - - if (id == ARRAY_SIZE (grub_scsi_names)) - { - grub_free (scsi); - return grub_error (GRUB_ERR_UNKNOWN_DEVICE, "not a SCSI disk"); - } - - for (p = grub_scsi_dev_list; p; p = p->next) - { - if (p->open (id, bus, scsi)) - { - grub_errno = GRUB_ERR_NONE; - continue; - } - - disk->id = grub_make_scsi_id (id, bus, lun); - disk->data = scsi; - scsi->dev = p; - scsi->lun = lun; - scsi->bus = bus; - - grub_dprintf ("scsi", "dev opened\n"); - - err = grub_scsi_inquiry (scsi); - if (err) - { - grub_free (scsi); - grub_dprintf ("scsi", "inquiry failed\n"); - return err; - } - - grub_dprintf ("scsi", "inquiry: devtype=0x%02x removable=%d\n", - scsi->devtype, scsi->removable); - - /* Try to be conservative about the device types - supported. */ - if (scsi->devtype != grub_scsi_devtype_direct - && scsi->devtype != grub_scsi_devtype_cdrom) - { - grub_free (scsi); - return grub_error (GRUB_ERR_UNKNOWN_DEVICE, - "unknown SCSI device"); - } - - /* According to USB MS tests specification, issue Test Unit Ready - * until OK */ - maxtime = grub_get_time_ms () + 5000; /* It is safer value */ - do - { - /* Timeout is necessary - for example in case when we have - * universal card reader with more LUNs and we have only - * one card inserted (or none), so only one LUN (or none) - * will be ready - and we want not to hang... */ - if (grub_get_time_ms () > maxtime) - { - err = GRUB_ERR_READ_ERROR; - grub_free (scsi); - grub_dprintf ("scsi", "LUN is not ready - timeout\n"); - return err; - } - err = grub_scsi_test_unit_ready (scsi); - } - while (err == GRUB_ERR_READ_ERROR); - /* Reset grub_errno ! - * It is set to some error code in loop before... */ - grub_errno = GRUB_ERR_NONE; - - /* Read capacity of media */ - err = grub_scsi_read_capacity10 (scsi); - if (err) - { - grub_free (scsi); - grub_dprintf ("scsi", "READ CAPACITY10 failed\n"); - return err; - } - - if (scsi->last_block == 0xffffffff) - { - err = grub_scsi_read_capacity16 (scsi); - if (err) - { - grub_free (scsi); - grub_dprintf ("scsi", "READ CAPACITY16 failed\n"); - return err; - } - } - - disk->total_sectors = scsi->last_block + 1; - /* PATA doesn't support more than 32K reads. - Not sure about AHCI and USB. If it's confirmed that either of - them can do bigger reads reliably this value can be moved to 'scsi' - structure. */ - disk->max_agglomerate = 32768 >> (GRUB_DISK_SECTOR_BITS - + GRUB_DISK_CACHE_BITS); - - if (scsi->blocksize & (scsi->blocksize - 1) || !scsi->blocksize) - { - grub_error (GRUB_ERR_IO, "invalid sector size %d", - scsi->blocksize); - grub_free (scsi); - return grub_errno; - } - for (disk->log_sector_size = 0; - (1U << disk->log_sector_size) < scsi->blocksize; - disk->log_sector_size++); - - grub_dprintf ("scsi", "last_block=%" PRIuGRUB_UINT64_T ", blocksize=%u\n", - scsi->last_block, scsi->blocksize); - grub_dprintf ("scsi", "Disk total sectors = %llu\n", - (unsigned long long) disk->total_sectors); - - return GRUB_ERR_NONE; - } - - grub_free (scsi); - return grub_error (GRUB_ERR_UNKNOWN_DEVICE, "not a SCSI disk"); -} - -static void -grub_scsi_close (grub_disk_t disk) -{ - grub_scsi_t scsi; - - scsi = disk->data; - if (scsi->dev->close) - scsi->dev->close (scsi); - grub_free (scsi); -} - -static grub_err_t -grub_scsi_read (grub_disk_t disk, grub_disk_addr_t sector, - grub_size_t size, char *buf) -{ - grub_scsi_t scsi; - - scsi = disk->data; - - grub_err_t err; - /* Depending on the type, select a read function. */ - switch (scsi->devtype) - { - case grub_scsi_devtype_direct: - if (sector >> 32) - err = grub_scsi_read16 (disk, sector, size, buf); - else - err = grub_scsi_read10 (disk, sector, size, buf); - if (err) - return err; - break; - - case grub_scsi_devtype_cdrom: - if (sector >> 32) - err = grub_scsi_read16 (disk, sector, size, buf); - else - err = grub_scsi_read12 (disk, sector, size, buf); - if (err) - return err; - break; - } - - return GRUB_ERR_NONE; - -#if 0 /* Workaround - it works - but very slowly, from some reason - * unknown to me (specially on OHCI). Do not use it. */ - /* Split transfer requests to device sector size because */ - /* some devices are not able to transfer more than 512-1024 bytes */ - grub_err_t err = GRUB_ERR_NONE; - - for ( ; size; size--) - { - /* Depending on the type, select a read function. */ - switch (scsi->devtype) - { - case grub_scsi_devtype_direct: - err = grub_scsi_read10 (disk, sector, 1, buf); - break; - - case grub_scsi_devtype_cdrom: - err = grub_scsi_read12 (disk, sector, 1, buf); - break; - - default: /* This should not happen */ - return GRUB_ERR_READ_ERROR; - } - if (err) - return err; - sector++; - buf += scsi->blocksize; - } - - return err; -#endif -} - -static grub_err_t -grub_scsi_write (grub_disk_t disk, - grub_disk_addr_t sector, - grub_size_t size, - const char *buf) -{ - grub_scsi_t scsi; - - scsi = disk->data; - - if (scsi->devtype == grub_scsi_devtype_cdrom) - return grub_error (GRUB_ERR_IO, N_("cannot write to CD-ROM")); - - grub_err_t err; - /* Depending on the type, select a read function. */ - switch (scsi->devtype) - { - case grub_scsi_devtype_direct: - if (sector >> 32) - err = grub_scsi_write16 (disk, sector, size, buf); - else - err = grub_scsi_write10 (disk, sector, size, buf); - if (err) - return err; - break; - } - - return GRUB_ERR_NONE; -} - - -static struct grub_disk_dev grub_scsi_dev = - { - .name = "scsi", - .id = GRUB_DISK_DEVICE_SCSI_ID, - .disk_iterate = grub_scsi_iterate, - .disk_open = grub_scsi_open, - .disk_close = grub_scsi_close, - .disk_read = grub_scsi_read, - .disk_write = grub_scsi_write, - .next = 0 - }; - -GRUB_MOD_INIT(scsi) -{ - grub_disk_dev_register (&grub_scsi_dev); -} - -GRUB_MOD_FINI(scsi) -{ - grub_disk_dev_unregister (&grub_scsi_dev); -} diff --git a/thirdparty/grub-2.04/grub-core/disk/uboot/ubootdisk.c b/thirdparty/grub-2.04/grub-core/disk/uboot/ubootdisk.c deleted file mode 100644 index 2d115a94d..000000000 --- a/thirdparty/grub-2.04/grub-core/disk/uboot/ubootdisk.c +++ /dev/null @@ -1,307 +0,0 @@ -/* ubootdisk.c - disk subsystem support for U-Boot platforms */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2013 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -static struct ubootdisk_data *hd_devices; -static int hd_num; -static int hd_max; - -/* - * grub_ubootdisk_register(): - * Called for each disk device enumerated as part of U-Boot initialization - * code. - */ -grub_err_t -grub_ubootdisk_register (struct device_info *newdev) -{ - struct ubootdisk_data *d; - -#define STOR_TYPE(x) ((x) & 0x0ff0) - switch (STOR_TYPE (newdev->type)) - { - case DT_STOR_IDE: - case DT_STOR_SATA: - case DT_STOR_SCSI: - case DT_STOR_MMC: - case DT_STOR_USB: - /* hd */ - if (hd_num == hd_max) - { - int new_num; - new_num = (hd_max ? hd_max * 2 : 1); - d = grub_realloc(hd_devices, - sizeof (struct ubootdisk_data) * new_num); - if (!d) - return grub_errno; - hd_devices = d; - hd_max = new_num; - } - - d = &hd_devices[hd_num]; - hd_num++; - break; - default: - return GRUB_ERR_BAD_DEVICE; - break; - } - - d->dev = newdev; - d->cookie = newdev->cookie; - d->opencount = 0; - - return 0; -} - -/* - * uboot_disk_iterate(): - * Iterator over enumerated disk devices. - */ -static int -uboot_disk_iterate (grub_disk_dev_iterate_hook_t hook, void *hook_data, - grub_disk_pull_t pull) -{ - char buf[16]; - int count; - - switch (pull) - { - case GRUB_DISK_PULL_NONE: - /* "hd" - built-in mass-storage */ - for (count = 0 ; count < hd_num; count++) - { - grub_snprintf (buf, sizeof (buf) - 1, "hd%d", count); - grub_dprintf ("ubootdisk", "iterating %s\n", buf); - if (hook (buf, hook_data)) - return 1; - } - break; - default: - return 0; - } - - return 0; -} - -/* Helper function for uboot_disk_open. */ -static struct ubootdisk_data * -get_hd_device (int num) -{ - if (num < hd_num) - return &hd_devices[num]; - - return NULL; -} - -/* - * uboot_disk_open(): - * Opens a disk device already enumerated. - */ -static grub_err_t -uboot_disk_open (const char *name, struct grub_disk *disk) -{ - struct ubootdisk_data *d; - struct device_info *devinfo; - int num; - int retval; - - grub_dprintf ("ubootdisk", "Opening '%s'\n", name); - - num = grub_strtoul (name + 2, 0, 10); - if (grub_errno != GRUB_ERR_NONE) - { - grub_dprintf ("ubootdisk", "Opening '%s' failed, invalid number\n", - name); - goto fail; - } - - if (name[1] != 'd') - { - grub_dprintf ("ubootdisk", "Opening '%s' failed, invalid name\n", name); - goto fail; - } - - switch (name[0]) - { - case 'h': - d = get_hd_device (num); - break; - default: - goto fail; - } - - if (!d) - goto fail; - - /* - * Subsystems may call open on the same device recursively - but U-Boot - * does not deal with this. So simply keep track of number of calls and - * return success if already open. - */ - if (d->opencount > 0) - { - grub_dprintf ("ubootdisk", "(%s) already open\n", disk->name); - d->opencount++; - retval = 0; - } - else - { - retval = grub_uboot_dev_open (d->dev); - if (retval != 0) - goto fail; - d->opencount = 1; - } - - grub_dprintf ("ubootdisk", "cookie: 0x%08x\n", (grub_addr_t) d->cookie); - disk->id = (grub_addr_t) d->cookie; - - devinfo = d->dev; - - d->block_size = devinfo->di_stor.block_size; - if (d->block_size == 0) - return grub_error (GRUB_ERR_IO, "no block size"); - - for (disk->log_sector_size = 0; - (1U << disk->log_sector_size) < d->block_size; - disk->log_sector_size++); - - grub_dprintf ("ubootdisk", "(%s) blocksize=%d, log_sector_size=%d\n", - disk->name, d->block_size, disk->log_sector_size); - - if (devinfo->di_stor.block_count) - disk->total_sectors = devinfo->di_stor.block_count; - else - disk->total_sectors = GRUB_DISK_SIZE_UNKNOWN; - - disk->data = d; - - return GRUB_ERR_NONE; - -fail: - return grub_error (GRUB_ERR_UNKNOWN_DEVICE, "no such device"); -} - -static void -uboot_disk_close (struct grub_disk *disk) -{ - struct ubootdisk_data *d; - int retval; - - d = disk->data; - - /* - * In mirror of open function, keep track of number of calls to close and - * send on to U-Boot only when opencount would decrease to 0. - */ - if (d->opencount > 1) - { - grub_dprintf ("ubootdisk", "Closed (%s)\n", disk->name); - - d->opencount--; - } - else if (d->opencount == 1) - { - retval = grub_uboot_dev_close (d->dev); - d->opencount--; - grub_dprintf ("ubootdisk", "closed %s (%d)\n", disk->name, retval); - } - else - { - grub_dprintf ("ubootdisk", "device %s not open!\n", disk->name); - } -} - -/* - * uboot_disk_read(): - * Called from within disk subsystem to read a sequence of blocks into the - * disk cache. Maps directly on top of U-Boot API, only wrap in some error - * handling. - */ -static grub_err_t -uboot_disk_read (struct grub_disk *disk, - grub_disk_addr_t offset, grub_size_t numblocks, char *buf) -{ - struct ubootdisk_data *d; - grub_size_t real_size; - int retval; - - d = disk->data; - - retval = grub_uboot_dev_read (d->dev, buf, numblocks, offset, &real_size); - grub_dprintf ("ubootdisk", - "retval=%d, numblocks=%d, real_size=%llu, sector=%llu\n", - retval, numblocks, (grub_uint64_t) real_size, - (grub_uint64_t) offset); - if (retval != 0) - return grub_error (GRUB_ERR_IO, "U-Boot disk read error"); - - return GRUB_ERR_NONE; -} - -static grub_err_t -uboot_disk_write (struct grub_disk *disk, - grub_disk_addr_t offset, grub_size_t numblocks, const char *buf) -{ - struct ubootdisk_data *d; - int retval; - - d = disk->data; - - retval = grub_uboot_dev_write (d->dev, buf, numblocks, offset); - grub_dprintf ("ubootdisk", - "retval=%d, numblocks=%d, sector=%llu\n", - retval, numblocks, (grub_uint64_t) offset); - - if (retval != 0) - return grub_error (GRUB_ERR_IO, "U-Boot disk write error"); - - return GRUB_ERR_NONE; -} - -static struct grub_disk_dev grub_ubootdisk_dev = { - .name = "ubootdisk", - .id = GRUB_DISK_DEVICE_UBOOTDISK_ID, - .disk_iterate = uboot_disk_iterate, - .disk_open = uboot_disk_open, - .disk_close = uboot_disk_close, - .disk_read = uboot_disk_read, - .disk_write = uboot_disk_write, - .next = 0 -}; - -void -grub_ubootdisk_init (void) -{ - grub_disk_dev_register (&grub_ubootdisk_dev); -} - -void -grub_ubootdisk_fini (void) -{ - grub_disk_dev_unregister (&grub_ubootdisk_dev); -} diff --git a/thirdparty/grub-2.04/grub-core/disk/usbms.c b/thirdparty/grub-2.04/grub-core/disk/usbms.c deleted file mode 100644 index 380ca4c4c..000000000 --- a/thirdparty/grub-2.04/grub-core/disk/usbms.c +++ /dev/null @@ -1,660 +0,0 @@ -/* usbms.c - USB Mass Storage Support. */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2008 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -#define GRUB_USBMS_DIRECTION_BIT 7 - -/* Length of CBI command should be always 12 bytes */ -#define GRUB_USBMS_CBI_CMD_SIZE 12 -/* CBI class-specific USB request ADSC - it sends CBI (scsi) command to - * device in DATA stage */ -#define GRUB_USBMS_CBI_ADSC_REQ 0x00 - -/* The USB Mass Storage Command Block Wrapper. */ -struct grub_usbms_cbw -{ - grub_uint32_t signature; - grub_uint32_t tag; - grub_uint32_t transfer_length; - grub_uint8_t flags; - grub_uint8_t lun; - grub_uint8_t length; - grub_uint8_t cbwcb[16]; -} GRUB_PACKED; - -struct grub_usbms_csw -{ - grub_uint32_t signature; - grub_uint32_t tag; - grub_uint32_t residue; - grub_uint8_t status; -} GRUB_PACKED; - -struct grub_usbms_dev -{ - struct grub_usb_device *dev; - - int luns; - - int config; - int interface; - struct grub_usb_desc_endp *in; - struct grub_usb_desc_endp *out; - - int subclass; - int protocol; - struct grub_usb_desc_endp *intrpt; -}; -typedef struct grub_usbms_dev *grub_usbms_dev_t; - -/* FIXME: remove limit. */ -#define MAX_USBMS_DEVICES 128 -static grub_usbms_dev_t grub_usbms_devices[MAX_USBMS_DEVICES]; -static int first_available_slot = 0; - -static grub_usb_err_t -grub_usbms_cbi_cmd (grub_usb_device_t dev, int interface, - grub_uint8_t *cbicb) -{ - return grub_usb_control_msg (dev, - GRUB_USB_REQTYPE_CLASS_INTERFACE_OUT, - GRUB_USBMS_CBI_ADSC_REQ, 0, interface, - GRUB_USBMS_CBI_CMD_SIZE, (char*)cbicb); -} - -static grub_usb_err_t -grub_usbms_cbi_reset (grub_usb_device_t dev, int interface) -{ - /* Prepare array with Command Block Reset (=CBR) */ - /* CBI specific communication reset command should be send to device - * via CBI USB class specific request ADCS */ - struct grub_cbi_reset - { - grub_uint8_t opcode; /* 0x1d = SEND DIAGNOSTIC */ - grub_uint8_t lun; /* 7-5 LUN, 4-0 flags - for CBR always = 0x04 */ - grub_uint8_t pad[10]; - /* XXX: There is collision between CBI and UFI specifications: - * CBI says 0xff, UFI says 0x00 ... probably it does - * not matter ... (?) */ - } cbicb = { 0x1d, 0x04, - { 0xff, 0xff, 0xff, 0xff, 0xff, - 0xff, 0xff, 0xff, 0xff, 0xff } - }; - - return grub_usbms_cbi_cmd (dev, interface, (grub_uint8_t *)&cbicb); -} - -static grub_usb_err_t -grub_usbms_bo_reset (grub_usb_device_t dev, int interface) -{ - return grub_usb_control_msg (dev, 0x21, 255, 0, interface, 0, 0); -} - -static grub_usb_err_t -grub_usbms_reset (grub_usbms_dev_t dev) -{ - if (dev->protocol == GRUB_USBMS_PROTOCOL_BULK) - return grub_usbms_bo_reset (dev->dev, dev->interface); - else - return grub_usbms_cbi_reset (dev->dev, dev->interface); -} - -static void -grub_usbms_detach (grub_usb_device_t usbdev, int config, int interface) -{ - unsigned i; - for (i = 0; i < ARRAY_SIZE (grub_usbms_devices); i++) - if (grub_usbms_devices[i] && grub_usbms_devices[i]->dev == usbdev - && grub_usbms_devices[i]->interface == interface - && grub_usbms_devices[i]->config == config) - { - grub_free (grub_usbms_devices[i]); - grub_usbms_devices[i] = 0; - } -} - -static int -grub_usbms_attach (grub_usb_device_t usbdev, int configno, int interfno) -{ - struct grub_usb_desc_if *interf - = usbdev->config[configno].interf[interfno].descif; - int j; - grub_uint8_t luns = 0; - unsigned curnum; - grub_usb_err_t err = GRUB_USB_ERR_NONE; - - grub_boot_time ("Attaching USB mass storage"); - - if (first_available_slot == ARRAY_SIZE (grub_usbms_devices)) - return 0; - - curnum = first_available_slot; - first_available_slot++; - - interf = usbdev->config[configno].interf[interfno].descif; - - if ((interf->subclass != GRUB_USBMS_SUBCLASS_BULK - /* Experimental support of RBC, MMC-2, UFI, SFF-8070i devices */ - && interf->subclass != GRUB_USBMS_SUBCLASS_RBC - && interf->subclass != GRUB_USBMS_SUBCLASS_MMC2 - && interf->subclass != GRUB_USBMS_SUBCLASS_UFI - && interf->subclass != GRUB_USBMS_SUBCLASS_SFF8070 ) - || (interf->protocol != GRUB_USBMS_PROTOCOL_BULK - && interf->protocol != GRUB_USBMS_PROTOCOL_CBI - && interf->protocol != GRUB_USBMS_PROTOCOL_CB)) - return 0; - - grub_usbms_devices[curnum] = grub_zalloc (sizeof (struct grub_usbms_dev)); - if (! grub_usbms_devices[curnum]) - return 0; - - grub_usbms_devices[curnum]->dev = usbdev; - grub_usbms_devices[curnum]->interface = interfno; - grub_usbms_devices[curnum]->subclass = interf->subclass; - grub_usbms_devices[curnum]->protocol = interf->protocol; - - grub_dprintf ("usbms", "alive\n"); - - /* Iterate over all endpoints of this interface, at least a - IN and OUT bulk endpoint are required. */ - for (j = 0; j < interf->endpointcnt; j++) - { - struct grub_usb_desc_endp *endp; - endp = &usbdev->config[0].interf[interfno].descendp[j]; - - if ((endp->endp_addr & 128) && (endp->attrib & 3) == 2) - /* Bulk IN endpoint. */ - grub_usbms_devices[curnum]->in = endp; - else if (!(endp->endp_addr & 128) && (endp->attrib & 3) == 2) - /* Bulk OUT endpoint. */ - grub_usbms_devices[curnum]->out = endp; - else if ((endp->endp_addr & 128) && (endp->attrib & 3) == 3) - /* Interrupt (IN) endpoint. */ - grub_usbms_devices[curnum]->intrpt = endp; - } - - if (!grub_usbms_devices[curnum]->in || !grub_usbms_devices[curnum]->out - || ((grub_usbms_devices[curnum]->protocol == GRUB_USBMS_PROTOCOL_CBI) - && !grub_usbms_devices[curnum]->intrpt)) - { - grub_free (grub_usbms_devices[curnum]); - grub_usbms_devices[curnum] = 0; - return 0; - } - - grub_dprintf ("usbms", "alive\n"); - - /* XXX: Activate the first configuration. */ - grub_usb_set_configuration (usbdev, 1); - - /* Query the amount of LUNs. */ - if (grub_usbms_devices[curnum]->protocol == GRUB_USBMS_PROTOCOL_BULK) - { /* Only Bulk only devices support Get Max LUN command */ - err = grub_usb_control_msg (usbdev, 0xA1, 254, 0, interfno, 1, (char *) &luns); - - if (err) - { - /* In case of a stall, clear the stall. */ - if (err == GRUB_USB_ERR_STALL) - { - grub_usb_clear_halt (usbdev, grub_usbms_devices[curnum]->in->endp_addr); - grub_usb_clear_halt (usbdev, grub_usbms_devices[curnum]->out->endp_addr); - } - /* Just set the amount of LUNs to one. */ - grub_errno = GRUB_ERR_NONE; - grub_usbms_devices[curnum]->luns = 1; - } - else - /* luns = 0 means one LUN with ID 0 present ! */ - /* We get from device not number of LUNs but highest - * LUN number. LUNs are numbered from 0, - * i.e. number of LUNs is luns+1 ! */ - grub_usbms_devices[curnum]->luns = luns + 1; - } - else - /* XXX: Does CBI devices support multiple LUNs ? - * I.e., should we detect number of device's LUNs ? (How?) */ - grub_usbms_devices[curnum]->luns = 1; - - grub_dprintf ("usbms", "alive\n"); - - usbdev->config[configno].interf[interfno].detach_hook = grub_usbms_detach; - - grub_boot_time ("Attached USB mass storage"); - -#if 0 /* All this part should be probably deleted. - * This make trouble on some devices if they are not in - * Phase Error state - and there they should be not in such state... - * Bulk only mass storage reset procedure should be used only - * on place and in time when it is really necessary. */ - /* Reset recovery procedure */ - /* Bulk-Only Mass Storage Reset, after the reset commands - will be accepted. */ - grub_usbms_reset (usbdev, i); - grub_usb_clear_halt (usbdev, usbms->in->endp_addr); - grub_usb_clear_halt (usbdev, usbms->out->endp_addr); -#endif - - return 1; -} - - - -static int -grub_usbms_iterate (grub_scsi_dev_iterate_hook_t hook, void *hook_data, - grub_disk_pull_t pull) -{ - unsigned i; - - if (pull != GRUB_DISK_PULL_NONE) - return 0; - - grub_usb_poll_devices (1); - - for (i = 0; i < ARRAY_SIZE (grub_usbms_devices); i++) - if (grub_usbms_devices[i]) - { - if (hook (GRUB_SCSI_SUBSYSTEM_USBMS, i, grub_usbms_devices[i]->luns, - hook_data)) - return 1; - } - - return 0; -} - -static grub_err_t -grub_usbms_transfer_bo (struct grub_scsi *scsi, grub_size_t cmdsize, char *cmd, - grub_size_t size, char *buf, int read_write) -{ - struct grub_usbms_cbw cbw; - grub_usbms_dev_t dev = (grub_usbms_dev_t) scsi->data; - struct grub_usbms_csw status; - static grub_uint32_t tag = 0; - grub_usb_err_t err = GRUB_USB_ERR_NONE; - grub_usb_err_t errCSW = GRUB_USB_ERR_NONE; - int retrycnt = 3 + 1; - - tag++; - - retry: - retrycnt--; - if (retrycnt == 0) - return grub_error (GRUB_ERR_IO, "USB Mass Storage stalled"); - - /* Setup the request. */ - grub_memset (&cbw, 0, sizeof (cbw)); - cbw.signature = grub_cpu_to_le32_compile_time (0x43425355); - cbw.tag = tag; - cbw.transfer_length = grub_cpu_to_le32 (size); - cbw.flags = (!read_write) << GRUB_USBMS_DIRECTION_BIT; - cbw.lun = scsi->lun; /* In USB MS CBW are LUN bits on another place than in SCSI CDB, both should be set correctly. */ - cbw.length = cmdsize; - grub_memcpy (cbw.cbwcb, cmd, cmdsize); - - /* Debug print of CBW content. */ - grub_dprintf ("usb", "CBW: sign=0x%08x tag=0x%08x len=0x%08x\n", - cbw.signature, cbw.tag, cbw.transfer_length); - grub_dprintf ("usb", "CBW: flags=0x%02x lun=0x%02x CB_len=0x%02x\n", - cbw.flags, cbw.lun, cbw.length); - grub_dprintf ("usb", "CBW: cmd:\n %02x %02x %02x %02x %02x %02x %02x %02x %02x %02x %02x %02x %02x %02x %02x %02x\n", - cbw.cbwcb[ 0], cbw.cbwcb[ 1], cbw.cbwcb[ 2], cbw.cbwcb[ 3], - cbw.cbwcb[ 4], cbw.cbwcb[ 5], cbw.cbwcb[ 6], cbw.cbwcb[ 7], - cbw.cbwcb[ 8], cbw.cbwcb[ 9], cbw.cbwcb[10], cbw.cbwcb[11], - cbw.cbwcb[12], cbw.cbwcb[13], cbw.cbwcb[14], cbw.cbwcb[15]); - - /* Write the request. - * XXX: Error recovery is maybe still not fully correct. */ - err = grub_usb_bulk_write (dev->dev, dev->out, - sizeof (cbw), (char *) &cbw); - if (err) - { - if (err == GRUB_USB_ERR_STALL) - { - grub_usb_clear_halt (dev->dev, dev->out->endp_addr); - goto CheckCSW; - } - goto retry; - } - - /* Read/write the data, (maybe) according to specification. */ - if (size && (read_write == 0)) - { - err = grub_usb_bulk_read (dev->dev, dev->in, size, buf); - grub_dprintf ("usb", "read: %d %d\n", err, GRUB_USB_ERR_STALL); - if (err) - { - if (err == GRUB_USB_ERR_STALL) - grub_usb_clear_halt (dev->dev, dev->in->endp_addr); - goto CheckCSW; - } - /* Debug print of received data. */ - grub_dprintf ("usb", "buf:\n"); - if (size <= 64) - { - unsigned i; - for (i = 0; i < size; i++) - grub_dprintf ("usb", "0x%02x: 0x%02x\n", i, buf[i]); - } - else - grub_dprintf ("usb", "Too much data for debug print...\n"); - } - else if (size) - { - err = grub_usb_bulk_write (dev->dev, dev->out, size, buf); - grub_dprintf ("usb", "write: %d %d\n", err, GRUB_USB_ERR_STALL); - grub_dprintf ("usb", "First 16 bytes of sent data:\n %02x %02x %02x %02x %02x %02x %02x %02x %02x %02x %02x %02x %02x %02x %02x %02x\n", - buf[ 0], buf[ 1], buf[ 2], buf[ 3], - buf[ 4], buf[ 5], buf[ 6], buf[ 7], - buf[ 8], buf[ 9], buf[10], buf[11], - buf[12], buf[13], buf[14], buf[15]); - if (err) - { - if (err == GRUB_USB_ERR_STALL) - grub_usb_clear_halt (dev->dev, dev->out->endp_addr); - goto CheckCSW; - } - /* Debug print of sent data. */ - if (size <= 256) - { - unsigned i; - for (i=0; idev, dev->in, - sizeof (status), (char *) &status); - if (errCSW) - { - grub_usb_clear_halt (dev->dev, dev->in->endp_addr); - errCSW = grub_usb_bulk_read (dev->dev, dev->in, - sizeof (status), (char *) &status); - if (errCSW) - { /* Bulk-only reset device. */ - grub_dprintf ("usb", "Bulk-only reset device - errCSW\n"); - grub_usbms_reset (dev); - grub_usb_clear_halt (dev->dev, dev->in->endp_addr); - grub_usb_clear_halt (dev->dev, dev->out->endp_addr); - goto retry; - } - } - - /* Debug print of CSW content. */ - grub_dprintf ("usb", "CSW: sign=0x%08x tag=0x%08x resid=0x%08x\n", - status.signature, status.tag, status.residue); - grub_dprintf ("usb", "CSW: status=0x%02x\n", status.status); - - /* If phase error or not valid signature, do bulk-only reset device. */ - if ((status.status == 2) || - (status.signature != grub_cpu_to_le32_compile_time(0x53425355))) - { /* Bulk-only reset device. */ - grub_dprintf ("usb", "Bulk-only reset device - bad status\n"); - grub_usbms_reset (dev); - grub_usb_clear_halt (dev->dev, dev->in->endp_addr); - grub_usb_clear_halt (dev->dev, dev->out->endp_addr); - - goto retry; - } - - /* If "command failed" status or data transfer failed -> error */ - if ((status.status || err) && !read_write) - return grub_error (GRUB_ERR_READ_ERROR, - "error communication with USB Mass Storage device"); - else if ((status.status || err) && read_write) - return grub_error (GRUB_ERR_WRITE_ERROR, - "error communication with USB Mass Storage device"); - - return GRUB_ERR_NONE; -} - -static grub_err_t -grub_usbms_transfer_cbi (struct grub_scsi *scsi, grub_size_t cmdsize, char *cmd, - grub_size_t size, char *buf, int read_write) -{ - grub_usbms_dev_t dev = (grub_usbms_dev_t) scsi->data; - int retrycnt = 3 + 1; - grub_usb_err_t err = GRUB_USB_ERR_NONE; - grub_uint8_t cbicb[GRUB_USBMS_CBI_CMD_SIZE]; - grub_uint16_t status; - - retry: - retrycnt--; - if (retrycnt == 0) - return grub_error (GRUB_ERR_IO, "USB Mass Storage CBI failed"); - - /* Setup the request. */ - grub_memset (cbicb, 0, sizeof (cbicb)); - grub_memcpy (cbicb, cmd, - cmdsize >= GRUB_USBMS_CBI_CMD_SIZE - ? GRUB_USBMS_CBI_CMD_SIZE - : cmdsize); - - /* Debug print of CBIcb content. */ - grub_dprintf ("usb", "cbicb:\n %02x %02x %02x %02x %02x %02x %02x %02x %02x %02x %02x %02x\n", - cbicb[ 0], cbicb[ 1], cbicb[ 2], cbicb[ 3], - cbicb[ 4], cbicb[ 5], cbicb[ 6], cbicb[ 7], - cbicb[ 8], cbicb[ 9], cbicb[10], cbicb[11]); - - /* Write the request. - * XXX: Error recovery is maybe not correct. */ - err = grub_usbms_cbi_cmd (dev->dev, dev->interface, cbicb); - if (err) - { - grub_dprintf ("usb", "CBI cmdcb setup err=%d\n", err); - if (err == GRUB_USB_ERR_STALL) - { - /* Stall in this place probably means bad or unsupported - * command, so we will not try it again. */ - return grub_error (GRUB_ERR_IO, "USB Mass Storage CBI request failed"); - } - else if (dev->protocol == GRUB_USBMS_PROTOCOL_CBI) - { - /* Try to get status from interrupt pipe */ - err = grub_usb_bulk_read (dev->dev, dev->intrpt, - 2, (char*)&status); - grub_dprintf ("usb", "CBI cmdcb setup status: err=%d, status=0x%x\n", err, status); - } - /* Any other error could be transport problem, try it again */ - goto retry; - } - - /* Read/write the data, (maybe) according to specification. */ - if (size && (read_write == 0)) - { - err = grub_usb_bulk_read (dev->dev, dev->in, size, buf); - grub_dprintf ("usb", "read: %d\n", err); - if (err) - { - if (err == GRUB_USB_ERR_STALL) - grub_usb_clear_halt (dev->dev, dev->in->endp_addr); - goto retry; - } - } - else if (size) - { - err = grub_usb_bulk_write (dev->dev, dev->out, size, buf); - grub_dprintf ("usb", "write: %d\n", err); - if (err) - { - if (err == GRUB_USB_ERR_STALL) - grub_usb_clear_halt (dev->dev, dev->out->endp_addr); - goto retry; - } - } - - /* XXX: It is not clear to me yet, how to check status of CBI - * data transfer on devices without interrupt pipe. - * AFAIK there is probably no status phase to indicate possibly - * bad transported data. - * Maybe we should do check on higher level, i.e. issue RequestSense - * command (we do it already in scsi.c) and check returned values - * (we do not it yet) - ? */ - if (dev->protocol == GRUB_USBMS_PROTOCOL_CBI) - { /* Check status in interrupt pipe */ - err = grub_usb_bulk_read (dev->dev, dev->intrpt, - 2, (char*)&status); - grub_dprintf ("usb", "read status: %d\n", err); - if (err) - { - /* Try to reset device, because it is probably not standard - * situation */ - grub_usbms_reset (dev); - grub_usb_clear_halt (dev->dev, dev->in->endp_addr); - grub_usb_clear_halt (dev->dev, dev->out->endp_addr); - grub_usb_clear_halt (dev->dev, dev->intrpt->endp_addr); - goto retry; - } - if (dev->subclass == GRUB_USBMS_SUBCLASS_UFI) - { - /* These devices should return bASC and bASCQ */ - if (status != 0) - /* Some error, currently we don't care what it is... */ - goto retry; - } - else if (dev->subclass == GRUB_USBMS_SUBCLASS_RBC) - { - /* XXX: I don't understand what returns RBC subclass devices, - * so I don't check it - maybe somebody helps ? */ - } - else - { - /* Any other device should return bType = 0 and some bValue */ - if (status & 0xff) - return grub_error (GRUB_ERR_IO, "USB Mass Storage CBI status type != 0"); - status = (status & 0x0300) >> 8; - switch (status) - { - case 0 : /* OK */ - break; - case 1 : /* Fail */ - goto retry; - break; - case 2 : /* Phase error */ - case 3 : /* Persistent Failure */ - grub_dprintf ("usb", "CBI reset device - phase error or persistent failure\n"); - grub_usbms_reset (dev); - grub_usb_clear_halt (dev->dev, dev->in->endp_addr); - grub_usb_clear_halt (dev->dev, dev->out->endp_addr); - grub_usb_clear_halt (dev->dev, dev->intrpt->endp_addr); - goto retry; - break; - } - } - } - - if (err) - return grub_error (GRUB_ERR_IO, "USB error %d", err); - - return GRUB_ERR_NONE; -} - - -static grub_err_t -grub_usbms_transfer (struct grub_scsi *scsi, grub_size_t cmdsize, char *cmd, - grub_size_t size, char *buf, int read_write) -{ - grub_usbms_dev_t dev = (grub_usbms_dev_t) scsi->data; - - if (dev->protocol == GRUB_USBMS_PROTOCOL_BULK) - return grub_usbms_transfer_bo (scsi, cmdsize, cmd, size, buf, - read_write); - else - return grub_usbms_transfer_cbi (scsi, cmdsize, cmd, size, buf, - read_write); -} - -static grub_err_t -grub_usbms_read (struct grub_scsi *scsi, grub_size_t cmdsize, char *cmd, - grub_size_t size, char *buf) -{ - return grub_usbms_transfer (scsi, cmdsize, cmd, size, buf, 0); -} - -static grub_err_t -grub_usbms_write (struct grub_scsi *scsi, grub_size_t cmdsize, char *cmd, - grub_size_t size, const char *buf) -{ - return grub_usbms_transfer (scsi, cmdsize, cmd, size, (char *) buf, 1); -} - -static grub_err_t -grub_usbms_open (int id, int devnum, struct grub_scsi *scsi) -{ - if (id != GRUB_SCSI_SUBSYSTEM_USBMS) - return grub_error (GRUB_ERR_UNKNOWN_DEVICE, - "not USB Mass Storage device"); - - if (!grub_usbms_devices[devnum]) - grub_usb_poll_devices (1); - - if (!grub_usbms_devices[devnum]) - return grub_error (GRUB_ERR_UNKNOWN_DEVICE, - "unknown USB Mass Storage device"); - - scsi->data = grub_usbms_devices[devnum]; - scsi->luns = grub_usbms_devices[devnum]->luns; - - return GRUB_ERR_NONE; -} - -static struct grub_scsi_dev grub_usbms_dev = - { - .iterate = grub_usbms_iterate, - .open = grub_usbms_open, - .read = grub_usbms_read, - .write = grub_usbms_write - }; - -static struct grub_usb_attach_desc attach_hook = -{ - .class = GRUB_USB_CLASS_MASS_STORAGE, - .hook = grub_usbms_attach -}; - -GRUB_MOD_INIT(usbms) -{ - grub_usb_register_attach_hook_class (&attach_hook); - grub_scsi_dev_register (&grub_usbms_dev); -} - -GRUB_MOD_FINI(usbms) -{ - unsigned i; - for (i = 0; i < ARRAY_SIZE (grub_usbms_devices); i++) - { - grub_usbms_devices[i]->dev->config[grub_usbms_devices[i]->config] - .interf[grub_usbms_devices[i]->interface].detach_hook = 0; - grub_usbms_devices[i]->dev->config[grub_usbms_devices[i]->config] - .interf[grub_usbms_devices[i]->interface].attached = 0; - } - grub_usb_unregister_attach_hook_class (&attach_hook); - grub_scsi_dev_unregister (&grub_usbms_dev); -} diff --git a/thirdparty/grub-2.04/grub-core/disk/xen/xendisk.c b/thirdparty/grub-2.04/grub-core/disk/xen/xendisk.c deleted file mode 100644 index 48476cbbf..000000000 --- a/thirdparty/grub-2.04/grub-core/disk/xen/xendisk.c +++ /dev/null @@ -1,485 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2013 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -struct virtdisk -{ - int handle; - char *fullname; - char *backend_dir; - char *frontend_dir; - struct blkif_sring *shared_page; - struct blkif_front_ring ring; - grub_xen_grant_t grant; - grub_xen_evtchn_t evtchn; - void *dma_page; - grub_xen_grant_t dma_grant; - struct virtdisk *compat_next; -}; - -#define xen_wmb() mb() -#define xen_mb() mb() - -static struct virtdisk *virtdisks; -static grub_size_t vdiskcnt; -struct virtdisk *compat_head; - -static int -grub_virtdisk_iterate (grub_disk_dev_iterate_hook_t hook, void *hook_data, - grub_disk_pull_t pull) -{ - grub_size_t i; - - if (pull != GRUB_DISK_PULL_NONE) - return 0; - - for (i = 0; i < vdiskcnt; i++) - if (hook (virtdisks[i].fullname, hook_data)) - return 1; - return 0; -} - -static grub_err_t -grub_virtdisk_open (const char *name, grub_disk_t disk) -{ - int i; - grub_uint32_t secsize; - char fdir[200]; - char *buf; - int num = -1; - struct virtdisk *vd; - - /* For compatibility with pv-grub legacy menu.lst accept hdX as disk name */ - if (name[0] == 'h' && name[1] == 'd' && name[2]) - { - num = grub_strtoul (name + 2, 0, 10); - if (grub_errno) - { - grub_errno = 0; - num = -1; - } - } - for (i = 0, vd = compat_head; vd; vd = vd->compat_next, i++) - if (i == num || grub_strcmp (name, vd->fullname) == 0) - break; - if (!vd) - return grub_error (GRUB_ERR_UNKNOWN_DEVICE, "not a virtdisk"); - disk->data = vd; - disk->id = vd - virtdisks; - - grub_snprintf (fdir, sizeof (fdir), "%s/sectors", vd->backend_dir); - buf = grub_xenstore_get_file (fdir, NULL); - if (!buf) - return grub_errno; - disk->total_sectors = grub_strtoull (buf, 0, 10); - if (grub_errno) - return grub_errno; - - grub_snprintf (fdir, sizeof (fdir), "%s/sector-size", vd->backend_dir); - buf = grub_xenstore_get_file (fdir, NULL); - if (!buf) - return grub_errno; - secsize = grub_strtoull (buf, 0, 10); - if (grub_errno) - return grub_errno; - - if ((secsize & (secsize - 1)) || !secsize || secsize < 512 - || secsize > GRUB_XEN_PAGE_SIZE) - return grub_error (GRUB_ERR_IO, "unsupported sector size %d", secsize); - - for (disk->log_sector_size = 0; - (1U << disk->log_sector_size) < secsize; disk->log_sector_size++); - - disk->total_sectors >>= disk->log_sector_size - 9; - - return GRUB_ERR_NONE; -} - -static void -grub_virtdisk_close (grub_disk_t disk __attribute__ ((unused))) -{ -} - -static grub_err_t -grub_virtdisk_read (grub_disk_t disk, grub_disk_addr_t sector, - grub_size_t size, char *buf) -{ - struct virtdisk *data = disk->data; - - while (size) - { - grub_size_t cur; - struct blkif_request *req; - struct blkif_response *resp; - int sta = 0; - struct evtchn_send send; - cur = size; - if (cur > (unsigned) (GRUB_XEN_PAGE_SIZE >> disk->log_sector_size)) - cur = GRUB_XEN_PAGE_SIZE >> disk->log_sector_size; - while (RING_FULL (&data->ring)) - grub_xen_sched_op (SCHEDOP_yield, 0); - req = RING_GET_REQUEST (&data->ring, data->ring.req_prod_pvt); - req->operation = BLKIF_OP_READ; - req->nr_segments = 1; - req->handle = data->handle; - req->id = 0; - req->sector_number = sector << (disk->log_sector_size - 9); - req->seg[0].gref = data->dma_grant; - req->seg[0].first_sect = 0; - req->seg[0].last_sect = (cur << (disk->log_sector_size - 9)) - 1; - data->ring.req_prod_pvt++; - RING_PUSH_REQUESTS (&data->ring); - mb (); - send.port = data->evtchn; - grub_xen_event_channel_op (EVTCHNOP_send, &send); - - while (!RING_HAS_UNCONSUMED_RESPONSES (&data->ring)) - { - grub_xen_sched_op (SCHEDOP_yield, 0); - mb (); - } - while (1) - { - int wtd; - RING_FINAL_CHECK_FOR_RESPONSES (&data->ring, wtd); - if (!wtd) - break; - resp = RING_GET_RESPONSE (&data->ring, data->ring.rsp_cons); - data->ring.rsp_cons++; - if (resp->status) - sta = resp->status; - } - if (sta) - return grub_error (GRUB_ERR_IO, "read failed"); - grub_memcpy (buf, data->dma_page, cur << disk->log_sector_size); - size -= cur; - sector += cur; - buf += cur << disk->log_sector_size; - } - return GRUB_ERR_NONE; -} - -static grub_err_t -grub_virtdisk_write (grub_disk_t disk, grub_disk_addr_t sector, - grub_size_t size, const char *buf) -{ - struct virtdisk *data = disk->data; - - while (size) - { - grub_size_t cur; - struct blkif_request *req; - struct blkif_response *resp; - int sta = 0; - struct evtchn_send send; - cur = size; - if (cur > (unsigned) (GRUB_XEN_PAGE_SIZE >> disk->log_sector_size)) - cur = GRUB_XEN_PAGE_SIZE >> disk->log_sector_size; - - grub_memcpy (data->dma_page, buf, cur << disk->log_sector_size); - - while (RING_FULL (&data->ring)) - grub_xen_sched_op (SCHEDOP_yield, 0); - req = RING_GET_REQUEST (&data->ring, data->ring.req_prod_pvt); - req->operation = BLKIF_OP_WRITE; - req->nr_segments = 1; - req->handle = data->handle; - req->id = 0; - req->sector_number = sector << (disk->log_sector_size - 9); - req->seg[0].gref = data->dma_grant; - req->seg[0].first_sect = 0; - req->seg[0].last_sect = (cur << (disk->log_sector_size - 9)) - 1; - data->ring.req_prod_pvt++; - RING_PUSH_REQUESTS (&data->ring); - mb (); - send.port = data->evtchn; - grub_xen_event_channel_op (EVTCHNOP_send, &send); - - while (!RING_HAS_UNCONSUMED_RESPONSES (&data->ring)) - { - grub_xen_sched_op (SCHEDOP_yield, 0); - mb (); - } - while (1) - { - int wtd; - RING_FINAL_CHECK_FOR_RESPONSES (&data->ring, wtd); - if (!wtd) - break; - resp = RING_GET_RESPONSE (&data->ring, data->ring.rsp_cons); - data->ring.rsp_cons++; - if (resp->status) - sta = resp->status; - } - if (sta) - return grub_error (GRUB_ERR_IO, "write failed"); - size -= cur; - sector += cur; - buf += cur << disk->log_sector_size; - } - return GRUB_ERR_NONE; -} - -static struct grub_disk_dev grub_virtdisk_dev = { - .name = "xen", - .id = GRUB_DISK_DEVICE_XEN, - .disk_iterate = grub_virtdisk_iterate, - .disk_open = grub_virtdisk_open, - .disk_close = grub_virtdisk_close, - .disk_read = grub_virtdisk_read, - .disk_write = grub_virtdisk_write, - .next = 0 -}; - -static int -count (const char *dir __attribute__ ((unused)), void *data) -{ - grub_size_t *ctr = data; - (*ctr)++; - - return 0; -} - -static int -fill (const char *dir, void *data) -{ - grub_size_t *ctr = data; - domid_t dom; - /* "dir" is just a number, at most 19 characters. */ - char fdir[200]; - char num[20]; - grub_err_t err; - void *buf; - struct evtchn_alloc_unbound alloc_unbound; - struct virtdisk **prev = &compat_head, *vd = compat_head; - - /* Shouldn't happen unles some hotplug happened. */ - if (vdiskcnt >= *ctr) - return 1; - virtdisks[vdiskcnt].handle = grub_strtoul (dir, 0, 10); - if (grub_errno) - { - grub_errno = 0; - return 0; - } - virtdisks[vdiskcnt].fullname = 0; - virtdisks[vdiskcnt].backend_dir = 0; - - grub_snprintf (fdir, sizeof (fdir), "device/vbd/%s/backend", dir); - virtdisks[vdiskcnt].backend_dir = grub_xenstore_get_file (fdir, NULL); - if (!virtdisks[vdiskcnt].backend_dir) - goto out_fail_1; - - grub_snprintf (fdir, sizeof (fdir), "%s/dev", - virtdisks[vdiskcnt].backend_dir); - buf = grub_xenstore_get_file (fdir, NULL); - if (!buf) - { - grub_errno = 0; - virtdisks[vdiskcnt].fullname = grub_xasprintf ("xenid/%s", dir); - } - else - { - virtdisks[vdiskcnt].fullname = grub_xasprintf ("xen/%s", (char *) buf); - grub_free (buf); - } - if (!virtdisks[vdiskcnt].fullname) - goto out_fail_1; - - grub_snprintf (fdir, sizeof (fdir), "device/vbd/%s/backend-id", dir); - buf = grub_xenstore_get_file (fdir, NULL); - if (!buf) - goto out_fail_1; - - dom = grub_strtoul (buf, 0, 10); - grub_free (buf); - if (grub_errno) - goto out_fail_1; - - virtdisks[vdiskcnt].shared_page = - grub_xen_alloc_shared_page (dom, &virtdisks[vdiskcnt].grant); - if (!virtdisks[vdiskcnt].shared_page) - goto out_fail_1; - - virtdisks[vdiskcnt].dma_page = - grub_xen_alloc_shared_page (dom, &virtdisks[vdiskcnt].dma_grant); - if (!virtdisks[vdiskcnt].dma_page) - goto out_fail_2; - - alloc_unbound.dom = DOMID_SELF; - alloc_unbound.remote_dom = dom; - - grub_xen_event_channel_op (EVTCHNOP_alloc_unbound, &alloc_unbound); - virtdisks[vdiskcnt].evtchn = alloc_unbound.port; - - SHARED_RING_INIT (virtdisks[vdiskcnt].shared_page); - FRONT_RING_INIT (&virtdisks[vdiskcnt].ring, virtdisks[vdiskcnt].shared_page, - GRUB_XEN_PAGE_SIZE); - - grub_snprintf (fdir, sizeof (fdir), "device/vbd/%s/ring-ref", dir); - grub_snprintf (num, sizeof (num), "%u", virtdisks[vdiskcnt].grant); - err = grub_xenstore_write_file (fdir, num, grub_strlen (num)); - if (err) - goto out_fail_3; - - grub_snprintf (fdir, sizeof (fdir), "device/vbd/%s/event-channel", dir); - grub_snprintf (num, sizeof (num), "%u", virtdisks[vdiskcnt].evtchn); - err = grub_xenstore_write_file (fdir, num, grub_strlen (num)); - if (err) - goto out_fail_3; - - grub_snprintf (fdir, sizeof (fdir), "device/vbd/%s/protocol", dir); - err = grub_xenstore_write_file (fdir, XEN_IO_PROTO_ABI_NATIVE, - grub_strlen (XEN_IO_PROTO_ABI_NATIVE)); - if (err) - goto out_fail_3; - - struct gnttab_dump_table dt; - dt.dom = DOMID_SELF; - grub_xen_grant_table_op (GNTTABOP_dump_table, (void *) &dt, 1); - - grub_snprintf (fdir, sizeof (fdir), "device/vbd/%s/state", dir); - err = grub_xenstore_write_file (fdir, "3", 1); - if (err) - goto out_fail_3; - - while (1) - { - grub_snprintf (fdir, sizeof (fdir), "%s/state", - virtdisks[vdiskcnt].backend_dir); - buf = grub_xenstore_get_file (fdir, NULL); - if (!buf) - goto out_fail_3; - if (grub_strcmp (buf, "2") != 0) - break; - grub_free (buf); - grub_xen_sched_op (SCHEDOP_yield, 0); - } - grub_dprintf ("xen", "state=%s\n", (char *) buf); - grub_free (buf); - - grub_snprintf (fdir, sizeof (fdir), "device/vbd/%s", dir); - - virtdisks[vdiskcnt].frontend_dir = grub_strdup (fdir); - - /* For compatibility with pv-grub maintain linked list sorted by handle - value in increasing order. This allows mapping of (hdX) disk names - from legacy menu.lst */ - while (vd) - { - if (vd->handle > virtdisks[vdiskcnt].handle) - break; - prev = &vd->compat_next; - vd = vd->compat_next; - } - virtdisks[vdiskcnt].compat_next = vd; - *prev = &virtdisks[vdiskcnt]; - - vdiskcnt++; - return 0; - -out_fail_3: - grub_xen_free_shared_page (virtdisks[vdiskcnt].dma_page); -out_fail_2: - grub_xen_free_shared_page (virtdisks[vdiskcnt].shared_page); -out_fail_1: - grub_free (virtdisks[vdiskcnt].backend_dir); - grub_free (virtdisks[vdiskcnt].fullname); - - grub_errno = 0; - return 0; -} - -void -grub_xendisk_init (void) -{ - grub_size_t ctr = 0; - if (grub_xenstore_dir ("device/vbd", count, &ctr)) - grub_errno = 0; - - if (!ctr) - return; - - virtdisks = grub_malloc (ctr * sizeof (virtdisks[0])); - if (!virtdisks) - return; - if (grub_xenstore_dir ("device/vbd", fill, &ctr)) - grub_errno = 0; - - grub_disk_dev_register (&grub_virtdisk_dev); -} - -void -grub_xendisk_fini (void) -{ - char fdir[200]; - unsigned i; - - for (i = 0; i < vdiskcnt; i++) - { - char *buf; - struct evtchn_close close_op = {.port = virtdisks[i].evtchn }; - - grub_snprintf (fdir, sizeof (fdir), "%s/state", - virtdisks[i].frontend_dir); - grub_xenstore_write_file (fdir, "6", 1); - - while (1) - { - grub_snprintf (fdir, sizeof (fdir), "%s/state", - virtdisks[i].backend_dir); - buf = grub_xenstore_get_file (fdir, NULL); - grub_dprintf ("xen", "state=%s\n", (char *) buf); - - if (!buf || grub_strcmp (buf, "6") == 0) - break; - grub_free (buf); - grub_xen_sched_op (SCHEDOP_yield, 0); - } - grub_free (buf); - - grub_snprintf (fdir, sizeof (fdir), "%s/ring-ref", - virtdisks[i].frontend_dir); - grub_xenstore_write_file (fdir, NULL, 0); - - grub_snprintf (fdir, sizeof (fdir), "%s/event-channel", - virtdisks[i].frontend_dir); - grub_xenstore_write_file (fdir, NULL, 0); - - grub_xen_free_shared_page (virtdisks[i].dma_page); - grub_xen_free_shared_page (virtdisks[i].shared_page); - - grub_xen_event_channel_op (EVTCHNOP_close, &close_op); - - /* Prepare for handoff. */ - grub_snprintf (fdir, sizeof (fdir), "%s/state", - virtdisks[i].frontend_dir); - grub_xenstore_write_file (fdir, "1", 1); - } -} diff --git a/thirdparty/grub-2.04/grub-core/efiemu/i386/coredetect.c b/thirdparty/grub-2.04/grub-core/efiemu/i386/coredetect.c deleted file mode 100644 index a262b5328..000000000 --- a/thirdparty/grub-2.04/grub-core/efiemu/i386/coredetect.c +++ /dev/null @@ -1,27 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include - -const char * -grub_efiemu_get_default_core_name (void) -{ - return grub_cpuid_has_longmode ? "efiemu64.o" : "efiemu32.o"; -} diff --git a/thirdparty/grub-2.04/grub-core/efiemu/i386/loadcore32.c b/thirdparty/grub-2.04/grub-core/efiemu/i386/loadcore32.c deleted file mode 100644 index e746df8df..000000000 --- a/thirdparty/grub-2.04/grub-core/efiemu/i386/loadcore32.c +++ /dev/null @@ -1,121 +0,0 @@ -/* i386 CPU-specific part of loadcore.c for 32-bit mode */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include - -/* Check if EHDR is a valid ELF header. */ -int -grub_arch_efiemu_check_header32 (void *ehdr) -{ - Elf32_Ehdr *e = ehdr; - - /* Check the magic numbers. */ - return (e->e_ident[EI_CLASS] == ELFCLASS32 - && e->e_ident[EI_DATA] == ELFDATA2LSB - && e->e_machine == EM_386); -} - -/* Relocate symbols. */ -grub_err_t -grub_arch_efiemu_relocate_symbols32 (grub_efiemu_segment_t segs, - struct grub_efiemu_elf_sym *elfsyms, - void *ehdr) -{ - unsigned i; - Elf32_Ehdr *e = ehdr; - Elf32_Shdr *s; - grub_err_t err; - - grub_dprintf ("efiemu", "relocating symbols %d %d\n", - e->e_shoff, e->e_shnum); - - for (i = 0, s = (Elf32_Shdr *) ((char *) e + e->e_shoff); - i < e->e_shnum; - i++, s = (Elf32_Shdr *) ((char *) s + e->e_shentsize)) - if (s->sh_type == SHT_REL) - { - grub_efiemu_segment_t seg; - grub_dprintf ("efiemu", "shtrel\n"); - - /* Find the target segment. */ - for (seg = segs; seg; seg = seg->next) - if (seg->section == s->sh_info) - break; - - if (seg) - { - Elf32_Rel *rel, *max; - - for (rel = (Elf32_Rel *) ((char *) e + s->sh_offset), - max = rel + s->sh_size / s->sh_entsize; - rel < max; - rel++) - { - Elf32_Word *addr; - struct grub_efiemu_elf_sym sym; - if (seg->size < rel->r_offset) - return grub_error (GRUB_ERR_BAD_MODULE, - "reloc offset is out of the segment"); - - addr = (Elf32_Word *) - ((char *) grub_efiemu_mm_obtain_request (seg->handle) - + seg->off + rel->r_offset); - sym = elfsyms[ELF32_R_SYM (rel->r_info)]; - - switch (ELF32_R_TYPE (rel->r_info)) - { - case R_386_32: - err = grub_efiemu_write_value (addr, sym.off + *addr, - sym.handle, 0, - seg->ptv_rel_needed, - sizeof (grub_uint32_t)); - if (err) - return err; - - break; - - case R_386_PC32: - err = grub_efiemu_write_value (addr, sym.off + *addr - - rel->r_offset - - seg->off, sym.handle, - seg->handle, - seg->ptv_rel_needed, - sizeof (grub_uint32_t)); - if (err) - return err; - break; - default: - return grub_error (GRUB_ERR_NOT_IMPLEMENTED_YET, - N_("relocation 0x%x is not implemented yet"), - ELF_R_TYPE (rel->r_info)); - } - } - } - } - - return GRUB_ERR_NONE; -} - - diff --git a/thirdparty/grub-2.04/grub-core/efiemu/i386/loadcore64.c b/thirdparty/grub-2.04/grub-core/efiemu/i386/loadcore64.c deleted file mode 100644 index 18facf47f..000000000 --- a/thirdparty/grub-2.04/grub-core/efiemu/i386/loadcore64.c +++ /dev/null @@ -1,133 +0,0 @@ -/* i386 CPU-specific part of loadcore.c for 32-bit mode */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include - -/* Check if EHDR is a valid ELF header. */ -int -grub_arch_efiemu_check_header64 (void *ehdr) -{ - Elf64_Ehdr *e = ehdr; - - return (e->e_ident[EI_CLASS] == ELFCLASS64 - && e->e_ident[EI_DATA] == ELFDATA2LSB - && e->e_machine == EM_X86_64); -} - -/* Relocate symbols. */ -grub_err_t -grub_arch_efiemu_relocate_symbols64 (grub_efiemu_segment_t segs, - struct grub_efiemu_elf_sym *elfsyms, - void *ehdr) -{ - unsigned i; - Elf64_Ehdr *e = ehdr; - Elf64_Shdr *s; - grub_err_t err; - - for (i = 0, s = (Elf64_Shdr *) ((char *) e + e->e_shoff); - i < e->e_shnum; - i++, s = (Elf64_Shdr *) ((char *) s + e->e_shentsize)) - if (s->sh_type == SHT_RELA) - { - grub_efiemu_segment_t seg; - grub_dprintf ("efiemu", "shtrel\n"); - - /* Find the target segment. */ - for (seg = segs; seg; seg = seg->next) - if (seg->section == s->sh_info) - break; - - if (seg) - { - Elf64_Rela *rel, *max; - - for (rel = (Elf64_Rela *) ((char *) e + s->sh_offset), - max = rel + (unsigned long) s->sh_size - / (unsigned long)s->sh_entsize; - rel < max; - rel++) - { - void *addr; - grub_uint32_t *addr32; - grub_uint64_t *addr64; - struct grub_efiemu_elf_sym sym; - if (seg->size < rel->r_offset) - return grub_error (GRUB_ERR_BAD_MODULE, - "reloc offset is out of the segment"); - - addr = - ((char *) grub_efiemu_mm_obtain_request (seg->handle) - + seg->off + rel->r_offset); - addr32 = (grub_uint32_t *) addr; - addr64 = (grub_uint64_t *) addr; - sym = elfsyms[ELF64_R_SYM (rel->r_info)]; - - switch (ELF64_R_TYPE (rel->r_info)) - { - case R_X86_64_64: - err = grub_efiemu_write_value (addr, - *addr64 + rel->r_addend - + sym.off, sym.handle, - 0, seg->ptv_rel_needed, - sizeof (grub_uint64_t)); - if (err) - return err; - break; - - case R_X86_64_PC32: - case R_X86_64_PLT32: - err = grub_efiemu_write_value (addr, - *addr32 + rel->r_addend - + sym.off - - rel->r_offset - seg->off, - sym.handle, seg->handle, - seg->ptv_rel_needed, - sizeof (grub_uint32_t)); - if (err) - return err; - break; - - case R_X86_64_32: - case R_X86_64_32S: - err = grub_efiemu_write_value (addr, - *addr32 + rel->r_addend - + sym.off, sym.handle, - 0, seg->ptv_rel_needed, - sizeof (grub_uint32_t)); - if (err) - return err; - break; - default: - return grub_error (GRUB_ERR_NOT_IMPLEMENTED_YET, - N_("relocation 0x%x is not implemented yet"), - ELF_R_TYPE (rel->r_info)); - } - } - } - } - - return GRUB_ERR_NONE; -} diff --git a/thirdparty/grub-2.04/grub-core/efiemu/i386/nocfgtables.c b/thirdparty/grub-2.04/grub-core/efiemu/i386/nocfgtables.c deleted file mode 100644 index 775f1d03a..000000000 --- a/thirdparty/grub-2.04/grub-core/efiemu/i386/nocfgtables.c +++ /dev/null @@ -1,30 +0,0 @@ -/* Register SMBIOS and ACPI tables. */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include - -grub_err_t -grub_machine_efiemu_init_tables (void) -{ - return GRUB_ERR_NONE; -} diff --git a/thirdparty/grub-2.04/grub-core/efiemu/i386/pc/cfgtables.c b/thirdparty/grub-2.04/grub-core/efiemu/i386/pc/cfgtables.c deleted file mode 100644 index 492c07c46..000000000 --- a/thirdparty/grub-2.04/grub-core/efiemu/i386/pc/cfgtables.c +++ /dev/null @@ -1,76 +0,0 @@ -/* Register SMBIOS and ACPI tables. */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include - -grub_err_t -grub_machine_efiemu_init_tables (void) -{ - grub_uint8_t *ptr; - void *table; - grub_err_t err; - grub_efi_guid_t smbios = GRUB_EFI_SMBIOS_TABLE_GUID; - grub_efi_guid_t acpi20 = GRUB_EFI_ACPI_20_TABLE_GUID; - grub_efi_guid_t acpi = GRUB_EFI_ACPI_TABLE_GUID; - - err = grub_efiemu_unregister_configuration_table (smbios); - if (err) - return err; - err = grub_efiemu_unregister_configuration_table (acpi); - if (err) - return err; - err = grub_efiemu_unregister_configuration_table (acpi20); - if (err) - return err; - - table = grub_acpi_get_rsdpv1 (); - if (table) - { - err = grub_efiemu_register_configuration_table (acpi, 0, 0, table); - if (err) - return err; - } - table = grub_acpi_get_rsdpv2 (); - if (table) - { - err = grub_efiemu_register_configuration_table (acpi20, 0, 0, table); - if (err) - return err; - } - - for (ptr = (grub_uint8_t *) 0xf0000; ptr < (grub_uint8_t *) 0x100000; - ptr += 16) - if (grub_memcmp (ptr, "_SM_", 4) == 0 - && grub_byte_checksum (ptr, *(ptr + 5)) == 0) - break; - - if (ptr < (grub_uint8_t *) 0x100000) - { - grub_dprintf ("efiemu", "Registering SMBIOS\n"); - err = grub_efiemu_register_configuration_table (smbios, 0, 0, ptr); - if (err) - return err; - } - - return GRUB_ERR_NONE; -} diff --git a/thirdparty/grub-2.04/grub-core/efiemu/loadcore.c b/thirdparty/grub-2.04/grub-core/efiemu/loadcore.c deleted file mode 100644 index 44085ef81..000000000 --- a/thirdparty/grub-2.04/grub-core/efiemu/loadcore.c +++ /dev/null @@ -1,387 +0,0 @@ -/* Load runtime image of EFIemu. Functions specific to 32/64-bit mode */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include - -/* ELF symbols and their values */ -static struct grub_efiemu_elf_sym *grub_efiemu_elfsyms = 0; -static int grub_efiemu_nelfsyms = 0; - -/* Return the address of a section whose index is N. */ -static grub_err_t -grub_efiemu_get_section_addr (grub_efiemu_segment_t segs, unsigned n, - int *handle, grub_off_t *off) -{ - grub_efiemu_segment_t seg; - - for (seg = segs; seg; seg = seg->next) - if (seg->section == n) - { - *handle = seg->handle; - *off = seg->off; - return GRUB_ERR_NONE; - } - - return grub_error (GRUB_ERR_BAD_OS, "section %d not found", n); -} - -grub_err_t -SUFFIX (grub_efiemu_loadcore_unload) (void) -{ - grub_free (grub_efiemu_elfsyms); - grub_efiemu_elfsyms = 0; - return GRUB_ERR_NONE; -} - -/* Check if EHDR is a valid ELF header. */ -int -SUFFIX (grub_efiemu_check_header) (void *ehdr, grub_size_t size) -{ - Elf_Ehdr *e = ehdr; - - /* Check the header size. */ - if (size < sizeof (Elf_Ehdr)) - return 0; - - /* Check the magic numbers. */ - if (!SUFFIX (grub_arch_efiemu_check_header) (ehdr) - || e->e_ident[EI_MAG0] != ELFMAG0 - || e->e_ident[EI_MAG1] != ELFMAG1 - || e->e_ident[EI_MAG2] != ELFMAG2 - || e->e_ident[EI_MAG3] != ELFMAG3 - || e->e_ident[EI_VERSION] != EV_CURRENT - || e->e_version != EV_CURRENT) - return 0; - - return 1; -} - -/* Load all segments from memory specified by E. */ -static grub_err_t -grub_efiemu_load_segments (grub_efiemu_segment_t segs, const Elf_Ehdr *e) -{ - Elf_Shdr *s; - grub_efiemu_segment_t cur; - - grub_dprintf ("efiemu", "loading segments\n"); - - for (cur=segs; cur; cur = cur->next) - { - s = (Elf_Shdr *)cur->srcptr; - - if ((s->sh_flags & SHF_ALLOC) && s->sh_size) - { - void *addr; - - addr = (grub_uint8_t *) grub_efiemu_mm_obtain_request (cur->handle) - + cur->off; - - switch (s->sh_type) - { - case SHT_PROGBITS: - grub_memcpy (addr, (char *) e + s->sh_offset, s->sh_size); - break; - case SHT_NOBITS: - grub_memset (addr, 0, s->sh_size); - break; - } - } - } - - return GRUB_ERR_NONE; -} - -/* Get a string at offset OFFSET from strtab */ -static char * -grub_efiemu_get_string (unsigned offset, const Elf_Ehdr *e) -{ - unsigned i; - Elf_Shdr *s; - - for (i = 0, s = (Elf_Shdr *) ((char *) e + e->e_shoff); - i < e->e_shnum; - i++, s = (Elf_Shdr *) ((char *) s + e->e_shentsize)) - if (s->sh_type == SHT_STRTAB && offset < s->sh_size) - return (char *) e + s->sh_offset + offset; - return 0; -} - -/* Request memory for segments and fill segments info */ -static grub_err_t -grub_efiemu_init_segments (grub_efiemu_segment_t *segs, const Elf_Ehdr *e) -{ - unsigned i; - Elf_Shdr *s; - - for (i = 0, s = (Elf_Shdr *) ((char *) e + e->e_shoff); - i < e->e_shnum; - i++, s = (Elf_Shdr *) ((char *) s + e->e_shentsize)) - { - if (s->sh_flags & SHF_ALLOC) - { - grub_efiemu_segment_t seg; - seg = (grub_efiemu_segment_t) grub_malloc (sizeof (*seg)); - if (! seg) - return grub_errno; - - if (s->sh_size) - { - seg->handle - = grub_efiemu_request_memalign - (s->sh_addralign, s->sh_size, - s->sh_flags & SHF_EXECINSTR ? GRUB_EFI_RUNTIME_SERVICES_CODE - : GRUB_EFI_RUNTIME_SERVICES_DATA); - if (seg->handle < 0) - { - grub_free (seg); - return grub_errno; - } - seg->off = 0; - } - - /* - .text-physical doesn't need to be relocated when switching to - virtual mode - */ - if (!grub_strcmp (grub_efiemu_get_string (s->sh_name, e), - ".text-physical")) - seg->ptv_rel_needed = 0; - else - seg->ptv_rel_needed = 1; - seg->size = s->sh_size; - seg->section = i; - seg->next = *segs; - seg->srcptr = s; - *segs = seg; - } - } - - return GRUB_ERR_NONE; -} - -/* Count symbols and relocators and allocate/request memory for them */ -static grub_err_t -grub_efiemu_count_symbols (const Elf_Ehdr *e) -{ - unsigned i; - Elf_Shdr *s; - int num = 0; - - /* Symbols */ - for (i = 0, s = (Elf_Shdr *) ((char *) e + e->e_shoff); - i < e->e_shnum; - i++, s = (Elf_Shdr *) ((char *) s + e->e_shentsize)) - if (s->sh_type == SHT_SYMTAB) - break; - - if (i == e->e_shnum) - return grub_error (GRUB_ERR_BAD_OS, N_("no symbol table")); - - grub_efiemu_nelfsyms = (unsigned) s->sh_size / (unsigned) s->sh_entsize; - grub_efiemu_elfsyms = (struct grub_efiemu_elf_sym *) - grub_malloc (sizeof (struct grub_efiemu_elf_sym) * grub_efiemu_nelfsyms); - - /* Relocators */ - for (i = 0, s = (Elf_Shdr *) ((char *) e + e->e_shoff); - i < e->e_shnum; - i++, s = (Elf_Shdr *) ((char *) s + e->e_shentsize)) - if (s->sh_type == SHT_REL || s->sh_type == SHT_RELA) - num += ((unsigned) s->sh_size) / ((unsigned) s->sh_entsize); - - grub_efiemu_request_symbols (num); - - return GRUB_ERR_NONE; -} - -/* Fill grub_efiemu_elfsyms with symbol values */ -static grub_err_t -grub_efiemu_resolve_symbols (grub_efiemu_segment_t segs, Elf_Ehdr *e) -{ - unsigned i; - Elf_Shdr *s; - Elf_Sym *sym; - const char *str; - Elf_Word size, entsize; - - grub_dprintf ("efiemu", "resolving symbols\n"); - - for (i = 0, s = (Elf_Shdr *) ((char *) e + e->e_shoff); - i < e->e_shnum; - i++, s = (Elf_Shdr *) ((char *) s + e->e_shentsize)) - if (s->sh_type == SHT_SYMTAB) - break; - - if (i == e->e_shnum) - return grub_error (GRUB_ERR_BAD_OS, N_("no symbol table")); - - sym = (Elf_Sym *) ((char *) e + s->sh_offset); - size = s->sh_size; - entsize = s->sh_entsize; - - s = (Elf_Shdr *) ((char *) e + e->e_shoff + e->e_shentsize * s->sh_link); - str = (char *) e + s->sh_offset; - - for (i = 0; - i < size / entsize; - i++, sym = (Elf_Sym *) ((char *) sym + entsize)) - { - unsigned char type = ELF_ST_TYPE (sym->st_info); - unsigned char bind = ELF_ST_BIND (sym->st_info); - int handle; - grub_off_t off; - grub_err_t err; - const char *name = str + sym->st_name; - grub_efiemu_elfsyms[i].section = sym->st_shndx; - switch (type) - { - case STT_NOTYPE: - /* Resolve a global symbol. */ - if (sym->st_name != 0 && sym->st_shndx == 0) - { - err = grub_efiemu_resolve_symbol (name, &handle, &off); - if (err) - return err; - grub_efiemu_elfsyms[i].handle = handle; - grub_efiemu_elfsyms[i].off = off; - } - else - sym->st_value = 0; - break; - - case STT_OBJECT: - err = grub_efiemu_get_section_addr (segs, sym->st_shndx, - &handle, &off); - if (err) - return err; - - off += sym->st_value; - if (bind != STB_LOCAL) - { - err = grub_efiemu_register_symbol (name, handle, off); - if (err) - return err; - } - grub_efiemu_elfsyms[i].handle = handle; - grub_efiemu_elfsyms[i].off = off; - break; - - case STT_FUNC: - err = grub_efiemu_get_section_addr (segs, sym->st_shndx, - &handle, &off); - if (err) - return err; - - off += sym->st_value; - if (bind != STB_LOCAL) - { - err = grub_efiemu_register_symbol (name, handle, off); - if (err) - return err; - } - grub_efiemu_elfsyms[i].handle = handle; - grub_efiemu_elfsyms[i].off = off; - break; - - case STT_SECTION: - err = grub_efiemu_get_section_addr (segs, sym->st_shndx, - &handle, &off); - if (err) - { - grub_efiemu_elfsyms[i].handle = 0; - grub_efiemu_elfsyms[i].off = 0; - grub_errno = GRUB_ERR_NONE; - break; - } - - grub_efiemu_elfsyms[i].handle = handle; - grub_efiemu_elfsyms[i].off = off; - break; - - case STT_FILE: - grub_efiemu_elfsyms[i].handle = 0; - grub_efiemu_elfsyms[i].off = 0; - break; - - default: - return grub_error (GRUB_ERR_BAD_MODULE, - "unknown symbol type `%d'", (int) type); - } - } - - return GRUB_ERR_NONE; -} - -/* Load runtime to the memory and request memory for definitive location*/ -grub_err_t -SUFFIX (grub_efiemu_loadcore_init) (void *core, const char *filename, - grub_size_t core_size, - grub_efiemu_segment_t *segments) -{ - Elf_Ehdr *e = (Elf_Ehdr *) core; - grub_err_t err; - - if (e->e_type != ET_REL) - return grub_error (GRUB_ERR_BAD_MODULE, N_("this ELF file is not of the right type")); - - /* Make sure that every section is within the core. */ - if ((grub_size_t) core_size < e->e_shoff + (grub_uint32_t) e->e_shentsize * e->e_shnum) - return grub_error (GRUB_ERR_BAD_OS, N_("premature end of file %s"), - filename); - - err = grub_efiemu_init_segments (segments, core); - if (err) - return err; - err = grub_efiemu_count_symbols (core); - if (err) - return err; - - grub_efiemu_request_symbols (1); - return GRUB_ERR_NONE; -} - -/* Load runtime definitively */ -grub_err_t -SUFFIX (grub_efiemu_loadcore_load) (void *core, - grub_size_t core_size - __attribute__ ((unused)), - grub_efiemu_segment_t segments) -{ - grub_err_t err; - err = grub_efiemu_load_segments (segments, core); - if (err) - return err; - - err = grub_efiemu_resolve_symbols (segments, core); - if (err) - return err; - - err = SUFFIX (grub_arch_efiemu_relocate_symbols) (segments, - grub_efiemu_elfsyms, - core); - if (err) - return err; - - return GRUB_ERR_NONE; -} diff --git a/thirdparty/grub-2.04/grub-core/efiemu/loadcore32.c b/thirdparty/grub-2.04/grub-core/efiemu/loadcore32.c deleted file mode 100644 index c1e033b78..000000000 --- a/thirdparty/grub-2.04/grub-core/efiemu/loadcore32.c +++ /dev/null @@ -1,22 +0,0 @@ -/* This file contains definitions so that loadcore.c compiles for 32-bit */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#define SUFFIX(x) x ## 32 -#define GRUB_TARGET_WORDSIZE 32 -#include "loadcore.c" diff --git a/thirdparty/grub-2.04/grub-core/efiemu/loadcore64.c b/thirdparty/grub-2.04/grub-core/efiemu/loadcore64.c deleted file mode 100644 index ce7284fea..000000000 --- a/thirdparty/grub-2.04/grub-core/efiemu/loadcore64.c +++ /dev/null @@ -1,22 +0,0 @@ -/* This file contains definitions so that loadcore.c compiles for 64-bit */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#define SUFFIX(x) x ## 64 -#define GRUB_TARGET_WORDSIZE 64 -#include "loadcore.c" diff --git a/thirdparty/grub-2.04/grub-core/efiemu/loadcore_common.c b/thirdparty/grub-2.04/grub-core/efiemu/loadcore_common.c deleted file mode 100644 index 64d79608f..000000000 --- a/thirdparty/grub-2.04/grub-core/efiemu/loadcore_common.c +++ /dev/null @@ -1,196 +0,0 @@ -/* Load runtime image of EFIemu. Functions common to 32/64-bit mode */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include - -/* Are we in 32 or 64-bit mode?*/ -static grub_efiemu_mode_t grub_efiemu_mode = GRUB_EFIEMU_NOTLOADED; -/* Runtime ELF file */ -static grub_ssize_t efiemu_core_size; -static void *efiemu_core = 0; -/* Linked list of segments */ -static grub_efiemu_segment_t efiemu_segments = 0; - -/* equivalent to sizeof (grub_efi_uintn_t) but taking the mode into account*/ -int -grub_efiemu_sizeof_uintn_t (void) -{ - if (grub_efiemu_mode == GRUB_EFIEMU32) - return 4; - if (grub_efiemu_mode == GRUB_EFIEMU64) - return 8; - return 0; -} - -/* Check the header and set mode */ -static grub_err_t -grub_efiemu_check_header (void *ehdr, grub_size_t size, - grub_efiemu_mode_t *mode) -{ - /* Check the magic numbers. */ - if ((*mode == GRUB_EFIEMU_NOTLOADED || *mode == GRUB_EFIEMU32) - && grub_efiemu_check_header32 (ehdr,size)) - { - *mode = GRUB_EFIEMU32; - return GRUB_ERR_NONE; - } - if ((*mode == GRUB_EFIEMU_NOTLOADED || *mode == GRUB_EFIEMU64) - && grub_efiemu_check_header64 (ehdr,size)) - { - *mode = GRUB_EFIEMU64; - return GRUB_ERR_NONE; - } - return grub_error (GRUB_ERR_BAD_OS, "invalid ELF magic"); -} - -/* Unload segments */ -static int -grub_efiemu_unload_segs (grub_efiemu_segment_t seg) -{ - grub_efiemu_segment_t segn; - for (; seg; seg = segn) - { - segn = seg->next; - grub_efiemu_mm_return_request (seg->handle); - grub_free (seg); - } - return 1; -} - - -grub_err_t -grub_efiemu_loadcore_unload(void) -{ - switch (grub_efiemu_mode) - { - case GRUB_EFIEMU32: - grub_efiemu_loadcore_unload32 (); - break; - - case GRUB_EFIEMU64: - grub_efiemu_loadcore_unload64 (); - break; - - default: - break; - } - - grub_efiemu_mode = GRUB_EFIEMU_NOTLOADED; - - grub_free (efiemu_core); - efiemu_core = 0; - - grub_efiemu_unload_segs (efiemu_segments); - efiemu_segments = 0; - - grub_efiemu_free_syms (); - - return GRUB_ERR_NONE; -} - -/* Load runtime file and do some initial preparations */ -grub_err_t -grub_efiemu_loadcore_init (grub_file_t file, - const char *filename) -{ - grub_err_t err; - - efiemu_core_size = grub_file_size (file); - efiemu_core = 0; - efiemu_core = grub_malloc (efiemu_core_size); - if (! efiemu_core) - return grub_errno; - - if (grub_file_read (file, efiemu_core, efiemu_core_size) - != (int) efiemu_core_size) - { - grub_free (efiemu_core); - efiemu_core = 0; - return grub_errno; - } - - if (grub_efiemu_check_header (efiemu_core, efiemu_core_size, - &grub_efiemu_mode)) - { - grub_free (efiemu_core); - efiemu_core = 0; - return GRUB_ERR_BAD_MODULE; - } - - switch (grub_efiemu_mode) - { - case GRUB_EFIEMU32: - err = grub_efiemu_loadcore_init32 (efiemu_core, filename, - efiemu_core_size, - &efiemu_segments); - if (err) - { - grub_free (efiemu_core); - efiemu_core = 0; - grub_efiemu_mode = GRUB_EFIEMU_NOTLOADED; - return err; - } - break; - - case GRUB_EFIEMU64: - err = grub_efiemu_loadcore_init64 (efiemu_core, filename, - efiemu_core_size, - &efiemu_segments); - if (err) - { - grub_free (efiemu_core); - efiemu_core = 0; - grub_efiemu_mode = GRUB_EFIEMU_NOTLOADED; - return err; - } - break; - - default: - return grub_error (GRUB_ERR_BUG, "unknown EFI runtime"); - } - return GRUB_ERR_NONE; -} - -grub_err_t -grub_efiemu_loadcore_load (void) -{ - grub_err_t err; - switch (grub_efiemu_mode) - { - case GRUB_EFIEMU32: - err = grub_efiemu_loadcore_load32 (efiemu_core, efiemu_core_size, - efiemu_segments); - if (err) - grub_efiemu_loadcore_unload (); - return err; - case GRUB_EFIEMU64: - err = grub_efiemu_loadcore_load64 (efiemu_core, efiemu_core_size, - efiemu_segments); - if (err) - grub_efiemu_loadcore_unload (); - return err; - default: - return grub_error (GRUB_ERR_BUG, "unknown EFI runtime"); - } -} diff --git a/thirdparty/grub-2.04/grub-core/efiemu/main.c b/thirdparty/grub-2.04/grub-core/efiemu/main.c deleted file mode 100644 index a81934725..000000000 --- a/thirdparty/grub-2.04/grub-core/efiemu/main.c +++ /dev/null @@ -1,328 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -/* This is an emulation of EFI runtime services. - This allows a more uniform boot on i386 machines. - As it emulates only runtime service it isn't able - to chainload EFI bootloader on non-EFI system. */ - - -#include -#include -#include -#include -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -/* System table. Two version depending on mode */ -grub_efi_system_table32_t *grub_efiemu_system_table32 = 0; -grub_efi_system_table64_t *grub_efiemu_system_table64 = 0; -/* Modules may need to execute some actions after memory allocation happens */ -static struct grub_efiemu_prepare_hook *efiemu_prepare_hooks = 0; -/* Linked list of configuration tables */ -static struct grub_efiemu_configuration_table *efiemu_config_tables = 0; -static int prepared = 0; - -/* Free all allocated space */ -grub_err_t -grub_efiemu_unload (void) -{ - struct grub_efiemu_configuration_table *cur, *d; - struct grub_efiemu_prepare_hook *curhook, *d2; - grub_efiemu_loadcore_unload (); - - grub_efiemu_mm_unload (); - - for (cur = efiemu_config_tables; cur;) - { - d = cur->next; - if (cur->unload) - cur->unload (cur->data); - grub_free (cur); - cur = d; - } - efiemu_config_tables = 0; - - for (curhook = efiemu_prepare_hooks; curhook;) - { - d2 = curhook->next; - if (curhook->unload) - curhook->unload (curhook->data); - grub_free (curhook); - curhook = d2; - } - efiemu_prepare_hooks = 0; - - prepared = 0; - - return GRUB_ERR_NONE; -} - -/* Remove previously registered table from the list */ -grub_err_t -grub_efiemu_unregister_configuration_table (grub_efi_guid_t guid) -{ - struct grub_efiemu_configuration_table *cur, *prev; - - /* Special treating if head is to remove */ - while (efiemu_config_tables - && !grub_memcmp (&(efiemu_config_tables->guid), &guid, sizeof (guid))) - { - if (efiemu_config_tables->unload) - efiemu_config_tables->unload (efiemu_config_tables->data); - cur = efiemu_config_tables->next; - grub_free (efiemu_config_tables); - efiemu_config_tables = cur; - } - if (!efiemu_config_tables) - return GRUB_ERR_NONE; - - /* Remove from chain */ - for (prev = efiemu_config_tables, cur = prev->next; cur;) - if (grub_memcmp (&(cur->guid), &guid, sizeof (guid)) == 0) - { - if (cur->unload) - cur->unload (cur->data); - prev->next = cur->next; - grub_free (cur); - cur = prev->next; - } - else - { - prev = cur; - cur = cur->next; - } - return GRUB_ERR_NONE; -} - -grub_err_t -grub_efiemu_register_prepare_hook (grub_err_t (*hook) (void *data), - void (*unload) (void *data), - void *data) -{ - struct grub_efiemu_prepare_hook *nhook; - nhook = (struct grub_efiemu_prepare_hook *) grub_malloc (sizeof (*nhook)); - if (! nhook) - return grub_errno; - nhook->hook = hook; - nhook->unload = unload; - nhook->data = data; - nhook->next = efiemu_prepare_hooks; - efiemu_prepare_hooks = nhook; - return GRUB_ERR_NONE; -} - -/* Register a configuration table either supplying the address directly - or with a hook -*/ -grub_err_t -grub_efiemu_register_configuration_table (grub_efi_guid_t guid, - void * (*get_table) (void *data), - void (*unload) (void *data), - void *data) -{ - struct grub_efiemu_configuration_table *tbl; - grub_err_t err; - - err = grub_efiemu_unregister_configuration_table (guid); - if (err) - return err; - - tbl = (struct grub_efiemu_configuration_table *) grub_malloc (sizeof (*tbl)); - if (! tbl) - return grub_errno; - - tbl->guid = guid; - tbl->get_table = get_table; - tbl->unload = unload; - tbl->data = data; - tbl->next = efiemu_config_tables; - efiemu_config_tables = tbl; - - return GRUB_ERR_NONE; -} - -static grub_err_t -grub_cmd_efiemu_unload (grub_command_t cmd __attribute__ ((unused)), - int argc __attribute__ ((unused)), - char *args[] __attribute__ ((unused))) -{ - return grub_efiemu_unload (); -} - -static grub_err_t -grub_cmd_efiemu_prepare (grub_command_t cmd __attribute__ ((unused)), - int argc __attribute__ ((unused)), - char *args[] __attribute__ ((unused))) -{ - return grub_efiemu_prepare (); -} - - - -/* Load the runtime from the file FILENAME. */ -static grub_err_t -grub_efiemu_load_file (const char *filename) -{ - grub_file_t file; - grub_err_t err; - - file = grub_file_open (filename, GRUB_FILE_TYPE_GRUB_MODULE); - if (! file) - return grub_errno; - - err = grub_efiemu_mm_init (); - if (err) - { - grub_file_close (file); - grub_efiemu_unload (); - return err; - } - - grub_dprintf ("efiemu", "mm initialized\n"); - - err = grub_efiemu_loadcore_init (file, filename); - if (err) - { - grub_file_close (file); - grub_efiemu_unload (); - return err; - } - - grub_file_close (file); - - /* For configuration tables entry in system table. */ - grub_efiemu_request_symbols (1); - - return GRUB_ERR_NONE; -} - -grub_err_t -grub_efiemu_autocore (void) -{ - const char *prefix; - char *filename; - const char *suffix; - grub_err_t err; - - if (grub_efiemu_sizeof_uintn_t () != 0) - return GRUB_ERR_NONE; - - prefix = grub_env_get ("prefix"); - - if (! prefix) - return grub_error (GRUB_ERR_FILE_NOT_FOUND, - N_("variable `%s' isn't set"), "prefix"); - - suffix = grub_efiemu_get_default_core_name (); - - filename = grub_xasprintf ("%s/" GRUB_TARGET_CPU "-" GRUB_PLATFORM "/%s", - prefix, suffix); - if (! filename) - return grub_errno; - - err = grub_efiemu_load_file (filename); - grub_free (filename); - if (err) - return err; -#ifndef GRUB_MACHINE_EMU - err = grub_machine_efiemu_init_tables (); - if (err) - return err; -#endif - - return GRUB_ERR_NONE; -} - -grub_err_t -grub_efiemu_prepare (void) -{ - grub_err_t err; - - if (prepared) - return GRUB_ERR_NONE; - - err = grub_efiemu_autocore (); - if (err) - return err; - - grub_dprintf ("efiemu", "Preparing %d-bit efiemu\n", - 8 * grub_efiemu_sizeof_uintn_t ()); - - /* Create NVRAM. */ - grub_efiemu_pnvram (); - - prepared = 1; - - if (grub_efiemu_sizeof_uintn_t () == 4) - return grub_efiemu_prepare32 (efiemu_prepare_hooks, efiemu_config_tables); - else - return grub_efiemu_prepare64 (efiemu_prepare_hooks, efiemu_config_tables); -} - - -static grub_err_t -grub_cmd_efiemu_load (grub_command_t cmd __attribute__ ((unused)), - int argc, char *args[]) -{ - grub_err_t err; - - grub_efiemu_unload (); - - if (argc != 1) - return grub_error (GRUB_ERR_BAD_ARGUMENT, N_("filename expected")); - - err = grub_efiemu_load_file (args[0]); - if (err) - return err; -#ifndef GRUB_MACHINE_EMU - err = grub_machine_efiemu_init_tables (); - if (err) - return err; -#endif - return GRUB_ERR_NONE; -} - -static grub_command_t cmd_loadcore, cmd_prepare, cmd_unload; - -GRUB_MOD_INIT(efiemu) -{ - cmd_loadcore = grub_register_command ("efiemu_loadcore", - grub_cmd_efiemu_load, - N_("FILE"), - N_("Load and initialize EFI emulator.")); - cmd_prepare = grub_register_command ("efiemu_prepare", - grub_cmd_efiemu_prepare, - 0, - N_("Finalize loading of EFI emulator.")); - cmd_unload = grub_register_command ("efiemu_unload", grub_cmd_efiemu_unload, - 0, - N_("Unload EFI emulator.")); -} - -GRUB_MOD_FINI(efiemu) -{ - grub_unregister_command (cmd_loadcore); - grub_unregister_command (cmd_prepare); - grub_unregister_command (cmd_unload); -} diff --git a/thirdparty/grub-2.04/grub-core/efiemu/mm.c b/thirdparty/grub-2.04/grub-core/efiemu/mm.c deleted file mode 100644 index 52a032f7b..000000000 --- a/thirdparty/grub-2.04/grub-core/efiemu/mm.c +++ /dev/null @@ -1,677 +0,0 @@ -/* Memory management for efiemu */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ -/* - To keep efiemu runtime contiguous this mm is special. - It uses deferred allocation. - In the first stage you may request memory with grub_efiemu_request_memalign - It will give you a handle with which in the second phase you can access your - memory with grub_efiemu_mm_obtain_request (handle). It's guaranteed that - subsequent calls with the same handle return the same result. You can't request any additional memory once you're in the second phase -*/ - -#include -#include -#include -#include -#include -#include - -struct grub_efiemu_memrequest -{ - struct grub_efiemu_memrequest *next; - grub_efi_memory_type_t type; - grub_size_t size; - grub_size_t align_overhead; - int handle; - void *val; -}; -/* Linked list of requested memory. */ -static struct grub_efiemu_memrequest *memrequests = 0; -/* Memory map. */ -static grub_efi_memory_descriptor_t *efiemu_mmap = 0; -/* Pointer to allocated memory */ -static void *resident_memory = 0; -/* Size of requested memory per type */ -static grub_size_t requested_memory[GRUB_EFI_MAX_MEMORY_TYPE]; -/* How many slots is allocated for memory_map and how many are already used */ -static int mmap_reserved_size = 0, mmap_num = 0; - -/* Add a memory region to map*/ -static grub_err_t -grub_efiemu_add_to_mmap (grub_uint64_t start, grub_uint64_t size, - grub_efi_memory_type_t type) -{ - grub_uint64_t page_start, npages; - - /* Extend map if necessary*/ - if (mmap_num >= mmap_reserved_size) - { - void *old; - mmap_reserved_size = 2 * (mmap_reserved_size + 1); - old = efiemu_mmap; - efiemu_mmap = (grub_efi_memory_descriptor_t *) - grub_realloc (efiemu_mmap, mmap_reserved_size - * sizeof (grub_efi_memory_descriptor_t)); - if (!efiemu_mmap) - { - grub_free (old); - return grub_errno; - } - } - - /* Fill slot*/ - page_start = start - (start % GRUB_EFIEMU_PAGESIZE); - npages = (size + (start % GRUB_EFIEMU_PAGESIZE) + GRUB_EFIEMU_PAGESIZE - 1) - / GRUB_EFIEMU_PAGESIZE; - efiemu_mmap[mmap_num].physical_start = page_start; - efiemu_mmap[mmap_num].virtual_start = page_start; - efiemu_mmap[mmap_num].num_pages = npages; - efiemu_mmap[mmap_num].type = type; - mmap_num++; - - return GRUB_ERR_NONE; -} - -/* Request a resident memory of type TYPE of size SIZE aligned at ALIGN - ALIGN must be a divisor of page size (if it's a divisor of 4096 - it should be ok on all platforms) - */ -int -grub_efiemu_request_memalign (grub_size_t align, grub_size_t size, - grub_efi_memory_type_t type) -{ - grub_size_t align_overhead; - struct grub_efiemu_memrequest *ret, *cur, *prev; - /* Check that the request is correct */ - if (type <= GRUB_EFI_LOADER_CODE || type == GRUB_EFI_PERSISTENT_MEMORY || - type >= GRUB_EFI_MAX_MEMORY_TYPE) - return -2; - - /* Add new size to requested size */ - align_overhead = align - (requested_memory[type]%align); - if (align_overhead == align) - align_overhead = 0; - requested_memory[type] += align_overhead + size; - - /* Remember the request */ - ret = grub_zalloc (sizeof (*ret)); - if (!ret) - return -1; - ret->type = type; - ret->size = size; - ret->align_overhead = align_overhead; - prev = 0; - - /* Add request to the end of the chain. - It should be at the end because otherwise alignment isn't guaranteed */ - for (cur = memrequests; cur; prev = cur, cur = cur->next); - if (prev) - { - ret->handle = prev->handle + 1; - prev->next = ret; - } - else - { - ret->handle = 1; /* Avoid 0 handle*/ - memrequests = ret; - } - return ret->handle; -} - -/* Really allocate the memory */ -static grub_err_t -efiemu_alloc_requests (void) -{ - grub_size_t align_overhead = 0; - grub_uint8_t *curptr, *typestart; - struct grub_efiemu_memrequest *cur; - grub_size_t total_alloc = 0; - unsigned i; - /* Order of memory regions */ - grub_efi_memory_type_t reqorder[] = - { - /* First come regions usable by OS*/ - GRUB_EFI_LOADER_CODE, - GRUB_EFI_LOADER_DATA, - GRUB_EFI_BOOT_SERVICES_CODE, - GRUB_EFI_BOOT_SERVICES_DATA, - GRUB_EFI_CONVENTIONAL_MEMORY, - GRUB_EFI_ACPI_RECLAIM_MEMORY, - - /* Then memory used by runtime */ - /* This way all our regions are in a single block */ - GRUB_EFI_RUNTIME_SERVICES_CODE, - GRUB_EFI_RUNTIME_SERVICES_DATA, - GRUB_EFI_ACPI_MEMORY_NVS, - - /* And then unavailable memory types. This is more for a completeness. - You should double think before allocating memory of any of these types - */ - GRUB_EFI_UNUSABLE_MEMORY, - GRUB_EFI_MEMORY_MAPPED_IO, - GRUB_EFI_MEMORY_MAPPED_IO_PORT_SPACE, - GRUB_EFI_PAL_CODE - - /* - * These are not allocatable: - * GRUB_EFI_RESERVED_MEMORY_TYPE - * GRUB_EFI_PERSISTENT_MEMORY - * >= GRUB_EFI_MAX_MEMORY_TYPE - */ - }; - - /* Compute total memory needed */ - for (i = 0; i < sizeof (reqorder) / sizeof (reqorder[0]); i++) - { - align_overhead = GRUB_EFIEMU_PAGESIZE - - (requested_memory[reqorder[i]] % GRUB_EFIEMU_PAGESIZE); - if (align_overhead == GRUB_EFIEMU_PAGESIZE) - align_overhead = 0; - total_alloc += requested_memory[reqorder[i]] + align_overhead; - } - - /* Allocate the whole memory in one block */ - resident_memory = grub_memalign (GRUB_EFIEMU_PAGESIZE, total_alloc); - if (!resident_memory) - return grub_errno; - - /* Split the memory into blocks by type */ - curptr = resident_memory; - for (i = 0; i < sizeof (reqorder) / sizeof (reqorder[0]); i++) - { - if (!requested_memory[reqorder[i]]) - continue; - typestart = curptr; - - /* Write pointers to requests */ - for (cur = memrequests; cur; cur = cur->next) - if (cur->type == reqorder[i]) - { - curptr = ((grub_uint8_t *)curptr) + cur->align_overhead; - cur->val = curptr; - curptr = ((grub_uint8_t *)curptr) + cur->size; - } - - /* Ensure that the regions are page-aligned */ - align_overhead = GRUB_EFIEMU_PAGESIZE - - (requested_memory[reqorder[i]] % GRUB_EFIEMU_PAGESIZE); - if (align_overhead == GRUB_EFIEMU_PAGESIZE) - align_overhead = 0; - curptr = ((grub_uint8_t *) curptr) + align_overhead; - - /* Add the region to memory map */ - grub_efiemu_add_to_mmap ((grub_addr_t) typestart, - curptr - typestart, reqorder[i]); - } - - return GRUB_ERR_NONE; -} - -/* Get a pointer to requested memory from handle */ -void * -grub_efiemu_mm_obtain_request (int handle) -{ - struct grub_efiemu_memrequest *cur; - for (cur = memrequests; cur; cur = cur->next) - if (cur->handle == handle) - return cur->val; - return 0; -} - -/* Get type of requested memory by handle */ -grub_efi_memory_type_t -grub_efiemu_mm_get_type (int handle) -{ - struct grub_efiemu_memrequest *cur; - for (cur = memrequests; cur; cur = cur->next) - if (cur->handle == handle) - return cur->type; - return 0; -} - -/* Free a request */ -void -grub_efiemu_mm_return_request (int handle) -{ - struct grub_efiemu_memrequest *cur, *prev; - - /* Remove head if necessary */ - while (memrequests && memrequests->handle == handle) - { - cur = memrequests->next; - grub_free (memrequests); - memrequests = cur; - } - if (!memrequests) - return; - - /* Remove request from a middle of chain*/ - for (prev = memrequests, cur = prev->next; cur;) - if (cur->handle == handle) - { - prev->next = cur->next; - grub_free (cur); - cur = prev->next; - } - else - { - prev = cur; - cur = prev->next; - } -} - -/* Helper for grub_efiemu_mmap_init. */ -static int -bounds_hook (grub_uint64_t addr __attribute__ ((unused)), - grub_uint64_t size __attribute__ ((unused)), - grub_memory_type_t type __attribute__ ((unused)), - void *data __attribute__ ((unused))) -{ - mmap_reserved_size++; - return 0; -} - -/* Reserve space for memory map */ -static grub_err_t -grub_efiemu_mmap_init (void) -{ - // the place for memory used by efiemu itself - mmap_reserved_size = GRUB_EFI_MAX_MEMORY_TYPE + 1; - -#ifndef GRUB_MACHINE_EMU - grub_machine_mmap_iterate (bounds_hook, NULL); -#endif - - return GRUB_ERR_NONE; -} - -/* This is a drop-in replacement of grub_efi_get_memory_map */ -/* Get the memory map as defined in the EFI spec. Return 1 if successful, - return 0 if partial, or return -1 if an error occurs. */ -int -grub_efiemu_get_memory_map (grub_efi_uintn_t *memory_map_size, - grub_efi_memory_descriptor_t *memory_map, - grub_efi_uintn_t *map_key, - grub_efi_uintn_t *descriptor_size, - grub_efi_uint32_t *descriptor_version) -{ - if (!efiemu_mmap) - { - grub_error (GRUB_ERR_INVALID_COMMAND, - "you need to first launch efiemu_prepare"); - return -1; - } - - if (*memory_map_size < mmap_num * sizeof (grub_efi_memory_descriptor_t)) - { - *memory_map_size = mmap_num * sizeof (grub_efi_memory_descriptor_t); - return 0; - } - - *memory_map_size = mmap_num * sizeof (grub_efi_memory_descriptor_t); - grub_memcpy (memory_map, efiemu_mmap, *memory_map_size); - if (descriptor_size) - *descriptor_size = sizeof (grub_efi_memory_descriptor_t); - if (descriptor_version) - *descriptor_version = 1; - if (map_key) - *map_key = 0; - - return 1; -} - -grub_err_t -grub_efiemu_finish_boot_services (grub_efi_uintn_t *memory_map_size, - grub_efi_memory_descriptor_t *memory_map, - grub_efi_uintn_t *map_key, - grub_efi_uintn_t *descriptor_size, - grub_efi_uint32_t *descriptor_version) -{ - int val = grub_efiemu_get_memory_map (memory_map_size, - memory_map, map_key, - descriptor_size, - descriptor_version); - if (val == 1) - return GRUB_ERR_NONE; - if (val == -1) - return grub_errno; - return grub_error (GRUB_ERR_IO, "memory map buffer is too small"); -} - - -/* Free everything */ -grub_err_t -grub_efiemu_mm_unload (void) -{ - struct grub_efiemu_memrequest *cur, *d; - for (cur = memrequests; cur;) - { - d = cur->next; - grub_free (cur); - cur = d; - } - memrequests = 0; - grub_memset (&requested_memory, 0, sizeof (requested_memory)); - grub_free (resident_memory); - resident_memory = 0; - grub_free (efiemu_mmap); - efiemu_mmap = 0; - mmap_reserved_size = mmap_num = 0; - return GRUB_ERR_NONE; -} - -/* This function should be called before doing any requests */ -grub_err_t -grub_efiemu_mm_init (void) -{ - grub_err_t err; - - err = grub_efiemu_mm_unload (); - if (err) - return err; - - grub_efiemu_mmap_init (); - - return GRUB_ERR_NONE; -} - -/* Helper for grub_efiemu_mmap_fill. */ -static int -fill_hook (grub_uint64_t addr, grub_uint64_t size, grub_memory_type_t type, - void *data __attribute__ ((unused))) - { - switch (type) - { - case GRUB_MEMORY_AVAILABLE: - return grub_efiemu_add_to_mmap (addr, size, - GRUB_EFI_CONVENTIONAL_MEMORY); - - case GRUB_MEMORY_ACPI: - return grub_efiemu_add_to_mmap (addr, size, - GRUB_EFI_ACPI_RECLAIM_MEMORY); - - case GRUB_MEMORY_NVS: - return grub_efiemu_add_to_mmap (addr, size, - GRUB_EFI_ACPI_MEMORY_NVS); - - case GRUB_MEMORY_PERSISTENT: - case GRUB_MEMORY_PERSISTENT_LEGACY: - return grub_efiemu_add_to_mmap (addr, size, - GRUB_EFI_PERSISTENT_MEMORY); - default: - grub_dprintf ("efiemu", - "Unknown memory type %d. Assuming unusable\n", type); - /* FALLTHROUGH */ - case GRUB_MEMORY_RESERVED: - return grub_efiemu_add_to_mmap (addr, size, - GRUB_EFI_UNUSABLE_MEMORY); - } - } - -/* Copy host memory map */ -static grub_err_t -grub_efiemu_mmap_fill (void) -{ -#ifndef GRUB_MACHINE_EMU - grub_machine_mmap_iterate (fill_hook, NULL); -#endif - - return GRUB_ERR_NONE; -} - -grub_err_t -grub_efiemu_mmap_iterate (grub_memory_hook_t hook, void *hook_data) -{ - unsigned i; - - for (i = 0; i < (unsigned) mmap_num; i++) - switch (efiemu_mmap[i].type) - { - case GRUB_EFI_RUNTIME_SERVICES_CODE: - hook (efiemu_mmap[i].physical_start, efiemu_mmap[i].num_pages * 4096, - GRUB_MEMORY_CODE, hook_data); - break; - - case GRUB_EFI_UNUSABLE_MEMORY: - hook (efiemu_mmap[i].physical_start, efiemu_mmap[i].num_pages * 4096, - GRUB_MEMORY_BADRAM, hook_data); - break; - - case GRUB_EFI_RESERVED_MEMORY_TYPE: - case GRUB_EFI_RUNTIME_SERVICES_DATA: - case GRUB_EFI_MEMORY_MAPPED_IO: - case GRUB_EFI_MEMORY_MAPPED_IO_PORT_SPACE: - case GRUB_EFI_PAL_CODE: - default: - hook (efiemu_mmap[i].physical_start, efiemu_mmap[i].num_pages * 4096, - GRUB_MEMORY_RESERVED, hook_data); - break; - - case GRUB_EFI_LOADER_CODE: - case GRUB_EFI_LOADER_DATA: - case GRUB_EFI_BOOT_SERVICES_CODE: - case GRUB_EFI_BOOT_SERVICES_DATA: - case GRUB_EFI_CONVENTIONAL_MEMORY: - hook (efiemu_mmap[i].physical_start, efiemu_mmap[i].num_pages * 4096, - GRUB_MEMORY_AVAILABLE, hook_data); - break; - - case GRUB_EFI_ACPI_RECLAIM_MEMORY: - hook (efiemu_mmap[i].physical_start, efiemu_mmap[i].num_pages * 4096, - GRUB_MEMORY_ACPI, hook_data); - break; - - case GRUB_EFI_ACPI_MEMORY_NVS: - hook (efiemu_mmap[i].physical_start, efiemu_mmap[i].num_pages * 4096, - GRUB_MEMORY_NVS, hook_data); - break; - - case GRUB_EFI_PERSISTENT_MEMORY: - hook (efiemu_mmap[i].physical_start, efiemu_mmap[i].num_pages * 4096, - GRUB_MEMORY_PERSISTENT, hook_data); - break; - - } - - return 0; -} - - -/* This function resolves overlapping regions and sorts the memory map - It uses scanline (sweeping) algorithm - */ -static grub_err_t -grub_efiemu_mmap_sort_and_uniq (void) -{ - /* If same page is used by multiple types it's resolved - according to priority - 0 - free memory - 1 - memory immediately usable after ExitBootServices - 2 - memory usable after loading ACPI tables - 3 - efiemu memory - 4 - unusable memory - */ - int priority[GRUB_EFI_MAX_MEMORY_TYPE] = - { - [GRUB_EFI_RESERVED_MEMORY_TYPE] = 4, - [GRUB_EFI_LOADER_CODE] = 1, - [GRUB_EFI_LOADER_DATA] = 1, - [GRUB_EFI_BOOT_SERVICES_CODE] = 1, - [GRUB_EFI_BOOT_SERVICES_DATA] = 1, - [GRUB_EFI_RUNTIME_SERVICES_CODE] = 3, - [GRUB_EFI_RUNTIME_SERVICES_DATA] = 3, - [GRUB_EFI_CONVENTIONAL_MEMORY] = 0, - [GRUB_EFI_UNUSABLE_MEMORY] = 4, - [GRUB_EFI_ACPI_RECLAIM_MEMORY] = 2, - [GRUB_EFI_ACPI_MEMORY_NVS] = 3, - [GRUB_EFI_MEMORY_MAPPED_IO] = 4, - [GRUB_EFI_MEMORY_MAPPED_IO_PORT_SPACE] = 4, - [GRUB_EFI_PAL_CODE] = 4, - [GRUB_EFI_PERSISTENT_MEMORY] = 4 - }; - - int i, j, k, done; - - /* Scanline events */ - struct grub_efiemu_mmap_scan - { - /* At which memory address*/ - grub_uint64_t pos; - /* 0 = region starts, 1 = region ends */ - int type; - /* Which type of memory region */ - grub_efi_memory_type_t memtype; - }; - struct grub_efiemu_mmap_scan *scanline_events; - struct grub_efiemu_mmap_scan t; - - /* Previous scanline event */ - grub_uint64_t lastaddr; - int lasttype; - /* Current scanline event */ - int curtype; - /* how many regions of given type overlap at current location */ - int present[GRUB_EFI_MAX_MEMORY_TYPE]; - /* Here is stored the resulting memory map*/ - grub_efi_memory_descriptor_t *result; - - /* Initialize variables*/ - grub_memset (present, 0, sizeof (int) * GRUB_EFI_MAX_MEMORY_TYPE); - scanline_events = (struct grub_efiemu_mmap_scan *) - grub_malloc (sizeof (struct grub_efiemu_mmap_scan) * 2 * mmap_num); - - /* Number of chunks can't increase more than by factor of 2 */ - result = (grub_efi_memory_descriptor_t *) - grub_malloc (sizeof (grub_efi_memory_descriptor_t) * 2 * mmap_num); - if (!result || !scanline_events) - { - grub_free (result); - grub_free (scanline_events); - return grub_errno; - } - - /* Register scanline events */ - for (i = 0; i < mmap_num; i++) - { - scanline_events[2 * i].pos = efiemu_mmap[i].physical_start; - scanline_events[2 * i].type = 0; - scanline_events[2 * i].memtype = efiemu_mmap[i].type; - scanline_events[2 * i + 1].pos = efiemu_mmap[i].physical_start - + efiemu_mmap[i].num_pages * GRUB_EFIEMU_PAGESIZE; - scanline_events[2 * i + 1].type = 1; - scanline_events[2 * i + 1].memtype = efiemu_mmap[i].type; - } - - /* Primitive bubble sort. It has complexity O(n^2) but since we're - unlikely to have more than 100 chunks it's probably one of the - fastest for one purpose */ - done = 1; - while (done) - { - done = 0; - for (i = 0; i < 2 * mmap_num - 1; i++) - if (scanline_events[i + 1].pos < scanline_events[i].pos) - { - t = scanline_events[i + 1]; - scanline_events[i + 1] = scanline_events[i]; - scanline_events[i] = t; - done = 1; - } - } - - /* Pointer in resulting memory map */ - j = 0; - lastaddr = scanline_events[0].pos; - lasttype = scanline_events[0].memtype; - for (i = 0; i < 2 * mmap_num; i++) - { - /* Process event */ - if (scanline_events[i].type) - present[scanline_events[i].memtype]--; - else - present[scanline_events[i].memtype]++; - - /* Determine current region type */ - curtype = -1; - for (k = 0; k < GRUB_EFI_MAX_MEMORY_TYPE; k++) - if (present[k] && (curtype == -1 || priority[k] > priority[curtype])) - curtype = k; - - /* Add memory region to resulting map if necessary */ - if ((curtype == -1 || curtype != lasttype) - && lastaddr != scanline_events[i].pos - && lasttype != -1) - { - result[j].virtual_start = result[j].physical_start = lastaddr; - result[j].num_pages = (scanline_events[i].pos - lastaddr) - / GRUB_EFIEMU_PAGESIZE; - result[j].type = lasttype; - - /* We set runtime attribute on pages we need to be mapped */ - result[j].attribute - = (lasttype == GRUB_EFI_RUNTIME_SERVICES_CODE - || lasttype == GRUB_EFI_RUNTIME_SERVICES_DATA) - ? GRUB_EFI_MEMORY_RUNTIME : 0; - grub_dprintf ("efiemu", - "mmap entry: type %d start 0x%llx 0x%llx pages\n", - result[j].type, - result[j].physical_start, result[j].num_pages); - j++; - } - - /* Update last values if necessary */ - if (curtype == -1 || curtype != lasttype) - { - lasttype = curtype; - lastaddr = scanline_events[i].pos; - } - } - - grub_free (scanline_events); - - /* Shrink resulting memory map to really used size and replace efiemu_mmap - by new value */ - grub_free (efiemu_mmap); - efiemu_mmap = grub_realloc (result, j * sizeof (*result)); - return GRUB_ERR_NONE; -} - -/* This function is called to switch from first to second phase */ -grub_err_t -grub_efiemu_mm_do_alloc (void) -{ - grub_err_t err; - - /* Preallocate mmap */ - efiemu_mmap = (grub_efi_memory_descriptor_t *) - grub_malloc (mmap_reserved_size * sizeof (grub_efi_memory_descriptor_t)); - if (!efiemu_mmap) - { - grub_efiemu_unload (); - return grub_errno; - } - - err = efiemu_alloc_requests (); - if (err) - return err; - err = grub_efiemu_mmap_fill (); - if (err) - return err; - return grub_efiemu_mmap_sort_and_uniq (); -} diff --git a/thirdparty/grub-2.04/grub-core/efiemu/pnvram.c b/thirdparty/grub-2.04/grub-core/efiemu/pnvram.c deleted file mode 100644 index c5c3d4bd3..000000000 --- a/thirdparty/grub-2.04/grub-core/efiemu/pnvram.c +++ /dev/null @@ -1,268 +0,0 @@ -/* Export pnvram and some variables for runtime */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include -#include -#include - -/* Place for final location of variables */ -static int nvram_handle = 0; -static int nvramsize_handle = 0; -static int high_monotonic_count_handle = 0; -static int timezone_handle = 0; -static int accuracy_handle = 0; -static int daylight_handle = 0; - -static grub_size_t nvramsize; - -/* Parse signed value */ -static int -grub_strtosl (const char *arg, char **end, int base) -{ - if (arg[0] == '-') - return -grub_strtoul (arg + 1, end, base); - return grub_strtoul (arg, end, base); -} - -static inline int -hextoval (char c) -{ - if (c >= '0' && c <= '9') - return c - '0'; - if (c >= 'a' && c <= 'z') - return c - 'a' + 10; - if (c >= 'A' && c <= 'Z') - return c - 'A' + 10; - return 0; -} - -static inline grub_err_t -unescape (char *in, char *out, char *outmax, int *len) -{ - char *ptr, *dptr; - dptr = out; - for (ptr = in; *ptr && dptr < outmax; ) - if (*ptr == '%' && ptr[1] && ptr[2]) - { - *dptr = (hextoval (ptr[1]) << 4) | (hextoval (ptr[2])); - ptr += 3; - dptr++; - } - else - { - *dptr = *ptr; - ptr++; - dptr++; - } - if (dptr == outmax) - return grub_error (GRUB_ERR_OUT_OF_MEMORY, - "too many NVRAM variables for reserved variable space." - " Try increasing EfiEmu.pnvram.size"); - *len = dptr - out; - return 0; -} - -/* Export stuff for efiemu */ -static grub_err_t -nvram_set (void * data __attribute__ ((unused))) -{ - const char *env; - /* Take definitive pointers */ - char *nvram = grub_efiemu_mm_obtain_request (nvram_handle); - grub_uint32_t *nvramsize_def - = grub_efiemu_mm_obtain_request (nvramsize_handle); - grub_uint32_t *high_monotonic_count - = grub_efiemu_mm_obtain_request (high_monotonic_count_handle); - grub_int16_t *timezone - = grub_efiemu_mm_obtain_request (timezone_handle); - grub_uint8_t *daylight - = grub_efiemu_mm_obtain_request (daylight_handle); - grub_uint32_t *accuracy - = grub_efiemu_mm_obtain_request (accuracy_handle); - char *nvramptr; - struct grub_env_var *var; - - /* Copy to definitive loaction */ - grub_dprintf ("efiemu", "preparing pnvram\n"); - - env = grub_env_get ("EfiEmu.pnvram.high_monotonic_count"); - *high_monotonic_count = env ? grub_strtoul (env, 0, 0) : 1; - env = grub_env_get ("EfiEmu.pnvram.timezone"); - *timezone = env ? grub_strtosl (env, 0, 0) : GRUB_EFI_UNSPECIFIED_TIMEZONE; - env = grub_env_get ("EfiEmu.pnvram.accuracy"); - *accuracy = env ? grub_strtoul (env, 0, 0) : 50000000; - env = grub_env_get ("EfiEmu.pnvram.daylight"); - *daylight = env ? grub_strtoul (env, 0, 0) : 0; - - nvramptr = nvram; - grub_memset (nvram, 0, nvramsize); - FOR_SORTED_ENV (var) - { - char *guid, *attr, *name, *varname; - struct efi_variable *efivar; - int len = 0; - int i; - grub_uint64_t guidcomp; - - if (grub_memcmp (var->name, "EfiEmu.pnvram.", - sizeof ("EfiEmu.pnvram.") - 1) != 0) - continue; - - guid = var->name + sizeof ("EfiEmu.pnvram.") - 1; - - attr = grub_strchr (guid, '.'); - if (!attr) - continue; - attr++; - - name = grub_strchr (attr, '.'); - if (!name) - continue; - name++; - - efivar = (struct efi_variable *) nvramptr; - if (nvramptr - nvram + sizeof (struct efi_variable) > nvramsize) - return grub_error (GRUB_ERR_OUT_OF_MEMORY, - "too many NVRAM variables for reserved variable space." - " Try increasing EfiEmu.pnvram.size"); - - nvramptr += sizeof (struct efi_variable); - - efivar->guid.data1 = grub_cpu_to_le32 (grub_strtoul (guid, &guid, 16)); - if (*guid != '-') - continue; - guid++; - - efivar->guid.data2 = grub_cpu_to_le16 (grub_strtoul (guid, &guid, 16)); - if (*guid != '-') - continue; - guid++; - - efivar->guid.data3 = grub_cpu_to_le16 (grub_strtoul (guid, &guid, 16)); - if (*guid != '-') - continue; - guid++; - - guidcomp = grub_strtoull (guid, 0, 16); - for (i = 0; i < 8; i++) - efivar->guid.data4[i] = (guidcomp >> (56 - 8 * i)) & 0xff; - - efivar->attributes = grub_strtoull (attr, 0, 16); - - varname = grub_malloc (grub_strlen (name) + 1); - if (! varname) - return grub_errno; - - if (unescape (name, varname, varname + grub_strlen (name) + 1, &len)) - break; - - len = grub_utf8_to_utf16 ((grub_uint16_t *) nvramptr, - (nvramsize - (nvramptr - nvram)) / 2, - (grub_uint8_t *) varname, len, NULL); - - nvramptr += 2 * len; - *((grub_uint16_t *) nvramptr) = 0; - nvramptr += 2; - efivar->namelen = 2 * len + 2; - - if (unescape (var->value, nvramptr, nvram + nvramsize, &len)) - { - efivar->namelen = 0; - break; - } - - nvramptr += len; - - efivar->size = len; - } - if (grub_errno) - return grub_errno; - - *nvramsize_def = nvramsize; - - /* Register symbols */ - grub_efiemu_register_symbol ("efiemu_variables", nvram_handle, 0); - grub_efiemu_register_symbol ("efiemu_varsize", nvramsize_handle, 0); - grub_efiemu_register_symbol ("efiemu_high_monotonic_count", - high_monotonic_count_handle, 0); - grub_efiemu_register_symbol ("efiemu_time_zone", timezone_handle, 0); - grub_efiemu_register_symbol ("efiemu_time_daylight", daylight_handle, 0); - grub_efiemu_register_symbol ("efiemu_time_accuracy", - accuracy_handle, 0); - - return GRUB_ERR_NONE; -} - -static void -nvram_unload (void * data __attribute__ ((unused))) -{ - grub_efiemu_mm_return_request (nvram_handle); - grub_efiemu_mm_return_request (nvramsize_handle); - grub_efiemu_mm_return_request (high_monotonic_count_handle); - grub_efiemu_mm_return_request (timezone_handle); - grub_efiemu_mm_return_request (accuracy_handle); - grub_efiemu_mm_return_request (daylight_handle); -} - -grub_err_t -grub_efiemu_pnvram (void) -{ - const char *size; - grub_err_t err; - - nvramsize = 0; - - size = grub_env_get ("EfiEmu.pnvram.size"); - if (size) - nvramsize = grub_strtoul (size, 0, 0); - - if (!nvramsize) - nvramsize = 2048; - - err = grub_efiemu_register_prepare_hook (nvram_set, nvram_unload, 0); - if (err) - return err; - - nvram_handle - = grub_efiemu_request_memalign (1, nvramsize, - GRUB_EFI_RUNTIME_SERVICES_DATA); - nvramsize_handle - = grub_efiemu_request_memalign (1, sizeof (grub_uint32_t), - GRUB_EFI_RUNTIME_SERVICES_DATA); - high_monotonic_count_handle - = grub_efiemu_request_memalign (1, sizeof (grub_uint32_t), - GRUB_EFI_RUNTIME_SERVICES_DATA); - timezone_handle - = grub_efiemu_request_memalign (1, sizeof (grub_uint16_t), - GRUB_EFI_RUNTIME_SERVICES_DATA); - daylight_handle - = grub_efiemu_request_memalign (1, sizeof (grub_uint8_t), - GRUB_EFI_RUNTIME_SERVICES_DATA); - accuracy_handle - = grub_efiemu_request_memalign (1, sizeof (grub_uint32_t), - GRUB_EFI_RUNTIME_SERVICES_DATA); - - return GRUB_ERR_NONE; -} diff --git a/thirdparty/grub-2.04/grub-core/efiemu/prepare.c b/thirdparty/grub-2.04/grub-core/efiemu/prepare.c deleted file mode 100644 index 99ddb5abb..000000000 --- a/thirdparty/grub-2.04/grub-core/efiemu/prepare.c +++ /dev/null @@ -1,169 +0,0 @@ -/* Prepare efiemu. E.g. allocate memory, load the runtime - to appropriate place, etc */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include - -grub_err_t -SUFFIX (grub_efiemu_prepare) (struct grub_efiemu_prepare_hook *prepare_hooks, - struct grub_efiemu_configuration_table - *config_tables) -{ - grub_err_t err; - int conftable_handle; - struct grub_efiemu_configuration_table *cur; - struct grub_efiemu_prepare_hook *curhook; - - int cntconftables = 0; - struct SUFFIX (grub_efiemu_configuration_table) *conftables = 0; - int i; - int handle; - grub_off_t off; - - grub_dprintf ("efiemu", "Preparing EfiEmu\n"); - - /* Request space for the list of configuration tables */ - for (cur = config_tables; cur; cur = cur->next) - cntconftables++; - conftable_handle - = grub_efiemu_request_memalign (GRUB_EFIEMU_PAGESIZE, - cntconftables * sizeof (*conftables), - GRUB_EFI_RUNTIME_SERVICES_DATA); - - /* Switch from phase 1 (counting) to phase 2 (real job) */ - grub_efiemu_alloc_syms (); - grub_efiemu_mm_do_alloc (); - grub_efiemu_write_sym_markers (); - - grub_efiemu_system_table32 = 0; - grub_efiemu_system_table64 = 0; - - /* Execute hooks */ - for (curhook = prepare_hooks; curhook; curhook = curhook->next) - curhook->hook (curhook->data); - - /* Move runtime to its due place */ - err = grub_efiemu_loadcore_load (); - if (err) - { - grub_efiemu_unload (); - return err; - } - - err = grub_efiemu_resolve_symbol ("efiemu_system_table", &handle, &off); - if (err) - { - grub_efiemu_unload (); - return err; - } - - SUFFIX (grub_efiemu_system_table) - = (struct SUFFIX (grub_efi_system_table) *) - ((grub_uint8_t *) grub_efiemu_mm_obtain_request (handle) + off); - - /* Put pointer to the list of configuration tables in system table */ - err = grub_efiemu_write_value - (&(SUFFIX (grub_efiemu_system_table)->configuration_table), 0, - conftable_handle, 0, 1, - sizeof (SUFFIX (grub_efiemu_system_table)->configuration_table)); - if (err) - { - grub_efiemu_unload (); - return err; - } - - SUFFIX(grub_efiemu_system_table)->num_table_entries = cntconftables; - - /* Fill the list of configuration tables */ - conftables = (struct SUFFIX (grub_efiemu_configuration_table) *) - grub_efiemu_mm_obtain_request (conftable_handle); - i = 0; - for (cur = config_tables; cur; cur = cur->next, i++) - { - grub_memcpy (&(conftables[i].vendor_guid), &(cur->guid), - sizeof (cur->guid)); - if (cur->get_table) - conftables[i].vendor_table = (grub_addr_t) cur->get_table (cur->data); - else - conftables[i].vendor_table = (grub_addr_t) cur->data; - } - - err = SUFFIX (grub_efiemu_crc) (); - if (err) - { - grub_efiemu_unload (); - return err; - } - - grub_dprintf ("efiemu","system_table = %p, conftables = %p (%d entries)\n", - SUFFIX (grub_efiemu_system_table), conftables, cntconftables); - - return GRUB_ERR_NONE; -} - -grub_err_t -SUFFIX (grub_efiemu_crc) (void) -{ - grub_err_t err; - int handle; - grub_off_t off; - struct SUFFIX (grub_efiemu_runtime_services) *runtime_services; - grub_uint32_t crc32_val; - - if (GRUB_MD_CRC32->mdlen != 4) - return grub_error (GRUB_ERR_BUG, "incorrect mdlen"); - - /* compute CRC32 of runtime_services */ - err = grub_efiemu_resolve_symbol ("efiemu_runtime_services", - &handle, &off); - if (err) - return err; - - runtime_services = (struct SUFFIX (grub_efiemu_runtime_services) *) - ((grub_uint8_t *) grub_efiemu_mm_obtain_request (handle) + off); - - runtime_services->hdr.crc32 = 0; - - grub_crypto_hash (GRUB_MD_CRC32, &crc32_val, - runtime_services, runtime_services->hdr.header_size); - runtime_services->hdr.crc32 = - grub_be_to_cpu32(crc32_val); - - err = grub_efiemu_resolve_symbol ("efiemu_system_table", &handle, &off); - if (err) - return err; - - /* compute CRC32 of system table */ - SUFFIX (grub_efiemu_system_table)->hdr.crc32 = 0; - grub_crypto_hash (GRUB_MD_CRC32, &crc32_val, - SUFFIX (grub_efiemu_system_table), - SUFFIX (grub_efiemu_system_table)->hdr.header_size); - SUFFIX (grub_efiemu_system_table)->hdr.crc32 = - grub_be_to_cpu32(crc32_val); - - grub_dprintf ("efiemu","system_table = %p, runtime_services = %p\n", - SUFFIX (grub_efiemu_system_table), runtime_services); - - return GRUB_ERR_NONE; -} diff --git a/thirdparty/grub-2.04/grub-core/efiemu/prepare32.c b/thirdparty/grub-2.04/grub-core/efiemu/prepare32.c deleted file mode 100644 index fd6109ea3..000000000 --- a/thirdparty/grub-2.04/grub-core/efiemu/prepare32.c +++ /dev/null @@ -1,22 +0,0 @@ -/* This file contains definitions so that prepare.c compiles for 32-bit */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#define SUFFIX(x) x ## 32 - -#include "prepare.c" diff --git a/thirdparty/grub-2.04/grub-core/efiemu/prepare64.c b/thirdparty/grub-2.04/grub-core/efiemu/prepare64.c deleted file mode 100644 index 811f55896..000000000 --- a/thirdparty/grub-2.04/grub-core/efiemu/prepare64.c +++ /dev/null @@ -1,22 +0,0 @@ -/* This file contains definitions so that prepare.c compiles for 64-bit */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#define SUFFIX(x) x ## 64 - -#include "prepare.c" diff --git a/thirdparty/grub-2.04/grub-core/efiemu/runtime/config.h b/thirdparty/grub-2.04/grub-core/efiemu/runtime/config.h deleted file mode 100644 index c9fe02716..000000000 --- a/thirdparty/grub-2.04/grub-core/efiemu/runtime/config.h +++ /dev/null @@ -1,36 +0,0 @@ -/* This is a pseudo config.h so that types.h compiles nicely */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#define GRUB_TYPES_CPU_HEADER 1 - -#ifdef __i386__ -# define SIZEOF_VOID_P 4 -# define SIZEOF_LONG 4 -# define GRUB_TARGET_SIZEOF_VOID_P 4 -# define GRUB_TARGET_SIZEOF_LONG 4 -# define EFI_FUNC(x) x -#elif defined (__x86_64__) -# define SIZEOF_VOID_P 8 -# define SIZEOF_LONG 8 -# define GRUB_TARGET_SIZEOF_VOID_P 8 -# define GRUB_TARGET_SIZEOF_LONG 8 -# define EFI_FUNC(x) x ## _real -#else -#error "Unknown architecture" -#endif diff --git a/thirdparty/grub-2.04/grub-core/efiemu/runtime/efiemu.S b/thirdparty/grub-2.04/grub-core/efiemu/runtime/efiemu.S deleted file mode 100644 index b502314ee..000000000 --- a/thirdparty/grub-2.04/grub-core/efiemu/runtime/efiemu.S +++ /dev/null @@ -1,159 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2006,2007,2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include - -/* - * x86_64 uses registry to pass parameters. Unfortunately, gcc and efi use - * different call conversion, so we need to do some conversion. - * - * gcc: - * %rdi, %rsi, %rdx, %rcx, %r8, %r9, 8(%rsp), 16(%rsp), ... - * - * efi: - * %rcx, %rdx, %r8, %r9, 32(%rsp), 40(%rsp), 48(%rsp), ... - * - */ - - .file "efiemu.S" - .text - -FUNCTION (efiemu_get_time) - push %rdi - push %rsi - mov %rcx, %rdi - mov %rdx, %rsi - call efiemu_get_time_real - pop %rsi - pop %rdi - ret - -FUNCTION (efiemu_set_time) - push %rdi - push %rsi - mov %rcx, %rdi - call efiemu_set_time_real - pop %rsi - pop %rdi - ret - - -FUNCTION (efiemu_get_wakeup_time) - push %rdi - push %rsi - mov %rcx, %rdi - mov %rdx, %rsi - mov %r8, %rdx - call efiemu_get_wakeup_time_real - pop %rsi - pop %rdi - ret - -FUNCTION (efiemu_set_wakeup_time) - push %rdi - push %rsi - mov %rcx, %rdi - mov %rdx, %rsi - call efiemu_set_wakeup_time_real - pop %rsi - pop %rdi - ret - -FUNCTION (efiemu_get_variable) - push %rdi - push %rsi - mov %rcx, %rdi - mov %rdx, %rsi - mov %r8, %rdx - mov %r9, %rcx - mov 56(%rsp), %r8 - call efiemu_get_variable_real - pop %rsi - pop %rdi - ret - -FUNCTION (efiemu_get_next_variable_name) - push %rdi - push %rsi - mov %rcx, %rdi - mov %rdx, %rsi - mov %r8, %rdx - call efiemu_get_next_variable_name_real - pop %rsi - pop %rdi - ret - -FUNCTION (efiemu_set_variable) - push %rdi - push %rsi - mov %rcx, %rdi - mov %rdx, %rsi - mov %r8, %rdx - mov %r9, %rcx - mov 56(%rsp), %r8 - call efiemu_set_variable_real - pop %rsi - pop %rdi - ret - -FUNCTION (efiemu_get_next_high_monotonic_count) - push %rdi - push %rsi - mov %rcx, %rdi - call efiemu_get_next_high_monotonic_count_real - pop %rsi - pop %rdi - ret - -FUNCTION (efiemu_reset_system) - push %rdi - push %rsi - mov %rcx, %rdi - mov %rdx, %rsi - mov %r8, %rdx - mov %r9, %rcx - call efiemu_reset_system_real - pop %rsi - pop %rdi - ret - - /* The following functions are always called in physical mode */ - .section ".text-physical", "ax" - -FUNCTION (efiemu_set_virtual_address_map) - push %rdi - push %rsi - mov %rcx, %rdi - mov %rdx, %rsi - mov %r8, %rdx - mov %r9, %rcx - call efiemu_set_virtual_address_map_real - pop %rsi - pop %rdi - ret - -FUNCTION (efiemu_convert_pointer) - push %rdi - push %rsi - mov %rcx, %rdi - mov %rdx, %rsi - call efiemu_convert_pointer_real - pop %rsi - pop %rdi - ret - diff --git a/thirdparty/grub-2.04/grub-core/efiemu/runtime/efiemu.c b/thirdparty/grub-2.04/grub-core/efiemu/runtime/efiemu.c deleted file mode 100644 index 5db1f347b..000000000 --- a/thirdparty/grub-2.04/grub-core/efiemu/runtime/efiemu.c +++ /dev/null @@ -1,636 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2006,2007,2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -/* This is an emulation of EFI runtime services. - This allows a more uniform boot on i386 machines. - As it emulates only runtime serviceit isn't able - to chainload EFI bootloader on non-EFI system (TODO) */ - -#ifdef __i386__ -#include -#else -#include -#endif - -#include -#include -#include -#include - -grub_efi_status_t -efiemu_get_time (grub_efi_time_t *time, - grub_efi_time_capabilities_t *capabilities); -grub_efi_status_t -efiemu_set_time (grub_efi_time_t *time); - -grub_efi_status_t -efiemu_get_wakeup_time (grub_efi_boolean_t *enabled, - grub_efi_boolean_t *pending, - grub_efi_time_t *time); -grub_efi_status_t -efiemu_set_wakeup_time (grub_efi_boolean_t enabled, - grub_efi_time_t *time); - -#ifdef __APPLE__ -#define PHYSICAL_ATTRIBUTE __attribute__ ((section("_text-physical, _text-physical"))); -#else -#define PHYSICAL_ATTRIBUTE __attribute__ ((section(".text-physical"))); -#endif - -grub_efi_status_t -efiemu_set_virtual_address_map (grub_efi_uintn_t memory_map_size, - grub_efi_uintn_t descriptor_size, - grub_efi_uint32_t descriptor_version, - grub_efi_memory_descriptor_t *virtual_map) - PHYSICAL_ATTRIBUTE; - -grub_efi_status_t -efiemu_convert_pointer (grub_efi_uintn_t debug_disposition, - void **address) - PHYSICAL_ATTRIBUTE; - -grub_efi_status_t -efiemu_get_variable (grub_efi_char16_t *variable_name, - const grub_efi_guid_t *vendor_guid, - grub_efi_uint32_t *attributes, - grub_efi_uintn_t *data_size, - void *data); - -grub_efi_status_t -efiemu_get_next_variable_name (grub_efi_uintn_t *variable_name_size, - grub_efi_char16_t *variable_name, - grub_efi_guid_t *vendor_guid); - -grub_efi_status_t -efiemu_set_variable (grub_efi_char16_t *variable_name, - const grub_efi_guid_t *vendor_guid, - grub_efi_uint32_t attributes, - grub_efi_uintn_t data_size, - void *data); -grub_efi_status_t -efiemu_get_next_high_monotonic_count (grub_efi_uint32_t *high_count); -void -efiemu_reset_system (grub_efi_reset_type_t reset_type, - grub_efi_status_t reset_status, - grub_efi_uintn_t data_size, - grub_efi_char16_t *reset_data); - -grub_efi_status_t -EFI_FUNC (efiemu_set_virtual_address_map) (grub_efi_uintn_t, - grub_efi_uintn_t, - grub_efi_uint32_t, - grub_efi_memory_descriptor_t *) - PHYSICAL_ATTRIBUTE; -grub_efi_status_t -EFI_FUNC (efiemu_convert_pointer) (grub_efi_uintn_t debug_disposition, - void **address) - PHYSICAL_ATTRIBUTE; -static grub_uint32_t -efiemu_getcrc32 (grub_uint32_t crc, void *buf, int size) - PHYSICAL_ATTRIBUTE; -static void -init_crc32_table (void) - PHYSICAL_ATTRIBUTE; -static grub_uint32_t -reflect (grub_uint32_t ref, int len) - PHYSICAL_ATTRIBUTE; - -/* - The log. It's used when examining memory dump -*/ -static grub_uint8_t loge[1000] = "EFIEMULOG"; -static int logn = 9; -#define LOG(x) { if (logn<900) loge[logn++]=x; } - -/* Interface with grub */ -extern grub_uint8_t efiemu_ptv_relocated; -struct grub_efi_runtime_services efiemu_runtime_services; -struct grub_efi_system_table efiemu_system_table; -extern struct grub_efiemu_ptv_rel efiemu_ptv_relloc[]; -extern grub_uint8_t efiemu_variables[]; -extern grub_uint32_t efiemu_varsize; -extern grub_uint32_t efiemu_high_monotonic_count; -extern grub_int16_t efiemu_time_zone; -extern grub_uint8_t efiemu_time_daylight; -extern grub_uint32_t efiemu_time_accuracy; - -/* Some standard functions because we need to be standalone */ -static void -efiemu_memcpy (void *to, const void *from, int count) -{ - int i; - for (i = 0; i < count; i++) - ((grub_uint8_t *) to)[i] = ((const grub_uint8_t *) from)[i]; -} - -static int -efiemu_str16equal (grub_uint16_t *a, grub_uint16_t *b) -{ - grub_uint16_t *ptr1, *ptr2; - for (ptr1=a,ptr2=b; *ptr1 && *ptr2 == *ptr1; ptr1++, ptr2++); - return *ptr2 == *ptr1; -} - -static grub_size_t -efiemu_str16len (grub_uint16_t *a) -{ - grub_uint16_t *ptr1; - for (ptr1 = a; *ptr1; ptr1++); - return ptr1 - a; -} - -static int -efiemu_memequal (const void *a, const void *b, grub_size_t n) -{ - grub_uint8_t *ptr1, *ptr2; - for (ptr1 = (grub_uint8_t *) a, ptr2 = (grub_uint8_t *)b; - ptr1 < (grub_uint8_t *)a + n && *ptr2 == *ptr1; ptr1++, ptr2++); - return ptr1 == a + n; -} - -static void -efiemu_memset (grub_uint8_t *a, grub_uint8_t b, grub_size_t n) -{ - grub_uint8_t *ptr1; - for (ptr1=a; ptr1 < a + n; ptr1++) - *ptr1 = b; -} - -static inline void -write_cmos (grub_uint8_t addr, grub_uint8_t val) -{ - asm volatile ("outb %%al,$0x70\n" - "mov %%cl, %%al\n" - "outb %%al,$0x71": :"a" (addr), "c" (val)); -} - -static inline grub_uint8_t -read_cmos (grub_uint8_t addr) -{ - grub_uint8_t ret; - asm volatile ("outb %%al, $0x70\n" - "inb $0x71, %%al": "=a"(ret) :"a" (addr)); - return ret; -} - -/* Needed by some gcc versions */ -int __stack_chk_fail () -{ - return 0; -} - -/* The function that implement runtime services as specified in - EFI specification */ -static inline grub_uint8_t -bcd_to_hex (grub_uint8_t in) -{ - return 10 * ((in & 0xf0) >> 4) + (in & 0x0f); -} - -grub_efi_status_t -EFI_FUNC (efiemu_get_time) (grub_efi_time_t *time, - grub_efi_time_capabilities_t *capabilities) -{ - LOG ('a'); - grub_uint8_t state; - state = read_cmos (0xb); - if (!(state & (1 << 2))) - { - time->year = 2000 + bcd_to_hex (read_cmos (0x9)); - time->month = bcd_to_hex (read_cmos (0x8)); - time->day = bcd_to_hex (read_cmos (0x7)); - time->hour = bcd_to_hex (read_cmos (0x4)); - if (time->hour >= 81) - time->hour -= 80 - 12; - if (time->hour == 24) - time->hour = 0; - time->minute = bcd_to_hex (read_cmos (0x2)); - time->second = bcd_to_hex (read_cmos (0x0)); - } - else - { - time->year = 2000 + read_cmos (0x9); - time->month = read_cmos (0x8); - time->day = read_cmos (0x7); - time->hour = read_cmos (0x4); - if (time->hour >= 0x81) - time->hour -= 0x80 - 12; - if (time->hour == 24) - time->hour = 0; - time->minute = read_cmos (0x2); - time->second = read_cmos (0x0); - } - time->nanosecond = 0; - time->pad1 = 0; - time->pad2 = 0; - time->time_zone = efiemu_time_zone; - time->daylight = efiemu_time_daylight; - capabilities->resolution = 1; - capabilities->accuracy = efiemu_time_accuracy; - capabilities->sets_to_zero = 0; - return GRUB_EFI_SUCCESS; -} - -grub_efi_status_t -EFI_FUNC (efiemu_set_time) (grub_efi_time_t *time) -{ - LOG ('b'); - grub_uint8_t state; - state = read_cmos (0xb); - write_cmos (0xb, state | 0x6); - write_cmos (0x9, time->year - 2000); - write_cmos (0x8, time->month); - write_cmos (0x7, time->day); - write_cmos (0x4, time->hour); - write_cmos (0x2, time->minute); - write_cmos (0x0, time->second); - efiemu_time_zone = time->time_zone; - efiemu_time_daylight = time->daylight; - return GRUB_EFI_SUCCESS; -} - -/* Following 2 functions are vendor specific. So announce it as unsupported */ -grub_efi_status_t -EFI_FUNC (efiemu_get_wakeup_time) (grub_efi_boolean_t *enabled, - grub_efi_boolean_t *pending, - grub_efi_time_t *time) -{ - LOG ('c'); - return GRUB_EFI_UNSUPPORTED; -} - -grub_efi_status_t -EFI_FUNC (efiemu_set_wakeup_time) (grub_efi_boolean_t enabled, - grub_efi_time_t *time) -{ - LOG ('d'); - return GRUB_EFI_UNSUPPORTED; -} - -static grub_uint32_t crc32_table [256]; - -static grub_uint32_t -reflect (grub_uint32_t ref, int len) -{ - grub_uint32_t result = 0; - int i; - - for (i = 1; i <= len; i++) - { - if (ref & 1) - result |= 1 << (len - i); - ref >>= 1; - } - - return result; -} - -static void -init_crc32_table (void) -{ - grub_uint32_t polynomial = 0x04c11db7; - int i, j; - - for(i = 0; i < 256; i++) - { - crc32_table[i] = reflect(i, 8) << 24; - for (j = 0; j < 8; j++) - crc32_table[i] = (crc32_table[i] << 1) ^ - (crc32_table[i] & (1 << 31) ? polynomial : 0); - crc32_table[i] = reflect(crc32_table[i], 32); - } -} - -static grub_uint32_t -efiemu_getcrc32 (grub_uint32_t crc, void *buf, int size) -{ - int i; - grub_uint8_t *data = buf; - - if (! crc32_table[1]) - init_crc32_table (); - - crc^= 0xffffffff; - - for (i = 0; i < size; i++) - { - crc = (crc >> 8) ^ crc32_table[(crc & 0xFF) ^ *data]; - data++; - } - - return crc ^ 0xffffffff; -} - - -grub_efi_status_t EFI_FUNC -(efiemu_set_virtual_address_map) (grub_efi_uintn_t memory_map_size, - grub_efi_uintn_t descriptor_size, - grub_efi_uint32_t descriptor_version, - grub_efi_memory_descriptor_t *virtual_map) -{ - struct grub_efiemu_ptv_rel *cur_relloc; - - LOG ('e'); - - /* Ensure that we are called only once */ - if (efiemu_ptv_relocated) - return GRUB_EFI_UNSUPPORTED; - efiemu_ptv_relocated = 1; - - /* Correct addresses using information supplied by grub */ - for (cur_relloc = efiemu_ptv_relloc; cur_relloc->size;cur_relloc++) - { - grub_int64_t corr = 0; - grub_efi_memory_descriptor_t *descptr; - - /* Compute correction */ - for (descptr = virtual_map; - ((grub_uint8_t *) descptr - (grub_uint8_t *) virtual_map) - < memory_map_size; - descptr = (grub_efi_memory_descriptor_t *) - ((grub_uint8_t *) descptr + descriptor_size)) - { - if (descptr->type == cur_relloc->plustype) - corr += descptr->virtual_start - descptr->physical_start; - if (descptr->type == cur_relloc->minustype) - corr -= descptr->virtual_start - descptr->physical_start; - } - - /* Apply correction */ - switch (cur_relloc->size) - { - case 8: - *((grub_uint64_t *) (grub_addr_t) cur_relloc->addr) += corr; - break; - case 4: - *((grub_uint32_t *) (grub_addr_t) cur_relloc->addr) += corr; - break; - case 2: - *((grub_uint16_t *) (grub_addr_t) cur_relloc->addr) += corr; - break; - case 1: - *((grub_uint8_t *) (grub_addr_t) cur_relloc->addr) += corr; - break; - } - } - - /* Recompute crc32 of system table and runtime services */ - efiemu_system_table.hdr.crc32 = 0; - efiemu_system_table.hdr.crc32 = efiemu_getcrc32 - (0, &efiemu_system_table, sizeof (efiemu_system_table)); - - efiemu_runtime_services.hdr.crc32 = 0; - efiemu_runtime_services.hdr.crc32 = efiemu_getcrc32 - (0, &efiemu_runtime_services, sizeof (efiemu_runtime_services)); - - return GRUB_EFI_SUCCESS; -} - -/* since efiemu_set_virtual_address_map corrects all the pointers - we don't need efiemu_convert_pointer */ -grub_efi_status_t -EFI_FUNC (efiemu_convert_pointer) (grub_efi_uintn_t debug_disposition, - void **address) -{ - LOG ('f'); - return GRUB_EFI_UNSUPPORTED; -} - -/* Next comes variable services. Because we have no vendor-independent - way to store these variables we have no non-volatility */ - -/* Find variable by name and GUID. */ -static struct efi_variable * -find_variable (const grub_efi_guid_t *vendor_guid, - grub_efi_char16_t *variable_name) -{ - grub_uint8_t *ptr; - struct efi_variable *efivar; - - for (ptr = efiemu_variables; ptr < efiemu_variables + efiemu_varsize; ) - { - efivar = (struct efi_variable *) ptr; - if (!efivar->namelen) - return 0; - if (efiemu_str16equal((grub_efi_char16_t *)(efivar + 1), variable_name) - && efiemu_memequal (&(efivar->guid), vendor_guid, - sizeof (efivar->guid))) - return efivar; - ptr += efivar->namelen + efivar->size + sizeof (*efivar); - } - return 0; -} - -grub_efi_status_t -EFI_FUNC (efiemu_get_variable) (grub_efi_char16_t *variable_name, - const grub_efi_guid_t *vendor_guid, - grub_efi_uint32_t *attributes, - grub_efi_uintn_t *data_size, - void *data) -{ - struct efi_variable *efivar; - LOG ('g'); - efivar = find_variable (vendor_guid, variable_name); - if (!efivar) - return GRUB_EFI_NOT_FOUND; - if (*data_size < efivar->size) - { - *data_size = efivar->size; - return GRUB_EFI_BUFFER_TOO_SMALL; - } - *data_size = efivar->size; - efiemu_memcpy (data, (grub_uint8_t *)(efivar + 1) + efivar->namelen, - efivar->size); - *attributes = efivar->attributes; - - return GRUB_EFI_SUCCESS; -} - -grub_efi_status_t EFI_FUNC -(efiemu_get_next_variable_name) (grub_efi_uintn_t *variable_name_size, - grub_efi_char16_t *variable_name, - grub_efi_guid_t *vendor_guid) -{ - struct efi_variable *efivar; - LOG ('l'); - - if (!variable_name_size || !variable_name || !vendor_guid) - return GRUB_EFI_INVALID_PARAMETER; - if (variable_name[0]) - { - efivar = find_variable (vendor_guid, variable_name); - if (!efivar) - return GRUB_EFI_NOT_FOUND; - efivar = (struct efi_variable *)((grub_uint8_t *)efivar - + efivar->namelen - + efivar->size + sizeof (*efivar)); - } - else - efivar = (struct efi_variable *) (efiemu_variables); - - LOG ('m'); - if ((grub_uint8_t *)efivar >= efiemu_variables + efiemu_varsize - || !efivar->namelen) - return GRUB_EFI_NOT_FOUND; - if (*variable_name_size < efivar->namelen) - { - *variable_name_size = efivar->namelen; - return GRUB_EFI_BUFFER_TOO_SMALL; - } - - efiemu_memcpy (variable_name, efivar + 1, efivar->namelen); - efiemu_memcpy (vendor_guid, &(efivar->guid), - sizeof (efivar->guid)); - - LOG('h'); - return GRUB_EFI_SUCCESS; -} - -grub_efi_status_t -EFI_FUNC (efiemu_set_variable) (grub_efi_char16_t *variable_name, - const grub_efi_guid_t *vendor_guid, - grub_efi_uint32_t attributes, - grub_efi_uintn_t data_size, - void *data) -{ - struct efi_variable *efivar; - grub_uint8_t *ptr; - LOG('i'); - if (!variable_name[0]) - return GRUB_EFI_INVALID_PARAMETER; - efivar = find_variable (vendor_guid, variable_name); - - /* Delete variable if any */ - if (efivar) - { - efiemu_memcpy (efivar, (grub_uint8_t *)(efivar + 1) - + efivar->namelen + efivar->size, - (efiemu_variables + efiemu_varsize) - - ((grub_uint8_t *)(efivar + 1) - + efivar->namelen + efivar->size)); - efiemu_memset (efiemu_variables + efiemu_varsize - - (sizeof (*efivar) + efivar->namelen + efivar->size), - 0, (sizeof (*efivar) + efivar->namelen + efivar->size)); - } - - if (!data_size) - return GRUB_EFI_SUCCESS; - - for (ptr = efiemu_variables; ptr < efiemu_variables + efiemu_varsize; ) - { - efivar = (struct efi_variable *) ptr; - ptr += efivar->namelen + efivar->size + sizeof (*efivar); - if (!efivar->namelen) - break; - } - if ((grub_uint8_t *)(efivar + 1) + data_size - + 2 * (efiemu_str16len (variable_name) + 1) - >= efiemu_variables + efiemu_varsize) - return GRUB_EFI_OUT_OF_RESOURCES; - - efiemu_memcpy (&(efivar->guid), vendor_guid, sizeof (efivar->guid)); - efivar->namelen = 2 * (efiemu_str16len (variable_name) + 1); - efivar->size = data_size; - efivar->attributes = attributes; - efiemu_memcpy (efivar + 1, variable_name, - 2 * (efiemu_str16len (variable_name) + 1)); - efiemu_memcpy ((grub_uint8_t *)(efivar + 1) - + 2 * (efiemu_str16len (variable_name) + 1), - data, data_size); - - return GRUB_EFI_SUCCESS; -} - -grub_efi_status_t EFI_FUNC -(efiemu_get_next_high_monotonic_count) (grub_efi_uint32_t *high_count) -{ - LOG ('j'); - if (!high_count) - return GRUB_EFI_INVALID_PARAMETER; - *high_count = ++efiemu_high_monotonic_count; - return GRUB_EFI_SUCCESS; -} - -/* To implement it with APM we need to go to real mode. It's too much hassle - Besides EFI specification says that this function shouldn't be used - on systems supporting ACPI - */ -void -EFI_FUNC (efiemu_reset_system) (grub_efi_reset_type_t reset_type, - grub_efi_status_t reset_status, - grub_efi_uintn_t data_size, - grub_efi_char16_t *reset_data) -{ - LOG ('k'); -} - -struct grub_efi_runtime_services efiemu_runtime_services = -{ - .hdr = - { - .signature = GRUB_EFIEMU_RUNTIME_SERVICES_SIGNATURE, - .revision = 0x0001000a, - .header_size = sizeof (struct grub_efi_runtime_services), - .crc32 = 0, /* filled later*/ - .reserved = 0 - }, - .get_time = efiemu_get_time, - .set_time = efiemu_set_time, - .get_wakeup_time = efiemu_get_wakeup_time, - .set_wakeup_time = efiemu_set_wakeup_time, - - .set_virtual_address_map = efiemu_set_virtual_address_map, - .convert_pointer = efiemu_convert_pointer, - - .get_variable = efiemu_get_variable, - .get_next_variable_name = efiemu_get_next_variable_name, - .set_variable = efiemu_set_variable, - .get_next_high_monotonic_count = efiemu_get_next_high_monotonic_count, - - .reset_system = efiemu_reset_system -}; - - -static grub_uint16_t efiemu_vendor[] = - {'G', 'R', 'U', 'B', ' ', 'E', 'F', 'I', ' ', - 'R', 'U', 'N', 'T', 'I', 'M', 'E', 0}; - -struct grub_efi_system_table efiemu_system_table = -{ - .hdr = - { - .signature = GRUB_EFIEMU_SYSTEM_TABLE_SIGNATURE, - .revision = 0x0001000a, - .header_size = sizeof (struct grub_efi_system_table), - .crc32 = 0, /* filled later*/ - .reserved = 0 - }, - .firmware_vendor = efiemu_vendor, - .firmware_revision = 0x0001000a, - .console_in_handler = 0, - .con_in = 0, - .console_out_handler = 0, - .con_out = 0, - .standard_error_handle = 0, - .std_err = 0, - .runtime_services = &efiemu_runtime_services, - .boot_services = 0, - .num_table_entries = 0, - .configuration_table = 0 -}; - diff --git a/thirdparty/grub-2.04/grub-core/efiemu/symbols.c b/thirdparty/grub-2.04/grub-core/efiemu/symbols.c deleted file mode 100644 index cc148552d..000000000 --- a/thirdparty/grub-2.04/grub-core/efiemu/symbols.c +++ /dev/null @@ -1,272 +0,0 @@ -/* Code for managing symbols and pointers in efiemu */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include - -static int ptv_written = 0; -static int ptv_alloc = 0; -static int ptv_handle = 0; -static int relocated_handle = 0; -static int ptv_requested = 0; -static struct grub_efiemu_sym *efiemu_syms = 0; - -struct grub_efiemu_sym -{ - struct grub_efiemu_sym *next; - char *name; - int handle; - grub_off_t off; -}; - -void -grub_efiemu_free_syms (void) -{ - struct grub_efiemu_sym *cur, *d; - for (cur = efiemu_syms; cur;) - { - d = cur->next; - grub_free (cur->name); - grub_free (cur); - cur = d; - } - efiemu_syms = 0; - ptv_written = 0; - ptv_alloc = 0; - ptv_requested = 0; - grub_efiemu_mm_return_request (ptv_handle); - ptv_handle = 0; - grub_efiemu_mm_return_request (relocated_handle); - relocated_handle = 0; -} - -/* Announce that the module will need NUM allocators */ -/* Because of deferred memory allocation all the relocators have to be - announced during phase 1*/ -grub_err_t -grub_efiemu_request_symbols (int num) -{ - if (ptv_alloc) - return grub_error (GRUB_ERR_BAD_ARGUMENT, - "symbols have already been allocated"); - if (num < 0) - return grub_error (GRUB_ERR_BUG, - "can't request negative symbols"); - ptv_requested += num; - return GRUB_ERR_NONE; -} - -/* Resolve the symbol name NAME and set HANDLE and OFF accordingly */ -grub_err_t -grub_efiemu_resolve_symbol (const char *name, int *handle, grub_off_t *off) -{ - struct grub_efiemu_sym *cur; - for (cur = efiemu_syms; cur; cur = cur->next) - if (!grub_strcmp (name, cur->name)) - { - *handle = cur->handle; - *off = cur->off; - return GRUB_ERR_NONE; - } - grub_dprintf ("efiemu", "%s not found\n", name); - return grub_error (GRUB_ERR_BAD_OS, N_("symbol `%s' not found"), name); -} - -/* Register symbol named NAME in memory handle HANDLE at offset OFF */ -grub_err_t -grub_efiemu_register_symbol (const char *name, int handle, grub_off_t off) -{ - struct grub_efiemu_sym *cur; - cur = (struct grub_efiemu_sym *) grub_malloc (sizeof (*cur)); - grub_dprintf ("efiemu", "registering symbol '%s'\n", name); - if (!cur) - return grub_errno; - cur->name = grub_strdup (name); - cur->next = efiemu_syms; - cur->handle = handle; - cur->off = off; - efiemu_syms = cur; - - return 0; -} - -/* Go from phase 1 to phase 2. Must be called before similar function in mm.c */ -grub_err_t -grub_efiemu_alloc_syms (void) -{ - ptv_alloc = ptv_requested; - ptv_handle = grub_efiemu_request_memalign - (1, (ptv_requested + 1) * sizeof (struct grub_efiemu_ptv_rel), - GRUB_EFI_RUNTIME_SERVICES_DATA); - relocated_handle = grub_efiemu_request_memalign - (1, sizeof (grub_uint8_t), GRUB_EFI_RUNTIME_SERVICES_DATA); - - grub_efiemu_register_symbol ("efiemu_ptv_relocated", relocated_handle, 0); - grub_efiemu_register_symbol ("efiemu_ptv_relloc", ptv_handle, 0); - return grub_errno; -} - -grub_err_t -grub_efiemu_write_sym_markers (void) -{ - struct grub_efiemu_ptv_rel *ptv_rels - = grub_efiemu_mm_obtain_request (ptv_handle); - grub_uint8_t *relocated = grub_efiemu_mm_obtain_request (relocated_handle); - grub_memset (ptv_rels, 0, (ptv_requested + 1) - * sizeof (struct grub_efiemu_ptv_rel)); - *relocated = 0; - return GRUB_ERR_NONE; -} - -/* Write value (pointer to memory PLUS_HANDLE) - - (pointer to memory MINUS_HANDLE) + VALUE to ADDR assuming that the - size SIZE bytes. If PTV_NEEDED is 1 then announce it to runtime that this - value needs to be recomputed before going to virtual mode -*/ -grub_err_t -grub_efiemu_write_value (void *addr, grub_uint32_t value, int plus_handle, - int minus_handle, int ptv_needed, int size) -{ - /* Announce relocator to runtime */ - if (ptv_needed) - { - struct grub_efiemu_ptv_rel *ptv_rels - = grub_efiemu_mm_obtain_request (ptv_handle); - - if (ptv_needed && ptv_written >= ptv_alloc) - return grub_error (GRUB_ERR_BUG, - "your module didn't declare efiemu " - " relocators correctly"); - - if (minus_handle) - ptv_rels[ptv_written].minustype - = grub_efiemu_mm_get_type (minus_handle); - else - ptv_rels[ptv_written].minustype = 0; - - if (plus_handle) - ptv_rels[ptv_written].plustype - = grub_efiemu_mm_get_type (plus_handle); - else - ptv_rels[ptv_written].plustype = 0; - - ptv_rels[ptv_written].addr = (grub_addr_t) addr; - ptv_rels[ptv_written].size = size; - ptv_written++; - - /* memset next value to zero to mark the end */ - grub_memset (&ptv_rels[ptv_written], 0, sizeof (ptv_rels[ptv_written])); - } - - /* Compute the value */ - if (minus_handle) - value -= (grub_addr_t) grub_efiemu_mm_obtain_request (minus_handle); - - if (plus_handle) - value += (grub_addr_t) grub_efiemu_mm_obtain_request (plus_handle); - - /* Write the value */ - switch (size) - { - case 8: - *((grub_uint64_t *) addr) = value; - break; - case 4: - *((grub_uint32_t *) addr) = value; - break; - case 2: - *((grub_uint16_t *) addr) = value; - break; - case 1: - *((grub_uint8_t *) addr) = value; - break; - default: - return grub_error (GRUB_ERR_BUG, "wrong symbol size"); - } - - return GRUB_ERR_NONE; -} - -grub_err_t -grub_efiemu_set_virtual_address_map (grub_efi_uintn_t memory_map_size, - grub_efi_uintn_t descriptor_size, - grub_efi_uint32_t descriptor_version - __attribute__ ((unused)), - grub_efi_memory_descriptor_t *virtual_map) -{ - grub_uint8_t *ptv_relocated; - struct grub_efiemu_ptv_rel *cur_relloc; - struct grub_efiemu_ptv_rel *ptv_rels; - - ptv_relocated = grub_efiemu_mm_obtain_request (relocated_handle); - ptv_rels = grub_efiemu_mm_obtain_request (ptv_handle); - - /* Ensure that we are called only once */ - if (*ptv_relocated) - return grub_error (GRUB_ERR_BUG, "EfiEmu is already relocated"); - *ptv_relocated = 1; - - /* Correct addresses using information supplied by grub */ - for (cur_relloc = ptv_rels; cur_relloc->size; cur_relloc++) - { - grub_int64_t corr = 0; - grub_efi_memory_descriptor_t *descptr; - - /* Compute correction */ - for (descptr = virtual_map; - (grub_size_t) ((grub_uint8_t *) descptr - - (grub_uint8_t *) virtual_map) < memory_map_size; - descptr = (grub_efi_memory_descriptor_t *) - ((grub_uint8_t *) descptr + descriptor_size)) - { - if (descptr->type == cur_relloc->plustype) - corr += descptr->virtual_start - descptr->physical_start; - if (descptr->type == cur_relloc->minustype) - corr -= descptr->virtual_start - descptr->physical_start; - } - - /* Apply correction */ - switch (cur_relloc->size) - { - case 8: - *((grub_uint64_t *) (grub_addr_t) cur_relloc->addr) += corr; - break; - case 4: - *((grub_uint32_t *) (grub_addr_t) cur_relloc->addr) += corr; - break; - case 2: - *((grub_uint16_t *) (grub_addr_t) cur_relloc->addr) += corr; - break; - case 1: - *((grub_uint8_t *) (grub_addr_t) cur_relloc->addr) += corr; - break; - } - } - - /* Recompute crc32 of system table and runtime services */ - - if (grub_efiemu_sizeof_uintn_t () == 4) - return grub_efiemu_crc32 (); - else - return grub_efiemu_crc64 (); -} diff --git a/thirdparty/grub-2.04/grub-core/font/font.c b/thirdparty/grub-2.04/grub-core/font/font.c deleted file mode 100644 index 85a292557..000000000 --- a/thirdparty/grub-2.04/grub-core/font/font.c +++ /dev/null @@ -1,1601 +0,0 @@ -/* font.c - Font API and font file loader. */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2003,2005,2006,2007,2008,2009,2010 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -#if HAVE_FONT_SOURCE -#include "ascii.h" -#endif - -#ifndef FONT_DEBUG -#define FONT_DEBUG 0 -#endif - -struct char_index_entry -{ - grub_uint32_t code; - grub_uint8_t storage_flags; - grub_uint32_t offset; - - /* Glyph if loaded, or NULL otherwise. */ - struct grub_font_glyph *glyph; -}; - -#define FONT_WEIGHT_NORMAL 100 -#define FONT_WEIGHT_BOLD 200 -#define ASCII_BITMAP_SIZE 16 - -/* Definition of font registry. */ -struct grub_font_node *grub_font_list; - -static int register_font (grub_font_t font); -static void font_init (grub_font_t font); -static void free_font (grub_font_t font); -static void remove_font (grub_font_t font); - -struct font_file_section -{ - /* The file this section is in. */ - grub_file_t file; - - /* FOURCC name of the section. */ - char name[4]; - - /* Length of the section contents. */ - grub_uint32_t length; - - /* Set by open_section() on EOF. */ - int eof; -}; - -/* Replace unknown glyphs with a rounded question mark. */ -static grub_uint8_t unknown_glyph_bitmap[] = { - /* 76543210 */ - 0x7C, /* ooooo */ - 0x82, /* o o */ - 0xBA, /* o ooo o */ - 0xAA, /* o o o o */ - 0xAA, /* o o o o */ - 0x8A, /* o o o */ - 0x9A, /* o oo o */ - 0x92, /* o o o */ - 0x92, /* o o o */ - 0x92, /* o o o */ - 0x92, /* o o o */ - 0x82, /* o o */ - 0x92, /* o o o */ - 0x82, /* o o */ - 0x7C, /* ooooo */ - 0x00 /* */ -}; - -/* The "unknown glyph" glyph, used as a last resort. */ -static struct grub_font_glyph *unknown_glyph; - -/* The font structure used when no other font is loaded. This functions - as a "Null Object" pattern, so that code everywhere does not have to - check for a NULL grub_font_t to avoid dereferencing a null pointer. */ -static struct grub_font null_font; - -/* Flag to ensure module is initialized only once. */ -static grub_uint8_t font_loader_initialized; - -#if HAVE_FONT_SOURCE -static struct grub_font_glyph *ascii_font_glyph[0x80]; -#endif - -static struct grub_font_glyph * -ascii_glyph_lookup (grub_uint32_t code) -{ -#if HAVE_FONT_SOURCE - static int ascii_failback_initialized = 0; - - if (code >= 0x80) - return NULL; - - if (ascii_failback_initialized == 0) - { - int current; - for (current = 0; current < 0x80; current++) - { - ascii_font_glyph[current] = - grub_malloc (sizeof (struct grub_font_glyph) + ASCII_BITMAP_SIZE); - - ascii_font_glyph[current]->width = 8; - ascii_font_glyph[current]->height = 16; - ascii_font_glyph[current]->offset_x = 0; - ascii_font_glyph[current]->offset_y = -2; - ascii_font_glyph[current]->device_width = 8; - ascii_font_glyph[current]->font = NULL; - - grub_memcpy (ascii_font_glyph[current]->bitmap, - &ascii_bitmaps[current * ASCII_BITMAP_SIZE], - ASCII_BITMAP_SIZE); - } - - ascii_failback_initialized = 1; - } - - return ascii_font_glyph[code]; -#else - (void) code; - return NULL; -#endif -} - -void -grub_font_loader_init (void) -{ - /* Only initialize font loader once. */ - if (font_loader_initialized) - return; - - /* Make glyph for unknown glyph. */ - unknown_glyph = grub_malloc (sizeof (struct grub_font_glyph) - + sizeof (unknown_glyph_bitmap)); - if (!unknown_glyph) - return; - - unknown_glyph->width = 8; - unknown_glyph->height = 16; - unknown_glyph->offset_x = 0; - unknown_glyph->offset_y = -3; - unknown_glyph->device_width = 8; - grub_memcpy (unknown_glyph->bitmap, - unknown_glyph_bitmap, sizeof (unknown_glyph_bitmap)); - - /* Initialize the null font. */ - font_init (&null_font); - /* FIXME: Fix this slightly improper cast. */ - null_font.name = (char *) ""; - null_font.ascent = unknown_glyph->height - 3; - null_font.descent = 3; - null_font.max_char_width = unknown_glyph->width; - null_font.max_char_height = unknown_glyph->height; - - font_loader_initialized = 1; -} - -/* Initialize the font object with initial default values. */ -static void -font_init (grub_font_t font) -{ - font->name = 0; - font->file = 0; - font->family = 0; - font->point_size = 0; - font->weight = 0; - - /* Default leading value, not in font file yet. */ - font->leading = 1; - - font->max_char_width = 0; - font->max_char_height = 0; - font->ascent = 0; - font->descent = 0; - font->num_chars = 0; - font->char_index = 0; - font->bmp_idx = 0; -} - -/* Open the next section in the file. - - On success, the section name is stored in section->name and the length in - section->length, and 0 is returned. On failure, 1 is returned and - grub_errno is set appropriately with an error message. - - If 1 is returned due to being at the end of the file, then section->eof is - set to 1; otherwise, section->eof is set to 0. */ -static int -open_section (grub_file_t file, struct font_file_section *section) -{ - grub_ssize_t retval; - grub_uint32_t raw_length; - - section->file = file; - section->eof = 0; - - /* Read the FOURCC section name. */ - retval = grub_file_read (file, section->name, 4); - if (retval >= 0 && retval < 4) - { - /* EOF encountered. */ - section->eof = 1; - return 1; - } - else if (retval < 0) - { - /* Read error. */ - return 1; - } - - /* Read the big-endian 32-bit section length. */ - retval = grub_file_read (file, &raw_length, 4); - if (retval >= 0 && retval < 4) - { - /* EOF encountered. */ - section->eof = 1; - return 1; - } - else if (retval < 0) - { - /* Read error. */ - return 1; - } - - /* Convert byte-order and store in *length. */ - section->length = grub_be_to_cpu32 (raw_length); - - return 0; -} - -/* Size in bytes of each character index (CHIX section) - entry in the font file. */ -#define FONT_CHAR_INDEX_ENTRY_SIZE (4 + 1 + 4) - -/* Load the character index (CHIX) section contents from the font file. This - presumes that the position of FILE is positioned immediately after the - section length for the CHIX section (i.e., at the start of the section - contents). Returns 0 upon success, nonzero for failure (in which case - grub_errno is set appropriately). */ -static int -load_font_index (grub_file_t file, grub_uint32_t sect_length, struct - grub_font *font) -{ - unsigned i; - grub_uint32_t last_code; - -#if FONT_DEBUG >= 2 - grub_dprintf ("font", "load_font_index(sect_length=%d)\n", sect_length); -#endif - - /* Sanity check: ensure section length is divisible by the entry size. */ - if ((sect_length % FONT_CHAR_INDEX_ENTRY_SIZE) != 0) - { - grub_error (GRUB_ERR_BAD_FONT, - "font file format error: character index length %d " - "is not a multiple of the entry size %d", - sect_length, FONT_CHAR_INDEX_ENTRY_SIZE); - return 1; - } - - /* Calculate the number of characters. */ - font->num_chars = sect_length / FONT_CHAR_INDEX_ENTRY_SIZE; - - /* Allocate the character index array. */ - font->char_index = grub_malloc (font->num_chars - * sizeof (struct char_index_entry)); - if (!font->char_index) - return 1; - font->bmp_idx = grub_malloc (0x10000 * sizeof (grub_uint16_t)); - if (!font->bmp_idx) - return 1; - grub_memset (font->bmp_idx, 0xff, 0x10000 * sizeof (grub_uint16_t)); - - -#if FONT_DEBUG >= 2 - grub_dprintf ("font", "num_chars=%d)\n", font->num_chars); -#endif - - last_code = 0; - - /* Load the character index data from the file. */ - for (i = 0; i < font->num_chars; i++) - { - struct char_index_entry *entry = &font->char_index[i]; - - /* Read code point value; convert to native byte order. */ - if (grub_file_read (file, &entry->code, 4) != 4) - return 1; - entry->code = grub_be_to_cpu32 (entry->code); - - /* Verify that characters are in ascending order. */ - if (i != 0 && entry->code <= last_code) - { - grub_error (GRUB_ERR_BAD_FONT, - "font characters not in ascending order: %u <= %u", - entry->code, last_code); - return 1; - } - - if (entry->code < 0x10000) - font->bmp_idx[entry->code] = i; - - last_code = entry->code; - - /* Read storage flags byte. */ - if (grub_file_read (file, &entry->storage_flags, 1) != 1) - return 1; - - /* Read glyph data offset; convert to native byte order. */ - if (grub_file_read (file, &entry->offset, 4) != 4) - return 1; - entry->offset = grub_be_to_cpu32 (entry->offset); - - /* No glyph loaded. Will be loaded on demand and cached thereafter. */ - entry->glyph = 0; - -#if FONT_DEBUG >= 5 - /* Print the 1st 10 characters. */ - if (i < 10) - grub_dprintf ("font", "c=%d o=%d\n", entry->code, entry->offset); -#endif - } - - return 0; -} - -/* Read the contents of the specified section as a string, which is - allocated on the heap. Returns 0 if there is an error. */ -static char * -read_section_as_string (struct font_file_section *section) -{ - char *str; - grub_ssize_t ret; - - str = grub_malloc (section->length + 1); - if (!str) - return 0; - - ret = grub_file_read (section->file, str, section->length); - if (ret < 0 || ret != (grub_ssize_t) section->length) - { - grub_free (str); - return 0; - } - - str[section->length] = '\0'; - return str; -} - -/* Read the contents of the current section as a 16-bit integer value, - which is stored into *VALUE. - Returns 0 upon success, nonzero upon failure. */ -static int -read_section_as_short (struct font_file_section *section, - grub_int16_t * value) -{ - grub_uint16_t raw_value; - - if (section->length != 2) - { - grub_error (GRUB_ERR_BAD_FONT, - "font file format error: section %c%c%c%c length " - "is %d but should be 2", - section->name[0], section->name[1], - section->name[2], section->name[3], section->length); - return 1; - } - if (grub_file_read (section->file, &raw_value, 2) != 2) - return 1; - - *value = grub_be_to_cpu16 (raw_value); - return 0; -} - -/* Load a font and add it to the beginning of the global font list. - Returns 0 upon success, nonzero upon failure. */ -grub_font_t -grub_font_load (const char *filename) -{ - grub_file_t file = 0; - struct font_file_section section; - char magic[4]; - grub_font_t font = 0; - -#if FONT_DEBUG >= 1 - grub_dprintf ("font", "add_font(%s)\n", filename); -#endif - - if (filename[0] == '(' || filename[0] == '/' || filename[0] == '+') - file = grub_buffile_open (filename, GRUB_FILE_TYPE_FONT, 1024); - else - { - const char *prefix = grub_env_get ("prefix"); - char *fullname, *ptr; - if (!prefix) - { - grub_error (GRUB_ERR_FILE_NOT_FOUND, N_("variable `%s' isn't set"), - "prefix"); - goto fail; - } - fullname = grub_malloc (grub_strlen (prefix) + grub_strlen (filename) + 1 - + sizeof ("/fonts/") + sizeof (".pf2")); - if (!fullname) - goto fail; - ptr = grub_stpcpy (fullname, prefix); - ptr = grub_stpcpy (ptr, "/fonts/"); - ptr = grub_stpcpy (ptr, filename); - ptr = grub_stpcpy (ptr, ".pf2"); - *ptr = 0; - file = grub_buffile_open (fullname, GRUB_FILE_TYPE_FONT, 1024); - grub_free (fullname); - } - if (!file) - goto fail; - -#if FONT_DEBUG >= 3 - grub_dprintf ("font", "file opened\n"); -#endif - - /* Read the FILE section. It indicates the file format. */ - if (open_section (file, §ion) != 0) - goto fail; - -#if FONT_DEBUG >= 3 - grub_dprintf ("font", "opened FILE section\n"); -#endif - if (grub_memcmp (section.name, FONT_FORMAT_SECTION_NAMES_FILE, - sizeof (FONT_FORMAT_SECTION_NAMES_FILE) - 1) != 0) - { - grub_error (GRUB_ERR_BAD_FONT, - "font file format error: 1st section must be FILE"); - goto fail; - } - -#if FONT_DEBUG >= 3 - grub_dprintf ("font", "section name ok\n"); -#endif - if (section.length != 4) - { - grub_error (GRUB_ERR_BAD_FONT, - "font file format error (file type ID length is %d " - "but should be 4)", section.length); - goto fail; - } - -#if FONT_DEBUG >= 3 - grub_dprintf ("font", "section length ok\n"); -#endif - /* Check the file format type code. */ - if (grub_file_read (file, magic, 4) != 4) - goto fail; - -#if FONT_DEBUG >= 3 - grub_dprintf ("font", "read magic ok\n"); -#endif - - if (grub_memcmp (magic, FONT_FORMAT_PFF2_MAGIC, 4) != 0) - { - grub_error (GRUB_ERR_BAD_FONT, "invalid font magic %x %x %x %x", - magic[0], magic[1], magic[2], magic[3]); - goto fail; - } - -#if FONT_DEBUG >= 3 - grub_dprintf ("font", "compare magic ok\n"); -#endif - - /* Allocate the font object. */ - font = (grub_font_t) grub_zalloc (sizeof (struct grub_font)); - if (!font) - goto fail; - - font_init (font); - font->file = file; - -#if FONT_DEBUG >= 3 - grub_dprintf ("font", "allocate font ok; loading font info\n"); -#endif - - /* Load the font information. */ - while (1) - { - if (open_section (file, §ion) != 0) - { - if (section.eof) - break; /* Done reading the font file. */ - else - goto fail; - } - -#if FONT_DEBUG >= 2 - grub_dprintf ("font", "opened section %c%c%c%c ok\n", - section.name[0], section.name[1], - section.name[2], section.name[3]); -#endif - - if (grub_memcmp (section.name, FONT_FORMAT_SECTION_NAMES_FONT_NAME, - sizeof (FONT_FORMAT_SECTION_NAMES_FONT_NAME) - 1) == 0) - { - font->name = read_section_as_string (§ion); - if (!font->name) - goto fail; - } - else if (grub_memcmp (section.name, - FONT_FORMAT_SECTION_NAMES_POINT_SIZE, - sizeof (FONT_FORMAT_SECTION_NAMES_POINT_SIZE) - - 1) == 0) - { - if (read_section_as_short (§ion, &font->point_size) != 0) - goto fail; - } - else if (grub_memcmp (section.name, FONT_FORMAT_SECTION_NAMES_WEIGHT, - sizeof (FONT_FORMAT_SECTION_NAMES_WEIGHT) - 1) - == 0) - { - char *wt; - wt = read_section_as_string (§ion); - if (!wt) - continue; - /* Convert the weight string 'normal' or 'bold' into a number. */ - if (grub_strcmp (wt, "normal") == 0) - font->weight = FONT_WEIGHT_NORMAL; - else if (grub_strcmp (wt, "bold") == 0) - font->weight = FONT_WEIGHT_BOLD; - grub_free (wt); - } - else if (grub_memcmp (section.name, - FONT_FORMAT_SECTION_NAMES_MAX_CHAR_WIDTH, - sizeof (FONT_FORMAT_SECTION_NAMES_MAX_CHAR_WIDTH) - - 1) == 0) - { - if (read_section_as_short (§ion, &font->max_char_width) != 0) - goto fail; - } - else if (grub_memcmp (section.name, - FONT_FORMAT_SECTION_NAMES_MAX_CHAR_HEIGHT, - sizeof (FONT_FORMAT_SECTION_NAMES_MAX_CHAR_HEIGHT) - - 1) == 0) - { - if (read_section_as_short (§ion, &font->max_char_height) != 0) - goto fail; - } - else if (grub_memcmp (section.name, - FONT_FORMAT_SECTION_NAMES_ASCENT, - sizeof (FONT_FORMAT_SECTION_NAMES_ASCENT) - 1) - == 0) - { - if (read_section_as_short (§ion, &font->ascent) != 0) - goto fail; - } - else if (grub_memcmp (section.name, FONT_FORMAT_SECTION_NAMES_DESCENT, - sizeof (FONT_FORMAT_SECTION_NAMES_DESCENT) - 1) - == 0) - { - if (read_section_as_short (§ion, &font->descent) != 0) - goto fail; - } - else if (grub_memcmp (section.name, - FONT_FORMAT_SECTION_NAMES_CHAR_INDEX, - sizeof (FONT_FORMAT_SECTION_NAMES_CHAR_INDEX) - - 1) == 0) - { - if (load_font_index (file, section.length, font) != 0) - goto fail; - } - else if (grub_memcmp (section.name, FONT_FORMAT_SECTION_NAMES_DATA, - sizeof (FONT_FORMAT_SECTION_NAMES_DATA) - 1) == 0) - { - /* When the DATA section marker is reached, we stop reading. */ - break; - } - else - { - /* Unhandled section type, simply skip past it. */ -#if FONT_DEBUG >= 3 - grub_dprintf ("font", "Unhandled section type, skipping.\n"); -#endif - grub_off_t section_end = grub_file_tell (file) + section.length; - if ((int) grub_file_seek (file, section_end) == -1) - goto fail; - } - } - - if (!font->name) - { - grub_dprintf ("font", "Font has no name.\n"); - font->name = grub_strdup ("Unknown"); - } - -#if FONT_DEBUG >= 1 - grub_dprintf ("font", "Loaded font `%s'.\n" - "Ascent=%d Descent=%d MaxW=%d MaxH=%d Number of characters=%d.\n", - font->name, - font->ascent, font->descent, - font->max_char_width, font->max_char_height, font->num_chars); -#endif - - if (font->max_char_width == 0 - || font->max_char_height == 0 - || font->num_chars == 0 - || font->char_index == 0 || font->ascent == 0 || font->descent == 0) - { - grub_error (GRUB_ERR_BAD_FONT, - "invalid font file: missing some required data"); - goto fail; - } - - /* Add the font to the global font registry. */ - if (register_font (font) != 0) - goto fail; - - return font; - -fail: - if (file) - grub_file_close (file); - if (font) - font->file = 0; - - free_font (font); - return 0; -} - -/* Read a 16-bit big-endian integer from FILE, convert it to native byte - order, and store it in *VALUE. - Returns 0 on success, 1 on failure. */ -static int -read_be_uint16 (grub_file_t file, grub_uint16_t * value) -{ - if (grub_file_read (file, value, 2) != 2) - return 1; - *value = grub_be_to_cpu16 (*value); - return 0; -} - -static int -read_be_int16 (grub_file_t file, grub_int16_t * value) -{ - /* For the signed integer version, use the same code as for unsigned. */ - return read_be_uint16 (file, (grub_uint16_t *) value); -} - -/* Return a pointer to the character index entry for the glyph corresponding to - the codepoint CODE in the font FONT. If not found, return zero. */ -static inline struct char_index_entry * -find_glyph (const grub_font_t font, grub_uint32_t code) -{ - struct char_index_entry *table; - grub_size_t lo; - grub_size_t hi; - grub_size_t mid; - - table = font->char_index; - - /* Use BMP index if possible. */ - if (code < 0x10000 && font->bmp_idx) - { - if (font->bmp_idx[code] == 0xffff) - return 0; - return &table[font->bmp_idx[code]]; - } - - /* Do a binary search in `char_index', which is ordered by code point. */ - lo = 0; - hi = font->num_chars - 1; - - if (!table) - return 0; - - while (lo <= hi) - { - mid = lo + (hi - lo) / 2; - if (code < table[mid].code) - hi = mid - 1; - else if (code > table[mid].code) - lo = mid + 1; - else - return &table[mid]; - } - - return 0; -} - -/* Get a glyph for the Unicode character CODE in FONT. The glyph is loaded - from the font file if has not been loaded yet. - Returns a pointer to the glyph if found, or 0 if it is not found. */ -static struct grub_font_glyph * -grub_font_get_glyph_internal (grub_font_t font, grub_uint32_t code) -{ - struct char_index_entry *index_entry; - - index_entry = find_glyph (font, code); - if (index_entry) - { - struct grub_font_glyph *glyph = 0; - grub_uint16_t width; - grub_uint16_t height; - grub_int16_t xoff; - grub_int16_t yoff; - grub_int16_t dwidth; - int len; - - if (index_entry->glyph) - /* Return cached glyph. */ - return index_entry->glyph; - - if (!font->file) - /* No open file, can't load any glyphs. */ - return 0; - - /* Make sure we can find glyphs for error messages. Push active - error message to error stack and reset error message. */ - grub_error_push (); - - grub_file_seek (font->file, index_entry->offset); - - /* Read the glyph width, height, and baseline. */ - if (read_be_uint16 (font->file, &width) != 0 - || read_be_uint16 (font->file, &height) != 0 - || read_be_int16 (font->file, &xoff) != 0 - || read_be_int16 (font->file, &yoff) != 0 - || read_be_int16 (font->file, &dwidth) != 0) - { - remove_font (font); - return 0; - } - - len = (width * height + 7) / 8; - glyph = grub_malloc (sizeof (struct grub_font_glyph) + len); - if (!glyph) - { - remove_font (font); - return 0; - } - - glyph->font = font; - glyph->width = width; - glyph->height = height; - glyph->offset_x = xoff; - glyph->offset_y = yoff; - glyph->device_width = dwidth; - - /* Don't try to read empty bitmaps (e.g., space characters). */ - if (len != 0) - { - if (grub_file_read (font->file, glyph->bitmap, len) != len) - { - remove_font (font); - grub_free (glyph); - return 0; - } - } - - /* Restore old error message. */ - grub_error_pop (); - - /* Cache the glyph. */ - index_entry->glyph = glyph; - - return glyph; - } - - return 0; -} - -/* Free the memory used by FONT. - This should not be called if the font has been made available to - users (once it is added to the global font list), since there would - be the possibility of a dangling pointer. */ -static void -free_font (grub_font_t font) -{ - if (font) - { - if (font->file) - grub_file_close (font->file); - grub_free (font->name); - grub_free (font->family); - grub_free (font->char_index); - grub_free (font->bmp_idx); - grub_free (font); - } -} - -/* Add FONT to the global font registry. - Returns 0 upon success, nonzero on failure - (the font was not registered). */ -static int -register_font (grub_font_t font) -{ - struct grub_font_node *node = 0; - - node = grub_malloc (sizeof (struct grub_font_node)); - if (!node) - return 1; - - node->value = font; - node->next = grub_font_list; - grub_font_list = node; - - return 0; -} - -/* Remove the font from the global font list. We don't actually free the - font's memory since users could be holding references to the font. */ -static void -remove_font (grub_font_t font) -{ - struct grub_font_node **nextp, *cur; - - for (nextp = &grub_font_list, cur = *nextp; - cur; nextp = &cur->next, cur = cur->next) - { - if (cur->value == font) - { - *nextp = cur->next; - - /* Free the node, but not the font itself. */ - grub_free (cur); - - return; - } - } -} - -/* Get a font from the list of loaded fonts. This function will return - another font if the requested font is not available. If no fonts are - loaded, then a special 'null font' is returned, which contains no glyphs, - but is not a null pointer so the caller may omit checks for NULL. */ -grub_font_t -grub_font_get (const char *font_name) -{ - struct grub_font_node *node; - - for (node = grub_font_list; node; node = node->next) - { - grub_font_t font = node->value; - if (grub_strcmp (font->name, font_name) == 0) - return font; - } - - /* If no font by that name is found, return the first font in the list - as a fallback. */ - if (grub_font_list && grub_font_list->value) - return grub_font_list->value; - else - /* The null_font is a last resort. */ - return &null_font; -} - -/* Get the full name of the font. */ -const char * -grub_font_get_name (grub_font_t font) -{ - return font->name; -} - -/* Get the maximum width of any character in the font in pixels. */ -int -grub_font_get_max_char_width (grub_font_t font) -{ - return font->max_char_width; -} - -/* Get the distance in pixels from the baseline to the lowest descenders - (for instance, in a lowercase 'y', 'g', etc.). */ -int -grub_font_get_descent (grub_font_t font) -{ - return font->descent; -} - -/* FIXME: not correct for all fonts. */ -int -grub_font_get_xheight (grub_font_t font) -{ - return font->ascent / 2; -} - -/* Get the *standard leading* of the font in pixel, which is the spacing - between two lines of text. Specifically, it is the space between the - descent of one line and the ascent of the next line. This is included - in the *height* metric. */ -int -grub_font_get_leading (grub_font_t font) -{ - return font->leading; -} - -/* Get the distance in pixels between baselines of adjacent lines of text. */ -int -grub_font_get_height (grub_font_t font) -{ - return font->ascent + font->descent + font->leading; -} - -/* Get the glyph for FONT corresponding to the Unicode code point CODE. - Returns the ASCII glyph for the code if no other fonts are available. - The glyphs are cached once loaded. */ -struct grub_font_glyph * -grub_font_get_glyph (grub_font_t font, grub_uint32_t code) -{ - struct grub_font_glyph *glyph = 0; - if (font) - glyph = grub_font_get_glyph_internal (font, code); - if (glyph == 0) - { - glyph = ascii_glyph_lookup (code); - } - return glyph; -} - - -/* Calculate a subject value representing "how similar" two fonts are. - This is used to prioritize the order that fonts are scanned for missing - glyphs. The object is to select glyphs from the most similar font - possible, for the best appearance. - The heuristic is crude, but it helps greatly when fonts of similar - sizes are used so that tiny 8 point glyphs are not mixed into a string - of 24 point text unless there is no other choice. */ -static int -get_font_diversity (grub_font_t a, grub_font_t b) -{ - int d; - - d = 0; - - if (a->ascent && b->ascent) - d += grub_abs (a->ascent - b->ascent) * 8; - else - /* Penalty for missing attributes. */ - d += 50; - - if (a->max_char_height && b->max_char_height) - d += grub_abs (a->max_char_height - b->max_char_height) * 8; - else - /* Penalty for missing attributes. */ - d += 50; - - /* Weight is a minor factor. */ - d += (a->weight != b->weight) ? 5 : 0; - - return d; -} - -/* Get a glyph corresponding to the codepoint CODE. If FONT contains the - specified glyph, then it is returned. Otherwise, all other loaded fonts - are searched until one is found that contains a glyph for CODE. - If no glyph is available for CODE in the loaded fonts, then a glyph - representing an unknown character is returned. - This function never returns NULL. - The returned glyph is owned by the font manager and should not be freed - by the caller. The glyphs are cached. */ -struct grub_font_glyph * -grub_font_get_glyph_with_fallback (grub_font_t font, grub_uint32_t code) -{ - struct grub_font_glyph *glyph; - struct grub_font_node *node; - /* Keep track of next node, in case there's an I/O error in - grub_font_get_glyph_internal() and the font is removed from the list. */ - struct grub_font_node *next; - /* Information on the best glyph found so far, to help find the glyph in - the best matching to the requested one. */ - int best_diversity; - struct grub_font_glyph *best_glyph; - - if (font) - { - /* First try to get the glyph from the specified font. */ - glyph = grub_font_get_glyph_internal (font, code); - if (glyph) - return glyph; - } - - /* Otherwise, search all loaded fonts for the glyph and use the one from - the font that best matches the requested font. */ - best_diversity = 10000; - best_glyph = 0; - - for (node = grub_font_list; node; node = next) - { - grub_font_t curfont; - - curfont = node->value; - next = node->next; - - glyph = grub_font_get_glyph_internal (curfont, code); - if (glyph && !font) - return glyph; - if (glyph) - { - int d; - - d = get_font_diversity (curfont, font); - if (d < best_diversity) - { - best_diversity = d; - best_glyph = glyph; - } - } - } - - return best_glyph; -} - -#if 0 -static struct grub_font_glyph * -grub_font_dup_glyph (struct grub_font_glyph *glyph) -{ - static struct grub_font_glyph *ret; - ret = grub_malloc (sizeof (*ret) + (glyph->width * glyph->height + 7) / 8); - if (!ret) - return NULL; - grub_memcpy (ret, glyph, sizeof (*ret) - + (glyph->width * glyph->height + 7) / 8); - return ret; -} -#endif - -/* FIXME: suboptimal. */ -static void -grub_font_blit_glyph (struct grub_font_glyph *target, - struct grub_font_glyph *src, unsigned dx, unsigned dy) -{ - unsigned src_bit, tgt_bit, src_byte, tgt_byte; - unsigned i, j; - for (i = 0; i < src->height; i++) - { - src_bit = (src->width * i) % 8; - src_byte = (src->width * i) / 8; - tgt_bit = (target->width * (dy + i) + dx) % 8; - tgt_byte = (target->width * (dy + i) + dx) / 8; - for (j = 0; j < src->width; j++) - { - target->bitmap[tgt_byte] |= ((src->bitmap[src_byte] << src_bit) - & 0x80) >> tgt_bit; - src_bit++; - tgt_bit++; - if (src_bit == 8) - { - src_byte++; - src_bit = 0; - } - if (tgt_bit == 8) - { - tgt_byte++; - tgt_bit = 0; - } - } - } -} - -static void -grub_font_blit_glyph_mirror (struct grub_font_glyph *target, - struct grub_font_glyph *src, - unsigned dx, unsigned dy) -{ - unsigned tgt_bit, src_byte, tgt_byte; - signed src_bit; - unsigned i, j; - for (i = 0; i < src->height; i++) - { - src_bit = (src->width * i + src->width - 1) % 8; - src_byte = (src->width * i + src->width - 1) / 8; - tgt_bit = (target->width * (dy + i) + dx) % 8; - tgt_byte = (target->width * (dy + i) + dx) / 8; - for (j = 0; j < src->width; j++) - { - target->bitmap[tgt_byte] |= ((src->bitmap[src_byte] << src_bit) - & 0x80) >> tgt_bit; - src_bit--; - tgt_bit++; - if (src_bit == -1) - { - src_byte--; - src_bit = 7; - } - if (tgt_bit == 8) - { - tgt_byte++; - tgt_bit = 0; - } - } - } -} - -/* Context for blit_comb. */ -struct blit_comb_ctx -{ - struct grub_font_glyph *glyph; - int *device_width; - struct grub_video_signed_rect bounds; -}; - -/* Helper for blit_comb. */ -static void -do_blit (struct grub_font_glyph *src, signed dx, signed dy, - struct blit_comb_ctx *ctx) -{ - if (ctx->glyph) - grub_font_blit_glyph (ctx->glyph, src, dx - ctx->glyph->offset_x, - (ctx->glyph->height + ctx->glyph->offset_y) + dy); - if (dx < ctx->bounds.x) - { - ctx->bounds.width += ctx->bounds.x - dx; - ctx->bounds.x = dx; - } - if (ctx->bounds.y > -src->height - dy) - { - ctx->bounds.height += ctx->bounds.y - (-src->height - dy); - ctx->bounds.y = (-src->height - dy); - } - if (dx + src->width - ctx->bounds.x >= (signed) ctx->bounds.width) - ctx->bounds.width = dx + src->width - ctx->bounds.x + 1; - if ((signed) ctx->bounds.height < src->height + (-src->height - dy) - - ctx->bounds.y) - ctx->bounds.height = src->height + (-src->height - dy) - ctx->bounds.y; -} - -/* Helper for blit_comb. */ -static inline void -add_device_width (int val, struct blit_comb_ctx *ctx) -{ - if (ctx->glyph) - ctx->glyph->device_width += val; - if (ctx->device_width) - *ctx->device_width += val; -} - -static void -blit_comb (const struct grub_unicode_glyph *glyph_id, - struct grub_font_glyph *glyph, - struct grub_video_signed_rect *bounds_out, - struct grub_font_glyph *main_glyph, - struct grub_font_glyph **combining_glyphs, int *device_width) -{ - struct blit_comb_ctx ctx = { - .glyph = glyph, - .device_width = device_width - }; - unsigned i; - signed above_rightx, above_righty; - signed above_leftx, above_lefty; - signed below_rightx, below_righty; - signed min_devwidth = 0; - const struct grub_unicode_combining *comb; - - if (glyph) - glyph->device_width = main_glyph->device_width; - if (device_width) - *device_width = main_glyph->device_width; - - ctx.bounds.x = main_glyph->offset_x; - ctx.bounds.y = main_glyph->offset_y; - ctx.bounds.width = main_glyph->width; - ctx.bounds.height = main_glyph->height; - - above_rightx = main_glyph->offset_x + main_glyph->width; - above_righty = ctx.bounds.y + ctx.bounds.height; - - above_leftx = main_glyph->offset_x; - above_lefty = ctx.bounds.y + ctx.bounds.height; - - below_rightx = ctx.bounds.x + ctx.bounds.width; - below_righty = ctx.bounds.y; - - comb = grub_unicode_get_comb (glyph_id); - - for (i = 0; i < glyph_id->ncomb; i++) - { - grub_int16_t space = 0; - /* Center by default. */ - grub_int16_t targetx; - - if (!combining_glyphs[i]) - continue; - targetx = (ctx.bounds.width - combining_glyphs[i]->width) / 2 + ctx.bounds.x; - /* CGJ is to avoid diacritics reordering. */ - if (comb[i].code - == GRUB_UNICODE_COMBINING_GRAPHEME_JOINER) - continue; - switch (comb[i].type) - { - case GRUB_UNICODE_COMB_OVERLAY: - do_blit (combining_glyphs[i], - targetx, - (ctx.bounds.height - combining_glyphs[i]->height) / 2 - - (ctx.bounds.height + ctx.bounds.y), &ctx); - if (min_devwidth < combining_glyphs[i]->width) - min_devwidth = combining_glyphs[i]->width; - break; - - case GRUB_UNICODE_COMB_ATTACHED_ABOVE_RIGHT: - do_blit (combining_glyphs[i], above_rightx, -above_righty, &ctx); - above_rightx += combining_glyphs[i]->width; - break; - - case GRUB_UNICODE_COMB_ABOVE_RIGHT: - do_blit (combining_glyphs[i], above_rightx, - -(above_righty + combining_glyphs[i]->height), &ctx); - above_rightx += combining_glyphs[i]->width; - break; - - case GRUB_UNICODE_COMB_ABOVE_LEFT: - above_leftx -= combining_glyphs[i]->width; - do_blit (combining_glyphs[i], above_leftx, - -(above_lefty + combining_glyphs[i]->height), &ctx); - break; - - case GRUB_UNICODE_COMB_BELOW_RIGHT: - do_blit (combining_glyphs[i], below_rightx, below_righty, &ctx); - below_rightx += combining_glyphs[i]->width; - break; - - case GRUB_UNICODE_COMB_HEBREW_HOLAM: - if (glyph_id->base != GRUB_UNICODE_HEBREW_WAW) - targetx = - main_glyph->offset_x - combining_glyphs[i]->width - - (combining_glyphs[i]->width + 3) / 4; - goto above_on_main; - - case GRUB_UNICODE_COMB_HEBREW_SIN_DOT: - targetx = main_glyph->offset_x + combining_glyphs[i]->width / 4; - goto above_on_main; - - case GRUB_UNICODE_COMB_HEBREW_SHIN_DOT: - targetx = - main_glyph->width + main_glyph->offset_x - - combining_glyphs[i]->width; - above_on_main: - space = combining_glyphs[i]->offset_y - - grub_font_get_xheight (combining_glyphs[i]->font) - 1; - if (space <= 0) - space = 1 + (grub_font_get_xheight (main_glyph->font)) / 8; - do_blit (combining_glyphs[i], targetx, - -(main_glyph->height + main_glyph->offset_y + space - + combining_glyphs[i]->height), &ctx); - if (min_devwidth < combining_glyphs[i]->width) - min_devwidth = combining_glyphs[i]->width; - break; - - /* TODO: Put dammah, fathah and alif nearer to shadda. */ - case GRUB_UNICODE_COMB_SYRIAC_SUPERSCRIPT_ALAPH: - case GRUB_UNICODE_COMB_ARABIC_DAMMAH: - case GRUB_UNICODE_COMB_ARABIC_DAMMATAN: - case GRUB_UNICODE_COMB_ARABIC_FATHATAN: - case GRUB_UNICODE_COMB_ARABIC_FATHAH: - case GRUB_UNICODE_COMB_ARABIC_SUPERSCRIPT_ALIF: - case GRUB_UNICODE_COMB_ARABIC_SUKUN: - case GRUB_UNICODE_COMB_ARABIC_SHADDA: - case GRUB_UNICODE_COMB_HEBREW_RAFE: - case GRUB_UNICODE_STACK_ABOVE: - stacked_above: - space = combining_glyphs[i]->offset_y - - grub_font_get_xheight (combining_glyphs[i]->font) - 1; - if (space <= 0) - space = 1 + (grub_font_get_xheight (main_glyph->font)) / 8; - /* Fallthrough. */ - case GRUB_UNICODE_STACK_ATTACHED_ABOVE: - do_blit (combining_glyphs[i], targetx, - -(ctx.bounds.height + ctx.bounds.y + space - + combining_glyphs[i]->height), &ctx); - if (min_devwidth < combining_glyphs[i]->width) - min_devwidth = combining_glyphs[i]->width; - break; - - case GRUB_UNICODE_COMB_HEBREW_DAGESH: - do_blit (combining_glyphs[i], targetx, - -(ctx.bounds.height / 2 + ctx.bounds.y - + combining_glyphs[i]->height / 2), &ctx); - if (min_devwidth < combining_glyphs[i]->width) - min_devwidth = combining_glyphs[i]->width; - break; - - case GRUB_UNICODE_COMB_HEBREW_SHEVA: - case GRUB_UNICODE_COMB_HEBREW_HIRIQ: - case GRUB_UNICODE_COMB_HEBREW_QAMATS: - case GRUB_UNICODE_COMB_HEBREW_TSERE: - case GRUB_UNICODE_COMB_HEBREW_SEGOL: - /* TODO: placement in final kaf and under reish. */ - - case GRUB_UNICODE_COMB_HEBREW_HATAF_SEGOL: - case GRUB_UNICODE_COMB_HEBREW_HATAF_PATAH: - case GRUB_UNICODE_COMB_HEBREW_HATAF_QAMATS: - case GRUB_UNICODE_COMB_HEBREW_PATAH: - case GRUB_UNICODE_COMB_HEBREW_QUBUTS: - case GRUB_UNICODE_COMB_HEBREW_METEG: - /* TODO: Put kasra and kasratan under shadda. */ - case GRUB_UNICODE_COMB_ARABIC_KASRA: - case GRUB_UNICODE_COMB_ARABIC_KASRATAN: - /* I don't know how ypogegrammeni differs from subscript. */ - case GRUB_UNICODE_COMB_YPOGEGRAMMENI: - case GRUB_UNICODE_STACK_BELOW: - stacked_below: - space = -(combining_glyphs[i]->offset_y - + combining_glyphs[i]->height); - if (space <= 0) - space = 1 + (grub_font_get_xheight (main_glyph->font)) / 8; - /* Fallthrough. */ - - case GRUB_UNICODE_STACK_ATTACHED_BELOW: - do_blit (combining_glyphs[i], targetx, -(ctx.bounds.y - space), - &ctx); - if (min_devwidth < combining_glyphs[i]->width) - min_devwidth = combining_glyphs[i]->width; - break; - - case GRUB_UNICODE_COMB_MN: - switch (comb[i].code) - { - case GRUB_UNICODE_THAANA_ABAFILI: - case GRUB_UNICODE_THAANA_AABAAFILI: - case GRUB_UNICODE_THAANA_UBUFILI: - case GRUB_UNICODE_THAANA_OOBOOFILI: - case GRUB_UNICODE_THAANA_EBEFILI: - case GRUB_UNICODE_THAANA_EYBEYFILI: - case GRUB_UNICODE_THAANA_OBOFILI: - case GRUB_UNICODE_THAANA_OABOAFILI: - case GRUB_UNICODE_THAANA_SUKUN: - goto stacked_above; - case GRUB_UNICODE_THAANA_IBIFILI: - case GRUB_UNICODE_THAANA_EEBEEFILI: - goto stacked_below; - } - /* Fall through. */ - default: - { - /* Default handling. Just draw combining character on top - of base character. - FIXME: support more unicode types correctly. - */ - do_blit (combining_glyphs[i], - main_glyph->device_width - + combining_glyphs[i]->offset_x, - -(combining_glyphs[i]->height - + combining_glyphs[i]->offset_y), &ctx); - add_device_width (combining_glyphs[i]->device_width, &ctx); - } - } - } - add_device_width ((above_rightx > - below_rightx ? above_rightx : below_rightx) - - (main_glyph->offset_x + main_glyph->width), &ctx); - add_device_width (above_leftx - main_glyph->offset_x, &ctx); - if (glyph && glyph->device_width < min_devwidth) - glyph->device_width = min_devwidth; - if (device_width && *device_width < min_devwidth) - *device_width = min_devwidth; - - if (bounds_out) - *bounds_out = ctx.bounds; -} - -static struct grub_font_glyph * -grub_font_construct_dry_run (grub_font_t hinted_font, - const struct grub_unicode_glyph *glyph_id, - struct grub_video_signed_rect *bounds, - struct grub_font_glyph **combining_glyphs, - int *device_width) -{ - struct grub_font_glyph *main_glyph = NULL; - grub_uint32_t desired_attributes = 0; - unsigned i; - grub_uint32_t base = glyph_id->base; - const struct grub_unicode_combining *comb; - - if (glyph_id->attributes & GRUB_UNICODE_GLYPH_ATTRIBUTE_RIGHT_JOINED) - desired_attributes |= GRUB_FONT_CODE_RIGHT_JOINED; - - if (glyph_id->attributes & GRUB_UNICODE_GLYPH_ATTRIBUTE_LEFT_JOINED) - desired_attributes |= GRUB_FONT_CODE_LEFT_JOINED; - - comb = grub_unicode_get_comb (glyph_id); - - if (base == 'i' || base == 'j') - { - for (i = 0; i < glyph_id->ncomb; i++) - if (comb[i].type == GRUB_UNICODE_STACK_ABOVE) - break; - if (i < glyph_id->ncomb && base == 'i') - base = GRUB_UNICODE_DOTLESS_LOWERCASE_I; - if (i < glyph_id->ncomb && base == 'j') - base = GRUB_UNICODE_DOTLESS_LOWERCASE_J; - } - - main_glyph = grub_font_get_glyph_with_fallback (hinted_font, base - | desired_attributes); - - if (!main_glyph) - main_glyph = grub_font_get_glyph_with_fallback (hinted_font, - base); - - /* Glyph not available in any font. Use ASCII fallback. */ - if (!main_glyph) - main_glyph = ascii_glyph_lookup (base); - - /* Glyph not available in any font. Return unknown glyph. */ - if (!main_glyph) - return NULL; - - if (device_width) - *device_width = main_glyph->device_width; - - if (!glyph_id->ncomb && !glyph_id->attributes) - return main_glyph; - - if (glyph_id->ncomb && !combining_glyphs) - { - grub_errno = GRUB_ERR_NONE; - return main_glyph; - } - - for (i = 0; i < glyph_id->ncomb; i++) - combining_glyphs[i] - = grub_font_get_glyph_with_fallback (main_glyph->font, - comb[i].code); - - blit_comb (glyph_id, NULL, bounds, main_glyph, combining_glyphs, - device_width); - - return main_glyph; -} - -static struct grub_font_glyph **render_combining_glyphs = 0; -static grub_size_t render_max_comb_glyphs = 0; - -static void -ensure_comb_space (const struct grub_unicode_glyph *glyph_id) -{ - if (glyph_id->ncomb <= render_max_comb_glyphs) - return; - - render_max_comb_glyphs = 2 * glyph_id->ncomb; - if (render_max_comb_glyphs < 8) - render_max_comb_glyphs = 8; - grub_free (render_combining_glyphs); - render_combining_glyphs = grub_malloc (render_max_comb_glyphs - * sizeof (render_combining_glyphs[0])); - if (!render_combining_glyphs) - grub_errno = 0; -} - -int -grub_font_get_constructed_device_width (grub_font_t hinted_font, - const struct grub_unicode_glyph - *glyph_id) -{ - int ret; - struct grub_font_glyph *main_glyph; - - ensure_comb_space (glyph_id); - - main_glyph = grub_font_construct_dry_run (hinted_font, glyph_id, NULL, - render_combining_glyphs, &ret); - if (!main_glyph) - return unknown_glyph->device_width; - return ret; -} - -struct grub_font_glyph * -grub_font_construct_glyph (grub_font_t hinted_font, - const struct grub_unicode_glyph *glyph_id) -{ - struct grub_font_glyph *main_glyph; - struct grub_video_signed_rect bounds; - static struct grub_font_glyph *glyph = 0; - static grub_size_t max_glyph_size = 0; - - ensure_comb_space (glyph_id); - - main_glyph = grub_font_construct_dry_run (hinted_font, glyph_id, - &bounds, render_combining_glyphs, - NULL); - - if (!main_glyph) - return unknown_glyph; - - if (!render_combining_glyphs && glyph_id->ncomb) - return main_glyph; - - if (!glyph_id->ncomb && !glyph_id->attributes) - return main_glyph; - - if (max_glyph_size < sizeof (*glyph) + (bounds.width * bounds.height + GRUB_CHAR_BIT - 1) / GRUB_CHAR_BIT) - { - grub_free (glyph); - max_glyph_size = (sizeof (*glyph) + (bounds.width * bounds.height + GRUB_CHAR_BIT - 1) / GRUB_CHAR_BIT) * 2; - if (max_glyph_size < 8) - max_glyph_size = 8; - glyph = grub_malloc (max_glyph_size); - } - if (!glyph) - { - grub_errno = GRUB_ERR_NONE; - return main_glyph; - } - - grub_memset (glyph, 0, sizeof (*glyph) - + (bounds.width * bounds.height - + GRUB_CHAR_BIT - 1) / GRUB_CHAR_BIT); - - glyph->font = main_glyph->font; - glyph->width = bounds.width; - glyph->height = bounds.height; - glyph->offset_x = bounds.x; - glyph->offset_y = bounds.y; - - if (glyph_id->attributes & GRUB_UNICODE_GLYPH_ATTRIBUTE_MIRROR) - grub_font_blit_glyph_mirror (glyph, main_glyph, - main_glyph->offset_x - glyph->offset_x, - (glyph->height + glyph->offset_y) - - (main_glyph->height + - main_glyph->offset_y)); - else - grub_font_blit_glyph (glyph, main_glyph, - main_glyph->offset_x - glyph->offset_x, - (glyph->height + glyph->offset_y) - - (main_glyph->height + main_glyph->offset_y)); - - blit_comb (glyph_id, glyph, NULL, main_glyph, render_combining_glyphs, NULL); - - return glyph; -} - -/* Draw the specified glyph at (x, y). The y coordinate designates the - baseline of the character, while the x coordinate designates the left - side location of the character. */ -grub_err_t -grub_font_draw_glyph (struct grub_font_glyph * glyph, - grub_video_color_t color, int left_x, int baseline_y) -{ - struct grub_video_bitmap glyph_bitmap; - - /* Don't try to draw empty glyphs (U+0020, etc.). */ - if (glyph->width == 0 || glyph->height == 0) - return GRUB_ERR_NONE; - - glyph_bitmap.mode_info.width = glyph->width; - glyph_bitmap.mode_info.height = glyph->height; - glyph_bitmap.mode_info.mode_type - = (1 << GRUB_VIDEO_MODE_TYPE_DEPTH_POS) | GRUB_VIDEO_MODE_TYPE_1BIT_BITMAP; - glyph_bitmap.mode_info.blit_format = GRUB_VIDEO_BLIT_FORMAT_1BIT_PACKED; - glyph_bitmap.mode_info.bpp = 1; - - /* Really 1 bit per pixel. */ - glyph_bitmap.mode_info.bytes_per_pixel = 0; - - /* Packed densely as bits. */ - glyph_bitmap.mode_info.pitch = glyph->width; - - glyph_bitmap.mode_info.number_of_colors = 2; - glyph_bitmap.mode_info.bg_red = 0; - glyph_bitmap.mode_info.bg_green = 0; - glyph_bitmap.mode_info.bg_blue = 0; - glyph_bitmap.mode_info.bg_alpha = 0; - grub_video_unmap_color (color, - &glyph_bitmap.mode_info.fg_red, - &glyph_bitmap.mode_info.fg_green, - &glyph_bitmap.mode_info.fg_blue, - &glyph_bitmap.mode_info.fg_alpha); - glyph_bitmap.data = glyph->bitmap; - - int bitmap_left = left_x + glyph->offset_x; - int bitmap_bottom = baseline_y - glyph->offset_y; - int bitmap_top = bitmap_bottom - glyph->height; - - return grub_video_blit_bitmap (&glyph_bitmap, GRUB_VIDEO_BLIT_BLEND, - bitmap_left, bitmap_top, - 0, 0, glyph->width, glyph->height); -} diff --git a/thirdparty/grub-2.04/grub-core/font/font_cmd.c b/thirdparty/grub-2.04/grub-core/font/font_cmd.c deleted file mode 100644 index f3b36f2d6..000000000 --- a/thirdparty/grub-2.04/grub-core/font/font_cmd.c +++ /dev/null @@ -1,92 +0,0 @@ -/* font_cmd.c - Font command definition. */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2003,2005,2006,2007,2008,2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include - -static grub_err_t -loadfont_command (grub_command_t cmd __attribute__ ((unused)), - int argc, - char **args) -{ - if (argc == 0) - return grub_error (GRUB_ERR_BAD_ARGUMENT, N_("filename expected")); - - while (argc--) - if (grub_font_load (*args++) == 0) - { - if (!grub_errno) - return grub_error (GRUB_ERR_BAD_FONT, "invalid font"); - return grub_errno; - } - - return GRUB_ERR_NONE; -} - -static grub_err_t -lsfonts_command (grub_command_t cmd __attribute__ ((unused)), - int argc __attribute__ ((unused)), - char **args __attribute__ ((unused))) -{ - struct grub_font_node *node; - - grub_puts_ (N_("Loaded fonts:")); - for (node = grub_font_list; node; node = node->next) - { - grub_font_t font = node->value; - grub_printf ("%s\n", grub_font_get_name (font)); - } - - return GRUB_ERR_NONE; -} - -static grub_command_t cmd_loadfont, cmd_lsfonts; - -#if defined (GRUB_MACHINE_MIPS_LOONGSON) || defined (GRUB_MACHINE_COREBOOT) -void grub_font_init (void) -#else -GRUB_MOD_INIT(font) -#endif -{ - grub_font_loader_init (); - - cmd_loadfont = - grub_register_command ("loadfont", loadfont_command, - N_("FILE..."), - N_("Specify one or more font files to load.")); - cmd_lsfonts = - grub_register_command ("lsfonts", lsfonts_command, - 0, N_("List the loaded fonts.")); -} - -#if defined (GRUB_MACHINE_MIPS_LOONGSON) || defined (GRUB_MACHINE_COREBOOT) -void grub_font_fini (void) -#else -GRUB_MOD_FINI(font) -#endif -{ - /* TODO: Determine way to free allocated resources. - Warning: possible pointer references could be in use. */ - - grub_unregister_command (cmd_loadfont); - grub_unregister_command (cmd_lsfonts); -} diff --git a/thirdparty/grub-2.04/grub-core/fs/affs.c b/thirdparty/grub-2.04/grub-core/fs/affs.c deleted file mode 100644 index 6b6a2bc91..000000000 --- a/thirdparty/grub-2.04/grub-core/fs/affs.c +++ /dev/null @@ -1,711 +0,0 @@ -/* affs.c - Amiga Fast FileSystem. */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2005,2006,2007,2008,2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -/* The affs bootblock. */ -struct grub_affs_bblock -{ - grub_uint8_t type[3]; - grub_uint8_t flags; - grub_uint32_t checksum; - grub_uint32_t rootblock; -} GRUB_PACKED; - -/* Set if the filesystem is a AFFS filesystem. Otherwise this is an - OFS filesystem. */ -#define GRUB_AFFS_FLAG_FFS 1 - -/* The affs rootblock. */ -struct grub_affs_rblock -{ - grub_uint32_t type; - grub_uint8_t unused1[8]; - grub_uint32_t htsize; - grub_uint32_t unused2; - grub_uint32_t checksum; - grub_uint32_t hashtable[1]; -} GRUB_PACKED; - -struct grub_affs_time -{ - grub_int32_t day; - grub_uint32_t min; - grub_uint32_t hz; -} GRUB_PACKED; - -/* The second part of a file header block. */ -struct grub_affs_file -{ - grub_uint8_t unused1[12]; - grub_uint32_t size; - grub_uint8_t unused2[92]; - struct grub_affs_time mtime; - grub_uint8_t namelen; - grub_uint8_t name[30]; - grub_uint8_t unused3[5]; - grub_uint32_t hardlink; - grub_uint32_t unused4[6]; - grub_uint32_t next; - grub_uint32_t parent; - grub_uint32_t extension; - grub_uint32_t type; -} GRUB_PACKED; - -/* The location of `struct grub_affs_file' relative to the end of a - file header block. */ -#define GRUB_AFFS_FILE_LOCATION 200 - -/* The offset in both the rootblock and the file header block for the - hashtable, symlink and block pointers (all synonyms). */ -#define GRUB_AFFS_HASHTABLE_OFFSET 24 -#define GRUB_AFFS_BLOCKPTR_OFFSET 24 -#define GRUB_AFFS_SYMLINK_OFFSET 24 - -enum - { - GRUB_AFFS_FILETYPE_DIR = 2, - GRUB_AFFS_FILETYPE_SYMLINK = 3, - GRUB_AFFS_FILETYPE_HARDLINK = 0xfffffffc, - GRUB_AFFS_FILETYPE_REG = 0xfffffffd - }; - -#define AFFS_MAX_LOG_BLOCK_SIZE 4 -#define AFFS_MAX_SUPERBLOCK 1 - - - -struct grub_fshelp_node -{ - struct grub_affs_data *data; - grub_uint32_t block; - struct grub_fshelp_node *parent; - struct grub_affs_file di; - grub_uint32_t *block_cache; - grub_uint32_t last_block_cache; -}; - -/* Information about a "mounted" affs filesystem. */ -struct grub_affs_data -{ - struct grub_affs_bblock bblock; - struct grub_fshelp_node diropen; - grub_disk_t disk; - - /* Log blocksize in sectors. */ - int log_blocksize; - - /* The number of entries in the hashtable. */ - unsigned int htsize; -}; - -static grub_dl_t my_mod; - - -static grub_disk_addr_t -grub_affs_read_block (grub_fshelp_node_t node, grub_disk_addr_t fileblock) -{ - grub_uint32_t target, curblock; - grub_uint32_t pos; - struct grub_affs_file file; - struct grub_affs_data *data = node->data; - grub_uint64_t mod; - - if (!node->block_cache) - { - node->block_cache = grub_malloc (((grub_be_to_cpu32 (node->di.size) - >> (9 + node->data->log_blocksize)) - / data->htsize + 2) - * sizeof (node->block_cache[0])); - if (!node->block_cache) - return -1; - node->last_block_cache = 0; - node->block_cache[0] = node->block; - } - - /* Files are at most 2G on AFFS, so no need for 64-bit division. */ - target = (grub_uint32_t) fileblock / data->htsize; - mod = (grub_uint32_t) fileblock % data->htsize; - /* Find the block that points to the fileblock we are looking up by - following the chain until the right table is reached. */ - for (curblock = node->last_block_cache + 1; curblock < target + 1; curblock++) - { - grub_disk_read (data->disk, - (((grub_uint64_t) node->block_cache[curblock - 1] + 1) - << data->log_blocksize) - 1, - GRUB_DISK_SECTOR_SIZE - GRUB_AFFS_FILE_LOCATION, - sizeof (file), &file); - if (grub_errno) - return 0; - - node->block_cache[curblock] = grub_be_to_cpu32 (file.extension); - node->last_block_cache = curblock; - } - - /* Translate the fileblock to the block within the right table. */ - grub_disk_read (data->disk, (grub_uint64_t) node->block_cache[target] - << data->log_blocksize, - GRUB_AFFS_BLOCKPTR_OFFSET - + (data->htsize - mod - 1) * sizeof (pos), - sizeof (pos), &pos); - if (grub_errno) - return 0; - - return grub_be_to_cpu32 (pos); -} - -static struct grub_affs_data * -grub_affs_mount (grub_disk_t disk) -{ - struct grub_affs_data *data; - grub_uint32_t *rootblock = 0; - struct grub_affs_rblock *rblock = 0; - int log_blocksize = 0; - int bsnum = 0; - - data = grub_zalloc (sizeof (struct grub_affs_data)); - if (!data) - return 0; - - for (bsnum = 0; bsnum < AFFS_MAX_SUPERBLOCK + 1; bsnum++) - { - /* Read the bootblock. */ - grub_disk_read (disk, bsnum, 0, sizeof (struct grub_affs_bblock), - &data->bblock); - if (grub_errno) - goto fail; - - /* Make sure this is an affs filesystem. */ - if (grub_strncmp ((char *) (data->bblock.type), "DOS", 3) != 0 - /* Test if the filesystem is a OFS filesystem. */ - || !(data->bblock.flags & GRUB_AFFS_FLAG_FFS)) - continue; - - /* No sane person uses more than 8KB for a block. At least I hope - for that person because in that case this won't work. */ - if (!rootblock) - rootblock = grub_malloc (GRUB_DISK_SECTOR_SIZE - << AFFS_MAX_LOG_BLOCK_SIZE); - if (!rootblock) - goto fail; - - rblock = (struct grub_affs_rblock *) rootblock; - - /* The filesystem blocksize is not stored anywhere in the filesystem - itself. One way to determine it is try reading blocks for the - rootblock until the checksum is correct. */ - for (log_blocksize = 0; log_blocksize <= AFFS_MAX_LOG_BLOCK_SIZE; - log_blocksize++) - { - grub_uint32_t *currblock = rootblock; - unsigned int i; - grub_uint32_t checksum = 0; - - /* Read the rootblock. */ - grub_disk_read (disk, - (grub_uint64_t) grub_be_to_cpu32 (data->bblock.rootblock) - << log_blocksize, 0, - GRUB_DISK_SECTOR_SIZE << log_blocksize, rootblock); - if (grub_errno == GRUB_ERR_OUT_OF_RANGE) - { - grub_errno = 0; - break; - } - if (grub_errno) - goto fail; - - if (rblock->type != grub_cpu_to_be32_compile_time (2) - || rblock->htsize == 0 - || currblock[(GRUB_DISK_SECTOR_SIZE << log_blocksize) - / sizeof (*currblock) - 1] - != grub_cpu_to_be32_compile_time (1)) - continue; - - for (i = 0; i < (GRUB_DISK_SECTOR_SIZE << log_blocksize) - / sizeof (*currblock); - i++) - checksum += grub_be_to_cpu32 (currblock[i]); - - if (checksum == 0) - { - data->log_blocksize = log_blocksize; - data->disk = disk; - data->htsize = grub_be_to_cpu32 (rblock->htsize); - data->diropen.data = data; - data->diropen.block = grub_be_to_cpu32 (data->bblock.rootblock); - data->diropen.parent = NULL; - grub_memcpy (&data->diropen.di, rootblock, - sizeof (data->diropen.di)); - grub_free (rootblock); - - return data; - } - } - } - - fail: - if (grub_errno == GRUB_ERR_NONE || grub_errno == GRUB_ERR_OUT_OF_RANGE) - grub_error (GRUB_ERR_BAD_FS, "not an AFFS filesystem"); - - grub_free (data); - grub_free (rootblock); - return 0; -} - - -static char * -grub_affs_read_symlink (grub_fshelp_node_t node) -{ - struct grub_affs_data *data = node->data; - grub_uint8_t *latin1, *utf8; - const grub_size_t symlink_size = ((GRUB_DISK_SECTOR_SIZE - << data->log_blocksize) - GRUB_AFFS_SYMLINK_OFFSET); - - latin1 = grub_malloc (symlink_size + 1); - if (!latin1) - return 0; - - grub_disk_read (data->disk, - (grub_uint64_t) node->block << data->log_blocksize, - GRUB_AFFS_SYMLINK_OFFSET, - symlink_size, latin1); - if (grub_errno) - { - grub_free (latin1); - return 0; - } - latin1[symlink_size] = 0; - utf8 = grub_malloc (symlink_size * GRUB_MAX_UTF8_PER_LATIN1 + 1); - if (!utf8) - { - grub_free (latin1); - return 0; - } - *grub_latin1_to_utf8 (utf8, latin1, symlink_size) = '\0'; - grub_dprintf ("affs", "Symlink: `%s'\n", utf8); - grub_free (latin1); - if (utf8[0] == ':') - utf8[0] = '/'; - return (char *) utf8; -} - - -/* Helper for grub_affs_iterate_dir. */ -static int -grub_affs_create_node (grub_fshelp_node_t dir, - grub_fshelp_iterate_dir_hook_t hook, void *hook_data, - struct grub_fshelp_node **node, - grub_uint32_t **hashtable, - grub_uint32_t block, const struct grub_affs_file *fil) -{ - struct grub_affs_data *data = dir->data; - int type = GRUB_FSHELP_REG; - grub_uint8_t name_u8[sizeof (fil->name) * GRUB_MAX_UTF8_PER_LATIN1 + 1]; - grub_size_t len; - unsigned int nest; - - *node = grub_zalloc (sizeof (**node)); - if (!*node) - { - grub_free (*hashtable); - return 1; - } - - (*node)->data = data; - (*node)->block = block; - (*node)->parent = dir; - - len = fil->namelen; - if (len > sizeof (fil->name)) - len = sizeof (fil->name); - *grub_latin1_to_utf8 (name_u8, fil->name, len) = '\0'; - - (*node)->di = *fil; - for (nest = 0; nest < 8; nest++) - { - switch ((*node)->di.type) - { - case grub_cpu_to_be32_compile_time (GRUB_AFFS_FILETYPE_REG): - type = GRUB_FSHELP_REG; - break; - case grub_cpu_to_be32_compile_time (GRUB_AFFS_FILETYPE_DIR): - type = GRUB_FSHELP_DIR; - break; - case grub_cpu_to_be32_compile_time (GRUB_AFFS_FILETYPE_SYMLINK): - type = GRUB_FSHELP_SYMLINK; - break; - case grub_cpu_to_be32_compile_time (GRUB_AFFS_FILETYPE_HARDLINK): - { - grub_err_t err; - (*node)->block = grub_be_to_cpu32 ((*node)->di.hardlink); - err = grub_disk_read (data->disk, - (((grub_uint64_t) (*node)->block + 1) << data->log_blocksize) - - 1, - GRUB_DISK_SECTOR_SIZE - GRUB_AFFS_FILE_LOCATION, - sizeof ((*node)->di), (char *) &(*node)->di); - if (err) - return 1; - continue; - } - default: - return 0; - } - break; - } - - if (nest == 8) - return 0; - - type |= GRUB_FSHELP_CASE_INSENSITIVE; - - if (hook ((char *) name_u8, type, *node, hook_data)) - { - grub_free (*hashtable); - *node = 0; - return 1; - } - *node = 0; - return 0; -} - -static int -grub_affs_iterate_dir (grub_fshelp_node_t dir, - grub_fshelp_iterate_dir_hook_t hook, void *hook_data) -{ - unsigned int i; - struct grub_affs_file file; - struct grub_fshelp_node *node = 0; - struct grub_affs_data *data = dir->data; - grub_uint32_t *hashtable; - - /* Create the directory entries for `.' and `..'. */ - node = grub_zalloc (sizeof (*node)); - if (!node) - return 1; - - *node = *dir; - if (hook (".", GRUB_FSHELP_DIR, node, hook_data)) - return 1; - if (dir->parent) - { - node = grub_zalloc (sizeof (*node)); - if (!node) - return 1; - *node = *dir->parent; - if (hook ("..", GRUB_FSHELP_DIR, node, hook_data)) - return 1; - } - - hashtable = grub_zalloc (data->htsize * sizeof (*hashtable)); - if (!hashtable) - return 1; - - grub_disk_read (data->disk, - (grub_uint64_t) dir->block << data->log_blocksize, - GRUB_AFFS_HASHTABLE_OFFSET, - data->htsize * sizeof (*hashtable), (char *) hashtable); - if (grub_errno) - goto fail; - - for (i = 0; i < data->htsize; i++) - { - grub_uint32_t next; - - if (!hashtable[i]) - continue; - - /* Every entry in the hashtable can be chained. Read the entire - chain. */ - next = grub_be_to_cpu32 (hashtable[i]); - - while (next) - { - grub_disk_read (data->disk, - (((grub_uint64_t) next + 1) << data->log_blocksize) - - 1, - GRUB_DISK_SECTOR_SIZE - GRUB_AFFS_FILE_LOCATION, - sizeof (file), (char *) &file); - if (grub_errno) - goto fail; - - if (grub_affs_create_node (dir, hook, hook_data, &node, &hashtable, - next, &file)) - return 1; - - next = grub_be_to_cpu32 (file.next); - } - } - - grub_free (hashtable); - return 0; - - fail: - grub_free (node); - grub_free (hashtable); - return 0; -} - - -/* Open a file named NAME and initialize FILE. */ -static grub_err_t -grub_affs_open (struct grub_file *file, const char *name) -{ - struct grub_affs_data *data; - struct grub_fshelp_node *fdiro = 0; - - grub_dl_ref (my_mod); - - data = grub_affs_mount (file->device->disk); - if (!data) - goto fail; - - grub_fshelp_find_file (name, &data->diropen, &fdiro, grub_affs_iterate_dir, - grub_affs_read_symlink, GRUB_FSHELP_REG); - if (grub_errno) - goto fail; - - file->size = grub_be_to_cpu32 (fdiro->di.size); - data->diropen = *fdiro; - grub_free (fdiro); - - file->data = data; - file->offset = 0; - - return 0; - - fail: - if (data && fdiro != &data->diropen) - grub_free (fdiro); - grub_free (data); - - grub_dl_unref (my_mod); - - return grub_errno; -} - -static grub_err_t -grub_affs_close (grub_file_t file) -{ - struct grub_affs_data *data = - (struct grub_affs_data *) file->data; - - grub_free (data->diropen.block_cache); - grub_free (file->data); - - grub_dl_unref (my_mod); - - return GRUB_ERR_NONE; -} - -/* Read LEN bytes data from FILE into BUF. */ -static grub_ssize_t -grub_affs_read (grub_file_t file, char *buf, grub_size_t len) -{ - struct grub_affs_data *data = - (struct grub_affs_data *) file->data; - - return grub_fshelp_read_file (data->diropen.data->disk, &data->diropen, - file->read_hook, file->read_hook_data, - file->offset, len, buf, grub_affs_read_block, - grub_be_to_cpu32 (data->diropen.di.size), - data->log_blocksize, 0); -} - -static grub_int32_t -aftime2ctime (const struct grub_affs_time *t) -{ - return grub_be_to_cpu32 (t->day) * 86400 - + grub_be_to_cpu32 (t->min) * 60 - + grub_be_to_cpu32 (t->hz) / 50 - + 8 * 365 * 86400 + 86400 * 2; -} - -/* Context for grub_affs_dir. */ -struct grub_affs_dir_ctx -{ - grub_fs_dir_hook_t hook; - void *hook_data; -}; - -/* Helper for grub_affs_dir. */ -static int -grub_affs_dir_iter (const char *filename, enum grub_fshelp_filetype filetype, - grub_fshelp_node_t node, void *data) -{ - struct grub_affs_dir_ctx *ctx = data; - struct grub_dirhook_info info; - - grub_memset (&info, 0, sizeof (info)); - info.dir = ((filetype & GRUB_FSHELP_TYPE_MASK) == GRUB_FSHELP_DIR); - info.mtimeset = 1; - info.mtime = aftime2ctime (&node->di.mtime); - grub_free (node); - return ctx->hook (filename, &info, ctx->hook_data); -} - -static grub_err_t -grub_affs_dir (grub_device_t device, const char *path, - grub_fs_dir_hook_t hook, void *hook_data) -{ - struct grub_affs_dir_ctx ctx = { hook, hook_data }; - struct grub_affs_data *data = 0; - struct grub_fshelp_node *fdiro = 0; - - grub_dl_ref (my_mod); - - data = grub_affs_mount (device->disk); - if (!data) - goto fail; - - grub_fshelp_find_file (path, &data->diropen, &fdiro, grub_affs_iterate_dir, - grub_affs_read_symlink, GRUB_FSHELP_DIR); - if (grub_errno) - goto fail; - - grub_affs_iterate_dir (fdiro, grub_affs_dir_iter, &ctx); - - fail: - if (data && fdiro != &data->diropen) - grub_free (fdiro); - grub_free (data); - - grub_dl_unref (my_mod); - - return grub_errno; -} - - -static grub_err_t -grub_affs_label (grub_device_t device, char **label) -{ - struct grub_affs_data *data; - struct grub_affs_file file; - grub_disk_t disk = device->disk; - - grub_dl_ref (my_mod); - - data = grub_affs_mount (disk); - if (data) - { - grub_size_t len; - /* The rootblock maps quite well on a file header block, it's - something we can use here. */ - grub_disk_read (data->disk, - (((grub_uint64_t) - grub_be_to_cpu32 (data->bblock.rootblock) + 1) - << data->log_blocksize) - 1, - GRUB_DISK_SECTOR_SIZE - GRUB_AFFS_FILE_LOCATION, - sizeof (file), &file); - if (grub_errno) - return grub_errno; - - len = file.namelen; - if (len > sizeof (file.name)) - len = sizeof (file.name); - *label = grub_malloc (len * GRUB_MAX_UTF8_PER_LATIN1 + 1); - if (*label) - *grub_latin1_to_utf8 ((grub_uint8_t *) *label, file.name, len) = '\0'; - } - else - *label = 0; - - grub_dl_unref (my_mod); - - grub_free (data); - - return grub_errno; -} - -static grub_err_t -grub_affs_mtime (grub_device_t device, grub_int32_t *t) -{ - struct grub_affs_data *data; - grub_disk_t disk = device->disk; - struct grub_affs_time af_time; - - *t = 0; - - grub_dl_ref (my_mod); - - data = grub_affs_mount (disk); - if (!data) - { - grub_dl_unref (my_mod); - return grub_errno; - } - - grub_disk_read (data->disk, - (((grub_uint64_t) - grub_be_to_cpu32 (data->bblock.rootblock) + 1) - << data->log_blocksize) - 1, - GRUB_DISK_SECTOR_SIZE - 40, - sizeof (af_time), &af_time); - if (grub_errno) - { - grub_dl_unref (my_mod); - grub_free (data); - return grub_errno; - } - - *t = aftime2ctime (&af_time); - grub_dl_unref (my_mod); - - grub_free (data); - - return GRUB_ERR_NONE; -} - - -static struct grub_fs grub_affs_fs = - { - .name = "affs", - .fs_dir = grub_affs_dir, - .fs_open = grub_affs_open, - .fs_read = grub_affs_read, - .fs_close = grub_affs_close, - .fs_label = grub_affs_label, - .fs_mtime = grub_affs_mtime, - -#ifdef GRUB_UTIL - .reserved_first_sector = 0, - .blocklist_install = 1, -#endif - .next = 0 - }; - -GRUB_MOD_INIT(affs) -{ - grub_fs_register (&grub_affs_fs); - my_mod = mod; -} - -GRUB_MOD_FINI(affs) -{ - grub_fs_unregister (&grub_affs_fs); -} diff --git a/thirdparty/grub-2.04/grub-core/fs/afs.c b/thirdparty/grub-2.04/grub-core/fs/afs.c deleted file mode 100644 index 00a5e3113..000000000 --- a/thirdparty/grub-2.04/grub-core/fs/afs.c +++ /dev/null @@ -1,3 +0,0 @@ -#define MODE_AFS 1 -#include "bfs.c" - diff --git a/thirdparty/grub-2.04/grub-core/fs/archelp.c b/thirdparty/grub-2.04/grub-core/fs/archelp.c deleted file mode 100644 index 0cf544f6f..000000000 --- a/thirdparty/grub-2.04/grub-core/fs/archelp.c +++ /dev/null @@ -1,301 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2007,2008,2009,2013 Free Software Foundation, Inc. - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see . - */ - -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -static inline void -canonicalize (char *name) -{ - char *iptr, *optr; - for (iptr = name, optr = name; *iptr; ) - { - while (*iptr == '/') - iptr++; - if (iptr[0] == '.' && (iptr[1] == '/' || iptr[1] == 0)) - { - iptr++; - continue; - } - if (iptr[0] == '.' && iptr[1] == '.' && (iptr[2] == '/' || iptr[2] == 0)) - { - iptr += 2; - if (optr == name) - continue; - for (optr -= 2; optr >= name && *optr != '/'; optr--); - optr++; - continue; - } - while (*iptr && *iptr != '/') - *optr++ = *iptr++; - if (*iptr) - *optr++ = *iptr++; - } - *optr = 0; -} - -static grub_err_t -handle_symlink (struct grub_archelp_data *data, - struct grub_archelp_ops *arcops, - const char *fn, char **name, - grub_uint32_t mode, int *restart) -{ - grub_size_t flen; - char *target; - char *ptr; - char *lastslash; - grub_size_t prefixlen; - char *rest; - char *linktarget; - grub_size_t linktarget_len; - - *restart = 0; - - if ((mode & GRUB_ARCHELP_ATTR_TYPE) != GRUB_ARCHELP_ATTR_LNK - || !arcops->get_link_target) - return GRUB_ERR_NONE; - flen = grub_strlen (fn); - if (grub_memcmp (*name, fn, flen) != 0 - || ((*name)[flen] != 0 && (*name)[flen] != '/')) - return GRUB_ERR_NONE; - rest = *name + flen; - lastslash = rest; - if (*rest) - rest++; - while (lastslash >= *name && *lastslash != '/') - lastslash--; - if (lastslash >= *name) - prefixlen = lastslash - *name; - else - prefixlen = 0; - - if (prefixlen) - prefixlen++; - - linktarget = arcops->get_link_target (data); - if (!linktarget) - return grub_errno; - if (linktarget[0] == '\0') - return GRUB_ERR_NONE; - linktarget_len = grub_strlen (linktarget); - target = grub_malloc (linktarget_len + grub_strlen (*name) + 2); - if (!target) - return grub_errno; - - grub_strcpy (target + prefixlen, linktarget); - grub_free (linktarget); - if (target[prefixlen] == '/') - { - ptr = grub_stpcpy (target, target + prefixlen); - ptr = grub_stpcpy (ptr, rest); - *ptr = 0; - grub_dprintf ("archelp", "symlink redirected %s to %s\n", - *name, target); - grub_free (*name); - - canonicalize (target); - *name = target; - *restart = 1; - return GRUB_ERR_NONE; - } - if (prefixlen) - { - grub_memcpy (target, *name, prefixlen); - target[prefixlen-1] = '/'; - } - grub_strcpy (target + prefixlen + linktarget_len, rest); - grub_dprintf ("archelp", "symlink redirected %s to %s\n", - *name, target); - grub_free (*name); - canonicalize (target); - *name = target; - *restart = 1; - return GRUB_ERR_NONE; -} - -grub_err_t -grub_archelp_dir (struct grub_archelp_data *data, - struct grub_archelp_ops *arcops, - const char *path_in, - grub_fs_dir_hook_t hook, void *hook_data) -{ - char *prev, *name, *path, *ptr; - grub_size_t len; - int symlinknest = 0; - - path = grub_strdup (path_in + 1); - if (!path) - return grub_errno; - canonicalize (path); - for (ptr = path + grub_strlen (path) - 1; ptr >= path && *ptr == '/'; ptr--) - *ptr = 0; - - prev = 0; - - len = grub_strlen (path); - while (1) - { - grub_int32_t mtime; - grub_uint32_t mode; - grub_err_t err; - - if (arcops->find_file (data, &name, &mtime, &mode)) - goto fail; - - if (mode == GRUB_ARCHELP_ATTR_END) - break; - - canonicalize (name); - - if (grub_memcmp (path, name, len) == 0 - && (name[len] == 0 || name[len] == '/' || len == 0)) - { - char *p, *n; - - n = name + len; - while (*n == '/') - n++; - - p = grub_strchr (n, '/'); - if (p) - *p = 0; - - if (((!prev) || (grub_strcmp (prev, name) != 0)) && *n != 0) - { - struct grub_dirhook_info info; - grub_memset (&info, 0, sizeof (info)); - info.dir = (p != NULL) || ((mode & GRUB_ARCHELP_ATTR_TYPE) - == GRUB_ARCHELP_ATTR_DIR); - if (!(mode & GRUB_ARCHELP_ATTR_NOTIME)) - { - info.mtime = mtime; - info.mtimeset = 1; - } - if (hook (n, &info, hook_data)) - { - grub_free (name); - goto fail; - } - grub_free (prev); - prev = name; - } - else - { - int restart = 0; - err = handle_symlink (data, arcops, name, - &path, mode, &restart); - grub_free (name); - if (err) - goto fail; - if (restart) - { - len = grub_strlen (path); - if (++symlinknest == 8) - { - grub_error (GRUB_ERR_SYMLINK_LOOP, - N_("too deep nesting of symlinks")); - goto fail; - } - arcops->rewind (data); - } - } - } - else - grub_free (name); - } - -fail: - - grub_free (path); - grub_free (prev); - - return grub_errno; -} - -grub_err_t -grub_archelp_open (struct grub_archelp_data *data, - struct grub_archelp_ops *arcops, - const char *name_in) -{ - char *fn; - char *name = grub_strdup (name_in + 1); - int symlinknest = 0; - - if (!name) - return grub_errno; - - canonicalize (name); - - while (1) - { - grub_uint32_t mode; - grub_int32_t mtime; - int restart; - - if (arcops->find_file (data, &fn, &mtime, &mode)) - goto fail; - - if (mode == GRUB_ARCHELP_ATTR_END) - { - grub_error (GRUB_ERR_FILE_NOT_FOUND, N_("file `%s' not found"), name_in); - break; - } - - canonicalize (fn); - - if (handle_symlink (data, arcops, fn, &name, mode, &restart)) - { - grub_free (fn); - goto fail; - } - - if (restart) - { - arcops->rewind (data); - if (++symlinknest == 8) - { - grub_error (GRUB_ERR_SYMLINK_LOOP, - N_("too deep nesting of symlinks")); - goto fail; - } - goto no_match; - } - - if (grub_strcmp (name, fn) != 0) - goto no_match; - - grub_free (fn); - grub_free (name); - - return GRUB_ERR_NONE; - - no_match: - - grub_free (fn); - } - -fail: - grub_free (name); - - return grub_errno; -} diff --git a/thirdparty/grub-2.04/grub-core/fs/bfs.c b/thirdparty/grub-2.04/grub-core/fs/bfs.c deleted file mode 100644 index 47dbe2011..000000000 --- a/thirdparty/grub-2.04/grub-core/fs/bfs.c +++ /dev/null @@ -1,1117 +0,0 @@ -/* bfs.c - The Bee File System. */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2010,2011 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ -/* - Based on the book "Practical File System Design by Dominic Giampaolo - with corrections and completitions based on Haiku code. -*/ - -#include -#include -#include -#include -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -#ifdef MODE_AFS -#define BTREE_ALIGN 4 -#define SUPERBLOCK 2 -#else -#define BTREE_ALIGN 8 -#define SUPERBLOCK 1 -#endif - -#define grub_bfs_to_cpu16 grub_le_to_cpu16 -#define grub_bfs_to_cpu32 grub_le_to_cpu32 -#define grub_bfs_to_cpu64 grub_le_to_cpu64 -#define grub_cpu_to_bfs32_compile_time grub_cpu_to_le32_compile_time - -#ifdef MODE_AFS -#define grub_bfs_to_cpu_treehead grub_bfs_to_cpu32 -#else -#define grub_bfs_to_cpu_treehead grub_bfs_to_cpu16 -#endif - -#ifdef MODE_AFS -#define SUPER_BLOCK_MAGIC1 0x41465331 -#else -#define SUPER_BLOCK_MAGIC1 0x42465331 -#endif -#define SUPER_BLOCK_MAGIC2 0xdd121031 -#define SUPER_BLOCK_MAGIC3 0x15b6830e -#define POINTER_INVALID 0xffffffffffffffffULL - -#define ATTR_TYPE 0160000 -#define ATTR_REG 0100000 -#define ATTR_DIR 0040000 -#define ATTR_LNK 0120000 - -#define DOUBLE_INDIRECT_SHIFT 2 - -#define LOG_EXTENT_SIZE 3 -struct grub_bfs_extent -{ - grub_uint32_t ag; - grub_uint16_t start; - grub_uint16_t len; -} GRUB_PACKED; - -struct grub_bfs_superblock -{ - char label[32]; - grub_uint32_t magic1; - grub_uint32_t unused1; - grub_uint32_t bsize; - grub_uint32_t log2_bsize; - grub_uint8_t unused[20]; - grub_uint32_t magic2; - grub_uint32_t unused2; - grub_uint32_t log2_ag_size; - grub_uint8_t unused3[32]; - grub_uint32_t magic3; - struct grub_bfs_extent root_dir; -} GRUB_PACKED; - -struct grub_bfs_inode -{ - grub_uint8_t unused[20]; - grub_uint32_t mode; - grub_uint32_t flags; -#ifdef MODE_AFS - grub_uint8_t unused2[12]; -#else - grub_uint8_t unused2[8]; -#endif - grub_uint64_t mtime; - grub_uint8_t unused3[8]; - struct grub_bfs_extent attr; - grub_uint8_t unused4[12]; - - union - { - struct - { - struct grub_bfs_extent direct[12]; - grub_uint64_t max_direct_range; - struct grub_bfs_extent indirect; - grub_uint64_t max_indirect_range; - struct grub_bfs_extent double_indirect; - grub_uint64_t max_double_indirect_range; - grub_uint64_t size; - grub_uint32_t pad[4]; - } GRUB_PACKED; - char inplace_link[144]; - } GRUB_PACKED; - grub_uint8_t small_data[0]; -} GRUB_PACKED; - -enum -{ - LONG_SYMLINK = 0x40 -}; - -struct grub_bfs_small_data_element_header -{ - grub_uint32_t type; - grub_uint16_t name_len; - grub_uint16_t value_len; -} GRUB_PACKED; - -struct grub_bfs_btree_header -{ - grub_uint32_t magic; -#ifdef MODE_AFS - grub_uint64_t root; - grub_uint32_t level; - grub_uint32_t node_size; - grub_uint32_t unused; -#else - grub_uint32_t node_size; - grub_uint32_t level; - grub_uint32_t unused; - grub_uint64_t root; -#endif - grub_uint32_t unused2[2]; -} GRUB_PACKED; - -struct grub_bfs_btree_node -{ - grub_uint64_t unused; - grub_uint64_t right; - grub_uint64_t overflow; -#ifdef MODE_AFS - grub_uint32_t count_keys; - grub_uint32_t total_key_len; -#else - grub_uint16_t count_keys; - grub_uint16_t total_key_len; -#endif -} GRUB_PACKED; - -struct grub_bfs_data -{ - struct grub_bfs_superblock sb; - struct grub_bfs_inode ino; -}; - -/* Context for grub_bfs_dir. */ -struct grub_bfs_dir_ctx -{ - grub_device_t device; - grub_fs_dir_hook_t hook; - void *hook_data; - struct grub_bfs_superblock sb; -}; - -static grub_err_t -read_extent (grub_disk_t disk, - const struct grub_bfs_superblock *sb, - const struct grub_bfs_extent *in, - grub_off_t off, grub_off_t byteoff, void *buf, grub_size_t len) -{ -#ifdef MODE_AFS - return grub_disk_read (disk, ((grub_bfs_to_cpu32 (in->ag) - << (grub_bfs_to_cpu32 (sb->log2_ag_size) - - GRUB_DISK_SECTOR_BITS)) - + ((grub_bfs_to_cpu16 (in->start) + off) - << (grub_bfs_to_cpu32 (sb->log2_bsize) - - GRUB_DISK_SECTOR_BITS))), - byteoff, len, buf); -#else - return grub_disk_read (disk, (((grub_bfs_to_cpu32 (in->ag) - << grub_bfs_to_cpu32 (sb->log2_ag_size)) - + grub_bfs_to_cpu16 (in->start) + off) - << (grub_bfs_to_cpu32 (sb->log2_bsize) - - GRUB_DISK_SECTOR_BITS)), - byteoff, len, buf); -#endif -} - -#ifdef MODE_AFS -#define RANGE_SHIFT grub_bfs_to_cpu32 (sb->log2_bsize) -#else -#define RANGE_SHIFT 0 -#endif - -static grub_err_t -read_bfs_file (grub_disk_t disk, - const struct grub_bfs_superblock *sb, - const struct grub_bfs_inode *ino, - grub_off_t off, void *buf, grub_size_t len, - grub_disk_read_hook_t read_hook, void *read_hook_data) -{ - if (len == 0) - return GRUB_ERR_NONE; - - if (off + len > grub_bfs_to_cpu64 (ino->size)) - return grub_error (GRUB_ERR_OUT_OF_RANGE, - N_("attempt to read past the end of file")); - - if (off < (grub_bfs_to_cpu64 (ino->max_direct_range) << RANGE_SHIFT)) - { - unsigned i; - grub_uint64_t pos = 0; - for (i = 0; i < ARRAY_SIZE (ino->direct); i++) - { - grub_uint64_t newpos; - newpos = pos + (((grub_uint64_t) grub_bfs_to_cpu16 (ino->direct[i].len)) - << grub_bfs_to_cpu32 (sb->log2_bsize)); - if (newpos > off) - { - grub_size_t read_size; - grub_err_t err; - read_size = newpos - off; - if (read_size > len) - read_size = len; - disk->read_hook = read_hook; - disk->read_hook_data = read_hook_data; - err = read_extent (disk, sb, &ino->direct[i], 0, off - pos, - buf, read_size); - disk->read_hook = 0; - if (err) - return err; - off += read_size; - len -= read_size; - buf = (char *) buf + read_size; - if (len == 0) - return GRUB_ERR_NONE; - } - pos = newpos; - } - } - - if (off < (grub_bfs_to_cpu64 (ino->max_direct_range) << RANGE_SHIFT)) - return grub_error (GRUB_ERR_BAD_FS, "incorrect direct blocks"); - - if (off < (grub_bfs_to_cpu64 (ino->max_indirect_range) << RANGE_SHIFT)) - { - unsigned i; - struct grub_bfs_extent *entries; - grub_size_t nentries; - grub_err_t err; - grub_uint64_t pos = (grub_bfs_to_cpu64 (ino->max_direct_range) - << RANGE_SHIFT); - nentries = (((grub_size_t) grub_bfs_to_cpu16 (ino->indirect.len)) - << (grub_bfs_to_cpu32 (sb->log2_bsize) - LOG_EXTENT_SIZE)); - entries = grub_malloc (nentries << LOG_EXTENT_SIZE); - if (!entries) - return grub_errno; - err = read_extent (disk, sb, &ino->indirect, 0, 0, - entries, nentries << LOG_EXTENT_SIZE); - for (i = 0; i < nentries; i++) - { - grub_uint64_t newpos; - newpos = pos + (((grub_uint64_t) grub_bfs_to_cpu16 (entries[i].len)) - << grub_bfs_to_cpu32 (sb->log2_bsize)); - if (newpos > off) - { - grub_size_t read_size; - read_size = newpos - off; - if (read_size > len) - read_size = len; - disk->read_hook = read_hook; - disk->read_hook_data = read_hook_data; - err = read_extent (disk, sb, &entries[i], 0, off - pos, - buf, read_size); - disk->read_hook = 0; - if (err) - { - grub_free (entries); - return err; - } - off += read_size; - len -= read_size; - buf = (char *) buf + read_size; - if (len == 0) - { - grub_free (entries); - return GRUB_ERR_NONE; - } - } - pos = newpos; - } - grub_free (entries); - } - - if (off < (grub_bfs_to_cpu64 (ino->max_indirect_range) << RANGE_SHIFT)) - return grub_error (GRUB_ERR_BAD_FS, "incorrect indirect blocks"); - - { - struct grub_bfs_extent *l1_entries, *l2_entries; - grub_size_t nl1_entries, nl2_entries; - grub_off_t last_l1n = ~0ULL; - grub_err_t err; - nl1_entries = (((grub_uint64_t) grub_bfs_to_cpu16 (ino->double_indirect.len)) - << (grub_bfs_to_cpu32 (sb->log2_bsize) - LOG_EXTENT_SIZE)); - l1_entries = grub_malloc (nl1_entries << LOG_EXTENT_SIZE); - if (!l1_entries) - return grub_errno; - nl2_entries = 0; - l2_entries = grub_malloc (1 << (DOUBLE_INDIRECT_SHIFT - + grub_bfs_to_cpu32 (sb->log2_bsize))); - if (!l2_entries) - { - grub_free (l1_entries); - return grub_errno; - } - err = read_extent (disk, sb, &ino->double_indirect, 0, 0, - l1_entries, nl1_entries << LOG_EXTENT_SIZE); - if (err) - { - grub_free (l1_entries); - grub_free (l2_entries); - return err; - } - - while (len > 0) - { - grub_off_t boff, l2n, l1n; - grub_size_t read_size; - grub_off_t double_indirect_offset; - double_indirect_offset = off - - grub_bfs_to_cpu64 (ino->max_indirect_range); - boff = (double_indirect_offset - & ((1 << (grub_bfs_to_cpu32 (sb->log2_bsize) - + DOUBLE_INDIRECT_SHIFT)) - 1)); - l2n = ((double_indirect_offset >> (grub_bfs_to_cpu32 (sb->log2_bsize) - + DOUBLE_INDIRECT_SHIFT)) - & ((1 << (grub_bfs_to_cpu32 (sb->log2_bsize) - LOG_EXTENT_SIZE - + DOUBLE_INDIRECT_SHIFT)) - 1)); - l1n = - (double_indirect_offset >> - (2 * grub_bfs_to_cpu32 (sb->log2_bsize) - LOG_EXTENT_SIZE + - 2 * DOUBLE_INDIRECT_SHIFT)); - if (l1n > nl1_entries) - { - grub_free (l1_entries); - grub_free (l2_entries); - return grub_error (GRUB_ERR_BAD_FS, - "incorrect double-indirect block"); - } - if (l1n != last_l1n) - { - nl2_entries = (((grub_uint64_t) grub_bfs_to_cpu16 (l1_entries[l1n].len)) - << (grub_bfs_to_cpu32 (sb->log2_bsize) - - LOG_EXTENT_SIZE)); - if (nl2_entries > (1U << (grub_bfs_to_cpu32 (sb->log2_bsize) - - LOG_EXTENT_SIZE - + DOUBLE_INDIRECT_SHIFT))) - nl2_entries = (1 << (grub_bfs_to_cpu32 (sb->log2_bsize) - - LOG_EXTENT_SIZE - + DOUBLE_INDIRECT_SHIFT)); - err = read_extent (disk, sb, &l1_entries[l1n], 0, 0, - l2_entries, nl2_entries << LOG_EXTENT_SIZE); - if (err) - { - grub_free (l1_entries); - grub_free (l2_entries); - return err; - } - last_l1n = l1n; - } - if (l2n > nl2_entries) - { - grub_free (l1_entries); - grub_free (l2_entries); - return grub_error (GRUB_ERR_BAD_FS, - "incorrect double-indirect block"); - } - - read_size = (1 << (grub_bfs_to_cpu32 (sb->log2_bsize) - + DOUBLE_INDIRECT_SHIFT)) - boff; - if (read_size > len) - read_size = len; - disk->read_hook = read_hook; - disk->read_hook_data = read_hook_data; - err = read_extent (disk, sb, &l2_entries[l2n], 0, boff, - buf, read_size); - disk->read_hook = 0; - if (err) - { - grub_free (l1_entries); - grub_free (l2_entries); - return err; - } - off += read_size; - len -= read_size; - buf = (char *) buf + read_size; - } - return GRUB_ERR_NONE; - } -} - -static grub_err_t -read_b_node (grub_disk_t disk, - const struct grub_bfs_superblock *sb, - const struct grub_bfs_inode *ino, - grub_uint64_t node_off, - struct grub_bfs_btree_node **node, - char **key_data, grub_uint16_t **keylen_idx, - grub_unaligned_uint64_t **key_values) -{ - void *ret; - struct grub_bfs_btree_node node_head; - grub_size_t total_size; - grub_err_t err; - - *node = NULL; - *key_data = NULL; - *keylen_idx = NULL; - *key_values = NULL; - - err = read_bfs_file (disk, sb, ino, node_off, &node_head, sizeof (node_head), - 0, 0); - if (err) - return err; - - total_size = ALIGN_UP (sizeof (node_head) + - grub_bfs_to_cpu_treehead - (node_head.total_key_len), - BTREE_ALIGN) + - grub_bfs_to_cpu_treehead (node_head.count_keys) * - sizeof (grub_uint16_t) - + grub_bfs_to_cpu_treehead (node_head.count_keys) * - sizeof (grub_uint64_t); - - ret = grub_malloc (total_size); - if (!ret) - return grub_errno; - - err = read_bfs_file (disk, sb, ino, node_off, ret, total_size, 0, 0); - if (err) - { - grub_free (ret); - return err; - } - - *node = ret; - *key_data = (char *) ret + sizeof (node_head); - *keylen_idx = (grub_uint16_t *) ret - + ALIGN_UP (sizeof (node_head) + - grub_bfs_to_cpu_treehead (node_head.total_key_len), - BTREE_ALIGN) / 2; - *key_values = (grub_unaligned_uint64_t *) - (*keylen_idx + - grub_bfs_to_cpu_treehead (node_head.count_keys)); - - return GRUB_ERR_NONE; -} - -static int -iterate_in_b_tree (grub_disk_t disk, - const struct grub_bfs_superblock *sb, - const struct grub_bfs_inode *ino, - int (*hook) (const char *name, grub_uint64_t value, - struct grub_bfs_dir_ctx *ctx), - struct grub_bfs_dir_ctx *ctx) -{ - struct grub_bfs_btree_header head; - grub_err_t err; - int level; - grub_uint64_t node_off; - - err = read_bfs_file (disk, sb, ino, 0, &head, sizeof (head), 0, 0); - if (err) - return 0; - node_off = grub_bfs_to_cpu64 (head.root); - - level = grub_bfs_to_cpu32 (head.level) - 1; - while (level--) - { - struct grub_bfs_btree_node node; - grub_uint64_t key_value; - err = read_bfs_file (disk, sb, ino, node_off, &node, sizeof (node), - 0, 0); - if (err) - return 0; - err = read_bfs_file (disk, sb, ino, node_off - + ALIGN_UP (sizeof (node) + - grub_bfs_to_cpu_treehead (node. - total_key_len), - BTREE_ALIGN) + - grub_bfs_to_cpu_treehead (node.count_keys) * - sizeof (grub_uint16_t), &key_value, - sizeof (grub_uint64_t), 0, 0); - if (err) - return 0; - - node_off = grub_bfs_to_cpu64 (key_value); - } - - while (1) - { - struct grub_bfs_btree_node *node; - char *key_data; - grub_uint16_t *keylen_idx; - grub_unaligned_uint64_t *key_values; - unsigned i; - grub_uint16_t start = 0, end = 0; - - err = read_b_node (disk, sb, ino, - node_off, - &node, - &key_data, - &keylen_idx, - &key_values); - - if (err) - return 0; - - for (i = 0; i < grub_bfs_to_cpu_treehead (node->count_keys); i++) - { - char c; - start = end; - end = grub_bfs_to_cpu16 (keylen_idx[i]); - if (grub_bfs_to_cpu_treehead (node->total_key_len) <= end) - end = grub_bfs_to_cpu_treehead (node->total_key_len); - c = key_data[end]; - key_data[end] = 0; - if (hook (key_data + start, grub_bfs_to_cpu64 (key_values[i].val), - ctx)) - { - grub_free (node); - return 1; - } - key_data[end] = c; - } - node_off = grub_bfs_to_cpu64 (node->right); - grub_free (node); - if (node_off == POINTER_INVALID) - return 0; - } -} - -static int -bfs_strcmp (const char *a, const char *b, grub_size_t alen) -{ - char ac, bc; - while (*b && alen) - { - if (*a != *b) - break; - - a++; - b++; - alen--; - } - - ac = alen ? *a : 0; - bc = *b; - -#ifdef MODE_AFS - return (int) (grub_int8_t) ac - (int) (grub_int8_t) bc; -#else - return (int) (grub_uint8_t) ac - (int) (grub_uint8_t) bc; -#endif -} - -static grub_err_t -find_in_b_tree (grub_disk_t disk, - const struct grub_bfs_superblock *sb, - const struct grub_bfs_inode *ino, const char *name, - grub_uint64_t * res) -{ - struct grub_bfs_btree_header head; - grub_err_t err; - int level; - grub_uint64_t node_off; - - err = read_bfs_file (disk, sb, ino, 0, &head, sizeof (head), 0, 0); - if (err) - return err; - node_off = grub_bfs_to_cpu64 (head.root); - - level = grub_bfs_to_cpu32 (head.level) - 1; - while (1) - { - struct grub_bfs_btree_node *node; - char *key_data; - grub_uint16_t *keylen_idx; - grub_unaligned_uint64_t *key_values; - int lg, j; - unsigned i; - - err = read_b_node (disk, sb, ino, node_off, &node, &key_data, &keylen_idx, &key_values); - if (err) - return err; - - if (node->count_keys == 0) - { - grub_free (node); - return grub_error (GRUB_ERR_FILE_NOT_FOUND, N_("file `%s' not found"), - name); - } - - for (lg = 0; grub_bfs_to_cpu_treehead (node->count_keys) >> lg; lg++); - - i = 0; - - for (j = lg - 1; j >= 0; j--) - { - int cmp; - grub_uint16_t start = 0, end = 0; - if ((i | (1 << j)) >= grub_bfs_to_cpu_treehead (node->count_keys)) - continue; - start = grub_bfs_to_cpu16 (keylen_idx[(i | (1 << j)) - 1]); - end = grub_bfs_to_cpu16 (keylen_idx[(i | (1 << j))]); - if (grub_bfs_to_cpu_treehead (node->total_key_len) <= end) - end = grub_bfs_to_cpu_treehead (node->total_key_len); - cmp = bfs_strcmp (key_data + start, name, end - start); - if (cmp == 0 && level == 0) - { - *res = grub_bfs_to_cpu64 (key_values[i | (1 << j)].val); - grub_free (node); - return GRUB_ERR_NONE; - } -#ifdef MODE_AFS - if (cmp <= 0) -#else - if (cmp < 0) -#endif - i |= (1 << j); - } - if (i == 0) - { - grub_uint16_t end = 0; - int cmp; - end = grub_bfs_to_cpu16 (keylen_idx[0]); - if (grub_bfs_to_cpu_treehead (node->total_key_len) <= end) - end = grub_bfs_to_cpu_treehead (node->total_key_len); - cmp = bfs_strcmp (key_data, name, end); - if (cmp == 0 && level == 0) - { - *res = grub_bfs_to_cpu64 (key_values[0].val); - grub_free (node); - return GRUB_ERR_NONE; - } -#ifdef MODE_AFS - if (cmp > 0 && level != 0) -#else - if (cmp >= 0 && level != 0) -#endif - { - node_off = grub_bfs_to_cpu64 (key_values[0].val); - level--; - grub_free (node); - continue; - } - else if (level != 0 - && grub_bfs_to_cpu_treehead (node->count_keys) >= 2) - { - node_off = grub_bfs_to_cpu64 (key_values[1].val); - level--; - grub_free (node); - continue; - } - } - else if (level != 0 - && i + 1 < grub_bfs_to_cpu_treehead (node->count_keys)) - { - node_off = grub_bfs_to_cpu64 (key_values[i + 1].val); - level--; - grub_free (node); - continue; - } - if (node->overflow != POINTER_INVALID) - { - node_off = grub_bfs_to_cpu64 (node->overflow); - /* This level-- isn't specified but is needed. */ - level--; - grub_free (node); - continue; - } - grub_free (node); - return grub_error (GRUB_ERR_FILE_NOT_FOUND, N_("file `%s' not found"), - name); - } -} - -struct grub_fshelp_node -{ - grub_disk_t disk; - const struct grub_bfs_superblock *sb; - struct grub_bfs_inode ino; -}; - -static grub_err_t -lookup_file (grub_fshelp_node_t dir, - const char *name, - grub_fshelp_node_t *foundnode, - enum grub_fshelp_filetype *foundtype) -{ - grub_err_t err; - struct grub_bfs_inode *new_ino; - grub_uint64_t res = 0; - - err = find_in_b_tree (dir->disk, dir->sb, &dir->ino, name, &res); - if (err) - return err; - - *foundnode = grub_malloc (sizeof (struct grub_fshelp_node)); - if (!*foundnode) - return grub_errno; - - (*foundnode)->disk = dir->disk; - (*foundnode)->sb = dir->sb; - new_ino = &(*foundnode)->ino; - - if (grub_disk_read (dir->disk, res - << (grub_bfs_to_cpu32 (dir->sb->log2_bsize) - - GRUB_DISK_SECTOR_BITS), 0, - sizeof (*new_ino), (char *) new_ino)) - { - grub_free (*foundnode); - return grub_errno; - } - switch (grub_bfs_to_cpu32 (new_ino->mode) & ATTR_TYPE) - { - default: - case ATTR_REG: - *foundtype = GRUB_FSHELP_REG; - break; - case ATTR_DIR: - *foundtype = GRUB_FSHELP_DIR; - break; - case ATTR_LNK: - *foundtype = GRUB_FSHELP_SYMLINK; - break; - } - return GRUB_ERR_NONE; -} - -static char * -read_symlink (grub_fshelp_node_t node) -{ - char *alloc = NULL; - grub_err_t err; - -#ifndef MODE_AFS - if (!(grub_bfs_to_cpu32 (node->ino.flags) & LONG_SYMLINK)) - { - alloc = grub_malloc (sizeof (node->ino.inplace_link) + 1); - if (!alloc) - { - return NULL; - } - grub_memcpy (alloc, node->ino.inplace_link, - sizeof (node->ino.inplace_link)); - alloc[sizeof (node->ino.inplace_link)] = 0; - } - else -#endif - { - grub_size_t symsize = grub_bfs_to_cpu64 (node->ino.size); - alloc = grub_malloc (symsize + 1); - if (!alloc) - return NULL; - err = read_bfs_file (node->disk, node->sb, &node->ino, 0, alloc, symsize, 0, 0); - if (err) - { - grub_free (alloc); - return NULL; - } - alloc[symsize] = 0; - } - - return alloc; -} - -static grub_err_t -find_file (const char *path, grub_disk_t disk, - const struct grub_bfs_superblock *sb, struct grub_bfs_inode *ino, - enum grub_fshelp_filetype exptype) -{ - grub_err_t err; - struct grub_fshelp_node root = { - .disk = disk, - .sb = sb, - }; - struct grub_fshelp_node *found; - - err = read_extent (disk, sb, &sb->root_dir, 0, 0, &root.ino, - sizeof (root.ino)); - if (err) - return err; - err = grub_fshelp_find_file_lookup (path, &root, &found, lookup_file, read_symlink, exptype); - if (!err) - grub_memcpy (ino, &found->ino, sizeof (*ino)); - - if (&root != found) - grub_free (found); - return err; -} - -static grub_err_t -mount (grub_disk_t disk, struct grub_bfs_superblock *sb) -{ - grub_err_t err; - err = grub_disk_read (disk, SUPERBLOCK, 0, sizeof (*sb), sb); - if (err == GRUB_ERR_OUT_OF_RANGE) - return grub_error (GRUB_ERR_BAD_FS, -#ifdef MODE_AFS - "not an AFS filesystem" -#else - "not a BFS filesystem" -#endif - ); - if (err) - return err; - if (sb->magic1 != grub_cpu_to_bfs32_compile_time (SUPER_BLOCK_MAGIC1) - || sb->magic2 != grub_cpu_to_bfs32_compile_time (SUPER_BLOCK_MAGIC2) - || sb->magic3 != grub_cpu_to_bfs32_compile_time (SUPER_BLOCK_MAGIC3) - || sb->bsize == 0 - || (grub_bfs_to_cpu32 (sb->bsize) - != (1U << grub_bfs_to_cpu32 (sb->log2_bsize))) - || grub_bfs_to_cpu32 (sb->log2_bsize) < GRUB_DISK_SECTOR_BITS) - return grub_error (GRUB_ERR_BAD_FS, -#ifdef MODE_AFS - "not an AFS filesystem" -#else - "not a BFS filesystem" -#endif - ); - return GRUB_ERR_NONE; -} - -/* Helper for grub_bfs_dir. */ -static int -grub_bfs_dir_iter (const char *name, grub_uint64_t value, - struct grub_bfs_dir_ctx *ctx) -{ - grub_err_t err2; - struct grub_bfs_inode ino; - struct grub_dirhook_info info; - - err2 = grub_disk_read (ctx->device->disk, value - << (grub_bfs_to_cpu32 (ctx->sb.log2_bsize) - - GRUB_DISK_SECTOR_BITS), 0, - sizeof (ino), (char *) &ino); - if (err2) - { - grub_print_error (); - return 0; - } - - info.mtimeset = 1; -#ifdef MODE_AFS - info.mtime = - grub_divmod64 (grub_bfs_to_cpu64 (ino.mtime), 1000000, 0); -#else - info.mtime = grub_bfs_to_cpu64 (ino.mtime) >> 16; -#endif - info.dir = ((grub_bfs_to_cpu32 (ino.mode) & ATTR_TYPE) == ATTR_DIR); - return ctx->hook (name, &info, ctx->hook_data); -} - -static grub_err_t -grub_bfs_dir (grub_device_t device, const char *path, - grub_fs_dir_hook_t hook, void *hook_data) -{ - struct grub_bfs_dir_ctx ctx = { - .device = device, - .hook = hook, - .hook_data = hook_data - }; - grub_err_t err; - - err = mount (device->disk, &ctx.sb); - if (err) - return err; - - { - struct grub_bfs_inode ino; - err = find_file (path, device->disk, &ctx.sb, &ino, GRUB_FSHELP_DIR); - if (err) - return err; - iterate_in_b_tree (device->disk, &ctx.sb, &ino, grub_bfs_dir_iter, - &ctx); - } - - return grub_errno; -} - -static grub_err_t -grub_bfs_open (struct grub_file *file, const char *name) -{ - struct grub_bfs_superblock sb; - grub_err_t err; - - err = mount (file->device->disk, &sb); - if (err) - return err; - - { - struct grub_bfs_inode ino; - struct grub_bfs_data *data; - err = find_file (name, file->device->disk, &sb, &ino, GRUB_FSHELP_REG); - if (err) - return err; - - data = grub_zalloc (sizeof (struct grub_bfs_data)); - if (!data) - return grub_errno; - data->sb = sb; - grub_memcpy (&data->ino, &ino, sizeof (data->ino)); - file->data = data; - file->size = grub_bfs_to_cpu64 (ino.size); - } - - return GRUB_ERR_NONE; -} - -static grub_err_t -grub_bfs_close (grub_file_t file) -{ - grub_free (file->data); - - return GRUB_ERR_NONE; -} - -static grub_ssize_t -grub_bfs_read (grub_file_t file, char *buf, grub_size_t len) -{ - grub_err_t err; - struct grub_bfs_data *data = file->data; - - err = read_bfs_file (file->device->disk, &data->sb, - &data->ino, file->offset, buf, len, - file->read_hook, file->read_hook_data); - if (err) - return -1; - return len; -} - -static grub_err_t -grub_bfs_label (grub_device_t device, char **label) -{ - struct grub_bfs_superblock sb; - grub_err_t err; - - *label = 0; - - err = mount (device->disk, &sb); - if (err) - return err; - - *label = grub_strndup (sb.label, sizeof (sb.label)); - return GRUB_ERR_NONE; -} - -#ifndef MODE_AFS -static grub_ssize_t -read_bfs_attr (grub_disk_t disk, - const struct grub_bfs_superblock *sb, - struct grub_bfs_inode *ino, - const char *name, void *buf, grub_size_t len) -{ - grub_uint8_t *ptr = (grub_uint8_t *) ino->small_data; - grub_uint8_t *end = ((grub_uint8_t *) ino + grub_bfs_to_cpu32 (sb->bsize)); - - while (ptr + sizeof (struct grub_bfs_small_data_element_header) < end) - { - struct grub_bfs_small_data_element_header *el; - char *el_name; - grub_uint8_t *data; - el = (struct grub_bfs_small_data_element_header *) ptr; - if (el->name_len == 0) - break; - el_name = (char *) (el + 1); - data = (grub_uint8_t *) el_name + grub_bfs_to_cpu16 (el->name_len) + 3; - ptr = data + grub_bfs_to_cpu16 (el->value_len) + 1; - if (grub_memcmp (name, el_name, grub_bfs_to_cpu16 (el->name_len)) == 0 - && name[el->name_len] == 0) - { - grub_size_t copy; - copy = len; - if (grub_bfs_to_cpu16 (el->value_len) > copy) - copy = grub_bfs_to_cpu16 (el->value_len); - grub_memcpy (buf, data, copy); - return copy; - } - } - - if (ino->attr.len != 0) - { - grub_size_t read; - grub_err_t err; - grub_uint64_t res; - - err = read_extent (disk, sb, &ino->attr, 0, 0, ino, - grub_bfs_to_cpu32 (sb->bsize)); - if (err) - return -1; - - err = find_in_b_tree (disk, sb, ino, name, &res); - if (err) - return -1; - grub_disk_read (disk, res - << (grub_bfs_to_cpu32 (sb->log2_bsize) - - GRUB_DISK_SECTOR_BITS), 0, - grub_bfs_to_cpu32 (sb->bsize), (char *) ino); - read = grub_bfs_to_cpu64 (ino->size); - if (read > len) - read = len; - - err = read_bfs_file (disk, sb, ino, 0, buf, read, 0, 0); - if (err) - return -1; - return read; - } - return -1; -} - -static grub_err_t -grub_bfs_uuid (grub_device_t device, char **uuid) -{ - struct grub_bfs_superblock sb; - grub_err_t err; - struct grub_bfs_inode *ino; - grub_uint64_t vid; - - *uuid = 0; - - err = mount (device->disk, &sb); - if (err) - return err; - - ino = grub_malloc (grub_bfs_to_cpu32 (sb.bsize)); - if (!ino) - return grub_errno; - - err = read_extent (device->disk, &sb, &sb.root_dir, 0, 0, - ino, grub_bfs_to_cpu32 (sb.bsize)); - if (err) - { - grub_free (ino); - return err; - } - if (read_bfs_attr (device->disk, &sb, ino, "be:volume_id", - &vid, sizeof (vid)) == sizeof (vid)) - *uuid = - grub_xasprintf ("%016" PRIxGRUB_UINT64_T, grub_bfs_to_cpu64 (vid)); - - grub_free (ino); - - return GRUB_ERR_NONE; -} -#endif - -static struct grub_fs grub_bfs_fs = { -#ifdef MODE_AFS - .name = "afs", -#else - .name = "bfs", -#endif - .fs_dir = grub_bfs_dir, - .fs_open = grub_bfs_open, - .fs_read = grub_bfs_read, - .fs_close = grub_bfs_close, - .fs_label = grub_bfs_label, -#ifndef MODE_AFS - .fs_uuid = grub_bfs_uuid, -#endif -#ifdef GRUB_UTIL - .reserved_first_sector = 1, - .blocklist_install = 1, -#endif -}; - -#ifdef MODE_AFS -GRUB_MOD_INIT (afs) -#else -GRUB_MOD_INIT (bfs) -#endif -{ - COMPILE_TIME_ASSERT (1 << LOG_EXTENT_SIZE == - sizeof (struct grub_bfs_extent)); - grub_fs_register (&grub_bfs_fs); -} - -#ifdef MODE_AFS -GRUB_MOD_FINI (afs) -#else -GRUB_MOD_FINI (bfs) -#endif -{ - grub_fs_unregister (&grub_bfs_fs); -} diff --git a/thirdparty/grub-2.04/grub-core/fs/btrfs.c b/thirdparty/grub-2.04/grub-core/fs/btrfs.c deleted file mode 100644 index 48bd3d04a..000000000 --- a/thirdparty/grub-2.04/grub-core/fs/btrfs.c +++ /dev/null @@ -1,2196 +0,0 @@ -/* btrfs.c - B-tree file system. */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2010,2011,2012,2013 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -/* - * Tell zstd to expose functions that aren't part of the stable API, which - * aren't safe to use when linking against a dynamic library. We vendor in a - * specific zstd version, so we know what we're getting. We need these unstable - * functions to provide our own allocator, which uses grub_malloc(), to zstd. - */ -#define ZSTD_STATIC_LINKING_ONLY - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -#define GRUB_BTRFS_SIGNATURE "_BHRfS_M" - -/* From http://www.oberhumer.com/opensource/lzo/lzofaq.php - * LZO will expand incompressible data by a little amount. I still haven't - * computed the exact values, but I suggest using these formulas for - * a worst-case expansion calculation: - * - * output_block_size = input_block_size + (input_block_size / 16) + 64 + 3 - * */ -#define GRUB_BTRFS_LZO_BLOCK_SIZE 4096 -#define GRUB_BTRFS_LZO_BLOCK_MAX_CSIZE (GRUB_BTRFS_LZO_BLOCK_SIZE + \ - (GRUB_BTRFS_LZO_BLOCK_SIZE / 16) + 64 + 3) - -#define ZSTD_BTRFS_MAX_WINDOWLOG 17 -#define ZSTD_BTRFS_MAX_INPUT (1 << ZSTD_BTRFS_MAX_WINDOWLOG) - -typedef grub_uint8_t grub_btrfs_checksum_t[0x20]; -typedef grub_uint16_t grub_btrfs_uuid_t[8]; - -struct grub_btrfs_device -{ - grub_uint64_t device_id; - grub_uint64_t size; - grub_uint8_t dummy[0x62 - 0x10]; -} GRUB_PACKED; - -struct grub_btrfs_superblock -{ - grub_btrfs_checksum_t checksum; - grub_btrfs_uuid_t uuid; - grub_uint8_t dummy[0x10]; - grub_uint8_t signature[sizeof (GRUB_BTRFS_SIGNATURE) - 1]; - grub_uint64_t generation; - grub_uint64_t root_tree; - grub_uint64_t chunk_tree; - grub_uint8_t dummy2[0x20]; - grub_uint64_t root_dir_objectid; - grub_uint8_t dummy3[0x41]; - struct grub_btrfs_device this_device; - char label[0x100]; - grub_uint8_t dummy4[0x100]; - grub_uint8_t bootstrap_mapping[0x800]; -} GRUB_PACKED; - -struct btrfs_header -{ - grub_btrfs_checksum_t checksum; - grub_btrfs_uuid_t uuid; - grub_uint64_t bytenr; - grub_uint8_t dummy[0x28]; - grub_uint32_t nitems; - grub_uint8_t level; -} GRUB_PACKED; - -struct grub_btrfs_device_desc -{ - grub_device_t dev; - grub_uint64_t id; -}; - -struct grub_btrfs_data -{ - struct grub_btrfs_superblock sblock; - grub_uint64_t tree; - grub_uint64_t inode; - - struct grub_btrfs_device_desc *devices_attached; - unsigned n_devices_attached; - unsigned n_devices_allocated; - - /* Cached extent data. */ - grub_uint64_t extstart; - grub_uint64_t extend; - grub_uint64_t extino; - grub_uint64_t exttree; - grub_size_t extsize; - struct grub_btrfs_extent_data *extent; -}; - -struct grub_btrfs_chunk_item -{ - grub_uint64_t size; - grub_uint64_t dummy; - grub_uint64_t stripe_length; - grub_uint64_t type; -#define GRUB_BTRFS_CHUNK_TYPE_BITS_DONTCARE 0x07 -#define GRUB_BTRFS_CHUNK_TYPE_SINGLE 0x00 -#define GRUB_BTRFS_CHUNK_TYPE_RAID0 0x08 -#define GRUB_BTRFS_CHUNK_TYPE_RAID1 0x10 -#define GRUB_BTRFS_CHUNK_TYPE_DUPLICATED 0x20 -#define GRUB_BTRFS_CHUNK_TYPE_RAID10 0x40 -#define GRUB_BTRFS_CHUNK_TYPE_RAID5 0x80 -#define GRUB_BTRFS_CHUNK_TYPE_RAID6 0x100 - grub_uint8_t dummy2[0xc]; - grub_uint16_t nstripes; - grub_uint16_t nsubstripes; -} GRUB_PACKED; - -struct grub_btrfs_chunk_stripe -{ - grub_uint64_t device_id; - grub_uint64_t offset; - grub_btrfs_uuid_t device_uuid; -} GRUB_PACKED; - -struct grub_btrfs_leaf_node -{ - struct grub_btrfs_key key; - grub_uint32_t offset; - grub_uint32_t size; -} GRUB_PACKED; - -struct grub_btrfs_internal_node -{ - struct grub_btrfs_key key; - grub_uint64_t addr; - grub_uint64_t dummy; -} GRUB_PACKED; - -struct grub_btrfs_dir_item -{ - struct grub_btrfs_key key; - grub_uint8_t dummy[8]; - grub_uint16_t m; - grub_uint16_t n; -#define GRUB_BTRFS_DIR_ITEM_TYPE_REGULAR 1 -#define GRUB_BTRFS_DIR_ITEM_TYPE_DIRECTORY 2 -#define GRUB_BTRFS_DIR_ITEM_TYPE_SYMLINK 7 - grub_uint8_t type; - char name[0]; -} GRUB_PACKED; - -struct grub_btrfs_leaf_descriptor -{ - unsigned depth; - unsigned allocated; - struct - { - grub_disk_addr_t addr; - unsigned iter; - unsigned maxiter; - int leaf; - } *data; -}; - -struct grub_btrfs_time -{ - grub_int64_t sec; - grub_uint32_t nanosec; -} GRUB_PACKED; - -struct grub_btrfs_inode -{ - grub_uint8_t dummy1[0x10]; - grub_uint64_t size; - grub_uint8_t dummy2[0x70]; - struct grub_btrfs_time mtime; -} GRUB_PACKED; - -struct grub_btrfs_extent_data -{ - grub_uint64_t dummy; - grub_uint64_t size; - grub_uint8_t compression; - grub_uint8_t encryption; - grub_uint16_t encoding; - grub_uint8_t type; - union - { - char inl[0]; - struct - { - grub_uint64_t laddr; - grub_uint64_t compressed_size; - grub_uint64_t offset; - grub_uint64_t filled; - }; - }; -} GRUB_PACKED; - -#define GRUB_BTRFS_EXTENT_INLINE 0 -#define GRUB_BTRFS_EXTENT_REGULAR 1 - -#define GRUB_BTRFS_COMPRESSION_NONE 0 -#define GRUB_BTRFS_COMPRESSION_ZLIB 1 -#define GRUB_BTRFS_COMPRESSION_LZO 2 -#define GRUB_BTRFS_COMPRESSION_ZSTD 3 - -#define GRUB_BTRFS_OBJECT_ID_CHUNK 0x100 - -static grub_disk_addr_t superblock_sectors[] = { 64 * 2, 64 * 1024 * 2, - 256 * 1048576 * 2, 1048576ULL * 1048576ULL * 2 -}; - -static grub_err_t -grub_btrfs_read_logical (struct grub_btrfs_data *data, - grub_disk_addr_t addr, void *buf, grub_size_t size, - int recursion_depth); - -static grub_err_t -read_sblock (grub_disk_t disk, struct grub_btrfs_superblock *sb) -{ - struct grub_btrfs_superblock sblock; - unsigned i; - grub_err_t err = GRUB_ERR_NONE; - for (i = 0; i < ARRAY_SIZE (superblock_sectors); i++) - { - /* Don't try additional superblocks beyond device size. */ - if (i && (grub_le_to_cpu64 (sblock.this_device.size) - >> GRUB_DISK_SECTOR_BITS) <= superblock_sectors[i]) - break; - err = grub_disk_read (disk, superblock_sectors[i], 0, - sizeof (sblock), &sblock); - if (err == GRUB_ERR_OUT_OF_RANGE) - break; - - if (grub_memcmp ((char *) sblock.signature, GRUB_BTRFS_SIGNATURE, - sizeof (GRUB_BTRFS_SIGNATURE) - 1) != 0) - break; - if (i == 0 || grub_le_to_cpu64 (sblock.generation) - > grub_le_to_cpu64 (sb->generation)) - grub_memcpy (sb, &sblock, sizeof (sblock)); - } - - if ((err == GRUB_ERR_OUT_OF_RANGE || !err) && i == 0) - return grub_error (GRUB_ERR_BAD_FS, "not a Btrfs filesystem"); - - if (err == GRUB_ERR_OUT_OF_RANGE) - grub_errno = err = GRUB_ERR_NONE; - - return err; -} - -static int -key_cmp (const struct grub_btrfs_key *a, const struct grub_btrfs_key *b) -{ - if (grub_le_to_cpu64 (a->object_id) < grub_le_to_cpu64 (b->object_id)) - return -1; - if (grub_le_to_cpu64 (a->object_id) > grub_le_to_cpu64 (b->object_id)) - return +1; - - if (a->type < b->type) - return -1; - if (a->type > b->type) - return +1; - - if (grub_le_to_cpu64 (a->offset) < grub_le_to_cpu64 (b->offset)) - return -1; - if (grub_le_to_cpu64 (a->offset) > grub_le_to_cpu64 (b->offset)) - return +1; - return 0; -} - -static void -free_iterator (struct grub_btrfs_leaf_descriptor *desc) -{ - grub_free (desc->data); -} - -static grub_err_t -check_btrfs_header (struct grub_btrfs_data *data, struct btrfs_header *header, - grub_disk_addr_t addr) -{ - if (grub_le_to_cpu64 (header->bytenr) != addr) - { - grub_dprintf ("btrfs", "btrfs_header.bytenr is not equal node addr\n"); - return grub_error (GRUB_ERR_BAD_FS, - "header bytenr is not equal node addr"); - } - if (grub_memcmp (data->sblock.uuid, header->uuid, sizeof(grub_btrfs_uuid_t))) - { - grub_dprintf ("btrfs", "btrfs_header.uuid doesn't match sblock uuid\n"); - return grub_error (GRUB_ERR_BAD_FS, - "header uuid doesn't match sblock uuid"); - } - return GRUB_ERR_NONE; -} - -static grub_err_t -save_ref (struct grub_btrfs_leaf_descriptor *desc, - grub_disk_addr_t addr, unsigned i, unsigned m, int l) -{ - desc->depth++; - if (desc->allocated < desc->depth) - { - void *newdata; - desc->allocated *= 2; - newdata = grub_realloc (desc->data, sizeof (desc->data[0]) - * desc->allocated); - if (!newdata) - return grub_errno; - desc->data = newdata; - } - desc->data[desc->depth - 1].addr = addr; - desc->data[desc->depth - 1].iter = i; - desc->data[desc->depth - 1].maxiter = m; - desc->data[desc->depth - 1].leaf = l; - return GRUB_ERR_NONE; -} - -static int -next (struct grub_btrfs_data *data, - struct grub_btrfs_leaf_descriptor *desc, - grub_disk_addr_t * outaddr, grub_size_t * outsize, - struct grub_btrfs_key *key_out) -{ - grub_err_t err; - struct grub_btrfs_leaf_node leaf; - - for (; desc->depth > 0; desc->depth--) - { - desc->data[desc->depth - 1].iter++; - if (desc->data[desc->depth - 1].iter - < desc->data[desc->depth - 1].maxiter) - break; - } - if (desc->depth == 0) - return 0; - while (!desc->data[desc->depth - 1].leaf) - { - struct grub_btrfs_internal_node node; - struct btrfs_header head; - - err = grub_btrfs_read_logical (data, desc->data[desc->depth - 1].iter - * sizeof (node) - + sizeof (struct btrfs_header) - + desc->data[desc->depth - 1].addr, - &node, sizeof (node), 0); - if (err) - return -err; - - err = grub_btrfs_read_logical (data, grub_le_to_cpu64 (node.addr), - &head, sizeof (head), 0); - check_btrfs_header (data, &head, grub_le_to_cpu64 (node.addr)); - if (err) - return -err; - - save_ref (desc, grub_le_to_cpu64 (node.addr), 0, - grub_le_to_cpu32 (head.nitems), !head.level); - } - err = grub_btrfs_read_logical (data, desc->data[desc->depth - 1].iter - * sizeof (leaf) - + sizeof (struct btrfs_header) - + desc->data[desc->depth - 1].addr, &leaf, - sizeof (leaf), 0); - if (err) - return -err; - *outsize = grub_le_to_cpu32 (leaf.size); - *outaddr = desc->data[desc->depth - 1].addr + sizeof (struct btrfs_header) - + grub_le_to_cpu32 (leaf.offset); - *key_out = leaf.key; - return 1; -} - -static grub_err_t -lower_bound (struct grub_btrfs_data *data, - const struct grub_btrfs_key *key_in, - struct grub_btrfs_key *key_out, - grub_uint64_t root, - grub_disk_addr_t *outaddr, grub_size_t *outsize, - struct grub_btrfs_leaf_descriptor *desc, - int recursion_depth) -{ - grub_disk_addr_t addr = grub_le_to_cpu64 (root); - int depth = -1; - - if (desc) - { - desc->allocated = 16; - desc->depth = 0; - desc->data = grub_malloc (sizeof (desc->data[0]) * desc->allocated); - if (!desc->data) - return grub_errno; - } - - /* > 2 would work as well but be robust and allow a bit more just in case. - */ - if (recursion_depth > 10) - return grub_error (GRUB_ERR_BAD_FS, "too deep btrfs virtual nesting"); - - grub_dprintf ("btrfs", - "retrieving %" PRIxGRUB_UINT64_T - " %x %" PRIxGRUB_UINT64_T "\n", - key_in->object_id, key_in->type, key_in->offset); - - while (1) - { - grub_err_t err; - struct btrfs_header head; - - reiter: - depth++; - /* FIXME: preread few nodes into buffer. */ - err = grub_btrfs_read_logical (data, addr, &head, sizeof (head), - recursion_depth + 1); - check_btrfs_header (data, &head, addr); - if (err) - return err; - addr += sizeof (head); - if (head.level) - { - unsigned i; - struct grub_btrfs_internal_node node, node_last; - int have_last = 0; - grub_memset (&node_last, 0, sizeof (node_last)); - for (i = 0; i < grub_le_to_cpu32 (head.nitems); i++) - { - err = grub_btrfs_read_logical (data, addr + i * sizeof (node), - &node, sizeof (node), - recursion_depth + 1); - if (err) - return err; - - grub_dprintf ("btrfs", - "internal node (depth %d) %" PRIxGRUB_UINT64_T - " %x %" PRIxGRUB_UINT64_T "\n", depth, - node.key.object_id, node.key.type, - node.key.offset); - - if (key_cmp (&node.key, key_in) == 0) - { - err = GRUB_ERR_NONE; - if (desc) - err = save_ref (desc, addr - sizeof (head), i, - grub_le_to_cpu32 (head.nitems), 0); - if (err) - return err; - addr = grub_le_to_cpu64 (node.addr); - goto reiter; - } - if (key_cmp (&node.key, key_in) > 0) - break; - node_last = node; - have_last = 1; - } - if (have_last) - { - err = GRUB_ERR_NONE; - if (desc) - err = save_ref (desc, addr - sizeof (head), i - 1, - grub_le_to_cpu32 (head.nitems), 0); - if (err) - return err; - addr = grub_le_to_cpu64 (node_last.addr); - goto reiter; - } - *outsize = 0; - *outaddr = 0; - grub_memset (key_out, 0, sizeof (*key_out)); - if (desc) - return save_ref (desc, addr - sizeof (head), -1, - grub_le_to_cpu32 (head.nitems), 0); - return GRUB_ERR_NONE; - } - { - unsigned i; - struct grub_btrfs_leaf_node leaf, leaf_last; - int have_last = 0; - for (i = 0; i < grub_le_to_cpu32 (head.nitems); i++) - { - err = grub_btrfs_read_logical (data, addr + i * sizeof (leaf), - &leaf, sizeof (leaf), - recursion_depth + 1); - if (err) - return err; - - grub_dprintf ("btrfs", - "leaf (depth %d) %" PRIxGRUB_UINT64_T - " %x %" PRIxGRUB_UINT64_T "\n", depth, - leaf.key.object_id, leaf.key.type, leaf.key.offset); - - if (key_cmp (&leaf.key, key_in) == 0) - { - grub_memcpy (key_out, &leaf.key, sizeof (*key_out)); - *outsize = grub_le_to_cpu32 (leaf.size); - *outaddr = addr + grub_le_to_cpu32 (leaf.offset); - if (desc) - return save_ref (desc, addr - sizeof (head), i, - grub_le_to_cpu32 (head.nitems), 1); - return GRUB_ERR_NONE; - } - - if (key_cmp (&leaf.key, key_in) > 0) - break; - - have_last = 1; - leaf_last = leaf; - } - - if (have_last) - { - grub_memcpy (key_out, &leaf_last.key, sizeof (*key_out)); - *outsize = grub_le_to_cpu32 (leaf_last.size); - *outaddr = addr + grub_le_to_cpu32 (leaf_last.offset); - if (desc) - return save_ref (desc, addr - sizeof (head), i - 1, - grub_le_to_cpu32 (head.nitems), 1); - return GRUB_ERR_NONE; - } - *outsize = 0; - *outaddr = 0; - grub_memset (key_out, 0, sizeof (*key_out)); - if (desc) - return save_ref (desc, addr - sizeof (head), -1, - grub_le_to_cpu32 (head.nitems), 1); - return GRUB_ERR_NONE; - } - } -} - -/* Context for find_device. */ -struct find_device_ctx -{ - struct grub_btrfs_data *data; - grub_uint64_t id; - grub_device_t dev_found; -}; - -/* Helper for find_device. */ -static int -find_device_iter (const char *name, void *data) -{ - struct find_device_ctx *ctx = data; - grub_device_t dev; - grub_err_t err; - struct grub_btrfs_superblock sb; - - dev = grub_device_open (name); - if (!dev) - return 0; - if (!dev->disk) - { - grub_device_close (dev); - return 0; - } - err = read_sblock (dev->disk, &sb); - if (err == GRUB_ERR_BAD_FS) - { - grub_device_close (dev); - grub_errno = GRUB_ERR_NONE; - return 0; - } - if (err) - { - grub_device_close (dev); - grub_print_error (); - return 0; - } - if (grub_memcmp (ctx->data->sblock.uuid, sb.uuid, sizeof (sb.uuid)) != 0 - || sb.this_device.device_id != ctx->id) - { - grub_device_close (dev); - return 0; - } - - ctx->dev_found = dev; - return 1; -} - -static grub_device_t -find_device (struct grub_btrfs_data *data, grub_uint64_t id) -{ - struct find_device_ctx ctx = { - .data = data, - .id = id, - .dev_found = NULL - }; - unsigned i; - - for (i = 0; i < data->n_devices_attached; i++) - if (id == data->devices_attached[i].id) - return data->devices_attached[i].dev; - - grub_device_iterate (find_device_iter, &ctx); - - data->n_devices_attached++; - if (data->n_devices_attached > data->n_devices_allocated) - { - void *tmp; - data->n_devices_allocated = 2 * data->n_devices_attached + 1; - data->devices_attached - = grub_realloc (tmp = data->devices_attached, - data->n_devices_allocated - * sizeof (data->devices_attached[0])); - if (!data->devices_attached) - { - if (ctx.dev_found) - grub_device_close (ctx.dev_found); - data->devices_attached = tmp; - return NULL; - } - } - data->devices_attached[data->n_devices_attached - 1].id = id; - data->devices_attached[data->n_devices_attached - 1].dev = ctx.dev_found; - return ctx.dev_found; -} - -static grub_err_t -btrfs_read_from_chunk (struct grub_btrfs_data *data, - struct grub_btrfs_chunk_item *chunk, - grub_uint64_t stripen, grub_uint64_t stripe_offset, - int redundancy, grub_uint64_t csize, - void *buf) -{ - struct grub_btrfs_chunk_stripe *stripe; - grub_disk_addr_t paddr; - grub_device_t dev; - grub_err_t err; - - stripe = (struct grub_btrfs_chunk_stripe *) (chunk + 1); - /* Right now the redundancy handling is easy. - With RAID5-like it will be more difficult. */ - stripe += stripen + redundancy; - - paddr = grub_le_to_cpu64 (stripe->offset) + stripe_offset; - - grub_dprintf ("btrfs", "stripe %" PRIxGRUB_UINT64_T - " maps to 0x%" PRIxGRUB_UINT64_T "\n" - "reading paddr 0x%" PRIxGRUB_UINT64_T "\n", - stripen, stripe->offset, paddr); - - dev = find_device (data, stripe->device_id); - if (!dev) - { - grub_dprintf ("btrfs", - "couldn't find a necessary member device " - "of multi-device filesystem\n"); - grub_errno = GRUB_ERR_NONE; - return GRUB_ERR_READ_ERROR; - } - - err = grub_disk_read (dev->disk, paddr >> GRUB_DISK_SECTOR_BITS, - paddr & (GRUB_DISK_SECTOR_SIZE - 1), - csize, buf); - return err; -} - -struct raid56_buffer { - void *buf; - int data_is_valid; -}; - -static void -rebuild_raid5 (char *dest, struct raid56_buffer *buffers, - grub_uint64_t nstripes, grub_uint64_t csize) -{ - grub_uint64_t i; - int first; - - for(i = 0; buffers[i].data_is_valid && i < nstripes; i++); - - if (i == nstripes) - { - grub_dprintf ("btrfs", "called rebuild_raid5(), but all disks are OK\n"); - return; - } - - grub_dprintf ("btrfs", "rebuilding RAID 5 stripe #%" PRIuGRUB_UINT64_T "\n", i); - - for (i = 0, first = 1; i < nstripes; i++) - { - if (!buffers[i].data_is_valid) - continue; - - if (first) { - grub_memcpy(dest, buffers[i].buf, csize); - first = 0; - } else - grub_crypto_xor (dest, dest, buffers[i].buf, csize); - } -} - -static grub_err_t -raid6_recover_read_buffer (void *data, int disk_nr, - grub_uint64_t addr __attribute__ ((unused)), - void *dest, grub_size_t size) -{ - struct raid56_buffer *buffers = data; - - if (!buffers[disk_nr].data_is_valid) - return grub_errno = GRUB_ERR_READ_ERROR; - - grub_memcpy(dest, buffers[disk_nr].buf, size); - - return grub_errno = GRUB_ERR_NONE; -} - -static void -rebuild_raid6 (struct raid56_buffer *buffers, grub_uint64_t nstripes, - grub_uint64_t csize, grub_uint64_t parities_pos, void *dest, - grub_uint64_t stripen) - -{ - grub_raid6_recover_gen (buffers, nstripes, stripen, parities_pos, - dest, 0, csize, 0, raid6_recover_read_buffer); -} - -static grub_err_t -raid56_read_retry (struct grub_btrfs_data *data, - struct grub_btrfs_chunk_item *chunk, - grub_uint64_t stripe_offset, grub_uint64_t stripen, - grub_uint64_t csize, void *buf, grub_uint64_t parities_pos) -{ - struct raid56_buffer *buffers; - grub_uint64_t nstripes = grub_le_to_cpu16 (chunk->nstripes); - grub_uint64_t chunk_type = grub_le_to_cpu64 (chunk->type); - grub_err_t ret = GRUB_ERR_OUT_OF_MEMORY; - grub_uint64_t i, failed_devices; - - buffers = grub_zalloc (sizeof(*buffers) * nstripes); - if (!buffers) - goto cleanup; - - for (i = 0; i < nstripes; i++) - { - buffers[i].buf = grub_zalloc (csize); - if (!buffers[i].buf) - goto cleanup; - } - - for (failed_devices = 0, i = 0; i < nstripes; i++) - { - struct grub_btrfs_chunk_stripe *stripe; - grub_disk_addr_t paddr; - grub_device_t dev; - grub_err_t err; - - /* - * The struct grub_btrfs_chunk_stripe array lives - * behind struct grub_btrfs_chunk_item. - */ - stripe = (struct grub_btrfs_chunk_stripe *) (chunk + 1) + i; - - paddr = grub_le_to_cpu64 (stripe->offset) + stripe_offset; - grub_dprintf ("btrfs", "reading paddr %" PRIxGRUB_UINT64_T - " from stripe ID %" PRIxGRUB_UINT64_T "\n", - paddr, stripe->device_id); - - dev = find_device (data, stripe->device_id); - if (!dev) - { - grub_dprintf ("btrfs", "stripe %" PRIuGRUB_UINT64_T " FAILED (dev ID %" - PRIxGRUB_UINT64_T ")\n", i, stripe->device_id); - failed_devices++; - continue; - } - - err = grub_disk_read (dev->disk, paddr >> GRUB_DISK_SECTOR_BITS, - paddr & (GRUB_DISK_SECTOR_SIZE - 1), - csize, buffers[i].buf); - if (err == GRUB_ERR_NONE) - { - buffers[i].data_is_valid = 1; - grub_dprintf ("btrfs", "stripe %" PRIuGRUB_UINT64_T " OK (dev ID %" - PRIxGRUB_UINT64_T ")\n", i, stripe->device_id); - } - else - { - grub_dprintf ("btrfs", "stripe %" PRIuGRUB_UINT64_T - " READ FAILED (dev ID %" PRIxGRUB_UINT64_T ")\n", - i, stripe->device_id); - failed_devices++; - } - } - - if (failed_devices > 1 && (chunk_type & GRUB_BTRFS_CHUNK_TYPE_RAID5)) - { - grub_dprintf ("btrfs", "not enough disks for RAID 5: total %" PRIuGRUB_UINT64_T - ", missing %" PRIuGRUB_UINT64_T "\n", - nstripes, failed_devices); - ret = GRUB_ERR_READ_ERROR; - goto cleanup; - } - else if (failed_devices > 2 && (chunk_type & GRUB_BTRFS_CHUNK_TYPE_RAID6)) - { - grub_dprintf ("btrfs", "not enough disks for RAID 6: total %" PRIuGRUB_UINT64_T - ", missing %" PRIuGRUB_UINT64_T "\n", - nstripes, failed_devices); - ret = GRUB_ERR_READ_ERROR; - goto cleanup; - } - else - grub_dprintf ("btrfs", "enough disks for RAID 5: total %" - PRIuGRUB_UINT64_T ", missing %" PRIuGRUB_UINT64_T "\n", - nstripes, failed_devices); - - /* We have enough disks. So, rebuild the data. */ - if (chunk_type & GRUB_BTRFS_CHUNK_TYPE_RAID5) - rebuild_raid5 (buf, buffers, nstripes, csize); - else - rebuild_raid6 (buffers, nstripes, csize, parities_pos, buf, stripen); - - ret = GRUB_ERR_NONE; - cleanup: - if (buffers) - for (i = 0; i < nstripes; i++) - grub_free (buffers[i].buf); - grub_free (buffers); - - return ret; -} - -static grub_err_t -grub_btrfs_read_logical (struct grub_btrfs_data *data, grub_disk_addr_t addr, - void *buf, grub_size_t size, int recursion_depth) -{ - while (size > 0) - { - grub_uint8_t *ptr; - struct grub_btrfs_key *key; - struct grub_btrfs_chunk_item *chunk; - grub_uint64_t csize; - grub_err_t err = 0; - struct grub_btrfs_key key_out; - int challoc = 0; - struct grub_btrfs_key key_in; - grub_size_t chsize; - grub_disk_addr_t chaddr; - - grub_dprintf ("btrfs", "searching for laddr %" PRIxGRUB_UINT64_T "\n", - addr); - for (ptr = data->sblock.bootstrap_mapping; - ptr < data->sblock.bootstrap_mapping - + sizeof (data->sblock.bootstrap_mapping) - - sizeof (struct grub_btrfs_key);) - { - key = (struct grub_btrfs_key *) ptr; - if (key->type != GRUB_BTRFS_ITEM_TYPE_CHUNK) - break; - chunk = (struct grub_btrfs_chunk_item *) (key + 1); - grub_dprintf ("btrfs", - "%" PRIxGRUB_UINT64_T " %" PRIxGRUB_UINT64_T " \n", - grub_le_to_cpu64 (key->offset), - grub_le_to_cpu64 (chunk->size)); - if (grub_le_to_cpu64 (key->offset) <= addr - && addr < grub_le_to_cpu64 (key->offset) - + grub_le_to_cpu64 (chunk->size)) - goto chunk_found; - ptr += sizeof (*key) + sizeof (*chunk) - + sizeof (struct grub_btrfs_chunk_stripe) - * grub_le_to_cpu16 (chunk->nstripes); - } - - key_in.object_id = grub_cpu_to_le64_compile_time (GRUB_BTRFS_OBJECT_ID_CHUNK); - key_in.type = GRUB_BTRFS_ITEM_TYPE_CHUNK; - key_in.offset = grub_cpu_to_le64 (addr); - err = lower_bound (data, &key_in, &key_out, - data->sblock.chunk_tree, - &chaddr, &chsize, NULL, recursion_depth); - if (err) - return err; - key = &key_out; - if (key->type != GRUB_BTRFS_ITEM_TYPE_CHUNK - || !(grub_le_to_cpu64 (key->offset) <= addr)) - return grub_error (GRUB_ERR_BAD_FS, - "couldn't find the chunk descriptor"); - - chunk = grub_malloc (chsize); - if (!chunk) - return grub_errno; - - challoc = 1; - err = grub_btrfs_read_logical (data, chaddr, chunk, chsize, - recursion_depth); - if (err) - { - grub_free (chunk); - return err; - } - - chunk_found: - { - grub_uint64_t stripen; - grub_uint64_t stripe_offset; - grub_uint64_t off = addr - grub_le_to_cpu64 (key->offset); - grub_uint64_t chunk_stripe_length; - grub_uint16_t nstripes; - unsigned redundancy = 1; - unsigned i, j; - int is_raid56; - grub_uint64_t parities_pos = 0; - - is_raid56 = !!(grub_le_to_cpu64 (chunk->type) & - (GRUB_BTRFS_CHUNK_TYPE_RAID5 | - GRUB_BTRFS_CHUNK_TYPE_RAID6)); - - if (grub_le_to_cpu64 (chunk->size) <= off) - { - grub_dprintf ("btrfs", "no chunk\n"); - return grub_error (GRUB_ERR_BAD_FS, - "couldn't find the chunk descriptor"); - } - - nstripes = grub_le_to_cpu16 (chunk->nstripes) ? : 1; - chunk_stripe_length = grub_le_to_cpu64 (chunk->stripe_length) ? : 512; - grub_dprintf ("btrfs", "chunk 0x%" PRIxGRUB_UINT64_T - "+0x%" PRIxGRUB_UINT64_T - " (%d stripes (%d substripes) of %" - PRIxGRUB_UINT64_T ")\n", - grub_le_to_cpu64 (key->offset), - grub_le_to_cpu64 (chunk->size), - nstripes, - grub_le_to_cpu16 (chunk->nsubstripes), - chunk_stripe_length); - - switch (grub_le_to_cpu64 (chunk->type) - & ~GRUB_BTRFS_CHUNK_TYPE_BITS_DONTCARE) - { - case GRUB_BTRFS_CHUNK_TYPE_SINGLE: - { - grub_uint64_t stripe_length; - grub_dprintf ("btrfs", "single\n"); - stripe_length = grub_divmod64 (grub_le_to_cpu64 (chunk->size), - nstripes, - NULL); - if (stripe_length == 0) - stripe_length = 512; - stripen = grub_divmod64 (off, stripe_length, &stripe_offset); - csize = (stripen + 1) * stripe_length - off; - break; - } - case GRUB_BTRFS_CHUNK_TYPE_DUPLICATED: - case GRUB_BTRFS_CHUNK_TYPE_RAID1: - { - grub_dprintf ("btrfs", "RAID1\n"); - stripen = 0; - stripe_offset = off; - csize = grub_le_to_cpu64 (chunk->size) - off; - redundancy = 2; - break; - } - case GRUB_BTRFS_CHUNK_TYPE_RAID0: - { - grub_uint64_t middle, high; - grub_uint64_t low; - grub_dprintf ("btrfs", "RAID0\n"); - middle = grub_divmod64 (off, - chunk_stripe_length, - &low); - - high = grub_divmod64 (middle, nstripes, - &stripen); - stripe_offset = - low + chunk_stripe_length * high; - csize = chunk_stripe_length - low; - break; - } - case GRUB_BTRFS_CHUNK_TYPE_RAID10: - { - grub_uint64_t middle, high; - grub_uint64_t low; - grub_uint16_t nsubstripes; - nsubstripes = grub_le_to_cpu16 (chunk->nsubstripes) ? : 1; - middle = grub_divmod64 (off, - chunk_stripe_length, - &low); - - high = grub_divmod64 (middle, - nstripes / nsubstripes ? : 1, - &stripen); - stripen *= nsubstripes; - redundancy = nsubstripes; - stripe_offset = low + chunk_stripe_length - * high; - csize = chunk_stripe_length - low; - break; - } - case GRUB_BTRFS_CHUNK_TYPE_RAID5: - case GRUB_BTRFS_CHUNK_TYPE_RAID6: - { - grub_uint64_t nparities, stripe_nr, high, low; - - redundancy = 1; /* no redundancy for now */ - - if (grub_le_to_cpu64 (chunk->type) & GRUB_BTRFS_CHUNK_TYPE_RAID5) - { - grub_dprintf ("btrfs", "RAID5\n"); - nparities = 1; - } - else - { - grub_dprintf ("btrfs", "RAID6\n"); - nparities = 2; - } - - /* - * RAID 6 layout consists of several stripes spread over - * the disks, e.g.: - * - * Disk_0 Disk_1 Disk_2 Disk_3 - * A0 B0 P0 Q0 - * Q1 A1 B1 P1 - * P2 Q2 A2 B2 - * - * Note: placement of the parities depend on row number. - * - * Pay attention that the btrfs terminology may differ from - * terminology used in other RAID implementations, e.g. LVM, - * dm or md. The main difference is that btrfs calls contiguous - * block of data on a given disk, e.g. A0, stripe instead of chunk. - * - * The variables listed below have following meaning: - * - stripe_nr is the stripe number excluding the parities - * (A0 = 0, B0 = 1, A1 = 2, B1 = 3, etc.), - * - high is the row number (0 for A0...Q0, 1 for Q1...P1, etc.), - * - stripen is the disk number in a row (0 for A0, Q1, P2, - * 1 for B0, A1, Q2, etc.), - * - off is the logical address to read, - * - chunk_stripe_length is the size of a stripe (typically 64 KiB), - * - nstripes is the number of disks in a row, - * - low is the offset of the data inside a stripe, - * - stripe_offset is the data offset in an array, - * - csize is the "potential" data to read; it will be reduced - * to size if the latter is smaller, - * - nparities is the number of parities (1 for RAID 5, 2 for - * RAID 6); used only in RAID 5/6 code. - */ - stripe_nr = grub_divmod64 (off, chunk_stripe_length, &low); - - /* - * stripen is computed without the parities - * (0 for A0, A1, A2, 1 for B0, B1, B2, etc.). - */ - high = grub_divmod64 (stripe_nr, nstripes - nparities, &stripen); - - /* - * The stripes are spread over the disks. Every each row their - * positions are shifted by 1 place. So, the real disks number - * change. Hence, we have to take into account current row number - * modulo nstripes (0 for A0, 1 for A1, 2 for A2, etc.). - */ - grub_divmod64 (high + stripen, nstripes, &stripen); - - /* - * parities_pos is equal to ((high - nparities) % nstripes) - * (see the diagram above). However, (high - nparities) can - * be negative, e.g. when high == 0, leading to an incorrect - * results. (high + nstripes - nparities) is always positive and - * modulo nstripes is equal to ((high - nparities) % nstripes). - */ - grub_divmod64 (high + nstripes - nparities, nstripes, &parities_pos); - - stripe_offset = chunk_stripe_length * high + low; - csize = chunk_stripe_length - low; - - break; - } - default: - grub_dprintf ("btrfs", "unsupported RAID\n"); - return grub_error (GRUB_ERR_NOT_IMPLEMENTED_YET, - "unsupported RAID flags %" PRIxGRUB_UINT64_T, - grub_le_to_cpu64 (chunk->type)); - } - if (csize == 0) - return grub_error (GRUB_ERR_BUG, - "couldn't find the chunk descriptor"); - if (csize > (grub_uint64_t) size) - csize = size; - - for (j = 0; j < 2; j++) - { - grub_dprintf ("btrfs", "chunk 0x%" PRIxGRUB_UINT64_T - "+0x%" PRIxGRUB_UINT64_T - " (%d stripes (%d substripes) of %" - PRIxGRUB_UINT64_T ")\n", - grub_le_to_cpu64 (key->offset), - grub_le_to_cpu64 (chunk->size), - grub_le_to_cpu16 (chunk->nstripes), - grub_le_to_cpu16 (chunk->nsubstripes), - grub_le_to_cpu64 (chunk->stripe_length)); - grub_dprintf ("btrfs", "reading laddr 0x%" PRIxGRUB_UINT64_T "\n", - addr); - - if (is_raid56) - { - err = btrfs_read_from_chunk (data, chunk, stripen, - stripe_offset, - 0, /* no mirror */ - csize, buf); - grub_errno = GRUB_ERR_NONE; - if (err) - err = raid56_read_retry (data, chunk, stripe_offset, - stripen, csize, buf, parities_pos); - } - else - for (i = 0; i < redundancy; i++) - { - err = btrfs_read_from_chunk (data, chunk, stripen, - stripe_offset, - i, /* redundancy */ - csize, buf); - if (!err) - break; - grub_errno = GRUB_ERR_NONE; - } - if (!err) - break; - } - if (err) - return grub_errno = err; - } - size -= csize; - buf = (grub_uint8_t *) buf + csize; - addr += csize; - if (challoc) - grub_free (chunk); - } - return GRUB_ERR_NONE; -} - -static struct grub_btrfs_data * -grub_btrfs_mount (grub_device_t dev) -{ - struct grub_btrfs_data *data; - grub_err_t err; - - if (!dev->disk) - { - grub_error (GRUB_ERR_BAD_FS, "not BtrFS"); - return NULL; - } - - data = grub_zalloc (sizeof (*data)); - if (!data) - return NULL; - - err = read_sblock (dev->disk, &data->sblock); - if (err) - { - grub_free (data); - return NULL; - } - - data->n_devices_allocated = 16; - data->devices_attached = grub_malloc (sizeof (data->devices_attached[0]) - * data->n_devices_allocated); - if (!data->devices_attached) - { - grub_free (data); - return NULL; - } - data->n_devices_attached = 1; - data->devices_attached[0].dev = dev; - data->devices_attached[0].id = data->sblock.this_device.device_id; - - return data; -} - -static void -grub_btrfs_unmount (struct grub_btrfs_data *data) -{ - unsigned i; - /* The device 0 is closed one layer upper. */ - for (i = 1; i < data->n_devices_attached; i++) - if (data->devices_attached[i].dev) - grub_device_close (data->devices_attached[i].dev); - grub_free (data->devices_attached); - grub_free (data->extent); - grub_free (data); -} - -static grub_err_t -grub_btrfs_read_inode (struct grub_btrfs_data *data, - struct grub_btrfs_inode *inode, grub_uint64_t num, - grub_uint64_t tree) -{ - struct grub_btrfs_key key_in, key_out; - grub_disk_addr_t elemaddr; - grub_size_t elemsize; - grub_err_t err; - - key_in.object_id = num; - key_in.type = GRUB_BTRFS_ITEM_TYPE_INODE_ITEM; - key_in.offset = 0; - - err = lower_bound (data, &key_in, &key_out, tree, &elemaddr, &elemsize, NULL, - 0); - if (err) - return err; - if (num != key_out.object_id - || key_out.type != GRUB_BTRFS_ITEM_TYPE_INODE_ITEM) - return grub_error (GRUB_ERR_BAD_FS, "inode not found"); - - return grub_btrfs_read_logical (data, elemaddr, inode, sizeof (*inode), 0); -} - -static void *grub_zstd_malloc (void *state __attribute__((unused)), size_t size) -{ - return grub_malloc (size); -} - -static void grub_zstd_free (void *state __attribute__((unused)), void *address) -{ - return grub_free (address); -} - -static ZSTD_customMem grub_zstd_allocator (void) -{ - ZSTD_customMem allocator; - - allocator.customAlloc = &grub_zstd_malloc; - allocator.customFree = &grub_zstd_free; - allocator.opaque = NULL; - - return allocator; -} - -static grub_ssize_t -grub_btrfs_zstd_decompress (char *ibuf, grub_size_t isize, grub_off_t off, - char *obuf, grub_size_t osize) -{ - void *allocated = NULL; - char *otmpbuf = obuf; - grub_size_t otmpsize = osize; - ZSTD_DCtx *dctx = NULL; - grub_size_t zstd_ret; - grub_ssize_t ret = -1; - - /* - * Zstd will fail if it can't fit the entire output in the destination - * buffer, so if osize isn't large enough, allocate a temporary buffer. - */ - if (otmpsize < ZSTD_BTRFS_MAX_INPUT) - { - allocated = grub_malloc (ZSTD_BTRFS_MAX_INPUT); - if (!allocated) - { - grub_error (GRUB_ERR_OUT_OF_MEMORY, "failed allocate a zstd buffer"); - goto err; - } - otmpbuf = (char *) allocated; - otmpsize = ZSTD_BTRFS_MAX_INPUT; - } - - /* Create the ZSTD_DCtx. */ - dctx = ZSTD_createDCtx_advanced (grub_zstd_allocator ()); - if (!dctx) - { - /* ZSTD_createDCtx_advanced() only fails if it is out of memory. */ - grub_error (GRUB_ERR_OUT_OF_MEMORY, "failed to create a zstd context"); - goto err; - } - - /* - * Get the real input size, there may be junk at the - * end of the frame. - */ - isize = ZSTD_findFrameCompressedSize (ibuf, isize); - if (ZSTD_isError (isize)) - { - grub_error (GRUB_ERR_BAD_COMPRESSED_DATA, "zstd data corrupted"); - goto err; - } - - /* Decompress and check for errors. */ - zstd_ret = ZSTD_decompressDCtx (dctx, otmpbuf, otmpsize, ibuf, isize); - if (ZSTD_isError (zstd_ret)) - { - grub_error (GRUB_ERR_BAD_COMPRESSED_DATA, "zstd data corrupted"); - goto err; - } - - /* - * Move the requested data into the obuf. obuf may be equal - * to otmpbuf, which is why grub_memmove() is required. - */ - grub_memmove (obuf, otmpbuf + off, osize); - ret = osize; - -err: - grub_free (allocated); - ZSTD_freeDCtx (dctx); - - return ret; -} - -static grub_ssize_t -grub_btrfs_lzo_decompress(char *ibuf, grub_size_t isize, grub_off_t off, - char *obuf, grub_size_t osize) -{ - grub_uint32_t total_size, cblock_size; - grub_size_t ret = 0; - char *ibuf0 = ibuf; - - total_size = grub_le_to_cpu32 (grub_get_unaligned32 (ibuf)); - ibuf += sizeof (total_size); - - if (isize < total_size) - return -1; - - /* Jump forward to first block with requested data. */ - while (off >= GRUB_BTRFS_LZO_BLOCK_SIZE) - { - /* Don't let following uint32_t cross the page boundary. */ - if (((ibuf - ibuf0) & 0xffc) == 0xffc) - ibuf = ((ibuf - ibuf0 + 3) & ~3) + ibuf0; - - cblock_size = grub_le_to_cpu32 (grub_get_unaligned32 (ibuf)); - ibuf += sizeof (cblock_size); - - if (cblock_size > GRUB_BTRFS_LZO_BLOCK_MAX_CSIZE) - return -1; - - off -= GRUB_BTRFS_LZO_BLOCK_SIZE; - ibuf += cblock_size; - } - - while (osize > 0) - { - lzo_uint usize = GRUB_BTRFS_LZO_BLOCK_SIZE; - - /* Don't let following uint32_t cross the page boundary. */ - if (((ibuf - ibuf0) & 0xffc) == 0xffc) - ibuf = ((ibuf - ibuf0 + 3) & ~3) + ibuf0; - - cblock_size = grub_le_to_cpu32 (grub_get_unaligned32 (ibuf)); - ibuf += sizeof (cblock_size); - - if (cblock_size > GRUB_BTRFS_LZO_BLOCK_MAX_CSIZE) - return -1; - - /* Block partially filled with requested data. */ - if (off > 0 || osize < GRUB_BTRFS_LZO_BLOCK_SIZE) - { - grub_size_t to_copy = GRUB_BTRFS_LZO_BLOCK_SIZE - off; - grub_uint8_t *buf; - - if (to_copy > osize) - to_copy = osize; - - buf = grub_malloc (GRUB_BTRFS_LZO_BLOCK_SIZE); - if (!buf) - return -1; - - if (lzo1x_decompress_safe ((lzo_bytep)ibuf, cblock_size, buf, &usize, - NULL) != LZO_E_OK) - { - grub_free (buf); - return -1; - } - - if (to_copy > usize) - to_copy = usize; - grub_memcpy(obuf, buf + off, to_copy); - - osize -= to_copy; - ret += to_copy; - obuf += to_copy; - ibuf += cblock_size; - off = 0; - - grub_free (buf); - continue; - } - - /* Decompress whole block directly to output buffer. */ - if (lzo1x_decompress_safe ((lzo_bytep)ibuf, cblock_size, (lzo_bytep)obuf, - &usize, NULL) != LZO_E_OK) - return -1; - - osize -= usize; - ret += usize; - obuf += usize; - ibuf += cblock_size; - } - - return ret; -} - -static grub_ssize_t -grub_btrfs_extent_read (struct grub_btrfs_data *data, - grub_uint64_t ino, grub_uint64_t tree, - grub_off_t pos0, char *buf, grub_size_t len) -{ - grub_off_t pos = pos0; - while (len) - { - grub_size_t csize; - grub_err_t err; - grub_off_t extoff; - if (!data->extent || data->extstart > pos || data->extino != ino - || data->exttree != tree || data->extend <= pos) - { - struct grub_btrfs_key key_in, key_out; - grub_disk_addr_t elemaddr; - grub_size_t elemsize; - - grub_free (data->extent); - key_in.object_id = ino; - key_in.type = GRUB_BTRFS_ITEM_TYPE_EXTENT_ITEM; - key_in.offset = grub_cpu_to_le64 (pos); - err = lower_bound (data, &key_in, &key_out, tree, - &elemaddr, &elemsize, NULL, 0); - if (err) - return -1; - if (key_out.object_id != ino - || key_out.type != GRUB_BTRFS_ITEM_TYPE_EXTENT_ITEM) - { - grub_error (GRUB_ERR_BAD_FS, "extent not found"); - return -1; - } - if ((grub_ssize_t) elemsize < ((char *) &data->extent->inl - - (char *) data->extent)) - { - grub_error (GRUB_ERR_BAD_FS, "extent descriptor is too short"); - return -1; - } - data->extstart = grub_le_to_cpu64 (key_out.offset); - data->extsize = elemsize; - data->extent = grub_malloc (elemsize); - data->extino = ino; - data->exttree = tree; - if (!data->extent) - return grub_errno; - - err = grub_btrfs_read_logical (data, elemaddr, data->extent, - elemsize, 0); - if (err) - return err; - - data->extend = data->extstart + grub_le_to_cpu64 (data->extent->size); - if (data->extent->type == GRUB_BTRFS_EXTENT_REGULAR - && (char *) data->extent + elemsize - >= (char *) &data->extent->filled + sizeof (data->extent->filled)) - data->extend = - data->extstart + grub_le_to_cpu64 (data->extent->filled); - - grub_dprintf ("btrfs", "regular extent 0x%" PRIxGRUB_UINT64_T "+0x%" - PRIxGRUB_UINT64_T "\n", - grub_le_to_cpu64 (key_out.offset), - grub_le_to_cpu64 (data->extent->size)); - if (data->extend <= pos) - { - grub_error (GRUB_ERR_BAD_FS, "extent not found"); - return -1; - } - } - csize = data->extend - pos; - extoff = pos - data->extstart; - if (csize > len) - csize = len; - - if (data->extent->encryption) - { - grub_error (GRUB_ERR_NOT_IMPLEMENTED_YET, - "encryption not supported"); - return -1; - } - - if (data->extent->compression != GRUB_BTRFS_COMPRESSION_NONE - && data->extent->compression != GRUB_BTRFS_COMPRESSION_ZLIB - && data->extent->compression != GRUB_BTRFS_COMPRESSION_LZO - && data->extent->compression != GRUB_BTRFS_COMPRESSION_ZSTD) - { - grub_error (GRUB_ERR_NOT_IMPLEMENTED_YET, - "compression type 0x%x not supported", - data->extent->compression); - return -1; - } - - if (data->extent->encoding) - { - grub_error (GRUB_ERR_NOT_IMPLEMENTED_YET, "encoding not supported"); - return -1; - } - - switch (data->extent->type) - { - case GRUB_BTRFS_EXTENT_INLINE: - if (data->extent->compression == GRUB_BTRFS_COMPRESSION_ZLIB) - { - if (grub_zlib_decompress (data->extent->inl, data->extsize - - ((grub_uint8_t *) data->extent->inl - - (grub_uint8_t *) data->extent), - extoff, buf, csize) - != (grub_ssize_t) csize) - { - if (!grub_errno) - grub_error (GRUB_ERR_BAD_COMPRESSED_DATA, - "premature end of compressed"); - return -1; - } - } - else if (data->extent->compression == GRUB_BTRFS_COMPRESSION_LZO) - { - if (grub_btrfs_lzo_decompress(data->extent->inl, data->extsize - - ((grub_uint8_t *) data->extent->inl - - (grub_uint8_t *) data->extent), - extoff, buf, csize) - != (grub_ssize_t) csize) - return -1; - } - else if (data->extent->compression == GRUB_BTRFS_COMPRESSION_ZSTD) - { - if (grub_btrfs_zstd_decompress (data->extent->inl, data->extsize - - ((grub_uint8_t *) data->extent->inl - - (grub_uint8_t *) data->extent), - extoff, buf, csize) - != (grub_ssize_t) csize) - return -1; - } - else - grub_memcpy (buf, data->extent->inl + extoff, csize); - break; - case GRUB_BTRFS_EXTENT_REGULAR: - if (!data->extent->laddr) - { - grub_memset (buf, 0, csize); - break; - } - - if (data->extent->compression != GRUB_BTRFS_COMPRESSION_NONE) - { - char *tmp; - grub_uint64_t zsize; - grub_ssize_t ret; - - zsize = grub_le_to_cpu64 (data->extent->compressed_size); - tmp = grub_malloc (zsize); - if (!tmp) - return -1; - err = grub_btrfs_read_logical (data, - grub_le_to_cpu64 (data->extent->laddr), - tmp, zsize, 0); - if (err) - { - grub_free (tmp); - return -1; - } - - if (data->extent->compression == GRUB_BTRFS_COMPRESSION_ZLIB) - ret = grub_zlib_decompress (tmp, zsize, extoff - + grub_le_to_cpu64 (data->extent->offset), - buf, csize); - else if (data->extent->compression == GRUB_BTRFS_COMPRESSION_LZO) - ret = grub_btrfs_lzo_decompress (tmp, zsize, extoff - + grub_le_to_cpu64 (data->extent->offset), - buf, csize); - else if (data->extent->compression == GRUB_BTRFS_COMPRESSION_ZSTD) - ret = grub_btrfs_zstd_decompress (tmp, zsize, extoff - + grub_le_to_cpu64 (data->extent->offset), - buf, csize); - else - ret = -1; - - grub_free (tmp); - - if (ret != (grub_ssize_t) csize) - { - if (!grub_errno) - grub_error (GRUB_ERR_BAD_COMPRESSED_DATA, - "premature end of compressed"); - return -1; - } - - break; - } - err = grub_btrfs_read_logical (data, - grub_le_to_cpu64 (data->extent->laddr) - + grub_le_to_cpu64 (data->extent->offset) - + extoff, buf, csize, 0); - if (err) - return -1; - break; - default: - grub_error (GRUB_ERR_NOT_IMPLEMENTED_YET, - "unsupported extent type 0x%x", data->extent->type); - return -1; - } - buf += csize; - pos += csize; - len -= csize; - } - return pos - pos0; -} - -static grub_err_t -get_root (struct grub_btrfs_data *data, struct grub_btrfs_key *key, - grub_uint64_t *tree, grub_uint8_t *type) -{ - grub_err_t err; - grub_disk_addr_t elemaddr; - grub_size_t elemsize; - struct grub_btrfs_key key_out, key_in; - struct grub_btrfs_root_item ri; - - key_in.object_id = grub_cpu_to_le64_compile_time (GRUB_BTRFS_ROOT_VOL_OBJECTID); - key_in.offset = 0; - key_in.type = GRUB_BTRFS_ITEM_TYPE_ROOT_ITEM; - err = lower_bound (data, &key_in, &key_out, - data->sblock.root_tree, - &elemaddr, &elemsize, NULL, 0); - if (err) - return err; - if (key_in.object_id != key_out.object_id - || key_in.type != key_out.type - || key_in.offset != key_out.offset) - return grub_error (GRUB_ERR_BAD_FS, "no root"); - err = grub_btrfs_read_logical (data, elemaddr, &ri, - sizeof (ri), 0); - if (err) - return err; - key->type = GRUB_BTRFS_ITEM_TYPE_DIR_ITEM; - key->offset = 0; - key->object_id = grub_cpu_to_le64_compile_time (GRUB_BTRFS_OBJECT_ID_CHUNK); - *tree = ri.tree; - *type = GRUB_BTRFS_DIR_ITEM_TYPE_DIRECTORY; - return GRUB_ERR_NONE; -} - -static grub_err_t -find_path (struct grub_btrfs_data *data, - const char *path, struct grub_btrfs_key *key, - grub_uint64_t *tree, grub_uint8_t *type) -{ - const char *slash = path; - grub_err_t err; - grub_disk_addr_t elemaddr; - grub_size_t elemsize; - grub_size_t allocated = 0; - struct grub_btrfs_dir_item *direl = NULL; - struct grub_btrfs_key key_out; - const char *ctoken; - grub_size_t ctokenlen; - char *path_alloc = NULL; - char *origpath = NULL; - unsigned symlinks_max = 32; - - err = get_root (data, key, tree, type); - if (err) - return err; - - origpath = grub_strdup (path); - if (!origpath) - return grub_errno; - - while (1) - { - while (path[0] == '/') - path++; - if (!path[0]) - break; - slash = grub_strchr (path, '/'); - if (!slash) - slash = path + grub_strlen (path); - ctoken = path; - ctokenlen = slash - path; - - if (*type != GRUB_BTRFS_DIR_ITEM_TYPE_DIRECTORY) - { - grub_free (path_alloc); - grub_free (origpath); - return grub_error (GRUB_ERR_BAD_FILE_TYPE, N_("not a directory")); - } - - if (ctokenlen == 1 && ctoken[0] == '.') - { - path = slash; - continue; - } - if (ctokenlen == 2 && ctoken[0] == '.' && ctoken[1] == '.') - { - key->type = GRUB_BTRFS_ITEM_TYPE_INODE_REF; - key->offset = -1; - - err = lower_bound (data, key, &key_out, *tree, &elemaddr, &elemsize, - NULL, 0); - if (err) - { - grub_free (direl); - grub_free (path_alloc); - grub_free (origpath); - return err; - } - - if (key_out.type != key->type - || key->object_id != key_out.object_id) - { - grub_free (direl); - grub_free (path_alloc); - err = grub_error (GRUB_ERR_FILE_NOT_FOUND, N_("file `%s' not found"), origpath); - grub_free (origpath); - return err; - } - - *type = GRUB_BTRFS_DIR_ITEM_TYPE_DIRECTORY; - key->object_id = key_out.offset; - - path = slash; - - continue; - } - - key->type = GRUB_BTRFS_ITEM_TYPE_DIR_ITEM; - key->offset = grub_cpu_to_le64 (~grub_getcrc32c (1, ctoken, ctokenlen)); - - err = lower_bound (data, key, &key_out, *tree, &elemaddr, &elemsize, - NULL, 0); - if (err) - { - grub_free (direl); - grub_free (path_alloc); - grub_free (origpath); - return err; - } - if (key_cmp (key, &key_out) != 0) - { - grub_free (direl); - grub_free (path_alloc); - err = grub_error (GRUB_ERR_FILE_NOT_FOUND, N_("file `%s' not found"), origpath); - grub_free (origpath); - return err; - } - - struct grub_btrfs_dir_item *cdirel; - if (elemsize > allocated) - { - allocated = 2 * elemsize; - grub_free (direl); - direl = grub_malloc (allocated + 1); - if (!direl) - { - grub_free (path_alloc); - grub_free (origpath); - return grub_errno; - } - } - - err = grub_btrfs_read_logical (data, elemaddr, direl, elemsize, 0); - if (err) - { - grub_free (direl); - grub_free (path_alloc); - grub_free (origpath); - return err; - } - - for (cdirel = direl; - (grub_uint8_t *) cdirel - (grub_uint8_t *) direl - < (grub_ssize_t) elemsize; - cdirel = (void *) ((grub_uint8_t *) (direl + 1) - + grub_le_to_cpu16 (cdirel->n) - + grub_le_to_cpu16 (cdirel->m))) - { - if (ctokenlen == grub_le_to_cpu16 (cdirel->n) - && grub_memcmp (cdirel->name, ctoken, ctokenlen) == 0) - break; - } - if ((grub_uint8_t *) cdirel - (grub_uint8_t *) direl - >= (grub_ssize_t) elemsize) - { - grub_free (direl); - grub_free (path_alloc); - err = grub_error (GRUB_ERR_FILE_NOT_FOUND, N_("file `%s' not found"), origpath); - grub_free (origpath); - return err; - } - - path = slash; - if (cdirel->type == GRUB_BTRFS_DIR_ITEM_TYPE_SYMLINK) - { - struct grub_btrfs_inode inode; - char *tmp; - if (--symlinks_max == 0) - { - grub_free (direl); - grub_free (path_alloc); - grub_free (origpath); - return grub_error (GRUB_ERR_SYMLINK_LOOP, - N_("too deep nesting of symlinks")); - } - - err = grub_btrfs_read_inode (data, &inode, - cdirel->key.object_id, *tree); - if (err) - { - grub_free (direl); - grub_free (path_alloc); - grub_free (origpath); - return err; - } - tmp = grub_malloc (grub_le_to_cpu64 (inode.size) - + grub_strlen (path) + 1); - if (!tmp) - { - grub_free (direl); - grub_free (path_alloc); - grub_free (origpath); - return grub_errno; - } - - if (grub_btrfs_extent_read (data, cdirel->key.object_id, - *tree, 0, tmp, - grub_le_to_cpu64 (inode.size)) - != (grub_ssize_t) grub_le_to_cpu64 (inode.size)) - { - grub_free (direl); - grub_free (path_alloc); - grub_free (origpath); - grub_free (tmp); - return grub_errno; - } - grub_memcpy (tmp + grub_le_to_cpu64 (inode.size), path, - grub_strlen (path) + 1); - grub_free (path_alloc); - path = path_alloc = tmp; - if (path[0] == '/') - { - err = get_root (data, key, tree, type); - if (err) - return err; - } - continue; - } - *type = cdirel->type; - - switch (cdirel->key.type) - { - case GRUB_BTRFS_ITEM_TYPE_ROOT_ITEM: - { - struct grub_btrfs_root_item ri; - err = lower_bound (data, &cdirel->key, &key_out, - data->sblock.root_tree, - &elemaddr, &elemsize, NULL, 0); - if (err) - { - grub_free (direl); - grub_free (path_alloc); - grub_free (origpath); - return err; - } - if (cdirel->key.object_id != key_out.object_id - || cdirel->key.type != key_out.type) - { - grub_free (direl); - grub_free (path_alloc); - err = grub_error (GRUB_ERR_FILE_NOT_FOUND, N_("file `%s' not found"), origpath); - grub_free (origpath); - return err; - } - err = grub_btrfs_read_logical (data, elemaddr, &ri, - sizeof (ri), 0); - if (err) - { - grub_free (direl); - grub_free (path_alloc); - grub_free (origpath); - return err; - } - key->type = GRUB_BTRFS_ITEM_TYPE_DIR_ITEM; - key->offset = 0; - key->object_id = grub_cpu_to_le64_compile_time (GRUB_BTRFS_OBJECT_ID_CHUNK); - *tree = ri.tree; - break; - } - case GRUB_BTRFS_ITEM_TYPE_INODE_ITEM: - if (*slash && *type == GRUB_BTRFS_DIR_ITEM_TYPE_REGULAR) - { - grub_free (direl); - grub_free (path_alloc); - err = grub_error (GRUB_ERR_FILE_NOT_FOUND, N_("file `%s' not found"), origpath); - grub_free (origpath); - return err; - } - *key = cdirel->key; - if (*type == GRUB_BTRFS_DIR_ITEM_TYPE_DIRECTORY) - key->type = GRUB_BTRFS_ITEM_TYPE_DIR_ITEM; - break; - default: - grub_free (path_alloc); - grub_free (origpath); - grub_free (direl); - return grub_error (GRUB_ERR_BAD_FS, "unrecognised object type 0x%x", - cdirel->key.type); - } - } - - grub_free (direl); - grub_free (origpath); - grub_free (path_alloc); - return GRUB_ERR_NONE; -} - -static grub_err_t -grub_btrfs_dir (grub_device_t device, const char *path, - grub_fs_dir_hook_t hook, void *hook_data) -{ - struct grub_btrfs_data *data = grub_btrfs_mount (device); - struct grub_btrfs_key key_in, key_out; - grub_err_t err; - grub_disk_addr_t elemaddr; - grub_size_t elemsize; - grub_size_t allocated = 0; - struct grub_btrfs_dir_item *direl = NULL; - struct grub_btrfs_leaf_descriptor desc; - int r = 0; - grub_uint64_t tree; - grub_uint8_t type; - - if (!data) - return grub_errno; - - err = find_path (data, path, &key_in, &tree, &type); - if (err) - { - grub_btrfs_unmount (data); - return err; - } - if (type != GRUB_BTRFS_DIR_ITEM_TYPE_DIRECTORY) - { - grub_btrfs_unmount (data); - return grub_error (GRUB_ERR_BAD_FILE_TYPE, N_("not a directory")); - } - - err = lower_bound (data, &key_in, &key_out, tree, - &elemaddr, &elemsize, &desc, 0); - if (err) - { - grub_btrfs_unmount (data); - return err; - } - if (key_out.type != GRUB_BTRFS_ITEM_TYPE_DIR_ITEM - || key_out.object_id != key_in.object_id) - { - r = next (data, &desc, &elemaddr, &elemsize, &key_out); - if (r <= 0) - goto out; - } - do - { - struct grub_btrfs_dir_item *cdirel; - if (key_out.type != GRUB_BTRFS_ITEM_TYPE_DIR_ITEM - || key_out.object_id != key_in.object_id) - { - r = 0; - break; - } - if (elemsize > allocated) - { - allocated = 2 * elemsize; - grub_free (direl); - direl = grub_malloc (allocated + 1); - if (!direl) - { - r = -grub_errno; - break; - } - } - - err = grub_btrfs_read_logical (data, elemaddr, direl, elemsize, 0); - if (err) - { - r = -err; - break; - } - - for (cdirel = direl; - (grub_uint8_t *) cdirel - (grub_uint8_t *) direl - < (grub_ssize_t) elemsize; - cdirel = (void *) ((grub_uint8_t *) (direl + 1) - + grub_le_to_cpu16 (cdirel->n) - + grub_le_to_cpu16 (cdirel->m))) - { - char c; - struct grub_btrfs_inode inode; - struct grub_dirhook_info info; - err = grub_btrfs_read_inode (data, &inode, cdirel->key.object_id, - tree); - grub_memset (&info, 0, sizeof (info)); - if (err) - grub_errno = GRUB_ERR_NONE; - else - { - info.mtime = grub_le_to_cpu64 (inode.mtime.sec); - info.mtimeset = 1; - } - c = cdirel->name[grub_le_to_cpu16 (cdirel->n)]; - cdirel->name[grub_le_to_cpu16 (cdirel->n)] = 0; - info.dir = (cdirel->type == GRUB_BTRFS_DIR_ITEM_TYPE_DIRECTORY); - if (hook (cdirel->name, &info, hook_data)) - goto out; - cdirel->name[grub_le_to_cpu16 (cdirel->n)] = c; - } - r = next (data, &desc, &elemaddr, &elemsize, &key_out); - } - while (r > 0); - -out: - grub_free (direl); - - free_iterator (&desc); - grub_btrfs_unmount (data); - - return -r; -} - -static grub_err_t -grub_btrfs_open (struct grub_file *file, const char *name) -{ - struct grub_btrfs_data *data = grub_btrfs_mount (file->device); - grub_err_t err; - struct grub_btrfs_inode inode; - grub_uint8_t type; - struct grub_btrfs_key key_in; - - if (!data) - return grub_errno; - - err = find_path (data, name, &key_in, &data->tree, &type); - if (err) - { - grub_btrfs_unmount (data); - return err; - } - if (type != GRUB_BTRFS_DIR_ITEM_TYPE_REGULAR) - { - grub_btrfs_unmount (data); - return grub_error (GRUB_ERR_BAD_FILE_TYPE, N_("not a regular file")); - } - - data->inode = key_in.object_id; - err = grub_btrfs_read_inode (data, &inode, data->inode, data->tree); - if (err) - { - grub_btrfs_unmount (data); - return err; - } - - file->data = data; - file->size = grub_le_to_cpu64 (inode.size); - - return err; -} - -static grub_err_t -grub_btrfs_close (grub_file_t file) -{ - grub_btrfs_unmount (file->data); - - return GRUB_ERR_NONE; -} - -static grub_ssize_t -grub_btrfs_read (grub_file_t file, char *buf, grub_size_t len) -{ - struct grub_btrfs_data *data = file->data; - - return grub_btrfs_extent_read (data, data->inode, - data->tree, file->offset, buf, len); -} - -static grub_err_t -grub_btrfs_uuid (grub_device_t device, char **uuid) -{ - struct grub_btrfs_data *data; - - *uuid = NULL; - - data = grub_btrfs_mount (device); - if (!data) - return grub_errno; - - *uuid = grub_xasprintf ("%04x%04x-%04x-%04x-%04x-%04x%04x%04x", - grub_be_to_cpu16 (data->sblock.uuid[0]), - grub_be_to_cpu16 (data->sblock.uuid[1]), - grub_be_to_cpu16 (data->sblock.uuid[2]), - grub_be_to_cpu16 (data->sblock.uuid[3]), - grub_be_to_cpu16 (data->sblock.uuid[4]), - grub_be_to_cpu16 (data->sblock.uuid[5]), - grub_be_to_cpu16 (data->sblock.uuid[6]), - grub_be_to_cpu16 (data->sblock.uuid[7])); - - grub_btrfs_unmount (data); - - return grub_errno; -} - -static grub_err_t -grub_btrfs_label (grub_device_t device, char **label) -{ - struct grub_btrfs_data *data; - - *label = NULL; - - data = grub_btrfs_mount (device); - if (!data) - return grub_errno; - - *label = grub_strndup (data->sblock.label, sizeof (data->sblock.label)); - - grub_btrfs_unmount (data); - - return grub_errno; -} - -#ifdef GRUB_UTIL -static grub_err_t -grub_btrfs_embed (grub_device_t device __attribute__ ((unused)), - unsigned int *nsectors, - unsigned int max_nsectors, - grub_embed_type_t embed_type, - grub_disk_addr_t **sectors) -{ - unsigned i; - - if (embed_type != GRUB_EMBED_PCBIOS) - return grub_error (GRUB_ERR_NOT_IMPLEMENTED_YET, - "BtrFS currently supports only PC-BIOS embedding"); - - if (64 * 2 - 1 < *nsectors) - return grub_error (GRUB_ERR_OUT_OF_RANGE, - N_("your core.img is unusually large. " - "It won't fit in the embedding area")); - - *nsectors = 64 * 2 - 1; - if (*nsectors > max_nsectors) - *nsectors = max_nsectors; - *sectors = grub_malloc (*nsectors * sizeof (**sectors)); - if (!*sectors) - return grub_errno; - for (i = 0; i < *nsectors; i++) - (*sectors)[i] = i + 1; - - return GRUB_ERR_NONE; -} -#endif - -static struct grub_fs grub_btrfs_fs = { - .name = "btrfs", - .fs_dir = grub_btrfs_dir, - .fs_open = grub_btrfs_open, - .fs_read = grub_btrfs_read, - .fs_close = grub_btrfs_close, - .fs_uuid = grub_btrfs_uuid, - .fs_label = grub_btrfs_label, -#ifdef GRUB_UTIL - .fs_embed = grub_btrfs_embed, - .reserved_first_sector = 1, - .blocklist_install = 0, -#endif -}; - -GRUB_MOD_INIT (btrfs) -{ - grub_fs_register (&grub_btrfs_fs); -} - -GRUB_MOD_FINI (btrfs) -{ - grub_fs_unregister (&grub_btrfs_fs); -} diff --git a/thirdparty/grub-2.04/grub-core/fs/cbfs.c b/thirdparty/grub-2.04/grub-core/fs/cbfs.c deleted file mode 100644 index 857bea991..000000000 --- a/thirdparty/grub-2.04/grub-core/fs/cbfs.c +++ /dev/null @@ -1,402 +0,0 @@ -/* cbfs.c - cbfs and tar filesystem. */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2007,2008,2009,2013 Free Software Foundation, Inc. - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see . - */ - -#include -#include -#include - -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - - -struct grub_archelp_data -{ - grub_disk_t disk; - grub_off_t hofs, next_hofs; - grub_off_t dofs; - grub_off_t size; - grub_off_t cbfs_start; - grub_off_t cbfs_end; - grub_off_t cbfs_align; -}; - -static grub_err_t -grub_cbfs_find_file (struct grub_archelp_data *data, char **name, - grub_int32_t *mtime, - grub_uint32_t *mode) -{ - grub_size_t offset; - for (;; - data->dofs = data->hofs + offset, - data->next_hofs = ALIGN_UP (data->dofs + data->size, data->cbfs_align)) - { - struct cbfs_file hd; - grub_size_t namesize; - - data->hofs = data->next_hofs; - - if (data->hofs >= data->cbfs_end) - { - *mode = GRUB_ARCHELP_ATTR_END; - return GRUB_ERR_NONE; - } - - if (grub_disk_read (data->disk, 0, data->hofs, sizeof (hd), &hd)) - return grub_errno; - - if (grub_memcmp (hd.magic, CBFS_FILE_MAGIC, sizeof (hd.magic)) != 0) - { - *mode = GRUB_ARCHELP_ATTR_END; - return GRUB_ERR_NONE; - } - data->size = grub_be_to_cpu32 (hd.len); - (void) mtime; - offset = grub_be_to_cpu32 (hd.offset); - - *mode = GRUB_ARCHELP_ATTR_FILE | GRUB_ARCHELP_ATTR_NOTIME; - - namesize = offset; - if (namesize >= sizeof (hd)) - namesize -= sizeof (hd); - if (namesize == 0) - continue; - *name = grub_malloc (namesize + 1); - if (*name == NULL) - return grub_errno; - - if (grub_disk_read (data->disk, 0, data->hofs + sizeof (hd), - namesize, *name)) - { - grub_free (*name); - return grub_errno; - } - - if ((*name)[0] == '\0') - { - grub_free (*name); - *name = NULL; - continue; - } - - (*name)[namesize] = 0; - - data->dofs = data->hofs + offset; - data->next_hofs = ALIGN_UP (data->dofs + data->size, data->cbfs_align); - return GRUB_ERR_NONE; - } -} - -static void -grub_cbfs_rewind (struct grub_archelp_data *data) -{ - data->next_hofs = data->cbfs_start; -} - -static struct grub_archelp_ops arcops = - { - .find_file = grub_cbfs_find_file, - .rewind = grub_cbfs_rewind - }; - -static int -validate_head (struct cbfs_header *head) -{ - return (head->magic == grub_cpu_to_be32_compile_time (CBFS_HEADER_MAGIC) - && (head->version - == grub_cpu_to_be32_compile_time (CBFS_HEADER_VERSION1) - || head->version - == grub_cpu_to_be32_compile_time (CBFS_HEADER_VERSION2)) - && (grub_be_to_cpu32 (head->bootblocksize) - < grub_be_to_cpu32 (head->romsize)) - && (grub_be_to_cpu32 (head->offset) - < grub_be_to_cpu32 (head->romsize)) - && (grub_be_to_cpu32 (head->offset) - + grub_be_to_cpu32 (head->bootblocksize) - < grub_be_to_cpu32 (head->romsize)) - && head->align != 0 - && (head->align & (head->align - 1)) == 0 - && head->romsize != 0); -} - -static struct grub_archelp_data * -grub_cbfs_mount (grub_disk_t disk) -{ - struct cbfs_file hd; - struct grub_archelp_data *data = NULL; - grub_uint32_t ptr; - grub_off_t header_off; - struct cbfs_header head; - - if (grub_disk_get_size (disk) == GRUB_DISK_SIZE_UNKNOWN) - goto fail; - - if (grub_disk_read (disk, grub_disk_get_size (disk) - 1, - GRUB_DISK_SECTOR_SIZE - sizeof (ptr), - sizeof (ptr), &ptr)) - goto fail; - - ptr = grub_cpu_to_le32 (ptr); - header_off = (grub_disk_get_size (disk) << GRUB_DISK_SECTOR_BITS) - + (grub_int32_t) ptr; - - if (grub_disk_read (disk, 0, header_off, - sizeof (head), &head)) - goto fail; - - if (!validate_head (&head)) - goto fail; - - data = (struct grub_archelp_data *) grub_zalloc (sizeof (*data)); - if (!data) - goto fail; - - data->cbfs_start = (grub_disk_get_size (disk) << GRUB_DISK_SECTOR_BITS) - - (grub_be_to_cpu32 (head.romsize) - grub_be_to_cpu32 (head.offset)); - data->cbfs_end = (grub_disk_get_size (disk) << GRUB_DISK_SECTOR_BITS) - - grub_be_to_cpu32 (head.bootblocksize); - data->cbfs_align = grub_be_to_cpu32 (head.align); - - if (data->cbfs_start >= (grub_disk_get_size (disk) << GRUB_DISK_SECTOR_BITS)) - goto fail; - if (data->cbfs_end > (grub_disk_get_size (disk) << GRUB_DISK_SECTOR_BITS)) - data->cbfs_end = (grub_disk_get_size (disk) << GRUB_DISK_SECTOR_BITS); - - data->next_hofs = data->cbfs_start; - - if (grub_disk_read (disk, 0, data->cbfs_start, sizeof (hd), &hd)) - goto fail; - - if (grub_memcmp (hd.magic, CBFS_FILE_MAGIC, sizeof (CBFS_FILE_MAGIC) - 1)) - goto fail; - - data->disk = disk; - - return data; - -fail: - grub_free (data); - grub_error (GRUB_ERR_BAD_FS, "not a cbfs filesystem"); - return 0; -} - -static grub_err_t -grub_cbfs_dir (grub_device_t device, const char *path_in, - grub_fs_dir_hook_t hook, void *hook_data) -{ - struct grub_archelp_data *data; - grub_err_t err; - - data = grub_cbfs_mount (device->disk); - if (!data) - return grub_errno; - - err = grub_archelp_dir (data, &arcops, - path_in, hook, hook_data); - - grub_free (data); - - return err; -} - -static grub_err_t -grub_cbfs_open (grub_file_t file, const char *name_in) -{ - struct grub_archelp_data *data; - grub_err_t err; - - data = grub_cbfs_mount (file->device->disk); - if (!data) - return grub_errno; - - err = grub_archelp_open (data, &arcops, name_in); - if (err) - { - grub_free (data); - } - else - { - file->data = data; - file->size = data->size; - } - return err; -} - -static grub_ssize_t -grub_cbfs_read (grub_file_t file, char *buf, grub_size_t len) -{ - struct grub_archelp_data *data; - grub_ssize_t ret; - - data = file->data; - data->disk->read_hook = file->read_hook; - data->disk->read_hook_data = file->read_hook_data; - - ret = (grub_disk_read (data->disk, 0, data->dofs + file->offset, - len, buf)) ? -1 : (grub_ssize_t) len; - data->disk->read_hook = 0; - - return ret; -} - -static grub_err_t -grub_cbfs_close (grub_file_t file) -{ - struct grub_archelp_data *data; - - data = file->data; - grub_free (data); - - return grub_errno; -} - -#if (defined (__i386__) || defined (__x86_64__)) && !defined (GRUB_UTIL) \ - && !defined (GRUB_MACHINE_EMU) && !defined (GRUB_MACHINE_XEN) - -static char *cbfsdisk_addr; -static grub_off_t cbfsdisk_size = 0; - -static int -grub_cbfsdisk_iterate (grub_disk_dev_iterate_hook_t hook, void *hook_data, - grub_disk_pull_t pull) -{ - if (pull != GRUB_DISK_PULL_NONE) - return 0; - - return hook ("cbfsdisk", hook_data); -} - -static grub_err_t -grub_cbfsdisk_open (const char *name, grub_disk_t disk) -{ - if (grub_strcmp (name, "cbfsdisk")) - return grub_error (GRUB_ERR_UNKNOWN_DEVICE, "not a cbfsdisk"); - - disk->total_sectors = cbfsdisk_size / GRUB_DISK_SECTOR_SIZE; - disk->max_agglomerate = GRUB_DISK_MAX_MAX_AGGLOMERATE; - disk->id = 0; - - return GRUB_ERR_NONE; -} - -static void -grub_cbfsdisk_close (grub_disk_t disk __attribute((unused))) -{ -} - -static grub_err_t -grub_cbfsdisk_read (grub_disk_t disk __attribute((unused)), - grub_disk_addr_t sector, - grub_size_t size, char *buf) -{ - grub_memcpy (buf, cbfsdisk_addr + (sector << GRUB_DISK_SECTOR_BITS), - size << GRUB_DISK_SECTOR_BITS); - return 0; -} - -static grub_err_t -grub_cbfsdisk_write (grub_disk_t disk __attribute__ ((unused)), - grub_disk_addr_t sector __attribute__ ((unused)), - grub_size_t size __attribute__ ((unused)), - const char *buf __attribute__ ((unused))) -{ - return grub_error (GRUB_ERR_NOT_IMPLEMENTED_YET, - "rom flashing isn't implemented yet"); -} - -static struct grub_disk_dev grub_cbfsdisk_dev = - { - .name = "cbfsdisk", - .id = GRUB_DISK_DEVICE_CBFSDISK_ID, - .disk_iterate = grub_cbfsdisk_iterate, - .disk_open = grub_cbfsdisk_open, - .disk_close = grub_cbfsdisk_close, - .disk_read = grub_cbfsdisk_read, - .disk_write = grub_cbfsdisk_write, - .next = 0 - }; - -static void -init_cbfsdisk (void) -{ - grub_uint32_t ptr; - struct cbfs_header *head; - - ptr = *(grub_uint32_t *) 0xfffffffc; - head = (struct cbfs_header *) (grub_addr_t) ptr; - grub_dprintf ("cbfs", "head=%p\n", head); - - /* coreboot current supports only ROMs <= 16 MiB. Bigger ROMs will - have problems as RCBA is 18 MiB below end of 32-bit typically, - so either memory map would have to be rearranged or we'd need to support - reading ROMs through controller directly. - */ - if (ptr < 0xff000000 - || 0xffffffff - ptr < (grub_uint32_t) sizeof (*head) + 0xf - || !validate_head (head)) - return; - - cbfsdisk_size = ALIGN_UP (grub_be_to_cpu32 (head->romsize), - GRUB_DISK_SECTOR_SIZE); - cbfsdisk_addr = (void *) (grub_addr_t) (0x100000000ULL - cbfsdisk_size); - - grub_disk_dev_register (&grub_cbfsdisk_dev); -} - -static void -fini_cbfsdisk (void) -{ - if (! cbfsdisk_size) - return; - grub_disk_dev_unregister (&grub_cbfsdisk_dev); -} - -#endif - -static struct grub_fs grub_cbfs_fs = { - .name = "cbfs", - .fs_dir = grub_cbfs_dir, - .fs_open = grub_cbfs_open, - .fs_read = grub_cbfs_read, - .fs_close = grub_cbfs_close, -#ifdef GRUB_UTIL - .reserved_first_sector = 0, - .blocklist_install = 0, -#endif -}; - -GRUB_MOD_INIT (cbfs) -{ -#if (defined (__i386__) || defined (__x86_64__)) && !defined (GRUB_UTIL) && !defined (GRUB_MACHINE_EMU) && !defined (GRUB_MACHINE_XEN) - init_cbfsdisk (); -#endif - grub_fs_register (&grub_cbfs_fs); -} - -GRUB_MOD_FINI (cbfs) -{ - grub_fs_unregister (&grub_cbfs_fs); -#if (defined (__i386__) || defined (__x86_64__)) && !defined (GRUB_UTIL) && !defined (GRUB_MACHINE_EMU) && !defined (GRUB_MACHINE_XEN) - fini_cbfsdisk (); -#endif -} diff --git a/thirdparty/grub-2.04/grub-core/fs/cpio.c b/thirdparty/grub-2.04/grub-core/fs/cpio.c deleted file mode 100644 index dab5f9898..000000000 --- a/thirdparty/grub-2.04/grub-core/fs/cpio.c +++ /dev/null @@ -1,61 +0,0 @@ -/* cpio.c - cpio and tar filesystem. */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2007,2008,2009,2013 Free Software Foundation, Inc. - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see . - */ - -#include - -/* cpio support */ -#define ALIGN_CPIO(x) (ALIGN_UP ((x), 2)) -#define MAGIC "\xc7\x71" -struct head -{ - grub_uint16_t magic[1]; - grub_uint16_t dev; - grub_uint16_t ino; - grub_uint16_t mode[1]; - grub_uint16_t uid; - grub_uint16_t gid; - grub_uint16_t nlink; - grub_uint16_t rdev; - grub_uint16_t mtime[2]; - grub_uint16_t namesize[1]; - grub_uint16_t filesize[2]; -} GRUB_PACKED; - -static inline unsigned long long -read_number (const grub_uint16_t *arr, grub_size_t size) -{ - long long ret = 0; - while (size--) - ret = (ret << 16) | grub_le_to_cpu16 (*arr++); - return ret; -} - -#define FSNAME "cpiofs" - -#include "cpio_common.c" - -GRUB_MOD_INIT (cpio) -{ - grub_fs_register (&grub_cpio_fs); -} - -GRUB_MOD_FINI (cpio) -{ - grub_fs_unregister (&grub_cpio_fs); -} diff --git a/thirdparty/grub-2.04/grub-core/fs/cpio_be.c b/thirdparty/grub-2.04/grub-core/fs/cpio_be.c deleted file mode 100644 index 846548892..000000000 --- a/thirdparty/grub-2.04/grub-core/fs/cpio_be.c +++ /dev/null @@ -1,61 +0,0 @@ -/* cpio.c - cpio and tar filesystem. */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2007,2008,2009,2013 Free Software Foundation, Inc. - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see . - */ - -#include - -#define ALIGN_CPIO(x) (ALIGN_UP ((x), 2)) -#define MAGIC "\x71\xc7" - -struct head -{ - grub_uint16_t magic[1]; - grub_uint16_t dev; - grub_uint16_t ino; - grub_uint16_t mode[1]; - grub_uint16_t uid; - grub_uint16_t gid; - grub_uint16_t nlink; - grub_uint16_t rdev; - grub_uint16_t mtime[2]; - grub_uint16_t namesize[1]; - grub_uint16_t filesize[2]; -} GRUB_PACKED; - -static inline unsigned long long -read_number (const grub_uint16_t *arr, grub_size_t size) -{ - long long ret = 0; - while (size--) - ret = (ret << 16) | grub_be_to_cpu16 (*arr++); - return ret; -} - -#define FSNAME "cpiofs_be" - -#include "cpio_common.c" - -GRUB_MOD_INIT (cpio_be) -{ - grub_fs_register (&grub_cpio_fs); -} - -GRUB_MOD_FINI (cpio_be) -{ - grub_fs_unregister (&grub_cpio_fs); -} diff --git a/thirdparty/grub-2.04/grub-core/fs/cpio_common.c b/thirdparty/grub-2.04/grub-core/fs/cpio_common.c deleted file mode 100644 index 4e885d623..000000000 --- a/thirdparty/grub-2.04/grub-core/fs/cpio_common.c +++ /dev/null @@ -1,253 +0,0 @@ -/* cpio.c - cpio and tar filesystem. */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2007,2008,2009,2013 Free Software Foundation, Inc. - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -struct grub_archelp_data -{ - grub_disk_t disk; - grub_off_t hofs; - grub_off_t next_hofs; - grub_off_t dofs; - grub_off_t size; -}; - -#if __GNUC__ >= 9 -#pragma GCC diagnostic push -#pragma GCC diagnostic ignored "-Waddress-of-packed-member" -#endif - -static grub_err_t -grub_cpio_find_file (struct grub_archelp_data *data, char **name, - grub_int32_t *mtime, grub_uint32_t *mode) -{ - struct head hd; - grub_size_t namesize; - grub_uint32_t modeval; - - data->hofs = data->next_hofs; - - if (grub_disk_read (data->disk, 0, data->hofs, sizeof (hd), &hd)) - return grub_errno; - - if (grub_memcmp (hd.magic, MAGIC, sizeof (hd.magic)) != 0 -#ifdef MAGIC2 - && grub_memcmp (hd.magic, MAGIC2, sizeof (hd.magic)) != 0 -#endif - ) - return grub_error (GRUB_ERR_BAD_FS, "invalid cpio archive"); - data->size = read_number (hd.filesize, ARRAY_SIZE (hd.filesize)); - if (mtime) - *mtime = read_number (hd.mtime, ARRAY_SIZE (hd.mtime)); - modeval = read_number (hd.mode, ARRAY_SIZE (hd.mode)); - namesize = read_number (hd.namesize, ARRAY_SIZE (hd.namesize)); - - /* Don't allow negative numbers. */ - if (namesize >= 0x80000000) - { - /* Probably a corruption, don't attempt to recover. */ - *mode = GRUB_ARCHELP_ATTR_END; - return GRUB_ERR_NONE; - } - - *mode = modeval; - - *name = grub_malloc (namesize + 1); - if (*name == NULL) - return grub_errno; - - if (grub_disk_read (data->disk, 0, data->hofs + sizeof (hd), - namesize, *name)) - { - grub_free (*name); - return grub_errno; - } - (*name)[namesize] = 0; - - if (data->size == 0 && modeval == 0 && namesize == 11 - && grub_memcmp(*name, "TRAILER!!!", 11) == 0) - { - *mode = GRUB_ARCHELP_ATTR_END; - grub_free (*name); - return GRUB_ERR_NONE; - } - - data->dofs = data->hofs + ALIGN_CPIO (sizeof (hd) + namesize); - data->next_hofs = data->dofs + ALIGN_CPIO (data->size); - return GRUB_ERR_NONE; -} - -#if __GNUC__ >= 9 -#pragma GCC diagnostic pop -#endif - -static char * -grub_cpio_get_link_target (struct grub_archelp_data *data) -{ - char *ret; - grub_err_t err; - - if (data->size == 0) - return grub_strdup (""); - ret = grub_malloc (data->size + 1); - if (!ret) - return NULL; - - err = grub_disk_read (data->disk, 0, data->dofs, data->size, - ret); - if (err) - { - grub_free (ret); - return NULL; - } - ret[data->size] = '\0'; - return ret; -} - -static void -grub_cpio_rewind (struct grub_archelp_data *data) -{ - data->next_hofs = 0; -} - -static struct grub_archelp_ops arcops = - { - .find_file = grub_cpio_find_file, - .get_link_target = grub_cpio_get_link_target, - .rewind = grub_cpio_rewind - }; - -static struct grub_archelp_data * -grub_cpio_mount (grub_disk_t disk) -{ - struct head hd; - struct grub_archelp_data *data; - - if (grub_disk_read (disk, 0, 0, sizeof (hd), &hd)) - goto fail; - - if (grub_memcmp (hd.magic, MAGIC, sizeof (MAGIC) - 1) -#ifdef MAGIC2 - && grub_memcmp (hd.magic, MAGIC2, sizeof (MAGIC2) - 1) -#endif - ) - goto fail; - - data = (struct grub_archelp_data *) grub_zalloc (sizeof (*data)); - if (!data) - goto fail; - - data->disk = disk; - - return data; - -fail: - grub_error (GRUB_ERR_BAD_FS, "not a " FSNAME " filesystem"); - return 0; -} - -static grub_err_t -grub_cpio_dir (grub_device_t device, const char *path_in, - grub_fs_dir_hook_t hook, void *hook_data) -{ - struct grub_archelp_data *data; - grub_err_t err; - - data = grub_cpio_mount (device->disk); - if (!data) - return grub_errno; - - err = grub_archelp_dir (data, &arcops, - path_in, hook, hook_data); - - grub_free (data); - - return err; -} - -static grub_err_t -grub_cpio_open (grub_file_t file, const char *name_in) -{ - struct grub_archelp_data *data; - grub_err_t err; - - data = grub_cpio_mount (file->device->disk); - if (!data) - return grub_errno; - - err = grub_archelp_open (data, &arcops, name_in); - if (err) - { - grub_free (data); - } - else - { - file->data = data; - file->size = data->size; - } - return err; -} - -static grub_ssize_t -grub_cpio_read (grub_file_t file, char *buf, grub_size_t len) -{ - struct grub_archelp_data *data; - grub_ssize_t ret; - - data = file->data; - data->disk->read_hook = file->read_hook; - data->disk->read_hook_data = file->read_hook_data; - - ret = (grub_disk_read (data->disk, 0, data->dofs + file->offset, - len, buf)) ? -1 : (grub_ssize_t) len; - data->disk->read_hook = 0; - - return ret; -} - -static grub_err_t -grub_cpio_close (grub_file_t file) -{ - struct grub_archelp_data *data; - - data = file->data; - grub_free (data); - - return grub_errno; -} - -static struct grub_fs grub_cpio_fs = { - .name = FSNAME, - .fs_dir = grub_cpio_dir, - .fs_open = grub_cpio_open, - .fs_read = grub_cpio_read, - .fs_close = grub_cpio_close, -#ifdef GRUB_UTIL - .reserved_first_sector = 0, - .blocklist_install = 0, -#endif -}; diff --git a/thirdparty/grub-2.04/grub-core/fs/exfat.c b/thirdparty/grub-2.04/grub-core/fs/exfat.c deleted file mode 100644 index fe149ddd3..000000000 --- a/thirdparty/grub-2.04/grub-core/fs/exfat.c +++ /dev/null @@ -1,2 +0,0 @@ -#define MODE_EXFAT 1 -#include "fat.c" diff --git a/thirdparty/grub-2.04/grub-core/fs/ext2.c b/thirdparty/grub-2.04/grub-core/fs/ext2.c deleted file mode 100644 index 9b389802a..000000000 --- a/thirdparty/grub-2.04/grub-core/fs/ext2.c +++ /dev/null @@ -1,1098 +0,0 @@ -/* ext2.c - Second Extended filesystem */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2003,2004,2005,2007,2008,2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -/* Magic value used to identify an ext2 filesystem. */ -#define EXT2_MAGIC 0xEF53 -/* Amount of indirect blocks in an inode. */ -#define INDIRECT_BLOCKS 12 - -/* The good old revision and the default inode size. */ -#define EXT2_GOOD_OLD_REVISION 0 -#define EXT2_GOOD_OLD_INODE_SIZE 128 - -/* Filetype used in directory entry. */ -#define FILETYPE_UNKNOWN 0 -#define FILETYPE_REG 1 -#define FILETYPE_DIRECTORY 2 -#define FILETYPE_SYMLINK 7 - -/* Filetype information as used in inodes. */ -#define FILETYPE_INO_MASK 0170000 -#define FILETYPE_INO_REG 0100000 -#define FILETYPE_INO_DIRECTORY 0040000 -#define FILETYPE_INO_SYMLINK 0120000 - -#include -#include -#include -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -/* Log2 size of ext2 block in 512 blocks. */ -#define LOG2_EXT2_BLOCK_SIZE(data) \ - (grub_le_to_cpu32 (data->sblock.log2_block_size) + 1) - -/* Log2 size of ext2 block in bytes. */ -#define LOG2_BLOCK_SIZE(data) \ - (grub_le_to_cpu32 (data->sblock.log2_block_size) + 10) - -/* The size of an ext2 block in bytes. */ -#define EXT2_BLOCK_SIZE(data) (1U << LOG2_BLOCK_SIZE (data)) - -/* The revision level. */ -#define EXT2_REVISION(data) grub_le_to_cpu32 (data->sblock.revision_level) - -/* The inode size. */ -#define EXT2_INODE_SIZE(data) \ - (data->sblock.revision_level \ - == grub_cpu_to_le32_compile_time (EXT2_GOOD_OLD_REVISION) \ - ? EXT2_GOOD_OLD_INODE_SIZE \ - : grub_le_to_cpu16 (data->sblock.inode_size)) - -/* Superblock filesystem feature flags (RW compatible) - * A filesystem with any of these enabled can be read and written by a driver - * that does not understand them without causing metadata/data corruption. */ -#define EXT2_FEATURE_COMPAT_DIR_PREALLOC 0x0001 -#define EXT2_FEATURE_COMPAT_IMAGIC_INODES 0x0002 -#define EXT3_FEATURE_COMPAT_HAS_JOURNAL 0x0004 -#define EXT2_FEATURE_COMPAT_EXT_ATTR 0x0008 -#define EXT2_FEATURE_COMPAT_RESIZE_INODE 0x0010 -#define EXT2_FEATURE_COMPAT_DIR_INDEX 0x0020 -/* Superblock filesystem feature flags (RO compatible) - * A filesystem with any of these enabled can be safely read by a driver that - * does not understand them, but should not be written to, usually because - * additional metadata is required. */ -#define EXT2_FEATURE_RO_COMPAT_SPARSE_SUPER 0x0001 -#define EXT2_FEATURE_RO_COMPAT_LARGE_FILE 0x0002 -#define EXT2_FEATURE_RO_COMPAT_BTREE_DIR 0x0004 -#define EXT4_FEATURE_RO_COMPAT_GDT_CSUM 0x0010 -#define EXT4_FEATURE_RO_COMPAT_DIR_NLINK 0x0020 -#define EXT4_FEATURE_RO_COMPAT_EXTRA_ISIZE 0x0040 -/* Superblock filesystem feature flags (back-incompatible) - * A filesystem with any of these enabled should not be attempted to be read - * by a driver that does not understand them, since they usually indicate - * metadata format changes that might confuse the reader. */ -#define EXT2_FEATURE_INCOMPAT_COMPRESSION 0x0001 -#define EXT2_FEATURE_INCOMPAT_FILETYPE 0x0002 -#define EXT3_FEATURE_INCOMPAT_RECOVER 0x0004 /* Needs recovery */ -#define EXT3_FEATURE_INCOMPAT_JOURNAL_DEV 0x0008 /* Volume is journal device */ -#define EXT2_FEATURE_INCOMPAT_META_BG 0x0010 -#define EXT4_FEATURE_INCOMPAT_EXTENTS 0x0040 /* Extents used */ -#define EXT4_FEATURE_INCOMPAT_64BIT 0x0080 -#define EXT4_FEATURE_INCOMPAT_MMP 0x0100 -#define EXT4_FEATURE_INCOMPAT_FLEX_BG 0x0200 -#define EXT4_FEATURE_INCOMPAT_ENCRYPT 0x10000 - -/* The set of back-incompatible features this driver DOES support. Add (OR) - * flags here as the related features are implemented into the driver. */ -#define EXT2_DRIVER_SUPPORTED_INCOMPAT ( EXT2_FEATURE_INCOMPAT_FILETYPE \ - | EXT4_FEATURE_INCOMPAT_EXTENTS \ - | EXT4_FEATURE_INCOMPAT_FLEX_BG \ - | EXT2_FEATURE_INCOMPAT_META_BG \ - | EXT4_FEATURE_INCOMPAT_64BIT \ - | EXT4_FEATURE_INCOMPAT_ENCRYPT) -/* List of rationales for the ignored "incompatible" features: - * needs_recovery: Not really back-incompatible - was added as such to forbid - * ext2 drivers from mounting an ext3 volume with a dirty - * journal because they will ignore the journal, but the next - * ext3 driver to mount the volume will find the journal and - * replay it, potentially corrupting the metadata written by - * the ext2 drivers. Safe to ignore for this RO driver. - * mmp: Not really back-incompatible - was added as such to - * avoid multiple read-write mounts. Safe to ignore for this - * RO driver. - */ -#define EXT2_DRIVER_IGNORED_INCOMPAT ( EXT3_FEATURE_INCOMPAT_RECOVER \ - | EXT4_FEATURE_INCOMPAT_MMP) - - -#define EXT3_JOURNAL_MAGIC_NUMBER 0xc03b3998U - -#define EXT3_JOURNAL_DESCRIPTOR_BLOCK 1 -#define EXT3_JOURNAL_COMMIT_BLOCK 2 -#define EXT3_JOURNAL_SUPERBLOCK_V1 3 -#define EXT3_JOURNAL_SUPERBLOCK_V2 4 -#define EXT3_JOURNAL_REVOKE_BLOCK 5 - -#define EXT3_JOURNAL_FLAG_ESCAPE 1 -#define EXT3_JOURNAL_FLAG_SAME_UUID 2 -#define EXT3_JOURNAL_FLAG_DELETED 4 -#define EXT3_JOURNAL_FLAG_LAST_TAG 8 - -#define EXT4_ENCRYPT_FLAG 0x800 -#define EXT4_EXTENTS_FLAG 0x80000 - -/* The ext2 superblock. */ -struct grub_ext2_sblock -{ - grub_uint32_t total_inodes; - grub_uint32_t total_blocks; - grub_uint32_t reserved_blocks; - grub_uint32_t free_blocks; - grub_uint32_t free_inodes; - grub_uint32_t first_data_block; - grub_uint32_t log2_block_size; - grub_uint32_t log2_fragment_size; - grub_uint32_t blocks_per_group; - grub_uint32_t fragments_per_group; - grub_uint32_t inodes_per_group; - grub_uint32_t mtime; - grub_uint32_t utime; - grub_uint16_t mnt_count; - grub_uint16_t max_mnt_count; - grub_uint16_t magic; - grub_uint16_t fs_state; - grub_uint16_t error_handling; - grub_uint16_t minor_revision_level; - grub_uint32_t lastcheck; - grub_uint32_t checkinterval; - grub_uint32_t creator_os; - grub_uint32_t revision_level; - grub_uint16_t uid_reserved; - grub_uint16_t gid_reserved; - grub_uint32_t first_inode; - grub_uint16_t inode_size; - grub_uint16_t block_group_number; - grub_uint32_t feature_compatibility; - grub_uint32_t feature_incompat; - grub_uint32_t feature_ro_compat; - grub_uint16_t uuid[8]; - char volume_name[16]; - char last_mounted_on[64]; - grub_uint32_t compression_info; - grub_uint8_t prealloc_blocks; - grub_uint8_t prealloc_dir_blocks; - grub_uint16_t reserved_gdt_blocks; - grub_uint8_t journal_uuid[16]; - grub_uint32_t journal_inum; - grub_uint32_t journal_dev; - grub_uint32_t last_orphan; - grub_uint32_t hash_seed[4]; - grub_uint8_t def_hash_version; - grub_uint8_t jnl_backup_type; - grub_uint16_t group_desc_size; - grub_uint32_t default_mount_opts; - grub_uint32_t first_meta_bg; - grub_uint32_t mkfs_time; - grub_uint32_t jnl_blocks[17]; -}; - -/* The ext2 blockgroup. */ -struct grub_ext2_block_group -{ - grub_uint32_t block_id; - grub_uint32_t inode_id; - grub_uint32_t inode_table_id; - grub_uint16_t free_blocks; - grub_uint16_t free_inodes; - grub_uint16_t used_dirs; - grub_uint16_t pad; - grub_uint32_t reserved[3]; - grub_uint32_t block_id_hi; - grub_uint32_t inode_id_hi; - grub_uint32_t inode_table_id_hi; - grub_uint16_t free_blocks_hi; - grub_uint16_t free_inodes_hi; - grub_uint16_t used_dirs_hi; - grub_uint16_t pad2; - grub_uint32_t reserved2[3]; -}; - -/* The ext2 inode. */ -struct grub_ext2_inode -{ - grub_uint16_t mode; - grub_uint16_t uid; - grub_uint32_t size; - grub_uint32_t atime; - grub_uint32_t ctime; - grub_uint32_t mtime; - grub_uint32_t dtime; - grub_uint16_t gid; - grub_uint16_t nlinks; - grub_uint32_t blockcnt; /* Blocks of 512 bytes!! */ - grub_uint32_t flags; - grub_uint32_t osd1; - union - { - struct datablocks - { - grub_uint32_t dir_blocks[INDIRECT_BLOCKS]; - grub_uint32_t indir_block; - grub_uint32_t double_indir_block; - grub_uint32_t triple_indir_block; - } blocks; - char symlink[60]; - }; - grub_uint32_t version; - grub_uint32_t acl; - grub_uint32_t size_high; - grub_uint32_t fragment_addr; - grub_uint32_t osd2[3]; -}; - -/* The header of an ext2 directory entry. */ -struct ext2_dirent -{ - grub_uint32_t inode; - grub_uint16_t direntlen; -#define MAX_NAMELEN 255 - grub_uint8_t namelen; - grub_uint8_t filetype; -}; - -struct grub_ext3_journal_header -{ - grub_uint32_t magic; - grub_uint32_t block_type; - grub_uint32_t sequence; -}; - -struct grub_ext3_journal_revoke_header -{ - struct grub_ext3_journal_header header; - grub_uint32_t count; - grub_uint32_t data[0]; -}; - -struct grub_ext3_journal_block_tag -{ - grub_uint32_t block; - grub_uint32_t flags; -}; - -struct grub_ext3_journal_sblock -{ - struct grub_ext3_journal_header header; - grub_uint32_t block_size; - grub_uint32_t maxlen; - grub_uint32_t first; - grub_uint32_t sequence; - grub_uint32_t start; -}; - -#define EXT4_EXT_MAGIC 0xf30a - -struct grub_ext4_extent_header -{ - grub_uint16_t magic; - grub_uint16_t entries; - grub_uint16_t max; - grub_uint16_t depth; - grub_uint32_t generation; -}; - -struct grub_ext4_extent -{ - grub_uint32_t block; - grub_uint16_t len; - grub_uint16_t start_hi; - grub_uint32_t start; -}; - -struct grub_ext4_extent_idx -{ - grub_uint32_t block; - grub_uint32_t leaf; - grub_uint16_t leaf_hi; - grub_uint16_t unused; -}; - -struct grub_fshelp_node -{ - struct grub_ext2_data *data; - struct grub_ext2_inode inode; - int ino; - int inode_read; -}; - -/* Information about a "mounted" ext2 filesystem. */ -struct grub_ext2_data -{ - struct grub_ext2_sblock sblock; - int log_group_desc_size; - grub_disk_t disk; - struct grub_ext2_inode *inode; - struct grub_fshelp_node diropen; -}; - -static grub_dl_t my_mod; - - - -/* Check is a = b^x for some x. */ -static inline int -is_power_of (grub_uint64_t a, grub_uint32_t b) -{ - grub_uint64_t c; - /* Prevent overflow assuming b < 8. */ - if (a >= (1LL << 60)) - return 0; - for (c = 1; c <= a; c *= b); - return (c == a); -} - - -static inline int -group_has_super_block (struct grub_ext2_data *data, grub_uint64_t group) -{ - if (!(data->sblock.feature_ro_compat - & grub_cpu_to_le32_compile_time(EXT2_FEATURE_RO_COMPAT_SPARSE_SUPER))) - return 1; - /* Algorithm looked up in Linux source. */ - if (group <= 1) - return 1; - /* Even number is never a power of odd number. */ - if (!(group & 1)) - return 0; - return (is_power_of(group, 7) || is_power_of(group, 5) || - is_power_of(group, 3)); -} - -/* Read into BLKGRP the blockgroup descriptor of blockgroup GROUP of - the mounted filesystem DATA. */ -inline static grub_err_t -grub_ext2_blockgroup (struct grub_ext2_data *data, grub_uint64_t group, - struct grub_ext2_block_group *blkgrp) -{ - grub_uint64_t full_offset = (group << data->log_group_desc_size); - grub_uint64_t block, offset; - block = (full_offset >> LOG2_BLOCK_SIZE (data)); - offset = (full_offset & ((1 << LOG2_BLOCK_SIZE (data)) - 1)); - if ((data->sblock.feature_incompat - & grub_cpu_to_le32_compile_time (EXT2_FEATURE_INCOMPAT_META_BG)) - && block >= grub_le_to_cpu32(data->sblock.first_meta_bg)) - { - grub_uint64_t first_block_group; - /* Find the first block group for which a descriptor - is stored in given block. */ - first_block_group = (block << (LOG2_BLOCK_SIZE (data) - - data->log_group_desc_size)); - - block = (first_block_group - * grub_le_to_cpu32(data->sblock.blocks_per_group)); - - if (group_has_super_block (data, first_block_group)) - block++; - } - else - /* Superblock. */ - block++; - return grub_disk_read (data->disk, - ((grub_le_to_cpu32 (data->sblock.first_data_block) - + block) - << LOG2_EXT2_BLOCK_SIZE (data)), offset, - sizeof (struct grub_ext2_block_group), blkgrp); -} - -static struct grub_ext4_extent_header * -grub_ext4_find_leaf (struct grub_ext2_data *data, - struct grub_ext4_extent_header *ext_block, - grub_uint32_t fileblock) -{ - struct grub_ext4_extent_idx *index; - void *buf = NULL; - - while (1) - { - int i; - grub_disk_addr_t block; - - index = (struct grub_ext4_extent_idx *) (ext_block + 1); - - if (ext_block->magic != grub_cpu_to_le16_compile_time (EXT4_EXT_MAGIC)) - goto fail; - - if (ext_block->depth == 0) - return ext_block; - - for (i = 0; i < grub_le_to_cpu16 (ext_block->entries); i++) - { - if (fileblock < grub_le_to_cpu32(index[i].block)) - break; - } - - if (--i < 0) - goto fail; - - block = grub_le_to_cpu16 (index[i].leaf_hi); - block = (block << 32) | grub_le_to_cpu32 (index[i].leaf); - if (!buf) - buf = grub_malloc (EXT2_BLOCK_SIZE(data)); - if (!buf) - goto fail; - if (grub_disk_read (data->disk, - block << LOG2_EXT2_BLOCK_SIZE (data), - 0, EXT2_BLOCK_SIZE(data), buf)) - goto fail; - - ext_block = buf; - } - fail: - grub_free (buf); - return 0; -} - -static grub_disk_addr_t -grub_ext2_read_block (grub_fshelp_node_t node, grub_disk_addr_t fileblock) -{ - struct grub_ext2_data *data = node->data; - struct grub_ext2_inode *inode = &node->inode; - unsigned int blksz = EXT2_BLOCK_SIZE (data); - grub_disk_addr_t blksz_quarter = blksz / 4; - int log2_blksz = LOG2_EXT2_BLOCK_SIZE (data); - int log_perblock = log2_blksz + 9 - 2; - grub_uint32_t indir; - int shift; - - if (inode->flags & grub_cpu_to_le32_compile_time (EXT4_EXTENTS_FLAG)) - { - struct grub_ext4_extent_header *leaf; - struct grub_ext4_extent *ext; - int i; - grub_disk_addr_t ret; - - leaf = grub_ext4_find_leaf (data, (struct grub_ext4_extent_header *) inode->blocks.dir_blocks, fileblock); - if (! leaf) - { - grub_error (GRUB_ERR_BAD_FS, "invalid extent"); - return -1; - } - - ext = (struct grub_ext4_extent *) (leaf + 1); - for (i = 0; i < grub_le_to_cpu16 (leaf->entries); i++) - { - if (fileblock < grub_le_to_cpu32 (ext[i].block)) - break; - } - - if (--i >= 0) - { - fileblock -= grub_le_to_cpu32 (ext[i].block); - if (fileblock >= grub_le_to_cpu16 (ext[i].len)) - ret = 0; - else - { - grub_disk_addr_t start; - - start = grub_le_to_cpu16 (ext[i].start_hi); - start = (start << 32) + grub_le_to_cpu32 (ext[i].start); - - ret = fileblock + start; - } - } - else - { - grub_error (GRUB_ERR_BAD_FS, "something wrong with extent"); - ret = -1; - } - - if (leaf != (struct grub_ext4_extent_header *) inode->blocks.dir_blocks) - grub_free (leaf); - - return ret; - } - - /* Direct blocks. */ - if (fileblock < INDIRECT_BLOCKS) - return grub_le_to_cpu32 (inode->blocks.dir_blocks[fileblock]); - fileblock -= INDIRECT_BLOCKS; - /* Indirect. */ - if (fileblock < blksz_quarter) - { - indir = inode->blocks.indir_block; - shift = 0; - goto indirect; - } - fileblock -= blksz_quarter; - /* Double indirect. */ - if (fileblock < blksz_quarter * blksz_quarter) - { - indir = inode->blocks.double_indir_block; - shift = 1; - goto indirect; - } - fileblock -= blksz_quarter * blksz_quarter; - /* Triple indirect. */ - if (fileblock < blksz_quarter * blksz_quarter * (blksz_quarter + 1)) - { - indir = inode->blocks.triple_indir_block; - shift = 2; - goto indirect; - } - grub_error (GRUB_ERR_BAD_FS, - "ext2fs doesn't support quadruple indirect blocks"); - return -1; - -indirect: - do { - /* If the indirect block is zero, all child blocks are absent - (i.e. filled with zeros.) */ - if (indir == 0) - return 0; - if (grub_disk_read (data->disk, - ((grub_disk_addr_t) grub_le_to_cpu32 (indir)) - << log2_blksz, - ((fileblock >> (log_perblock * shift)) - & ((1 << log_perblock) - 1)) - * sizeof (indir), - sizeof (indir), &indir)) - return -1; - } while (shift--); - - return grub_le_to_cpu32 (indir); -} - -/* Read LEN bytes from the file described by DATA starting with byte - POS. Return the amount of read bytes in READ. */ -static grub_ssize_t -grub_ext2_read_file (grub_fshelp_node_t node, - grub_disk_read_hook_t read_hook, void *read_hook_data, - grub_off_t pos, grub_size_t len, char *buf) -{ - return grub_fshelp_read_file (node->data->disk, node, - read_hook, read_hook_data, - pos, len, buf, grub_ext2_read_block, - grub_cpu_to_le32 (node->inode.size) - | (((grub_off_t) grub_cpu_to_le32 (node->inode.size_high)) << 32), - LOG2_EXT2_BLOCK_SIZE (node->data), 0); - -} - - -/* Read the inode INO for the file described by DATA into INODE. */ -static grub_err_t -grub_ext2_read_inode (struct grub_ext2_data *data, - int ino, struct grub_ext2_inode *inode) -{ - struct grub_ext2_block_group blkgrp; - struct grub_ext2_sblock *sblock = &data->sblock; - int inodes_per_block; - unsigned int blkno; - unsigned int blkoff; - grub_disk_addr_t base; - - /* It is easier to calculate if the first inode is 0. */ - ino--; - - grub_ext2_blockgroup (data, - ino / grub_le_to_cpu32 (sblock->inodes_per_group), - &blkgrp); - if (grub_errno) - return grub_errno; - - inodes_per_block = EXT2_BLOCK_SIZE (data) / EXT2_INODE_SIZE (data); - blkno = (ino % grub_le_to_cpu32 (sblock->inodes_per_group)) - / inodes_per_block; - blkoff = (ino % grub_le_to_cpu32 (sblock->inodes_per_group)) - % inodes_per_block; - - base = grub_le_to_cpu32 (blkgrp.inode_table_id); - if (data->log_group_desc_size >= 6) - base |= (((grub_disk_addr_t) grub_le_to_cpu32 (blkgrp.inode_table_id_hi)) - << 32); - - /* Read the inode. */ - if (grub_disk_read (data->disk, - ((base + blkno) << LOG2_EXT2_BLOCK_SIZE (data)), - EXT2_INODE_SIZE (data) * blkoff, - sizeof (struct grub_ext2_inode), inode)) - return grub_errno; - - return 0; -} - -static struct grub_ext2_data * -grub_ext2_mount (grub_disk_t disk) -{ - struct grub_ext2_data *data; - - data = grub_malloc (sizeof (struct grub_ext2_data)); - if (!data) - return 0; - - /* Read the superblock. */ - grub_disk_read (disk, 1 * 2, 0, sizeof (struct grub_ext2_sblock), - &data->sblock); - if (grub_errno) - goto fail; - - /* Make sure this is an ext2 filesystem. */ - if (data->sblock.magic != grub_cpu_to_le16_compile_time (EXT2_MAGIC) - || grub_le_to_cpu32 (data->sblock.log2_block_size) >= 16 - || data->sblock.inodes_per_group == 0 - /* 20 already means 1GiB blocks. We don't want to deal with blocks overflowing int32. */ - || grub_le_to_cpu32 (data->sblock.log2_block_size) > 20 - || EXT2_INODE_SIZE (data) == 0 - || EXT2_BLOCK_SIZE (data) / EXT2_INODE_SIZE (data) == 0) - { - grub_error (GRUB_ERR_BAD_FS, "not an ext2 filesystem"); - goto fail; - } - - /* Check the FS doesn't have feature bits enabled that we don't support. */ - if (data->sblock.revision_level != grub_cpu_to_le32_compile_time (EXT2_GOOD_OLD_REVISION) - && (data->sblock.feature_incompat - & grub_cpu_to_le32_compile_time (~(EXT2_DRIVER_SUPPORTED_INCOMPAT - | EXT2_DRIVER_IGNORED_INCOMPAT)))) - { - grub_error (GRUB_ERR_BAD_FS, "filesystem has unsupported incompatible features"); - goto fail; - } - - if (data->sblock.revision_level != grub_cpu_to_le32_compile_time (EXT2_GOOD_OLD_REVISION) - && (data->sblock.feature_incompat - & grub_cpu_to_le32_compile_time (EXT4_FEATURE_INCOMPAT_64BIT)) - && data->sblock.group_desc_size != 0 - && ((data->sblock.group_desc_size & (data->sblock.group_desc_size - 1)) - == 0) - && (data->sblock.group_desc_size & grub_cpu_to_le16_compile_time (0x1fe0))) - { - grub_uint16_t b = grub_le_to_cpu16 (data->sblock.group_desc_size); - for (data->log_group_desc_size = 0; b != (1 << data->log_group_desc_size); - data->log_group_desc_size++); - } - else - data->log_group_desc_size = 5; - - data->disk = disk; - - data->diropen.data = data; - data->diropen.ino = 2; - data->diropen.inode_read = 1; - - data->inode = &data->diropen.inode; - - grub_ext2_read_inode (data, 2, data->inode); - if (grub_errno) - goto fail; - - return data; - - fail: - if (grub_errno == GRUB_ERR_OUT_OF_RANGE) - grub_error (GRUB_ERR_BAD_FS, "not an ext2 filesystem"); - - grub_free (data); - return 0; -} - -static char * -grub_ext2_read_symlink (grub_fshelp_node_t node) -{ - char *symlink; - struct grub_fshelp_node *diro = node; - - if (! diro->inode_read) - { - grub_ext2_read_inode (diro->data, diro->ino, &diro->inode); - if (grub_errno) - return 0; - - if (diro->inode.flags & grub_cpu_to_le32_compile_time (EXT4_ENCRYPT_FLAG)) - { - grub_error (GRUB_ERR_NOT_IMPLEMENTED_YET, "symlink is encrypted"); - return 0; - } - } - - symlink = grub_malloc (grub_le_to_cpu32 (diro->inode.size) + 1); - if (! symlink) - return 0; - - /* If the filesize of the symlink is bigger than - 60 the symlink is stored in a separate block, - otherwise it is stored in the inode. */ - if (grub_le_to_cpu32 (diro->inode.size) <= sizeof (diro->inode.symlink)) - grub_memcpy (symlink, - diro->inode.symlink, - grub_le_to_cpu32 (diro->inode.size)); - else - { - grub_ext2_read_file (diro, 0, 0, 0, - grub_le_to_cpu32 (diro->inode.size), - symlink); - if (grub_errno) - { - grub_free (symlink); - return 0; - } - } - - symlink[grub_le_to_cpu32 (diro->inode.size)] = '\0'; - return symlink; -} - -static int -grub_ext2_iterate_dir (grub_fshelp_node_t dir, - grub_fshelp_iterate_dir_hook_t hook, void *hook_data) -{ - unsigned int fpos = 0; - struct grub_fshelp_node *diro = (struct grub_fshelp_node *) dir; - - if (! diro->inode_read) - { - grub_ext2_read_inode (diro->data, diro->ino, &diro->inode); - if (grub_errno) - return 0; - } - - if (diro->inode.flags & grub_cpu_to_le32_compile_time (EXT4_ENCRYPT_FLAG)) - { - grub_error (GRUB_ERR_NOT_IMPLEMENTED_YET, "directory is encrypted"); - return 0; - } - - /* Search the file. */ - while (fpos < grub_le_to_cpu32 (diro->inode.size)) - { - struct ext2_dirent dirent; - - grub_ext2_read_file (diro, 0, 0, fpos, sizeof (struct ext2_dirent), - (char *) &dirent); - if (grub_errno) - return 0; - - if (dirent.direntlen == 0) - return 0; - - if (dirent.inode != 0 && dirent.namelen != 0) - { - char filename[MAX_NAMELEN + 1]; - struct grub_fshelp_node *fdiro; - enum grub_fshelp_filetype type = GRUB_FSHELP_UNKNOWN; - - grub_ext2_read_file (diro, 0, 0, fpos + sizeof (struct ext2_dirent), - dirent.namelen, filename); - if (grub_errno) - return 0; - - fdiro = grub_malloc (sizeof (struct grub_fshelp_node)); - if (! fdiro) - return 0; - - fdiro->data = diro->data; - fdiro->ino = grub_le_to_cpu32 (dirent.inode); - - filename[dirent.namelen] = '\0'; - - if (dirent.filetype != FILETYPE_UNKNOWN) - { - fdiro->inode_read = 0; - - if (dirent.filetype == FILETYPE_DIRECTORY) - type = GRUB_FSHELP_DIR; - else if (dirent.filetype == FILETYPE_SYMLINK) - type = GRUB_FSHELP_SYMLINK; - else if (dirent.filetype == FILETYPE_REG) - type = GRUB_FSHELP_REG; - } - else - { - /* The filetype can not be read from the dirent, read - the inode to get more information. */ - grub_ext2_read_inode (diro->data, - grub_le_to_cpu32 (dirent.inode), - &fdiro->inode); - if (grub_errno) - { - grub_free (fdiro); - return 0; - } - - fdiro->inode_read = 1; - - if ((grub_le_to_cpu16 (fdiro->inode.mode) - & FILETYPE_INO_MASK) == FILETYPE_INO_DIRECTORY) - type = GRUB_FSHELP_DIR; - else if ((grub_le_to_cpu16 (fdiro->inode.mode) - & FILETYPE_INO_MASK) == FILETYPE_INO_SYMLINK) - type = GRUB_FSHELP_SYMLINK; - else if ((grub_le_to_cpu16 (fdiro->inode.mode) - & FILETYPE_INO_MASK) == FILETYPE_INO_REG) - type = GRUB_FSHELP_REG; - } - - if (hook (filename, type, fdiro, hook_data)) - return 1; - } - - fpos += grub_le_to_cpu16 (dirent.direntlen); - } - - return 0; -} - -/* Open a file named NAME and initialize FILE. */ -static grub_err_t -grub_ext2_open (struct grub_file *file, const char *name) -{ - struct grub_ext2_data *data; - struct grub_fshelp_node *fdiro = 0; - grub_err_t err; - - grub_dl_ref (my_mod); - - data = grub_ext2_mount (file->device->disk); - if (! data) - { - err = grub_errno; - goto fail; - } - - err = grub_fshelp_find_file (name, &data->diropen, &fdiro, - grub_ext2_iterate_dir, - grub_ext2_read_symlink, GRUB_FSHELP_REG); - if (err) - goto fail; - - if (! fdiro->inode_read) - { - err = grub_ext2_read_inode (data, fdiro->ino, &fdiro->inode); - if (err) - goto fail; - } - - if (fdiro->inode.flags & grub_cpu_to_le32_compile_time (EXT4_ENCRYPT_FLAG)) - { - err = grub_error (GRUB_ERR_NOT_IMPLEMENTED_YET, "file is encrypted"); - goto fail; - } - - grub_memcpy (data->inode, &fdiro->inode, sizeof (struct grub_ext2_inode)); - grub_free (fdiro); - - file->size = grub_le_to_cpu32 (data->inode->size); - file->size |= ((grub_off_t) grub_le_to_cpu32 (data->inode->size_high)) << 32; - file->data = data; - file->offset = 0; - - return 0; - - fail: - if (fdiro != &data->diropen) - grub_free (fdiro); - grub_free (data); - - grub_dl_unref (my_mod); - - return err; -} - -static grub_err_t -grub_ext2_close (grub_file_t file) -{ - grub_free (file->data); - - grub_dl_unref (my_mod); - - return GRUB_ERR_NONE; -} - -/* Read LEN bytes data from FILE into BUF. */ -static grub_ssize_t -grub_ext2_read (grub_file_t file, char *buf, grub_size_t len) -{ - struct grub_ext2_data *data = (struct grub_ext2_data *) file->data; - - return grub_ext2_read_file (&data->diropen, - file->read_hook, file->read_hook_data, - file->offset, len, buf); -} - - -/* Context for grub_ext2_dir. */ -struct grub_ext2_dir_ctx -{ - grub_fs_dir_hook_t hook; - void *hook_data; - struct grub_ext2_data *data; -}; - -/* Helper for grub_ext2_dir. */ -static int -grub_ext2_dir_iter (const char *filename, enum grub_fshelp_filetype filetype, - grub_fshelp_node_t node, void *data) -{ - struct grub_ext2_dir_ctx *ctx = data; - struct grub_dirhook_info info; - - grub_memset (&info, 0, sizeof (info)); - if (! node->inode_read) - { - grub_ext2_read_inode (ctx->data, node->ino, &node->inode); - if (!grub_errno) - node->inode_read = 1; - grub_errno = GRUB_ERR_NONE; - } - if (node->inode_read) - { - info.mtimeset = 1; - info.mtime = grub_le_to_cpu32 (node->inode.mtime); - } - - info.dir = ((filetype & GRUB_FSHELP_TYPE_MASK) == GRUB_FSHELP_DIR); - grub_free (node); - return ctx->hook (filename, &info, ctx->hook_data); -} - -static grub_err_t -grub_ext2_dir (grub_device_t device, const char *path, grub_fs_dir_hook_t hook, - void *hook_data) -{ - struct grub_ext2_dir_ctx ctx = { - .hook = hook, - .hook_data = hook_data - }; - struct grub_fshelp_node *fdiro = 0; - - grub_dl_ref (my_mod); - - ctx.data = grub_ext2_mount (device->disk); - if (! ctx.data) - goto fail; - - grub_fshelp_find_file (path, &ctx.data->diropen, &fdiro, - grub_ext2_iterate_dir, grub_ext2_read_symlink, - GRUB_FSHELP_DIR); - if (grub_errno) - goto fail; - - grub_ext2_iterate_dir (fdiro, grub_ext2_dir_iter, &ctx); - - fail: - if (fdiro != &ctx.data->diropen) - grub_free (fdiro); - grub_free (ctx.data); - - grub_dl_unref (my_mod); - - return grub_errno; -} - -static grub_err_t -grub_ext2_label (grub_device_t device, char **label) -{ - struct grub_ext2_data *data; - grub_disk_t disk = device->disk; - - grub_dl_ref (my_mod); - - data = grub_ext2_mount (disk); - if (data) - *label = grub_strndup (data->sblock.volume_name, - sizeof (data->sblock.volume_name)); - else - *label = NULL; - - grub_dl_unref (my_mod); - - grub_free (data); - - return grub_errno; -} - -static grub_err_t -grub_ext2_uuid (grub_device_t device, char **uuid) -{ - struct grub_ext2_data *data; - grub_disk_t disk = device->disk; - - grub_dl_ref (my_mod); - - data = grub_ext2_mount (disk); - if (data) - { - *uuid = grub_xasprintf ("%04x%04x-%04x-%04x-%04x-%04x%04x%04x", - grub_be_to_cpu16 (data->sblock.uuid[0]), - grub_be_to_cpu16 (data->sblock.uuid[1]), - grub_be_to_cpu16 (data->sblock.uuid[2]), - grub_be_to_cpu16 (data->sblock.uuid[3]), - grub_be_to_cpu16 (data->sblock.uuid[4]), - grub_be_to_cpu16 (data->sblock.uuid[5]), - grub_be_to_cpu16 (data->sblock.uuid[6]), - grub_be_to_cpu16 (data->sblock.uuid[7])); - } - else - *uuid = NULL; - - grub_dl_unref (my_mod); - - grub_free (data); - - return grub_errno; -} - -/* Get mtime. */ -static grub_err_t -grub_ext2_mtime (grub_device_t device, grub_int32_t *tm) -{ - struct grub_ext2_data *data; - grub_disk_t disk = device->disk; - - grub_dl_ref (my_mod); - - data = grub_ext2_mount (disk); - if (!data) - *tm = 0; - else - *tm = grub_le_to_cpu32 (data->sblock.utime); - - grub_dl_unref (my_mod); - - grub_free (data); - - return grub_errno; - -} - - - -static struct grub_fs grub_ext2_fs = - { - .name = "ext2", - .fs_dir = grub_ext2_dir, - .fs_open = grub_ext2_open, - .fs_read = grub_ext2_read, - .fs_close = grub_ext2_close, - .fs_label = grub_ext2_label, - .fs_uuid = grub_ext2_uuid, - .fs_mtime = grub_ext2_mtime, -#ifdef GRUB_UTIL - .reserved_first_sector = 1, - .blocklist_install = 1, -#endif - .next = 0 - }; - -GRUB_MOD_INIT(ext2) -{ - grub_fs_register (&grub_ext2_fs); - my_mod = mod; -} - -GRUB_MOD_FINI(ext2) -{ - grub_fs_unregister (&grub_ext2_fs); -} diff --git a/thirdparty/grub-2.04/grub-core/fs/f2fs.c b/thirdparty/grub-2.04/grub-core/fs/f2fs.c deleted file mode 100644 index 8a9992ca9..000000000 --- a/thirdparty/grub-2.04/grub-core/fs/f2fs.c +++ /dev/null @@ -1,1328 +0,0 @@ -/* - * f2fs.c - Flash-Friendly File System - * - * Written by Jaegeuk Kim - * - * Copyright (C) 2015 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -/* F2FS Magic Number. */ -#define F2FS_SUPER_MAGIC 0xf2f52010 - -#define CHECKSUM_OFFSET 4092 /* Must be aligned 4 bytes. */ -#define U32_CHECKSUM_OFFSET (CHECKSUM_OFFSET >> 2) -#define CRCPOLY_LE 0xedb88320 - -/* Byte-size offset. */ -#define F2FS_SUPER_OFFSET ((grub_disk_addr_t)1024) -#define F2FS_SUPER_OFFSET0 (F2FS_SUPER_OFFSET >> GRUB_DISK_SECTOR_BITS) -#define F2FS_SUPER_OFFSET1 ((F2FS_SUPER_OFFSET + F2FS_BLKSIZE) >> \ - GRUB_DISK_SECTOR_BITS) - -/* 9 bits for 512 bytes. */ -#define F2FS_MIN_LOG_SECTOR_SIZE 9 - -/* Support only 4KB block. */ -#define F2FS_BLK_BITS 12 -#define F2FS_BLKSIZE (1 << F2FS_BLK_BITS) -#define F2FS_BLK_SEC_BITS (F2FS_BLK_BITS - GRUB_DISK_SECTOR_BITS) - -#define VERSION_LEN 256 -#define F2FS_MAX_EXTENSION 64 - -#define CP_COMPACT_SUM_FLAG 0x00000004 -#define CP_UMOUNT_FLAG 0x00000001 - -#define MAX_ACTIVE_LOGS 16 -#define MAX_ACTIVE_NODE_LOGS 8 -#define MAX_ACTIVE_DATA_LOGS 8 -#define NR_CURSEG_DATA_TYPE 3 -#define NR_CURSEG_NODE_TYPE 3 -#define NR_CURSEG_TYPE (NR_CURSEG_DATA_TYPE + NR_CURSEG_NODE_TYPE) - -#define ENTRIES_IN_SUM 512 -#define SUMMARY_SIZE 7 -#define SUM_FOOTER_SIZE 5 -#define JENTRY_SIZE (sizeof(struct grub_f2fs_nat_jent)) -#define SUM_ENTRIES_SIZE (SUMMARY_SIZE * ENTRIES_IN_SUM) -#define SUM_JOURNAL_SIZE (F2FS_BLKSIZE - SUM_FOOTER_SIZE - SUM_ENTRIES_SIZE) -#define NAT_JOURNAL_ENTRIES ((SUM_JOURNAL_SIZE - 2) / JENTRY_SIZE) -#define NAT_JOURNAL_RESERVED ((SUM_JOURNAL_SIZE - 2) % JENTRY_SIZE) - -#define NAT_ENTRY_SIZE (sizeof(struct grub_f2fs_nat_entry)) -#define NAT_ENTRY_PER_BLOCK (F2FS_BLKSIZE / NAT_ENTRY_SIZE) - -#define F2FS_NAME_LEN 255 -#define F2FS_SLOT_LEN 8 -#define NR_DENTRY_IN_BLOCK 214 -#define SIZE_OF_DIR_ENTRY 11 /* By byte. */ -#define BITS_PER_BYTE 8 -#define SIZE_OF_DENTRY_BITMAP ((NR_DENTRY_IN_BLOCK + BITS_PER_BYTE - 1) / \ - BITS_PER_BYTE) -#define SIZE_OF_RESERVED (F2FS_BLKSIZE - \ - ((SIZE_OF_DIR_ENTRY + F2FS_SLOT_LEN) * \ - NR_DENTRY_IN_BLOCK + SIZE_OF_DENTRY_BITMAP)) - -#define F2FS_INLINE_XATTR_ADDRS 50 /* 200 bytes for inline xattrs. */ -#define DEF_ADDRS_PER_INODE 923 /* Address Pointers in an Inode. */ - -#define ADDRS_PER_BLOCK 1018 /* Address Pointers in a Direct Block. */ -#define NIDS_PER_BLOCK 1018 /* Node IDs in an Indirect Block. */ -#define NODE_DIR1_BLOCK (DEF_ADDRS_PER_INODE + 1) -#define NODE_DIR2_BLOCK (DEF_ADDRS_PER_INODE + 2) -#define NODE_IND1_BLOCK (DEF_ADDRS_PER_INODE + 3) -#define NODE_IND2_BLOCK (DEF_ADDRS_PER_INODE + 4) -#define NODE_DIND_BLOCK (DEF_ADDRS_PER_INODE + 5) - -#define MAX_INLINE_DATA (4 * (DEF_ADDRS_PER_INODE - \ - F2FS_INLINE_XATTR_ADDRS - 1)) -#define NR_INLINE_DENTRY (MAX_INLINE_DATA * BITS_PER_BYTE / \ - ((SIZE_OF_DIR_ENTRY + F2FS_SLOT_LEN) * \ - BITS_PER_BYTE + 1)) -#define INLINE_DENTRY_BITMAP_SIZE ((NR_INLINE_DENTRY + BITS_PER_BYTE - 1) / \ - BITS_PER_BYTE) -#define INLINE_RESERVED_SIZE (MAX_INLINE_DATA - \ - ((SIZE_OF_DIR_ENTRY + F2FS_SLOT_LEN) * \ - NR_INLINE_DENTRY + \ - INLINE_DENTRY_BITMAP_SIZE)) -#define CURSEG_HOT_DATA 0 - -#define CKPT_FLAG_SET(ckpt, f) (ckpt)->ckpt_flags & \ - grub_cpu_to_le32_compile_time (f) - -#define F2FS_INLINE_XATTR 0x01 /* File inline xattr flag. */ -#define F2FS_INLINE_DATA 0x02 /* File inline data flag. */ -#define F2FS_INLINE_DENTRY 0x04 /* File inline dentry flag. */ -#define F2FS_DATA_EXIST 0x08 /* File inline data exist flag. */ -#define F2FS_INLINE_DOTS 0x10 /* File having implicit dot dentries. */ - -#define MAX_VOLUME_NAME 512 - -enum FILE_TYPE -{ - F2FS_FT_UNKNOWN, - F2FS_FT_REG_FILE = 1, - F2FS_FT_DIR = 2, - F2FS_FT_SYMLINK = 7 -}; - -struct grub_f2fs_superblock -{ - grub_uint32_t magic; - grub_uint16_t dummy1[2]; - grub_uint32_t log_sectorsize; - grub_uint32_t log_sectors_per_block; - grub_uint32_t log_blocksize; - grub_uint32_t log_blocks_per_seg; - grub_uint32_t segs_per_sec; - grub_uint32_t secs_per_zone; - grub_uint32_t checksum_offset; - grub_uint8_t dummy2[40]; - grub_uint32_t cp_blkaddr; - grub_uint32_t sit_blkaddr; - grub_uint32_t nat_blkaddr; - grub_uint32_t ssa_blkaddr; - grub_uint32_t main_blkaddr; - grub_uint32_t root_ino; - grub_uint32_t node_ino; - grub_uint32_t meta_ino; - grub_uint8_t uuid[16]; - grub_uint16_t volume_name[MAX_VOLUME_NAME]; - grub_uint32_t extension_count; - grub_uint8_t extension_list[F2FS_MAX_EXTENSION][8]; - grub_uint32_t cp_payload; - grub_uint8_t version[VERSION_LEN]; - grub_uint8_t init_version[VERSION_LEN]; -} GRUB_PACKED; - -struct grub_f2fs_checkpoint -{ - grub_uint64_t checkpoint_ver; - grub_uint64_t user_block_count; - grub_uint64_t valid_block_count; - grub_uint32_t rsvd_segment_count; - grub_uint32_t overprov_segment_count; - grub_uint32_t free_segment_count; - grub_uint32_t cur_node_segno[MAX_ACTIVE_NODE_LOGS]; - grub_uint16_t cur_node_blkoff[MAX_ACTIVE_NODE_LOGS]; - grub_uint32_t cur_data_segno[MAX_ACTIVE_DATA_LOGS]; - grub_uint16_t cur_data_blkoff[MAX_ACTIVE_DATA_LOGS]; - grub_uint32_t ckpt_flags; - grub_uint32_t cp_pack_total_block_count; - grub_uint32_t cp_pack_start_sum; - grub_uint32_t valid_node_count; - grub_uint32_t valid_inode_count; - grub_uint32_t next_free_nid; - grub_uint32_t sit_ver_bitmap_bytesize; - grub_uint32_t nat_ver_bitmap_bytesize; - grub_uint32_t checksum_offset; - grub_uint64_t elapsed_time; - grub_uint8_t alloc_type[MAX_ACTIVE_LOGS]; - grub_uint8_t sit_nat_version_bitmap[3900]; - grub_uint32_t checksum; -} GRUB_PACKED; - -struct grub_f2fs_nat_entry { - grub_uint8_t version; - grub_uint32_t ino; - grub_uint32_t block_addr; -} GRUB_PACKED; - -struct grub_f2fs_nat_jent -{ - grub_uint32_t nid; - struct grub_f2fs_nat_entry ne; -} GRUB_PACKED; - -struct grub_f2fs_nat_journal { - grub_uint16_t n_nats; - struct grub_f2fs_nat_jent entries[NAT_JOURNAL_ENTRIES]; - grub_uint8_t reserved[NAT_JOURNAL_RESERVED]; -} GRUB_PACKED; - -struct grub_f2fs_nat_block { - struct grub_f2fs_nat_entry ne[NAT_ENTRY_PER_BLOCK]; -} GRUB_PACKED; - -struct grub_f2fs_dir_entry -{ - grub_uint32_t hash_code; - grub_uint32_t ino; - grub_uint16_t name_len; - grub_uint8_t file_type; -} GRUB_PACKED; - -struct grub_f2fs_inline_dentry -{ - grub_uint8_t dentry_bitmap[INLINE_DENTRY_BITMAP_SIZE]; - grub_uint8_t reserved[INLINE_RESERVED_SIZE]; - struct grub_f2fs_dir_entry dentry[NR_INLINE_DENTRY]; - grub_uint8_t filename[NR_INLINE_DENTRY][F2FS_SLOT_LEN]; -} GRUB_PACKED; - -struct grub_f2fs_dentry_block { - grub_uint8_t dentry_bitmap[SIZE_OF_DENTRY_BITMAP]; - grub_uint8_t reserved[SIZE_OF_RESERVED]; - struct grub_f2fs_dir_entry dentry[NR_DENTRY_IN_BLOCK]; - grub_uint8_t filename[NR_DENTRY_IN_BLOCK][F2FS_SLOT_LEN]; -} GRUB_PACKED; - -struct grub_f2fs_inode -{ - grub_uint16_t i_mode; - grub_uint8_t i_advise; - grub_uint8_t i_inline; - grub_uint32_t i_uid; - grub_uint32_t i_gid; - grub_uint32_t i_links; - grub_uint64_t i_size; - grub_uint64_t i_blocks; - grub_uint64_t i_atime; - grub_uint64_t i_ctime; - grub_uint64_t i_mtime; - grub_uint32_t i_atime_nsec; - grub_uint32_t i_ctime_nsec; - grub_uint32_t i_mtime_nsec; - grub_uint32_t i_generation; - grub_uint32_t i_current_depth; - grub_uint32_t i_xattr_nid; - grub_uint32_t i_flags; - grub_uint32_t i_pino; - grub_uint32_t i_namelen; - grub_uint8_t i_name[F2FS_NAME_LEN]; - grub_uint8_t i_dir_level; - grub_uint8_t i_ext[12]; - grub_uint32_t i_addr[DEF_ADDRS_PER_INODE]; - grub_uint32_t i_nid[5]; -} GRUB_PACKED; - -struct grub_direct_node { - grub_uint32_t addr[ADDRS_PER_BLOCK]; -} GRUB_PACKED; - -struct grub_indirect_node { - grub_uint32_t nid[NIDS_PER_BLOCK]; -} GRUB_PACKED; - -struct grub_f2fs_node -{ - union - { - struct grub_f2fs_inode i; - struct grub_direct_node dn; - struct grub_indirect_node in; - /* Should occupy F2FS_BLKSIZE totally. */ - char buf[F2FS_BLKSIZE - 40]; - }; - grub_uint8_t dummy[40]; -} GRUB_PACKED; - -struct grub_fshelp_node -{ - struct grub_f2fs_data *data; - struct grub_f2fs_node inode; - grub_uint32_t ino; - int inode_read; -}; - -struct grub_f2fs_data -{ - struct grub_f2fs_superblock sblock; - struct grub_f2fs_checkpoint ckpt; - - grub_uint32_t root_ino; - grub_uint32_t blocks_per_seg; - grub_uint32_t cp_blkaddr; - grub_uint32_t nat_blkaddr; - - struct grub_f2fs_nat_journal nat_j; - char *nat_bitmap; - - grub_disk_t disk; - struct grub_f2fs_node *inode; - struct grub_fshelp_node diropen; -}; - -struct grub_f2fs_dir_iter_ctx -{ - struct grub_f2fs_data *data; - grub_fshelp_iterate_dir_hook_t hook; - void *hook_data; - grub_uint8_t *bitmap; - grub_uint8_t (*filename)[F2FS_SLOT_LEN]; - struct grub_f2fs_dir_entry *dentry; - int max; -}; - -struct grub_f2fs_dir_ctx -{ - grub_fs_dir_hook_t hook; - void *hook_data; - struct grub_f2fs_data *data; -}; - -static grub_dl_t my_mod; - -static int -grub_f2fs_test_bit_le (int nr, const grub_uint8_t *addr) -{ - return addr[nr >> 3] & (1 << (nr & 7)); -} - -static char * -get_inline_addr (struct grub_f2fs_inode *inode) -{ - return (char *) &inode->i_addr[1]; -} - -static grub_uint64_t -grub_f2fs_file_size (struct grub_f2fs_inode *inode) -{ - return grub_le_to_cpu64 (inode->i_size); -} - -static grub_uint32_t -start_cp_addr (struct grub_f2fs_data *data) -{ - struct grub_f2fs_checkpoint *ckpt = &data->ckpt; - grub_uint32_t start_addr = data->cp_blkaddr; - - if (!(ckpt->checkpoint_ver & grub_cpu_to_le64_compile_time(1))) - return start_addr + data->blocks_per_seg; - - return start_addr; -} - -static grub_uint32_t -start_sum_block (struct grub_f2fs_data *data) -{ - struct grub_f2fs_checkpoint *ckpt = &data->ckpt; - - return start_cp_addr (data) + grub_le_to_cpu32 (ckpt->cp_pack_start_sum); -} - -static grub_uint32_t -sum_blk_addr (struct grub_f2fs_data *data, int base, int type) -{ - struct grub_f2fs_checkpoint *ckpt = &data->ckpt; - - return start_cp_addr (data) + - grub_le_to_cpu32 (ckpt->cp_pack_total_block_count) - - (base + 1) + type; -} - -static void * -nat_bitmap_ptr (struct grub_f2fs_data *data) -{ - struct grub_f2fs_checkpoint *ckpt = &data->ckpt; - grub_uint32_t offset; - - if (grub_le_to_cpu32 (data->sblock.cp_payload) > 0) - return ckpt->sit_nat_version_bitmap; - - offset = grub_le_to_cpu32 (ckpt->sit_ver_bitmap_bytesize); - - return ckpt->sit_nat_version_bitmap + offset; -} - -static grub_uint32_t -get_node_id (struct grub_f2fs_node *rn, int off, int inode_block) -{ - if (inode_block) - return grub_le_to_cpu32 (rn->i.i_nid[off - NODE_DIR1_BLOCK]); - - return grub_le_to_cpu32 (rn->in.nid[off]); -} - -static grub_err_t -grub_f2fs_block_read (struct grub_f2fs_data *data, grub_uint32_t blkaddr, - void *buf) -{ - return grub_disk_read (data->disk, - ((grub_disk_addr_t)blkaddr) << F2FS_BLK_SEC_BITS, - 0, F2FS_BLKSIZE, buf); -} - -/* CRC32 */ -static grub_uint32_t -grub_f2fs_cal_crc32 (const void *buf, const grub_uint32_t len) -{ - grub_uint32_t crc = F2FS_SUPER_MAGIC; - unsigned char *p = (unsigned char *)buf; - grub_uint32_t tmp = len; - int i; - - while (tmp--) - { - crc ^= *p++; - for (i = 0; i < 8; i++) - crc = (crc >> 1) ^ ((crc & 1) ? CRCPOLY_LE : 0); - } - - return crc; -} - -static int -grub_f2fs_crc_valid (grub_uint32_t blk_crc, void *buf, const grub_uint32_t len) -{ - grub_uint32_t cal_crc = 0; - - cal_crc = grub_f2fs_cal_crc32 (buf, len); - - return (cal_crc == blk_crc) ? 1 : 0; -} - -static int -grub_f2fs_test_bit (grub_uint32_t nr, const char *p) -{ - int mask; - - p += (nr >> 3); - mask = 1 << (7 - (nr & 0x07)); - - return mask & *p; -} - -static int -grub_f2fs_sanity_check_sb (struct grub_f2fs_superblock *sb) -{ - grub_uint32_t log_sectorsize, log_sectors_per_block; - - if (sb->magic != grub_cpu_to_le32_compile_time (F2FS_SUPER_MAGIC)) - return -1; - - if (sb->log_blocksize != grub_cpu_to_le32_compile_time (F2FS_BLK_BITS)) - return -1; - - log_sectorsize = grub_le_to_cpu32 (sb->log_sectorsize); - log_sectors_per_block = grub_le_to_cpu32 (sb->log_sectors_per_block); - - if (log_sectorsize > F2FS_BLK_BITS) - return -1; - - if (log_sectorsize < F2FS_MIN_LOG_SECTOR_SIZE) - return -1; - - if (log_sectors_per_block + log_sectorsize != F2FS_BLK_BITS) - return -1; - - return 0; -} - -static int -grub_f2fs_read_sb (struct grub_f2fs_data *data, grub_disk_addr_t offset) -{ - grub_disk_t disk = data->disk; - grub_err_t err; - - /* Read first super block. */ - err = grub_disk_read (disk, offset, 0, sizeof (data->sblock), &data->sblock); - if (err) - return -1; - - return grub_f2fs_sanity_check_sb (&data->sblock); -} - -static void * -validate_checkpoint (struct grub_f2fs_data *data, grub_uint32_t cp_addr, - grub_uint64_t *version) -{ - grub_uint32_t *cp_page_1, *cp_page_2; - struct grub_f2fs_checkpoint *cp_block; - grub_uint64_t cur_version = 0, pre_version = 0; - grub_uint32_t crc = 0; - grub_uint32_t crc_offset; - grub_err_t err; - - /* Read the 1st cp block in this CP pack. */ - cp_page_1 = grub_malloc (F2FS_BLKSIZE); - if (!cp_page_1) - return NULL; - - err = grub_f2fs_block_read (data, cp_addr, cp_page_1); - if (err) - goto invalid_cp1; - - cp_block = (struct grub_f2fs_checkpoint *)cp_page_1; - crc_offset = grub_le_to_cpu32 (cp_block->checksum_offset); - if (crc_offset != CHECKSUM_OFFSET) - goto invalid_cp1; - - crc = grub_le_to_cpu32 (*(cp_page_1 + U32_CHECKSUM_OFFSET)); - if (!grub_f2fs_crc_valid (crc, cp_block, crc_offset)) - goto invalid_cp1; - - pre_version = grub_le_to_cpu64 (cp_block->checkpoint_ver); - - /* Read the 2nd cp block in this CP pack. */ - cp_page_2 = grub_malloc (F2FS_BLKSIZE); - if (!cp_page_2) - goto invalid_cp1; - - cp_addr += grub_le_to_cpu32 (cp_block->cp_pack_total_block_count) - 1; - - err = grub_f2fs_block_read (data, cp_addr, cp_page_2); - if (err) - goto invalid_cp2; - - cp_block = (struct grub_f2fs_checkpoint *)cp_page_2; - crc_offset = grub_le_to_cpu32 (cp_block->checksum_offset); - if (crc_offset != CHECKSUM_OFFSET) - goto invalid_cp2; - - crc = grub_le_to_cpu32 (*(cp_page_2 + U32_CHECKSUM_OFFSET)); - if (!grub_f2fs_crc_valid (crc, cp_block, crc_offset)) - goto invalid_cp2; - - cur_version = grub_le_to_cpu64 (cp_block->checkpoint_ver); - if (cur_version == pre_version) - { - *version = cur_version; - grub_free (cp_page_2); - - return cp_page_1; - } - - invalid_cp2: - grub_free (cp_page_2); - - invalid_cp1: - grub_free (cp_page_1); - - return NULL; -} - -static grub_err_t -grub_f2fs_read_cp (struct grub_f2fs_data *data) -{ - void *cp1, *cp2, *cur_page; - grub_uint64_t cp1_version = 0, cp2_version = 0; - grub_uint64_t cp_start_blk_no; - - /* - * Finding out valid cp block involves read both - * sets (cp pack1 and cp pack 2). - */ - cp_start_blk_no = data->cp_blkaddr; - cp1 = validate_checkpoint (data, cp_start_blk_no, &cp1_version); - if (!cp1 && grub_errno) - return grub_errno; - - /* The second checkpoint pack should start at the next segment. */ - cp_start_blk_no += data->blocks_per_seg; - cp2 = validate_checkpoint (data, cp_start_blk_no, &cp2_version); - if (!cp2 && grub_errno) - { - grub_free (cp1); - return grub_errno; - } - - if (cp1 && cp2) - cur_page = (cp2_version > cp1_version) ? cp2 : cp1; - else if (cp1) - cur_page = cp1; - else if (cp2) - cur_page = cp2; - else - return grub_error (GRUB_ERR_BAD_FS, "no checkpoints"); - - grub_memcpy (&data->ckpt, cur_page, F2FS_BLKSIZE); - - grub_free (cp1); - grub_free (cp2); - - return 0; -} - -static grub_err_t -get_nat_journal (struct grub_f2fs_data *data) -{ - grub_uint32_t block; - char *buf; - grub_err_t err; - - buf = grub_malloc (F2FS_BLKSIZE); - if (!buf) - return grub_errno; - - if (CKPT_FLAG_SET(&data->ckpt, CP_COMPACT_SUM_FLAG)) - block = start_sum_block (data); - else if (CKPT_FLAG_SET (&data->ckpt, CP_UMOUNT_FLAG)) - block = sum_blk_addr (data, NR_CURSEG_TYPE, CURSEG_HOT_DATA); - else - block = sum_blk_addr (data, NR_CURSEG_DATA_TYPE, CURSEG_HOT_DATA); - - err = grub_f2fs_block_read (data, block, buf); - if (err) - goto fail; - - if (CKPT_FLAG_SET (&data->ckpt, CP_COMPACT_SUM_FLAG)) - grub_memcpy (&data->nat_j, buf, SUM_JOURNAL_SIZE); - else - grub_memcpy (&data->nat_j, buf + SUM_ENTRIES_SIZE, SUM_JOURNAL_SIZE); - - fail: - grub_free (buf); - - return err; -} - -static grub_uint32_t -get_blkaddr_from_nat_journal (struct grub_f2fs_data *data, grub_uint32_t nid) -{ - grub_uint16_t n = grub_le_to_cpu16 (data->nat_j.n_nats); - grub_uint32_t blkaddr = 0; - grub_uint16_t i; - - for (i = 0; i < n; i++) - { - if (grub_le_to_cpu32 (data->nat_j.entries[i].nid) == nid) - { - blkaddr = grub_le_to_cpu32 (data->nat_j.entries[i].ne.block_addr); - break; - } - } - - return blkaddr; -} - -static grub_uint32_t -get_node_blkaddr (struct grub_f2fs_data *data, grub_uint32_t nid) -{ - struct grub_f2fs_nat_block *nat_block; - grub_uint32_t seg_off, block_off, entry_off, block_addr; - grub_uint32_t blkaddr; - grub_err_t err; - - blkaddr = get_blkaddr_from_nat_journal (data, nid); - if (blkaddr) - return blkaddr; - - nat_block = grub_malloc (F2FS_BLKSIZE); - if (!nat_block) - return 0; - - block_off = nid / NAT_ENTRY_PER_BLOCK; - entry_off = nid % NAT_ENTRY_PER_BLOCK; - - seg_off = block_off / data->blocks_per_seg; - block_addr = data->nat_blkaddr + - ((seg_off * data->blocks_per_seg) << 1) + - (block_off & (data->blocks_per_seg - 1)); - - if (grub_f2fs_test_bit (block_off, data->nat_bitmap)) - block_addr += data->blocks_per_seg; - - err = grub_f2fs_block_read (data, block_addr, nat_block); - if (err) - { - grub_free (nat_block); - return 0; - } - - blkaddr = grub_le_to_cpu32 (nat_block->ne[entry_off].block_addr); - - grub_free (nat_block); - - return blkaddr; -} - -static int -grub_get_node_path (struct grub_f2fs_inode *inode, grub_uint32_t block, - grub_uint32_t offset[4], grub_uint32_t noffset[4]) -{ - grub_uint32_t direct_blks = ADDRS_PER_BLOCK; - grub_uint32_t dptrs_per_blk = NIDS_PER_BLOCK; - grub_uint32_t indirect_blks = ADDRS_PER_BLOCK * NIDS_PER_BLOCK; - grub_uint32_t dindirect_blks = indirect_blks * NIDS_PER_BLOCK; - grub_uint32_t direct_index = DEF_ADDRS_PER_INODE; - int n = 0; - int level = -1; - - if (inode->i_inline & F2FS_INLINE_XATTR) - direct_index -= F2FS_INLINE_XATTR_ADDRS; - - noffset[0] = 0; - - if (block < direct_index) - { - offset[n] = block; - level = 0; - goto got; - } - - block -= direct_index; - if (block < direct_blks) - { - offset[n++] = NODE_DIR1_BLOCK; - noffset[n] = 1; - offset[n] = block; - level = 1; - goto got; - } - - block -= direct_blks; - if (block < direct_blks) - { - offset[n++] = NODE_DIR2_BLOCK; - noffset[n] = 2; - offset[n] = block; - level = 1; - goto got; - } - - block -= direct_blks; - if (block < indirect_blks) - { - offset[n++] = NODE_IND1_BLOCK; - noffset[n] = 3; - offset[n++] = block / direct_blks; - noffset[n] = 4 + offset[n - 1]; - offset[n] = block % direct_blks; - level = 2; - goto got; - } - - block -= indirect_blks; - if (block < indirect_blks) - { - offset[n++] = NODE_IND2_BLOCK; - noffset[n] = 4 + dptrs_per_blk; - offset[n++] = block / direct_blks; - noffset[n] = 5 + dptrs_per_blk + offset[n - 1]; - offset[n] = block % direct_blks; - level = 2; - goto got; - } - - block -= indirect_blks; - if (block < dindirect_blks) - { - offset[n++] = NODE_DIND_BLOCK; - noffset[n] = 5 + (dptrs_per_blk * 2); - offset[n++] = block / indirect_blks; - noffset[n] = 6 + (dptrs_per_blk * 2) + - offset[n - 1] * (dptrs_per_blk + 1); - offset[n++] = (block / direct_blks) % dptrs_per_blk; - noffset[n] = 7 + (dptrs_per_blk * 2) + - offset[n - 2] * (dptrs_per_blk + 1) + offset[n - 1]; - offset[n] = block % direct_blks; - level = 3; - goto got; - } - - got: - return level; -} - -static grub_err_t -grub_f2fs_read_node (struct grub_f2fs_data *data, - grub_uint32_t nid, struct grub_f2fs_node *np) -{ - grub_uint32_t blkaddr; - - blkaddr = get_node_blkaddr (data, nid); - if (!blkaddr) - return grub_errno; - - return grub_f2fs_block_read (data, blkaddr, np); -} - -static struct grub_f2fs_data * -grub_f2fs_mount (grub_disk_t disk) -{ - struct grub_f2fs_data *data; - grub_err_t err; - - data = grub_malloc (sizeof (*data)); - if (!data) - return NULL; - - data->disk = disk; - - if (grub_f2fs_read_sb (data, F2FS_SUPER_OFFSET0)) - { - if (grub_f2fs_read_sb (data, F2FS_SUPER_OFFSET1)) - { - if (grub_errno == GRUB_ERR_NONE) - grub_error (GRUB_ERR_BAD_FS, - "not a F2FS filesystem (no superblock)"); - goto fail; - } - } - - data->root_ino = grub_le_to_cpu32 (data->sblock.root_ino); - data->cp_blkaddr = grub_le_to_cpu32 (data->sblock.cp_blkaddr); - data->nat_blkaddr = grub_le_to_cpu32 (data->sblock.nat_blkaddr); - data->blocks_per_seg = 1 << - grub_le_to_cpu32 (data->sblock.log_blocks_per_seg); - - err = grub_f2fs_read_cp (data); - if (err) - goto fail; - - data->nat_bitmap = nat_bitmap_ptr (data); - - err = get_nat_journal (data); - if (err) - goto fail; - - data->diropen.data = data; - data->diropen.ino = data->root_ino; - data->diropen.inode_read = 1; - data->inode = &data->diropen.inode; - - err = grub_f2fs_read_node (data, data->root_ino, data->inode); - if (err) - goto fail; - - return data; - - fail: - grub_free (data); - - return NULL; -} - -/* Guarantee inline_data was handled by caller. */ -static grub_disk_addr_t -grub_f2fs_get_block (grub_fshelp_node_t node, grub_disk_addr_t block_ofs) -{ - struct grub_f2fs_data *data = node->data; - struct grub_f2fs_inode *inode = &node->inode.i; - grub_uint32_t offset[4], noffset[4], nids[4]; - struct grub_f2fs_node *node_block; - grub_uint32_t block_addr = -1; - int level, i; - - level = grub_get_node_path (inode, block_ofs, offset, noffset); - - if (level < 0) - return -1; - - if (level == 0) - return grub_le_to_cpu32 (inode->i_addr[offset[0]]); - - node_block = grub_malloc (F2FS_BLKSIZE); - if (!node_block) - return -1; - - nids[1] = get_node_id (&node->inode, offset[0], 1); - - /* Get indirect or direct nodes. */ - for (i = 1; i <= level; i++) - { - grub_f2fs_read_node (data, nids[i], node_block); - if (grub_errno) - goto fail; - - if (i < level) - nids[i + 1] = get_node_id (node_block, offset[i], 0); - } - - block_addr = grub_le_to_cpu32 (node_block->dn.addr[offset[level]]); - - fail: - grub_free (node_block); - - return block_addr; -} - -static grub_ssize_t -grub_f2fs_read_file (grub_fshelp_node_t node, - grub_disk_read_hook_t read_hook, void *read_hook_data, - grub_off_t pos, grub_size_t len, char *buf) -{ - struct grub_f2fs_inode *inode = &node->inode.i; - grub_off_t filesize = grub_f2fs_file_size (inode); - char *inline_addr = get_inline_addr (inode); - - if (inode->i_inline & F2FS_INLINE_DATA) - { - if (filesize > MAX_INLINE_DATA) - return -1; - - if (len > filesize - pos) - len = filesize - pos; - - grub_memcpy (buf, inline_addr + pos, len); - return len; - } - - return grub_fshelp_read_file (node->data->disk, node, - read_hook, read_hook_data, - pos, len, buf, grub_f2fs_get_block, - filesize, - F2FS_BLK_SEC_BITS, 0); -} - -static char * -grub_f2fs_read_symlink (grub_fshelp_node_t node) -{ - char *symlink; - struct grub_fshelp_node *diro = node; - grub_uint64_t filesize; - - if (!diro->inode_read) - { - grub_f2fs_read_node (diro->data, diro->ino, &diro->inode); - if (grub_errno) - return 0; - } - - filesize = grub_f2fs_file_size(&diro->inode.i); - - symlink = grub_malloc (filesize + 1); - if (!symlink) - return 0; - - grub_f2fs_read_file (diro, 0, 0, 0, filesize, symlink); - if (grub_errno) - { - grub_free (symlink); - return 0; - } - - symlink[filesize] = '\0'; - - return symlink; -} - -static int -grub_f2fs_check_dentries (struct grub_f2fs_dir_iter_ctx *ctx) -{ - struct grub_fshelp_node *fdiro; - int i; - - for (i = 0; i < ctx->max;) - { - char *filename; - enum grub_fshelp_filetype type = GRUB_FSHELP_UNKNOWN; - enum FILE_TYPE ftype; - int name_len; - int ret; - - if (grub_f2fs_test_bit_le (i, ctx->bitmap) == 0) - { - i++; - continue; - } - - ftype = ctx->dentry[i].file_type; - name_len = grub_le_to_cpu16 (ctx->dentry[i].name_len); - filename = grub_malloc (name_len + 1); - if (!filename) - return 0; - - grub_memcpy (filename, ctx->filename[i], name_len); - filename[name_len] = 0; - - fdiro = grub_malloc (sizeof (struct grub_fshelp_node)); - if (!fdiro) - { - grub_free(filename); - return 0; - } - - if (ftype == F2FS_FT_DIR) - type = GRUB_FSHELP_DIR; - else if (ftype == F2FS_FT_SYMLINK) - type = GRUB_FSHELP_SYMLINK; - else if (ftype == F2FS_FT_REG_FILE) - type = GRUB_FSHELP_REG; - - fdiro->data = ctx->data; - fdiro->ino = grub_le_to_cpu32 (ctx->dentry[i].ino); - fdiro->inode_read = 0; - - ret = ctx->hook (filename, type, fdiro, ctx->hook_data); - grub_free(filename); - if (ret) - return 1; - - i += (name_len + F2FS_SLOT_LEN - 1) / F2FS_SLOT_LEN; - } - - return 0; -} - -static int -grub_f2fs_iterate_inline_dir (struct grub_f2fs_inode *dir, - struct grub_f2fs_dir_iter_ctx *ctx) -{ - struct grub_f2fs_inline_dentry *de_blk; - - de_blk = (struct grub_f2fs_inline_dentry *) get_inline_addr (dir); - - ctx->bitmap = de_blk->dentry_bitmap; - ctx->dentry = de_blk->dentry; - ctx->filename = de_blk->filename; - ctx->max = NR_INLINE_DENTRY; - - return grub_f2fs_check_dentries (ctx); -} - -static int -grub_f2fs_iterate_dir (grub_fshelp_node_t dir, - grub_fshelp_iterate_dir_hook_t hook, void *hook_data) -{ - struct grub_fshelp_node *diro = (struct grub_fshelp_node *) dir; - struct grub_f2fs_inode *inode; - struct grub_f2fs_dir_iter_ctx ctx = { - .data = diro->data, - .hook = hook, - .hook_data = hook_data - }; - grub_off_t fpos = 0; - - if (!diro->inode_read) - { - grub_f2fs_read_node (diro->data, diro->ino, &diro->inode); - if (grub_errno) - return 0; - } - - inode = &diro->inode.i; - - if (inode->i_inline & F2FS_INLINE_DENTRY) - return grub_f2fs_iterate_inline_dir (inode, &ctx); - - while (fpos < grub_f2fs_file_size (inode)) - { - struct grub_f2fs_dentry_block *de_blk; - char *buf; - int ret; - - buf = grub_zalloc (F2FS_BLKSIZE); - if (!buf) - return 0; - - grub_f2fs_read_file (diro, 0, 0, fpos, F2FS_BLKSIZE, buf); - if (grub_errno) - { - grub_free (buf); - return 0; - } - - de_blk = (struct grub_f2fs_dentry_block *) buf; - - ctx.bitmap = de_blk->dentry_bitmap; - ctx.dentry = de_blk->dentry; - ctx.filename = de_blk->filename; - ctx.max = NR_DENTRY_IN_BLOCK; - - ret = grub_f2fs_check_dentries (&ctx); - grub_free (buf); - if (ret) - return 1; - - fpos += F2FS_BLKSIZE; - } - - return 0; -} - -static int -grub_f2fs_dir_iter (const char *filename, enum grub_fshelp_filetype filetype, - grub_fshelp_node_t node, void *data) -{ - struct grub_f2fs_dir_ctx *ctx = data; - struct grub_dirhook_info info; - - grub_memset (&info, 0, sizeof (info)); - if (!node->inode_read) - { - grub_f2fs_read_node (ctx->data, node->ino, &node->inode); - if (!grub_errno) - node->inode_read = 1; - grub_errno = GRUB_ERR_NONE; - } - if (node->inode_read) - { - info.mtimeset = 1; - info.mtime = grub_le_to_cpu64 (node->inode.i.i_mtime); - } - - info.dir = ((filetype & GRUB_FSHELP_TYPE_MASK) == GRUB_FSHELP_DIR); - grub_free (node); - - return ctx->hook (filename, &info, ctx->hook_data); -} - -static grub_err_t -grub_f2fs_dir (grub_device_t device, const char *path, - grub_fs_dir_hook_t hook, void *hook_data) -{ - struct grub_f2fs_dir_ctx ctx = { - .hook = hook, - .hook_data = hook_data - }; - struct grub_fshelp_node *fdiro = 0; - - grub_dl_ref (my_mod); - - ctx.data = grub_f2fs_mount (device->disk); - if (!ctx.data) - goto fail; - - grub_fshelp_find_file (path, &ctx.data->diropen, &fdiro, - grub_f2fs_iterate_dir, grub_f2fs_read_symlink, - GRUB_FSHELP_DIR); - if (grub_errno) - goto fail; - - grub_f2fs_iterate_dir (fdiro, grub_f2fs_dir_iter, &ctx); - - fail: - if (fdiro != &ctx.data->diropen) - grub_free (fdiro); - grub_free (ctx.data); - grub_dl_unref (my_mod); - - return grub_errno; -} - -/* Open a file named NAME and initialize FILE. */ -static grub_err_t -grub_f2fs_open (struct grub_file *file, const char *name) -{ - struct grub_f2fs_data *data = NULL; - struct grub_fshelp_node *fdiro = 0; - struct grub_f2fs_inode *inode; - - grub_dl_ref (my_mod); - - data = grub_f2fs_mount (file->device->disk); - if (!data) - goto fail; - - grub_fshelp_find_file (name, &data->diropen, &fdiro, - grub_f2fs_iterate_dir, grub_f2fs_read_symlink, - GRUB_FSHELP_REG); - if (grub_errno) - goto fail; - - if (!fdiro->inode_read) - { - grub_f2fs_read_node (data, fdiro->ino, &fdiro->inode); - if (grub_errno) - goto fail; - } - - grub_memcpy (data->inode, &fdiro->inode, sizeof (*data->inode)); - grub_free (fdiro); - - inode = &(data->inode->i); - file->size = grub_f2fs_file_size (inode); - file->data = data; - file->offset = 0; - - if (inode->i_inline & F2FS_INLINE_DATA && file->size > MAX_INLINE_DATA) - grub_error (GRUB_ERR_BAD_FS, "corrupted inline_data: need fsck"); - - return 0; - - fail: - if (fdiro != &data->diropen) - grub_free (fdiro); - grub_free (data); - - grub_dl_unref (my_mod); - - return grub_errno; -} - -static grub_ssize_t -grub_f2fs_read (grub_file_t file, char *buf, grub_size_t len) -{ - struct grub_f2fs_data *data = (struct grub_f2fs_data *) file->data; - - return grub_f2fs_read_file (&data->diropen, - file->read_hook, file->read_hook_data, - file->offset, len, buf); -} - -static grub_err_t -grub_f2fs_close (grub_file_t file) -{ - struct grub_f2fs_data *data = (struct grub_f2fs_data *) file->data; - - grub_free (data); - - grub_dl_unref (my_mod); - - return GRUB_ERR_NONE; -} - -static grub_uint8_t * -grub_f2fs_utf16_to_utf8 (grub_uint16_t *in_buf_le) -{ - grub_uint16_t in_buf[MAX_VOLUME_NAME]; - grub_uint8_t *out_buf; - int len = 0; - - out_buf = grub_malloc (MAX_VOLUME_NAME * GRUB_MAX_UTF8_PER_UTF16 + 1); - if (!out_buf) - return NULL; - - while (*in_buf_le != 0 && len < MAX_VOLUME_NAME) { - in_buf[len] = grub_le_to_cpu16 (in_buf_le[len]); - len++; - } - - *grub_utf16_to_utf8 (out_buf, in_buf, len) = '\0'; - - return out_buf; -} - -#if __GNUC__ >= 9 -#pragma GCC diagnostic push -#pragma GCC diagnostic ignored "-Waddress-of-packed-member" -#endif - -static grub_err_t -grub_f2fs_label (grub_device_t device, char **label) -{ - struct grub_f2fs_data *data; - grub_disk_t disk = device->disk; - - grub_dl_ref (my_mod); - - data = grub_f2fs_mount (disk); - if (data) - *label = (char *) grub_f2fs_utf16_to_utf8 (data->sblock.volume_name); - else - *label = NULL; - - grub_free (data); - grub_dl_unref (my_mod); - - return grub_errno; -} - -#if __GNUC__ >= 9 -#pragma GCC diagnostic pop -#endif - -static grub_err_t -grub_f2fs_uuid (grub_device_t device, char **uuid) -{ - struct grub_f2fs_data *data; - grub_disk_t disk = device->disk; - - grub_dl_ref (my_mod); - - data = grub_f2fs_mount (disk); - if (data) - { - *uuid = - grub_xasprintf - ("%02x%02x%02x%02x-%02x%02x-%02x%02x-%02x%02x-%02x%02x%02x%02x%02x%02x", - data->sblock.uuid[0], data->sblock.uuid[1], - data->sblock.uuid[2], data->sblock.uuid[3], - data->sblock.uuid[4], data->sblock.uuid[5], - data->sblock.uuid[6], data->sblock.uuid[7], - data->sblock.uuid[8], data->sblock.uuid[9], - data->sblock.uuid[10], data->sblock.uuid[11], - data->sblock.uuid[12], data->sblock.uuid[13], - data->sblock.uuid[14], data->sblock.uuid[15]); - } - else - *uuid = NULL; - - grub_free (data); - grub_dl_unref (my_mod); - - return grub_errno; -} - -static struct grub_fs grub_f2fs_fs = { - .name = "f2fs", - .fs_dir = grub_f2fs_dir, - .fs_open = grub_f2fs_open, - .fs_read = grub_f2fs_read, - .fs_close = grub_f2fs_close, - .fs_label = grub_f2fs_label, - .fs_uuid = grub_f2fs_uuid, -#ifdef GRUB_UTIL - .reserved_first_sector = 1, - .blocklist_install = 0, -#endif - .next = 0 -}; - -GRUB_MOD_INIT (f2fs) -{ - grub_fs_register (&grub_f2fs_fs); - my_mod = mod; -} - -GRUB_MOD_FINI (f2fs) -{ - grub_fs_unregister (&grub_f2fs_fs); -} diff --git a/thirdparty/grub-2.04/grub-core/fs/fat.c b/thirdparty/grub-2.04/grub-core/fs/fat.c deleted file mode 100644 index d544e0af1..000000000 --- a/thirdparty/grub-2.04/grub-core/fs/fat.c +++ /dev/null @@ -1,1268 +0,0 @@ -/* fat.c - FAT filesystem */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2000,2001,2002,2003,2004,2005,2007,2008,2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#ifndef MODE_EXFAT -#include -#else -#include -#endif -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -enum - { - GRUB_FAT_ATTR_READ_ONLY = 0x01, - GRUB_FAT_ATTR_HIDDEN = 0x02, - GRUB_FAT_ATTR_SYSTEM = 0x04, -#ifndef MODE_EXFAT - GRUB_FAT_ATTR_VOLUME_ID = 0x08, -#endif - GRUB_FAT_ATTR_DIRECTORY = 0x10, - GRUB_FAT_ATTR_ARCHIVE = 0x20, - -#ifndef MODE_EXFAT - GRUB_FAT_ATTR_LONG_NAME = (GRUB_FAT_ATTR_READ_ONLY - | GRUB_FAT_ATTR_HIDDEN - | GRUB_FAT_ATTR_SYSTEM - | GRUB_FAT_ATTR_VOLUME_ID), -#endif - GRUB_FAT_ATTR_VALID = (GRUB_FAT_ATTR_READ_ONLY - | GRUB_FAT_ATTR_HIDDEN - | GRUB_FAT_ATTR_SYSTEM - | GRUB_FAT_ATTR_DIRECTORY - | GRUB_FAT_ATTR_ARCHIVE -#ifndef MODE_EXFAT - | GRUB_FAT_ATTR_VOLUME_ID -#endif - ) - }; - -#ifdef MODE_EXFAT -typedef struct grub_exfat_bpb grub_current_fat_bpb_t; -#else -typedef struct grub_fat_bpb grub_current_fat_bpb_t; -#endif - -#ifdef MODE_EXFAT -enum - { - FLAG_CONTIGUOUS = 2 - }; -struct grub_fat_dir_entry -{ - grub_uint8_t entry_type; - union - { - grub_uint8_t placeholder[31]; - struct { - grub_uint8_t secondary_count; - grub_uint16_t checksum; - grub_uint16_t attr; - grub_uint16_t reserved1; - grub_uint32_t c_time; - grub_uint32_t m_time; - grub_uint32_t a_time; - grub_uint8_t c_time_tenth; - grub_uint8_t m_time_tenth; - grub_uint8_t a_time_tenth; - grub_uint8_t reserved2[9]; - } GRUB_PACKED file; - struct { - grub_uint8_t flags; - grub_uint8_t reserved1; - grub_uint8_t name_length; - grub_uint16_t name_hash; - grub_uint16_t reserved2; - grub_uint64_t valid_size; - grub_uint32_t reserved3; - grub_uint32_t first_cluster; - grub_uint64_t file_size; - } GRUB_PACKED stream_extension; - struct { - grub_uint8_t flags; - grub_uint16_t str[15]; - } GRUB_PACKED file_name; - struct { - grub_uint8_t character_count; - grub_uint16_t str[15]; - } GRUB_PACKED volume_label; - } GRUB_PACKED type_specific; -} GRUB_PACKED; - -struct grub_fat_dir_node -{ - grub_uint32_t attr; - grub_uint32_t first_cluster; - grub_uint64_t file_size; - grub_uint64_t valid_size; - int have_stream; - int is_contiguous; -}; - -typedef struct grub_fat_dir_node grub_fat_dir_node_t; - -#else -struct grub_fat_dir_entry -{ - grub_uint8_t name[11]; - grub_uint8_t attr; - grub_uint8_t nt_reserved; - grub_uint8_t c_time_tenth; - grub_uint16_t c_time; - grub_uint16_t c_date; - grub_uint16_t a_date; - grub_uint16_t first_cluster_high; - grub_uint16_t w_time; - grub_uint16_t w_date; - grub_uint16_t first_cluster_low; - grub_uint32_t file_size; -} GRUB_PACKED; - -struct grub_fat_long_name_entry -{ - grub_uint8_t id; - grub_uint16_t name1[5]; - grub_uint8_t attr; - grub_uint8_t reserved; - grub_uint8_t checksum; - grub_uint16_t name2[6]; - grub_uint16_t first_cluster; - grub_uint16_t name3[2]; -} GRUB_PACKED; - -typedef struct grub_fat_dir_entry grub_fat_dir_node_t; - -#endif - -struct grub_fat_data -{ - int logical_sector_bits; - grub_uint32_t num_sectors; - - grub_uint32_t fat_sector; - grub_uint32_t sectors_per_fat; - int fat_size; - - grub_uint32_t root_cluster; -#ifndef MODE_EXFAT - grub_uint32_t root_sector; - grub_uint32_t num_root_sectors; -#endif - - int cluster_bits; - grub_uint32_t cluster_eof_mark; - grub_uint32_t cluster_sector; - grub_uint32_t num_clusters; - - grub_uint32_t uuid; -}; - -struct grub_fshelp_node { - grub_disk_t disk; - struct grub_fat_data *data; - - grub_uint8_t attr; -#ifndef MODE_EXFAT - grub_uint32_t file_size; -#else - grub_uint64_t file_size; -#endif - grub_uint32_t file_cluster; - grub_uint32_t cur_cluster_num; - grub_uint32_t cur_cluster; - -#ifdef MODE_EXFAT - int is_contiguous; -#endif -}; - -static grub_dl_t my_mod; - -#ifndef MODE_EXFAT -static int -fat_log2 (unsigned x) -{ - int i; - - if (x == 0) - return -1; - - for (i = 0; (x & 1) == 0; i++) - x >>= 1; - - if (x != 1) - return -1; - - return i; -} -#endif - -static struct grub_fat_data * -grub_fat_mount (grub_disk_t disk) -{ - grub_current_fat_bpb_t bpb; - struct grub_fat_data *data = 0; - grub_uint32_t first_fat, magic; - - if (! disk) - goto fail; - - data = (struct grub_fat_data *) grub_malloc (sizeof (*data)); - if (! data) - goto fail; - - /* Read the BPB. */ - if (grub_disk_read (disk, 0, 0, sizeof (bpb), &bpb)) - goto fail; - -#ifdef MODE_EXFAT - if (grub_memcmp ((const char *) bpb.oem_name, "EXFAT ", - sizeof (bpb.oem_name)) != 0) - goto fail; -#endif - - /* Get the sizes of logical sectors and clusters. */ -#ifdef MODE_EXFAT - data->logical_sector_bits = bpb.bytes_per_sector_shift; -#else - data->logical_sector_bits = - fat_log2 (grub_le_to_cpu16 (bpb.bytes_per_sector)); -#endif - if (data->logical_sector_bits < GRUB_DISK_SECTOR_BITS - || data->logical_sector_bits >= 16) - goto fail; - data->logical_sector_bits -= GRUB_DISK_SECTOR_BITS; - -#ifdef MODE_EXFAT - data->cluster_bits = bpb.sectors_per_cluster_shift; -#else - data->cluster_bits = fat_log2 (bpb.sectors_per_cluster); -#endif - if (data->cluster_bits < 0 || data->cluster_bits > 25) - goto fail; - data->cluster_bits += data->logical_sector_bits; - - /* Get information about FATs. */ -#ifdef MODE_EXFAT - data->fat_sector = (grub_le_to_cpu32 (bpb.num_reserved_sectors) - << data->logical_sector_bits); -#else - data->fat_sector = (grub_le_to_cpu16 (bpb.num_reserved_sectors) - << data->logical_sector_bits); -#endif - if (data->fat_sector == 0) - goto fail; - -#ifdef MODE_EXFAT - data->sectors_per_fat = (grub_le_to_cpu32 (bpb.sectors_per_fat) - << data->logical_sector_bits); -#else - data->sectors_per_fat = ((bpb.sectors_per_fat_16 - ? grub_le_to_cpu16 (bpb.sectors_per_fat_16) - : grub_le_to_cpu32 (bpb.version_specific.fat32.sectors_per_fat_32)) - << data->logical_sector_bits); -#endif - if (data->sectors_per_fat == 0) - goto fail; - - /* Get the number of sectors in this volume. */ -#ifdef MODE_EXFAT - data->num_sectors = ((grub_le_to_cpu64 (bpb.num_total_sectors)) - << data->logical_sector_bits); -#else - data->num_sectors = ((bpb.num_total_sectors_16 - ? grub_le_to_cpu16 (bpb.num_total_sectors_16) - : grub_le_to_cpu32 (bpb.num_total_sectors_32)) - << data->logical_sector_bits); -#endif - if (data->num_sectors == 0) - goto fail; - - /* Get information about the root directory. */ - if (bpb.num_fats == 0) - goto fail; - -#ifndef MODE_EXFAT - data->root_sector = data->fat_sector + bpb.num_fats * data->sectors_per_fat; - data->num_root_sectors - = ((((grub_uint32_t) grub_le_to_cpu16 (bpb.num_root_entries) - * sizeof (struct grub_fat_dir_entry) - + grub_le_to_cpu16 (bpb.bytes_per_sector) - 1) - >> (data->logical_sector_bits + GRUB_DISK_SECTOR_BITS)) - << (data->logical_sector_bits)); -#endif - -#ifdef MODE_EXFAT - data->cluster_sector = (grub_le_to_cpu32 (bpb.cluster_offset) - << data->logical_sector_bits); - data->num_clusters = (grub_le_to_cpu32 (bpb.cluster_count) - << data->logical_sector_bits); -#else - data->cluster_sector = data->root_sector + data->num_root_sectors; - data->num_clusters = (((data->num_sectors - data->cluster_sector) - >> data->cluster_bits) - + 2); -#endif - - if (data->num_clusters <= 2) - goto fail; - -#ifdef MODE_EXFAT - { - /* exFAT. */ - data->root_cluster = grub_le_to_cpu32 (bpb.root_cluster); - data->fat_size = 32; - data->cluster_eof_mark = 0xffffffff; - - if ((bpb.volume_flags & grub_cpu_to_le16_compile_time (0x1)) - && bpb.num_fats > 1) - data->fat_sector += data->sectors_per_fat; - } -#else - if (! bpb.sectors_per_fat_16) - { - /* FAT32. */ - grub_uint16_t flags = grub_le_to_cpu16 (bpb.version_specific.fat32.extended_flags); - - data->root_cluster = grub_le_to_cpu32 (bpb.version_specific.fat32.root_cluster); - data->fat_size = 32; - data->cluster_eof_mark = 0x0ffffff8; - - if (flags & 0x80) - { - /* Get an active FAT. */ - unsigned active_fat = flags & 0xf; - - if (active_fat > bpb.num_fats) - goto fail; - - data->fat_sector += active_fat * data->sectors_per_fat; - } - - if (bpb.num_root_entries != 0 || bpb.version_specific.fat32.fs_version != 0) - goto fail; - } - else - { - /* FAT12 or FAT16. */ - data->root_cluster = ~0U; - - if (data->num_clusters <= 4085 + 2) - { - /* FAT12. */ - data->fat_size = 12; - data->cluster_eof_mark = 0x0ff8; - } - else - { - /* FAT16. */ - data->fat_size = 16; - data->cluster_eof_mark = 0xfff8; - } - } -#endif - - /* More sanity checks. */ - if (data->num_sectors <= data->fat_sector) - goto fail; - - if (grub_disk_read (disk, - data->fat_sector, - 0, - sizeof (first_fat), - &first_fat)) - goto fail; - - first_fat = grub_le_to_cpu32 (first_fat); - - if (data->fat_size == 32) - { - first_fat &= 0x0fffffff; - magic = 0x0fffff00; - } - else if (data->fat_size == 16) - { - first_fat &= 0x0000ffff; - magic = 0xff00; - } - else - { - first_fat &= 0x00000fff; - magic = 0x0f00; - } - - /* Serial number. */ -#ifdef MODE_EXFAT - data->uuid = grub_le_to_cpu32 (bpb.num_serial); -#else - if (bpb.sectors_per_fat_16) - data->uuid = grub_le_to_cpu32 (bpb.version_specific.fat12_or_fat16.num_serial); - else - data->uuid = grub_le_to_cpu32 (bpb.version_specific.fat32.num_serial); -#endif - -#ifndef MODE_EXFAT - /* Ignore the 3rd bit, because some BIOSes assigns 0xF0 to the media - descriptor, even if it is a so-called superfloppy (e.g. an USB key). - The check may be too strict for this kind of stupid BIOSes, as - they overwrite the media descriptor. */ - if ((first_fat | 0x8) != (magic | bpb.media | 0x8)) - goto fail; -#else - (void) magic; -#endif - - return data; - - fail: - - grub_free (data); - grub_error (GRUB_ERR_BAD_FS, "not a FAT filesystem"); - return 0; -} - -static grub_ssize_t -grub_fat_read_data (grub_disk_t disk, grub_fshelp_node_t node, - grub_disk_read_hook_t read_hook, void *read_hook_data, - grub_off_t offset, grub_size_t len, char *buf) -{ - grub_size_t size; - grub_uint32_t logical_cluster; - unsigned logical_cluster_bits; - grub_ssize_t ret = 0; - unsigned long sector; - -#ifndef MODE_EXFAT - /* This is a special case. FAT12 and FAT16 doesn't have the root directory - in clusters. */ - if (node->file_cluster == ~0U) - { - size = (node->data->num_root_sectors << GRUB_DISK_SECTOR_BITS) - offset; - if (size > len) - size = len; - - if (grub_disk_read (disk, node->data->root_sector, offset, size, buf)) - return -1; - - return size; - } -#endif - -#ifdef MODE_EXFAT - if (node->is_contiguous) - { - /* Read the data here. */ - sector = (node->data->cluster_sector - + ((node->file_cluster - 2) - << node->data->cluster_bits)); - - disk->read_hook = read_hook; - disk->read_hook_data = read_hook_data; - grub_disk_read (disk, sector + (offset >> GRUB_DISK_SECTOR_BITS), - offset & (GRUB_DISK_SECTOR_SIZE - 1), len, buf); - disk->read_hook = 0; - if (grub_errno) - return -1; - - return len; - } -#endif - - /* Calculate the logical cluster number and offset. */ - logical_cluster_bits = (node->data->cluster_bits - + GRUB_DISK_SECTOR_BITS); - logical_cluster = offset >> logical_cluster_bits; - offset &= (1ULL << logical_cluster_bits) - 1; - - if (logical_cluster < node->cur_cluster_num) - { - node->cur_cluster_num = 0; - node->cur_cluster = node->file_cluster; - } - - while (len) - { - while (logical_cluster > node->cur_cluster_num) - { - /* Find next cluster. */ - grub_uint32_t next_cluster; - grub_uint32_t fat_offset; - - switch (node->data->fat_size) - { - case 32: - fat_offset = node->cur_cluster << 2; - break; - case 16: - fat_offset = node->cur_cluster << 1; - break; - default: - /* case 12: */ - fat_offset = node->cur_cluster + (node->cur_cluster >> 1); - break; - } - - /* Read the FAT. */ - if (grub_disk_read (disk, node->data->fat_sector, fat_offset, - (node->data->fat_size + 7) >> 3, - (char *) &next_cluster)) - return -1; - - next_cluster = grub_le_to_cpu32 (next_cluster); - switch (node->data->fat_size) - { - case 16: - next_cluster &= 0xFFFF; - break; - case 12: - if (node->cur_cluster & 1) - next_cluster >>= 4; - - next_cluster &= 0x0FFF; - break; - } - - grub_dprintf ("fat", "fat_size=%d, next_cluster=%u\n", - node->data->fat_size, next_cluster); - - /* Check the end. */ - if (next_cluster >= node->data->cluster_eof_mark) - return ret; - - if (next_cluster < 2 || next_cluster >= node->data->num_clusters) - { - grub_error (GRUB_ERR_BAD_FS, "invalid cluster %u", - next_cluster); - return -1; - } - - node->cur_cluster = next_cluster; - node->cur_cluster_num++; - } - - /* Read the data here. */ - sector = (node->data->cluster_sector - + ((node->cur_cluster - 2) - << node->data->cluster_bits)); - size = (1 << logical_cluster_bits) - offset; - if (size > len) - size = len; - - disk->read_hook = read_hook; - disk->read_hook_data = read_hook_data; - grub_disk_read (disk, sector, offset, size, buf); - disk->read_hook = 0; - if (grub_errno) - return -1; - - len -= size; - buf += size; - ret += size; - logical_cluster++; - offset = 0; - } - - return ret; -} - -struct grub_fat_iterate_context -{ -#ifdef MODE_EXFAT - struct grub_fat_dir_node dir; -#else - struct grub_fat_dir_entry dir; -#endif - char *filename; - grub_uint16_t *unibuf; - grub_ssize_t offset; -}; - -static grub_err_t -grub_fat_iterate_init (struct grub_fat_iterate_context *ctxt) -{ - ctxt->offset = -sizeof (struct grub_fat_dir_entry); - -#ifndef MODE_EXFAT - /* Allocate space enough to hold a long name. */ - ctxt->filename = grub_malloc (0x40 * 13 * GRUB_MAX_UTF8_PER_UTF16 + 1); - ctxt->unibuf = (grub_uint16_t *) grub_malloc (0x40 * 13 * 2); -#else - ctxt->unibuf = grub_malloc (15 * 256 * 2); - ctxt->filename = grub_malloc (15 * 256 * GRUB_MAX_UTF8_PER_UTF16 + 1); -#endif - - if (! ctxt->filename || ! ctxt->unibuf) - { - grub_free (ctxt->filename); - grub_free (ctxt->unibuf); - return grub_errno; - } - return GRUB_ERR_NONE; -} - -static void -grub_fat_iterate_fini (struct grub_fat_iterate_context *ctxt) -{ - grub_free (ctxt->filename); - grub_free (ctxt->unibuf); -} - -#ifdef MODE_EXFAT -static grub_err_t -grub_fat_iterate_dir_next (grub_fshelp_node_t node, - struct grub_fat_iterate_context *ctxt) -{ - grub_memset (&ctxt->dir, 0, sizeof (ctxt->dir)); - while (1) - { - struct grub_fat_dir_entry dir; - - ctxt->offset += sizeof (dir); - - if (grub_fat_read_data (node->disk, node, 0, 0, ctxt->offset, sizeof (dir), - (char *) &dir) - != sizeof (dir)) - break; - - if (dir.entry_type == 0) - break; - if (!(dir.entry_type & 0x80)) - continue; - - if (dir.entry_type == 0x85) - { - unsigned i, nsec, slots = 0; - - nsec = dir.type_specific.file.secondary_count; - - ctxt->dir.attr = grub_cpu_to_le16 (dir.type_specific.file.attr); - ctxt->dir.have_stream = 0; - for (i = 0; i < nsec; i++) - { - struct grub_fat_dir_entry sec; - ctxt->offset += sizeof (sec); - if (grub_fat_read_data (node->disk, node, 0, 0, - ctxt->offset, sizeof (sec), (char *) &sec) - != sizeof (sec)) - break; - if (!(sec.entry_type & 0x80)) - continue; - if (!(sec.entry_type & 0x40)) - break; - switch (sec.entry_type) - { - case 0xc0: - ctxt->dir.first_cluster = grub_cpu_to_le32 (sec.type_specific.stream_extension.first_cluster); - ctxt->dir.valid_size - = grub_cpu_to_le64 (sec.type_specific.stream_extension.valid_size); - ctxt->dir.file_size - = grub_cpu_to_le64 (sec.type_specific.stream_extension.file_size); - ctxt->dir.have_stream = 1; - ctxt->dir.is_contiguous = !!(sec.type_specific.stream_extension.flags - & grub_cpu_to_le16_compile_time (FLAG_CONTIGUOUS)); - break; - case 0xc1: - { - int j; - for (j = 0; j < 15; j++) - ctxt->unibuf[slots * 15 + j] - = grub_le_to_cpu16 (sec.type_specific.file_name.str[j]); - slots++; - } - break; - default: - grub_dprintf ("exfat", "unknown secondary type 0x%02x\n", - sec.entry_type); - } - } - - if (i != nsec) - { - ctxt->offset -= sizeof (dir); - continue; - } - - *grub_utf16_to_utf8 ((grub_uint8_t *) ctxt->filename, ctxt->unibuf, - slots * 15) = '\0'; - - return 0; - } - /* Allocation bitmap. */ - if (dir.entry_type == 0x81) - continue; - /* Upcase table. */ - if (dir.entry_type == 0x82) - continue; - /* Volume label. */ - if (dir.entry_type == 0x83) - continue; - grub_dprintf ("exfat", "unknown primary type 0x%02x\n", - dir.entry_type); - } - return grub_errno ? : GRUB_ERR_EOF; -} - -#else - -static grub_err_t -grub_fat_iterate_dir_next (grub_fshelp_node_t node, - struct grub_fat_iterate_context *ctxt) -{ - char *filep = 0; - int checksum = -1; - int slot = -1, slots = -1; - - while (1) - { - unsigned i; - - /* Adjust the offset. */ - ctxt->offset += sizeof (ctxt->dir); - - /* Read a directory entry. */ - if (grub_fat_read_data (node->disk, node, 0, 0, - ctxt->offset, sizeof (ctxt->dir), - (char *) &ctxt->dir) - != sizeof (ctxt->dir) || ctxt->dir.name[0] == 0) - break; - - /* Handle long name entries. */ - if (ctxt->dir.attr == GRUB_FAT_ATTR_LONG_NAME) - { - struct grub_fat_long_name_entry *long_name - = (struct grub_fat_long_name_entry *) &ctxt->dir; - grub_uint8_t id = long_name->id; - - if (id & 0x40) - { - id &= 0x3f; - slots = slot = id; - checksum = long_name->checksum; - } - - if (id != slot || slot == 0 || checksum != long_name->checksum) - { - checksum = -1; - continue; - } - - slot--; - grub_memcpy (ctxt->unibuf + slot * 13, long_name->name1, 5 * 2); - grub_memcpy (ctxt->unibuf + slot * 13 + 5, long_name->name2, 6 * 2); - grub_memcpy (ctxt->unibuf + slot * 13 + 11, long_name->name3, 2 * 2); - continue; - } - - /* Check if this entry is valid. */ - if (ctxt->dir.name[0] == 0xe5 || (ctxt->dir.attr & ~GRUB_FAT_ATTR_VALID)) - continue; - - /* This is a workaround for Japanese. */ - if (ctxt->dir.name[0] == 0x05) - ctxt->dir.name[0] = 0xe5; - - if (checksum != -1 && slot == 0) - { - grub_uint8_t sum; - - for (sum = 0, i = 0; i < sizeof (ctxt->dir.name); i++) - sum = ((sum >> 1) | (sum << 7)) + ctxt->dir.name[i]; - - if (sum == checksum) - { - int u; - - for (u = 0; u < slots * 13; u++) - ctxt->unibuf[u] = grub_le_to_cpu16 (ctxt->unibuf[u]); - - *grub_utf16_to_utf8 ((grub_uint8_t *) ctxt->filename, - ctxt->unibuf, - slots * 13) = '\0'; - - return GRUB_ERR_NONE; - } - - checksum = -1; - } - - /* Convert the 8.3 file name. */ - filep = ctxt->filename; - if (ctxt->dir.attr & GRUB_FAT_ATTR_VOLUME_ID) - { - for (i = 0; i < sizeof (ctxt->dir.name) && ctxt->dir.name[i]; i++) - *filep++ = ctxt->dir.name[i]; - while (i > 0 && ctxt->dir.name[i - 1] == ' ') - { - filep--; - i--; - } - } - else - { - for (i = 0; i < 8 && ctxt->dir.name[i]; i++) - *filep++ = grub_tolower (ctxt->dir.name[i]); - while (i > 0 && ctxt->dir.name[i - 1] == ' ') - { - filep--; - i--; - } - - /* XXX should we check that dir position is 0 or 1? */ - if (i > 2 || filep[0] != '.' || (i == 2 && filep[1] != '.')) - *filep++ = '.'; - - for (i = 8; i < 11 && ctxt->dir.name[i]; i++) - *filep++ = grub_tolower (ctxt->dir.name[i]); - while (i > 8 && ctxt->dir.name[i - 1] == ' ') - { - filep--; - i--; - } - - if (i == 8) - filep--; - } - *filep = '\0'; - return GRUB_ERR_NONE; - } - - return grub_errno ? : GRUB_ERR_EOF; -} - -#endif - -static grub_err_t lookup_file (grub_fshelp_node_t node, - const char *name, - grub_fshelp_node_t *foundnode, - enum grub_fshelp_filetype *foundtype) -{ - grub_err_t err; - struct grub_fat_iterate_context ctxt; - - err = grub_fat_iterate_init (&ctxt); - if (err) - return err; - - while (!(err = grub_fat_iterate_dir_next (node, &ctxt))) - { - -#ifdef MODE_EXFAT - if (!ctxt.dir.have_stream) - continue; -#else - if (ctxt.dir.attr & GRUB_FAT_ATTR_VOLUME_ID) - continue; -#endif - - if (grub_strcasecmp (name, ctxt.filename) == 0) - { - *foundnode = grub_malloc (sizeof (struct grub_fshelp_node)); - if (!*foundnode) - return grub_errno; - (*foundnode)->attr = ctxt.dir.attr; -#ifdef MODE_EXFAT - (*foundnode)->file_size = ctxt.dir.file_size; - (*foundnode)->file_cluster = ctxt.dir.first_cluster; - (*foundnode)->is_contiguous = ctxt.dir.is_contiguous; -#else - (*foundnode)->file_size = grub_le_to_cpu32 (ctxt.dir.file_size); - (*foundnode)->file_cluster = ((grub_le_to_cpu16 (ctxt.dir.first_cluster_high) << 16) - | grub_le_to_cpu16 (ctxt.dir.first_cluster_low)); - /* If directory points to root, starting cluster is 0 */ - if (!(*foundnode)->file_cluster) - (*foundnode)->file_cluster = node->data->root_cluster; -#endif - (*foundnode)->cur_cluster_num = ~0U; - (*foundnode)->data = node->data; - (*foundnode)->disk = node->disk; - - *foundtype = ((*foundnode)->attr & GRUB_FAT_ATTR_DIRECTORY) ? GRUB_FSHELP_DIR : GRUB_FSHELP_REG; - - grub_fat_iterate_fini (&ctxt); - return GRUB_ERR_NONE; - } - } - - grub_fat_iterate_fini (&ctxt); - if (err == GRUB_ERR_EOF) - err = 0; - - return err; - -} - -static grub_err_t -grub_fat_dir (grub_device_t device, const char *path, grub_fs_dir_hook_t hook, - void *hook_data) -{ - struct grub_fat_data *data = 0; - grub_disk_t disk = device->disk; - grub_fshelp_node_t found = NULL; - grub_err_t err; - struct grub_fat_iterate_context ctxt; - - grub_dl_ref (my_mod); - - data = grub_fat_mount (disk); - if (! data) - goto fail; - - struct grub_fshelp_node root = { - .data = data, - .disk = disk, - .attr = GRUB_FAT_ATTR_DIRECTORY, - .file_size = 0, - .file_cluster = data->root_cluster, - .cur_cluster_num = ~0U, - .cur_cluster = 0, -#ifdef MODE_EXFAT - .is_contiguous = 0, -#endif - }; - - err = grub_fshelp_find_file_lookup (path, &root, &found, lookup_file, NULL, GRUB_FSHELP_DIR); - if (err) - goto fail; - - err = grub_fat_iterate_init (&ctxt); - if (err) - goto fail; - - while (!(err = grub_fat_iterate_dir_next (found, &ctxt))) - { - struct grub_dirhook_info info; - grub_memset (&info, 0, sizeof (info)); - - info.dir = !! (ctxt.dir.attr & GRUB_FAT_ATTR_DIRECTORY); - info.case_insensitive = 1; -#ifdef MODE_EXFAT - if (!ctxt.dir.have_stream) - continue; -#else - if (ctxt.dir.attr & GRUB_FAT_ATTR_VOLUME_ID) - continue; -#endif - - if (hook (ctxt.filename, &info, hook_data)) - break; - } - grub_fat_iterate_fini (&ctxt); - if (err == GRUB_ERR_EOF) - err = 0; - - fail: - if (found != &root) - grub_free (found); - - grub_free (data); - - grub_dl_unref (my_mod); - - return grub_errno; -} - -static grub_err_t -grub_fat_open (grub_file_t file, const char *name) -{ - struct grub_fat_data *data = 0; - grub_fshelp_node_t found = NULL; - grub_err_t err; - grub_disk_t disk = file->device->disk; - - grub_dl_ref (my_mod); - - data = grub_fat_mount (disk); - if (! data) - goto fail; - - struct grub_fshelp_node root = { - .data = data, - .disk = disk, - .attr = GRUB_FAT_ATTR_DIRECTORY, - .file_size = 0, - .file_cluster = data->root_cluster, - .cur_cluster_num = ~0U, - .cur_cluster = 0, -#ifdef MODE_EXFAT - .is_contiguous = 0, -#endif - }; - - err = grub_fshelp_find_file_lookup (name, &root, &found, lookup_file, NULL, GRUB_FSHELP_REG); - if (err) - goto fail; - - file->data = found; - file->size = found->file_size; - - return GRUB_ERR_NONE; - - fail: - - if (found != &root) - grub_free (found); - - grub_free (data); - - grub_dl_unref (my_mod); - - return grub_errno; -} - -static grub_ssize_t -grub_fat_read (grub_file_t file, char *buf, grub_size_t len) -{ - return grub_fat_read_data (file->device->disk, file->data, - file->read_hook, file->read_hook_data, - file->offset, len, buf); -} - -static grub_err_t -grub_fat_close (grub_file_t file) -{ - grub_fshelp_node_t node = file->data; - - grub_free (node->data); - grub_free (node); - - grub_dl_unref (my_mod); - - return grub_errno; -} - -#ifdef MODE_EXFAT -static grub_err_t -grub_fat_label (grub_device_t device, char **label) -{ - struct grub_fat_dir_entry dir; - grub_ssize_t offset = -sizeof(dir); - grub_disk_t disk = device->disk; - struct grub_fshelp_node root = { - .disk = disk, - .attr = GRUB_FAT_ATTR_DIRECTORY, - .file_size = 0, - .cur_cluster_num = ~0U, - .cur_cluster = 0, - .is_contiguous = 0, - }; - - root.data = grub_fat_mount (disk); - if (! root.data) - return grub_errno; - - root.file_cluster = root.data->root_cluster; - - *label = NULL; - - while (1) - { - offset += sizeof (dir); - - if (grub_fat_read_data (disk, &root, 0, 0, - offset, sizeof (dir), (char *) &dir) - != sizeof (dir)) - break; - - if (dir.entry_type == 0) - break; - if (!(dir.entry_type & 0x80)) - continue; - - /* Volume label. */ - if (dir.entry_type == 0x83) - { - grub_size_t chc; - grub_uint16_t t[ARRAY_SIZE (dir.type_specific.volume_label.str)]; - grub_size_t i; - *label = grub_malloc (ARRAY_SIZE (dir.type_specific.volume_label.str) - * GRUB_MAX_UTF8_PER_UTF16 + 1); - if (!*label) - { - grub_free (root.data); - return grub_errno; - } - chc = dir.type_specific.volume_label.character_count; - if (chc > ARRAY_SIZE (dir.type_specific.volume_label.str)) - chc = ARRAY_SIZE (dir.type_specific.volume_label.str); - for (i = 0; i < chc; i++) - t[i] = grub_le_to_cpu16 (dir.type_specific.volume_label.str[i]); - *grub_utf16_to_utf8 ((grub_uint8_t *) *label, t, chc) = '\0'; - } - } - - grub_free (root.data); - return grub_errno; -} - -#else - -static grub_err_t -grub_fat_label (grub_device_t device, char **label) -{ - grub_disk_t disk = device->disk; - grub_err_t err; - struct grub_fat_iterate_context ctxt; - struct grub_fshelp_node root = { - .disk = disk, - .attr = GRUB_FAT_ATTR_DIRECTORY, - .file_size = 0, - .cur_cluster_num = ~0U, - .cur_cluster = 0, - }; - - *label = 0; - - grub_dl_ref (my_mod); - - root.data = grub_fat_mount (disk); - if (! root.data) - goto fail; - - root.file_cluster = root.data->root_cluster; - - err = grub_fat_iterate_init (&ctxt); - if (err) - goto fail; - - while (!(err = grub_fat_iterate_dir_next (&root, &ctxt))) - if ((ctxt.dir.attr & ~GRUB_FAT_ATTR_ARCHIVE) == GRUB_FAT_ATTR_VOLUME_ID) - { - *label = grub_strdup (ctxt.filename); - break; - } - - grub_fat_iterate_fini (&ctxt); - - fail: - - grub_dl_unref (my_mod); - - grub_free (root.data); - - return grub_errno; -} - -#endif - -static grub_err_t -grub_fat_uuid (grub_device_t device, char **uuid) -{ - struct grub_fat_data *data; - grub_disk_t disk = device->disk; - - grub_dl_ref (my_mod); - - data = grub_fat_mount (disk); - if (data) - { - char *ptr; - *uuid = grub_xasprintf ("%04x-%04x", - (grub_uint16_t) (data->uuid >> 16), - (grub_uint16_t) data->uuid); - for (ptr = *uuid; ptr && *ptr; ptr++) - *ptr = grub_toupper (*ptr); - } - else - *uuid = NULL; - - grub_dl_unref (my_mod); - - grub_free (data); - - return grub_errno; -} - -#ifdef GRUB_UTIL -#ifndef MODE_EXFAT -grub_disk_addr_t -grub_fat_get_cluster_sector (grub_disk_t disk, grub_uint64_t *sec_per_lcn) -#else -grub_disk_addr_t - grub_exfat_get_cluster_sector (grub_disk_t disk, grub_uint64_t *sec_per_lcn) -#endif -{ - grub_disk_addr_t ret; - struct grub_fat_data *data; - data = grub_fat_mount (disk); - if (!data) - return 0; - ret = data->cluster_sector; - - *sec_per_lcn = 1ULL << data->cluster_bits; - - grub_free (data); - return ret; -} -#endif - -static struct grub_fs grub_fat_fs = - { -#ifdef MODE_EXFAT - .name = "exfat", -#else - .name = "fat", -#endif - .fs_dir = grub_fat_dir, - .fs_open = grub_fat_open, - .fs_read = grub_fat_read, - .fs_close = grub_fat_close, - .fs_label = grub_fat_label, - .fs_uuid = grub_fat_uuid, -#ifdef GRUB_UTIL -#ifdef MODE_EXFAT - /* ExFAT BPB is 30 larger than FAT32 one. */ - .reserved_first_sector = 0, -#else - .reserved_first_sector = 1, -#endif - .blocklist_install = 1, -#endif - .next = 0 - }; - -#ifdef MODE_EXFAT -GRUB_MOD_INIT(exfat) -#else -GRUB_MOD_INIT(fat) -#endif -{ - COMPILE_TIME_ASSERT (sizeof (struct grub_fat_dir_entry) == 32); - grub_fs_register (&grub_fat_fs); - my_mod = mod; -} -#ifdef MODE_EXFAT -GRUB_MOD_FINI(exfat) -#else -GRUB_MOD_FINI(fat) -#endif -{ - grub_fs_unregister (&grub_fat_fs); -} - diff --git a/thirdparty/grub-2.04/grub-core/fs/fshelp.c b/thirdparty/grub-2.04/grub-core/fs/fshelp.c deleted file mode 100644 index 4c902adf3..000000000 --- a/thirdparty/grub-2.04/grub-core/fs/fshelp.c +++ /dev/null @@ -1,429 +0,0 @@ -/* fshelp.c -- Filesystem helper functions */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2004,2005,2006,2007,2008 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -typedef int (*iterate_dir_func) (grub_fshelp_node_t dir, - grub_fshelp_iterate_dir_hook_t hook, - void *data); -typedef grub_err_t (*lookup_file_func) (grub_fshelp_node_t dir, - const char *name, - grub_fshelp_node_t *foundnode, - enum grub_fshelp_filetype *foundtype); -typedef char *(*read_symlink_func) (grub_fshelp_node_t node); - -struct stack_element { - struct stack_element *parent; - grub_fshelp_node_t node; - enum grub_fshelp_filetype type; -}; - -/* Context for grub_fshelp_find_file. */ -struct grub_fshelp_find_file_ctx -{ - /* Inputs. */ - const char *path; - grub_fshelp_node_t rootnode; - - /* Global options. */ - int symlinknest; - - /* Current file being traversed and its parents. */ - struct stack_element *currnode; -}; - -/* Helper for find_file_iter. */ -static void -free_node (grub_fshelp_node_t node, struct grub_fshelp_find_file_ctx *ctx) -{ - if (node != ctx->rootnode) - grub_free (node); -} - -static void -pop_element (struct grub_fshelp_find_file_ctx *ctx) -{ - struct stack_element *el; - el = ctx->currnode; - ctx->currnode = el->parent; - free_node (el->node, ctx); - grub_free (el); -} - -static void -free_stack (struct grub_fshelp_find_file_ctx *ctx) -{ - while (ctx->currnode) - pop_element (ctx); -} - -static void -go_up_a_level (struct grub_fshelp_find_file_ctx *ctx) -{ - if (!ctx->currnode->parent) - return; - pop_element (ctx); -} - -static grub_err_t -push_node (struct grub_fshelp_find_file_ctx *ctx, grub_fshelp_node_t node, enum grub_fshelp_filetype filetype) -{ - struct stack_element *nst; - nst = grub_malloc (sizeof (*nst)); - if (!nst) - return grub_errno; - nst->node = node; - nst->type = filetype & ~GRUB_FSHELP_CASE_INSENSITIVE; - nst->parent = ctx->currnode; - ctx->currnode = nst; - return GRUB_ERR_NONE; -} - -static grub_err_t -go_to_root (struct grub_fshelp_find_file_ctx *ctx) -{ - free_stack (ctx); - return push_node (ctx, ctx->rootnode, GRUB_FSHELP_DIR); -} - -struct grub_fshelp_find_file_iter_ctx -{ - const char *name; - grub_fshelp_node_t *foundnode; - enum grub_fshelp_filetype *foundtype; -}; - -/* Helper for grub_fshelp_find_file. */ -static int -find_file_iter (const char *filename, enum grub_fshelp_filetype filetype, - grub_fshelp_node_t node, void *data) -{ - struct grub_fshelp_find_file_iter_ctx *ctx = data; - - if (filetype == GRUB_FSHELP_UNKNOWN || - ((filetype & GRUB_FSHELP_CASE_INSENSITIVE) - ? grub_strcasecmp (ctx->name, filename) - : grub_strcmp (ctx->name, filename))) - { - grub_free (node); - return 0; - } - - /* The node is found, stop iterating over the nodes. */ - *ctx->foundnode = node; - *ctx->foundtype = filetype; - return 1; -} - -static grub_err_t -directory_find_file (grub_fshelp_node_t node, const char *name, grub_fshelp_node_t *foundnode, - enum grub_fshelp_filetype *foundtype, iterate_dir_func iterate_dir) -{ - int found; - struct grub_fshelp_find_file_iter_ctx ctx = { - .foundnode = foundnode, - .foundtype = foundtype, - .name = name - }; - found = iterate_dir (node, find_file_iter, &ctx); - if (! found) - { - if (grub_errno) - return grub_errno; - } - return GRUB_ERR_NONE; -} - -static grub_err_t -find_file (char *currpath, - iterate_dir_func iterate_dir, lookup_file_func lookup_file, - read_symlink_func read_symlink, - struct grub_fshelp_find_file_ctx *ctx) -{ - char *name, *next; - grub_err_t err; - for (name = currpath; ; name = next) - { - char c; - grub_fshelp_node_t foundnode = NULL; - enum grub_fshelp_filetype foundtype = 0; - - /* Remove all leading slashes. */ - while (*name == '/') - name++; - - /* Found the node! */ - if (! *name) - return 0; - - /* Extract the actual part from the pathname. */ - for (next = name; *next && *next != '/'; next++); - - /* At this point it is expected that the current node is a - directory, check if this is true. */ - if (ctx->currnode->type != GRUB_FSHELP_DIR) - return grub_error (GRUB_ERR_BAD_FILE_TYPE, N_("not a directory")); - - /* Don't rely on fs providing actual . in the listing. */ - if (next - name == 1 && name[0] == '.') - continue; - - /* Don't rely on fs providing actual .. in the listing. */ - if (next - name == 2 && name[0] == '.' && name[1] == '.') - { - go_up_a_level (ctx); - continue; - } - - /* Iterate over the directory. */ - c = *next; - *next = '\0'; - if (lookup_file) - err = lookup_file (ctx->currnode->node, name, &foundnode, &foundtype); - else - err = directory_find_file (ctx->currnode->node, name, &foundnode, &foundtype, iterate_dir); - *next = c; - - if (err) - return err; - - if (!foundnode) - break; - - push_node (ctx, foundnode, foundtype); - - /* Read in the symlink and follow it. */ - if (ctx->currnode->type == GRUB_FSHELP_SYMLINK) - { - char *symlink; - - /* Test if the symlink does not loop. */ - if (++ctx->symlinknest == 8) - return grub_error (GRUB_ERR_SYMLINK_LOOP, - N_("too deep nesting of symlinks")); - - symlink = read_symlink (ctx->currnode->node); - - if (!symlink) - return grub_errno; - - /* The symlink is an absolute path, go back to the root inode. */ - if (symlink[0] == '/') - { - err = go_to_root (ctx); - if (err) - return err; - } - else - { - /* Get from symlink to containing directory. */ - go_up_a_level (ctx); - } - - - /* Lookup the node the symlink points to. */ - find_file (symlink, iterate_dir, lookup_file, read_symlink, ctx); - grub_free (symlink); - - if (grub_errno) - return grub_errno; - } - } - - return grub_error (GRUB_ERR_FILE_NOT_FOUND, N_("file `%s' not found"), - ctx->path); -} - -static grub_err_t -grub_fshelp_find_file_real (const char *path, grub_fshelp_node_t rootnode, - grub_fshelp_node_t *foundnode, - iterate_dir_func iterate_dir, - lookup_file_func lookup_file, - read_symlink_func read_symlink, - enum grub_fshelp_filetype expecttype) -{ - struct grub_fshelp_find_file_ctx ctx = { - .path = path, - .rootnode = rootnode, - .symlinknest = 0, - .currnode = 0 - }; - grub_err_t err; - enum grub_fshelp_filetype foundtype; - char *duppath; - - if (!path || path[0] != '/') - { - return grub_error (GRUB_ERR_BAD_FILENAME, N_("invalid file name `%s'"), path); - } - - err = go_to_root (&ctx); - if (err) - return err; - - duppath = grub_strdup (path); - if (!duppath) - return grub_errno; - err = find_file (duppath, iterate_dir, lookup_file, read_symlink, &ctx); - grub_free (duppath); - if (err) - { - free_stack (&ctx); - return err; - } - - *foundnode = ctx.currnode->node; - foundtype = ctx.currnode->type; - /* Avoid the node being freed. */ - ctx.currnode->node = 0; - free_stack (&ctx); - - /* Check if the node that was found was of the expected type. */ - if (expecttype == GRUB_FSHELP_REG && foundtype != expecttype) - return grub_error (GRUB_ERR_BAD_FILE_TYPE, N_("not a regular file")); - else if (expecttype == GRUB_FSHELP_DIR && foundtype != expecttype) - return grub_error (GRUB_ERR_BAD_FILE_TYPE, N_("not a directory")); - - return 0; -} - -/* Lookup the node PATH. The node ROOTNODE describes the root of the - directory tree. The node found is returned in FOUNDNODE, which is - either a ROOTNODE or a new malloc'ed node. ITERATE_DIR is used to - iterate over all directory entries in the current node. - READ_SYMLINK is used to read the symlink if a node is a symlink. - EXPECTTYPE is the type node that is expected by the called, an - error is generated if the node is not of the expected type. */ -grub_err_t -grub_fshelp_find_file (const char *path, grub_fshelp_node_t rootnode, - grub_fshelp_node_t *foundnode, - iterate_dir_func iterate_dir, - read_symlink_func read_symlink, - enum grub_fshelp_filetype expecttype) -{ - return grub_fshelp_find_file_real (path, rootnode, foundnode, - iterate_dir, NULL, - read_symlink, expecttype); - -} - -grub_err_t -grub_fshelp_find_file_lookup (const char *path, grub_fshelp_node_t rootnode, - grub_fshelp_node_t *foundnode, - lookup_file_func lookup_file, - read_symlink_func read_symlink, - enum grub_fshelp_filetype expecttype) -{ - return grub_fshelp_find_file_real (path, rootnode, foundnode, - NULL, lookup_file, - read_symlink, expecttype); - -} - -/* Read LEN bytes from the file NODE on disk DISK into the buffer BUF, - beginning with the block POS. READ_HOOK should be set before - reading a block from the file. READ_HOOK_DATA is passed through as - the DATA argument to READ_HOOK. GET_BLOCK is used to translate - file blocks to disk blocks. The file is FILESIZE bytes big and the - blocks have a size of LOG2BLOCKSIZE (in log2). */ -grub_ssize_t -grub_fshelp_read_file (grub_disk_t disk, grub_fshelp_node_t node, - grub_disk_read_hook_t read_hook, void *read_hook_data, - grub_off_t pos, grub_size_t len, char *buf, - grub_disk_addr_t (*get_block) (grub_fshelp_node_t node, - grub_disk_addr_t block), - grub_off_t filesize, int log2blocksize, - grub_disk_addr_t blocks_start) -{ - grub_disk_addr_t i, blockcnt; - int blocksize = 1 << (log2blocksize + GRUB_DISK_SECTOR_BITS); - - if (pos > filesize) - { - grub_error (GRUB_ERR_OUT_OF_RANGE, - N_("attempt to read past the end of file")); - return -1; - } - - /* Adjust LEN so it we can't read past the end of the file. */ - if (pos + len > filesize) - len = filesize - pos; - - blockcnt = ((len + pos) + blocksize - 1) >> (log2blocksize + GRUB_DISK_SECTOR_BITS); - - for (i = pos >> (log2blocksize + GRUB_DISK_SECTOR_BITS); i < blockcnt; i++) - { - grub_disk_addr_t blknr; - int blockoff = pos & (blocksize - 1); - int blockend = blocksize; - - int skipfirst = 0; - - blknr = get_block (node, i); - if (grub_errno) - return -1; - - blknr = blknr << log2blocksize; - - /* Last block. */ - if (i == blockcnt - 1) - { - blockend = (len + pos) & (blocksize - 1); - - /* The last portion is exactly blocksize. */ - if (! blockend) - blockend = blocksize; - } - - /* First block. */ - if (i == (pos >> (log2blocksize + GRUB_DISK_SECTOR_BITS))) - { - skipfirst = blockoff; - blockend -= skipfirst; - } - - /* If the block number is 0 this block is not stored on disk but - is zero filled instead. */ - if (blknr) - { - disk->read_hook = read_hook; - disk->read_hook_data = read_hook_data; - - grub_disk_read (disk, blknr + blocks_start, skipfirst, - blockend, buf); - disk->read_hook = 0; - if (grub_errno) - return -1; - } - else - grub_memset (buf, 0, blockend); - - buf += blocksize - skipfirst; - } - - return len; -} diff --git a/thirdparty/grub-2.04/grub-core/fs/hfs.c b/thirdparty/grub-2.04/grub-core/fs/hfs.c deleted file mode 100644 index ac0a40990..000000000 --- a/thirdparty/grub-2.04/grub-core/fs/hfs.c +++ /dev/null @@ -1,1443 +0,0 @@ -/* hfs.c - HFS. */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2004,2005,2006,2007,2008,2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -/* HFS is documented at - http://developer.apple.com/documentation/mac/Files/Files-2.html */ - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -#define GRUB_HFS_SBLOCK 2 -#define GRUB_HFS_EMBED_HFSPLUS_SIG 0x482B - -#define GRUB_HFS_BLKS (data->blksz >> 9) - -#define GRUB_HFS_NODE_LEAF 0xFF - -/* The two supported filesystems a record can have. */ -enum - { - GRUB_HFS_FILETYPE_DIR = 1, - GRUB_HFS_FILETYPE_FILE = 2 - }; - -/* Catalog node ID (CNID). */ -enum grub_hfs_cnid_type - { - GRUB_HFS_CNID_ROOT_PARENT = 1, - GRUB_HFS_CNID_ROOT = 2, - GRUB_HFS_CNID_EXT = 3, - GRUB_HFS_CNID_CAT = 4, - GRUB_HFS_CNID_BAD = 5 - }; - -/* A node descriptor. This is the header of every node. */ -struct grub_hfs_node -{ - grub_uint32_t next; - grub_uint32_t prev; - grub_uint8_t type; - grub_uint8_t level; - grub_uint16_t reccnt; - grub_uint16_t unused; -} GRUB_PACKED; - -/* The head of the B*-Tree. */ -struct grub_hfs_treeheader -{ - grub_uint16_t tree_depth; - /* The number of the first node. */ - grub_uint32_t root_node; - grub_uint32_t leaves; - grub_uint32_t first_leaf; - grub_uint32_t last_leaf; - grub_uint16_t node_size; - grub_uint16_t key_size; - grub_uint32_t nodes; - grub_uint32_t free_nodes; - grub_uint8_t unused[76]; -} GRUB_PACKED; - -/* The state of a mounted HFS filesystem. */ -struct grub_hfs_data -{ - struct grub_hfs_sblock sblock; - grub_disk_t disk; - grub_hfs_datarecord_t extents; - int fileid; - int size; - int ext_root; - int ext_size; - int cat_root; - int cat_size; - int blksz; - int log2_blksz; - int rootdir; -}; - -/* The key as used on disk in a catalog tree. This is used to lookup - file/directory nodes by parent directory ID and filename. */ -struct grub_hfs_catalog_key -{ - grub_uint8_t unused; - grub_uint32_t parent_dir; - - /* Filename length. */ - grub_uint8_t strlen; - - /* Filename. */ - grub_uint8_t str[31]; -} GRUB_PACKED; - -/* The key as used on disk in a extent overflow tree. Using this key - the extents can be looked up using a fileid and logical start block - as index. */ -struct grub_hfs_extent_key -{ - /* The kind of fork. This is used to store meta information like - icons, attributes, etc. We will only use the datafork, which is - 0. */ - grub_uint8_t forktype; - grub_uint32_t fileid; - grub_uint16_t first_block; -} GRUB_PACKED; - -/* A directory record. This is used to find out the directory ID. */ -struct grub_hfs_dirrec -{ - /* For a directory, type == 1. */ - grub_uint8_t type; - grub_uint8_t unused[5]; - grub_uint32_t dirid; - grub_uint32_t ctime; - grub_uint32_t mtime; -} GRUB_PACKED; - -/* Information about a file. */ -struct grub_hfs_filerec -{ - /* For a file, type == 2. */ - grub_uint8_t type; - grub_uint8_t unused[19]; - grub_uint32_t fileid; - grub_uint8_t unused2[2]; - grub_uint32_t size; - grub_uint8_t unused3[18]; - grub_uint32_t mtime; - grub_uint8_t unused4[22]; - - /* The first 3 extents of the file. The other extents can be found - in the extent overflow file. */ - grub_hfs_datarecord_t extents; -} GRUB_PACKED; - -/* A record descriptor, both key and data, used to pass to call back - functions. */ -struct grub_hfs_record -{ - void *key; - grub_size_t keylen; - void *data; - grub_size_t datalen; -}; - -static grub_dl_t my_mod; - -static int grub_hfs_find_node (struct grub_hfs_data *, char *, - grub_uint32_t, int, char *, grub_size_t); - -/* Find block BLOCK of the file FILE in the mounted UFS filesystem - DATA. The first 3 extents are described by DAT. If cache is set, - using caching to improve non-random reads. */ -static unsigned int -grub_hfs_block (struct grub_hfs_data *data, grub_hfs_datarecord_t dat, - int file, int block, int cache) -{ - grub_hfs_datarecord_t dr; - int pos = 0; - struct grub_hfs_extent_key key; - - int tree = 0; - static int cache_file = 0; - static int cache_pos = 0; - static grub_hfs_datarecord_t cache_dr; - - grub_memcpy (dr, dat, sizeof (dr)); - - key.forktype = 0; - key.fileid = grub_cpu_to_be32 (file); - - if (cache && cache_file == file && block > cache_pos) - { - pos = cache_pos; - key.first_block = grub_cpu_to_be16 (pos); - grub_memcpy (dr, cache_dr, sizeof (cache_dr)); - } - - for (;;) - { - int i; - - /* Try all 3 extents. */ - for (i = 0; i < 3; i++) - { - /* Check if the block is stored in this extent. */ - if (grub_be_to_cpu16 (dr[i].count) + pos > block) - { - int first = grub_be_to_cpu16 (dr[i].first_block); - - /* If the cache is enabled, store the current position - in the tree. */ - if (tree && cache) - { - cache_file = file; - cache_pos = pos; - grub_memcpy (cache_dr, dr, sizeof (cache_dr)); - } - - return (grub_be_to_cpu16 (data->sblock.first_block) - + (first + block - pos) * GRUB_HFS_BLKS); - } - - /* Try the next extent. */ - pos += grub_be_to_cpu16 (dr[i].count); - } - - /* Lookup the block in the extent overflow file. */ - key.first_block = grub_cpu_to_be16 (pos); - tree = 1; - grub_hfs_find_node (data, (char *) &key, data->ext_root, - 1, (char *) &dr, sizeof (dr)); - if (grub_errno) - return 0; - } -} - - -/* Read LEN bytes from the file described by DATA starting with byte - POS. Return the amount of read bytes in READ. */ -static grub_ssize_t -grub_hfs_read_file (struct grub_hfs_data *data, - grub_disk_read_hook_t read_hook, void *read_hook_data, - grub_uint32_t pos, grub_size_t len, char *buf) -{ - grub_off_t i; - grub_off_t blockcnt; - - /* Files are at most 2G/4G - 1 bytes on hfs. Avoid 64-bit division. - Moreover len > 0 as checked in upper layer. */ - blockcnt = (len + pos - 1) / data->blksz + 1; - - for (i = pos / data->blksz; i < blockcnt; i++) - { - grub_disk_addr_t blknr; - grub_off_t blockoff; - grub_off_t blockend = data->blksz; - - int skipfirst = 0; - - blockoff = pos % data->blksz; - - blknr = grub_hfs_block (data, data->extents, data->fileid, i, 1); - if (grub_errno) - return -1; - - /* Last block. */ - if (i == blockcnt - 1) - { - blockend = (len + pos) % data->blksz; - - /* The last portion is exactly EXT2_BLOCK_SIZE (data). */ - if (! blockend) - blockend = data->blksz; - } - - /* First block. */ - if (i == pos / data->blksz) - { - skipfirst = blockoff; - blockend -= skipfirst; - } - - /* If the block number is 0 this block is not stored on disk but - is zero filled instead. */ - if (blknr) - { - data->disk->read_hook = read_hook; - data->disk->read_hook_data = read_hook_data; - grub_disk_read (data->disk, blknr, skipfirst, - blockend, buf); - data->disk->read_hook = 0; - if (grub_errno) - return -1; - } - - buf += data->blksz - skipfirst; - } - - return len; -} - - -/* Mount the filesystem on the disk DISK. */ -static struct grub_hfs_data * -grub_hfs_mount (grub_disk_t disk) -{ - struct grub_hfs_data *data; - struct grub_hfs_catalog_key key; - struct grub_hfs_dirrec dir; - int first_block; - - struct - { - struct grub_hfs_node node; - struct grub_hfs_treeheader head; - } treehead; - - data = grub_malloc (sizeof (struct grub_hfs_data)); - if (!data) - return 0; - - /* Read the superblock. */ - if (grub_disk_read (disk, GRUB_HFS_SBLOCK, 0, - sizeof (struct grub_hfs_sblock), &data->sblock)) - goto fail; - - /* Check if this is a HFS filesystem. */ - if (grub_be_to_cpu16 (data->sblock.magic) != GRUB_HFS_MAGIC - || data->sblock.blksz == 0 - || (data->sblock.blksz & grub_cpu_to_be32_compile_time (0xc00001ff))) - { - grub_error (GRUB_ERR_BAD_FS, "not an HFS filesystem"); - goto fail; - } - - /* Check if this is an embedded HFS+ filesystem. */ - if (grub_be_to_cpu16 (data->sblock.embed_sig) == GRUB_HFS_EMBED_HFSPLUS_SIG) - { - grub_error (GRUB_ERR_BAD_FS, "embedded HFS+ filesystem"); - goto fail; - } - - data->blksz = grub_be_to_cpu32 (data->sblock.blksz); - data->disk = disk; - - /* Lookup the root node of the extent overflow tree. */ - first_block = ((grub_be_to_cpu16 (data->sblock.extent_recs[0].first_block) - * GRUB_HFS_BLKS) - + grub_be_to_cpu16 (data->sblock.first_block)); - - if (grub_disk_read (data->disk, first_block, 0, - sizeof (treehead), &treehead)) - goto fail; - data->ext_root = grub_be_to_cpu32 (treehead.head.root_node); - data->ext_size = grub_be_to_cpu16 (treehead.head.node_size); - - /* Lookup the root node of the catalog tree. */ - first_block = ((grub_be_to_cpu16 (data->sblock.catalog_recs[0].first_block) - * GRUB_HFS_BLKS) - + grub_be_to_cpu16 (data->sblock.first_block)); - if (grub_disk_read (data->disk, first_block, 0, - sizeof (treehead), &treehead)) - goto fail; - data->cat_root = grub_be_to_cpu32 (treehead.head.root_node); - data->cat_size = grub_be_to_cpu16 (treehead.head.node_size); - - if (data->cat_size == 0 - || data->blksz < data->cat_size - || data->blksz < data->ext_size) - goto fail; - - /* Lookup the root directory node in the catalog tree using the - volume name. */ - key.parent_dir = grub_cpu_to_be32_compile_time (1); - key.strlen = data->sblock.volname[0]; - grub_strcpy ((char *) key.str, (char *) (data->sblock.volname + 1)); - - if (grub_hfs_find_node (data, (char *) &key, data->cat_root, - 0, (char *) &dir, sizeof (dir)) == 0) - { - grub_error (GRUB_ERR_BAD_FS, "cannot find the HFS root directory"); - goto fail; - } - - if (grub_errno) - goto fail; - - data->rootdir = grub_be_to_cpu32 (dir.dirid); - - return data; - fail: - grub_free (data); - - if (grub_errno == GRUB_ERR_OUT_OF_RANGE) - grub_error (GRUB_ERR_BAD_FS, "not a HFS filesystem"); - - return 0; -} - -/* Compare the K1 and K2 catalog file keys using HFS character ordering. */ -static int -grub_hfs_cmp_catkeys (const struct grub_hfs_catalog_key *k1, - const struct grub_hfs_catalog_key *k2) -{ - /* Taken from hfsutils 3.2.6 and converted to a readable form */ - static const unsigned char hfs_charorder[256] = { - [0x00] = 0, - [0x01] = 1, - [0x02] = 2, - [0x03] = 3, - [0x04] = 4, - [0x05] = 5, - [0x06] = 6, - [0x07] = 7, - [0x08] = 8, - [0x09] = 9, - [0x0A] = 10, - [0x0B] = 11, - [0x0C] = 12, - [0x0D] = 13, - [0x0E] = 14, - [0x0F] = 15, - [0x10] = 16, - [0x11] = 17, - [0x12] = 18, - [0x13] = 19, - [0x14] = 20, - [0x15] = 21, - [0x16] = 22, - [0x17] = 23, - [0x18] = 24, - [0x19] = 25, - [0x1A] = 26, - [0x1B] = 27, - [0x1C] = 28, - [0x1D] = 29, - [0x1E] = 30, - [0x1F] = 31, - [' '] = 32, [0xCA] = 32, - ['!'] = 33, - ['"'] = 34, - [0xD2] = 35, - [0xD3] = 36, - [0xC7] = 37, - [0xC8] = 38, - ['#'] = 39, - ['$'] = 40, - ['%'] = 41, - ['&'] = 42, - ['\''] = 43, - [0xD4] = 44, - [0xD5] = 45, - ['('] = 46, - [')'] = 47, - ['*'] = 48, - ['+'] = 49, - [','] = 50, - ['-'] = 51, - ['.'] = 52, - ['/'] = 53, - ['0'] = 54, - ['1'] = 55, - ['2'] = 56, - ['3'] = 57, - ['4'] = 58, - ['5'] = 59, - ['6'] = 60, - ['7'] = 61, - ['8'] = 62, - ['9'] = 63, - [':'] = 64, - [';'] = 65, - ['<'] = 66, - ['='] = 67, - ['>'] = 68, - ['?'] = 69, - ['@'] = 70, - ['A'] = 71, ['a'] = 71, - [0x88] = 72, [0xCB] = 72, - [0x80] = 73, [0x8A] = 73, - [0x8B] = 74, [0xCC] = 74, - [0x81] = 75, [0x8C] = 75, - [0xAE] = 76, [0xBE] = 76, - ['`'] = 77, - [0x87] = 78, - [0x89] = 79, - [0xBB] = 80, - ['B'] = 81, ['b'] = 81, - ['C'] = 82, ['c'] = 82, - [0x82] = 83, [0x8D] = 83, - ['D'] = 84, ['d'] = 84, - ['E'] = 85, ['e'] = 85, - [0x83] = 86, [0x8E] = 86, - [0x8F] = 87, - [0x90] = 88, - [0x91] = 89, - ['F'] = 90, ['f'] = 90, - ['G'] = 91, ['g'] = 91, - ['H'] = 92, ['h'] = 92, - ['I'] = 93, ['i'] = 93, - [0x92] = 94, - [0x93] = 95, - [0x94] = 96, - [0x95] = 97, - ['J'] = 98, ['j'] = 98, - ['K'] = 99, ['k'] = 99, - ['L'] = 100, ['l'] = 100, - ['M'] = 101, ['m'] = 101, - ['N'] = 102, ['n'] = 102, - [0x84] = 103, [0x96] = 103, - ['O'] = 104, ['o'] = 104, - [0x85] = 105, [0x9A] = 105, - [0x9B] = 106, [0xCD] = 106, - [0xAF] = 107, [0xBF] = 107, - [0xCE] = 108, [0xCF] = 108, - [0x97] = 109, - [0x98] = 110, - [0x99] = 111, - [0xBC] = 112, - ['P'] = 113, ['p'] = 113, - ['Q'] = 114, ['q'] = 114, - ['R'] = 115, ['r'] = 115, - ['S'] = 116, ['s'] = 116, - [0xA7] = 117, - ['T'] = 118, ['t'] = 118, - ['U'] = 119, ['u'] = 119, - [0x86] = 120, [0x9F] = 120, - [0x9C] = 121, - [0x9D] = 122, - [0x9E] = 123, - ['V'] = 124, ['v'] = 124, - ['W'] = 125, ['w'] = 125, - ['X'] = 126, ['x'] = 126, - ['Y'] = 127, ['y'] = 127, - [0xD8] = 128, - ['Z'] = 129, ['z'] = 129, - ['['] = 130, - ['\\'] = 131, - [']'] = 132, - ['^'] = 133, - ['_'] = 134, - ['{'] = 135, - ['|'] = 136, - ['}'] = 137, - ['~'] = 138, - [0x7F] = 139, - [0xA0] = 140, - [0xA1] = 141, - [0xA2] = 142, - [0xA3] = 143, - [0xA4] = 144, - [0xA5] = 145, - [0xA6] = 146, - [0xA8] = 147, - [0xA9] = 148, - [0xAA] = 149, - [0xAB] = 150, - [0xAC] = 151, - [0xAD] = 152, - [0xB0] = 153, - [0xB1] = 154, - [0xB2] = 155, - [0xB3] = 156, - [0xB4] = 157, - [0xB5] = 158, - [0xB6] = 159, - [0xB7] = 160, - [0xB8] = 161, - [0xB9] = 162, - [0xBA] = 163, - [0xBD] = 164, - [0xC0] = 165, - [0xC1] = 166, - [0xC2] = 167, - [0xC3] = 168, - [0xC4] = 169, - [0xC5] = 170, - [0xC6] = 171, - [0xC9] = 172, - [0xD0] = 173, - [0xD1] = 174, - [0xD6] = 175, - [0xD7] = 176, - [0xD9] = 177, - [0xDA] = 178, - [0xDB] = 179, - [0xDC] = 180, - [0xDD] = 181, - [0xDE] = 182, - [0xDF] = 183, - [0xE0] = 184, - [0xE1] = 185, - [0xE2] = 186, - [0xE3] = 187, - [0xE4] = 188, - [0xE5] = 189, - [0xE6] = 190, - [0xE7] = 191, - [0xE8] = 192, - [0xE9] = 193, - [0xEA] = 194, - [0xEB] = 195, - [0xEC] = 196, - [0xED] = 197, - [0xEE] = 198, - [0xEF] = 199, - [0xF0] = 200, - [0xF1] = 201, - [0xF2] = 202, - [0xF3] = 203, - [0xF4] = 204, - [0xF5] = 205, - [0xF6] = 206, - [0xF7] = 207, - [0xF8] = 208, - [0xF9] = 209, - [0xFA] = 210, - [0xFB] = 211, - [0xFC] = 212, - [0xFD] = 213, - [0xFE] = 214, - [0xFF] = 215, - }; - int i; - int cmp; - int minlen = (k1->strlen < k2->strlen) ? k1->strlen : k2->strlen; - - cmp = (grub_be_to_cpu32 (k1->parent_dir) - grub_be_to_cpu32 (k2->parent_dir)); - if (cmp != 0) - return cmp; - - for (i = 0; i < minlen; i++) - { - cmp = (hfs_charorder[k1->str[i]] - hfs_charorder[k2->str[i]]); - if (cmp != 0) - return cmp; - } - - /* Shorter strings precede long ones. */ - return (k1->strlen - k2->strlen); -} - - -/* Compare the K1 and K2 extent overflow file keys. */ -static int -grub_hfs_cmp_extkeys (const struct grub_hfs_extent_key *k1, - const struct grub_hfs_extent_key *k2) -{ - int cmp = k1->forktype - k2->forktype; - if (cmp == 0) - cmp = grub_be_to_cpu32 (k1->fileid) - grub_be_to_cpu32 (k2->fileid); - if (cmp == 0) - cmp = (grub_be_to_cpu16 (k1->first_block) - - grub_be_to_cpu16 (k2->first_block)); - return cmp; -} - - -/* Iterate the records in the node with index IDX in the mounted HFS - filesystem DATA. This node holds data of the type TYPE (0 = - catalog node, 1 = extent overflow node). If this is set, continue - iterating to the next node. For every records, call NODE_HOOK. */ -static grub_err_t -grub_hfs_iterate_records (struct grub_hfs_data *data, int type, int idx, - int this, int (*node_hook) (struct grub_hfs_node *hnd, - struct grub_hfs_record *, - void *hook_arg), - void *hook_arg) -{ - grub_size_t nodesize = type == 0 ? data->cat_size : data->ext_size; - - union node_union - { - struct grub_hfs_node node; - char rawnode[0]; - grub_uint16_t offsets[0]; - } *node; - - if (nodesize < sizeof (struct grub_hfs_node)) - nodesize = sizeof (struct grub_hfs_node); - - node = grub_malloc (nodesize); - if (!node) - return grub_errno; - - do - { - int i; - struct grub_hfs_extent *dat; - int blk; - grub_uint16_t reccnt; - - dat = (struct grub_hfs_extent *) (type == 0 - ? (&data->sblock.catalog_recs) - : (&data->sblock.extent_recs)); - - /* Read the node into memory. */ - blk = grub_hfs_block (data, dat, - (type == 0) ? GRUB_HFS_CNID_CAT : GRUB_HFS_CNID_EXT, - idx / (data->blksz / nodesize), 0); - blk += (idx % (data->blksz / nodesize)); - - if (grub_errno || grub_disk_read (data->disk, blk, 0, - nodesize, node)) - { - grub_free (node); - return grub_errno; - } - - reccnt = grub_be_to_cpu16 (node->node.reccnt); - if (reccnt > (nodesize >> 1)) - reccnt = (nodesize >> 1); - - /* Iterate over all records in this node. */ - for (i = 0; i < reccnt; i++) - { - int pos = (nodesize >> 1) - 1 - i; - struct pointer - { - grub_uint8_t keylen; - grub_uint8_t key; - } GRUB_PACKED *pnt; - grub_uint16_t off = grub_be_to_cpu16 (node->offsets[pos]); - if (off > nodesize - sizeof(*pnt)) - continue; - pnt = (struct pointer *) (off + node->rawnode); - if (nodesize < (grub_size_t) off + pnt->keylen + 1) - continue; - - struct grub_hfs_record rec = - { - &pnt->key, - pnt->keylen, - &pnt->key + pnt->keylen +(pnt->keylen + 1) % 2, - nodesize - off - pnt->keylen - 1 - }; - - if (node_hook (&node->node, &rec, hook_arg)) - { - grub_free (node); - return 0; - } - } - - idx = grub_be_to_cpu32 (node->node.next); - } while (idx && this); - grub_free (node); - return 0; -} - -struct grub_hfs_find_node_node_found_ctx -{ - int found; - int isleaf; - int done; - int type; - const char *key; - char *datar; - grub_size_t datalen; -}; - -static int -grub_hfs_find_node_node_found (struct grub_hfs_node *hnd, struct grub_hfs_record *rec, - void *hook_arg) -{ - struct grub_hfs_find_node_node_found_ctx *ctx = hook_arg; - int cmp = 1; - - if (ctx->type == 0) - cmp = grub_hfs_cmp_catkeys (rec->key, (const void *) ctx->key); - else - cmp = grub_hfs_cmp_extkeys (rec->key, (const void *) ctx->key); - - /* If the key is smaller or equal to the current node, mark the - entry. In case of a non-leaf mode it will be used to lookup - the rest of the tree. */ - if (cmp <= 0) - ctx->found = grub_be_to_cpu32 (grub_get_unaligned32 (rec->data)); - else /* The key can not be found in the tree. */ - return 1; - - /* Check if this node is a leaf node. */ - if (hnd->type == GRUB_HFS_NODE_LEAF) - { - ctx->isleaf = 1; - - /* Found it!!!! */ - if (cmp == 0) - { - ctx->done = 1; - - grub_memcpy (ctx->datar, rec->data, - rec->datalen < ctx->datalen ? rec->datalen : ctx->datalen); - return 1; - } - } - - return 0; -} - - -/* Lookup a record in the mounted filesystem DATA using the key KEY. - The index of the node on top of the tree is IDX. The tree is of - the type TYPE (0 = catalog node, 1 = extent overflow node). Return - the data in DATAR with a maximum length of DATALEN. */ -static int -grub_hfs_find_node (struct grub_hfs_data *data, char *key, - grub_uint32_t idx, int type, char *datar, grub_size_t datalen) -{ - struct grub_hfs_find_node_node_found_ctx ctx = - { - .found = -1, - .isleaf = 0, - .done = 0, - .type = type, - .key = key, - .datar = datar, - .datalen = datalen - }; - - do - { - ctx.found = -1; - - if (grub_hfs_iterate_records (data, type, idx, 0, grub_hfs_find_node_node_found, &ctx)) - return 0; - - if (ctx.found == -1) - return 0; - - idx = ctx.found; - } while (! ctx.isleaf); - - return ctx.done; -} - -struct grub_hfs_iterate_dir_node_found_ctx -{ - grub_uint32_t dir_be; - int found; - int isleaf; - grub_uint32_t next; - int (*hook) (struct grub_hfs_record *, void *hook_arg); - void *hook_arg; -}; - -static int -grub_hfs_iterate_dir_node_found (struct grub_hfs_node *hnd, struct grub_hfs_record *rec, - void *hook_arg) -{ - struct grub_hfs_iterate_dir_node_found_ctx *ctx = hook_arg; - struct grub_hfs_catalog_key *ckey = rec->key; - - /* The lowest key possible with DIR as root directory. */ - const struct grub_hfs_catalog_key key = {0, ctx->dir_be, 0, ""}; - - if (grub_hfs_cmp_catkeys (rec->key, &key) <= 0) - ctx->found = grub_be_to_cpu32 (grub_get_unaligned32 (rec->data)); - - if (hnd->type == 0xFF && ckey->strlen > 0) - { - ctx->isleaf = 1; - ctx->next = grub_be_to_cpu32 (hnd->next); - - /* An entry was found. */ - if (ckey->parent_dir == ctx->dir_be) - return ctx->hook (rec, ctx->hook_arg); - } - - return 0; -} - -static int -grub_hfs_iterate_dir_it_dir (struct grub_hfs_node *hnd __attribute ((unused)), - struct grub_hfs_record *rec, - void *hook_arg) -{ - struct grub_hfs_catalog_key *ckey = rec->key; - struct grub_hfs_iterate_dir_node_found_ctx *ctx = hook_arg; - - /* Stop when the entries do not match anymore. */ - if (ckey->parent_dir != ctx->dir_be) - return 1; - - return ctx->hook (rec, ctx->hook_arg); -} - - -/* Iterate over the directory with the id DIR. The tree is searched - starting with the node ROOT_IDX. For every entry in this directory - call HOOK. */ -static grub_err_t -grub_hfs_iterate_dir (struct grub_hfs_data *data, grub_uint32_t root_idx, - grub_uint32_t dir, int (*hook) (struct grub_hfs_record *, void *hook_arg), - void *hook_arg) -{ - struct grub_hfs_iterate_dir_node_found_ctx ctx = - { - .dir_be = grub_cpu_to_be32 (dir), - .found = -1, - .isleaf = 0, - .next = 0, - .hook = hook, - .hook_arg = hook_arg - }; - - do - { - ctx.found = -1; - - if (grub_hfs_iterate_records (data, 0, root_idx, 0, grub_hfs_iterate_dir_node_found, &ctx)) - return grub_errno; - - if (ctx.found == -1) - return 0; - - root_idx = ctx.found; - } while (! ctx.isleaf); - - /* If there was a matching record in this leaf node, continue the - iteration until the last record was found. */ - grub_hfs_iterate_records (data, 0, ctx.next, 1, grub_hfs_iterate_dir_it_dir, &ctx); - return grub_errno; -} - -#define MAX_UTF8_PER_MAC_ROMAN 3 - -static const char macroman[0x80][MAX_UTF8_PER_MAC_ROMAN + 1] = - { - /* 80 */ "\xc3\x84", - /* 81 */ "\xc3\x85", - /* 82 */ "\xc3\x87", - /* 83 */ "\xc3\x89", - /* 84 */ "\xc3\x91", - /* 85 */ "\xc3\x96", - /* 86 */ "\xc3\x9c", - /* 87 */ "\xc3\xa1", - /* 88 */ "\xc3\xa0", - /* 89 */ "\xc3\xa2", - /* 8A */ "\xc3\xa4", - /* 8B */ "\xc3\xa3", - /* 8C */ "\xc3\xa5", - /* 8D */ "\xc3\xa7", - /* 8E */ "\xc3\xa9", - /* 8F */ "\xc3\xa8", - /* 90 */ "\xc3\xaa", - /* 91 */ "\xc3\xab", - /* 92 */ "\xc3\xad", - /* 93 */ "\xc3\xac", - /* 94 */ "\xc3\xae", - /* 95 */ "\xc3\xaf", - /* 96 */ "\xc3\xb1", - /* 97 */ "\xc3\xb3", - /* 98 */ "\xc3\xb2", - /* 99 */ "\xc3\xb4", - /* 9A */ "\xc3\xb6", - /* 9B */ "\xc3\xb5", - /* 9C */ "\xc3\xba", - /* 9D */ "\xc3\xb9", - /* 9E */ "\xc3\xbb", - /* 9F */ "\xc3\xbc", - /* A0 */ "\xe2\x80\xa0", - /* A1 */ "\xc2\xb0", - /* A2 */ "\xc2\xa2", - /* A3 */ "\xc2\xa3", - /* A4 */ "\xc2\xa7", - /* A5 */ "\xe2\x80\xa2", - /* A6 */ "\xc2\xb6", - /* A7 */ "\xc3\x9f", - /* A8 */ "\xc2\xae", - /* A9 */ "\xc2\xa9", - /* AA */ "\xe2\x84\xa2", - /* AB */ "\xc2\xb4", - /* AC */ "\xc2\xa8", - /* AD */ "\xe2\x89\xa0", - /* AE */ "\xc3\x86", - /* AF */ "\xc3\x98", - /* B0 */ "\xe2\x88\x9e", - /* B1 */ "\xc2\xb1", - /* B2 */ "\xe2\x89\xa4", - /* B3 */ "\xe2\x89\xa5", - /* B4 */ "\xc2\xa5", - /* B5 */ "\xc2\xb5", - /* B6 */ "\xe2\x88\x82", - /* B7 */ "\xe2\x88\x91", - /* B8 */ "\xe2\x88\x8f", - /* B9 */ "\xcf\x80", - /* BA */ "\xe2\x88\xab", - /* BB */ "\xc2\xaa", - /* BC */ "\xc2\xba", - /* BD */ "\xce\xa9", - /* BE */ "\xc3\xa6", - /* BF */ "\xc3\xb8", - /* C0 */ "\xc2\xbf", - /* C1 */ "\xc2\xa1", - /* C2 */ "\xc2\xac", - /* C3 */ "\xe2\x88\x9a", - /* C4 */ "\xc6\x92", - /* C5 */ "\xe2\x89\x88", - /* C6 */ "\xe2\x88\x86", - /* C7 */ "\xc2\xab", - /* C8 */ "\xc2\xbb", - /* C9 */ "\xe2\x80\xa6", - /* CA */ "\xc2\xa0", - /* CB */ "\xc3\x80", - /* CC */ "\xc3\x83", - /* CD */ "\xc3\x95", - /* CE */ "\xc5\x92", - /* CF */ "\xc5\x93", - /* D0 */ "\xe2\x80\x93", - /* D1 */ "\xe2\x80\x94", - /* D2 */ "\xe2\x80\x9c", - /* D3 */ "\xe2\x80\x9d", - /* D4 */ "\xe2\x80\x98", - /* D5 */ "\xe2\x80\x99", - /* D6 */ "\xc3\xb7", - /* D7 */ "\xe2\x97\x8a", - /* D8 */ "\xc3\xbf", - /* D9 */ "\xc5\xb8", - /* DA */ "\xe2\x81\x84", - /* DB */ "\xe2\x82\xac", - /* DC */ "\xe2\x80\xb9", - /* DD */ "\xe2\x80\xba", - /* DE */ "\xef\xac\x81", - /* DF */ "\xef\xac\x82", - /* E0 */ "\xe2\x80\xa1", - /* E1 */ "\xc2\xb7", - /* E2 */ "\xe2\x80\x9a", - /* E3 */ "\xe2\x80\x9e", - /* E4 */ "\xe2\x80\xb0", - /* E5 */ "\xc3\x82", - /* E6 */ "\xc3\x8a", - /* E7 */ "\xc3\x81", - /* E8 */ "\xc3\x8b", - /* E9 */ "\xc3\x88", - /* EA */ "\xc3\x8d", - /* EB */ "\xc3\x8e", - /* EC */ "\xc3\x8f", - /* ED */ "\xc3\x8c", - /* EE */ "\xc3\x93", - /* EF */ "\xc3\x94", - /* F0 */ "\xef\xa3\xbf", - /* F1 */ "\xc3\x92", - /* F2 */ "\xc3\x9a", - /* F3 */ "\xc3\x9b", - /* F4 */ "\xc3\x99", - /* F5 */ "\xc4\xb1", - /* F6 */ "\xcb\x86", - /* F7 */ "\xcb\x9c", - /* F8 */ "\xc2\xaf", - /* F9 */ "\xcb\x98", - /* FA */ "\xcb\x99", - /* FB */ "\xcb\x9a", - /* FC */ "\xc2\xb8", - /* FD */ "\xcb\x9d", - /* FE */ "\xcb\x9b", - /* FF */ "\xcb\x87", - }; - -static void -macroman_to_utf8 (char *to, const grub_uint8_t *from, grub_size_t len, - int translate_slash) -{ - char *optr = to; - const grub_uint8_t *iptr; - - for (iptr = from; iptr < from + len && *iptr; iptr++) - { - /* Translate '/' to ':' as per HFS spec. */ - if (*iptr == '/' && translate_slash) - { - *optr++ = ':'; - continue; - } - if (!(*iptr & 0x80)) - { - *optr++ = *iptr; - continue; - } - optr = grub_stpcpy (optr, macroman[*iptr & 0x7f]); - } - *optr = 0; -} - -static grub_ssize_t -utf8_to_macroman (grub_uint8_t *to, const char *from) -{ - grub_uint8_t *end = to + 31; - grub_uint8_t *optr = to; - const char *iptr = from; - - while (*iptr && optr < end) - { - int i, clen; - /* Translate ':' to '/' as per HFS spec. */ - if (*iptr == ':') - { - *optr++ = '/'; - iptr++; - continue; - } - if (!(*iptr & 0x80)) - { - *optr++ = *iptr++; - continue; - } - clen = 2; - if ((*iptr & 0xf0) == 0xe0) - clen++; - for (i = 0; i < 0x80; i++) - if (grub_memcmp (macroman[i], iptr, clen) == 0) - break; - if (i == 0x80) - break; - *optr++ = i | 0x80; - iptr += clen; - } - /* Too long or not encodable. */ - if (*iptr) - return -1; - return optr - to; -} - -union grub_hfs_anyrec { - struct grub_hfs_filerec frec; - struct grub_hfs_dirrec dir; -}; - -struct grub_fshelp_node -{ - struct grub_hfs_data *data; - union grub_hfs_anyrec fdrec; - grub_uint32_t inode; -}; - -static grub_err_t -lookup_file (grub_fshelp_node_t dir, - const char *name, - grub_fshelp_node_t *foundnode, - enum grub_fshelp_filetype *foundtype) -{ - struct grub_hfs_catalog_key key; - grub_ssize_t slen; - union grub_hfs_anyrec fdrec; - - key.parent_dir = grub_cpu_to_be32 (dir->inode); - slen = utf8_to_macroman (key.str, name); - if (slen < 0) - /* Not found */ - return GRUB_ERR_NONE; - key.strlen = slen; - - /* Lookup this node. */ - if (! grub_hfs_find_node (dir->data, (char *) &key, dir->data->cat_root, - 0, (char *) &fdrec.frec, sizeof (fdrec.frec))) - /* Not found */ - return GRUB_ERR_NONE; - - *foundnode = grub_malloc (sizeof (struct grub_fshelp_node)); - if (!*foundnode) - return grub_errno; - - (*foundnode)->inode = grub_be_to_cpu32 (fdrec.dir.dirid); - (*foundnode)->fdrec = fdrec; - (*foundnode)->data = dir->data; - *foundtype = (fdrec.frec.type == GRUB_HFS_FILETYPE_DIR) ? GRUB_FSHELP_DIR : GRUB_FSHELP_REG; - return GRUB_ERR_NONE; -} - -/* Find a file or directory with the pathname PATH in the filesystem - DATA. Return the file record in RETDATA when it is non-zero. - Return the directory number in RETINODE when it is non-zero. */ -static grub_err_t -grub_hfs_find_dir (struct grub_hfs_data *data, const char *path, - grub_fshelp_node_t *found, - enum grub_fshelp_filetype exptype) -{ - struct grub_fshelp_node root = { - .data = data, - .inode = data->rootdir, - .fdrec = { - .frec = { - .type = GRUB_HFS_FILETYPE_DIR - } - } - }; - grub_err_t err; - - err = grub_fshelp_find_file_lookup (path, &root, found, lookup_file, NULL, exptype); - - if (&root == *found) - { - *found = grub_malloc (sizeof (root)); - if (!*found) - return grub_errno; - grub_memcpy (*found, &root, sizeof (root)); - } - return err; -} - -struct grub_hfs_dir_hook_ctx -{ - grub_fs_dir_hook_t hook; - void *hook_data; -}; - -static int -grub_hfs_dir_hook (struct grub_hfs_record *rec, void *hook_arg) -{ - struct grub_hfs_dir_hook_ctx *ctx = hook_arg; - struct grub_hfs_dirrec *drec = rec->data; - struct grub_hfs_filerec *frec = rec->data; - struct grub_hfs_catalog_key *ckey = rec->key; - char fname[sizeof (ckey->str) * MAX_UTF8_PER_MAC_ROMAN + 1]; - struct grub_dirhook_info info; - grub_size_t len; - - grub_memset (fname, 0, sizeof (fname)); - - grub_memset (&info, 0, sizeof (info)); - - len = ckey->strlen; - if (len > sizeof (ckey->str)) - len = sizeof (ckey->str); - macroman_to_utf8 (fname, ckey->str, len, 1); - - info.case_insensitive = 1; - - if (drec->type == GRUB_HFS_FILETYPE_DIR) - { - info.dir = 1; - info.mtimeset = 1; - info.inodeset = 1; - info.mtime = grub_be_to_cpu32 (drec->mtime) - 2082844800; - info.inode = grub_be_to_cpu32 (drec->dirid); - return ctx->hook (fname, &info, ctx->hook_data); - } - if (frec->type == GRUB_HFS_FILETYPE_FILE) - { - info.dir = 0; - info.mtimeset = 1; - info.inodeset = 1; - info.mtime = grub_be_to_cpu32 (frec->mtime) - 2082844800; - info.inode = grub_be_to_cpu32 (frec->fileid); - return ctx->hook (fname, &info, ctx->hook_data); - } - - return 0; -} - - -static grub_err_t -grub_hfs_dir (grub_device_t device, const char *path, grub_fs_dir_hook_t hook, - void *hook_data) -{ - struct grub_hfs_data *data; - struct grub_hfs_dir_hook_ctx ctx = - { - .hook = hook, - .hook_data = hook_data - }; - grub_fshelp_node_t found = NULL; - - grub_dl_ref (my_mod); - - data = grub_hfs_mount (device->disk); - if (!data) - goto fail; - - /* First the directory ID for the directory. */ - if (grub_hfs_find_dir (data, path, &found, GRUB_FSHELP_DIR)) - goto fail; - - grub_hfs_iterate_dir (data, data->cat_root, found->inode, grub_hfs_dir_hook, &ctx); - - fail: - grub_free (found); - grub_free (data); - - grub_dl_unref (my_mod); - - return grub_errno; -} - - -/* Open a file named NAME and initialize FILE. */ -static grub_err_t -grub_hfs_open (struct grub_file *file, const char *name) -{ - struct grub_hfs_data *data; - grub_fshelp_node_t found = NULL; - - grub_dl_ref (my_mod); - - data = grub_hfs_mount (file->device->disk); - - if (!data) - { - grub_dl_unref (my_mod); - return grub_errno; - } - - if (grub_hfs_find_dir (data, name, &found, GRUB_FSHELP_REG)) - { - grub_free (data); - grub_free (found); - grub_dl_unref (my_mod); - return grub_errno; - } - - grub_memcpy (data->extents, found->fdrec.frec.extents, sizeof (grub_hfs_datarecord_t)); - file->size = grub_be_to_cpu32 (found->fdrec.frec.size); - data->size = grub_be_to_cpu32 (found->fdrec.frec.size); - data->fileid = grub_be_to_cpu32 (found->fdrec.frec.fileid); - file->offset = 0; - - file->data = data; - - grub_free (found); - - return 0; -} - -static grub_ssize_t -grub_hfs_read (grub_file_t file, char *buf, grub_size_t len) -{ - struct grub_hfs_data *data = - (struct grub_hfs_data *) file->data; - - return grub_hfs_read_file (data, file->read_hook, file->read_hook_data, - file->offset, len, buf); -} - - -static grub_err_t -grub_hfs_close (grub_file_t file) -{ - grub_free (file->data); - - grub_dl_unref (my_mod); - - return 0; -} - - -static grub_err_t -grub_hfs_label (grub_device_t device, char **label) -{ - struct grub_hfs_data *data; - - data = grub_hfs_mount (device->disk); - - if (data) - { - grub_size_t len = data->sblock.volname[0]; - if (len > sizeof (data->sblock.volname) - 1) - len = sizeof (data->sblock.volname) - 1; - *label = grub_malloc (len * MAX_UTF8_PER_MAC_ROMAN + 1); - if (*label) - macroman_to_utf8 (*label, data->sblock.volname + 1, - len + 1, 0); - } - else - *label = 0; - - grub_free (data); - return grub_errno; -} - -static grub_err_t -grub_hfs_mtime (grub_device_t device, grub_int32_t *tm) -{ - struct grub_hfs_data *data; - - data = grub_hfs_mount (device->disk); - - if (data) - *tm = grub_be_to_cpu32 (data->sblock.mtime) - 2082844800; - else - *tm = 0; - - grub_free (data); - return grub_errno; -} - -static grub_err_t -grub_hfs_uuid (grub_device_t device, char **uuid) -{ - struct grub_hfs_data *data; - - grub_dl_ref (my_mod); - - data = grub_hfs_mount (device->disk); - if (data && data->sblock.num_serial != 0) - { - *uuid = grub_xasprintf ("%016llx", - (unsigned long long) - grub_be_to_cpu64 (data->sblock.num_serial)); - } - else - *uuid = NULL; - - grub_dl_unref (my_mod); - - grub_free (data); - - return grub_errno; -} - - - -static struct grub_fs grub_hfs_fs = - { - .name = "hfs", - .fs_dir = grub_hfs_dir, - .fs_open = grub_hfs_open, - .fs_read = grub_hfs_read, - .fs_close = grub_hfs_close, - .fs_label = grub_hfs_label, - .fs_uuid = grub_hfs_uuid, - .fs_mtime = grub_hfs_mtime, -#ifdef GRUB_UTIL - .reserved_first_sector = 1, - .blocklist_install = 1, -#endif - .next = 0 - }; - -GRUB_MOD_INIT(hfs) -{ - grub_fs_register (&grub_hfs_fs); - my_mod = mod; -} - -GRUB_MOD_FINI(hfs) -{ - grub_fs_unregister (&grub_hfs_fs); -} diff --git a/thirdparty/grub-2.04/grub-core/fs/hfsplus.c b/thirdparty/grub-2.04/grub-core/fs/hfsplus.c deleted file mode 100644 index 54786bb1c..000000000 --- a/thirdparty/grub-2.04/grub-core/fs/hfsplus.c +++ /dev/null @@ -1,1127 +0,0 @@ -/* hfsplus.c - HFS+ Filesystem. */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2005,2006,2007,2008,2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -/* HFS+ is documented at http://developer.apple.com/technotes/tn/tn1150.html */ - -#define grub_fshelp_node grub_hfsplus_file -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -/* The type of node. */ -enum grub_hfsplus_btnode_type - { - GRUB_HFSPLUS_BTNODE_TYPE_LEAF = -1, - GRUB_HFSPLUS_BTNODE_TYPE_INDEX = 0, - GRUB_HFSPLUS_BTNODE_TYPE_HEADER = 1, - GRUB_HFSPLUS_BTNODE_TYPE_MAP = 2, - }; - -/* The header of a HFS+ B+ Tree. */ -struct grub_hfsplus_btheader -{ - grub_uint16_t depth; - grub_uint32_t root; - grub_uint32_t leaf_records; - grub_uint32_t first_leaf_node; - grub_uint32_t last_leaf_node; - grub_uint16_t nodesize; - grub_uint16_t keysize; - grub_uint32_t total_nodes; - grub_uint32_t free_nodes; - grub_uint16_t reserved1; - grub_uint32_t clump_size; /* ignored */ - grub_uint8_t btree_type; - grub_uint8_t key_compare; - grub_uint32_t attributes; -} GRUB_PACKED; - -struct grub_hfsplus_catfile -{ - grub_uint16_t type; - grub_uint16_t flags; - grub_uint32_t parentid; /* Thread only. */ - grub_uint32_t fileid; - grub_uint8_t unused1[4]; - grub_uint32_t mtime; - grub_uint8_t unused2[22]; - grub_uint16_t mode; - grub_uint8_t unused3[44]; - struct grub_hfsplus_forkdata data; - struct grub_hfsplus_forkdata resource; -} GRUB_PACKED; - -/* Filetype information as used in inodes. */ -#define GRUB_HFSPLUS_FILEMODE_MASK 0170000 -#define GRUB_HFSPLUS_FILEMODE_REG 0100000 -#define GRUB_HFSPLUS_FILEMODE_DIRECTORY 0040000 -#define GRUB_HFSPLUS_FILEMODE_SYMLINK 0120000 - -/* Some pre-defined file IDs. */ -enum - { - GRUB_HFSPLUS_FILEID_ROOTDIR = 2, - GRUB_HFSPLUS_FILEID_OVERFLOW = 3, - GRUB_HFSPLUS_FILEID_CATALOG = 4, - GRUB_HFSPLUS_FILEID_ATTR = 8 - }; - -enum grub_hfsplus_filetype - { - GRUB_HFSPLUS_FILETYPE_DIR = 1, - GRUB_HFSPLUS_FILETYPE_REG = 2, - GRUB_HFSPLUS_FILETYPE_DIR_THREAD = 3, - GRUB_HFSPLUS_FILETYPE_REG_THREAD = 4 - }; - -#define GRUB_HFSPLUSX_BINARYCOMPARE 0xBC -#define GRUB_HFSPLUSX_CASEFOLDING 0xCF - -static grub_dl_t my_mod; - - - -grub_err_t (*grub_hfsplus_open_compressed) (struct grub_fshelp_node *node); -grub_ssize_t (*grub_hfsplus_read_compressed) (struct grub_hfsplus_file *node, - grub_off_t pos, - grub_size_t len, - char *buf); - -/* Find the extent that points to FILEBLOCK. If it is not in one of - the 8 extents described by EXTENT, return -1. In that case set - FILEBLOCK to the next block. */ -static grub_disk_addr_t -grub_hfsplus_find_block (struct grub_hfsplus_extent *extent, - grub_disk_addr_t *fileblock) -{ - int i; - grub_disk_addr_t blksleft = *fileblock; - - /* First lookup the file in the given extents. */ - for (i = 0; i < 8; i++) - { - if (blksleft < grub_be_to_cpu32 (extent[i].count)) - return grub_be_to_cpu32 (extent[i].start) + blksleft; - blksleft -= grub_be_to_cpu32 (extent[i].count); - } - - *fileblock = blksleft; - return 0xffffffffffffffffULL; -} - -static int grub_hfsplus_cmp_extkey (struct grub_hfsplus_key *keya, - struct grub_hfsplus_key_internal *keyb); - -/* Search for the block FILEBLOCK inside the file NODE. Return the - blocknumber of this block on disk. */ -static grub_disk_addr_t -grub_hfsplus_read_block (grub_fshelp_node_t node, grub_disk_addr_t fileblock) -{ - struct grub_hfsplus_btnode *nnode = 0; - grub_disk_addr_t blksleft = fileblock; - struct grub_hfsplus_extent *extents = node->compressed - ? &node->resource_extents[0] : &node->extents[0]; - - while (1) - { - struct grub_hfsplus_extkey *key; - struct grub_hfsplus_key_internal extoverflow; - grub_disk_addr_t blk; - grub_off_t ptr; - - /* Try to find this block in the current set of extents. */ - blk = grub_hfsplus_find_block (extents, &blksleft); - - /* The previous iteration of this loop allocated memory. The - code above used this memory, it can be freed now. */ - grub_free (nnode); - nnode = 0; - - if (blk != 0xffffffffffffffffULL) - return blk; - - /* For the extent overflow file, extra extents can't be found in - the extent overflow file. If this happens, you found a - bug... */ - if (node->fileid == GRUB_HFSPLUS_FILEID_OVERFLOW) - { - grub_error (GRUB_ERR_READ_ERROR, - "extra extents found in an extend overflow file"); - break; - } - - /* Set up the key to look for in the extent overflow file. */ - extoverflow.extkey.fileid = node->fileid; - extoverflow.extkey.type = 0; - extoverflow.extkey.start = fileblock - blksleft; - extoverflow.extkey.type = node->compressed ? 0xff : 0; - if (grub_hfsplus_btree_search (&node->data->extoverflow_tree, - &extoverflow, - grub_hfsplus_cmp_extkey, &nnode, &ptr) - || !nnode) - { - grub_error (GRUB_ERR_READ_ERROR, - "no block found for the file id 0x%x and the block offset 0x%x", - node->fileid, fileblock); - break; - } - - /* The extent overflow file has 8 extents right after the key. */ - key = (struct grub_hfsplus_extkey *) - grub_hfsplus_btree_recptr (&node->data->extoverflow_tree, nnode, ptr); - extents = (struct grub_hfsplus_extent *) (key + 1); - - /* The block wasn't found. Perhaps the next iteration will find - it. The last block we found is stored in BLKSLEFT now. */ - } - - grub_free (nnode); - - /* Too bad, you lose. */ - return -1; -} - - -/* Read LEN bytes from the file described by DATA starting with byte - POS. Return the amount of read bytes in READ. */ -grub_ssize_t -grub_hfsplus_read_file (grub_fshelp_node_t node, - grub_disk_read_hook_t read_hook, void *read_hook_data, - grub_off_t pos, grub_size_t len, char *buf) -{ - return grub_fshelp_read_file (node->data->disk, node, - read_hook, read_hook_data, - pos, len, buf, grub_hfsplus_read_block, - node->size, - node->data->log2blksize - GRUB_DISK_SECTOR_BITS, - node->data->embedded_offset); -} - -static struct grub_hfsplus_data * -grub_hfsplus_mount (grub_disk_t disk) -{ - struct grub_hfsplus_data *data; - struct grub_hfsplus_btheader header; - struct grub_hfsplus_btnode node; - grub_uint16_t magic; - union { - struct grub_hfs_sblock hfs; - struct grub_hfsplus_volheader hfsplus; - } volheader; - - data = grub_malloc (sizeof (*data)); - if (!data) - return 0; - - data->disk = disk; - - /* Read the bootblock. */ - grub_disk_read (disk, GRUB_HFSPLUS_SBLOCK, 0, sizeof (volheader), - &volheader); - if (grub_errno) - goto fail; - - data->embedded_offset = 0; - if (grub_be_to_cpu16 (volheader.hfs.magic) == GRUB_HFS_MAGIC) - { - grub_disk_addr_t extent_start; - grub_disk_addr_t ablk_size; - grub_disk_addr_t ablk_start; - - /* See if there's an embedded HFS+ filesystem. */ - if (grub_be_to_cpu16 (volheader.hfs.embed_sig) != GRUB_HFSPLUS_MAGIC) - { - grub_error (GRUB_ERR_BAD_FS, "not a HFS+ filesystem"); - goto fail; - } - - /* Calculate the offset needed to translate HFS+ sector numbers. */ - extent_start = grub_be_to_cpu16 (volheader.hfs.embed_extent.first_block); - ablk_size = grub_be_to_cpu32 (volheader.hfs.blksz); - ablk_start = grub_be_to_cpu16 (volheader.hfs.first_block); - data->embedded_offset = (ablk_start - + extent_start - * (ablk_size >> GRUB_DISK_SECTOR_BITS)); - - grub_disk_read (disk, data->embedded_offset + GRUB_HFSPLUS_SBLOCK, 0, - sizeof (volheader), &volheader); - if (grub_errno) - goto fail; - } - - /* Make sure this is an HFS+ filesystem. XXX: Do we really support - HFX? */ - magic = grub_be_to_cpu16 (volheader.hfsplus.magic); - if (((magic != GRUB_HFSPLUS_MAGIC) && (magic != GRUB_HFSPLUSX_MAGIC)) - || volheader.hfsplus.blksize == 0 - || ((volheader.hfsplus.blksize & (volheader.hfsplus.blksize - 1)) != 0) - || grub_be_to_cpu32 (volheader.hfsplus.blksize) < GRUB_DISK_SECTOR_SIZE) - { - grub_error (GRUB_ERR_BAD_FS, "not a HFS+ filesystem"); - goto fail; - } - - grub_memcpy (&data->volheader, &volheader.hfsplus, - sizeof (volheader.hfsplus)); - - for (data->log2blksize = 0; - (1U << data->log2blksize) < grub_be_to_cpu32 (data->volheader.blksize); - data->log2blksize++); - - /* Make a new node for the catalog tree. */ - data->catalog_tree.file.data = data; - data->catalog_tree.file.fileid = GRUB_HFSPLUS_FILEID_CATALOG; - data->catalog_tree.file.compressed = 0; - grub_memcpy (&data->catalog_tree.file.extents, - data->volheader.catalog_file.extents, - sizeof data->volheader.catalog_file.extents); - data->catalog_tree.file.size = - grub_be_to_cpu64 (data->volheader.catalog_file.size); - - data->attr_tree.file.data = data; - data->attr_tree.file.fileid = GRUB_HFSPLUS_FILEID_ATTR; - grub_memcpy (&data->attr_tree.file.extents, - data->volheader.attr_file.extents, - sizeof data->volheader.attr_file.extents); - - data->attr_tree.file.size = - grub_be_to_cpu64 (data->volheader.attr_file.size); - data->attr_tree.file.compressed = 0; - - /* Make a new node for the extent overflow file. */ - data->extoverflow_tree.file.data = data; - data->extoverflow_tree.file.fileid = GRUB_HFSPLUS_FILEID_OVERFLOW; - data->extoverflow_tree.file.compressed = 0; - grub_memcpy (&data->extoverflow_tree.file.extents, - data->volheader.extents_file.extents, - sizeof data->volheader.catalog_file.extents); - - data->extoverflow_tree.file.size = - grub_be_to_cpu64 (data->volheader.extents_file.size); - - /* Read the essential information about the trees. */ - if (grub_hfsplus_read_file (&data->catalog_tree.file, 0, 0, - sizeof (struct grub_hfsplus_btnode), - sizeof (header), (char *) &header) <= 0) - goto fail; - - data->catalog_tree.root = grub_be_to_cpu32 (header.root); - data->catalog_tree.nodesize = grub_be_to_cpu16 (header.nodesize); - data->case_sensitive = ((magic == GRUB_HFSPLUSX_MAGIC) && - (header.key_compare == GRUB_HFSPLUSX_BINARYCOMPARE)); - - if (data->catalog_tree.nodesize < 2) - goto fail; - - if (grub_hfsplus_read_file (&data->extoverflow_tree.file, 0, 0, - sizeof (struct grub_hfsplus_btnode), - sizeof (header), (char *) &header) <= 0) - goto fail; - - data->extoverflow_tree.root = grub_be_to_cpu32 (header.root); - - if (grub_hfsplus_read_file (&data->extoverflow_tree.file, 0, 0, 0, - sizeof (node), (char *) &node) <= 0) - goto fail; - - data->extoverflow_tree.root = grub_be_to_cpu32 (header.root); - data->extoverflow_tree.nodesize = grub_be_to_cpu16 (header.nodesize); - - if (data->extoverflow_tree.nodesize < 2) - goto fail; - - if (grub_hfsplus_read_file (&data->attr_tree.file, 0, 0, - sizeof (struct grub_hfsplus_btnode), - sizeof (header), (char *) &header) <= 0) - { - grub_errno = 0; - data->attr_tree.root = 0; - data->attr_tree.nodesize = 0; - } - else - { - data->attr_tree.root = grub_be_to_cpu32 (header.root); - data->attr_tree.nodesize = grub_be_to_cpu16 (header.nodesize); - } - - data->dirroot.data = data; - data->dirroot.fileid = GRUB_HFSPLUS_FILEID_ROOTDIR; - - return data; - - fail: - - if (grub_errno == GRUB_ERR_OUT_OF_RANGE) - grub_error (GRUB_ERR_BAD_FS, "not a HFS+ filesystem"); - - grub_free (data); - return 0; -} - -/* Compare the on disk catalog key KEYA with the catalog key we are - looking for (KEYB). */ -static int -grub_hfsplus_cmp_catkey (struct grub_hfsplus_key *keya, - struct grub_hfsplus_key_internal *keyb) -{ - struct grub_hfsplus_catkey *catkey_a = &keya->catkey; - struct grub_hfsplus_catkey_internal *catkey_b = &keyb->catkey; - int diff; - grub_size_t len; - - /* Safe unsigned comparison */ - grub_uint32_t aparent = grub_be_to_cpu32 (catkey_a->parent); - if (aparent > catkey_b->parent) - return 1; - if (aparent < catkey_b->parent) - return -1; - - len = grub_be_to_cpu16 (catkey_a->namelen); - if (len > catkey_b->namelen) - len = catkey_b->namelen; - /* Since it's big-endian memcmp gives the same result as manually comparing - uint16_t but may be faster. */ - diff = grub_memcmp (catkey_a->name, catkey_b->name, - len * sizeof (catkey_a->name[0])); - if (diff == 0) - diff = grub_be_to_cpu16 (catkey_a->namelen) - catkey_b->namelen; - - return diff; -} - -/* Compare the on disk catalog key KEYA with the catalog key we are - looking for (KEYB). */ -static int -grub_hfsplus_cmp_catkey_id (struct grub_hfsplus_key *keya, - struct grub_hfsplus_key_internal *keyb) -{ - struct grub_hfsplus_catkey *catkey_a = &keya->catkey; - struct grub_hfsplus_catkey_internal *catkey_b = &keyb->catkey; - - /* Safe unsigned comparison */ - grub_uint32_t aparent = grub_be_to_cpu32 (catkey_a->parent); - if (aparent > catkey_b->parent) - return 1; - if (aparent < catkey_b->parent) - return -1; - - return 0; -} - -/* Compare the on disk extent overflow key KEYA with the extent - overflow key we are looking for (KEYB). */ -static int -grub_hfsplus_cmp_extkey (struct grub_hfsplus_key *keya, - struct grub_hfsplus_key_internal *keyb) -{ - struct grub_hfsplus_extkey *extkey_a = &keya->extkey; - struct grub_hfsplus_extkey_internal *extkey_b = &keyb->extkey; - grub_uint32_t akey; - - /* Safe unsigned comparison */ - akey = grub_be_to_cpu32 (extkey_a->fileid); - if (akey > extkey_b->fileid) - return 1; - if (akey < extkey_b->fileid) - return -1; - - if (extkey_a->type > extkey_b->type) - return 1; - if (extkey_a->type < extkey_b->type) - return -1; - - if (extkey_a->type > extkey_b->type) - return +1; - - if (extkey_a->type < extkey_b->type) - return -1; - - akey = grub_be_to_cpu32 (extkey_a->start); - if (akey > extkey_b->start) - return 1; - if (akey < extkey_b->start) - return -1; - return 0; -} - -static char * -grub_hfsplus_read_symlink (grub_fshelp_node_t node) -{ - char *symlink; - grub_ssize_t numread; - - symlink = grub_malloc (node->size + 1); - if (!symlink) - return 0; - - numread = grub_hfsplus_read_file (node, 0, 0, 0, node->size, symlink); - if (numread != (grub_ssize_t) node->size) - { - grub_free (symlink); - return 0; - } - symlink[node->size] = '\0'; - - return symlink; -} - -static int -grub_hfsplus_btree_iterate_node (struct grub_hfsplus_btree *btree, - struct grub_hfsplus_btnode *first_node, - grub_disk_addr_t first_rec, - int (*hook) (void *record, void *hook_arg), - void *hook_arg) -{ - grub_disk_addr_t rec; - grub_uint64_t saved_node = -1; - grub_uint64_t node_count = 0; - - for (;;) - { - char *cnode = (char *) first_node; - - /* Iterate over all records in this node. */ - for (rec = first_rec; rec < grub_be_to_cpu16 (first_node->count); rec++) - { - if (hook (grub_hfsplus_btree_recptr (btree, first_node, rec), hook_arg)) - return 1; - } - - if (! first_node->next) - break; - - if (node_count && first_node->next == saved_node) - { - grub_error (GRUB_ERR_BAD_FS, "HFS+ btree loop"); - return 0; - } - if (!(node_count & (node_count - 1))) - saved_node = first_node->next; - node_count++; - - if (grub_hfsplus_read_file (&btree->file, 0, 0, - (((grub_disk_addr_t) - grub_be_to_cpu32 (first_node->next)) - * btree->nodesize), - btree->nodesize, cnode) <= 0) - return 1; - - /* Don't skip any record in the next iteration. */ - first_rec = 0; - } - - return 0; -} - -/* Lookup the node described by KEY in the B+ Tree BTREE. Compare - keys using the function COMPARE_KEYS. When a match is found, - return the node in MATCHNODE and a pointer to the data in this node - in KEYOFFSET. MATCHNODE should be freed by the caller. */ -grub_err_t -grub_hfsplus_btree_search (struct grub_hfsplus_btree *btree, - struct grub_hfsplus_key_internal *key, - int (*compare_keys) (struct grub_hfsplus_key *keya, - struct grub_hfsplus_key_internal *keyb), - struct grub_hfsplus_btnode **matchnode, - grub_off_t *keyoffset) -{ - grub_uint64_t currnode; - char *node; - struct grub_hfsplus_btnode *nodedesc; - grub_disk_addr_t rec; - grub_uint64_t save_node; - grub_uint64_t node_count = 0; - - if (!btree->nodesize) - { - *matchnode = 0; - return 0; - } - - node = grub_malloc (btree->nodesize); - if (! node) - return grub_errno; - - currnode = btree->root; - save_node = currnode - 1; - while (1) - { - int match = 0; - - if (save_node == currnode) - { - grub_free (node); - return grub_error (GRUB_ERR_BAD_FS, "HFS+ btree loop"); - } - if (!(node_count & (node_count - 1))) - save_node = currnode; - node_count++; - - /* Read a node. */ - if (grub_hfsplus_read_file (&btree->file, 0, 0, - (grub_disk_addr_t) currnode - * (grub_disk_addr_t) btree->nodesize, - btree->nodesize, (char *) node) <= 0) - { - grub_free (node); - return grub_error (GRUB_ERR_BAD_FS, "couldn't read i-node"); - } - - nodedesc = (struct grub_hfsplus_btnode *) node; - - /* Find the record in this tree. */ - for (rec = 0; rec < grub_be_to_cpu16 (nodedesc->count); rec++) - { - struct grub_hfsplus_key *currkey; - currkey = grub_hfsplus_btree_recptr (btree, nodedesc, rec); - - /* The action that has to be taken depend on the type of - record. */ - if (nodedesc->type == GRUB_HFSPLUS_BTNODE_TYPE_LEAF - && compare_keys (currkey, key) == 0) - { - /* An exact match was found! */ - - *matchnode = nodedesc; - *keyoffset = rec; - - return 0; - } - else if (nodedesc->type == GRUB_HFSPLUS_BTNODE_TYPE_INDEX) - { - void *pointer; - - /* The place where the key could have been found didn't - contain the key. This means that the previous match - is the one that should be followed. */ - if (compare_keys (currkey, key) > 0) - break; - - /* Mark the last key which is lower or equal to the key - that we are looking for. The last match that is - found will be used to locate the child which can - contain the record. */ - pointer = ((char *) currkey - + grub_be_to_cpu16 (currkey->keylen) - + 2); - currnode = grub_be_to_cpu32 (grub_get_unaligned32 (pointer)); - match = 1; - } - } - - /* No match is found, no record with this key exists in the - tree. */ - if (! match) - { - *matchnode = 0; - grub_free (node); - return 0; - } - } -} - -struct list_nodes_ctx -{ - int ret; - grub_fshelp_node_t dir; - grub_fshelp_iterate_dir_hook_t hook; - void *hook_data; -}; - -static int -list_nodes (void *record, void *hook_arg) -{ - struct grub_hfsplus_catkey *catkey; - char *filename; - int i; - struct grub_fshelp_node *node; - grub_uint16_t *keyname; - struct grub_hfsplus_catfile *fileinfo; - enum grub_fshelp_filetype type = GRUB_FSHELP_UNKNOWN; - struct list_nodes_ctx *ctx = hook_arg; - - catkey = (struct grub_hfsplus_catkey *) record; - - fileinfo = - (struct grub_hfsplus_catfile *) ((char *) record - + grub_be_to_cpu16 (catkey->keylen) - + 2 + (grub_be_to_cpu16(catkey->keylen) - % 2)); - - /* Stop iterating when the last directory entry is found. */ - if (grub_be_to_cpu32 (catkey->parent) != ctx->dir->fileid) - return 1; - - /* Determine the type of the node that is found. */ - switch (fileinfo->type) - { - case grub_cpu_to_be16_compile_time (GRUB_HFSPLUS_FILETYPE_REG): - { - int mode = (grub_be_to_cpu16 (fileinfo->mode) - & GRUB_HFSPLUS_FILEMODE_MASK); - - if (mode == GRUB_HFSPLUS_FILEMODE_REG) - type = GRUB_FSHELP_REG; - else if (mode == GRUB_HFSPLUS_FILEMODE_SYMLINK) - type = GRUB_FSHELP_SYMLINK; - else - type = GRUB_FSHELP_UNKNOWN; - break; - } - case grub_cpu_to_be16_compile_time (GRUB_HFSPLUS_FILETYPE_DIR): - type = GRUB_FSHELP_DIR; - break; - case grub_cpu_to_be16_compile_time (GRUB_HFSPLUS_FILETYPE_DIR_THREAD): - if (ctx->dir->fileid == 2) - return 0; - node = grub_malloc (sizeof (*node)); - if (!node) - return 1; - node->data = ctx->dir->data; - node->mtime = 0; - node->size = 0; - node->fileid = grub_be_to_cpu32 (fileinfo->parentid); - - ctx->ret = ctx->hook ("..", GRUB_FSHELP_DIR, node, ctx->hook_data); - return ctx->ret; - } - - if (type == GRUB_FSHELP_UNKNOWN) - return 0; - - filename = grub_malloc (grub_be_to_cpu16 (catkey->namelen) - * GRUB_MAX_UTF8_PER_UTF16 + 1); - if (! filename) - return 0; - - keyname = grub_malloc (grub_be_to_cpu16 (catkey->namelen) * sizeof (*keyname)); - if (!keyname) - { - grub_free (filename); - return 0; - } - - /* Make sure the byte order of the UTF16 string is correct. */ - for (i = 0; i < grub_be_to_cpu16 (catkey->namelen); i++) - { - keyname[i] = grub_be_to_cpu16 (catkey->name[i]); - - if (keyname[i] == '/') - keyname[i] = ':'; - - /* If the name is obviously invalid, skip this node. */ - if (keyname[i] == 0) - { - grub_free (keyname); - grub_free (filename); - return 0; - } - } - - *grub_utf16_to_utf8 ((grub_uint8_t *) filename, keyname, - grub_be_to_cpu16 (catkey->namelen)) = '\0'; - - grub_free (keyname); - - /* hfs+ is case insensitive. */ - if (! ctx->dir->data->case_sensitive) - type |= GRUB_FSHELP_CASE_INSENSITIVE; - - /* A valid node is found; setup the node and call the - callback function. */ - node = grub_malloc (sizeof (*node)); - if (!node) - { - grub_free (filename); - return 1; - } - node->data = ctx->dir->data; - node->compressed = 0; - node->cbuf = 0; - node->compress_index = 0; - - grub_memcpy (node->extents, fileinfo->data.extents, - sizeof (node->extents)); - grub_memcpy (node->resource_extents, fileinfo->resource.extents, - sizeof (node->resource_extents)); - node->mtime = grub_be_to_cpu32 (fileinfo->mtime) - 2082844800; - node->size = grub_be_to_cpu64 (fileinfo->data.size); - node->resource_size = grub_be_to_cpu64 (fileinfo->resource.size); - node->fileid = grub_be_to_cpu32 (fileinfo->fileid); - - ctx->ret = ctx->hook (filename, type, node, ctx->hook_data); - - grub_free (filename); - - return ctx->ret; -} - -static int -grub_hfsplus_iterate_dir (grub_fshelp_node_t dir, - grub_fshelp_iterate_dir_hook_t hook, void *hook_data) -{ - struct list_nodes_ctx ctx = - { - .ret = 0, - .dir = dir, - .hook = hook, - .hook_data = hook_data - }; - - struct grub_hfsplus_key_internal intern; - struct grub_hfsplus_btnode *node = NULL; - grub_disk_addr_t ptr = 0; - - { - struct grub_fshelp_node *fsnode; - fsnode = grub_malloc (sizeof (*fsnode)); - if (!fsnode) - return 1; - *fsnode = *dir; - if (hook (".", GRUB_FSHELP_DIR, fsnode, hook_data)) - return 1; - } - - /* Create a key that points to the first entry in the directory. */ - intern.catkey.parent = dir->fileid; - intern.catkey.name = 0; - intern.catkey.namelen = 0; - - /* First lookup the first entry. */ - if (grub_hfsplus_btree_search (&dir->data->catalog_tree, &intern, - grub_hfsplus_cmp_catkey, &node, &ptr) - || !node) - return 0; - - /* Iterate over all entries in this directory. */ - grub_hfsplus_btree_iterate_node (&dir->data->catalog_tree, node, ptr, - list_nodes, &ctx); - - grub_free (node); - - return ctx.ret; -} - -/* Open a file named NAME and initialize FILE. */ -static grub_err_t -grub_hfsplus_open (struct grub_file *file, const char *name) -{ - struct grub_hfsplus_data *data; - struct grub_fshelp_node *fdiro = 0; - - grub_dl_ref (my_mod); - - data = grub_hfsplus_mount (file->device->disk); - if (!data) - goto fail; - - grub_fshelp_find_file (name, &data->dirroot, &fdiro, - grub_hfsplus_iterate_dir, - grub_hfsplus_read_symlink, GRUB_FSHELP_REG); - if (grub_errno) - goto fail; - - if (grub_hfsplus_open_compressed) - { - grub_err_t err; - err = grub_hfsplus_open_compressed (fdiro); - if (err) - goto fail; - } - - file->size = fdiro->size; - data->opened_file = *fdiro; - grub_free (fdiro); - - file->data = data; - file->offset = 0; - - return 0; - - fail: - if (data && fdiro != &data->dirroot) - grub_free (fdiro); - grub_free (data); - - grub_dl_unref (my_mod); - - return grub_errno; -} - - -static grub_err_t -grub_hfsplus_close (grub_file_t file) -{ - struct grub_hfsplus_data *data = - (struct grub_hfsplus_data *) file->data; - - grub_free (data->opened_file.cbuf); - grub_free (data->opened_file.compress_index); - - grub_free (data); - - grub_dl_unref (my_mod); - - return GRUB_ERR_NONE; -} - -/* Read LEN bytes data from FILE into BUF. */ -static grub_ssize_t -grub_hfsplus_read (grub_file_t file, char *buf, grub_size_t len) -{ - struct grub_hfsplus_data *data = - (struct grub_hfsplus_data *) file->data; - - data->opened_file.file = file; - - if (grub_hfsplus_read_compressed && data->opened_file.compressed) - return grub_hfsplus_read_compressed (&data->opened_file, - file->offset, len, buf); - - return grub_hfsplus_read_file (&data->opened_file, - file->read_hook, file->read_hook_data, - file->offset, len, buf); -} - -/* Context for grub_hfsplus_dir. */ -struct grub_hfsplus_dir_ctx -{ - grub_fs_dir_hook_t hook; - void *hook_data; -}; - -/* Helper for grub_hfsplus_dir. */ -static int -grub_hfsplus_dir_iter (const char *filename, - enum grub_fshelp_filetype filetype, - grub_fshelp_node_t node, void *data) -{ - struct grub_hfsplus_dir_ctx *ctx = data; - struct grub_dirhook_info info; - - grub_memset (&info, 0, sizeof (info)); - info.dir = ((filetype & GRUB_FSHELP_TYPE_MASK) == GRUB_FSHELP_DIR); - info.mtimeset = 1; - info.mtime = node->mtime; - info.inodeset = 1; - info.inode = node->fileid; - info.case_insensitive = !! (filetype & GRUB_FSHELP_CASE_INSENSITIVE); - grub_free (node); - return ctx->hook (filename, &info, ctx->hook_data); -} - -static grub_err_t -grub_hfsplus_dir (grub_device_t device, const char *path, - grub_fs_dir_hook_t hook, void *hook_data) -{ - struct grub_hfsplus_dir_ctx ctx = { hook, hook_data }; - struct grub_hfsplus_data *data = 0; - struct grub_fshelp_node *fdiro = 0; - - grub_dl_ref (my_mod); - - data = grub_hfsplus_mount (device->disk); - if (!data) - goto fail; - - /* Find the directory that should be opened. */ - grub_fshelp_find_file (path, &data->dirroot, &fdiro, - grub_hfsplus_iterate_dir, - grub_hfsplus_read_symlink, GRUB_FSHELP_DIR); - if (grub_errno) - goto fail; - - /* Iterate over all entries in this directory. */ - grub_hfsplus_iterate_dir (fdiro, grub_hfsplus_dir_iter, &ctx); - - fail: - if (data && fdiro != &data->dirroot) - grub_free (fdiro); - grub_free (data); - - grub_dl_unref (my_mod); - - return grub_errno; -} - - -static grub_err_t -grub_hfsplus_label (grub_device_t device, char **label) -{ - struct grub_hfsplus_data *data; - grub_disk_t disk = device->disk; - struct grub_hfsplus_catkey *catkey; - int i, label_len; - grub_uint16_t *label_name; - struct grub_hfsplus_key_internal intern; - struct grub_hfsplus_btnode *node = NULL; - grub_disk_addr_t ptr = 0; - - *label = 0; - - data = grub_hfsplus_mount (disk); - if (!data) - return grub_errno; - - /* Create a key that points to the label. */ - intern.catkey.parent = 1; - intern.catkey.name = 0; - intern.catkey.namelen = 0; - - /* First lookup the first entry. */ - if (grub_hfsplus_btree_search (&data->catalog_tree, &intern, - grub_hfsplus_cmp_catkey_id, &node, &ptr) - || !node) - { - grub_free (data); - return 0; - } - - catkey = (struct grub_hfsplus_catkey *) - grub_hfsplus_btree_recptr (&data->catalog_tree, node, ptr); - - label_len = grub_be_to_cpu16 (catkey->namelen); - label_name = grub_malloc (label_len * sizeof (*label_name)); - if (!label_name) - { - grub_free (node); - grub_free (data); - return grub_errno; - } - - for (i = 0; i < label_len; i++) - { - label_name[i] = grub_be_to_cpu16 (catkey->name[i]); - - /* If the name is obviously invalid, skip this node. */ - if (label_name[i] == 0) - { - grub_free (label_name); - grub_free (node); - grub_free (data); - return 0; - } - } - - *label = grub_malloc (label_len * GRUB_MAX_UTF8_PER_UTF16 + 1); - if (! *label) - { - grub_free (label_name); - grub_free (node); - grub_free (data); - return grub_errno; - } - - *grub_utf16_to_utf8 ((grub_uint8_t *) (*label), label_name, - label_len) = '\0'; - - grub_free (label_name); - grub_free (node); - grub_free (data); - - return GRUB_ERR_NONE; -} - -/* Get mtime. */ -static grub_err_t -grub_hfsplus_mtime (grub_device_t device, grub_int32_t *tm) -{ - struct grub_hfsplus_data *data; - grub_disk_t disk = device->disk; - - grub_dl_ref (my_mod); - - data = grub_hfsplus_mount (disk); - if (!data) - *tm = 0; - else - *tm = grub_be_to_cpu32 (data->volheader.utime) - 2082844800; - - grub_dl_unref (my_mod); - - grub_free (data); - - return grub_errno; - -} - -static grub_err_t -grub_hfsplus_uuid (grub_device_t device, char **uuid) -{ - struct grub_hfsplus_data *data; - grub_disk_t disk = device->disk; - - grub_dl_ref (my_mod); - - data = grub_hfsplus_mount (disk); - if (data) - { - *uuid = grub_xasprintf ("%016llx", - (unsigned long long) - grub_be_to_cpu64 (data->volheader.num_serial)); - } - else - *uuid = NULL; - - grub_dl_unref (my_mod); - - grub_free (data); - - return grub_errno; -} - - - -static struct grub_fs grub_hfsplus_fs = - { - .name = "hfsplus", - .fs_dir = grub_hfsplus_dir, - .fs_open = grub_hfsplus_open, - .fs_read = grub_hfsplus_read, - .fs_close = grub_hfsplus_close, - .fs_label = grub_hfsplus_label, - .fs_mtime = grub_hfsplus_mtime, - .fs_uuid = grub_hfsplus_uuid, -#ifdef GRUB_UTIL - .reserved_first_sector = 1, - .blocklist_install = 1, -#endif - .next = 0 - }; - -GRUB_MOD_INIT(hfsplus) -{ - grub_fs_register (&grub_hfsplus_fs); - my_mod = mod; -} - -GRUB_MOD_FINI(hfsplus) -{ - grub_fs_unregister (&grub_hfsplus_fs); -} diff --git a/thirdparty/grub-2.04/grub-core/fs/hfspluscomp.c b/thirdparty/grub-2.04/grub-core/fs/hfspluscomp.c deleted file mode 100644 index d76f3f137..000000000 --- a/thirdparty/grub-2.04/grub-core/fs/hfspluscomp.c +++ /dev/null @@ -1,317 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2012 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -/* HFS+ is documented at http://developer.apple.com/technotes/tn/tn1150.html */ - -#include -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -/* big-endian. */ -struct grub_hfsplus_compress_header1 -{ - grub_uint32_t header_size; - grub_uint32_t end_descriptor_offset; - grub_uint32_t total_compressed_size_including_seek_blocks_and_header2; - grub_uint32_t value_0x32; - grub_uint8_t unused[0xf0]; -} GRUB_PACKED; - -/* big-endian. */ -struct grub_hfsplus_compress_header2 -{ - grub_uint32_t total_compressed_size_including_seek_blocks; -} GRUB_PACKED; - -/* little-endian. */ -struct grub_hfsplus_compress_header3 -{ - grub_uint32_t num_chunks; -} GRUB_PACKED; - -/* little-endian. */ -struct grub_hfsplus_compress_block_descriptor -{ - grub_uint32_t offset; - grub_uint32_t size; -}; - -struct grub_hfsplus_compress_end_descriptor -{ - grub_uint8_t always_the_same[50]; -} GRUB_PACKED; - -struct grub_hfsplus_attr_header -{ - grub_uint8_t unused[3]; - grub_uint8_t type; - grub_uint32_t unknown[1]; - grub_uint64_t size; -} GRUB_PACKED; - -struct grub_hfsplus_compress_attr -{ - grub_uint32_t magic; - grub_uint32_t type; - grub_uint32_t uncompressed_inline_size; - grub_uint32_t always_0; -} GRUB_PACKED; - -enum - { - HFSPLUS_COMPRESSION_INLINE = 3, - HFSPLUS_COMPRESSION_RESOURCE = 4 - }; - -static int -grub_hfsplus_cmp_attrkey (struct grub_hfsplus_key *keya, - struct grub_hfsplus_key_internal *keyb) -{ - struct grub_hfsplus_attrkey *attrkey_a = &keya->attrkey; - struct grub_hfsplus_attrkey_internal *attrkey_b = &keyb->attrkey; - grub_uint32_t aparent = grub_be_to_cpu32 (attrkey_a->cnid); - grub_size_t len; - int diff; - - if (aparent > attrkey_b->cnid) - return 1; - if (aparent < attrkey_b->cnid) - return -1; - - len = grub_be_to_cpu16 (attrkey_a->namelen); - if (len > attrkey_b->namelen) - len = attrkey_b->namelen; - /* Since it's big-endian memcmp gives the same result as manually comparing - uint16_t but may be faster. */ - diff = grub_memcmp (attrkey_a->name, attrkey_b->name, - len * sizeof (attrkey_a->name[0])); - if (diff == 0) - diff = grub_be_to_cpu16 (attrkey_a->namelen) - attrkey_b->namelen; - return diff; -} - -#define HFSPLUS_COMPRESS_BLOCK_SIZE 65536 - -static grub_ssize_t -hfsplus_read_compressed_real (struct grub_hfsplus_file *node, - grub_off_t pos, grub_size_t len, char *buf) -{ - char *tmp_buf = 0; - grub_size_t len0 = len; - - if (node->compressed == 1) - { - grub_memcpy (buf, node->cbuf + pos, len); - if (grub_file_progress_hook && node->file) - grub_file_progress_hook (0, 0, len, node->file); - return len; - } - - while (len) - { - grub_uint32_t block = pos / HFSPLUS_COMPRESS_BLOCK_SIZE; - grub_size_t curlen = HFSPLUS_COMPRESS_BLOCK_SIZE - - (pos % HFSPLUS_COMPRESS_BLOCK_SIZE); - - if (curlen > len) - curlen = len; - - if (node->cbuf_block != block) - { - grub_uint32_t sz = grub_le_to_cpu32 (node->compress_index[block].size); - grub_size_t ts; - if (!tmp_buf) - tmp_buf = grub_malloc (HFSPLUS_COMPRESS_BLOCK_SIZE); - if (!tmp_buf) - return -1; - if (grub_hfsplus_read_file (node, 0, 0, - grub_le_to_cpu32 (node->compress_index[block].start) + 0x104, - sz, tmp_buf) - != (grub_ssize_t) sz) - { - grub_free (tmp_buf); - return -1; - } - ts = HFSPLUS_COMPRESS_BLOCK_SIZE; - if (ts > node->size - (pos & ~(HFSPLUS_COMPRESS_BLOCK_SIZE))) - ts = node->size - (pos & ~(HFSPLUS_COMPRESS_BLOCK_SIZE)); - if (grub_zlib_decompress (tmp_buf, sz, 0, - node->cbuf, ts) != (grub_ssize_t) ts) - { - if (!grub_errno) - grub_error (GRUB_ERR_BAD_COMPRESSED_DATA, - "premature end of compressed"); - - grub_free (tmp_buf); - return -1; - } - node->cbuf_block = block; - } - grub_memcpy (buf, node->cbuf + (pos % HFSPLUS_COMPRESS_BLOCK_SIZE), - curlen); - if (grub_file_progress_hook && node->file) - grub_file_progress_hook (0, 0, curlen, node->file); - buf += curlen; - pos += curlen; - len -= curlen; - } - grub_free (tmp_buf); - return len0; -} - -static grub_err_t -hfsplus_open_compressed_real (struct grub_hfsplus_file *node) -{ - grub_err_t err; - struct grub_hfsplus_btnode *attr_node; - grub_off_t attr_off; - struct grub_hfsplus_key_internal key; - struct grub_hfsplus_attr_header *attr_head; - struct grub_hfsplus_compress_attr *cmp_head; -#define c grub_cpu_to_be16_compile_time - const grub_uint16_t compress_attr_name[] = - { - c('c'), c('o'), c('m'), c('.'), c('a'), c('p'), c('p'), c('l'), c('e'), - c('.'), c('d'), c('e'), c('c'), c('m'), c('p'), c('f'), c('s') }; -#undef c - if (node->size) - return 0; - - key.attrkey.cnid = node->fileid; - key.attrkey.namelen = sizeof (compress_attr_name) / sizeof (compress_attr_name[0]); - key.attrkey.name = compress_attr_name; - - err = grub_hfsplus_btree_search (&node->data->attr_tree, &key, - grub_hfsplus_cmp_attrkey, - &attr_node, &attr_off); - if (err || !attr_node) - { - grub_errno = 0; - return 0; - } - - attr_head = (struct grub_hfsplus_attr_header *) - ((char *) grub_hfsplus_btree_recptr (&node->data->attr_tree, - attr_node, attr_off) - + sizeof (struct grub_hfsplus_attrkey) + sizeof (compress_attr_name)); - if (attr_head->type != 0x10 - || !(attr_head->size & grub_cpu_to_be64_compile_time(~0xfULL))) - { - grub_free (attr_node); - return 0; - } - cmp_head = (struct grub_hfsplus_compress_attr *) (attr_head + 1); - if (cmp_head->magic != grub_cpu_to_be32_compile_time (0x66706d63)) - { - grub_free (attr_node); - return 0; - } - node->size = grub_le_to_cpu32 (cmp_head->uncompressed_inline_size); - - if (cmp_head->type == grub_cpu_to_le32_compile_time (HFSPLUS_COMPRESSION_RESOURCE)) - { - grub_uint32_t index_size; - node->compressed = 2; - - if (grub_hfsplus_read_file (node, 0, 0, - 0x104, sizeof (index_size), - (char *) &index_size) - != 4) - { - node->compressed = 0; - grub_free (attr_node); - grub_errno = 0; - return 0; - } - node->compress_index_size = grub_le_to_cpu32 (index_size); - node->compress_index = grub_malloc (node->compress_index_size - * sizeof (node->compress_index[0])); - if (!node->compress_index) - { - node->compressed = 0; - grub_free (attr_node); - return grub_errno; - } - if (grub_hfsplus_read_file (node, 0, 0, - 0x104 + sizeof (index_size), - node->compress_index_size - * sizeof (node->compress_index[0]), - (char *) node->compress_index) - != (grub_ssize_t) (node->compress_index_size - * sizeof (node->compress_index[0]))) - { - node->compressed = 0; - grub_free (attr_node); - grub_free (node->compress_index); - grub_errno = 0; - return 0; - } - - node->cbuf_block = -1; - - node->cbuf = grub_malloc (HFSPLUS_COMPRESS_BLOCK_SIZE); - grub_free (attr_node); - if (!node->cbuf) - { - node->compressed = 0; - grub_free (node->compress_index); - return grub_errno; - } - return 0; - } - if (cmp_head->type != HFSPLUS_COMPRESSION_INLINE) - { - grub_free (attr_node); - return 0; - } - - node->cbuf = grub_malloc (node->size); - if (!node->cbuf) - return grub_errno; - - if (grub_zlib_decompress ((char *) (cmp_head + 1), - grub_cpu_to_be64 (attr_head->size) - - sizeof (*cmp_head), 0, - node->cbuf, node->size) - != (grub_ssize_t) node->size) - { - if (!grub_errno) - grub_error (GRUB_ERR_BAD_COMPRESSED_DATA, - "premature end of compressed"); - return grub_errno; - } - node->compressed = 1; - return 0; -} - -GRUB_MOD_INIT(hfspluscomp) -{ - grub_hfsplus_open_compressed = hfsplus_open_compressed_real; - grub_hfsplus_read_compressed = hfsplus_read_compressed_real; -} - -GRUB_MOD_FINI(hfspluscomp) -{ - grub_hfsplus_open_compressed = 0; - grub_hfsplus_read_compressed = 0; -} diff --git a/thirdparty/grub-2.04/grub-core/fs/iso9660.c b/thirdparty/grub-2.04/grub-core/fs/iso9660.c deleted file mode 100644 index 49c0c632b..000000000 --- a/thirdparty/grub-2.04/grub-core/fs/iso9660.c +++ /dev/null @@ -1,1125 +0,0 @@ -/* iso9660.c - iso9660 implementation with extensions: - SUSP, Rock Ridge. */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2004,2005,2006,2007,2008,2009,2010 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -#define GRUB_ISO9660_FSTYPE_DIR 0040000 -#define GRUB_ISO9660_FSTYPE_REG 0100000 -#define GRUB_ISO9660_FSTYPE_SYMLINK 0120000 -#define GRUB_ISO9660_FSTYPE_MASK 0170000 - -#define GRUB_ISO9660_LOG2_BLKSZ 2 -#define GRUB_ISO9660_BLKSZ 2048 - -#define GRUB_ISO9660_RR_DOT 2 -#define GRUB_ISO9660_RR_DOTDOT 4 - -#define GRUB_ISO9660_VOLDESC_BOOT 0 -#define GRUB_ISO9660_VOLDESC_PRIMARY 1 -#define GRUB_ISO9660_VOLDESC_SUPP 2 -#define GRUB_ISO9660_VOLDESC_PART 3 -#define GRUB_ISO9660_VOLDESC_END 255 - -/* The head of a volume descriptor. */ -struct grub_iso9660_voldesc -{ - grub_uint8_t type; - grub_uint8_t magic[5]; - grub_uint8_t version; -} GRUB_PACKED; - -struct grub_iso9660_date2 -{ - grub_uint8_t year; - grub_uint8_t month; - grub_uint8_t day; - grub_uint8_t hour; - grub_uint8_t minute; - grub_uint8_t second; - grub_uint8_t offset; -} GRUB_PACKED; - -/* A directory entry. */ -struct grub_iso9660_dir -{ - grub_uint8_t len; - grub_uint8_t ext_sectors; - grub_uint32_t first_sector; - grub_uint32_t first_sector_be; - grub_uint32_t size; - grub_uint32_t size_be; - struct grub_iso9660_date2 mtime; - grub_uint8_t flags; - grub_uint8_t unused2[6]; -#define MAX_NAMELEN 255 - grub_uint8_t namelen; -} GRUB_PACKED; - -struct grub_iso9660_date -{ - grub_uint8_t year[4]; - grub_uint8_t month[2]; - grub_uint8_t day[2]; - grub_uint8_t hour[2]; - grub_uint8_t minute[2]; - grub_uint8_t second[2]; - grub_uint8_t hundredth[2]; - grub_uint8_t offset; -} GRUB_PACKED; - -/* The primary volume descriptor. Only little endian is used. */ -struct grub_iso9660_primary_voldesc -{ - struct grub_iso9660_voldesc voldesc; - grub_uint8_t unused1[33]; - grub_uint8_t volname[32]; - grub_uint8_t unused2[16]; - grub_uint8_t escape[32]; - grub_uint8_t unused3[12]; - grub_uint32_t path_table_size; - grub_uint8_t unused4[4]; - grub_uint32_t path_table; - grub_uint8_t unused5[12]; - struct grub_iso9660_dir rootdir; - grub_uint8_t unused6[624]; - struct grub_iso9660_date created; - struct grub_iso9660_date modified; -} GRUB_PACKED; - -/* A single entry in the path table. */ -struct grub_iso9660_path -{ - grub_uint8_t len; - grub_uint8_t sectors; - grub_uint32_t first_sector; - grub_uint16_t parentdir; - grub_uint8_t name[0]; -} GRUB_PACKED; - -/* An entry in the System Usage area of the directory entry. */ -struct grub_iso9660_susp_entry -{ - grub_uint8_t sig[2]; - grub_uint8_t len; - grub_uint8_t version; - grub_uint8_t data[0]; -} GRUB_PACKED; - -/* The CE entry. This is used to describe the next block where data - can be found. */ -struct grub_iso9660_susp_ce -{ - struct grub_iso9660_susp_entry entry; - grub_uint32_t blk; - grub_uint32_t blk_be; - grub_uint32_t off; - grub_uint32_t off_be; - grub_uint32_t len; - grub_uint32_t len_be; -} GRUB_PACKED; - -struct grub_iso9660_data -{ - struct grub_iso9660_primary_voldesc voldesc; - grub_disk_t disk; - int rockridge; - int susp_skip; - int joliet; - struct grub_fshelp_node *node; -}; - -struct grub_fshelp_node -{ - struct grub_iso9660_data *data; - grub_size_t have_dirents, alloc_dirents; - int have_symlink; - struct grub_iso9660_dir dirents[8]; - char symlink[0]; -}; - -enum - { - FLAG_TYPE_PLAIN = 0, - FLAG_TYPE_DIR = 2, - FLAG_TYPE = 3, - FLAG_MORE_EXTENTS = 0x80 - }; - -static grub_dl_t my_mod; - - -static grub_err_t -iso9660_to_unixtime (const struct grub_iso9660_date *i, grub_int32_t *nix) -{ - struct grub_datetime datetime; - - if (! i->year[0] && ! i->year[1] - && ! i->year[2] && ! i->year[3] - && ! i->month[0] && ! i->month[1] - && ! i->day[0] && ! i->day[1] - && ! i->hour[0] && ! i->hour[1] - && ! i->minute[0] && ! i->minute[1] - && ! i->second[0] && ! i->second[1] - && ! i->hundredth[0] && ! i->hundredth[1]) - return grub_error (GRUB_ERR_BAD_NUMBER, "empty date"); - datetime.year = (i->year[0] - '0') * 1000 + (i->year[1] - '0') * 100 - + (i->year[2] - '0') * 10 + (i->year[3] - '0'); - datetime.month = (i->month[0] - '0') * 10 + (i->month[1] - '0'); - datetime.day = (i->day[0] - '0') * 10 + (i->day[1] - '0'); - datetime.hour = (i->hour[0] - '0') * 10 + (i->hour[1] - '0'); - datetime.minute = (i->minute[0] - '0') * 10 + (i->minute[1] - '0'); - datetime.second = (i->second[0] - '0') * 10 + (i->second[1] - '0'); - - if (!grub_datetime2unixtime (&datetime, nix)) - return grub_error (GRUB_ERR_BAD_NUMBER, "incorrect date"); - *nix -= i->offset * 60 * 15; - return GRUB_ERR_NONE; -} - -static int -iso9660_to_unixtime2 (const struct grub_iso9660_date2 *i, grub_int32_t *nix) -{ - struct grub_datetime datetime; - - datetime.year = i->year + 1900; - datetime.month = i->month; - datetime.day = i->day; - datetime.hour = i->hour; - datetime.minute = i->minute; - datetime.second = i->second; - - if (!grub_datetime2unixtime (&datetime, nix)) - return 0; - *nix -= i->offset * 60 * 15; - return 1; -} - -static grub_err_t -read_node (grub_fshelp_node_t node, grub_off_t off, grub_size_t len, char *buf) -{ - grub_size_t i = 0; - - while (len > 0) - { - grub_size_t toread; - grub_err_t err; - while (i < node->have_dirents - && off >= grub_le_to_cpu32 (node->dirents[i].size)) - { - off -= grub_le_to_cpu32 (node->dirents[i].size); - i++; - } - if (i == node->have_dirents) - return grub_error (GRUB_ERR_OUT_OF_RANGE, "read out of range"); - toread = grub_le_to_cpu32 (node->dirents[i].size); - if (toread > len) - toread = len; - err = grub_disk_read (node->data->disk, - ((grub_disk_addr_t) grub_le_to_cpu32 (node->dirents[i].first_sector)) << GRUB_ISO9660_LOG2_BLKSZ, - off, toread, buf); - if (err) - return err; - len -= toread; - off += toread; - buf += toread; - } - return GRUB_ERR_NONE; -} - -/* Iterate over the susp entries, starting with block SUA_BLOCK on the - offset SUA_POS with a size of SUA_SIZE bytes. Hook is called for - every entry. */ -static grub_err_t -grub_iso9660_susp_iterate (grub_fshelp_node_t node, grub_off_t off, - grub_ssize_t sua_size, - grub_err_t (*hook) - (struct grub_iso9660_susp_entry *entry, void *hook_arg), - void *hook_arg) -{ - char *sua; - struct grub_iso9660_susp_entry *entry; - grub_err_t err; - - if (sua_size <= 0) - return GRUB_ERR_NONE; - - sua = grub_malloc (sua_size); - if (!sua) - return grub_errno; - - /* Load a part of the System Usage Area. */ - err = read_node (node, off, sua_size, sua); - if (err) - return err; - - for (entry = (struct grub_iso9660_susp_entry *) sua; (char *) entry < (char *) sua + sua_size - 1 && entry->len > 0; - entry = (struct grub_iso9660_susp_entry *) - ((char *) entry + entry->len)) - { - /* The last entry. */ - if (grub_strncmp ((char *) entry->sig, "ST", 2) == 0) - break; - - /* Additional entries are stored elsewhere. */ - if (grub_strncmp ((char *) entry->sig, "CE", 2) == 0) - { - struct grub_iso9660_susp_ce *ce; - grub_disk_addr_t ce_block; - - ce = (struct grub_iso9660_susp_ce *) entry; - sua_size = grub_le_to_cpu32 (ce->len); - off = grub_le_to_cpu32 (ce->off); - ce_block = grub_le_to_cpu32 (ce->blk) << GRUB_ISO9660_LOG2_BLKSZ; - - grub_free (sua); - sua = grub_malloc (sua_size); - if (!sua) - return grub_errno; - - /* Load a part of the System Usage Area. */ - err = grub_disk_read (node->data->disk, ce_block, off, - sua_size, sua); - if (err) - return err; - - entry = (struct grub_iso9660_susp_entry *) sua; - } - - if (hook (entry, hook_arg)) - { - grub_free (sua); - return 0; - } - } - - grub_free (sua); - return 0; -} - -static char * -grub_iso9660_convert_string (grub_uint8_t *us, int len) -{ - char *p; - int i; - grub_uint16_t t[MAX_NAMELEN / 2 + 1]; - - p = grub_malloc (len * GRUB_MAX_UTF8_PER_UTF16 + 1); - if (! p) - return NULL; - - for (i=0; isig, "ER", 2) == 0) - { - data->rockridge = 1; - return 1; - } - return 0; -} - -static grub_err_t -set_rockridge (struct grub_iso9660_data *data) -{ - int sua_pos; - int sua_size; - char *sua; - struct grub_iso9660_dir rootdir; - struct grub_iso9660_susp_entry *entry; - - data->rockridge = 0; - - /* Read the system use area and test it to see if SUSP is - supported. */ - if (grub_disk_read (data->disk, - (grub_le_to_cpu32 (data->voldesc.rootdir.first_sector) - << GRUB_ISO9660_LOG2_BLKSZ), 0, - sizeof (rootdir), (char *) &rootdir)) - return grub_error (GRUB_ERR_BAD_FS, "not a ISO9660 filesystem"); - - sua_pos = (sizeof (rootdir) + rootdir.namelen - + (rootdir.namelen % 2) - 1); - sua_size = rootdir.len - sua_pos; - - if (!sua_size) - return GRUB_ERR_NONE; - - sua = grub_malloc (sua_size); - if (! sua) - return grub_errno; - - if (grub_disk_read (data->disk, - (grub_le_to_cpu32 (data->voldesc.rootdir.first_sector) - << GRUB_ISO9660_LOG2_BLKSZ), sua_pos, - sua_size, sua)) - { - grub_free (sua); - return grub_error (GRUB_ERR_BAD_FS, "not a ISO9660 filesystem"); - } - - entry = (struct grub_iso9660_susp_entry *) sua; - - /* Test if the SUSP protocol is used on this filesystem. */ - if (grub_strncmp ((char *) entry->sig, "SP", 2) == 0) - { - struct grub_fshelp_node rootnode; - - rootnode.data = data; - rootnode.alloc_dirents = ARRAY_SIZE (rootnode.dirents); - rootnode.have_dirents = 1; - rootnode.have_symlink = 0; - rootnode.dirents[0] = data->voldesc.rootdir; - - /* The 2nd data byte stored how many bytes are skipped every time - to get to the SUA (System Usage Area). */ - data->susp_skip = entry->data[2]; - entry = (struct grub_iso9660_susp_entry *) ((char *) entry + entry->len); - - /* Iterate over the entries in the SUA area to detect - extensions. */ - if (grub_iso9660_susp_iterate (&rootnode, - sua_pos, sua_size, susp_iterate_set_rockridge, - data)) - { - grub_free (sua); - return grub_errno; - } - } - grub_free (sua); - return GRUB_ERR_NONE; -} - -static struct grub_iso9660_data * -grub_iso9660_mount (grub_disk_t disk) -{ - struct grub_iso9660_data *data = 0; - struct grub_iso9660_primary_voldesc voldesc; - int block; - - data = grub_zalloc (sizeof (struct grub_iso9660_data)); - if (! data) - return 0; - - data->disk = disk; - - block = 16; - do - { - int copy_voldesc = 0; - - /* Read the superblock. */ - if (grub_disk_read (disk, block << GRUB_ISO9660_LOG2_BLKSZ, 0, - sizeof (struct grub_iso9660_primary_voldesc), - (char *) &voldesc)) - { - grub_error (GRUB_ERR_BAD_FS, "not a ISO9660 filesystem"); - goto fail; - } - - if (grub_strncmp ((char *) voldesc.voldesc.magic, "CD001", 5) != 0) - { - grub_error (GRUB_ERR_BAD_FS, "not a ISO9660 filesystem"); - goto fail; - } - - if (voldesc.voldesc.type == GRUB_ISO9660_VOLDESC_PRIMARY) - copy_voldesc = 1; - else if (!data->rockridge - && (voldesc.voldesc.type == GRUB_ISO9660_VOLDESC_SUPP) - && (voldesc.escape[0] == 0x25) && (voldesc.escape[1] == 0x2f) - && - ((voldesc.escape[2] == 0x40) || /* UCS-2 Level 1. */ - (voldesc.escape[2] == 0x43) || /* UCS-2 Level 2. */ - (voldesc.escape[2] == 0x45))) /* UCS-2 Level 3. */ - { - copy_voldesc = 1; - data->joliet = 1; - } - - if (copy_voldesc) - { - grub_memcpy((char *) &data->voldesc, (char *) &voldesc, - sizeof (struct grub_iso9660_primary_voldesc)); - if (set_rockridge (data)) - goto fail; - } - - block++; - } while (voldesc.voldesc.type != GRUB_ISO9660_VOLDESC_END); - - return data; - - fail: - grub_free (data); - return 0; -} - - -static char * -grub_iso9660_read_symlink (grub_fshelp_node_t node) -{ - return node->have_symlink - ? grub_strdup (node->symlink - + (node->have_dirents) * sizeof (node->dirents[0]) - - sizeof (node->dirents)) : grub_strdup (""); -} - -static grub_off_t -get_node_size (grub_fshelp_node_t node) -{ - grub_off_t ret = 0; - grub_size_t i; - - for (i = 0; i < node->have_dirents; i++) - ret += grub_le_to_cpu32 (node->dirents[i].size); - return ret; -} - -struct iterate_dir_ctx -{ - char *filename; - int filename_alloc; - enum grub_fshelp_filetype type; - char *symlink; - int was_continue; -}; - - /* Extend the symlink. */ -static void -add_part (struct iterate_dir_ctx *ctx, - const char *part, - int len2) -{ - int size = ctx->symlink ? grub_strlen (ctx->symlink) : 0; - - ctx->symlink = grub_realloc (ctx->symlink, size + len2 + 1); - if (! ctx->symlink) - return; - - grub_memcpy (ctx->symlink + size, part, len2); - ctx->symlink[size + len2] = 0; -} - -static grub_err_t -susp_iterate_dir (struct grub_iso9660_susp_entry *entry, - void *_ctx) -{ - struct iterate_dir_ctx *ctx = _ctx; - - /* The filename in the rock ridge entry. */ - if (grub_strncmp ("NM", (char *) entry->sig, 2) == 0) - { - /* The flags are stored at the data position 0, here the - filename type is stored. */ - /* FIXME: Fix this slightly improper cast. */ - if (entry->data[0] & GRUB_ISO9660_RR_DOT) - ctx->filename = (char *) "."; - else if (entry->data[0] & GRUB_ISO9660_RR_DOTDOT) - ctx->filename = (char *) ".."; - else if (entry->len >= 5) - { - grub_size_t off = 0, csize = 1; - char *old; - csize = entry->len - 5; - old = ctx->filename; - if (ctx->filename_alloc) - { - off = grub_strlen (ctx->filename); - ctx->filename = grub_realloc (ctx->filename, csize + off + 1); - } - else - { - off = 0; - ctx->filename = grub_zalloc (csize + 1); - } - if (!ctx->filename) - { - ctx->filename = old; - return grub_errno; - } - ctx->filename_alloc = 1; - grub_memcpy (ctx->filename + off, (char *) &entry->data[1], csize); - ctx->filename[off + csize] = '\0'; - } - } - /* The mode information (st_mode). */ - else if (grub_strncmp ((char *) entry->sig, "PX", 2) == 0) - { - /* At position 0 of the PX record the st_mode information is - stored (little-endian). */ - grub_uint32_t mode = ((entry->data[0] + (entry->data[1] << 8)) - & GRUB_ISO9660_FSTYPE_MASK); - - switch (mode) - { - case GRUB_ISO9660_FSTYPE_DIR: - ctx->type = GRUB_FSHELP_DIR; - break; - case GRUB_ISO9660_FSTYPE_REG: - ctx->type = GRUB_FSHELP_REG; - break; - case GRUB_ISO9660_FSTYPE_SYMLINK: - ctx->type = GRUB_FSHELP_SYMLINK; - break; - default: - ctx->type = GRUB_FSHELP_UNKNOWN; - } - } - else if (grub_strncmp ("SL", (char *) entry->sig, 2) == 0) - { - unsigned int pos = 1; - - /* The symlink is not stored as a POSIX symlink, translate it. */ - while (pos + sizeof (*entry) < entry->len) - { - /* The current position is the `Component Flag'. */ - switch (entry->data[pos] & 30) - { - case 0: - { - /* The data on pos + 2 is the actual data, pos + 1 - is the length. Both are part of the `Component - Record'. */ - if (ctx->symlink && !ctx->was_continue) - add_part (ctx, "/", 1); - add_part (ctx, (char *) &entry->data[pos + 2], - entry->data[pos + 1]); - ctx->was_continue = (entry->data[pos] & 1); - break; - } - - case 2: - add_part (ctx, "./", 2); - break; - - case 4: - add_part (ctx, "../", 3); - break; - - case 8: - add_part (ctx, "/", 1); - break; - } - /* In pos + 1 the length of the `Component Record' is - stored. */ - pos += entry->data[pos + 1] + 2; - } - - /* Check if `grub_realloc' failed. */ - if (grub_errno) - return grub_errno; - } - - return 0; -} - -static int -grub_iso9660_iterate_dir (grub_fshelp_node_t dir, - grub_fshelp_iterate_dir_hook_t hook, void *hook_data) -{ - struct grub_iso9660_dir dirent; - grub_off_t offset = 0; - grub_off_t len; - struct iterate_dir_ctx ctx; - - len = get_node_size (dir); - - for (; offset < len; offset += dirent.len) - { - ctx.symlink = 0; - ctx.was_continue = 0; - - if (read_node (dir, offset, sizeof (dirent), (char *) &dirent)) - return 0; - - /* The end of the block, skip to the next one. */ - if (!dirent.len) - { - offset = (offset / GRUB_ISO9660_BLKSZ + 1) * GRUB_ISO9660_BLKSZ; - continue; - } - - { - char name[MAX_NAMELEN + 1]; - int nameoffset = offset + sizeof (dirent); - struct grub_fshelp_node *node; - int sua_off = (sizeof (dirent) + dirent.namelen + 1 - - (dirent.namelen % 2)); - int sua_size = dirent.len - sua_off; - - sua_off += offset + dir->data->susp_skip; - - ctx.filename = 0; - ctx.filename_alloc = 0; - ctx.type = GRUB_FSHELP_UNKNOWN; - - if (dir->data->rockridge - && grub_iso9660_susp_iterate (dir, sua_off, sua_size, - susp_iterate_dir, &ctx)) - return 0; - - /* Read the name. */ - if (read_node (dir, nameoffset, dirent.namelen, (char *) name)) - return 0; - - node = grub_malloc (sizeof (struct grub_fshelp_node)); - if (!node) - return 0; - - node->alloc_dirents = ARRAY_SIZE (node->dirents); - node->have_dirents = 1; - - /* Setup a new node. */ - node->data = dir->data; - node->have_symlink = 0; - - /* If the filetype was not stored using rockridge, use - whatever is stored in the iso9660 filesystem. */ - if (ctx.type == GRUB_FSHELP_UNKNOWN) - { - if ((dirent.flags & FLAG_TYPE) == FLAG_TYPE_DIR) - ctx.type = GRUB_FSHELP_DIR; - else - ctx.type = GRUB_FSHELP_REG; - } - - /* . and .. */ - if (!ctx.filename && dirent.namelen == 1 && name[0] == 0) - ctx.filename = (char *) "."; - - if (!ctx.filename && dirent.namelen == 1 && name[0] == 1) - ctx.filename = (char *) ".."; - - /* The filename was not stored in a rock ridge entry. Read it - from the iso9660 filesystem. */ - if (!dir->data->joliet && !ctx.filename) - { - char *ptr; - name[dirent.namelen] = '\0'; - ctx.filename = grub_strrchr (name, ';'); - if (ctx.filename) - *ctx.filename = '\0'; - /* ISO9660 names are not case-preserving. */ - ctx.type |= GRUB_FSHELP_CASE_INSENSITIVE; - for (ptr = name; *ptr; ptr++) - *ptr = grub_tolower (*ptr); - if (ptr != name && *(ptr - 1) == '.') - *(ptr - 1) = 0; - ctx.filename = name; - } - - if (dir->data->joliet && !ctx.filename) - { - char *semicolon; - - ctx.filename = grub_iso9660_convert_string - ((grub_uint8_t *) name, dirent.namelen >> 1); - - semicolon = grub_strrchr (ctx.filename, ';'); - if (semicolon) - *semicolon = '\0'; - - ctx.filename_alloc = 1; - } - - node->dirents[0] = dirent; - while (dirent.flags & FLAG_MORE_EXTENTS) - { - offset += dirent.len; - if (read_node (dir, offset, sizeof (dirent), (char *) &dirent)) - { - if (ctx.filename_alloc) - grub_free (ctx.filename); - grub_free (node); - return 0; - } - if (node->have_dirents >= node->alloc_dirents) - { - struct grub_fshelp_node *new_node; - node->alloc_dirents *= 2; - new_node = grub_realloc (node, - sizeof (struct grub_fshelp_node) - + ((node->alloc_dirents - - ARRAY_SIZE (node->dirents)) - * sizeof (node->dirents[0]))); - if (!new_node) - { - if (ctx.filename_alloc) - grub_free (ctx.filename); - grub_free (node); - return 0; - } - node = new_node; - } - node->dirents[node->have_dirents++] = dirent; - } - if (ctx.symlink) - { - if ((node->alloc_dirents - node->have_dirents) - * sizeof (node->dirents[0]) < grub_strlen (ctx.symlink) + 1) - { - struct grub_fshelp_node *new_node; - new_node = grub_realloc (node, - sizeof (struct grub_fshelp_node) - + ((node->alloc_dirents - - ARRAY_SIZE (node->dirents)) - * sizeof (node->dirents[0])) - + grub_strlen (ctx.symlink) + 1); - if (!new_node) - { - if (ctx.filename_alloc) - grub_free (ctx.filename); - grub_free (node); - return 0; - } - node = new_node; - } - node->have_symlink = 1; - grub_strcpy (node->symlink - + node->have_dirents * sizeof (node->dirents[0]) - - sizeof (node->dirents), ctx.symlink); - grub_free (ctx.symlink); - ctx.symlink = 0; - ctx.was_continue = 0; - } - if (hook (ctx.filename, ctx.type, node, hook_data)) - { - if (ctx.filename_alloc) - grub_free (ctx.filename); - return 1; - } - if (ctx.filename_alloc) - grub_free (ctx.filename); - } - } - - return 0; -} - - - -/* Context for grub_iso9660_dir. */ -struct grub_iso9660_dir_ctx -{ - grub_fs_dir_hook_t hook; - void *hook_data; -}; - -/* Helper for grub_iso9660_dir. */ -static int -grub_iso9660_dir_iter (const char *filename, - enum grub_fshelp_filetype filetype, - grub_fshelp_node_t node, void *data) -{ - struct grub_iso9660_dir_ctx *ctx = data; - struct grub_dirhook_info info; - - grub_memset (&info, 0, sizeof (info)); - info.dir = ((filetype & GRUB_FSHELP_TYPE_MASK) == GRUB_FSHELP_DIR); - info.mtimeset = !!iso9660_to_unixtime2 (&node->dirents[0].mtime, &info.mtime); - - grub_free (node); - return ctx->hook (filename, &info, ctx->hook_data); -} - -static grub_err_t -grub_iso9660_dir (grub_device_t device, const char *path, - grub_fs_dir_hook_t hook, void *hook_data) -{ - struct grub_iso9660_dir_ctx ctx = { hook, hook_data }; - struct grub_iso9660_data *data = 0; - struct grub_fshelp_node rootnode; - struct grub_fshelp_node *foundnode; - - grub_dl_ref (my_mod); - - data = grub_iso9660_mount (device->disk); - if (! data) - goto fail; - - rootnode.data = data; - rootnode.alloc_dirents = 0; - rootnode.have_dirents = 1; - rootnode.have_symlink = 0; - rootnode.dirents[0] = data->voldesc.rootdir; - - /* Use the fshelp function to traverse the path. */ - if (grub_fshelp_find_file (path, &rootnode, - &foundnode, - grub_iso9660_iterate_dir, - grub_iso9660_read_symlink, - GRUB_FSHELP_DIR)) - goto fail; - - /* List the files in the directory. */ - grub_iso9660_iterate_dir (foundnode, grub_iso9660_dir_iter, &ctx); - - if (foundnode != &rootnode) - grub_free (foundnode); - - fail: - grub_free (data); - - grub_dl_unref (my_mod); - - return grub_errno; -} - - -/* Open a file named NAME and initialize FILE. */ -static grub_err_t -grub_iso9660_open (struct grub_file *file, const char *name) -{ - struct grub_iso9660_data *data; - struct grub_fshelp_node rootnode; - struct grub_fshelp_node *foundnode; - - grub_dl_ref (my_mod); - - data = grub_iso9660_mount (file->device->disk); - if (!data) - goto fail; - - rootnode.data = data; - rootnode.alloc_dirents = 0; - rootnode.have_dirents = 1; - rootnode.have_symlink = 0; - rootnode.dirents[0] = data->voldesc.rootdir; - - /* Use the fshelp function to traverse the path. */ - if (grub_fshelp_find_file (name, &rootnode, - &foundnode, - grub_iso9660_iterate_dir, - grub_iso9660_read_symlink, - GRUB_FSHELP_REG)) - goto fail; - - data->node = foundnode; - file->data = data; - file->size = get_node_size (foundnode); - file->offset = 0; - - return 0; - - fail: - grub_dl_unref (my_mod); - - grub_free (data); - - return grub_errno; -} - - -static grub_ssize_t -grub_iso9660_read (grub_file_t file, char *buf, grub_size_t len) -{ - struct grub_iso9660_data *data = - (struct grub_iso9660_data *) file->data; - grub_err_t err; - - /* XXX: The file is stored in as a single extent. */ - data->disk->read_hook = file->read_hook; - data->disk->read_hook_data = file->read_hook_data; - err = read_node (data->node, file->offset, len, buf); - data->disk->read_hook = NULL; - - if (err || grub_errno) - return -1; - - return len; -} - - -static grub_err_t -grub_iso9660_close (grub_file_t file) -{ - struct grub_iso9660_data *data = - (struct grub_iso9660_data *) file->data; - grub_free (data->node); - grub_free (data); - - grub_dl_unref (my_mod); - - return GRUB_ERR_NONE; -} - - -static grub_err_t -grub_iso9660_label (grub_device_t device, char **label) -{ - struct grub_iso9660_data *data; - data = grub_iso9660_mount (device->disk); - - if (data) - { - if (data->joliet) - *label = grub_iso9660_convert_string (data->voldesc.volname, 16); - else - *label = grub_strndup ((char *) data->voldesc.volname, 32); - if (*label) - { - char *ptr; - for (ptr = *label; *ptr;ptr++); - ptr--; - while (ptr >= *label && *ptr == ' ') - *ptr-- = 0; - } - - grub_free (data); - } - else - *label = 0; - - return grub_errno; -} - - -static grub_err_t -grub_iso9660_uuid (grub_device_t device, char **uuid) -{ - struct grub_iso9660_data *data; - grub_disk_t disk = device->disk; - - grub_dl_ref (my_mod); - - data = grub_iso9660_mount (disk); - if (data) - { - if (! data->voldesc.modified.year[0] && ! data->voldesc.modified.year[1] - && ! data->voldesc.modified.year[2] && ! data->voldesc.modified.year[3] - && ! data->voldesc.modified.month[0] && ! data->voldesc.modified.month[1] - && ! data->voldesc.modified.day[0] && ! data->voldesc.modified.day[1] - && ! data->voldesc.modified.hour[0] && ! data->voldesc.modified.hour[1] - && ! data->voldesc.modified.minute[0] && ! data->voldesc.modified.minute[1] - && ! data->voldesc.modified.second[0] && ! data->voldesc.modified.second[1] - && ! data->voldesc.modified.hundredth[0] && ! data->voldesc.modified.hundredth[1]) - { - grub_error (GRUB_ERR_BAD_NUMBER, "no creation date in filesystem to generate UUID"); - *uuid = NULL; - } - else - { - *uuid = grub_xasprintf ("%c%c%c%c-%c%c-%c%c-%c%c-%c%c-%c%c-%c%c", - data->voldesc.modified.year[0], - data->voldesc.modified.year[1], - data->voldesc.modified.year[2], - data->voldesc.modified.year[3], - data->voldesc.modified.month[0], - data->voldesc.modified.month[1], - data->voldesc.modified.day[0], - data->voldesc.modified.day[1], - data->voldesc.modified.hour[0], - data->voldesc.modified.hour[1], - data->voldesc.modified.minute[0], - data->voldesc.modified.minute[1], - data->voldesc.modified.second[0], - data->voldesc.modified.second[1], - data->voldesc.modified.hundredth[0], - data->voldesc.modified.hundredth[1]); - } - } - else - *uuid = NULL; - - grub_dl_unref (my_mod); - - grub_free (data); - - return grub_errno; -} - -/* Get writing time of filesystem. */ -static grub_err_t -grub_iso9660_mtime (grub_device_t device, grub_int32_t *timebuf) -{ - struct grub_iso9660_data *data; - grub_disk_t disk = device->disk; - grub_err_t err; - - grub_dl_ref (my_mod); - - data = grub_iso9660_mount (disk); - if (!data) - { - grub_dl_unref (my_mod); - return grub_errno; - } - err = iso9660_to_unixtime (&data->voldesc.modified, timebuf); - - grub_dl_unref (my_mod); - - grub_free (data); - - return err; -} - - - - -static struct grub_fs grub_iso9660_fs = - { - .name = "iso9660", - .fs_dir = grub_iso9660_dir, - .fs_open = grub_iso9660_open, - .fs_read = grub_iso9660_read, - .fs_close = grub_iso9660_close, - .fs_label = grub_iso9660_label, - .fs_uuid = grub_iso9660_uuid, - .fs_mtime = grub_iso9660_mtime, -#ifdef GRUB_UTIL - .reserved_first_sector = 1, - .blocklist_install = 1, -#endif - .next = 0 - }; - -GRUB_MOD_INIT(iso9660) -{ - grub_fs_register (&grub_iso9660_fs); - my_mod = mod; -} - -GRUB_MOD_FINI(iso9660) -{ - grub_fs_unregister (&grub_iso9660_fs); -} diff --git a/thirdparty/grub-2.04/grub-core/fs/jfs.c b/thirdparty/grub-2.04/grub-core/fs/jfs.c deleted file mode 100644 index d5a6d6527..000000000 --- a/thirdparty/grub-2.04/grub-core/fs/jfs.c +++ /dev/null @@ -1,962 +0,0 @@ -/* jfs.c - JFS. */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2004,2005,2006,2007,2008,2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -#define GRUB_JFS_MAX_SYMLNK_CNT 8 -#define GRUB_JFS_FILETYPE_MASK 0170000 -#define GRUB_JFS_FILETYPE_REG 0100000 -#define GRUB_JFS_FILETYPE_LNK 0120000 -#define GRUB_JFS_FILETYPE_DIR 0040000 - -#define GRUB_JFS_SBLOCK 64 -#define GRUB_JFS_AGGR_INODE 2 -#define GRUB_JFS_FS1_INODE_BLK 104 - -#define GRUB_JFS_TREE_LEAF 2 - -struct grub_jfs_sblock -{ - /* The magic for JFS. It should contain the string "JFS1". */ - grub_uint8_t magic[4]; - grub_uint32_t version; - grub_uint64_t ag_size; - - /* The size of a filesystem block in bytes. XXX: currently only - 4096 was tested. */ - grub_uint32_t blksz; - grub_uint16_t log2_blksz; - grub_uint8_t unused[14]; - grub_uint32_t flags; - grub_uint8_t unused3[61]; - char volname[11]; - grub_uint8_t unused2[24]; - grub_uint8_t uuid[16]; - char volname2[16]; -}; - -struct grub_jfs_extent -{ - /* The length of the extent in filesystem blocks. */ - grub_uint16_t length; - grub_uint8_t length2; - - /* The physical offset of the first block on the disk. */ - grub_uint8_t blk1; - grub_uint32_t blk2; -} GRUB_PACKED; - -#define GRUB_JFS_IAG_INODES_OFFSET 3072 -#define GRUB_JFS_IAG_INODES_COUNT 128 - -struct grub_jfs_iag -{ - grub_uint8_t unused[GRUB_JFS_IAG_INODES_OFFSET]; - struct grub_jfs_extent inodes[GRUB_JFS_IAG_INODES_COUNT]; -} GRUB_PACKED; - - -/* The head of the tree used to find extents. */ -struct grub_jfs_treehead -{ - grub_uint64_t next; - grub_uint64_t prev; - - grub_uint8_t flags; - grub_uint8_t unused; - - grub_uint16_t count; - grub_uint16_t max; - grub_uint8_t unused2[10]; -} GRUB_PACKED; - -/* A node in the extent tree. */ -struct grub_jfs_tree_extent -{ - grub_uint8_t flags; - grub_uint16_t unused; - - /* The offset is the key used to lookup an extent. */ - grub_uint8_t offset1; - grub_uint32_t offset2; - - struct grub_jfs_extent extent; -} GRUB_PACKED; - -/* The tree of directory entries. */ -struct grub_jfs_tree_dir -{ - /* Pointers to the previous and next tree headers of other nodes on - this level. */ - grub_uint64_t nextb; - grub_uint64_t prevb; - - grub_uint8_t flags; - - /* The amount of dirents in this node. */ - grub_uint8_t count; - grub_uint8_t freecnt; - grub_uint8_t freelist; - grub_uint8_t maxslot; - - /* The location of the sorted array of pointers to dirents. */ - grub_uint8_t sindex; - grub_uint8_t unused[10]; -} GRUB_PACKED; - -/* An internal node in the dirents tree. */ -struct grub_jfs_internal_dirent -{ - struct grub_jfs_extent ex; - grub_uint8_t next; - grub_uint8_t len; - grub_uint16_t namepart[11]; -} GRUB_PACKED; - -/* A leaf node in the dirents tree. */ -struct grub_jfs_leaf_dirent -{ - /* The inode for this dirent. */ - grub_uint32_t inode; - grub_uint8_t next; - - /* The size of the name. */ - grub_uint8_t len; - grub_uint16_t namepart[11]; - grub_uint32_t index; -} GRUB_PACKED; - -/* A leaf in the dirents tree. This one is used if the previously - dirent was not big enough to store the name. */ -struct grub_jfs_leaf_next_dirent -{ - grub_uint8_t next; - grub_uint8_t len; - grub_uint16_t namepart[15]; -} GRUB_PACKED; - -struct grub_jfs_time -{ - grub_int32_t sec; - grub_int32_t nanosec; -} GRUB_PACKED; - -struct grub_jfs_inode -{ - grub_uint32_t stamp; - grub_uint32_t fileset; - grub_uint32_t inode; - grub_uint8_t unused[12]; - grub_uint64_t size; - grub_uint8_t unused2[20]; - grub_uint32_t mode; - struct grub_jfs_time atime; - struct grub_jfs_time ctime; - struct grub_jfs_time mtime; - grub_uint8_t unused3[48]; - grub_uint8_t unused4[96]; - - union - { - /* The tree describing the extents of the file. */ - struct GRUB_PACKED - { - struct grub_jfs_treehead tree; - struct grub_jfs_tree_extent extents[16]; - } file; - union - { - /* The tree describing the dirents. */ - struct - { - grub_uint8_t unused[16]; - grub_uint8_t flags; - - /* Amount of dirents in this node. */ - grub_uint8_t count; - grub_uint8_t freecnt; - grub_uint8_t freelist; - grub_uint32_t idotdot; - grub_uint8_t sorted[8]; - } header; - struct grub_jfs_leaf_dirent dirents[8]; - } GRUB_PACKED dir; - /* Fast symlink. */ - struct - { - grub_uint8_t unused[32]; - grub_uint8_t path[256]; - } symlink; - } GRUB_PACKED; -} GRUB_PACKED; - -struct grub_jfs_data -{ - struct grub_jfs_sblock sblock; - grub_disk_t disk; - struct grub_jfs_inode fileset; - struct grub_jfs_inode currinode; - int caseins; - int pos; - int linknest; - int namecomponentlen; -} GRUB_PACKED; - -struct grub_jfs_diropen -{ - int index; - union - { - struct grub_jfs_tree_dir header; - struct grub_jfs_leaf_dirent dirent[0]; - struct grub_jfs_leaf_next_dirent next_dirent[0]; - grub_uint8_t sorted[0]; - } GRUB_PACKED *dirpage; - struct grub_jfs_data *data; - struct grub_jfs_inode *inode; - int count; - grub_uint8_t *sorted; - struct grub_jfs_leaf_dirent *leaf; - struct grub_jfs_leaf_next_dirent *next_leaf; - - /* The filename and inode of the last read dirent. */ - /* On-disk name is at most 255 UTF-16 codepoints. - Every UTF-16 codepoint is at most 4 UTF-8 bytes. - */ - char name[256 * GRUB_MAX_UTF8_PER_UTF16 + 1]; - grub_uint32_t ino; -} GRUB_PACKED; - - -static grub_dl_t my_mod; - -static grub_err_t grub_jfs_lookup_symlink (struct grub_jfs_data *data, grub_uint32_t ino); - -static grub_int64_t -getblk (struct grub_jfs_treehead *treehead, - struct grub_jfs_tree_extent *extents, - struct grub_jfs_data *data, - grub_uint64_t blk) -{ - int found = -1; - int i; - - for (i = 0; i < grub_le_to_cpu16 (treehead->count) - 2; i++) - { - if (treehead->flags & GRUB_JFS_TREE_LEAF) - { - /* Read the leafnode. */ - if (grub_le_to_cpu32 (extents[i].offset2) <= blk - && ((grub_le_to_cpu16 (extents[i].extent.length)) - + (extents[i].extent.length2 << 16) - + grub_le_to_cpu32 (extents[i].offset2)) > blk) - return (blk - grub_le_to_cpu32 (extents[i].offset2) - + grub_le_to_cpu32 (extents[i].extent.blk2)); - } - else - if (blk >= grub_le_to_cpu32 (extents[i].offset2)) - found = i; - } - - if (found != -1) - { - grub_int64_t ret = -1; - struct - { - struct grub_jfs_treehead treehead; - struct grub_jfs_tree_extent extents[254]; - } *tree; - - tree = grub_zalloc (sizeof (*tree)); - if (!tree) - return -1; - - if (!grub_disk_read (data->disk, - ((grub_disk_addr_t) grub_le_to_cpu32 (extents[found].extent.blk2)) - << (grub_le_to_cpu16 (data->sblock.log2_blksz) - - GRUB_DISK_SECTOR_BITS), 0, - sizeof (*tree), (char *) tree)) - ret = getblk (&tree->treehead, &tree->extents[0], data, blk); - grub_free (tree); - return ret; - } - - return -1; -} - -/* Get the block number for the block BLK in the node INODE in the - mounted filesystem DATA. */ -static grub_int64_t -grub_jfs_blkno (struct grub_jfs_data *data, struct grub_jfs_inode *inode, - grub_uint64_t blk) -{ - return getblk (&inode->file.tree, &inode->file.extents[0], data, blk); -} - - -static grub_err_t -grub_jfs_read_inode (struct grub_jfs_data *data, grub_uint32_t ino, - struct grub_jfs_inode *inode) -{ - struct grub_jfs_extent iag_inodes[GRUB_JFS_IAG_INODES_COUNT]; - grub_uint32_t iagnum = ino / 4096; - unsigned inoext = (ino % 4096) / 32; - unsigned inonum = (ino % 4096) % 32; - grub_uint64_t iagblk; - grub_uint64_t inoblk; - - iagblk = grub_jfs_blkno (data, &data->fileset, iagnum + 1); - if (grub_errno) - return grub_errno; - - /* Read in the IAG. */ - if (grub_disk_read (data->disk, - iagblk << (grub_le_to_cpu16 (data->sblock.log2_blksz) - - GRUB_DISK_SECTOR_BITS), - GRUB_JFS_IAG_INODES_OFFSET, - sizeof (iag_inodes), &iag_inodes)) - return grub_errno; - - inoblk = grub_le_to_cpu32 (iag_inodes[inoext].blk2); - inoblk <<= (grub_le_to_cpu16 (data->sblock.log2_blksz) - - GRUB_DISK_SECTOR_BITS); - inoblk += inonum; - - if (grub_disk_read (data->disk, inoblk, 0, - sizeof (struct grub_jfs_inode), inode)) - return grub_errno; - - return 0; -} - - -static struct grub_jfs_data * -grub_jfs_mount (grub_disk_t disk) -{ - struct grub_jfs_data *data = 0; - - data = grub_malloc (sizeof (struct grub_jfs_data)); - if (!data) - return 0; - - /* Read the superblock. */ - if (grub_disk_read (disk, GRUB_JFS_SBLOCK, 0, - sizeof (struct grub_jfs_sblock), &data->sblock)) - goto fail; - - if (grub_strncmp ((char *) (data->sblock.magic), "JFS1", 4)) - { - grub_error (GRUB_ERR_BAD_FS, "not a JFS filesystem"); - goto fail; - } - - if (data->sblock.blksz == 0 - || grub_le_to_cpu32 (data->sblock.blksz) - != (1U << grub_le_to_cpu16 (data->sblock.log2_blksz)) - || grub_le_to_cpu16 (data->sblock.log2_blksz) < GRUB_DISK_SECTOR_BITS) - { - grub_error (GRUB_ERR_BAD_FS, "not a JFS filesystem"); - goto fail; - } - - data->disk = disk; - data->pos = 0; - data->linknest = 0; - - /* Read the inode of the first fileset. */ - if (grub_disk_read (data->disk, GRUB_JFS_FS1_INODE_BLK, 0, - sizeof (struct grub_jfs_inode), &data->fileset)) - goto fail; - - if (data->sblock.flags & grub_cpu_to_le32_compile_time (0x00200000)) - data->namecomponentlen = 11; - else - data->namecomponentlen = 13; - - if (data->sblock.flags & grub_cpu_to_le32_compile_time (0x40000000)) - data->caseins = 1; - else - data->caseins = 0; - - return data; - - fail: - grub_free (data); - - if (grub_errno == GRUB_ERR_OUT_OF_RANGE) - grub_error (GRUB_ERR_BAD_FS, "not a JFS filesystem"); - - return 0; -} - - -static struct grub_jfs_diropen * -grub_jfs_opendir (struct grub_jfs_data *data, struct grub_jfs_inode *inode) -{ - struct grub_jfs_internal_dirent *de; - struct grub_jfs_diropen *diro; - grub_disk_addr_t blk; - - de = (struct grub_jfs_internal_dirent *) inode->dir.dirents; - - if (!((grub_le_to_cpu32 (inode->mode) - & GRUB_JFS_FILETYPE_MASK) == GRUB_JFS_FILETYPE_DIR)) - { - grub_error (GRUB_ERR_BAD_FILE_TYPE, N_("not a directory")); - return 0; - } - - diro = grub_zalloc (sizeof (struct grub_jfs_diropen)); - if (!diro) - return 0; - - diro->data = data; - diro->inode = inode; - - /* Check if the entire tree is contained within the inode. */ - if (inode->file.tree.flags & GRUB_JFS_TREE_LEAF) - { - diro->leaf = inode->dir.dirents; - diro->next_leaf = (struct grub_jfs_leaf_next_dirent *) de; - diro->sorted = inode->dir.header.sorted; - diro->count = inode->dir.header.count; - - return diro; - } - - diro->dirpage = grub_malloc (grub_le_to_cpu32 (data->sblock.blksz)); - if (!diro->dirpage) - { - grub_free (diro); - return 0; - } - - blk = grub_le_to_cpu32 (de[inode->dir.header.sorted[0]].ex.blk2); - blk <<= (grub_le_to_cpu16 (data->sblock.log2_blksz) - GRUB_DISK_SECTOR_BITS); - - /* Read in the nodes until we are on the leaf node level. */ - do - { - int index; - if (grub_disk_read (data->disk, blk, 0, - grub_le_to_cpu32 (data->sblock.blksz), - diro->dirpage->sorted)) - { - grub_free (diro->dirpage); - grub_free (diro); - return 0; - } - - de = (struct grub_jfs_internal_dirent *) diro->dirpage->dirent; - index = diro->dirpage->sorted[diro->dirpage->header.sindex * 32]; - blk = (grub_le_to_cpu32 (de[index].ex.blk2) - << (grub_le_to_cpu16 (data->sblock.log2_blksz) - - GRUB_DISK_SECTOR_BITS)); - } while (!(diro->dirpage->header.flags & GRUB_JFS_TREE_LEAF)); - - diro->leaf = diro->dirpage->dirent; - diro->next_leaf = diro->dirpage->next_dirent; - diro->sorted = &diro->dirpage->sorted[diro->dirpage->header.sindex * 32]; - diro->count = diro->dirpage->header.count; - - return diro; -} - - -static void -grub_jfs_closedir (struct grub_jfs_diropen *diro) -{ - if (!diro) - return; - grub_free (diro->dirpage); - grub_free (diro); -} - -static void -le_to_cpu16_copy (grub_uint16_t *out, grub_uint16_t *in, grub_size_t len) -{ - while (len--) - *out++ = grub_le_to_cpu16 (*in++); -} - -#if __GNUC__ >= 9 -#pragma GCC diagnostic push -#pragma GCC diagnostic ignored "-Waddress-of-packed-member" -#endif - -/* Read in the next dirent from the directory described by DIRO. */ -static grub_err_t -grub_jfs_getent (struct grub_jfs_diropen *diro) -{ - int strpos = 0; - struct grub_jfs_leaf_dirent *leaf; - struct grub_jfs_leaf_next_dirent *next_leaf; - int len; - int nextent; - grub_uint16_t filename[256]; - - /* The last node, read in more. */ - if (diro->index == diro->count) - { - grub_disk_addr_t next; - - /* If the inode contains the entry tree or if this was the last - node, there is nothing to read. */ - if ((diro->inode->file.tree.flags & GRUB_JFS_TREE_LEAF) - || !grub_le_to_cpu64 (diro->dirpage->header.nextb)) - return GRUB_ERR_OUT_OF_RANGE; - - next = grub_le_to_cpu64 (diro->dirpage->header.nextb); - next <<= (grub_le_to_cpu16 (diro->data->sblock.log2_blksz) - - GRUB_DISK_SECTOR_BITS); - - if (grub_disk_read (diro->data->disk, next, 0, - grub_le_to_cpu32 (diro->data->sblock.blksz), - diro->dirpage->sorted)) - return grub_errno; - - diro->leaf = diro->dirpage->dirent; - diro->next_leaf = diro->dirpage->next_dirent; - diro->sorted = &diro->dirpage->sorted[diro->dirpage->header.sindex * 32]; - diro->count = diro->dirpage->header.count; - diro->index = 0; - } - - leaf = &diro->leaf[diro->sorted[diro->index]]; - next_leaf = &diro->next_leaf[diro->index]; - - len = leaf->len; - if (!len) - { - diro->index++; - return grub_jfs_getent (diro); - } - - le_to_cpu16_copy (filename + strpos, leaf->namepart, len < diro->data->namecomponentlen ? len - : diro->data->namecomponentlen); - strpos += len < diro->data->namecomponentlen ? len - : diro->data->namecomponentlen; - diro->ino = grub_le_to_cpu32 (leaf->inode); - len -= diro->data->namecomponentlen; - - /* Move down to the leaf level. */ - nextent = leaf->next; - if (leaf->next != 255) - do - { - next_leaf = &diro->next_leaf[nextent]; - le_to_cpu16_copy (filename + strpos, next_leaf->namepart, len < 15 ? len : 15); - strpos += len < 15 ? len : 15; - - len -= 15; - nextent = next_leaf->next; - } while (next_leaf->next != 255 && len > 0); - - diro->index++; - - /* Convert the temporary UTF16 filename to UTF8. */ - *grub_utf16_to_utf8 ((grub_uint8_t *) (diro->name), filename, strpos) = '\0'; - - return 0; -} - -#if __GNUC__ >= 9 -#pragma GCC diagnostic pop -#endif - -/* Read LEN bytes from the file described by DATA starting with byte - POS. Return the amount of read bytes in READ. */ -static grub_ssize_t -grub_jfs_read_file (struct grub_jfs_data *data, - grub_disk_read_hook_t read_hook, void *read_hook_data, - grub_off_t pos, grub_size_t len, char *buf) -{ - grub_off_t i; - grub_off_t blockcnt; - - blockcnt = (len + pos + grub_le_to_cpu32 (data->sblock.blksz) - 1) - >> grub_le_to_cpu16 (data->sblock.log2_blksz); - - for (i = pos >> grub_le_to_cpu16 (data->sblock.log2_blksz); i < blockcnt; i++) - { - grub_disk_addr_t blknr; - grub_uint32_t blockoff = pos & (grub_le_to_cpu32 (data->sblock.blksz) - 1); - grub_uint32_t blockend = grub_le_to_cpu32 (data->sblock.blksz); - - grub_uint64_t skipfirst = 0; - - blknr = grub_jfs_blkno (data, &data->currinode, i); - if (grub_errno) - return -1; - - /* Last block. */ - if (i == blockcnt - 1) - { - blockend = (len + pos) & (grub_le_to_cpu32 (data->sblock.blksz) - 1); - - if (!blockend) - blockend = grub_le_to_cpu32 (data->sblock.blksz); - } - - /* First block. */ - if (i == (pos >> grub_le_to_cpu16 (data->sblock.log2_blksz))) - { - skipfirst = blockoff; - blockend -= skipfirst; - } - - data->disk->read_hook = read_hook; - data->disk->read_hook_data = read_hook_data; - grub_disk_read (data->disk, - blknr << (grub_le_to_cpu16 (data->sblock.log2_blksz) - - GRUB_DISK_SECTOR_BITS), - skipfirst, blockend, buf); - - data->disk->read_hook = 0; - if (grub_errno) - return -1; - - buf += grub_le_to_cpu32 (data->sblock.blksz) - skipfirst; - } - - return len; -} - - -/* Find the file with the pathname PATH on the filesystem described by - DATA. */ -static grub_err_t -grub_jfs_find_file (struct grub_jfs_data *data, const char *path, - grub_uint32_t start_ino) -{ - const char *name; - const char *next = path; - struct grub_jfs_diropen *diro = NULL; - - if (grub_jfs_read_inode (data, start_ino, &data->currinode)) - return grub_errno; - - while (1) - { - name = next; - while (*name == '/') - name++; - if (name[0] == 0) - return GRUB_ERR_NONE; - for (next = name; *next && *next != '/'; next++); - - if (name[0] == '.' && name + 1 == next) - continue; - - if (name[0] == '.' && name[1] == '.' && name + 2 == next) - { - grub_uint32_t ino = grub_le_to_cpu32 (data->currinode.dir.header.idotdot); - - if (grub_jfs_read_inode (data, ino, &data->currinode)) - return grub_errno; - - continue; - } - - diro = grub_jfs_opendir (data, &data->currinode); - if (!diro) - return grub_errno; - - for (;;) - { - if (grub_jfs_getent (diro) == GRUB_ERR_OUT_OF_RANGE) - { - grub_jfs_closedir (diro); - return grub_error (GRUB_ERR_FILE_NOT_FOUND, N_("file `%s' not found"), path); - } - - /* Check if the current direntry matches the current part of the - pathname. */ - if ((data->caseins ? grub_strncasecmp (name, diro->name, next - name) == 0 - : grub_strncmp (name, diro->name, next - name) == 0) && !diro->name[next - name]) - { - grub_uint32_t ino = diro->ino; - grub_uint32_t dirino = grub_le_to_cpu32 (data->currinode.inode); - - grub_jfs_closedir (diro); - diro = 0; - - if (grub_jfs_read_inode (data, ino, &data->currinode)) - break; - - /* Check if this is a symlink. */ - if ((grub_le_to_cpu32 (data->currinode.mode) - & GRUB_JFS_FILETYPE_MASK) == GRUB_JFS_FILETYPE_LNK) - { - grub_jfs_lookup_symlink (data, dirino); - if (grub_errno) - return grub_errno; - } - - break; - } - } - } -} - - -static grub_err_t -grub_jfs_lookup_symlink (struct grub_jfs_data *data, grub_uint32_t ino) -{ - grub_size_t size = grub_le_to_cpu64 (data->currinode.size); - char *symlink; - - if (++data->linknest > GRUB_JFS_MAX_SYMLNK_CNT) - return grub_error (GRUB_ERR_SYMLINK_LOOP, N_("too deep nesting of symlinks")); - - symlink = grub_malloc (size + 1); - if (!symlink) - return grub_errno; - if (size <= sizeof (data->currinode.symlink.path)) - grub_memcpy (symlink, (char *) (data->currinode.symlink.path), size); - else if (grub_jfs_read_file (data, 0, 0, 0, size, symlink) < 0) - { - grub_free (symlink); - return grub_errno; - } - - symlink[size] = '\0'; - - /* The symlink is an absolute path, go back to the root inode. */ - if (symlink[0] == '/') - ino = 2; - - grub_jfs_find_file (data, symlink, ino); - - grub_free (symlink); - - return grub_errno; -} - - -static grub_err_t -grub_jfs_dir (grub_device_t device, const char *path, - grub_fs_dir_hook_t hook, void *hook_data) -{ - struct grub_jfs_data *data = 0; - struct grub_jfs_diropen *diro = 0; - - grub_dl_ref (my_mod); - - data = grub_jfs_mount (device->disk); - if (!data) - goto fail; - - if (grub_jfs_find_file (data, path, GRUB_JFS_AGGR_INODE)) - goto fail; - - diro = grub_jfs_opendir (data, &data->currinode); - if (!diro) - goto fail; - - /* Iterate over the dirents in the directory that was found. */ - while (grub_jfs_getent (diro) != GRUB_ERR_OUT_OF_RANGE) - { - struct grub_jfs_inode inode; - struct grub_dirhook_info info; - grub_memset (&info, 0, sizeof (info)); - - if (grub_jfs_read_inode (data, diro->ino, &inode)) - goto fail; - - info.dir = (grub_le_to_cpu32 (inode.mode) - & GRUB_JFS_FILETYPE_MASK) == GRUB_JFS_FILETYPE_DIR; - info.mtimeset = 1; - info.mtime = grub_le_to_cpu32 (inode.mtime.sec); - if (hook (diro->name, &info, hook_data)) - goto fail; - } - - /* XXX: GRUB_ERR_OUT_OF_RANGE is used for the last dirent. */ - if (grub_errno == GRUB_ERR_OUT_OF_RANGE) - grub_errno = 0; - - fail: - grub_jfs_closedir (diro); - grub_free (data); - - grub_dl_unref (my_mod); - - return grub_errno; -} - - -/* Open a file named NAME and initialize FILE. */ -static grub_err_t -grub_jfs_open (struct grub_file *file, const char *name) -{ - struct grub_jfs_data *data; - - grub_dl_ref (my_mod); - - data = grub_jfs_mount (file->device->disk); - if (!data) - goto fail; - - grub_jfs_find_file (data, name, GRUB_JFS_AGGR_INODE); - if (grub_errno) - goto fail; - - /* It is only possible for open regular files. */ - if (! ((grub_le_to_cpu32 (data->currinode.mode) - & GRUB_JFS_FILETYPE_MASK) == GRUB_JFS_FILETYPE_REG)) - { - grub_error (GRUB_ERR_BAD_FILE_TYPE, N_("not a regular file")); - goto fail; - } - - file->data = data; - file->size = grub_le_to_cpu64 (data->currinode.size); - - return 0; - - fail: - - grub_dl_unref (my_mod); - - grub_free (data); - - return grub_errno; -} - - -static grub_ssize_t -grub_jfs_read (grub_file_t file, char *buf, grub_size_t len) -{ - struct grub_jfs_data *data = - (struct grub_jfs_data *) file->data; - - return grub_jfs_read_file (data, file->read_hook, file->read_hook_data, - file->offset, len, buf); -} - - -static grub_err_t -grub_jfs_close (grub_file_t file) -{ - grub_free (file->data); - - grub_dl_unref (my_mod); - - return GRUB_ERR_NONE; -} - -static grub_err_t -grub_jfs_uuid (grub_device_t device, char **uuid) -{ - struct grub_jfs_data *data; - grub_disk_t disk = device->disk; - - grub_dl_ref (my_mod); - - data = grub_jfs_mount (disk); - if (data) - { - *uuid = grub_xasprintf ("%02x%02x%02x%02x-%02x%02x-%02x%02x-%02x%02x-" - "%02x%02x%02x%02x%02x%02x", - data->sblock.uuid[0], data->sblock.uuid[1], - data->sblock.uuid[2], data->sblock.uuid[3], - data->sblock.uuid[4], data->sblock.uuid[5], - data->sblock.uuid[6], data->sblock.uuid[7], - data->sblock.uuid[8], data->sblock.uuid[9], - data->sblock.uuid[10], data->sblock.uuid[11], - data->sblock.uuid[12], data->sblock.uuid[13], - data->sblock.uuid[14], data->sblock.uuid[15]); - } - else - *uuid = NULL; - - grub_dl_unref (my_mod); - - grub_free (data); - - return grub_errno; -} - -static grub_err_t -grub_jfs_label (grub_device_t device, char **label) -{ - struct grub_jfs_data *data; - data = grub_jfs_mount (device->disk); - - if (data) - { - if (data->sblock.volname2[0] < ' ') - { - char *ptr; - ptr = data->sblock.volname + sizeof (data->sblock.volname) - 1; - while (ptr >= data->sblock.volname && *ptr == ' ') - ptr--; - *label = grub_strndup (data->sblock.volname, - ptr - data->sblock.volname + 1); - } - else - *label = grub_strndup (data->sblock.volname2, - sizeof (data->sblock.volname2)); - } - else - *label = 0; - - grub_free (data); - - return grub_errno; -} - - -static struct grub_fs grub_jfs_fs = - { - .name = "jfs", - .fs_dir = grub_jfs_dir, - .fs_open = grub_jfs_open, - .fs_read = grub_jfs_read, - .fs_close = grub_jfs_close, - .fs_label = grub_jfs_label, - .fs_uuid = grub_jfs_uuid, -#ifdef GRUB_UTIL - .reserved_first_sector = 1, - .blocklist_install = 1, -#endif - .next = 0 - }; - -GRUB_MOD_INIT(jfs) -{ - grub_fs_register (&grub_jfs_fs); - my_mod = mod; -} - -GRUB_MOD_FINI(jfs) -{ - grub_fs_unregister (&grub_jfs_fs); -} diff --git a/thirdparty/grub-2.04/grub-core/fs/minix.c b/thirdparty/grub-2.04/grub-core/fs/minix.c deleted file mode 100644 index d0d08363c..000000000 --- a/thirdparty/grub-2.04/grub-core/fs/minix.c +++ /dev/null @@ -1,742 +0,0 @@ -/* minix.c - The minix filesystem, version 1 and 2. */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2004,2005,2006,2007,2008 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -#ifdef MODE_MINIX3 -#define GRUB_MINIX_MAGIC 0x4D5A -#elif defined(MODE_MINIX2) -#define GRUB_MINIX_MAGIC 0x2468 -#define GRUB_MINIX_MAGIC_30 0x2478 -#else -#define GRUB_MINIX_MAGIC 0x137F -#define GRUB_MINIX_MAGIC_30 0x138F -#endif - -#define GRUB_MINIX_INODE_DIR_BLOCKS 7 -#define GRUB_MINIX_LOG2_BSIZE 1 -#define GRUB_MINIX_ROOT_INODE 1 -#define GRUB_MINIX_MAX_SYMLNK_CNT 8 -#define GRUB_MINIX_SBLOCK 2 - -#define GRUB_MINIX_IFDIR 0040000U -#define GRUB_MINIX_IFLNK 0120000U - -#ifdef MODE_BIGENDIAN -#define grub_cpu_to_minix16_compile_time grub_cpu_to_be16_compile_time -#define grub_minix_to_cpu16 grub_be_to_cpu16 -#define grub_minix_to_cpu32 grub_be_to_cpu32 -#else -#define grub_cpu_to_minix16_compile_time grub_cpu_to_le16_compile_time -#define grub_minix_to_cpu16 grub_le_to_cpu16 -#define grub_minix_to_cpu32 grub_le_to_cpu32 -#endif - -#if defined(MODE_MINIX2) || defined(MODE_MINIX3) -typedef grub_uint32_t grub_minix_uintn_t; -#define grub_minix_to_cpu_n grub_minix_to_cpu32 -#else -typedef grub_uint16_t grub_minix_uintn_t; -#define grub_minix_to_cpu_n grub_minix_to_cpu16 -#endif - -#ifdef MODE_MINIX3 -typedef grub_uint32_t grub_minix_ino_t; -#define grub_minix_to_cpu_ino grub_minix_to_cpu32 -#else -typedef grub_uint16_t grub_minix_ino_t; -#define grub_minix_to_cpu_ino grub_minix_to_cpu16 -#endif - -#define GRUB_MINIX_INODE_SIZE(data) (grub_minix_to_cpu32 (data->inode.size)) -#define GRUB_MINIX_INODE_MODE(data) (grub_minix_to_cpu16 (data->inode.mode)) -#define GRUB_MINIX_INODE_DIR_ZONES(data,blk) (grub_minix_to_cpu_n \ - (data->inode.dir_zones[blk])) -#define GRUB_MINIX_INODE_INDIR_ZONE(data) (grub_minix_to_cpu_n \ - (data->inode.indir_zone)) -#define GRUB_MINIX_INODE_DINDIR_ZONE(data) (grub_minix_to_cpu_n \ - (data->inode.double_indir_zone)) - - -#ifdef MODE_MINIX3 -struct grub_minix_sblock -{ - grub_uint32_t inode_cnt; - grub_uint16_t zone_cnt; - grub_uint16_t inode_bmap_size; - grub_uint16_t zone_bmap_size; - grub_uint16_t first_data_zone; - grub_uint16_t log2_zone_size; - grub_uint16_t pad; - grub_uint32_t max_file_size; - grub_uint32_t zones; - grub_uint16_t magic; - - grub_uint16_t pad2; - grub_uint16_t block_size; - grub_uint8_t disk_version; -}; -#else -struct grub_minix_sblock -{ - grub_uint16_t inode_cnt; - grub_uint16_t zone_cnt; - grub_uint16_t inode_bmap_size; - grub_uint16_t zone_bmap_size; - grub_uint16_t first_data_zone; - grub_uint16_t log2_zone_size; - grub_uint32_t max_file_size; - grub_uint16_t magic; -}; -#endif - -#if defined(MODE_MINIX3) || defined(MODE_MINIX2) -struct grub_minix_inode -{ - grub_uint16_t mode; - grub_uint16_t nlinks; - grub_uint16_t uid; - grub_uint16_t gid; - grub_uint32_t size; - grub_uint32_t atime; - grub_uint32_t mtime; - grub_uint32_t ctime; - grub_uint32_t dir_zones[7]; - grub_uint32_t indir_zone; - grub_uint32_t double_indir_zone; - grub_uint32_t triple_indir_zone; -}; -#else -struct grub_minix_inode -{ - grub_uint16_t mode; - grub_uint16_t uid; - grub_uint32_t size; - grub_uint32_t mtime; - grub_uint8_t gid; - grub_uint8_t nlinks; - grub_uint16_t dir_zones[7]; - grub_uint16_t indir_zone; - grub_uint16_t double_indir_zone; -}; - -#endif - -#if defined(MODE_MINIX3) -#define MAX_MINIX_FILENAME_SIZE 60 -#else -#define MAX_MINIX_FILENAME_SIZE 30 -#endif - -/* Information about a "mounted" minix filesystem. */ -struct grub_minix_data -{ - struct grub_minix_sblock sblock; - struct grub_minix_inode inode; - grub_uint32_t block_per_zone; - grub_minix_ino_t ino; - int linknest; - grub_disk_t disk; - int filename_size; - grub_size_t block_size; -}; - -static grub_dl_t my_mod; - -static grub_err_t grub_minix_find_file (struct grub_minix_data *data, - const char *path); - -#ifdef MODE_MINIX3 -static inline grub_disk_addr_t -grub_minix_zone2sect (struct grub_minix_data *data, grub_minix_uintn_t zone) -{ - return ((grub_disk_addr_t) zone) * data->block_size; -} -#else -static inline grub_disk_addr_t -grub_minix_zone2sect (struct grub_minix_data *data, grub_minix_uintn_t zone) -{ - int log2_zonesz = (GRUB_MINIX_LOG2_BSIZE - + grub_minix_to_cpu16 (data->sblock.log2_zone_size)); - return (((grub_disk_addr_t) zone) << log2_zonesz); -} -#endif - - - /* Read the block pointer in ZONE, on the offset NUM. */ -static grub_minix_uintn_t -grub_get_indir (struct grub_minix_data *data, - grub_minix_uintn_t zone, - grub_minix_uintn_t num) -{ - grub_minix_uintn_t indirn; - grub_disk_read (data->disk, - grub_minix_zone2sect(data, zone), - sizeof (grub_minix_uintn_t) * num, - sizeof (grub_minix_uintn_t), (char *) &indirn); - return grub_minix_to_cpu_n (indirn); -} - -static grub_minix_uintn_t -grub_minix_get_file_block (struct grub_minix_data *data, unsigned int blk) -{ - grub_minix_uintn_t indir; - - /* Direct block. */ - if (blk < GRUB_MINIX_INODE_DIR_BLOCKS) - return GRUB_MINIX_INODE_DIR_ZONES (data, blk); - - /* Indirect block. */ - blk -= GRUB_MINIX_INODE_DIR_BLOCKS; - if (blk < data->block_per_zone) - { - indir = grub_get_indir (data, GRUB_MINIX_INODE_INDIR_ZONE (data), blk); - return indir; - } - - /* Double indirect block. */ - blk -= data->block_per_zone; - if (blk < (grub_uint64_t) data->block_per_zone * (grub_uint64_t) data->block_per_zone) - { - indir = grub_get_indir (data, GRUB_MINIX_INODE_DINDIR_ZONE (data), - blk / data->block_per_zone); - - indir = grub_get_indir (data, indir, blk % data->block_per_zone); - - return indir; - } - -#if defined (MODE_MINIX3) || defined (MODE_MINIX2) - blk -= data->block_per_zone * data->block_per_zone; - if (blk < ((grub_uint64_t) data->block_per_zone * (grub_uint64_t) data->block_per_zone - * (grub_uint64_t) data->block_per_zone)) - { - indir = grub_get_indir (data, grub_minix_to_cpu_n (data->inode.triple_indir_zone), - (blk / data->block_per_zone) / data->block_per_zone); - indir = grub_get_indir (data, indir, (blk / data->block_per_zone) % data->block_per_zone); - indir = grub_get_indir (data, indir, blk % data->block_per_zone); - - return indir; - } -#endif - - /* This should never happen. */ - grub_error (GRUB_ERR_OUT_OF_RANGE, "file bigger than maximum size"); - - return 0; -} - - -/* Read LEN bytes from the file described by DATA starting with byte - POS. Return the amount of read bytes in READ. */ -static grub_ssize_t -grub_minix_read_file (struct grub_minix_data *data, - grub_disk_read_hook_t read_hook, void *read_hook_data, - grub_off_t pos, grub_size_t len, char *buf) -{ - grub_uint32_t i; - grub_uint32_t blockcnt; - grub_uint32_t posblock; - grub_uint32_t blockoff; - - if (pos > GRUB_MINIX_INODE_SIZE (data)) - { - grub_error (GRUB_ERR_OUT_OF_RANGE, - N_("attempt to read past the end of file")); - return -1; - } - - /* Adjust len so it we can't read past the end of the file. */ - if (len + pos > GRUB_MINIX_INODE_SIZE (data)) - len = GRUB_MINIX_INODE_SIZE (data) - pos; - if (len == 0) - return 0; - - /* Files are at most 2G/4G - 1 bytes on minixfs. Avoid 64-bit division. */ - blockcnt = ((grub_uint32_t) ((len + pos - 1) - >> GRUB_DISK_SECTOR_BITS)) / data->block_size + 1; - posblock = (((grub_uint32_t) pos) - / (data->block_size << GRUB_DISK_SECTOR_BITS)); - blockoff = (((grub_uint32_t) pos) - % (data->block_size << GRUB_DISK_SECTOR_BITS)); - - for (i = posblock; i < blockcnt; i++) - { - grub_minix_uintn_t blknr; - grub_uint64_t blockend = data->block_size << GRUB_DISK_SECTOR_BITS; - grub_off_t skipfirst = 0; - - blknr = grub_minix_get_file_block (data, i); - if (grub_errno) - return -1; - - /* Last block. */ - if (i == blockcnt - 1) - { - /* len + pos < 4G (checked above), so it doesn't overflow. */ - blockend = (((grub_uint32_t) (len + pos)) - % (data->block_size << GRUB_DISK_SECTOR_BITS)); - - if (!blockend) - blockend = data->block_size << GRUB_DISK_SECTOR_BITS; - } - - /* First block. */ - if (i == posblock) - { - skipfirst = blockoff; - blockend -= skipfirst; - } - - data->disk->read_hook = read_hook; - data->disk->read_hook_data = read_hook_data; - grub_disk_read (data->disk, - grub_minix_zone2sect(data, blknr), - skipfirst, blockend, buf); - data->disk->read_hook = 0; - if (grub_errno) - return -1; - - buf += (data->block_size << GRUB_DISK_SECTOR_BITS) - skipfirst; - } - - return len; -} - - -/* Read inode INO from the mounted filesystem described by DATA. This - inode is used by default now. */ -static grub_err_t -grub_minix_read_inode (struct grub_minix_data *data, grub_minix_ino_t ino) -{ - struct grub_minix_sblock *sblock = &data->sblock; - - /* Block in which the inode is stored. */ - grub_disk_addr_t block; - data->ino = ino; - - /* The first inode in minix is inode 1. */ - ino--; - block = grub_minix_zone2sect (data, - 2 + grub_minix_to_cpu16 (sblock->inode_bmap_size) - + grub_minix_to_cpu16 (sblock->zone_bmap_size)); - block += ino / (GRUB_DISK_SECTOR_SIZE / sizeof (struct grub_minix_inode)); - int offs = (ino % (GRUB_DISK_SECTOR_SIZE - / sizeof (struct grub_minix_inode)) - * sizeof (struct grub_minix_inode)); - - grub_disk_read (data->disk, block, offs, - sizeof (struct grub_minix_inode), &data->inode); - - return GRUB_ERR_NONE; -} - - -/* Lookup the symlink the current inode points to. INO is the inode - number of the directory the symlink is relative to. */ -static grub_err_t -grub_minix_lookup_symlink (struct grub_minix_data *data, grub_minix_ino_t ino) -{ - char *symlink; - grub_size_t sz = GRUB_MINIX_INODE_SIZE (data); - - if (++data->linknest > GRUB_MINIX_MAX_SYMLNK_CNT) - return grub_error (GRUB_ERR_SYMLINK_LOOP, N_("too deep nesting of symlinks")); - - symlink = grub_malloc (sz + 1); - if (!symlink) - return grub_errno; - if (grub_minix_read_file (data, 0, 0, 0, sz, symlink) < 0) - return grub_errno; - - symlink[sz] = '\0'; - - /* The symlink is an absolute path, go back to the root inode. */ - if (symlink[0] == '/') - ino = GRUB_MINIX_ROOT_INODE; - - /* Now load in the old inode. */ - if (grub_minix_read_inode (data, ino)) - return grub_errno; - - grub_minix_find_file (data, symlink); - - return grub_errno; -} - - -/* Find the file with the pathname PATH on the filesystem described by - DATA. */ -static grub_err_t -grub_minix_find_file (struct grub_minix_data *data, const char *path) -{ - const char *name; - const char *next = path; - unsigned int pos = 0; - grub_minix_ino_t dirino; - - while (1) - { - name = next; - /* Skip the first slash. */ - while (*name == '/') - name++; - if (!*name) - return GRUB_ERR_NONE; - - if ((GRUB_MINIX_INODE_MODE (data) - & GRUB_MINIX_IFDIR) != GRUB_MINIX_IFDIR) - return grub_error (GRUB_ERR_BAD_FILE_TYPE, N_("not a directory")); - - /* Extract the actual part from the pathname. */ - for (next = name; *next && *next != '/'; next++); - - for (pos = 0; ; ) - { - grub_minix_ino_t ino; - char filename[MAX_MINIX_FILENAME_SIZE + 1]; - - if (pos >= GRUB_MINIX_INODE_SIZE (data)) - { - grub_error (GRUB_ERR_FILE_NOT_FOUND, N_("file `%s' not found"), path); - return grub_errno; - } - - if (grub_minix_read_file (data, 0, 0, pos, sizeof (ino), - (char *) &ino) < 0) - return grub_errno; - if (grub_minix_read_file (data, 0, 0, pos + sizeof (ino), - data->filename_size, (char *) filename)< 0) - return grub_errno; - - pos += sizeof (ino) + data->filename_size; - - filename[data->filename_size] = '\0'; - - /* Check if the current direntry matches the current part of the - pathname. */ - if (grub_strncmp (name, filename, next - name) == 0 - && filename[next - name] == '\0') - { - dirino = data->ino; - grub_minix_read_inode (data, grub_minix_to_cpu_ino (ino)); - - /* Follow the symlink. */ - if ((GRUB_MINIX_INODE_MODE (data) - & GRUB_MINIX_IFLNK) == GRUB_MINIX_IFLNK) - { - grub_minix_lookup_symlink (data, dirino); - if (grub_errno) - return grub_errno; - } - - break; - } - } - } -} - - -/* Mount the filesystem on the disk DISK. */ -static struct grub_minix_data * -grub_minix_mount (grub_disk_t disk) -{ - struct grub_minix_data *data; - - data = grub_malloc (sizeof (struct grub_minix_data)); - if (!data) - return 0; - - /* Read the superblock. */ - grub_disk_read (disk, GRUB_MINIX_SBLOCK, 0, - sizeof (struct grub_minix_sblock),&data->sblock); - if (grub_errno) - goto fail; - - if (data->sblock.magic == grub_cpu_to_minix16_compile_time (GRUB_MINIX_MAGIC)) - { -#if !defined(MODE_MINIX3) - data->filename_size = 14; -#else - data->filename_size = 60; -#endif - } -#if !defined(MODE_MINIX3) - else if (data->sblock.magic - == grub_cpu_to_minix16_compile_time (GRUB_MINIX_MAGIC_30)) - data->filename_size = 30; -#endif - else - goto fail; - - /* 20 means 1G zones. We could support up to 31 but already 1G isn't - supported by anything else. */ - if (grub_minix_to_cpu16 (data->sblock.log2_zone_size) >= 20) - goto fail; - - data->disk = disk; - data->linknest = 0; -#ifdef MODE_MINIX3 - /* These tests are endian-independent. No need to byteswap. */ - if (data->sblock.block_size == 0xffff) - data->block_size = 2; - else - { - if ((data->sblock.block_size == grub_cpu_to_minix16_compile_time (0x200)) - || (data->sblock.block_size == 0) - || (data->sblock.block_size & grub_cpu_to_minix16_compile_time (0x1ff))) - goto fail; - data->block_size = grub_minix_to_cpu16 (data->sblock.block_size) - >> GRUB_DISK_SECTOR_BITS; - } -#else - data->block_size = 2; -#endif - - data->block_per_zone = (((grub_uint64_t) data->block_size << \ - (GRUB_DISK_SECTOR_BITS + grub_minix_to_cpu16 (data->sblock.log2_zone_size))) - / sizeof (grub_minix_uintn_t)); - if (!data->block_per_zone) - goto fail; - - return data; - - fail: - grub_free (data); -#if defined(MODE_MINIX3) - grub_error (GRUB_ERR_BAD_FS, "not a minix3 filesystem"); -#elif defined(MODE_MINIX2) - grub_error (GRUB_ERR_BAD_FS, "not a minix2 filesystem"); -#else - grub_error (GRUB_ERR_BAD_FS, "not a minix filesystem"); -#endif - return 0; -} - -static grub_err_t -grub_minix_dir (grub_device_t device, const char *path, - grub_fs_dir_hook_t hook, void *hook_data) -{ - struct grub_minix_data *data = 0; - unsigned int pos = 0; - - data = grub_minix_mount (device->disk); - if (!data) - return grub_errno; - - grub_minix_read_inode (data, GRUB_MINIX_ROOT_INODE); - if (grub_errno) - goto fail; - - grub_minix_find_file (data, path); - if (grub_errno) - goto fail; - - if ((GRUB_MINIX_INODE_MODE (data) & GRUB_MINIX_IFDIR) != GRUB_MINIX_IFDIR) - { - grub_error (GRUB_ERR_BAD_FILE_TYPE, N_("not a directory")); - goto fail; - } - - while (pos < GRUB_MINIX_INODE_SIZE (data)) - { - grub_minix_ino_t ino; - char filename[MAX_MINIX_FILENAME_SIZE + 1]; - grub_minix_ino_t dirino = data->ino; - struct grub_dirhook_info info; - grub_memset (&info, 0, sizeof (info)); - - - if (grub_minix_read_file (data, 0, 0, pos, sizeof (ino), - (char *) &ino) < 0) - return grub_errno; - - if (grub_minix_read_file (data, 0, 0, pos + sizeof (ino), - data->filename_size, - (char *) filename) < 0) - return grub_errno; - filename[data->filename_size] = '\0'; - if (!ino) - { - pos += sizeof (ino) + data->filename_size; - continue; - } - - grub_minix_read_inode (data, grub_minix_to_cpu_ino (ino)); - info.dir = ((GRUB_MINIX_INODE_MODE (data) - & GRUB_MINIX_IFDIR) == GRUB_MINIX_IFDIR); - info.mtimeset = 1; - info.mtime = grub_minix_to_cpu32 (data->inode.mtime); - - if (hook (filename, &info, hook_data) ? 1 : 0) - break; - - /* Load the old inode back in. */ - grub_minix_read_inode (data, dirino); - - pos += sizeof (ino) + data->filename_size; - } - - fail: - grub_free (data); - return grub_errno; -} - - -/* Open a file named NAME and initialize FILE. */ -static grub_err_t -grub_minix_open (struct grub_file *file, const char *name) -{ - struct grub_minix_data *data; - data = grub_minix_mount (file->device->disk); - if (!data) - return grub_errno; - - /* Open the inode op the root directory. */ - grub_minix_read_inode (data, GRUB_MINIX_ROOT_INODE); - if (grub_errno) - { - grub_free (data); - return grub_errno; - } - - if (!name || name[0] != '/') - { - grub_error (GRUB_ERR_BAD_FILENAME, N_("invalid file name `%s'"), name); - return grub_errno; - } - - /* Traverse the directory tree to the node that should be - opened. */ - grub_minix_find_file (data, name); - if (grub_errno) - { - grub_free (data); - return grub_errno; - } - - file->data = data; - file->size = GRUB_MINIX_INODE_SIZE (data); - - return GRUB_ERR_NONE; -} - - -static grub_ssize_t -grub_minix_read (grub_file_t file, char *buf, grub_size_t len) -{ - struct grub_minix_data *data = - (struct grub_minix_data *) file->data; - - return grub_minix_read_file (data, file->read_hook, file->read_hook_data, - file->offset, len, buf); -} - - -static grub_err_t -grub_minix_close (grub_file_t file) -{ - grub_free (file->data); - - return GRUB_ERR_NONE; -} - - - -static struct grub_fs grub_minix_fs = - { -#ifdef MODE_BIGENDIAN -#if defined(MODE_MINIX3) - .name = "minix3_be", -#elif defined(MODE_MINIX2) - .name = "minix2_be", -#else - .name = "minix_be", -#endif -#else -#if defined(MODE_MINIX3) - .name = "minix3", -#elif defined(MODE_MINIX2) - .name = "minix2", -#else - .name = "minix", -#endif -#endif - .fs_dir = grub_minix_dir, - .fs_open = grub_minix_open, - .fs_read = grub_minix_read, - .fs_close = grub_minix_close, -#ifdef GRUB_UTIL - .reserved_first_sector = 1, - .blocklist_install = 1, -#endif - .next = 0 - }; - -#ifdef MODE_BIGENDIAN -#if defined(MODE_MINIX3) -GRUB_MOD_INIT(minix3_be) -#elif defined(MODE_MINIX2) -GRUB_MOD_INIT(minix2_be) -#else -GRUB_MOD_INIT(minix_be) -#endif -#else -#if defined(MODE_MINIX3) -GRUB_MOD_INIT(minix3) -#elif defined(MODE_MINIX2) -GRUB_MOD_INIT(minix2) -#else -GRUB_MOD_INIT(minix) -#endif -#endif -{ - grub_fs_register (&grub_minix_fs); - my_mod = mod; -} - -#ifdef MODE_BIGENDIAN -#if defined(MODE_MINIX3) -GRUB_MOD_FINI(minix3_be) -#elif defined(MODE_MINIX2) -GRUB_MOD_FINI(minix2_be) -#else -GRUB_MOD_FINI(minix_be) -#endif -#else -#if defined(MODE_MINIX3) -GRUB_MOD_FINI(minix3) -#elif defined(MODE_MINIX2) -GRUB_MOD_FINI(minix2) -#else -GRUB_MOD_FINI(minix) -#endif -#endif -{ - grub_fs_unregister (&grub_minix_fs); -} diff --git a/thirdparty/grub-2.04/grub-core/fs/minix2.c b/thirdparty/grub-2.04/grub-core/fs/minix2.c deleted file mode 100644 index 0fcd4b139..000000000 --- a/thirdparty/grub-2.04/grub-core/fs/minix2.c +++ /dev/null @@ -1,2 +0,0 @@ -#define MODE_MINIX2 1 -#include "minix.c" diff --git a/thirdparty/grub-2.04/grub-core/fs/minix2_be.c b/thirdparty/grub-2.04/grub-core/fs/minix2_be.c deleted file mode 100644 index cb786df1c..000000000 --- a/thirdparty/grub-2.04/grub-core/fs/minix2_be.c +++ /dev/null @@ -1,3 +0,0 @@ -#define MODE_MINIX2 1 -#define MODE_BIGENDIAN 1 -#include "minix.c" diff --git a/thirdparty/grub-2.04/grub-core/fs/minix3.c b/thirdparty/grub-2.04/grub-core/fs/minix3.c deleted file mode 100644 index 58a21d2b5..000000000 --- a/thirdparty/grub-2.04/grub-core/fs/minix3.c +++ /dev/null @@ -1,2 +0,0 @@ -#define MODE_MINIX3 1 -#include "minix.c" diff --git a/thirdparty/grub-2.04/grub-core/fs/minix3_be.c b/thirdparty/grub-2.04/grub-core/fs/minix3_be.c deleted file mode 100644 index d0305e4ff..000000000 --- a/thirdparty/grub-2.04/grub-core/fs/minix3_be.c +++ /dev/null @@ -1,3 +0,0 @@ -#define MODE_MINIX3 1 -#define MODE_BIGENDIAN 1 -#include "minix.c" diff --git a/thirdparty/grub-2.04/grub-core/fs/minix_be.c b/thirdparty/grub-2.04/grub-core/fs/minix_be.c deleted file mode 100644 index fade347d6..000000000 --- a/thirdparty/grub-2.04/grub-core/fs/minix_be.c +++ /dev/null @@ -1,2 +0,0 @@ -#define MODE_BIGENDIAN 1 -#include "minix.c" diff --git a/thirdparty/grub-2.04/grub-core/fs/newc.c b/thirdparty/grub-2.04/grub-core/fs/newc.c deleted file mode 100644 index 4fb8b2e3d..000000000 --- a/thirdparty/grub-2.04/grub-core/fs/newc.c +++ /dev/null @@ -1,73 +0,0 @@ -/* cpio.c - cpio and tar filesystem. */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2007,2008,2009,2013 Free Software Foundation, Inc. - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see . - */ - -#include - -#define ALIGN_CPIO(x) (ALIGN_UP ((x), 4)) -#define MAGIC "070701" -#define MAGIC2 "070702" -struct head -{ - char magic[6]; - char ino[8]; - char mode[8]; - char uid[8]; - char gid[8]; - char nlink[8]; - char mtime[8]; - char filesize[8]; - char devmajor[8]; - char devminor[8]; - char rdevmajor[8]; - char rdevminor[8]; - char namesize[8]; - char check[8]; -} GRUB_PACKED; - -static inline unsigned long long -read_number (const char *str, grub_size_t size) -{ - unsigned long long ret = 0; - while (size-- && grub_isxdigit (*str)) - { - char dig = *str++; - if (dig >= '0' && dig <= '9') - dig &= 0xf; - else if (dig >= 'a' && dig <= 'f') - dig -= 'a' - 10; - else - dig -= 'A' - 10; - ret = (ret << 4) | (dig); - } - return ret; -} - -#define FSNAME "newc" - -#include "cpio_common.c" - -GRUB_MOD_INIT (newc) -{ - grub_fs_register (&grub_cpio_fs); -} - -GRUB_MOD_FINI (newc) -{ - grub_fs_unregister (&grub_cpio_fs); -} diff --git a/thirdparty/grub-2.04/grub-core/fs/nilfs2.c b/thirdparty/grub-2.04/grub-core/fs/nilfs2.c deleted file mode 100644 index 7ed148d3b..000000000 --- a/thirdparty/grub-2.04/grub-core/fs/nilfs2.c +++ /dev/null @@ -1,1223 +0,0 @@ -/* - * nilfs2.c - New Implementation of Log filesystem - * - * Written by Jiro SEKIBA - * - * Copyright (C) 2003,2004,2005,2007,2008,2010 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - - -/* Filetype information as used in inodes. */ -#define FILETYPE_INO_MASK 0170000 -#define FILETYPE_INO_REG 0100000 -#define FILETYPE_INO_DIRECTORY 0040000 -#define FILETYPE_INO_SYMLINK 0120000 - -#include -#include -#include -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -#define NILFS_INODE_BMAP_SIZE 7 - -#define NILFS_SUPORT_REV 2 - -/* Magic value used to identify an nilfs2 filesystem. */ -#define NILFS2_SUPER_MAGIC 0x3434 -/* nilfs btree node flag. */ -#define NILFS_BTREE_NODE_ROOT 0x01 - -/* nilfs btree node level. */ -#define NILFS_BTREE_LEVEL_DATA 0 -#define NILFS_BTREE_LEVEL_NODE_MIN (NILFS_BTREE_LEVEL_DATA + 1) - -/* nilfs 1st super block posission from beginning of the partition - in 512 block size */ -#define NILFS_1ST_SUPER_BLOCK 2 -/* nilfs 2nd super block posission from beginning of the partition - in 512 block size */ -#define NILFS_2ND_SUPER_BLOCK(devsize) (((devsize >> 3) - 1) << 3) - -#define LOG_INODE_SIZE 7 -struct grub_nilfs2_inode -{ - grub_uint64_t i_blocks; - grub_uint64_t i_size; - grub_uint64_t i_ctime; - grub_uint64_t i_mtime; - grub_uint32_t i_ctime_nsec; - grub_uint32_t i_mtime_nsec; - grub_uint32_t i_uid; - grub_uint32_t i_gid; - grub_uint16_t i_mode; - grub_uint16_t i_links_count; - grub_uint32_t i_flags; - grub_uint64_t i_bmap[NILFS_INODE_BMAP_SIZE]; -#define i_device_code i_bmap[0] - grub_uint64_t i_xattr; - grub_uint32_t i_generation; - grub_uint32_t i_pad; -}; - -struct grub_nilfs2_super_root -{ - grub_uint32_t sr_sum; - grub_uint16_t sr_bytes; - grub_uint16_t sr_flags; - grub_uint64_t sr_nongc_ctime; - struct grub_nilfs2_inode sr_dat; - struct grub_nilfs2_inode sr_cpfile; - struct grub_nilfs2_inode sr_sufile; -}; - -struct grub_nilfs2_super_block -{ - grub_uint32_t s_rev_level; - grub_uint16_t s_minor_rev_level; - grub_uint16_t s_magic; - grub_uint16_t s_bytes; - grub_uint16_t s_flags; - grub_uint32_t s_crc_seed; - grub_uint32_t s_sum; - grub_uint32_t s_log_block_size; - grub_uint64_t s_nsegments; - grub_uint64_t s_dev_size; - grub_uint64_t s_first_data_block; - grub_uint32_t s_blocks_per_segment; - grub_uint32_t s_r_segments_percentage; - grub_uint64_t s_last_cno; - grub_uint64_t s_last_pseg; - grub_uint64_t s_last_seq; - grub_uint64_t s_free_blocks_count; - grub_uint64_t s_ctime; - grub_uint64_t s_mtime; - grub_uint64_t s_wtime; - grub_uint16_t s_mnt_count; - grub_uint16_t s_max_mnt_count; - grub_uint16_t s_state; - grub_uint16_t s_errors; - grub_uint64_t s_lastcheck; - grub_uint32_t s_checkinterval; - grub_uint32_t s_creator_os; - grub_uint16_t s_def_resuid; - grub_uint16_t s_def_resgid; - grub_uint32_t s_first_ino; - grub_uint16_t s_inode_size; - grub_uint16_t s_dat_entry_size; - grub_uint16_t s_checkpoint_size; - grub_uint16_t s_segment_usage_size; - grub_uint8_t s_uuid[16]; - char s_volume_name[80]; - grub_uint32_t s_c_interval; - grub_uint32_t s_c_block_max; - grub_uint32_t s_reserved[192]; -}; - -struct grub_nilfs2_dir_entry -{ - grub_uint64_t inode; - grub_uint16_t rec_len; -#define MAX_NAMELEN 255 - grub_uint8_t name_len; - grub_uint8_t file_type; -#if 0 /* followed by file name. */ - char name[NILFS_NAME_LEN]; - char pad; -#endif -} GRUB_PACKED; - -enum -{ - NILFS_FT_UNKNOWN, - NILFS_FT_REG_FILE, - NILFS_FT_DIR, - NILFS_FT_CHRDEV, - NILFS_FT_BLKDEV, - NILFS_FT_FIFO, - NILFS_FT_SOCK, - NILFS_FT_SYMLINK, - NILFS_FT_MAX -}; - -struct grub_nilfs2_finfo -{ - grub_uint64_t fi_ino; - grub_uint64_t fi_cno; - grub_uint32_t fi_nblocks; - grub_uint32_t fi_ndatablk; -}; - -struct grub_nilfs2_binfo_v -{ - grub_uint64_t bi_vblocknr; - grub_uint64_t bi_blkoff; -}; - -struct grub_nilfs2_binfo_dat -{ - grub_uint64_t bi_blkoff; - grub_uint8_t bi_level; - grub_uint8_t bi_pad[7]; -}; - -union grub_nilfs2_binfo -{ - struct grub_nilfs2_binfo_v bi_v; - struct grub_nilfs2_binfo_dat bi_dat; -}; - -struct grub_nilfs2_segment_summary -{ - grub_uint32_t ss_datasum; - grub_uint32_t ss_sumsum; - grub_uint32_t ss_magic; - grub_uint16_t ss_bytes; - grub_uint16_t ss_flags; - grub_uint64_t ss_seq; - grub_uint64_t ss_create; - grub_uint64_t ss_next; - grub_uint32_t ss_nblocks; - grub_uint32_t ss_nfinfo; - grub_uint32_t ss_sumbytes; - grub_uint32_t ss_pad; -}; - -struct grub_nilfs2_btree_node -{ - grub_uint8_t bn_flags; - grub_uint8_t bn_level; - grub_uint16_t bn_nchildren; - grub_uint32_t bn_pad; - grub_uint64_t keys[0]; -}; - -struct grub_nilfs2_palloc_group_desc -{ - grub_uint32_t pg_nfrees; -}; - -#define LOG_SIZE_GROUP_DESC 2 - -#define LOG_NILFS_DAT_ENTRY_SIZE 5 -struct grub_nilfs2_dat_entry -{ - grub_uint64_t de_blocknr; - grub_uint64_t de_start; - grub_uint64_t de_end; - grub_uint64_t de_rsv; -}; - -struct grub_nilfs2_snapshot_list -{ - grub_uint64_t ssl_next; - grub_uint64_t ssl_prev; -}; - -struct grub_nilfs2_cpfile_header -{ - grub_uint64_t ch_ncheckpoints; - grub_uint64_t ch_nsnapshots; - struct grub_nilfs2_snapshot_list ch_snapshot_list; -}; - -struct grub_nilfs2_checkpoint -{ - grub_uint32_t cp_flags; - grub_uint32_t cp_checkpoints_count; - struct grub_nilfs2_snapshot_list cp_snapshot_list; - grub_uint64_t cp_cno; - grub_uint64_t cp_create; - grub_uint64_t cp_nblk_inc; - grub_uint64_t cp_inodes_count; - grub_uint64_t cp_blocks_count; - struct grub_nilfs2_inode cp_ifile_inode; -}; - - -#define NILFS_BMAP_LARGE 0x1 -#define NILFS_BMAP_SIZE (NILFS_INODE_BMAP_SIZE * sizeof(grub_uint64_t)) - -/* nilfs extra padding for nonroot btree node. */ -#define NILFS_BTREE_NODE_EXTRA_PAD_SIZE (sizeof(grub_uint64_t)) -#define NILFS_BTREE_ROOT_SIZE NILFS_BMAP_SIZE -#define NILFS_BTREE_ROOT_NCHILDREN_MAX \ - ((NILFS_BTREE_ROOT_SIZE - sizeof(struct nilfs_btree_node)) / \ - (sizeof(grub_uint64_t) + sizeof(grub_uint64_t)) ) - - -struct grub_fshelp_node -{ - struct grub_nilfs2_data *data; - struct grub_nilfs2_inode inode; - grub_uint64_t ino; - int inode_read; -}; - -struct grub_nilfs2_data -{ - struct grub_nilfs2_super_block sblock; - struct grub_nilfs2_super_root sroot; - struct grub_nilfs2_inode ifile; - grub_disk_t disk; - struct grub_nilfs2_inode *inode; - struct grub_fshelp_node diropen; -}; - -/* Log2 size of nilfs2 block in 512 blocks. */ -#define LOG2_NILFS2_BLOCK_SIZE(data) \ - (grub_le_to_cpu32 (data->sblock.s_log_block_size) + 1) - -/* Log2 size of nilfs2 block in bytes. */ -#define LOG2_BLOCK_SIZE(data) \ - (grub_le_to_cpu32 (data->sblock.s_log_block_size) + 10) - -/* The size of an nilfs2 block in bytes. */ -#define NILFS2_BLOCK_SIZE(data) (1 << LOG2_BLOCK_SIZE (data)) - -static grub_uint64_t -grub_nilfs2_dat_translate (struct grub_nilfs2_data *data, grub_uint64_t key); -static grub_dl_t my_mod; - - - -static inline unsigned long -grub_nilfs2_log_palloc_entries_per_group (struct grub_nilfs2_data *data) -{ - return LOG2_BLOCK_SIZE (data) + 3; -} - -static inline grub_uint64_t -grub_nilfs2_palloc_group (struct grub_nilfs2_data *data, - grub_uint64_t nr, grub_uint64_t * offset) -{ - *offset = nr & ((1 << grub_nilfs2_log_palloc_entries_per_group (data)) - 1); - return nr >> grub_nilfs2_log_palloc_entries_per_group (data); -} - -static inline grub_uint32_t -grub_nilfs2_palloc_log_groups_per_desc_block (struct grub_nilfs2_data *data) -{ - return LOG2_BLOCK_SIZE (data) - LOG_SIZE_GROUP_DESC; - - COMPILE_TIME_ASSERT (sizeof (struct grub_nilfs2_palloc_group_desc) - == (1 << LOG_SIZE_GROUP_DESC)); -} - -static inline grub_uint32_t -grub_nilfs2_log_entries_per_block_log (struct grub_nilfs2_data *data, - unsigned long log_entry_size) -{ - return LOG2_BLOCK_SIZE (data) - log_entry_size; -} - - -static inline grub_uint32_t -grub_nilfs2_blocks_per_group_log (struct grub_nilfs2_data *data, - unsigned long log_entry_size) -{ - return (1 << (grub_nilfs2_log_palloc_entries_per_group (data) - - grub_nilfs2_log_entries_per_block_log (data, - log_entry_size))) + 1; -} - -static inline grub_uint32_t -grub_nilfs2_blocks_per_desc_block_log (struct grub_nilfs2_data *data, - unsigned long log_entry_size) -{ - return(grub_nilfs2_blocks_per_group_log (data, log_entry_size) - << grub_nilfs2_palloc_log_groups_per_desc_block (data)) + 1; -} - -static inline grub_uint32_t -grub_nilfs2_palloc_desc_block_offset_log (struct grub_nilfs2_data *data, - unsigned long group, - unsigned long log_entry_size) -{ - grub_uint32_t desc_block = - group >> grub_nilfs2_palloc_log_groups_per_desc_block (data); - return desc_block * grub_nilfs2_blocks_per_desc_block_log (data, - log_entry_size); -} - -static inline grub_uint32_t -grub_nilfs2_palloc_bitmap_block_offset (struct grub_nilfs2_data *data, - unsigned long group, - unsigned long log_entry_size) -{ - unsigned long desc_offset = group - & ((1 << grub_nilfs2_palloc_log_groups_per_desc_block (data)) - 1); - - return grub_nilfs2_palloc_desc_block_offset_log (data, group, log_entry_size) - + 1 - + desc_offset * grub_nilfs2_blocks_per_group_log (data, log_entry_size); -} - -static inline grub_uint32_t -grub_nilfs2_palloc_entry_offset_log (struct grub_nilfs2_data *data, - grub_uint64_t nr, - unsigned long log_entry_size) -{ - unsigned long group; - grub_uint64_t group_offset; - - group = grub_nilfs2_palloc_group (data, nr, &group_offset); - - return grub_nilfs2_palloc_bitmap_block_offset (data, group, - log_entry_size) + 1 + - (group_offset >> grub_nilfs2_log_entries_per_block_log (data, - log_entry_size)); - -} - -static inline struct grub_nilfs2_btree_node * -grub_nilfs2_btree_get_root (struct grub_nilfs2_inode *inode) -{ - return (struct grub_nilfs2_btree_node *) &inode->i_bmap[0]; -} - -static inline int -grub_nilfs2_btree_get_level (struct grub_nilfs2_btree_node *node) -{ - return node->bn_level; -} - -static inline grub_uint64_t * -grub_nilfs2_btree_node_dkeys (struct grub_nilfs2_btree_node *node) -{ - return (node->keys + - ((node->bn_flags & NILFS_BTREE_NODE_ROOT) ? - 0 : (NILFS_BTREE_NODE_EXTRA_PAD_SIZE / sizeof (grub_uint64_t)))); -} - -static inline grub_uint64_t -grub_nilfs2_btree_node_get_key (struct grub_nilfs2_btree_node *node, - int index) -{ - return grub_le_to_cpu64 (*(grub_nilfs2_btree_node_dkeys (node) + index)); -} - -static inline int -grub_nilfs2_btree_node_lookup (struct grub_nilfs2_btree_node *node, - grub_uint64_t key, int *indexp) -{ - grub_uint64_t nkey; - int index, low, high, s; - - low = 0; - high = grub_le_to_cpu16 (node->bn_nchildren) - 1; - index = 0; - s = 0; - while (low <= high) - { - index = (low + high) / 2; - nkey = grub_nilfs2_btree_node_get_key (node, index); - if (nkey == key) - { - *indexp = index; - return 1; - } - else if (nkey < key) - { - low = index + 1; - s = -1; - } - else - { - high = index - 1; - s = 1; - } - } - - if (node->bn_level > NILFS_BTREE_LEVEL_NODE_MIN) - { - if (s > 0 && index > 0) - index--; - } - else if (s < 0) - index++; - - *indexp = index; - return s == 0; -} - -static inline int -grub_nilfs2_btree_node_nchildren_max (struct grub_nilfs2_data *data, - struct grub_nilfs2_btree_node *node) -{ - int node_children_max = ((NILFS2_BLOCK_SIZE (data) - - sizeof (struct grub_nilfs2_btree_node) - - NILFS_BTREE_NODE_EXTRA_PAD_SIZE) / - (sizeof (grub_uint64_t) + sizeof (grub_uint64_t))); - - return (node->bn_flags & NILFS_BTREE_NODE_ROOT) ? 3 : node_children_max; -} - -static inline grub_uint64_t * -grub_nilfs2_btree_node_dptrs (struct grub_nilfs2_data *data, - struct grub_nilfs2_btree_node *node) -{ - return (grub_uint64_t *) (grub_nilfs2_btree_node_dkeys (node) + - grub_nilfs2_btree_node_nchildren_max (data, - node)); -} - -static inline grub_uint64_t -grub_nilfs2_btree_node_get_ptr (struct grub_nilfs2_data *data, - struct grub_nilfs2_btree_node *node, - int index) -{ - return - grub_le_to_cpu64 (*(grub_nilfs2_btree_node_dptrs (data, node) + index)); -} - -static inline int -grub_nilfs2_btree_get_nonroot_node (struct grub_nilfs2_data *data, - grub_uint64_t ptr, void *block) -{ - grub_disk_t disk = data->disk; - unsigned int nilfs2_block_count = (1 << LOG2_NILFS2_BLOCK_SIZE (data)); - - return grub_disk_read (disk, ptr * nilfs2_block_count, 0, - NILFS2_BLOCK_SIZE (data), block); -} - -static grub_uint64_t -grub_nilfs2_btree_lookup (struct grub_nilfs2_data *data, - struct grub_nilfs2_inode *inode, - grub_uint64_t key, int need_translate) -{ - struct grub_nilfs2_btree_node *node; - void *block; - grub_uint64_t ptr; - int level, found = 0, index; - - block = grub_malloc (NILFS2_BLOCK_SIZE (data)); - if (!block) - return -1; - - node = grub_nilfs2_btree_get_root (inode); - level = grub_nilfs2_btree_get_level (node); - - found = grub_nilfs2_btree_node_lookup (node, key, &index); - ptr = grub_nilfs2_btree_node_get_ptr (data, node, index); - if (need_translate) - ptr = grub_nilfs2_dat_translate (data, ptr); - - for (level--; level >= NILFS_BTREE_LEVEL_NODE_MIN; level--) - { - grub_nilfs2_btree_get_nonroot_node (data, ptr, block); - if (grub_errno) - { - goto fail; - } - node = (struct grub_nilfs2_btree_node *) block; - - if (node->bn_level != level) - { - grub_error (GRUB_ERR_BAD_FS, "btree level mismatch\n"); - goto fail; - } - - if (!found) - found = grub_nilfs2_btree_node_lookup (node, key, &index); - else - index = 0; - - if (index < grub_nilfs2_btree_node_nchildren_max (data, node)) - { - ptr = grub_nilfs2_btree_node_get_ptr (data, node, index); - if (need_translate) - ptr = grub_nilfs2_dat_translate (data, ptr); - } - else - { - grub_error (GRUB_ERR_BAD_FS, "btree corruption\n"); - goto fail; - } - } - - grub_free (block); - - if (!found) - return -1; - - return ptr; - fail: - grub_free (block); - return -1; -} - -static inline grub_uint64_t -grub_nilfs2_direct_lookup (struct grub_nilfs2_inode *inode, grub_uint64_t key) -{ - return grub_le_to_cpu64 (inode->i_bmap[1 + key]); -} - -static inline grub_uint64_t -grub_nilfs2_bmap_lookup (struct grub_nilfs2_data *data, - struct grub_nilfs2_inode *inode, - grub_uint64_t key, int need_translate) -{ - struct grub_nilfs2_btree_node *root = grub_nilfs2_btree_get_root (inode); - if (root->bn_flags & NILFS_BMAP_LARGE) - return grub_nilfs2_btree_lookup (data, inode, key, need_translate); - else - { - grub_uint64_t ptr; - ptr = grub_nilfs2_direct_lookup (inode, key); - if (need_translate) - ptr = grub_nilfs2_dat_translate (data, ptr); - return ptr; - } -} - -static grub_uint64_t -grub_nilfs2_dat_translate (struct grub_nilfs2_data *data, grub_uint64_t key) -{ - struct grub_nilfs2_dat_entry entry; - grub_disk_t disk = data->disk; - grub_uint64_t pptr; - grub_uint64_t blockno, offset; - unsigned int nilfs2_block_count = (1 << LOG2_NILFS2_BLOCK_SIZE (data)); - - blockno = grub_nilfs2_palloc_entry_offset_log (data, key, - LOG_NILFS_DAT_ENTRY_SIZE); - - offset = ((key * sizeof (struct grub_nilfs2_dat_entry)) - & ((1 << LOG2_BLOCK_SIZE (data)) - 1)); - - pptr = grub_nilfs2_bmap_lookup (data, &data->sroot.sr_dat, blockno, 0); - if (pptr == (grub_uint64_t) - 1) - { - grub_error (GRUB_ERR_BAD_FS, "btree lookup failure"); - return -1; - } - - grub_disk_read (disk, pptr * nilfs2_block_count, offset, - sizeof (struct grub_nilfs2_dat_entry), &entry); - - return grub_le_to_cpu64 (entry.de_blocknr); -} - - -static grub_disk_addr_t -grub_nilfs2_read_block (grub_fshelp_node_t node, grub_disk_addr_t fileblock) -{ - struct grub_nilfs2_data *data = node->data; - struct grub_nilfs2_inode *inode = &node->inode; - grub_uint64_t pptr = -1; - - pptr = grub_nilfs2_bmap_lookup (data, inode, fileblock, 1); - if (pptr == (grub_uint64_t) - 1) - { - grub_error (GRUB_ERR_BAD_FS, "btree lookup failure"); - return -1; - } - - return pptr; -} - -/* Read LEN bytes from the file described by DATA starting with byte - POS. Return the amount of read bytes in READ. */ -static grub_ssize_t -grub_nilfs2_read_file (grub_fshelp_node_t node, - grub_disk_read_hook_t read_hook, void *read_hook_data, - grub_off_t pos, grub_size_t len, char *buf) -{ - return grub_fshelp_read_file (node->data->disk, node, - read_hook, read_hook_data, - pos, len, buf, grub_nilfs2_read_block, - grub_le_to_cpu64 (node->inode.i_size), - LOG2_NILFS2_BLOCK_SIZE (node->data), 0); - -} - -static grub_err_t -grub_nilfs2_read_checkpoint (struct grub_nilfs2_data *data, - grub_uint64_t cpno, - struct grub_nilfs2_checkpoint *cpp) -{ - grub_uint64_t blockno; - grub_uint64_t offset; - grub_uint64_t pptr; - grub_disk_t disk = data->disk; - unsigned int nilfs2_block_count = (1 << LOG2_NILFS2_BLOCK_SIZE (data)); - - /* Assume sizeof(struct grub_nilfs2_cpfile_header) < - sizeof(struct grub_nilfs2_checkpoint). - */ - blockno = grub_divmod64 (cpno, NILFS2_BLOCK_SIZE (data) / - sizeof (struct grub_nilfs2_checkpoint), &offset); - - pptr = grub_nilfs2_bmap_lookup (data, &data->sroot.sr_cpfile, blockno, 1); - if (pptr == (grub_uint64_t) - 1) - { - return grub_error (GRUB_ERR_BAD_FS, "btree lookup failure"); - } - - return grub_disk_read (disk, pptr * nilfs2_block_count, - offset * sizeof (struct grub_nilfs2_checkpoint), - sizeof (struct grub_nilfs2_checkpoint), cpp); -} - -static inline grub_err_t -grub_nilfs2_read_last_checkpoint (struct grub_nilfs2_data *data, - struct grub_nilfs2_checkpoint *cpp) -{ - return grub_nilfs2_read_checkpoint (data, - grub_le_to_cpu64 (data-> - sblock.s_last_cno), - cpp); -} - -/* Read the inode INO for the file described by DATA into INODE. */ -static grub_err_t -grub_nilfs2_read_inode (struct grub_nilfs2_data *data, - grub_uint64_t ino, struct grub_nilfs2_inode *inodep) -{ - grub_uint64_t blockno; - grub_uint64_t offset; - grub_uint64_t pptr; - grub_disk_t disk = data->disk; - unsigned int nilfs2_block_count = (1 << LOG2_NILFS2_BLOCK_SIZE (data)); - - blockno = grub_nilfs2_palloc_entry_offset_log (data, ino, - LOG_INODE_SIZE); - - offset = ((sizeof (struct grub_nilfs2_inode) * ino) - & ((1 << LOG2_BLOCK_SIZE (data)) - 1)); - pptr = grub_nilfs2_bmap_lookup (data, &data->ifile, blockno, 1); - if (pptr == (grub_uint64_t) - 1) - { - return grub_error (GRUB_ERR_BAD_FS, "btree lookup failure"); - } - - return grub_disk_read (disk, pptr * nilfs2_block_count, offset, - sizeof (struct grub_nilfs2_inode), inodep); -} - -static int -grub_nilfs2_valid_sb (struct grub_nilfs2_super_block *sbp) -{ - if (grub_le_to_cpu16 (sbp->s_magic) != NILFS2_SUPER_MAGIC) - return 0; - - if (grub_le_to_cpu32 (sbp->s_rev_level) != NILFS_SUPORT_REV) - return 0; - - /* 20 already means 1GiB blocks. We don't want to deal with blocks overflowing int32. */ - if (grub_le_to_cpu32 (sbp->s_log_block_size) > 20) - return 0; - - return 1; -} - -static grub_err_t -grub_nilfs2_load_sb (struct grub_nilfs2_data *data) -{ - grub_disk_t disk = data->disk; - struct grub_nilfs2_super_block sb2; - grub_uint64_t partition_size; - int valid[2]; - int swp = 0; - grub_err_t err; - - /* Read first super block. */ - err = grub_disk_read (disk, NILFS_1ST_SUPER_BLOCK, 0, - sizeof (struct grub_nilfs2_super_block), &data->sblock); - if (err) - return err; - /* Make sure if 1st super block is valid. */ - valid[0] = grub_nilfs2_valid_sb (&data->sblock); - - if (valid[0]) - partition_size = (grub_le_to_cpu64 (data->sblock.s_dev_size) - >> GRUB_DISK_SECTOR_BITS); - else - partition_size = grub_disk_get_size (disk); - if (partition_size != GRUB_DISK_SIZE_UNKNOWN) - { - /* Read second super block. */ - err = grub_disk_read (disk, NILFS_2ND_SUPER_BLOCK (partition_size), 0, - sizeof (struct grub_nilfs2_super_block), &sb2); - if (err) - { - valid[1] = 0; - grub_errno = GRUB_ERR_NONE; - } - else - /* Make sure if 2nd super block is valid. */ - valid[1] = grub_nilfs2_valid_sb (&sb2); - } - else - /* 2nd super block may not exist, so it's invalid. */ - valid[1] = 0; - - if (!valid[0] && !valid[1]) - return grub_error (GRUB_ERR_BAD_FS, "not a nilfs2 filesystem"); - - swp = valid[1] && (!valid[0] || - grub_le_to_cpu64 (data->sblock.s_last_cno) < - grub_le_to_cpu64 (sb2.s_last_cno)); - - /* swap if first super block is invalid or older than second one. */ - if (swp) - grub_memcpy (&data->sblock, &sb2, - sizeof (struct grub_nilfs2_super_block)); - - return GRUB_ERR_NONE; -} - -static struct grub_nilfs2_data * -grub_nilfs2_mount (grub_disk_t disk) -{ - struct grub_nilfs2_data *data; - struct grub_nilfs2_segment_summary ss; - struct grub_nilfs2_checkpoint last_checkpoint; - grub_uint64_t last_pseg; - grub_uint32_t nblocks; - unsigned int nilfs2_block_count; - - data = grub_malloc (sizeof (struct grub_nilfs2_data)); - if (!data) - return 0; - - data->disk = disk; - - /* Read the superblock. */ - grub_nilfs2_load_sb (data); - if (grub_errno) - goto fail; - - nilfs2_block_count = (1 << LOG2_NILFS2_BLOCK_SIZE (data)); - - /* Read the last segment summary. */ - last_pseg = grub_le_to_cpu64 (data->sblock.s_last_pseg); - grub_disk_read (disk, last_pseg * nilfs2_block_count, 0, - sizeof (struct grub_nilfs2_segment_summary), &ss); - - if (grub_errno) - goto fail; - - /* Read the super root block. */ - nblocks = grub_le_to_cpu32 (ss.ss_nblocks); - grub_disk_read (disk, (last_pseg + (nblocks - 1)) * nilfs2_block_count, 0, - sizeof (struct grub_nilfs2_super_root), &data->sroot); - - if (grub_errno) - goto fail; - - grub_nilfs2_read_last_checkpoint (data, &last_checkpoint); - - if (grub_errno) - goto fail; - - grub_memcpy (&data->ifile, &last_checkpoint.cp_ifile_inode, - sizeof (struct grub_nilfs2_inode)); - - data->diropen.data = data; - data->diropen.ino = 2; - data->diropen.inode_read = 1; - data->inode = &data->diropen.inode; - - grub_nilfs2_read_inode (data, 2, data->inode); - - return data; - -fail: - if (grub_errno == GRUB_ERR_OUT_OF_RANGE) - grub_error (GRUB_ERR_BAD_FS, "not a nilfs2 filesystem"); - - grub_free (data); - return 0; -} - -static char * -grub_nilfs2_read_symlink (grub_fshelp_node_t node) -{ - char *symlink; - struct grub_fshelp_node *diro = node; - - if (!diro->inode_read) - { - grub_nilfs2_read_inode (diro->data, diro->ino, &diro->inode); - if (grub_errno) - return 0; - } - - symlink = grub_malloc (grub_le_to_cpu64 (diro->inode.i_size) + 1); - if (!symlink) - return 0; - - grub_nilfs2_read_file (diro, 0, 0, 0, - grub_le_to_cpu64 (diro->inode.i_size), symlink); - if (grub_errno) - { - grub_free (symlink); - return 0; - } - - symlink[grub_le_to_cpu64 (diro->inode.i_size)] = '\0'; - return symlink; -} - -static int -grub_nilfs2_iterate_dir (grub_fshelp_node_t dir, - grub_fshelp_iterate_dir_hook_t hook, void *hook_data) -{ - grub_off_t fpos = 0; - struct grub_fshelp_node *diro = (struct grub_fshelp_node *) dir; - - if (!diro->inode_read) - { - grub_nilfs2_read_inode (diro->data, diro->ino, &diro->inode); - if (grub_errno) - return 0; - } - - /* Iterate files. */ - while (fpos < grub_le_to_cpu64 (diro->inode.i_size)) - { - struct grub_nilfs2_dir_entry dirent; - - grub_nilfs2_read_file (diro, 0, 0, fpos, - sizeof (struct grub_nilfs2_dir_entry), - (char *) &dirent); - if (grub_errno) - return 0; - - if (dirent.rec_len == 0) - return 0; - - if (dirent.name_len != 0) - { - char filename[MAX_NAMELEN + 1]; - struct grub_fshelp_node *fdiro; - enum grub_fshelp_filetype type = GRUB_FSHELP_UNKNOWN; - - grub_nilfs2_read_file (diro, 0, 0, - fpos + sizeof (struct grub_nilfs2_dir_entry), - dirent.name_len, filename); - if (grub_errno) - return 0; - - fdiro = grub_malloc (sizeof (struct grub_fshelp_node)); - if (!fdiro) - return 0; - - fdiro->data = diro->data; - fdiro->ino = grub_le_to_cpu64 (dirent.inode); - - filename[dirent.name_len] = '\0'; - - if (dirent.file_type != NILFS_FT_UNKNOWN) - { - fdiro->inode_read = 0; - - if (dirent.file_type == NILFS_FT_DIR) - type = GRUB_FSHELP_DIR; - else if (dirent.file_type == NILFS_FT_SYMLINK) - type = GRUB_FSHELP_SYMLINK; - else if (dirent.file_type == NILFS_FT_REG_FILE) - type = GRUB_FSHELP_REG; - } - else - { - /* The filetype can not be read from the dirent, read - the inode to get more information. */ - grub_nilfs2_read_inode (diro->data, - grub_le_to_cpu64 (dirent.inode), - &fdiro->inode); - if (grub_errno) - { - grub_free (fdiro); - return 0; - } - - fdiro->inode_read = 1; - - if ((grub_le_to_cpu16 (fdiro->inode.i_mode) - & FILETYPE_INO_MASK) == FILETYPE_INO_DIRECTORY) - type = GRUB_FSHELP_DIR; - else if ((grub_le_to_cpu16 (fdiro->inode.i_mode) - & FILETYPE_INO_MASK) == FILETYPE_INO_SYMLINK) - type = GRUB_FSHELP_SYMLINK; - else if ((grub_le_to_cpu16 (fdiro->inode.i_mode) - & FILETYPE_INO_MASK) == FILETYPE_INO_REG) - type = GRUB_FSHELP_REG; - } - - if (hook (filename, type, fdiro, hook_data)) - return 1; - } - - fpos += grub_le_to_cpu16 (dirent.rec_len); - } - - return 0; -} - -/* Open a file named NAME and initialize FILE. */ -static grub_err_t -grub_nilfs2_open (struct grub_file *file, const char *name) -{ - struct grub_nilfs2_data *data = NULL; - struct grub_fshelp_node *fdiro = 0; - - grub_dl_ref (my_mod); - - data = grub_nilfs2_mount (file->device->disk); - if (!data) - goto fail; - - grub_fshelp_find_file (name, &data->diropen, &fdiro, - grub_nilfs2_iterate_dir, grub_nilfs2_read_symlink, - GRUB_FSHELP_REG); - if (grub_errno) - goto fail; - - if (!fdiro->inode_read) - { - grub_nilfs2_read_inode (data, fdiro->ino, &fdiro->inode); - if (grub_errno) - goto fail; - } - - grub_memcpy (data->inode, &fdiro->inode, sizeof (struct grub_nilfs2_inode)); - grub_free (fdiro); - - file->size = grub_le_to_cpu64 (data->inode->i_size); - file->data = data; - file->offset = 0; - - return 0; - -fail: - if (fdiro != &data->diropen) - grub_free (fdiro); - grub_free (data); - - grub_dl_unref (my_mod); - - return grub_errno; -} - -static grub_err_t -grub_nilfs2_close (grub_file_t file) -{ - grub_free (file->data); - - grub_dl_unref (my_mod); - - return GRUB_ERR_NONE; -} - -/* Read LEN bytes data from FILE into BUF. */ -static grub_ssize_t -grub_nilfs2_read (grub_file_t file, char *buf, grub_size_t len) -{ - struct grub_nilfs2_data *data = (struct grub_nilfs2_data *) file->data; - - return grub_nilfs2_read_file (&data->diropen, - file->read_hook, file->read_hook_data, - file->offset, len, buf); -} - -/* Context for grub_nilfs2_dir. */ -struct grub_nilfs2_dir_ctx -{ - grub_fs_dir_hook_t hook; - void *hook_data; - struct grub_nilfs2_data *data; -}; - -/* Helper for grub_nilfs2_dir. */ -static int -grub_nilfs2_dir_iter (const char *filename, enum grub_fshelp_filetype filetype, - grub_fshelp_node_t node, void *data) -{ - struct grub_nilfs2_dir_ctx *ctx = data; - struct grub_dirhook_info info; - - grub_memset (&info, 0, sizeof (info)); - if (!node->inode_read) - { - grub_nilfs2_read_inode (ctx->data, node->ino, &node->inode); - if (!grub_errno) - node->inode_read = 1; - grub_errno = GRUB_ERR_NONE; - } - if (node->inode_read) - { - info.mtimeset = 1; - info.mtime = grub_le_to_cpu64 (node->inode.i_mtime); - } - - info.dir = ((filetype & GRUB_FSHELP_TYPE_MASK) == GRUB_FSHELP_DIR); - grub_free (node); - return ctx->hook (filename, &info, ctx->hook_data); -} - -static grub_err_t -grub_nilfs2_dir (grub_device_t device, const char *path, - grub_fs_dir_hook_t hook, void *hook_data) -{ - struct grub_nilfs2_dir_ctx ctx = { - .hook = hook, - .hook_data = hook_data - }; - struct grub_fshelp_node *fdiro = 0; - - grub_dl_ref (my_mod); - - ctx.data = grub_nilfs2_mount (device->disk); - if (!ctx.data) - goto fail; - - grub_fshelp_find_file (path, &ctx.data->diropen, &fdiro, - grub_nilfs2_iterate_dir, grub_nilfs2_read_symlink, - GRUB_FSHELP_DIR); - if (grub_errno) - goto fail; - - grub_nilfs2_iterate_dir (fdiro, grub_nilfs2_dir_iter, &ctx); - -fail: - if (fdiro != &ctx.data->diropen) - grub_free (fdiro); - grub_free (ctx.data); - - grub_dl_unref (my_mod); - - return grub_errno; -} - -static grub_err_t -grub_nilfs2_label (grub_device_t device, char **label) -{ - struct grub_nilfs2_data *data; - grub_disk_t disk = device->disk; - - grub_dl_ref (my_mod); - - data = grub_nilfs2_mount (disk); - if (data) - *label = grub_strndup (data->sblock.s_volume_name, - sizeof (data->sblock.s_volume_name)); - else - *label = NULL; - - grub_dl_unref (my_mod); - - grub_free (data); - - return grub_errno; -} - -static grub_err_t -grub_nilfs2_uuid (grub_device_t device, char **uuid) -{ - struct grub_nilfs2_data *data; - grub_disk_t disk = device->disk; - - grub_dl_ref (my_mod); - - data = grub_nilfs2_mount (disk); - if (data) - { - *uuid = - grub_xasprintf - ("%02x%02x%02x%02x-%02x%02x-%02x%02x-%02x%02x-%02x%02x%02x%02x%02x%02x", - data->sblock.s_uuid[0], data->sblock.s_uuid[1], - data->sblock.s_uuid[2], data->sblock.s_uuid[3], - data->sblock.s_uuid[4], data->sblock.s_uuid[5], - data->sblock.s_uuid[6], data->sblock.s_uuid[7], - data->sblock.s_uuid[8], data->sblock.s_uuid[9], - data->sblock.s_uuid[10], data->sblock.s_uuid[11], - data->sblock.s_uuid[12], data->sblock.s_uuid[13], - data->sblock.s_uuid[14], data->sblock.s_uuid[15]); - } - else - *uuid = NULL; - - grub_dl_unref (my_mod); - - grub_free (data); - - return grub_errno; -} - -/* Get mtime. */ -static grub_err_t -grub_nilfs2_mtime (grub_device_t device, grub_int32_t * tm) -{ - struct grub_nilfs2_data *data; - grub_disk_t disk = device->disk; - - grub_dl_ref (my_mod); - - data = grub_nilfs2_mount (disk); - if (!data) - *tm = 0; - else - *tm = (grub_int32_t) grub_le_to_cpu64 (data->sblock.s_wtime); - - grub_dl_unref (my_mod); - - grub_free (data); - - return grub_errno; -} - - - -static struct grub_fs grub_nilfs2_fs = { - .name = "nilfs2", - .fs_dir = grub_nilfs2_dir, - .fs_open = grub_nilfs2_open, - .fs_read = grub_nilfs2_read, - .fs_close = grub_nilfs2_close, - .fs_label = grub_nilfs2_label, - .fs_uuid = grub_nilfs2_uuid, - .fs_mtime = grub_nilfs2_mtime, -#ifdef GRUB_UTIL - .reserved_first_sector = 1, - .blocklist_install = 0, -#endif - .next = 0 -}; - -GRUB_MOD_INIT (nilfs2) -{ - COMPILE_TIME_ASSERT ((1 << LOG_NILFS_DAT_ENTRY_SIZE) - == sizeof (struct - grub_nilfs2_dat_entry)); - COMPILE_TIME_ASSERT (1 << LOG_INODE_SIZE - == sizeof (struct grub_nilfs2_inode)); - grub_fs_register (&grub_nilfs2_fs); - my_mod = mod; -} - -GRUB_MOD_FINI (nilfs2) -{ - grub_fs_unregister (&grub_nilfs2_fs); -} diff --git a/thirdparty/grub-2.04/grub-core/fs/ntfs.c b/thirdparty/grub-2.04/grub-core/fs/ntfs.c deleted file mode 100644 index fc4e1f678..000000000 --- a/thirdparty/grub-2.04/grub-core/fs/ntfs.c +++ /dev/null @@ -1,1237 +0,0 @@ -/* ntfs.c - NTFS filesystem */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2007,2008,2009 Free Software Foundation, Inc. - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see . - */ - -#define grub_fshelp_node grub_ntfs_file - -#include -#include -#include -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -static grub_dl_t my_mod; - -#define grub_fshelp_node grub_ntfs_file - -static inline grub_uint16_t -u16at (void *ptr, grub_size_t ofs) -{ - return grub_le_to_cpu16 (grub_get_unaligned16 ((char *) ptr + ofs)); -} - -static inline grub_uint32_t -u32at (void *ptr, grub_size_t ofs) -{ - return grub_le_to_cpu32 (grub_get_unaligned32 ((char *) ptr + ofs)); -} - -static inline grub_uint64_t -u64at (void *ptr, grub_size_t ofs) -{ - return grub_le_to_cpu64 (grub_get_unaligned64 ((char *) ptr + ofs)); -} - -grub_ntfscomp_func_t grub_ntfscomp_func; - -static grub_err_t -fixup (grub_uint8_t *buf, grub_size_t len, const grub_uint8_t *magic) -{ - grub_uint16_t ss; - grub_uint8_t *pu; - grub_uint16_t us; - - COMPILE_TIME_ASSERT ((1 << GRUB_NTFS_BLK_SHR) == GRUB_DISK_SECTOR_SIZE); - - if (grub_memcmp (buf, magic, 4)) - return grub_error (GRUB_ERR_BAD_FS, "%s label not found", magic); - - ss = u16at (buf, 6) - 1; - if (ss != len) - return grub_error (GRUB_ERR_BAD_FS, "size not match"); - pu = buf + u16at (buf, 4); - us = u16at (pu, 0); - buf -= 2; - while (ss > 0) - { - buf += GRUB_DISK_SECTOR_SIZE; - pu += 2; - if (u16at (buf, 0) != us) - return grub_error (GRUB_ERR_BAD_FS, "fixup signature not match"); - buf[0] = pu[0]; - buf[1] = pu[1]; - ss--; - } - - return 0; -} - -static grub_err_t read_mft (struct grub_ntfs_data *data, grub_uint8_t *buf, - grub_uint64_t mftno); -static grub_err_t read_attr (struct grub_ntfs_attr *at, grub_uint8_t *dest, - grub_disk_addr_t ofs, grub_size_t len, - int cached, - grub_disk_read_hook_t read_hook, - void *read_hook_data); - -static grub_err_t read_data (struct grub_ntfs_attr *at, grub_uint8_t *pa, - grub_uint8_t *dest, - grub_disk_addr_t ofs, grub_size_t len, - int cached, - grub_disk_read_hook_t read_hook, - void *read_hook_data); - -static void -init_attr (struct grub_ntfs_attr *at, struct grub_ntfs_file *mft) -{ - at->mft = mft; - at->flags = (mft == &mft->data->mmft) ? GRUB_NTFS_AF_MMFT : 0; - at->attr_nxt = mft->buf + u16at (mft->buf, 0x14); - at->attr_end = at->emft_buf = at->edat_buf = at->sbuf = NULL; -} - -static void -free_attr (struct grub_ntfs_attr *at) -{ - grub_free (at->emft_buf); - grub_free (at->edat_buf); - grub_free (at->sbuf); -} - -static grub_uint8_t * -find_attr (struct grub_ntfs_attr *at, grub_uint8_t attr) -{ - if (at->flags & GRUB_NTFS_AF_ALST) - { - retry: - while (at->attr_nxt < at->attr_end) - { - at->attr_cur = at->attr_nxt; - at->attr_nxt += u16at (at->attr_cur, 4); - if ((*at->attr_cur == attr) || (attr == 0)) - { - grub_uint8_t *new_pos; - - if (at->flags & GRUB_NTFS_AF_MMFT) - { - if ((grub_disk_read - (at->mft->data->disk, u32at (at->attr_cur, 0x10), 0, - 512, at->emft_buf)) - || - (grub_disk_read - (at->mft->data->disk, u32at (at->attr_cur, 0x14), 0, - 512, at->emft_buf + 512))) - return NULL; - - if (fixup (at->emft_buf, at->mft->data->mft_size, - (const grub_uint8_t *) "FILE")) - return NULL; - } - else - { - if (read_mft (at->mft->data, at->emft_buf, - u32at (at->attr_cur, 0x10))) - return NULL; - } - - new_pos = &at->emft_buf[u16at (at->emft_buf, 0x14)]; - while (*new_pos != 0xFF) - { - if ((*new_pos == *at->attr_cur) - && (u16at (new_pos, 0xE) == u16at (at->attr_cur, 0x18))) - { - return new_pos; - } - new_pos += u16at (new_pos, 4); - } - grub_error (GRUB_ERR_BAD_FS, - "can\'t find 0x%X in attribute list", - (unsigned char) *at->attr_cur); - return NULL; - } - } - return NULL; - } - at->attr_cur = at->attr_nxt; - while (*at->attr_cur != 0xFF) - { - at->attr_nxt += u16at (at->attr_cur, 4); - if (*at->attr_cur == GRUB_NTFS_AT_ATTRIBUTE_LIST) - at->attr_end = at->attr_cur; - if ((*at->attr_cur == attr) || (attr == 0)) - return at->attr_cur; - at->attr_cur = at->attr_nxt; - } - if (at->attr_end) - { - grub_uint8_t *pa; - - at->emft_buf = grub_malloc (at->mft->data->mft_size << GRUB_NTFS_BLK_SHR); - if (at->emft_buf == NULL) - return NULL; - - pa = at->attr_end; - if (pa[8]) - { - grub_uint32_t n; - - n = ((u32at (pa, 0x30) + GRUB_DISK_SECTOR_SIZE - 1) - & (~(GRUB_DISK_SECTOR_SIZE - 1))); - at->attr_cur = at->attr_end; - at->edat_buf = grub_malloc (n); - if (!at->edat_buf) - return NULL; - if (read_data (at, pa, at->edat_buf, 0, n, 0, 0, 0)) - { - grub_error (GRUB_ERR_BAD_FS, - "fail to read non-resident attribute list"); - return NULL; - } - at->attr_nxt = at->edat_buf; - at->attr_end = at->edat_buf + u32at (pa, 0x30); - } - else - { - at->attr_nxt = at->attr_end + u16at (pa, 0x14); - at->attr_end = at->attr_end + u32at (pa, 4); - } - at->flags |= GRUB_NTFS_AF_ALST; - while (at->attr_nxt < at->attr_end) - { - if ((*at->attr_nxt == attr) || (attr == 0)) - break; - at->attr_nxt += u16at (at->attr_nxt, 4); - } - if (at->attr_nxt >= at->attr_end) - return NULL; - - if ((at->flags & GRUB_NTFS_AF_MMFT) && (attr == GRUB_NTFS_AT_DATA)) - { - at->flags |= GRUB_NTFS_AF_GPOS; - at->attr_cur = at->attr_nxt; - pa = at->attr_cur; - grub_set_unaligned32 ((char *) pa + 0x10, - grub_cpu_to_le32 (at->mft->data->mft_start)); - grub_set_unaligned32 ((char *) pa + 0x14, - grub_cpu_to_le32 (at->mft->data->mft_start - + 1)); - pa = at->attr_nxt + u16at (pa, 4); - while (pa < at->attr_end) - { - if (*pa != attr) - break; - if (read_attr - (at, pa + 0x10, - u32at (pa, 0x10) * (at->mft->data->mft_size << GRUB_NTFS_BLK_SHR), - at->mft->data->mft_size << GRUB_NTFS_BLK_SHR, 0, 0, 0)) - return NULL; - pa += u16at (pa, 4); - } - at->attr_nxt = at->attr_cur; - at->flags &= ~GRUB_NTFS_AF_GPOS; - } - goto retry; - } - return NULL; -} - -static grub_uint8_t * -locate_attr (struct grub_ntfs_attr *at, struct grub_ntfs_file *mft, - grub_uint8_t attr) -{ - grub_uint8_t *pa; - - init_attr (at, mft); - pa = find_attr (at, attr); - if (pa == NULL) - return NULL; - if ((at->flags & GRUB_NTFS_AF_ALST) == 0) - { - while (1) - { - pa = find_attr (at, attr); - if (pa == NULL) - break; - if (at->flags & GRUB_NTFS_AF_ALST) - return pa; - } - grub_errno = GRUB_ERR_NONE; - free_attr (at); - init_attr (at, mft); - pa = find_attr (at, attr); - } - return pa; -} - -static grub_disk_addr_t -read_run_data (const grub_uint8_t *run, int nn, int sig) -{ - grub_uint64_t r = 0; - - if (sig && nn && (run[nn - 1] & 0x80)) - r = -1; - - grub_memcpy (&r, run, nn); - - return grub_le_to_cpu64 (r); -} - -grub_err_t -grub_ntfs_read_run_list (struct grub_ntfs_rlst * ctx) -{ - grub_uint8_t c1, c2; - grub_disk_addr_t val; - grub_uint8_t *run; - - run = ctx->cur_run; -retry: - c1 = ((*run) & 0x7); - c2 = ((*run) >> 4) & 0x7; - run++; - if (!c1) - { - if ((ctx->attr) && (ctx->attr->flags & GRUB_NTFS_AF_ALST)) - { - grub_disk_read_hook_t save_hook; - - save_hook = ctx->comp.disk->read_hook; - ctx->comp.disk->read_hook = 0; - run = find_attr (ctx->attr, *ctx->attr->attr_cur); - ctx->comp.disk->read_hook = save_hook; - if (run) - { - if (run[8] == 0) - return grub_error (GRUB_ERR_BAD_FS, - "$DATA should be non-resident"); - - run += u16at (run, 0x20); - ctx->curr_lcn = 0; - goto retry; - } - } - return grub_error (GRUB_ERR_BAD_FS, "run list overflown"); - } - ctx->curr_vcn = ctx->next_vcn; - ctx->next_vcn += read_run_data (run, c1, 0); /* length of current VCN */ - run += c1; - val = read_run_data (run, c2, 1); /* offset to previous LCN */ - run += c2; - ctx->curr_lcn += val; - if (val == 0) - ctx->flags |= GRUB_NTFS_RF_BLNK; - else - ctx->flags &= ~GRUB_NTFS_RF_BLNK; - ctx->cur_run = run; - return 0; -} - -static grub_disk_addr_t -grub_ntfs_read_block (grub_fshelp_node_t node, grub_disk_addr_t block) -{ - struct grub_ntfs_rlst *ctx; - - ctx = (struct grub_ntfs_rlst *) node; - if (block >= ctx->next_vcn) - { - if (grub_ntfs_read_run_list (ctx)) - return -1; - return ctx->curr_lcn; - } - else - return (ctx->flags & GRUB_NTFS_RF_BLNK) ? 0 : (block - - ctx->curr_vcn + ctx->curr_lcn); -} - -static grub_err_t -read_data (struct grub_ntfs_attr *at, grub_uint8_t *pa, grub_uint8_t *dest, - grub_disk_addr_t ofs, grub_size_t len, int cached, - grub_disk_read_hook_t read_hook, void *read_hook_data) -{ - struct grub_ntfs_rlst cc, *ctx; - - if (len == 0) - return 0; - - grub_memset (&cc, 0, sizeof (cc)); - ctx = &cc; - ctx->attr = at; - ctx->comp.log_spc = at->mft->data->log_spc; - ctx->comp.disk = at->mft->data->disk; - - if (read_hook == grub_file_progress_hook) - ctx->file = read_hook_data; - - if (pa[8] == 0) - { - if (ofs + len > u32at (pa, 0x10)) - return grub_error (GRUB_ERR_BAD_FS, "read out of range"); - grub_memcpy (dest, pa + u32at (pa, 0x14) + ofs, len); - return 0; - } - - ctx->cur_run = pa + u16at (pa, 0x20); - - ctx->next_vcn = u32at (pa, 0x10); - ctx->curr_lcn = 0; - - if ((pa[0xC] & GRUB_NTFS_FLAG_COMPRESSED) - && !(at->flags & GRUB_NTFS_AF_GPOS)) - { - if (!cached) - return grub_error (GRUB_ERR_BAD_FS, "attribute can\'t be compressed"); - - return (grub_ntfscomp_func) ? grub_ntfscomp_func (dest, ofs, len, ctx) - : grub_error (GRUB_ERR_BAD_FS, N_("module `%s' isn't loaded"), - "ntfscomp"); - } - - ctx->target_vcn = ofs >> (GRUB_NTFS_BLK_SHR + ctx->comp.log_spc); - while (ctx->next_vcn <= ctx->target_vcn) - { - if (grub_ntfs_read_run_list (ctx)) - return grub_errno; - } - - if (at->flags & GRUB_NTFS_AF_GPOS) - { - grub_disk_addr_t st0, st1; - grub_uint64_t m; - - m = (ofs >> GRUB_NTFS_BLK_SHR) & ((1 << ctx->comp.log_spc) - 1); - - st0 = - ((ctx->target_vcn - ctx->curr_vcn + ctx->curr_lcn) << ctx->comp.log_spc) + m; - st1 = st0 + 1; - if (st1 == - (ctx->next_vcn - ctx->curr_vcn + ctx->curr_lcn) << ctx->comp.log_spc) - { - if (grub_ntfs_read_run_list (ctx)) - return grub_errno; - st1 = ctx->curr_lcn << ctx->comp.log_spc; - } - grub_set_unaligned32 (dest, grub_cpu_to_le32 (st0)); - grub_set_unaligned32 (dest + 4, grub_cpu_to_le32 (st1)); - return 0; - } - - grub_fshelp_read_file (ctx->comp.disk, (grub_fshelp_node_t) ctx, - read_hook, read_hook_data, ofs, len, - (char *) dest, - grub_ntfs_read_block, ofs + len, - ctx->comp.log_spc, 0); - return grub_errno; -} - -static grub_err_t -read_attr (struct grub_ntfs_attr *at, grub_uint8_t *dest, grub_disk_addr_t ofs, - grub_size_t len, int cached, - grub_disk_read_hook_t read_hook, void *read_hook_data) -{ - grub_uint8_t *save_cur; - grub_uint8_t attr; - grub_uint8_t *pp; - grub_err_t ret; - - save_cur = at->attr_cur; - at->attr_nxt = at->attr_cur; - attr = *at->attr_nxt; - if (at->flags & GRUB_NTFS_AF_ALST) - { - grub_uint8_t *pa; - grub_disk_addr_t vcn; - - /* If compression is possible make sure that we include possible - compressed block size. */ - if (GRUB_NTFS_LOG_COM_SEC >= at->mft->data->log_spc) - vcn = ((ofs >> GRUB_NTFS_COM_LOG_LEN) - << (GRUB_NTFS_LOG_COM_SEC - at->mft->data->log_spc)) & ~0xFULL; - else - vcn = ofs >> (at->mft->data->log_spc + GRUB_NTFS_BLK_SHR); - pa = at->attr_nxt + u16at (at->attr_nxt, 4); - while (pa < at->attr_end) - { - if (*pa != attr) - break; - if (u32at (pa, 8) > vcn) - break; - at->attr_nxt = pa; - pa += u16at (pa, 4); - } - } - pp = find_attr (at, attr); - if (pp) - ret = read_data (at, pp, dest, ofs, len, cached, - read_hook, read_hook_data); - else - ret = - (grub_errno) ? grub_errno : grub_error (GRUB_ERR_BAD_FS, - "attribute not found"); - at->attr_cur = save_cur; - return ret; -} - -static grub_err_t -read_mft (struct grub_ntfs_data *data, grub_uint8_t *buf, grub_uint64_t mftno) -{ - if (read_attr - (&data->mmft.attr, buf, mftno * ((grub_disk_addr_t) data->mft_size << GRUB_NTFS_BLK_SHR), - data->mft_size << GRUB_NTFS_BLK_SHR, 0, 0, 0)) - return grub_error (GRUB_ERR_BAD_FS, "read MFT 0x%llx fails", (unsigned long long) mftno); - return fixup (buf, data->mft_size, (const grub_uint8_t *) "FILE"); -} - -static grub_err_t -init_file (struct grub_ntfs_file *mft, grub_uint64_t mftno) -{ - unsigned short flag; - - mft->inode_read = 1; - - mft->buf = grub_malloc (mft->data->mft_size << GRUB_NTFS_BLK_SHR); - if (mft->buf == NULL) - return grub_errno; - - if (read_mft (mft->data, mft->buf, mftno)) - return grub_errno; - - flag = u16at (mft->buf, 0x16); - if ((flag & 1) == 0) - return grub_error (GRUB_ERR_BAD_FS, "MFT 0x%llx is not in use", - (unsigned long long) mftno); - - if ((flag & 2) == 0) - { - grub_uint8_t *pa; - - pa = locate_attr (&mft->attr, mft, GRUB_NTFS_AT_DATA); - if (pa == NULL) - return grub_error (GRUB_ERR_BAD_FS, "no $DATA in MFT 0x%llx", - (unsigned long long) mftno); - - if (!pa[8]) - mft->size = u32at (pa, 0x10); - else - mft->size = u64at (pa, 0x30); - - if ((mft->attr.flags & GRUB_NTFS_AF_ALST) == 0) - mft->attr.attr_end = 0; /* Don't jump to attribute list */ - } - else - init_attr (&mft->attr, mft); - - return 0; -} - -static void -free_file (struct grub_ntfs_file *mft) -{ - free_attr (&mft->attr); - grub_free (mft->buf); -} - -static char * -get_utf8 (grub_uint8_t *in, grub_size_t len) -{ - grub_uint8_t *buf; - grub_uint16_t *tmp; - grub_size_t i; - - buf = grub_malloc (len * GRUB_MAX_UTF8_PER_UTF16 + 1); - tmp = grub_malloc (len * sizeof (tmp[0])); - if (!buf || !tmp) - { - grub_free (buf); - grub_free (tmp); - return NULL; - } - for (i = 0; i < len; i++) - tmp[i] = grub_le_to_cpu16 (grub_get_unaligned16 (in + 2 * i)); - *grub_utf16_to_utf8 (buf, tmp, len) = '\0'; - grub_free (tmp); - return (char *) buf; -} - -static int -list_file (struct grub_ntfs_file *diro, grub_uint8_t *pos, - grub_fshelp_iterate_dir_hook_t hook, void *hook_data) -{ - grub_uint8_t *np; - int ns; - - while (1) - { - grub_uint8_t namespace; - char *ustr; - - if (pos[0xC] & 2) /* end signature */ - break; - - np = pos + 0x50; - ns = *(np++); - namespace = *(np++); - - /* - * Ignore files in DOS namespace, as they will reappear as Win32 - * names. - */ - if ((ns) && (namespace != 2)) - { - enum grub_fshelp_filetype type; - struct grub_ntfs_file *fdiro; - grub_uint32_t attr; - - attr = u32at (pos, 0x48); - if (attr & GRUB_NTFS_ATTR_REPARSE) - type = GRUB_FSHELP_SYMLINK; - else if (attr & GRUB_NTFS_ATTR_DIRECTORY) - type = GRUB_FSHELP_DIR; - else - type = GRUB_FSHELP_REG; - - fdiro = grub_zalloc (sizeof (struct grub_ntfs_file)); - if (!fdiro) - return 0; - - fdiro->data = diro->data; - fdiro->ino = u64at (pos, 0) & 0xffffffffffffULL; - fdiro->mtime = u64at (pos, 0x20); - - ustr = get_utf8 (np, ns); - if (ustr == NULL) - { - grub_free (fdiro); - return 0; - } - if (namespace) - type |= GRUB_FSHELP_CASE_INSENSITIVE; - - if (hook (ustr, type, fdiro, hook_data)) - { - grub_free (ustr); - return 1; - } - - grub_free (ustr); - } - pos += u16at (pos, 8); - } - return 0; -} - -struct symlink_descriptor -{ - grub_uint32_t type; - grub_uint32_t total_len; - grub_uint16_t off1; - grub_uint16_t len1; - grub_uint16_t off2; - grub_uint16_t len2; -} GRUB_PACKED; - -static char * -grub_ntfs_read_symlink (grub_fshelp_node_t node) -{ - struct grub_ntfs_file *mft; - struct symlink_descriptor symdesc; - grub_err_t err; - grub_uint8_t *buf16; - char *buf, *end; - grub_size_t len; - grub_uint8_t *pa; - grub_size_t off; - - mft = (struct grub_ntfs_file *) node; - - mft->buf = grub_malloc (mft->data->mft_size << GRUB_NTFS_BLK_SHR); - if (mft->buf == NULL) - return NULL; - - if (read_mft (mft->data, mft->buf, mft->ino)) - return NULL; - - pa = locate_attr (&mft->attr, mft, GRUB_NTFS_AT_SYMLINK); - if (pa == NULL) - { - grub_error (GRUB_ERR_BAD_FS, "no $SYMLINK in MFT 0x%llx", - (unsigned long long) mft->ino); - return NULL; - } - - err = read_attr (&mft->attr, (grub_uint8_t *) &symdesc, 0, - sizeof (struct symlink_descriptor), 1, 0, 0); - if (err) - return NULL; - - switch (grub_cpu_to_le32 (symdesc.type)) - { - case 0xa000000c: - off = (sizeof (struct symlink_descriptor) + 4 - + grub_cpu_to_le32 (symdesc.off1)); - len = grub_cpu_to_le32 (symdesc.len1); - break; - case 0xa0000003: - off = (sizeof (struct symlink_descriptor) - + grub_cpu_to_le32 (symdesc.off1)); - len = grub_cpu_to_le32 (symdesc.len1); - break; - default: - grub_error (GRUB_ERR_BAD_FS, "symlink type invalid (%x)", - grub_cpu_to_le32 (symdesc.type)); - return NULL; - } - - buf16 = grub_malloc (len); - if (!buf16) - return NULL; - - err = read_attr (&mft->attr, buf16, off, len, 1, 0, 0); - if (err) - return NULL; - - buf = get_utf8 (buf16, len / 2); - if (!buf) - { - grub_free (buf16); - return NULL; - } - grub_free (buf16); - - for (end = buf; *end; end++) - if (*end == '\\') - *end = '/'; - - /* Split the sequence to avoid GCC thinking that this is a trigraph. */ - if (grub_memcmp (buf, "/?" "?/", 4) == 0 && buf[5] == ':' && buf[6] == '/' - && grub_isalpha (buf[4])) - { - grub_memmove (buf, buf + 6, end - buf + 1 - 6); - end -= 6; - } - return buf; -} - -static int -grub_ntfs_iterate_dir (grub_fshelp_node_t dir, - grub_fshelp_iterate_dir_hook_t hook, void *hook_data) -{ - grub_uint8_t *bitmap; - struct grub_ntfs_attr attr, *at; - grub_uint8_t *cur_pos, *indx, *bmp; - int ret = 0; - grub_size_t bitmap_len; - struct grub_ntfs_file *mft; - - mft = (struct grub_ntfs_file *) dir; - - if (!mft->inode_read) - { - if (init_file (mft, mft->ino)) - return 0; - } - - indx = NULL; - bmp = NULL; - - at = &attr; - init_attr (at, mft); - while (1) - { - cur_pos = find_attr (at, GRUB_NTFS_AT_INDEX_ROOT); - if (cur_pos == NULL) - { - grub_error (GRUB_ERR_BAD_FS, "no $INDEX_ROOT"); - goto done; - } - - /* Resident, Namelen=4, Offset=0x18, Flags=0x00, Name="$I30" */ - if ((u32at (cur_pos, 8) != 0x180400) || - (u32at (cur_pos, 0x18) != 0x490024) || - (u32at (cur_pos, 0x1C) != 0x300033)) - continue; - cur_pos += u16at (cur_pos, 0x14); - if (*cur_pos != 0x30) /* Not filename index */ - continue; - break; - } - - cur_pos += 0x10; /* Skip index root */ - ret = list_file (mft, cur_pos + u16at (cur_pos, 0), hook, hook_data); - if (ret) - goto done; - - bitmap = NULL; - bitmap_len = 0; - free_attr (at); - init_attr (at, mft); - while ((cur_pos = find_attr (at, GRUB_NTFS_AT_BITMAP)) != NULL) - { - int ofs; - - ofs = cur_pos[0xA]; - /* Namelen=4, Name="$I30" */ - if ((cur_pos[9] == 4) && - (u32at (cur_pos, ofs) == 0x490024) && - (u32at (cur_pos, ofs + 4) == 0x300033)) - { - int is_resident = (cur_pos[8] == 0); - - bitmap_len = ((is_resident) ? u32at (cur_pos, 0x10) : - u32at (cur_pos, 0x28)); - - bmp = grub_malloc (bitmap_len); - if (bmp == NULL) - goto done; - - if (is_resident) - { - grub_memcpy (bmp, cur_pos + u16at (cur_pos, 0x14), - bitmap_len); - } - else - { - if (read_data (at, cur_pos, bmp, 0, bitmap_len, 0, 0, 0)) - { - grub_error (GRUB_ERR_BAD_FS, - "fails to read non-resident $BITMAP"); - goto done; - } - bitmap_len = u32at (cur_pos, 0x30); - } - - bitmap = bmp; - break; - } - } - - free_attr (at); - cur_pos = locate_attr (at, mft, GRUB_NTFS_AT_INDEX_ALLOCATION); - while (cur_pos != NULL) - { - /* Non-resident, Namelen=4, Offset=0x40, Flags=0, Name="$I30" */ - if ((u32at (cur_pos, 8) == 0x400401) && - (u32at (cur_pos, 0x40) == 0x490024) && - (u32at (cur_pos, 0x44) == 0x300033)) - break; - cur_pos = find_attr (at, GRUB_NTFS_AT_INDEX_ALLOCATION); - } - - if ((!cur_pos) && (bitmap)) - { - grub_error (GRUB_ERR_BAD_FS, "$BITMAP without $INDEX_ALLOCATION"); - goto done; - } - - if (bitmap) - { - grub_disk_addr_t i; - grub_uint8_t v; - - indx = grub_malloc (mft->data->idx_size << GRUB_NTFS_BLK_SHR); - if (indx == NULL) - goto done; - - v = 1; - for (i = 0; i < (grub_disk_addr_t)bitmap_len * 8; i++) - { - if (*bitmap & v) - { - if ((read_attr - (at, indx, i * (mft->data->idx_size << GRUB_NTFS_BLK_SHR), - (mft->data->idx_size << GRUB_NTFS_BLK_SHR), 0, 0, 0)) - || (fixup (indx, mft->data->idx_size, - (const grub_uint8_t *) "INDX"))) - goto done; - ret = list_file (mft, &indx[0x18 + u16at (indx, 0x18)], - hook, hook_data); - if (ret) - goto done; - } - v <<= 1; - if (!v) - { - v = 1; - bitmap++; - } - } - } - -done: - free_attr (at); - grub_free (indx); - grub_free (bmp); - - return ret; -} - -static struct grub_ntfs_data * -grub_ntfs_mount (grub_disk_t disk) -{ - struct grub_ntfs_bpb bpb; - struct grub_ntfs_data *data = 0; - grub_uint32_t spc; - - if (!disk) - goto fail; - - data = (struct grub_ntfs_data *) grub_zalloc (sizeof (*data)); - if (!data) - goto fail; - - data->disk = disk; - - /* Read the BPB. */ - if (grub_disk_read (disk, 0, 0, sizeof (bpb), &bpb)) - goto fail; - - if (grub_memcmp ((char *) &bpb.oem_name, "NTFS", 4) != 0 - || bpb.sectors_per_cluster == 0 - || (bpb.sectors_per_cluster & (bpb.sectors_per_cluster - 1)) != 0 - || bpb.bytes_per_sector == 0 - || (bpb.bytes_per_sector & (bpb.bytes_per_sector - 1)) != 0) - goto fail; - - spc = (((grub_uint32_t) bpb.sectors_per_cluster - * (grub_uint32_t) grub_le_to_cpu16 (bpb.bytes_per_sector)) - >> GRUB_NTFS_BLK_SHR); - if (spc == 0) - goto fail; - - for (data->log_spc = 0; (1U << data->log_spc) < spc; data->log_spc++); - - if (bpb.clusters_per_mft > 0) - data->mft_size = ((grub_disk_addr_t) bpb.clusters_per_mft) << data->log_spc; - else if (-bpb.clusters_per_mft < GRUB_NTFS_BLK_SHR || -bpb.clusters_per_mft >= 31) - goto fail; - else - data->mft_size = 1ULL << (-bpb.clusters_per_mft - GRUB_NTFS_BLK_SHR); - - if (bpb.clusters_per_index > 0) - data->idx_size = (((grub_disk_addr_t) bpb.clusters_per_index) - << data->log_spc); - else if (-bpb.clusters_per_index < GRUB_NTFS_BLK_SHR || -bpb.clusters_per_index >= 31) - goto fail; - else - data->idx_size = 1ULL << (-bpb.clusters_per_index - GRUB_NTFS_BLK_SHR); - - data->mft_start = grub_le_to_cpu64 (bpb.mft_lcn) << data->log_spc; - - if ((data->mft_size > GRUB_NTFS_MAX_MFT) || (data->idx_size > GRUB_NTFS_MAX_IDX)) - goto fail; - - data->mmft.data = data; - data->cmft.data = data; - - data->mmft.buf = grub_malloc (data->mft_size << GRUB_NTFS_BLK_SHR); - if (!data->mmft.buf) - goto fail; - - if (grub_disk_read - (disk, data->mft_start, 0, data->mft_size << GRUB_NTFS_BLK_SHR, data->mmft.buf)) - goto fail; - - data->uuid = grub_le_to_cpu64 (bpb.num_serial); - - if (fixup (data->mmft.buf, data->mft_size, (const grub_uint8_t *) "FILE")) - goto fail; - - if (!locate_attr (&data->mmft.attr, &data->mmft, GRUB_NTFS_AT_DATA)) - goto fail; - - if (init_file (&data->cmft, GRUB_NTFS_FILE_ROOT)) - goto fail; - - return data; - -fail: - grub_error (GRUB_ERR_BAD_FS, "not an ntfs filesystem"); - - if (data) - { - free_file (&data->mmft); - free_file (&data->cmft); - grub_free (data); - } - return 0; -} - -/* Context for grub_ntfs_dir. */ -struct grub_ntfs_dir_ctx -{ - grub_fs_dir_hook_t hook; - void *hook_data; -}; - -/* Helper for grub_ntfs_dir. */ -static int -grub_ntfs_dir_iter (const char *filename, enum grub_fshelp_filetype filetype, - grub_fshelp_node_t node, void *data) -{ - struct grub_ntfs_dir_ctx *ctx = data; - struct grub_dirhook_info info; - - grub_memset (&info, 0, sizeof (info)); - info.dir = ((filetype & GRUB_FSHELP_TYPE_MASK) == GRUB_FSHELP_DIR); - info.mtimeset = 1; - info.mtime = grub_divmod64 (node->mtime, 10000000, 0) - - 86400ULL * 365 * (1970 - 1601) - - 86400ULL * ((1970 - 1601) / 4) + 86400ULL * ((1970 - 1601) / 100); - grub_free (node); - return ctx->hook (filename, &info, ctx->hook_data); -} - -static grub_err_t -grub_ntfs_dir (grub_device_t device, const char *path, - grub_fs_dir_hook_t hook, void *hook_data) -{ - struct grub_ntfs_dir_ctx ctx = { hook, hook_data }; - struct grub_ntfs_data *data = 0; - struct grub_fshelp_node *fdiro = 0; - - grub_dl_ref (my_mod); - - data = grub_ntfs_mount (device->disk); - if (!data) - goto fail; - - grub_fshelp_find_file (path, &data->cmft, &fdiro, grub_ntfs_iterate_dir, - grub_ntfs_read_symlink, GRUB_FSHELP_DIR); - - if (grub_errno) - goto fail; - - grub_ntfs_iterate_dir (fdiro, grub_ntfs_dir_iter, &ctx); - -fail: - if ((fdiro) && (fdiro != &data->cmft)) - { - free_file (fdiro); - grub_free (fdiro); - } - if (data) - { - free_file (&data->mmft); - free_file (&data->cmft); - grub_free (data); - } - - grub_dl_unref (my_mod); - - return grub_errno; -} - -static grub_err_t -grub_ntfs_open (grub_file_t file, const char *name) -{ - struct grub_ntfs_data *data = 0; - struct grub_fshelp_node *mft = 0; - - grub_dl_ref (my_mod); - - data = grub_ntfs_mount (file->device->disk); - if (!data) - goto fail; - - grub_fshelp_find_file (name, &data->cmft, &mft, grub_ntfs_iterate_dir, - grub_ntfs_read_symlink, GRUB_FSHELP_REG); - - if (grub_errno) - goto fail; - - if (mft != &data->cmft) - { - free_file (&data->cmft); - grub_memcpy (&data->cmft, mft, sizeof (*mft)); - grub_free (mft); - if (!data->cmft.inode_read) - { - if (init_file (&data->cmft, data->cmft.ino)) - goto fail; - } - } - - file->size = data->cmft.size; - file->data = data; - file->offset = 0; - - return 0; - -fail: - if (data) - { - free_file (&data->mmft); - free_file (&data->cmft); - grub_free (data); - } - - grub_dl_unref (my_mod); - - return grub_errno; -} - -static grub_ssize_t -grub_ntfs_read (grub_file_t file, char *buf, grub_size_t len) -{ - struct grub_ntfs_file *mft; - - mft = &((struct grub_ntfs_data *) file->data)->cmft; - if (file->read_hook) - mft->attr.save_pos = 1; - - read_attr (&mft->attr, (grub_uint8_t *) buf, file->offset, len, 1, - file->read_hook, file->read_hook_data); - return (grub_errno) ? -1 : (grub_ssize_t) len; -} - -static grub_err_t -grub_ntfs_close (grub_file_t file) -{ - struct grub_ntfs_data *data; - - data = file->data; - - if (data) - { - free_file (&data->mmft); - free_file (&data->cmft); - grub_free (data); - } - - grub_dl_unref (my_mod); - - return grub_errno; -} - -static grub_err_t -grub_ntfs_label (grub_device_t device, char **label) -{ - struct grub_ntfs_data *data = 0; - struct grub_fshelp_node *mft = 0; - grub_uint8_t *pa; - - grub_dl_ref (my_mod); - - *label = 0; - - data = grub_ntfs_mount (device->disk); - if (!data) - goto fail; - - grub_fshelp_find_file ("/$Volume", &data->cmft, &mft, grub_ntfs_iterate_dir, - 0, GRUB_FSHELP_REG); - - if (grub_errno) - goto fail; - - if (!mft->inode_read) - { - mft->buf = grub_malloc (mft->data->mft_size << GRUB_NTFS_BLK_SHR); - if (mft->buf == NULL) - goto fail; - - if (read_mft (mft->data, mft->buf, mft->ino)) - goto fail; - } - - init_attr (&mft->attr, mft); - pa = find_attr (&mft->attr, GRUB_NTFS_AT_VOLUME_NAME); - if ((pa) && (pa[8] == 0) && (u32at (pa, 0x10))) - { - int len; - - len = u32at (pa, 0x10) / 2; - pa += u16at (pa, 0x14); - *label = get_utf8 (pa, len); - } - -fail: - if ((mft) && (mft != &data->cmft)) - { - free_file (mft); - grub_free (mft); - } - if (data) - { - free_file (&data->mmft); - free_file (&data->cmft); - grub_free (data); - } - - grub_dl_unref (my_mod); - - return grub_errno; -} - -static grub_err_t -grub_ntfs_uuid (grub_device_t device, char **uuid) -{ - struct grub_ntfs_data *data; - grub_disk_t disk = device->disk; - - grub_dl_ref (my_mod); - - data = grub_ntfs_mount (disk); - if (data) - { - char *ptr; - *uuid = grub_xasprintf ("%016llx", (unsigned long long) data->uuid); - if (*uuid) - for (ptr = *uuid; *ptr; ptr++) - *ptr = grub_toupper (*ptr); - free_file (&data->mmft); - free_file (&data->cmft); - grub_free (data); - } - else - *uuid = NULL; - - grub_dl_unref (my_mod); - - return grub_errno; -} - -static struct grub_fs grub_ntfs_fs = - { - .name = "ntfs", - .fs_dir = grub_ntfs_dir, - .fs_open = grub_ntfs_open, - .fs_read = grub_ntfs_read, - .fs_close = grub_ntfs_close, - .fs_label = grub_ntfs_label, - .fs_uuid = grub_ntfs_uuid, -#ifdef GRUB_UTIL - .reserved_first_sector = 1, - .blocklist_install = 1, -#endif - .next = 0 -}; - -GRUB_MOD_INIT (ntfs) -{ - grub_fs_register (&grub_ntfs_fs); - my_mod = mod; -} - -GRUB_MOD_FINI (ntfs) -{ - grub_fs_unregister (&grub_ntfs_fs); -} diff --git a/thirdparty/grub-2.04/grub-core/fs/ntfscomp.c b/thirdparty/grub-2.04/grub-core/fs/ntfscomp.c deleted file mode 100644 index 3cd97d337..000000000 --- a/thirdparty/grub-2.04/grub-core/fs/ntfscomp.c +++ /dev/null @@ -1,443 +0,0 @@ -/* ntfscomp.c - compression support for the NTFS filesystem */ -/* - * Copyright (C) 2007 Free Software Foundation, Inc. - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see . - */ - -#include -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -static grub_err_t -decomp_nextvcn (struct grub_ntfs_comp *cc) -{ - if (cc->comp_head >= cc->comp_tail) - return grub_error (GRUB_ERR_BAD_FS, "compression block overflown"); - if (grub_disk_read - (cc->disk, - (cc->comp_table[cc->comp_head].next_lcn - - (cc->comp_table[cc->comp_head].next_vcn - cc->cbuf_vcn)) << cc->log_spc, - 0, - 1 << (cc->log_spc + GRUB_NTFS_BLK_SHR), cc->cbuf)) - return grub_errno; - cc->cbuf_vcn++; - if ((cc->cbuf_vcn >= cc->comp_table[cc->comp_head].next_vcn)) - cc->comp_head++; - cc->cbuf_ofs = 0; - return 0; -} - -static grub_err_t -decomp_getch (struct grub_ntfs_comp *cc, grub_uint8_t *res) -{ - if (cc->cbuf_ofs >= (1U << (cc->log_spc + GRUB_NTFS_BLK_SHR))) - { - if (decomp_nextvcn (cc)) - return grub_errno; - } - *res = cc->cbuf[cc->cbuf_ofs++]; - return 0; -} - -static grub_err_t -decomp_get16 (struct grub_ntfs_comp *cc, grub_uint16_t * res) -{ - grub_uint8_t c1 = 0, c2 = 0; - - if ((decomp_getch (cc, &c1)) || (decomp_getch (cc, &c2))) - return grub_errno; - *res = ((grub_uint16_t) c2) * 256 + ((grub_uint16_t) c1); - return 0; -} - -/* Decompress a block (4096 bytes) */ -static grub_err_t -decomp_block (struct grub_ntfs_comp *cc, grub_uint8_t *dest) -{ - grub_uint16_t flg, cnt; - - if (decomp_get16 (cc, &flg)) - return grub_errno; - cnt = (flg & 0xFFF) + 1; - - if (dest) - { - if (flg & 0x8000) - { - grub_uint8_t tag; - grub_uint32_t bits, copied; - - bits = copied = tag = 0; - while (cnt > 0) - { - if (copied > GRUB_NTFS_COM_LEN) - return grub_error (GRUB_ERR_BAD_FS, - "compression block too large"); - - if (!bits) - { - if (decomp_getch (cc, &tag)) - return grub_errno; - - bits = 8; - cnt--; - if (cnt <= 0) - break; - } - if (tag & 1) - { - grub_uint32_t i, len, delta, code, lmask, dshift; - grub_uint16_t word = 0; - - if (decomp_get16 (cc, &word)) - return grub_errno; - - code = word; - cnt -= 2; - - if (!copied) - { - grub_error (GRUB_ERR_BAD_FS, "nontext window empty"); - return 0; - } - - for (i = copied - 1, lmask = 0xFFF, dshift = 12; i >= 0x10; - i >>= 1) - { - lmask >>= 1; - dshift--; - } - - delta = code >> dshift; - len = (code & lmask) + 3; - - for (i = 0; i < len; i++) - { - dest[copied] = dest[copied - delta - 1]; - copied++; - } - } - else - { - grub_uint8_t ch = 0; - - if (decomp_getch (cc, &ch)) - return grub_errno; - dest[copied++] = ch; - cnt--; - } - tag >>= 1; - bits--; - } - return 0; - } - else - { - if (cnt != GRUB_NTFS_COM_LEN) - return grub_error (GRUB_ERR_BAD_FS, - "invalid compression block size"); - } - } - - while (cnt > 0) - { - int n; - - n = (1 << (cc->log_spc + GRUB_NTFS_BLK_SHR)) - cc->cbuf_ofs; - if (n > cnt) - n = cnt; - if ((dest) && (n)) - { - grub_memcpy (dest, &cc->cbuf[cc->cbuf_ofs], n); - dest += n; - } - cnt -= n; - cc->cbuf_ofs += n; - if ((cnt) && (decomp_nextvcn (cc))) - return grub_errno; - } - return 0; -} - -static grub_err_t -read_block (struct grub_ntfs_rlst *ctx, grub_uint8_t *buf, grub_size_t num) -{ - int log_cpb = GRUB_NTFS_LOG_COM_SEC - ctx->comp.log_spc; - - while (num) - { - grub_size_t nn; - - if ((ctx->target_vcn & 0xF) == 0) - { - - if (ctx->comp.comp_head != ctx->comp.comp_tail - && !(ctx->flags & GRUB_NTFS_RF_BLNK)) - return grub_error (GRUB_ERR_BAD_FS, "invalid compression block"); - ctx->comp.comp_head = ctx->comp.comp_tail = 0; - ctx->comp.cbuf_vcn = ctx->target_vcn; - ctx->comp.cbuf_ofs = (1 << (ctx->comp.log_spc + GRUB_NTFS_BLK_SHR)); - if (ctx->target_vcn >= ctx->next_vcn) - { - if (grub_ntfs_read_run_list (ctx)) - return grub_errno; - } - while (ctx->target_vcn + 16 > ctx->next_vcn) - { - if (ctx->flags & GRUB_NTFS_RF_BLNK) - break; - ctx->comp.comp_table[ctx->comp.comp_tail].next_vcn = ctx->next_vcn; - ctx->comp.comp_table[ctx->comp.comp_tail].next_lcn = - ctx->curr_lcn + ctx->next_vcn - ctx->curr_vcn; - ctx->comp.comp_tail++; - if (grub_ntfs_read_run_list (ctx)) - return grub_errno; - } - } - - nn = (16 - (unsigned) (ctx->target_vcn & 0xF)) >> log_cpb; - if (nn > num) - nn = num; - num -= nn; - - if (ctx->flags & GRUB_NTFS_RF_BLNK) - { - ctx->target_vcn += nn << log_cpb; - if (ctx->comp.comp_tail == 0) - { - if (buf) - { - grub_memset (buf, 0, nn * GRUB_NTFS_COM_LEN); - buf += nn * GRUB_NTFS_COM_LEN; - if (grub_file_progress_hook && ctx->file) - grub_file_progress_hook (0, 0, nn * GRUB_NTFS_COM_LEN, - ctx->file); - } - } - else - { - while (nn) - { - if (decomp_block (&ctx->comp, buf)) - return grub_errno; - if (buf) - buf += GRUB_NTFS_COM_LEN; - if (grub_file_progress_hook && ctx->file) - grub_file_progress_hook (0, 0, GRUB_NTFS_COM_LEN, - ctx->file); - nn--; - } - } - } - else - { - nn <<= log_cpb; - while ((ctx->comp.comp_head < ctx->comp.comp_tail) && (nn)) - { - grub_disk_addr_t tt; - - tt = - ctx->comp.comp_table[ctx->comp.comp_head].next_vcn - - ctx->target_vcn; - if (tt > nn) - tt = nn; - ctx->target_vcn += tt; - if (buf) - { - if (grub_disk_read - (ctx->comp.disk, - (ctx->comp.comp_table[ctx->comp.comp_head].next_lcn - - (ctx->comp.comp_table[ctx->comp.comp_head].next_vcn - - ctx->target_vcn)) << ctx->comp.log_spc, 0, - tt << (ctx->comp.log_spc + GRUB_NTFS_BLK_SHR), buf)) - return grub_errno; - if (grub_file_progress_hook && ctx->file) - grub_file_progress_hook (0, 0, - tt << (ctx->comp.log_spc - + GRUB_NTFS_BLK_SHR), - ctx->file); - buf += tt << (ctx->comp.log_spc + GRUB_NTFS_BLK_SHR); - } - nn -= tt; - if (ctx->target_vcn >= - ctx->comp.comp_table[ctx->comp.comp_head].next_vcn) - ctx->comp.comp_head++; - } - if (nn) - { - if (buf) - { - if (grub_disk_read - (ctx->comp.disk, - (ctx->target_vcn - ctx->curr_vcn + - ctx->curr_lcn) << ctx->comp.log_spc, 0, - nn << (ctx->comp.log_spc + GRUB_NTFS_BLK_SHR), buf)) - return grub_errno; - buf += nn << (ctx->comp.log_spc + GRUB_NTFS_BLK_SHR); - if (grub_file_progress_hook && ctx->file) - grub_file_progress_hook (0, 0, - nn << (ctx->comp.log_spc - + GRUB_NTFS_BLK_SHR), - ctx->file); - } - ctx->target_vcn += nn; - } - } - } - return 0; -} - -static grub_err_t -ntfscomp (grub_uint8_t *dest, grub_disk_addr_t ofs, - grub_size_t len, struct grub_ntfs_rlst *ctx) -{ - grub_err_t ret; - grub_disk_addr_t vcn; - - if (ctx->attr->sbuf) - { - if ((ofs & (~(GRUB_NTFS_COM_LEN - 1))) == ctx->attr->save_pos) - { - grub_disk_addr_t n; - - n = GRUB_NTFS_COM_LEN - (ofs - ctx->attr->save_pos); - if (n > len) - n = len; - - grub_memcpy (dest, ctx->attr->sbuf + ofs - ctx->attr->save_pos, n); - if (grub_file_progress_hook && ctx->file) - grub_file_progress_hook (0, 0, n, ctx->file); - if (n == len) - return 0; - - dest += n; - len -= n; - ofs += n; - } - } - else - { - ctx->attr->sbuf = grub_malloc (GRUB_NTFS_COM_LEN); - if (ctx->attr->sbuf == NULL) - return grub_errno; - ctx->attr->save_pos = 1; - } - - vcn = ctx->target_vcn = (ofs >> GRUB_NTFS_COM_LOG_LEN) * (GRUB_NTFS_COM_SEC >> ctx->comp.log_spc); - ctx->target_vcn &= ~0xFULL; - while (ctx->next_vcn <= ctx->target_vcn) - { - if (grub_ntfs_read_run_list (ctx)) - return grub_errno; - } - - ctx->comp.comp_head = ctx->comp.comp_tail = 0; - ctx->comp.cbuf = grub_malloc (1 << (ctx->comp.log_spc + GRUB_NTFS_BLK_SHR)); - if (!ctx->comp.cbuf) - return 0; - - ret = 0; - - //ctx->comp.disk->read_hook = read_hook; - //ctx->comp.disk->read_hook_data = read_hook_data; - - if ((vcn > ctx->target_vcn) && - (read_block - (ctx, NULL, (vcn - ctx->target_vcn) >> (GRUB_NTFS_LOG_COM_SEC - ctx->comp.log_spc)))) - { - ret = grub_errno; - goto quit; - } - - if (ofs % GRUB_NTFS_COM_LEN) - { - grub_uint32_t t, n, o; - void *file = ctx->file; - - ctx->file = 0; - - t = ctx->target_vcn << (ctx->comp.log_spc + GRUB_NTFS_BLK_SHR); - if (read_block (ctx, ctx->attr->sbuf, 1)) - { - ret = grub_errno; - goto quit; - } - - ctx->file = file; - - ctx->attr->save_pos = t; - - o = ofs % GRUB_NTFS_COM_LEN; - n = GRUB_NTFS_COM_LEN - o; - if (n > len) - n = len; - grub_memcpy (dest, &ctx->attr->sbuf[o], n); - if (grub_file_progress_hook && ctx->file) - grub_file_progress_hook (0, 0, n, ctx->file); - if (n == len) - goto quit; - dest += n; - len -= n; - } - - if (read_block (ctx, dest, len / GRUB_NTFS_COM_LEN)) - { - ret = grub_errno; - goto quit; - } - - dest += (len / GRUB_NTFS_COM_LEN) * GRUB_NTFS_COM_LEN; - len = len % GRUB_NTFS_COM_LEN; - if (len) - { - grub_uint32_t t; - void *file = ctx->file; - - ctx->file = 0; - t = ctx->target_vcn << (ctx->comp.log_spc + GRUB_NTFS_BLK_SHR); - if (read_block (ctx, ctx->attr->sbuf, 1)) - { - ret = grub_errno; - goto quit; - } - - ctx->attr->save_pos = t; - - grub_memcpy (dest, ctx->attr->sbuf, len); - if (grub_file_progress_hook && file) - grub_file_progress_hook (0, 0, len, file); - } - -quit: - //ctx->comp.disk->read_hook = 0; - if (ctx->comp.cbuf) - grub_free (ctx->comp.cbuf); - return ret; -} - -GRUB_MOD_INIT (ntfscomp) -{ - grub_ntfscomp_func = ntfscomp; -} - -GRUB_MOD_FINI (ntfscomp) -{ - grub_ntfscomp_func = NULL; -} diff --git a/thirdparty/grub-2.04/grub-core/fs/odc.c b/thirdparty/grub-2.04/grub-core/fs/odc.c deleted file mode 100644 index 790000622..000000000 --- a/thirdparty/grub-2.04/grub-core/fs/odc.c +++ /dev/null @@ -1,61 +0,0 @@ -/* cpio.c - cpio and tar filesystem. */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2007,2008,2009,2013 Free Software Foundation, Inc. - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see . - */ - -#include - -#define ALIGN_CPIO(x) x - -#define MAGIC "070707" -struct head -{ - char magic[6]; - char dev[6]; - char ino[6]; - char mode[6]; - char uid[6]; - char gid[6]; - char nlink[6]; - char rdev[6]; - char mtime[11]; - char namesize[6]; - char filesize[11]; -} GRUB_PACKED; - -static inline unsigned long long -read_number (const char *str, grub_size_t size) -{ - unsigned long long ret = 0; - while (size-- && *str >= '0' && *str <= '7') - ret = (ret << 3) | (*str++ & 0xf); - return ret; -} - -#define FSNAME "odc" - -#include "cpio_common.c" - -GRUB_MOD_INIT (odc) -{ - grub_fs_register (&grub_cpio_fs); -} - -GRUB_MOD_FINI (odc) -{ - grub_fs_unregister (&grub_cpio_fs); -} diff --git a/thirdparty/grub-2.04/grub-core/fs/proc.c b/thirdparty/grub-2.04/grub-core/fs/proc.c deleted file mode 100644 index 5f516502d..000000000 --- a/thirdparty/grub-2.04/grub-core/fs/proc.c +++ /dev/null @@ -1,203 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2013 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -struct grub_procfs_entry *grub_procfs_entries; - -static int -grub_procdev_iterate (grub_disk_dev_iterate_hook_t hook, void *hook_data, - grub_disk_pull_t pull) -{ - if (pull != GRUB_DISK_PULL_NONE) - return 0; - - return hook ("proc", hook_data); -} - -static grub_err_t -grub_procdev_open (const char *name, grub_disk_t disk) -{ - if (grub_strcmp (name, "proc")) - return grub_error (GRUB_ERR_UNKNOWN_DEVICE, "not a procfs disk"); - - disk->total_sectors = 0; - disk->id = 0; - - disk->data = 0; - - return GRUB_ERR_NONE; -} - -static void -grub_procdev_close (grub_disk_t disk __attribute((unused))) -{ -} - -static grub_err_t -grub_procdev_read (grub_disk_t disk __attribute((unused)), - grub_disk_addr_t sector __attribute((unused)), - grub_size_t size __attribute((unused)), - char *buf __attribute((unused))) -{ - return GRUB_ERR_OUT_OF_RANGE; -} - -static grub_err_t -grub_procdev_write (grub_disk_t disk __attribute ((unused)), - grub_disk_addr_t sector __attribute ((unused)), - grub_size_t size __attribute ((unused)), - const char *buf __attribute ((unused))) -{ - return GRUB_ERR_OUT_OF_RANGE; -} - -struct grub_archelp_data -{ - struct grub_procfs_entry *entry, *next_entry; -}; - -static void -grub_procfs_rewind (struct grub_archelp_data *data) -{ - data->entry = NULL; - data->next_entry = grub_procfs_entries; -} - -static grub_err_t -grub_procfs_find_file (struct grub_archelp_data *data, char **name, - grub_int32_t *mtime, - grub_uint32_t *mode) -{ - data->entry = data->next_entry; - if (!data->entry) - { - *mode = GRUB_ARCHELP_ATTR_END; - return GRUB_ERR_NONE; - } - data->next_entry = data->entry->next; - *mode = GRUB_ARCHELP_ATTR_FILE | GRUB_ARCHELP_ATTR_NOTIME; - *name = grub_strdup (data->entry->name); - *mtime = 0; - if (!*name) - return grub_errno; - return GRUB_ERR_NONE; -} - -static struct grub_archelp_ops arcops = - { - .find_file = grub_procfs_find_file, - .rewind = grub_procfs_rewind - }; - -static grub_ssize_t -grub_procfs_read (grub_file_t file, char *buf, grub_size_t len) -{ - char *data = file->data; - - grub_memcpy (buf, data + file->offset, len); - - return len; -} - -static grub_err_t -grub_procfs_close (grub_file_t file) -{ - char *data; - - data = file->data; - grub_free (data); - - return GRUB_ERR_NONE; -} - -static grub_err_t -grub_procfs_dir (grub_device_t device, const char *path, - grub_fs_dir_hook_t hook, void *hook_data) -{ - struct grub_archelp_data data; - - /* Check if the disk is our dummy disk. */ - if (grub_strcmp (device->disk->name, "proc")) - return grub_error (GRUB_ERR_BAD_FS, "not a procfs"); - - grub_procfs_rewind (&data); - - return grub_archelp_dir (&data, &arcops, - path, hook, hook_data); -} - -static grub_err_t -grub_procfs_open (struct grub_file *file, const char *path) -{ - grub_err_t err; - struct grub_archelp_data data; - grub_size_t sz; - - grub_procfs_rewind (&data); - - err = grub_archelp_open (&data, &arcops, path); - if (err) - return err; - file->data = data.entry->get_contents (&sz); - if (!file->data) - return grub_errno; - file->size = sz; - return GRUB_ERR_NONE; -} - -static struct grub_disk_dev grub_procfs_dev = { - .name = "proc", - .id = GRUB_DISK_DEVICE_PROCFS_ID, - .disk_iterate = grub_procdev_iterate, - .disk_open = grub_procdev_open, - .disk_close = grub_procdev_close, - .disk_read = grub_procdev_read, - .disk_write = grub_procdev_write, - .next = 0 -}; - -static struct grub_fs grub_procfs_fs = - { - .name = "procfs", - .fs_dir = grub_procfs_dir, - .fs_open = grub_procfs_open, - .fs_read = grub_procfs_read, - .fs_close = grub_procfs_close, - .next = 0 - }; - -GRUB_MOD_INIT (procfs) -{ - grub_disk_dev_register (&grub_procfs_dev); - grub_fs_register (&grub_procfs_fs); -} - -GRUB_MOD_FINI (procfs) -{ - grub_disk_dev_unregister (&grub_procfs_dev); - grub_fs_unregister (&grub_procfs_fs); -} diff --git a/thirdparty/grub-2.04/grub-core/fs/reiserfs.c b/thirdparty/grub-2.04/grub-core/fs/reiserfs.c deleted file mode 100644 index af6a226a7..000000000 --- a/thirdparty/grub-2.04/grub-core/fs/reiserfs.c +++ /dev/null @@ -1,1427 +0,0 @@ -/* reiserfs.c - ReiserFS versions up to 3.6 */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2003,2004,2005,2008 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -/* - TODO: - implement journal handling (ram replay) - test tail packing & direct files - validate partition label position -*/ - -#if 0 -# define GRUB_REISERFS_DEBUG -# define GRUB_REISERFS_JOURNALING -# define GRUB_HEXDUMP -#endif - -#include -#include -#include -#include -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -#define MIN(a, b) \ - ({ typeof (a) _a = (a); \ - typeof (b) _b = (b); \ - _a < _b ? _a : _b; }) - -#define MAX(a, b) \ - ({ typeof (a) _a = (a); \ - typeof (b) _b = (b); \ - _a > _b ? _a : _b; }) - -#define REISERFS_SUPER_BLOCK_OFFSET 0x10000 -#define REISERFS_MAGIC_LEN 12 -#define REISERFS_MAGIC_STRING "ReIsEr" -#define REISERFS_MAGIC_DESC_BLOCK "ReIsErLB" -/* If the 3rd bit of an item state is set, then it's visible. */ -#define GRUB_REISERFS_VISIBLE_MASK ((grub_uint16_t) 0x04) - -#define S_IFLNK 0xA000 - -static grub_dl_t my_mod; - -#define assert(boolean) real_assert (boolean, GRUB_FILE, __LINE__) -static inline void -real_assert (int boolean, const char *file, const int line) -{ - if (! boolean) - grub_printf ("Assertion failed at %s:%d\n", file, line); -} - -enum grub_reiserfs_item_type - { - GRUB_REISERFS_STAT, - GRUB_REISERFS_DIRECTORY, - GRUB_REISERFS_DIRECT, - GRUB_REISERFS_INDIRECT, - /* Matches both _DIRECT and _INDIRECT when searching. */ - GRUB_REISERFS_ANY, - GRUB_REISERFS_UNKNOWN - }; - -struct grub_reiserfs_superblock -{ - grub_uint32_t block_count; - grub_uint32_t block_free_count; - grub_uint32_t root_block; - grub_uint32_t journal_block; - grub_uint32_t journal_device; - grub_uint32_t journal_original_size; - grub_uint32_t journal_max_transaction_size; - grub_uint32_t journal_block_count; - grub_uint32_t journal_max_batch; - grub_uint32_t journal_max_commit_age; - grub_uint32_t journal_max_transaction_age; - grub_uint16_t block_size; - grub_uint16_t oid_max_size; - grub_uint16_t oid_current_size; - grub_uint16_t state; - grub_uint8_t magic_string[REISERFS_MAGIC_LEN]; - grub_uint32_t function_hash_code; - grub_uint16_t tree_height; - grub_uint16_t bitmap_number; - grub_uint16_t version; - grub_uint16_t reserved; - grub_uint32_t inode_generation; - grub_uint8_t unused[4]; - grub_uint16_t uuid[8]; - char label[16]; -} GRUB_PACKED; - -struct grub_reiserfs_journal_header -{ - grub_uint32_t last_flush_uid; - grub_uint32_t unflushed_offset; - grub_uint32_t mount_id; -} GRUB_PACKED; - -struct grub_reiserfs_description_block -{ - grub_uint32_t id; - grub_uint32_t len; - grub_uint32_t mount_id; - grub_uint32_t real_blocks[0]; -} GRUB_PACKED; - -struct grub_reiserfs_commit_block -{ - grub_uint32_t id; - grub_uint32_t len; - grub_uint32_t real_blocks[0]; -} GRUB_PACKED; - -struct grub_reiserfs_stat_item_v1 -{ - grub_uint16_t mode; - grub_uint16_t hardlink_count; - grub_uint16_t uid; - grub_uint16_t gid; - grub_uint32_t size; - grub_uint32_t atime; - grub_uint32_t mtime; - grub_uint32_t ctime; - grub_uint32_t rdev; - grub_uint32_t first_direct_byte; -} GRUB_PACKED; - -struct grub_reiserfs_stat_item_v2 -{ - grub_uint16_t mode; - grub_uint16_t reserved; - grub_uint32_t hardlink_count; - grub_uint64_t size; - grub_uint32_t uid; - grub_uint32_t gid; - grub_uint32_t atime; - grub_uint32_t mtime; - grub_uint32_t ctime; - grub_uint32_t blocks; - grub_uint32_t first_direct_byte; -} GRUB_PACKED; - -struct grub_reiserfs_key -{ - grub_uint32_t directory_id; - grub_uint32_t object_id; - union - { - struct - { - grub_uint32_t offset; - grub_uint32_t type; - } GRUB_PACKED v1; - struct - { - grub_uint64_t offset_type; - } GRUB_PACKED v2; - } u; -} GRUB_PACKED; - -struct grub_reiserfs_item_header -{ - struct grub_reiserfs_key key; - union - { - grub_uint16_t free_space; - grub_uint16_t entry_count; - } GRUB_PACKED u; - grub_uint16_t item_size; - grub_uint16_t item_location; - grub_uint16_t version; -} GRUB_PACKED; - -struct grub_reiserfs_block_header -{ - grub_uint16_t level; - grub_uint16_t item_count; - grub_uint16_t free_space; - grub_uint16_t reserved; - struct grub_reiserfs_key block_right_delimiting_key; -} GRUB_PACKED; - -struct grub_reiserfs_disk_child -{ - grub_uint32_t block_number; - grub_uint16_t size; - grub_uint16_t reserved; -} GRUB_PACKED; - -struct grub_reiserfs_directory_header -{ - grub_uint32_t offset; - grub_uint32_t directory_id; - grub_uint32_t object_id; - grub_uint16_t location; - grub_uint16_t state; -} GRUB_PACKED; - -struct grub_fshelp_node -{ - struct grub_reiserfs_data *data; - grub_uint32_t block_number; /* 0 if node is not found. */ - grub_uint16_t block_position; - grub_uint64_t next_offset; - grub_int32_t mtime; - grub_off_t size; - enum grub_reiserfs_item_type type; /* To know how to read the header. */ - struct grub_reiserfs_item_header header; -}; - -/* Returned when opening a file. */ -struct grub_reiserfs_data -{ - struct grub_reiserfs_superblock superblock; - grub_disk_t disk; -}; - -static grub_ssize_t -grub_reiserfs_read_real (struct grub_fshelp_node *node, - grub_off_t off, char *buf, grub_size_t len, - grub_disk_read_hook_t read_hook, - void *read_hook_data); - -/* Internal-only functions. Not to be used outside of this file. */ - -/* Return the type of given v2 key. */ -static enum grub_reiserfs_item_type -grub_reiserfs_get_key_v2_type (const struct grub_reiserfs_key *key) -{ - switch (grub_le_to_cpu64 (key->u.v2.offset_type) >> 60) - { - case 0: - return GRUB_REISERFS_STAT; - case 15: - return GRUB_REISERFS_ANY; - case 3: - return GRUB_REISERFS_DIRECTORY; - case 2: - return GRUB_REISERFS_DIRECT; - case 1: - return GRUB_REISERFS_INDIRECT; - } - return GRUB_REISERFS_UNKNOWN; -} - -/* Return the type of given v1 key. */ -static enum grub_reiserfs_item_type -grub_reiserfs_get_key_v1_type (const struct grub_reiserfs_key *key) -{ - switch (grub_le_to_cpu32 (key->u.v1.type)) - { - case 0: - return GRUB_REISERFS_STAT; - case 555: - return GRUB_REISERFS_ANY; - case 500: - return GRUB_REISERFS_DIRECTORY; - case 0x20000000: - case 0xFFFFFFFF: - return GRUB_REISERFS_DIRECT; - case 0x10000000: - case 0xFFFFFFFE: - return GRUB_REISERFS_INDIRECT; - } - return GRUB_REISERFS_UNKNOWN; -} - -/* Return 1 if the given key is version 1 key, 2 otherwise. */ -static int -grub_reiserfs_get_key_version (const struct grub_reiserfs_key *key) -{ - return grub_reiserfs_get_key_v1_type (key) == GRUB_REISERFS_UNKNOWN ? 2 : 1; -} - -#ifdef GRUB_HEXDUMP -static void -grub_hexdump (char *buffer, grub_size_t len) -{ - grub_size_t a; - for (a = 0; a < len; a++) - { - if (! (a & 0x0F)) - grub_printf ("\n%08x ", a); - grub_printf ("%02x ", - ((unsigned int) ((unsigned char *) buffer)[a]) & 0xFF); - } - grub_printf ("\n"); -} -#endif - -#ifdef GRUB_REISERFS_DEBUG -static grub_uint64_t -grub_reiserfs_get_key_offset (const struct grub_reiserfs_key *key); - -static enum grub_reiserfs_item_type -grub_reiserfs_get_key_type (const struct grub_reiserfs_key *key); - -static void -grub_reiserfs_print_key (const struct grub_reiserfs_key *key) -{ - unsigned int a; - char *reiserfs_type_strings[] = { - "stat ", - "directory", - "direct ", - "indirect ", - "any ", - "unknown " - }; - - for (a = 0; a < sizeof (struct grub_reiserfs_key); a++) - grub_printf ("%02x ", ((unsigned int) ((unsigned char *) key)[a]) & 0xFF); - grub_printf ("parent id = 0x%08x, self id = 0x%08x, type = %s, offset = ", - grub_le_to_cpu32 (key->directory_id), - grub_le_to_cpu32 (key->object_id), - reiserfs_type_strings [grub_reiserfs_get_key_type (key)]); - if (grub_reiserfs_get_key_version (key) == 1) - grub_printf("%08x", (unsigned int) grub_reiserfs_get_key_offset (key)); - else - grub_printf("0x%07x%08x", - (unsigned) (grub_reiserfs_get_key_offset (key) >> 32), - (unsigned) (grub_reiserfs_get_key_offset (key) & 0xFFFFFFFF)); - grub_printf ("\n"); -} -#endif - -/* Return the offset of given key. */ -static grub_uint64_t -grub_reiserfs_get_key_offset (const struct grub_reiserfs_key *key) -{ - if (grub_reiserfs_get_key_version (key) == 1) - return grub_le_to_cpu32 (key->u.v1.offset); - else - return grub_le_to_cpu64 (key->u.v2.offset_type) & (~0ULL >> 4); -} - -/* Set the offset of given key. */ -static void -grub_reiserfs_set_key_offset (struct grub_reiserfs_key *key, - grub_uint64_t value) -{ - if (grub_reiserfs_get_key_version (key) == 1) - key->u.v1.offset = grub_cpu_to_le32 (value); - else - key->u.v2.offset_type \ - = ((key->u.v2.offset_type & grub_cpu_to_le64_compile_time (15ULL << 60)) - | grub_cpu_to_le64 (value & (~0ULL >> 4))); -} - -/* Return the type of given key. */ -static enum grub_reiserfs_item_type -grub_reiserfs_get_key_type (const struct grub_reiserfs_key *key) -{ - if (grub_reiserfs_get_key_version (key) == 1) - return grub_reiserfs_get_key_v1_type (key); - else - return grub_reiserfs_get_key_v2_type (key); -} - -/* Set the type of given key, with given version number. */ -static void -grub_reiserfs_set_key_type (struct grub_reiserfs_key *key, - enum grub_reiserfs_item_type grub_type, - int version) -{ - grub_uint32_t type; - - switch (grub_type) - { - case GRUB_REISERFS_STAT: - type = 0; - break; - case GRUB_REISERFS_ANY: - type = (version == 1) ? 555 : 15; - break; - case GRUB_REISERFS_DIRECTORY: - type = (version == 1) ? 500 : 3; - break; - case GRUB_REISERFS_DIRECT: - type = (version == 1) ? 0xFFFFFFFF : 2; - break; - case GRUB_REISERFS_INDIRECT: - type = (version == 1) ? 0xFFFFFFFE : 1; - break; - default: - return; - } - - if (version == 1) - key->u.v1.type = grub_cpu_to_le32 (type); - else - key->u.v2.offset_type - = ((key->u.v2.offset_type & grub_cpu_to_le64_compile_time (~0ULL >> 4)) - | grub_cpu_to_le64 ((grub_uint64_t) type << 60)); - - assert (grub_reiserfs_get_key_type (key) == grub_type); -} - -/* -1 if key 1 if lower than key 2. - 0 if key 1 is equal to key 2. - 1 if key 1 is higher than key 2. */ -static int -grub_reiserfs_compare_keys (const struct grub_reiserfs_key *key1, - const struct grub_reiserfs_key *key2) -{ - grub_uint64_t offset1, offset2; - enum grub_reiserfs_item_type type1, type2; - grub_uint32_t id1, id2; - - if (! key1 || ! key2) - return -2; - - id1 = grub_le_to_cpu32 (key1->directory_id); - id2 = grub_le_to_cpu32 (key2->directory_id); - if (id1 < id2) - return -1; - if (id1 > id2) - return 1; - - id1 = grub_le_to_cpu32 (key1->object_id); - id2 = grub_le_to_cpu32 (key2->object_id); - if (id1 < id2) - return -1; - if (id1 > id2) - return 1; - - offset1 = grub_reiserfs_get_key_offset (key1); - offset2 = grub_reiserfs_get_key_offset (key2); - if (offset1 < offset2) - return -1; - if (offset1 > offset2) - return 1; - - type1 = grub_reiserfs_get_key_type (key1); - type2 = grub_reiserfs_get_key_type (key2); - if ((type1 == GRUB_REISERFS_ANY - && (type2 == GRUB_REISERFS_DIRECT - || type2 == GRUB_REISERFS_INDIRECT)) - || (type2 == GRUB_REISERFS_ANY - && (type1 == GRUB_REISERFS_DIRECT - || type1 == GRUB_REISERFS_INDIRECT))) - return 0; - if (type1 < type2) - return -1; - if (type1 > type2) - return 1; - - return 0; -} - -/* Find the item identified by KEY in mounted filesystem DATA, and fill ITEM - accordingly to what was found. */ -static grub_err_t -grub_reiserfs_get_item (struct grub_reiserfs_data *data, - const struct grub_reiserfs_key *key, - struct grub_fshelp_node *item, int exact) -{ - grub_uint32_t block_number; - struct grub_reiserfs_block_header *block_header = 0; - struct grub_reiserfs_key *block_key = 0; - grub_uint16_t block_size, item_count, current_level; - grub_uint16_t i; - grub_uint16_t previous_level = ~0; - struct grub_reiserfs_item_header *item_headers = 0; - -#if 0 - if (! data) - { - grub_error (GRUB_ERR_BAD_FS, "data is NULL"); - goto fail; - } - - if (! key) - { - grub_error (GRUB_ERR_BAD_FS, "key is NULL"); - goto fail; - } - - if (! item) - { - grub_error (GRUB_ERR_BAD_FS, "item is NULL"); - goto fail; - } -#endif - - block_size = grub_le_to_cpu16 (data->superblock.block_size); - block_number = grub_le_to_cpu32 (data->superblock.root_block); -#ifdef GRUB_REISERFS_DEBUG - grub_printf("Searching for "); - grub_reiserfs_print_key (key); -#endif - block_header = grub_malloc (block_size); - if (! block_header) - goto fail; - - item->next_offset = 0; - do - { - grub_disk_read (data->disk, - block_number * (block_size >> GRUB_DISK_SECTOR_BITS), - (((grub_off_t) block_number * block_size) - & (GRUB_DISK_SECTOR_SIZE - 1)), - block_size, block_header); - if (grub_errno) - goto fail; - current_level = grub_le_to_cpu16 (block_header->level); - grub_dprintf ("reiserfs_tree", " at level %d\n", current_level); - if (current_level >= previous_level) - { - grub_dprintf ("reiserfs_tree", "level loop detected, aborting\n"); - grub_error (GRUB_ERR_BAD_FS, "level loop"); - goto fail; - } - previous_level = current_level; - item_count = grub_le_to_cpu16 (block_header->item_count); - grub_dprintf ("reiserfs_tree", " number of contained items : %d\n", - item_count); - if (current_level > 1) - { - /* Internal node. Navigate to the child that should contain - the searched key. */ - struct grub_reiserfs_key *keys - = (struct grub_reiserfs_key *) (block_header + 1); - struct grub_reiserfs_disk_child *children - = ((struct grub_reiserfs_disk_child *) - (keys + item_count)); - - for (i = 0; - i < item_count - && grub_reiserfs_compare_keys (key, &(keys[i])) >= 0; - i++) - { -#ifdef GRUB_REISERFS_DEBUG - grub_printf("i %03d/%03d ", i + 1, item_count + 1); - grub_reiserfs_print_key (&(keys[i])); -#endif - } - block_number = grub_le_to_cpu32 (children[i].block_number); - if ((i < item_count) && (key->directory_id == keys[i].directory_id) - && (key->object_id == keys[i].object_id)) - item->next_offset = grub_reiserfs_get_key_offset(&(keys[i])); -#ifdef GRUB_REISERFS_DEBUG - if (i == item_count - || grub_reiserfs_compare_keys (key, &(keys[i])) == 0) - grub_printf(">"); - else - grub_printf("<"); - if (i < item_count) - { - grub_printf (" %03d/%03d ", i + 1, item_count + 1); - grub_reiserfs_print_key (&(keys[i])); - if (i + 1 < item_count) - { - grub_printf ("+ %03d/%03d ", i + 2, item_count); - grub_reiserfs_print_key (&(keys[i + 1])); - } - } - else - grub_printf ("Accessing rightmost child at block %d.\n", - block_number); -#endif - } - else - { - /* Leaf node. Check that the key is actually present. */ - item_headers - = (struct grub_reiserfs_item_header *) (block_header + 1); - for (i = 0; - i < item_count; - i++) - { - int val; - val = grub_reiserfs_compare_keys (key, &(item_headers[i].key)); - if (val == 0) - { - block_key = &(item_headers[i].key); - break; - } - if (val < 0 && exact) - break; - if (val < 0) - { - if (i == 0) - { - grub_error (GRUB_ERR_READ_ERROR, "unexpected btree node"); - goto fail; - } - i--; - block_key = &(item_headers[i].key); - break; - } - } - if (!exact && i == item_count) - { - if (i == 0) - { - grub_error (GRUB_ERR_READ_ERROR, "unexpected btree node"); - goto fail; - } - i--; - block_key = &(item_headers[i].key); - } - } - } - while (current_level > 1); - - item->data = data; - - if (!block_key) - { - item->block_number = 0; - item->block_position = 0; - item->type = GRUB_REISERFS_UNKNOWN; -#ifdef GRUB_REISERFS_DEBUG - grub_printf("Not found.\n"); -#endif - } - else - { - item->block_number = block_number; - item->block_position = i; - item->type = grub_reiserfs_get_key_type (block_key); - grub_memcpy (&(item->header), &(item_headers[i]), - sizeof (struct grub_reiserfs_item_header)); -#ifdef GRUB_REISERFS_DEBUG - grub_printf ("F %03d/%03d ", i + 1, item_count); - grub_reiserfs_print_key (block_key); -#endif - } - - assert (grub_errno == GRUB_ERR_NONE); - grub_free (block_header); - return GRUB_ERR_NONE; - - fail: - assert (grub_errno != GRUB_ERR_NONE); - grub_free (block_header); - assert (grub_errno != GRUB_ERR_NONE); - return grub_errno; -} - -/* Return the path of the file which is pointed at by symlink NODE. */ -static char * -grub_reiserfs_read_symlink (grub_fshelp_node_t node) -{ - char *symlink_buffer = 0; - grub_size_t len = node->size; - grub_ssize_t ret; - - symlink_buffer = grub_malloc (len + 1); - if (! symlink_buffer) - return 0; - - ret = grub_reiserfs_read_real (node, 0, symlink_buffer, len, 0, 0); - if (ret < 0) - { - grub_free (symlink_buffer); - return 0; - } - - symlink_buffer[ret] = 0; - return symlink_buffer; -} - -/* Fill the mounted filesystem structure and return it. */ -static struct grub_reiserfs_data * -grub_reiserfs_mount (grub_disk_t disk) -{ - struct grub_reiserfs_data *data = 0; - data = grub_malloc (sizeof (*data)); - if (! data) - goto fail; - grub_disk_read (disk, REISERFS_SUPER_BLOCK_OFFSET / GRUB_DISK_SECTOR_SIZE, - 0, sizeof (data->superblock), &(data->superblock)); - if (grub_errno) - goto fail; - if (grub_memcmp (data->superblock.magic_string, - REISERFS_MAGIC_STRING, sizeof (REISERFS_MAGIC_STRING) - 1)) - { - grub_error (GRUB_ERR_BAD_FS, "not a ReiserFS filesystem"); - goto fail; - } - data->disk = disk; - return data; - - fail: - /* Disk is too small to contain a ReiserFS. */ - if (grub_errno == GRUB_ERR_OUT_OF_RANGE) - grub_error (GRUB_ERR_BAD_FS, "not a ReiserFS filesystem"); - - grub_free (data); - return 0; -} - -/* Call HOOK for each file in directory ITEM. */ -static int -grub_reiserfs_iterate_dir (grub_fshelp_node_t item, - grub_fshelp_iterate_dir_hook_t hook, - void *hook_data) -{ - struct grub_reiserfs_data *data = item->data; - struct grub_reiserfs_block_header *block_header = 0; - grub_uint16_t block_size, block_position; - grub_uint32_t block_number; - grub_uint64_t next_offset = item->next_offset; - int ret = 0; - - if (item->type != GRUB_REISERFS_DIRECTORY) - { - grub_error (GRUB_ERR_BAD_FILE_TYPE, N_("not a directory")); - goto fail; - } - block_size = grub_le_to_cpu16 (data->superblock.block_size); - block_header = grub_malloc (block_size + 1); - if (! block_header) - goto fail; - block_number = item->block_number; - block_position = item->block_position; - grub_dprintf ("reiserfs", "Iterating directory...\n"); - do - { - struct grub_reiserfs_directory_header *directory_headers; - struct grub_fshelp_node directory_item; - grub_uint16_t entry_count, entry_number; - struct grub_reiserfs_item_header *item_headers; - - grub_disk_read (data->disk, - block_number * (block_size >> GRUB_DISK_SECTOR_BITS), - (((grub_off_t) block_number * block_size) - & (GRUB_DISK_SECTOR_SIZE - 1)), - block_size, (char *) block_header); - if (grub_errno) - goto fail; - - ((char *) block_header)[block_size] = 0; - -#if 0 - if (grub_le_to_cpu16 (block_header->level) != 1) - { - grub_error (GRUB_ERR_BAD_FS, - "reiserfs: block %d is not a leaf block", - block_number); - goto fail; - } -#endif - - item_headers = (struct grub_reiserfs_item_header *) (block_header + 1); - directory_headers - = ((struct grub_reiserfs_directory_header *) - ((char *) block_header - + grub_le_to_cpu16 (item_headers[block_position].item_location))); - entry_count - = grub_le_to_cpu16 (item_headers[block_position].u.entry_count); - for (entry_number = 0; entry_number < entry_count; entry_number++) - { - struct grub_reiserfs_directory_header *directory_header - = &directory_headers[entry_number]; - grub_uint16_t entry_state - = grub_le_to_cpu16 (directory_header->state); - grub_fshelp_node_t entry_item; - struct grub_reiserfs_key entry_key; - enum grub_fshelp_filetype entry_type; - char *entry_name; - char *entry_name_end = 0; - char c; - - if (!(entry_state & GRUB_REISERFS_VISIBLE_MASK)) - continue; - - entry_name = (((char *) directory_headers) - + grub_le_to_cpu16 (directory_header->location)); - if (entry_number == 0) - { - entry_name_end = (char *) block_header - + grub_le_to_cpu16 (item_headers[block_position].item_location) - + grub_le_to_cpu16 (item_headers[block_position].item_size); - } - else - { - entry_name_end = (((char *) directory_headers) - + grub_le_to_cpu16 (directory_headers[entry_number - 1].location)); - } - if (entry_name_end < entry_name || entry_name_end > (char *) block_header + block_size) - { - entry_name_end = (char *) block_header + block_size; - } - - entry_key.directory_id = directory_header->directory_id; - entry_key.object_id = directory_header->object_id; - entry_key.u.v2.offset_type = 0; - grub_reiserfs_set_key_type (&entry_key, GRUB_REISERFS_DIRECTORY, - 2); - grub_reiserfs_set_key_offset (&entry_key, 1); - - entry_item = grub_malloc (sizeof (*entry_item)); - if (! entry_item) - goto fail; - - if (grub_reiserfs_get_item (data, &entry_key, entry_item, 1) - != GRUB_ERR_NONE) - { - grub_free (entry_item); - goto fail; - } - - if (entry_item->type == GRUB_REISERFS_DIRECTORY) - entry_type = GRUB_FSHELP_DIR; - else - { - grub_uint32_t entry_block_number; - /* Order is very important here. - First set the offset to 0 using current key version. - Then change the key type, which affects key version - detection. */ - grub_reiserfs_set_key_offset (&entry_key, 0); - grub_reiserfs_set_key_type (&entry_key, GRUB_REISERFS_STAT, - 2); - if (grub_reiserfs_get_item (data, &entry_key, entry_item, 1) - != GRUB_ERR_NONE) - { - grub_free (entry_item); - goto fail; - } - - if (entry_item->block_number != 0) - { - grub_uint16_t entry_version; - entry_version - = grub_le_to_cpu16 (entry_item->header.version); - entry_block_number = entry_item->block_number; -#if 0 - grub_dprintf ("reiserfs", - "version %04x block %08x (%08x) position %08x\n", - entry_version, entry_block_number, - ((grub_disk_addr_t) entry_block_number * block_size) / GRUB_DISK_SECTOR_SIZE, - grub_le_to_cpu16 (entry_item->header.item_location)); -#endif - if (entry_version == 0) /* Version 1 stat item. */ - { - struct grub_reiserfs_stat_item_v1 entry_v1_stat; - grub_disk_read (data->disk, - entry_block_number * (block_size >> GRUB_DISK_SECTOR_BITS), - grub_le_to_cpu16 (entry_item->header.item_location), - sizeof (entry_v1_stat), - (char *) &entry_v1_stat); - if (grub_errno) - goto fail; -#if 0 - grub_dprintf ("reiserfs", - "%04x %04x %04x %04x %08x %08x | %08x %08x %08x %08x\n", - grub_le_to_cpu16 (entry_v1_stat.mode), - grub_le_to_cpu16 (entry_v1_stat.hardlink_count), - grub_le_to_cpu16 (entry_v1_stat.uid), - grub_le_to_cpu16 (entry_v1_stat.gid), - grub_le_to_cpu32 (entry_v1_stat.size), - grub_le_to_cpu32 (entry_v1_stat.atime), - grub_le_to_cpu32 (entry_v1_stat.mtime), - grub_le_to_cpu32 (entry_v1_stat.ctime), - grub_le_to_cpu32 (entry_v1_stat.rdev), - grub_le_to_cpu32 (entry_v1_stat.first_direct_byte)); - grub_dprintf ("reiserfs", - "%04x %04x %04x %04x %08x %08x | %08x %08x %08x %08x\n", - entry_v1_stat.mode, - entry_v1_stat.hardlink_count, - entry_v1_stat.uid, - entry_v1_stat.gid, - entry_v1_stat.size, - entry_v1_stat.atime, - entry_v1_stat.mtime, - entry_v1_stat.ctime, - entry_v1_stat.rdev, - entry_v1_stat.first_direct_byte); -#endif - entry_item->mtime = grub_le_to_cpu32 (entry_v1_stat.mtime); - if ((grub_le_to_cpu16 (entry_v1_stat.mode) & S_IFLNK) - == S_IFLNK) - entry_type = GRUB_FSHELP_SYMLINK; - else - entry_type = GRUB_FSHELP_REG; - entry_item->size = (grub_off_t) grub_le_to_cpu32 (entry_v1_stat.size); - } - else - { - struct grub_reiserfs_stat_item_v2 entry_v2_stat; - grub_disk_read (data->disk, - entry_block_number * (block_size >> GRUB_DISK_SECTOR_BITS), - grub_le_to_cpu16 (entry_item->header.item_location), - sizeof (entry_v2_stat), - (char *) &entry_v2_stat); - if (grub_errno) - goto fail; -#if 0 - grub_dprintf ("reiserfs", - "%04x %04x %08x %08x%08x | %08x %08x %08x %08x | %08x %08x %08x\n", - grub_le_to_cpu16 (entry_v2_stat.mode), - grub_le_to_cpu16 (entry_v2_stat.reserved), - grub_le_to_cpu32 (entry_v2_stat.hardlink_count), - (unsigned int) (grub_le_to_cpu64 (entry_v2_stat.size) >> 32), - (unsigned int) (grub_le_to_cpu64 (entry_v2_stat.size) && 0xFFFFFFFF), - grub_le_to_cpu32 (entry_v2_stat.uid), - grub_le_to_cpu32 (entry_v2_stat.gid), - grub_le_to_cpu32 (entry_v2_stat.atime), - grub_le_to_cpu32 (entry_v2_stat.mtime), - grub_le_to_cpu32 (entry_v2_stat.ctime), - grub_le_to_cpu32 (entry_v2_stat.blocks), - grub_le_to_cpu32 (entry_v2_stat.first_direct_byte)); - grub_dprintf ("reiserfs", - "%04x %04x %08x %08x%08x | %08x %08x %08x %08x | %08x %08x %08x\n", - entry_v2_stat.mode, - entry_v2_stat.reserved, - entry_v2_stat.hardlink_count, - (unsigned int) (entry_v2_stat.size >> 32), - (unsigned int) (entry_v2_stat.size && 0xFFFFFFFF), - entry_v2_stat.uid, - entry_v2_stat.gid, - entry_v2_stat.atime, - entry_v2_stat.mtime, - entry_v2_stat.ctime, - entry_v2_stat.blocks, - entry_v2_stat.first_direct_byte); -#endif - entry_item->mtime = grub_le_to_cpu32 (entry_v2_stat.mtime); - entry_item->size = (grub_off_t) grub_le_to_cpu64 (entry_v2_stat.size); - if ((grub_le_to_cpu16 (entry_v2_stat.mode) & S_IFLNK) - == S_IFLNK) - entry_type = GRUB_FSHELP_SYMLINK; - else - entry_type = GRUB_FSHELP_REG; - } - } - else - { - /* Pseudo file ".." never has stat block. */ - if (entry_name_end == entry_name + 2 && grub_memcmp (entry_name, "..", 2) != 0) - grub_dprintf ("reiserfs", - "Warning : %s has no stat block !\n", - entry_name); - grub_free (entry_item); - goto next; - } - } - - c = *entry_name_end; - *entry_name_end = 0; - if (hook (entry_name, entry_type, entry_item, hook_data)) - { - *entry_name_end = c; - grub_dprintf ("reiserfs", "Found : %s, type=%d\n", - entry_name, entry_type); - ret = 1; - goto found; - } - *entry_name_end = c; - - next: - ; - } - - if (next_offset == 0) - break; - - grub_reiserfs_set_key_offset (&(item_headers[block_position].key), - next_offset); - if (grub_reiserfs_get_item (data, &(item_headers[block_position].key), - &directory_item, 1) != GRUB_ERR_NONE) - goto fail; - block_number = directory_item.block_number; - block_position = directory_item.block_position; - next_offset = directory_item.next_offset; - } - while (block_number); - - found: - assert (grub_errno == GRUB_ERR_NONE); - grub_free (block_header); - return ret; - fail: - assert (grub_errno != GRUB_ERR_NONE); - grub_free (block_header); - return 0; -} - -/****************************************************************************/ -/* grub api functions */ -/****************************************************************************/ - -/* Open a file named NAME and initialize FILE. */ -static grub_err_t -grub_reiserfs_open (struct grub_file *file, const char *name) -{ - struct grub_reiserfs_data *data = 0; - struct grub_fshelp_node root, *found = 0; - struct grub_reiserfs_key key; - - grub_dl_ref (my_mod); - data = grub_reiserfs_mount (file->device->disk); - if (! data) - goto fail; - key.directory_id = grub_cpu_to_le32_compile_time (1); - key.object_id = grub_cpu_to_le32_compile_time (2); - key.u.v2.offset_type = 0; - grub_reiserfs_set_key_type (&key, GRUB_REISERFS_DIRECTORY, 2); - grub_reiserfs_set_key_offset (&key, 1); - if (grub_reiserfs_get_item (data, &key, &root, 1) != GRUB_ERR_NONE) - goto fail; - if (root.block_number == 0) - { - grub_error (GRUB_ERR_BAD_FS, "unable to find root item"); - goto fail; /* Should never happen since checked at mount. */ - } - grub_fshelp_find_file (name, &root, &found, - grub_reiserfs_iterate_dir, - grub_reiserfs_read_symlink, GRUB_FSHELP_REG); - if (grub_errno) - goto fail; - file->size = found->size; - - grub_dprintf ("reiserfs", "file size : %d (%08x%08x)\n", - (unsigned int) file->size, - (unsigned int) (file->size >> 32), (unsigned int) file->size); - file->offset = 0; - file->data = found; - return GRUB_ERR_NONE; - - fail: - assert (grub_errno != GRUB_ERR_NONE); - if (found != &root) - grub_free (found); - grub_free (data); - grub_dl_unref (my_mod); - return grub_errno; -} - -static grub_ssize_t -grub_reiserfs_read_real (struct grub_fshelp_node *node, - grub_off_t off, char *buf, grub_size_t len, - grub_disk_read_hook_t read_hook, void *read_hook_data) -{ - unsigned int indirect_block, indirect_block_count; - struct grub_reiserfs_key key; - struct grub_reiserfs_data *data = node->data; - struct grub_fshelp_node found; - grub_uint16_t block_size = grub_le_to_cpu16 (data->superblock.block_size); - grub_uint16_t item_size; - grub_uint32_t *indirect_block_ptr = 0; - grub_uint64_t current_key_offset = 1; - grub_off_t initial_position, current_position, final_position, length; - grub_disk_addr_t block; - grub_off_t offset; - - key.directory_id = node->header.key.directory_id; - key.object_id = node->header.key.object_id; - key.u.v2.offset_type = 0; - grub_reiserfs_set_key_type (&key, GRUB_REISERFS_ANY, 2); - initial_position = off; - current_position = 0; - final_position = MIN (len + initial_position, node->size); - grub_dprintf ("reiserfs", - "Reading from %lld to %lld (%lld instead of requested %ld)\n", - (unsigned long long) initial_position, - (unsigned long long) final_position, - (unsigned long long) (final_position - initial_position), - (unsigned long) len); - - grub_reiserfs_set_key_offset (&key, initial_position + 1); - - if (grub_reiserfs_get_item (data, &key, &found, 0) != GRUB_ERR_NONE) - goto fail; - - if (found.block_number == 0) - { - grub_error (GRUB_ERR_READ_ERROR, "offset %lld not found", - (unsigned long long) initial_position); - goto fail; - } - - current_key_offset = grub_reiserfs_get_key_offset (&found.header.key); - current_position = current_key_offset - 1; - - while (current_position < final_position) - { - grub_reiserfs_set_key_offset (&key, current_key_offset); - - if (grub_reiserfs_get_item (data, &key, &found, 1) != GRUB_ERR_NONE) - goto fail; - if (found.block_number == 0) - goto fail; - item_size = grub_le_to_cpu16 (found.header.item_size); - switch (found.type) - { - case GRUB_REISERFS_DIRECT: - block = ((grub_disk_addr_t) found.block_number) * (block_size >> GRUB_DISK_SECTOR_BITS); - grub_dprintf ("reiserfs_blocktype", "D: %u\n", (unsigned) block); - if (initial_position < current_position + item_size) - { - offset = MAX ((signed) (initial_position - current_position), 0); - length = (MIN (item_size, final_position - current_position) - - offset); - grub_dprintf ("reiserfs", - "Reading direct block %u from %u to %u...\n", - (unsigned) block, (unsigned) offset, - (unsigned) (offset + length)); - found.data->disk->read_hook = read_hook; - found.data->disk->read_hook_data = read_hook_data; - grub_disk_read (found.data->disk, - block, - offset - + grub_le_to_cpu16 (found.header.item_location), - length, buf); - found.data->disk->read_hook = 0; - if (grub_errno) - goto fail; - buf += length; - current_position += offset + length; - } - else - current_position += item_size; - break; - case GRUB_REISERFS_INDIRECT: - indirect_block_count = item_size / sizeof (*indirect_block_ptr); - indirect_block_ptr = grub_malloc (item_size); - if (! indirect_block_ptr) - goto fail; - grub_disk_read (found.data->disk, - found.block_number * (block_size >> GRUB_DISK_SECTOR_BITS), - grub_le_to_cpu16 (found.header.item_location), - item_size, indirect_block_ptr); - if (grub_errno) - goto fail; - found.data->disk->read_hook = read_hook; - found.data->disk->read_hook_data = read_hook_data; - for (indirect_block = 0; - indirect_block < indirect_block_count - && current_position < final_position; - indirect_block++) - { - block = grub_le_to_cpu32 (indirect_block_ptr[indirect_block]) * - (block_size >> GRUB_DISK_SECTOR_BITS); - grub_dprintf ("reiserfs_blocktype", "I: %u\n", (unsigned) block); - if (current_position + block_size >= initial_position) - { - offset = MAX ((signed) (initial_position - current_position), - 0); - length = (MIN (block_size, final_position - current_position) - - offset); - grub_dprintf ("reiserfs", - "Reading indirect block %u from %u to %u...\n", - (unsigned) block, (unsigned) offset, - (unsigned) (offset + length)); -#if 0 - grub_dprintf ("reiserfs", - "\nib=%04d/%04d, ip=%d, cp=%d, fp=%d, off=%d, l=%d, tl=%d\n", - indirect_block + 1, indirect_block_count, - initial_position, current_position, - final_position, offset, length, len); -#endif - grub_disk_read (found.data->disk, block, offset, length, buf); - if (grub_errno) - goto fail; - buf += length; - current_position += offset + length; - } - else - current_position += block_size; - } - found.data->disk->read_hook = 0; - grub_free (indirect_block_ptr); - indirect_block_ptr = 0; - break; - default: - goto fail; - } - current_key_offset = current_position + 1; - } - - grub_dprintf ("reiserfs", - "Have successfully read %lld bytes (%ld requested)\n", - (unsigned long long) (current_position - initial_position), - (unsigned long) len); - return current_position - initial_position; - -#if 0 - switch (found.type) - { - case GRUB_REISERFS_DIRECT: - read_length = MIN (len, item_size - file->offset); - grub_disk_read (found.data->disk, - (found.block_number * block_size) / GRUB_DISK_SECTOR_SIZE, - grub_le_to_cpu16 (found.header.item_location) + file->offset, - read_length, buf); - if (grub_errno) - goto fail; - break; - case GRUB_REISERFS_INDIRECT: - indirect_block_count = item_size / sizeof (*indirect_block_ptr); - indirect_block_ptr = grub_malloc (item_size); - if (!indirect_block_ptr) - goto fail; - grub_disk_read (found.data->disk, - (found.block_number * block_size) / GRUB_DISK_SECTOR_SIZE, - grub_le_to_cpu16 (found.header.item_location), - item_size, (char *) indirect_block_ptr); - if (grub_errno) - goto fail; - len = MIN (len, file->size - file->offset); - for (indirect_block = file->offset / block_size; - indirect_block < indirect_block_count && read_length < len; - indirect_block++) - { - read = MIN (block_size, len - read_length); - grub_disk_read (found.data->disk, - (grub_le_to_cpu32 (indirect_block_ptr[indirect_block]) * block_size) / GRUB_DISK_SECTOR_SIZE, - file->offset % block_size, read, - ((void *) buf) + read_length); - if (grub_errno) - goto fail; - read_length += read; - } - grub_free (indirect_block_ptr); - break; - default: - goto fail; - } - - return read_length; -#endif - - fail: - grub_free (indirect_block_ptr); - return -1; -} - -static grub_ssize_t -grub_reiserfs_read (grub_file_t file, char *buf, grub_size_t len) -{ - return grub_reiserfs_read_real (file->data, file->offset, buf, len, - file->read_hook, file->read_hook_data); -} - -/* Close the file FILE. */ -static grub_err_t -grub_reiserfs_close (grub_file_t file) -{ - struct grub_fshelp_node *node = file->data; - struct grub_reiserfs_data *data = node->data; - - grub_free (data); - grub_free (node); - grub_dl_unref (my_mod); - return GRUB_ERR_NONE; -} - -/* Context for grub_reiserfs_dir. */ -struct grub_reiserfs_dir_ctx -{ - grub_fs_dir_hook_t hook; - void *hook_data; -}; - -/* Helper for grub_reiserfs_dir. */ -static int -grub_reiserfs_dir_iter (const char *filename, - enum grub_fshelp_filetype filetype, - grub_fshelp_node_t node, void *data) -{ - struct grub_reiserfs_dir_ctx *ctx = data; - struct grub_dirhook_info info; - - grub_memset (&info, 0, sizeof (info)); - info.dir = ((filetype & GRUB_FSHELP_TYPE_MASK) == GRUB_FSHELP_DIR); - info.mtimeset = 1; - info.mtime = node->mtime; - grub_free (node); - return ctx->hook (filename, &info, ctx->hook_data); -} - -/* Call HOOK with each file under DIR. */ -static grub_err_t -grub_reiserfs_dir (grub_device_t device, const char *path, - grub_fs_dir_hook_t hook, void *hook_data) -{ - struct grub_reiserfs_dir_ctx ctx = { hook, hook_data }; - struct grub_reiserfs_data *data = 0; - struct grub_fshelp_node root, *found; - struct grub_reiserfs_key root_key; - - grub_dl_ref (my_mod); - data = grub_reiserfs_mount (device->disk); - if (! data) - goto fail; - root_key.directory_id = grub_cpu_to_le32_compile_time (1); - root_key.object_id = grub_cpu_to_le32_compile_time (2); - root_key.u.v2.offset_type = 0; - grub_reiserfs_set_key_type (&root_key, GRUB_REISERFS_DIRECTORY, 2); - grub_reiserfs_set_key_offset (&root_key, 1); - if (grub_reiserfs_get_item (data, &root_key, &root, 1) != GRUB_ERR_NONE) - goto fail; - if (root.block_number == 0) - { - grub_error(GRUB_ERR_BAD_FS, "root not found"); - goto fail; - } - grub_fshelp_find_file (path, &root, &found, grub_reiserfs_iterate_dir, - grub_reiserfs_read_symlink, GRUB_FSHELP_DIR); - if (grub_errno) - goto fail; - grub_reiserfs_iterate_dir (found, grub_reiserfs_dir_iter, &ctx); - grub_free (data); - grub_dl_unref (my_mod); - return GRUB_ERR_NONE; - - fail: - grub_free (data); - grub_dl_unref (my_mod); - return grub_errno; -} - -/* Return the label of the device DEVICE in LABEL. The label is - returned in a grub_malloc'ed buffer and should be freed by the - caller. */ -static grub_err_t -grub_reiserfs_label (grub_device_t device, char **label) -{ - struct grub_reiserfs_data *data; - grub_disk_t disk = device->disk; - - grub_dl_ref (my_mod); - - data = grub_reiserfs_mount (disk); - if (data) - { - *label = grub_strndup (data->superblock.label, - sizeof (data->superblock.label)); - } - else - *label = NULL; - - grub_dl_unref (my_mod); - - grub_free (data); - - return grub_errno; -} - -static grub_err_t -grub_reiserfs_uuid (grub_device_t device, char **uuid) -{ - struct grub_reiserfs_data *data; - grub_disk_t disk = device->disk; - - grub_dl_ref (my_mod); - - *uuid = NULL; - data = grub_reiserfs_mount (disk); - if (data) - { - unsigned i; - for (i = 0; i < ARRAY_SIZE (data->superblock.uuid); i++) - if (data->superblock.uuid[i]) - break; - if (i < ARRAY_SIZE (data->superblock.uuid)) - *uuid = grub_xasprintf ("%04x%04x-%04x-%04x-%04x-%04x%04x%04x", - grub_be_to_cpu16 (data->superblock.uuid[0]), - grub_be_to_cpu16 (data->superblock.uuid[1]), - grub_be_to_cpu16 (data->superblock.uuid[2]), - grub_be_to_cpu16 (data->superblock.uuid[3]), - grub_be_to_cpu16 (data->superblock.uuid[4]), - grub_be_to_cpu16 (data->superblock.uuid[5]), - grub_be_to_cpu16 (data->superblock.uuid[6]), - grub_be_to_cpu16 (data->superblock.uuid[7])); - } - - grub_dl_unref (my_mod); - - grub_free (data); - - return grub_errno; -} - -static struct grub_fs grub_reiserfs_fs = - { - .name = "reiserfs", - .fs_dir = grub_reiserfs_dir, - .fs_open = grub_reiserfs_open, - .fs_read = grub_reiserfs_read, - .fs_close = grub_reiserfs_close, - .fs_label = grub_reiserfs_label, - .fs_uuid = grub_reiserfs_uuid, -#ifdef GRUB_UTIL - .reserved_first_sector = 1, - .blocklist_install = 1, -#endif - .next = 0 - }; - -GRUB_MOD_INIT(reiserfs) -{ - grub_fs_register (&grub_reiserfs_fs); - my_mod = mod; -} - -GRUB_MOD_FINI(reiserfs) -{ - grub_fs_unregister (&grub_reiserfs_fs); -} diff --git a/thirdparty/grub-2.04/grub-core/fs/romfs.c b/thirdparty/grub-2.04/grub-core/fs/romfs.c deleted file mode 100644 index d97b8fbb8..000000000 --- a/thirdparty/grub-2.04/grub-core/fs/romfs.c +++ /dev/null @@ -1,484 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2010 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -struct grub_romfs_superblock -{ - char magic[8]; -#define GRUB_ROMFS_MAGIC "-rom1fs-" - grub_uint32_t total_size; - grub_uint32_t chksum; - char label[0]; -}; - -struct grub_romfs_file_header -{ - grub_uint32_t next_file; - grub_uint32_t spec; - grub_uint32_t size; - grub_uint32_t chksum; - char name[0]; -}; - -struct grub_romfs_data -{ - grub_disk_addr_t first_file; - grub_disk_t disk; -}; - -struct grub_fshelp_node -{ - grub_disk_addr_t addr; - struct grub_romfs_data *data; - grub_disk_addr_t data_addr; - /* Not filled for root. */ - struct grub_romfs_file_header file; -}; - -#define GRUB_ROMFS_ALIGN 16 -#define GRUB_ROMFS_TYPE_MASK 7 -#define GRUB_ROMFS_TYPE_HARDLINK 0 -#define GRUB_ROMFS_TYPE_DIRECTORY 1 -#define GRUB_ROMFS_TYPE_REGULAR 2 -#define GRUB_ROMFS_TYPE_SYMLINK 3 - -static grub_err_t -do_checksum (void *in, grub_size_t insize) -{ - grub_uint32_t *a = in; - grub_size_t sz = insize / 4; - grub_uint32_t *b = a + sz; - grub_uint32_t csum = 0; - - while (a < b) - csum += grub_be_to_cpu32 (*a++); - if (csum) - return grub_error (GRUB_ERR_BAD_FS, "invalid checksum"); - return GRUB_ERR_NONE; -} - -static struct grub_romfs_data * -grub_romfs_mount (grub_device_t dev) -{ - union { - struct grub_romfs_superblock sb; - char d[512]; - } sb; - grub_err_t err; - char *ptr; - grub_disk_addr_t sec = 0; - struct grub_romfs_data *data; - if (!dev->disk) - { - grub_error (GRUB_ERR_BAD_FS, "not a disk"); - return NULL; - } - err = grub_disk_read (dev->disk, 0, 0, sizeof (sb), &sb); - if (err == GRUB_ERR_OUT_OF_RANGE) - err = grub_errno = GRUB_ERR_BAD_FS; - if (err) - return NULL; - if (grub_be_to_cpu32 (sb.sb.total_size) < sizeof (sb)) - { - grub_error (GRUB_ERR_BAD_FS, "too short filesystem"); - return NULL; - } - if (grub_memcmp (sb.sb.magic, GRUB_ROMFS_MAGIC, - sizeof (sb.sb.magic)) != 0) - { - grub_error (GRUB_ERR_BAD_FS, "not romfs"); - return NULL; - } - err = do_checksum (&sb, sizeof (sb) < grub_be_to_cpu32 (sb.sb.total_size) ? - sizeof (sb) : grub_be_to_cpu32 (sb.sb.total_size)); - if (err) - { - grub_error (GRUB_ERR_BAD_FS, "checksum incorrect"); - return NULL; - } - for (ptr = sb.sb.label; (void *) ptr < (void *) (&sb + 1) - && ptr - sb.d < (grub_ssize_t) grub_be_to_cpu32 (sb.sb.total_size); ptr++) - if (!*ptr) - break; - while ((void *) ptr == &sb + 1) - { - sec++; - err = grub_disk_read (dev->disk, sec, 0, sizeof (sb), &sb); - if (err == GRUB_ERR_OUT_OF_RANGE) - err = grub_errno = GRUB_ERR_BAD_FS; - if (err) - return NULL; - for (ptr = sb.d; (void *) ptr < (void *) (&sb + 1) - && (ptr - sb.d + (sec << GRUB_DISK_SECTOR_BITS) - < grub_be_to_cpu32 (sb.sb.total_size)); - ptr++) - if (!*ptr) - break; - } - data = grub_malloc (sizeof (*data)); - if (!data) - return NULL; - data->first_file = ALIGN_UP (ptr + 1 - sb.d, GRUB_ROMFS_ALIGN) - + (sec << GRUB_DISK_SECTOR_BITS); - data->disk = dev->disk; - return data; -} - -static char * -grub_romfs_read_symlink (grub_fshelp_node_t node) -{ - char *ret; - grub_err_t err; - ret = grub_malloc (grub_be_to_cpu32 (node->file.size) + 1); - if (!ret) - return NULL; - err = grub_disk_read (node->data->disk, - (node->data_addr) >> GRUB_DISK_SECTOR_BITS, - (node->data_addr) & (GRUB_DISK_SECTOR_SIZE - 1), - grub_be_to_cpu32 (node->file.size), ret); - if (err) - { - grub_free (ret); - return NULL; - } - ret[grub_be_to_cpu32 (node->file.size)] = 0; - return ret; -} - -static int -grub_romfs_iterate_dir (grub_fshelp_node_t dir, - grub_fshelp_iterate_dir_hook_t hook, void *hook_data) -{ - grub_disk_addr_t caddr; - struct grub_romfs_file_header hdr; - unsigned nptr; - unsigned i, j; - grub_size_t a = 0; - grub_properly_aligned_t *name = NULL; - - for (caddr = dir->data_addr; caddr; - caddr = grub_be_to_cpu32 (hdr.next_file) & ~(GRUB_ROMFS_ALIGN - 1)) - { - grub_disk_addr_t naddr = caddr + sizeof (hdr); - grub_uint32_t csum = 0; - enum grub_fshelp_filetype filetype = GRUB_FSHELP_UNKNOWN; - struct grub_fshelp_node *node = NULL; - grub_err_t err; - - err = grub_disk_read (dir->data->disk, caddr >> GRUB_DISK_SECTOR_BITS, - caddr & (GRUB_DISK_SECTOR_SIZE - 1), - sizeof (hdr), &hdr); - if (err) - { - grub_free (name); - return 1; - } - for (nptr = 0; ; nptr++, naddr += 16) - { - if (a <= nptr) - { - grub_properly_aligned_t *on; - a = 2 * (nptr + 1); - on = name; - name = grub_realloc (name, a * 16); - if (!name) - { - grub_free (on); - return 1; - } - } - COMPILE_TIME_ASSERT (16 % sizeof (name[0]) == 0); - err = grub_disk_read (dir->data->disk, naddr >> GRUB_DISK_SECTOR_BITS, - naddr & (GRUB_DISK_SECTOR_SIZE - 1), - 16, name + (16 / sizeof (name[0])) * nptr); - if (err) - return 1; - for (j = 0; j < 16; j++) - if (!((char *) name)[16 * nptr + j]) - break; - if (j != 16) - break; - } - for (i = 0; i < sizeof (hdr) / sizeof (grub_uint32_t); i++) - csum += grub_be_to_cpu32 (((grub_uint32_t *) &hdr)[i]); - for (i = 0; i < (nptr + 1) * 4; i++) - csum += grub_be_to_cpu32 (((grub_uint32_t *) name)[i]); - if (csum != 0) - { - grub_error (GRUB_ERR_BAD_FS, "invalid checksum"); - grub_free (name); - return 1; - } - node = grub_malloc (sizeof (*node)); - if (!node) - return 1; - node->addr = caddr; - node->data_addr = caddr + (nptr + 1) * 16 + sizeof (hdr); - node->data = dir->data; - node->file = hdr; - switch (grub_be_to_cpu32 (hdr.next_file) & GRUB_ROMFS_TYPE_MASK) - { - case GRUB_ROMFS_TYPE_REGULAR: - filetype = GRUB_FSHELP_REG; - break; - case GRUB_ROMFS_TYPE_SYMLINK: - filetype = GRUB_FSHELP_SYMLINK; - break; - case GRUB_ROMFS_TYPE_DIRECTORY: - node->data_addr = grub_be_to_cpu32 (hdr.spec); - filetype = GRUB_FSHELP_DIR; - break; - case GRUB_ROMFS_TYPE_HARDLINK: - { - grub_disk_addr_t laddr; - node->addr = laddr = grub_be_to_cpu32 (hdr.spec); - err = grub_disk_read (dir->data->disk, - laddr >> GRUB_DISK_SECTOR_BITS, - laddr & (GRUB_DISK_SECTOR_SIZE - 1), - sizeof (node->file), &node->file); - if (err) - return 1; - if ((grub_be_to_cpu32 (node->file.next_file) & GRUB_ROMFS_TYPE_MASK) - == GRUB_ROMFS_TYPE_REGULAR - || (grub_be_to_cpu32 (node->file.next_file) - & GRUB_ROMFS_TYPE_MASK) == GRUB_ROMFS_TYPE_SYMLINK) - { - laddr += sizeof (hdr); - while (1) - { - char buf[16]; - err = grub_disk_read (dir->data->disk, - laddr >> GRUB_DISK_SECTOR_BITS, - laddr & (GRUB_DISK_SECTOR_SIZE - 1), - 16, buf); - if (err) - return 1; - for (i = 0; i < 16; i++) - if (!buf[i]) - break; - if (i != 16) - break; - laddr += 16; - } - node->data_addr = laddr + 16; - } - if ((grub_be_to_cpu32 (node->file.next_file) - & GRUB_ROMFS_TYPE_MASK) == GRUB_ROMFS_TYPE_REGULAR) - filetype = GRUB_FSHELP_REG; - if ((grub_be_to_cpu32 (node->file.next_file) - & GRUB_ROMFS_TYPE_MASK) == GRUB_ROMFS_TYPE_SYMLINK) - filetype = GRUB_FSHELP_SYMLINK; - if ((grub_be_to_cpu32 (node->file.next_file) & GRUB_ROMFS_TYPE_MASK) - == GRUB_ROMFS_TYPE_DIRECTORY) - { - node->data_addr = grub_be_to_cpu32 (node->file.spec); - filetype = GRUB_FSHELP_DIR; - } - - break; - } - } - - if (hook ((char *) name, filetype, node, hook_data)) - { - grub_free (name); - return 1; - } - } - grub_free (name); - return 0; -} - -/* Context for grub_romfs_dir. */ -struct grub_romfs_dir_ctx -{ - grub_fs_dir_hook_t hook; - void *hook_data; -}; - -/* Helper for grub_romfs_dir. */ -static int -grub_romfs_dir_iter (const char *filename, enum grub_fshelp_filetype filetype, - grub_fshelp_node_t node, void *data) -{ - struct grub_romfs_dir_ctx *ctx = data; - struct grub_dirhook_info info; - - grub_memset (&info, 0, sizeof (info)); - - info.dir = ((filetype & GRUB_FSHELP_TYPE_MASK) == GRUB_FSHELP_DIR); - grub_free (node); - return ctx->hook (filename, &info, ctx->hook_data); -} - -static grub_err_t -grub_romfs_dir (grub_device_t device, const char *path, - grub_fs_dir_hook_t hook, void *hook_data) -{ - struct grub_romfs_dir_ctx ctx = { hook, hook_data }; - struct grub_romfs_data *data = 0; - struct grub_fshelp_node *fdiro = 0, start; - - data = grub_romfs_mount (device); - if (! data) - goto fail; - - start.addr = data->first_file; - start.data_addr = data->first_file; - start.data = data; - grub_fshelp_find_file (path, &start, &fdiro, grub_romfs_iterate_dir, - grub_romfs_read_symlink, GRUB_FSHELP_DIR); - if (grub_errno) - goto fail; - - grub_romfs_iterate_dir (fdiro, grub_romfs_dir_iter, &ctx); - - fail: - grub_free (data); - - return grub_errno; -} - -static grub_err_t -grub_romfs_open (struct grub_file *file, const char *name) -{ - struct grub_romfs_data *data = 0; - struct grub_fshelp_node *fdiro = 0, start; - - data = grub_romfs_mount (file->device); - if (! data) - goto fail; - - start.addr = data->first_file; - start.data_addr = data->first_file; - start.data = data; - - grub_fshelp_find_file (name, &start, &fdiro, grub_romfs_iterate_dir, - grub_romfs_read_symlink, GRUB_FSHELP_REG); - if (grub_errno) - goto fail; - - file->size = grub_be_to_cpu32 (fdiro->file.size); - file->data = fdiro; - return GRUB_ERR_NONE; - - fail: - grub_free (data); - - return grub_errno; -} - -static grub_ssize_t -grub_romfs_read (grub_file_t file, char *buf, grub_size_t len) -{ - struct grub_fshelp_node *data = file->data; - - /* XXX: The file is stored in as a single extent. */ - data->data->disk->read_hook = file->read_hook; - data->data->disk->read_hook_data = file->read_hook_data; - grub_disk_read (data->data->disk, - (data->data_addr + file->offset) >> GRUB_DISK_SECTOR_BITS, - (data->data_addr + file->offset) & (GRUB_DISK_SECTOR_SIZE - 1), - len, buf); - data->data->disk->read_hook = NULL; - - if (grub_errno) - return -1; - - return len; -} - -static grub_err_t -grub_romfs_close (grub_file_t file) -{ - struct grub_fshelp_node *data = file->data; - - grub_free (data->data); - grub_free (data); - - return GRUB_ERR_NONE; -} - -static grub_err_t -grub_romfs_label (grub_device_t device, char **label) -{ - struct grub_romfs_data *data; - grub_err_t err; - - *label = NULL; - - data = grub_romfs_mount (device); - if (!data) - return grub_errno; - *label = grub_malloc (data->first_file + 1 - - sizeof (struct grub_romfs_superblock)); - if (!*label) - { - grub_free (data); - return grub_errno; - } - err = grub_disk_read (device->disk, 0, sizeof (struct grub_romfs_superblock), - data->first_file - - sizeof (struct grub_romfs_superblock), - *label); - if (err) - { - grub_free (data); - grub_free (*label); - *label = NULL; - return err; - } - (*label)[data->first_file - sizeof (struct grub_romfs_superblock)] = 0; - grub_free (data); - return GRUB_ERR_NONE; -} - - -static struct grub_fs grub_romfs_fs = - { - .name = "romfs", - .fs_dir = grub_romfs_dir, - .fs_open = grub_romfs_open, - .fs_read = grub_romfs_read, - .fs_close = grub_romfs_close, - .fs_label = grub_romfs_label, -#ifdef GRUB_UTIL - .reserved_first_sector = 0, - .blocklist_install = 0, -#endif - .next = 0 - }; - -GRUB_MOD_INIT(romfs) -{ - grub_fs_register (&grub_romfs_fs); -} - -GRUB_MOD_FINI(romfs) -{ - grub_fs_unregister (&grub_romfs_fs); -} diff --git a/thirdparty/grub-2.04/grub-core/fs/sfs.c b/thirdparty/grub-2.04/grub-core/fs/sfs.c deleted file mode 100644 index 50c1fe72f..000000000 --- a/thirdparty/grub-2.04/grub-core/fs/sfs.c +++ /dev/null @@ -1,765 +0,0 @@ -/* sfs.c - Amiga Smart FileSystem. */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2005,2006,2007,2008,2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -/* The common header for a block. */ -struct grub_sfs_bheader -{ - grub_uint8_t magic[4]; - grub_uint32_t chksum; - grub_uint32_t ipointtomyself; -} GRUB_PACKED; - -/* The sfs rootblock. */ -struct grub_sfs_rblock -{ - struct grub_sfs_bheader header; - grub_uint32_t version; - grub_uint32_t createtime; - grub_uint8_t flags; - grub_uint8_t unused1[31]; - grub_uint32_t blocksize; - grub_uint8_t unused2[40]; - grub_uint8_t unused3[8]; - grub_uint32_t rootobject; - grub_uint32_t btree; -} GRUB_PACKED; - -enum - { - FLAGS_CASE_SENSITIVE = 0x80 - }; - -/* A SFS object container. */ -struct grub_sfs_obj -{ - grub_uint8_t unused1[4]; - grub_uint32_t nodeid; - grub_uint8_t unused2[4]; - union - { - struct - { - grub_uint32_t first_block; - grub_uint32_t size; - } GRUB_PACKED file; - struct - { - grub_uint32_t hashtable; - grub_uint32_t dir_objc; - } GRUB_PACKED dir; - } file_dir; - grub_uint32_t mtime; - grub_uint8_t type; - grub_uint8_t filename[1]; - grub_uint8_t comment[1]; -} GRUB_PACKED; - -#define GRUB_SFS_TYPE_DELETED 32 -#define GRUB_SFS_TYPE_SYMLINK 64 -#define GRUB_SFS_TYPE_DIR 128 - -/* A SFS object container. */ -struct grub_sfs_objc -{ - struct grub_sfs_bheader header; - grub_uint32_t parent; - grub_uint32_t next; - grub_uint32_t prev; - /* The amount of objects depends on the blocksize. */ - struct grub_sfs_obj objects[1]; -} GRUB_PACKED; - -struct grub_sfs_btree_node -{ - grub_uint32_t key; - grub_uint32_t data; -} GRUB_PACKED; - -struct grub_sfs_btree_extent -{ - grub_uint32_t key; - grub_uint32_t next; - grub_uint32_t prev; - grub_uint16_t size; -} GRUB_PACKED; - -struct grub_sfs_btree -{ - struct grub_sfs_bheader header; - grub_uint16_t nodes; - grub_uint8_t leaf; - grub_uint8_t nodesize; - /* Normally this can be kind of node, but just extents are - supported. */ - struct grub_sfs_btree_node node[1]; -} GRUB_PACKED; - - - -struct cache_entry -{ - grub_uint32_t off; - grub_uint32_t block; -}; - -struct grub_fshelp_node -{ - struct grub_sfs_data *data; - grub_uint32_t block; - grub_uint32_t size; - grub_uint32_t mtime; - grub_uint32_t cache_off; - grub_uint32_t next_extent; - grub_size_t cache_allocated; - grub_size_t cache_size; - struct cache_entry *cache; -}; - -/* Information about a "mounted" sfs filesystem. */ -struct grub_sfs_data -{ - struct grub_sfs_rblock rblock; - struct grub_fshelp_node diropen; - grub_disk_t disk; - - /* Log of blocksize in sectors. */ - int log_blocksize; - - int fshelp_flags; - - /* Label of the filesystem. */ - char *label; -}; - -static grub_dl_t my_mod; - - -/* Lookup the extent starting with BLOCK in the filesystem described - by DATA. Return the extent size in SIZE and the following extent - in NEXTEXT. */ -static grub_err_t -grub_sfs_read_extent (struct grub_sfs_data *data, unsigned int block, - grub_uint32_t *size, grub_uint32_t *nextext) -{ - char *treeblock; - struct grub_sfs_btree *tree; - int i; - grub_uint32_t next; - grub_size_t blocksize = GRUB_DISK_SECTOR_SIZE << data->log_blocksize; - - treeblock = grub_malloc (blocksize); - if (!treeblock) - return grub_errno; - - next = grub_be_to_cpu32 (data->rblock.btree); - tree = (struct grub_sfs_btree *) treeblock; - - /* Handle this level in the btree. */ - do - { - grub_uint16_t nnodes; - grub_disk_read (data->disk, - ((grub_disk_addr_t) next) << data->log_blocksize, - 0, blocksize, treeblock); - if (grub_errno) - { - grub_free (treeblock); - return grub_errno; - } - - nnodes = grub_be_to_cpu16 (tree->nodes); - if (nnodes * (grub_uint32_t) (tree)->nodesize > blocksize) - break; - - for (i = (int) nnodes - 1; i >= 0; i--) - { - -#define EXTNODE(tree, index) \ - ((struct grub_sfs_btree_node *) (((char *) &(tree)->node[0]) \ - + (index) * (tree)->nodesize)) - - /* Follow the tree down to the leaf level. */ - if ((grub_be_to_cpu32 (EXTNODE(tree, i)->key) <= block) - && !tree->leaf) - { - next = grub_be_to_cpu32 (EXTNODE (tree, i)->data); - break; - } - - /* If the leaf level is reached, just find the correct extent. */ - if (grub_be_to_cpu32 (EXTNODE (tree, i)->key) == block && tree->leaf) - { - struct grub_sfs_btree_extent *extent; - extent = (struct grub_sfs_btree_extent *) EXTNODE (tree, i); - - /* We found a correct leaf. */ - *size = grub_be_to_cpu16 (extent->size); - *nextext = grub_be_to_cpu32 (extent->next); - - grub_free (treeblock); - return 0; - } - -#undef EXTNODE - - } - } while (!tree->leaf); - - grub_free (treeblock); - - return grub_error (GRUB_ERR_FILE_READ_ERROR, "SFS extent not found"); -} - -static grub_disk_addr_t -grub_sfs_read_block (grub_fshelp_node_t node, grub_disk_addr_t fileblock) -{ - grub_uint32_t blk; - grub_uint32_t size = 0; - grub_uint32_t next = 0; - grub_disk_addr_t off; - struct grub_sfs_data *data = node->data; - - /* In case of the first block we don't have to lookup the - extent, the minimum size is always 1. */ - if (fileblock == 0) - return node->block; - - if (!node->cache) - { - grub_size_t cache_size; - /* Assume half-max extents (32768 sectors). */ - cache_size = ((node->size >> (data->log_blocksize + GRUB_DISK_SECTOR_BITS - + 15)) - + 3); - if (cache_size < 8) - cache_size = 8; - - node->cache_off = 0; - node->next_extent = node->block; - node->cache_size = 0; - - node->cache = grub_malloc (sizeof (node->cache[0]) * cache_size); - if (!node->cache) - { - grub_errno = 0; - node->cache_allocated = 0; - } - else - { - node->cache_allocated = cache_size; - node->cache[0].off = 0; - node->cache[0].block = node->block; - } - } - - if (fileblock < node->cache_off) - { - unsigned int i = 0; - int j, lg; - for (lg = 0; node->cache_size >> lg; lg++); - - for (j = lg - 1; j >= 0; j--) - if ((i | (1 << j)) < node->cache_size - && node->cache[(i | (1 << j))].off <= fileblock) - i |= (1 << j); - return node->cache[i].block + fileblock - node->cache[i].off; - } - - off = node->cache_off; - blk = node->next_extent; - - while (blk) - { - grub_err_t err; - - err = grub_sfs_read_extent (node->data, blk, &size, &next); - if (err) - return 0; - - if (node->cache && node->cache_size >= node->cache_allocated) - { - struct cache_entry *e = node->cache; - e = grub_realloc (node->cache,node->cache_allocated * 2 - * sizeof (e[0])); - if (!e) - { - grub_errno = 0; - grub_free (node->cache); - node->cache = 0; - } - else - { - node->cache_allocated *= 2; - node->cache = e; - } - } - - if (node->cache) - { - node->cache_off = off + size; - node->next_extent = next; - node->cache[node->cache_size].off = off; - node->cache[node->cache_size].block = blk; - node->cache_size++; - } - - if (fileblock - off < size) - return fileblock - off + blk; - - off += size; - - blk = next; - } - - grub_error (GRUB_ERR_FILE_READ_ERROR, - "reading a SFS block outside the extent"); - - return 0; -} - - -/* Read LEN bytes from the file described by DATA starting with byte - POS. Return the amount of read bytes in READ. */ -static grub_ssize_t -grub_sfs_read_file (grub_fshelp_node_t node, - grub_disk_read_hook_t read_hook, void *read_hook_data, - grub_off_t pos, grub_size_t len, char *buf) -{ - return grub_fshelp_read_file (node->data->disk, node, - read_hook, read_hook_data, - pos, len, buf, grub_sfs_read_block, - node->size, node->data->log_blocksize, 0); -} - - -static struct grub_sfs_data * -grub_sfs_mount (grub_disk_t disk) -{ - struct grub_sfs_data *data; - struct grub_sfs_objc *rootobjc; - char *rootobjc_data = 0; - grub_uint32_t blk; - - data = grub_malloc (sizeof (*data)); - if (!data) - return 0; - - /* Read the rootblock. */ - grub_disk_read (disk, 0, 0, sizeof (struct grub_sfs_rblock), - &data->rblock); - if (grub_errno) - goto fail; - - /* Make sure this is a sfs filesystem. */ - if (grub_strncmp ((char *) (data->rblock.header.magic), "SFS", 4) - || data->rblock.blocksize == 0 - || (data->rblock.blocksize & (data->rblock.blocksize - 1)) != 0 - || (data->rblock.blocksize & grub_cpu_to_be32_compile_time (0xf00001ff))) - { - grub_error (GRUB_ERR_BAD_FS, "not a SFS filesystem"); - goto fail; - } - - for (data->log_blocksize = 9; - (1U << data->log_blocksize) < grub_be_to_cpu32 (data->rblock.blocksize); - data->log_blocksize++); - data->log_blocksize -= GRUB_DISK_SECTOR_BITS; - if (data->rblock.flags & FLAGS_CASE_SENSITIVE) - data->fshelp_flags = 0; - else - data->fshelp_flags = GRUB_FSHELP_CASE_INSENSITIVE; - rootobjc_data = grub_malloc (GRUB_DISK_SECTOR_SIZE << data->log_blocksize); - if (! rootobjc_data) - goto fail; - - /* Read the root object container. */ - grub_disk_read (disk, ((grub_disk_addr_t) grub_be_to_cpu32 (data->rblock.rootobject)) - << data->log_blocksize, 0, - GRUB_DISK_SECTOR_SIZE << data->log_blocksize, rootobjc_data); - if (grub_errno) - goto fail; - - rootobjc = (struct grub_sfs_objc *) rootobjc_data; - - blk = grub_be_to_cpu32 (rootobjc->objects[0].file_dir.dir.dir_objc); - data->diropen.size = 0; - data->diropen.block = blk; - data->diropen.data = data; - data->diropen.cache = 0; - data->disk = disk; - data->label = grub_strdup ((char *) (rootobjc->objects[0].filename)); - - grub_free (rootobjc_data); - return data; - - fail: - if (grub_errno == GRUB_ERR_OUT_OF_RANGE) - grub_error (GRUB_ERR_BAD_FS, "not an SFS filesystem"); - - grub_free (data); - grub_free (rootobjc_data); - return 0; -} - - -static char * -grub_sfs_read_symlink (grub_fshelp_node_t node) -{ - struct grub_sfs_data *data = node->data; - char *symlink; - char *block; - - block = grub_malloc (GRUB_DISK_SECTOR_SIZE << data->log_blocksize); - if (!block) - return 0; - - grub_disk_read (data->disk, ((grub_disk_addr_t) node->block) - << data->log_blocksize, - 0, GRUB_DISK_SECTOR_SIZE << data->log_blocksize, block); - if (grub_errno) - { - grub_free (block); - return 0; - } - - /* This is just a wild guess, but it always worked for me. How the - SLNK block looks like is not documented in the SFS docs. */ - symlink = grub_malloc (((GRUB_DISK_SECTOR_SIZE << data->log_blocksize) - - 24) * GRUB_MAX_UTF8_PER_LATIN1 + 1); - if (!symlink) - { - grub_free (block); - return 0; - } - *grub_latin1_to_utf8 ((grub_uint8_t *) symlink, (grub_uint8_t *) &block[24], - (GRUB_DISK_SECTOR_SIZE << data->log_blocksize) - 24) = '\0'; - grub_free (block); - return symlink; -} - -/* Helper for grub_sfs_iterate_dir. */ -static int -grub_sfs_create_node (struct grub_fshelp_node **node, - struct grub_sfs_data *data, - const char *name, - grub_uint32_t block, grub_uint32_t size, int type, - grub_uint32_t mtime, - grub_fshelp_iterate_dir_hook_t hook, void *hook_data) -{ - grub_size_t len = grub_strlen (name); - grub_uint8_t *name_u8; - int ret; - *node = grub_malloc (sizeof (**node)); - if (!*node) - return 1; - name_u8 = grub_malloc (len * GRUB_MAX_UTF8_PER_LATIN1 + 1); - if (!name_u8) - { - grub_free (*node); - return 1; - } - - (*node)->data = data; - (*node)->size = size; - (*node)->block = block; - (*node)->mtime = mtime; - (*node)->cache = 0; - (*node)->cache_off = 0; - (*node)->next_extent = block; - (*node)->cache_size = 0; - (*node)->cache_allocated = 0; - - *grub_latin1_to_utf8 (name_u8, (const grub_uint8_t *) name, len) = '\0'; - - ret = hook ((char *) name_u8, type | data->fshelp_flags, *node, hook_data); - grub_free (name_u8); - return ret; -} - -static int -grub_sfs_iterate_dir (grub_fshelp_node_t dir, - grub_fshelp_iterate_dir_hook_t hook, void *hook_data) -{ - struct grub_fshelp_node *node = 0; - struct grub_sfs_data *data = dir->data; - char *objc_data; - struct grub_sfs_objc *objc; - unsigned int next = dir->block; - grub_uint32_t pos; - - objc_data = grub_malloc (GRUB_DISK_SECTOR_SIZE << data->log_blocksize); - if (!objc_data) - goto fail; - - /* The Object container can consist of multiple blocks, iterate over - every block. */ - while (next) - { - grub_disk_read (data->disk, ((grub_disk_addr_t) next) - << data->log_blocksize, 0, - GRUB_DISK_SECTOR_SIZE << data->log_blocksize, objc_data); - if (grub_errno) - goto fail; - - objc = (struct grub_sfs_objc *) objc_data; - - pos = (char *) &objc->objects[0] - (char *) objc; - - /* Iterate over all entries in this block. */ - while (pos + sizeof (struct grub_sfs_obj) - < (1U << (GRUB_DISK_SECTOR_BITS + data->log_blocksize))) - { - struct grub_sfs_obj *obj; - obj = (struct grub_sfs_obj *) ((char *) objc + pos); - const char *filename = (const char *) obj->filename; - grub_size_t len; - enum grub_fshelp_filetype type; - grub_uint32_t block; - - /* The filename and comment dynamically increase the size of - the object. */ - len = grub_strlen (filename); - len += grub_strlen (filename + len + 1); - - pos += sizeof (*obj) + len; - /* Round up to a multiple of two bytes. */ - pos = ((pos + 1) >> 1) << 1; - - if (filename[0] == 0) - continue; - - /* First check if the file was not deleted. */ - if (obj->type & GRUB_SFS_TYPE_DELETED) - continue; - else if (obj->type & GRUB_SFS_TYPE_SYMLINK) - type = GRUB_FSHELP_SYMLINK; - else if (obj->type & GRUB_SFS_TYPE_DIR) - type = GRUB_FSHELP_DIR; - else - type = GRUB_FSHELP_REG; - - if (type == GRUB_FSHELP_DIR) - block = grub_be_to_cpu32 (obj->file_dir.dir.dir_objc); - else - block = grub_be_to_cpu32 (obj->file_dir.file.first_block); - - if (grub_sfs_create_node (&node, data, filename, block, - grub_be_to_cpu32 (obj->file_dir.file.size), - type, grub_be_to_cpu32 (obj->mtime), - hook, hook_data)) - { - grub_free (objc_data); - return 1; - } - } - - next = grub_be_to_cpu32 (objc->next); - } - - fail: - grub_free (objc_data); - return 0; -} - - -/* Open a file named NAME and initialize FILE. */ -static grub_err_t -grub_sfs_open (struct grub_file *file, const char *name) -{ - struct grub_sfs_data *data; - struct grub_fshelp_node *fdiro = 0; - - grub_dl_ref (my_mod); - - data = grub_sfs_mount (file->device->disk); - if (!data) - goto fail; - - grub_fshelp_find_file (name, &data->diropen, &fdiro, grub_sfs_iterate_dir, - grub_sfs_read_symlink, GRUB_FSHELP_REG); - if (grub_errno) - goto fail; - - file->size = fdiro->size; - data->diropen = *fdiro; - grub_free (fdiro); - - file->data = data; - file->offset = 0; - - return 0; - - fail: - if (data && fdiro != &data->diropen) - grub_free (fdiro); - if (data) - grub_free (data->label); - grub_free (data); - - grub_dl_unref (my_mod); - - return grub_errno; -} - - -static grub_err_t -grub_sfs_close (grub_file_t file) -{ - struct grub_sfs_data *data = (struct grub_sfs_data *) file->data; - - grub_free (data->diropen.cache); - grub_free (data->label); - grub_free (data); - - grub_dl_unref (my_mod); - - return GRUB_ERR_NONE; -} - - -/* Read LEN bytes data from FILE into BUF. */ -static grub_ssize_t -grub_sfs_read (grub_file_t file, char *buf, grub_size_t len) -{ - struct grub_sfs_data *data = (struct grub_sfs_data *) file->data; - - return grub_sfs_read_file (&data->diropen, - file->read_hook, file->read_hook_data, - file->offset, len, buf); -} - - -/* Context for grub_sfs_dir. */ -struct grub_sfs_dir_ctx -{ - grub_fs_dir_hook_t hook; - void *hook_data; -}; - -/* Helper for grub_sfs_dir. */ -static int -grub_sfs_dir_iter (const char *filename, enum grub_fshelp_filetype filetype, - grub_fshelp_node_t node, void *data) -{ - struct grub_sfs_dir_ctx *ctx = data; - struct grub_dirhook_info info; - - grub_memset (&info, 0, sizeof (info)); - info.dir = ((filetype & GRUB_FSHELP_TYPE_MASK) == GRUB_FSHELP_DIR); - info.mtime = node->mtime + 8 * 365 * 86400 + 86400 * 2; - info.mtimeset = 1; - grub_free (node->cache); - grub_free (node); - return ctx->hook (filename, &info, ctx->hook_data); -} - -static grub_err_t -grub_sfs_dir (grub_device_t device, const char *path, - grub_fs_dir_hook_t hook, void *hook_data) -{ - struct grub_sfs_dir_ctx ctx = { hook, hook_data }; - struct grub_sfs_data *data = 0; - struct grub_fshelp_node *fdiro = 0; - - grub_dl_ref (my_mod); - - data = grub_sfs_mount (device->disk); - if (!data) - goto fail; - - grub_fshelp_find_file (path, &data->diropen, &fdiro, grub_sfs_iterate_dir, - grub_sfs_read_symlink, GRUB_FSHELP_DIR); - if (grub_errno) - goto fail; - - grub_sfs_iterate_dir (fdiro, grub_sfs_dir_iter, &ctx); - - fail: - if (data && fdiro != &data->diropen) - grub_free (fdiro); - if (data) - grub_free (data->label); - grub_free (data); - - grub_dl_unref (my_mod); - - return grub_errno; -} - - -static grub_err_t -grub_sfs_label (grub_device_t device, char **label) -{ - struct grub_sfs_data *data; - grub_disk_t disk = device->disk; - - data = grub_sfs_mount (disk); - if (data) - { - grub_size_t len = grub_strlen (data->label); - *label = grub_malloc (len * GRUB_MAX_UTF8_PER_LATIN1 + 1); - if (*label) - *grub_latin1_to_utf8 ((grub_uint8_t *) *label, - (const grub_uint8_t *) data->label, - len) = '\0'; - grub_free (data->label); - } - grub_free (data); - - return grub_errno; -} - - -static struct grub_fs grub_sfs_fs = - { - .name = "sfs", - .fs_dir = grub_sfs_dir, - .fs_open = grub_sfs_open, - .fs_read = grub_sfs_read, - .fs_close = grub_sfs_close, - .fs_label = grub_sfs_label, -#ifdef GRUB_UTIL - .reserved_first_sector = 0, - .blocklist_install = 1, -#endif - .next = 0 - }; - -GRUB_MOD_INIT(sfs) -{ - grub_fs_register (&grub_sfs_fs); - my_mod = mod; -} - -GRUB_MOD_FINI(sfs) -{ - grub_fs_unregister (&grub_sfs_fs); -} diff --git a/thirdparty/grub-2.04/grub-core/fs/squash4.c b/thirdparty/grub-2.04/grub-core/fs/squash4.c deleted file mode 100644 index 95d5c1e1f..000000000 --- a/thirdparty/grub-2.04/grub-core/fs/squash4.c +++ /dev/null @@ -1,1019 +0,0 @@ -/* squash4.c - SquashFS */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2010 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#include "xz.h" -#include "xz_stream.h" - -GRUB_MOD_LICENSE ("GPLv3+"); - -/* - object format Pointed by - superblock RAW Fixed offset (0) - data RAW ? Fixed offset (60) - inode table Chunk superblock - dir table Chunk superblock - fragment table Chunk unk1 - unk1 RAW, Chunk superblock - unk2 RAW superblock - UID/GID Chunk exttblptr - exttblptr RAW superblock - - UID/GID table is the array ot uint32_t - unk1 contains pointer to fragment table followed by some chunk. - unk2 containts one uint64_t -*/ - -struct grub_squash_super -{ - grub_uint32_t magic; -#define SQUASH_MAGIC 0x73717368 - grub_uint32_t dummy1; - grub_uint32_t creation_time; - grub_uint32_t block_size; - grub_uint32_t dummy2; - grub_uint16_t compression; - grub_uint16_t dummy3; - grub_uint64_t dummy4; - grub_uint16_t root_ino_offset; - grub_uint32_t root_ino_chunk; - grub_uint16_t dummy5; - grub_uint64_t total_size; - grub_uint64_t exttbloffset; - grub_uint64_t dummy6; - grub_uint64_t inodeoffset; - grub_uint64_t diroffset; - grub_uint64_t unk1offset; - grub_uint64_t unk2offset; -} GRUB_PACKED; - -/* Chunk-based */ -struct grub_squash_inode -{ - /* Same values as direlem types. */ - grub_uint16_t type; - grub_uint16_t dummy[3]; - grub_uint32_t mtime; - grub_uint32_t dummy2; - union - { - struct { - grub_uint32_t chunk; - grub_uint32_t fragment; - grub_uint32_t offset; - grub_uint32_t size; - grub_uint32_t block_size[0]; - } GRUB_PACKED file; - struct { - grub_uint64_t chunk; - grub_uint64_t size; - grub_uint32_t dummy1[3]; - grub_uint32_t fragment; - grub_uint32_t offset; - grub_uint32_t dummy3; - grub_uint32_t block_size[0]; - } GRUB_PACKED long_file; - struct { - grub_uint32_t chunk; - grub_uint32_t dummy; - grub_uint16_t size; - grub_uint16_t offset; - } GRUB_PACKED dir; - struct { - grub_uint32_t dummy1; - grub_uint32_t size; - grub_uint32_t chunk; - grub_uint32_t dummy2; - grub_uint16_t dummy3; - grub_uint16_t offset; - } GRUB_PACKED long_dir; - struct { - grub_uint32_t dummy; - grub_uint32_t namelen; - char name[0]; - } GRUB_PACKED symlink; - } GRUB_PACKED; -} GRUB_PACKED; - -struct grub_squash_cache_inode -{ - struct grub_squash_inode ino; - grub_disk_addr_t ino_chunk; - grub_uint16_t ino_offset; - grub_uint32_t *block_sizes; - grub_disk_addr_t *cumulated_block_sizes; -}; - -/* Chunk-based. */ -struct grub_squash_dirent_header -{ - /* Actually the value is the number of elements - 1. */ - grub_uint32_t nelems; - grub_uint32_t ino_chunk; - grub_uint32_t dummy; -} GRUB_PACKED; - -struct grub_squash_dirent -{ - grub_uint16_t ino_offset; - grub_uint16_t dummy; - grub_uint16_t type; - /* Actually the value is the length of name - 1. */ - grub_uint16_t namelen; - char name[0]; -} GRUB_PACKED; - -enum - { - SQUASH_TYPE_DIR = 1, - SQUASH_TYPE_REGULAR = 2, - SQUASH_TYPE_SYMLINK = 3, - SQUASH_TYPE_LONG_DIR = 8, - SQUASH_TYPE_LONG_REGULAR = 9, - }; - - -struct grub_squash_frag_desc -{ - grub_uint64_t offset; - grub_uint32_t size; - grub_uint32_t dummy; -} GRUB_PACKED; - -enum - { - SQUASH_CHUNK_FLAGS = 0x8000, - SQUASH_CHUNK_UNCOMPRESSED = 0x8000 - }; - -enum - { - SQUASH_BLOCK_FLAGS = 0x1000000, - SQUASH_BLOCK_UNCOMPRESSED = 0x1000000 - }; - -enum - { - COMPRESSION_ZLIB = 1, - COMPRESSION_LZO = 3, - COMPRESSION_XZ = 4, - }; - - -#define SQUASH_CHUNK_SIZE 0x2000 -#define XZBUFSIZ 0x2000 - -struct grub_squash_data -{ - grub_disk_t disk; - struct grub_squash_super sb; - struct grub_squash_cache_inode ino; - grub_uint64_t fragments; - int log2_blksz; - grub_size_t blksz; - grub_ssize_t (*decompress) (char *inbuf, grub_size_t insize, grub_off_t off, - char *outbuf, grub_size_t outsize, - struct grub_squash_data *data); - struct xz_dec *xzdec; - char *xzbuf; -}; - -struct grub_fshelp_node -{ - struct grub_squash_data *data; - struct grub_squash_inode ino; - grub_size_t stsize; - struct - { - grub_disk_addr_t ino_chunk; - grub_uint16_t ino_offset; - } stack[1]; -}; - -static grub_err_t -read_chunk (struct grub_squash_data *data, void *buf, grub_size_t len, - grub_uint64_t chunk_start, grub_off_t offset) -{ - while (len > 0) - { - grub_uint64_t csize; - grub_uint16_t d; - grub_err_t err; - while (1) - { - err = grub_disk_read (data->disk, - chunk_start >> GRUB_DISK_SECTOR_BITS, - chunk_start & (GRUB_DISK_SECTOR_SIZE - 1), - sizeof (d), &d); - if (err) - return err; - if (offset < SQUASH_CHUNK_SIZE) - break; - offset -= SQUASH_CHUNK_SIZE; - chunk_start += 2 + (grub_le_to_cpu16 (d) & ~SQUASH_CHUNK_FLAGS); - } - - csize = SQUASH_CHUNK_SIZE - offset; - if (csize > len) - csize = len; - - if (grub_le_to_cpu16 (d) & SQUASH_CHUNK_UNCOMPRESSED) - { - grub_disk_addr_t a = chunk_start + 2 + offset; - err = grub_disk_read (data->disk, (a >> GRUB_DISK_SECTOR_BITS), - a & (GRUB_DISK_SECTOR_SIZE - 1), - csize, buf); - if (err) - return err; - } - else - { - char *tmp; - grub_size_t bsize = grub_le_to_cpu16 (d) & ~SQUASH_CHUNK_FLAGS; - grub_disk_addr_t a = chunk_start + 2; - tmp = grub_malloc (bsize); - if (!tmp) - return grub_errno; - /* FIXME: buffer uncompressed data. */ - err = grub_disk_read (data->disk, (a >> GRUB_DISK_SECTOR_BITS), - a & (GRUB_DISK_SECTOR_SIZE - 1), - bsize, tmp); - if (err) - { - grub_free (tmp); - return err; - } - - if (data->decompress (tmp, bsize, offset, - buf, csize, data) < 0) - { - grub_free (tmp); - return grub_errno; - } - grub_free (tmp); - } - len -= csize; - offset += csize; - buf = (char *) buf + csize; - } - return GRUB_ERR_NONE; -} - -static grub_ssize_t -zlib_decompress (char *inbuf, grub_size_t insize, grub_off_t off, - char *outbuf, grub_size_t outsize, - struct grub_squash_data *data __attribute__ ((unused))) -{ - return grub_zlib_decompress (inbuf, insize, off, outbuf, outsize); -} - -static grub_ssize_t -lzo_decompress (char *inbuf, grub_size_t insize, grub_off_t off, - char *outbuf, grub_size_t len, struct grub_squash_data *data) -{ - lzo_uint usize = data->blksz; - grub_uint8_t *udata; - - if (usize < 8192) - usize = 8192; - - udata = grub_malloc (usize); - if (!udata) - return -1; - - if (lzo1x_decompress_safe ((grub_uint8_t *) inbuf, - insize, udata, &usize, NULL) != LZO_E_OK) - { - grub_error (GRUB_ERR_BAD_FS, "incorrect compressed chunk"); - grub_free (udata); - return -1; - } - grub_memcpy (outbuf, udata + off, len); - grub_free (udata); - return len; -} - -static grub_ssize_t -xz_decompress (char *inbuf, grub_size_t insize, grub_off_t off, - char *outbuf, grub_size_t len, struct grub_squash_data *data) -{ - grub_size_t ret = 0; - grub_off_t pos = 0; - struct xz_buf buf; - - xz_dec_reset (data->xzdec); - buf.in = (grub_uint8_t *) inbuf; - buf.in_pos = 0; - buf.in_size = insize; - buf.out = (grub_uint8_t *) data->xzbuf; - buf.out_pos = 0; - buf.out_size = XZBUFSIZ; - - while (len) - { - enum xz_ret xzret; - - buf.out_pos = 0; - - xzret = xz_dec_run (data->xzdec, &buf); - - if (xzret != XZ_OK && xzret != XZ_STREAM_END) - { - grub_error (GRUB_ERR_BAD_COMPRESSED_DATA, "invalid xz chunk"); - return -1; - } - if (pos + buf.out_pos >= off) - { - grub_ssize_t outoff = pos - off; - grub_size_t l; - if (outoff >= 0) - { - l = buf.out_pos; - if (l > len) - l = len; - grub_memcpy (outbuf + outoff, buf.out, l); - } - else - { - outoff = -outoff; - l = buf.out_pos - outoff; - if (l > len) - l = len; - grub_memcpy (outbuf, buf.out + outoff, l); - } - ret += l; - len -= l; - } - pos += buf.out_pos; - if (xzret == XZ_STREAM_END) - break; - } - return ret; -} - -static struct grub_squash_data * -squash_mount (grub_disk_t disk) -{ - struct grub_squash_super sb; - grub_err_t err; - struct grub_squash_data *data; - grub_uint64_t frag; - - err = grub_disk_read (disk, 0, 0, sizeof (sb), &sb); - if (grub_errno == GRUB_ERR_OUT_OF_RANGE) - grub_error (GRUB_ERR_BAD_FS, "not a squash4"); - if (err) - return NULL; - if (sb.magic != grub_cpu_to_le32_compile_time (SQUASH_MAGIC) - || sb.block_size == 0 - || ((sb.block_size - 1) & sb.block_size)) - { - grub_error (GRUB_ERR_BAD_FS, "not squash4"); - return NULL; - } - - err = grub_disk_read (disk, - grub_le_to_cpu64 (sb.unk1offset) - >> GRUB_DISK_SECTOR_BITS, - grub_le_to_cpu64 (sb.unk1offset) - & (GRUB_DISK_SECTOR_SIZE - 1), sizeof (frag), &frag); - if (grub_errno == GRUB_ERR_OUT_OF_RANGE) - grub_error (GRUB_ERR_BAD_FS, "not a squash4"); - if (err) - return NULL; - - data = grub_zalloc (sizeof (*data)); - if (!data) - return NULL; - data->sb = sb; - data->disk = disk; - data->fragments = grub_le_to_cpu64 (frag); - - switch (sb.compression) - { - case grub_cpu_to_le16_compile_time (COMPRESSION_ZLIB): - data->decompress = zlib_decompress; - break; - case grub_cpu_to_le16_compile_time (COMPRESSION_LZO): - data->decompress = lzo_decompress; - break; - case grub_cpu_to_le16_compile_time (COMPRESSION_XZ): - data->decompress = xz_decompress; - data->xzbuf = grub_malloc (XZBUFSIZ); - if (!data->xzbuf) - { - grub_free (data); - return NULL; - } - data->xzdec = xz_dec_init (1 << 16); - if (!data->xzdec) - { - grub_free (data->xzbuf); - grub_free (data); - return NULL; - } - break; - default: - grub_free (data); - grub_error (GRUB_ERR_BAD_FS, "unsupported compression %d", - grub_le_to_cpu16 (sb.compression)); - return NULL; - } - - data->blksz = grub_le_to_cpu32 (data->sb.block_size); - for (data->log2_blksz = 0; - (1U << data->log2_blksz) < data->blksz; - data->log2_blksz++); - - return data; -} - -static char * -grub_squash_read_symlink (grub_fshelp_node_t node) -{ - char *ret; - grub_err_t err; - ret = grub_malloc (grub_le_to_cpu32 (node->ino.symlink.namelen) + 1); - - err = read_chunk (node->data, ret, - grub_le_to_cpu32 (node->ino.symlink.namelen), - grub_le_to_cpu64 (node->data->sb.inodeoffset) - + node->stack[node->stsize - 1].ino_chunk, - node->stack[node->stsize - 1].ino_offset - + (node->ino.symlink.name - (char *) &node->ino)); - if (err) - { - grub_free (ret); - return NULL; - } - ret[grub_le_to_cpu32 (node->ino.symlink.namelen)] = 0; - return ret; -} - -static int -grub_squash_iterate_dir (grub_fshelp_node_t dir, - grub_fshelp_iterate_dir_hook_t hook, void *hook_data) -{ - grub_uint32_t off; - grub_uint32_t endoff; - grub_uint64_t chunk; - unsigned i; - - /* FIXME: why - 3 ? */ - switch (dir->ino.type) - { - case grub_cpu_to_le16_compile_time (SQUASH_TYPE_DIR): - off = grub_le_to_cpu16 (dir->ino.dir.offset); - endoff = grub_le_to_cpu16 (dir->ino.dir.size) + off - 3; - chunk = grub_le_to_cpu32 (dir->ino.dir.chunk); - break; - case grub_cpu_to_le16_compile_time (SQUASH_TYPE_LONG_DIR): - off = grub_le_to_cpu16 (dir->ino.long_dir.offset); - endoff = grub_le_to_cpu16 (dir->ino.long_dir.size) + off - 3; - chunk = grub_le_to_cpu32 (dir->ino.long_dir.chunk); - break; - default: - grub_error (GRUB_ERR_BAD_FS, "unexpected ino type 0x%x", - grub_le_to_cpu16 (dir->ino.type)); - return 0; - } - - { - grub_fshelp_node_t node; - node = grub_malloc (sizeof (*node) + dir->stsize * sizeof (dir->stack[0])); - if (!node) - return 0; - grub_memcpy (node, dir, - sizeof (*node) + dir->stsize * sizeof (dir->stack[0])); - if (hook (".", GRUB_FSHELP_DIR, node, hook_data)) - return 1; - - if (dir->stsize != 1) - { - grub_err_t err; - - node = grub_malloc (sizeof (*node) + dir->stsize * sizeof (dir->stack[0])); - if (!node) - return 0; - - grub_memcpy (node, dir, - sizeof (*node) + dir->stsize * sizeof (dir->stack[0])); - - node->stsize--; - err = read_chunk (dir->data, &node->ino, sizeof (node->ino), - grub_le_to_cpu64 (dir->data->sb.inodeoffset) - + node->stack[node->stsize - 1].ino_chunk, - node->stack[node->stsize - 1].ino_offset); - if (err) - return 0; - - if (hook ("..", GRUB_FSHELP_DIR, node, hook_data)) - return 1; - } - } - - while (off < endoff) - { - struct grub_squash_dirent_header dh; - grub_err_t err; - - err = read_chunk (dir->data, &dh, sizeof (dh), - grub_le_to_cpu64 (dir->data->sb.diroffset) - + chunk, off); - if (err) - return 0; - off += sizeof (dh); - for (i = 0; i < (unsigned) grub_le_to_cpu32 (dh.nelems) + 1; i++) - { - char *buf; - int r; - struct grub_fshelp_node *node; - enum grub_fshelp_filetype filetype = GRUB_FSHELP_REG; - struct grub_squash_dirent di; - struct grub_squash_inode ino; - - err = read_chunk (dir->data, &di, sizeof (di), - grub_le_to_cpu64 (dir->data->sb.diroffset) - + chunk, off); - if (err) - return 0; - off += sizeof (di); - - err = read_chunk (dir->data, &ino, sizeof (ino), - grub_le_to_cpu64 (dir->data->sb.inodeoffset) - + grub_le_to_cpu32 (dh.ino_chunk), - grub_cpu_to_le16 (di.ino_offset)); - if (err) - return 0; - - buf = grub_malloc (grub_le_to_cpu16 (di.namelen) + 2); - if (!buf) - return 0; - err = read_chunk (dir->data, buf, - grub_le_to_cpu16 (di.namelen) + 1, - grub_le_to_cpu64 (dir->data->sb.diroffset) - + chunk, off); - if (err) - return 0; - - off += grub_le_to_cpu16 (di.namelen) + 1; - buf[grub_le_to_cpu16 (di.namelen) + 1] = 0; - if (grub_le_to_cpu16 (di.type) == SQUASH_TYPE_DIR) - filetype = GRUB_FSHELP_DIR; - if (grub_le_to_cpu16 (di.type) == SQUASH_TYPE_SYMLINK) - filetype = GRUB_FSHELP_SYMLINK; - - node = grub_malloc (sizeof (*node) - + (dir->stsize + 1) * sizeof (dir->stack[0])); - if (! node) - return 0; - - grub_memcpy (node, dir, - sizeof (*node) + dir->stsize * sizeof (dir->stack[0])); - - node->ino = ino; - node->stack[node->stsize].ino_chunk = grub_le_to_cpu32 (dh.ino_chunk); - node->stack[node->stsize].ino_offset = grub_le_to_cpu16 (di.ino_offset); - node->stsize++; - r = hook (buf, filetype, node, hook_data); - - grub_free (buf); - if (r) - return r; - } - } - return 0; -} - -static grub_err_t -make_root_node (struct grub_squash_data *data, struct grub_fshelp_node *root) -{ - grub_memset (root, 0, sizeof (*root)); - root->data = data; - root->stsize = 1; - root->stack[0].ino_chunk = grub_le_to_cpu32 (data->sb.root_ino_chunk); - root->stack[0].ino_offset = grub_cpu_to_le16 (data->sb.root_ino_offset); - return read_chunk (data, &root->ino, sizeof (root->ino), - grub_le_to_cpu64 (data->sb.inodeoffset) - + root->stack[0].ino_chunk, - root->stack[0].ino_offset); -} - -static void -squash_unmount (struct grub_squash_data *data) -{ - if (data->xzdec) - xz_dec_end (data->xzdec); - grub_free (data->xzbuf); - grub_free (data->ino.cumulated_block_sizes); - grub_free (data->ino.block_sizes); - grub_free (data); -} - - -/* Context for grub_squash_dir. */ -struct grub_squash_dir_ctx -{ - grub_fs_dir_hook_t hook; - void *hook_data; -}; - -/* Helper for grub_squash_dir. */ -static int -grub_squash_dir_iter (const char *filename, enum grub_fshelp_filetype filetype, - grub_fshelp_node_t node, void *data) -{ - struct grub_squash_dir_ctx *ctx = data; - struct grub_dirhook_info info; - - grub_memset (&info, 0, sizeof (info)); - info.dir = ((filetype & GRUB_FSHELP_TYPE_MASK) == GRUB_FSHELP_DIR); - info.mtimeset = 1; - info.mtime = grub_le_to_cpu32 (node->ino.mtime); - grub_free (node); - return ctx->hook (filename, &info, ctx->hook_data); -} - -static grub_err_t -grub_squash_dir (grub_device_t device, const char *path, - grub_fs_dir_hook_t hook, void *hook_data) -{ - struct grub_squash_dir_ctx ctx = { hook, hook_data }; - struct grub_squash_data *data = 0; - struct grub_fshelp_node *fdiro = 0; - struct grub_fshelp_node root; - grub_err_t err; - - data = squash_mount (device->disk); - if (! data) - return grub_errno; - - err = make_root_node (data, &root); - if (err) - return err; - - grub_fshelp_find_file (path, &root, &fdiro, grub_squash_iterate_dir, - grub_squash_read_symlink, GRUB_FSHELP_DIR); - if (!grub_errno) - grub_squash_iterate_dir (fdiro, grub_squash_dir_iter, &ctx); - - squash_unmount (data); - - return grub_errno; -} - -static grub_err_t -grub_squash_open (struct grub_file *file, const char *name) -{ - struct grub_squash_data *data = 0; - struct grub_fshelp_node *fdiro = 0; - struct grub_fshelp_node root; - grub_err_t err; - - data = squash_mount (file->device->disk); - if (! data) - return grub_errno; - - err = make_root_node (data, &root); - if (err) - return err; - - grub_fshelp_find_file (name, &root, &fdiro, grub_squash_iterate_dir, - grub_squash_read_symlink, GRUB_FSHELP_REG); - if (grub_errno) - { - squash_unmount (data); - return grub_errno; - } - - file->data = data; - data->ino.ino = fdiro->ino; - data->ino.block_sizes = NULL; - data->ino.cumulated_block_sizes = NULL; - data->ino.ino_chunk = fdiro->stack[fdiro->stsize - 1].ino_chunk; - data->ino.ino_offset = fdiro->stack[fdiro->stsize - 1].ino_offset; - - switch (fdiro->ino.type) - { - case grub_cpu_to_le16_compile_time (SQUASH_TYPE_LONG_REGULAR): - file->size = grub_le_to_cpu64 (fdiro->ino.long_file.size); - break; - case grub_cpu_to_le16_compile_time (SQUASH_TYPE_REGULAR): - file->size = grub_le_to_cpu32 (fdiro->ino.file.size); - break; - default: - { - grub_uint16_t type = grub_le_to_cpu16 (fdiro->ino.type); - grub_free (fdiro); - squash_unmount (data); - return grub_error (GRUB_ERR_BAD_FS, "unexpected ino type 0x%x", type); - } - } - - grub_free (fdiro); - - return GRUB_ERR_NONE; -} - -static grub_ssize_t -direct_read (struct grub_squash_data *data, - struct grub_squash_cache_inode *ino, - grub_off_t off, char *buf, grub_size_t len) -{ - grub_err_t err; - grub_off_t cumulated_uncompressed_size = 0; - grub_uint64_t a = 0; - grub_size_t i; - grub_size_t origlen = len; - - switch (ino->ino.type) - { - case grub_cpu_to_le16_compile_time (SQUASH_TYPE_LONG_REGULAR): - a = grub_le_to_cpu64 (ino->ino.long_file.chunk); - break; - case grub_cpu_to_le16_compile_time (SQUASH_TYPE_REGULAR): - a = grub_le_to_cpu32 (ino->ino.file.chunk); - break; - } - - if (!ino->block_sizes) - { - grub_off_t total_size = 0; - grub_size_t total_blocks; - grub_size_t block_offset = 0; - switch (ino->ino.type) - { - case grub_cpu_to_le16_compile_time (SQUASH_TYPE_LONG_REGULAR): - total_size = grub_le_to_cpu64 (ino->ino.long_file.size); - block_offset = ((char *) &ino->ino.long_file.block_size - - (char *) &ino->ino); - break; - case grub_cpu_to_le16_compile_time (SQUASH_TYPE_REGULAR): - total_size = grub_le_to_cpu32 (ino->ino.file.size); - block_offset = ((char *) &ino->ino.file.block_size - - (char *) &ino->ino); - break; - } - total_blocks = ((total_size + data->blksz - 1) >> data->log2_blksz); - ino->block_sizes = grub_malloc (total_blocks - * sizeof (ino->block_sizes[0])); - ino->cumulated_block_sizes = grub_malloc (total_blocks - * sizeof (ino->cumulated_block_sizes[0])); - if (!ino->block_sizes || !ino->cumulated_block_sizes) - { - grub_free (ino->block_sizes); - grub_free (ino->cumulated_block_sizes); - ino->block_sizes = 0; - ino->cumulated_block_sizes = 0; - return -1; - } - err = read_chunk (data, ino->block_sizes, - total_blocks * sizeof (ino->block_sizes[0]), - grub_le_to_cpu64 (data->sb.inodeoffset) - + ino->ino_chunk, - ino->ino_offset + block_offset); - if (err) - { - grub_free (ino->block_sizes); - grub_free (ino->cumulated_block_sizes); - ino->block_sizes = 0; - ino->cumulated_block_sizes = 0; - return -1; - } - ino->cumulated_block_sizes[0] = 0; - for (i = 1; i < total_blocks; i++) - ino->cumulated_block_sizes[i] = ino->cumulated_block_sizes[i - 1] - + (grub_le_to_cpu32 (ino->block_sizes[i - 1]) & ~SQUASH_BLOCK_FLAGS); - } - - if (a == 0) - a = sizeof (struct grub_squash_super); - i = off >> data->log2_blksz; - cumulated_uncompressed_size = data->blksz * (grub_disk_addr_t) i; - while (cumulated_uncompressed_size < off + len) - { - grub_size_t boff, curread; - boff = off - cumulated_uncompressed_size; - curread = data->blksz - boff; - if (curread > len) - curread = len; - if (!ino->block_sizes[i]) - { - /* Sparse block */ - grub_memset (buf, '\0', curread); - } - else if (!(ino->block_sizes[i] - & grub_cpu_to_le32_compile_time (SQUASH_BLOCK_UNCOMPRESSED))) - { - char *block; - grub_size_t csize; - csize = grub_le_to_cpu32 (ino->block_sizes[i]) & ~SQUASH_BLOCK_FLAGS; - block = grub_malloc (csize); - if (!block) - return -1; - err = grub_disk_read (data->disk, - (ino->cumulated_block_sizes[i] + a) - >> GRUB_DISK_SECTOR_BITS, - (ino->cumulated_block_sizes[i] + a) - & (GRUB_DISK_SECTOR_SIZE - 1), - csize, block); - if (err) - { - grub_free (block); - return -1; - } - if (data->decompress (block, csize, boff, buf, curread, data) - != (grub_ssize_t) curread) - { - grub_free (block); - if (!grub_errno) - grub_error (GRUB_ERR_BAD_FS, "incorrect compressed chunk"); - return -1; - } - grub_free (block); - } - else - err = grub_disk_read (data->disk, - (ino->cumulated_block_sizes[i] + a + boff) - >> GRUB_DISK_SECTOR_BITS, - (ino->cumulated_block_sizes[i] + a + boff) - & (GRUB_DISK_SECTOR_SIZE - 1), - curread, buf); - if (err) - return -1; - off += curread; - len -= curread; - buf += curread; - cumulated_uncompressed_size += grub_le_to_cpu32 (data->sb.block_size); - i++; - } - return origlen; -} - - -static grub_ssize_t -grub_squash_read (grub_file_t file, char *buf, grub_size_t len) -{ - struct grub_squash_data *data = file->data; - struct grub_squash_cache_inode *ino = &data->ino; - grub_off_t off = file->offset; - grub_err_t err; - grub_uint64_t a, b; - grub_uint32_t fragment = 0; - int compressed = 0; - struct grub_squash_frag_desc frag; - grub_off_t direct_len; - grub_uint64_t mask = grub_le_to_cpu32 (data->sb.block_size) - 1; - grub_size_t orig_len = len; - - switch (ino->ino.type) - { - case grub_cpu_to_le16_compile_time (SQUASH_TYPE_LONG_REGULAR): - fragment = grub_le_to_cpu32 (ino->ino.long_file.fragment); - break; - case grub_cpu_to_le16_compile_time (SQUASH_TYPE_REGULAR): - fragment = grub_le_to_cpu32 (ino->ino.file.fragment); - break; - } - - /* Squash may pack file tail as fragment. So read initial part directly and - get tail from fragments */ - direct_len = fragment == 0xffffffff ? file->size : file->size & ~mask; - if (off < direct_len) - { - grub_size_t read_len = direct_len - off; - grub_ssize_t res; - - if (read_len > len) - read_len = len; - res = direct_read (data, ino, off, buf, read_len); - if ((grub_size_t) res != read_len) - return -1; /* FIXME: is short read possible here? */ - len -= read_len; - if (!len) - return read_len; - buf += read_len; - off = 0; - } - else - off -= direct_len; - - err = read_chunk (data, &frag, sizeof (frag), - data->fragments, sizeof (frag) * fragment); - if (err) - return -1; - a = grub_le_to_cpu64 (frag.offset); - compressed = !(frag.size & grub_cpu_to_le32_compile_time (SQUASH_BLOCK_UNCOMPRESSED)); - if (ino->ino.type == grub_cpu_to_le16_compile_time (SQUASH_TYPE_LONG_REGULAR)) - b = grub_le_to_cpu32 (ino->ino.long_file.offset) + off; - else - b = grub_le_to_cpu32 (ino->ino.file.offset) + off; - - /* FIXME: cache uncompressed chunks. */ - if (compressed) - { - char *block; - block = grub_malloc (grub_le_to_cpu32 (frag.size)); - if (!block) - return -1; - err = grub_disk_read (data->disk, - a >> GRUB_DISK_SECTOR_BITS, - a & (GRUB_DISK_SECTOR_SIZE - 1), - grub_le_to_cpu32 (frag.size), block); - if (err) - { - grub_free (block); - return -1; - } - if (data->decompress (block, grub_le_to_cpu32 (frag.size), - b, buf, len, data) - != (grub_ssize_t) len) - { - grub_free (block); - if (!grub_errno) - grub_error (GRUB_ERR_BAD_FS, "incorrect compressed chunk"); - return -1; - } - grub_free (block); - } - else - { - err = grub_disk_read (data->disk, (a + b) >> GRUB_DISK_SECTOR_BITS, - (a + b) & (GRUB_DISK_SECTOR_SIZE - 1), len, buf); - if (err) - return -1; - } - return orig_len; -} - -static grub_err_t -grub_squash_close (grub_file_t file) -{ - squash_unmount (file->data); - return GRUB_ERR_NONE; -} - -static grub_err_t -grub_squash_mtime (grub_device_t dev, grub_int32_t *tm) -{ - struct grub_squash_data *data = 0; - - data = squash_mount (dev->disk); - if (! data) - return grub_errno; - *tm = grub_le_to_cpu32 (data->sb.creation_time); - squash_unmount (data); - return GRUB_ERR_NONE; -} - -static struct grub_fs grub_squash_fs = - { - .name = "squash4", - .fs_dir = grub_squash_dir, - .fs_open = grub_squash_open, - .fs_read = grub_squash_read, - .fs_close = grub_squash_close, - .fs_mtime = grub_squash_mtime, -#ifdef GRUB_UTIL - .reserved_first_sector = 0, - .blocklist_install = 0, -#endif - .next = 0 - }; - -GRUB_MOD_INIT(squash4) -{ - grub_fs_register (&grub_squash_fs); -} - -GRUB_MOD_FINI(squash4) -{ - grub_fs_unregister (&grub_squash_fs); -} - diff --git a/thirdparty/grub-2.04/grub-core/fs/tar.c b/thirdparty/grub-2.04/grub-core/fs/tar.c deleted file mode 100644 index 7d63e0c99..000000000 --- a/thirdparty/grub-2.04/grub-core/fs/tar.c +++ /dev/null @@ -1,345 +0,0 @@ -/* cpio.c - cpio and tar filesystem. */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2007,2008,2009,2013 Free Software Foundation, Inc. - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see . - */ - -#include -#include -#include - -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -/* tar support */ -#define MAGIC "ustar" -struct head -{ - char name[100]; - char mode[8]; - char uid[8]; - char gid[8]; - char size[12]; - char mtime[12]; - char chksum[8]; - char typeflag; - char linkname[100]; - char magic[6]; - char version[2]; - char uname[32]; - char gname[32]; - char devmajor[8]; - char devminor[8]; - char prefix[155]; -} GRUB_PACKED; - -static inline unsigned long long -read_number (const char *str, grub_size_t size) -{ - unsigned long long ret = 0; - while (size-- && *str >= '0' && *str <= '7') - ret = (ret << 3) | (*str++ & 0xf); - return ret; -} - -struct grub_archelp_data -{ - grub_disk_t disk; - grub_off_t hofs, next_hofs; - grub_off_t dofs; - grub_off_t size; - char *linkname; - grub_size_t linkname_alloc; -}; - -static grub_err_t -grub_cpio_find_file (struct grub_archelp_data *data, char **name, - grub_int32_t *mtime, - grub_uint32_t *mode) -{ - struct head hd; - int reread = 0, have_longname = 0, have_longlink = 0; - - data->hofs = data->next_hofs; - - for (reread = 0; reread < 3; reread++) - { - if (grub_disk_read (data->disk, 0, data->hofs, sizeof (hd), &hd)) - return grub_errno; - - if (!hd.name[0] && !hd.prefix[0]) - { - *mode = GRUB_ARCHELP_ATTR_END; - return GRUB_ERR_NONE; - } - - if (grub_memcmp (hd.magic, MAGIC, sizeof (MAGIC) - 1)) - return grub_error (GRUB_ERR_BAD_FS, "invalid tar archive"); - - if (hd.typeflag == 'L') - { - grub_err_t err; - grub_size_t namesize = read_number (hd.size, sizeof (hd.size)); - *name = grub_malloc (namesize + 1); - if (*name == NULL) - return grub_errno; - err = grub_disk_read (data->disk, 0, - data->hofs + GRUB_DISK_SECTOR_SIZE, namesize, - *name); - (*name)[namesize] = 0; - if (err) - return err; - data->hofs += GRUB_DISK_SECTOR_SIZE - + ((namesize + GRUB_DISK_SECTOR_SIZE - 1) & - ~(GRUB_DISK_SECTOR_SIZE - 1)); - have_longname = 1; - continue; - } - - if (hd.typeflag == 'K') - { - grub_err_t err; - grub_size_t linksize = read_number (hd.size, sizeof (hd.size)); - if (data->linkname_alloc < linksize + 1) - { - char *n; - n = grub_malloc (2 * (linksize + 1)); - if (!n) - return grub_errno; - grub_free (data->linkname); - data->linkname = n; - data->linkname_alloc = 2 * (linksize + 1); - } - - err = grub_disk_read (data->disk, 0, - data->hofs + GRUB_DISK_SECTOR_SIZE, linksize, - data->linkname); - if (err) - return err; - data->linkname[linksize] = 0; - data->hofs += GRUB_DISK_SECTOR_SIZE - + ((linksize + GRUB_DISK_SECTOR_SIZE - 1) & - ~(GRUB_DISK_SECTOR_SIZE - 1)); - have_longlink = 1; - continue; - } - - if (!have_longname) - { - grub_size_t extra_size = 0; - - while (extra_size < sizeof (hd.prefix) - && hd.prefix[extra_size]) - extra_size++; - *name = grub_malloc (sizeof (hd.name) + extra_size + 2); - if (*name == NULL) - return grub_errno; - if (hd.prefix[0]) - { - grub_memcpy (*name, hd.prefix, extra_size); - (*name)[extra_size++] = '/'; - } - grub_memcpy (*name + extra_size, hd.name, sizeof (hd.name)); - (*name)[extra_size + sizeof (hd.name)] = 0; - } - - data->size = read_number (hd.size, sizeof (hd.size)); - data->dofs = data->hofs + GRUB_DISK_SECTOR_SIZE; - data->next_hofs = data->dofs + ((data->size + GRUB_DISK_SECTOR_SIZE - 1) & - ~(GRUB_DISK_SECTOR_SIZE - 1)); - if (mtime) - *mtime = read_number (hd.mtime, sizeof (hd.mtime)); - if (mode) - { - *mode = read_number (hd.mode, sizeof (hd.mode)); - switch (hd.typeflag) - { - /* Hardlink. */ - case '1': - /* Symlink. */ - case '2': - *mode |= GRUB_ARCHELP_ATTR_LNK; - break; - case '0': - *mode |= GRUB_ARCHELP_ATTR_FILE; - break; - case '5': - *mode |= GRUB_ARCHELP_ATTR_DIR; - break; - } - } - if (!have_longlink) - { - if (data->linkname_alloc < 101) - { - char *n; - n = grub_malloc (101); - if (!n) - return grub_errno; - grub_free (data->linkname); - data->linkname = n; - data->linkname_alloc = 101; - } - grub_memcpy (data->linkname, hd.linkname, sizeof (hd.linkname)); - data->linkname[100] = 0; - } - return GRUB_ERR_NONE; - } - return GRUB_ERR_NONE; -} - -static char * -grub_cpio_get_link_target (struct grub_archelp_data *data) -{ - return grub_strdup (data->linkname); -} - -static void -grub_cpio_rewind (struct grub_archelp_data *data) -{ - data->next_hofs = 0; -} - -static struct grub_archelp_ops arcops = - { - .find_file = grub_cpio_find_file, - .get_link_target = grub_cpio_get_link_target, - .rewind = grub_cpio_rewind - }; - -static struct grub_archelp_data * -grub_cpio_mount (grub_disk_t disk) -{ - struct head hd; - struct grub_archelp_data *data; - - if (grub_disk_read (disk, 0, 0, sizeof (hd), &hd)) - goto fail; - - if (grub_memcmp (hd.magic, MAGIC, sizeof (MAGIC) - 1)) - goto fail; - - data = (struct grub_archelp_data *) grub_zalloc (sizeof (*data)); - if (!data) - goto fail; - - data->disk = disk; - - return data; - -fail: - grub_error (GRUB_ERR_BAD_FS, "not a tarfs filesystem"); - return 0; -} - -static grub_err_t -grub_cpio_dir (grub_device_t device, const char *path_in, - grub_fs_dir_hook_t hook, void *hook_data) -{ - struct grub_archelp_data *data; - grub_err_t err; - - data = grub_cpio_mount (device->disk); - if (!data) - return grub_errno; - - err = grub_archelp_dir (data, &arcops, - path_in, hook, hook_data); - - grub_free (data->linkname); - grub_free (data); - - return err; -} - -static grub_err_t -grub_cpio_open (grub_file_t file, const char *name_in) -{ - struct grub_archelp_data *data; - grub_err_t err; - - data = grub_cpio_mount (file->device->disk); - if (!data) - return grub_errno; - - err = grub_archelp_open (data, &arcops, name_in); - if (err) - { - grub_free (data->linkname); - grub_free (data); - } - else - { - file->data = data; - file->size = data->size; - } - return err; -} - -static grub_ssize_t -grub_cpio_read (grub_file_t file, char *buf, grub_size_t len) -{ - struct grub_archelp_data *data; - grub_ssize_t ret; - - data = file->data; - - data->disk->read_hook = file->read_hook; - data->disk->read_hook_data = file->read_hook_data; - ret = (grub_disk_read (data->disk, 0, data->dofs + file->offset, - len, buf)) ? -1 : (grub_ssize_t) len; - data->disk->read_hook = 0; - - return ret; -} - -static grub_err_t -grub_cpio_close (grub_file_t file) -{ - struct grub_archelp_data *data; - - data = file->data; - grub_free (data->linkname); - grub_free (data); - - return grub_errno; -} - -static struct grub_fs grub_cpio_fs = { - .name = "tarfs", - .fs_dir = grub_cpio_dir, - .fs_open = grub_cpio_open, - .fs_read = grub_cpio_read, - .fs_close = grub_cpio_close, -#ifdef GRUB_UTIL - .reserved_first_sector = 0, - .blocklist_install = 0, -#endif -}; - -GRUB_MOD_INIT (tar) -{ - grub_fs_register (&grub_cpio_fs); -} - -GRUB_MOD_FINI (tar) -{ - grub_fs_unregister (&grub_cpio_fs); -} diff --git a/thirdparty/grub-2.04/grub-core/fs/udf.c b/thirdparty/grub-2.04/grub-core/fs/udf.c deleted file mode 100644 index dc8b6e2d1..000000000 --- a/thirdparty/grub-2.04/grub-core/fs/udf.c +++ /dev/null @@ -1,1370 +0,0 @@ -/* udf.c - Universal Disk Format filesystem. */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2008,2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -#define GRUB_UDF_MAX_PDS 2 -#define GRUB_UDF_MAX_PMS 6 - -#define U16 grub_le_to_cpu16 -#define U32 grub_le_to_cpu32 -#define U64 grub_le_to_cpu64 - -#define GRUB_UDF_TAG_IDENT_PVD 0x0001 -#define GRUB_UDF_TAG_IDENT_AVDP 0x0002 -#define GRUB_UDF_TAG_IDENT_VDP 0x0003 -#define GRUB_UDF_TAG_IDENT_IUVD 0x0004 -#define GRUB_UDF_TAG_IDENT_PD 0x0005 -#define GRUB_UDF_TAG_IDENT_LVD 0x0006 -#define GRUB_UDF_TAG_IDENT_USD 0x0007 -#define GRUB_UDF_TAG_IDENT_TD 0x0008 -#define GRUB_UDF_TAG_IDENT_LVID 0x0009 - -#define GRUB_UDF_TAG_IDENT_FSD 0x0100 -#define GRUB_UDF_TAG_IDENT_FID 0x0101 -#define GRUB_UDF_TAG_IDENT_AED 0x0102 -#define GRUB_UDF_TAG_IDENT_IE 0x0103 -#define GRUB_UDF_TAG_IDENT_TE 0x0104 -#define GRUB_UDF_TAG_IDENT_FE 0x0105 -#define GRUB_UDF_TAG_IDENT_EAHD 0x0106 -#define GRUB_UDF_TAG_IDENT_USE 0x0107 -#define GRUB_UDF_TAG_IDENT_SBD 0x0108 -#define GRUB_UDF_TAG_IDENT_PIE 0x0109 -#define GRUB_UDF_TAG_IDENT_EFE 0x010A - -#define GRUB_UDF_ICBTAG_TYPE_UNDEF 0x00 -#define GRUB_UDF_ICBTAG_TYPE_USE 0x01 -#define GRUB_UDF_ICBTAG_TYPE_PIE 0x02 -#define GRUB_UDF_ICBTAG_TYPE_IE 0x03 -#define GRUB_UDF_ICBTAG_TYPE_DIRECTORY 0x04 -#define GRUB_UDF_ICBTAG_TYPE_REGULAR 0x05 -#define GRUB_UDF_ICBTAG_TYPE_BLOCK 0x06 -#define GRUB_UDF_ICBTAG_TYPE_CHAR 0x07 -#define GRUB_UDF_ICBTAG_TYPE_EA 0x08 -#define GRUB_UDF_ICBTAG_TYPE_FIFO 0x09 -#define GRUB_UDF_ICBTAG_TYPE_SOCKET 0x0A -#define GRUB_UDF_ICBTAG_TYPE_TE 0x0B -#define GRUB_UDF_ICBTAG_TYPE_SYMLINK 0x0C -#define GRUB_UDF_ICBTAG_TYPE_STREAMDIR 0x0D - -#define GRUB_UDF_ICBTAG_FLAG_AD_MASK 0x0007 -#define GRUB_UDF_ICBTAG_FLAG_AD_SHORT 0x0000 -#define GRUB_UDF_ICBTAG_FLAG_AD_LONG 0x0001 -#define GRUB_UDF_ICBTAG_FLAG_AD_EXT 0x0002 -#define GRUB_UDF_ICBTAG_FLAG_AD_IN_ICB 0x0003 - -#define GRUB_UDF_EXT_NORMAL 0x00000000 -#define GRUB_UDF_EXT_NREC_ALLOC 0x40000000 -#define GRUB_UDF_EXT_NREC_NALLOC 0x80000000 -#define GRUB_UDF_EXT_MASK 0xC0000000 - -#define GRUB_UDF_FID_CHAR_HIDDEN 0x01 -#define GRUB_UDF_FID_CHAR_DIRECTORY 0x02 -#define GRUB_UDF_FID_CHAR_DELETED 0x04 -#define GRUB_UDF_FID_CHAR_PARENT 0x08 -#define GRUB_UDF_FID_CHAR_METADATA 0x10 - -#define GRUB_UDF_STD_IDENT_BEA01 "BEA01" -#define GRUB_UDF_STD_IDENT_BOOT2 "BOOT2" -#define GRUB_UDF_STD_IDENT_CD001 "CD001" -#define GRUB_UDF_STD_IDENT_CDW02 "CDW02" -#define GRUB_UDF_STD_IDENT_NSR02 "NSR02" -#define GRUB_UDF_STD_IDENT_NSR03 "NSR03" -#define GRUB_UDF_STD_IDENT_TEA01 "TEA01" - -#define GRUB_UDF_CHARSPEC_TYPE_CS0 0x00 -#define GRUB_UDF_CHARSPEC_TYPE_CS1 0x01 -#define GRUB_UDF_CHARSPEC_TYPE_CS2 0x02 -#define GRUB_UDF_CHARSPEC_TYPE_CS3 0x03 -#define GRUB_UDF_CHARSPEC_TYPE_CS4 0x04 -#define GRUB_UDF_CHARSPEC_TYPE_CS5 0x05 -#define GRUB_UDF_CHARSPEC_TYPE_CS6 0x06 -#define GRUB_UDF_CHARSPEC_TYPE_CS7 0x07 -#define GRUB_UDF_CHARSPEC_TYPE_CS8 0x08 - -#define GRUB_UDF_PARTMAP_TYPE_1 1 -#define GRUB_UDF_PARTMAP_TYPE_2 2 - -struct grub_udf_lb_addr -{ - grub_uint32_t block_num; - grub_uint16_t part_ref; -} GRUB_PACKED; - -struct grub_udf_short_ad -{ - grub_uint32_t length; - grub_uint32_t position; -} GRUB_PACKED; - -struct grub_udf_long_ad -{ - grub_uint32_t length; - struct grub_udf_lb_addr block; - grub_uint8_t imp_use[6]; -} GRUB_PACKED; - -struct grub_udf_extent_ad -{ - grub_uint32_t length; - grub_uint32_t start; -} GRUB_PACKED; - -struct grub_udf_charspec -{ - grub_uint8_t charset_type; - grub_uint8_t charset_info[63]; -} GRUB_PACKED; - -struct grub_udf_timestamp -{ - grub_uint16_t type_and_timezone; - grub_uint16_t year; - grub_uint8_t month; - grub_uint8_t day; - grub_uint8_t hour; - grub_uint8_t minute; - grub_uint8_t second; - grub_uint8_t centi_seconds; - grub_uint8_t hundreds_of_micro_seconds; - grub_uint8_t micro_seconds; -} GRUB_PACKED; - -struct grub_udf_regid -{ - grub_uint8_t flags; - grub_uint8_t ident[23]; - grub_uint8_t ident_suffix[8]; -} GRUB_PACKED; - -struct grub_udf_tag -{ - grub_uint16_t tag_ident; - grub_uint16_t desc_version; - grub_uint8_t tag_checksum; - grub_uint8_t reserved; - grub_uint16_t tag_serial_number; - grub_uint16_t desc_crc; - grub_uint16_t desc_crc_length; - grub_uint32_t tag_location; -} GRUB_PACKED; - -struct grub_udf_fileset -{ - struct grub_udf_tag tag; - struct grub_udf_timestamp datetime; - grub_uint16_t interchange_level; - grub_uint16_t max_interchange_level; - grub_uint32_t charset_list; - grub_uint32_t max_charset_list; - grub_uint32_t fileset_num; - grub_uint32_t fileset_desc_num; - struct grub_udf_charspec vol_charset; - grub_uint8_t vol_ident[128]; - struct grub_udf_charspec fileset_charset; - grub_uint8_t fileset_ident[32]; - grub_uint8_t copyright_file_ident[32]; - grub_uint8_t abstract_file_ident[32]; - struct grub_udf_long_ad root_icb; - struct grub_udf_regid domain_ident; - struct grub_udf_long_ad next_ext; - struct grub_udf_long_ad streamdir_icb; -} GRUB_PACKED; - -struct grub_udf_icbtag -{ - grub_uint32_t prior_recorded_num_direct_entries; - grub_uint16_t strategy_type; - grub_uint16_t strategy_parameter; - grub_uint16_t num_entries; - grub_uint8_t reserved; - grub_uint8_t file_type; - struct grub_udf_lb_addr parent_idb; - grub_uint16_t flags; -} GRUB_PACKED; - -struct grub_udf_file_ident -{ - struct grub_udf_tag tag; - grub_uint16_t version_num; - grub_uint8_t characteristics; -#define MAX_FILE_IDENT_LENGTH 256 - grub_uint8_t file_ident_length; - struct grub_udf_long_ad icb; - grub_uint16_t imp_use_length; -} GRUB_PACKED; - -struct grub_udf_file_entry -{ - struct grub_udf_tag tag; - struct grub_udf_icbtag icbtag; - grub_uint32_t uid; - grub_uint32_t gid; - grub_uint32_t permissions; - grub_uint16_t link_count; - grub_uint8_t record_format; - grub_uint8_t record_display_attr; - grub_uint32_t record_length; - grub_uint64_t file_size; - grub_uint64_t blocks_recorded; - struct grub_udf_timestamp access_time; - struct grub_udf_timestamp modification_time; - struct grub_udf_timestamp attr_time; - grub_uint32_t checkpoint; - struct grub_udf_long_ad extended_attr_idb; - struct grub_udf_regid imp_ident; - grub_uint64_t unique_id; - grub_uint32_t ext_attr_length; - grub_uint32_t alloc_descs_length; - grub_uint8_t ext_attr[0]; -} GRUB_PACKED; - -struct grub_udf_extended_file_entry -{ - struct grub_udf_tag tag; - struct grub_udf_icbtag icbtag; - grub_uint32_t uid; - grub_uint32_t gid; - grub_uint32_t permissions; - grub_uint16_t link_count; - grub_uint8_t record_format; - grub_uint8_t record_display_attr; - grub_uint32_t record_length; - grub_uint64_t file_size; - grub_uint64_t object_size; - grub_uint64_t blocks_recorded; - struct grub_udf_timestamp access_time; - struct grub_udf_timestamp modification_time; - struct grub_udf_timestamp create_time; - struct grub_udf_timestamp attr_time; - grub_uint32_t checkpoint; - grub_uint32_t reserved; - struct grub_udf_long_ad extended_attr_icb; - struct grub_udf_long_ad streamdir_icb; - struct grub_udf_regid imp_ident; - grub_uint64_t unique_id; - grub_uint32_t ext_attr_length; - grub_uint32_t alloc_descs_length; - grub_uint8_t ext_attr[0]; -} GRUB_PACKED; - -struct grub_udf_vrs -{ - grub_uint8_t type; - grub_uint8_t magic[5]; - grub_uint8_t version; -} GRUB_PACKED; - -struct grub_udf_avdp -{ - struct grub_udf_tag tag; - struct grub_udf_extent_ad vds; -} GRUB_PACKED; - -struct grub_udf_pd -{ - struct grub_udf_tag tag; - grub_uint32_t seq_num; - grub_uint16_t flags; - grub_uint16_t part_num; - struct grub_udf_regid contents; - grub_uint8_t contents_use[128]; - grub_uint32_t access_type; - grub_uint32_t start; - grub_uint32_t length; -} GRUB_PACKED; - -struct grub_udf_partmap -{ - grub_uint8_t type; - grub_uint8_t length; - union - { - struct - { - grub_uint16_t seq_num; - grub_uint16_t part_num; - } type1; - - struct - { - grub_uint8_t ident[62]; - } type2; - }; -} GRUB_PACKED; - -struct grub_udf_pvd -{ - struct grub_udf_tag tag; - grub_uint32_t seq_num; - grub_uint32_t pvd_num; - grub_uint8_t ident[32]; - grub_uint16_t vol_seq_num; - grub_uint16_t max_vol_seq_num; - grub_uint16_t interchange_level; - grub_uint16_t max_interchange_level; - grub_uint32_t charset_list; - grub_uint32_t max_charset_list; - grub_uint8_t volset_ident[128]; - struct grub_udf_charspec desc_charset; - struct grub_udf_charspec expl_charset; - struct grub_udf_extent_ad vol_abstract; - struct grub_udf_extent_ad vol_copyright; - struct grub_udf_regid app_ident; - struct grub_udf_timestamp recording_time; - struct grub_udf_regid imp_ident; - grub_uint8_t imp_use[64]; - grub_uint32_t pred_vds_loc; - grub_uint16_t flags; - grub_uint8_t reserved[22]; -} GRUB_PACKED; - -struct grub_udf_lvd -{ - struct grub_udf_tag tag; - grub_uint32_t seq_num; - struct grub_udf_charspec charset; - grub_uint8_t ident[128]; - grub_uint32_t bsize; - struct grub_udf_regid domain_ident; - struct grub_udf_long_ad root_fileset; - grub_uint32_t map_table_length; - grub_uint32_t num_part_maps; - struct grub_udf_regid imp_ident; - grub_uint8_t imp_use[128]; - struct grub_udf_extent_ad integrity_seq_ext; - grub_uint8_t part_maps[1608]; -} GRUB_PACKED; - -struct grub_udf_aed -{ - struct grub_udf_tag tag; - grub_uint32_t prev_ae; - grub_uint32_t ae_len; -} GRUB_PACKED; - -struct grub_udf_data -{ - grub_disk_t disk; - struct grub_udf_pvd pvd; - struct grub_udf_lvd lvd; - struct grub_udf_pd pds[GRUB_UDF_MAX_PDS]; - struct grub_udf_partmap *pms[GRUB_UDF_MAX_PMS]; - struct grub_udf_long_ad root_icb; - int npd, npm, lbshift; -}; - -struct grub_fshelp_node -{ - struct grub_udf_data *data; - int part_ref; - union - { - struct grub_udf_file_entry fe; - struct grub_udf_extended_file_entry efe; - char raw[0]; - } block; -}; - -static inline grub_size_t -get_fshelp_size (struct grub_udf_data *data) -{ - struct grub_fshelp_node *x = NULL; - return sizeof (*x) - + (1 << (GRUB_DISK_SECTOR_BITS - + data->lbshift)) - sizeof (x->block); -} - -static grub_dl_t my_mod; - -static grub_uint32_t -grub_udf_get_block (struct grub_udf_data *data, - grub_uint16_t part_ref, grub_uint32_t block) -{ - part_ref = U16 (part_ref); - - if (part_ref >= data->npm) - { - grub_error (GRUB_ERR_BAD_FS, "invalid part ref"); - return 0; - } - - return (U32 (data->pds[data->pms[part_ref]->type1.part_num].start) - + U32 (block)); -} - -static grub_err_t -grub_udf_read_icb (struct grub_udf_data *data, - struct grub_udf_long_ad *icb, - struct grub_fshelp_node *node) -{ - grub_uint32_t block; - - block = grub_udf_get_block (data, - icb->block.part_ref, - icb->block.block_num); - - if (grub_errno) - return grub_errno; - - if (grub_disk_read (data->disk, block << data->lbshift, 0, - 1 << (GRUB_DISK_SECTOR_BITS - + data->lbshift), - &node->block)) - return grub_errno; - - if ((U16 (node->block.fe.tag.tag_ident) != GRUB_UDF_TAG_IDENT_FE) && - (U16 (node->block.fe.tag.tag_ident) != GRUB_UDF_TAG_IDENT_EFE)) - return grub_error (GRUB_ERR_BAD_FS, "invalid fe/efe descriptor"); - - node->part_ref = icb->block.part_ref; - node->data = data; - return 0; -} - -static grub_disk_addr_t -grub_udf_read_block (grub_fshelp_node_t node, grub_disk_addr_t fileblock) -{ - char *buf = NULL; - char *ptr; - grub_ssize_t len; - grub_disk_addr_t filebytes; - - switch (U16 (node->block.fe.tag.tag_ident)) - { - case GRUB_UDF_TAG_IDENT_FE: - ptr = (char *) &node->block.fe.ext_attr[0] + U32 (node->block.fe.ext_attr_length); - len = U32 (node->block.fe.alloc_descs_length); - break; - - case GRUB_UDF_TAG_IDENT_EFE: - ptr = (char *) &node->block.efe.ext_attr[0] + U32 (node->block.efe.ext_attr_length); - len = U32 (node->block.efe.alloc_descs_length); - break; - - default: - grub_error (GRUB_ERR_BAD_FS, "invalid file entry"); - return 0; - } - - if ((U16 (node->block.fe.icbtag.flags) & GRUB_UDF_ICBTAG_FLAG_AD_MASK) - == GRUB_UDF_ICBTAG_FLAG_AD_SHORT) - { - struct grub_udf_short_ad *ad = (struct grub_udf_short_ad *) ptr; - - filebytes = fileblock * U32 (node->data->lvd.bsize); - while (len >= (grub_ssize_t) sizeof (struct grub_udf_short_ad)) - { - grub_uint32_t adlen = U32 (ad->length) & 0x3fffffff; - grub_uint32_t adtype = U32 (ad->length) >> 30; - if (adtype == 3) - { - struct grub_udf_aed *extension; - grub_disk_addr_t sec = grub_udf_get_block(node->data, - node->part_ref, - ad->position); - if (!buf) - { - buf = grub_malloc (U32 (node->data->lvd.bsize)); - if (!buf) - return 0; - } - if (grub_disk_read (node->data->disk, sec << node->data->lbshift, - 0, adlen, buf)) - goto fail; - - extension = (struct grub_udf_aed *) buf; - if (U16 (extension->tag.tag_ident) != GRUB_UDF_TAG_IDENT_AED) - { - grub_error (GRUB_ERR_BAD_FS, "invalid aed tag"); - goto fail; - } - - len = U32 (extension->ae_len); - ad = (struct grub_udf_short_ad *) - (buf + sizeof (struct grub_udf_aed)); - continue; - } - - if (filebytes < adlen) - { - grub_uint32_t ad_pos = ad->position; - grub_free (buf); - return ((U32 (ad_pos) & GRUB_UDF_EXT_MASK) ? 0 : - (grub_udf_get_block (node->data, node->part_ref, ad_pos) - + (filebytes >> (GRUB_DISK_SECTOR_BITS - + node->data->lbshift)))); - } - - filebytes -= adlen; - ad++; - len -= sizeof (struct grub_udf_short_ad); - } - } - else - { - struct grub_udf_long_ad *ad = (struct grub_udf_long_ad *) ptr; - - filebytes = fileblock * U32 (node->data->lvd.bsize); - while (len >= (grub_ssize_t) sizeof (struct grub_udf_long_ad)) - { - grub_uint32_t adlen = U32 (ad->length) & 0x3fffffff; - grub_uint32_t adtype = U32 (ad->length) >> 30; - if (adtype == 3) - { - struct grub_udf_aed *extension; - grub_disk_addr_t sec = grub_udf_get_block(node->data, - ad->block.part_ref, - ad->block.block_num); - if (!buf) - { - buf = grub_malloc (U32 (node->data->lvd.bsize)); - if (!buf) - return 0; - } - if (grub_disk_read (node->data->disk, sec << node->data->lbshift, - 0, adlen, buf)) - goto fail; - - extension = (struct grub_udf_aed *) buf; - if (U16 (extension->tag.tag_ident) != GRUB_UDF_TAG_IDENT_AED) - { - grub_error (GRUB_ERR_BAD_FS, "invalid aed tag"); - goto fail; - } - - len = U32 (extension->ae_len); - ad = (struct grub_udf_long_ad *) - (buf + sizeof (struct grub_udf_aed)); - continue; - } - - if (filebytes < adlen) - { - grub_uint32_t ad_block_num = ad->block.block_num; - grub_uint32_t ad_part_ref = ad->block.part_ref; - grub_free (buf); - return ((U32 (ad_block_num) & GRUB_UDF_EXT_MASK) ? 0 : - (grub_udf_get_block (node->data, ad_part_ref, - ad_block_num) - + (filebytes >> (GRUB_DISK_SECTOR_BITS - + node->data->lbshift)))); - } - - filebytes -= adlen; - ad++; - len -= sizeof (struct grub_udf_long_ad); - } - } - -fail: - grub_free (buf); - - return 0; -} - -static grub_ssize_t -grub_udf_read_file (grub_fshelp_node_t node, - grub_disk_read_hook_t read_hook, void *read_hook_data, - grub_off_t pos, grub_size_t len, char *buf) -{ - switch (U16 (node->block.fe.icbtag.flags) & GRUB_UDF_ICBTAG_FLAG_AD_MASK) - { - case GRUB_UDF_ICBTAG_FLAG_AD_IN_ICB: - { - char *ptr; - - ptr = ((U16 (node->block.fe.tag.tag_ident) == GRUB_UDF_TAG_IDENT_FE) ? - ((char *) &node->block.fe.ext_attr[0] - + U32 (node->block.fe.ext_attr_length)) : - ((char *) &node->block.efe.ext_attr[0] - + U32 (node->block.efe.ext_attr_length))); - - grub_memcpy (buf, ptr + pos, len); - - return len; - } - - case GRUB_UDF_ICBTAG_FLAG_AD_EXT: - grub_error (GRUB_ERR_BAD_FS, "invalid extent type"); - return 0; - } - - return grub_fshelp_read_file (node->data->disk, node, - read_hook, read_hook_data, - pos, len, buf, grub_udf_read_block, - U64 (node->block.fe.file_size), - node->data->lbshift, 0); -} - -static unsigned sblocklist[] = { 256, 512, 0 }; - -static struct grub_udf_data * -grub_udf_mount (grub_disk_t disk) -{ - struct grub_udf_data *data = 0; - struct grub_udf_fileset root_fs; - unsigned *sblklist; - grub_uint32_t block, vblock; - int i, lbshift; - - data = grub_malloc (sizeof (struct grub_udf_data)); - if (!data) - return 0; - - data->disk = disk; - - /* Search for Anchor Volume Descriptor Pointer (AVDP) - * and determine logical block size. */ - block = 0; - for (lbshift = 0; lbshift < 4; lbshift++) - { - for (sblklist = sblocklist; *sblklist; sblklist++) - { - struct grub_udf_avdp avdp; - - if (grub_disk_read (disk, *sblklist << lbshift, 0, - sizeof (struct grub_udf_avdp), &avdp)) - { - grub_error (GRUB_ERR_BAD_FS, "not an UDF filesystem"); - goto fail; - } - - if (U16 (avdp.tag.tag_ident) == GRUB_UDF_TAG_IDENT_AVDP && - U32 (avdp.tag.tag_location) == *sblklist) - { - block = U32 (avdp.vds.start); - break; - } - } - - if (block) - break; - } - - if (!block) - { - grub_error (GRUB_ERR_BAD_FS, "not an UDF filesystem"); - goto fail; - } - data->lbshift = lbshift; - - /* Search for Volume Recognition Sequence (VRS). */ - for (vblock = (32767 >> (lbshift + GRUB_DISK_SECTOR_BITS)) + 1;; - vblock += (2047 >> (lbshift + GRUB_DISK_SECTOR_BITS)) + 1) - { - struct grub_udf_vrs vrs; - - if (grub_disk_read (disk, vblock << lbshift, 0, - sizeof (struct grub_udf_vrs), &vrs)) - { - grub_error (GRUB_ERR_BAD_FS, "not an UDF filesystem"); - goto fail; - } - - if ((!grub_memcmp (vrs.magic, GRUB_UDF_STD_IDENT_NSR03, 5)) || - (!grub_memcmp (vrs.magic, GRUB_UDF_STD_IDENT_NSR02, 5))) - break; - - if ((grub_memcmp (vrs.magic, GRUB_UDF_STD_IDENT_BEA01, 5)) && - (grub_memcmp (vrs.magic, GRUB_UDF_STD_IDENT_BOOT2, 5)) && - (grub_memcmp (vrs.magic, GRUB_UDF_STD_IDENT_CD001, 5)) && - (grub_memcmp (vrs.magic, GRUB_UDF_STD_IDENT_CDW02, 5)) && - (grub_memcmp (vrs.magic, GRUB_UDF_STD_IDENT_TEA01, 5))) - { - grub_error (GRUB_ERR_BAD_FS, "not an UDF filesystem"); - goto fail; - } - } - - data->npd = data->npm = 0; - /* Locate Partition Descriptor (PD) and Logical Volume Descriptor (LVD). */ - while (1) - { - struct grub_udf_tag tag; - - if (grub_disk_read (disk, block << lbshift, 0, - sizeof (struct grub_udf_tag), &tag)) - { - grub_error (GRUB_ERR_BAD_FS, "not an UDF filesystem"); - goto fail; - } - - tag.tag_ident = U16 (tag.tag_ident); - if (tag.tag_ident == GRUB_UDF_TAG_IDENT_PVD) - { - if (grub_disk_read (disk, block << lbshift, 0, - sizeof (struct grub_udf_pvd), - &data->pvd)) - { - grub_error (GRUB_ERR_BAD_FS, "not an UDF filesystem"); - goto fail; - } - } - else if (tag.tag_ident == GRUB_UDF_TAG_IDENT_PD) - { - if (data->npd >= GRUB_UDF_MAX_PDS) - { - grub_error (GRUB_ERR_BAD_FS, "too many PDs"); - goto fail; - } - - if (grub_disk_read (disk, block << lbshift, 0, - sizeof (struct grub_udf_pd), - &data->pds[data->npd])) - { - grub_error (GRUB_ERR_BAD_FS, "not an UDF filesystem"); - goto fail; - } - - data->npd++; - } - else if (tag.tag_ident == GRUB_UDF_TAG_IDENT_LVD) - { - int k; - - struct grub_udf_partmap *ppm; - - if (grub_disk_read (disk, block << lbshift, 0, - sizeof (struct grub_udf_lvd), - &data->lvd)) - { - grub_error (GRUB_ERR_BAD_FS, "not an UDF filesystem"); - goto fail; - } - - if (data->npm + U32 (data->lvd.num_part_maps) > GRUB_UDF_MAX_PMS) - { - grub_error (GRUB_ERR_BAD_FS, "too many partition maps"); - goto fail; - } - - ppm = (struct grub_udf_partmap *) &data->lvd.part_maps; - for (k = U32 (data->lvd.num_part_maps); k > 0; k--) - { - if (ppm->type != GRUB_UDF_PARTMAP_TYPE_1) - { - grub_error (GRUB_ERR_BAD_FS, "partmap type not supported"); - goto fail; - } - - data->pms[data->npm++] = ppm; - ppm = (struct grub_udf_partmap *) ((char *) ppm + - U32 (ppm->length)); - } - } - else if (tag.tag_ident > GRUB_UDF_TAG_IDENT_TD) - { - grub_error (GRUB_ERR_BAD_FS, "invalid tag ident"); - goto fail; - } - else if (tag.tag_ident == GRUB_UDF_TAG_IDENT_TD) - break; - - block++; - } - - for (i = 0; i < data->npm; i++) - { - int j; - - for (j = 0; j < data->npd; j++) - if (data->pms[i]->type1.part_num == data->pds[j].part_num) - { - data->pms[i]->type1.part_num = j; - break; - } - - if (j == data->npd) - { - grub_error (GRUB_ERR_BAD_FS, "can\'t find PD"); - goto fail; - } - } - - block = grub_udf_get_block (data, - data->lvd.root_fileset.block.part_ref, - data->lvd.root_fileset.block.block_num); - - if (grub_errno) - goto fail; - - if (grub_disk_read (disk, block << lbshift, 0, - sizeof (struct grub_udf_fileset), &root_fs)) - { - grub_error (GRUB_ERR_BAD_FS, "not an UDF filesystem"); - goto fail; - } - - if (U16 (root_fs.tag.tag_ident) != GRUB_UDF_TAG_IDENT_FSD) - { - grub_error (GRUB_ERR_BAD_FS, "invalid fileset descriptor"); - goto fail; - } - - data->root_icb = root_fs.root_icb; - - return data; - -fail: - grub_free (data); - return 0; -} - -#ifdef GRUB_UTIL -grub_disk_addr_t -grub_udf_get_cluster_sector (grub_disk_t disk, grub_uint64_t *sec_per_lcn) -{ - grub_disk_addr_t ret; - static struct grub_udf_data *data; - - data = grub_udf_mount (disk); - if (!data) - return 0; - - ret = U32 (data->pds[data->pms[0]->type1.part_num].start); - *sec_per_lcn = 1ULL << data->lbshift; - grub_free (data); - return ret; -} -#endif - -static char * -read_string (const grub_uint8_t *raw, grub_size_t sz, char *outbuf) -{ - grub_uint16_t *utf16 = NULL; - grub_size_t utf16len = 0; - - if (sz == 0) - return NULL; - - if (raw[0] != 8 && raw[0] != 16) - return NULL; - - if (raw[0] == 8) - { - unsigned i; - utf16len = sz - 1; - utf16 = grub_malloc (utf16len * sizeof (utf16[0])); - if (!utf16) - return NULL; - for (i = 0; i < utf16len; i++) - utf16[i] = raw[i + 1]; - } - if (raw[0] == 16) - { - unsigned i; - utf16len = (sz - 1) / 2; - utf16 = grub_malloc (utf16len * sizeof (utf16[0])); - if (!utf16) - return NULL; - for (i = 0; i < utf16len; i++) - utf16[i] = (raw[2 * i + 1] << 8) | raw[2*i + 2]; - } - if (!outbuf) - outbuf = grub_malloc (utf16len * GRUB_MAX_UTF8_PER_UTF16 + 1); - if (outbuf) - *grub_utf16_to_utf8 ((grub_uint8_t *) outbuf, utf16, utf16len) = '\0'; - grub_free (utf16); - return outbuf; -} - -static char * -read_dstring (const grub_uint8_t *raw, grub_size_t sz) -{ - grub_size_t len; - - if (raw[0] == 0) { - char *outbuf = grub_malloc (1); - if (!outbuf) - return NULL; - outbuf[0] = 0; - return outbuf; - } - - len = raw[sz - 1]; - if (len > sz - 1) - len = sz - 1; - return read_string (raw, len, NULL); -} - -static int -grub_udf_iterate_dir (grub_fshelp_node_t dir, - grub_fshelp_iterate_dir_hook_t hook, void *hook_data) -{ - grub_fshelp_node_t child; - struct grub_udf_file_ident dirent; - grub_off_t offset = 0; - - child = grub_malloc (get_fshelp_size (dir->data)); - if (!child) - return 0; - - /* The current directory is not stored. */ - grub_memcpy (child, dir, get_fshelp_size (dir->data)); - - if (hook (".", GRUB_FSHELP_DIR, child, hook_data)) - return 1; - - while (offset < U64 (dir->block.fe.file_size)) - { - if (grub_udf_read_file (dir, 0, 0, offset, sizeof (dirent), - (char *) &dirent) != sizeof (dirent)) - return 0; - - if (U16 (dirent.tag.tag_ident) != GRUB_UDF_TAG_IDENT_FID) - { - grub_error (GRUB_ERR_BAD_FS, "invalid fid tag"); - return 0; - } - - offset += sizeof (dirent) + U16 (dirent.imp_use_length); - if (!(dirent.characteristics & GRUB_UDF_FID_CHAR_DELETED)) - { - child = grub_malloc (get_fshelp_size (dir->data)); - if (!child) - return 0; - - if (grub_udf_read_icb (dir->data, &dirent.icb, child)) - return 0; - - if (dirent.characteristics & GRUB_UDF_FID_CHAR_PARENT) - { - /* This is the parent directory. */ - if (hook ("..", GRUB_FSHELP_DIR, child, hook_data)) - return 1; - } - else - { - enum grub_fshelp_filetype type; - char *filename; - grub_uint8_t raw[MAX_FILE_IDENT_LENGTH]; - - type = ((dirent.characteristics & GRUB_UDF_FID_CHAR_DIRECTORY) ? - (GRUB_FSHELP_DIR) : (GRUB_FSHELP_REG)); - if (child->block.fe.icbtag.file_type == GRUB_UDF_ICBTAG_TYPE_SYMLINK) - type = GRUB_FSHELP_SYMLINK; - - if ((grub_udf_read_file (dir, 0, 0, offset, - dirent.file_ident_length, - (char *) raw)) - != dirent.file_ident_length) - return 0; - - filename = read_string (raw, dirent.file_ident_length, 0); - if (!filename) - grub_print_error (); - - if (filename && hook (filename, type, child, hook_data)) - { - grub_free (filename); - return 1; - } - grub_free (filename); - } - } - - /* Align to dword boundary. */ - offset = (offset + dirent.file_ident_length + 3) & (~3); - } - - return 0; -} - -static char * -grub_udf_read_symlink (grub_fshelp_node_t node) -{ - grub_size_t sz = U64 (node->block.fe.file_size); - grub_uint8_t *raw; - const grub_uint8_t *ptr; - char *out, *optr; - - if (sz < 4) - return NULL; - raw = grub_malloc (sz); - if (!raw) - return NULL; - if (grub_udf_read_file (node, NULL, NULL, 0, sz, (char *) raw) < 0) - { - grub_free (raw); - return NULL; - } - - out = grub_malloc (sz * 2 + 1); - if (!out) - { - grub_free (raw); - return NULL; - } - - optr = out; - - for (ptr = raw; ptr < raw + sz; ) - { - grub_size_t s; - if ((grub_size_t) (ptr - raw + 4) > sz) - goto fail; - if (!(ptr[2] == 0 && ptr[3] == 0)) - goto fail; - s = 4 + ptr[1]; - if ((grub_size_t) (ptr - raw + s) > sz) - goto fail; - switch (*ptr) - { - case 1: - if (ptr[1]) - goto fail; - /* Fallthrough. */ - case 2: - /* in 4 bytes. out: 1 byte. */ - optr = out; - *optr++ = '/'; - break; - case 3: - /* in 4 bytes. out: 3 bytes. */ - if (optr != out) - *optr++ = '/'; - *optr++ = '.'; - *optr++ = '.'; - break; - case 4: - /* in 4 bytes. out: 2 bytes. */ - if (optr != out) - *optr++ = '/'; - *optr++ = '.'; - break; - case 5: - /* in 4 + n bytes. out, at most: 1 + 2 * n bytes. */ - if (optr != out) - *optr++ = '/'; - if (!read_string (ptr + 4, s - 4, optr)) - goto fail; - optr += grub_strlen (optr); - break; - default: - goto fail; - } - ptr += s; - } - *optr = 0; - grub_free (raw); - return out; - - fail: - grub_free (raw); - grub_free (out); - grub_error (GRUB_ERR_BAD_FS, "invalid symlink"); - return NULL; -} - -/* Context for grub_udf_dir. */ -struct grub_udf_dir_ctx -{ - grub_fs_dir_hook_t hook; - void *hook_data; -}; - -/* Helper for grub_udf_dir. */ -static int -grub_udf_dir_iter (const char *filename, enum grub_fshelp_filetype filetype, - grub_fshelp_node_t node, void *data) -{ - struct grub_udf_dir_ctx *ctx = data; - struct grub_dirhook_info info; - const struct grub_udf_timestamp *tstamp = NULL; - - grub_memset (&info, 0, sizeof (info)); - info.dir = ((filetype & GRUB_FSHELP_TYPE_MASK) == GRUB_FSHELP_DIR); - if (U16 (node->block.fe.tag.tag_ident) == GRUB_UDF_TAG_IDENT_FE) - tstamp = &node->block.fe.modification_time; - else if (U16 (node->block.fe.tag.tag_ident) == GRUB_UDF_TAG_IDENT_EFE) - tstamp = &node->block.efe.modification_time; - - if (tstamp && (U16 (tstamp->type_and_timezone) & 0xf000) == 0x1000) - { - grub_int16_t tz; - struct grub_datetime datetime; - - datetime.year = U16 (tstamp->year); - datetime.month = tstamp->month; - datetime.day = tstamp->day; - datetime.hour = tstamp->hour; - datetime.minute = tstamp->minute; - datetime.second = tstamp->second; - - tz = U16 (tstamp->type_and_timezone) & 0xfff; - if (tz & 0x800) - tz |= 0xf000; - if (tz == -2047) - tz = 0; - - info.mtimeset = !!grub_datetime2unixtime (&datetime, &info.mtime); - - info.mtime -= 60 * tz; - } - grub_free (node); - return ctx->hook (filename, &info, ctx->hook_data); -} - -static grub_err_t -grub_udf_dir (grub_device_t device, const char *path, - grub_fs_dir_hook_t hook, void *hook_data) -{ - struct grub_udf_dir_ctx ctx = { hook, hook_data }; - struct grub_udf_data *data = 0; - struct grub_fshelp_node *rootnode = 0; - struct grub_fshelp_node *foundnode = 0; - - grub_dl_ref (my_mod); - - data = grub_udf_mount (device->disk); - if (!data) - goto fail; - - rootnode = grub_malloc (get_fshelp_size (data)); - if (!rootnode) - goto fail; - - if (grub_udf_read_icb (data, &data->root_icb, rootnode)) - goto fail; - - if (grub_fshelp_find_file (path, rootnode, - &foundnode, - grub_udf_iterate_dir, grub_udf_read_symlink, - GRUB_FSHELP_DIR)) - goto fail; - - grub_udf_iterate_dir (foundnode, grub_udf_dir_iter, &ctx); - - if (foundnode != rootnode) - grub_free (foundnode); - -fail: - grub_free (rootnode); - - grub_free (data); - - grub_dl_unref (my_mod); - - return grub_errno; -} - -static grub_err_t -grub_udf_open (struct grub_file *file, const char *name) -{ - struct grub_udf_data *data; - struct grub_fshelp_node *rootnode = 0; - struct grub_fshelp_node *foundnode; - - grub_dl_ref (my_mod); - - data = grub_udf_mount (file->device->disk); - if (!data) - goto fail; - - rootnode = grub_malloc (get_fshelp_size (data)); - if (!rootnode) - goto fail; - - if (grub_udf_read_icb (data, &data->root_icb, rootnode)) - goto fail; - - if (grub_fshelp_find_file (name, rootnode, - &foundnode, - grub_udf_iterate_dir, grub_udf_read_symlink, - GRUB_FSHELP_REG)) - goto fail; - - file->data = foundnode; - file->offset = 0; - file->size = U64 (foundnode->block.fe.file_size); - - grub_free (rootnode); - - return 0; - -fail: - grub_dl_unref (my_mod); - - grub_free (data); - grub_free (rootnode); - - return grub_errno; -} - -static grub_ssize_t -grub_udf_read (grub_file_t file, char *buf, grub_size_t len) -{ - struct grub_fshelp_node *node = (struct grub_fshelp_node *) file->data; - - return grub_udf_read_file (node, file->read_hook, file->read_hook_data, - file->offset, len, buf); -} - -static grub_err_t -grub_udf_close (grub_file_t file) -{ - if (file->data) - { - struct grub_fshelp_node *node = (struct grub_fshelp_node *) file->data; - - grub_free (node->data); - grub_free (node); - } - - grub_dl_unref (my_mod); - - return GRUB_ERR_NONE; -} - -static grub_err_t -grub_udf_label (grub_device_t device, char **label) -{ - struct grub_udf_data *data; - data = grub_udf_mount (device->disk); - - if (data) - { - *label = read_dstring (data->lvd.ident, sizeof (data->lvd.ident)); - grub_free (data); - } - else - *label = 0; - - return grub_errno; -} - -static char * -gen_uuid_from_volset (char *volset_ident) -{ - grub_size_t i; - grub_size_t len; - grub_size_t nonhexpos; - grub_uint8_t buf[17]; - char *uuid; - - len = grub_strlen (volset_ident); - if (len < 8) - return NULL; - - uuid = grub_malloc (17); - if (!uuid) - return NULL; - - if (len > 16) - len = 16; - - grub_memset (buf, 0, sizeof (buf)); - grub_memcpy (buf, volset_ident, len); - - nonhexpos = 16; - for (i = 0; i < 16; ++i) - { - if (!grub_isxdigit (buf[i])) - { - nonhexpos = i; - break; - } - } - - if (nonhexpos < 8) - { - grub_snprintf (uuid, 17, "%02x%02x%02x%02x%02x%02x%02x%02x", - buf[0], buf[1], buf[2], buf[3], - buf[4], buf[5], buf[6], buf[7]); - } - else if (nonhexpos < 16) - { - for (i = 0; i < 8; ++i) - uuid[i] = grub_tolower (buf[i]); - grub_snprintf (uuid+8, 9, "%02x%02x%02x%02x", - buf[8], buf[9], buf[10], buf[11]); - } - else - { - for (i = 0; i < 16; ++i) - uuid[i] = grub_tolower (buf[i]); - uuid[16] = 0; - } - - return uuid; -} - -static grub_err_t -grub_udf_uuid (grub_device_t device, char **uuid) -{ - char *volset_ident; - struct grub_udf_data *data; - data = grub_udf_mount (device->disk); - - if (data) - { - volset_ident = read_dstring (data->pvd.volset_ident, sizeof (data->pvd.volset_ident)); - if (volset_ident) - { - *uuid = gen_uuid_from_volset (volset_ident); - grub_free (volset_ident); - } - else - *uuid = 0; - grub_free (data); - } - else - *uuid = 0; - - return grub_errno; -} - -static struct grub_fs grub_udf_fs = { - .name = "udf", - .fs_dir = grub_udf_dir, - .fs_open = grub_udf_open, - .fs_read = grub_udf_read, - .fs_close = grub_udf_close, - .fs_label = grub_udf_label, - .fs_uuid = grub_udf_uuid, -#ifdef GRUB_UTIL - .reserved_first_sector = 1, - .blocklist_install = 1, -#endif - .next = 0 -}; - -GRUB_MOD_INIT (udf) -{ - grub_fs_register (&grub_udf_fs); - my_mod = mod; -} - -GRUB_MOD_FINI (udf) -{ - grub_fs_unregister (&grub_udf_fs); -} diff --git a/thirdparty/grub-2.04/grub-core/fs/ufs.c b/thirdparty/grub-2.04/grub-core/fs/ufs.c deleted file mode 100644 index fca46baa1..000000000 --- a/thirdparty/grub-2.04/grub-core/fs/ufs.c +++ /dev/null @@ -1,918 +0,0 @@ -/* ufs.c - Unix File System */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2004,2005,2007,2008,2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -#ifdef MODE_UFS2 -#define GRUB_UFS_MAGIC 0x19540119 -#else -#define GRUB_UFS_MAGIC 0x11954 -#endif - -#define GRUB_UFS_INODE 2 -#define GRUB_UFS_FILETYPE_DIR 4 -#define GRUB_UFS_FILETYPE_LNK 10 -#define GRUB_UFS_MAX_SYMLNK_CNT 8 - -#define GRUB_UFS_DIRBLKS 12 -#define GRUB_UFS_INDIRBLKS 3 - -#define GRUB_UFS_ATTR_TYPE 0160000 -#define GRUB_UFS_ATTR_FILE 0100000 -#define GRUB_UFS_ATTR_DIR 0040000 -#define GRUB_UFS_ATTR_LNK 0120000 - -#define GRUB_UFS_VOLNAME_LEN 32 - -#ifdef MODE_BIGENDIAN -#define grub_ufs_to_cpu16 grub_be_to_cpu16 -#define grub_ufs_to_cpu32 grub_be_to_cpu32 -#define grub_ufs_to_cpu64 grub_be_to_cpu64 -#define grub_cpu_to_ufs32_compile_time grub_cpu_to_be32_compile_time -#else -#define grub_ufs_to_cpu16 grub_le_to_cpu16 -#define grub_ufs_to_cpu32 grub_le_to_cpu32 -#define grub_ufs_to_cpu64 grub_le_to_cpu64 -#define grub_cpu_to_ufs32_compile_time grub_cpu_to_le32_compile_time -#endif - -#ifdef MODE_UFS2 -typedef grub_uint64_t grub_ufs_blk_t; -static inline grub_disk_addr_t -grub_ufs_to_cpu_blk (grub_ufs_blk_t blk) -{ - return grub_ufs_to_cpu64 (blk); -} -#else -typedef grub_uint32_t grub_ufs_blk_t; -static inline grub_disk_addr_t -grub_ufs_to_cpu_blk (grub_ufs_blk_t blk) -{ - return grub_ufs_to_cpu32 (blk); -} -#endif - -/* Calculate in which group the inode can be found. */ -#define UFS_BLKSZ(sblock) (grub_ufs_to_cpu32 (sblock->bsize)) -#define UFS_LOG_BLKSZ(sblock) (data->log2_blksz) - -#ifdef MODE_UFS2 -#define INODE_ENDIAN(data,field,bits1,bits2) grub_ufs_to_cpu##bits2 (data->inode.field) -#else -#define INODE_ENDIAN(data,field,bits1,bits2) grub_ufs_to_cpu##bits1 (data->inode.field) -#endif - -#define INODE_SIZE(data) grub_ufs_to_cpu64 (data->inode.size) -#define INODE_MODE(data) grub_ufs_to_cpu16 (data->inode.mode) -#ifdef MODE_UFS2 -#define LOG_INODE_BLKSZ 3 -#else -#define LOG_INODE_BLKSZ 2 -#endif -#ifdef MODE_UFS2 -#define UFS_INODE_PER_BLOCK 2 -#else -#define UFS_INODE_PER_BLOCK 4 -#endif -#define INODE_DIRBLOCKS(data,blk) INODE_ENDIAN \ - (data,blocks.dir_blocks[blk],32,64) -#define INODE_INDIRBLOCKS(data,blk) INODE_ENDIAN \ - (data,blocks.indir_blocks[blk],32,64) - -/* The blocks on which the superblock can be found. */ -static int sblocklist[] = { 128, 16, 0, 512, -1 }; - -struct grub_ufs_sblock -{ - grub_uint8_t unused[16]; - /* The offset of the inodes in the cylinder group. */ - grub_uint32_t inoblk_offs; - - grub_uint8_t unused2[4]; - - /* The start of the cylinder group. */ - grub_uint32_t cylg_offset; - grub_uint32_t cylg_mask; - - grub_uint32_t mtime; - grub_uint8_t unused4[12]; - - /* The size of a block in bytes. */ - grub_int32_t bsize; - grub_uint8_t unused5[48]; - - /* The size of filesystem blocks to disk blocks. */ - grub_uint32_t log2_blksz; - grub_uint8_t unused6[40]; - grub_uint32_t uuidhi; - grub_uint32_t uuidlow; - grub_uint8_t unused7[32]; - - /* Inodes stored per cylinder group. */ - grub_uint32_t ino_per_group; - - /* The frags per cylinder group. */ - grub_uint32_t frags_per_group; - - grub_uint8_t unused8[488]; - - /* Volume name for UFS2. */ - grub_uint8_t volume_name[GRUB_UFS_VOLNAME_LEN]; - grub_uint8_t unused9[360]; - - grub_uint64_t mtime2; - grub_uint8_t unused10[292]; - - /* Magic value to check if this is really a UFS filesystem. */ - grub_uint32_t magic; -}; - -#ifdef MODE_UFS2 -/* UFS inode. */ -struct grub_ufs_inode -{ - grub_uint16_t mode; - grub_uint16_t nlinks; - grub_uint32_t uid; - grub_uint32_t gid; - grub_uint32_t blocksize; - grub_uint64_t size; - grub_int64_t nblocks; - grub_uint64_t atime; - grub_uint64_t mtime; - grub_uint64_t ctime; - grub_uint64_t create_time; - grub_uint32_t atime_usec; - grub_uint32_t mtime_usec; - grub_uint32_t ctime_usec; - grub_uint32_t create_time_sec; - grub_uint32_t gen; - grub_uint32_t kernel_flags; - grub_uint32_t flags; - grub_uint32_t extsz; - grub_uint64_t ext[2]; - union - { - struct - { - grub_uint64_t dir_blocks[GRUB_UFS_DIRBLKS]; - grub_uint64_t indir_blocks[GRUB_UFS_INDIRBLKS]; - } blocks; - grub_uint8_t symlink[(GRUB_UFS_DIRBLKS + GRUB_UFS_INDIRBLKS) * 8]; - }; - - grub_uint8_t unused[24]; -} GRUB_PACKED; -#else -/* UFS inode. */ -struct grub_ufs_inode -{ - grub_uint16_t mode; - grub_uint16_t nlinks; - grub_uint16_t uid; - grub_uint16_t gid; - grub_uint64_t size; - grub_uint32_t atime; - grub_uint32_t atime_usec; - grub_uint32_t mtime; - grub_uint32_t mtime_usec; - grub_uint32_t ctime; - grub_uint32_t ctime_usec; - union - { - struct - { - grub_uint32_t dir_blocks[GRUB_UFS_DIRBLKS]; - grub_uint32_t indir_blocks[GRUB_UFS_INDIRBLKS]; - } blocks; - grub_uint8_t symlink[(GRUB_UFS_DIRBLKS + GRUB_UFS_INDIRBLKS) * 4]; - }; - grub_uint32_t flags; - grub_uint32_t nblocks; - grub_uint32_t gen; - grub_uint32_t unused; - grub_uint8_t pad[12]; -} GRUB_PACKED; -#endif - -/* Directory entry. */ -struct grub_ufs_dirent -{ - grub_uint32_t ino; - grub_uint16_t direntlen; - union - { - grub_uint16_t namelen; - struct - { - grub_uint8_t filetype_bsd; - grub_uint8_t namelen_bsd; - }; - }; -} GRUB_PACKED; - -/* Information about a "mounted" ufs filesystem. */ -struct grub_ufs_data -{ - struct grub_ufs_sblock sblock; - grub_disk_t disk; - struct grub_ufs_inode inode; - int ino; - int linknest; - int log2_blksz; -}; - -static grub_dl_t my_mod; - -/* Forward declaration. */ -static grub_err_t grub_ufs_find_file (struct grub_ufs_data *data, - const char *path); - - -static grub_disk_addr_t -grub_ufs_get_file_block (struct grub_ufs_data *data, grub_disk_addr_t blk) -{ - unsigned long indirsz; - int log2_blksz, log_indirsz; - - /* Direct. */ - if (blk < GRUB_UFS_DIRBLKS) - return INODE_DIRBLOCKS (data, blk); - - log2_blksz = grub_ufs_to_cpu32 (data->sblock.log2_blksz); - - blk -= GRUB_UFS_DIRBLKS; - - log_indirsz = data->log2_blksz - LOG_INODE_BLKSZ; - indirsz = 1 << log_indirsz; - - /* Single indirect block. */ - if (blk < indirsz) - { - grub_ufs_blk_t indir; - grub_disk_read (data->disk, - ((grub_disk_addr_t) INODE_INDIRBLOCKS (data, 0)) - << log2_blksz, - blk * sizeof (indir), sizeof (indir), &indir); - return indir; - } - blk -= indirsz; - - /* Double indirect block. */ - if (blk < (grub_disk_addr_t) indirsz * (grub_disk_addr_t) indirsz) - { - grub_ufs_blk_t indir; - - grub_disk_read (data->disk, - ((grub_disk_addr_t) INODE_INDIRBLOCKS (data, 1)) - << log2_blksz, - (blk >> log_indirsz) * sizeof (indir), - sizeof (indir), &indir); - grub_disk_read (data->disk, - grub_ufs_to_cpu_blk (indir) << log2_blksz, - (blk & ((1 << log_indirsz) - 1)) * sizeof (indir), - sizeof (indir), &indir); - - return indir; - } - - blk -= (grub_disk_addr_t) indirsz * (grub_disk_addr_t) indirsz; - - /* Triple indirect block. */ - if (!(blk >> (3 * log_indirsz))) - { - grub_ufs_blk_t indir; - - grub_disk_read (data->disk, - ((grub_disk_addr_t) INODE_INDIRBLOCKS (data, 2)) - << log2_blksz, - (blk >> (2 * log_indirsz)) * sizeof (indir), - sizeof (indir), &indir); - grub_disk_read (data->disk, - grub_ufs_to_cpu_blk (indir) << log2_blksz, - ((blk >> log_indirsz) - & ((1 << log_indirsz) - 1)) * sizeof (indir), - sizeof (indir), &indir); - - grub_disk_read (data->disk, - grub_ufs_to_cpu_blk (indir) << log2_blksz, - (blk & ((1 << log_indirsz) - 1)) * sizeof (indir), - sizeof (indir), &indir); - - return indir; - } - - grub_error (GRUB_ERR_BAD_FS, - "ufs does not support quadruple indirect blocks"); - return 0; -} - - -/* Read LEN bytes from the file described by DATA starting with byte - POS. Return the amount of read bytes in READ. */ -static grub_ssize_t -grub_ufs_read_file (struct grub_ufs_data *data, - grub_disk_read_hook_t read_hook, void *read_hook_data, - grub_off_t pos, grub_size_t len, char *buf) -{ - struct grub_ufs_sblock *sblock = &data->sblock; - grub_off_t i; - grub_off_t blockcnt; - - /* Adjust len so it we can't read past the end of the file. */ - if (len + pos > INODE_SIZE (data)) - len = INODE_SIZE (data) - pos; - - blockcnt = (len + pos + UFS_BLKSZ (sblock) - 1) >> UFS_LOG_BLKSZ (sblock); - - for (i = pos >> UFS_LOG_BLKSZ (sblock); i < blockcnt; i++) - { - grub_disk_addr_t blknr; - grub_off_t blockoff; - grub_off_t blockend = UFS_BLKSZ (sblock); - - int skipfirst = 0; - - blockoff = pos & (UFS_BLKSZ (sblock) - 1); - - blknr = grub_ufs_get_file_block (data, i); - if (grub_errno) - return -1; - - /* Last block. */ - if (i == blockcnt - 1) - { - blockend = (len + pos) & (UFS_BLKSZ (sblock) - 1); - - if (!blockend) - blockend = UFS_BLKSZ (sblock); - } - - /* First block. */ - if (i == (pos >> UFS_LOG_BLKSZ (sblock))) - { - skipfirst = blockoff; - blockend -= skipfirst; - } - - /* XXX: If the block number is 0 this block is not stored on - disk but is zero filled instead. */ - if (blknr) - { - data->disk->read_hook = read_hook; - data->disk->read_hook_data = read_hook_data; - grub_disk_read (data->disk, - blknr << grub_ufs_to_cpu32 (data->sblock.log2_blksz), - skipfirst, blockend, buf); - data->disk->read_hook = 0; - if (grub_errno) - return -1; - } - else - grub_memset (buf, 0, blockend); - - buf += UFS_BLKSZ (sblock) - skipfirst; - } - - return len; -} - -/* Read inode INO from the mounted filesystem described by DATA. This - inode is used by default now. */ -static grub_err_t -grub_ufs_read_inode (struct grub_ufs_data *data, int ino, char *inode) -{ - struct grub_ufs_sblock *sblock = &data->sblock; - - /* Determine the group the inode is in. */ - int group = ino / grub_ufs_to_cpu32 (sblock->ino_per_group); - - /* Determine the inode within the group. */ - int grpino = ino % grub_ufs_to_cpu32 (sblock->ino_per_group); - - /* The first block of the group. */ - int grpblk = group * (grub_ufs_to_cpu32 (sblock->frags_per_group)); - -#ifndef MODE_UFS2 - grpblk += grub_ufs_to_cpu32 (sblock->cylg_offset) - * (group & (~grub_ufs_to_cpu32 (sblock->cylg_mask))); -#endif - - if (!inode) - { - inode = (char *) &data->inode; - data->ino = ino; - } - - grub_disk_read (data->disk, - ((grub_ufs_to_cpu32 (sblock->inoblk_offs) + grpblk) - << grub_ufs_to_cpu32 (data->sblock.log2_blksz)) - + grpino / UFS_INODE_PER_BLOCK, - (grpino % UFS_INODE_PER_BLOCK) - * sizeof (struct grub_ufs_inode), - sizeof (struct grub_ufs_inode), - inode); - - return grub_errno; -} - - -/* Lookup the symlink the current inode points to. INO is the inode - number of the directory the symlink is relative to. */ -static grub_err_t -grub_ufs_lookup_symlink (struct grub_ufs_data *data, int ino) -{ - char *symlink; - grub_size_t sz = INODE_SIZE (data); - - if (++data->linknest > GRUB_UFS_MAX_SYMLNK_CNT) - return grub_error (GRUB_ERR_SYMLINK_LOOP, N_("too deep nesting of symlinks")); - - symlink = grub_malloc (sz + 1); - if (!symlink) - return grub_errno; - /* Normally we should just check that data->inode.nblocks == 0. - However old Linux doesn't maintain nblocks correctly and so it's always - 0. If size is bigger than inline space then the symlink is surely not - inline. */ - /* Check against zero is paylindromic, no need to swap. */ - if (data->inode.nblocks == 0 - && INODE_SIZE (data) <= sizeof (data->inode.symlink)) - grub_strcpy (symlink, (char *) data->inode.symlink); - else - { - if (grub_ufs_read_file (data, 0, 0, 0, sz, symlink) < 0) - { - grub_free(symlink); - return grub_errno; - } - } - symlink[sz] = '\0'; - - /* The symlink is an absolute path, go back to the root inode. */ - if (symlink[0] == '/') - ino = GRUB_UFS_INODE; - - /* Now load in the old inode. */ - if (grub_ufs_read_inode (data, ino, 0)) - { - grub_free (symlink); - return grub_errno; - } - - grub_ufs_find_file (data, symlink); - - grub_free (symlink); - - return grub_errno; -} - - -/* Find the file with the pathname PATH on the filesystem described by - DATA. */ -static grub_err_t -grub_ufs_find_file (struct grub_ufs_data *data, const char *path) -{ - const char *name; - const char *next = path; - unsigned int pos = 0; - int dirino; - char *filename; - - /* We reject filenames longer than the one we're looking - for without reading, so this allocation is enough. */ - filename = grub_malloc (grub_strlen (path) + 2); - if (!filename) - return grub_errno; - - while (1) - { - struct grub_ufs_dirent dirent; - - name = next; - /* Skip the first slash. */ - while (*name == '/') - name++; - if (*name == 0) - { - grub_free (filename); - return GRUB_ERR_NONE; - } - - if ((INODE_MODE(data) & GRUB_UFS_ATTR_TYPE) - != GRUB_UFS_ATTR_DIR) - { - grub_error (GRUB_ERR_BAD_FILE_TYPE, - N_("not a directory")); - goto fail; - } - - /* Extract the actual part from the pathname. */ - for (next = name; *next && *next != '/'; next++); - for (pos = 0; ; pos += grub_ufs_to_cpu16 (dirent.direntlen)) - { - int namelen; - - if (pos >= INODE_SIZE (data)) - { - grub_error (GRUB_ERR_FILE_NOT_FOUND, - N_("file `%s' not found"), - path); - goto fail; - } - - if (grub_ufs_read_file (data, 0, 0, pos, sizeof (dirent), - (char *) &dirent) < 0) - goto fail; - -#ifdef MODE_UFS2 - namelen = dirent.namelen_bsd; -#else - namelen = grub_ufs_to_cpu16 (dirent.namelen); -#endif - if (namelen < next - name) - continue; - - if (grub_ufs_read_file (data, 0, 0, pos + sizeof (dirent), - next - name + (namelen != next - name), - filename) < 0) - goto fail; - - if (grub_strncmp (name, filename, next - name) == 0 - && (namelen == next - name || filename[next - name] == '\0')) - { - dirino = data->ino; - grub_ufs_read_inode (data, grub_ufs_to_cpu32 (dirent.ino), 0); - - if ((INODE_MODE(data) & GRUB_UFS_ATTR_TYPE) - == GRUB_UFS_ATTR_LNK) - { - grub_ufs_lookup_symlink (data, dirino); - if (grub_errno) - goto fail; - } - - break; - } - } - } - fail: - grub_free (filename); - return grub_errno; -} - - -/* Mount the filesystem on the disk DISK. */ -static struct grub_ufs_data * -grub_ufs_mount (grub_disk_t disk) -{ - struct grub_ufs_data *data; - int *sblklist = sblocklist; - - data = grub_malloc (sizeof (struct grub_ufs_data)); - if (!data) - return 0; - - /* Find a UFS sblock. */ - while (*sblklist != -1) - { - grub_disk_read (disk, *sblklist, 0, sizeof (struct grub_ufs_sblock), - &data->sblock); - if (grub_errno) - goto fail; - - /* No need to byteswap bsize in this check. It works the same on both - endiannesses. */ - if (data->sblock.magic == grub_cpu_to_ufs32_compile_time (GRUB_UFS_MAGIC) - && data->sblock.bsize != 0 - && ((data->sblock.bsize & (data->sblock.bsize - 1)) == 0) - && data->sblock.ino_per_group != 0) - { - for (data->log2_blksz = 0; - (1U << data->log2_blksz) < grub_ufs_to_cpu32 (data->sblock.bsize); - data->log2_blksz++); - - data->disk = disk; - data->linknest = 0; - return data; - } - sblklist++; - } - - fail: - - if (grub_errno == GRUB_ERR_NONE || grub_errno == GRUB_ERR_OUT_OF_RANGE) - { -#ifdef MODE_UFS2 - grub_error (GRUB_ERR_BAD_FS, "not an ufs2 filesystem"); -#else - grub_error (GRUB_ERR_BAD_FS, "not an ufs1 filesystem"); -#endif - } - - grub_free (data); - - return 0; -} - - -static grub_err_t -grub_ufs_dir (grub_device_t device, const char *path, - grub_fs_dir_hook_t hook, void *hook_data) -{ - struct grub_ufs_data *data; - unsigned int pos = 0; - - data = grub_ufs_mount (device->disk); - if (!data) - return grub_errno; - - grub_ufs_read_inode (data, GRUB_UFS_INODE, 0); - if (grub_errno) - return grub_errno; - - if (!path || path[0] != '/') - { - grub_error (GRUB_ERR_BAD_FILENAME, N_("invalid file name `%s'"), path); - return grub_errno; - } - - grub_ufs_find_file (data, path); - if (grub_errno) - goto fail; - - if ((INODE_MODE (data) & GRUB_UFS_ATTR_TYPE) != GRUB_UFS_ATTR_DIR) - { - grub_error (GRUB_ERR_BAD_FILE_TYPE, N_("not a directory")); - goto fail; - } - - while (pos < INODE_SIZE (data)) - { - struct grub_ufs_dirent dirent; - int namelen; - - if (grub_ufs_read_file (data, 0, 0, pos, sizeof (dirent), - (char *) &dirent) < 0) - break; - - if (dirent.direntlen == 0) - break; - -#ifdef MODE_UFS2 - namelen = dirent.namelen_bsd; -#else - namelen = grub_ufs_to_cpu16 (dirent.namelen); -#endif - - char *filename = grub_malloc (namelen + 1); - if (!filename) - goto fail; - struct grub_dirhook_info info; - struct grub_ufs_inode inode; - - grub_memset (&info, 0, sizeof (info)); - - if (grub_ufs_read_file (data, 0, 0, pos + sizeof (dirent), - namelen, filename) < 0) - { - grub_free (filename); - break; - } - - filename[namelen] = '\0'; - grub_ufs_read_inode (data, grub_ufs_to_cpu32 (dirent.ino), - (char *) &inode); - - info.dir = ((grub_ufs_to_cpu16 (inode.mode) & GRUB_UFS_ATTR_TYPE) - == GRUB_UFS_ATTR_DIR); -#ifdef MODE_UFS2 - info.mtime = grub_ufs_to_cpu64 (inode.mtime); -#else - info.mtime = grub_ufs_to_cpu32 (inode.mtime); -#endif - info.mtimeset = 1; - - if (hook (filename, &info, hook_data)) - { - grub_free (filename); - break; - } - - grub_free (filename); - - pos += grub_ufs_to_cpu16 (dirent.direntlen); - } - - fail: - grub_free (data); - - return grub_errno; -} - - -/* Open a file named NAME and initialize FILE. */ -static grub_err_t -grub_ufs_open (struct grub_file *file, const char *name) -{ - struct grub_ufs_data *data; - data = grub_ufs_mount (file->device->disk); - if (!data) - return grub_errno; - - grub_ufs_read_inode (data, 2, 0); - if (grub_errno) - { - grub_free (data); - return grub_errno; - } - - if (!name || name[0] != '/') - { - grub_error (GRUB_ERR_BAD_FILENAME, N_("invalid file name `%s'"), name); - return grub_errno; - } - - grub_ufs_find_file (data, name); - if (grub_errno) - { - grub_free (data); - return grub_errno; - } - - file->data = data; - file->size = INODE_SIZE (data); - - return GRUB_ERR_NONE; -} - - -static grub_ssize_t -grub_ufs_read (grub_file_t file, char *buf, grub_size_t len) -{ - struct grub_ufs_data *data = - (struct grub_ufs_data *) file->data; - - return grub_ufs_read_file (data, file->read_hook, file->read_hook_data, - file->offset, len, buf); -} - - -static grub_err_t -grub_ufs_close (grub_file_t file) -{ - grub_free (file->data); - - return GRUB_ERR_NONE; -} - -static grub_err_t -grub_ufs_label (grub_device_t device, char **label) -{ - struct grub_ufs_data *data = 0; - - grub_dl_ref (my_mod); - - *label = 0; - - data = grub_ufs_mount (device->disk); - if (data) - *label = grub_strdup ((char *) data->sblock.volume_name); - - grub_dl_unref (my_mod); - - grub_free (data); - - return grub_errno; -} - -static grub_err_t -grub_ufs_uuid (grub_device_t device, char **uuid) -{ - struct grub_ufs_data *data; - grub_disk_t disk = device->disk; - - grub_dl_ref (my_mod); - - data = grub_ufs_mount (disk); - if (data && (data->sblock.uuidhi != 0 || data->sblock.uuidlow != 0)) - *uuid = grub_xasprintf ("%08x%08x", - (unsigned) grub_ufs_to_cpu32 (data->sblock.uuidhi), - (unsigned) grub_ufs_to_cpu32 (data->sblock.uuidlow)); - else - *uuid = NULL; - - grub_dl_unref (my_mod); - - grub_free (data); - - return grub_errno; -} - - -/* Get mtime. */ -static grub_err_t -grub_ufs_mtime (grub_device_t device, grub_int32_t *tm) -{ - struct grub_ufs_data *data = 0; - - grub_dl_ref (my_mod); - - data = grub_ufs_mount (device->disk); - if (!data) - *tm = 0; - else - { - *tm = grub_ufs_to_cpu32 (data->sblock.mtime); -#ifdef MODE_UFS2 - if (*tm < (grub_int64_t) grub_ufs_to_cpu64 (data->sblock.mtime2)) - *tm = grub_ufs_to_cpu64 (data->sblock.mtime2); -#endif - } - - grub_dl_unref (my_mod); - - grub_free (data); - - return grub_errno; -} - - - -static struct grub_fs grub_ufs_fs = - { -#ifdef MODE_UFS2 - .name = "ufs2", -#else -#ifdef MODE_BIGENDIAN - .name = "ufs1_be", -#else - .name = "ufs1", -#endif -#endif - .fs_dir = grub_ufs_dir, - .fs_open = grub_ufs_open, - .fs_read = grub_ufs_read, - .fs_close = grub_ufs_close, - .fs_label = grub_ufs_label, - .fs_uuid = grub_ufs_uuid, - .fs_mtime = grub_ufs_mtime, - /* FIXME: set reserved_first_sector. */ -#ifdef GRUB_UTIL - .blocklist_install = 1, -#endif - .next = 0 - }; - -#ifdef MODE_UFS2 -GRUB_MOD_INIT(ufs2) -#else -#ifdef MODE_BIGENDIAN -GRUB_MOD_INIT(ufs1_be) -#else -GRUB_MOD_INIT(ufs1) -#endif -#endif -{ - grub_fs_register (&grub_ufs_fs); - my_mod = mod; -} - -#ifdef MODE_UFS2 -GRUB_MOD_FINI(ufs2) -#else -#ifdef MODE_BIGENDIAN -GRUB_MOD_FINI(ufs1_be) -#else -GRUB_MOD_FINI(ufs1) -#endif -#endif -{ - grub_fs_unregister (&grub_ufs_fs); -} - diff --git a/thirdparty/grub-2.04/grub-core/fs/ufs2.c b/thirdparty/grub-2.04/grub-core/fs/ufs2.c deleted file mode 100644 index 7f4eb95de..000000000 --- a/thirdparty/grub-2.04/grub-core/fs/ufs2.c +++ /dev/null @@ -1,3 +0,0 @@ -/* ufs2.c - Unix File System 2 */ -#define MODE_UFS2 1 -#include "ufs.c" diff --git a/thirdparty/grub-2.04/grub-core/fs/ufs_be.c b/thirdparty/grub-2.04/grub-core/fs/ufs_be.c deleted file mode 100644 index a58f75a99..000000000 --- a/thirdparty/grub-2.04/grub-core/fs/ufs_be.c +++ /dev/null @@ -1,2 +0,0 @@ -#define MODE_BIGENDIAN 1 -#include "ufs.c" diff --git a/thirdparty/grub-2.04/grub-core/fs/xfs.c b/thirdparty/grub-2.04/grub-core/fs/xfs.c deleted file mode 100644 index 96ffecbfc..000000000 --- a/thirdparty/grub-2.04/grub-core/fs/xfs.c +++ /dev/null @@ -1,1162 +0,0 @@ -/* xfs.c - XFS. */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2005,2006,2007,2008,2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -#define XFS_INODE_EXTENTS 9 - -#define XFS_INODE_FORMAT_INO 1 -#define XFS_INODE_FORMAT_EXT 2 -#define XFS_INODE_FORMAT_BTREE 3 - -/* Superblock version field flags */ -#define XFS_SB_VERSION_NUMBITS 0x000f -#define XFS_SB_VERSION_ATTRBIT 0x0010 -#define XFS_SB_VERSION_NLINKBIT 0x0020 -#define XFS_SB_VERSION_QUOTABIT 0x0040 -#define XFS_SB_VERSION_ALIGNBIT 0x0080 -#define XFS_SB_VERSION_DALIGNBIT 0x0100 -#define XFS_SB_VERSION_LOGV2BIT 0x0400 -#define XFS_SB_VERSION_SECTORBIT 0x0800 -#define XFS_SB_VERSION_EXTFLGBIT 0x1000 -#define XFS_SB_VERSION_DIRV2BIT 0x2000 -#define XFS_SB_VERSION_MOREBITSBIT 0x8000 -#define XFS_SB_VERSION_BITS_SUPPORTED \ - (XFS_SB_VERSION_NUMBITS | \ - XFS_SB_VERSION_ATTRBIT | \ - XFS_SB_VERSION_NLINKBIT | \ - XFS_SB_VERSION_QUOTABIT | \ - XFS_SB_VERSION_ALIGNBIT | \ - XFS_SB_VERSION_DALIGNBIT | \ - XFS_SB_VERSION_LOGV2BIT | \ - XFS_SB_VERSION_SECTORBIT | \ - XFS_SB_VERSION_EXTFLGBIT | \ - XFS_SB_VERSION_DIRV2BIT | \ - XFS_SB_VERSION_MOREBITSBIT) - -/* Recognized xfs format versions */ -#define XFS_SB_VERSION_4 4 /* Good old XFS filesystem */ -#define XFS_SB_VERSION_5 5 /* CRC enabled filesystem */ - -/* features2 field flags */ -#define XFS_SB_VERSION2_LAZYSBCOUNTBIT 0x00000002 /* Superblk counters */ -#define XFS_SB_VERSION2_ATTR2BIT 0x00000008 /* Inline attr rework */ -#define XFS_SB_VERSION2_PROJID32BIT 0x00000080 /* 32-bit project ids */ -#define XFS_SB_VERSION2_FTYPE 0x00000200 /* inode type in dir */ -#define XFS_SB_VERSION2_BITS_SUPPORTED \ - (XFS_SB_VERSION2_LAZYSBCOUNTBIT | \ - XFS_SB_VERSION2_ATTR2BIT | \ - XFS_SB_VERSION2_PROJID32BIT | \ - XFS_SB_VERSION2_FTYPE) - -/* incompat feature flags */ -#define XFS_SB_FEAT_INCOMPAT_FTYPE (1 << 0) /* filetype in dirent */ -#define XFS_SB_FEAT_INCOMPAT_SPINODES (1 << 1) /* sparse inode chunks */ -#define XFS_SB_FEAT_INCOMPAT_META_UUID (1 << 2) /* metadata UUID */ - -/* - * Directory entries with ftype are explicitly handled by GRUB code. - * - * We do not currently read the inode btrees, so it is safe to read filesystems - * with the XFS_SB_FEAT_INCOMPAT_SPINODES feature. - * - * We do not currently verify metadata UUID, so it is safe to read filesystems - * with the XFS_SB_FEAT_INCOMPAT_META_UUID feature. - */ -#define XFS_SB_FEAT_INCOMPAT_SUPPORTED \ - (XFS_SB_FEAT_INCOMPAT_FTYPE | \ - XFS_SB_FEAT_INCOMPAT_SPINODES | \ - XFS_SB_FEAT_INCOMPAT_META_UUID) - -struct grub_xfs_sblock -{ - grub_uint8_t magic[4]; - grub_uint32_t bsize; - grub_uint8_t unused1[24]; - grub_uint16_t uuid[8]; - grub_uint8_t unused2[8]; - grub_uint64_t rootino; - grub_uint8_t unused3[20]; - grub_uint32_t agsize; - grub_uint8_t unused4[12]; - grub_uint16_t version; - grub_uint8_t unused5[6]; - grub_uint8_t label[12]; - grub_uint8_t log2_bsize; - grub_uint8_t log2_sect; - grub_uint8_t log2_inode; - grub_uint8_t log2_inop; - grub_uint8_t log2_agblk; - grub_uint8_t unused6[67]; - grub_uint8_t log2_dirblk; - grub_uint8_t unused7[7]; - grub_uint32_t features2; - grub_uint8_t unused8[4]; - grub_uint32_t sb_features_compat; - grub_uint32_t sb_features_ro_compat; - grub_uint32_t sb_features_incompat; - grub_uint32_t sb_features_log_incompat; -} GRUB_PACKED; - -struct grub_xfs_dir_header -{ - grub_uint8_t count; - grub_uint8_t largeino; - union - { - grub_uint32_t i4; - grub_uint64_t i8; - } GRUB_PACKED parent; -} GRUB_PACKED; - -/* Structure for directory entry inlined in the inode */ -struct grub_xfs_dir_entry -{ - grub_uint8_t len; - grub_uint16_t offset; - char name[1]; - /* Inode number follows, 32 / 64 bits. */ -} GRUB_PACKED; - -/* Structure for directory entry in a block */ -struct grub_xfs_dir2_entry -{ - grub_uint64_t inode; - grub_uint8_t len; -} GRUB_PACKED; - -struct grub_xfs_extent -{ - /* This should be a bitfield but bietfields are unportable, so just have - a raw array and functions extracting useful info from it. - */ - grub_uint32_t raw[4]; -} GRUB_PACKED; - -struct grub_xfs_btree_node -{ - grub_uint8_t magic[4]; - grub_uint16_t level; - grub_uint16_t numrecs; - grub_uint64_t left; - grub_uint64_t right; - /* In V5 here follow crc, uuid, etc. */ - /* Then follow keys and block pointers */ -} GRUB_PACKED; - -struct grub_xfs_btree_root -{ - grub_uint16_t level; - grub_uint16_t numrecs; - grub_uint64_t keys[1]; -} GRUB_PACKED; - -struct grub_xfs_time -{ - grub_uint32_t sec; - grub_uint32_t nanosec; -} GRUB_PACKED; - -struct grub_xfs_inode -{ - grub_uint8_t magic[2]; - grub_uint16_t mode; - grub_uint8_t version; - grub_uint8_t format; - grub_uint8_t unused2[26]; - struct grub_xfs_time atime; - struct grub_xfs_time mtime; - struct grub_xfs_time ctime; - grub_uint64_t size; - grub_uint64_t nblocks; - grub_uint32_t extsize; - grub_uint32_t nextents; - grub_uint16_t unused3; - grub_uint8_t fork_offset; - grub_uint8_t unused4[17]; -} GRUB_PACKED; - -#define XFS_V2_INODE_SIZE sizeof(struct grub_xfs_inode) -#define XFS_V3_INODE_SIZE (XFS_V2_INODE_SIZE + 76) - -struct grub_xfs_dirblock_tail -{ - grub_uint32_t leaf_count; - grub_uint32_t leaf_stale; -} GRUB_PACKED; - -struct grub_fshelp_node -{ - struct grub_xfs_data *data; - grub_uint64_t ino; - int inode_read; - struct grub_xfs_inode inode; -}; - -struct grub_xfs_data -{ - struct grub_xfs_sblock sblock; - grub_disk_t disk; - int pos; - int bsize; - grub_uint32_t agsize; - unsigned int hasftype:1; - unsigned int hascrc:1; - struct grub_fshelp_node diropen; -}; - -static grub_dl_t my_mod; - - - -static int grub_xfs_sb_hascrc(struct grub_xfs_data *data) -{ - return (data->sblock.version & grub_cpu_to_be16_compile_time(XFS_SB_VERSION_NUMBITS)) == - grub_cpu_to_be16_compile_time(XFS_SB_VERSION_5); -} - -static int grub_xfs_sb_hasftype(struct grub_xfs_data *data) -{ - if ((data->sblock.version & grub_cpu_to_be16_compile_time(XFS_SB_VERSION_NUMBITS)) == - grub_cpu_to_be16_compile_time(XFS_SB_VERSION_5) && - data->sblock.sb_features_incompat & grub_cpu_to_be32_compile_time(XFS_SB_FEAT_INCOMPAT_FTYPE)) - return 1; - if (data->sblock.version & grub_cpu_to_be16_compile_time(XFS_SB_VERSION_MOREBITSBIT) && - data->sblock.features2 & grub_cpu_to_be32_compile_time(XFS_SB_VERSION2_FTYPE)) - return 1; - return 0; -} - -static int grub_xfs_sb_valid(struct grub_xfs_data *data) -{ - grub_dprintf("xfs", "Validating superblock\n"); - if (grub_strncmp ((char *) (data->sblock.magic), "XFSB", 4) - || data->sblock.log2_bsize < GRUB_DISK_SECTOR_BITS - || ((int) data->sblock.log2_bsize - + (int) data->sblock.log2_dirblk) >= 27) - { - grub_error (GRUB_ERR_BAD_FS, "not a XFS filesystem"); - return 0; - } - if ((data->sblock.version & grub_cpu_to_be16_compile_time(XFS_SB_VERSION_NUMBITS)) == - grub_cpu_to_be16_compile_time(XFS_SB_VERSION_5)) - { - grub_dprintf("xfs", "XFS v5 superblock detected\n"); - if (data->sblock.sb_features_incompat & - grub_cpu_to_be32_compile_time(~XFS_SB_FEAT_INCOMPAT_SUPPORTED)) - { - grub_error (GRUB_ERR_BAD_FS, "XFS filesystem has unsupported " - "incompatible features"); - return 0; - } - return 1; - } - else if ((data->sblock.version & grub_cpu_to_be16_compile_time(XFS_SB_VERSION_NUMBITS)) == - grub_cpu_to_be16_compile_time(XFS_SB_VERSION_4)) - { - grub_dprintf("xfs", "XFS v4 superblock detected\n"); - if (!(data->sblock.version & grub_cpu_to_be16_compile_time(XFS_SB_VERSION_DIRV2BIT))) - { - grub_error (GRUB_ERR_BAD_FS, "XFS filesystem without V2 directories " - "is unsupported"); - return 0; - } - if (data->sblock.version & grub_cpu_to_be16_compile_time(~XFS_SB_VERSION_BITS_SUPPORTED) || - (data->sblock.version & grub_cpu_to_be16_compile_time(XFS_SB_VERSION_MOREBITSBIT) && - data->sblock.features2 & grub_cpu_to_be16_compile_time(~XFS_SB_VERSION2_BITS_SUPPORTED))) - { - grub_error (GRUB_ERR_BAD_FS, "XFS filesystem has unsupported version " - "bits"); - return 0; - } - return 1; - } - return 0; -} - -/* Filetype information as used in inodes. */ -#define FILETYPE_INO_MASK 0170000 -#define FILETYPE_INO_REG 0100000 -#define FILETYPE_INO_DIRECTORY 0040000 -#define FILETYPE_INO_SYMLINK 0120000 - -static inline int -GRUB_XFS_INO_AGBITS(struct grub_xfs_data *data) -{ - return ((data)->sblock.log2_agblk + (data)->sblock.log2_inop); -} - -static inline grub_uint64_t -GRUB_XFS_INO_INOINAG (struct grub_xfs_data *data, - grub_uint64_t ino) -{ - return (ino & ((1LL << GRUB_XFS_INO_AGBITS (data)) - 1)); -} - -static inline grub_uint64_t -GRUB_XFS_INO_AG (struct grub_xfs_data *data, - grub_uint64_t ino) -{ - return (ino >> GRUB_XFS_INO_AGBITS (data)); -} - -static inline grub_disk_addr_t -GRUB_XFS_FSB_TO_BLOCK (struct grub_xfs_data *data, grub_disk_addr_t fsb) -{ - return ((fsb >> data->sblock.log2_agblk) * data->agsize - + (fsb & ((1LL << data->sblock.log2_agblk) - 1))); -} - -static inline grub_uint64_t -GRUB_XFS_EXTENT_OFFSET (struct grub_xfs_extent *exts, int ex) -{ - return ((grub_be_to_cpu32 (exts[ex].raw[0]) & ~(1 << 31)) << 23 - | grub_be_to_cpu32 (exts[ex].raw[1]) >> 9); -} - -static inline grub_uint64_t -GRUB_XFS_EXTENT_BLOCK (struct grub_xfs_extent *exts, int ex) -{ - return ((grub_uint64_t) (grub_be_to_cpu32 (exts[ex].raw[1]) - & (0x1ff)) << 43 - | (grub_uint64_t) grub_be_to_cpu32 (exts[ex].raw[2]) << 11 - | grub_be_to_cpu32 (exts[ex].raw[3]) >> 21); -} - -static inline grub_uint64_t -GRUB_XFS_EXTENT_SIZE (struct grub_xfs_extent *exts, int ex) -{ - return (grub_be_to_cpu32 (exts[ex].raw[3]) & ((1 << 21) - 1)); -} - - -static inline grub_uint64_t -grub_xfs_inode_block (struct grub_xfs_data *data, - grub_uint64_t ino) -{ - long long int inoinag = GRUB_XFS_INO_INOINAG (data, ino); - long long ag = GRUB_XFS_INO_AG (data, ino); - long long block; - - block = (inoinag >> data->sblock.log2_inop) + ag * data->agsize; - block <<= (data->sblock.log2_bsize - GRUB_DISK_SECTOR_BITS); - return block; -} - - -static inline int -grub_xfs_inode_offset (struct grub_xfs_data *data, - grub_uint64_t ino) -{ - int inoag = GRUB_XFS_INO_INOINAG (data, ino); - return ((inoag & ((1 << data->sblock.log2_inop) - 1)) << - data->sblock.log2_inode); -} - -static inline grub_size_t -grub_xfs_inode_size(struct grub_xfs_data *data) -{ - return (grub_size_t)1 << data->sblock.log2_inode; -} - -/* - * Returns size occupied by XFS inode stored in memory - we store struct - * grub_fshelp_node there but on disk inode size may be actually larger than - * struct grub_xfs_inode so we need to account for that so that we can read - * from disk directly into in-memory structure. - */ -static inline grub_size_t -grub_xfs_fshelp_size(struct grub_xfs_data *data) -{ - return sizeof (struct grub_fshelp_node) - sizeof (struct grub_xfs_inode) - + grub_xfs_inode_size(data); -} - -/* This should return void * but XFS code is error-prone with alignment, so - return char to retain cast-align. - */ -static char * -grub_xfs_inode_data(struct grub_xfs_inode *inode) -{ - if (inode->version <= 2) - return ((char *)inode) + XFS_V2_INODE_SIZE; - return ((char *)inode) + XFS_V3_INODE_SIZE; -} - -static struct grub_xfs_dir_entry * -grub_xfs_inline_de(struct grub_xfs_dir_header *head) -{ - /* - With small inode numbers the header is 4 bytes smaller because of - smaller parent pointer - */ - return (struct grub_xfs_dir_entry *) - (((char *) head) + sizeof(struct grub_xfs_dir_header) - - (head->largeino ? 0 : sizeof(grub_uint32_t))); -} - -static grub_uint8_t * -grub_xfs_inline_de_inopos(struct grub_xfs_data *data, - struct grub_xfs_dir_entry *de) -{ - return ((grub_uint8_t *)(de + 1)) + de->len - 1 + (data->hasftype ? 1 : 0); -} - -static struct grub_xfs_dir_entry * -grub_xfs_inline_next_de(struct grub_xfs_data *data, - struct grub_xfs_dir_header *head, - struct grub_xfs_dir_entry *de) -{ - char *p = (char *)de + sizeof(struct grub_xfs_dir_entry) - 1 + de->len; - - p += head->largeino ? sizeof(grub_uint64_t) : sizeof(grub_uint32_t); - if (data->hasftype) - p++; - - return (struct grub_xfs_dir_entry *)p; -} - -static struct grub_xfs_dirblock_tail * -grub_xfs_dir_tail(struct grub_xfs_data *data, void *dirblock) -{ - int dirblksize = 1 << (data->sblock.log2_bsize + data->sblock.log2_dirblk); - - return (struct grub_xfs_dirblock_tail *) - ((char *)dirblock + dirblksize - sizeof (struct grub_xfs_dirblock_tail)); -} - -static struct grub_xfs_dir2_entry * -grub_xfs_first_de(struct grub_xfs_data *data, void *dirblock) -{ - if (data->hascrc) - return (struct grub_xfs_dir2_entry *)((char *)dirblock + 64); - return (struct grub_xfs_dir2_entry *)((char *)dirblock + 16); -} - -static struct grub_xfs_dir2_entry * -grub_xfs_next_de(struct grub_xfs_data *data, struct grub_xfs_dir2_entry *de) -{ - int size = sizeof (struct grub_xfs_dir2_entry) + de->len + 2 /* Tag */; - - if (data->hasftype) - size++; /* File type */ - return (struct grub_xfs_dir2_entry *)(((char *)de) + ALIGN_UP(size, 8)); -} - -/* This should return void * but XFS code is error-prone with alignment, so - return char to retain cast-align. - */ -static char * -grub_xfs_btree_keys(struct grub_xfs_data *data, - struct grub_xfs_btree_node *leaf) -{ - char *keys = (char *)(leaf + 1); - - if (data->hascrc) - keys += 48; /* skip crc, uuid, ... */ - return keys; -} - -static grub_err_t -grub_xfs_read_inode (struct grub_xfs_data *data, grub_uint64_t ino, - struct grub_xfs_inode *inode) -{ - grub_uint64_t block = grub_xfs_inode_block (data, ino); - int offset = grub_xfs_inode_offset (data, ino); - - grub_dprintf("xfs", "Reading inode (%"PRIuGRUB_UINT64_T") - %"PRIuGRUB_UINT64_T", %d\n", - ino, block, offset); - /* Read the inode. */ - if (grub_disk_read (data->disk, block, offset, grub_xfs_inode_size(data), - inode)) - return grub_errno; - - if (grub_strncmp ((char *) inode->magic, "IN", 2)) - return grub_error (GRUB_ERR_BAD_FS, "not a correct XFS inode"); - - return 0; -} - -static grub_uint64_t -get_fsb (const void *keys, int idx) -{ - const char *p = (const char *) keys + sizeof(grub_uint64_t) * idx; - return grub_be_to_cpu64 (grub_get_unaligned64 (p)); -} - -static grub_disk_addr_t -grub_xfs_read_block (grub_fshelp_node_t node, grub_disk_addr_t fileblock) -{ - struct grub_xfs_btree_node *leaf = 0; - int ex, nrec; - struct grub_xfs_extent *exts; - grub_uint64_t ret = 0; - - if (node->inode.format == XFS_INODE_FORMAT_BTREE) - { - struct grub_xfs_btree_root *root; - const char *keys; - int recoffset; - - leaf = grub_malloc (node->data->bsize); - if (leaf == 0) - return 0; - - root = (struct grub_xfs_btree_root *) grub_xfs_inode_data(&node->inode); - nrec = grub_be_to_cpu16 (root->numrecs); - keys = (char *) &root->keys[0]; - if (node->inode.fork_offset) - recoffset = (node->inode.fork_offset - 1) / 2; - else - recoffset = (grub_xfs_inode_size(node->data) - - ((char *) keys - (char *) &node->inode)) - / (2 * sizeof (grub_uint64_t)); - do - { - int i; - - for (i = 0; i < nrec; i++) - { - if (fileblock < get_fsb(keys, i)) - break; - } - - /* Sparse block. */ - if (i == 0) - { - grub_free (leaf); - return 0; - } - - if (grub_disk_read (node->data->disk, - GRUB_XFS_FSB_TO_BLOCK (node->data, get_fsb (keys, i - 1 + recoffset)) << (node->data->sblock.log2_bsize - GRUB_DISK_SECTOR_BITS), - 0, node->data->bsize, leaf)) - return 0; - - if ((!node->data->hascrc && - grub_strncmp ((char *) leaf->magic, "BMAP", 4)) || - (node->data->hascrc && - grub_strncmp ((char *) leaf->magic, "BMA3", 4))) - { - grub_free (leaf); - grub_error (GRUB_ERR_BAD_FS, "not a correct XFS BMAP node"); - return 0; - } - - nrec = grub_be_to_cpu16 (leaf->numrecs); - keys = grub_xfs_btree_keys(node->data, leaf); - recoffset = ((node->data->bsize - ((char *) keys - - (char *) leaf)) - / (2 * sizeof (grub_uint64_t))); - } - while (leaf->level); - exts = (struct grub_xfs_extent *) keys; - } - else if (node->inode.format == XFS_INODE_FORMAT_EXT) - { - nrec = grub_be_to_cpu32 (node->inode.nextents); - exts = (struct grub_xfs_extent *) grub_xfs_inode_data(&node->inode); - } - else - { - grub_error (GRUB_ERR_NOT_IMPLEMENTED_YET, - "XFS does not support inode format %d yet", - node->inode.format); - return 0; - } - - /* Iterate over each extent to figure out which extent has - the block we are looking for. */ - for (ex = 0; ex < nrec; ex++) - { - grub_uint64_t start = GRUB_XFS_EXTENT_BLOCK (exts, ex); - grub_uint64_t offset = GRUB_XFS_EXTENT_OFFSET (exts, ex); - grub_uint64_t size = GRUB_XFS_EXTENT_SIZE (exts, ex); - - /* Sparse block. */ - if (fileblock < offset) - break; - else if (fileblock < offset + size) - { - ret = (fileblock - offset + start); - break; - } - } - - grub_free (leaf); - - return GRUB_XFS_FSB_TO_BLOCK(node->data, ret); -} - - -/* Read LEN bytes from the file described by DATA starting with byte - POS. Return the amount of read bytes in READ. */ -static grub_ssize_t -grub_xfs_read_file (grub_fshelp_node_t node, - grub_disk_read_hook_t read_hook, void *read_hook_data, - grub_off_t pos, grub_size_t len, char *buf, grub_uint32_t header_size) -{ - return grub_fshelp_read_file (node->data->disk, node, - read_hook, read_hook_data, - pos, len, buf, grub_xfs_read_block, - grub_be_to_cpu64 (node->inode.size) + header_size, - node->data->sblock.log2_bsize - - GRUB_DISK_SECTOR_BITS, 0); -} - - -static char * -grub_xfs_read_symlink (grub_fshelp_node_t node) -{ - grub_ssize_t size = grub_be_to_cpu64 (node->inode.size); - - if (size < 0) - { - grub_error (GRUB_ERR_BAD_FS, "invalid symlink"); - return 0; - } - - switch (node->inode.format) - { - case XFS_INODE_FORMAT_INO: - return grub_strndup (grub_xfs_inode_data(&node->inode), size); - - case XFS_INODE_FORMAT_EXT: - { - char *symlink; - grub_ssize_t numread; - int off = 0; - - if (node->data->hascrc) - off = 56; - - symlink = grub_malloc (size + 1); - if (!symlink) - return 0; - - node->inode.size = grub_be_to_cpu64 (size + off); - numread = grub_xfs_read_file (node, 0, 0, off, size, symlink, off); - if (numread != size) - { - grub_free (symlink); - return 0; - } - symlink[size] = '\0'; - return symlink; - } - } - - return 0; -} - - -static enum grub_fshelp_filetype -grub_xfs_mode_to_filetype (grub_uint16_t mode) -{ - if ((grub_be_to_cpu16 (mode) - & FILETYPE_INO_MASK) == FILETYPE_INO_DIRECTORY) - return GRUB_FSHELP_DIR; - else if ((grub_be_to_cpu16 (mode) - & FILETYPE_INO_MASK) == FILETYPE_INO_SYMLINK) - return GRUB_FSHELP_SYMLINK; - else if ((grub_be_to_cpu16 (mode) - & FILETYPE_INO_MASK) == FILETYPE_INO_REG) - return GRUB_FSHELP_REG; - return GRUB_FSHELP_UNKNOWN; -} - - -/* Context for grub_xfs_iterate_dir. */ -struct grub_xfs_iterate_dir_ctx -{ - grub_fshelp_iterate_dir_hook_t hook; - void *hook_data; - struct grub_fshelp_node *diro; -}; - -/* Helper for grub_xfs_iterate_dir. */ -static int iterate_dir_call_hook (grub_uint64_t ino, const char *filename, - struct grub_xfs_iterate_dir_ctx *ctx) -{ - struct grub_fshelp_node *fdiro; - grub_err_t err; - - fdiro = grub_malloc (grub_xfs_fshelp_size(ctx->diro->data) + 1); - if (!fdiro) - { - grub_print_error (); - return 0; - } - - /* The inode should be read, otherwise the filetype can - not be determined. */ - fdiro->ino = ino; - fdiro->inode_read = 1; - fdiro->data = ctx->diro->data; - err = grub_xfs_read_inode (ctx->diro->data, ino, &fdiro->inode); - if (err) - { - grub_print_error (); - return 0; - } - - return ctx->hook (filename, grub_xfs_mode_to_filetype (fdiro->inode.mode), - fdiro, ctx->hook_data); -} - -static int -grub_xfs_iterate_dir (grub_fshelp_node_t dir, - grub_fshelp_iterate_dir_hook_t hook, void *hook_data) -{ - struct grub_fshelp_node *diro = (struct grub_fshelp_node *) dir; - struct grub_xfs_iterate_dir_ctx ctx = { - .hook = hook, - .hook_data = hook_data, - .diro = diro - }; - - switch (diro->inode.format) - { - case XFS_INODE_FORMAT_INO: - { - struct grub_xfs_dir_header *head = (struct grub_xfs_dir_header *) grub_xfs_inode_data(&diro->inode); - struct grub_xfs_dir_entry *de = grub_xfs_inline_de(head); - int smallino = !head->largeino; - int i; - grub_uint64_t parent; - - /* If small inode numbers are used to pack the direntry, the - parent inode number is small too. */ - if (smallino) - parent = grub_be_to_cpu32 (head->parent.i4); - else - parent = grub_be_to_cpu64 (head->parent.i8); - - /* Synthesize the direntries for `.' and `..'. */ - if (iterate_dir_call_hook (diro->ino, ".", &ctx)) - return 1; - - if (iterate_dir_call_hook (parent, "..", &ctx)) - return 1; - - for (i = 0; i < head->count; i++) - { - grub_uint64_t ino; - grub_uint8_t *inopos = grub_xfs_inline_de_inopos(dir->data, de); - grub_uint8_t c; - - /* inopos might be unaligned. */ - if (smallino) - ino = (((grub_uint32_t) inopos[0]) << 24) - | (((grub_uint32_t) inopos[1]) << 16) - | (((grub_uint32_t) inopos[2]) << 8) - | (((grub_uint32_t) inopos[3]) << 0); - else - ino = (((grub_uint64_t) inopos[0]) << 56) - | (((grub_uint64_t) inopos[1]) << 48) - | (((grub_uint64_t) inopos[2]) << 40) - | (((grub_uint64_t) inopos[3]) << 32) - | (((grub_uint64_t) inopos[4]) << 24) - | (((grub_uint64_t) inopos[5]) << 16) - | (((grub_uint64_t) inopos[6]) << 8) - | (((grub_uint64_t) inopos[7]) << 0); - - c = de->name[de->len]; - de->name[de->len] = '\0'; - if (iterate_dir_call_hook (ino, de->name, &ctx)) - { - de->name[de->len] = c; - return 1; - } - de->name[de->len] = c; - - de = grub_xfs_inline_next_de(dir->data, head, de); - } - break; - } - - case XFS_INODE_FORMAT_BTREE: - case XFS_INODE_FORMAT_EXT: - { - grub_ssize_t numread; - char *dirblock; - grub_uint64_t blk; - int dirblk_size, dirblk_log2; - - dirblk_log2 = (dir->data->sblock.log2_bsize - + dir->data->sblock.log2_dirblk); - dirblk_size = 1 << dirblk_log2; - - dirblock = grub_malloc (dirblk_size); - if (! dirblock) - return 0; - - /* Iterate over every block the directory has. */ - for (blk = 0; - blk < (grub_be_to_cpu64 (dir->inode.size) - >> dirblk_log2); - blk++) - { - struct grub_xfs_dir2_entry *direntry = - grub_xfs_first_de(dir->data, dirblock); - int entries; - struct grub_xfs_dirblock_tail *tail = - grub_xfs_dir_tail(dir->data, dirblock); - - numread = grub_xfs_read_file (dir, 0, 0, - blk << dirblk_log2, - dirblk_size, dirblock, 0); - if (numread != dirblk_size) - return 0; - - entries = (grub_be_to_cpu32 (tail->leaf_count) - - grub_be_to_cpu32 (tail->leaf_stale)); - - if (!entries) - continue; - - /* Iterate over all entries within this block. */ - while ((char *)direntry < (char *)tail) - { - grub_uint8_t *freetag; - char *filename; - - freetag = (grub_uint8_t *) direntry; - - if (grub_get_unaligned16 (freetag) == 0XFFFF) - { - grub_uint8_t *skip = (freetag + sizeof (grub_uint16_t)); - - /* This entry is not used, go to the next one. */ - direntry = (struct grub_xfs_dir2_entry *) - (((char *)direntry) + - grub_be_to_cpu16 (grub_get_unaligned16 (skip))); - - continue; - } - - filename = (char *)(direntry + 1); - /* The byte after the filename is for the filetype, padding, or - tag, which is not used by GRUB. So it can be overwritten. */ - filename[direntry->len] = '\0'; - - if (iterate_dir_call_hook (grub_be_to_cpu64(direntry->inode), - filename, &ctx)) - { - grub_free (dirblock); - return 1; - } - - /* Check if last direntry in this block is - reached. */ - entries--; - if (!entries) - break; - - /* Select the next directory entry. */ - direntry = grub_xfs_next_de(dir->data, direntry); - } - } - grub_free (dirblock); - break; - } - - default: - grub_error (GRUB_ERR_NOT_IMPLEMENTED_YET, - "XFS does not support inode format %d yet", - diro->inode.format); - } - return 0; -} - - -static struct grub_xfs_data * -grub_xfs_mount (grub_disk_t disk) -{ - struct grub_xfs_data *data = 0; - - data = grub_zalloc (sizeof (struct grub_xfs_data)); - if (!data) - return 0; - - grub_dprintf("xfs", "Reading sb\n"); - /* Read the superblock. */ - if (grub_disk_read (disk, 0, 0, - sizeof (struct grub_xfs_sblock), &data->sblock)) - goto fail; - - if (!grub_xfs_sb_valid(data)) - goto fail; - - data = grub_realloc (data, - sizeof (struct grub_xfs_data) - - sizeof (struct grub_xfs_inode) - + grub_xfs_inode_size(data) + 1); - - if (! data) - goto fail; - - data->diropen.data = data; - data->diropen.ino = grub_be_to_cpu64(data->sblock.rootino); - data->diropen.inode_read = 1; - data->bsize = grub_be_to_cpu32 (data->sblock.bsize); - data->agsize = grub_be_to_cpu32 (data->sblock.agsize); - data->hasftype = grub_xfs_sb_hasftype(data); - data->hascrc = grub_xfs_sb_hascrc(data); - - data->disk = disk; - data->pos = 0; - grub_dprintf("xfs", "Reading root ino %"PRIuGRUB_UINT64_T"\n", - grub_cpu_to_be64(data->sblock.rootino)); - - grub_xfs_read_inode (data, data->diropen.ino, &data->diropen.inode); - - return data; - fail: - - if (grub_errno == GRUB_ERR_OUT_OF_RANGE) - grub_error (GRUB_ERR_BAD_FS, "not an XFS filesystem"); - - grub_free (data); - - return 0; -} - - -/* Context for grub_xfs_dir. */ -struct grub_xfs_dir_ctx -{ - grub_fs_dir_hook_t hook; - void *hook_data; -}; - -/* Helper for grub_xfs_dir. */ -static int -grub_xfs_dir_iter (const char *filename, enum grub_fshelp_filetype filetype, - grub_fshelp_node_t node, void *data) -{ - struct grub_xfs_dir_ctx *ctx = data; - struct grub_dirhook_info info; - - grub_memset (&info, 0, sizeof (info)); - if (node->inode_read) - { - info.mtimeset = 1; - info.mtime = grub_be_to_cpu32 (node->inode.mtime.sec); - } - info.dir = ((filetype & GRUB_FSHELP_TYPE_MASK) == GRUB_FSHELP_DIR); - grub_free (node); - return ctx->hook (filename, &info, ctx->hook_data); -} - -static grub_err_t -grub_xfs_dir (grub_device_t device, const char *path, - grub_fs_dir_hook_t hook, void *hook_data) -{ - struct grub_xfs_dir_ctx ctx = { hook, hook_data }; - struct grub_xfs_data *data = 0; - struct grub_fshelp_node *fdiro = 0; - - grub_dl_ref (my_mod); - - data = grub_xfs_mount (device->disk); - if (!data) - goto mount_fail; - - grub_fshelp_find_file (path, &data->diropen, &fdiro, grub_xfs_iterate_dir, - grub_xfs_read_symlink, GRUB_FSHELP_DIR); - if (grub_errno) - goto fail; - - grub_xfs_iterate_dir (fdiro, grub_xfs_dir_iter, &ctx); - - fail: - if (fdiro != &data->diropen) - grub_free (fdiro); - grub_free (data); - - mount_fail: - - grub_dl_unref (my_mod); - - return grub_errno; -} - - -/* Open a file named NAME and initialize FILE. */ -static grub_err_t -grub_xfs_open (struct grub_file *file, const char *name) -{ - struct grub_xfs_data *data; - struct grub_fshelp_node *fdiro = 0; - - grub_dl_ref (my_mod); - - data = grub_xfs_mount (file->device->disk); - if (!data) - goto mount_fail; - - grub_fshelp_find_file (name, &data->diropen, &fdiro, grub_xfs_iterate_dir, - grub_xfs_read_symlink, GRUB_FSHELP_REG); - if (grub_errno) - goto fail; - - if (!fdiro->inode_read) - { - grub_xfs_read_inode (data, fdiro->ino, &fdiro->inode); - if (grub_errno) - goto fail; - } - - if (fdiro != &data->diropen) - { - grub_memcpy (&data->diropen, fdiro, grub_xfs_fshelp_size(data)); - grub_free (fdiro); - } - - file->size = grub_be_to_cpu64 (data->diropen.inode.size); - file->data = data; - file->offset = 0; - - return 0; - - fail: - if (fdiro != &data->diropen) - grub_free (fdiro); - grub_free (data); - - mount_fail: - grub_dl_unref (my_mod); - - return grub_errno; -} - - -static grub_ssize_t -grub_xfs_read (grub_file_t file, char *buf, grub_size_t len) -{ - struct grub_xfs_data *data = - (struct grub_xfs_data *) file->data; - - return grub_xfs_read_file (&data->diropen, - file->read_hook, file->read_hook_data, - file->offset, len, buf, 0); -} - - -static grub_err_t -grub_xfs_close (grub_file_t file) -{ - grub_free (file->data); - - grub_dl_unref (my_mod); - - return GRUB_ERR_NONE; -} - - -static grub_err_t -grub_xfs_label (grub_device_t device, char **label) -{ - struct grub_xfs_data *data; - grub_disk_t disk = device->disk; - - grub_dl_ref (my_mod); - - data = grub_xfs_mount (disk); - if (data) - *label = grub_strndup ((char *) (data->sblock.label), 12); - else - *label = 0; - - grub_dl_unref (my_mod); - - grub_free (data); - - return grub_errno; -} - -static grub_err_t -grub_xfs_uuid (grub_device_t device, char **uuid) -{ - struct grub_xfs_data *data; - grub_disk_t disk = device->disk; - - grub_dl_ref (my_mod); - - data = grub_xfs_mount (disk); - if (data) - { - *uuid = grub_xasprintf ("%04x%04x-%04x-%04x-%04x-%04x%04x%04x", - grub_be_to_cpu16 (data->sblock.uuid[0]), - grub_be_to_cpu16 (data->sblock.uuid[1]), - grub_be_to_cpu16 (data->sblock.uuid[2]), - grub_be_to_cpu16 (data->sblock.uuid[3]), - grub_be_to_cpu16 (data->sblock.uuid[4]), - grub_be_to_cpu16 (data->sblock.uuid[5]), - grub_be_to_cpu16 (data->sblock.uuid[6]), - grub_be_to_cpu16 (data->sblock.uuid[7])); - } - else - *uuid = NULL; - - grub_dl_unref (my_mod); - - grub_free (data); - - return grub_errno; -} - - - -static struct grub_fs grub_xfs_fs = - { - .name = "xfs", - .fs_dir = grub_xfs_dir, - .fs_open = grub_xfs_open, - .fs_read = grub_xfs_read, - .fs_close = grub_xfs_close, - .fs_label = grub_xfs_label, - .fs_uuid = grub_xfs_uuid, -#ifdef GRUB_UTIL - .reserved_first_sector = 0, - .blocklist_install = 1, -#endif - .next = 0 - }; - -GRUB_MOD_INIT(xfs) -{ - grub_fs_register (&grub_xfs_fs); - my_mod = mod; -} - -GRUB_MOD_FINI(xfs) -{ - grub_fs_unregister (&grub_xfs_fs); -} diff --git a/thirdparty/grub-2.04/grub-core/fs/zfs/zfs.c b/thirdparty/grub-2.04/grub-core/fs/zfs/zfs.c deleted file mode 100644 index 2f72e42bf..000000000 --- a/thirdparty/grub-2.04/grub-core/fs/zfs/zfs.c +++ /dev/null @@ -1,4378 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 1999,2000,2001,2002,2003,2004,2009,2010,2011 Free Software Foundation, Inc. - * Copyright 2010 Sun Microsystems, Inc. - * Copyright (c) 2012 by Delphix. All rights reserved. - * - * GRUB is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ -/* - * The zfs plug-in routines for GRUB are: - * - * zfs_mount() - locates a valid uberblock of the root pool and reads - * in its MOS at the memory address MOS. - * - * zfs_open() - locates a plain file object by following the MOS - * and places its dnode at the memory address DNODE. - * - * zfs_read() - read in the data blocks pointed by the DNODE. - * - */ - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -#define ZPOOL_PROP_BOOTFS "bootfs" - -/* - * For nvlist manipulation. (from nvpair.h) - */ -#define NV_ENCODE_NATIVE 0 -#define NV_ENCODE_XDR 1 -#define NV_BIG_ENDIAN 0 -#define NV_LITTLE_ENDIAN 1 -#define DATA_TYPE_UINT64 8 -#define DATA_TYPE_STRING 9 -#define DATA_TYPE_NVLIST 19 -#define DATA_TYPE_NVLIST_ARRAY 20 - -#ifndef GRUB_UTIL -static grub_dl_t my_mod; -#endif - -#define P2PHASE(x, align) ((x) & ((align) - 1)) - -static inline grub_disk_addr_t -DVA_OFFSET_TO_PHYS_SECTOR (grub_disk_addr_t offset) -{ - return ((offset + VDEV_LABEL_START_SIZE) >> SPA_MINBLOCKSHIFT); -} - -/* - * FAT ZAP data structures - */ -#define ZFS_CRC64_POLY 0xC96C5795D7870F42ULL /* ECMA-182, reflected form */ -static inline grub_uint64_t -ZAP_HASH_IDX (grub_uint64_t hash, grub_uint64_t n) -{ - return (((n) == 0) ? 0 : ((hash) >> (64 - (n)))); -} - -#define CHAIN_END 0xffff /* end of the chunk chain */ - -/* - * The amount of space within the chunk available for the array is: - * chunk size - space for type (1) - space for next pointer (2) - */ -#define ZAP_LEAF_ARRAY_BYTES (ZAP_LEAF_CHUNKSIZE - 3) - -static inline int -ZAP_LEAF_HASH_SHIFT (int bs) -{ - return bs - 5; -} - -static inline int -ZAP_LEAF_HASH_NUMENTRIES (int bs) -{ - return 1 << ZAP_LEAF_HASH_SHIFT(bs); -} - -static inline grub_size_t -LEAF_HASH (int bs, grub_uint64_t h, zap_leaf_phys_t *l) -{ - return ((ZAP_LEAF_HASH_NUMENTRIES (bs)-1) - & ((h) >> (64 - ZAP_LEAF_HASH_SHIFT (bs) - l->l_hdr.lh_prefix_len))); -} - -/* - * The amount of space available for chunks is: - * block size shift - hash entry size (2) * number of hash - * entries - header space (2*chunksize) - */ -static inline int -ZAP_LEAF_NUMCHUNKS (int bs) -{ - return (((1U << bs) - 2 * ZAP_LEAF_HASH_NUMENTRIES (bs)) / - ZAP_LEAF_CHUNKSIZE - 2); -} - -/* - * The chunks start immediately after the hash table. The end of the - * hash table is at l_hash + HASH_NUMENTRIES, which we simply cast to a - * chunk_t. - */ -static inline zap_leaf_chunk_t * -ZAP_LEAF_CHUNK (zap_leaf_phys_t *l, int bs, int idx) -{ - return &((zap_leaf_chunk_t *) (l->l_entries - + (ZAP_LEAF_HASH_NUMENTRIES(bs) * 2) - / sizeof (grub_properly_aligned_t)))[idx]; -} - -static inline struct zap_leaf_entry * -ZAP_LEAF_ENTRY(zap_leaf_phys_t *l, int bs, int idx) -{ - return &ZAP_LEAF_CHUNK(l, bs, idx)->l_entry; -} - - -/* - * Decompression Entry - lzjb & lz4 - */ - -extern grub_err_t lzjb_decompress (void *, void *, grub_size_t, grub_size_t); - -extern grub_err_t lz4_decompress (void *, void *, grub_size_t, grub_size_t); - -typedef grub_err_t zfs_decomp_func_t (void *s_start, void *d_start, - grub_size_t s_len, grub_size_t d_len); -typedef struct decomp_entry -{ - const char *name; - zfs_decomp_func_t *decomp_func; -} decomp_entry_t; - -/* - * Signature for checksum functions. - */ -typedef void zio_checksum_t(const void *data, grub_uint64_t size, - grub_zfs_endian_t endian, zio_cksum_t *zcp); - -/* - * Information about each checksum function. - */ -typedef struct zio_checksum_info { - zio_checksum_t *ci_func; /* checksum function for each byteorder */ - int ci_correctable; /* number of correctable bits */ - int ci_eck; /* uses zio embedded checksum? */ - const char *ci_name; /* descriptive name */ -} zio_checksum_info_t; - -typedef struct dnode_end -{ - dnode_phys_t dn; - grub_zfs_endian_t endian; -} dnode_end_t; - -struct grub_zfs_device_desc -{ - enum { DEVICE_LEAF, DEVICE_MIRROR, DEVICE_RAIDZ } type; - grub_uint64_t id; - grub_uint64_t guid; - unsigned ashift; - unsigned max_children_ashift; - - /* Valid only for non-leafs. */ - unsigned n_children; - struct grub_zfs_device_desc *children; - - /* Valid only for RAIDZ. */ - unsigned nparity; - - /* Valid only for leaf devices. */ - grub_device_t dev; - grub_disk_addr_t vdev_phys_sector; - uberblock_t current_uberblock; - int original; -}; - -struct subvolume -{ - dnode_end_t mdn; - grub_uint64_t obj; - grub_uint64_t case_insensitive; - grub_size_t nkeys; - struct - { - grub_crypto_cipher_handle_t cipher; - grub_uint64_t txg; - grub_uint64_t algo; - } *keyring; -}; - -struct grub_zfs_data -{ - /* cache for a file block of the currently zfs_open()-ed file */ - char *file_buf; - grub_uint64_t file_start; - grub_uint64_t file_end; - - /* cache for a dnode block */ - dnode_phys_t *dnode_buf; - dnode_phys_t *dnode_mdn; - grub_uint64_t dnode_start; - grub_uint64_t dnode_end; - grub_zfs_endian_t dnode_endian; - - dnode_end_t mos; - dnode_end_t dnode; - struct subvolume subvol; - - struct grub_zfs_device_desc *devices_attached; - unsigned n_devices_attached; - unsigned n_devices_allocated; - struct grub_zfs_device_desc *device_original; - - uberblock_t current_uberblock; - - grub_uint64_t guid; -}; - -/* Context for grub_zfs_dir. */ -struct grub_zfs_dir_ctx -{ - grub_fs_dir_hook_t hook; - void *hook_data; - struct grub_zfs_data *data; -}; - -grub_err_t (*grub_zfs_decrypt) (grub_crypto_cipher_handle_t cipher, - grub_uint64_t algo, - void *nonce, - char *buf, grub_size_t size, - const grub_uint32_t *expected_mac, - grub_zfs_endian_t endian) = NULL; -grub_crypto_cipher_handle_t (*grub_zfs_load_key) (const struct grub_zfs_key *key, - grub_size_t keysize, - grub_uint64_t salt, - grub_uint64_t algo) = NULL; -/* - * List of pool features that the grub implementation of ZFS supports for - * read. Note that features that are only required for write do not need - * to be listed here since grub opens pools in read-only mode. - */ -#define MAX_SUPPORTED_FEATURE_STRLEN 50 -static const char *spa_feature_names[] = { - "org.illumos:lz4_compress", - "com.delphix:hole_birth", - "com.delphix:embedded_data", - "com.delphix:extensible_dataset", - "org.open-zfs:large_blocks", - NULL -}; - -static int -check_feature(const char *name, grub_uint64_t val, struct grub_zfs_dir_ctx *ctx); -static grub_err_t -check_mos_features(dnode_phys_t *mosmdn_phys,grub_zfs_endian_t endian,struct grub_zfs_data* data ); - -static grub_err_t -zlib_decompress (void *s, void *d, - grub_size_t slen, grub_size_t dlen) -{ - if (grub_zlib_decompress (s, slen, 0, d, dlen) == (grub_ssize_t) dlen) - return GRUB_ERR_NONE; - - if (!grub_errno) - grub_error (GRUB_ERR_BAD_COMPRESSED_DATA, - "premature end of compressed"); - return grub_errno; -} - -static grub_err_t -zle_decompress (void *s, void *d, - grub_size_t slen, grub_size_t dlen) -{ - grub_uint8_t *iptr, *optr; - grub_size_t clen; - for (iptr = s, optr = d; iptr < (grub_uint8_t *) s + slen - && optr < (grub_uint8_t *) d + dlen;) - { - if (*iptr & 0x80) - clen = ((*iptr) & 0x7f) + 0x41; - else - clen = ((*iptr) & 0x3f) + 1; - if ((grub_ssize_t) clen > (grub_uint8_t *) d + dlen - optr) - clen = (grub_uint8_t *) d + dlen - optr; - if (*iptr & 0x40 || *iptr & 0x80) - { - grub_memset (optr, 0, clen); - iptr++; - optr += clen; - continue; - } - if ((grub_ssize_t) clen > (grub_uint8_t *) s + slen - iptr - 1) - clen = (grub_uint8_t *) s + slen - iptr - 1; - grub_memcpy (optr, iptr + 1, clen); - optr += clen; - iptr += clen + 1; - } - if (optr < (grub_uint8_t *) d + dlen) - grub_memset (optr, 0, (grub_uint8_t *) d + dlen - optr); - return GRUB_ERR_NONE; -} - -static decomp_entry_t decomp_table[ZIO_COMPRESS_FUNCTIONS] = { - {"inherit", NULL}, /* ZIO_COMPRESS_INHERIT */ - {"on", lzjb_decompress}, /* ZIO_COMPRESS_ON */ - {"off", NULL}, /* ZIO_COMPRESS_OFF */ - {"lzjb", lzjb_decompress}, /* ZIO_COMPRESS_LZJB */ - {"empty", NULL}, /* ZIO_COMPRESS_EMPTY */ - {"gzip-1", zlib_decompress}, /* ZIO_COMPRESS_GZIP1 */ - {"gzip-2", zlib_decompress}, /* ZIO_COMPRESS_GZIP2 */ - {"gzip-3", zlib_decompress}, /* ZIO_COMPRESS_GZIP3 */ - {"gzip-4", zlib_decompress}, /* ZIO_COMPRESS_GZIP4 */ - {"gzip-5", zlib_decompress}, /* ZIO_COMPRESS_GZIP5 */ - {"gzip-6", zlib_decompress}, /* ZIO_COMPRESS_GZIP6 */ - {"gzip-7", zlib_decompress}, /* ZIO_COMPRESS_GZIP7 */ - {"gzip-8", zlib_decompress}, /* ZIO_COMPRESS_GZIP8 */ - {"gzip-9", zlib_decompress}, /* ZIO_COMPRESS_GZIP9 */ - {"zle", zle_decompress}, /* ZIO_COMPRESS_ZLE */ - {"lz4", lz4_decompress}, /* ZIO_COMPRESS_LZ4 */ -}; - -static grub_err_t zio_read_data (blkptr_t * bp, grub_zfs_endian_t endian, - void *buf, struct grub_zfs_data *data); - -/* - * Our own version of log2(). Same thing as highbit()-1. - */ -static int -zfs_log2 (grub_uint64_t num) -{ - int i = 0; - - while (num > 1) - { - i++; - num = num >> 1; - } - - return i; -} - -/* Checksum Functions */ -static void -zio_checksum_off (const void *buf __attribute__ ((unused)), - grub_uint64_t size __attribute__ ((unused)), - grub_zfs_endian_t endian __attribute__ ((unused)), - zio_cksum_t * zcp) -{ - ZIO_SET_CHECKSUM (zcp, 0, 0, 0, 0); -} - -/* Checksum Table and Values */ -static zio_checksum_info_t zio_checksum_table[ZIO_CHECKSUM_FUNCTIONS] = { - {NULL, 0, 0, "inherit"}, - {NULL, 0, 0, "on"}, - {zio_checksum_off, 0, 0, "off"}, - {zio_checksum_SHA256, 1, 1, "label"}, - {zio_checksum_SHA256, 1, 1, "gang_header"}, - {NULL, 0, 0, "zilog"}, - {fletcher_2, 0, 0, "fletcher2"}, - {fletcher_4, 1, 0, "fletcher4"}, - {zio_checksum_SHA256, 1, 0, "SHA256"}, - {NULL, 0, 0, "zilog2"}, - {zio_checksum_SHA256, 1, 0, "SHA256+MAC"}, -}; - -/* - * zio_checksum_verify: Provides support for checksum verification. - * - * Fletcher2, Fletcher4, and SHA256 are supported. - * - */ -static grub_err_t -zio_checksum_verify (zio_cksum_t zc, grub_uint32_t checksum, - grub_zfs_endian_t endian, - char *buf, grub_size_t size) -{ - zio_eck_t *zec = (zio_eck_t *) (buf + size) - 1; - zio_checksum_info_t *ci = &zio_checksum_table[checksum]; - zio_cksum_t actual_cksum, expected_cksum; - - if (checksum >= ZIO_CHECKSUM_FUNCTIONS || ci->ci_func == NULL) - { - grub_dprintf ("zfs", "unknown checksum function %d\n", checksum); - return grub_error (GRUB_ERR_NOT_IMPLEMENTED_YET, - "unknown checksum function %d", checksum); - } - - if (ci->ci_eck) - { - expected_cksum = zec->zec_cksum; - zec->zec_cksum = zc; - ci->ci_func (buf, size, endian, &actual_cksum); - zec->zec_cksum = expected_cksum; - zc = expected_cksum; - } - else - ci->ci_func (buf, size, endian, &actual_cksum); - - if (grub_memcmp (&actual_cksum, &zc, - checksum != ZIO_CHECKSUM_SHA256_MAC ? 32 : 20) != 0) - { - grub_dprintf ("zfs", "checksum %s verification failed\n", ci->ci_name); - grub_dprintf ("zfs", "actual checksum %016llx %016llx %016llx %016llx\n", - (unsigned long long) actual_cksum.zc_word[0], - (unsigned long long) actual_cksum.zc_word[1], - (unsigned long long) actual_cksum.zc_word[2], - (unsigned long long) actual_cksum.zc_word[3]); - grub_dprintf ("zfs", "expected checksum %016llx %016llx %016llx %016llx\n", - (unsigned long long) zc.zc_word[0], - (unsigned long long) zc.zc_word[1], - (unsigned long long) zc.zc_word[2], - (unsigned long long) zc.zc_word[3]); - return grub_error (GRUB_ERR_BAD_FS, N_("checksum verification failed")); - } - - return GRUB_ERR_NONE; -} - -/* - * vdev_uberblock_compare takes two uberblock structures and returns an integer - * indicating the more recent of the two. - * Return Value = 1 if ub2 is more recent - * Return Value = -1 if ub1 is more recent - * The most recent uberblock is determined using its transaction number and - * timestamp. The uberblock with the highest transaction number is - * considered "newer". If the transaction numbers of the two blocks match, the - * timestamps are compared to determine the "newer" of the two. - */ -static int -vdev_uberblock_compare (uberblock_t * ub1, uberblock_t * ub2) -{ - grub_zfs_endian_t ub1_endian, ub2_endian; - if (grub_zfs_to_cpu64 (ub1->ub_magic, GRUB_ZFS_LITTLE_ENDIAN) - == UBERBLOCK_MAGIC) - ub1_endian = GRUB_ZFS_LITTLE_ENDIAN; - else - ub1_endian = GRUB_ZFS_BIG_ENDIAN; - if (grub_zfs_to_cpu64 (ub2->ub_magic, GRUB_ZFS_LITTLE_ENDIAN) - == UBERBLOCK_MAGIC) - ub2_endian = GRUB_ZFS_LITTLE_ENDIAN; - else - ub2_endian = GRUB_ZFS_BIG_ENDIAN; - - if (grub_zfs_to_cpu64 (ub1->ub_txg, ub1_endian) - < grub_zfs_to_cpu64 (ub2->ub_txg, ub2_endian)) - return -1; - if (grub_zfs_to_cpu64 (ub1->ub_txg, ub1_endian) - > grub_zfs_to_cpu64 (ub2->ub_txg, ub2_endian)) - return 1; - - if (grub_zfs_to_cpu64 (ub1->ub_timestamp, ub1_endian) - < grub_zfs_to_cpu64 (ub2->ub_timestamp, ub2_endian)) - return -1; - if (grub_zfs_to_cpu64 (ub1->ub_timestamp, ub1_endian) - > grub_zfs_to_cpu64 (ub2->ub_timestamp, ub2_endian)) - return 1; - - return 0; -} - -/* - * Three pieces of information are needed to verify an uberblock: the magic - * number, the version number, and the checksum. - * - * Currently Implemented: version number, magic number, checksum - * - */ -static grub_err_t -uberblock_verify (uberblock_phys_t * ub, grub_uint64_t offset, - grub_size_t s) -{ - uberblock_t *uber = &ub->ubp_uberblock; - grub_err_t err; - grub_zfs_endian_t endian = GRUB_ZFS_UNKNOWN_ENDIAN; - zio_cksum_t zc; - - if (grub_zfs_to_cpu64 (uber->ub_magic, GRUB_ZFS_LITTLE_ENDIAN) - == UBERBLOCK_MAGIC - && SPA_VERSION_IS_SUPPORTED(grub_zfs_to_cpu64 (uber->ub_version, GRUB_ZFS_LITTLE_ENDIAN))) - endian = GRUB_ZFS_LITTLE_ENDIAN; - - if (grub_zfs_to_cpu64 (uber->ub_magic, GRUB_ZFS_BIG_ENDIAN) == UBERBLOCK_MAGIC - && SPA_VERSION_IS_SUPPORTED(grub_zfs_to_cpu64 (uber->ub_version, GRUB_ZFS_BIG_ENDIAN))) - endian = GRUB_ZFS_BIG_ENDIAN; - - if (endian == GRUB_ZFS_UNKNOWN_ENDIAN) - return grub_error (GRUB_ERR_BAD_FS, "invalid uberblock magic"); - - grub_memset (&zc, 0, sizeof (zc)); - - zc.zc_word[0] = grub_cpu_to_zfs64 (offset, endian); - err = zio_checksum_verify (zc, ZIO_CHECKSUM_LABEL, endian, - (char *) ub, s); - - return err; -} - -/* - * Find the best uberblock. - * Return: - * Success - Pointer to the best uberblock. - * Failure - NULL - */ -static uberblock_phys_t * -find_bestub (uberblock_phys_t * ub_array, - const struct grub_zfs_device_desc *desc) -{ - uberblock_phys_t *ubbest = NULL, *ubptr; - int i; - grub_disk_addr_t offset; - grub_err_t err = GRUB_ERR_NONE; - int ub_shift; - - ub_shift = desc->ashift; - if (ub_shift < VDEV_UBERBLOCK_SHIFT) - ub_shift = VDEV_UBERBLOCK_SHIFT; - - for (i = 0; i < (VDEV_UBERBLOCK_RING >> ub_shift); i++) - { - offset = (desc->vdev_phys_sector << SPA_MINBLOCKSHIFT) + VDEV_PHYS_SIZE - + (i << ub_shift); - - ubptr = (uberblock_phys_t *) ((grub_properly_aligned_t *) ub_array - + ((i << ub_shift) - / sizeof (grub_properly_aligned_t))); - err = uberblock_verify (ubptr, offset, 1 << ub_shift); - if (err) - { - grub_errno = GRUB_ERR_NONE; - continue; - } - if (ubbest == NULL - || vdev_uberblock_compare (&(ubptr->ubp_uberblock), - &(ubbest->ubp_uberblock)) > 0) - ubbest = ubptr; - } - if (!ubbest) - grub_errno = err; - - return ubbest; -} - -static inline grub_size_t -get_psize (blkptr_t * bp, grub_zfs_endian_t endian) -{ - return ((((grub_zfs_to_cpu64 ((bp)->blk_prop, endian) >> 16) & 0xffff) + 1) - << SPA_MINBLOCKSHIFT); -} - -static grub_uint64_t -dva_get_offset (const dva_t *dva, grub_zfs_endian_t endian) -{ - grub_dprintf ("zfs", "dva=%llx, %llx\n", - (unsigned long long) dva->dva_word[0], - (unsigned long long) dva->dva_word[1]); - return grub_zfs_to_cpu64 ((dva)->dva_word[1], - endian) << SPA_MINBLOCKSHIFT; -} - -static grub_err_t -zfs_fetch_nvlist (struct grub_zfs_device_desc *diskdesc, char **nvlist) -{ - grub_err_t err; - - *nvlist = 0; - - if (!diskdesc->dev) - return grub_error (GRUB_ERR_BUG, "member drive unknown"); - - *nvlist = grub_malloc (VDEV_PHYS_SIZE); - - /* Read in the vdev name-value pair list (112K). */ - err = grub_disk_read (diskdesc->dev->disk, diskdesc->vdev_phys_sector, 0, - VDEV_PHYS_SIZE, *nvlist); - if (err) - { - grub_free (*nvlist); - *nvlist = 0; - return err; - } - return GRUB_ERR_NONE; -} - -static grub_err_t -fill_vdev_info_real (struct grub_zfs_data *data, - const char *nvlist, - struct grub_zfs_device_desc *fill, - struct grub_zfs_device_desc *insert, - int *inserted, - unsigned ashift) -{ - char *type; - - type = grub_zfs_nvlist_lookup_string (nvlist, ZPOOL_CONFIG_TYPE); - - if (!type) - return grub_errno; - - if (!grub_zfs_nvlist_lookup_uint64 (nvlist, "id", &(fill->id))) - { - grub_free (type); - return grub_error (GRUB_ERR_BAD_FS, "couldn't find vdev id"); - } - - if (!grub_zfs_nvlist_lookup_uint64 (nvlist, "guid", &(fill->guid))) - { - grub_free (type); - return grub_error (GRUB_ERR_BAD_FS, "couldn't find vdev id"); - } - - { - grub_uint64_t par; - if (grub_zfs_nvlist_lookup_uint64 (nvlist, "ashift", &par)) - fill->ashift = par; - else if (ashift != 0xffffffff) - fill->ashift = ashift; - else - { - grub_free (type); - return grub_error (GRUB_ERR_BAD_FS, "couldn't find ashift"); - } - } - - fill->max_children_ashift = 0; - - if (grub_strcmp (type, VDEV_TYPE_DISK) == 0 - || grub_strcmp (type, VDEV_TYPE_FILE) == 0) - { - fill->type = DEVICE_LEAF; - - if (!fill->dev && fill->guid == insert->guid) - { - fill->dev = insert->dev; - fill->vdev_phys_sector = insert->vdev_phys_sector; - fill->current_uberblock = insert->current_uberblock; - fill->original = insert->original; - if (!data->device_original) - data->device_original = fill; - insert->ashift = fill->ashift; - *inserted = 1; - } - - grub_free (type); - - return GRUB_ERR_NONE; - } - - if (grub_strcmp (type, VDEV_TYPE_MIRROR) == 0 - || grub_strcmp (type, VDEV_TYPE_RAIDZ) == 0) - { - int nelm, i; - - if (grub_strcmp (type, VDEV_TYPE_MIRROR) == 0) - fill->type = DEVICE_MIRROR; - else - { - grub_uint64_t par; - fill->type = DEVICE_RAIDZ; - if (!grub_zfs_nvlist_lookup_uint64 (nvlist, "nparity", &par)) - { - grub_free (type); - return grub_error (GRUB_ERR_BAD_FS, "couldn't find raidz parity"); - } - fill->nparity = par; - } - - nelm = grub_zfs_nvlist_lookup_nvlist_array_get_nelm (nvlist, - ZPOOL_CONFIG_CHILDREN); - - if (nelm <= 0) - { - grub_free (type); - return grub_error (GRUB_ERR_BAD_FS, "incorrect mirror VDEV"); - } - - if (!fill->children) - { - fill->n_children = nelm; - - fill->children = grub_zalloc (fill->n_children - * sizeof (fill->children[0])); - } - - for (i = 0; i < nelm; i++) - { - char *child; - grub_err_t err; - - child = grub_zfs_nvlist_lookup_nvlist_array - (nvlist, ZPOOL_CONFIG_CHILDREN, i); - - err = fill_vdev_info_real (data, child, &fill->children[i], insert, - inserted, fill->ashift); - - grub_free (child); - - if (err) - { - grub_free (type); - return err; - } - if (fill->children[i].ashift > fill->max_children_ashift) - fill->max_children_ashift = fill->children[i].ashift; - } - grub_free (type); - return GRUB_ERR_NONE; - } - - grub_error (GRUB_ERR_NOT_IMPLEMENTED_YET, "vdev %s isn't supported", type); - grub_free (type); - return grub_errno; -} - -static grub_err_t -fill_vdev_info (struct grub_zfs_data *data, - char *nvlist, struct grub_zfs_device_desc *diskdesc, - int *inserted) -{ - grub_uint64_t id; - unsigned i; - - *inserted = 0; - - if (!grub_zfs_nvlist_lookup_uint64 (nvlist, "id", &id)) - return grub_error (GRUB_ERR_BAD_FS, "couldn't find vdev id"); - - for (i = 0; i < data->n_devices_attached; i++) - if (data->devices_attached[i].id == id) - return fill_vdev_info_real (data, nvlist, &data->devices_attached[i], - diskdesc, inserted, 0xffffffff); - - data->n_devices_attached++; - if (data->n_devices_attached > data->n_devices_allocated) - { - void *tmp; - data->n_devices_allocated = 2 * data->n_devices_attached + 1; - data->devices_attached - = grub_realloc (tmp = data->devices_attached, - data->n_devices_allocated - * sizeof (data->devices_attached[0])); - if (!data->devices_attached) - { - data->devices_attached = tmp; - return grub_errno; - } - } - - grub_memset (&data->devices_attached[data->n_devices_attached - 1], - 0, sizeof (data->devices_attached[data->n_devices_attached - 1])); - - return fill_vdev_info_real (data, nvlist, - &data->devices_attached[data->n_devices_attached - 1], - diskdesc, inserted, 0xffffffff); -} - -/* - * For a given XDR packed nvlist, verify the first 4 bytes and move on. - * - * An XDR packed nvlist is encoded as (comments from nvs_xdr_create) : - * - * encoding method/host endian (4 bytes) - * nvl_version (4 bytes) - * nvl_nvflag (4 bytes) - * encoded nvpairs: - * encoded size of the nvpair (4 bytes) - * decoded size of the nvpair (4 bytes) - * name string size (4 bytes) - * name string data (sizeof(NV_ALIGN4(string)) - * data type (4 bytes) - * # of elements in the nvpair (4 bytes) - * data - * 2 zero's for the last nvpair - * (end of the entire list) (8 bytes) - * - */ - -/* - * The nvlist_next_nvpair() function returns a handle to the next nvpair in the - * list following nvpair. If nvpair is NULL, the first pair is returned. If - * nvpair is the last pair in the nvlist, NULL is returned. - */ -static const char * -nvlist_next_nvpair (const char *nvl, const char *nvpair) -{ - const char *nvp; - int encode_size; - int name_len; - if (nvl == NULL) - return NULL; - - if (nvpair == NULL) - { - /* skip over header, nvl_version and nvl_nvflag */ - nvpair = nvl + 4 * 3; - } - else - { - /* skip to the next nvpair */ - encode_size = grub_be_to_cpu32 (grub_get_unaligned32(nvpair)); - nvpair += encode_size; - /*If encode_size equals 0 nvlist_next_nvpair would return - * the same pair received in input, leading to an infinite loop. - * If encode_size is less than 0, this will move the pointer - * backwards, *possibly* examinining two times the same nvpair - * and potentially getting into an infinite loop. */ - if(encode_size <= 0) - { - grub_dprintf ("zfs", "nvpair with size <= 0\n"); - grub_error (GRUB_ERR_BAD_FS, "incorrect nvlist"); - return NULL; - } - } - /* 8 bytes of 0 marks the end of the list */ - if (grub_get_unaligned64 (nvpair) == 0) - return NULL; - /*consistency checks*/ - if (nvpair + 4 * 3 >= nvl + VDEV_PHYS_SIZE) - { - grub_dprintf ("zfs", "nvlist overflow\n"); - grub_error (GRUB_ERR_BAD_FS, "incorrect nvlist"); - return NULL; - } - encode_size = grub_be_to_cpu32 (grub_get_unaligned32(nvpair)); - - nvp = nvpair + 4*2; - name_len = grub_be_to_cpu32 (grub_get_unaligned32 (nvp)); - nvp += 4; - - nvp = nvp + ((name_len + 3) & ~3); // align - if (nvp + 4 >= nvl + VDEV_PHYS_SIZE - || encode_size < 0 - || nvp + 4 + encode_size > nvl + VDEV_PHYS_SIZE) - { - grub_dprintf ("zfs", "nvlist overflow\n"); - grub_error (GRUB_ERR_BAD_FS, "incorrect nvlist"); - return NULL; - } - /* end consistency checks */ - - return nvpair; -} - -/* - * This function returns 0 on success and 1 on failure. On success, a string - * containing the name of nvpair is saved in buf. - */ -static int -nvpair_name (const char *nvp, char **buf, grub_size_t *buflen) -{ - /* skip over encode/decode size */ - nvp += 4 * 2; - - *buf = (char *) (nvp + 4); - *buflen = grub_be_to_cpu32 (grub_get_unaligned32 (nvp)); - - return 0; -} - -/* - * This function retrieves the value of the nvpair in the form of enumerated - * type data_type_t. - */ -static int -nvpair_type (const char *nvp) -{ - int name_len, type; - - /* skip over encode/decode size */ - nvp += 4 * 2; - - /* skip over name_len */ - name_len = grub_be_to_cpu32 (grub_get_unaligned32 (nvp)); - nvp += 4; - - /* skip over name */ - nvp = nvp + ((name_len + 3) & ~3); /* align */ - - type = grub_be_to_cpu32 (grub_get_unaligned32 (nvp)); - - return type; -} - -static int -nvpair_value (const char *nvp,char **val, - grub_size_t *size_out, grub_size_t *nelm_out) -{ - int name_len,nelm,encode_size; - - /* skip over encode/decode size */ - encode_size = grub_be_to_cpu32 (grub_get_unaligned32(nvp)); - nvp += 8; - - /* skip over name_len */ - name_len = grub_be_to_cpu32 (grub_get_unaligned32 (nvp)); - nvp += 4; - - /* skip over name */ - nvp = nvp + ((name_len + 3) & ~3); /* align */ - - /* skip over type */ - nvp += 4; - nelm = grub_be_to_cpu32 (grub_get_unaligned32 (nvp)); - nvp +=4; - if (nelm < 1) - { - grub_error (GRUB_ERR_BAD_FS, "empty nvpair"); - return 0; - } - *val = (char *) nvp; - *size_out = encode_size; - if (nelm_out) - *nelm_out = nelm; - - return 1; -} - -/* - * Check the disk label information and retrieve needed vdev name-value pairs. - * - */ -static grub_err_t -check_pool_label (struct grub_zfs_data *data, - struct grub_zfs_device_desc *diskdesc, - int *inserted, int original) -{ - grub_uint64_t pool_state, txg = 0; - char *nvlist,*features; -#if 0 - char *nv; -#endif - grub_uint64_t poolguid; - grub_uint64_t version; - int found; - grub_err_t err; - grub_zfs_endian_t endian; - vdev_phys_t *phys; - zio_cksum_t emptycksum; - - *inserted = 0; - - err = zfs_fetch_nvlist (diskdesc, &nvlist); - if (err) - return err; - - phys = (vdev_phys_t*) nvlist; - if (grub_zfs_to_cpu64 (phys->vp_zbt.zec_magic, - GRUB_ZFS_LITTLE_ENDIAN) - == ZEC_MAGIC) - endian = GRUB_ZFS_LITTLE_ENDIAN; - else if (grub_zfs_to_cpu64 (phys->vp_zbt.zec_magic, - GRUB_ZFS_BIG_ENDIAN) - == ZEC_MAGIC) - endian = GRUB_ZFS_BIG_ENDIAN; - else - { - grub_free (nvlist); - return grub_error (GRUB_ERR_BAD_FS, - "bad vdev_phys_t.vp_zbt.zec_magic number"); - } - /* Now check the integrity of the vdev_phys_t structure though checksum. */ - ZIO_SET_CHECKSUM(&emptycksum, diskdesc->vdev_phys_sector << 9, 0, 0, 0); - err = zio_checksum_verify (emptycksum, ZIO_CHECKSUM_LABEL, endian, - nvlist, VDEV_PHYS_SIZE); - if (err) - return err; - - grub_dprintf ("zfs", "check 2 passed\n"); - - found = grub_zfs_nvlist_lookup_uint64 (nvlist, ZPOOL_CONFIG_POOL_STATE, - &pool_state); - if (! found) - { - grub_free (nvlist); - if (! grub_errno) - grub_error (GRUB_ERR_BAD_FS, ZPOOL_CONFIG_POOL_STATE " not found"); - return grub_errno; - } - grub_dprintf ("zfs", "check 3 passed\n"); - - if (pool_state == POOL_STATE_DESTROYED) - { - grub_free (nvlist); - return grub_error (GRUB_ERR_BAD_FS, "zpool is marked as destroyed"); - } - grub_dprintf ("zfs", "check 4 passed\n"); - - found = grub_zfs_nvlist_lookup_uint64 (nvlist, ZPOOL_CONFIG_POOL_TXG, &txg); - if (!found) - { - grub_free (nvlist); - if (! grub_errno) - grub_error (GRUB_ERR_BAD_FS, ZPOOL_CONFIG_POOL_TXG " not found"); - return grub_errno; - } - grub_dprintf ("zfs", "check 6 passed\n"); - - /* not an active device */ - if (txg == 0) - { - grub_free (nvlist); - return grub_error (GRUB_ERR_BAD_FS, "zpool isn't active"); - } - grub_dprintf ("zfs", "check 7 passed\n"); - - found = grub_zfs_nvlist_lookup_uint64 (nvlist, ZPOOL_CONFIG_VERSION, - &version); - if (! found) - { - grub_free (nvlist); - if (! grub_errno) - grub_error (GRUB_ERR_BAD_FS, ZPOOL_CONFIG_VERSION " not found"); - return grub_errno; - } - grub_dprintf ("zfs", "check 8 passed\n"); - - if (!SPA_VERSION_IS_SUPPORTED(version)) - { - grub_free (nvlist); - return grub_error (GRUB_ERR_NOT_IMPLEMENTED_YET, - "too new version %llu > %llu", - (unsigned long long) version, - (unsigned long long) SPA_VERSION_BEFORE_FEATURES); - } - grub_dprintf ("zfs", "check 9 passed\n"); - - found = grub_zfs_nvlist_lookup_uint64 (nvlist, ZPOOL_CONFIG_GUID, - &(diskdesc->guid)); - if (! found) - { - grub_free (nvlist); - if (! grub_errno) - grub_error (GRUB_ERR_BAD_FS, ZPOOL_CONFIG_GUID " not found"); - return grub_errno; - } - - found = grub_zfs_nvlist_lookup_uint64 (nvlist, ZPOOL_CONFIG_POOL_GUID, - &poolguid); - if (! found) - { - grub_free (nvlist); - if (! grub_errno) - grub_error (GRUB_ERR_BAD_FS, ZPOOL_CONFIG_POOL_GUID " not found"); - return grub_errno; - } - - grub_dprintf ("zfs", "check 11 passed\n"); - - if (original) - data->guid = poolguid; - - if (data->guid != poolguid) - return grub_error (GRUB_ERR_BAD_FS, "another zpool"); - - { - char *nv; - nv = grub_zfs_nvlist_lookup_nvlist (nvlist, ZPOOL_CONFIG_VDEV_TREE); - - if (!nv) - { - grub_free (nvlist); - return grub_error (GRUB_ERR_BAD_FS, "couldn't find vdev tree"); - } - err = fill_vdev_info (data, nv, diskdesc, inserted); - if (err) - { - grub_free (nv); - grub_free (nvlist); - return err; - } - grub_free (nv); - } - grub_dprintf ("zfs", "check 10 passed\n"); - features = grub_zfs_nvlist_lookup_nvlist(nvlist, - ZPOOL_CONFIG_FEATURES_FOR_READ); - if (features) - { - const char *nvp=NULL; - char name[MAX_SUPPORTED_FEATURE_STRLEN + 1]; - char *nameptr; - grub_size_t namelen; - while ((nvp = nvlist_next_nvpair(features, nvp)) != NULL) - { - nvpair_name (nvp, &nameptr, &namelen); - if(namelen > MAX_SUPPORTED_FEATURE_STRLEN) - namelen = MAX_SUPPORTED_FEATURE_STRLEN; - grub_memcpy (name, nameptr, namelen); - name[namelen] = '\0'; - grub_dprintf("zfs","str=%s\n",name); - if (check_feature(name,1, NULL) != 0) - { - grub_dprintf("zfs","feature missing in check_pool_label:%s\n",name); - err= grub_error (GRUB_ERR_NOT_IMPLEMENTED_YET," check_pool_label missing feature '%s' for read",name); - return err; - } - } - } - grub_dprintf ("zfs", "check 12 passed (feature flags)\n"); - grub_free (nvlist); - - return GRUB_ERR_NONE; -} - -static grub_err_t -scan_disk (grub_device_t dev, struct grub_zfs_data *data, - int original, int *inserted) -{ - int label = 0; - uberblock_phys_t *ub_array, *ubbest = NULL; - vdev_boot_header_t *bh; - grub_err_t err; - int vdevnum; - struct grub_zfs_device_desc desc; - - ub_array = grub_malloc (VDEV_UBERBLOCK_RING); - if (!ub_array) - return grub_errno; - - bh = grub_malloc (VDEV_BOOT_HEADER_SIZE); - if (!bh) - { - grub_free (ub_array); - return grub_errno; - } - - vdevnum = VDEV_LABELS; - - desc.dev = dev; - desc.original = original; - - /* Don't check back labels on CDROM. */ - if (grub_disk_get_size (dev->disk) == GRUB_DISK_SIZE_UNKNOWN) - vdevnum = VDEV_LABELS / 2; - - for (label = 0; ubbest == NULL && label < vdevnum; label++) - { - desc.vdev_phys_sector - = label * (sizeof (vdev_label_t) >> SPA_MINBLOCKSHIFT) - + ((VDEV_SKIP_SIZE + VDEV_BOOT_HEADER_SIZE) >> SPA_MINBLOCKSHIFT) - + (label < VDEV_LABELS / 2 ? 0 : - ALIGN_DOWN (grub_disk_get_size (dev->disk), sizeof (vdev_label_t)) - - VDEV_LABELS * (sizeof (vdev_label_t) >> SPA_MINBLOCKSHIFT)); - - /* Read in the uberblock ring (128K). */ - err = grub_disk_read (dev->disk, desc.vdev_phys_sector - + (VDEV_PHYS_SIZE >> SPA_MINBLOCKSHIFT), - 0, VDEV_UBERBLOCK_RING, (char *) ub_array); - if (err) - { - grub_errno = GRUB_ERR_NONE; - continue; - } - grub_dprintf ("zfs", "label ok %d\n", label); - - err = check_pool_label (data, &desc, inserted, original); - if (err || !*inserted) - { - grub_errno = GRUB_ERR_NONE; - continue; - } - - ubbest = find_bestub (ub_array, &desc); - if (!ubbest) - { - grub_dprintf ("zfs", "No uberblock found\n"); - grub_errno = GRUB_ERR_NONE; - continue; - } - - grub_memmove (&(desc.current_uberblock), - &ubbest->ubp_uberblock, sizeof (uberblock_t)); - if (original) - grub_memmove (&(data->current_uberblock), - &ubbest->ubp_uberblock, sizeof (uberblock_t)); - -#if 0 - if (find_best_root && - vdev_uberblock_compare (&ubbest->ubp_uberblock, - &(current_uberblock)) <= 0) - continue; -#endif - grub_free (ub_array); - grub_free (bh); - return GRUB_ERR_NONE; - } - - grub_free (ub_array); - grub_free (bh); - - return grub_error (GRUB_ERR_BAD_FS, "couldn't find a valid label"); -} - -/* Helper for scan_devices. */ -static int -scan_devices_iter (const char *name, void *hook_data) -{ - struct grub_zfs_data *data = hook_data; - grub_device_t dev; - grub_err_t err; - int inserted; - - dev = grub_device_open (name); - if (!dev) - return 0; - if (!dev->disk) - { - grub_device_close (dev); - return 0; - } - err = scan_disk (dev, data, 0, &inserted); - if (err == GRUB_ERR_BAD_FS) - { - grub_device_close (dev); - grub_errno = GRUB_ERR_NONE; - return 0; - } - if (err) - { - grub_device_close (dev); - grub_print_error (); - return 0; - } - - if (!inserted) - grub_device_close (dev); - - return 0; -} - -static grub_err_t -scan_devices (struct grub_zfs_data *data) -{ - grub_device_iterate (scan_devices_iter, data); - return GRUB_ERR_NONE; -} - -/* x**y. */ -static grub_uint8_t powx[255 * 2]; -/* Such an s that x**s = y */ -static int powx_inv[256]; -static const grub_uint8_t poly = 0x1d; - -/* perform the operation a ^= b * (x ** (known_idx * recovery_pow) ) */ -static inline void -xor_out (grub_uint8_t *a, const grub_uint8_t *b, grub_size_t s, - unsigned known_idx, unsigned recovery_pow) -{ - unsigned add; - - /* Simple xor. */ - if (known_idx == 0 || recovery_pow == 0) - { - grub_crypto_xor (a, a, b, s); - return; - } - add = (known_idx * recovery_pow) % 255; - for (;s--; b++, a++) - if (*b) - *a ^= powx[powx_inv[*b] + add]; -} - -static inline grub_uint8_t -gf_mul (grub_uint8_t a, grub_uint8_t b) -{ - if (a == 0 || b == 0) - return 0; - return powx[powx_inv[a] + powx_inv[b]]; -} - -#define MAX_NBUFS 4 - -static grub_err_t -recovery (grub_uint8_t *bufs[4], grub_size_t s, const int nbufs, - const unsigned *powers, - const unsigned *idx) -{ - grub_dprintf ("zfs", "recovering %u buffers\n", nbufs); - /* Now we have */ - /* b_i = sum (r_j* (x ** (powers[i] * idx[j])))*/ - /* Let's invert the matrix in question. */ - switch (nbufs) - { - /* Easy: r_0 = bufs[0] / (x << (powers[i] * idx[j])). */ - case 1: - { - int add; - grub_uint8_t *a; - if (powers[0] == 0 || idx[0] == 0) - return GRUB_ERR_NONE; - add = 255 - ((powers[0] * idx[0]) % 255); - for (a = bufs[0]; s--; a++) - if (*a) - *a = powx[powx_inv[*a] + add]; - return GRUB_ERR_NONE; - } - /* Case 2x2: Let's use the determinant formula. */ - case 2: - { - grub_uint8_t det, det_inv; - grub_uint8_t matrixinv[2][2]; - unsigned i; - /* The determinant is: */ - det = (powx[(powers[0] * idx[0] + powers[1] * idx[1]) % 255] - ^ powx[(powers[0] * idx[1] + powers[1] * idx[0]) % 255]); - if (det == 0) - return grub_error (GRUB_ERR_BAD_FS, "singular recovery matrix"); - det_inv = powx[255 - powx_inv[det]]; - matrixinv[0][0] = gf_mul (powx[(powers[1] * idx[1]) % 255], det_inv); - matrixinv[1][1] = gf_mul (powx[(powers[0] * idx[0]) % 255], det_inv); - matrixinv[0][1] = gf_mul (powx[(powers[0] * idx[1]) % 255], det_inv); - matrixinv[1][0] = gf_mul (powx[(powers[1] * idx[0]) % 255], det_inv); - for (i = 0; i < s; i++) - { - grub_uint8_t b0, b1; - b0 = bufs[0][i]; - b1 = bufs[1][i]; - - bufs[0][i] = (gf_mul (b0, matrixinv[0][0]) - ^ gf_mul (b1, matrixinv[0][1])); - bufs[1][i] = (gf_mul (b0, matrixinv[1][0]) - ^ gf_mul (b1, matrixinv[1][1])); - } - return GRUB_ERR_NONE; - } - /* Otherwise use Gauss. */ - case 3: - { - grub_uint8_t matrix1[MAX_NBUFS][MAX_NBUFS], matrix2[MAX_NBUFS][MAX_NBUFS]; - int i, j, k; - - for (i = 0; i < nbufs; i++) - for (j = 0; j < nbufs; j++) - matrix1[i][j] = powx[(powers[i] * idx[j]) % 255]; - for (i = 0; i < nbufs; i++) - for (j = 0; j < nbufs; j++) - matrix2[i][j] = 0; - for (i = 0; i < nbufs; i++) - matrix2[i][i] = 1; - - for (i = 0; i < nbufs; i++) - { - grub_uint8_t mul; - for (j = i; j < nbufs; j++) - if (matrix1[i][j]) - break; - if (j == nbufs) - return grub_error (GRUB_ERR_BAD_FS, "singular recovery matrix"); - if (j != i) - { - int xchng; - xchng = j; - for (j = 0; j < nbufs; j++) - { - grub_uint8_t t; - t = matrix1[xchng][j]; - matrix1[xchng][j] = matrix1[i][j]; - matrix1[i][j] = t; - } - for (j = 0; j < nbufs; j++) - { - grub_uint8_t t; - t = matrix2[xchng][j]; - matrix2[xchng][j] = matrix2[i][j]; - matrix2[i][j] = t; - } - } - mul = powx[255 - powx_inv[matrix1[i][i]]]; - for (j = 0; j < nbufs; j++) - matrix1[i][j] = gf_mul (matrix1[i][j], mul); - for (j = 0; j < nbufs; j++) - matrix2[i][j] = gf_mul (matrix2[i][j], mul); - for (j = i + 1; j < nbufs; j++) - { - mul = matrix1[j][i]; - for (k = 0; k < nbufs; k++) - matrix1[j][k] ^= gf_mul (matrix1[i][k], mul); - for (k = 0; k < nbufs; k++) - matrix2[j][k] ^= gf_mul (matrix2[i][k], mul); - } - } - for (i = nbufs - 1; i >= 0; i--) - { - for (j = 0; j < i; j++) - { - grub_uint8_t mul; - mul = matrix1[j][i]; - for (k = 0; k < nbufs; k++) - matrix1[j][k] ^= gf_mul (matrix1[i][k], mul); - for (k = 0; k < nbufs; k++) - matrix2[j][k] ^= gf_mul (matrix2[i][k], mul); - } - } - - for (i = 0; i < (int) s; i++) - { - grub_uint8_t b[MAX_NBUFS]; - for (j = 0; j < nbufs; j++) - b[j] = bufs[j][i]; - for (j = 0; j < nbufs; j++) - { - bufs[j][i] = 0; - for (k = 0; k < nbufs; k++) - bufs[j][i] ^= gf_mul (matrix2[j][k], b[k]); - } - } - return GRUB_ERR_NONE; - } - default: - return grub_error (GRUB_ERR_BUG, "too big matrix"); - } -} - -static grub_err_t -read_device (grub_uint64_t offset, struct grub_zfs_device_desc *desc, - grub_size_t len, void *buf) -{ - switch (desc->type) - { - case DEVICE_LEAF: - { - grub_uint64_t sector; - sector = DVA_OFFSET_TO_PHYS_SECTOR (offset); - if (!desc->dev) - { - return grub_error (GRUB_ERR_BAD_FS, - N_("couldn't find a necessary member device " - "of multi-device filesystem")); - } - /* read in a data block */ - return grub_disk_read (desc->dev->disk, sector, 0, len, buf); - } - case DEVICE_MIRROR: - { - grub_err_t err = GRUB_ERR_NONE; - unsigned i; - if (desc->n_children <= 0) - return grub_error (GRUB_ERR_BAD_FS, - "non-positive number of mirror children"); - for (i = 0; i < desc->n_children; i++) - { - err = read_device (offset, &desc->children[i], - len, buf); - if (!err) - break; - grub_errno = GRUB_ERR_NONE; - } - grub_errno = err; - - return err; - } - case DEVICE_RAIDZ: - { - unsigned c = 0; - grub_uint64_t high; - grub_uint64_t devn; - grub_uint64_t m; - grub_uint32_t s, orig_s; - void *orig_buf = buf; - grub_size_t orig_len = len; - grub_uint8_t *recovery_buf[4]; - grub_size_t recovery_len[4]; - unsigned recovery_idx[4]; - unsigned failed_devices = 0; - int idx, orig_idx; - - if (desc->nparity < 1 || desc->nparity > 3) - return grub_error (GRUB_ERR_NOT_IMPLEMENTED_YET, - "raidz%d is not supported", desc->nparity); - - if (desc->n_children <= desc->nparity || desc->n_children < 1) - return grub_error(GRUB_ERR_BAD_FS, "too little devices for given parity"); - - orig_s = (((len + (1 << desc->ashift) - 1) >> desc->ashift) - + (desc->n_children - desc->nparity) - 1); - s = orig_s; - - high = grub_divmod64 ((offset >> desc->ashift), - desc->n_children, &m); - if (desc->nparity == 2) - c = 2; - if (desc->nparity == 3) - c = 3; - if (((len + (1 << desc->ashift) - 1) >> desc->ashift) - >= (desc->n_children - desc->nparity)) - idx = (desc->n_children - desc->nparity - 1); - else - idx = ((len + (1 << desc->ashift) - 1) >> desc->ashift) - 1; - orig_idx = idx; - while (len > 0) - { - grub_size_t csize; - grub_uint32_t bsize; - grub_err_t err; - bsize = s / (desc->n_children - desc->nparity); - - if (desc->nparity == 1 - && ((offset >> (desc->ashift + 20 - desc->max_children_ashift)) - & 1) == c) - c++; - - high = grub_divmod64 ((offset >> desc->ashift) + c, - desc->n_children, &devn); - csize = bsize << desc->ashift; - if (csize > len) - csize = len; - - grub_dprintf ("zfs", "RAIDZ mapping 0x%" PRIxGRUB_UINT64_T - "+%u (%" PRIxGRUB_SIZE ", %" PRIxGRUB_UINT32_T - ") -> (0x%" PRIxGRUB_UINT64_T ", 0x%" - PRIxGRUB_UINT64_T ")\n", - offset >> desc->ashift, c, len, bsize, high, - devn); - err = read_device ((high << desc->ashift) - | (offset & ((1 << desc->ashift) - 1)), - &desc->children[devn], - csize, buf); - if (err && failed_devices < desc->nparity) - { - recovery_buf[failed_devices] = buf; - recovery_len[failed_devices] = csize; - recovery_idx[failed_devices] = idx; - failed_devices++; - grub_errno = err = 0; - } - if (err) - return err; - - c++; - idx--; - s--; - buf = (char *) buf + csize; - len -= csize; - } - if (failed_devices) - { - unsigned redundancy_pow[4]; - unsigned cur_redundancy_pow = 0; - unsigned n_redundancy = 0; - unsigned i, j; - grub_err_t err; - - /* Compute mul. x**s has a period of 255. */ - if (powx[0] == 0) - { - grub_uint8_t cur = 1; - for (i = 0; i < 255; i++) - { - powx[i] = cur; - powx[i + 255] = cur; - powx_inv[cur] = i; - if (cur & 0x80) - cur = (cur << 1) ^ poly; - else - cur <<= 1; - } - } - - /* Read redundancy data. */ - for (n_redundancy = 0, cur_redundancy_pow = 0; - n_redundancy < failed_devices; - cur_redundancy_pow++) - { - high = grub_divmod64 ((offset >> desc->ashift) - + cur_redundancy_pow - + ((desc->nparity == 1) - && ((offset >> (desc->ashift + 20 - - desc->max_children_ashift)) - & 1)), - desc->n_children, &devn); - err = read_device ((high << desc->ashift) - | (offset & ((1 << desc->ashift) - 1)), - &desc->children[devn], - recovery_len[n_redundancy], - recovery_buf[n_redundancy]); - /* Ignore error if we may still have enough devices. */ - if (err && n_redundancy + desc->nparity - cur_redundancy_pow - 1 - >= failed_devices) - { - grub_errno = GRUB_ERR_NONE; - continue; - } - if (err) - return err; - redundancy_pow[n_redundancy] = cur_redundancy_pow; - n_redundancy++; - } - /* Now xor-our the parts we already know. */ - buf = orig_buf; - len = orig_len; - s = orig_s; - idx = orig_idx; - - while (len > 0) - { - grub_size_t csize; - csize = ((s / (desc->n_children - desc->nparity)) - << desc->ashift); - if (csize > len) - csize = len; - - for (j = 0; j < failed_devices; j++) - if (buf == recovery_buf[j]) - break; - - if (j == failed_devices) - for (j = 0; j < failed_devices; j++) - xor_out (recovery_buf[j], buf, - csize < recovery_len[j] ? csize : recovery_len[j], - idx, redundancy_pow[j]); - - s--; - buf = (char *) buf + csize; - len -= csize; - idx--; - } - for (i = 0; i < failed_devices - && recovery_len[i] == recovery_len[0]; - i++); - /* Since the chunks have variable length handle the last block - separately. */ - if (i != failed_devices) - { - grub_uint8_t *tmp_recovery_buf[4]; - for (j = 0; j < i; j++) - tmp_recovery_buf[j] = recovery_buf[j] + recovery_len[failed_devices - 1]; - err = recovery (tmp_recovery_buf, recovery_len[0] - recovery_len[failed_devices - 1], i, redundancy_pow, - recovery_idx); - if (err) - return err; - } - err = recovery (recovery_buf, recovery_len[failed_devices - 1], - failed_devices, redundancy_pow, recovery_idx); - if (err) - return err; - } - return GRUB_ERR_NONE; - } - } - return grub_error (GRUB_ERR_BAD_FS, "unsupported device type"); -} - -static grub_err_t -read_dva (const dva_t *dva, - grub_zfs_endian_t endian, struct grub_zfs_data *data, - void *buf, grub_size_t len) -{ - grub_uint64_t offset; - unsigned i; - grub_err_t err = 0; - int try = 0; - offset = dva_get_offset (dva, endian); - - for (try = 0; try < 2; try++) - { - for (i = 0; i < data->n_devices_attached; i++) - if (data->devices_attached[i].id == DVA_GET_VDEV (dva)) - { - err = read_device (offset, &data->devices_attached[i], len, buf); - if (!err) - return GRUB_ERR_NONE; - break; - } - if (try == 1) - break; - err = scan_devices (data); - if (err) - return err; - } - if (!err) - return grub_error (GRUB_ERR_BAD_FS, "unknown device %d", - (int) DVA_GET_VDEV (dva)); - return err; -} - -/* - * Read a block of data based on the gang block address dva, - * and put its data in buf. - * - */ -static grub_err_t -zio_read_gang (blkptr_t * bp, grub_zfs_endian_t endian, dva_t * dva, void *buf, - struct grub_zfs_data *data) -{ - zio_gbh_phys_t *zio_gb; - unsigned i; - grub_err_t err; - zio_cksum_t zc; - - grub_memset (&zc, 0, sizeof (zc)); - - zio_gb = grub_malloc (SPA_GANGBLOCKSIZE); - if (!zio_gb) - return grub_errno; - grub_dprintf ("zfs", endian == GRUB_ZFS_LITTLE_ENDIAN ? "little-endian gang\n" - :"big-endian gang\n"); - - err = read_dva (dva, endian, data, zio_gb, SPA_GANGBLOCKSIZE); - if (err) - { - grub_free (zio_gb); - return err; - } - - /* XXX */ - /* self checksuming the gang block header */ - ZIO_SET_CHECKSUM (&zc, DVA_GET_VDEV (dva), - dva_get_offset (dva, endian), bp->blk_birth, 0); - err = zio_checksum_verify (zc, ZIO_CHECKSUM_GANG_HEADER, endian, - (char *) zio_gb, SPA_GANGBLOCKSIZE); - if (err) - { - grub_free (zio_gb); - return err; - } - - endian = (grub_zfs_to_cpu64 (bp->blk_prop, endian) >> 63) & 1; - - for (i = 0; i < SPA_GBH_NBLKPTRS; i++) - { - if (BP_IS_HOLE(&zio_gb->zg_blkptr[i])) - continue; - - err = zio_read_data (&zio_gb->zg_blkptr[i], endian, buf, data); - if (err) - { - grub_free (zio_gb); - return err; - } - buf = (char *) buf + get_psize (&zio_gb->zg_blkptr[i], endian); - } - grub_free (zio_gb); - return GRUB_ERR_NONE; -} - -/* - * Read in a block of raw data to buf. - */ -static grub_err_t -zio_read_data (blkptr_t * bp, grub_zfs_endian_t endian, void *buf, - struct grub_zfs_data *data) -{ - int i, psize; - grub_err_t err = GRUB_ERR_NONE; - - psize = get_psize (bp, endian); - - /* pick a good dva from the block pointer */ - for (i = 0; i < SPA_DVAS_PER_BP; i++) - { - if (bp->blk_dva[i].dva_word[0] == 0 && bp->blk_dva[i].dva_word[1] == 0) - continue; - - if ((grub_zfs_to_cpu64 (bp->blk_dva[i].dva_word[1], endian)>>63) & 1) - err = zio_read_gang (bp, endian, &bp->blk_dva[i], buf, data); - else - err = read_dva (&bp->blk_dva[i], endian, data, buf, psize); - if (!err) - return GRUB_ERR_NONE; - grub_errno = GRUB_ERR_NONE; - } - - if (!err) - err = grub_error (GRUB_ERR_BAD_FS, "couldn't find a valid DVA"); - grub_errno = err; - - return err; -} - -/* - * buf must be at least BPE_GET_PSIZE(bp) bytes long (which will never be - * more than BPE_PAYLOAD_SIZE bytes). - */ -static grub_err_t -decode_embedded_bp_compressed(const blkptr_t *bp, void *buf) -{ - grub_size_t psize, i; - grub_uint8_t *buf8 = buf; - grub_uint64_t w = 0; - const grub_uint64_t *bp64 = (const grub_uint64_t *)bp; - - psize = BPE_GET_PSIZE(bp); - - /* - * Decode the words of the block pointer into the byte array. - * Low bits of first word are the first byte (little endian). - */ - for (i = 0; i < psize; i++) - { - if (i % sizeof (w) == 0) - { - /* beginning of a word */ - w = *bp64; - bp64++; - if (!BPE_IS_PAYLOADWORD(bp, bp64)) - bp64++; - } - buf8[i] = BF64_GET(w, (i % sizeof (w)) * 8, 8); - } - return GRUB_ERR_NONE; -} - -/* - * Read in a block of data, verify its checksum, decompress if needed, - * and put the uncompressed data in buf. - */ -static grub_err_t -zio_read (blkptr_t *bp, grub_zfs_endian_t endian, void **buf, - grub_size_t *size, struct grub_zfs_data *data) -{ - grub_size_t lsize, psize; - unsigned int comp, encrypted; - char *compbuf = NULL; - grub_err_t err; - zio_cksum_t zc = bp->blk_cksum; - grub_uint32_t checksum; - - *buf = NULL; - - checksum = (grub_zfs_to_cpu64((bp)->blk_prop, endian) >> 40) & 0xff; - comp = (grub_zfs_to_cpu64((bp)->blk_prop, endian)>>32) & 0x7f; - encrypted = ((grub_zfs_to_cpu64((bp)->blk_prop, endian) >> 60) & 3); - if (BP_IS_EMBEDDED(bp)) - { - if (BPE_GET_ETYPE(bp) != BP_EMBEDDED_TYPE_DATA) - return grub_error (GRUB_ERR_NOT_IMPLEMENTED_YET, - "unsupported embedded BP (type=%u)\n", - BPE_GET_ETYPE(bp)); - lsize = BPE_GET_LSIZE(bp); - psize = BF64_GET_SB(grub_zfs_to_cpu64 ((bp)->blk_prop, endian), 25, 7, 0, 1); - } - else - { - lsize = (BP_IS_HOLE(bp) ? 0 : - (((grub_zfs_to_cpu64 ((bp)->blk_prop, endian) & 0xffff) + 1) - << SPA_MINBLOCKSHIFT)); - psize = get_psize (bp, endian); - } - grub_dprintf("zfs", "zio_read: E %d: size %" PRIdGRUB_SSIZE "/%" - PRIdGRUB_SSIZE "\n", (int)BP_IS_EMBEDDED(bp), lsize, psize); - - if (size) - *size = lsize; - - if (comp >= ZIO_COMPRESS_FUNCTIONS) - return grub_error (GRUB_ERR_NOT_IMPLEMENTED_YET, - "compression algorithm %u not supported\n", (unsigned int) comp); - - if (comp != ZIO_COMPRESS_OFF && decomp_table[comp].decomp_func == NULL) - return grub_error (GRUB_ERR_NOT_IMPLEMENTED_YET, - "compression algorithm %s not supported\n", decomp_table[comp].name); - - if (comp != ZIO_COMPRESS_OFF) - /* It's not really necessary to align to 16, just for safety. */ - compbuf = grub_malloc (ALIGN_UP (psize, 16)); - else - compbuf = *buf = grub_malloc (lsize); - if (! compbuf) - return grub_errno; - - grub_dprintf ("zfs", "endian = %d\n", endian); - if (BP_IS_EMBEDDED(bp)) - err = decode_embedded_bp_compressed(bp, compbuf); - else - { - err = zio_read_data (bp, endian, compbuf, data); - /* FIXME is it really necessary? */ - if (comp != ZIO_COMPRESS_OFF) - grub_memset (compbuf + psize, 0, ALIGN_UP (psize, 16) - psize); - } - if (err) - { - grub_free (compbuf); - *buf = NULL; - return err; - } - - if (!BP_IS_EMBEDDED(bp)) - { - err = zio_checksum_verify (zc, checksum, endian, - compbuf, psize); - if (err) - { - grub_dprintf ("zfs", "incorrect checksum\n"); - grub_free (compbuf); - *buf = NULL; - return err; - } - } - - if (encrypted) - { - if (!grub_zfs_decrypt) - err = grub_error (GRUB_ERR_BAD_FS, - N_("module `%s' isn't loaded"), - "zfscrypt"); - else - { - unsigned i, besti = 0; - grub_uint64_t bestval = 0; - for (i = 0; i < data->subvol.nkeys; i++) - if (data->subvol.keyring[i].txg <= grub_zfs_to_cpu64 (bp->blk_birth, - endian) - && data->subvol.keyring[i].txg > bestval) - { - besti = i; - bestval = data->subvol.keyring[i].txg; - } - if (bestval == 0) - { - grub_free (compbuf); - *buf = NULL; - grub_dprintf ("zfs", "no key for txg %" PRIxGRUB_UINT64_T "\n", - grub_zfs_to_cpu64 (bp->blk_birth, - endian)); - return grub_error (GRUB_ERR_BAD_FS, "no key found in keychain"); - } - grub_dprintf ("zfs", "using key %u (%" PRIxGRUB_UINT64_T - ", %p) for txg %" PRIxGRUB_UINT64_T "\n", - besti, data->subvol.keyring[besti].txg, - data->subvol.keyring[besti].cipher, - grub_zfs_to_cpu64 (bp->blk_birth, - endian)); - err = grub_zfs_decrypt (data->subvol.keyring[besti].cipher, - data->subvol.keyring[besti].algo, - &(bp)->blk_dva[encrypted], - compbuf, psize, zc.zc_mac, - endian); - } - if (err) - { - grub_free (compbuf); - *buf = NULL; - return err; - } - } - - if (comp != ZIO_COMPRESS_OFF) - { - *buf = grub_malloc (lsize); - if (!*buf) - { - grub_free (compbuf); - return grub_errno; - } - - err = decomp_table[comp].decomp_func (compbuf, *buf, psize, lsize); - grub_free (compbuf); - if (err) - { - grub_free (*buf); - *buf = NULL; - return err; - } - } - - return GRUB_ERR_NONE; -} - -/* - * Get the block from a block id. - * push the block onto the stack. - * - */ -static grub_err_t -dmu_read (dnode_end_t * dn, grub_uint64_t blkid, void **buf, - grub_zfs_endian_t *endian_out, struct grub_zfs_data *data) -{ - int level; - grub_off_t idx; - blkptr_t *bp_array = dn->dn.dn_blkptr; - int epbs = dn->dn.dn_indblkshift - SPA_BLKPTRSHIFT; - blkptr_t *bp; - void *tmpbuf = 0; - grub_zfs_endian_t endian; - grub_err_t err = GRUB_ERR_NONE; - - bp = grub_malloc (sizeof (blkptr_t)); - if (!bp) - return grub_errno; - - endian = dn->endian; - for (level = dn->dn.dn_nlevels - 1; level >= 0; level--) - { - grub_dprintf ("zfs", "endian = %d\n", endian); - idx = (blkid >> (epbs * level)) & ((1 << epbs) - 1); - *bp = bp_array[idx]; - if (bp_array != dn->dn.dn_blkptr) - { - grub_free (bp_array); - bp_array = 0; - } - - if (BP_IS_HOLE (bp)) - { - grub_size_t size = grub_zfs_to_cpu16 (dn->dn.dn_datablkszsec, - dn->endian) - << SPA_MINBLOCKSHIFT; - *buf = grub_malloc (size); - if (!*buf) - { - err = grub_errno; - break; - } - grub_memset (*buf, 0, size); - endian = (grub_zfs_to_cpu64 (bp->blk_prop, endian) >> 63) & 1; - break; - } - if (level == 0) - { - grub_dprintf ("zfs", "endian = %d\n", endian); - err = zio_read (bp, endian, buf, 0, data); - endian = (grub_zfs_to_cpu64 (bp->blk_prop, endian) >> 63) & 1; - break; - } - grub_dprintf ("zfs", "endian = %d\n", endian); - err = zio_read (bp, endian, &tmpbuf, 0, data); - endian = (grub_zfs_to_cpu64 (bp->blk_prop, endian) >> 63) & 1; - if (err) - break; - bp_array = tmpbuf; - } - if (bp_array != dn->dn.dn_blkptr) - grub_free (bp_array); - if (endian_out) - *endian_out = endian; - - grub_free (bp); - return err; -} - -/* - * mzap_lookup: Looks up property described by "name" and returns the value - * in "value". - */ -static grub_err_t -mzap_lookup (mzap_phys_t * zapobj, grub_zfs_endian_t endian, - grub_uint32_t objsize, const char *name, grub_uint64_t * value, - int case_insensitive) -{ - grub_uint32_t i, chunks; - mzap_ent_phys_t *mzap_ent = zapobj->mz_chunk; - - if (objsize < MZAP_ENT_LEN) - return grub_error (GRUB_ERR_FILE_NOT_FOUND, N_("file `%s' not found"), name); - chunks = objsize / MZAP_ENT_LEN - 1; - for (i = 0; i < chunks; i++) - { - if (case_insensitive ? (grub_strcasecmp (mzap_ent[i].mze_name, name) == 0) - : (grub_strcmp (mzap_ent[i].mze_name, name) == 0)) - { - *value = grub_zfs_to_cpu64 (mzap_ent[i].mze_value, endian); - return GRUB_ERR_NONE; - } - } - - return grub_error (GRUB_ERR_FILE_NOT_FOUND, N_("file `%s' not found"), name); -} - -static int -mzap_iterate (mzap_phys_t * zapobj, grub_zfs_endian_t endian, int objsize, - int (*hook) (const char *name, grub_uint64_t val, - struct grub_zfs_dir_ctx *ctx), - struct grub_zfs_dir_ctx *ctx) -{ - int i, chunks; - mzap_ent_phys_t *mzap_ent = zapobj->mz_chunk; - - chunks = objsize / MZAP_ENT_LEN - 1; - for (i = 0; i < chunks; i++) - { - grub_dprintf ("zfs", "zap: name = %s, value = %llx, cd = %x\n", - mzap_ent[i].mze_name, (long long)mzap_ent[i].mze_value, - (int)mzap_ent[i].mze_cd); - if (hook (mzap_ent[i].mze_name, - grub_zfs_to_cpu64 (mzap_ent[i].mze_value, endian), ctx)) - return 1; - } - - return 0; -} - -static grub_uint64_t -zap_hash (grub_uint64_t salt, const char *name, - int case_insensitive) -{ - static grub_uint64_t table[256]; - const grub_uint8_t *cp; - grub_uint8_t c; - grub_uint64_t crc = salt; - - if (table[128] == 0) - { - grub_uint64_t *ct; - int i, j; - for (i = 0; i < 256; i++) - { - for (ct = table + i, *ct = i, j = 8; j > 0; j--) - *ct = (*ct >> 1) ^ (-(*ct & 1) & ZFS_CRC64_POLY); - } - } - - if (case_insensitive) - for (cp = (const grub_uint8_t *) name; (c = *cp) != '\0'; cp++) - crc = (crc >> 8) ^ table[(crc ^ grub_toupper (c)) & 0xFF]; - else - for (cp = (const grub_uint8_t *) name; (c = *cp) != '\0'; cp++) - crc = (crc >> 8) ^ table[(crc ^ c) & 0xFF]; - - /* - * Only use 28 bits, since we need 4 bits in the cookie for the - * collision differentiator. We MUST use the high bits, since - * those are the onces that we first pay attention to when - * chosing the bucket. - */ - crc &= ~((1ULL << (64 - ZAP_HASHBITS)) - 1); - - return crc; -} - -/* - * Only to be used on 8-bit arrays. - * array_len is actual len in bytes (not encoded le_value_length). - * buf is null-terminated. - */ - -static inline int -name_cmp (const char *s1, const char *s2, grub_size_t n, - int case_insensitive) -{ - const char *t1 = (const char *) s1; - const char *t2 = (const char *) s2; - - if (!case_insensitive) - return grub_memcmp (t1, t2, n); - - while (n--) - { - if (grub_toupper (*t1) != grub_toupper (*t2)) - return (int) grub_toupper (*t1) - (int) grub_toupper (*t2); - - t1++; - t2++; - } - - return 0; -} - -/* XXX */ -static int -zap_leaf_array_equal (zap_leaf_phys_t * l, grub_zfs_endian_t endian, - int blksft, int chunk, grub_size_t array_len, - const char *buf, int case_insensitive) -{ - grub_size_t bseen = 0; - - while (bseen < array_len) - { - struct zap_leaf_array *la = &ZAP_LEAF_CHUNK (l, blksft, chunk)->l_array; - grub_size_t toread = array_len - bseen; - - if (toread > ZAP_LEAF_ARRAY_BYTES) - toread = ZAP_LEAF_ARRAY_BYTES; - - if (chunk >= ZAP_LEAF_NUMCHUNKS (blksft)) - return 0; - - if (name_cmp ((char *) la->la_array, buf + bseen, toread, - case_insensitive) != 0) - break; - chunk = grub_zfs_to_cpu16 (la->la_next, endian); - bseen += toread; - } - return (bseen == array_len); -} - -/* XXX */ -static grub_err_t -zap_leaf_array_get (zap_leaf_phys_t * l, grub_zfs_endian_t endian, int blksft, - int chunk, grub_size_t array_len, char *buf) -{ - grub_size_t bseen = 0; - - while (bseen < array_len) - { - struct zap_leaf_array *la = &ZAP_LEAF_CHUNK (l, blksft, chunk)->l_array; - grub_size_t toread = array_len - bseen; - - if (toread > ZAP_LEAF_ARRAY_BYTES) - toread = ZAP_LEAF_ARRAY_BYTES; - - if (chunk >= ZAP_LEAF_NUMCHUNKS (blksft)) - /* Don't use grub_error because this error is to be ignored. */ - return GRUB_ERR_BAD_FS; - - grub_memcpy (buf + bseen,la->la_array, toread); - chunk = grub_zfs_to_cpu16 (la->la_next, endian); - bseen += toread; - } - return GRUB_ERR_NONE; -} - - -/* - * Given a zap_leaf_phys_t, walk thru the zap leaf chunks to get the - * value for the property "name". - * - */ -/* XXX */ -static grub_err_t -zap_leaf_lookup (zap_leaf_phys_t * l, grub_zfs_endian_t endian, - int blksft, grub_uint64_t h, - const char *name, grub_uint64_t * value, - int case_insensitive) -{ - grub_uint16_t chunk; - struct zap_leaf_entry *le; - - /* Verify if this is a valid leaf block */ - if (grub_zfs_to_cpu64 (l->l_hdr.lh_block_type, endian) != ZBT_LEAF) - return grub_error (GRUB_ERR_BAD_FS, "invalid leaf type"); - if (grub_zfs_to_cpu32 (l->l_hdr.lh_magic, endian) != ZAP_LEAF_MAGIC) - return grub_error (GRUB_ERR_BAD_FS, "invalid leaf magic"); - - for (chunk = grub_zfs_to_cpu16 (l->l_hash[LEAF_HASH (blksft, h, l)], endian); - chunk != CHAIN_END; chunk = grub_zfs_to_cpu16 (le->le_next, endian)) - { - - if (chunk >= ZAP_LEAF_NUMCHUNKS (blksft)) - return grub_error (GRUB_ERR_BAD_FS, "invalid chunk number"); - - le = ZAP_LEAF_ENTRY (l, blksft, chunk); - - /* Verify the chunk entry */ - if (le->le_type != ZAP_CHUNK_ENTRY) - return grub_error (GRUB_ERR_BAD_FS, "invalid chunk entry"); - - if (grub_zfs_to_cpu64 (le->le_hash,endian) != h) - continue; - - grub_dprintf ("zfs", "fzap: length %d\n", (int) le->le_name_length); - - if (zap_leaf_array_equal (l, endian, blksft, - grub_zfs_to_cpu16 (le->le_name_chunk,endian), - grub_zfs_to_cpu16 (le->le_name_length, endian), - name, case_insensitive)) - { - struct zap_leaf_array *la; - - if (le->le_int_size != 8 || grub_zfs_to_cpu16 (le->le_value_length, - endian) != 1) - return grub_error (GRUB_ERR_BAD_FS, "invalid leaf chunk entry"); - - /* get the uint64_t property value */ - la = &ZAP_LEAF_CHUNK (l, blksft, le->le_value_chunk)->l_array; - - *value = grub_be_to_cpu64 (la->la_array64); - - return GRUB_ERR_NONE; - } - } - - return grub_error (GRUB_ERR_FILE_NOT_FOUND, N_("file `%s' not found"), name); -} - - -/* Verify if this is a fat zap header block */ -static grub_err_t -zap_verify (zap_phys_t *zap, grub_zfs_endian_t endian) -{ - if (grub_zfs_to_cpu64 (zap->zap_magic, endian) != (grub_uint64_t) ZAP_MAGIC) - return grub_error (GRUB_ERR_BAD_FS, "bad ZAP magic"); - - if (zap->zap_salt == 0) - return grub_error (GRUB_ERR_BAD_FS, "bad ZAP salt"); - - return GRUB_ERR_NONE; -} - -/* - * Fat ZAP lookup - * - */ -/* XXX */ -static grub_err_t -fzap_lookup (dnode_end_t * zap_dnode, zap_phys_t * zap, - const char *name, grub_uint64_t * value, - struct grub_zfs_data *data, int case_insensitive) -{ - void *l; - grub_uint64_t hash, idx, blkid; - int blksft = zfs_log2 (grub_zfs_to_cpu16 (zap_dnode->dn.dn_datablkszsec, - zap_dnode->endian) << DNODE_SHIFT); - grub_err_t err; - grub_zfs_endian_t leafendian; - - err = zap_verify (zap, zap_dnode->endian); - if (err) - return err; - - hash = zap_hash (zap->zap_salt, name, case_insensitive); - - /* get block id from index */ - if (zap->zap_ptrtbl.zt_numblks != 0) - return grub_error (GRUB_ERR_NOT_IMPLEMENTED_YET, - "external pointer tables not supported"); - idx = ZAP_HASH_IDX (hash, zap->zap_ptrtbl.zt_shift); - blkid = grub_zfs_to_cpu64 (((grub_uint64_t *) zap)[idx + (1 << (blksft - 3 - 1))], zap_dnode->endian); - - /* Get the leaf block */ - if ((1U << blksft) < sizeof (zap_leaf_phys_t)) - return grub_error (GRUB_ERR_BAD_FS, "ZAP leaf is too small"); - err = dmu_read (zap_dnode, blkid, &l, &leafendian, data); - if (err) - return err; - - err = zap_leaf_lookup (l, leafendian, blksft, hash, name, value, - case_insensitive); - grub_free (l); - return err; -} - -/* XXX */ -static int -fzap_iterate (dnode_end_t * zap_dnode, zap_phys_t * zap, - grub_size_t name_elem_length, - int (*hook) (const void *name, grub_size_t name_length, - const void *val_in, - grub_size_t nelem, grub_size_t elemsize, - void *data), - void *hook_data, struct grub_zfs_data *data) -{ - zap_leaf_phys_t *l; - void *l_in; - grub_uint64_t idx, idx2, blkid; - grub_uint16_t chunk; - int blksft = zfs_log2 (grub_zfs_to_cpu16 (zap_dnode->dn.dn_datablkszsec, - zap_dnode->endian) << DNODE_SHIFT); - grub_err_t err; - grub_zfs_endian_t endian; - - if (zap_verify (zap, zap_dnode->endian)) - return 0; - - /* get block id from index */ - if (zap->zap_ptrtbl.zt_numblks != 0) - { - grub_error (GRUB_ERR_NOT_IMPLEMENTED_YET, - "external pointer tables not supported"); - return 0; - } - /* Get the leaf block */ - if ((1U << blksft) < sizeof (zap_leaf_phys_t)) - { - grub_error (GRUB_ERR_BAD_FS, "ZAP leaf is too small"); - return 0; - } - for (idx = 0; idx < (1ULL << zap->zap_ptrtbl.zt_shift); idx++) - { - blkid = grub_zfs_to_cpu64 (((grub_uint64_t *) zap)[idx + (1 << (blksft - 3 - 1))], - zap_dnode->endian); - - for (idx2 = 0; idx2 < idx; idx2++) - if (blkid == grub_zfs_to_cpu64 (((grub_uint64_t *) zap)[idx2 + (1 << (blksft - 3 - 1))], - zap_dnode->endian)) - break; - if (idx2 != idx) - continue; - - err = dmu_read (zap_dnode, blkid, &l_in, &endian, data); - l = l_in; - if (err) - { - grub_errno = GRUB_ERR_NONE; - continue; - } - - /* Verify if this is a valid leaf block */ - if (grub_zfs_to_cpu64 (l->l_hdr.lh_block_type, endian) != ZBT_LEAF) - { - grub_free (l); - continue; - } - if (grub_zfs_to_cpu32 (l->l_hdr.lh_magic, endian) != ZAP_LEAF_MAGIC) - { - grub_free (l); - continue; - } - - for (chunk = 0; chunk < ZAP_LEAF_NUMCHUNKS (blksft); chunk++) - { - char *buf; - struct zap_leaf_entry *le; - char *val; - grub_size_t val_length; - le = ZAP_LEAF_ENTRY (l, blksft, chunk); - - /* Verify the chunk entry */ - if (le->le_type != ZAP_CHUNK_ENTRY) - continue; - - buf = grub_malloc (grub_zfs_to_cpu16 (le->le_name_length, endian) - * name_elem_length + 1); - if (zap_leaf_array_get (l, endian, blksft, - grub_zfs_to_cpu16 (le->le_name_chunk, - endian), - grub_zfs_to_cpu16 (le->le_name_length, - endian) - * name_elem_length, buf)) - { - grub_free (buf); - continue; - } - buf[le->le_name_length * name_elem_length] = 0; - - val_length = ((int) le->le_value_length - * (int) le->le_int_size); - val = grub_malloc (grub_zfs_to_cpu16 (val_length, endian)); - if (zap_leaf_array_get (l, endian, blksft, - grub_zfs_to_cpu16 (le->le_value_chunk, - endian), - val_length, val)) - { - grub_free (buf); - grub_free (val); - continue; - } - - if (hook (buf, le->le_name_length, - val, le->le_value_length, le->le_int_size, hook_data)) - { - grub_free (l); - return 1; - } - grub_free (buf); - grub_free (val); - } - grub_free (l); - } - return 0; -} - -/* - * Read in the data of a zap object and find the value for a matching - * property name. - * - */ -static grub_err_t -zap_lookup (dnode_end_t * zap_dnode, const char *name, grub_uint64_t *val, - struct grub_zfs_data *data, int case_insensitive) -{ - grub_uint64_t block_type; - grub_uint32_t size; - void *zapbuf; - grub_err_t err; - grub_zfs_endian_t endian; - - grub_dprintf ("zfs", "looking for '%s'\n", name); - - /* Read in the first block of the zap object data. */ - size = (grub_uint32_t) grub_zfs_to_cpu16 (zap_dnode->dn.dn_datablkszsec, - zap_dnode->endian) << SPA_MINBLOCKSHIFT; - err = dmu_read (zap_dnode, 0, &zapbuf, &endian, data); - if (err) - return err; - block_type = grub_zfs_to_cpu64 (*((grub_uint64_t *) zapbuf), endian); - - grub_dprintf ("zfs", "zap read\n"); - - if (block_type == ZBT_MICRO) - { - grub_dprintf ("zfs", "micro zap\n"); - err = mzap_lookup (zapbuf, endian, size, name, val, - case_insensitive); - grub_dprintf ("zfs", "returned %d\n", err); - grub_free (zapbuf); - return err; - } - else if (block_type == ZBT_HEADER) - { - grub_dprintf ("zfs", "fat zap\n"); - /* this is a fat zap */ - err = fzap_lookup (zap_dnode, zapbuf, name, val, data, - case_insensitive); - grub_dprintf ("zfs", "returned %d\n", err); - grub_free (zapbuf); - return err; - } - - return grub_error (GRUB_ERR_BAD_FS, "unknown ZAP type"); -} - -/* Context for zap_iterate_u64. */ -struct zap_iterate_u64_ctx -{ - int (*hook) (const char *, grub_uint64_t, struct grub_zfs_dir_ctx *); - struct grub_zfs_dir_ctx *dir_ctx; -}; - -/* Helper for zap_iterate_u64. */ -static int -zap_iterate_u64_transform (const void *name, - grub_size_t namelen __attribute__ ((unused)), - const void *val_in, - grub_size_t nelem, - grub_size_t elemsize, - void *data) -{ - struct zap_iterate_u64_ctx *ctx = data; - - if (elemsize != sizeof (grub_uint64_t) || nelem != 1) - return 0; - return ctx->hook (name, grub_be_to_cpu64 (*(const grub_uint64_t *) val_in), - ctx->dir_ctx); -} - -static int -zap_iterate_u64 (dnode_end_t * zap_dnode, - int (*hook) (const char *name, grub_uint64_t val, - struct grub_zfs_dir_ctx *ctx), - struct grub_zfs_data *data, struct grub_zfs_dir_ctx *ctx) -{ - grub_uint64_t block_type; - int size; - void *zapbuf; - grub_err_t err; - int ret; - grub_zfs_endian_t endian; - - /* Read in the first block of the zap object data. */ - size = grub_zfs_to_cpu16 (zap_dnode->dn.dn_datablkszsec, zap_dnode->endian) << SPA_MINBLOCKSHIFT; - err = dmu_read (zap_dnode, 0, &zapbuf, &endian, data); - if (err) - return 0; - block_type = grub_zfs_to_cpu64 (*((grub_uint64_t *) zapbuf), endian); - - grub_dprintf ("zfs", "zap iterate\n"); - - if (block_type == ZBT_MICRO) - { - grub_dprintf ("zfs", "micro zap\n"); - ret = mzap_iterate (zapbuf, endian, size, hook, ctx); - grub_free (zapbuf); - return ret; - } - else if (block_type == ZBT_HEADER) - { - struct zap_iterate_u64_ctx transform_ctx = { - .hook = hook, - .dir_ctx = ctx - }; - - grub_dprintf ("zfs", "fat zap\n"); - /* this is a fat zap */ - ret = fzap_iterate (zap_dnode, zapbuf, 1, - zap_iterate_u64_transform, &transform_ctx, data); - grub_free (zapbuf); - return ret; - } - grub_error (GRUB_ERR_BAD_FS, "unknown ZAP type"); - return 0; -} - -static int -zap_iterate (dnode_end_t * zap_dnode, - grub_size_t nameelemlen, - int (*hook) (const void *name, grub_size_t namelen, - const void *val_in, - grub_size_t nelem, grub_size_t elemsize, - void *data), - void *hook_data, struct grub_zfs_data *data) -{ - grub_uint64_t block_type; - void *zapbuf; - grub_err_t err; - int ret; - grub_zfs_endian_t endian; - - /* Read in the first block of the zap object data. */ - err = dmu_read (zap_dnode, 0, &zapbuf, &endian, data); - if (err) - return 0; - block_type = grub_zfs_to_cpu64 (*((grub_uint64_t *) zapbuf), endian); - - grub_dprintf ("zfs", "zap iterate\n"); - - if (block_type == ZBT_MICRO) - { - grub_error (GRUB_ERR_BAD_FS, "micro ZAP where FAT ZAP expected"); - return 0; - } - if (block_type == ZBT_HEADER) - { - grub_dprintf ("zfs", "fat zap\n"); - /* this is a fat zap */ - ret = fzap_iterate (zap_dnode, zapbuf, nameelemlen, hook, hook_data, - data); - grub_free (zapbuf); - return ret; - } - grub_error (GRUB_ERR_BAD_FS, "unknown ZAP type"); - return 0; -} - - -/* - * Get the dnode of an object number from the metadnode of an object set. - * - * Input - * mdn - metadnode to get the object dnode - * objnum - object number for the object dnode - * buf - data buffer that holds the returning dnode - */ -static grub_err_t -dnode_get (dnode_end_t * mdn, grub_uint64_t objnum, grub_uint8_t type, - dnode_end_t * buf, struct grub_zfs_data *data) -{ - grub_uint64_t blkid, blksz; /* the block id this object dnode is in */ - int epbs; /* shift of number of dnodes in a block */ - int idx; /* index within a block */ - void *dnbuf; - grub_err_t err; - grub_zfs_endian_t endian; - - blksz = grub_zfs_to_cpu16 (mdn->dn.dn_datablkszsec, - mdn->endian) << SPA_MINBLOCKSHIFT; - epbs = zfs_log2 (blksz) - DNODE_SHIFT; - blkid = objnum >> epbs; - idx = objnum & ((1 << epbs) - 1); - - if (data->dnode_buf != NULL && grub_memcmp (data->dnode_mdn, mdn, - sizeof (*mdn)) == 0 - && objnum >= data->dnode_start && objnum < data->dnode_end) - { - grub_memmove (&(buf->dn), &(data->dnode_buf)[idx], DNODE_SIZE); - buf->endian = data->dnode_endian; - if (type && buf->dn.dn_type != type) - return grub_error(GRUB_ERR_BAD_FS, "incorrect dnode type"); - return GRUB_ERR_NONE; - } - - grub_dprintf ("zfs", "endian = %d, blkid=%llx\n", mdn->endian, - (unsigned long long) blkid); - err = dmu_read (mdn, blkid, &dnbuf, &endian, data); - if (err) - return err; - grub_dprintf ("zfs", "alive\n"); - - grub_free (data->dnode_buf); - grub_free (data->dnode_mdn); - data->dnode_mdn = grub_malloc (sizeof (*mdn)); - if (! data->dnode_mdn) - { - grub_errno = GRUB_ERR_NONE; - data->dnode_buf = 0; - } - else - { - grub_memcpy (data->dnode_mdn, mdn, sizeof (*mdn)); - data->dnode_buf = dnbuf; - data->dnode_start = blkid << epbs; - data->dnode_end = (blkid + 1) << epbs; - data->dnode_endian = endian; - } - - grub_memmove (&(buf->dn), (dnode_phys_t *) dnbuf + idx, DNODE_SIZE); - buf->endian = endian; - if (type && buf->dn.dn_type != type) - return grub_error(GRUB_ERR_BAD_FS, "incorrect dnode type"); - - return GRUB_ERR_NONE; -} - -#pragma GCC diagnostic ignored "-Wstrict-aliasing" - -/* - * Get the file dnode for a given file name where mdn is the meta dnode - * for this ZFS object set. When found, place the file dnode in dn. - * The 'path' argument will be mangled. - * - */ -static grub_err_t -dnode_get_path (struct subvolume *subvol, const char *path_in, dnode_end_t *dn, - struct grub_zfs_data *data) -{ - grub_uint64_t objnum, version; - char *cname, ch; - grub_err_t err = GRUB_ERR_NONE; - char *path, *path_buf; - struct dnode_chain - { - struct dnode_chain *next; - dnode_end_t dn; - }; - struct dnode_chain *dnode_path = 0, *dn_new, *root; - - dn_new = grub_malloc (sizeof (*dn_new)); - if (! dn_new) - return grub_errno; - dn_new->next = 0; - dnode_path = root = dn_new; - - err = dnode_get (&subvol->mdn, MASTER_NODE_OBJ, DMU_OT_MASTER_NODE, - &(dnode_path->dn), data); - if (err) - { - grub_free (dn_new); - return err; - } - - err = zap_lookup (&(dnode_path->dn), ZPL_VERSION_STR, &version, - data, 0); - if (err) - { - grub_free (dn_new); - return err; - } - - if (version > ZPL_VERSION) - { - grub_free (dn_new); - return grub_error (GRUB_ERR_NOT_IMPLEMENTED_YET, "too new ZPL version"); - } - - err = zap_lookup (&(dnode_path->dn), "casesensitivity", - &subvol->case_insensitive, - data, 0); - if (err == GRUB_ERR_FILE_NOT_FOUND) - { - grub_errno = GRUB_ERR_NONE; - subvol->case_insensitive = 0; - } - - err = zap_lookup (&(dnode_path->dn), ZFS_ROOT_OBJ, &objnum, data, 0); - if (err) - { - grub_free (dn_new); - return err; - } - - err = dnode_get (&subvol->mdn, objnum, 0, &(dnode_path->dn), data); - if (err) - { - grub_free (dn_new); - return err; - } - - path = path_buf = grub_strdup (path_in); - if (!path_buf) - { - grub_free (dn_new); - return grub_errno; - } - - while (1) - { - /* skip leading slashes */ - while (*path == '/') - path++; - if (!*path) - break; - /* get the next component name */ - cname = path; - while (*path && *path != '/') - path++; - /* Skip dot. */ - if (cname + 1 == path && cname[0] == '.') - continue; - /* Handle double dot. */ - if (cname + 2 == path && cname[0] == '.' && cname[1] == '.') - { - if (dn_new->next) - { - dn_new = dnode_path; - dnode_path = dn_new->next; - grub_free (dn_new); - } - else - { - err = grub_error (GRUB_ERR_FILE_NOT_FOUND, - "can't resolve .."); - break; - } - continue; - } - - ch = *path; - *path = 0; /* ensure null termination */ - - if (dnode_path->dn.dn.dn_type != DMU_OT_DIRECTORY_CONTENTS) - { - grub_free (path_buf); - return grub_error (GRUB_ERR_BAD_FILE_TYPE, N_("not a directory")); - } - err = zap_lookup (&(dnode_path->dn), cname, &objnum, - data, subvol->case_insensitive); - if (err) - break; - - dn_new = grub_malloc (sizeof (*dn_new)); - if (! dn_new) - { - err = grub_errno; - break; - } - dn_new->next = dnode_path; - dnode_path = dn_new; - - objnum = ZFS_DIRENT_OBJ (objnum); - err = dnode_get (&subvol->mdn, objnum, 0, &(dnode_path->dn), data); - if (err) - break; - - *path = ch; - if (dnode_path->dn.dn.dn_bonustype == DMU_OT_ZNODE - && ((grub_zfs_to_cpu64(((znode_phys_t *) DN_BONUS (&dnode_path->dn.dn))->zp_mode, dnode_path->dn.endian) >> 12) & 0xf) == 0xa) - { - char *sym_value; - grub_size_t sym_sz; - int free_symval = 0; - char *oldpath = path, *oldpathbuf = path_buf; - sym_value = ((char *) DN_BONUS (&dnode_path->dn.dn) + sizeof (struct znode_phys)); - - sym_sz = grub_zfs_to_cpu64 (((znode_phys_t *) DN_BONUS (&dnode_path->dn.dn))->zp_size, dnode_path->dn.endian); - - if (dnode_path->dn.dn.dn_flags & 1) - { - grub_size_t block; - grub_size_t blksz; - blksz = (grub_zfs_to_cpu16 (dnode_path->dn.dn.dn_datablkszsec, - dnode_path->dn.endian) - << SPA_MINBLOCKSHIFT); - - if (blksz == 0) - return grub_error(GRUB_ERR_BAD_FS, "0-sized block"); - - sym_value = grub_malloc (sym_sz); - if (!sym_value) - return grub_errno; - for (block = 0; block < (sym_sz + blksz - 1) / blksz; block++) - { - void *t; - grub_size_t movesize; - - err = dmu_read (&(dnode_path->dn), block, &t, 0, data); - if (err) - { - grub_free (sym_value); - return err; - } - - movesize = sym_sz - block * blksz; - if (movesize > blksz) - movesize = blksz; - - grub_memcpy (sym_value + block * blksz, t, movesize); - grub_free (t); - } - free_symval = 1; - } - path = path_buf = grub_malloc (sym_sz + grub_strlen (oldpath) + 1); - if (!path_buf) - { - grub_free (oldpathbuf); - if (free_symval) - grub_free (sym_value); - return grub_errno; - } - grub_memcpy (path, sym_value, sym_sz); - if (free_symval) - grub_free (sym_value); - path [sym_sz] = 0; - grub_memcpy (path + grub_strlen (path), oldpath, - grub_strlen (oldpath) + 1); - - grub_free (oldpathbuf); - if (path[0] != '/') - { - dn_new = dnode_path; - dnode_path = dn_new->next; - grub_free (dn_new); - } - else while (dnode_path != root) - { - dn_new = dnode_path; - dnode_path = dn_new->next; - grub_free (dn_new); - } - } - if (dnode_path->dn.dn.dn_bonustype == DMU_OT_SA) - { - void *sahdrp; - int hdrsize; - - if (dnode_path->dn.dn.dn_bonuslen != 0) - { - sahdrp = DN_BONUS (&dnode_path->dn.dn); - } - else if (dnode_path->dn.dn.dn_flags & DNODE_FLAG_SPILL_BLKPTR) - { - blkptr_t *bp = &dnode_path->dn.dn.dn_spill; - - err = zio_read (bp, dnode_path->dn.endian, &sahdrp, NULL, data); - if (err) - return err; - } - else - { - return grub_error (GRUB_ERR_BAD_FS, "filesystem is corrupt"); - } - - hdrsize = SA_HDR_SIZE (((sa_hdr_phys_t *) sahdrp)); - - if (((grub_zfs_to_cpu64 (grub_get_unaligned64 ((char *) sahdrp - + hdrsize - + SA_TYPE_OFFSET), - dnode_path->dn.endian) >> 12) & 0xf) == 0xa) - { - char *sym_value = (char *) sahdrp + hdrsize + SA_SYMLINK_OFFSET; - grub_size_t sym_sz = - grub_zfs_to_cpu64 (grub_get_unaligned64 ((char *) sahdrp - + hdrsize - + SA_SIZE_OFFSET), - dnode_path->dn.endian); - char *oldpath = path, *oldpathbuf = path_buf; - path = path_buf = grub_malloc (sym_sz + grub_strlen (oldpath) + 1); - if (!path_buf) - { - grub_free (oldpathbuf); - return grub_errno; - } - grub_memcpy (path, sym_value, sym_sz); - path [sym_sz] = 0; - grub_memcpy (path + grub_strlen (path), oldpath, - grub_strlen (oldpath) + 1); - - grub_free (oldpathbuf); - if (path[0] != '/') - { - dn_new = dnode_path; - dnode_path = dn_new->next; - grub_free (dn_new); - } - else while (dnode_path != root) - { - dn_new = dnode_path; - dnode_path = dn_new->next; - grub_free (dn_new); - } - } - } - } - - if (!err) - grub_memcpy (dn, &(dnode_path->dn), sizeof (*dn)); - - while (dnode_path) - { - dn_new = dnode_path->next; - grub_free (dnode_path); - dnode_path = dn_new; - } - grub_free (path_buf); - return err; -} - -#if 0 -/* - * Get the default 'bootfs' property value from the rootpool. - * - */ -static grub_err_t -get_default_bootfsobj (dnode_phys_t * mosmdn, grub_uint64_t * obj, - struct grub_zfs_data *data) -{ - grub_uint64_t objnum = 0; - dnode_phys_t *dn; - if (!dn) - return grub_errno; - - if ((grub_errno = dnode_get (mosmdn, DMU_POOL_DIRECTORY_OBJECT, - DMU_OT_OBJECT_DIRECTORY, dn, data))) - { - grub_free (dn); - return (grub_errno); - } - - /* - * find the object number for 'pool_props', and get the dnode - * of the 'pool_props'. - */ - if (zap_lookup (dn, DMU_POOL_PROPS, &objnum, data)) - { - grub_free (dn); - return (GRUB_ERR_BAD_FS); - } - if ((grub_errno = dnode_get (mosmdn, objnum, DMU_OT_POOL_PROPS, dn, data))) - { - grub_free (dn); - return (grub_errno); - } - if (zap_lookup (dn, ZPOOL_PROP_BOOTFS, &objnum, data)) - { - grub_free (dn); - return (GRUB_ERR_BAD_FS); - } - - if (!objnum) - { - grub_free (dn); - return (GRUB_ERR_BAD_FS); - } - - *obj = objnum; - return (0); -} -#endif -/* - * Given a MOS metadnode, get the metadnode of a given filesystem name (fsname), - * e.g. pool/rootfs, or a given object number (obj), e.g. the object number - * of pool/rootfs. - * - * If no fsname and no obj are given, return the DSL_DIR metadnode. - * If fsname is given, return its metadnode and its matching object number. - * If only obj is given, return the metadnode for this object number. - * - */ -static grub_err_t -get_filesystem_dnode (dnode_end_t * mosmdn, char *fsname, - dnode_end_t * mdn, struct grub_zfs_data *data) -{ - grub_uint64_t objnum; - grub_err_t err; - - grub_dprintf ("zfs", "endian = %d\n", mosmdn->endian); - - err = dnode_get (mosmdn, DMU_POOL_DIRECTORY_OBJECT, - DMU_OT_OBJECT_DIRECTORY, mdn, data); - if (err) - return err; - - grub_dprintf ("zfs", "alive\n"); - - err = zap_lookup (mdn, DMU_POOL_ROOT_DATASET, &objnum, data, 0); - if (err) - return err; - - grub_dprintf ("zfs", "alive\n"); - - err = dnode_get (mosmdn, objnum, 0, mdn, data); - if (err) - return err; - - grub_dprintf ("zfs", "alive\n"); - - while (*fsname) - { - grub_uint64_t childobj; - char *cname, ch; - - while (*fsname == '/') - fsname++; - - if (! *fsname || *fsname == '@') - break; - - cname = fsname; - while (*fsname && *fsname != '/') - fsname++; - ch = *fsname; - *fsname = 0; - - childobj = grub_zfs_to_cpu64 ((((dsl_dir_phys_t *) DN_BONUS (&mdn->dn)))->dd_child_dir_zapobj, mdn->endian); - err = dnode_get (mosmdn, childobj, - DMU_OT_DSL_DIR_CHILD_MAP, mdn, data); - if (err) - return err; - - err = zap_lookup (mdn, cname, &objnum, data, 0); - if (err) - return err; - - err = dnode_get (mosmdn, objnum, 0, mdn, data); - if (err) - return err; - - *fsname = ch; - } - return GRUB_ERR_NONE; -} - -static grub_err_t -make_mdn (dnode_end_t * mdn, struct grub_zfs_data *data) -{ - void *osp; - blkptr_t *bp; - grub_size_t ospsize = 0; - grub_err_t err; - - grub_dprintf ("zfs", "endian = %d\n", mdn->endian); - - bp = &(((dsl_dataset_phys_t *) DN_BONUS (&mdn->dn))->ds_bp); - err = zio_read (bp, mdn->endian, &osp, &ospsize, data); - if (err) - return err; - if (ospsize < OBJSET_PHYS_SIZE_V14) - { - grub_free (osp); - return grub_error (GRUB_ERR_BAD_FS, "too small osp"); - } - - mdn->endian = (grub_zfs_to_cpu64 (bp->blk_prop, mdn->endian)>>63) & 1; - grub_memmove ((char *) &(mdn->dn), - (char *) &((objset_phys_t *) osp)->os_meta_dnode, DNODE_SIZE); - grub_free (osp); - return GRUB_ERR_NONE; -} - -/* Context for dnode_get_fullpath. */ -struct dnode_get_fullpath_ctx -{ - struct subvolume *subvol; - grub_uint64_t salt; - int keyn; -}; - -/* Helper for dnode_get_fullpath. */ -static int -count_zap_keys (const void *name __attribute__ ((unused)), - grub_size_t namelen __attribute__ ((unused)), - const void *val_in __attribute__ ((unused)), - grub_size_t nelem __attribute__ ((unused)), - grub_size_t elemsize __attribute__ ((unused)), - void *data) -{ - struct dnode_get_fullpath_ctx *ctx = data; - - ctx->subvol->nkeys++; - return 0; -} - -/* Helper for dnode_get_fullpath. */ -static int -load_zap_key (const void *name, grub_size_t namelen, const void *val_in, - grub_size_t nelem, grub_size_t elemsize, void *data) -{ - struct dnode_get_fullpath_ctx *ctx = data; - - if (namelen != 1) - { - grub_dprintf ("zfs", "Unexpected key index size %" PRIuGRUB_SIZE "\n", - namelen); - return 0; - } - - if (elemsize != 1) - { - grub_dprintf ("zfs", "Unexpected key element size %" PRIuGRUB_SIZE "\n", - elemsize); - return 0; - } - - ctx->subvol->keyring[ctx->keyn].txg = - grub_be_to_cpu64 (*(grub_uint64_t *) name); - ctx->subvol->keyring[ctx->keyn].algo = - grub_le_to_cpu64 (*(grub_uint64_t *) val_in); - ctx->subvol->keyring[ctx->keyn].cipher = - grub_zfs_load_key (val_in, nelem, ctx->salt, - ctx->subvol->keyring[ctx->keyn].algo); - ctx->keyn++; - return 0; -} - -static grub_err_t -dnode_get_fullpath (const char *fullpath, struct subvolume *subvol, - dnode_end_t * dn, int *isfs, - struct grub_zfs_data *data) -{ - char *fsname, *snapname; - const char *ptr_at, *filename; - grub_uint64_t headobj; - grub_uint64_t keychainobj; - grub_err_t err; - - ptr_at = grub_strchr (fullpath, '@'); - if (! ptr_at) - { - *isfs = 1; - filename = 0; - snapname = 0; - fsname = grub_strdup (fullpath); - } - else - { - const char *ptr_slash = grub_strchr (ptr_at, '/'); - - *isfs = 0; - fsname = grub_malloc (ptr_at - fullpath + 1); - if (!fsname) - return grub_errno; - grub_memcpy (fsname, fullpath, ptr_at - fullpath); - fsname[ptr_at - fullpath] = 0; - if (ptr_at[1] && ptr_at[1] != '/') - { - snapname = grub_malloc (ptr_slash - ptr_at); - if (!snapname) - { - grub_free (fsname); - return grub_errno; - } - grub_memcpy (snapname, ptr_at + 1, ptr_slash - ptr_at - 1); - snapname[ptr_slash - ptr_at - 1] = 0; - } - else - snapname = 0; - if (ptr_slash) - filename = ptr_slash; - else - filename = "/"; - grub_dprintf ("zfs", "fsname = '%s' snapname='%s' filename = '%s'\n", - fsname, snapname, filename); - } - grub_dprintf ("zfs", "alive\n"); - err = get_filesystem_dnode (&(data->mos), fsname, dn, data); - if (err) - { - grub_free (fsname); - grub_free (snapname); - return err; - } - - grub_dprintf ("zfs", "alive\n"); - - headobj = grub_zfs_to_cpu64 (((dsl_dir_phys_t *) DN_BONUS (&dn->dn))->dd_head_dataset_obj, dn->endian); - - grub_dprintf ("zfs", "endian = %d\n", subvol->mdn.endian); - - err = dnode_get (&(data->mos), headobj, 0, &subvol->mdn, data); - if (err) - { - grub_free (fsname); - grub_free (snapname); - return err; - } - grub_dprintf ("zfs", "endian = %d\n", subvol->mdn.endian); - - keychainobj = grub_zfs_to_cpu64 (((dsl_dir_phys_t *) DN_BONUS (&dn->dn))->keychain, dn->endian); - if (grub_zfs_load_key && keychainobj) - { - struct dnode_get_fullpath_ctx ctx = { - .subvol = subvol, - .keyn = 0 - }; - dnode_end_t keychain_dn, props_dn; - grub_uint64_t propsobj; - propsobj = grub_zfs_to_cpu64 (((dsl_dir_phys_t *) DN_BONUS (&dn->dn))->dd_props_zapobj, dn->endian); - - err = dnode_get (&(data->mos), propsobj, DMU_OT_DSL_PROPS, - &props_dn, data); - if (err) - { - grub_free (fsname); - grub_free (snapname); - return err; - } - - err = zap_lookup (&props_dn, "salt", &ctx.salt, data, 0); - if (err == GRUB_ERR_FILE_NOT_FOUND) - { - err = 0; - grub_errno = 0; - ctx.salt = 0; - } - if (err) - { - grub_dprintf ("zfs", "failed here\n"); - return err; - } - - err = dnode_get (&(data->mos), keychainobj, DMU_OT_DSL_KEYCHAIN, - &keychain_dn, data); - if (err) - { - grub_free (fsname); - grub_free (snapname); - return err; - } - subvol->nkeys = 0; - zap_iterate (&keychain_dn, 8, count_zap_keys, &ctx, data); - subvol->keyring = grub_zalloc (subvol->nkeys * sizeof (subvol->keyring[0])); - if (!subvol->keyring) - { - grub_free (fsname); - grub_free (snapname); - return err; - } - zap_iterate (&keychain_dn, 8, load_zap_key, &ctx, data); - } - - if (snapname) - { - grub_uint64_t snapobj; - - snapobj = grub_zfs_to_cpu64 (((dsl_dataset_phys_t *) DN_BONUS (&subvol->mdn.dn))->ds_snapnames_zapobj, subvol->mdn.endian); - - err = dnode_get (&(data->mos), snapobj, - DMU_OT_DSL_DS_SNAP_MAP, &subvol->mdn, data); - if (!err) - err = zap_lookup (&subvol->mdn, snapname, &headobj, data, 0); - if (!err) - err = dnode_get (&(data->mos), headobj, DMU_OT_DSL_DATASET, - &subvol->mdn, data); - if (err) - { - grub_free (fsname); - grub_free (snapname); - return err; - } - } - - subvol->obj = headobj; - - make_mdn (&subvol->mdn, data); - - grub_dprintf ("zfs", "endian = %d\n", subvol->mdn.endian); - - if (*isfs) - { - grub_free (fsname); - grub_free (snapname); - return GRUB_ERR_NONE; - } - err = dnode_get_path (subvol, filename, dn, data); - grub_free (fsname); - grub_free (snapname); - return err; -} - -static int -nvlist_find_value (const char *nvlist_in, const char *name, - int valtype, char **val, - grub_size_t *size_out, grub_size_t *nelm_out) -{ - grub_size_t nvp_name_len, name_len = grub_strlen(name); - int type; - const char *nvpair=NULL,*nvlist=nvlist_in; - char *nvp_name; - - /* Verify if the 1st and 2nd byte in the nvlist are valid. */ - /* NOTE: independently of what endianness header announces all - subsequent values are big-endian. */ - if (nvlist[0] != NV_ENCODE_XDR || (nvlist[1] != NV_LITTLE_ENDIAN - && nvlist[1] != NV_BIG_ENDIAN)) - { - grub_dprintf ("zfs", "incorrect nvlist header\n"); - grub_error (GRUB_ERR_BAD_FS, "incorrect nvlist"); - return 0; - } - - /* - * Loop thru the nvpair list - * The XDR representation of an integer is in big-endian byte order. - */ - while ((nvpair=nvlist_next_nvpair(nvlist,nvpair))) - { - nvpair_name(nvpair,&nvp_name, &nvp_name_len); - type = nvpair_type(nvpair); - if (type == valtype - && (nvp_name_len == name_len - || (nvp_name_len > name_len && nvp_name[name_len] == '\0')) - && grub_memcmp (nvp_name, name, name_len) == 0) - { - return nvpair_value(nvpair,val,size_out,nelm_out); - } - } - return 0; -} - -int -grub_zfs_nvlist_lookup_uint64 (const char *nvlist, const char *name, - grub_uint64_t * out) -{ - char *nvpair; - grub_size_t size; - int found; - - found = nvlist_find_value (nvlist, name, DATA_TYPE_UINT64, &nvpair, &size, 0); - if (!found) - return 0; - if (size < sizeof (grub_uint64_t)) - { - grub_error (GRUB_ERR_BAD_FS, "invalid uint64"); - return 0; - } - - *out = grub_be_to_cpu64 (grub_get_unaligned64 (nvpair)); - return 1; -} - -char * -grub_zfs_nvlist_lookup_string (const char *nvlist, const char *name) -{ - char *nvpair; - char *ret; - grub_size_t slen; - grub_size_t size; - int found; - - found = nvlist_find_value (nvlist, name, DATA_TYPE_STRING, &nvpair, &size, 0); - if (!found) - return 0; - if (size < 4) - { - grub_error (GRUB_ERR_BAD_FS, "invalid string"); - return 0; - } - slen = grub_be_to_cpu32 (grub_get_unaligned32 (nvpair)); - if (slen > size - 4) - slen = size - 4; - ret = grub_malloc (slen + 1); - if (!ret) - return 0; - grub_memcpy (ret, nvpair + 4, slen); - ret[slen] = 0; - return ret; -} - -char * -grub_zfs_nvlist_lookup_nvlist (const char *nvlist, const char *name) -{ - char *nvpair; - char *ret; - grub_size_t size; - int found; - - found = nvlist_find_value (nvlist, name, DATA_TYPE_NVLIST, &nvpair, - &size, 0); - if (!found) - return 0; - ret = grub_zalloc (size + 3 * sizeof (grub_uint32_t)); - if (!ret) - return 0; - grub_memcpy (ret, nvlist, sizeof (grub_uint32_t)); - - grub_memcpy (ret + sizeof (grub_uint32_t), nvpair, size); - return ret; -} - -int -grub_zfs_nvlist_lookup_nvlist_array_get_nelm (const char *nvlist, - const char *name) -{ - char *nvpair; - grub_size_t nelm, size; - int found; - - found = nvlist_find_value (nvlist, name, DATA_TYPE_NVLIST_ARRAY, &nvpair, - &size, &nelm); - if (! found) - return -1; - return nelm; -} - -static int -get_nvlist_size (const char *beg, const char *limit) -{ - const char *ptr; - grub_uint32_t encode_size; - - ptr = beg + 8; - - while (ptr < limit - && (encode_size = grub_be_to_cpu32 (grub_get_unaligned32 (ptr)))) - ptr += encode_size; /* goto the next nvpair */ - ptr += 8; - return (ptr > limit) ? -1 : (ptr - beg); -} - -char * -grub_zfs_nvlist_lookup_nvlist_array (const char *nvlist, const char *name, - grub_size_t index) -{ - char *nvpair, *nvpairptr; - int found; - char *ret; - grub_size_t size; - unsigned i; - grub_size_t nelm; - int elemsize = 0; - - found = nvlist_find_value (nvlist, name, DATA_TYPE_NVLIST_ARRAY, &nvpair, - &size, &nelm); - if (!found) - return 0; - if (index >= nelm) - { - grub_error (GRUB_ERR_OUT_OF_RANGE, "trying to lookup past nvlist array"); - return 0; - } - - nvpairptr = nvpair; - - for (i = 0; i < index; i++) - { - int r; - r = get_nvlist_size (nvpairptr, nvpair + size); - - if (r < 0) - { - grub_error (GRUB_ERR_BAD_FS, "incorrect nvlist array"); - return NULL; - } - nvpairptr += r; - } - - elemsize = get_nvlist_size (nvpairptr, nvpair + size); - - if (elemsize < 0) - { - grub_error (GRUB_ERR_BAD_FS, "incorrect nvlist array"); - return 0; - } - - ret = grub_zalloc (elemsize + sizeof (grub_uint32_t)); - if (!ret) - return 0; - grub_memcpy (ret, nvlist, sizeof (grub_uint32_t)); - - grub_memcpy (ret + sizeof (grub_uint32_t), nvpairptr, elemsize); - return ret; -} - -static void -unmount_device (struct grub_zfs_device_desc *desc) -{ - unsigned i; - switch (desc->type) - { - case DEVICE_LEAF: - if (!desc->original && desc->dev) - grub_device_close (desc->dev); - return; - case DEVICE_RAIDZ: - case DEVICE_MIRROR: - for (i = 0; i < desc->n_children; i++) - unmount_device (&desc->children[i]); - grub_free (desc->children); - return; - } -} - -static void -zfs_unmount (struct grub_zfs_data *data) -{ - unsigned i; - for (i = 0; i < data->n_devices_attached; i++) - unmount_device (&data->devices_attached[i]); - grub_free (data->devices_attached); - grub_free (data->dnode_buf); - grub_free (data->dnode_mdn); - grub_free (data->file_buf); - for (i = 0; i < data->subvol.nkeys; i++) - grub_crypto_cipher_close (data->subvol.keyring[i].cipher); - grub_free (data->subvol.keyring); - grub_free (data); -} - -/* - * zfs_mount() locates a valid uberblock of the root pool and read in its MOS - * to the memory address MOS. - * - */ -static struct grub_zfs_data * -zfs_mount (grub_device_t dev) -{ - struct grub_zfs_data *data = 0; - grub_err_t err; - void *osp = 0; - grub_size_t ospsize; - grub_zfs_endian_t ub_endian = GRUB_ZFS_UNKNOWN_ENDIAN; - uberblock_t *ub; - int inserted; - - if (! dev->disk) - { - grub_error (GRUB_ERR_BAD_DEVICE, "not a disk"); - return 0; - } - - data = grub_zalloc (sizeof (*data)); - if (!data) - return 0; -#if 0 - /* if it's our first time here, zero the best uberblock out */ - if (data->best_drive == 0 && data->best_part == 0 && find_best_root) - grub_memset (¤t_uberblock, 0, sizeof (uberblock_t)); -#endif - - data->n_devices_allocated = 16; - data->devices_attached = grub_malloc (sizeof (data->devices_attached[0]) - * data->n_devices_allocated); - data->n_devices_attached = 0; - err = scan_disk (dev, data, 1, &inserted); - if (err) - { - zfs_unmount (data); - return NULL; - } - - ub = &(data->current_uberblock); - ub_endian = (grub_zfs_to_cpu64 (ub->ub_magic, - GRUB_ZFS_LITTLE_ENDIAN) == UBERBLOCK_MAGIC - ? GRUB_ZFS_LITTLE_ENDIAN : GRUB_ZFS_BIG_ENDIAN); - - err = zio_read (&ub->ub_rootbp, ub_endian, - &osp, &ospsize, data); - if (err) - { - zfs_unmount (data); - return NULL; - } - - if (ospsize < OBJSET_PHYS_SIZE_V14) - { - grub_error (GRUB_ERR_BAD_FS, "OSP too small"); - grub_free (osp); - zfs_unmount (data); - return NULL; - } - - if (ub->ub_version >= SPA_VERSION_FEATURES && - check_mos_features(&((objset_phys_t *) osp)->os_meta_dnode,ub_endian, - data) != 0) - { - grub_error (GRUB_ERR_BAD_FS, "Unsupported features in pool"); - grub_free (osp); - zfs_unmount (data); - return NULL; - } - - /* Got the MOS. Save it at the memory addr MOS. */ - grub_memmove (&(data->mos.dn), &((objset_phys_t *) osp)->os_meta_dnode, - DNODE_SIZE); - data->mos.endian = (grub_zfs_to_cpu64 (ub->ub_rootbp.blk_prop, - ub_endian) >> 63) & 1; - grub_free (osp); - - return data; -} - -grub_err_t -grub_zfs_fetch_nvlist (grub_device_t dev, char **nvlist) -{ - struct grub_zfs_data *zfs; - grub_err_t err; - - zfs = zfs_mount (dev); - if (!zfs) - return grub_errno; - err = zfs_fetch_nvlist (zfs->device_original, nvlist); - zfs_unmount (zfs); - return err; -} - -static grub_err_t -zfs_label (grub_device_t device, char **label) -{ - char *nvlist; - grub_err_t err; - struct grub_zfs_data *data; - - data = zfs_mount (device); - if (! data) - return grub_errno; - - err = zfs_fetch_nvlist (data->device_original, &nvlist); - if (err) - { - zfs_unmount (data); - return err; - } - - *label = grub_zfs_nvlist_lookup_string (nvlist, ZPOOL_CONFIG_POOL_NAME); - grub_free (nvlist); - zfs_unmount (data); - return grub_errno; -} - -static grub_err_t -zfs_uuid (grub_device_t device, char **uuid) -{ - struct grub_zfs_data *data; - - *uuid = 0; - - data = zfs_mount (device); - if (! data) - return grub_errno; - - *uuid = grub_xasprintf ("%016llx", (long long unsigned) data->guid); - zfs_unmount (data); - if (! *uuid) - return grub_errno; - return GRUB_ERR_NONE; -} - -static grub_err_t -zfs_mtime (grub_device_t device, grub_int32_t *mt) -{ - struct grub_zfs_data *data; - grub_zfs_endian_t ub_endian = GRUB_ZFS_UNKNOWN_ENDIAN; - uberblock_t *ub; - - *mt = 0; - - data = zfs_mount (device); - if (! data) - return grub_errno; - - ub = &(data->current_uberblock); - ub_endian = (grub_zfs_to_cpu64 (ub->ub_magic, - GRUB_ZFS_LITTLE_ENDIAN) == UBERBLOCK_MAGIC - ? GRUB_ZFS_LITTLE_ENDIAN : GRUB_ZFS_BIG_ENDIAN); - - *mt = grub_zfs_to_cpu64 (ub->ub_timestamp, ub_endian); - zfs_unmount (data); - return GRUB_ERR_NONE; -} - -/* - * zfs_open() locates a file in the rootpool by following the - * MOS and places the dnode of the file in the memory address DNODE. - */ -static grub_err_t -grub_zfs_open (struct grub_file *file, const char *fsfilename) -{ - struct grub_zfs_data *data; - grub_err_t err; - int isfs; - - data = zfs_mount (file->device); - if (! data) - return grub_errno; - - err = dnode_get_fullpath (fsfilename, &(data->subvol), - &(data->dnode), &isfs, data); - if (err) - { - zfs_unmount (data); - return err; - } - - if (isfs) - { - zfs_unmount (data); - return grub_error (GRUB_ERR_BAD_FILE_TYPE, N_("missing `%c' symbol"), '@'); - } - - /* We found the dnode for this file. Verify if it is a plain file. */ - if (data->dnode.dn.dn_type != DMU_OT_PLAIN_FILE_CONTENTS) - { - zfs_unmount (data); - return grub_error (GRUB_ERR_BAD_FILE_TYPE, N_("not a regular file")); - } - - /* get the file size and set the file position to 0 */ - - /* - * For DMU_OT_SA we will need to locate the SIZE attribute - * attribute, which could be either in the bonus buffer - * or the "spill" block. - */ - if (data->dnode.dn.dn_bonustype == DMU_OT_SA) - { - void *sahdrp; - int hdrsize; - - if (data->dnode.dn.dn_bonuslen != 0) - { - sahdrp = (sa_hdr_phys_t *) DN_BONUS (&data->dnode.dn); - } - else if (data->dnode.dn.dn_flags & DNODE_FLAG_SPILL_BLKPTR) - { - blkptr_t *bp = &data->dnode.dn.dn_spill; - - err = zio_read (bp, data->dnode.endian, &sahdrp, NULL, data); - if (err) - return err; - } - else - { - return grub_error (GRUB_ERR_BAD_FS, "filesystem is corrupt"); - } - - hdrsize = SA_HDR_SIZE (((sa_hdr_phys_t *) sahdrp)); - file->size = grub_zfs_to_cpu64 (grub_get_unaligned64 ((char *) sahdrp + hdrsize + SA_SIZE_OFFSET), data->dnode.endian); - } - else if (data->dnode.dn.dn_bonustype == DMU_OT_ZNODE) - { - file->size = grub_zfs_to_cpu64 (((znode_phys_t *) DN_BONUS (&data->dnode.dn))->zp_size, data->dnode.endian); - } - else - return grub_error (GRUB_ERR_BAD_FS, "bad bonus type"); - - file->data = data; - file->offset = 0; - -#ifndef GRUB_UTIL - grub_dl_ref (my_mod); -#endif - - return GRUB_ERR_NONE; -} - -static grub_ssize_t -grub_zfs_read (grub_file_t file, char *buf, grub_size_t len) -{ - struct grub_zfs_data *data = (struct grub_zfs_data *) file->data; - grub_size_t blksz, movesize; - grub_size_t length; - grub_size_t read; - grub_err_t err; - - /* - * If offset is in memory, move it into the buffer provided and return. - */ - if (file->offset >= data->file_start - && file->offset + len <= data->file_end) - { - grub_memmove (buf, data->file_buf + file->offset - data->file_start, - len); - return len; - } - - blksz = grub_zfs_to_cpu16 (data->dnode.dn.dn_datablkszsec, - data->dnode.endian) << SPA_MINBLOCKSHIFT; - - if (blksz == 0) - { - grub_error (GRUB_ERR_BAD_FS, "0-sized block"); - return -1; - } - - /* - * Entire Dnode is too big to fit into the space available. We - * will need to read it in chunks. This could be optimized to - * read in as large a chunk as there is space available, but for - * now, this only reads in one data block at a time. - */ - length = len; - read = 0; - while (length) - { - void *t; - /* - * Find requested blkid and the offset within that block. - */ - grub_uint64_t blkid = grub_divmod64 (file->offset + read, blksz, 0); - grub_free (data->file_buf); - data->file_buf = 0; - - err = dmu_read (&(data->dnode), blkid, &t, - 0, data); - data->file_buf = t; - if (err) - { - data->file_buf = NULL; - data->file_start = data->file_end = 0; - return -1; - } - - data->file_start = blkid * blksz; - data->file_end = data->file_start + blksz; - - movesize = data->file_end - file->offset - read; - if (movesize > length) - movesize = length; - - grub_memmove (buf, data->file_buf + file->offset + read - - data->file_start, movesize); - buf += movesize; - length -= movesize; - read += movesize; - } - - return len; -} - -static grub_err_t -grub_zfs_close (grub_file_t file) -{ - zfs_unmount ((struct grub_zfs_data *) file->data); - -#ifndef GRUB_UTIL - grub_dl_unref (my_mod); -#endif - - return GRUB_ERR_NONE; -} - -grub_err_t -grub_zfs_getmdnobj (grub_device_t dev, const char *fsfilename, - grub_uint64_t *mdnobj) -{ - struct grub_zfs_data *data; - grub_err_t err; - int isfs; - - data = zfs_mount (dev); - if (! data) - return grub_errno; - - err = dnode_get_fullpath (fsfilename, &(data->subvol), - &(data->dnode), &isfs, data); - *mdnobj = data->subvol.obj; - zfs_unmount (data); - return err; -} - -static grub_err_t -fill_fs_info (struct grub_dirhook_info *info, - dnode_end_t mdn, struct grub_zfs_data *data) -{ - grub_err_t err; - dnode_end_t dn; - grub_uint64_t objnum; - grub_uint64_t headobj; - - grub_memset (info, 0, sizeof (*info)); - - info->dir = 1; - - if (mdn.dn.dn_type == DMU_OT_DSL_DIR) - { - headobj = grub_zfs_to_cpu64 (((dsl_dir_phys_t *) DN_BONUS (&mdn.dn))->dd_head_dataset_obj, mdn.endian); - - err = dnode_get (&(data->mos), headobj, 0, &mdn, data); - if (err) - { - grub_dprintf ("zfs", "failed here\n"); - return err; - } - } - err = make_mdn (&mdn, data); - if (err) - return err; - err = dnode_get (&mdn, MASTER_NODE_OBJ, DMU_OT_MASTER_NODE, - &dn, data); - if (err) - { - grub_dprintf ("zfs", "failed here\n"); - return err; - } - - err = zap_lookup (&dn, ZFS_ROOT_OBJ, &objnum, data, 0); - if (err) - { - grub_dprintf ("zfs", "failed here\n"); - return err; - } - - err = dnode_get (&mdn, objnum, 0, &dn, data); - if (err) - { - grub_dprintf ("zfs", "failed here\n"); - return err; - } - - if (dn.dn.dn_bonustype == DMU_OT_SA) - { - void *sahdrp; - int hdrsize; - - if (dn.dn.dn_bonuslen != 0) - { - sahdrp = (sa_hdr_phys_t *) DN_BONUS (&dn.dn); - } - else if (dn.dn.dn_flags & DNODE_FLAG_SPILL_BLKPTR) - { - blkptr_t *bp = &dn.dn.dn_spill; - - err = zio_read (bp, dn.endian, &sahdrp, NULL, data); - if (err) - return err; - } - else - { - grub_error (GRUB_ERR_BAD_FS, "filesystem is corrupt"); - return grub_errno; - } - - hdrsize = SA_HDR_SIZE (((sa_hdr_phys_t *) sahdrp)); - info->mtimeset = 1; - info->mtime = grub_zfs_to_cpu64 (grub_get_unaligned64 ((char *) sahdrp + hdrsize + SA_MTIME_OFFSET), dn.endian); - } - - if (dn.dn.dn_bonustype == DMU_OT_ZNODE) - { - info->mtimeset = 1; - info->mtime = grub_zfs_to_cpu64 (((znode_phys_t *) DN_BONUS (&dn.dn))->zp_mtime[0], dn.endian); - } - return 0; -} - -/* Helper for grub_zfs_dir. */ -static int -iterate_zap (const char *name, grub_uint64_t val, struct grub_zfs_dir_ctx *ctx) -{ - grub_err_t err; - struct grub_dirhook_info info; - - dnode_end_t dn; - grub_memset (&info, 0, sizeof (info)); - - err = dnode_get (&(ctx->data->subvol.mdn), val, 0, &dn, ctx->data); - if (err) - { - grub_print_error (); - return 0; - } - - if (dn.dn.dn_bonustype == DMU_OT_SA) - { - void *sahdrp; - int hdrsize; - - if (dn.dn.dn_bonuslen != 0) - { - sahdrp = (sa_hdr_phys_t *) DN_BONUS (&ctx->data->dnode.dn); - } - else if (dn.dn.dn_flags & DNODE_FLAG_SPILL_BLKPTR) - { - blkptr_t *bp = &dn.dn.dn_spill; - - err = zio_read (bp, dn.endian, &sahdrp, NULL, ctx->data); - if (err) - { - grub_print_error (); - return 0; - } - } - else - { - grub_error (GRUB_ERR_BAD_FS, "filesystem is corrupt"); - grub_print_error (); - return 0; - } - - hdrsize = SA_HDR_SIZE (((sa_hdr_phys_t *) sahdrp)); - info.mtimeset = 1; - info.mtime = grub_zfs_to_cpu64 (grub_get_unaligned64 ((char *) sahdrp + hdrsize + SA_MTIME_OFFSET), dn.endian); - info.case_insensitive = ctx->data->subvol.case_insensitive; - } - - if (dn.dn.dn_bonustype == DMU_OT_ZNODE) - { - info.mtimeset = 1; - info.mtime = grub_zfs_to_cpu64 (((znode_phys_t *) DN_BONUS (&dn.dn))->zp_mtime[0], - dn.endian); - } - info.dir = (dn.dn.dn_type == DMU_OT_DIRECTORY_CONTENTS); - grub_dprintf ("zfs", "type=%d, name=%s\n", - (int)dn.dn.dn_type, (char *)name); - return ctx->hook (name, &info, ctx->hook_data); -} - -/* Helper for grub_zfs_dir. */ -static int -iterate_zap_fs (const char *name, grub_uint64_t val, - struct grub_zfs_dir_ctx *ctx) -{ - grub_err_t err; - struct grub_dirhook_info info; - - dnode_end_t mdn; - err = dnode_get (&(ctx->data->mos), val, 0, &mdn, ctx->data); - if (err) - { - grub_errno = 0; - return 0; - } - if (mdn.dn.dn_type != DMU_OT_DSL_DIR) - return 0; - - err = fill_fs_info (&info, mdn, ctx->data); - if (err) - { - grub_errno = 0; - return 0; - } - return ctx->hook (name, &info, ctx->hook_data); -} - -/* Helper for grub_zfs_dir. */ -static int -iterate_zap_snap (const char *name, grub_uint64_t val, - struct grub_zfs_dir_ctx *ctx) -{ - grub_err_t err; - struct grub_dirhook_info info; - char *name2; - int ret; - - dnode_end_t mdn; - - err = dnode_get (&(ctx->data->mos), val, 0, &mdn, ctx->data); - if (err) - { - grub_errno = 0; - return 0; - } - - if (mdn.dn.dn_type != DMU_OT_DSL_DATASET) - return 0; - - err = fill_fs_info (&info, mdn, ctx->data); - if (err) - { - grub_errno = 0; - return 0; - } - - name2 = grub_malloc (grub_strlen (name) + 2); - name2[0] = '@'; - grub_memcpy (name2 + 1, name, grub_strlen (name) + 1); - ret = ctx->hook (name2, &info, ctx->hook_data); - grub_free (name2); - return ret; -} - -static grub_err_t -grub_zfs_dir (grub_device_t device, const char *path, - grub_fs_dir_hook_t hook, void *hook_data) -{ - struct grub_zfs_dir_ctx ctx = { - .hook = hook, - .hook_data = hook_data - }; - struct grub_zfs_data *data; - grub_err_t err; - int isfs; - - data = zfs_mount (device); - if (! data) - return grub_errno; - err = dnode_get_fullpath (path, &(data->subvol), &(data->dnode), &isfs, data); - if (err) - { - zfs_unmount (data); - return err; - } - ctx.data = data; - - if (isfs) - { - grub_uint64_t childobj, headobj; - grub_uint64_t snapobj; - dnode_end_t dn; - struct grub_dirhook_info info; - - err = fill_fs_info (&info, data->dnode, data); - if (err) - { - zfs_unmount (data); - return err; - } - if (hook ("@", &info, hook_data)) - { - zfs_unmount (data); - return GRUB_ERR_NONE; - } - - childobj = grub_zfs_to_cpu64 (((dsl_dir_phys_t *) DN_BONUS (&data->dnode.dn))->dd_child_dir_zapobj, data->dnode.endian); - headobj = grub_zfs_to_cpu64 (((dsl_dir_phys_t *) DN_BONUS (&data->dnode.dn))->dd_head_dataset_obj, data->dnode.endian); - err = dnode_get (&(data->mos), childobj, - DMU_OT_DSL_DIR_CHILD_MAP, &dn, data); - if (err) - { - zfs_unmount (data); - return err; - } - - zap_iterate_u64 (&dn, iterate_zap_fs, data, &ctx); - - err = dnode_get (&(data->mos), headobj, DMU_OT_DSL_DATASET, &dn, data); - if (err) - { - zfs_unmount (data); - return err; - } - - snapobj = grub_zfs_to_cpu64 (((dsl_dataset_phys_t *) DN_BONUS (&dn.dn))->ds_snapnames_zapobj, dn.endian); - - err = dnode_get (&(data->mos), snapobj, - DMU_OT_DSL_DS_SNAP_MAP, &dn, data); - if (err) - { - zfs_unmount (data); - return err; - } - - zap_iterate_u64 (&dn, iterate_zap_snap, data, &ctx); - } - else - { - if (data->dnode.dn.dn_type != DMU_OT_DIRECTORY_CONTENTS) - { - zfs_unmount (data); - return grub_error (GRUB_ERR_BAD_FILE_TYPE, N_("not a directory")); - } - zap_iterate_u64 (&(data->dnode), iterate_zap, data, &ctx); - } - zfs_unmount (data); - return grub_errno; -} - -static int -check_feature (const char *name, grub_uint64_t val, - struct grub_zfs_dir_ctx *ctx __attribute__((unused))) -{ - int i; - if (val == 0) - return 0; - if (name[0] == 0) - return 0; - for (i = 0; spa_feature_names[i] != NULL; i++) - if (grub_strcmp (name, spa_feature_names[i]) == 0) - return 0; - return 1; -} - -/* - * Checks whether the MOS features that are active are supported by this - * (GRUB's) implementation of ZFS. - * - * Return: - * 0: Success. - * errnum: Failure. - */ - -static grub_err_t -check_mos_features(dnode_phys_t *mosmdn_phys,grub_zfs_endian_t endian,struct grub_zfs_data* data ) -{ - grub_uint64_t objnum; - grub_err_t errnum = 0; - dnode_end_t dn,mosmdn; - mzap_phys_t* mzp; - grub_zfs_endian_t endianzap; - int size; - grub_memmove(&(mosmdn.dn),mosmdn_phys,sizeof(dnode_phys_t)); - mosmdn.endian=endian; - errnum = dnode_get(&mosmdn, DMU_POOL_DIRECTORY_OBJECT, - DMU_OT_OBJECT_DIRECTORY, &dn,data); - if (errnum != 0) - return errnum; - - /* - * Find the object number for 'features_for_read' and retrieve its - * corresponding dnode. Note that we don't check features_for_write - * because GRUB is not opening the pool for write. - */ - errnum = zap_lookup(&dn, DMU_POOL_FEATURES_FOR_READ, &objnum, data,0); - if (errnum != 0) - return errnum; - - errnum = dnode_get(&mosmdn, objnum, DMU_OTN_ZAP_METADATA, &dn, data); - if (errnum != 0) - return errnum; - - errnum = dmu_read(&dn, 0, (void**)&mzp, &endianzap,data); - if (errnum != 0) - return errnum; - - size = grub_zfs_to_cpu16 (dn.dn.dn_datablkszsec, dn.endian) << SPA_MINBLOCKSHIFT; - return mzap_iterate (mzp,endianzap, size, check_feature,NULL); -} - - -#ifdef GRUB_UTIL -static grub_err_t -grub_zfs_embed (grub_device_t device __attribute__ ((unused)), - unsigned int *nsectors, - unsigned int max_nsectors, - grub_embed_type_t embed_type, - grub_disk_addr_t **sectors) -{ - unsigned i; - - if (embed_type != GRUB_EMBED_PCBIOS) - return grub_error (GRUB_ERR_NOT_IMPLEMENTED_YET, - "ZFS currently supports only PC-BIOS embedding"); - - if ((VDEV_BOOT_SIZE >> GRUB_DISK_SECTOR_BITS) < *nsectors) - return grub_error (GRUB_ERR_OUT_OF_RANGE, - N_("your core.img is unusually large. " - "It won't fit in the embedding area")); - - *nsectors = (VDEV_BOOT_SIZE >> GRUB_DISK_SECTOR_BITS); - if (*nsectors > max_nsectors) - *nsectors = max_nsectors; - *sectors = grub_malloc (*nsectors * sizeof (**sectors)); - if (!*sectors) - return grub_errno; - for (i = 0; i < *nsectors; i++) - (*sectors)[i] = i + (VDEV_BOOT_OFFSET >> GRUB_DISK_SECTOR_BITS); - - return GRUB_ERR_NONE; -} -#endif - -static struct grub_fs grub_zfs_fs = { - .name = "zfs", - .fs_dir = grub_zfs_dir, - .fs_open = grub_zfs_open, - .fs_read = grub_zfs_read, - .fs_close = grub_zfs_close, - .fs_label = zfs_label, - .fs_uuid = zfs_uuid, - .fs_mtime = zfs_mtime, -#ifdef GRUB_UTIL - .fs_embed = grub_zfs_embed, - .reserved_first_sector = 1, - .blocklist_install = 0, -#endif - .next = 0 -}; - -GRUB_MOD_INIT (zfs) -{ - COMPILE_TIME_ASSERT (sizeof (zap_leaf_chunk_t) == ZAP_LEAF_CHUNKSIZE); - grub_fs_register (&grub_zfs_fs); -#ifndef GRUB_UTIL - my_mod = mod; -#endif -} - -GRUB_MOD_FINI (zfs) -{ - grub_fs_unregister (&grub_zfs_fs); -} diff --git a/thirdparty/grub-2.04/grub-core/fs/zfs/zfs_fletcher.c b/thirdparty/grub-2.04/grub-core/fs/zfs/zfs_fletcher.c deleted file mode 100644 index 7d27b053d..000000000 --- a/thirdparty/grub-2.04/grub-core/fs/zfs/zfs_fletcher.c +++ /dev/null @@ -1,84 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 1999,2000,2001,2002,2003,2004,2009 Free Software Foundation, Inc. - * Copyright 2007 Sun Microsystems, Inc. - * - * GRUB is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -void -fletcher_2(const void *buf, grub_uint64_t size, grub_zfs_endian_t endian, - zio_cksum_t *zcp) -{ - const grub_uint64_t *ip = buf; - const grub_uint64_t *ipend = ip + (size / sizeof (grub_uint64_t)); - grub_uint64_t a0, b0, a1, b1; - - for (a0 = b0 = a1 = b1 = 0; ip < ipend; ip += 2) - { - a0 += grub_zfs_to_cpu64 (ip[0], endian); - a1 += grub_zfs_to_cpu64 (ip[1], endian); - b0 += a0; - b1 += a1; - } - - zcp->zc_word[0] = grub_cpu_to_zfs64 (a0, endian); - zcp->zc_word[1] = grub_cpu_to_zfs64 (a1, endian); - zcp->zc_word[2] = grub_cpu_to_zfs64 (b0, endian); - zcp->zc_word[3] = grub_cpu_to_zfs64 (b1, endian); -} - -void -fletcher_4 (const void *buf, grub_uint64_t size, grub_zfs_endian_t endian, - zio_cksum_t *zcp) -{ - const grub_uint32_t *ip = buf; - const grub_uint32_t *ipend = ip + (size / sizeof (grub_uint32_t)); - grub_uint64_t a, b, c, d; - - for (a = b = c = d = 0; ip < ipend; ip++) - { - a += grub_zfs_to_cpu32 (ip[0], endian);; - b += a; - c += b; - d += c; - } - - zcp->zc_word[0] = grub_cpu_to_zfs64 (a, endian); - zcp->zc_word[1] = grub_cpu_to_zfs64 (b, endian); - zcp->zc_word[2] = grub_cpu_to_zfs64 (c, endian); - zcp->zc_word[3] = grub_cpu_to_zfs64 (d, endian); -} - diff --git a/thirdparty/grub-2.04/grub-core/fs/zfs/zfs_lz4.c b/thirdparty/grub-2.04/grub-core/fs/zfs/zfs_lz4.c deleted file mode 100644 index 5453822d0..000000000 --- a/thirdparty/grub-2.04/grub-core/fs/zfs/zfs_lz4.c +++ /dev/null @@ -1,285 +0,0 @@ -/* - * LZ4 - Fast LZ compression algorithm - * Header File - * Copyright (C) 2011-2013, Yann Collet. - * BSD 2-Clause License (http://www.opensource.org/licenses/bsd-license.php) - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * * Redistributions in binary form must reproduce the above - * copyright notice, this list of conditions and the following disclaimer - * in the documentation and/or other materials provided with the - * distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT - * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR - * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT - * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT - * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, - * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY - * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE - * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - * - * You can contact the author at : - * - LZ4 homepage : http://fastcompression.blogspot.com/p/lz4.html - * - LZ4 source repository : http://code.google.com/p/lz4/ - */ - -#include -#include -#include -#include - -static int LZ4_uncompress_unknownOutputSize(const char *source, char *dest, - int isize, int maxOutputSize); - -/* - * CPU Feature Detection - */ - -/* 32 or 64 bits ? */ -#if (GRUB_CPU_SIZEOF_VOID_P == 8) -#define LZ4_ARCH64 1 -#else -#define LZ4_ARCH64 0 -#endif - -/* - * Compiler Options - */ - - -#define GCC_VERSION (__GNUC__ * 100 + __GNUC_MINOR__) - -#if (GCC_VERSION >= 302) || (defined (__INTEL_COMPILER) && __INTEL_COMPILER >= 800) || defined(__clang__) -#define expect(expr, value) (__builtin_expect((expr), (value))) -#else -#define expect(expr, value) (expr) -#endif - -#define likely(expr) expect((expr) != 0, 1) -#define unlikely(expr) expect((expr) != 0, 0) - -/* Basic types */ -#define BYTE grub_uint8_t -#define U16 grub_uint16_t -#define U32 grub_uint32_t -#define S32 grub_int32_t -#define U64 grub_uint64_t - -typedef struct _U16_S { - U16 v; -} GRUB_PACKED U16_S; -typedef struct _U32_S { - U32 v; -} GRUB_PACKED U32_S; -typedef struct _U64_S { - U64 v; -} GRUB_PACKED U64_S; - -#define A64(x) (((U64_S *)(x))->v) -#define A32(x) (((U32_S *)(x))->v) -#define A16(x) (((U16_S *)(x))->v) - -/* - * Constants - */ -#define MINMATCH 4 - -#define COPYLENGTH 8 -#define LASTLITERALS 5 - -#define ML_BITS 4 -#define ML_MASK ((1U< s_len) - return grub_error(GRUB_ERR_BAD_FS,"lz4 decompression failed."); - - /* - * Returns 0 on success (decompression function returned non-negative) - * and appropriate error on failure (decompression function returned negative). - */ - return (LZ4_uncompress_unknownOutputSize((char*)s_start + 4, d_start, bufsiz, - d_len) < 0)?grub_error(GRUB_ERR_BAD_FS,"lz4 decompression failed."):0; -} - -static int -LZ4_uncompress_unknownOutputSize(const char *source, - char *dest, int isize, int maxOutputSize) -{ - /* Local Variables */ - const BYTE * ip = (const BYTE *) source; - const BYTE *const iend = ip + isize; - const BYTE * ref; - - BYTE * op = (BYTE *) dest; - BYTE *const oend = op + maxOutputSize; - BYTE *cpy; - - grub_size_t dec[] = { 0, 3, 2, 3, 0, 0, 0, 0 }; - - /* Main Loop */ - while (ip < iend) { - BYTE token; - int length; - - /* get runlength */ - token = *ip++; - if ((length = (token >> ML_BITS)) == RUN_MASK) { - int s = 255; - while ((ip < iend) && (s == 255)) { - s = *ip++; - length += s; - } - } - /* copy literals */ - if ((grub_addr_t) length > ~(grub_addr_t)op) - goto _output_error; - cpy = op + length; - if ((cpy > oend - COPYLENGTH) || - (ip + length > iend - COPYLENGTH)) { - if (cpy > oend) - /* - * Error: request to write beyond destination - * buffer. - */ - goto _output_error; - if (ip + length > iend) - /* - * Error : request to read beyond source - * buffer. - */ - goto _output_error; - grub_memcpy(op, ip, length); - op += length; - ip += length; - if (ip < iend) - /* Error : LZ4 format violation */ - goto _output_error; - /* Necessarily EOF, due to parsing restrictions. */ - break; - } - LZ4_WILDCOPY(ip, op, cpy); - ip -= (op - cpy); - op = cpy; - - /* get offset */ - LZ4_READ_LITTLEENDIAN_16(ref, cpy, ip); - ip += 2; - if (ref < (BYTE * const) dest) - /* - * Error: offset creates reference outside of - * destination buffer. - */ - goto _output_error; - - /* get matchlength */ - if ((length = (token & ML_MASK)) == ML_MASK) { - while (ip < iend) { - int s = *ip++; - length += s; - if (s == 255) - continue; - break; - } - } - /* copy repeated sequence */ - if unlikely(op - ref < STEPSIZE) { -#if LZ4_ARCH64 - grub_size_t dec2table[] = { 0, 0, 0, -1, 0, 1, 2, 3 }; - grub_size_t dec2 = dec2table[op - ref]; -#else - const int dec2 = 0; -#endif - *op++ = *ref++; - *op++ = *ref++; - *op++ = *ref++; - *op++ = *ref++; - ref -= dec[op - ref]; - A32(op) = A32(ref); - op += STEPSIZE - 4; - ref -= dec2; - } else { - LZ4_COPYSTEP(ref, op); - } - cpy = op + length - (STEPSIZE - 4); - if (cpy > oend - COPYLENGTH) { - if (cpy > oend) - /* - * Error: request to write outside of - * destination buffer. - */ - goto _output_error; - LZ4_SECURECOPY(ref, op, (oend - COPYLENGTH)); - while (op < cpy) - *op++ = *ref++; - op = cpy; - if (op == oend) - /* - * Check EOF (should never happen, since last - * 5 bytes are supposed to be literals). - */ - break; - continue; - } - LZ4_SECURECOPY(ref, op, cpy); - op = cpy; /* correction */ - } - - /* end of decoding */ - return (int)(((char *)op) - dest); - - /* write overflow error detected */ - _output_error: - return (int)(-(((char *)ip) - source)); -} diff --git a/thirdparty/grub-2.04/grub-core/fs/zfs/zfs_lzjb.c b/thirdparty/grub-2.04/grub-core/fs/zfs/zfs_lzjb.c deleted file mode 100644 index 62b5ea6a0..000000000 --- a/thirdparty/grub-2.04/grub-core/fs/zfs/zfs_lzjb.c +++ /dev/null @@ -1,93 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 1999,2000,2001,2002,2003,2004,2009 Free Software Foundation, Inc. - * Copyright 2007 Sun Microsystems, Inc. - * - * GRUB is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#define MATCH_BITS 6 -#define MATCH_MIN 3 -#define OFFSET_MASK ((1 << (16 - MATCH_BITS)) - 1) - -/* - * Decompression Entry - lzjb - */ -#ifndef NBBY -#define NBBY 8 -#endif - -grub_err_t -lzjb_decompress (void *s_start, void *d_start, grub_size_t s_len, - grub_size_t d_len); - -grub_err_t -lzjb_decompress (void *s_start, void *d_start, grub_size_t s_len, - grub_size_t d_len) -{ - grub_uint8_t *src = s_start; - grub_uint8_t *dst = d_start; - grub_uint8_t *d_end = (grub_uint8_t *) d_start + d_len; - grub_uint8_t *s_end = (grub_uint8_t *) s_start + s_len; - grub_uint8_t *cpy, copymap = 0; - int copymask = 1 << (NBBY - 1); - - while (dst < d_end && src < s_end) - { - if ((copymask <<= 1) == (1 << NBBY)) - { - copymask = 1; - copymap = *src++; - } - if (src >= s_end) - return grub_error (GRUB_ERR_BAD_FS, "lzjb decompression failed"); - if (copymap & copymask) - { - int mlen = (src[0] >> (NBBY - MATCH_BITS)) + MATCH_MIN; - int offset = ((src[0] << NBBY) | src[1]) & OFFSET_MASK; - src += 2; - cpy = dst - offset; - if (src > s_end || cpy < (grub_uint8_t *) d_start) - return grub_error (GRUB_ERR_BAD_FS, "lzjb decompression failed"); - while (--mlen >= 0 && dst < d_end) - *dst++ = *cpy++; - } - else - *dst++ = *src++; - } - if (dst < d_end) - return grub_error (GRUB_ERR_BAD_FS, "lzjb decompression failed"); - return GRUB_ERR_NONE; -} diff --git a/thirdparty/grub-2.04/grub-core/fs/zfs/zfs_sha256.c b/thirdparty/grub-2.04/grub-core/fs/zfs/zfs_sha256.c deleted file mode 100644 index a181f076c..000000000 --- a/thirdparty/grub-2.04/grub-core/fs/zfs/zfs_sha256.c +++ /dev/null @@ -1,143 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 1999,2000,2001,2002,2003,2004,2009 Free Software Foundation, Inc. - * Copyright 2007 Sun Microsystems, Inc. - * - * GRUB is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -/* - * SHA-256 checksum, as specified in FIPS 180-2, available at: - * http://csrc.nist.gov/cryptval - * - * This is a very compact implementation of SHA-256. - * It is designed to be simple and portable, not to be fast. - */ - -/* - * The literal definitions according to FIPS180-2 would be: - * - * Ch(x, y, z) (((x) & (y)) ^ ((~(x)) & (z))) - * Maj(x, y, z) (((x) & (y)) | ((x) & (z)) | ((y) & (z))) - * - * We use logical equivalents which require one less op. - */ -#define Ch(x, y, z) ((z) ^ ((x) & ((y) ^ (z)))) -#define Maj(x, y, z) (((x) & (y)) ^ ((z) & ((x) ^ (y)))) -#define Rot32(x, s) (((x) >> s) | ((x) << (32 - s))) -#define SIGMA0(x) (Rot32(x, 2) ^ Rot32(x, 13) ^ Rot32(x, 22)) -#define SIGMA1(x) (Rot32(x, 6) ^ Rot32(x, 11) ^ Rot32(x, 25)) -#define sigma0(x) (Rot32(x, 7) ^ Rot32(x, 18) ^ ((x) >> 3)) -#define sigma1(x) (Rot32(x, 17) ^ Rot32(x, 19) ^ ((x) >> 10)) - -static const grub_uint32_t SHA256_K[64] = { - 0x428a2f98, 0x71374491, 0xb5c0fbcf, 0xe9b5dba5, - 0x3956c25b, 0x59f111f1, 0x923f82a4, 0xab1c5ed5, - 0xd807aa98, 0x12835b01, 0x243185be, 0x550c7dc3, - 0x72be5d74, 0x80deb1fe, 0x9bdc06a7, 0xc19bf174, - 0xe49b69c1, 0xefbe4786, 0x0fc19dc6, 0x240ca1cc, - 0x2de92c6f, 0x4a7484aa, 0x5cb0a9dc, 0x76f988da, - 0x983e5152, 0xa831c66d, 0xb00327c8, 0xbf597fc7, - 0xc6e00bf3, 0xd5a79147, 0x06ca6351, 0x14292967, - 0x27b70a85, 0x2e1b2138, 0x4d2c6dfc, 0x53380d13, - 0x650a7354, 0x766a0abb, 0x81c2c92e, 0x92722c85, - 0xa2bfe8a1, 0xa81a664b, 0xc24b8b70, 0xc76c51a3, - 0xd192e819, 0xd6990624, 0xf40e3585, 0x106aa070, - 0x19a4c116, 0x1e376c08, 0x2748774c, 0x34b0bcb5, - 0x391c0cb3, 0x4ed8aa4a, 0x5b9cca4f, 0x682e6ff3, - 0x748f82ee, 0x78a5636f, 0x84c87814, 0x8cc70208, - 0x90befffa, 0xa4506ceb, 0xbef9a3f7, 0xc67178f2 -}; - -static void -SHA256Transform(grub_uint32_t *H, const grub_uint8_t *cp) -{ - grub_uint32_t a, b, c, d, e, f, g, h, t, T1, T2, W[64]; - - for (t = 0; t < 16; t++, cp += 4) - W[t] = (cp[0] << 24) | (cp[1] << 16) | (cp[2] << 8) | cp[3]; - - for (t = 16; t < 64; t++) - W[t] = sigma1(W[t - 2]) + W[t - 7] + - sigma0(W[t - 15]) + W[t - 16]; - - a = H[0]; b = H[1]; c = H[2]; d = H[3]; - e = H[4]; f = H[5]; g = H[6]; h = H[7]; - - for (t = 0; t < 64; t++) { - T1 = h + SIGMA1(e) + Ch(e, f, g) + SHA256_K[t] + W[t]; - T2 = SIGMA0(a) + Maj(a, b, c); - h = g; g = f; f = e; e = d + T1; - d = c; c = b; b = a; a = T1 + T2; - } - - H[0] += a; H[1] += b; H[2] += c; H[3] += d; - H[4] += e; H[5] += f; H[6] += g; H[7] += h; -} - -void -zio_checksum_SHA256(const void *buf, grub_uint64_t size, - grub_zfs_endian_t endian, zio_cksum_t *zcp) -{ - grub_uint32_t H[8] = { 0x6a09e667, 0xbb67ae85, 0x3c6ef372, 0xa54ff53a, - 0x510e527f, 0x9b05688c, 0x1f83d9ab, 0x5be0cd19 }; - grub_uint8_t pad[128]; - unsigned padsize = size & 63; - unsigned i; - - for (i = 0; i < size - padsize; i += 64) - SHA256Transform(H, (grub_uint8_t *)buf + i); - - for (i = 0; i < padsize; i++) - pad[i] = ((grub_uint8_t *)buf)[i]; - - for (pad[padsize++] = 0x80; (padsize & 63) != 56; padsize++) - pad[padsize] = 0; - - for (i = 0; i < 8; i++) - pad[padsize++] = (size << 3) >> (56 - 8 * i); - - for (i = 0; i < padsize && i <= 64; i += 64) - SHA256Transform(H, pad + i); - - zcp->zc_word[0] = grub_cpu_to_zfs64 ((grub_uint64_t)H[0] << 32 | H[1], - endian); - zcp->zc_word[1] = grub_cpu_to_zfs64 ((grub_uint64_t)H[2] << 32 | H[3], - endian); - zcp->zc_word[2] = grub_cpu_to_zfs64 ((grub_uint64_t)H[4] << 32 | H[5], - endian); - zcp->zc_word[3] = grub_cpu_to_zfs64 ((grub_uint64_t)H[6] << 32 | H[7], - endian); -} diff --git a/thirdparty/grub-2.04/grub-core/fs/zfs/zfscrypt.c b/thirdparty/grub-2.04/grub-core/fs/zfs/zfscrypt.c deleted file mode 100644 index 1402e0bc2..000000000 --- a/thirdparty/grub-2.04/grub-core/fs/zfs/zfscrypt.c +++ /dev/null @@ -1,486 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2011 Free Software Foundation, Inc. - * - * GRUB is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -/* - Mostly based on following article: - https://blogs.oracle.com/darren/entry/zfs_encryption_what_is_on - */ - -enum grub_zfs_algo - { - GRUB_ZFS_ALGO_CCM, - GRUB_ZFS_ALGO_GCM, - }; - -struct grub_zfs_key -{ - grub_uint64_t algo; - grub_uint8_t enc_nonce[13]; - grub_uint8_t unused[3]; - grub_uint8_t enc_key[48]; - grub_uint8_t unknown_purpose_nonce[13]; - grub_uint8_t unused2[3]; - grub_uint8_t unknown_purpose_key[48]; -}; - -struct grub_zfs_wrap_key -{ - struct grub_zfs_wrap_key *next; - grub_size_t keylen; - int is_passphrase; - grub_uint64_t key[0]; -}; - -static struct grub_zfs_wrap_key *zfs_wrap_keys; - -grub_err_t -grub_zfs_add_key (grub_uint8_t *key_in, - grub_size_t keylen, - int passphrase) -{ - struct grub_zfs_wrap_key *key; - if (!passphrase && keylen > 32) - keylen = 32; - key = grub_malloc (sizeof (*key) + keylen); - if (!key) - return grub_errno; - key->is_passphrase = passphrase; - key->keylen = keylen; - grub_memcpy (key->key, key_in, keylen); - key->next = zfs_wrap_keys; - zfs_wrap_keys = key; - return GRUB_ERR_NONE; -} - -static gcry_err_code_t -grub_ccm_decrypt (grub_crypto_cipher_handle_t cipher, - grub_uint8_t *out, const grub_uint8_t *in, - grub_size_t psize, - void *mac_out, const void *nonce, - unsigned l, unsigned m) -{ - grub_uint8_t iv[16]; - grub_uint8_t mul[16]; - grub_uint32_t mac[4]; - unsigned i, j; - gcry_err_code_t err; - - grub_memcpy (iv + 1, nonce, 15 - l); - - iv[0] = (l - 1) | (((m-2) / 2) << 3); - for (j = 0; j < l; j++) - iv[15 - j] = psize >> (8 * j); - err = grub_crypto_ecb_encrypt (cipher, mac, iv, 16); - if (err) - return err; - - iv[0] = l - 1; - - for (i = 0; i < (psize + 15) / 16; i++) - { - grub_size_t csize; - csize = 16; - if (csize > psize - 16 * i) - csize = psize - 16 * i; - for (j = 0; j < l; j++) - iv[15 - j] = (i + 1) >> (8 * j); - err = grub_crypto_ecb_encrypt (cipher, mul, iv, 16); - if (err) - return err; - grub_crypto_xor (out + 16 * i, in + 16 * i, mul, csize); - grub_crypto_xor (mac, mac, out + 16 * i, csize); - err = grub_crypto_ecb_encrypt (cipher, mac, mac, 16); - if (err) - return err; - } - for (j = 0; j < l; j++) - iv[15 - j] = 0; - err = grub_crypto_ecb_encrypt (cipher, mul, iv, 16); - if (err) - return err; - if (mac_out) - grub_crypto_xor (mac_out, mac, mul, m); - return GPG_ERR_NO_ERROR; -} - -static void -grub_gcm_mul_x (grub_uint8_t *a) -{ - int i; - int c = 0, d = 0; - for (i = 0; i < 16; i++) - { - c = a[i] & 0x1; - a[i] = (a[i] >> 1) | (d << 7); - d = c; - } - if (d) - a[0] ^= 0xe1; -} - -static void -grub_gcm_mul (grub_uint8_t *a, const grub_uint8_t *b) -{ - grub_uint8_t res[16], bs[16]; - int i; - grub_memcpy (bs, b, 16); - grub_memset (res, 0, 16); - for (i = 0; i < 128; i++) - { - if ((a[i / 8] << (i % 8)) & 0x80) - grub_crypto_xor (res, res, bs, 16); - grub_gcm_mul_x (bs); - } - - grub_memcpy (a, res, 16); -} - -static gcry_err_code_t -grub_gcm_decrypt (grub_crypto_cipher_handle_t cipher, - grub_uint8_t *out, const grub_uint8_t *in, - grub_size_t psize, - void *mac_out, const void *nonce, - unsigned nonce_len, unsigned m) -{ - grub_uint8_t iv[16]; - grub_uint8_t mul[16]; - grub_uint8_t mac[16], h[16], mac_xor[16]; - unsigned i, j; - gcry_err_code_t err; - - grub_memset (mac, 0, sizeof (mac)); - - err = grub_crypto_ecb_encrypt (cipher, h, mac, 16); - if (err) - return err; - - if (nonce_len == 12) - { - grub_memcpy (iv, nonce, 12); - iv[12] = 0; - iv[13] = 0; - iv[14] = 0; - iv[15] = 1; - } - else - { - grub_memset (iv, 0, sizeof (iv)); - grub_memcpy (iv, nonce, nonce_len); - grub_gcm_mul (iv, h); - iv[15] ^= nonce_len * 8; - grub_gcm_mul (iv, h); - } - - err = grub_crypto_ecb_encrypt (cipher, mac_xor, iv, 16); - if (err) - return err; - - for (i = 0; i < (psize + 15) / 16; i++) - { - grub_size_t csize; - csize = 16; - if (csize > psize - 16 * i) - csize = psize - 16 * i; - for (j = 0; j < 4; j++) - { - iv[15 - j]++; - if (iv[15 - j] != 0) - break; - } - grub_crypto_xor (mac, mac, in + 16 * i, csize); - grub_gcm_mul (mac, h); - err = grub_crypto_ecb_encrypt (cipher, mul, iv, 16); - if (err) - return err; - grub_crypto_xor (out + 16 * i, in + 16 * i, mul, csize); - } - for (j = 0; j < 8; j++) - mac[15 - j] ^= ((((grub_uint64_t) psize) * 8) >> (8 * j)); - grub_gcm_mul (mac, h); - - if (mac_out) - grub_crypto_xor (mac_out, mac, mac_xor, m); - - return GPG_ERR_NO_ERROR; -} - - -static gcry_err_code_t -algo_decrypt (grub_crypto_cipher_handle_t cipher, grub_uint64_t algo, - grub_uint8_t *out, const grub_uint8_t *in, - grub_size_t psize, - void *mac_out, const void *nonce, - unsigned l, unsigned m) -{ - switch (algo) - { - case 0: - return grub_ccm_decrypt (cipher, out, in, psize, - mac_out, nonce, l, m); - case 1: - return grub_gcm_decrypt (cipher, out, in, psize, - mac_out, nonce, - 15 - l, m); - default: - return GPG_ERR_CIPHER_ALGO; - } -} - -static grub_err_t -grub_zfs_decrypt_real (grub_crypto_cipher_handle_t cipher, - grub_uint64_t algo, - void *nonce, - char *buf, grub_size_t size, - const grub_uint32_t *expected_mac, - grub_zfs_endian_t endian) -{ - grub_uint32_t mac[4]; - unsigned i; - grub_uint32_t sw[4]; - gcry_err_code_t err; - - grub_memcpy (sw, nonce, 16); - if (endian != GRUB_ZFS_BIG_ENDIAN) - for (i = 0; i < 4; i++) - sw[i] = grub_swap_bytes32 (sw[i]); - - if (!cipher) - return grub_error (GRUB_ERR_ACCESS_DENIED, - N_("no decryption key available")); - err = algo_decrypt (cipher, algo, - (grub_uint8_t *) buf, - (grub_uint8_t *) buf, - size, mac, - sw + 1, 3, 12); - if (err) - return grub_crypto_gcry_error (err); - - for (i = 0; i < 3; i++) - if (grub_zfs_to_cpu32 (expected_mac[i], endian) - != grub_be_to_cpu32 (mac[i])) - return grub_error (GRUB_ERR_BAD_FS, N_("MAC verification failed")); - return GRUB_ERR_NONE; -} - -static grub_crypto_cipher_handle_t -grub_zfs_load_key_real (const struct grub_zfs_key *key, - grub_size_t keysize, - grub_uint64_t salt, - grub_uint64_t algo) -{ - unsigned keylen; - struct grub_zfs_wrap_key *wrap_key; - grub_crypto_cipher_handle_t ret = NULL; - - if (keysize != sizeof (*key)) - { - grub_dprintf ("zfs", "Unexpected key size %" PRIuGRUB_SIZE "\n", keysize); - return 0; - } - - if (grub_memcmp (key->enc_key + 32, "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0", 16) - == 0) - keylen = 16; - else if (grub_memcmp (key->enc_key + 40, "\0\0\0\0\0\0\0\0", 8) == 0) - keylen = 24; - else - keylen = 32; - - for (wrap_key = zfs_wrap_keys; wrap_key; wrap_key = wrap_key->next) - { - grub_crypto_cipher_handle_t cipher; - grub_uint8_t decrypted[32], mac[32], wrap_key_real[32]; - gcry_err_code_t err; - cipher = grub_crypto_cipher_open (GRUB_CIPHER_AES); - if (!cipher) - { - grub_errno = GRUB_ERR_NONE; - return 0; - } - grub_memset (wrap_key_real, 0, sizeof (wrap_key_real)); - err = 0; - if (!wrap_key->is_passphrase) - grub_memcpy(wrap_key_real, wrap_key->key, - wrap_key->keylen < keylen ? wrap_key->keylen : keylen); - else - err = grub_crypto_pbkdf2 (GRUB_MD_SHA1, - (const grub_uint8_t *) wrap_key->key, - wrap_key->keylen, - (const grub_uint8_t *) &salt, sizeof (salt), - 1000, wrap_key_real, keylen); - if (err) - { - grub_errno = GRUB_ERR_NONE; - grub_crypto_cipher_close (cipher); - continue; - } - - err = grub_crypto_cipher_set_key (cipher, wrap_key_real, - keylen); - if (err) - { - grub_errno = GRUB_ERR_NONE; - grub_crypto_cipher_close (cipher); - continue; - } - - err = algo_decrypt (cipher, algo, decrypted, key->unknown_purpose_key, 32, - mac, key->unknown_purpose_nonce, 2, 16); - if (err || (grub_crypto_memcmp (mac, key->unknown_purpose_key + 32, 16) - != 0)) - { - grub_dprintf ("zfs", "key loading failed\n"); - grub_errno = GRUB_ERR_NONE; - grub_crypto_cipher_close (cipher); - continue; - } - - err = algo_decrypt (cipher, algo, decrypted, key->enc_key, keylen, mac, - key->enc_nonce, 2, 16); - if (err || grub_crypto_memcmp (mac, key->enc_key + keylen, 16) != 0) - { - grub_dprintf ("zfs", "key loading failed\n"); - grub_errno = GRUB_ERR_NONE; - grub_crypto_cipher_close (cipher); - continue; - } - ret = grub_crypto_cipher_open (GRUB_CIPHER_AES); - if (!ret) - { - grub_errno = GRUB_ERR_NONE; - grub_crypto_cipher_close (cipher); - continue; - } - err = grub_crypto_cipher_set_key (ret, decrypted, keylen); - if (err) - { - grub_errno = GRUB_ERR_NONE; - grub_crypto_cipher_close (ret); - grub_crypto_cipher_close (cipher); - continue; - } - grub_crypto_cipher_close (cipher); - return ret; - } - return NULL; -} - -static const struct grub_arg_option options[] = - { - {"raw", 'r', 0, N_("Assume input is raw."), 0, 0}, - {"hex", 'h', 0, N_("Assume input is hex."), 0, 0}, - {"passphrase", 'p', 0, N_("Assume input is passphrase."), 0, 0}, - {0, 0, 0, 0, 0, 0} - }; - -static grub_err_t -grub_cmd_zfs_key (grub_extcmd_context_t ctxt, int argc, char **args) -{ - grub_uint8_t buf[1024]; - grub_ssize_t real_size; - - if (argc > 0) - { - grub_file_t file; - file = grub_file_open (args[0], GRUB_FILE_TYPE_ZFS_ENCRYPTION_KEY); - if (!file) - return grub_errno; - real_size = grub_file_read (file, buf, 1024); - if (real_size < 0) - return grub_errno; - } - else - { - grub_xputs (_("Enter ZFS password: ")); - if (!grub_password_get ((char *) buf, 1023)) - return grub_errno; - real_size = grub_strlen ((char *) buf); - } - - if (ctxt->state[1].set) - { - int i; - grub_err_t err; - for (i = 0; i < real_size / 2; i++) - { - char c1 = grub_tolower (buf[2 * i]) - '0'; - char c2 = grub_tolower (buf[2 * i + 1]) - '0'; - if (c1 > 9) - c1 += '0' - 'a' + 10; - if (c2 > 9) - c2 += '0' - 'a' + 10; - buf[i] = (c1 << 4) | c2; - } - err = grub_zfs_add_key (buf, real_size / 2, 0); - if (err) - return err; - return GRUB_ERR_NONE; - } - - return grub_zfs_add_key (buf, real_size, - ctxt->state[2].set - || (argc == 0 && !ctxt->state[0].set - && !ctxt->state[1].set)); -} - -static grub_extcmd_t cmd_key; - -GRUB_MOD_INIT(zfscrypt) -{ - grub_zfs_decrypt = grub_zfs_decrypt_real; - grub_zfs_load_key = grub_zfs_load_key_real; - cmd_key = grub_register_extcmd ("zfskey", grub_cmd_zfs_key, 0, - N_("[-h|-p|-r] [FILE]"), - N_("Import ZFS wrapping key stored in FILE."), - options); -} - -GRUB_MOD_FINI(zfscrypt) -{ - grub_zfs_decrypt = 0; - grub_zfs_load_key = 0; - grub_unregister_extcmd (cmd_key); -} diff --git a/thirdparty/grub-2.04/grub-core/fs/zfs/zfsinfo.c b/thirdparty/grub-2.04/grub-core/fs/zfs/zfsinfo.c deleted file mode 100644 index c8a28acf5..000000000 --- a/thirdparty/grub-2.04/grub-core/fs/zfs/zfsinfo.c +++ /dev/null @@ -1,441 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 1999,2000,2001,2002,2003,2004,2009 Free Software Foundation, Inc. - * Copyright 2008 Sun Microsystems, Inc. - * - * GRUB is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -static inline void -print_tabs (int n) -{ - int i; - - for (i = 0; i < n; i++) - grub_printf (" "); -} - -static grub_err_t -print_state (char *nvlist, int tab) -{ - grub_uint64_t ival; - int isok = 1; - - print_tabs (tab); - - if (grub_zfs_nvlist_lookup_uint64 (nvlist, ZPOOL_CONFIG_REMOVED, &ival)) - { - grub_puts_ (N_("Virtual device is removed")); - isok = 0; - } - - if (grub_zfs_nvlist_lookup_uint64 (nvlist, ZPOOL_CONFIG_FAULTED, &ival)) - { - grub_puts_ (N_("Virtual device is faulted")); - isok = 0; - } - - if (grub_zfs_nvlist_lookup_uint64 (nvlist, ZPOOL_CONFIG_OFFLINE, &ival)) - { - grub_puts_ (N_("Virtual device is offline")); - isok = 0; - } - - if (grub_zfs_nvlist_lookup_uint64 (nvlist, ZPOOL_CONFIG_FAULTED, &ival)) - /* TRANSLATORS: degraded doesn't mean broken but that some of - component are missing but virtual device as whole is still usable. */ - grub_puts_ (N_("Virtual device is degraded")); - - if (isok) - grub_puts_ (N_("Virtual device is online")); - grub_xputs ("\n"); - - return GRUB_ERR_NONE; -} - -static grub_err_t -print_vdev_info (char *nvlist, int tab) -{ - char *type = 0; - - type = grub_zfs_nvlist_lookup_string (nvlist, ZPOOL_CONFIG_TYPE); - - if (!type) - { - print_tabs (tab); - grub_puts_ (N_("Incorrect virtual device: no type available")); - return grub_errno; - } - - if (grub_strcmp (type, VDEV_TYPE_DISK) == 0) - { - char *bootpath = 0; - char *path = 0; - char *devid = 0; - - print_tabs (tab); - /* TRANSLATORS: The virtual devices form a tree (in graph-theoretical - sense). The nodes like mirror or raidz have children: member devices. - The "real" devices which actually store data are called "leafs" - (again borrowed from graph theory) and can be either disks - (or partitions) or files. */ - grub_puts_ (N_("Leaf virtual device (file or disk)")); - - print_state (nvlist, tab); - - bootpath = - grub_zfs_nvlist_lookup_string (nvlist, ZPOOL_CONFIG_PHYS_PATH); - print_tabs (tab); - if (!bootpath) - grub_puts_ (N_("Bootpath: unavailable\n")); - else - grub_printf_ (N_("Bootpath: %s\n"), bootpath); - - path = grub_zfs_nvlist_lookup_string (nvlist, "path"); - print_tabs (tab); - if (!path) - grub_puts_ (N_("Path: unavailable")); - else - grub_printf_ (N_("Path: %s\n"), path); - - devid = grub_zfs_nvlist_lookup_string (nvlist, ZPOOL_CONFIG_DEVID); - print_tabs (tab); - if (!devid) - grub_puts_ (N_("Devid: unavailable")); - else - grub_printf_ (N_("Devid: %s\n"), devid); - grub_free (bootpath); - grub_free (devid); - grub_free (path); - grub_free (type); - return GRUB_ERR_NONE; - } - char is_mirror=(grub_strcmp(type,VDEV_TYPE_MIRROR) == 0); - char is_raidz=(grub_strcmp(type,VDEV_TYPE_RAIDZ) == 0); - grub_free (type); - - if (is_mirror || is_raidz) - { - int nelm, i; - - nelm = grub_zfs_nvlist_lookup_nvlist_array_get_nelm - (nvlist, ZPOOL_CONFIG_CHILDREN); - - if(is_mirror){ - grub_puts_ (N_("This VDEV is a mirror")); - } - else if(is_raidz){ - grub_uint64_t parity; - grub_zfs_nvlist_lookup_uint64(nvlist,"nparity",&parity); - grub_printf_ (N_("This VDEV is a RAIDZ%llu\n"),(unsigned long long)parity); - } - print_tabs (tab); - if (nelm <= 0) - { - grub_puts_ (N_("Incorrect VDEV")); - return GRUB_ERR_NONE; - } - grub_printf_ (N_("VDEV with %d children\n"), nelm); - print_state (nvlist, tab); - for (i = 0; i < nelm; i++) - { - char *child; - - child = grub_zfs_nvlist_lookup_nvlist_array - (nvlist, ZPOOL_CONFIG_CHILDREN, i); - - print_tabs (tab); - if (!child) - { - /* TRANSLATORS: it's the element carying the number %d, not - total element number. And the number itself is fine, - only the element isn't. - */ - grub_printf_ (N_("VDEV element number %d isn't correct\n"), i); - continue; - } - - /* TRANSLATORS: it's the element carying the number %d, not - total element number. This is used in enumeration - "Element number 1", "Element number 2", ... */ - grub_printf_ (N_("VDEV element number %d:\n"), i); - print_vdev_info (child, tab + 1); - - grub_free (child); - } - return GRUB_ERR_NONE; - } - - print_tabs (tab); - grub_printf_ (N_("Unknown virtual device type: %s\n"), type); - - return GRUB_ERR_NONE; -} - -static grub_err_t -get_bootpath (char *nvlist, char **bootpath, char **devid) -{ - char *type = 0; - - type = grub_zfs_nvlist_lookup_string (nvlist, ZPOOL_CONFIG_TYPE); - - if (!type) - return grub_errno; - - if (grub_strcmp (type, VDEV_TYPE_DISK) == 0) - { - *bootpath = grub_zfs_nvlist_lookup_string (nvlist, - ZPOOL_CONFIG_PHYS_PATH); - *devid = grub_zfs_nvlist_lookup_string (nvlist, ZPOOL_CONFIG_DEVID); - if (!*bootpath || !*devid) - { - grub_free (*bootpath); - grub_free (*devid); - *bootpath = 0; - *devid = 0; - } - return GRUB_ERR_NONE; - } - - if (grub_strcmp (type, VDEV_TYPE_MIRROR) == 0) - { - int nelm, i; - - nelm = grub_zfs_nvlist_lookup_nvlist_array_get_nelm - (nvlist, ZPOOL_CONFIG_CHILDREN); - - for (i = 0; i < nelm; i++) - { - char *child; - - child = grub_zfs_nvlist_lookup_nvlist_array (nvlist, - ZPOOL_CONFIG_CHILDREN, - i); - - get_bootpath (child, bootpath, devid); - - grub_free (child); - - if (*bootpath && *devid) - return GRUB_ERR_NONE; - } - } - - return GRUB_ERR_NONE; -} - -static const char *poolstates[] = { - /* TRANSLATORS: Here we speak about ZFS pools it's semi-marketing, - semi-technical term by Sun/Oracle and should be translated in sync with - other ZFS-related software and documentation. */ - [POOL_STATE_ACTIVE] = N_("Pool state: active"), - [POOL_STATE_EXPORTED] = N_("Pool state: exported"), - [POOL_STATE_DESTROYED] = N_("Pool state: destroyed"), - [POOL_STATE_SPARE] = N_("Pool state: reserved for hot spare"), - [POOL_STATE_L2CACHE] = N_("Pool state: level 2 ARC device"), - [POOL_STATE_UNINITIALIZED] = N_("Pool state: uninitialized"), - [POOL_STATE_UNAVAIL] = N_("Pool state: unavailable"), - [POOL_STATE_POTENTIALLY_ACTIVE] = N_("Pool state: potentially active") -}; - -static grub_err_t -grub_cmd_zfsinfo (grub_command_t cmd __attribute__ ((unused)), int argc, - char **args) -{ - grub_device_t dev; - char *devname; - grub_err_t err; - char *nvlist = 0; - char *nv = 0; - char *poolname; - grub_uint64_t guid; - grub_uint64_t pool_state; - int found; - - if (argc < 1) - return grub_error (GRUB_ERR_BAD_ARGUMENT, N_("one argument expected")); - - if (args[0][0] == '(' && args[0][grub_strlen (args[0]) - 1] == ')') - { - devname = grub_strdup (args[0] + 1); - if (devname) - devname[grub_strlen (devname) - 1] = 0; - } - else - devname = grub_strdup (args[0]); - if (!devname) - return grub_errno; - - dev = grub_device_open (devname); - grub_free (devname); - if (!dev) - return grub_errno; - - err = grub_zfs_fetch_nvlist (dev, &nvlist); - - grub_device_close (dev); - - if (err) - return err; - - poolname = grub_zfs_nvlist_lookup_string (nvlist, ZPOOL_CONFIG_POOL_NAME); - if (!poolname) - grub_puts_ (N_("Pool name: unavailable")); - else - grub_printf_ (N_("Pool name: %s\n"), poolname); - - found = - grub_zfs_nvlist_lookup_uint64 (nvlist, ZPOOL_CONFIG_POOL_GUID, &guid); - if (!found) - grub_puts_ (N_("Pool GUID: unavailable")); - else - grub_printf_ (N_("Pool GUID: %016llx\n"), (long long unsigned) guid); - - found = grub_zfs_nvlist_lookup_uint64 (nvlist, ZPOOL_CONFIG_POOL_STATE, - &pool_state); - if (!found) - grub_puts_ (N_("Unable to retrieve pool state")); - else if (pool_state >= ARRAY_SIZE (poolstates)) - grub_puts_ (N_("Unrecognized pool state")); - else - grub_puts_ (poolstates[pool_state]); - - nv = grub_zfs_nvlist_lookup_nvlist (nvlist, ZPOOL_CONFIG_VDEV_TREE); - - if (!nv) - /* TRANSLATORS: There are undetermined number of virtual devices - in a device tree, not just one. - */ - grub_puts_ (N_("No virtual device tree available")); - else - print_vdev_info (nv, 1); - - grub_free (nv); - grub_free (nvlist); - - return GRUB_ERR_NONE; -} - -static grub_err_t -grub_cmd_zfs_bootfs (grub_command_t cmd __attribute__ ((unused)), int argc, - char **args) -{ - grub_device_t dev; - char *devname; - grub_err_t err; - char *nvlist = 0; - char *nv = 0; - char *bootpath = 0, *devid = 0; - char *fsname; - char *bootfs; - char *poolname; - grub_uint64_t mdnobj; - - if (argc < 1) - return grub_error (GRUB_ERR_BAD_ARGUMENT, N_("one argument expected")); - - devname = grub_file_get_device_name (args[0]); - if (grub_errno) - return grub_errno; - - dev = grub_device_open (devname); - grub_free (devname); - if (!dev) - return grub_errno; - - err = grub_zfs_fetch_nvlist (dev, &nvlist); - - fsname = grub_strchr (args[0], ')'); - if (fsname) - fsname++; - else - fsname = args[0]; - - if (!err) - err = grub_zfs_getmdnobj (dev, fsname, &mdnobj); - - grub_device_close (dev); - - if (err) - return err; - - poolname = grub_zfs_nvlist_lookup_string (nvlist, ZPOOL_CONFIG_POOL_NAME); - if (!poolname) - { - if (!grub_errno) - grub_error (GRUB_ERR_BAD_FS, "No poolname found"); - return grub_errno; - } - - nv = grub_zfs_nvlist_lookup_nvlist (nvlist, ZPOOL_CONFIG_VDEV_TREE); - - if (nv) - get_bootpath (nv, &bootpath, &devid); - - grub_free (nv); - grub_free (nvlist); - - bootfs = grub_xasprintf ("zfs-bootfs=%s/%llu%s%s%s%s%s%s", - poolname, (unsigned long long) mdnobj, - bootpath ? ",bootpath=\"" : "", - bootpath ? : "", - bootpath ? "\"" : "", - devid ? ",diskdevid=\"" : "", - devid ? : "", - devid ? "\"" : ""); - if (!bootfs) - return grub_errno; - if (argc >= 2) - grub_env_set (args[1], bootfs); - else - grub_printf ("%s\n", bootfs); - - grub_free (bootfs); - grub_free (poolname); - grub_free (bootpath); - grub_free (devid); - - return GRUB_ERR_NONE; -} - - -static grub_command_t cmd_info, cmd_bootfs; - -GRUB_MOD_INIT (zfsinfo) -{ - cmd_info = grub_register_command ("zfsinfo", grub_cmd_zfsinfo, - N_("DEVICE"), - N_("Print ZFS info about DEVICE.")); - cmd_bootfs = grub_register_command ("zfs-bootfs", grub_cmd_zfs_bootfs, - N_("FILESYSTEM [VARIABLE]"), - N_("Print ZFS-BOOTFSOBJ or store it into VARIABLE")); -} - -GRUB_MOD_FINI (zfsinfo) -{ - grub_unregister_command (cmd_info); - grub_unregister_command (cmd_bootfs); -} diff --git a/thirdparty/grub-2.04/grub-core/gdb/cstub.c b/thirdparty/grub-2.04/grub-core/gdb/cstub.c deleted file mode 100644 index b64acd70f..000000000 --- a/thirdparty/grub-2.04/grub-core/gdb/cstub.c +++ /dev/null @@ -1,366 +0,0 @@ -/* cstub.c - machine independent portion of remote GDB stub */ -/* - * Copyright (C) 2006 Lubomir Kundrak - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - */ - -#include -#include -#include -#include -#include - -static const char hexchars[] = "0123456789abcdef"; -int grub_gdb_regs[GRUB_MACHINE_NR_REGS]; - -#define GRUB_GDB_COMBUF_SIZE 400 /* At least sizeof(grub_gdb_regs)*2 are needed for - register packets. */ -static char grub_gdb_inbuf[GRUB_GDB_COMBUF_SIZE + 1]; -static char grub_gdb_outbuf[GRUB_GDB_COMBUF_SIZE + 1]; - -struct grub_serial_port *grub_gdb_port; - -static int -hex (char ch) -{ - if ((ch >= 'a') && (ch <= 'f')) - return (ch - 'a' + 10); - if ((ch >= '0') && (ch <= '9')) - return (ch - '0'); - if ((ch >= 'A') && (ch <= 'F')) - return (ch - 'A' + 10); - return (-1); -} - -/* Scan for the sequence $#. */ -static char * -grub_gdb_getpacket (void) -{ - char *buffer = &grub_gdb_inbuf[0]; - unsigned char checksum; - unsigned char xmitcsum; - int count; - int ch; - - while (1) - { - /* Wait around for the start character, ignore all other - characters. */ - while ((ch = grub_serial_port_fetch (grub_gdb_port)) != '$'); - - retry: - checksum = 0; - xmitcsum = -1; - count = 0; - - /* Now read until a # or end of buffer is found. */ - while (count < GRUB_GDB_COMBUF_SIZE) - { - do - ch = grub_serial_port_fetch (grub_gdb_port); - while (ch < 0); - if (ch == '$') - goto retry; - if (ch == '#') - break; - checksum += ch; - buffer[count] = ch; - count = count + 1; - } - buffer[count] = 0; - if (ch == '#') - { - do - ch = grub_serial_port_fetch (grub_gdb_port); - while (ch < 0); - xmitcsum = hex (ch) << 4; - do - ch = grub_serial_port_fetch (grub_gdb_port); - while (ch < 0); - xmitcsum += hex (ch); - - if (checksum != xmitcsum) - grub_serial_port_put (grub_gdb_port, '-'); /* Failed checksum. */ - else - { - grub_serial_port_put (grub_gdb_port, '+'); /* Successful transfer. */ - - /* If a sequence char is present, reply the sequence ID. */ - if (buffer[2] == ':') - { - grub_serial_port_put (grub_gdb_port, buffer[0]); - grub_serial_port_put (grub_gdb_port, buffer[1]); - - return &buffer[3]; - } - return &buffer[0]; - } - } - } -} - -/* Send the packet in buffer. */ -static void -grub_gdb_putpacket (char *buffer) -{ - grub_uint8_t checksum; - - /* $#. */ - do - { - char *ptr; - grub_serial_port_put (grub_gdb_port, '$'); - checksum = 0; - - for (ptr = buffer; *ptr; ptr++) - { - grub_serial_port_put (grub_gdb_port, *ptr); - checksum += *ptr; - } - - grub_serial_port_put (grub_gdb_port, '#'); - grub_serial_port_put (grub_gdb_port, hexchars[checksum >> 4]); - grub_serial_port_put (grub_gdb_port, hexchars[checksum & 0xf]); - } - while (grub_serial_port_fetch (grub_gdb_port) != '+'); -} - -/* Convert the memory pointed to by mem into hex, placing result in buf. - Return a pointer to the last char put in buf (NULL). */ -static char * -grub_gdb_mem2hex (char *mem, char *buf, grub_size_t count) -{ - grub_size_t i; - unsigned char ch; - - for (i = 0; i < count; i++) - { - ch = *mem++; - *buf++ = hexchars[ch >> 4]; - *buf++ = hexchars[ch % 16]; - } - *buf = 0; - return (buf); -} - -/* Convert the hex array pointed to by buf into binary to be placed in mem. - Return a pointer to the character after the last byte written. */ -static char * -grub_gdb_hex2mem (char *buf, char *mem, int count) -{ - int i; - unsigned char ch; - - for (i = 0; i < count; i++) - { - ch = hex (*buf++) << 4; - ch = ch + hex (*buf++); - *mem++ = ch; - } - return (mem); -} - -/* Convert hex characters to int and return the number of characters - processed. */ -static int -grub_gdb_hex2int (char **ptr, grub_uint64_t *int_value) -{ - int num_chars = 0; - int hex_value; - - *int_value = 0; - - while (**ptr) - { - hex_value = hex (**ptr); - if (hex_value >= 0) - { - *int_value = (*int_value << 4) | hex_value; - num_chars++; - } - else - break; - - (*ptr)++; - } - - return (num_chars); -} - -/* This function does all command procesing for interfacing to gdb. */ -void __attribute__ ((regparm(3))) -grub_gdb_trap (int trap_no) -{ - unsigned int sig_no; - int stepping; - grub_uint64_t addr; - grub_uint64_t length; - char *ptr; - - if (!grub_gdb_port) - { - grub_printf ("Unhandled exception 0x%x at ", trap_no); - grub_backtrace_print_address ((void *) grub_gdb_regs[PC]); - grub_printf ("\n"); - grub_backtrace_pointer ((void *) grub_gdb_regs[EBP]); - grub_fatal ("Unhandled exception"); - } - - sig_no = grub_gdb_trap2sig (trap_no); - - ptr = grub_gdb_outbuf; - - /* Reply to host that an exception has occurred. */ - - *ptr++ = 'T'; /* Notify gdb with signo, PC, FP and SP. */ - - *ptr++ = hexchars[sig_no >> 4]; - *ptr++ = hexchars[sig_no & 0xf]; - - /* Stack pointer. */ - *ptr++ = hexchars[SP]; - *ptr++ = ':'; - ptr = grub_gdb_mem2hex ((char *) &grub_gdb_regs[ESP], ptr, 4); - *ptr++ = ';'; - - /* Frame pointer. */ - *ptr++ = hexchars[FP]; - *ptr++ = ':'; - ptr = grub_gdb_mem2hex ((char *) &grub_gdb_regs[EBP], ptr, 4); - *ptr++ = ';'; - - /* Program counter. */ - *ptr++ = hexchars[PC]; - *ptr++ = ':'; - ptr = grub_gdb_mem2hex ((char *) &grub_gdb_regs[PC], ptr, 4); - *ptr++ = ';'; - - *ptr = '\0'; - - grub_gdb_putpacket (grub_gdb_outbuf); - - stepping = 0; - - while (1) - { - grub_gdb_outbuf[0] = 0; - ptr = grub_gdb_getpacket (); - - switch (*ptr++) - { - case '?': - grub_gdb_outbuf[0] = 'S'; - grub_gdb_outbuf[1] = hexchars[sig_no >> 4]; - grub_gdb_outbuf[2] = hexchars[sig_no & 0xf]; - grub_gdb_outbuf[3] = 0; - break; - - /* Return values of the CPU registers. */ - case 'g': - grub_gdb_mem2hex ((char *) grub_gdb_regs, grub_gdb_outbuf, - sizeof (grub_gdb_regs)); - break; - - /* Set values of the CPU registers -- return OK. */ - case 'G': - grub_gdb_hex2mem (ptr, (char *) grub_gdb_regs, - sizeof (grub_gdb_regs)); - grub_strcpy (grub_gdb_outbuf, "OK"); - break; - - /* Set the value of a single CPU register -- return OK. */ - case 'P': - { - grub_uint64_t regno; - - if (grub_gdb_hex2int (&ptr, ®no) && *ptr++ == '=') - if (regno < GRUB_MACHINE_NR_REGS) - { - grub_gdb_hex2mem (ptr, (char *) &grub_gdb_regs[regno], 4); - grub_strcpy (grub_gdb_outbuf, "OK"); - break; - } - /* FIXME: GDB requires setting orig_eax. I don't know what's - this register is about. For now just simulate setting any - registers. */ - grub_strcpy (grub_gdb_outbuf, /*"E01"*/ "OK"); - break; - } - - /* mAA..AA,LLLL: Read LLLL bytes at address AA..AA. */ - case 'm': - /* Try to read %x,%x. Set ptr = 0 if successful. */ - if (grub_gdb_hex2int (&ptr, &addr)) - if (*(ptr++) == ',') - if (grub_gdb_hex2int (&ptr, &length)) - { - ptr = 0; - grub_gdb_mem2hex ((char *) (grub_addr_t) addr, - grub_gdb_outbuf, length); - } - if (ptr) - grub_strcpy (grub_gdb_outbuf, "E01"); - break; - - /* MAA..AA,LLLL: Write LLLL bytes at address AA.AA -- return OK. */ - case 'M': - /* Try to read %x,%x. Set ptr = 0 if successful. */ - if (grub_gdb_hex2int (&ptr, &addr)) - if (*(ptr++) == ',') - if (grub_gdb_hex2int (&ptr, &length)) - if (*(ptr++) == ':') - { - grub_gdb_hex2mem (ptr, (char *) (grub_addr_t) addr, length); - grub_strcpy (grub_gdb_outbuf, "OK"); - ptr = 0; - } - if (ptr) - { - grub_strcpy (grub_gdb_outbuf, "E02"); - } - break; - - /* sAA..AA: Step one instruction from AA..AA(optional). */ - case 's': - stepping = 1; - /* FALLTHROUGH */ - - /* cAA..AA: Continue at address AA..AA(optional). */ - case 'c': - /* try to read optional parameter, pc unchanged if no parm */ - if (grub_gdb_hex2int (&ptr, &addr)) - grub_gdb_regs[PC] = addr; - - /* Clear the trace bit. */ - grub_gdb_regs[PS] &= 0xfffffeff; - - /* Set the trace bit if we're stepping. */ - if (stepping) - grub_gdb_regs[PS] |= 0x100; - - return; - - /* Kill the program. */ - case 'k': - /* Do nothing. */ - return; - } - - /* Reply to the request. */ - grub_gdb_putpacket (grub_gdb_outbuf); - } -} - diff --git a/thirdparty/grub-2.04/grub-core/gdb/gdb.c b/thirdparty/grub-2.04/grub-core/gdb/gdb.c deleted file mode 100644 index 847a1e1e3..000000000 --- a/thirdparty/grub-2.04/grub-core/gdb/gdb.c +++ /dev/null @@ -1,100 +0,0 @@ -/* gdb.c - gdb remote stub module */ -/* - * Copyright (C) 2003 Free Software Foundation, Inc. - * Copyright (C) 2006 Lubomir Kundrak - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 3 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - */ - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -static grub_err_t -grub_cmd_gdbstub (struct grub_command *cmd __attribute__ ((unused)), - int argc, char **args) -{ - struct grub_serial_port *port; - if (argc < 1) - return grub_error (GRUB_ERR_BAD_ARGUMENT, "port required"); - port = grub_serial_find (args[0]); - if (!port) - return grub_errno; - grub_gdb_port = port; - /* TRANSLATORS: at this position GRUB waits for the user to do an action - in remote debugger, namely to tell it to establish connection. */ - grub_puts_ (N_("Now connect the remote debugger, please.")); - grub_gdb_breakpoint (); - return 0; -} - -static grub_err_t -grub_cmd_gdbstop (struct grub_command *cmd __attribute__ ((unused)), - int argc __attribute__ ((unused)), - char **args __attribute__ ((unused))) -{ - grub_gdb_port = NULL; - return 0; -} - -static grub_err_t -grub_cmd_gdb_break (struct grub_command *cmd __attribute__ ((unused)), - int argc __attribute__ ((unused)), - char **args __attribute__ ((unused))) -{ - if (!grub_gdb_port) - return grub_error (GRUB_ERR_BAD_ARGUMENT, "No GDB stub is running"); - grub_gdb_breakpoint (); - return 0; -} - -static grub_command_t cmd, cmd_stop, cmd_break; - -GRUB_MOD_INIT (gdb) -{ - grub_gdb_idtinit (); - cmd = grub_register_command ("gdbstub", grub_cmd_gdbstub, - N_("PORT"), - /* TRANSLATORS: GDB stub is a small part of - GDB functionality running on local host - which allows remote debugger to - connect to it. */ - N_("Start GDB stub on given port")); - cmd_break = grub_register_command ("gdbstub_break", grub_cmd_gdb_break, - /* TRANSLATORS: this refers to triggering - a breakpoint so that the user will land - into GDB. */ - 0, N_("Break into GDB")); - cmd_stop = grub_register_command ("gdbstub_stop", grub_cmd_gdbstop, - 0, N_("Stop GDB stub")); -} - -GRUB_MOD_FINI (gdb) -{ - grub_unregister_command (cmd); - grub_unregister_command (cmd_stop); - grub_gdb_idtrestore (); -} - diff --git a/thirdparty/grub-2.04/grub-core/gdb/i386/idt.c b/thirdparty/grub-2.04/grub-core/gdb/i386/idt.c deleted file mode 100644 index 69bfcb089..000000000 --- a/thirdparty/grub-2.04/grub-core/gdb/i386/idt.c +++ /dev/null @@ -1,78 +0,0 @@ -/* idt.c - routines for constructing IDT fot the GDB stub */ -/* - * Copyright (C) 2006 Lubomir Kundrak - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - */ - -#include -#include -#include -#include - -static struct grub_cpu_interrupt_gate grub_gdb_idt[GRUB_GDB_LAST_TRAP + 1] - __attribute__ ((aligned(16))); - -/* Sets up a gate descriptor in the IDT table. */ -static void -grub_idt_gate (struct grub_cpu_interrupt_gate *gate, void (*offset) (void), - grub_uint16_t selector, grub_uint8_t type, grub_uint8_t dpl) -{ - gate->offset_lo = (int) offset & 0xffff; - gate->selector = selector & 0xffff; - gate->unused = 0; - gate->gate = (type & 0x1f) | ((dpl & 0x3) << 5) | 0x80; - gate->offset_hi = ((int) offset >> 16) & 0xffff; -} - -static struct grub_cpu_idt_descriptor grub_gdb_orig_idt_desc - __attribute__ ((aligned(16))); -static struct grub_cpu_idt_descriptor grub_gdb_idt_desc - __attribute__ ((aligned(16))); - -/* Set up interrupt and trap handler descriptors in IDT. */ -void -grub_gdb_idtinit (void) -{ - int i; - grub_uint16_t seg; - - asm volatile ("xorl %%eax, %%eax\n" - "mov %%cs, %%ax\n" :"=a" (seg)); - - for (i = 0; i <= GRUB_GDB_LAST_TRAP; i++) - { - grub_idt_gate (&grub_gdb_idt[i], - grub_gdb_trapvec[i], seg, - GRUB_CPU_TRAP_GATE, 0); - } - - grub_gdb_idt_desc.base = (grub_addr_t) grub_gdb_idt; - grub_gdb_idt_desc.limit = sizeof (grub_gdb_idt) - 1; - asm volatile ("sidt %0" : : "m" (grub_gdb_orig_idt_desc)); - asm volatile ("lidt %0" : : "m" (grub_gdb_idt_desc)); -} - -void -grub_gdb_idtrestore (void) -{ - asm volatile ("lidt %0" : : "m" (grub_gdb_orig_idt_desc)); -} - -void -grub_gdb_breakpoint (void) -{ - asm volatile ("int $3"); -} diff --git a/thirdparty/grub-2.04/grub-core/gdb/i386/machdep.S b/thirdparty/grub-2.04/grub-core/gdb/i386/machdep.S deleted file mode 100644 index f96d2b9c4..000000000 --- a/thirdparty/grub-2.04/grub-core/gdb/i386/machdep.S +++ /dev/null @@ -1,245 +0,0 @@ -/* machdep.S - machine dependent assembly routines for the GDB stub */ -/* - * Copyright (C) 2006 Lubomir Kundrak - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - */ - -#include -#include - -#define EC_PRESENT 1 -#define EC_ABSENT 0 - -#define GRUB_GDB_STACKSIZE 40000 - -#define SEP , - -#ifdef __APPLE__ - .zerofill __DATA, __bss, LOCAL(grub_gdb_stack_end), GRUB_GDB_STACKSIZE, 4 - LOCAL(grub_gdb_stack) = LOCAL(grub_gdb_stack_end) -#else -/* - * The .data index for the address vector. - */ - -#define VECTOR 1 - - .bss - .space GRUB_GDB_STACKSIZE -VARIABLE(grub_gdb_stack) -#endif - -/* - * Supplemental macros for register saving/restoration - * on exception handler entry/leave. - */ - -#ifdef __APPLE__ -.macro save32 -#define REG $0 -#define NDX $1 -#else -.macro save32 reg ndx -#define REG \reg -#define NDX \ndx -#endif - movl REG, EXT_C(grub_gdb_regs)+(NDX * 4) -.endm - -#undef REG -#undef NDX - -#ifdef __APPLE__ -.macro save16 -#define REG $0 -#define NDX $1 -#else -.macro save16 reg ndx -#define REG \reg -#define NDX \ndx -#endif - xorl %eax, %eax - movw REG, EXT_C(grub_gdb_regs)+(NDX * 4) - movw %ax, EXT_C(grub_gdb_regs)+(NDX * 4 + 2) - movl EXT_C(grub_gdb_regs)+(EAX * 4), %eax -.endm - -#undef REG -#undef NDX - -#ifdef __APPLE__ -.macro load32 -#define NDX $0 -#define REG $1 -#else -.macro load32 ndx reg -#define REG \reg -#define NDX \ndx -#endif - movl EXT_C(grub_gdb_regs)+(NDX * 4), REG -.endm - -#undef REG -#undef NDX - -#ifdef __APPLE__ -.macro load16 -#define NDX $0 -#define REG $1 -#else -.macro load16 ndx reg -#define NDX \ndx -#define REG \reg -#endif - movw EXT_C(grub_gdb_regs)+(NDX * 4), REG -.endm - -#undef REG -#undef NDX - -.macro save_context - save32 %eax, EAX - - save32 %ecx, ECX - save32 %edx, EDX - save32 %ebx, EBX - save32 %ebp, EBP - save32 %esi, ESI - save32 %edi, EDI - - popl %ebx - save32 %ebx, EIP - popl %ebx - save32 %ebx, CS - popl %ebx - save32 %ebx, EFLAGS - - save32 %esp, ESP - - save16 %ds, DS - save16 %es, ES - save16 %fs, FS - save16 %gs, GS - save16 %ss, SS -.endm - -.macro load_context - load16 SS, %ss - load32 ESP, %esp - - load32 EBP, %ebp - load32 ESI, %esi - load32 EDI, %edi - - load16 DS, %ds - load16 ES, %es - load16 FS, %fs - load16 GS, %gs - - load32 EFLAGS, %eax - pushl %eax - load32 CS, %eax - pushl %eax - load32 EIP, %eax - pushl %eax - - load32 EBX, %ebx - load32 EDX, %edx - load32 ECX, %ecx - load32 EAX, %eax -.endm - -/* - * This macro creates handlers for a given range of exception numbers - * and adds their addresses to the grub_gdb_trapvec array. - */ - -#ifdef __APPLE__ -.macro ent -#define EC $0 -#define BEG $1 -#define END $2 -#else -.macro ent ec beg end=0 -#define EC \ec -#define BEG \beg -#define END \end -#endif - - /* - * Wrapper body itself. - */ - - .text -1: - .if EC - add MACRO_DOLLAR(4), %esp - .endif - - save_context -#ifdef __APPLE__ - mov $LOCAL(grub_gdb_stack), %esp -#else - mov $EXT_C(grub_gdb_stack), %esp -#endif - mov $(BEG), %eax /* trap number */ - call EXT_C(grub_gdb_trap) - load_context - iret - - /* - * Address entry in trapvec array. - */ - -#ifdef __APPLE__ - .section __DATA, VECTOR -#else - .data VECTOR -#endif - .long 1b - - /* - * Next... (recursion). - */ - - .if END-BEG > 0 -#ifdef __APPLE__ - ent EC, (BEG+1), END -#else - ent \ec "(\beg+1)" \end -#endif - .endif -.endm - -/* - * Here does the actual construction of the address array and handlers - * take place. - */ -#ifdef __APPLE__ - .section __DATA, VECTOR -#else - .data VECTOR -#endif -VARIABLE(grub_gdb_trapvec) - ent EC_ABSENT, 0, 7 - ent EC_PRESENT, 8 - ent EC_ABSENT, 9 - ent EC_PRESENT, 10, 14 - /* - * You may have to split this further or as(1) - * will complain about nesting being too deep. - */ - ent EC_ABSENT, 15, GRUB_GDB_LAST_TRAP diff --git a/thirdparty/grub-2.04/grub-core/gdb/i386/signal.c b/thirdparty/grub-2.04/grub-core/gdb/i386/signal.c deleted file mode 100644 index 1ac3bbd18..000000000 --- a/thirdparty/grub-2.04/grub-core/gdb/i386/signal.c +++ /dev/null @@ -1,53 +0,0 @@ -/* idt.c - routines for constructing IDT fot the GDB stub */ -/* - * Copyright (C) 2006 Lubomir Kundrak - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - */ - -#include -#include -#include -#include - -/* Converting CPU trap number to UNIX signal number as - described in System V ABI i386 Processor Supplement, 3-25. */ -unsigned int -grub_gdb_trap2sig (int trap_no) -{ - const int signals[] = { - SIGFPE, /* 0: Divide error fault */ - SIGTRAP, /* 1: Single step trap fault */ - SIGABRT, /* 2: # Nonmaskable interrupt */ - SIGTRAP, /* 3: Breakpoint trap */ - SIGSEGV, /* 4: Overflow trap */ - SIGSEGV, /* 5: Bounds check fault */ - SIGILL, /* 6: Invalid opcode fault */ - SIGFPE, /* 7: No coprocessor fault */ - SIGABRT, /* 8: # Double fault abort */ - SIGSEGV, /* 9: Coprocessor overrun abort */ - SIGSEGV, /* 10: Invalid TSS fault */ - SIGSEGV, /* 11: Segment not present fault */ - SIGSEGV, /* 12: Stack exception fault */ - SIGSEGV, /* 13: General protection fault abort */ - SIGSEGV, /* 14: Page fault */ - SIGABRT, /* 15: (reserved) */ - SIGFPE, /* 16: Coprocessor error fault */ - SIGUSR1 /* other */ - }; - - return signals[trap_no < 17 ? trap_no : 17]; -} - diff --git a/thirdparty/grub-2.04/grub-core/gdb_grub.in b/thirdparty/grub-2.04/grub-core/gdb_grub.in deleted file mode 100644 index e322d3dc1..000000000 --- a/thirdparty/grub-2.04/grub-core/gdb_grub.in +++ /dev/null @@ -1,85 +0,0 @@ -### -### Load debuging information about GNU GRUB 2 modules into GDB -### automatically. Needs readelf, Perl and gmodule.pl script -### -### Has to be launched from the writable and trusted -### directory containing *.image and *.module -### -### $Id: .gdbinit,v 1.1 2006/05/14 11:38:08 lkundrak Exp $ -### Lubomir Kundrak -### - -# Add section numbers and addresses to .segments.tmp -define dump_module_sections - set $mod = $arg0 - - # FIXME: save logging status - set logging file .segments.tmp - set logging redirect on - set logging overwrite off - set logging on - - printf "%s", $mod->name - set $segment = $mod->segment - while ($segment) - printf " %i 0x%lx", $segment->section, $segment->addr - set $segment = $segment->next - end - printf "\n" - - set logging off - # FIXME: restore logging status -end -document dump_module_sections - Gather information about module whose mod structure was - given for use with match_and_load_symbols -end - -# Generate and execute GDB commands and delete temporary files -# afterwards -define match_and_load_symbols - shell perl gmodule.pl <.segments.tmp >.loadsym.gdb - source .loadsym.gdb - shell rm -f .segments.tmp .loadsym.gdb -end -document match_and_load_symbols - Launch script, that matches section names with information - generated by dump_module_sections and load debugging info - apropriately -end - -### - -define load_module - dump_module_sections $arg0 - match_and_load_symbols -end -document load_module - Load debugging information for module given as argument. -end - -define load_all_modules - set $this = grub_dl_head - while ($this != 0) - dump_module_sections $this - set $this = $this->next - end - match_and_load_symbols -end -document load_all_modules - Load debugging information for all loaded modules. -end - -### - -set confirm off -file kernel.exec -target remote :1234 - -# inform when module is loaded -break grub_dl_add -commands - silent - load_module mod - cont -end diff --git a/thirdparty/grub-2.04/grub-core/genemuinit.sh b/thirdparty/grub-2.04/grub-core/genemuinit.sh deleted file mode 100644 index 8c6bb1c18..000000000 --- a/thirdparty/grub-2.04/grub-core/genemuinit.sh +++ /dev/null @@ -1,72 +0,0 @@ -#! /bin/sh -# -# Copyright (C) 2002,2005,2007 Free Software Foundation, Inc. -# -# This gensymlist.sh is free software; the author -# gives unlimited permission to copy and/or distribute it, -# with or without modifications, as long as this notice is preserved. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY, to the extent permitted by law; without -# even the implied warranty of MERCHANTABILITY or FITNESS FOR A -# PARTICULAR PURPOSE. - -nm="$1" -shift - -cat <. - */ - -#include "grub_emu_init.h" - -EOF - -cat < /dev/null; then - echo "grub_${line%%.*}_init ();" - fi -done - -cat < /dev/null; then - echo "grub_${line%%.*}_fini ();" - fi -done - -cat <. - */ - -EOF - -cat < /dev/null; then - echo "void grub_${line%%.*}_init (void);" - fi - if ${nm} --defined-only -P -p ${line} | grep grub_mod_fini > /dev/null; then - echo "void grub_${line%%.*}_fini (void);" - fi -done diff --git a/thirdparty/grub-2.04/grub-core/genmod.sh.in b/thirdparty/grub-2.04/grub-core/genmod.sh.in deleted file mode 100644 index 1250589b3..000000000 --- a/thirdparty/grub-2.04/grub-core/genmod.sh.in +++ /dev/null @@ -1,103 +0,0 @@ -#! @BUILD_SHEBANG@ -set -e - -# Copyright (C) 2010 Free Software Foundation, Inc. -# -# This gensymlist.sh is free software; the author -# gives unlimited permission to copy and/or distribute it, -# with or without modifications, as long as this notice is preserved. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY, to the extent permitted by law; without -# even the implied warranty of MERCHANTABILITY or FITNESS FOR A -# PARTICULAR PURPOSE. - -# -# Example: -# -# genmod.sh moddep.lst normal.module build-grub-module-verifier normal.mod -# - -moddep=$1 -infile=$2 -outfile=$4 - -tmpfile=${outfile}.tmp -modname=`echo $infile | sed -e 's@\.module.*$@@'` - -if ! grep ^$modname: $moddep >/dev/null; then - echo "warning: moddep.lst has no dependencies for $modname" >&2 - exit 0 -fi - -deps=`grep ^$modname: $moddep | sed s@^.*:@@` - -# remove old files if any -rm -f $tmpfile $outfile - -if test x@TARGET_APPLE_LINKER@ != x1; then - # stripout .modname and .moddeps sections from input module - @TARGET_OBJCOPY@ -R .modname -R .moddeps $infile $tmpfile - - # Attach .modname and .moddeps sections - t1=`mktemp "${TMPDIR:-/tmp}/tmp.XXXXXXXXXX"` || exit 1 - printf "$modname\0" >$t1 - - t2=`mktemp "${TMPDIR:-/tmp}/tmp.XXXXXXXXXX"` || exit 1 - for dep in $deps; do printf "$dep\0" >> $t2; done - - if test -n "$deps"; then - @TARGET_OBJCOPY@ --add-section .modname=$t1 --add-section .moddeps=$t2 $tmpfile - else - @TARGET_OBJCOPY@ --add-section .modname=$t1 $tmpfile - fi - rm -f $t1 $t2 - - if test x@platform@ != xemu; then - @TARGET_STRIP@ --strip-unneeded \ - -K grub_mod_init -K grub_mod_fini \ - -K _grub_mod_init -K _grub_mod_fini \ - -R .note.gnu.gold-version -R .note.GNU-stack \ - -R .gnu.build.attributes \ - -R .rel.gnu.build.attributes \ - -R .rela.gnu.build.attributes \ - -R .eh_frame -R .rela.eh_frame -R .rel.eh_frame \ - -R .note -R .comment -R .ARM.exidx $tmpfile || exit 1 - fi - if ! test -z "${TARGET_OBJ2ELF}"; then - "${TARGET_OBJ2ELF}" $tmpfile || exit 1 - fi -else - tmpfile2=${outfile}.tmp2 - t1=${outfile}.t1.c - t2=${outfile}.t2.c - - # remove old files if any - rm -f $t1 $t2 - - cp $infile $tmpfile - - # Attach .modname and .moddeps sections - echo "char modname[] __attribute__ ((section(\"_modname, _modname\"))) = \"$modname\";" >$t1 - - for dep in $deps; do echo "char moddep_$dep[] __attribute__ ((section(\"_moddeps, _moddeps\"))) = \"$dep\";" >>$t2; done - - if test -n "$deps"; then - @TARGET_CC@ @TARGET_LDFLAGS@ -ffreestanding -nostdlib -o $tmpfile2 $t1 $t2 $tmpfile -Wl,-r,-d - else - @TARGET_CC@ @TARGET_LDFLAGS@ -ffreestanding -nostdlib -o $tmpfile2 $t1 $tmpfile -Wl,-r,-d - fi - rm -f $t1 $t2 $tmpfile - mv $tmpfile2 $tmpfile - - cp $tmpfile $tmpfile.bin - @TARGET_OBJCONV@ -f@TARGET_MODULE_FORMAT@ \ - -nr:_grub_mod_init:grub_mod_init \ - -nr:_grub_mod_fini:grub_mod_fini \ - -wd1106 -nu -nd $tmpfile.bin $tmpfile || exit 1 - rm -f $tmpfile.bin -fi -if test x@platform@ != xemu; then - ./build-grub-module-verifier@BUILD_EXEEXT@ $tmpfile @target_cpu@ @platform@ -fi -mv $tmpfile $outfile diff --git a/thirdparty/grub-2.04/grub-core/genmoddep.awk b/thirdparty/grub-2.04/grub-core/genmoddep.awk deleted file mode 100644 index 04c2863e5..000000000 --- a/thirdparty/grub-2.04/grub-core/genmoddep.awk +++ /dev/null @@ -1,102 +0,0 @@ -#! /usr/bin/awk -f -# -# Copyright (C) 2006 Free Software Foundation, Inc. -# -# This genmoddep.awk is free software; the author -# gives unlimited permission to copy and/or distribute it, -# with or without modifications, as long as this notice is preserved. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY, to the extent permitted by law; without -# even the implied warranty of MERCHANTABILITY or FITNESS FOR A -# PARTICULAR PURPOSE. - -# Read symbols' info from stdin. -BEGIN { - error = 0 -} - -{ - if ($1 == "defined") { - if ($3 !~ /^\.refptr\./ && $3 in symtab) { - printf "%s in %s is duplicated in %s\n", $3, $2, symtab[$3] >"/dev/stderr"; - error++; - } - symtab[$3] = $2; - modtab[$2] = "" modtab[$2] - } else if ($1 == "undefined") { - if ($3 in symtab) - modtab[$2] = modtab[$2] " " symtab[$3]; - else if ($3 != "__gnu_local_gp" && $3 != "_gp_disp") { - printf "%s in %s is not defined\n", $3, $2 >"/dev/stderr"; - error++; - } - } - else { - printf "error: %u: unrecognized input format\n", NR >"/dev/stderr"; - error++; - } -} - -# Output the result. -END { - if (error >= 1) - exit 1; - - total_depcount = 0 - - for (mod in modtab) { - # Remove duplications. - split(modtab[mod], depmods, " "); - for (depmod in uniqmods) { - delete uniqmods[depmod]; - } - for (i in depmods) { - depmod = depmods[i]; - # Ignore kernel, as always loaded. - if (depmod != "kernel" && depmod != mod) - uniqmods[depmod] = 1; - } - modlist = "" - depcount[mod] = 0 - for (depmod in uniqmods) { - modlist = modlist " " depmod; - inverse_dependencies[depmod] = inverse_dependencies[depmod] " " mod - depcount[mod]++ - total_depcount++ - } - if (mod == "all_video") { - continue; - } - printf "%s:%s\n", mod, modlist; - } - - # Check that we have no dependency circles - while (total_depcount != 0) { - something_done = 0 - for (mod in depcount) { - if (depcount[mod] == 0) { - delete depcount[mod] - split(inverse_dependencies[mod], inv_depmods, " "); - for (ctr in inv_depmods) { - depcount[inv_depmods[ctr]]-- - total_depcount-- - } - delete inverse_dependencies[mod] - something_done = 1 - } - } - if (something_done == 0) { - for (mod in depcount) { - circle = circle " " mod - } - printf "error: modules %s form a dependency circle\n", circle >"/dev/stderr"; - exit 1 - } - } - modlist = "" - while (getline <"video.lst") { - modlist = modlist " " $1; - } - printf "all_video:%s\n", modlist; -} diff --git a/thirdparty/grub-2.04/grub-core/gensyminfo.sh.in b/thirdparty/grub-2.04/grub-core/gensyminfo.sh.in deleted file mode 100644 index 9bc767532..000000000 --- a/thirdparty/grub-2.04/grub-core/gensyminfo.sh.in +++ /dev/null @@ -1,37 +0,0 @@ -#! @BUILD_SHEBANG@ -set -e - -# Copyright (C) 2010 Free Software Foundation, Inc. -# -# This gensymlist.sh is free software; the author -# gives unlimited permission to copy and/or distribute it, -# with or without modifications, as long as this notice is preserved. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY, to the extent permitted by law; without -# even the implied warranty of MERCHANTABILITY or FITNESS FOR A -# PARTICULAR PURPOSE. - -# -# Example: -# -# gensyms.sh normal.module -# - -module=$1 -modname=`echo $module | sed -e 's@\.module.*$@@'` - -# Print all symbols defined by module -if test x"@TARGET_NMFLAGS_DEFINED_ONLY@" = x && test x"@TARGET_NMFLAGS_MINUS_P@" = x; then - @TARGET_NM@ -g -p $module | \ - sed -n "s@^\([0-9a-fA-F]*\) *[TBRDS] *\([^ ]*\).*@defined $modname \2@p" -elif test x"@TARGET_NMFLAGS_DEFINED_ONLY@" = x; then - @TARGET_NM@ -g @TARGET_NMFLAGS_MINUS_P@ -p $module | \ - sed -n "s@^\([^ ]*\) *[TBRDS] *\([0-9a-fA-F]*\).*@defined $modname \1@p" -else - @TARGET_NM@ -g --defined-only @TARGET_NMFLAGS_MINUS_P@ -p $module | \ - sed "s@^\([^ ]*\).*@defined $modname \1@g" -fi - -# Print all undefined symbols used by module -@TARGET_NM@ -u @TARGET_NMFLAGS_MINUS_P@ -p $module | sed "s@^\([^ ]*\).*@undefined $modname \1@g" diff --git a/thirdparty/grub-2.04/grub-core/gensymlist.sh b/thirdparty/grub-2.04/grub-core/gensymlist.sh deleted file mode 100644 index 5beaabdd6..000000000 --- a/thirdparty/grub-2.04/grub-core/gensymlist.sh +++ /dev/null @@ -1,73 +0,0 @@ -#! /bin/sh -# -# Copyright (C) 2002,2006,2007,2008,2009,2010 Free Software Foundation, Inc. -# -# This gensymlist.sh.in is free software; the author -# gives unlimited permission to copy and/or distribute it, -# with or without modifications, as long as this notice is preserved. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY, to the extent permitted by law; without -# even the implied warranty of MERCHANTABILITY or FITNESS FOR A -# PARTICULAR PURPOSE. - -cat <. - */ - -EOF - -for i in $*; do - echo "#include <$i>" -done - -cat < sizeof (tab[0])); - for (p = tab; p->name; p++) - grub_dl_register_symbol (p->name, p->addr, p->isfunc, 0); -} -EOF diff --git a/thirdparty/grub-2.04/grub-core/gentrigtables.c b/thirdparty/grub-2.04/grub-core/gentrigtables.c deleted file mode 100644 index fface6efc..000000000 --- a/thirdparty/grub-2.04/grub-core/gentrigtables.c +++ /dev/null @@ -1,57 +0,0 @@ -/* Generate trigonometric function tables. */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2008, 2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#define _GNU_SOURCE 1 - -#include -#include -#include - -int -main (int argc __attribute__ ((unused)), - char **argv __attribute__ ((unused))) -{ - int i; - - printf ("#include \n"); - printf ("#include \n"); - printf ("\n"); - - printf ("/* Under copyright legislature such automated output isn't\n"); - printf ("covered by any copyright. Hence it's public domain. Public\n"); - printf ("domain works can be dual-licenced with any license. */\n"); - printf ("GRUB_MOD_LICENSE (\"GPLv3+\");"); - printf ("GRUB_MOD_DUAL_LICENSE (\"Public Domain\");"); - -#define TAB(op) \ - printf ("const grub_int16_t grub_trig_" #op "tab[] =\n{"); \ - for (i = 0; i < GRUB_TRIG_ANGLE_MAX; i++) \ - { \ - double x = i * 2 * M_PI / GRUB_TRIG_ANGLE_MAX; \ - if (i % 10 == 0) \ - printf ("\n "); \ - printf ("%d,", (int) (round (op (x) * GRUB_TRIG_FRACTION_SCALE))); \ - } \ - printf ("\n};\n") - - TAB(sin); - TAB(cos); - - return 0; -} diff --git a/thirdparty/grub-2.04/grub-core/gettext/gettext.c b/thirdparty/grub-2.04/grub-core/gettext/gettext.c deleted file mode 100644 index 4d02e62c1..000000000 --- a/thirdparty/grub-2.04/grub-core/gettext/gettext.c +++ /dev/null @@ -1,542 +0,0 @@ -/* gettext.c - gettext module */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -/* - .mo file information from: - http://www.gnu.org/software/autoconf/manual/gettext/MO-Files.html . -*/ - -static const char *(*grub_gettext_original) (const char *s); - -struct grub_gettext_msg -{ - char *name; - char *translated; -}; - -struct header -{ - grub_uint32_t magic; - grub_uint32_t version; - grub_uint32_t number_of_strings; - grub_uint32_t offset_original; - grub_uint32_t offset_translation; -}; - -struct string_descriptor -{ - grub_uint32_t length; - grub_uint32_t offset; -}; - -struct grub_gettext_context -{ - grub_file_t fd_mo; - grub_off_t grub_gettext_offset_original; - grub_off_t grub_gettext_offset_translation; - grub_size_t grub_gettext_max; - int grub_gettext_max_log; - struct grub_gettext_msg *grub_gettext_msg_list; -}; - -static struct grub_gettext_context main_context, secondary_context; - -#define MO_MAGIC_NUMBER 0x950412de - -static grub_err_t -grub_gettext_pread (grub_file_t file, void *buf, grub_size_t len, - grub_off_t offset) -{ - if (len == 0) - return GRUB_ERR_NONE; - if (grub_file_seek (file, offset) == (grub_off_t) - 1) - return grub_errno; - if (grub_file_read (file, buf, len) != (grub_ssize_t) len) - { - if (!grub_errno) - grub_error (GRUB_ERR_READ_ERROR, N_("premature end of file")); - return grub_errno; - } - return GRUB_ERR_NONE; -} - -static char * -grub_gettext_getstr_from_position (struct grub_gettext_context *ctx, - grub_off_t off, - grub_size_t position) -{ - grub_off_t internal_position; - grub_size_t length; - grub_off_t offset; - char *translation; - struct string_descriptor desc; - grub_err_t err; - - internal_position = (off + position * sizeof (desc)); - - err = grub_gettext_pread (ctx->fd_mo, (char *) &desc, - sizeof (desc), internal_position); - if (err) - return NULL; - length = grub_cpu_to_le32 (desc.length); - offset = grub_cpu_to_le32 (desc.offset); - - translation = grub_malloc (length + 1); - if (!translation) - return NULL; - - err = grub_gettext_pread (ctx->fd_mo, translation, length, offset); - if (err) - { - grub_free (translation); - return NULL; - } - translation[length] = '\0'; - - return translation; -} - -static const char * -grub_gettext_gettranslation_from_position (struct grub_gettext_context *ctx, - grub_size_t position) -{ - if (!ctx->grub_gettext_msg_list[position].translated) - ctx->grub_gettext_msg_list[position].translated - = grub_gettext_getstr_from_position (ctx, - ctx->grub_gettext_offset_translation, - position); - return ctx->grub_gettext_msg_list[position].translated; -} - -static const char * -grub_gettext_getstring_from_position (struct grub_gettext_context *ctx, - grub_size_t position) -{ - if (!ctx->grub_gettext_msg_list[position].name) - ctx->grub_gettext_msg_list[position].name - = grub_gettext_getstr_from_position (ctx, - ctx->grub_gettext_offset_original, - position); - return ctx->grub_gettext_msg_list[position].name; -} - -static const char * -grub_gettext_translate_real (struct grub_gettext_context *ctx, - const char *orig) -{ - grub_size_t current = 0; - int i; - const char *current_string; - static int depth = 0; - - if (!ctx->grub_gettext_msg_list || !ctx->fd_mo) - return NULL; - - /* Shouldn't happen. Just a precaution if our own code - calls gettext somehow. */ - if (depth > 2) - return NULL; - depth++; - - /* Make sure we can use grub_gettext_translate for error messages. Push - active error message to error stack and reset error message. */ - grub_error_push (); - - for (i = ctx->grub_gettext_max_log; i >= 0; i--) - { - grub_size_t test; - int cmp; - - test = current | (1 << i); - if (test >= ctx->grub_gettext_max) - continue; - - current_string = grub_gettext_getstring_from_position (ctx, test); - - if (!current_string) - { - grub_errno = GRUB_ERR_NONE; - grub_error_pop (); - depth--; - return NULL; - } - - /* Search by bisection. */ - cmp = grub_strcmp (current_string, orig); - if (cmp <= 0) - current = test; - if (cmp == 0) - { - const char *ret = 0; - ret = grub_gettext_gettranslation_from_position (ctx, current); - if (!ret) - { - grub_errno = GRUB_ERR_NONE; - grub_error_pop (); - depth--; - return NULL; - } - grub_error_pop (); - depth--; - return ret; - } - } - - if (current == 0 && ctx->grub_gettext_max != 0) - { - current_string = grub_gettext_getstring_from_position (ctx, 0); - - if (!current_string) - { - grub_errno = GRUB_ERR_NONE; - grub_error_pop (); - depth--; - return NULL; - } - - if (grub_strcmp (current_string, orig) == 0) - { - const char *ret = 0; - ret = grub_gettext_gettranslation_from_position (ctx, current); - if (!ret) - { - grub_errno = GRUB_ERR_NONE; - grub_error_pop (); - depth--; - return NULL; - } - grub_error_pop (); - depth--; - return ret; - } - } - - grub_error_pop (); - depth--; - return NULL; -} - -static const char * -grub_gettext_translate (const char *orig) -{ - const char *ret; - if (orig[0] == 0) - return orig; - - ret = grub_gettext_translate_real (&main_context, orig); - if (ret) - return ret; - ret = grub_gettext_translate_real (&secondary_context, orig); - if (ret) - return ret; - return orig; -} - -static void -grub_gettext_delete_list (struct grub_gettext_context *ctx) -{ - struct grub_gettext_msg *l = ctx->grub_gettext_msg_list; - grub_size_t i; - - if (!l) - return; - ctx->grub_gettext_msg_list = 0; - for (i = 0; i < ctx->grub_gettext_max; i++) - grub_free (l[i].name); - /* Don't delete the translated message because could be in use. */ - grub_free (l); - if (ctx->fd_mo) - grub_file_close (ctx->fd_mo); - ctx->fd_mo = 0; - grub_memset (ctx, 0, sizeof (*ctx)); -} - -/* This is similar to grub_file_open. */ -static grub_err_t -grub_mofile_open (struct grub_gettext_context *ctx, - const char *filename) -{ - struct header head; - grub_err_t err; - grub_file_t fd; - - /* Using fd_mo and not another variable because - it's needed for grub_gettext_get_info. */ - - fd = grub_file_open (filename, GRUB_FILE_TYPE_GETTEXT_CATALOG); - - if (!fd) - return grub_errno; - - err = grub_gettext_pread (fd, &head, sizeof (head), 0); - if (err) - { - grub_file_close (fd); - return err; - } - - if (head.magic != grub_cpu_to_le32_compile_time (MO_MAGIC_NUMBER)) - { - grub_file_close (fd); - return grub_error (GRUB_ERR_BAD_FILE_TYPE, - "mo: invalid mo magic in file: %s", filename); - } - - if (head.version != 0) - { - grub_file_close (fd); - return grub_error (GRUB_ERR_BAD_FILE_TYPE, - "mo: invalid mo version in file: %s", filename); - } - - ctx->grub_gettext_offset_original = grub_le_to_cpu32 (head.offset_original); - ctx->grub_gettext_offset_translation = grub_le_to_cpu32 (head.offset_translation); - ctx->grub_gettext_max = grub_le_to_cpu32 (head.number_of_strings); - for (ctx->grub_gettext_max_log = 0; ctx->grub_gettext_max >> ctx->grub_gettext_max_log; - ctx->grub_gettext_max_log++); - - ctx->grub_gettext_msg_list = grub_zalloc (ctx->grub_gettext_max - * sizeof (ctx->grub_gettext_msg_list[0])); - if (!ctx->grub_gettext_msg_list) - { - grub_file_close (fd); - return grub_errno; - } - ctx->fd_mo = fd; - if (grub_gettext != grub_gettext_translate) - { - grub_gettext_original = grub_gettext; - grub_gettext = grub_gettext_translate; - } - return 0; -} - -/* Returning grub_file_t would be more natural, but grub_mofile_open assigns - to fd_mo anyway ... */ -static grub_err_t -grub_mofile_open_lang (struct grub_gettext_context *ctx, - const char *part1, const char *part2, const char *locale) -{ - char *mo_file; - grub_err_t err; - - /* mo_file e.g.: /boot/grub/locale/ca.mo */ - - mo_file = grub_xasprintf ("%s%s/%s.mo", part1, part2, locale); - if (!mo_file) - return grub_errno; - - err = grub_mofile_open (ctx, mo_file); - grub_free (mo_file); - - /* Will try adding .gz as well. */ - if (err) - { - grub_errno = GRUB_ERR_NONE; - mo_file = grub_xasprintf ("%s%s/%s.mo.gz", part1, part2, locale); - if (!mo_file) - return grub_errno; - err = grub_mofile_open (ctx, mo_file); - grub_free (mo_file); - } - - /* Will try adding .gmo as well. */ - if (err) - { - grub_errno = GRUB_ERR_NONE; - mo_file = grub_xasprintf ("%s%s/%s.gmo", part1, part2, locale); - if (!mo_file) - return grub_errno; - err = grub_mofile_open (ctx, mo_file); - grub_free (mo_file); - } - - return err; -} - -static grub_err_t -grub_gettext_init_ext (struct grub_gettext_context *ctx, - const char *locale, - const char *locale_dir, const char *prefix) -{ - const char *part1, *part2; - grub_err_t err; - - grub_gettext_delete_list (ctx); - - if (!locale || locale[0] == 0) - return 0; - - part1 = locale_dir; - part2 = ""; - if (!part1 || part1[0] == 0) - { - part1 = prefix; - part2 = "/locale"; - } - - if (!part1 || part1[0] == 0) - return 0; - - err = grub_mofile_open_lang (ctx, part1, part2, locale); - - /* ll_CC didn't work, so try ll. */ - if (err) - { - char *lang = grub_strdup (locale); - char *underscore = lang ? grub_strchr (lang, '_') : 0; - - if (underscore) - { - *underscore = '\0'; - grub_errno = GRUB_ERR_NONE; - err = grub_mofile_open_lang (ctx, part1, part2, lang); - } - - grub_free (lang); - } - - if (locale[0] == 'e' && locale[1] == 'n' - && (locale[2] == '\0' || locale[2] == '_')) - grub_errno = err = GRUB_ERR_NONE; - return err; -} - -static char * -grub_gettext_env_write_lang (struct grub_env_var *var - __attribute__ ((unused)), const char *val) -{ - grub_err_t err; - err = grub_gettext_init_ext (&main_context, val, grub_env_get ("locale_dir"), - grub_env_get ("prefix")); - if (err) - grub_print_error (); - - err = grub_gettext_init_ext (&secondary_context, val, - grub_env_get ("secondary_locale_dir"), 0); - if (err) - grub_print_error (); - - return grub_strdup (val); -} - -void -grub_gettext_reread_prefix (const char *val) -{ - grub_err_t err; - err = grub_gettext_init_ext (&main_context, grub_env_get ("lang"), - grub_env_get ("locale_dir"), - val); - if (err) - grub_print_error (); -} - -static char * -read_main (struct grub_env_var *var - __attribute__ ((unused)), const char *val) -{ - grub_err_t err; - err = grub_gettext_init_ext (&main_context, grub_env_get ("lang"), val, - grub_env_get ("prefix")); - if (err) - grub_print_error (); - return grub_strdup (val); -} - -static char * -read_secondary (struct grub_env_var *var - __attribute__ ((unused)), const char *val) -{ - grub_err_t err; - err = grub_gettext_init_ext (&secondary_context, grub_env_get ("lang"), val, - 0); - if (err) - grub_print_error (); - - return grub_strdup (val); -} - -static grub_err_t -grub_cmd_translate (grub_command_t cmd __attribute__ ((unused)), - int argc, char **args) -{ - if (argc != 1) - return grub_error (GRUB_ERR_BAD_ARGUMENT, N_("one argument expected")); - - const char *translation; - translation = grub_gettext_translate (args[0]); - grub_printf ("%s\n", translation); - return 0; -} - -GRUB_MOD_INIT (gettext) -{ - const char *lang; - grub_err_t err; - - lang = grub_env_get ("lang"); - - err = grub_gettext_init_ext (&main_context, lang, grub_env_get ("locale_dir"), - grub_env_get ("prefix")); - if (err) - grub_print_error (); - err = grub_gettext_init_ext (&secondary_context, lang, - grub_env_get ("secondary_locale_dir"), 0); - if (err) - grub_print_error (); - - grub_register_variable_hook ("locale_dir", NULL, read_main); - grub_register_variable_hook ("secondary_locale_dir", NULL, read_secondary); - - grub_register_command_p1 ("gettext", grub_cmd_translate, - N_("STRING"), - /* TRANSLATORS: It refers to passing the string through gettext. - So it's "translate" in the same meaning as in what you're - doing now. - */ - N_("Translates the string with the current settings.")); - - /* Reload .mo file information if lang changes. */ - grub_register_variable_hook ("lang", NULL, grub_gettext_env_write_lang); - - /* Preserve hooks after context changes. */ - grub_env_export ("lang"); - grub_env_export ("locale_dir"); - grub_env_export ("secondary_locale_dir"); -} - -GRUB_MOD_FINI (gettext) -{ - grub_gettext_delete_list (&main_context); - grub_gettext_delete_list (&secondary_context); - - grub_gettext = grub_gettext_original; -} diff --git a/thirdparty/grub-2.04/grub-core/gfxmenu/font.c b/thirdparty/grub-2.04/grub-core/gfxmenu/font.c deleted file mode 100644 index 756c24f20..000000000 --- a/thirdparty/grub-2.04/grub-core/gfxmenu/font.c +++ /dev/null @@ -1,116 +0,0 @@ -/* font.c - Font API and font file loader. */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2003,2005,2006,2007,2008,2009,2010 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -/* Draw a UTF-8 string of text on the current video render target. - The x coordinate specifies the starting x position for the first character, - while the y coordinate specifies the baseline position. - If the string contains a character that FONT does not contain, then - a glyph from another loaded font may be used instead. */ -grub_err_t -grub_font_draw_string (const char *str, grub_font_t font, - grub_video_color_t color, - int left_x, int baseline_y) -{ - int x; - grub_uint32_t *logical; - grub_ssize_t logical_len, visual_len; - struct grub_unicode_glyph *visual, *ptr; - grub_err_t err; - - logical_len = grub_utf8_to_ucs4_alloc (str, &logical, 0); - if (logical_len < 0) - return grub_errno; - - visual_len = grub_bidi_logical_to_visual (logical, logical_len, &visual, - 0, 0, 0, 0, 0, 0, 0); - grub_free (logical); - if (visual_len < 0) - return grub_errno; - - err = GRUB_ERR_NONE; - for (ptr = visual, x = left_x; ptr < visual + visual_len; ptr++) - { - struct grub_font_glyph *glyph; - glyph = grub_font_construct_glyph (font, ptr); - if (!glyph) - { - err = grub_errno; - goto out; - } - err = grub_font_draw_glyph (glyph, color, x, baseline_y); - if (err) - goto out; - x += glyph->device_width; - } - -out: - for (ptr = visual; ptr < visual + visual_len; ptr++) - grub_unicode_destroy_glyph (ptr); - grub_free (visual); - - return err; -} - -/* Get the width in pixels of the specified UTF-8 string, when rendered in - in the specified font (but falling back on other fonts for glyphs that - are missing). */ -int -grub_font_get_string_width (grub_font_t font, const char *str) -{ - int width = 0; - grub_uint32_t *ptr; - grub_ssize_t logical_len; - grub_uint32_t *logical; - - logical_len = grub_utf8_to_ucs4_alloc (str, &logical, 0); - if (logical_len < 0) - { - grub_errno = GRUB_ERR_NONE; - return 0; - } - - for (ptr = logical; ptr < logical + logical_len;) - { - struct grub_unicode_glyph glyph; - - ptr += grub_unicode_aglomerate_comb (ptr, - logical_len - (ptr - logical), - &glyph); - width += grub_font_get_constructed_device_width (font, &glyph); - - grub_unicode_destroy_glyph (&glyph); - } - grub_free (logical); - - return width; -} diff --git a/thirdparty/grub-2.04/grub-core/gfxmenu/gfxmenu.c b/thirdparty/grub-2.04/grub-core/gfxmenu/gfxmenu.c deleted file mode 100644 index 8a17dda2c..000000000 --- a/thirdparty/grub-2.04/grub-core/gfxmenu/gfxmenu.c +++ /dev/null @@ -1,150 +0,0 @@ -/* gfxmenu.c - Graphical menu interface controller. */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2008 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -static grub_gfxmenu_view_t cached_view; - -static void -grub_gfxmenu_viewer_fini (void *data __attribute__ ((unused))) -{ -} - -/* FIXME: Previously 't' changed to text menu is it necessary? */ -static grub_err_t -grub_gfxmenu_try (int entry, grub_menu_t menu, int nested) -{ - grub_gfxmenu_view_t view = NULL; - const char *theme_path; - char *full_theme_path = 0; - struct grub_menu_viewer *instance; - grub_err_t err; - struct grub_video_mode_info mode_info; - - theme_path = grub_env_get ("theme"); - if (! theme_path) - return grub_error (GRUB_ERR_FILE_NOT_FOUND, N_("variable `%s' isn't set"), - "theme"); - - err = grub_video_get_info (&mode_info); - if (err) - return err; - - instance = grub_zalloc (sizeof (*instance)); - if (!instance) - return grub_errno; - - if (theme_path[0] != '/' && theme_path[0] != '(') - { - const char *prefix; - prefix = grub_env_get ("prefix"); - full_theme_path = grub_xasprintf ("%s/themes/%s", - prefix, - theme_path); - } - - if (!cached_view || grub_strcmp (cached_view->theme_path, - full_theme_path ? : theme_path) != 0 - || cached_view->screen.width != mode_info.width - || cached_view->screen.height != mode_info.height) - { - grub_gfxmenu_view_destroy (cached_view); - /* Create the view. */ - cached_view = grub_gfxmenu_view_new (full_theme_path ? : theme_path, - mode_info.width, - mode_info.height); - } - grub_free (full_theme_path); - - if (! cached_view) - { - grub_free (instance); - return grub_errno; - } - - view = cached_view; - - view->double_repaint = (mode_info.mode_type - & GRUB_VIDEO_MODE_TYPE_DOUBLE_BUFFERED) - && !(mode_info.mode_type & GRUB_VIDEO_MODE_TYPE_UPDATING_SWAP); - view->selected = entry; - view->menu = menu; - view->nested = nested; - view->first_timeout = -1; - - grub_video_set_viewport (0, 0, mode_info.width, mode_info.height); - if (view->double_repaint) - { - grub_video_swap_buffers (); - grub_video_set_viewport (0, 0, mode_info.width, mode_info.height); - } - - grub_gfxmenu_view_draw (view); - - instance->data = view; - instance->set_chosen_entry = grub_gfxmenu_set_chosen_entry; - instance->fini = grub_gfxmenu_viewer_fini; - instance->print_timeout = grub_gfxmenu_print_timeout; - instance->clear_timeout = grub_gfxmenu_clear_timeout; - - grub_menu_register_viewer (instance); - - return GRUB_ERR_NONE; -} - -GRUB_MOD_INIT (gfxmenu) -{ - struct grub_term_output *term; - - FOR_ACTIVE_TERM_OUTPUTS(term) - if (grub_gfxmenu_try_hook && term->fullscreen) - { - term->fullscreen (); - break; - } - - grub_gfxmenu_try_hook = grub_gfxmenu_try; -} - -GRUB_MOD_FINI (gfxmenu) -{ - grub_gfxmenu_view_destroy (cached_view); - grub_gfxmenu_try_hook = NULL; -} diff --git a/thirdparty/grub-2.04/grub-core/gfxmenu/gui_box.c b/thirdparty/grub-2.04/grub-core/gfxmenu/gui_box.c deleted file mode 100644 index 37bab3fbb..000000000 --- a/thirdparty/grub-2.04/grub-core/gfxmenu/gui_box.c +++ /dev/null @@ -1,428 +0,0 @@ -/* gui_box.c - GUI container that stack components. */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2008,2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include - -struct component_node -{ - grub_gui_component_t component; - struct component_node *next; - struct component_node *prev; -}; - -typedef struct grub_gui_box *grub_gui_box_t; - -typedef void (*layout_func_t) (grub_gui_box_t self, int modify_layout, - unsigned *minimal_width, - unsigned *minimal_height); - -struct grub_gui_box -{ - struct grub_gui_container container; - - grub_gui_container_t parent; - grub_video_rect_t bounds; - char *id; - - /* Doubly linked list of components with dummy head & tail nodes. */ - struct component_node chead; - struct component_node ctail; - - /* The layout function: differs for vertical and horizontal boxes. */ - layout_func_t layout_func; -}; - -static void -box_destroy (void *vself) -{ - grub_gui_box_t self = vself; - struct component_node *cur; - struct component_node *next; - for (cur = self->chead.next; cur != &self->ctail; cur = next) - { - /* Copy the 'next' pointer, since we need it for the next iteration, - and we're going to free the memory it is stored in. */ - next = cur->next; - /* Destroy the child component. */ - cur->component->ops->destroy (cur->component); - /* Free the linked list node. */ - grub_free (cur); - } - grub_free (self); -} - -static const char * -box_get_id (void *vself) -{ - grub_gui_box_t self = vself; - return self->id; -} - -static int -box_is_instance (void *vself __attribute__((unused)), const char *type) -{ - return (grub_strcmp (type, "component") == 0 - || grub_strcmp (type, "container") == 0); -} - -static void -layout_horizontally (grub_gui_box_t self, int modify_layout, - unsigned *min_width, unsigned *min_height) -{ - /* Start at the left (chead) and set the x coordinates as we go right. */ - /* All components have their width set to the box's width. */ - - struct component_node *cur; - unsigned w = 0, mwfrac = 0, h = 0, x = 0; - grub_fixed_signed_t wfrac = 0; - int bogus_frac = 0; - - for (cur = self->chead.next; cur != &self->ctail; cur = cur->next) - { - grub_gui_component_t c = cur->component; - unsigned mw = 0, mh = 0; - - if (c->ops->get_minimal_size) - c->ops->get_minimal_size (c, &mw, &mh); - - if (c->h > (signed) h) - h = c->h; - if (mh > h) - h = mh; - wfrac += c->wfrac; - w += c->w; - if (mw - c->w > 0) - mwfrac += mw - c->w; - } - if (wfrac > GRUB_FIXED_1 || (w > 0 && wfrac == GRUB_FIXED_1)) - bogus_frac = 1; - - if (min_width) - { - if (wfrac < GRUB_FIXED_1) - *min_width = grub_fixed_sfs_divide (w, GRUB_FIXED_1 - wfrac); - else - *min_width = w; - if (*min_width < w + mwfrac) - *min_width = w + mwfrac; - } - if (min_height) - *min_height = h; - - if (!modify_layout) - return; - - for (cur = self->chead.next; cur != &self->ctail; cur = cur->next) - { - grub_video_rect_t r; - grub_gui_component_t c = cur->component; - unsigned mw = 0, mh = 0; - - r.x = x; - r.y = 0; - r.height = h; - - if (c->ops->get_minimal_size) - c->ops->get_minimal_size (c, &mw, &mh); - - r.width = c->w; - if (!bogus_frac) - r.width += grub_fixed_sfs_multiply (self->bounds.width, c->wfrac); - - if (r.width < mw) - r.width = mw; - - c->ops->set_bounds (c, &r); - - x += r.width; - } -} - -static void -layout_vertically (grub_gui_box_t self, int modify_layout, - unsigned *min_width, unsigned *min_height) -{ - /* Start at the top (chead) and set the y coordinates as we go rdown. */ - /* All components have their height set to the box's height. */ - - struct component_node *cur; - unsigned h = 0, mhfrac = 0, w = 0, y = 0; - grub_fixed_signed_t hfrac = 0; - int bogus_frac = 0; - - for (cur = self->chead.next; cur != &self->ctail; cur = cur->next) - { - grub_gui_component_t c = cur->component; - unsigned mw = 0, mh = 0; - - if (c->ops->get_minimal_size) - c->ops->get_minimal_size (c, &mw, &mh); - - if (c->w > (signed) w) - w = c->w; - if (mw > w) - w = mw; - hfrac += c->hfrac; - h += c->h; - if (mh - c->h > 0) - mhfrac += mh - c->h; - } - if (hfrac > GRUB_FIXED_1 || (h > 0 && hfrac == GRUB_FIXED_1)) - bogus_frac = 1; - - if (min_height) - { - if (hfrac < GRUB_FIXED_1) - *min_height = grub_fixed_sfs_divide (h, GRUB_FIXED_1 - hfrac); - else - *min_height = h; - if (*min_height < h + mhfrac) - *min_height = h + mhfrac; - } - if (min_width) - *min_width = w; - - if (!modify_layout) - return; - - for (cur = self->chead.next; cur != &self->ctail; cur = cur->next) - { - grub_video_rect_t r; - grub_gui_component_t c = cur->component; - unsigned mw = 0, mh = 0; - - r.x = 0; - r.y = y; - r.width = w; - - if (c->ops->get_minimal_size) - c->ops->get_minimal_size (c, &mw, &mh); - - r.height = c->h; - if (!bogus_frac) - r.height += grub_fixed_sfs_multiply (self->bounds.height, c->hfrac); - - if (r.height < mh) - r.height = mh; - - c->ops->set_bounds (c, &r); - - y += r.height; - } -} - -static void -box_paint (void *vself, const grub_video_rect_t *region) -{ - grub_gui_box_t self = vself; - - struct component_node *cur; - grub_video_rect_t vpsave; - - grub_video_area_status_t box_area_status; - grub_video_get_area_status (&box_area_status); - - grub_gui_set_viewport (&self->bounds, &vpsave); - for (cur = self->chead.next; cur != &self->ctail; cur = cur->next) - { - grub_gui_component_t comp = cur->component; - grub_video_rect_t r; - comp->ops->get_bounds(comp, &r); - - if (!grub_video_have_common_points (region, &r)) - continue; - - /* Paint the child. */ - if (box_area_status == GRUB_VIDEO_AREA_ENABLED - && grub_video_bounds_inside_region (&r, region)) - grub_video_set_area_status (GRUB_VIDEO_AREA_DISABLED); - comp->ops->paint (comp, region); - if (box_area_status == GRUB_VIDEO_AREA_ENABLED) - grub_video_set_area_status (GRUB_VIDEO_AREA_ENABLED); - } - grub_gui_restore_viewport (&vpsave); -} - -static void -box_set_parent (void *vself, grub_gui_container_t parent) -{ - grub_gui_box_t self = vself; - self->parent = parent; -} - -static grub_gui_container_t -box_get_parent (void *vself) -{ - grub_gui_box_t self = vself; - return self->parent; -} - -static void -box_set_bounds (void *vself, const grub_video_rect_t *bounds) -{ - grub_gui_box_t self = vself; - self->bounds = *bounds; - self->layout_func (self, 1, 0, 0); /* Relayout the children. */ -} - -static void -box_get_bounds (void *vself, grub_video_rect_t *bounds) -{ - grub_gui_box_t self = vself; - *bounds = self->bounds; -} - -/* The box's preferred size is based on the preferred sizes - of its children. */ -static void -box_get_minimal_size (void *vself, unsigned *width, unsigned *height) -{ - grub_gui_box_t self = vself; - self->layout_func (self, 0, width, height); /* Just calculate the size. */ -} - -static grub_err_t -box_set_property (void *vself, const char *name, const char *value) -{ - grub_gui_box_t self = vself; - if (grub_strcmp (name, "id") == 0) - { - grub_free (self->id); - if (value) - { - self->id = grub_strdup (value); - if (! self->id) - return grub_errno; - } - else - self->id = 0; - } - - return grub_errno; -} - -static void -box_add (void *vself, grub_gui_component_t comp) -{ - grub_gui_box_t self = vself; - struct component_node *node; - node = grub_malloc (sizeof (*node)); - if (! node) - return; /* Note: probably should handle the error. */ - node->component = comp; - /* Insert the node before the tail. */ - node->prev = self->ctail.prev; - node->prev->next = node; - node->next = &self->ctail; - node->next->prev = node; - - comp->ops->set_parent (comp, (grub_gui_container_t) self); - self->layout_func (self, 1, 0, 0); /* Relayout the children. */ -} - -static void -box_remove (void *vself, grub_gui_component_t comp) -{ - grub_gui_box_t self = vself; - struct component_node *cur; - for (cur = self->chead.next; cur != &self->ctail; cur = cur->next) - { - if (cur->component == comp) - { - /* Unlink 'cur' from the list. */ - cur->prev->next = cur->next; - cur->next->prev = cur->prev; - /* Free the node's memory (but don't destroy the component). */ - grub_free (cur); - /* Must not loop again, since 'cur' would be dereferenced! */ - return; - } - } -} - -static void -box_iterate_children (void *vself, - grub_gui_component_callback cb, void *userdata) -{ - grub_gui_box_t self = vself; - struct component_node *cur; - for (cur = self->chead.next; cur != &self->ctail; cur = cur->next) - cb (cur->component, userdata); -} - -static struct grub_gui_component_ops box_comp_ops = - { - .destroy = box_destroy, - .get_id = box_get_id, - .is_instance = box_is_instance, - .paint = box_paint, - .set_parent = box_set_parent, - .get_parent = box_get_parent, - .set_bounds = box_set_bounds, - .get_bounds = box_get_bounds, - .get_minimal_size = box_get_minimal_size, - .set_property = box_set_property - }; - -static struct grub_gui_container_ops box_ops = -{ - .add = box_add, - .remove = box_remove, - .iterate_children = box_iterate_children -}; - -/* Box constructor. Specify the appropriate layout function to create - a horizontal or vertical stacking box. */ -static grub_gui_box_t -box_new (layout_func_t layout_func) -{ - grub_gui_box_t box; - box = grub_zalloc (sizeof (*box)); - if (! box) - return 0; - box->container.ops = &box_ops; - box->container.component.ops = &box_comp_ops; - box->chead.next = &box->ctail; - box->ctail.prev = &box->chead; - box->layout_func = layout_func; - return box; -} - -/* Create a new container that stacks its child components horizontally, - from left to right. Each child get a width corresponding to its - preferred width. The height of each child is set the maximum of the - preferred heights of all children. */ -grub_gui_container_t -grub_gui_hbox_new (void) -{ - return (grub_gui_container_t) box_new (layout_horizontally); -} - -/* Create a new container that stacks its child components verticallyj, - from top to bottom. Each child get a height corresponding to its - preferred height. The width of each child is set the maximum of the - preferred widths of all children. */ -grub_gui_container_t -grub_gui_vbox_new (void) -{ - return (grub_gui_container_t) box_new (layout_vertically); -} diff --git a/thirdparty/grub-2.04/grub-core/gfxmenu/gui_canvas.c b/thirdparty/grub-2.04/grub-core/gfxmenu/gui_canvas.c deleted file mode 100644 index a05491242..000000000 --- a/thirdparty/grub-2.04/grub-core/gfxmenu/gui_canvas.c +++ /dev/null @@ -1,278 +0,0 @@ -/* gui_canvas.c - GUI container allowing manually placed components. */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2008,2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include - -/* TODO Add layering so that components can be properly overlaid. */ - -struct component_node -{ - grub_gui_component_t component; - struct component_node *next; -}; - -struct grub_gui_canvas -{ - struct grub_gui_container container; - - grub_gui_container_t parent; - grub_video_rect_t bounds; - char *id; - /* Component list (dummy head node). */ - struct component_node components; -}; - -typedef struct grub_gui_canvas *grub_gui_canvas_t; - -static void -canvas_destroy (void *vself) -{ - grub_gui_canvas_t self = vself; - struct component_node *cur; - struct component_node *next; - for (cur = self->components.next; cur; cur = next) - { - /* Copy the 'next' pointer, since we need it for the next iteration, - and we're going to free the memory it is stored in. */ - next = cur->next; - /* Destroy the child component. */ - cur->component->ops->destroy (cur->component); - /* Free the linked list node. */ - grub_free (cur); - } - grub_free (self); -} - -static const char * -canvas_get_id (void *vself) -{ - grub_gui_canvas_t self = vself; - return self->id; -} - -static int -canvas_is_instance (void *vself __attribute__((unused)), const char *type) -{ - return (grub_strcmp (type, "component") == 0 - || grub_strcmp (type, "container") == 0); -} - -static void -canvas_paint (void *vself, const grub_video_rect_t *region) -{ - grub_gui_canvas_t self = vself; - - struct component_node *cur; - grub_video_rect_t vpsave; - - grub_video_area_status_t canvas_area_status; - grub_video_get_area_status (&canvas_area_status); - - grub_gui_set_viewport (&self->bounds, &vpsave); - for (cur = self->components.next; cur; cur = cur->next) - { - grub_video_rect_t r; - grub_gui_component_t comp; - signed x, y, w, h; - - comp = cur->component; - - w = grub_fixed_sfs_multiply (self->bounds.width, comp->wfrac) + comp->w; - h = grub_fixed_sfs_multiply (self->bounds.height, comp->hfrac) + comp->h; - x = grub_fixed_sfs_multiply (self->bounds.width, comp->xfrac) + comp->x; - y = grub_fixed_sfs_multiply (self->bounds.height, comp->yfrac) + comp->y; - - if (comp->ops->get_minimal_size) - { - unsigned mw; - unsigned mh; - comp->ops->get_minimal_size (comp, &mw, &mh); - if (w < (signed) mw) - w = mw; - if (h < (signed) mh) - h = mh; - } - - /* Sanity checks. */ - if (w <= 0) - w = 32; - if (h <= 0) - h = 32; - - if (x >= (signed) self->bounds.width) - x = self->bounds.width - 32; - if (y >= (signed) self->bounds.height) - y = self->bounds.height - 32; - - if (x < 0) - x = 0; - if (y < 0) - y = 0; - - if (x + w >= (signed) self->bounds.width) - w = self->bounds.width - x; - if (y + h >= (signed) self->bounds.height) - h = self->bounds.height - y; - - r.x = x; - r.y = y; - r.width = w; - r.height = h; - comp->ops->set_bounds (comp, &r); - - if (!grub_video_have_common_points (region, &r)) - continue; - - /* Paint the child. */ - if (canvas_area_status == GRUB_VIDEO_AREA_ENABLED - && grub_video_bounds_inside_region (&r, region)) - grub_video_set_area_status (GRUB_VIDEO_AREA_DISABLED); - comp->ops->paint (comp, region); - if (canvas_area_status == GRUB_VIDEO_AREA_ENABLED) - grub_video_set_area_status (GRUB_VIDEO_AREA_ENABLED); - } - grub_gui_restore_viewport (&vpsave); -} - -static void -canvas_set_parent (void *vself, grub_gui_container_t parent) -{ - grub_gui_canvas_t self = vself; - self->parent = parent; -} - -static grub_gui_container_t -canvas_get_parent (void *vself) -{ - grub_gui_canvas_t self = vself; - return self->parent; -} - -static void -canvas_set_bounds (void *vself, const grub_video_rect_t *bounds) -{ - grub_gui_canvas_t self = vself; - self->bounds = *bounds; -} - -static void -canvas_get_bounds (void *vself, grub_video_rect_t *bounds) -{ - grub_gui_canvas_t self = vself; - *bounds = self->bounds; -} - -static grub_err_t -canvas_set_property (void *vself, const char *name, const char *value) -{ - grub_gui_canvas_t self = vself; - if (grub_strcmp (name, "id") == 0) - { - grub_free (self->id); - if (value) - { - self->id = grub_strdup (value); - if (! self->id) - return grub_errno; - } - else - self->id = 0; - } - return grub_errno; -} - -static void -canvas_add (void *vself, grub_gui_component_t comp) -{ - grub_gui_canvas_t self = vself; - struct component_node *node; - node = grub_malloc (sizeof (*node)); - if (! node) - return; /* Note: probably should handle the error. */ - node->component = comp; - node->next = self->components.next; - self->components.next = node; - comp->ops->set_parent (comp, (grub_gui_container_t) self); -} - -static void -canvas_remove (void *vself, grub_gui_component_t comp) -{ - grub_gui_canvas_t self = vself; - struct component_node *cur; - struct component_node *prev; - prev = &self->components; - for (cur = self->components.next; cur; prev = cur, cur = cur->next) - { - if (cur->component == comp) - { - /* Unlink 'cur' from the list. */ - prev->next = cur->next; - /* Free the node's memory (but don't destroy the component). */ - grub_free (cur); - /* Must not loop again, since 'cur' would be dereferenced! */ - return; - } - } -} - -static void -canvas_iterate_children (void *vself, - grub_gui_component_callback cb, void *userdata) -{ - grub_gui_canvas_t self = vself; - struct component_node *cur; - for (cur = self->components.next; cur; cur = cur->next) - cb (cur->component, userdata); -} - -static struct grub_gui_component_ops canvas_comp_ops = -{ - .destroy = canvas_destroy, - .get_id = canvas_get_id, - .is_instance = canvas_is_instance, - .paint = canvas_paint, - .set_parent = canvas_set_parent, - .get_parent = canvas_get_parent, - .set_bounds = canvas_set_bounds, - .get_bounds = canvas_get_bounds, - .set_property = canvas_set_property -}; - -static struct grub_gui_container_ops canvas_ops = -{ - .add = canvas_add, - .remove = canvas_remove, - .iterate_children = canvas_iterate_children -}; - -grub_gui_container_t -grub_gui_canvas_new (void) -{ - grub_gui_canvas_t canvas; - canvas = grub_zalloc (sizeof (*canvas)); - if (! canvas) - return 0; - canvas->container.ops = &canvas_ops; - canvas->container.component.ops = &canvas_comp_ops; - return (grub_gui_container_t) canvas; -} diff --git a/thirdparty/grub-2.04/grub-core/gfxmenu/gui_circular_progress.c b/thirdparty/grub-2.04/grub-core/gfxmenu/gui_circular_progress.c deleted file mode 100644 index 354dd7b73..000000000 --- a/thirdparty/grub-2.04/grub-core/gfxmenu/gui_circular_progress.c +++ /dev/null @@ -1,331 +0,0 @@ -/* gui_circular_process.c - GUI circular progress indicator component. */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2008,2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include -#include - -struct grub_gui_circular_progress -{ - struct grub_gui_progress progress; - - grub_gui_container_t parent; - grub_video_rect_t bounds; - char *id; - int visible; - int start; - int end; - int value; - unsigned num_ticks; - int start_angle; - int ticks_disappear; - char *theme_dir; - int need_to_load_pixmaps; - char *center_file; - char *tick_file; - struct grub_video_bitmap *center_bitmap; - struct grub_video_bitmap *tick_bitmap; -}; - -typedef struct grub_gui_circular_progress *circular_progress_t; - -static void -circprog_destroy (void *vself) -{ - circular_progress_t self = vself; - grub_gfxmenu_timeout_unregister ((grub_gui_component_t) self); - grub_free (self); -} - -static const char * -circprog_get_id (void *vself) -{ - circular_progress_t self = vself; - return self->id; -} - -static int -circprog_is_instance (void *vself __attribute__((unused)), const char *type) -{ - return grub_strcmp (type, "component") == 0; -} - -static struct grub_video_bitmap * -load_bitmap (const char *dir, const char *file) -{ - struct grub_video_bitmap *bitmap; - char *abspath; - - /* Check arguments. */ - if (! dir || ! file) - return 0; - - /* Resolve to an absolute path. */ - abspath = grub_resolve_relative_path (dir, file); - if (! abspath) - return 0; - - /* Load the image. */ - grub_errno = GRUB_ERR_NONE; - grub_video_bitmap_load (&bitmap, abspath); - grub_errno = GRUB_ERR_NONE; - - grub_free (abspath); - return bitmap; -} - -static int -check_pixmaps (circular_progress_t self) -{ - if (self->need_to_load_pixmaps) - { - if (self->center_bitmap) - grub_video_bitmap_destroy (self->center_bitmap); - self->center_bitmap = load_bitmap (self->theme_dir, self->center_file); - self->tick_bitmap = load_bitmap (self->theme_dir, self->tick_file); - self->need_to_load_pixmaps = 0; - } - - return (self->center_bitmap != 0 && self->tick_bitmap != 0); -} - -static void -circprog_paint (void *vself, const grub_video_rect_t *region) -{ - circular_progress_t self = vself; - - if (! self->visible) - return; - - if (!grub_video_have_common_points (region, &self->bounds)) - return; - - if (! check_pixmaps (self)) - return; - - grub_video_rect_t vpsave; - grub_gui_set_viewport (&self->bounds, &vpsave); - - int width = self->bounds.width; - int height = self->bounds.height; - int center_width = grub_video_bitmap_get_width (self->center_bitmap); - int center_height = grub_video_bitmap_get_height (self->center_bitmap); - int tick_width = grub_video_bitmap_get_width (self->tick_bitmap); - int tick_height = grub_video_bitmap_get_height (self->tick_bitmap); - grub_video_blit_bitmap (self->center_bitmap, GRUB_VIDEO_BLIT_BLEND, - (width - center_width) / 2, - (height - center_height) / 2, 0, 0, - center_width, center_height); - - if (self->num_ticks) - { - int radius = grub_min (height, width) / 2 - grub_max (tick_height, tick_width) / 2 - 1; - unsigned nticks; - unsigned tick_begin; - unsigned tick_end; - if (self->end <= self->start - || self->value <= self->start) - nticks = 0; - else - nticks = ((unsigned) (self->num_ticks - * (self->value - self->start))) - / ((unsigned) (self->end - self->start)); - /* Do ticks appear or disappear as the value approached the end? */ - if (self->ticks_disappear) - { - tick_begin = nticks; - tick_end = self->num_ticks; - } - else - { - tick_begin = 0; - tick_end = nticks; - } - - unsigned i; - for (i = tick_begin; i < tick_end; i++) - { - int x; - int y; - int angle; - - /* Calculate the location of the tick. */ - angle = self->start_angle - + i * GRUB_TRIG_ANGLE_MAX / self->num_ticks; - x = width / 2 + (grub_cos (angle) * radius / GRUB_TRIG_FRACTION_SCALE); - y = height / 2 + (grub_sin (angle) * radius / GRUB_TRIG_FRACTION_SCALE); - - /* Adjust (x,y) so the tick is centered. */ - x -= tick_width / 2; - y -= tick_height / 2; - - /* Draw the tick. */ - grub_video_blit_bitmap (self->tick_bitmap, GRUB_VIDEO_BLIT_BLEND, - x, y, 0, 0, tick_width, tick_height); - } - } - grub_gui_restore_viewport (&vpsave); -} - -static void -circprog_set_parent (void *vself, grub_gui_container_t parent) -{ - circular_progress_t self = vself; - self->parent = parent; -} - -static grub_gui_container_t -circprog_get_parent (void *vself) -{ - circular_progress_t self = vself; - return self->parent; -} - -static void -circprog_set_bounds (void *vself, const grub_video_rect_t *bounds) -{ - circular_progress_t self = vself; - self->bounds = *bounds; -} - -static void -circprog_get_bounds (void *vself, grub_video_rect_t *bounds) -{ - circular_progress_t self = vself; - *bounds = self->bounds; -} - -static void -circprog_set_state (void *vself, int visible, int start, - int current, int end) -{ - circular_progress_t self = vself; - self->visible = visible; - self->start = start; - self->value = current; - self->end = end; -} - -static int -parse_angle (const char *value) -{ - char *ptr; - int angle; - - angle = grub_strtol (value, &ptr, 10); - if (grub_errno) - return 0; - while (grub_isspace (*ptr)) - ptr++; - if (grub_strcmp (ptr, "deg") == 0 - /* Unicode symbol of degrees (a circle, U+b0). Put here in UTF-8 to - avoid potential problem with text file reesncoding */ - || grub_strcmp (ptr, "\xc2\xb0") == 0) - angle = grub_divide_round (angle * 64, 90); - return angle; -} - -static grub_err_t -circprog_set_property (void *vself, const char *name, const char *value) -{ - circular_progress_t self = vself; - if (grub_strcmp (name, "num_ticks") == 0) - { - self->num_ticks = grub_strtoul (value, 0, 10); - } - else if (grub_strcmp (name, "start_angle") == 0) - { - self->start_angle = parse_angle (value); - } - else if (grub_strcmp (name, "ticks_disappear") == 0) - { - self->ticks_disappear = grub_strcmp (value, "false") != 0; - } - else if (grub_strcmp (name, "center_bitmap") == 0) - { - self->need_to_load_pixmaps = 1; - grub_free (self->center_file); - self->center_file = value ? grub_strdup (value) : 0; - } - else if (grub_strcmp (name, "tick_bitmap") == 0) - { - self->need_to_load_pixmaps = 1; - grub_free (self->tick_file); - self->tick_file = value ? grub_strdup (value) : 0; - } - else if (grub_strcmp (name, "theme_dir") == 0) - { - self->need_to_load_pixmaps = 1; - grub_free (self->theme_dir); - self->theme_dir = value ? grub_strdup (value) : 0; - } - else if (grub_strcmp (name, "id") == 0) - { - grub_gfxmenu_timeout_unregister ((grub_gui_component_t) self); - grub_free (self->id); - if (value) - self->id = grub_strdup (value); - else - self->id = 0; - if (self->id && grub_strcmp (self->id, GRUB_GFXMENU_TIMEOUT_COMPONENT_ID) - == 0) - grub_gfxmenu_timeout_register ((grub_gui_component_t) self, - circprog_set_state); - } - return grub_errno; -} - -static struct grub_gui_component_ops circprog_ops = -{ - .destroy = circprog_destroy, - .get_id = circprog_get_id, - .is_instance = circprog_is_instance, - .paint = circprog_paint, - .set_parent = circprog_set_parent, - .get_parent = circprog_get_parent, - .set_bounds = circprog_set_bounds, - .get_bounds = circprog_get_bounds, - .set_property = circprog_set_property -}; - -static struct grub_gui_progress_ops circprog_prog_ops = - { - .set_state = circprog_set_state - }; - -grub_gui_component_t -grub_gui_circular_progress_new (void) -{ - circular_progress_t self; - self = grub_zalloc (sizeof (*self)); - if (! self) - return 0; - self->progress.ops = &circprog_prog_ops; - self->progress.component.ops = &circprog_ops; - self->visible = 1; - self->num_ticks = 64; - self->start_angle = -64; - - return (grub_gui_component_t) self; -} diff --git a/thirdparty/grub-2.04/grub-core/gfxmenu/gui_image.c b/thirdparty/grub-2.04/grub-core/gfxmenu/gui_image.c deleted file mode 100644 index 29784ed2d..000000000 --- a/thirdparty/grub-2.04/grub-core/gfxmenu/gui_image.c +++ /dev/null @@ -1,267 +0,0 @@ -/* gui_image.c - GUI component to display an image. */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2008,2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include - -struct grub_gui_image -{ - struct grub_gui_component component; - - grub_gui_container_t parent; - grub_video_rect_t bounds; - char *id; - char *theme_dir; - struct grub_video_bitmap *raw_bitmap; - struct grub_video_bitmap *bitmap; -}; - -typedef struct grub_gui_image *grub_gui_image_t; - -static void -image_destroy (void *vself) -{ - grub_gui_image_t self = vself; - - /* Free the scaled bitmap, unless it's a reference to the raw bitmap. */ - if (self->bitmap && (self->bitmap != self->raw_bitmap)) - grub_video_bitmap_destroy (self->bitmap); - if (self->raw_bitmap) - grub_video_bitmap_destroy (self->raw_bitmap); - - grub_free (self); -} - -static const char * -image_get_id (void *vself) -{ - grub_gui_image_t self = vself; - return self->id; -} - -static int -image_is_instance (void *vself __attribute__((unused)), const char *type) -{ - return grub_strcmp (type, "component") == 0; -} - -static void -image_paint (void *vself, const grub_video_rect_t *region) -{ - grub_gui_image_t self = vself; - grub_video_rect_t vpsave; - - if (! self->bitmap) - return; - if (!grub_video_have_common_points (region, &self->bounds)) - return; - - grub_gui_set_viewport (&self->bounds, &vpsave); - grub_video_blit_bitmap (self->bitmap, GRUB_VIDEO_BLIT_BLEND, - 0, 0, 0, 0, - grub_video_bitmap_get_width (self->bitmap), - grub_video_bitmap_get_height (self->bitmap)); - grub_gui_restore_viewport (&vpsave); -} - -static void -image_set_parent (void *vself, grub_gui_container_t parent) -{ - grub_gui_image_t self = vself; - self->parent = parent; -} - -static grub_gui_container_t -image_get_parent (void *vself) -{ - grub_gui_image_t self = vself; - return self->parent; -} - -static grub_err_t -rescale_image (grub_gui_image_t self) -{ - signed width; - signed height; - - if (! self->raw_bitmap) - { - if (self->bitmap) - { - grub_video_bitmap_destroy (self->bitmap); - self->bitmap = 0; - } - return grub_errno; - } - - width = self->bounds.width; - height = self->bounds.height; - - if (self->bitmap - && ((signed) grub_video_bitmap_get_width (self->bitmap) == width) - && ((signed) grub_video_bitmap_get_height (self->bitmap) == height)) - { - /* Nothing to do; already the right size. */ - return grub_errno; - } - - /* Free any old scaled bitmap, - *unless* it's a reference to the raw bitmap. */ - if (self->bitmap && (self->bitmap != self->raw_bitmap)) - grub_video_bitmap_destroy (self->bitmap); - - self->bitmap = 0; - - /* Create a scaled bitmap, unless the requested size is the same - as the raw size -- in that case a reference is made. */ - if ((signed) grub_video_bitmap_get_width (self->raw_bitmap) == width - && (signed) grub_video_bitmap_get_height (self->raw_bitmap) == height) - { - self->bitmap = self->raw_bitmap; - return grub_errno; - } - - /* Don't scale to an invalid size. */ - if (width <= 0 || height <= 0) - return grub_errno; - - /* Create the scaled bitmap. */ - grub_video_bitmap_create_scaled (&self->bitmap, - width, - height, - self->raw_bitmap, - GRUB_VIDEO_BITMAP_SCALE_METHOD_BEST); - return grub_errno; -} - -static void -image_set_bounds (void *vself, const grub_video_rect_t *bounds) -{ - grub_gui_image_t self = vself; - self->bounds = *bounds; - rescale_image (self); -} - -static void -image_get_bounds (void *vself, grub_video_rect_t *bounds) -{ - grub_gui_image_t self = vself; - *bounds = self->bounds; -} - -/* FIXME: inform rendering system it's not forced minimum. */ -static void -image_get_minimal_size (void *vself, unsigned *width, unsigned *height) -{ - grub_gui_image_t self = vself; - - if (self->raw_bitmap) - { - *width = grub_video_bitmap_get_width (self->raw_bitmap); - *height = grub_video_bitmap_get_height (self->raw_bitmap); - } - else - { - *width = 0; - *height = 0; - } -} - -static grub_err_t -load_image (grub_gui_image_t self, const char *path) -{ - struct grub_video_bitmap *bitmap; - if (grub_video_bitmap_load (&bitmap, path) != GRUB_ERR_NONE) - return grub_errno; - - if (self->bitmap && (self->bitmap != self->raw_bitmap)) - grub_video_bitmap_destroy (self->bitmap); - if (self->raw_bitmap) - grub_video_bitmap_destroy (self->raw_bitmap); - - self->raw_bitmap = bitmap; - return rescale_image (self); -} - -static grub_err_t -image_set_property (void *vself, const char *name, const char *value) -{ - grub_gui_image_t self = vself; - if (grub_strcmp (name, "theme_dir") == 0) - { - grub_free (self->theme_dir); - self->theme_dir = grub_strdup (value); - } - else if (grub_strcmp (name, "file") == 0) - { - char *absvalue; - grub_err_t err; - - /* Resolve to an absolute path. */ - if (! self->theme_dir) - return grub_error (GRUB_ERR_BUG, "unspecified theme_dir"); - absvalue = grub_resolve_relative_path (self->theme_dir, value); - if (! absvalue) - return grub_errno; - - err = load_image (self, absvalue); - grub_free (absvalue); - - return err; - } - else if (grub_strcmp (name, "id") == 0) - { - grub_free (self->id); - if (value) - self->id = grub_strdup (value); - else - self->id = 0; - } - return grub_errno; -} - -static struct grub_gui_component_ops image_ops = -{ - .destroy = image_destroy, - .get_id = image_get_id, - .is_instance = image_is_instance, - .paint = image_paint, - .set_parent = image_set_parent, - .get_parent = image_get_parent, - .set_bounds = image_set_bounds, - .get_bounds = image_get_bounds, - .get_minimal_size = image_get_minimal_size, - .set_property = image_set_property -}; - -grub_gui_component_t -grub_gui_image_new (void) -{ - grub_gui_image_t image; - image = grub_zalloc (sizeof (*image)); - if (! image) - return 0; - image->component.ops = &image_ops; - return (grub_gui_component_t) image; -} - diff --git a/thirdparty/grub-2.04/grub-core/gfxmenu/gui_label.c b/thirdparty/grub-2.04/grub-core/gfxmenu/gui_label.c deleted file mode 100644 index a4c817891..000000000 --- a/thirdparty/grub-2.04/grub-core/gfxmenu/gui_label.c +++ /dev/null @@ -1,273 +0,0 @@ -/* gui_label.c - GUI component to display a line of text. */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2008,2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include - -static const char *align_options[] = -{ - "left", - "center", - "right", - 0 -}; - -enum align_mode { - align_left, - align_center, - align_right -}; - -struct grub_gui_label -{ - struct grub_gui_component comp; - - grub_gui_container_t parent; - grub_video_rect_t bounds; - char *id; - int visible; - char *text; - char *template; - grub_font_t font; - grub_video_rgba_color_t color; - int value; - enum align_mode align; -}; - -typedef struct grub_gui_label *grub_gui_label_t; - -static void -label_destroy (void *vself) -{ - grub_gui_label_t self = vself; - grub_gfxmenu_timeout_unregister ((grub_gui_component_t) self); - grub_free (self->text); - grub_free (self->template); - grub_free (self); -} - -static const char * -label_get_id (void *vself) -{ - grub_gui_label_t self = vself; - return self->id; -} - -static int -label_is_instance (void *vself __attribute__((unused)), const char *type) -{ - return grub_strcmp (type, "component") == 0; -} - -static void -label_paint (void *vself, const grub_video_rect_t *region) -{ - grub_gui_label_t self = vself; - - if (! self->visible) - return; - - if (!grub_video_have_common_points (region, &self->bounds)) - return; - - /* Calculate the starting x coordinate. */ - int left_x; - if (self->align == align_left) - left_x = 0; - else if (self->align == align_center) - left_x = (self->bounds.width - - grub_font_get_string_width (self->font, self->text)) / 2; - else if (self->align == align_right) - left_x = (self->bounds.width - - grub_font_get_string_width (self->font, self->text)); - else - return; /* Invalid alignment. */ - - if (left_x < 0 || left_x > (int) self->bounds.width) - left_x = 0; - - grub_video_rect_t vpsave; - grub_gui_set_viewport (&self->bounds, &vpsave); - grub_font_draw_string (self->text, - self->font, - grub_video_map_rgba_color (self->color), - left_x, - grub_font_get_ascent (self->font)); - grub_gui_restore_viewport (&vpsave); -} - -static void -label_set_parent (void *vself, grub_gui_container_t parent) -{ - grub_gui_label_t self = vself; - self->parent = parent; -} - -static grub_gui_container_t -label_get_parent (void *vself) -{ - grub_gui_label_t self = vself; - return self->parent; -} - -static void -label_set_bounds (void *vself, const grub_video_rect_t *bounds) -{ - grub_gui_label_t self = vself; - self->bounds = *bounds; -} - -static void -label_get_bounds (void *vself, grub_video_rect_t *bounds) -{ - grub_gui_label_t self = vself; - *bounds = self->bounds; -} - -static void -label_get_minimal_size (void *vself, unsigned *width, unsigned *height) -{ - grub_gui_label_t self = vself; - *width = grub_font_get_string_width (self->font, self->text); - *height = (grub_font_get_ascent (self->font) - + grub_font_get_descent (self->font)); -} - -#pragma GCC diagnostic ignored "-Wformat-nonliteral" - -static void -label_set_state (void *vself, int visible, int start __attribute__ ((unused)), - int current, int end __attribute__ ((unused))) -{ - grub_gui_label_t self = vself; - self->value = -current; - self->visible = visible; - grub_free (self->text); - self->text = grub_xasprintf (self->template ? : "%d", self->value); -} - -static grub_err_t -label_set_property (void *vself, const char *name, const char *value) -{ - grub_gui_label_t self = vself; - if (grub_strcmp (name, "text") == 0) - { - grub_free (self->text); - grub_free (self->template); - if (! value) - { - self->template = NULL; - self->text = grub_strdup (""); - } - else - { - if (grub_strcmp (value, "@KEYMAP_LONG@") == 0) - value = _("Press enter to boot the selected OS, " - "`e' to edit the commands before booting " - "or `c' for a command-line. ESC to return previous menu."); - else if (grub_strcmp (value, "@KEYMAP_MIDDLE@") == 0) - value = _("Press enter to boot the selected OS, " - "`e' to edit the commands before booting " - "or `c' for a command-line."); - else if (grub_strcmp (value, "@KEYMAP_SHORT@") == 0) - value = _("enter: boot, `e': options, `c': cmd-line"); - /* FIXME: Add more templates here if needed. */ - self->template = grub_strdup (value); - self->text = grub_xasprintf (value, self->value); - } - } - else if (grub_strcmp (name, "font") == 0) - { - self->font = grub_font_get (value); - } - else if (grub_strcmp (name, "color") == 0) - { - grub_video_parse_color (value, &self->color); - } - else if (grub_strcmp (name, "align") == 0) - { - int i; - for (i = 0; align_options[i]; i++) - { - if (grub_strcmp (align_options[i], value) == 0) - { - self->align = i; /* Set the alignment mode. */ - break; - } - } - } - else if (grub_strcmp (name, "visible") == 0) - { - self->visible = grub_strcmp (value, "false") != 0; - } - else if (grub_strcmp (name, "id") == 0) - { - grub_gfxmenu_timeout_unregister ((grub_gui_component_t) self); - grub_free (self->id); - if (value) - self->id = grub_strdup (value); - else - self->id = 0; - if (self->id && grub_strcmp (self->id, GRUB_GFXMENU_TIMEOUT_COMPONENT_ID) - == 0) - grub_gfxmenu_timeout_register ((grub_gui_component_t) self, - label_set_state); - } - return GRUB_ERR_NONE; -} - -#pragma GCC diagnostic error "-Wformat-nonliteral" - -static struct grub_gui_component_ops label_ops = -{ - .destroy = label_destroy, - .get_id = label_get_id, - .is_instance = label_is_instance, - .paint = label_paint, - .set_parent = label_set_parent, - .get_parent = label_get_parent, - .set_bounds = label_set_bounds, - .get_bounds = label_get_bounds, - .get_minimal_size = label_get_minimal_size, - .set_property = label_set_property -}; - -grub_gui_component_t -grub_gui_label_new (void) -{ - grub_gui_label_t label; - label = grub_zalloc (sizeof (*label)); - if (! label) - return 0; - label->comp.ops = &label_ops; - label->visible = 1; - label->text = grub_strdup (""); - label->font = grub_font_get ("Unknown Regular 16"); - label->color.red = 0; - label->color.green = 0; - label->color.blue = 0; - label->color.alpha = 255; - label->align = align_left; - return (grub_gui_component_t) label; -} diff --git a/thirdparty/grub-2.04/grub-core/gfxmenu/gui_list.c b/thirdparty/grub-2.04/grub-core/gfxmenu/gui_list.c deleted file mode 100644 index 01477cdf2..000000000 --- a/thirdparty/grub-2.04/grub-core/gfxmenu/gui_list.c +++ /dev/null @@ -1,953 +0,0 @@ -/* gui_list.c - GUI component to display a selectable list of items. */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2008,2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include - -enum scrollbar_slice_mode { - SCROLLBAR_SLICE_WEST, - SCROLLBAR_SLICE_CENTER, - SCROLLBAR_SLICE_EAST -}; - -struct grub_gui_list_impl -{ - struct grub_gui_list list; - - grub_gui_container_t parent; - grub_video_rect_t bounds; - char *id; - int visible; - - int icon_width; - int icon_height; - int item_height; - int item_padding; - int item_icon_space; - int item_spacing; - grub_font_t item_font; - int selected_item_font_inherit; - grub_font_t selected_item_font; - grub_video_rgba_color_t item_color; - int selected_item_color_inherit; - grub_video_rgba_color_t selected_item_color; - - int draw_scrollbar; - int need_to_recreate_scrollbar; - char *scrollbar_frame_pattern; - char *scrollbar_thumb_pattern; - grub_gfxmenu_box_t scrollbar_frame; - grub_gfxmenu_box_t scrollbar_thumb; - int scrollbar_thumb_overlay; - int scrollbar_width; - enum scrollbar_slice_mode scrollbar_slice; - int scrollbar_left_pad; - int scrollbar_right_pad; - int scrollbar_top_pad; - int scrollbar_bottom_pad; - - int first_shown_index; - - int need_to_recreate_boxes; - char *theme_dir; - char *menu_box_pattern; - char *item_box_pattern; - int selected_item_box_pattern_inherit; - char *selected_item_box_pattern; - grub_gfxmenu_box_t menu_box; - grub_gfxmenu_box_t selected_item_box; - grub_gfxmenu_box_t item_box; - - grub_gfxmenu_icon_manager_t icon_manager; - - grub_gfxmenu_view_t view; -}; - -typedef struct grub_gui_list_impl *list_impl_t; - -static void -list_destroy (void *vself) -{ - list_impl_t self = vself; - - grub_free (self->theme_dir); - grub_free (self->menu_box_pattern); - grub_free (self->item_box_pattern); - grub_free (self->selected_item_box_pattern); - if (self->menu_box) - self->menu_box->destroy (self->menu_box); - if (self->item_box) - self->item_box->destroy (self->item_box); - if (self->selected_item_box) - self->selected_item_box->destroy (self->selected_item_box); - if (self->icon_manager) - grub_gfxmenu_icon_manager_destroy (self->icon_manager); - if (self->scrollbar_thumb) - self->scrollbar_thumb->destroy (self->scrollbar_thumb); - if (self->scrollbar_frame) - self->scrollbar_frame->destroy (self->scrollbar_frame); - grub_free (self->scrollbar_thumb_pattern); - grub_free (self->scrollbar_frame_pattern); - grub_free (self); -} - -static int -get_num_shown_items (list_impl_t self) -{ - int boxpad = self->item_padding; - int item_vspace = self->item_spacing; - int item_height = self->item_height; - - grub_gfxmenu_box_t box = self->menu_box; - int box_top_pad = box->get_top_pad (box); - int box_bottom_pad = box->get_bottom_pad (box); - grub_gfxmenu_box_t itembox = self->item_box; - grub_gfxmenu_box_t selbox = self->selected_item_box; - int item_top_pad = itembox->get_top_pad (itembox); - int item_bottom_pad = itembox->get_bottom_pad (itembox); - int sel_top_pad = selbox->get_top_pad (selbox); - int sel_bottom_pad = selbox->get_bottom_pad (selbox); - int max_top_pad = grub_max (item_top_pad, sel_top_pad); - int max_bottom_pad = grub_max (item_bottom_pad, sel_bottom_pad); - - if (item_height + item_vspace <= 0) - return 1; - - return (self->bounds.height + item_vspace - 2 * boxpad - - max_top_pad - max_bottom_pad - - box_top_pad - box_bottom_pad) / (item_height + item_vspace); -} - -static int -check_boxes (list_impl_t self) -{ - if (self->need_to_recreate_boxes) - { - grub_gui_recreate_box (&self->menu_box, - self->menu_box_pattern, - self->theme_dir); - - grub_gui_recreate_box (&self->item_box, - self->item_box_pattern, - self->theme_dir); - - grub_gui_recreate_box (&self->selected_item_box, - self->selected_item_box_pattern, - self->theme_dir); - - self->need_to_recreate_boxes = 0; - } - - return (self->menu_box != 0 && self->selected_item_box != 0 - && self->item_box != 0); -} - -static int -check_scrollbar (list_impl_t self) -{ - if (self->need_to_recreate_scrollbar) - { - grub_gui_recreate_box (&self->scrollbar_frame, - self->scrollbar_frame_pattern, - self->theme_dir); - - grub_gui_recreate_box (&self->scrollbar_thumb, - self->scrollbar_thumb_pattern, - self->theme_dir); - - self->need_to_recreate_scrollbar = 0; - } - - if (self->scrollbar_frame == 0 || self->scrollbar_thumb == 0) - return 0; - - /* Sanity checks. */ - grub_gfxmenu_box_t frame = self->scrollbar_frame; - grub_gfxmenu_box_t thumb = self->scrollbar_thumb; - grub_gfxmenu_box_t menu = self->menu_box; - int min_width = frame->get_left_pad (frame) - + frame->get_right_pad (frame); - int min_height = frame->get_top_pad (frame) - + frame->get_bottom_pad (frame) - + self->scrollbar_top_pad + self->scrollbar_bottom_pad - + menu->get_top_pad (menu) - + menu->get_bottom_pad (menu); - if (!self->scrollbar_thumb_overlay) - { - min_width += thumb->get_left_pad (thumb) - + thumb->get_right_pad (thumb); - min_height += thumb->get_top_pad (thumb) - + thumb->get_bottom_pad (thumb); - } - if (min_width <= self->scrollbar_width - && min_height <= (int) self->bounds.height) - return 1; - - /* Unprintable dimenstions. */ - self->draw_scrollbar = 0; - return 0; -} - -static const char * -list_get_id (void *vself) -{ - list_impl_t self = vself; - return self->id; -} - -static int -list_is_instance (void *vself __attribute__((unused)), const char *type) -{ - return (grub_strcmp (type, "component") == 0 - || grub_strcmp (type, "list") == 0); -} - -static struct grub_video_bitmap * -get_item_icon (list_impl_t self, int item_index) -{ - grub_menu_entry_t entry; - entry = grub_menu_get_entry (self->view->menu, item_index); - if (! entry) - return 0; - - return grub_gfxmenu_icon_manager_get_icon (self->icon_manager, entry); -} - -static void -make_selected_item_visible (list_impl_t self) -{ - int selected_index = self->view->selected; - if (selected_index < 0) - return; /* No item is selected. */ - int num_shown_items = get_num_shown_items (self); - int last_shown_index = self->first_shown_index + (num_shown_items - 1); - if (selected_index < self->first_shown_index) - self->first_shown_index = selected_index; - else if (selected_index > last_shown_index) - self->first_shown_index = selected_index - (num_shown_items - 1); -} - -/* Draw a scrollbar on the menu. */ -static void -draw_scrollbar (list_impl_t self, - int value, int extent, int min, int max, - int scrollbar_width, int scrollbar_height) -{ - unsigned thumby, thumbheight; - - grub_gfxmenu_box_t frame = self->scrollbar_frame; - grub_gfxmenu_box_t thumb = self->scrollbar_thumb; - int frame_vertical_pad = (frame->get_top_pad (frame) - + frame->get_bottom_pad (frame)); - int frame_horizontal_pad = (frame->get_left_pad (frame) - + frame->get_right_pad (frame)); - unsigned thumb_vertical_pad = (thumb->get_top_pad (thumb) - + thumb->get_bottom_pad (thumb)); - int thumb_horizontal_pad = (thumb->get_left_pad (thumb) - + thumb->get_right_pad (thumb)); - int tracktop = frame->get_top_pad (frame); - unsigned tracklen; - if (scrollbar_height <= frame_vertical_pad) - tracklen = 0; - else - tracklen = scrollbar_height - frame_vertical_pad; - frame->set_content_size (frame, - scrollbar_width - frame_horizontal_pad, - tracklen); - if (self->scrollbar_thumb_overlay) - { - tracklen += thumb_vertical_pad; - tracktop -= thumb->get_top_pad (thumb); - } - if (value <= min || max <= min) - thumby = 0; - else - thumby = ((unsigned) tracklen * (value - min)) - / ((unsigned) (max - min)); - if (max <= min) - thumbheight = 1; - else - thumbheight = ((unsigned) (tracklen * extent) - / ((unsigned) (max - min))) + 1; - /* Rare occasion: too many entries or too low height. */ - if (thumbheight < thumb_vertical_pad) - { - thumbheight = thumb_vertical_pad; - if (value <= min || max <= extent - || tracklen <= thumb_vertical_pad) - thumby = 0; - else - thumby = ((unsigned) ((tracklen - thumb_vertical_pad) * (value - min)) - / ((unsigned)(max - extent))); - } - thumby += tracktop; - int thumbx = frame->get_left_pad (frame); - int thumbwidth = scrollbar_width - frame_horizontal_pad; - if (!self->scrollbar_thumb_overlay) - thumbwidth -= thumb_horizontal_pad; - else - thumbx -= thumb->get_left_pad (thumb); - thumb->set_content_size (thumb, thumbwidth, - thumbheight - thumb_vertical_pad); - frame->draw (frame, 0, 0); - thumb->draw (thumb, thumbx, thumby); -} - -/* Draw the list of items. */ -static void -draw_menu (list_impl_t self, int num_shown_items) -{ - if (! self->menu_box || ! self->selected_item_box || ! self->item_box) - return; - - int boxpad = self->item_padding; - int icon_text_space = self->item_icon_space; - int item_vspace = self->item_spacing; - - int ascent = grub_font_get_ascent (self->item_font); - int descent = grub_font_get_descent (self->item_font); - int selected_ascent = grub_font_get_ascent (self->selected_item_font); - int selected_descent = grub_font_get_descent (self->selected_item_font); - int text_box_height = self->item_height; - - make_selected_item_visible (self); - - grub_gfxmenu_box_t itembox = self->item_box; - grub_gfxmenu_box_t selbox = self->selected_item_box; - int item_leftpad = itembox->get_left_pad (itembox); - int item_rightpad = itembox->get_right_pad (itembox); - int item_border_width = item_leftpad + item_rightpad; - int item_toppad = itembox->get_top_pad (itembox); - int sel_leftpad = selbox->get_left_pad (selbox); - int sel_rightpad = selbox->get_right_pad (selbox); - int sel_border_width = sel_leftpad + sel_rightpad; - int sel_toppad = selbox->get_top_pad (selbox); - - int max_leftpad = grub_max (item_leftpad, sel_leftpad); - int max_toppad = grub_max (item_toppad, sel_toppad); - int item_top = 0; - int menu_index; - int visible_index; - struct grub_video_rect oviewport; - - grub_video_get_viewport (&oviewport.x, &oviewport.y, - &oviewport.width, &oviewport.height); - grub_video_set_viewport (oviewport.x + boxpad, - oviewport.y + boxpad, - oviewport.width - 2 * boxpad, - oviewport.height - 2 * boxpad); - - int cwidth = oviewport.width - 2 * boxpad; - - itembox->set_content_size (itembox, cwidth - item_border_width, - text_box_height); - selbox->set_content_size (selbox, cwidth - sel_border_width, - text_box_height); - - int text_left_offset = self->icon_width + icon_text_space; - int item_text_top_offset = (text_box_height - (ascent + descent)) / 2 + ascent; - int sel_text_top_offset = (text_box_height - (selected_ascent - + selected_descent)) / 2 - + selected_ascent; - - grub_video_rect_t svpsave, sviewport; - sviewport.x = max_leftpad + text_left_offset; - int text_viewport_width = cwidth - sviewport.x; - sviewport.height = text_box_height; - - grub_video_color_t item_color; - grub_video_color_t sel_color; - item_color = grub_video_map_rgba_color (self->item_color); - sel_color = grub_video_map_rgba_color (self->selected_item_color); - - int item_box_top_offset = max_toppad - item_toppad; - int sel_box_top_offset = max_toppad - sel_toppad; - int item_viewport_width = text_viewport_width - item_rightpad; - int sel_viewport_width = text_viewport_width - sel_rightpad; - int tmp_icon_top_offset = (text_box_height - self->icon_height) / 2; - int item_icon_top_offset = item_toppad + tmp_icon_top_offset; - int sel_icon_top_offset = sel_toppad + tmp_icon_top_offset; - - for (visible_index = 0, menu_index = self->first_shown_index; - visible_index < num_shown_items && menu_index < self->view->menu->size; - visible_index++, menu_index++) - { - int is_selected = (menu_index == self->view->selected); - struct grub_video_bitmap *icon; - grub_font_t font; - grub_video_color_t color; - int text_top_offset; - int top_pad; - int icon_top_offset; - int viewport_width; - - if (is_selected) - { - selbox->draw (selbox, 0, item_top + sel_box_top_offset); - font = self->selected_item_font; - color = sel_color; - text_top_offset = sel_text_top_offset; - top_pad = sel_toppad; - icon_top_offset = sel_icon_top_offset; - viewport_width = sel_viewport_width; - } - else - { - itembox->draw (itembox, 0, item_top + item_box_top_offset); - font = self->item_font; - color = item_color; - text_top_offset = item_text_top_offset; - top_pad = item_toppad; - icon_top_offset = item_icon_top_offset; - viewport_width = item_viewport_width; - } - - icon = get_item_icon (self, menu_index); - if (icon != 0) - grub_video_blit_bitmap (icon, GRUB_VIDEO_BLIT_BLEND, - max_leftpad, - item_top + icon_top_offset, - 0, 0, self->icon_width, self->icon_height); - - const char *item_title = - grub_menu_get_entry (self->view->menu, menu_index)->title; - - sviewport.y = item_top + top_pad; - sviewport.width = viewport_width; - grub_gui_set_viewport (&sviewport, &svpsave); - grub_font_draw_string (item_title, - font, - color, - 0, - text_top_offset); - grub_gui_restore_viewport (&svpsave); - - item_top += text_box_height + item_vspace; - } - grub_video_set_viewport (oviewport.x, - oviewport.y, - oviewport.width, - oviewport.height); -} - -static void -list_paint (void *vself, const grub_video_rect_t *region) -{ - list_impl_t self = vself; - grub_video_rect_t vpsave; - - if (! self->visible) - return; - if (!grub_video_have_common_points (region, &self->bounds)) - return; - - check_boxes (self); - - if (! self->menu_box || ! self->selected_item_box || ! self->item_box) - return; - - grub_gui_set_viewport (&self->bounds, &vpsave); - { - grub_gfxmenu_box_t box = self->menu_box; - int box_left_pad = box->get_left_pad (box); - int box_top_pad = box->get_top_pad (box); - int box_right_pad = box->get_right_pad (box); - int box_bottom_pad = box->get_bottom_pad (box); - grub_video_rect_t vpsave2, content_rect; - int num_shown_items = get_num_shown_items (self); - int drawing_scrollbar = (self->draw_scrollbar - && (num_shown_items < self->view->menu->size) - && check_scrollbar (self)); - int scrollbar_width = self->scrollbar_width; - - content_rect.x = box_left_pad; - content_rect.y = box_top_pad; - content_rect.width = self->bounds.width - box_left_pad - box_right_pad; - content_rect.height = self->bounds.height - box_top_pad - box_bottom_pad; - - box->set_content_size (box, content_rect.width, content_rect.height); - - box->draw (box, 0, 0); - - switch (self->scrollbar_slice) - { - case SCROLLBAR_SLICE_WEST: - content_rect.x += self->scrollbar_right_pad; - content_rect.width -= self->scrollbar_right_pad; - break; - case SCROLLBAR_SLICE_CENTER: - if (drawing_scrollbar) - content_rect.width -= scrollbar_width + self->scrollbar_left_pad - + self->scrollbar_right_pad; - break; - case SCROLLBAR_SLICE_EAST: - content_rect.width -= self->scrollbar_left_pad; - break; - } - - grub_gui_set_viewport (&content_rect, &vpsave2); - draw_menu (self, num_shown_items); - grub_gui_restore_viewport (&vpsave2); - - if (drawing_scrollbar) - { - content_rect.y += self->scrollbar_top_pad; - content_rect.height -= self->scrollbar_top_pad - + self->scrollbar_bottom_pad; - content_rect.width = scrollbar_width; - switch (self->scrollbar_slice) - { - case SCROLLBAR_SLICE_WEST: - if (box_left_pad > scrollbar_width) - { - content_rect.x = box_left_pad - scrollbar_width; - content_rect.width = scrollbar_width; - } - else - { - content_rect.x = 0; - content_rect.width = box_left_pad; - } - break; - case SCROLLBAR_SLICE_CENTER: - content_rect.x = self->bounds.width - box_right_pad - - scrollbar_width - self->scrollbar_right_pad; - content_rect.width = scrollbar_width; - break; - case SCROLLBAR_SLICE_EAST: - content_rect.x = self->bounds.width - box_right_pad; - content_rect.width = box_right_pad; - break; - } - - grub_gui_set_viewport (&content_rect, &vpsave2); - draw_scrollbar (self, - self->first_shown_index, num_shown_items, - 0, self->view->menu->size, - scrollbar_width, - content_rect.height); - grub_gui_restore_viewport (&vpsave2); - } - } - - grub_gui_restore_viewport (&vpsave); -} - -static void -list_set_parent (void *vself, grub_gui_container_t parent) -{ - list_impl_t self = vself; - self->parent = parent; -} - -static grub_gui_container_t -list_get_parent (void *vself) -{ - list_impl_t self = vself; - return self->parent; -} - -static void -list_set_bounds (void *vself, const grub_video_rect_t *bounds) -{ - list_impl_t self = vself; - self->bounds = *bounds; -} - -static void -list_get_bounds (void *vself, grub_video_rect_t *bounds) -{ - list_impl_t self = vself; - *bounds = self->bounds; -} - -static void -list_get_minimal_size (void *vself, unsigned *width, unsigned *height) -{ - list_impl_t self = vself; - - if (check_boxes (self)) - { - int boxpad = self->item_padding; - int item_vspace = self->item_spacing; - int item_height = self->item_height; - int num_items = 3; - - grub_gfxmenu_box_t box = self->menu_box; - int box_left_pad = box->get_left_pad (box); - int box_top_pad = box->get_top_pad (box); - int box_right_pad = box->get_right_pad (box); - int box_bottom_pad = box->get_bottom_pad (box); - unsigned width_s; - - grub_gfxmenu_box_t selbox = self->selected_item_box; - int sel_top_pad = selbox->get_top_pad (selbox); - int sel_bottom_pad = selbox->get_bottom_pad (selbox); - int sel_left_pad = selbox->get_left_pad (selbox); - int sel_right_pad = selbox->get_right_pad (selbox); - - grub_gfxmenu_box_t itembox = self->item_box; - int item_top_pad = itembox->get_top_pad (itembox); - int item_bottom_pad = itembox->get_bottom_pad (itembox); - int item_left_pad = itembox->get_left_pad (itembox); - int item_right_pad = itembox->get_right_pad (itembox); - - int max_left_pad = grub_max (item_left_pad, sel_left_pad); - int max_right_pad = grub_max (item_right_pad, sel_right_pad); - int max_top_pad = grub_max (item_top_pad, sel_top_pad); - int max_bottom_pad = grub_max (item_bottom_pad, sel_bottom_pad); - - *width = grub_font_get_string_width (self->item_font, "Typical OS"); - width_s = grub_font_get_string_width (self->selected_item_font, - "Typical OS"); - if (*width < width_s) - *width = width_s; - - *width += 2 * boxpad + box_left_pad + box_right_pad - + max_left_pad + max_right_pad - + self->item_icon_space + self->icon_width; - - switch (self->scrollbar_slice) - { - case SCROLLBAR_SLICE_WEST: - *width += self->scrollbar_right_pad; - break; - case SCROLLBAR_SLICE_CENTER: - *width += self->scrollbar_width + self->scrollbar_left_pad - + self->scrollbar_right_pad; - break; - case SCROLLBAR_SLICE_EAST: - *width += self->scrollbar_left_pad; - break; - } - - /* Set the menu box height to fit the items. */ - *height = (item_height * num_items - + item_vspace * (num_items - 1) - + 2 * boxpad - + box_top_pad + box_bottom_pad - + max_top_pad + max_bottom_pad); - } - else - { - *width = 0; - *height = 0; - } -} - -static grub_err_t -list_set_property (void *vself, const char *name, const char *value) -{ - list_impl_t self = vself; - if (grub_strcmp (name, "item_font") == 0) - { - self->item_font = grub_font_get (value); - if (self->selected_item_font_inherit) - self->selected_item_font = self->item_font; - } - else if (grub_strcmp (name, "selected_item_font") == 0) - { - if (! value || grub_strcmp (value, "inherit") == 0) - { - self->selected_item_font = self->item_font; - self->selected_item_font_inherit = 1; - } - else - { - self->selected_item_font = grub_font_get (value); - self->selected_item_font_inherit = 0; - } - } - else if (grub_strcmp (name, "item_color") == 0) - { - grub_video_rgba_color_t color; - if (grub_video_parse_color (value, &color) == GRUB_ERR_NONE) - { - self->item_color = color; - if (self->selected_item_color_inherit) - self->selected_item_color = self->item_color; - } - } - else if (grub_strcmp (name, "selected_item_color") == 0) - { - if (! value || grub_strcmp (value, "inherit") == 0) - { - self->selected_item_color = self->item_color; - self->selected_item_color_inherit = 1; - } - else - { - grub_video_rgba_color_t color; - if (grub_video_parse_color (value, &color) - == GRUB_ERR_NONE) - { - self->selected_item_color = color; - self->selected_item_color_inherit = 0; - } - } - } - else if (grub_strcmp (name, "icon_width") == 0) - { - self->icon_width = grub_strtol (value, 0, 10); - grub_gfxmenu_icon_manager_set_icon_size (self->icon_manager, - self->icon_width, - self->icon_height); - } - else if (grub_strcmp (name, "icon_height") == 0) - { - self->icon_height = grub_strtol (value, 0, 10); - grub_gfxmenu_icon_manager_set_icon_size (self->icon_manager, - self->icon_width, - self->icon_height); - } - else if (grub_strcmp (name, "item_height") == 0) - { - self->item_height = grub_strtol (value, 0, 10); - } - else if (grub_strcmp (name, "item_padding") == 0) - { - self->item_padding = grub_strtol (value, 0, 10); - } - else if (grub_strcmp (name, "item_icon_space") == 0) - { - self->item_icon_space = grub_strtol (value, 0, 10); - } - else if (grub_strcmp (name, "item_spacing") == 0) - { - self->item_spacing = grub_strtol (value, 0, 10); - } - else if (grub_strcmp (name, "visible") == 0) - { - self->visible = grub_strcmp (value, "false") != 0; - } - else if (grub_strcmp (name, "menu_pixmap_style") == 0) - { - self->need_to_recreate_boxes = 1; - grub_free (self->menu_box_pattern); - self->menu_box_pattern = value ? grub_strdup (value) : 0; - } - else if (grub_strcmp (name, "item_pixmap_style") == 0) - { - self->need_to_recreate_boxes = 1; - grub_free (self->item_box_pattern); - self->item_box_pattern = value ? grub_strdup (value) : 0; - if (self->selected_item_box_pattern_inherit) - { - grub_free (self->selected_item_box_pattern); - self->selected_item_box_pattern = value ? grub_strdup (value) : 0; - } - } - else if (grub_strcmp (name, "selected_item_pixmap_style") == 0) - { - if (!value || grub_strcmp (value, "inherit") == 0) - { - grub_free (self->selected_item_box_pattern); - char *tmp = self->item_box_pattern; - self->selected_item_box_pattern = tmp ? grub_strdup (tmp) : 0; - self->selected_item_box_pattern_inherit = 1; - } - else - { - self->need_to_recreate_boxes = 1; - grub_free (self->selected_item_box_pattern); - self->selected_item_box_pattern = value ? grub_strdup (value) : 0; - self->selected_item_box_pattern_inherit = 0; - } - } - else if (grub_strcmp (name, "scrollbar_frame") == 0) - { - self->need_to_recreate_scrollbar = 1; - grub_free (self->scrollbar_frame_pattern); - self->scrollbar_frame_pattern = value ? grub_strdup (value) : 0; - } - else if (grub_strcmp (name, "scrollbar_thumb") == 0) - { - self->need_to_recreate_scrollbar = 1; - grub_free (self->scrollbar_thumb_pattern); - self->scrollbar_thumb_pattern = value ? grub_strdup (value) : 0; - } - else if (grub_strcmp (name, "scrollbar_thumb_overlay") == 0) - { - self->scrollbar_thumb_overlay = grub_strcmp (value, "true") == 0; - } - else if (grub_strcmp (name, "scrollbar_width") == 0) - { - self->scrollbar_width = grub_strtol (value, 0, 10); - } - else if (grub_strcmp (name, "scrollbar_slice") == 0) - { - if (grub_strcmp (value, "west") == 0) - self->scrollbar_slice = SCROLLBAR_SLICE_WEST; - else if (grub_strcmp (value, "center") == 0) - self->scrollbar_slice = SCROLLBAR_SLICE_CENTER; - else if (grub_strcmp (value, "east") == 0) - self->scrollbar_slice = SCROLLBAR_SLICE_EAST; - } - else if (grub_strcmp (name, "scrollbar_left_pad") == 0) - { - self->scrollbar_left_pad = grub_strtol (value, 0, 10); - } - else if (grub_strcmp (name, "scrollbar_right_pad") == 0) - { - self->scrollbar_right_pad = grub_strtol (value, 0, 10); - } - else if (grub_strcmp (name, "scrollbar_top_pad") == 0) - { - self->scrollbar_top_pad = grub_strtol (value, 0, 10); - } - else if (grub_strcmp (name, "scrollbar_bottom_pad") == 0) - { - self->scrollbar_bottom_pad = grub_strtol (value, 0, 10); - } - else if (grub_strcmp (name, "scrollbar") == 0) - { - self->draw_scrollbar = grub_strcmp (value, "false") != 0; - } - else if (grub_strcmp (name, "theme_dir") == 0) - { - self->need_to_recreate_boxes = 1; - grub_free (self->theme_dir); - self->theme_dir = value ? grub_strdup (value) : 0; - } - else if (grub_strcmp (name, "id") == 0) - { - grub_free (self->id); - if (value) - self->id = grub_strdup (value); - else - self->id = 0; - } - return grub_errno; -} - -/* Set necessary information that the gfxmenu view provides. */ -static void -list_set_view_info (void *vself, - grub_gfxmenu_view_t view) -{ - list_impl_t self = vself; - grub_gfxmenu_icon_manager_set_theme_path (self->icon_manager, - view->theme_path); - self->view = view; -} - -/* Refresh list variables */ -static void -list_refresh_info (void *vself, - grub_gfxmenu_view_t view) -{ - list_impl_t self = vself; - if (view->nested) - self->first_shown_index = 0; -} - -static struct grub_gui_component_ops list_comp_ops = - { - .destroy = list_destroy, - .get_id = list_get_id, - .is_instance = list_is_instance, - .paint = list_paint, - .set_parent = list_set_parent, - .get_parent = list_get_parent, - .set_bounds = list_set_bounds, - .get_bounds = list_get_bounds, - .get_minimal_size = list_get_minimal_size, - .set_property = list_set_property - }; - -static struct grub_gui_list_ops list_ops = -{ - .set_view_info = list_set_view_info, - .refresh_list = list_refresh_info -}; - -grub_gui_component_t -grub_gui_list_new (void) -{ - list_impl_t self; - grub_font_t default_font; - grub_video_rgba_color_t default_fg_color; - - self = grub_zalloc (sizeof (*self)); - if (! self) - return 0; - - self->list.ops = &list_ops; - self->list.component.ops = &list_comp_ops; - - self->visible = 1; - - default_font = grub_font_get ("Unknown Regular 16"); - default_fg_color = grub_video_rgba_color_rgb (0, 0, 0); - - self->icon_width = 32; - self->icon_height = 32; - self->item_height = 42; - self->item_padding = 14; - self->item_icon_space = 4; - self->item_spacing = 16; - self->item_font = default_font; - self->selected_item_font_inherit = 1; /* Default to using the item_font. */ - self->selected_item_font = default_font; - self->item_color = default_fg_color; - self->selected_item_color_inherit = 1; /* Default to using the item_color. */ - self->selected_item_color = default_fg_color; - - self->draw_scrollbar = 1; - self->need_to_recreate_scrollbar = 1; - self->scrollbar_frame = 0; - self->scrollbar_thumb = 0; - self->scrollbar_frame_pattern = 0; - self->scrollbar_thumb_pattern = 0; - self->scrollbar_thumb_overlay = 0; - self->scrollbar_width = 16; - self->scrollbar_slice = SCROLLBAR_SLICE_EAST; - self->scrollbar_left_pad = 2; - self->scrollbar_right_pad = 0; - self->scrollbar_top_pad = 0; - self->scrollbar_bottom_pad = 0; - - self->first_shown_index = 0; - - self->need_to_recreate_boxes = 0; - self->theme_dir = 0; - self->menu_box_pattern = 0; - self->item_box_pattern = 0; - self->selected_item_box_pattern_inherit = 1;/*Default to using the item_box.*/ - self->selected_item_box_pattern = 0; - self->menu_box = grub_gfxmenu_create_box (0, 0); - self->item_box = grub_gfxmenu_create_box (0, 0); - self->selected_item_box = grub_gfxmenu_create_box (0, 0); - - self->icon_manager = grub_gfxmenu_icon_manager_new (); - if (! self->icon_manager) - { - self->list.component.ops->destroy (self); - return 0; - } - grub_gfxmenu_icon_manager_set_icon_size (self->icon_manager, - self->icon_width, - self->icon_height); - return (grub_gui_component_t) self; -} diff --git a/thirdparty/grub-2.04/grub-core/gfxmenu/gui_progress_bar.c b/thirdparty/grub-2.04/grub-core/gfxmenu/gui_progress_bar.c deleted file mode 100644 index b128f0866..000000000 --- a/thirdparty/grub-2.04/grub-core/gfxmenu/gui_progress_bar.c +++ /dev/null @@ -1,454 +0,0 @@ -/* gui_progress_bar.c - GUI progress bar component. */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2008,2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include -#include -#include - -struct grub_gui_progress_bar -{ - struct grub_gui_progress progress; - - grub_gui_container_t parent; - grub_video_rect_t bounds; - char *id; - int visible; - int start; - int end; - int value; - char *template; - grub_font_t font; - grub_video_rgba_color_t text_color; - grub_video_rgba_color_t border_color; - grub_video_rgba_color_t bg_color; - grub_video_rgba_color_t fg_color; - - char *theme_dir; - int need_to_recreate_pixmaps; - int pixmapbar_available; - char *bar_pattern; - char *highlight_pattern; - grub_gfxmenu_box_t bar_box; - grub_gfxmenu_box_t highlight_box; - int highlight_overlay; -}; - -typedef struct grub_gui_progress_bar *grub_gui_progress_bar_t; - -static void -progress_bar_destroy (void *vself) -{ - grub_gui_progress_bar_t self = vself; - grub_free (self->theme_dir); - grub_free (self->template); - grub_free (self->id); - grub_gfxmenu_timeout_unregister ((grub_gui_component_t) self); - grub_free (self); -} - -static const char * -progress_bar_get_id (void *vself) -{ - grub_gui_progress_bar_t self = vself; - return self->id; -} - -static int -progress_bar_is_instance (void *vself __attribute__((unused)), const char *type) -{ - return grub_strcmp (type, "component") == 0; -} - -static int -check_pixmaps (grub_gui_progress_bar_t self) -{ - if (!self->pixmapbar_available) - return 0; - if (self->need_to_recreate_pixmaps) - { - grub_gui_recreate_box (&self->bar_box, - self->bar_pattern, - self->theme_dir); - - grub_gui_recreate_box (&self->highlight_box, - self->highlight_pattern, - self->theme_dir); - - self->need_to_recreate_pixmaps = 0; - } - - return (self->bar_box != 0 && self->highlight_box != 0); -} - -static void -draw_filled_rect_bar (grub_gui_progress_bar_t self) -{ - /* Set the progress bar's frame. */ - grub_video_rect_t f; - f.x = 1; - f.y = 1; - f.width = self->bounds.width - 2; - f.height = self->bounds.height - 2; - - /* Border. */ - grub_video_fill_rect (grub_video_map_rgba_color (self->border_color), - f.x - 1, f.y - 1, - f.width + 2, f.height + 2); - - /* Bar background. */ - unsigned barwidth; - - if (self->end <= self->start - || self->value <= self->start) - barwidth = 0; - else - barwidth = (f.width - * (self->value - self->start) - / (self->end - self->start)); - grub_video_fill_rect (grub_video_map_rgba_color (self->bg_color), - f.x + barwidth, f.y, - f.width - barwidth, f.height); - - /* Bar foreground. */ - grub_video_fill_rect (grub_video_map_rgba_color (self->fg_color), - f.x, f.y, - barwidth, f.height); -} - -static void -draw_pixmap_bar (grub_gui_progress_bar_t self) -{ - grub_gfxmenu_box_t bar = self->bar_box; - grub_gfxmenu_box_t hl = self->highlight_box; - int w = self->bounds.width; - int h = self->bounds.height; - int bar_l_pad = bar->get_left_pad (bar); - int bar_r_pad = bar->get_right_pad (bar); - int bar_t_pad = bar->get_top_pad (bar); - int bar_b_pad = bar->get_bottom_pad (bar); - int bar_h_pad = bar_l_pad + bar_r_pad; - int bar_v_pad = bar_t_pad + bar_b_pad; - int hl_l_pad = hl->get_left_pad (hl); - int hl_r_pad = hl->get_right_pad (hl); - int hl_t_pad = hl->get_top_pad (hl); - int hl_b_pad = hl->get_bottom_pad (hl); - int hl_h_pad = hl_l_pad + hl_r_pad; - int hl_v_pad = hl_t_pad + hl_b_pad; - int tracklen = w - bar_h_pad; - int trackheight = h - bar_v_pad; - int barwidth; - int hlheight = trackheight; - int hlx = bar_l_pad; - int hly = bar_t_pad; - - bar->set_content_size (bar, tracklen, trackheight); - bar->draw (bar, 0, 0); - - if (self->highlight_overlay) - { - tracklen += hl_h_pad; - hlx -= hl_l_pad; - hly -= hl_t_pad; - } - else - hlheight -= hl_v_pad; - - if (self->value <= self->start - || self->end <= self->start) - barwidth = 0; - else - barwidth = ((unsigned) (tracklen * (self->value - self->start)) - / ((unsigned) (self->end - self->start))); - - if (barwidth >= hl_h_pad) - { - hl->set_content_size (hl, barwidth - hl_h_pad, hlheight); - hl->draw (hl, hlx, hly); - } -} - -#pragma GCC diagnostic ignored "-Wformat-nonliteral" - -static void -draw_text (grub_gui_progress_bar_t self) -{ - if (self->template) - { - grub_font_t font = self->font; - grub_video_color_t text_color = - grub_video_map_rgba_color (self->text_color); - int width = self->bounds.width; - int height = self->bounds.height; - char *text; - text = grub_xasprintf (self->template, - self->value > 0 ? self->value : -self->value); - if (!text) - { - grub_print_error (); - grub_errno = GRUB_ERR_NONE; - return; - } - /* Center the text. */ - int text_width = grub_font_get_string_width (font, text); - int x = (width - text_width) / 2; - int y = ((height - grub_font_get_descent (font)) / 2 - + grub_font_get_ascent (font) / 2); - grub_font_draw_string (text, font, text_color, x, y); - grub_free (text); - } -} - -#pragma GCC diagnostic error "-Wformat-nonliteral" - -static void -progress_bar_paint (void *vself, const grub_video_rect_t *region) -{ - grub_gui_progress_bar_t self = vself; - grub_video_rect_t vpsave; - - if (! self->visible) - return; - if (!grub_video_have_common_points (region, &self->bounds)) - return; - - if (self->end == self->start) - return; - - grub_gui_set_viewport (&self->bounds, &vpsave); - - if (check_pixmaps (self)) - draw_pixmap_bar (self); - else - draw_filled_rect_bar (self); - - draw_text (self); - - grub_gui_restore_viewport (&vpsave); -} - -static void -progress_bar_set_parent (void *vself, grub_gui_container_t parent) -{ - grub_gui_progress_bar_t self = vself; - self->parent = parent; -} - -static grub_gui_container_t -progress_bar_get_parent (void *vself) -{ - grub_gui_progress_bar_t self = vself; - return self->parent; -} - -static void -progress_bar_set_bounds (void *vself, const grub_video_rect_t *bounds) -{ - grub_gui_progress_bar_t self = vself; - self->bounds = *bounds; -} - -static void -progress_bar_get_bounds (void *vself, grub_video_rect_t *bounds) -{ - grub_gui_progress_bar_t self = vself; - *bounds = self->bounds; -} - -static void -progress_bar_get_minimal_size (void *vself, - unsigned *width, unsigned *height) -{ - unsigned min_width = 0; - unsigned min_height = 0; - grub_gui_progress_bar_t self = vself; - - if (self->template) - { - min_width = grub_font_get_string_width (self->font, self->template); - min_width += grub_font_get_string_width (self->font, "XXXXXXXXXX"); - min_height = grub_font_get_descent (self->font) - + grub_font_get_ascent (self->font); - } - if (check_pixmaps (self)) - { - grub_gfxmenu_box_t bar = self->bar_box; - grub_gfxmenu_box_t hl = self->highlight_box; - min_width += bar->get_left_pad (bar) + bar->get_right_pad (bar); - min_height += bar->get_top_pad (bar) + bar->get_bottom_pad (bar); - if (!self->highlight_overlay) - { - min_width += hl->get_left_pad (hl) + hl->get_right_pad (hl); - min_height += hl->get_top_pad (hl) + hl->get_bottom_pad (hl); - } - } - else - { - min_height += 2; - min_width += 2; - } - *width = 200; - if (*width < min_width) - *width = min_width; - *height = 28; - if (*height < min_height) - *height = min_height; -} - -static void -progress_bar_set_state (void *vself, int visible, int start, - int current, int end) -{ - grub_gui_progress_bar_t self = vself; - self->visible = visible; - self->start = start; - self->value = current; - self->end = end; -} - -static grub_err_t -progress_bar_set_property (void *vself, const char *name, const char *value) -{ - grub_gui_progress_bar_t self = vself; - if (grub_strcmp (name, "text") == 0) - { - grub_free (self->template); - if (grub_strcmp (value, "@TIMEOUT_NOTIFICATION_LONG@") == 0) - value - = _("The highlighted entry will be executed automatically in %ds."); - else if (grub_strcmp (value, "@TIMEOUT_NOTIFICATION_MIDDLE@") == 0) - /* TRANSLATORS: 's' stands for seconds. - It's a standalone timeout notification. - Please use the short form in your language. */ - value = _("%ds remaining."); - else if (grub_strcmp (value, "@TIMEOUT_NOTIFICATION_SHORT@") == 0) - /* TRANSLATORS: 's' stands for seconds. - It's a standalone timeout notification. - Please use the shortest form available in you language. */ - value = _("%ds"); - - self->template = grub_strdup (value); - } - else if (grub_strcmp (name, "font") == 0) - { - self->font = grub_font_get (value); - } - else if (grub_strcmp (name, "text_color") == 0) - { - grub_video_parse_color (value, &self->text_color); - } - else if (grub_strcmp (name, "border_color") == 0) - { - grub_video_parse_color (value, &self->border_color); - } - else if (grub_strcmp (name, "bg_color") == 0) - { - grub_video_parse_color (value, &self->bg_color); - } - else if (grub_strcmp (name, "fg_color") == 0) - { - grub_video_parse_color (value, &self->fg_color); - } - else if (grub_strcmp (name, "bar_style") == 0) - { - self->need_to_recreate_pixmaps = 1; - self->pixmapbar_available = 1; - grub_free (self->bar_pattern); - self->bar_pattern = value ? grub_strdup (value) : 0; - } - else if (grub_strcmp (name, "highlight_style") == 0) - { - self->need_to_recreate_pixmaps = 1; - self->pixmapbar_available = 1; - grub_free (self->highlight_pattern); - self->highlight_pattern = value ? grub_strdup (value) : 0; - } - else if (grub_strcmp (name, "highlight_overlay") == 0) - { - self->highlight_overlay = grub_strcmp (value, "true") == 0; - } - else if (grub_strcmp (name, "theme_dir") == 0) - { - self->need_to_recreate_pixmaps = 1; - grub_free (self->theme_dir); - self->theme_dir = value ? grub_strdup (value) : 0; - } - else if (grub_strcmp (name, "id") == 0) - { - grub_gfxmenu_timeout_unregister ((grub_gui_component_t) self); - grub_free (self->id); - if (value) - self->id = grub_strdup (value); - else - self->id = 0; - if (self->id && grub_strcmp (self->id, GRUB_GFXMENU_TIMEOUT_COMPONENT_ID) - == 0) - grub_gfxmenu_timeout_register ((grub_gui_component_t) self, - progress_bar_set_state); - } - return grub_errno; -} - -static struct grub_gui_component_ops progress_bar_ops = -{ - .destroy = progress_bar_destroy, - .get_id = progress_bar_get_id, - .is_instance = progress_bar_is_instance, - .paint = progress_bar_paint, - .set_parent = progress_bar_set_parent, - .get_parent = progress_bar_get_parent, - .set_bounds = progress_bar_set_bounds, - .get_bounds = progress_bar_get_bounds, - .get_minimal_size = progress_bar_get_minimal_size, - .set_property = progress_bar_set_property -}; - -static struct grub_gui_progress_ops progress_bar_pb_ops = - { - .set_state = progress_bar_set_state - }; - -grub_gui_component_t -grub_gui_progress_bar_new (void) -{ - grub_gui_progress_bar_t self; - self = grub_zalloc (sizeof (*self)); - if (! self) - return 0; - - self->progress.ops = &progress_bar_pb_ops; - self->progress.component.ops = &progress_bar_ops; - self->visible = 1; - self->font = grub_font_get ("Unknown Regular 16"); - grub_video_rgba_color_t black = { .red = 0, .green = 0, .blue = 0, .alpha = 255 }; - grub_video_rgba_color_t gray = { .red = 128, .green = 128, .blue = 128, .alpha = 255 }; - grub_video_rgba_color_t lightgray = { .red = 200, .green = 200, .blue = 200, .alpha = 255 }; - self->text_color = black; - self->border_color = black; - self->bg_color = gray; - self->fg_color = lightgray; - self->highlight_overlay = 0; - - return (grub_gui_component_t) self; -} diff --git a/thirdparty/grub-2.04/grub-core/gfxmenu/gui_string_util.c b/thirdparty/grub-2.04/grub-core/gfxmenu/gui_string_util.c deleted file mode 100644 index a9a415e31..000000000 --- a/thirdparty/grub-2.04/grub-core/gfxmenu/gui_string_util.c +++ /dev/null @@ -1,206 +0,0 @@ -/* gui_string_util.c - String utilities used by the GUI system. */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2008,2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include - -/* Create a new NUL-terminated string on the heap as a substring of BUF. - The range of buf included is the half-open interval [START,END). - The index START is inclusive, END is exclusive. */ -char * -grub_new_substring (const char *buf, - grub_size_t start, grub_size_t end) -{ - if (end < start) - return 0; - grub_size_t len = end - start; - char *s = grub_malloc (len + 1); - if (! s) - return 0; - grub_memcpy (s, buf + start, len); - s[len] = '\0'; - return s; -} - -/* Eliminate "." and ".." path elements from PATH. A new heap-allocated - string is returned. */ -static char * -canonicalize_path (const char *path) -{ - int i; - const char *p; - char *newpath = 0; - - /* Count the path components in path. */ - int components = 1; - for (p = path; *p; p++) - if (*p == '/') - components++; - - char **path_array = grub_malloc (components * sizeof (*path_array)); - if (! path_array) - return 0; - - /* Initialize array elements to NULL pointers; in case once of the - allocations fails, the cleanup code can just call grub_free() for all - pointers in the array. */ - for (i = 0; i < components; i++) - path_array[i] = 0; - - /* Parse the path into path_array. */ - p = path; - for (i = 0; i < components && p; i++) - { - /* Find the end of the path element. */ - const char *end = grub_strchr (p, '/'); - if (!end) - end = p + grub_strlen (p); - - /* Copy the element. */ - path_array[i] = grub_new_substring (p, 0, end - p); - if (! path_array[i]) - goto cleanup; - - /* Advance p to point to the start of the next element, or NULL. */ - if (*end) - p = end + 1; - else - p = 0; - } - - /* Eliminate '.' and '..' elements from the path array. */ - int newpath_length = 0; - for (i = components - 1; i >= 0; --i) - { - if (! grub_strcmp (path_array[i], ".")) - { - grub_free (path_array[i]); - path_array[i] = 0; - } - else if (! grub_strcmp (path_array[i], "..") - && i > 0) - { - /* Delete the '..' and the prior path element. */ - grub_free (path_array[i]); - path_array[i] = 0; - --i; - grub_free (path_array[i]); - path_array[i] = 0; - } - else - { - newpath_length += grub_strlen (path_array[i]) + 1; - } - } - - /* Construct a new path string. */ - newpath = grub_malloc (newpath_length + 1); - if (! newpath) - goto cleanup; - - newpath[0] = '\0'; - char *newpath_end = newpath; - int first = 1; - for (i = 0; i < components; i++) - { - char *element = path_array[i]; - if (element) - { - /* For all components but the first, prefix with a slash. */ - if (! first) - newpath_end = grub_stpcpy (newpath_end, "/"); - newpath_end = grub_stpcpy (newpath_end, element); - first = 0; - } - } - -cleanup: - for (i = 0; i < components; i++) - grub_free (path_array[i]); - grub_free (path_array); - - return newpath; -} - -/* Return a new heap-allocated string representing to absolute path - to the file referred to by PATH. If PATH is an absolute path, then - the returned path is a copy of PATH. If PATH is a relative path, then - BASE is with PATH used to construct the absolute path. */ -char * -grub_resolve_relative_path (const char *base, const char *path) -{ - char *abspath; - char *canonpath; - char *p; - grub_size_t l; - - /* If PATH is an absolute path, then just use it as is. */ - if (path[0] == '/' || path[0] == '(') - return canonicalize_path (path); - - abspath = grub_malloc (grub_strlen (base) + grub_strlen (path) + 3); - if (! abspath) - return 0; - - /* Concatenate BASE and PATH. */ - p = grub_stpcpy (abspath, base); - l = grub_strlen (abspath); - if (l == 0 || abspath[l-1] != '/') - { - *p = '/'; - p++; - *p = 0; - } - grub_stpcpy (p, path); - - canonpath = canonicalize_path (abspath); - if (! canonpath) - return abspath; - - grub_free (abspath); - return canonpath; -} - -/* Get the path of the directory where the file at FILE_PATH is located. - FILE_PATH should refer to a file, not a directory. The returned path - includes a trailing slash. - This does not handle GRUB "(hd0,0)" paths properly yet since it only - looks at slashes. */ -char * -grub_get_dirname (const char *file_path) -{ - int i; - int last_slash; - - last_slash = -1; - for (i = grub_strlen (file_path) - 1; i >= 0; --i) - { - if (file_path[i] == '/') - { - last_slash = i; - break; - } - } - if (last_slash == -1) - return grub_strdup ("/"); - - return grub_new_substring (file_path, 0, last_slash + 1); -} diff --git a/thirdparty/grub-2.04/grub-core/gfxmenu/gui_util.c b/thirdparty/grub-2.04/grub-core/gfxmenu/gui_util.c deleted file mode 100644 index eba7bb39e..000000000 --- a/thirdparty/grub-2.04/grub-core/gfxmenu/gui_util.c +++ /dev/null @@ -1,101 +0,0 @@ -/* gui_util.c - GUI utility functions. */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2008 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include - - -struct find_by_id_state -{ - const char *match_id; - grub_gui_component_callback match_callback; - void *match_userdata; -}; - -static void -find_by_id_recursively (grub_gui_component_t component, void *userdata) -{ - struct find_by_id_state *state; - const char *id; - - state = (struct find_by_id_state *) userdata; - id = component->ops->get_id (component); - if (id && grub_strcmp (id, state->match_id) == 0) - state->match_callback (component, state->match_userdata); - - if (component->ops->is_instance (component, "container")) - { - grub_gui_container_t container; - container = (grub_gui_container_t) component; - container->ops->iterate_children (container, - find_by_id_recursively, - state); - } -} - -void -grub_gui_find_by_id (grub_gui_component_t root, - const char *id, - grub_gui_component_callback cb, - void *userdata) -{ - struct find_by_id_state state; - state.match_id = id; - state.match_callback = cb; - state.match_userdata = userdata; - find_by_id_recursively (root, &state); -} - - -struct iterate_recursively_state -{ - grub_gui_component_callback callback; - void *userdata; -}; - -static -void iterate_recursively_cb (grub_gui_component_t component, void *userdata) -{ - struct iterate_recursively_state *state; - - state = (struct iterate_recursively_state *) userdata; - state->callback (component, state->userdata); - - if (component->ops->is_instance (component, "container")) - { - grub_gui_container_t container; - container = (grub_gui_container_t) component; - container->ops->iterate_children (container, - iterate_recursively_cb, - state); - } -} - -void -grub_gui_iterate_recursively (grub_gui_component_t root, - grub_gui_component_callback cb, - void *userdata) -{ - struct iterate_recursively_state state; - state.callback = cb; - state.userdata = userdata; - iterate_recursively_cb (root, &state); -} diff --git a/thirdparty/grub-2.04/grub-core/gfxmenu/icon_manager.c b/thirdparty/grub-2.04/grub-core/gfxmenu/icon_manager.c deleted file mode 100644 index 1894682ef..000000000 --- a/thirdparty/grub-2.04/grub-core/gfxmenu/icon_manager.c +++ /dev/null @@ -1,257 +0,0 @@ -/* icon_manager.c - gfxmenu icon manager. */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2008,2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -/* Currently hard coded to '.png' extension. */ -static const char icon_extension[] = ".png"; - -typedef struct icon_entry -{ - char *class_name; - struct grub_video_bitmap *bitmap; - struct icon_entry *next; -} *icon_entry_t; - -struct grub_gfxmenu_icon_manager -{ - char *theme_path; - int icon_width; - int icon_height; - - /* Icon cache: linked list w/ dummy head node. */ - struct icon_entry cache; -}; - - -/* Create a new icon manager and return a point to it. */ -grub_gfxmenu_icon_manager_t -grub_gfxmenu_icon_manager_new (void) -{ - grub_gfxmenu_icon_manager_t mgr; - mgr = grub_malloc (sizeof (*mgr)); - if (! mgr) - return 0; - - mgr->theme_path = 0; - mgr->icon_width = 0; - mgr->icon_height = 0; - - /* Initialize the dummy head node. */ - mgr->cache.class_name = 0; - mgr->cache.bitmap = 0; - mgr->cache.next = 0; - - return mgr; -} - -/* Destroy the icon manager MGR, freeing all resources used by it. - -Note: Any bitmaps returned by grub_gfxmenu_icon_manager_get_icon() -are destroyed and must not be used by the caller after this function -is called. */ -void -grub_gfxmenu_icon_manager_destroy (grub_gfxmenu_icon_manager_t mgr) -{ - grub_gfxmenu_icon_manager_clear_cache (mgr); - grub_free (mgr->theme_path); - grub_free (mgr); -} - -/* Clear the icon cache. */ -void -grub_gfxmenu_icon_manager_clear_cache (grub_gfxmenu_icon_manager_t mgr) -{ - icon_entry_t cur; - icon_entry_t next; - for (cur = mgr->cache.next; cur; cur = next) - { - next = cur->next; - grub_free (cur->class_name); - grub_video_bitmap_destroy (cur->bitmap); - grub_free (cur); - } - mgr->cache.next = 0; -} - -/* Set the theme path. If the theme path is changed, the icon cache - is cleared. */ -void -grub_gfxmenu_icon_manager_set_theme_path (grub_gfxmenu_icon_manager_t mgr, - const char *path) -{ - /* Clear the cache if the theme path has changed. */ - if (mgr->theme_path == 0 && path == 0) - return; - if (mgr->theme_path == 0 || path == 0 - || grub_strcmp (mgr->theme_path, path) != 0) - grub_gfxmenu_icon_manager_clear_cache (mgr); - - grub_free (mgr->theme_path); - mgr->theme_path = path ? grub_strdup (path) : 0; -} - -/* Set the icon size. When icons are requested from the icon manager, - they are scaled to this size before being returned. If the size is - changed, the icon cache is cleared. */ -void -grub_gfxmenu_icon_manager_set_icon_size (grub_gfxmenu_icon_manager_t mgr, - int width, int height) -{ - /* If the width or height is changed, we must clear the cache, since the - scaled bitmaps are stored in the cache. */ - if (width != mgr->icon_width || height != mgr->icon_height) - grub_gfxmenu_icon_manager_clear_cache (mgr); - - mgr->icon_width = width; - mgr->icon_height = height; -} - -/* Try to load an icon for the specified CLASS_NAME in the directory DIR. - Returns 0 if the icon could not be loaded, or returns a pointer to a new - bitmap if it was successful. */ -static struct grub_video_bitmap * -try_loading_icon (grub_gfxmenu_icon_manager_t mgr, - const char *dir, const char *class_name) -{ - char *path, *ptr; - - path = grub_malloc (grub_strlen (dir) + grub_strlen (class_name) - + grub_strlen (icon_extension) + 3); - if (! path) - return 0; - - ptr = grub_stpcpy (path, dir); - if (path == ptr || ptr[-1] != '/') - *ptr++ = '/'; - ptr = grub_stpcpy (ptr, class_name); - ptr = grub_stpcpy (ptr, icon_extension); - *ptr = '\0'; - - struct grub_video_bitmap *raw_bitmap; - grub_video_bitmap_load (&raw_bitmap, path); - grub_free (path); - grub_errno = GRUB_ERR_NONE; /* Critical to clear the error!! */ - if (! raw_bitmap) - return 0; - - struct grub_video_bitmap *scaled_bitmap; - grub_video_bitmap_create_scaled (&scaled_bitmap, - mgr->icon_width, mgr->icon_height, - raw_bitmap, - GRUB_VIDEO_BITMAP_SCALE_METHOD_BEST); - grub_video_bitmap_destroy (raw_bitmap); - if (! scaled_bitmap) - return 0; - - return scaled_bitmap; -} - -/* Get the icon for the specified class CLASS_NAME. If an icon for - CLASS_NAME already exists in the cache, then a reference to the cached - bitmap is returned. If it is not cached, then it is loaded and cached. - If no icon could be could for CLASS_NAME, then 0 is returned. */ -static struct grub_video_bitmap * -get_icon_by_class (grub_gfxmenu_icon_manager_t mgr, const char *class_name) -{ - /* First check the icon cache. */ - icon_entry_t entry; - for (entry = mgr->cache.next; entry; entry = entry->next) - { - if (grub_strcmp (entry->class_name, class_name) == 0) - return entry->bitmap; - } - - if (! mgr->theme_path) - return 0; - - /* Otherwise, we search for an icon to load. */ - char *theme_dir = grub_get_dirname (mgr->theme_path); - char *icons_dir; - struct grub_video_bitmap *icon; - icon = 0; - /* First try the theme's own icons, from "grub/themes/NAME/icons/" */ - icons_dir = grub_resolve_relative_path (theme_dir, "icons/"); - if (icons_dir) - { - icon = try_loading_icon (mgr, icons_dir, class_name); - grub_free (icons_dir); - } - - grub_free (theme_dir); - if (! icon) - { - const char *icondir; - - icondir = grub_env_get ("icondir"); - if (icondir) - icon = try_loading_icon (mgr, icondir, class_name); - } - - /* No icon was found. */ - /* This should probably be noted in the cache, so that a search is not - performed each time an icon for CLASS_NAME is requested. */ - if (! icon) - return 0; - - /* Insert a new cache entry for this icon. */ - entry = grub_malloc (sizeof (*entry)); - if (! entry) - { - grub_video_bitmap_destroy (icon); - return 0; - } - entry->class_name = grub_strdup (class_name); - entry->bitmap = icon; - entry->next = mgr->cache.next; - mgr->cache.next = entry; /* Link it into the cache. */ - return entry->bitmap; -} - -/* Get the best available icon for ENTRY. Beginning with the first class - listed in the menu entry and proceeding forward, an icon for each class - is searched for. The first icon found is returned. The returned icon - is scaled to the size specified by - grub_gfxmenu_icon_manager_set_icon_size(). - - Note: Bitmaps returned by this function are destroyed when the - icon manager is destroyed. - */ -struct grub_video_bitmap * -grub_gfxmenu_icon_manager_get_icon (grub_gfxmenu_icon_manager_t mgr, - grub_menu_entry_t entry) -{ - struct grub_menu_entry_class *c; - struct grub_video_bitmap *icon; - - /* Try each class in succession. */ - icon = 0; - for (c = entry->classes; c && ! icon; c = c->next) - icon = get_icon_by_class (mgr, c->name); - return icon; -} diff --git a/thirdparty/grub-2.04/grub-core/gfxmenu/theme_loader.c b/thirdparty/grub-2.04/grub-core/gfxmenu/theme_loader.c deleted file mode 100644 index d6829bb5e..000000000 --- a/thirdparty/grub-2.04/grub-core/gfxmenu/theme_loader.c +++ /dev/null @@ -1,828 +0,0 @@ -/* theme_loader.c - Theme file loader for gfxmenu. */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2008 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -static grub_err_t -parse_proportional_spec (const char *value, signed *abs, grub_fixed_signed_t *prop); - -/* Construct a new box widget using ABSPATTERN to find the pixmap files for - it, storing the new box instance at *BOXPTR. - PATTERN should be of the form: "(hd0,0)/somewhere/style*.png". - The '*' then gets substituted with the various pixmap names that the - box uses. */ -static grub_err_t -recreate_box_absolute (grub_gfxmenu_box_t *boxptr, const char *abspattern) -{ - char *prefix; - char *suffix; - char *star; - grub_gfxmenu_box_t box; - - star = grub_strchr (abspattern, '*'); - if (! star) - return grub_error (GRUB_ERR_BAD_ARGUMENT, - "missing `*' in box pixmap pattern `%s'", abspattern); - - /* Prefix: Get the part before the '*'. */ - prefix = grub_malloc (star - abspattern + 1); - if (! prefix) - return grub_errno; - - grub_memcpy (prefix, abspattern, star - abspattern); - prefix[star - abspattern] = '\0'; - - /* Suffix: Everything after the '*' is the suffix. */ - suffix = star + 1; - - box = grub_gfxmenu_create_box (prefix, suffix); - grub_free (prefix); - if (! box) - return grub_errno; - - if (*boxptr) - (*boxptr)->destroy (*boxptr); - *boxptr = box; - return grub_errno; -} - - -/* Construct a new box widget using PATTERN to find the pixmap files for it, - storing the new widget at *BOXPTR. PATTERN should be of the form: - "somewhere/style*.png". The '*' then gets substituted with the various - pixmap names that the widget uses. - - Important! The value of *BOXPTR must be initialized! It must either - (1) Be 0 (a NULL pointer), or - (2) Be a pointer to a valid 'grub_gfxmenu_box_t' instance. - In this case, the previous instance is destroyed. */ -grub_err_t -grub_gui_recreate_box (grub_gfxmenu_box_t *boxptr, - const char *pattern, const char *theme_dir) -{ - char *abspattern; - - /* Check arguments. */ - if (! pattern) - { - /* If no pixmap pattern is given, then just create an empty box. */ - if (*boxptr) - (*boxptr)->destroy (*boxptr); - *boxptr = grub_gfxmenu_create_box (0, 0); - return grub_errno; - } - - if (! theme_dir) - return grub_error (GRUB_ERR_BAD_ARGUMENT, - "styled box missing theme directory"); - - /* Resolve to an absolute path. */ - abspattern = grub_resolve_relative_path (theme_dir, pattern); - if (! abspattern) - return grub_errno; - - /* Create the box. */ - recreate_box_absolute (boxptr, abspattern); - grub_free (abspattern); - return grub_errno; -} - -static grub_err_t -theme_get_unsigned_int_from_proportional (const char *value, - unsigned absolute_value, - unsigned int *parsed_value) -{ - grub_err_t err; - grub_fixed_signed_t frac; - signed pixels; - err = parse_proportional_spec (value, &pixels, &frac); - if (err != GRUB_ERR_NONE) - return err; - int result = grub_fixed_sfs_multiply (absolute_value, frac) + pixels; - if (result < 0) - result = 0; - *parsed_value = result; - return GRUB_ERR_NONE; -} - -/* Set the specified property NAME on the view to the given string VALUE. - The caller is responsible for the lifetimes of NAME and VALUE. */ -static grub_err_t -theme_set_string (grub_gfxmenu_view_t view, - const char *name, - const char *value, - const char *theme_dir, - const char *filename, - int line_num, - int col_num) -{ - if (! grub_strcmp ("title-font", name)) - view->title_font = grub_font_get (value); - else if (! grub_strcmp ("message-font", name)) - view->message_font = grub_font_get (value); - else if (! grub_strcmp ("terminal-font", name)) - { - grub_free (view->terminal_font_name); - view->terminal_font_name = grub_strdup (value); - if (! view->terminal_font_name) - return grub_errno; - } - else if (! grub_strcmp ("title-color", name)) - grub_video_parse_color (value, &view->title_color); - else if (! grub_strcmp ("message-color", name)) - grub_video_parse_color (value, &view->message_color); - else if (! grub_strcmp ("message-bg-color", name)) - grub_video_parse_color (value, &view->message_bg_color); - else if (! grub_strcmp ("desktop-image", name)) - { - struct grub_video_bitmap *raw_bitmap; - char *path; - path = grub_resolve_relative_path (theme_dir, value); - if (! path) - return grub_errno; - if (grub_video_bitmap_load (&raw_bitmap, path) != GRUB_ERR_NONE) - { - grub_free (path); - return grub_errno; - } - grub_free(path); - grub_video_bitmap_destroy (view->raw_desktop_image); - view->raw_desktop_image = raw_bitmap; - } - else if (! grub_strcmp ("desktop-image-scale-method", name)) - { - if (! value || ! grub_strcmp ("stretch", value)) - view->desktop_image_scale_method = - GRUB_VIDEO_BITMAP_SELECTION_METHOD_STRETCH; - else if (! grub_strcmp ("crop", value)) - view->desktop_image_scale_method = - GRUB_VIDEO_BITMAP_SELECTION_METHOD_CROP; - else if (! grub_strcmp ("padding", value)) - view->desktop_image_scale_method = - GRUB_VIDEO_BITMAP_SELECTION_METHOD_PADDING; - else if (! grub_strcmp ("fitwidth", value)) - view->desktop_image_scale_method = - GRUB_VIDEO_BITMAP_SELECTION_METHOD_FITWIDTH; - else if (! grub_strcmp ("fitheight", value)) - view->desktop_image_scale_method = - GRUB_VIDEO_BITMAP_SELECTION_METHOD_FITHEIGHT; - else - return grub_error (GRUB_ERR_BAD_ARGUMENT, - "Unsupported scale method: %s", - value); - } - else if (! grub_strcmp ("desktop-image-h-align", name)) - { - if (! grub_strcmp ("left", value)) - view->desktop_image_h_align = GRUB_VIDEO_BITMAP_H_ALIGN_LEFT; - else if (! grub_strcmp ("center", value)) - view->desktop_image_h_align = GRUB_VIDEO_BITMAP_H_ALIGN_CENTER; - else if (! grub_strcmp ("right", value)) - view->desktop_image_h_align = GRUB_VIDEO_BITMAP_H_ALIGN_RIGHT; - else - return grub_error (GRUB_ERR_BAD_ARGUMENT, - "Unsupported horizontal align method: %s", - value); - } - else if (! grub_strcmp ("desktop-image-v-align", name)) - { - if (! grub_strcmp ("top", value)) - view->desktop_image_v_align = GRUB_VIDEO_BITMAP_V_ALIGN_TOP; - else if (! grub_strcmp ("center", value)) - view->desktop_image_v_align = GRUB_VIDEO_BITMAP_V_ALIGN_CENTER; - else if (! grub_strcmp ("bottom", value)) - view->desktop_image_v_align = GRUB_VIDEO_BITMAP_V_ALIGN_BOTTOM; - else - return grub_error (GRUB_ERR_BAD_ARGUMENT, - "Unsupported vertical align method: %s", - value); - } - else if (! grub_strcmp ("desktop-color", name)) - grub_video_parse_color (value, &view->desktop_color); - else if (! grub_strcmp ("terminal-box", name)) - { - grub_err_t err; - err = grub_gui_recreate_box (&view->terminal_box, value, theme_dir); - if (err != GRUB_ERR_NONE) - return err; - } - else if (! grub_strcmp ("terminal-border", name)) - { - view->terminal_border = grub_strtoul (value, 0, 10); - if (grub_errno) - return grub_errno; - } - else if (! grub_strcmp ("terminal-left", name)) - { - unsigned int tmp; - int err = theme_get_unsigned_int_from_proportional (value, - view->screen.width, - &tmp); - if (err != GRUB_ERR_NONE) - return err; - view->terminal_rect.x = tmp; - } - else if (! grub_strcmp ("terminal-top", name)) - { - unsigned int tmp; - int err = theme_get_unsigned_int_from_proportional (value, - view->screen.height, - &tmp); - if (err != GRUB_ERR_NONE) - return err; - view->terminal_rect.y = tmp; - } - else if (! grub_strcmp ("terminal-width", name)) - { - unsigned int tmp; - int err = theme_get_unsigned_int_from_proportional (value, - view->screen.width, - &tmp); - if (err != GRUB_ERR_NONE) - return err; - view->terminal_rect.width = tmp; - } - else if (! grub_strcmp ("terminal-height", name)) - { - unsigned int tmp; - int err = theme_get_unsigned_int_from_proportional (value, - view->screen.height, - &tmp); - if (err != GRUB_ERR_NONE) - return err; - view->terminal_rect.height = tmp; - } - else if (! grub_strcmp ("title-text", name)) - { - grub_free (view->title_text); - view->title_text = grub_strdup (value); - if (! view->title_text) - return grub_errno; - } - else - { - return grub_error (GRUB_ERR_BAD_ARGUMENT, - "%s:%d:%d unknown property `%s'", - filename, line_num, col_num, name); - } - return grub_errno; -} - -struct parsebuf -{ - char *buf; - int pos; - int len; - int line_num; - int col_num; - const char *filename; - char *theme_dir; - grub_gfxmenu_view_t view; -}; - -static int -has_more (struct parsebuf *p) -{ - return p->pos < p->len; -} - -static int -read_char (struct parsebuf *p) -{ - if (has_more (p)) - { - char c; - c = p->buf[p->pos++]; - if (c == '\n') - { - p->line_num++; - p->col_num = 1; - } - else - { - p->col_num++; - } - return c; - } - else - return -1; -} - -static int -peek_char (struct parsebuf *p) -{ - if (has_more (p)) - return p->buf[p->pos]; - else - return -1; -} - -static int -is_whitespace (char c) -{ - return (c == ' ' - || c == '\t' - || c == '\r' - || c == '\n' - || c == '\f'); -} - -static void -skip_whitespace (struct parsebuf *p) -{ - while (has_more (p) && is_whitespace(peek_char (p))) - read_char (p); -} - -static void -advance_to_next_line (struct parsebuf *p) -{ - int c; - - /* Eat characters up to the newline. */ - do - { - c = read_char (p); - } - while (c != -1 && c != '\n'); -} - -static int -is_identifier_char (int c) -{ - return (c != -1 - && (grub_isalpha(c) - || grub_isdigit(c) - || c == '_' - || c == '-')); -} - -static char * -read_identifier (struct parsebuf *p) -{ - /* Index of the first character of the identifier in p->buf. */ - int start; - /* Next index after the last character of the identifer in p->buf. */ - int end; - - skip_whitespace (p); - - /* Capture the start of the identifier. */ - start = p->pos; - - /* Scan for the end. */ - while (is_identifier_char (peek_char (p))) - read_char (p); - end = p->pos; - - if (end - start < 1) - return 0; - - return grub_new_substring (p->buf, start, end); -} - -static char * -read_expression (struct parsebuf *p) -{ - int start; - int end; - - skip_whitespace (p); - if (peek_char (p) == '"') - { - /* Read as a quoted string. - The quotation marks are not included in the expression value. */ - /* Skip opening quotation mark. */ - read_char (p); - start = p->pos; - while (has_more (p) && peek_char (p) != '"') - read_char (p); - end = p->pos; - /* Skip the terminating quotation mark. */ - read_char (p); - } - else if (peek_char (p) == '(') - { - /* Read as a parenthesized string -- for tuples/coordinates. */ - /* The parentheses are included in the expression value. */ - int c; - - start = p->pos; - do - { - c = read_char (p); - } - while (c != -1 && c != ')'); - end = p->pos; - } - else if (has_more (p)) - { - /* Read as a single word -- for numeric values or words without - whitespace. */ - start = p->pos; - while (has_more (p) && ! is_whitespace (peek_char (p))) - read_char (p); - end = p->pos; - } - else - { - /* The end of the theme file has been reached. */ - grub_error (GRUB_ERR_IO, "%s:%d:%d expression expected in theme file", - p->filename, p->line_num, p->col_num); - return 0; - } - - return grub_new_substring (p->buf, start, end); -} - -static grub_err_t -parse_proportional_spec (const char *value, signed *abs, grub_fixed_signed_t *prop) -{ - signed num; - const char *ptr; - int sig = 0; - *abs = 0; - *prop = 0; - ptr = value; - while (*ptr) - { - sig = 0; - - while (*ptr == '-' || *ptr == '+') - { - if (*ptr == '-') - sig = !sig; - ptr++; - } - - num = grub_strtoul (ptr, (char **) &ptr, 0); - if (grub_errno) - return grub_errno; - if (sig) - num = -num; - if (*ptr == '%') - { - *prop += grub_fixed_fsf_divide (grub_signed_to_fixed (num), 100); - ptr++; - } - else - *abs += num; - } - return GRUB_ERR_NONE; -} - - -/* Read a GUI object specification from the theme file. - Any components created will be added to the GUI container PARENT. */ -static grub_err_t -read_object (struct parsebuf *p, grub_gui_container_t parent) -{ - grub_video_rect_t bounds; - - char *name; - name = read_identifier (p); - if (! name) - goto cleanup; - - grub_gui_component_t component = 0; - if (grub_strcmp (name, "label") == 0) - { - component = grub_gui_label_new (); - } - else if (grub_strcmp (name, "image") == 0) - { - component = grub_gui_image_new (); - } - else if (grub_strcmp (name, "vbox") == 0) - { - component = (grub_gui_component_t) grub_gui_vbox_new (); - } - else if (grub_strcmp (name, "hbox") == 0) - { - component = (grub_gui_component_t) grub_gui_hbox_new (); - } - else if (grub_strcmp (name, "canvas") == 0) - { - component = (grub_gui_component_t) grub_gui_canvas_new (); - } - else if (grub_strcmp (name, "progress_bar") == 0) - { - component = grub_gui_progress_bar_new (); - } - else if (grub_strcmp (name, "circular_progress") == 0) - { - component = grub_gui_circular_progress_new (); - } - else if (grub_strcmp (name, "boot_menu") == 0) - { - component = grub_gui_list_new (); - } - else - { - /* Unknown type. */ - grub_error (GRUB_ERR_IO, "%s:%d:%d unknown object type `%s'", - p->filename, p->line_num, p->col_num, name); - goto cleanup; - } - - if (! component) - goto cleanup; - - /* Inform the component about the theme so it can find its resources. */ - component->ops->set_property (component, "theme_dir", p->theme_dir); - component->ops->set_property (component, "theme_path", p->filename); - - /* Add the component as a child of PARENT. */ - bounds.x = 0; - bounds.y = 0; - bounds.width = -1; - bounds.height = -1; - component->ops->set_bounds (component, &bounds); - parent->ops->add (parent, component); - - skip_whitespace (p); - if (read_char (p) != '{') - { - grub_error (GRUB_ERR_IO, - "%s:%d:%d expected `{' after object type name `%s'", - p->filename, p->line_num, p->col_num, name); - goto cleanup; - } - - while (has_more (p)) - { - skip_whitespace (p); - - /* Check whether the end has been encountered. */ - if (peek_char (p) == '}') - { - /* Skip the closing brace. */ - read_char (p); - break; - } - - if (peek_char (p) == '#') - { - /* Skip comments. */ - advance_to_next_line (p); - continue; - } - - if (peek_char (p) == '+') - { - /* Skip the '+'. */ - read_char (p); - - /* Check whether this component is a container. */ - if (component->ops->is_instance (component, "container")) - { - /* Read the sub-object recursively and add it as a child. */ - if (read_object (p, (grub_gui_container_t) component) != 0) - goto cleanup; - /* After reading the sub-object, resume parsing, expecting - another property assignment or sub-object definition. */ - continue; - } - else - { - grub_error (GRUB_ERR_IO, - "%s:%d:%d attempted to add object to non-container", - p->filename, p->line_num, p->col_num); - goto cleanup; - } - } - - char *property; - property = read_identifier (p); - if (! property) - { - grub_error (GRUB_ERR_IO, "%s:%d:%d identifier expected in theme file", - p->filename, p->line_num, p->col_num); - goto cleanup; - } - - skip_whitespace (p); - if (read_char (p) != '=') - { - grub_error (GRUB_ERR_IO, - "%s:%d:%d expected `=' after property name `%s'", - p->filename, p->line_num, p->col_num, property); - grub_free (property); - goto cleanup; - } - skip_whitespace (p); - - char *value; - value = read_expression (p); - if (! value) - { - grub_free (property); - goto cleanup; - } - - /* Handle the property value. */ - if (grub_strcmp (property, "left") == 0) - parse_proportional_spec (value, &component->x, &component->xfrac); - else if (grub_strcmp (property, "top") == 0) - parse_proportional_spec (value, &component->y, &component->yfrac); - else if (grub_strcmp (property, "width") == 0) - parse_proportional_spec (value, &component->w, &component->wfrac); - else if (grub_strcmp (property, "height") == 0) - parse_proportional_spec (value, &component->h, &component->hfrac); - else - /* General property handling. */ - component->ops->set_property (component, property, value); - - grub_free (value); - grub_free (property); - if (grub_errno != GRUB_ERR_NONE) - goto cleanup; - } - -cleanup: - grub_free (name); - return grub_errno; -} - -static grub_err_t -read_property (struct parsebuf *p) -{ - char *name; - - /* Read the property name. */ - name = read_identifier (p); - if (! name) - { - advance_to_next_line (p); - return grub_errno; - } - - /* Skip whitespace before separator. */ - skip_whitespace (p); - - /* Read separator. */ - if (read_char (p) != ':') - { - grub_error (GRUB_ERR_IO, - "%s:%d:%d missing separator after property name `%s'", - p->filename, p->line_num, p->col_num, name); - goto done; - } - - /* Skip whitespace after separator. */ - skip_whitespace (p); - - /* Get the value based on its type. */ - if (peek_char (p) == '"') - { - /* String value (e.g., '"My string"'). */ - char *value = read_expression (p); - if (! value) - { - grub_error (GRUB_ERR_IO, "%s:%d:%d missing property value", - p->filename, p->line_num, p->col_num); - goto done; - } - /* If theme_set_string results in an error, grub_errno will be returned - below. */ - theme_set_string (p->view, name, value, p->theme_dir, - p->filename, p->line_num, p->col_num); - grub_free (value); - } - else - { - grub_error (GRUB_ERR_IO, - "%s:%d:%d property value invalid; " - "enclose literal values in quotes (\")", - p->filename, p->line_num, p->col_num); - goto done; - } - -done: - grub_free (name); - return grub_errno; -} - -/* Set properties on the view based on settings from the specified - theme file. */ -grub_err_t -grub_gfxmenu_view_load_theme (grub_gfxmenu_view_t view, const char *theme_path) -{ - grub_file_t file; - struct parsebuf p; - - p.view = view; - p.theme_dir = grub_get_dirname (theme_path); - - file = grub_file_open (theme_path, GRUB_FILE_TYPE_THEME); - if (! file) - { - grub_free (p.theme_dir); - return grub_errno; - } - - p.len = grub_file_size (file); - p.buf = grub_malloc (p.len); - p.pos = 0; - p.line_num = 1; - p.col_num = 1; - p.filename = theme_path; - if (! p.buf) - { - grub_file_close (file); - grub_free (p.theme_dir); - return grub_errno; - } - if (grub_file_read (file, p.buf, p.len) != p.len) - { - grub_free (p.buf); - grub_file_close (file); - grub_free (p.theme_dir); - return grub_errno; - } - - if (view->canvas) - view->canvas->component.ops->destroy (view->canvas); - - view->canvas = grub_gui_canvas_new (); - if (!view->canvas) - goto fail; - ((grub_gui_component_t) view->canvas) - ->ops->set_bounds ((grub_gui_component_t) view->canvas, - &view->screen); - - while (has_more (&p)) - { - /* Skip comments (lines beginning with #). */ - if (peek_char (&p) == '#') - { - advance_to_next_line (&p); - continue; - } - - /* Find the first non-whitespace character. */ - skip_whitespace (&p); - - /* Handle the content. */ - if (peek_char (&p) == '+') - { - /* Skip the '+'. */ - read_char (&p); - read_object (&p, view->canvas); - } - else - { - read_property (&p); - } - - if (grub_errno != GRUB_ERR_NONE) - goto fail; - } - - /* Set the new theme path. */ - grub_free (view->theme_path); - view->theme_path = grub_strdup (theme_path); - goto cleanup; - -fail: - if (view->canvas) - { - view->canvas->component.ops->destroy (view->canvas); - view->canvas = 0; - } - -cleanup: - grub_free (p.buf); - grub_file_close (file); - grub_free (p.theme_dir); - return grub_errno; -} diff --git a/thirdparty/grub-2.04/grub-core/gfxmenu/view.c b/thirdparty/grub-2.04/grub-core/gfxmenu/view.c deleted file mode 100644 index ad5e82b81..000000000 --- a/thirdparty/grub-2.04/grub-core/gfxmenu/view.c +++ /dev/null @@ -1,647 +0,0 @@ -/* view.c - Graphical menu interface MVC view. */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2008 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -static void -init_terminal (grub_gfxmenu_view_t view); -static void -init_background (grub_gfxmenu_view_t view); -static grub_gfxmenu_view_t term_view; - -/* Create a new view object, loading the theme specified by THEME_PATH and - associating MODEL with the view. */ -grub_gfxmenu_view_t -grub_gfxmenu_view_new (const char *theme_path, - int width, int height) -{ - grub_gfxmenu_view_t view; - grub_font_t default_font; - grub_video_rgba_color_t default_fg_color; - grub_video_rgba_color_t default_bg_color; - - view = grub_malloc (sizeof (*view)); - if (! view) - return 0; - - while (grub_gfxmenu_timeout_notifications) - { - struct grub_gfxmenu_timeout_notify *p; - p = grub_gfxmenu_timeout_notifications; - grub_gfxmenu_timeout_notifications = grub_gfxmenu_timeout_notifications->next; - grub_free (p); - } - - view->screen.x = 0; - view->screen.y = 0; - view->screen.width = width; - view->screen.height = height; - - view->need_to_check_sanity = 1; - view->terminal_border = 3; - view->terminal_rect.width = view->screen.width * 7 / 10; - view->terminal_rect.height = view->screen.height * 7 / 10; - view->terminal_rect.x = view->screen.x + (view->screen.width - - view->terminal_rect.width) / 2; - view->terminal_rect.y = view->screen.y + (view->screen.height - - view->terminal_rect.height) / 2; - - default_font = grub_font_get ("Unknown Regular 16"); - default_fg_color = grub_video_rgba_color_rgb (0, 0, 0); - default_bg_color = grub_video_rgba_color_rgb (255, 255, 255); - - view->canvas = 0; - - view->title_font = default_font; - view->message_font = default_font; - view->terminal_font_name = grub_strdup ("Fixed 10"); - view->title_color = default_fg_color; - view->message_color = default_bg_color; - view->message_bg_color = default_fg_color; - view->raw_desktop_image = 0; - view->scaled_desktop_image = 0; - view->desktop_image_scale_method = GRUB_VIDEO_BITMAP_SELECTION_METHOD_STRETCH; - view->desktop_image_h_align = GRUB_VIDEO_BITMAP_H_ALIGN_CENTER; - view->desktop_image_v_align = GRUB_VIDEO_BITMAP_V_ALIGN_CENTER; - view->desktop_color = default_bg_color; - view->terminal_box = grub_gfxmenu_create_box (0, 0); - view->title_text = grub_strdup (_("GRUB Boot Menu")); - view->progress_message_text = 0; - view->theme_path = 0; - - /* Set the timeout bar's frame. */ - view->progress_message_frame.width = view->screen.width * 4 / 5; - view->progress_message_frame.height = 50; - view->progress_message_frame.x = view->screen.x - + (view->screen.width - view->progress_message_frame.width) / 2; - view->progress_message_frame.y = view->screen.y - + view->screen.height - 90 - 20 - view->progress_message_frame.height; - - if (grub_gfxmenu_view_load_theme (view, theme_path) != 0) - { - grub_gfxmenu_view_destroy (view); - return 0; - } - - return view; -} - -/* Destroy the view object. All used memory is freed. */ -void -grub_gfxmenu_view_destroy (grub_gfxmenu_view_t view) -{ - if (!view) - return; - while (grub_gfxmenu_timeout_notifications) - { - struct grub_gfxmenu_timeout_notify *p; - p = grub_gfxmenu_timeout_notifications; - grub_gfxmenu_timeout_notifications = grub_gfxmenu_timeout_notifications->next; - grub_free (p); - } - grub_video_bitmap_destroy (view->raw_desktop_image); - grub_video_bitmap_destroy (view->scaled_desktop_image); - if (view->terminal_box) - view->terminal_box->destroy (view->terminal_box); - grub_free (view->terminal_font_name); - grub_free (view->title_text); - grub_free (view->progress_message_text); - grub_free (view->theme_path); - if (view->canvas) - view->canvas->component.ops->destroy (view->canvas); - grub_free (view); -} - -static void -redraw_background (grub_gfxmenu_view_t view, - const grub_video_rect_t *bounds) -{ - if (view->scaled_desktop_image) - { - struct grub_video_bitmap *img = view->scaled_desktop_image; - grub_video_blit_bitmap (img, GRUB_VIDEO_BLIT_REPLACE, - bounds->x, bounds->y, - bounds->x - view->screen.x, - bounds->y - view->screen.y, - bounds->width, bounds->height); - } - else - { - grub_video_fill_rect (grub_video_map_rgba_color (view->desktop_color), - bounds->x, bounds->y, - bounds->width, bounds->height); - } -} - -static void -draw_title (grub_gfxmenu_view_t view) -{ - if (! view->title_text) - return; - - /* Center the title. */ - int title_width = grub_font_get_string_width (view->title_font, - view->title_text); - int x = (view->screen.width - title_width) / 2; - int y = 40 + grub_font_get_ascent (view->title_font); - grub_font_draw_string (view->title_text, - view->title_font, - grub_video_map_rgba_color (view->title_color), - x, y); -} - -struct progress_value_data -{ - int visible; - int start; - int end; - int value; -}; - -struct grub_gfxmenu_timeout_notify *grub_gfxmenu_timeout_notifications; - -static void -update_timeouts (int visible, int start, int value, int end) -{ - struct grub_gfxmenu_timeout_notify *cur; - - for (cur = grub_gfxmenu_timeout_notifications; cur; cur = cur->next) - cur->set_state (cur->self, visible, start, value, end); -} - -static void -redraw_timeouts (struct grub_gfxmenu_view *view) -{ - struct grub_gfxmenu_timeout_notify *cur; - - for (cur = grub_gfxmenu_timeout_notifications; cur; cur = cur->next) - { - grub_video_rect_t bounds; - cur->self->ops->get_bounds (cur->self, &bounds); - grub_video_set_area_status (GRUB_VIDEO_AREA_ENABLED); - grub_gfxmenu_view_redraw (view, &bounds); - } -} - -void -grub_gfxmenu_print_timeout (int timeout, void *data) -{ - struct grub_gfxmenu_view *view = data; - - if (view->first_timeout == -1) - view->first_timeout = timeout; - - update_timeouts (1, -view->first_timeout, -timeout, 0); - redraw_timeouts (view); - grub_video_swap_buffers (); - if (view->double_repaint) - redraw_timeouts (view); -} - -void -grub_gfxmenu_clear_timeout (void *data) -{ - struct grub_gfxmenu_view *view = data; - - update_timeouts (0, 1, 0, 0); - redraw_timeouts (view); - grub_video_swap_buffers (); - if (view->double_repaint) - redraw_timeouts (view); -} - -static void -update_menu_visit (grub_gui_component_t component, - void *userdata) -{ - grub_gfxmenu_view_t view; - view = userdata; - if (component->ops->is_instance (component, "list")) - { - grub_gui_list_t list = (grub_gui_list_t) component; - list->ops->set_view_info (list, view); - } -} - -/* Update any boot menu components with the current menu model and - theme path. */ -static void -update_menu_components (grub_gfxmenu_view_t view) -{ - grub_gui_iterate_recursively ((grub_gui_component_t) view->canvas, - update_menu_visit, view); -} - -static void -refresh_menu_visit (grub_gui_component_t component, - void *userdata) -{ - grub_gfxmenu_view_t view; - view = userdata; - if (component->ops->is_instance (component, "list")) - { - grub_gui_list_t list = (grub_gui_list_t) component; - list->ops->refresh_list (list, view); - } -} - -/* Refresh list information (useful for submenus) */ -static void -refresh_menu_components (grub_gfxmenu_view_t view) -{ - grub_gui_iterate_recursively ((grub_gui_component_t) view->canvas, - refresh_menu_visit, view); -} - -static void -draw_message (grub_gfxmenu_view_t view) -{ - char *text = view->progress_message_text; - grub_video_rect_t f = view->progress_message_frame; - if (! text) - return; - - grub_font_t font = view->message_font; - grub_video_color_t color = grub_video_map_rgba_color (view->message_color); - - /* Border. */ - grub_video_fill_rect (color, - f.x-1, f.y-1, f.width+2, f.height+2); - /* Fill. */ - grub_video_fill_rect (grub_video_map_rgba_color (view->message_bg_color), - f.x, f.y, f.width, f.height); - - /* Center the text. */ - int text_width = grub_font_get_string_width (font, text); - int x = f.x + (f.width - text_width) / 2; - int y = (f.y + (f.height - grub_font_get_descent (font)) / 2 - + grub_font_get_ascent (font) / 2); - grub_font_draw_string (text, font, color, x, y); -} - -void -grub_gfxmenu_view_redraw (grub_gfxmenu_view_t view, - const grub_video_rect_t *region) -{ - if (grub_video_have_common_points (&view->terminal_rect, region)) - grub_gfxterm_schedule_repaint (); - - grub_video_set_active_render_target (GRUB_VIDEO_RENDER_TARGET_DISPLAY); - grub_video_area_status_t area_status; - grub_video_get_area_status (&area_status); - if (area_status == GRUB_VIDEO_AREA_ENABLED) - grub_video_set_region (region->x, region->y, - region->width, region->height); - - redraw_background (view, region); - if (view->canvas) - view->canvas->component.ops->paint (view->canvas, region); - draw_title (view); - if (grub_video_have_common_points (&view->progress_message_frame, region)) - draw_message (view); - - if (area_status == GRUB_VIDEO_AREA_ENABLED) - grub_video_set_area_status (GRUB_VIDEO_AREA_ENABLED); -} - -void -grub_gfxmenu_view_draw (grub_gfxmenu_view_t view) -{ - init_terminal (view); - - init_background (view); - - /* Clear the screen; there may be garbage left over in video memory. */ - grub_video_fill_rect (grub_video_map_rgb (0, 0, 0), - view->screen.x, view->screen.y, - view->screen.width, view->screen.height); - grub_video_swap_buffers (); - if (view->double_repaint) - grub_video_fill_rect (grub_video_map_rgb (0, 0, 0), - view->screen.x, view->screen.y, - view->screen.width, view->screen.height); - - refresh_menu_components (view); - update_menu_components (view); - - grub_video_set_area_status (GRUB_VIDEO_AREA_DISABLED); - grub_gfxmenu_view_redraw (view, &view->screen); - grub_video_swap_buffers (); - if (view->double_repaint) - { - grub_video_set_area_status (GRUB_VIDEO_AREA_DISABLED); - grub_gfxmenu_view_redraw (view, &view->screen); - } - -} - -static void -redraw_menu_visit (grub_gui_component_t component, - void *userdata) -{ - grub_gfxmenu_view_t view; - view = userdata; - if (component->ops->is_instance (component, "list")) - { - grub_video_rect_t bounds; - - component->ops->get_bounds (component, &bounds); - grub_video_set_area_status (GRUB_VIDEO_AREA_ENABLED); - grub_gfxmenu_view_redraw (view, &bounds); - } -} - -void -grub_gfxmenu_redraw_menu (grub_gfxmenu_view_t view) -{ - update_menu_components (view); - - grub_gui_iterate_recursively ((grub_gui_component_t) view->canvas, - redraw_menu_visit, view); - grub_video_swap_buffers (); - if (view->double_repaint) - { - grub_gui_iterate_recursively ((grub_gui_component_t) view->canvas, - redraw_menu_visit, view); - } -} - -void -grub_gfxmenu_set_chosen_entry (int entry, void *data) -{ - grub_gfxmenu_view_t view = data; - - view->selected = entry; - grub_gfxmenu_redraw_menu (view); -} - -static void -grub_gfxmenu_draw_terminal_box (void) -{ - grub_gfxmenu_box_t term_box; - - term_box = term_view->terminal_box; - if (!term_box) - return; - - grub_video_set_area_status (GRUB_VIDEO_AREA_DISABLED); - - term_box->set_content_size (term_box, term_view->terminal_rect.width, - term_view->terminal_rect.height); - - term_box->draw (term_box, - term_view->terminal_rect.x - term_box->get_left_pad (term_box), - term_view->terminal_rect.y - term_box->get_top_pad (term_box)); -} - -static void -get_min_terminal (grub_font_t terminal_font, - unsigned int border_width, - unsigned int *min_terminal_width, - unsigned int *min_terminal_height) -{ - struct grub_font_glyph *glyph; - glyph = grub_font_get_glyph (terminal_font, 'M'); - *min_terminal_width = (glyph? glyph->device_width : 8) * 80 - + 2 * border_width; - *min_terminal_height = grub_font_get_max_char_height (terminal_font) * 24 - + 2 * border_width; -} - -static void -terminal_sanity_check (grub_gfxmenu_view_t view) -{ - if (!view->need_to_check_sanity) - return; - - /* terminal_font was checked before in the init_terminal function. */ - grub_font_t terminal_font = grub_font_get (view->terminal_font_name); - - /* Non-negative numbers below. */ - int scr_x = view->screen.x; - int scr_y = view->screen.y; - int scr_width = view->screen.width; - int scr_height = view->screen.height; - int term_x = view->terminal_rect.x; - int term_y = view->terminal_rect.y; - int term_width = view->terminal_rect.width; - int term_height = view->terminal_rect.height; - - /* Check that border_width isn't too big. */ - unsigned int border_width = view->terminal_border; - unsigned int min_terminal_width; - unsigned int min_terminal_height; - get_min_terminal (terminal_font, border_width, - &min_terminal_width, &min_terminal_height); - if (border_width > 3 && ((int) min_terminal_width >= scr_width - || (int) min_terminal_height >= scr_height)) - { - border_width = 3; - get_min_terminal (terminal_font, border_width, - &min_terminal_width, &min_terminal_height); - } - - /* Sanity checks. */ - if (term_width > scr_width) - term_width = scr_width; - if (term_height > scr_height) - term_height = scr_height; - - if (scr_width <= (int) min_terminal_width - || scr_height <= (int) min_terminal_height) - { - /* The screen resulution is too low. Use all space, except a small border - to show the user, that it is a window. Then center the window. */ - term_width = scr_width - 6 * border_width; - term_height = scr_height - 6 * border_width; - term_x = scr_x + (scr_width - term_width) / 2; - term_y = scr_y + (scr_height - term_height) / 2; - } - else if (term_width < (int) min_terminal_width - || term_height < (int) min_terminal_height) - { - /* The screen resolution is big enough. Make sure, that terminal screen - dimensions aren't less than minimal values. Then center the window. */ - term_width = (int) min_terminal_width; - term_height = (int) min_terminal_height; - term_x = scr_x + (scr_width - term_width) / 2; - term_y = scr_y + (scr_height - term_height) / 2; - } - - /* At this point w and h are satisfying. */ - if (term_x + term_width > scr_width) - term_x = scr_width - term_width; - if (term_y + term_height > scr_height) - term_y = scr_height - term_height; - - /* Write down corrected data. */ - view->terminal_rect.x = (unsigned int) term_x; - view->terminal_rect.y = (unsigned int) term_y; - view->terminal_rect.width = (unsigned int) term_width; - view->terminal_rect.height = (unsigned int) term_height; - view->terminal_border = border_width; - - view->need_to_check_sanity = 0; -} - -static void -init_terminal (grub_gfxmenu_view_t view) -{ - grub_font_t terminal_font; - - terminal_font = grub_font_get (view->terminal_font_name); - if (!terminal_font) - { - grub_error (GRUB_ERR_BAD_FONT, "no font loaded"); - return; - } - - /* Check that terminal window size and position are sane. */ - terminal_sanity_check (view); - - term_view = view; - - /* Note: currently there is no API for changing the gfxterm font - on the fly, so whatever font the initially loaded theme specifies - will be permanent. */ - grub_gfxterm_set_window (GRUB_VIDEO_RENDER_TARGET_DISPLAY, - view->terminal_rect.x, - view->terminal_rect.y, - view->terminal_rect.width, - view->terminal_rect.height, - view->double_repaint, - terminal_font, - view->terminal_border); - grub_gfxterm_decorator_hook = grub_gfxmenu_draw_terminal_box; -} - -static void -init_background (grub_gfxmenu_view_t view) -{ - if (view->scaled_desktop_image) - return; - - struct grub_video_bitmap *scaled_bitmap; - if (view->desktop_image_scale_method == - GRUB_VIDEO_BITMAP_SELECTION_METHOD_STRETCH) - grub_video_bitmap_create_scaled (&scaled_bitmap, - view->screen.width, - view->screen.height, - view->raw_desktop_image, - GRUB_VIDEO_BITMAP_SCALE_METHOD_BEST); - else - grub_video_bitmap_scale_proportional (&scaled_bitmap, - view->screen.width, - view->screen.height, - view->raw_desktop_image, - GRUB_VIDEO_BITMAP_SCALE_METHOD_BEST, - view->desktop_image_scale_method, - view->desktop_image_v_align, - view->desktop_image_h_align); - if (! scaled_bitmap) - return; - view->scaled_desktop_image = scaled_bitmap; - -} - -/* FIXME: previously notifications were displayed in special case. - Is it necessary? - */ -#if 0 -/* Sets MESSAGE as the progress message for the view. - MESSAGE can be 0, in which case no message is displayed. */ -static void -set_progress_message (grub_gfxmenu_view_t view, const char *message) -{ - grub_free (view->progress_message_text); - if (message) - view->progress_message_text = grub_strdup (message); - else - view->progress_message_text = 0; -} - -static void -notify_booting (grub_menu_entry_t entry, void *userdata) -{ - grub_gfxmenu_view_t view = (grub_gfxmenu_view_t) userdata; - - char *s = grub_malloc (100 + grub_strlen (entry->title)); - if (!s) - return; - - grub_sprintf (s, "Booting '%s'", entry->title); - set_progress_message (view, s); - grub_free (s); - grub_gfxmenu_view_redraw (view, &view->progress_message_frame); - grub_video_swap_buffers (); - if (view->double_repaint) - grub_gfxmenu_view_redraw (view, &view->progress_message_frame); -} - -static void -notify_fallback (grub_menu_entry_t entry, void *userdata) -{ - grub_gfxmenu_view_t view = (grub_gfxmenu_view_t) userdata; - - char *s = grub_malloc (100 + grub_strlen (entry->title)); - if (!s) - return; - - grub_sprintf (s, "Falling back to '%s'", entry->title); - set_progress_message (view, s); - grub_free (s); - grub_gfxmenu_view_redraw (view, &view->progress_message_frame); - grub_video_swap_buffers (); - if (view->double_repaint) - grub_gfxmenu_view_redraw (view, &view->progress_message_frame); -} - -static void -notify_execution_failure (void *userdata __attribute__ ((unused))) -{ -} - - -static struct grub_menu_execute_callback execute_callback = -{ - .notify_booting = notify_booting, - .notify_fallback = notify_fallback, - .notify_failure = notify_execution_failure -}; - -#endif diff --git a/thirdparty/grub-2.04/grub-core/gfxmenu/widget-box.c b/thirdparty/grub-2.04/grub-core/gfxmenu/widget-box.c deleted file mode 100644 index b60602889..000000000 --- a/thirdparty/grub-2.04/grub-core/gfxmenu/widget-box.c +++ /dev/null @@ -1,360 +0,0 @@ -/* widget_box.c - Pixmap-stylized box widget. */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2008,2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include -#include - -enum box_pixmaps -{ - BOX_PIXMAP_NW, BOX_PIXMAP_NE, BOX_PIXMAP_SE, BOX_PIXMAP_SW, - BOX_PIXMAP_N, BOX_PIXMAP_E, BOX_PIXMAP_S, BOX_PIXMAP_W, - BOX_PIXMAP_CENTER -}; - -static const char *box_pixmap_names[] = { - /* Corners: */ - "nw", "ne", "se", "sw", - /* Sides: */ - "n", "e", "s", "w", - /* Center: */ - "c" -}; - -#define BOX_NUM_PIXMAPS (sizeof(box_pixmap_names)/sizeof(*box_pixmap_names)) - -static int -get_height (struct grub_video_bitmap *bitmap) -{ - if (bitmap) - return grub_video_bitmap_get_height (bitmap); - else - return 0; -} - -static int -get_width (struct grub_video_bitmap *bitmap) -{ - if (bitmap) - return grub_video_bitmap_get_width (bitmap); - else - return 0; -} - -static void -blit (grub_gfxmenu_box_t self, int pixmap_index, int x, int y) -{ - struct grub_video_bitmap *bitmap; - bitmap = self->scaled_pixmaps[pixmap_index]; - if (! bitmap) - return; - grub_video_blit_bitmap (bitmap, GRUB_VIDEO_BLIT_BLEND, - x, y, 0, 0, - grub_video_bitmap_get_width (bitmap), - grub_video_bitmap_get_height (bitmap)); -} - -static void -draw (grub_gfxmenu_box_t self, int x, int y) -{ - int height_n; - int width_w; - int tmp; - - /* Count maximum height of NW, N, NE. */ - height_n = get_height (self->scaled_pixmaps[BOX_PIXMAP_NW]); - tmp = get_height (self->scaled_pixmaps[BOX_PIXMAP_N]); - if (tmp > height_n) - height_n = tmp; - tmp = get_height (self->scaled_pixmaps[BOX_PIXMAP_NE]); - if (tmp > height_n) - height_n = tmp; - - /* Count maximum width of NW, W, SW. */ - width_w = get_width (self->scaled_pixmaps[BOX_PIXMAP_NW]); - tmp = get_width (self->scaled_pixmaps[BOX_PIXMAP_W]); - if (tmp > width_w) - width_w = tmp; - tmp = get_width (self->scaled_pixmaps[BOX_PIXMAP_SW]); - if (tmp > width_w) - width_w = tmp; - - /* Draw sides. */ - blit (self, BOX_PIXMAP_N, x + width_w, y); - blit (self, BOX_PIXMAP_S, x + width_w, y + height_n + self->content_height); - blit (self, BOX_PIXMAP_E, x + width_w + self->content_width, y + height_n); - blit (self, BOX_PIXMAP_W, x, y + height_n); - - /* Draw corners. */ - blit (self, BOX_PIXMAP_NW, x, y); - blit (self, BOX_PIXMAP_NE, x + width_w + self->content_width, y); - blit (self, BOX_PIXMAP_SE, - x + width_w + self->content_width, - y + height_n + self->content_height); - blit (self, BOX_PIXMAP_SW, x, y + height_n + self->content_height); - - /* Draw center. */ - blit (self, BOX_PIXMAP_CENTER, x + width_w, y + height_n); -} - -static grub_err_t -scale_pixmap (grub_gfxmenu_box_t self, int i, int w, int h) -{ - struct grub_video_bitmap **scaled = &self->scaled_pixmaps[i]; - struct grub_video_bitmap *raw = self->raw_pixmaps[i]; - - if (raw == 0) - return grub_errno; - - if (w == -1) - w = grub_video_bitmap_get_width (raw); - if (h == -1) - h = grub_video_bitmap_get_height (raw); - - if (*scaled == 0 - || ((int) grub_video_bitmap_get_width (*scaled) != w) - || ((int) grub_video_bitmap_get_height (*scaled) != h)) - { - if (*scaled) - { - grub_video_bitmap_destroy (*scaled); - *scaled = 0; - } - - /* Don't try to create a bitmap with a zero dimension. */ - if (w != 0 && h != 0) - grub_video_bitmap_create_scaled (scaled, w, h, raw, - GRUB_VIDEO_BITMAP_SCALE_METHOD_BEST); - } - - return grub_errno; -} - -static void -set_content_size (grub_gfxmenu_box_t self, - int width, int height) -{ - self->content_width = width; - self->content_height = height; - - /* Resize sides to match the width and height. */ - /* It is assumed that the corners width/height match the adjacent sides. */ - - /* Resize N and S sides to match width. */ - if (scale_pixmap(self, BOX_PIXMAP_N, width, -1) != GRUB_ERR_NONE) - return; - if (scale_pixmap(self, BOX_PIXMAP_S, width, -1) != GRUB_ERR_NONE) - return; - - /* Resize E and W sides to match height. */ - if (scale_pixmap(self, BOX_PIXMAP_E, -1, height) != GRUB_ERR_NONE) - return; - if (scale_pixmap(self, BOX_PIXMAP_W, -1, height) != GRUB_ERR_NONE) - return; - - /* Don't scale the corners--they are assumed to match the sides. */ - if (scale_pixmap(self, BOX_PIXMAP_NW, -1, -1) != GRUB_ERR_NONE) - return; - if (scale_pixmap(self, BOX_PIXMAP_SW, -1, -1) != GRUB_ERR_NONE) - return; - if (scale_pixmap(self, BOX_PIXMAP_NE, -1, -1) != GRUB_ERR_NONE) - return; - if (scale_pixmap(self, BOX_PIXMAP_SE, -1, -1) != GRUB_ERR_NONE) - return; - - /* Scale the center area. */ - if (scale_pixmap(self, BOX_PIXMAP_CENTER, width, height) != GRUB_ERR_NONE) - return; -} - -static int -get_border_width (grub_gfxmenu_box_t self) -{ - return (get_width (self->raw_pixmaps[BOX_PIXMAP_E]) - + get_width (self->raw_pixmaps[BOX_PIXMAP_W])); -} - -static int -get_left_pad (grub_gfxmenu_box_t self) -{ - int v, c; - - v = get_width (self->raw_pixmaps[BOX_PIXMAP_W]); - c = get_width (self->raw_pixmaps[BOX_PIXMAP_NW]); - if (c > v) - v = c; - c = get_width (self->raw_pixmaps[BOX_PIXMAP_SW]); - if (c > v) - v = c; - - return v; -} - -static int -get_top_pad (grub_gfxmenu_box_t self) -{ - int v, c; - - v = get_height (self->raw_pixmaps[BOX_PIXMAP_N]); - c = get_height (self->raw_pixmaps[BOX_PIXMAP_NW]); - if (c > v) - v = c; - c = get_height (self->raw_pixmaps[BOX_PIXMAP_NE]); - if (c > v) - v = c; - - return v; -} - -static int -get_right_pad (grub_gfxmenu_box_t self) -{ - int v, c; - - v = get_width (self->raw_pixmaps[BOX_PIXMAP_E]); - c = get_width (self->raw_pixmaps[BOX_PIXMAP_NE]); - if (c > v) - v = c; - c = get_width (self->raw_pixmaps[BOX_PIXMAP_SE]); - if (c > v) - v = c; - - return v; -} - -static int -get_bottom_pad (grub_gfxmenu_box_t self) -{ - int v, c; - - v = get_height (self->raw_pixmaps[BOX_PIXMAP_S]); - c = get_height (self->raw_pixmaps[BOX_PIXMAP_SW]); - if (c > v) - v = c; - c = get_height (self->raw_pixmaps[BOX_PIXMAP_SE]); - if (c > v) - v = c; - - return v; -} - -static void -destroy (grub_gfxmenu_box_t self) -{ - unsigned i; - for (i = 0; i < BOX_NUM_PIXMAPS; i++) - { - if (self->raw_pixmaps[i]) - grub_video_bitmap_destroy(self->raw_pixmaps[i]); - self->raw_pixmaps[i] = 0; - - if (self->scaled_pixmaps[i]) - grub_video_bitmap_destroy(self->scaled_pixmaps[i]); - self->scaled_pixmaps[i] = 0; - } - grub_free (self->raw_pixmaps); - self->raw_pixmaps = 0; - grub_free (self->scaled_pixmaps); - self->scaled_pixmaps = 0; - - /* Free self: must be the last step! */ - grub_free (self); -} - - -/* Create a new box. If PIXMAPS_PREFIX and PIXMAPS_SUFFIX are both non-null, - then an attempt is made to load the north, south, east, west, northwest, - northeast, southeast, southwest, and center pixmaps. - If either PIXMAPS_PREFIX or PIXMAPS_SUFFIX is 0, then no pixmaps are - loaded, and the box has zero-width borders and is drawn transparent. */ -grub_gfxmenu_box_t -grub_gfxmenu_create_box (const char *pixmaps_prefix, - const char *pixmaps_suffix) -{ - unsigned i; - grub_gfxmenu_box_t box; - - box = (grub_gfxmenu_box_t) grub_malloc (sizeof (*box)); - if (! box) - return 0; - - box->content_width = 0; - box->content_height = 0; - box->raw_pixmaps = - (struct grub_video_bitmap **) - grub_malloc (BOX_NUM_PIXMAPS * sizeof (struct grub_video_bitmap *)); - box->scaled_pixmaps = - (struct grub_video_bitmap **) - grub_malloc (BOX_NUM_PIXMAPS * sizeof (struct grub_video_bitmap *)); - - /* Initialize all pixmap pointers to NULL so that proper destruction can - be performed if an error is encountered partway through construction. */ - for (i = 0; i < BOX_NUM_PIXMAPS; i++) - box->raw_pixmaps[i] = 0; - for (i = 0; i < BOX_NUM_PIXMAPS; i++) - box->scaled_pixmaps[i] = 0; - - /* Load the pixmaps. */ - for (i = 0; i < BOX_NUM_PIXMAPS; i++) - { - if (pixmaps_prefix && pixmaps_suffix) - { - char *path; - char *path_end; - - path = grub_malloc (grub_strlen (pixmaps_prefix) - + grub_strlen (box_pixmap_names[i]) - + grub_strlen (pixmaps_suffix) - + 1); - if (! path) - goto fail_and_destroy; - - /* Construct the specific path for this pixmap. */ - path_end = grub_stpcpy (path, pixmaps_prefix); - path_end = grub_stpcpy (path_end, box_pixmap_names[i]); - path_end = grub_stpcpy (path_end, pixmaps_suffix); - - grub_video_bitmap_load (&box->raw_pixmaps[i], path); - grub_free (path); - - /* Ignore missing pixmaps. */ - grub_errno = GRUB_ERR_NONE; - } - } - - box->draw = draw; - box->set_content_size = set_content_size; - box->get_border_width = get_border_width; - - box->get_left_pad = get_left_pad; - box->get_top_pad = get_top_pad; - box->get_right_pad = get_right_pad; - box->get_bottom_pad = get_bottom_pad; - box->destroy = destroy; - return box; - -fail_and_destroy: - destroy (box); - return 0; -} diff --git a/thirdparty/grub-2.04/grub-core/gmodule.pl.in b/thirdparty/grub-2.04/grub-core/gmodule.pl.in deleted file mode 100644 index 78aa1e64e..000000000 --- a/thirdparty/grub-2.04/grub-core/gmodule.pl.in +++ /dev/null @@ -1,30 +0,0 @@ -### -### Generate GDB commands, that load symbols for specified module, -### with proper section relocations. See .gdbinit -### -### $Id: gmodule.pl,v 1.2 2006/05/14 11:38:42 lkundrak Exp lkundrak $ -### Lubomir Kundrak -### - -use strict; - -while (<>) { - my ($name, %sections) = split; - - print "add-symbol-file $name.module"; - - open (READELF, "readelf -S $name.mod |") or die; - while () { - /\[\s*(\d+)\]\s+(\.\S+)/ or next; - - if ($2 eq '.text') { - print " $sections{$1}"; - next; - } - - print " -s $2 $sections{$1}" - if ($sections{$1} ne '0x0' and $sections{$1} ne ''); - }; - close (READELF); - print "\n"; -} diff --git a/thirdparty/grub-2.04/grub-core/hello/hello.c b/thirdparty/grub-2.04/grub-core/hello/hello.c deleted file mode 100644 index 456b7c322..000000000 --- a/thirdparty/grub-2.04/grub-core/hello/hello.c +++ /dev/null @@ -1,51 +0,0 @@ -/* hello.c - test module for dynamic loading */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2003,2007 Free Software Foundation, Inc. - * Copyright (C) 2003 NIIBE Yutaka - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -static grub_err_t -grub_cmd_hello (grub_extcmd_context_t ctxt __attribute__ ((unused)), - int argc __attribute__ ((unused)), - char **args __attribute__ ((unused))) -{ - grub_printf ("%s\n", _("Hello World")); - return 0; -} - -static grub_extcmd_t cmd; - -GRUB_MOD_INIT(hello) -{ - cmd = grub_register_extcmd ("hello", grub_cmd_hello, 0, 0, - N_("Say `Hello World'."), 0); -} - -GRUB_MOD_FINI(hello) -{ - grub_unregister_extcmd (cmd); -} diff --git a/thirdparty/grub-2.04/grub-core/hook/datehook.c b/thirdparty/grub-2.04/grub-core/hook/datehook.c deleted file mode 100644 index ac75908ef..000000000 --- a/thirdparty/grub-2.04/grub-core/hook/datehook.c +++ /dev/null @@ -1,110 +0,0 @@ -/* datehook.c - Module to install datetime hooks. */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2008 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -static const char *grub_datetime_names[] = -{ - "YEAR", - "MONTH", - "DAY", - "HOUR", - "MINUTE", - "SECOND", - "WEEKDAY", -}; - -static const char * -grub_read_hook_datetime (struct grub_env_var *var, - const char *val __attribute__ ((unused))) -{ - struct grub_datetime datetime; - static char buf[6]; - - buf[0] = 0; - if (! grub_get_datetime (&datetime)) - { - int i; - - for (i = 0; i < 7; i++) - if (grub_strcmp (var->name, grub_datetime_names[i]) == 0) - { - int n; - - switch (i) - { - case 0: - n = datetime.year; - break; - case 1: - n = datetime.month; - break; - case 2: - n = datetime.day; - break; - case 3: - n = datetime.hour; - break; - case 4: - n = datetime.minute; - break; - case 5: - n = datetime.second; - break; - default: - return grub_get_weekday_name (&datetime); - } - - grub_snprintf (buf, sizeof (buf), "%d", n); - break; - } - } - - return buf; -} - -GRUB_MOD_INIT(datehook) -{ - unsigned i; - - for (i = 0; i < ARRAY_SIZE (grub_datetime_names); i++) - { - grub_register_variable_hook (grub_datetime_names[i], - grub_read_hook_datetime, 0); - grub_env_export (grub_datetime_names[i]); - } -} - -GRUB_MOD_FINI(datehook) -{ - unsigned i; - - for (i = 0; i < ARRAY_SIZE (grub_datetime_names); i++) - { - grub_register_variable_hook (grub_datetime_names[i], 0, 0); - grub_env_unset (grub_datetime_names[i]); - } -} diff --git a/thirdparty/grub-2.04/grub-core/io/bufio.c b/thirdparty/grub-2.04/grub-core/io/bufio.c deleted file mode 100644 index a458c3aca..000000000 --- a/thirdparty/grub-2.04/grub-core/io/bufio.c +++ /dev/null @@ -1,214 +0,0 @@ -/* bufio.c - buffered io access */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2008 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -#define GRUB_BUFIO_DEF_SIZE 8192 -#define GRUB_BUFIO_MAX_SIZE 1048576 - -struct grub_bufio -{ - grub_file_t file; - grub_size_t block_size; - grub_size_t buffer_len; - grub_off_t buffer_at; - char buffer[0]; -}; -typedef struct grub_bufio *grub_bufio_t; - -static struct grub_fs grub_bufio_fs; - -grub_file_t -grub_bufio_open (grub_file_t io, grub_size_t size) -{ - grub_file_t file; - grub_bufio_t bufio = 0; - - file = (grub_file_t) grub_zalloc (sizeof (*file)); - if (! file) - return 0; - - if (size == 0) - size = GRUB_BUFIO_DEF_SIZE; - else if (size > GRUB_BUFIO_MAX_SIZE) - size = GRUB_BUFIO_MAX_SIZE; - - if (size > io->size) - size = ((io->size > GRUB_BUFIO_MAX_SIZE) ? GRUB_BUFIO_MAX_SIZE : - io->size); - - /* - * Round up size to power of 2 which the binary math to - * calculate next_buf in grub_bufio_read() requires. - */ - while (size & (size - 1)) - size = (size | (size - 1)) + 1; - - bufio = grub_zalloc (sizeof (struct grub_bufio) + size); - if (! bufio) - { - grub_free (file); - return 0; - } - - bufio->file = io; - bufio->block_size = size; - - file->device = io->device; - file->size = io->size; - file->data = bufio; - file->fs = &grub_bufio_fs; - file->not_easily_seekable = io->not_easily_seekable; - - return file; -} - -grub_file_t -grub_buffile_open (const char *name, enum grub_file_type type, grub_size_t size) -{ - grub_file_t io, file; - - io = grub_file_open (name, type); - if (! io) - return 0; - - file = grub_bufio_open (io, size); - if (! file) - { - grub_file_close (io); - return 0; - } - - return file; -} - -static grub_ssize_t -grub_bufio_read (grub_file_t file, char *buf, grub_size_t len) -{ - grub_size_t res = 0; - grub_off_t next_buf; - grub_bufio_t bufio = file->data; - grub_ssize_t really_read; - - if (file->size == GRUB_FILE_SIZE_UNKNOWN) - file->size = bufio->file->size; - - /* First part: use whatever we already have in the buffer. */ - if ((file->offset >= bufio->buffer_at) && - (file->offset < bufio->buffer_at + bufio->buffer_len)) - { - grub_size_t n; - grub_uint64_t pos; - - pos = file->offset - bufio->buffer_at; - n = bufio->buffer_len - pos; - if (n > len) - n = len; - - grub_memcpy (buf, &bufio->buffer[pos], n); - len -= n; - res += n; - - buf += n; - } - if (len == 0) - return res; - - /* Need to read some more. */ - next_buf = (file->offset + res + len - 1) & ~((grub_off_t) bufio->block_size - 1); - /* Now read between file->offset + res and bufio->buffer_at. */ - if (file->offset + res < next_buf) - { - grub_size_t read_now; - read_now = next_buf - (file->offset + res); - grub_file_seek (bufio->file, file->offset + res); - really_read = grub_file_read (bufio->file, buf, read_now); - if (really_read < 0) - return -1; - if (file->size == GRUB_FILE_SIZE_UNKNOWN) - file->size = bufio->file->size; - len -= really_read; - buf += really_read; - res += really_read; - - /* Partial read. File ended unexpectedly. Save the last chunk in buffer. - */ - if (really_read != (grub_ssize_t) read_now) - { - bufio->buffer_len = really_read; - if (bufio->buffer_len > bufio->block_size) - bufio->buffer_len = bufio->block_size; - bufio->buffer_at = file->offset + res - bufio->buffer_len; - grub_memcpy (&bufio->buffer[0], buf - bufio->buffer_len, - bufio->buffer_len); - return res; - } - } - - /* Read into buffer. */ - grub_file_seek (bufio->file, next_buf); - really_read = grub_file_read (bufio->file, bufio->buffer, - bufio->block_size); - if (really_read < 0) - return -1; - bufio->buffer_at = next_buf; - bufio->buffer_len = really_read; - - if (file->size == GRUB_FILE_SIZE_UNKNOWN) - file->size = bufio->file->size; - - if (len > bufio->buffer_len) - len = bufio->buffer_len; - grub_memcpy (buf, &bufio->buffer[file->offset + res - next_buf], len); - res += len; - - return res; -} - -static grub_err_t -grub_bufio_close (grub_file_t file) -{ - grub_bufio_t bufio = file->data; - - grub_file_close (bufio->file); - grub_free (bufio); - - file->device = 0; - - return grub_errno; -} - -static struct grub_fs grub_bufio_fs = - { - .name = "bufio", - .fs_dir = 0, - .fs_open = 0, - .fs_read = grub_bufio_read, - .fs_close = grub_bufio_close, - .fs_label = 0, - .next = 0 - }; diff --git a/thirdparty/grub-2.04/grub-core/io/gzio.c b/thirdparty/grub-2.04/grub-core/io/gzio.c deleted file mode 100644 index 6208a9763..000000000 --- a/thirdparty/grub-2.04/grub-core/io/gzio.c +++ /dev/null @@ -1,1408 +0,0 @@ -/* gzio.c - decompression support for gzip */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 1999,2005,2006,2007,2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -/* - * Most of this file was originally the source file "inflate.c", written - * by Mark Adler. It has been very heavily modified. In particular, the - * original would run through the whole file at once, and this version can - * be stopped and restarted on any boundary during the decompression process. - * - * The license and header comments that file are included here. - */ - -/* inflate.c -- Not copyrighted 1992 by Mark Adler - version c10p1, 10 January 1993 */ - -/* You can do whatever you like with this source file, though I would - prefer that if you modify it and redistribute it that you include - comments to that effect with your name and the date. Thank you. - */ - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -/* - * Window Size - * - * This must be a power of two, and at least 32K for zip's deflate method - */ - -#define WSIZE 0x8000 - - -#define INBUFSIZ 0x2000 - -/* The state stored in filesystem-specific data. */ -struct grub_gzio -{ - /* The underlying file object. */ - grub_file_t file; - /* If input is in memory following fields are used instead of file. */ - grub_size_t mem_input_size, mem_input_off; - grub_uint8_t *mem_input; - /* The offset at which the data starts in the underlying file. */ - grub_off_t data_offset; - /* The type of current block. */ - int block_type; - /* The length of current block. */ - int block_len; - /* The flag of the last block. */ - int last_block; - /* The flag of codes. */ - int code_state; - /* The length of a copy. */ - unsigned inflate_n; - /* The index of a copy. */ - unsigned inflate_d; - /* The input buffer. */ - grub_uint8_t inbuf[INBUFSIZ]; - int inbuf_d; - /* The bit buffer. */ - unsigned long bb; - /* The bits in the bit buffer. */ - unsigned bk; - /* The sliding window in uncompressed data. */ - grub_uint8_t slide[WSIZE]; - /* Current position in the slide. */ - unsigned wp; - /* The literal/length code table. */ - struct huft *tl; - /* The distance code table. */ - struct huft *td; - /* The checksum algorithm */ - const gcry_md_spec_t *hdesc; - /* The wanted checksum */ - grub_uint32_t orig_checksum; - /* The uncompressed length */ - grub_size_t orig_len; - /* Context for checksum calculation */ - grub_uint8_t *hcontext; - /* The lookup bits for the literal/length code table. */ - int bl; - /* The lookup bits for the distance code table. */ - int bd; - /* The original offset value. */ - grub_off_t saved_offset; -}; -typedef struct grub_gzio *grub_gzio_t; - -/* Declare the filesystem structure for grub_gzio_open. */ -static struct grub_fs grub_gzio_fs; - -/* Function prototypes */ -static void initialize_tables (grub_gzio_t); - -/* Eat variable-length header fields. */ -static int -eat_field (grub_file_t file, int len) -{ - char ch = 1; - int not_retval = 1; - - do - { - if (len >= 0) - { - if (! (len--)) - break; - } - else - { - if (! ch) - break; - } - } - while ((not_retval = grub_file_read (file, &ch, 1)) == 1); - - return ! not_retval; -} - - -/* Little-Endian defines for the 2-byte magic numbers for gzip files. */ -#define GZIP_MAGIC grub_le_to_cpu16 (0x8B1F) -#define OLD_GZIP_MAGIC grub_le_to_cpu16 (0x9E1F) - -/* Compression methods (see algorithm.doc) */ -#define GRUB_GZ_STORED 0 -#define GRUB_GZ_COMPRESSED 1 -#define GRUB_GZ_PACKED 2 -#define GRUB_GZ_LZHED 3 -/* methods 4 to 7 reserved */ -#define GRUB_GZ_DEFLATED 8 -#define GRUB_GZ_MAX_METHODS 9 - -/* gzip flag byte */ -#define GRUB_GZ_ASCII_FLAG 0x01 /* bit 0 set: file probably ascii text */ -#define GRUB_GZ_CONTINUATION 0x02 /* bit 1 set: continuation of multi-part gzip file */ -#define GRUB_GZ_EXTRA_FIELD 0x04 /* bit 2 set: extra field present */ -#define GRUB_GZ_ORIG_NAME 0x08 /* bit 3 set: original file name present */ -#define GRUB_GZ_COMMENT 0x10 /* bit 4 set: file comment present */ -#define GRUB_GZ_ENCRYPTED 0x20 /* bit 5 set: file is encrypted */ -#define GRUB_GZ_RESERVED 0xC0 /* bit 6,7: reserved */ - -#define GRUB_GZ_UNSUPPORTED_FLAGS (GRUB_GZ_CONTINUATION | GRUB_GZ_ENCRYPTED | GRUB_GZ_RESERVED) - -/* inflate block codes */ -#define INFLATE_STORED 0 -#define INFLATE_FIXED 1 -#define INFLATE_DYNAMIC 2 - -typedef unsigned char uch; -typedef unsigned short ush; -typedef unsigned long ulg; - -static int -test_gzip_header (grub_file_t file) -{ - struct { - grub_uint16_t magic; - grub_uint8_t method; - grub_uint8_t flags; - grub_uint32_t timestamp; - grub_uint8_t extra_flags; - grub_uint8_t os_type; - } hdr; - grub_uint16_t extra_len; - grub_uint32_t crc32; - grub_gzio_t gzio = file->data; - - if (grub_file_tell (gzio->file) != 0) - grub_file_seek (gzio->file, 0); - - /* - * This checks if the file is gzipped. If a problem occurs here - * (other than a real error with the disk) then we don't think it - * is a compressed file, and simply mark it as such. - */ - if (grub_file_read (gzio->file, &hdr, 10) != 10 - || ((hdr.magic != GZIP_MAGIC) - && (hdr.magic != OLD_GZIP_MAGIC))) - return 0; - - /* - * This does consistency checking on the header data. If a - * problem occurs from here on, then we have corrupt or otherwise - * bad data, and the error should be reported to the user. - */ - if (hdr.method != GRUB_GZ_DEFLATED - || (hdr.flags & GRUB_GZ_UNSUPPORTED_FLAGS) - || ((hdr.flags & GRUB_GZ_EXTRA_FIELD) - && (grub_file_read (gzio->file, &extra_len, 2) != 2 - || eat_field (gzio->file, - grub_le_to_cpu16 (extra_len)))) - || ((hdr.flags & GRUB_GZ_ORIG_NAME) && eat_field (gzio->file, -1)) - || ((hdr.flags & GRUB_GZ_COMMENT) && eat_field (gzio->file, -1))) - return 0; - - gzio->data_offset = grub_file_tell (gzio->file); - - /* FIXME: don't do this on not easily seekable files. */ - { - grub_file_seek (gzio->file, grub_file_size (gzio->file) - 8); - if (grub_file_read (gzio->file, &crc32, 4) != 4) - return 0; - gzio->orig_checksum = grub_le_to_cpu32 (crc32); - if (grub_file_read (gzio->file, &gzio->orig_len, 4) != 4) - return 0; - /* FIXME: this does not handle files whose original size is over 4GB. - But how can we know the real original size? */ - file->size = grub_le_to_cpu32 (gzio->orig_len); - } - - initialize_tables (gzio); - - return 1; -} - - -/* Huffman code lookup table entry--this entry is four bytes for machines - that have 16-bit pointers (e.g. PC's in the small or medium model). - Valid extra bits are 0..13. e == 15 is EOB (end of block), e == 16 - means that v is a literal, 16 < e < 32 means that v is a pointer to - the next table, which codes e - 16 bits, and lastly e == 99 indicates - an unused code. If a code with e == 99 is looked up, this implies an - error in the data. */ -struct huft -{ - uch e; /* number of extra bits or operation */ - uch b; /* number of bits in this code or subcode */ - union - { - ush n; /* literal, length base, or distance base */ - struct huft *t; /* pointer to next level of table */ - } - v; -}; - - -/* The inflate algorithm uses a sliding 32K byte window on the uncompressed - stream to find repeated byte strings. This is implemented here as a - circular buffer. The index is updated simply by incrementing and then - and'ing with 0x7fff (32K-1). */ -/* It is left to other modules to supply the 32K area. It is assumed - to be usable as if it were declared "uch slide[32768];" or as just - "uch *slide;" and then malloc'ed in the latter case. The definition - must be in unzip.h, included above. */ - - -/* Tables for deflate from PKZIP's appnote.txt. */ -static unsigned bitorder[] = -{ /* Order of the bit length code lengths */ - 16, 17, 18, 0, 8, 7, 9, 6, 10, 5, 11, 4, 12, 3, 13, 2, 14, 1, 15}; -static ush cplens[] = -{ /* Copy lengths for literal codes 257..285 */ - 3, 4, 5, 6, 7, 8, 9, 10, 11, 13, 15, 17, 19, 23, 27, 31, - 35, 43, 51, 59, 67, 83, 99, 115, 131, 163, 195, 227, 258, 0, 0}; - /* note: see note #13 above about the 258 in this list. */ -static ush cplext[] = -{ /* Extra bits for literal codes 257..285 */ - 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 2, 2, 2, 2, - 3, 3, 3, 3, 4, 4, 4, 4, 5, 5, 5, 5, 0, 99, 99}; /* 99==invalid */ -static ush cpdist[] = -{ /* Copy offsets for distance codes 0..29 */ - 1, 2, 3, 4, 5, 7, 9, 13, 17, 25, 33, 49, 65, 97, 129, 193, - 257, 385, 513, 769, 1025, 1537, 2049, 3073, 4097, 6145, - 8193, 12289, 16385, 24577}; -static ush cpdext[] = -{ /* Extra bits for distance codes */ - 0, 0, 0, 0, 1, 1, 2, 2, 3, 3, 4, 4, 5, 5, 6, 6, - 7, 7, 8, 8, 9, 9, 10, 10, 11, 11, - 12, 12, 13, 13}; - - -/* - Huffman code decoding is performed using a multi-level table lookup. - The fastest way to decode is to simply build a lookup table whose - size is determined by the longest code. However, the time it takes - to build this table can also be a factor if the data being decoded - is not very long. The most common codes are necessarily the - shortest codes, so those codes dominate the decoding time, and hence - the speed. The idea is you can have a shorter table that decodes the - shorter, more probable codes, and then point to subsidiary tables for - the longer codes. The time it costs to decode the longer codes is - then traded against the time it takes to make longer tables. - - This results of this trade are in the variables lbits and dbits - below. lbits is the number of bits the first level table for literal/ - length codes can decode in one step, and dbits is the same thing for - the distance codes. Subsequent tables are also less than or equal to - those sizes. These values may be adjusted either when all of the - codes are shorter than that, in which case the longest code length in - bits is used, or when the shortest code is *longer* than the requested - table size, in which case the length of the shortest code in bits is - used. - - There are two different values for the two tables, since they code a - different number of possibilities each. The literal/length table - codes 286 possible values, or in a flat code, a little over eight - bits. The distance table codes 30 possible values, or a little less - than five bits, flat. The optimum values for speed end up being - about one bit more than those, so lbits is 8+1 and dbits is 5+1. - The optimum values may differ though from machine to machine, and - possibly even between compilers. Your mileage may vary. - */ - - -static int lbits = 9; /* bits in base literal/length lookup table */ -static int dbits = 6; /* bits in base distance lookup table */ - - -/* If BMAX needs to be larger than 16, then h and x[] should be ulg. */ -#define BMAX 16 /* maximum bit length of any code (16 for explode) */ -#define N_MAX 288 /* maximum number of codes in any set */ - - -/* Macros for inflate() bit peeking and grabbing. - The usage is: - - NEEDBITS(j) - x = b & mask_bits[j]; - DUMPBITS(j) - - where NEEDBITS makes sure that b has at least j bits in it, and - DUMPBITS removes the bits from b. The macros use the variable k - for the number of bits in b. Normally, b and k are register - variables for speed, and are initialized at the beginning of a - routine that uses these macros from a global bit buffer and count. - - If we assume that EOB will be the longest code, then we will never - ask for bits with NEEDBITS that are beyond the end of the stream. - So, NEEDBITS should not read any more bytes than are needed to - meet the request. Then no bytes need to be "returned" to the buffer - at the end of the last block. - - However, this assumption is not true for fixed blocks--the EOB code - is 7 bits, but the other literal/length codes can be 8 or 9 bits. - (The EOB code is shorter than other codes because fixed blocks are - generally short. So, while a block always has an EOB, many other - literal/length codes have a significantly lower probability of - showing up at all.) However, by making the first table have a - lookup of seven bits, the EOB code will be found in that first - lookup, and so will not require that too many bits be pulled from - the stream. - */ - -static ush mask_bits[] = -{ - 0x0000, - 0x0001, 0x0003, 0x0007, 0x000f, 0x001f, 0x003f, 0x007f, 0x00ff, - 0x01ff, 0x03ff, 0x07ff, 0x0fff, 0x1fff, 0x3fff, 0x7fff, 0xffff -}; - -#define NEEDBITS(n) do {while(k<(n)){b|=((ulg)get_byte(gzio))<>=(n);k-=(n);} while (0) - -static int -get_byte (grub_gzio_t gzio) -{ - if (gzio->mem_input) - { - if (gzio->mem_input_off < gzio->mem_input_size) - return gzio->mem_input[gzio->mem_input_off++]; - return 0; - } - - if (gzio->file && (grub_file_tell (gzio->file) - == (grub_off_t) gzio->data_offset - || gzio->inbuf_d == INBUFSIZ)) - { - gzio->inbuf_d = 0; - grub_file_read (gzio->file, gzio->inbuf, INBUFSIZ); - } - - return gzio->inbuf[gzio->inbuf_d++]; -} - -static void -gzio_seek (grub_gzio_t gzio, grub_off_t off) -{ - if (gzio->mem_input) - { - if (off > gzio->mem_input_size) - grub_error (GRUB_ERR_OUT_OF_RANGE, - N_("attempt to seek outside of the file")); - else - gzio->mem_input_off = off; - } - else - grub_file_seek (gzio->file, off); -} - -/* more function prototypes */ -static int huft_build (unsigned *, unsigned, unsigned, ush *, ush *, - struct huft **, int *); -static int huft_free (struct huft *); -static int inflate_codes_in_window (grub_gzio_t); - - -/* Given a list of code lengths and a maximum table size, make a set of - tables to decode that set of codes. Return zero on success, one if - the given code set is incomplete (the tables are still built in this - case), two if the input is invalid (all zero length codes or an - oversubscribed set of lengths), and three if not enough memory. */ - -static int -huft_build (unsigned *b, /* code lengths in bits (all assumed <= BMAX) */ - unsigned n, /* number of codes (assumed <= N_MAX) */ - unsigned s, /* number of simple-valued codes (0..s-1) */ - ush * d, /* list of base values for non-simple codes */ - ush * e, /* list of extra bits for non-simple codes */ - struct huft **t, /* result: starting table */ - int *m) /* maximum lookup bits, returns actual */ -{ - unsigned a; /* counter for codes of length k */ - unsigned c[BMAX + 1]; /* bit length count table */ - unsigned f; /* i repeats in table every f entries */ - int g; /* maximum code length */ - int h; /* table level */ - register unsigned i; /* counter, current code */ - register unsigned j; /* counter */ - register int k; /* number of bits in current code */ - int l; /* bits per table (returned in m) */ - register unsigned *p; /* pointer into c[], b[], or v[] */ - register struct huft *q; /* points to current table */ - struct huft r; /* table entry for structure assignment */ - struct huft *u[BMAX]; /* table stack */ - unsigned v[N_MAX]; /* values in order of bit length */ - register int w; /* bits before this table == (l * h) */ - unsigned x[BMAX + 1]; /* bit offsets, then code stack */ - unsigned *xp; /* pointer into x */ - int y; /* number of dummy codes added */ - unsigned z; /* number of entries in current table */ - - /* Generate counts for each bit length */ - grub_memset ((char *) c, 0, sizeof (c)); - p = b; - i = n; - do - { - c[*p]++; /* assume all entries <= BMAX */ - p++; /* Can't combine with above line (Solaris bug) */ - } - while (--i); - if (c[0] == n) /* null input--all zero length codes */ - { - *t = (struct huft *) NULL; - *m = 0; - return 0; - } - - /* Find minimum and maximum length, bound *m by those */ - l = *m; - for (j = 1; j <= BMAX; j++) - if (c[j]) - break; - k = j; /* minimum code length */ - if ((unsigned) l < j) - l = j; - for (i = BMAX; i; i--) - if (c[i]) - break; - g = i; /* maximum code length */ - if ((unsigned) l > i) - l = i; - *m = l; - - /* Adjust last length count to fill out codes, if needed */ - for (y = 1 << j; j < i; j++, y <<= 1) - if ((y -= c[j]) < 0) - return 2; /* bad input: more codes than bits */ - if ((y -= c[i]) < 0) - return 2; - c[i] += y; - - /* Generate starting offsets into the value table for each length */ - x[1] = j = 0; - p = c + 1; - xp = x + 2; - while (--i) - { /* note that i == g from above */ - *xp++ = (j += *p++); - } - - /* Make a table of values in order of bit lengths */ - p = b; - i = 0; - do - { - if ((j = *p++) != 0) - v[x[j]++] = i; - } - while (++i < n); - - /* Generate the Huffman codes and for each, make the table entries */ - x[0] = i = 0; /* first Huffman code is zero */ - p = v; /* grab values in bit order */ - h = -1; /* no tables yet--level -1 */ - w = -l; /* bits decoded == (l * h) */ - u[0] = (struct huft *) NULL; /* just to keep compilers happy */ - q = (struct huft *) NULL; /* ditto */ - z = 0; /* ditto */ - - /* go through the bit lengths (k already is bits in shortest code) */ - for (; k <= g; k++) - { - a = c[k]; - while (a--) - { - /* here i is the Huffman code of length k bits for value *p */ - /* make tables up to required level */ - while (k > w + l) - { - h++; - w += l; /* previous table always l bits */ - - /* compute minimum size table less than or equal to l bits */ - z = (z = (unsigned) (g - w)) > (unsigned) l ? (unsigned) l : z; /* upper limit on table size */ - if ((f = 1 << (j = k - w)) > a + 1) /* try a k-w bit table */ - { /* too few codes for k-w bit table */ - f -= a + 1; /* deduct codes from patterns left */ - xp = c + k; - while (++j < z) /* try smaller tables up to z bits */ - { - if ((f <<= 1) <= *++xp) - break; /* enough codes to use up j bits */ - f -= *xp; /* else deduct codes from patterns */ - } - } - z = 1 << j; /* table entries for j-bit table */ - - /* allocate and link in new table */ - q = (struct huft *) grub_zalloc ((z + 1) * sizeof (struct huft)); - if (! q) - { - if (h) - huft_free (u[0]); - return 3; - } - - *t = q + 1; /* link to list for huft_free() */ - *(t = &(q->v.t)) = (struct huft *) NULL; - u[h] = ++q; /* table starts after link */ - - /* connect to last table, if there is one */ - if (h) - { - x[h] = i; /* save pattern for backing up */ - r.b = (uch) l; /* bits to dump before this table */ - r.e = (uch) (16 + j); /* bits in this table */ - r.v.t = q; /* pointer to this table */ - j = i >> (w - l); /* (get around Turbo C bug) */ - u[h - 1][j] = r; /* connect to last table */ - } - } - - /* set up table entry in r */ - r.b = (uch) (k - w); - if (p >= v + n) - r.e = 99; /* out of values--invalid code */ - else if (*p < s) - { - r.e = (uch) (*p < 256 ? 16 : 15); /* 256 is end-of-block code */ - r.v.n = (ush) (*p); /* simple code is just the value */ - p++; /* one compiler does not like *p++ */ - } - else - { - r.e = (uch) e[*p - s]; /* non-simple--look up in lists */ - r.v.n = d[*p++ - s]; - } - - /* fill code-like entries with r */ - f = 1 << (k - w); - for (j = i >> w; j < z; j += f) - q[j] = r; - - /* backwards increment the k-bit code i */ - for (j = 1 << (k - 1); i & j; j >>= 1) - i ^= j; - i ^= j; - - /* backup over finished tables */ - while ((i & ((1 << w) - 1)) != x[h]) - { - h--; /* don't need to update q */ - w -= l; - } - } - } - - /* Return true (1) if we were given an incomplete table */ - return y != 0 && g != 1; -} - - -/* Free the malloc'ed tables built by huft_build(), which makes a linked - list of the tables it made, with the links in a dummy first entry of - each table. */ -static int -huft_free (struct huft *t) -{ - register struct huft *p, *q; - - - /* Go through linked list, freeing from the malloced (t[-1]) address. */ - p = t; - while (p != (struct huft *) NULL) - { - q = (--p)->v.t; - grub_free ((char *) p); - p = q; - } - return 0; -} - - -/* - * inflate (decompress) the codes in a deflated (compressed) block. - * Return an error code or zero if it all goes ok. - */ - -static int -inflate_codes_in_window (grub_gzio_t gzio) -{ - register unsigned e; /* table entry flag/number of extra bits */ - unsigned n, d; /* length and index for copy */ - unsigned w; /* current window position */ - struct huft *t; /* pointer to table entry */ - unsigned ml, md; /* masks for bl and bd bits */ - register ulg b; /* bit buffer */ - register unsigned k; /* number of bits in bit buffer */ - - /* make local copies of globals */ - d = gzio->inflate_d; - n = gzio->inflate_n; - b = gzio->bb; /* initialize bit buffer */ - k = gzio->bk; - w = gzio->wp; /* initialize window position */ - - /* inflate the coded data */ - ml = mask_bits[gzio->bl]; /* precompute masks for speed */ - md = mask_bits[gzio->bd]; - for (;;) /* do until end of block */ - { - if (! gzio->code_state) - { - NEEDBITS ((unsigned) gzio->bl); - if ((e = (t = gzio->tl + ((unsigned) b & ml))->e) > 16) - do - { - if (e == 99) - { - grub_error (GRUB_ERR_BAD_COMPRESSED_DATA, - "an unused code found"); - return 1; - } - DUMPBITS (t->b); - e -= 16; - NEEDBITS (e); - } - while ((e = (t = t->v.t + ((unsigned) b & mask_bits[e]))->e) > 16); - DUMPBITS (t->b); - - if (e == 16) /* then it's a literal */ - { - gzio->slide[w++] = (uch) t->v.n; - if (w == WSIZE) - break; - } - else - /* it's an EOB or a length */ - { - /* exit if end of block */ - if (e == 15) - { - gzio->block_len = 0; - break; - } - - /* get length of block to copy */ - NEEDBITS (e); - n = t->v.n + ((unsigned) b & mask_bits[e]); - DUMPBITS (e); - - /* decode distance of block to copy */ - NEEDBITS ((unsigned) gzio->bd); - if ((e = (t = gzio->td + ((unsigned) b & md))->e) > 16) - do - { - if (e == 99) - { - grub_error (GRUB_ERR_BAD_COMPRESSED_DATA, - "an unused code found"); - return 1; - } - DUMPBITS (t->b); - e -= 16; - NEEDBITS (e); - } - while ((e = (t = t->v.t + ((unsigned) b & mask_bits[e]))->e) - > 16); - DUMPBITS (t->b); - NEEDBITS (e); - d = w - t->v.n - ((unsigned) b & mask_bits[e]); - DUMPBITS (e); - gzio->code_state++; - } - } - - if (gzio->code_state) - { - /* do the copy */ - do - { - n -= (e = (e = WSIZE - ((d &= WSIZE - 1) > w ? d : w)) > n ? n - : e); - - if (w - d >= e) - { - grub_memmove (gzio->slide + w, gzio->slide + d, e); - w += e; - d += e; - } - else - /* purposefully use the overlap for extra copies here!! */ - { - while (e--) - gzio->slide[w++] = gzio->slide[d++]; - } - - if (w == WSIZE) - break; - } - while (n); - - if (! n) - gzio->code_state--; - - /* did we break from the loop too soon? */ - if (w == WSIZE) - break; - } - } - - /* restore the globals from the locals */ - gzio->inflate_d = d; - gzio->inflate_n = n; - gzio->wp = w; /* restore global window pointer */ - gzio->bb = b; /* restore global bit buffer */ - gzio->bk = k; - - return ! gzio->block_len; -} - - -/* get header for an inflated type 0 (stored) block. */ - -static void -init_stored_block (grub_gzio_t gzio) -{ - register ulg b; /* bit buffer */ - register unsigned k; /* number of bits in bit buffer */ - - /* make local copies of globals */ - b = gzio->bb; /* initialize bit buffer */ - k = gzio->bk; - - /* go to byte boundary */ - DUMPBITS (k & 7); - - /* get the length and its complement */ - NEEDBITS (16); - gzio->block_len = ((unsigned) b & 0xffff); - DUMPBITS (16); - NEEDBITS (16); - if (gzio->block_len != (int) ((~b) & 0xffff)) - grub_error (GRUB_ERR_BAD_COMPRESSED_DATA, - "the length of a stored block does not match"); - DUMPBITS (16); - - /* restore global variables */ - gzio->bb = b; - gzio->bk = k; -} - - -/* get header for an inflated type 1 (fixed Huffman codes) block. We should - either replace this with a custom decoder, or at least precompute the - Huffman tables. */ - -static void -init_fixed_block (grub_gzio_t gzio) -{ - int i; /* temporary variable */ - unsigned l[288]; /* length list for huft_build */ - - /* set up literal table */ - for (i = 0; i < 144; i++) - l[i] = 8; - for (; i < 256; i++) - l[i] = 9; - for (; i < 280; i++) - l[i] = 7; - for (; i < 288; i++) /* make a complete, but wrong code set */ - l[i] = 8; - gzio->bl = 7; - if (huft_build (l, 288, 257, cplens, cplext, &gzio->tl, &gzio->bl) != 0) - { - if (grub_errno == GRUB_ERR_NONE) - grub_error (GRUB_ERR_BAD_COMPRESSED_DATA, - "failed in building a Huffman code table"); - return; - } - - /* set up distance table */ - for (i = 0; i < 30; i++) /* make an incomplete code set */ - l[i] = 5; - gzio->bd = 5; - if (huft_build (l, 30, 0, cpdist, cpdext, &gzio->td, &gzio->bd) > 1) - { - if (grub_errno == GRUB_ERR_NONE) - grub_error (GRUB_ERR_BAD_COMPRESSED_DATA, - "failed in building a Huffman code table"); - huft_free (gzio->tl); - gzio->tl = 0; - return; - } - - /* indicate we're now working on a block */ - gzio->code_state = 0; - gzio->block_len++; -} - - -/* get header for an inflated type 2 (dynamic Huffman codes) block. */ - -static void -init_dynamic_block (grub_gzio_t gzio) -{ - int i; /* temporary variables */ - unsigned j; - unsigned l; /* last length */ - unsigned m; /* mask for bit lengths table */ - unsigned n; /* number of lengths to get */ - unsigned nb; /* number of bit length codes */ - unsigned nl; /* number of literal/length codes */ - unsigned nd; /* number of distance codes */ - unsigned ll[286 + 30]; /* literal/length and distance code lengths */ - register ulg b; /* bit buffer */ - register unsigned k; /* number of bits in bit buffer */ - - /* make local bit buffer */ - b = gzio->bb; - k = gzio->bk; - - /* read in table lengths */ - NEEDBITS (5); - nl = 257 + ((unsigned) b & 0x1f); /* number of literal/length codes */ - DUMPBITS (5); - NEEDBITS (5); - nd = 1 + ((unsigned) b & 0x1f); /* number of distance codes */ - DUMPBITS (5); - NEEDBITS (4); - nb = 4 + ((unsigned) b & 0xf); /* number of bit length codes */ - DUMPBITS (4); - if (nl > 286 || nd > 30) - { - grub_error (GRUB_ERR_BAD_COMPRESSED_DATA, "too much data"); - return; - } - - /* read in bit-length-code lengths */ - for (j = 0; j < nb; j++) - { - NEEDBITS (3); - ll[bitorder[j]] = (unsigned) b & 7; - DUMPBITS (3); - } - for (; j < 19; j++) - ll[bitorder[j]] = 0; - - /* build decoding table for trees--single level, 7 bit lookup */ - gzio->bl = 7; - if (huft_build (ll, 19, 19, NULL, NULL, &gzio->tl, &gzio->bl) != 0) - { - grub_error (GRUB_ERR_BAD_COMPRESSED_DATA, - "failed in building a Huffman code table"); - return; - } - - /* read in literal and distance code lengths */ - n = nl + nd; - m = mask_bits[gzio->bl]; - i = l = 0; - while ((unsigned) i < n) - { - NEEDBITS ((unsigned) gzio->bl); - j = (gzio->td = gzio->tl + ((unsigned) b & m))->b; - DUMPBITS (j); - j = gzio->td->v.n; - if (j < 16) /* length of code in bits (0..15) */ - ll[i++] = l = j; /* save last length in l */ - else if (j == 16) /* repeat last length 3 to 6 times */ - { - NEEDBITS (2); - j = 3 + ((unsigned) b & 3); - DUMPBITS (2); - if ((unsigned) i + j > n) - { - grub_error (GRUB_ERR_BAD_COMPRESSED_DATA, "too many codes found"); - return; - } - while (j--) - ll[i++] = l; - } - else if (j == 17) /* 3 to 10 zero length codes */ - { - NEEDBITS (3); - j = 3 + ((unsigned) b & 7); - DUMPBITS (3); - if ((unsigned) i + j > n) - { - grub_error (GRUB_ERR_BAD_COMPRESSED_DATA, "too many codes found"); - return; - } - while (j--) - ll[i++] = 0; - l = 0; - } - else - /* j == 18: 11 to 138 zero length codes */ - { - NEEDBITS (7); - j = 11 + ((unsigned) b & 0x7f); - DUMPBITS (7); - if ((unsigned) i + j > n) - { - grub_error (GRUB_ERR_BAD_COMPRESSED_DATA, "too many codes found"); - return; - } - while (j--) - ll[i++] = 0; - l = 0; - } - } - - /* free decoding table for trees */ - huft_free (gzio->tl); - gzio->td = 0; - gzio->tl = 0; - - /* restore the global bit buffer */ - gzio->bb = b; - gzio->bk = k; - - /* build the decoding tables for literal/length and distance codes */ - gzio->bl = lbits; - if (huft_build (ll, nl, 257, cplens, cplext, &gzio->tl, &gzio->bl) != 0) - { - grub_error (GRUB_ERR_BAD_COMPRESSED_DATA, - "failed in building a Huffman code table"); - return; - } - gzio->bd = dbits; - if (huft_build (ll + nl, nd, 0, cpdist, cpdext, &gzio->td, &gzio->bd) != 0) - { - huft_free (gzio->tl); - gzio->tl = 0; - grub_error (GRUB_ERR_BAD_COMPRESSED_DATA, - "failed in building a Huffman code table"); - return; - } - - /* indicate we're now working on a block */ - gzio->code_state = 0; - gzio->block_len++; -} - - -static void -get_new_block (grub_gzio_t gzio) -{ - register ulg b; /* bit buffer */ - register unsigned k; /* number of bits in bit buffer */ - - /* make local bit buffer */ - b = gzio->bb; - k = gzio->bk; - - /* read in last block bit */ - NEEDBITS (1); - gzio->last_block = (int) b & 1; - DUMPBITS (1); - - /* read in block type */ - NEEDBITS (2); - gzio->block_type = (unsigned) b & 3; - DUMPBITS (2); - - /* restore the global bit buffer */ - gzio->bb = b; - gzio->bk = k; - - switch (gzio->block_type) - { - case INFLATE_STORED: - init_stored_block (gzio); - break; - case INFLATE_FIXED: - init_fixed_block (gzio); - break; - case INFLATE_DYNAMIC: - init_dynamic_block (gzio); - break; - default: - break; - } -} - - -static void -inflate_window (grub_gzio_t gzio) -{ - /* initialize window */ - gzio->wp = 0; - - /* - * Main decompression loop. - */ - - while (gzio->wp < WSIZE && grub_errno == GRUB_ERR_NONE) - { - if (! gzio->block_len) - { - if (gzio->last_block) - break; - - get_new_block (gzio); - } - - if (gzio->block_type > INFLATE_DYNAMIC) - grub_error (GRUB_ERR_BAD_COMPRESSED_DATA, - "unknown block type %d", gzio->block_type); - - if (grub_errno != GRUB_ERR_NONE) - return; - - /* - * Expand stored block here. - */ - if (gzio->block_type == INFLATE_STORED) - { - int w = gzio->wp; - - /* - * This is basically a glorified pass-through - */ - - while (gzio->block_len && w < WSIZE && grub_errno == GRUB_ERR_NONE) - { - gzio->slide[w++] = get_byte (gzio); - gzio->block_len--; - } - - gzio->wp = w; - - continue; - } - - /* - * Expand other kind of block. - */ - - if (inflate_codes_in_window (gzio)) - { - huft_free (gzio->tl); - huft_free (gzio->td); - gzio->tl = 0; - gzio->td = 0; - } - } - - gzio->saved_offset += gzio->wp; - - if (gzio->hcontext) - { - gzio->hdesc->write (gzio->hcontext, gzio->slide, gzio->wp); - - if (gzio->saved_offset == gzio->orig_len) - { - grub_uint32_t csum; - - gzio->hdesc->final (gzio->hcontext); - csum = grub_get_unaligned32 (gzio->hdesc->read (gzio->hcontext)); - csum = grub_be_to_cpu32 (csum); - if (csum != gzio->orig_checksum) - grub_error (GRUB_ERR_BAD_COMPRESSED_DATA, - "checksum mismatch %08x/%08x", - gzio->orig_checksum, csum); - } - } -} - - -static void -initialize_tables (grub_gzio_t gzio) -{ - gzio->saved_offset = 0; - gzio_seek (gzio, gzio->data_offset); - - /* Initialize the bit buffer. */ - gzio->bk = 0; - gzio->bb = 0; - - /* Reset partial decompression code. */ - gzio->last_block = 0; - gzio->block_len = 0; - - /* Reset memory allocation stuff. */ - huft_free (gzio->tl); - huft_free (gzio->td); - gzio->tl = NULL; - gzio->td = NULL; - - if (gzio->hcontext) - gzio->hdesc->init(gzio->hcontext); -} - - -/* Open a new decompressing object on the top of IO. If TRANSPARENT is true, - even if IO does not contain data compressed by gzip, return a valid file - object. Note that this function won't close IO, even if an error occurs. */ -static grub_file_t -grub_gzio_open (grub_file_t io, enum grub_file_type type) -{ - grub_file_t file; - grub_gzio_t gzio = 0; - - if (type & GRUB_FILE_TYPE_NO_DECOMPRESS) - return io; - - file = (grub_file_t) grub_zalloc (sizeof (*file)); - if (! file) - return 0; - - gzio = grub_zalloc (sizeof (*gzio)); - if (! gzio) - { - grub_free (file); - return 0; - } - - gzio->file = io; - - gzio->hdesc = GRUB_MD_CRC32; - gzio->hcontext = grub_malloc(gzio->hdesc->contextsize); - - file->device = io->device; - file->data = gzio; - file->fs = &grub_gzio_fs; - file->not_easily_seekable = 1; - - if (! test_gzip_header (file)) - { - grub_errno = GRUB_ERR_NONE; - grub_free (gzio->hcontext); - grub_free (gzio); - grub_free (file); - grub_file_seek (io, 0); - - return io; - } - - return file; -} - -static grub_uint8_t -mod_31 (grub_uint16_t v) -{ - /* At most 2 iterations for any number that - we can get here. - In any case faster than real division. */ - while (v > 0x1f) - v = (v & 0x1f) + (v >> 5); - if (v == 0x1f) - return 0; - return v; -} - -static int -test_zlib_header (grub_gzio_t gzio) -{ - grub_uint8_t cmf, flg; - - cmf = get_byte (gzio); - flg = get_byte (gzio); - - /* Check that compression method is DEFLATE. */ - if ((cmf & 0xf) != GRUB_GZ_DEFLATED) - { - /* TRANSLATORS: It's about given file having some strange format, not - complete lack of gzip support. */ - grub_error (GRUB_ERR_BAD_COMPRESSED_DATA, N_("unsupported gzip format")); - return 0; - } - - /* Usually it would be: (cmf * 256 + flg) % 31 != 0. */ - /* But 256 == 8 (31). */ - /* By multiplying by 4 and using 32 == 1 (31). We get our formula. */ - if (mod_31 (cmf + flg * 4) != 0) - { - grub_error (GRUB_ERR_BAD_COMPRESSED_DATA, N_("unsupported gzip format")); - return 0; - } - - /* Dictionary isn't supported. */ - if (flg & 0x20) - { - grub_error (GRUB_ERR_BAD_COMPRESSED_DATA, N_("unsupported gzip format")); - return 0; - } - - gzio->data_offset = 2; - initialize_tables (gzio); - - return 1; -} - -static grub_ssize_t -grub_gzio_read_real (grub_gzio_t gzio, grub_off_t offset, - char *buf, grub_size_t len) -{ - grub_ssize_t ret = 0; - - /* Do we reset decompression to the beginning of the file? */ - if (gzio->saved_offset > offset + WSIZE) - initialize_tables (gzio); - - /* - * This loop operates upon uncompressed data only. The only - * special thing it does is to make sure the decompression - * window is within the range of data it needs. - */ - - while (len > 0 && grub_errno == GRUB_ERR_NONE) - { - register grub_size_t size; - register char *srcaddr; - - while (offset >= gzio->saved_offset) - { - inflate_window (gzio); - if (gzio->wp == 0) - goto out; - } - - if (gzio->wp == 0) - goto out; - - srcaddr = (char *) ((offset & (WSIZE - 1)) + gzio->slide); - size = gzio->saved_offset - offset; - if (size > len) - size = len; - - grub_memmove (buf, srcaddr, size); - - buf += size; - len -= size; - ret += size; - offset += size; - } - - out: - if (grub_errno != GRUB_ERR_NONE) - ret = -1; - - return ret; -} - -static grub_ssize_t -grub_gzio_read (grub_file_t file, char *buf, grub_size_t len) -{ - grub_ssize_t ret; - ret = grub_gzio_read_real (file->data, file->offset, buf, len); - - if (!grub_errno && ret != (grub_ssize_t) len) - { - grub_error (GRUB_ERR_BAD_COMPRESSED_DATA, "premature end of compressed"); - ret = -1; - } - return ret; -} - -/* Release everything, including the underlying file object. */ -static grub_err_t -grub_gzio_close (grub_file_t file) -{ - grub_gzio_t gzio = file->data; - - grub_file_close (gzio->file); - huft_free (gzio->tl); - huft_free (gzio->td); - grub_free (gzio->hcontext); - grub_free (gzio); - - /* No need to close the same device twice. */ - file->device = 0; - file->name = 0; - - return grub_errno; -} - -grub_ssize_t -grub_zlib_decompress (char *inbuf, grub_size_t insize, grub_off_t off, - char *outbuf, grub_size_t outsize) -{ - grub_gzio_t gzio = 0; - grub_ssize_t ret; - - gzio = grub_zalloc (sizeof (*gzio)); - if (! gzio) - return -1; - gzio->mem_input = (grub_uint8_t *) inbuf; - gzio->mem_input_size = insize; - gzio->mem_input_off = 0; - - if (!test_zlib_header (gzio)) - { - grub_free (gzio); - return -1; - } - - ret = grub_gzio_read_real (gzio, off, outbuf, outsize); - grub_free (gzio); - - /* FIXME: Check Adler. */ - return ret; -} - -grub_ssize_t -grub_deflate_decompress (char *inbuf, grub_size_t insize, grub_off_t off, - char *outbuf, grub_size_t outsize) -{ - grub_gzio_t gzio = 0; - grub_ssize_t ret; - - gzio = grub_zalloc (sizeof (*gzio)); - if (! gzio) - return -1; - gzio->mem_input = (grub_uint8_t *) inbuf; - gzio->mem_input_size = insize; - gzio->mem_input_off = 0; - - initialize_tables (gzio); - - ret = grub_gzio_read_real (gzio, off, outbuf, outsize); - grub_free (gzio); - - return ret; -} - - - -static struct grub_fs grub_gzio_fs = - { - .name = "gzio", - .fs_dir = 0, - .fs_open = 0, - .fs_read = grub_gzio_read, - .fs_close = grub_gzio_close, - .fs_label = 0, - .next = 0 - }; - -GRUB_MOD_INIT(gzio) -{ - grub_file_filter_register (GRUB_FILE_FILTER_GZIO, grub_gzio_open); -} - -GRUB_MOD_FINI(gzio) -{ - grub_file_filter_unregister (GRUB_FILE_FILTER_GZIO); -} diff --git a/thirdparty/grub-2.04/grub-core/io/lzopio.c b/thirdparty/grub-2.04/grub-core/io/lzopio.c deleted file mode 100644 index 30144857d..000000000 --- a/thirdparty/grub-2.04/grub-core/io/lzopio.c +++ /dev/null @@ -1,550 +0,0 @@ -/* lzopio.c - decompression support for lzop */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2011 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -#define LZOP_MAGIC "\x89\x4c\x5a\x4f\x00\x0d\x0a\x1a\x0a" -#define LZOP_MAGIC_SIZE 9 -#define LZOP_CHECK_SIZE 4 -#define LZOP_NEW_LIB 0x0940 - -/* Header flags - copied from conf.h of LZOP source code. */ -#define F_ADLER32_D 0x00000001L -#define F_ADLER32_C 0x00000002L -#define F_STDIN 0x00000004L -#define F_STDOUT 0x00000008L -#define F_NAME_DEFAULT 0x00000010L -#define F_DOSISH 0x00000020L -#define F_H_EXTRA_FIELD 0x00000040L -#define F_H_GMTDIFF 0x00000080L -#define F_CRC32_D 0x00000100L -#define F_CRC32_C 0x00000200L -#define F_MULTIPART 0x00000400L -#define F_H_FILTER 0x00000800L -#define F_H_CRC32 0x00001000L -#define F_H_PATH 0x00002000L -#define F_MASK 0x00003FFFL - -struct block_header -{ - grub_uint32_t usize; - grub_uint32_t csize; - grub_uint32_t ucheck; - grub_uint32_t ccheck; - unsigned char *cdata; - unsigned char *udata; -}; - -struct grub_lzopio -{ - grub_file_t file; - int has_ccheck; - int has_ucheck; - const gcry_md_spec_t *ucheck_fun; - const gcry_md_spec_t *ccheck_fun; - grub_off_t saved_off; /* Rounded down to block boundary. */ - grub_off_t start_block_off; - struct block_header block; -}; - -typedef struct grub_lzopio *grub_lzopio_t; -static struct grub_fs grub_lzopio_fs; - -/* Some helper functions. On errors memory allocated by those function is free - * either on close() so no risk of leaks. This makes functions simpler. */ - -/* Read block header from file, after successful exit file points to - * beginning of block data. */ -static int -read_block_header (struct grub_lzopio *lzopio) -{ - lzopio->saved_off += lzopio->block.usize; - - /* Free cached block data if any. */ - grub_free (lzopio->block.udata); - grub_free (lzopio->block.cdata); - lzopio->block.udata = NULL; - lzopio->block.cdata = NULL; - - if (grub_file_read (lzopio->file, &lzopio->block.usize, - sizeof (lzopio->block.usize)) != - sizeof (lzopio->block.usize)) - return -1; - - lzopio->block.usize = grub_be_to_cpu32 (lzopio->block.usize); - - /* Last block has uncompressed data size == 0 and no other fields. */ - if (lzopio->block.usize == 0) - { - if (grub_file_tell (lzopio->file) == grub_file_size (lzopio->file)) - return 0; - else - return -1; - } - - /* Read compressed data block size. */ - if (grub_file_read (lzopio->file, &lzopio->block.csize, - sizeof (lzopio->block.csize)) != - sizeof (lzopio->block.csize)) - return -1; - - lzopio->block.csize = grub_be_to_cpu32 (lzopio->block.csize); - - /* Corrupted. */ - if (lzopio->block.csize > lzopio->block.usize) - return -1; - - /* Read checksum of uncompressed data. */ - if (lzopio->has_ucheck) - { - if (grub_file_read (lzopio->file, &lzopio->block.ucheck, - sizeof (lzopio->block.ucheck)) != - sizeof (lzopio->block.ucheck)) - return -1; - - lzopio->block.ucheck = lzopio->block.ucheck; - } - - /* Read checksum of compressed data. */ - if (lzopio->has_ccheck) - { - /* Incompressible data block. */ - if (lzopio->block.csize == lzopio->block.usize) - { - lzopio->block.ccheck = lzopio->block.ucheck; - } - else - { - if (grub_file_read (lzopio->file, &lzopio->block.ccheck, - sizeof (lzopio->block.ccheck)) != - sizeof (lzopio->block.ccheck)) - return -1; - - lzopio->block.ccheck = lzopio->block.ccheck; - } - } - - return 0; -} - -/* Read block data into memory. File must be set to beginning of block data. - * Can't be called on last block. */ -static int -read_block_data (struct grub_lzopio *lzopio) -{ - lzopio->block.cdata = grub_malloc (lzopio->block.csize); - if (!lzopio->block.cdata) - return -1; - - if (grub_file_read (lzopio->file, lzopio->block.cdata, lzopio->block.csize) - != (grub_ssize_t) lzopio->block.csize) - return -1; - - if (lzopio->ccheck_fun) - { - grub_uint8_t computed_hash[GRUB_CRYPTO_MAX_MDLEN]; - - if (lzopio->ccheck_fun->mdlen > GRUB_CRYPTO_MAX_MDLEN) - return -1; - - grub_crypto_hash (lzopio->ccheck_fun, computed_hash, - lzopio->block.cdata, - lzopio->block.csize); - - if (grub_memcmp - (computed_hash, &lzopio->block.ccheck, - sizeof (lzopio->block.ccheck)) != 0) - return -1; - } - - return 0; -} - -/* Read block data, uncompressed and also store it in memory. */ -/* XXX Investigate possibility of in-place decompression to reduce memory - * footprint. Or try to uncompress directly to buf if possible. */ -static int -uncompress_block (struct grub_lzopio *lzopio) -{ - lzo_uint usize = lzopio->block.usize; - - if (read_block_data (lzopio) < 0) - return -1; - - /* Incompressible data. */ - if (lzopio->block.csize == lzopio->block.usize) - { - lzopio->block.udata = lzopio->block.cdata; - lzopio->block.cdata = NULL; - } - else - { - lzopio->block.udata = grub_malloc (lzopio->block.usize); - if (!lzopio->block.udata) - return -1; - - if (lzo1x_decompress_safe (lzopio->block.cdata, lzopio->block.csize, - lzopio->block.udata, &usize, NULL) - != LZO_E_OK) - return -1; - - if (lzopio->ucheck_fun) - { - grub_uint8_t computed_hash[GRUB_CRYPTO_MAX_MDLEN]; - - if (lzopio->ucheck_fun->mdlen > GRUB_CRYPTO_MAX_MDLEN) - return -1; - - grub_crypto_hash (lzopio->ucheck_fun, computed_hash, - lzopio->block.udata, - lzopio->block.usize); - - if (grub_memcmp - (computed_hash, &lzopio->block.ucheck, - sizeof (lzopio->block.ucheck)) != 0) - return -1; - } - - /* Compressed data can be free now. */ - grub_free (lzopio->block.cdata); - lzopio->block.cdata = NULL; - } - - return 0; -} - -/* Jump to next block and read its header. */ -static int -jump_block (struct grub_lzopio *lzopio) -{ - /* only jump if block was not decompressed (and read from disk) */ - if (!lzopio->block.udata) - { - grub_off_t off = grub_file_tell (lzopio->file) + lzopio->block.csize; - - if (grub_file_seek (lzopio->file, off) == ((grub_off_t) - 1)) - return -1; - } - - return read_block_header (lzopio); -} - -static int -calculate_uncompressed_size (grub_file_t file) -{ - grub_lzopio_t lzopio = file->data; - grub_off_t usize_total = 0; - - if (read_block_header (lzopio) < 0) - return -1; - - /* FIXME: Don't do this for not easily seekable files. */ - while (lzopio->block.usize != 0) - { - usize_total += lzopio->block.usize; - - if (jump_block (lzopio) < 0) - return -1; - } - - file->size = usize_total; - - return 0; -} - -struct lzop_header -{ - grub_uint8_t magic[LZOP_MAGIC_SIZE]; - grub_uint16_t lzop_version; - grub_uint16_t lib_version; - grub_uint16_t lib_version_ext; - grub_uint8_t method; - grub_uint8_t level; - grub_uint32_t flags; - /* grub_uint32_t filter; */ /* No filters support. Rarely used anyway. */ - grub_uint32_t mode; - grub_uint32_t mtime_lo; - grub_uint32_t mtime_hi; - grub_uint8_t name_len; -} GRUB_PACKED; - -static int -test_header (grub_file_t file) -{ - grub_lzopio_t lzopio = file->data; - struct lzop_header header; - grub_uint32_t flags, checksum; - const gcry_md_spec_t *hcheck; - grub_uint8_t *context = NULL; - grub_uint8_t *name = NULL; - - if (grub_file_read (lzopio->file, &header, sizeof (header)) != sizeof (header)) - return 0; - - if (grub_memcmp (header.magic, LZOP_MAGIC, LZOP_MAGIC_SIZE) != 0) - return 0; - - if (grub_be_to_cpu16(header.lib_version) < LZOP_NEW_LIB) - return 0; - - /* Too new version, should upgrade minilzo? */ - if (grub_be_to_cpu16 (header.lib_version_ext) > MINILZO_VERSION) - return 0; - - flags = grub_be_to_cpu32 (header.flags); - - if (flags & F_CRC32_D) - { - lzopio->has_ucheck = 1; - lzopio->ucheck_fun = grub_crypto_lookup_md_by_name ("crc32"); - } - else if (flags & F_ADLER32_D) - { - lzopio->has_ucheck = 1; - lzopio->ucheck_fun = grub_crypto_lookup_md_by_name ("adler32"); - } - - if (flags & F_CRC32_C) - { - lzopio->has_ccheck = 1; - lzopio->ccheck_fun = grub_crypto_lookup_md_by_name ("crc32"); - } - else if (flags & F_ADLER32_C) - { - lzopio->has_ccheck = 1; - lzopio->ccheck_fun = grub_crypto_lookup_md_by_name ("adler32"); - } - - if (flags & F_H_CRC32) - hcheck = grub_crypto_lookup_md_by_name ("crc32"); - else - hcheck = grub_crypto_lookup_md_by_name ("adler32"); - - if (hcheck) { - context = grub_malloc(hcheck->contextsize); - if (! context) - return 0; - - hcheck->init(context); - - /* MAGIC is not included in check calculation. */ - hcheck->write(context, &header.lzop_version, sizeof(header)- LZOP_MAGIC_SIZE); - } - - if (header.name_len != 0) - { - name = grub_malloc (header.name_len); - if (! name) - { - grub_free (context); - return 0; - } - - if (grub_file_read (lzopio->file, name, header.name_len) != - header.name_len) - { - grub_free(name); - goto CORRUPTED; - } - - if (hcheck) - hcheck->write(context, name, header.name_len); - - grub_free(name); - } - - if (hcheck) - hcheck->final(context); - - if (grub_file_read (lzopio->file, &checksum, sizeof (checksum)) != - sizeof (checksum)) - goto CORRUPTED; - - if (hcheck && grub_memcmp (&checksum, hcheck->read(context), sizeof(checksum)) != 0) - goto CORRUPTED; - - lzopio->start_block_off = grub_file_tell (lzopio->file); - - if (calculate_uncompressed_size (file) < 0) - goto CORRUPTED; - - /* Get back to start block. */ - grub_file_seek (lzopio->file, lzopio->start_block_off); - - /* Read first block - grub_lzopio_read() expects valid block. */ - if (read_block_header (lzopio) < 0) - goto CORRUPTED; - - lzopio->saved_off = 0; - return 1; - -CORRUPTED: - return 0; -} - -static grub_file_t -grub_lzopio_open (grub_file_t io, enum grub_file_type type) -{ - grub_file_t file; - grub_lzopio_t lzopio; - - if (type & GRUB_FILE_TYPE_NO_DECOMPRESS) - return io; - - file = (grub_file_t) grub_zalloc (sizeof (*file)); - if (!file) - return 0; - - lzopio = grub_zalloc (sizeof (*lzopio)); - if (!lzopio) - { - grub_free (file); - return 0; - } - - lzopio->file = io; - - file->device = io->device; - file->data = lzopio; - file->fs = &grub_lzopio_fs; - file->size = GRUB_FILE_SIZE_UNKNOWN; - file->not_easily_seekable = 1; - - if (grub_file_tell (lzopio->file) != 0) - grub_file_seek (lzopio->file, 0); - - if (!test_header (file)) - { - grub_errno = GRUB_ERR_NONE; - grub_file_seek (io, 0); - grub_free (lzopio); - grub_free (file); - - return io; - } - - return file; -} - -static grub_ssize_t -grub_lzopio_read (grub_file_t file, char *buf, grub_size_t len) -{ - grub_lzopio_t lzopio = file->data; - grub_ssize_t ret = 0; - grub_off_t off; - - /* Backward seek before last read block. */ - if (lzopio->saved_off > grub_file_tell (file)) - { - grub_file_seek (lzopio->file, lzopio->start_block_off); - - if (read_block_header (lzopio) < 0) - goto CORRUPTED; - - lzopio->saved_off = 0; - } - - /* Forward to first block with requested data. */ - while (lzopio->saved_off + lzopio->block.usize <= grub_file_tell (file)) - { - /* EOF, could be possible files with unknown size. */ - if (lzopio->block.usize == 0) - return 0; - - if (jump_block (lzopio) < 0) - goto CORRUPTED; - } - - off = grub_file_tell (file) - lzopio->saved_off; - - while (len != 0 && lzopio->block.usize != 0) - { - grub_size_t to_copy; - - /* Block not decompressed yet. */ - if (!lzopio->block.udata && uncompress_block (lzopio) < 0) - goto CORRUPTED; - - /* Copy requested data into buffer. */ - to_copy = lzopio->block.usize - off; - if (to_copy > len) - to_copy = len; - grub_memcpy (buf, lzopio->block.udata + off, to_copy); - - len -= to_copy; - buf += to_copy; - ret += to_copy; - off = 0; - - /* Read next block if needed. */ - if (len > 0 && read_block_header (lzopio) < 0) - goto CORRUPTED; - } - - return ret; - -CORRUPTED: - grub_error (GRUB_ERR_BAD_COMPRESSED_DATA, N_("lzop file corrupted")); - return -1; -} - -/* Release everything, including the underlying file object. */ -static grub_err_t -grub_lzopio_close (grub_file_t file) -{ - grub_lzopio_t lzopio = file->data; - - grub_file_close (lzopio->file); - grub_free (lzopio->block.cdata); - grub_free (lzopio->block.udata); - grub_free (lzopio); - - /* Device must not be closed twice. */ - file->device = 0; - file->name = 0; - return grub_errno; -} - -static struct grub_fs grub_lzopio_fs = { - .name = "lzopio", - .fs_dir = 0, - .fs_open = 0, - .fs_read = grub_lzopio_read, - .fs_close = grub_lzopio_close, - .fs_label = 0, - .next = 0 -}; - -GRUB_MOD_INIT (lzopio) -{ - grub_file_filter_register (GRUB_FILE_FILTER_LZOPIO, grub_lzopio_open); -} - -GRUB_MOD_FINI (lzopio) -{ - grub_file_filter_unregister (GRUB_FILE_FILTER_LZOPIO); -} diff --git a/thirdparty/grub-2.04/grub-core/io/offset.c b/thirdparty/grub-2.04/grub-core/io/offset.c deleted file mode 100644 index 7e2db4a3a..000000000 --- a/thirdparty/grub-2.04/grub-core/io/offset.c +++ /dev/null @@ -1,112 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2013 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -struct grub_offset_file -{ - grub_file_t parent; - grub_off_t off; -}; - -static grub_ssize_t -grub_offset_read (grub_file_t file, char *buf, grub_size_t len) -{ - struct grub_offset_file *data = file->data; - if (grub_file_seek (data->parent, data->off + file->offset) == (grub_off_t) -1) - return -1; - return grub_file_read (data->parent, buf, len); -} - -static grub_err_t -grub_offset_close (grub_file_t file) -{ - struct grub_offset_file *data = file->data; - - if (data->parent) - grub_file_close (data->parent); - - /* No need to close the same device twice. */ - file->device = 0; - - return 0; -} - -static struct grub_fs grub_offset_fs = { - .name = "offset", - .fs_dir = 0, - .fs_open = 0, - .fs_read = grub_offset_read, - .fs_close = grub_offset_close, - .fs_label = 0, - .next = 0 -}; - -void -grub_file_offset_close (grub_file_t file) -{ - struct grub_offset_file *off_data = file->data; - off_data->parent = NULL; - grub_file_close (file); -} - -grub_file_t -grub_file_offset_open (grub_file_t parent, enum grub_file_type type, - grub_off_t start, grub_off_t size) -{ - struct grub_offset_file *off_data; - grub_file_t off_file, last_off_file; - grub_file_filter_id_t filter; - - off_file = grub_zalloc (sizeof (*off_file)); - off_data = grub_zalloc (sizeof (*off_data)); - if (!off_file || !off_data) - { - grub_free (off_file); - grub_free (off_data); - return 0; - } - - off_data->off = start; - off_data->parent = parent; - - off_file->device = parent->device; - off_file->data = off_data; - off_file->fs = &grub_offset_fs; - off_file->size = size; - - last_off_file = NULL; - for (filter = GRUB_FILE_FILTER_COMPRESSION_FIRST; - off_file && filter <= GRUB_FILE_FILTER_COMPRESSION_LAST; filter++) - if (grub_file_filters[filter]) - { - last_off_file = off_file; - off_file = grub_file_filters[filter] (off_file, type); - } - - if (!off_file) - { - off_data->parent = NULL; - grub_file_close (last_off_file); - return 0; - } - return off_file; -} diff --git a/thirdparty/grub-2.04/grub-core/io/xzio.c b/thirdparty/grub-2.04/grub-core/io/xzio.c deleted file mode 100644 index 516c4dfca..000000000 --- a/thirdparty/grub-2.04/grub-core/io/xzio.c +++ /dev/null @@ -1,346 +0,0 @@ -/* xzio.c - decompression support for xz */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2010 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -#include "xz.h" -#include "xz_stream.h" - -#define XZBUFSIZ 0x2000 -#define VLI_MAX_DIGITS 9 -#define XZ_STREAM_FOOTER_SIZE 12 - -struct grub_xzio -{ - grub_file_t file; - struct xz_buf buf; - struct xz_dec *dec; - grub_uint8_t inbuf[XZBUFSIZ]; - grub_uint8_t outbuf[XZBUFSIZ]; - grub_off_t saved_offset; -}; - -typedef struct grub_xzio *grub_xzio_t; -static struct grub_fs grub_xzio_fs; - -static grub_size_t -decode_vli (const grub_uint8_t buf[], grub_size_t size_max, - grub_uint64_t *num) -{ - if (size_max == 0) - return 0; - - if (size_max > VLI_MAX_DIGITS) - size_max = VLI_MAX_DIGITS; - - *num = buf[0] & 0x7F; - grub_size_t i = 0; - - while (buf[i++] & 0x80) - { - if (i >= size_max || buf[i] == 0x00) - return 0; - - *num |= (uint64_t) (buf[i] & 0x7F) << (i * 7); - } - - return i; -} - -static grub_ssize_t -read_vli (grub_file_t file, grub_uint64_t *num) -{ - grub_uint8_t buf[VLI_MAX_DIGITS]; - grub_ssize_t read_bytes; - grub_size_t dec; - - read_bytes = grub_file_read (file, buf, VLI_MAX_DIGITS); - if (read_bytes < 0) - return -1; - - dec = decode_vli (buf, read_bytes, num); - grub_file_seek (file, file->offset - (read_bytes - dec)); - return dec; -} - -/* Function xz_dec_run() should consume header and ask for more (XZ_OK) - * else file is corrupted (or options not supported) or not xz. */ -static int -test_header (grub_file_t file) -{ - grub_xzio_t xzio = file->data; - enum xz_ret ret; - - xzio->buf.in_size = grub_file_read (xzio->file, xzio->inbuf, - STREAM_HEADER_SIZE); - - if (xzio->buf.in_size != STREAM_HEADER_SIZE) - return 0; - - ret = xz_dec_run (xzio->dec, &xzio->buf); - - if (ret == XZ_FORMAT_ERROR) - return 0; - - if (ret != XZ_OK) - return 0; - - return 1; -} - -/* Try to find out size of uncompressed data, - * also do some footer sanity checks. */ -static int -test_footer (grub_file_t file) -{ - grub_xzio_t xzio = file->data; - grub_uint8_t footer[FOOTER_MAGIC_SIZE]; - grub_uint32_t backsize; - grub_uint8_t imarker; - grub_uint64_t uncompressed_size_total = 0; - grub_uint64_t uncompressed_size; - grub_uint64_t records; - - grub_file_seek (xzio->file, xzio->file->size - FOOTER_MAGIC_SIZE); - if (grub_file_read (xzio->file, footer, FOOTER_MAGIC_SIZE) - != FOOTER_MAGIC_SIZE - || grub_memcmp (footer, FOOTER_MAGIC, FOOTER_MAGIC_SIZE) != 0) - goto ERROR; - - grub_file_seek (xzio->file, xzio->file->size - 8); - if (grub_file_read (xzio->file, &backsize, sizeof (backsize)) - != sizeof (backsize)) - goto ERROR; - - /* Calculate real backward size. */ - backsize = (grub_le_to_cpu32 (backsize) + 1) * 4; - - /* Set file to the beginning of stream index. */ - grub_file_seek (xzio->file, - xzio->file->size - XZ_STREAM_FOOTER_SIZE - backsize); - - /* Test index marker. */ - if (grub_file_read (xzio->file, &imarker, sizeof (imarker)) - != sizeof (imarker) && imarker != 0x00) - goto ERROR; - - if (read_vli (xzio->file, &records) <= 0) - goto ERROR; - - for (; records != 0; records--) - { - if (read_vli (xzio->file, &uncompressed_size) <= 0) /* Ignore unpadded. */ - goto ERROR; - if (read_vli (xzio->file, &uncompressed_size) <= 0) /* Uncompressed. */ - goto ERROR; - - uncompressed_size_total += uncompressed_size; - } - - file->size = uncompressed_size_total; - grub_file_seek (xzio->file, STREAM_HEADER_SIZE); - return 1; - -ERROR: - return 0; -} - -static grub_file_t -grub_xzio_open (grub_file_t io, enum grub_file_type type) -{ - grub_file_t file; - grub_xzio_t xzio; - - if (type & GRUB_FILE_TYPE_NO_DECOMPRESS) - return io; - - file = (grub_file_t) grub_zalloc (sizeof (*file)); - if (!file) - return 0; - - xzio = grub_zalloc (sizeof (*xzio)); - if (!xzio) - { - grub_free (file); - return 0; - } - - xzio->file = io; - - file->device = io->device; - file->data = xzio; - file->fs = &grub_xzio_fs; - file->size = GRUB_FILE_SIZE_UNKNOWN; - file->not_easily_seekable = 1; - - if (grub_file_tell (xzio->file) != 0) - grub_file_seek (xzio->file, 0); - - /* Allocated 64KiB for dictionary. - * Decoder will relocate if bigger is needed. */ - xzio->dec = xz_dec_init (1 << 16); - if (!xzio->dec) - { - grub_free (file); - grub_free (xzio); - return 0; - } - - xzio->buf.in = xzio->inbuf; - xzio->buf.out = xzio->outbuf; - xzio->buf.out_size = XZBUFSIZ; - - /* FIXME: don't test footer on not easily seekable files. */ - if (!test_header (file) || !test_footer (file)) - { - grub_errno = GRUB_ERR_NONE; - grub_file_seek (io, 0); - xz_dec_end (xzio->dec); - grub_free (xzio); - grub_free (file); - - return io; - } - - return file; -} - -static grub_ssize_t -grub_xzio_read (grub_file_t file, char *buf, grub_size_t len) -{ - grub_ssize_t ret = 0; - grub_ssize_t readret; - enum xz_ret xzret; - grub_xzio_t xzio = file->data; - grub_off_t current_offset; - - /* If seek backward need to reset decoder and start from beginning of file. - TODO Possible improvement by jumping blocks. */ - if (file->offset < xzio->saved_offset) - { - xz_dec_reset (xzio->dec); - xzio->saved_offset = 0; - xzio->buf.out_pos = 0; - xzio->buf.in_pos = 0; - xzio->buf.in_size = 0; - grub_file_seek (xzio->file, 0); - } - - current_offset = xzio->saved_offset; - - while (len > 0) - { - xzio->buf.out_size = file->offset + ret + len - current_offset; - if (xzio->buf.out_size > XZBUFSIZ) - xzio->buf.out_size = XZBUFSIZ; - /* Feed input. */ - if (xzio->buf.in_pos == xzio->buf.in_size) - { - readret = grub_file_read (xzio->file, xzio->inbuf, XZBUFSIZ); - if (readret < 0) - return -1; - xzio->buf.in_size = readret; - xzio->buf.in_pos = 0; - } - - xzret = xz_dec_run (xzio->dec, &xzio->buf); - switch (xzret) - { - case XZ_MEMLIMIT_ERROR: - case XZ_FORMAT_ERROR: - case XZ_OPTIONS_ERROR: - case XZ_DATA_ERROR: - case XZ_BUF_ERROR: - grub_error (GRUB_ERR_BAD_COMPRESSED_DATA, - N_("xz file corrupted or unsupported block options")); - return -1; - default: - break; - } - - { - grub_off_t new_offset = current_offset + xzio->buf.out_pos; - - if (file->offset <= new_offset) - /* Store first chunk of data in buffer. */ - { - grub_size_t delta = new_offset - (file->offset + ret); - grub_memmove (buf, xzio->buf.out + (xzio->buf.out_pos - delta), - delta); - len -= delta; - buf += delta; - ret += delta; - } - current_offset = new_offset; - } - xzio->buf.out_pos = 0; - - if (xzret == XZ_STREAM_END) /* Stream end, EOF. */ - break; - } - - if (ret >= 0) - xzio->saved_offset = file->offset + ret; - - return ret; -} - -/* Release everything, including the underlying file object. */ -static grub_err_t -grub_xzio_close (grub_file_t file) -{ - grub_xzio_t xzio = file->data; - - xz_dec_end (xzio->dec); - - grub_file_close (xzio->file); - grub_free (xzio); - - /* Device must not be closed twice. */ - file->device = 0; - file->name = 0; - return grub_errno; -} - -static struct grub_fs grub_xzio_fs = { - .name = "xzio", - .fs_dir = 0, - .fs_open = 0, - .fs_read = grub_xzio_read, - .fs_close = grub_xzio_close, - .fs_label = 0, - .next = 0 -}; - -GRUB_MOD_INIT (xzio) -{ - grub_file_filter_register (GRUB_FILE_FILTER_XZIO, grub_xzio_open); -} - -GRUB_MOD_FINI (xzio) -{ - grub_file_filter_unregister (GRUB_FILE_FILTER_XZIO); -} diff --git a/thirdparty/grub-2.04/grub-core/kern/acpi.c b/thirdparty/grub-2.04/grub-core/kern/acpi.c deleted file mode 100644 index 5746ac00c..000000000 --- a/thirdparty/grub-2.04/grub-core/kern/acpi.c +++ /dev/null @@ -1,119 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2012 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include - -/* Simple checksum by summing all bytes. Used by ACPI and SMBIOS. */ -grub_uint8_t -grub_byte_checksum (void *base, grub_size_t size) -{ - grub_uint8_t *ptr; - grub_uint8_t ret = 0; - for (ptr = (grub_uint8_t *) base; ptr < ((grub_uint8_t *) base) + size; - ptr++) - ret += *ptr; - return ret; -} - -static void * -grub_acpi_rsdt_find_table (struct grub_acpi_table_header *rsdt, const char *sig) -{ - grub_size_t s; - grub_unaligned_uint32_t *ptr; - - if (!rsdt) - return 0; - - if (grub_memcmp (rsdt->signature, "RSDT", 4) != 0) - return 0; - - ptr = (grub_unaligned_uint32_t *) (rsdt + 1); - s = (rsdt->length - sizeof (*rsdt)) / sizeof (grub_uint32_t); - for (; s; s--, ptr++) - { - struct grub_acpi_table_header *tbl; - tbl = (struct grub_acpi_table_header *) (grub_addr_t) ptr->val; - if (grub_memcmp (tbl->signature, sig, 4) == 0) - return tbl; - } - return 0; -} - -static void * -grub_acpi_xsdt_find_table (struct grub_acpi_table_header *xsdt, const char *sig) -{ - grub_size_t s; - grub_unaligned_uint64_t *ptr; - - if (!xsdt) - return 0; - - if (grub_memcmp (xsdt->signature, "XSDT", 4) != 0) - return 0; - - ptr = (grub_unaligned_uint64_t *) (xsdt + 1); - s = (xsdt->length - sizeof (*xsdt)) / sizeof (grub_uint32_t); - for (; s; s--, ptr++) - { - struct grub_acpi_table_header *tbl; -#if GRUB_CPU_SIZEOF_VOID_P != 8 - if (ptr->val >> 32) - continue; -#endif - tbl = (struct grub_acpi_table_header *) (grub_addr_t) ptr->val; - if (grub_memcmp (tbl->signature, sig, 4) == 0) - return tbl; - } - return 0; -} - -struct grub_acpi_fadt * -grub_acpi_find_fadt (void) -{ - struct grub_acpi_fadt *fadt = 0; - struct grub_acpi_rsdp_v10 *rsdpv1; - struct grub_acpi_rsdp_v20 *rsdpv2; - rsdpv1 = grub_machine_acpi_get_rsdpv1 (); - if (rsdpv1) - fadt = grub_acpi_rsdt_find_table ((struct grub_acpi_table_header *) - (grub_addr_t) rsdpv1->rsdt_addr, - GRUB_ACPI_FADT_SIGNATURE); - if (fadt) - return fadt; - rsdpv2 = grub_machine_acpi_get_rsdpv2 (); - if (rsdpv2) - fadt = grub_acpi_rsdt_find_table ((struct grub_acpi_table_header *) - (grub_addr_t) rsdpv2->rsdpv1.rsdt_addr, - GRUB_ACPI_FADT_SIGNATURE); - if (fadt) - return fadt; - if (rsdpv2 -#if GRUB_CPU_SIZEOF_VOID_P != 8 - && !(rsdpv2->xsdt_addr >> 32) -#endif - ) - fadt = grub_acpi_xsdt_find_table ((struct grub_acpi_table_header *) - (grub_addr_t) rsdpv2->xsdt_addr, - GRUB_ACPI_FADT_SIGNATURE); - if (fadt) - return fadt; - return 0; -} diff --git a/thirdparty/grub-2.04/grub-core/kern/arm/cache.S b/thirdparty/grub-2.04/grub-core/kern/arm/cache.S deleted file mode 100644 index 354a069fe..000000000 --- a/thirdparty/grub-2.04/grub-core/kern/arm/cache.S +++ /dev/null @@ -1,123 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2013 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include - - .file "cache.S" - .text - .syntax unified -#if !defined (__thumb2__) || !defined (ARMV7) - .arm -#else - .thumb -#endif - -#if !defined (ARMV6) && !defined (ARMV7) -# error Unsupported architecture version! -#endif - - .align 2 - -/* - * Simple cache maintenance functions - */ - -@ r0 - *beg (inclusive) -@ r1 - *end (exclusive) -@void grub_arm_clean_dcache_range (grub_addr_t start, grub_addr_t end, grub_addr_t dlinesz) -#ifdef ARMV6 -FUNCTION(grub_arm_clean_dcache_range_armv6) -#else -FUNCTION(grub_arm_clean_dcache_range_armv7) -#endif - DSB - @ Clean data cache for range to point-of-unification -1: cmp r0, r1 - bge 2f -#ifdef ARMV6 - mcr p15, 0, r0, c7, c10, 1 @ Clean data cache line by MVA -#else - mcr p15, 0, r0, c7, c11, 1 @ DCCMVAU -#endif - add r0, r0, r2 @ Next line - b 1b -2: DSB - bx lr - -@ r0 - *beg (inclusive) -@ r1 - *end (exclusive) -#ifdef ARMV6 -FUNCTION(grub_arm_invalidate_icache_range_armv6) -#else -FUNCTION(grub_arm_invalidate_icache_range_armv7) -#endif - @ Invalidate instruction cache for range to point-of-unification -1: cmp r0, r1 - bge 2f - mcr p15, 0, r0, c7, c5, 1 @ ICIMVAU - add r0, r0, r2 @ Next line - b 1b - @ Branch predictor invalidate all -2: mcr p15, 0, r0, c7, c5, 6 @ BPIALL - DSB - ISB - bx lr - -#ifdef ARMV6 -FUNCTION(grub_arm_disable_caches_mmu_armv6) -#else -FUNCTION(grub_arm_disable_caches_mmu_armv7) -#endif - - push {r4, lr} - - @ disable D-cache - mrc p15, 0, r0, c1, c0, 0 - bic r0, r0, #(1 << 2) - mcr p15, 0, r0, c1, c0, 0 - DSB - ISB - - @ clean/invalidate D-cache - bl clean_invalidate_dcache - - @ disable I-cache - mrc p15, 0, r0, c1, c0, 0 - bic r0, r0, #(1 << 12) - mcr p15, 0, r0, c1, c0, 0 - DSB - ISB - - @ invalidate I-cache (also invalidates branch predictors) - mcr p15, 0, r0, c7, c5, 0 - DSB - ISB - - @ clear SCTLR M bit - mrc p15, 0, r0, c1, c0, 0 - bic r0, r0, #(1 << 0) - mcr p15, 0, r0, c1, c0, 0 - - mcr p15, 0, r0, c8, c7, 0 @ invalidate TLB - mcr p15, 0, r0, c7, c5, 6 @ invalidate branch predictor - DSB - ISB - - pop {r4, lr} - bx lr - diff --git a/thirdparty/grub-2.04/grub-core/kern/arm/cache.c b/thirdparty/grub-2.04/grub-core/kern/arm/cache.c deleted file mode 100644 index af1c4bbf5..000000000 --- a/thirdparty/grub-2.04/grub-core/kern/arm/cache.c +++ /dev/null @@ -1,308 +0,0 @@ -#include -#include -#include -#ifdef GRUB_MACHINE_UBOOT -#include -#include -#include -#endif - -/* This is only about cache architecture. It doesn't imply - the CPU architecture. */ -static enum - { - ARCH_UNKNOWN, - ARCH_ARMV5_WRITE_THROUGH, - ARCH_ARMV6, - ARCH_ARMV6_UNIFIED, - ARCH_ARMV7 - } type = ARCH_UNKNOWN; - -static int is_v6_mmu; - -static grub_uint32_t grub_arch_cache_dlinesz; -static grub_uint32_t grub_arch_cache_ilinesz; -static grub_uint32_t grub_arch_cache_max_linesz; - -/* Prototypes for asm functions. */ -void grub_arm_clean_dcache_range_armv6 (grub_addr_t start, grub_addr_t end, - grub_addr_t dlinesz); -void grub_arm_clean_dcache_range_armv7 (grub_addr_t start, grub_addr_t end, - grub_addr_t dlinesz); -void grub_arm_clean_dcache_range_poc_armv7 (grub_addr_t start, grub_addr_t end, - grub_addr_t dlinesz); -void grub_arm_invalidate_icache_range_armv6 (grub_addr_t start, grub_addr_t end, - grub_addr_t dlinesz); -void grub_arm_invalidate_icache_range_armv7 (grub_addr_t start, grub_addr_t end, - grub_addr_t dlinesz); -void grub_arm_disable_caches_mmu_armv6 (void); -void grub_arm_disable_caches_mmu_armv7 (void); -grub_uint32_t grub_arm_main_id (void); -grub_uint32_t grub_arm_cache_type (void); - -static void -probe_caches (void) -{ - grub_uint32_t main_id, cache_type; - - /* Read main ID Register */ - main_id = grub_arm_main_id (); - - switch ((main_id >> 16) & 0xf) - { - case 0x3: - case 0x4: - case 0x5: - case 0x6: - is_v6_mmu = 0; - break; - case 0x7: - case 0xf: - is_v6_mmu = 1; - break; - default: - grub_fatal ("Unsupported ARM ID 0x%x", main_id); - } - - /* Read Cache Type Register */ - cache_type = grub_arm_cache_type (); - - switch (cache_type >> 24) - { - case 0x00: - case 0x01: - grub_arch_cache_dlinesz = 8 << ((cache_type >> 12) & 3); - grub_arch_cache_ilinesz = 8 << (cache_type & 3); - type = ARCH_ARMV5_WRITE_THROUGH; - break; - case 0x04: - case 0x0a: - case 0x0c: - case 0x0e: - case 0x1c: - grub_arch_cache_dlinesz = 8 << ((cache_type >> 12) & 3); - grub_arch_cache_ilinesz = 8 << (cache_type & 3); - type = ARCH_ARMV6_UNIFIED; - break; - case 0x05: - case 0x0b: - case 0x0d: - case 0x0f: - case 0x1d: - grub_arch_cache_dlinesz = 8 << ((cache_type >> 12) & 3); - grub_arch_cache_ilinesz = 8 << (cache_type & 3); - type = ARCH_ARMV6; - break; - case 0x80 ... 0x8f: - grub_arch_cache_dlinesz = 4 << ((cache_type >> 16) & 0xf); - grub_arch_cache_ilinesz = 4 << (cache_type & 0xf); - type = ARCH_ARMV7; - break; - default: - grub_fatal ("Unsupported cache type 0x%x", cache_type); - } - if (grub_arch_cache_dlinesz > grub_arch_cache_ilinesz) - grub_arch_cache_max_linesz = grub_arch_cache_dlinesz; - else - grub_arch_cache_max_linesz = grub_arch_cache_ilinesz; -} - -#ifdef GRUB_MACHINE_UBOOT - -static void subdivide (grub_uint32_t *table, grub_uint32_t *subtable, - grub_uint32_t addr) -{ - grub_uint32_t j; - addr = addr >> 20 << 20; - table[addr >> 20] = (grub_addr_t) subtable | 1; - for (j = 0; j < 256; j++) - subtable[j] = addr | (j << 12) - | (3 << 4) | (3 << 6) | (3 << 8) | (3 << 10) - | (0 << 3) | (1 << 2) | 2; -} - -void -grub_arm_enable_caches_mmu (void) -{ - grub_uint32_t *table; - grub_uint32_t i; - grub_uint32_t border_crossing = 0; - grub_uint32_t *subtable; - struct sys_info *si = grub_uboot_get_sys_info (); - - if (!si || (si->mr_no == 0)) - { - grub_printf ("couldn't get memory map, not enabling caches"); - grub_errno = GRUB_ERR_NONE; - return; - } - - if (type == ARCH_UNKNOWN) - probe_caches (); - - for (i = 0; (signed) i < si->mr_no; i++) - { - if (si->mr[i].start & ((1 << 20) - 1)) - border_crossing++; - if ((si->mr[i].start + si->mr[i].size) & ((1 << 20) - 1)) - border_crossing++; - } - - grub_printf ("%d crossers\n", border_crossing); - - table = grub_memalign (1 << 14, (1 << 14) + (border_crossing << 10)); - if (!table) - { - grub_printf ("couldn't allocate place for MMU table, not enabling caches"); - grub_errno = GRUB_ERR_NONE; - return; - } - - subtable = table + (1 << 12); - /* Map all unknown as device. */ - for (i = 0; i < (1 << 12); i++) - table[i] = (i << 20) | (3 << 10) | (0 << 3) | (1 << 2) | 2; - /* - Device: TEX= 0, C=0, B=1 - normal: TEX= 0, C=1, B=1 - AP = 3 - IMP = 0 - Domain = 0 -*/ - - for (i = 0; (signed) i < si->mr_no; i++) - { - if (si->mr[i].start & ((1 << 20) - 1)) - { - subdivide (table, subtable, si->mr[i].start); - subtable += (1 << 8); - } - if ((si->mr[i].start + si->mr[i].size) & ((1 << 20) - 1)) - { - subdivide (table, subtable, si->mr[i].start + si->mr[i].size); - subtable += (1 << 8); - } - } - - for (i = 0; (signed) i < si->mr_no; i++) - if ((si->mr[i].flags & MR_ATTR_MASK) == MR_ATTR_DRAM - || (si->mr[i].flags & MR_ATTR_MASK) == MR_ATTR_SRAM - || (si->mr[i].flags & MR_ATTR_MASK) == MR_ATTR_FLASH) - { - grub_uint32_t cur, end; - cur = si->mr[i].start; - end = si->mr[i].start + si->mr[i].size; - while (cur < end) - { - grub_uint32_t *st; - if ((table[cur >> 20] & 3) == 2) - { - cur = cur >> 20 << 20; - table[cur >> 20] = cur | (3 << 10) | (1 << 3) | (1 << 2) | 2; - cur += (1 << 20); - continue; - } - cur = cur >> 12 << 12; - st = (grub_uint32_t *) (table[cur >> 20] & ~0x3ff); - st[(cur >> 12) & 0xff] = cur | (3 << 4) | (3 << 6) - | (3 << 8) | (3 << 10) - | (1 << 3) | (1 << 2) | 2; - cur += (1 << 12); - } - } - - grub_printf ("MMU tables generated\n"); - if (is_v6_mmu) - grub_arm_clear_mmu_v6 (); - - grub_printf ("enabling MMU\n"); - grub_arm_enable_mmu (table); - grub_printf ("MMU enabled\n"); -} - -#endif - -void -grub_arch_sync_caches (void *address, grub_size_t len) -{ - grub_addr_t start = (grub_addr_t) address; - grub_addr_t end = start + len; - - if (type == ARCH_UNKNOWN) - probe_caches (); - start = ALIGN_DOWN (start, grub_arch_cache_max_linesz); - end = ALIGN_UP (end, grub_arch_cache_max_linesz); - switch (type) - { - case ARCH_ARMV6: - grub_arm_clean_dcache_range_armv6 (start, end, grub_arch_cache_dlinesz); - grub_arm_invalidate_icache_range_armv6 (start, end, - grub_arch_cache_ilinesz); - break; - case ARCH_ARMV7: - grub_arm_clean_dcache_range_armv7 (start, end, grub_arch_cache_dlinesz); - grub_arm_invalidate_icache_range_armv7 (start, end, - grub_arch_cache_ilinesz); - break; - /* Nothing to do. */ - case ARCH_ARMV5_WRITE_THROUGH: - case ARCH_ARMV6_UNIFIED: - break; - /* Pacify GCC. */ - case ARCH_UNKNOWN: - break; - } -} - -void -grub_arch_sync_dma_caches (volatile void *address, grub_size_t len) -{ - grub_addr_t start = (grub_addr_t) address; - grub_addr_t end = start + len; - - if (type == ARCH_UNKNOWN) - probe_caches (); - start = ALIGN_DOWN (start, grub_arch_cache_max_linesz); - end = ALIGN_UP (end, grub_arch_cache_max_linesz); - switch (type) - { - case ARCH_ARMV6: - grub_arm_clean_dcache_range_armv6 (start, end, grub_arch_cache_dlinesz); - grub_arm_invalidate_icache_range_armv6 (start, end, - grub_arch_cache_ilinesz); - break; - case ARCH_ARMV5_WRITE_THROUGH: - case ARCH_ARMV6_UNIFIED: - grub_arm_clean_dcache_range_armv6 (start, end, grub_arch_cache_dlinesz); - break; - case ARCH_ARMV7: - grub_arm_clean_dcache_range_poc_armv7 (start, end, grub_arch_cache_dlinesz); - grub_arm_invalidate_icache_range_armv7 (start, end, - grub_arch_cache_ilinesz); - break; - /* Pacify GCC. */ - case ARCH_UNKNOWN: - break; - } -} - -void -grub_arm_disable_caches_mmu (void) -{ - if (type == ARCH_UNKNOWN) - probe_caches (); - switch (type) - { - case ARCH_ARMV5_WRITE_THROUGH: - case ARCH_ARMV6_UNIFIED: - case ARCH_ARMV6: - grub_arm_disable_caches_mmu_armv6 (); - break; - case ARCH_ARMV7: - grub_arm_disable_caches_mmu_armv7 (); - break; - /* Pacify GCC. */ - case ARCH_UNKNOWN: - break; - } -} diff --git a/thirdparty/grub-2.04/grub-core/kern/arm/cache_armv6.S b/thirdparty/grub-2.04/grub-core/kern/arm/cache_armv6.S deleted file mode 100644 index dfaded0eb..000000000 --- a/thirdparty/grub-2.04/grub-core/kern/arm/cache_armv6.S +++ /dev/null @@ -1,72 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2013 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include - - .file "cache_armv6.S" - .text - .syntax unified - .arm - -# define DMB mcr p15, 0, r0, c7, c10, 5 -# define DSB mcr p15, 0, r0, c7, c10, 4 -# define ISB mcr p15, 0, r0, c7, c5, 4 -#define ARMV6 1 - -clean_invalidate_dcache: - mcr p15, 0, r0, c7, c14, 0 @ Clean/Invalidate D-cache - bx lr - -#include "cache.S" - -FUNCTION(grub_arm_main_id) - mrc p15, 0, r0, c0, c0, 0 - bx lr - -FUNCTION(grub_arm_cache_type) - mrc p15, 0, r0, c0, c0, 1 - bx lr - -FUNCTION(grub_arm_clear_mmu_v6) - mov r0, #0 - mcr p15, 0, r0, c2, c0, 2 - bx lr - -FUNCTION(grub_arm_enable_mmu) - mcr p15, 0, r0, c2, c0, 0 - - mvn r0, #0 - mcr p15, 0, r0, c3, c0, 0 - - mrc p15, 0, r0, c1, c0, 0 - bic r0, r0, #(1 << 23) - mcr p15, 0, r0, c1, c0, 0 - - mrc p15, 0, r0, c1, c0, 0 - orr r0, r0, #(1 << 0) - mcr p15, 0, r0, c1, c0, 0 - - mrc p15, 0, r0, c1, c0, 0 - orr r0, r0, #(1 << 2) - mcr p15, 0, r0, c1, c0, 0 - - mrc p15, 0, r0, c1, c0, 0 - orr r0, r0, #(1 << 12) - mcr p15, 0, r0, c1, c0, 0 - - bx lr diff --git a/thirdparty/grub-2.04/grub-core/kern/arm/cache_armv7.S b/thirdparty/grub-2.04/grub-core/kern/arm/cache_armv7.S deleted file mode 100644 index 5ae76a3d8..000000000 --- a/thirdparty/grub-2.04/grub-core/kern/arm/cache_armv7.S +++ /dev/null @@ -1,138 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2013 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include - - .file "cache_armv7.S" - .text - .syntax unified -#if !defined (__thumb2__) - .arch armv7a - .arm -#else - .arch armv7 - .thumb -#endif -# define DMB dmb -# define DSB dsb -# define ISB isb -#define ARMV7 1 - -FUNCTION(grub_arm_clean_dcache_range_poc_armv7) - DSB - @ Clean data cache for range to point-of-coherence -1: cmp r0, r1 - bge 2f - mcr p15, 0, r0, c7, c14, 1 @ DCCMVAC - add r0, r0, r2 @ Next line - b 1b -2: DSB - bx lr - - - @ r0 - CLIDR - @ r1 - LoC - @ r2 - current level - @ r3 - num sets - @ r4 - num ways - @ r5 - current set - @ r6 - current way - @ r7 - line size - @ r8 - scratch - @ r9 - scratch - @ r10 - scratch - @ r11 - scratch -clean_invalidate_dcache: - push {r4-r12, lr} - mrc p15, 1, r0, c0, c0, 1 @ Read CLIDR - lsr r1, r0, #24 @ Extract LoC - and r1, r1, #0x7 - - mov r2, #0 @ First level, L1 -2: and r8, r0, #7 @ cache type at current level - cmp r8, #2 - blt 5f @ instruction only, or none, skip level - - @ set current cache level/type (for CCSIDR read) - lsl r8, r2, #1 - mcr p15, 2, r8, c0, c0, 0 @ Write CSSELR (level, type: data/uni) - - @ read current cache information - mrc p15, 1, r8, c0, c0, 0 @ Read CCSIDR - lsr r3, r8, #13 @ Number of sets -1 - - @ Keep only 14 bits of r3 - lsl r3, r3, #18 - lsr r3, r3, #18 - - lsr r4, r8, #3 @ Number of ways -1 - - @ Keep only 9 bits of r4 - lsl r4, r4, #23 - lsr r4, r4, #23 - - and r7, r8, #7 @ log2(line size in words) - 2 - add r7, r7, #2 @ adjust - mov r8, #1 - lsl r7, r8, r7 @ -> line size in words - lsl r7, r7, #2 @ -> bytes - - @ set loop - mov r5, #0 @ current set = 0 -3: lsl r8, r2, #1 @ insert level - clz r9, r7 @ calculate set field offset - mov r10, #31 - sub r9, r10, r9 - lsl r10, r5, r9 - orr r8, r8, r10 @ insert set field - - @ way loop - @ calculate way field offset - mov r6, #0 @ current way = 0 - add r10, r4, #1 - clz r9, r10 @ r9 = way field offset - add r9, r9, #1 -4: lsl r10, r6, r9 - orr r11, r8, r10 @ insert way field - - @ clean and invalidate line by set/way - mcr p15, 0, r11, c7, c14, 2 @ DCCISW - - @ next way - add r6, r6, #1 - cmp r6, r4 - ble 4b - - @ next set - add r5, r5, #1 - cmp r5, r3 - ble 3b - - @ next level -5: lsr r0, r0, #3 @ align next level CLIDR 'type' field - add r2, r2, #1 @ increment cache level counter - cmp r2, r1 - blt 2b @ outer loop - - @ return -6: DSB - ISB - pop {r4-r12, lr} - bx lr - -#include "cache.S" \ No newline at end of file diff --git a/thirdparty/grub-2.04/grub-core/kern/arm/compiler-rt.S b/thirdparty/grub-2.04/grub-core/kern/arm/compiler-rt.S deleted file mode 100644 index 645b42f50..000000000 --- a/thirdparty/grub-2.04/grub-core/kern/arm/compiler-rt.S +++ /dev/null @@ -1,86 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2013 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include - - .file "misc.S" - .text - .syntax unified -#if !defined (__thumb2__) - .arm -#else - .thumb -#endif - - .align 2 - -FUNCTION(__muldi3) -FUNCTION(__aeabi_lmul) - stmfd sp!, {r4, fp} - add fp, sp, #4 - sub sp, sp, #16 - str r0, [fp, #-12] - str r1, [fp, #-8] - str r2, [fp, #-20] - str r3, [fp, #-16] - ldr r3, [fp, #-8] - ldr r2, [fp, #-20] - mul r2, r3, r2 - ldr r3, [fp, #-16] - ldr r1, [fp, #-12] - mul r3, r1, r3 - add r2, r2, r3 - ldr r0, [fp, #-12] - ldr r1, [fp, #-20] - umull r3, r4, r0, r1 - add r2, r2, r4 - mov r4, r2 - mov r0, r3 - mov r1, r4 - mov sp, fp - sub sp, sp, #4 - ldmfd sp!, {r4, fp} - bx lr - - .macro division32 parent - - sub sp, sp, #8 @ Allocate naturally aligned 64-bit space - stmfd sp!, {r3,lr} @ Dummy r3 to maintain stack alignment - add r2, sp, #8 @ Set r2 to address of 64-bit space - bl \parent - ldr r1, [sp, #8] @ Extract remainder - ldmfd sp!, {r3,lr} @ Pop into an unused arg/scratch register - add sp, sp, #8 - bx lr - .endm - -FUNCTION(__aeabi_uidivmod) - division32 grub_divmod32 -FUNCTION(__aeabi_idivmod) - division32 grub_divmod32s - -/* - * Null divide-by-zero handler - */ -FUNCTION(__aeabi_unwind_cpp_pr0) -FUNCTION(raise) - mov r0, #0 - bx lr - - END diff --git a/thirdparty/grub-2.04/grub-core/kern/arm/coreboot/cbtable.c b/thirdparty/grub-2.04/grub-core/kern/arm/coreboot/cbtable.c deleted file mode 100644 index 8a655bb5c..000000000 --- a/thirdparty/grub-2.04/grub-core/kern/arm/coreboot/cbtable.c +++ /dev/null @@ -1,40 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2007,2008,2013 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -#pragma GCC diagnostic ignored "-Wcast-align" - -grub_linuxbios_table_header_t -grub_linuxbios_get_tables (void) -{ - grub_linuxbios_table_header_t table_header - = (grub_linuxbios_table_header_t) grub_arm_saved_registers.r[0]; - - if (!grub_linuxbios_check_signature (table_header)) - return 0; - - return table_header; -} diff --git a/thirdparty/grub-2.04/grub-core/kern/arm/coreboot/coreboot.S b/thirdparty/grub-2.04/grub-core/kern/arm/coreboot/coreboot.S deleted file mode 100644 index a1104526c..000000000 --- a/thirdparty/grub-2.04/grub-core/kern/arm/coreboot/coreboot.S +++ /dev/null @@ -1,44 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2016 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include - - .file "coreboot.S" - .text - .syntax unified -#if !defined (__thumb2__) - .arch armv7a - .arm -#else - .arch armv7 - .thumb -#endif - -FUNCTION(grub_arm_pfr1) - mrc p15, 0, r0, c0, c1, 1 - bx lr - -FUNCTION(grub_armv7_get_timer_value) - isb - mrrc p15, 1, r0, r1, c14 - bx lr - -FUNCTION(grub_armv7_get_timer_frequency) - mrc p15, 0, r0, c14, c0, 0 - bx lr - diff --git a/thirdparty/grub-2.04/grub-core/kern/arm/coreboot/dma.c b/thirdparty/grub-2.04/grub-core/kern/arm/coreboot/dma.c deleted file mode 100644 index 2c2a62789..000000000 --- a/thirdparty/grub-2.04/grub-core/kern/arm/coreboot/dma.c +++ /dev/null @@ -1,59 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2007,2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include - -struct grub_pci_dma_chunk * -grub_memalign_dma32 (grub_size_t align, grub_size_t size) -{ - void *ret; - if (align < 64) - align = 64; - size = ALIGN_UP (size, align); - ret = grub_memalign (align, size); - if (!ret) - return 0; - grub_arch_sync_dma_caches (ret, size); - return ret; -} - -void -grub_dma_free (struct grub_pci_dma_chunk *ch) -{ - grub_size_t size = (((struct grub_mm_header *) ch) - 1)->size * GRUB_MM_ALIGN; - grub_arch_sync_dma_caches (ch, size); - grub_free (ch); -} - -volatile void * -grub_dma_get_virt (struct grub_pci_dma_chunk *ch) -{ - return (void *) ch; -} - -grub_uint32_t -grub_dma_get_phys (struct grub_pci_dma_chunk *ch) -{ - return (grub_uint32_t) (grub_addr_t) ch; -} - diff --git a/thirdparty/grub-2.04/grub-core/kern/arm/coreboot/init.c b/thirdparty/grub-2.04/grub-core/kern/arm/coreboot/init.c deleted file mode 100644 index 8d8c5b829..000000000 --- a/thirdparty/grub-2.04/grub-core/kern/arm/coreboot/init.c +++ /dev/null @@ -1,151 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2002,2003,2004,2005,2006,2007,2008,2009,2013 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -extern grub_uint8_t _start[]; -extern grub_uint8_t _end[]; -extern grub_uint8_t _edata[]; -grub_addr_t start_of_ram = ~(grub_addr_t)0; - -void __attribute__ ((noreturn)) -grub_exit (void) -{ - /* We can't use grub_fatal() in this function. This would create an infinite - loop, since grub_fatal() calls grub_abort() which in turn calls grub_exit(). */ - while (1) - grub_cpu_idle (); -} - -static grub_uint64_t modend; -static int have_memory = 0; - -/* Helper for grub_machine_init. */ -static int -heap_init (grub_uint64_t addr, grub_uint64_t size, grub_memory_type_t type, - void *data __attribute__ ((unused))) -{ - grub_uint64_t begin = addr, end = addr + size; - -#if GRUB_CPU_SIZEOF_VOID_P == 4 - /* Restrict ourselves to 32-bit memory space. */ - if (begin > GRUB_ULONG_MAX) - return 0; - if (end > GRUB_ULONG_MAX) - end = GRUB_ULONG_MAX; -#endif - - if (start_of_ram > begin) - start_of_ram = begin; - - if (type != GRUB_MEMORY_AVAILABLE) - return 0; - - if (modend && begin < modend) - { - if (begin < (grub_addr_t)_start) - { - grub_mm_init_region ((void *) (grub_addr_t) begin, (grub_size_t) ((grub_addr_t)_start - begin)); - have_memory = 1; - } - begin = modend; - } - - /* Avoid DMA problems. */ - if (end >= 0xfe000000) - end = 0xfe000000; - - if (end <= begin) - return 0; - - grub_mm_init_region ((void *) (grub_addr_t) begin, (grub_size_t) (end - begin)); - - have_memory = 1; - - return 0; -} - -void -grub_machine_init (void) -{ - struct grub_module_header *header; - void *dtb = 0; - grub_size_t dtb_size = 0; - - modend = grub_modules_get_end (); - - grub_video_coreboot_fb_early_init (); - - grub_machine_mmap_iterate (heap_init, NULL); - if (!have_memory) - grub_fatal ("No memory found"); - - grub_video_coreboot_fb_late_init (); - - grub_font_init (); - grub_gfxterm_init (); - - FOR_MODULES (header) - if (header->type == OBJ_TYPE_DTB) - { - char *dtb_orig_addr, *dtb_copy; - dtb_orig_addr = (char *) header + sizeof (struct grub_module_header); - - dtb_size = header->size - sizeof (struct grub_module_header); - dtb = dtb_copy = grub_malloc (dtb_size); - grub_memmove (dtb_copy, dtb_orig_addr, dtb_size); - break; - } - if (!dtb) - grub_fatal ("No DTB found"); - grub_fdtbus_init (dtb, dtb_size); - - grub_rk3288_spi_init (); - - grub_machine_timer_init (); - grub_cros_init (); - grub_pl050_init (); -} - -void -grub_machine_get_bootlocation (char **device __attribute__ ((unused)), - char **path __attribute__ ((unused))) -{ -} - -void -grub_machine_fini (int flags __attribute__ ((unused))) -{ -} diff --git a/thirdparty/grub-2.04/grub-core/kern/arm/coreboot/timer.c b/thirdparty/grub-2.04/grub-core/kern/arm/coreboot/timer.c deleted file mode 100644 index d97b844f8..000000000 --- a/thirdparty/grub-2.04/grub-core/kern/arm/coreboot/timer.c +++ /dev/null @@ -1,101 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2016 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include - -grub_uint64_t -grub_armv7_get_timer_value(void); - -grub_uint32_t -grub_armv7_get_timer_frequency(void); - -grub_uint32_t -grub_arm_pfr1(void); - -static int have_timer = 0; -static volatile grub_uint32_t *sp804_regs; - -static grub_uint64_t -sp804_get_time_ms (void) -{ - static grub_uint32_t high, last_low; - grub_uint32_t low = ~sp804_regs[1]; - if (last_low > low) - high++; - last_low = low; - return grub_divmod64 ((((grub_uint64_t) high) << 32) | low, - 1000, 0); -} - -static grub_err_t -sp804_attach(const struct grub_fdtbus_dev *dev) -{ - if (have_timer) - return GRUB_ERR_NONE; - sp804_regs = grub_fdtbus_map_reg (dev, 0, 0); - if (!grub_fdtbus_is_mapping_valid (sp804_regs)) - return grub_error (GRUB_ERR_IO, "could not map sp804: %p", sp804_regs); - grub_install_get_time_ms (sp804_get_time_ms); - have_timer = 1; - return GRUB_ERR_NONE; -} - -struct grub_fdtbus_driver sp804 = -{ - .compatible = "arm,sp804", - .attach = sp804_attach -}; - -static grub_uint32_t timer_frequency_in_khz; - -static grub_uint64_t -generic_get_time_ms (void) -{ - return grub_divmod64 (grub_armv7_get_timer_value(), timer_frequency_in_khz, 0); -} - -static int -try_generic_timer (void) -{ - if (((grub_arm_pfr1 () >> 16) & 0xf) != 1) - return 0; - grub_printf ("freq = %x\n", grub_armv7_get_timer_frequency()); - timer_frequency_in_khz = 0x016e3600 / 1000; //grub_armv7_get_timer_frequency() / 1000; - if (timer_frequency_in_khz == 0) - return 0; - grub_install_get_time_ms (generic_get_time_ms); - have_timer = 1; - return 1; -} - -void -grub_machine_timer_init (void) -{ - grub_fdtbus_register (&sp804); - - if (!have_timer) - try_generic_timer (); - if (!have_timer) - grub_fatal ("No timer found"); -} diff --git a/thirdparty/grub-2.04/grub-core/kern/arm/dl.c b/thirdparty/grub-2.04/grub-core/kern/arm/dl.c deleted file mode 100644 index eab9d17ff..000000000 --- a/thirdparty/grub-2.04/grub-core/kern/arm/dl.c +++ /dev/null @@ -1,280 +0,0 @@ -/* dl.c - arch-dependent part of loadable module support */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2013 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include - -struct trampoline_arm -{ -#define ARM_LOAD_IP 0xe59fc000 -#define ARM_BX 0xe12fff1c -#define ARM_MOV_PC 0xe1a0f00c - grub_uint32_t load_ip; /* ldr ip, [pc] */ - grub_uint32_t bx; /* bx ip or mov pc, ip*/ - grub_uint32_t addr; -}; - -static grub_uint16_t thumb_template[8] = - { - 0x468c, /* mov ip, r1 */ - 0x4903, /* ldr r1, [pc, #12] ; (10 <.text+0x10>) */ - /* Exchange R1 and IP in limited Thumb instruction set. - IP gets negated but we compensate it by C code. */ - /* R1 IP */ - /* -A R1 */ - 0x4461, /* add r1, ip */ /* R1-A R1 */ - 0x4249, /* negs r1, r1 */ /* A-R1 R1 */ - 0x448c, /* add ip, r1 */ /* A-R1 A */ - 0x4249, /* negs r1, r1 */ /* R1-A A */ - 0x4461, /* add r1, ip */ /* R1 A */ - 0x4760 /* bx ip */ - }; - -struct trampoline_thumb -{ - grub_uint16_t template[8]; - grub_uint32_t neg_addr; -}; - -#pragma GCC diagnostic ignored "-Wcast-align" - -grub_err_t -grub_arch_dl_get_tramp_got_size (const void *ehdr, grub_size_t *tramp, - grub_size_t *got) -{ - const Elf_Ehdr *e = ehdr; - const Elf_Shdr *s; - unsigned i; - - *tramp = 0; - *got = 0; - - for (i = 0, s = (const Elf_Shdr *) ((grub_addr_t) e + e->e_shoff); - i < e->e_shnum; - i++, s = (const Elf_Shdr *) ((grub_addr_t) s + e->e_shentsize)) - if (s->sh_type == SHT_REL) - { - const Elf_Rel *rel, *max; - - for (rel = (const Elf_Rel *) ((grub_addr_t) e + s->sh_offset), - max = (const Elf_Rel *) ((grub_addr_t) rel + s->sh_size); - rel + 1 <= max; - rel = (const Elf_Rel *) ((grub_addr_t) rel + s->sh_entsize)) - switch (ELF_R_TYPE (rel->r_info)) - { - case R_ARM_CALL: - case R_ARM_JUMP24: - { - *tramp += sizeof (struct trampoline_arm); - break; - } - case R_ARM_THM_CALL: - case R_ARM_THM_JUMP24: - case R_ARM_THM_JUMP19: - { - *tramp += sizeof (struct trampoline_thumb); - break; - } - } - } - - grub_dprintf ("dl", "trampoline size %x\n", *tramp); - - return GRUB_ERR_NONE; -} - -/************************************************* - * Runtime dynamic linker with helper functions. * - *************************************************/ -grub_err_t -grub_arch_dl_relocate_symbols (grub_dl_t mod, void *ehdr, - Elf_Shdr *s, grub_dl_segment_t seg) -{ - Elf_Rel *rel, *max; - - for (rel = (Elf_Rel *) ((char *) ehdr + s->sh_offset), - max = (Elf_Rel *) ((char *) rel + s->sh_size); - rel < max; - rel = (Elf_Rel *) ((char *) rel + s->sh_entsize)) - { - Elf_Addr *target, sym_addr; - grub_err_t retval; - Elf_Sym *sym; - - if (seg->size < rel->r_offset) - return grub_error (GRUB_ERR_BAD_MODULE, - "reloc offset is out of the segment"); - target = (void *) ((char *) seg->addr + rel->r_offset); - sym = (Elf_Sym *) ((char *) mod->symtab - + mod->symsize * ELF_R_SYM (rel->r_info)); - - sym_addr = sym->st_value; - - switch (ELF_R_TYPE (rel->r_info)) - { - case R_ARM_ABS32: - { - /* Data will be naturally aligned */ - retval = grub_arm_reloc_abs32 (target, sym_addr); - if (retval != GRUB_ERR_NONE) - return retval; - } - break; - case R_ARM_CALL: - case R_ARM_JUMP24: - { - grub_int32_t offset; - - sym_addr += grub_arm_jump24_get_offset (target); - offset = sym_addr - (grub_uint32_t) target; - - if ((sym_addr & 1) || !grub_arm_jump24_check_offset (offset)) - { - struct trampoline_arm *tp = mod->trampptr; - mod->trampptr = tp + 1; - tp->load_ip = ARM_LOAD_IP; - tp->bx = (sym_addr & 1) ? ARM_BX : ARM_MOV_PC; - tp->addr = sym_addr + 8; - offset = (grub_uint8_t *) tp - (grub_uint8_t *) target - 8; - } - if (!grub_arm_jump24_check_offset (offset)) - return grub_error (GRUB_ERR_BAD_MODULE, - "trampoline out of range"); - grub_arm_jump24_set_offset (target, offset); - } - break; - case R_ARM_THM_CALL: - case R_ARM_THM_JUMP24: - { - /* Thumb instructions can be 16-bit aligned */ - grub_int32_t offset; - - sym_addr += grub_arm_thm_call_get_offset ((grub_uint16_t *) target); - - grub_dprintf ("dl", " sym_addr = 0x%08x\n", sym_addr); - if (ELF_ST_TYPE (sym->st_info) != STT_FUNC) - sym_addr |= 1; - - offset = sym_addr - (grub_uint32_t) target; - - grub_dprintf("dl", " BL*: target=%p, sym_addr=0x%08x, offset=%d\n", - target, sym_addr, offset); - - if (!(sym_addr & 1) || (offset < -0x200000 || offset >= 0x200000)) - { - struct trampoline_thumb *tp = mod->trampptr; - mod->trampptr = tp + 1; - grub_memcpy (tp->template, thumb_template, sizeof (tp->template)); - tp->neg_addr = -sym_addr - 4; - offset = ((grub_uint8_t *) tp - (grub_uint8_t *) target - 4) | 1; - } - - if (offset < -0x200000 || offset >= 0x200000) - return grub_error (GRUB_ERR_BAD_MODULE, - "trampoline out of range"); - - grub_dprintf ("dl", " relative destination = %p\n", - (char *) target + offset); - - retval = grub_arm_thm_call_set_offset ((grub_uint16_t *) target, offset); - if (retval != GRUB_ERR_NONE) - return retval; - } - break; - /* Happens when compiled with -march=armv4. Since currently we need - at least armv5, keep bx as-is. - */ - case R_ARM_V4BX: - break; - case R_ARM_THM_MOVW_ABS_NC: - case R_ARM_THM_MOVT_ABS: - { - grub_uint32_t offset; - offset = grub_arm_thm_movw_movt_get_value((grub_uint16_t *) target); - offset += sym_addr; - - if (ELF_R_TYPE (rel->r_info) == R_ARM_THM_MOVT_ABS) - offset >>= 16; - else - offset &= 0xffff; - - grub_arm_thm_movw_movt_set_value((grub_uint16_t *) target, offset); - } - break; - case R_ARM_THM_JUMP19: - { - /* Thumb instructions can be 16-bit aligned */ - grub_int32_t offset; - - sym_addr += grub_arm_thm_jump19_get_offset ((grub_uint16_t *) target); - - if (ELF_ST_TYPE (sym->st_info) != STT_FUNC) - sym_addr |= 1; - - offset = sym_addr - (grub_uint32_t) target; - - if (!grub_arm_thm_jump19_check_offset (offset) - || !(sym_addr & 1)) - { - struct trampoline_thumb *tp = mod->trampptr; - mod->trampptr = tp + 1; - grub_memcpy (tp->template, thumb_template, sizeof (tp->template)); - tp->neg_addr = -sym_addr - 4; - offset = ((grub_uint8_t *) tp - (grub_uint8_t *) target - 4) | 1; - } - - if (!grub_arm_thm_jump19_check_offset (offset)) - return grub_error (GRUB_ERR_BAD_MODULE, - "trampoline out of range"); - - grub_arm_thm_jump19_set_offset ((grub_uint16_t *) target, offset); - } - break; - default: - return grub_error (GRUB_ERR_NOT_IMPLEMENTED_YET, - N_("relocation 0x%x is not implemented yet"), - ELF_R_TYPE (rel->r_info)); - } - } - - return GRUB_ERR_NONE; -} - - -/* - * Check if EHDR is a valid ELF header. - */ -grub_err_t -grub_arch_dl_check_header (void *ehdr) -{ - Elf_Ehdr *e = ehdr; - - /* Check the magic numbers. */ - if (e->e_ident[EI_CLASS] != ELFCLASS32 - || e->e_ident[EI_DATA] != ELFDATA2LSB || e->e_machine != EM_ARM) - return grub_error (GRUB_ERR_BAD_OS, - N_("invalid arch-dependent ELF magic")); - - return GRUB_ERR_NONE; -} diff --git a/thirdparty/grub-2.04/grub-core/kern/arm/dl_helper.c b/thirdparty/grub-2.04/grub-core/kern/arm/dl_helper.c deleted file mode 100644 index 21d77f763..000000000 --- a/thirdparty/grub-2.04/grub-core/kern/arm/dl_helper.c +++ /dev/null @@ -1,245 +0,0 @@ -/* dl.c - arch-dependent part of loadable module support */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2013 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include - -static inline grub_uint32_t -thumb_get_instruction_word (grub_uint16_t *target) -{ - /* Extract instruction word in alignment-safe manner */ - return grub_le_to_cpu16 ((*target)) << 16 | grub_le_to_cpu16 (*(target + 1)); -} - -static inline void -thumb_set_instruction_word (grub_uint16_t *target, grub_uint32_t insword) -{ - *target = grub_cpu_to_le16 (insword >> 16); - *(target + 1) = grub_cpu_to_le16 (insword & 0xffff); -} - -/* - * R_ARM_ABS32 - * - * Simple relocation of 32-bit value (in literal pool) - */ -grub_err_t -grub_arm_reloc_abs32 (Elf32_Word *target, Elf32_Addr sym_addr) -{ - Elf32_Addr tmp; - - tmp = grub_le_to_cpu32 (*target); - tmp += sym_addr; - *target = grub_cpu_to_le32 (tmp); - - return GRUB_ERR_NONE; -} - -/******************************************************************** - * Thumb (T32) relocations: * - * * - * 32-bit Thumb instructions can be 16-bit aligned, and are fetched * - * little-endian, requiring some additional fiddling. * - ********************************************************************/ - -grub_int32_t -grub_arm_thm_call_get_offset (grub_uint16_t *target) -{ - grub_uint32_t sign, j1, j2; - grub_uint32_t insword; - grub_int32_t offset; - - insword = thumb_get_instruction_word (target); - - /* Extract bitfields from instruction words */ - sign = (insword >> 26) & 1; - j1 = (insword >> 13) & 1; - j2 = (insword >> 11) & 1; - offset = (sign << 24) | ((~(j1 ^ sign) & 1) << 23) | - ((~(j2 ^ sign) & 1) << 22) | - ((insword & 0x03ff0000) >> 4) | ((insword & 0x000007ff) << 1); - - /* Sign adjust and calculate offset */ - if (offset & (1 << 24)) - offset -= (1 << 25); - - return offset; -} - -grub_err_t -grub_arm_thm_call_set_offset (grub_uint16_t *target, grub_int32_t offset) -{ - grub_uint32_t sign, j1, j2; - const grub_uint32_t insmask = 0xf800d000; - grub_uint32_t insword; - int is_blx; - - insword = thumb_get_instruction_word (target); - - if (((insword >> 12) & 0xd) == 0xc) - is_blx = 1; - else - is_blx = 0; - - if (!is_blx && !(offset & 1)) - return grub_error (GRUB_ERR_BAD_MODULE, "bl/b.w targettting ARM"); - - /* Transform blx into bl if necessarry. */ - if (is_blx && (offset & 1)) - insword |= (1 << 12); - - /* Reassemble instruction word */ - sign = (offset >> 24) & 1; - j1 = sign ^ (~(offset >> 23) & 1); - j2 = sign ^ (~(offset >> 22) & 1); - insword = (insword & insmask) | - (sign << 26) | - (((offset >> 12) & 0x03ff) << 16) | - (j1 << 13) | (j2 << 11) | ((offset >> 1) & 0x07ff); - - thumb_set_instruction_word (target, insword); - - grub_dprintf ("dl", " *insword = 0x%08x", insword); - - return GRUB_ERR_NONE; -} - -grub_int32_t -grub_arm_thm_jump19_get_offset (grub_uint16_t *target) -{ - grub_int32_t offset; - grub_uint32_t insword; - - insword = thumb_get_instruction_word (target); - - /* Extract and sign extend offset */ - offset = ((insword >> 26) & 1) << 19 - | ((insword >> 11) & 1) << 18 - | ((insword >> 13) & 1) << 17 - | ((insword >> 16) & 0x3f) << 11 - | (insword & 0x7ff); - offset <<= 1; - if (offset & (1 << 20)) - offset -= (1 << 21); - - return offset; -} - -void -grub_arm_thm_jump19_set_offset (grub_uint16_t *target, grub_int32_t offset) -{ - grub_uint32_t insword; - const grub_uint32_t insmask = 0xfbc0d000; - - offset >>= 1; - offset &= 0xfffff; - - insword = thumb_get_instruction_word (target); - - /* Reassemble instruction word and write back */ - insword &= insmask; - insword |= ((offset >> 19) & 1) << 26 - | ((offset >> 18) & 1) << 11 - | ((offset >> 17) & 1) << 13 - | ((offset >> 11) & 0x3f) << 16 - | (offset & 0x7ff); - thumb_set_instruction_word (target, insword); -} - -int -grub_arm_thm_jump19_check_offset (grub_int32_t offset) -{ - if ((offset > 1048574) || (offset < -1048576)) - return 0; - return 1; -} - -grub_uint16_t -grub_arm_thm_movw_movt_get_value (grub_uint16_t *target) -{ - grub_uint32_t insword; - - insword = thumb_get_instruction_word (target); - - return ((insword & 0xf0000) >> 4) | ((insword & 0x04000000) >> 15) | \ - ((insword & 0x7000) >> 4) | (insword & 0xff); -} - -void -grub_arm_thm_movw_movt_set_value (grub_uint16_t *target, grub_uint16_t value) -{ - grub_uint32_t insword; - const grub_uint32_t insmask = 0xfbf08f00; - - insword = thumb_get_instruction_word (target); - insword &= insmask; - - insword |= ((value & 0xf000) << 4) | ((value & 0x0800) << 15) | \ - ((value & 0x0700) << 4) | (value & 0xff); - - thumb_set_instruction_word (target, insword); -} - - -/*********************************************************** - * ARM (A32) relocations: * - * * - * ARM instructions are 32-bit in size and 32-bit aligned. * - ***********************************************************/ - -grub_int32_t -grub_arm_jump24_get_offset (grub_uint32_t *target) -{ - grub_int32_t offset; - grub_uint32_t insword; - - insword = grub_le_to_cpu32 (*target); - - offset = (insword & 0x00ffffff) << 2; - if (offset & 0x02000000) - offset -= 0x04000000; - return offset; -} - -int -grub_arm_jump24_check_offset (grub_int32_t offset) -{ - if (offset >= 0x02000000 || offset < -0x02000000) - return 0; - return 1; -} - -void -grub_arm_jump24_set_offset (grub_uint32_t *target, - grub_int32_t offset) -{ - grub_uint32_t insword; - - insword = grub_le_to_cpu32 (*target); - - insword &= 0xff000000; - insword |= (offset >> 2) & 0x00ffffff; - - *target = grub_cpu_to_le32 (insword); -} diff --git a/thirdparty/grub-2.04/grub-core/kern/arm/efi/init.c b/thirdparty/grub-2.04/grub-core/kern/arm/efi/init.c deleted file mode 100644 index 06df60e2f..000000000 --- a/thirdparty/grub-2.04/grub-core/kern/arm/efi/init.c +++ /dev/null @@ -1,74 +0,0 @@ -/* init.c - initialize an arm-based EFI system */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2013 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include - -static grub_uint64_t tmr; -static grub_efi_event_t tmr_evt; - -static grub_uint64_t -grub_efi_get_time_ms (void) -{ - return tmr; -} - -static void -increment_timer (grub_efi_event_t event __attribute__ ((unused)), - void *context __attribute__ ((unused))) -{ - tmr += 10; -} - -void -grub_machine_init (void) -{ - grub_efi_boot_services_t *b; - - grub_efi_init (); - - b = grub_efi_system_table->boot_services; - - efi_call_5 (b->create_event, GRUB_EFI_EVT_TIMER | GRUB_EFI_EVT_NOTIFY_SIGNAL, - GRUB_EFI_TPL_CALLBACK, increment_timer, NULL, &tmr_evt); - efi_call_3 (b->set_timer, tmr_evt, GRUB_EFI_TIMER_PERIODIC, 100000); - - grub_install_get_time_ms (grub_efi_get_time_ms); -} - -void -grub_machine_fini (int flags) -{ - grub_efi_boot_services_t *b; - - if (!(flags & GRUB_LOADER_FLAG_NORETURN)) - return; - - b = grub_efi_system_table->boot_services; - - efi_call_3 (b->set_timer, tmr_evt, GRUB_EFI_TIMER_CANCEL, 0); - efi_call_1 (b->close_event, tmr_evt); - - grub_efi_fini (); -} diff --git a/thirdparty/grub-2.04/grub-core/kern/arm/efi/startup.S b/thirdparty/grub-2.04/grub-core/kern/arm/efi/startup.S deleted file mode 100644 index 9f8265315..000000000 --- a/thirdparty/grub-2.04/grub-core/kern/arm/efi/startup.S +++ /dev/null @@ -1,36 +0,0 @@ -/* - * (C) Copyright 2013 Free Software Foundation - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public License as - * published by the Free Software Foundation; either version 2 of - * the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, - * MA 02111-1307 USA - * - */ - -#include - - .file "startup.S" - .text - .arm -FUNCTION(_start) - /* - * EFI_SYSTEM_TABLE and EFI_HANDLE are passed in r1/r0. - */ - ldr ip, =EXT_C(grub_efi_image_handle) - str r0, [ip] - ldr ip, =EXT_C(grub_efi_system_table) - str r1, [ip] - ldr ip, =EXT_C(grub_main) - bx ip - END diff --git a/thirdparty/grub-2.04/grub-core/kern/arm/startup.S b/thirdparty/grub-2.04/grub-core/kern/arm/startup.S deleted file mode 100644 index 3946fe8e1..000000000 --- a/thirdparty/grub-2.04/grub-core/kern/arm/startup.S +++ /dev/null @@ -1,177 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2013 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include - -/* - * GRUB is called from U-Boot as a Linux Kernel type image, which - * means among other things that it always enters in ARM state. - * - * coreboot starts in ARM mode as well. - * - * Overview of GRUB image layout: - * - * _start: - * Entry point (1 ARM branch instruction, to "codestart") - * grub_total_module_size: - * Data field: Size of included module blob - * (when generated by grub-mkimage) - * codestart: - * Remainder of statically-linked executable code and data. - * __bss_start: - * Start of included module blob. - * Also where global/static variables are located. - * _end: - * End of bss region (but not necessarily module blob). - * : - * : - * Loadable modules, post relocation. - * : - */ - - .text - .arm -FUNCTION(_start) - b codestart - - @ Size of final image integrated module blob - set by grub-mkimage - .org _start + GRUB_KERNEL_MACHINE_TOTAL_MODULE_SIZE -VARIABLE(grub_total_module_size) - .long 0 - -VARIABLE(grub_modbase) - .long 0 -bss_start_ptr: - .long EXT_C(__bss_start) -end_ptr: - .long EXT_C(_end) - - @ Memory map at start: - @ * text+data - @ * list relocations - @ * modules - @ Before we enter C, we need to apply the relocations - @ and get following map: - @ * text+data - @ * BSS (cleared) - @ * stack - @ * modules - @ - @ To make things easier we ensure - @ that BSS+stack is larger than list of relocations - @ by increasing stack if necessarry. - @ This allows us to always unconditionally copy backwards - @ Currently list of relocations is ~5K and stack is set - @ to be at least 256K - -FUNCTION(codestart) - @ Store context: Machine ID, atags/dtb, ... - @ U-Boot API signature is stored on the U-Boot heap - @ Stack pointer used as start address for signature probing - mov r12, sp - adr sp, entry_state - push {r0-r12,lr} @ store U-Boot context (sp in r12) - - adr r1, _start - ldr r0, bss_start_ptr @ src - add r0, r0, r1 - - add r0, r0, #(GRUB_KERNEL_MACHINE_MOD_ALIGN - 1) - mvn r2, #(GRUB_KERNEL_MACHINE_MOD_ALIGN - 1) - and r0, r0, r2 -1: - ldr r3, [r0], #4 @load next offset - @ both -2 and -1 are treated the same as we have only one type of relocs - @ -2 means "end of this type of relocs" and -1 means "end of all relocs" - add r2, r3, #2 - cmp r2, #1 - bls reloc_done - @ Adjust next offset - ldr r2, [r3, r1] - add r2, r2, r1 - str r2, [r3, r1] - b 1b - -reloc_done: - - @ Modules have been stored as a blob - @ they need to be manually relocated to _end - add r0, r0, #(GRUB_KERNEL_MACHINE_MOD_ALIGN - 1) - mvn r1, #(GRUB_KERNEL_MACHINE_MOD_ALIGN - 1) - and r0, r0, r1 @ src = aligned end of relocations - - ldr r1, end_ptr @ dst = End of BSS - ldr r2, grub_total_module_size @ blob size - - add r1, r1, #GRUB_KERNEL_MACHINE_STACK_SIZE - and r1, r1, #~0x7 @ Ensure 8-byte alignment - - sub sp, r1, #8 - add r1, r1, #1024 - - str r1, EXT_C(grub_modbase) - - /* Coreboot already places modules at right place. */ -#ifndef GRUB_MACHINE_COREBOOT - add r1, r1, r2 - add r0, r0, r2 - sub r1, r1, #4 - sub r0, r0, #4 - -1: ldr r3, [r0], #-4 @ r3 = *src-- - str r3, [r1], #-4 @ *dst-- = r3 - subs r2, #4 @ remaining -= 4 - bne 1b @ while remaining != 0 -#endif - - @ Since we _are_ the C run-time, we need to manually zero the BSS - @ region before continuing - ldr r0, bss_start_ptr @ zero from here - @ If unaligned, bytewise zero until base address aligned. - mov r2, #0 -1: tst r0, #3 - beq 2f - strb r2, [r0], #1 - b 1b -2: ldr r1, end_ptr @ to here -1: str r2, [r0], #4 - cmp r0, r1 - bne 1b - - b EXT_C(grub_main) - - .align 3 -@ U-boot/coreboot context stack space -VARIABLE(grub_arm_saved_registers) - .long 0 @ r0 - .long 0 @ r1 - .long 0 @ r2 - .long 0 @ r3 - .long 0 @ r4 - .long 0 @ r5 - .long 0 @ r6 - .long 0 @ r7 - .long 0 @ r8 - .long 0 @ r9 - .long 0 @ r10 - .long 0 @ r11 - .long 0 @ sp - .long 0 @ lr -entry_state: diff --git a/thirdparty/grub-2.04/grub-core/kern/arm/uboot/init.c b/thirdparty/grub-2.04/grub-core/kern/arm/uboot/init.c deleted file mode 100644 index 2a6aa3fdd..000000000 --- a/thirdparty/grub-2.04/grub-core/kern/arm/uboot/init.c +++ /dev/null @@ -1,70 +0,0 @@ -/* init.c - generic U-Boot initialization and finalization */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2016 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include - -extern int (*grub_uboot_syscall_ptr) (int, int *, ...); - -grub_uint32_t -grub_uboot_get_machine_type (void) -{ - return grub_arm_saved_registers.r[1]; -} - -grub_addr_t -grub_uboot_get_boot_data (void) -{ - return grub_arm_saved_registers.r[2]; -} - -int -grub_uboot_api_init (void) -{ - struct api_signature *start, *end; - struct api_signature *p; - grub_addr_t grub_uboot_search_hint = grub_arm_saved_registers.sp; - if (grub_uboot_search_hint) - { - /* Extended search range to work around Trim Slice U-Boot issue */ - start = (struct api_signature *) ((grub_uboot_search_hint & ~0x000fffff) - - 0x00500000); - end = - (struct api_signature *) ((grub_addr_t) start + UBOOT_API_SEARCH_LEN - - API_SIG_MAGLEN + 0x00500000); - } - else - { - start = 0; - end = (struct api_signature *) (256 * 1024 * 1024); - } - - /* Structure alignment is (at least) 8 bytes */ - for (p = start; p < end; p = (void *) ((grub_addr_t) p + 8)) - { - if (grub_memcmp (&(p->magic), API_SIG_MAGIC, API_SIG_MAGLEN) == 0) - { - grub_uboot_syscall_ptr = p->syscall; - return p->version; - } - } - - return 0; -} diff --git a/thirdparty/grub-2.04/grub-core/kern/arm/uboot/uboot.S b/thirdparty/grub-2.04/grub-core/kern/arm/uboot/uboot.S deleted file mode 100644 index d128775f1..000000000 --- a/thirdparty/grub-2.04/grub-core/kern/arm/uboot/uboot.S +++ /dev/null @@ -1,73 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2013 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include - - /* - * uboot_syscall(): - * This function is effectively a veneer, so it cannot - * modify the stack or corrupt any registers other than - * r12 (ip). Furthermore it needs to restore r8 for - * U-Boot (Global Data Pointer) and preserve it for Grub. - */ -FUNCTION(grub_uboot_syscall) - str r8, transition_space - str lr, transition_space + 4 - str r9, transition_space + 8 - - ldr ip, saved_registers_ptr - ldr r8, [ip, #4 * 8] - ldr r9, [ip, #4 * 9] - - bl do_syscall - - ldr r8, transition_space - ldr lr, transition_space + 4 - ldr r9, transition_space + 8 - - bx lr -do_syscall: - - ldr ip, grub_uboot_syscall_ptr - bx ip - -FUNCTION(grub_uboot_return) - ldr ip, saved_registers_ptr - ldr sp, [ip, #4 * 4] - pop {r4-r12, lr} - mov sp, r12 - bx lr - - - .align 3 - -@ GRUB context stack space -transition_space: - .long 0 @ r8 - .long 0 @ lr - .long 0 @ r9 - -saved_registers_ptr: - .long EXT_C(grub_arm_saved_registers) - -VARIABLE(grub_uboot_syscall_ptr) - .long 0 @ - - END diff --git a/thirdparty/grub-2.04/grub-core/kern/arm64/cache.c b/thirdparty/grub-2.04/grub-core/kern/arm64/cache.c deleted file mode 100644 index b84383da1..000000000 --- a/thirdparty/grub-2.04/grub-core/kern/arm64/cache.c +++ /dev/null @@ -1,63 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2013 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include - -static grub_int64_t dlinesz; -static grub_int64_t ilinesz; - -/* Prototypes for asm functions. */ -void grub_arch_clean_dcache_range (grub_addr_t beg, grub_addr_t end, - grub_uint64_t line_size); -void grub_arch_invalidate_icache_range (grub_addr_t beg, grub_addr_t end, - grub_uint64_t line_size); - -static void -probe_caches (void) -{ - grub_uint64_t cache_type; - - /* Read Cache Type Register */ - asm volatile ("mrs %0, ctr_el0": "=r"(cache_type)); - - dlinesz = 4 << ((cache_type >> 16) & 0xf); - ilinesz = 4 << (cache_type & 0xf); - - grub_dprintf("cache", "D$ line size: %lld\n", (long long) dlinesz); - grub_dprintf("cache", "I$ line size: %lld\n", (long long) ilinesz); -} - -void -grub_arch_sync_caches (void *address, grub_size_t len) -{ - grub_uint64_t start, end, max_align; - - if (dlinesz == 0) - probe_caches(); - if (dlinesz == 0) - grub_fatal ("Unknown cache line size!"); - - max_align = dlinesz > ilinesz ? dlinesz : ilinesz; - - start = ALIGN_DOWN ((grub_uint64_t) address, max_align); - end = ALIGN_UP ((grub_uint64_t) address + len, max_align); - - grub_arch_clean_dcache_range (start, end, dlinesz); - grub_arch_invalidate_icache_range (start, end, ilinesz); -} diff --git a/thirdparty/grub-2.04/grub-core/kern/arm64/cache_flush.S b/thirdparty/grub-2.04/grub-core/kern/arm64/cache_flush.S deleted file mode 100644 index e064f7ece..000000000 --- a/thirdparty/grub-2.04/grub-core/kern/arm64/cache_flush.S +++ /dev/null @@ -1,55 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2013 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include - - .file "cache_flush.S" - .text - -/* - * Simple cache maintenance functions - */ - -// x0 - *beg (inclusive) -// x1 - *end (exclusive) -// x2 - line size -FUNCTION(grub_arch_clean_dcache_range) - // Clean data cache for range to point-of-unification -1: cmp x0, x1 - b.ge 2f - dc cvau, x0 // Clean Virtual Address to PoU - add x0, x0, x2 // Next line - b 1b -2: dsb ish - isb - ret - -// x0 - *beg (inclusive) -// x1 - *end (exclusive) -// x2 - line size -FUNCTION(grub_arch_invalidate_icache_range) - // Invalidate instruction cache for range to point-of-unification -1: cmp x0, x1 - b.ge 2f - ic ivau, x0 // Invalidate Virtual Address to PoU - add x0, x0, x2 // Next line - b 1b - // Branch predictor invalidation not needed on AArch64 -2: dsb ish - isb - ret diff --git a/thirdparty/grub-2.04/grub-core/kern/arm64/dl.c b/thirdparty/grub-2.04/grub-core/kern/arm64/dl.c deleted file mode 100644 index fb0337319..000000000 --- a/thirdparty/grub-2.04/grub-core/kern/arm64/dl.c +++ /dev/null @@ -1,193 +0,0 @@ -/* dl.c - arch-dependent part of loadable module support */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2013 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include - -#define LDR 0x58000050 -#define BR 0xd61f0200 - - -/* - * Check if EHDR is a valid ELF header. - */ -grub_err_t -grub_arch_dl_check_header (void *ehdr) -{ - Elf_Ehdr *e = ehdr; - - /* Check the magic numbers. */ - if (e->e_ident[EI_CLASS] != ELFCLASS64 - || e->e_ident[EI_DATA] != ELFDATA2LSB || e->e_machine != EM_AARCH64) - return grub_error (GRUB_ERR_BAD_OS, - N_("invalid arch-dependent ELF magic")); - - return GRUB_ERR_NONE; -} - -#pragma GCC diagnostic ignored "-Wcast-align" - -/* - * Unified function for both REL and RELA - */ -grub_err_t -grub_arch_dl_relocate_symbols (grub_dl_t mod, void *ehdr, - Elf_Shdr *s, grub_dl_segment_t seg) -{ - Elf_Rel *rel, *max; - unsigned unmatched_adr_got_page = 0; - - for (rel = (Elf_Rel *) ((char *) ehdr + s->sh_offset), - max = (Elf_Rel *) ((char *) rel + s->sh_size); - rel < max; - rel = (Elf_Rel *) ((char *) rel + s->sh_entsize)) - { - Elf_Sym *sym; - void *place; - grub_uint64_t sym_addr; - - if (rel->r_offset >= seg->size) - return grub_error (GRUB_ERR_BAD_MODULE, - "reloc offset is out of the segment"); - - sym = (Elf_Sym *) ((char *) mod->symtab - + mod->symsize * ELF_R_SYM (rel->r_info)); - - sym_addr = sym->st_value; - if (s->sh_type == SHT_RELA) - sym_addr += ((Elf_Rela *) rel)->r_addend; - - place = (void *) ((grub_addr_t) seg->addr + rel->r_offset); - - switch (ELF_R_TYPE (rel->r_info)) - { - case R_AARCH64_ABS64: - { - grub_uint64_t *abs_place = place; - - grub_dprintf ("dl", " reloc_abs64 %p => 0x%016llx\n", - place, (unsigned long long) sym_addr); - - *abs_place = (grub_uint64_t) sym_addr; - } - break; - case R_AARCH64_ADD_ABS_LO12_NC: - grub_arm64_set_abs_lo12 (place, sym_addr); - break; - case R_AARCH64_LDST64_ABS_LO12_NC: - grub_arm64_set_abs_lo12_ldst64 (place, sym_addr); - break; - case R_AARCH64_CALL26: - case R_AARCH64_JUMP26: - { - grub_int64_t offset = sym_addr - (grub_uint64_t) place; - - if (!grub_arm_64_check_xxxx26_offset (offset)) - { - struct grub_arm64_trampoline *tp = mod->trampptr; - mod->trampptr = tp + 1; - tp->ldr = LDR; - tp->br = BR; - tp->addr = sym_addr; - offset = (grub_uint8_t *) tp - (grub_uint8_t *) place; - } - - if (!grub_arm_64_check_xxxx26_offset (offset)) - return grub_error (GRUB_ERR_BAD_MODULE, - "trampoline out of range"); - - grub_arm64_set_xxxx26_offset (place, offset); - } - break; - case R_AARCH64_PREL32: - { - grub_int64_t value; - Elf64_Word *addr32 = place; - value = ((grub_int32_t) *addr32) + sym_addr - - (Elf64_Xword) (grub_addr_t) seg->addr - rel->r_offset; - if (value != (grub_int32_t) value) - return grub_error (GRUB_ERR_BAD_MODULE, "relocation out of range"); - grub_dprintf("dl", " reloc_prel32 %p => 0x%016llx\n", - place, (unsigned long long) sym_addr); - *addr32 = value; - } - break; - case R_AARCH64_ADR_GOT_PAGE: - { - grub_uint64_t *gp = mod->gotptr; - Elf_Rela *rel2; - grub_int64_t gpoffset = ((grub_uint64_t) gp & ~0xfffULL) - (((grub_uint64_t) place) & ~0xfffULL); - *gp = (grub_uint64_t) sym_addr; - mod->gotptr = gp + 1; - unmatched_adr_got_page++; - grub_dprintf("dl", " reloc_got %p => 0x%016llx (0x%016llx)\n", - place, (unsigned long long) sym_addr, (unsigned long long) gp); - if (!grub_arm64_check_hi21_signed (gpoffset)) - return grub_error (GRUB_ERR_BAD_MODULE, - "HI21 out of range"); - grub_arm64_set_hi21(place, gpoffset); - for (rel2 = (Elf_Rela *) ((char *) rel + s->sh_entsize); - rel2 < (Elf_Rela *) max; - rel2 = (Elf_Rela *) ((char *) rel2 + s->sh_entsize)) - if (ELF_R_SYM (rel2->r_info) - == ELF_R_SYM (rel->r_info) - && ((Elf_Rela *) rel)->r_addend == rel2->r_addend - && ELF_R_TYPE (rel2->r_info) == R_AARCH64_LD64_GOT_LO12_NC) - { - grub_arm64_set_abs_lo12_ldst64 ((void *) ((grub_addr_t) seg->addr + rel2->r_offset), - (grub_uint64_t)gp); - break; - } - if (rel2 >= (Elf_Rela *) max) - return grub_error (GRUB_ERR_BAD_MODULE, - "ADR_GOT_PAGE without matching LD64_GOT_LO12_NC"); - } - break; - case R_AARCH64_LD64_GOT_LO12_NC: - if (unmatched_adr_got_page == 0) - return grub_error (GRUB_ERR_BAD_MODULE, - "LD64_GOT_LO12_NC without matching ADR_GOT_PAGE"); - unmatched_adr_got_page--; - break; - case R_AARCH64_ADR_PREL_PG_HI21: - { - grub_int64_t offset = (sym_addr & ~0xfffULL) - (((grub_uint64_t) place) & ~0xfffULL); - - if (!grub_arm64_check_hi21_signed (offset)) - return grub_error (GRUB_ERR_BAD_MODULE, - "HI21 out of range"); - - grub_arm64_set_hi21 (place, offset); - } - break; - - default: - return grub_error (GRUB_ERR_NOT_IMPLEMENTED_YET, - N_("relocation 0x%x is not implemented yet"), - ELF_R_TYPE (rel->r_info)); - } - } - - return GRUB_ERR_NONE; -} diff --git a/thirdparty/grub-2.04/grub-core/kern/arm64/dl_helper.c b/thirdparty/grub-2.04/grub-core/kern/arm64/dl_helper.c deleted file mode 100644 index e00c198db..000000000 --- a/thirdparty/grub-2.04/grub-core/kern/arm64/dl_helper.c +++ /dev/null @@ -1,134 +0,0 @@ -/* dl_helper.c - relocation helper functions for modules and grub-mkimage */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2013 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include - -/* - * grub_arm64_reloc_xxxx26(): - * - * JUMP26/CALL26 relocations for B and BL instructions. - */ - -int -grub_arm_64_check_xxxx26_offset (grub_int64_t offset) -{ - const grub_ssize_t offset_low = -(1 << 27), offset_high = (1 << 27) - 1; - - if ((offset < offset_low) || (offset > offset_high)) - return 0; - return 1; -} - -void -grub_arm64_set_xxxx26_offset (grub_uint32_t *place, grub_int64_t offset) -{ - const grub_uint32_t insmask = grub_cpu_to_le32_compile_time (0xfc000000); - - grub_dprintf ("dl", " reloc_xxxx64 %p %c= 0x%llx\n", - place, offset > 0 ? '+' : '-', - offset < 0 ? (long long) -(unsigned long long) offset : offset); - - *place &= insmask; - *place |= grub_cpu_to_le32 (offset >> 2) & ~insmask; -} - -int -grub_arm64_check_hi21_signed (grub_int64_t offset) -{ - if (offset != (grub_int64_t)(grub_int32_t)offset) - return 0; - return 1; -} - -void -grub_arm64_set_hi21 (grub_uint32_t *place, grub_int64_t offset) -{ - const grub_uint32_t insmask = grub_cpu_to_le32_compile_time (0x9f00001f); - grub_uint32_t val; - - offset >>= 12; - - val = ((offset & 3) << 29) | (((offset >> 2) & 0x7ffff) << 5); - - *place &= insmask; - *place |= grub_cpu_to_le32 (val) & ~insmask; -} - -void -grub_arm64_set_abs_lo12 (grub_uint32_t *place, grub_int64_t target) -{ - const grub_uint32_t insmask = grub_cpu_to_le32_compile_time (0xffc003ff); - - *place &= insmask; - *place |= grub_cpu_to_le32 (target << 10) & ~insmask; -} - -void -grub_arm64_set_abs_lo12_ldst64 (grub_uint32_t *place, grub_int64_t target) -{ - const grub_uint32_t insmask = grub_cpu_to_le32_compile_time (0xfff803ff); - - *place &= insmask; - *place |= grub_cpu_to_le32 (target << 7) & ~insmask; -} - -#pragma GCC diagnostic ignored "-Wcast-align" - -grub_err_t -grub_arm64_dl_get_tramp_got_size (const void *ehdr, grub_size_t *tramp, - grub_size_t *got) -{ - const Elf64_Ehdr *e = ehdr; - const Elf64_Shdr *s; - unsigned i; - - *tramp = 0; - *got = 0; - - for (i = 0, s = (Elf64_Shdr *) ((char *) e + grub_le_to_cpu64 (e->e_shoff)); - i < grub_le_to_cpu16 (e->e_shnum); - i++, s = (Elf64_Shdr *) ((char *) s + grub_le_to_cpu16 (e->e_shentsize))) - if (s->sh_type == grub_cpu_to_le32_compile_time (SHT_REL) - || s->sh_type == grub_cpu_to_le32_compile_time (SHT_RELA)) - { - const Elf64_Rela *rel, *max; - - for (rel = (Elf64_Rela *) ((char *) e + grub_le_to_cpu64 (s->sh_offset)), - max = (const Elf64_Rela *) ((char *) rel + grub_le_to_cpu64 (s->sh_size)); - rel < max; rel = (const Elf64_Rela *) ((char *) rel + grub_le_to_cpu64 (s->sh_entsize))) - switch (ELF64_R_TYPE (rel->r_info)) - { - case R_AARCH64_CALL26: - case R_AARCH64_JUMP26: - *tramp += sizeof (struct grub_arm64_trampoline); - break; - case R_AARCH64_ADR_GOT_PAGE: - *got += 8; - break; - } - } - - return GRUB_ERR_NONE; -} diff --git a/thirdparty/grub-2.04/grub-core/kern/arm64/efi/init.c b/thirdparty/grub-2.04/grub-core/kern/arm64/efi/init.c deleted file mode 100644 index 6224999ec..000000000 --- a/thirdparty/grub-2.04/grub-core/kern/arm64/efi/init.c +++ /dev/null @@ -1,60 +0,0 @@ -/* init.c - initialize an arm-based EFI system */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2013 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include - -static grub_uint64_t timer_frequency_in_khz; - -static grub_uint64_t -grub_efi_get_time_ms (void) -{ - grub_uint64_t tmr; - asm volatile("mrs %0, cntvct_el0" : "=r" (tmr)); - - return tmr / timer_frequency_in_khz; -} - - -void -grub_machine_init (void) -{ - grub_uint64_t timer_frequency; - - grub_efi_init (); - - asm volatile("mrs %0, cntfrq_el0" : "=r" (timer_frequency)); - timer_frequency_in_khz = timer_frequency / 1000; - - grub_install_get_time_ms (grub_efi_get_time_ms); -} - -void -grub_machine_fini (int flags) -{ - if (!(flags & GRUB_LOADER_FLAG_NORETURN)) - return; - - grub_efi_fini (); -} diff --git a/thirdparty/grub-2.04/grub-core/kern/arm64/efi/startup.S b/thirdparty/grub-2.04/grub-core/kern/arm64/efi/startup.S deleted file mode 100644 index 666a7ee3c..000000000 --- a/thirdparty/grub-2.04/grub-core/kern/arm64/efi/startup.S +++ /dev/null @@ -1,39 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2013 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include - - .file "startup.S" - .text -FUNCTION(_start) - /* - * EFI_SYSTEM_TABLE and EFI_HANDLE are passed in x1/x0. - */ - ldr x2, efi_image_handle_val - str x0, [x2] - ldr x2, efi_system_table_val - str x1, [x2] - ldr x2, grub_main_val - br x2 -grub_main_val: - .quad EXT_C(grub_main) -efi_system_table_val: - .quad EXT_C(grub_efi_system_table) -efi_image_handle_val: - .quad EXT_C(grub_efi_image_handle) - diff --git a/thirdparty/grub-2.04/grub-core/kern/command.c b/thirdparty/grub-2.04/grub-core/kern/command.c deleted file mode 100644 index acd721879..000000000 --- a/thirdparty/grub-2.04/grub-core/kern/command.c +++ /dev/null @@ -1,87 +0,0 @@ -/* command.c - support basic command */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include - -grub_command_t grub_command_list; - -grub_command_t -grub_register_command_prio (const char *name, - grub_command_func_t func, - const char *summary, - const char *description, - int prio) -{ - grub_command_t cmd; - int inactive = 0; - - grub_command_t *p, q; - - cmd = (grub_command_t) grub_zalloc (sizeof (*cmd)); - if (! cmd) - return 0; - - cmd->name = name; - cmd->func = func; - cmd->summary = (summary) ? summary : ""; - cmd->description = description; - - cmd->flags = 0; - cmd->prio = prio; - - for (p = &grub_command_list, q = *p; q; p = &(q->next), q = q->next) - { - int r; - - r = grub_strcmp (cmd->name, q->name); - if (r < 0) - break; - if (r > 0) - continue; - - if (cmd->prio >= (q->prio & GRUB_COMMAND_PRIO_MASK)) - { - q->prio &= ~GRUB_COMMAND_FLAG_ACTIVE; - break; - } - - inactive = 1; - } - - *p = cmd; - cmd->next = q; - if (q) - q->prev = &cmd->next; - cmd->prev = p; - - if (! inactive) - cmd->prio |= GRUB_COMMAND_FLAG_ACTIVE; - - return cmd; -} - -void -grub_unregister_command (grub_command_t cmd) -{ - if ((cmd->prio & GRUB_COMMAND_FLAG_ACTIVE) && (cmd->next)) - cmd->next->prio |= GRUB_COMMAND_FLAG_ACTIVE; - grub_list_remove (GRUB_AS_LIST (cmd)); - grub_free (cmd); -} diff --git a/thirdparty/grub-2.04/grub-core/kern/compiler-rt.c b/thirdparty/grub-2.04/grub-core/kern/compiler-rt.c deleted file mode 100644 index a464200c6..000000000 --- a/thirdparty/grub-2.04/grub-core/kern/compiler-rt.c +++ /dev/null @@ -1,464 +0,0 @@ -/* compiler-rt.c - compiler helpers. */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 1999,2000,2001,2002,2003,2004,2005,2006,2007,2008,2009,2010-2014 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include - -#ifndef GRUB_EMBED_DECOMPRESSOR -void * GRUB_BUILTIN_ATTR -memcpy (void *dest, const void *src, grub_size_t n) -{ - return grub_memmove (dest, src, n); -} -void * GRUB_BUILTIN_ATTR -memmove (void *dest, const void *src, grub_size_t n) -{ - return grub_memmove (dest, src, n); -} -int GRUB_BUILTIN_ATTR -memcmp (const void *s1, const void *s2, grub_size_t n) -{ - return grub_memcmp (s1, s2, n); -} -void * GRUB_BUILTIN_ATTR -memset (void *s, int c, grub_size_t n) -{ - return grub_memset (s, c, n); -} - -#ifdef __APPLE__ - -void GRUB_BUILTIN_ATTR -__bzero (void *s, grub_size_t n) -{ - grub_memset (s, 0, n); -} - -#endif - -#if GRUB_DIVISION_IN_SOFTWARE - -grub_uint32_t -__udivsi3 (grub_uint32_t a, grub_uint32_t b) -{ - return grub_divmod64 (a, b, 0); -} - -grub_int32_t -__divsi3 (grub_int32_t a, grub_int32_t b) -{ - return grub_divmod64s (a, b, 0); -} - -grub_uint32_t -__umodsi3 (grub_uint32_t a, grub_uint32_t b) -{ - grub_uint64_t ret; - grub_divmod64 (a, b, &ret); - return ret; -} - -grub_int32_t -__modsi3 (grub_int32_t a, grub_int32_t b) -{ - grub_int64_t ret; - grub_divmod64s (a, b, &ret); - return ret; -} - -grub_uint64_t -__udivdi3 (grub_uint64_t a, grub_uint64_t b) -{ - return grub_divmod64 (a, b, 0); -} - -grub_uint64_t -__umoddi3 (grub_uint64_t a, grub_uint64_t b) -{ - grub_uint64_t ret; - grub_divmod64 (a, b, &ret); - return ret; -} - -grub_int64_t -__divdi3 (grub_int64_t a, grub_int64_t b) -{ - return grub_divmod64s (a, b, 0); -} - -grub_int64_t -__moddi3 (grub_int64_t a, grub_int64_t b) -{ - grub_int64_t ret; - grub_divmod64s (a, b, &ret); - return ret; -} - -#endif - -#endif - -#ifdef NEED_CTZDI2 - -unsigned -__ctzdi2 (grub_uint64_t x) -{ - unsigned ret = 0; - if (!x) - return 64; - if (!(x & 0xffffffff)) - { - x >>= 32; - ret |= 32; - } - if (!(x & 0xffff)) - { - x >>= 16; - ret |= 16; - } - if (!(x & 0xff)) - { - x >>= 8; - ret |= 8; - } - if (!(x & 0xf)) - { - x >>= 4; - ret |= 4; - } - if (!(x & 0x3)) - { - x >>= 2; - ret |= 2; - } - if (!(x & 0x1)) - { - x >>= 1; - ret |= 1; - } - return ret; -} -#endif - -#ifdef NEED_CTZSI2 -unsigned -__ctzsi2 (grub_uint32_t x) -{ - unsigned ret = 0; - if (!x) - return 32; - - if (!(x & 0xffff)) - { - x >>= 16; - ret |= 16; - } - if (!(x & 0xff)) - { - x >>= 8; - ret |= 8; - } - if (!(x & 0xf)) - { - x >>= 4; - ret |= 4; - } - if (!(x & 0x3)) - { - x >>= 2; - ret |= 2; - } - if (!(x & 0x1)) - { - x >>= 1; - ret |= 1; - } - return ret; -} - -#endif - - -#if defined (__clang__) && !defined(GRUB_EMBED_DECOMPRESSOR) -/* clang emits references to abort(). */ -void __attribute__ ((noreturn)) -abort (void) -{ - grub_fatal ("compiler abort"); -} -#endif - -#if (defined (__MINGW32__) || defined (__CYGWIN__)) -void __register_frame_info (void) -{ -} - -void __deregister_frame_info (void) -{ -} - -void ___chkstk_ms (void) -{ -} - -void __chkstk_ms (void) -{ -} -#endif - -union component64 -{ - grub_uint64_t full; - struct - { -#ifdef GRUB_CPU_WORDS_BIGENDIAN - grub_uint32_t high; - grub_uint32_t low; -#else - grub_uint32_t low; - grub_uint32_t high; -#endif - }; -}; - -#if defined (__powerpc__) || defined (__arm__) || defined(__mips__) || \ - (defined(__riscv) && (__riscv_xlen == 32)) - -/* Based on libgcc2.c from gcc suite. */ -grub_uint64_t -__lshrdi3 (grub_uint64_t u, int b) -{ - if (b == 0) - return u; - - const union component64 uu = {.full = u}; - const int bm = 32 - b; - union component64 w; - - if (bm <= 0) - { - w.high = 0; - w.low = (grub_uint32_t) uu.high >> -bm; - } - else - { - const grub_uint32_t carries = (grub_uint32_t) uu.high << bm; - - w.high = (grub_uint32_t) uu.high >> b; - w.low = ((grub_uint32_t) uu.low >> b) | carries; - } - - return w.full; -} - -/* Based on libgcc2.c from gcc suite. */ -grub_uint64_t -__ashrdi3 (grub_uint64_t u, int b) -{ - if (b == 0) - return u; - - const union component64 uu = {.full = u}; - const int bm = 32 - b; - union component64 w; - - if (bm <= 0) - { - /* w.high = 1..1 or 0..0 */ - w.high = ((grub_int32_t) uu.high) >> (32 - 1); - w.low = ((grub_int32_t) uu.high) >> -bm; - } - else - { - const grub_uint32_t carries = ((grub_uint32_t) uu.high) << bm; - - w.high = ((grub_int32_t) uu.high) >> b; - w.low = ((grub_uint32_t) uu.low >> b) | carries; - } - - return w.full; -} - -/* Based on libgcc2.c from gcc suite. */ -grub_uint64_t -__ashldi3 (grub_uint64_t u, int b) -{ - if (b == 0) - return u; - - const union component64 uu = {.full = u}; - const int bm = 32 - b; - union component64 w; - - if (bm <= 0) - { - w.low = 0; - w.high = (grub_uint32_t) uu.low << -bm; - } - else - { - const grub_uint32_t carries = (grub_uint32_t) uu.low >> bm; - - w.low = (grub_uint32_t) uu.low << b; - w.high = ((grub_uint32_t) uu.high << b) | carries; - } - - return w.full; -} - -/* Based on libgcc2.c from gcc suite. */ -int -__ucmpdi2 (grub_uint64_t a, grub_uint64_t b) -{ - union component64 ac, bc; - ac.full = a; - bc.full = b; - - if (ac.high < bc.high) - return 0; - else if (ac.high > bc.high) - return 2; - - if (ac.low < bc.low) - return 0; - else if (ac.low > bc.low) - return 2; - return 1; -} - -#endif - -#if defined (__powerpc__) || defined(__mips__) || defined(__sparc__) || \ - defined(__arm__) || defined(__riscv) - -/* Based on libgcc2.c from gcc suite. */ -grub_uint32_t -__bswapsi2 (grub_uint32_t u) -{ - return ((((u) & 0xff000000) >> 24) - | (((u) & 0x00ff0000) >> 8) - | (((u) & 0x0000ff00) << 8) - | (((u) & 0x000000ff) << 24)); -} - -/* Based on libgcc2.c from gcc suite. */ -grub_uint64_t -__bswapdi2 (grub_uint64_t u) -{ - return ((((u) & 0xff00000000000000ull) >> 56) - | (((u) & 0x00ff000000000000ull) >> 40) - | (((u) & 0x0000ff0000000000ull) >> 24) - | (((u) & 0x000000ff00000000ull) >> 8) - | (((u) & 0x00000000ff000000ull) << 8) - | (((u) & 0x0000000000ff0000ull) << 24) - | (((u) & 0x000000000000ff00ull) << 40) - | (((u) & 0x00000000000000ffull) << 56)); -} - - -#endif - -#ifdef __arm__ -grub_uint32_t -__aeabi_uidiv (grub_uint32_t a, grub_uint32_t b) - __attribute__ ((alias ("__udivsi3"))); -grub_int32_t -__aeabi_idiv (grub_int32_t a, grub_int32_t b) - __attribute__ ((alias ("__divsi3"))); -void *__aeabi_memcpy (void *dest, const void *src, grub_size_t n) - __attribute__ ((alias ("grub_memcpy"))); -void *__aeabi_memcpy4 (void *dest, const void *src, grub_size_t n) - __attribute__ ((alias ("grub_memcpy"))); -void *__aeabi_memcpy8 (void *dest, const void *src, grub_size_t n) - __attribute__ ((alias ("grub_memcpy"))); -void *__aeabi_memset (void *s, int c, grub_size_t n) - __attribute__ ((alias ("memset"))); - -void -__aeabi_memclr (void *s, grub_size_t n) -{ - grub_memset (s, 0, n); -} - -void __aeabi_memclr4 (void *s, grub_size_t n) - __attribute__ ((alias ("__aeabi_memclr"))); -void __aeabi_memclr8 (void *s, grub_size_t n) - __attribute__ ((alias ("__aeabi_memclr"))); - -int -__aeabi_ulcmp (grub_uint64_t a, grub_uint64_t b) -{ - return __ucmpdi2 (a, b) - 1; -} - -grub_uint64_t -__aeabi_lasr (grub_uint64_t u, int b) - __attribute__ ((alias ("__ashrdi3"))); -grub_uint64_t -__aeabi_llsr (grub_uint64_t u, int b) - __attribute__ ((alias ("__lshrdi3"))); - -grub_uint64_t -__aeabi_llsl (grub_uint64_t u, int b) - __attribute__ ((alias ("__ashldi3"))); - -#endif - -#if defined(__mips__) || defined(__riscv) || defined(__sparc__) -/* Based on libgcc from gcc suite. */ -int -__clzsi2 (grub_uint32_t val) -{ - int i = 32; - int j = 16; - int temp; - - for (; j; j >>= 1) - { - if ((temp = val) >> j) - { - if (j == 1) - { - return (i - 2); - } - else - { - i -= j; - val = temp; - } - } - } - return (i - val); -} -#endif - -#if defined(__riscv) || defined(__sparc__) -int -__clzdi2 (grub_uint64_t val) -{ - if (val >> 32) - { - return __clzsi2 (val >> 32); - } - else - { - return __clzsi2 (val) + 32; - } -} -#endif diff --git a/thirdparty/grub-2.04/grub-core/kern/coreboot/cbtable.c b/thirdparty/grub-2.04/grub-core/kern/coreboot/cbtable.c deleted file mode 100644 index aec63dbd1..000000000 --- a/thirdparty/grub-2.04/grub-core/kern/coreboot/cbtable.c +++ /dev/null @@ -1,72 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2007,2008,2013 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include - -#pragma GCC diagnostic ignored "-Wcast-align" - -/* Helper for grub_linuxbios_table_iterate. */ -int -grub_linuxbios_check_signature (grub_linuxbios_table_header_t tbl_header) -{ - if (! grub_memcmp (tbl_header->signature, "LBIO", 4)) - return 1; - - return 0; -} - -grub_err_t -grub_linuxbios_table_iterate (int (*hook) (grub_linuxbios_table_item_t, - void *), - void *hook_data) -{ - grub_linuxbios_table_header_t table_header = grub_linuxbios_get_tables (); - grub_linuxbios_table_item_t table_item; - - if (!table_header) - return 0; - -signature_found: - - table_item = - (grub_linuxbios_table_item_t) ((char *) table_header + - table_header->header_size); - for (; table_item < (grub_linuxbios_table_item_t) ((char *) table_header - + table_header->header_size - + table_header->table_size); - table_item = (grub_linuxbios_table_item_t) ((char *) table_item + table_item->size)) - { - if (table_item->tag == GRUB_LINUXBIOS_MEMBER_LINK - && grub_linuxbios_check_signature ((grub_linuxbios_table_header_t) (grub_addr_t) - *(grub_uint64_t *) (table_item + 1))) - { - table_header = (grub_linuxbios_table_header_t) (grub_addr_t) - *(grub_uint64_t *) (table_item + 1); - goto signature_found; - } - if (hook (table_item, hook_data)) - return 1; - } - - return 0; -} diff --git a/thirdparty/grub-2.04/grub-core/kern/coreboot/mmap.c b/thirdparty/grub-2.04/grub-core/kern/coreboot/mmap.c deleted file mode 100644 index caf8f7cef..000000000 --- a/thirdparty/grub-2.04/grub-core/kern/coreboot/mmap.c +++ /dev/null @@ -1,100 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2007,2008,2013 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include - -/* Context for grub_machine_mmap_iterate. */ -struct grub_machine_mmap_iterate_ctx -{ - grub_memory_hook_t hook; - void *hook_data; -}; - -#define GRUB_MACHINE_MEMORY_BADRAM 5 - -/* Helper for grub_machine_mmap_iterate. */ -static int -iterate_linuxbios_table (grub_linuxbios_table_item_t table_item, void *data) -{ - struct grub_machine_mmap_iterate_ctx *ctx = data; - mem_region_t mem_region; - - if (table_item->tag != GRUB_LINUXBIOS_MEMBER_MEMORY) - return 0; - - mem_region = - (mem_region_t) ((long) table_item + - sizeof (struct grub_linuxbios_table_item)); - for (; (long) mem_region < (long) table_item + (long) table_item->size; - mem_region++) - { - grub_uint64_t start = mem_region->addr; - grub_uint64_t end = mem_region->addr + mem_region->size; -#ifdef __i386__ - /* Mark region 0xa0000 - 0x100000 as reserved. */ - if (start < 0x100000 && end >= 0xa0000 - && mem_region->type == GRUB_MACHINE_MEMORY_AVAILABLE) - { - if (start < 0xa0000 - && ctx->hook (start, 0xa0000 - start, - /* Multiboot mmaps match with the coreboot mmap - definition. Therefore, we can just pass type - through. */ - mem_region->type, - ctx->hook_data)) - return 1; - if (start < 0xa0000) - start = 0xa0000; - if (start >= end) - continue; - - if (ctx->hook (start, (end > 0x100000 ? 0x100000 : end) - start, - GRUB_MEMORY_RESERVED, - ctx->hook_data)) - return 1; - start = 0x100000; - - if (end <= start) - continue; - } -#endif - if (ctx->hook (start, end - start, - /* Multiboot mmaps match with the coreboot mmap - definition. Therefore, we can just pass type - through. */ - mem_region->type, - ctx->hook_data)) - return 1; - } - - return 0; -} - -grub_err_t -grub_machine_mmap_iterate (grub_memory_hook_t hook, void *hook_data) -{ - struct grub_machine_mmap_iterate_ctx ctx = { hook, hook_data }; - - grub_linuxbios_table_iterate (iterate_linuxbios_table, &ctx); - - return 0; -} diff --git a/thirdparty/grub-2.04/grub-core/kern/corecmd.c b/thirdparty/grub-2.04/grub-core/kern/corecmd.c deleted file mode 100644 index fc54f43f2..000000000 --- a/thirdparty/grub-2.04/grub-core/kern/corecmd.c +++ /dev/null @@ -1,189 +0,0 @@ -/* corecmd.c - critical commands which are registered in kernel */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -/* set ENVVAR=VALUE */ -static grub_err_t -grub_core_cmd_set (struct grub_command *cmd __attribute__ ((unused)), - int argc, char *argv[]) -{ - char *var; - char *val; - - if (argc < 1) - { - struct grub_env_var *env; - FOR_SORTED_ENV (env) - grub_printf ("%s=%s\n", env->name, grub_env_get (env->name)); - return 0; - } - - var = argv[0]; - val = grub_strchr (var, '='); - if (! val) - return grub_error (GRUB_ERR_BAD_ARGUMENT, "not an assignment"); - - val[0] = 0; - grub_env_set (var, val + 1); - val[0] = '='; - - return 0; -} - -static grub_err_t -grub_core_cmd_unset (struct grub_command *cmd __attribute__ ((unused)), - int argc, char *argv[]) -{ - if (argc < 1) - return grub_error (GRUB_ERR_BAD_ARGUMENT, - N_("one argument expected")); - - grub_env_unset (argv[0]); - return 0; -} - -/* insmod MODULE */ -static grub_err_t -grub_core_cmd_insmod (struct grub_command *cmd __attribute__ ((unused)), - int argc, char *argv[]) -{ - grub_dl_t mod; - - if (argc == 0) - return grub_error (GRUB_ERR_BAD_ARGUMENT, N_("one argument expected")); - - if (argv[0][0] == '/' || argv[0][0] == '(' || argv[0][0] == '+') - mod = grub_dl_load_file (argv[0]); - else - mod = grub_dl_load (argv[0]); - - if (mod) - grub_dl_ref (mod); - - return 0; -} - -static int -grub_mini_print_devices (const char *name, void *data __attribute__ ((unused))) -{ - grub_printf ("(%s) ", name); - - return 0; -} - -static int -grub_mini_print_files (const char *filename, - const struct grub_dirhook_info *info, - void *data __attribute__ ((unused))) -{ - grub_printf ("%s%s ", filename, info->dir ? "/" : ""); - - return 0; -} - -/* ls [ARG] */ -static grub_err_t -grub_core_cmd_ls (struct grub_command *cmd __attribute__ ((unused)), - int argc, char *argv[]) -{ - if (argc < 1) - { - grub_device_iterate (grub_mini_print_devices, NULL); - grub_xputs ("\n"); - grub_refresh (); - } - else - { - char *device_name; - grub_device_t dev = 0; - grub_fs_t fs; - char *path; - - device_name = grub_file_get_device_name (argv[0]); - if (grub_errno) - goto fail; - dev = grub_device_open (device_name); - if (! dev) - goto fail; - - fs = grub_fs_probe (dev); - path = grub_strchr (argv[0], ')'); - if (! path) - path = argv[0]; - else - path++; - - if (! *path && ! device_name) - { - grub_error (GRUB_ERR_BAD_ARGUMENT, "invalid argument"); - goto fail; - } - - if (! *path) - { - if (grub_errno == GRUB_ERR_UNKNOWN_FS) - grub_errno = GRUB_ERR_NONE; - - grub_printf ("(%s): Filesystem is %s.\n", - device_name, fs ? fs->name : "unknown"); - } - else if (fs) - { - (fs->fs_dir) (dev, path, grub_mini_print_files, NULL); - grub_xputs ("\n"); - grub_refresh (); - } - - fail: - if (dev) - grub_device_close (dev); - - grub_free (device_name); - } - - return grub_errno; -} - -void -grub_register_core_commands (void) -{ - grub_command_t cmd; - cmd = grub_register_command ("set", grub_core_cmd_set, - N_("[ENVVAR=VALUE]"), - N_("Set an environment variable.")); - if (cmd) - cmd->flags |= GRUB_COMMAND_FLAG_EXTRACTOR; - grub_register_command ("unset", grub_core_cmd_unset, - N_("ENVVAR"), - N_("Remove an environment variable.")); - grub_register_command ("ls", grub_core_cmd_ls, - N_("[ARG]"), N_("List devices or files.")); - grub_register_command ("insmod", grub_core_cmd_insmod, - N_("MODULE"), N_("Insert a module.")); -} diff --git a/thirdparty/grub-2.04/grub-core/kern/device.c b/thirdparty/grub-2.04/grub-core/kern/device.c deleted file mode 100644 index 73b8ecc0c..000000000 --- a/thirdparty/grub-2.04/grub-core/kern/device.c +++ /dev/null @@ -1,191 +0,0 @@ -/* device.c - device manager */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2002,2005,2007,2008,2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include -#include -#include - -grub_net_t (*grub_net_open) (const char *name) = NULL; - -grub_device_t -grub_device_open (const char *name) -{ - grub_device_t dev = 0; - - if (! name) - { - name = grub_env_get ("root"); - if (name == NULL || *name == '\0') - { - grub_error (GRUB_ERR_BAD_DEVICE, N_("variable `%s' isn't set"), "root"); - goto fail; - } - } - - dev = grub_malloc (sizeof (*dev)); - if (! dev) - goto fail; - - dev->net = NULL; - /* Try to open a disk. */ - dev->disk = grub_disk_open (name); - if (dev->disk) - return dev; - if (grub_net_open && grub_errno == GRUB_ERR_UNKNOWN_DEVICE) - { - grub_errno = GRUB_ERR_NONE; - dev->net = grub_net_open (name); - } - - if (dev->net) - return dev; - - fail: - grub_free (dev); - - return 0; -} - -grub_err_t -grub_device_close (grub_device_t device) -{ - if (device->disk) - grub_disk_close (device->disk); - - if (device->net) - { - grub_free (device->net->server); - grub_free (device->net); - } - - grub_free (device); - - return grub_errno; -} - -struct part_ent -{ - struct part_ent *next; - char *name; -}; - -/* Context for grub_device_iterate. */ -struct grub_device_iterate_ctx -{ - grub_device_iterate_hook_t hook; - void *hook_data; - struct part_ent *ents; -}; - -/* Helper for grub_device_iterate. */ -static int -iterate_partition (grub_disk_t disk, const grub_partition_t partition, - void *data) -{ - struct grub_device_iterate_ctx *ctx = data; - struct part_ent *p; - char *part_name; - - p = grub_malloc (sizeof (*p)); - if (!p) - { - return 1; - } - - part_name = grub_partition_get_name (partition); - if (!part_name) - { - grub_free (p); - return 1; - } - p->name = grub_xasprintf ("%s,%s", disk->name, part_name); - grub_free (part_name); - if (!p->name) - { - grub_free (p); - return 1; - } - - p->next = ctx->ents; - ctx->ents = p; - - return 0; -} - -/* Helper for grub_device_iterate. */ -static int -iterate_disk (const char *disk_name, void *data) -{ - struct grub_device_iterate_ctx *ctx = data; - grub_device_t dev; - - if (ctx->hook (disk_name, ctx->hook_data)) - return 1; - - dev = grub_device_open (disk_name); - if (! dev) - { - grub_errno = GRUB_ERR_NONE; - return 0; - } - - if (dev->disk) - { - struct part_ent *p; - int ret = 0; - - ctx->ents = NULL; - (void) grub_partition_iterate (dev->disk, iterate_partition, ctx); - grub_device_close (dev); - - grub_errno = GRUB_ERR_NONE; - - p = ctx->ents; - while (p != NULL) - { - struct part_ent *next = p->next; - - if (!ret) - ret = ctx->hook (p->name, ctx->hook_data); - grub_free (p->name); - grub_free (p); - p = next; - } - - return ret; - } - - grub_device_close (dev); - return 0; -} - -int -grub_device_iterate (grub_device_iterate_hook_t hook, void *hook_data) -{ - struct grub_device_iterate_ctx ctx = { hook, hook_data, NULL }; - - /* Only disk devices are supported at the moment. */ - return grub_disk_dev_iterate (iterate_disk, &ctx); -} diff --git a/thirdparty/grub-2.04/grub-core/kern/disk.c b/thirdparty/grub-2.04/grub-core/kern/disk.c deleted file mode 100644 index ffb09c8ee..000000000 --- a/thirdparty/grub-2.04/grub-core/kern/disk.c +++ /dev/null @@ -1,544 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2002,2003,2004,2006,2007,2008,2009,2010 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#define GRUB_CACHE_TIMEOUT 2 - -/* The last time the disk was used. */ -static grub_uint64_t grub_last_time = 0; - -struct grub_disk_cache grub_disk_cache_table[GRUB_DISK_CACHE_NUM]; - -void (*grub_disk_firmware_fini) (void); -int grub_disk_firmware_is_tainted; - -#if DISK_CACHE_STATS -static unsigned long grub_disk_cache_hits; -static unsigned long grub_disk_cache_misses; - -void -grub_disk_cache_get_performance (unsigned long *hits, unsigned long *misses) -{ - *hits = grub_disk_cache_hits; - *misses = grub_disk_cache_misses; -} -#endif - -grub_err_t (*grub_disk_write_weak) (grub_disk_t disk, - grub_disk_addr_t sector, - grub_off_t offset, - grub_size_t size, - const void *buf); -#include "disk_common.c" - -void -grub_disk_cache_invalidate_all (void) -{ - unsigned i; - - for (i = 0; i < GRUB_DISK_CACHE_NUM; i++) - { - struct grub_disk_cache *cache = grub_disk_cache_table + i; - - if (cache->data && ! cache->lock) - { - grub_free (cache->data); - cache->data = 0; - } - } -} - -static char * -grub_disk_cache_fetch (unsigned long dev_id, unsigned long disk_id, - grub_disk_addr_t sector) -{ - struct grub_disk_cache *cache; - unsigned cache_index; - - cache_index = grub_disk_cache_get_index (dev_id, disk_id, sector); - cache = grub_disk_cache_table + cache_index; - - if (cache->dev_id == dev_id && cache->disk_id == disk_id - && cache->sector == sector) - { - cache->lock = 1; -#if DISK_CACHE_STATS - grub_disk_cache_hits++; -#endif - return cache->data; - } - -#if DISK_CACHE_STATS - grub_disk_cache_misses++; -#endif - - return 0; -} - -static void -grub_disk_cache_unlock (unsigned long dev_id, unsigned long disk_id, - grub_disk_addr_t sector) -{ - struct grub_disk_cache *cache; - unsigned cache_index; - - cache_index = grub_disk_cache_get_index (dev_id, disk_id, sector); - cache = grub_disk_cache_table + cache_index; - - if (cache->dev_id == dev_id && cache->disk_id == disk_id - && cache->sector == sector) - cache->lock = 0; -} - -static grub_err_t -grub_disk_cache_store (unsigned long dev_id, unsigned long disk_id, - grub_disk_addr_t sector, const char *data) -{ - unsigned cache_index; - struct grub_disk_cache *cache; - - cache_index = grub_disk_cache_get_index (dev_id, disk_id, sector); - cache = grub_disk_cache_table + cache_index; - - cache->lock = 1; - grub_free (cache->data); - cache->data = 0; - cache->lock = 0; - - cache->data = grub_malloc (GRUB_DISK_SECTOR_SIZE << GRUB_DISK_CACHE_BITS); - if (! cache->data) - return grub_errno; - - grub_memcpy (cache->data, data, - GRUB_DISK_SECTOR_SIZE << GRUB_DISK_CACHE_BITS); - cache->dev_id = dev_id; - cache->disk_id = disk_id; - cache->sector = sector; - - return GRUB_ERR_NONE; -} - - - -grub_disk_dev_t grub_disk_dev_list; - -void -grub_disk_dev_register (grub_disk_dev_t dev) -{ - dev->next = grub_disk_dev_list; - grub_disk_dev_list = dev; -} - -void -grub_disk_dev_unregister (grub_disk_dev_t dev) -{ - grub_disk_dev_t *p, q; - - for (p = &grub_disk_dev_list, q = *p; q; p = &(q->next), q = q->next) - if (q == dev) - { - *p = q->next; - break; - } -} - -/* Return the location of the first ',', if any, which is not - escaped by a '\'. */ -static const char * -find_part_sep (const char *name) -{ - const char *p = name; - char c; - - while ((c = *p++) != '\0') - { - if (c == '\\' && *p == ',') - p++; - else if (c == ',') - return p - 1; - } - return NULL; -} - -grub_disk_t -grub_disk_open (const char *name) -{ - const char *p; - grub_disk_t disk; - grub_disk_dev_t dev; - char *raw = (char *) name; - grub_uint64_t current_time; - - grub_dprintf ("disk", "Opening `%s'...\n", name); - - disk = (grub_disk_t) grub_zalloc (sizeof (*disk)); - if (! disk) - return 0; - disk->log_sector_size = GRUB_DISK_SECTOR_BITS; - /* Default 1MiB of maximum agglomerate. */ - disk->max_agglomerate = 1048576 >> (GRUB_DISK_SECTOR_BITS - + GRUB_DISK_CACHE_BITS); - - p = find_part_sep (name); - if (p) - { - grub_size_t len = p - name; - - raw = grub_malloc (len + 1); - if (! raw) - goto fail; - - grub_memcpy (raw, name, len); - raw[len] = '\0'; - disk->name = grub_strdup (raw); - } - else - disk->name = grub_strdup (name); - if (! disk->name) - goto fail; - - for (dev = grub_disk_dev_list; dev; dev = dev->next) - { - if ((dev->disk_open) (raw, disk) == GRUB_ERR_NONE) - break; - else if (grub_errno == GRUB_ERR_UNKNOWN_DEVICE) - grub_errno = GRUB_ERR_NONE; - else - goto fail; - } - - if (! dev) - { - grub_error (GRUB_ERR_UNKNOWN_DEVICE, N_("disk `%s' not found"), - name); - goto fail; - } - if (disk->log_sector_size > GRUB_DISK_CACHE_BITS + GRUB_DISK_SECTOR_BITS - || disk->log_sector_size < GRUB_DISK_SECTOR_BITS) - { - grub_error (GRUB_ERR_NOT_IMPLEMENTED_YET, - "sector sizes of %d bytes aren't supported yet", - (1 << disk->log_sector_size)); - goto fail; - } - - disk->dev = dev; - - if (p) - { - disk->partition = grub_partition_probe (disk, p + 1); - if (! disk->partition) - { - /* TRANSLATORS: It means that the specified partition e.g. - hd0,msdos1=/dev/sda1 doesn't exist. */ - grub_error (GRUB_ERR_UNKNOWN_DEVICE, N_("no such partition")); - goto fail; - } - } - - /* The cache will be invalidated about 2 seconds after a device was - closed. */ - current_time = grub_get_time_ms (); - - if (current_time > (grub_last_time - + GRUB_CACHE_TIMEOUT * 1000)) - grub_disk_cache_invalidate_all (); - - grub_last_time = current_time; - - fail: - - if (raw && raw != name) - grub_free (raw); - - if (grub_errno != GRUB_ERR_NONE) - { - grub_error_push (); - grub_dprintf ("disk", "Opening `%s' failed.\n", name); - grub_error_pop (); - - grub_disk_close (disk); - return 0; - } - - return disk; -} - -void -grub_disk_close (grub_disk_t disk) -{ - grub_partition_t part; - grub_dprintf ("disk", "Closing `%s'.\n", disk->name); - - if (disk->dev && disk->dev->disk_close) - (disk->dev->disk_close) (disk); - - /* Reset the timer. */ - grub_last_time = grub_get_time_ms (); - - while (disk->partition) - { - part = disk->partition->parent; - grub_free (disk->partition); - disk->partition = part; - } - grub_free ((void *) disk->name); - grub_free (disk); -} - -/* Small read (less than cache size and not pass across cache unit boundaries). - sector is already adjusted and is divisible by cache unit size. - */ -static grub_err_t -grub_disk_read_small_real (grub_disk_t disk, grub_disk_addr_t sector, - grub_off_t offset, grub_size_t size, void *buf) -{ - char *data; - char *tmp_buf; - - /* Fetch the cache. */ - data = grub_disk_cache_fetch (disk->dev->id, disk->id, sector); - if (data) - { - /* Just copy it! */ - grub_memcpy (buf, data + offset, size); - grub_disk_cache_unlock (disk->dev->id, disk->id, sector); - return GRUB_ERR_NONE; - } - - /* Allocate a temporary buffer. */ - tmp_buf = grub_malloc (GRUB_DISK_SECTOR_SIZE << GRUB_DISK_CACHE_BITS); - if (! tmp_buf) - return grub_errno; - - /* Otherwise read data from the disk actually. */ - if (disk->total_sectors == GRUB_DISK_SIZE_UNKNOWN - || sector + GRUB_DISK_CACHE_SIZE - < (disk->total_sectors << (disk->log_sector_size - GRUB_DISK_SECTOR_BITS))) - { - grub_err_t err; - err = (disk->dev->disk_read) (disk, transform_sector (disk, sector), - 1U << (GRUB_DISK_CACHE_BITS - + GRUB_DISK_SECTOR_BITS - - disk->log_sector_size), tmp_buf); - if (!err) - { - /* Copy it and store it in the disk cache. */ - grub_memcpy (buf, tmp_buf + offset, size); - grub_disk_cache_store (disk->dev->id, disk->id, - sector, tmp_buf); - grub_free (tmp_buf); - return GRUB_ERR_NONE; - } - } - - grub_free (tmp_buf); - grub_errno = GRUB_ERR_NONE; - - { - /* Uggh... Failed. Instead, just read necessary data. */ - unsigned num; - grub_disk_addr_t aligned_sector; - - sector += (offset >> GRUB_DISK_SECTOR_BITS); - offset &= ((1 << GRUB_DISK_SECTOR_BITS) - 1); - aligned_sector = (sector & ~((1ULL << (disk->log_sector_size - - GRUB_DISK_SECTOR_BITS)) - - 1)); - offset += ((sector - aligned_sector) << GRUB_DISK_SECTOR_BITS); - num = ((size + offset + (1ULL << (disk->log_sector_size)) - - 1) >> (disk->log_sector_size)); - - tmp_buf = grub_malloc (num << disk->log_sector_size); - if (!tmp_buf) - return grub_errno; - - if ((disk->dev->disk_read) (disk, transform_sector (disk, aligned_sector), - num, tmp_buf)) - { - grub_error_push (); - grub_dprintf ("disk", "%s read failed\n", disk->name); - grub_error_pop (); - grub_free (tmp_buf); - return grub_errno; - } - grub_memcpy (buf, tmp_buf + offset, size); - grub_free (tmp_buf); - return GRUB_ERR_NONE; - } -} - -static grub_err_t -grub_disk_read_small (grub_disk_t disk, grub_disk_addr_t sector, - grub_off_t offset, grub_size_t size, void *buf) -{ - grub_err_t err; - - err = grub_disk_read_small_real (disk, sector, offset, size, buf); - if (err) - return err; - if (disk->read_hook) - (disk->read_hook) (sector + (offset >> GRUB_DISK_SECTOR_BITS), - offset & (GRUB_DISK_SECTOR_SIZE - 1), - size, disk->read_hook_data); - return GRUB_ERR_NONE; -} - -/* Read data from the disk. */ -grub_err_t -grub_disk_read (grub_disk_t disk, grub_disk_addr_t sector, - grub_off_t offset, grub_size_t size, void *buf) -{ - /* First of all, check if the region is within the disk. */ - if (grub_disk_adjust_range (disk, §or, &offset, size) != GRUB_ERR_NONE) - { - grub_error_push (); - grub_dprintf ("disk", "Read out of range: sector 0x%llx (%s).\n", - (unsigned long long) sector, grub_errmsg); - grub_error_pop (); - return grub_errno; - } - - /* First read until first cache boundary. */ - if (offset || (sector & (GRUB_DISK_CACHE_SIZE - 1))) - { - grub_disk_addr_t start_sector; - grub_size_t pos; - grub_err_t err; - grub_size_t len; - - start_sector = sector & ~((grub_disk_addr_t) GRUB_DISK_CACHE_SIZE - 1); - pos = (sector - start_sector) << GRUB_DISK_SECTOR_BITS; - len = ((GRUB_DISK_SECTOR_SIZE << GRUB_DISK_CACHE_BITS) - - pos - offset); - if (len > size) - len = size; - err = grub_disk_read_small (disk, start_sector, - offset + pos, len, buf); - if (err) - return err; - buf = (char *) buf + len; - size -= len; - offset += len; - sector += (offset >> GRUB_DISK_SECTOR_BITS); - offset &= ((1 << GRUB_DISK_SECTOR_BITS) - 1); - } - - /* Until SIZE is zero... */ - while (size >= (GRUB_DISK_CACHE_SIZE << GRUB_DISK_SECTOR_BITS)) - { - char *data = NULL; - grub_disk_addr_t agglomerate; - grub_err_t err; - - /* agglomerate read until we find a first cached entry. */ - for (agglomerate = 0; agglomerate - < (size >> (GRUB_DISK_SECTOR_BITS + GRUB_DISK_CACHE_BITS)) - && agglomerate < disk->max_agglomerate; - agglomerate++) - { - data = grub_disk_cache_fetch (disk->dev->id, disk->id, - sector + (agglomerate - << GRUB_DISK_CACHE_BITS)); - if (data) - break; - } - - if (data) - { - grub_memcpy ((char *) buf - + (agglomerate << (GRUB_DISK_CACHE_BITS - + GRUB_DISK_SECTOR_BITS)), - data, GRUB_DISK_CACHE_SIZE << GRUB_DISK_SECTOR_BITS); - grub_disk_cache_unlock (disk->dev->id, disk->id, - sector + (agglomerate - << GRUB_DISK_CACHE_BITS)); - } - - if (agglomerate) - { - grub_disk_addr_t i; - - err = (disk->dev->disk_read) (disk, transform_sector (disk, sector), - agglomerate << (GRUB_DISK_CACHE_BITS - + GRUB_DISK_SECTOR_BITS - - disk->log_sector_size), - buf); - if (err) - return err; - - for (i = 0; i < agglomerate; i ++) - grub_disk_cache_store (disk->dev->id, disk->id, - sector + (i << GRUB_DISK_CACHE_BITS), - (char *) buf - + (i << (GRUB_DISK_CACHE_BITS - + GRUB_DISK_SECTOR_BITS))); - - - if (disk->read_hook) - (disk->read_hook) (sector, 0, agglomerate << (GRUB_DISK_CACHE_BITS + GRUB_DISK_SECTOR_BITS), - disk->read_hook_data); - - sector += agglomerate << GRUB_DISK_CACHE_BITS; - size -= agglomerate << (GRUB_DISK_CACHE_BITS + GRUB_DISK_SECTOR_BITS); - buf = (char *) buf - + (agglomerate << (GRUB_DISK_CACHE_BITS + GRUB_DISK_SECTOR_BITS)); - } - - if (data) - { - if (disk->read_hook) - (disk->read_hook) (sector, 0, (GRUB_DISK_CACHE_SIZE << GRUB_DISK_SECTOR_BITS), - disk->read_hook_data); - sector += GRUB_DISK_CACHE_SIZE; - buf = (char *) buf + (GRUB_DISK_CACHE_SIZE << GRUB_DISK_SECTOR_BITS); - size -= (GRUB_DISK_CACHE_SIZE << GRUB_DISK_SECTOR_BITS); - } - } - - /* And now read the last part. */ - if (size) - { - grub_err_t err; - err = grub_disk_read_small (disk, sector, 0, size, buf); - if (err) - return err; - } - - return grub_errno; -} - -grub_uint64_t -grub_disk_get_size (grub_disk_t disk) -{ - if (disk->partition) - return grub_partition_get_len (disk->partition); - else if (disk->total_sectors != GRUB_DISK_SIZE_UNKNOWN) - return disk->total_sectors << (disk->log_sector_size - GRUB_DISK_SECTOR_BITS); - else - return GRUB_DISK_SIZE_UNKNOWN; -} diff --git a/thirdparty/grub-2.04/grub-core/kern/disk_common.c b/thirdparty/grub-2.04/grub-core/kern/disk_common.c deleted file mode 100644 index 2ca12b5f8..000000000 --- a/thirdparty/grub-2.04/grub-core/kern/disk_common.c +++ /dev/null @@ -1,65 +0,0 @@ -/* This function performs three tasks: - - Make sectors disk relative from partition relative. - - Normalize offset to be less than the sector size. - - Verify that the range is inside the partition. */ -static grub_err_t -grub_disk_adjust_range (grub_disk_t disk, grub_disk_addr_t *sector, - grub_off_t *offset, grub_size_t size) -{ - grub_partition_t part; - grub_disk_addr_t total_sectors; - - *sector += *offset >> GRUB_DISK_SECTOR_BITS; - *offset &= GRUB_DISK_SECTOR_SIZE - 1; - - for (part = disk->partition; part; part = part->parent) - { - grub_disk_addr_t start; - grub_uint64_t len; - - start = part->start; - len = part->len; - - if (*sector >= len - || len - *sector < ((*offset + size + GRUB_DISK_SECTOR_SIZE - 1) - >> GRUB_DISK_SECTOR_BITS)) - return grub_error (GRUB_ERR_OUT_OF_RANGE, - N_("attempt to read or write outside of partition")); - - *sector += start; - } - - /* Transform total_sectors to number of 512B blocks. */ - total_sectors = disk->total_sectors << (disk->log_sector_size - GRUB_DISK_SECTOR_BITS); - - /* Some drivers have problems with disks above reasonable. - Treat unknown as 1EiB disk. While on it, clamp the size to 1EiB. - Just one condition is enough since GRUB_DISK_UNKNOWN_SIZE << ls is always - above 9EiB. - */ - if (total_sectors > (1ULL << 51)) - total_sectors = (1ULL << 51); - - if ((total_sectors <= *sector - || ((*offset + size + GRUB_DISK_SECTOR_SIZE - 1) - >> GRUB_DISK_SECTOR_BITS) > total_sectors - *sector)) - return grub_error (GRUB_ERR_OUT_OF_RANGE, - N_("attempt to read or write outside of disk `%s'"), disk->name); - - return GRUB_ERR_NONE; -} - -static inline grub_disk_addr_t -transform_sector (grub_disk_t disk, grub_disk_addr_t sector) -{ - return sector >> (disk->log_sector_size - GRUB_DISK_SECTOR_BITS); -} - -static unsigned -grub_disk_cache_get_index (unsigned long dev_id, unsigned long disk_id, - grub_disk_addr_t sector) -{ - return ((dev_id * 524287UL + disk_id * 2606459UL - + ((unsigned) (sector >> GRUB_DISK_CACHE_BITS))) - % GRUB_DISK_CACHE_NUM); -} diff --git a/thirdparty/grub-2.04/grub-core/kern/dl.c b/thirdparty/grub-2.04/grub-core/kern/dl.c deleted file mode 100644 index 48eb5e7b6..000000000 --- a/thirdparty/grub-2.04/grub-core/kern/dl.c +++ /dev/null @@ -1,816 +0,0 @@ -/* dl.c - loadable module support */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2002,2003,2004,2005,2007,2008,2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -/* Force native word size */ -#define GRUB_TARGET_WORDSIZE (8 * GRUB_CPU_SIZEOF_VOID_P) - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -/* Platforms where modules are in a readonly area of memory. */ -#if defined(GRUB_MACHINE_QEMU) -#define GRUB_MODULES_MACHINE_READONLY -#endif - - - -#pragma GCC diagnostic ignored "-Wcast-align" - -grub_dl_t grub_dl_head = 0; - -grub_err_t -grub_dl_add (grub_dl_t mod); - -/* Keep global so that GDB scripts work. */ -grub_err_t -grub_dl_add (grub_dl_t mod) -{ - if (grub_dl_get (mod->name)) - return grub_error (GRUB_ERR_BAD_MODULE, - "`%s' is already loaded", mod->name); - - return GRUB_ERR_NONE; -} - -static void -grub_dl_remove (grub_dl_t mod) -{ - grub_dl_t *p, q; - - for (p = &grub_dl_head, q = *p; q; p = &q->next, q = *p) - if (q == mod) - { - *p = q->next; - return; - } -} - - - -struct grub_symbol -{ - struct grub_symbol *next; - const char *name; - void *addr; - int isfunc; - grub_dl_t mod; /* The module to which this symbol belongs. */ -}; -typedef struct grub_symbol *grub_symbol_t; - -/* The size of the symbol table. */ -#define GRUB_SYMTAB_SIZE 509 - -/* The symbol table (using an open-hash). */ -static struct grub_symbol *grub_symtab[GRUB_SYMTAB_SIZE]; - -/* Simple hash function. */ -static unsigned -grub_symbol_hash (const char *s) -{ - unsigned key = 0; - - while (*s) - key = key * 65599 + *s++; - - return (key + (key >> 5)) % GRUB_SYMTAB_SIZE; -} - -/* Resolve the symbol name NAME and return the address. - Return NULL, if not found. */ -static grub_symbol_t -grub_dl_resolve_symbol (const char *name) -{ - grub_symbol_t sym; - - for (sym = grub_symtab[grub_symbol_hash (name)]; sym; sym = sym->next) - if (grub_strcmp (sym->name, name) == 0) - return sym; - - return 0; -} - -/* Register a symbol with the name NAME and the address ADDR. */ -grub_err_t -grub_dl_register_symbol (const char *name, void *addr, int isfunc, - grub_dl_t mod) -{ - grub_symbol_t sym; - unsigned k; - - sym = (grub_symbol_t) grub_malloc (sizeof (*sym)); - if (! sym) - return grub_errno; - - if (mod) - { - sym->name = grub_strdup (name); - if (! sym->name) - { - grub_free (sym); - return grub_errno; - } - } - else - sym->name = name; - - sym->addr = addr; - sym->mod = mod; - sym->isfunc = isfunc; - - k = grub_symbol_hash (name); - sym->next = grub_symtab[k]; - grub_symtab[k] = sym; - - return GRUB_ERR_NONE; -} - -/* Unregister all the symbols defined in the module MOD. */ -static void -grub_dl_unregister_symbols (grub_dl_t mod) -{ - unsigned i; - - if (! mod) - grub_fatal ("core symbols cannot be unregistered"); - - for (i = 0; i < GRUB_SYMTAB_SIZE; i++) - { - grub_symbol_t sym, *p, q; - - for (p = &grub_symtab[i], sym = *p; sym; sym = q) - { - q = sym->next; - if (sym->mod == mod) - { - *p = q; - grub_free ((void *) sym->name); - grub_free (sym); - } - else - p = &sym->next; - } - } -} - -/* Return the address of a section whose index is N. */ -static void * -grub_dl_get_section_addr (grub_dl_t mod, unsigned n) -{ - grub_dl_segment_t seg; - - for (seg = mod->segment; seg; seg = seg->next) - if (seg->section == n) - return seg->addr; - - return 0; -} - -/* Check if EHDR is a valid ELF header. */ -static grub_err_t -grub_dl_check_header (void *ehdr, grub_size_t size) -{ - Elf_Ehdr *e = ehdr; - grub_err_t err; - - /* Check the header size. */ - if (size < sizeof (Elf_Ehdr)) - return grub_error (GRUB_ERR_BAD_OS, "ELF header smaller than expected"); - - /* Check the magic numbers. */ - if (e->e_ident[EI_MAG0] != ELFMAG0 - || e->e_ident[EI_MAG1] != ELFMAG1 - || e->e_ident[EI_MAG2] != ELFMAG2 - || e->e_ident[EI_MAG3] != ELFMAG3 - || e->e_ident[EI_VERSION] != EV_CURRENT - || e->e_version != EV_CURRENT) - return grub_error (GRUB_ERR_BAD_OS, N_("invalid arch-independent ELF magic")); - - err = grub_arch_dl_check_header (ehdr); - if (err) - return err; - - return GRUB_ERR_NONE; -} - -/* Load all segments from memory specified by E. */ -static grub_err_t -grub_dl_load_segments (grub_dl_t mod, const Elf_Ehdr *e) -{ - unsigned i; - const Elf_Shdr *s; - grub_size_t tsize = 0, talign = 1; -#if !defined (__i386__) && !defined (__x86_64__) && !defined(__riscv) - grub_size_t tramp; - grub_size_t got; - grub_err_t err; -#endif - char *ptr; - - for (i = 0, s = (const Elf_Shdr *)((const char *) e + e->e_shoff); - i < e->e_shnum; - i++, s = (const Elf_Shdr *)((const char *) s + e->e_shentsize)) - { - tsize = ALIGN_UP (tsize, s->sh_addralign) + s->sh_size; - if (talign < s->sh_addralign) - talign = s->sh_addralign; - } - -#if !defined (__i386__) && !defined (__x86_64__) && !defined(__riscv) - err = grub_arch_dl_get_tramp_got_size (e, &tramp, &got); - if (err) - return err; - tsize += ALIGN_UP (tramp, GRUB_ARCH_DL_TRAMP_ALIGN); - if (talign < GRUB_ARCH_DL_TRAMP_ALIGN) - talign = GRUB_ARCH_DL_TRAMP_ALIGN; - tsize += ALIGN_UP (got, GRUB_ARCH_DL_GOT_ALIGN); - if (talign < GRUB_ARCH_DL_GOT_ALIGN) - talign = GRUB_ARCH_DL_GOT_ALIGN; -#endif - -#ifdef GRUB_MACHINE_EMU - mod->base = grub_osdep_dl_memalign (talign, tsize); -#else - mod->base = grub_memalign (talign, tsize); -#endif - if (!mod->base) - return grub_errno; - mod->sz = tsize; - ptr = mod->base; - - for (i = 0, s = (Elf_Shdr *)((char *) e + e->e_shoff); - i < e->e_shnum; - i++, s = (Elf_Shdr *)((char *) s + e->e_shentsize)) - { - if (s->sh_flags & SHF_ALLOC) - { - grub_dl_segment_t seg; - - seg = (grub_dl_segment_t) grub_malloc (sizeof (*seg)); - if (! seg) - return grub_errno; - - if (s->sh_size) - { - void *addr; - - ptr = (char *) ALIGN_UP ((grub_addr_t) ptr, s->sh_addralign); - addr = ptr; - ptr += s->sh_size; - - switch (s->sh_type) - { - case SHT_PROGBITS: - grub_memcpy (addr, (char *) e + s->sh_offset, s->sh_size); - break; - case SHT_NOBITS: - grub_memset (addr, 0, s->sh_size); - break; - } - - seg->addr = addr; - } - else - seg->addr = 0; - - seg->size = s->sh_size; - seg->section = i; - seg->next = mod->segment; - mod->segment = seg; - } - } -#if !defined (__i386__) && !defined (__x86_64__) && !defined(__riscv) - ptr = (char *) ALIGN_UP ((grub_addr_t) ptr, GRUB_ARCH_DL_TRAMP_ALIGN); - mod->tramp = ptr; - mod->trampptr = ptr; - ptr += tramp; - ptr = (char *) ALIGN_UP ((grub_addr_t) ptr, GRUB_ARCH_DL_GOT_ALIGN); - mod->got = ptr; - mod->gotptr = ptr; - ptr += got; -#endif - - return GRUB_ERR_NONE; -} - -static grub_err_t -grub_dl_resolve_symbols (grub_dl_t mod, Elf_Ehdr *e) -{ - unsigned i; - Elf_Shdr *s; - Elf_Sym *sym; - const char *str; - Elf_Word size, entsize; - - for (i = 0, s = (Elf_Shdr *) ((char *) e + e->e_shoff); - i < e->e_shnum; - i++, s = (Elf_Shdr *) ((char *) s + e->e_shentsize)) - if (s->sh_type == SHT_SYMTAB) - break; - - /* Module without symbol table may still be used to pull in dependencies. - We verify at build time that such modules do not contain any relocations - that may reference symbol table. */ - if (i == e->e_shnum) - return GRUB_ERR_NONE; - -#ifdef GRUB_MODULES_MACHINE_READONLY - mod->symtab = grub_malloc (s->sh_size); - if (!mod->symtab) - return grub_errno; - grub_memcpy (mod->symtab, (char *) e + s->sh_offset, s->sh_size); -#else - mod->symtab = (Elf_Sym *) ((char *) e + s->sh_offset); -#endif - mod->symsize = s->sh_entsize; - sym = mod->symtab; - size = s->sh_size; - entsize = s->sh_entsize; - - s = (Elf_Shdr *) ((char *) e + e->e_shoff + e->e_shentsize * s->sh_link); - str = (char *) e + s->sh_offset; - - for (i = 0; - i < size / entsize; - i++, sym = (Elf_Sym *) ((char *) sym + entsize)) - { - unsigned char type = ELF_ST_TYPE (sym->st_info); - unsigned char bind = ELF_ST_BIND (sym->st_info); - const char *name = str + sym->st_name; - - switch (type) - { - case STT_NOTYPE: - case STT_OBJECT: - /* Resolve a global symbol. */ - if (sym->st_name != 0 && sym->st_shndx == 0) - { - grub_symbol_t nsym = grub_dl_resolve_symbol (name); - if (! nsym) - return grub_error (GRUB_ERR_BAD_MODULE, - N_("symbol `%s' not found"), name); - sym->st_value = (Elf_Addr) nsym->addr; - if (nsym->isfunc) - sym->st_info = ELF_ST_INFO (bind, STT_FUNC); - } - else - { - sym->st_value += (Elf_Addr) grub_dl_get_section_addr (mod, - sym->st_shndx); - if (bind != STB_LOCAL) - if (grub_dl_register_symbol (name, (void *) sym->st_value, 0, mod)) - return grub_errno; - } - break; - - case STT_FUNC: - sym->st_value += (Elf_Addr) grub_dl_get_section_addr (mod, - sym->st_shndx); -#ifdef __ia64__ - { - /* FIXME: free descriptor once it's not used anymore. */ - char **desc; - desc = grub_malloc (2 * sizeof (char *)); - if (!desc) - return grub_errno; - desc[0] = (void *) sym->st_value; - desc[1] = mod->base; - sym->st_value = (grub_addr_t) desc; - } -#endif - if (bind != STB_LOCAL) - if (grub_dl_register_symbol (name, (void *) sym->st_value, 1, mod)) - return grub_errno; - if (grub_strcmp (name, "grub_mod_init") == 0) - mod->init = (void (*) (grub_dl_t)) sym->st_value; - else if (grub_strcmp (name, "grub_mod_fini") == 0) - mod->fini = (void (*) (void)) sym->st_value; - break; - - case STT_SECTION: - sym->st_value = (Elf_Addr) grub_dl_get_section_addr (mod, - sym->st_shndx); - break; - - case STT_FILE: - sym->st_value = 0; - break; - - default: - return grub_error (GRUB_ERR_BAD_MODULE, - "unknown symbol type `%d'", (int) type); - } - } - - return GRUB_ERR_NONE; -} - -static Elf_Shdr * -grub_dl_find_section (Elf_Ehdr *e, const char *name) -{ - Elf_Shdr *s; - const char *str; - unsigned i; - - s = (Elf_Shdr *) ((char *) e + e->e_shoff + e->e_shstrndx * e->e_shentsize); - str = (char *) e + s->sh_offset; - - for (i = 0, s = (Elf_Shdr *) ((char *) e + e->e_shoff); - i < e->e_shnum; - i++, s = (Elf_Shdr *) ((char *) s + e->e_shentsize)) - if (grub_strcmp (str + s->sh_name, name) == 0) - return s; - return NULL; -} - -/* Me, Vladimir Serbinenko, hereby I add this module check as per new - GNU module policy. Note that this license check is informative only. - Modules have to be licensed under GPLv3 or GPLv3+ (optionally - multi-licensed under other licences as well) independently of the - presence of this check and solely by linking (module loading in GRUB - constitutes linking) and GRUB core being licensed under GPLv3+. - Be sure to understand your license obligations. -*/ -static grub_err_t -grub_dl_check_license (Elf_Ehdr *e) -{ - Elf_Shdr *s = grub_dl_find_section (e, ".module_license"); - if (s && (grub_strcmp ((char *) e + s->sh_offset, "LICENSE=GPLv3") == 0 - || grub_strcmp ((char *) e + s->sh_offset, "LICENSE=GPLv3+") == 0 - || grub_strcmp ((char *) e + s->sh_offset, "LICENSE=GPLv2+") == 0)) - return GRUB_ERR_NONE; - return grub_error (GRUB_ERR_BAD_MODULE, "incompatible license"); -} - -static grub_err_t -grub_dl_resolve_name (grub_dl_t mod, Elf_Ehdr *e) -{ - Elf_Shdr *s; - - s = grub_dl_find_section (e, ".modname"); - if (!s) - return grub_error (GRUB_ERR_BAD_MODULE, "no module name found"); - - mod->name = grub_strdup ((char *) e + s->sh_offset); - if (! mod->name) - return grub_errno; - - return GRUB_ERR_NONE; -} - -static grub_err_t -grub_dl_resolve_dependencies (grub_dl_t mod, Elf_Ehdr *e) -{ - Elf_Shdr *s; - - s = grub_dl_find_section (e, ".moddeps"); - - if (!s) - return GRUB_ERR_NONE; - - const char *name = (char *) e + s->sh_offset; - const char *max = name + s->sh_size; - - while ((name < max) && (*name)) - { - grub_dl_t m; - grub_dl_dep_t dep; - - m = grub_dl_load (name); - if (! m) - return grub_errno; - - grub_dl_ref (m); - - dep = (grub_dl_dep_t) grub_malloc (sizeof (*dep)); - if (! dep) - return grub_errno; - - dep->mod = m; - dep->next = mod->dep; - mod->dep = dep; - - name += grub_strlen (name) + 1; - } - - return GRUB_ERR_NONE; -} - -int -grub_dl_ref (grub_dl_t mod) -{ - grub_dl_dep_t dep; - - if (!mod) - return 0; - - for (dep = mod->dep; dep; dep = dep->next) - grub_dl_ref (dep->mod); - - return ++mod->ref_count; -} - -int -grub_dl_unref (grub_dl_t mod) -{ - grub_dl_dep_t dep; - - if (!mod) - return 0; - - for (dep = mod->dep; dep; dep = dep->next) - grub_dl_unref (dep->mod); - - return --mod->ref_count; -} - -static void -grub_dl_flush_cache (grub_dl_t mod) -{ - grub_dprintf ("modules", "flushing 0x%lx bytes at %p\n", - (unsigned long) mod->sz, mod->base); - grub_arch_sync_caches (mod->base, mod->sz); -} - -static grub_err_t -grub_dl_relocate_symbols (grub_dl_t mod, void *ehdr) -{ - Elf_Ehdr *e = ehdr; - Elf_Shdr *s; - unsigned i; - - for (i = 0, s = (Elf_Shdr *) ((char *) e + e->e_shoff); - i < e->e_shnum; - i++, s = (Elf_Shdr *) ((char *) s + e->e_shentsize)) - if (s->sh_type == SHT_REL || s->sh_type == SHT_RELA) - { - grub_dl_segment_t seg; - grub_err_t err; - - /* Find the target segment. */ - for (seg = mod->segment; seg; seg = seg->next) - if (seg->section == s->sh_info) - break; - - if (seg) - { - if (!mod->symtab) - return grub_error (GRUB_ERR_BAD_MODULE, "relocation without symbol table"); - - err = grub_arch_dl_relocate_symbols (mod, ehdr, s, seg); - if (err) - return err; - } - } - - return GRUB_ERR_NONE; -} - -/* Load a module from core memory. */ -grub_dl_t -grub_dl_load_core_noinit (void *addr, grub_size_t size) -{ - Elf_Ehdr *e; - grub_dl_t mod; - - grub_dprintf ("modules", "module at %p, size 0x%lx\n", addr, - (unsigned long) size); - e = addr; - if (grub_dl_check_header (e, size)) - return 0; - - if (e->e_type != ET_REL) - { - grub_error (GRUB_ERR_BAD_MODULE, N_("this ELF file is not of the right type")); - return 0; - } - - /* Make sure that every section is within the core. */ - if (size < e->e_shoff + (grub_uint32_t) e->e_shentsize * e->e_shnum) - { - grub_error (GRUB_ERR_BAD_OS, "ELF sections outside core"); - return 0; - } - - mod = (grub_dl_t) grub_zalloc (sizeof (*mod)); - if (! mod) - return 0; - - mod->ref_count = 1; - - grub_dprintf ("modules", "relocating to %p\n", mod); - /* Me, Vladimir Serbinenko, hereby I add this module check as per new - GNU module policy. Note that this license check is informative only. - Modules have to be licensed under GPLv3 or GPLv3+ (optionally - multi-licensed under other licences as well) independently of the - presence of this check and solely by linking (module loading in GRUB - constitutes linking) and GRUB core being licensed under GPLv3+. - Be sure to understand your license obligations. - */ - if (grub_dl_check_license (e) - || grub_dl_resolve_name (mod, e) - || grub_dl_resolve_dependencies (mod, e) - || grub_dl_load_segments (mod, e) - || grub_dl_resolve_symbols (mod, e) - || grub_dl_relocate_symbols (mod, e)) - { - mod->fini = 0; - grub_dl_unload (mod); - return 0; - } - - grub_dl_flush_cache (mod); - - grub_dprintf ("modules", "module name: %s\n", mod->name); - grub_dprintf ("modules", "init function: %p\n", mod->init); - - if (grub_dl_add (mod)) - { - grub_dl_unload (mod); - return 0; - } - - return mod; -} - -grub_dl_t -grub_dl_load_core (void *addr, grub_size_t size) -{ - grub_dl_t mod; - - grub_boot_time ("Parsing module"); - - mod = grub_dl_load_core_noinit (addr, size); - - if (!mod) - return NULL; - - grub_boot_time ("Initing module %s", mod->name); - grub_dl_init (mod); - grub_boot_time ("Module %s inited", mod->name); - - return mod; -} - -/* Load a module from the file FILENAME. */ -grub_dl_t -grub_dl_load_file (const char *filename) -{ - grub_file_t file = NULL; - grub_ssize_t size; - void *core = 0; - grub_dl_t mod = 0; - - grub_boot_time ("Loading module %s", filename); - - file = grub_file_open (filename, GRUB_FILE_TYPE_GRUB_MODULE); - if (! file) - return 0; - - size = grub_file_size (file); - core = grub_malloc (size); - if (! core) - { - grub_file_close (file); - return 0; - } - - if (grub_file_read (file, core, size) != (int) size) - { - grub_file_close (file); - grub_free (core); - return 0; - } - - /* We must close this before we try to process dependencies. - Some disk backends do not handle gracefully multiple concurrent - opens of the same device. */ - grub_file_close (file); - - mod = grub_dl_load_core (core, size); - grub_free (core); - if (! mod) - return 0; - - mod->ref_count--; - return mod; -} - -/* Load a module using a symbolic name. */ -grub_dl_t -grub_dl_load (const char *name) -{ - char *filename; - grub_dl_t mod; - const char *grub_dl_dir = grub_env_get ("prefix"); - - mod = grub_dl_get (name); - if (mod) - return mod; - - if (grub_no_modules) - return 0; - - if (! grub_dl_dir) { - grub_error (GRUB_ERR_FILE_NOT_FOUND, N_("variable `%s' isn't set"), "prefix"); - return 0; - } - - filename = grub_xasprintf ("%s/" GRUB_TARGET_CPU "-" GRUB_PLATFORM "/%s.mod", - grub_dl_dir, name); - if (! filename) - return 0; - - mod = grub_dl_load_file (filename); - grub_free (filename); - - if (! mod) - return 0; - - if (grub_strcmp (mod->name, name) != 0) - grub_error (GRUB_ERR_BAD_MODULE, "mismatched names"); - - return mod; -} - -/* Unload the module MOD. */ -int -grub_dl_unload (grub_dl_t mod) -{ - grub_dl_dep_t dep, depn; - - if (mod->ref_count > 0) - return 0; - - if (mod->fini) - (mod->fini) (); - - grub_dl_remove (mod); - grub_dl_unregister_symbols (mod); - - for (dep = mod->dep; dep; dep = depn) - { - depn = dep->next; - - grub_dl_unload (dep->mod); - - grub_free (dep); - } - -#ifdef GRUB_MACHINE_EMU - grub_dl_osdep_dl_free (mod->base); -#else - grub_free (mod->base); -#endif - grub_free (mod->name); -#ifdef GRUB_MODULES_MACHINE_READONLY - grub_free (mod->symtab); -#endif - grub_free (mod); - return 1; -} - -/* Unload unneeded modules. */ -void -grub_dl_unload_unneeded (void) -{ - /* Because grub_dl_remove modifies the list of modules, this - implementation is tricky. */ - grub_dl_t p = grub_dl_head; - - while (p) - { - if (grub_dl_unload (p)) - { - p = grub_dl_head; - continue; - } - - p = p->next; - } -} diff --git a/thirdparty/grub-2.04/grub-core/kern/efi/acpi.c b/thirdparty/grub-2.04/grub-core/kern/efi/acpi.c deleted file mode 100644 index 74f8cd1a9..000000000 --- a/thirdparty/grub-2.04/grub-core/kern/efi/acpi.c +++ /dev/null @@ -1,59 +0,0 @@ -/* acpi.c - get acpi tables. */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include - -struct grub_acpi_rsdp_v10 * -grub_machine_acpi_get_rsdpv1 (void) -{ - unsigned i; - static grub_efi_packed_guid_t acpi_guid = GRUB_EFI_ACPI_TABLE_GUID; - - for (i = 0; i < grub_efi_system_table->num_table_entries; i++) - { - grub_efi_packed_guid_t *guid = - &grub_efi_system_table->configuration_table[i].vendor_guid; - - if (! grub_memcmp (guid, &acpi_guid, sizeof (grub_efi_packed_guid_t))) - return (struct grub_acpi_rsdp_v10 *) - grub_efi_system_table->configuration_table[i].vendor_table; - } - return 0; -} - -struct grub_acpi_rsdp_v20 * -grub_machine_acpi_get_rsdpv2 (void) -{ - unsigned i; - static grub_efi_packed_guid_t acpi20_guid = GRUB_EFI_ACPI_20_TABLE_GUID; - - for (i = 0; i < grub_efi_system_table->num_table_entries; i++) - { - grub_efi_packed_guid_t *guid = - &grub_efi_system_table->configuration_table[i].vendor_guid; - - if (! grub_memcmp (guid, &acpi20_guid, sizeof (grub_efi_packed_guid_t))) - return (struct grub_acpi_rsdp_v20 *) - grub_efi_system_table->configuration_table[i].vendor_table; - } - return 0; -} diff --git a/thirdparty/grub-2.04/grub-core/kern/efi/efi.c b/thirdparty/grub-2.04/grub-core/kern/efi/efi.c deleted file mode 100644 index 6e1ceb905..000000000 --- a/thirdparty/grub-2.04/grub-core/kern/efi/efi.c +++ /dev/null @@ -1,949 +0,0 @@ -/* efi.c - generic EFI support */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2006,2007,2008,2009,2010 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -/* The handle of GRUB itself. Filled in by the startup code. */ -grub_efi_handle_t grub_efi_image_handle; - -/* The pointer to a system table. Filled in by the startup code. */ -grub_efi_system_table_t *grub_efi_system_table; - -static grub_efi_guid_t console_control_guid = GRUB_EFI_CONSOLE_CONTROL_GUID; -static grub_efi_guid_t loaded_image_guid = GRUB_EFI_LOADED_IMAGE_GUID; -static grub_efi_guid_t device_path_guid = GRUB_EFI_DEVICE_PATH_GUID; - -void * -grub_efi_locate_protocol (grub_efi_guid_t *protocol, void *registration) -{ - void *interface; - grub_efi_status_t status; - - status = efi_call_3 (grub_efi_system_table->boot_services->locate_protocol, - protocol, registration, &interface); - if (status != GRUB_EFI_SUCCESS) - return 0; - - return interface; -} - -/* Return the array of handles which meet the requirement. If successful, - the number of handles is stored in NUM_HANDLES. The array is allocated - from the heap. */ -grub_efi_handle_t * -grub_efi_locate_handle (grub_efi_locate_search_type_t search_type, - grub_efi_guid_t *protocol, - void *search_key, - grub_efi_uintn_t *num_handles) -{ - grub_efi_boot_services_t *b; - grub_efi_status_t status; - grub_efi_handle_t *buffer; - grub_efi_uintn_t buffer_size = 8 * sizeof (grub_efi_handle_t); - - buffer = grub_malloc (buffer_size); - if (! buffer) - return 0; - - b = grub_efi_system_table->boot_services; - status = efi_call_5 (b->locate_handle, search_type, protocol, search_key, - &buffer_size, buffer); - if (status == GRUB_EFI_BUFFER_TOO_SMALL) - { - grub_free (buffer); - buffer = grub_malloc (buffer_size); - if (! buffer) - return 0; - - status = efi_call_5 (b->locate_handle, search_type, protocol, search_key, - &buffer_size, buffer); - } - - if (status != GRUB_EFI_SUCCESS) - { - grub_free (buffer); - return 0; - } - - *num_handles = buffer_size / sizeof (grub_efi_handle_t); - return buffer; -} - -void * -grub_efi_open_protocol (grub_efi_handle_t handle, - grub_efi_guid_t *protocol, - grub_efi_uint32_t attributes) -{ - grub_efi_boot_services_t *b; - grub_efi_status_t status; - void *interface; - - b = grub_efi_system_table->boot_services; - status = efi_call_6 (b->open_protocol, handle, - protocol, - &interface, - grub_efi_image_handle, - 0, - attributes); - if (status != GRUB_EFI_SUCCESS) - return 0; - - return interface; -} - -int -grub_efi_set_text_mode (int on) -{ - grub_efi_console_control_protocol_t *c; - grub_efi_screen_mode_t mode, new_mode; - - c = grub_efi_locate_protocol (&console_control_guid, 0); - if (! c) - /* No console control protocol instance available, assume it is - already in text mode. */ - return 1; - - if (efi_call_4 (c->get_mode, c, &mode, 0, 0) != GRUB_EFI_SUCCESS) - return 0; - - new_mode = on ? GRUB_EFI_SCREEN_TEXT : GRUB_EFI_SCREEN_GRAPHICS; - if (mode != new_mode) - if (efi_call_2 (c->set_mode, c, new_mode) != GRUB_EFI_SUCCESS) - return 0; - - return 1; -} - -void -grub_efi_stall (grub_efi_uintn_t microseconds) -{ - efi_call_1 (grub_efi_system_table->boot_services->stall, microseconds); -} - -grub_efi_loaded_image_t * -grub_efi_get_loaded_image (grub_efi_handle_t image_handle) -{ - return grub_efi_open_protocol (image_handle, - &loaded_image_guid, - GRUB_EFI_OPEN_PROTOCOL_GET_PROTOCOL); -} - -void -grub_reboot (void) -{ - grub_machine_fini (GRUB_LOADER_FLAG_NORETURN); - efi_call_4 (grub_efi_system_table->runtime_services->reset_system, - GRUB_EFI_RESET_COLD, GRUB_EFI_SUCCESS, 0, NULL); - for (;;) ; -} - -void -grub_exit (void) -{ - grub_machine_fini (GRUB_LOADER_FLAG_NORETURN); - efi_call_4 (grub_efi_system_table->boot_services->exit, - grub_efi_image_handle, GRUB_EFI_SUCCESS, 0, 0); - for (;;) ; -} - -grub_err_t -grub_efi_set_virtual_address_map (grub_efi_uintn_t memory_map_size, - grub_efi_uintn_t descriptor_size, - grub_efi_uint32_t descriptor_version, - grub_efi_memory_descriptor_t *virtual_map) -{ - grub_efi_runtime_services_t *r; - grub_efi_status_t status; - - r = grub_efi_system_table->runtime_services; - status = efi_call_4 (r->set_virtual_address_map, memory_map_size, - descriptor_size, descriptor_version, virtual_map); - - if (status == GRUB_EFI_SUCCESS) - return GRUB_ERR_NONE; - - return grub_error (GRUB_ERR_IO, "set_virtual_address_map failed"); -} - -grub_err_t -grub_efi_set_variable(const char *var, const grub_efi_guid_t *guid, - void *data, grub_size_t datasize) -{ - grub_efi_status_t status; - grub_efi_runtime_services_t *r; - grub_efi_char16_t *var16; - grub_size_t len, len16; - - len = grub_strlen (var); - len16 = len * GRUB_MAX_UTF16_PER_UTF8; - var16 = grub_malloc ((len16 + 1) * sizeof (var16[0])); - if (!var16) - return grub_errno; - len16 = grub_utf8_to_utf16 (var16, len16, (grub_uint8_t *) var, len, NULL); - var16[len16] = 0; - - r = grub_efi_system_table->runtime_services; - - status = efi_call_5 (r->set_variable, var16, guid, - (GRUB_EFI_VARIABLE_NON_VOLATILE - | GRUB_EFI_VARIABLE_BOOTSERVICE_ACCESS - | GRUB_EFI_VARIABLE_RUNTIME_ACCESS), - datasize, data); - grub_free (var16); - if (status == GRUB_EFI_SUCCESS) - return GRUB_ERR_NONE; - - return grub_error (GRUB_ERR_IO, "could not set EFI variable `%s'", var); -} - -void * -grub_efi_get_variable (const char *var, const grub_efi_guid_t *guid, - grub_size_t *datasize_out) -{ - grub_efi_status_t status; - grub_efi_uintn_t datasize = 0; - grub_efi_runtime_services_t *r; - grub_efi_char16_t *var16; - void *data; - grub_size_t len, len16; - - *datasize_out = 0; - - len = grub_strlen (var); - len16 = len * GRUB_MAX_UTF16_PER_UTF8; - var16 = grub_malloc ((len16 + 1) * sizeof (var16[0])); - if (!var16) - return NULL; - len16 = grub_utf8_to_utf16 (var16, len16, (grub_uint8_t *) var, len, NULL); - var16[len16] = 0; - - r = grub_efi_system_table->runtime_services; - - status = efi_call_5 (r->get_variable, var16, guid, NULL, &datasize, NULL); - - if (status != GRUB_EFI_BUFFER_TOO_SMALL || !datasize) - { - grub_free (var16); - return NULL; - } - - data = grub_malloc (datasize); - if (!data) - { - grub_free (var16); - return NULL; - } - - status = efi_call_5 (r->get_variable, var16, guid, NULL, &datasize, data); - grub_free (var16); - - if (status == GRUB_EFI_SUCCESS) - { - *datasize_out = datasize; - return data; - } - - grub_free (data); - return NULL; -} - -#pragma GCC diagnostic ignored "-Wcast-align" - -/* Search the mods section from the PE32/PE32+ image. This code uses - a PE32 header, but should work with PE32+ as well. */ -grub_addr_t -grub_efi_modules_addr (void) -{ - grub_efi_loaded_image_t *image; - struct grub_pe32_header *header; - struct grub_pe32_coff_header *coff_header; - struct grub_pe32_section_table *sections; - struct grub_pe32_section_table *section; - struct grub_module_info *info; - grub_uint16_t i; - - image = grub_efi_get_loaded_image (grub_efi_image_handle); - if (! image) - return 0; - - header = image->image_base; - coff_header = &(header->coff_header); - sections - = (struct grub_pe32_section_table *) ((char *) coff_header - + sizeof (*coff_header) - + coff_header->optional_header_size); - - for (i = 0, section = sections; - i < coff_header->num_sections; - i++, section++) - { - if (grub_strcmp (section->name, "mods") == 0) - break; - } - - if (i == coff_header->num_sections) - return 0; - - info = (struct grub_module_info *) ((char *) image->image_base - + section->virtual_address); - if (info->magic != GRUB_MODULE_MAGIC) - return 0; - - return (grub_addr_t) info; -} - -#pragma GCC diagnostic error "-Wcast-align" - -char * -grub_efi_get_filename (grub_efi_device_path_t *dp0) -{ - char *name = 0, *p, *pi; - grub_size_t filesize = 0; - grub_efi_device_path_t *dp; - - if (!dp0) - return NULL; - - dp = dp0; - - while (1) - { - grub_efi_uint8_t type = GRUB_EFI_DEVICE_PATH_TYPE (dp); - grub_efi_uint8_t subtype = GRUB_EFI_DEVICE_PATH_SUBTYPE (dp); - - if (type == GRUB_EFI_END_DEVICE_PATH_TYPE) - break; - if (type == GRUB_EFI_MEDIA_DEVICE_PATH_TYPE - && subtype == GRUB_EFI_FILE_PATH_DEVICE_PATH_SUBTYPE) - { - grub_efi_uint16_t len; - len = ((GRUB_EFI_DEVICE_PATH_LENGTH (dp) - 4) - / sizeof (grub_efi_char16_t)); - filesize += GRUB_MAX_UTF8_PER_UTF16 * len + 2; - } - - dp = GRUB_EFI_NEXT_DEVICE_PATH (dp); - } - - if (!filesize) - return NULL; - - dp = dp0; - - p = name = grub_malloc (filesize); - if (!name) - return NULL; - - while (1) - { - grub_efi_uint8_t type = GRUB_EFI_DEVICE_PATH_TYPE (dp); - grub_efi_uint8_t subtype = GRUB_EFI_DEVICE_PATH_SUBTYPE (dp); - - if (type == GRUB_EFI_END_DEVICE_PATH_TYPE) - break; - else if (type == GRUB_EFI_MEDIA_DEVICE_PATH_TYPE - && subtype == GRUB_EFI_FILE_PATH_DEVICE_PATH_SUBTYPE) - { - grub_efi_file_path_device_path_t *fp; - grub_efi_uint16_t len; - grub_efi_char16_t *dup_name; - - *p++ = '/'; - - len = ((GRUB_EFI_DEVICE_PATH_LENGTH (dp) - 4) - / sizeof (grub_efi_char16_t)); - fp = (grub_efi_file_path_device_path_t *) dp; - /* According to EFI spec Path Name is NULL terminated */ - while (len > 0 && fp->path_name[len - 1] == 0) - len--; - - dup_name = grub_malloc (len * sizeof (*dup_name)); - if (!dup_name) - { - grub_free (name); - return NULL; - } - p = (char *) grub_utf16_to_utf8 ((unsigned char *) p, - grub_memcpy (dup_name, fp->path_name, len * sizeof (*dup_name)), - len); - grub_free (dup_name); - } - - dp = GRUB_EFI_NEXT_DEVICE_PATH (dp); - } - - *p = '\0'; - - for (pi = name, p = name; *pi;) - { - /* EFI breaks paths with backslashes. */ - if (*pi == '\\' || *pi == '/') - { - *p++ = '/'; - while (*pi == '\\' || *pi == '/') - pi++; - continue; - } - *p++ = *pi++; - } - *p = '\0'; - - return name; -} - -grub_efi_device_path_t * -grub_efi_get_device_path (grub_efi_handle_t handle) -{ - return grub_efi_open_protocol (handle, &device_path_guid, - GRUB_EFI_OPEN_PROTOCOL_GET_PROTOCOL); -} - -/* Return the device path node right before the end node. */ -grub_efi_device_path_t * -grub_efi_find_last_device_path (const grub_efi_device_path_t *dp) -{ - grub_efi_device_path_t *next, *p; - - if (GRUB_EFI_END_ENTIRE_DEVICE_PATH (dp)) - return 0; - - for (p = (grub_efi_device_path_t *) dp, next = GRUB_EFI_NEXT_DEVICE_PATH (p); - ! GRUB_EFI_END_ENTIRE_DEVICE_PATH (next); - p = next, next = GRUB_EFI_NEXT_DEVICE_PATH (next)) - ; - - return p; -} - -/* Duplicate a device path. */ -grub_efi_device_path_t * -grub_efi_duplicate_device_path (const grub_efi_device_path_t *dp) -{ - grub_efi_device_path_t *p; - grub_size_t total_size = 0; - - for (p = (grub_efi_device_path_t *) dp; - ; - p = GRUB_EFI_NEXT_DEVICE_PATH (p)) - { - total_size += GRUB_EFI_DEVICE_PATH_LENGTH (p); - if (GRUB_EFI_END_ENTIRE_DEVICE_PATH (p)) - break; - } - - p = grub_malloc (total_size); - if (! p) - return 0; - - grub_memcpy (p, dp, total_size); - return p; -} - -static void -dump_vendor_path (const char *type, grub_efi_vendor_device_path_t *vendor) -{ - grub_uint32_t vendor_data_len = vendor->header.length - sizeof (*vendor); - grub_printf ("/%sVendor(%08x-%04x-%04x-%02x%02x-%02x%02x%02x%02x%02x%02x)[%x: ", - type, - (unsigned) vendor->vendor_guid.data1, - (unsigned) vendor->vendor_guid.data2, - (unsigned) vendor->vendor_guid.data3, - (unsigned) vendor->vendor_guid.data4[0], - (unsigned) vendor->vendor_guid.data4[1], - (unsigned) vendor->vendor_guid.data4[2], - (unsigned) vendor->vendor_guid.data4[3], - (unsigned) vendor->vendor_guid.data4[4], - (unsigned) vendor->vendor_guid.data4[5], - (unsigned) vendor->vendor_guid.data4[6], - (unsigned) vendor->vendor_guid.data4[7], - vendor_data_len); - if (vendor->header.length > sizeof (*vendor)) - { - grub_uint32_t i; - for (i = 0; i < vendor_data_len; i++) - grub_printf ("%02x ", vendor->vendor_defined_data[i]); - } - grub_printf ("]"); -} - - -/* Print the chain of Device Path nodes. This is mainly for debugging. */ -void -grub_efi_print_device_path (grub_efi_device_path_t *dp) -{ - while (1) - { - grub_efi_uint8_t type = GRUB_EFI_DEVICE_PATH_TYPE (dp); - grub_efi_uint8_t subtype = GRUB_EFI_DEVICE_PATH_SUBTYPE (dp); - grub_efi_uint16_t len = GRUB_EFI_DEVICE_PATH_LENGTH (dp); - - switch (type) - { - case GRUB_EFI_END_DEVICE_PATH_TYPE: - switch (subtype) - { - case GRUB_EFI_END_ENTIRE_DEVICE_PATH_SUBTYPE: - grub_printf ("/EndEntire\n"); - //grub_putchar ('\n'); - break; - case GRUB_EFI_END_THIS_DEVICE_PATH_SUBTYPE: - grub_printf ("/EndThis\n"); - //grub_putchar ('\n'); - break; - default: - grub_printf ("/EndUnknown(%x)\n", (unsigned) subtype); - break; - } - break; - - case GRUB_EFI_HARDWARE_DEVICE_PATH_TYPE: - switch (subtype) - { - case GRUB_EFI_PCI_DEVICE_PATH_SUBTYPE: - { - grub_efi_pci_device_path_t *pci - = (grub_efi_pci_device_path_t *) dp; - grub_printf ("/PCI(%x,%x)", - (unsigned) pci->function, (unsigned) pci->device); - } - break; - case GRUB_EFI_PCCARD_DEVICE_PATH_SUBTYPE: - { - grub_efi_pccard_device_path_t *pccard - = (grub_efi_pccard_device_path_t *) dp; - grub_printf ("/PCCARD(%x)", - (unsigned) pccard->function); - } - break; - case GRUB_EFI_MEMORY_MAPPED_DEVICE_PATH_SUBTYPE: - { - grub_efi_memory_mapped_device_path_t *mmapped - = (grub_efi_memory_mapped_device_path_t *) dp; - grub_printf ("/MMap(%x,%llx,%llx)", - (unsigned) mmapped->memory_type, - (unsigned long long) mmapped->start_address, - (unsigned long long) mmapped->end_address); - } - break; - case GRUB_EFI_VENDOR_DEVICE_PATH_SUBTYPE: - dump_vendor_path ("Hardware", - (grub_efi_vendor_device_path_t *) dp); - break; - case GRUB_EFI_CONTROLLER_DEVICE_PATH_SUBTYPE: - { - grub_efi_controller_device_path_t *controller - = (grub_efi_controller_device_path_t *) dp; - grub_printf ("/Ctrl(%x)", - (unsigned) controller->controller_number); - } - break; - default: - grub_printf ("/UnknownHW(%x)", (unsigned) subtype); - break; - } - break; - - case GRUB_EFI_ACPI_DEVICE_PATH_TYPE: - switch (subtype) - { - case GRUB_EFI_ACPI_DEVICE_PATH_SUBTYPE: - { - grub_efi_acpi_device_path_t *acpi - = (grub_efi_acpi_device_path_t *) dp; - grub_printf ("/ACPI(%x,%x)", - (unsigned) acpi->hid, - (unsigned) acpi->uid); - } - break; - case GRUB_EFI_EXPANDED_ACPI_DEVICE_PATH_SUBTYPE: - { - grub_efi_expanded_acpi_device_path_t *eacpi - = (grub_efi_expanded_acpi_device_path_t *) dp; - grub_printf ("/ACPI("); - - if (GRUB_EFI_EXPANDED_ACPI_HIDSTR (dp)[0] == '\0') - grub_printf ("%x,", (unsigned) eacpi->hid); - else - grub_printf ("%s,", GRUB_EFI_EXPANDED_ACPI_HIDSTR (dp)); - - if (GRUB_EFI_EXPANDED_ACPI_UIDSTR (dp)[0] == '\0') - grub_printf ("%x,", (unsigned) eacpi->uid); - else - grub_printf ("%s,", GRUB_EFI_EXPANDED_ACPI_UIDSTR (dp)); - - if (GRUB_EFI_EXPANDED_ACPI_CIDSTR (dp)[0] == '\0') - grub_printf ("%x)", (unsigned) eacpi->cid); - else - grub_printf ("%s)", GRUB_EFI_EXPANDED_ACPI_CIDSTR (dp)); - } - break; - default: - grub_printf ("/UnknownACPI(%x)", (unsigned) subtype); - break; - } - break; - - case GRUB_EFI_MESSAGING_DEVICE_PATH_TYPE: - switch (subtype) - { - case GRUB_EFI_ATAPI_DEVICE_PATH_SUBTYPE: - { - grub_efi_atapi_device_path_t *atapi - = (grub_efi_atapi_device_path_t *) dp; - grub_printf ("/ATAPI(%x,%x,%x)", - (unsigned) atapi->primary_secondary, - (unsigned) atapi->slave_master, - (unsigned) atapi->lun); - } - break; - case GRUB_EFI_SCSI_DEVICE_PATH_SUBTYPE: - { - grub_efi_scsi_device_path_t *scsi - = (grub_efi_scsi_device_path_t *) dp; - grub_printf ("/SCSI(%x,%x)", - (unsigned) scsi->pun, - (unsigned) scsi->lun); - } - break; - case GRUB_EFI_FIBRE_CHANNEL_DEVICE_PATH_SUBTYPE: - { - grub_efi_fibre_channel_device_path_t *fc - = (grub_efi_fibre_channel_device_path_t *) dp; - grub_printf ("/FibreChannel(%llx,%llx)", - (unsigned long long) fc->wwn, - (unsigned long long) fc->lun); - } - break; - case GRUB_EFI_1394_DEVICE_PATH_SUBTYPE: - { - grub_efi_1394_device_path_t *firewire - = (grub_efi_1394_device_path_t *) dp; - grub_printf ("/1394(%llx)", - (unsigned long long) firewire->guid); - } - break; - case GRUB_EFI_USB_DEVICE_PATH_SUBTYPE: - { - grub_efi_usb_device_path_t *usb - = (grub_efi_usb_device_path_t *) dp; - grub_printf ("/USB(%x,%x)", - (unsigned) usb->parent_port_number, - (unsigned) usb->usb_interface); - } - break; - case GRUB_EFI_USB_CLASS_DEVICE_PATH_SUBTYPE: - { - grub_efi_usb_class_device_path_t *usb_class - = (grub_efi_usb_class_device_path_t *) dp; - grub_printf ("/USBClass(%x,%x,%x,%x,%x)", - (unsigned) usb_class->vendor_id, - (unsigned) usb_class->product_id, - (unsigned) usb_class->device_class, - (unsigned) usb_class->device_subclass, - (unsigned) usb_class->device_protocol); - } - break; - case GRUB_EFI_I2O_DEVICE_PATH_SUBTYPE: - { - grub_efi_i2o_device_path_t *i2o - = (grub_efi_i2o_device_path_t *) dp; - grub_printf ("/I2O(%x)", (unsigned) i2o->tid); - } - break; - case GRUB_EFI_MAC_ADDRESS_DEVICE_PATH_SUBTYPE: - { - grub_efi_mac_address_device_path_t *mac - = (grub_efi_mac_address_device_path_t *) dp; - grub_printf ("/MacAddr(%02x:%02x:%02x:%02x:%02x:%02x,%x)", - (unsigned) mac->mac_address[0], - (unsigned) mac->mac_address[1], - (unsigned) mac->mac_address[2], - (unsigned) mac->mac_address[3], - (unsigned) mac->mac_address[4], - (unsigned) mac->mac_address[5], - (unsigned) mac->if_type); - } - break; - case GRUB_EFI_IPV4_DEVICE_PATH_SUBTYPE: - { - grub_efi_ipv4_device_path_t *ipv4 - = (grub_efi_ipv4_device_path_t *) dp; - grub_printf ("/IPv4(%u.%u.%u.%u,%u.%u.%u.%u,%u,%u,%x,%x)", - (unsigned) ipv4->local_ip_address[0], - (unsigned) ipv4->local_ip_address[1], - (unsigned) ipv4->local_ip_address[2], - (unsigned) ipv4->local_ip_address[3], - (unsigned) ipv4->remote_ip_address[0], - (unsigned) ipv4->remote_ip_address[1], - (unsigned) ipv4->remote_ip_address[2], - (unsigned) ipv4->remote_ip_address[3], - (unsigned) ipv4->local_port, - (unsigned) ipv4->remote_port, - (unsigned) ipv4->protocol, - (unsigned) ipv4->static_ip_address); - } - break; - case GRUB_EFI_IPV6_DEVICE_PATH_SUBTYPE: - { - grub_efi_ipv6_device_path_t *ipv6 - = (grub_efi_ipv6_device_path_t *) dp; - grub_printf ("/IPv6(%x:%x:%x:%x:%x:%x:%x:%x,%x:%x:%x:%x:%x:%x:%x:%x,%u,%u,%x,%x)", - (unsigned) ipv6->local_ip_address[0], - (unsigned) ipv6->local_ip_address[1], - (unsigned) ipv6->local_ip_address[2], - (unsigned) ipv6->local_ip_address[3], - (unsigned) ipv6->local_ip_address[4], - (unsigned) ipv6->local_ip_address[5], - (unsigned) ipv6->local_ip_address[6], - (unsigned) ipv6->local_ip_address[7], - (unsigned) ipv6->remote_ip_address[0], - (unsigned) ipv6->remote_ip_address[1], - (unsigned) ipv6->remote_ip_address[2], - (unsigned) ipv6->remote_ip_address[3], - (unsigned) ipv6->remote_ip_address[4], - (unsigned) ipv6->remote_ip_address[5], - (unsigned) ipv6->remote_ip_address[6], - (unsigned) ipv6->remote_ip_address[7], - (unsigned) ipv6->local_port, - (unsigned) ipv6->remote_port, - (unsigned) ipv6->protocol, - (unsigned) ipv6->static_ip_address); - } - break; - case GRUB_EFI_INFINIBAND_DEVICE_PATH_SUBTYPE: - { - grub_efi_infiniband_device_path_t *ib - = (grub_efi_infiniband_device_path_t *) dp; - grub_printf ("/InfiniBand(%x,%llx,%llx,%llx)", - (unsigned) ib->port_gid[0], /* XXX */ - (unsigned long long) ib->remote_id, - (unsigned long long) ib->target_port_id, - (unsigned long long) ib->device_id); - } - break; - case GRUB_EFI_UART_DEVICE_PATH_SUBTYPE: - { - grub_efi_uart_device_path_t *uart - = (grub_efi_uart_device_path_t *) dp; - grub_printf ("/UART(%llu,%u,%x,%x)", - (unsigned long long) uart->baud_rate, - uart->data_bits, - uart->parity, - uart->stop_bits); - } - break; - case GRUB_EFI_SATA_DEVICE_PATH_SUBTYPE: - { - grub_efi_sata_device_path_t *sata; - sata = (grub_efi_sata_device_path_t *) dp; - grub_printf ("/Sata(%x,%x,%x)", - sata->hba_port, - sata->multiplier_port, - sata->lun); - } - break; - - case GRUB_EFI_VENDOR_MESSAGING_DEVICE_PATH_SUBTYPE: - dump_vendor_path ("Messaging", - (grub_efi_vendor_device_path_t *) dp); - break; - default: - grub_printf ("/UnknownMessaging(%x)", (unsigned) subtype); - break; - } - break; - - case GRUB_EFI_MEDIA_DEVICE_PATH_TYPE: - switch (subtype) - { - case GRUB_EFI_HARD_DRIVE_DEVICE_PATH_SUBTYPE: - { - grub_efi_hard_drive_device_path_t *hd = (grub_efi_hard_drive_device_path_t *) dp; - grub_printf ("/HD(%u,%llx,%llx,%02x%02x%02x%02x%02x%02x%02x%02x,%x,%x)", - hd->partition_number, - (unsigned long long) hd->partition_start, - (unsigned long long) hd->partition_size, - (unsigned) hd->partition_signature[0], - (unsigned) hd->partition_signature[1], - (unsigned) hd->partition_signature[2], - (unsigned) hd->partition_signature[3], - (unsigned) hd->partition_signature[4], - (unsigned) hd->partition_signature[5], - (unsigned) hd->partition_signature[6], - (unsigned) hd->partition_signature[7], - (unsigned) hd->partmap_type, - (unsigned) hd->signature_type); - } - break; - case GRUB_EFI_CDROM_DEVICE_PATH_SUBTYPE: - { - grub_efi_cdrom_device_path_t *cd - = (grub_efi_cdrom_device_path_t *) dp; - grub_printf ("/CD(%u,%llx,%llx)", - cd->boot_entry, - (unsigned long long) cd->partition_start, - (unsigned long long) cd->partition_size); - } - break; - case GRUB_EFI_VENDOR_MEDIA_DEVICE_PATH_SUBTYPE: - dump_vendor_path ("Media", - (grub_efi_vendor_device_path_t *) dp); - break; - case GRUB_EFI_FILE_PATH_DEVICE_PATH_SUBTYPE: - { - grub_efi_file_path_device_path_t *fp; - grub_uint8_t *buf; - fp = (grub_efi_file_path_device_path_t *) dp; - buf = grub_malloc ((len - 4) * 2 + 1); - if (buf) - { - grub_efi_char16_t *dup_name = grub_malloc (len - 4); - if (!dup_name) - { - grub_errno = GRUB_ERR_NONE; - grub_printf ("/File((null))"); - grub_free (buf); - break; - } - *grub_utf16_to_utf8 (buf, grub_memcpy (dup_name, fp->path_name, len - 4), - (len - 4) / sizeof (grub_efi_char16_t)) - = '\0'; - grub_free (dup_name); - } - else - grub_errno = GRUB_ERR_NONE; - grub_printf ("/File(%s)", buf); - grub_free (buf); - } - break; - case GRUB_EFI_PROTOCOL_DEVICE_PATH_SUBTYPE: - { - grub_efi_protocol_device_path_t *proto - = (grub_efi_protocol_device_path_t *) dp; - grub_printf ("/Protocol(%08x-%04x-%04x-%02x%02x-%02x%02x%02x%02x%02x%02x)", - (unsigned) proto->guid.data1, - (unsigned) proto->guid.data2, - (unsigned) proto->guid.data3, - (unsigned) proto->guid.data4[0], - (unsigned) proto->guid.data4[1], - (unsigned) proto->guid.data4[2], - (unsigned) proto->guid.data4[3], - (unsigned) proto->guid.data4[4], - (unsigned) proto->guid.data4[5], - (unsigned) proto->guid.data4[6], - (unsigned) proto->guid.data4[7]); - } - break; - default: - grub_printf ("/UnknownMedia(%x)", (unsigned) subtype); - break; - } - break; - - case GRUB_EFI_BIOS_DEVICE_PATH_TYPE: - switch (subtype) - { - case GRUB_EFI_BIOS_DEVICE_PATH_SUBTYPE: - { - grub_efi_bios_device_path_t *bios - = (grub_efi_bios_device_path_t *) dp; - grub_printf ("/BIOS(%x,%x,%s)", - (unsigned) bios->device_type, - (unsigned) bios->status_flags, - (char *) (dp + 1)); - } - break; - default: - grub_printf ("/UnknownBIOS(%x)", (unsigned) subtype); - break; - } - break; - - default: - grub_printf ("/UnknownType(%x,%x)\n", - (unsigned) type, - (unsigned) subtype); - return; - break; - } - - if (GRUB_EFI_END_ENTIRE_DEVICE_PATH (dp)) - break; - - dp = (grub_efi_device_path_t *) ((char *) dp + len); - } -} - -/* Compare device paths. */ -int -grub_efi_compare_device_paths (const grub_efi_device_path_t *dp1, - const grub_efi_device_path_t *dp2) -{ - if (! dp1 || ! dp2) - /* Return non-zero. */ - return 1; - - while (1) - { - grub_efi_uint8_t type1, type2; - grub_efi_uint8_t subtype1, subtype2; - grub_efi_uint16_t len1, len2; - int ret; - - type1 = GRUB_EFI_DEVICE_PATH_TYPE (dp1); - type2 = GRUB_EFI_DEVICE_PATH_TYPE (dp2); - - if (type1 != type2) - return (int) type2 - (int) type1; - - subtype1 = GRUB_EFI_DEVICE_PATH_SUBTYPE (dp1); - subtype2 = GRUB_EFI_DEVICE_PATH_SUBTYPE (dp2); - - if (subtype1 != subtype2) - return (int) subtype1 - (int) subtype2; - - len1 = GRUB_EFI_DEVICE_PATH_LENGTH (dp1); - len2 = GRUB_EFI_DEVICE_PATH_LENGTH (dp2); - - if (len1 != len2) - return (int) len1 - (int) len2; - - ret = grub_memcmp (dp1, dp2, len1); - if (ret != 0) - return ret; - - if (GRUB_EFI_END_ENTIRE_DEVICE_PATH (dp1)) - break; - - dp1 = (grub_efi_device_path_t *) ((char *) dp1 + len1); - dp2 = (grub_efi_device_path_t *) ((char *) dp2 + len2); - } - - return 0; -} diff --git a/thirdparty/grub-2.04/grub-core/kern/efi/fdt.c b/thirdparty/grub-2.04/grub-core/kern/efi/fdt.c deleted file mode 100644 index 30100c61c..000000000 --- a/thirdparty/grub-2.04/grub-core/kern/efi/fdt.c +++ /dev/null @@ -1,43 +0,0 @@ -/* fdt.c - EFI Flattened Device Tree interaction */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2006,2007 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include - -void * -grub_efi_get_firmware_fdt (void) -{ - grub_efi_configuration_table_t *tables; - grub_efi_guid_t fdt_guid = GRUB_EFI_DEVICE_TREE_GUID; - void *firmware_fdt = NULL; - unsigned int i; - - /* Look for FDT in UEFI config tables. */ - tables = grub_efi_system_table->configuration_table; - - for (i = 0; i < grub_efi_system_table->num_table_entries; i++) - if (grub_memcmp (&tables[i].vendor_guid, &fdt_guid, sizeof (fdt_guid)) == 0) - { - firmware_fdt = tables[i].vendor_table; - grub_dprintf ("linux", "found registered FDT @ %p\n", firmware_fdt); - break; - } - - return firmware_fdt; -} diff --git a/thirdparty/grub-2.04/grub-core/kern/efi/init.c b/thirdparty/grub-2.04/grub-core/kern/efi/init.c deleted file mode 100644 index 3dfdf2d22..000000000 --- a/thirdparty/grub-2.04/grub-core/kern/efi/init.c +++ /dev/null @@ -1,84 +0,0 @@ -/* init.c - generic EFI initialization and finalization */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2006,2007 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include -#include - -grub_addr_t grub_modbase; - -void -grub_efi_init (void) -{ - grub_modbase = grub_efi_modules_addr (); - /* First of all, initialize the console so that GRUB can display - messages. */ - grub_console_init (); - - /* Initialize the memory management system. */ - grub_efi_mm_init (); - - efi_call_4 (grub_efi_system_table->boot_services->set_watchdog_timer, - 0, 0, 0, NULL); - - grub_efidisk_init (); -} - -void (*grub_efi_net_config) (grub_efi_handle_t hnd, - char **device, - char **path); - -void -grub_machine_get_bootlocation (char **device, char **path) -{ - grub_efi_loaded_image_t *image = NULL; - char *p; - - image = grub_efi_get_loaded_image (grub_efi_image_handle); - if (!image) - return; - *device = grub_efidisk_get_device_name (image->device_handle); - if (!*device && grub_efi_net_config) - { - grub_efi_net_config (image->device_handle, device, path); - return; - } - - *path = grub_efi_get_filename (image->file_path); - if (*path) - { - /* Get the directory. */ - p = grub_strrchr (*path, '/'); - if (p) - *p = '\0'; - } -} - -void -grub_efi_fini (void) -{ - grub_efidisk_fini (); - grub_console_fini (); - grub_efi_memory_fini (); -} diff --git a/thirdparty/grub-2.04/grub-core/kern/efi/mm.c b/thirdparty/grub-2.04/grub-core/kern/efi/mm.c deleted file mode 100644 index b02fab1b1..000000000 --- a/thirdparty/grub-2.04/grub-core/kern/efi/mm.c +++ /dev/null @@ -1,666 +0,0 @@ -/* mm.c - generic EFI memory management */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2006,2007,2008,2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include - -#if defined (__i386__) || defined (__x86_64__) -#include -#endif - -#define NEXT_MEMORY_DESCRIPTOR(desc, size) \ - ((grub_efi_memory_descriptor_t *) ((char *) (desc) + (size))) - -#define BYTES_TO_PAGES(bytes) (((bytes) + 0xfff) >> 12) -#define BYTES_TO_PAGES_DOWN(bytes) ((bytes) >> 12) -#define PAGES_TO_BYTES(pages) ((pages) << 12) - -/* The size of a memory map obtained from the firmware. This must be - a multiplier of 4KB. */ -#define MEMORY_MAP_SIZE 0x3000 - -/* The minimum and maximum heap size for GRUB itself. */ -#define MIN_HEAP_SIZE 0x100000 -#define MAX_HEAP_SIZE (1600 * 0x100000) - -static void *finish_mmap_buf = 0; -static grub_efi_uintn_t finish_mmap_size = 0; -static grub_efi_uintn_t finish_key = 0; -static grub_efi_uintn_t finish_desc_size; -static grub_efi_uint32_t finish_desc_version; -int grub_efi_is_finished = 0; - -/* - * We need to roll back EFI allocations on exit. Remember allocations that - * we'll free on exit. - */ -struct efi_allocation; -struct efi_allocation { - grub_efi_physical_address_t address; - grub_efi_uint64_t pages; - struct efi_allocation *next; -}; -static struct efi_allocation *efi_allocated_memory; - -static void -grub_efi_store_alloc (grub_efi_physical_address_t address, - grub_efi_uintn_t pages) -{ - grub_efi_boot_services_t *b; - struct efi_allocation *alloc; - grub_efi_status_t status; - - b = grub_efi_system_table->boot_services; - status = efi_call_3 (b->allocate_pool, GRUB_EFI_LOADER_DATA, - sizeof(*alloc), (void**)&alloc); - - if (status == GRUB_EFI_SUCCESS) - { - alloc->next = efi_allocated_memory; - alloc->address = address; - alloc->pages = pages; - efi_allocated_memory = alloc; - } - else - grub_printf ("Could not malloc memory to remember EFI allocation. " - "Exiting GRUB won't free all memory.\n"); -} - -static void -grub_efi_drop_alloc (grub_efi_physical_address_t address, - grub_efi_uintn_t pages) -{ - struct efi_allocation *ea, *eap; - grub_efi_boot_services_t *b; - - b = grub_efi_system_table->boot_services; - - for (eap = NULL, ea = efi_allocated_memory; ea; eap = ea, ea = ea->next) - { - if (ea->address != address || ea->pages != pages) - continue; - - /* Remove the current entry from the list. */ - if (eap) - eap->next = ea->next; - else - efi_allocated_memory = ea->next; - - /* Then free the memory backing it. */ - efi_call_1 (b->free_pool, ea); - - /* And leave, we're done. */ - break; - } -} - -/* Allocate pages. Return the pointer to the first of allocated pages. */ -void * -grub_efi_allocate_pages_real (grub_efi_physical_address_t address, - grub_efi_uintn_t pages, - grub_efi_allocate_type_t alloctype, - grub_efi_memory_type_t memtype) -{ - grub_efi_status_t status; - grub_efi_boot_services_t *b; - - /* Limit the memory access to less than 4GB for 32-bit platforms. */ - if (address > GRUB_EFI_MAX_USABLE_ADDRESS) - return 0; - - b = grub_efi_system_table->boot_services; - status = efi_call_4 (b->allocate_pages, alloctype, memtype, pages, &address); - if (status != GRUB_EFI_SUCCESS) - return 0; - - if (address == 0) - { - /* Uggh, the address 0 was allocated... This is too annoying, - so reallocate another one. */ - address = GRUB_EFI_MAX_USABLE_ADDRESS; - status = efi_call_4 (b->allocate_pages, alloctype, memtype, pages, &address); - grub_efi_free_pages (0, pages); - if (status != GRUB_EFI_SUCCESS) - return 0; - } - - grub_efi_store_alloc (address, pages); - - return (void *) ((grub_addr_t) address); -} - -void * -grub_efi_allocate_any_pages (grub_efi_uintn_t pages) -{ - return grub_efi_allocate_pages_real (GRUB_EFI_MAX_USABLE_ADDRESS, - pages, GRUB_EFI_ALLOCATE_MAX_ADDRESS, - GRUB_EFI_LOADER_DATA); -} - -void * -grub_efi_allocate_fixed (grub_efi_physical_address_t address, - grub_efi_uintn_t pages) -{ - return grub_efi_allocate_pages_real (address, pages, - GRUB_EFI_ALLOCATE_ADDRESS, - GRUB_EFI_LOADER_DATA); -} - -/* Free pages starting from ADDRESS. */ -void -grub_efi_free_pages (grub_efi_physical_address_t address, - grub_efi_uintn_t pages) -{ - grub_efi_boot_services_t *b; - - b = grub_efi_system_table->boot_services; - efi_call_2 (b->free_pages, address, pages); - - grub_efi_drop_alloc (address, pages); -} - -#if defined (__i386__) || defined (__x86_64__) - -/* Helper for stop_broadcom. */ -static int -find_card (grub_pci_device_t dev, grub_pci_id_t pciid, - void *data __attribute__ ((unused))) -{ - grub_pci_address_t addr; - grub_uint8_t cap; - grub_uint16_t pm_state; - - if ((pciid & 0xffff) != GRUB_PCI_VENDOR_BROADCOM) - return 0; - - addr = grub_pci_make_address (dev, GRUB_PCI_REG_CLASS); - if (grub_pci_read (addr) >> 24 != GRUB_PCI_CLASS_NETWORK) - return 0; - cap = grub_pci_find_capability (dev, GRUB_PCI_CAP_POWER_MANAGEMENT); - if (!cap) - return 0; - addr = grub_pci_make_address (dev, cap + 4); - pm_state = grub_pci_read_word (addr); - pm_state = pm_state | 0x03; - grub_pci_write_word (addr, pm_state); - grub_pci_read_word (addr); - return 0; -} - -static void -stop_broadcom (void) -{ - grub_pci_iterate (find_card, NULL); -} - -#endif - -grub_err_t -grub_efi_finish_boot_services (grub_efi_uintn_t *outbuf_size, void *outbuf, - grub_efi_uintn_t *map_key, - grub_efi_uintn_t *efi_desc_size, - grub_efi_uint32_t *efi_desc_version) -{ - grub_efi_boot_services_t *b; - grub_efi_status_t status; - -#if defined (__i386__) || defined (__x86_64__) - const grub_uint16_t apple[] = { 'A', 'p', 'p', 'l', 'e' }; - int is_apple; - - is_apple = (grub_memcmp (grub_efi_system_table->firmware_vendor, - apple, sizeof (apple)) == 0); -#endif - - while (1) - { - if (grub_efi_get_memory_map (&finish_mmap_size, finish_mmap_buf, &finish_key, - &finish_desc_size, &finish_desc_version) < 0) - return grub_error (GRUB_ERR_IO, "couldn't retrieve memory map"); - - if (outbuf && *outbuf_size < finish_mmap_size) - return grub_error (GRUB_ERR_IO, "memory map buffer is too small"); - - finish_mmap_buf = grub_malloc (finish_mmap_size); - if (!finish_mmap_buf) - return grub_errno; - - if (grub_efi_get_memory_map (&finish_mmap_size, finish_mmap_buf, &finish_key, - &finish_desc_size, &finish_desc_version) <= 0) - { - grub_free (finish_mmap_buf); - return grub_error (GRUB_ERR_IO, "couldn't retrieve memory map"); - } - - b = grub_efi_system_table->boot_services; - status = efi_call_2 (b->exit_boot_services, grub_efi_image_handle, - finish_key); - if (status == GRUB_EFI_SUCCESS) - break; - - if (status != GRUB_EFI_INVALID_PARAMETER) - { - grub_free (finish_mmap_buf); - return grub_error (GRUB_ERR_IO, "couldn't terminate EFI services"); - } - - grub_free (finish_mmap_buf); - grub_printf ("Trying to terminate EFI services again\n"); - } - grub_efi_is_finished = 1; - if (outbuf_size) - *outbuf_size = finish_mmap_size; - if (outbuf) - grub_memcpy (outbuf, finish_mmap_buf, finish_mmap_size); - if (map_key) - *map_key = finish_key; - if (efi_desc_size) - *efi_desc_size = finish_desc_size; - if (efi_desc_version) - *efi_desc_version = finish_desc_version; - -#if defined (__i386__) || defined (__x86_64__) - if (is_apple) - stop_broadcom (); -#endif - - return GRUB_ERR_NONE; -} - -/* - * To obtain the UEFI memory map, we must pass a buffer of sufficient size - * to hold the entire map. This function returns a sane start value for - * buffer size. - */ -grub_efi_uintn_t -grub_efi_find_mmap_size (void) -{ - grub_efi_uintn_t mmap_size = 0; - grub_efi_uintn_t desc_size; - - if (grub_efi_get_memory_map (&mmap_size, NULL, NULL, &desc_size, 0) < 0) - { - grub_error (GRUB_ERR_IO, "cannot get EFI memory map size"); - return 0; - } - - /* - * Add an extra page, since UEFI can alter the memory map itself on - * callbacks or explicit calls, including console output. - */ - return ALIGN_UP (mmap_size + GRUB_EFI_PAGE_SIZE, GRUB_EFI_PAGE_SIZE); -} - -/* Get the memory map as defined in the EFI spec. Return 1 if successful, - return 0 if partial, or return -1 if an error occurs. */ -int -grub_efi_get_memory_map (grub_efi_uintn_t *memory_map_size, - grub_efi_memory_descriptor_t *memory_map, - grub_efi_uintn_t *map_key, - grub_efi_uintn_t *descriptor_size, - grub_efi_uint32_t *descriptor_version) -{ - grub_efi_status_t status; - grub_efi_boot_services_t *b; - grub_efi_uintn_t key; - grub_efi_uint32_t version; - grub_efi_uintn_t size; - - if (grub_efi_is_finished) - { - int ret = 1; - if (*memory_map_size < finish_mmap_size) - { - grub_memcpy (memory_map, finish_mmap_buf, *memory_map_size); - ret = 0; - } - else - { - grub_memcpy (memory_map, finish_mmap_buf, finish_mmap_size); - ret = 1; - } - *memory_map_size = finish_mmap_size; - if (map_key) - *map_key = finish_key; - if (descriptor_size) - *descriptor_size = finish_desc_size; - if (descriptor_version) - *descriptor_version = finish_desc_version; - return ret; - } - - /* Allow some parameters to be missing. */ - if (! map_key) - map_key = &key; - if (! descriptor_version) - descriptor_version = &version; - if (! descriptor_size) - descriptor_size = &size; - - b = grub_efi_system_table->boot_services; - status = efi_call_5 (b->get_memory_map, memory_map_size, memory_map, map_key, - descriptor_size, descriptor_version); - if (*descriptor_size == 0) - *descriptor_size = sizeof (grub_efi_memory_descriptor_t); - if (status == GRUB_EFI_SUCCESS) - return 1; - else if (status == GRUB_EFI_BUFFER_TOO_SMALL) - return 0; - else - return -1; -} - -/* Sort the memory map in place. */ -static void -sort_memory_map (grub_efi_memory_descriptor_t *memory_map, - grub_efi_uintn_t desc_size, - grub_efi_memory_descriptor_t *memory_map_end) -{ - grub_efi_memory_descriptor_t *d1; - grub_efi_memory_descriptor_t *d2; - - for (d1 = memory_map; - d1 < memory_map_end; - d1 = NEXT_MEMORY_DESCRIPTOR (d1, desc_size)) - { - grub_efi_memory_descriptor_t *max_desc = d1; - - for (d2 = NEXT_MEMORY_DESCRIPTOR (d1, desc_size); - d2 < memory_map_end; - d2 = NEXT_MEMORY_DESCRIPTOR (d2, desc_size)) - { - if (max_desc->num_pages < d2->num_pages) - max_desc = d2; - } - - if (max_desc != d1) - { - grub_efi_memory_descriptor_t tmp; - - tmp = *d1; - *d1 = *max_desc; - *max_desc = tmp; - } - } -} - -/* Filter the descriptors. GRUB needs only available memory. */ -static grub_efi_memory_descriptor_t * -filter_memory_map (grub_efi_memory_descriptor_t *memory_map, - grub_efi_memory_descriptor_t *filtered_memory_map, - grub_efi_uintn_t desc_size, - grub_efi_memory_descriptor_t *memory_map_end) -{ - grub_efi_memory_descriptor_t *desc; - grub_efi_memory_descriptor_t *filtered_desc; - - for (desc = memory_map, filtered_desc = filtered_memory_map; - desc < memory_map_end; - desc = NEXT_MEMORY_DESCRIPTOR (desc, desc_size)) - { - if (desc->type == GRUB_EFI_CONVENTIONAL_MEMORY -#if 1 - && desc->physical_start <= GRUB_EFI_MAX_USABLE_ADDRESS -#endif - && desc->physical_start + PAGES_TO_BYTES (desc->num_pages) > 0x100000 - && desc->num_pages != 0) - { - grub_memcpy (filtered_desc, desc, desc_size); - - /* Avoid less than 1MB, because some loaders seem to be confused. */ - if (desc->physical_start < 0x100000) - { - desc->num_pages -= BYTES_TO_PAGES (0x100000 - - desc->physical_start); - desc->physical_start = 0x100000; - } - -#if 1 - if (BYTES_TO_PAGES (filtered_desc->physical_start) - + filtered_desc->num_pages - > BYTES_TO_PAGES_DOWN (GRUB_EFI_MAX_USABLE_ADDRESS)) - filtered_desc->num_pages - = (BYTES_TO_PAGES_DOWN (GRUB_EFI_MAX_USABLE_ADDRESS) - - BYTES_TO_PAGES (filtered_desc->physical_start)); -#endif - - if (filtered_desc->num_pages == 0) - continue; - - filtered_desc = NEXT_MEMORY_DESCRIPTOR (filtered_desc, desc_size); - } - } - - return filtered_desc; -} - -/* Return the total number of pages. */ -static grub_efi_uint64_t -get_total_pages (grub_efi_memory_descriptor_t *memory_map, - grub_efi_uintn_t desc_size, - grub_efi_memory_descriptor_t *memory_map_end) -{ - grub_efi_memory_descriptor_t *desc; - grub_efi_uint64_t total = 0; - - for (desc = memory_map; - desc < memory_map_end; - desc = NEXT_MEMORY_DESCRIPTOR (desc, desc_size)) - total += desc->num_pages; - - return total; -} - -/* Add memory regions. */ -static void -add_memory_regions (grub_efi_memory_descriptor_t *memory_map, - grub_efi_uintn_t desc_size, - grub_efi_memory_descriptor_t *memory_map_end, - grub_efi_uint64_t required_pages) -{ - grub_efi_memory_descriptor_t *desc; - - for (desc = memory_map; - desc < memory_map_end; - desc = NEXT_MEMORY_DESCRIPTOR (desc, desc_size)) - { - grub_efi_uint64_t pages; - grub_efi_physical_address_t start; - void *addr; - - start = desc->physical_start; - pages = desc->num_pages; - if (pages > required_pages) - { - start += PAGES_TO_BYTES (pages - required_pages); - pages = required_pages; - } - - addr = grub_efi_allocate_pages_real (start, pages, - GRUB_EFI_ALLOCATE_ADDRESS, - GRUB_EFI_LOADER_CODE); - if (! addr) - grub_fatal ("cannot allocate conventional memory %p with %u pages", - (void *) ((grub_addr_t) start), - (unsigned) pages); - - grub_mm_init_region (addr, PAGES_TO_BYTES (pages)); - - required_pages -= pages; - if (required_pages == 0) - break; - } - - if (required_pages > 0) - grub_fatal ("too little memory"); -} - -void -grub_efi_memory_fini (void) -{ - /* - * Free all stale allocations. grub_efi_free_pages() will remove - * the found entry from the list and it will always find the first - * list entry (efi_allocated_memory is the list start). Hence we - * remove all entries from the list until none is left altogether. - */ - while (efi_allocated_memory) - grub_efi_free_pages (efi_allocated_memory->address, - efi_allocated_memory->pages); -} - -#if 0 -/* Print the memory map. */ -static void -print_memory_map (grub_efi_memory_descriptor_t *memory_map, - grub_efi_uintn_t desc_size, - grub_efi_memory_descriptor_t *memory_map_end) -{ - grub_efi_memory_descriptor_t *desc; - int i; - - for (desc = memory_map, i = 0; - desc < memory_map_end; - desc = NEXT_MEMORY_DESCRIPTOR (desc, desc_size), i++) - { - grub_printf ("MD: t=%x, p=%llx, v=%llx, n=%llx, a=%llx\n", - desc->type, desc->physical_start, desc->virtual_start, - desc->num_pages, desc->attribute); - } -} -#endif - -void -grub_efi_mm_init (void) -{ - grub_efi_memory_descriptor_t *memory_map; - grub_efi_memory_descriptor_t *memory_map_end; - grub_efi_memory_descriptor_t *filtered_memory_map; - grub_efi_memory_descriptor_t *filtered_memory_map_end; - grub_efi_uintn_t map_size; - grub_efi_uintn_t desc_size; - grub_efi_uint64_t total_pages; - grub_efi_uint64_t required_pages; - int mm_status; - - /* Prepare a memory region to store two memory maps. */ - memory_map = grub_efi_allocate_any_pages (2 * BYTES_TO_PAGES (MEMORY_MAP_SIZE)); - if (! memory_map) - grub_fatal ("cannot allocate memory"); - - /* Obtain descriptors for available memory. */ - map_size = MEMORY_MAP_SIZE; - - mm_status = grub_efi_get_memory_map (&map_size, memory_map, 0, &desc_size, 0); - - if (mm_status == 0) - { - grub_efi_free_pages - ((grub_efi_physical_address_t) ((grub_addr_t) memory_map), - 2 * BYTES_TO_PAGES (MEMORY_MAP_SIZE)); - - /* Freeing/allocating operations may increase memory map size. */ - map_size += desc_size * 32; - - memory_map = grub_efi_allocate_any_pages (2 * BYTES_TO_PAGES (map_size)); - if (! memory_map) - grub_fatal ("cannot allocate memory"); - - mm_status = grub_efi_get_memory_map (&map_size, memory_map, 0, - &desc_size, 0); - } - - if (mm_status < 0) - grub_fatal ("cannot get memory map"); - - memory_map_end = NEXT_MEMORY_DESCRIPTOR (memory_map, map_size); - - filtered_memory_map = memory_map_end; - - filtered_memory_map_end = filter_memory_map (memory_map, filtered_memory_map, - desc_size, memory_map_end); - - /* By default, request a quarter of the available memory. */ - total_pages = get_total_pages (filtered_memory_map, desc_size, - filtered_memory_map_end); - required_pages = (total_pages >> 2); - if (required_pages < BYTES_TO_PAGES (MIN_HEAP_SIZE)) - required_pages = BYTES_TO_PAGES (MIN_HEAP_SIZE); - else if (required_pages > BYTES_TO_PAGES (MAX_HEAP_SIZE)) - required_pages = BYTES_TO_PAGES (MAX_HEAP_SIZE); - - /* Sort the filtered descriptors, so that GRUB can allocate pages - from smaller regions. */ - sort_memory_map (filtered_memory_map, desc_size, filtered_memory_map_end); - - /* Allocate memory regions for GRUB's memory management. */ - add_memory_regions (filtered_memory_map, desc_size, - filtered_memory_map_end, required_pages); - -#if 0 - /* For debug. */ - map_size = MEMORY_MAP_SIZE; - - if (grub_efi_get_memory_map (&map_size, memory_map, 0, &desc_size, 0) < 0) - grub_fatal ("cannot get memory map"); - - grub_printf ("printing memory map\n"); - print_memory_map (memory_map, desc_size, - NEXT_MEMORY_DESCRIPTOR (memory_map, map_size)); - grub_fatal ("Debug. "); -#endif - - /* Release the memory maps. */ - grub_efi_free_pages ((grub_addr_t) memory_map, - 2 * BYTES_TO_PAGES (MEMORY_MAP_SIZE)); -} - -#if defined (__aarch64__) || defined (__arm__) || defined (__riscv) -grub_err_t -grub_efi_get_ram_base(grub_addr_t *base_addr) -{ - grub_efi_memory_descriptor_t *memory_map, *desc; - grub_efi_uintn_t memory_map_size, desc_size; - int ret; - - memory_map_size = grub_efi_find_mmap_size(); - - memory_map = grub_malloc (memory_map_size); - if (! memory_map) - return GRUB_ERR_OUT_OF_MEMORY; - ret = grub_efi_get_memory_map (&memory_map_size, memory_map, NULL, - &desc_size, NULL); - - if (ret < 1) - return GRUB_ERR_BUG; - - for (desc = memory_map, *base_addr = GRUB_EFI_MAX_USABLE_ADDRESS; - (grub_addr_t) desc < ((grub_addr_t) memory_map + memory_map_size); - desc = NEXT_MEMORY_DESCRIPTOR (desc, desc_size)) - if (desc->attribute & GRUB_EFI_MEMORY_WB) - *base_addr = grub_min (*base_addr, desc->physical_start); - - grub_free(memory_map); - - return GRUB_ERR_NONE; -} -#endif diff --git a/thirdparty/grub-2.04/grub-core/kern/elf.c b/thirdparty/grub-2.04/grub-core/kern/elf.c deleted file mode 100644 index 9d7149b38..000000000 --- a/thirdparty/grub-2.04/grub-core/kern/elf.c +++ /dev/null @@ -1,212 +0,0 @@ -/* elf.c - load ELF files */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2003,2004,2005,2006,2007,2008,2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -#pragma GCC diagnostic ignored "-Wcast-align" - -#if defined(__powerpc__) && defined(GRUB_MACHINE_IEEE1275) -#define GRUB_ELF_ENABLE_BI_ENDIAN 1 -#else -#define GRUB_ELF_ENABLE_BI_ENDIAN 0 -#endif - -#if defined(GRUB_CPU_WORDS_BIGENDIAN) -#define GRUB_ELF_NATIVE_ENDIANNESS ELFDATA2MSB -#define GRUB_ELF_OPPOSITE_ENDIANNESS ELFDATA2LSB -#else -#define GRUB_ELF_NATIVE_ENDIANNESS ELFDATA2LSB -#define GRUB_ELF_OPPOSITE_ENDIANNESS ELFDATA2MSB -#endif - -static int grub_elf32_check_endianess_and_bswap_ehdr (grub_elf_t elf); -static int grub_elf64_check_endianess_and_bswap_ehdr (grub_elf_t elf); - -/* Check if EHDR is a valid ELF header. */ -static grub_err_t -grub_elf_check_header (grub_elf_t elf) -{ - Elf32_Ehdr *e = &elf->ehdr.ehdr32; - - if (e->e_ident[EI_MAG0] != ELFMAG0 - || e->e_ident[EI_MAG1] != ELFMAG1 - || e->e_ident[EI_MAG2] != ELFMAG2 - || e->e_ident[EI_MAG3] != ELFMAG3 - || e->e_ident[EI_VERSION] != EV_CURRENT) - return grub_error (GRUB_ERR_BAD_OS, N_("invalid arch-independent ELF magic")); - - if (grub_elf_is_elf32 (elf)) - { - if (!grub_elf32_check_endianess_and_bswap_ehdr (elf)) { - return grub_error (GRUB_ERR_BAD_OS, "invalid ELF endianness magic"); - } - } - else if (grub_elf_is_elf64 (elf)) - { - if (!grub_elf64_check_endianess_and_bswap_ehdr (elf)) { - return grub_error (GRUB_ERR_BAD_OS, "invalid ELF endianness magic"); - } - } - else - return grub_error (GRUB_ERR_BAD_OS, "unknown ELF class"); - - if (e->e_version != EV_CURRENT) - return grub_error (GRUB_ERR_BAD_OS, N_("invalid arch-independent ELF magic")); - - return GRUB_ERR_NONE; -} - -grub_err_t -grub_elf_close (grub_elf_t elf) -{ - grub_file_t file = elf->file; - - grub_free (elf->phdrs); - grub_free (elf->filename); - grub_free (elf); - - if (file) - grub_file_close (file); - - return grub_errno; -} - -grub_elf_t -grub_elf_file (grub_file_t file, const char *filename) -{ - grub_elf_t elf; - - elf = grub_zalloc (sizeof (*elf)); - if (! elf) - return 0; - - elf->file = file; - - if (grub_file_seek (elf->file, 0) == (grub_off_t) -1) - goto fail; - - if (grub_file_read (elf->file, &elf->ehdr, sizeof (elf->ehdr)) - != sizeof (elf->ehdr)) - { - if (!grub_errno) - grub_error (GRUB_ERR_FILE_READ_ERROR, N_("premature end of file %s"), - filename); - goto fail; - } - - if (grub_elf_check_header (elf)) - goto fail; - - elf->filename = grub_strdup (filename); - if (!elf->filename) - goto fail; - - return elf; - -fail: - grub_free (elf->filename); - grub_free (elf->phdrs); - grub_free (elf); - return 0; -} - -grub_elf_t -grub_elf_open (const char *name, enum grub_file_type type) -{ - grub_file_t file; - grub_elf_t elf; - - file = grub_file_open (name, type); - if (! file) - return 0; - - elf = grub_elf_file (file, name); - if (! elf) - grub_file_close (file); - - return elf; -} - - -#define grub_swap_bytes_halfXX grub_swap_bytes16 -#define grub_swap_bytes_wordXX grub_swap_bytes32 - -/* 32-bit */ -#define ehdrXX ehdr32 -#define ELFCLASSXX ELFCLASS32 -#define ElfXX_Addr Elf32_Addr -#define grub_elfXX_size grub_elf32_size -#define grub_elfXX_load grub_elf32_load -#define FOR_ELFXX_PHDRS FOR_ELF32_PHDRS -#define grub_elf_is_elfXX grub_elf_is_elf32 -#define grub_elfXX_load_phdrs grub_elf32_load_phdrs -#define ElfXX_Phdr Elf32_Phdr -#define ElfXX_Ehdr Elf32_Ehdr -#define grub_uintXX_t grub_uint32_t -#define grub_swap_bytes_addrXX grub_swap_bytes32 -#define grub_swap_bytes_offXX grub_swap_bytes32 -#define grub_swap_bytes_XwordXX grub_swap_bytes32 -#define grub_elfXX_check_endianess_and_bswap_ehdr grub_elf32_check_endianess_and_bswap_ehdr - -#include "elfXX.c" - -#undef ehdrXX -#undef ELFCLASSXX -#undef ElfXX_Addr -#undef grub_elfXX_size -#undef grub_elfXX_load -#undef FOR_ELFXX_PHDRS -#undef grub_elf_is_elfXX -#undef grub_elfXX_load_phdrs -#undef ElfXX_Phdr -#undef ElfXX_Ehdr -#undef grub_uintXX_t -#undef grub_swap_bytes_addrXX -#undef grub_swap_bytes_offXX -#undef grub_swap_bytes_XwordXX -#undef grub_elfXX_check_endianess_and_bswap_ehdr - - -/* 64-bit */ -#define ehdrXX ehdr64 -#define ELFCLASSXX ELFCLASS64 -#define ElfXX_Addr Elf64_Addr -#define grub_elfXX_size grub_elf64_size -#define grub_elfXX_load grub_elf64_load -#define FOR_ELFXX_PHDRS FOR_ELF64_PHDRS -#define grub_elf_is_elfXX grub_elf_is_elf64 -#define grub_elfXX_load_phdrs grub_elf64_load_phdrs -#define ElfXX_Phdr Elf64_Phdr -#define ElfXX_Ehdr Elf64_Ehdr -#define grub_uintXX_t grub_uint64_t -#define grub_swap_bytes_addrXX grub_swap_bytes64 -#define grub_swap_bytes_offXX grub_swap_bytes64 -#define grub_swap_bytes_XwordXX grub_swap_bytes64 -#define grub_elfXX_check_endianess_and_bswap_ehdr grub_elf64_check_endianess_and_bswap_ehdr - -#include "elfXX.c" diff --git a/thirdparty/grub-2.04/grub-core/kern/elfXX.c b/thirdparty/grub-2.04/grub-core/kern/elfXX.c deleted file mode 100644 index 1859d1880..000000000 --- a/thirdparty/grub-2.04/grub-core/kern/elfXX.c +++ /dev/null @@ -1,207 +0,0 @@ -int -grub_elf_is_elfXX (grub_elf_t elf) -{ - return elf->ehdr.ehdrXX.e_ident[EI_CLASS] == ELFCLASSXX; -} - -grub_err_t -grub_elfXX_load_phdrs (grub_elf_t elf) -{ - grub_ssize_t phdrs_size; - - if (elf->phdrs) - return GRUB_ERR_NONE; - - phdrs_size = (grub_uint32_t) elf->ehdr.ehdrXX.e_phnum * elf->ehdr.ehdrXX.e_phentsize; - - grub_dprintf ("elf", "Loading program headers at 0x%llx, size 0x%lx.\n", - (unsigned long long) elf->ehdr.ehdrXX.e_phoff, - (unsigned long) phdrs_size); - - elf->phdrs = grub_malloc (phdrs_size); - if (! elf->phdrs) - return grub_errno; - - if ((grub_file_seek (elf->file, elf->ehdr.ehdrXX.e_phoff) == (grub_off_t) -1) - || (grub_file_read (elf->file, elf->phdrs, phdrs_size) != phdrs_size)) - { - if (!grub_errno) - grub_error (GRUB_ERR_FILE_READ_ERROR, N_("premature end of file %s"), - elf->filename); - return grub_errno; - } - -#if GRUB_ELF_ENABLE_BI_ENDIAN - if (elf->ehdr.ehdrXX.e_ident[EI_DATA] == GRUB_ELF_OPPOSITE_ENDIANNESS) - { - ElfXX_Phdr *phdr; - for (phdr = elf->phdrs; (char *) phdr < (char *) elf->phdrs + phdrs_size; - phdr = (ElfXX_Phdr *) ((char *) phdr + elf->ehdr.ehdrXX.e_phentsize)) - { - phdr->p_type = grub_swap_bytes_wordXX (phdr->p_type); - phdr->p_flags = grub_swap_bytes_wordXX (phdr->p_flags); - phdr->p_offset = grub_swap_bytes_offXX (phdr->p_offset); - phdr->p_vaddr = grub_swap_bytes_addrXX (phdr->p_vaddr); - phdr->p_paddr = grub_swap_bytes_addrXX (phdr->p_paddr); - phdr->p_filesz = grub_swap_bytes_XwordXX (phdr->p_filesz); - phdr->p_memsz = grub_swap_bytes_XwordXX (phdr->p_memsz); - phdr->p_align = grub_swap_bytes_XwordXX (phdr->p_align); - } - } -#endif /* GRUB_ELF_ENABLE_BI_ENDIAN */ - - return GRUB_ERR_NONE; -} - -/* Calculate the amount of memory spanned by the segments. */ -grub_size_t -grub_elfXX_size (grub_elf_t elf, - ElfXX_Addr *base, grub_uintXX_t *max_align) -{ - ElfXX_Addr segments_start = (ElfXX_Addr) -1; - ElfXX_Addr segments_end = 0; - int nr_phdrs = 0; - grub_uint32_t curr_align = 1; - ElfXX_Phdr *phdr; - - /* Run through the program headers to calculate the total memory size we - * should claim. */ - FOR_ELFXX_PHDRS (elf, phdr) - { - /* Only consider loadable segments. */ - if (phdr->p_type != PT_LOAD) - continue; - nr_phdrs++; - if (phdr->p_paddr < segments_start) - segments_start = phdr->p_paddr; - if (phdr->p_paddr + phdr->p_memsz > segments_end) - segments_end = phdr->p_paddr + phdr->p_memsz; - if (curr_align < phdr->p_align) - curr_align = phdr->p_align; - } - - if (base) - *base = 0; - - if (nr_phdrs == 0) - { - grub_error (GRUB_ERR_BAD_OS, "no program headers present"); - return 0; - } - - if (segments_end < segments_start) - { - /* Very bad addresses. */ - grub_error (GRUB_ERR_BAD_OS, "bad program header load addresses"); - return 0; - } - - if (base) - *base = segments_start; - if (max_align) - *max_align = curr_align; - return segments_end - segments_start; -} - -grub_err_t -grub_elfXX_load (grub_elf_t elf, const char *filename, - void *load_offset, enum grub_elf_load_flags load_flags, - grub_addr_t *base, grub_size_t *size) -{ - grub_addr_t load_base = (grub_addr_t) -1ULL; - grub_size_t load_size = 0; - ElfXX_Phdr *phdr; - - FOR_ELFXX_PHDRS(elf, phdr) - { - grub_addr_t load_addr; - - if (phdr->p_type != PT_LOAD && !((load_flags & GRUB_ELF_LOAD_FLAGS_LOAD_PT_DYNAMIC) && phdr->p_type == PT_DYNAMIC)) - continue; - - load_addr = (grub_addr_t) phdr->p_paddr; - switch (load_flags & GRUB_ELF_LOAD_FLAGS_BITS) - { - case GRUB_ELF_LOAD_FLAGS_ALL_BITS: - break; - case GRUB_ELF_LOAD_FLAGS_28BITS: - load_addr &= 0xFFFFFFF; - break; - case GRUB_ELF_LOAD_FLAGS_30BITS: - load_addr &= 0x3FFFFFFF; - break; - case GRUB_ELF_LOAD_FLAGS_62BITS: - load_addr &= 0x3FFFFFFFFFFFFFFFULL; - break; - } - load_addr += (grub_addr_t) load_offset; - - if (load_addr < load_base) - load_base = load_addr; - - grub_dprintf ("elf", "Loading segment at 0x%llx, size 0x%llx\n", - (unsigned long long) load_addr, - (unsigned long long) phdr->p_memsz); - - if (grub_file_seek (elf->file, phdr->p_offset) == (grub_off_t) -1) - return grub_errno; - - if (phdr->p_filesz) - { - grub_ssize_t read; - read = grub_file_read (elf->file, (void *) load_addr, phdr->p_filesz); - if (read != (grub_ssize_t) phdr->p_filesz) - { - if (!grub_errno) - grub_error (GRUB_ERR_FILE_READ_ERROR, N_("premature end of file %s"), - filename); - return grub_errno; - } - } - - if (phdr->p_filesz < phdr->p_memsz) - grub_memset ((void *) (grub_addr_t) (load_addr + phdr->p_filesz), - 0, phdr->p_memsz - phdr->p_filesz); - - load_size += phdr->p_memsz; - } - - if (base) - *base = load_base; - if (size) - *size = load_size; - - return grub_errno; -} - -static int -grub_elfXX_check_endianess_and_bswap_ehdr (grub_elf_t elf) -{ - ElfXX_Ehdr *e = &(elf->ehdr.ehdrXX); - if (e->e_ident[EI_DATA] == GRUB_ELF_NATIVE_ENDIANNESS) - { - return 1; - } - -#if GRUB_ELF_ENABLE_BI_ENDIAN - if (e->e_ident[EI_DATA] == GRUB_ELF_OPPOSITE_ENDIANNESS) - { - e->e_type = grub_swap_bytes_halfXX (e->e_type); - e->e_machine = grub_swap_bytes_halfXX (e->e_machine); - e->e_version = grub_swap_bytes_wordXX (e->e_version); - e->e_entry = grub_swap_bytes_addrXX (e->e_entry); - e->e_phoff = grub_swap_bytes_offXX (e->e_phoff); - e->e_shoff = grub_swap_bytes_offXX (e->e_shoff); - e->e_flags = grub_swap_bytes_wordXX (e->e_flags); - e->e_ehsize = grub_swap_bytes_halfXX (e->e_ehsize); - e->e_phentsize = grub_swap_bytes_halfXX (e->e_phentsize); - e->e_phnum = grub_swap_bytes_halfXX (e->e_phnum); - e->e_shentsize = grub_swap_bytes_halfXX (e->e_shentsize); - e->e_shnum = grub_swap_bytes_halfXX (e->e_shnum); - e->e_shstrndx = grub_swap_bytes_halfXX (e->e_shstrndx); - return 1; - } -#endif /* GRUB_ELF_ENABLE_BI_ENDIAN */ - - return 0; -} diff --git a/thirdparty/grub-2.04/grub-core/kern/emu/argp_common.c b/thirdparty/grub-2.04/grub-core/kern/emu/argp_common.c deleted file mode 100644 index 166885870..000000000 --- a/thirdparty/grub-2.04/grub-core/kern/emu/argp_common.c +++ /dev/null @@ -1,41 +0,0 @@ -/* grub-setup.c - make GRUB usable */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 1999,2000,2001,2002,2003,2004,2005,2006,2007,2008,2009,2010,2011,2012 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include - -#pragma GCC diagnostic ignored "-Wmissing-prototypes" -#pragma GCC diagnostic ignored "-Wmissing-declarations" - -#define _GNU_SOURCE 1 -#include -#include -#include -#include - -/* Print the version information. */ -static void -print_version (FILE *stream, struct argp_state *state) -{ - fprintf (stream, "%s (%s) %s\n", program_name, PACKAGE_NAME, PACKAGE_VERSION); -} -void (*argp_program_version_hook) (FILE *, struct argp_state *) = print_version; - -/* Set the bug report address */ -const char *argp_program_bug_address = "<"PACKAGE_BUGREPORT">"; diff --git a/thirdparty/grub-2.04/grub-core/kern/emu/cache.c b/thirdparty/grub-2.04/grub-core/kern/emu/cache.c deleted file mode 100644 index 113682cc4..000000000 --- a/thirdparty/grub-2.04/grub-core/kern/emu/cache.c +++ /dev/null @@ -1,35 +0,0 @@ -#ifndef GRUB_MACHINE_EMU -#error "This source is only meant for grub-emu platform" -#endif - -#include - -#if defined(__ia64__) -#include "../ia64/cache.c" -#elif defined (__arm__) || defined (__aarch64__) - -void __clear_cache (void *beg, void *end); - -void -grub_arch_sync_caches (void *address, grub_size_t len) -{ - __clear_cache (address, (char *) address + len); -} - -#elif defined (__mips__) -void _flush_cache (void *address, grub_size_t len, int type); - -void -grub_arch_sync_caches (void *address, grub_size_t len) -{ - return _flush_cache (address, len, 0); -} - -#elif defined(__riscv) -void -grub_arch_sync_caches (void *address, grub_size_t len) -{ -} - -#endif - diff --git a/thirdparty/grub-2.04/grub-core/kern/emu/cache_s.S b/thirdparty/grub-2.04/grub-core/kern/emu/cache_s.S deleted file mode 100644 index 2245cddc3..000000000 --- a/thirdparty/grub-2.04/grub-core/kern/emu/cache_s.S +++ /dev/null @@ -1,15 +0,0 @@ -#ifndef GRUB_MACHINE_EMU -#error "This source is only meant for grub-emu platform" -#endif - -#if defined(__i386__) || defined(__x86_64__) -/* Nothing is necessary. */ -#elif defined(__sparc__) -#include "../sparc64/cache.S" -#elif defined(__powerpc__) -#include "../powerpc/cache.S" -#elif defined(__ia64__) || defined(__arm__) || defined(__aarch64__) || \ - defined(__mips__) || defined(__riscv) -#else -#error "No target cpu type is defined" -#endif diff --git a/thirdparty/grub-2.04/grub-core/kern/emu/full.c b/thirdparty/grub-2.04/grub-core/kern/emu/full.c deleted file mode 100644 index e8d63b1f5..000000000 --- a/thirdparty/grub-2.04/grub-core/kern/emu/full.c +++ /dev/null @@ -1,69 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2010 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include - -const int grub_no_modules = 1; - -void -grub_register_exported_symbols (void) -{ -} - -grub_err_t -grub_arch_dl_check_header (void *ehdr) -{ - (void) ehdr; - return GRUB_ERR_BAD_MODULE; -} - -grub_err_t -grub_arch_dl_relocate_symbols (grub_dl_t mod, void *ehdr, - Elf_Shdr *s, grub_dl_segment_t seg) -{ - (void) mod; - (void) ehdr; - (void) s; - (void) seg; - return GRUB_ERR_BAD_MODULE; -} - -#if !defined (__i386__) && !defined (__x86_64__) -grub_err_t -grub_arch_dl_get_tramp_got_size (const void *ehdr __attribute__ ((unused)), - grub_size_t *tramp, grub_size_t *got) -{ - *tramp = 0; - *got = 0; - return GRUB_ERR_BAD_MODULE; -} -#endif - -#ifdef GRUB_LINKER_HAVE_INIT -void -grub_arch_dl_init_linker (void) -{ -} -#endif - diff --git a/thirdparty/grub-2.04/grub-core/kern/emu/hostdisk.c b/thirdparty/grub-2.04/grub-core/kern/emu/hostdisk.c deleted file mode 100644 index e9ec680cd..000000000 --- a/thirdparty/grub-2.04/grub-core/kern/emu/hostdisk.c +++ /dev/null @@ -1,686 +0,0 @@ -/* hostdisk.c - emulate biosdisk */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 1999,2000,2001,2002,2003,2004,2006,2007,2008,2009,2010 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#ifdef __linux__ -# include /* ioctl */ -# include -# ifndef BLKFLSBUF -# define BLKFLSBUF _IO (0x12,97) /* flush buffer cache */ -# endif /* ! BLKFLSBUF */ -#endif /* __linux__ */ - -static struct -{ - char *drive; - char *device; - int device_map; -} map[256]; - -static int -unescape_cmp (const char *a, const char *b_escaped) -{ - while (*a || *b_escaped) - { - if (*b_escaped == '\\' && b_escaped[1] != 0) - b_escaped++; - if (*a < *b_escaped) - return -1; - if (*a > *b_escaped) - return +1; - a++; - b_escaped++; - } - if (*a) - return +1; - if (*b_escaped) - return -1; - return 0; -} - -static int -find_grub_drive (const char *name) -{ - unsigned int i; - - if (name) - { - for (i = 0; i < ARRAY_SIZE (map); i++) - if (map[i].drive && unescape_cmp (map[i].drive, name) == 0) - return i; - } - - return -1; -} - -static int -find_free_slot (void) -{ - unsigned int i; - - for (i = 0; i < ARRAY_SIZE (map); i++) - if (! map[i].drive) - return i; - - return -1; -} - -static int -grub_util_biosdisk_iterate (grub_disk_dev_iterate_hook_t hook, void *hook_data, - grub_disk_pull_t pull) -{ - unsigned i; - - if (pull != GRUB_DISK_PULL_NONE) - return 0; - - for (i = 0; i < ARRAY_SIZE (map); i++) - if (map[i].drive && hook (map[i].drive, hook_data)) - return 1; - - return 0; -} - -static grub_err_t -grub_util_biosdisk_open (const char *name, grub_disk_t disk) -{ - int drive; - struct grub_util_hostdisk_data *data; - - drive = find_grub_drive (name); - grub_util_info ("drive = %d", drive); - if (drive < 0) - return grub_error (GRUB_ERR_UNKNOWN_DEVICE, - "no mapping exists for `%s'", name); - - disk->id = drive; - disk->data = data = xmalloc (sizeof (struct grub_util_hostdisk_data)); - data->dev = NULL; - data->access_mode = 0; - data->fd = GRUB_UTIL_FD_INVALID; - data->is_disk = 0; - data->device_map = map[drive].device_map; - - /* Get the size. */ - { - grub_util_fd_t fd; - - fd = grub_util_fd_open (map[drive].device, GRUB_UTIL_FD_O_RDONLY); - - if (!GRUB_UTIL_FD_IS_VALID(fd)) - return grub_error (GRUB_ERR_UNKNOWN_DEVICE, N_("cannot open `%s': %s"), - map[drive].device, grub_util_fd_strerror ()); - - disk->total_sectors = grub_util_get_fd_size (fd, map[drive].device, - &disk->log_sector_size); - disk->total_sectors >>= disk->log_sector_size; - disk->max_agglomerate = GRUB_DISK_MAX_MAX_AGGLOMERATE; - -#if GRUB_UTIL_FD_STAT_IS_FUNCTIONAL - { - struct stat st; -# if GRUB_DISK_DEVS_ARE_CHAR - if (fstat (fd, &st) >= 0 && S_ISCHR (st.st_mode)) -# else - if (fstat (fd, &st) >= 0 && S_ISBLK (st.st_mode)) -# endif - data->is_disk = 1; - } -#endif - - grub_util_fd_close (fd); - - grub_util_info ("the size of %s is %" GRUB_HOST_PRIuLONG_LONG, - name, (unsigned long long) disk->total_sectors); - - return GRUB_ERR_NONE; - } -} - -const char * -grub_hostdisk_os_dev_to_grub_drive (const char *os_disk, int add) -{ - unsigned int i; - char *canon; - - canon = grub_canonicalize_file_name (os_disk); - if (!canon) - canon = xstrdup (os_disk); - - for (i = 0; i < ARRAY_SIZE (map); i++) - if (! map[i].device) - break; - else if (strcmp (map[i].device, canon) == 0) - { - free (canon); - return map[i].drive; - } - - if (!add) - { - free (canon); - return NULL; - } - - if (i == ARRAY_SIZE (map)) - /* TRANSLATORS: it refers to the lack of free slots. */ - grub_util_error ("%s", _("device count exceeds limit")); - - map[i].device = canon; - map[i].drive = xmalloc (sizeof ("hostdisk/") + strlen (os_disk)); - strcpy (map[i].drive, "hostdisk/"); - strcpy (map[i].drive + sizeof ("hostdisk/") - 1, os_disk); - map[i].device_map = 0; - - grub_hostdisk_flush_initial_buffer (os_disk); - - return map[i].drive; -} - -#ifndef __linux__ -grub_util_fd_t -grub_util_fd_open_device (const grub_disk_t disk, grub_disk_addr_t sector, int flags, - grub_disk_addr_t *max) -{ - grub_util_fd_t fd; - struct grub_util_hostdisk_data *data = disk->data; - - *max = ~0ULL; - - flags |= GRUB_UTIL_FD_O_SYNC; - - if (data->dev && strcmp (data->dev, map[disk->id].device) == 0 && - data->access_mode == (flags & O_ACCMODE)) - { - grub_dprintf ("hostdisk", "reusing open device `%s'\n", data->dev); - fd = data->fd; - } - else - { - free (data->dev); - data->dev = 0; - if (GRUB_UTIL_FD_IS_VALID(data->fd)) - { - if (data->access_mode == O_RDWR || data->access_mode == O_WRONLY) - grub_util_fd_sync (data->fd); - grub_util_fd_close (data->fd); - data->fd = GRUB_UTIL_FD_INVALID; - } - - fd = grub_util_fd_open (map[disk->id].device, flags); - if (GRUB_UTIL_FD_IS_VALID(fd)) - { - data->dev = xstrdup (map[disk->id].device); - data->access_mode = (flags & O_ACCMODE); - data->fd = fd; - } - } - - if (!GRUB_UTIL_FD_IS_VALID(data->fd)) - { - grub_error (GRUB_ERR_BAD_DEVICE, N_("cannot open `%s': %s"), - map[disk->id].device, grub_util_fd_strerror ()); - return GRUB_UTIL_FD_INVALID; - } - - if (grub_util_fd_seek (fd, sector << disk->log_sector_size)) - { - grub_util_fd_close (fd); - grub_error (GRUB_ERR_BAD_DEVICE, N_("cannot seek `%s': %s"), - map[disk->id].device, grub_util_fd_strerror ()); - - return GRUB_UTIL_FD_INVALID; - } - - return fd; -} -#endif - - -static grub_err_t -grub_util_biosdisk_read (grub_disk_t disk, grub_disk_addr_t sector, - grub_size_t size, char *buf) -{ - while (size) - { - grub_util_fd_t fd; - grub_disk_addr_t max = ~0ULL; - fd = grub_util_fd_open_device (disk, sector, GRUB_UTIL_FD_O_RDONLY, &max); - if (!GRUB_UTIL_FD_IS_VALID (fd)) - return grub_errno; - -#ifdef __linux__ - if (sector == 0) - /* Work around a bug in Linux ez remapping. Linux remaps all - sectors that are read together with the MBR in one read. It - should only remap the MBR, so we split the read in two - parts. -jochen */ - max = 1; -#endif /* __linux__ */ - - if (max > size) - max = size; - - if (grub_util_fd_read (fd, buf, max << disk->log_sector_size) - != (ssize_t) (max << disk->log_sector_size)) - return grub_error (GRUB_ERR_READ_ERROR, N_("cannot read `%s': %s"), - map[disk->id].device, grub_util_fd_strerror ()); - size -= max; - buf += (max << disk->log_sector_size); - sector += max; - } - return GRUB_ERR_NONE; -} - -static grub_err_t -grub_util_biosdisk_write (grub_disk_t disk, grub_disk_addr_t sector, - grub_size_t size, const char *buf) -{ - while (size) - { - grub_util_fd_t fd; - grub_disk_addr_t max = ~0ULL; - fd = grub_util_fd_open_device (disk, sector, GRUB_UTIL_FD_O_WRONLY, &max); - if (!GRUB_UTIL_FD_IS_VALID (fd)) - return grub_errno; - -#ifdef __linux__ - if (sector == 0) - /* Work around a bug in Linux ez remapping. Linux remaps all - sectors that are write together with the MBR in one write. It - should only remap the MBR, so we split the write in two - parts. -jochen */ - max = 1; -#endif /* __linux__ */ - - if (max > size) - max = size; - - if (grub_util_fd_write (fd, buf, max << disk->log_sector_size) - != (ssize_t) (max << disk->log_sector_size)) - return grub_error (GRUB_ERR_WRITE_ERROR, N_("cannot write to `%s': %s"), - map[disk->id].device, grub_util_fd_strerror ()); - size -= max; - buf += (max << disk->log_sector_size); - } - return GRUB_ERR_NONE; -} - -grub_err_t -grub_util_biosdisk_flush (struct grub_disk *disk) -{ - struct grub_util_hostdisk_data *data = disk->data; - - if (disk->dev->id != GRUB_DISK_DEVICE_BIOSDISK_ID) - return GRUB_ERR_NONE; - if (!GRUB_UTIL_FD_IS_VALID (data->fd)) - { - grub_disk_addr_t max; - data->fd = grub_util_fd_open_device (disk, 0, GRUB_UTIL_FD_O_RDONLY, &max); - if (!GRUB_UTIL_FD_IS_VALID (data->fd)) - return grub_errno; - } - grub_util_fd_sync (data->fd); -#ifdef __linux__ - if (data->is_disk) - ioctl (data->fd, BLKFLSBUF, 0); -#endif - return GRUB_ERR_NONE; -} - -static void -grub_util_biosdisk_close (struct grub_disk *disk) -{ - struct grub_util_hostdisk_data *data = disk->data; - - free (data->dev); - if (GRUB_UTIL_FD_IS_VALID (data->fd)) - { - if (data->access_mode == O_RDWR || data->access_mode == O_WRONLY) - grub_util_biosdisk_flush (disk); - grub_util_fd_close (data->fd); - } - free (data); -} - -static struct grub_disk_dev grub_util_biosdisk_dev = - { - .name = "hostdisk", - .id = GRUB_DISK_DEVICE_HOSTDISK_ID, - .disk_iterate = grub_util_biosdisk_iterate, - .disk_open = grub_util_biosdisk_open, - .disk_close = grub_util_biosdisk_close, - .disk_read = grub_util_biosdisk_read, - .disk_write = grub_util_biosdisk_write, - .next = 0 - }; - -static int -grub_util_check_file_presence (const char *p) -{ -#if !GRUB_UTIL_FD_STAT_IS_FUNCTIONAL - grub_util_fd_t h; - h = grub_util_fd_open (p, GRUB_UTIL_FD_O_RDONLY); - if (!GRUB_UTIL_FD_IS_VALID(h)) - return 0; - grub_util_fd_close (h); - return 1; -#else - struct stat st; - - if (stat (p, &st) == -1) - return 0; - return 1; -#endif -} - -static void -read_device_map (const char *dev_map) -{ - FILE *fp; - char buf[1024]; /* XXX */ - int lineno = 0; - - if (!dev_map || dev_map[0] == '\0') - { - grub_util_info ("no device.map"); - return; - } - - fp = grub_util_fopen (dev_map, "r"); - if (! fp) - { - grub_util_info (_("cannot open `%s': %s"), dev_map, strerror (errno)); - return; - } - - while (fgets (buf, sizeof (buf), fp)) - { - char *p = buf; - char *e; - char *drive_e, *drive_p; - int drive; - - lineno++; - - /* Skip leading spaces. */ - while (*p && grub_isspace (*p)) - p++; - - /* If the first character is `#' or NUL, skip this line. */ - if (*p == '\0' || *p == '#') - continue; - - if (*p != '(') - { - char *tmp; - tmp = xasprintf (_("missing `%c' symbol"), '('); - grub_util_error ("%s:%d: %s", dev_map, lineno, tmp); - } - - p++; - /* Find a free slot. */ - drive = find_free_slot (); - if (drive < 0) - grub_util_error ("%s:%d: %s", dev_map, lineno, _("device count exceeds limit")); - - e = p; - p = strchr (p, ')'); - if (! p) - { - char *tmp; - tmp = xasprintf (_("missing `%c' symbol"), ')'); - grub_util_error ("%s:%d: %s", dev_map, lineno, tmp); - } - - map[drive].drive = 0; - if ((e[0] == 'f' || e[0] == 'h' || e[0] == 'c') && e[1] == 'd') - { - char *ptr; - for (ptr = e + 2; ptr < p; ptr++) - if (!grub_isdigit (*ptr)) - break; - if (ptr == p) - { - map[drive].drive = xmalloc (p - e + sizeof ('\0')); - strncpy (map[drive].drive, e, p - e + sizeof ('\0')); - map[drive].drive[p - e] = '\0'; - } - if (*ptr == ',') - { - *p = 0; - - /* TRANSLATORS: Only one entry is ignored. However the suggestion - is to correct/delete the whole file. - device.map is a file indicating which - devices are available at boot time. Fedora populated it with - entries like (hd0,1) /dev/sda1 which would mean that every - partition is a separate disk for BIOS. Such entries were - inactive in GRUB due to its bug which is now gone. Without - this additional check these entries would be harmful now. - */ - grub_util_warn (_("the device.map entry `%s' is invalid. " - "Ignoring it. Please correct or " - "delete your device.map"), e); - continue; - } - } - drive_e = e; - drive_p = p; - map[drive].device_map = 1; - - p++; - /* Skip leading spaces. */ - while (*p && grub_isspace (*p)) - p++; - - if (*p == '\0') - grub_util_error ("%s:%d: %s", dev_map, lineno, _("filename expected")); - - /* NUL-terminate the filename. */ - e = p; - while (*e && ! grub_isspace (*e)) - e++; - *e = '\0'; - - if (!grub_util_check_file_presence (p)) - { - free (map[drive].drive); - map[drive].drive = NULL; - grub_util_info ("Cannot stat `%s', skipping", p); - continue; - } - - /* On Linux, the devfs uses symbolic links horribly, and that - confuses the interface very much, so use realpath to expand - symbolic links. */ - map[drive].device = grub_canonicalize_file_name (p); - if (! map[drive].device) - map[drive].device = xstrdup (p); - - if (!map[drive].drive) - { - char c; - map[drive].drive = xmalloc (sizeof ("hostdisk/") + strlen (p)); - memcpy (map[drive].drive, "hostdisk/", sizeof ("hostdisk/") - 1); - strcpy (map[drive].drive + sizeof ("hostdisk/") - 1, p); - c = *drive_p; - *drive_p = 0; - /* TRANSLATORS: device.map is a filename. Not to be translated. - device.map specifies disk correspondance overrides. Previously - one could create any kind of device name with this. Due to - some problems we decided to limit it to just a handful - possibilities. */ - grub_util_warn (_("the drive name `%s' in device.map is incorrect. " - "Using %s instead. " - "Please use the form [hfc]d[0-9]* " - "(E.g. `hd0' or `cd')"), - drive_e, map[drive].drive); - *drive_p = c; - } - - grub_util_info ("adding `%s' -> `%s' from device.map", map[drive].drive, - map[drive].device); - - grub_hostdisk_flush_initial_buffer (map[drive].device); - } - - fclose (fp); -} - -void -grub_util_biosdisk_init (const char *dev_map) -{ - read_device_map (dev_map); - grub_disk_dev_register (&grub_util_biosdisk_dev); -} - -void -grub_util_biosdisk_fini (void) -{ - unsigned i; - - for (i = 0; i < ARRAY_SIZE(map); i++) - { - if (map[i].drive) - free (map[i].drive); - if (map[i].device) - free (map[i].device); - map[i].drive = map[i].device = NULL; - } - - grub_disk_dev_unregister (&grub_util_biosdisk_dev); -} - -const char * -grub_util_biosdisk_get_compatibility_hint (grub_disk_t disk) -{ - if (disk->dev != &grub_util_biosdisk_dev || map[disk->id].device_map) - return disk->name; - return 0; -} - -const char * -grub_util_biosdisk_get_osdev (grub_disk_t disk) -{ - if (disk->dev != &grub_util_biosdisk_dev) - return 0; - - return map[disk->id].device; -} - - -static char * -grub_util_path_concat_real (size_t n, int ext, va_list ap) -{ - size_t totlen = 0; - char **l = xmalloc ((n + ext) * sizeof (l[0])); - char *r, *p, *pi; - size_t i; - int first = 1; - - for (i = 0; i < n + ext; i++) - { - l[i] = va_arg (ap, char *); - if (l[i]) - totlen += strlen (l[i]) + 1; - } - - r = xmalloc (totlen + 10); - - p = r; - for (i = 0; i < n; i++) - { - pi = l[i]; - if (!pi) - continue; - while (*pi == '/') - pi++; - if ((p != r || (pi != l[i] && first)) && (p == r || *(p - 1) != '/')) - *p++ = '/'; - first = 0; - p = grub_stpcpy (p, pi); - while (p != r && p != r + 1 && *(p - 1) == '/') - p--; - } - - if (ext && l[i]) - p = grub_stpcpy (p, l[i]); - - *p = '\0'; - - free (l); - - return r; -} - -char * -grub_util_path_concat (size_t n, ...) -{ - va_list ap; - char *r; - - va_start (ap, n); - - r = grub_util_path_concat_real (n, 0, ap); - - va_end (ap); - - return r; -} - -char * -grub_util_path_concat_ext (size_t n, ...) -{ - va_list ap; - char *r; - - va_start (ap, n); - - r = grub_util_path_concat_real (n, 1, ap); - - va_end (ap); - - return r; -} diff --git a/thirdparty/grub-2.04/grub-core/kern/emu/hostfs.c b/thirdparty/grub-2.04/grub-core/kern/emu/hostfs.c deleted file mode 100644 index cb532105e..000000000 --- a/thirdparty/grub-2.04/grub-core/kern/emu/hostfs.c +++ /dev/null @@ -1,200 +0,0 @@ -/* hostfs.c - Dummy filesystem to provide access to the hosts filesystem */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2007,2008,2009,2010 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include - -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#include -#include -#include - -static int -is_dir (const char *path, const char *name) -{ - int len1 = strlen(path); - int len2 = strlen(name); - int ret; - - char *pathname = xmalloc (len1 + 1 + len2 + 1 + 13); - strcpy (pathname, path); - - /* Avoid UNC-path "//name" on Cygwin. */ - if (len1 > 0 && pathname[len1 - 1] != '/') - strcat (pathname, "/"); - - strcat (pathname, name); - - ret = grub_util_is_directory (pathname); - free (pathname); - return ret; -} - -struct grub_hostfs_data -{ - char *filename; - grub_util_fd_t f; -}; - -static grub_err_t -grub_hostfs_dir (grub_device_t device, const char *path, - grub_fs_dir_hook_t hook, void *hook_data) -{ - grub_util_fd_dir_t dir; - - /* Check if the disk is our dummy disk. */ - if (grub_strcmp (device->disk->name, "host")) - return grub_error (GRUB_ERR_BAD_FS, "not a hostfs"); - - dir = grub_util_fd_opendir (path); - if (! dir) - return grub_error (GRUB_ERR_BAD_FILENAME, - N_("can't open `%s': %s"), path, - grub_util_fd_strerror ()); - - while (1) - { - grub_util_fd_dirent_t de; - struct grub_dirhook_info info; - grub_memset (&info, 0, sizeof (info)); - - de = grub_util_fd_readdir (dir); - if (! de) - break; - - info.dir = !! is_dir (path, de->d_name); - hook (de->d_name, &info, hook_data); - - } - - grub_util_fd_closedir (dir); - - return GRUB_ERR_NONE; -} - -/* Open a file named NAME and initialize FILE. */ -static grub_err_t -grub_hostfs_open (struct grub_file *file, const char *name) -{ - grub_util_fd_t f; - struct grub_hostfs_data *data; - - f = grub_util_fd_open (name, GRUB_UTIL_FD_O_RDONLY); - if (! GRUB_UTIL_FD_IS_VALID (f)) - return grub_error (GRUB_ERR_BAD_FILENAME, - N_("can't open `%s': %s"), name, - strerror (errno)); - data = grub_malloc (sizeof (*data)); - if (!data) - { - grub_util_fd_close (f); - return grub_errno; - } - data->filename = grub_strdup (name); - if (!data->filename) - { - grub_free (data); - grub_util_fd_close (f); - return grub_errno; - } - - data->f = f; - - file->data = data; - - file->size = grub_util_get_fd_size (f, name, NULL); - - return GRUB_ERR_NONE; -} - -static grub_ssize_t -grub_hostfs_read (grub_file_t file, char *buf, grub_size_t len) -{ - struct grub_hostfs_data *data; - - data = file->data; - if (grub_util_fd_seek (data->f, file->offset) != 0) - { - grub_error (GRUB_ERR_OUT_OF_RANGE, N_("cannot seek `%s': %s"), - data->filename, grub_util_fd_strerror ()); - return -1; - } - - unsigned int s = grub_util_fd_read (data->f, buf, len); - if (s != len) - grub_error (GRUB_ERR_FILE_READ_ERROR, N_("cannot read `%s': %s"), - data->filename, grub_util_fd_strerror ()); - - return (signed) s; -} - -static grub_err_t -grub_hostfs_close (grub_file_t file) -{ - struct grub_hostfs_data *data; - - data = file->data; - grub_util_fd_close (data->f); - grub_free (data->filename); - grub_free (data); - - return GRUB_ERR_NONE; -} - -static grub_err_t -grub_hostfs_label (grub_device_t device __attribute ((unused)), - char **label __attribute ((unused))) -{ - *label = 0; - return GRUB_ERR_NONE; -} - -#undef open -#undef close - -static struct grub_fs grub_hostfs_fs = - { - .name = "hostfs", - .fs_dir = grub_hostfs_dir, - .fs_open = grub_hostfs_open, - .fs_read = grub_hostfs_read, - .fs_close = grub_hostfs_close, - .fs_label = grub_hostfs_label, - .next = 0 - }; - - - -GRUB_MOD_INIT(hostfs) -{ - grub_fs_register (&grub_hostfs_fs); -} - -GRUB_MOD_FINI(hostfs) -{ - grub_fs_unregister (&grub_hostfs_fs); -} diff --git a/thirdparty/grub-2.04/grub-core/kern/emu/lite.c b/thirdparty/grub-2.04/grub-core/kern/emu/lite.c deleted file mode 100644 index b327d4e41..000000000 --- a/thirdparty/grub-2.04/grub-core/kern/emu/lite.c +++ /dev/null @@ -1,47 +0,0 @@ -#include -#include - -#ifndef GRUB_MACHINE_EMU -#error "This source is only meant for grub-emu platform" -#endif - -#if defined(__i386__) -#include "../i386/dl.c" -#elif defined(__x86_64__) -#include "../x86_64/dl.c" -#elif defined(__sparc__) -#include "../sparc64/dl.c" -#elif defined(__mips__) -#include "../mips/dl.c" -#elif defined(__powerpc__) -#include "../powerpc/dl.c" -#elif defined(__ia64__) -#include "../ia64/dl_helper.c" -#include "../ia64/dl.c" -#elif defined(__arm__) -#include "../arm/dl_helper.c" -#include "../arm/dl.c" -#elif defined(__aarch64__) -#include "../arm64/dl_helper.c" -#include "../arm64/dl.c" -#elif defined(__riscv) -#include "../riscv/dl.c" -#else -#error "No target cpu type is defined" -#endif - -const int grub_no_modules = 0; - -/* grub-emu-lite supports dynamic module loading, so it won't have any - embedded modules. */ -void -grub_init_all (void) -{ - return; -} - -void -grub_fini_all (void) -{ - return; -} diff --git a/thirdparty/grub-2.04/grub-core/kern/emu/main.c b/thirdparty/grub-2.04/grub-core/kern/emu/main.c deleted file mode 100644 index 425bb9603..000000000 --- a/thirdparty/grub-2.04/grub-core/kern/emu/main.c +++ /dev/null @@ -1,286 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2003,2004,2005,2006,2007,2008,2009,2010 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include - -#include -#include -#include -#include -#include -#include -#include - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#pragma GCC diagnostic ignored "-Wmissing-prototypes" - -#include "progname.h" -#include - -#define ENABLE_RELOCATABLE 0 - -/* Used for going back to the main function. */ -static jmp_buf main_env; - -/* Store the prefix specified by an argument. */ -static char *root_dev = NULL, *dir = NULL; - -grub_addr_t grub_modbase = 0; - -void -grub_reboot (void) -{ - longjmp (main_env, 1); - grub_fatal ("longjmp failed"); -} - -void -grub_exit (void) -{ - grub_reboot (); -} - -void -grub_machine_init (void) -{ -} - -void -grub_machine_get_bootlocation (char **device, char **path) -{ - *device = root_dev; - *path = dir; -} - -void -grub_machine_fini (int flags) -{ - if (flags & GRUB_LOADER_FLAG_NORETURN) - grub_console_fini (); -} - - - -#define OPT_MEMDISK 257 - -static struct argp_option options[] = { - {"root", 'r', N_("DEVICE_NAME"), 0, N_("Set root device."), 2}, - {"device-map", 'm', N_("FILE"), 0, - /* TRANSLATORS: There are many devices in device map. */ - N_("use FILE as the device map [default=%s]"), 0}, - {"memdisk", OPT_MEMDISK, N_("FILE"), 0, - /* TRANSLATORS: There are many devices in device map. */ - N_("use FILE as memdisk"), 0}, - {"directory", 'd', N_("DIR"), 0, - N_("use GRUB files in the directory DIR [default=%s]"), 0}, - {"verbose", 'v', 0, 0, N_("print verbose messages."), 0}, - {"hold", 'H', N_("SECS"), OPTION_ARG_OPTIONAL, N_("wait until a debugger will attach"), 0}, - { 0, 0, 0, 0, 0, 0 } -}; - -#pragma GCC diagnostic ignored "-Wformat-nonliteral" - -static char * -help_filter (int key, const char *text, void *input __attribute__ ((unused))) -{ - switch (key) - { - case 'd': - return xasprintf (text, DEFAULT_DIRECTORY); - case 'm': - return xasprintf (text, DEFAULT_DEVICE_MAP); - default: - return (char *) text; - } -} - -#pragma GCC diagnostic error "-Wformat-nonliteral" - -struct arguments -{ - const char *dev_map; - const char *mem_disk; - int hold; -}; - -static error_t -argp_parser (int key, char *arg, struct argp_state *state) -{ - /* Get the input argument from argp_parse, which we - know is a pointer to our arguments structure. */ - struct arguments *arguments = state->input; - - switch (key) - { - case OPT_MEMDISK: - arguments->mem_disk = arg; - break; - case 'r': - free (root_dev); - root_dev = xstrdup (arg); - break; - case 'd': - free (dir); - dir = xstrdup (arg); - break; - case 'm': - arguments->dev_map = arg; - break; - case 'H': - arguments->hold = (arg ? atoi (arg) : -1); - break; - case 'v': - verbosity++; - break; - - case ARGP_KEY_ARG: - { - /* Too many arguments. */ - fprintf (stderr, _("Unknown extra argument `%s'."), arg); - fprintf (stderr, "\n"); - argp_usage (state); - } - break; - - default: - return ARGP_ERR_UNKNOWN; - } - return 0; -} - -static struct argp argp = { - options, argp_parser, NULL, - N_("GRUB emulator."), - NULL, help_filter, NULL -}; - - - -#pragma GCC diagnostic ignored "-Wmissing-prototypes" - -int -main (int argc, char *argv[]) -{ - struct arguments arguments = - { - .dev_map = DEFAULT_DEVICE_MAP, - .hold = 0, - .mem_disk = 0, - }; - volatile int hold = 0; - size_t total_module_size = sizeof (struct grub_module_info), memdisk_size = 0; - struct grub_module_info *modinfo; - void *mods; - - grub_util_host_init (&argc, &argv); - - dir = xstrdup (DEFAULT_DIRECTORY); - - if (argp_parse (&argp, argc, argv, 0, 0, &arguments) != 0) - { - fprintf (stderr, "%s", _("Error in parsing command line arguments\n")); - exit(1); - } - - if (arguments.mem_disk) - { - memdisk_size = ALIGN_UP(grub_util_get_image_size (arguments.mem_disk), 512); - total_module_size += memdisk_size + sizeof (struct grub_module_header); - } - - mods = xmalloc (total_module_size); - modinfo = grub_memset (mods, 0, total_module_size); - mods = (char *) (modinfo + 1); - - modinfo->magic = GRUB_MODULE_MAGIC; - modinfo->offset = sizeof (struct grub_module_info); - modinfo->size = total_module_size; - - if (arguments.mem_disk) - { - struct grub_module_header *header = (struct grub_module_header *) mods; - header->type = OBJ_TYPE_MEMDISK; - header->size = memdisk_size + sizeof (*header); - mods = header + 1; - - grub_util_load_image (arguments.mem_disk, mods); - mods = (char *) mods + memdisk_size; - } - - grub_modbase = (grub_addr_t) modinfo; - - hold = arguments.hold; - /* Wait until the ARGS.HOLD variable is cleared by an attached debugger. */ - if (hold && verbosity > 0) - /* TRANSLATORS: In this case GRUB tells user what he has to do. */ - printf (_("Run `gdb %s %d', and set ARGS.HOLD to zero.\n"), - program_name, (int) getpid ()); - while (hold) - { - if (hold > 0) - hold--; - - sleep (1); - } - - signal (SIGINT, SIG_IGN); - grub_console_init (); - grub_host_init (); - - /* XXX: This is a bit unportable. */ - grub_util_biosdisk_init (arguments.dev_map); - - grub_init_all (); - - grub_hostfs_init (); - - /* Make sure that there is a root device. */ - if (! root_dev) - root_dev = grub_strdup ("host"); - - dir = xstrdup (dir); - - /* Start GRUB! */ - if (setjmp (main_env) == 0) - grub_main (); - - grub_fini_all (); - grub_hostfs_fini (); - grub_host_fini (); - - grub_machine_fini (GRUB_LOADER_FLAG_NORETURN); - - return 0; -} diff --git a/thirdparty/grub-2.04/grub-core/kern/emu/misc.c b/thirdparty/grub-2.04/grub-core/kern/emu/misc.c deleted file mode 100644 index 65db79baa..000000000 --- a/thirdparty/grub-2.04/grub-core/kern/emu/misc.c +++ /dev/null @@ -1,204 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2002,2003,2005,2006,2007,2008,2009,2010 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#ifndef GRUB_BUILD -#include -#endif -#include - -#include -#include -#include -#include -#include -#include -#include - -#include -#include -#include -#include -#include -#include -#include -#include - -int verbosity; - -void -grub_util_warn (const char *fmt, ...) -{ - va_list ap; - - fprintf (stderr, _("%s: warning:"), program_name); - fprintf (stderr, " "); - va_start (ap, fmt); - vfprintf (stderr, fmt, ap); - va_end (ap); - fprintf (stderr, ".\n"); - fflush (stderr); -} - -void -grub_util_info (const char *fmt, ...) -{ - if (verbosity > 0) - { - va_list ap; - - fprintf (stderr, _("%s: info:"), program_name); - fprintf (stderr, " "); - va_start (ap, fmt); - vfprintf (stderr, fmt, ap); - va_end (ap); - fprintf (stderr, ".\n"); - fflush (stderr); - } -} - -void -grub_util_error (const char *fmt, ...) -{ - va_list ap; - - fprintf (stderr, _("%s: error:"), program_name); - fprintf (stderr, " "); - va_start (ap, fmt); - vfprintf (stderr, fmt, ap); - va_end (ap); - fprintf (stderr, ".\n"); - exit (1); -} - -void * -xmalloc (grub_size_t size) -{ - void *p; - - p = malloc (size); - if (! p) - grub_util_error ("%s", _("out of memory")); - - return p; -} - -void * -xrealloc (void *ptr, grub_size_t size) -{ - ptr = realloc (ptr, size); - if (! ptr) - grub_util_error ("%s", _("out of memory")); - - return ptr; -} - -char * -xstrdup (const char *str) -{ - size_t len; - char *newstr; - - len = strlen (str); - newstr = (char *) xmalloc (len + 1); - memcpy (newstr, str, len + 1); - - return newstr; -} - -#if !defined (GRUB_MKFONT) && !defined (GRUB_BUILD) -char * -xasprintf (const char *fmt, ...) -{ - va_list ap; - char *result; - - va_start (ap, fmt); - result = grub_xvasprintf (fmt, ap); - va_end (ap); - if (!result) - grub_util_error ("%s", _("out of memory")); - - return result; -} -#endif - -#if !defined (GRUB_MACHINE_EMU) || defined (GRUB_UTIL) -void -grub_exit (void) -{ - exit (1); -} -#endif - -grub_uint64_t -grub_get_time_ms (void) -{ - struct timeval tv; - - gettimeofday (&tv, 0); - - return (tv.tv_sec * 1000 + tv.tv_usec / 1000); -} - -size_t -grub_util_get_image_size (const char *path) -{ - FILE *f; - size_t ret; - off_t sz; - - f = grub_util_fopen (path, "rb"); - - if (!f) - grub_util_error (_("cannot open `%s': %s"), path, strerror (errno)); - - fseeko (f, 0, SEEK_END); - - sz = ftello (f); - if (sz < 0) - grub_util_error (_("cannot open `%s': %s"), path, strerror (errno)); - if (sz != (size_t) sz) - grub_util_error (_("file `%s' is too big"), path); - ret = (size_t) sz; - - fclose (f); - - return ret; -} - -void -grub_util_load_image (const char *path, char *buf) -{ - FILE *fp; - size_t size; - - grub_util_info ("reading %s", path); - - size = grub_util_get_image_size (path); - - fp = grub_util_fopen (path, "rb"); - if (! fp) - grub_util_error (_("cannot open `%s': %s"), path, - strerror (errno)); - - if (fread (buf, 1, size, fp) != size) - grub_util_error (_("cannot read `%s': %s"), path, - strerror (errno)); - - fclose (fp); -} diff --git a/thirdparty/grub-2.04/grub-core/kern/emu/mm.c b/thirdparty/grub-2.04/grub-core/kern/emu/mm.c deleted file mode 100644 index f262e95e3..000000000 --- a/thirdparty/grub-2.04/grub-core/kern/emu/mm.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2002,2003,2005,2006,2007,2008,2009,2010 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include - -#include -#include -#include -#include -#include -#include - -void * -grub_malloc (grub_size_t size) -{ - void *ret; - ret = malloc (size); - if (!ret) - grub_error (GRUB_ERR_OUT_OF_MEMORY, N_("out of memory")); - return ret; -} - -void * -grub_zalloc (grub_size_t size) -{ - void *ret; - - ret = grub_malloc (size); - if (!ret) - return NULL; - memset (ret, 0, size); - return ret; -} - -void -grub_free (void *ptr) -{ - free (ptr); -} - -void * -grub_realloc (void *ptr, grub_size_t size) -{ - void *ret; - ret = realloc (ptr, size); - if (!ret) - grub_error (GRUB_ERR_OUT_OF_MEMORY, N_("out of memory")); - return ret; -} diff --git a/thirdparty/grub-2.04/grub-core/kern/emu/time.c b/thirdparty/grub-2.04/grub-core/kern/emu/time.c deleted file mode 100644 index 5da8092a9..000000000 --- a/thirdparty/grub-2.04/grub-core/kern/emu/time.c +++ /dev/null @@ -1,46 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2010 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include - -grub_err_t -grub_get_datetime (struct grub_datetime *datetime) -{ - struct tm *mytm; - time_t mytime; - - mytime = time (&mytime); - mytm = gmtime (&mytime); - - datetime->year = mytm->tm_year + 1900; - datetime->month = mytm->tm_mon + 1; - datetime->day = mytm->tm_mday; - datetime->hour = mytm->tm_hour; - datetime->minute = mytm->tm_min; - datetime->second = mytm->tm_sec; - - return GRUB_ERR_NONE; -} - -grub_err_t -grub_set_datetime (struct grub_datetime *datetime __attribute__ ((unused))) -{ - return grub_error (GRUB_ERR_NOT_IMPLEMENTED_YET, - "no clock setting routine available"); -} diff --git a/thirdparty/grub-2.04/grub-core/kern/env.c b/thirdparty/grub-2.04/grub-core/kern/env.c deleted file mode 100644 index c40862642..000000000 --- a/thirdparty/grub-2.04/grub-core/kern/env.c +++ /dev/null @@ -1,238 +0,0 @@ -/* env.c - Environment variables */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2003,2005,2006,2007,2008,2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include - -/* The initial context. */ -static struct grub_env_context initial_context; - -/* The current context. */ -struct grub_env_context *grub_current_context = &initial_context; - -/* Return the hash representation of the string S. */ -static unsigned int -grub_env_hashval (const char *s) -{ - unsigned int i = 0; - - /* XXX: This can be done much more efficiently. */ - while (*s) - i += 5 * *(s++); - - return i % HASHSZ; -} - -static struct grub_env_var * -grub_env_find (const char *name) -{ - struct grub_env_var *var; - int idx = grub_env_hashval (name); - - /* Look for the variable in the current context. */ - for (var = grub_current_context->vars[idx]; var; var = var->next) - if (grub_strcmp (var->name, name) == 0) - return var; - - return 0; -} - -static void -grub_env_insert (struct grub_env_context *context, - struct grub_env_var *var) -{ - int idx = grub_env_hashval (var->name); - - /* Insert the variable into the hashtable. */ - var->prevp = &context->vars[idx]; - var->next = context->vars[idx]; - if (var->next) - var->next->prevp = &(var->next); - context->vars[idx] = var; -} - -static void -grub_env_remove (struct grub_env_var *var) -{ - /* Remove the entry from the variable table. */ - *var->prevp = var->next; - if (var->next) - var->next->prevp = var->prevp; -} - -grub_err_t -grub_env_set (const char *name, const char *val) -{ - struct grub_env_var *var; - - /* If the variable does already exist, just update the variable. */ - var = grub_env_find (name); - if (var) - { - char *old = var->value; - - if (var->write_hook) - var->value = var->write_hook (var, val); - else - var->value = grub_strdup (val); - - if (! var->value) - { - var->value = old; - return grub_errno; - } - - grub_free (old); - return GRUB_ERR_NONE; - } - - /* The variable does not exist, so create a new one. */ - var = grub_zalloc (sizeof (*var)); - if (! var) - return grub_errno; - - var->name = grub_strdup (name); - if (! var->name) - goto fail; - - var->value = grub_strdup (val); - if (! var->value) - goto fail; - - grub_env_insert (grub_current_context, var); - - return GRUB_ERR_NONE; - - fail: - grub_free (var->name); - grub_free (var->value); - grub_free (var); - - return grub_errno; -} - -const char * -grub_env_get (const char *name) -{ - struct grub_env_var *var; - - var = grub_env_find (name); - if (! var) - return 0; - - if (var->read_hook) - return var->read_hook (var, var->value); - - return var->value; -} - -void -grub_env_unset (const char *name) -{ - struct grub_env_var *var; - - var = grub_env_find (name); - if (! var) - return; - - if (var->read_hook || var->write_hook) - { - grub_env_set (name, ""); - return; - } - - grub_env_remove (var); - - grub_free (var->name); - grub_free (var->value); - grub_free (var); -} - -struct grub_env_var * -grub_env_update_get_sorted (void) -{ - struct grub_env_var *sorted_list = 0; - int i; - - /* Add variables associated with this context into a sorted list. */ - for (i = 0; i < HASHSZ; i++) - { - struct grub_env_var *var; - - for (var = grub_current_context->vars[i]; var; var = var->next) - { - struct grub_env_var *p, **q; - - for (q = &sorted_list, p = *q; p; q = &((*q)->sorted_next), p = *q) - { - if (grub_strcmp (p->name, var->name) > 0) - break; - } - - var->sorted_next = *q; - *q = var; - } - } - - return sorted_list; -} - -grub_err_t -grub_register_variable_hook (const char *name, - grub_env_read_hook_t read_hook, - grub_env_write_hook_t write_hook) -{ - struct grub_env_var *var = grub_env_find (name); - - if (! var) - { - if (grub_env_set (name, "") != GRUB_ERR_NONE) - return grub_errno; - - var = grub_env_find (name); - /* XXX Insert an assertion? */ - } - - var->read_hook = read_hook; - var->write_hook = write_hook; - - return GRUB_ERR_NONE; -} - -grub_err_t -grub_env_export (const char *name) -{ - struct grub_env_var *var; - - var = grub_env_find (name); - if (! var) - { - grub_err_t err; - - err = grub_env_set (name, ""); - if (err) - return err; - var = grub_env_find (name); - } - var->global = 1; - - return GRUB_ERR_NONE; -} diff --git a/thirdparty/grub-2.04/grub-core/kern/err.c b/thirdparty/grub-2.04/grub-core/kern/err.c deleted file mode 100644 index 53c734de7..000000000 --- a/thirdparty/grub-2.04/grub-core/kern/err.c +++ /dev/null @@ -1,122 +0,0 @@ -/* err.c - error handling routines */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2002,2005,2007,2008 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include - -#define GRUB_ERROR_STACK_SIZE 10 - -grub_err_t grub_errno; -char grub_errmsg[GRUB_MAX_ERRMSG]; -int grub_err_printed_errors; - -static struct grub_error_saved grub_error_stack_items[GRUB_ERROR_STACK_SIZE]; - -static int grub_error_stack_pos; -static int grub_error_stack_assert; - -grub_err_t -grub_error (grub_err_t n, const char *fmt, ...) -{ - va_list ap; - - grub_errno = n; - - va_start (ap, fmt); - grub_vsnprintf (grub_errmsg, sizeof (grub_errmsg), _(fmt), ap); - va_end (ap); - - return n; -} - -void -grub_error_push (void) -{ - /* Only add items to stack, if there is enough room. */ - if (grub_error_stack_pos < GRUB_ERROR_STACK_SIZE) - { - /* Copy active error message to stack. */ - grub_error_stack_items[grub_error_stack_pos].grub_errno = grub_errno; - grub_memcpy (grub_error_stack_items[grub_error_stack_pos].errmsg, - grub_errmsg, - sizeof (grub_errmsg)); - - /* Advance to next error stack position. */ - grub_error_stack_pos++; - } - else - { - /* There is no room for new error message. Discard new error message - and mark error stack assertion flag. */ - grub_error_stack_assert = 1; - } - - /* Allow further operation of other components by resetting - active errno to GRUB_ERR_NONE. */ - grub_errno = GRUB_ERR_NONE; -} - -int -grub_error_pop (void) -{ - if (grub_error_stack_pos > 0) - { - /* Pop error message from error stack to current active error. */ - grub_error_stack_pos--; - - grub_errno = grub_error_stack_items[grub_error_stack_pos].grub_errno; - grub_memcpy (grub_errmsg, - grub_error_stack_items[grub_error_stack_pos].errmsg, - sizeof (grub_errmsg)); - - return 1; - } - else - { - /* There is no more items on error stack, reset to no error state. */ - grub_errno = GRUB_ERR_NONE; - - return 0; - } -} - -void -grub_print_error (void) -{ - /* Print error messages in reverse order. First print active error message - and then empty error stack. */ - do - { - if (grub_errno != GRUB_ERR_NONE) - { - grub_err_printf (_("error: %s.\n"), grub_errmsg); - grub_err_printed_errors++; - } - } - while (grub_error_pop ()); - - /* If there was an assert while using error stack, report about it. */ - if (grub_error_stack_assert) - { - grub_err_printf ("assert: error stack overflow detected!\n"); - grub_error_stack_assert = 0; - } -} diff --git a/thirdparty/grub-2.04/grub-core/kern/file.c b/thirdparty/grub-2.04/grub-core/kern/file.c deleted file mode 100644 index 58454458c..000000000 --- a/thirdparty/grub-2.04/grub-core/kern/file.c +++ /dev/null @@ -1,218 +0,0 @@ -/* file.c - file I/O functions */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2002,2006,2007,2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include -#include - -void (*EXPORT_VAR (grub_grubnet_fini)) (void); - -grub_file_filter_t grub_file_filters[GRUB_FILE_FILTER_MAX]; - -/* Get the device part of the filename NAME. It is enclosed by parentheses. */ -char * -grub_file_get_device_name (const char *name) -{ - if (name[0] == '(') - { - char *p = grub_strchr (name, ')'); - char *ret; - - if (! p) - { - grub_error (GRUB_ERR_BAD_FILENAME, N_("missing `%c' symbol"), ')'); - return 0; - } - - ret = (char *) grub_malloc (p - name); - if (! ret) - return 0; - - grub_memcpy (ret, name + 1, p - name - 1); - ret[p - name - 1] = '\0'; - return ret; - } - - return 0; -} - -grub_file_t -grub_file_open (const char *name, enum grub_file_type type) -{ - grub_device_t device = 0; - grub_file_t file = 0, last_file = 0; - char *device_name; - const char *file_name; - grub_file_filter_id_t filter; - - device_name = grub_file_get_device_name (name); - if (grub_errno) - goto fail; - - /* Get the file part of NAME. */ - file_name = (name[0] == '(') ? grub_strchr (name, ')') : NULL; - if (file_name) - file_name++; - else - file_name = name; - - device = grub_device_open (device_name); - grub_free (device_name); - if (! device) - goto fail; - - file = (grub_file_t) grub_zalloc (sizeof (*file)); - if (! file) - goto fail; - - file->device = device; - - /* In case of relative pathnames and non-Unix systems (like Windows) - * name of host files may not start with `/'. Blocklists for host files - * are meaningless as well (for a start, host disk does not allow any direct - * access - it is just a marker). So skip host disk in this case. - */ - if (device->disk && file_name[0] != '/' -#if defined(GRUB_UTIL) || defined(GRUB_MACHINE_EMU) - && grub_strcmp (device->disk->name, "host") -#endif - ) - /* This is a block list. */ - file->fs = &grub_fs_blocklist; - else - { - file->fs = grub_fs_probe (device); - if (! file->fs) - goto fail; - } - - if ((file->fs->fs_open) (file, file_name) != GRUB_ERR_NONE) - goto fail; - - file->name = grub_strdup (name); - grub_errno = GRUB_ERR_NONE; - - for (filter = 0; file && filter < ARRAY_SIZE (grub_file_filters); - filter++) - if (grub_file_filters[filter]) - { - last_file = file; - file = grub_file_filters[filter] (file, type); - if (file && file != last_file) - { - file->name = grub_strdup (name); - grub_errno = GRUB_ERR_NONE; - } - } - if (!file) - grub_file_close (last_file); - - return file; - - fail: - if (device) - grub_device_close (device); - - /* if (net) grub_net_close (net); */ - - grub_free (file); - - return 0; -} - -grub_disk_read_hook_t grub_file_progress_hook; - -grub_ssize_t -grub_file_read (grub_file_t file, void *buf, grub_size_t len) -{ - grub_ssize_t res; - grub_disk_read_hook_t read_hook; - void *read_hook_data; - - if (file->offset > file->size) - { - grub_error (GRUB_ERR_OUT_OF_RANGE, - N_("attempt to read past the end of file")); - return -1; - } - - if (len == 0) - return 0; - - if (len > file->size - file->offset) - len = file->size - file->offset; - - /* Prevent an overflow. */ - if ((grub_ssize_t) len < 0) - len >>= 1; - - if (len == 0) - return 0; - read_hook = file->read_hook; - read_hook_data = file->read_hook_data; - if (!file->read_hook) - { - file->read_hook = grub_file_progress_hook; - file->read_hook_data = file; - file->progress_offset = file->offset; - } - res = (file->fs->fs_read) (file, buf, len); - file->read_hook = read_hook; - file->read_hook_data = read_hook_data; - if (res > 0) - file->offset += res; - - return res; -} - -grub_err_t -grub_file_close (grub_file_t file) -{ - if (file->fs->fs_close) - (file->fs->fs_close) (file); - - if (file->device) - grub_device_close (file->device); - grub_free (file->name); - grub_free (file); - return grub_errno; -} - -grub_off_t -grub_file_seek (grub_file_t file, grub_off_t offset) -{ - grub_off_t old; - - if (offset > file->size) - { - grub_error (GRUB_ERR_OUT_OF_RANGE, - N_("attempt to seek outside of the file")); - return -1; - } - - old = file->offset; - file->offset = offset; - - return old; -} diff --git a/thirdparty/grub-2.04/grub-core/kern/fs.c b/thirdparty/grub-2.04/grub-core/kern/fs.c deleted file mode 100644 index 2b85f4950..000000000 --- a/thirdparty/grub-2.04/grub-core/kern/fs.c +++ /dev/null @@ -1,251 +0,0 @@ -/* fs.c - filesystem manager */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2002,2005,2007 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -grub_fs_t grub_fs_list = 0; - -grub_fs_autoload_hook_t grub_fs_autoload_hook = 0; - -/* Helper for grub_fs_probe. */ -static int -probe_dummy_iter (const char *filename __attribute__ ((unused)), - const struct grub_dirhook_info *info __attribute__ ((unused)), - void *data __attribute__ ((unused))) -{ - return 1; -} - -grub_fs_t -grub_fs_probe (grub_device_t device) -{ - grub_fs_t p; - - if (device->disk) - { - /* Make it sure not to have an infinite recursive calls. */ - static int count = 0; - - for (p = grub_fs_list; p; p = p->next) - { - grub_dprintf ("fs", "Detecting %s...\n", p->name); - - /* This is evil: newly-created just mounted BtrFS after copying all - GRUB files has a very peculiar unrecoverable corruption which - will be fixed at sync but we'd rather not do a global sync and - syncing just files doesn't seem to help. Relax the check for - this time. */ -#ifdef GRUB_UTIL - if (grub_strcmp (p->name, "btrfs") == 0) - { - char *label = 0; - p->fs_uuid (device, &label); - if (label) - grub_free (label); - } - else -#endif - (p->fs_dir) (device, "/", probe_dummy_iter, NULL); - if (grub_errno == GRUB_ERR_NONE) - return p; - - grub_error_push (); - grub_dprintf ("fs", "%s detection failed.\n", p->name); - grub_error_pop (); - - if (grub_errno != GRUB_ERR_BAD_FS - && grub_errno != GRUB_ERR_OUT_OF_RANGE) - return 0; - - grub_errno = GRUB_ERR_NONE; - } - - /* Let's load modules automatically. */ - if (grub_fs_autoload_hook && count == 0) - { - count++; - - while (grub_fs_autoload_hook ()) - { - p = grub_fs_list; - - (p->fs_dir) (device, "/", probe_dummy_iter, NULL); - if (grub_errno == GRUB_ERR_NONE) - { - count--; - return p; - } - - if (grub_errno != GRUB_ERR_BAD_FS - && grub_errno != GRUB_ERR_OUT_OF_RANGE) - { - count--; - return 0; - } - - grub_errno = GRUB_ERR_NONE; - } - - count--; - } - } - else if (device->net && device->net->fs) - return device->net->fs; - - grub_error (GRUB_ERR_UNKNOWN_FS, N_("unknown filesystem")); - return 0; -} - - - -/* Block list support routines. */ - -struct grub_fs_block -{ - grub_disk_addr_t offset; - unsigned long length; -}; - -static grub_err_t -grub_fs_blocklist_open (grub_file_t file, const char *name) -{ - char *p = (char *) name; - unsigned num = 0; - unsigned i; - grub_disk_t disk = file->device->disk; - struct grub_fs_block *blocks; - - /* First, count the number of blocks. */ - do - { - num++; - p = grub_strchr (p, ','); - if (p) - p++; - } - while (p); - - /* Allocate a block list. */ - blocks = grub_zalloc (sizeof (struct grub_fs_block) * (num + 1)); - if (! blocks) - return 0; - - file->size = 0; - p = (char *) name; - for (i = 0; i < num; i++) - { - if (*p != '+') - { - blocks[i].offset = grub_strtoull (p, &p, 0); - if (grub_errno != GRUB_ERR_NONE || *p != '+') - { - grub_error (GRUB_ERR_BAD_FILENAME, - N_("invalid file name `%s'"), name); - goto fail; - } - } - - p++; - blocks[i].length = grub_strtoul (p, &p, 0); - if (grub_errno != GRUB_ERR_NONE - || blocks[i].length == 0 - || (*p && *p != ',' && ! grub_isspace (*p))) - { - grub_error (GRUB_ERR_BAD_FILENAME, - N_("invalid file name `%s'"), name); - goto fail; - } - - if (disk->total_sectors < blocks[i].offset + blocks[i].length) - { - grub_error (GRUB_ERR_BAD_FILENAME, "beyond the total sectors"); - goto fail; - } - - file->size += (blocks[i].length << GRUB_DISK_SECTOR_BITS); - p++; - } - - file->data = blocks; - - return GRUB_ERR_NONE; - - fail: - grub_free (blocks); - return grub_errno; -} - -static grub_ssize_t -grub_fs_blocklist_read (grub_file_t file, char *buf, grub_size_t len) -{ - struct grub_fs_block *p; - grub_disk_addr_t sector; - grub_off_t offset; - grub_ssize_t ret = 0; - - if (len > file->size - file->offset) - len = file->size - file->offset; - - sector = (file->offset >> GRUB_DISK_SECTOR_BITS); - offset = (file->offset & (GRUB_DISK_SECTOR_SIZE - 1)); - for (p = file->data; p->length && len > 0; p++) - { - if (sector < p->length) - { - grub_size_t size; - - size = len; - if (((size + offset + GRUB_DISK_SECTOR_SIZE - 1) - >> GRUB_DISK_SECTOR_BITS) > p->length - sector) - size = ((p->length - sector) << GRUB_DISK_SECTOR_BITS) - offset; - - if (grub_disk_read (file->device->disk, p->offset + sector, offset, - size, buf) != GRUB_ERR_NONE) - return -1; - - ret += size; - len -= size; - sector -= ((size + offset) >> GRUB_DISK_SECTOR_BITS); - offset = ((size + offset) & (GRUB_DISK_SECTOR_SIZE - 1)); - } - else - sector -= p->length; - } - - return ret; -} - -struct grub_fs grub_fs_blocklist = - { - .name = "blocklist", - .fs_dir = 0, - .fs_open = grub_fs_blocklist_open, - .fs_read = grub_fs_blocklist_read, - .fs_close = 0, - .next = 0 - }; diff --git a/thirdparty/grub-2.04/grub-core/kern/generic/millisleep.c b/thirdparty/grub-2.04/grub-core/kern/generic/millisleep.c deleted file mode 100644 index 9d5971f21..000000000 --- a/thirdparty/grub-2.04/grub-core/kern/generic/millisleep.c +++ /dev/null @@ -1,39 +0,0 @@ -/* millisleep.c - generic millisleep function. - * The generic implementation of these functions can be used for architectures - * or platforms that do not have a more specialized implementation. */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 1999,2000,2001,2002,2003,2004,2005,2006,2007,2008 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include - -void -grub_millisleep (grub_uint32_t ms) -{ - grub_uint64_t start; - - start = grub_get_time_ms (); - - /* Instead of setting an end time and looping while the current time is - less than that, comparing the elapsed sleep time with the desired sleep - time handles the (unlikely!) case that the timer would wrap around - during the sleep. */ - - while (grub_get_time_ms () - start < ms) - grub_cpu_idle (); -} diff --git a/thirdparty/grub-2.04/grub-core/kern/generic/rtc_get_time_ms.c b/thirdparty/grub-2.04/grub-core/kern/generic/rtc_get_time_ms.c deleted file mode 100644 index 3e39c8fe1..000000000 --- a/thirdparty/grub-2.04/grub-core/kern/generic/rtc_get_time_ms.c +++ /dev/null @@ -1,38 +0,0 @@ -/* rtc_get_time_ms.c - get_time_ms implementation using platform RTC. - * The generic implementation of these functions can be used for architectures - * or platforms that do not have a more specialized implementation. */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2008 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include - -/* Calculate the time in milliseconds since the epoch based on the RTC. */ -grub_uint64_t -grub_rtc_get_time_ms (void) -{ - /* By dimensional analysis: - - 1000 ms N rtc ticks 1 s - ------- * ----------- * ----------- = 1000*N/T ms - 1 s 1 T rtc ticks - */ - grub_uint64_t ticks_ms_per_sec = ((grub_uint64_t) 1000) * grub_get_rtc (); - return grub_divmod64 (ticks_ms_per_sec, GRUB_TICKS_PER_SECOND ? : 1000, 0); -} diff --git a/thirdparty/grub-2.04/grub-core/kern/i386/coreboot/cbtable.c b/thirdparty/grub-2.04/grub-core/kern/i386/coreboot/cbtable.c deleted file mode 100644 index 34a2b59be..000000000 --- a/thirdparty/grub-2.04/grub-core/kern/i386/coreboot/cbtable.c +++ /dev/null @@ -1,44 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2007,2008,2013 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -grub_linuxbios_table_header_t -grub_linuxbios_get_tables (void) -{ - grub_linuxbios_table_header_t table_header; - /* Assuming table_header is aligned to its size (8 bytes). */ - for (table_header = (grub_linuxbios_table_header_t) 0x500; - table_header < (grub_linuxbios_table_header_t) 0x1000; table_header++) - if (grub_linuxbios_check_signature (table_header)) - return table_header; - - for (table_header = (grub_linuxbios_table_header_t) 0xf0000; - table_header < (grub_linuxbios_table_header_t) 0x100000; table_header++) - if (grub_linuxbios_check_signature (table_header)) - return table_header; - - return 0; -} diff --git a/thirdparty/grub-2.04/grub-core/kern/i386/coreboot/init.c b/thirdparty/grub-2.04/grub-core/kern/i386/coreboot/init.c deleted file mode 100644 index 3314f027f..000000000 --- a/thirdparty/grub-2.04/grub-core/kern/i386/coreboot/init.c +++ /dev/null @@ -1,143 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2002,2003,2004,2005,2006,2007,2008,2009,2013 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -extern grub_uint8_t _start[]; -extern grub_uint8_t _end[]; -extern grub_uint8_t _edata[]; - -void __attribute__ ((noreturn)) -grub_exit (void) -{ - /* We can't use grub_fatal() in this function. This would create an infinite - loop, since grub_fatal() calls grub_abort() which in turn calls grub_exit(). */ - while (1) - grub_cpu_idle (); -} - -grub_addr_t grub_modbase = GRUB_KERNEL_I386_COREBOOT_MODULES_ADDR; -static grub_uint64_t modend; -static int have_memory = 0; - -/* Helper for grub_machine_init. */ -static int -heap_init (grub_uint64_t addr, grub_uint64_t size, grub_memory_type_t type, - void *data __attribute__ ((unused))) -{ - grub_uint64_t begin = addr, end = addr + size; - -#if GRUB_CPU_SIZEOF_VOID_P == 4 - /* Restrict ourselves to 32-bit memory space. */ - if (begin > GRUB_ULONG_MAX) - return 0; - if (end > GRUB_ULONG_MAX) - end = GRUB_ULONG_MAX; -#endif - - if (type != GRUB_MEMORY_AVAILABLE) - return 0; - - /* Avoid the lower memory. */ - if (begin < GRUB_MEMORY_MACHINE_LOWER_SIZE) - begin = GRUB_MEMORY_MACHINE_LOWER_SIZE; - - if (modend && begin < modend) - begin = modend; - - if (end <= begin) - return 0; - - grub_mm_init_region ((void *) (grub_addr_t) begin, (grub_size_t) (end - begin)); - - have_memory = 1; - - return 0; -} - -#ifndef GRUB_MACHINE_MULTIBOOT - -void -grub_machine_init (void) -{ - modend = grub_modules_get_end (); - - grub_video_coreboot_fb_early_init (); - - grub_vga_text_init (); - - grub_machine_mmap_iterate (heap_init, NULL); - if (!have_memory) - grub_fatal ("No memory found"); - - grub_video_coreboot_fb_late_init (); - - grub_font_init (); - grub_gfxterm_init (); - - grub_tsc_init (); -} - -#else - -void -grub_machine_init (void) -{ - modend = grub_modules_get_end (); - - grub_vga_text_init (); - - grub_machine_mmap_init (); - grub_machine_mmap_iterate (heap_init, NULL); - - grub_tsc_init (); -} - -#endif - -void -grub_machine_get_bootlocation (char **device __attribute__ ((unused)), - char **path __attribute__ ((unused))) -{ -} - -void -grub_machine_fini (int flags) -{ - if (flags & GRUB_LOADER_FLAG_NORETURN) - grub_vga_text_fini (); - grub_stop_floppy (); -} diff --git a/thirdparty/grub-2.04/grub-core/kern/i386/coreboot/startup.S b/thirdparty/grub-2.04/grub-core/kern/i386/coreboot/startup.S deleted file mode 100644 index c8486548d..000000000 --- a/thirdparty/grub-2.04/grub-core/kern/i386/coreboot/startup.S +++ /dev/null @@ -1,63 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 1999,2000,2001,2002,2003,2005,2006,2007,2008 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include - -/* - * Note: GRUB is compiled with the options -mrtd and -mregparm=3. - * So the first three arguments are passed in %eax, %edx, and %ecx, - * respectively, and if a function has a fixed number of arguments - * and the number if greater than three, the function must return - * with "ret $N" where N is ((the number of arguments) - 3) * 4. - */ - - .file "startup.S" - .text - .globl start, _start -start: -_start: -#ifdef GRUB_MACHINE_MULTIBOOT - cmpl $MULTIBOOT_BOOTLOADER_MAGIC, %eax - jne 0f - movl %ebx, EXT_C(startup_multiboot_info) -0: -#endif - - /* initialize the stack */ - movl $GRUB_MEMORY_MACHINE_PROT_STACK, %esp - - /* jump to the main body of C code */ - jmp EXT_C(grub_main) - -/* - * Support for booting GRUB from a Multiboot boot loader (e.g. GRUB itself). - */ - .p2align 2 /* force 4-byte alignment */ -multiboot_header: - /* magic */ - .long 0x1BADB002 - /* flags */ - .long MULTIBOOT_MEMORY_INFO - /* checksum */ - .long -0x1BADB002 - MULTIBOOT_MEMORY_INFO - diff --git a/thirdparty/grub-2.04/grub-core/kern/i386/dl.c b/thirdparty/grub-2.04/grub-core/kern/i386/dl.c deleted file mode 100644 index 1346da5cc..000000000 --- a/thirdparty/grub-2.04/grub-core/kern/i386/dl.c +++ /dev/null @@ -1,81 +0,0 @@ -/* dl-386.c - arch-dependent part of loadable module support */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2002,2005,2007,2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include - -/* Check if EHDR is a valid ELF header. */ -grub_err_t -grub_arch_dl_check_header (void *ehdr) -{ - Elf_Ehdr *e = ehdr; - - /* Check the magic numbers. */ - if (e->e_ident[EI_CLASS] != ELFCLASS32 - || e->e_ident[EI_DATA] != ELFDATA2LSB - || e->e_machine != EM_386) - return grub_error (GRUB_ERR_BAD_OS, N_("invalid arch-dependent ELF magic")); - - return GRUB_ERR_NONE; -} - -/* Relocate symbols. */ -grub_err_t -grub_arch_dl_relocate_symbols (grub_dl_t mod, void *ehdr, - Elf_Shdr *s, grub_dl_segment_t seg) -{ - Elf_Rel *rel, *max; - - for (rel = (Elf_Rel *) ((char *) ehdr + s->sh_offset), - max = (Elf_Rel *) ((char *) rel + s->sh_size); - rel < max; - rel = (Elf_Rel *) ((char *) rel + s->sh_entsize)) - { - Elf_Word *addr; - Elf_Sym *sym; - - if (seg->size < rel->r_offset) - return grub_error (GRUB_ERR_BAD_MODULE, - "reloc offset is out of the segment"); - - addr = (Elf_Word *) ((char *) seg->addr + rel->r_offset); - sym = (Elf_Sym *) ((char *) mod->symtab - + mod->symsize * ELF_R_SYM (rel->r_info)); - - switch (ELF_R_TYPE (rel->r_info)) - { - case R_386_32: - *addr += sym->st_value; - break; - - case R_386_PC32: - *addr += (sym->st_value - (grub_addr_t) addr); - break; - default: - return grub_error (GRUB_ERR_NOT_IMPLEMENTED_YET, - N_("relocation 0x%x is not implemented yet"), - ELF_R_TYPE (rel->r_info)); - } - } - - return GRUB_ERR_NONE; -} diff --git a/thirdparty/grub-2.04/grub-core/kern/i386/efi/init.c b/thirdparty/grub-2.04/grub-core/kern/i386/efi/init.c deleted file mode 100644 index da499aba0..000000000 --- a/thirdparty/grub-2.04/grub-core/kern/i386/efi/init.c +++ /dev/null @@ -1,44 +0,0 @@ -/* init.c - initialize an x86-based EFI system */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2006,2007 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -void -grub_machine_init (void) -{ - grub_efi_init (); - grub_tsc_init (); -} - -void -grub_machine_fini (int flags) -{ - if (flags & GRUB_LOADER_FLAG_NORETURN) - grub_efi_fini (); -} diff --git a/thirdparty/grub-2.04/grub-core/kern/i386/efi/startup.S b/thirdparty/grub-2.04/grub-core/kern/i386/efi/startup.S deleted file mode 100644 index fc5ea3dac..000000000 --- a/thirdparty/grub-2.04/grub-core/kern/i386/efi/startup.S +++ /dev/null @@ -1,36 +0,0 @@ -/* startup.S - bootstrap GRUB itself */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2006,2007,2010 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include - - .file "startup.S" - .text - .globl start, _start -start: -_start: - /* - * EFI_SYSTEM_TABLE * and EFI_HANDLE are passed on the stack. - */ - movl 4(%esp), %eax - movl %eax, EXT_C(grub_efi_image_handle) - movl 8(%esp), %eax - movl %eax, EXT_C(grub_efi_system_table) - call EXT_C(grub_main) - ret diff --git a/thirdparty/grub-2.04/grub-core/kern/i386/efi/tsc.c b/thirdparty/grub-2.04/grub-core/kern/i386/efi/tsc.c deleted file mode 100644 index 4b93ba8e1..000000000 --- a/thirdparty/grub-2.04/grub-core/kern/i386/efi/tsc.c +++ /dev/null @@ -1,40 +0,0 @@ -/* kern/i386/tsc.c - x86 TSC time source implementation - * Requires Pentium or better x86 CPU that supports the RDTSC instruction. - * This module uses the PIT to calibrate the TSC to - * real time. - * - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2008 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include - -int -grub_tsc_calibrate_from_efi (void) -{ - grub_uint64_t start_tsc, end_tsc; - /* Use EFI Time Service to calibrate TSC */ - start_tsc = grub_get_tsc (); - efi_call_1 (grub_efi_system_table->boot_services->stall, 1000); - end_tsc = grub_get_tsc (); - grub_tsc_rate = grub_divmod64 ((1ULL << 32), end_tsc - start_tsc, 0); - return 1; -} diff --git a/thirdparty/grub-2.04/grub-core/kern/i386/ieee1275/startup.S b/thirdparty/grub-2.04/grub-core/kern/i386/ieee1275/startup.S deleted file mode 100644 index 245583bdb..000000000 --- a/thirdparty/grub-2.04/grub-core/kern/i386/ieee1275/startup.S +++ /dev/null @@ -1,41 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 1999,2000,2001,2002,2003,2005,2006,2007,2008 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include - -/* - * Note: GRUB is compiled with the options -mrtd and -mregparm=3. - * So the first three arguments are passed in %eax, %edx, and %ecx, - * respectively, and if a function has a fixed number of arguments - * and the number if greater than three, the function must return - * with "ret $N" where N is ((the number of arguments) - 3) * 4. - */ - - .file "startup.S" - .text - .globl start, _start - -start: -_start: - movl %eax, EXT_C(grub_ieee1275_entry_fn) - jmp EXT_C(grub_main) - diff --git a/thirdparty/grub-2.04/grub-core/kern/i386/int.S b/thirdparty/grub-2.04/grub-core/kern/i386/int.S deleted file mode 100644 index 862a54202..000000000 --- a/thirdparty/grub-2.04/grub-core/kern/i386/int.S +++ /dev/null @@ -1,134 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2010,2011 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -FUNCTION(grub_bios_interrupt) - pushf - cli - popf - pushl %ebp - pushl %ecx - pushl %eax - pushl %ebx - pushl %esi - pushl %edi - pushl %edx - - movb %al, intno - movl (%edx), %eax - movl %eax, LOCAL(bios_register_eax) - movw 4(%edx), %ax - movw %ax, LOCAL(bios_register_es) - movw 6(%edx), %ax - movw %ax, LOCAL(bios_register_ds) - movw 8(%edx), %ax - movw %ax, LOCAL(bios_register_flags) - - movl 12(%edx), %ebx - movl 16(%edx), %ecx - movl 20(%edx), %edi - movl 24(%edx), %esi - movl 28(%edx), %edx - - /* - Via C3 CPUs have cache coherence problems, so we need to call - wbinvd at these 2 points. As wbinvd slows down boot, don't do - it on non-VIA. 9090 is nop nop. */ -VARIABLE(grub_bios_via_workaround1) - .byte 0x90, 0x90 - - PROT_TO_REAL - .code16 - pushf - cli - - mov %ds, %ax - push %ax - - /* movw imm16, %ax*/ - .byte 0xb8 -LOCAL(bios_register_es): - .short 0 - movw %ax, %es - /* movw imm16, %ax*/ - .byte 0xb8 -LOCAL(bios_register_ds): - .short 0 - movw %ax, %ds - - /* movw imm16, %ax*/ - .byte 0xb8 -LOCAL(bios_register_flags): - .short 0 - push %ax - popf - - /* movl imm32, %eax*/ - .byte 0x66, 0xb8 -LOCAL(bios_register_eax): - .long 0 - - /* int imm8. */ - .byte 0xcd -intno: - .byte 0 - - movl %eax, %cs:LOCAL(bios_register_eax) - movw %ds, %ax - movw %ax, %cs:LOCAL(bios_register_ds) - pop %ax - mov %ax, %ds - pushf - pop %ax - movw %ax, LOCAL(bios_register_flags) - mov %es, %ax - movw %ax, LOCAL(bios_register_es) - - popf - -VARIABLE(grub_bios_via_workaround2) - .byte 0x90, 0x90 - - REAL_TO_PROT - .code32 - - popl %eax - - movl %ebx, 12(%eax) - movl %ecx, 16(%eax) - movl %edi, 20(%eax) - movl %esi, 24(%eax) - movl %edx, 28(%eax) - - movl %eax, %edx - - movl LOCAL(bios_register_eax), %eax - movl %eax, (%edx) - movw LOCAL(bios_register_es), %ax - movw %ax, 4(%edx) - movw LOCAL(bios_register_ds), %ax - movw %ax, 6(%edx) - movw LOCAL(bios_register_flags), %ax - movw %ax, 8(%edx) - - popl %edi - popl %esi - popl %ebx - popl %eax - popl %ecx - popl %ebp - ret diff --git a/thirdparty/grub-2.04/grub-core/kern/i386/multiboot_mmap.c b/thirdparty/grub-2.04/grub-core/kern/i386/multiboot_mmap.c deleted file mode 100644 index e8f4f34b9..000000000 --- a/thirdparty/grub-2.04/grub-core/kern/i386/multiboot_mmap.c +++ /dev/null @@ -1,73 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2002,2003,2004,2005,2006,2007,2008,2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include - -/* A pointer to the MBI in its initial location. */ -struct multiboot_info *startup_multiboot_info; - -/* The MBI has to be copied to our BSS so that it won't be - overwritten. This is its final location. */ -static struct multiboot_info kern_multiboot_info; - -/* Unfortunately we can't use heap at this point. But 32 looks like a sane - limit (used by memtest86). */ -static grub_uint8_t mmap_entries[sizeof (struct multiboot_mmap_entry) * 32]; - -void -grub_machine_mmap_init (void) -{ - if (! startup_multiboot_info) - grub_fatal ("Unable to find Multiboot Information (is CONFIG_MULTIBOOT disabled in coreboot?)"); - - /* Move MBI to a safe place. */ - grub_memmove (&kern_multiboot_info, startup_multiboot_info, sizeof (struct multiboot_info)); - - if ((kern_multiboot_info.flags & MULTIBOOT_INFO_MEM_MAP) == 0) - grub_fatal ("Missing Multiboot memory information"); - - /* Move the memory map to a safe place. */ - if (kern_multiboot_info.mmap_length > sizeof (mmap_entries)) - { - grub_printf ("WARNING: Memory map size exceeds limit (0x%x > 0x%x); it will be truncated\n", - kern_multiboot_info.mmap_length, sizeof (mmap_entries)); - kern_multiboot_info.mmap_length = sizeof (mmap_entries); - } - grub_memmove (mmap_entries, (void *) kern_multiboot_info.mmap_addr, kern_multiboot_info.mmap_length); - kern_multiboot_info.mmap_addr = (grub_uint32_t) mmap_entries; -} - -grub_err_t -grub_machine_mmap_iterate (grub_memory_hook_t hook, void *hook_data) -{ - struct multiboot_mmap_entry *entry = (void *) kern_multiboot_info.mmap_addr; - - while ((unsigned long) entry < kern_multiboot_info.mmap_addr + kern_multiboot_info.mmap_length) - { - if (hook (entry->addr, entry->len, entry->type, hook_data)) - break; - - entry = (void *) ((grub_addr_t) entry + entry->size + sizeof (entry->size)); - } - - return 0; -} diff --git a/thirdparty/grub-2.04/grub-core/kern/i386/pc/acpi.c b/thirdparty/grub-2.04/grub-core/kern/i386/pc/acpi.c deleted file mode 100644 index 297f5d05f..000000000 --- a/thirdparty/grub-2.04/grub-core/kern/i386/pc/acpi.c +++ /dev/null @@ -1,83 +0,0 @@ -/* acpi.c - get acpi tables. */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include - -struct grub_acpi_rsdp_v10 * -grub_machine_acpi_get_rsdpv1 (void) -{ - int ebda_len; - grub_uint8_t *ebda, *ptr; - - grub_dprintf ("acpi", "Looking for RSDP. Scanning EBDA\n"); - ebda = (grub_uint8_t *) ((* ((grub_uint16_t *) 0x40e)) << 4); - ebda_len = * (grub_uint16_t *) ebda; - if (! ebda_len) /* FIXME do we really need this check? */ - goto scan_bios; - for (ptr = ebda; ptr < ebda + 0x400; ptr += 16) - if (grub_memcmp (ptr, GRUB_RSDP_SIGNATURE, GRUB_RSDP_SIGNATURE_SIZE) == 0 - && grub_byte_checksum (ptr, sizeof (struct grub_acpi_rsdp_v10)) == 0 - && ((struct grub_acpi_rsdp_v10 *) ptr)->revision == 0) - return (struct grub_acpi_rsdp_v10 *) ptr; - -scan_bios: - grub_dprintf ("acpi", "Looking for RSDP. Scanning BIOS\n"); - for (ptr = (grub_uint8_t *) 0xe0000; ptr < (grub_uint8_t *) 0x100000; - ptr += 16) - if (grub_memcmp (ptr, GRUB_RSDP_SIGNATURE, GRUB_RSDP_SIGNATURE_SIZE) == 0 - && grub_byte_checksum (ptr, sizeof (struct grub_acpi_rsdp_v10)) == 0 - && ((struct grub_acpi_rsdp_v10 *) ptr)->revision == 0) - return (struct grub_acpi_rsdp_v10 *) ptr; - return 0; -} - -struct grub_acpi_rsdp_v20 * -grub_machine_acpi_get_rsdpv2 (void) -{ - int ebda_len; - grub_uint8_t *ebda, *ptr; - - grub_dprintf ("acpi", "Looking for RSDP. Scanning EBDA\n"); - ebda = (grub_uint8_t *) ((* ((grub_uint16_t *) 0x40e)) << 4); - ebda_len = * (grub_uint16_t *) ebda; - if (! ebda_len) /* FIXME do we really need this check? */ - goto scan_bios; - for (ptr = ebda; ptr < ebda + 0x400; ptr += 16) - if (grub_memcmp (ptr, GRUB_RSDP_SIGNATURE, GRUB_RSDP_SIGNATURE_SIZE) == 0 - && grub_byte_checksum (ptr, sizeof (struct grub_acpi_rsdp_v10)) == 0 - && ((struct grub_acpi_rsdp_v10 *) ptr)->revision != 0 - && ((struct grub_acpi_rsdp_v20 *) ptr)->length < 1024 - && grub_byte_checksum (ptr, ((struct grub_acpi_rsdp_v20 *) ptr)->length) - == 0) - return (struct grub_acpi_rsdp_v20 *) ptr; - -scan_bios: - grub_dprintf ("acpi", "Looking for RSDP. Scanning BIOS\n"); - for (ptr = (grub_uint8_t *) 0xe0000; ptr < (grub_uint8_t *) 0x100000; - ptr += 16) - if (grub_memcmp (ptr, GRUB_RSDP_SIGNATURE, GRUB_RSDP_SIGNATURE_SIZE) == 0 - && grub_byte_checksum (ptr, sizeof (struct grub_acpi_rsdp_v10)) == 0 - && ((struct grub_acpi_rsdp_v10 *) ptr)->revision != 0 - && ((struct grub_acpi_rsdp_v20 *) ptr)->length < 1024 - && grub_byte_checksum (ptr, ((struct grub_acpi_rsdp_v20 *) ptr)->length) - == 0) - return (struct grub_acpi_rsdp_v20 *) ptr; - return 0; -} diff --git a/thirdparty/grub-2.04/grub-core/kern/i386/pc/init.c b/thirdparty/grub-2.04/grub-core/kern/i386/pc/init.c deleted file mode 100644 index 27bc68b8a..000000000 --- a/thirdparty/grub-2.04/grub-core/kern/i386/pc/init.c +++ /dev/null @@ -1,271 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2002,2003,2004,2005,2006,2007,2008,2009,2010 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -struct mem_region -{ - grub_addr_t addr; - grub_size_t size; -}; - -#define MAX_REGIONS 32 - -static struct mem_region mem_regions[MAX_REGIONS]; -static int num_regions; - -void (*grub_pc_net_config) (char **device, char **path); - -/* - * return the real time in ticks, of which there are about - * 18-20 per second - */ -grub_uint64_t -grub_rtc_get_time_ms (void) -{ - struct grub_bios_int_registers regs; - - regs.eax = 0; - regs.flags = GRUB_CPU_INT_FLAGS_DEFAULT; - grub_bios_interrupt (0x1a, ®s); - - return ((regs.ecx << 16) | (regs.edx & 0xffff)) * 55ULL; -} - -void -grub_machine_get_bootlocation (char **device, char **path) -{ - char *ptr; - grub_uint8_t boot_drive, dos_part, bsd_part; - - boot_drive = (grub_boot_device >> 24); - dos_part = (grub_boot_device >> 16); - bsd_part = (grub_boot_device >> 8); - - /* No hardcoded root partition - make it from the boot drive and the - partition number encoded at the install time. */ - if (boot_drive == GRUB_BOOT_MACHINE_PXE_DL) - { - if (grub_pc_net_config) - grub_pc_net_config (device, path); - return; - } - - /* XXX: This should be enough. */ -#define DEV_SIZE 100 - *device = grub_malloc (DEV_SIZE); - ptr = *device; - grub_snprintf (*device, DEV_SIZE, - "%cd%u", (boot_drive & 0x80) ? 'h' : 'f', - boot_drive & 0x7f); - ptr += grub_strlen (ptr); - - if (dos_part != 0xff) - grub_snprintf (ptr, DEV_SIZE - (ptr - *device), - ",%u", dos_part + 1); - ptr += grub_strlen (ptr); - - if (bsd_part != 0xff) - grub_snprintf (ptr, DEV_SIZE - (ptr - *device), ",%u", - bsd_part + 1); - ptr += grub_strlen (ptr); - *ptr = 0; -} - -/* Add a memory region. */ -static void -add_mem_region (grub_addr_t addr, grub_size_t size) -{ - if (num_regions == MAX_REGIONS) - /* Ignore. */ - return; - - mem_regions[num_regions].addr = addr; - mem_regions[num_regions].size = size; - num_regions++; -} - -/* Compact memory regions. */ -static void -compact_mem_regions (void) -{ - int i, j; - - /* Sort them. */ - for (i = 0; i < num_regions - 1; i++) - for (j = i + 1; j < num_regions; j++) - if (mem_regions[i].addr > mem_regions[j].addr) - { - struct mem_region tmp = mem_regions[i]; - mem_regions[i] = mem_regions[j]; - mem_regions[j] = tmp; - } - - /* Merge overlaps. */ - for (i = 0; i < num_regions - 1; i++) - if (mem_regions[i].addr + mem_regions[i].size >= mem_regions[i + 1].addr) - { - j = i + 1; - - if (mem_regions[i].addr + mem_regions[i].size - < mem_regions[j].addr + mem_regions[j].size) - mem_regions[i].size = (mem_regions[j].addr + mem_regions[j].size - - mem_regions[i].addr); - - grub_memmove (mem_regions + j, mem_regions + j + 1, - (num_regions - j - 1) * sizeof (struct mem_region)); - i--; - num_regions--; - } -} - -grub_addr_t grub_modbase; -extern grub_uint8_t _start[], _edata[]; - -/* Helper for grub_machine_init. */ -static int -mmap_iterate_hook (grub_uint64_t addr, grub_uint64_t size, - grub_memory_type_t type, - void *data __attribute__ ((unused))) -{ - /* Avoid the lower memory. */ - if (addr < GRUB_MEMORY_MACHINE_UPPER_START) - { - if (size <= GRUB_MEMORY_MACHINE_UPPER_START - addr) - return 0; - - size -= GRUB_MEMORY_MACHINE_UPPER_START - addr; - addr = GRUB_MEMORY_MACHINE_UPPER_START; - } - - /* Ignore >4GB. */ - if (addr <= 0xFFFFFFFF && type == GRUB_MEMORY_AVAILABLE) - { - grub_size_t len; - - len = (grub_size_t) ((addr + size > 0xFFFFFFFF) - ? 0xFFFFFFFF - addr - : size); - add_mem_region (addr, len); - } - - return 0; -} - -extern grub_uint16_t grub_bios_via_workaround1, grub_bios_via_workaround2; - -/* Via needs additional wbinvd. */ -static void -grub_via_workaround_init (void) -{ - grub_uint32_t manufacturer[3], max_cpuid; - if (! grub_cpu_is_cpuid_supported ()) - return; - - grub_cpuid (0, max_cpuid, manufacturer[0], manufacturer[2], manufacturer[1]); - - if (grub_memcmp (manufacturer, "CentaurHauls", 12) != 0) - return; - - grub_bios_via_workaround1 = 0x090f; - grub_bios_via_workaround2 = 0x090f; - asm volatile ("wbinvd"); -} - -void -grub_machine_init (void) -{ - int i; -#if 0 - int grub_lower_mem; -#endif - grub_addr_t modend; - - /* This has to happen before any BIOS calls. */ - grub_via_workaround_init (); - - grub_modbase = GRUB_MEMORY_MACHINE_DECOMPRESSION_ADDR + (_edata - _start); - - /* Initialize the console as early as possible. */ - grub_console_init (); - - /* This sanity check is useless since top of GRUB_MEMORY_MACHINE_RESERVED_END - is used for stack and if it's unavailable we wouldn't have gotten so far. - */ -#if 0 - grub_lower_mem = grub_get_conv_memsize () << 10; - - /* Sanity check. */ - if (grub_lower_mem < GRUB_MEMORY_MACHINE_RESERVED_END) - grub_fatal ("too small memory"); -#endif - -/* FIXME: This prevents loader/i386/linux.c from using low memory. When our - heap implements support for requesting a chunk in low memory, this should - no longer be a problem. */ -#if 0 - /* Add the lower memory into free memory. */ - if (grub_lower_mem >= GRUB_MEMORY_MACHINE_RESERVED_END) - add_mem_region (GRUB_MEMORY_MACHINE_RESERVED_END, - grub_lower_mem - GRUB_MEMORY_MACHINE_RESERVED_END); -#endif - - grub_machine_mmap_iterate (mmap_iterate_hook, NULL); - - compact_mem_regions (); - - modend = grub_modules_get_end (); - for (i = 0; i < num_regions; i++) - { - grub_addr_t beg = mem_regions[i].addr; - grub_addr_t fin = mem_regions[i].addr + mem_regions[i].size; - if (modend && beg < modend) - beg = modend; - if (beg >= fin) - continue; - grub_mm_init_region ((void *) beg, fin - beg); - } - - grub_tsc_init (); -} - -void -grub_machine_fini (int flags) -{ - if (flags & GRUB_LOADER_FLAG_NORETURN) - grub_console_fini (); - grub_stop_floppy (); -} diff --git a/thirdparty/grub-2.04/grub-core/kern/i386/pc/mmap.c b/thirdparty/grub-2.04/grub-core/kern/i386/pc/mmap.c deleted file mode 100644 index c0c3c3585..000000000 --- a/thirdparty/grub-2.04/grub-core/kern/i386/pc/mmap.c +++ /dev/null @@ -1,193 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2002,2003,2004,2005,2006,2007,2008 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include - -struct grub_machine_mmap_entry -{ - grub_uint32_t size; - grub_uint64_t addr; - grub_uint64_t len; -#define GRUB_MACHINE_MEMORY_AVAILABLE 1 -#define GRUB_MACHINE_MEMORY_RESERVED 2 -#define GRUB_MACHINE_MEMORY_ACPI 3 -#define GRUB_MACHINE_MEMORY_NVS 4 -#define GRUB_MACHINE_MEMORY_BADRAM 5 - grub_uint32_t type; -} GRUB_PACKED; - - -/* - * - * grub_get_conv_memsize(i) : return the conventional memory size in KB. - * BIOS call "INT 12H" to get conventional memory size - * The return value in AX. - */ -static inline grub_uint16_t -grub_get_conv_memsize (void) -{ - struct grub_bios_int_registers regs; - - regs.flags = GRUB_CPU_INT_FLAGS_DEFAULT; - grub_bios_interrupt (0x12, ®s); - return regs.eax & 0xffff; -} - -/* - * grub_get_ext_memsize() : return the extended memory size in KB. - * BIOS call "INT 15H, AH=88H" to get extended memory size - * The return value in AX. - * - */ -static inline grub_uint16_t -grub_get_ext_memsize (void) -{ - struct grub_bios_int_registers regs; - - regs.eax = 0x8800; - regs.flags = GRUB_CPU_INT_FLAGS_DEFAULT; - grub_bios_interrupt (0x15, ®s); - return regs.eax & 0xffff; -} - -/* Get a packed EISA memory map. Lower 16 bits are between 1MB and 16MB - in 1KB parts, and upper 16 bits are above 16MB in 64KB parts. If error, return zero. - BIOS call "INT 15H, AH=E801H" to get EISA memory map, - AX = memory between 1M and 16M in 1K parts. - BX = memory above 16M in 64K parts. -*/ - -static inline grub_uint32_t -grub_get_eisa_mmap (void) -{ - struct grub_bios_int_registers regs; - - regs.flags = GRUB_CPU_INT_FLAGS_DEFAULT; - regs.eax = 0xe801; - grub_bios_interrupt (0x15, ®s); - - if ((regs.eax & 0xff00) == 0x8600) - return 0; - - return (regs.eax & 0xffff) | (regs.ebx << 16); -} - -/* - * - * grub_get_mmap_entry(addr, cont) : address and old continuation value (zero to - * start), for the Query System Address Map BIOS call. - * - * Sets the first 4-byte int value of "addr" to the size returned by - * the call. If the call fails, sets it to zero. - * - * Returns: new (non-zero) continuation value, 0 if done. - */ -/* Get a memory map entry. Return next continuation value. Zero means - the end. */ -static grub_uint32_t -grub_get_mmap_entry (struct grub_machine_mmap_entry *entry, - grub_uint32_t cont) -{ - struct grub_bios_int_registers regs; - - regs.flags = GRUB_CPU_INT_FLAGS_DEFAULT; - - /* place address (+4) in ES:DI */ - regs.es = ((grub_addr_t) &entry->addr) >> 4; - regs.edi = ((grub_addr_t) &entry->addr) & 0xf; - - /* set continuation value */ - regs.ebx = cont; - - /* set default maximum buffer size */ - regs.ecx = sizeof (*entry) - sizeof (entry->size); - - /* set EDX to 'SMAP' */ - regs.edx = 0x534d4150; - - regs.eax = 0xe820; - grub_bios_interrupt (0x15, ®s); - - /* write length of buffer (zero if error) into ADDR */ - if ((regs.flags & GRUB_CPU_INT_FLAGS_CARRY) || regs.eax != 0x534d4150 - || regs.ecx < 0x14 || regs.ecx > 0x400) - entry->size = 0; - else - entry->size = regs.ecx; - - /* return the continuation value */ - return regs.ebx; -} - -grub_err_t -grub_machine_mmap_iterate (grub_memory_hook_t hook, void *hook_data) -{ - grub_uint32_t cont = 0; - struct grub_machine_mmap_entry *entry - = (struct grub_machine_mmap_entry *) GRUB_MEMORY_MACHINE_SCRATCH_ADDR; - int e820_works = 0; - - while (1) - { - grub_memset (entry, 0, sizeof (*entry)); - - cont = grub_get_mmap_entry (entry, cont); - - if (!entry->size) - break; - - if (entry->len) - e820_works = 1; - if (entry->len - && hook (entry->addr, entry->len, - /* GRUB mmaps have been defined to match with - the E820 definition. - Therefore, we can just pass type through. */ - entry->type, hook_data)) - break; - - if (! cont) - break; - } - - if (!e820_works) - { - grub_uint32_t eisa_mmap = grub_get_eisa_mmap (); - - if (hook (0x0, ((grub_uint32_t) grub_get_conv_memsize ()) << 10, - GRUB_MEMORY_AVAILABLE, hook_data)) - return 0; - - if (eisa_mmap) - { - if (hook (0x100000, (eisa_mmap & 0xFFFF) << 10, - GRUB_MEMORY_AVAILABLE, hook_data) == 0) - hook (0x1000000, eisa_mmap & ~0xFFFF, GRUB_MEMORY_AVAILABLE, - hook_data); - } - else - hook (0x100000, ((grub_uint32_t) grub_get_ext_memsize ()) << 10, - GRUB_MEMORY_AVAILABLE, hook_data); - } - - return 0; -} diff --git a/thirdparty/grub-2.04/grub-core/kern/i386/pc/startup.S b/thirdparty/grub-2.04/grub-core/kern/i386/pc/startup.S deleted file mode 100644 index b8a9b33b4..000000000 --- a/thirdparty/grub-2.04/grub-core/kern/i386/pc/startup.S +++ /dev/null @@ -1,217 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 1999,2000,2001,2002,2003,2005,2006,2007,2008,2009,2011 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - - -/* - * Note: These functions defined in this file may be called from C. - * Be careful of that you must not modify some registers. Quote - * from gcc-2.95.2/gcc/config/i386/i386.h: - - 1 for registers not available across function calls. - These must include the FIXED_REGISTERS and also any - registers that can be used without being saved. - The latter must include the registers where values are returned - and the register where structure-value addresses are passed. - Aside from that, you can include as many other registers as you like. - - ax,dx,cx,bx,si,di,bp,sp,st,st1,st2,st3,st4,st5,st6,st7,arg -{ 1, 1, 1, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 } - */ - -/* - * Note: GRUB is compiled with the options -mrtd and -mregparm=3. - * So the first three arguments are passed in %eax, %edx, and %ecx, - * respectively, and if a function has a fixed number of arguments - * and the number is greater than three, the function must return - * with "ret $N" where N is ((the number of arguments) - 3) * 4. - */ - -#include -#include -#include -#ifdef __APPLE__ -#include -#endif - - .file "startup.S" - - .text - - .globl start, _start, __start -start: -_start: -__start: -#ifdef __APPLE__ -LOCAL(start): -#endif - .code32 - - movl %ecx, (LOCAL(real_to_prot_addr) - _start) (%esi) - movl %edi, (LOCAL(prot_to_real_addr) - _start) (%esi) - movl %eax, (EXT_C(grub_realidt) - _start) (%esi) - - /* copy back the decompressed part (except the modules) */ -#ifdef __APPLE__ - movl $EXT_C(_edata), %ecx - subl $LOCAL(start), %ecx -#else - movl $(_edata - _start), %ecx -#endif - movl $(_start), %edi - rep - movsb - - movl $LOCAL (cont), %esi - jmp *%esi -LOCAL(cont): - -#if 0 - /* copy modules before cleaning out the bss */ - movl EXT_C(grub_total_module_size), %ecx - movl EXT_C(grub_kernel_image_size), %esi - addl %ecx, %esi - addl $_start, %esi - decl %esi - movl $END_SYMBOL, %edi - addl %ecx, %edi - decl %edi - std - rep - movsb -#endif - -#ifdef __APPLE__ - /* clean out the bss */ - movl $EXT_C(_edata), %edi - - /* compute the bss length */ - movl $GRUB_MEMORY_MACHINE_SCRATCH_ADDR, %ecx -#else - /* clean out the bss */ - movl $BSS_START_SYMBOL, %edi - - /* compute the bss length */ - movl $END_SYMBOL, %ecx -#endif - subl %edi, %ecx - - /* clean out */ - xorl %eax, %eax - cld - rep - stosb - - movl %edx, EXT_C(grub_boot_device) - - /* - * Call the start of main body of C code. - */ - call EXT_C(grub_main) - -LOCAL(real_to_prot_addr): - .long 0 -LOCAL(prot_to_real_addr): - .long 0 - - .macro PROT_TO_REAL - movl LOCAL(prot_to_real_addr), %eax - call *%eax - .endm - - .macro REAL_TO_PROT - movl LOCAL(real_to_prot_addr), %eax - calll *%eax - .endm - -/* - * grub_exit() - * - * Exit the system. - */ -FUNCTION(grub_exit) - PROT_TO_REAL - .code16 - /* Tell the BIOS a boot failure. If this does not work, reboot. */ - int $0x18 - /* set 0x472 to 0x0000 for cold boot (0x1234 for warm boot) */ - xorw %ax, %ax - movw $0x0472, %di - movw %ax, (%di) - ljmp $0xf000, $0xfff0 - .code32 - -/* - * int grub_pxe_call (int func, void* data, grub_uint32_t pxe_rm_entry); - */ -FUNCTION(grub_pxe_call) - pushl %ebp - movl %esp, %ebp - pushl %esi - pushl %edi - pushl %ebx - - movl %ecx, %ebx - movl %eax, %ecx - movl %edx, %eax - andl $0xF, %eax - shrl $4, %edx - shll $16, %edx - addl %eax, %edx - - PROT_TO_REAL - .code16 - - pushl %ebx - pushl %edx - pushw %cx - movw %sp, %bx - lcall *%ss:6(%bx) - cld - addw $10, %sp - movw %ax, %cx - - REAL_TO_PROT - .code32 - - movzwl %cx, %eax - - popl %ebx - popl %edi - popl %esi - popl %ebp - ret - -#include "../int.S" - -VARIABLE(grub_realidt) - .long 0 - -#ifdef __APPLE__ - /* Older versions of objconv assume that there is the same number - of text and data sections. Hence this dummy. */ - .section __TEXT, __zz_dummy - .byte 0 - .globl EXT_C(_edata) - .globl EXT_C(grub_boot_device) - .zerofill __DATA, __aa_before_bss, EXT_C(_edata), 1, 0 - .zerofill __DATA, __bss, EXT_C(grub_boot_device), 4, 2 -#else - .bss -VARIABLE(grub_boot_device) - .long 0 -#endif diff --git a/thirdparty/grub-2.04/grub-core/kern/i386/qemu/init.c b/thirdparty/grub-2.04/grub-core/kern/i386/qemu/init.c deleted file mode 100644 index 271b6fbfa..000000000 --- a/thirdparty/grub-2.04/grub-core/kern/i386/qemu/init.c +++ /dev/null @@ -1,276 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2002,2003,2004,2005,2006,2007,2008,2009,2013 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -extern grub_uint8_t _start[]; -extern grub_uint8_t _end[]; -extern grub_uint8_t _edata[]; - -void __attribute__ ((noreturn)) -grub_exit (void) -{ - /* We can't use grub_fatal() in this function. This would create an infinite - loop, since grub_fatal() calls grub_abort() which in turn calls grub_exit(). */ - while (1) - grub_cpu_idle (); -} - -grub_addr_t grub_modbase; - -/* Helper for grub_machine_init. */ -static int -heap_init (grub_uint64_t addr, grub_uint64_t size, grub_memory_type_t type, - void *data __attribute__ ((unused))) -{ - grub_uint64_t begin = addr, end = addr + size; - -#if GRUB_CPU_SIZEOF_VOID_P == 4 - /* Restrict ourselves to 32-bit memory space. */ - if (begin > GRUB_ULONG_MAX) - return 0; - if (end > GRUB_ULONG_MAX) - end = GRUB_ULONG_MAX; -#endif - - if (type != GRUB_MEMORY_AVAILABLE) - return 0; - - /* Avoid the lower memory. */ - if (begin < GRUB_MEMORY_MACHINE_LOWER_SIZE) - begin = GRUB_MEMORY_MACHINE_LOWER_SIZE; - - if (end <= begin) - return 0; - - grub_mm_init_region ((void *) (grub_addr_t) begin, (grub_size_t) (end - begin)); - - return 0; -} - -struct resource -{ - grub_pci_device_t dev; - grub_size_t size; - unsigned type:4; - unsigned bar:3; -}; - -struct iterator_ctx -{ - struct resource *resources; - grub_size_t nresources; -}; - -/* We don't support bridges, so can't have more than 32 devices. */ -#define MAX_DEVICES 32 - -static int -find_resources (grub_pci_device_t dev, - grub_pci_id_t pciid __attribute__ ((unused)), - void *data) -{ - struct iterator_ctx *ctx = data; - int bar; - - if (ctx->nresources >= MAX_DEVICES * 6) - return 1; - - for (bar = 0; bar < 6; bar++) - { - grub_pci_address_t addr; - grub_uint32_t ones, zeros, mask; - struct resource *res; - addr = grub_pci_make_address (dev, GRUB_PCI_REG_ADDRESS_REG0 - + 4 * bar); - grub_pci_write (addr, 0xffffffff); - grub_pci_read (addr); - ones = grub_pci_read (addr); - grub_pci_write (addr, 0); - grub_pci_read (addr); - zeros = grub_pci_read (addr); - if (ones == zeros) - continue; - res = &ctx->resources[ctx->nresources++]; - if ((zeros & GRUB_PCI_ADDR_SPACE_MASK) == GRUB_PCI_ADDR_SPACE_IO) - mask = GRUB_PCI_ADDR_SPACE_MASK; - else - mask = (GRUB_PCI_ADDR_MEM_TYPE_MASK | GRUB_PCI_ADDR_SPACE_MASK | GRUB_PCI_ADDR_MEM_PREFETCH); - - res->type = ones & mask; - res->dev = dev; - res->bar = bar; - res->size = (~((zeros ^ ones)) | mask) + 1; - if ((zeros & (GRUB_PCI_ADDR_MEM_TYPE_MASK | GRUB_PCI_ADDR_SPACE_MASK)) - == (GRUB_PCI_ADDR_SPACE_MEMORY | GRUB_PCI_ADDR_MEM_TYPE_64)) - bar++; - } - return 0; -} - -static int -enable_cards (grub_pci_device_t dev, - grub_pci_id_t pciid __attribute__ ((unused)), - void *data __attribute__ ((unused))) -{ - grub_uint16_t cmd = 0; - grub_pci_address_t addr; - grub_uint32_t class; - int bar; - - for (bar = 0; bar < 6; bar++) - { - grub_uint32_t val; - addr = grub_pci_make_address (dev, GRUB_PCI_REG_ADDRESS_REG0 - + 4 * bar); - val = grub_pci_read (addr); - if (!val) - continue; - if ((val & GRUB_PCI_ADDR_SPACE_MASK) == GRUB_PCI_ADDR_SPACE_IO) - cmd |= GRUB_PCI_COMMAND_IO_ENABLED; - else - cmd |= GRUB_PCI_COMMAND_MEM_ENABLED; - } - - class = (grub_pci_read (addr) >> 16) & 0xffff; - - if (class == GRUB_PCI_CLASS_SUBCLASS_VGA) - cmd |= GRUB_PCI_COMMAND_IO_ENABLED - | GRUB_PCI_COMMAND_MEM_ENABLED; - - if (class == GRUB_PCI_CLASS_SUBCLASS_USB) - return 0; - - addr = grub_pci_make_address (dev, GRUB_PCI_REG_COMMAND); - grub_pci_write (addr, cmd); - - return 0; -} - -static void -grub_pci_assign_addresses (void) -{ - struct iterator_ctx ctx; - - { - struct resource resources[MAX_DEVICES * 6]; - int done; - unsigned i; - ctx.nresources = 0; - ctx.resources = resources; - grub_uint32_t memptr = 0xf0000000; - grub_uint16_t ioptr = 0x1000; - - grub_pci_iterate (find_resources, &ctx); - /* FIXME: do we need a better sort here? */ - do - { - done = 0; - for (i = 0; i + 1 < ctx.nresources; i++) - if (resources[i].size < resources[i+1].size) - { - struct resource t; - t = resources[i]; - resources[i] = resources[i+1]; - resources[i+1] = t; - done = 1; - } - } - while (done); - - for (i = 0; i < ctx.nresources; i++) - { - grub_pci_address_t addr; - addr = grub_pci_make_address (resources[i].dev, - GRUB_PCI_REG_ADDRESS_REG0 - + 4 * resources[i].bar); - if ((resources[i].type & GRUB_PCI_ADDR_SPACE_MASK) - == GRUB_PCI_ADDR_SPACE_IO) - { - grub_pci_write (addr, ioptr | resources[i].type); - ioptr += resources[i].size; - } - else - { - grub_pci_write (addr, memptr | resources[i].type); - memptr += resources[i].size; - if ((resources[i].type & (GRUB_PCI_ADDR_MEM_TYPE_MASK - | GRUB_PCI_ADDR_SPACE_MASK)) - == (GRUB_PCI_ADDR_SPACE_MEMORY | GRUB_PCI_ADDR_MEM_TYPE_64)) - { - addr = grub_pci_make_address (resources[i].dev, - GRUB_PCI_REG_ADDRESS_REG0 - + 4 * resources[i].bar + 4); - grub_pci_write (addr, 0); - } - } - } - grub_pci_iterate (enable_cards, NULL); - } -} - -void -grub_machine_init (void) -{ - grub_modbase = grub_core_entry_addr + (_edata - _start); - - grub_pci_assign_addresses (); - - grub_qemu_init_cirrus (); - - grub_vga_text_init (); - - grub_machine_mmap_init (); - grub_machine_mmap_iterate (heap_init, NULL); - - - grub_tsc_init (); -} - -void -grub_machine_get_bootlocation (char **device __attribute__ ((unused)), - char **path __attribute__ ((unused))) -{ -} - -void -grub_machine_fini (int flags) -{ - if (flags & GRUB_LOADER_FLAG_NORETURN) - grub_vga_text_fini (); - grub_stop_floppy (); -} diff --git a/thirdparty/grub-2.04/grub-core/kern/i386/qemu/mmap.c b/thirdparty/grub-2.04/grub-core/kern/i386/qemu/mmap.c deleted file mode 100644 index f449637ef..000000000 --- a/thirdparty/grub-2.04/grub-core/kern/i386/qemu/mmap.c +++ /dev/null @@ -1,107 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include -#include - -#define QEMU_CMOS_MEMSIZE_HIGH 0x35 -#define QEMU_CMOS_MEMSIZE_LOW 0x34 - -#define QEMU_CMOS_MEMSIZE2_HIGH 0x31 -#define QEMU_CMOS_MEMSIZE2_LOW 0x30 - -#define min(a,b) ((a) > (b) ? (b) : (a)) - -extern char _start[]; -extern char _end[]; - -static grub_uint64_t mem_size, above_4g; - -void -grub_machine_mmap_init (void) -{ - grub_uint8_t high, low, b, c, d; - grub_cmos_read (QEMU_CMOS_MEMSIZE_HIGH, &high); - grub_cmos_read (QEMU_CMOS_MEMSIZE_LOW, &low); - mem_size = ((grub_uint64_t) high) << 24 - | ((grub_uint64_t) low) << 16; - if (mem_size > 0) - { - /* Don't ask... */ - mem_size += (16 * 1024 * 1024); - } - else - { - grub_cmos_read (QEMU_CMOS_MEMSIZE2_HIGH, &high); - grub_cmos_read (QEMU_CMOS_MEMSIZE2_LOW, &low); - mem_size - = ((((grub_uint64_t) high) << 18) | (((grub_uint64_t) low) << 10)) - + 1024 * 1024; - } - - grub_cmos_read (0x5b, &b); - grub_cmos_read (0x5c, &c); - grub_cmos_read (0x5d, &d); - above_4g = (((grub_uint64_t) b) << 16) - | (((grub_uint64_t) c) << 24) - | (((grub_uint64_t) d) << 32); -} - -grub_err_t -grub_machine_mmap_iterate (grub_memory_hook_t hook, void *hook_data) -{ - if (hook (0x0, - (grub_addr_t) _start, - GRUB_MEMORY_AVAILABLE, hook_data)) - return 1; - - if (hook ((grub_addr_t) _end, - 0xa0000 - (grub_addr_t) _end, - GRUB_MEMORY_AVAILABLE, hook_data)) - return 1; - - if (hook (GRUB_MEMORY_MACHINE_UPPER, - 0x100000 - GRUB_MEMORY_MACHINE_UPPER, - GRUB_MEMORY_RESERVED, hook_data)) - return 1; - - /* Everything else is free. */ - if (hook (0x100000, - min (mem_size, (grub_uint32_t) -GRUB_BOOT_MACHINE_SIZE) - 0x100000, - GRUB_MEMORY_AVAILABLE, hook_data)) - return 1; - - /* Protect boot.img, which contains the gdt. It is mapped at the top of memory - (it is also mapped below 0x100000, but we already reserved that area). */ - if (hook ((grub_uint32_t) -GRUB_BOOT_MACHINE_SIZE, - GRUB_BOOT_MACHINE_SIZE, - GRUB_MEMORY_RESERVED, hook_data)) - return 1; - - if (above_4g != 0 && hook (0x100000000ULL, above_4g, - GRUB_MEMORY_AVAILABLE, hook_data)) - return 1; - - return 0; -} diff --git a/thirdparty/grub-2.04/grub-core/kern/i386/qemu/startup.S b/thirdparty/grub-2.04/grub-core/kern/i386/qemu/startup.S deleted file mode 100644 index 0d89858d9..000000000 --- a/thirdparty/grub-2.04/grub-core/kern/i386/qemu/startup.S +++ /dev/null @@ -1,75 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 1999,2000,2001,2002,2003,2005,2006,2007,2008,2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include - -#include -#include - - .text - .code32 - .globl _start -_start: - jmp codestart - - .org GRUB_KERNEL_I386_QEMU_CORE_ENTRY_ADDR -VARIABLE(grub_core_entry_addr) - .long 0 - -codestart: - /* Relocate to low memory. First we figure out our location. - We will derive the rom start address from it. */ - call 1f -1: popl %esi - - /* Rom size is a multiple of 64 kiB. With this we get the - value of `grub_core_entry_addr' in %esi. */ - xorw %si, %si - - movl $(_edata - _start), %ecx - movl $_start, %edi - cld - rep - movsb - ljmp $GRUB_MEMORY_MACHINE_PROT_MODE_CSEG, $1f -1: - - /* clean out the bss */ - movl $BSS_START_SYMBOL, %edi - - /* compute the bss length */ - movl $END_SYMBOL, %ecx - subl %edi, %ecx - - /* clean out */ - xorl %eax, %eax - cld - rep - stosb - - /* - * Call the start of main body of C code. - */ - call EXT_C(grub_main) - - /* This should never happen. */ - cli -1: - hlt - jmp 1b diff --git a/thirdparty/grub-2.04/grub-core/kern/i386/realmode.S b/thirdparty/grub-2.04/grub-core/kern/i386/realmode.S deleted file mode 100644 index 998fdc756..000000000 --- a/thirdparty/grub-2.04/grub-core/kern/i386/realmode.S +++ /dev/null @@ -1,281 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 1999,2000,2001,2002,2003,2005,2006,2007,2009,2010 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include - -/* - * Note: These functions defined in this file may be called from C. - * Be careful of that you must not modify some registers. Quote - * from gcc-2.95.2/gcc/config/i386/i386.h: - - 1 for registers not available across function calls. - These must include the FIXED_REGISTERS and also any - registers that can be used without being saved. - The latter must include the registers where values are returned - and the register where structure-value addresses are passed. - Aside from that, you can include as many other registers as you like. - - ax,dx,cx,bx,si,di,bp,sp,st,st1,st2,st3,st4,st5,st6,st7,arg -{ 1, 1, 1, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 } - */ - -/* - * Note: GRUB is compiled with the options -mrtd and -mregparm=3. - * So the first three arguments are passed in %eax, %edx, and %ecx, - * respectively, and if a function has a fixed number of arguments - * and the number if greater than three, the function must return - * with "ret $N" where N is ((the number of arguments) - 3) * 4. - */ - -/* - * This is the area for all of the special variables. - */ - -protstack: - .long GRUB_MEMORY_MACHINE_PROT_STACK - - .macro PROT_TO_REAL - call prot_to_real - .endm - - .macro REAL_TO_PROT - calll real_to_prot - .endm - -/* - * This is the Global Descriptor Table - * - * An entry, a "Segment Descriptor", looks like this: - * - * 31 24 19 16 7 0 - * ------------------------------------------------------------ - * | | |B| |A| | | |1|0|E|W|A| | - * | BASE 31..24 |G|/|L|V| LIMIT |P|DPL| TYPE | BASE 23:16 | 4 - * | | |D| |L| 19..16| | |1|1|C|R|A| | - * ------------------------------------------------------------ - * | | | - * | BASE 15..0 | LIMIT 15..0 | 0 - * | | | - * ------------------------------------------------------------ - * - * Note the ordering of the data items is reversed from the above - * description. - */ - - .p2align 5 /* force 4-byte alignment */ -gdt: - .word 0, 0 - .byte 0, 0, 0, 0 - - /* -- code segment -- - * base = 0x00000000, limit = 0xFFFFF (4 KiB Granularity), present - * type = 32bit code execute/read, DPL = 0 - */ - .word 0xFFFF, 0 - .byte 0, 0x9A, 0xCF, 0 - - /* -- data segment -- - * base = 0x00000000, limit 0xFFFFF (4 KiB Granularity), present - * type = 32 bit data read/write, DPL = 0 - */ - .word 0xFFFF, 0 - .byte 0, 0x92, 0xCF, 0 - - /* -- 16 bit real mode CS -- - * base = 0x00000000, limit 0x0FFFF (1 B Granularity), present - * type = 16 bit code execute/read only/conforming, DPL = 0 - */ - .word 0xFFFF, 0 - .byte 0, 0x9E, 0, 0 - - /* -- 16 bit real mode DS -- - * base = 0x00000000, limit 0x0FFFF (1 B Granularity), present - * type = 16 bit data read/write, DPL = 0 - */ - .word 0xFFFF, 0 - .byte 0, 0x92, 0, 0 - - - .p2align 5 -/* this is the GDT descriptor */ -gdtdesc: - .word 0x27 /* limit */ - .long gdt /* addr */ -LOCAL(realidt): - .word 0x400 - .long 0 -protidt: - .word 0 - .long 0 - -/* - * These next two routines, "real_to_prot" and "prot_to_real" are structured - * in a very specific way. Be very careful when changing them. - * - * NOTE: Use of either one messes up %eax and %ebp. - */ - -real_to_prot: - .code16 - cli - - /* load the GDT register */ - xorw %ax, %ax - movw %ax, %ds -#ifdef GRUB_MACHINE_QEMU - /* - qemu is special: gdtdesc is in ROM. - %cs = 0xf000 - _start + GRUB_BOOT_MACHINE_SIZE = 0x100000 - So - _start + GRUB_BOOT_MACHINE_SIZE - 0x10000 points to the same point - as %cs. - gdtdesc - (_start + GRUB_BOOT_MACHINE_SIZE - 0x10000) - = gdtdesc - _start - GRUB_BOOT_MACHINE_SIZE + 0x10000 - but the later can be computed by assembly. - */ - lgdtl %cs:(gdtdesc - _start - GRUB_BOOT_MACHINE_SIZE + 0x10000) -#else - lgdtl gdtdesc -#endif - - /* turn on protected mode */ - movl %cr0, %eax - orl $GRUB_MEMORY_CPU_CR0_PE_ON, %eax - movl %eax, %cr0 - - /* jump to relocation, flush prefetch queue, and reload %cs */ - ljmpl $GRUB_MEMORY_MACHINE_PROT_MODE_CSEG, $protcseg - - .code32 -protcseg: - /* reload other segment registers */ - movw $GRUB_MEMORY_MACHINE_PROT_MODE_DSEG, %ax - movw %ax, %ds - movw %ax, %es - movw %ax, %fs - movw %ax, %gs - movw %ax, %ss - - /* put the return address in a known safe location */ - movl (%esp), %eax - movl %eax, GRUB_MEMORY_MACHINE_REAL_STACK - - /* get protected mode stack */ - movl protstack, %eax - movl %eax, %esp - movl %eax, %ebp - - /* get return address onto the right stack */ - movl GRUB_MEMORY_MACHINE_REAL_STACK, %eax - movl %eax, (%esp) - - /* zero %eax */ - xorl %eax, %eax - - sidt LOCAL(realidt) - lidt protidt - - /* return on the old (or initialized) stack! */ - ret - /* prot_to_real assumes that this code is under 64K which is not - true for qemu. */ -#ifndef GRUB_MACHINE_QEMU -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 1999,2000,2001,2002,2003,2005,2006,2007,2009,2010 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -prot_to_real: - /* just in case, set GDT */ - lgdt gdtdesc - - sidt protidt - lidt LOCAL(realidt) - - /* save the protected mode stack */ - movl %esp, %eax - movl %eax, protstack - - /* get the return address */ - movl (%esp), %eax - movl %eax, GRUB_MEMORY_MACHINE_REAL_STACK - - /* set up new stack */ - movl $GRUB_MEMORY_MACHINE_REAL_STACK, %eax - movl %eax, %esp - movl %eax, %ebp - - /* set up segment limits */ - movw $GRUB_MEMORY_MACHINE_PSEUDO_REAL_DSEG, %ax - movw %ax, %ds - movw %ax, %es - movw %ax, %fs - movw %ax, %gs - movw %ax, %ss - - /* this might be an extra step */ - /* jump to a 16 bit segment */ - ljmp $GRUB_MEMORY_MACHINE_PSEUDO_REAL_CSEG, $tmpcseg - -tmpcseg: - .code16 - - /* clear the PE bit of CR0 */ - movl %cr0, %eax - andl $(~GRUB_MEMORY_CPU_CR0_PE_ON), %eax - movl %eax, %cr0 - - /* flush prefetch queue, reload %cs */ - ljmpl $0, $realcseg - -realcseg: - /* we are in real mode now - * set up the real mode segment registers : DS, SS, ES - */ - /* zero %eax */ - xorl %eax, %eax - - movw %ax, %ds - movw %ax, %es - movw %ax, %fs - movw %ax, %gs - movw %ax, %ss - -#ifdef GRUB_MACHINE_PCBIOS - /* restore interrupts */ - sti -#endif - - /* return on new stack! */ - retl -#endif - .code32 diff --git a/thirdparty/grub-2.04/grub-core/kern/i386/tsc.c b/thirdparty/grub-2.04/grub-core/kern/i386/tsc.c deleted file mode 100644 index 9293b161d..000000000 --- a/thirdparty/grub-2.04/grub-core/kern/i386/tsc.c +++ /dev/null @@ -1,78 +0,0 @@ -/* kern/i386/tsc.c - x86 TSC time source implementation - * Requires Pentium or better x86 CPU that supports the RDTSC instruction. - * This module calibrates the TSC to real time. - * - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2008 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include - -/* This defines the value TSC had at the epoch (that is, when we calibrated it). */ -static grub_uint64_t tsc_boot_time; - -/* Calibrated TSC rate. (In ms per 2^32 ticks) */ -/* We assume that the tick is less than 1 ms and hence this value fits - in 32-bit. */ -grub_uint32_t grub_tsc_rate; - -static grub_uint64_t -grub_tsc_get_time_ms (void) -{ - grub_uint64_t a = grub_get_tsc () - tsc_boot_time; - grub_uint64_t ah = a >> 32; - grub_uint64_t al = a & 0xffffffff; - - return ((al * grub_tsc_rate) >> 32) + ah * grub_tsc_rate; -} - -static int -calibrate_tsc_hardcode (void) -{ - grub_tsc_rate = 5368;/* 800 MHz */ - return 1; -} - -void -grub_tsc_init (void) -{ - if (!grub_cpu_is_tsc_supported ()) - { -#if defined (GRUB_MACHINE_PCBIOS) || defined (GRUB_MACHINE_IEEE1275) - grub_install_get_time_ms (grub_rtc_get_time_ms); -#else - grub_fatal ("no TSC found"); -#endif - return; - } - - tsc_boot_time = grub_get_tsc (); - -#if defined (GRUB_MACHINE_XEN) || defined (GRUB_MACHINE_XEN_PVH) - (void) (grub_tsc_calibrate_from_xen () || calibrate_tsc_hardcode()); -#elif defined (GRUB_MACHINE_EFI) - (void) (grub_tsc_calibrate_from_pmtimer () || grub_tsc_calibrate_from_pit () || grub_tsc_calibrate_from_efi() || calibrate_tsc_hardcode()); -#elif defined (GRUB_MACHINE_COREBOOT) - (void) (grub_tsc_calibrate_from_pmtimer () || grub_tsc_calibrate_from_pit () || calibrate_tsc_hardcode()); -#else - (void) (grub_tsc_calibrate_from_pit () || calibrate_tsc_hardcode()); -#endif - grub_install_get_time_ms (grub_tsc_get_time_ms); -} diff --git a/thirdparty/grub-2.04/grub-core/kern/i386/tsc_pit.c b/thirdparty/grub-2.04/grub-core/kern/i386/tsc_pit.c deleted file mode 100644 index 67990bfa6..000000000 --- a/thirdparty/grub-2.04/grub-core/kern/i386/tsc_pit.c +++ /dev/null @@ -1,84 +0,0 @@ -/* kern/i386/tsc.c - x86 TSC time source implementation - * Requires Pentium or better x86 CPU that supports the RDTSC instruction. - * This module uses the PIT to calibrate the TSC to - * real time. - * - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2008 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include - -static int -grub_pit_wait (void) -{ - int ret = 0; - - /* Disable timer2 gate and speaker. */ - grub_outb (grub_inb (GRUB_PIT_SPEAKER_PORT) - & ~ (GRUB_PIT_SPK_DATA | GRUB_PIT_SPK_TMR2), - GRUB_PIT_SPEAKER_PORT); - - /* Set tics. */ - grub_outb (GRUB_PIT_CTRL_SELECT_2 | GRUB_PIT_CTRL_READLOAD_WORD, - GRUB_PIT_CTRL); - /* 0xffff ticks: 55ms. */ - grub_outb (0xff, GRUB_PIT_COUNTER_2); - grub_outb (0xff, GRUB_PIT_COUNTER_2); - - /* Enable timer2 gate, keep speaker disabled. */ - grub_outb ((grub_inb (GRUB_PIT_SPEAKER_PORT) & ~ GRUB_PIT_SPK_DATA) - | GRUB_PIT_SPK_TMR2, - GRUB_PIT_SPEAKER_PORT); - - if ((grub_inb (GRUB_PIT_SPEAKER_PORT) & GRUB_PIT_SPK_TMR2_LATCH) == 0x00) { - ret = 1; - /* Wait. */ - while ((grub_inb (GRUB_PIT_SPEAKER_PORT) & GRUB_PIT_SPK_TMR2_LATCH) == 0x00); - } - - /* Disable timer2 gate and speaker. */ - grub_outb (grub_inb (GRUB_PIT_SPEAKER_PORT) - & ~ (GRUB_PIT_SPK_DATA | GRUB_PIT_SPK_TMR2), - GRUB_PIT_SPEAKER_PORT); - - return ret; -} - -/* Calibrate the TSC based on the RTC. */ -int -grub_tsc_calibrate_from_pit (void) -{ - /* First calibrate the TSC rate (relative, not absolute time). */ - grub_uint64_t start_tsc, end_tsc; - - start_tsc = grub_get_tsc (); - if (!grub_pit_wait ()) - return 0; - end_tsc = grub_get_tsc (); - - grub_tsc_rate = 0; - if (end_tsc > start_tsc) - grub_tsc_rate = grub_divmod64 ((55ULL << 32), end_tsc - start_tsc, 0); - if (grub_tsc_rate == 0) - return 0; - return 1; -} diff --git a/thirdparty/grub-2.04/grub-core/kern/i386/tsc_pmtimer.c b/thirdparty/grub-2.04/grub-core/kern/i386/tsc_pmtimer.c deleted file mode 100644 index c9c361699..000000000 --- a/thirdparty/grub-2.04/grub-core/kern/i386/tsc_pmtimer.c +++ /dev/null @@ -1,88 +0,0 @@ -/* kern/i386/tsc.c - x86 TSC time source implementation - * Requires Pentium or better x86 CPU that supports the RDTSC instruction. - * This module uses the PIT to calibrate the TSC to - * real time. - * - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2008 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include - -grub_uint64_t -grub_pmtimer_wait_count_tsc (grub_port_t pmtimer, - grub_uint16_t num_pm_ticks) -{ - grub_uint32_t start; - grub_uint32_t last; - grub_uint32_t cur, end; - grub_uint64_t start_tsc; - grub_uint64_t end_tsc; - int num_iter = 0; - - start = grub_inl (pmtimer) & 0xffffff; - last = start; - end = start + num_pm_ticks; - start_tsc = grub_get_tsc (); - while (1) - { - cur = grub_inl (pmtimer) & 0xffffff; - if (cur < last) - cur |= 0x1000000; - num_iter++; - if (cur >= end) - { - end_tsc = grub_get_tsc (); - return end_tsc - start_tsc; - } - /* Check for broken PM timer. - 50000000 TSCs is between 5 ms (10GHz) and 200 ms (250 MHz) - if after this time we still don't have 1 ms on pmtimer, then - pmtimer is broken. - */ - if ((num_iter & 0xffffff) == 0 && grub_get_tsc () - start_tsc > 5000000) { - return 0; - } - } -} - -int -grub_tsc_calibrate_from_pmtimer (void) -{ - struct grub_acpi_fadt *fadt; - grub_port_t pmtimer; - grub_uint64_t tsc_diff; - - fadt = grub_acpi_find_fadt (); - if (!fadt) - return 0; - pmtimer = fadt->pmtimer; - if (!pmtimer) - return 0; - - /* It's 3.579545 MHz clock. Wait 1 ms. */ - tsc_diff = grub_pmtimer_wait_count_tsc (pmtimer, 3580); - if (tsc_diff == 0) - return 0; - grub_tsc_rate = grub_divmod64 ((1ULL << 32), tsc_diff, 0); - return 1; -} diff --git a/thirdparty/grub-2.04/grub-core/kern/i386/xen/hypercall.S b/thirdparty/grub-2.04/grub-core/kern/i386/xen/hypercall.S deleted file mode 100644 index 09d75c3a5..000000000 --- a/thirdparty/grub-2.04/grub-core/kern/i386/xen/hypercall.S +++ /dev/null @@ -1,43 +0,0 @@ -/* hypercall.S - wrappers for Xen hypercalls */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2013 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include - -FUNCTION(grub_xen_hypercall) - pushl %ebp - movl %esp, %ebp - pushl %esi - pushl %edi - pushl %ebx - - /* call number already in %eax. */ - /* %edx -> %ebx*/ - /* %ecx -> %ecx*/ - movl %edx, %ebx - movl 8(%ebp), %edx - movl 12(%ebp), %esi - movl 16(%ebp), %edi - movl 20(%ebp), %ebp - int $0x82 - popl %ebx - popl %edi - popl %esi - popl %ebp - ret diff --git a/thirdparty/grub-2.04/grub-core/kern/i386/xen/pvh.c b/thirdparty/grub-2.04/grub-core/kern/i386/xen/pvh.c deleted file mode 100644 index 91fbca859..000000000 --- a/thirdparty/grub-2.04/grub-core/kern/i386/xen/pvh.c +++ /dev/null @@ -1,369 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2018 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#define XEN_MEMORY_MAP_SIZE 128 - -grub_uint64_t grub_rsdp_addr; - -static char hypercall_page[GRUB_XEN_PAGE_SIZE] - __attribute__ ((aligned (GRUB_XEN_PAGE_SIZE))); - -static grub_uint32_t xen_cpuid_base; -static struct start_info grub_xen_start_page; -static struct grub_e820_mmap_entry map[XEN_MEMORY_MAP_SIZE]; -static unsigned int nr_map_entries; - -static void -grub_xen_cons_msg (const char *msg) -{ - const char *c; - - for (c = msg; *c; c++) - grub_outb (*c, XEN_HVM_DEBUGCONS_IOPORT); -} - -static void -grub_xen_panic (const char *msg) -{ - grub_xen_cons_msg (msg); - grub_xen_cons_msg ("System halted!\n"); - - asm volatile ("cli"); - - while (1) - { - asm volatile ("hlt"); - } -} - -static void -grub_xen_cpuid_base (void) -{ - grub_uint32_t base, eax, signature[3]; - - for (base = 0x40000000; base < 0x40010000; base += 0x100) - { - grub_cpuid (base, eax, signature[0], signature[1], signature[2]); - if (!grub_memcmp ("XenVMMXenVMM", signature, 12) && (eax - base) >= 2) - { - xen_cpuid_base = base; - return; - } - } - - grub_xen_panic ("Found no Xen signature!\n"); -} - -static void -grub_xen_setup_hypercall_page (void) -{ - grub_uint32_t msr, addr, eax, ebx, ecx, edx; - - /* Get base address of Xen-specific MSRs. */ - grub_cpuid (xen_cpuid_base + 2, eax, ebx, ecx, edx); - msr = ebx; - addr = (grub_uint32_t) (&hypercall_page); - - /* Specify hypercall page address for Xen. */ - asm volatile ("wrmsr" : : "c" (msr), "a" (addr), "d" (0) : "memory"); -} - -int -grub_xen_hypercall (grub_uint32_t callno, grub_uint32_t a0, - grub_uint32_t a1, grub_uint32_t a2, - grub_uint32_t a3, grub_uint32_t a4, - grub_uint32_t a5 __attribute__ ((unused))) -{ - grub_uint32_t res; - - asm volatile ("call *%[callno]" - : "=a" (res), "+b" (a0), "+c" (a1), "+d" (a2), - "+S" (a3), "+D" (a4) - : [callno] "a" (&hypercall_page[callno * 32]) - : "memory"); - return res; -} - -static grub_uint32_t -grub_xen_get_param (int idx) -{ - struct xen_hvm_param xhv; - int r; - - xhv.domid = DOMID_SELF; - xhv.index = idx; - r = grub_xen_hypercall (__HYPERVISOR_hvm_op, HVMOP_get_param, - (grub_uint32_t) (&xhv), 0, 0, 0, 0); - if (r < 0) - grub_xen_panic ("Could not get parameter from Xen!\n"); - return xhv.value; -} - -static void * -grub_xen_add_physmap (unsigned int space, void *addr) -{ - struct xen_add_to_physmap xatp; - - xatp.domid = DOMID_SELF; - xatp.idx = 0; - xatp.space = space; - xatp.gpfn = (grub_addr_t) addr >> GRUB_XEN_LOG_PAGE_SIZE; - if (grub_xen_hypercall (__HYPERVISOR_memory_op, XENMEM_add_to_physmap, - (grub_uint32_t) (&xatp), 0, 0, 0, 0)) - grub_xen_panic ("Memory_op hypercall failed!\n"); - return addr; -} - -static void -grub_xen_sort_mmap (void) -{ - grub_uint64_t from, to; - unsigned int i; - struct grub_e820_mmap_entry tmp; - - /* Align map entries to page boundaries. */ - for (i = 0; i < nr_map_entries; i++) - { - from = map[i].addr; - to = from + map[i].len; - if (map[i].type == GRUB_MEMORY_AVAILABLE) - { - from = ALIGN_UP (from, GRUB_XEN_PAGE_SIZE); - to = ALIGN_DOWN (to, GRUB_XEN_PAGE_SIZE); - } - else - { - from = ALIGN_DOWN (from, GRUB_XEN_PAGE_SIZE); - to = ALIGN_UP (to, GRUB_XEN_PAGE_SIZE); - } - map[i].addr = from; - map[i].len = to - from; - } - - again: - /* Sort entries by start address. */ - for (i = 1; i < nr_map_entries; i++) - { - if (map[i].addr >= map[i - 1].addr) - continue; - tmp = map[i]; - map[i] = map[i - 1]; - map[i - 1] = tmp; - i = 0; - } - - /* Detect overlapping areas. */ - for (i = 1; i < nr_map_entries; i++) - { - if (map[i].addr >= map[i - 1].addr + map[i - 1].len) - continue; - tmp = map[i - 1]; - map[i - 1].len = map[i].addr - map[i - 1].addr; - if (map[i].addr + map[i].len >= tmp.addr + tmp.len) - continue; - if (nr_map_entries < ARRAY_SIZE (map)) - { - map[nr_map_entries].addr = map[i].addr + map[i].len; - map[nr_map_entries].len = tmp.addr + tmp.len - map[nr_map_entries].addr; - map[nr_map_entries].type = tmp.type; - nr_map_entries++; - goto again; - } - } - - /* Merge adjacent entries. */ - for (i = 1; i < nr_map_entries; i++) - { - if (map[i].type == map[i - 1].type && - map[i].addr == map[i - 1].addr + map[i - 1].len) - { - map[i - 1].len += map[i].len; - map[i] = map[nr_map_entries - 1]; - nr_map_entries--; - goto again; - } - } -} - -static void -grub_xen_get_mmap (void) -{ - struct xen_memory_map memmap; - - memmap.nr_entries = ARRAY_SIZE (map); - set_xen_guest_handle (memmap.buffer, map); - if (grub_xen_hypercall (__HYPERVISOR_memory_op, XENMEM_memory_map, - (grub_uint32_t) (&memmap), 0, 0, 0, 0)) - grub_xen_panic ("Could not get memory map from Xen!\n"); - nr_map_entries = memmap.nr_entries; - - grub_xen_sort_mmap (); -} - -static void -grub_xen_set_mmap (void) -{ - struct xen_foreign_memory_map memmap; - - memmap.domid = DOMID_SELF; - memmap.map.nr_entries = nr_map_entries; - set_xen_guest_handle (memmap.map.buffer, map); - grub_xen_hypercall (__HYPERVISOR_memory_op, XENMEM_set_memory_map, - (grub_uint32_t) (&memmap), 0, 0, 0, 0); -} - -static void -grub_xen_mm_init_regions (void) -{ - grub_uint64_t modend, from, to; - unsigned int i; - - modend = grub_modules_get_end (); - - for (i = 0; i < nr_map_entries; i++) - { - if (map[i].type != GRUB_MEMORY_AVAILABLE) - continue; - from = map[i].addr; - to = from + map[i].len; - if (from < modend) - from = modend; - if (from >= to || from >= (1ULL << 32)) - continue; - if (to > (1ULL << 32)) - to = 1ULL << 32; - grub_mm_init_region ((void *) (grub_addr_t) from, to - from); - } -} - -static grub_uint64_t -grub_xen_find_page (grub_uint64_t start) -{ - unsigned int i, j; - grub_uint64_t last = start; - - /* - * Try to find a e820 map hole below 4G. - * Relies on page-aligned entries (addr and len) and input (start). - */ - - for (i = 0; i < nr_map_entries; i++) - { - if (last > map[i].addr + map[i].len) - continue; - if (last < map[i].addr) - return last; - if ((map[i].addr >> 32) || ((map[i].addr + map[i].len) >> 32)) - break; - last = map[i].addr + map[i].len; - } - if (i == nr_map_entries) - return last; - - /* No hole found, use the highest RAM page below 4G and reserve it. */ - if (nr_map_entries == ARRAY_SIZE (map)) - grub_xen_panic ("Memory map size limit reached!\n"); - for (i = 0, j = 0; i < nr_map_entries; i++) - { - if (map[i].type != GRUB_MEMORY_AVAILABLE) - continue; - if (map[i].addr >> 32) - break; - j = i; - if ((map[i].addr + map[i].len) >> 32) - break; - } - if (map[j].type != GRUB_MEMORY_AVAILABLE) - grub_xen_panic ("No free memory page found!\n"); - if ((map[j].addr + map[j].len) >> 32) - last = (1ULL << 32) - GRUB_XEN_PAGE_SIZE; - else - last = map[j].addr + map[j].len - GRUB_XEN_PAGE_SIZE; - map[nr_map_entries].addr = last; - map[nr_map_entries].len = GRUB_XEN_PAGE_SIZE; - map[nr_map_entries].type = GRUB_MEMORY_RESERVED; - nr_map_entries++; - grub_xen_sort_mmap (); - - return last; -} - -void -grub_xen_setup_pvh (void) -{ - grub_addr_t par; - - grub_xen_cpuid_base (); - grub_xen_setup_hypercall_page (); - grub_xen_get_mmap (); - - /* Setup Xen data. */ - grub_xen_start_page_addr = &grub_xen_start_page; - - par = grub_xen_get_param (HVM_PARAM_CONSOLE_PFN); - grub_xen_start_page_addr->console.domU.mfn = par; - grub_xen_xcons = (void *) (grub_addr_t) (par << GRUB_XEN_LOG_PAGE_SIZE); - par = grub_xen_get_param (HVM_PARAM_CONSOLE_EVTCHN); - grub_xen_start_page_addr->console.domU.evtchn = par; - - par = grub_xen_get_param (HVM_PARAM_STORE_PFN); - grub_xen_start_page_addr->store_mfn = par; - grub_xen_xenstore = (void *) (grub_addr_t) (par << GRUB_XEN_LOG_PAGE_SIZE); - par = grub_xen_get_param (HVM_PARAM_STORE_EVTCHN); - grub_xen_start_page_addr->store_evtchn = par; - - par = grub_xen_find_page (0); - grub_xen_grant_table = grub_xen_add_physmap (XENMAPSPACE_grant_table, - (void *) par); - par = grub_xen_find_page (par + GRUB_XEN_PAGE_SIZE); - grub_xen_shared_info = grub_xen_add_physmap (XENMAPSPACE_shared_info, - (void *) par); - grub_xen_set_mmap (); - - grub_xen_mm_init_regions (); - - grub_rsdp_addr = pvh_start_info->rsdp_paddr; -} - -grub_err_t -grub_machine_mmap_iterate (grub_memory_hook_t hook, void *hook_data) -{ - unsigned int i; - - for (i = 0; i < nr_map_entries; i++) - { - if (map[i].len && hook (map[i].addr, map[i].len, map[i].type, hook_data)) - break; - } - - return GRUB_ERR_NONE; -} diff --git a/thirdparty/grub-2.04/grub-core/kern/i386/xen/startup.S b/thirdparty/grub-2.04/grub-core/kern/i386/xen/startup.S deleted file mode 100644 index fbe8300a7..000000000 --- a/thirdparty/grub-2.04/grub-core/kern/i386/xen/startup.S +++ /dev/null @@ -1,38 +0,0 @@ -/* startup.S - bootstrap GRUB itself */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2013 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include - - .file "startup.S" - .text - .globl start, _start - .code32 - -start: -_start: - leal LOCAL(stack_end), %esp - movl %esi, EXT_C(grub_xen_start_page_addr) - - call EXT_C(grub_main) - /* Doesn't return. */ - - .bss - .space (1 << 22) -LOCAL(stack_end): diff --git a/thirdparty/grub-2.04/grub-core/kern/i386/xen/startup_pvh.S b/thirdparty/grub-2.04/grub-core/kern/i386/xen/startup_pvh.S deleted file mode 100644 index 363c31858..000000000 --- a/thirdparty/grub-2.04/grub-core/kern/i386/xen/startup_pvh.S +++ /dev/null @@ -1,81 +0,0 @@ -/* startup.S - bootstrap GRUB itself */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2018 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include - - .file "startup_pvh.S" - .text - .globl start, _start - .code32 - -start: -_start: - cld - lgdt gdtdesc - ljmp $GRUB_MEMORY_MACHINE_PROT_MODE_CSEG, $1f -1: - movl $GRUB_MEMORY_MACHINE_PROT_MODE_DSEG, %eax - mov %eax, %ds - mov %eax, %es - mov %eax, %fs - mov %eax, %gs - mov %eax, %ss - leal LOCAL(stack_end), %esp - - /* Save address of start info structure. */ - mov %ebx, pvh_start_info - call EXT_C(grub_main) - /* Doesn't return. */ - - .p2align 3 -gdt: - .word 0, 0 - .byte 0, 0, 0, 0 - - /* -- code segment -- - * base = 0x00000000, limit = 0xFFFFF (4 KiB Granularity), present - * type = 32bit code execute/read, DPL = 0 - */ - .word 0xFFFF, 0 - .byte 0, 0x9A, 0xCF, 0 - - /* -- data segment -- - * base = 0x00000000, limit 0xFFFFF (4 KiB Granularity), present - * type = 32 bit data read/write, DPL = 0 - */ - .word 0xFFFF, 0 - .byte 0, 0x92, 0xCF, 0 - - .p2align 3 -/* this is the GDT descriptor */ -gdtdesc: - .word 0x17 /* limit */ - .long gdt /* addr */ - - .p2align 2 -/* Saved pointer to start info structure. */ - .globl pvh_start_info -pvh_start_info: - .long 0 - - .bss - .space GRUB_MEMORY_MACHINE_PROT_STACK_SIZE -LOCAL(stack_end): diff --git a/thirdparty/grub-2.04/grub-core/kern/i386/xen/tsc.c b/thirdparty/grub-2.04/grub-core/kern/i386/xen/tsc.c deleted file mode 100644 index 8792b308d..000000000 --- a/thirdparty/grub-2.04/grub-core/kern/i386/xen/tsc.c +++ /dev/null @@ -1,40 +0,0 @@ -/* kern/i386/tsc.c - x86 TSC time source implementation - * Requires Pentium or better x86 CPU that supports the RDTSC instruction. - * This module uses the PIT to calibrate the TSC to - * real time. - * - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2008 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include - -int -grub_tsc_calibrate_from_xen (void) -{ - grub_uint64_t t; - t = grub_xen_shared_info->vcpu_info[0].time.tsc_to_system_mul; - if (grub_xen_shared_info->vcpu_info[0].time.tsc_shift > 0) - t <<= grub_xen_shared_info->vcpu_info[0].time.tsc_shift; - else - t >>= -grub_xen_shared_info->vcpu_info[0].time.tsc_shift; - grub_tsc_rate = grub_divmod64 (t, 1000000, 0); - return 1; -} diff --git a/thirdparty/grub-2.04/grub-core/kern/ia64/cache.c b/thirdparty/grub-2.04/grub-core/kern/ia64/cache.c deleted file mode 100644 index 13efd308f..000000000 --- a/thirdparty/grub-2.04/grub-core/kern/ia64/cache.c +++ /dev/null @@ -1,35 +0,0 @@ -/* init.c - initialize an ia64-based EFI system */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2008 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include - -void -grub_arch_sync_caches (void *address, grub_size_t len) -{ - /* Cache line length is at least 32. */ - len += (grub_uint64_t)address & 0x1f; - grub_uint64_t a = (grub_uint64_t)address & ~0x1f; - - /* Flush data. */ - for (len = (len + 31) & ~0x1f; len > 0; len -= 0x20, a += 0x20) - asm volatile ("fc.i %0" : : "r" (a)); - /* Sync and serialize. Maybe extra. */ - asm volatile (";; sync.i;; srlz.i;;"); -} diff --git a/thirdparty/grub-2.04/grub-core/kern/ia64/dl.c b/thirdparty/grub-2.04/grub-core/kern/ia64/dl.c deleted file mode 100644 index ebcf31629..000000000 --- a/thirdparty/grub-2.04/grub-core/kern/ia64/dl.c +++ /dev/null @@ -1,145 +0,0 @@ -/* dl.c - arch-dependent part of loadable module support */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2002,2004,2005,2007,2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include - -#define MASK19 ((1 << 19) - 1) -#define MASK20 ((1 << 20) - 1) - -/* Check if EHDR is a valid ELF header. */ -grub_err_t -grub_arch_dl_check_header (void *ehdr) -{ - Elf_Ehdr *e = ehdr; - - /* Check the magic numbers. */ - if (e->e_ident[EI_CLASS] != ELFCLASS64 - || e->e_ident[EI_DATA] != ELFDATA2LSB - || e->e_machine != EM_IA_64) - return grub_error (GRUB_ERR_BAD_OS, N_("invalid arch-dependent ELF magic")); - - return GRUB_ERR_NONE; -} - -#pragma GCC diagnostic ignored "-Wcast-align" - -/* Relocate symbols. */ -grub_err_t -grub_arch_dl_relocate_symbols (grub_dl_t mod, void *ehdr, - Elf_Shdr *s, grub_dl_segment_t seg) -{ - Elf_Rela *rel, *max; - - for (rel = (Elf_Rela *) ((char *) ehdr + s->sh_offset), - max = (Elf_Rela *) ((char *) rel + s->sh_size); - rel < max; - rel = (Elf_Rela *) ((char *) rel + s->sh_entsize)) - { - grub_addr_t addr; - Elf_Sym *sym; - grub_uint64_t value; - - if (seg->size < (rel->r_offset & ~3)) - return grub_error (GRUB_ERR_BAD_MODULE, - "reloc offset is out of the segment"); - - addr = (grub_addr_t) seg->addr + rel->r_offset; - sym = (Elf_Sym *) ((char *) mod->symtab - + mod->symsize * ELF_R_SYM (rel->r_info)); - - /* On the PPC the value does not have an explicit - addend, add it. */ - value = sym->st_value + rel->r_addend; - - switch (ELF_R_TYPE (rel->r_info)) - { - case R_IA64_PCREL21B: - { - grub_int64_t noff; - if (ELF_ST_TYPE (sym->st_info) == STT_FUNC) - { - struct grub_ia64_trampoline *tr = mod->trampptr; - grub_ia64_make_trampoline (tr, value); - noff = ((char *) tr - (char *) (addr & ~3)) >> 4; - mod->trampptr = tr + 1; - } - else - noff = ((char *) value - (char *) (addr & ~3)) >> 4; - - if ((noff & ~MASK19) && ((-noff) & ~MASK19)) - return grub_error (GRUB_ERR_BAD_MODULE, - "jump offset too big (%lx)", noff); - grub_ia64_add_value_to_slot_20b (addr, noff); - } - break; - case R_IA64_SEGREL64LSB: - *(grub_uint64_t *) addr += value - (grub_addr_t) seg->addr; - break; - case R_IA64_FPTR64LSB: - case R_IA64_DIR64LSB: - *(grub_uint64_t *) addr += value; - break; - case R_IA64_PCREL64LSB: - *(grub_uint64_t *) addr += value - addr; - break; - case R_IA64_GPREL64I: - grub_ia64_set_immu64 (addr, value - (grub_addr_t) mod->base); - break; - case R_IA64_GPREL22: - if ((value - (grub_addr_t) mod->base) & ~MASK20) - return grub_error (GRUB_ERR_BAD_MODULE, - "gprel offset too big (%lx)", - value - (grub_addr_t) mod->base); - grub_ia64_add_value_to_slot_21 (addr, value - (grub_addr_t) mod->base); - break; - - case R_IA64_LTOFF22X: - case R_IA64_LTOFF22: - if (ELF_ST_TYPE (sym->st_info) == STT_FUNC) - value = *(grub_uint64_t *) sym->st_value + rel->r_addend; - /* Fallthrough. */ - case R_IA64_LTOFF_FPTR22: - { - grub_uint64_t *gpptr = mod->gotptr; - *gpptr = value; - if (((grub_addr_t) gpptr - (grub_addr_t) mod->base) & ~MASK20) - return grub_error (GRUB_ERR_BAD_MODULE, - "gprel offset too big (%lx)", - (grub_addr_t) gpptr - (grub_addr_t) mod->base); - grub_ia64_add_value_to_slot_21 (addr, (grub_addr_t) gpptr - (grub_addr_t) mod->base); - mod->gotptr = gpptr + 1; - break; - } - /* We treat LTOFF22X as LTOFF22, so we can ignore LDXMOV. */ - case R_IA64_LDXMOV: - break; - default: - return grub_error (GRUB_ERR_NOT_IMPLEMENTED_YET, - N_("relocation 0x%x is not implemented yet"), - ELF_R_TYPE (rel->r_info)); - } - } - return GRUB_ERR_NONE; -} diff --git a/thirdparty/grub-2.04/grub-core/kern/ia64/dl_helper.c b/thirdparty/grub-2.04/grub-core/kern/ia64/dl_helper.c deleted file mode 100644 index c60159573..000000000 --- a/thirdparty/grub-2.04/grub-core/kern/ia64/dl_helper.c +++ /dev/null @@ -1,241 +0,0 @@ -/* dl.c - arch-dependent part of loadable module support */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2002,2004,2005,2007,2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include - -#pragma GCC diagnostic ignored "-Wcast-align" - -#define MASK20 ((1 << 20) - 1) -#define MASK3 (~(grub_addr_t) 3) - -void -grub_ia64_set_immu64 (grub_addr_t addr, grub_uint64_t val) -{ - /* Copied from binutils. */ - grub_uint64_t *ptr = ((grub_uint64_t *) (addr & MASK3)); - grub_uint64_t t0, t1; - - t0 = grub_le_to_cpu64 (ptr[0]); - t1 = grub_le_to_cpu64 (ptr[1]); - - /* tmpl/s: bits 0.. 5 in t0 - slot 0: bits 5..45 in t0 - slot 1: bits 46..63 in t0, bits 0..22 in t1 - slot 2: bits 23..63 in t1 */ - - /* First, clear the bits that form the 64 bit constant. */ - t0 &= ~(0x3ffffLL << 46); - t1 &= ~(0x7fffffLL - | (( (0x07fLL << 13) | (0x1ffLL << 27) - | (0x01fLL << 22) | (0x001LL << 21) - | (0x001LL << 36)) << 23)); - - t0 |= ((val >> 22) & 0x03ffffLL) << 46; /* 18 lsbs of imm41 */ - t1 |= ((val >> 40) & 0x7fffffLL) << 0; /* 23 msbs of imm41 */ - t1 |= ( (((val >> 0) & 0x07f) << 13) /* imm7b */ - | (((val >> 7) & 0x1ff) << 27) /* imm9d */ - | (((val >> 16) & 0x01f) << 22) /* imm5c */ - | (((val >> 21) & 0x001) << 21) /* ic */ - | (((val >> 63) & 0x001) << 36)) << 23; /* i */ - - ptr[0] = t0; - ptr[1] = t1; -} - -void -grub_ia64_add_value_to_slot_20b (grub_addr_t addr, grub_uint32_t value) -{ - grub_uint32_t val; - switch (addr & 3) - { - case 0: - val = grub_le_to_cpu32 (grub_get_unaligned32 (((grub_uint8_t *) - (addr & MASK3) + 2))); - val = (((((val & MASK20) + value) & MASK20) << 2) - | (val & ~(MASK20 << 2))); - grub_set_unaligned32 (((grub_uint8_t *) (addr & MASK3) + 2), - grub_cpu_to_le32 (val)); - break; - case 1: - val = grub_le_to_cpu32 (grub_get_unaligned32 (((grub_uint8_t *) - (addr & MASK3) + 7))); - val = ((((((val >> 3) & MASK20) + value) & MASK20) << 3) - | (val & ~(MASK20 << 3))); - grub_set_unaligned32 (((grub_uint8_t *) (addr & MASK3) + 7), - grub_cpu_to_le32 (val)); - break; - case 2: - val = grub_le_to_cpu32 (grub_get_unaligned32 (((grub_uint8_t *) - (addr & MASK3) + 12))); - val = ((((((val >> 4) & MASK20) + value) & MASK20) << 4) - | (val & ~(MASK20 << 4))); - grub_set_unaligned32 (((grub_uint8_t *) (addr & MASK3) + 12), - grub_cpu_to_le32 (val)); - break; - } -} - -#define MASKF21 ( ((1 << 23) - 1) & ~((1 << 7) | (1 << 8)) ) - -static grub_uint32_t -add_value_to_slot_21_real (grub_uint32_t a, grub_uint32_t value) -{ - grub_uint32_t high, mid, low, c; - low = (a & 0x00007f); - mid = (a & 0x7fc000) >> 7; - high = (a & 0x003e00) << 7; - c = (low | mid | high) + value; - return (c & 0x7f) | ((c << 7) & 0x7fc000) | ((c >> 7) & 0x0003e00); //0x003e00 -} - -void -grub_ia64_add_value_to_slot_21 (grub_addr_t addr, grub_uint32_t value) -{ - grub_uint32_t val; - switch (addr & 3) - { - case 0: - val = grub_le_to_cpu32 (grub_get_unaligned32 (((grub_uint8_t *) - (addr & MASK3) + 2))); - val = ((add_value_to_slot_21_real (((val >> 2) & MASKF21), value) - & MASKF21) << 2) | (val & ~(MASKF21 << 2)); - grub_set_unaligned32 (((grub_uint8_t *) (addr & MASK3) + 2), - grub_cpu_to_le32 (val)); - break; - case 1: - val = grub_le_to_cpu32 (grub_get_unaligned32 (((grub_uint8_t *) - (addr & MASK3) + 7))); - val = ((add_value_to_slot_21_real (((val >> 3) & MASKF21), value) - & MASKF21) << 3) | (val & ~(MASKF21 << 3)); - grub_set_unaligned32 (((grub_uint8_t *) (addr & MASK3) + 7), - grub_cpu_to_le32 (val)); - break; - case 2: - val = grub_le_to_cpu32 (grub_get_unaligned32 (((grub_uint8_t *) - (addr & MASK3) + 12))); - val = ((add_value_to_slot_21_real (((val >> 4) & MASKF21), value) - & MASKF21) << 4) | (val & ~(MASKF21 << 4)); - grub_set_unaligned32 (((grub_uint8_t *) (addr & MASK3) + 12), - grub_cpu_to_le32 (val)); - break; - } -} - -static const grub_uint8_t nopm[5] = - { - /* [MLX] nop.m 0x0 */ - 0x05, 0x00, 0x00, 0x00, 0x01 - }; - -#ifdef GRUB_UTIL -static grub_uint8_t jump[0x20] = - { - /* [MMI] add r15=r15,r1;; */ - 0x0b, 0x78, 0x3c, 0x02, 0x00, 0x20, - /* ld8 r16=[r15],8 */ - 0x00, 0x41, 0x3c, 0x30, 0x28, 0xc0, - /* mov r14=r1;; */ - 0x01, 0x08, 0x00, 0x84, - /* [MIB] ld8 r1=[r15] */ - 0x11, 0x08, 0x00, 0x1e, 0x18, 0x10, - /* mov b6=r16 */ - 0x60, 0x80, 0x04, 0x80, 0x03, 0x00, - /* br.few b6;; */ - 0x60, 0x00, 0x80, 0x00 - }; -#else -static const grub_uint8_t jump[0x20] = - { - /* ld8 r16=[r15],8 */ - 0x02, 0x80, 0x20, 0x1e, 0x18, 0x14, - /* mov r14=r1;; */ - 0xe0, 0x00, 0x04, 0x00, 0x42, 0x00, - /* nop.i 0x0 */ - 0x00, 0x00, 0x04, 0x00, - /* ld8 r1=[r15] */ - 0x11, 0x08, 0x00, 0x1e, 0x18, 0x10, - /* mov b6=r16 */ - 0x60, 0x80, 0x04, 0x80, 0x03, 0x00, - /* br.few b6;; */ - 0x60, 0x00, 0x80, 0x00 - }; -#endif - -void -grub_ia64_make_trampoline (struct grub_ia64_trampoline *tr, grub_uint64_t addr) -{ - grub_memcpy (tr->nop, nopm, sizeof (tr->nop)); - tr->addr_hi[0] = ((addr & 0xc00000) >> 16); - tr->addr_hi[1] = (addr >> 24) & 0xff; - tr->addr_hi[2] = (addr >> 32) & 0xff; - tr->addr_hi[3] = (addr >> 40) & 0xff; - tr->addr_hi[4] = (addr >> 48) & 0xff; - tr->addr_hi[5] = (addr >> 56) & 0xff; - tr->e0 = 0xe0; - tr->addr_lo[0] = ((addr & 0x000f) << 4) | 0x01; - tr->addr_lo[1] = (((addr & 0x0070) >> 4) | ((addr & 0x070000) >> 11) - | ((addr & 0x200000) >> 17)); - tr->addr_lo[2] = ((addr & 0x1f80) >> 5) | ((addr & 0x180000) >> 19); - tr->addr_lo[3] = ((addr & 0xe000) >> 13) | 0x60; - grub_memcpy (tr->jump, jump, sizeof (tr->jump)); -} - -grub_err_t -grub_ia64_dl_get_tramp_got_size (const void *ehdr, grub_size_t *tramp, - grub_size_t *got) -{ - const Elf64_Ehdr *e = ehdr; - grub_size_t cntt = 0, cntg = 0; - const Elf64_Shdr *s; - unsigned i; - - for (i = 0, s = (Elf64_Shdr *) ((char *) e + grub_le_to_cpu64 (e->e_shoff)); - i < grub_le_to_cpu16 (e->e_shnum); - i++, s = (Elf64_Shdr *) ((char *) s + grub_le_to_cpu16 (e->e_shentsize))) - if (s->sh_type == grub_cpu_to_le32_compile_time (SHT_RELA)) - { - const Elf64_Rela *rel, *max; - - for (rel = (Elf64_Rela *) ((char *) e + grub_le_to_cpu64 (s->sh_offset)), - max = (const Elf64_Rela *) ((char *) rel + grub_le_to_cpu64 (s->sh_size)); - rel < max; rel = (const Elf64_Rela *) ((char *) rel + grub_le_to_cpu64 (s->sh_entsize))) - switch (ELF64_R_TYPE (grub_le_to_cpu64 (rel->r_info))) - { - case R_IA64_PCREL21B: - cntt++; - break; - case R_IA64_LTOFF_FPTR22: - case R_IA64_LTOFF22X: - case R_IA64_LTOFF22: - cntg++; - break; - } - } - *tramp = cntt * sizeof (struct grub_ia64_trampoline); - *got = cntg * sizeof (grub_uint64_t); - - return GRUB_ERR_NONE; -} - diff --git a/thirdparty/grub-2.04/grub-core/kern/ia64/efi/init.c b/thirdparty/grub-2.04/grub-core/kern/ia64/efi/init.c deleted file mode 100644 index b5ecbd091..000000000 --- a/thirdparty/grub-2.04/grub-core/kern/ia64/efi/init.c +++ /dev/null @@ -1,75 +0,0 @@ -/* init.c - initialize an ia64-based EFI system */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2008 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include -#include -#include - -static grub_uint64_t divisor = 1; - -static grub_uint64_t -get_itc (void) -{ - grub_uint64_t ret; - asm volatile ("mov %0=ar.itc" : "=r" (ret)); - return ret; -} - -grub_uint64_t -grub_rtc_get_time_ms (void) -{ - return get_itc () / divisor; -} - -void -grub_machine_init (void) -{ - grub_efi_event_t event; - grub_uint64_t before, after; - grub_efi_uintn_t idx; - grub_efi_init (); - - efi_call_5 (grub_efi_system_table->boot_services->create_event, - GRUB_EFI_EVT_TIMER, GRUB_EFI_TPL_CALLBACK, 0, 0, &event); - - before = get_itc (); - efi_call_3 (grub_efi_system_table->boot_services->set_timer, event, - GRUB_EFI_TIMER_RELATIVE, 200000); - efi_call_3 (grub_efi_system_table->boot_services->wait_for_event, 1, - &event, &idx); - after = get_itc (); - efi_call_1 (grub_efi_system_table->boot_services->close_event, event); - divisor = (after - before + 5) / 20; - if (divisor == 0) - divisor = 800000; - grub_install_get_time_ms (grub_rtc_get_time_ms); -} - -void -grub_machine_fini (int flags) -{ - if (flags & GRUB_LOADER_FLAG_NORETURN) - grub_efi_fini (); -} diff --git a/thirdparty/grub-2.04/grub-core/kern/ia64/efi/startup.S b/thirdparty/grub-2.04/grub-core/kern/ia64/efi/startup.S deleted file mode 100644 index d75c6d7cc..000000000 --- a/thirdparty/grub-2.04/grub-core/kern/ia64/efi/startup.S +++ /dev/null @@ -1,44 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2008 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ -#include -#include -#include - - .text - .psr abi64 - .psr lsb - .lsb - - .global _start - .proc _start -_start: - alloc loc0=ar.pfs,2,4,0,0 - mov loc1=rp - addl loc2=@gprel(grub_efi_image_handle),gp - addl loc3=@gprel(grub_efi_system_table),gp - ;; - st8 [loc2]=in0 - st8 [loc3]=in1 - br.call.sptk.few rp=grub_main - ;; - mov ar.pfs=loc0 - mov rp=loc1 - ;; - br.ret.sptk.few rp - - .endp _start diff --git a/thirdparty/grub-2.04/grub-core/kern/ieee1275/cmain.c b/thirdparty/grub-2.04/grub-core/kern/ieee1275/cmain.c deleted file mode 100644 index 20cbbd761..000000000 --- a/thirdparty/grub-2.04/grub-core/kern/ieee1275/cmain.c +++ /dev/null @@ -1,220 +0,0 @@ -/* cmain.c - Startup code for the PowerPC. */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2003,2004,2005,2006,2007,2008 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include - -int (*grub_ieee1275_entry_fn) (void *) GRUB_IEEE1275_ENTRY_FN_ATTRIBUTE; - -grub_ieee1275_phandle_t grub_ieee1275_chosen; -grub_ieee1275_ihandle_t grub_ieee1275_mmu; - -static grub_uint32_t grub_ieee1275_flags; - - - -int -grub_ieee1275_test_flag (enum grub_ieee1275_flag flag) -{ - return (grub_ieee1275_flags & (1 << flag)); -} - -void -grub_ieee1275_set_flag (enum grub_ieee1275_flag flag) -{ - grub_ieee1275_flags |= (1 << flag); -} - -static void -grub_ieee1275_find_options (void) -{ - grub_ieee1275_phandle_t root; - grub_ieee1275_phandle_t options; - grub_ieee1275_phandle_t openprom; - grub_ieee1275_phandle_t bootrom; - int rc; - grub_uint32_t realmode = 0; - char tmp[256]; - int is_smartfirmware = 0; - int is_olpc = 0; - int is_qemu = 0; - grub_ssize_t actual; - -#ifdef __sparc__ - grub_ieee1275_set_flag (GRUB_IEEE1275_FLAG_NO_PARTITION_0); -#endif - - grub_ieee1275_finddevice ("/", &root); - grub_ieee1275_finddevice ("/options", &options); - grub_ieee1275_finddevice ("/openprom", &openprom); - - rc = grub_ieee1275_get_integer_property (options, "real-mode?", &realmode, - sizeof realmode, 0); - if (((rc >= 0) && realmode) || (grub_ieee1275_mmu == 0)) - grub_ieee1275_set_flag (GRUB_IEEE1275_FLAG_REAL_MODE); - - rc = grub_ieee1275_get_property (openprom, "CodeGen-copyright", - tmp, sizeof (tmp), 0); - if (rc >= 0 && !grub_strncmp (tmp, "SmartFirmware(tm)", - sizeof ("SmartFirmware(tm)") - 1)) - is_smartfirmware = 1; - - rc = grub_ieee1275_get_property (root, "architecture", - tmp, sizeof (tmp), 0); - if (rc >= 0 && !grub_strcmp (tmp, "OLPC")) - is_olpc = 1; - - rc = grub_ieee1275_get_property (root, "model", - tmp, sizeof (tmp), 0); - if (rc >= 0 && (!grub_strcmp (tmp, "Emulated PC") - || !grub_strcmp (tmp, "IBM pSeries (emulated by qemu)"))) { - is_qemu = 1; - } - - if (rc >= 0 && grub_strncmp (tmp, "IBM", 3) == 0) - grub_ieee1275_set_flag (GRUB_IEEE1275_FLAG_NO_TREE_SCANNING_FOR_DISKS); - - /* Old Macs have no key repeat, newer ones have fully working one. - The ones inbetween when repeated key generates an escaoe sequence - only the escape is repeated. With this workaround however a fast - e.g. down arrow-ESC is perceived as down arrow-down arrow which is - also annoying but is less so than the original bug of exiting from - the current window on arrow repeat. To avoid unaffected users suffering - from this workaround match only exact models known to have this bug. - */ - if (rc >= 0 && grub_strcmp (tmp, "PowerBook3,3") == 0) - grub_ieee1275_set_flag (GRUB_IEEE1275_FLAG_BROKEN_REPEAT); - - rc = grub_ieee1275_get_property (root, "compatible", - tmp, sizeof (tmp), &actual); - if (rc >= 0) - { - char *ptr; - - if (grub_strncmp (tmp, "sun4v", 5) == 0) - grub_ieee1275_set_flag (GRUB_IEEE1275_FLAG_RAW_DEVNAMES); - for (ptr = tmp; ptr - tmp < actual; ptr += grub_strlen (ptr) + 1) - { - if (grub_memcmp (ptr, "MacRISC", sizeof ("MacRISC") - 1) == 0 - && (ptr[sizeof ("MacRISC") - 1] == 0 - || grub_isdigit (ptr[sizeof ("MacRISC") - 1]))) - { - grub_ieee1275_set_flag (GRUB_IEEE1275_FLAG_BROKEN_ADDRESS_CELLS); - grub_ieee1275_set_flag (GRUB_IEEE1275_FLAG_NO_OFNET_SUFFIX); - grub_ieee1275_set_flag (GRUB_IEEE1275_FLAG_VIRT_TO_REAL_BROKEN); - grub_ieee1275_set_flag (GRUB_IEEE1275_FLAG_CURSORONOFF_ANSI_BROKEN); - break; - } - } - } - - if (is_smartfirmware) - { - /* Broken in all versions */ - grub_ieee1275_set_flag (GRUB_IEEE1275_FLAG_BROKEN_OUTPUT); - - /* There are two incompatible ways of checking the version number. Try - both. */ - rc = grub_ieee1275_get_property (openprom, "SmartFirmware-version", - tmp, sizeof (tmp), 0); - if (rc < 0) - rc = grub_ieee1275_get_property (openprom, "firmware-version", - tmp, sizeof (tmp), 0); - if (rc >= 0) - { - /* It is tempting to implement a version parser to set the flags for - e.g. 1.3 and below. However, there's a special situation here. - 3rd party updates which fix the partition bugs are common, and for - some reason their fixes aren't being merged into trunk. So for - example we know that 1.2 and 1.3 are broken, but there's 1.2.99 - and 1.3.99 which are known good (and applying this workaround - would cause breakage). */ - if (!grub_strcmp (tmp, "1.0") - || !grub_strcmp (tmp, "1.1") - || !grub_strcmp (tmp, "1.2") - || !grub_strcmp (tmp, "1.3")) - { - grub_ieee1275_set_flag (GRUB_IEEE1275_FLAG_NO_PARTITION_0); - grub_ieee1275_set_flag (GRUB_IEEE1275_FLAG_0_BASED_PARTITIONS); - } - } - } - - if (is_olpc) - { - /* OLPC / XO laptops have three kinds of storage devices: - - - NAND flash. These are accessible via OFW callbacks, but: - - Follow strange semantics, imposed by hardware constraints. - - Its ABI is undocumented, and not stable. - They lack "device_type" property, which conveniently makes GRUB - skip them. - - - USB drives. Not accessible, because OFW shuts down the controller - in order to prevent collisions with applications accessing it - directly. Even worse, attempts to access it will NOT return - control to the caller, so we have to avoid probing them. - - - SD cards. These work fine. - - To avoid breakage, we only need to skip USB probing. However, - since detecting SD cards is more reliable, we do that instead. - */ - - grub_ieee1275_set_flag (GRUB_IEEE1275_FLAG_OFDISK_SDCARD_ONLY); - grub_ieee1275_set_flag (GRUB_IEEE1275_FLAG_HAS_CURSORONOFF); - } - - if (is_qemu) - { - /* OpenFirmware hangs on qemu if one requests any memory below 1.5 MiB. */ - grub_ieee1275_set_flag (GRUB_IEEE1275_FLAG_NO_PRE1_5M_CLAIM); - - grub_ieee1275_set_flag (GRUB_IEEE1275_FLAG_HAS_CURSORONOFF); - } - - if (! grub_ieee1275_finddevice ("/rom/boot-rom", &bootrom) - || ! grub_ieee1275_finddevice ("/boot-rom", &bootrom)) - { - rc = grub_ieee1275_get_property (bootrom, "model", tmp, sizeof (tmp), 0); - if (rc >= 0 && !grub_strncmp (tmp, "PPC Open Hack'Ware", - sizeof ("PPC Open Hack'Ware") - 1)) - { - grub_ieee1275_set_flag (GRUB_IEEE1275_FLAG_BROKEN_OUTPUT); - grub_ieee1275_set_flag (GRUB_IEEE1275_FLAG_CANNOT_SET_COLORS); - grub_ieee1275_set_flag (GRUB_IEEE1275_FLAG_CANNOT_INTERPRET); - grub_ieee1275_set_flag (GRUB_IEEE1275_FLAG_FORCE_CLAIM); - grub_ieee1275_set_flag (GRUB_IEEE1275_FLAG_NO_ANSI); - } - } -} - -void -grub_ieee1275_init (void) -{ - grub_ieee1275_finddevice ("/chosen", &grub_ieee1275_chosen); - - if (grub_ieee1275_get_integer_property (grub_ieee1275_chosen, "mmu", &grub_ieee1275_mmu, - sizeof grub_ieee1275_mmu, 0) < 0) - grub_ieee1275_mmu = 0; - - grub_ieee1275_find_options (); -} diff --git a/thirdparty/grub-2.04/grub-core/kern/ieee1275/ieee1275.c b/thirdparty/grub-2.04/grub-core/kern/ieee1275/ieee1275.c deleted file mode 100644 index 86f81a3c4..000000000 --- a/thirdparty/grub-2.04/grub-core/kern/ieee1275/ieee1275.c +++ /dev/null @@ -1,809 +0,0 @@ -/* of.c - Access the Open Firmware client interface. */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2003,2004,2005,2007,2008,2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include - -#define IEEE1275_PHANDLE_INVALID ((grub_ieee1275_cell_t) -1) -#define IEEE1275_IHANDLE_INVALID ((grub_ieee1275_cell_t) 0) -#define IEEE1275_CELL_INVALID ((grub_ieee1275_cell_t) -1) - - - -int -grub_ieee1275_finddevice (const char *name, grub_ieee1275_phandle_t *phandlep) -{ - struct find_device_args - { - struct grub_ieee1275_common_hdr common; - grub_ieee1275_cell_t device; - grub_ieee1275_cell_t phandle; - } - args; - - INIT_IEEE1275_COMMON (&args.common, "finddevice", 1, 1); - args.device = (grub_ieee1275_cell_t) name; - - if (IEEE1275_CALL_ENTRY_FN (&args) == -1) - return -1; - *phandlep = args.phandle; - if (args.phandle == IEEE1275_PHANDLE_INVALID) - return -1; - return 0; -} - -int -grub_ieee1275_get_property (grub_ieee1275_phandle_t phandle, - const char *property, void *buf, - grub_size_t size, grub_ssize_t *actual) -{ - struct get_property_args - { - struct grub_ieee1275_common_hdr common; - grub_ieee1275_cell_t phandle; - grub_ieee1275_cell_t prop; - grub_ieee1275_cell_t buf; - grub_ieee1275_cell_t buflen; - grub_ieee1275_cell_t size; - } - args; - - INIT_IEEE1275_COMMON (&args.common, "getprop", 4, 1); - args.phandle = phandle; - args.prop = (grub_ieee1275_cell_t) property; - args.buf = (grub_ieee1275_cell_t) buf; - args.buflen = (grub_ieee1275_cell_t) size; - - if (IEEE1275_CALL_ENTRY_FN (&args) == -1) - return -1; - if (actual) - *actual = (grub_ssize_t) args.size; - if (args.size == IEEE1275_CELL_INVALID) - return -1; - return 0; -} - -int -grub_ieee1275_get_integer_property (grub_ieee1275_phandle_t phandle, - const char *property, grub_uint32_t *buf, - grub_size_t size, grub_ssize_t *actual) -{ - int ret; - ret = grub_ieee1275_get_property (phandle, property, (void *) buf, size, actual); -#ifndef GRUB_CPU_WORDS_BIGENDIAN - /* Integer properties are always in big endian. */ - if (ret == 0) - { - unsigned int i; - size /= sizeof (grub_uint32_t); - for (i = 0; i < size; i++) - buf[i] = grub_be_to_cpu32 (buf[i]); - } -#endif - return ret; -} - -int -grub_ieee1275_next_property (grub_ieee1275_phandle_t phandle, char *prev_prop, - char *prop) -{ - struct get_property_args - { - struct grub_ieee1275_common_hdr common; - grub_ieee1275_cell_t phandle; - grub_ieee1275_cell_t prev_prop; - grub_ieee1275_cell_t next_prop; - grub_ieee1275_cell_t flags; - } - args; - - INIT_IEEE1275_COMMON (&args.common, "nextprop", 3, 1); - args.phandle = phandle; - args.prev_prop = (grub_ieee1275_cell_t) prev_prop; - args.next_prop = (grub_ieee1275_cell_t) prop; - args.flags = (grub_ieee1275_cell_t) -1; - - if (IEEE1275_CALL_ENTRY_FN (&args) == -1) - return -1; - return (int) args.flags; -} - -int -grub_ieee1275_get_property_length (grub_ieee1275_phandle_t phandle, - const char *prop, grub_ssize_t *length) -{ - struct get_property_args - { - struct grub_ieee1275_common_hdr common; - grub_ieee1275_cell_t phandle; - grub_ieee1275_cell_t prop; - grub_ieee1275_cell_t length; - } - args; - - INIT_IEEE1275_COMMON (&args.common, "getproplen", 2, 1); - args.phandle = phandle; - args.prop = (grub_ieee1275_cell_t) prop; - args.length = (grub_ieee1275_cell_t) -1; - - if (IEEE1275_CALL_ENTRY_FN (&args) == -1) - return -1; - *length = args.length; - if (args.length == IEEE1275_CELL_INVALID) - return -1; - return 0; -} - -int -grub_ieee1275_instance_to_package (grub_ieee1275_ihandle_t ihandle, - grub_ieee1275_phandle_t *phandlep) -{ - struct instance_to_package_args - { - struct grub_ieee1275_common_hdr common; - grub_ieee1275_cell_t ihandle; - grub_ieee1275_cell_t phandle; - } - args; - - INIT_IEEE1275_COMMON (&args.common, "instance-to-package", 1, 1); - args.ihandle = ihandle; - - if (IEEE1275_CALL_ENTRY_FN (&args) == -1) - return -1; - *phandlep = args.phandle; - if (args.phandle == IEEE1275_PHANDLE_INVALID) - return -1; - return 0; -} - -int -grub_ieee1275_package_to_path (grub_ieee1275_phandle_t phandle, - char *path, grub_size_t len, - grub_ssize_t *actual) -{ - struct instance_to_package_args - { - struct grub_ieee1275_common_hdr common; - grub_ieee1275_cell_t phandle; - grub_ieee1275_cell_t buf; - grub_ieee1275_cell_t buflen; - grub_ieee1275_cell_t actual; - } - args; - - INIT_IEEE1275_COMMON (&args.common, "package-to-path", 3, 1); - args.phandle = phandle; - args.buf = (grub_ieee1275_cell_t) path; - args.buflen = (grub_ieee1275_cell_t) len; - - if (IEEE1275_CALL_ENTRY_FN (&args) == -1) - return -1; - if (actual) - *actual = args.actual; - if (args.actual == IEEE1275_CELL_INVALID) - return -1; - return 0; -} - -int -grub_ieee1275_instance_to_path (grub_ieee1275_ihandle_t ihandle, - char *path, grub_size_t len, - grub_ssize_t *actual) -{ - struct instance_to_path_args - { - struct grub_ieee1275_common_hdr common; - grub_ieee1275_cell_t ihandle; - grub_ieee1275_cell_t buf; - grub_ieee1275_cell_t buflen; - grub_ieee1275_cell_t actual; - } - args; - - INIT_IEEE1275_COMMON (&args.common, "instance-to-path", 3, 1); - args.ihandle = ihandle; - args.buf = (grub_ieee1275_cell_t) path; - args.buflen = (grub_ieee1275_cell_t) len; - - if (IEEE1275_CALL_ENTRY_FN (&args) == -1) - return -1; - if (actual) - *actual = args.actual; - if (args.actual == IEEE1275_CELL_INVALID) - return -1; - return 0; -} - -int -grub_ieee1275_write (grub_ieee1275_ihandle_t ihandle, const void *buffer, - grub_size_t len, grub_ssize_t *actualp) -{ - struct write_args - { - struct grub_ieee1275_common_hdr common; - grub_ieee1275_cell_t ihandle; - grub_ieee1275_cell_t buf; - grub_ieee1275_cell_t len; - grub_ieee1275_cell_t actual; - } - args; - - INIT_IEEE1275_COMMON (&args.common, "write", 3, 1); - args.ihandle = ihandle; - args.buf = (grub_ieee1275_cell_t) buffer; - args.len = (grub_ieee1275_cell_t) len; - - if (IEEE1275_CALL_ENTRY_FN (&args) == -1) - return -1; - if (actualp) - *actualp = args.actual; - return 0; -} - -int -grub_ieee1275_read (grub_ieee1275_ihandle_t ihandle, void *buffer, - grub_size_t len, grub_ssize_t *actualp) -{ - struct write_args - { - struct grub_ieee1275_common_hdr common; - grub_ieee1275_cell_t ihandle; - grub_ieee1275_cell_t buf; - grub_ieee1275_cell_t len; - grub_ieee1275_cell_t actual; - } - args; - - INIT_IEEE1275_COMMON (&args.common, "read", 3, 1); - args.ihandle = ihandle; - args.buf = (grub_ieee1275_cell_t) buffer; - args.len = (grub_ieee1275_cell_t) len; - - if (IEEE1275_CALL_ENTRY_FN (&args) == -1) - return -1; - if (actualp) - *actualp = args.actual; - return 0; -} - -int -grub_ieee1275_seek (grub_ieee1275_ihandle_t ihandle, grub_disk_addr_t pos, - grub_ssize_t *result) -{ - struct write_args - { - struct grub_ieee1275_common_hdr common; - grub_ieee1275_cell_t ihandle; - grub_ieee1275_cell_t pos_hi; - grub_ieee1275_cell_t pos_lo; - grub_ieee1275_cell_t result; - } - args; - - INIT_IEEE1275_COMMON (&args.common, "seek", 3, 1); - args.ihandle = ihandle; - /* To prevent stupid gcc warning. */ -#if GRUB_IEEE1275_CELL_SIZEOF >= 8 - args.pos_hi = 0; - args.pos_lo = pos; -#else - args.pos_hi = (grub_ieee1275_cell_t) (pos >> (8 * GRUB_IEEE1275_CELL_SIZEOF)); - args.pos_lo = (grub_ieee1275_cell_t) - (pos & ((1ULL << (8 * GRUB_IEEE1275_CELL_SIZEOF)) - 1)); -#endif - - if (IEEE1275_CALL_ENTRY_FN (&args) == -1) - return -1; - - if (result) - *result = args.result; - return 0; -} - -int -grub_ieee1275_peer (grub_ieee1275_phandle_t node, - grub_ieee1275_phandle_t *result) -{ - struct peer_args - { - struct grub_ieee1275_common_hdr common; - grub_ieee1275_cell_t node; - grub_ieee1275_cell_t result; - } - args; - - INIT_IEEE1275_COMMON (&args.common, "peer", 1, 1); - args.node = node; - - if (IEEE1275_CALL_ENTRY_FN (&args) == -1) - return -1; - *result = args.result; - if (args.result == 0) - return -1; - return 0; -} - -int -grub_ieee1275_child (grub_ieee1275_phandle_t node, - grub_ieee1275_phandle_t *result) -{ - struct child_args - { - struct grub_ieee1275_common_hdr common; - grub_ieee1275_cell_t node; - grub_ieee1275_cell_t result; - } - args; - - INIT_IEEE1275_COMMON (&args.common, "child", 1, 1); - args.node = node; - args.result = IEEE1275_PHANDLE_INVALID; - - if (IEEE1275_CALL_ENTRY_FN (&args) == -1) - return -1; - *result = args.result; - if (args.result == 0) - return -1; - return 0; -} - -int -grub_ieee1275_parent (grub_ieee1275_phandle_t node, - grub_ieee1275_phandle_t *result) -{ - struct parent_args - { - struct grub_ieee1275_common_hdr common; - grub_ieee1275_cell_t node; - grub_ieee1275_cell_t result; - } - args; - - INIT_IEEE1275_COMMON (&args.common, "parent", 1, 1); - args.node = node; - args.result = IEEE1275_PHANDLE_INVALID; - - if (IEEE1275_CALL_ENTRY_FN (&args) == -1) - return -1; - *result = args.result; - return 0; -} - -int -grub_ieee1275_interpret (const char *command, grub_ieee1275_cell_t *catch) -{ - struct enter_args - { - struct grub_ieee1275_common_hdr common; - grub_ieee1275_cell_t command; - grub_ieee1275_cell_t catch; - } - args; - - if (grub_ieee1275_test_flag (GRUB_IEEE1275_FLAG_CANNOT_INTERPRET)) - return -1; - - INIT_IEEE1275_COMMON (&args.common, "interpret", 1, 1); - args.command = (grub_ieee1275_cell_t) command; - - if (IEEE1275_CALL_ENTRY_FN (&args) == -1) - return -1; - if (catch) - *catch = args.catch; - return 0; -} - -int -grub_ieee1275_enter (void) -{ - struct enter_args - { - struct grub_ieee1275_common_hdr common; - } - args; - - INIT_IEEE1275_COMMON (&args.common, "enter", 0, 0); - - if (IEEE1275_CALL_ENTRY_FN (&args) == -1) - return -1; - return 0; -} - -void -grub_ieee1275_exit (void) -{ - struct exit_args - { - struct grub_ieee1275_common_hdr common; - } - args; - - INIT_IEEE1275_COMMON (&args.common, "exit", 0, 0); - - IEEE1275_CALL_ENTRY_FN (&args); - for (;;) ; -} - -int -grub_ieee1275_open (const char *path, grub_ieee1275_ihandle_t *result) -{ - struct open_args - { - struct grub_ieee1275_common_hdr common; - grub_ieee1275_cell_t path; - grub_ieee1275_cell_t result; - } - args; - - INIT_IEEE1275_COMMON (&args.common, "open", 1, 1); - args.path = (grub_ieee1275_cell_t) path; - - if (IEEE1275_CALL_ENTRY_FN (&args) == -1) - return -1; - *result = args.result; - if (args.result == IEEE1275_IHANDLE_INVALID) - return -1; - return 0; -} - -int -grub_ieee1275_close (grub_ieee1275_ihandle_t ihandle) -{ - struct close_args - { - struct grub_ieee1275_common_hdr common; - grub_ieee1275_cell_t ihandle; - } - args; - - INIT_IEEE1275_COMMON (&args.common, "close", 1, 0); - args.ihandle = ihandle; - - if (IEEE1275_CALL_ENTRY_FN (&args) == -1) - return -1; - - return 0; -} - -int -grub_ieee1275_decode_unit4 (grub_ieee1275_ihandle_t ihandle, - void *addr, grub_size_t size, - grub_uint32_t *phy_lo, grub_uint32_t *phy_hi, - grub_uint32_t *lun_lo, grub_uint32_t *lun_hi) -{ - struct decode_args - { - struct grub_ieee1275_common_hdr common; - grub_ieee1275_cell_t method; - grub_ieee1275_cell_t ihandle; - grub_ieee1275_cell_t size; - grub_ieee1275_cell_t addr; - grub_ieee1275_cell_t catch_result; - grub_ieee1275_cell_t tgt_h; - grub_ieee1275_cell_t tgt_l; - grub_ieee1275_cell_t lun_h; - grub_ieee1275_cell_t lun_l; - } - args; - - INIT_IEEE1275_COMMON (&args.common, "call-method", 4, 5); - args.method = (grub_ieee1275_cell_t) "decode-unit"; - args.ihandle = ihandle; - args.size = size; - args.addr = (grub_ieee1275_cell_t) addr; - args.catch_result = 1; - - if ((IEEE1275_CALL_ENTRY_FN (&args) == -1) || (args.catch_result)) - { - grub_error (GRUB_ERR_OUT_OF_RANGE, "decode-unit failed\n"); - return -1; - } - - *phy_lo = args.tgt_l; - *phy_hi = args.tgt_h; - *lun_lo = args.lun_l; - *lun_hi = args.lun_h; - return 0; -} - -char * -grub_ieee1275_encode_uint4 (grub_ieee1275_ihandle_t ihandle, - grub_uint32_t phy_lo, grub_uint32_t phy_hi, - grub_uint32_t lun_lo, grub_uint32_t lun_hi, - grub_size_t *size) -{ - char *addr; - struct encode_args - { - struct grub_ieee1275_common_hdr common; - grub_ieee1275_cell_t method; - grub_ieee1275_cell_t ihandle; - grub_ieee1275_cell_t tgt_h; - grub_ieee1275_cell_t tgt_l; - grub_ieee1275_cell_t lun_h; - grub_ieee1275_cell_t lun_l; - grub_ieee1275_cell_t catch_result; - grub_ieee1275_cell_t size; - grub_ieee1275_cell_t addr; - } - args; - - INIT_IEEE1275_COMMON (&args.common, "call-method", 6, 3); - args.method = (grub_ieee1275_cell_t) "encode-unit"; - args.ihandle = ihandle; - - args.tgt_l = phy_lo; - args.tgt_h = phy_hi; - args.lun_l = lun_lo; - args.lun_h = lun_hi; - args.catch_result = 1; - - if ((IEEE1275_CALL_ENTRY_FN (&args) == -1) || (args.catch_result)) - { - grub_error (GRUB_ERR_OUT_OF_RANGE, "encode-unit failed\n"); - return 0; - } - - addr = (void *)args.addr; - *size = args.size; - addr = grub_strdup ((char *)args.addr); - return addr; -} - -int -grub_ieee1275_claim (grub_addr_t addr, grub_size_t size, unsigned int align, - grub_addr_t *result) -{ - struct claim_args - { - struct grub_ieee1275_common_hdr common; - grub_ieee1275_cell_t addr; - grub_ieee1275_cell_t size; - grub_ieee1275_cell_t align; - grub_ieee1275_cell_t base; - } - args; - - INIT_IEEE1275_COMMON (&args.common, "claim", 3, 1); - args.addr = (grub_ieee1275_cell_t) addr; - args.size = (grub_ieee1275_cell_t) size; - args.align = (grub_ieee1275_cell_t) align; - - if (IEEE1275_CALL_ENTRY_FN (&args) == -1) - return -1; - if (result) - *result = args.base; - if (args.base == IEEE1275_CELL_INVALID) - return -1; - return 0; -} - -int -grub_ieee1275_release (grub_addr_t addr, grub_size_t size) -{ - struct release_args - { - struct grub_ieee1275_common_hdr common; - grub_ieee1275_cell_t addr; - grub_ieee1275_cell_t size; - } - args; - - INIT_IEEE1275_COMMON (&args.common, "release", 2, 0); - args.addr = addr; - args.size = size; - - if (IEEE1275_CALL_ENTRY_FN (&args) == -1) - return -1; - return 0; -} - -int -grub_ieee1275_set_property (grub_ieee1275_phandle_t phandle, - const char *propname, const void *buf, - grub_size_t size, grub_ssize_t *actual) -{ - struct set_property_args - { - struct grub_ieee1275_common_hdr common; - grub_ieee1275_cell_t phandle; - grub_ieee1275_cell_t propname; - grub_ieee1275_cell_t buf; - grub_ieee1275_cell_t size; - grub_ieee1275_cell_t actual; - } - args; - - INIT_IEEE1275_COMMON (&args.common, "setprop", 4, 1); - args.size = (grub_ieee1275_cell_t) size; - args.buf = (grub_ieee1275_cell_t) buf; - args.propname = (grub_ieee1275_cell_t) propname; - args.phandle = (grub_ieee1275_cell_t) phandle; - - if (IEEE1275_CALL_ENTRY_FN (&args) == -1) - return -1; - *actual = args.actual; - if ((args.actual == IEEE1275_CELL_INVALID) || (args.actual != args.size)) - return -1; - return 0; -} - -int -grub_ieee1275_set_color (grub_ieee1275_ihandle_t ihandle, - int index, int r, int g, int b) -{ - struct set_color_args - { - struct grub_ieee1275_common_hdr common; - grub_ieee1275_cell_t method; - grub_ieee1275_cell_t ihandle; - grub_ieee1275_cell_t index; - grub_ieee1275_cell_t b; - grub_ieee1275_cell_t g; - grub_ieee1275_cell_t r; - grub_ieee1275_cell_t catch_result; - } - args; - - INIT_IEEE1275_COMMON (&args.common, "call-method", 6, 1); - args.method = (grub_ieee1275_cell_t) "color!"; - args.ihandle = ihandle; - args.index = index; - args.r = r; - args.g = g; - args.b = b; - - if (IEEE1275_CALL_ENTRY_FN (&args) == -1) - return -1; - return args.catch_result; -} - -int -grub_ieee1275_milliseconds (grub_uint32_t *msecs) -{ - struct milliseconds_args - { - struct grub_ieee1275_common_hdr common; - grub_ieee1275_cell_t msecs; - } - args; - - INIT_IEEE1275_COMMON (&args.common, "milliseconds", 0, 1); - - if (IEEE1275_CALL_ENTRY_FN (&args) == -1) - return -1; - *msecs = args.msecs; - return 0; -} - -int -grub_ieee1275_set_address (grub_ieee1275_ihandle_t ihandle, - grub_uint32_t target, grub_uint32_t lun) -{ - struct set_address - { - struct grub_ieee1275_common_hdr common; - grub_ieee1275_cell_t method; - grub_ieee1275_cell_t ihandle; - grub_ieee1275_cell_t tgt; - grub_ieee1275_cell_t lun; - grub_ieee1275_cell_t catch_result; - } - args; - - INIT_IEEE1275_COMMON (&args.common, "call-method", 4, 1); - - /* - * IEEE 1275-1994 Standard for Boot (Initialization Configuration) - * Firmware: Core Requirements and Practices - * E.3.2.2 Bus-specific methods for bus nodes - * - * A package implementing the scsi-2 device type shall implement the - * following bus-specific method: - * - * set-address ( unit# target# -- ) - * Sets the SCSI target number (0x0..0xf) and unit number (0..7) to which - * subsequent commands apply. - */ - args.method = (grub_ieee1275_cell_t) "set-address"; - args.ihandle = ihandle; - args.tgt = target; - args.lun = lun; - - if (IEEE1275_CALL_ENTRY_FN (&args) == -1) - return -1; - - return args.catch_result; -} - -int -grub_ieee1275_no_data_command (grub_ieee1275_ihandle_t ihandle, - const void *cmd_addr, grub_ssize_t *result) -{ - struct set_address - { - struct grub_ieee1275_common_hdr common; - grub_ieee1275_cell_t method; - grub_ieee1275_cell_t ihandle; - grub_ieee1275_cell_t cmd_addr; - grub_ieee1275_cell_t error; - grub_ieee1275_cell_t catch_result; - } - args; - - INIT_IEEE1275_COMMON (&args.common, "call-method", 3, 2); - - /* - * IEEE 1275-1994 Standard for Boot (Initialization Configuration) - * Firmware: Core Requirements and Practices - * - * E.3.2.2 Bus-specific methods for bus nodes - * - * A package implementing the scsi-2 device type shall implement the - * following bus-specific method: - * - * no-data-command ( cmd-addr -- error? ) - * Executes a simple SCSI command, automatically retrying under - * certain conditions. cmd-addr is the address of a 6-byte command buffer - * containing an SCSI command that does not have a data transfer phase. - * Executes the command, retrying indefinitely with the same retry criteria - * as retry-command. - * - * error? is nonzero if an error occurred, zero otherwise. - * NOTE no-data-command is a convenience function. It provides - * no capabilities that are not present in retry-command, but for - * those commands that meet its restrictions, it is easier to use. - */ - args.method = (grub_ieee1275_cell_t) "no-data-command"; - args.ihandle = ihandle; - args.cmd_addr = (grub_ieee1275_cell_t) cmd_addr; - - if (IEEE1275_CALL_ENTRY_FN (&args) == -1) - return -1; - - if (result) - *result = args.error; - - return args.catch_result; -} - -int -grub_ieee1275_get_block_size (grub_ieee1275_ihandle_t ihandle) -{ - struct size_args_ieee1275 - { - struct grub_ieee1275_common_hdr common; - grub_ieee1275_cell_t method; - grub_ieee1275_cell_t ihandle; - grub_ieee1275_cell_t result; - grub_ieee1275_cell_t size; - } args; - - INIT_IEEE1275_COMMON (&args.common, "call-method", 2, 2); - args.method = (grub_ieee1275_cell_t) "block-size"; - args.ihandle = ihandle; - args.result = 1; - - if ((IEEE1275_CALL_ENTRY_FN (&args) == -1) || (args.result)) - return 0; - - return args.size; -} diff --git a/thirdparty/grub-2.04/grub-core/kern/ieee1275/init.c b/thirdparty/grub-2.04/grub-core/kern/ieee1275/init.c deleted file mode 100644 index d483e35ee..000000000 --- a/thirdparty/grub-2.04/grub-core/kern/ieee1275/init.c +++ /dev/null @@ -1,322 +0,0 @@ -/* init.c -- Initialize GRUB on the newworld mac (PPC). */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2003,2004,2005,2007,2008,2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#ifdef __sparc__ -#include -#endif -#include -#include -#include -#include -#include -#ifdef __i386__ -#include -#endif -#ifdef __sparc__ -#include -#endif - -/* The minimal heap size we can live with. */ -#define HEAP_MIN_SIZE (unsigned long) (2 * 1024 * 1024) - -/* The maximum heap size we're going to claim */ -#ifdef __i386__ -#define HEAP_MAX_SIZE (unsigned long) (64 * 1024 * 1024) -#else -#define HEAP_MAX_SIZE (unsigned long) (32 * 1024 * 1024) -#endif - -/* If possible, we will avoid claiming heap above this address, because it - seems to cause relocation problems with OSes that link at 4 MiB */ -#ifdef __i386__ -#define HEAP_MAX_ADDR (unsigned long) (64 * 1024 * 1024) -#else -#define HEAP_MAX_ADDR (unsigned long) (32 * 1024 * 1024) -#endif - -extern char _start[]; -extern char _end[]; - -#ifdef __sparc__ -grub_addr_t grub_ieee1275_original_stack; -#endif - -void -grub_exit (void) -{ - grub_ieee1275_exit (); -} - -/* Translate an OF filesystem path (separated by backslashes), into a GRUB - path (separated by forward slashes). */ -static void -grub_translate_ieee1275_path (char *filepath) -{ - char *backslash; - - backslash = grub_strchr (filepath, '\\'); - while (backslash != 0) - { - *backslash = '/'; - backslash = grub_strchr (filepath, '\\'); - } -} - -void (*grub_ieee1275_net_config) (const char *dev, char **device, char **path, - char *bootpath); -void -grub_machine_get_bootlocation (char **device, char **path) -{ - char *bootpath; - char *filename; - char *type; - - bootpath = grub_ieee1275_get_boot_dev (); - if (! bootpath) - return; - - /* Transform an OF device path to a GRUB path. */ - - type = grub_ieee1275_get_device_type (bootpath); - if (type && grub_strcmp (type, "network") == 0) - { - char *dev, *canon; - char *ptr; - dev = grub_ieee1275_get_aliasdevname (bootpath); - canon = grub_ieee1275_canonicalise_devname (dev); - if (! canon) - return; - ptr = canon + grub_strlen (canon) - 1; - while (ptr > canon && (*ptr == ',' || *ptr == ':')) - ptr--; - ptr++; - *ptr = 0; - - if (grub_ieee1275_net_config) - grub_ieee1275_net_config (canon, device, path, bootpath); - grub_free (dev); - grub_free (canon); - } - else - *device = grub_ieee1275_encode_devname (bootpath); - grub_free (type); - - filename = grub_ieee1275_get_filename (bootpath); - if (filename) - { - char *lastslash = grub_strrchr (filename, '\\'); - - /* Truncate at last directory. */ - if (lastslash) - { - *lastslash = '\0'; - grub_translate_ieee1275_path (filename); - - *path = filename; - } - } - grub_free (bootpath); -} - -/* Claim some available memory in the first /memory node. */ -#ifdef __sparc__ -static void -grub_claim_heap (void) -{ - grub_mm_init_region ((void *) (grub_modules_get_end () - + GRUB_KERNEL_MACHINE_STACK_SIZE), 0x200000); -} -#else -/* Helper for grub_claim_heap. */ -static int -heap_init (grub_uint64_t addr, grub_uint64_t len, grub_memory_type_t type, - void *data) -{ - unsigned long *total = data; - - if (type != GRUB_MEMORY_AVAILABLE) - return 0; - - if (grub_ieee1275_test_flag (GRUB_IEEE1275_FLAG_NO_PRE1_5M_CLAIM)) - { - if (addr + len <= 0x180000) - return 0; - - if (addr < 0x180000) - { - len = addr + len - 0x180000; - addr = 0x180000; - } - } - len -= 1; /* Required for some firmware. */ - - /* Never exceed HEAP_MAX_SIZE */ - if (*total + len > HEAP_MAX_SIZE) - len = HEAP_MAX_SIZE - *total; - - /* Avoid claiming anything above HEAP_MAX_ADDR, if possible. */ - if ((addr < HEAP_MAX_ADDR) && /* if it's too late, don't bother */ - (addr + len > HEAP_MAX_ADDR) && /* if it wasn't available anyway, don't bother */ - (*total + (HEAP_MAX_ADDR - addr) > HEAP_MIN_SIZE)) /* only limit ourselves when we can afford to */ - len = HEAP_MAX_ADDR - addr; - - /* In theory, firmware should already prevent this from happening by not - listing our own image in /memory/available. The check below is intended - as a safeguard in case that doesn't happen. However, it doesn't protect - us from corrupting our module area, which extends up to a - yet-undetermined region above _end. */ - if ((addr < (grub_addr_t) _end) && ((addr + len) > (grub_addr_t) _start)) - { - grub_printf ("Warning: attempt to claim over our own code!\n"); - len = 0; - } - - if (len) - { - grub_err_t err; - /* Claim and use it. */ - err = grub_claimmap (addr, len); - if (err) - return err; - grub_mm_init_region ((void *) (grub_addr_t) addr, len); - } - - *total += len; - if (*total >= HEAP_MAX_SIZE) - return 1; - - return 0; -} - -static void -grub_claim_heap (void) -{ - unsigned long total = 0; - - if (grub_ieee1275_test_flag (GRUB_IEEE1275_FLAG_FORCE_CLAIM)) - heap_init (GRUB_IEEE1275_STATIC_HEAP_START, GRUB_IEEE1275_STATIC_HEAP_LEN, - 1, &total); - else - grub_machine_mmap_iterate (heap_init, &total); -} -#endif - -static void -grub_parse_cmdline (void) -{ - grub_ssize_t actual; - char args[256]; - - if (grub_ieee1275_get_property (grub_ieee1275_chosen, "bootargs", &args, - sizeof args, &actual) == 0 - && actual > 1) - { - int i = 0; - - while (i < actual) - { - char *command = &args[i]; - char *end; - char *val; - - end = grub_strchr (command, ';'); - if (end == 0) - i = actual; /* No more commands after this one. */ - else - { - *end = '\0'; - i += end - command + 1; - while (grub_isspace(args[i])) - i++; - } - - /* Process command. */ - val = grub_strchr (command, '='); - if (val) - { - *val = '\0'; - grub_env_set (command, val + 1); - } - } - } -} - -grub_addr_t grub_modbase; - -void -grub_machine_init (void) -{ - grub_modbase = ALIGN_UP((grub_addr_t) _end - + GRUB_KERNEL_MACHINE_MOD_GAP, - GRUB_KERNEL_MACHINE_MOD_ALIGN); - grub_ieee1275_init (); - - grub_console_init_early (); - grub_claim_heap (); - grub_console_init_lately (); -#ifdef __sparc__ - grub_obdisk_init (); -#else - grub_ofdisk_init (); -#endif - grub_parse_cmdline (); - -#ifdef __i386__ - grub_tsc_init (); -#else - grub_install_get_time_ms (grub_rtc_get_time_ms); -#endif -} - -void -grub_machine_fini (int flags) -{ - if (flags & GRUB_LOADER_FLAG_NORETURN) - { -#ifdef __sparc__ - grub_obdisk_fini (); -#else - grub_ofdisk_fini (); -#endif - grub_console_fini (); - } -} - -grub_uint64_t -grub_rtc_get_time_ms (void) -{ - grub_uint32_t msecs = 0; - - grub_ieee1275_milliseconds (&msecs); - - return msecs; -} diff --git a/thirdparty/grub-2.04/grub-core/kern/ieee1275/mmap.c b/thirdparty/grub-2.04/grub-core/kern/ieee1275/mmap.c deleted file mode 100644 index bf325eadf..000000000 --- a/thirdparty/grub-2.04/grub-core/kern/ieee1275/mmap.c +++ /dev/null @@ -1,83 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2003,2004,2005,2007,2008 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include - -grub_err_t -grub_machine_mmap_iterate (grub_memory_hook_t hook, void *hook_data) -{ - grub_ieee1275_phandle_t root; - grub_ieee1275_phandle_t memory; - grub_uint32_t available[128]; - grub_ssize_t available_size; - grub_uint32_t address_cells = 1; - grub_uint32_t size_cells = 1; - int i; - - /* Determine the format of each entry in `available'. */ - grub_ieee1275_finddevice ("/", &root); - grub_ieee1275_get_integer_property (root, "#address-cells", &address_cells, - sizeof address_cells, 0); - grub_ieee1275_get_integer_property (root, "#size-cells", &size_cells, - sizeof size_cells, 0); - - if (size_cells > address_cells) - address_cells = size_cells; - - /* Load `/memory/available'. */ - if (grub_ieee1275_finddevice ("/memory", &memory)) - return grub_error (GRUB_ERR_UNKNOWN_DEVICE, - "couldn't find /memory node"); - if (grub_ieee1275_get_integer_property (memory, "available", available, - sizeof available, &available_size)) - return grub_error (GRUB_ERR_UNKNOWN_DEVICE, - "couldn't examine /memory/available property"); - if (available_size < 0 || (grub_size_t) available_size > sizeof (available)) - return grub_error (GRUB_ERR_UNKNOWN_DEVICE, - "/memory response buffer exceeded"); - - if (grub_ieee1275_test_flag (GRUB_IEEE1275_FLAG_BROKEN_ADDRESS_CELLS)) - { - address_cells = 1; - size_cells = 1; - } - - /* Decode each entry and call `hook'. */ - i = 0; - available_size /= sizeof (grub_uint32_t); - while (i < available_size) - { - grub_uint64_t address; - grub_uint64_t size; - - address = available[i++]; - if (address_cells == 2) - address = (address << 32) | available[i++]; - - size = available[i++]; - if (size_cells == 2) - size = (size << 32) | available[i++]; - - if (hook (address, size, GRUB_MEMORY_AVAILABLE, hook_data)) - break; - } - - return grub_errno; -} diff --git a/thirdparty/grub-2.04/grub-core/kern/ieee1275/openfw.c b/thirdparty/grub-2.04/grub-core/kern/ieee1275/openfw.c deleted file mode 100644 index 4d493ab76..000000000 --- a/thirdparty/grub-2.04/grub-core/kern/ieee1275/openfw.c +++ /dev/null @@ -1,593 +0,0 @@ -/* openfw.c -- Open firmware support functions. */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2003,2004,2005,2007,2008,2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include - -enum grub_ieee1275_parse_type -{ - GRUB_PARSE_FILENAME, - GRUB_PARSE_PARTITION, - GRUB_PARSE_DEVICE, - GRUB_PARSE_DEVICE_TYPE -}; - -static int -fill_alias (struct grub_ieee1275_devalias *alias) -{ - grub_ssize_t actual; - - if (grub_ieee1275_get_property (alias->phandle, "device_type", alias->type, - IEEE1275_MAX_PROP_LEN, &actual)) - alias->type[0] = 0; - - if (alias->parent_dev == alias->phandle) - return 0; - - if (grub_ieee1275_package_to_path (alias->phandle, alias->path, - IEEE1275_MAX_PATH_LEN, &actual)) - return 0; - - if (grub_strcmp (alias->parent_path, alias->path) == 0) - return 0; - - if (grub_ieee1275_get_property (alias->phandle, "name", alias->name, - IEEE1275_MAX_PROP_LEN, &actual)) - return 0; - grub_dprintf ("devalias", "device path=%s\n", alias->path); - return 1; -} - -void -grub_ieee1275_devalias_free (struct grub_ieee1275_devalias *alias) -{ - grub_free (alias->name); - grub_free (alias->type); - grub_free (alias->path); - grub_free (alias->parent_path); - alias->name = 0; - alias->type = 0; - alias->path = 0; - alias->parent_path = 0; - alias->phandle = GRUB_IEEE1275_PHANDLE_INVALID; -} - -void -grub_ieee1275_children_peer (struct grub_ieee1275_devalias *alias) -{ - while (grub_ieee1275_peer (alias->phandle, &alias->phandle) != -1) - if (fill_alias (alias)) - return; - grub_ieee1275_devalias_free (alias); -} - -void -grub_ieee1275_children_first (const char *devpath, - struct grub_ieee1275_devalias *alias) -{ - grub_ieee1275_phandle_t dev; - - grub_dprintf ("devalias", "iterating children of %s\n", - devpath); - - alias->name = 0; - alias->path = 0; - alias->parent_path = 0; - alias->type = 0; - - if (grub_ieee1275_finddevice (devpath, &dev)) - return; - - if (grub_ieee1275_child (dev, &alias->phandle)) - return; - - alias->type = grub_malloc (IEEE1275_MAX_PROP_LEN); - if (!alias->type) - return; - alias->path = grub_malloc (IEEE1275_MAX_PATH_LEN); - if (!alias->path) - { - grub_free (alias->type); - return; - } - alias->parent_path = grub_strdup (devpath); - if (!alias->parent_path) - { - grub_free (alias->path); - grub_free (alias->type); - return; - } - - alias->name = grub_malloc (IEEE1275_MAX_PROP_LEN); - if (!alias->name) - { - grub_free (alias->path); - grub_free (alias->type); - grub_free (alias->parent_path); - return; - } - if (!fill_alias (alias)) - grub_ieee1275_children_peer (alias); -} - -static int -iterate_recursively (const char *path, - int (*hook) (struct grub_ieee1275_devalias *alias)) -{ - struct grub_ieee1275_devalias alias; - int ret = 0; - - FOR_IEEE1275_DEVCHILDREN(path, alias) - { - ret = hook (&alias); - if (ret) - break; - ret = iterate_recursively (alias.path, hook); - if (ret) - break; - } - grub_ieee1275_devalias_free (&alias); - return ret; -} - -int -grub_ieee1275_devices_iterate (int (*hook) (struct grub_ieee1275_devalias *alias)) -{ - return iterate_recursively ("/", hook); -} - -void -grub_ieee1275_devalias_init_iterator (struct grub_ieee1275_devalias *alias) -{ - alias->name = 0; - alias->path = 0; - alias->parent_path = 0; - alias->type = 0; - - grub_dprintf ("devalias", "iterating aliases\n"); - - if (grub_ieee1275_finddevice ("/aliases", &alias->parent_dev)) - return; - - alias->name = grub_malloc (IEEE1275_MAX_PROP_LEN); - if (!alias->name) - return; - - alias->type = grub_malloc (IEEE1275_MAX_PROP_LEN); - if (!alias->type) - { - grub_free (alias->name); - alias->name = 0; - return; - } - - alias->name[0] = '\0'; -} - -int -grub_ieee1275_devalias_next (struct grub_ieee1275_devalias *alias) -{ - if (!alias->name) - return 0; - while (1) - { - grub_ssize_t pathlen; - grub_ssize_t actual; - char *tmp; - - if (alias->path) - { - grub_free (alias->path); - alias->path = 0; - } - tmp = grub_strdup (alias->name); - if (grub_ieee1275_next_property (alias->parent_dev, tmp, - alias->name) <= 0) - { - grub_free (tmp); - grub_ieee1275_devalias_free (alias); - return 0; - } - grub_free (tmp); - - grub_dprintf ("devalias", "devalias name = %s\n", alias->name); - - grub_ieee1275_get_property_length (alias->parent_dev, alias->name, &pathlen); - - /* The property `name' is a special case we should skip. */ - if (grub_strcmp (alias->name, "name") == 0) - continue; - - /* Sun's OpenBoot often doesn't zero terminate the device alias - strings, so we will add a NULL byte at the end explicitly. */ - pathlen += 1; - - alias->path = grub_malloc (pathlen + 1); - if (! alias->path) - { - grub_ieee1275_devalias_free (alias); - return 0; - } - - if (grub_ieee1275_get_property (alias->parent_dev, alias->name, alias->path, - pathlen, &actual) || actual < 0) - { - grub_dprintf ("devalias", "get_property (%s) failed\n", alias->name); - grub_free (alias->path); - continue; - } - if (actual > pathlen) - actual = pathlen; - alias->path[actual] = '\0'; - alias->path[pathlen] = '\0'; - - if (grub_ieee1275_finddevice (alias->path, &alias->phandle)) - { - grub_dprintf ("devalias", "finddevice (%s) failed\n", alias->path); - grub_free (alias->path); - alias->path = 0; - continue; - } - - if (grub_ieee1275_get_property (alias->phandle, "device_type", alias->type, - IEEE1275_MAX_PROP_LEN, &actual)) - { - /* NAND device don't have device_type property. */ - alias->type[0] = 0; - } - return 1; - } -} - -/* Call the "map" method of /chosen/mmu. */ -int -grub_ieee1275_map (grub_addr_t phys, grub_addr_t virt, grub_size_t size, - grub_uint32_t mode) -{ - struct map_args { - struct grub_ieee1275_common_hdr common; - grub_ieee1275_cell_t method; - grub_ieee1275_cell_t ihandle; - grub_ieee1275_cell_t mode; - grub_ieee1275_cell_t size; - grub_ieee1275_cell_t virt; -#ifdef __sparc__ - grub_ieee1275_cell_t phys_high; -#endif - grub_ieee1275_cell_t phys_low; - grub_ieee1275_cell_t catch_result; - } args; - - INIT_IEEE1275_COMMON (&args.common, "call-method", -#ifdef __sparc__ - 7, -#else - 6, -#endif - 1); - args.method = (grub_ieee1275_cell_t) "map"; - args.ihandle = grub_ieee1275_mmu; -#ifdef __sparc__ - args.phys_high = 0; -#endif - args.phys_low = phys; - args.virt = virt; - args.size = size; - args.mode = mode; /* Format is WIMG0PP. */ - args.catch_result = (grub_ieee1275_cell_t) -1; - - if (IEEE1275_CALL_ENTRY_FN (&args) == -1) - return -1; - - return args.catch_result; -} - -grub_err_t -grub_claimmap (grub_addr_t addr, grub_size_t size) -{ - if (grub_ieee1275_claim (addr, size, 0, 0)) - return -1; - - if (! grub_ieee1275_test_flag (GRUB_IEEE1275_FLAG_REAL_MODE) - && grub_ieee1275_map (addr, addr, size, 0x00)) - { - grub_error (GRUB_ERR_OUT_OF_MEMORY, "map failed: address 0x%llx, size 0x%llx\n", - (long long) addr, (long long) size); - grub_ieee1275_release (addr, size); - return grub_errno; - } - - return GRUB_ERR_NONE; -} - -/* Get the device arguments of the Open Firmware node name `path'. */ -static char * -grub_ieee1275_get_devargs (const char *path) -{ - char *colon = grub_strchr (path, ':'); - - if (! colon) - return 0; - - return grub_strdup (colon + 1); -} - -/* Get the device path of the Open Firmware node name `path'. */ -char * -grub_ieee1275_get_devname (const char *path) -{ - char *colon = grub_strchr (path, ':'); - int pathlen = grub_strlen (path); - struct grub_ieee1275_devalias curalias; - if (colon) - pathlen = (int)(colon - path); - - /* Try to find an alias for this device. */ - FOR_IEEE1275_DEVALIASES (curalias) - /* briQ firmware can change capitalization in /chosen/bootpath. */ - if (grub_strncasecmp (curalias.path, path, pathlen) == 0 - && curalias.path[pathlen] == 0) - { - char *newpath; - newpath = grub_strdup (curalias.name); - grub_ieee1275_devalias_free (&curalias); - return newpath; - } - - return grub_strndup (path, pathlen); -} - -static char * -grub_ieee1275_parse_args (const char *path, enum grub_ieee1275_parse_type ptype) -{ - char type[64]; /* XXX check size. */ - char *device = grub_ieee1275_get_devname (path); - char *ret = 0; - grub_ieee1275_phandle_t dev; - - /* We need to know what type of device it is in order to parse the full - file path properly. */ - if (grub_ieee1275_finddevice (device, &dev)) - { - grub_error (GRUB_ERR_UNKNOWN_DEVICE, "device %s not found", device); - goto fail; - } - if (grub_ieee1275_get_property (dev, "device_type", &type, sizeof type, 0)) - { - grub_error (GRUB_ERR_UNKNOWN_DEVICE, - "device %s lacks a device_type property", device); - goto fail; - } - - switch (ptype) - { - case GRUB_PARSE_DEVICE: - ret = grub_strdup (device); - break; - case GRUB_PARSE_DEVICE_TYPE: - ret = grub_strdup (type); - break; - case GRUB_PARSE_FILENAME: - { - char *comma; - char *args; - - args = grub_ieee1275_get_devargs (path); - if (!args) - /* Shouldn't happen. */ - return 0; - - /* The syntax of the device arguments is defined in the CHRP and PReP - IEEE1275 bindings: "[partition][,[filename]]". */ - comma = grub_strchr (args, ','); - - if (comma) - { - char *filepath = comma + 1; - - /* Make sure filepath has leading backslash. */ - if (filepath[0] != '\\') - ret = grub_xasprintf ("\\%s", filepath); - else - ret = grub_strdup (filepath); - } - grub_free (args); - } - break; - case GRUB_PARSE_PARTITION: - { - char *comma; - char *args; - - if (grub_strcmp ("block", type) != 0) - goto unknown; - - args = grub_ieee1275_get_devargs (path); - if (!args) - /* Shouldn't happen. */ - return 0; - - comma = grub_strchr (args, ','); - if (!comma) - ret = grub_strdup (args); - else - ret = grub_strndup (args, (grub_size_t)(comma - args)); - /* Consistently provide numbered partitions to GRUB. - OpenBOOT traditionally uses alphabetical partition - specifiers. */ - if (ret[0] >= 'a' && ret[0] <= 'z') - ret[0] = '1' + (ret[0] - 'a'); - grub_free (args); - } - break; - default: - unknown: - grub_error (GRUB_ERR_NOT_IMPLEMENTED_YET, - "unsupported type %s for device %s", type, device); - } - -fail: - grub_free (device); - return ret; -} - -char * -grub_ieee1275_get_device_type (const char *path) -{ - return grub_ieee1275_parse_args (path, GRUB_PARSE_DEVICE_TYPE); -} - -char * -grub_ieee1275_get_aliasdevname (const char *path) -{ - return grub_ieee1275_parse_args (path, GRUB_PARSE_DEVICE); -} - -char * -grub_ieee1275_get_filename (const char *path) -{ - return grub_ieee1275_parse_args (path, GRUB_PARSE_FILENAME); -} - -/* Convert a device name from IEEE1275 syntax to GRUB syntax. */ -char * -grub_ieee1275_encode_devname (const char *path) -{ - char *device = grub_ieee1275_get_devname (path); - char *partition; - char *encoding; - char *optr; - const char *iptr; - - if (! device) - return 0; - - encoding = grub_malloc (sizeof ("ieee1275/") + 2 * grub_strlen (device) - + sizeof (",XXXXXXXXXXXX")); - if (!encoding) - { - grub_free (device); - return 0; - } - - partition = grub_ieee1275_parse_args (path, GRUB_PARSE_PARTITION); - - optr = grub_stpcpy (encoding, "ieee1275/"); - for (iptr = device; *iptr; ) - { - if (*iptr == ',') - *optr++ ='\\'; - *optr++ = *iptr++; - } - if (partition && partition[0]) - { - unsigned int partno = grub_strtoul (partition, 0, 0); - - *optr++ = ','; - - if (grub_ieee1275_test_flag (GRUB_IEEE1275_FLAG_0_BASED_PARTITIONS)) - /* GRUB partition 1 is OF partition 0. */ - partno++; - - grub_snprintf (optr, sizeof ("XXXXXXXXXXXX"), "%d", partno); - } - else - *optr = '\0'; - - grub_free (partition); - grub_free (device); - - return encoding; -} - -/* Resolve aliases. */ -char * -grub_ieee1275_canonicalise_devname (const char *path) -{ - struct canon_args - { - struct grub_ieee1275_common_hdr common; - grub_ieee1275_cell_t path; - grub_ieee1275_cell_t buf; - grub_ieee1275_cell_t inlen; - grub_ieee1275_cell_t outlen; - } - args; - char *buf = NULL; - grub_size_t bufsize = 64; - int i; - - for (i = 0; i < 2; i++) - { - grub_free (buf); - - buf = grub_malloc (bufsize); - if (!buf) - return NULL; - - INIT_IEEE1275_COMMON (&args.common, "canon", 3, 1); - args.path = (grub_ieee1275_cell_t) path; - args.buf = (grub_ieee1275_cell_t) buf; - args.inlen = (grub_ieee1275_cell_t) (bufsize - 1); - - if (IEEE1275_CALL_ENTRY_FN (&args) == -1) - return 0; - if (args.outlen > bufsize - 1) - { - bufsize = args.outlen + 2; - continue; - } - return buf; - } - /* Shouldn't reach here. */ - grub_free (buf); - return NULL; -} - -char * -grub_ieee1275_get_boot_dev (void) -{ - char *bootpath; - grub_ssize_t bootpath_size; - - if (grub_ieee1275_get_property_length (grub_ieee1275_chosen, "bootpath", - &bootpath_size) - || bootpath_size <= 0) - { - /* Should never happen. */ - grub_printf ("/chosen/bootpath property missing!\n"); - return NULL; - } - - bootpath = (char *) grub_malloc ((grub_size_t) bootpath_size + 64); - if (! bootpath) - { - grub_print_error (); - return NULL; - } - grub_ieee1275_get_property (grub_ieee1275_chosen, "bootpath", bootpath, - (grub_size_t) bootpath_size + 1, 0); - bootpath[bootpath_size] = '\0'; - - return bootpath; -} diff --git a/thirdparty/grub-2.04/grub-core/kern/list.c b/thirdparty/grub-2.04/grub-core/kern/list.c deleted file mode 100644 index a256bb3f8..000000000 --- a/thirdparty/grub-2.04/grub-core/kern/list.c +++ /dev/null @@ -1,55 +0,0 @@ -/* list.c - grub list function */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include - -void * -grub_named_list_find (grub_named_list_t head, const char *name) -{ - grub_named_list_t item; - - FOR_LIST_ELEMENTS (item, head) - if (grub_strcmp (item->name, name) == 0) - return item; - - return NULL; -} - -void -grub_list_push (grub_list_t *head, grub_list_t item) -{ - item->prev = head; - if (*head) - (*head)->prev = &item->next; - item->next = *head; - *head = item; -} - -void -grub_list_remove (grub_list_t item) -{ - if (item->prev) - *item->prev = item->next; - if (item->next) - item->next->prev = item->prev; - item->next = 0; - item->prev = 0; -} diff --git a/thirdparty/grub-2.04/grub-core/kern/main.c b/thirdparty/grub-2.04/grub-core/kern/main.c deleted file mode 100644 index 9cad0c448..000000000 --- a/thirdparty/grub-2.04/grub-core/kern/main.c +++ /dev/null @@ -1,312 +0,0 @@ -/* main.c - the kernel main routine */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2002,2003,2005,2006,2008,2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#ifdef GRUB_MACHINE_PCBIOS -#include -#endif - -grub_addr_t -grub_modules_get_end (void) -{ - struct grub_module_info *modinfo; - - modinfo = (struct grub_module_info *) grub_modbase; - - /* Check if there are any modules. */ - if ((modinfo == 0) || modinfo->magic != GRUB_MODULE_MAGIC) - return grub_modbase; - - return grub_modbase + modinfo->size; -} - -/* Load all modules in core. */ -static void -grub_load_modules (void) -{ - struct grub_module_header *header; - FOR_MODULES (header) - { - /* Not an ELF module, skip. */ - if (header->type != OBJ_TYPE_ELF) - continue; - - if (! grub_dl_load_core ((char *) header + sizeof (struct grub_module_header), - (header->size - sizeof (struct grub_module_header)))) - grub_fatal ("%s", grub_errmsg); - - if (grub_errno) - grub_print_error (); - } -} - -static char *load_config; - -static void -grub_load_config (void) -{ - struct grub_module_header *header; - FOR_MODULES (header) - { - /* Not an embedded config, skip. */ - if (header->type != OBJ_TYPE_CONFIG) - continue; - - load_config = grub_malloc (header->size - sizeof (struct grub_module_header) + 1); - if (!load_config) - { - grub_print_error (); - break; - } - grub_memcpy (load_config, (char *) header + - sizeof (struct grub_module_header), - header->size - sizeof (struct grub_module_header)); - load_config[header->size - sizeof (struct grub_module_header)] = 0; - break; - } -} - -/* Write hook for the environment variables of root. Remove surrounding - parentheses, if any. */ -static char * -grub_env_write_root (struct grub_env_var *var __attribute__ ((unused)), - const char *val) -{ - /* XXX Is it better to check the existence of the device? */ - grub_size_t len = grub_strlen (val); - - if (val[0] == '(' && val[len - 1] == ')') - return grub_strndup (val + 1, len - 2); - - return grub_strdup (val); -} - -static void -grub_set_prefix_and_root (void) -{ - char *device = NULL; - char *path = NULL; - char *fwdevice = NULL; - char *fwpath = NULL; - char *prefix = NULL; - struct grub_module_header *header; - - FOR_MODULES (header) - if (header->type == OBJ_TYPE_PREFIX) - prefix = (char *) header + sizeof (struct grub_module_header); - - grub_register_variable_hook ("root", 0, grub_env_write_root); - - grub_machine_get_bootlocation (&fwdevice, &fwpath); - - if (fwdevice) - { - char *cmdpath; - - cmdpath = grub_xasprintf ("(%s)%s", fwdevice, fwpath ? : ""); - if (cmdpath) - { - grub_env_set ("cmdpath", cmdpath); - grub_env_export ("cmdpath"); - grub_free (cmdpath); - } - } - - if (prefix) - { - char *pptr = NULL; - if (prefix[0] == '(') - { - pptr = grub_strrchr (prefix, ')'); - if (pptr) - { - device = grub_strndup (prefix + 1, pptr - prefix - 1); - pptr++; - } - } - if (!pptr) - pptr = prefix; - if (pptr[0]) - path = grub_strdup (pptr); - } - - if (!device && fwdevice) - device = fwdevice; - else if (fwdevice && (device[0] == ',' || !device[0])) - { - /* We have a partition, but still need to fill in the drive. */ - char *comma, *new_device; - - for (comma = fwdevice; *comma; ) - { - if (comma[0] == '\\' && comma[1] == ',') - { - comma += 2; - continue; - } - if (*comma == ',') - break; - comma++; - } - if (*comma) - { - char *drive = grub_strndup (fwdevice, comma - fwdevice); - new_device = grub_xasprintf ("%s%s", drive, device); - grub_free (drive); - } - else - new_device = grub_xasprintf ("%s%s", fwdevice, device); - - grub_free (fwdevice); - grub_free (device); - device = new_device; - } - else - grub_free (fwdevice); - if (fwpath && !path) - { - grub_size_t len = grub_strlen (fwpath); - while (len > 1 && fwpath[len - 1] == '/') - fwpath[--len] = 0; - if (len >= sizeof (GRUB_TARGET_CPU "-" GRUB_PLATFORM) - 1 - && grub_memcmp (fwpath + len - (sizeof (GRUB_TARGET_CPU "-" GRUB_PLATFORM) - 1), GRUB_TARGET_CPU "-" GRUB_PLATFORM, - sizeof (GRUB_TARGET_CPU "-" GRUB_PLATFORM) - 1) == 0) - fwpath[len - (sizeof (GRUB_TARGET_CPU "-" GRUB_PLATFORM) - 1)] = 0; - path = fwpath; - } - else - grub_free (fwpath); - if (device) - { - char *prefix_set; - - prefix_set = grub_xasprintf ("(%s)%s", device, path ? : ""); - if (prefix_set) - { - grub_env_set ("prefix", prefix_set); - grub_free (prefix_set); - } - grub_env_set ("root", device); - } - - grub_free (device); - grub_free (path); - grub_print_error (); -} - -/* Load the normal mode module and execute the normal mode if possible. */ -static void -grub_load_normal_mode (void) -{ - /* Load the module. */ - grub_dl_load ("normal"); - - /* Print errors if any. */ - grub_print_error (); - grub_errno = 0; - - grub_command_execute ("normal", 0, 0); -} - -static void -reclaim_module_space (void) -{ - grub_addr_t modstart, modend; - - if (!grub_modbase) - return; - -#ifdef GRUB_MACHINE_PCBIOS - modstart = GRUB_MEMORY_MACHINE_DECOMPRESSION_ADDR; -#else - modstart = grub_modbase; -#endif - modend = grub_modules_get_end (); - grub_modbase = 0; - -#if GRUB_KERNEL_PRELOAD_SPACE_REUSABLE - grub_mm_init_region ((void *) modstart, modend - modstart); -#else - (void) modstart; - (void) modend; -#endif -} - -/* The main routine. */ -void __attribute__ ((noreturn)) -grub_main (void) -{ - /* First of all, initialize the machine. */ - grub_machine_init (); - - grub_boot_time ("After machine init."); - - /* Hello. */ - grub_setcolorstate (GRUB_TERM_COLOR_HIGHLIGHT); - grub_printf ("Welcome to GRUB!\n\n"); - grub_setcolorstate (GRUB_TERM_COLOR_STANDARD); - - grub_load_config (); - - grub_boot_time ("Before loading embedded modules."); - - /* Load pre-loaded modules and free the space. */ - grub_register_exported_symbols (); -#ifdef GRUB_LINKER_HAVE_INIT - grub_arch_dl_init_linker (); -#endif - grub_load_modules (); - - grub_boot_time ("After loading embedded modules."); - - /* It is better to set the root device as soon as possible, - for convenience. */ - grub_set_prefix_and_root (); - grub_env_export ("root"); - grub_env_export ("prefix"); - - /* Reclaim space used for modules. */ - reclaim_module_space (); - - grub_boot_time ("After reclaiming module space."); - - grub_register_core_commands (); - - grub_boot_time ("Before execution of embedded config."); - - if (load_config) - grub_parser_execute (load_config); - - grub_boot_time ("After execution of embedded config. Attempt to go to normal mode"); - - grub_load_normal_mode (); - grub_rescue_run (); -} diff --git a/thirdparty/grub-2.04/grub-core/kern/mips/arc/init.c b/thirdparty/grub-2.04/grub-core/kern/mips/arc/init.c deleted file mode 100644 index 3834a1490..000000000 --- a/thirdparty/grub-2.04/grub-core/kern/mips/arc/init.c +++ /dev/null @@ -1,463 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2009,2010 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -const char *type_names[] = { -#ifdef GRUB_CPU_WORDS_BIGENDIAN - NULL, -#endif - NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, - "eisa", "tc", "scsi", "dti", "multi", "disk", "tape", "cdrom", "worm", - "serial", "net", "video", "par", "point", "key", "audio", "other", - "rdisk", "fdisk", "tape", "modem", "monitor", "print", "pointer", - "keyboard", "term", -#ifndef GRUB_CPU_WORDS_BIGENDIAN - "other", -#endif - "line", "network", NULL -}; - -static int -iterate_rec (const char *prefix, const struct grub_arc_component *parent, - grub_arc_iterate_devs_hook_t hook, void *hook_data, - int alt_names) -{ - const struct grub_arc_component *comp; - FOR_ARC_CHILDREN(comp, parent) - { - char *name; - const char *cname = NULL; - if (comp->type < ARRAY_SIZE (type_names)) - cname = type_names[comp->type]; - if (!cname) - cname = "unknown"; - if (alt_names) - name = grub_xasprintf ("%s/%s%lu", prefix, cname, comp->key); - else - name = grub_xasprintf ("%s%s(%lu)", prefix, cname, comp->key); - if (!name) - return 1; - if (hook (name, comp, hook_data)) - { - grub_free (name); - return 1; - } - if (iterate_rec ((parent ? name : prefix), comp, hook, hook_data, - alt_names)) - { - grub_free (name); - return 1; - } - grub_free (name); - } - return 0; -} - -int -grub_arc_iterate_devs (grub_arc_iterate_devs_hook_t hook, void *hook_data, - int alt_names) -{ - return iterate_rec ((alt_names ? "arc" : ""), NULL, hook, hook_data, - alt_names); -} - -grub_err_t -grub_machine_mmap_iterate (grub_memory_hook_t hook, void *hook_data) -{ - struct grub_arc_memory_descriptor *cur = NULL; - while (1) - { - grub_memory_type_t type; - cur = GRUB_ARC_FIRMWARE_VECTOR->getmemorydescriptor (cur); - if (!cur) - return GRUB_ERR_NONE; - switch (cur->type) - { - case GRUB_ARC_MEMORY_EXCEPTION_BLOCK: - case GRUB_ARC_MEMORY_SYSTEM_PARAMETER_BLOCK: - case GRUB_ARC_MEMORY_FW_PERMANENT: - default: - type = GRUB_MEMORY_RESERVED; - break; - - case GRUB_ARC_MEMORY_FW_TEMPORARY: - case GRUB_ARC_MEMORY_FREE: - case GRUB_ARC_MEMORY_LOADED: - case GRUB_ARC_MEMORY_FREE_CONTIGUOUS: - type = GRUB_MEMORY_AVAILABLE; - break; - case GRUB_ARC_MEMORY_BADRAM: - type = GRUB_MEMORY_BADRAM; - break; - } - if (hook (((grub_uint64_t) cur->start_page) << 12, - ((grub_uint64_t) cur->num_pages) << 12, type, hook_data)) - return GRUB_ERR_NONE; - } -} - -char * -grub_arc_alt_name_to_norm (const char *name, const char *suffix) -{ - char *optr; - const char *iptr; - char * ret = grub_malloc (2 * grub_strlen (name) + grub_strlen (suffix)); - int state = 0; - - if (!ret) - return NULL; - optr = ret; - for (iptr = name + 4; *iptr; iptr++) - if (state == 0) - { - if (!grub_isdigit (*iptr)) - *optr++ = *iptr; - else - { - *optr++ = '('; - *optr++ = *iptr; - state = 1; - } - } - else - { - if (grub_isdigit (*iptr)) - *optr++ = *iptr; - else - { - *optr++ = ')'; - state = 0; - } - } - if (state) - *optr++ = ')'; - grub_strcpy (optr, suffix); - return ret; -} - -static char * -norm_name_to_alt (const char *name) -{ - char *optr; - const char *iptr; - int state = 0; - char * ret = grub_malloc (grub_strlen (name) + sizeof ("arc/")); - - if (!ret) - return NULL; - optr = grub_stpcpy (ret, "arc/"); - for (iptr = name; *iptr; iptr++) - { - if (state == 3) - { - *optr++ = '/'; - state = 0; - } - if (*iptr == '(') - { - state = 1; - continue; - } - if (*iptr == ')') - { - if (state == 1) - *optr++ = '0'; - state = 3; - continue; - } - *optr++ = *iptr; - if (state == 1) - state = 2; - } - *optr = '\0'; - return ret; -} - -extern grub_uint32_t grub_total_modules_size __attribute__ ((section(".text"))); -grub_addr_t grub_modbase; - -extern char _end[]; -static char boot_location[256]; - -void -grub_machine_init (void) -{ - struct grub_arc_memory_descriptor *cur = NULL; - grub_addr_t modend; - - grub_memcpy (boot_location, - (char *) (GRUB_DECOMPRESSOR_LINK_ADDR - 256), 256); - - grub_modbase = ALIGN_UP ((grub_addr_t) _end, GRUB_KERNEL_MACHINE_MOD_ALIGN); - modend = grub_modbase + grub_total_modules_size; - grub_console_init_early (); - - /* FIXME: measure this. */ - grub_arch_cpuclock = 150000000; - grub_install_get_time_ms (grub_rtc_get_time_ms); - - while (1) - { - grub_uint64_t start, end; - cur = GRUB_ARC_FIRMWARE_VECTOR->getmemorydescriptor (cur); - if (!cur) - break; - if (cur->type != GRUB_ARC_MEMORY_FREE - && cur->type != GRUB_ARC_MEMORY_LOADED - && cur->type != GRUB_ARC_MEMORY_FREE_CONTIGUOUS) - continue; - start = ((grub_uint64_t) cur->start_page) << 12; - end = ((grub_uint64_t) cur->num_pages) << 12; - end += start; - if ((grub_uint64_t) start < (modend & 0x1fffffff)) - start = (modend & 0x1fffffff); - if ((grub_uint64_t) end > 0x20000000) - end = 0x20000000; - if (end > start) - grub_mm_init_region ((void *) (grub_addr_t) (start | 0x80000000), - end - start); - } - - grub_console_init_lately (); - - grub_arcdisk_init (); -} - -void -grub_machine_fini (int flags __attribute__ ((unused))) -{ -} - -void -grub_halt (void) -{ - GRUB_ARC_FIRMWARE_VECTOR->powerdown (); - - grub_millisleep (1500); - - grub_puts_ (N_("Shutdown failed")); - grub_refresh (); - while (1); -} - -void -grub_exit (void) -{ - GRUB_ARC_FIRMWARE_VECTOR->exit (); - - grub_millisleep (1500); - - grub_puts_ (N_("Exit failed")); - grub_refresh (); - while (1); -} - -static char * -get_part (char *dev) -{ - char *ptr; - if (!*dev) - return 0; - ptr = dev + grub_strlen (dev) - 1; - if (ptr == dev || *ptr != ')') - return 0; - ptr--; - while (grub_isdigit (*ptr) && ptr > dev) - ptr--; - if (*ptr != '(' || ptr == dev) - return 0; - ptr--; - if (ptr - dev < (int) sizeof ("partition") - 2) - return 0; - ptr -= sizeof ("partition") - 2; - if (grub_memcmp (ptr, "partition", sizeof ("partition") - 1) != 0) - return 0; - return ptr; -} - -static grub_disk_addr_t -get_partition_offset (char *part, grub_disk_addr_t *en) -{ - grub_arc_fileno_t handle; - grub_disk_addr_t ret = -1; - struct grub_arc_fileinfo info; - grub_arc_err_t r; - - if (GRUB_ARC_FIRMWARE_VECTOR->open (part, GRUB_ARC_FILE_ACCESS_OPEN_RO, - &handle)) - return -1; - - r = GRUB_ARC_FIRMWARE_VECTOR->getfileinformation (handle, &info); - if (!r) - { - ret = (info.start >> 9); - *en = (info.end >> 9); - } - GRUB_ARC_FIRMWARE_VECTOR->close (handle); - return ret; -} - -struct get_device_name_ctx -{ - char *partition_name; - grub_disk_addr_t poff, pend; -}; - -static int -get_device_name_iter (grub_disk_t disk __attribute__ ((unused)), - const grub_partition_t part, void *data) -{ - struct get_device_name_ctx *ctx = data; - - if (grub_partition_get_start (part) == ctx->poff - && grub_partition_get_len (part) == ctx->pend) - { - ctx->partition_name = grub_partition_get_name (part); - return 1; - } - - return 0; -} - -void -grub_machine_get_bootlocation (char **device, char **path) -{ - char *loaddev = boot_location; - char *pptr, *partptr; - char *dname; - grub_disk_addr_t poff = -1, pend = -1; - struct get_device_name_ctx ctx; - grub_disk_t parent = 0; - unsigned i; - - for (i = 0; i < ARRAY_SIZE (type_names); i++) - if (type_names[i] - && grub_memcmp (loaddev, type_names[i], grub_strlen (type_names[i])) == 0 - && loaddev[grub_strlen (type_names[i])] == '(') - break; - if (i == ARRAY_SIZE (type_names)) - pptr = loaddev; - else - for (pptr = loaddev; *pptr && *pptr != '/' && *pptr != '\\'; pptr++); - if (*pptr) - { - char *iptr, *optr; - char sep = *pptr; - *path = grub_malloc (grub_strlen (pptr) + 1); - if (!*path) - return; - for (iptr = pptr, optr = *path; *iptr; iptr++, optr++) - if (*iptr == sep) - *optr = '/'; - else - *optr = *iptr; - *optr = '\0'; - *path = grub_strdup (pptr); - *pptr = '\0'; - } - - if (*loaddev == '\0') - { - const char *syspart = 0; - - if (GRUB_ARC_SYSTEM_PARAMETER_BLOCK->firmware_vector_length - >= (unsigned) ((char *) (&GRUB_ARC_FIRMWARE_VECTOR->getenvironmentvariable + 1) - - (char *) GRUB_ARC_FIRMWARE_VECTOR) - && GRUB_ARC_FIRMWARE_VECTOR->getenvironmentvariable) - syspart = GRUB_ARC_FIRMWARE_VECTOR->getenvironmentvariable ("SystemPartition"); - if (!syspart) - return; - loaddev = grub_strdup (syspart); - } - - partptr = get_part (loaddev); - if (partptr) - { - poff = get_partition_offset (loaddev, &pend); - *partptr = '\0'; - } - dname = norm_name_to_alt (loaddev); - if (poff == (grub_addr_t) -1) - { - *device = dname; - if (loaddev != boot_location) - grub_free (loaddev); - return; - } - - parent = grub_disk_open (dname); - if (!parent) - { - *device = dname; - if (loaddev != boot_location) - grub_free (loaddev); - return; - } - - if (poff == 0 - && pend == grub_disk_get_size (parent)) - { - grub_disk_close (parent); - *device = dname; - if (loaddev != boot_location) - grub_free (loaddev); - return; - } - - ctx.partition_name = NULL; - ctx.poff = poff; - ctx.pend = pend; - - grub_partition_iterate (parent, get_device_name_iter, &ctx); - grub_disk_close (parent); - - if (! ctx.partition_name) - { - *device = dname; - if (loaddev != boot_location) - grub_free (loaddev); - return; - } - - *device = grub_xasprintf ("%s,%s", dname, - ctx.partition_name); - grub_free (ctx.partition_name); - grub_free (dname); - if (loaddev != boot_location) - grub_free (loaddev); -} diff --git a/thirdparty/grub-2.04/grub-core/kern/mips/cache.S b/thirdparty/grub-2.04/grub-core/kern/mips/cache.S deleted file mode 100644 index fa6897e14..000000000 --- a/thirdparty/grub-2.04/grub-core/kern/mips/cache.S +++ /dev/null @@ -1,68 +0,0 @@ - -#include - - .set noreorder - .set nomacro - -FUNCTION (grub_arch_sync_caches) -#include "cache_flush.S" - j $ra - -FUNCTION (grub_arch_sync_dma_caches) - move $t2, $a0 - addu $t3, $a0, $a1 - srl $t2, $t2, 5 - sll $t2, $t2, 5 - addu $t3, $t3, 0x1f - srl $t3, $t3, 5 - sll $t3, $t3, 5 - move $t0, $t2 - subu $t1, $t3, $t2 -1: - cache_op 1, 0($t0) -#ifdef GRUB_MACHINE_MIPS_LOONGSON - cache_op 1, 1($t0) - cache_op 1, 2($t0) - cache_op 1, 3($t0) - - addiu $t1, $t1, -0x20 - bne $t1, $zero, 1b - addiu $t0, $t0, 0x20 -#else - addiu $t1, $t1, -4 - bne $t1, $zero, 1b - addiu $t0, $t0, 0x4 -#endif - sync_op - move $t0, $t2 - subu $t1, $t3, $t2 -2: -#ifdef GRUB_MACHINE_MIPS_LOONGSON - cache_op 0, 0($t0) - addiu $t1, $t1, -0x20 - bne $t1, $zero, 2b - addiu $t0, $t0, 0x20 -#else - cache_op 0, 0($t0) - addiu $t1, $t1, -4 - bne $t1, $zero, 2b - addiu $t0, $t0, 0x4 -#endif - sync_op - move $t0, $t2 - subu $t1, $t3, $t2 -2: -#ifdef GRUB_MACHINE_MIPS_LOONGSON - cache_op 23, 0($t0) - addiu $t1, $t1, -0x20 - bne $t1, $zero, 2b - addiu $t0, $t0, 0x20 -#else - cache_op 23, 0($t0) - addiu $t1, $t1, -0x4 - bne $t1, $zero, 2b - addiu $t0, $t0, 0x4 -#endif - sync_op - - jr $ra diff --git a/thirdparty/grub-2.04/grub-core/kern/mips/cache_flush.S b/thirdparty/grub-2.04/grub-core/kern/mips/cache_flush.S deleted file mode 100644 index 89961a0f7..000000000 --- a/thirdparty/grub-2.04/grub-core/kern/mips/cache_flush.S +++ /dev/null @@ -1,54 +0,0 @@ -#ifndef CACHE_OP_DEFINED -#define CACHE_OP_DEFINED 1 - .macro cache_op op addr - .set mips3 - cache \op, \addr - .set mips1 - .endm - .macro sync_op - .set mips3 - sync - .set mips1 - .endm -#endif - - move $t2, $a0 - addu $t3, $a0, $a1 - srl $t2, $t2, 5 - sll $t2, $t2, 5 - addu $t3, $t3, 0x1f - srl $t3, $t3, 5 - sll $t3, $t3, 5 - move $t0, $t2 - subu $t1, $t3, $t2 -1: - cache_op 1, 0($t0) - /* All four ways. */ -#ifdef GRUB_MACHINE_MIPS_LOONGSON - cache_op 1, 1($t0) - cache_op 1, 2($t0) - cache_op 1, 3($t0) - addiu $t1, $t1, -0x20 - bne $t1, $zero, 1b - addiu $t0, $t0, 0x20 - -#else - addiu $t1, $t1, -0x4 - bne $t1, $zero, 1b - addiu $t0, $t0, 0x4 -#endif - sync_op - move $t0, $t2 - subu $t1, $t3, $t2 -2: - cache_op 0, 0($t0) -#ifdef GRUB_MACHINE_MIPS_LOONGSON - addiu $t1, $t1, -0x20 - bne $t1, $zero, 2b - addiu $t0, $t0, 0x20 -#else - addiu $t1, $t1, -0x4 - bne $t1, $zero, 2b - addiu $t0, $t0, 0x4 -#endif - sync_op diff --git a/thirdparty/grub-2.04/grub-core/kern/mips/dl.c b/thirdparty/grub-2.04/grub-core/kern/mips/dl.c deleted file mode 100644 index 5d7d299c7..000000000 --- a/thirdparty/grub-2.04/grub-core/kern/mips/dl.c +++ /dev/null @@ -1,274 +0,0 @@ -/* dl-386.c - arch-dependent part of loadable module support */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2002,2005,2007,2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include - -/* Dummy __gnu_local_gp. Resolved by linker. */ -static char __gnu_local_gp_dummy; -static char _gp_disp_dummy; - -/* Check if EHDR is a valid ELF header. */ -grub_err_t -grub_arch_dl_check_header (void *ehdr) -{ - Elf_Ehdr *e = ehdr; - - /* Check the magic numbers. */ -#ifdef GRUB_CPU_WORDS_BIGENDIAN - if (e->e_ident[EI_CLASS] != ELFCLASS32 - || e->e_ident[EI_DATA] != ELFDATA2MSB - || e->e_machine != EM_MIPS) -#else - if (e->e_ident[EI_CLASS] != ELFCLASS32 - || e->e_ident[EI_DATA] != ELFDATA2LSB - || e->e_machine != EM_MIPS) -#endif - return grub_error (GRUB_ERR_BAD_OS, N_("invalid arch-dependent ELF magic")); - - return GRUB_ERR_NONE; -} - -#pragma GCC diagnostic ignored "-Wcast-align" - -grub_err_t -grub_arch_dl_get_tramp_got_size (const void *ehdr, grub_size_t *tramp, - grub_size_t *got) -{ - const Elf_Ehdr *e = ehdr; - const Elf_Shdr *s; - /* FIXME: suboptimal. */ - grub_size_t gp_size = 0; - unsigned i; - - *tramp = 0; - *got = 0; - - for (i = 0, s = (const Elf_Shdr *) ((const char *) e + e->e_shoff); - i < e->e_shnum; - i++, s = (const Elf_Shdr *) ((const char *) s + e->e_shentsize)) - if (s->sh_type == SHT_REL) - { - const Elf_Rel *rel, *max; - - for (rel = (const Elf_Rel *) ((const char *) e + s->sh_offset), - max = rel + s->sh_size / s->sh_entsize; - rel < max; - rel++) - switch (ELF_R_TYPE (rel->r_info)) - { - case R_MIPS_GOT16: - case R_MIPS_CALL16: - case R_MIPS_GPREL32: - gp_size += 4; - break; - } - } - - if (gp_size > 0x08000) - return grub_error (GRUB_ERR_OUT_OF_RANGE, "__gnu_local_gp is too big\n"); - - *got = gp_size; - - return GRUB_ERR_NONE; -} - -/* Relocate symbols. */ -grub_err_t -grub_arch_dl_relocate_symbols (grub_dl_t mod, void *ehdr, - Elf_Shdr *s, grub_dl_segment_t seg) -{ - grub_uint32_t gp0; - Elf_Ehdr *e = ehdr; - - if (!mod->reginfo) - { - unsigned i; - Elf_Shdr *ri; - - /* Find reginfo. */ - for (i = 0, ri = (Elf_Shdr *) ((char *) ehdr + e->e_shoff); - i < e->e_shnum; - i++, ri = (Elf_Shdr *) ((char *) ri + e->e_shentsize)) - if (ri->sh_type == SHT_MIPS_REGINFO) - break; - if (i == e->e_shnum) - return grub_error (GRUB_ERR_BAD_MODULE, "no reginfo found"); - mod->reginfo = (grub_uint32_t *)((char *) ehdr + ri->sh_offset); - } - - gp0 = mod->reginfo[5]; - Elf_Rel *rel, *max; - - for (rel = (Elf_Rel *) ((char *) e + s->sh_offset), - max = (Elf_Rel *) ((char *) rel + s->sh_size); - rel < max; - rel = (Elf_Rel *) ((char *) rel + s->sh_entsize)) - { - grub_uint8_t *addr; - Elf_Sym *sym; - grub_uint32_t sym_value; - - if (seg->size < rel->r_offset) - return grub_error (GRUB_ERR_BAD_MODULE, - "reloc offset is out of the segment"); - - addr = (grub_uint8_t *) ((char *) seg->addr + rel->r_offset); - sym = (Elf_Sym *) ((char *) mod->symtab - + mod->symsize * ELF_R_SYM (rel->r_info)); - sym_value = sym->st_value; - if (s->sh_type == SHT_RELA) - { - sym_value += ((Elf_Rela *) rel)->r_addend; - } - if (sym_value == (grub_addr_t) &__gnu_local_gp_dummy) - sym_value = (grub_addr_t) mod->got; - else if (sym_value == (grub_addr_t) &_gp_disp_dummy) - { - sym_value = (grub_addr_t) mod->got - (grub_addr_t) addr; - if (ELF_R_TYPE (rel->r_info) == R_MIPS_LO16) - /* ABI mandates +4 even if partner lui doesn't - immediately precede addiu. */ - sym_value += 4; - } - switch (ELF_R_TYPE (rel->r_info)) - { - case R_MIPS_HI16: - { - grub_uint32_t value; - Elf_Rel *rel2; - -#ifdef GRUB_CPU_WORDS_BIGENDIAN - addr += 2; -#endif - - /* Handle partner lo16 relocation. Lower part is - treated as signed. Hence add 0x8000 to compensate. - */ - value = (*(grub_uint16_t *) addr << 16) - + sym_value + 0x8000; - for (rel2 = rel + 1; rel2 < max; rel2++) - if (ELF_R_SYM (rel2->r_info) - == ELF_R_SYM (rel->r_info) - && ELF_R_TYPE (rel2->r_info) == R_MIPS_LO16) - { - value += *(grub_int16_t *) - ((char *) seg->addr + rel2->r_offset -#ifdef GRUB_CPU_WORDS_BIGENDIAN - + 2 -#endif - ); - break; - } - *(grub_uint16_t *) addr = (value >> 16) & 0xffff; - } - break; - case R_MIPS_LO16: -#ifdef GRUB_CPU_WORDS_BIGENDIAN - addr += 2; -#endif - *(grub_uint16_t *) addr += sym_value & 0xffff; - break; - case R_MIPS_32: - *(grub_uint32_t *) addr += sym_value; - break; - case R_MIPS_GPREL32: - *(grub_uint32_t *) addr = sym_value - + *(grub_uint32_t *) addr + gp0 - (grub_uint32_t)mod->got; - break; - - case R_MIPS_26: - { - grub_uint32_t value; - grub_uint32_t raw; - raw = (*(grub_uint32_t *) addr) & 0x3ffffff; - value = raw << 2; - value += sym_value; - raw = (value >> 2) & 0x3ffffff; - - *(grub_uint32_t *) addr = - raw | ((*(grub_uint32_t *) addr) & 0xfc000000); - } - break; - case R_MIPS_GOT16: - if (ELF_ST_BIND (sym->st_info) == STB_LOCAL) - { - Elf_Rel *rel2; - /* Handle partner lo16 relocation. Lower part is - treated as signed. Hence add 0x8000 to compensate. - */ - sym_value += (*(grub_uint16_t *) addr << 16) - + 0x8000; - for (rel2 = rel + 1; rel2 < max; rel2++) - if (ELF_R_SYM (rel2->r_info) - == ELF_R_SYM (rel->r_info) - && ELF_R_TYPE (rel2->r_info) == R_MIPS_LO16) - { - sym_value += *(grub_int16_t *) - ((char *) seg->addr + rel2->r_offset -#ifdef GRUB_CPU_WORDS_BIGENDIAN - + 2 -#endif - ); - break; - } - sym_value &= 0xffff0000; - *(grub_uint16_t *) addr = 0; - } - /* Fallthrough. */ - case R_MIPS_CALL16: - { - grub_uint32_t *gpptr = mod->gotptr; - /* FIXME: reuse*/ -#ifdef GRUB_CPU_WORDS_BIGENDIAN - addr += 2; -#endif - *gpptr = sym_value + *(grub_uint16_t *) addr; - *(grub_uint16_t *) addr - = sizeof (grub_uint32_t) * (gpptr - (grub_uint32_t *) mod->got); - mod->gotptr = gpptr + 1; - break; - } - case R_MIPS_JALR: - break; - default: - { - return grub_error (GRUB_ERR_NOT_IMPLEMENTED_YET, - N_("relocation 0x%x is not implemented yet"), - ELF_R_TYPE (rel->r_info)); - } - break; - } - } - - return GRUB_ERR_NONE; -} - -void -grub_arch_dl_init_linker (void) -{ - grub_dl_register_symbol ("__gnu_local_gp", &__gnu_local_gp_dummy, 0, 0); - grub_dl_register_symbol ("_gp_disp", &_gp_disp_dummy, 0, 0); -} - diff --git a/thirdparty/grub-2.04/grub-core/kern/mips/init.c b/thirdparty/grub-2.04/grub-core/kern/mips/init.c deleted file mode 100644 index 14b8752ec..000000000 --- a/thirdparty/grub-2.04/grub-core/kern/mips/init.c +++ /dev/null @@ -1,38 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include - -/* FIXME: use interrupt to count high. */ -grub_uint64_t -grub_get_rtc (void) -{ - static grub_uint32_t high = 0; - static grub_uint32_t last = 0; - grub_uint32_t low; - - asm volatile ("mfc0 %0, " GRUB_CPU_MIPS_COP0_TIMER_COUNT : "=r" (low)); - if (low < last) - high++; - last = low; - - return (((grub_uint64_t) high) << 32) | low; -} diff --git a/thirdparty/grub-2.04/grub-core/kern/mips/loongson/init.c b/thirdparty/grub-2.04/grub-core/kern/mips/loongson/init.c deleted file mode 100644 index 7b96531b9..000000000 --- a/thirdparty/grub-2.04/grub-core/kern/mips/loongson/init.c +++ /dev/null @@ -1,320 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2009,2010 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -grub_err_t -grub_machine_mmap_iterate (grub_memory_hook_t hook, void *hook_data) -{ - hook (GRUB_ARCH_LOWMEMPSTART, grub_arch_memsize << 20, - GRUB_MEMORY_AVAILABLE, hook_data); - hook (GRUB_ARCH_HIGHMEMPSTART, grub_arch_highmemsize << 20, - GRUB_MEMORY_AVAILABLE, hook_data); - return GRUB_ERR_NONE; -} - -/* Helper for init_pci. */ -static int -set_card (grub_pci_device_t dev, grub_pci_id_t pciid, - void *data __attribute__ ((unused))) -{ - grub_pci_address_t addr; - /* We could use grub_pci_assign_addresses for this but we prefer to - have exactly same memory map as on pmon. */ - switch (pciid) - { - case GRUB_LOONGSON_OHCI_PCIID: - addr = grub_pci_make_address (dev, GRUB_PCI_REG_ADDRESS_REG0); - grub_pci_write (addr, 0x5025000); - addr = grub_pci_make_address (dev, GRUB_PCI_REG_COMMAND); - grub_pci_write_word (addr, GRUB_PCI_COMMAND_SERR_ENABLE - | GRUB_PCI_COMMAND_PARITY_ERROR - | GRUB_PCI_COMMAND_BUS_MASTER - | GRUB_PCI_COMMAND_MEM_ENABLED); - - addr = grub_pci_make_address (dev, GRUB_PCI_REG_STATUS); - grub_pci_write_word (addr, 0x0200 | GRUB_PCI_STATUS_CAPABILITIES); - break; - case GRUB_LOONGSON_EHCI_PCIID: - addr = grub_pci_make_address (dev, GRUB_PCI_REG_ADDRESS_REG0); - grub_pci_write (addr, 0x5026000); - addr = grub_pci_make_address (dev, GRUB_PCI_REG_COMMAND); - grub_pci_write_word (addr, GRUB_PCI_COMMAND_SERR_ENABLE - | GRUB_PCI_COMMAND_PARITY_ERROR - | GRUB_PCI_COMMAND_BUS_MASTER - | GRUB_PCI_COMMAND_MEM_ENABLED); - - addr = grub_pci_make_address (dev, GRUB_PCI_REG_STATUS); - grub_pci_write_word (addr, (1 << GRUB_PCI_STATUS_DEVSEL_TIMING_SHIFT) - | GRUB_PCI_STATUS_CAPABILITIES); - break; - } - return 0; -} - -static void -init_pci (void) -{ - *((volatile grub_uint32_t *) GRUB_CPU_LOONGSON_PCI_HIT1_SEL_LO) = 0x8000000c; - *((volatile grub_uint32_t *) GRUB_CPU_LOONGSON_PCI_HIT1_SEL_HI) = 0xffffffff; - - /* Setup PCI controller. */ - *((volatile grub_uint16_t *) (GRUB_MACHINE_PCI_CONTROLLER_HEADER - + GRUB_PCI_REG_COMMAND)) - = GRUB_PCI_COMMAND_PARITY_ERROR | GRUB_PCI_COMMAND_BUS_MASTER - | GRUB_PCI_COMMAND_MEM_ENABLED; - *((volatile grub_uint16_t *) (GRUB_MACHINE_PCI_CONTROLLER_HEADER - + GRUB_PCI_REG_STATUS)) - = (1 << GRUB_PCI_STATUS_DEVSEL_TIMING_SHIFT) - | GRUB_PCI_STATUS_FAST_B2B_CAPABLE | GRUB_PCI_STATUS_66MHZ_CAPABLE - | GRUB_PCI_STATUS_CAPABILITIES; - - *((volatile grub_uint32_t *) (GRUB_MACHINE_PCI_CONTROLLER_HEADER - + GRUB_PCI_REG_CACHELINE)) = 0xff; - *((volatile grub_uint32_t *) (GRUB_MACHINE_PCI_CONTROLLER_HEADER - + GRUB_PCI_REG_ADDRESS_REG0)) - = 0x80000000 | GRUB_PCI_ADDR_MEM_TYPE_64 | GRUB_PCI_ADDR_MEM_PREFETCH; - *((volatile grub_uint32_t *) (GRUB_MACHINE_PCI_CONTROLLER_HEADER - + GRUB_PCI_REG_ADDRESS_REG1)) = 0; - - grub_pci_iterate (set_card, NULL); -} - -void -grub_machine_init (void) -{ - grub_addr_t modend; - grub_uint32_t prid; - - asm volatile ("mfc0 %0, " GRUB_CPU_LOONGSON_COP0_PRID : "=r" (prid)); - - switch (prid) - { - /* Loongson 2E. */ - case 0x6302: - grub_arch_machine = GRUB_ARCH_MACHINE_FULOONG2E; - grub_bonito_type = GRUB_BONITO_2F; - break; - /* Loongson 2F. */ - case 0x6303: - if (grub_arch_machine != GRUB_ARCH_MACHINE_FULOONG2F - && grub_arch_machine != GRUB_ARCH_MACHINE_YEELOONG) - grub_arch_machine = GRUB_ARCH_MACHINE_YEELOONG; - grub_bonito_type = GRUB_BONITO_2F; - break; - /* Loongson 3A. */ - case 0x6305: - grub_arch_machine = GRUB_ARCH_MACHINE_YEELOONG_3A; - grub_bonito_type = GRUB_BONITO_3A; - break; - } - - /* FIXME: measure this. */ - if (grub_arch_busclock == 0) - { - grub_arch_busclock = 66000000; - grub_arch_cpuclock = 797000000; - } - - grub_install_get_time_ms (grub_rtc_get_time_ms); - - if (grub_arch_memsize == 0) - { - grub_port_t smbbase; - grub_err_t err; - grub_pci_device_t dev; - struct grub_smbus_spd spd; - unsigned totalmem; - int i; - - if (!grub_cs5536_find (&dev)) - grub_fatal ("No CS5536 found\n"); - - err = grub_cs5536_init_smbus (dev, 0x7ff, &smbbase); - if (err) - grub_fatal ("Couldn't init SMBus: %s\n", grub_errmsg); - - /* Yeeloong and Fuloong have only one memory slot. */ - err = grub_cs5536_read_spd (smbbase, GRUB_SMB_RAM_START_ADDR, &spd); - if (err) - grub_fatal ("Couldn't read SPD: %s\n", grub_errmsg); - for (i = 5; i < 13; i++) - if (spd.ddr2.rank_capacity & (1 << (i & 7))) - break; - /* Something is wrong. */ - if (i == 13) - totalmem = 256; - else - totalmem = ((spd.ddr2.num_of_ranks - & GRUB_SMBUS_SPD_MEMORY_NUM_OF_RANKS_MASK) + 1) << (i + 2); - - if (totalmem >= 256) - { - grub_arch_memsize = 256; - grub_arch_highmemsize = totalmem - 256; - } - else - { - grub_arch_memsize = totalmem; - grub_arch_highmemsize = 0; - } - - grub_cs5536_init_geode (dev); - - init_pci (); - } - - modend = grub_modules_get_end (); - grub_mm_init_region ((void *) modend, (grub_arch_memsize << 20) - - (modend - GRUB_ARCH_LOWMEMVSTART)); - /* FIXME: use upper memory as well. */ - - /* Initialize output terminal (can't be done earlier, as gfxterm - relies on a working heap. */ - grub_video_sm712_init (); - grub_video_sis315pro_init (); - grub_video_radeon_fuloong2e_init (); - grub_video_radeon_yeeloong3a_init (); - grub_font_init (); - grub_gfxterm_init (); - - grub_keylayouts_init (); - if (grub_arch_machine == GRUB_ARCH_MACHINE_YEELOONG - || grub_arch_machine == GRUB_ARCH_MACHINE_YEELOONG_3A) - grub_at_keyboard_init (); - - grub_terminfo_init (); - grub_serial_init (); - - grub_boot_init (); -} - -void -grub_machine_fini (int flags __attribute__ ((unused))) -{ -} - -static int -halt_via (grub_pci_device_t dev, grub_pci_id_t pciid, - void *data __attribute__ ((unused))) -{ - grub_uint16_t pm; - grub_pci_address_t addr; - - if (pciid != 0x30571106) - return 0; - - addr = grub_pci_make_address (dev, 0x40); - pm = grub_pci_read (addr) & ~1; - - if (pm == 0) - { - grub_pci_write (addr, 0x1801); - pm = 0x1800; - } - - addr = grub_pci_make_address (dev, 0x80); - grub_pci_write_byte (addr, 0xff); - - addr = grub_pci_make_address (dev, GRUB_PCI_REG_COMMAND); - grub_pci_write_word (addr, grub_pci_read_word (addr) | GRUB_PCI_COMMAND_IO_ENABLED); - - /* FIXME: This one is derived from qemu. Check on real hardware. */ - grub_outw (0x2000, pm + 4 + GRUB_MACHINE_PCI_IO_BASE); - grub_millisleep (5000); - - return 0; -} - -void -grub_halt (void) -{ - switch (grub_arch_machine) - { - case GRUB_ARCH_MACHINE_FULOONG2E: - grub_pci_iterate (halt_via, NULL); - break; - case GRUB_ARCH_MACHINE_FULOONG2F: - { - grub_pci_device_t dev; - grub_port_t p; - if (grub_cs5536_find (&dev)) - { - p = (grub_cs5536_read_msr (dev, GRUB_CS5536_MSR_GPIO_BAR) - & GRUB_CS5536_LBAR_ADDR_MASK) + GRUB_MACHINE_PCI_IO_BASE; - grub_outl ((1 << 13), p + 4); - grub_outl ((1 << 29), p); - grub_millisleep (5000); - } - } - break; - case GRUB_ARCH_MACHINE_YEELOONG: - grub_outb (grub_inb (GRUB_CPU_LOONGSON_GPIOCFG) - & ~GRUB_CPU_YEELOONG_SHUTDOWN_GPIO, GRUB_CPU_LOONGSON_GPIOCFG); - grub_millisleep (1500); - break; - case GRUB_ARCH_MACHINE_YEELOONG_3A: - grub_millisleep (1); - grub_outb (0x4e, GRUB_MACHINE_PCI_IO_BASE_3A | 0x66); - grub_millisleep (1); - grub_outb (2, GRUB_MACHINE_PCI_IO_BASE_3A | 0x62); - grub_millisleep (5000); - break; - } - - grub_puts_ (N_("Shutdown failed")); - grub_refresh (); - while (1); -} - -void -grub_exit (void) -{ - grub_halt (); -} - -void -grub_machine_get_bootlocation (char **device __attribute__ ((unused)), - char **path __attribute__ ((unused))) -{ -} - -extern char _end[]; -grub_addr_t grub_modbase = (grub_addr_t) _end; - diff --git a/thirdparty/grub-2.04/grub-core/kern/mips/qemu_mips/init.c b/thirdparty/grub-2.04/grub-core/kern/mips/qemu_mips/init.c deleted file mode 100644 index be88b77d2..000000000 --- a/thirdparty/grub-2.04/grub-core/kern/mips/qemu_mips/init.c +++ /dev/null @@ -1,105 +0,0 @@ -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -static inline int -probe_mem (grub_addr_t addr) -{ - volatile grub_uint8_t *ptr = (grub_uint8_t *) (0xa0000000 | addr); - grub_uint8_t c = *ptr; - *ptr = 0xAA; - if (*ptr != 0xAA) - return 0; - *ptr = 0x55; - if (*ptr != 0x55) - return 0; - *ptr = c; - return 1; -} - -void -grub_machine_init (void) -{ - grub_addr_t modend; - - if (grub_arch_memsize == 0) - { - int i; - - for (i = 27; i >= 0; i--) - if (probe_mem (grub_arch_memsize | (1 << i))) - grub_arch_memsize |= (1 << i); - grub_arch_memsize++; - } - - /* FIXME: measure this. */ - grub_arch_cpuclock = 200000000; - - modend = grub_modules_get_end (); - grub_mm_init_region ((void *) modend, grub_arch_memsize - - (modend - GRUB_ARCH_LOWMEMVSTART)); - - grub_install_get_time_ms (grub_rtc_get_time_ms); - - grub_keylayouts_init (); - grub_at_keyboard_init (); - - grub_qemu_init_cirrus (); - grub_vga_text_init (); - - grub_terminfo_init (); - grub_serial_init (); - - grub_boot_init (); -} - -void -grub_machine_fini (int flags __attribute__ ((unused))) -{ -} - -void -grub_exit (void) -{ - grub_halt (); -} - -void -grub_halt (void) -{ - grub_outl (42, 0xbfbf0004); - while (1); -} - -grub_err_t -grub_machine_mmap_iterate (grub_memory_hook_t hook, void *hook_data) -{ - hook (0, grub_arch_memsize, GRUB_MEMORY_AVAILABLE, hook_data); - return GRUB_ERR_NONE; -} - -void -grub_machine_get_bootlocation (char **device __attribute__ ((unused)), - char **path __attribute__ ((unused))) -{ -} - -extern char _end[]; -grub_addr_t grub_modbase = (grub_addr_t) _end; - diff --git a/thirdparty/grub-2.04/grub-core/kern/mips/startup.S b/thirdparty/grub-2.04/grub-core/kern/mips/startup.S deleted file mode 100644 index 1fdb58aca..000000000 --- a/thirdparty/grub-2.04/grub-core/kern/mips/startup.S +++ /dev/null @@ -1,126 +0,0 @@ -/* startup.S - Startup code for the MIPS. */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include - -#define BASE_ADDR 8 - - .globl __start, _start, start - .set noreorder - .set nomacro -__start: -_start: -start: -.extern __bss_start -.extern _end - bal cont - nop - - .org GRUB_KERNEL_MACHINE_TOTAL_MODULE_SIZE -VARIABLE(grub_total_modules_size) - .long 0 - -VARIABLE (grub_arch_busclock) - .long 0 -VARIABLE (grub_arch_cpuclock) - .long 0 -VARIABLE (grub_arch_memsize) - .long 0 -VARIABLE (grub_arch_highmemsize) - .long 0 -#ifdef GRUB_MACHINE_MIPS_LOONGSON -VARIABLE (grub_arch_machine) - .long GRUB_ARCH_MACHINE_FULOONG2F -#endif -cont: - /* Save our base. */ - move $s0, $ra - -#ifdef GRUB_MACHINE_MIPS_QEMU_MIPS - lui $t1, %hi(grub_arch_busclock) - addiu $t1, %lo(grub_arch_busclock) - sw $s4, 8($t1) -#endif - -#ifdef GRUB_MACHINE_MIPS_LOONGSON - lui $t1, %hi(grub_arch_busclock) - addiu $t1, %lo(grub_arch_busclock) - sw $s2, 0($t1) - sw $s3, 4($t1) - sw $s4, 8($t1) - sw $s5, 12($t1) - sw $s7, 16($t1) -#endif - - /* Move the modules out of BSS. */ - lui $t2, %hi(__bss_start) - addiu $t2, %lo(__bss_start) - - lui $t1, %hi(_end) - addiu $t1, %lo(_end) - addiu $t1, (GRUB_KERNEL_MACHINE_MOD_ALIGN - 1) - li $t3, (GRUB_KERNEL_MACHINE_MOD_ALIGN - 1) - nor $t3, $t3, $0 - and $t1, $t1, $t3 - - lw $t3, (GRUB_KERNEL_MACHINE_TOTAL_MODULE_SIZE - BASE_ADDR)($s0) - - /* Backward copy. */ - add $t1, $t1, $t3 - add $t2, $t2, $t3 - addiu $t1, $t1, -1 - addiu $t2, $t2, -1 - - /* $t2 is source. $t1 is destination. $t3 is size. */ -modulesmovcont: - beq $t3, $0, modulesmovdone - nop - lb GRUB_ASM_T4, 0($t2) - sb GRUB_ASM_T4, 0($t1) - addiu $t2, $t2, -1 - addiu $t1, $t1, -1 - b modulesmovcont - addiu $t3, $t3, -1 -modulesmovdone: - - /* Clean BSS. */ - - lui $t1, %hi(__bss_start) - addiu $t1, $t1, %lo(__bss_start) - lui $t2, %hi(_end) - addiu $t2, $t2, %lo(_end) -bsscont: - sb $0,0($t1) - addiu $t1, $t1, 1 - sltu $t3, $t1, $t2 - bne $t3, $0, bsscont - nop - - lui $t9, %hi(grub_main) - addiu $t9, %lo(grub_main) - - lui $sp, %hi(GRUB_MACHINE_MEMORY_STACK_HIGH) - jr $t9 - addiu $sp, $sp, %lo(GRUB_MACHINE_MEMORY_STACK_HIGH) - diff --git a/thirdparty/grub-2.04/grub-core/kern/misc.c b/thirdparty/grub-2.04/grub-core/kern/misc.c deleted file mode 100644 index 3b633d51f..000000000 --- a/thirdparty/grub-2.04/grub-core/kern/misc.c +++ /dev/null @@ -1,1153 +0,0 @@ -/* misc.c - definitions of misc functions */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 1999,2000,2001,2002,2003,2004,2005,2006,2007,2008,2009,2010 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include - -union printf_arg -{ - /* Yes, type is also part of union as the moment we fill the value - we don't need to store its type anymore (when we'll need it, we'll - have format spec again. So save some space. */ - enum - { - INT, LONG, LONGLONG, - UNSIGNED_INT = 3, UNSIGNED_LONG, UNSIGNED_LONGLONG - } type; - long long ll; -}; - -struct printf_args -{ - union printf_arg prealloc[32]; - union printf_arg *ptr; - grub_size_t count; -}; - -static void -parse_printf_args (const char *fmt0, struct printf_args *args, - va_list args_in); -static int -grub_vsnprintf_real (char *str, grub_size_t max_len, const char *fmt0, - struct printf_args *args); - -static void -free_printf_args (struct printf_args *args) -{ - if (args->ptr != args->prealloc) - grub_free (args->ptr); -} - -static int -grub_iswordseparator (int c) -{ - return (grub_isspace (c) || c == ',' || c == ';' || c == '|' || c == '&'); -} - -/* grub_gettext_dummy is not translating anything. */ -static const char * -grub_gettext_dummy (const char *s) -{ - return s; -} - -const char* (*grub_gettext) (const char *s) = grub_gettext_dummy; - -void * -grub_memmove (void *dest, const void *src, grub_size_t n) -{ - char *d = (char *) dest; - const char *s = (const char *) src; - - if (d < s) - while (n--) - *d++ = *s++; - else - { - d += n; - s += n; - - while (n--) - *--d = *--s; - } - - return dest; -} - -char * -grub_strcpy (char *dest, const char *src) -{ - char *p = dest; - - while ((*p++ = *src++) != '\0') - ; - - return dest; -} - -int -grub_printf (const char *fmt, ...) -{ - va_list ap; - int ret; - - va_start (ap, fmt); - ret = grub_vprintf (fmt, ap); - va_end (ap); - - return ret; -} - -int -grub_printf_ (const char *fmt, ...) -{ - va_list ap; - int ret; - - va_start (ap, fmt); - ret = grub_vprintf (_(fmt), ap); - va_end (ap); - - return ret; -} - -int -grub_puts_ (const char *s) -{ - return grub_puts (_(s)); -} - -#if defined (__APPLE__) && ! defined (GRUB_UTIL) -int -grub_err_printf (const char *fmt, ...) -{ - va_list ap; - int ret; - - va_start (ap, fmt); - ret = grub_vprintf (fmt, ap); - va_end (ap); - - return ret; -} -#endif - -#if ! defined (__APPLE__) && ! defined (GRUB_UTIL) -int grub_err_printf (const char *fmt, ...) -__attribute__ ((alias("grub_printf"))); -#endif - -void -grub_real_dprintf (const char *file, const int line, const char *condition, - const char *fmt, ...) -{ - va_list args; - const char *debug = grub_env_get ("debug"); - - if (! debug) - return; - - if (grub_strword (debug, "all") || grub_strword (debug, condition)) - { - grub_printf ("%s:%d: ", file, line); - va_start (args, fmt); - grub_vprintf (fmt, args); - va_end (args); - grub_refresh (); - } -} - -#define PREALLOC_SIZE 255 - -int -grub_vprintf (const char *fmt, va_list ap) -{ - grub_size_t s; - static char buf[PREALLOC_SIZE + 1]; - char *curbuf = buf; - struct printf_args args; - - parse_printf_args (fmt, &args, ap); - - s = grub_vsnprintf_real (buf, PREALLOC_SIZE, fmt, &args); - if (s > PREALLOC_SIZE) - { - curbuf = grub_malloc (s + 1); - if (!curbuf) - { - grub_errno = GRUB_ERR_NONE; - buf[PREALLOC_SIZE - 3] = '.'; - buf[PREALLOC_SIZE - 2] = '.'; - buf[PREALLOC_SIZE - 1] = '.'; - buf[PREALLOC_SIZE] = 0; - curbuf = buf; - } - else - s = grub_vsnprintf_real (curbuf, s, fmt, &args); - } - - free_printf_args (&args); - - grub_xputs (curbuf); - - if (curbuf != buf) - grub_free (curbuf); - - return s; -} - -int -grub_memcmp (const void *s1, const void *s2, grub_size_t n) -{ - const grub_uint8_t *t1 = s1; - const grub_uint8_t *t2 = s2; - - while (n--) - { - if (*t1 != *t2) - return (int) *t1 - (int) *t2; - - t1++; - t2++; - } - - return 0; -} - -int -grub_strcmp (const char *s1, const char *s2) -{ - while (*s1 && *s2) - { - if (*s1 != *s2) - break; - - s1++; - s2++; - } - - return (int) (grub_uint8_t) *s1 - (int) (grub_uint8_t) *s2; -} - -int -grub_strncmp (const char *s1, const char *s2, grub_size_t n) -{ - if (n == 0) - return 0; - - while (*s1 && *s2 && --n) - { - if (*s1 != *s2) - break; - - s1++; - s2++; - } - - return (int) (grub_uint8_t) *s1 - (int) (grub_uint8_t) *s2; -} - -char * -grub_strchr (const char *s, int c) -{ - do - { - if (*s == c) - return (char *) s; - } - while (*s++); - - return 0; -} - -char * -grub_strrchr (const char *s, int c) -{ - char *p = NULL; - - do - { - if (*s == c) - p = (char *) s; - } - while (*s++); - - return p; -} - -int -grub_strword (const char *haystack, const char *needle) -{ - const char *n_pos = needle; - - while (grub_iswordseparator (*haystack)) - haystack++; - - while (*haystack) - { - /* Crawl both the needle and the haystack word we're on. */ - while(*haystack && !grub_iswordseparator (*haystack) - && *haystack == *n_pos) - { - haystack++; - n_pos++; - } - - /* If we reached the end of both words at the same time, the word - is found. If not, eat everything in the haystack that isn't the - next word (or the end of string) and "reset" the needle. */ - if ( (!*haystack || grub_iswordseparator (*haystack)) - && (!*n_pos || grub_iswordseparator (*n_pos))) - return 1; - else - { - n_pos = needle; - while (*haystack && !grub_iswordseparator (*haystack)) - haystack++; - while (grub_iswordseparator (*haystack)) - haystack++; - } - } - - return 0; -} - -int -grub_isspace (int c) -{ - return (c == '\n' || c == '\r' || c == ' ' || c == '\t'); -} - -unsigned long -grub_strtoul (const char *str, char **end, int base) -{ - unsigned long long num; - - num = grub_strtoull (str, end, base); -#if GRUB_CPU_SIZEOF_LONG != 8 - if (num > ~0UL) - { - grub_error (GRUB_ERR_OUT_OF_RANGE, N_("overflow is detected")); - return ~0UL; - } -#endif - - return (unsigned long) num; -} - -unsigned long long -grub_strtoull (const char *str, char **end, int base) -{ - unsigned long long num = 0; - int found = 0; - - /* Skip white spaces. */ - /* grub_isspace checks that *str != '\0'. */ - while (grub_isspace (*str)) - str++; - - /* Guess the base, if not specified. The prefix `0x' means 16, and - the prefix `0' means 8. */ - if (str[0] == '0') - { - if (str[1] == 'x') - { - if (base == 0 || base == 16) - { - base = 16; - str += 2; - } - } - else if (base == 0 && str[1] >= '0' && str[1] <= '7') - base = 8; - } - - if (base == 0) - base = 10; - - while (*str) - { - unsigned long digit; - - digit = grub_tolower (*str) - '0'; - if (digit >= 'a' - '0') - digit += '0' - 'a' + 10; - else if (digit > 9) - break; - - if (digit >= (unsigned long) base) - break; - - found = 1; - - /* NUM * BASE + DIGIT > ~0ULL */ - if (num > grub_divmod64 (~0ULL - digit, base, 0)) - { - grub_error (GRUB_ERR_OUT_OF_RANGE, - N_("overflow is detected")); - return ~0ULL; - } - - num = num * base + digit; - str++; - } - - if (! found) - { - grub_error (GRUB_ERR_BAD_NUMBER, - N_("unrecognized number")); - return 0; - } - - if (end) - *end = (char *) str; - - return num; -} - -char * -grub_strdup (const char *s) -{ - grub_size_t len; - char *p; - - len = grub_strlen (s) + 1; - p = (char *) grub_malloc (len); - if (! p) - return 0; - - return grub_memcpy (p, s, len); -} - -char * -grub_strndup (const char *s, grub_size_t n) -{ - grub_size_t len; - char *p; - - len = grub_strlen (s); - if (len > n) - len = n; - p = (char *) grub_malloc (len + 1); - if (! p) - return 0; - - grub_memcpy (p, s, len); - p[len] = '\0'; - return p; -} - -/* clang detects that we're implementing here a memset so it decides to - optimise and calls memset resulting in infinite recursion. With volatile - we make it not optimise in this way. */ -#ifdef __clang__ -#define VOLATILE_CLANG volatile -#else -#define VOLATILE_CLANG -#endif - -void * -grub_memset (void *s, int c, grub_size_t len) -{ - void *p = s; - grub_uint8_t pattern8 = c; - - if (len >= 3 * sizeof (unsigned long)) - { - unsigned long patternl = 0; - grub_size_t i; - - for (i = 0; i < sizeof (unsigned long); i++) - patternl |= ((unsigned long) pattern8) << (8 * i); - - while (len > 0 && (((grub_addr_t) p) & (sizeof (unsigned long) - 1))) - { - *(VOLATILE_CLANG grub_uint8_t *) p = pattern8; - p = (grub_uint8_t *) p + 1; - len--; - } - while (len >= sizeof (unsigned long)) - { - *(VOLATILE_CLANG unsigned long *) p = patternl; - p = (unsigned long *) p + 1; - len -= sizeof (unsigned long); - } - } - - while (len > 0) - { - *(VOLATILE_CLANG grub_uint8_t *) p = pattern8; - p = (grub_uint8_t *) p + 1; - len--; - } - - return s; -} - -grub_size_t -grub_strlen (const char *s) -{ - const char *p = s; - - while (*p) - p++; - - return p - s; -} - -static inline void -grub_reverse (char *str) -{ - char *p = str + grub_strlen (str) - 1; - - while (str < p) - { - char tmp; - - tmp = *str; - *str = *p; - *p = tmp; - str++; - p--; - } -} - -/* Divide N by D, return the quotient, and store the remainder in *R. */ -grub_uint64_t -grub_divmod64 (grub_uint64_t n, grub_uint64_t d, grub_uint64_t *r) -{ - /* This algorithm is typically implemented by hardware. The idea - is to get the highest bit in N, 64 times, by keeping - upper(N * 2^i) = (Q * D + M), where upper - represents the high 64 bits in 128-bits space. */ - unsigned bits = 64; - grub_uint64_t q = 0; - grub_uint64_t m = 0; - - /* ARM and IA64 don't have a fast 32-bit division. - Using that code would just make us use software division routines, calling - ourselves indirectly and hence getting infinite recursion. - */ -#if !GRUB_DIVISION_IN_SOFTWARE - /* Skip the slow computation if 32-bit arithmetic is possible. */ - if (n < 0xffffffff && d < 0xffffffff) - { - if (r) - *r = ((grub_uint32_t) n) % (grub_uint32_t) d; - - return ((grub_uint32_t) n) / (grub_uint32_t) d; - } -#endif - - while (bits--) - { - m <<= 1; - - if (n & (1ULL << 63)) - m |= 1; - - q <<= 1; - n <<= 1; - - if (m >= d) - { - q |= 1; - m -= d; - } - } - - if (r) - *r = m; - - return q; -} - -/* Convert a long long value to a string. This function avoids 64-bit - modular arithmetic or divisions. */ -static inline char * -grub_lltoa (char *str, int c, unsigned long long n) -{ - unsigned base = (c == 'x') ? 16 : 10; - char *p; - - if ((long long) n < 0 && c == 'd') - { - n = (unsigned long long) (-((long long) n)); - *str++ = '-'; - } - - p = str; - - if (base == 16) - do - { - unsigned d = (unsigned) (n & 0xf); - *p++ = (d > 9) ? d + 'a' - 10 : d + '0'; - } - while (n >>= 4); - else - /* BASE == 10 */ - do - { - grub_uint64_t m; - - n = grub_divmod64 (n, 10, &m); - *p++ = m + '0'; - } - while (n); - - *p = 0; - - grub_reverse (str); - return p; -} - -static void -parse_printf_args (const char *fmt0, struct printf_args *args, - va_list args_in) -{ - const char *fmt; - char c; - grub_size_t n = 0; - - args->count = 0; - - COMPILE_TIME_ASSERT (sizeof (int) == sizeof (grub_uint32_t)); - COMPILE_TIME_ASSERT (sizeof (int) <= sizeof (long long)); - COMPILE_TIME_ASSERT (sizeof (long) <= sizeof (long long)); - COMPILE_TIME_ASSERT (sizeof (long long) == sizeof (void *) - || sizeof (int) == sizeof (void *)); - - fmt = fmt0; - while ((c = *fmt++) != 0) - { - if (c != '%') - continue; - - if (*fmt =='-') - fmt++; - - while (grub_isdigit (*fmt)) - fmt++; - - if (*fmt == '$') - fmt++; - - if (*fmt =='-') - fmt++; - - while (grub_isdigit (*fmt)) - fmt++; - - if (*fmt =='.') - fmt++; - - while (grub_isdigit (*fmt)) - fmt++; - - c = *fmt++; - if (c == 'l') - c = *fmt++; - if (c == 'l') - c = *fmt++; - - switch (c) - { - case 'p': - case 'x': - case 'u': - case 'd': - case 'c': - case 'C': - case 's': - args->count++; - break; - } - } - - if (args->count <= ARRAY_SIZE (args->prealloc)) - args->ptr = args->prealloc; - else - { - args->ptr = grub_malloc (args->count * sizeof (args->ptr[0])); - if (!args->ptr) - { - grub_errno = GRUB_ERR_NONE; - args->ptr = args->prealloc; - args->count = ARRAY_SIZE (args->prealloc); - } - } - - grub_memset (args->ptr, 0, args->count * sizeof (args->ptr[0])); - - fmt = fmt0; - n = 0; - while ((c = *fmt++) != 0) - { - int longfmt = 0; - grub_size_t curn; - const char *p; - - if (c != '%') - continue; - - curn = n++; - - if (*fmt =='-') - fmt++; - - p = fmt; - - while (grub_isdigit (*fmt)) - fmt++; - - if (*fmt == '$') - { - curn = grub_strtoull (p, 0, 10) - 1; - fmt++; - } - - if (*fmt =='-') - fmt++; - - while (grub_isdigit (*fmt)) - fmt++; - - if (*fmt =='.') - fmt++; - - while (grub_isdigit (*fmt)) - fmt++; - - c = *fmt++; - if (c == '%') - { - n--; - continue; - } - - if (c == 'l') - { - c = *fmt++; - longfmt = 1; - } - if (c == 'l') - { - c = *fmt++; - longfmt = 2; - } - if (curn >= args->count) - continue; - switch (c) - { - case 'x': - case 'u': - args->ptr[curn].type = UNSIGNED_INT + longfmt; - break; - case 'd': - args->ptr[curn].type = INT + longfmt; - break; - case 'p': - case 's': - if (sizeof (void *) == sizeof (long long)) - args->ptr[curn].type = UNSIGNED_LONGLONG; - else - args->ptr[curn].type = UNSIGNED_INT; - break; - case 'C': - case 'c': - args->ptr[curn].type = INT; - break; - } - } - - for (n = 0; n < args->count; n++) - switch (args->ptr[n].type) - { - case INT: - args->ptr[n].ll = va_arg (args_in, int); - break; - case LONG: - args->ptr[n].ll = va_arg (args_in, long); - break; - case UNSIGNED_INT: - args->ptr[n].ll = va_arg (args_in, unsigned int); - break; - case UNSIGNED_LONG: - args->ptr[n].ll = va_arg (args_in, unsigned long); - break; - case LONGLONG: - case UNSIGNED_LONGLONG: - args->ptr[n].ll = va_arg (args_in, long long); - break; - } -} - -static inline void __attribute__ ((always_inline)) -write_char (char *str, grub_size_t *count, grub_size_t max_len, unsigned char ch) -{ - if (*count < max_len) - str[*count] = ch; - - (*count)++; -} - -static int -grub_vsnprintf_real (char *str, grub_size_t max_len, const char *fmt0, - struct printf_args *args) -{ - char c; - grub_size_t n = 0; - grub_size_t count = 0; - const char *fmt; - - fmt = fmt0; - - while ((c = *fmt++) != 0) - { - unsigned int format1 = 0; - unsigned int format2 = ~ 0U; - char zerofill = ' '; - char rightfill = 0; - grub_size_t curn; - - if (c != '%') - { - write_char (str, &count, max_len,c); - continue; - } - - curn = n++; - - rescan:; - - if (*fmt =='-') - { - rightfill = 1; - fmt++; - } - - /* Read formatting parameters. */ - if (grub_isdigit (*fmt)) - { - if (fmt[0] == '0') - zerofill = '0'; - format1 = grub_strtoul (fmt, (char **) &fmt, 10); - } - - if (*fmt == '.') - fmt++; - - if (grub_isdigit (*fmt)) - format2 = grub_strtoul (fmt, (char **) &fmt, 10); - - if (*fmt == '$') - { - curn = format1 - 1; - fmt++; - format1 = 0; - format2 = ~ 0U; - zerofill = ' '; - rightfill = 0; - - goto rescan; - } - - c = *fmt++; - if (c == 'l') - c = *fmt++; - if (c == 'l') - c = *fmt++; - - if (c == '%') - { - write_char (str, &count, max_len,c); - n--; - continue; - } - - if (curn >= args->count) - continue; - - long long curarg = args->ptr[curn].ll; - - switch (c) - { - case 'p': - write_char (str, &count, max_len, '0'); - write_char (str, &count, max_len, 'x'); - c = 'x'; - /* Fall through. */ - case 'x': - case 'u': - case 'd': - { - char tmp[32]; - const char *p = tmp; - grub_size_t len; - grub_size_t fill; - - len = grub_lltoa (tmp, c, curarg) - tmp; - fill = len < format1 ? format1 - len : 0; - if (! rightfill) - while (fill--) - write_char (str, &count, max_len, zerofill); - while (*p) - write_char (str, &count, max_len, *p++); - if (rightfill) - while (fill--) - write_char (str, &count, max_len, zerofill); - } - break; - - case 'c': - write_char (str, &count, max_len,curarg & 0xff); - break; - - case 'C': - { - grub_uint32_t code = curarg; - int shift; - unsigned mask; - - if (code <= 0x7f) - { - shift = 0; - mask = 0; - } - else if (code <= 0x7ff) - { - shift = 6; - mask = 0xc0; - } - else if (code <= 0xffff) - { - shift = 12; - mask = 0xe0; - } - else if (code <= 0x10ffff) - { - shift = 18; - mask = 0xf0; - } - else - { - code = '?'; - shift = 0; - mask = 0; - } - - write_char (str, &count, max_len,mask | (code >> shift)); - - for (shift -= 6; shift >= 0; shift -= 6) - write_char (str, &count, max_len,0x80 | (0x3f & (code >> shift))); - } - break; - - case 's': - { - grub_size_t len = 0; - grub_size_t fill; - const char *p = ((char *) (grub_addr_t) curarg) ? : "(null)"; - grub_size_t i; - - while (len < format2 && p[len]) - len++; - - fill = len < format1 ? format1 - len : 0; - - if (!rightfill) - while (fill--) - write_char (str, &count, max_len, zerofill); - - for (i = 0; i < len; i++) - write_char (str, &count, max_len,*p++); - - if (rightfill) - while (fill--) - write_char (str, &count, max_len, zerofill); - } - - break; - - default: - write_char (str, &count, max_len,c); - break; - } - } - - if (count < max_len) - str[count] = '\0'; - else - str[max_len] = '\0'; - return count; -} - -int -grub_vsnprintf (char *str, grub_size_t n, const char *fmt, va_list ap) -{ - grub_size_t ret; - struct printf_args args; - - if (!n) - return 0; - - n--; - - parse_printf_args (fmt, &args, ap); - - ret = grub_vsnprintf_real (str, n, fmt, &args); - - free_printf_args (&args); - - return ret < n ? ret : n; -} - -int -grub_snprintf (char *str, grub_size_t n, const char *fmt, ...) -{ - va_list ap; - int ret; - - va_start (ap, fmt); - ret = grub_vsnprintf (str, n, fmt, ap); - va_end (ap); - - return ret; -} - -char * -grub_xvasprintf (const char *fmt, va_list ap) -{ - grub_size_t s, as = PREALLOC_SIZE; - char *ret; - struct printf_args args; - - parse_printf_args (fmt, &args, ap); - - while (1) - { - ret = grub_malloc (as + 1); - if (!ret) - { - free_printf_args (&args); - return NULL; - } - - s = grub_vsnprintf_real (ret, as, fmt, &args); - - if (s <= as) - { - free_printf_args (&args); - return ret; - } - - grub_free (ret); - as = s; - } -} - -char * -grub_xasprintf (const char *fmt, ...) -{ - va_list ap; - char *ret; - - va_start (ap, fmt); - ret = grub_xvasprintf (fmt, ap); - va_end (ap); - - return ret; -} - -/* Abort GRUB. This function does not return. */ -static void __attribute__ ((noreturn)) -grub_abort (void) -{ - grub_printf ("\nAborted."); - -#ifndef GRUB_UTIL - if (grub_term_inputs) -#endif - { - grub_printf (" Press any key to exit."); - grub_getkey (); - } - - grub_exit (); -} - -void -grub_fatal (const char *fmt, ...) -{ - va_list ap; - - va_start (ap, fmt); - grub_vprintf (_(fmt), ap); - va_end (ap); - - grub_refresh (); - - grub_abort (); -} - -#if BOOT_TIME_STATS - -#include - -struct grub_boot_time *grub_boot_time_head; -static struct grub_boot_time **boot_time_last = &grub_boot_time_head; - -void -grub_real_boot_time (const char *file, - const int line, - const char *fmt, ...) -{ - struct grub_boot_time *n; - va_list args; - - grub_error_push (); - n = grub_malloc (sizeof (*n)); - if (!n) - { - grub_errno = 0; - grub_error_pop (); - return; - } - n->file = file; - n->line = line; - n->tp = grub_get_time_ms (); - n->next = 0; - - va_start (args, fmt); - n->msg = grub_xvasprintf (fmt, args); - va_end (args); - - *boot_time_last = n; - boot_time_last = &n->next; - - grub_errno = 0; - grub_error_pop (); -} -#endif diff --git a/thirdparty/grub-2.04/grub-core/kern/mm.c b/thirdparty/grub-2.04/grub-core/kern/mm.c deleted file mode 100644 index ee88ff611..000000000 --- a/thirdparty/grub-2.04/grub-core/kern/mm.c +++ /dev/null @@ -1,624 +0,0 @@ -/* mm.c - functions for memory manager */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2002,2005,2007,2008,2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -/* - The design of this memory manager. - - This is a simple implementation of malloc with a few extensions. These are - the extensions: - - - memalign is implemented efficiently. - - - multiple regions may be used as free space. They may not be - contiguous. - - Regions are managed by a singly linked list, and the meta information is - stored in the beginning of each region. Space after the meta information - is used to allocate memory. - - The memory space is used as cells instead of bytes for simplicity. This - is important for some CPUs which may not access multiple bytes at a time - when the first byte is not aligned at a certain boundary (typically, - 4-byte or 8-byte). The size of each cell is equal to the size of struct - grub_mm_header, so the header of each allocated/free block fits into one - cell precisely. One cell is 16 bytes on 32-bit platforms and 32 bytes - on 64-bit platforms. - - There are two types of blocks: allocated blocks and free blocks. - - In allocated blocks, the header of each block has only its size. Note that - this size is based on cells but not on bytes. The header is located right - before the returned pointer, that is, the header resides at the previous - cell. - - Free blocks constitutes a ring, using a singly linked list. The first free - block is pointed to by the meta information of a region. The allocator - attempts to pick up the second block instead of the first one. This is - a typical optimization against defragmentation, and makes the - implementation a bit easier. - - For safety, both allocated blocks and free ones are marked by magic - numbers. Whenever anything unexpected is detected, GRUB aborts the - operation. - */ - -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#ifdef MM_DEBUG -# undef grub_malloc -# undef grub_zalloc -# undef grub_realloc -# undef grub_free -# undef grub_memalign -#endif - - - -grub_mm_region_t grub_mm_base; - -/* Get a header from the pointer PTR, and set *P and *R to a pointer - to the header and a pointer to its region, respectively. PTR must - be allocated. */ -static void -get_header_from_pointer (void *ptr, grub_mm_header_t *p, grub_mm_region_t *r) -{ - if ((grub_addr_t) ptr & (GRUB_MM_ALIGN - 1)) - grub_fatal ("unaligned pointer %p", ptr); - - for (*r = grub_mm_base; *r; *r = (*r)->next) - if ((grub_addr_t) ptr > (grub_addr_t) ((*r) + 1) - && (grub_addr_t) ptr <= (grub_addr_t) ((*r) + 1) + (*r)->size) - break; - - if (! *r) - grub_fatal ("out of range pointer %p", ptr); - - *p = (grub_mm_header_t) ptr - 1; - if ((*p)->magic == GRUB_MM_FREE_MAGIC) - grub_fatal ("double free at %p", *p); - if ((*p)->magic != GRUB_MM_ALLOC_MAGIC) - grub_fatal ("alloc magic is broken at %p: %lx", *p, - (unsigned long) (*p)->magic); -} - -/* Initialize a region starting from ADDR and whose size is SIZE, - to use it as free space. */ -void -grub_mm_init_region (void *addr, grub_size_t size) -{ - grub_mm_header_t h; - grub_mm_region_t r, *p, q; - -#if 0 - grub_printf ("Using memory for heap: start=%p, end=%p\n", addr, addr + (unsigned int) size); -#endif - - /* Exclude last 4K to avoid overflows. */ - /* If addr + 0x1000 overflows then whole region is in excluded zone. */ - if ((grub_addr_t) addr > ~((grub_addr_t) 0x1000)) - return; - - /* If addr + 0x1000 + size overflows then decrease size. */ - if (((grub_addr_t) addr + 0x1000) > ~(grub_addr_t) size) - size = ((grub_addr_t) -0x1000) - (grub_addr_t) addr; - - for (p = &grub_mm_base, q = *p; q; p = &(q->next), q = *p) - if ((grub_uint8_t *) addr + size + q->pre_size == (grub_uint8_t *) q) - { - r = (grub_mm_region_t) ALIGN_UP ((grub_addr_t) addr, GRUB_MM_ALIGN); - *r = *q; - r->pre_size += size; - - if (r->pre_size >> GRUB_MM_ALIGN_LOG2) - { - h = (grub_mm_header_t) (r + 1); - h->size = (r->pre_size >> GRUB_MM_ALIGN_LOG2); - h->magic = GRUB_MM_ALLOC_MAGIC; - r->size += h->size << GRUB_MM_ALIGN_LOG2; - r->pre_size &= (GRUB_MM_ALIGN - 1); - *p = r; - grub_free (h + 1); - } - *p = r; - return; - } - - /* Allocate a region from the head. */ - r = (grub_mm_region_t) ALIGN_UP ((grub_addr_t) addr, GRUB_MM_ALIGN); - - /* If this region is too small, ignore it. */ - if (size < GRUB_MM_ALIGN + (char *) r - (char *) addr + sizeof (*r)) - return; - - size -= (char *) r - (char *) addr + sizeof (*r); - - h = (grub_mm_header_t) (r + 1); - h->next = h; - h->magic = GRUB_MM_FREE_MAGIC; - h->size = (size >> GRUB_MM_ALIGN_LOG2); - - r->first = h; - r->pre_size = (grub_addr_t) r - (grub_addr_t) addr; - r->size = (h->size << GRUB_MM_ALIGN_LOG2); - - /* Find where to insert this region. Put a smaller one before bigger ones, - to prevent fragmentation. */ - for (p = &grub_mm_base, q = *p; q; p = &(q->next), q = *p) - if (q->size > r->size) - break; - - *p = r; - r->next = q; -} - -/* Allocate the number of units N with the alignment ALIGN from the ring - buffer starting from *FIRST. ALIGN must be a power of two. Both N and - ALIGN are in units of GRUB_MM_ALIGN. Return a non-NULL if successful, - otherwise return NULL. */ -static void * -grub_real_malloc (grub_mm_header_t *first, grub_size_t n, grub_size_t align) -{ - grub_mm_header_t p, q; - - /* When everything is allocated side effect is that *first will have alloc - magic marked, meaning that there is no room in this region. */ - if ((*first)->magic == GRUB_MM_ALLOC_MAGIC) - return 0; - - /* Try to search free slot for allocation in this memory region. */ - for (q = *first, p = q->next; ; q = p, p = p->next) - { - grub_off_t extra; - - extra = ((grub_addr_t) (p + 1) >> GRUB_MM_ALIGN_LOG2) & (align - 1); - if (extra) - extra = align - extra; - - if (! p) - grub_fatal ("null in the ring"); - - if (p->magic != GRUB_MM_FREE_MAGIC) - grub_fatal ("free magic is broken at %p: 0x%x", p, p->magic); - - if (p->size >= n + extra) - { - extra += (p->size - extra - n) & (~(align - 1)); - if (extra == 0 && p->size == n) - { - /* There is no special alignment requirement and memory block - is complete match. - - 1. Just mark memory block as allocated and remove it from - free list. - - Result: - +---------------+ previous block's next - | alloc, size=n | | - +---------------+ v - */ - q->next = p->next; - } - else if (align == 1 || p->size == n + extra) - { - /* There might be alignment requirement, when taking it into - account memory block fits in. - - 1. Allocate new area at end of memory block. - 2. Reduce size of available blocks from original node. - 3. Mark new area as allocated and "remove" it from free - list. - - Result: - +---------------+ - | free, size-=n | next --+ - +---------------+ | - | alloc, size=n | | - +---------------+ v - */ - - p->size -= n; - p += p->size; - } - else if (extra == 0) - { - grub_mm_header_t r; - - r = p + extra + n; - r->magic = GRUB_MM_FREE_MAGIC; - r->size = p->size - extra - n; - r->next = p->next; - q->next = r; - - if (q == p) - { - q = r; - r->next = r; - } - } - else - { - /* There is alignment requirement and there is room in memory - block. Split memory block to three pieces. - - 1. Create new memory block right after section being - allocated. Mark it as free. - 2. Add new memory block to free chain. - 3. Mark current memory block having only extra blocks. - 4. Advance to aligned block and mark that as allocated and - "remove" it from free list. - - Result: - +------------------------------+ - | free, size=extra | next --+ - +------------------------------+ | - | alloc, size=n | | - +------------------------------+ | - | free, size=orig.size-extra-n | <------+, next --+ - +------------------------------+ v - */ - grub_mm_header_t r; - - r = p + extra + n; - r->magic = GRUB_MM_FREE_MAGIC; - r->size = p->size - extra - n; - r->next = p; - - p->size = extra; - q->next = r; - p += extra; - } - - p->magic = GRUB_MM_ALLOC_MAGIC; - p->size = n; - - /* Mark find as a start marker for next allocation to fasten it. - This will have side effect of fragmenting memory as small - pieces before this will be un-used. */ - /* So do it only for chunks under 64K. */ - if (n < (0x8000 >> GRUB_MM_ALIGN_LOG2) - || *first == p) - *first = q; - - return p + 1; - } - - /* Search was completed without result. */ - if (p == *first) - break; - } - - return 0; -} - -/* Allocate SIZE bytes with the alignment ALIGN and return the pointer. */ -void * -grub_memalign (grub_size_t align, grub_size_t size) -{ - grub_mm_region_t r; - grub_size_t n = ((size + GRUB_MM_ALIGN - 1) >> GRUB_MM_ALIGN_LOG2) + 1; - int count = 0; - - if (!grub_mm_base) - goto fail; - - if (size > ~(grub_size_t) align) - goto fail; - - /* We currently assume at least a 32-bit grub_size_t, - so limiting allocations to - 1MiB - in name of sanity is beneficial. */ - if ((size + align) > ~(grub_size_t) 0x100000) - goto fail; - - align = (align >> GRUB_MM_ALIGN_LOG2); - if (align == 0) - align = 1; - - again: - - for (r = grub_mm_base; r; r = r->next) - { - void *p; - - p = grub_real_malloc (&(r->first), n, align); - if (p) - return p; - } - - /* If failed, increase free memory somehow. */ - switch (count) - { - case 0: - /* Invalidate disk caches. */ - grub_disk_cache_invalidate_all (); - count++; - goto again; - -#if 0 - case 1: - /* Unload unneeded modules. */ - grub_dl_unload_unneeded (); - count++; - goto again; -#endif - - default: - break; - } - - fail: - grub_error (GRUB_ERR_OUT_OF_MEMORY, N_("out of memory")); - return 0; -} - -/* Allocate SIZE bytes and return the pointer. */ -void * -grub_malloc (grub_size_t size) -{ - return grub_memalign (0, size); -} - -/* Allocate SIZE bytes, clear them and return the pointer. */ -void * -grub_zalloc (grub_size_t size) -{ - void *ret; - - ret = grub_memalign (0, size); - if (ret) - grub_memset (ret, 0, size); - - return ret; -} - -/* Deallocate the pointer PTR. */ -void -grub_free (void *ptr) -{ - grub_mm_header_t p; - grub_mm_region_t r; - - if (! ptr) - return; - - get_header_from_pointer (ptr, &p, &r); - - if (r->first->magic == GRUB_MM_ALLOC_MAGIC) - { - p->magic = GRUB_MM_FREE_MAGIC; - r->first = p->next = p; - } - else - { - grub_mm_header_t q, s; - -#if 0 - q = r->first; - do - { - grub_printf ("%s:%d: q=%p, q->size=0x%x, q->magic=0x%x\n", - GRUB_FILE, __LINE__, q, q->size, q->magic); - q = q->next; - } - while (q != r->first); -#endif - - for (s = r->first, q = s->next; q <= p || q->next >= p; s = q, q = s->next) - { - if (q->magic != GRUB_MM_FREE_MAGIC) - grub_fatal ("free magic is broken at %p: 0x%x", q, q->magic); - - if (q <= q->next && (q > p || q->next < p)) - break; - } - - p->magic = GRUB_MM_FREE_MAGIC; - p->next = q->next; - q->next = p; - - if (p->next + p->next->size == p) - { - p->magic = 0; - - p->next->size += p->size; - q->next = p->next; - p = p->next; - } - - r->first = q; - - if (q == p + p->size) - { - q->magic = 0; - p->size += q->size; - if (q == s) - s = p; - s->next = p; - q = s; - } - - r->first = q; - } -} - -/* Reallocate SIZE bytes and return the pointer. The contents will be - the same as that of PTR. */ -void * -grub_realloc (void *ptr, grub_size_t size) -{ - grub_mm_header_t p; - grub_mm_region_t r; - void *q; - grub_size_t n; - - if (! ptr) - return grub_malloc (size); - - if (! size) - { - grub_free (ptr); - return 0; - } - - /* FIXME: Not optimal. */ - n = ((size + GRUB_MM_ALIGN - 1) >> GRUB_MM_ALIGN_LOG2) + 1; - get_header_from_pointer (ptr, &p, &r); - - if (p->size >= n) - return ptr; - - q = grub_malloc (size); - if (! q) - return q; - - /* We've already checked that p->size < n. */ - grub_memcpy (q, ptr, p->size << GRUB_MM_ALIGN_LOG2); - grub_free (ptr); - return q; -} - -#ifdef MM_DEBUG -int grub_mm_debug = 0; - -void -grub_mm_dump_free (void) -{ - grub_mm_region_t r; - - for (r = grub_mm_base; r; r = r->next) - { - grub_mm_header_t p; - - /* Follow the free list. */ - p = r->first; - do - { - if (p->magic != GRUB_MM_FREE_MAGIC) - grub_fatal ("free magic is broken at %p: 0x%x", p, p->magic); - - grub_printf ("F:%p:%u:%p\n", - p, (unsigned int) p->size << GRUB_MM_ALIGN_LOG2, p->next); - p = p->next; - } - while (p != r->first); - } - - grub_printf ("\n"); -} - -void -grub_mm_dump (unsigned lineno) -{ - grub_mm_region_t r; - - grub_printf ("called at line %u\n", lineno); - for (r = grub_mm_base; r; r = r->next) - { - grub_mm_header_t p; - - for (p = (grub_mm_header_t) ALIGN_UP ((grub_addr_t) (r + 1), - GRUB_MM_ALIGN); - (grub_addr_t) p < (grub_addr_t) (r+1) + r->size; - p++) - { - switch (p->magic) - { - case GRUB_MM_FREE_MAGIC: - grub_printf ("F:%p:%u:%p\n", - p, (unsigned int) p->size << GRUB_MM_ALIGN_LOG2, p->next); - break; - case GRUB_MM_ALLOC_MAGIC: - grub_printf ("A:%p:%u\n", p, (unsigned int) p->size << GRUB_MM_ALIGN_LOG2); - break; - } - } - } - - grub_printf ("\n"); -} - -void * -grub_debug_malloc (const char *file, int line, grub_size_t size) -{ - void *ptr; - - if (grub_mm_debug) - grub_printf ("%s:%d: malloc (0x%" PRIxGRUB_SIZE ") = ", file, line, size); - ptr = grub_malloc (size); - if (grub_mm_debug) - grub_printf ("%p\n", ptr); - return ptr; -} - -void * -grub_debug_zalloc (const char *file, int line, grub_size_t size) -{ - void *ptr; - - if (grub_mm_debug) - grub_printf ("%s:%d: zalloc (0x%" PRIxGRUB_SIZE ") = ", file, line, size); - ptr = grub_zalloc (size); - if (grub_mm_debug) - grub_printf ("%p\n", ptr); - return ptr; -} - -void -grub_debug_free (const char *file, int line, void *ptr) -{ - if (grub_mm_debug) - grub_printf ("%s:%d: free (%p)\n", file, line, ptr); - grub_free (ptr); -} - -void * -grub_debug_realloc (const char *file, int line, void *ptr, grub_size_t size) -{ - if (grub_mm_debug) - grub_printf ("%s:%d: realloc (%p, 0x%" PRIxGRUB_SIZE ") = ", file, line, ptr, size); - ptr = grub_realloc (ptr, size); - if (grub_mm_debug) - grub_printf ("%p\n", ptr); - return ptr; -} - -void * -grub_debug_memalign (const char *file, int line, grub_size_t align, - grub_size_t size) -{ - void *ptr; - - if (grub_mm_debug) - grub_printf ("%s:%d: memalign (0x%" PRIxGRUB_SIZE ", 0x%" PRIxGRUB_SIZE - ") = ", file, line, align, size); - ptr = grub_memalign (align, size); - if (grub_mm_debug) - grub_printf ("%p\n", ptr); - return ptr; -} - -#endif /* MM_DEBUG */ diff --git a/thirdparty/grub-2.04/grub-core/kern/parser.c b/thirdparty/grub-2.04/grub-core/kern/parser.c deleted file mode 100644 index 78175aac2..000000000 --- a/thirdparty/grub-2.04/grub-core/kern/parser.c +++ /dev/null @@ -1,275 +0,0 @@ -/* parser.c - the part of the parser that can return partial tokens */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2005,2007,2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include - - -/* All the possible state transitions on the command line. If a - transition can not be found, it is assumed that there is no - transition and keep_value is assumed to be 1. */ -static struct grub_parser_state_transition state_transitions[] = { - {GRUB_PARSER_STATE_TEXT, GRUB_PARSER_STATE_QUOTE, '\'', 0}, - {GRUB_PARSER_STATE_TEXT, GRUB_PARSER_STATE_DQUOTE, '\"', 0}, - {GRUB_PARSER_STATE_TEXT, GRUB_PARSER_STATE_VAR, '$', 0}, - {GRUB_PARSER_STATE_TEXT, GRUB_PARSER_STATE_ESC, '\\', 0}, - - {GRUB_PARSER_STATE_ESC, GRUB_PARSER_STATE_TEXT, 0, 1}, - - {GRUB_PARSER_STATE_QUOTE, GRUB_PARSER_STATE_TEXT, '\'', 0}, - - {GRUB_PARSER_STATE_DQUOTE, GRUB_PARSER_STATE_TEXT, '\"', 0}, - {GRUB_PARSER_STATE_DQUOTE, GRUB_PARSER_STATE_QVAR, '$', 0}, - - {GRUB_PARSER_STATE_VAR, GRUB_PARSER_STATE_VARNAME2, '{', 0}, - {GRUB_PARSER_STATE_VAR, GRUB_PARSER_STATE_VARNAME, 0, 1}, - {GRUB_PARSER_STATE_VARNAME, GRUB_PARSER_STATE_TEXT, ' ', 1}, - {GRUB_PARSER_STATE_VARNAME, GRUB_PARSER_STATE_TEXT, '\t', 1}, - {GRUB_PARSER_STATE_VARNAME2, GRUB_PARSER_STATE_TEXT, '}', 0}, - - {GRUB_PARSER_STATE_QVAR, GRUB_PARSER_STATE_QVARNAME2, '{', 0}, - {GRUB_PARSER_STATE_QVAR, GRUB_PARSER_STATE_QVARNAME, 0, 1}, - {GRUB_PARSER_STATE_QVARNAME, GRUB_PARSER_STATE_TEXT, '\"', 0}, - {GRUB_PARSER_STATE_QVARNAME, GRUB_PARSER_STATE_DQUOTE, ' ', 1}, - {GRUB_PARSER_STATE_QVARNAME, GRUB_PARSER_STATE_DQUOTE, '\t', 1}, - {GRUB_PARSER_STATE_QVARNAME2, GRUB_PARSER_STATE_DQUOTE, '}', 0}, - - {0, 0, 0, 0} -}; - - -/* Determines the state following STATE, determined by C. */ -grub_parser_state_t -grub_parser_cmdline_state (grub_parser_state_t state, char c, char *result) -{ - struct grub_parser_state_transition *transition; - struct grub_parser_state_transition default_transition; - - default_transition.to_state = state; - default_transition.keep_value = 1; - - /* Look for a good translation. */ - for (transition = state_transitions; transition->from_state; transition++) - { - if (transition->from_state != state) - continue; - /* An exact match was found, use it. */ - if (transition->input == c) - break; - - if (grub_isspace (transition->input) && !grub_isalpha (c) - && !grub_isdigit (c) && c != '_') - break; - - /* A less perfect match was found, use this one if no exact - match can be found. */ - if (transition->input == 0) - break; - } - - if (!transition->from_state) - transition = &default_transition; - - if (transition->keep_value) - *result = c; - else - *result = 0; - return transition->to_state; -} - - -/* Helper for grub_parser_split_cmdline. */ -static inline int -check_varstate (grub_parser_state_t s) -{ - return (s == GRUB_PARSER_STATE_VARNAME - || s == GRUB_PARSER_STATE_VARNAME2 - || s == GRUB_PARSER_STATE_QVARNAME - || s == GRUB_PARSER_STATE_QVARNAME2); -} - - -static void -add_var (char *varname, char **bp, char **vp, - grub_parser_state_t state, grub_parser_state_t newstate) -{ - const char *val; - - /* Check if a variable was being read in and the end of the name - was reached. */ - if (!(check_varstate (state) && !check_varstate (newstate))) - return; - - *((*vp)++) = '\0'; - val = grub_env_get (varname); - *vp = varname; - if (!val) - return; - - /* Insert the contents of the variable in the buffer. */ - for (; *val; val++) - *((*bp)++) = *val; -} - -grub_err_t -grub_parser_split_cmdline (const char *cmdline, - grub_reader_getline_t getline, void *getline_data, - int *argc, char ***argv) -{ - grub_parser_state_t state = GRUB_PARSER_STATE_TEXT; - /* XXX: Fixed size buffer, perhaps this buffer should be dynamically - allocated. */ - char buffer[1024]; - char *bp = buffer; - char *rd = (char *) cmdline; - char varname[200]; - char *vp = varname; - char *args; - int i; - - *argc = 0; - do - { - if (!rd || !*rd) - { - if (getline) - getline (&rd, 1, getline_data); - else - break; - } - - if (!rd) - break; - - for (; *rd; rd++) - { - grub_parser_state_t newstate; - char use; - - newstate = grub_parser_cmdline_state (state, *rd, &use); - - /* If a variable was being processed and this character does - not describe the variable anymore, write the variable to - the buffer. */ - add_var (varname, &bp, &vp, state, newstate); - - if (check_varstate (newstate)) - { - if (use) - *(vp++) = use; - } - else - { - if (newstate == GRUB_PARSER_STATE_TEXT - && state != GRUB_PARSER_STATE_ESC && grub_isspace (use)) - { - /* Don't add more than one argument if multiple - spaces are used. */ - if (bp != buffer && *(bp - 1)) - { - *(bp++) = '\0'; - (*argc)++; - } - } - else if (use) - *(bp++) = use; - } - state = newstate; - } - } - while (state != GRUB_PARSER_STATE_TEXT && !check_varstate (state)); - - /* A special case for when the last character was part of a - variable. */ - add_var (varname, &bp, &vp, state, GRUB_PARSER_STATE_TEXT); - - if (bp != buffer && *(bp - 1)) - { - *(bp++) = '\0'; - (*argc)++; - } - - /* Reserve memory for the return values. */ - args = grub_malloc (bp - buffer); - if (!args) - return grub_errno; - grub_memcpy (args, buffer, bp - buffer); - - *argv = grub_malloc (sizeof (char *) * (*argc + 1)); - if (!*argv) - { - grub_free (args); - return grub_errno; - } - - /* The arguments are separated with 0's, setup argv so it points to - the right values. */ - bp = args; - for (i = 0; i < *argc; i++) - { - (*argv)[i] = bp; - while (*bp) - bp++; - bp++; - } - - return 0; -} - -/* Helper for grub_parser_execute. */ -static grub_err_t -grub_parser_execute_getline (char **line, int cont __attribute__ ((unused)), - void *data) -{ - char **source = data; - char *p; - - if (!*source) - { - *line = 0; - return 0; - } - - p = grub_strchr (*source, '\n'); - - if (p) - *line = grub_strndup (*source, p - *source); - else - *line = grub_strdup (*source); - *source = p ? p + 1 : 0; - return 0; -} - -grub_err_t -grub_parser_execute (char *source) -{ - while (source) - { - char *line; - - grub_parser_execute_getline (&line, 0, &source); - grub_rescue_parse_line (line, grub_parser_execute_getline, &source); - grub_free (line); - grub_print_error (); - } - - return grub_errno; -} diff --git a/thirdparty/grub-2.04/grub-core/kern/partition.c b/thirdparty/grub-2.04/grub-core/kern/partition.c deleted file mode 100644 index e499147cb..000000000 --- a/thirdparty/grub-2.04/grub-core/kern/partition.c +++ /dev/null @@ -1,276 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2004,2007 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include - -#ifdef GRUB_UTIL -#include -#endif - -grub_partition_map_t grub_partition_map_list; - -/* - * Checks that disk->partition contains part. This function assumes that the - * start of part is relative to the start of disk->partition. Returns 1 if - * disk->partition is null. - */ -static int -grub_partition_check_containment (const grub_disk_t disk, - const grub_partition_t part) -{ - if (disk->partition == NULL) - return 1; - - if (part->start + part->len > disk->partition->len) - { - char *partname; - - partname = grub_partition_get_name (disk->partition); - grub_dprintf ("partition", "sub-partition %s%d of (%s,%s) ends after parent.\n", - part->partmap->name, part->number + 1, disk->name, partname); -#ifdef GRUB_UTIL - grub_util_warn (_("Discarding improperly nested partition (%s,%s,%s%d)"), - disk->name, partname, part->partmap->name, part->number + 1); -#endif - grub_free (partname); - - return 0; - } - - return 1; -} - -/* Context for grub_partition_map_probe. */ -struct grub_partition_map_probe_ctx -{ - int partnum; - grub_partition_t p; -}; - -/* Helper for grub_partition_map_probe. */ -static int -probe_iter (grub_disk_t dsk, const grub_partition_t partition, void *data) -{ - struct grub_partition_map_probe_ctx *ctx = data; - - if (ctx->partnum != partition->number) - return 0; - - if (!(grub_partition_check_containment (dsk, partition))) - return 0; - - ctx->p = (grub_partition_t) grub_malloc (sizeof (*ctx->p)); - if (! ctx->p) - return 1; - - grub_memcpy (ctx->p, partition, sizeof (*ctx->p)); - return 1; -} - -static grub_partition_t -grub_partition_map_probe (const grub_partition_map_t partmap, - grub_disk_t disk, int partnum) -{ - struct grub_partition_map_probe_ctx ctx = { - .partnum = partnum, - .p = 0 - }; - - partmap->iterate (disk, probe_iter, &ctx); - if (grub_errno) - goto fail; - - return ctx.p; - - fail: - grub_free (ctx.p); - return 0; -} - -grub_partition_t -grub_partition_probe (struct grub_disk *disk, const char *str) -{ - grub_partition_t part = 0; - grub_partition_t curpart = 0; - grub_partition_t tail; - const char *ptr; - - part = tail = disk->partition; - - for (ptr = str; *ptr;) - { - grub_partition_map_t partmap; - int num; - const char *partname, *partname_end; - - partname = ptr; - while (*ptr && grub_isalpha (*ptr)) - ptr++; - partname_end = ptr; - num = grub_strtoul (ptr, (char **) &ptr, 0) - 1; - - curpart = 0; - /* Use the first partition map type found. */ - FOR_PARTITION_MAPS(partmap) - { - if (partname_end != partname && - (grub_strncmp (partmap->name, partname, partname_end - partname) - != 0 || partmap->name[partname_end - partname] != 0)) - continue; - - disk->partition = part; - curpart = grub_partition_map_probe (partmap, disk, num); - disk->partition = tail; - if (curpart) - break; - - if (grub_errno == GRUB_ERR_BAD_PART_TABLE) - { - /* Continue to next partition map type. */ - grub_errno = GRUB_ERR_NONE; - continue; - } - - break; - } - - if (! curpart) - { - while (part) - { - curpart = part->parent; - grub_free (part); - part = curpart; - } - return 0; - } - curpart->parent = part; - part = curpart; - if (! ptr || *ptr != ',') - break; - ptr++; - } - - return part; -} - -/* Context for grub_partition_iterate. */ -struct grub_partition_iterate_ctx -{ - int ret; - grub_partition_iterate_hook_t hook; - void *hook_data; -}; - -/* Helper for grub_partition_iterate. */ -static int -part_iterate (grub_disk_t dsk, const grub_partition_t partition, void *data) -{ - struct grub_partition_iterate_ctx *ctx = data; - struct grub_partition p = *partition; - - if (!(grub_partition_check_containment (dsk, partition))) - return 0; - - p.parent = dsk->partition; - dsk->partition = 0; - if (ctx->hook (dsk, &p, ctx->hook_data)) - { - ctx->ret = 1; - return 1; - } - if (p.start != 0) - { - const struct grub_partition_map *partmap; - dsk->partition = &p; - FOR_PARTITION_MAPS(partmap) - { - grub_err_t err; - err = partmap->iterate (dsk, part_iterate, ctx); - if (err) - grub_errno = GRUB_ERR_NONE; - if (ctx->ret) - break; - } - } - dsk->partition = p.parent; - return ctx->ret; -} - -int -grub_partition_iterate (struct grub_disk *disk, - grub_partition_iterate_hook_t hook, void *hook_data) -{ - struct grub_partition_iterate_ctx ctx = { - .ret = 0, - .hook = hook, - .hook_data = hook_data - }; - const struct grub_partition_map *partmap; - - FOR_PARTITION_MAPS(partmap) - { - grub_err_t err; - err = partmap->iterate (disk, part_iterate, &ctx); - if (err) - grub_errno = GRUB_ERR_NONE; - if (ctx.ret) - break; - } - - return ctx.ret; -} - -char * -grub_partition_get_name (const grub_partition_t partition) -{ - char *out = 0, *ptr; - grub_size_t needlen = 0; - grub_partition_t part; - if (!partition) - return grub_strdup (""); - for (part = partition; part; part = part->parent) - /* Even on 64-bit machines this buffer is enough to hold - longest number. */ - needlen += grub_strlen (part->partmap->name) + 1 + 27; - out = grub_malloc (needlen + 1); - if (!out) - return NULL; - - ptr = out + needlen; - *ptr = 0; - for (part = partition; part; part = part->parent) - { - char buf[27]; - grub_size_t len; - grub_snprintf (buf, sizeof (buf), "%d", part->number + 1); - len = grub_strlen (buf); - ptr -= len; - grub_memcpy (ptr, buf, len); - len = grub_strlen (part->partmap->name); - ptr -= len; - grub_memcpy (ptr, part->partmap->name, len); - *--ptr = ','; - } - grub_memmove (out, ptr + 1, out + needlen - ptr); - return out; -} diff --git a/thirdparty/grub-2.04/grub-core/kern/powerpc/cache.S b/thirdparty/grub-2.04/grub-core/kern/powerpc/cache.S deleted file mode 100644 index d85e68d42..000000000 --- a/thirdparty/grub-2.04/grub-core/kern/powerpc/cache.S +++ /dev/null @@ -1,26 +0,0 @@ -/* cache.S - Flush the processor cache for a specific region. */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2004,2007,2010 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - - .text - - .align 2 - .globl grub_arch_sync_caches -grub_arch_sync_caches: -#include "cache_flush.S" - blr diff --git a/thirdparty/grub-2.04/grub-core/kern/powerpc/cache_flush.S b/thirdparty/grub-2.04/grub-core/kern/powerpc/cache_flush.S deleted file mode 100644 index 1410f78b1..000000000 --- a/thirdparty/grub-2.04/grub-core/kern/powerpc/cache_flush.S +++ /dev/null @@ -1,43 +0,0 @@ -/* cache.S - Flush the processor cache for a specific region. */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2004,2007,2010 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#undef CACHE_LINE_BYTES -#define CACHE_LINE_BYTES 32 - - /* `address' may not be CACHE_LINE_BYTES-aligned. */ - andi. 6, 3, CACHE_LINE_BYTES - 1 /* Find the misalignment. */ - add 4, 4, 6 /* Adjust `size' to compensate. */ - - /* Force the dcache lines to memory. */ - li 5, 0 -1: dcbst 5, 3 - addi 5, 5, CACHE_LINE_BYTES - cmpw 5, 4 - blt 1b - sync /* Force all dcbsts to complete. */ - - /* Invalidate the icache lines. */ - li 5, 0 -1: icbi 5, 3 - addi 5, 5, CACHE_LINE_BYTES - cmpw 5, 4 - blt 1b - sync /* Force all icbis to complete. */ - isync /* Discard partially executed instructions that were - loaded from the invalid icache. */ diff --git a/thirdparty/grub-2.04/grub-core/kern/powerpc/compiler-rt.S b/thirdparty/grub-2.04/grub-core/kern/powerpc/compiler-rt.S deleted file mode 100644 index b3b912db6..000000000 --- a/thirdparty/grub-2.04/grub-core/kern/powerpc/compiler-rt.S +++ /dev/null @@ -1,130 +0,0 @@ -/* - * Special support for eabi and SVR4 - * - * Copyright (C) 1995-2014 Free Software Foundation, Inc. - * Written By Michael Meissner - * 64-bit support written by David Edelsohn - * - * This file is free software; you can redistribute it and/or modify it - * under the terms of the GNU General Public License as published by the - * Free Software Foundation; either version 3, or (at your option) any - * later version. - * - * This file is distributed in the hope that it will be useful, but - * WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * Under Section 7 of GPL version 3, you are granted additional - * permissions described in the GCC Runtime Library Exception, version - * 3.1, as published by the Free Software Foundation. - * - * You should have received a copy of the GNU General Public License and - * a copy of the GCC Runtime Library Exception along with this program; - * see the files COPYING3 and COPYING.RUNTIME respectively. If not, see - * . - */ - -/* Do any initializations needed for the eabi environment */ - -#include -#include - - .section ".text" - -#define CFI_RESTORE(reg) .cfi_restore reg -#define CFI_OFFSET(reg, off) .cfi_offset reg, off -#define CFI_DEF_CFA_REGISTER(reg) .cfi_def_cfa_register reg -#define CFI_STARTPROC .cfi_startproc -#define CFI_ENDPROC .cfi_endproc - -/* Routines for restoring integer registers, called by the compiler. */ -/* Called with r11 pointing to the stack header word of the caller of the */ -/* function, just beyond the end of the integer restore area. */ - -CFI_STARTPROC -CFI_DEF_CFA_REGISTER (11) -CFI_OFFSET (65, 4) -CFI_OFFSET (14, -72) -CFI_OFFSET (15, -68) -CFI_OFFSET (16, -64) -CFI_OFFSET (17, -60) -CFI_OFFSET (18, -56) -CFI_OFFSET (19, -52) -CFI_OFFSET (20, -48) -CFI_OFFSET (21, -44) -CFI_OFFSET (22, -40) -CFI_OFFSET (23, -36) -CFI_OFFSET (24, -32) -CFI_OFFSET (25, -28) -CFI_OFFSET (26, -24) -CFI_OFFSET (27, -20) -CFI_OFFSET (28, -16) -CFI_OFFSET (29, -12) -CFI_OFFSET (30, -8) -CFI_OFFSET (31, -4) -FUNCTION(_restgpr_14_x) lwz 14,-72(11) /* restore gp registers */ -CFI_RESTORE (14) -FUNCTION(_restgpr_15_x) lwz 15,-68(11) -CFI_RESTORE (15) -FUNCTION(_restgpr_16_x) lwz 16,-64(11) -CFI_RESTORE (16) -FUNCTION(_restgpr_17_x) lwz 17,-60(11) -CFI_RESTORE (17) -FUNCTION(_restgpr_18_x) lwz 18,-56(11) -CFI_RESTORE (18) -FUNCTION(_restgpr_19_x) lwz 19,-52(11) -CFI_RESTORE (19) -FUNCTION(_restgpr_20_x) lwz 20,-48(11) -CFI_RESTORE (20) -FUNCTION(_restgpr_21_x) lwz 21,-44(11) -CFI_RESTORE (21) -FUNCTION(_restgpr_22_x) lwz 22,-40(11) -CFI_RESTORE (22) -FUNCTION(_restgpr_23_x) lwz 23,-36(11) -CFI_RESTORE (23) -FUNCTION(_restgpr_24_x) lwz 24,-32(11) -CFI_RESTORE (24) -FUNCTION(_restgpr_25_x) lwz 25,-28(11) -CFI_RESTORE (25) -FUNCTION(_restgpr_26_x) lwz 26,-24(11) -CFI_RESTORE (26) -FUNCTION(_restgpr_27_x) lwz 27,-20(11) -CFI_RESTORE (27) -FUNCTION(_restgpr_28_x) lwz 28,-16(11) -CFI_RESTORE (28) -FUNCTION(_restgpr_29_x) lwz 29,-12(11) -CFI_RESTORE (29) -FUNCTION(_restgpr_30_x) lwz 30,-8(11) -CFI_RESTORE (30) -FUNCTION(_restgpr_31_x) lwz 0,4(11) - lwz 31,-4(11) -CFI_RESTORE (31) - mtlr 0 -CFI_RESTORE (65) - mr 1,11 -CFI_DEF_CFA_REGISTER (1) - blr -CFI_ENDPROC - -CFI_STARTPROC -FUNCTION(_savegpr_14) stw 14,-72(11) /* save gp registers */ -FUNCTION(_savegpr_15) stw 15,-68(11) -FUNCTION(_savegpr_16) stw 16,-64(11) -FUNCTION(_savegpr_17) stw 17,-60(11) -FUNCTION(_savegpr_18) stw 18,-56(11) -FUNCTION(_savegpr_19) stw 19,-52(11) -FUNCTION(_savegpr_20) stw 20,-48(11) -FUNCTION(_savegpr_21) stw 21,-44(11) -FUNCTION(_savegpr_22) stw 22,-40(11) -FUNCTION(_savegpr_23) stw 23,-36(11) -FUNCTION(_savegpr_24) stw 24,-32(11) -FUNCTION(_savegpr_25) stw 25,-28(11) -FUNCTION(_savegpr_26) stw 26,-24(11) -FUNCTION(_savegpr_27) stw 27,-20(11) -FUNCTION(_savegpr_28) stw 28,-16(11) -FUNCTION(_savegpr_29) stw 29,-12(11) -FUNCTION(_savegpr_30) stw 30,-8(11) -FUNCTION(_savegpr_31) stw 31,-4(11) - blr -CFI_ENDPROC diff --git a/thirdparty/grub-2.04/grub-core/kern/powerpc/dl.c b/thirdparty/grub-2.04/grub-core/kern/powerpc/dl.c deleted file mode 100644 index cdd61b305..000000000 --- a/thirdparty/grub-2.04/grub-core/kern/powerpc/dl.c +++ /dev/null @@ -1,169 +0,0 @@ -/* dl.c - arch-dependent part of loadable module support */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2002,2004,2005,2007,2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include - -/* Check if EHDR is a valid ELF header. */ -grub_err_t -grub_arch_dl_check_header (void *ehdr) -{ - Elf_Ehdr *e = ehdr; - - /* Check the magic numbers. */ - if (e->e_ident[EI_CLASS] != ELFCLASS32 - || e->e_ident[EI_DATA] != ELFDATA2MSB - || e->e_machine != EM_PPC) - return grub_error (GRUB_ERR_BAD_OS, N_("invalid arch-dependent ELF magic")); - - return GRUB_ERR_NONE; -} - -/* For low-endian reverse lis and addr_high as well as ori and addr_low. */ -struct trampoline -{ - grub_uint32_t lis; - grub_uint32_t ori; - grub_uint32_t mtctr; - grub_uint32_t bctr; -}; - -static const struct trampoline trampoline_template = - { - 0x3d800000, - 0x618c0000, - 0x7d8903a6, - 0x4e800420, - }; - -#pragma GCC diagnostic ignored "-Wcast-align" - -grub_err_t -grub_arch_dl_get_tramp_got_size (const void *ehdr, grub_size_t *tramp, - grub_size_t *got) -{ - const Elf_Ehdr *e = ehdr; - const Elf_Shdr *s; - unsigned i; - - *tramp = 0; - *got = 0; - - for (i = 0, s = (const Elf_Shdr *) ((const char *) e + e->e_shoff); - i < e->e_shnum; - i++, s = (const Elf_Shdr *) ((const char *) s + e->e_shentsize)) - if (s->sh_type == SHT_RELA) - { - const Elf_Rela *rel, *max; - - for (rel = (const Elf_Rela *) ((const char *) e + s->sh_offset), - max = rel + s->sh_size / s->sh_entsize; - rel < max; - rel++) - if (ELF_R_TYPE (rel->r_info) == GRUB_ELF_R_PPC_REL24 - || ELF_R_TYPE (rel->r_info) == GRUB_ELF_R_PPC_PLTREL24) - (*tramp)++; - - } - - *tramp *= sizeof (struct trampoline); - - return GRUB_ERR_NONE; -} - -/* Relocate symbols. */ -grub_err_t -grub_arch_dl_relocate_symbols (grub_dl_t mod, void *ehdr, - Elf_Shdr *s, grub_dl_segment_t seg) -{ - Elf_Rela *rel, *max; - - for (rel = (Elf_Rela *) ((char *) ehdr + s->sh_offset), - max = (Elf_Rela *) ((char *) rel + s->sh_size); - rel < max; - rel = (Elf_Rela *) ((char *) rel + s->sh_entsize)) - { - Elf_Word *addr; - Elf_Sym *sym; - grub_uint32_t value; - - if (seg->size < rel->r_offset) - return grub_error (GRUB_ERR_BAD_MODULE, - "reloc offset is out of the segment"); - - addr = (Elf_Word *) ((char *) seg->addr + rel->r_offset); - sym = (Elf_Sym *) ((char *) mod->symtab - + mod->symsize * ELF_R_SYM (rel->r_info)); - - /* On the PPC the value does not have an explicit - addend, add it. */ - value = sym->st_value + rel->r_addend; - switch (ELF_R_TYPE (rel->r_info)) - { - case GRUB_ELF_R_PPC_ADDR16_LO: - *(Elf_Half *) addr = value; - break; - - case GRUB_ELF_R_PPC_PLTREL24: - case GRUB_ELF_R_PPC_REL24: - { - Elf_Sword delta = value - (Elf_Word) addr; - - if (delta << 6 >> 6 != delta) - { - struct trampoline *tptr = mod->trampptr; - grub_memcpy (tptr, &trampoline_template, - sizeof (*tptr)); - delta = (grub_uint8_t *) tptr - (grub_uint8_t *) addr; - tptr->lis |= (((value) >> 16) & 0xffff); - tptr->ori |= ((value) & 0xffff); - mod->trampptr = tptr + 1; - } - - if (delta << 6 >> 6 != delta) - return grub_error (GRUB_ERR_BAD_MODULE, - "relocation overflow"); - *addr = (*addr & 0xfc000003) | (delta & 0x3fffffc); - break; - } - - case GRUB_ELF_R_PPC_ADDR16_HA: - *(Elf_Half *) addr = (value + 0x8000) >> 16; - break; - - case GRUB_ELF_R_PPC_ADDR32: - *addr = value; - break; - - case GRUB_ELF_R_PPC_REL32: - *addr = value - (Elf_Word) addr; - break; - - default: - return grub_error (GRUB_ERR_NOT_IMPLEMENTED_YET, - N_("relocation 0x%x is not implemented yet"), - ELF_R_TYPE (rel->r_info)); - } - } - - return GRUB_ERR_NONE; -} diff --git a/thirdparty/grub-2.04/grub-core/kern/powerpc/ieee1275/startup.S b/thirdparty/grub-2.04/grub-core/kern/powerpc/ieee1275/startup.S deleted file mode 100644 index 21c884b43..000000000 --- a/thirdparty/grub-2.04/grub-core/kern/powerpc/ieee1275/startup.S +++ /dev/null @@ -1,67 +0,0 @@ -/* startup.S - Startup code for the PowerPC. */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2003,2004,2005,2007,2008 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include - -.extern __bss_start -.extern _end - - .text - .align 2 - .globl start, _start -start: -_start: - li 2, 0 - li 13, 0 - - /* Stage1 won't zero BSS for us. In other cases, why not do it again? */ - lis 6, (__bss_start - 4)@h - ori 6, 6, (__bss_start - 4)@l - -2: stb 2, 4(6) - addi 6, 6, 1 - andi. 7, 6, 3 - cmpi 0, 1, 7, 0 - bne 2b - - lis 7, (_end - 4)@h - ori 7, 7, (_end - 4)@l - subf 7, 6, 7 - subi 8, 7, 1 - andi. 8, 8, 3 - addi 8, 8, 1 - sub 7, 7, 8 - - srwi 7, 7, 2 /* We store 4 bytes at a time. */ - mtctr 7 -2: stwu 2, 4(6) /* We know r2 is already 0 from above. */ - bdnz 2b - - mtctr 8 -2: stb 2, 4(6) /* We know r2 is already 0 from above. */ - addi 6, 6, 1 - bdnz 2b - - /* Store r5 in grub_ieee1275_entry_fn. */ - lis 9, grub_ieee1275_entry_fn@ha - stw 5, grub_ieee1275_entry_fn@l(9) - - bl grub_main -1: b 1b diff --git a/thirdparty/grub-2.04/grub-core/kern/rescue_parser.c b/thirdparty/grub-2.04/grub-core/kern/rescue_parser.c deleted file mode 100644 index 633836699..000000000 --- a/thirdparty/grub-2.04/grub-core/kern/rescue_parser.c +++ /dev/null @@ -1,84 +0,0 @@ -/* rescue_parser.c - rescue mode parser */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include - -grub_err_t -grub_rescue_parse_line (char *line, - grub_reader_getline_t getline, void *getline_data) -{ - char *name; - int n; - grub_command_t cmd; - char **args; - - if (grub_parser_split_cmdline (line, getline, getline_data, &n, &args) - || n < 0) - return grub_errno; - - if (n == 0) - return GRUB_ERR_NONE; - - /* In case of an assignment set the environment accordingly - instead of calling a function. */ - if (n == 1) - { - char *val = grub_strchr (args[0], '='); - - if (val) - { - val[0] = 0; - grub_env_set (args[0], val + 1); - val[0] = '='; - goto quit; - } - } - - /* Get the command name. */ - name = args[0]; - - /* If nothing is specified, restart. */ - if (*name == '\0') - goto quit; - - cmd = grub_command_find (name); - if (cmd) - { - (cmd->func) (cmd, n - 1, &args[1]); - } - else - { - grub_printf_ (N_("Unknown command `%s'.\n"), name); - if (grub_command_find ("help")) - grub_printf ("Try `help' for usage\n"); - } - - quit: - /* Arguments are returned in single memory chunk separated by zeroes */ - grub_free (args[0]); - grub_free (args); - - return grub_errno; -} diff --git a/thirdparty/grub-2.04/grub-core/kern/rescue_reader.c b/thirdparty/grub-2.04/grub-core/kern/rescue_reader.c deleted file mode 100644 index dcd7d4439..000000000 --- a/thirdparty/grub-2.04/grub-core/kern/rescue_reader.c +++ /dev/null @@ -1,98 +0,0 @@ -/* rescue_reader.c - rescue mode reader */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2009,2010 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include - -#define GRUB_RESCUE_BUF_SIZE 256 - -static char linebuf[GRUB_RESCUE_BUF_SIZE]; - -/* Prompt to input a command and read the line. */ -static grub_err_t -grub_rescue_read_line (char **line, int cont, - void *data __attribute__ ((unused))) -{ - int c; - int pos = 0; - char str[4]; - - grub_printf ((cont) ? "> " : "grub rescue> "); - grub_memset (linebuf, 0, GRUB_RESCUE_BUF_SIZE); - - while ((c = grub_getkey ()) != '\n' && c != '\r') - { - if (grub_isprint (c)) - { - if (pos < GRUB_RESCUE_BUF_SIZE - 1) - { - str[0] = c; - str[1] = 0; - linebuf[pos++] = c; - grub_xputs (str); - } - } - else if (c == '\b') - { - if (pos > 0) - { - str[0] = c; - str[1] = ' '; - str[2] = c; - str[3] = 0; - linebuf[--pos] = 0; - grub_xputs (str); - } - } - grub_refresh (); - } - - grub_xputs ("\n"); - grub_refresh (); - - *line = grub_strdup (linebuf); - - return 0; -} - -void __attribute__ ((noreturn)) -grub_rescue_run (void) -{ - grub_printf ("Entering rescue mode...\n"); - - while (1) - { - char *line; - - /* Print an error, if any. */ - grub_print_error (); - grub_errno = GRUB_ERR_NONE; - - grub_rescue_read_line (&line, 0, NULL); - if (! line || line[0] == '\0') - continue; - - grub_rescue_parse_line (line, grub_rescue_read_line, NULL); - grub_free (line); - } -} diff --git a/thirdparty/grub-2.04/grub-core/kern/riscv/cache.c b/thirdparty/grub-2.04/grub-core/kern/riscv/cache.c deleted file mode 100644 index 47777a033..000000000 --- a/thirdparty/grub-2.04/grub-core/kern/riscv/cache.c +++ /dev/null @@ -1,63 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2018 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include - -static grub_int64_t dlinesz; -static grub_int64_t ilinesz; - -/* Prototypes for asm functions. */ -void grub_arch_clean_dcache_range (grub_addr_t beg, grub_addr_t end, - grub_size_t line_size); -void grub_arch_invalidate_icache_range (grub_addr_t beg, grub_addr_t end, - grub_size_t line_size); - -static void -probe_caches (void) -{ - /* TODO */ - dlinesz = 32; - ilinesz = 32; -} - -void -grub_arch_sync_caches (void *address, grub_size_t len) -{ - grub_size_t start, end, max_align; - - if (dlinesz == 0) - probe_caches(); - if (dlinesz == 0) - grub_fatal ("Unknown cache line size!"); - - max_align = dlinesz > ilinesz ? dlinesz : ilinesz; - - start = ALIGN_DOWN ((grub_size_t) address, max_align); - end = ALIGN_UP ((grub_size_t) address + len, max_align); - - grub_arch_clean_dcache_range (start, end, dlinesz); - grub_arch_invalidate_icache_range (start, end, ilinesz); -} - -void -grub_arch_sync_dma_caches (volatile void *address __attribute__((unused)), - grub_size_t len __attribute__((unused))) -{ - /* DMA incoherent devices not supported yet */ -} diff --git a/thirdparty/grub-2.04/grub-core/kern/riscv/cache_flush.S b/thirdparty/grub-2.04/grub-core/kern/riscv/cache_flush.S deleted file mode 100644 index 41de6e411..000000000 --- a/thirdparty/grub-2.04/grub-core/kern/riscv/cache_flush.S +++ /dev/null @@ -1,44 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2018 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include - - .file "cache_flush.S" - .text - -/* - * Simple cache maintenance functions - */ - -/* - * a0 - *beg (inclusive) - * a1 - *end (exclusive) - * a2 - line size -*/ -FUNCTION(grub_arch_clean_dcache_range) - /* TODO */ - ret - -/* - * a0 - *beg (inclusive) - * a1 - *end (exclusive) - * a2 - line size - */ -FUNCTION(grub_arch_invalidate_icache_range) - fence.i - ret diff --git a/thirdparty/grub-2.04/grub-core/kern/riscv/dl.c b/thirdparty/grub-2.04/grub-core/kern/riscv/dl.c deleted file mode 100644 index 6fb8385ef..000000000 --- a/thirdparty/grub-2.04/grub-core/kern/riscv/dl.c +++ /dev/null @@ -1,340 +0,0 @@ -/* dl.c - arch-dependent part of loadable module support */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2018 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include - -/* - * Instructions and instruction encoding are documented in the RISC-V - * specification. This file is based on version 2.2: - * - * https://github.com/riscv/riscv-isa-manual/blob/master/release/riscv-spec-v2.2.pdf - */ -#define LDR 0x58000050 -#define BR 0xd61f0200 - -/* - * Check if EHDR is a valid ELF header. - */ -grub_err_t -grub_arch_dl_check_header (void *ehdr) -{ - Elf_Ehdr *e = ehdr; - - /* Check the magic numbers. */ - if (e->e_ident[EI_DATA] != ELFDATA2LSB || e->e_machine != EM_RISCV) - return grub_error (GRUB_ERR_BAD_OS, - N_("invalid arch-dependent ELF magic")); - - return GRUB_ERR_NONE; -} - -#pragma GCC diagnostic ignored "-Wcast-align" - -/* Relocate symbols. */ -grub_err_t -grub_arch_dl_relocate_symbols (grub_dl_t mod, void *ehdr, - Elf_Shdr *s, grub_dl_segment_t seg) -{ - Elf_Rel *rel, *max; - - for (rel = (Elf_Rel *) ((char *) ehdr + s->sh_offset), - max = (Elf_Rel *) ((char *) rel + s->sh_size); - rel < max; - rel = (Elf_Rel *) ((char *) rel + s->sh_entsize)) - { - Elf_Sym *sym; - void *place; - grub_size_t sym_addr; - - if (rel->r_offset >= seg->size) - return grub_error (GRUB_ERR_BAD_MODULE, - "reloc offset is out of the segment"); - - sym = (Elf_Sym *) ((char *) mod->symtab - + mod->symsize * ELF_R_SYM (rel->r_info)); - - sym_addr = sym->st_value; - if (s->sh_type == SHT_RELA) - sym_addr += ((Elf_Rela *) rel)->r_addend; - - place = (void *) ((grub_addr_t) seg->addr + rel->r_offset); - - switch (ELF_R_TYPE (rel->r_info)) - { - case R_RISCV_32: - { - grub_uint32_t *abs_place = place; - - grub_dprintf ("dl", " reloc_abs32 %p => 0x%016llx\n", - place, (unsigned long long) sym_addr); - - *abs_place = (grub_uint32_t) sym_addr; - } - break; - case R_RISCV_64: - { - grub_size_t *abs_place = place; - - grub_dprintf ("dl", " reloc_abs64 %p => 0x%016llx\n", - place, (unsigned long long) sym_addr); - - *abs_place = (grub_size_t) sym_addr; - } - break; - - case R_RISCV_ADD8: - { - grub_uint8_t *abs_place = place; - - *abs_place += (grub_uint8_t) sym_addr; - } - break; - case R_RISCV_ADD16: - { - grub_uint16_t *abs_place = place; - - *abs_place += (grub_uint16_t) sym_addr; - } - break; - case R_RISCV_ADD32: - { - grub_uint32_t *abs_place = place; - - *abs_place += (grub_uint32_t) sym_addr; - } - break; - case R_RISCV_ADD64: - { - grub_size_t *abs_place = place; - - *abs_place += (grub_size_t) sym_addr; - } - break; - - case R_RISCV_SUB8: - { - grub_uint8_t *abs_place = place; - - *abs_place -= (grub_uint8_t) sym_addr; - } - break; - case R_RISCV_SUB16: - { - grub_uint16_t *abs_place = place; - - *abs_place -= (grub_uint16_t) sym_addr; - } - break; - case R_RISCV_SUB32: - { - grub_uint32_t *abs_place = place; - - *abs_place -= (grub_uint32_t) sym_addr; - } - break; - case R_RISCV_SUB64: - { - grub_size_t *abs_place = place; - - *abs_place -= (grub_size_t) sym_addr; - } - break; - - case R_RISCV_BRANCH: - { - grub_uint32_t *abs_place = place; - grub_ssize_t off = sym_addr - (grub_addr_t) place; - grub_uint32_t imm12 = (off & 0x1000) << (31 - 12); - grub_uint32_t imm11 = (off & 0x800) >> (11 - 7); - grub_uint32_t imm10_5 = (off & 0x7e0) << (30 - 10); - grub_uint32_t imm4_1 = (off & 0x1e) << (11 - 4); - *abs_place = (*abs_place & 0x1fff07f) - | imm12 | imm11 | imm10_5 | imm4_1; - } - break; - - case R_RISCV_JAL: - { - grub_uint32_t *abs_place = place; - grub_ssize_t off = sym_addr - (grub_addr_t) place; - grub_uint32_t imm20 = (off & 0x100000) << (31 - 20); - grub_uint32_t imm19_12 = (off & 0xff000); - grub_uint32_t imm11 = (off & 0x800) << (20 - 11); - grub_uint32_t imm10_1 = (off & 0x7fe) << (30 - 10); - *abs_place = (*abs_place & 0xfff) - | imm20 | imm19_12 | imm11 | imm10_1; - } - break; - - case R_RISCV_CALL: - { - grub_uint32_t *abs_place = place; - grub_ssize_t off = sym_addr - (grub_addr_t) place; - grub_uint32_t hi20, lo12; - - if (off != (grub_int32_t) off) - return grub_error (GRUB_ERR_BAD_MODULE, "relocation overflow"); - - hi20 = (off + 0x800) & 0xfffff000; - lo12 = (off - hi20) & 0xfff; - abs_place[0] = (abs_place[0] & 0xfff) | hi20; - abs_place[1] = (abs_place[1] & 0xfffff) | (lo12 << 20); - } - break; - - case R_RISCV_RVC_BRANCH: - { - grub_uint16_t *abs_place = place; - grub_ssize_t off = sym_addr - (grub_addr_t) place; - grub_uint16_t imm8 = (off & 0x100) << (12 - 8); - grub_uint16_t imm7_6 = (off & 0xc0) >> (6 - 5); - grub_uint16_t imm5 = (off & 0x20) >> (5 - 2); - grub_uint16_t imm4_3 = (off & 0x18) << (12 - 5); - grub_uint16_t imm2_1 = (off & 0x6) << (12 - 10); - *abs_place = (*abs_place & 0xe383) - | imm8 | imm7_6 | imm5 | imm4_3 | imm2_1; - } - break; - - case R_RISCV_RVC_JUMP: - { - grub_uint16_t *abs_place = place; - grub_ssize_t off = sym_addr - (grub_addr_t) place; - grub_uint16_t imm11 = (off & 0x800) << (12 - 11); - grub_uint16_t imm10 = (off & 0x400) >> (10 - 8); - grub_uint16_t imm9_8 = (off & 0x300) << (12 - 11); - grub_uint16_t imm7 = (off & 0x80) >> (7 - 6); - grub_uint16_t imm6 = (off & 0x40) << (12 - 11); - grub_uint16_t imm5 = (off & 0x20) >> (5 - 2); - grub_uint16_t imm4 = (off & 0x10) << (12 - 5); - grub_uint16_t imm3_1 = (off & 0xe) << (12 - 10); - *abs_place = ((*abs_place & 0xe003) - | imm11 | imm10 | imm9_8 | imm7 | imm6 - | imm5 | imm4 | imm3_1); - } - break; - - case R_RISCV_PCREL_HI20: - { - grub_uint32_t *abs_place = place; - grub_ssize_t off = sym_addr - (grub_addr_t) place; - grub_int32_t hi20; - - if (off != (grub_int32_t)off) - return grub_error (GRUB_ERR_BAD_MODULE, "relocation overflow"); - - hi20 = (off + 0x800) & 0xfffff000; - *abs_place = (*abs_place & 0xfff) | hi20; - } - break; - - case R_RISCV_PCREL_LO12_I: - case R_RISCV_PCREL_LO12_S: - { - grub_uint32_t *t32 = place; - Elf_Rela *rel2; - /* Search backwards for matching HI20 reloc. */ - for (rel2 = (Elf_Rela *) ((char *) rel - s->sh_entsize); - (unsigned long)rel2 >= ((unsigned long)ehdr + s->sh_offset); - rel2 = (Elf_Rela *) ((char *) rel2 - s->sh_entsize)) - { - Elf_Addr rel2_info; - Elf_Addr rel2_offset; - Elf_Addr rel2_sym_addr; - Elf_Addr rel2_loc; - grub_ssize_t rel2_off; - grub_ssize_t off; - Elf_Sym *sym2; - - rel2_offset = rel2->r_offset; - rel2_info = rel2->r_info; - rel2_loc = (grub_addr_t) seg->addr + rel2_offset; - - if (ELF_R_TYPE (rel2_info) == R_RISCV_PCREL_HI20 - && rel2_loc == sym_addr) - { - sym2 = (Elf_Sym *) ((char *) mod->symtab - + mod->symsize * ELF_R_SYM (rel2->r_info)); - rel2_sym_addr = sym2->st_value; - if (s->sh_type == SHT_RELA) - rel2_sym_addr += ((Elf_Rela *) rel2)->r_addend; - - rel2_off = rel2_sym_addr - rel2_loc; - off = rel2_off - ((rel2_off + 0x800) & 0xfffff000); - - if (ELF_R_TYPE (rel->r_info) == R_RISCV_PCREL_LO12_I) - *t32 = (*t32 & 0xfffff) | (off & 0xfff) << 20; - else - { - grub_uint32_t imm11_5 = (off & 0xfe0) << (31 - 11); - grub_uint32_t imm4_0 = (off & 0x1f) << (11 - 4); - *t32 = (*t32 & 0x1fff07f) | imm11_5 | imm4_0; - } - break; - } - } - if ((unsigned long)rel2 < ((unsigned long)ehdr + s->sh_offset)) - return grub_error (GRUB_ERR_BAD_MODULE, "cannot find matching HI20 relocation"); - } - break; - - case R_RISCV_HI20: - { - grub_uint32_t *abs_place = place; - *abs_place = (*abs_place & 0xfff) | - (((grub_int32_t) sym_addr + 0x800) & 0xfffff000); - } - break; - - case R_RISCV_LO12_I: - { - grub_uint32_t *abs_place = place; - grub_int32_t lo12 = (grub_int32_t) sym_addr - - (((grub_int32_t) sym_addr + 0x800) & 0xfffff000); - *abs_place = (*abs_place & 0xfffff) | ((lo12 & 0xfff) << 20); - } - break; - - case R_RISCV_LO12_S: - { - grub_uint32_t *abs_place = place; - grub_int32_t lo12 = (grub_int32_t) sym_addr - - (((grub_int32_t) sym_addr + 0x800) & 0xfffff000); - grub_uint32_t imm11_5 = (lo12 & 0xfe0) << (31 - 11); - grub_uint32_t imm4_0 = (lo12 & 0x1f) << (11 - 4); - *abs_place = (*abs_place & 0x1fff07f) | imm11_5 | imm4_0; - } - break; - - case R_RISCV_RELAX: - break; - default: - return grub_error (GRUB_ERR_NOT_IMPLEMENTED_YET, - N_("relocation 0x%x is not implemented yet"), - ELF_R_TYPE (rel->r_info)); - } - } - - return GRUB_ERR_NONE; -} diff --git a/thirdparty/grub-2.04/grub-core/kern/riscv/efi/init.c b/thirdparty/grub-2.04/grub-core/kern/riscv/efi/init.c deleted file mode 100644 index 7eb1969d0..000000000 --- a/thirdparty/grub-2.04/grub-core/kern/riscv/efi/init.c +++ /dev/null @@ -1,76 +0,0 @@ -/* init.c - initialize a riscv-based EFI system */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2018 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include - -static grub_uint64_t timer_frequency_in_khz; - -static grub_uint64_t -grub_efi_get_time_ms (void) -{ - grub_uint64_t tmr; - -#if __riscv_xlen == 64 - asm volatile ("rdcycle %0" : "=r" (tmr)); -#else - grub_uint32_t lo, hi, tmp; - asm volatile ( - "1:\n" - "rdcycleh %0\n" - "rdcycle %1\n" - "rdcycleh %2\n" - "bne %0, %2, 1b" - : "=&r" (hi), "=&r" (lo), "=&r" (tmp)); - tmr = ((grub_uint64_t)hi << 32) | lo; -#endif - - return tmr / timer_frequency_in_khz; -} - -void -grub_machine_init (void) -{ - grub_uint64_t time_before, time_after; - - grub_efi_init (); - - /* Calculate timer frequency */ - timer_frequency_in_khz = 1; - time_before = grub_efi_get_time_ms(); - grub_efi_stall(1000); - time_after = grub_efi_get_time_ms(); - timer_frequency_in_khz = time_after - time_before; - - grub_install_get_time_ms (grub_efi_get_time_ms); -} - -void -grub_machine_fini (int flags) -{ - if (!(flags & GRUB_LOADER_FLAG_NORETURN)) - return; - - grub_efi_fini (); -} diff --git a/thirdparty/grub-2.04/grub-core/kern/riscv/efi/startup.S b/thirdparty/grub-2.04/grub-core/kern/riscv/efi/startup.S deleted file mode 100644 index f2a7b2b1e..000000000 --- a/thirdparty/grub-2.04/grub-core/kern/riscv/efi/startup.S +++ /dev/null @@ -1,48 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2018 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include - -#if __riscv_xlen == 64 -#define sl sd -#define ll ld -#else -#define sl sw -#define ll lw -#endif - - - .file "startup.S" - .text -FUNCTION(_start) - /* - * EFI_SYSTEM_TABLE and EFI_HANDLE are passed in a1/a0. - */ - - ll a2, efi_image_handle_val - sl a0, 0(a2) - ll a2, efi_system_table_val - sl a1, 0(a2) - ll a2, grub_main_val - jr a2 -grub_main_val: - .quad EXT_C(grub_main) -efi_system_table_val: - .quad EXT_C(grub_efi_system_table) -efi_image_handle_val: - .quad EXT_C(grub_efi_image_handle) diff --git a/thirdparty/grub-2.04/grub-core/kern/sparc64/cache.S b/thirdparty/grub-2.04/grub-core/kern/sparc64/cache.S deleted file mode 100644 index 1a16adde8..000000000 --- a/thirdparty/grub-2.04/grub-core/kern/sparc64/cache.S +++ /dev/null @@ -1,41 +0,0 @@ -/* cache.S - Flush the processor cache for a specific region. */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2005,2007,2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include - - .file "cache.S" - - .text - -/* - * void grub_arch_sync_caches (void *address, grub_size_t len) - */ -FUNCTION(grub_arch_sync_caches) - brz,pn %o1, 2f - add %o0, %o1, %o1 - add %o1, 7, %o1 - andn %o1, 7, %o1 - andn %o0, 7, %o0 - sub %o1, %o0, %o1 -1: subcc %o1, 8, %o1 - bne,pt %icc, 1b - flush %o0 + %o1 -2: retl - nop - diff --git a/thirdparty/grub-2.04/grub-core/kern/sparc64/dl.c b/thirdparty/grub-2.04/grub-core/kern/sparc64/dl.c deleted file mode 100644 index 739be4717..000000000 --- a/thirdparty/grub-2.04/grub-core/kern/sparc64/dl.c +++ /dev/null @@ -1,186 +0,0 @@ -/* dl.c - arch-dependent part of loadable module support */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2002,2004,2005,2007,2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include - -/* Check if EHDR is a valid ELF header. */ -grub_err_t -grub_arch_dl_check_header (void *ehdr) -{ - Elf_Ehdr *e = ehdr; - - /* Check the magic numbers. */ - if (e->e_ident[EI_CLASS] != ELFCLASS64 - || e->e_ident[EI_DATA] != ELFDATA2MSB - || e->e_machine != EM_SPARCV9) - return grub_error (GRUB_ERR_BAD_OS, N_("invalid arch-dependent ELF magic")); - - return GRUB_ERR_NONE; -} - -#pragma GCC diagnostic ignored "-Wcast-align" - -struct trampoline -{ - grub_uint8_t code[0x28]; - grub_uint64_t addr; -}; - -static const grub_uint8_t trampoline_code[0x28] = -{ - /* 0: */ 0x82, 0x10, 0x00, 0x0f, /* mov %o7, %g1 */ - /* 4: */ 0x40, 0x00, 0x00, 0x02, /* call 0xc */ - /* 8: */ 0x01, 0x00, 0x00, 0x00, /* nop */ - /* c: */ 0x9e, 0x1b, 0xc0, 0x01, /* xor %o7, %g1, %o7 */ - /* 10: */ 0x82, 0x18, 0x40, 0x0f, /* xor %g1, %o7, %g1 */ - /* 14: */ 0x9e, 0x1b, 0xc0, 0x01, /* xor %o7, %g1, %o7 */ - /* 18: */ 0xc2, 0x58, 0x60, 0x24, /* ldx [ %g1 + 0x24 ], %g1 */ - /* 1c: */ 0x81, 0xc0, 0x40, 0x00, /* jmp %g1 */ - /* 20: */ 0x01, 0x00, 0x00, 0x00, /* nop */ - /* 24: */ 0x01, 0x00, 0x00, 0x00, /* nop */ -}; - -grub_err_t -grub_arch_dl_get_tramp_got_size (const void *ehdr, grub_size_t *tramp, - grub_size_t *got) -{ - const Elf_Ehdr *e = ehdr; - const Elf_Shdr *s; - unsigned i; - - *tramp = 0; - *got = 0; - - for (i = 0, s = (const Elf_Shdr *) ((grub_addr_t) e + e->e_shoff); - i < e->e_shnum; - i++, s = (const Elf_Shdr *) ((grub_addr_t) s + e->e_shentsize)) - if (s->sh_type == SHT_REL || s->sh_type == SHT_RELA) - { - const Elf_Rel *rel, *max; - - for (rel = (const Elf_Rel *) ((grub_addr_t) e + s->sh_offset), - max = rel + s->sh_size / s->sh_entsize; - rel < max; - rel = (const Elf_Rel *) ((grub_addr_t) rel + s->sh_entsize)) - switch (ELF_R_TYPE (rel->r_info)) - { - case R_SPARC_WDISP30: - { - *tramp += sizeof (struct trampoline); - break; - } - } - } - - return GRUB_ERR_NONE; -} - -/* Relocate symbols. */ -grub_err_t -grub_arch_dl_relocate_symbols (grub_dl_t mod, void *ehdr, - Elf_Shdr *s, grub_dl_segment_t seg) -{ - Elf_Rela *rel, *max; - - for (rel = (Elf_Rela *) ((char *) ehdr + s->sh_offset), - max = (Elf_Rela *) ((char *) rel + s->sh_size); - rel < max; - rel = (Elf_Rela *) ((char *) rel + s->sh_entsize)) - { - Elf_Word *addr; - Elf_Sym *sym; - Elf_Addr value; - - if (seg->size < rel->r_offset) - return grub_error (GRUB_ERR_BAD_MODULE, - "reloc offset is out of the segment"); - - addr = (Elf_Word *) ((char *) seg->addr + rel->r_offset); - sym = (Elf_Sym *) ((char *) mod->symtab - + mod->symsize * ELF_R_SYM (rel->r_info)); - - value = sym->st_value + rel->r_addend; - switch (ELF_R_TYPE (rel->r_info) & 0xff) - { - case R_SPARC_32: /* 3 V-word32 */ - if (value & 0xFFFFFFFF00000000) - return grub_error (GRUB_ERR_BAD_MODULE, - "address out of 32 bits range"); - *addr = value; - break; - case R_SPARC_WDISP30: /* 7 V-disp30 */ - if (((value - (Elf_Addr) addr) & 0xFFFFFFFF00000000) && - (((value - (Elf_Addr) addr) & 0xFFFFFFFF00000000) - != 0xFFFFFFFF00000000)) - { - struct trampoline *tp = mod->trampptr; - mod->trampptr = tp + 1; - grub_memcpy (tp->code, trampoline_code, sizeof (tp->code)); - tp->addr = value; - value = (Elf_Addr) tp; - } - - if (((value - (Elf_Addr) addr) & 0xFFFFFFFF00000000) && - (((value - (Elf_Addr) addr) & 0xFFFFFFFF00000000) - != 0xFFFFFFFF00000000)) - return grub_error (GRUB_ERR_BAD_MODULE, - "displacement out of 30 bits range"); - *addr = (*addr & 0xC0000000) | - (((grub_int32_t) ((value - (Elf_Addr) addr) >> 2)) & - 0x3FFFFFFF); - break; - case R_SPARC_HH22: /* 9 V-imm22 */ - *addr = (*addr & 0xFFC00000) | ((value >> 42) & 0x3FFFFF); - break; - case R_SPARC_HM10: /* 12 T-simm13 */ - *addr = (*addr & 0xFFFFFC00) | ((value >> 32) & 0x3FF); - break; - case R_SPARC_HI22: /* 9 V-imm22 */ - if (value >> 32) - return grub_error (GRUB_ERR_BAD_MODULE, - "address out of 32 bits range"); - /* Fallthrough. */ - case R_SPARC_LM22: - *addr = (*addr & 0xFFC00000) | ((value >> 10) & 0x3FFFFF); - break; - case R_SPARC_LO10: /* 12 T-simm13 */ - *addr = (*addr & 0xFFFFFC00) | (value & 0x3FF); - break; - case R_SPARC_64: /* 32 V-xwords64 */ - *(Elf_Xword *) addr = value; - break; - case R_SPARC_OLO10: - *addr = (*addr & ~0x1fff) - | (((value & 0x3ff) + - (ELF_R_TYPE (rel->r_info) >> 8)) - & 0x1fff); - break; - default: - return grub_error (GRUB_ERR_NOT_IMPLEMENTED_YET, - N_("relocation 0x%x is not implemented yet"), - ELF_R_TYPE (rel->r_info)); - } - } - - return GRUB_ERR_NONE; -} diff --git a/thirdparty/grub-2.04/grub-core/kern/sparc64/ieee1275/crt0.S b/thirdparty/grub-2.04/grub-core/kern/sparc64/ieee1275/crt0.S deleted file mode 100644 index 03b916f05..000000000 --- a/thirdparty/grub-2.04/grub-core/kern/sparc64/ieee1275/crt0.S +++ /dev/null @@ -1,104 +0,0 @@ -/* crt0.S - Startup code for the Sparc64. */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ -#include -#include -#include - - .text - .align 4 - .globl _start -_start: - ba codestart - mov %o4, %o0 - - .org GRUB_KERNEL_MACHINE_TOTAL_MODULE_SIZE - -VARIABLE(grub_total_module_size) - .word 0 - -codestart: - /* Copy the modules past the end of the kernel image. - * They are currently sitting in the BSS. - */ - sethi %hi(__bss_start + GRUB_KERNEL_SPARC64_IEEE1275_MOD_ALIGN - 1), %o2 - or %o2, %lo(__bss_start + GRUB_KERNEL_SPARC64_IEEE1275_MOD_ALIGN - 1), %o2 - srl %o2, GRUB_KERNEL_SPARC64_IEEE1275_LOG_MOD_ALIGN, %o2 - sll %o2, GRUB_KERNEL_SPARC64_IEEE1275_LOG_MOD_ALIGN, %o2 - sethi %hi(_end + GRUB_KERNEL_SPARC64_IEEE1275_MOD_ALIGN - 1), %o3 - or %o3, %lo(_end + GRUB_KERNEL_SPARC64_IEEE1275_MOD_ALIGN - 1), %o3 - srl %o3, GRUB_KERNEL_SPARC64_IEEE1275_LOG_MOD_ALIGN, %o3 - sll %o3, GRUB_KERNEL_SPARC64_IEEE1275_LOG_MOD_ALIGN, %o3 - sethi %hi(grub_total_module_size), %o4 - lduw [%o4 + %lo(grub_total_module_size)], %o4 - - add %o2, %o4, %o2 - add %o3, %o4, %o3 - - /* Save ieee1275 stack for future use by booter. */ - mov %o6, %o1 - /* Our future stack. */ - sethi %hi(GRUB_KERNEL_MACHINE_STACK_SIZE), %o5 - or %o5, %lo(GRUB_KERNEL_MACHINE_STACK_SIZE), %o5 - add %o3, %o5, %o6 - and %o6, ~0xff, %o6 - sub %o6, 2047, %o6 - - sub %o2, 4, %o2 - sub %o3, 4, %o3 -1: lduw [%o2], %o5 - stw %o5, [%o3] - subcc %o4, 4, %o4 - sub %o2, 4, %o2 - bne,pt %icc, 1b - sub %o3, 4, %o3 - - /* Now it's safe to clear out the BSS. */ - sethi %hi(__bss_start), %o2 - or %o2, %lo(__bss_start), %o2 -1: stb %g0, [%o2] - add %o2, 1, %o2 - and %o2, 7, %o3 - brnz %o3, 1b - nop - - sethi %hi(_end - 1), %o3 - or %o3, %lo(_end - 1), %o3 - srl %o3, 3, %o3 - sll %o3, 3, %o3 -1: stx %g0, [%o2] - add %o2, 8, %o2 - cmp %o2, %o3 - blt,pt %xcc, 1b - nop - - sethi %hi(_end), %o3 - or %o3, %lo(_end), %o3 -1: stb %g0, [%o2] - add %o2, 1, %o2 - cmp %o2, %o3 - blt,pt %xcc, 1b - nop - - sethi %hi(grub_ieee1275_original_stack), %o2 - stx %o1, [%o2 + %lo(grub_ieee1275_original_stack)] - sethi %hi(grub_ieee1275_entry_fn), %o2 - call grub_main - stx %o0, [%o2 + %lo(grub_ieee1275_entry_fn)] -1: ba,a 1b - nop diff --git a/thirdparty/grub-2.04/grub-core/kern/sparc64/ieee1275/ieee1275.c b/thirdparty/grub-2.04/grub-core/kern/sparc64/ieee1275/ieee1275.c deleted file mode 100644 index 5a59aaf06..000000000 --- a/thirdparty/grub-2.04/grub-core/kern/sparc64/ieee1275/ieee1275.c +++ /dev/null @@ -1,147 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include - -/* Sun specific ieee1275 interfaces used by GRUB. */ - -int -grub_ieee1275_claim_vaddr (grub_addr_t vaddr, grub_size_t size) -{ - struct claim_vaddr_args - { - struct grub_ieee1275_common_hdr common; - grub_ieee1275_cell_t method; - grub_ieee1275_cell_t ihandle; - grub_ieee1275_cell_t align; - grub_ieee1275_cell_t size; - grub_ieee1275_cell_t virt; - grub_ieee1275_cell_t catch_result; - } - args; - - INIT_IEEE1275_COMMON (&args.common, "call-method", 5, 2); - args.method = (grub_ieee1275_cell_t) "claim"; - args.ihandle = grub_ieee1275_mmu; - args.align = 0; - args.size = size; - args.virt = vaddr; - args.catch_result = (grub_ieee1275_cell_t) -1; - - if (IEEE1275_CALL_ENTRY_FN (&args) == -1) - return -1; - return args.catch_result; -} - -int -grub_ieee1275_alloc_physmem (grub_addr_t *paddr, grub_size_t size, - grub_uint32_t align) -{ - grub_uint32_t memory_ihandle; - struct alloc_physmem_args - { - struct grub_ieee1275_common_hdr common; - grub_ieee1275_cell_t method; - grub_ieee1275_cell_t ihandle; - grub_ieee1275_cell_t align; - grub_ieee1275_cell_t size; - grub_ieee1275_cell_t catch_result; - grub_ieee1275_cell_t phys_high; - grub_ieee1275_cell_t phys_low; - } - args; - grub_ssize_t actual = 0; - - grub_ieee1275_get_property (grub_ieee1275_chosen, "memory", - &memory_ihandle, sizeof (memory_ihandle), - &actual); - if (actual != sizeof (memory_ihandle)) - return -1; - - if (!align) - align = 1; - - INIT_IEEE1275_COMMON (&args.common, "call-method", 4, 3); - args.method = (grub_ieee1275_cell_t) "claim"; - args.ihandle = memory_ihandle; - args.align = (align ? align : 1); - args.size = size; - if (IEEE1275_CALL_ENTRY_FN (&args) == -1) - return -1; - - *paddr = args.phys_low; - - return args.catch_result; -} - -grub_uint64_t -grub_ieee1275_num_blocks (grub_ieee1275_ihandle_t ihandle) -{ - struct nblocks_args_ieee1275 - { - struct grub_ieee1275_common_hdr common; - grub_ieee1275_cell_t method; - grub_ieee1275_cell_t ihandle; - grub_ieee1275_cell_t catch_result; - grub_ieee1275_cell_t blocks; - } - args; - - INIT_IEEE1275_COMMON (&args.common, "call-method", 2, 2); - args.method = (grub_ieee1275_cell_t) "#blocks"; - args.ihandle = ihandle; - args.catch_result = 1; - - if ((IEEE1275_CALL_ENTRY_FN (&args) == -1) || (args.catch_result != 0)) - return -1; - - /* - * If the number of blocks exceeds the range of an unsigned number, - * return 0 to alert the caller to try the #blocks64 command. - */ - if (args.blocks >= 0xffffffffULL) - return 0; - - return args.blocks; -} - -grub_uint64_t -grub_ieee1275_num_blocks64 (grub_ieee1275_ihandle_t ihandle) -{ - struct nblocks_args_ieee1275 - { - struct grub_ieee1275_common_hdr common; - grub_ieee1275_cell_t method; - grub_ieee1275_cell_t ihandle; - grub_ieee1275_cell_t catch_result; - grub_ieee1275_cell_t hi_blocks; - grub_ieee1275_cell_t lo_blocks; - } - args; - - INIT_IEEE1275_COMMON (&args.common, "call-method", 2, 3); - args.method = (grub_ieee1275_cell_t) "#blocks64"; - args.ihandle = ihandle; - args.catch_result = 1; - - if ((IEEE1275_CALL_ENTRY_FN (&args) == -1) || (args.catch_result != 0)) - return -1; - - return ((args.hi_blocks << 32) | (args.lo_blocks)); -} diff --git a/thirdparty/grub-2.04/grub-core/kern/term.c b/thirdparty/grub-2.04/grub-core/kern/term.c deleted file mode 100644 index 07720ee67..000000000 --- a/thirdparty/grub-2.04/grub-core/kern/term.c +++ /dev/null @@ -1,130 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2002,2003,2005,2007,2008,2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include - -struct grub_term_output *grub_term_outputs_disabled; -struct grub_term_input *grub_term_inputs_disabled; -struct grub_term_output *grub_term_outputs; -struct grub_term_input *grub_term_inputs; - -/* Current color state. */ -grub_uint8_t grub_term_normal_color = GRUB_TERM_DEFAULT_NORMAL_COLOR; -grub_uint8_t grub_term_highlight_color = GRUB_TERM_DEFAULT_HIGHLIGHT_COLOR; - -void (*grub_term_poll_usb) (int wait_for_completion) = NULL; -void (*grub_net_poll_cards_idle) (void) = NULL; - -/* Put a Unicode character. */ -static void -grub_putcode_dumb (grub_uint32_t code, - struct grub_term_output *term) -{ - struct grub_unicode_glyph c = - { - .base = code, - .variant = 0, - .attributes = 0, - .ncomb = 0, - .estimated_width = 1 - }; - - if (code == '\t' && term->getxy) - { - int n; - - n = GRUB_TERM_TAB_WIDTH - ((term->getxy (term).x) - % GRUB_TERM_TAB_WIDTH); - while (n--) - grub_putcode_dumb (' ', term); - - return; - } - - (term->putchar) (term, &c); - if (code == '\n') - grub_putcode_dumb ('\r', term); -} - -static void -grub_xputs_dumb (const char *str) -{ - for (; *str; str++) - { - grub_term_output_t term; - grub_uint32_t code = *str; - if (code > 0x7f) - code = '?'; - - FOR_ACTIVE_TERM_OUTPUTS(term) - grub_putcode_dumb (code, term); - } -} - -void (*grub_xputs) (const char *str) = grub_xputs_dumb; - -int -grub_getkey_noblock (void) -{ - grub_term_input_t term; - - if (grub_term_poll_usb) - grub_term_poll_usb (0); - - if (grub_net_poll_cards_idle) - grub_net_poll_cards_idle (); - - FOR_ACTIVE_TERM_INPUTS(term) - { - int key = term->getkey (term); - if (key != GRUB_TERM_NO_KEY) - return key; - } - - return GRUB_TERM_NO_KEY; -} - -int -grub_getkey (void) -{ - int ret; - - grub_refresh (); - - while (1) - { - ret = grub_getkey_noblock (); - if (ret != GRUB_TERM_NO_KEY) - return ret; - grub_cpu_idle (); - } -} - -void -grub_refresh (void) -{ - struct grub_term_output *term; - - FOR_ACTIVE_TERM_OUTPUTS(term) - grub_term_refresh (term); -} diff --git a/thirdparty/grub-2.04/grub-core/kern/time.c b/thirdparty/grub-2.04/grub-core/kern/time.c deleted file mode 100644 index 6521ec66f..000000000 --- a/thirdparty/grub-2.04/grub-core/kern/time.c +++ /dev/null @@ -1,37 +0,0 @@ -/* time.c - kernel time functions */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2008 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include - -typedef grub_uint64_t (*get_time_ms_func_t) (void); - -/* Function pointer to the implementation in use. */ -static get_time_ms_func_t get_time_ms_func; - -grub_uint64_t -grub_get_time_ms (void) -{ - return get_time_ms_func (); -} - -void -grub_install_get_time_ms (get_time_ms_func_t func) -{ - get_time_ms_func = func; -} diff --git a/thirdparty/grub-2.04/grub-core/kern/uboot/hw.c b/thirdparty/grub-2.04/grub-core/kern/uboot/hw.c deleted file mode 100644 index 272b83bd7..000000000 --- a/thirdparty/grub-2.04/grub-core/kern/uboot/hw.c +++ /dev/null @@ -1,112 +0,0 @@ -/* hw.c - U-Boot hardware discovery */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2013 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include -#include -#include - -grub_addr_t start_of_ram; - -/* - * grub_uboot_probe_memory(): - * Queries U-Boot for available memory regions. - * - * Sets up heap near the image in memory and sets up "start_of_ram". - */ -void -grub_uboot_mm_init (void) -{ - struct sys_info *si = grub_uboot_get_sys_info (); - - grub_mm_init_region ((void *) grub_modules_get_end (), - GRUB_KERNEL_MACHINE_HEAP_SIZE); - - if (si && (si->mr_no != 0)) - { - int i; - start_of_ram = GRUB_UINT_MAX; - - for (i = 0; i < si->mr_no; i++) - if ((si->mr[i].flags & MR_ATTR_MASK) == MR_ATTR_DRAM) - if (si->mr[i].start < start_of_ram) - start_of_ram = si->mr[i].start; - } -} - -/* - * grub_uboot_probe_hardware(): - */ -grub_err_t -grub_uboot_probe_hardware (void) -{ - int devcount, i; - - devcount = grub_uboot_dev_enum (); - grub_dprintf ("init", "%d devices found\n", devcount); - - for (i = 0; i < devcount; i++) - { - struct device_info *devinfo = grub_uboot_dev_get (i); - - grub_dprintf ("init", "device handle: %d\n", i); - grub_dprintf ("init", " cookie\t= 0x%08x\n", - (grub_uint32_t) devinfo->cookie); - - if (devinfo->type & DEV_TYP_STOR) - { - grub_dprintf ("init", " type\t\t= DISK\n"); - grub_ubootdisk_register (devinfo); - } - else if (devinfo->type & DEV_TYP_NET) - { - /* Dealt with in ubootnet module. */ - grub_dprintf ("init", " type\t\t= NET (not supported yet)\n"); - } - else - { - grub_dprintf ("init", "%s: unknown device type", __FUNCTION__); - } - } - - return GRUB_ERR_NONE; -} - -grub_err_t -grub_machine_mmap_iterate (grub_memory_hook_t hook, void *hook_data) -{ - int i; - struct sys_info *si = grub_uboot_get_sys_info (); - - if (!si || (si->mr_no < 1)) - return GRUB_ERR_BUG; - - /* Iterate and call `hook'. */ - for (i = 0; i < si->mr_no; i++) - if ((si->mr[i].flags & MR_ATTR_MASK) == MR_ATTR_DRAM) - hook (si->mr[i].start, si->mr[i].size, GRUB_MEMORY_AVAILABLE, - hook_data); - - return GRUB_ERR_NONE; -} diff --git a/thirdparty/grub-2.04/grub-core/kern/uboot/init.c b/thirdparty/grub-2.04/grub-core/kern/uboot/init.c deleted file mode 100644 index 3e338645c..000000000 --- a/thirdparty/grub-2.04/grub-core/kern/uboot/init.c +++ /dev/null @@ -1,172 +0,0 @@ -/* init.c - generic U-Boot initialization and finalization */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2013 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -extern char __bss_start[]; -extern char _end[]; -extern grub_size_t grub_total_module_size; -static unsigned long timer_start; - -void -grub_exit (void) -{ - grub_uboot_return (0); -} - -static grub_uint64_t -uboot_timer_ms (void) -{ - static grub_uint32_t last = 0, high = 0; - grub_uint32_t cur = grub_uboot_get_timer (timer_start); - if (cur < last) - high++; - last = cur; - return (((grub_uint64_t) high) << 32) | cur; -} - -#ifdef __arm__ -static grub_uint64_t -rpi_timer_ms (void) -{ - static grub_uint32_t last = 0, high = 0; - grub_uint32_t cur = *(volatile grub_uint32_t *) 0x20003004; - if (cur < last) - high++; - last = cur; - return grub_divmod64 ((((grub_uint64_t) high) << 32) | cur, 1000, 0); -} -#endif - -void -grub_machine_init (void) -{ - int ver; - - /* First of all - establish connection with U-Boot */ - ver = grub_uboot_api_init (); - if (!ver) - { - /* Don't even have a console to log errors to... */ - grub_exit (); - } - else if (ver > API_SIG_VERSION) - { - /* Try to print an error message */ - grub_uboot_puts ("invalid U-Boot API version\n"); - } - - /* Initialize the console so that GRUB can display messages. */ - grub_console_init_early (); - - /* Enumerate memory and initialize the memory management system. */ - grub_uboot_mm_init (); - - /* Should be earlier but it needs memalign. */ -#ifdef __arm__ - grub_arm_enable_caches_mmu (); -#endif - - grub_dprintf ("init", "__bss_start: %p\n", __bss_start); - grub_dprintf ("init", "_end: %p\n", _end); - grub_dprintf ("init", "grub_modbase: %p\n", (void *) grub_modbase); - grub_dprintf ("init", "grub_modules_get_end(): %p\n", - (void *) grub_modules_get_end ()); - - /* Initialise full terminfo support */ - grub_console_init_lately (); - - /* Enumerate uboot devices */ - grub_uboot_probe_hardware (); - - /* Initialise timer */ -#ifdef __arm__ - if (grub_uboot_get_machine_type () == GRUB_ARM_MACHINE_TYPE_RASPBERRY_PI) - { - grub_install_get_time_ms (rpi_timer_ms); - } - else -#endif - { - timer_start = grub_uboot_get_timer (0); - grub_install_get_time_ms (uboot_timer_ms); - } - - /* Initialize */ - grub_ubootdisk_init (); -} - - -void -grub_machine_fini (int flags __attribute__ ((unused))) -{ -} - -/* - * grub_machine_get_bootlocation(): - * Called from kern/main.c, which expects a device name (minus parentheses) - * and a filesystem path back, if any are known. - * Any returned values must be pointers to dynamically allocated strings. - */ -void -grub_machine_get_bootlocation (char **device, char **path) -{ - char *tmp; - - tmp = grub_uboot_env_get ("grub_bootdev"); - if (tmp) - { - *device = grub_strdup (tmp); - if (*device == NULL) - return; - } - else - *device = NULL; - - tmp = grub_uboot_env_get ("grub_bootpath"); - if (tmp) - { - *path = grub_strdup (tmp); - if (*path == NULL) - return; - } - else - *path = NULL; -} - -void -grub_uboot_fini (void) -{ - grub_ubootdisk_fini (); - grub_console_fini (); -} diff --git a/thirdparty/grub-2.04/grub-core/kern/uboot/uboot.c b/thirdparty/grub-2.04/grub-core/kern/uboot/uboot.c deleted file mode 100644 index be4816fe6..000000000 --- a/thirdparty/grub-2.04/grub-core/kern/uboot/uboot.c +++ /dev/null @@ -1,307 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2013 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include - -/* - * The main syscall entry point is not reentrant, only one call is - * serviced until finished. - * - * int syscall(int call, int *retval, ...) - * e.g. syscall(1, int *, u_int32_t, u_int32_t, u_int32_t, u_int32_t); - * - * call: syscall number - * - * retval: points to the return value placeholder, this is the place the - * syscall puts its return value, if NULL the caller does not - * expect a return value - * - * ... syscall arguments (variable number) - * - * returns: 0 if the call not found, 1 if serviced - */ - -extern int grub_uboot_syscall (int, int *, ...); - -static struct sys_info uboot_sys_info; -static struct mem_region uboot_mem_info[5]; -static struct device_info * devices; -static int num_devices; - - -/* - * All functions below are wrappers around the grub_uboot_syscall() function - */ - -int -grub_uboot_getc (void) -{ - int c; - if (!grub_uboot_syscall (API_GETC, NULL, &c)) - return -1; - - return c; -} - -int -grub_uboot_tstc (void) -{ - int c; - if (!grub_uboot_syscall (API_TSTC, NULL, &c)) - return -1; - - return c; -} - -void -grub_uboot_putc (int c) -{ - grub_uboot_syscall (API_PUTC, NULL, &c); -} - -void -grub_uboot_puts (const char *s) -{ - grub_uboot_syscall (API_PUTS, NULL, s); -} - -void -grub_uboot_reset (void) -{ - grub_uboot_syscall (API_RESET, NULL, 0); -} - -struct sys_info * -grub_uboot_get_sys_info (void) -{ - int retval; - - grub_memset (&uboot_sys_info, 0, sizeof (uboot_sys_info)); - grub_memset (&uboot_mem_info, 0, sizeof (uboot_mem_info)); - uboot_sys_info.mr = uboot_mem_info; - uboot_sys_info.mr_no = sizeof (uboot_mem_info) / sizeof (struct mem_region); - - if (grub_uboot_syscall (API_GET_SYS_INFO, &retval, &uboot_sys_info)) - if (retval == 0) - return &uboot_sys_info; - - return NULL; -} - -void -grub_uboot_udelay (grub_uint32_t usec) -{ - grub_uboot_syscall (API_UDELAY, NULL, &usec); -} - -grub_uint32_t -grub_uboot_get_timer (grub_uint32_t base) -{ - grub_uint32_t current; - - if (!grub_uboot_syscall (API_GET_TIMER, NULL, ¤t, &base)) - return 0; - - return current; -} - -int -grub_uboot_dev_enum (void) -{ - struct device_info * enum_devices; - int num_enum_devices, max_devices; - - if (num_devices) - return num_devices; - - max_devices = 2; - enum_devices = grub_malloc (sizeof(struct device_info) * max_devices); - if (!enum_devices) - return 0; - - /* - * The API_DEV_ENUM call starts a fresh enumeration when passed a - * struct device_info with a NULL cookie, and then depends on having - * the previously enumerated device cookie "seeded" into the target - * structure. - */ - - enum_devices[0].cookie = NULL; - num_enum_devices = 0; - - if (grub_uboot_syscall (API_DEV_ENUM, NULL, - &enum_devices[num_enum_devices]) == 0) - goto error; - - num_enum_devices++; - - while (enum_devices[num_enum_devices - 1].cookie != NULL) - { - if (num_enum_devices == max_devices) - { - struct device_info *tmp; - int new_max; - new_max = max_devices * 2; - tmp = grub_realloc (enum_devices, - sizeof (struct device_info) * new_max); - if (!tmp) - { - /* Failed to realloc, so return what we have */ - break; - } - enum_devices = tmp; - max_devices = new_max; - } - - enum_devices[num_enum_devices].cookie = - enum_devices[num_enum_devices - 1].cookie; - if (grub_uboot_syscall (API_DEV_ENUM, NULL, - &enum_devices[num_enum_devices]) == 0) - goto error; - - if (enum_devices[num_enum_devices].cookie == NULL) - break; - - num_enum_devices++; - } - - devices = enum_devices; - return num_devices = num_enum_devices; - - error: - grub_free (enum_devices); - return 0; -} - -#define VALID_DEV(x) (((x) < num_devices) && ((x) >= 0)) -#define OPEN_DEV(x) ((x->state == DEV_STA_OPEN)) - -struct device_info * -grub_uboot_dev_get (int index) -{ - if (VALID_DEV (index)) - return &devices[index]; - - return NULL; -} - - -int -grub_uboot_dev_open (struct device_info *dev) -{ - int retval; - - if (!grub_uboot_syscall (API_DEV_OPEN, &retval, dev)) - return -1; - - return retval; -} - -int -grub_uboot_dev_close (struct device_info *dev) -{ - int retval; - - if (!grub_uboot_syscall (API_DEV_CLOSE, &retval, dev)) - return -1; - - return retval; -} - - -int -grub_uboot_dev_read (struct device_info *dev, void *buf, grub_size_t blocks, - grub_uint32_t start, grub_size_t * real_blocks) -{ - int retval; - - if (!OPEN_DEV (dev)) - return -1; - - if (!grub_uboot_syscall (API_DEV_READ, &retval, dev, buf, - &blocks, &start, real_blocks)) - return -1; - - return retval; -} - -int -grub_uboot_dev_write (struct device_info *dev, const void *buf, - grub_size_t blocks, grub_uint32_t start) -{ - int retval; - - if (!OPEN_DEV (dev)) - return -1; - - if (!grub_uboot_syscall (API_DEV_WRITE, &retval, dev, buf, - &blocks, &start)) - return -1; - - return retval; -} - -int -grub_uboot_dev_recv (struct device_info *dev, void *buf, - int size, int *real_size) -{ - int retval; - - if (!OPEN_DEV (dev)) - return -1; - - if (!grub_uboot_syscall (API_DEV_READ, &retval, dev, buf, &size, real_size)) - return -1; - - return retval; - -} - -int -grub_uboot_dev_send (struct device_info *dev, void *buf, int size) -{ - int retval; - - if (!OPEN_DEV (dev)) - return -1; - - if (!grub_uboot_syscall (API_DEV_WRITE, &retval, dev, buf, &size)) - return -1; - - return retval; -} - -char * -grub_uboot_env_get (const char *name) -{ - char *value; - - if (!grub_uboot_syscall (API_ENV_GET, NULL, name, &value)) - return NULL; - - return value; -} - -void -grub_uboot_env_set (const char *name, const char *value) -{ - grub_uboot_syscall (API_ENV_SET, NULL, name, value); -} diff --git a/thirdparty/grub-2.04/grub-core/kern/vga_init.c b/thirdparty/grub-2.04/grub-core/kern/vga_init.c deleted file mode 100644 index 3fe2f16de..000000000 --- a/thirdparty/grub-2.04/grub-core/kern/vga_init.c +++ /dev/null @@ -1,128 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2010,2011 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#ifndef __mips__ -#include -#include -#endif -#include -#include -#include - -static struct {grub_uint8_t r, g, b, a; } colors[] = - { - // {R, G, B, A} - {0x00, 0x00, 0x00, 0xFF}, // 0 = black - {0x00, 0x00, 0xA8, 0xFF}, // 1 = blue - {0x00, 0xA8, 0x00, 0xFF}, // 2 = green - {0x00, 0xA8, 0xA8, 0xFF}, // 3 = cyan - {0xA8, 0x00, 0x00, 0xFF}, // 4 = red - {0xA8, 0x00, 0xA8, 0xFF}, // 5 = magenta - {0xA8, 0x54, 0x00, 0xFF}, // 6 = brown - {0xA8, 0xA8, 0xA8, 0xFF}, // 7 = light gray - - {0x54, 0x54, 0x54, 0xFF}, // 8 = dark gray - {0x54, 0x54, 0xFE, 0xFF}, // 9 = bright blue - {0x54, 0xFE, 0x54, 0xFF}, // 10 = bright green - {0x54, 0xFE, 0xFE, 0xFF}, // 11 = bright cyan - {0xFE, 0x54, 0x54, 0xFF}, // 12 = bright red - {0xFE, 0x54, 0xFE, 0xFF}, // 13 = bright magenta - {0xFE, 0xFE, 0x54, 0xFF}, // 14 = yellow - {0xFE, 0xFE, 0xFE, 0xFF} // 15 = white - }; - -#include - -#ifdef __mips__ -#define VGA_ADDR 0xb00a0000 -#else -#define VGA_ADDR 0xa0000 -#endif - -static void -load_font (void) -{ - unsigned i; - - grub_vga_gr_write (0 << 2, GRUB_VGA_GR_GR6); - - grub_vga_sr_write (GRUB_VGA_SR_MEMORY_MODE_NORMAL, GRUB_VGA_SR_MEMORY_MODE); - grub_vga_sr_write (1 << GRUB_VGA_TEXT_FONT_PLANE, - GRUB_VGA_SR_MAP_MASK_REGISTER); - - grub_vga_gr_write (0, GRUB_VGA_GR_DATA_ROTATE); - grub_vga_gr_write (0, GRUB_VGA_GR_MODE); - grub_vga_gr_write (0xff, GRUB_VGA_GR_BITMASK); - - for (i = 0; i < 128; i++) - grub_memcpy ((void *) (VGA_ADDR + 32 * i), ascii_bitmaps + 16 * i, 16); -} - -static void -load_palette (void) -{ - unsigned i; - for (i = 0; i < 16; i++) - grub_vga_write_arx (i, i); - - for (i = 0; i < ARRAY_SIZE (colors); i++) - grub_vga_palette_write (i, colors[i].r, colors[i].g, colors[i].b); -} - -void -grub_qemu_init_cirrus (void) -{ - grub_outb (GRUB_VGA_IO_MISC_COLOR, - GRUB_MACHINE_PCI_IO_BASE + GRUB_VGA_IO_MISC_WRITE); - - load_font (); - - grub_vga_gr_write (GRUB_VGA_GR_GR6_MMAP_CGA, GRUB_VGA_GR_GR6); - grub_vga_gr_write (GRUB_VGA_GR_MODE_ODD_EVEN, GRUB_VGA_GR_MODE); - - grub_vga_sr_write (GRUB_VGA_SR_MEMORY_MODE_NORMAL, GRUB_VGA_SR_MEMORY_MODE); - - grub_vga_sr_write ((1 << GRUB_VGA_TEXT_TEXT_PLANE) - | (1 << GRUB_VGA_TEXT_ATTR_PLANE), - GRUB_VGA_SR_MAP_MASK_REGISTER); - - grub_vga_cr_write (15, GRUB_VGA_CR_CELL_HEIGHT); - grub_vga_cr_write (79, GRUB_VGA_CR_HORIZ_END); - grub_vga_cr_write (40, GRUB_VGA_CR_PITCH); - - int vert = 25 * 16; - grub_vga_cr_write (vert & 0xff, GRUB_VGA_CR_VDISPLAY_END); - grub_vga_cr_write (((vert >> GRUB_VGA_CR_OVERFLOW_HEIGHT1_SHIFT) - & GRUB_VGA_CR_OVERFLOW_HEIGHT1_MASK) - | ((vert >> GRUB_VGA_CR_OVERFLOW_HEIGHT2_SHIFT) - & GRUB_VGA_CR_OVERFLOW_HEIGHT2_MASK), - GRUB_VGA_CR_OVERFLOW); - - load_palette (); - - grub_vga_write_arx (GRUB_VGA_ARX_MODE_TEXT, GRUB_VGA_ARX_MODE); - grub_vga_write_arx (0, GRUB_VGA_ARX_COLOR_SELECT); - - grub_vga_sr_write (GRUB_VGA_SR_CLOCKING_MODE_8_DOT_CLOCK, - GRUB_VGA_SR_CLOCKING_MODE); - - grub_vga_cr_write (14, GRUB_VGA_CR_CURSOR_START); - grub_vga_cr_write (15, GRUB_VGA_CR_CURSOR_END); - - grub_outb (0x20, GRUB_MACHINE_PCI_IO_BASE + GRUB_VGA_IO_ARX); -} diff --git a/thirdparty/grub-2.04/grub-core/kern/x86_64/dl.c b/thirdparty/grub-2.04/grub-core/kern/x86_64/dl.c deleted file mode 100644 index 3a73e6e6c..000000000 --- a/thirdparty/grub-2.04/grub-core/kern/x86_64/dl.c +++ /dev/null @@ -1,116 +0,0 @@ -/* dl-x86_64.c - arch-dependent part of loadable module support */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2002,2005,2007,2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include - -/* Check if EHDR is a valid ELF header. */ -grub_err_t -grub_arch_dl_check_header (void *ehdr) -{ - Elf64_Ehdr *e = ehdr; - - /* Check the magic numbers. */ - if (e->e_ident[EI_CLASS] != ELFCLASS64 - || e->e_ident[EI_DATA] != ELFDATA2LSB - || e->e_machine != EM_X86_64) - return grub_error (GRUB_ERR_BAD_OS, N_("invalid arch-dependent ELF magic")); - - return GRUB_ERR_NONE; -} - -/* Relocate symbols. */ -grub_err_t -grub_arch_dl_relocate_symbols (grub_dl_t mod, void *ehdr, - Elf_Shdr *s, grub_dl_segment_t seg) -{ - Elf64_Rela *rel, *max; - - for (rel = (Elf64_Rela *) ((char *) ehdr + s->sh_offset), - max = (Elf64_Rela *) ((char *) rel + s->sh_size); - rel < max; - rel = (Elf64_Rela *) ((char *) rel + s->sh_entsize)) - { - Elf64_Word *addr32; - Elf64_Xword *addr64; - Elf64_Sym *sym; - - if (seg->size < rel->r_offset) - return grub_error (GRUB_ERR_BAD_MODULE, - "reloc offset is out of the segment"); - - addr32 = (Elf64_Word *) ((char *) seg->addr + rel->r_offset); - addr64 = (Elf64_Xword *) addr32; - sym = (Elf64_Sym *) ((char *) mod->symtab - + mod->symsize * ELF_R_SYM (rel->r_info)); - - switch (ELF_R_TYPE (rel->r_info)) - { - case R_X86_64_64: - *addr64 += rel->r_addend + sym->st_value; - break; - - case R_X86_64_PC32: - case R_X86_64_PLT32: - { - grub_int64_t value; - value = ((grub_int32_t) *addr32) + rel->r_addend + sym->st_value - - (Elf64_Xword) (grub_addr_t) seg->addr - rel->r_offset; - if (value != (grub_int32_t) value) - return grub_error (GRUB_ERR_BAD_MODULE, "relocation out of range"); - *addr32 = value; - } - break; - - case R_X86_64_PC64: - { - *addr64 += rel->r_addend + sym->st_value - - (Elf64_Xword) (grub_addr_t) seg->addr - rel->r_offset; - } - break; - - case R_X86_64_32: - { - grub_uint64_t value = *addr32 + rel->r_addend + sym->st_value; - if (value != (grub_uint32_t) value) - return grub_error (GRUB_ERR_BAD_MODULE, "relocation out of range"); - *addr32 = value; - } - break; - case R_X86_64_32S: - { - grub_int64_t value = ((grub_int32_t) *addr32) + rel->r_addend + sym->st_value; - if (value != (grub_int32_t) value) - return grub_error (GRUB_ERR_BAD_MODULE, "relocation out of range"); - *addr32 = value; - } - break; - - default: - return grub_error (GRUB_ERR_NOT_IMPLEMENTED_YET, - N_("relocation 0x%x is not implemented yet"), - ELF_R_TYPE (rel->r_info)); - } - } - - return GRUB_ERR_NONE; -} diff --git a/thirdparty/grub-2.04/grub-core/kern/x86_64/efi/callwrap.S b/thirdparty/grub-2.04/grub-core/kern/x86_64/efi/callwrap.S deleted file mode 100644 index 1337fd9fc..000000000 --- a/thirdparty/grub-2.04/grub-core/kern/x86_64/efi/callwrap.S +++ /dev/null @@ -1,129 +0,0 @@ -/* callwrap.S - wrapper for x86_64 efi calls */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2006,2007,2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include - -/* - * x86_64 uses registry to pass parameters. Unfortunately, gcc and efi use - * different call conversion, so we need to do some conversion. - * - * gcc: - * %rdi, %rsi, %rdx, %rcx, %r8, %r9, 8(%rsp), 16(%rsp), ... - * - * efi: - * %rcx, %rdx, %r8, %r9, 32(%rsp), 40(%rsp), 48(%rsp), ... - * - */ - - .file "callwrap.S" - .text - -FUNCTION(efi_wrap_0) - subq $40, %rsp - call *%rdi - addq $40, %rsp - ret - -FUNCTION(efi_wrap_1) - subq $40, %rsp - mov %rsi, %rcx - call *%rdi - addq $40, %rsp - ret - -FUNCTION(efi_wrap_2) - subq $40, %rsp - mov %rsi, %rcx - call *%rdi - addq $40, %rsp - ret - -FUNCTION(efi_wrap_3) - subq $40, %rsp - mov %rcx, %r8 - mov %rsi, %rcx - call *%rdi - addq $40, %rsp - ret - -FUNCTION(efi_wrap_4) - subq $40, %rsp - mov %r8, %r9 - mov %rcx, %r8 - mov %rsi, %rcx - call *%rdi - addq $40, %rsp - ret - -FUNCTION(efi_wrap_5) - subq $40, %rsp - mov %r9, 32(%rsp) - mov %r8, %r9 - mov %rcx, %r8 - mov %rsi, %rcx - call *%rdi - addq $40, %rsp - ret - -FUNCTION(efi_wrap_6) - subq $56, %rsp - mov 56+8(%rsp), %rax - mov %rax, 40(%rsp) - mov %r9, 32(%rsp) - mov %r8, %r9 - mov %rcx, %r8 - mov %rsi, %rcx - call *%rdi - addq $56, %rsp - ret - -FUNCTION(efi_wrap_7) - subq $88, %rsp - mov 88+16(%rsp), %rax - mov %rax, 48(%rsp) - mov 88+8(%rsp), %rax - mov %rax, 40(%rsp) - mov %r9, 32(%rsp) - mov %r8, %r9 - mov %rcx, %r8 - mov %rsi, %rcx - call *%rdi - addq $88, %rsp - ret - -FUNCTION(efi_wrap_10) - subq $88, %rsp - mov 88+40(%rsp), %rax - mov %rax, 72(%rsp) - mov 88+32(%rsp), %rax - mov %rax, 64(%rsp) - mov 88+24(%rsp), %rax - mov %rax, 56(%rsp) - mov 88+16(%rsp), %rax - mov %rax, 48(%rsp) - mov 88+8(%rsp), %rax - mov %rax, 40(%rsp) - mov %r9, 32(%rsp) - mov %r8, %r9 - mov %rcx, %r8 - mov %rsi, %rcx - call *%rdi - addq $88, %rsp - ret diff --git a/thirdparty/grub-2.04/grub-core/kern/x86_64/efi/startup.S b/thirdparty/grub-2.04/grub-core/kern/x86_64/efi/startup.S deleted file mode 100644 index 9357e5c5d..000000000 --- a/thirdparty/grub-2.04/grub-core/kern/x86_64/efi/startup.S +++ /dev/null @@ -1,35 +0,0 @@ -/* startup.S - bootstrap GRUB itself */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2006,2007,2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include - - .file "startup.S" - .text - .globl start, _start - .code64 - -start: -_start: - movq %rcx, EXT_C(grub_efi_image_handle)(%rip) - movq %rdx, EXT_C(grub_efi_system_table)(%rip) - - andq $~0xf, %rsp - call EXT_C(grub_main) - /* Doesn't return. */ diff --git a/thirdparty/grub-2.04/grub-core/kern/x86_64/xen/hypercall.S b/thirdparty/grub-2.04/grub-core/kern/x86_64/xen/hypercall.S deleted file mode 100644 index 9b04db6a0..000000000 --- a/thirdparty/grub-2.04/grub-core/kern/x86_64/xen/hypercall.S +++ /dev/null @@ -1,53 +0,0 @@ -/* hypercall.S - wrappers for Xen hypercalls */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2011 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include - -FUNCTION(grub_xen_sched_op) - movq $__HYPERVISOR_sched_op, %rax - syscall - ret - -FUNCTION(grub_xen_event_channel_op) - movq $__HYPERVISOR_event_channel_op, %rax - syscall - ret - -FUNCTION(grub_xen_update_va_mapping) - movq $__HYPERVISOR_update_va_mapping, %rax - syscall - ret - -FUNCTION(grub_xen_mmuext_op) - movq %rcx, %r10 - movq $__HYPERVISOR_mmuext_op, %rax - syscall - ret - -FUNCTION(grub_xen_grant_table_op) - movq $__HYPERVISOR_grant_table_op, %rax - syscall - ret - -FUNCTION(grub_xen_mmu_update) - movq %rcx, %r10 - movq $__HYPERVISOR_mmu_update, %rax - syscall - ret diff --git a/thirdparty/grub-2.04/grub-core/kern/x86_64/xen/startup.S b/thirdparty/grub-2.04/grub-core/kern/x86_64/xen/startup.S deleted file mode 100644 index 21a139f40..000000000 --- a/thirdparty/grub-2.04/grub-core/kern/x86_64/xen/startup.S +++ /dev/null @@ -1,39 +0,0 @@ -/* startup.S - bootstrap GRUB itself */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2013 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include - - .file "startup.S" - .text - .globl start, _start - .code64 - -start: -_start: - leaq LOCAL(stack_end), %rsp - movq %rsi, EXT_C(grub_xen_start_page_addr)(%rip) - - andq $~0xf, %rsp - call EXT_C(grub_main) - /* Doesn't return. */ - - .bss - .space (1 << 22) -LOCAL(stack_end): diff --git a/thirdparty/grub-2.04/grub-core/kern/xen/init.c b/thirdparty/grub-2.04/grub-core/kern/xen/init.c deleted file mode 100644 index 782ca7295..000000000 --- a/thirdparty/grub-2.04/grub-core/kern/xen/init.c +++ /dev/null @@ -1,601 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2011 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -grub_addr_t grub_modbase; -struct start_info *grub_xen_start_page_addr; -volatile struct xencons_interface *grub_xen_xcons; -volatile struct shared_info *grub_xen_shared_info; -volatile struct xenstore_domain_interface *grub_xen_xenstore; -volatile grant_entry_v1_t *grub_xen_grant_table; -static const grub_size_t total_grants = - GRUB_XEN_PAGE_SIZE / sizeof (grub_xen_grant_table[0]); -grub_size_t grub_xen_n_allocated_shared_pages; - -static grub_xen_mfn_t -grub_xen_ptr2mfn (void *ptr) -{ -#ifdef GRUB_MACHINE_XEN - grub_xen_mfn_t *mfn_list = - (grub_xen_mfn_t *) grub_xen_start_page_addr->mfn_list; - return mfn_list[(grub_addr_t) ptr >> GRUB_XEN_LOG_PAGE_SIZE]; -#else - return (grub_addr_t) ptr >> GRUB_XEN_LOG_PAGE_SIZE; -#endif -} - -void * -grub_xen_alloc_shared_page (domid_t dom, grub_xen_grant_t * grnum) -{ - void *ret; - grub_xen_mfn_t mfn; - volatile grant_entry_v1_t *entry; - - /* Avoid 0. */ - for (entry = grub_xen_grant_table; - entry < grub_xen_grant_table + total_grants; entry++) - if (!entry->flags) - break; - - if (entry == grub_xen_grant_table + total_grants) - { - grub_error (GRUB_ERR_OUT_OF_MEMORY, "out of grant entries"); - return NULL; - } - ret = grub_memalign (GRUB_XEN_PAGE_SIZE, GRUB_XEN_PAGE_SIZE); - if (!ret) - return NULL; - mfn = grub_xen_ptr2mfn (ret); - entry->frame = mfn; - entry->domid = dom; - mb (); - entry->flags = GTF_permit_access; - mb (); - *grnum = entry - grub_xen_grant_table; - grub_xen_n_allocated_shared_pages++; - return ret; -} - -void -grub_xen_free_shared_page (void *ptr) -{ - grub_xen_mfn_t mfn; - volatile grant_entry_v1_t *entry; - - mfn = grub_xen_ptr2mfn (ptr); - for (entry = grub_xen_grant_table + 1; - entry < grub_xen_grant_table + total_grants; entry++) - if (entry->flags && entry->frame == mfn) - { - mb (); - entry->flags = 0; - mb (); - entry->frame = 0; - mb (); - } - grub_xen_n_allocated_shared_pages--; -} - -void -grub_machine_get_bootlocation (char **device __attribute__ ((unused)), - char **path __attribute__ ((unused))) -{ -} - -void -grub_xen_store_send (const void *buf_, grub_size_t len) -{ - const grub_uint8_t *buf = buf_; - struct evtchn_send send; - int event_sent = 0; - while (len) - { - grub_size_t avail, inbuf; - grub_size_t prod, cons; - mb (); - prod = grub_xen_xenstore->req_prod; - cons = grub_xen_xenstore->req_cons; - if (prod >= cons + sizeof (grub_xen_xenstore->req)) - { - if (!event_sent) - { - send.port = grub_xen_start_page_addr->store_evtchn; - grub_xen_event_channel_op (EVTCHNOP_send, &send); - event_sent = 1; - } - grub_xen_sched_op (SCHEDOP_yield, 0); - continue; - } - event_sent = 0; - avail = cons + sizeof (grub_xen_xenstore->req) - prod; - inbuf = (~prod & (sizeof (grub_xen_xenstore->req) - 1)) + 1; - if (avail > inbuf) - avail = inbuf; - if (avail > len) - avail = len; - grub_memcpy ((void *) &grub_xen_xenstore->req[prod & (sizeof (grub_xen_xenstore->req) - 1)], - buf, avail); - buf += avail; - len -= avail; - mb (); - grub_xen_xenstore->req_prod += avail; - mb (); - if (!event_sent) - { - send.port = grub_xen_start_page_addr->store_evtchn; - grub_xen_event_channel_op (EVTCHNOP_send, &send); - event_sent = 1; - } - grub_xen_sched_op (SCHEDOP_yield, 0); - } -} - -void -grub_xen_store_recv (void *buf_, grub_size_t len) -{ - grub_uint8_t *buf = buf_; - struct evtchn_send send; - int event_sent = 0; - while (len) - { - grub_size_t avail, inbuf; - grub_size_t prod, cons; - mb (); - prod = grub_xen_xenstore->rsp_prod; - cons = grub_xen_xenstore->rsp_cons; - if (prod <= cons) - { - if (!event_sent) - { - send.port = grub_xen_start_page_addr->store_evtchn; - grub_xen_event_channel_op (EVTCHNOP_send, &send); - event_sent = 1; - } - grub_xen_sched_op (SCHEDOP_yield, 0); - continue; - } - event_sent = 0; - avail = prod - cons; - inbuf = (~cons & (sizeof (grub_xen_xenstore->req) - 1)) + 1; - if (avail > inbuf) - avail = inbuf; - if (avail > len) - avail = len; - grub_memcpy (buf, - (void *) &grub_xen_xenstore->rsp[cons & (sizeof (grub_xen_xenstore->rsp) - 1)], - avail); - buf += avail; - len -= avail; - mb (); - grub_xen_xenstore->rsp_cons += avail; - mb (); - if (!event_sent) - { - send.port = grub_xen_start_page_addr->store_evtchn; - grub_xen_event_channel_op(EVTCHNOP_send, &send); - event_sent = 1; - } - grub_xen_sched_op(SCHEDOP_yield, 0); - } -} - -void * -grub_xenstore_get_file (const char *dir, grub_size_t *len) -{ - struct xsd_sockmsg msg; - char *buf; - grub_size_t dirlen = grub_strlen (dir) + 1; - - if (len) - *len = 0; - - grub_memset (&msg, 0, sizeof (msg)); - msg.type = XS_READ; - msg.len = dirlen; - grub_xen_store_send (&msg, sizeof (msg)); - grub_xen_store_send (dir, dirlen); - grub_xen_store_recv (&msg, sizeof (msg)); - buf = grub_malloc (msg.len + 1); - if (!buf) - return NULL; - grub_dprintf ("xen", "msg type = %d, len = %d\n", msg.type, msg.len); - grub_xen_store_recv (buf, msg.len); - buf[msg.len] = '\0'; - if (msg.type == XS_ERROR) - { - grub_error (GRUB_ERR_IO, "couldn't read xenstorage `%s': %s", dir, buf); - grub_free (buf); - return NULL; - } - if (len) - *len = msg.len; - return buf; -} - -grub_err_t -grub_xenstore_write_file (const char *dir, const void *buf, grub_size_t len) -{ - struct xsd_sockmsg msg; - grub_size_t dirlen = grub_strlen (dir) + 1; - char *resp; - - grub_memset (&msg, 0, sizeof (msg)); - msg.type = XS_WRITE; - msg.len = dirlen + len; - grub_xen_store_send (&msg, sizeof (msg)); - grub_xen_store_send (dir, dirlen); - grub_xen_store_send (buf, len); - grub_xen_store_recv (&msg, sizeof (msg)); - resp = grub_malloc (msg.len + 1); - if (!resp) - return grub_errno; - grub_dprintf ("xen", "msg type = %d, len = %d\n", msg.type, msg.len); - grub_xen_store_recv (resp, msg.len); - resp[msg.len] = '\0'; - if (msg.type == XS_ERROR) - { - grub_dprintf ("xen", "error = %s\n", resp); - grub_error (GRUB_ERR_IO, "couldn't read xenstorage `%s': %s", - dir, resp); - grub_free (resp); - return grub_errno; - } - grub_free (resp); - return GRUB_ERR_NONE; -} - -/* FIXME: error handling. */ -grub_err_t -grub_xenstore_dir (const char *dir, - int (*hook) (const char *dir, void *hook_data), - void *hook_data) -{ - struct xsd_sockmsg msg; - char *buf; - char *ptr; - grub_size_t dirlen = grub_strlen (dir) + 1; - - grub_memset (&msg, 0, sizeof (msg)); - msg.type = XS_DIRECTORY; - msg.len = dirlen; - grub_xen_store_send (&msg, sizeof (msg)); - grub_xen_store_send (dir, dirlen); - grub_xen_store_recv (&msg, sizeof (msg)); - buf = grub_malloc (msg.len + 1); - if (!buf) - return grub_errno; - grub_dprintf ("xen", "msg type = %d, len = %d\n", msg.type, msg.len); - grub_xen_store_recv (buf, msg.len); - buf[msg.len] = '\0'; - if (msg.type == XS_ERROR) - { - grub_err_t err; - err = grub_error (GRUB_ERR_IO, "couldn't read xenstorage `%s': %s", - dir, buf); - grub_free (buf); - return err; - } - for (ptr = buf; ptr < buf + msg.len; ptr += grub_strlen (ptr) + 1) - if (hook (ptr, hook_data)) - break; - grub_free (buf); - return grub_errno; -} - -unsigned long gntframe = 0; - -static void -grub_xen_setup_gnttab (void) -{ - struct gnttab_set_version gnttab_setver; - struct gnttab_setup_table gnttab_setup; - - grub_memset (&gnttab_setver, 0, sizeof (gnttab_setver)); - - gnttab_setver.version = 1; - grub_xen_grant_table_op (GNTTABOP_set_version, &gnttab_setver, 1); - - grub_memset (&gnttab_setup, 0, sizeof (gnttab_setup)); - gnttab_setup.dom = DOMID_SELF; - gnttab_setup.nr_frames = 1; - gnttab_setup.frame_list.p = &gntframe; - - grub_xen_grant_table_op (GNTTABOP_setup_table, &gnttab_setup, 1); -} - -#ifdef GRUB_MACHINE_XEN -static grub_uint8_t window[GRUB_XEN_PAGE_SIZE] - __attribute__ ((aligned (GRUB_XEN_PAGE_SIZE))); - -#ifdef __x86_64__ -#define NUMBER_OF_LEVELS 4 -#else -#define NUMBER_OF_LEVELS 3 -#endif - -#define LOG_POINTERS_PER_PAGE 9 -#define POINTERS_PER_PAGE (1 << LOG_POINTERS_PER_PAGE) - -#define MAX_N_UNUSABLE_PAGES 4 - -static int -grub_xen_is_page_usable (grub_xen_mfn_t mfn) -{ - if (mfn == grub_xen_start_page_addr->console.domU.mfn) - return 0; - if (mfn == grub_xen_start_page_addr->shared_info) - return 0; - if (mfn == grub_xen_start_page_addr->store_mfn) - return 0; - if (mfn == gntframe) - return 0; - return 1; -} - -static grub_uint64_t -page2offset (grub_uint64_t page) -{ - return page << 12; -} - -#if defined (__x86_64__) && defined (__code_model_large__) -#define MAX_TOTAL_PAGES (1LL << (64 - 12)) -#elif defined (__x86_64__) -#define MAX_TOTAL_PAGES (1LL << (31 - 12)) -#else -#define MAX_TOTAL_PAGES (1LL << (32 - 12)) -#endif - -static void -map_all_pages (void) -{ - grub_uint64_t total_pages = grub_xen_start_page_addr->nr_pages; - grub_uint64_t i, j; - grub_xen_mfn_t *mfn_list = - (grub_xen_mfn_t *) grub_xen_start_page_addr->mfn_list; - grub_uint64_t *pg = (grub_uint64_t *) window; - grub_uint64_t oldpgstart, oldpgend; - grub_size_t n_unusable_pages = 0; - struct mmu_update m2p_updates[2 * MAX_N_UNUSABLE_PAGES]; - - if (total_pages > MAX_TOTAL_PAGES - 4) - total_pages = MAX_TOTAL_PAGES - 4; - - for (j = 0; j < total_pages - n_unusable_pages; j++) - while (!grub_xen_is_page_usable (mfn_list[j])) - { - grub_xen_mfn_t t; - if (n_unusable_pages >= MAX_N_UNUSABLE_PAGES) - { - struct sched_shutdown arg; - arg.reason = SHUTDOWN_crash; - grub_xen_sched_op (SCHEDOP_shutdown, &arg); - while (1); - } - t = mfn_list[j]; - mfn_list[j] = mfn_list[total_pages - n_unusable_pages - 1]; - mfn_list[total_pages - n_unusable_pages - 1] = t; - - m2p_updates[2 * n_unusable_pages].ptr - = page2offset (mfn_list[j]) | MMU_MACHPHYS_UPDATE; - m2p_updates[2 * n_unusable_pages].val = j; - m2p_updates[2 * n_unusable_pages + 1].ptr - = page2offset (mfn_list[total_pages - n_unusable_pages - 1]) - | MMU_MACHPHYS_UPDATE; - m2p_updates[2 * n_unusable_pages + 1].val = total_pages - - n_unusable_pages - 1; - - n_unusable_pages++; - } - - grub_xen_mmu_update (m2p_updates, 2 * n_unusable_pages, NULL, DOMID_SELF); - - total_pages += 4; - - grub_uint64_t lx[NUMBER_OF_LEVELS], nlx; - grub_uint64_t paging_start = total_pages - 4 - n_unusable_pages, curpage; - - for (nlx = total_pages, i = 0; i < (unsigned) NUMBER_OF_LEVELS; i++) - { - nlx = (nlx + POINTERS_PER_PAGE - 1) >> LOG_POINTERS_PER_PAGE; - /* PAE wants all 4 root directories present. */ -#ifdef __i386__ - if (i == 1) - nlx = 4; -#endif - lx[i] = nlx; - paging_start -= nlx; - } - - oldpgstart = grub_xen_start_page_addr->pt_base >> 12; - oldpgend = oldpgstart + grub_xen_start_page_addr->nr_pt_frames; - - curpage = paging_start; - - int l; - - for (l = NUMBER_OF_LEVELS - 1; l >= 1; l--) - { - for (i = 0; i < lx[l]; i++) - { - grub_xen_update_va_mapping (&window, - page2offset (mfn_list[curpage + i]) | 7, - UVMF_INVLPG); - grub_memset (&window, 0, sizeof (window)); - - for (j = i * POINTERS_PER_PAGE; - j < (i + 1) * POINTERS_PER_PAGE && j < lx[l - 1]; j++) - pg[j - i * POINTERS_PER_PAGE] = - page2offset (mfn_list[curpage + lx[l] + j]) -#ifdef __x86_64__ - | 4 -#endif - | 3; - } - curpage += lx[l]; - } - - for (i = 0; i < lx[0]; i++) - { - grub_xen_update_va_mapping (&window, - page2offset (mfn_list[curpage + i]) | 7, - UVMF_INVLPG); - grub_memset (&window, 0, sizeof (window)); - - for (j = i * POINTERS_PER_PAGE; - j < (i + 1) * POINTERS_PER_PAGE && j < total_pages; j++) - if (j < paging_start && !(j >= oldpgstart && j < oldpgend)) - pg[j - i * POINTERS_PER_PAGE] = page2offset (mfn_list[j]) | 0x7; - else if (j < grub_xen_start_page_addr->nr_pages) - pg[j - i * POINTERS_PER_PAGE] = page2offset (mfn_list[j]) | 5; - else if (j == grub_xen_start_page_addr->nr_pages) - { - pg[j - i * POINTERS_PER_PAGE] = - page2offset (grub_xen_start_page_addr->console.domU.mfn) | 7; - grub_xen_xcons = (void *) (grub_addr_t) page2offset (j); - } - else if (j == grub_xen_start_page_addr->nr_pages + 1) - { - pg[j - i * POINTERS_PER_PAGE] = - grub_xen_start_page_addr->shared_info | 7; - grub_xen_shared_info = (void *) (grub_addr_t) page2offset (j); - } - else if (j == grub_xen_start_page_addr->nr_pages + 2) - { - pg[j - i * POINTERS_PER_PAGE] = - page2offset (grub_xen_start_page_addr->store_mfn) | 7; - grub_xen_xenstore = (void *) (grub_addr_t) page2offset (j); - } - else if (j == grub_xen_start_page_addr->nr_pages + 3) - { - pg[j - i * POINTERS_PER_PAGE] = page2offset (gntframe) | 7; - grub_xen_grant_table = (void *) (grub_addr_t) page2offset (j); - } - } - - grub_xen_update_va_mapping (&window, 0, UVMF_INVLPG); - - mmuext_op_t op[3]; - - op[0].cmd = MMUEXT_PIN_L1_TABLE + (NUMBER_OF_LEVELS - 1); - op[0].arg1.mfn = mfn_list[paging_start]; - op[1].cmd = MMUEXT_NEW_BASEPTR; - op[1].arg1.mfn = mfn_list[paging_start]; - op[2].cmd = MMUEXT_UNPIN_TABLE; - op[2].arg1.mfn = mfn_list[oldpgstart]; - - grub_xen_mmuext_op (op, 3, NULL, DOMID_SELF); - - for (i = oldpgstart; i < oldpgend; i++) - grub_xen_update_va_mapping ((void *) (grub_addr_t) page2offset (i), - page2offset (mfn_list[i]) | 7, UVMF_INVLPG); - void *new_start_page, *new_mfn_list; - new_start_page = (void *) (grub_addr_t) page2offset (paging_start - 1); - grub_memcpy (new_start_page, grub_xen_start_page_addr, 4096); - grub_xen_start_page_addr = new_start_page; - new_mfn_list = (void *) (grub_addr_t) - page2offset (paging_start - 1 - - ((grub_xen_start_page_addr->nr_pages - * sizeof (grub_uint64_t) + 4095) / 4096)); - grub_memcpy (new_mfn_list, mfn_list, grub_xen_start_page_addr->nr_pages - * sizeof (grub_uint64_t)); - grub_xen_start_page_addr->pt_base = page2offset (paging_start); - grub_xen_start_page_addr->mfn_list = (grub_addr_t) new_mfn_list; - - grub_addr_t heap_start = grub_modules_get_end (); - grub_addr_t heap_end = (grub_addr_t) new_mfn_list; - - grub_mm_init_region ((void *) heap_start, heap_end - heap_start); -} - -grub_err_t -grub_machine_mmap_iterate (grub_memory_hook_t hook, void *hook_data) -{ - grub_uint64_t total_pages = grub_xen_start_page_addr->nr_pages; - grub_uint64_t usable_pages = grub_xen_start_page_addr->pt_base >> 12; - if (hook (0, page2offset (usable_pages), GRUB_MEMORY_AVAILABLE, hook_data)) - return GRUB_ERR_NONE; - - hook (page2offset (usable_pages), page2offset (total_pages - usable_pages), - GRUB_MEMORY_RESERVED, hook_data); - - return GRUB_ERR_NONE; -} -#endif - -extern char _end[]; - -void -grub_machine_init (void) -{ -#ifdef GRUB_MACHINE_XEN -#ifdef __i386__ - grub_xen_vm_assist (VMASST_CMD_enable, VMASST_TYPE_pae_extended_cr3); -#endif -#endif - - grub_modbase = ALIGN_UP ((grub_addr_t) _end - + GRUB_KERNEL_MACHINE_MOD_GAP, - GRUB_KERNEL_MACHINE_MOD_ALIGN); - -#ifdef GRUB_MACHINE_XEN_PVH - grub_xen_setup_pvh (); -#endif - - grub_xen_setup_gnttab (); - -#ifdef GRUB_MACHINE_XEN - map_all_pages (); -#endif - - grub_console_init (); - - grub_tsc_init (); - - grub_xendisk_init (); - - grub_boot_init (); -} - -void -grub_exit (void) -{ - struct sched_shutdown arg; - - arg.reason = SHUTDOWN_poweroff; - grub_xen_sched_op (SCHEDOP_shutdown, &arg); - while (1); -} - -void -grub_machine_fini (int flags __attribute__ ((unused))) -{ - grub_xendisk_fini (); - grub_boot_fini (); -} diff --git a/thirdparty/grub-2.04/grub-core/lib/LzFind.c b/thirdparty/grub-2.04/grub-core/lib/LzFind.c deleted file mode 100644 index dcb20d921..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/LzFind.c +++ /dev/null @@ -1,777 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (c) 1999-2008 Igor Pavlov - * Copyright (C) 2008 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -/* - * This code was taken from LZMA SDK 4.58 beta, and was slightly modified - * to adapt it to GRUB's requirement. - * - * See , for more information about LZMA. - */ - - -#include - -#include - -#include -#include - -#define kEmptyHashValue 0 -#define kMaxValForNormalize ((UInt32)0xFFFFFFFF) -#define kNormalizeStepMin (1 << 10) /* it must be power of 2 */ -#define kNormalizeMask (~(kNormalizeStepMin - 1)) -#define kMaxHistorySize ((UInt32)3 << 30) - -#define kStartMaxLen 3 - -static void LzInWindow_Free(CMatchFinder *p, ISzAlloc *alloc) -{ - if (!p->directInput) - { - alloc->Free(alloc, p->bufferBase); - p->bufferBase = 0; - } -} - -/* keepSizeBefore + keepSizeAfter + keepSizeReserv must be < 4G) */ - -static int LzInWindow_Create(CMatchFinder *p, UInt32 keepSizeReserv, ISzAlloc *alloc) -{ - UInt32 blockSize = p->keepSizeBefore + p->keepSizeAfter + keepSizeReserv; - if (p->directInput) - { - p->blockSize = blockSize; - return 1; - } - if (p->bufferBase == 0 || p->blockSize != blockSize) - { - LzInWindow_Free(p, alloc); - p->blockSize = blockSize; - p->bufferBase = (Byte *)alloc->Alloc(alloc, (size_t)blockSize); - } - return (p->bufferBase != 0); -} - -Byte *MatchFinder_GetPointerToCurrentPos(CMatchFinder *p) { return p->buffer; } -static Byte MatchFinder_GetIndexByte(CMatchFinder *p, Int32 curindex) { return p->buffer[curindex]; } - -static UInt32 MatchFinder_GetNumAvailableBytes(CMatchFinder *p) { return p->streamPos - p->pos; } - -void MatchFinder_ReduceOffsets(CMatchFinder *p, UInt32 subValue) -{ - p->posLimit -= subValue; - p->pos -= subValue; - p->streamPos -= subValue; -} - -static void MatchFinder_ReadBlock(CMatchFinder *p) -{ - if (p->streamEndWasReached || p->result != SZ_OK) - return; - for (;;) - { - Byte *dest = p->buffer + (p->streamPos - p->pos); - size_t size = (p->bufferBase + p->blockSize - dest); - if (size == 0) - return; - p->result = p->stream->Read(p->stream, dest, &size); - if (p->result != SZ_OK) - return; - if (size == 0) - { - p->streamEndWasReached = 1; - return; - } - p->streamPos += (UInt32)size; - if (p->streamPos - p->pos > p->keepSizeAfter) - return; - } -} - -void MatchFinder_MoveBlock(CMatchFinder *p) -{ - memmove(p->bufferBase, - p->buffer - p->keepSizeBefore, - (size_t)(p->streamPos - p->pos + p->keepSizeBefore)); - p->buffer = p->bufferBase + p->keepSizeBefore; -} - -int MatchFinder_NeedMove(CMatchFinder *p) -{ - /* if (p->streamEndWasReached) return 0; */ - return ((size_t)(p->bufferBase + p->blockSize - p->buffer) <= p->keepSizeAfter); -} - -void MatchFinder_ReadIfRequired(CMatchFinder *p) -{ - if (p->streamEndWasReached) - return; - if (p->keepSizeAfter >= p->streamPos - p->pos) - MatchFinder_ReadBlock(p); -} - -static void MatchFinder_CheckAndMoveAndRead(CMatchFinder *p) -{ - if (MatchFinder_NeedMove(p)) - MatchFinder_MoveBlock(p); - MatchFinder_ReadBlock(p); -} - -static void MatchFinder_SetDefaultSettings(CMatchFinder *p) -{ - p->cutValue = 32; - p->btMode = 1; - p->numHashBytes = 4; - /* p->skipModeBits = 0; */ - p->directInput = 0; - p->bigHash = 0; -} - -#define kCrcPoly 0xEDB88320 - -void MatchFinder_Construct(CMatchFinder *p) -{ - UInt32 i; - p->bufferBase = 0; - p->directInput = 0; - p->hash = 0; - MatchFinder_SetDefaultSettings(p); - - for (i = 0; i < 256; i++) - { - UInt32 r = i; - int j; - for (j = 0; j < 8; j++) - r = (r >> 1) ^ (kCrcPoly & ~((r & 1) - 1)); - p->crc[i] = r; - } -} - -static void MatchFinder_FreeThisClassMemory(CMatchFinder *p, ISzAlloc *alloc) -{ - alloc->Free(alloc, p->hash); - p->hash = 0; -} - -void MatchFinder_Free(CMatchFinder *p, ISzAlloc *alloc) -{ - MatchFinder_FreeThisClassMemory(p, alloc); - LzInWindow_Free(p, alloc); -} - -static CLzRef* AllocRefs(UInt32 num, ISzAlloc *alloc) -{ - size_t sizeInBytes = (size_t)num * sizeof(CLzRef); - if (sizeInBytes / sizeof(CLzRef) != num) - return 0; - return (CLzRef *)alloc->Alloc(alloc, sizeInBytes); -} - -int MatchFinder_Create(CMatchFinder *p, UInt32 historySize, - UInt32 keepAddBufferBefore, UInt32 matchMaxLen, UInt32 keepAddBufferAfter, - ISzAlloc *alloc) -{ - UInt32 sizeReserv; - if (historySize > kMaxHistorySize) - { - MatchFinder_Free(p, alloc); - return 0; - } - sizeReserv = historySize >> 1; - if (historySize > ((UInt32)2 << 30)) - sizeReserv = historySize >> 2; - sizeReserv += (keepAddBufferBefore + matchMaxLen + keepAddBufferAfter) / 2 + (1 << 19); - - p->keepSizeBefore = historySize + keepAddBufferBefore + 1; - p->keepSizeAfter = matchMaxLen + keepAddBufferAfter; - /* we need one additional byte, since we use MoveBlock after pos++ and before dictionary using */ - if (LzInWindow_Create(p, sizeReserv, alloc)) - { - UInt32 newCyclicBufferSize = (historySize /* >> p->skipModeBits */) + 1; - UInt32 hs; - p->matchMaxLen = matchMaxLen; - { - p->fixedHashSize = 0; - if (p->numHashBytes == 2) - hs = (1 << 16) - 1; - else - { - hs = historySize - 1; - hs |= (hs >> 1); - hs |= (hs >> 2); - hs |= (hs >> 4); - hs |= (hs >> 8); - hs >>= 1; - /* hs >>= p->skipModeBits; */ - hs |= 0xFFFF; /* don't change it! It's required for Deflate */ - if (hs > (1 << 24)) - { - if (p->numHashBytes == 3) - hs = (1 << 24) - 1; - else - hs >>= 1; - } - } - p->hashMask = hs; - hs++; - if (p->numHashBytes > 2) p->fixedHashSize += kHash2Size; - if (p->numHashBytes > 3) p->fixedHashSize += kHash3Size; - if (p->numHashBytes > 4) p->fixedHashSize += kHash4Size; - hs += p->fixedHashSize; - } - - { - UInt32 prevSize = p->hashSizeSum + p->numSons; - UInt32 newSize; - p->historySize = historySize; - p->hashSizeSum = hs; - p->cyclicBufferSize = newCyclicBufferSize; - p->numSons = (p->btMode ? newCyclicBufferSize * 2 : newCyclicBufferSize); - newSize = p->hashSizeSum + p->numSons; - if (p->hash != 0 && prevSize == newSize) - return 1; - MatchFinder_FreeThisClassMemory(p, alloc); - p->hash = AllocRefs(newSize, alloc); - if (p->hash != 0) - { - p->son = p->hash + p->hashSizeSum; - return 1; - } - } - } - MatchFinder_Free(p, alloc); - return 0; -} - -static void MatchFinder_SetLimits(CMatchFinder *p) -{ - UInt32 limit = kMaxValForNormalize - p->pos; - UInt32 limit2 = p->cyclicBufferSize - p->cyclicBufferPos; - if (limit2 < limit) - limit = limit2; - limit2 = p->streamPos - p->pos; - if (limit2 <= p->keepSizeAfter) - { - if (limit2 > 0) - limit2 = 1; - } - else - limit2 -= p->keepSizeAfter; - if (limit2 < limit) - limit = limit2; - { - UInt32 lenLimit = p->streamPos - p->pos; - if (lenLimit > p->matchMaxLen) - lenLimit = p->matchMaxLen; - p->lenLimit = lenLimit; - } - p->posLimit = p->pos + limit; -} - -void MatchFinder_Init(CMatchFinder *p) -{ - UInt32 i; - for(i = 0; i < p->hashSizeSum; i++) - p->hash[i] = kEmptyHashValue; - p->cyclicBufferPos = 0; - p->buffer = p->bufferBase; - p->pos = p->streamPos = p->cyclicBufferSize; - p->result = SZ_OK; - p->streamEndWasReached = 0; - MatchFinder_ReadBlock(p); - MatchFinder_SetLimits(p); -} - -static UInt32 MatchFinder_GetSubValue(CMatchFinder *p) -{ - return (p->pos - p->historySize - 1) & kNormalizeMask; -} - -void MatchFinder_Normalize3(UInt32 subValue, CLzRef *items, UInt32 numItems) -{ - UInt32 i; - for (i = 0; i < numItems; i++) - { - UInt32 value = items[i]; - if (value <= subValue) - value = kEmptyHashValue; - else - value -= subValue; - items[i] = value; - } -} - -static void MatchFinder_Normalize(CMatchFinder *p) -{ - UInt32 subValue = MatchFinder_GetSubValue(p); - MatchFinder_Normalize3(subValue, p->hash, p->hashSizeSum + p->numSons); - MatchFinder_ReduceOffsets(p, subValue); -} - -static void MatchFinder_CheckLimits(CMatchFinder *p) -{ - if (p->pos == kMaxValForNormalize) - MatchFinder_Normalize(p); - if (!p->streamEndWasReached && p->keepSizeAfter == p->streamPos - p->pos) - MatchFinder_CheckAndMoveAndRead(p); - if (p->cyclicBufferPos == p->cyclicBufferSize) - p->cyclicBufferPos = 0; - MatchFinder_SetLimits(p); -} - -static UInt32 * Hc_GetMatchesSpec(UInt32 lenLimit, UInt32 curMatch, UInt32 pos, const Byte *cur, CLzRef *son, - UInt32 _cyclicBufferPos, UInt32 _cyclicBufferSize, UInt32 cutValue, - UInt32 *distances, UInt32 maxLen) -{ - son[_cyclicBufferPos] = curMatch; - for (;;) - { - UInt32 delta = pos - curMatch; - if (cutValue-- == 0 || delta >= _cyclicBufferSize) - return distances; - { - const Byte *pb = cur - delta; - curMatch = son[_cyclicBufferPos - delta + ((delta > _cyclicBufferPos) ? _cyclicBufferSize : 0)]; - if (pb[maxLen] == cur[maxLen] && *pb == *cur) - { - UInt32 len = 0; - while(++len != lenLimit) - if (pb[len] != cur[len]) - break; - if (maxLen < len) - { - *distances++ = maxLen = len; - *distances++ = delta - 1; - if (len == lenLimit) - return distances; - } - } - } - } -} - -UInt32 * GetMatchesSpec1(UInt32 lenLimit, UInt32 curMatch, UInt32 pos, const Byte *cur, CLzRef *son, - UInt32 _cyclicBufferPos, UInt32 _cyclicBufferSize, UInt32 cutValue, - UInt32 *distances, UInt32 maxLen) -{ - CLzRef *ptr0 = son + (_cyclicBufferPos << 1) + 1; - CLzRef *ptr1 = son + (_cyclicBufferPos << 1); - UInt32 len0 = 0, len1 = 0; - for (;;) - { - UInt32 delta = pos - curMatch; - if (cutValue-- == 0 || delta >= _cyclicBufferSize) - { - *ptr0 = *ptr1 = kEmptyHashValue; - return distances; - } - { - CLzRef *pair = son + ((_cyclicBufferPos - delta + ((delta > _cyclicBufferPos) ? _cyclicBufferSize : 0)) << 1); - const Byte *pb = cur - delta; - UInt32 len = (len0 < len1 ? len0 : len1); - if (pb[len] == cur[len]) - { - if (++len != lenLimit && pb[len] == cur[len]) - while(++len != lenLimit) - if (pb[len] != cur[len]) - break; - if (maxLen < len) - { - *distances++ = maxLen = len; - *distances++ = delta - 1; - if (len == lenLimit) - { - *ptr1 = pair[0]; - *ptr0 = pair[1]; - return distances; - } - } - } - if (pb[len] < cur[len]) - { - *ptr1 = curMatch; - ptr1 = pair + 1; - curMatch = *ptr1; - len1 = len; - } - else - { - *ptr0 = curMatch; - ptr0 = pair; - curMatch = *ptr0; - len0 = len; - } - } - } -} - -static void SkipMatchesSpec(UInt32 lenLimit, UInt32 curMatch, UInt32 pos, const Byte *cur, CLzRef *son, - UInt32 _cyclicBufferPos, UInt32 _cyclicBufferSize, UInt32 cutValue) -{ - CLzRef *ptr0 = son + (_cyclicBufferPos << 1) + 1; - CLzRef *ptr1 = son + (_cyclicBufferPos << 1); - UInt32 len0 = 0, len1 = 0; - for (;;) - { - UInt32 delta = pos - curMatch; - if (cutValue-- == 0 || delta >= _cyclicBufferSize) - { - *ptr0 = *ptr1 = kEmptyHashValue; - return; - } - { - CLzRef *pair = son + ((_cyclicBufferPos - delta + ((delta > _cyclicBufferPos) ? _cyclicBufferSize : 0)) << 1); - const Byte *pb = cur - delta; - UInt32 len = (len0 < len1 ? len0 : len1); - if (pb[len] == cur[len]) - { - while(++len != lenLimit) - if (pb[len] != cur[len]) - break; - { - if (len == lenLimit) - { - *ptr1 = pair[0]; - *ptr0 = pair[1]; - return; - } - } - } - if (pb[len] < cur[len]) - { - *ptr1 = curMatch; - ptr1 = pair + 1; - curMatch = *ptr1; - len1 = len; - } - else - { - *ptr0 = curMatch; - ptr0 = pair; - curMatch = *ptr0; - len0 = len; - } - } - } -} - -#define MOVE_POS \ - ++p->cyclicBufferPos; \ - p->buffer++; \ - if (++p->pos == p->posLimit) MatchFinder_CheckLimits(p); - -#define MOVE_POS_RET MOVE_POS return offset; - -static void MatchFinder_MovePos(CMatchFinder *p) { MOVE_POS; } - -#define GET_MATCHES_HEADER2(minLen, ret_op) \ - UInt32 lenLimit; UInt32 hashValue; const Byte *cur; UInt32 curMatch; \ - lenLimit = p->lenLimit; { if (lenLimit < minLen) { MatchFinder_MovePos(p); ret_op; }} \ - cur = p->buffer; - -#define GET_MATCHES_HEADER(minLen) GET_MATCHES_HEADER2(minLen, return 0) -#define SKIP_HEADER(minLen) GET_MATCHES_HEADER2(minLen, continue) - -#define MF_PARAMS(p) p->pos, p->buffer, p->son, p->cyclicBufferPos, p->cyclicBufferSize, p->cutValue - -#define GET_MATCHES_FOOTER(offset, maxLen) \ - offset = (UInt32)(GetMatchesSpec1(lenLimit, curMatch, MF_PARAMS(p), \ - distances + offset, maxLen) - distances); MOVE_POS_RET; - -#define SKIP_FOOTER \ - SkipMatchesSpec(lenLimit, curMatch, MF_PARAMS(p)); MOVE_POS; - -static UInt32 Bt2_MatchFinder_GetMatches(CMatchFinder *p, UInt32 *distances) -{ - UInt32 offset; - GET_MATCHES_HEADER(2) - HASH2_CALC; - curMatch = p->hash[hashValue]; - p->hash[hashValue] = p->pos; - offset = 0; - GET_MATCHES_FOOTER(offset, 1) -} - -UInt32 Bt3Zip_MatchFinder_GetMatches(CMatchFinder *p, UInt32 *distances) -{ - UInt32 offset; - GET_MATCHES_HEADER(3) - HASH_ZIP_CALC; - curMatch = p->hash[hashValue]; - p->hash[hashValue] = p->pos; - offset = 0; - GET_MATCHES_FOOTER(offset, 2) -} - -static UInt32 Bt3_MatchFinder_GetMatches(CMatchFinder *p, UInt32 *distances) -{ - UInt32 hash2Value, delta2, maxLen, offset; - GET_MATCHES_HEADER(3) - - HASH3_CALC; - - delta2 = p->pos - p->hash[hash2Value]; - curMatch = p->hash[kFix3HashSize + hashValue]; - - p->hash[hash2Value] = - p->hash[kFix3HashSize + hashValue] = p->pos; - - - maxLen = 2; - offset = 0; - if (delta2 < p->cyclicBufferSize && *(cur - delta2) == *cur) - { - for (; maxLen != lenLimit; maxLen++) - if (cur[(ptrdiff_t)maxLen - delta2] != cur[maxLen]) - break; - distances[0] = maxLen; - distances[1] = delta2 - 1; - offset = 2; - if (maxLen == lenLimit) - { - SkipMatchesSpec(lenLimit, curMatch, MF_PARAMS(p)); - MOVE_POS_RET; - } - } - GET_MATCHES_FOOTER(offset, maxLen) -} - -static UInt32 Bt4_MatchFinder_GetMatches(CMatchFinder *p, UInt32 *distances) -{ - UInt32 hash2Value, hash3Value, delta2, delta3, maxLen, offset; - GET_MATCHES_HEADER(4) - - HASH4_CALC; - - delta2 = p->pos - p->hash[ hash2Value]; - delta3 = p->pos - p->hash[kFix3HashSize + hash3Value]; - curMatch = p->hash[kFix4HashSize + hashValue]; - - p->hash[ hash2Value] = - p->hash[kFix3HashSize + hash3Value] = - p->hash[kFix4HashSize + hashValue] = p->pos; - - maxLen = 1; - offset = 0; - if (delta2 < p->cyclicBufferSize && *(cur - delta2) == *cur) - { - distances[0] = maxLen = 2; - distances[1] = delta2 - 1; - offset = 2; - } - if (delta2 != delta3 && delta3 < p->cyclicBufferSize && *(cur - delta3) == *cur) - { - maxLen = 3; - distances[offset + 1] = delta3 - 1; - offset += 2; - delta2 = delta3; - } - if (offset != 0) - { - for (; maxLen != lenLimit; maxLen++) - if (cur[(ptrdiff_t)maxLen - delta2] != cur[maxLen]) - break; - distances[offset - 2] = maxLen; - if (maxLen == lenLimit) - { - SkipMatchesSpec(lenLimit, curMatch, MF_PARAMS(p)); - MOVE_POS_RET; - } - } - if (maxLen < 3) - maxLen = 3; - GET_MATCHES_FOOTER(offset, maxLen) -} - -static UInt32 Hc4_MatchFinder_GetMatches(CMatchFinder *p, UInt32 *distances) -{ - UInt32 hash2Value, hash3Value, delta2, delta3, maxLen, offset; - GET_MATCHES_HEADER(4) - - HASH4_CALC; - - delta2 = p->pos - p->hash[ hash2Value]; - delta3 = p->pos - p->hash[kFix3HashSize + hash3Value]; - curMatch = p->hash[kFix4HashSize + hashValue]; - - p->hash[ hash2Value] = - p->hash[kFix3HashSize + hash3Value] = - p->hash[kFix4HashSize + hashValue] = p->pos; - - maxLen = 1; - offset = 0; - if (delta2 < p->cyclicBufferSize && *(cur - delta2) == *cur) - { - distances[0] = maxLen = 2; - distances[1] = delta2 - 1; - offset = 2; - } - if (delta2 != delta3 && delta3 < p->cyclicBufferSize && *(cur - delta3) == *cur) - { - maxLen = 3; - distances[offset + 1] = delta3 - 1; - offset += 2; - delta2 = delta3; - } - if (offset != 0) - { - for (; maxLen != lenLimit; maxLen++) - if (cur[(ptrdiff_t)maxLen - delta2] != cur[maxLen]) - break; - distances[offset - 2] = maxLen; - if (maxLen == lenLimit) - { - p->son[p->cyclicBufferPos] = curMatch; - MOVE_POS_RET; - } - } - if (maxLen < 3) - maxLen = 3; - offset = (UInt32)(Hc_GetMatchesSpec(lenLimit, curMatch, MF_PARAMS(p), - distances + offset, maxLen) - (distances)); - MOVE_POS_RET -} - -UInt32 Hc3Zip_MatchFinder_GetMatches(CMatchFinder *p, UInt32 *distances) -{ - UInt32 offset; - GET_MATCHES_HEADER(3) - HASH_ZIP_CALC; - curMatch = p->hash[hashValue]; - p->hash[hashValue] = p->pos; - offset = (UInt32)(Hc_GetMatchesSpec(lenLimit, curMatch, MF_PARAMS(p), - distances, 2) - (distances)); - MOVE_POS_RET -} - -static void Bt2_MatchFinder_Skip(CMatchFinder *p, UInt32 num) -{ - do - { - SKIP_HEADER(2) - HASH2_CALC; - curMatch = p->hash[hashValue]; - p->hash[hashValue] = p->pos; - SKIP_FOOTER - } - while (--num != 0); -} - -void Bt3Zip_MatchFinder_Skip(CMatchFinder *p, UInt32 num) -{ - do - { - SKIP_HEADER(3) - HASH_ZIP_CALC; - curMatch = p->hash[hashValue]; - p->hash[hashValue] = p->pos; - SKIP_FOOTER - } - while (--num != 0); -} - -static void Bt3_MatchFinder_Skip(CMatchFinder *p, UInt32 num) -{ - do - { - UInt32 hash2Value; - SKIP_HEADER(3) - HASH3_CALC; - curMatch = p->hash[kFix3HashSize + hashValue]; - p->hash[hash2Value] = - p->hash[kFix3HashSize + hashValue] = p->pos; - SKIP_FOOTER - } - while (--num != 0); -} - -static void Bt4_MatchFinder_Skip(CMatchFinder *p, UInt32 num) -{ - do - { - UInt32 hash2Value, hash3Value; - SKIP_HEADER(4) - HASH4_CALC; - curMatch = p->hash[kFix4HashSize + hashValue]; - p->hash[ hash2Value] = - p->hash[kFix3HashSize + hash3Value] = p->pos; - p->hash[kFix4HashSize + hashValue] = p->pos; - SKIP_FOOTER - } - while (--num != 0); -} - -static void Hc4_MatchFinder_Skip(CMatchFinder *p, UInt32 num) -{ - do - { - UInt32 hash2Value, hash3Value; - SKIP_HEADER(4) - HASH4_CALC; - curMatch = p->hash[kFix4HashSize + hashValue]; - p->hash[ hash2Value] = - p->hash[kFix3HashSize + hash3Value] = - p->hash[kFix4HashSize + hashValue] = p->pos; - p->son[p->cyclicBufferPos] = curMatch; - MOVE_POS - } - while (--num != 0); -} - -void Hc3Zip_MatchFinder_Skip(CMatchFinder *p, UInt32 num) -{ - do - { - SKIP_HEADER(3) - HASH_ZIP_CALC; - curMatch = p->hash[hashValue]; - p->hash[hashValue] = p->pos; - p->son[p->cyclicBufferPos] = curMatch; - MOVE_POS - } - while (--num != 0); -} - -void MatchFinder_CreateVTable(CMatchFinder *p, IMatchFinder *vTable) -{ - vTable->Init = (Mf_Init_Func)MatchFinder_Init; - vTable->GetIndexByte = (Mf_GetIndexByte_Func)MatchFinder_GetIndexByte; - vTable->GetNumAvailableBytes = (Mf_GetNumAvailableBytes_Func)MatchFinder_GetNumAvailableBytes; - vTable->GetPointerToCurrentPos = (Mf_GetPointerToCurrentPos_Func)MatchFinder_GetPointerToCurrentPos; - if (!p->btMode) - { - vTable->GetMatches = (Mf_GetMatches_Func)Hc4_MatchFinder_GetMatches; - vTable->Skip = (Mf_Skip_Func)Hc4_MatchFinder_Skip; - } - else if (p->numHashBytes == 2) - { - vTable->GetMatches = (Mf_GetMatches_Func)Bt2_MatchFinder_GetMatches; - vTable->Skip = (Mf_Skip_Func)Bt2_MatchFinder_Skip; - } - else if (p->numHashBytes == 3) - { - vTable->GetMatches = (Mf_GetMatches_Func)Bt3_MatchFinder_GetMatches; - vTable->Skip = (Mf_Skip_Func)Bt3_MatchFinder_Skip; - } - else - { - vTable->GetMatches = (Mf_GetMatches_Func)Bt4_MatchFinder_GetMatches; - vTable->Skip = (Mf_Skip_Func)Bt4_MatchFinder_Skip; - } -} diff --git a/thirdparty/grub-2.04/grub-core/lib/LzmaDec.c b/thirdparty/grub-2.04/grub-core/lib/LzmaDec.c deleted file mode 100644 index 952edb346..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/LzmaDec.c +++ /dev/null @@ -1,1037 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (c) 1999-2008 Igor Pavlov - * Copyright (C) 2008 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -/* - * This code was taken from LZMA SDK 4.58 beta, and was slightly modified - * to adapt it to GRUB's requirement. - * - * See , for more information about LZMA. - */ - -#include - -#pragma GCC diagnostic ignored "-Wshadow" -#include -#define memcpy grub_memcpy - -#define kNumTopBits 24 -#define kTopValue ((UInt32)1 << kNumTopBits) - -#define kNumBitModelTotalBits 11 -#define kBitModelTotal (1 << kNumBitModelTotalBits) -#define kNumMoveBits 5 - -#define RC_INIT_SIZE 5 - -#define NORMALIZE if (range < kTopValue) { range <<= 8; code = (code << 8) | (*buf++); } - -#define IF_BIT_0(p) ttt = *(p); NORMALIZE; bound = (range >> kNumBitModelTotalBits) * ttt; if (code < bound) -#define UPDATE_0(p) range = bound; *(p) = (CLzmaProb)(ttt + ((kBitModelTotal - ttt) >> kNumMoveBits)); -#define UPDATE_1(p) range -= bound; code -= bound; *(p) = (CLzmaProb)(ttt - (ttt >> kNumMoveBits)); -#define GET_BIT2(p, i, A0, A1) IF_BIT_0(p) \ - { UPDATE_0(p); i = (i + i); A0; } else \ - { UPDATE_1(p); i = (i + i) + 1; A1; } -#define GET_BIT(p, i) GET_BIT2(p, i, ; , ;) - -#define TREE_GET_BIT(probs, i) { GET_BIT((probs + i), i); } -#define TREE_DECODE(probs, limit, i) \ - { i = 1; do { TREE_GET_BIT(probs, i); } while (i < limit); i -= limit; } - -/* #define _LZMA_SIZE_OPT */ - -#ifdef _LZMA_SIZE_OPT -#define TREE_6_DECODE(probs, i) TREE_DECODE(probs, (1 << 6), i) -#else -#define TREE_6_DECODE(probs, i) \ - { i = 1; \ - TREE_GET_BIT(probs, i); \ - TREE_GET_BIT(probs, i); \ - TREE_GET_BIT(probs, i); \ - TREE_GET_BIT(probs, i); \ - TREE_GET_BIT(probs, i); \ - TREE_GET_BIT(probs, i); \ - i -= 0x40; } -#endif - -#define NORMALIZE_CHECK if (range < kTopValue) { if (buf >= bufLimit) return DUMMY_ERROR; range <<= 8; code = (code << 8) | (*buf++); } - -#define IF_BIT_0_CHECK(p) ttt = *(p); NORMALIZE_CHECK; bound = (range >> kNumBitModelTotalBits) * ttt; if (code < bound) -#define UPDATE_0_CHECK range = bound; -#define UPDATE_1_CHECK range -= bound; code -= bound; -#define GET_BIT2_CHECK(p, i, A0, A1) IF_BIT_0_CHECK(p) \ - { UPDATE_0_CHECK; i = (i + i); A0; } else \ - { UPDATE_1_CHECK; i = (i + i) + 1; A1; } -#define GET_BIT_CHECK(p, i) GET_BIT2_CHECK(p, i, ; , ;) -#define TREE_DECODE_CHECK(probs, limit, i) \ - { i = 1; do { GET_BIT_CHECK(probs + i, i) } while(i < limit); i -= limit; } - - -#define kNumPosBitsMax 4 -#define kNumPosStatesMax (1 << kNumPosBitsMax) - -#define kLenNumLowBits 3 -#define kLenNumLowSymbols (1 << kLenNumLowBits) -#define kLenNumMidBits 3 -#define kLenNumMidSymbols (1 << kLenNumMidBits) -#define kLenNumHighBits 8 -#define kLenNumHighSymbols (1 << kLenNumHighBits) - -#define LenChoice 0 -#define LenChoice2 (LenChoice + 1) -#define LenLow (LenChoice2 + 1) -#define LenMid (LenLow + (kNumPosStatesMax << kLenNumLowBits)) -#define LenHigh (LenMid + (kNumPosStatesMax << kLenNumMidBits)) -#define kNumLenProbs (LenHigh + kLenNumHighSymbols) - - -#define kNumStates 12 -#define kNumLitStates 7 - -#define kStartPosModelIndex 4 -#define kEndPosModelIndex 14 -#define kNumFullDistances (1 << (kEndPosModelIndex >> 1)) - -#define kNumPosSlotBits 6 -#define kNumLenToPosStates 4 - -#define kNumAlignBits 4 -#define kAlignTableSize (1 << kNumAlignBits) - -#define kMatchMinLen 2 -#define kMatchSpecLenStart (kMatchMinLen + kLenNumLowSymbols + kLenNumMidSymbols + kLenNumHighSymbols) - -#define IsMatch 0 -#define IsRep (IsMatch + (kNumStates << kNumPosBitsMax)) -#define IsRepG0 (IsRep + kNumStates) -#define IsRepG1 (IsRepG0 + kNumStates) -#define IsRepG2 (IsRepG1 + kNumStates) -#define IsRep0Long (IsRepG2 + kNumStates) -#define PosSlot (IsRep0Long + (kNumStates << kNumPosBitsMax)) -#define SpecPos (PosSlot + (kNumLenToPosStates << kNumPosSlotBits)) -#define Align (SpecPos + kNumFullDistances - kEndPosModelIndex) -#define LenCoder (Align + kAlignTableSize) -#define RepLenCoder (LenCoder + kNumLenProbs) -#define Literal (RepLenCoder + kNumLenProbs) - -#define LZMA_BASE_SIZE 1846 -#define LZMA_LIT_SIZE 768 - -#define LzmaProps_GetNumProbs(p) ((UInt32)LZMA_BASE_SIZE + (LZMA_LIT_SIZE << ((p)->lc + (p)->lp))) - -#if Literal != LZMA_BASE_SIZE -StopCompilingDueBUG -#endif - -/* -#define LZMA_STREAM_WAS_FINISHED_ID (-1) -#define LZMA_SPEC_LEN_OFFSET (-3) -*/ - -Byte kLiteralNextStates[kNumStates * 2] = -{ - 0, 0, 0, 0, 1, 2, 3, 4, 5, 6, 4, 5, - 7, 7, 7, 7, 7, 7, 7, 10, 10, 10, 10, 10 -}; - -#define LZMA_DIC_MIN (1 << 12) - -/* First LZMA-symbol is always decoded. -And it decodes new LZMA-symbols while (buf < bufLimit), but "buf" is without last normalization -Out: - Result: - 0 - OK - 1 - Error - p->remainLen: - < kMatchSpecLenStart : normal remain - = kMatchSpecLenStart : finished - = kMatchSpecLenStart + 1 : Flush marker - = kMatchSpecLenStart + 2 : State Init Marker -*/ - -static int MY_FAST_CALL LzmaDec_DecodeReal(CLzmaDec *p, SizeT limit, const Byte *bufLimit) -{ - CLzmaProb *probs = p->probs; - - unsigned state = p->state; - UInt32 rep0 = p->reps[0], rep1 = p->reps[1], rep2 = p->reps[2], rep3 = p->reps[3]; - unsigned pbMask = ((unsigned)1 << (p->prop.pb)) - 1; - unsigned lpMask = ((unsigned)1 << (p->prop.lp)) - 1; - unsigned lc = p->prop.lc; - - Byte *dic = p->dic; - SizeT dicBufSize = p->dicBufSize; - SizeT dicPos = p->dicPos; - - UInt32 processedPos = p->processedPos; - UInt32 checkDicSize = p->checkDicSize; - unsigned len = 0; - - const Byte *buf = p->buf; - UInt32 range = p->range; - UInt32 code = p->code; - - do - { - CLzmaProb *prob; - UInt32 bound; - unsigned ttt; - unsigned posState = processedPos & pbMask; - - prob = probs + IsMatch + (state << kNumPosBitsMax) + posState; - IF_BIT_0(prob) - { - unsigned symbol; - UPDATE_0(prob); - prob = probs + Literal; - if (checkDicSize != 0 || processedPos != 0) - prob += (LZMA_LIT_SIZE * (((processedPos & lpMask) << lc) + - (dic[(dicPos == 0 ? dicBufSize : dicPos) - 1] >> (8 - lc)))); - - if (state < kNumLitStates) - { - symbol = 1; - do { GET_BIT(prob + symbol, symbol) } while (symbol < 0x100); - } - else - { - unsigned matchByte = p->dic[(dicPos - rep0) + ((dicPos < rep0) ? dicBufSize : 0)]; - unsigned offs = 0x100; - symbol = 1; - do - { - unsigned bit; - CLzmaProb *probLit; - matchByte <<= 1; - bit = (matchByte & offs); - probLit = prob + offs + bit + symbol; - GET_BIT2(probLit, symbol, offs &= ~bit, offs &= bit) - } - while (symbol < 0x100); - } - dic[dicPos++] = (Byte)symbol; - processedPos++; - - state = kLiteralNextStates[state]; - /* if (state < 4) state = 0; else if (state < 10) state -= 3; else state -= 6; */ - continue; - } - else - { - UPDATE_1(prob); - prob = probs + IsRep + state; - IF_BIT_0(prob) - { - UPDATE_0(prob); - state += kNumStates; - prob = probs + LenCoder; - } - else - { - UPDATE_1(prob); - if (checkDicSize == 0 && processedPos == 0) - return SZ_ERROR_DATA; - prob = probs + IsRepG0 + state; - IF_BIT_0(prob) - { - UPDATE_0(prob); - prob = probs + IsRep0Long + (state << kNumPosBitsMax) + posState; - IF_BIT_0(prob) - { - UPDATE_0(prob); - dic[dicPos] = dic[(dicPos - rep0) + ((dicPos < rep0) ? dicBufSize : 0)]; - dicPos++; - processedPos++; - state = state < kNumLitStates ? 9 : 11; - continue; - } - UPDATE_1(prob); - } - else - { - UInt32 distance; - UPDATE_1(prob); - prob = probs + IsRepG1 + state; - IF_BIT_0(prob) - { - UPDATE_0(prob); - distance = rep1; - } - else - { - UPDATE_1(prob); - prob = probs + IsRepG2 + state; - IF_BIT_0(prob) - { - UPDATE_0(prob); - distance = rep2; - } - else - { - UPDATE_1(prob); - distance = rep3; - rep3 = rep2; - } - rep2 = rep1; - } - rep1 = rep0; - rep0 = distance; - } - state = state < kNumLitStates ? 8 : 11; - prob = probs + RepLenCoder; - } - { - unsigned limit, offset; - CLzmaProb *probLen = prob + LenChoice; - IF_BIT_0(probLen) - { - UPDATE_0(probLen); - probLen = prob + LenLow + (posState << kLenNumLowBits); - offset = 0; - limit = (1 << kLenNumLowBits); - } - else - { - UPDATE_1(probLen); - probLen = prob + LenChoice2; - IF_BIT_0(probLen) - { - UPDATE_0(probLen); - probLen = prob + LenMid + (posState << kLenNumMidBits); - offset = kLenNumLowSymbols; - limit = (1 << kLenNumMidBits); - } - else - { - UPDATE_1(probLen); - probLen = prob + LenHigh; - offset = kLenNumLowSymbols + kLenNumMidSymbols; - limit = (1 << kLenNumHighBits); - } - } - TREE_DECODE(probLen, limit, len); - len += offset; - } - - if (state >= kNumStates) - { - UInt32 distance; - prob = probs + PosSlot + - ((len < kNumLenToPosStates ? len : kNumLenToPosStates - 1) << kNumPosSlotBits); - TREE_6_DECODE(prob, distance); - if (distance >= kStartPosModelIndex) - { - unsigned posSlot = (unsigned)distance; - int numDirectBits = (int)(((distance >> 1) - 1)); - distance = (2 | (distance & 1)); - if (posSlot < kEndPosModelIndex) - { - distance <<= numDirectBits; - prob = probs + SpecPos + distance - posSlot - 1; - { - UInt32 mask = 1; - unsigned i = 1; - do - { - GET_BIT2(prob + i, i, ; , distance |= mask); - mask <<= 1; - } - while(--numDirectBits != 0); - } - } - else - { - numDirectBits -= kNumAlignBits; - do - { - NORMALIZE - range >>= 1; - - { - UInt32 t; - code -= range; - t = (0 - ((UInt32)code >> 31)); /* (UInt32)((Int32)code >> 31) */ - distance = (distance << 1) + (t + 1); - code += range & t; - } - /* - distance <<= 1; - if (code >= range) - { - code -= range; - distance |= 1; - } - */ - } - while (--numDirectBits != 0); - prob = probs + Align; - distance <<= kNumAlignBits; - { - unsigned i = 1; - GET_BIT2(prob + i, i, ; , distance |= 1); - GET_BIT2(prob + i, i, ; , distance |= 2); - GET_BIT2(prob + i, i, ; , distance |= 4); - GET_BIT2(prob + i, i, ; , distance |= 8); - } - if (distance == (UInt32)0xFFFFFFFF) - { - len += kMatchSpecLenStart; - state -= kNumStates; - break; - } - } - } - rep3 = rep2; - rep2 = rep1; - rep1 = rep0; - rep0 = distance + 1; - if (checkDicSize == 0) - { - if (distance >= processedPos) - return SZ_ERROR_DATA; - } - else if (distance >= checkDicSize) - return SZ_ERROR_DATA; - state = (state < kNumStates + kNumLitStates) ? kNumLitStates : kNumLitStates + 3; - /* state = kLiteralNextStates[state]; */ - } - - len += kMatchMinLen; - - { - SizeT rem = limit - dicPos; - unsigned curLen = ((rem < len) ? (unsigned)rem : len); - SizeT pos = (dicPos - rep0) + ((dicPos < rep0) ? dicBufSize : 0); - - processedPos += curLen; - - len -= curLen; - if (pos + curLen <= dicBufSize) - { - Byte *dest = dic + dicPos; - ptrdiff_t src = (ptrdiff_t)pos - (ptrdiff_t)dicPos; - const Byte *lim = dest + curLen; - dicPos += curLen; - do - *(dest) = (Byte)*(dest + src); - while (++dest != lim); - } - else - { - do - { - dic[dicPos++] = dic[pos]; - if (++pos == dicBufSize) - pos = 0; - } - while (--curLen != 0); - } - } - } - } - while (dicPos < limit && buf < bufLimit); - NORMALIZE; - p->buf = buf; - p->range = range; - p->code = code; - p->remainLen = len; - p->dicPos = dicPos; - p->processedPos = processedPos; - p->reps[0] = rep0; - p->reps[1] = rep1; - p->reps[2] = rep2; - p->reps[3] = rep3; - p->state = state; - - return SZ_OK; -} - -static void MY_FAST_CALL LzmaDec_WriteRem(CLzmaDec *p, SizeT limit) -{ - if (p->remainLen != 0 && p->remainLen < kMatchSpecLenStart) - { - Byte *dic = p->dic; - SizeT dicPos = p->dicPos; - SizeT dicBufSize = p->dicBufSize; - unsigned len = p->remainLen; - UInt32 rep0 = p->reps[0]; - if (limit - dicPos < len) - len = (unsigned)(limit - dicPos); - - if (p->checkDicSize == 0 && p->prop.dicSize - p->processedPos <= len) - p->checkDicSize = p->prop.dicSize; - - p->processedPos += len; - p->remainLen -= len; - while (len-- != 0) - { - dic[dicPos] = dic[(dicPos - rep0) + ((dicPos < rep0) ? dicBufSize : 0)]; - dicPos++; - } - p->dicPos = dicPos; - } -} - -/* LzmaDec_DecodeReal2 decodes LZMA-symbols and sets p->needFlush and p->needInit, if required. */ - -static int MY_FAST_CALL LzmaDec_DecodeReal2(CLzmaDec *p, SizeT limit, const Byte *bufLimit) -{ - do - { - SizeT limit2 = limit; - if (p->checkDicSize == 0) - { - UInt32 rem = p->prop.dicSize - p->processedPos; - if (limit - p->dicPos > rem) - limit2 = p->dicPos + rem; - } - RINOK(LzmaDec_DecodeReal(p, limit2, bufLimit)); - if (p->processedPos >= p->prop.dicSize) - p->checkDicSize = p->prop.dicSize; - LzmaDec_WriteRem(p, limit); - } - while (p->dicPos < limit && p->buf < bufLimit && p->remainLen < kMatchSpecLenStart); - - if (p->remainLen > kMatchSpecLenStart) - { - p->remainLen = kMatchSpecLenStart; - } - return 0; -} - -typedef enum -{ - DUMMY_ERROR, /* unexpected end of input stream */ - DUMMY_LIT, - DUMMY_MATCH, - DUMMY_REP -} ELzmaDummy; - -static ELzmaDummy LzmaDec_TryDummy(const CLzmaDec *p, const Byte *buf, SizeT inSize) -{ - UInt32 range = p->range; - UInt32 code = p->code; - const Byte *bufLimit = buf + inSize; - CLzmaProb *probs = p->probs; - unsigned state = p->state; - ELzmaDummy res; - - { - CLzmaProb *prob; - UInt32 bound; - unsigned ttt; - unsigned posState = (p->processedPos) & ((1 << p->prop.pb) - 1); - - prob = probs + IsMatch + (state << kNumPosBitsMax) + posState; - IF_BIT_0_CHECK(prob) - { - UPDATE_0_CHECK - - /* if (bufLimit - buf >= 7) return DUMMY_LIT; */ - - prob = probs + Literal; - if (p->checkDicSize != 0 || p->processedPos != 0) - prob += (LZMA_LIT_SIZE * - ((((p->processedPos) & ((1 << (p->prop.lp)) - 1)) << p->prop.lc) + - (p->dic[(p->dicPos == 0 ? p->dicBufSize : p->dicPos) - 1] >> (8 - p->prop.lc)))); - - if (state < kNumLitStates) - { - unsigned symbol = 1; - do { GET_BIT_CHECK(prob + symbol, symbol) } while (symbol < 0x100); - } - else - { - unsigned matchByte = p->dic[p->dicPos - p->reps[0] + - ((p->dicPos < p->reps[0]) ? p->dicBufSize : 0)]; - unsigned offs = 0x100; - unsigned symbol = 1; - do - { - unsigned bit; - CLzmaProb *probLit; - matchByte <<= 1; - bit = (matchByte & offs); - probLit = prob + offs + bit + symbol; - GET_BIT2_CHECK(probLit, symbol, offs &= ~bit, offs &= bit) - } - while (symbol < 0x100); - } - res = DUMMY_LIT; - } - else - { - unsigned len; - UPDATE_1_CHECK; - - prob = probs + IsRep + state; - IF_BIT_0_CHECK(prob) - { - UPDATE_0_CHECK; - state = 0; - prob = probs + LenCoder; - res = DUMMY_MATCH; - } - else - { - UPDATE_1_CHECK; - res = DUMMY_REP; - prob = probs + IsRepG0 + state; - IF_BIT_0_CHECK(prob) - { - UPDATE_0_CHECK; - prob = probs + IsRep0Long + (state << kNumPosBitsMax) + posState; - IF_BIT_0_CHECK(prob) - { - UPDATE_0_CHECK; - NORMALIZE_CHECK; - return DUMMY_REP; - } - else - { - UPDATE_1_CHECK; - } - } - else - { - UPDATE_1_CHECK; - prob = probs + IsRepG1 + state; - IF_BIT_0_CHECK(prob) - { - UPDATE_0_CHECK; - } - else - { - UPDATE_1_CHECK; - prob = probs + IsRepG2 + state; - IF_BIT_0_CHECK(prob) - { - UPDATE_0_CHECK; - } - else - { - UPDATE_1_CHECK; - } - } - } - state = kNumStates; - prob = probs + RepLenCoder; - } - { - unsigned limit, offset; - CLzmaProb *probLen = prob + LenChoice; - IF_BIT_0_CHECK(probLen) - { - UPDATE_0_CHECK; - probLen = prob + LenLow + (posState << kLenNumLowBits); - offset = 0; - limit = 1 << kLenNumLowBits; - } - else - { - UPDATE_1_CHECK; - probLen = prob + LenChoice2; - IF_BIT_0_CHECK(probLen) - { - UPDATE_0_CHECK; - probLen = prob + LenMid + (posState << kLenNumMidBits); - offset = kLenNumLowSymbols; - limit = 1 << kLenNumMidBits; - } - else - { - UPDATE_1_CHECK; - probLen = prob + LenHigh; - offset = kLenNumLowSymbols + kLenNumMidSymbols; - limit = 1 << kLenNumHighBits; - } - } - TREE_DECODE_CHECK(probLen, limit, len); - len += offset; - } - - if (state < 4) - { - unsigned posSlot; - prob = probs + PosSlot + - ((len < kNumLenToPosStates ? len : kNumLenToPosStates - 1) << - kNumPosSlotBits); - TREE_DECODE_CHECK(prob, 1 << kNumPosSlotBits, posSlot); - if (posSlot >= kStartPosModelIndex) - { - int numDirectBits = ((posSlot >> 1) - 1); - - /* if (bufLimit - buf >= 8) return DUMMY_MATCH; */ - - if (posSlot < kEndPosModelIndex) - { - prob = probs + SpecPos + ((2 | (posSlot & 1)) << numDirectBits) - posSlot - 1; - } - else - { - numDirectBits -= kNumAlignBits; - do - { - NORMALIZE_CHECK - range >>= 1; - code -= range & (((code - range) >> 31) - 1); - /* if (code >= range) code -= range; */ - } - while (--numDirectBits != 0); - prob = probs + Align; - numDirectBits = kNumAlignBits; - } - { - unsigned i = 1; - do - { - GET_BIT_CHECK(prob + i, i); - } - while(--numDirectBits != 0); - } - } - } - } - } - NORMALIZE_CHECK; - return res; -} - - -static void LzmaDec_InitRc(CLzmaDec *p, const Byte *data) -{ - p->code = ((UInt32)data[1] << 24) | ((UInt32)data[2] << 16) | ((UInt32)data[3] << 8) | ((UInt32)data[4]); - p->range = 0xFFFFFFFF; - p->needFlush = 0; -} - -static void LzmaDec_InitDicAndState(CLzmaDec *p, Bool initDic, Bool initState) -{ - p->needFlush = 1; - p->remainLen = 0; - p->tempBufSize = 0; - - if (initDic) - { - p->processedPos = 0; - p->checkDicSize = 0; - p->needInitState = 1; - } - if (initState) - p->needInitState = 1; -} - -void LzmaDec_Init(CLzmaDec *p) -{ - p->dicPos = 0; - LzmaDec_InitDicAndState(p, True, True); -} - -static void LzmaDec_InitStateReal(CLzmaDec *p) -{ - UInt32 numProbs = Literal + ((UInt32)LZMA_LIT_SIZE << (p->prop.lc + p->prop.lp)); - UInt32 i; - CLzmaProb *probs = p->probs; - for (i = 0; i < numProbs; i++) - probs[i] = kBitModelTotal >> 1; - p->reps[0] = p->reps[1] = p->reps[2] = p->reps[3] = 1; - p->state = 0; - p->needInitState = 0; -} - -SRes LzmaDec_DecodeToDic(CLzmaDec *p, SizeT dicLimit, const Byte *src, SizeT *srcLen, - ELzmaFinishMode finishMode, ELzmaStatus *status) -{ - SizeT inSize = *srcLen; - (*srcLen) = 0; - LzmaDec_WriteRem(p, dicLimit); - - *status = LZMA_STATUS_NOT_SPECIFIED; - - while (p->remainLen != kMatchSpecLenStart) - { - int checkEndMarkNow; - - if (p->needFlush != 0) - { - for (; inSize > 0 && p->tempBufSize < RC_INIT_SIZE; (*srcLen)++, inSize--) - p->tempBuf[p->tempBufSize++] = *src++; - if (p->tempBufSize < RC_INIT_SIZE) - { - *status = LZMA_STATUS_NEEDS_MORE_INPUT; - return SZ_OK; - } - if (p->tempBuf[0] != 0) - return SZ_ERROR_DATA; - - LzmaDec_InitRc(p, p->tempBuf); - p->tempBufSize = 0; - } - - checkEndMarkNow = 0; - if (p->dicPos >= dicLimit) - { - if (p->remainLen == 0 && p->code == 0) - { - *status = LZMA_STATUS_MAYBE_FINISHED_WITHOUT_MARK; - return SZ_OK; - } - if (finishMode == LZMA_FINISH_ANY) - { - *status = LZMA_STATUS_NOT_FINISHED; - return SZ_OK; - } - if (p->remainLen != 0) - { - *status = LZMA_STATUS_NOT_FINISHED; - return SZ_ERROR_DATA; - } - checkEndMarkNow = 1; - } - - if (p->needInitState) - LzmaDec_InitStateReal(p); - - if (p->tempBufSize == 0) - { - SizeT processed; - const Byte *bufLimit; - if (inSize < LZMA_REQUIRED_INPUT_MAX || checkEndMarkNow) - { - int dummyRes = LzmaDec_TryDummy(p, src, inSize); - if (dummyRes == DUMMY_ERROR) - { - memcpy(p->tempBuf, src, inSize); - p->tempBufSize = (unsigned)inSize; - (*srcLen) += inSize; - *status = LZMA_STATUS_NEEDS_MORE_INPUT; - return SZ_OK; - } - if (checkEndMarkNow && dummyRes != DUMMY_MATCH) - { - *status = LZMA_STATUS_NOT_FINISHED; - return SZ_ERROR_DATA; - } - bufLimit = src; - } - else - bufLimit = src + inSize - LZMA_REQUIRED_INPUT_MAX; - p->buf = src; - if (LzmaDec_DecodeReal2(p, dicLimit, bufLimit) != 0) - return SZ_ERROR_DATA; - processed = p->buf - src; - (*srcLen) += processed; - src += processed; - inSize -= processed; - } - else - { - unsigned rem = p->tempBufSize, lookAhead = 0; - while (rem < LZMA_REQUIRED_INPUT_MAX && lookAhead < inSize) - p->tempBuf[rem++] = src[lookAhead++]; - p->tempBufSize = rem; - if (rem < LZMA_REQUIRED_INPUT_MAX || checkEndMarkNow) - { - int dummyRes = LzmaDec_TryDummy(p, p->tempBuf, rem); - if (dummyRes == DUMMY_ERROR) - { - (*srcLen) += lookAhead; - *status = LZMA_STATUS_NEEDS_MORE_INPUT; - return SZ_OK; - } - if (checkEndMarkNow && dummyRes != DUMMY_MATCH) - { - *status = LZMA_STATUS_NOT_FINISHED; - return SZ_ERROR_DATA; - } - } - p->buf = p->tempBuf; - if (LzmaDec_DecodeReal2(p, dicLimit, p->buf) != 0) - return SZ_ERROR_DATA; - lookAhead -= (rem - (unsigned)(p->buf - p->tempBuf)); - (*srcLen) += lookAhead; - src += lookAhead; - inSize -= lookAhead; - p->tempBufSize = 0; - } - } - if (p->code == 0) - *status = LZMA_STATUS_FINISHED_WITH_MARK; - return (p->code == 0) ? SZ_OK : SZ_ERROR_DATA; -} - -SRes LzmaDec_DecodeToBuf(CLzmaDec *p, Byte *dest, SizeT *destLen, const Byte *src, SizeT *srcLen, ELzmaFinishMode finishMode, ELzmaStatus *status) -{ - SizeT outSize = *destLen; - SizeT inSize = *srcLen; - *srcLen = *destLen = 0; - for (;;) - { - SizeT inSizeCur = inSize, outSizeCur, dicPos; - ELzmaFinishMode curFinishMode; - SRes res; - if (p->dicPos == p->dicBufSize) - p->dicPos = 0; - dicPos = p->dicPos; - if (outSize > p->dicBufSize - dicPos) - { - outSizeCur = p->dicBufSize; - curFinishMode = LZMA_FINISH_ANY; - } - else - { - outSizeCur = dicPos + outSize; - curFinishMode = finishMode; - } - - res = LzmaDec_DecodeToDic(p, outSizeCur, src, &inSizeCur, curFinishMode, status); - src += inSizeCur; - inSize -= inSizeCur; - *srcLen += inSizeCur; - outSizeCur = p->dicPos - dicPos; - memcpy(dest, p->dic + dicPos, outSizeCur); - dest += outSizeCur; - outSize -= outSizeCur; - *destLen += outSizeCur; - if (res != 0) - return res; - if (outSizeCur == 0 || outSize == 0) - return SZ_OK; - } -} - -void LzmaDec_FreeProbs(CLzmaDec *p, ISzAlloc *alloc) -{ - alloc->Free(alloc, p->probs); - p->probs = 0; -} - -static void LzmaDec_FreeDict(CLzmaDec *p, ISzAlloc *alloc) -{ - alloc->Free(alloc, p->dic); - p->dic = 0; -} - -void LzmaDec_Free(CLzmaDec *p, ISzAlloc *alloc) -{ - LzmaDec_FreeProbs(p, alloc); - LzmaDec_FreeDict(p, alloc); -} - -SRes LzmaProps_Decode(CLzmaProps *p, const Byte *data, unsigned size) -{ - UInt32 dicSize; - Byte d; - - if (size < LZMA_PROPS_SIZE) - return SZ_ERROR_UNSUPPORTED; - else - dicSize = data[1] | ((UInt32)data[2] << 8) | ((UInt32)data[3] << 16) | ((UInt32)data[4] << 24); - - if (dicSize < LZMA_DIC_MIN) - dicSize = LZMA_DIC_MIN; - p->dicSize = dicSize; - - d = data[0]; - if (d >= (9 * 5 * 5)) - return SZ_ERROR_UNSUPPORTED; - - p->lc = d % 9; - d /= 9; - p->pb = d / 5; - p->lp = d % 5; - - return SZ_OK; -} - -static SRes LzmaDec_AllocateProbs2(CLzmaDec *p, const CLzmaProps *propNew, ISzAlloc *alloc) -{ - UInt32 numProbs = LzmaProps_GetNumProbs(propNew); - if (p->probs == 0 || numProbs != p->numProbs) - { - LzmaDec_FreeProbs(p, alloc); - p->probs = (CLzmaProb *)alloc->Alloc(alloc, numProbs * sizeof(CLzmaProb)); - p->numProbs = numProbs; - if (p->probs == 0) - return SZ_ERROR_MEM; - } - return SZ_OK; -} - -SRes LzmaDec_AllocateProbs(CLzmaDec *p, const Byte *props, unsigned propsSize, ISzAlloc *alloc) -{ - CLzmaProps propNew; - RINOK(LzmaProps_Decode(&propNew, props, propsSize)); - RINOK(LzmaDec_AllocateProbs2(p, &propNew, alloc)); - p->prop = propNew; - return SZ_OK; -} - -SRes LzmaDec_Allocate(CLzmaDec *p, const Byte *props, unsigned propsSize, ISzAlloc *alloc) -{ - CLzmaProps propNew; - SizeT dicBufSize; - RINOK(LzmaProps_Decode(&propNew, props, propsSize)); - RINOK(LzmaDec_AllocateProbs2(p, &propNew, alloc)); - dicBufSize = propNew.dicSize; - if (p->dic == 0 || dicBufSize != p->dicBufSize) - { - LzmaDec_FreeDict(p, alloc); - p->dic = (Byte *)alloc->Alloc(alloc, dicBufSize); - if (p->dic == 0) - { - LzmaDec_FreeProbs(p, alloc); - return SZ_ERROR_MEM; - } - } - p->dicBufSize = dicBufSize; - p->prop = propNew; - return SZ_OK; -} - -SRes LzmaDecode(Byte *dest, SizeT *destLen, const Byte *src, SizeT *srcLen, - const Byte *propData, unsigned propSize, ELzmaFinishMode finishMode, - ELzmaStatus *status, ISzAlloc *alloc) -{ - CLzmaDec p; - SRes res; - SizeT inSize = *srcLen; - SizeT outSize = *destLen; - *srcLen = *destLen = 0; - if (inSize < RC_INIT_SIZE) - return SZ_ERROR_INPUT_EOF; - - LzmaDec_Construct(&p); - res = LzmaDec_AllocateProbs(&p, propData, propSize, alloc); - if (res != 0) - return res; - p.dic = dest; - p.dicBufSize = outSize; - - LzmaDec_Init(&p); - - *srcLen = inSize; - res = LzmaDec_DecodeToDic(&p, outSize, src, srcLen, finishMode, status); - - if (res == SZ_OK && *status == LZMA_STATUS_NEEDS_MORE_INPUT) - res = SZ_ERROR_INPUT_EOF; - - (*destLen) = p.dicPos; - LzmaDec_FreeProbs(&p, alloc); - return res; -} diff --git a/thirdparty/grub-2.04/grub-core/lib/LzmaEnc.c b/thirdparty/grub-2.04/grub-core/lib/LzmaEnc.c deleted file mode 100644 index f2ec04a8c..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/LzmaEnc.c +++ /dev/null @@ -1,2244 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (c) 1999-2008 Igor Pavlov - * Copyright (C) 2008 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -/* - * This code was taken from LZMA SDK 4.58 beta, and was slightly modified - * to adapt it to GRUB's requirement. - * - * See , for more information about LZMA. - */ - -#include - -#include -#include - -#include - -#include -#ifdef COMPRESS_MF_MT -#include -#endif - -/* #define SHOW_STAT */ -/* #define SHOW_STAT2 */ - -#ifdef SHOW_STAT -static int ttt = 0; -#endif - -#define kBlockSizeMax ((1 << LZMA_NUM_BLOCK_SIZE_BITS) - 1) - -#define kBlockSize (9 << 10) -#define kUnpackBlockSize (1 << 18) -#define kMatchArraySize (1 << 21) -#define kMatchRecordMaxSize ((LZMA_MATCH_LEN_MAX * 2 + 3) * LZMA_MATCH_LEN_MAX) - -#define kNumMaxDirectBits (31) - -#define kNumTopBits 24 -#define kTopValue ((UInt32)1 << kNumTopBits) - -#define kNumBitModelTotalBits 11 -#define kBitModelTotal (1 << kNumBitModelTotalBits) -#define kNumMoveBits 5 -#define kProbInitValue (kBitModelTotal >> 1) - -#define kNumMoveReducingBits 4 -#define kNumBitPriceShiftBits 4 -#define kBitPrice (1 << kNumBitPriceShiftBits) - -void LzmaEncProps_Init(CLzmaEncProps *p) -{ - p->level = 5; - p->dictSize = p->mc = 0; - p->lc = p->lp = p->pb = p->algo = p->fb = p->btMode = p->numHashBytes = p->numThreads = -1; - p->writeEndMark = 0; -} - -void LzmaEncProps_Normalize(CLzmaEncProps *p) -{ - int level = p->level; - if (level < 0) level = 5; - p->level = level; - if (p->dictSize == 0) p->dictSize = (level <= 5 ? (1 << (level * 2 + 14)) : (level == 6 ? (1 << 25) : (1 << 26))); - if (p->lc < 0) p->lc = 3; - if (p->lp < 0) p->lp = 0; - if (p->pb < 0) p->pb = 2; - if (p->algo < 0) p->algo = (level < 5 ? 0 : 1); - if (p->fb < 0) p->fb = (level < 7 ? 32 : 64); - if (p->btMode < 0) p->btMode = (p->algo == 0 ? 0 : 1); - if (p->numHashBytes < 0) p->numHashBytes = 4; - if (p->mc == 0) p->mc = (16 + (p->fb >> 1)) >> (p->btMode ? 0 : 1); - if (p->numThreads < 0) p->numThreads = ((p->btMode && p->algo) ? 2 : 1); -} - -UInt32 LzmaEncProps_GetDictSize(const CLzmaEncProps *props2) -{ - CLzmaEncProps props = *props2; - LzmaEncProps_Normalize(&props); - return props.dictSize; -} - -/* #define LZMA_LOG_BSR */ -/* Define it for Intel's CPU */ - - -#ifdef LZMA_LOG_BSR - -#define kDicLogSizeMaxCompress 30 - -#define BSR2_RET(pos, res) { unsigned long i; _BitScanReverse(&i, (pos)); res = (i + i) + ((pos >> (i - 1)) & 1); } - -UInt32 GetPosSlot1(UInt32 pos) -{ - UInt32 res; - BSR2_RET(pos, res); - return res; -} -#define GetPosSlot2(pos, res) { BSR2_RET(pos, res); } -#define GetPosSlot(pos, res) { if (pos < 2) res = pos; else BSR2_RET(pos, res); } - -#else - -#define kNumLogBits (9 + (int)sizeof(size_t) / 2) -#define kDicLogSizeMaxCompress ((kNumLogBits - 1) * 2 + 7) - -static void LzmaEnc_FastPosInit(Byte *g_FastPos) -{ - int c = 2, slotFast; - g_FastPos[0] = 0; - g_FastPos[1] = 1; - - for (slotFast = 2; slotFast < kNumLogBits * 2; slotFast++) - { - UInt32 k = (1 << ((slotFast >> 1) - 1)); - UInt32 j; - for (j = 0; j < k; j++, c++) - g_FastPos[c] = (Byte)slotFast; - } -} - -#define BSR2_RET(pos, res) { UInt32 i = 6 + ((kNumLogBits - 1) & \ - (0 - (((((UInt32)1 << (kNumLogBits + 6)) - 1) - pos) >> 31))); \ - res = p->g_FastPos[pos >> i] + (i * 2); } -/* -#define BSR2_RET(pos, res) { res = (pos < (1 << (kNumLogBits + 6))) ? \ - p->g_FastPos[pos >> 6] + 12 : \ - p->g_FastPos[pos >> (6 + kNumLogBits - 1)] + (6 + (kNumLogBits - 1)) * 2; } -*/ - -#define GetPosSlot1(pos) p->g_FastPos[pos] -#define GetPosSlot2(pos, res) { BSR2_RET(pos, res); } -#define GetPosSlot(pos, res) { if (pos < kNumFullDistances) res = p->g_FastPos[pos]; else BSR2_RET(pos, res); } - -#endif - - -#define LZMA_NUM_REPS 4 - -typedef unsigned CState; - -typedef struct _COptimal -{ - UInt32 price; - - CState state; - int prev1IsChar; - int prev2; - - UInt32 posPrev2; - UInt32 backPrev2; - - UInt32 posPrev; - UInt32 backPrev; - UInt32 backs[LZMA_NUM_REPS]; -} COptimal; - -#define kNumOpts (1 << 12) - -#define kNumLenToPosStates 4 -#define kNumPosSlotBits 6 -#define kDicLogSizeMin 0 -#define kDicLogSizeMax 32 -#define kDistTableSizeMax (kDicLogSizeMax * 2) - - -#define kNumAlignBits 4 -#define kAlignTableSize (1 << kNumAlignBits) -#define kAlignMask (kAlignTableSize - 1) - -#define kStartPosModelIndex 4 -#define kEndPosModelIndex 14 -#define kNumPosModels (kEndPosModelIndex - kStartPosModelIndex) - -#define kNumFullDistances (1 << (kEndPosModelIndex / 2)) - -#ifdef _LZMA_PROB32 -#define CLzmaProb UInt32 -#else -#define CLzmaProb UInt16 -#endif - -#define LZMA_PB_MAX 4 -#define LZMA_LC_MAX 8 -#define LZMA_LP_MAX 4 - -#define LZMA_NUM_PB_STATES_MAX (1 << LZMA_PB_MAX) - - -#define kLenNumLowBits 3 -#define kLenNumLowSymbols (1 << kLenNumLowBits) -#define kLenNumMidBits 3 -#define kLenNumMidSymbols (1 << kLenNumMidBits) -#define kLenNumHighBits 8 -#define kLenNumHighSymbols (1 << kLenNumHighBits) - -#define kLenNumSymbolsTotal (kLenNumLowSymbols + kLenNumMidSymbols + kLenNumHighSymbols) - -#define LZMA_MATCH_LEN_MIN 2 -#define LZMA_MATCH_LEN_MAX (LZMA_MATCH_LEN_MIN + kLenNumSymbolsTotal - 1) - -#define kNumStates 12 - -typedef struct -{ - CLzmaProb choice; - CLzmaProb choice2; - CLzmaProb low[LZMA_NUM_PB_STATES_MAX << kLenNumLowBits]; - CLzmaProb mid[LZMA_NUM_PB_STATES_MAX << kLenNumMidBits]; - CLzmaProb high[kLenNumHighSymbols]; -} CLenEnc; - -typedef struct -{ - CLenEnc p; - UInt32 prices[LZMA_NUM_PB_STATES_MAX][kLenNumSymbolsTotal]; - UInt32 tableSize; - UInt32 counters[LZMA_NUM_PB_STATES_MAX]; -} CLenPriceEnc; - -typedef struct _CRangeEnc -{ - UInt32 range; - Byte cache; - UInt64 low; - UInt64 cacheSize; - Byte *buf; - Byte *bufLim; - Byte *bufBase; - ISeqOutStream *outStream; - UInt64 processed; - SRes res; -} CRangeEnc; - -typedef struct _CSeqInStreamBuf -{ - ISeqInStream funcTable; - const Byte *data; - SizeT rem; -} CSeqInStreamBuf; - -static SRes MyRead(void *pp, void *data, size_t *size) -{ - size_t curSize = *size; - CSeqInStreamBuf *p = (CSeqInStreamBuf *)pp; - if (p->rem < curSize) - curSize = p->rem; - memcpy(data, p->data, curSize); - p->rem -= curSize; - p->data += curSize; - *size = curSize; - return SZ_OK; -} - -typedef struct -{ - CLzmaProb *litProbs; - - CLzmaProb isMatch[kNumStates][LZMA_NUM_PB_STATES_MAX]; - CLzmaProb isRep[kNumStates]; - CLzmaProb isRepG0[kNumStates]; - CLzmaProb isRepG1[kNumStates]; - CLzmaProb isRepG2[kNumStates]; - CLzmaProb isRep0Long[kNumStates][LZMA_NUM_PB_STATES_MAX]; - - CLzmaProb posSlotEncoder[kNumLenToPosStates][1 << kNumPosSlotBits]; - CLzmaProb posEncoders[kNumFullDistances - kEndPosModelIndex]; - CLzmaProb posAlignEncoder[1 << kNumAlignBits]; - - CLenPriceEnc lenEnc; - CLenPriceEnc repLenEnc; - - UInt32 reps[LZMA_NUM_REPS]; - UInt32 state; -} CSaveState; - -typedef struct _CLzmaEnc -{ - IMatchFinder matchFinder; - void *matchFinderObj; - - #ifdef COMPRESS_MF_MT - Bool mtMode; - CMatchFinderMt matchFinderMt; - #endif - - CMatchFinder matchFinderBase; - - #ifdef COMPRESS_MF_MT - Byte pad[128]; - #endif - - UInt32 optimumEndIndex; - UInt32 optimumCurrentIndex; - - Bool longestMatchWasFound; - UInt32 longestMatchLength; - UInt32 numDistancePairs; - - COptimal opt[kNumOpts]; - - #ifndef LZMA_LOG_BSR - Byte g_FastPos[1 << kNumLogBits]; - #endif - - UInt32 ProbPrices[kBitModelTotal >> kNumMoveReducingBits]; - UInt32 matchDistances[LZMA_MATCH_LEN_MAX * 2 + 2 + 1]; - UInt32 numFastBytes; - UInt32 additionalOffset; - UInt32 reps[LZMA_NUM_REPS]; - UInt32 state; - - UInt32 posSlotPrices[kNumLenToPosStates][kDistTableSizeMax]; - UInt32 distancesPrices[kNumLenToPosStates][kNumFullDistances]; - UInt32 alignPrices[kAlignTableSize]; - UInt32 alignPriceCount; - - UInt32 distTableSize; - - unsigned lc, lp, pb; - unsigned lpMask, pbMask; - - CLzmaProb *litProbs; - - CLzmaProb isMatch[kNumStates][LZMA_NUM_PB_STATES_MAX]; - CLzmaProb isRep[kNumStates]; - CLzmaProb isRepG0[kNumStates]; - CLzmaProb isRepG1[kNumStates]; - CLzmaProb isRepG2[kNumStates]; - CLzmaProb isRep0Long[kNumStates][LZMA_NUM_PB_STATES_MAX]; - - CLzmaProb posSlotEncoder[kNumLenToPosStates][1 << kNumPosSlotBits]; - CLzmaProb posEncoders[kNumFullDistances - kEndPosModelIndex]; - CLzmaProb posAlignEncoder[1 << kNumAlignBits]; - - CLenPriceEnc lenEnc; - CLenPriceEnc repLenEnc; - - unsigned lclp; - - Bool fastMode; - - CRangeEnc rc; - - Bool writeEndMark; - UInt64 nowPos64; - UInt32 matchPriceCount; - Bool finished; - Bool multiThread; - - SRes result; - UInt32 dictSize; - UInt32 matchFinderCycles; - - ISeqInStream *inStream; - CSeqInStreamBuf seqBufInStream; - - CSaveState saveState; -} CLzmaEnc; - -SRes LzmaEnc_SetProps(CLzmaEncHandle pp, const CLzmaEncProps *props2) -{ - CLzmaEnc *p = (CLzmaEnc *)pp; - CLzmaEncProps props = *props2; - LzmaEncProps_Normalize(&props); - - if (props.lc > LZMA_LC_MAX || props.lp > LZMA_LP_MAX || props.pb > LZMA_PB_MAX || - props.dictSize > (1U << kDicLogSizeMaxCompress) || props.dictSize > (1 << 30)) - return SZ_ERROR_PARAM; - p->dictSize = props.dictSize; - p->matchFinderCycles = props.mc; - { - unsigned fb = props.fb; - if (fb < 5) - fb = 5; - if (fb > LZMA_MATCH_LEN_MAX) - fb = LZMA_MATCH_LEN_MAX; - p->numFastBytes = fb; - } - p->lc = props.lc; - p->lp = props.lp; - p->pb = props.pb; - p->fastMode = (props.algo == 0); - p->matchFinderBase.btMode = props.btMode; - { - UInt32 numHashBytes = 4; - if (props.btMode) - { - if (props.numHashBytes < 2) - numHashBytes = 2; - else if (props.numHashBytes < 4) - numHashBytes = props.numHashBytes; - } - p->matchFinderBase.numHashBytes = numHashBytes; - } - - p->matchFinderBase.cutValue = props.mc; - - p->writeEndMark = props.writeEndMark; - - #ifdef COMPRESS_MF_MT - /* - if (newMultiThread != _multiThread) - { - ReleaseMatchFinder(); - _multiThread = newMultiThread; - } - */ - p->multiThread = (props.numThreads > 1); - #endif - - return SZ_OK; -} - -static const int kLiteralNextStates[kNumStates] = {0, 0, 0, 0, 1, 2, 3, 4, 5, 6, 4, 5}; -static const int kMatchNextStates[kNumStates] = {7, 7, 7, 7, 7, 7, 7, 10, 10, 10, 10, 10}; -static const int kRepNextStates[kNumStates] = {8, 8, 8, 8, 8, 8, 8, 11, 11, 11, 11, 11}; -static const int kShortRepNextStates[kNumStates]= {9, 9, 9, 9, 9, 9, 9, 11, 11, 11, 11, 11}; - -/* - void UpdateChar() { Index = kLiteralNextStates[Index]; } - void UpdateMatch() { Index = kMatchNextStates[Index]; } - void UpdateRep() { Index = kRepNextStates[Index]; } - void UpdateShortRep() { Index = kShortRepNextStates[Index]; } -*/ - -#define IsCharState(s) ((s) < 7) - - -#define GetLenToPosState(len) (((len) < kNumLenToPosStates + 1) ? (len) - 2 : kNumLenToPosStates - 1) - -#define kInfinityPrice (1 << 30) - -static void RangeEnc_Construct(CRangeEnc *p) -{ - p->outStream = 0; - p->bufBase = 0; -} - -#define RangeEnc_GetProcessed(p) ((p)->processed + ((p)->buf - (p)->bufBase) + (p)->cacheSize) - -#define RC_BUF_SIZE (1 << 16) -static int RangeEnc_Alloc(CRangeEnc *p, ISzAlloc *alloc) -{ - if (p->bufBase == 0) - { - p->bufBase = (Byte *)alloc->Alloc(alloc, RC_BUF_SIZE); - if (p->bufBase == 0) - return 0; - p->bufLim = p->bufBase + RC_BUF_SIZE; - } - return 1; -} - -static void RangeEnc_Free(CRangeEnc *p, ISzAlloc *alloc) -{ - alloc->Free(alloc, p->bufBase); - p->bufBase = 0; -} - -static void RangeEnc_Init(CRangeEnc *p) -{ - /* Stream.Init(); */ - p->low = 0; - p->range = 0xFFFFFFFF; - p->cacheSize = 1; - p->cache = 0; - - p->buf = p->bufBase; - - p->processed = 0; - p->res = SZ_OK; -} - -static void RangeEnc_FlushStream(CRangeEnc *p) -{ - size_t num; - if (p->res != SZ_OK) - return; - num = p->buf - p->bufBase; - if (num != p->outStream->Write(p->outStream, p->bufBase, num)) - p->res = SZ_ERROR_WRITE; - p->processed += num; - p->buf = p->bufBase; -} - -static void MY_FAST_CALL RangeEnc_ShiftLow(CRangeEnc *p) -{ - if ((UInt32)p->low < (UInt32)0xFF000000 || (int)(p->low >> 32) != 0) - { - Byte temp = p->cache; - do - { - Byte *buf = p->buf; - *buf++ = (Byte)(temp + (Byte)(p->low >> 32)); - p->buf = buf; - if (buf == p->bufLim) - RangeEnc_FlushStream(p); - temp = 0xFF; - } - while (--p->cacheSize != 0); - p->cache = (Byte)((UInt32)p->low >> 24); - } - p->cacheSize++; - p->low = (UInt32)p->low << 8; -} - -static void RangeEnc_FlushData(CRangeEnc *p) -{ - int i; - for (i = 0; i < 5; i++) - RangeEnc_ShiftLow(p); -} - -static void RangeEnc_EncodeDirectBits(CRangeEnc *p, UInt32 value, int numBits) -{ - do - { - p->range >>= 1; - p->low += p->range & (0 - ((value >> --numBits) & 1)); - if (p->range < kTopValue) - { - p->range <<= 8; - RangeEnc_ShiftLow(p); - } - } - while (numBits != 0); -} - -static void RangeEnc_EncodeBit(CRangeEnc *p, CLzmaProb *prob, UInt32 symbol) -{ - UInt32 ttt = *prob; - UInt32 newBound = (p->range >> kNumBitModelTotalBits) * ttt; - if (symbol == 0) - { - p->range = newBound; - ttt += (kBitModelTotal - ttt) >> kNumMoveBits; - } - else - { - p->low += newBound; - p->range -= newBound; - ttt -= ttt >> kNumMoveBits; - } - *prob = (CLzmaProb)ttt; - if (p->range < kTopValue) - { - p->range <<= 8; - RangeEnc_ShiftLow(p); - } -} - -static void LitEnc_Encode(CRangeEnc *p, CLzmaProb *probs, UInt32 symbol) -{ - symbol |= 0x100; - do - { - RangeEnc_EncodeBit(p, probs + (symbol >> 8), (symbol >> 7) & 1); - symbol <<= 1; - } - while (symbol < 0x10000); -} - -static void LitEnc_EncodeMatched(CRangeEnc *p, CLzmaProb *probs, UInt32 symbol, UInt32 matchByte) -{ - UInt32 offs = 0x100; - symbol |= 0x100; - do - { - matchByte <<= 1; - RangeEnc_EncodeBit(p, probs + (offs + (matchByte & offs) + (symbol >> 8)), (symbol >> 7) & 1); - symbol <<= 1; - offs &= ~(matchByte ^ symbol); - } - while (symbol < 0x10000); -} - -static void LzmaEnc_InitPriceTables(UInt32 *ProbPrices) -{ - UInt32 i; - for (i = (1 << kNumMoveReducingBits) / 2; i < kBitModelTotal; i += (1 << kNumMoveReducingBits)) - { - const int kCyclesBits = kNumBitPriceShiftBits; - UInt32 w = i; - UInt32 bitCount = 0; - int j; - for (j = 0; j < kCyclesBits; j++) - { - w = w * w; - bitCount <<= 1; - while (w >= ((UInt32)1 << 16)) - { - w >>= 1; - bitCount++; - } - } - ProbPrices[i >> kNumMoveReducingBits] = ((kNumBitModelTotalBits << kCyclesBits) - 15 - bitCount); - } -} - - -#define GET_PRICE(prob, symbol) \ - p->ProbPrices[((prob) ^ (((-(int)(symbol))) & (kBitModelTotal - 1))) >> kNumMoveReducingBits]; - -#define GET_PRICEa(prob, symbol) \ - ProbPrices[((prob) ^ ((-((int)(symbol))) & (kBitModelTotal - 1))) >> kNumMoveReducingBits]; - -#define GET_PRICE_0(prob) p->ProbPrices[(prob) >> kNumMoveReducingBits] -#define GET_PRICE_1(prob) p->ProbPrices[((prob) ^ (kBitModelTotal - 1)) >> kNumMoveReducingBits] - -#define GET_PRICE_0a(prob) ProbPrices[(prob) >> kNumMoveReducingBits] -#define GET_PRICE_1a(prob) ProbPrices[((prob) ^ (kBitModelTotal - 1)) >> kNumMoveReducingBits] - -static UInt32 LitEnc_GetPrice(const CLzmaProb *probs, UInt32 symbol, UInt32 *ProbPrices) -{ - UInt32 price = 0; - symbol |= 0x100; - do - { - price += GET_PRICEa(probs[symbol >> 8], (symbol >> 7) & 1); - symbol <<= 1; - } - while (symbol < 0x10000); - return price; -}; - -static UInt32 LitEnc_GetPriceMatched(const CLzmaProb *probs, UInt32 symbol, UInt32 matchByte, UInt32 *ProbPrices) -{ - UInt32 price = 0; - UInt32 offs = 0x100; - symbol |= 0x100; - do - { - matchByte <<= 1; - price += GET_PRICEa(probs[offs + (matchByte & offs) + (symbol >> 8)], (symbol >> 7) & 1); - symbol <<= 1; - offs &= ~(matchByte ^ symbol); - } - while (symbol < 0x10000); - return price; -}; - - -static void RcTree_Encode(CRangeEnc *rc, CLzmaProb *probs, int numBitLevels, UInt32 symbol) -{ - UInt32 m = 1; - int i; - for (i = numBitLevels; i != 0 ;) - { - UInt32 bit; - i--; - bit = (symbol >> i) & 1; - RangeEnc_EncodeBit(rc, probs + m, bit); - m = (m << 1) | bit; - } -}; - -static void RcTree_ReverseEncode(CRangeEnc *rc, CLzmaProb *probs, int numBitLevels, UInt32 symbol) -{ - UInt32 m = 1; - int i; - for (i = 0; i < numBitLevels; i++) - { - UInt32 bit = symbol & 1; - RangeEnc_EncodeBit(rc, probs + m, bit); - m = (m << 1) | bit; - symbol >>= 1; - } -} - -static UInt32 RcTree_GetPrice(const CLzmaProb *probs, int numBitLevels, UInt32 symbol, UInt32 *ProbPrices) -{ - UInt32 price = 0; - symbol |= (1 << numBitLevels); - while (symbol != 1) - { - price += GET_PRICEa(probs[symbol >> 1], symbol & 1); - symbol >>= 1; - } - return price; -} - -static UInt32 RcTree_ReverseGetPrice(const CLzmaProb *probs, int numBitLevels, UInt32 symbol, UInt32 *ProbPrices) -{ - UInt32 price = 0; - UInt32 m = 1; - int i; - for (i = numBitLevels; i != 0; i--) - { - UInt32 bit = symbol & 1; - symbol >>= 1; - price += GET_PRICEa(probs[m], bit); - m = (m << 1) | bit; - } - return price; -} - - -static void LenEnc_Init(CLenEnc *p) -{ - unsigned i; - p->choice = p->choice2 = kProbInitValue; - for (i = 0; i < (LZMA_NUM_PB_STATES_MAX << kLenNumLowBits); i++) - p->low[i] = kProbInitValue; - for (i = 0; i < (LZMA_NUM_PB_STATES_MAX << kLenNumMidBits); i++) - p->mid[i] = kProbInitValue; - for (i = 0; i < kLenNumHighSymbols; i++) - p->high[i] = kProbInitValue; -} - -static void LenEnc_Encode(CLenEnc *p, CRangeEnc *rc, UInt32 symbol, UInt32 posState) -{ - if (symbol < kLenNumLowSymbols) - { - RangeEnc_EncodeBit(rc, &p->choice, 0); - RcTree_Encode(rc, p->low + (posState << kLenNumLowBits), kLenNumLowBits, symbol); - } - else - { - RangeEnc_EncodeBit(rc, &p->choice, 1); - if (symbol < kLenNumLowSymbols + kLenNumMidSymbols) - { - RangeEnc_EncodeBit(rc, &p->choice2, 0); - RcTree_Encode(rc, p->mid + (posState << kLenNumMidBits), kLenNumMidBits, symbol - kLenNumLowSymbols); - } - else - { - RangeEnc_EncodeBit(rc, &p->choice2, 1); - RcTree_Encode(rc, p->high, kLenNumHighBits, symbol - kLenNumLowSymbols - kLenNumMidSymbols); - } - } -} - -static void LenEnc_SetPrices(CLenEnc *p, UInt32 posState, UInt32 numSymbols, UInt32 *prices, UInt32 *ProbPrices) -{ - UInt32 a0 = GET_PRICE_0a(p->choice); - UInt32 a1 = GET_PRICE_1a(p->choice); - UInt32 b0 = a1 + GET_PRICE_0a(p->choice2); - UInt32 b1 = a1 + GET_PRICE_1a(p->choice2); - UInt32 i = 0; - for (i = 0; i < kLenNumLowSymbols; i++) - { - if (i >= numSymbols) - return; - prices[i] = a0 + RcTree_GetPrice(p->low + (posState << kLenNumLowBits), kLenNumLowBits, i, ProbPrices); - } - for (; i < kLenNumLowSymbols + kLenNumMidSymbols; i++) - { - if (i >= numSymbols) - return; - prices[i] = b0 + RcTree_GetPrice(p->mid + (posState << kLenNumMidBits), kLenNumMidBits, i - kLenNumLowSymbols, ProbPrices); - } - for (; i < numSymbols; i++) - prices[i] = b1 + RcTree_GetPrice(p->high, kLenNumHighBits, i - kLenNumLowSymbols - kLenNumMidSymbols, ProbPrices); -} - -static void MY_FAST_CALL LenPriceEnc_UpdateTable(CLenPriceEnc *p, UInt32 posState, UInt32 *ProbPrices) -{ - LenEnc_SetPrices(&p->p, posState, p->tableSize, p->prices[posState], ProbPrices); - p->counters[posState] = p->tableSize; -} - -static void LenPriceEnc_UpdateTables(CLenPriceEnc *p, UInt32 numPosStates, UInt32 *ProbPrices) -{ - UInt32 posState; - for (posState = 0; posState < numPosStates; posState++) - LenPriceEnc_UpdateTable(p, posState, ProbPrices); -} - -static void LenEnc_Encode2(CLenPriceEnc *p, CRangeEnc *rc, UInt32 symbol, UInt32 posState, Bool updatePrice, UInt32 *ProbPrices) -{ - LenEnc_Encode(&p->p, rc, symbol, posState); - if (updatePrice) - if (--p->counters[posState] == 0) - LenPriceEnc_UpdateTable(p, posState, ProbPrices); -} - - - - -static void MovePos(CLzmaEnc *p, UInt32 num) -{ - #ifdef SHOW_STAT - ttt += num; - printf("\n MovePos %d", num); - #endif - if (num != 0) - { - p->additionalOffset += num; - p->matchFinder.Skip(p->matchFinderObj, num); - } -} - -static UInt32 ReadMatchDistances(CLzmaEnc *p, UInt32 *numDistancePairsRes) -{ - UInt32 lenRes = 0, numDistancePairs; - numDistancePairs = p->matchFinder.GetMatches(p->matchFinderObj, p->matchDistances); - #ifdef SHOW_STAT - printf("\n i = %d numPairs = %d ", ttt, numDistancePairs / 2); - if (ttt >= 61994) - ttt = ttt; - - ttt++; - { - UInt32 i; - for (i = 0; i < numDistancePairs; i += 2) - printf("%2d %6d | ", p->matchDistances[i], p->matchDistances[i + 1]); - } - #endif - if (numDistancePairs > 0) - { - lenRes = p->matchDistances[numDistancePairs - 2]; - if (lenRes == p->numFastBytes) - { - UInt32 numAvail = p->matchFinder.GetNumAvailableBytes(p->matchFinderObj) + 1; - const Byte *pby = p->matchFinder.GetPointerToCurrentPos(p->matchFinderObj) - 1; - UInt32 distance = p->matchDistances[numDistancePairs - 1] + 1; - if (numAvail > LZMA_MATCH_LEN_MAX) - numAvail = LZMA_MATCH_LEN_MAX; - - { - const Byte *pby2 = pby - distance; - for (; lenRes < numAvail && pby[lenRes] == pby2[lenRes]; lenRes++); - } - } - } - p->additionalOffset++; - *numDistancePairsRes = numDistancePairs; - return lenRes; -} - - -#define MakeAsChar(p) (p)->backPrev = (UInt32)(-1); (p)->prev1IsChar = False; -#define MakeAsShortRep(p) (p)->backPrev = 0; (p)->prev1IsChar = False; -#define IsShortRep(p) ((p)->backPrev == 0) - -static UInt32 GetRepLen1Price(CLzmaEnc *p, UInt32 state, UInt32 posState) -{ - return - GET_PRICE_0(p->isRepG0[state]) + - GET_PRICE_0(p->isRep0Long[state][posState]); -} - -static UInt32 GetPureRepPrice(CLzmaEnc *p, UInt32 repIndex, UInt32 state, UInt32 posState) -{ - UInt32 price; - if (repIndex == 0) - { - price = GET_PRICE_0(p->isRepG0[state]); - price += GET_PRICE_1(p->isRep0Long[state][posState]); - } - else - { - price = GET_PRICE_1(p->isRepG0[state]); - if (repIndex == 1) - price += GET_PRICE_0(p->isRepG1[state]); - else - { - price += GET_PRICE_1(p->isRepG1[state]); - price += GET_PRICE(p->isRepG2[state], repIndex - 2); - } - } - return price; -} - -static UInt32 GetRepPrice(CLzmaEnc *p, UInt32 repIndex, UInt32 len, UInt32 state, UInt32 posState) -{ - return p->repLenEnc.prices[posState][len - LZMA_MATCH_LEN_MIN] + - GetPureRepPrice(p, repIndex, state, posState); -} - -static UInt32 Backward(CLzmaEnc *p, UInt32 *backRes, UInt32 cur) -{ - UInt32 posMem = p->opt[cur].posPrev; - UInt32 backMem = p->opt[cur].backPrev; - p->optimumEndIndex = cur; - do - { - if (p->opt[cur].prev1IsChar) - { - MakeAsChar(&p->opt[posMem]) - p->opt[posMem].posPrev = posMem - 1; - if (p->opt[cur].prev2) - { - p->opt[posMem - 1].prev1IsChar = False; - p->opt[posMem - 1].posPrev = p->opt[cur].posPrev2; - p->opt[posMem - 1].backPrev = p->opt[cur].backPrev2; - } - } - { - UInt32 posPrev = posMem; - UInt32 backCur = backMem; - - backMem = p->opt[posPrev].backPrev; - posMem = p->opt[posPrev].posPrev; - - p->opt[posPrev].backPrev = backCur; - p->opt[posPrev].posPrev = cur; - cur = posPrev; - } - } - while (cur != 0); - *backRes = p->opt[0].backPrev; - p->optimumCurrentIndex = p->opt[0].posPrev; - return p->optimumCurrentIndex; -} - -#define LIT_PROBS(pos, prevByte) (p->litProbs + ((((pos) & p->lpMask) << p->lc) + ((prevByte) >> (8 - p->lc))) * 0x300) - -#pragma GCC diagnostic ignored "-Wshadow" - -static UInt32 GetOptimum(CLzmaEnc *p, UInt32 position, UInt32 *backRes) -{ - UInt32 numAvailableBytes, lenMain, numDistancePairs; - const Byte *data; - UInt32 reps[LZMA_NUM_REPS]; - UInt32 repLens[LZMA_NUM_REPS]; - UInt32 repMaxIndex, i; - UInt32 *matchDistances; - Byte currentByte, matchByte; - UInt32 posState; - UInt32 matchPrice, repMatchPrice; - UInt32 lenEnd; - UInt32 len; - UInt32 normalMatchPrice; - UInt32 cur; - if (p->optimumEndIndex != p->optimumCurrentIndex) - { - const COptimal *opt = &p->opt[p->optimumCurrentIndex]; - UInt32 lenRes = opt->posPrev - p->optimumCurrentIndex; - *backRes = opt->backPrev; - p->optimumCurrentIndex = opt->posPrev; - return lenRes; - } - p->optimumCurrentIndex = p->optimumEndIndex = 0; - - numAvailableBytes = p->matchFinder.GetNumAvailableBytes(p->matchFinderObj); - - if (!p->longestMatchWasFound) - { - lenMain = ReadMatchDistances(p, &numDistancePairs); - } - else - { - lenMain = p->longestMatchLength; - numDistancePairs = p->numDistancePairs; - p->longestMatchWasFound = False; - } - - data = p->matchFinder.GetPointerToCurrentPos(p->matchFinderObj) - 1; - if (numAvailableBytes < 2) - { - *backRes = (UInt32)(-1); - return 1; - } - if (numAvailableBytes > LZMA_MATCH_LEN_MAX) - numAvailableBytes = LZMA_MATCH_LEN_MAX; - - repMaxIndex = 0; - for (i = 0; i < LZMA_NUM_REPS; i++) - { - UInt32 lenTest; - const Byte *data2; - reps[i] = p->reps[i]; - data2 = data - (reps[i] + 1); - if (data[0] != data2[0] || data[1] != data2[1]) - { - repLens[i] = 0; - continue; - } - for (lenTest = 2; lenTest < numAvailableBytes && data[lenTest] == data2[lenTest]; lenTest++); - repLens[i] = lenTest; - if (lenTest > repLens[repMaxIndex]) - repMaxIndex = i; - } - if (repLens[repMaxIndex] >= p->numFastBytes) - { - UInt32 lenRes; - *backRes = repMaxIndex; - lenRes = repLens[repMaxIndex]; - MovePos(p, lenRes - 1); - return lenRes; - } - - matchDistances = p->matchDistances; - if (lenMain >= p->numFastBytes) - { - *backRes = matchDistances[numDistancePairs - 1] + LZMA_NUM_REPS; - MovePos(p, lenMain - 1); - return lenMain; - } - currentByte = *data; - matchByte = *(data - (reps[0] + 1)); - - if (lenMain < 2 && currentByte != matchByte && repLens[repMaxIndex] < 2) - { - *backRes = (UInt32)-1; - return 1; - } - - p->opt[0].state = (CState)p->state; - - posState = (position & p->pbMask); - - { - const CLzmaProb *probs = LIT_PROBS(position, *(data - 1)); - p->opt[1].price = GET_PRICE_0(p->isMatch[p->state][posState]) + - (!IsCharState(p->state) ? - LitEnc_GetPriceMatched(probs, currentByte, matchByte, p->ProbPrices) : - LitEnc_GetPrice(probs, currentByte, p->ProbPrices)); - } - - MakeAsChar(&p->opt[1]); - - matchPrice = GET_PRICE_1(p->isMatch[p->state][posState]); - repMatchPrice = matchPrice + GET_PRICE_1(p->isRep[p->state]); - - if (matchByte == currentByte) - { - UInt32 shortRepPrice = repMatchPrice + GetRepLen1Price(p, p->state, posState); - if (shortRepPrice < p->opt[1].price) - { - p->opt[1].price = shortRepPrice; - MakeAsShortRep(&p->opt[1]); - } - } - lenEnd = ((lenMain >= repLens[repMaxIndex]) ? lenMain : repLens[repMaxIndex]); - - if (lenEnd < 2) - { - *backRes = p->opt[1].backPrev; - return 1; - } - - p->opt[1].posPrev = 0; - for (i = 0; i < LZMA_NUM_REPS; i++) - p->opt[0].backs[i] = reps[i]; - - len = lenEnd; - do - p->opt[len--].price = kInfinityPrice; - while (len >= 2); - - for (i = 0; i < LZMA_NUM_REPS; i++) - { - UInt32 repLen = repLens[i]; - UInt32 price; - if (repLen < 2) - continue; - price = repMatchPrice + GetPureRepPrice(p, i, p->state, posState); - do - { - UInt32 curAndLenPrice = price + p->repLenEnc.prices[posState][repLen - 2]; - COptimal *opt = &p->opt[repLen]; - if (curAndLenPrice < opt->price) - { - opt->price = curAndLenPrice; - opt->posPrev = 0; - opt->backPrev = i; - opt->prev1IsChar = False; - } - } - while (--repLen >= 2); - } - - normalMatchPrice = matchPrice + GET_PRICE_0(p->isRep[p->state]); - - len = ((repLens[0] >= 2) ? repLens[0] + 1 : 2); - if (len <= lenMain) - { - UInt32 offs = 0; - while (len > matchDistances[offs]) - offs += 2; - for (; ; len++) - { - COptimal *opt; - UInt32 distance = matchDistances[offs + 1]; - - UInt32 curAndLenPrice = normalMatchPrice + p->lenEnc.prices[posState][len - LZMA_MATCH_LEN_MIN]; - UInt32 lenToPosState = GetLenToPosState(len); - if (distance < kNumFullDistances) - curAndLenPrice += p->distancesPrices[lenToPosState][distance]; - else - { - UInt32 slot; - GetPosSlot2(distance, slot); - curAndLenPrice += p->alignPrices[distance & kAlignMask] + p->posSlotPrices[lenToPosState][slot]; - } - opt = &p->opt[len]; - if (curAndLenPrice < opt->price) - { - opt->price = curAndLenPrice; - opt->posPrev = 0; - opt->backPrev = distance + LZMA_NUM_REPS; - opt->prev1IsChar = False; - } - if (len == matchDistances[offs]) - { - offs += 2; - if (offs == numDistancePairs) - break; - } - } - } - - cur = 0; - - #ifdef SHOW_STAT2 - if (position >= 0) - { - unsigned i; - printf("\n pos = %4X", position); - for (i = cur; i <= lenEnd; i++) - printf("\nprice[%4X] = %d", position - cur + i, p->opt[i].price); - } - #endif - - for (;;) - { - UInt32 numAvailableBytesFull, newLen, numDistancePairs; - COptimal *curOpt; - UInt32 posPrev; - UInt32 state; - UInt32 curPrice; - Bool nextIsChar; - const Byte *data; - Byte currentByte, matchByte; - UInt32 posState; - UInt32 curAnd1Price; - COptimal *nextOpt; - UInt32 matchPrice, repMatchPrice; - UInt32 numAvailableBytes; - UInt32 startLen; - - cur++; - if (cur == lenEnd) - return Backward(p, backRes, cur); - - numAvailableBytesFull = p->matchFinder.GetNumAvailableBytes(p->matchFinderObj); - newLen = ReadMatchDistances(p, &numDistancePairs); - if (newLen >= p->numFastBytes) - { - p->numDistancePairs = numDistancePairs; - p->longestMatchLength = newLen; - p->longestMatchWasFound = True; - return Backward(p, backRes, cur); - } - position++; - curOpt = &p->opt[cur]; - posPrev = curOpt->posPrev; - if (curOpt->prev1IsChar) - { - posPrev--; - if (curOpt->prev2) - { - state = p->opt[curOpt->posPrev2].state; - if (curOpt->backPrev2 < LZMA_NUM_REPS) - state = kRepNextStates[state]; - else - state = kMatchNextStates[state]; - } - else - state = p->opt[posPrev].state; - state = kLiteralNextStates[state]; - } - else - state = p->opt[posPrev].state; - if (posPrev == cur - 1) - { - if (IsShortRep(curOpt)) - state = kShortRepNextStates[state]; - else - state = kLiteralNextStates[state]; - } - else - { - UInt32 pos; - const COptimal *prevOpt; - if (curOpt->prev1IsChar && curOpt->prev2) - { - posPrev = curOpt->posPrev2; - pos = curOpt->backPrev2; - state = kRepNextStates[state]; - } - else - { - pos = curOpt->backPrev; - if (pos < LZMA_NUM_REPS) - state = kRepNextStates[state]; - else - state = kMatchNextStates[state]; - } - prevOpt = &p->opt[posPrev]; - if (pos < LZMA_NUM_REPS) - { - UInt32 i; - reps[0] = prevOpt->backs[pos]; - for (i = 1; i < pos + 1; i++) - reps[i] = prevOpt->backs[i - 1]; - for (; i < LZMA_NUM_REPS; i++) - reps[i] = prevOpt->backs[i]; - } - else - { - UInt32 i; - reps[0] = (pos - LZMA_NUM_REPS); - for (i = 1; i < LZMA_NUM_REPS; i++) - reps[i] = prevOpt->backs[i - 1]; - } - } - curOpt->state = (CState)state; - - curOpt->backs[0] = reps[0]; - curOpt->backs[1] = reps[1]; - curOpt->backs[2] = reps[2]; - curOpt->backs[3] = reps[3]; - - curPrice = curOpt->price; - nextIsChar = False; - data = p->matchFinder.GetPointerToCurrentPos(p->matchFinderObj) - 1; - currentByte = *data; - matchByte = *(data - (reps[0] + 1)); - - posState = (position & p->pbMask); - - curAnd1Price = curPrice + GET_PRICE_0(p->isMatch[state][posState]); - { - const CLzmaProb *probs = LIT_PROBS(position, *(data - 1)); - curAnd1Price += - (!IsCharState(state) ? - LitEnc_GetPriceMatched(probs, currentByte, matchByte, p->ProbPrices) : - LitEnc_GetPrice(probs, currentByte, p->ProbPrices)); - } - - nextOpt = &p->opt[cur + 1]; - - if (curAnd1Price < nextOpt->price) - { - nextOpt->price = curAnd1Price; - nextOpt->posPrev = cur; - MakeAsChar(nextOpt); - nextIsChar = True; - } - - matchPrice = curPrice + GET_PRICE_1(p->isMatch[state][posState]); - repMatchPrice = matchPrice + GET_PRICE_1(p->isRep[state]); - - if (matchByte == currentByte && !(nextOpt->posPrev < cur && nextOpt->backPrev == 0)) - { - UInt32 shortRepPrice = repMatchPrice + GetRepLen1Price(p, state, posState); - if (shortRepPrice <= nextOpt->price) - { - nextOpt->price = shortRepPrice; - nextOpt->posPrev = cur; - MakeAsShortRep(nextOpt); - nextIsChar = True; - } - } - - { - UInt32 temp = kNumOpts - 1 - cur; - if (temp < numAvailableBytesFull) - numAvailableBytesFull = temp; - } - numAvailableBytes = numAvailableBytesFull; - - if (numAvailableBytes < 2) - continue; - if (numAvailableBytes > p->numFastBytes) - numAvailableBytes = p->numFastBytes; - if (!nextIsChar && matchByte != currentByte) /* speed optimization */ - { - /* try Literal + rep0 */ - UInt32 temp; - UInt32 lenTest2; - const Byte *data2 = data - (reps[0] + 1); - UInt32 limit = p->numFastBytes + 1; - if (limit > numAvailableBytesFull) - limit = numAvailableBytesFull; - - for (temp = 1; temp < limit && data[temp] == data2[temp]; temp++); - lenTest2 = temp - 1; - if (lenTest2 >= 2) - { - UInt32 state2 = kLiteralNextStates[state]; - UInt32 posStateNext = (position + 1) & p->pbMask; - UInt32 nextRepMatchPrice = curAnd1Price + - GET_PRICE_1(p->isMatch[state2][posStateNext]) + - GET_PRICE_1(p->isRep[state2]); - /* for (; lenTest2 >= 2; lenTest2--) */ - { - UInt32 curAndLenPrice; - COptimal *opt; - UInt32 offset = cur + 1 + lenTest2; - while (lenEnd < offset) - p->opt[++lenEnd].price = kInfinityPrice; - curAndLenPrice = nextRepMatchPrice + GetRepPrice(p, 0, lenTest2, state2, posStateNext); - opt = &p->opt[offset]; - if (curAndLenPrice < opt->price) - { - opt->price = curAndLenPrice; - opt->posPrev = cur + 1; - opt->backPrev = 0; - opt->prev1IsChar = True; - opt->prev2 = False; - } - } - } - } - - startLen = 2; /* speed optimization */ - { - UInt32 repIndex; - for (repIndex = 0; repIndex < LZMA_NUM_REPS; repIndex++) - { - UInt32 lenTest; - UInt32 lenTestTemp; - UInt32 price; - const Byte *data2 = data - (reps[repIndex] + 1); - if (data[0] != data2[0] || data[1] != data2[1]) - continue; - for (lenTest = 2; lenTest < numAvailableBytes && data[lenTest] == data2[lenTest]; lenTest++); - while (lenEnd < cur + lenTest) - p->opt[++lenEnd].price = kInfinityPrice; - lenTestTemp = lenTest; - price = repMatchPrice + GetPureRepPrice(p, repIndex, state, posState); - do - { - UInt32 curAndLenPrice = price + p->repLenEnc.prices[posState][lenTest - 2]; - COptimal *opt = &p->opt[cur + lenTest]; - if (curAndLenPrice < opt->price) - { - opt->price = curAndLenPrice; - opt->posPrev = cur; - opt->backPrev = repIndex; - opt->prev1IsChar = False; - } - } - while (--lenTest >= 2); - lenTest = lenTestTemp; - - if (repIndex == 0) - startLen = lenTest + 1; - - /* if (_maxMode) */ - { - UInt32 lenTest2 = lenTest + 1; - UInt32 limit = lenTest2 + p->numFastBytes; - UInt32 nextRepMatchPrice; - if (limit > numAvailableBytesFull) - limit = numAvailableBytesFull; - for (; lenTest2 < limit && data[lenTest2] == data2[lenTest2]; lenTest2++); - lenTest2 -= lenTest + 1; - if (lenTest2 >= 2) - { - UInt32 state2 = kRepNextStates[state]; - UInt32 posStateNext = (position + lenTest) & p->pbMask; - UInt32 curAndLenCharPrice = - price + p->repLenEnc.prices[posState][lenTest - 2] + - GET_PRICE_0(p->isMatch[state2][posStateNext]) + - LitEnc_GetPriceMatched(LIT_PROBS(position + lenTest, data[lenTest - 1]), - data[lenTest], data2[lenTest], p->ProbPrices); - state2 = kLiteralNextStates[state2]; - posStateNext = (position + lenTest + 1) & p->pbMask; - nextRepMatchPrice = curAndLenCharPrice + - GET_PRICE_1(p->isMatch[state2][posStateNext]) + - GET_PRICE_1(p->isRep[state2]); - - /* for (; lenTest2 >= 2; lenTest2--) */ - { - UInt32 curAndLenPrice; - COptimal *opt; - UInt32 offset = cur + lenTest + 1 + lenTest2; - while (lenEnd < offset) - p->opt[++lenEnd].price = kInfinityPrice; - curAndLenPrice = nextRepMatchPrice + GetRepPrice(p, 0, lenTest2, state2, posStateNext); - opt = &p->opt[offset]; - if (curAndLenPrice < opt->price) - { - opt->price = curAndLenPrice; - opt->posPrev = cur + lenTest + 1; - opt->backPrev = 0; - opt->prev1IsChar = True; - opt->prev2 = True; - opt->posPrev2 = cur; - opt->backPrev2 = repIndex; - } - } - } - } - } - } - /* for (UInt32 lenTest = 2; lenTest <= newLen; lenTest++) */ - if (newLen > numAvailableBytes) - { - newLen = numAvailableBytes; - for (numDistancePairs = 0; newLen > matchDistances[numDistancePairs]; numDistancePairs += 2); - matchDistances[numDistancePairs] = newLen; - numDistancePairs += 2; - } - if (newLen >= startLen) - { - UInt32 normalMatchPrice = matchPrice + GET_PRICE_0(p->isRep[state]); - UInt32 offs, curBack, posSlot; - UInt32 lenTest; - while (lenEnd < cur + newLen) - p->opt[++lenEnd].price = kInfinityPrice; - - offs = 0; - while (startLen > matchDistances[offs]) - offs += 2; - curBack = matchDistances[offs + 1]; - GetPosSlot2(curBack, posSlot); - for (lenTest = /*2*/ startLen; ; lenTest++) - { - UInt32 curAndLenPrice = normalMatchPrice + p->lenEnc.prices[posState][lenTest - LZMA_MATCH_LEN_MIN]; - UInt32 lenToPosState = GetLenToPosState(lenTest); - COptimal *opt; - if (curBack < kNumFullDistances) - curAndLenPrice += p->distancesPrices[lenToPosState][curBack]; - else - curAndLenPrice += p->posSlotPrices[lenToPosState][posSlot] + p->alignPrices[curBack & kAlignMask]; - - opt = &p->opt[cur + lenTest]; - if (curAndLenPrice < opt->price) - { - opt->price = curAndLenPrice; - opt->posPrev = cur; - opt->backPrev = curBack + LZMA_NUM_REPS; - opt->prev1IsChar = False; - } - - if (/*_maxMode && */lenTest == matchDistances[offs]) - { - /* Try Match + Literal + Rep0 */ - const Byte *data2 = data - (curBack + 1); - UInt32 lenTest2 = lenTest + 1; - UInt32 limit = lenTest2 + p->numFastBytes; - UInt32 nextRepMatchPrice; - if (limit > numAvailableBytesFull) - limit = numAvailableBytesFull; - for (; lenTest2 < limit && data[lenTest2] == data2[lenTest2]; lenTest2++); - lenTest2 -= lenTest + 1; - if (lenTest2 >= 2) - { - UInt32 state2 = kMatchNextStates[state]; - UInt32 posStateNext = (position + lenTest) & p->pbMask; - UInt32 curAndLenCharPrice = curAndLenPrice + - GET_PRICE_0(p->isMatch[state2][posStateNext]) + - LitEnc_GetPriceMatched(LIT_PROBS(position + lenTest, data[lenTest - 1]), - data[lenTest], data2[lenTest], p->ProbPrices); - state2 = kLiteralNextStates[state2]; - posStateNext = (posStateNext + 1) & p->pbMask; - nextRepMatchPrice = curAndLenCharPrice + - GET_PRICE_1(p->isMatch[state2][posStateNext]) + - GET_PRICE_1(p->isRep[state2]); - - /* for (; lenTest2 >= 2; lenTest2--) */ - { - UInt32 offset = cur + lenTest + 1 + lenTest2; - UInt32 curAndLenPrice; - COptimal *opt; - while (lenEnd < offset) - p->opt[++lenEnd].price = kInfinityPrice; - curAndLenPrice = nextRepMatchPrice + GetRepPrice(p, 0, lenTest2, state2, posStateNext); - opt = &p->opt[offset]; - if (curAndLenPrice < opt->price) - { - opt->price = curAndLenPrice; - opt->posPrev = cur + lenTest + 1; - opt->backPrev = 0; - opt->prev1IsChar = True; - opt->prev2 = True; - opt->posPrev2 = cur; - opt->backPrev2 = curBack + LZMA_NUM_REPS; - } - } - } - offs += 2; - if (offs == numDistancePairs) - break; - curBack = matchDistances[offs + 1]; - if (curBack >= kNumFullDistances) - GetPosSlot2(curBack, posSlot); - } - } - } - } -} - -#define ChangePair(smallDist, bigDist) (((bigDist) >> 7) > (smallDist)) - -static UInt32 GetOptimumFast(CLzmaEnc *p, UInt32 *backRes) -{ - UInt32 numAvailableBytes = p->matchFinder.GetNumAvailableBytes(p->matchFinderObj); - UInt32 lenMain, numDistancePairs; - const Byte *data; - UInt32 repLens[LZMA_NUM_REPS]; - UInt32 repMaxIndex, i; - UInt32 *matchDistances; - UInt32 backMain; - - if (!p->longestMatchWasFound) - { - lenMain = ReadMatchDistances(p, &numDistancePairs); - } - else - { - lenMain = p->longestMatchLength; - numDistancePairs = p->numDistancePairs; - p->longestMatchWasFound = False; - } - - data = p->matchFinder.GetPointerToCurrentPos(p->matchFinderObj) - 1; - if (numAvailableBytes > LZMA_MATCH_LEN_MAX) - numAvailableBytes = LZMA_MATCH_LEN_MAX; - if (numAvailableBytes < 2) - { - *backRes = (UInt32)(-1); - return 1; - } - - repMaxIndex = 0; - - for (i = 0; i < LZMA_NUM_REPS; i++) - { - const Byte *data2 = data - (p->reps[i] + 1); - UInt32 len; - if (data[0] != data2[0] || data[1] != data2[1]) - { - repLens[i] = 0; - continue; - } - for (len = 2; len < numAvailableBytes && data[len] == data2[len]; len++); - if (len >= p->numFastBytes) - { - *backRes = i; - MovePos(p, len - 1); - return len; - } - repLens[i] = len; - if (len > repLens[repMaxIndex]) - repMaxIndex = i; - } - matchDistances = p->matchDistances; - if (lenMain >= p->numFastBytes) - { - *backRes = matchDistances[numDistancePairs - 1] + LZMA_NUM_REPS; - MovePos(p, lenMain - 1); - return lenMain; - } - - backMain = 0; /* for GCC */ - if (lenMain >= 2) - { - backMain = matchDistances[numDistancePairs - 1]; - while (numDistancePairs > 2 && lenMain == matchDistances[numDistancePairs - 4] + 1) - { - if (!ChangePair(matchDistances[numDistancePairs - 3], backMain)) - break; - numDistancePairs -= 2; - lenMain = matchDistances[numDistancePairs - 2]; - backMain = matchDistances[numDistancePairs - 1]; - } - if (lenMain == 2 && backMain >= 0x80) - lenMain = 1; - } - - if (repLens[repMaxIndex] >= 2) - { - if (repLens[repMaxIndex] + 1 >= lenMain || - (repLens[repMaxIndex] + 2 >= lenMain && (backMain > (1 << 9))) || - (repLens[repMaxIndex] + 3 >= lenMain && (backMain > (1 << 15)))) - { - UInt32 lenRes; - *backRes = repMaxIndex; - lenRes = repLens[repMaxIndex]; - MovePos(p, lenRes - 1); - return lenRes; - } - } - - if (lenMain >= 2 && numAvailableBytes > 2) - { - UInt32 i; - numAvailableBytes = p->matchFinder.GetNumAvailableBytes(p->matchFinderObj); - p->longestMatchLength = ReadMatchDistances(p, &p->numDistancePairs); - if (p->longestMatchLength >= 2) - { - UInt32 newDistance = matchDistances[p->numDistancePairs - 1]; - if ((p->longestMatchLength >= lenMain && newDistance < backMain) || - (p->longestMatchLength == lenMain + 1 && !ChangePair(backMain, newDistance)) || - (p->longestMatchLength > lenMain + 1) || - (p->longestMatchLength + 1 >= lenMain && lenMain >= 3 && ChangePair(newDistance, backMain))) - { - p->longestMatchWasFound = True; - *backRes = (UInt32)(-1); - return 1; - } - } - data = p->matchFinder.GetPointerToCurrentPos(p->matchFinderObj) - 1; - for (i = 0; i < LZMA_NUM_REPS; i++) - { - UInt32 len; - const Byte *data2 = data - (p->reps[i] + 1); - if (data[1] != data2[1] || data[2] != data2[2]) - { - repLens[i] = 0; - continue; - } - for (len = 2; len < numAvailableBytes && data[len] == data2[len]; len++); - if (len + 1 >= lenMain) - { - p->longestMatchWasFound = True; - *backRes = (UInt32)(-1); - return 1; - } - } - *backRes = backMain + LZMA_NUM_REPS; - MovePos(p, lenMain - 2); - return lenMain; - } - *backRes = (UInt32)(-1); - return 1; -} - -static void WriteEndMarker(CLzmaEnc *p, UInt32 posState) -{ - UInt32 len; - RangeEnc_EncodeBit(&p->rc, &p->isMatch[p->state][posState], 1); - RangeEnc_EncodeBit(&p->rc, &p->isRep[p->state], 0); - p->state = kMatchNextStates[p->state]; - len = LZMA_MATCH_LEN_MIN; - LenEnc_Encode2(&p->lenEnc, &p->rc, len - LZMA_MATCH_LEN_MIN, posState, !p->fastMode, p->ProbPrices); - RcTree_Encode(&p->rc, p->posSlotEncoder[GetLenToPosState(len)], kNumPosSlotBits, (1 << kNumPosSlotBits) - 1); - RangeEnc_EncodeDirectBits(&p->rc, (((UInt32)1 << 30) - 1) >> kNumAlignBits, 30 - kNumAlignBits); - RcTree_ReverseEncode(&p->rc, p->posAlignEncoder, kNumAlignBits, kAlignMask); -} - -static SRes CheckErrors(CLzmaEnc *p) -{ - if (p->result != SZ_OK) - return p->result; - if (p->rc.res != SZ_OK) - p->result = SZ_ERROR_WRITE; - if (p->matchFinderBase.result != SZ_OK) - p->result = SZ_ERROR_READ; - if (p->result != SZ_OK) - p->finished = True; - return p->result; -} - -static SRes Flush(CLzmaEnc *p, UInt32 nowPos) -{ - /* ReleaseMFStream(); */ - p->finished = True; - if (p->writeEndMark) - WriteEndMarker(p, nowPos & p->pbMask); - RangeEnc_FlushData(&p->rc); - RangeEnc_FlushStream(&p->rc); - return CheckErrors(p); -} - -static void FillAlignPrices(CLzmaEnc *p) -{ - UInt32 i; - for (i = 0; i < kAlignTableSize; i++) - p->alignPrices[i] = RcTree_ReverseGetPrice(p->posAlignEncoder, kNumAlignBits, i, p->ProbPrices); - p->alignPriceCount = 0; -} - -static void FillDistancesPrices(CLzmaEnc *p) -{ - UInt32 tempPrices[kNumFullDistances]; - UInt32 i, lenToPosState; - for (i = kStartPosModelIndex; i < kNumFullDistances; i++) - { - UInt32 posSlot = GetPosSlot1(i); - UInt32 footerBits = ((posSlot >> 1) - 1); - UInt32 base = ((2 | (posSlot & 1)) << footerBits); - tempPrices[i] = RcTree_ReverseGetPrice(p->posEncoders + base - posSlot - 1, footerBits, i - base, p->ProbPrices); - } - - for (lenToPosState = 0; lenToPosState < kNumLenToPosStates; lenToPosState++) - { - UInt32 posSlot; - const CLzmaProb *encoder = p->posSlotEncoder[lenToPosState]; - UInt32 *posSlotPrices = p->posSlotPrices[lenToPosState]; - for (posSlot = 0; posSlot < p->distTableSize; posSlot++) - posSlotPrices[posSlot] = RcTree_GetPrice(encoder, kNumPosSlotBits, posSlot, p->ProbPrices); - for (posSlot = kEndPosModelIndex; posSlot < p->distTableSize; posSlot++) - posSlotPrices[posSlot] += ((((posSlot >> 1) - 1) - kNumAlignBits) << kNumBitPriceShiftBits); - - { - UInt32 *distancesPrices = p->distancesPrices[lenToPosState]; - UInt32 i; - for (i = 0; i < kStartPosModelIndex; i++) - distancesPrices[i] = posSlotPrices[i]; - for (; i < kNumFullDistances; i++) - distancesPrices[i] = posSlotPrices[GetPosSlot1(i)] + tempPrices[i]; - } - } - p->matchPriceCount = 0; -} - -static void LzmaEnc_Construct(CLzmaEnc *p) -{ - RangeEnc_Construct(&p->rc); - MatchFinder_Construct(&p->matchFinderBase); - #ifdef COMPRESS_MF_MT - MatchFinderMt_Construct(&p->matchFinderMt); - p->matchFinderMt.MatchFinder = &p->matchFinderBase; - #endif - - { - CLzmaEncProps props; - LzmaEncProps_Init(&props); - LzmaEnc_SetProps(p, &props); - } - - #ifndef LZMA_LOG_BSR - LzmaEnc_FastPosInit(p->g_FastPos); - #endif - - LzmaEnc_InitPriceTables(p->ProbPrices); - p->litProbs = 0; - p->saveState.litProbs = 0; -} - -CLzmaEncHandle LzmaEnc_Create(ISzAlloc *alloc) -{ - void *p; - p = alloc->Alloc(alloc, sizeof(CLzmaEnc)); - if (p != 0) - LzmaEnc_Construct((CLzmaEnc *)p); - return p; -} - -static void LzmaEnc_FreeLits(CLzmaEnc *p, ISzAlloc *alloc) -{ - alloc->Free(alloc, p->litProbs); - alloc->Free(alloc, p->saveState.litProbs); - p->litProbs = 0; - p->saveState.litProbs = 0; -} - -static void LzmaEnc_Destruct(CLzmaEnc *p, ISzAlloc *alloc, ISzAlloc *allocBig) -{ - #ifdef COMPRESS_MF_MT - MatchFinderMt_Destruct(&p->matchFinderMt, allocBig); - #endif - MatchFinder_Free(&p->matchFinderBase, allocBig); - LzmaEnc_FreeLits(p, alloc); - RangeEnc_Free(&p->rc, alloc); -} - -void LzmaEnc_Destroy(CLzmaEncHandle p, ISzAlloc *alloc, ISzAlloc *allocBig) -{ - LzmaEnc_Destruct((CLzmaEnc *)p, alloc, allocBig); - alloc->Free(alloc, p); -} - -static SRes LzmaEnc_CodeOneBlock(CLzmaEnc *p, Bool useLimits, UInt32 maxPackSize, UInt32 maxUnpackSize) -{ - UInt32 nowPos32, startPos32; - if (p->inStream != 0) - { - p->matchFinderBase.stream = p->inStream; - p->matchFinder.Init(p->matchFinderObj); - p->inStream = 0; - } - - if (p->finished) - return p->result; - RINOK(CheckErrors(p)); - - nowPos32 = (UInt32)p->nowPos64; - startPos32 = nowPos32; - - if (p->nowPos64 == 0) - { - UInt32 numDistancePairs; - Byte curByte; - if (p->matchFinder.GetNumAvailableBytes(p->matchFinderObj) == 0) - return Flush(p, nowPos32); - ReadMatchDistances(p, &numDistancePairs); - RangeEnc_EncodeBit(&p->rc, &p->isMatch[p->state][0], 0); - p->state = kLiteralNextStates[p->state]; - curByte = p->matchFinder.GetIndexByte(p->matchFinderObj, 0 - p->additionalOffset); - LitEnc_Encode(&p->rc, p->litProbs, curByte); - p->additionalOffset--; - nowPos32++; - } - - if (p->matchFinder.GetNumAvailableBytes(p->matchFinderObj) != 0) - for (;;) - { - UInt32 pos, len, posState; - - if (p->fastMode) - len = GetOptimumFast(p, &pos); - else - len = GetOptimum(p, nowPos32, &pos); - - #ifdef SHOW_STAT2 - printf("\n pos = %4X, len = %d pos = %d", nowPos32, len, pos); - #endif - - posState = nowPos32 & p->pbMask; - if (len == 1 && pos == 0xFFFFFFFF) - { - Byte curByte; - CLzmaProb *probs; - const Byte *data; - - RangeEnc_EncodeBit(&p->rc, &p->isMatch[p->state][posState], 0); - data = p->matchFinder.GetPointerToCurrentPos(p->matchFinderObj) - p->additionalOffset; - curByte = *data; - probs = LIT_PROBS(nowPos32, *(data - 1)); - if (IsCharState(p->state)) - LitEnc_Encode(&p->rc, probs, curByte); - else - LitEnc_EncodeMatched(&p->rc, probs, curByte, *(data - p->reps[0] - 1)); - p->state = kLiteralNextStates[p->state]; - } - else - { - RangeEnc_EncodeBit(&p->rc, &p->isMatch[p->state][posState], 1); - if (pos < LZMA_NUM_REPS) - { - RangeEnc_EncodeBit(&p->rc, &p->isRep[p->state], 1); - if (pos == 0) - { - RangeEnc_EncodeBit(&p->rc, &p->isRepG0[p->state], 0); - RangeEnc_EncodeBit(&p->rc, &p->isRep0Long[p->state][posState], ((len == 1) ? 0 : 1)); - } - else - { - UInt32 distance = p->reps[pos]; - RangeEnc_EncodeBit(&p->rc, &p->isRepG0[p->state], 1); - if (pos == 1) - RangeEnc_EncodeBit(&p->rc, &p->isRepG1[p->state], 0); - else - { - RangeEnc_EncodeBit(&p->rc, &p->isRepG1[p->state], 1); - RangeEnc_EncodeBit(&p->rc, &p->isRepG2[p->state], pos - 2); - if (pos == 3) - p->reps[3] = p->reps[2]; - p->reps[2] = p->reps[1]; - } - p->reps[1] = p->reps[0]; - p->reps[0] = distance; - } - if (len == 1) - p->state = kShortRepNextStates[p->state]; - else - { - LenEnc_Encode2(&p->repLenEnc, &p->rc, len - LZMA_MATCH_LEN_MIN, posState, !p->fastMode, p->ProbPrices); - p->state = kRepNextStates[p->state]; - } - } - else - { - UInt32 posSlot; - RangeEnc_EncodeBit(&p->rc, &p->isRep[p->state], 0); - p->state = kMatchNextStates[p->state]; - LenEnc_Encode2(&p->lenEnc, &p->rc, len - LZMA_MATCH_LEN_MIN, posState, !p->fastMode, p->ProbPrices); - pos -= LZMA_NUM_REPS; - GetPosSlot(pos, posSlot); - RcTree_Encode(&p->rc, p->posSlotEncoder[GetLenToPosState(len)], kNumPosSlotBits, posSlot); - - if (posSlot >= kStartPosModelIndex) - { - UInt32 footerBits = ((posSlot >> 1) - 1); - UInt32 base = ((2 | (posSlot & 1)) << footerBits); - UInt32 posReduced = pos - base; - - if (posSlot < kEndPosModelIndex) - RcTree_ReverseEncode(&p->rc, p->posEncoders + base - posSlot - 1, footerBits, posReduced); - else - { - RangeEnc_EncodeDirectBits(&p->rc, posReduced >> kNumAlignBits, footerBits - kNumAlignBits); - RcTree_ReverseEncode(&p->rc, p->posAlignEncoder, kNumAlignBits, posReduced & kAlignMask); - p->alignPriceCount++; - } - } - p->reps[3] = p->reps[2]; - p->reps[2] = p->reps[1]; - p->reps[1] = p->reps[0]; - p->reps[0] = pos; - p->matchPriceCount++; - } - } - p->additionalOffset -= len; - nowPos32 += len; - if (p->additionalOffset == 0) - { - UInt32 processed; - if (!p->fastMode) - { - if (p->matchPriceCount >= (1 << 7)) - FillDistancesPrices(p); - if (p->alignPriceCount >= kAlignTableSize) - FillAlignPrices(p); - } - if (p->matchFinder.GetNumAvailableBytes(p->matchFinderObj) == 0) - break; - processed = nowPos32 - startPos32; - if (useLimits) - { - if (processed + kNumOpts + 300 >= maxUnpackSize || - RangeEnc_GetProcessed(&p->rc) + kNumOpts * 2 >= maxPackSize) - break; - } - else if (processed >= (1 << 15)) - { - p->nowPos64 += nowPos32 - startPos32; - return CheckErrors(p); - } - } - } - p->nowPos64 += nowPos32 - startPos32; - return Flush(p, nowPos32); -} - -#define kBigHashDicLimit ((UInt32)1 << 24) - -static SRes LzmaEnc_Alloc(CLzmaEnc *p, UInt32 keepWindowSize, ISzAlloc *alloc, ISzAlloc *allocBig) -{ - UInt32 beforeSize = kNumOpts; -#ifdef COMPRESS_MF_MT - Bool btMode; -#endif - if (!RangeEnc_Alloc(&p->rc, alloc)) - return SZ_ERROR_MEM; -#ifdef COMPRESS_MF_MT - btMode = (p->matchFinderBase.btMode != 0); - p->mtMode = (p->multiThread && !p->fastMode && btMode); -#endif - - { - unsigned lclp = p->lc + p->lp; - if (p->litProbs == 0 || p->saveState.litProbs == 0 || p->lclp != lclp) - { - LzmaEnc_FreeLits(p, alloc); - p->litProbs = (CLzmaProb *)alloc->Alloc(alloc, (0x300 << lclp) * sizeof(CLzmaProb)); - p->saveState.litProbs = (CLzmaProb *)alloc->Alloc(alloc, (0x300 << lclp) * sizeof(CLzmaProb)); - if (p->litProbs == 0 || p->saveState.litProbs == 0) - { - LzmaEnc_FreeLits(p, alloc); - return SZ_ERROR_MEM; - } - p->lclp = lclp; - } - } - - p->matchFinderBase.bigHash = (p->dictSize > kBigHashDicLimit); - - if (beforeSize + p->dictSize < keepWindowSize) - beforeSize = keepWindowSize - p->dictSize; - - #ifdef COMPRESS_MF_MT - if (p->mtMode) - { - RINOK(MatchFinderMt_Create(&p->matchFinderMt, p->dictSize, beforeSize, p->numFastBytes, LZMA_MATCH_LEN_MAX, allocBig)); - p->matchFinderObj = &p->matchFinderMt; - MatchFinderMt_CreateVTable(&p->matchFinderMt, &p->matchFinder); - } - else - #endif - { - if (!MatchFinder_Create(&p->matchFinderBase, p->dictSize, beforeSize, p->numFastBytes, LZMA_MATCH_LEN_MAX, allocBig)) - return SZ_ERROR_MEM; - p->matchFinderObj = &p->matchFinderBase; - MatchFinder_CreateVTable(&p->matchFinderBase, &p->matchFinder); - } - return SZ_OK; -} - -static void LzmaEnc_Init(CLzmaEnc *p) -{ - UInt32 i; - p->state = 0; - for(i = 0 ; i < LZMA_NUM_REPS; i++) - p->reps[i] = 0; - - RangeEnc_Init(&p->rc); - - - for (i = 0; i < kNumStates; i++) - { - UInt32 j; - for (j = 0; j < LZMA_NUM_PB_STATES_MAX; j++) - { - p->isMatch[i][j] = kProbInitValue; - p->isRep0Long[i][j] = kProbInitValue; - } - p->isRep[i] = kProbInitValue; - p->isRepG0[i] = kProbInitValue; - p->isRepG1[i] = kProbInitValue; - p->isRepG2[i] = kProbInitValue; - } - - { - UInt32 num = 0x300 << (p->lp + p->lc); - for (i = 0; i < num; i++) - p->litProbs[i] = kProbInitValue; - } - - { - for (i = 0; i < kNumLenToPosStates; i++) - { - CLzmaProb *probs = p->posSlotEncoder[i]; - UInt32 j; - for (j = 0; j < (1 << kNumPosSlotBits); j++) - probs[j] = kProbInitValue; - } - } - { - for(i = 0; i < kNumFullDistances - kEndPosModelIndex; i++) - p->posEncoders[i] = kProbInitValue; - } - - LenEnc_Init(&p->lenEnc.p); - LenEnc_Init(&p->repLenEnc.p); - - for (i = 0; i < (1 << kNumAlignBits); i++) - p->posAlignEncoder[i] = kProbInitValue; - - p->longestMatchWasFound = False; - p->optimumEndIndex = 0; - p->optimumCurrentIndex = 0; - p->additionalOffset = 0; - - p->pbMask = (1 << p->pb) - 1; - p->lpMask = (1 << p->lp) - 1; -} - -static void LzmaEnc_InitPrices(CLzmaEnc *p) -{ - if (!p->fastMode) - { - FillDistancesPrices(p); - FillAlignPrices(p); - } - - p->lenEnc.tableSize = - p->repLenEnc.tableSize = - p->numFastBytes + 1 - LZMA_MATCH_LEN_MIN; - LenPriceEnc_UpdateTables(&p->lenEnc, 1 << p->pb, p->ProbPrices); - LenPriceEnc_UpdateTables(&p->repLenEnc, 1 << p->pb, p->ProbPrices); -} - -static SRes LzmaEnc_AllocAndInit(CLzmaEnc *p, UInt32 keepWindowSize, ISzAlloc *alloc, ISzAlloc *allocBig) -{ - UInt32 i; - for (i = 0; i < (UInt32)kDicLogSizeMaxCompress; i++) - if (p->dictSize <= ((UInt32)1 << i)) - break; - p->distTableSize = i * 2; - - p->finished = False; - p->result = SZ_OK; - RINOK(LzmaEnc_Alloc(p, keepWindowSize, alloc, allocBig)); - LzmaEnc_Init(p); - LzmaEnc_InitPrices(p); - p->nowPos64 = 0; - return SZ_OK; -} - -static SRes LzmaEnc_Prepare(CLzmaEncHandle pp, ISeqInStream *inStream, ISeqOutStream *outStream, - ISzAlloc *alloc, ISzAlloc *allocBig) -{ - CLzmaEnc *p = (CLzmaEnc *)pp; - p->inStream = inStream; - p->rc.outStream = outStream; - return LzmaEnc_AllocAndInit(p, 0, alloc, allocBig); -} - -static void LzmaEnc_SetInputBuf(CLzmaEnc *p, const Byte *src, SizeT srcLen) -{ - p->seqBufInStream.funcTable.Read = MyRead; - p->seqBufInStream.data = src; - p->seqBufInStream.rem = srcLen; -} - -static void LzmaEnc_Finish(CLzmaEncHandle pp) -{ - #ifdef COMPRESS_MF_MT - CLzmaEnc *p = (CLzmaEnc *)pp; - if (p->mtMode) - MatchFinderMt_ReleaseStream(&p->matchFinderMt); - #else - (void)pp; - #endif -} - -typedef struct _CSeqOutStreamBuf -{ - ISeqOutStream funcTable; - Byte *data; - SizeT rem; - Bool overflow; -} CSeqOutStreamBuf; - -static size_t MyWrite(void *pp, const void *data, size_t size) -{ - CSeqOutStreamBuf *p = (CSeqOutStreamBuf *)pp; - if (p->rem < size) - { - size = p->rem; - p->overflow = True; - } - memcpy(p->data, data, size); - p->rem -= size; - p->data += size; - return size; -} - -SRes LzmaEnc_Encode(CLzmaEncHandle pp, ISeqOutStream *outStream, ISeqInStream *inStream, ICompressProgress *progress, - ISzAlloc *alloc, ISzAlloc *allocBig) -{ - CLzmaEnc *p = (CLzmaEnc *)pp; - SRes res = SZ_OK; - - #ifdef COMPRESS_MF_MT - Byte allocaDummy[0x300]; - int i = 0; - for (i = 0; i < 16; i++) - allocaDummy[i] = (Byte)i; - #endif - - RINOK(LzmaEnc_Prepare(pp, inStream, outStream, alloc, allocBig)); - - for (;;) - { - res = LzmaEnc_CodeOneBlock(pp, False, 0, 0); - if (res != SZ_OK || p->finished != 0) - break; - if (progress != 0) - { - res = progress->Progress(progress, p->nowPos64, RangeEnc_GetProcessed(&p->rc)); - if (res != SZ_OK) - { - res = SZ_ERROR_PROGRESS; - break; - } - } - } - LzmaEnc_Finish(pp); - return res; -} - -SRes LzmaEnc_WriteProperties(CLzmaEncHandle pp, Byte *props, SizeT *size) -{ - CLzmaEnc *p = (CLzmaEnc *)pp; - int i; - UInt32 dictSize = p->dictSize; - if (*size < LZMA_PROPS_SIZE) - return SZ_ERROR_PARAM; - *size = LZMA_PROPS_SIZE; - props[0] = (Byte)((p->pb * 5 + p->lp) * 9 + p->lc); - - for (i = 11; i <= 30; i++) - { - if (dictSize <= ((UInt32)2 << i)) - { - dictSize = (2 << i); - break; - } - if (dictSize <= ((UInt32)3 << i)) - { - dictSize = (3 << i); - break; - } - } - - for (i = 0; i < 4; i++) - props[1 + i] = (Byte)(dictSize >> (8 * i)); - return SZ_OK; -} - -SRes LzmaEnc_MemEncode(CLzmaEncHandle pp, Byte *dest, SizeT *destLen, const Byte *src, SizeT srcLen, - int writeEndMark, ICompressProgress *progress, ISzAlloc *alloc, ISzAlloc *allocBig) -{ - SRes res; - CLzmaEnc *p = (CLzmaEnc *)pp; - - CSeqOutStreamBuf outStream; - - LzmaEnc_SetInputBuf(p, src, srcLen); - - outStream.funcTable.Write = MyWrite; - outStream.data = dest; - outStream.rem = *destLen; - outStream.overflow = False; - - p->writeEndMark = writeEndMark; - res = LzmaEnc_Encode(pp, &outStream.funcTable, &p->seqBufInStream.funcTable, - progress, alloc, allocBig); - - *destLen -= outStream.rem; - if (outStream.overflow) - return SZ_ERROR_OUTPUT_EOF; - return res; -} - -SRes LzmaEncode(Byte *dest, SizeT *destLen, const Byte *src, SizeT srcLen, - const CLzmaEncProps *props, Byte *propsEncoded, SizeT *propsSize, int writeEndMark, - ICompressProgress *progress, ISzAlloc *alloc, ISzAlloc *allocBig) -{ - CLzmaEnc *p = (CLzmaEnc *)LzmaEnc_Create(alloc); - SRes res; - if (p == 0) - return SZ_ERROR_MEM; - - res = LzmaEnc_SetProps(p, props); - if (res == SZ_OK) - { - res = LzmaEnc_WriteProperties(p, propsEncoded, propsSize); - if (res == SZ_OK) - res = LzmaEnc_MemEncode(p, dest, destLen, src, srcLen, - writeEndMark, progress, alloc, allocBig); - } - - LzmaEnc_Destroy(p, alloc, allocBig); - return res; -} diff --git a/thirdparty/grub-2.04/grub-core/lib/adler32.c b/thirdparty/grub-2.04/grub-core/lib/adler32.c deleted file mode 100644 index 43b68af62..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/adler32.c +++ /dev/null @@ -1,102 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2012 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - - -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -struct adler32_context -{ - grub_uint16_t a, b; - grub_uint32_t c; -}; - -static void -adler32_init (void *context) -{ - struct adler32_context *ctx = context; - - ctx->a = 1; - ctx->b = 0; -} - -#define MOD 65521 - -static grub_uint16_t -mod_add (grub_uint16_t a, grub_uint16_t b) -{ - if ((grub_uint32_t) a + (grub_uint32_t) b >= MOD) - return a + b - MOD; - return a + b; -} - -static void -adler32_write (void *context, const void *inbuf, grub_size_t inlen) -{ - struct adler32_context *ctx = context; - const grub_uint8_t *ptr = inbuf; - - while (inlen) - { - ctx->a = mod_add (ctx->a, *ptr); - ctx->b = mod_add (ctx->a, ctx->b); - inlen--; - ptr++; - } -} - -static void -adler32_final (void *context __attribute__ ((unused))) -{ -} - -static grub_uint8_t * -adler32_read (void *context) -{ - struct adler32_context *ctx = context; - if (ctx->a > MOD) - ctx->a -= MOD; - if (ctx->b > MOD) - ctx->b -= MOD; - ctx->c = grub_cpu_to_be32 (ctx->a | (ctx->b << 16)); - return (grub_uint8_t *) &ctx->c; -} - -static gcry_md_spec_t spec_adler32 = - { - "ADLER32", 0, 0, 0, 4, - adler32_init, adler32_write, adler32_final, adler32_read, - sizeof (struct adler32_context), -#ifdef GRUB_UTIL - .modname = "adler32", -#endif - .blocksize = 64 - }; - - -GRUB_MOD_INIT(adler32) -{ - grub_md_register (&spec_adler32); -} - -GRUB_MOD_FINI(adler32) -{ - grub_md_unregister (&spec_adler32); -} diff --git a/thirdparty/grub-2.04/grub-core/lib/arc/datetime.c b/thirdparty/grub-2.04/grub-core/lib/arc/datetime.c deleted file mode 100644 index b8d910e5f..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/arc/datetime.c +++ /dev/null @@ -1,48 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2011 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -grub_err_t -grub_get_datetime (struct grub_datetime *datetime) -{ - struct grub_arc_timeinfo *dt; - grub_memset (datetime, 0, sizeof (*datetime)); - - dt = GRUB_ARC_FIRMWARE_VECTOR->gettime (); - - datetime->year = dt->y; - datetime->month = dt->m; - datetime->day = dt->d; - datetime->hour = dt->h; - datetime->minute = dt->min; - datetime->second = dt->s; - - return 0; -} - -grub_err_t -grub_set_datetime (struct grub_datetime *datetime __attribute__ ((unused))) -{ - return grub_error (GRUB_ERR_IO, "setting time isn't supported"); -} diff --git a/thirdparty/grub-2.04/grub-core/lib/arg.c b/thirdparty/grub-2.04/grub-core/lib/arg.c deleted file mode 100644 index fd7744a6f..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/arg.c +++ /dev/null @@ -1,463 +0,0 @@ -/* arg.c - argument parser */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2003,2004,2005,2007,2008 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include - -/* Built-in parser for default options. */ -static const struct grub_arg_option help_options[] = - { - {"help", 0, 0, - N_("Display this help and exit."), 0, ARG_TYPE_NONE}, - {"usage", 0, 0, - N_("Display the usage of this command and exit."), 0, ARG_TYPE_NONE}, - {0, 0, 0, 0, 0, 0} - }; - -/* Helper for find_short. */ -static const struct grub_arg_option * -fnd_short (const struct grub_arg_option *opt, char c) -{ - while (opt->doc) - { - if (opt->shortarg == c) - return opt; - opt++; - } - return 0; -} - -static const struct grub_arg_option * -find_short (const struct grub_arg_option *options, char c) -{ - const struct grub_arg_option *found = 0; - - if (options) - found = fnd_short (options, c); - - if (! found) - { - switch (c) - { - case 'h': - found = help_options; - break; - - case 'u': - found = (help_options + 1); - break; - - default: - break; - } - } - - return found; -} - -/* Helper for find_long. */ -static const struct grub_arg_option * -fnd_long (const struct grub_arg_option *opt, const char *s, int len) -{ - while (opt->doc) - { - if (opt->longarg && ! grub_strncmp (opt->longarg, s, len) && - opt->longarg[len] == '\0') - return opt; - opt++; - } - return 0; -} - -static const struct grub_arg_option * -find_long (const struct grub_arg_option *options, const char *s, int len) -{ - const struct grub_arg_option *found = 0; - - if (options) - found = fnd_long (options, s, len); - - if (! found) - found = fnd_long (help_options, s, len); - - return found; -} - -static void -show_usage (grub_extcmd_t cmd) -{ - grub_printf ("%s %s %s\n", _("Usage:"), cmd->cmd->name, _(cmd->cmd->summary)); -} - -static void -showargs (const struct grub_arg_option *opt, - int h_is_used, int u_is_used) -{ - for (; opt->doc; opt++) - { - int spacing = 20; - - if (opt->shortarg && grub_isgraph (opt->shortarg)) - grub_printf ("-%c%c ", opt->shortarg, opt->longarg ? ',':' '); - else if (opt == help_options && ! h_is_used) - grub_printf ("-h, "); - else if (opt == help_options + 1 && ! u_is_used) - grub_printf ("-u, "); - else - grub_printf (" "); - - if (opt->longarg) - { - grub_printf ("--%s", opt->longarg); - spacing -= grub_strlen (opt->longarg) + 2; - - if (opt->arg) - { - grub_printf ("=%s", opt->arg); - spacing -= grub_strlen (opt->arg) + 1; - } - } - - if (spacing <= 0) - spacing = 3; - - while (spacing--) - grub_xputs (" "); - - grub_printf ("%s\n", _(opt->doc)); - } -} - -void -grub_arg_show_help (grub_extcmd_t cmd) -{ - int h_is_used = 0; - int u_is_used = 0; - const struct grub_arg_option *opt; - - show_usage (cmd); - grub_printf ("%s\n\n", _(cmd->cmd->description)); - - for (opt = cmd->options; opt && opt->doc; opt++) - switch (opt->shortarg) - { - case 'h': - h_is_used = 1; - break; - - case 'u': - u_is_used = 1; - break; - } - - if (cmd->options) - showargs (cmd->options, h_is_used, u_is_used); - showargs (help_options, h_is_used, u_is_used); -#if 0 - grub_printf ("\nReport bugs to <%s>.\n", PACKAGE_BUGREPORT); -#endif -} - - -static int -parse_option (grub_extcmd_t cmd, const struct grub_arg_option *opt, - char *arg, struct grub_arg_list *usr) -{ - if (opt == help_options) - { - grub_arg_show_help (cmd); - return -1; - } - - if (opt == help_options + 1) - { - show_usage (cmd); - return -1; - } - { - int found = opt - cmd->options; - - if (opt->flags & GRUB_ARG_OPTION_REPEATABLE) - { - usr[found].args[usr[found].set++] = arg; - usr[found].args[usr[found].set] = NULL; - } - else - { - usr[found].set = 1; - usr[found].arg = arg; - } - } - - return 0; -} - -static inline grub_err_t -add_arg (char ***argl, int *num, char *s) -{ - char **p = *argl; - *argl = grub_realloc (*argl, (++(*num) + 1) * sizeof (char *)); - if (! *argl) - { - grub_free (p); - return grub_errno; - } - (*argl)[(*num) - 1] = s; - (*argl)[(*num)] = NULL; - return 0; -} - - -int -grub_arg_parse (grub_extcmd_t cmd, int argc, char **argv, - struct grub_arg_list *usr, char ***args, int *argnum) -{ - int curarg; - int arglen; - char **argl = 0; - int num = 0; - - for (curarg = 0; curarg < argc; curarg++) - { - char *arg = argv[curarg]; - const struct grub_arg_option *opt; - char *option = 0; - - /* No option is used. */ - if ((num && (cmd->cmd->flags & GRUB_COMMAND_OPTIONS_AT_START)) - || arg[0] != '-' || grub_strlen (arg) == 1) - { - if (add_arg (&argl, &num, arg) != 0) - goto fail; - - continue; - } - - /* One or more short options. */ - if (arg[1] != '-') - { - char *curshort; - - if (cmd->cmd->flags & GRUB_COMMAND_ACCEPT_DASH) - { - for (curshort = arg + 1; *curshort; curshort++) - if (!find_short (cmd->options, *curshort)) - break; - - if (*curshort) - { - if (add_arg (&argl, &num, arg) != 0) - goto fail; - continue; - } - } - - curshort = arg + 1; - - while (1) - { - opt = find_short (cmd->options, *curshort); - - if (! opt) - { - char tmp[3] = { '-', *curshort, 0 }; - grub_error (GRUB_ERR_BAD_ARGUMENT, - N_("unknown argument `%s'"), tmp); - goto fail; - } - - curshort++; - - /* Parse all arguments here except the last one because - it can have an argument value. */ - if (*curshort) - { - if (parse_option (cmd, opt, 0, usr) || grub_errno) - goto fail; - } - else - { - if (opt->type != ARG_TYPE_NONE) - { - if (curarg + 1 < argc) - { - char *nextarg = argv[curarg + 1]; - if (!(opt->flags & GRUB_ARG_OPTION_OPTIONAL) - || (grub_strlen (nextarg) < 2 || nextarg[0] != '-')) - option = argv[++curarg]; - } - } - break; - } - } - - } - else /* The argument starts with "--". */ - { - /* If the argument "--" is used just pass the other - arguments. */ - if (grub_strlen (arg) == 2) - { - for (curarg++; curarg < argc; curarg++) - if (add_arg (&argl, &num, argv[curarg]) != 0) - goto fail; - break; - } - - option = grub_strchr (arg, '='); - if (option) - { - arglen = option - arg - 2; - option++; - } - else - arglen = grub_strlen (arg) - 2; - - opt = find_long (cmd->options, arg + 2, arglen); - - if (!option && argv[curarg + 1] && argv[curarg + 1][0] != '-' - && opt && opt->type != ARG_TYPE_NONE) - option = argv[++curarg]; - - if (!opt && (cmd->cmd->flags & GRUB_COMMAND_ACCEPT_DASH)) - { - if (add_arg (&argl, &num, arg) != 0) - goto fail; - continue; - } - - if (! opt) - { - grub_error (GRUB_ERR_BAD_ARGUMENT, N_("unknown argument `%s'"), arg); - goto fail; - } - } - - if (! (opt->type == ARG_TYPE_NONE - || (! option && (opt->flags & GRUB_ARG_OPTION_OPTIONAL)))) - { - if (! option) - { - grub_error (GRUB_ERR_BAD_ARGUMENT, - N_("missing mandatory option for `%s'"), opt->longarg); - goto fail; - } - - switch (opt->type) - { - case ARG_TYPE_NONE: - /* This will never happen. */ - break; - - case ARG_TYPE_STRING: - /* No need to do anything. */ - break; - - case ARG_TYPE_INT: - { - char *tail; - - grub_strtoull (option, &tail, 0); - if (tail == 0 || tail == option || *tail != '\0' || grub_errno) - { - grub_error (GRUB_ERR_BAD_ARGUMENT, - N_("the argument `%s' requires an integer"), - arg); - - goto fail; - } - break; - } - - case ARG_TYPE_DEVICE: - case ARG_TYPE_DIR: - case ARG_TYPE_FILE: - case ARG_TYPE_PATHNAME: - /* XXX: Not implemented. */ - break; - } - if (parse_option (cmd, opt, option, usr) || grub_errno) - goto fail; - } - else - { - if (option) - { - grub_error (GRUB_ERR_BAD_ARGUMENT, - N_("a value was assigned to the argument `%s' while it " - "doesn't require an argument"), arg); - goto fail; - } - - if (parse_option (cmd, opt, 0, usr) || grub_errno) - goto fail; - } - } - - *args = argl; - *argnum = num; - return 1; - - fail: - return 0; -} - -struct grub_arg_list* -grub_arg_list_alloc(grub_extcmd_t extcmd, int argc, - char **argv __attribute__((unused))) -{ - int i; - char **args; - grub_size_t argcnt; - struct grub_arg_list *list; - const struct grub_arg_option *options; - - options = extcmd->options; - if (! options) - return 0; - - argcnt = 0; - for (i = 0; options[i].doc; i++) - { - if (options[i].flags & GRUB_ARG_OPTION_REPEATABLE) - argcnt += ((grub_size_t) argc + 1) / 2 + 1; /* max possible for any option */ - } - - list = grub_zalloc (sizeof (*list) * i + sizeof (char*) * argcnt); - if (! list) - return 0; - - args = (char**) (list + i); - for (i = 0; options[i].doc; i++) - { - list[i].set = 0; - list[i].arg = 0; - - if (options[i].flags & GRUB_ARG_OPTION_REPEATABLE) - { - list[i].args = args; - args += (grub_size_t) argc / 2 + 1; - } - } - return list; -} diff --git a/thirdparty/grub-2.04/grub-core/lib/arm/setjmp.S b/thirdparty/grub-2.04/grub-core/lib/arm/setjmp.S deleted file mode 100644 index a5373d3a9..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/arm/setjmp.S +++ /dev/null @@ -1,53 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2013 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include - - .file "setjmp.S" - -GRUB_MOD_LICENSE "GPLv3+" - - .syntax unified -#if !defined (__thumb2__) - .arm -#else - .thumb -#endif - - .text - -/* - * int grub_setjmp (grub_jmp_buf env) - */ -FUNCTION(grub_setjmp) - mov r12, sp - stm r0, { r4-r12, lr } - mov r0, #0 - bx lr - -/* - * int grub_longjmp (grub_jmp_buf env, int val) - */ -FUNCTION(grub_longjmp) - ldm r0, { r4-r12, lr } - mov sp, r12 - movs r0, r1 - it eq - moveq r0, #1 - bx lr diff --git a/thirdparty/grub-2.04/grub-core/lib/arm64/setjmp.S b/thirdparty/grub-2.04/grub-core/lib/arm64/setjmp.S deleted file mode 100644 index ffcabf6e4..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/arm64/setjmp.S +++ /dev/null @@ -1,56 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2013 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include - - .file "setjmp.S" -GRUB_MOD_LICENSE "GPLv3+" - .text - -/* - * int grub_setjmp (grub_jmp_buf env) - */ -FUNCTION(grub_setjmp) - stp x19, x20, [x0], #16 - stp x21, x22, [x0], #16 - stp x23, x24, [x0], #16 - stp x25, x26, [x0], #16 - stp x27, x28, [x0], #16 - stp x29, x30, [x0], #16 - mov x1, sp - str x1, [x0] - mov x0, #0 - ret - -/* - * int grub_longjmp (grub_jmp_buf env, int val) - */ -FUNCTION(grub_longjmp) - ldp x19, x20, [x0], #16 - ldp x21, x22, [x0], #16 - ldp x23, x24, [x0], #16 - ldp x25, x26, [x0], #16 - ldp x27, x28, [x0], #16 - ldp x29, x30, [x0], #16 - ldr x2, [x0] - mov sp, x2 - mov x0, #1 - cmp x1, #0 - csel x0, x1, x0, ne - ret diff --git a/thirdparty/grub-2.04/grub-core/lib/backtrace.c b/thirdparty/grub-2.04/grub-core/lib/backtrace.c deleted file mode 100644 index 825a8800e..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/backtrace.c +++ /dev/null @@ -1,70 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -void -grub_backtrace_print_address (void *addr) -{ - grub_dl_t mod; - - FOR_DL_MODULES (mod) - { - grub_dl_segment_t segment; - for (segment = mod->segment; segment; segment = segment->next) - if (segment->addr <= addr && (grub_uint8_t *) segment->addr - + segment->size > (grub_uint8_t *) addr) - { - grub_printf ("%s.%x+%" PRIxGRUB_SIZE, mod->name, segment->section, - (grub_size_t) ((grub_uint8_t *) addr - (grub_uint8_t *) segment->addr)); - return; - } - } - - grub_printf ("%p", addr); -} - -static grub_err_t -grub_cmd_backtrace (grub_command_t cmd __attribute__ ((unused)), - int argc __attribute__ ((unused)), - char **args __attribute__ ((unused))) -{ - grub_backtrace (); - return 0; -} - -static grub_command_t cmd; - -GRUB_MOD_INIT(backtrace) -{ - cmd = grub_register_command ("backtrace", grub_cmd_backtrace, - 0, N_("Print backtrace.")); -} - -GRUB_MOD_FINI(backtrace) -{ - grub_unregister_command (cmd); -} diff --git a/thirdparty/grub-2.04/grub-core/lib/cmdline.c b/thirdparty/grub-2.04/grub-core/lib/cmdline.c deleted file mode 100644 index ed0b149dc..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/cmdline.c +++ /dev/null @@ -1,109 +0,0 @@ -/* cmdline.c - linux command line handling */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2010 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include - -static unsigned int check_arg (char *c, int *has_space) -{ - int space = 0; - unsigned int size = 0; - - while (*c) - { - if (*c == '\\' || *c == '\'' || *c == '"') - size++; - else if (*c == ' ') - space = 1; - - size++; - c++; - } - - if (space) - size += 2; - - if (has_space) - *has_space = space; - - return size; -} - -unsigned int grub_loader_cmdline_size (int argc, char *argv[]) -{ - int i; - unsigned int size = 0; - - for (i = 0; i < argc; i++) - { - size += check_arg (argv[i], 0); - size++; /* Separator space or NULL. */ - } - - if (size == 0) - size = 1; - - return size; -} - -grub_err_t -grub_create_loader_cmdline (int argc, char *argv[], char *buf, - grub_size_t size, enum grub_verify_string_type type) -{ - int i, space; - unsigned int arg_size; - char *c, *orig_buf = buf; - - for (i = 0; i < argc; i++) - { - c = argv[i]; - arg_size = check_arg(argv[i], &space); - arg_size++; /* Separator space or NULL. */ - - if (size < arg_size) - break; - - size -= arg_size; - - if (space) - *buf++ = '"'; - - while (*c) - { - if (*c == '\\' || *c == '\'' || *c == '"') - *buf++ = '\\'; - - *buf++ = *c; - c++; - } - - if (space) - *buf++ = '"'; - - *buf++ = ' '; - } - - /* Replace last space with null. */ - if (i) - buf--; - - *buf = 0; - - return grub_verify_string (orig_buf, type); -} diff --git a/thirdparty/grub-2.04/grub-core/lib/cmos_datetime.c b/thirdparty/grub-2.04/grub-core/lib/cmos_datetime.c deleted file mode 100644 index 86cd91180..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/cmos_datetime.c +++ /dev/null @@ -1,194 +0,0 @@ -/* kern/cmos_datetime.c - CMOS datetime function. - * - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2008,2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -#if !defined (__powerpc__) && !defined (__sparc__) -#define grub_get_datetime_cmos grub_get_datetime -#define grub_set_datetime_cmos grub_set_datetime -#endif - -grub_err_t -grub_get_datetime_cmos (struct grub_datetime *datetime) -{ - int is_bcd, is_12hour; - grub_uint8_t value, flag; - grub_err_t err; - - err = grub_cmos_read (GRUB_CMOS_INDEX_STATUS_B, &flag); - if (err) - return err; - - is_bcd = ! (flag & GRUB_CMOS_STATUS_B_BINARY); - - err = grub_cmos_read (GRUB_CMOS_INDEX_YEAR, &value); - if (err) - return err; - if (is_bcd) - value = grub_bcd_to_num (value); - - datetime->year = value; - datetime->year += (value < 80) ? 2000 : 1900; - - err = grub_cmos_read (GRUB_CMOS_INDEX_MONTH, &value); - if (err) - return err; - if (is_bcd) - value = grub_bcd_to_num (value); - - datetime->month = value; - - err = grub_cmos_read (GRUB_CMOS_INDEX_DAY_OF_MONTH, &value); - if (err) - return err; - if (is_bcd) - value = grub_bcd_to_num (value); - - datetime->day = value; - - is_12hour = ! (flag & GRUB_CMOS_STATUS_B_24HOUR); - - err = grub_cmos_read (GRUB_CMOS_INDEX_HOUR, &value); - if (err) - return err; - if (is_12hour) - { - is_12hour = (value & 0x80); - - value &= 0x7F; - value--; - } - - if (is_bcd) - value = grub_bcd_to_num (value); - - if (is_12hour) - value += 12; - - datetime->hour = value; - - err = grub_cmos_read (GRUB_CMOS_INDEX_MINUTE, &value); - if (err) - return err; - - if (is_bcd) - value = grub_bcd_to_num (value); - - datetime->minute = value; - - err = grub_cmos_read (GRUB_CMOS_INDEX_SECOND, &value); - if (err) - return err; - if (is_bcd) - value = grub_bcd_to_num (value); - - datetime->second = value; - - return 0; -} - -grub_err_t -grub_set_datetime_cmos (struct grub_datetime *datetime) -{ - int is_bcd, is_12hour; - grub_uint8_t value, flag; - grub_err_t err; - - err = grub_cmos_read (GRUB_CMOS_INDEX_STATUS_B, &flag); - if (err) - return err; - - is_bcd = ! (flag & GRUB_CMOS_STATUS_B_BINARY); - - value = ((datetime->year >= 2000) ? datetime->year - 2000 : - datetime->year - 1900); - - if (is_bcd) - value = grub_num_to_bcd (value); - - err = grub_cmos_write (GRUB_CMOS_INDEX_YEAR, value); - if (err) - return err; - - value = datetime->month; - - if (is_bcd) - value = grub_num_to_bcd (value); - - err = grub_cmos_write (GRUB_CMOS_INDEX_MONTH, value); - if (err) - return err; - - value = datetime->day; - - if (is_bcd) - value = grub_num_to_bcd (value); - - err = grub_cmos_write (GRUB_CMOS_INDEX_DAY_OF_MONTH, value); - if (err) - return err; - - value = datetime->hour; - - is_12hour = (! (flag & GRUB_CMOS_STATUS_B_24HOUR)); - - if (is_12hour) - { - value++; - - if (value > 12) - value -= 12; - else - is_12hour = 0; - } - - if (is_bcd) - value = grub_num_to_bcd (value); - - if (is_12hour) - value |= 0x80; - - err = grub_cmos_write (GRUB_CMOS_INDEX_HOUR, value); - if (err) - return err; - - value = datetime->minute; - - if (is_bcd) - value = grub_num_to_bcd (value); - - err = grub_cmos_write (GRUB_CMOS_INDEX_MINUTE, value); - if (err) - return err; - - value = datetime->second; - - if (is_bcd) - value = grub_num_to_bcd (value); - - err = grub_cmos_write (GRUB_CMOS_INDEX_SECOND, value); - if (err) - return err; - - return 0; -} diff --git a/thirdparty/grub-2.04/grub-core/lib/crc.c b/thirdparty/grub-2.04/grub-core/lib/crc.c deleted file mode 100644 index bf97cc63a..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/crc.c +++ /dev/null @@ -1,76 +0,0 @@ -/* crc.c - crc function */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2008 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include - -static grub_uint32_t crc32c_table [256]; - -/* Helper for init_crc32c_table. */ -static grub_uint32_t -reflect (grub_uint32_t ref, int len) -{ - grub_uint32_t result = 0; - int i; - - for (i = 1; i <= len; i++) - { - if (ref & 1) - result |= 1 << (len - i); - ref >>= 1; - } - - return result; -} - -static void -init_crc32c_table (void) -{ - grub_uint32_t polynomial = 0x1edc6f41; - int i, j; - - for(i = 0; i < 256; i++) - { - crc32c_table[i] = reflect(i, 8) << 24; - for (j = 0; j < 8; j++) - crc32c_table[i] = (crc32c_table[i] << 1) ^ - (crc32c_table[i] & (1 << 31) ? polynomial : 0); - crc32c_table[i] = reflect(crc32c_table[i], 32); - } -} - -grub_uint32_t -grub_getcrc32c (grub_uint32_t crc, const void *buf, int size) -{ - int i; - const grub_uint8_t *data = buf; - - if (! crc32c_table[1]) - init_crc32c_table (); - - crc^= 0xffffffff; - - for (i = 0; i < size; i++) - { - crc = (crc >> 8) ^ crc32c_table[(crc & 0xFF) ^ *data]; - data++; - } - - return crc ^ 0xffffffff; -} diff --git a/thirdparty/grub-2.04/grub-core/lib/crc64.c b/thirdparty/grub-2.04/grub-core/lib/crc64.c deleted file mode 100644 index 4960f3f89..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/crc64.c +++ /dev/null @@ -1,114 +0,0 @@ -/* crc64.c - crc64 function */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2008,2011 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -static grub_uint64_t crc64_table [256]; - -/* Helper for init_crc64_table. */ -static grub_uint64_t -reflect (grub_uint64_t ref, int len) -{ - grub_uint64_t result = 0; - int i; - - for (i = 1; i <= len; i++) - { - if (ref & 1) - result |= 1ULL << (len - i); - ref >>= 1; - } - - return result; -} - -static void -init_crc64_table (void) -{ - grub_uint64_t polynomial = 0x42f0e1eba9ea3693ULL; - int i, j; - - for(i = 0; i < 256; i++) - { - crc64_table[i] = reflect(i, 8) << 56; - for (j = 0; j < 8; j++) - { - crc64_table[i] = (crc64_table[i] << 1) ^ - (crc64_table[i] & (1ULL << 63) ? polynomial : 0); - } - crc64_table[i] = reflect(crc64_table[i], 64); - } -} - -static void -crc64_init (void *context) -{ - if (! crc64_table[1]) - init_crc64_table (); - *(grub_uint64_t *) context = 0; -} - -static void -crc64_write (void *context, const void *buf, grub_size_t size) -{ - unsigned i; - const grub_uint8_t *data = buf; - grub_uint64_t crc = ~grub_le_to_cpu64 (*(grub_uint64_t *) context); - - for (i = 0; i < size; i++) - { - crc = (crc >> 8) ^ crc64_table[(crc & 0xFF) ^ *data]; - data++; - } - - *(grub_uint64_t *) context = grub_cpu_to_le64 (~crc); -} - -static grub_uint8_t * -crc64_read (void *context) -{ - return context; -} - -static void -crc64_final (void *context __attribute__ ((unused))) -{ -} - -gcry_md_spec_t _gcry_digest_spec_crc64 = - { - "CRC64", 0, 0, 0, 8, - crc64_init, crc64_write, crc64_final, crc64_read, - sizeof (grub_uint64_t), - .blocksize = 64 - }; - -GRUB_MOD_INIT(crc64) -{ - grub_md_register (&_gcry_digest_spec_crc64); -} - -GRUB_MOD_FINI(crc64) -{ - grub_md_unregister (&_gcry_digest_spec_crc64); -} diff --git a/thirdparty/grub-2.04/grub-core/lib/crypto.c b/thirdparty/grub-2.04/grub-core/lib/crypto.c deleted file mode 100644 index ca334d5a4..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/crypto.c +++ /dev/null @@ -1,493 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2006 - * 2007, 2008, 2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -struct grub_crypto_hmac_handle -{ - const struct gcry_md_spec *md; - void *ctx; - void *opad; -}; - -static gcry_cipher_spec_t *grub_ciphers = NULL; -static gcry_md_spec_t *grub_digests = NULL; - -void (*grub_crypto_autoload_hook) (const char *name) = NULL; - -/* Based on libgcrypt-1.4.4/src/misc.c. */ -void -grub_burn_stack (grub_size_t size) -{ - char buf[64]; - - grub_memset (buf, 0, sizeof (buf)); - if (size > sizeof (buf)) - grub_burn_stack (size - sizeof (buf)); -} - -void -_gcry_burn_stack (int size) -{ - grub_burn_stack (size); -} - -void __attribute__ ((noreturn)) -_gcry_assert_failed (const char *expr, const char *file, int line, - const char *func) - -{ - grub_fatal ("assertion %s at %s:%d (%s) failed\n", expr, file, line, func); -} - - -void _gcry_log_error (const char *fmt, ...) -{ - va_list args; - const char *debug = grub_env_get ("debug"); - - if (! debug) - return; - - if (grub_strword (debug, "all") || grub_strword (debug, "gcrypt")) - { - grub_printf ("gcrypt error: "); - va_start (args, fmt); - grub_vprintf (fmt, args); - va_end (args); - grub_refresh (); - } -} - -void -grub_cipher_register (gcry_cipher_spec_t *cipher) -{ - cipher->next = grub_ciphers; - grub_ciphers = cipher; -} - -void -grub_cipher_unregister (gcry_cipher_spec_t *cipher) -{ - gcry_cipher_spec_t **ciph; - for (ciph = &grub_ciphers; *ciph; ciph = &((*ciph)->next)) - if (*ciph == cipher) - { - *ciph = (*ciph)->next; - break; - } -} - -void -grub_md_register (gcry_md_spec_t *digest) -{ - digest->next = grub_digests; - grub_digests = digest; -} - -void -grub_md_unregister (gcry_md_spec_t *cipher) -{ - gcry_md_spec_t **ciph; - for (ciph = &grub_digests; *ciph; ciph = &((*ciph)->next)) - if (*ciph == cipher) - { - *ciph = (*ciph)->next; - break; - } -} - -void -grub_crypto_hash (const gcry_md_spec_t *hash, void *out, const void *in, - grub_size_t inlen) -{ - GRUB_PROPERLY_ALIGNED_ARRAY (ctx, GRUB_CRYPTO_MAX_MD_CONTEXT_SIZE); - - if (hash->contextsize > sizeof (ctx)) - grub_fatal ("Too large md context"); - hash->init (&ctx); - hash->write (&ctx, in, inlen); - hash->final (&ctx); - grub_memcpy (out, hash->read (&ctx), hash->mdlen); -} - -const gcry_md_spec_t * -grub_crypto_lookup_md_by_name (const char *name) -{ - const gcry_md_spec_t *md; - int first = 1; - while (1) - { - for (md = grub_digests; md; md = md->next) - if (grub_strcasecmp (name, md->name) == 0) - return md; - if (grub_crypto_autoload_hook && first) - grub_crypto_autoload_hook (name); - else - return NULL; - first = 0; - } -} - -const gcry_cipher_spec_t * -grub_crypto_lookup_cipher_by_name (const char *name) -{ - const gcry_cipher_spec_t *ciph; - int first = 1; - while (1) - { - for (ciph = grub_ciphers; ciph; ciph = ciph->next) - { - const char **alias; - if (grub_strcasecmp (name, ciph->name) == 0) - return ciph; - if (!ciph->aliases) - continue; - for (alias = ciph->aliases; *alias; alias++) - if (grub_strcasecmp (name, *alias) == 0) - return ciph; - } - if (grub_crypto_autoload_hook && first) - grub_crypto_autoload_hook (name); - else - return NULL; - first = 0; - } -} - - -grub_crypto_cipher_handle_t -grub_crypto_cipher_open (const struct gcry_cipher_spec *cipher) -{ - grub_crypto_cipher_handle_t ret; - ret = grub_malloc (sizeof (*ret) + cipher->contextsize); - if (!ret) - return NULL; - ret->cipher = cipher; - return ret; -} - -gcry_err_code_t -grub_crypto_cipher_set_key (grub_crypto_cipher_handle_t cipher, - const unsigned char *key, - unsigned keylen) -{ - return cipher->cipher->setkey (cipher->ctx, key, keylen); -} - -gcry_err_code_t -grub_crypto_ecb_decrypt (grub_crypto_cipher_handle_t cipher, - void *out, const void *in, grub_size_t size) -{ - const grub_uint8_t *inptr, *end; - grub_uint8_t *outptr; - grub_size_t blocksize; - if (!cipher->cipher->decrypt) - return GPG_ERR_NOT_SUPPORTED; - blocksize = cipher->cipher->blocksize; - if (blocksize == 0 || (((blocksize - 1) & blocksize) != 0) - || ((size & (blocksize - 1)) != 0)) - return GPG_ERR_INV_ARG; - end = (const grub_uint8_t *) in + size; - for (inptr = in, outptr = out; inptr < end; - inptr += blocksize, outptr += blocksize) - cipher->cipher->decrypt (cipher->ctx, outptr, inptr); - return GPG_ERR_NO_ERROR; -} - -gcry_err_code_t -grub_crypto_ecb_encrypt (grub_crypto_cipher_handle_t cipher, - void *out, const void *in, grub_size_t size) -{ - const grub_uint8_t *inptr, *end; - grub_uint8_t *outptr; - grub_size_t blocksize; - if (!cipher->cipher->encrypt) - return GPG_ERR_NOT_SUPPORTED; - blocksize = cipher->cipher->blocksize; - if (blocksize == 0 || (((blocksize - 1) & blocksize) != 0) - || ((size & (blocksize - 1)) != 0)) - return GPG_ERR_INV_ARG; - end = (const grub_uint8_t *) in + size; - for (inptr = in, outptr = out; inptr < end; - inptr += blocksize, outptr += blocksize) - cipher->cipher->encrypt (cipher->ctx, outptr, inptr); - return GPG_ERR_NO_ERROR; -} - -gcry_err_code_t -grub_crypto_cbc_encrypt (grub_crypto_cipher_handle_t cipher, - void *out, const void *in, grub_size_t size, - void *iv_in) -{ - grub_uint8_t *outptr; - const grub_uint8_t *inptr, *end; - void *iv; - grub_size_t blocksize; - if (!cipher->cipher->encrypt) - return GPG_ERR_NOT_SUPPORTED; - blocksize = cipher->cipher->blocksize; - if (blocksize == 0 || (((blocksize - 1) & blocksize) != 0) - || ((size & (blocksize - 1)) != 0)) - return GPG_ERR_INV_ARG; - end = (const grub_uint8_t *) in + size; - iv = iv_in; - for (inptr = in, outptr = out; inptr < end; - inptr += blocksize, outptr += blocksize) - { - grub_crypto_xor (outptr, inptr, iv, blocksize); - cipher->cipher->encrypt (cipher->ctx, outptr, outptr); - iv = outptr; - } - grub_memcpy (iv_in, iv, blocksize); - return GPG_ERR_NO_ERROR; -} - -gcry_err_code_t -grub_crypto_cbc_decrypt (grub_crypto_cipher_handle_t cipher, - void *out, const void *in, grub_size_t size, - void *iv) -{ - const grub_uint8_t *inptr, *end; - grub_uint8_t *outptr; - grub_uint8_t ivt[GRUB_CRYPTO_MAX_CIPHER_BLOCKSIZE]; - grub_size_t blocksize; - if (!cipher->cipher->decrypt) - return GPG_ERR_NOT_SUPPORTED; - blocksize = cipher->cipher->blocksize; - if (blocksize == 0 || (((blocksize - 1) & blocksize) != 0) - || ((size & (blocksize - 1)) != 0)) - return GPG_ERR_INV_ARG; - if (blocksize > GRUB_CRYPTO_MAX_CIPHER_BLOCKSIZE) - return GPG_ERR_INV_ARG; - end = (const grub_uint8_t *) in + size; - for (inptr = in, outptr = out; inptr < end; - inptr += blocksize, outptr += blocksize) - { - grub_memcpy (ivt, inptr, blocksize); - cipher->cipher->decrypt (cipher->ctx, outptr, inptr); - grub_crypto_xor (outptr, outptr, iv, blocksize); - grub_memcpy (iv, ivt, blocksize); - } - return GPG_ERR_NO_ERROR; -} - -/* Based on gcry/cipher/md.c. */ -struct grub_crypto_hmac_handle * -grub_crypto_hmac_init (const struct gcry_md_spec *md, - const void *key, grub_size_t keylen) -{ - grub_uint8_t *helpkey = NULL; - grub_uint8_t *ipad = NULL, *opad = NULL; - void *ctx = NULL; - struct grub_crypto_hmac_handle *ret = NULL; - unsigned i; - - if (md->mdlen > md->blocksize) - return NULL; - - ctx = grub_malloc (md->contextsize); - if (!ctx) - goto err; - - if ( keylen > md->blocksize ) - { - helpkey = grub_malloc (md->mdlen); - if (!helpkey) - goto err; - grub_crypto_hash (md, helpkey, key, keylen); - - key = helpkey; - keylen = md->mdlen; - } - - ipad = grub_zalloc (md->blocksize); - if (!ipad) - goto err; - - opad = grub_zalloc (md->blocksize); - if (!opad) - goto err; - - grub_memcpy ( ipad, key, keylen ); - grub_memcpy ( opad, key, keylen ); - for (i=0; i < md->blocksize; i++ ) - { - ipad[i] ^= 0x36; - opad[i] ^= 0x5c; - } - grub_free (helpkey); - helpkey = NULL; - - md->init (ctx); - - md->write (ctx, ipad, md->blocksize); /* inner pad */ - grub_memset (ipad, 0, md->blocksize); - grub_free (ipad); - ipad = NULL; - - ret = grub_malloc (sizeof (*ret)); - if (!ret) - goto err; - - ret->md = md; - ret->ctx = ctx; - ret->opad = opad; - - return ret; - - err: - grub_free (helpkey); - grub_free (ctx); - grub_free (ipad); - grub_free (opad); - return NULL; -} - -void -grub_crypto_hmac_write (struct grub_crypto_hmac_handle *hnd, - const void *data, - grub_size_t datalen) -{ - hnd->md->write (hnd->ctx, data, datalen); -} - -gcry_err_code_t -grub_crypto_hmac_fini (struct grub_crypto_hmac_handle *hnd, void *out) -{ - grub_uint8_t *p; - grub_uint8_t *ctx2; - - ctx2 = grub_malloc (hnd->md->contextsize); - if (!ctx2) - return GPG_ERR_OUT_OF_MEMORY; - - hnd->md->final (hnd->ctx); - hnd->md->read (hnd->ctx); - p = hnd->md->read (hnd->ctx); - - hnd->md->init (ctx2); - hnd->md->write (ctx2, hnd->opad, hnd->md->blocksize); - hnd->md->write (ctx2, p, hnd->md->mdlen); - hnd->md->final (ctx2); - grub_memset (hnd->opad, 0, hnd->md->blocksize); - grub_free (hnd->opad); - grub_memset (hnd->ctx, 0, hnd->md->contextsize); - grub_free (hnd->ctx); - - grub_memcpy (out, hnd->md->read (ctx2), hnd->md->mdlen); - grub_memset (ctx2, 0, hnd->md->contextsize); - grub_free (ctx2); - - grub_memset (hnd, 0, sizeof (*hnd)); - grub_free (hnd); - - return GPG_ERR_NO_ERROR; -} - -gcry_err_code_t -grub_crypto_hmac_buffer (const struct gcry_md_spec *md, - const void *key, grub_size_t keylen, - const void *data, grub_size_t datalen, void *out) -{ - struct grub_crypto_hmac_handle *hnd; - - hnd = grub_crypto_hmac_init (md, key, keylen); - if (!hnd) - return GPG_ERR_OUT_OF_MEMORY; - - grub_crypto_hmac_write (hnd, data, datalen); - return grub_crypto_hmac_fini (hnd, out); -} - - -grub_err_t -grub_crypto_gcry_error (gcry_err_code_t in) -{ - if (in == GPG_ERR_NO_ERROR) - return GRUB_ERR_NONE; - return GRUB_ACCESS_DENIED; -} - -int -grub_crypto_memcmp (const void *a, const void *b, grub_size_t n) -{ - register grub_size_t counter = 0; - const grub_uint8_t *pa, *pb; - - for (pa = a, pb = b; n; pa++, pb++, n--) - { - if (*pa != *pb) - counter++; - } - - return !!counter; -} - -#ifndef GRUB_UTIL - -int -grub_password_get (char buf[], unsigned buf_size) -{ - unsigned cur_len = 0; - int key; - - while (1) - { - key = grub_getkey (); - if (key == '\n' || key == '\r') - break; - - if (key == GRUB_TERM_ESC) - { - cur_len = 0; - break; - } - - if (key == '\b') - { - if (cur_len) - cur_len--; - continue; - } - - if (!grub_isprint (key)) - continue; - - if (cur_len + 2 < buf_size) - buf[cur_len++] = key; - } - - grub_memset (buf + cur_len, 0, buf_size - cur_len); - - grub_xputs ("\n"); - grub_refresh (); - - return (key != GRUB_TERM_ESC); -} -#endif - diff --git a/thirdparty/grub-2.04/grub-core/lib/disk.c b/thirdparty/grub-2.04/grub-core/lib/disk.c deleted file mode 100644 index b4eb064a8..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/disk.c +++ /dev/null @@ -1,161 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2002,2003,2004,2006,2007,2008,2009,2010 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -#include "../kern/disk_common.c" - -static void -grub_disk_cache_invalidate (unsigned long dev_id, unsigned long disk_id, - grub_disk_addr_t sector) -{ - unsigned cache_index; - struct grub_disk_cache *cache; - - sector &= ~((grub_disk_addr_t) GRUB_DISK_CACHE_SIZE - 1); - cache_index = grub_disk_cache_get_index (dev_id, disk_id, sector); - cache = grub_disk_cache_table + cache_index; - - if (cache->dev_id == dev_id && cache->disk_id == disk_id - && cache->sector == sector && cache->data) - { - cache->lock = 1; - grub_free (cache->data); - cache->data = 0; - cache->lock = 0; - } -} - -grub_err_t -grub_disk_write (grub_disk_t disk, grub_disk_addr_t sector, - grub_off_t offset, grub_size_t size, const void *buf) -{ - unsigned real_offset; - grub_disk_addr_t aligned_sector; - - grub_dprintf ("disk", "Writing `%s'...\n", disk->name); - - if (grub_disk_adjust_range (disk, §or, &offset, size) != GRUB_ERR_NONE) - return -1; - - aligned_sector = (sector & ~((1ULL << (disk->log_sector_size - - GRUB_DISK_SECTOR_BITS)) - 1)); - real_offset = offset + ((sector - aligned_sector) << GRUB_DISK_SECTOR_BITS); - sector = aligned_sector; - - while (size) - { - if (real_offset != 0 || (size < (1U << disk->log_sector_size) - && size != 0)) - { - char *tmp_buf; - grub_size_t len; - grub_partition_t part; - - tmp_buf = grub_malloc (1U << disk->log_sector_size); - if (!tmp_buf) - return grub_errno; - - part = disk->partition; - disk->partition = 0; - if (grub_disk_read (disk, sector, - 0, (1U << disk->log_sector_size), tmp_buf) - != GRUB_ERR_NONE) - { - disk->partition = part; - grub_free (tmp_buf); - goto finish; - } - disk->partition = part; - - len = (1U << disk->log_sector_size) - real_offset; - if (len > size) - len = size; - - grub_memcpy (tmp_buf + real_offset, buf, len); - - grub_disk_cache_invalidate (disk->dev->id, disk->id, sector); - - if ((disk->dev->disk_write) (disk, transform_sector (disk, sector), - 1, tmp_buf) != GRUB_ERR_NONE) - { - grub_free (tmp_buf); - goto finish; - } - - grub_free (tmp_buf); - - sector += (1U << (disk->log_sector_size - GRUB_DISK_SECTOR_BITS)); - buf = (const char *) buf + len; - size -= len; - real_offset = 0; - } - else - { - grub_size_t len; - grub_size_t n; - - len = size & ~((1ULL << disk->log_sector_size) - 1); - n = size >> disk->log_sector_size; - - if (n > (disk->max_agglomerate - << (GRUB_DISK_CACHE_BITS + GRUB_DISK_SECTOR_BITS - - disk->log_sector_size))) - n = (disk->max_agglomerate - << (GRUB_DISK_CACHE_BITS + GRUB_DISK_SECTOR_BITS - - disk->log_sector_size)); - - if ((disk->dev->disk_write) (disk, transform_sector (disk, sector), - n, buf) != GRUB_ERR_NONE) - goto finish; - - while (n--) - { - grub_disk_cache_invalidate (disk->dev->id, disk->id, sector); - sector += (1U << (disk->log_sector_size - GRUB_DISK_SECTOR_BITS)); - } - - buf = (const char *) buf + len; - size -= len; - } - } - - finish: - - return grub_errno; -} - -GRUB_MOD_INIT(disk) -{ - grub_disk_write_weak = grub_disk_write; -} - -GRUB_MOD_FINI(disk) -{ - grub_disk_write_weak = NULL; -} diff --git a/thirdparty/grub-2.04/grub-core/lib/division.c b/thirdparty/grub-2.04/grub-core/lib/division.c deleted file mode 100644 index 35606fea7..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/division.c +++ /dev/null @@ -1,74 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2015 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -static grub_uint64_t -abs64(grub_int64_t a) -{ - return a > 0 ? a : -a; -} - -grub_int64_t -grub_divmod64s (grub_int64_t n, - grub_int64_t d, - grub_int64_t *ro) -{ - grub_uint64_t ru; - grub_int64_t q, r; - q = grub_divmod64 (abs64(n), abs64(d), &ru); - r = ru; - /* Now: |n| = |d| * q + r */ - if (n < 0) - { - /* -|n| = |d| * (-q) + (-r) */ - q = -q; - r = -r; - } - /* Now: n = |d| * q + r */ - if (d < 0) - { - /* n = (-|d|) * (-q) + r */ - q = -q; - } - /* Now: n = d * q + r */ - if (ro) - *ro = r; - return q; -} - -grub_uint32_t -grub_divmod32 (grub_uint32_t n, grub_uint32_t d, grub_uint32_t *ro) -{ - grub_uint64_t q, r; - q = grub_divmod64 (n, d, &r); - *ro = r; - return q; -} - -grub_int32_t -grub_divmod32s (grub_int32_t n, grub_int32_t d, grub_int32_t *ro) -{ - grub_int64_t q, r; - q = grub_divmod64s (n, d, &r); - *ro = r; - return q; -} diff --git a/thirdparty/grub-2.04/grub-core/lib/dummy/datetime.c b/thirdparty/grub-2.04/grub-core/lib/dummy/datetime.c deleted file mode 100644 index cf693fc6b..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/dummy/datetime.c +++ /dev/null @@ -1,40 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2013 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -/* No simple platform-independent RTC access exists in U-Boot. */ - -grub_err_t -grub_get_datetime (struct grub_datetime *datetime __attribute__ ((unused))) -{ - return grub_error (GRUB_ERR_INVALID_COMMAND, - "can\'t get datetime on this machine"); -} - -grub_err_t -grub_set_datetime (struct grub_datetime * datetime __attribute__ ((unused))) -{ - return grub_error (GRUB_ERR_INVALID_COMMAND, - "can\'t set datetime on this machine"); -} diff --git a/thirdparty/grub-2.04/grub-core/lib/dummy/halt.c b/thirdparty/grub-2.04/grub-core/lib/dummy/halt.c deleted file mode 100644 index 378d50f3f..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/dummy/halt.c +++ /dev/null @@ -1,32 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2013 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include - -void -grub_halt (void) -{ - grub_machine_fini (GRUB_LOADER_FLAG_NORETURN); - - /* Just stop here */ - - while (1); -} diff --git a/thirdparty/grub-2.04/grub-core/lib/dummy/reboot.c b/thirdparty/grub-2.04/grub-core/lib/dummy/reboot.c deleted file mode 100644 index b8cbed8f8..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/dummy/reboot.c +++ /dev/null @@ -1,32 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2013 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include - -void -grub_reboot (void) -{ - grub_machine_fini (GRUB_LOADER_FLAG_NORETURN); - - /* Just stop here */ - - while (1); -} diff --git a/thirdparty/grub-2.04/grub-core/lib/efi/datetime.c b/thirdparty/grub-2.04/grub-core/lib/efi/datetime.c deleted file mode 100644 index 0fd1b5fbd..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/efi/datetime.c +++ /dev/null @@ -1,82 +0,0 @@ -/* kern/efi/datetime.c - efi datetime function. - * - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2008 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -grub_err_t -grub_get_datetime (struct grub_datetime *datetime) -{ - grub_efi_status_t status; - struct grub_efi_time efi_time; - - status = efi_call_2 (grub_efi_system_table->runtime_services->get_time, - &efi_time, 0); - - if (status) - return grub_error (GRUB_ERR_INVALID_COMMAND, - "can\'t get datetime using efi"); - else - { - datetime->year = efi_time.year; - datetime->month = efi_time.month; - datetime->day = efi_time.day; - datetime->hour = efi_time.hour; - datetime->minute = efi_time.minute; - datetime->second = efi_time.second; - } - - return 0; -} - -grub_err_t -grub_set_datetime (struct grub_datetime *datetime) -{ - grub_efi_status_t status; - struct grub_efi_time efi_time; - - status = efi_call_2 (grub_efi_system_table->runtime_services->get_time, - &efi_time, 0); - - if (status) - return grub_error (GRUB_ERR_INVALID_COMMAND, - "can\'t get datetime using efi"); - - efi_time.year = datetime->year; - efi_time.month = datetime->month; - efi_time.day = datetime->day; - efi_time.hour = datetime->hour; - efi_time.minute = datetime->minute; - efi_time.second = datetime->second; - - status = efi_call_1 (grub_efi_system_table->runtime_services->set_time, - &efi_time); - - if (status) - return grub_error (GRUB_ERR_INVALID_COMMAND, - "can\'t set datetime using efi"); - - return 0; -} diff --git a/thirdparty/grub-2.04/grub-core/lib/efi/halt.c b/thirdparty/grub-2.04/grub-core/lib/efi/halt.c deleted file mode 100644 index 5859f0498..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/efi/halt.c +++ /dev/null @@ -1,40 +0,0 @@ -/* efi.c - generic EFI support */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2006,2007,2008,2009,2010 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include - -void -grub_halt (void) -{ - grub_machine_fini (GRUB_LOADER_FLAG_NORETURN); -#if !defined(__ia64__) && !defined(__arm__) && !defined(__aarch64__) && \ - !defined(__riscv) - grub_acpi_halt (); -#endif - efi_call_4 (grub_efi_system_table->runtime_services->reset_system, - GRUB_EFI_RESET_SHUTDOWN, GRUB_EFI_SUCCESS, 0, NULL); - - while (1); -} diff --git a/thirdparty/grub-2.04/grub-core/lib/efi/relocator.c b/thirdparty/grub-2.04/grub-core/lib/efi/relocator.c deleted file mode 100644 index 319b69eeb..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/efi/relocator.c +++ /dev/null @@ -1,119 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2010 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include - -#define NEXT_MEMORY_DESCRIPTOR(desc, size) \ - ((grub_efi_memory_descriptor_t *) ((char *) (desc) + (size))) - -unsigned -grub_relocator_firmware_get_max_events (void) -{ - grub_efi_uintn_t mmapsize = 0, descriptor_size = 0; - grub_efi_uint32_t descriptor_version = 0; - grub_efi_uintn_t key; - grub_efi_get_memory_map (&mmapsize, NULL, &key, &descriptor_size, - &descriptor_version); - /* Since grub_relocator_firmware_fill_events uses malloc - we need some reserve. Hence +10. */ - return 2 * (mmapsize / descriptor_size + 10); -} - -unsigned -grub_relocator_firmware_fill_events (struct grub_relocator_mmap_event *events) -{ - grub_efi_uintn_t mmapsize = 0, desc_size = 0; - grub_efi_uint32_t descriptor_version = 0; - grub_efi_memory_descriptor_t *descs = NULL; - grub_efi_uintn_t key; - int counter = 0; - grub_efi_memory_descriptor_t *desc; - - grub_efi_get_memory_map (&mmapsize, NULL, &key, &desc_size, - &descriptor_version); - descs = grub_malloc (mmapsize); - if (!descs) - return 0; - - grub_efi_get_memory_map (&mmapsize, descs, &key, &desc_size, - &descriptor_version); - - for (desc = descs; - (char *) desc < ((char *) descs + mmapsize); - desc = NEXT_MEMORY_DESCRIPTOR (desc, desc_size)) - { - grub_uint64_t start = desc->physical_start; - grub_uint64_t end = desc->physical_start + (desc->num_pages << 12); - - /* post-4G addresses are never supported on 32-bit EFI. - Moreover it has been reported that some 64-bit EFI contrary to the - spec don't map post-4G pages. So if you enable post-4G allocations, - map pages manually or check that they are mapped. - */ - if (end >= 0x100000000ULL) - end = 0x100000000ULL; - if (end <= start) - continue; - if (desc->type != GRUB_EFI_CONVENTIONAL_MEMORY) - continue; - events[counter].type = REG_FIRMWARE_START; - events[counter].pos = start; - counter++; - events[counter].type = REG_FIRMWARE_END; - events[counter].pos = end; - counter++; - } - - return counter; -} - -int -grub_relocator_firmware_alloc_region (grub_addr_t start, grub_size_t size) -{ - grub_efi_boot_services_t *b; - grub_efi_physical_address_t address = start; - grub_efi_status_t status; - - if (grub_efi_is_finished) - return 1; -#ifdef DEBUG_RELOCATOR_NOMEM_DPRINTF - grub_dprintf ("relocator", "EFI alloc: %llx, %llx\n", - (unsigned long long) start, (unsigned long long) size); -#endif - b = grub_efi_system_table->boot_services; - status = efi_call_4 (b->allocate_pages, GRUB_EFI_ALLOCATE_ADDRESS, - GRUB_EFI_LOADER_DATA, size >> 12, &address); - return (status == GRUB_EFI_SUCCESS); -} - -void -grub_relocator_firmware_free_region (grub_addr_t start, grub_size_t size) -{ - grub_efi_boot_services_t *b; - - if (grub_efi_is_finished) - return; - - b = grub_efi_system_table->boot_services; - efi_call_2 (b->free_pages, start, size >> 12); -} diff --git a/thirdparty/grub-2.04/grub-core/lib/emu/halt.c b/thirdparty/grub-2.04/grub-core/lib/emu/halt.c deleted file mode 100644 index 620935b5a..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/emu/halt.c +++ /dev/null @@ -1,25 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2003,2004,2005,2006,2007,2008,2009,2010 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include - -void -grub_halt (void) -{ - grub_reboot (); -} diff --git a/thirdparty/grub-2.04/grub-core/lib/envblk.c b/thirdparty/grub-2.04/grub-core/lib/envblk.c deleted file mode 100644 index 230e0e9d9..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/envblk.c +++ /dev/null @@ -1,297 +0,0 @@ -/* envblk.c - Common functions for environment block. */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2008,2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include - -grub_envblk_t -grub_envblk_open (char *buf, grub_size_t size) -{ - grub_envblk_t envblk; - - if (size < sizeof (GRUB_ENVBLK_SIGNATURE) - || grub_memcmp (buf, GRUB_ENVBLK_SIGNATURE, - sizeof (GRUB_ENVBLK_SIGNATURE) - 1)) - { - grub_error (GRUB_ERR_BAD_FILE_TYPE, "invalid environment block"); - return 0; - } - - envblk = grub_malloc (sizeof (*envblk)); - if (envblk) - { - envblk->buf = buf; - envblk->size = size; - } - - return envblk; -} - -void -grub_envblk_close (grub_envblk_t envblk) -{ - grub_free (envblk->buf); - grub_free (envblk); -} - -static int -escaped_value_len (const char *value) -{ - int n = 0; - char *p; - - for (p = (char *) value; *p; p++) - { - if (*p == '\\' || *p == '\n') - n += 2; - else - n++; - } - - return n; -} - -static char * -find_next_line (char *p, const char *pend) -{ - while (p < pend) - { - if (*p == '\\') - p += 2; - else if (*p == '\n') - break; - else - p++; - } - - return p + 1; -} - -int -grub_envblk_set (grub_envblk_t envblk, const char *name, const char *value) -{ - char *p, *pend; - char *space; - int found = 0; - int nl; - int vl; - int i; - - nl = grub_strlen (name); - vl = escaped_value_len (value); - p = envblk->buf + sizeof (GRUB_ENVBLK_SIGNATURE) - 1; - pend = envblk->buf + envblk->size; - - /* First, look at free space. */ - for (space = pend - 1; *space == '#'; space--) - ; - - if (*space != '\n') - /* Broken. */ - return 0; - - space++; - - while (p + nl + 1 < space) - { - if (grub_memcmp (p, name, nl) == 0 && p[nl] == '=') - { - int len; - - /* Found the same name. */ - p += nl + 1; - - /* Check the length of the current value. */ - len = 0; - while (p + len < pend && p[len] != '\n') - { - if (p[len] == '\\') - len += 2; - else - len++; - } - - if (p + len >= pend) - /* Broken. */ - return 0; - - if (pend - space < vl - len) - /* No space. */ - return 0; - - if (vl < len) - { - /* Move the following characters backward, and fill the new - space with harmless characters. */ - grub_memmove (p + vl, p + len, pend - (p + len)); - grub_memset (space + len - vl, '#', len - vl); - } - else - /* Move the following characters forward. */ - grub_memmove (p + vl, p + len, pend - (p + vl)); - - found = 1; - break; - } - - p = find_next_line (p, pend); - } - - if (! found) - { - /* Append a new variable. */ - - if (pend - space < nl + 1 + vl + 1) - /* No space. */ - return 0; - - grub_memcpy (space, name, nl); - p = space + nl; - *p++ = '='; - } - - /* Write the value. */ - for (i = 0; value[i]; i++) - { - if (value[i] == '\\' || value[i] == '\n') - *p++ = '\\'; - - *p++ = value[i]; - } - - *p = '\n'; - return 1; -} - -void -grub_envblk_delete (grub_envblk_t envblk, const char *name) -{ - char *p, *pend; - int nl; - - nl = grub_strlen (name); - p = envblk->buf + sizeof (GRUB_ENVBLK_SIGNATURE) - 1; - pend = envblk->buf + envblk->size; - - while (p + nl + 1 < pend) - { - if (grub_memcmp (p, name, nl) == 0 && p[nl] == '=') - { - /* Found. */ - int len = nl + 1; - - while (p + len < pend) - { - if (p[len] == '\n') - break; - else if (p[len] == '\\') - len += 2; - else - len++; - } - - if (p + len >= pend) - /* Broken. */ - return; - - len++; - grub_memmove (p, p + len, pend - (p + len)); - grub_memset (pend - len, '#', len); - break; - } - - p = find_next_line (p, pend); - } -} - -void -grub_envblk_iterate (grub_envblk_t envblk, - void *hook_data, - int hook (const char *name, const char *value, void *hook_data)) -{ - char *p, *pend; - - p = envblk->buf + sizeof (GRUB_ENVBLK_SIGNATURE) - 1; - pend = envblk->buf + envblk->size; - - while (p < pend) - { - if (*p != '#') - { - char *name; - char *value; - char *name_start, *name_end, *value_start; - char *q; - int ret; - - name_start = p; - while (p < pend && *p != '=') - p++; - if (p == pend) - /* Broken. */ - return; - name_end = p; - - p++; - value_start = p; - while (p < pend) - { - if (*p == '\n') - break; - else if (*p == '\\') - p += 2; - else - p++; - } - - if (p >= pend) - /* Broken. */ - return; - - name = grub_malloc (p - name_start + 1); - if (! name) - /* out of memory. */ - return; - - value = name + (value_start - name_start); - - grub_memcpy (name, name_start, name_end - name_start); - name[name_end - name_start] = '\0'; - - for (p = value_start, q = value; *p != '\n'; ++p) - { - if (*p == '\\') - *q++ = *++p; - else - *q++ = *p; - } - *q = '\0'; - - ret = hook (name, value, hook_data); - grub_free (name); - if (ret) - return; - } - - p = find_next_line (p, pend); - } -} diff --git a/thirdparty/grub-2.04/grub-core/lib/fake_module.c b/thirdparty/grub-2.04/grub-core/lib/fake_module.c deleted file mode 100644 index 3646cedbc..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/fake_module.c +++ /dev/null @@ -1,4 +0,0 @@ -/* This file is intentionally empty: it's used to generate modules with no code or data. (purely dependency modules) */ -#include - -GRUB_MOD_LICENSE ("GPLv3+"); diff --git a/thirdparty/grub-2.04/grub-core/lib/fdt.c b/thirdparty/grub-2.04/grub-core/lib/fdt.c deleted file mode 100644 index 0d371c563..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/fdt.c +++ /dev/null @@ -1,531 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2013 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -#define FDT_SUPPORTED_VERSION 17 - -#define FDT_BEGIN_NODE 0x00000001 -#define FDT_END_NODE 0x00000002 -#define FDT_PROP 0x00000003 -#define FDT_NOP 0x00000004 -#define FDT_END 0x00000009 - -#define struct_end(fdt) \ - ((grub_addr_t) fdt + grub_fdt_get_off_dt_struct(fdt) \ - + grub_fdt_get_size_dt_struct(fdt)) - -/* Size needed by a node entry: 2 tokens (FDT_BEGIN_NODE and FDT_END_NODE), plus - the NULL-terminated string containing the name, plus padding if needed. */ -#define node_entry_size(node_name) \ - (2 * sizeof(grub_uint32_t) \ - + ALIGN_UP (grub_strlen (name) + 1, sizeof(grub_uint32_t))) - -#define SKIP_NODE_NAME(name, token, end) \ - name = (char *) ((token) + 1); \ - while (name < (char *) end) \ - { \ - if (!*name++) \ - break; \ - } \ - token = (grub_uint32_t *) ALIGN_UP((grub_addr_t) (name), sizeof(*token)) - - -static grub_uint32_t *get_next_node (const void *fdt, char *node_name) -{ - grub_uint32_t *end = (void *) struct_end (fdt); - grub_uint32_t *token; - - if (node_name >= (char *) end) - return NULL; - while (*node_name++) - { - if (node_name >= (char *) end) - return NULL; - } - token = (grub_uint32_t *) ALIGN_UP ((grub_addr_t) node_name, 4); - while (token < end) - { - switch (grub_be_to_cpu32(*token)) - { - case FDT_BEGIN_NODE: - token = get_next_node (fdt, (char *) (token + 1)); - if (!token) - return NULL; - break; - case FDT_END_NODE: - token++; - if (token >= end) - return NULL; - return token; - case FDT_PROP: - /* Skip property token and following data (len, nameoff and property - value). */ - token += grub_fdt_prop_entry_size(grub_be_to_cpu32(*(token + 1))) - / sizeof(*token); - break; - case FDT_NOP: - token++; - break; - default: - return NULL; - } - } - return NULL; -} - -static int get_mem_rsvmap_size (const void *fdt) -{ - int size = 0; - grub_unaligned_uint64_t *ptr = (void *) ((grub_addr_t) fdt - + grub_fdt_get_off_mem_rsvmap (fdt)); - - do - { - size += 2 * sizeof(*ptr); - if (!ptr[0].val && !ptr[1].val) - return size; - ptr += 2; - } while ((grub_addr_t) ptr <= (grub_addr_t) fdt + grub_fdt_get_totalsize (fdt) - - 2 * sizeof(grub_uint64_t)); - return -1; -} - -static grub_uint32_t get_free_space (void *fdt) -{ - int mem_rsvmap_size = get_mem_rsvmap_size (fdt); - - if (mem_rsvmap_size < 0) - /* invalid memory reservation block */ - return 0; - return (grub_fdt_get_totalsize (fdt) - sizeof(grub_fdt_header_t) - - mem_rsvmap_size - grub_fdt_get_size_dt_strings (fdt) - - grub_fdt_get_size_dt_struct (fdt)); -} - -static int add_subnode (void *fdt, int parentoffset, const char *name) -{ - grub_uint32_t *token = (void *) ((grub_addr_t) fdt - + grub_fdt_get_off_dt_struct(fdt) - + parentoffset); - grub_uint32_t *end = (void *) struct_end (fdt); - unsigned int entry_size = node_entry_size (name); - unsigned int struct_size = grub_fdt_get_size_dt_struct(fdt); - char *node_name; - - SKIP_NODE_NAME(node_name, token, end); - - /* Insert the new subnode just after the properties of the parent node (if - any).*/ - while (1) - { - if (token >= end) - return -1; - switch (grub_be_to_cpu32(*token)) - { - case FDT_PROP: - /* Skip len, nameoff and property value. */ - token += grub_fdt_prop_entry_size(grub_be_to_cpu32(*(token + 1))) - / sizeof(*token); - break; - case FDT_BEGIN_NODE: - case FDT_END_NODE: - goto insert; - case FDT_NOP: - token++; - break; - default: - /* invalid token */ - return -1; - } - } -insert: - grub_memmove (token + entry_size / sizeof(*token), token, - (grub_addr_t) end - (grub_addr_t) token); - *token = grub_cpu_to_be32_compile_time(FDT_BEGIN_NODE); - token[entry_size / sizeof(*token) - 2] = 0; /* padding bytes */ - grub_strcpy((char *) (token + 1), name); - token[entry_size / sizeof(*token) - 1] = grub_cpu_to_be32_compile_time(FDT_END_NODE); - grub_fdt_set_size_dt_struct (fdt, struct_size + entry_size); - return ((grub_addr_t) token - (grub_addr_t) fdt - - grub_fdt_get_off_dt_struct(fdt)); -} - -/* Rearrange FDT blocks in the canonical order: first the memory reservation - block (just after the FDT header), then the structure block and finally the - strings block. No free space is left between the first and the second block, - while the space between the second and the third block is given by the - clearance argument. */ -static int rearrange_blocks (void *fdt, unsigned int clearance) -{ - grub_uint32_t off_mem_rsvmap = ALIGN_UP(sizeof(grub_fdt_header_t), 8); - grub_uint32_t off_dt_struct = off_mem_rsvmap + get_mem_rsvmap_size (fdt); - grub_uint32_t off_dt_strings = off_dt_struct - + grub_fdt_get_size_dt_struct (fdt) - + clearance; - grub_uint8_t *fdt_ptr = fdt; - grub_uint8_t *tmp_fdt; - - if ((grub_fdt_get_off_mem_rsvmap (fdt) == off_mem_rsvmap) - && (grub_fdt_get_off_dt_struct (fdt) == off_dt_struct)) - { - /* No need to allocate memory for a temporary FDT, just move the strings - block if needed. */ - if (grub_fdt_get_off_dt_strings (fdt) != off_dt_strings) - { - grub_memmove(fdt_ptr + off_dt_strings, - fdt_ptr + grub_fdt_get_off_dt_strings (fdt), - grub_fdt_get_size_dt_strings (fdt)); - grub_fdt_set_off_dt_strings (fdt, off_dt_strings); - } - return 0; - } - tmp_fdt = grub_malloc (grub_fdt_get_totalsize (fdt)); - if (!tmp_fdt) - return -1; - grub_memcpy (tmp_fdt + off_mem_rsvmap, - fdt_ptr + grub_fdt_get_off_mem_rsvmap (fdt), - get_mem_rsvmap_size (fdt)); - grub_fdt_set_off_mem_rsvmap (fdt, off_mem_rsvmap); - grub_memcpy (tmp_fdt + off_dt_struct, - fdt_ptr + grub_fdt_get_off_dt_struct (fdt), - grub_fdt_get_size_dt_struct (fdt)); - grub_fdt_set_off_dt_struct (fdt, off_dt_struct); - grub_memcpy (tmp_fdt + off_dt_strings, - fdt_ptr + grub_fdt_get_off_dt_strings (fdt), - grub_fdt_get_size_dt_strings (fdt)); - grub_fdt_set_off_dt_strings (fdt, off_dt_strings); - - /* Copy reordered blocks back to fdt. */ - grub_memcpy (fdt_ptr + off_mem_rsvmap, tmp_fdt + off_mem_rsvmap, - grub_fdt_get_totalsize (fdt) - off_mem_rsvmap); - - grub_free(tmp_fdt); - return 0; -} - -static grub_uint32_t *find_prop (const void *fdt, unsigned int nodeoffset, - const char *name) -{ - grub_uint32_t *prop = (void *) ((grub_addr_t) fdt - + grub_fdt_get_off_dt_struct (fdt) - + nodeoffset); - grub_uint32_t *end = (void *) struct_end(fdt); - grub_uint32_t nameoff; - char *node_name; - - SKIP_NODE_NAME(node_name, prop, end); - while (prop < end - 2) - { - if (grub_be_to_cpu32(*prop) == FDT_PROP) - { - nameoff = grub_be_to_cpu32(*(prop + 2)); - if ((nameoff + grub_strlen (name) < grub_fdt_get_size_dt_strings (fdt)) - && !grub_strcmp (name, (char *) fdt + - grub_fdt_get_off_dt_strings (fdt) + nameoff)) - { - if (prop + grub_fdt_prop_entry_size(grub_be_to_cpu32(*(prop + 1))) - / sizeof (*prop) >= end) - return NULL; - return prop; - } - prop += grub_fdt_prop_entry_size(grub_be_to_cpu32(*(prop + 1))) / sizeof (*prop); - } - else if (grub_be_to_cpu32(*prop) == FDT_NOP) - prop++; - else - return NULL; - } - return NULL; -} - -/* Check the FDT header for consistency and adjust the totalsize field to match - the size allocated for the FDT; if this function is called before the other - functions in this file and returns success, the other functions are - guaranteed not to access memory locations outside the allocated memory. */ -int grub_fdt_check_header_nosize (const void *fdt) -{ - if (((grub_addr_t) fdt & 0x3) || (grub_fdt_get_magic (fdt) != FDT_MAGIC) - || (grub_fdt_get_version (fdt) < FDT_SUPPORTED_VERSION) - || (grub_fdt_get_last_comp_version (fdt) > FDT_SUPPORTED_VERSION) - || (grub_fdt_get_off_dt_struct (fdt) & 0x00000003) - || (grub_fdt_get_size_dt_struct (fdt) & 0x00000003) - || (grub_fdt_get_off_dt_struct (fdt) + grub_fdt_get_size_dt_struct (fdt) - > grub_fdt_get_totalsize (fdt)) - || (grub_fdt_get_off_dt_strings (fdt) + grub_fdt_get_size_dt_strings (fdt) - > grub_fdt_get_totalsize (fdt)) - || (grub_fdt_get_off_mem_rsvmap (fdt) & 0x00000007) - || (grub_fdt_get_off_mem_rsvmap (fdt) - > grub_fdt_get_totalsize (fdt) - 2 * sizeof(grub_uint64_t))) - return -1; - return 0; -} - -int grub_fdt_check_header (const void *fdt, unsigned int size) -{ - if (size < sizeof (grub_fdt_header_t) - || (grub_fdt_get_totalsize (fdt) > size) - || grub_fdt_check_header_nosize (fdt) == -1) - return -1; - return 0; -} - -static const grub_uint32_t * -advance_token (const void *fdt, const grub_uint32_t *token, const grub_uint32_t *end, int skip_current) -{ - for (; token < end; skip_current = 0) - { - switch (grub_be_to_cpu32 (*token)) - { - case FDT_BEGIN_NODE: - if (skip_current) - { - token = get_next_node (fdt, (char *) (token + 1)); - continue; - } - char *ptr; - for (ptr = (char *) (token + 1); *ptr && ptr < (char *) end; ptr++) - ; - if (ptr >= (char *) end) - return 0; - return token; - case FDT_PROP: - /* Skip property token and following data (len, nameoff and property - value). */ - if (token >= end - 1) - return 0; - token += grub_fdt_prop_entry_size(grub_be_to_cpu32(*(token + 1))) - / sizeof(*token); - break; - case FDT_NOP: - token++; - break; - default: - return 0; - } - } - return 0; -} - -int grub_fdt_next_node (const void *fdt, unsigned int currentoffset) -{ - const grub_uint32_t *token = (const grub_uint32_t *) fdt + (currentoffset + grub_fdt_get_off_dt_struct (fdt)) / 4; - token = advance_token (fdt, token, (const void *) struct_end (fdt), 1); - if (!token) - return -1; - return (int) ((grub_addr_t) token - (grub_addr_t) fdt - - grub_fdt_get_off_dt_struct (fdt)); -} - -int grub_fdt_first_node (const void *fdt, unsigned int parentoffset) -{ - const grub_uint32_t *token, *end; - char *node_name; - - if (parentoffset & 0x3) - return -1; - token = (const void *) ((grub_addr_t) fdt + grub_fdt_get_off_dt_struct(fdt) - + parentoffset); - end = (const void *) struct_end (fdt); - if ((token >= end) || (grub_be_to_cpu32(*token) != FDT_BEGIN_NODE)) - return -1; - SKIP_NODE_NAME(node_name, token, end); - token = advance_token (fdt, token, end, 0); - if (!token) - return -1; - return (int) ((grub_addr_t) token - (grub_addr_t) fdt - - grub_fdt_get_off_dt_struct (fdt)); -} - -/* Find a direct sub-node of a given parent node. */ -int grub_fdt_find_subnode (const void *fdt, unsigned int parentoffset, - const char *name) -{ - const grub_uint32_t *token, *end; - const char *node_name; - int skip_current = 0; - - if (parentoffset & 0x3) - return -1; - token = (const void *) ((grub_addr_t) fdt + grub_fdt_get_off_dt_struct(fdt) - + parentoffset); - end = (const void *) struct_end (fdt); - if ((token >= end) || (grub_be_to_cpu32(*token) != FDT_BEGIN_NODE)) - return -1; - SKIP_NODE_NAME(node_name, token, end); - while (1) { - token = advance_token (fdt, token, end, skip_current); - if (!token) - return -1; - skip_current = 1; - node_name = (const char *) token + 4; - if (grub_strcmp (node_name, name) == 0) - return (int) ((grub_addr_t) token - (grub_addr_t) fdt - - grub_fdt_get_off_dt_struct (fdt)); - } -} - -const char * -grub_fdt_get_nodename (const void *fdt, unsigned int nodeoffset) -{ - return (const char *) fdt + grub_fdt_get_off_dt_struct(fdt) + nodeoffset + 4; -} - -int grub_fdt_add_subnode (void *fdt, unsigned int parentoffset, - const char *name) -{ - unsigned int entry_size = node_entry_size(name); - - if ((parentoffset & 0x3) || (get_free_space (fdt) < entry_size)) - return -1; - - /* The new node entry will increase the size of the structure block: rearrange - blocks such that there is sufficient free space between the structure and - the strings block, then add the new node entry. */ - if (rearrange_blocks (fdt, entry_size) < 0) - return -1; - return add_subnode (fdt, parentoffset, name); -} - -const void * -grub_fdt_get_prop (const void *fdt, unsigned int nodeoffset, const char *name, - grub_uint32_t *len) -{ - grub_uint32_t *prop; - if ((nodeoffset >= grub_fdt_get_size_dt_struct (fdt)) || (nodeoffset & 0x3) - || (grub_be_to_cpu32(*(grub_uint32_t *) ((grub_addr_t) fdt - + grub_fdt_get_off_dt_struct (fdt) + nodeoffset)) - != FDT_BEGIN_NODE)) - return 0; - prop = find_prop (fdt, nodeoffset, name); - if (!prop) - return 0; - if (len) - *len = grub_be_to_cpu32 (*(prop + 1)); - return prop + 3; -} - -int grub_fdt_set_prop (void *fdt, unsigned int nodeoffset, const char *name, - const void *val, grub_uint32_t len) -{ - grub_uint32_t *prop; - int prop_name_present = 0; - grub_uint32_t nameoff = 0; - - if ((nodeoffset >= grub_fdt_get_size_dt_struct (fdt)) || (nodeoffset & 0x3) - || (grub_be_to_cpu32(*(grub_uint32_t *) ((grub_addr_t) fdt - + grub_fdt_get_off_dt_struct (fdt) + nodeoffset)) - != FDT_BEGIN_NODE)) - return -1; - prop = find_prop (fdt, nodeoffset, name); - if (prop) - { - grub_uint32_t prop_len = ALIGN_UP(grub_be_to_cpu32 (*(prop + 1)), - sizeof(grub_uint32_t)); - grub_uint32_t i; - - prop_name_present = 1; - for (i = 0; i < prop_len / sizeof(grub_uint32_t); i++) - *(prop + 3 + i) = grub_cpu_to_be32_compile_time (FDT_NOP); - if (len > ALIGN_UP(prop_len, sizeof(grub_uint32_t))) - { - /* Length of new property value is greater than the space allocated - for the current value: a new entry needs to be created, so save the - nameoff field of the current entry and replace the current entry - with NOP tokens. */ - nameoff = grub_be_to_cpu32 (*(prop + 2)); - *prop = *(prop + 1) = *(prop + 2) = grub_cpu_to_be32_compile_time (FDT_NOP); - prop = NULL; - } - } - if (!prop || !prop_name_present) { - unsigned int needed_space = 0; - - if (!prop) - needed_space = grub_fdt_prop_entry_size(len); - if (!prop_name_present) - needed_space += grub_strlen (name) + 1; - if (needed_space > get_free_space (fdt)) - return -1; - if (rearrange_blocks (fdt, !prop ? grub_fdt_prop_entry_size(len) : 0) < 0) - return -1; - } - if (!prop_name_present) { - /* Append the property name at the end of the strings block. */ - nameoff = grub_fdt_get_size_dt_strings (fdt); - grub_strcpy ((char *) fdt + grub_fdt_get_off_dt_strings (fdt) + nameoff, - name); - grub_fdt_set_size_dt_strings (fdt, grub_fdt_get_size_dt_strings (fdt) - + grub_strlen (name) + 1); - } - if (!prop) { - char *node_name = (char *) ((grub_addr_t) fdt - + grub_fdt_get_off_dt_struct (fdt) + nodeoffset - + sizeof(grub_uint32_t)); - - prop = (void *) (node_name + ALIGN_UP(grub_strlen(node_name) + 1, 4)); - grub_memmove (prop + grub_fdt_prop_entry_size(len) / sizeof(*prop), prop, - struct_end(fdt) - (grub_addr_t) prop); - grub_fdt_set_size_dt_struct (fdt, grub_fdt_get_size_dt_struct (fdt) - + grub_fdt_prop_entry_size(len)); - *prop = grub_cpu_to_be32_compile_time (FDT_PROP); - *(prop + 2) = grub_cpu_to_be32 (nameoff); - } - *(prop + 1) = grub_cpu_to_be32 (len); - - /* Insert padding bytes at the end of the value; if they are not needed, they - will be overwritten by the following memcpy. */ - *(prop + grub_fdt_prop_entry_size(len) / sizeof(grub_uint32_t) - 1) = 0; - - grub_memcpy (prop + 3, val, len); - return 0; -} - -int -grub_fdt_create_empty_tree (void *fdt, unsigned int size) -{ - struct grub_fdt_empty_tree *et; - - if (size < GRUB_FDT_EMPTY_TREE_SZ) - return -1; - - grub_memset (fdt, 0, size); - et = fdt; - - et->empty_node.tree_end = grub_cpu_to_be32_compile_time (FDT_END); - et->empty_node.node_end = grub_cpu_to_be32_compile_time (FDT_END_NODE); - et->empty_node.node_start = grub_cpu_to_be32_compile_time (FDT_BEGIN_NODE); - ((struct grub_fdt_empty_tree *) fdt)->header.off_mem_rsvmap = - grub_cpu_to_be32_compile_time (ALIGN_UP (sizeof (grub_fdt_header_t), 8)); - - grub_fdt_set_off_dt_strings (fdt, sizeof (*et)); - grub_fdt_set_off_dt_struct (fdt, - sizeof (et->header) + sizeof (et->empty_rsvmap)); - grub_fdt_set_version (fdt, FDT_SUPPORTED_VERSION); - grub_fdt_set_last_comp_version (fdt, FDT_SUPPORTED_VERSION); - grub_fdt_set_size_dt_struct (fdt, sizeof (et->empty_node)); - grub_fdt_set_totalsize (fdt, size); - grub_fdt_set_magic (fdt, FDT_MAGIC); - - return 0; -} diff --git a/thirdparty/grub-2.04/grub-core/lib/getline.c b/thirdparty/grub-2.04/grub-core/lib/getline.c deleted file mode 100644 index edb8e9ffe..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/getline.c +++ /dev/null @@ -1,92 +0,0 @@ -/* main.c - the normal mode main routine */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2000,2001,2002,2003,2005,2006,2007,2008,2009,2013 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -/* Read a line from the file FILE. */ -char * -grub_file_getline (grub_file_t file) -{ - char c; - grub_size_t pos = 0; - char *cmdline; - int have_newline = 0; - grub_size_t max_len = 64; - - /* Initially locate some space. */ - cmdline = grub_malloc (max_len); - if (! cmdline) - return 0; - - while (1) - { - if (grub_file_read (file, &c, 1) != 1) - break; - - /* Skip all carriage returns. */ - if (c == '\r') - continue; - - - if (pos + 1 >= max_len) - { - char *old_cmdline = cmdline; - max_len = max_len * 2; - cmdline = grub_realloc (cmdline, max_len); - if (! cmdline) - { - grub_free (old_cmdline); - return 0; - } - } - - if (c == '\n') - { - have_newline = 1; - break; - } - - cmdline[pos++] = c; - } - - cmdline[pos] = '\0'; - - /* If the buffer is empty, don't return anything at all. */ - if (pos == 0 && !have_newline) - { - grub_free (cmdline); - cmdline = 0; - } - - return cmdline; -} diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib-patches/fix-null-deref.patch b/thirdparty/grub-2.04/grub-core/lib/gnulib-patches/fix-null-deref.patch deleted file mode 100644 index 8fafa153a..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib-patches/fix-null-deref.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff --git a/lib/argp-parse.c b/lib/argp-parse.c -index 6dec57310..900adad54 100644 ---- a/lib/argp-parse.c -+++ b/lib/argp-parse.c -@@ -940,7 +940,7 @@ weak_alias (__argp_parse, argp_parse) - void * - __argp_input (const struct argp *argp, const struct argp_state *state) - { -- if (state) -+ if (state && state->pstate) - { - struct group *group; - struct parser *parser = state->pstate; diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib-patches/fix-width.patch b/thirdparty/grub-2.04/grub-core/lib/gnulib-patches/fix-width.patch deleted file mode 100644 index 0a208ad08..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib-patches/fix-width.patch +++ /dev/null @@ -1,217 +0,0 @@ -diff --git a/lib/argp-fmtstream.c b/lib/argp-fmtstream.c -index ba6a407f7..d0685b3d4 100644 ---- a/lib/argp-fmtstream.c -+++ b/lib/argp-fmtstream.c -@@ -28,9 +28,11 @@ - #include - #include - #include -+#include - - #include "argp-fmtstream.h" - #include "argp-namefrob.h" -+#include "mbswidth.h" - - #ifndef ARGP_FMTSTREAM_USE_LINEWRAP - -@@ -115,6 +117,51 @@ weak_alias (__argp_fmtstream_free, argp_fmtstream_free) - #endif - #endif - -+ -+/* Return the pointer to the first character that doesn't fit in l columns. */ -+static inline const ptrdiff_t -+add_width (const char *ptr, const char *end, size_t l) -+{ -+ mbstate_t ps; -+ const char *ptr0 = ptr; -+ -+ memset (&ps, 0, sizeof (ps)); -+ -+ while (ptr < end) -+ { -+ wchar_t wc; -+ size_t s, k; -+ -+ s = mbrtowc (&wc, ptr, end - ptr, &ps); -+ if (s == (size_t) -1) -+ break; -+ if (s == (size_t) -2) -+ { -+ if (1 >= l) -+ break; -+ l--; -+ ptr++; -+ continue; -+ } -+ -+ if (wc == '\e' && ptr + 3 < end -+ && ptr[1] == '[' && (ptr[2] == '0' || ptr[2] == '1') -+ && ptr[3] == 'm') -+ { -+ ptr += 4; -+ continue; -+ } -+ -+ k = wcwidth (wc); -+ -+ if (k >= l) -+ break; -+ l -= k; -+ ptr += s; -+ } -+ return ptr - ptr0; -+} -+ - /* Process FS's buffer so that line wrapping is done from POINT_OFFS to the - end of its buffer. This code is mostly from glibc stdio/linewrap.c. */ - void -@@ -168,13 +215,15 @@ __argp_fmtstream_update (argp_fmtstream_t fs) - if (!nl) - { - /* The buffer ends in a partial line. */ -+ size_t display_width = mbsnwidth (buf, fs->p - buf, -+ MBSW_STOP_AT_NUL); - -- if (fs->point_col + len < fs->rmargin) -+ if (fs->point_col + display_width < fs->rmargin) - { - /* The remaining buffer text is a partial line and fits - within the maximum line width. Advance point for the - characters to be written and stop scanning. */ -- fs->point_col += len; -+ fs->point_col += display_width; - break; - } - else -@@ -182,14 +231,18 @@ __argp_fmtstream_update (argp_fmtstream_t fs) - the end of the buffer. */ - nl = fs->p; - } -- else if (fs->point_col + (nl - buf) < (ssize_t) fs->rmargin) -- { -- /* The buffer contains a full line that fits within the maximum -- line width. Reset point and scan the next line. */ -- fs->point_col = 0; -- buf = nl + 1; -- continue; -- } -+ else -+ { -+ size_t display_width = mbsnwidth (buf, nl - buf, MBSW_STOP_AT_NUL); -+ if (display_width < (ssize_t) fs->rmargin) -+ { -+ /* The buffer contains a full line that fits within the maximum -+ line width. Reset point and scan the next line. */ -+ fs->point_col = 0; -+ buf = nl + 1; -+ continue; -+ } -+ } - - /* This line is too long. */ - r = fs->rmargin - 1; -@@ -225,7 +278,7 @@ __argp_fmtstream_update (argp_fmtstream_t fs) - char *p, *nextline; - int i; - -- p = buf + (r + 1 - fs->point_col); -+ p = buf + add_width (buf, fs->p, (r + 1 - fs->point_col)); - while (p >= buf && !isblank ((unsigned char) *p)) - --p; - nextline = p + 1; /* This will begin the next line. */ -@@ -243,7 +296,7 @@ __argp_fmtstream_update (argp_fmtstream_t fs) - { - /* A single word that is greater than the maximum line width. - Oh well. Put it on an overlong line by itself. */ -- p = buf + (r + 1 - fs->point_col); -+ p = buf + add_width (buf, fs->p, (r + 1 - fs->point_col)); - /* Find the end of the long word. */ - if (p < nl) - do -@@ -277,7 +330,8 @@ __argp_fmtstream_update (argp_fmtstream_t fs) - && fs->p > nextline) - { - /* The margin needs more blanks than we removed. */ -- if (fs->end - fs->p > fs->wmargin + 1) -+ if (mbsnwidth (fs->p, fs->end - fs->p, MBSW_STOP_AT_NUL) -+ > fs->wmargin + 1) - /* Make some space for them. */ - { - size_t mv = fs->p - nextline; -diff --git a/lib/argp-help.c b/lib/argp-help.c -index e5375a0f0..5d8f451ec 100644 ---- a/lib/argp-help.c -+++ b/lib/argp-help.c -@@ -51,6 +51,7 @@ - #include "argp.h" - #include "argp-fmtstream.h" - #include "argp-namefrob.h" -+#include "mbswidth.h" - - #ifndef SIZE_MAX - # define SIZE_MAX ((size_t) -1) -@@ -1432,7 +1433,7 @@ argp_args_usage (const struct argp *argp, const struct argp_state *state, - - /* Manually do line wrapping so that it (probably) won't get wrapped at - any embedded spaces. */ -- space (stream, 1 + nl - cp); -+ space (stream, 1 + mbsnwidth (cp, nl - cp, MBSW_STOP_AT_NUL)); - - __argp_fmtstream_write (stream, cp, nl - cp); - } -diff --git a/lib/mbswidth.c b/lib/mbswidth.c -index 408a15e34..b3fb7f83a 100644 ---- a/lib/mbswidth.c -+++ b/lib/mbswidth.c -@@ -38,6 +38,14 @@ - /* Get INT_MAX. */ - #include - -+#ifndef FALLTHROUGH -+# if __GNUC__ < 7 -+# define FALLTHROUGH ((void) 0) -+# else -+# define FALLTHROUGH __attribute__ ((__fallthrough__)) -+# endif -+#endif -+ - /* Returns the number of columns needed to represent the multibyte - character string pointed to by STRING. If a non-printable character - occurs, and MBSW_REJECT_UNPRINTABLE is specified, -1 is returned. -@@ -90,6 +98,10 @@ mbsnwidth (const char *string, size_t nbytes, int flags) - p++; - width++; - break; -+ case '\0': -+ if (flags & MBSW_STOP_AT_NUL) -+ return width; -+ FALLTHROUGH; - default: - /* If we have a multibyte sequence, scan it up to its end. */ - { -@@ -168,6 +180,9 @@ mbsnwidth (const char *string, size_t nbytes, int flags) - { - unsigned char c = (unsigned char) *p++; - -+ if (c == 0 && (flags & MBSW_STOP_AT_NUL)) -+ return width; -+ - if (isprint (c)) - { - if (width == INT_MAX) -diff --git a/lib/mbswidth.h b/lib/mbswidth.h -index 2b5c53c37..45a123e63 100644 ---- a/lib/mbswidth.h -+++ b/lib/mbswidth.h -@@ -45,6 +45,10 @@ extern "C" { - control characters and 1 otherwise. */ - #define MBSW_REJECT_UNPRINTABLE 2 - -+/* If this bit is set \0 is treated as the end of string. -+ Otherwise it's treated as a normal one column width character. */ -+#define MBSW_STOP_AT_NUL 4 -+ - - /* Returns the number of screen columns needed for STRING. */ - #define mbswidth gnu_mbswidth /* avoid clash with UnixWare 7.1.1 function */ diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib-patches/no-abort.patch b/thirdparty/grub-2.04/grub-core/lib/gnulib-patches/no-abort.patch deleted file mode 100644 index e469c4762..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib-patches/no-abort.patch +++ /dev/null @@ -1,26 +0,0 @@ -diff --git a/lib/regcomp.c b/lib/regcomp.c -index cc85f35ac..de45ebb5c 100644 ---- a/lib/regcomp.c -+++ b/lib/regcomp.c -@@ -528,9 +528,9 @@ regerror (int errcode, const regex_t *__restrict preg, char *__restrict errbuf, - to this routine. If we are given anything else, or if other regex - code generates an invalid error code, then the program has a bug. - Dump core so we can fix it. */ -- abort (); -- -- msg = gettext (__re_error_msgid + __re_error_msgid_idx[errcode]); -+ msg = gettext ("unknown regexp error"); -+ else -+ msg = gettext (__re_error_msgid + __re_error_msgid_idx[errcode]); - - msg_size = strlen (msg) + 1; /* Includes the null. */ - -@@ -1136,7 +1136,7 @@ optimize_utf8 (re_dfa_t *dfa) - } - break; - default: -- abort (); -+ break; - } - - if (mb_chars || has_period) diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/Makefile.am b/thirdparty/grub-2.04/grub-core/lib/gnulib/Makefile.am deleted file mode 100644 index 76446f2b9..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/Makefile.am +++ /dev/null @@ -1,2214 +0,0 @@ -## DO NOT EDIT! GENERATED AUTOMATICALLY! -## Process this file with automake to produce Makefile.in. -# Copyright (C) 2002-2019 Free Software Foundation, Inc. -# -# This file is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 3 of the License, or -# (at your option) any later version. -# -# This file is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this file. If not, see . -# -# As a special exception to the GNU General Public License, -# this file may be distributed as part of a program that -# contains a configuration script generated by Autoconf, under -# the same distribution terms as the rest of that program. -# -# Generated by gnulib-tool. -# Reproduce by: -# gnulib-tool --import --local-dir=gl \ -# --lib=libgnu \ -# --source-base=grub-core/lib/gnulib \ -# --m4-base=m4 \ -# --doc-base=doc \ -# --tests-base=tests \ -# --aux-dir=build-aux \ -# --no-conditional-dependencies \ -# --no-libtool \ -# --macro-prefix=gl \ -# --no-vc-files \ -# argp \ -# error \ -# fnmatch \ -# getdelim \ -# getline \ -# gettext-h \ -# gitlog-to-changelog \ -# mbswidth \ -# progname \ -# realloc-gnu \ -# regex \ -# save-cwd - -AUTOMAKE_OPTIONS = 1.11 gnits subdir-objects - -SUBDIRS = -noinst_HEADERS = -noinst_LIBRARIES = -noinst_LTLIBRARIES = -EXTRA_DIST = -BUILT_SOURCES = -SUFFIXES = -MOSTLYCLEANFILES = core *.stackdump -MOSTLYCLEANDIRS = -CLEANFILES = -DISTCLEANFILES = -MAINTAINERCLEANFILES = -# No GNU Make output. - -AM_CPPFLAGS = -AM_CFLAGS = - -noinst_LIBRARIES += libgnu.a - -libgnu_a_SOURCES = -libgnu_a_LIBADD = $(gl_LIBOBJS) -libgnu_a_DEPENDENCIES = $(gl_LIBOBJS) -EXTRA_libgnu_a_SOURCES = - -## begin gnulib module absolute-header - -# Use this preprocessor expression to decide whether #include_next works. -# Do not rely on a 'configure'-time test for this, since the expression -# might appear in an installed header, which is used by some other compiler. -HAVE_INCLUDE_NEXT = (__GNUC__ || 60000000 <= __DECC_VER) - -## end gnulib module absolute-header - -## begin gnulib module alloca - - -libgnu_a_LIBADD += @ALLOCA@ -libgnu_a_DEPENDENCIES += @ALLOCA@ -EXTRA_DIST += alloca.c - -EXTRA_libgnu_a_SOURCES += alloca.c - -## end gnulib module alloca - -## begin gnulib module alloca-opt - -BUILT_SOURCES += $(ALLOCA_H) - -# We need the following in order to create when the system -# doesn't have one that works with the given compiler. -if GL_GENERATE_ALLOCA_H -alloca.h: alloca.in.h $(top_builddir)/config.status - $(AM_V_GEN)rm -f $@-t $@ && \ - { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \ - cat $(srcdir)/alloca.in.h; \ - } > $@-t && \ - mv -f $@-t $@ -else -alloca.h: $(top_builddir)/config.status - rm -f $@ -endif -MOSTLYCLEANFILES += alloca.h alloca.h-t - -EXTRA_DIST += alloca.in.h - -## end gnulib module alloca-opt - -## begin gnulib module argp - -libgnu_a_SOURCES += argp.h argp-ba.c argp-eexst.c argp-fmtstream.c argp-fmtstream.h argp-fs-xinl.c argp-help.c argp-namefrob.h argp-parse.c argp-pin.c argp-pv.c argp-pvh.c argp-xinl.c - -## end gnulib module argp - -## begin gnulib module assure - - -EXTRA_DIST += assure.h - -## end gnulib module assure - -## begin gnulib module at-internal - - -EXTRA_DIST += openat-priv.h openat-proc.c - -EXTRA_libgnu_a_SOURCES += openat-proc.c - -## end gnulib module at-internal - -## begin gnulib module btowc - - -EXTRA_DIST += btowc.c - -EXTRA_libgnu_a_SOURCES += btowc.c - -## end gnulib module btowc - -## begin gnulib module chdir-long - - -EXTRA_DIST += chdir-long.c chdir-long.h - -EXTRA_libgnu_a_SOURCES += chdir-long.c - -## end gnulib module chdir-long - -## begin gnulib module cloexec - -libgnu_a_SOURCES += cloexec.c - -EXTRA_DIST += cloexec.h - -## end gnulib module cloexec - -## begin gnulib module close - - -EXTRA_DIST += close.c - -EXTRA_libgnu_a_SOURCES += close.c - -## end gnulib module close - -## begin gnulib module dirent - -BUILT_SOURCES += dirent.h - -# We need the following in order to create when the system -# doesn't have one that works with the given compiler. -dirent.h: dirent.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H) $(WARN_ON_USE_H) - $(AM_V_GEN)rm -f $@-t $@ && \ - { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \ - sed -e 's|@''GUARD_PREFIX''@|GL|g' \ - -e 's|@''HAVE_DIRENT_H''@|$(HAVE_DIRENT_H)|g' \ - -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ - -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ - -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \ - -e 's|@''NEXT_DIRENT_H''@|$(NEXT_DIRENT_H)|g' \ - -e 's/@''GNULIB_OPENDIR''@/$(GNULIB_OPENDIR)/g' \ - -e 's/@''GNULIB_READDIR''@/$(GNULIB_READDIR)/g' \ - -e 's/@''GNULIB_REWINDDIR''@/$(GNULIB_REWINDDIR)/g' \ - -e 's/@''GNULIB_CLOSEDIR''@/$(GNULIB_CLOSEDIR)/g' \ - -e 's/@''GNULIB_DIRFD''@/$(GNULIB_DIRFD)/g' \ - -e 's/@''GNULIB_FDOPENDIR''@/$(GNULIB_FDOPENDIR)/g' \ - -e 's/@''GNULIB_SCANDIR''@/$(GNULIB_SCANDIR)/g' \ - -e 's/@''GNULIB_ALPHASORT''@/$(GNULIB_ALPHASORT)/g' \ - -e 's/@''HAVE_OPENDIR''@/$(HAVE_OPENDIR)/g' \ - -e 's/@''HAVE_READDIR''@/$(HAVE_READDIR)/g' \ - -e 's/@''HAVE_REWINDDIR''@/$(HAVE_REWINDDIR)/g' \ - -e 's/@''HAVE_CLOSEDIR''@/$(HAVE_CLOSEDIR)/g' \ - -e 's|@''HAVE_DECL_DIRFD''@|$(HAVE_DECL_DIRFD)|g' \ - -e 's|@''HAVE_DECL_FDOPENDIR''@|$(HAVE_DECL_FDOPENDIR)|g' \ - -e 's|@''HAVE_FDOPENDIR''@|$(HAVE_FDOPENDIR)|g' \ - -e 's|@''HAVE_SCANDIR''@|$(HAVE_SCANDIR)|g' \ - -e 's|@''HAVE_ALPHASORT''@|$(HAVE_ALPHASORT)|g' \ - -e 's|@''REPLACE_OPENDIR''@|$(REPLACE_OPENDIR)|g' \ - -e 's|@''REPLACE_CLOSEDIR''@|$(REPLACE_CLOSEDIR)|g' \ - -e 's|@''REPLACE_DIRFD''@|$(REPLACE_DIRFD)|g' \ - -e 's|@''REPLACE_FDOPENDIR''@|$(REPLACE_FDOPENDIR)|g' \ - -e '/definitions of _GL_FUNCDECL_RPL/r $(CXXDEFS_H)' \ - -e '/definition of _GL_ARG_NONNULL/r $(ARG_NONNULL_H)' \ - -e '/definition of _GL_WARN_ON_USE/r $(WARN_ON_USE_H)' \ - < $(srcdir)/dirent.in.h; \ - } > $@-t && \ - mv $@-t $@ -MOSTLYCLEANFILES += dirent.h dirent.h-t - -EXTRA_DIST += dirent.in.h - -## end gnulib module dirent - -## begin gnulib module dirfd - - -EXTRA_DIST += dirfd.c - -EXTRA_libgnu_a_SOURCES += dirfd.c - -## end gnulib module dirfd - -## begin gnulib module dirname-lgpl - -libgnu_a_SOURCES += dirname-lgpl.c basename-lgpl.c stripslash.c - -EXTRA_DIST += dirname.h - -## end gnulib module dirname-lgpl - -## begin gnulib module dosname - - -EXTRA_DIST += dosname.h - -## end gnulib module dosname - -## begin gnulib module dup2 - - -EXTRA_DIST += dup2.c - -EXTRA_libgnu_a_SOURCES += dup2.c - -## end gnulib module dup2 - -## begin gnulib module errno - -BUILT_SOURCES += $(ERRNO_H) - -# We need the following in order to create when the system -# doesn't have one that is POSIX compliant. -if GL_GENERATE_ERRNO_H -errno.h: errno.in.h $(top_builddir)/config.status - $(AM_V_GEN)rm -f $@-t $@ && \ - { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */' && \ - sed -e 's|@''GUARD_PREFIX''@|GL|g' \ - -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ - -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ - -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \ - -e 's|@''NEXT_ERRNO_H''@|$(NEXT_ERRNO_H)|g' \ - -e 's|@''EMULTIHOP_HIDDEN''@|$(EMULTIHOP_HIDDEN)|g' \ - -e 's|@''EMULTIHOP_VALUE''@|$(EMULTIHOP_VALUE)|g' \ - -e 's|@''ENOLINK_HIDDEN''@|$(ENOLINK_HIDDEN)|g' \ - -e 's|@''ENOLINK_VALUE''@|$(ENOLINK_VALUE)|g' \ - -e 's|@''EOVERFLOW_HIDDEN''@|$(EOVERFLOW_HIDDEN)|g' \ - -e 's|@''EOVERFLOW_VALUE''@|$(EOVERFLOW_VALUE)|g' \ - < $(srcdir)/errno.in.h; \ - } > $@-t && \ - mv $@-t $@ -else -errno.h: $(top_builddir)/config.status - rm -f $@ -endif -MOSTLYCLEANFILES += errno.h errno.h-t - -EXTRA_DIST += errno.in.h - -## end gnulib module errno - -## begin gnulib module error - - -EXTRA_DIST += error.c error.h - -EXTRA_libgnu_a_SOURCES += error.c - -## end gnulib module error - -## begin gnulib module exitfail - -libgnu_a_SOURCES += exitfail.c - -EXTRA_DIST += exitfail.h - -## end gnulib module exitfail - -## begin gnulib module fchdir - - -EXTRA_DIST += fchdir.c - -EXTRA_libgnu_a_SOURCES += fchdir.c - -## end gnulib module fchdir - -## begin gnulib module fcntl - - -EXTRA_DIST += fcntl.c - -EXTRA_libgnu_a_SOURCES += fcntl.c - -## end gnulib module fcntl - -## begin gnulib module fcntl-h - -BUILT_SOURCES += fcntl.h - -# We need the following in order to create when the system -# doesn't have one that works with the given compiler. -fcntl.h: fcntl.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H) $(WARN_ON_USE_H) - $(AM_V_GEN)rm -f $@-t $@ && \ - { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \ - sed -e 's|@''GUARD_PREFIX''@|GL|g' \ - -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ - -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ - -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \ - -e 's|@''NEXT_FCNTL_H''@|$(NEXT_FCNTL_H)|g' \ - -e 's/@''GNULIB_FCNTL''@/$(GNULIB_FCNTL)/g' \ - -e 's/@''GNULIB_NONBLOCKING''@/$(GNULIB_NONBLOCKING)/g' \ - -e 's/@''GNULIB_OPEN''@/$(GNULIB_OPEN)/g' \ - -e 's/@''GNULIB_OPENAT''@/$(GNULIB_OPENAT)/g' \ - -e 's|@''HAVE_FCNTL''@|$(HAVE_FCNTL)|g' \ - -e 's|@''HAVE_OPENAT''@|$(HAVE_OPENAT)|g' \ - -e 's|@''REPLACE_FCNTL''@|$(REPLACE_FCNTL)|g' \ - -e 's|@''REPLACE_OPEN''@|$(REPLACE_OPEN)|g' \ - -e 's|@''REPLACE_OPENAT''@|$(REPLACE_OPENAT)|g' \ - -e '/definitions of _GL_FUNCDECL_RPL/r $(CXXDEFS_H)' \ - -e '/definition of _GL_ARG_NONNULL/r $(ARG_NONNULL_H)' \ - -e '/definition of _GL_WARN_ON_USE/r $(WARN_ON_USE_H)' \ - < $(srcdir)/fcntl.in.h; \ - } > $@-t && \ - mv $@-t $@ -MOSTLYCLEANFILES += fcntl.h fcntl.h-t - -EXTRA_DIST += fcntl.in.h - -## end gnulib module fcntl-h - -## begin gnulib module fd-hook - -libgnu_a_SOURCES += fd-hook.c - -EXTRA_DIST += fd-hook.h - -## end gnulib module fd-hook - -## begin gnulib module fd-safer-flag - -libgnu_a_SOURCES += fd-safer-flag.c dup-safer-flag.c - -## end gnulib module fd-safer-flag - -## begin gnulib module filename - - -EXTRA_DIST += filename.h - -## end gnulib module filename - -## begin gnulib module filenamecat-lgpl - -libgnu_a_SOURCES += filenamecat-lgpl.c - -EXTRA_DIST += filenamecat.h - -## end gnulib module filenamecat-lgpl - -## begin gnulib module flexmember - - -EXTRA_DIST += flexmember.h - -## end gnulib module flexmember - -## begin gnulib module float - -BUILT_SOURCES += $(FLOAT_H) - -# We need the following in order to create when the system -# doesn't have one that works with the given compiler. -if GL_GENERATE_FLOAT_H -float.h: float.in.h $(top_builddir)/config.status - $(AM_V_GEN)rm -f $@-t $@ && \ - { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */' && \ - sed -e 's|@''GUARD_PREFIX''@|GL|g' \ - -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ - -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ - -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \ - -e 's|@''NEXT_FLOAT_H''@|$(NEXT_FLOAT_H)|g' \ - -e 's|@''REPLACE_ITOLD''@|$(REPLACE_ITOLD)|g' \ - < $(srcdir)/float.in.h; \ - } > $@-t && \ - mv $@-t $@ -else -float.h: $(top_builddir)/config.status - rm -f $@ -endif -MOSTLYCLEANFILES += float.h float.h-t - -EXTRA_DIST += float.c float.in.h itold.c - -EXTRA_libgnu_a_SOURCES += float.c itold.c - -## end gnulib module float - -## begin gnulib module fnmatch - - -EXTRA_DIST += fnmatch.c fnmatch_loop.c - -EXTRA_libgnu_a_SOURCES += fnmatch.c fnmatch_loop.c - -## end gnulib module fnmatch - -## begin gnulib module fnmatch-h - -BUILT_SOURCES += $(FNMATCH_H) - -# We need the following in order to create . -if GL_GENERATE_FNMATCH_H -fnmatch.h: fnmatch.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H) $(WARN_ON_USE_H) - $(AM_V_GEN)rm -f $@-t $@ && \ - { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */' && \ - sed -e 's|@''GUARD_PREFIX''@|GL|g' \ - -e 's|@''HAVE_FNMATCH_H''@|$(HAVE_FNMATCH_H)|g' \ - -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ - -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ - -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \ - -e 's|@''NEXT_FNMATCH_H''@|$(NEXT_FNMATCH_H)|g' \ - -e 's/@''GNULIB_FNMATCH''@/$(GNULIB_FNMATCH)/g' \ - -e 's|@''HAVE_FNMATCH''@|$(HAVE_FNMATCH)|g' \ - -e 's|@''REPLACE_FNMATCH''@|$(REPLACE_FNMATCH)|g' \ - -e '/definitions of _GL_FUNCDECL_RPL/r $(CXXDEFS_H)' \ - -e '/definition of _GL_ARG_NONNULL/r $(ARG_NONNULL_H)' \ - -e '/definition of _GL_WARN_ON_USE/r $(WARN_ON_USE_H)' \ - < $(srcdir)/fnmatch.in.h; \ - } > $@-t && \ - mv $@-t $@ -else -fnmatch.h: $(top_builddir)/config.status - rm -f $@ -endif -MOSTLYCLEANFILES += fnmatch.h fnmatch.h-t - -EXTRA_DIST += fnmatch.in.h - -## end gnulib module fnmatch-h - -## begin gnulib module fstat - - -EXTRA_DIST += fstat.c stat-w32.c stat-w32.h - -EXTRA_libgnu_a_SOURCES += fstat.c stat-w32.c - -## end gnulib module fstat - -## begin gnulib module getcwd-lgpl - - -EXTRA_DIST += getcwd-lgpl.c - -EXTRA_libgnu_a_SOURCES += getcwd-lgpl.c - -## end gnulib module getcwd-lgpl - -## begin gnulib module getdelim - - -EXTRA_DIST += getdelim.c - -EXTRA_libgnu_a_SOURCES += getdelim.c - -## end gnulib module getdelim - -## begin gnulib module getdtablesize - - -EXTRA_DIST += getdtablesize.c - -EXTRA_libgnu_a_SOURCES += getdtablesize.c - -## end gnulib module getdtablesize - -## begin gnulib module getline - - -EXTRA_DIST += getline.c - -EXTRA_libgnu_a_SOURCES += getline.c - -## end gnulib module getline - -## begin gnulib module getopt-posix - -BUILT_SOURCES += $(GETOPT_H) $(GETOPT_CDEFS_H) - -# We need the following in order to create when the system -# doesn't have one that works with the given compiler. -getopt.h: getopt.in.h $(top_builddir)/config.status $(ARG_NONNULL_H) - $(AM_V_GEN)rm -f $@-t $@ && \ - { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \ - sed -e 's|@''GUARD_PREFIX''@|GL|g' \ - -e 's|@''HAVE_GETOPT_H''@|$(HAVE_GETOPT_H)|g' \ - -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ - -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ - -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \ - -e 's|@''NEXT_GETOPT_H''@|$(NEXT_GETOPT_H)|g' \ - -e '/definition of _GL_ARG_NONNULL/r $(ARG_NONNULL_H)' \ - < $(srcdir)/getopt.in.h; \ - } > $@-t && \ - mv -f $@-t $@ - -getopt-cdefs.h: getopt-cdefs.in.h $(top_builddir)/config.status - $(AM_V_GEN)rm -f $@-t $@ && \ - { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \ - sed -e 's|@''HAVE_SYS_CDEFS_H''@|$(HAVE_SYS_CDEFS_H)|g' \ - < $(srcdir)/getopt-cdefs.in.h; \ - } > $@-t && \ - mv -f $@-t $@ - -MOSTLYCLEANFILES += getopt.h getopt.h-t getopt-cdefs.h getopt-cdefs.h-t - -EXTRA_DIST += getopt-cdefs.in.h getopt-core.h getopt-ext.h getopt-pfx-core.h getopt-pfx-ext.h getopt.c getopt.in.h getopt1.c getopt_int.h - -EXTRA_libgnu_a_SOURCES += getopt.c getopt1.c - -## end gnulib module getopt-posix - -## begin gnulib module getprogname - -libgnu_a_SOURCES += getprogname.h getprogname.c - -## end gnulib module getprogname - -## begin gnulib module gettext-h - -libgnu_a_SOURCES += gettext.h - -## end gnulib module gettext-h - -## begin gnulib module gitlog-to-changelog - - -EXTRA_DIST += $(top_srcdir)/build-aux/gitlog-to-changelog - -## end gnulib module gitlog-to-changelog - -## begin gnulib module hard-locale - -libgnu_a_SOURCES += hard-locale.c - -EXTRA_DIST += hard-locale.h - -## end gnulib module hard-locale - -## begin gnulib module havelib - - -EXTRA_DIST += $(top_srcdir)/build-aux/config.rpath - -## end gnulib module havelib - -## begin gnulib module intprops - - -EXTRA_DIST += intprops.h - -## end gnulib module intprops - -## begin gnulib module langinfo - -BUILT_SOURCES += langinfo.h - -# We need the following in order to create an empty placeholder for -# when the system doesn't have one. -langinfo.h: langinfo.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(WARN_ON_USE_H) - $(AM_V_GEN)rm -f $@-t $@ && \ - { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \ - sed -e 's|@''GUARD_PREFIX''@|GL|g' \ - -e 's|@''HAVE_LANGINFO_H''@|$(HAVE_LANGINFO_H)|g' \ - -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ - -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ - -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \ - -e 's|@''NEXT_LANGINFO_H''@|$(NEXT_LANGINFO_H)|g' \ - -e 's/@''GNULIB_NL_LANGINFO''@/$(GNULIB_NL_LANGINFO)/g' \ - -e 's|@''HAVE_LANGINFO_CODESET''@|$(HAVE_LANGINFO_CODESET)|g' \ - -e 's|@''HAVE_LANGINFO_T_FMT_AMPM''@|$(HAVE_LANGINFO_T_FMT_AMPM)|g' \ - -e 's|@''HAVE_LANGINFO_ALTMON''@|$(HAVE_LANGINFO_ALTMON)|g' \ - -e 's|@''HAVE_LANGINFO_ERA''@|$(HAVE_LANGINFO_ERA)|g' \ - -e 's|@''HAVE_LANGINFO_YESEXPR''@|$(HAVE_LANGINFO_YESEXPR)|g' \ - -e 's|@''HAVE_NL_LANGINFO''@|$(HAVE_NL_LANGINFO)|g' \ - -e 's|@''REPLACE_NL_LANGINFO''@|$(REPLACE_NL_LANGINFO)|g' \ - -e '/definitions of _GL_FUNCDECL_RPL/r $(CXXDEFS_H)' \ - -e '/definition of _GL_WARN_ON_USE/r $(WARN_ON_USE_H)' \ - < $(srcdir)/langinfo.in.h; \ - } > $@-t && \ - mv $@-t $@ -MOSTLYCLEANFILES += langinfo.h langinfo.h-t - -EXTRA_DIST += langinfo.in.h - -## end gnulib module langinfo - -## begin gnulib module libc-config - - -EXTRA_DIST += cdefs.h libc-config.h - -## end gnulib module libc-config - -## begin gnulib module limits-h - -BUILT_SOURCES += $(LIMITS_H) - -# We need the following in order to create when the system -# doesn't have one that is compatible with GNU. -if GL_GENERATE_LIMITS_H -limits.h: limits.in.h $(top_builddir)/config.status - $(AM_V_GEN)rm -f $@-t $@ && \ - { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */' && \ - sed -e 's|@''GUARD_PREFIX''@|GL|g' \ - -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ - -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ - -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \ - -e 's|@''NEXT_LIMITS_H''@|$(NEXT_LIMITS_H)|g' \ - < $(srcdir)/limits.in.h; \ - } > $@-t && \ - mv $@-t $@ -else -limits.h: $(top_builddir)/config.status - rm -f $@ -endif -MOSTLYCLEANFILES += limits.h limits.h-t - -EXTRA_DIST += limits.in.h - -## end gnulib module limits-h - -## begin gnulib module localcharset - -libgnu_a_SOURCES += localcharset.c - -EXTRA_DIST += localcharset.h - -## end gnulib module localcharset - -## begin gnulib module locale - -BUILT_SOURCES += locale.h - -# We need the following in order to create when the system -# doesn't have one that provides all definitions. -locale.h: locale.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H) $(WARN_ON_USE_H) - $(AM_V_GEN)rm -f $@-t $@ && \ - { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */' && \ - sed -e 's|@''GUARD_PREFIX''@|GL|g' \ - -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ - -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ - -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \ - -e 's|@''NEXT_LOCALE_H''@|$(NEXT_LOCALE_H)|g' \ - -e 's/@''GNULIB_LOCALECONV''@/$(GNULIB_LOCALECONV)/g' \ - -e 's/@''GNULIB_SETLOCALE''@/$(GNULIB_SETLOCALE)/g' \ - -e 's/@''GNULIB_DUPLOCALE''@/$(GNULIB_DUPLOCALE)/g' \ - -e 's/@''GNULIB_LOCALENAME''@/$(GNULIB_LOCALENAME)/g' \ - -e 's|@''HAVE_NEWLOCALE''@|$(HAVE_NEWLOCALE)|g' \ - -e 's|@''HAVE_DUPLOCALE''@|$(HAVE_DUPLOCALE)|g' \ - -e 's|@''HAVE_FREELOCALE''@|$(HAVE_FREELOCALE)|g' \ - -e 's|@''HAVE_XLOCALE_H''@|$(HAVE_XLOCALE_H)|g' \ - -e 's|@''REPLACE_LOCALECONV''@|$(REPLACE_LOCALECONV)|g' \ - -e 's|@''REPLACE_SETLOCALE''@|$(REPLACE_SETLOCALE)|g' \ - -e 's|@''REPLACE_NEWLOCALE''@|$(REPLACE_NEWLOCALE)|g' \ - -e 's|@''REPLACE_DUPLOCALE''@|$(REPLACE_DUPLOCALE)|g' \ - -e 's|@''REPLACE_FREELOCALE''@|$(REPLACE_FREELOCALE)|g' \ - -e 's|@''REPLACE_STRUCT_LCONV''@|$(REPLACE_STRUCT_LCONV)|g' \ - -e '/definitions of _GL_FUNCDECL_RPL/r $(CXXDEFS_H)' \ - -e '/definition of _GL_ARG_NONNULL/r $(ARG_NONNULL_H)' \ - -e '/definition of _GL_WARN_ON_USE/r $(WARN_ON_USE_H)' \ - < $(srcdir)/locale.in.h; \ - } > $@-t && \ - mv $@-t $@ -MOSTLYCLEANFILES += locale.h locale.h-t - -EXTRA_DIST += locale.in.h - -## end gnulib module locale - -## begin gnulib module localeconv - - -EXTRA_DIST += localeconv.c - -EXTRA_libgnu_a_SOURCES += localeconv.c - -## end gnulib module localeconv - -## begin gnulib module lock - -libgnu_a_SOURCES += glthread/lock.h glthread/lock.c - -## end gnulib module lock - -## begin gnulib module malloc-gnu - - -EXTRA_DIST += malloc.c - -EXTRA_libgnu_a_SOURCES += malloc.c - -## end gnulib module malloc-gnu - -## begin gnulib module malloc-posix - - -EXTRA_DIST += malloc.c - -EXTRA_libgnu_a_SOURCES += malloc.c - -## end gnulib module malloc-posix - -## begin gnulib module malloca - -libgnu_a_SOURCES += malloca.c - -EXTRA_DIST += malloca.h - -## end gnulib module malloca - -## begin gnulib module mbrtowc - - -EXTRA_DIST += mbrtowc.c - -EXTRA_libgnu_a_SOURCES += mbrtowc.c - -## end gnulib module mbrtowc - -## begin gnulib module mbsinit - - -EXTRA_DIST += mbsinit.c - -EXTRA_libgnu_a_SOURCES += mbsinit.c - -## end gnulib module mbsinit - -## begin gnulib module mbsrtowcs - - -EXTRA_DIST += mbsrtowcs-impl.h mbsrtowcs-state.c mbsrtowcs.c - -EXTRA_libgnu_a_SOURCES += mbsrtowcs-state.c mbsrtowcs.c - -## end gnulib module mbsrtowcs - -## begin gnulib module mbswidth - -libgnu_a_SOURCES += mbswidth.h mbswidth.c - -## end gnulib module mbswidth - -## begin gnulib module mbtowc - - -EXTRA_DIST += mbtowc-impl.h mbtowc.c - -EXTRA_libgnu_a_SOURCES += mbtowc.c - -## end gnulib module mbtowc - -## begin gnulib module memchr - - -EXTRA_DIST += memchr.c memchr.valgrind - -EXTRA_libgnu_a_SOURCES += memchr.c - -## end gnulib module memchr - -## begin gnulib module mempcpy - - -EXTRA_DIST += mempcpy.c - -EXTRA_libgnu_a_SOURCES += mempcpy.c - -## end gnulib module mempcpy - -## begin gnulib module memrchr - - -EXTRA_DIST += memrchr.c - -EXTRA_libgnu_a_SOURCES += memrchr.c - -## end gnulib module memrchr - -## begin gnulib module msvc-inval - - -EXTRA_DIST += msvc-inval.c msvc-inval.h - -EXTRA_libgnu_a_SOURCES += msvc-inval.c - -## end gnulib module msvc-inval - -## begin gnulib module msvc-nothrow - - -EXTRA_DIST += msvc-nothrow.c msvc-nothrow.h - -EXTRA_libgnu_a_SOURCES += msvc-nothrow.c - -## end gnulib module msvc-nothrow - -## begin gnulib module nl_langinfo - - -EXTRA_DIST += nl_langinfo.c - -EXTRA_libgnu_a_SOURCES += nl_langinfo.c - -## end gnulib module nl_langinfo - -## begin gnulib module open - - -EXTRA_DIST += open.c - -EXTRA_libgnu_a_SOURCES += open.c - -## end gnulib module open - -## begin gnulib module openat - - -EXTRA_DIST += openat.c - -EXTRA_libgnu_a_SOURCES += openat.c - -## end gnulib module openat - -## begin gnulib module openat-die - -libgnu_a_SOURCES += openat-die.c - -## end gnulib module openat-die - -## begin gnulib module openat-h - - -EXTRA_DIST += openat.h - -## end gnulib module openat-h - -## begin gnulib module pathmax - - -EXTRA_DIST += pathmax.h - -## end gnulib module pathmax - -## begin gnulib module progname - -libgnu_a_SOURCES += progname.h progname.c - -## end gnulib module progname - -## begin gnulib module rawmemchr - - -EXTRA_DIST += rawmemchr.c rawmemchr.valgrind - -EXTRA_libgnu_a_SOURCES += rawmemchr.c - -## end gnulib module rawmemchr - -## begin gnulib module realloc-gnu - - -EXTRA_DIST += realloc.c - -EXTRA_libgnu_a_SOURCES += realloc.c - -## end gnulib module realloc-gnu - -## begin gnulib module realloc-posix - - -EXTRA_DIST += realloc.c - -EXTRA_libgnu_a_SOURCES += realloc.c - -## end gnulib module realloc-posix - -## begin gnulib module regex - - -EXTRA_DIST += regcomp.c regex.c regex.h regex_internal.c regex_internal.h regexec.c - -EXTRA_libgnu_a_SOURCES += regcomp.c regex.c regex_internal.c regexec.c - -## end gnulib module regex - -## begin gnulib module save-cwd - -libgnu_a_SOURCES += save-cwd.c - -EXTRA_DIST += save-cwd.h - -## end gnulib module save-cwd - -## begin gnulib module size_max - -libgnu_a_SOURCES += size_max.h - -## end gnulib module size_max - -## begin gnulib module sleep - - -EXTRA_DIST += sleep.c - -EXTRA_libgnu_a_SOURCES += sleep.c - -## end gnulib module sleep - -## begin gnulib module snippet/_Noreturn - -# Because this Makefile snippet defines a variable used by other -# gnulib Makefile snippets, it must be present in all makefiles that -# need it. This is ensured by the applicability 'all' defined above. - -_NORETURN_H=$(srcdir)/_Noreturn.h - -EXTRA_DIST += _Noreturn.h - -## end gnulib module snippet/_Noreturn - -## begin gnulib module snippet/arg-nonnull - -# Because this Makefile snippet defines a variable used by other -# gnulib Makefile snippets, it must be present in all makefiles that -# need it. This is ensured by the applicability 'all' defined above. - -ARG_NONNULL_H=$(srcdir)/arg-nonnull.h - -EXTRA_DIST += arg-nonnull.h - -## end gnulib module snippet/arg-nonnull - -## begin gnulib module snippet/c++defs - -# Because this Makefile snippet defines a variable used by other -# gnulib Makefile snippets, it must be present in all makefiles that -# need it. This is ensured by the applicability 'all' defined above. - -CXXDEFS_H=$(srcdir)/c++defs.h - -EXTRA_DIST += c++defs.h - -## end gnulib module snippet/c++defs - -## begin gnulib module snippet/warn-on-use - -# Because this Makefile snippet defines a variable used by other -# gnulib Makefile snippets, it must be present in all makefiles that -# need it. This is ensured by the applicability 'all' defined above. - -WARN_ON_USE_H=$(srcdir)/warn-on-use.h - -EXTRA_DIST += warn-on-use.h - -## end gnulib module snippet/warn-on-use - -## begin gnulib module stat - - -EXTRA_DIST += stat-w32.c stat-w32.h stat.c - -EXTRA_libgnu_a_SOURCES += stat-w32.c stat.c - -## end gnulib module stat - -## begin gnulib module stat-time - -libgnu_a_SOURCES += stat-time.c - -EXTRA_DIST += stat-time.h - -## end gnulib module stat-time - -## begin gnulib module stdalign - -BUILT_SOURCES += $(STDALIGN_H) - -# We need the following in order to create when the system -# doesn't have one that works. -if GL_GENERATE_STDALIGN_H -stdalign.h: stdalign.in.h $(top_builddir)/config.status - $(AM_V_GEN)rm -f $@-t $@ && \ - { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \ - cat $(srcdir)/stdalign.in.h; \ - } > $@-t && \ - mv $@-t $@ -else -stdalign.h: $(top_builddir)/config.status - rm -f $@ -endif -MOSTLYCLEANFILES += stdalign.h stdalign.h-t - -EXTRA_DIST += stdalign.in.h - -## end gnulib module stdalign - -## begin gnulib module stdbool - -BUILT_SOURCES += $(STDBOOL_H) - -# We need the following in order to create when the system -# doesn't have one that works. -if GL_GENERATE_STDBOOL_H -stdbool.h: stdbool.in.h $(top_builddir)/config.status - $(AM_V_GEN)rm -f $@-t $@ && \ - { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \ - sed -e 's/@''HAVE__BOOL''@/$(HAVE__BOOL)/g' < $(srcdir)/stdbool.in.h; \ - } > $@-t && \ - mv $@-t $@ -else -stdbool.h: $(top_builddir)/config.status - rm -f $@ -endif -MOSTLYCLEANFILES += stdbool.h stdbool.h-t - -EXTRA_DIST += stdbool.in.h - -## end gnulib module stdbool - -## begin gnulib module stddef - -BUILT_SOURCES += $(STDDEF_H) - -# We need the following in order to create when the system -# doesn't have one that works with the given compiler. -if GL_GENERATE_STDDEF_H -stddef.h: stddef.in.h $(top_builddir)/config.status - $(AM_V_GEN)rm -f $@-t $@ && \ - { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */' && \ - sed -e 's|@''GUARD_PREFIX''@|GL|g' \ - -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ - -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ - -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \ - -e 's|@''NEXT_STDDEF_H''@|$(NEXT_STDDEF_H)|g' \ - -e 's|@''HAVE_MAX_ALIGN_T''@|$(HAVE_MAX_ALIGN_T)|g' \ - -e 's|@''HAVE_WCHAR_T''@|$(HAVE_WCHAR_T)|g' \ - -e 's|@''REPLACE_NULL''@|$(REPLACE_NULL)|g' \ - < $(srcdir)/stddef.in.h; \ - } > $@-t && \ - mv $@-t $@ -else -stddef.h: $(top_builddir)/config.status - rm -f $@ -endif -MOSTLYCLEANFILES += stddef.h stddef.h-t - -EXTRA_DIST += stddef.in.h - -## end gnulib module stddef - -## begin gnulib module stdint - -BUILT_SOURCES += $(STDINT_H) - -# We need the following in order to create when the system -# doesn't have one that works with the given compiler. -if GL_GENERATE_STDINT_H -stdint.h: stdint.in.h $(top_builddir)/config.status - $(AM_V_GEN)rm -f $@-t $@ && \ - { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \ - sed -e 's|@''GUARD_PREFIX''@|GL|g' \ - -e 's/@''HAVE_STDINT_H''@/$(HAVE_STDINT_H)/g' \ - -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ - -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ - -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \ - -e 's|@''NEXT_STDINT_H''@|$(NEXT_STDINT_H)|g' \ - -e 's/@''HAVE_C99_STDINT_H''@/$(HAVE_C99_STDINT_H)/g' \ - -e 's/@''HAVE_SYS_TYPES_H''@/$(HAVE_SYS_TYPES_H)/g' \ - -e 's/@''HAVE_INTTYPES_H''@/$(HAVE_INTTYPES_H)/g' \ - -e 's/@''HAVE_SYS_INTTYPES_H''@/$(HAVE_SYS_INTTYPES_H)/g' \ - -e 's/@''HAVE_SYS_BITYPES_H''@/$(HAVE_SYS_BITYPES_H)/g' \ - -e 's/@''HAVE_WCHAR_H''@/$(HAVE_WCHAR_H)/g' \ - -e 's/@''HAVE_LONG_LONG_INT''@/$(HAVE_LONG_LONG_INT)/g' \ - -e 's/@''HAVE_UNSIGNED_LONG_LONG_INT''@/$(HAVE_UNSIGNED_LONG_LONG_INT)/g' \ - -e 's/@''APPLE_UNIVERSAL_BUILD''@/$(APPLE_UNIVERSAL_BUILD)/g' \ - -e 's/@''BITSIZEOF_PTRDIFF_T''@/$(BITSIZEOF_PTRDIFF_T)/g' \ - -e 's/@''PTRDIFF_T_SUFFIX''@/$(PTRDIFF_T_SUFFIX)/g' \ - -e 's/@''BITSIZEOF_SIG_ATOMIC_T''@/$(BITSIZEOF_SIG_ATOMIC_T)/g' \ - -e 's/@''HAVE_SIGNED_SIG_ATOMIC_T''@/$(HAVE_SIGNED_SIG_ATOMIC_T)/g' \ - -e 's/@''SIG_ATOMIC_T_SUFFIX''@/$(SIG_ATOMIC_T_SUFFIX)/g' \ - -e 's/@''BITSIZEOF_SIZE_T''@/$(BITSIZEOF_SIZE_T)/g' \ - -e 's/@''SIZE_T_SUFFIX''@/$(SIZE_T_SUFFIX)/g' \ - -e 's/@''BITSIZEOF_WCHAR_T''@/$(BITSIZEOF_WCHAR_T)/g' \ - -e 's/@''HAVE_SIGNED_WCHAR_T''@/$(HAVE_SIGNED_WCHAR_T)/g' \ - -e 's/@''WCHAR_T_SUFFIX''@/$(WCHAR_T_SUFFIX)/g' \ - -e 's/@''BITSIZEOF_WINT_T''@/$(BITSIZEOF_WINT_T)/g' \ - -e 's/@''HAVE_SIGNED_WINT_T''@/$(HAVE_SIGNED_WINT_T)/g' \ - -e 's/@''WINT_T_SUFFIX''@/$(WINT_T_SUFFIX)/g' \ - -e 's/@''GNULIB_OVERRIDES_WINT_T''@/$(GNULIB_OVERRIDES_WINT_T)/g' \ - < $(srcdir)/stdint.in.h; \ - } > $@-t && \ - mv $@-t $@ -else -stdint.h: $(top_builddir)/config.status - rm -f $@ -endif -MOSTLYCLEANFILES += stdint.h stdint.h-t - -EXTRA_DIST += stdint.in.h - -## end gnulib module stdint - -## begin gnulib module stdio - -BUILT_SOURCES += stdio.h - -# We need the following in order to create when the system -# doesn't have one that works with the given compiler. -stdio.h: stdio.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H) $(WARN_ON_USE_H) - $(AM_V_GEN)rm -f $@-t $@ && \ - { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */' && \ - sed -e 's|@''GUARD_PREFIX''@|GL|g' \ - -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ - -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ - -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \ - -e 's|@''NEXT_STDIO_H''@|$(NEXT_STDIO_H)|g' \ - -e 's/@''GNULIB_DPRINTF''@/$(GNULIB_DPRINTF)/g' \ - -e 's/@''GNULIB_FCLOSE''@/$(GNULIB_FCLOSE)/g' \ - -e 's/@''GNULIB_FDOPEN''@/$(GNULIB_FDOPEN)/g' \ - -e 's/@''GNULIB_FFLUSH''@/$(GNULIB_FFLUSH)/g' \ - -e 's/@''GNULIB_FGETC''@/$(GNULIB_FGETC)/g' \ - -e 's/@''GNULIB_FGETS''@/$(GNULIB_FGETS)/g' \ - -e 's/@''GNULIB_FOPEN''@/$(GNULIB_FOPEN)/g' \ - -e 's/@''GNULIB_FPRINTF''@/$(GNULIB_FPRINTF)/g' \ - -e 's/@''GNULIB_FPRINTF_POSIX''@/$(GNULIB_FPRINTF_POSIX)/g' \ - -e 's/@''GNULIB_FPURGE''@/$(GNULIB_FPURGE)/g' \ - -e 's/@''GNULIB_FPUTC''@/$(GNULIB_FPUTC)/g' \ - -e 's/@''GNULIB_FPUTS''@/$(GNULIB_FPUTS)/g' \ - -e 's/@''GNULIB_FREAD''@/$(GNULIB_FREAD)/g' \ - -e 's/@''GNULIB_FREOPEN''@/$(GNULIB_FREOPEN)/g' \ - -e 's/@''GNULIB_FSCANF''@/$(GNULIB_FSCANF)/g' \ - -e 's/@''GNULIB_FSEEK''@/$(GNULIB_FSEEK)/g' \ - -e 's/@''GNULIB_FSEEKO''@/$(GNULIB_FSEEKO)/g' \ - -e 's/@''GNULIB_FTELL''@/$(GNULIB_FTELL)/g' \ - -e 's/@''GNULIB_FTELLO''@/$(GNULIB_FTELLO)/g' \ - -e 's/@''GNULIB_FWRITE''@/$(GNULIB_FWRITE)/g' \ - -e 's/@''GNULIB_GETC''@/$(GNULIB_GETC)/g' \ - -e 's/@''GNULIB_GETCHAR''@/$(GNULIB_GETCHAR)/g' \ - -e 's/@''GNULIB_GETDELIM''@/$(GNULIB_GETDELIM)/g' \ - -e 's/@''GNULIB_GETLINE''@/$(GNULIB_GETLINE)/g' \ - -e 's/@''GNULIB_OBSTACK_PRINTF''@/$(GNULIB_OBSTACK_PRINTF)/g' \ - -e 's/@''GNULIB_OBSTACK_PRINTF_POSIX''@/$(GNULIB_OBSTACK_PRINTF_POSIX)/g' \ - -e 's/@''GNULIB_PCLOSE''@/$(GNULIB_PCLOSE)/g' \ - -e 's/@''GNULIB_PERROR''@/$(GNULIB_PERROR)/g' \ - -e 's/@''GNULIB_POPEN''@/$(GNULIB_POPEN)/g' \ - -e 's/@''GNULIB_PRINTF''@/$(GNULIB_PRINTF)/g' \ - -e 's/@''GNULIB_PRINTF_POSIX''@/$(GNULIB_PRINTF_POSIX)/g' \ - -e 's/@''GNULIB_PUTC''@/$(GNULIB_PUTC)/g' \ - -e 's/@''GNULIB_PUTCHAR''@/$(GNULIB_PUTCHAR)/g' \ - -e 's/@''GNULIB_PUTS''@/$(GNULIB_PUTS)/g' \ - -e 's/@''GNULIB_REMOVE''@/$(GNULIB_REMOVE)/g' \ - -e 's/@''GNULIB_RENAME''@/$(GNULIB_RENAME)/g' \ - -e 's/@''GNULIB_RENAMEAT''@/$(GNULIB_RENAMEAT)/g' \ - -e 's/@''GNULIB_SCANF''@/$(GNULIB_SCANF)/g' \ - -e 's/@''GNULIB_SNPRINTF''@/$(GNULIB_SNPRINTF)/g' \ - -e 's/@''GNULIB_SPRINTF_POSIX''@/$(GNULIB_SPRINTF_POSIX)/g' \ - -e 's/@''GNULIB_STDIO_H_NONBLOCKING''@/$(GNULIB_STDIO_H_NONBLOCKING)/g' \ - -e 's/@''GNULIB_STDIO_H_SIGPIPE''@/$(GNULIB_STDIO_H_SIGPIPE)/g' \ - -e 's/@''GNULIB_TMPFILE''@/$(GNULIB_TMPFILE)/g' \ - -e 's/@''GNULIB_VASPRINTF''@/$(GNULIB_VASPRINTF)/g' \ - -e 's/@''GNULIB_VDPRINTF''@/$(GNULIB_VDPRINTF)/g' \ - -e 's/@''GNULIB_VFPRINTF''@/$(GNULIB_VFPRINTF)/g' \ - -e 's/@''GNULIB_VFPRINTF_POSIX''@/$(GNULIB_VFPRINTF_POSIX)/g' \ - -e 's/@''GNULIB_VFSCANF''@/$(GNULIB_VFSCANF)/g' \ - -e 's/@''GNULIB_VSCANF''@/$(GNULIB_VSCANF)/g' \ - -e 's/@''GNULIB_VPRINTF''@/$(GNULIB_VPRINTF)/g' \ - -e 's/@''GNULIB_VPRINTF_POSIX''@/$(GNULIB_VPRINTF_POSIX)/g' \ - -e 's/@''GNULIB_VSNPRINTF''@/$(GNULIB_VSNPRINTF)/g' \ - -e 's/@''GNULIB_VSPRINTF_POSIX''@/$(GNULIB_VSPRINTF_POSIX)/g' \ - < $(srcdir)/stdio.in.h | \ - sed -e 's|@''HAVE_DECL_FPURGE''@|$(HAVE_DECL_FPURGE)|g' \ - -e 's|@''HAVE_DECL_FSEEKO''@|$(HAVE_DECL_FSEEKO)|g' \ - -e 's|@''HAVE_DECL_FTELLO''@|$(HAVE_DECL_FTELLO)|g' \ - -e 's|@''HAVE_DECL_GETDELIM''@|$(HAVE_DECL_GETDELIM)|g' \ - -e 's|@''HAVE_DECL_GETLINE''@|$(HAVE_DECL_GETLINE)|g' \ - -e 's|@''HAVE_DECL_OBSTACK_PRINTF''@|$(HAVE_DECL_OBSTACK_PRINTF)|g' \ - -e 's|@''HAVE_DECL_SNPRINTF''@|$(HAVE_DECL_SNPRINTF)|g' \ - -e 's|@''HAVE_DECL_VSNPRINTF''@|$(HAVE_DECL_VSNPRINTF)|g' \ - -e 's|@''HAVE_DPRINTF''@|$(HAVE_DPRINTF)|g' \ - -e 's|@''HAVE_FSEEKO''@|$(HAVE_FSEEKO)|g' \ - -e 's|@''HAVE_FTELLO''@|$(HAVE_FTELLO)|g' \ - -e 's|@''HAVE_PCLOSE''@|$(HAVE_PCLOSE)|g' \ - -e 's|@''HAVE_POPEN''@|$(HAVE_POPEN)|g' \ - -e 's|@''HAVE_RENAMEAT''@|$(HAVE_RENAMEAT)|g' \ - -e 's|@''HAVE_VASPRINTF''@|$(HAVE_VASPRINTF)|g' \ - -e 's|@''HAVE_VDPRINTF''@|$(HAVE_VDPRINTF)|g' \ - -e 's|@''REPLACE_DPRINTF''@|$(REPLACE_DPRINTF)|g' \ - -e 's|@''REPLACE_FCLOSE''@|$(REPLACE_FCLOSE)|g' \ - -e 's|@''REPLACE_FDOPEN''@|$(REPLACE_FDOPEN)|g' \ - -e 's|@''REPLACE_FFLUSH''@|$(REPLACE_FFLUSH)|g' \ - -e 's|@''REPLACE_FOPEN''@|$(REPLACE_FOPEN)|g' \ - -e 's|@''REPLACE_FPRINTF''@|$(REPLACE_FPRINTF)|g' \ - -e 's|@''REPLACE_FPURGE''@|$(REPLACE_FPURGE)|g' \ - -e 's|@''REPLACE_FREOPEN''@|$(REPLACE_FREOPEN)|g' \ - -e 's|@''REPLACE_FSEEK''@|$(REPLACE_FSEEK)|g' \ - -e 's|@''REPLACE_FSEEKO''@|$(REPLACE_FSEEKO)|g' \ - -e 's|@''REPLACE_FTELL''@|$(REPLACE_FTELL)|g' \ - -e 's|@''REPLACE_FTELLO''@|$(REPLACE_FTELLO)|g' \ - -e 's|@''REPLACE_GETDELIM''@|$(REPLACE_GETDELIM)|g' \ - -e 's|@''REPLACE_GETLINE''@|$(REPLACE_GETLINE)|g' \ - -e 's|@''REPLACE_OBSTACK_PRINTF''@|$(REPLACE_OBSTACK_PRINTF)|g' \ - -e 's|@''REPLACE_PERROR''@|$(REPLACE_PERROR)|g' \ - -e 's|@''REPLACE_POPEN''@|$(REPLACE_POPEN)|g' \ - -e 's|@''REPLACE_PRINTF''@|$(REPLACE_PRINTF)|g' \ - -e 's|@''REPLACE_REMOVE''@|$(REPLACE_REMOVE)|g' \ - -e 's|@''REPLACE_RENAME''@|$(REPLACE_RENAME)|g' \ - -e 's|@''REPLACE_RENAMEAT''@|$(REPLACE_RENAMEAT)|g' \ - -e 's|@''REPLACE_SNPRINTF''@|$(REPLACE_SNPRINTF)|g' \ - -e 's|@''REPLACE_SPRINTF''@|$(REPLACE_SPRINTF)|g' \ - -e 's|@''REPLACE_STDIO_READ_FUNCS''@|$(REPLACE_STDIO_READ_FUNCS)|g' \ - -e 's|@''REPLACE_STDIO_WRITE_FUNCS''@|$(REPLACE_STDIO_WRITE_FUNCS)|g' \ - -e 's|@''REPLACE_TMPFILE''@|$(REPLACE_TMPFILE)|g' \ - -e 's|@''REPLACE_VASPRINTF''@|$(REPLACE_VASPRINTF)|g' \ - -e 's|@''REPLACE_VDPRINTF''@|$(REPLACE_VDPRINTF)|g' \ - -e 's|@''REPLACE_VFPRINTF''@|$(REPLACE_VFPRINTF)|g' \ - -e 's|@''REPLACE_VPRINTF''@|$(REPLACE_VPRINTF)|g' \ - -e 's|@''REPLACE_VSNPRINTF''@|$(REPLACE_VSNPRINTF)|g' \ - -e 's|@''REPLACE_VSPRINTF''@|$(REPLACE_VSPRINTF)|g' \ - -e 's|@''ASM_SYMBOL_PREFIX''@|$(ASM_SYMBOL_PREFIX)|g' \ - -e '/definitions of _GL_FUNCDECL_RPL/r $(CXXDEFS_H)' \ - -e '/definition of _GL_ARG_NONNULL/r $(ARG_NONNULL_H)' \ - -e '/definition of _GL_WARN_ON_USE/r $(WARN_ON_USE_H)'; \ - } > $@-t && \ - mv $@-t $@ -MOSTLYCLEANFILES += stdio.h stdio.h-t - -EXTRA_DIST += stdio.in.h - -## end gnulib module stdio - -## begin gnulib module stdlib - -BUILT_SOURCES += stdlib.h - -# We need the following in order to create when the system -# doesn't have one that works with the given compiler. -stdlib.h: stdlib.in.h $(top_builddir)/config.status $(CXXDEFS_H) \ - $(_NORETURN_H) $(ARG_NONNULL_H) $(WARN_ON_USE_H) - $(AM_V_GEN)rm -f $@-t $@ && \ - { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */' && \ - sed -e 's|@''GUARD_PREFIX''@|GL|g' \ - -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ - -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ - -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \ - -e 's|@''NEXT_STDLIB_H''@|$(NEXT_STDLIB_H)|g' \ - -e 's/@''GNULIB__EXIT''@/$(GNULIB__EXIT)/g' \ - -e 's/@''GNULIB_ATOLL''@/$(GNULIB_ATOLL)/g' \ - -e 's/@''GNULIB_CALLOC_POSIX''@/$(GNULIB_CALLOC_POSIX)/g' \ - -e 's/@''GNULIB_CANONICALIZE_FILE_NAME''@/$(GNULIB_CANONICALIZE_FILE_NAME)/g' \ - -e 's/@''GNULIB_GETLOADAVG''@/$(GNULIB_GETLOADAVG)/g' \ - -e 's/@''GNULIB_GETSUBOPT''@/$(GNULIB_GETSUBOPT)/g' \ - -e 's/@''GNULIB_GRANTPT''@/$(GNULIB_GRANTPT)/g' \ - -e 's/@''GNULIB_MALLOC_POSIX''@/$(GNULIB_MALLOC_POSIX)/g' \ - -e 's/@''GNULIB_MBTOWC''@/$(GNULIB_MBTOWC)/g' \ - -e 's/@''GNULIB_MKDTEMP''@/$(GNULIB_MKDTEMP)/g' \ - -e 's/@''GNULIB_MKOSTEMP''@/$(GNULIB_MKOSTEMP)/g' \ - -e 's/@''GNULIB_MKOSTEMPS''@/$(GNULIB_MKOSTEMPS)/g' \ - -e 's/@''GNULIB_MKSTEMP''@/$(GNULIB_MKSTEMP)/g' \ - -e 's/@''GNULIB_MKSTEMPS''@/$(GNULIB_MKSTEMPS)/g' \ - -e 's/@''GNULIB_POSIX_OPENPT''@/$(GNULIB_POSIX_OPENPT)/g' \ - -e 's/@''GNULIB_PTSNAME''@/$(GNULIB_PTSNAME)/g' \ - -e 's/@''GNULIB_PTSNAME_R''@/$(GNULIB_PTSNAME_R)/g' \ - -e 's/@''GNULIB_PUTENV''@/$(GNULIB_PUTENV)/g' \ - -e 's/@''GNULIB_QSORT_R''@/$(GNULIB_QSORT_R)/g' \ - -e 's/@''GNULIB_RANDOM''@/$(GNULIB_RANDOM)/g' \ - -e 's/@''GNULIB_RANDOM_R''@/$(GNULIB_RANDOM_R)/g' \ - -e 's/@''GNULIB_REALLOC_POSIX''@/$(GNULIB_REALLOC_POSIX)/g' \ - -e 's/@''GNULIB_REALLOCARRAY''@/$(GNULIB_REALLOCARRAY)/g' \ - -e 's/@''GNULIB_REALPATH''@/$(GNULIB_REALPATH)/g' \ - -e 's/@''GNULIB_RPMATCH''@/$(GNULIB_RPMATCH)/g' \ - -e 's/@''GNULIB_SECURE_GETENV''@/$(GNULIB_SECURE_GETENV)/g' \ - -e 's/@''GNULIB_SETENV''@/$(GNULIB_SETENV)/g' \ - -e 's/@''GNULIB_STRTOD''@/$(GNULIB_STRTOD)/g' \ - -e 's/@''GNULIB_STRTOLL''@/$(GNULIB_STRTOLL)/g' \ - -e 's/@''GNULIB_STRTOULL''@/$(GNULIB_STRTOULL)/g' \ - -e 's/@''GNULIB_SYSTEM_POSIX''@/$(GNULIB_SYSTEM_POSIX)/g' \ - -e 's/@''GNULIB_UNLOCKPT''@/$(GNULIB_UNLOCKPT)/g' \ - -e 's/@''GNULIB_UNSETENV''@/$(GNULIB_UNSETENV)/g' \ - -e 's/@''GNULIB_WCTOMB''@/$(GNULIB_WCTOMB)/g' \ - < $(srcdir)/stdlib.in.h | \ - sed -e 's|@''HAVE__EXIT''@|$(HAVE__EXIT)|g' \ - -e 's|@''HAVE_ATOLL''@|$(HAVE_ATOLL)|g' \ - -e 's|@''HAVE_CANONICALIZE_FILE_NAME''@|$(HAVE_CANONICALIZE_FILE_NAME)|g' \ - -e 's|@''HAVE_DECL_GETLOADAVG''@|$(HAVE_DECL_GETLOADAVG)|g' \ - -e 's|@''HAVE_GETSUBOPT''@|$(HAVE_GETSUBOPT)|g' \ - -e 's|@''HAVE_GRANTPT''@|$(HAVE_GRANTPT)|g' \ - -e 's|@''HAVE_DECL_INITSTATE''@|$(HAVE_DECL_INITSTATE)|g' \ - -e 's|@''HAVE_MKDTEMP''@|$(HAVE_MKDTEMP)|g' \ - -e 's|@''HAVE_MKOSTEMP''@|$(HAVE_MKOSTEMP)|g' \ - -e 's|@''HAVE_MKOSTEMPS''@|$(HAVE_MKOSTEMPS)|g' \ - -e 's|@''HAVE_MKSTEMP''@|$(HAVE_MKSTEMP)|g' \ - -e 's|@''HAVE_MKSTEMPS''@|$(HAVE_MKSTEMPS)|g' \ - -e 's|@''HAVE_POSIX_OPENPT''@|$(HAVE_POSIX_OPENPT)|g' \ - -e 's|@''HAVE_PTSNAME''@|$(HAVE_PTSNAME)|g' \ - -e 's|@''HAVE_PTSNAME_R''@|$(HAVE_PTSNAME_R)|g' \ - -e 's|@''HAVE_QSORT_R''@|$(HAVE_QSORT_R)|g' \ - -e 's|@''HAVE_RANDOM''@|$(HAVE_RANDOM)|g' \ - -e 's|@''HAVE_RANDOM_H''@|$(HAVE_RANDOM_H)|g' \ - -e 's|@''HAVE_RANDOM_R''@|$(HAVE_RANDOM_R)|g' \ - -e 's|@''HAVE_REALLOCARRAY''@|$(HAVE_REALLOCARRAY)|g' \ - -e 's|@''HAVE_REALPATH''@|$(HAVE_REALPATH)|g' \ - -e 's|@''HAVE_RPMATCH''@|$(HAVE_RPMATCH)|g' \ - -e 's|@''HAVE_SECURE_GETENV''@|$(HAVE_SECURE_GETENV)|g' \ - -e 's|@''HAVE_DECL_SETENV''@|$(HAVE_DECL_SETENV)|g' \ - -e 's|@''HAVE_DECL_SETSTATE''@|$(HAVE_DECL_SETSTATE)|g' \ - -e 's|@''HAVE_STRTOD''@|$(HAVE_STRTOD)|g' \ - -e 's|@''HAVE_STRTOLL''@|$(HAVE_STRTOLL)|g' \ - -e 's|@''HAVE_STRTOULL''@|$(HAVE_STRTOULL)|g' \ - -e 's|@''HAVE_STRUCT_RANDOM_DATA''@|$(HAVE_STRUCT_RANDOM_DATA)|g' \ - -e 's|@''HAVE_SYS_LOADAVG_H''@|$(HAVE_SYS_LOADAVG_H)|g' \ - -e 's|@''HAVE_UNLOCKPT''@|$(HAVE_UNLOCKPT)|g' \ - -e 's|@''HAVE_DECL_UNSETENV''@|$(HAVE_DECL_UNSETENV)|g' \ - -e 's|@''REPLACE_CALLOC''@|$(REPLACE_CALLOC)|g' \ - -e 's|@''REPLACE_CANONICALIZE_FILE_NAME''@|$(REPLACE_CANONICALIZE_FILE_NAME)|g' \ - -e 's|@''REPLACE_MALLOC''@|$(REPLACE_MALLOC)|g' \ - -e 's|@''REPLACE_MBTOWC''@|$(REPLACE_MBTOWC)|g' \ - -e 's|@''REPLACE_MKSTEMP''@|$(REPLACE_MKSTEMP)|g' \ - -e 's|@''REPLACE_PTSNAME''@|$(REPLACE_PTSNAME)|g' \ - -e 's|@''REPLACE_PTSNAME_R''@|$(REPLACE_PTSNAME_R)|g' \ - -e 's|@''REPLACE_PUTENV''@|$(REPLACE_PUTENV)|g' \ - -e 's|@''REPLACE_QSORT_R''@|$(REPLACE_QSORT_R)|g' \ - -e 's|@''REPLACE_RANDOM_R''@|$(REPLACE_RANDOM_R)|g' \ - -e 's|@''REPLACE_REALLOC''@|$(REPLACE_REALLOC)|g' \ - -e 's|@''REPLACE_REALPATH''@|$(REPLACE_REALPATH)|g' \ - -e 's|@''REPLACE_SETENV''@|$(REPLACE_SETENV)|g' \ - -e 's|@''REPLACE_STRTOD''@|$(REPLACE_STRTOD)|g' \ - -e 's|@''REPLACE_UNSETENV''@|$(REPLACE_UNSETENV)|g' \ - -e 's|@''REPLACE_WCTOMB''@|$(REPLACE_WCTOMB)|g' \ - -e '/definitions of _GL_FUNCDECL_RPL/r $(CXXDEFS_H)' \ - -e '/definition of _Noreturn/r $(_NORETURN_H)' \ - -e '/definition of _GL_ARG_NONNULL/r $(ARG_NONNULL_H)' \ - -e '/definition of _GL_WARN_ON_USE/r $(WARN_ON_USE_H)'; \ - } > $@-t && \ - mv $@-t $@ -MOSTLYCLEANFILES += stdlib.h stdlib.h-t - -EXTRA_DIST += stdlib.in.h - -## end gnulib module stdlib - -## begin gnulib module strcase - - -EXTRA_DIST += strcasecmp.c strncasecmp.c - -EXTRA_libgnu_a_SOURCES += strcasecmp.c strncasecmp.c - -## end gnulib module strcase - -## begin gnulib module strchrnul - - -EXTRA_DIST += strchrnul.c strchrnul.valgrind - -EXTRA_libgnu_a_SOURCES += strchrnul.c - -## end gnulib module strchrnul - -## begin gnulib module strdup-posix - - -EXTRA_DIST += strdup.c - -EXTRA_libgnu_a_SOURCES += strdup.c - -## end gnulib module strdup-posix - -## begin gnulib module streq - - -EXTRA_DIST += streq.h - -## end gnulib module streq - -## begin gnulib module strerror - - -EXTRA_DIST += strerror.c - -EXTRA_libgnu_a_SOURCES += strerror.c - -## end gnulib module strerror - -## begin gnulib module strerror-override - - -EXTRA_DIST += strerror-override.c strerror-override.h - -EXTRA_libgnu_a_SOURCES += strerror-override.c - -## end gnulib module strerror-override - -## begin gnulib module string - -BUILT_SOURCES += string.h - -# We need the following in order to create when the system -# doesn't have one that works with the given compiler. -string.h: string.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H) $(WARN_ON_USE_H) - $(AM_V_GEN)rm -f $@-t $@ && \ - { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */' && \ - sed -e 's|@''GUARD_PREFIX''@|GL|g' \ - -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ - -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ - -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \ - -e 's|@''NEXT_STRING_H''@|$(NEXT_STRING_H)|g' \ - -e 's/@''GNULIB_EXPLICIT_BZERO''@/$(GNULIB_EXPLICIT_BZERO)/g' \ - -e 's/@''GNULIB_FFSL''@/$(GNULIB_FFSL)/g' \ - -e 's/@''GNULIB_FFSLL''@/$(GNULIB_FFSLL)/g' \ - -e 's/@''GNULIB_MBSLEN''@/$(GNULIB_MBSLEN)/g' \ - -e 's/@''GNULIB_MBSNLEN''@/$(GNULIB_MBSNLEN)/g' \ - -e 's/@''GNULIB_MBSCHR''@/$(GNULIB_MBSCHR)/g' \ - -e 's/@''GNULIB_MBSRCHR''@/$(GNULIB_MBSRCHR)/g' \ - -e 's/@''GNULIB_MBSSTR''@/$(GNULIB_MBSSTR)/g' \ - -e 's/@''GNULIB_MBSCASECMP''@/$(GNULIB_MBSCASECMP)/g' \ - -e 's/@''GNULIB_MBSNCASECMP''@/$(GNULIB_MBSNCASECMP)/g' \ - -e 's/@''GNULIB_MBSPCASECMP''@/$(GNULIB_MBSPCASECMP)/g' \ - -e 's/@''GNULIB_MBSCASESTR''@/$(GNULIB_MBSCASESTR)/g' \ - -e 's/@''GNULIB_MBSCSPN''@/$(GNULIB_MBSCSPN)/g' \ - -e 's/@''GNULIB_MBSPBRK''@/$(GNULIB_MBSPBRK)/g' \ - -e 's/@''GNULIB_MBSSPN''@/$(GNULIB_MBSSPN)/g' \ - -e 's/@''GNULIB_MBSSEP''@/$(GNULIB_MBSSEP)/g' \ - -e 's/@''GNULIB_MBSTOK_R''@/$(GNULIB_MBSTOK_R)/g' \ - -e 's/@''GNULIB_MEMCHR''@/$(GNULIB_MEMCHR)/g' \ - -e 's/@''GNULIB_MEMMEM''@/$(GNULIB_MEMMEM)/g' \ - -e 's/@''GNULIB_MEMPCPY''@/$(GNULIB_MEMPCPY)/g' \ - -e 's/@''GNULIB_MEMRCHR''@/$(GNULIB_MEMRCHR)/g' \ - -e 's/@''GNULIB_RAWMEMCHR''@/$(GNULIB_RAWMEMCHR)/g' \ - -e 's/@''GNULIB_STPCPY''@/$(GNULIB_STPCPY)/g' \ - -e 's/@''GNULIB_STPNCPY''@/$(GNULIB_STPNCPY)/g' \ - -e 's/@''GNULIB_STRCHRNUL''@/$(GNULIB_STRCHRNUL)/g' \ - -e 's/@''GNULIB_STRDUP''@/$(GNULIB_STRDUP)/g' \ - -e 's/@''GNULIB_STRNCAT''@/$(GNULIB_STRNCAT)/g' \ - -e 's/@''GNULIB_STRNDUP''@/$(GNULIB_STRNDUP)/g' \ - -e 's/@''GNULIB_STRNLEN''@/$(GNULIB_STRNLEN)/g' \ - -e 's/@''GNULIB_STRPBRK''@/$(GNULIB_STRPBRK)/g' \ - -e 's/@''GNULIB_STRSEP''@/$(GNULIB_STRSEP)/g' \ - -e 's/@''GNULIB_STRSTR''@/$(GNULIB_STRSTR)/g' \ - -e 's/@''GNULIB_STRCASESTR''@/$(GNULIB_STRCASESTR)/g' \ - -e 's/@''GNULIB_STRTOK_R''@/$(GNULIB_STRTOK_R)/g' \ - -e 's/@''GNULIB_STRERROR''@/$(GNULIB_STRERROR)/g' \ - -e 's/@''GNULIB_STRERROR_R''@/$(GNULIB_STRERROR_R)/g' \ - -e 's/@''GNULIB_STRSIGNAL''@/$(GNULIB_STRSIGNAL)/g' \ - -e 's/@''GNULIB_STRVERSCMP''@/$(GNULIB_STRVERSCMP)/g' \ - < $(srcdir)/string.in.h | \ - sed -e 's|@''HAVE_EXPLICIT_BZERO''@|$(HAVE_EXPLICIT_BZERO)|g' \ - -e 's|@''HAVE_FFSL''@|$(HAVE_FFSL)|g' \ - -e 's|@''HAVE_FFSLL''@|$(HAVE_FFSLL)|g' \ - -e 's|@''HAVE_MBSLEN''@|$(HAVE_MBSLEN)|g' \ - -e 's|@''HAVE_MEMCHR''@|$(HAVE_MEMCHR)|g' \ - -e 's|@''HAVE_DECL_MEMMEM''@|$(HAVE_DECL_MEMMEM)|g' \ - -e 's|@''HAVE_MEMPCPY''@|$(HAVE_MEMPCPY)|g' \ - -e 's|@''HAVE_DECL_MEMRCHR''@|$(HAVE_DECL_MEMRCHR)|g' \ - -e 's|@''HAVE_RAWMEMCHR''@|$(HAVE_RAWMEMCHR)|g' \ - -e 's|@''HAVE_STPCPY''@|$(HAVE_STPCPY)|g' \ - -e 's|@''HAVE_STPNCPY''@|$(HAVE_STPNCPY)|g' \ - -e 's|@''HAVE_STRCHRNUL''@|$(HAVE_STRCHRNUL)|g' \ - -e 's|@''HAVE_DECL_STRDUP''@|$(HAVE_DECL_STRDUP)|g' \ - -e 's|@''HAVE_DECL_STRNDUP''@|$(HAVE_DECL_STRNDUP)|g' \ - -e 's|@''HAVE_DECL_STRNLEN''@|$(HAVE_DECL_STRNLEN)|g' \ - -e 's|@''HAVE_STRPBRK''@|$(HAVE_STRPBRK)|g' \ - -e 's|@''HAVE_STRSEP''@|$(HAVE_STRSEP)|g' \ - -e 's|@''HAVE_STRCASESTR''@|$(HAVE_STRCASESTR)|g' \ - -e 's|@''HAVE_DECL_STRTOK_R''@|$(HAVE_DECL_STRTOK_R)|g' \ - -e 's|@''HAVE_DECL_STRERROR_R''@|$(HAVE_DECL_STRERROR_R)|g' \ - -e 's|@''HAVE_DECL_STRSIGNAL''@|$(HAVE_DECL_STRSIGNAL)|g' \ - -e 's|@''HAVE_STRVERSCMP''@|$(HAVE_STRVERSCMP)|g' \ - -e 's|@''REPLACE_MEMCHR''@|$(REPLACE_MEMCHR)|g' \ - -e 's|@''REPLACE_MEMMEM''@|$(REPLACE_MEMMEM)|g' \ - -e 's|@''REPLACE_STPNCPY''@|$(REPLACE_STPNCPY)|g' \ - -e 's|@''REPLACE_STRCHRNUL''@|$(REPLACE_STRCHRNUL)|g' \ - -e 's|@''REPLACE_STRDUP''@|$(REPLACE_STRDUP)|g' \ - -e 's|@''REPLACE_STRNCAT''@|$(REPLACE_STRNCAT)|g' \ - -e 's|@''REPLACE_STRNDUP''@|$(REPLACE_STRNDUP)|g' \ - -e 's|@''REPLACE_STRNLEN''@|$(REPLACE_STRNLEN)|g' \ - -e 's|@''REPLACE_STRSTR''@|$(REPLACE_STRSTR)|g' \ - -e 's|@''REPLACE_STRCASESTR''@|$(REPLACE_STRCASESTR)|g' \ - -e 's|@''REPLACE_STRTOK_R''@|$(REPLACE_STRTOK_R)|g' \ - -e 's|@''REPLACE_STRERROR''@|$(REPLACE_STRERROR)|g' \ - -e 's|@''REPLACE_STRERROR_R''@|$(REPLACE_STRERROR_R)|g' \ - -e 's|@''REPLACE_STRSIGNAL''@|$(REPLACE_STRSIGNAL)|g' \ - -e 's|@''UNDEFINE_STRTOK_R''@|$(UNDEFINE_STRTOK_R)|g' \ - -e '/definitions of _GL_FUNCDECL_RPL/r $(CXXDEFS_H)' \ - -e '/definition of _GL_ARG_NONNULL/r $(ARG_NONNULL_H)' \ - -e '/definition of _GL_WARN_ON_USE/r $(WARN_ON_USE_H)'; \ - < $(srcdir)/string.in.h; \ - } > $@-t && \ - mv $@-t $@ -MOSTLYCLEANFILES += string.h string.h-t - -EXTRA_DIST += string.in.h - -## end gnulib module string - -## begin gnulib module strings - -BUILT_SOURCES += strings.h - -# We need the following in order to create when the system -# doesn't have one that works with the given compiler. -strings.h: strings.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(WARN_ON_USE_H) $(ARG_NONNULL_H) - $(AM_V_GEN)rm -f $@-t $@ && \ - { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */' && \ - sed -e 's|@''GUARD_PREFIX''@|GL|g' \ - -e 's|@''HAVE_STRINGS_H''@|$(HAVE_STRINGS_H)|g' \ - -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ - -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ - -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \ - -e 's|@''NEXT_STRINGS_H''@|$(NEXT_STRINGS_H)|g' \ - -e 's/@''GNULIB_FFS''@/$(GNULIB_FFS)/g' \ - -e 's|@''HAVE_FFS''@|$(HAVE_FFS)|g' \ - -e 's|@''HAVE_STRCASECMP''@|$(HAVE_STRCASECMP)|g' \ - -e 's|@''HAVE_DECL_STRNCASECMP''@|$(HAVE_DECL_STRNCASECMP)|g' \ - -e '/definitions of _GL_FUNCDECL_RPL/r $(CXXDEFS_H)' \ - -e '/definition of _GL_ARG_NONNULL/r $(ARG_NONNULL_H)' \ - -e '/definition of _GL_WARN_ON_USE/r $(WARN_ON_USE_H)' \ - < $(srcdir)/strings.in.h; \ - } > $@-t && \ - mv $@-t $@ -MOSTLYCLEANFILES += strings.h strings.h-t - -EXTRA_DIST += strings.in.h - -## end gnulib module strings - -## begin gnulib module strndup - - -EXTRA_DIST += strndup.c - -EXTRA_libgnu_a_SOURCES += strndup.c - -## end gnulib module strndup - -## begin gnulib module strnlen - - -EXTRA_DIST += strnlen.c - -EXTRA_libgnu_a_SOURCES += strnlen.c - -## end gnulib module strnlen - -## begin gnulib module strnlen1 - -libgnu_a_SOURCES += strnlen1.h strnlen1.c - -## end gnulib module strnlen1 - -## begin gnulib module sys_stat - -BUILT_SOURCES += sys/stat.h - -# We need the following in order to create when the system -# has one that is incomplete. -sys/stat.h: sys_stat.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H) $(WARN_ON_USE_H) - $(AM_V_at)$(MKDIR_P) sys - $(AM_V_GEN)rm -f $@-t $@ && \ - { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \ - sed -e 's|@''GUARD_PREFIX''@|GL|g' \ - -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ - -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ - -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \ - -e 's|@''NEXT_SYS_STAT_H''@|$(NEXT_SYS_STAT_H)|g' \ - -e 's|@''WINDOWS_64_BIT_ST_SIZE''@|$(WINDOWS_64_BIT_ST_SIZE)|g' \ - -e 's|@''WINDOWS_STAT_TIMESPEC''@|$(WINDOWS_STAT_TIMESPEC)|g' \ - -e 's/@''GNULIB_FCHMODAT''@/$(GNULIB_FCHMODAT)/g' \ - -e 's/@''GNULIB_FSTAT''@/$(GNULIB_FSTAT)/g' \ - -e 's/@''GNULIB_FSTATAT''@/$(GNULIB_FSTATAT)/g' \ - -e 's/@''GNULIB_FUTIMENS''@/$(GNULIB_FUTIMENS)/g' \ - -e 's/@''GNULIB_LCHMOD''@/$(GNULIB_LCHMOD)/g' \ - -e 's/@''GNULIB_LSTAT''@/$(GNULIB_LSTAT)/g' \ - -e 's/@''GNULIB_MKDIRAT''@/$(GNULIB_MKDIRAT)/g' \ - -e 's/@''GNULIB_MKFIFO''@/$(GNULIB_MKFIFO)/g' \ - -e 's/@''GNULIB_MKFIFOAT''@/$(GNULIB_MKFIFOAT)/g' \ - -e 's/@''GNULIB_MKNOD''@/$(GNULIB_MKNOD)/g' \ - -e 's/@''GNULIB_MKNODAT''@/$(GNULIB_MKNODAT)/g' \ - -e 's/@''GNULIB_STAT''@/$(GNULIB_STAT)/g' \ - -e 's/@''GNULIB_UTIMENSAT''@/$(GNULIB_UTIMENSAT)/g' \ - -e 's/@''GNULIB_OVERRIDES_STRUCT_STAT''@/$(GNULIB_OVERRIDES_STRUCT_STAT)/g' \ - -e 's|@''HAVE_FCHMODAT''@|$(HAVE_FCHMODAT)|g' \ - -e 's|@''HAVE_FSTATAT''@|$(HAVE_FSTATAT)|g' \ - -e 's|@''HAVE_FUTIMENS''@|$(HAVE_FUTIMENS)|g' \ - -e 's|@''HAVE_LCHMOD''@|$(HAVE_LCHMOD)|g' \ - -e 's|@''HAVE_LSTAT''@|$(HAVE_LSTAT)|g' \ - -e 's|@''HAVE_MKDIRAT''@|$(HAVE_MKDIRAT)|g' \ - -e 's|@''HAVE_MKFIFO''@|$(HAVE_MKFIFO)|g' \ - -e 's|@''HAVE_MKFIFOAT''@|$(HAVE_MKFIFOAT)|g' \ - -e 's|@''HAVE_MKNOD''@|$(HAVE_MKNOD)|g' \ - -e 's|@''HAVE_MKNODAT''@|$(HAVE_MKNODAT)|g' \ - -e 's|@''HAVE_UTIMENSAT''@|$(HAVE_UTIMENSAT)|g' \ - -e 's|@''REPLACE_FSTAT''@|$(REPLACE_FSTAT)|g' \ - -e 's|@''REPLACE_FSTATAT''@|$(REPLACE_FSTATAT)|g' \ - -e 's|@''REPLACE_FUTIMENS''@|$(REPLACE_FUTIMENS)|g' \ - -e 's|@''REPLACE_LSTAT''@|$(REPLACE_LSTAT)|g' \ - -e 's|@''REPLACE_MKDIR''@|$(REPLACE_MKDIR)|g' \ - -e 's|@''REPLACE_MKFIFO''@|$(REPLACE_MKFIFO)|g' \ - -e 's|@''REPLACE_MKNOD''@|$(REPLACE_MKNOD)|g' \ - -e 's|@''REPLACE_STAT''@|$(REPLACE_STAT)|g' \ - -e 's|@''REPLACE_UTIMENSAT''@|$(REPLACE_UTIMENSAT)|g' \ - -e '/definitions of _GL_FUNCDECL_RPL/r $(CXXDEFS_H)' \ - -e '/definition of _GL_ARG_NONNULL/r $(ARG_NONNULL_H)' \ - -e '/definition of _GL_WARN_ON_USE/r $(WARN_ON_USE_H)' \ - < $(srcdir)/sys_stat.in.h; \ - } > $@-t && \ - mv $@-t $@ -MOSTLYCLEANFILES += sys/stat.h sys/stat.h-t -MOSTLYCLEANDIRS += sys - -EXTRA_DIST += sys_stat.in.h - -## end gnulib module sys_stat - -## begin gnulib module sys_types - -BUILT_SOURCES += sys/types.h - -# We need the following in order to create when the system -# doesn't have one that works with the given compiler. -sys/types.h: sys_types.in.h $(top_builddir)/config.status - $(AM_V_at)$(MKDIR_P) sys - $(AM_V_GEN)rm -f $@-t $@ && \ - { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \ - sed -e 's|@''GUARD_PREFIX''@|GL|g' \ - -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ - -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ - -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \ - -e 's|@''NEXT_SYS_TYPES_H''@|$(NEXT_SYS_TYPES_H)|g' \ - -e 's|@''WINDOWS_64_BIT_OFF_T''@|$(WINDOWS_64_BIT_OFF_T)|g' \ - -e 's|@''WINDOWS_STAT_INODES''@|$(WINDOWS_STAT_INODES)|g' \ - < $(srcdir)/sys_types.in.h; \ - } > $@-t && \ - mv $@-t $@ -MOSTLYCLEANFILES += sys/types.h sys/types.h-t - -EXTRA_DIST += sys_types.in.h - -## end gnulib module sys_types - -## begin gnulib module sysexits - -BUILT_SOURCES += $(SYSEXITS_H) - -# We need the following in order to create when the system -# doesn't have one that works with the given compiler. -if GL_GENERATE_SYSEXITS_H -sysexits.h: sysexits.in.h $(top_builddir)/config.status - $(AM_V_GEN)rm -f $@-t $@ && \ - { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \ - sed -e 's|@''GUARD_PREFIX''@|GL|g' \ - -e 's|@''HAVE_SYSEXITS_H''@|$(HAVE_SYSEXITS_H)|g' \ - -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ - -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ - -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \ - -e 's|@''NEXT_SYSEXITS_H''@|$(NEXT_SYSEXITS_H)|g' \ - < $(srcdir)/sysexits.in.h; \ - } > $@-t && \ - mv -f $@-t $@ -else -sysexits.h: $(top_builddir)/config.status - rm -f $@ -endif -MOSTLYCLEANFILES += sysexits.h sysexits.h-t - -EXTRA_DIST += sysexits.in.h - -## end gnulib module sysexits - -## begin gnulib module threadlib - -libgnu_a_SOURCES += glthread/threadlib.c - -EXTRA_DIST += $(top_srcdir)/build-aux/config.rpath - -## end gnulib module threadlib - -## begin gnulib module time - -BUILT_SOURCES += time.h - -# We need the following in order to create when the system -# doesn't have one that works with the given compiler. -time.h: time.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H) $(WARN_ON_USE_H) - $(AM_V_GEN)rm -f $@-t $@ && \ - { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */' && \ - sed -e 's|@''GUARD_PREFIX''@|GL|g' \ - -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ - -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ - -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \ - -e 's|@''NEXT_TIME_H''@|$(NEXT_TIME_H)|g' \ - -e 's/@''GNULIB_CTIME''@/$(GNULIB_CTIME)/g' \ - -e 's/@''GNULIB_LOCALTIME''@/$(GNULIB_LOCALTIME)/g' \ - -e 's/@''GNULIB_MKTIME''@/$(GNULIB_MKTIME)/g' \ - -e 's/@''GNULIB_NANOSLEEP''@/$(GNULIB_NANOSLEEP)/g' \ - -e 's/@''GNULIB_STRFTIME''@/$(GNULIB_STRFTIME)/g' \ - -e 's/@''GNULIB_STRPTIME''@/$(GNULIB_STRPTIME)/g' \ - -e 's/@''GNULIB_TIMEGM''@/$(GNULIB_TIMEGM)/g' \ - -e 's/@''GNULIB_TIME_R''@/$(GNULIB_TIME_R)/g' \ - -e 's/@''GNULIB_TIME_RZ''@/$(GNULIB_TIME_RZ)/g' \ - -e 's/@''GNULIB_TZSET''@/$(GNULIB_TZSET)/g' \ - -e 's|@''HAVE_DECL_LOCALTIME_R''@|$(HAVE_DECL_LOCALTIME_R)|g' \ - -e 's|@''HAVE_NANOSLEEP''@|$(HAVE_NANOSLEEP)|g' \ - -e 's|@''HAVE_STRPTIME''@|$(HAVE_STRPTIME)|g' \ - -e 's|@''HAVE_TIMEGM''@|$(HAVE_TIMEGM)|g' \ - -e 's|@''HAVE_TIMEZONE_T''@|$(HAVE_TIMEZONE_T)|g' \ - -e 's|@''HAVE_TZSET''@|$(HAVE_TZSET)|g' \ - -e 's|@''REPLACE_CTIME''@|$(REPLACE_CTIME)|g' \ - -e 's|@''REPLACE_GMTIME''@|$(REPLACE_GMTIME)|g' \ - -e 's|@''REPLACE_LOCALTIME''@|$(REPLACE_LOCALTIME)|g' \ - -e 's|@''REPLACE_LOCALTIME_R''@|$(REPLACE_LOCALTIME_R)|g' \ - -e 's|@''REPLACE_MKTIME''@|$(REPLACE_MKTIME)|g' \ - -e 's|@''REPLACE_NANOSLEEP''@|$(REPLACE_NANOSLEEP)|g' \ - -e 's|@''REPLACE_STRFTIME''@|$(REPLACE_STRFTIME)|g' \ - -e 's|@''REPLACE_TIMEGM''@|$(REPLACE_TIMEGM)|g' \ - -e 's|@''REPLACE_TZSET''@|$(REPLACE_TZSET)|g' \ - -e 's|@''PTHREAD_H_DEFINES_STRUCT_TIMESPEC''@|$(PTHREAD_H_DEFINES_STRUCT_TIMESPEC)|g' \ - -e 's|@''SYS_TIME_H_DEFINES_STRUCT_TIMESPEC''@|$(SYS_TIME_H_DEFINES_STRUCT_TIMESPEC)|g' \ - -e 's|@''TIME_H_DEFINES_STRUCT_TIMESPEC''@|$(TIME_H_DEFINES_STRUCT_TIMESPEC)|g' \ - -e 's|@''UNISTD_H_DEFINES_STRUCT_TIMESPEC''@|$(UNISTD_H_DEFINES_STRUCT_TIMESPEC)|g' \ - -e '/definitions of _GL_FUNCDECL_RPL/r $(CXXDEFS_H)' \ - -e '/definition of _GL_ARG_NONNULL/r $(ARG_NONNULL_H)' \ - -e '/definition of _GL_WARN_ON_USE/r $(WARN_ON_USE_H)' \ - < $(srcdir)/time.in.h; \ - } > $@-t && \ - mv $@-t $@ -MOSTLYCLEANFILES += time.h time.h-t - -EXTRA_DIST += time.in.h - -## end gnulib module time - -## begin gnulib module unistd - -BUILT_SOURCES += unistd.h -libgnu_a_SOURCES += unistd.c - -# We need the following in order to create an empty placeholder for -# when the system doesn't have one. -unistd.h: unistd.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H) $(WARN_ON_USE_H) - $(AM_V_GEN)rm -f $@-t $@ && \ - { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \ - sed -e 's|@''GUARD_PREFIX''@|GL|g' \ - -e 's|@''HAVE_UNISTD_H''@|$(HAVE_UNISTD_H)|g' \ - -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ - -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ - -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \ - -e 's|@''NEXT_UNISTD_H''@|$(NEXT_UNISTD_H)|g' \ - -e 's|@''WINDOWS_64_BIT_OFF_T''@|$(WINDOWS_64_BIT_OFF_T)|g' \ - -e 's/@''GNULIB_CHDIR''@/$(GNULIB_CHDIR)/g' \ - -e 's/@''GNULIB_CHOWN''@/$(GNULIB_CHOWN)/g' \ - -e 's/@''GNULIB_CLOSE''@/$(GNULIB_CLOSE)/g' \ - -e 's/@''GNULIB_DUP''@/$(GNULIB_DUP)/g' \ - -e 's/@''GNULIB_DUP2''@/$(GNULIB_DUP2)/g' \ - -e 's/@''GNULIB_DUP3''@/$(GNULIB_DUP3)/g' \ - -e 's/@''GNULIB_ENVIRON''@/$(GNULIB_ENVIRON)/g' \ - -e 's/@''GNULIB_EUIDACCESS''@/$(GNULIB_EUIDACCESS)/g' \ - -e 's/@''GNULIB_FACCESSAT''@/$(GNULIB_FACCESSAT)/g' \ - -e 's/@''GNULIB_FCHDIR''@/$(GNULIB_FCHDIR)/g' \ - -e 's/@''GNULIB_FCHOWNAT''@/$(GNULIB_FCHOWNAT)/g' \ - -e 's/@''GNULIB_FDATASYNC''@/$(GNULIB_FDATASYNC)/g' \ - -e 's/@''GNULIB_FSYNC''@/$(GNULIB_FSYNC)/g' \ - -e 's/@''GNULIB_FTRUNCATE''@/$(GNULIB_FTRUNCATE)/g' \ - -e 's/@''GNULIB_GETCWD''@/$(GNULIB_GETCWD)/g' \ - -e 's/@''GNULIB_GETDOMAINNAME''@/$(GNULIB_GETDOMAINNAME)/g' \ - -e 's/@''GNULIB_GETDTABLESIZE''@/$(GNULIB_GETDTABLESIZE)/g' \ - -e 's/@''GNULIB_GETGROUPS''@/$(GNULIB_GETGROUPS)/g' \ - -e 's/@''GNULIB_GETHOSTNAME''@/$(GNULIB_GETHOSTNAME)/g' \ - -e 's/@''GNULIB_GETLOGIN''@/$(GNULIB_GETLOGIN)/g' \ - -e 's/@''GNULIB_GETLOGIN_R''@/$(GNULIB_GETLOGIN_R)/g' \ - -e 's/@''GNULIB_GETPAGESIZE''@/$(GNULIB_GETPAGESIZE)/g' \ - -e 's/@''GNULIB_GETPASS''@/$(GNULIB_GETPASS)/g' \ - -e 's/@''GNULIB_GETUSERSHELL''@/$(GNULIB_GETUSERSHELL)/g' \ - -e 's/@''GNULIB_GROUP_MEMBER''@/$(GNULIB_GROUP_MEMBER)/g' \ - -e 's/@''GNULIB_ISATTY''@/$(GNULIB_ISATTY)/g' \ - -e 's/@''GNULIB_LCHOWN''@/$(GNULIB_LCHOWN)/g' \ - -e 's/@''GNULIB_LINK''@/$(GNULIB_LINK)/g' \ - -e 's/@''GNULIB_LINKAT''@/$(GNULIB_LINKAT)/g' \ - -e 's/@''GNULIB_LSEEK''@/$(GNULIB_LSEEK)/g' \ - -e 's/@''GNULIB_PIPE''@/$(GNULIB_PIPE)/g' \ - -e 's/@''GNULIB_PIPE2''@/$(GNULIB_PIPE2)/g' \ - -e 's/@''GNULIB_PREAD''@/$(GNULIB_PREAD)/g' \ - -e 's/@''GNULIB_PWRITE''@/$(GNULIB_PWRITE)/g' \ - -e 's/@''GNULIB_READ''@/$(GNULIB_READ)/g' \ - -e 's/@''GNULIB_READLINK''@/$(GNULIB_READLINK)/g' \ - -e 's/@''GNULIB_READLINKAT''@/$(GNULIB_READLINKAT)/g' \ - -e 's/@''GNULIB_RMDIR''@/$(GNULIB_RMDIR)/g' \ - -e 's/@''GNULIB_SETHOSTNAME''@/$(GNULIB_SETHOSTNAME)/g' \ - -e 's/@''GNULIB_SLEEP''@/$(GNULIB_SLEEP)/g' \ - -e 's/@''GNULIB_SYMLINK''@/$(GNULIB_SYMLINK)/g' \ - -e 's/@''GNULIB_SYMLINKAT''@/$(GNULIB_SYMLINKAT)/g' \ - -e 's/@''GNULIB_TRUNCATE''@/$(GNULIB_TRUNCATE)/g' \ - -e 's/@''GNULIB_TTYNAME_R''@/$(GNULIB_TTYNAME_R)/g' \ - -e 's/@''GNULIB_UNISTD_H_GETOPT''@/0$(GNULIB_GL_UNISTD_H_GETOPT)/g' \ - -e 's/@''GNULIB_UNISTD_H_NONBLOCKING''@/$(GNULIB_UNISTD_H_NONBLOCKING)/g' \ - -e 's/@''GNULIB_UNISTD_H_SIGPIPE''@/$(GNULIB_UNISTD_H_SIGPIPE)/g' \ - -e 's/@''GNULIB_UNLINK''@/$(GNULIB_UNLINK)/g' \ - -e 's/@''GNULIB_UNLINKAT''@/$(GNULIB_UNLINKAT)/g' \ - -e 's/@''GNULIB_USLEEP''@/$(GNULIB_USLEEP)/g' \ - -e 's/@''GNULIB_WRITE''@/$(GNULIB_WRITE)/g' \ - < $(srcdir)/unistd.in.h | \ - sed -e 's|@''HAVE_CHOWN''@|$(HAVE_CHOWN)|g' \ - -e 's|@''HAVE_DUP2''@|$(HAVE_DUP2)|g' \ - -e 's|@''HAVE_DUP3''@|$(HAVE_DUP3)|g' \ - -e 's|@''HAVE_EUIDACCESS''@|$(HAVE_EUIDACCESS)|g' \ - -e 's|@''HAVE_FACCESSAT''@|$(HAVE_FACCESSAT)|g' \ - -e 's|@''HAVE_FCHDIR''@|$(HAVE_FCHDIR)|g' \ - -e 's|@''HAVE_FCHOWNAT''@|$(HAVE_FCHOWNAT)|g' \ - -e 's|@''HAVE_FDATASYNC''@|$(HAVE_FDATASYNC)|g' \ - -e 's|@''HAVE_FSYNC''@|$(HAVE_FSYNC)|g' \ - -e 's|@''HAVE_FTRUNCATE''@|$(HAVE_FTRUNCATE)|g' \ - -e 's|@''HAVE_GETDTABLESIZE''@|$(HAVE_GETDTABLESIZE)|g' \ - -e 's|@''HAVE_GETGROUPS''@|$(HAVE_GETGROUPS)|g' \ - -e 's|@''HAVE_GETHOSTNAME''@|$(HAVE_GETHOSTNAME)|g' \ - -e 's|@''HAVE_GETPAGESIZE''@|$(HAVE_GETPAGESIZE)|g' \ - -e 's|@''HAVE_GETPASS''@|$(HAVE_GETPASS)|g' \ - -e 's|@''HAVE_GROUP_MEMBER''@|$(HAVE_GROUP_MEMBER)|g' \ - -e 's|@''HAVE_LCHOWN''@|$(HAVE_LCHOWN)|g' \ - -e 's|@''HAVE_LINK''@|$(HAVE_LINK)|g' \ - -e 's|@''HAVE_LINKAT''@|$(HAVE_LINKAT)|g' \ - -e 's|@''HAVE_PIPE''@|$(HAVE_PIPE)|g' \ - -e 's|@''HAVE_PIPE2''@|$(HAVE_PIPE2)|g' \ - -e 's|@''HAVE_PREAD''@|$(HAVE_PREAD)|g' \ - -e 's|@''HAVE_PWRITE''@|$(HAVE_PWRITE)|g' \ - -e 's|@''HAVE_READLINK''@|$(HAVE_READLINK)|g' \ - -e 's|@''HAVE_READLINKAT''@|$(HAVE_READLINKAT)|g' \ - -e 's|@''HAVE_SETHOSTNAME''@|$(HAVE_SETHOSTNAME)|g' \ - -e 's|@''HAVE_SLEEP''@|$(HAVE_SLEEP)|g' \ - -e 's|@''HAVE_SYMLINK''@|$(HAVE_SYMLINK)|g' \ - -e 's|@''HAVE_SYMLINKAT''@|$(HAVE_SYMLINKAT)|g' \ - -e 's|@''HAVE_UNLINKAT''@|$(HAVE_UNLINKAT)|g' \ - -e 's|@''HAVE_USLEEP''@|$(HAVE_USLEEP)|g' \ - -e 's|@''HAVE_DECL_ENVIRON''@|$(HAVE_DECL_ENVIRON)|g' \ - -e 's|@''HAVE_DECL_FCHDIR''@|$(HAVE_DECL_FCHDIR)|g' \ - -e 's|@''HAVE_DECL_FDATASYNC''@|$(HAVE_DECL_FDATASYNC)|g' \ - -e 's|@''HAVE_DECL_GETDOMAINNAME''@|$(HAVE_DECL_GETDOMAINNAME)|g' \ - -e 's|@''HAVE_DECL_GETLOGIN''@|$(HAVE_DECL_GETLOGIN)|g' \ - -e 's|@''HAVE_DECL_GETLOGIN_R''@|$(HAVE_DECL_GETLOGIN_R)|g' \ - -e 's|@''HAVE_DECL_GETPAGESIZE''@|$(HAVE_DECL_GETPAGESIZE)|g' \ - -e 's|@''HAVE_DECL_GETUSERSHELL''@|$(HAVE_DECL_GETUSERSHELL)|g' \ - -e 's|@''HAVE_DECL_SETHOSTNAME''@|$(HAVE_DECL_SETHOSTNAME)|g' \ - -e 's|@''HAVE_DECL_TRUNCATE''@|$(HAVE_DECL_TRUNCATE)|g' \ - -e 's|@''HAVE_DECL_TTYNAME_R''@|$(HAVE_DECL_TTYNAME_R)|g' \ - -e 's|@''HAVE_OS_H''@|$(HAVE_OS_H)|g' \ - -e 's|@''HAVE_SYS_PARAM_H''@|$(HAVE_SYS_PARAM_H)|g' \ - | \ - sed -e 's|@''REPLACE_CHOWN''@|$(REPLACE_CHOWN)|g' \ - -e 's|@''REPLACE_CLOSE''@|$(REPLACE_CLOSE)|g' \ - -e 's|@''REPLACE_DUP''@|$(REPLACE_DUP)|g' \ - -e 's|@''REPLACE_DUP2''@|$(REPLACE_DUP2)|g' \ - -e 's|@''REPLACE_FACCESSAT''@|$(REPLACE_FACCESSAT)|g' \ - -e 's|@''REPLACE_FCHOWNAT''@|$(REPLACE_FCHOWNAT)|g' \ - -e 's|@''REPLACE_FTRUNCATE''@|$(REPLACE_FTRUNCATE)|g' \ - -e 's|@''REPLACE_GETCWD''@|$(REPLACE_GETCWD)|g' \ - -e 's|@''REPLACE_GETDOMAINNAME''@|$(REPLACE_GETDOMAINNAME)|g' \ - -e 's|@''REPLACE_GETDTABLESIZE''@|$(REPLACE_GETDTABLESIZE)|g' \ - -e 's|@''REPLACE_GETLOGIN_R''@|$(REPLACE_GETLOGIN_R)|g' \ - -e 's|@''REPLACE_GETGROUPS''@|$(REPLACE_GETGROUPS)|g' \ - -e 's|@''REPLACE_GETPAGESIZE''@|$(REPLACE_GETPAGESIZE)|g' \ - -e 's|@''REPLACE_GETPASS''@|$(REPLACE_GETPASS)|g' \ - -e 's|@''REPLACE_ISATTY''@|$(REPLACE_ISATTY)|g' \ - -e 's|@''REPLACE_LCHOWN''@|$(REPLACE_LCHOWN)|g' \ - -e 's|@''REPLACE_LINK''@|$(REPLACE_LINK)|g' \ - -e 's|@''REPLACE_LINKAT''@|$(REPLACE_LINKAT)|g' \ - -e 's|@''REPLACE_LSEEK''@|$(REPLACE_LSEEK)|g' \ - -e 's|@''REPLACE_PREAD''@|$(REPLACE_PREAD)|g' \ - -e 's|@''REPLACE_PWRITE''@|$(REPLACE_PWRITE)|g' \ - -e 's|@''REPLACE_READ''@|$(REPLACE_READ)|g' \ - -e 's|@''REPLACE_READLINK''@|$(REPLACE_READLINK)|g' \ - -e 's|@''REPLACE_READLINKAT''@|$(REPLACE_READLINKAT)|g' \ - -e 's|@''REPLACE_RMDIR''@|$(REPLACE_RMDIR)|g' \ - -e 's|@''REPLACE_SLEEP''@|$(REPLACE_SLEEP)|g' \ - -e 's|@''REPLACE_SYMLINK''@|$(REPLACE_SYMLINK)|g' \ - -e 's|@''REPLACE_SYMLINKAT''@|$(REPLACE_SYMLINKAT)|g' \ - -e 's|@''REPLACE_TRUNCATE''@|$(REPLACE_TRUNCATE)|g' \ - -e 's|@''REPLACE_TTYNAME_R''@|$(REPLACE_TTYNAME_R)|g' \ - -e 's|@''REPLACE_UNLINK''@|$(REPLACE_UNLINK)|g' \ - -e 's|@''REPLACE_UNLINKAT''@|$(REPLACE_UNLINKAT)|g' \ - -e 's|@''REPLACE_USLEEP''@|$(REPLACE_USLEEP)|g' \ - -e 's|@''REPLACE_WRITE''@|$(REPLACE_WRITE)|g' \ - -e 's|@''UNISTD_H_HAVE_WINSOCK2_H''@|$(UNISTD_H_HAVE_WINSOCK2_H)|g' \ - -e 's|@''UNISTD_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS''@|$(UNISTD_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS)|g' \ - -e '/definitions of _GL_FUNCDECL_RPL/r $(CXXDEFS_H)' \ - -e '/definition of _GL_ARG_NONNULL/r $(ARG_NONNULL_H)' \ - -e '/definition of _GL_WARN_ON_USE/r $(WARN_ON_USE_H)'; \ - } > $@-t && \ - mv $@-t $@ -MOSTLYCLEANFILES += unistd.h unistd.h-t - -EXTRA_DIST += unistd.in.h - -## end gnulib module unistd - -## begin gnulib module unistd-safer - -libgnu_a_SOURCES += dup-safer.c fd-safer.c pipe-safer.c - -EXTRA_DIST += unistd--.h unistd-safer.h - -## end gnulib module unistd-safer - -## begin gnulib module unitypes - -BUILT_SOURCES += $(LIBUNISTRING_UNITYPES_H) - -unitypes.h: unitypes.in.h - $(AM_V_GEN)rm -f $@-t $@ && \ - { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \ - cat $(srcdir)/unitypes.in.h; \ - } > $@-t && \ - mv -f $@-t $@ -MOSTLYCLEANFILES += unitypes.h unitypes.h-t - -EXTRA_DIST += unitypes.in.h - -## end gnulib module unitypes - -## begin gnulib module uniwidth/base - -BUILT_SOURCES += $(LIBUNISTRING_UNIWIDTH_H) - -uniwidth.h: uniwidth.in.h - $(AM_V_GEN)rm -f $@-t $@ && \ - { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \ - cat $(srcdir)/uniwidth.in.h; \ - } > $@-t && \ - mv -f $@-t $@ -MOSTLYCLEANFILES += uniwidth.h uniwidth.h-t - -EXTRA_DIST += localcharset.h uniwidth.in.h - -## end gnulib module uniwidth/base - -## begin gnulib module uniwidth/width - -if LIBUNISTRING_COMPILE_UNIWIDTH_WIDTH -libgnu_a_SOURCES += uniwidth/width.c -endif - -EXTRA_DIST += uniwidth/cjk.h - -## end gnulib module uniwidth/width - -## begin gnulib module vasnprintf - - -EXTRA_DIST += asnprintf.c float+.h printf-args.c printf-args.h printf-parse.c printf-parse.h vasnprintf.c vasnprintf.h - -EXTRA_libgnu_a_SOURCES += asnprintf.c printf-args.c printf-parse.c vasnprintf.c - -## end gnulib module vasnprintf - -## begin gnulib module verify - - -EXTRA_DIST += verify.h - -## end gnulib module verify - -## begin gnulib module vsnprintf - - -EXTRA_DIST += vsnprintf.c - -EXTRA_libgnu_a_SOURCES += vsnprintf.c - -## end gnulib module vsnprintf - -## begin gnulib module wchar - -BUILT_SOURCES += wchar.h - -# We need the following in order to create when the system -# version does not work standalone. -wchar.h: wchar.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H) $(WARN_ON_USE_H) - $(AM_V_GEN)rm -f $@-t $@ && \ - { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \ - sed -e 's|@''GUARD_PREFIX''@|GL|g' \ - -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ - -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ - -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \ - -e 's|@''HAVE_FEATURES_H''@|$(HAVE_FEATURES_H)|g' \ - -e 's|@''NEXT_WCHAR_H''@|$(NEXT_WCHAR_H)|g' \ - -e 's|@''HAVE_WCHAR_H''@|$(HAVE_WCHAR_H)|g' \ - -e 's/@''HAVE_CRTDEFS_H''@/$(HAVE_CRTDEFS_H)/g' \ - -e 's/@''GNULIB_OVERRIDES_WINT_T''@/$(GNULIB_OVERRIDES_WINT_T)/g' \ - -e 's/@''GNULIB_BTOWC''@/$(GNULIB_BTOWC)/g' \ - -e 's/@''GNULIB_WCTOB''@/$(GNULIB_WCTOB)/g' \ - -e 's/@''GNULIB_MBSINIT''@/$(GNULIB_MBSINIT)/g' \ - -e 's/@''GNULIB_MBRTOWC''@/$(GNULIB_MBRTOWC)/g' \ - -e 's/@''GNULIB_MBRLEN''@/$(GNULIB_MBRLEN)/g' \ - -e 's/@''GNULIB_MBSRTOWCS''@/$(GNULIB_MBSRTOWCS)/g' \ - -e 's/@''GNULIB_MBSNRTOWCS''@/$(GNULIB_MBSNRTOWCS)/g' \ - -e 's/@''GNULIB_WCRTOMB''@/$(GNULIB_WCRTOMB)/g' \ - -e 's/@''GNULIB_WCSRTOMBS''@/$(GNULIB_WCSRTOMBS)/g' \ - -e 's/@''GNULIB_WCSNRTOMBS''@/$(GNULIB_WCSNRTOMBS)/g' \ - -e 's/@''GNULIB_WCWIDTH''@/$(GNULIB_WCWIDTH)/g' \ - -e 's/@''GNULIB_WMEMCHR''@/$(GNULIB_WMEMCHR)/g' \ - -e 's/@''GNULIB_WMEMCMP''@/$(GNULIB_WMEMCMP)/g' \ - -e 's/@''GNULIB_WMEMCPY''@/$(GNULIB_WMEMCPY)/g' \ - -e 's/@''GNULIB_WMEMMOVE''@/$(GNULIB_WMEMMOVE)/g' \ - -e 's/@''GNULIB_WMEMSET''@/$(GNULIB_WMEMSET)/g' \ - -e 's/@''GNULIB_WCSLEN''@/$(GNULIB_WCSLEN)/g' \ - -e 's/@''GNULIB_WCSNLEN''@/$(GNULIB_WCSNLEN)/g' \ - -e 's/@''GNULIB_WCSCPY''@/$(GNULIB_WCSCPY)/g' \ - -e 's/@''GNULIB_WCPCPY''@/$(GNULIB_WCPCPY)/g' \ - -e 's/@''GNULIB_WCSNCPY''@/$(GNULIB_WCSNCPY)/g' \ - -e 's/@''GNULIB_WCPNCPY''@/$(GNULIB_WCPNCPY)/g' \ - -e 's/@''GNULIB_WCSCAT''@/$(GNULIB_WCSCAT)/g' \ - -e 's/@''GNULIB_WCSNCAT''@/$(GNULIB_WCSNCAT)/g' \ - -e 's/@''GNULIB_WCSCMP''@/$(GNULIB_WCSCMP)/g' \ - -e 's/@''GNULIB_WCSNCMP''@/$(GNULIB_WCSNCMP)/g' \ - -e 's/@''GNULIB_WCSCASECMP''@/$(GNULIB_WCSCASECMP)/g' \ - -e 's/@''GNULIB_WCSNCASECMP''@/$(GNULIB_WCSNCASECMP)/g' \ - -e 's/@''GNULIB_WCSCOLL''@/$(GNULIB_WCSCOLL)/g' \ - -e 's/@''GNULIB_WCSXFRM''@/$(GNULIB_WCSXFRM)/g' \ - -e 's/@''GNULIB_WCSDUP''@/$(GNULIB_WCSDUP)/g' \ - -e 's/@''GNULIB_WCSCHR''@/$(GNULIB_WCSCHR)/g' \ - -e 's/@''GNULIB_WCSRCHR''@/$(GNULIB_WCSRCHR)/g' \ - -e 's/@''GNULIB_WCSCSPN''@/$(GNULIB_WCSCSPN)/g' \ - -e 's/@''GNULIB_WCSSPN''@/$(GNULIB_WCSSPN)/g' \ - -e 's/@''GNULIB_WCSPBRK''@/$(GNULIB_WCSPBRK)/g' \ - -e 's/@''GNULIB_WCSSTR''@/$(GNULIB_WCSSTR)/g' \ - -e 's/@''GNULIB_WCSTOK''@/$(GNULIB_WCSTOK)/g' \ - -e 's/@''GNULIB_WCSWIDTH''@/$(GNULIB_WCSWIDTH)/g' \ - -e 's/@''GNULIB_WCSFTIME''@/$(GNULIB_WCSFTIME)/g' \ - < $(srcdir)/wchar.in.h | \ - sed -e 's|@''HAVE_WINT_T''@|$(HAVE_WINT_T)|g' \ - -e 's|@''HAVE_BTOWC''@|$(HAVE_BTOWC)|g' \ - -e 's|@''HAVE_MBSINIT''@|$(HAVE_MBSINIT)|g' \ - -e 's|@''HAVE_MBRTOWC''@|$(HAVE_MBRTOWC)|g' \ - -e 's|@''HAVE_MBRLEN''@|$(HAVE_MBRLEN)|g' \ - -e 's|@''HAVE_MBSRTOWCS''@|$(HAVE_MBSRTOWCS)|g' \ - -e 's|@''HAVE_MBSNRTOWCS''@|$(HAVE_MBSNRTOWCS)|g' \ - -e 's|@''HAVE_WCRTOMB''@|$(HAVE_WCRTOMB)|g' \ - -e 's|@''HAVE_WCSRTOMBS''@|$(HAVE_WCSRTOMBS)|g' \ - -e 's|@''HAVE_WCSNRTOMBS''@|$(HAVE_WCSNRTOMBS)|g' \ - -e 's|@''HAVE_WMEMCHR''@|$(HAVE_WMEMCHR)|g' \ - -e 's|@''HAVE_WMEMCMP''@|$(HAVE_WMEMCMP)|g' \ - -e 's|@''HAVE_WMEMCPY''@|$(HAVE_WMEMCPY)|g' \ - -e 's|@''HAVE_WMEMMOVE''@|$(HAVE_WMEMMOVE)|g' \ - -e 's|@''HAVE_WMEMSET''@|$(HAVE_WMEMSET)|g' \ - -e 's|@''HAVE_WCSLEN''@|$(HAVE_WCSLEN)|g' \ - -e 's|@''HAVE_WCSNLEN''@|$(HAVE_WCSNLEN)|g' \ - -e 's|@''HAVE_WCSCPY''@|$(HAVE_WCSCPY)|g' \ - -e 's|@''HAVE_WCPCPY''@|$(HAVE_WCPCPY)|g' \ - -e 's|@''HAVE_WCSNCPY''@|$(HAVE_WCSNCPY)|g' \ - -e 's|@''HAVE_WCPNCPY''@|$(HAVE_WCPNCPY)|g' \ - -e 's|@''HAVE_WCSCAT''@|$(HAVE_WCSCAT)|g' \ - -e 's|@''HAVE_WCSNCAT''@|$(HAVE_WCSNCAT)|g' \ - -e 's|@''HAVE_WCSCMP''@|$(HAVE_WCSCMP)|g' \ - -e 's|@''HAVE_WCSNCMP''@|$(HAVE_WCSNCMP)|g' \ - -e 's|@''HAVE_WCSCASECMP''@|$(HAVE_WCSCASECMP)|g' \ - -e 's|@''HAVE_WCSNCASECMP''@|$(HAVE_WCSNCASECMP)|g' \ - -e 's|@''HAVE_WCSCOLL''@|$(HAVE_WCSCOLL)|g' \ - -e 's|@''HAVE_WCSXFRM''@|$(HAVE_WCSXFRM)|g' \ - -e 's|@''HAVE_WCSDUP''@|$(HAVE_WCSDUP)|g' \ - -e 's|@''HAVE_WCSCHR''@|$(HAVE_WCSCHR)|g' \ - -e 's|@''HAVE_WCSRCHR''@|$(HAVE_WCSRCHR)|g' \ - -e 's|@''HAVE_WCSCSPN''@|$(HAVE_WCSCSPN)|g' \ - -e 's|@''HAVE_WCSSPN''@|$(HAVE_WCSSPN)|g' \ - -e 's|@''HAVE_WCSPBRK''@|$(HAVE_WCSPBRK)|g' \ - -e 's|@''HAVE_WCSSTR''@|$(HAVE_WCSSTR)|g' \ - -e 's|@''HAVE_WCSTOK''@|$(HAVE_WCSTOK)|g' \ - -e 's|@''HAVE_WCSWIDTH''@|$(HAVE_WCSWIDTH)|g' \ - -e 's|@''HAVE_WCSFTIME''@|$(HAVE_WCSFTIME)|g' \ - -e 's|@''HAVE_DECL_WCTOB''@|$(HAVE_DECL_WCTOB)|g' \ - -e 's|@''HAVE_DECL_WCWIDTH''@|$(HAVE_DECL_WCWIDTH)|g' \ - | \ - sed -e 's|@''REPLACE_MBSTATE_T''@|$(REPLACE_MBSTATE_T)|g' \ - -e 's|@''REPLACE_BTOWC''@|$(REPLACE_BTOWC)|g' \ - -e 's|@''REPLACE_WCTOB''@|$(REPLACE_WCTOB)|g' \ - -e 's|@''REPLACE_MBSINIT''@|$(REPLACE_MBSINIT)|g' \ - -e 's|@''REPLACE_MBRTOWC''@|$(REPLACE_MBRTOWC)|g' \ - -e 's|@''REPLACE_MBRLEN''@|$(REPLACE_MBRLEN)|g' \ - -e 's|@''REPLACE_MBSRTOWCS''@|$(REPLACE_MBSRTOWCS)|g' \ - -e 's|@''REPLACE_MBSNRTOWCS''@|$(REPLACE_MBSNRTOWCS)|g' \ - -e 's|@''REPLACE_WCRTOMB''@|$(REPLACE_WCRTOMB)|g' \ - -e 's|@''REPLACE_WCSRTOMBS''@|$(REPLACE_WCSRTOMBS)|g' \ - -e 's|@''REPLACE_WCSNRTOMBS''@|$(REPLACE_WCSNRTOMBS)|g' \ - -e 's|@''REPLACE_WCWIDTH''@|$(REPLACE_WCWIDTH)|g' \ - -e 's|@''REPLACE_WCSWIDTH''@|$(REPLACE_WCSWIDTH)|g' \ - -e 's|@''REPLACE_WCSFTIME''@|$(REPLACE_WCSFTIME)|g' \ - -e '/definitions of _GL_FUNCDECL_RPL/r $(CXXDEFS_H)' \ - -e '/definition of _GL_ARG_NONNULL/r $(ARG_NONNULL_H)' \ - -e '/definition of _GL_WARN_ON_USE/r $(WARN_ON_USE_H)'; \ - } > $@-t && \ - mv $@-t $@ -MOSTLYCLEANFILES += wchar.h wchar.h-t - -EXTRA_DIST += wchar.in.h - -## end gnulib module wchar - -## begin gnulib module wcrtomb - - -EXTRA_DIST += wcrtomb.c - -EXTRA_libgnu_a_SOURCES += wcrtomb.c - -## end gnulib module wcrtomb - -## begin gnulib module wctype-h - -BUILT_SOURCES += wctype.h -libgnu_a_SOURCES += wctype-h.c - -# We need the following in order to create when the system -# doesn't have one that works with the given compiler. -wctype.h: wctype.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(WARN_ON_USE_H) - $(AM_V_GEN)rm -f $@-t $@ && \ - { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \ - sed -e 's|@''GUARD_PREFIX''@|GL|g' \ - -e 's/@''HAVE_WCTYPE_H''@/$(HAVE_WCTYPE_H)/g' \ - -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ - -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ - -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \ - -e 's|@''NEXT_WCTYPE_H''@|$(NEXT_WCTYPE_H)|g' \ - -e 's/@''HAVE_CRTDEFS_H''@/$(HAVE_CRTDEFS_H)/g' \ - -e 's/@''GNULIB_OVERRIDES_WINT_T''@/$(GNULIB_OVERRIDES_WINT_T)/g' \ - -e 's/@''GNULIB_ISWBLANK''@/$(GNULIB_ISWBLANK)/g' \ - -e 's/@''GNULIB_WCTYPE''@/$(GNULIB_WCTYPE)/g' \ - -e 's/@''GNULIB_ISWCTYPE''@/$(GNULIB_ISWCTYPE)/g' \ - -e 's/@''GNULIB_WCTRANS''@/$(GNULIB_WCTRANS)/g' \ - -e 's/@''GNULIB_TOWCTRANS''@/$(GNULIB_TOWCTRANS)/g' \ - -e 's/@''HAVE_ISWBLANK''@/$(HAVE_ISWBLANK)/g' \ - -e 's/@''HAVE_ISWCNTRL''@/$(HAVE_ISWCNTRL)/g' \ - -e 's/@''HAVE_WCTYPE_T''@/$(HAVE_WCTYPE_T)/g' \ - -e 's/@''HAVE_WCTRANS_T''@/$(HAVE_WCTRANS_T)/g' \ - -e 's/@''HAVE_WINT_T''@/$(HAVE_WINT_T)/g' \ - -e 's/@''REPLACE_ISWBLANK''@/$(REPLACE_ISWBLANK)/g' \ - -e 's/@''REPLACE_ISWCNTRL''@/$(REPLACE_ISWCNTRL)/g' \ - -e 's/@''REPLACE_TOWLOWER''@/$(REPLACE_TOWLOWER)/g' \ - -e '/definitions of _GL_FUNCDECL_RPL/r $(CXXDEFS_H)' \ - -e '/definition of _GL_WARN_ON_USE/r $(WARN_ON_USE_H)' \ - < $(srcdir)/wctype.in.h; \ - } > $@-t && \ - mv $@-t $@ -MOSTLYCLEANFILES += wctype.h wctype.h-t - -EXTRA_DIST += wctype.in.h - -## end gnulib module wctype-h - -## begin gnulib module wcwidth - - -EXTRA_DIST += wcwidth.c - -EXTRA_libgnu_a_SOURCES += wcwidth.c - -## end gnulib module wcwidth - -## begin gnulib module xalloc-oversized - - -EXTRA_DIST += xalloc-oversized.h - -## end gnulib module xalloc-oversized - -## begin gnulib module xsize - -libgnu_a_SOURCES += xsize.h xsize.c - -## end gnulib module xsize - - -mostlyclean-local: mostlyclean-generic - @for dir in '' $(MOSTLYCLEANDIRS); do \ - if test -n "$$dir" && test -d $$dir; then \ - echo "rmdir $$dir"; rmdir $$dir; \ - fi; \ - done; \ - : diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/Makefile.in b/thirdparty/grub-2.04/grub-core/lib/gnulib/Makefile.in deleted file mode 100644 index 0f1ad3c2c..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/Makefile.in +++ /dev/null @@ -1,3069 +0,0 @@ -# Makefile.in generated by automake 1.15 from Makefile.am. -# @configure_input@ - -# Copyright (C) 1994-2014 Free Software Foundation, Inc. - -# This Makefile.in is free software; the Free Software Foundation -# gives unlimited permission to copy and/or distribute it, -# with or without modifications, as long as this notice is preserved. - -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY, to the extent permitted by law; without -# even the implied warranty of MERCHANTABILITY or FITNESS FOR A -# PARTICULAR PURPOSE. - -@SET_MAKE@ - -# Copyright (C) 2002-2019 Free Software Foundation, Inc. -# -# This file is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 3 of the License, or -# (at your option) any later version. -# -# This file is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this file. If not, see . -# -# As a special exception to the GNU General Public License, -# this file may be distributed as part of a program that -# contains a configuration script generated by Autoconf, under -# the same distribution terms as the rest of that program. -# -# Generated by gnulib-tool. -# Reproduce by: -# gnulib-tool --import --local-dir=gl \ -# --lib=libgnu \ -# --source-base=grub-core/lib/gnulib \ -# --m4-base=m4 \ -# --doc-base=doc \ -# --tests-base=tests \ -# --aux-dir=build-aux \ -# --no-conditional-dependencies \ -# --no-libtool \ -# --macro-prefix=gl \ -# --no-vc-files \ -# argp \ -# error \ -# fnmatch \ -# getdelim \ -# getline \ -# gettext-h \ -# gitlog-to-changelog \ -# mbswidth \ -# progname \ -# realloc-gnu \ -# regex \ -# save-cwd - - - -VPATH = @srcdir@ -am__is_gnu_make = { \ - if test -z '$(MAKELEVEL)'; then \ - false; \ - elif test -n '$(MAKE_HOST)'; then \ - true; \ - elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \ - true; \ - else \ - false; \ - fi; \ -} -am__make_running_with_option = \ - case $${target_option-} in \ - ?) ;; \ - *) echo "am__make_running_with_option: internal error: invalid" \ - "target option '$${target_option-}' specified" >&2; \ - exit 1;; \ - esac; \ - has_opt=no; \ - sane_makeflags=$$MAKEFLAGS; \ - if $(am__is_gnu_make); then \ - sane_makeflags=$$MFLAGS; \ - else \ - case $$MAKEFLAGS in \ - *\\[\ \ ]*) \ - bs=\\; \ - sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \ - | sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \ - esac; \ - fi; \ - skip_next=no; \ - strip_trailopt () \ - { \ - flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \ - }; \ - for flg in $$sane_makeflags; do \ - test $$skip_next = yes && { skip_next=no; continue; }; \ - case $$flg in \ - *=*|--*) continue;; \ - -*I) strip_trailopt 'I'; skip_next=yes;; \ - -*I?*) strip_trailopt 'I';; \ - -*O) strip_trailopt 'O'; skip_next=yes;; \ - -*O?*) strip_trailopt 'O';; \ - -*l) strip_trailopt 'l'; skip_next=yes;; \ - -*l?*) strip_trailopt 'l';; \ - -[dEDm]) skip_next=yes;; \ - -[JT]) skip_next=yes;; \ - esac; \ - case $$flg in \ - *$$target_option*) has_opt=yes; break;; \ - esac; \ - done; \ - test $$has_opt = yes -am__make_dryrun = (target_option=n; $(am__make_running_with_option)) -am__make_keepgoing = (target_option=k; $(am__make_running_with_option)) -pkgdatadir = $(datadir)/@PACKAGE@ -pkgincludedir = $(includedir)/@PACKAGE@ -pkglibdir = $(libdir)/@PACKAGE@ -pkglibexecdir = $(libexecdir)/@PACKAGE@ -am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd -install_sh_DATA = $(install_sh) -c -m 644 -install_sh_PROGRAM = $(install_sh) -c -install_sh_SCRIPT = $(install_sh) -c -INSTALL_HEADER = $(INSTALL_DATA) -transform = $(program_transform_name) -NORMAL_INSTALL = : -PRE_INSTALL = : -POST_INSTALL = : -NORMAL_UNINSTALL = : -PRE_UNINSTALL = : -POST_UNINSTALL = : -build_triplet = @build@ -host_triplet = @host@ -target_triplet = @target@ -@LIBUNISTRING_COMPILE_UNIWIDTH_WIDTH_TRUE@am__append_1 = uniwidth/width.c -subdir = grub-core/lib/gnulib -ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 -am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \ - $(top_srcdir)/m4/__inline.m4 \ - $(top_srcdir)/m4/absolute-header.m4 $(top_srcdir)/m4/alloca.m4 \ - $(top_srcdir)/m4/argp.m4 $(top_srcdir)/m4/btowc.m4 \ - $(top_srcdir)/m4/builtin-expect.m4 \ - $(top_srcdir)/m4/chdir-long.m4 $(top_srcdir)/m4/close.m4 \ - $(top_srcdir)/m4/codeset.m4 $(top_srcdir)/m4/dirent_h.m4 \ - $(top_srcdir)/m4/dirfd.m4 $(top_srcdir)/m4/dirname.m4 \ - $(top_srcdir)/m4/double-slash-root.m4 $(top_srcdir)/m4/dup2.m4 \ - $(top_srcdir)/m4/eealloc.m4 $(top_srcdir)/m4/errno_h.m4 \ - $(top_srcdir)/m4/error.m4 $(top_srcdir)/m4/exponentd.m4 \ - $(top_srcdir)/m4/extensions.m4 \ - $(top_srcdir)/m4/extern-inline.m4 $(top_srcdir)/m4/fchdir.m4 \ - $(top_srcdir)/m4/fcntl-o.m4 $(top_srcdir)/m4/fcntl.m4 \ - $(top_srcdir)/m4/fcntl_h.m4 $(top_srcdir)/m4/filenamecat.m4 \ - $(top_srcdir)/m4/flexmember.m4 $(top_srcdir)/m4/float_h.m4 \ - $(top_srcdir)/m4/fnmatch.m4 $(top_srcdir)/m4/fnmatch_h.m4 \ - $(top_srcdir)/m4/fstat.m4 $(top_srcdir)/m4/getcwd.m4 \ - $(top_srcdir)/m4/getdelim.m4 $(top_srcdir)/m4/getdtablesize.m4 \ - $(top_srcdir)/m4/getline.m4 $(top_srcdir)/m4/getopt.m4 \ - $(top_srcdir)/m4/getprogname.m4 $(top_srcdir)/m4/gettext.m4 \ - $(top_srcdir)/m4/glibc21.m4 $(top_srcdir)/m4/gnulib-common.m4 \ - $(top_srcdir)/m4/gnulib-comp.m4 \ - $(top_srcdir)/m4/host-cpu-c-abi.m4 $(top_srcdir)/m4/iconv.m4 \ - $(top_srcdir)/m4/include_next.m4 \ - $(top_srcdir)/m4/intlmacosx.m4 $(top_srcdir)/m4/intmax_t.m4 \ - $(top_srcdir)/m4/inttypes_h.m4 $(top_srcdir)/m4/langinfo_h.m4 \ - $(top_srcdir)/m4/largefile.m4 $(top_srcdir)/m4/lib-ld.m4 \ - $(top_srcdir)/m4/lib-link.m4 $(top_srcdir)/m4/lib-prefix.m4 \ - $(top_srcdir)/m4/libunistring-base.m4 \ - $(top_srcdir)/m4/limits-h.m4 $(top_srcdir)/m4/localcharset.m4 \ - $(top_srcdir)/m4/locale-fr.m4 $(top_srcdir)/m4/locale-ja.m4 \ - $(top_srcdir)/m4/locale-zh.m4 $(top_srcdir)/m4/locale_h.m4 \ - $(top_srcdir)/m4/localeconv.m4 $(top_srcdir)/m4/lock.m4 \ - $(top_srcdir)/m4/longlong.m4 $(top_srcdir)/m4/lstat.m4 \ - $(top_srcdir)/m4/malloc.m4 $(top_srcdir)/m4/malloca.m4 \ - $(top_srcdir)/m4/mbrtowc.m4 $(top_srcdir)/m4/mbsinit.m4 \ - $(top_srcdir)/m4/mbsrtowcs.m4 $(top_srcdir)/m4/mbstate_t.m4 \ - $(top_srcdir)/m4/mbswidth.m4 $(top_srcdir)/m4/mbtowc.m4 \ - $(top_srcdir)/m4/memchr.m4 $(top_srcdir)/m4/mempcpy.m4 \ - $(top_srcdir)/m4/memrchr.m4 $(top_srcdir)/m4/mmap-anon.m4 \ - $(top_srcdir)/m4/mode_t.m4 $(top_srcdir)/m4/msvc-inval.m4 \ - $(top_srcdir)/m4/msvc-nothrow.m4 $(top_srcdir)/m4/multiarch.m4 \ - $(top_srcdir)/m4/nl_langinfo.m4 $(top_srcdir)/m4/nls.m4 \ - $(top_srcdir)/m4/nocrash.m4 $(top_srcdir)/m4/off_t.m4 \ - $(top_srcdir)/m4/open-cloexec.m4 $(top_srcdir)/m4/open.m4 \ - $(top_srcdir)/m4/openat.m4 $(top_srcdir)/m4/pathmax.m4 \ - $(top_srcdir)/m4/po.m4 $(top_srcdir)/m4/printf.m4 \ - $(top_srcdir)/m4/progtest.m4 \ - $(top_srcdir)/m4/pthread_rwlock_rdlock.m4 \ - $(top_srcdir)/m4/rawmemchr.m4 $(top_srcdir)/m4/realloc.m4 \ - $(top_srcdir)/m4/regex.m4 $(top_srcdir)/m4/save-cwd.m4 \ - $(top_srcdir)/m4/size_max.m4 $(top_srcdir)/m4/sleep.m4 \ - $(top_srcdir)/m4/ssize_t.m4 $(top_srcdir)/m4/stat-time.m4 \ - $(top_srcdir)/m4/stat.m4 $(top_srcdir)/m4/stdalign.m4 \ - $(top_srcdir)/m4/stdbool.m4 $(top_srcdir)/m4/stddef_h.m4 \ - $(top_srcdir)/m4/stdint.m4 $(top_srcdir)/m4/stdint_h.m4 \ - $(top_srcdir)/m4/stdio_h.m4 $(top_srcdir)/m4/stdlib_h.m4 \ - $(top_srcdir)/m4/strcase.m4 $(top_srcdir)/m4/strchrnul.m4 \ - $(top_srcdir)/m4/strdup.m4 $(top_srcdir)/m4/strerror.m4 \ - $(top_srcdir)/m4/string_h.m4 $(top_srcdir)/m4/strings_h.m4 \ - $(top_srcdir)/m4/strndup.m4 $(top_srcdir)/m4/strnlen.m4 \ - $(top_srcdir)/m4/sys_socket_h.m4 \ - $(top_srcdir)/m4/sys_stat_h.m4 $(top_srcdir)/m4/sys_types_h.m4 \ - $(top_srcdir)/m4/sysexits.m4 $(top_srcdir)/m4/threadlib.m4 \ - $(top_srcdir)/m4/time_h.m4 $(top_srcdir)/m4/unistd-safer.m4 \ - $(top_srcdir)/m4/unistd_h.m4 $(top_srcdir)/m4/vasnprintf.m4 \ - $(top_srcdir)/m4/vsnprintf.m4 $(top_srcdir)/m4/warn-on-use.m4 \ - $(top_srcdir)/m4/wchar_h.m4 $(top_srcdir)/m4/wchar_t.m4 \ - $(top_srcdir)/m4/wcrtomb.m4 $(top_srcdir)/m4/wctype_h.m4 \ - $(top_srcdir)/m4/wcwidth.m4 $(top_srcdir)/m4/wint_t.m4 \ - $(top_srcdir)/m4/xsize.m4 $(top_srcdir)/acinclude.m4 \ - $(top_srcdir)/configure.ac -am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ - $(ACLOCAL_M4) -DIST_COMMON = $(srcdir)/Makefile.am $(noinst_HEADERS) \ - $(am__DIST_COMMON) -mkinstalldirs = $(install_sh) -d -CONFIG_HEADER = $(top_builddir)/config-util.h -CONFIG_CLEAN_FILES = -CONFIG_CLEAN_VPATH_FILES = -LIBRARIES = $(noinst_LIBRARIES) -AM_V_AR = $(am__v_AR_@AM_V@) -am__v_AR_ = $(am__v_AR_@AM_DEFAULT_V@) -am__v_AR_0 = @echo " AR " $@; -am__v_AR_1 = -libgnu_a_AR = $(AR) $(ARFLAGS) -am__DEPENDENCIES_1 = -am__libgnu_a_SOURCES_DIST = argp.h argp-ba.c argp-eexst.c \ - argp-fmtstream.c argp-fmtstream.h argp-fs-xinl.c argp-help.c \ - argp-namefrob.h argp-parse.c argp-pin.c argp-pv.c argp-pvh.c \ - argp-xinl.c cloexec.c dirname-lgpl.c basename-lgpl.c \ - stripslash.c exitfail.c fd-hook.c fd-safer-flag.c \ - dup-safer-flag.c filenamecat-lgpl.c getprogname.h \ - getprogname.c gettext.h hard-locale.c localcharset.c \ - glthread/lock.h glthread/lock.c malloca.c mbswidth.h \ - mbswidth.c openat-die.c progname.h progname.c save-cwd.c \ - size_max.h stat-time.c strnlen1.h strnlen1.c \ - glthread/threadlib.c unistd.c dup-safer.c fd-safer.c \ - pipe-safer.c uniwidth/width.c wctype-h.c xsize.h xsize.c -am__dirstamp = $(am__leading_dot)dirstamp -@LIBUNISTRING_COMPILE_UNIWIDTH_WIDTH_TRUE@am__objects_1 = uniwidth/width.$(OBJEXT) -am_libgnu_a_OBJECTS = argp-ba.$(OBJEXT) argp-eexst.$(OBJEXT) \ - argp-fmtstream.$(OBJEXT) argp-fs-xinl.$(OBJEXT) \ - argp-help.$(OBJEXT) argp-parse.$(OBJEXT) argp-pin.$(OBJEXT) \ - argp-pv.$(OBJEXT) argp-pvh.$(OBJEXT) argp-xinl.$(OBJEXT) \ - cloexec.$(OBJEXT) dirname-lgpl.$(OBJEXT) \ - basename-lgpl.$(OBJEXT) stripslash.$(OBJEXT) \ - exitfail.$(OBJEXT) fd-hook.$(OBJEXT) fd-safer-flag.$(OBJEXT) \ - dup-safer-flag.$(OBJEXT) filenamecat-lgpl.$(OBJEXT) \ - getprogname.$(OBJEXT) hard-locale.$(OBJEXT) \ - localcharset.$(OBJEXT) glthread/lock.$(OBJEXT) \ - malloca.$(OBJEXT) mbswidth.$(OBJEXT) openat-die.$(OBJEXT) \ - progname.$(OBJEXT) save-cwd.$(OBJEXT) stat-time.$(OBJEXT) \ - strnlen1.$(OBJEXT) glthread/threadlib.$(OBJEXT) \ - unistd.$(OBJEXT) dup-safer.$(OBJEXT) fd-safer.$(OBJEXT) \ - pipe-safer.$(OBJEXT) $(am__objects_1) wctype-h.$(OBJEXT) \ - xsize.$(OBJEXT) -libgnu_a_OBJECTS = $(am_libgnu_a_OBJECTS) -LTLIBRARIES = $(noinst_LTLIBRARIES) -AM_V_P = $(am__v_P_@AM_V@) -am__v_P_ = $(am__v_P_@AM_DEFAULT_V@) -am__v_P_0 = false -am__v_P_1 = : -AM_V_GEN = $(am__v_GEN_@AM_V@) -am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@) -am__v_GEN_0 = @echo " GEN " $@; -am__v_GEN_1 = -AM_V_at = $(am__v_at_@AM_V@) -am__v_at_ = $(am__v_at_@AM_DEFAULT_V@) -am__v_at_0 = @ -am__v_at_1 = -DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir) -depcomp = $(SHELL) $(top_srcdir)/build-aux/depcomp -am__depfiles_maybe = depfiles -am__mv = mv -f -COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ - $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -AM_V_CC = $(am__v_CC_@AM_V@) -am__v_CC_ = $(am__v_CC_@AM_DEFAULT_V@) -am__v_CC_0 = @echo " CC " $@; -am__v_CC_1 = -CCLD = $(CC) -LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@ -AM_V_CCLD = $(am__v_CCLD_@AM_V@) -am__v_CCLD_ = $(am__v_CCLD_@AM_DEFAULT_V@) -am__v_CCLD_0 = @echo " CCLD " $@; -am__v_CCLD_1 = -SOURCES = $(libgnu_a_SOURCES) $(EXTRA_libgnu_a_SOURCES) -DIST_SOURCES = $(am__libgnu_a_SOURCES_DIST) $(EXTRA_libgnu_a_SOURCES) -RECURSIVE_TARGETS = all-recursive check-recursive cscopelist-recursive \ - ctags-recursive dvi-recursive html-recursive info-recursive \ - install-data-recursive install-dvi-recursive \ - install-exec-recursive install-html-recursive \ - install-info-recursive install-pdf-recursive \ - install-ps-recursive install-recursive installcheck-recursive \ - installdirs-recursive pdf-recursive ps-recursive \ - tags-recursive uninstall-recursive -am__can_run_installinfo = \ - case $$AM_UPDATE_INFO_DIR in \ - n|no|NO) false;; \ - *) (install-info --version) >/dev/null 2>&1;; \ - esac -HEADERS = $(noinst_HEADERS) -RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive \ - distclean-recursive maintainer-clean-recursive -am__recursive_targets = \ - $(RECURSIVE_TARGETS) \ - $(RECURSIVE_CLEAN_TARGETS) \ - $(am__extra_recursive_targets) -AM_RECURSIVE_TARGETS = $(am__recursive_targets:-recursive=) TAGS CTAGS \ - distdir -am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) -# Read a list of newline-separated strings from the standard input, -# and print each of them once, without duplicates. Input order is -# *not* preserved. -am__uniquify_input = $(AWK) '\ - BEGIN { nonempty = 0; } \ - { items[$$0] = 1; nonempty = 1; } \ - END { if (nonempty) { for (i in items) print i; }; } \ -' -# Make sure the list of sources is unique. This is necessary because, -# e.g., the same source file might be shared among _SOURCES variables -# for different programs/libraries. -am__define_uniq_tagged_files = \ - list='$(am__tagged_files)'; \ - unique=`for i in $$list; do \ - if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ - done | $(am__uniquify_input)` -ETAGS = etags -CTAGS = ctags -DIST_SUBDIRS = $(SUBDIRS) -am__DIST_COMMON = $(srcdir)/Makefile.in \ - $(top_srcdir)/build-aux/depcomp alloca.c -DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) -am__relativize = \ - dir0=`pwd`; \ - sed_first='s,^\([^/]*\)/.*$$,\1,'; \ - sed_rest='s,^[^/]*/*,,'; \ - sed_last='s,^.*/\([^/]*\)$$,\1,'; \ - sed_butlast='s,/*[^/]*$$,,'; \ - while test -n "$$dir1"; do \ - first=`echo "$$dir1" | sed -e "$$sed_first"`; \ - if test "$$first" != "."; then \ - if test "$$first" = ".."; then \ - dir2=`echo "$$dir0" | sed -e "$$sed_last"`/"$$dir2"; \ - dir0=`echo "$$dir0" | sed -e "$$sed_butlast"`; \ - else \ - first2=`echo "$$dir2" | sed -e "$$sed_first"`; \ - if test "$$first2" = "$$first"; then \ - dir2=`echo "$$dir2" | sed -e "$$sed_rest"`; \ - else \ - dir2="../$$dir2"; \ - fi; \ - dir0="$$dir0"/"$$first"; \ - fi; \ - fi; \ - dir1=`echo "$$dir1" | sed -e "$$sed_rest"`; \ - done; \ - reldir="$$dir2" -ACLOCAL = @ACLOCAL@ -ALLOCA = @ALLOCA@ -ALLOCA_H = @ALLOCA_H@ -AMTAR = @AMTAR@ -AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ -APPLE_UNIVERSAL_BUILD = @APPLE_UNIVERSAL_BUILD@ -AR = @AR@ -ARFLAGS = @ARFLAGS@ -AUTOCONF = @AUTOCONF@ -AUTOHEADER = @AUTOHEADER@ -AUTOMAKE = @AUTOMAKE@ -AWK = @AWK@ -BITSIZEOF_PTRDIFF_T = @BITSIZEOF_PTRDIFF_T@ -BITSIZEOF_SIG_ATOMIC_T = @BITSIZEOF_SIG_ATOMIC_T@ -BITSIZEOF_SIZE_T = @BITSIZEOF_SIZE_T@ -BITSIZEOF_WCHAR_T = @BITSIZEOF_WCHAR_T@ -BITSIZEOF_WINT_T = @BITSIZEOF_WINT_T@ -BOOT_TIME_STATS = @BOOT_TIME_STATS@ -BSS_START_SYMBOL = @BSS_START_SYMBOL@ -BUILD_CC = @BUILD_CC@ -BUILD_CFLAGS = @BUILD_CFLAGS@ -BUILD_CPPFLAGS = @BUILD_CPPFLAGS@ -BUILD_EXEEXT = @BUILD_EXEEXT@ -BUILD_FREETYPE_CFLAGS = @BUILD_FREETYPE_CFLAGS@ -BUILD_FREETYPE_LIBS = @BUILD_FREETYPE_LIBS@ -BUILD_LDFLAGS = @BUILD_LDFLAGS@ -BUILD_LIBM = @BUILD_LIBM@ -BUILD_SHEBANG = @BUILD_SHEBANG@ -BUILD_SIZEOF_LONG = @BUILD_SIZEOF_LONG@ -BUILD_SIZEOF_VOID_P = @BUILD_SIZEOF_VOID_P@ -BUILD_WORDS_BIGENDIAN = @BUILD_WORDS_BIGENDIAN@ -CC = @CC@ -CCAS = @CCAS@ -CCASDEPMODE = @CCASDEPMODE@ -CCASFLAGS = @CCASFLAGS@ -CCDEPMODE = @CCDEPMODE@ -CFLAGS = @CFLAGS@ -CMP = @CMP@ -CPP = @CPP@ -CPPFLAGS = @CPPFLAGS@ -CXX = @CXX@ -CXXDEPMODE = @CXXDEPMODE@ -CXXFLAGS = @CXXFLAGS@ -CYGPATH_W = @CYGPATH_W@ -DEFS = @DEFS@ -DEPDIR = @DEPDIR@ -DISK_CACHE_STATS = @DISK_CACHE_STATS@ -DJVU_FONT_SOURCE = @DJVU_FONT_SOURCE@ -ECHO_C = @ECHO_C@ -ECHO_N = @ECHO_N@ -ECHO_T = @ECHO_T@ -EFIEMU64_LINK_FORMAT = @EFIEMU64_LINK_FORMAT@ -EGREP = @EGREP@ -EMULTIHOP_HIDDEN = @EMULTIHOP_HIDDEN@ -EMULTIHOP_VALUE = @EMULTIHOP_VALUE@ -END_SYMBOL = @END_SYMBOL@ -ENOLINK_HIDDEN = @ENOLINK_HIDDEN@ -ENOLINK_VALUE = @ENOLINK_VALUE@ -EOVERFLOW_HIDDEN = @EOVERFLOW_HIDDEN@ -EOVERFLOW_VALUE = @EOVERFLOW_VALUE@ -ERRNO_H = @ERRNO_H@ -EXEEXT = @EXEEXT@ -FLOAT_H = @FLOAT_H@ -FNMATCH_H = @FNMATCH_H@ -FONT_SOURCE = @FONT_SOURCE@ -FREETYPE_CFLAGS = @FREETYPE_CFLAGS@ -FREETYPE_LIBS = @FREETYPE_LIBS@ -GETOPT_CDEFS_H = @GETOPT_CDEFS_H@ -GETOPT_H = @GETOPT_H@ -GETTEXT_MACRO_VERSION = @GETTEXT_MACRO_VERSION@ -GLIBC21 = @GLIBC21@ -GMSGFMT = @GMSGFMT@ -GMSGFMT_015 = @GMSGFMT_015@ -GNULIB_ALPHASORT = @GNULIB_ALPHASORT@ -GNULIB_ATOLL = @GNULIB_ATOLL@ -GNULIB_BTOWC = @GNULIB_BTOWC@ -GNULIB_CALLOC_POSIX = @GNULIB_CALLOC_POSIX@ -GNULIB_CANONICALIZE_FILE_NAME = @GNULIB_CANONICALIZE_FILE_NAME@ -GNULIB_CHDIR = @GNULIB_CHDIR@ -GNULIB_CHOWN = @GNULIB_CHOWN@ -GNULIB_CLOSE = @GNULIB_CLOSE@ -GNULIB_CLOSEDIR = @GNULIB_CLOSEDIR@ -GNULIB_CTIME = @GNULIB_CTIME@ -GNULIB_DIRFD = @GNULIB_DIRFD@ -GNULIB_DPRINTF = @GNULIB_DPRINTF@ -GNULIB_DUP = @GNULIB_DUP@ -GNULIB_DUP2 = @GNULIB_DUP2@ -GNULIB_DUP3 = @GNULIB_DUP3@ -GNULIB_DUPLOCALE = @GNULIB_DUPLOCALE@ -GNULIB_ENVIRON = @GNULIB_ENVIRON@ -GNULIB_EUIDACCESS = @GNULIB_EUIDACCESS@ -GNULIB_EXPLICIT_BZERO = @GNULIB_EXPLICIT_BZERO@ -GNULIB_FACCESSAT = @GNULIB_FACCESSAT@ -GNULIB_FCHDIR = @GNULIB_FCHDIR@ -GNULIB_FCHMODAT = @GNULIB_FCHMODAT@ -GNULIB_FCHOWNAT = @GNULIB_FCHOWNAT@ -GNULIB_FCLOSE = @GNULIB_FCLOSE@ -GNULIB_FCNTL = @GNULIB_FCNTL@ -GNULIB_FDATASYNC = @GNULIB_FDATASYNC@ -GNULIB_FDOPEN = @GNULIB_FDOPEN@ -GNULIB_FDOPENDIR = @GNULIB_FDOPENDIR@ -GNULIB_FFLUSH = @GNULIB_FFLUSH@ -GNULIB_FFS = @GNULIB_FFS@ -GNULIB_FFSL = @GNULIB_FFSL@ -GNULIB_FFSLL = @GNULIB_FFSLL@ -GNULIB_FGETC = @GNULIB_FGETC@ -GNULIB_FGETS = @GNULIB_FGETS@ -GNULIB_FNMATCH = @GNULIB_FNMATCH@ -GNULIB_FOPEN = @GNULIB_FOPEN@ -GNULIB_FPRINTF = @GNULIB_FPRINTF@ -GNULIB_FPRINTF_POSIX = @GNULIB_FPRINTF_POSIX@ -GNULIB_FPURGE = @GNULIB_FPURGE@ -GNULIB_FPUTC = @GNULIB_FPUTC@ -GNULIB_FPUTS = @GNULIB_FPUTS@ -GNULIB_FREAD = @GNULIB_FREAD@ -GNULIB_FREOPEN = @GNULIB_FREOPEN@ -GNULIB_FSCANF = @GNULIB_FSCANF@ -GNULIB_FSEEK = @GNULIB_FSEEK@ -GNULIB_FSEEKO = @GNULIB_FSEEKO@ -GNULIB_FSTAT = @GNULIB_FSTAT@ -GNULIB_FSTATAT = @GNULIB_FSTATAT@ -GNULIB_FSYNC = @GNULIB_FSYNC@ -GNULIB_FTELL = @GNULIB_FTELL@ -GNULIB_FTELLO = @GNULIB_FTELLO@ -GNULIB_FTRUNCATE = @GNULIB_FTRUNCATE@ -GNULIB_FUTIMENS = @GNULIB_FUTIMENS@ -GNULIB_FWRITE = @GNULIB_FWRITE@ -GNULIB_GETC = @GNULIB_GETC@ -GNULIB_GETCHAR = @GNULIB_GETCHAR@ -GNULIB_GETCWD = @GNULIB_GETCWD@ -GNULIB_GETDELIM = @GNULIB_GETDELIM@ -GNULIB_GETDOMAINNAME = @GNULIB_GETDOMAINNAME@ -GNULIB_GETDTABLESIZE = @GNULIB_GETDTABLESIZE@ -GNULIB_GETGROUPS = @GNULIB_GETGROUPS@ -GNULIB_GETHOSTNAME = @GNULIB_GETHOSTNAME@ -GNULIB_GETLINE = @GNULIB_GETLINE@ -GNULIB_GETLOADAVG = @GNULIB_GETLOADAVG@ -GNULIB_GETLOGIN = @GNULIB_GETLOGIN@ -GNULIB_GETLOGIN_R = @GNULIB_GETLOGIN_R@ -GNULIB_GETPAGESIZE = @GNULIB_GETPAGESIZE@ -GNULIB_GETPASS = @GNULIB_GETPASS@ -GNULIB_GETSUBOPT = @GNULIB_GETSUBOPT@ -GNULIB_GETTIMEOFDAY = @GNULIB_GETTIMEOFDAY@ -GNULIB_GETUSERSHELL = @GNULIB_GETUSERSHELL@ -GNULIB_GL_UNISTD_H_GETOPT = @GNULIB_GL_UNISTD_H_GETOPT@ -GNULIB_GRANTPT = @GNULIB_GRANTPT@ -GNULIB_GROUP_MEMBER = @GNULIB_GROUP_MEMBER@ -GNULIB_ISATTY = @GNULIB_ISATTY@ -GNULIB_ISWBLANK = @GNULIB_ISWBLANK@ -GNULIB_ISWCTYPE = @GNULIB_ISWCTYPE@ -GNULIB_LCHMOD = @GNULIB_LCHMOD@ -GNULIB_LCHOWN = @GNULIB_LCHOWN@ -GNULIB_LINK = @GNULIB_LINK@ -GNULIB_LINKAT = @GNULIB_LINKAT@ -GNULIB_LOCALECONV = @GNULIB_LOCALECONV@ -GNULIB_LOCALENAME = @GNULIB_LOCALENAME@ -GNULIB_LOCALTIME = @GNULIB_LOCALTIME@ -GNULIB_LSEEK = @GNULIB_LSEEK@ -GNULIB_LSTAT = @GNULIB_LSTAT@ -GNULIB_MALLOC_POSIX = @GNULIB_MALLOC_POSIX@ -GNULIB_MBRLEN = @GNULIB_MBRLEN@ -GNULIB_MBRTOWC = @GNULIB_MBRTOWC@ -GNULIB_MBSCASECMP = @GNULIB_MBSCASECMP@ -GNULIB_MBSCASESTR = @GNULIB_MBSCASESTR@ -GNULIB_MBSCHR = @GNULIB_MBSCHR@ -GNULIB_MBSCSPN = @GNULIB_MBSCSPN@ -GNULIB_MBSINIT = @GNULIB_MBSINIT@ -GNULIB_MBSLEN = @GNULIB_MBSLEN@ -GNULIB_MBSNCASECMP = @GNULIB_MBSNCASECMP@ -GNULIB_MBSNLEN = @GNULIB_MBSNLEN@ -GNULIB_MBSNRTOWCS = @GNULIB_MBSNRTOWCS@ -GNULIB_MBSPBRK = @GNULIB_MBSPBRK@ -GNULIB_MBSPCASECMP = @GNULIB_MBSPCASECMP@ -GNULIB_MBSRCHR = @GNULIB_MBSRCHR@ -GNULIB_MBSRTOWCS = @GNULIB_MBSRTOWCS@ -GNULIB_MBSSEP = @GNULIB_MBSSEP@ -GNULIB_MBSSPN = @GNULIB_MBSSPN@ -GNULIB_MBSSTR = @GNULIB_MBSSTR@ -GNULIB_MBSTOK_R = @GNULIB_MBSTOK_R@ -GNULIB_MBTOWC = @GNULIB_MBTOWC@ -GNULIB_MEMCHR = @GNULIB_MEMCHR@ -GNULIB_MEMMEM = @GNULIB_MEMMEM@ -GNULIB_MEMPCPY = @GNULIB_MEMPCPY@ -GNULIB_MEMRCHR = @GNULIB_MEMRCHR@ -GNULIB_MKDIRAT = @GNULIB_MKDIRAT@ -GNULIB_MKDTEMP = @GNULIB_MKDTEMP@ -GNULIB_MKFIFO = @GNULIB_MKFIFO@ -GNULIB_MKFIFOAT = @GNULIB_MKFIFOAT@ -GNULIB_MKNOD = @GNULIB_MKNOD@ -GNULIB_MKNODAT = @GNULIB_MKNODAT@ -GNULIB_MKOSTEMP = @GNULIB_MKOSTEMP@ -GNULIB_MKOSTEMPS = @GNULIB_MKOSTEMPS@ -GNULIB_MKSTEMP = @GNULIB_MKSTEMP@ -GNULIB_MKSTEMPS = @GNULIB_MKSTEMPS@ -GNULIB_MKTIME = @GNULIB_MKTIME@ -GNULIB_NANOSLEEP = @GNULIB_NANOSLEEP@ -GNULIB_NL_LANGINFO = @GNULIB_NL_LANGINFO@ -GNULIB_NONBLOCKING = @GNULIB_NONBLOCKING@ -GNULIB_OBSTACK_PRINTF = @GNULIB_OBSTACK_PRINTF@ -GNULIB_OBSTACK_PRINTF_POSIX = @GNULIB_OBSTACK_PRINTF_POSIX@ -GNULIB_OPEN = @GNULIB_OPEN@ -GNULIB_OPENAT = @GNULIB_OPENAT@ -GNULIB_OPENDIR = @GNULIB_OPENDIR@ -GNULIB_OVERRIDES_STRUCT_STAT = @GNULIB_OVERRIDES_STRUCT_STAT@ -GNULIB_OVERRIDES_WINT_T = @GNULIB_OVERRIDES_WINT_T@ -GNULIB_PCLOSE = @GNULIB_PCLOSE@ -GNULIB_PERROR = @GNULIB_PERROR@ -GNULIB_PIPE = @GNULIB_PIPE@ -GNULIB_PIPE2 = @GNULIB_PIPE2@ -GNULIB_POPEN = @GNULIB_POPEN@ -GNULIB_POSIX_OPENPT = @GNULIB_POSIX_OPENPT@ -GNULIB_PREAD = @GNULIB_PREAD@ -GNULIB_PRINTF = @GNULIB_PRINTF@ -GNULIB_PRINTF_POSIX = @GNULIB_PRINTF_POSIX@ -GNULIB_PTSNAME = @GNULIB_PTSNAME@ -GNULIB_PTSNAME_R = @GNULIB_PTSNAME_R@ -GNULIB_PUTC = @GNULIB_PUTC@ -GNULIB_PUTCHAR = @GNULIB_PUTCHAR@ -GNULIB_PUTENV = @GNULIB_PUTENV@ -GNULIB_PUTS = @GNULIB_PUTS@ -GNULIB_PWRITE = @GNULIB_PWRITE@ -GNULIB_QSORT_R = @GNULIB_QSORT_R@ -GNULIB_RANDOM = @GNULIB_RANDOM@ -GNULIB_RANDOM_R = @GNULIB_RANDOM_R@ -GNULIB_RAWMEMCHR = @GNULIB_RAWMEMCHR@ -GNULIB_READ = @GNULIB_READ@ -GNULIB_READDIR = @GNULIB_READDIR@ -GNULIB_READLINK = @GNULIB_READLINK@ -GNULIB_READLINKAT = @GNULIB_READLINKAT@ -GNULIB_REALLOCARRAY = @GNULIB_REALLOCARRAY@ -GNULIB_REALLOC_POSIX = @GNULIB_REALLOC_POSIX@ -GNULIB_REALPATH = @GNULIB_REALPATH@ -GNULIB_REMOVE = @GNULIB_REMOVE@ -GNULIB_RENAME = @GNULIB_RENAME@ -GNULIB_RENAMEAT = @GNULIB_RENAMEAT@ -GNULIB_REWINDDIR = @GNULIB_REWINDDIR@ -GNULIB_RMDIR = @GNULIB_RMDIR@ -GNULIB_RPMATCH = @GNULIB_RPMATCH@ -GNULIB_SCANDIR = @GNULIB_SCANDIR@ -GNULIB_SCANF = @GNULIB_SCANF@ -GNULIB_SECURE_GETENV = @GNULIB_SECURE_GETENV@ -GNULIB_SETENV = @GNULIB_SETENV@ -GNULIB_SETHOSTNAME = @GNULIB_SETHOSTNAME@ -GNULIB_SETLOCALE = @GNULIB_SETLOCALE@ -GNULIB_SLEEP = @GNULIB_SLEEP@ -GNULIB_SNPRINTF = @GNULIB_SNPRINTF@ -GNULIB_SPRINTF_POSIX = @GNULIB_SPRINTF_POSIX@ -GNULIB_STAT = @GNULIB_STAT@ -GNULIB_STDIO_H_NONBLOCKING = @GNULIB_STDIO_H_NONBLOCKING@ -GNULIB_STDIO_H_SIGPIPE = @GNULIB_STDIO_H_SIGPIPE@ -GNULIB_STPCPY = @GNULIB_STPCPY@ -GNULIB_STPNCPY = @GNULIB_STPNCPY@ -GNULIB_STRCASESTR = @GNULIB_STRCASESTR@ -GNULIB_STRCHRNUL = @GNULIB_STRCHRNUL@ -GNULIB_STRDUP = @GNULIB_STRDUP@ -GNULIB_STRERROR = @GNULIB_STRERROR@ -GNULIB_STRERROR_R = @GNULIB_STRERROR_R@ -GNULIB_STRFTIME = @GNULIB_STRFTIME@ -GNULIB_STRNCAT = @GNULIB_STRNCAT@ -GNULIB_STRNDUP = @GNULIB_STRNDUP@ -GNULIB_STRNLEN = @GNULIB_STRNLEN@ -GNULIB_STRPBRK = @GNULIB_STRPBRK@ -GNULIB_STRPTIME = @GNULIB_STRPTIME@ -GNULIB_STRSEP = @GNULIB_STRSEP@ -GNULIB_STRSIGNAL = @GNULIB_STRSIGNAL@ -GNULIB_STRSTR = @GNULIB_STRSTR@ -GNULIB_STRTOD = @GNULIB_STRTOD@ -GNULIB_STRTOK_R = @GNULIB_STRTOK_R@ -GNULIB_STRTOLL = @GNULIB_STRTOLL@ -GNULIB_STRTOULL = @GNULIB_STRTOULL@ -GNULIB_STRVERSCMP = @GNULIB_STRVERSCMP@ -GNULIB_SYMLINK = @GNULIB_SYMLINK@ -GNULIB_SYMLINKAT = @GNULIB_SYMLINKAT@ -GNULIB_SYSTEM_POSIX = @GNULIB_SYSTEM_POSIX@ -GNULIB_TIMEGM = @GNULIB_TIMEGM@ -GNULIB_TIME_R = @GNULIB_TIME_R@ -GNULIB_TIME_RZ = @GNULIB_TIME_RZ@ -GNULIB_TMPFILE = @GNULIB_TMPFILE@ -GNULIB_TOWCTRANS = @GNULIB_TOWCTRANS@ -GNULIB_TRUNCATE = @GNULIB_TRUNCATE@ -GNULIB_TTYNAME_R = @GNULIB_TTYNAME_R@ -GNULIB_TZSET = @GNULIB_TZSET@ -GNULIB_UNISTD_H_NONBLOCKING = @GNULIB_UNISTD_H_NONBLOCKING@ -GNULIB_UNISTD_H_SIGPIPE = @GNULIB_UNISTD_H_SIGPIPE@ -GNULIB_UNLINK = @GNULIB_UNLINK@ -GNULIB_UNLINKAT = @GNULIB_UNLINKAT@ -GNULIB_UNLOCKPT = @GNULIB_UNLOCKPT@ -GNULIB_UNSETENV = @GNULIB_UNSETENV@ -GNULIB_USLEEP = @GNULIB_USLEEP@ -GNULIB_UTIMENSAT = @GNULIB_UTIMENSAT@ -GNULIB_VASPRINTF = @GNULIB_VASPRINTF@ -GNULIB_VDPRINTF = @GNULIB_VDPRINTF@ -GNULIB_VFPRINTF = @GNULIB_VFPRINTF@ -GNULIB_VFPRINTF_POSIX = @GNULIB_VFPRINTF_POSIX@ -GNULIB_VFSCANF = @GNULIB_VFSCANF@ -GNULIB_VPRINTF = @GNULIB_VPRINTF@ -GNULIB_VPRINTF_POSIX = @GNULIB_VPRINTF_POSIX@ -GNULIB_VSCANF = @GNULIB_VSCANF@ -GNULIB_VSNPRINTF = @GNULIB_VSNPRINTF@ -GNULIB_VSPRINTF_POSIX = @GNULIB_VSPRINTF_POSIX@ -GNULIB_WCPCPY = @GNULIB_WCPCPY@ -GNULIB_WCPNCPY = @GNULIB_WCPNCPY@ -GNULIB_WCRTOMB = @GNULIB_WCRTOMB@ -GNULIB_WCSCASECMP = @GNULIB_WCSCASECMP@ -GNULIB_WCSCAT = @GNULIB_WCSCAT@ -GNULIB_WCSCHR = @GNULIB_WCSCHR@ -GNULIB_WCSCMP = @GNULIB_WCSCMP@ -GNULIB_WCSCOLL = @GNULIB_WCSCOLL@ -GNULIB_WCSCPY = @GNULIB_WCSCPY@ -GNULIB_WCSCSPN = @GNULIB_WCSCSPN@ -GNULIB_WCSDUP = @GNULIB_WCSDUP@ -GNULIB_WCSFTIME = @GNULIB_WCSFTIME@ -GNULIB_WCSLEN = @GNULIB_WCSLEN@ -GNULIB_WCSNCASECMP = @GNULIB_WCSNCASECMP@ -GNULIB_WCSNCAT = @GNULIB_WCSNCAT@ -GNULIB_WCSNCMP = @GNULIB_WCSNCMP@ -GNULIB_WCSNCPY = @GNULIB_WCSNCPY@ -GNULIB_WCSNLEN = @GNULIB_WCSNLEN@ -GNULIB_WCSNRTOMBS = @GNULIB_WCSNRTOMBS@ -GNULIB_WCSPBRK = @GNULIB_WCSPBRK@ -GNULIB_WCSRCHR = @GNULIB_WCSRCHR@ -GNULIB_WCSRTOMBS = @GNULIB_WCSRTOMBS@ -GNULIB_WCSSPN = @GNULIB_WCSSPN@ -GNULIB_WCSSTR = @GNULIB_WCSSTR@ -GNULIB_WCSTOK = @GNULIB_WCSTOK@ -GNULIB_WCSWIDTH = @GNULIB_WCSWIDTH@ -GNULIB_WCSXFRM = @GNULIB_WCSXFRM@ -GNULIB_WCTOB = @GNULIB_WCTOB@ -GNULIB_WCTOMB = @GNULIB_WCTOMB@ -GNULIB_WCTRANS = @GNULIB_WCTRANS@ -GNULIB_WCTYPE = @GNULIB_WCTYPE@ -GNULIB_WCWIDTH = @GNULIB_WCWIDTH@ -GNULIB_WMEMCHR = @GNULIB_WMEMCHR@ -GNULIB_WMEMCMP = @GNULIB_WMEMCMP@ -GNULIB_WMEMCPY = @GNULIB_WMEMCPY@ -GNULIB_WMEMMOVE = @GNULIB_WMEMMOVE@ -GNULIB_WMEMSET = @GNULIB_WMEMSET@ -GNULIB_WRITE = @GNULIB_WRITE@ -GNULIB__EXIT = @GNULIB__EXIT@ -GREP = @GREP@ -GRUB_BOOT_MACHINE_LINK_ADDR = @GRUB_BOOT_MACHINE_LINK_ADDR@ -GRUB_PLATFORM = @GRUB_PLATFORM@ -GRUB_TARGET_CPU = @GRUB_TARGET_CPU@ -HAVE_ALPHASORT = @HAVE_ALPHASORT@ -HAVE_ASM_USCORE = @HAVE_ASM_USCORE@ -HAVE_ATOLL = @HAVE_ATOLL@ -HAVE_BTOWC = @HAVE_BTOWC@ -HAVE_C99_STDINT_H = @HAVE_C99_STDINT_H@ -HAVE_CANONICALIZE_FILE_NAME = @HAVE_CANONICALIZE_FILE_NAME@ -HAVE_CHOWN = @HAVE_CHOWN@ -HAVE_CLOSEDIR = @HAVE_CLOSEDIR@ -HAVE_CRTDEFS_H = @HAVE_CRTDEFS_H@ -HAVE_CXX = @HAVE_CXX@ -HAVE_DECL_DIRFD = @HAVE_DECL_DIRFD@ -HAVE_DECL_ENVIRON = @HAVE_DECL_ENVIRON@ -HAVE_DECL_FCHDIR = @HAVE_DECL_FCHDIR@ -HAVE_DECL_FDATASYNC = @HAVE_DECL_FDATASYNC@ -HAVE_DECL_FDOPENDIR = @HAVE_DECL_FDOPENDIR@ -HAVE_DECL_FPURGE = @HAVE_DECL_FPURGE@ -HAVE_DECL_FSEEKO = @HAVE_DECL_FSEEKO@ -HAVE_DECL_FTELLO = @HAVE_DECL_FTELLO@ -HAVE_DECL_GETDELIM = @HAVE_DECL_GETDELIM@ -HAVE_DECL_GETDOMAINNAME = @HAVE_DECL_GETDOMAINNAME@ -HAVE_DECL_GETLINE = @HAVE_DECL_GETLINE@ -HAVE_DECL_GETLOADAVG = @HAVE_DECL_GETLOADAVG@ -HAVE_DECL_GETLOGIN = @HAVE_DECL_GETLOGIN@ -HAVE_DECL_GETLOGIN_R = @HAVE_DECL_GETLOGIN_R@ -HAVE_DECL_GETPAGESIZE = @HAVE_DECL_GETPAGESIZE@ -HAVE_DECL_GETUSERSHELL = @HAVE_DECL_GETUSERSHELL@ -HAVE_DECL_INITSTATE = @HAVE_DECL_INITSTATE@ -HAVE_DECL_LOCALTIME_R = @HAVE_DECL_LOCALTIME_R@ -HAVE_DECL_MEMMEM = @HAVE_DECL_MEMMEM@ -HAVE_DECL_MEMRCHR = @HAVE_DECL_MEMRCHR@ -HAVE_DECL_OBSTACK_PRINTF = @HAVE_DECL_OBSTACK_PRINTF@ -HAVE_DECL_SETENV = @HAVE_DECL_SETENV@ -HAVE_DECL_SETHOSTNAME = @HAVE_DECL_SETHOSTNAME@ -HAVE_DECL_SETSTATE = @HAVE_DECL_SETSTATE@ -HAVE_DECL_SNPRINTF = @HAVE_DECL_SNPRINTF@ -HAVE_DECL_STRDUP = @HAVE_DECL_STRDUP@ -HAVE_DECL_STRERROR_R = @HAVE_DECL_STRERROR_R@ -HAVE_DECL_STRNCASECMP = @HAVE_DECL_STRNCASECMP@ -HAVE_DECL_STRNDUP = @HAVE_DECL_STRNDUP@ -HAVE_DECL_STRNLEN = @HAVE_DECL_STRNLEN@ -HAVE_DECL_STRSIGNAL = @HAVE_DECL_STRSIGNAL@ -HAVE_DECL_STRTOK_R = @HAVE_DECL_STRTOK_R@ -HAVE_DECL_TRUNCATE = @HAVE_DECL_TRUNCATE@ -HAVE_DECL_TTYNAME_R = @HAVE_DECL_TTYNAME_R@ -HAVE_DECL_UNSETENV = @HAVE_DECL_UNSETENV@ -HAVE_DECL_VSNPRINTF = @HAVE_DECL_VSNPRINTF@ -HAVE_DECL_WCTOB = @HAVE_DECL_WCTOB@ -HAVE_DECL_WCWIDTH = @HAVE_DECL_WCWIDTH@ -HAVE_DIRENT_H = @HAVE_DIRENT_H@ -HAVE_DPRINTF = @HAVE_DPRINTF@ -HAVE_DUP2 = @HAVE_DUP2@ -HAVE_DUP3 = @HAVE_DUP3@ -HAVE_DUPLOCALE = @HAVE_DUPLOCALE@ -HAVE_EUIDACCESS = @HAVE_EUIDACCESS@ -HAVE_EXPLICIT_BZERO = @HAVE_EXPLICIT_BZERO@ -HAVE_FACCESSAT = @HAVE_FACCESSAT@ -HAVE_FCHDIR = @HAVE_FCHDIR@ -HAVE_FCHMODAT = @HAVE_FCHMODAT@ -HAVE_FCHOWNAT = @HAVE_FCHOWNAT@ -HAVE_FCNTL = @HAVE_FCNTL@ -HAVE_FDATASYNC = @HAVE_FDATASYNC@ -HAVE_FDOPENDIR = @HAVE_FDOPENDIR@ -HAVE_FEATURES_H = @HAVE_FEATURES_H@ -HAVE_FFS = @HAVE_FFS@ -HAVE_FFSL = @HAVE_FFSL@ -HAVE_FFSLL = @HAVE_FFSLL@ -HAVE_FNMATCH = @HAVE_FNMATCH@ -HAVE_FNMATCH_H = @HAVE_FNMATCH_H@ -HAVE_FONT_SOURCE = @HAVE_FONT_SOURCE@ -HAVE_FREELOCALE = @HAVE_FREELOCALE@ -HAVE_FSEEKO = @HAVE_FSEEKO@ -HAVE_FSTATAT = @HAVE_FSTATAT@ -HAVE_FSYNC = @HAVE_FSYNC@ -HAVE_FTELLO = @HAVE_FTELLO@ -HAVE_FTRUNCATE = @HAVE_FTRUNCATE@ -HAVE_FUTIMENS = @HAVE_FUTIMENS@ -HAVE_GETDTABLESIZE = @HAVE_GETDTABLESIZE@ -HAVE_GETGROUPS = @HAVE_GETGROUPS@ -HAVE_GETHOSTNAME = @HAVE_GETHOSTNAME@ -HAVE_GETLOGIN = @HAVE_GETLOGIN@ -HAVE_GETOPT_H = @HAVE_GETOPT_H@ -HAVE_GETPAGESIZE = @HAVE_GETPAGESIZE@ -HAVE_GETPASS = @HAVE_GETPASS@ -HAVE_GETSUBOPT = @HAVE_GETSUBOPT@ -HAVE_GRANTPT = @HAVE_GRANTPT@ -HAVE_GROUP_MEMBER = @HAVE_GROUP_MEMBER@ -HAVE_INTTYPES_H = @HAVE_INTTYPES_H@ -HAVE_ISWBLANK = @HAVE_ISWBLANK@ -HAVE_ISWCNTRL = @HAVE_ISWCNTRL@ -HAVE_LANGINFO_ALTMON = @HAVE_LANGINFO_ALTMON@ -HAVE_LANGINFO_CODESET = @HAVE_LANGINFO_CODESET@ -HAVE_LANGINFO_ERA = @HAVE_LANGINFO_ERA@ -HAVE_LANGINFO_H = @HAVE_LANGINFO_H@ -HAVE_LANGINFO_T_FMT_AMPM = @HAVE_LANGINFO_T_FMT_AMPM@ -HAVE_LANGINFO_YESEXPR = @HAVE_LANGINFO_YESEXPR@ -HAVE_LCHMOD = @HAVE_LCHMOD@ -HAVE_LCHOWN = @HAVE_LCHOWN@ -HAVE_LINK = @HAVE_LINK@ -HAVE_LINKAT = @HAVE_LINKAT@ -HAVE_LONG_LONG_INT = @HAVE_LONG_LONG_INT@ -HAVE_LSTAT = @HAVE_LSTAT@ -HAVE_MAX_ALIGN_T = @HAVE_MAX_ALIGN_T@ -HAVE_MBRLEN = @HAVE_MBRLEN@ -HAVE_MBRTOWC = @HAVE_MBRTOWC@ -HAVE_MBSINIT = @HAVE_MBSINIT@ -HAVE_MBSLEN = @HAVE_MBSLEN@ -HAVE_MBSNRTOWCS = @HAVE_MBSNRTOWCS@ -HAVE_MBSRTOWCS = @HAVE_MBSRTOWCS@ -HAVE_MEMCHR = @HAVE_MEMCHR@ -HAVE_MEMPCPY = @HAVE_MEMPCPY@ -HAVE_MKDIRAT = @HAVE_MKDIRAT@ -HAVE_MKDTEMP = @HAVE_MKDTEMP@ -HAVE_MKFIFO = @HAVE_MKFIFO@ -HAVE_MKFIFOAT = @HAVE_MKFIFOAT@ -HAVE_MKNOD = @HAVE_MKNOD@ -HAVE_MKNODAT = @HAVE_MKNODAT@ -HAVE_MKOSTEMP = @HAVE_MKOSTEMP@ -HAVE_MKOSTEMPS = @HAVE_MKOSTEMPS@ -HAVE_MKSTEMP = @HAVE_MKSTEMP@ -HAVE_MKSTEMPS = @HAVE_MKSTEMPS@ -HAVE_MSVC_INVALID_PARAMETER_HANDLER = @HAVE_MSVC_INVALID_PARAMETER_HANDLER@ -HAVE_NANOSLEEP = @HAVE_NANOSLEEP@ -HAVE_NEWLOCALE = @HAVE_NEWLOCALE@ -HAVE_NL_LANGINFO = @HAVE_NL_LANGINFO@ -HAVE_OPENAT = @HAVE_OPENAT@ -HAVE_OPENDIR = @HAVE_OPENDIR@ -HAVE_OS_H = @HAVE_OS_H@ -HAVE_PCLOSE = @HAVE_PCLOSE@ -HAVE_PIPE = @HAVE_PIPE@ -HAVE_PIPE2 = @HAVE_PIPE2@ -HAVE_POPEN = @HAVE_POPEN@ -HAVE_POSIX_OPENPT = @HAVE_POSIX_OPENPT@ -HAVE_PREAD = @HAVE_PREAD@ -HAVE_PTSNAME = @HAVE_PTSNAME@ -HAVE_PTSNAME_R = @HAVE_PTSNAME_R@ -HAVE_PWRITE = @HAVE_PWRITE@ -HAVE_QSORT_R = @HAVE_QSORT_R@ -HAVE_RANDOM = @HAVE_RANDOM@ -HAVE_RANDOM_H = @HAVE_RANDOM_H@ -HAVE_RANDOM_R = @HAVE_RANDOM_R@ -HAVE_RAWMEMCHR = @HAVE_RAWMEMCHR@ -HAVE_READDIR = @HAVE_READDIR@ -HAVE_READLINK = @HAVE_READLINK@ -HAVE_READLINKAT = @HAVE_READLINKAT@ -HAVE_REALLOCARRAY = @HAVE_REALLOCARRAY@ -HAVE_REALPATH = @HAVE_REALPATH@ -HAVE_RENAMEAT = @HAVE_RENAMEAT@ -HAVE_REWINDDIR = @HAVE_REWINDDIR@ -HAVE_RPMATCH = @HAVE_RPMATCH@ -HAVE_SCANDIR = @HAVE_SCANDIR@ -HAVE_SECURE_GETENV = @HAVE_SECURE_GETENV@ -HAVE_SETENV = @HAVE_SETENV@ -HAVE_SETHOSTNAME = @HAVE_SETHOSTNAME@ -HAVE_SIGNED_SIG_ATOMIC_T = @HAVE_SIGNED_SIG_ATOMIC_T@ -HAVE_SIGNED_WCHAR_T = @HAVE_SIGNED_WCHAR_T@ -HAVE_SIGNED_WINT_T = @HAVE_SIGNED_WINT_T@ -HAVE_SLEEP = @HAVE_SLEEP@ -HAVE_STDINT_H = @HAVE_STDINT_H@ -HAVE_STPCPY = @HAVE_STPCPY@ -HAVE_STPNCPY = @HAVE_STPNCPY@ -HAVE_STRCASECMP = @HAVE_STRCASECMP@ -HAVE_STRCASESTR = @HAVE_STRCASESTR@ -HAVE_STRCHRNUL = @HAVE_STRCHRNUL@ -HAVE_STRINGS_H = @HAVE_STRINGS_H@ -HAVE_STRPBRK = @HAVE_STRPBRK@ -HAVE_STRPTIME = @HAVE_STRPTIME@ -HAVE_STRSEP = @HAVE_STRSEP@ -HAVE_STRTOD = @HAVE_STRTOD@ -HAVE_STRTOLL = @HAVE_STRTOLL@ -HAVE_STRTOULL = @HAVE_STRTOULL@ -HAVE_STRUCT_RANDOM_DATA = @HAVE_STRUCT_RANDOM_DATA@ -HAVE_STRVERSCMP = @HAVE_STRVERSCMP@ -HAVE_SYMLINK = @HAVE_SYMLINK@ -HAVE_SYMLINKAT = @HAVE_SYMLINKAT@ -HAVE_SYSEXITS_H = @HAVE_SYSEXITS_H@ -HAVE_SYS_BITYPES_H = @HAVE_SYS_BITYPES_H@ -HAVE_SYS_CDEFS_H = @HAVE_SYS_CDEFS_H@ -HAVE_SYS_INTTYPES_H = @HAVE_SYS_INTTYPES_H@ -HAVE_SYS_LOADAVG_H = @HAVE_SYS_LOADAVG_H@ -HAVE_SYS_PARAM_H = @HAVE_SYS_PARAM_H@ -HAVE_SYS_TYPES_H = @HAVE_SYS_TYPES_H@ -HAVE_TIMEGM = @HAVE_TIMEGM@ -HAVE_TIMEZONE_T = @HAVE_TIMEZONE_T@ -HAVE_TZSET = @HAVE_TZSET@ -HAVE_UNISTD_H = @HAVE_UNISTD_H@ -HAVE_UNLINKAT = @HAVE_UNLINKAT@ -HAVE_UNLOCKPT = @HAVE_UNLOCKPT@ -HAVE_UNSIGNED_LONG_LONG_INT = @HAVE_UNSIGNED_LONG_LONG_INT@ -HAVE_USLEEP = @HAVE_USLEEP@ -HAVE_UTIMENSAT = @HAVE_UTIMENSAT@ -HAVE_VASPRINTF = @HAVE_VASPRINTF@ -HAVE_VDPRINTF = @HAVE_VDPRINTF@ -HAVE_WCHAR_H = @HAVE_WCHAR_H@ -HAVE_WCHAR_T = @HAVE_WCHAR_T@ -HAVE_WCPCPY = @HAVE_WCPCPY@ -HAVE_WCPNCPY = @HAVE_WCPNCPY@ -HAVE_WCRTOMB = @HAVE_WCRTOMB@ -HAVE_WCSCASECMP = @HAVE_WCSCASECMP@ -HAVE_WCSCAT = @HAVE_WCSCAT@ -HAVE_WCSCHR = @HAVE_WCSCHR@ -HAVE_WCSCMP = @HAVE_WCSCMP@ -HAVE_WCSCOLL = @HAVE_WCSCOLL@ -HAVE_WCSCPY = @HAVE_WCSCPY@ -HAVE_WCSCSPN = @HAVE_WCSCSPN@ -HAVE_WCSDUP = @HAVE_WCSDUP@ -HAVE_WCSFTIME = @HAVE_WCSFTIME@ -HAVE_WCSLEN = @HAVE_WCSLEN@ -HAVE_WCSNCASECMP = @HAVE_WCSNCASECMP@ -HAVE_WCSNCAT = @HAVE_WCSNCAT@ -HAVE_WCSNCMP = @HAVE_WCSNCMP@ -HAVE_WCSNCPY = @HAVE_WCSNCPY@ -HAVE_WCSNLEN = @HAVE_WCSNLEN@ -HAVE_WCSNRTOMBS = @HAVE_WCSNRTOMBS@ -HAVE_WCSPBRK = @HAVE_WCSPBRK@ -HAVE_WCSRCHR = @HAVE_WCSRCHR@ -HAVE_WCSRTOMBS = @HAVE_WCSRTOMBS@ -HAVE_WCSSPN = @HAVE_WCSSPN@ -HAVE_WCSSTR = @HAVE_WCSSTR@ -HAVE_WCSTOK = @HAVE_WCSTOK@ -HAVE_WCSWIDTH = @HAVE_WCSWIDTH@ -HAVE_WCSXFRM = @HAVE_WCSXFRM@ -HAVE_WCTRANS_T = @HAVE_WCTRANS_T@ -HAVE_WCTYPE_H = @HAVE_WCTYPE_H@ -HAVE_WCTYPE_T = @HAVE_WCTYPE_T@ -HAVE_WINSOCK2_H = @HAVE_WINSOCK2_H@ -HAVE_WINT_T = @HAVE_WINT_T@ -HAVE_WMEMCHR = @HAVE_WMEMCHR@ -HAVE_WMEMCMP = @HAVE_WMEMCMP@ -HAVE_WMEMCPY = @HAVE_WMEMCPY@ -HAVE_WMEMMOVE = @HAVE_WMEMMOVE@ -HAVE_WMEMSET = @HAVE_WMEMSET@ -HAVE_XLOCALE_H = @HAVE_XLOCALE_H@ -HAVE__BOOL = @HAVE__BOOL@ -HAVE__EXIT = @HAVE__EXIT@ -HELP2MAN = @HELP2MAN@ -HOST_CC = @HOST_CC@ -HOST_CCASFLAGS = @HOST_CCASFLAGS@ -HOST_CFLAGS = @HOST_CFLAGS@ -HOST_CPPFLAGS = @HOST_CPPFLAGS@ -HOST_LDFLAGS = @HOST_LDFLAGS@ -INCLUDE_NEXT = @INCLUDE_NEXT@ -INCLUDE_NEXT_AS_FIRST_DIRECTIVE = @INCLUDE_NEXT_AS_FIRST_DIRECTIVE@ -INSTALL = @INSTALL@ -INSTALL_DATA = @INSTALL_DATA@ -INSTALL_PROGRAM = @INSTALL_PROGRAM@ -INSTALL_SCRIPT = @INSTALL_SCRIPT@ -INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ -INTLLIBS = @INTLLIBS@ -INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -LDFLAGS = @LDFLAGS@ -LEX = @LEX@ -LEXLIB = @LEXLIB@ -LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@ -LIBDEVMAPPER = @LIBDEVMAPPER@ -LIBGEOM = @LIBGEOM@ -LIBGNU_LIBDEPS = @LIBGNU_LIBDEPS@ -LIBGNU_LTLIBDEPS = @LIBGNU_LTLIBDEPS@ -LIBICONV = @LIBICONV@ -LIBINTL = @LIBINTL@ -LIBLZMA = @LIBLZMA@ -LIBMULTITHREAD = @LIBMULTITHREAD@ -LIBNVPAIR = @LIBNVPAIR@ -LIBOBJS = @LIBOBJS@ -LIBPCIACCESS = @LIBPCIACCESS@ -LIBPTH = @LIBPTH@ -LIBPTH_PREFIX = @LIBPTH_PREFIX@ -LIBS = @LIBS@ -LIBSDL = @LIBSDL@ -LIBTHREAD = @LIBTHREAD@ -LIBUNISTRING_UNITYPES_H = @LIBUNISTRING_UNITYPES_H@ -LIBUNISTRING_UNIWIDTH_H = @LIBUNISTRING_UNIWIDTH_H@ -LIBUTIL = @LIBUTIL@ -LIBZFS = @LIBZFS@ -LIMITS_H = @LIMITS_H@ -LN_S = @LN_S@ -LOCALCHARSET_TESTS_ENVIRONMENT = @LOCALCHARSET_TESTS_ENVIRONMENT@ -LOCALE_FR = @LOCALE_FR@ -LOCALE_FR_UTF8 = @LOCALE_FR_UTF8@ -LOCALE_JA = @LOCALE_JA@ -LOCALE_ZH_CN = @LOCALE_ZH_CN@ -LTLIBICONV = @LTLIBICONV@ -LTLIBINTL = @LTLIBINTL@ -LTLIBMULTITHREAD = @LTLIBMULTITHREAD@ -LTLIBOBJS = @LTLIBOBJS@ -LTLIBPTH = @LTLIBPTH@ -LTLIBTHREAD = @LTLIBTHREAD@ -MAKEINFO = @MAKEINFO@ -MKDIR_P = @MKDIR_P@ -MSGFMT = @MSGFMT@ -MSGFMT_015 = @MSGFMT_015@ -MSGMERGE = @MSGMERGE@ -NEXT_AS_FIRST_DIRECTIVE_DIRENT_H = @NEXT_AS_FIRST_DIRECTIVE_DIRENT_H@ -NEXT_AS_FIRST_DIRECTIVE_ERRNO_H = @NEXT_AS_FIRST_DIRECTIVE_ERRNO_H@ -NEXT_AS_FIRST_DIRECTIVE_FCNTL_H = @NEXT_AS_FIRST_DIRECTIVE_FCNTL_H@ -NEXT_AS_FIRST_DIRECTIVE_FLOAT_H = @NEXT_AS_FIRST_DIRECTIVE_FLOAT_H@ -NEXT_AS_FIRST_DIRECTIVE_FNMATCH_H = @NEXT_AS_FIRST_DIRECTIVE_FNMATCH_H@ -NEXT_AS_FIRST_DIRECTIVE_GETOPT_H = @NEXT_AS_FIRST_DIRECTIVE_GETOPT_H@ -NEXT_AS_FIRST_DIRECTIVE_LANGINFO_H = @NEXT_AS_FIRST_DIRECTIVE_LANGINFO_H@ -NEXT_AS_FIRST_DIRECTIVE_LIMITS_H = @NEXT_AS_FIRST_DIRECTIVE_LIMITS_H@ -NEXT_AS_FIRST_DIRECTIVE_LOCALE_H = @NEXT_AS_FIRST_DIRECTIVE_LOCALE_H@ -NEXT_AS_FIRST_DIRECTIVE_STDDEF_H = @NEXT_AS_FIRST_DIRECTIVE_STDDEF_H@ -NEXT_AS_FIRST_DIRECTIVE_STDINT_H = @NEXT_AS_FIRST_DIRECTIVE_STDINT_H@ -NEXT_AS_FIRST_DIRECTIVE_STDIO_H = @NEXT_AS_FIRST_DIRECTIVE_STDIO_H@ -NEXT_AS_FIRST_DIRECTIVE_STDLIB_H = @NEXT_AS_FIRST_DIRECTIVE_STDLIB_H@ -NEXT_AS_FIRST_DIRECTIVE_STRINGS_H = @NEXT_AS_FIRST_DIRECTIVE_STRINGS_H@ -NEXT_AS_FIRST_DIRECTIVE_STRING_H = @NEXT_AS_FIRST_DIRECTIVE_STRING_H@ -NEXT_AS_FIRST_DIRECTIVE_SYSEXITS_H = @NEXT_AS_FIRST_DIRECTIVE_SYSEXITS_H@ -NEXT_AS_FIRST_DIRECTIVE_SYS_STAT_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_STAT_H@ -NEXT_AS_FIRST_DIRECTIVE_SYS_TYPES_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_TYPES_H@ -NEXT_AS_FIRST_DIRECTIVE_TIME_H = @NEXT_AS_FIRST_DIRECTIVE_TIME_H@ -NEXT_AS_FIRST_DIRECTIVE_UNISTD_H = @NEXT_AS_FIRST_DIRECTIVE_UNISTD_H@ -NEXT_AS_FIRST_DIRECTIVE_WCHAR_H = @NEXT_AS_FIRST_DIRECTIVE_WCHAR_H@ -NEXT_AS_FIRST_DIRECTIVE_WCTYPE_H = @NEXT_AS_FIRST_DIRECTIVE_WCTYPE_H@ -NEXT_DIRENT_H = @NEXT_DIRENT_H@ -NEXT_ERRNO_H = @NEXT_ERRNO_H@ -NEXT_FCNTL_H = @NEXT_FCNTL_H@ -NEXT_FLOAT_H = @NEXT_FLOAT_H@ -NEXT_FNMATCH_H = @NEXT_FNMATCH_H@ -NEXT_GETOPT_H = @NEXT_GETOPT_H@ -NEXT_LANGINFO_H = @NEXT_LANGINFO_H@ -NEXT_LIMITS_H = @NEXT_LIMITS_H@ -NEXT_LOCALE_H = @NEXT_LOCALE_H@ -NEXT_STDDEF_H = @NEXT_STDDEF_H@ -NEXT_STDINT_H = @NEXT_STDINT_H@ -NEXT_STDIO_H = @NEXT_STDIO_H@ -NEXT_STDLIB_H = @NEXT_STDLIB_H@ -NEXT_STRINGS_H = @NEXT_STRINGS_H@ -NEXT_STRING_H = @NEXT_STRING_H@ -NEXT_SYSEXITS_H = @NEXT_SYSEXITS_H@ -NEXT_SYS_STAT_H = @NEXT_SYS_STAT_H@ -NEXT_SYS_TYPES_H = @NEXT_SYS_TYPES_H@ -NEXT_TIME_H = @NEXT_TIME_H@ -NEXT_UNISTD_H = @NEXT_UNISTD_H@ -NEXT_WCHAR_H = @NEXT_WCHAR_H@ -NEXT_WCTYPE_H = @NEXT_WCTYPE_H@ -OBJEXT = @OBJEXT@ -PACKAGE = @PACKAGE@ -PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ -PACKAGE_NAME = @PACKAGE_NAME@ -PACKAGE_STRING = @PACKAGE_STRING@ -PACKAGE_TARNAME = @PACKAGE_TARNAME@ -PACKAGE_URL = @PACKAGE_URL@ -PACKAGE_VERSION = @PACKAGE_VERSION@ -PATH_SEPARATOR = @PATH_SEPARATOR@ -PKG_CONFIG = @PKG_CONFIG@ -PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ -PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ -POSUB = @POSUB@ -PRAGMA_COLUMNS = @PRAGMA_COLUMNS@ -PRAGMA_SYSTEM_HEADER = @PRAGMA_SYSTEM_HEADER@ -PTHREAD_H_DEFINES_STRUCT_TIMESPEC = @PTHREAD_H_DEFINES_STRUCT_TIMESPEC@ -PTRDIFF_T_SUFFIX = @PTRDIFF_T_SUFFIX@ -PYTHON = @PYTHON@ -PYTHON_EXEC_PREFIX = @PYTHON_EXEC_PREFIX@ -PYTHON_PLATFORM = @PYTHON_PLATFORM@ -PYTHON_PREFIX = @PYTHON_PREFIX@ -PYTHON_VERSION = @PYTHON_VERSION@ -RANLIB = @RANLIB@ -REPLACE_BTOWC = @REPLACE_BTOWC@ -REPLACE_CALLOC = @REPLACE_CALLOC@ -REPLACE_CANONICALIZE_FILE_NAME = @REPLACE_CANONICALIZE_FILE_NAME@ -REPLACE_CHOWN = @REPLACE_CHOWN@ -REPLACE_CLOSE = @REPLACE_CLOSE@ -REPLACE_CLOSEDIR = @REPLACE_CLOSEDIR@ -REPLACE_CTIME = @REPLACE_CTIME@ -REPLACE_DIRFD = @REPLACE_DIRFD@ -REPLACE_DPRINTF = @REPLACE_DPRINTF@ -REPLACE_DUP = @REPLACE_DUP@ -REPLACE_DUP2 = @REPLACE_DUP2@ -REPLACE_DUPLOCALE = @REPLACE_DUPLOCALE@ -REPLACE_FACCESSAT = @REPLACE_FACCESSAT@ -REPLACE_FCHOWNAT = @REPLACE_FCHOWNAT@ -REPLACE_FCLOSE = @REPLACE_FCLOSE@ -REPLACE_FCNTL = @REPLACE_FCNTL@ -REPLACE_FDOPEN = @REPLACE_FDOPEN@ -REPLACE_FDOPENDIR = @REPLACE_FDOPENDIR@ -REPLACE_FFLUSH = @REPLACE_FFLUSH@ -REPLACE_FNMATCH = @REPLACE_FNMATCH@ -REPLACE_FOPEN = @REPLACE_FOPEN@ -REPLACE_FPRINTF = @REPLACE_FPRINTF@ -REPLACE_FPURGE = @REPLACE_FPURGE@ -REPLACE_FREELOCALE = @REPLACE_FREELOCALE@ -REPLACE_FREOPEN = @REPLACE_FREOPEN@ -REPLACE_FSEEK = @REPLACE_FSEEK@ -REPLACE_FSEEKO = @REPLACE_FSEEKO@ -REPLACE_FSTAT = @REPLACE_FSTAT@ -REPLACE_FSTATAT = @REPLACE_FSTATAT@ -REPLACE_FTELL = @REPLACE_FTELL@ -REPLACE_FTELLO = @REPLACE_FTELLO@ -REPLACE_FTRUNCATE = @REPLACE_FTRUNCATE@ -REPLACE_FUTIMENS = @REPLACE_FUTIMENS@ -REPLACE_GETCWD = @REPLACE_GETCWD@ -REPLACE_GETDELIM = @REPLACE_GETDELIM@ -REPLACE_GETDOMAINNAME = @REPLACE_GETDOMAINNAME@ -REPLACE_GETDTABLESIZE = @REPLACE_GETDTABLESIZE@ -REPLACE_GETGROUPS = @REPLACE_GETGROUPS@ -REPLACE_GETLINE = @REPLACE_GETLINE@ -REPLACE_GETLOGIN_R = @REPLACE_GETLOGIN_R@ -REPLACE_GETPAGESIZE = @REPLACE_GETPAGESIZE@ -REPLACE_GETPASS = @REPLACE_GETPASS@ -REPLACE_GMTIME = @REPLACE_GMTIME@ -REPLACE_ISATTY = @REPLACE_ISATTY@ -REPLACE_ISWBLANK = @REPLACE_ISWBLANK@ -REPLACE_ISWCNTRL = @REPLACE_ISWCNTRL@ -REPLACE_ITOLD = @REPLACE_ITOLD@ -REPLACE_LCHOWN = @REPLACE_LCHOWN@ -REPLACE_LINK = @REPLACE_LINK@ -REPLACE_LINKAT = @REPLACE_LINKAT@ -REPLACE_LOCALECONV = @REPLACE_LOCALECONV@ -REPLACE_LOCALTIME = @REPLACE_LOCALTIME@ -REPLACE_LOCALTIME_R = @REPLACE_LOCALTIME_R@ -REPLACE_LSEEK = @REPLACE_LSEEK@ -REPLACE_LSTAT = @REPLACE_LSTAT@ -REPLACE_MALLOC = @REPLACE_MALLOC@ -REPLACE_MBRLEN = @REPLACE_MBRLEN@ -REPLACE_MBRTOWC = @REPLACE_MBRTOWC@ -REPLACE_MBSINIT = @REPLACE_MBSINIT@ -REPLACE_MBSNRTOWCS = @REPLACE_MBSNRTOWCS@ -REPLACE_MBSRTOWCS = @REPLACE_MBSRTOWCS@ -REPLACE_MBSTATE_T = @REPLACE_MBSTATE_T@ -REPLACE_MBTOWC = @REPLACE_MBTOWC@ -REPLACE_MEMCHR = @REPLACE_MEMCHR@ -REPLACE_MEMMEM = @REPLACE_MEMMEM@ -REPLACE_MKDIR = @REPLACE_MKDIR@ -REPLACE_MKFIFO = @REPLACE_MKFIFO@ -REPLACE_MKNOD = @REPLACE_MKNOD@ -REPLACE_MKSTEMP = @REPLACE_MKSTEMP@ -REPLACE_MKTIME = @REPLACE_MKTIME@ -REPLACE_NANOSLEEP = @REPLACE_NANOSLEEP@ -REPLACE_NEWLOCALE = @REPLACE_NEWLOCALE@ -REPLACE_NL_LANGINFO = @REPLACE_NL_LANGINFO@ -REPLACE_NULL = @REPLACE_NULL@ -REPLACE_OBSTACK_PRINTF = @REPLACE_OBSTACK_PRINTF@ -REPLACE_OPEN = @REPLACE_OPEN@ -REPLACE_OPENAT = @REPLACE_OPENAT@ -REPLACE_OPENDIR = @REPLACE_OPENDIR@ -REPLACE_PERROR = @REPLACE_PERROR@ -REPLACE_POPEN = @REPLACE_POPEN@ -REPLACE_PREAD = @REPLACE_PREAD@ -REPLACE_PRINTF = @REPLACE_PRINTF@ -REPLACE_PTSNAME = @REPLACE_PTSNAME@ -REPLACE_PTSNAME_R = @REPLACE_PTSNAME_R@ -REPLACE_PUTENV = @REPLACE_PUTENV@ -REPLACE_PWRITE = @REPLACE_PWRITE@ -REPLACE_QSORT_R = @REPLACE_QSORT_R@ -REPLACE_RANDOM_R = @REPLACE_RANDOM_R@ -REPLACE_READ = @REPLACE_READ@ -REPLACE_READLINK = @REPLACE_READLINK@ -REPLACE_READLINKAT = @REPLACE_READLINKAT@ -REPLACE_REALLOC = @REPLACE_REALLOC@ -REPLACE_REALPATH = @REPLACE_REALPATH@ -REPLACE_REMOVE = @REPLACE_REMOVE@ -REPLACE_RENAME = @REPLACE_RENAME@ -REPLACE_RENAMEAT = @REPLACE_RENAMEAT@ -REPLACE_RMDIR = @REPLACE_RMDIR@ -REPLACE_SETENV = @REPLACE_SETENV@ -REPLACE_SETLOCALE = @REPLACE_SETLOCALE@ -REPLACE_SLEEP = @REPLACE_SLEEP@ -REPLACE_SNPRINTF = @REPLACE_SNPRINTF@ -REPLACE_SPRINTF = @REPLACE_SPRINTF@ -REPLACE_STAT = @REPLACE_STAT@ -REPLACE_STDIO_READ_FUNCS = @REPLACE_STDIO_READ_FUNCS@ -REPLACE_STDIO_WRITE_FUNCS = @REPLACE_STDIO_WRITE_FUNCS@ -REPLACE_STPNCPY = @REPLACE_STPNCPY@ -REPLACE_STRCASESTR = @REPLACE_STRCASESTR@ -REPLACE_STRCHRNUL = @REPLACE_STRCHRNUL@ -REPLACE_STRDUP = @REPLACE_STRDUP@ -REPLACE_STRERROR = @REPLACE_STRERROR@ -REPLACE_STRERROR_R = @REPLACE_STRERROR_R@ -REPLACE_STRFTIME = @REPLACE_STRFTIME@ -REPLACE_STRNCAT = @REPLACE_STRNCAT@ -REPLACE_STRNDUP = @REPLACE_STRNDUP@ -REPLACE_STRNLEN = @REPLACE_STRNLEN@ -REPLACE_STRSIGNAL = @REPLACE_STRSIGNAL@ -REPLACE_STRSTR = @REPLACE_STRSTR@ -REPLACE_STRTOD = @REPLACE_STRTOD@ -REPLACE_STRTOK_R = @REPLACE_STRTOK_R@ -REPLACE_STRUCT_LCONV = @REPLACE_STRUCT_LCONV@ -REPLACE_SYMLINK = @REPLACE_SYMLINK@ -REPLACE_SYMLINKAT = @REPLACE_SYMLINKAT@ -REPLACE_TIMEGM = @REPLACE_TIMEGM@ -REPLACE_TMPFILE = @REPLACE_TMPFILE@ -REPLACE_TOWLOWER = @REPLACE_TOWLOWER@ -REPLACE_TRUNCATE = @REPLACE_TRUNCATE@ -REPLACE_TTYNAME_R = @REPLACE_TTYNAME_R@ -REPLACE_TZSET = @REPLACE_TZSET@ -REPLACE_UNLINK = @REPLACE_UNLINK@ -REPLACE_UNLINKAT = @REPLACE_UNLINKAT@ -REPLACE_UNSETENV = @REPLACE_UNSETENV@ -REPLACE_USLEEP = @REPLACE_USLEEP@ -REPLACE_UTIMENSAT = @REPLACE_UTIMENSAT@ -REPLACE_VASPRINTF = @REPLACE_VASPRINTF@ -REPLACE_VDPRINTF = @REPLACE_VDPRINTF@ -REPLACE_VFPRINTF = @REPLACE_VFPRINTF@ -REPLACE_VPRINTF = @REPLACE_VPRINTF@ -REPLACE_VSNPRINTF = @REPLACE_VSNPRINTF@ -REPLACE_VSPRINTF = @REPLACE_VSPRINTF@ -REPLACE_WCRTOMB = @REPLACE_WCRTOMB@ -REPLACE_WCSFTIME = @REPLACE_WCSFTIME@ -REPLACE_WCSNRTOMBS = @REPLACE_WCSNRTOMBS@ -REPLACE_WCSRTOMBS = @REPLACE_WCSRTOMBS@ -REPLACE_WCSWIDTH = @REPLACE_WCSWIDTH@ -REPLACE_WCTOB = @REPLACE_WCTOB@ -REPLACE_WCTOMB = @REPLACE_WCTOMB@ -REPLACE_WCWIDTH = @REPLACE_WCWIDTH@ -REPLACE_WRITE = @REPLACE_WRITE@ -SED = @SED@ -SET_MAKE = @SET_MAKE@ -SHELL = @SHELL@ -SIG_ATOMIC_T_SUFFIX = @SIG_ATOMIC_T_SUFFIX@ -SIZE_T_SUFFIX = @SIZE_T_SUFFIX@ -STDALIGN_H = @STDALIGN_H@ -STDBOOL_H = @STDBOOL_H@ -STDDEF_H = @STDDEF_H@ -STDINT_H = @STDINT_H@ -STRIP = @STRIP@ -SYSEXITS_H = @SYSEXITS_H@ -SYS_TIME_H_DEFINES_STRUCT_TIMESPEC = @SYS_TIME_H_DEFINES_STRUCT_TIMESPEC@ -TARGET_APPLE_LINKER = @TARGET_APPLE_LINKER@ -TARGET_CC = @TARGET_CC@ -TARGET_CCAS = @TARGET_CCAS@ -TARGET_CCASFLAGS = @TARGET_CCASFLAGS@ -TARGET_CC_VERSION = @TARGET_CC_VERSION@ -TARGET_CFLAGS = @TARGET_CFLAGS@ -TARGET_CPP = @TARGET_CPP@ -TARGET_CPPFLAGS = @TARGET_CPPFLAGS@ -TARGET_DECOMPRESSOR_LINK_ADDR = @TARGET_DECOMPRESSOR_LINK_ADDR@ -TARGET_IMG_BASE_LDOPT = @TARGET_IMG_BASE_LDOPT@ -TARGET_IMG_CFLAGS = @TARGET_IMG_CFLAGS@ -TARGET_IMG_LDFLAGS = @TARGET_IMG_LDFLAGS@ -TARGET_LDFLAGS = @TARGET_LDFLAGS@ -TARGET_LDFLAGS_OLDMAGIC = @TARGET_LDFLAGS_OLDMAGIC@ -TARGET_LINK_ADDR = @TARGET_LINK_ADDR@ -TARGET_MODULE_FORMAT = @TARGET_MODULE_FORMAT@ -TARGET_NM = @TARGET_NM@ -TARGET_NMFLAGS_DEFINED_ONLY = @TARGET_NMFLAGS_DEFINED_ONLY@ -TARGET_NMFLAGS_MINUS_P = @TARGET_NMFLAGS_MINUS_P@ -TARGET_OBJ2ELF = @TARGET_OBJ2ELF@ -TARGET_OBJCONV = @TARGET_OBJCONV@ -TARGET_OBJCOPY = @TARGET_OBJCOPY@ -TARGET_RANLIB = @TARGET_RANLIB@ -TARGET_STRIP = @TARGET_STRIP@ -TIME_H_DEFINES_STRUCT_TIMESPEC = @TIME_H_DEFINES_STRUCT_TIMESPEC@ -UNDEFINE_STRTOK_R = @UNDEFINE_STRTOK_R@ -UNISTD_H_DEFINES_STRUCT_TIMESPEC = @UNISTD_H_DEFINES_STRUCT_TIMESPEC@ -UNISTD_H_HAVE_WINSOCK2_H = @UNISTD_H_HAVE_WINSOCK2_H@ -UNISTD_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS = @UNISTD_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS@ -USE_NLS = @USE_NLS@ -VERSION = @VERSION@ -WCHAR_T_SUFFIX = @WCHAR_T_SUFFIX@ -WINDOWS_64_BIT_OFF_T = @WINDOWS_64_BIT_OFF_T@ -WINDOWS_64_BIT_ST_SIZE = @WINDOWS_64_BIT_ST_SIZE@ -WINDOWS_STAT_INODES = @WINDOWS_STAT_INODES@ -WINDOWS_STAT_TIMESPEC = @WINDOWS_STAT_TIMESPEC@ -WINT_T_SUFFIX = @WINT_T_SUFFIX@ -XGETTEXT = @XGETTEXT@ -XGETTEXT_015 = @XGETTEXT_015@ -XGETTEXT_EXTRA_OPTIONS = @XGETTEXT_EXTRA_OPTIONS@ -YACC = @YACC@ -YFLAGS = @YFLAGS@ -abs_builddir = @abs_builddir@ -abs_srcdir = @abs_srcdir@ -abs_top_builddir = @abs_top_builddir@ -abs_top_srcdir = @abs_top_srcdir@ -ac_ct_CC = @ac_ct_CC@ -ac_ct_CXX = @ac_ct_CXX@ -ac_ct_TARGET_CC = @ac_ct_TARGET_CC@ -am__include = @am__include@ -am__leading_dot = @am__leading_dot@ -am__quote = @am__quote@ -am__tar = @am__tar@ -am__untar = @am__untar@ -bindir = @bindir@ -bootdirname = @bootdirname@ -build = @build@ -build_alias = @build_alias@ -build_cpu = @build_cpu@ -build_os = @build_os@ -build_vendor = @build_vendor@ -builddir = @builddir@ -datadir = @datadir@ -datarootdir = @datarootdir@ -docdir = @docdir@ -dvidir = @dvidir@ -enable_efiemu = @enable_efiemu@ -enable_grub_emu_pci = @enable_grub_emu_pci@ -enable_grub_emu_sdl = @enable_grub_emu_sdl@ -enable_grub_mkfont = @enable_grub_mkfont@ -enable_grub_mount = @enable_grub_mount@ -exec_prefix = @exec_prefix@ -gl_LIBOBJS = @gl_LIBOBJS@ -gl_LTLIBOBJS = @gl_LTLIBOBJS@ -gltests_LIBOBJS = @gltests_LIBOBJS@ -gltests_LTLIBOBJS = @gltests_LTLIBOBJS@ -gltests_WITNESS = @gltests_WITNESS@ -grub_bios_setup = @grub_bios_setup@ -grub_editenv = @grub_editenv@ -grub_file = @grub_file@ -grub_glue_efi = @grub_glue_efi@ -grub_install = @grub_install@ -grub_mkconfig = @grub_mkconfig@ -grub_mkfont = @grub_mkfont@ -grub_mkimage = @grub_mkimage@ -grub_mklayout = @grub_mklayout@ -grub_mkpasswd_pbkdf2 = @grub_mkpasswd_pbkdf2@ -grub_mkrelpath = @grub_mkrelpath@ -grub_mkrescue = @grub_mkrescue@ -grub_probe = @grub_probe@ -grub_reboot = @grub_reboot@ -grub_render_label = @grub_render_label@ -grub_script_check = @grub_script_check@ -grub_set_default = @grub_set_default@ -grub_sparc64_setup = @grub_sparc64_setup@ -grubdirname = @grubdirname@ -host = @host@ -host_alias = @host_alias@ -host_cpu = @host_cpu@ -host_kernel = @host_kernel@ -host_os = @host_os@ -host_vendor = @host_vendor@ -htmldir = @htmldir@ -includedir = @includedir@ -infodir = @infodir@ -install_sh = @install_sh@ -libdir = @libdir@ -libexecdir = @libexecdir@ -localedir = @localedir@ -localstatedir = @localstatedir@ -mandir = @mandir@ -mkdir_p = @mkdir_p@ -oldincludedir = @oldincludedir@ -pdfdir = @pdfdir@ -pkgpyexecdir = @pkgpyexecdir@ -pkgpythondir = @pkgpythondir@ -platform = @platform@ -prefix = @prefix@ -program_transform_name = @program_transform_name@ -psdir = @psdir@ -pyexecdir = @pyexecdir@ -pythondir = @pythondir@ -runstatedir = @runstatedir@ -sbindir = @sbindir@ -sharedstatedir = @sharedstatedir@ -srcdir = @srcdir@ -sysconfdir = @sysconfdir@ -target = @target@ -target_alias = @target_alias@ -target_cpu = @target_cpu@ -target_os = @target_os@ -target_vendor = @target_vendor@ -top_build_prefix = @top_build_prefix@ -top_builddir = @top_builddir@ -top_srcdir = @top_srcdir@ -AUTOMAKE_OPTIONS = 1.11 gnits subdir-objects -SUBDIRS = -noinst_HEADERS = -noinst_LIBRARIES = libgnu.a -noinst_LTLIBRARIES = -EXTRA_DIST = alloca.c alloca.in.h assure.h openat-priv.h openat-proc.c \ - btowc.c chdir-long.c chdir-long.h cloexec.h close.c \ - dirent.in.h dirfd.c dirname.h dosname.h dup2.c errno.in.h \ - error.c error.h exitfail.h fchdir.c fcntl.c fcntl.in.h \ - fd-hook.h filename.h filenamecat.h flexmember.h float.c \ - float.in.h itold.c fnmatch.c fnmatch_loop.c fnmatch.in.h \ - fstat.c stat-w32.c stat-w32.h getcwd-lgpl.c getdelim.c \ - getdtablesize.c getline.c getopt-cdefs.in.h getopt-core.h \ - getopt-ext.h getopt-pfx-core.h getopt-pfx-ext.h getopt.c \ - getopt.in.h getopt1.c getopt_int.h \ - $(top_srcdir)/build-aux/gitlog-to-changelog hard-locale.h \ - $(top_srcdir)/build-aux/config.rpath intprops.h langinfo.in.h \ - cdefs.h libc-config.h limits.in.h localcharset.h locale.in.h \ - localeconv.c malloc.c malloc.c malloca.h mbrtowc.c mbsinit.c \ - mbsrtowcs-impl.h mbsrtowcs-state.c mbsrtowcs.c mbtowc-impl.h \ - mbtowc.c memchr.c memchr.valgrind mempcpy.c memrchr.c \ - msvc-inval.c msvc-inval.h msvc-nothrow.c msvc-nothrow.h \ - nl_langinfo.c open.c openat.c openat.h pathmax.h rawmemchr.c \ - rawmemchr.valgrind realloc.c realloc.c regcomp.c regex.c \ - regex.h regex_internal.c regex_internal.h regexec.c save-cwd.h \ - sleep.c _Noreturn.h arg-nonnull.h c++defs.h warn-on-use.h \ - stat-w32.c stat-w32.h stat.c stat-time.h stdalign.in.h \ - stdbool.in.h stddef.in.h stdint.in.h stdio.in.h stdlib.in.h \ - strcasecmp.c strncasecmp.c strchrnul.c strchrnul.valgrind \ - strdup.c streq.h strerror.c strerror-override.c \ - strerror-override.h string.in.h strings.in.h strndup.c \ - strnlen.c sys_stat.in.h sys_types.in.h sysexits.in.h \ - $(top_srcdir)/build-aux/config.rpath time.in.h unistd.in.h \ - unistd--.h unistd-safer.h unitypes.in.h localcharset.h \ - uniwidth.in.h uniwidth/cjk.h asnprintf.c float+.h \ - printf-args.c printf-args.h printf-parse.c printf-parse.h \ - vasnprintf.c vasnprintf.h verify.h vsnprintf.c wchar.in.h \ - wcrtomb.c wctype.in.h wcwidth.c xalloc-oversized.h -BUILT_SOURCES = $(ALLOCA_H) dirent.h $(ERRNO_H) fcntl.h $(FLOAT_H) \ - $(FNMATCH_H) $(GETOPT_H) $(GETOPT_CDEFS_H) langinfo.h \ - $(LIMITS_H) locale.h $(STDALIGN_H) $(STDBOOL_H) $(STDDEF_H) \ - $(STDINT_H) stdio.h stdlib.h string.h strings.h sys/stat.h \ - sys/types.h $(SYSEXITS_H) time.h unistd.h \ - $(LIBUNISTRING_UNITYPES_H) $(LIBUNISTRING_UNIWIDTH_H) wchar.h \ - wctype.h -SUFFIXES = -MOSTLYCLEANFILES = core *.stackdump alloca.h alloca.h-t dirent.h \ - dirent.h-t errno.h errno.h-t fcntl.h fcntl.h-t float.h \ - float.h-t fnmatch.h fnmatch.h-t getopt.h getopt.h-t \ - getopt-cdefs.h getopt-cdefs.h-t langinfo.h langinfo.h-t \ - limits.h limits.h-t locale.h locale.h-t stdalign.h \ - stdalign.h-t stdbool.h stdbool.h-t stddef.h stddef.h-t \ - stdint.h stdint.h-t stdio.h stdio.h-t stdlib.h stdlib.h-t \ - string.h string.h-t strings.h strings.h-t sys/stat.h \ - sys/stat.h-t sys/types.h sys/types.h-t sysexits.h sysexits.h-t \ - time.h time.h-t unistd.h unistd.h-t unitypes.h unitypes.h-t \ - uniwidth.h uniwidth.h-t wchar.h wchar.h-t wctype.h wctype.h-t -MOSTLYCLEANDIRS = sys -CLEANFILES = -DISTCLEANFILES = -MAINTAINERCLEANFILES = -# No GNU Make output. -AM_CPPFLAGS = -AM_CFLAGS = -libgnu_a_SOURCES = argp.h argp-ba.c argp-eexst.c argp-fmtstream.c \ - argp-fmtstream.h argp-fs-xinl.c argp-help.c argp-namefrob.h \ - argp-parse.c argp-pin.c argp-pv.c argp-pvh.c argp-xinl.c \ - cloexec.c dirname-lgpl.c basename-lgpl.c stripslash.c \ - exitfail.c fd-hook.c fd-safer-flag.c dup-safer-flag.c \ - filenamecat-lgpl.c getprogname.h getprogname.c gettext.h \ - hard-locale.c localcharset.c glthread/lock.h glthread/lock.c \ - malloca.c mbswidth.h mbswidth.c openat-die.c progname.h \ - progname.c save-cwd.c size_max.h stat-time.c strnlen1.h \ - strnlen1.c glthread/threadlib.c unistd.c dup-safer.c \ - fd-safer.c pipe-safer.c $(am__append_1) wctype-h.c xsize.h \ - xsize.c -libgnu_a_LIBADD = $(gl_LIBOBJS) @ALLOCA@ -libgnu_a_DEPENDENCIES = $(gl_LIBOBJS) @ALLOCA@ -EXTRA_libgnu_a_SOURCES = alloca.c openat-proc.c btowc.c chdir-long.c \ - close.c dirfd.c dup2.c error.c fchdir.c fcntl.c float.c \ - itold.c fnmatch.c fnmatch_loop.c fstat.c stat-w32.c \ - getcwd-lgpl.c getdelim.c getdtablesize.c getline.c getopt.c \ - getopt1.c localeconv.c malloc.c malloc.c mbrtowc.c mbsinit.c \ - mbsrtowcs-state.c mbsrtowcs.c mbtowc.c memchr.c mempcpy.c \ - memrchr.c msvc-inval.c msvc-nothrow.c nl_langinfo.c open.c \ - openat.c rawmemchr.c realloc.c realloc.c regcomp.c regex.c \ - regex_internal.c regexec.c sleep.c stat-w32.c stat.c \ - strcasecmp.c strncasecmp.c strchrnul.c strdup.c strerror.c \ - strerror-override.c strndup.c strnlen.c asnprintf.c \ - printf-args.c printf-parse.c vasnprintf.c vsnprintf.c \ - wcrtomb.c wcwidth.c - -# Use this preprocessor expression to decide whether #include_next works. -# Do not rely on a 'configure'-time test for this, since the expression -# might appear in an installed header, which is used by some other compiler. -HAVE_INCLUDE_NEXT = (__GNUC__ || 60000000 <= __DECC_VER) - -# Because this Makefile snippet defines a variable used by other -# gnulib Makefile snippets, it must be present in all makefiles that -# need it. This is ensured by the applicability 'all' defined above. -_NORETURN_H = $(srcdir)/_Noreturn.h - -# Because this Makefile snippet defines a variable used by other -# gnulib Makefile snippets, it must be present in all makefiles that -# need it. This is ensured by the applicability 'all' defined above. -ARG_NONNULL_H = $(srcdir)/arg-nonnull.h - -# Because this Makefile snippet defines a variable used by other -# gnulib Makefile snippets, it must be present in all makefiles that -# need it. This is ensured by the applicability 'all' defined above. -CXXDEFS_H = $(srcdir)/c++defs.h - -# Because this Makefile snippet defines a variable used by other -# gnulib Makefile snippets, it must be present in all makefiles that -# need it. This is ensured by the applicability 'all' defined above. -WARN_ON_USE_H = $(srcdir)/warn-on-use.h -all: $(BUILT_SOURCES) - $(MAKE) $(AM_MAKEFLAGS) all-recursive - -.SUFFIXES: -.SUFFIXES: .c .o .obj -$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps) - @for dep in $?; do \ - case '$(am__configure_deps)' in \ - *$$dep*) \ - ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \ - && { if test -f $@; then exit 0; else break; fi; }; \ - exit 1;; \ - esac; \ - done; \ - echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnits grub-core/lib/gnulib/Makefile'; \ - $(am__cd) $(top_srcdir) && \ - $(AUTOMAKE) --gnits grub-core/lib/gnulib/Makefile -Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status - @case '$?' in \ - *config.status*) \ - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ - *) \ - echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ - esac; - -$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh - -$(top_srcdir)/configure: $(am__configure_deps) - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh -$(ACLOCAL_M4): $(am__aclocal_m4_deps) - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh -$(am__aclocal_m4_deps): - -clean-noinstLIBRARIES: - -test -z "$(noinst_LIBRARIES)" || rm -f $(noinst_LIBRARIES) -glthread/$(am__dirstamp): - @$(MKDIR_P) glthread - @: > glthread/$(am__dirstamp) -glthread/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) glthread/$(DEPDIR) - @: > glthread/$(DEPDIR)/$(am__dirstamp) -glthread/lock.$(OBJEXT): glthread/$(am__dirstamp) \ - glthread/$(DEPDIR)/$(am__dirstamp) -glthread/threadlib.$(OBJEXT): glthread/$(am__dirstamp) \ - glthread/$(DEPDIR)/$(am__dirstamp) -uniwidth/$(am__dirstamp): - @$(MKDIR_P) uniwidth - @: > uniwidth/$(am__dirstamp) -uniwidth/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) uniwidth/$(DEPDIR) - @: > uniwidth/$(DEPDIR)/$(am__dirstamp) -uniwidth/width.$(OBJEXT): uniwidth/$(am__dirstamp) \ - uniwidth/$(DEPDIR)/$(am__dirstamp) - -libgnu.a: $(libgnu_a_OBJECTS) $(libgnu_a_DEPENDENCIES) $(EXTRA_libgnu_a_DEPENDENCIES) - $(AM_V_at)-rm -f libgnu.a - $(AM_V_AR)$(libgnu_a_AR) libgnu.a $(libgnu_a_OBJECTS) $(libgnu_a_LIBADD) - $(AM_V_at)$(RANLIB) libgnu.a - -clean-noinstLTLIBRARIES: - -test -z "$(noinst_LTLIBRARIES)" || rm -f $(noinst_LTLIBRARIES) - @list='$(noinst_LTLIBRARIES)'; \ - locs=`for p in $$list; do echo $$p; done | \ - sed 's|^[^/]*$$|.|; s|/[^/]*$$||; s|$$|/so_locations|' | \ - sort -u`; \ - test -z "$$locs" || { \ - echo rm -f $${locs}; \ - rm -f $${locs}; \ - } - -mostlyclean-compile: - -rm -f *.$(OBJEXT) - -rm -f glthread/*.$(OBJEXT) - -rm -f uniwidth/*.$(OBJEXT) - -distclean-compile: - -rm -f *.tab.c - -@AMDEP_TRUE@@am__include@ @am__quote@$(DEPDIR)/alloca.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/alloca.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/argp-ba.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/argp-eexst.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/argp-fmtstream.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/argp-fs-xinl.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/argp-help.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/argp-parse.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/argp-pin.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/argp-pv.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/argp-pvh.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/argp-xinl.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/asnprintf.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/basename-lgpl.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/btowc.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/chdir-long.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/cloexec.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/close.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dirfd.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dirname-lgpl.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dup-safer-flag.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dup-safer.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dup2.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/error.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/exitfail.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fchdir.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fcntl.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fd-hook.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fd-safer-flag.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fd-safer.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/filenamecat-lgpl.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/float.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fnmatch.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fnmatch_loop.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fstat.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/getcwd-lgpl.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/getdelim.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/getdtablesize.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/getline.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/getopt.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/getopt1.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/getprogname.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/hard-locale.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/itold.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/localcharset.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/localeconv.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/malloc.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/malloca.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mbrtowc.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mbsinit.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mbsrtowcs-state.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mbsrtowcs.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mbswidth.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mbtowc.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/memchr.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mempcpy.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/memrchr.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/msvc-inval.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/msvc-nothrow.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nl_langinfo.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/open.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/openat-die.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/openat-proc.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/openat.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/pipe-safer.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/printf-args.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/printf-parse.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/progname.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/rawmemchr.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/realloc.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/regcomp.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/regex.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/regex_internal.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/regexec.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/save-cwd.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sleep.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/stat-time.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/stat-w32.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/stat.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/strcasecmp.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/strchrnul.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/strdup.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/strerror-override.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/strerror.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/stripslash.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/strncasecmp.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/strndup.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/strnlen.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/strnlen1.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/unistd.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/vasnprintf.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/vsnprintf.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/wcrtomb.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/wctype-h.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/wcwidth.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/xsize.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@glthread/$(DEPDIR)/lock.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@glthread/$(DEPDIR)/threadlib.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@uniwidth/$(DEPDIR)/width.Po@am__quote@ - -.c.o: -@am__fastdepCC_TRUE@ $(AM_V_CC)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.o$$||'`;\ -@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ $< &&\ -@am__fastdepCC_TRUE@ $(am__mv) $$depbase.Tpo $$depbase.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ $< - -.c.obj: -@am__fastdepCC_TRUE@ $(AM_V_CC)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.obj$$||'`;\ -@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ `$(CYGPATH_W) '$<'` &&\ -@am__fastdepCC_TRUE@ $(am__mv) $$depbase.Tpo $$depbase.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ `$(CYGPATH_W) '$<'` - -# This directory's subdirectories are mostly independent; you can cd -# into them and run 'make' without going through this Makefile. -# To change the values of 'make' variables: instead of editing Makefiles, -# (1) if the variable is set in 'config.status', edit 'config.status' -# (which will cause the Makefiles to be regenerated when you run 'make'); -# (2) otherwise, pass the desired values on the 'make' command line. -$(am__recursive_targets): - @fail=; \ - if $(am__make_keepgoing); then \ - failcom='fail=yes'; \ - else \ - failcom='exit 1'; \ - fi; \ - dot_seen=no; \ - target=`echo $@ | sed s/-recursive//`; \ - case "$@" in \ - distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \ - *) list='$(SUBDIRS)' ;; \ - esac; \ - for subdir in $$list; do \ - echo "Making $$target in $$subdir"; \ - if test "$$subdir" = "."; then \ - dot_seen=yes; \ - local_target="$$target-am"; \ - else \ - local_target="$$target"; \ - fi; \ - ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ - || eval $$failcom; \ - done; \ - if test "$$dot_seen" = "no"; then \ - $(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \ - fi; test -z "$$fail" - -ID: $(am__tagged_files) - $(am__define_uniq_tagged_files); mkid -fID $$unique -tags: tags-recursive -TAGS: tags - -tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files) - set x; \ - here=`pwd`; \ - if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \ - include_option=--etags-include; \ - empty_fix=.; \ - else \ - include_option=--include; \ - empty_fix=; \ - fi; \ - list='$(SUBDIRS)'; for subdir in $$list; do \ - if test "$$subdir" = .; then :; else \ - test ! -f $$subdir/TAGS || \ - set "$$@" "$$include_option=$$here/$$subdir/TAGS"; \ - fi; \ - done; \ - $(am__define_uniq_tagged_files); \ - shift; \ - if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \ - test -n "$$unique" || unique=$$empty_fix; \ - if test $$# -gt 0; then \ - $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ - "$$@" $$unique; \ - else \ - $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ - $$unique; \ - fi; \ - fi -ctags: ctags-recursive - -CTAGS: ctags -ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files) - $(am__define_uniq_tagged_files); \ - test -z "$(CTAGS_ARGS)$$unique" \ - || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ - $$unique - -GTAGS: - here=`$(am__cd) $(top_builddir) && pwd` \ - && $(am__cd) $(top_srcdir) \ - && gtags -i $(GTAGS_ARGS) "$$here" -cscopelist: cscopelist-recursive - -cscopelist-am: $(am__tagged_files) - list='$(am__tagged_files)'; \ - case "$(srcdir)" in \ - [\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \ - *) sdir=$(subdir)/$(srcdir) ;; \ - esac; \ - for i in $$list; do \ - if test -f "$$i"; then \ - echo "$(subdir)/$$i"; \ - else \ - echo "$$sdir/$$i"; \ - fi; \ - done >> $(top_builddir)/cscope.files - -distclean-tags: - -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags - -distdir: $(DISTFILES) - @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ - topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ - list='$(DISTFILES)'; \ - dist_files=`for file in $$list; do echo $$file; done | \ - sed -e "s|^$$srcdirstrip/||;t" \ - -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ - case $$dist_files in \ - */*) $(MKDIR_P) `echo "$$dist_files" | \ - sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ - sort -u` ;; \ - esac; \ - for file in $$dist_files; do \ - if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ - if test -d $$d/$$file; then \ - dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ - if test -d "$(distdir)/$$file"; then \ - find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ - fi; \ - if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ - cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ - find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ - fi; \ - cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ - else \ - test -f "$(distdir)/$$file" \ - || cp -p $$d/$$file "$(distdir)/$$file" \ - || exit 1; \ - fi; \ - done - @list='$(DIST_SUBDIRS)'; for subdir in $$list; do \ - if test "$$subdir" = .; then :; else \ - $(am__make_dryrun) \ - || test -d "$(distdir)/$$subdir" \ - || $(MKDIR_P) "$(distdir)/$$subdir" \ - || exit 1; \ - dir1=$$subdir; dir2="$(distdir)/$$subdir"; \ - $(am__relativize); \ - new_distdir=$$reldir; \ - dir1=$$subdir; dir2="$(top_distdir)"; \ - $(am__relativize); \ - new_top_distdir=$$reldir; \ - echo " (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir="$$new_top_distdir" distdir="$$new_distdir" \\"; \ - echo " am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=: distdir)"; \ - ($(am__cd) $$subdir && \ - $(MAKE) $(AM_MAKEFLAGS) \ - top_distdir="$$new_top_distdir" \ - distdir="$$new_distdir" \ - am__remove_distdir=: \ - am__skip_length_check=: \ - am__skip_mode_fix=: \ - distdir) \ - || exit 1; \ - fi; \ - done -check-am: all-am -check: $(BUILT_SOURCES) - $(MAKE) $(AM_MAKEFLAGS) check-recursive -all-am: Makefile $(LIBRARIES) $(LTLIBRARIES) $(HEADERS) -installdirs: installdirs-recursive -installdirs-am: -install: $(BUILT_SOURCES) - $(MAKE) $(AM_MAKEFLAGS) install-recursive -install-exec: install-exec-recursive -install-data: install-data-recursive -uninstall: uninstall-recursive - -install-am: all-am - @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am - -installcheck: installcheck-recursive -install-strip: - if test -z '$(STRIP)'; then \ - $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ - install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ - install; \ - else \ - $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ - install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ - "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \ - fi -mostlyclean-generic: - -test -z "$(MOSTLYCLEANFILES)" || rm -f $(MOSTLYCLEANFILES) - -clean-generic: - -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES) - -distclean-generic: - -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) - -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) - -rm -f glthread/$(DEPDIR)/$(am__dirstamp) - -rm -f glthread/$(am__dirstamp) - -rm -f uniwidth/$(DEPDIR)/$(am__dirstamp) - -rm -f uniwidth/$(am__dirstamp) - -test -z "$(DISTCLEANFILES)" || rm -f $(DISTCLEANFILES) - -maintainer-clean-generic: - @echo "This command is intended for maintainers to use" - @echo "it deletes files that may require special tools to rebuild." - -test -z "$(BUILT_SOURCES)" || rm -f $(BUILT_SOURCES) - -test -z "$(MAINTAINERCLEANFILES)" || rm -f $(MAINTAINERCLEANFILES) -clean: clean-recursive - -clean-am: clean-generic clean-noinstLIBRARIES clean-noinstLTLIBRARIES \ - mostlyclean-am - -distclean: distclean-recursive - -rm -rf $(DEPDIR) ./$(DEPDIR) glthread/$(DEPDIR) uniwidth/$(DEPDIR) - -rm -f Makefile -distclean-am: clean-am distclean-compile distclean-generic \ - distclean-tags - -dvi: dvi-recursive - -dvi-am: - -html: html-recursive - -html-am: - -info: info-recursive - -info-am: - -install-data-am: - -install-dvi: install-dvi-recursive - -install-dvi-am: - -install-exec-am: - -install-html: install-html-recursive - -install-html-am: - -install-info: install-info-recursive - -install-info-am: - -install-man: - -install-pdf: install-pdf-recursive - -install-pdf-am: - -install-ps: install-ps-recursive - -install-ps-am: - -installcheck-am: - -maintainer-clean: maintainer-clean-recursive - -rm -rf $(DEPDIR) ./$(DEPDIR) glthread/$(DEPDIR) uniwidth/$(DEPDIR) - -rm -f Makefile -maintainer-clean-am: distclean-am maintainer-clean-generic - -mostlyclean: mostlyclean-recursive - -mostlyclean-am: mostlyclean-compile mostlyclean-generic \ - mostlyclean-local - -pdf: pdf-recursive - -pdf-am: - -ps: ps-recursive - -ps-am: - -uninstall-am: - -.MAKE: $(am__recursive_targets) all check install install-am \ - install-strip - -.PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am check \ - check-am clean clean-generic clean-noinstLIBRARIES \ - clean-noinstLTLIBRARIES cscopelist-am ctags ctags-am distclean \ - distclean-compile distclean-generic distclean-tags distdir dvi \ - dvi-am html html-am info info-am install install-am \ - install-data install-data-am install-dvi install-dvi-am \ - install-exec install-exec-am install-html install-html-am \ - install-info install-info-am install-man install-pdf \ - install-pdf-am install-ps install-ps-am install-strip \ - installcheck installcheck-am installdirs installdirs-am \ - maintainer-clean maintainer-clean-generic mostlyclean \ - mostlyclean-compile mostlyclean-generic mostlyclean-local pdf \ - pdf-am ps ps-am tags tags-am uninstall uninstall-am - -.PRECIOUS: Makefile - - -# We need the following in order to create when the system -# doesn't have one that works with the given compiler. -@GL_GENERATE_ALLOCA_H_TRUE@alloca.h: alloca.in.h $(top_builddir)/config.status -@GL_GENERATE_ALLOCA_H_TRUE@ $(AM_V_GEN)rm -f $@-t $@ && \ -@GL_GENERATE_ALLOCA_H_TRUE@ { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \ -@GL_GENERATE_ALLOCA_H_TRUE@ cat $(srcdir)/alloca.in.h; \ -@GL_GENERATE_ALLOCA_H_TRUE@ } > $@-t && \ -@GL_GENERATE_ALLOCA_H_TRUE@ mv -f $@-t $@ -@GL_GENERATE_ALLOCA_H_FALSE@alloca.h: $(top_builddir)/config.status -@GL_GENERATE_ALLOCA_H_FALSE@ rm -f $@ - -# We need the following in order to create when the system -# doesn't have one that works with the given compiler. -dirent.h: dirent.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H) $(WARN_ON_USE_H) - $(AM_V_GEN)rm -f $@-t $@ && \ - { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \ - sed -e 's|@''GUARD_PREFIX''@|GL|g' \ - -e 's|@''HAVE_DIRENT_H''@|$(HAVE_DIRENT_H)|g' \ - -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ - -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ - -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \ - -e 's|@''NEXT_DIRENT_H''@|$(NEXT_DIRENT_H)|g' \ - -e 's/@''GNULIB_OPENDIR''@/$(GNULIB_OPENDIR)/g' \ - -e 's/@''GNULIB_READDIR''@/$(GNULIB_READDIR)/g' \ - -e 's/@''GNULIB_REWINDDIR''@/$(GNULIB_REWINDDIR)/g' \ - -e 's/@''GNULIB_CLOSEDIR''@/$(GNULIB_CLOSEDIR)/g' \ - -e 's/@''GNULIB_DIRFD''@/$(GNULIB_DIRFD)/g' \ - -e 's/@''GNULIB_FDOPENDIR''@/$(GNULIB_FDOPENDIR)/g' \ - -e 's/@''GNULIB_SCANDIR''@/$(GNULIB_SCANDIR)/g' \ - -e 's/@''GNULIB_ALPHASORT''@/$(GNULIB_ALPHASORT)/g' \ - -e 's/@''HAVE_OPENDIR''@/$(HAVE_OPENDIR)/g' \ - -e 's/@''HAVE_READDIR''@/$(HAVE_READDIR)/g' \ - -e 's/@''HAVE_REWINDDIR''@/$(HAVE_REWINDDIR)/g' \ - -e 's/@''HAVE_CLOSEDIR''@/$(HAVE_CLOSEDIR)/g' \ - -e 's|@''HAVE_DECL_DIRFD''@|$(HAVE_DECL_DIRFD)|g' \ - -e 's|@''HAVE_DECL_FDOPENDIR''@|$(HAVE_DECL_FDOPENDIR)|g' \ - -e 's|@''HAVE_FDOPENDIR''@|$(HAVE_FDOPENDIR)|g' \ - -e 's|@''HAVE_SCANDIR''@|$(HAVE_SCANDIR)|g' \ - -e 's|@''HAVE_ALPHASORT''@|$(HAVE_ALPHASORT)|g' \ - -e 's|@''REPLACE_OPENDIR''@|$(REPLACE_OPENDIR)|g' \ - -e 's|@''REPLACE_CLOSEDIR''@|$(REPLACE_CLOSEDIR)|g' \ - -e 's|@''REPLACE_DIRFD''@|$(REPLACE_DIRFD)|g' \ - -e 's|@''REPLACE_FDOPENDIR''@|$(REPLACE_FDOPENDIR)|g' \ - -e '/definitions of _GL_FUNCDECL_RPL/r $(CXXDEFS_H)' \ - -e '/definition of _GL_ARG_NONNULL/r $(ARG_NONNULL_H)' \ - -e '/definition of _GL_WARN_ON_USE/r $(WARN_ON_USE_H)' \ - < $(srcdir)/dirent.in.h; \ - } > $@-t && \ - mv $@-t $@ - -# We need the following in order to create when the system -# doesn't have one that is POSIX compliant. -@GL_GENERATE_ERRNO_H_TRUE@errno.h: errno.in.h $(top_builddir)/config.status -@GL_GENERATE_ERRNO_H_TRUE@ $(AM_V_GEN)rm -f $@-t $@ && \ -@GL_GENERATE_ERRNO_H_TRUE@ { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */' && \ -@GL_GENERATE_ERRNO_H_TRUE@ sed -e 's|@''GUARD_PREFIX''@|GL|g' \ -@GL_GENERATE_ERRNO_H_TRUE@ -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ -@GL_GENERATE_ERRNO_H_TRUE@ -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ -@GL_GENERATE_ERRNO_H_TRUE@ -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \ -@GL_GENERATE_ERRNO_H_TRUE@ -e 's|@''NEXT_ERRNO_H''@|$(NEXT_ERRNO_H)|g' \ -@GL_GENERATE_ERRNO_H_TRUE@ -e 's|@''EMULTIHOP_HIDDEN''@|$(EMULTIHOP_HIDDEN)|g' \ -@GL_GENERATE_ERRNO_H_TRUE@ -e 's|@''EMULTIHOP_VALUE''@|$(EMULTIHOP_VALUE)|g' \ -@GL_GENERATE_ERRNO_H_TRUE@ -e 's|@''ENOLINK_HIDDEN''@|$(ENOLINK_HIDDEN)|g' \ -@GL_GENERATE_ERRNO_H_TRUE@ -e 's|@''ENOLINK_VALUE''@|$(ENOLINK_VALUE)|g' \ -@GL_GENERATE_ERRNO_H_TRUE@ -e 's|@''EOVERFLOW_HIDDEN''@|$(EOVERFLOW_HIDDEN)|g' \ -@GL_GENERATE_ERRNO_H_TRUE@ -e 's|@''EOVERFLOW_VALUE''@|$(EOVERFLOW_VALUE)|g' \ -@GL_GENERATE_ERRNO_H_TRUE@ < $(srcdir)/errno.in.h; \ -@GL_GENERATE_ERRNO_H_TRUE@ } > $@-t && \ -@GL_GENERATE_ERRNO_H_TRUE@ mv $@-t $@ -@GL_GENERATE_ERRNO_H_FALSE@errno.h: $(top_builddir)/config.status -@GL_GENERATE_ERRNO_H_FALSE@ rm -f $@ - -# We need the following in order to create when the system -# doesn't have one that works with the given compiler. -fcntl.h: fcntl.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H) $(WARN_ON_USE_H) - $(AM_V_GEN)rm -f $@-t $@ && \ - { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \ - sed -e 's|@''GUARD_PREFIX''@|GL|g' \ - -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ - -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ - -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \ - -e 's|@''NEXT_FCNTL_H''@|$(NEXT_FCNTL_H)|g' \ - -e 's/@''GNULIB_FCNTL''@/$(GNULIB_FCNTL)/g' \ - -e 's/@''GNULIB_NONBLOCKING''@/$(GNULIB_NONBLOCKING)/g' \ - -e 's/@''GNULIB_OPEN''@/$(GNULIB_OPEN)/g' \ - -e 's/@''GNULIB_OPENAT''@/$(GNULIB_OPENAT)/g' \ - -e 's|@''HAVE_FCNTL''@|$(HAVE_FCNTL)|g' \ - -e 's|@''HAVE_OPENAT''@|$(HAVE_OPENAT)|g' \ - -e 's|@''REPLACE_FCNTL''@|$(REPLACE_FCNTL)|g' \ - -e 's|@''REPLACE_OPEN''@|$(REPLACE_OPEN)|g' \ - -e 's|@''REPLACE_OPENAT''@|$(REPLACE_OPENAT)|g' \ - -e '/definitions of _GL_FUNCDECL_RPL/r $(CXXDEFS_H)' \ - -e '/definition of _GL_ARG_NONNULL/r $(ARG_NONNULL_H)' \ - -e '/definition of _GL_WARN_ON_USE/r $(WARN_ON_USE_H)' \ - < $(srcdir)/fcntl.in.h; \ - } > $@-t && \ - mv $@-t $@ - -# We need the following in order to create when the system -# doesn't have one that works with the given compiler. -@GL_GENERATE_FLOAT_H_TRUE@float.h: float.in.h $(top_builddir)/config.status -@GL_GENERATE_FLOAT_H_TRUE@ $(AM_V_GEN)rm -f $@-t $@ && \ -@GL_GENERATE_FLOAT_H_TRUE@ { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */' && \ -@GL_GENERATE_FLOAT_H_TRUE@ sed -e 's|@''GUARD_PREFIX''@|GL|g' \ -@GL_GENERATE_FLOAT_H_TRUE@ -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ -@GL_GENERATE_FLOAT_H_TRUE@ -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ -@GL_GENERATE_FLOAT_H_TRUE@ -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \ -@GL_GENERATE_FLOAT_H_TRUE@ -e 's|@''NEXT_FLOAT_H''@|$(NEXT_FLOAT_H)|g' \ -@GL_GENERATE_FLOAT_H_TRUE@ -e 's|@''REPLACE_ITOLD''@|$(REPLACE_ITOLD)|g' \ -@GL_GENERATE_FLOAT_H_TRUE@ < $(srcdir)/float.in.h; \ -@GL_GENERATE_FLOAT_H_TRUE@ } > $@-t && \ -@GL_GENERATE_FLOAT_H_TRUE@ mv $@-t $@ -@GL_GENERATE_FLOAT_H_FALSE@float.h: $(top_builddir)/config.status -@GL_GENERATE_FLOAT_H_FALSE@ rm -f $@ - -# We need the following in order to create . -@GL_GENERATE_FNMATCH_H_TRUE@fnmatch.h: fnmatch.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H) $(WARN_ON_USE_H) -@GL_GENERATE_FNMATCH_H_TRUE@ $(AM_V_GEN)rm -f $@-t $@ && \ -@GL_GENERATE_FNMATCH_H_TRUE@ { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */' && \ -@GL_GENERATE_FNMATCH_H_TRUE@ sed -e 's|@''GUARD_PREFIX''@|GL|g' \ -@GL_GENERATE_FNMATCH_H_TRUE@ -e 's|@''HAVE_FNMATCH_H''@|$(HAVE_FNMATCH_H)|g' \ -@GL_GENERATE_FNMATCH_H_TRUE@ -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ -@GL_GENERATE_FNMATCH_H_TRUE@ -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ -@GL_GENERATE_FNMATCH_H_TRUE@ -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \ -@GL_GENERATE_FNMATCH_H_TRUE@ -e 's|@''NEXT_FNMATCH_H''@|$(NEXT_FNMATCH_H)|g' \ -@GL_GENERATE_FNMATCH_H_TRUE@ -e 's/@''GNULIB_FNMATCH''@/$(GNULIB_FNMATCH)/g' \ -@GL_GENERATE_FNMATCH_H_TRUE@ -e 's|@''HAVE_FNMATCH''@|$(HAVE_FNMATCH)|g' \ -@GL_GENERATE_FNMATCH_H_TRUE@ -e 's|@''REPLACE_FNMATCH''@|$(REPLACE_FNMATCH)|g' \ -@GL_GENERATE_FNMATCH_H_TRUE@ -e '/definitions of _GL_FUNCDECL_RPL/r $(CXXDEFS_H)' \ -@GL_GENERATE_FNMATCH_H_TRUE@ -e '/definition of _GL_ARG_NONNULL/r $(ARG_NONNULL_H)' \ -@GL_GENERATE_FNMATCH_H_TRUE@ -e '/definition of _GL_WARN_ON_USE/r $(WARN_ON_USE_H)' \ -@GL_GENERATE_FNMATCH_H_TRUE@ < $(srcdir)/fnmatch.in.h; \ -@GL_GENERATE_FNMATCH_H_TRUE@ } > $@-t && \ -@GL_GENERATE_FNMATCH_H_TRUE@ mv $@-t $@ -@GL_GENERATE_FNMATCH_H_FALSE@fnmatch.h: $(top_builddir)/config.status -@GL_GENERATE_FNMATCH_H_FALSE@ rm -f $@ - -# We need the following in order to create when the system -# doesn't have one that works with the given compiler. -getopt.h: getopt.in.h $(top_builddir)/config.status $(ARG_NONNULL_H) - $(AM_V_GEN)rm -f $@-t $@ && \ - { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \ - sed -e 's|@''GUARD_PREFIX''@|GL|g' \ - -e 's|@''HAVE_GETOPT_H''@|$(HAVE_GETOPT_H)|g' \ - -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ - -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ - -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \ - -e 's|@''NEXT_GETOPT_H''@|$(NEXT_GETOPT_H)|g' \ - -e '/definition of _GL_ARG_NONNULL/r $(ARG_NONNULL_H)' \ - < $(srcdir)/getopt.in.h; \ - } > $@-t && \ - mv -f $@-t $@ - -getopt-cdefs.h: getopt-cdefs.in.h $(top_builddir)/config.status - $(AM_V_GEN)rm -f $@-t $@ && \ - { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \ - sed -e 's|@''HAVE_SYS_CDEFS_H''@|$(HAVE_SYS_CDEFS_H)|g' \ - < $(srcdir)/getopt-cdefs.in.h; \ - } > $@-t && \ - mv -f $@-t $@ - -# We need the following in order to create an empty placeholder for -# when the system doesn't have one. -langinfo.h: langinfo.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(WARN_ON_USE_H) - $(AM_V_GEN)rm -f $@-t $@ && \ - { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \ - sed -e 's|@''GUARD_PREFIX''@|GL|g' \ - -e 's|@''HAVE_LANGINFO_H''@|$(HAVE_LANGINFO_H)|g' \ - -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ - -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ - -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \ - -e 's|@''NEXT_LANGINFO_H''@|$(NEXT_LANGINFO_H)|g' \ - -e 's/@''GNULIB_NL_LANGINFO''@/$(GNULIB_NL_LANGINFO)/g' \ - -e 's|@''HAVE_LANGINFO_CODESET''@|$(HAVE_LANGINFO_CODESET)|g' \ - -e 's|@''HAVE_LANGINFO_T_FMT_AMPM''@|$(HAVE_LANGINFO_T_FMT_AMPM)|g' \ - -e 's|@''HAVE_LANGINFO_ALTMON''@|$(HAVE_LANGINFO_ALTMON)|g' \ - -e 's|@''HAVE_LANGINFO_ERA''@|$(HAVE_LANGINFO_ERA)|g' \ - -e 's|@''HAVE_LANGINFO_YESEXPR''@|$(HAVE_LANGINFO_YESEXPR)|g' \ - -e 's|@''HAVE_NL_LANGINFO''@|$(HAVE_NL_LANGINFO)|g' \ - -e 's|@''REPLACE_NL_LANGINFO''@|$(REPLACE_NL_LANGINFO)|g' \ - -e '/definitions of _GL_FUNCDECL_RPL/r $(CXXDEFS_H)' \ - -e '/definition of _GL_WARN_ON_USE/r $(WARN_ON_USE_H)' \ - < $(srcdir)/langinfo.in.h; \ - } > $@-t && \ - mv $@-t $@ - -# We need the following in order to create when the system -# doesn't have one that is compatible with GNU. -@GL_GENERATE_LIMITS_H_TRUE@limits.h: limits.in.h $(top_builddir)/config.status -@GL_GENERATE_LIMITS_H_TRUE@ $(AM_V_GEN)rm -f $@-t $@ && \ -@GL_GENERATE_LIMITS_H_TRUE@ { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */' && \ -@GL_GENERATE_LIMITS_H_TRUE@ sed -e 's|@''GUARD_PREFIX''@|GL|g' \ -@GL_GENERATE_LIMITS_H_TRUE@ -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ -@GL_GENERATE_LIMITS_H_TRUE@ -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ -@GL_GENERATE_LIMITS_H_TRUE@ -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \ -@GL_GENERATE_LIMITS_H_TRUE@ -e 's|@''NEXT_LIMITS_H''@|$(NEXT_LIMITS_H)|g' \ -@GL_GENERATE_LIMITS_H_TRUE@ < $(srcdir)/limits.in.h; \ -@GL_GENERATE_LIMITS_H_TRUE@ } > $@-t && \ -@GL_GENERATE_LIMITS_H_TRUE@ mv $@-t $@ -@GL_GENERATE_LIMITS_H_FALSE@limits.h: $(top_builddir)/config.status -@GL_GENERATE_LIMITS_H_FALSE@ rm -f $@ - -# We need the following in order to create when the system -# doesn't have one that provides all definitions. -locale.h: locale.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H) $(WARN_ON_USE_H) - $(AM_V_GEN)rm -f $@-t $@ && \ - { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */' && \ - sed -e 's|@''GUARD_PREFIX''@|GL|g' \ - -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ - -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ - -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \ - -e 's|@''NEXT_LOCALE_H''@|$(NEXT_LOCALE_H)|g' \ - -e 's/@''GNULIB_LOCALECONV''@/$(GNULIB_LOCALECONV)/g' \ - -e 's/@''GNULIB_SETLOCALE''@/$(GNULIB_SETLOCALE)/g' \ - -e 's/@''GNULIB_DUPLOCALE''@/$(GNULIB_DUPLOCALE)/g' \ - -e 's/@''GNULIB_LOCALENAME''@/$(GNULIB_LOCALENAME)/g' \ - -e 's|@''HAVE_NEWLOCALE''@|$(HAVE_NEWLOCALE)|g' \ - -e 's|@''HAVE_DUPLOCALE''@|$(HAVE_DUPLOCALE)|g' \ - -e 's|@''HAVE_FREELOCALE''@|$(HAVE_FREELOCALE)|g' \ - -e 's|@''HAVE_XLOCALE_H''@|$(HAVE_XLOCALE_H)|g' \ - -e 's|@''REPLACE_LOCALECONV''@|$(REPLACE_LOCALECONV)|g' \ - -e 's|@''REPLACE_SETLOCALE''@|$(REPLACE_SETLOCALE)|g' \ - -e 's|@''REPLACE_NEWLOCALE''@|$(REPLACE_NEWLOCALE)|g' \ - -e 's|@''REPLACE_DUPLOCALE''@|$(REPLACE_DUPLOCALE)|g' \ - -e 's|@''REPLACE_FREELOCALE''@|$(REPLACE_FREELOCALE)|g' \ - -e 's|@''REPLACE_STRUCT_LCONV''@|$(REPLACE_STRUCT_LCONV)|g' \ - -e '/definitions of _GL_FUNCDECL_RPL/r $(CXXDEFS_H)' \ - -e '/definition of _GL_ARG_NONNULL/r $(ARG_NONNULL_H)' \ - -e '/definition of _GL_WARN_ON_USE/r $(WARN_ON_USE_H)' \ - < $(srcdir)/locale.in.h; \ - } > $@-t && \ - mv $@-t $@ - -# We need the following in order to create when the system -# doesn't have one that works. -@GL_GENERATE_STDALIGN_H_TRUE@stdalign.h: stdalign.in.h $(top_builddir)/config.status -@GL_GENERATE_STDALIGN_H_TRUE@ $(AM_V_GEN)rm -f $@-t $@ && \ -@GL_GENERATE_STDALIGN_H_TRUE@ { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \ -@GL_GENERATE_STDALIGN_H_TRUE@ cat $(srcdir)/stdalign.in.h; \ -@GL_GENERATE_STDALIGN_H_TRUE@ } > $@-t && \ -@GL_GENERATE_STDALIGN_H_TRUE@ mv $@-t $@ -@GL_GENERATE_STDALIGN_H_FALSE@stdalign.h: $(top_builddir)/config.status -@GL_GENERATE_STDALIGN_H_FALSE@ rm -f $@ - -# We need the following in order to create when the system -# doesn't have one that works. -@GL_GENERATE_STDBOOL_H_TRUE@stdbool.h: stdbool.in.h $(top_builddir)/config.status -@GL_GENERATE_STDBOOL_H_TRUE@ $(AM_V_GEN)rm -f $@-t $@ && \ -@GL_GENERATE_STDBOOL_H_TRUE@ { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \ -@GL_GENERATE_STDBOOL_H_TRUE@ sed -e 's/@''HAVE__BOOL''@/$(HAVE__BOOL)/g' < $(srcdir)/stdbool.in.h; \ -@GL_GENERATE_STDBOOL_H_TRUE@ } > $@-t && \ -@GL_GENERATE_STDBOOL_H_TRUE@ mv $@-t $@ -@GL_GENERATE_STDBOOL_H_FALSE@stdbool.h: $(top_builddir)/config.status -@GL_GENERATE_STDBOOL_H_FALSE@ rm -f $@ - -# We need the following in order to create when the system -# doesn't have one that works with the given compiler. -@GL_GENERATE_STDDEF_H_TRUE@stddef.h: stddef.in.h $(top_builddir)/config.status -@GL_GENERATE_STDDEF_H_TRUE@ $(AM_V_GEN)rm -f $@-t $@ && \ -@GL_GENERATE_STDDEF_H_TRUE@ { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */' && \ -@GL_GENERATE_STDDEF_H_TRUE@ sed -e 's|@''GUARD_PREFIX''@|GL|g' \ -@GL_GENERATE_STDDEF_H_TRUE@ -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ -@GL_GENERATE_STDDEF_H_TRUE@ -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ -@GL_GENERATE_STDDEF_H_TRUE@ -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \ -@GL_GENERATE_STDDEF_H_TRUE@ -e 's|@''NEXT_STDDEF_H''@|$(NEXT_STDDEF_H)|g' \ -@GL_GENERATE_STDDEF_H_TRUE@ -e 's|@''HAVE_MAX_ALIGN_T''@|$(HAVE_MAX_ALIGN_T)|g' \ -@GL_GENERATE_STDDEF_H_TRUE@ -e 's|@''HAVE_WCHAR_T''@|$(HAVE_WCHAR_T)|g' \ -@GL_GENERATE_STDDEF_H_TRUE@ -e 's|@''REPLACE_NULL''@|$(REPLACE_NULL)|g' \ -@GL_GENERATE_STDDEF_H_TRUE@ < $(srcdir)/stddef.in.h; \ -@GL_GENERATE_STDDEF_H_TRUE@ } > $@-t && \ -@GL_GENERATE_STDDEF_H_TRUE@ mv $@-t $@ -@GL_GENERATE_STDDEF_H_FALSE@stddef.h: $(top_builddir)/config.status -@GL_GENERATE_STDDEF_H_FALSE@ rm -f $@ - -# We need the following in order to create when the system -# doesn't have one that works with the given compiler. -@GL_GENERATE_STDINT_H_TRUE@stdint.h: stdint.in.h $(top_builddir)/config.status -@GL_GENERATE_STDINT_H_TRUE@ $(AM_V_GEN)rm -f $@-t $@ && \ -@GL_GENERATE_STDINT_H_TRUE@ { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \ -@GL_GENERATE_STDINT_H_TRUE@ sed -e 's|@''GUARD_PREFIX''@|GL|g' \ -@GL_GENERATE_STDINT_H_TRUE@ -e 's/@''HAVE_STDINT_H''@/$(HAVE_STDINT_H)/g' \ -@GL_GENERATE_STDINT_H_TRUE@ -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ -@GL_GENERATE_STDINT_H_TRUE@ -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ -@GL_GENERATE_STDINT_H_TRUE@ -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \ -@GL_GENERATE_STDINT_H_TRUE@ -e 's|@''NEXT_STDINT_H''@|$(NEXT_STDINT_H)|g' \ -@GL_GENERATE_STDINT_H_TRUE@ -e 's/@''HAVE_C99_STDINT_H''@/$(HAVE_C99_STDINT_H)/g' \ -@GL_GENERATE_STDINT_H_TRUE@ -e 's/@''HAVE_SYS_TYPES_H''@/$(HAVE_SYS_TYPES_H)/g' \ -@GL_GENERATE_STDINT_H_TRUE@ -e 's/@''HAVE_INTTYPES_H''@/$(HAVE_INTTYPES_H)/g' \ -@GL_GENERATE_STDINT_H_TRUE@ -e 's/@''HAVE_SYS_INTTYPES_H''@/$(HAVE_SYS_INTTYPES_H)/g' \ -@GL_GENERATE_STDINT_H_TRUE@ -e 's/@''HAVE_SYS_BITYPES_H''@/$(HAVE_SYS_BITYPES_H)/g' \ -@GL_GENERATE_STDINT_H_TRUE@ -e 's/@''HAVE_WCHAR_H''@/$(HAVE_WCHAR_H)/g' \ -@GL_GENERATE_STDINT_H_TRUE@ -e 's/@''HAVE_LONG_LONG_INT''@/$(HAVE_LONG_LONG_INT)/g' \ -@GL_GENERATE_STDINT_H_TRUE@ -e 's/@''HAVE_UNSIGNED_LONG_LONG_INT''@/$(HAVE_UNSIGNED_LONG_LONG_INT)/g' \ -@GL_GENERATE_STDINT_H_TRUE@ -e 's/@''APPLE_UNIVERSAL_BUILD''@/$(APPLE_UNIVERSAL_BUILD)/g' \ -@GL_GENERATE_STDINT_H_TRUE@ -e 's/@''BITSIZEOF_PTRDIFF_T''@/$(BITSIZEOF_PTRDIFF_T)/g' \ -@GL_GENERATE_STDINT_H_TRUE@ -e 's/@''PTRDIFF_T_SUFFIX''@/$(PTRDIFF_T_SUFFIX)/g' \ -@GL_GENERATE_STDINT_H_TRUE@ -e 's/@''BITSIZEOF_SIG_ATOMIC_T''@/$(BITSIZEOF_SIG_ATOMIC_T)/g' \ -@GL_GENERATE_STDINT_H_TRUE@ -e 's/@''HAVE_SIGNED_SIG_ATOMIC_T''@/$(HAVE_SIGNED_SIG_ATOMIC_T)/g' \ -@GL_GENERATE_STDINT_H_TRUE@ -e 's/@''SIG_ATOMIC_T_SUFFIX''@/$(SIG_ATOMIC_T_SUFFIX)/g' \ -@GL_GENERATE_STDINT_H_TRUE@ -e 's/@''BITSIZEOF_SIZE_T''@/$(BITSIZEOF_SIZE_T)/g' \ -@GL_GENERATE_STDINT_H_TRUE@ -e 's/@''SIZE_T_SUFFIX''@/$(SIZE_T_SUFFIX)/g' \ -@GL_GENERATE_STDINT_H_TRUE@ -e 's/@''BITSIZEOF_WCHAR_T''@/$(BITSIZEOF_WCHAR_T)/g' \ -@GL_GENERATE_STDINT_H_TRUE@ -e 's/@''HAVE_SIGNED_WCHAR_T''@/$(HAVE_SIGNED_WCHAR_T)/g' \ -@GL_GENERATE_STDINT_H_TRUE@ -e 's/@''WCHAR_T_SUFFIX''@/$(WCHAR_T_SUFFIX)/g' \ -@GL_GENERATE_STDINT_H_TRUE@ -e 's/@''BITSIZEOF_WINT_T''@/$(BITSIZEOF_WINT_T)/g' \ -@GL_GENERATE_STDINT_H_TRUE@ -e 's/@''HAVE_SIGNED_WINT_T''@/$(HAVE_SIGNED_WINT_T)/g' \ -@GL_GENERATE_STDINT_H_TRUE@ -e 's/@''WINT_T_SUFFIX''@/$(WINT_T_SUFFIX)/g' \ -@GL_GENERATE_STDINT_H_TRUE@ -e 's/@''GNULIB_OVERRIDES_WINT_T''@/$(GNULIB_OVERRIDES_WINT_T)/g' \ -@GL_GENERATE_STDINT_H_TRUE@ < $(srcdir)/stdint.in.h; \ -@GL_GENERATE_STDINT_H_TRUE@ } > $@-t && \ -@GL_GENERATE_STDINT_H_TRUE@ mv $@-t $@ -@GL_GENERATE_STDINT_H_FALSE@stdint.h: $(top_builddir)/config.status -@GL_GENERATE_STDINT_H_FALSE@ rm -f $@ - -# We need the following in order to create when the system -# doesn't have one that works with the given compiler. -stdio.h: stdio.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H) $(WARN_ON_USE_H) - $(AM_V_GEN)rm -f $@-t $@ && \ - { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */' && \ - sed -e 's|@''GUARD_PREFIX''@|GL|g' \ - -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ - -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ - -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \ - -e 's|@''NEXT_STDIO_H''@|$(NEXT_STDIO_H)|g' \ - -e 's/@''GNULIB_DPRINTF''@/$(GNULIB_DPRINTF)/g' \ - -e 's/@''GNULIB_FCLOSE''@/$(GNULIB_FCLOSE)/g' \ - -e 's/@''GNULIB_FDOPEN''@/$(GNULIB_FDOPEN)/g' \ - -e 's/@''GNULIB_FFLUSH''@/$(GNULIB_FFLUSH)/g' \ - -e 's/@''GNULIB_FGETC''@/$(GNULIB_FGETC)/g' \ - -e 's/@''GNULIB_FGETS''@/$(GNULIB_FGETS)/g' \ - -e 's/@''GNULIB_FOPEN''@/$(GNULIB_FOPEN)/g' \ - -e 's/@''GNULIB_FPRINTF''@/$(GNULIB_FPRINTF)/g' \ - -e 's/@''GNULIB_FPRINTF_POSIX''@/$(GNULIB_FPRINTF_POSIX)/g' \ - -e 's/@''GNULIB_FPURGE''@/$(GNULIB_FPURGE)/g' \ - -e 's/@''GNULIB_FPUTC''@/$(GNULIB_FPUTC)/g' \ - -e 's/@''GNULIB_FPUTS''@/$(GNULIB_FPUTS)/g' \ - -e 's/@''GNULIB_FREAD''@/$(GNULIB_FREAD)/g' \ - -e 's/@''GNULIB_FREOPEN''@/$(GNULIB_FREOPEN)/g' \ - -e 's/@''GNULIB_FSCANF''@/$(GNULIB_FSCANF)/g' \ - -e 's/@''GNULIB_FSEEK''@/$(GNULIB_FSEEK)/g' \ - -e 's/@''GNULIB_FSEEKO''@/$(GNULIB_FSEEKO)/g' \ - -e 's/@''GNULIB_FTELL''@/$(GNULIB_FTELL)/g' \ - -e 's/@''GNULIB_FTELLO''@/$(GNULIB_FTELLO)/g' \ - -e 's/@''GNULIB_FWRITE''@/$(GNULIB_FWRITE)/g' \ - -e 's/@''GNULIB_GETC''@/$(GNULIB_GETC)/g' \ - -e 's/@''GNULIB_GETCHAR''@/$(GNULIB_GETCHAR)/g' \ - -e 's/@''GNULIB_GETDELIM''@/$(GNULIB_GETDELIM)/g' \ - -e 's/@''GNULIB_GETLINE''@/$(GNULIB_GETLINE)/g' \ - -e 's/@''GNULIB_OBSTACK_PRINTF''@/$(GNULIB_OBSTACK_PRINTF)/g' \ - -e 's/@''GNULIB_OBSTACK_PRINTF_POSIX''@/$(GNULIB_OBSTACK_PRINTF_POSIX)/g' \ - -e 's/@''GNULIB_PCLOSE''@/$(GNULIB_PCLOSE)/g' \ - -e 's/@''GNULIB_PERROR''@/$(GNULIB_PERROR)/g' \ - -e 's/@''GNULIB_POPEN''@/$(GNULIB_POPEN)/g' \ - -e 's/@''GNULIB_PRINTF''@/$(GNULIB_PRINTF)/g' \ - -e 's/@''GNULIB_PRINTF_POSIX''@/$(GNULIB_PRINTF_POSIX)/g' \ - -e 's/@''GNULIB_PUTC''@/$(GNULIB_PUTC)/g' \ - -e 's/@''GNULIB_PUTCHAR''@/$(GNULIB_PUTCHAR)/g' \ - -e 's/@''GNULIB_PUTS''@/$(GNULIB_PUTS)/g' \ - -e 's/@''GNULIB_REMOVE''@/$(GNULIB_REMOVE)/g' \ - -e 's/@''GNULIB_RENAME''@/$(GNULIB_RENAME)/g' \ - -e 's/@''GNULIB_RENAMEAT''@/$(GNULIB_RENAMEAT)/g' \ - -e 's/@''GNULIB_SCANF''@/$(GNULIB_SCANF)/g' \ - -e 's/@''GNULIB_SNPRINTF''@/$(GNULIB_SNPRINTF)/g' \ - -e 's/@''GNULIB_SPRINTF_POSIX''@/$(GNULIB_SPRINTF_POSIX)/g' \ - -e 's/@''GNULIB_STDIO_H_NONBLOCKING''@/$(GNULIB_STDIO_H_NONBLOCKING)/g' \ - -e 's/@''GNULIB_STDIO_H_SIGPIPE''@/$(GNULIB_STDIO_H_SIGPIPE)/g' \ - -e 's/@''GNULIB_TMPFILE''@/$(GNULIB_TMPFILE)/g' \ - -e 's/@''GNULIB_VASPRINTF''@/$(GNULIB_VASPRINTF)/g' \ - -e 's/@''GNULIB_VDPRINTF''@/$(GNULIB_VDPRINTF)/g' \ - -e 's/@''GNULIB_VFPRINTF''@/$(GNULIB_VFPRINTF)/g' \ - -e 's/@''GNULIB_VFPRINTF_POSIX''@/$(GNULIB_VFPRINTF_POSIX)/g' \ - -e 's/@''GNULIB_VFSCANF''@/$(GNULIB_VFSCANF)/g' \ - -e 's/@''GNULIB_VSCANF''@/$(GNULIB_VSCANF)/g' \ - -e 's/@''GNULIB_VPRINTF''@/$(GNULIB_VPRINTF)/g' \ - -e 's/@''GNULIB_VPRINTF_POSIX''@/$(GNULIB_VPRINTF_POSIX)/g' \ - -e 's/@''GNULIB_VSNPRINTF''@/$(GNULIB_VSNPRINTF)/g' \ - -e 's/@''GNULIB_VSPRINTF_POSIX''@/$(GNULIB_VSPRINTF_POSIX)/g' \ - < $(srcdir)/stdio.in.h | \ - sed -e 's|@''HAVE_DECL_FPURGE''@|$(HAVE_DECL_FPURGE)|g' \ - -e 's|@''HAVE_DECL_FSEEKO''@|$(HAVE_DECL_FSEEKO)|g' \ - -e 's|@''HAVE_DECL_FTELLO''@|$(HAVE_DECL_FTELLO)|g' \ - -e 's|@''HAVE_DECL_GETDELIM''@|$(HAVE_DECL_GETDELIM)|g' \ - -e 's|@''HAVE_DECL_GETLINE''@|$(HAVE_DECL_GETLINE)|g' \ - -e 's|@''HAVE_DECL_OBSTACK_PRINTF''@|$(HAVE_DECL_OBSTACK_PRINTF)|g' \ - -e 's|@''HAVE_DECL_SNPRINTF''@|$(HAVE_DECL_SNPRINTF)|g' \ - -e 's|@''HAVE_DECL_VSNPRINTF''@|$(HAVE_DECL_VSNPRINTF)|g' \ - -e 's|@''HAVE_DPRINTF''@|$(HAVE_DPRINTF)|g' \ - -e 's|@''HAVE_FSEEKO''@|$(HAVE_FSEEKO)|g' \ - -e 's|@''HAVE_FTELLO''@|$(HAVE_FTELLO)|g' \ - -e 's|@''HAVE_PCLOSE''@|$(HAVE_PCLOSE)|g' \ - -e 's|@''HAVE_POPEN''@|$(HAVE_POPEN)|g' \ - -e 's|@''HAVE_RENAMEAT''@|$(HAVE_RENAMEAT)|g' \ - -e 's|@''HAVE_VASPRINTF''@|$(HAVE_VASPRINTF)|g' \ - -e 's|@''HAVE_VDPRINTF''@|$(HAVE_VDPRINTF)|g' \ - -e 's|@''REPLACE_DPRINTF''@|$(REPLACE_DPRINTF)|g' \ - -e 's|@''REPLACE_FCLOSE''@|$(REPLACE_FCLOSE)|g' \ - -e 's|@''REPLACE_FDOPEN''@|$(REPLACE_FDOPEN)|g' \ - -e 's|@''REPLACE_FFLUSH''@|$(REPLACE_FFLUSH)|g' \ - -e 's|@''REPLACE_FOPEN''@|$(REPLACE_FOPEN)|g' \ - -e 's|@''REPLACE_FPRINTF''@|$(REPLACE_FPRINTF)|g' \ - -e 's|@''REPLACE_FPURGE''@|$(REPLACE_FPURGE)|g' \ - -e 's|@''REPLACE_FREOPEN''@|$(REPLACE_FREOPEN)|g' \ - -e 's|@''REPLACE_FSEEK''@|$(REPLACE_FSEEK)|g' \ - -e 's|@''REPLACE_FSEEKO''@|$(REPLACE_FSEEKO)|g' \ - -e 's|@''REPLACE_FTELL''@|$(REPLACE_FTELL)|g' \ - -e 's|@''REPLACE_FTELLO''@|$(REPLACE_FTELLO)|g' \ - -e 's|@''REPLACE_GETDELIM''@|$(REPLACE_GETDELIM)|g' \ - -e 's|@''REPLACE_GETLINE''@|$(REPLACE_GETLINE)|g' \ - -e 's|@''REPLACE_OBSTACK_PRINTF''@|$(REPLACE_OBSTACK_PRINTF)|g' \ - -e 's|@''REPLACE_PERROR''@|$(REPLACE_PERROR)|g' \ - -e 's|@''REPLACE_POPEN''@|$(REPLACE_POPEN)|g' \ - -e 's|@''REPLACE_PRINTF''@|$(REPLACE_PRINTF)|g' \ - -e 's|@''REPLACE_REMOVE''@|$(REPLACE_REMOVE)|g' \ - -e 's|@''REPLACE_RENAME''@|$(REPLACE_RENAME)|g' \ - -e 's|@''REPLACE_RENAMEAT''@|$(REPLACE_RENAMEAT)|g' \ - -e 's|@''REPLACE_SNPRINTF''@|$(REPLACE_SNPRINTF)|g' \ - -e 's|@''REPLACE_SPRINTF''@|$(REPLACE_SPRINTF)|g' \ - -e 's|@''REPLACE_STDIO_READ_FUNCS''@|$(REPLACE_STDIO_READ_FUNCS)|g' \ - -e 's|@''REPLACE_STDIO_WRITE_FUNCS''@|$(REPLACE_STDIO_WRITE_FUNCS)|g' \ - -e 's|@''REPLACE_TMPFILE''@|$(REPLACE_TMPFILE)|g' \ - -e 's|@''REPLACE_VASPRINTF''@|$(REPLACE_VASPRINTF)|g' \ - -e 's|@''REPLACE_VDPRINTF''@|$(REPLACE_VDPRINTF)|g' \ - -e 's|@''REPLACE_VFPRINTF''@|$(REPLACE_VFPRINTF)|g' \ - -e 's|@''REPLACE_VPRINTF''@|$(REPLACE_VPRINTF)|g' \ - -e 's|@''REPLACE_VSNPRINTF''@|$(REPLACE_VSNPRINTF)|g' \ - -e 's|@''REPLACE_VSPRINTF''@|$(REPLACE_VSPRINTF)|g' \ - -e 's|@''ASM_SYMBOL_PREFIX''@|$(ASM_SYMBOL_PREFIX)|g' \ - -e '/definitions of _GL_FUNCDECL_RPL/r $(CXXDEFS_H)' \ - -e '/definition of _GL_ARG_NONNULL/r $(ARG_NONNULL_H)' \ - -e '/definition of _GL_WARN_ON_USE/r $(WARN_ON_USE_H)'; \ - } > $@-t && \ - mv $@-t $@ - -# We need the following in order to create when the system -# doesn't have one that works with the given compiler. -stdlib.h: stdlib.in.h $(top_builddir)/config.status $(CXXDEFS_H) \ - $(_NORETURN_H) $(ARG_NONNULL_H) $(WARN_ON_USE_H) - $(AM_V_GEN)rm -f $@-t $@ && \ - { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */' && \ - sed -e 's|@''GUARD_PREFIX''@|GL|g' \ - -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ - -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ - -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \ - -e 's|@''NEXT_STDLIB_H''@|$(NEXT_STDLIB_H)|g' \ - -e 's/@''GNULIB__EXIT''@/$(GNULIB__EXIT)/g' \ - -e 's/@''GNULIB_ATOLL''@/$(GNULIB_ATOLL)/g' \ - -e 's/@''GNULIB_CALLOC_POSIX''@/$(GNULIB_CALLOC_POSIX)/g' \ - -e 's/@''GNULIB_CANONICALIZE_FILE_NAME''@/$(GNULIB_CANONICALIZE_FILE_NAME)/g' \ - -e 's/@''GNULIB_GETLOADAVG''@/$(GNULIB_GETLOADAVG)/g' \ - -e 's/@''GNULIB_GETSUBOPT''@/$(GNULIB_GETSUBOPT)/g' \ - -e 's/@''GNULIB_GRANTPT''@/$(GNULIB_GRANTPT)/g' \ - -e 's/@''GNULIB_MALLOC_POSIX''@/$(GNULIB_MALLOC_POSIX)/g' \ - -e 's/@''GNULIB_MBTOWC''@/$(GNULIB_MBTOWC)/g' \ - -e 's/@''GNULIB_MKDTEMP''@/$(GNULIB_MKDTEMP)/g' \ - -e 's/@''GNULIB_MKOSTEMP''@/$(GNULIB_MKOSTEMP)/g' \ - -e 's/@''GNULIB_MKOSTEMPS''@/$(GNULIB_MKOSTEMPS)/g' \ - -e 's/@''GNULIB_MKSTEMP''@/$(GNULIB_MKSTEMP)/g' \ - -e 's/@''GNULIB_MKSTEMPS''@/$(GNULIB_MKSTEMPS)/g' \ - -e 's/@''GNULIB_POSIX_OPENPT''@/$(GNULIB_POSIX_OPENPT)/g' \ - -e 's/@''GNULIB_PTSNAME''@/$(GNULIB_PTSNAME)/g' \ - -e 's/@''GNULIB_PTSNAME_R''@/$(GNULIB_PTSNAME_R)/g' \ - -e 's/@''GNULIB_PUTENV''@/$(GNULIB_PUTENV)/g' \ - -e 's/@''GNULIB_QSORT_R''@/$(GNULIB_QSORT_R)/g' \ - -e 's/@''GNULIB_RANDOM''@/$(GNULIB_RANDOM)/g' \ - -e 's/@''GNULIB_RANDOM_R''@/$(GNULIB_RANDOM_R)/g' \ - -e 's/@''GNULIB_REALLOC_POSIX''@/$(GNULIB_REALLOC_POSIX)/g' \ - -e 's/@''GNULIB_REALLOCARRAY''@/$(GNULIB_REALLOCARRAY)/g' \ - -e 's/@''GNULIB_REALPATH''@/$(GNULIB_REALPATH)/g' \ - -e 's/@''GNULIB_RPMATCH''@/$(GNULIB_RPMATCH)/g' \ - -e 's/@''GNULIB_SECURE_GETENV''@/$(GNULIB_SECURE_GETENV)/g' \ - -e 's/@''GNULIB_SETENV''@/$(GNULIB_SETENV)/g' \ - -e 's/@''GNULIB_STRTOD''@/$(GNULIB_STRTOD)/g' \ - -e 's/@''GNULIB_STRTOLL''@/$(GNULIB_STRTOLL)/g' \ - -e 's/@''GNULIB_STRTOULL''@/$(GNULIB_STRTOULL)/g' \ - -e 's/@''GNULIB_SYSTEM_POSIX''@/$(GNULIB_SYSTEM_POSIX)/g' \ - -e 's/@''GNULIB_UNLOCKPT''@/$(GNULIB_UNLOCKPT)/g' \ - -e 's/@''GNULIB_UNSETENV''@/$(GNULIB_UNSETENV)/g' \ - -e 's/@''GNULIB_WCTOMB''@/$(GNULIB_WCTOMB)/g' \ - < $(srcdir)/stdlib.in.h | \ - sed -e 's|@''HAVE__EXIT''@|$(HAVE__EXIT)|g' \ - -e 's|@''HAVE_ATOLL''@|$(HAVE_ATOLL)|g' \ - -e 's|@''HAVE_CANONICALIZE_FILE_NAME''@|$(HAVE_CANONICALIZE_FILE_NAME)|g' \ - -e 's|@''HAVE_DECL_GETLOADAVG''@|$(HAVE_DECL_GETLOADAVG)|g' \ - -e 's|@''HAVE_GETSUBOPT''@|$(HAVE_GETSUBOPT)|g' \ - -e 's|@''HAVE_GRANTPT''@|$(HAVE_GRANTPT)|g' \ - -e 's|@''HAVE_DECL_INITSTATE''@|$(HAVE_DECL_INITSTATE)|g' \ - -e 's|@''HAVE_MKDTEMP''@|$(HAVE_MKDTEMP)|g' \ - -e 's|@''HAVE_MKOSTEMP''@|$(HAVE_MKOSTEMP)|g' \ - -e 's|@''HAVE_MKOSTEMPS''@|$(HAVE_MKOSTEMPS)|g' \ - -e 's|@''HAVE_MKSTEMP''@|$(HAVE_MKSTEMP)|g' \ - -e 's|@''HAVE_MKSTEMPS''@|$(HAVE_MKSTEMPS)|g' \ - -e 's|@''HAVE_POSIX_OPENPT''@|$(HAVE_POSIX_OPENPT)|g' \ - -e 's|@''HAVE_PTSNAME''@|$(HAVE_PTSNAME)|g' \ - -e 's|@''HAVE_PTSNAME_R''@|$(HAVE_PTSNAME_R)|g' \ - -e 's|@''HAVE_QSORT_R''@|$(HAVE_QSORT_R)|g' \ - -e 's|@''HAVE_RANDOM''@|$(HAVE_RANDOM)|g' \ - -e 's|@''HAVE_RANDOM_H''@|$(HAVE_RANDOM_H)|g' \ - -e 's|@''HAVE_RANDOM_R''@|$(HAVE_RANDOM_R)|g' \ - -e 's|@''HAVE_REALLOCARRAY''@|$(HAVE_REALLOCARRAY)|g' \ - -e 's|@''HAVE_REALPATH''@|$(HAVE_REALPATH)|g' \ - -e 's|@''HAVE_RPMATCH''@|$(HAVE_RPMATCH)|g' \ - -e 's|@''HAVE_SECURE_GETENV''@|$(HAVE_SECURE_GETENV)|g' \ - -e 's|@''HAVE_DECL_SETENV''@|$(HAVE_DECL_SETENV)|g' \ - -e 's|@''HAVE_DECL_SETSTATE''@|$(HAVE_DECL_SETSTATE)|g' \ - -e 's|@''HAVE_STRTOD''@|$(HAVE_STRTOD)|g' \ - -e 's|@''HAVE_STRTOLL''@|$(HAVE_STRTOLL)|g' \ - -e 's|@''HAVE_STRTOULL''@|$(HAVE_STRTOULL)|g' \ - -e 's|@''HAVE_STRUCT_RANDOM_DATA''@|$(HAVE_STRUCT_RANDOM_DATA)|g' \ - -e 's|@''HAVE_SYS_LOADAVG_H''@|$(HAVE_SYS_LOADAVG_H)|g' \ - -e 's|@''HAVE_UNLOCKPT''@|$(HAVE_UNLOCKPT)|g' \ - -e 's|@''HAVE_DECL_UNSETENV''@|$(HAVE_DECL_UNSETENV)|g' \ - -e 's|@''REPLACE_CALLOC''@|$(REPLACE_CALLOC)|g' \ - -e 's|@''REPLACE_CANONICALIZE_FILE_NAME''@|$(REPLACE_CANONICALIZE_FILE_NAME)|g' \ - -e 's|@''REPLACE_MALLOC''@|$(REPLACE_MALLOC)|g' \ - -e 's|@''REPLACE_MBTOWC''@|$(REPLACE_MBTOWC)|g' \ - -e 's|@''REPLACE_MKSTEMP''@|$(REPLACE_MKSTEMP)|g' \ - -e 's|@''REPLACE_PTSNAME''@|$(REPLACE_PTSNAME)|g' \ - -e 's|@''REPLACE_PTSNAME_R''@|$(REPLACE_PTSNAME_R)|g' \ - -e 's|@''REPLACE_PUTENV''@|$(REPLACE_PUTENV)|g' \ - -e 's|@''REPLACE_QSORT_R''@|$(REPLACE_QSORT_R)|g' \ - -e 's|@''REPLACE_RANDOM_R''@|$(REPLACE_RANDOM_R)|g' \ - -e 's|@''REPLACE_REALLOC''@|$(REPLACE_REALLOC)|g' \ - -e 's|@''REPLACE_REALPATH''@|$(REPLACE_REALPATH)|g' \ - -e 's|@''REPLACE_SETENV''@|$(REPLACE_SETENV)|g' \ - -e 's|@''REPLACE_STRTOD''@|$(REPLACE_STRTOD)|g' \ - -e 's|@''REPLACE_UNSETENV''@|$(REPLACE_UNSETENV)|g' \ - -e 's|@''REPLACE_WCTOMB''@|$(REPLACE_WCTOMB)|g' \ - -e '/definitions of _GL_FUNCDECL_RPL/r $(CXXDEFS_H)' \ - -e '/definition of _Noreturn/r $(_NORETURN_H)' \ - -e '/definition of _GL_ARG_NONNULL/r $(ARG_NONNULL_H)' \ - -e '/definition of _GL_WARN_ON_USE/r $(WARN_ON_USE_H)'; \ - } > $@-t && \ - mv $@-t $@ - -# We need the following in order to create when the system -# doesn't have one that works with the given compiler. -string.h: string.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H) $(WARN_ON_USE_H) - $(AM_V_GEN)rm -f $@-t $@ && \ - { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */' && \ - sed -e 's|@''GUARD_PREFIX''@|GL|g' \ - -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ - -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ - -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \ - -e 's|@''NEXT_STRING_H''@|$(NEXT_STRING_H)|g' \ - -e 's/@''GNULIB_EXPLICIT_BZERO''@/$(GNULIB_EXPLICIT_BZERO)/g' \ - -e 's/@''GNULIB_FFSL''@/$(GNULIB_FFSL)/g' \ - -e 's/@''GNULIB_FFSLL''@/$(GNULIB_FFSLL)/g' \ - -e 's/@''GNULIB_MBSLEN''@/$(GNULIB_MBSLEN)/g' \ - -e 's/@''GNULIB_MBSNLEN''@/$(GNULIB_MBSNLEN)/g' \ - -e 's/@''GNULIB_MBSCHR''@/$(GNULIB_MBSCHR)/g' \ - -e 's/@''GNULIB_MBSRCHR''@/$(GNULIB_MBSRCHR)/g' \ - -e 's/@''GNULIB_MBSSTR''@/$(GNULIB_MBSSTR)/g' \ - -e 's/@''GNULIB_MBSCASECMP''@/$(GNULIB_MBSCASECMP)/g' \ - -e 's/@''GNULIB_MBSNCASECMP''@/$(GNULIB_MBSNCASECMP)/g' \ - -e 's/@''GNULIB_MBSPCASECMP''@/$(GNULIB_MBSPCASECMP)/g' \ - -e 's/@''GNULIB_MBSCASESTR''@/$(GNULIB_MBSCASESTR)/g' \ - -e 's/@''GNULIB_MBSCSPN''@/$(GNULIB_MBSCSPN)/g' \ - -e 's/@''GNULIB_MBSPBRK''@/$(GNULIB_MBSPBRK)/g' \ - -e 's/@''GNULIB_MBSSPN''@/$(GNULIB_MBSSPN)/g' \ - -e 's/@''GNULIB_MBSSEP''@/$(GNULIB_MBSSEP)/g' \ - -e 's/@''GNULIB_MBSTOK_R''@/$(GNULIB_MBSTOK_R)/g' \ - -e 's/@''GNULIB_MEMCHR''@/$(GNULIB_MEMCHR)/g' \ - -e 's/@''GNULIB_MEMMEM''@/$(GNULIB_MEMMEM)/g' \ - -e 's/@''GNULIB_MEMPCPY''@/$(GNULIB_MEMPCPY)/g' \ - -e 's/@''GNULIB_MEMRCHR''@/$(GNULIB_MEMRCHR)/g' \ - -e 's/@''GNULIB_RAWMEMCHR''@/$(GNULIB_RAWMEMCHR)/g' \ - -e 's/@''GNULIB_STPCPY''@/$(GNULIB_STPCPY)/g' \ - -e 's/@''GNULIB_STPNCPY''@/$(GNULIB_STPNCPY)/g' \ - -e 's/@''GNULIB_STRCHRNUL''@/$(GNULIB_STRCHRNUL)/g' \ - -e 's/@''GNULIB_STRDUP''@/$(GNULIB_STRDUP)/g' \ - -e 's/@''GNULIB_STRNCAT''@/$(GNULIB_STRNCAT)/g' \ - -e 's/@''GNULIB_STRNDUP''@/$(GNULIB_STRNDUP)/g' \ - -e 's/@''GNULIB_STRNLEN''@/$(GNULIB_STRNLEN)/g' \ - -e 's/@''GNULIB_STRPBRK''@/$(GNULIB_STRPBRK)/g' \ - -e 's/@''GNULIB_STRSEP''@/$(GNULIB_STRSEP)/g' \ - -e 's/@''GNULIB_STRSTR''@/$(GNULIB_STRSTR)/g' \ - -e 's/@''GNULIB_STRCASESTR''@/$(GNULIB_STRCASESTR)/g' \ - -e 's/@''GNULIB_STRTOK_R''@/$(GNULIB_STRTOK_R)/g' \ - -e 's/@''GNULIB_STRERROR''@/$(GNULIB_STRERROR)/g' \ - -e 's/@''GNULIB_STRERROR_R''@/$(GNULIB_STRERROR_R)/g' \ - -e 's/@''GNULIB_STRSIGNAL''@/$(GNULIB_STRSIGNAL)/g' \ - -e 's/@''GNULIB_STRVERSCMP''@/$(GNULIB_STRVERSCMP)/g' \ - < $(srcdir)/string.in.h | \ - sed -e 's|@''HAVE_EXPLICIT_BZERO''@|$(HAVE_EXPLICIT_BZERO)|g' \ - -e 's|@''HAVE_FFSL''@|$(HAVE_FFSL)|g' \ - -e 's|@''HAVE_FFSLL''@|$(HAVE_FFSLL)|g' \ - -e 's|@''HAVE_MBSLEN''@|$(HAVE_MBSLEN)|g' \ - -e 's|@''HAVE_MEMCHR''@|$(HAVE_MEMCHR)|g' \ - -e 's|@''HAVE_DECL_MEMMEM''@|$(HAVE_DECL_MEMMEM)|g' \ - -e 's|@''HAVE_MEMPCPY''@|$(HAVE_MEMPCPY)|g' \ - -e 's|@''HAVE_DECL_MEMRCHR''@|$(HAVE_DECL_MEMRCHR)|g' \ - -e 's|@''HAVE_RAWMEMCHR''@|$(HAVE_RAWMEMCHR)|g' \ - -e 's|@''HAVE_STPCPY''@|$(HAVE_STPCPY)|g' \ - -e 's|@''HAVE_STPNCPY''@|$(HAVE_STPNCPY)|g' \ - -e 's|@''HAVE_STRCHRNUL''@|$(HAVE_STRCHRNUL)|g' \ - -e 's|@''HAVE_DECL_STRDUP''@|$(HAVE_DECL_STRDUP)|g' \ - -e 's|@''HAVE_DECL_STRNDUP''@|$(HAVE_DECL_STRNDUP)|g' \ - -e 's|@''HAVE_DECL_STRNLEN''@|$(HAVE_DECL_STRNLEN)|g' \ - -e 's|@''HAVE_STRPBRK''@|$(HAVE_STRPBRK)|g' \ - -e 's|@''HAVE_STRSEP''@|$(HAVE_STRSEP)|g' \ - -e 's|@''HAVE_STRCASESTR''@|$(HAVE_STRCASESTR)|g' \ - -e 's|@''HAVE_DECL_STRTOK_R''@|$(HAVE_DECL_STRTOK_R)|g' \ - -e 's|@''HAVE_DECL_STRERROR_R''@|$(HAVE_DECL_STRERROR_R)|g' \ - -e 's|@''HAVE_DECL_STRSIGNAL''@|$(HAVE_DECL_STRSIGNAL)|g' \ - -e 's|@''HAVE_STRVERSCMP''@|$(HAVE_STRVERSCMP)|g' \ - -e 's|@''REPLACE_MEMCHR''@|$(REPLACE_MEMCHR)|g' \ - -e 's|@''REPLACE_MEMMEM''@|$(REPLACE_MEMMEM)|g' \ - -e 's|@''REPLACE_STPNCPY''@|$(REPLACE_STPNCPY)|g' \ - -e 's|@''REPLACE_STRCHRNUL''@|$(REPLACE_STRCHRNUL)|g' \ - -e 's|@''REPLACE_STRDUP''@|$(REPLACE_STRDUP)|g' \ - -e 's|@''REPLACE_STRNCAT''@|$(REPLACE_STRNCAT)|g' \ - -e 's|@''REPLACE_STRNDUP''@|$(REPLACE_STRNDUP)|g' \ - -e 's|@''REPLACE_STRNLEN''@|$(REPLACE_STRNLEN)|g' \ - -e 's|@''REPLACE_STRSTR''@|$(REPLACE_STRSTR)|g' \ - -e 's|@''REPLACE_STRCASESTR''@|$(REPLACE_STRCASESTR)|g' \ - -e 's|@''REPLACE_STRTOK_R''@|$(REPLACE_STRTOK_R)|g' \ - -e 's|@''REPLACE_STRERROR''@|$(REPLACE_STRERROR)|g' \ - -e 's|@''REPLACE_STRERROR_R''@|$(REPLACE_STRERROR_R)|g' \ - -e 's|@''REPLACE_STRSIGNAL''@|$(REPLACE_STRSIGNAL)|g' \ - -e 's|@''UNDEFINE_STRTOK_R''@|$(UNDEFINE_STRTOK_R)|g' \ - -e '/definitions of _GL_FUNCDECL_RPL/r $(CXXDEFS_H)' \ - -e '/definition of _GL_ARG_NONNULL/r $(ARG_NONNULL_H)' \ - -e '/definition of _GL_WARN_ON_USE/r $(WARN_ON_USE_H)'; \ - < $(srcdir)/string.in.h; \ - } > $@-t && \ - mv $@-t $@ - -# We need the following in order to create when the system -# doesn't have one that works with the given compiler. -strings.h: strings.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(WARN_ON_USE_H) $(ARG_NONNULL_H) - $(AM_V_GEN)rm -f $@-t $@ && \ - { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */' && \ - sed -e 's|@''GUARD_PREFIX''@|GL|g' \ - -e 's|@''HAVE_STRINGS_H''@|$(HAVE_STRINGS_H)|g' \ - -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ - -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ - -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \ - -e 's|@''NEXT_STRINGS_H''@|$(NEXT_STRINGS_H)|g' \ - -e 's/@''GNULIB_FFS''@/$(GNULIB_FFS)/g' \ - -e 's|@''HAVE_FFS''@|$(HAVE_FFS)|g' \ - -e 's|@''HAVE_STRCASECMP''@|$(HAVE_STRCASECMP)|g' \ - -e 's|@''HAVE_DECL_STRNCASECMP''@|$(HAVE_DECL_STRNCASECMP)|g' \ - -e '/definitions of _GL_FUNCDECL_RPL/r $(CXXDEFS_H)' \ - -e '/definition of _GL_ARG_NONNULL/r $(ARG_NONNULL_H)' \ - -e '/definition of _GL_WARN_ON_USE/r $(WARN_ON_USE_H)' \ - < $(srcdir)/strings.in.h; \ - } > $@-t && \ - mv $@-t $@ - -# We need the following in order to create when the system -# has one that is incomplete. -sys/stat.h: sys_stat.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H) $(WARN_ON_USE_H) - $(AM_V_at)$(MKDIR_P) sys - $(AM_V_GEN)rm -f $@-t $@ && \ - { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \ - sed -e 's|@''GUARD_PREFIX''@|GL|g' \ - -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ - -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ - -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \ - -e 's|@''NEXT_SYS_STAT_H''@|$(NEXT_SYS_STAT_H)|g' \ - -e 's|@''WINDOWS_64_BIT_ST_SIZE''@|$(WINDOWS_64_BIT_ST_SIZE)|g' \ - -e 's|@''WINDOWS_STAT_TIMESPEC''@|$(WINDOWS_STAT_TIMESPEC)|g' \ - -e 's/@''GNULIB_FCHMODAT''@/$(GNULIB_FCHMODAT)/g' \ - -e 's/@''GNULIB_FSTAT''@/$(GNULIB_FSTAT)/g' \ - -e 's/@''GNULIB_FSTATAT''@/$(GNULIB_FSTATAT)/g' \ - -e 's/@''GNULIB_FUTIMENS''@/$(GNULIB_FUTIMENS)/g' \ - -e 's/@''GNULIB_LCHMOD''@/$(GNULIB_LCHMOD)/g' \ - -e 's/@''GNULIB_LSTAT''@/$(GNULIB_LSTAT)/g' \ - -e 's/@''GNULIB_MKDIRAT''@/$(GNULIB_MKDIRAT)/g' \ - -e 's/@''GNULIB_MKFIFO''@/$(GNULIB_MKFIFO)/g' \ - -e 's/@''GNULIB_MKFIFOAT''@/$(GNULIB_MKFIFOAT)/g' \ - -e 's/@''GNULIB_MKNOD''@/$(GNULIB_MKNOD)/g' \ - -e 's/@''GNULIB_MKNODAT''@/$(GNULIB_MKNODAT)/g' \ - -e 's/@''GNULIB_STAT''@/$(GNULIB_STAT)/g' \ - -e 's/@''GNULIB_UTIMENSAT''@/$(GNULIB_UTIMENSAT)/g' \ - -e 's/@''GNULIB_OVERRIDES_STRUCT_STAT''@/$(GNULIB_OVERRIDES_STRUCT_STAT)/g' \ - -e 's|@''HAVE_FCHMODAT''@|$(HAVE_FCHMODAT)|g' \ - -e 's|@''HAVE_FSTATAT''@|$(HAVE_FSTATAT)|g' \ - -e 's|@''HAVE_FUTIMENS''@|$(HAVE_FUTIMENS)|g' \ - -e 's|@''HAVE_LCHMOD''@|$(HAVE_LCHMOD)|g' \ - -e 's|@''HAVE_LSTAT''@|$(HAVE_LSTAT)|g' \ - -e 's|@''HAVE_MKDIRAT''@|$(HAVE_MKDIRAT)|g' \ - -e 's|@''HAVE_MKFIFO''@|$(HAVE_MKFIFO)|g' \ - -e 's|@''HAVE_MKFIFOAT''@|$(HAVE_MKFIFOAT)|g' \ - -e 's|@''HAVE_MKNOD''@|$(HAVE_MKNOD)|g' \ - -e 's|@''HAVE_MKNODAT''@|$(HAVE_MKNODAT)|g' \ - -e 's|@''HAVE_UTIMENSAT''@|$(HAVE_UTIMENSAT)|g' \ - -e 's|@''REPLACE_FSTAT''@|$(REPLACE_FSTAT)|g' \ - -e 's|@''REPLACE_FSTATAT''@|$(REPLACE_FSTATAT)|g' \ - -e 's|@''REPLACE_FUTIMENS''@|$(REPLACE_FUTIMENS)|g' \ - -e 's|@''REPLACE_LSTAT''@|$(REPLACE_LSTAT)|g' \ - -e 's|@''REPLACE_MKDIR''@|$(REPLACE_MKDIR)|g' \ - -e 's|@''REPLACE_MKFIFO''@|$(REPLACE_MKFIFO)|g' \ - -e 's|@''REPLACE_MKNOD''@|$(REPLACE_MKNOD)|g' \ - -e 's|@''REPLACE_STAT''@|$(REPLACE_STAT)|g' \ - -e 's|@''REPLACE_UTIMENSAT''@|$(REPLACE_UTIMENSAT)|g' \ - -e '/definitions of _GL_FUNCDECL_RPL/r $(CXXDEFS_H)' \ - -e '/definition of _GL_ARG_NONNULL/r $(ARG_NONNULL_H)' \ - -e '/definition of _GL_WARN_ON_USE/r $(WARN_ON_USE_H)' \ - < $(srcdir)/sys_stat.in.h; \ - } > $@-t && \ - mv $@-t $@ - -# We need the following in order to create when the system -# doesn't have one that works with the given compiler. -sys/types.h: sys_types.in.h $(top_builddir)/config.status - $(AM_V_at)$(MKDIR_P) sys - $(AM_V_GEN)rm -f $@-t $@ && \ - { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \ - sed -e 's|@''GUARD_PREFIX''@|GL|g' \ - -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ - -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ - -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \ - -e 's|@''NEXT_SYS_TYPES_H''@|$(NEXT_SYS_TYPES_H)|g' \ - -e 's|@''WINDOWS_64_BIT_OFF_T''@|$(WINDOWS_64_BIT_OFF_T)|g' \ - -e 's|@''WINDOWS_STAT_INODES''@|$(WINDOWS_STAT_INODES)|g' \ - < $(srcdir)/sys_types.in.h; \ - } > $@-t && \ - mv $@-t $@ - -# We need the following in order to create when the system -# doesn't have one that works with the given compiler. -@GL_GENERATE_SYSEXITS_H_TRUE@sysexits.h: sysexits.in.h $(top_builddir)/config.status -@GL_GENERATE_SYSEXITS_H_TRUE@ $(AM_V_GEN)rm -f $@-t $@ && \ -@GL_GENERATE_SYSEXITS_H_TRUE@ { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \ -@GL_GENERATE_SYSEXITS_H_TRUE@ sed -e 's|@''GUARD_PREFIX''@|GL|g' \ -@GL_GENERATE_SYSEXITS_H_TRUE@ -e 's|@''HAVE_SYSEXITS_H''@|$(HAVE_SYSEXITS_H)|g' \ -@GL_GENERATE_SYSEXITS_H_TRUE@ -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ -@GL_GENERATE_SYSEXITS_H_TRUE@ -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ -@GL_GENERATE_SYSEXITS_H_TRUE@ -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \ -@GL_GENERATE_SYSEXITS_H_TRUE@ -e 's|@''NEXT_SYSEXITS_H''@|$(NEXT_SYSEXITS_H)|g' \ -@GL_GENERATE_SYSEXITS_H_TRUE@ < $(srcdir)/sysexits.in.h; \ -@GL_GENERATE_SYSEXITS_H_TRUE@ } > $@-t && \ -@GL_GENERATE_SYSEXITS_H_TRUE@ mv -f $@-t $@ -@GL_GENERATE_SYSEXITS_H_FALSE@sysexits.h: $(top_builddir)/config.status -@GL_GENERATE_SYSEXITS_H_FALSE@ rm -f $@ - -# We need the following in order to create when the system -# doesn't have one that works with the given compiler. -time.h: time.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H) $(WARN_ON_USE_H) - $(AM_V_GEN)rm -f $@-t $@ && \ - { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */' && \ - sed -e 's|@''GUARD_PREFIX''@|GL|g' \ - -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ - -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ - -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \ - -e 's|@''NEXT_TIME_H''@|$(NEXT_TIME_H)|g' \ - -e 's/@''GNULIB_CTIME''@/$(GNULIB_CTIME)/g' \ - -e 's/@''GNULIB_LOCALTIME''@/$(GNULIB_LOCALTIME)/g' \ - -e 's/@''GNULIB_MKTIME''@/$(GNULIB_MKTIME)/g' \ - -e 's/@''GNULIB_NANOSLEEP''@/$(GNULIB_NANOSLEEP)/g' \ - -e 's/@''GNULIB_STRFTIME''@/$(GNULIB_STRFTIME)/g' \ - -e 's/@''GNULIB_STRPTIME''@/$(GNULIB_STRPTIME)/g' \ - -e 's/@''GNULIB_TIMEGM''@/$(GNULIB_TIMEGM)/g' \ - -e 's/@''GNULIB_TIME_R''@/$(GNULIB_TIME_R)/g' \ - -e 's/@''GNULIB_TIME_RZ''@/$(GNULIB_TIME_RZ)/g' \ - -e 's/@''GNULIB_TZSET''@/$(GNULIB_TZSET)/g' \ - -e 's|@''HAVE_DECL_LOCALTIME_R''@|$(HAVE_DECL_LOCALTIME_R)|g' \ - -e 's|@''HAVE_NANOSLEEP''@|$(HAVE_NANOSLEEP)|g' \ - -e 's|@''HAVE_STRPTIME''@|$(HAVE_STRPTIME)|g' \ - -e 's|@''HAVE_TIMEGM''@|$(HAVE_TIMEGM)|g' \ - -e 's|@''HAVE_TIMEZONE_T''@|$(HAVE_TIMEZONE_T)|g' \ - -e 's|@''HAVE_TZSET''@|$(HAVE_TZSET)|g' \ - -e 's|@''REPLACE_CTIME''@|$(REPLACE_CTIME)|g' \ - -e 's|@''REPLACE_GMTIME''@|$(REPLACE_GMTIME)|g' \ - -e 's|@''REPLACE_LOCALTIME''@|$(REPLACE_LOCALTIME)|g' \ - -e 's|@''REPLACE_LOCALTIME_R''@|$(REPLACE_LOCALTIME_R)|g' \ - -e 's|@''REPLACE_MKTIME''@|$(REPLACE_MKTIME)|g' \ - -e 's|@''REPLACE_NANOSLEEP''@|$(REPLACE_NANOSLEEP)|g' \ - -e 's|@''REPLACE_STRFTIME''@|$(REPLACE_STRFTIME)|g' \ - -e 's|@''REPLACE_TIMEGM''@|$(REPLACE_TIMEGM)|g' \ - -e 's|@''REPLACE_TZSET''@|$(REPLACE_TZSET)|g' \ - -e 's|@''PTHREAD_H_DEFINES_STRUCT_TIMESPEC''@|$(PTHREAD_H_DEFINES_STRUCT_TIMESPEC)|g' \ - -e 's|@''SYS_TIME_H_DEFINES_STRUCT_TIMESPEC''@|$(SYS_TIME_H_DEFINES_STRUCT_TIMESPEC)|g' \ - -e 's|@''TIME_H_DEFINES_STRUCT_TIMESPEC''@|$(TIME_H_DEFINES_STRUCT_TIMESPEC)|g' \ - -e 's|@''UNISTD_H_DEFINES_STRUCT_TIMESPEC''@|$(UNISTD_H_DEFINES_STRUCT_TIMESPEC)|g' \ - -e '/definitions of _GL_FUNCDECL_RPL/r $(CXXDEFS_H)' \ - -e '/definition of _GL_ARG_NONNULL/r $(ARG_NONNULL_H)' \ - -e '/definition of _GL_WARN_ON_USE/r $(WARN_ON_USE_H)' \ - < $(srcdir)/time.in.h; \ - } > $@-t && \ - mv $@-t $@ - -# We need the following in order to create an empty placeholder for -# when the system doesn't have one. -unistd.h: unistd.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H) $(WARN_ON_USE_H) - $(AM_V_GEN)rm -f $@-t $@ && \ - { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \ - sed -e 's|@''GUARD_PREFIX''@|GL|g' \ - -e 's|@''HAVE_UNISTD_H''@|$(HAVE_UNISTD_H)|g' \ - -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ - -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ - -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \ - -e 's|@''NEXT_UNISTD_H''@|$(NEXT_UNISTD_H)|g' \ - -e 's|@''WINDOWS_64_BIT_OFF_T''@|$(WINDOWS_64_BIT_OFF_T)|g' \ - -e 's/@''GNULIB_CHDIR''@/$(GNULIB_CHDIR)/g' \ - -e 's/@''GNULIB_CHOWN''@/$(GNULIB_CHOWN)/g' \ - -e 's/@''GNULIB_CLOSE''@/$(GNULIB_CLOSE)/g' \ - -e 's/@''GNULIB_DUP''@/$(GNULIB_DUP)/g' \ - -e 's/@''GNULIB_DUP2''@/$(GNULIB_DUP2)/g' \ - -e 's/@''GNULIB_DUP3''@/$(GNULIB_DUP3)/g' \ - -e 's/@''GNULIB_ENVIRON''@/$(GNULIB_ENVIRON)/g' \ - -e 's/@''GNULIB_EUIDACCESS''@/$(GNULIB_EUIDACCESS)/g' \ - -e 's/@''GNULIB_FACCESSAT''@/$(GNULIB_FACCESSAT)/g' \ - -e 's/@''GNULIB_FCHDIR''@/$(GNULIB_FCHDIR)/g' \ - -e 's/@''GNULIB_FCHOWNAT''@/$(GNULIB_FCHOWNAT)/g' \ - -e 's/@''GNULIB_FDATASYNC''@/$(GNULIB_FDATASYNC)/g' \ - -e 's/@''GNULIB_FSYNC''@/$(GNULIB_FSYNC)/g' \ - -e 's/@''GNULIB_FTRUNCATE''@/$(GNULIB_FTRUNCATE)/g' \ - -e 's/@''GNULIB_GETCWD''@/$(GNULIB_GETCWD)/g' \ - -e 's/@''GNULIB_GETDOMAINNAME''@/$(GNULIB_GETDOMAINNAME)/g' \ - -e 's/@''GNULIB_GETDTABLESIZE''@/$(GNULIB_GETDTABLESIZE)/g' \ - -e 's/@''GNULIB_GETGROUPS''@/$(GNULIB_GETGROUPS)/g' \ - -e 's/@''GNULIB_GETHOSTNAME''@/$(GNULIB_GETHOSTNAME)/g' \ - -e 's/@''GNULIB_GETLOGIN''@/$(GNULIB_GETLOGIN)/g' \ - -e 's/@''GNULIB_GETLOGIN_R''@/$(GNULIB_GETLOGIN_R)/g' \ - -e 's/@''GNULIB_GETPAGESIZE''@/$(GNULIB_GETPAGESIZE)/g' \ - -e 's/@''GNULIB_GETPASS''@/$(GNULIB_GETPASS)/g' \ - -e 's/@''GNULIB_GETUSERSHELL''@/$(GNULIB_GETUSERSHELL)/g' \ - -e 's/@''GNULIB_GROUP_MEMBER''@/$(GNULIB_GROUP_MEMBER)/g' \ - -e 's/@''GNULIB_ISATTY''@/$(GNULIB_ISATTY)/g' \ - -e 's/@''GNULIB_LCHOWN''@/$(GNULIB_LCHOWN)/g' \ - -e 's/@''GNULIB_LINK''@/$(GNULIB_LINK)/g' \ - -e 's/@''GNULIB_LINKAT''@/$(GNULIB_LINKAT)/g' \ - -e 's/@''GNULIB_LSEEK''@/$(GNULIB_LSEEK)/g' \ - -e 's/@''GNULIB_PIPE''@/$(GNULIB_PIPE)/g' \ - -e 's/@''GNULIB_PIPE2''@/$(GNULIB_PIPE2)/g' \ - -e 's/@''GNULIB_PREAD''@/$(GNULIB_PREAD)/g' \ - -e 's/@''GNULIB_PWRITE''@/$(GNULIB_PWRITE)/g' \ - -e 's/@''GNULIB_READ''@/$(GNULIB_READ)/g' \ - -e 's/@''GNULIB_READLINK''@/$(GNULIB_READLINK)/g' \ - -e 's/@''GNULIB_READLINKAT''@/$(GNULIB_READLINKAT)/g' \ - -e 's/@''GNULIB_RMDIR''@/$(GNULIB_RMDIR)/g' \ - -e 's/@''GNULIB_SETHOSTNAME''@/$(GNULIB_SETHOSTNAME)/g' \ - -e 's/@''GNULIB_SLEEP''@/$(GNULIB_SLEEP)/g' \ - -e 's/@''GNULIB_SYMLINK''@/$(GNULIB_SYMLINK)/g' \ - -e 's/@''GNULIB_SYMLINKAT''@/$(GNULIB_SYMLINKAT)/g' \ - -e 's/@''GNULIB_TRUNCATE''@/$(GNULIB_TRUNCATE)/g' \ - -e 's/@''GNULIB_TTYNAME_R''@/$(GNULIB_TTYNAME_R)/g' \ - -e 's/@''GNULIB_UNISTD_H_GETOPT''@/0$(GNULIB_GL_UNISTD_H_GETOPT)/g' \ - -e 's/@''GNULIB_UNISTD_H_NONBLOCKING''@/$(GNULIB_UNISTD_H_NONBLOCKING)/g' \ - -e 's/@''GNULIB_UNISTD_H_SIGPIPE''@/$(GNULIB_UNISTD_H_SIGPIPE)/g' \ - -e 's/@''GNULIB_UNLINK''@/$(GNULIB_UNLINK)/g' \ - -e 's/@''GNULIB_UNLINKAT''@/$(GNULIB_UNLINKAT)/g' \ - -e 's/@''GNULIB_USLEEP''@/$(GNULIB_USLEEP)/g' \ - -e 's/@''GNULIB_WRITE''@/$(GNULIB_WRITE)/g' \ - < $(srcdir)/unistd.in.h | \ - sed -e 's|@''HAVE_CHOWN''@|$(HAVE_CHOWN)|g' \ - -e 's|@''HAVE_DUP2''@|$(HAVE_DUP2)|g' \ - -e 's|@''HAVE_DUP3''@|$(HAVE_DUP3)|g' \ - -e 's|@''HAVE_EUIDACCESS''@|$(HAVE_EUIDACCESS)|g' \ - -e 's|@''HAVE_FACCESSAT''@|$(HAVE_FACCESSAT)|g' \ - -e 's|@''HAVE_FCHDIR''@|$(HAVE_FCHDIR)|g' \ - -e 's|@''HAVE_FCHOWNAT''@|$(HAVE_FCHOWNAT)|g' \ - -e 's|@''HAVE_FDATASYNC''@|$(HAVE_FDATASYNC)|g' \ - -e 's|@''HAVE_FSYNC''@|$(HAVE_FSYNC)|g' \ - -e 's|@''HAVE_FTRUNCATE''@|$(HAVE_FTRUNCATE)|g' \ - -e 's|@''HAVE_GETDTABLESIZE''@|$(HAVE_GETDTABLESIZE)|g' \ - -e 's|@''HAVE_GETGROUPS''@|$(HAVE_GETGROUPS)|g' \ - -e 's|@''HAVE_GETHOSTNAME''@|$(HAVE_GETHOSTNAME)|g' \ - -e 's|@''HAVE_GETPAGESIZE''@|$(HAVE_GETPAGESIZE)|g' \ - -e 's|@''HAVE_GETPASS''@|$(HAVE_GETPASS)|g' \ - -e 's|@''HAVE_GROUP_MEMBER''@|$(HAVE_GROUP_MEMBER)|g' \ - -e 's|@''HAVE_LCHOWN''@|$(HAVE_LCHOWN)|g' \ - -e 's|@''HAVE_LINK''@|$(HAVE_LINK)|g' \ - -e 's|@''HAVE_LINKAT''@|$(HAVE_LINKAT)|g' \ - -e 's|@''HAVE_PIPE''@|$(HAVE_PIPE)|g' \ - -e 's|@''HAVE_PIPE2''@|$(HAVE_PIPE2)|g' \ - -e 's|@''HAVE_PREAD''@|$(HAVE_PREAD)|g' \ - -e 's|@''HAVE_PWRITE''@|$(HAVE_PWRITE)|g' \ - -e 's|@''HAVE_READLINK''@|$(HAVE_READLINK)|g' \ - -e 's|@''HAVE_READLINKAT''@|$(HAVE_READLINKAT)|g' \ - -e 's|@''HAVE_SETHOSTNAME''@|$(HAVE_SETHOSTNAME)|g' \ - -e 's|@''HAVE_SLEEP''@|$(HAVE_SLEEP)|g' \ - -e 's|@''HAVE_SYMLINK''@|$(HAVE_SYMLINK)|g' \ - -e 's|@''HAVE_SYMLINKAT''@|$(HAVE_SYMLINKAT)|g' \ - -e 's|@''HAVE_UNLINKAT''@|$(HAVE_UNLINKAT)|g' \ - -e 's|@''HAVE_USLEEP''@|$(HAVE_USLEEP)|g' \ - -e 's|@''HAVE_DECL_ENVIRON''@|$(HAVE_DECL_ENVIRON)|g' \ - -e 's|@''HAVE_DECL_FCHDIR''@|$(HAVE_DECL_FCHDIR)|g' \ - -e 's|@''HAVE_DECL_FDATASYNC''@|$(HAVE_DECL_FDATASYNC)|g' \ - -e 's|@''HAVE_DECL_GETDOMAINNAME''@|$(HAVE_DECL_GETDOMAINNAME)|g' \ - -e 's|@''HAVE_DECL_GETLOGIN''@|$(HAVE_DECL_GETLOGIN)|g' \ - -e 's|@''HAVE_DECL_GETLOGIN_R''@|$(HAVE_DECL_GETLOGIN_R)|g' \ - -e 's|@''HAVE_DECL_GETPAGESIZE''@|$(HAVE_DECL_GETPAGESIZE)|g' \ - -e 's|@''HAVE_DECL_GETUSERSHELL''@|$(HAVE_DECL_GETUSERSHELL)|g' \ - -e 's|@''HAVE_DECL_SETHOSTNAME''@|$(HAVE_DECL_SETHOSTNAME)|g' \ - -e 's|@''HAVE_DECL_TRUNCATE''@|$(HAVE_DECL_TRUNCATE)|g' \ - -e 's|@''HAVE_DECL_TTYNAME_R''@|$(HAVE_DECL_TTYNAME_R)|g' \ - -e 's|@''HAVE_OS_H''@|$(HAVE_OS_H)|g' \ - -e 's|@''HAVE_SYS_PARAM_H''@|$(HAVE_SYS_PARAM_H)|g' \ - | \ - sed -e 's|@''REPLACE_CHOWN''@|$(REPLACE_CHOWN)|g' \ - -e 's|@''REPLACE_CLOSE''@|$(REPLACE_CLOSE)|g' \ - -e 's|@''REPLACE_DUP''@|$(REPLACE_DUP)|g' \ - -e 's|@''REPLACE_DUP2''@|$(REPLACE_DUP2)|g' \ - -e 's|@''REPLACE_FACCESSAT''@|$(REPLACE_FACCESSAT)|g' \ - -e 's|@''REPLACE_FCHOWNAT''@|$(REPLACE_FCHOWNAT)|g' \ - -e 's|@''REPLACE_FTRUNCATE''@|$(REPLACE_FTRUNCATE)|g' \ - -e 's|@''REPLACE_GETCWD''@|$(REPLACE_GETCWD)|g' \ - -e 's|@''REPLACE_GETDOMAINNAME''@|$(REPLACE_GETDOMAINNAME)|g' \ - -e 's|@''REPLACE_GETDTABLESIZE''@|$(REPLACE_GETDTABLESIZE)|g' \ - -e 's|@''REPLACE_GETLOGIN_R''@|$(REPLACE_GETLOGIN_R)|g' \ - -e 's|@''REPLACE_GETGROUPS''@|$(REPLACE_GETGROUPS)|g' \ - -e 's|@''REPLACE_GETPAGESIZE''@|$(REPLACE_GETPAGESIZE)|g' \ - -e 's|@''REPLACE_GETPASS''@|$(REPLACE_GETPASS)|g' \ - -e 's|@''REPLACE_ISATTY''@|$(REPLACE_ISATTY)|g' \ - -e 's|@''REPLACE_LCHOWN''@|$(REPLACE_LCHOWN)|g' \ - -e 's|@''REPLACE_LINK''@|$(REPLACE_LINK)|g' \ - -e 's|@''REPLACE_LINKAT''@|$(REPLACE_LINKAT)|g' \ - -e 's|@''REPLACE_LSEEK''@|$(REPLACE_LSEEK)|g' \ - -e 's|@''REPLACE_PREAD''@|$(REPLACE_PREAD)|g' \ - -e 's|@''REPLACE_PWRITE''@|$(REPLACE_PWRITE)|g' \ - -e 's|@''REPLACE_READ''@|$(REPLACE_READ)|g' \ - -e 's|@''REPLACE_READLINK''@|$(REPLACE_READLINK)|g' \ - -e 's|@''REPLACE_READLINKAT''@|$(REPLACE_READLINKAT)|g' \ - -e 's|@''REPLACE_RMDIR''@|$(REPLACE_RMDIR)|g' \ - -e 's|@''REPLACE_SLEEP''@|$(REPLACE_SLEEP)|g' \ - -e 's|@''REPLACE_SYMLINK''@|$(REPLACE_SYMLINK)|g' \ - -e 's|@''REPLACE_SYMLINKAT''@|$(REPLACE_SYMLINKAT)|g' \ - -e 's|@''REPLACE_TRUNCATE''@|$(REPLACE_TRUNCATE)|g' \ - -e 's|@''REPLACE_TTYNAME_R''@|$(REPLACE_TTYNAME_R)|g' \ - -e 's|@''REPLACE_UNLINK''@|$(REPLACE_UNLINK)|g' \ - -e 's|@''REPLACE_UNLINKAT''@|$(REPLACE_UNLINKAT)|g' \ - -e 's|@''REPLACE_USLEEP''@|$(REPLACE_USLEEP)|g' \ - -e 's|@''REPLACE_WRITE''@|$(REPLACE_WRITE)|g' \ - -e 's|@''UNISTD_H_HAVE_WINSOCK2_H''@|$(UNISTD_H_HAVE_WINSOCK2_H)|g' \ - -e 's|@''UNISTD_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS''@|$(UNISTD_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS)|g' \ - -e '/definitions of _GL_FUNCDECL_RPL/r $(CXXDEFS_H)' \ - -e '/definition of _GL_ARG_NONNULL/r $(ARG_NONNULL_H)' \ - -e '/definition of _GL_WARN_ON_USE/r $(WARN_ON_USE_H)'; \ - } > $@-t && \ - mv $@-t $@ - -unitypes.h: unitypes.in.h - $(AM_V_GEN)rm -f $@-t $@ && \ - { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \ - cat $(srcdir)/unitypes.in.h; \ - } > $@-t && \ - mv -f $@-t $@ - -uniwidth.h: uniwidth.in.h - $(AM_V_GEN)rm -f $@-t $@ && \ - { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \ - cat $(srcdir)/uniwidth.in.h; \ - } > $@-t && \ - mv -f $@-t $@ - -# We need the following in order to create when the system -# version does not work standalone. -wchar.h: wchar.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H) $(WARN_ON_USE_H) - $(AM_V_GEN)rm -f $@-t $@ && \ - { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \ - sed -e 's|@''GUARD_PREFIX''@|GL|g' \ - -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ - -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ - -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \ - -e 's|@''HAVE_FEATURES_H''@|$(HAVE_FEATURES_H)|g' \ - -e 's|@''NEXT_WCHAR_H''@|$(NEXT_WCHAR_H)|g' \ - -e 's|@''HAVE_WCHAR_H''@|$(HAVE_WCHAR_H)|g' \ - -e 's/@''HAVE_CRTDEFS_H''@/$(HAVE_CRTDEFS_H)/g' \ - -e 's/@''GNULIB_OVERRIDES_WINT_T''@/$(GNULIB_OVERRIDES_WINT_T)/g' \ - -e 's/@''GNULIB_BTOWC''@/$(GNULIB_BTOWC)/g' \ - -e 's/@''GNULIB_WCTOB''@/$(GNULIB_WCTOB)/g' \ - -e 's/@''GNULIB_MBSINIT''@/$(GNULIB_MBSINIT)/g' \ - -e 's/@''GNULIB_MBRTOWC''@/$(GNULIB_MBRTOWC)/g' \ - -e 's/@''GNULIB_MBRLEN''@/$(GNULIB_MBRLEN)/g' \ - -e 's/@''GNULIB_MBSRTOWCS''@/$(GNULIB_MBSRTOWCS)/g' \ - -e 's/@''GNULIB_MBSNRTOWCS''@/$(GNULIB_MBSNRTOWCS)/g' \ - -e 's/@''GNULIB_WCRTOMB''@/$(GNULIB_WCRTOMB)/g' \ - -e 's/@''GNULIB_WCSRTOMBS''@/$(GNULIB_WCSRTOMBS)/g' \ - -e 's/@''GNULIB_WCSNRTOMBS''@/$(GNULIB_WCSNRTOMBS)/g' \ - -e 's/@''GNULIB_WCWIDTH''@/$(GNULIB_WCWIDTH)/g' \ - -e 's/@''GNULIB_WMEMCHR''@/$(GNULIB_WMEMCHR)/g' \ - -e 's/@''GNULIB_WMEMCMP''@/$(GNULIB_WMEMCMP)/g' \ - -e 's/@''GNULIB_WMEMCPY''@/$(GNULIB_WMEMCPY)/g' \ - -e 's/@''GNULIB_WMEMMOVE''@/$(GNULIB_WMEMMOVE)/g' \ - -e 's/@''GNULIB_WMEMSET''@/$(GNULIB_WMEMSET)/g' \ - -e 's/@''GNULIB_WCSLEN''@/$(GNULIB_WCSLEN)/g' \ - -e 's/@''GNULIB_WCSNLEN''@/$(GNULIB_WCSNLEN)/g' \ - -e 's/@''GNULIB_WCSCPY''@/$(GNULIB_WCSCPY)/g' \ - -e 's/@''GNULIB_WCPCPY''@/$(GNULIB_WCPCPY)/g' \ - -e 's/@''GNULIB_WCSNCPY''@/$(GNULIB_WCSNCPY)/g' \ - -e 's/@''GNULIB_WCPNCPY''@/$(GNULIB_WCPNCPY)/g' \ - -e 's/@''GNULIB_WCSCAT''@/$(GNULIB_WCSCAT)/g' \ - -e 's/@''GNULIB_WCSNCAT''@/$(GNULIB_WCSNCAT)/g' \ - -e 's/@''GNULIB_WCSCMP''@/$(GNULIB_WCSCMP)/g' \ - -e 's/@''GNULIB_WCSNCMP''@/$(GNULIB_WCSNCMP)/g' \ - -e 's/@''GNULIB_WCSCASECMP''@/$(GNULIB_WCSCASECMP)/g' \ - -e 's/@''GNULIB_WCSNCASECMP''@/$(GNULIB_WCSNCASECMP)/g' \ - -e 's/@''GNULIB_WCSCOLL''@/$(GNULIB_WCSCOLL)/g' \ - -e 's/@''GNULIB_WCSXFRM''@/$(GNULIB_WCSXFRM)/g' \ - -e 's/@''GNULIB_WCSDUP''@/$(GNULIB_WCSDUP)/g' \ - -e 's/@''GNULIB_WCSCHR''@/$(GNULIB_WCSCHR)/g' \ - -e 's/@''GNULIB_WCSRCHR''@/$(GNULIB_WCSRCHR)/g' \ - -e 's/@''GNULIB_WCSCSPN''@/$(GNULIB_WCSCSPN)/g' \ - -e 's/@''GNULIB_WCSSPN''@/$(GNULIB_WCSSPN)/g' \ - -e 's/@''GNULIB_WCSPBRK''@/$(GNULIB_WCSPBRK)/g' \ - -e 's/@''GNULIB_WCSSTR''@/$(GNULIB_WCSSTR)/g' \ - -e 's/@''GNULIB_WCSTOK''@/$(GNULIB_WCSTOK)/g' \ - -e 's/@''GNULIB_WCSWIDTH''@/$(GNULIB_WCSWIDTH)/g' \ - -e 's/@''GNULIB_WCSFTIME''@/$(GNULIB_WCSFTIME)/g' \ - < $(srcdir)/wchar.in.h | \ - sed -e 's|@''HAVE_WINT_T''@|$(HAVE_WINT_T)|g' \ - -e 's|@''HAVE_BTOWC''@|$(HAVE_BTOWC)|g' \ - -e 's|@''HAVE_MBSINIT''@|$(HAVE_MBSINIT)|g' \ - -e 's|@''HAVE_MBRTOWC''@|$(HAVE_MBRTOWC)|g' \ - -e 's|@''HAVE_MBRLEN''@|$(HAVE_MBRLEN)|g' \ - -e 's|@''HAVE_MBSRTOWCS''@|$(HAVE_MBSRTOWCS)|g' \ - -e 's|@''HAVE_MBSNRTOWCS''@|$(HAVE_MBSNRTOWCS)|g' \ - -e 's|@''HAVE_WCRTOMB''@|$(HAVE_WCRTOMB)|g' \ - -e 's|@''HAVE_WCSRTOMBS''@|$(HAVE_WCSRTOMBS)|g' \ - -e 's|@''HAVE_WCSNRTOMBS''@|$(HAVE_WCSNRTOMBS)|g' \ - -e 's|@''HAVE_WMEMCHR''@|$(HAVE_WMEMCHR)|g' \ - -e 's|@''HAVE_WMEMCMP''@|$(HAVE_WMEMCMP)|g' \ - -e 's|@''HAVE_WMEMCPY''@|$(HAVE_WMEMCPY)|g' \ - -e 's|@''HAVE_WMEMMOVE''@|$(HAVE_WMEMMOVE)|g' \ - -e 's|@''HAVE_WMEMSET''@|$(HAVE_WMEMSET)|g' \ - -e 's|@''HAVE_WCSLEN''@|$(HAVE_WCSLEN)|g' \ - -e 's|@''HAVE_WCSNLEN''@|$(HAVE_WCSNLEN)|g' \ - -e 's|@''HAVE_WCSCPY''@|$(HAVE_WCSCPY)|g' \ - -e 's|@''HAVE_WCPCPY''@|$(HAVE_WCPCPY)|g' \ - -e 's|@''HAVE_WCSNCPY''@|$(HAVE_WCSNCPY)|g' \ - -e 's|@''HAVE_WCPNCPY''@|$(HAVE_WCPNCPY)|g' \ - -e 's|@''HAVE_WCSCAT''@|$(HAVE_WCSCAT)|g' \ - -e 's|@''HAVE_WCSNCAT''@|$(HAVE_WCSNCAT)|g' \ - -e 's|@''HAVE_WCSCMP''@|$(HAVE_WCSCMP)|g' \ - -e 's|@''HAVE_WCSNCMP''@|$(HAVE_WCSNCMP)|g' \ - -e 's|@''HAVE_WCSCASECMP''@|$(HAVE_WCSCASECMP)|g' \ - -e 's|@''HAVE_WCSNCASECMP''@|$(HAVE_WCSNCASECMP)|g' \ - -e 's|@''HAVE_WCSCOLL''@|$(HAVE_WCSCOLL)|g' \ - -e 's|@''HAVE_WCSXFRM''@|$(HAVE_WCSXFRM)|g' \ - -e 's|@''HAVE_WCSDUP''@|$(HAVE_WCSDUP)|g' \ - -e 's|@''HAVE_WCSCHR''@|$(HAVE_WCSCHR)|g' \ - -e 's|@''HAVE_WCSRCHR''@|$(HAVE_WCSRCHR)|g' \ - -e 's|@''HAVE_WCSCSPN''@|$(HAVE_WCSCSPN)|g' \ - -e 's|@''HAVE_WCSSPN''@|$(HAVE_WCSSPN)|g' \ - -e 's|@''HAVE_WCSPBRK''@|$(HAVE_WCSPBRK)|g' \ - -e 's|@''HAVE_WCSSTR''@|$(HAVE_WCSSTR)|g' \ - -e 's|@''HAVE_WCSTOK''@|$(HAVE_WCSTOK)|g' \ - -e 's|@''HAVE_WCSWIDTH''@|$(HAVE_WCSWIDTH)|g' \ - -e 's|@''HAVE_WCSFTIME''@|$(HAVE_WCSFTIME)|g' \ - -e 's|@''HAVE_DECL_WCTOB''@|$(HAVE_DECL_WCTOB)|g' \ - -e 's|@''HAVE_DECL_WCWIDTH''@|$(HAVE_DECL_WCWIDTH)|g' \ - | \ - sed -e 's|@''REPLACE_MBSTATE_T''@|$(REPLACE_MBSTATE_T)|g' \ - -e 's|@''REPLACE_BTOWC''@|$(REPLACE_BTOWC)|g' \ - -e 's|@''REPLACE_WCTOB''@|$(REPLACE_WCTOB)|g' \ - -e 's|@''REPLACE_MBSINIT''@|$(REPLACE_MBSINIT)|g' \ - -e 's|@''REPLACE_MBRTOWC''@|$(REPLACE_MBRTOWC)|g' \ - -e 's|@''REPLACE_MBRLEN''@|$(REPLACE_MBRLEN)|g' \ - -e 's|@''REPLACE_MBSRTOWCS''@|$(REPLACE_MBSRTOWCS)|g' \ - -e 's|@''REPLACE_MBSNRTOWCS''@|$(REPLACE_MBSNRTOWCS)|g' \ - -e 's|@''REPLACE_WCRTOMB''@|$(REPLACE_WCRTOMB)|g' \ - -e 's|@''REPLACE_WCSRTOMBS''@|$(REPLACE_WCSRTOMBS)|g' \ - -e 's|@''REPLACE_WCSNRTOMBS''@|$(REPLACE_WCSNRTOMBS)|g' \ - -e 's|@''REPLACE_WCWIDTH''@|$(REPLACE_WCWIDTH)|g' \ - -e 's|@''REPLACE_WCSWIDTH''@|$(REPLACE_WCSWIDTH)|g' \ - -e 's|@''REPLACE_WCSFTIME''@|$(REPLACE_WCSFTIME)|g' \ - -e '/definitions of _GL_FUNCDECL_RPL/r $(CXXDEFS_H)' \ - -e '/definition of _GL_ARG_NONNULL/r $(ARG_NONNULL_H)' \ - -e '/definition of _GL_WARN_ON_USE/r $(WARN_ON_USE_H)'; \ - } > $@-t && \ - mv $@-t $@ - -# We need the following in order to create when the system -# doesn't have one that works with the given compiler. -wctype.h: wctype.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(WARN_ON_USE_H) - $(AM_V_GEN)rm -f $@-t $@ && \ - { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \ - sed -e 's|@''GUARD_PREFIX''@|GL|g' \ - -e 's/@''HAVE_WCTYPE_H''@/$(HAVE_WCTYPE_H)/g' \ - -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ - -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ - -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \ - -e 's|@''NEXT_WCTYPE_H''@|$(NEXT_WCTYPE_H)|g' \ - -e 's/@''HAVE_CRTDEFS_H''@/$(HAVE_CRTDEFS_H)/g' \ - -e 's/@''GNULIB_OVERRIDES_WINT_T''@/$(GNULIB_OVERRIDES_WINT_T)/g' \ - -e 's/@''GNULIB_ISWBLANK''@/$(GNULIB_ISWBLANK)/g' \ - -e 's/@''GNULIB_WCTYPE''@/$(GNULIB_WCTYPE)/g' \ - -e 's/@''GNULIB_ISWCTYPE''@/$(GNULIB_ISWCTYPE)/g' \ - -e 's/@''GNULIB_WCTRANS''@/$(GNULIB_WCTRANS)/g' \ - -e 's/@''GNULIB_TOWCTRANS''@/$(GNULIB_TOWCTRANS)/g' \ - -e 's/@''HAVE_ISWBLANK''@/$(HAVE_ISWBLANK)/g' \ - -e 's/@''HAVE_ISWCNTRL''@/$(HAVE_ISWCNTRL)/g' \ - -e 's/@''HAVE_WCTYPE_T''@/$(HAVE_WCTYPE_T)/g' \ - -e 's/@''HAVE_WCTRANS_T''@/$(HAVE_WCTRANS_T)/g' \ - -e 's/@''HAVE_WINT_T''@/$(HAVE_WINT_T)/g' \ - -e 's/@''REPLACE_ISWBLANK''@/$(REPLACE_ISWBLANK)/g' \ - -e 's/@''REPLACE_ISWCNTRL''@/$(REPLACE_ISWCNTRL)/g' \ - -e 's/@''REPLACE_TOWLOWER''@/$(REPLACE_TOWLOWER)/g' \ - -e '/definitions of _GL_FUNCDECL_RPL/r $(CXXDEFS_H)' \ - -e '/definition of _GL_WARN_ON_USE/r $(WARN_ON_USE_H)' \ - < $(srcdir)/wctype.in.h; \ - } > $@-t && \ - mv $@-t $@ - -mostlyclean-local: mostlyclean-generic - @for dir in '' $(MOSTLYCLEANDIRS); do \ - if test -n "$$dir" && test -d $$dir; then \ - echo "rmdir $$dir"; rmdir $$dir; \ - fi; \ - done; \ - : - -# Tell versions [3.59,3.63) of GNU make to not export all variables. -# Otherwise a system limit (for SysV at least) may be exceeded. -.NOEXPORT: diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/_Noreturn.h b/thirdparty/grub-2.04/grub-core/lib/gnulib/_Noreturn.h deleted file mode 100644 index 94fdfaf02..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/_Noreturn.h +++ /dev/null @@ -1,14 +0,0 @@ -#ifndef _Noreturn -# if 201103 <= (defined __cplusplus ? __cplusplus : 0) -# define _Noreturn [[noreturn]] -# elif (201112 <= (defined __STDC_VERSION__ ? __STDC_VERSION__ : 0) \ - || 4 < __GNUC__ + (7 <= __GNUC_MINOR__)) - /* _Noreturn works as-is. */ -# elif 2 < __GNUC__ + (8 <= __GNUC_MINOR__) || 0x5110 <= __SUNPRO_C -# define _Noreturn __attribute__ ((__noreturn__)) -# elif 1200 <= (defined _MSC_VER ? _MSC_VER : 0) -# define _Noreturn __declspec (noreturn) -# else -# define _Noreturn -# endif -#endif diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/alloca.c b/thirdparty/grub-2.04/grub-core/lib/gnulib/alloca.c deleted file mode 100644 index ee0f01886..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/alloca.c +++ /dev/null @@ -1,478 +0,0 @@ -/* alloca.c -- allocate automatically reclaimed memory - (Mostly) portable public-domain implementation -- D A Gwyn - - This implementation of the PWB library alloca function, - which is used to allocate space off the run-time stack so - that it is automatically reclaimed upon procedure exit, - was inspired by discussions with J. Q. Johnson of Cornell. - J.Otto Tennant contributed the Cray support. - - There are some preprocessor constants that can - be defined when compiling for your specific system, for - improved efficiency; however, the defaults should be okay. - - The general concept of this implementation is to keep - track of all alloca-allocated blocks, and reclaim any - that are found to be deeper in the stack than the current - invocation. This heuristic does not reclaim storage as - soon as it becomes invalid, but it will do so eventually. - - As a special case, alloca(0) reclaims storage without - allocating any. It is a good idea to use alloca(0) in - your main control loop, etc. to force garbage collection. */ - -#include - -#include - -#include -#include - -#ifdef emacs -# include "lisp.h" -# include "blockinput.h" -# ifdef EMACS_FREE -# undef free -# define free EMACS_FREE -# endif -#else -# define memory_full() abort () -#endif - -/* If compiling with GCC 2, this file's not needed. */ -#if !defined (__GNUC__) || __GNUC__ < 2 - -/* If someone has defined alloca as a macro, - there must be some other way alloca is supposed to work. */ -# ifndef alloca - -# ifdef emacs -# ifdef static -/* actually, only want this if static is defined as "" - -- this is for usg, in which emacs must undefine static - in order to make unexec workable - */ -# ifndef STACK_DIRECTION -you -lose --- must know STACK_DIRECTION at compile-time -/* Using #error here is not wise since this file should work for - old and obscure compilers. */ -# endif /* STACK_DIRECTION undefined */ -# endif /* static */ -# endif /* emacs */ - -/* If your stack is a linked list of frames, you have to - provide an "address metric" ADDRESS_FUNCTION macro. */ - -# if defined (CRAY) && defined (CRAY_STACKSEG_END) -long i00afunc (); -# define ADDRESS_FUNCTION(arg) (char *) i00afunc (&(arg)) -# else -# define ADDRESS_FUNCTION(arg) &(arg) -# endif - -/* Define STACK_DIRECTION if you know the direction of stack - growth for your system; otherwise it will be automatically - deduced at run-time. - - STACK_DIRECTION > 0 => grows toward higher addresses - STACK_DIRECTION < 0 => grows toward lower addresses - STACK_DIRECTION = 0 => direction of growth unknown */ - -# ifndef STACK_DIRECTION -# define STACK_DIRECTION 0 /* Direction unknown. */ -# endif - -# if STACK_DIRECTION != 0 - -# define STACK_DIR STACK_DIRECTION /* Known at compile-time. */ - -# else /* STACK_DIRECTION == 0; need run-time code. */ - -static int stack_dir; /* 1 or -1 once known. */ -# define STACK_DIR stack_dir - -static int -find_stack_direction (int *addr, int depth) -{ - int dir, dummy = 0; - if (! addr) - addr = &dummy; - *addr = addr < &dummy ? 1 : addr == &dummy ? 0 : -1; - dir = depth ? find_stack_direction (addr, depth - 1) : 0; - return dir + dummy; -} - -# endif /* STACK_DIRECTION == 0 */ - -/* An "alloca header" is used to: - (a) chain together all alloca'ed blocks; - (b) keep track of stack depth. - - It is very important that sizeof(header) agree with malloc - alignment chunk size. The following default should work okay. */ - -# ifndef ALIGN_SIZE -# define ALIGN_SIZE sizeof(double) -# endif - -typedef union hdr -{ - char align[ALIGN_SIZE]; /* To force sizeof(header). */ - struct - { - union hdr *next; /* For chaining headers. */ - char *deep; /* For stack depth measure. */ - } h; -} header; - -static header *last_alloca_header = NULL; /* -> last alloca header. */ - -/* Return a pointer to at least SIZE bytes of storage, - which will be automatically reclaimed upon exit from - the procedure that called alloca. Originally, this space - was supposed to be taken from the current stack frame of the - caller, but that method cannot be made to work for some - implementations of C, for example under Gould's UTX/32. */ - -void * -alloca (size_t size) -{ - auto char probe; /* Probes stack depth: */ - register char *depth = ADDRESS_FUNCTION (probe); - -# if STACK_DIRECTION == 0 - if (STACK_DIR == 0) /* Unknown growth direction. */ - STACK_DIR = find_stack_direction (NULL, (size & 1) + 20); -# endif - - /* Reclaim garbage, defined as all alloca'd storage that - was allocated from deeper in the stack than currently. */ - - { - register header *hp; /* Traverses linked list. */ - -# ifdef emacs - BLOCK_INPUT; -# endif - - for (hp = last_alloca_header; hp != NULL;) - if ((STACK_DIR > 0 && hp->h.deep > depth) - || (STACK_DIR < 0 && hp->h.deep < depth)) - { - register header *np = hp->h.next; - - free (hp); /* Collect garbage. */ - - hp = np; /* -> next header. */ - } - else - break; /* Rest are not deeper. */ - - last_alloca_header = hp; /* -> last valid storage. */ - -# ifdef emacs - UNBLOCK_INPUT; -# endif - } - - if (size == 0) - return NULL; /* No allocation required. */ - - /* Allocate combined header + user data storage. */ - - { - /* Address of header. */ - register header *new; - - size_t combined_size = sizeof (header) + size; - if (combined_size < sizeof (header)) - memory_full (); - - new = malloc (combined_size); - - if (! new) - memory_full (); - - new->h.next = last_alloca_header; - new->h.deep = depth; - - last_alloca_header = new; - - /* User storage begins just after header. */ - - return (void *) (new + 1); - } -} - -# if defined (CRAY) && defined (CRAY_STACKSEG_END) - -# ifdef DEBUG_I00AFUNC -# include -# endif - -# ifndef CRAY_STACK -# define CRAY_STACK -# ifndef CRAY2 -/* Stack structures for CRAY-1, CRAY X-MP, and CRAY Y-MP */ -struct stack_control_header - { - long shgrow:32; /* Number of times stack has grown. */ - long shaseg:32; /* Size of increments to stack. */ - long shhwm:32; /* High water mark of stack. */ - long shsize:32; /* Current size of stack (all segments). */ - }; - -/* The stack segment linkage control information occurs at - the high-address end of a stack segment. (The stack - grows from low addresses to high addresses.) The initial - part of the stack segment linkage control information is - 0200 (octal) words. This provides for register storage - for the routine which overflows the stack. */ - -struct stack_segment_linkage - { - long ss[0200]; /* 0200 overflow words. */ - long sssize:32; /* Number of words in this segment. */ - long ssbase:32; /* Offset to stack base. */ - long:32; - long sspseg:32; /* Offset to linkage control of previous - segment of stack. */ - long:32; - long sstcpt:32; /* Pointer to task common address block. */ - long sscsnm; /* Private control structure number for - microtasking. */ - long ssusr1; /* Reserved for user. */ - long ssusr2; /* Reserved for user. */ - long sstpid; /* Process ID for pid based multi-tasking. */ - long ssgvup; /* Pointer to multitasking thread giveup. */ - long sscray[7]; /* Reserved for Cray Research. */ - long ssa0; - long ssa1; - long ssa2; - long ssa3; - long ssa4; - long ssa5; - long ssa6; - long ssa7; - long sss0; - long sss1; - long sss2; - long sss3; - long sss4; - long sss5; - long sss6; - long sss7; - }; - -# else /* CRAY2 */ -/* The following structure defines the vector of words - returned by the STKSTAT library routine. */ -struct stk_stat - { - long now; /* Current total stack size. */ - long maxc; /* Amount of contiguous space which would - be required to satisfy the maximum - stack demand to date. */ - long high_water; /* Stack high-water mark. */ - long overflows; /* Number of stack overflow ($STKOFEN) calls. */ - long hits; /* Number of internal buffer hits. */ - long extends; /* Number of block extensions. */ - long stko_mallocs; /* Block allocations by $STKOFEN. */ - long underflows; /* Number of stack underflow calls ($STKRETN). */ - long stko_free; /* Number of deallocations by $STKRETN. */ - long stkm_free; /* Number of deallocations by $STKMRET. */ - long segments; /* Current number of stack segments. */ - long maxs; /* Maximum number of stack segments so far. */ - long pad_size; /* Stack pad size. */ - long current_address; /* Current stack segment address. */ - long current_size; /* Current stack segment size. This - number is actually corrupted by STKSTAT to - include the fifteen word trailer area. */ - long initial_address; /* Address of initial segment. */ - long initial_size; /* Size of initial segment. */ - }; - -/* The following structure describes the data structure which trails - any stack segment. I think that the description in 'asdef' is - out of date. I only describe the parts that I am sure about. */ - -struct stk_trailer - { - long this_address; /* Address of this block. */ - long this_size; /* Size of this block (does not include - this trailer). */ - long unknown2; - long unknown3; - long link; /* Address of trailer block of previous - segment. */ - long unknown5; - long unknown6; - long unknown7; - long unknown8; - long unknown9; - long unknown10; - long unknown11; - long unknown12; - long unknown13; - long unknown14; - }; - -# endif /* CRAY2 */ -# endif /* not CRAY_STACK */ - -# ifdef CRAY2 -/* Determine a "stack measure" for an arbitrary ADDRESS. - I doubt that "lint" will like this much. */ - -static long -i00afunc (long *address) -{ - struct stk_stat status; - struct stk_trailer *trailer; - long *block, size; - long result = 0; - - /* We want to iterate through all of the segments. The first - step is to get the stack status structure. We could do this - more quickly and more directly, perhaps, by referencing the - $LM00 common block, but I know that this works. */ - - STKSTAT (&status); - - /* Set up the iteration. */ - - trailer = (struct stk_trailer *) (status.current_address - + status.current_size - - 15); - - /* There must be at least one stack segment. Therefore it is - a fatal error if "trailer" is null. */ - - if (trailer == 0) - abort (); - - /* Discard segments that do not contain our argument address. */ - - while (trailer != 0) - { - block = (long *) trailer->this_address; - size = trailer->this_size; - if (block == 0 || size == 0) - abort (); - trailer = (struct stk_trailer *) trailer->link; - if ((block <= address) && (address < (block + size))) - break; - } - - /* Set the result to the offset in this segment and add the sizes - of all predecessor segments. */ - - result = address - block; - - if (trailer == 0) - { - return result; - } - - do - { - if (trailer->this_size <= 0) - abort (); - result += trailer->this_size; - trailer = (struct stk_trailer *) trailer->link; - } - while (trailer != 0); - - /* We are done. Note that if you present a bogus address (one - not in any segment), you will get a different number back, formed - from subtracting the address of the first block. This is probably - not what you want. */ - - return (result); -} - -# else /* not CRAY2 */ -/* Stack address function for a CRAY-1, CRAY X-MP, or CRAY Y-MP. - Determine the number of the cell within the stack, - given the address of the cell. The purpose of this - routine is to linearize, in some sense, stack addresses - for alloca. */ - -static long -i00afunc (long address) -{ - long stkl = 0; - - long size, pseg, this_segment, stack; - long result = 0; - - struct stack_segment_linkage *ssptr; - - /* Register B67 contains the address of the end of the - current stack segment. If you (as a subprogram) store - your registers on the stack and find that you are past - the contents of B67, you have overflowed the segment. - - B67 also points to the stack segment linkage control - area, which is what we are really interested in. */ - - stkl = CRAY_STACKSEG_END (); - ssptr = (struct stack_segment_linkage *) stkl; - - /* If one subtracts 'size' from the end of the segment, - one has the address of the first word of the segment. - - If this is not the first segment, 'pseg' will be - nonzero. */ - - pseg = ssptr->sspseg; - size = ssptr->sssize; - - this_segment = stkl - size; - - /* It is possible that calling this routine itself caused - a stack overflow. Discard stack segments which do not - contain the target address. */ - - while (!(this_segment <= address && address <= stkl)) - { -# ifdef DEBUG_I00AFUNC - fprintf (stderr, "%011o %011o %011o\n", this_segment, address, stkl); -# endif - if (pseg == 0) - break; - stkl = stkl - pseg; - ssptr = (struct stack_segment_linkage *) stkl; - size = ssptr->sssize; - pseg = ssptr->sspseg; - this_segment = stkl - size; - } - - result = address - this_segment; - - /* If you subtract pseg from the current end of the stack, - you get the address of the previous stack segment's end. - This seems a little convoluted to me, but I'll bet you save - a cycle somewhere. */ - - while (pseg != 0) - { -# ifdef DEBUG_I00AFUNC - fprintf (stderr, "%011o %011o\n", pseg, size); -# endif - stkl = stkl - pseg; - ssptr = (struct stack_segment_linkage *) stkl; - size = ssptr->sssize; - pseg = ssptr->sspseg; - result += size; - } - return (result); -} - -# endif /* not CRAY2 */ -# endif /* CRAY */ - -# endif /* no alloca */ -#endif /* not GCC 2 */ diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/alloca.in.h b/thirdparty/grub-2.04/grub-core/lib/gnulib/alloca.in.h deleted file mode 100644 index ec81e119a..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/alloca.in.h +++ /dev/null @@ -1,65 +0,0 @@ -/* Memory allocation on the stack. - - Copyright (C) 1995, 1999, 2001-2004, 2006-2019 Free Software Foundation, - Inc. - - This program is free software; you can redistribute it and/or modify it - under the terms of the GNU General Public License as published - by the Free Software Foundation; either version 3, or (at your option) - any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - General Public License for more details. - - You should have received a copy of the GNU General Public - License along with this program; if not, see - . - */ - -/* Avoid using the symbol _ALLOCA_H here, as Bison assumes _ALLOCA_H - means there is a real alloca function. */ -#ifndef _GL_ALLOCA_H -#define _GL_ALLOCA_H - -/* alloca (N) returns a pointer to N bytes of memory - allocated on the stack, which will last until the function returns. - Use of alloca should be avoided: - - inside arguments of function calls - undefined behaviour, - - in inline functions - the allocation may actually last until the - calling function returns, - - for huge N (say, N >= 65536) - you never know how large (or small) - the stack is, and when the stack cannot fulfill the memory allocation - request, the program just crashes. - */ - -#ifndef alloca -# ifdef __GNUC__ -# define alloca __builtin_alloca -# elif defined _AIX -# define alloca __alloca -# elif defined _MSC_VER -# include -# define alloca _alloca -# elif defined __DECC && defined __VMS -# define alloca __ALLOCA -# elif defined __TANDEM && defined _TNS_E_TARGET -# ifdef __cplusplus -extern "C" -# endif -void *_alloca (unsigned short); -# pragma intrinsic (_alloca) -# define alloca _alloca -# elif defined __MVS__ -# include -# else -# include -# ifdef __cplusplus -extern "C" -# endif -void *alloca (size_t); -# endif -#endif - -#endif /* _GL_ALLOCA_H */ diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/arg-nonnull.h b/thirdparty/grub-2.04/grub-core/lib/gnulib/arg-nonnull.h deleted file mode 100644 index ad8c26c22..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/arg-nonnull.h +++ /dev/null @@ -1,26 +0,0 @@ -/* A C macro for declaring that specific arguments must not be NULL. - Copyright (C) 2009-2019 Free Software Foundation, Inc. - - This program is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published - by the Free Software Foundation; either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . */ - -/* _GL_ARG_NONNULL((n,...,m)) tells the compiler and static analyzer tools - that the values passed as arguments n, ..., m must be non-NULL pointers. - n = 1 stands for the first argument, n = 2 for the second argument etc. */ -#ifndef _GL_ARG_NONNULL -# if (__GNUC__ == 3 && __GNUC_MINOR__ >= 3) || __GNUC__ > 3 -# define _GL_ARG_NONNULL(params) __attribute__ ((__nonnull__ params)) -# else -# define _GL_ARG_NONNULL(params) -# endif -#endif diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/argp-ba.c b/thirdparty/grub-2.04/grub-core/lib/gnulib/argp-ba.c deleted file mode 100644 index fcf60c82d..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/argp-ba.c +++ /dev/null @@ -1,34 +0,0 @@ -/* Default definition for ARGP_PROGRAM_BUG_ADDRESS. - Copyright (C) 1996-2019 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Written by Miles Bader . - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . */ - -/* If set by the user program, it should point to string that is the - bug-reporting address for the program. It will be printed by argp_help if - the ARGP_HELP_BUG_ADDR flag is set (as it is by various standard help - messages), embedded in a sentence that says something like "Report bugs to - ADDR." */ -const char *argp_program_bug_address -/* This variable should be zero-initialized. On most systems, putting it into - BSS is sufficient. Not so on Mac OS X 10.3 and 10.4, see - - . */ -#if defined __ELF__ - /* On ELF systems, variables in BSS behave well. */ -#else - = (const char *) 0 -#endif - ; diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/argp-eexst.c b/thirdparty/grub-2.04/grub-core/lib/gnulib/argp-eexst.c deleted file mode 100644 index 06b025d46..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/argp-eexst.c +++ /dev/null @@ -1,30 +0,0 @@ -/* Default definition for ARGP_ERR_EXIT_STATUS - Copyright (C) 1997, 2009-2019 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Written by Miles Bader . - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . */ - -#ifdef HAVE_CONFIG_H -# include -#endif - -#include - -#include "argp.h" - -/* The exit status that argp will use when exiting due to a parsing error. - If not defined or set by the user program, this defaults to EX_USAGE from - . */ -error_t argp_err_exit_status = EX_USAGE; diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/argp-fmtstream.c b/thirdparty/grub-2.04/grub-core/lib/gnulib/argp-fmtstream.c deleted file mode 100644 index d0685b3d4..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/argp-fmtstream.c +++ /dev/null @@ -1,488 +0,0 @@ -/* Word-wrapping and line-truncating streams - Copyright (C) 1997-2019 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Written by Miles Bader . - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . */ - -/* This package emulates glibc 'line_wrap_stream' semantics for systems that - don't have that. */ - -#ifdef HAVE_CONFIG_H -# include -#endif - -#include -#include -#include -#include -#include -#include - -#include "argp-fmtstream.h" -#include "argp-namefrob.h" -#include "mbswidth.h" - -#ifndef ARGP_FMTSTREAM_USE_LINEWRAP - -#ifndef isblank -#define isblank(ch) ((ch)==' ' || (ch)=='\t') -#endif - -#ifdef _LIBC -# include -# include -# define __vsnprintf(s, l, f, a) _IO_vsnprintf (s, l, f, a) -#endif - -#define INIT_BUF_SIZE 200 -#define PRINTF_SIZE_GUESS 150 - -/* Return an argp_fmtstream that outputs to STREAM, and which prefixes lines - written on it with LMARGIN spaces and limits them to RMARGIN columns - total. If WMARGIN >= 0, words that extend past RMARGIN are wrapped by - replacing the whitespace before them with a newline and WMARGIN spaces. - Otherwise, chars beyond RMARGIN are simply dropped until a newline. - Returns NULL if there was an error. */ -argp_fmtstream_t -__argp_make_fmtstream (FILE *stream, - size_t lmargin, size_t rmargin, ssize_t wmargin) -{ - argp_fmtstream_t fs; - - fs = (struct argp_fmtstream *) malloc (sizeof (struct argp_fmtstream)); - if (fs != NULL) - { - fs->stream = stream; - - fs->lmargin = lmargin; - fs->rmargin = rmargin; - fs->wmargin = wmargin; - fs->point_col = 0; - fs->point_offs = 0; - - fs->buf = (char *) malloc (INIT_BUF_SIZE); - if (! fs->buf) - { - free (fs); - fs = 0; - } - else - { - fs->p = fs->buf; - fs->end = fs->buf + INIT_BUF_SIZE; - } - } - - return fs; -} -#if 0 -/* Not exported. */ -#ifdef weak_alias -weak_alias (__argp_make_fmtstream, argp_make_fmtstream) -#endif -#endif - -/* Flush FS to its stream, and free it (but don't close the stream). */ -void -__argp_fmtstream_free (argp_fmtstream_t fs) -{ - __argp_fmtstream_update (fs); - if (fs->p > fs->buf) - { -#ifdef _LIBC - __fxprintf (fs->stream, "%.*s", (int) (fs->p - fs->buf), fs->buf); -#else - fwrite_unlocked (fs->buf, 1, fs->p - fs->buf, fs->stream); -#endif - } - free (fs->buf); - free (fs); -} -#if 0 -/* Not exported. */ -#ifdef weak_alias -weak_alias (__argp_fmtstream_free, argp_fmtstream_free) -#endif -#endif - - -/* Return the pointer to the first character that doesn't fit in l columns. */ -static inline const ptrdiff_t -add_width (const char *ptr, const char *end, size_t l) -{ - mbstate_t ps; - const char *ptr0 = ptr; - - memset (&ps, 0, sizeof (ps)); - - while (ptr < end) - { - wchar_t wc; - size_t s, k; - - s = mbrtowc (&wc, ptr, end - ptr, &ps); - if (s == (size_t) -1) - break; - if (s == (size_t) -2) - { - if (1 >= l) - break; - l--; - ptr++; - continue; - } - - if (wc == '\e' && ptr + 3 < end - && ptr[1] == '[' && (ptr[2] == '0' || ptr[2] == '1') - && ptr[3] == 'm') - { - ptr += 4; - continue; - } - - k = wcwidth (wc); - - if (k >= l) - break; - l -= k; - ptr += s; - } - return ptr - ptr0; -} - -/* Process FS's buffer so that line wrapping is done from POINT_OFFS to the - end of its buffer. This code is mostly from glibc stdio/linewrap.c. */ -void -__argp_fmtstream_update (argp_fmtstream_t fs) -{ - char *buf, *nl; - size_t len; - - /* Scan the buffer for newlines. */ - buf = fs->buf + fs->point_offs; - while (buf < fs->p) - { - size_t r; - - if (fs->point_col == 0 && fs->lmargin != 0) - { - /* We are starting a new line. Print spaces to the left margin. */ - const size_t pad = fs->lmargin; - if (fs->p + pad < fs->end) - { - /* We can fit in them in the buffer by moving the - buffer text up and filling in the beginning. */ - memmove (buf + pad, buf, fs->p - buf); - fs->p += pad; /* Compensate for bigger buffer. */ - memset (buf, ' ', pad); /* Fill in the spaces. */ - buf += pad; /* Don't bother searching them. */ - } - else - { - /* No buffer space for spaces. Must flush. */ - size_t i; - for (i = 0; i < pad; i++) - { -#ifdef _LIBC - if (_IO_fwide (fs->stream, 0) > 0) - putwc_unlocked (L' ', fs->stream); - else -#endif - putc_unlocked (' ', fs->stream); - } - } - fs->point_col = pad; - } - - len = fs->p - buf; - nl = memchr (buf, '\n', len); - - if (fs->point_col < 0) - fs->point_col = 0; - - if (!nl) - { - /* The buffer ends in a partial line. */ - size_t display_width = mbsnwidth (buf, fs->p - buf, - MBSW_STOP_AT_NUL); - - if (fs->point_col + display_width < fs->rmargin) - { - /* The remaining buffer text is a partial line and fits - within the maximum line width. Advance point for the - characters to be written and stop scanning. */ - fs->point_col += display_width; - break; - } - else - /* Set the end-of-line pointer for the code below to - the end of the buffer. */ - nl = fs->p; - } - else - { - size_t display_width = mbsnwidth (buf, nl - buf, MBSW_STOP_AT_NUL); - if (display_width < (ssize_t) fs->rmargin) - { - /* The buffer contains a full line that fits within the maximum - line width. Reset point and scan the next line. */ - fs->point_col = 0; - buf = nl + 1; - continue; - } - } - - /* This line is too long. */ - r = fs->rmargin - 1; - - if (fs->wmargin < 0) - { - /* Truncate the line by overwriting the excess with the - newline and anything after it in the buffer. */ - if (nl < fs->p) - { - memmove (buf + (r - fs->point_col), nl, fs->p - nl); - fs->p -= buf + (r - fs->point_col) - nl; - /* Reset point for the next line and start scanning it. */ - fs->point_col = 0; - buf += r + 1; /* Skip full line plus \n. */ - } - else - { - /* The buffer ends with a partial line that is beyond the - maximum line width. Advance point for the characters - written, and discard those past the max from the buffer. */ - fs->point_col += len; - fs->p -= fs->point_col - r; - break; - } - } - else - { - /* Do word wrap. Go to the column just past the maximum line - width and scan back for the beginning of the word there. - Then insert a line break. */ - - char *p, *nextline; - int i; - - p = buf + add_width (buf, fs->p, (r + 1 - fs->point_col)); - while (p >= buf && !isblank ((unsigned char) *p)) - --p; - nextline = p + 1; /* This will begin the next line. */ - - if (nextline > buf) - { - /* Swallow separating blanks. */ - if (p >= buf) - do - --p; - while (p >= buf && isblank ((unsigned char) *p)); - nl = p + 1; /* The newline will replace the first blank. */ - } - else - { - /* A single word that is greater than the maximum line width. - Oh well. Put it on an overlong line by itself. */ - p = buf + add_width (buf, fs->p, (r + 1 - fs->point_col)); - /* Find the end of the long word. */ - if (p < nl) - do - ++p; - while (p < nl && !isblank ((unsigned char) *p)); - if (p == nl) - { - /* It already ends a line. No fussing required. */ - fs->point_col = 0; - buf = nl + 1; - continue; - } - /* We will move the newline to replace the first blank. */ - nl = p; - /* Swallow separating blanks. */ - do - ++p; - while (isblank ((unsigned char) *p)); - /* The next line will start here. */ - nextline = p; - } - - /* Note: There are a bunch of tests below for - NEXTLINE == BUF + LEN + 1; this case is where NL happens to fall - at the end of the buffer, and NEXTLINE is in fact empty (and so - we need not be careful to maintain its contents). */ - - if ((nextline == buf + len + 1 - ? fs->end - nl < fs->wmargin + 1 - : nextline - (nl + 1) < fs->wmargin) - && fs->p > nextline) - { - /* The margin needs more blanks than we removed. */ - if (mbsnwidth (fs->p, fs->end - fs->p, MBSW_STOP_AT_NUL) - > fs->wmargin + 1) - /* Make some space for them. */ - { - size_t mv = fs->p - nextline; - memmove (nl + 1 + fs->wmargin, nextline, mv); - nextline = nl + 1 + fs->wmargin; - len = nextline + mv - buf; - *nl++ = '\n'; - } - else - /* Output the first line so we can use the space. */ - { -#ifdef _LIBC - __fxprintf (fs->stream, "%.*s\n", - (int) (nl - fs->buf), fs->buf); -#else - if (nl > fs->buf) - fwrite_unlocked (fs->buf, 1, nl - fs->buf, fs->stream); - putc_unlocked ('\n', fs->stream); -#endif - - len += buf - fs->buf; - nl = buf = fs->buf; - } - } - else - /* We can fit the newline and blanks in before - the next word. */ - *nl++ = '\n'; - - if (nextline - nl >= fs->wmargin - || (nextline == buf + len + 1 && fs->end - nextline >= fs->wmargin)) - /* Add blanks up to the wrap margin column. */ - for (i = 0; i < fs->wmargin; ++i) - *nl++ = ' '; - else - for (i = 0; i < fs->wmargin; ++i) -#ifdef _LIBC - if (_IO_fwide (fs->stream, 0) > 0) - putwc_unlocked (L' ', fs->stream); - else -#endif - putc_unlocked (' ', fs->stream); - - /* Copy the tail of the original buffer into the current buffer - position. */ - if (nl < nextline) - memmove (nl, nextline, buf + len - nextline); - len -= nextline - buf; - - /* Continue the scan on the remaining lines in the buffer. */ - buf = nl; - - /* Restore bufp to include all the remaining text. */ - fs->p = nl + len; - - /* Reset the counter of what has been output this line. If wmargin - is 0, we want to avoid the lmargin getting added, so we set - point_col to a magic value of -1 in that case. */ - fs->point_col = fs->wmargin ? fs->wmargin : -1; - } - } - - /* Remember that we've scanned as far as the end of the buffer. */ - fs->point_offs = fs->p - fs->buf; -} - -/* Ensure that FS has space for AMOUNT more bytes in its buffer, either by - growing the buffer, or by flushing it. True is returned iff we succeed. */ -int -__argp_fmtstream_ensure (struct argp_fmtstream *fs, size_t amount) -{ - if ((size_t) (fs->end - fs->p) < amount) - { - ssize_t wrote; - - /* Flush FS's buffer. */ - __argp_fmtstream_update (fs); - -#ifdef _LIBC - __fxprintf (fs->stream, "%.*s", (int) (fs->p - fs->buf), fs->buf); - wrote = fs->p - fs->buf; -#else - wrote = fwrite_unlocked (fs->buf, 1, fs->p - fs->buf, fs->stream); -#endif - if (wrote == fs->p - fs->buf) - { - fs->p = fs->buf; - fs->point_offs = 0; - } - else - { - fs->p -= wrote; - fs->point_offs -= wrote; - memmove (fs->buf, fs->buf + wrote, fs->p - fs->buf); - return 0; - } - - if ((size_t) (fs->end - fs->buf) < amount) - /* Gotta grow the buffer. */ - { - size_t old_size = fs->end - fs->buf; - size_t new_size = old_size + amount; - char *new_buf; - - if (new_size < old_size || ! (new_buf = realloc (fs->buf, new_size))) - { - __set_errno (ENOMEM); - return 0; - } - - fs->buf = new_buf; - fs->end = new_buf + new_size; - fs->p = fs->buf; - } - } - - return 1; -} - -ssize_t -__argp_fmtstream_printf (struct argp_fmtstream *fs, const char *fmt, ...) -{ - int out; - size_t avail; - size_t size_guess = PRINTF_SIZE_GUESS; /* How much space to reserve. */ - - do - { - va_list args; - - if (! __argp_fmtstream_ensure (fs, size_guess)) - return -1; - - va_start (args, fmt); - avail = fs->end - fs->p; - out = __vsnprintf (fs->p, avail, fmt, args); - va_end (args); - if ((size_t) out >= avail) - size_guess = out + 1; - } - while ((size_t) out >= avail); - - fs->p += out; - - return out; -} -#if 0 -/* Not exported. */ -#ifdef weak_alias -weak_alias (__argp_fmtstream_printf, argp_fmtstream_printf) -#endif -#endif - -#endif /* !ARGP_FMTSTREAM_USE_LINEWRAP */ diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/argp-fmtstream.h b/thirdparty/grub-2.04/grub-core/lib/gnulib/argp-fmtstream.h deleted file mode 100644 index 0cc88525e..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/argp-fmtstream.h +++ /dev/null @@ -1,310 +0,0 @@ -/* Word-wrapping and line-truncating streams. - Copyright (C) 1997-2019 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Written by Miles Bader . - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . */ - -/* This package emulates glibc 'line_wrap_stream' semantics for systems that - don't have that. If the system does have it, it is just a wrapper for - that. This header file is only used internally while compiling argp, and - shouldn't be installed. */ - -#ifndef _ARGP_FMTSTREAM_H -#define _ARGP_FMTSTREAM_H - -#include -#include -#include - -/* The __attribute__ feature is available in gcc versions 2.5 and later. - The __-protected variants of the attributes 'format' and 'printf' are - accepted by gcc versions 2.6.4 (effectively 2.7) and later. - We enable _GL_ATTRIBUTE_FORMAT only if these are supported too, because - gnulib and libintl do '#define printf __printf__' when they override - the 'printf' function. */ -#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 7) -# define _GL_ATTRIBUTE_FORMAT(spec) __attribute__ ((__format__ spec)) -#else -# define _GL_ATTRIBUTE_FORMAT(spec) /* empty */ -#endif - -#if defined (__GNU_LIBRARY__) && defined (HAVE_LINEWRAP_H) -/* line_wrap_stream is available, so use that. */ -#define ARGP_FMTSTREAM_USE_LINEWRAP -#endif - -#ifdef ARGP_FMTSTREAM_USE_LINEWRAP -/* Just be a simple wrapper for line_wrap_stream; the semantics are - *slightly* different, as line_wrap_stream doesn't actually make a new - object, it just modifies the given stream (reversibly) to do - line-wrapping. Since we control who uses this code, it doesn't matter. */ - -#include - -typedef FILE *argp_fmtstream_t; - -#define argp_make_fmtstream line_wrap_stream -#define __argp_make_fmtstream line_wrap_stream -#define argp_fmtstream_free line_unwrap_stream -#define __argp_fmtstream_free line_unwrap_stream - -#define __argp_fmtstream_putc(fs,ch) putc(ch,fs) -#define argp_fmtstream_putc(fs,ch) putc(ch,fs) -#define __argp_fmtstream_puts(fs,str) fputs(str,fs) -#define argp_fmtstream_puts(fs,str) fputs(str,fs) -#define __argp_fmtstream_write(fs,str,len) fwrite(str,1,len,fs) -#define argp_fmtstream_write(fs,str,len) fwrite(str,1,len,fs) -#define __argp_fmtstream_printf fprintf -#define argp_fmtstream_printf fprintf - -#define __argp_fmtstream_lmargin line_wrap_lmargin -#define argp_fmtstream_lmargin line_wrap_lmargin -#define __argp_fmtstream_set_lmargin line_wrap_set_lmargin -#define argp_fmtstream_set_lmargin line_wrap_set_lmargin -#define __argp_fmtstream_rmargin line_wrap_rmargin -#define argp_fmtstream_rmargin line_wrap_rmargin -#define __argp_fmtstream_set_rmargin line_wrap_set_rmargin -#define argp_fmtstream_set_rmargin line_wrap_set_rmargin -#define __argp_fmtstream_wmargin line_wrap_wmargin -#define argp_fmtstream_wmargin line_wrap_wmargin -#define __argp_fmtstream_set_wmargin line_wrap_set_wmargin -#define argp_fmtstream_set_wmargin line_wrap_set_wmargin -#define __argp_fmtstream_point line_wrap_point -#define argp_fmtstream_point line_wrap_point - -#else /* !ARGP_FMTSTREAM_USE_LINEWRAP */ -/* Guess we have to define our own version. */ - - -struct argp_fmtstream -{ - FILE *stream; /* The stream we're outputting to. */ - - size_t lmargin, rmargin; /* Left and right margins. */ - ssize_t wmargin; /* Margin to wrap to, or -1 to truncate. */ - - /* Point in buffer to which we've processed for wrapping, but not output. */ - size_t point_offs; - /* Output column at POINT_OFFS, or -1 meaning 0 but don't add lmargin. */ - ssize_t point_col; - - char *buf; /* Output buffer. */ - char *p; /* Current end of text in BUF. */ - char *end; /* Absolute end of BUF. */ -}; - -typedef struct argp_fmtstream *argp_fmtstream_t; - -/* Return an argp_fmtstream that outputs to STREAM, and which prefixes lines - written on it with LMARGIN spaces and limits them to RMARGIN columns - total. If WMARGIN >= 0, words that extend past RMARGIN are wrapped by - replacing the whitespace before them with a newline and WMARGIN spaces. - Otherwise, chars beyond RMARGIN are simply dropped until a newline. - Returns NULL if there was an error. */ -extern argp_fmtstream_t __argp_make_fmtstream (FILE *__stream, - size_t __lmargin, - size_t __rmargin, - ssize_t __wmargin); -extern argp_fmtstream_t argp_make_fmtstream (FILE *__stream, - size_t __lmargin, - size_t __rmargin, - ssize_t __wmargin); - -/* Flush __FS to its stream, and free it (but don't close the stream). */ -extern void __argp_fmtstream_free (argp_fmtstream_t __fs); -extern void argp_fmtstream_free (argp_fmtstream_t __fs); - -extern ssize_t __argp_fmtstream_printf (argp_fmtstream_t __fs, - const char *__fmt, ...) - _GL_ATTRIBUTE_FORMAT ((printf, 2, 3)); -extern ssize_t argp_fmtstream_printf (argp_fmtstream_t __fs, - const char *__fmt, ...) - _GL_ATTRIBUTE_FORMAT ((printf, 2, 3)); - -#if _LIBC -extern int __argp_fmtstream_putc (argp_fmtstream_t __fs, int __ch); -extern int argp_fmtstream_putc (argp_fmtstream_t __fs, int __ch); - -extern int __argp_fmtstream_puts (argp_fmtstream_t __fs, const char *__str); -extern int argp_fmtstream_puts (argp_fmtstream_t __fs, const char *__str); - -extern size_t __argp_fmtstream_write (argp_fmtstream_t __fs, - const char *__str, size_t __len); -extern size_t argp_fmtstream_write (argp_fmtstream_t __fs, - const char *__str, size_t __len); -#endif - -/* Access macros for various bits of state. */ -#define argp_fmtstream_lmargin(__fs) ((__fs)->lmargin) -#define argp_fmtstream_rmargin(__fs) ((__fs)->rmargin) -#define argp_fmtstream_wmargin(__fs) ((__fs)->wmargin) -#define __argp_fmtstream_lmargin argp_fmtstream_lmargin -#define __argp_fmtstream_rmargin argp_fmtstream_rmargin -#define __argp_fmtstream_wmargin argp_fmtstream_wmargin - -#if _LIBC -/* Set __FS's left margin to LMARGIN and return the old value. */ -extern size_t argp_fmtstream_set_lmargin (argp_fmtstream_t __fs, - size_t __lmargin); -extern size_t __argp_fmtstream_set_lmargin (argp_fmtstream_t __fs, - size_t __lmargin); - -/* Set __FS's right margin to __RMARGIN and return the old value. */ -extern size_t argp_fmtstream_set_rmargin (argp_fmtstream_t __fs, - size_t __rmargin); -extern size_t __argp_fmtstream_set_rmargin (argp_fmtstream_t __fs, - size_t __rmargin); - -/* Set __FS's wrap margin to __WMARGIN and return the old value. */ -extern size_t argp_fmtstream_set_wmargin (argp_fmtstream_t __fs, - size_t __wmargin); -extern size_t __argp_fmtstream_set_wmargin (argp_fmtstream_t __fs, - size_t __wmargin); - -/* Return the column number of the current output point in __FS. */ -extern size_t argp_fmtstream_point (argp_fmtstream_t __fs); -extern size_t __argp_fmtstream_point (argp_fmtstream_t __fs); -#endif - -/* Internal routines. */ -extern void _argp_fmtstream_update (argp_fmtstream_t __fs); -extern void __argp_fmtstream_update (argp_fmtstream_t __fs); -extern int _argp_fmtstream_ensure (argp_fmtstream_t __fs, size_t __amount); -extern int __argp_fmtstream_ensure (argp_fmtstream_t __fs, size_t __amount); - -#if !_LIBC || defined __OPTIMIZE__ -/* Inline versions of above routines. */ - -#if !_LIBC -#define __argp_fmtstream_putc argp_fmtstream_putc -#define __argp_fmtstream_puts argp_fmtstream_puts -#define __argp_fmtstream_write argp_fmtstream_write -#define __argp_fmtstream_set_lmargin argp_fmtstream_set_lmargin -#define __argp_fmtstream_set_rmargin argp_fmtstream_set_rmargin -#define __argp_fmtstream_set_wmargin argp_fmtstream_set_wmargin -#define __argp_fmtstream_point argp_fmtstream_point -#define __argp_fmtstream_update _argp_fmtstream_update -#define __argp_fmtstream_ensure _argp_fmtstream_ensure -#ifndef _GL_INLINE_HEADER_BEGIN - #error "Please include config.h first." -#endif -_GL_INLINE_HEADER_BEGIN -#ifndef ARGP_FS_EI -# define ARGP_FS_EI _GL_INLINE -#endif -#endif - -#ifndef ARGP_FS_EI -#define ARGP_FS_EI extern inline -#endif - -ARGP_FS_EI size_t -__argp_fmtstream_write (argp_fmtstream_t __fs, const char *__str, size_t __len) -{ - if (__fs->p + __len <= __fs->end || __argp_fmtstream_ensure (__fs, __len)) - { - memcpy (__fs->p, __str, __len); - __fs->p += __len; - return __len; - } - else - return 0; -} - -ARGP_FS_EI int -__argp_fmtstream_puts (argp_fmtstream_t __fs, const char *__str) -{ - size_t __len = strlen (__str); - if (__len) - { - size_t __wrote = __argp_fmtstream_write (__fs, __str, __len); - return __wrote == __len ? 0 : -1; - } - else - return 0; -} - -ARGP_FS_EI int -__argp_fmtstream_putc (argp_fmtstream_t __fs, int __ch) -{ - if (__fs->p < __fs->end || __argp_fmtstream_ensure (__fs, 1)) - return *__fs->p++ = __ch; - else - return EOF; -} - -/* Set __FS's left margin to __LMARGIN and return the old value. */ -ARGP_FS_EI size_t -__argp_fmtstream_set_lmargin (argp_fmtstream_t __fs, size_t __lmargin) -{ - size_t __old; - if ((size_t) (__fs->p - __fs->buf) > __fs->point_offs) - __argp_fmtstream_update (__fs); - __old = __fs->lmargin; - __fs->lmargin = __lmargin; - return __old; -} - -/* Set __FS's right margin to __RMARGIN and return the old value. */ -ARGP_FS_EI size_t -__argp_fmtstream_set_rmargin (argp_fmtstream_t __fs, size_t __rmargin) -{ - size_t __old; - if ((size_t) (__fs->p - __fs->buf) > __fs->point_offs) - __argp_fmtstream_update (__fs); - __old = __fs->rmargin; - __fs->rmargin = __rmargin; - return __old; -} - -/* Set FS's wrap margin to __WMARGIN and return the old value. */ -ARGP_FS_EI size_t -__argp_fmtstream_set_wmargin (argp_fmtstream_t __fs, size_t __wmargin) -{ - size_t __old; - if ((size_t) (__fs->p - __fs->buf) > __fs->point_offs) - __argp_fmtstream_update (__fs); - __old = __fs->wmargin; - __fs->wmargin = __wmargin; - return __old; -} - -/* Return the column number of the current output point in __FS. */ -ARGP_FS_EI size_t -__argp_fmtstream_point (argp_fmtstream_t __fs) -{ - if ((size_t) (__fs->p - __fs->buf) > __fs->point_offs) - __argp_fmtstream_update (__fs); - return __fs->point_col >= 0 ? __fs->point_col : 0; -} - -#if !_LIBC -#undef __argp_fmtstream_putc -#undef __argp_fmtstream_puts -#undef __argp_fmtstream_write -#undef __argp_fmtstream_set_lmargin -#undef __argp_fmtstream_set_rmargin -#undef __argp_fmtstream_set_wmargin -#undef __argp_fmtstream_point -#undef __argp_fmtstream_update -#undef __argp_fmtstream_ensure -_GL_INLINE_HEADER_END -#endif - -#endif /* !_LIBC || __OPTIMIZE__ */ - -#endif /* ARGP_FMTSTREAM_USE_LINEWRAP */ - -#endif /* argp-fmtstream.h */ diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/argp-fs-xinl.c b/thirdparty/grub-2.04/grub-core/lib/gnulib/argp-fs-xinl.c deleted file mode 100644 index a2e843c87..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/argp-fs-xinl.c +++ /dev/null @@ -1,46 +0,0 @@ -/* Real definitions for extern inline functions in argp-fmtstream.h - Copyright (C) 1997-2019 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Written by Miles Bader . - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . */ - -#ifdef HAVE_CONFIG_H -# include -#endif - -#ifdef _LIBC -# define ARGP_FS_EI -#else -# define ARGP_FS_EI _GL_EXTERN_INLINE -#endif -#undef __OPTIMIZE__ -#define __OPTIMIZE__ 1 -#include "argp-fmtstream.h" - -#if 0 -/* Not exported. */ -/* Add weak aliases. */ -#if _LIBC - 0 && !defined (ARGP_FMTSTREAM_USE_LINEWRAP) && defined (weak_alias) - -weak_alias (__argp_fmtstream_putc, argp_fmtstream_putc) -weak_alias (__argp_fmtstream_puts, argp_fmtstream_puts) -weak_alias (__argp_fmtstream_write, argp_fmtstream_write) -weak_alias (__argp_fmtstream_set_lmargin, argp_fmtstream_set_lmargin) -weak_alias (__argp_fmtstream_set_rmargin, argp_fmtstream_set_rmargin) -weak_alias (__argp_fmtstream_set_wmargin, argp_fmtstream_set_wmargin) -weak_alias (__argp_fmtstream_point, argp_fmtstream_point) - -#endif -#endif diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/argp-help.c b/thirdparty/grub-2.04/grub-core/lib/gnulib/argp-help.c deleted file mode 100644 index 5d8f451ec..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/argp-help.c +++ /dev/null @@ -1,1911 +0,0 @@ -/* Hierarchical argument parsing help output - Copyright (C) 1995-2019 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Written by Miles Bader . - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . */ - -#ifndef _GNU_SOURCE -# define _GNU_SOURCE 1 -#endif - -#ifdef HAVE_CONFIG_H -# include -#endif - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#ifdef _LIBC -# include <../libio/libioP.h> -# include -#endif - -#ifdef _LIBC -# include -# undef dgettext -# define dgettext(domain, msgid) \ - __dcgettext (domain, msgid, LC_MESSAGES) -#else -# include "gettext.h" -#endif - -#include "argp.h" -#include "argp-fmtstream.h" -#include "argp-namefrob.h" -#include "mbswidth.h" - -#ifndef SIZE_MAX -# define SIZE_MAX ((size_t) -1) -#endif - -/* User-selectable (using an environment variable) formatting parameters. - - These may be specified in an environment variable called 'ARGP_HELP_FMT', - with a contents like: VAR1=VAL1,VAR2=VAL2,BOOLVAR2,no-BOOLVAR2 - Where VALn must be a positive integer. The list of variables is in the - UPARAM_NAMES vector, below. */ - -/* Default parameters. */ -#define DUP_ARGS 0 /* True if option argument can be duplicated. */ -#define DUP_ARGS_NOTE 1 /* True to print a note about duplicate args. */ -#define SHORT_OPT_COL 2 /* column in which short options start */ -#define LONG_OPT_COL 6 /* column in which long options start */ -#define DOC_OPT_COL 2 /* column in which doc options start */ -#define OPT_DOC_COL 29 /* column in which option text starts */ -#define HEADER_COL 1 /* column in which group headers are printed */ -#define USAGE_INDENT 12 /* indentation of wrapped usage lines */ -#define RMARGIN 79 /* right margin used for wrapping */ - -/* User-selectable (using an environment variable) formatting parameters. - They must all be of type 'int' for the parsing code to work. */ -struct uparams -{ - /* If true, arguments for an option are shown with both short and long - options, even when a given option has both, e.g. '-x ARG, --longx=ARG'. - If false, then if an option has both, the argument is only shown with - the long one, e.g., '-x, --longx=ARG', and a message indicating that - this really means both is printed below the options. */ - int dup_args; - - /* This is true if when DUP_ARGS is false, and some duplicate arguments have - been suppressed, an explanatory message should be printed. */ - int dup_args_note; - - /* Various output columns. */ - int short_opt_col; /* column in which short options start */ - int long_opt_col; /* column in which long options start */ - int doc_opt_col; /* column in which doc options start */ - int opt_doc_col; /* column in which option text starts */ - int header_col; /* column in which group headers are printed */ - int usage_indent; /* indentation of wrapped usage lines */ - int rmargin; /* right margin used for wrapping */ - - int valid; /* True when the values in here are valid. */ -}; - -/* This is a global variable, as user options are only ever read once. */ -static struct uparams uparams = { - DUP_ARGS, DUP_ARGS_NOTE, - SHORT_OPT_COL, LONG_OPT_COL, DOC_OPT_COL, OPT_DOC_COL, HEADER_COL, - USAGE_INDENT, RMARGIN -}; - -/* A particular uparam, and what the user name is. */ -struct uparam_name -{ - const char name[14]; /* User name. */ - bool is_bool; /* Whether it's 'boolean'. */ - unsigned char uparams_offs; /* Location of the (int) field in UPARAMS. */ -}; - -/* The name-field mappings we know about. */ -static const struct uparam_name uparam_names[] = -{ - { "dup-args", true, offsetof (struct uparams, dup_args) }, - { "dup-args-note", true, offsetof (struct uparams, dup_args_note) }, - { "short-opt-col", false, offsetof (struct uparams, short_opt_col) }, - { "long-opt-col", false, offsetof (struct uparams, long_opt_col) }, - { "doc-opt-col", false, offsetof (struct uparams, doc_opt_col) }, - { "opt-doc-col", false, offsetof (struct uparams, opt_doc_col) }, - { "header-col", false, offsetof (struct uparams, header_col) }, - { "usage-indent", false, offsetof (struct uparams, usage_indent) }, - { "rmargin", false, offsetof (struct uparams, rmargin) } -}; -#define nuparam_names (sizeof (uparam_names) / sizeof (uparam_names[0])) - -static void -validate_uparams (const struct argp_state *state, struct uparams *upptr) -{ - const struct uparam_name *up; - - for (up = uparam_names; up < uparam_names + nuparam_names; up++) - { - if (up->is_bool - || up->uparams_offs == offsetof (struct uparams, rmargin)) - continue; - if (*(int *)((char *)upptr + up->uparams_offs) >= upptr->rmargin) - { - __argp_failure (state, 0, 0, - dgettext (state->root_argp->argp_domain, - "\ -ARGP_HELP_FMT: %s value is less than or equal to %s"), - "rmargin", up->name); - return; - } - } - uparams = *upptr; - uparams.valid = 1; -} - -/* Read user options from the environment, and fill in UPARAMS appropriately. */ -static void -fill_in_uparams (const struct argp_state *state) -{ - const char *var = getenv ("ARGP_HELP_FMT"); - struct uparams new_params = uparams; - -#define SKIPWS(p) do { while (isspace ((unsigned char) *p)) p++; } while (0); - - if (var) - { - /* Parse var. */ - while (*var) - { - SKIPWS (var); - - if (isalpha ((unsigned char) *var)) - { - size_t var_len; - const struct uparam_name *un; - int unspec = 0, val = 0; - const char *arg = var; - - while (isalnum ((unsigned char) *arg) || *arg == '-' || *arg == '_') - arg++; - var_len = arg - var; - - SKIPWS (arg); - - if (*arg == '\0' || *arg == ',') - unspec = 1; - else if (*arg == '=') - { - arg++; - SKIPWS (arg); - } - - if (unspec) - { - if (var[0] == 'n' && var[1] == 'o' && var[2] == '-') - { - val = 0; - var += 3; - var_len -= 3; - } - else - val = 1; - } - else if (isdigit ((unsigned char) *arg)) - { - val = atoi (arg); - while (isdigit ((unsigned char) *arg)) - arg++; - SKIPWS (arg); - } - - for (un = uparam_names; - un < uparam_names + nuparam_names; - un++) - if (strlen (un->name) == var_len - && strncmp (var, un->name, var_len) == 0) - { - if (unspec && !un->is_bool) - __argp_failure (state, 0, 0, - dgettext (state == NULL ? NULL - : state->root_argp->argp_domain, - "\ -%.*s: ARGP_HELP_FMT parameter requires a value"), - (int) var_len, var); - else - *(int *)((char *)&new_params + un->uparams_offs) = val; - break; - } - if (un == uparam_names + nuparam_names) - __argp_failure (state, 0, 0, - dgettext (state == NULL ? NULL - : state->root_argp->argp_domain, "\ -%.*s: Unknown ARGP_HELP_FMT parameter"), - (int) var_len, var); - - var = arg; - if (*var == ',') - var++; - } - else if (*var) - { - __argp_failure (state, 0, 0, - dgettext (state == NULL ? NULL - : state->root_argp->argp_domain, - "Garbage in ARGP_HELP_FMT: %s"), var); - break; - } - } - validate_uparams (state, &new_params); - } -} - -/* Returns true if OPT hasn't been marked invisible. Visibility only affects - whether OPT is displayed or used in sorting, not option shadowing. */ -#define ovisible(opt) (! ((opt)->flags & OPTION_HIDDEN)) - -/* Returns true if OPT is an alias for an earlier option. */ -#define oalias(opt) ((opt)->flags & OPTION_ALIAS) - -/* Returns true if OPT is a documentation-only entry. */ -#define odoc(opt) ((opt)->flags & OPTION_DOC) - -/* Returns true if OPT should not be translated */ -#define onotrans(opt) ((opt)->flags & OPTION_NO_TRANS) - -/* Returns true if OPT is the end-of-list marker for a list of options. */ -#define oend(opt) __option_is_end (opt) - -/* Returns true if OPT has a short option. */ -#define oshort(opt) __option_is_short (opt) - -/* - The help format for a particular option is like: - - -xARG, -yARG, --long1=ARG, --long2=ARG Documentation... - - Where ARG will be omitted if there's no argument, for this option, or - will be surrounded by "[" and "]" appropriately if the argument is - optional. The documentation string is word-wrapped appropriately, and if - the list of options is long enough, it will be started on a separate line. - If there are no short options for a given option, the first long option is - indented slightly in a way that's supposed to make most long options appear - to be in a separate column. - - For example, the following output (from ps): - - -p PID, --pid=PID List the process PID - --pgrp=PGRP List processes in the process group PGRP - -P, -x, --no-parent Include processes without parents - -Q, --all-fields Don't elide unusable fields (normally if there's - some reason ps can't print a field for any - process, it's removed from the output entirely) - -r, --reverse, --gratuitously-long-reverse-option - Reverse the order of any sort - --session[=SID] Add the processes from the session SID (which - defaults to the sid of the current process) - - Here are some more options: - -f ZOT, --foonly=ZOT Glork a foonly - -z, --zaza Snit a zar - - -?, --help Give this help list - --usage Give a short usage message - -V, --version Print program version - - The struct argp_option array for the above could look like: - - { - {"pid", 'p', "PID", 0, "List the process PID"}, - {"pgrp", OPT_PGRP, "PGRP", 0, "List processes in the process group PGRP"}, - {"no-parent", 'P', 0, 0, "Include processes without parents"}, - {0, 'x', 0, OPTION_ALIAS}, - {"all-fields",'Q', 0, 0, "Don't elide unusable fields (normally" - " if there's some reason ps can't" - " print a field for any process, it's" - " removed from the output entirely)" }, - {"reverse", 'r', 0, 0, "Reverse the order of any sort"}, - {"gratuitously-long-reverse-option", 0, 0, OPTION_ALIAS}, - {"session", OPT_SESS, "SID", OPTION_ARG_OPTIONAL, - "Add the processes from the session" - " SID (which defaults to the sid of" - " the current process)" }, - - {0,0,0,0, "Here are some more options:"}, - {"foonly", 'f', "ZOT", 0, "Glork a foonly"}, - {"zaza", 'z', 0, 0, "Snit a zar"}, - - {0} - } - - Note that the last three options are automatically supplied by argp_parse, - unless you tell it not to with ARGP_NO_HELP. - -*/ - -/* Returns true if CH occurs between BEG and END. */ -static int -find_char (char ch, char *beg, char *end) -{ - while (beg < end) - if (*beg == ch) - return 1; - else - beg++; - return 0; -} - -struct hol_cluster; /* fwd decl */ - -struct hol_entry -{ - /* First option. */ - const struct argp_option *opt; - /* Number of options (including aliases). */ - unsigned num; - - /* A pointers into the HOL's short_options field, to the first short option - letter for this entry. The order of the characters following this point - corresponds to the order of options pointed to by OPT, and there are at - most NUM. A short option recorded in an option following OPT is only - valid if it occurs in the right place in SHORT_OPTIONS (otherwise it's - probably been shadowed by some other entry). */ - char *short_options; - - /* Entries are sorted by their group first, in the order: - 1, 2, ..., n, 0, -m, ..., -2, -1 - and then alphabetically within each group. The default is 0. */ - int group; - - /* The cluster of options this entry belongs to, or 0 if none. */ - struct hol_cluster *cluster; - - /* The argp from which this option came. */ - const struct argp *argp; - - /* Position in the array */ - unsigned ord; -}; - -/* A cluster of entries to reflect the argp tree structure. */ -struct hol_cluster -{ - /* A descriptive header printed before options in this cluster. */ - const char *header; - - /* Used to order clusters within the same group with the same parent, - according to the order in which they occurred in the parent argp's child - list. */ - int index; - - /* How to sort this cluster with respect to options and other clusters at the - same depth (clusters always follow options in the same group). */ - int group; - - /* The cluster to which this cluster belongs, or 0 if it's at the base - level. */ - struct hol_cluster *parent; - - /* The argp from which this cluster is (eventually) derived. */ - const struct argp *argp; - - /* The distance this cluster is from the root. */ - int depth; - - /* Clusters in a given hol are kept in a linked list, to make freeing them - possible. */ - struct hol_cluster *next; -}; - -/* A list of options for help. */ -struct hol -{ - /* An array of hol_entry's. */ - struct hol_entry *entries; - /* The number of entries in this hol. If this field is zero, the others - are undefined. */ - unsigned num_entries; - - /* A string containing all short options in this HOL. Each entry contains - pointers into this string, so the order can't be messed with blindly. */ - char *short_options; - - /* Clusters of entries in this hol. */ - struct hol_cluster *clusters; -}; - -/* Create a struct hol from the options in ARGP. CLUSTER is the - hol_cluster in which these entries occur, or 0, if at the root. */ -static struct hol * -make_hol (const struct argp *argp, struct hol_cluster *cluster) -{ - char *so; - const struct argp_option *o; - const struct argp_option *opts = argp->options; - struct hol_entry *entry; - unsigned num_short_options = 0; - struct hol *hol = malloc (sizeof (struct hol)); - - assert (hol); - - hol->num_entries = 0; - hol->clusters = 0; - - if (opts) - { - int cur_group = 0; - - /* The first option must not be an alias. */ - assert (! oalias (opts)); - - /* Calculate the space needed. */ - for (o = opts; ! oend (o); o++) - { - if (! oalias (o)) - hol->num_entries++; - if (oshort (o)) - num_short_options++; /* This is an upper bound. */ - } - - hol->entries = malloc (sizeof (struct hol_entry) * hol->num_entries); - hol->short_options = malloc (num_short_options + 1); - - assert (hol->entries && hol->short_options); - if (SIZE_MAX <= UINT_MAX) - assert (hol->num_entries <= SIZE_MAX / sizeof (struct hol_entry)); - - /* Fill in the entries. */ - so = hol->short_options; - for (o = opts, entry = hol->entries; ! oend (o); entry++) - { - entry->opt = o; - entry->num = 0; - entry->short_options = so; - entry->group = cur_group = - o->group - ? o->group - : ((!o->name && !o->key) - ? cur_group + 1 - : cur_group); - entry->cluster = cluster; - entry->argp = argp; - - do - { - entry->num++; - if (oshort (o) && ! find_char (o->key, hol->short_options, so)) - /* O has a valid short option which hasn't already been used.*/ - *so++ = o->key; - o++; - } - while (! oend (o) && oalias (o)); - } - *so = '\0'; /* null terminated so we can find the length */ - } - - return hol; -} - -/* Add a new cluster to HOL, with the given GROUP and HEADER (taken from the - associated argp child list entry), INDEX, and PARENT, and return a pointer - to it. ARGP is the argp that this cluster results from. */ -static struct hol_cluster * -hol_add_cluster (struct hol *hol, int group, const char *header, int index, - struct hol_cluster *parent, const struct argp *argp) -{ - struct hol_cluster *cl = malloc (sizeof (struct hol_cluster)); - if (cl) - { - cl->group = group; - cl->header = header; - - cl->index = index; - cl->parent = parent; - cl->argp = argp; - cl->depth = parent ? parent->depth + 1 : 0; - - cl->next = hol->clusters; - hol->clusters = cl; - } - return cl; -} - -/* Free HOL and any resources it uses. */ -static void -hol_free (struct hol *hol) -{ - struct hol_cluster *cl = hol->clusters; - - while (cl) - { - struct hol_cluster *next = cl->next; - free (cl); - cl = next; - } - - if (hol->num_entries > 0) - { - free (hol->entries); - free (hol->short_options); - } - - free (hol); -} - -static int -hol_entry_short_iterate (const struct hol_entry *entry, - int (*func)(const struct argp_option *opt, - const struct argp_option *real, - const char *domain, void *cookie), - const char *domain, void *cookie) -{ - unsigned nopts; - int val = 0; - const struct argp_option *opt, *real = entry->opt; - char *so = entry->short_options; - - for (opt = real, nopts = entry->num; nopts > 0 && !val; opt++, nopts--) - if (oshort (opt) && *so == opt->key) - { - if (!oalias (opt)) - real = opt; - if (ovisible (opt)) - val = (*func)(opt, real, domain, cookie); - so++; - } - - return val; -} - -static inline int -#if __GNUC__ >= 3 -__attribute__ ((always_inline)) -#endif -hol_entry_long_iterate (const struct hol_entry *entry, - int (*func)(const struct argp_option *opt, - const struct argp_option *real, - const char *domain, void *cookie), - const char *domain, void *cookie) -{ - unsigned nopts; - int val = 0; - const struct argp_option *opt, *real = entry->opt; - - for (opt = real, nopts = entry->num; nopts > 0 && !val; opt++, nopts--) - if (opt->name) - { - if (!oalias (opt)) - real = opt; - if (ovisible (opt)) - val = (*func)(opt, real, domain, cookie); - } - - return val; -} - -/* Iterator that returns true for the first short option. */ -static int -until_short (const struct argp_option *opt, const struct argp_option *real, - const char *domain, void *cookie) -{ - return oshort (opt) ? opt->key : 0; -} - -/* Returns the first valid short option in ENTRY, or 0 if there is none. */ -static char -hol_entry_first_short (const struct hol_entry *entry) -{ - return hol_entry_short_iterate (entry, until_short, - entry->argp->argp_domain, 0); -} - -/* Returns the first valid long option in ENTRY, or 0 if there is none. */ -static const char * -hol_entry_first_long (const struct hol_entry *entry) -{ - const struct argp_option *opt; - unsigned num; - for (opt = entry->opt, num = entry->num; num > 0; opt++, num--) - if (opt->name && ovisible (opt)) - return opt->name; - return 0; -} - -/* Returns the entry in HOL with the long option name NAME, or 0 if there is - none. */ -static struct hol_entry * -hol_find_entry (struct hol *hol, const char *name) -{ - struct hol_entry *entry = hol->entries; - unsigned num_entries = hol->num_entries; - - while (num_entries-- > 0) - { - const struct argp_option *opt = entry->opt; - unsigned num_opts = entry->num; - - while (num_opts-- > 0) - if (opt->name && ovisible (opt) && strcmp (opt->name, name) == 0) - return entry; - else - opt++; - - entry++; - } - - return 0; -} - -/* If an entry with the long option NAME occurs in HOL, set its special - sort position to GROUP. */ -static void -hol_set_group (struct hol *hol, const char *name, int group) -{ - struct hol_entry *entry = hol_find_entry (hol, name); - if (entry) - entry->group = group; -} - -/* Order by group: 0, 1, 2, ..., n, -m, ..., -2, -1. - EQ is what to return if GROUP1 and GROUP2 are the same. */ -static int -group_cmp (int group1, int group2, int eq) -{ - if (group1 == group2) - return eq; - else if ((group1 < 0 && group2 < 0) || (group1 >= 0 && group2 >= 0)) - return group1 - group2; - else - return group2 - group1; -} - -/* Compare clusters CL1 & CL2 by the order that they should appear in - output. */ -static int -hol_cluster_cmp (const struct hol_cluster *cl1, const struct hol_cluster *cl2) -{ - /* If one cluster is deeper than the other, use its ancestor at the same - level, so that finding the common ancestor is straightforward. */ - while (cl1->depth > cl2->depth) - cl1 = cl1->parent; - while (cl2->depth > cl1->depth) - cl2 = cl2->parent; - - /* Now reduce both clusters to their ancestors at the point where both have - a common parent; these can be directly compared. */ - while (cl1->parent != cl2->parent) - cl1 = cl1->parent, cl2 = cl2->parent; - - return group_cmp (cl1->group, cl2->group, cl2->index - cl1->index); -} - -/* Return the ancestor of CL that's just below the root (i.e., has a parent - of 0). */ -static struct hol_cluster * -hol_cluster_base (struct hol_cluster *cl) -{ - while (cl->parent) - cl = cl->parent; - return cl; -} - -/* Return true if CL1 is a child of CL2. */ -static int -hol_cluster_is_child (const struct hol_cluster *cl1, - const struct hol_cluster *cl2) -{ - while (cl1 && cl1 != cl2) - cl1 = cl1->parent; - return cl1 == cl2; -} - -/* Given the name of an OPTION_DOC option, modifies NAME to start at the tail - that should be used for comparisons, and returns true iff it should be - treated as a non-option. */ -static int -canon_doc_option (const char **name) -{ - int non_opt; - /* Skip initial whitespace. */ - while (isspace (**name)) - (*name)++; - /* Decide whether this looks like an option (leading '-') or not. */ - non_opt = (**name != '-'); - /* Skip until part of name used for sorting. */ - while (**name && !isalnum (**name)) - (*name)++; - return non_opt; -} - -#define HOL_ENTRY_PTRCMP(a,b) ((a)->ord < (b)->ord ? -1 : 1) - -/* Order ENTRY1 & ENTRY2 by the order which they should appear in a help - listing. */ -static int -hol_entry_cmp (const struct hol_entry *entry1, - const struct hol_entry *entry2) -{ - /* The group numbers by which the entries should be ordered; if either is - in a cluster, then this is just the group within the cluster. */ - int group1 = entry1->group, group2 = entry2->group; - - if (entry1->cluster != entry2->cluster) - { - /* The entries are not within the same cluster, so we can't compare them - directly, we have to use the appropriate clustering level too. */ - if (! entry1->cluster) - /* ENTRY1 is at the 'base level', not in a cluster, so we have to - compare it's group number with that of the base cluster in which - ENTRY2 resides. Note that if they're in the same group, the - clustered option always comes last. */ - return group_cmp (group1, hol_cluster_base (entry2->cluster)->group, -1); - else if (! entry2->cluster) - /* Likewise, but ENTRY2's not in a cluster. */ - return group_cmp (hol_cluster_base (entry1->cluster)->group, group2, 1); - else - /* Both entries are in clusters, we can just compare the clusters. */ - return hol_cluster_cmp (entry1->cluster, entry2->cluster); - } - else if (group1 == group2) - /* The entries are both in the same cluster and group, so compare them - alphabetically. */ - { - int short1 = hol_entry_first_short (entry1); - int short2 = hol_entry_first_short (entry2); - int doc1 = odoc (entry1->opt); - int doc2 = odoc (entry2->opt); - const char *long1 = hol_entry_first_long (entry1); - const char *long2 = hol_entry_first_long (entry2); - - if (doc1) - doc1 = long1 != NULL && canon_doc_option (&long1); - if (doc2) - doc2 = long2 != NULL && canon_doc_option (&long2); - - if (doc1 != doc2) - /* 'documentation' options always follow normal options (or - documentation options that *look* like normal options). */ - return doc1 - doc2; - else if (!short1 && !short2 && long1 && long2) - /* Only long options. */ - return __strcasecmp (long1, long2); - else - /* Compare short/short, long/short, short/long, using the first - character of long options. Entries without *any* valid - options (such as options with OPTION_HIDDEN set) will be put - first, but as they're not displayed, it doesn't matter where - they are. */ - { - char first1 = short1 ? short1 : long1 ? *long1 : 0; - char first2 = short2 ? short2 : long2 ? *long2 : 0; -#ifdef _tolower - int lower_cmp = _tolower (first1) - _tolower (first2); -#else - int lower_cmp = tolower (first1) - tolower (first2); -#endif - /* Compare ignoring case, except when the options are both the - same letter, in which case lower-case always comes first. */ - return lower_cmp ? lower_cmp : first2 - first1; - } - } - else - /* Within the same cluster, but not the same group, so just compare - groups. */ - return group_cmp (group1, group2, 0); -} - -/* Version of hol_entry_cmp with correct signature for qsort. */ -static int -hol_entry_qcmp (const void *entry1_v, const void *entry2_v) -{ - return hol_entry_cmp (entry1_v, entry2_v); -} - -/* Sort HOL by group and alphabetically by option name (with short options - taking precedence over long). Since the sorting is for display purposes - only, the shadowing of options isn't effected. */ -static void -hol_sort (struct hol *hol) -{ - if (hol->num_entries > 0) - { - unsigned i; - struct hol_entry *e; - for (i = 0, e = hol->entries; i < hol->num_entries; i++, e++) - e->ord = i; - qsort (hol->entries, hol->num_entries, sizeof (struct hol_entry), - hol_entry_qcmp); - } -} - -/* Append MORE to HOL, destroying MORE in the process. Options in HOL shadow - any in MORE with the same name. */ -static void -hol_append (struct hol *hol, struct hol *more) -{ - struct hol_cluster **cl_end = &hol->clusters; - - /* Steal MORE's cluster list, and add it to the end of HOL's. */ - while (*cl_end) - cl_end = &(*cl_end)->next; - *cl_end = more->clusters; - more->clusters = 0; - - /* Merge entries. */ - if (more->num_entries > 0) - { - if (hol->num_entries == 0) - { - hol->num_entries = more->num_entries; - hol->entries = more->entries; - hol->short_options = more->short_options; - more->num_entries = 0; /* Mark MORE's fields as invalid. */ - } - else - /* Append the entries in MORE to those in HOL, taking care to only add - non-shadowed SHORT_OPTIONS values. */ - { - unsigned left; - char *so, *more_so; - struct hol_entry *e; - unsigned num_entries = hol->num_entries + more->num_entries; - struct hol_entry *entries = - malloc (num_entries * sizeof (struct hol_entry)); - unsigned hol_so_len = strlen (hol->short_options); - char *short_options = - malloc (hol_so_len + strlen (more->short_options) + 1); - - assert (entries && short_options); - if (SIZE_MAX <= UINT_MAX) - assert (num_entries <= SIZE_MAX / sizeof (struct hol_entry)); - - __mempcpy (__mempcpy (entries, hol->entries, - hol->num_entries * sizeof (struct hol_entry)), - more->entries, - more->num_entries * sizeof (struct hol_entry)); - - __mempcpy (short_options, hol->short_options, hol_so_len); - - /* Fix up the short options pointers from HOL. */ - for (e = entries, left = hol->num_entries; left > 0; e++, left--) - e->short_options - = short_options + (e->short_options - hol->short_options); - - /* Now add the short options from MORE, fixing up its entries - too. */ - so = short_options + hol_so_len; - more_so = more->short_options; - for (left = more->num_entries; left > 0; e++, left--) - { - int opts_left; - const struct argp_option *opt; - - e->short_options = so; - - for (opts_left = e->num, opt = e->opt; opts_left; opt++, opts_left--) - { - int ch = *more_so; - if (oshort (opt) && ch == opt->key) - /* The next short option in MORE_SO, CH, is from OPT. */ - { - if (! find_char (ch, short_options, - short_options + hol_so_len)) - /* The short option CH isn't shadowed by HOL's options, - so add it to the sum. */ - *so++ = ch; - more_so++; - } - } - } - - *so = '\0'; - - free (hol->entries); - free (hol->short_options); - - hol->entries = entries; - hol->num_entries = num_entries; - hol->short_options = short_options; - } - } - - hol_free (more); -} - -/* Inserts enough spaces to make sure STREAM is at column COL. */ -static void -indent_to (argp_fmtstream_t stream, unsigned col) -{ - int needed = col - __argp_fmtstream_point (stream); - while (needed-- > 0) - __argp_fmtstream_putc (stream, ' '); -} - -/* Output to STREAM either a space, or a newline if there isn't room for at - least ENSURE characters before the right margin. */ -static void -space (argp_fmtstream_t stream, size_t ensure) -{ - if (__argp_fmtstream_point (stream) + ensure - >= __argp_fmtstream_rmargin (stream)) - __argp_fmtstream_putc (stream, '\n'); - else - __argp_fmtstream_putc (stream, ' '); -} - -/* If the option REAL has an argument, we print it in using the printf - format REQ_FMT or OPT_FMT depending on whether it's a required or - optional argument. */ -static void -arg (const struct argp_option *real, const char *req_fmt, const char *opt_fmt, - const char *domain, argp_fmtstream_t stream) -{ - if (real->arg) - { - if (real->flags & OPTION_ARG_OPTIONAL) - __argp_fmtstream_printf (stream, opt_fmt, - dgettext (domain, real->arg)); - else - __argp_fmtstream_printf (stream, req_fmt, - dgettext (domain, real->arg)); - } -} - -/* Helper functions for hol_entry_help. */ - -/* State used during the execution of hol_help. */ -struct hol_help_state -{ - /* PREV_ENTRY should contain the previous entry printed, or 0. */ - struct hol_entry *prev_entry; - - /* If an entry is in a different group from the previous one, and SEP_GROUPS - is true, then a blank line will be printed before any output. */ - int sep_groups; - - /* True if a duplicate option argument was suppressed (only ever set if - UPARAMS.dup_args is false). */ - int suppressed_dup_arg; -}; - -/* Some state used while printing a help entry (used to communicate with - helper functions). See the doc for hol_entry_help for more info, as most - of the fields are copied from its arguments. */ -struct pentry_state -{ - const struct hol_entry *entry; - argp_fmtstream_t stream; - struct hol_help_state *hhstate; - - /* True if nothing's been printed so far. */ - int first; - - /* If non-zero, the state that was used to print this help. */ - const struct argp_state *state; -}; - -/* If a user doc filter should be applied to DOC, do so. */ -static const char * -filter_doc (const char *doc, int key, const struct argp *argp, - const struct argp_state *state) -{ - if (argp && argp->help_filter) - /* We must apply a user filter to this output. */ - { - void *input = __argp_input (argp, state); - return (*argp->help_filter) (key, doc, input); - } - else - /* No filter. */ - return doc; -} - -/* Prints STR as a header line, with the margin lines set appropriately, and - notes the fact that groups should be separated with a blank line. ARGP is - the argp that should dictate any user doc filtering to take place. Note - that the previous wrap margin isn't restored, but the left margin is reset - to 0. */ -static void -print_header (const char *str, const struct argp *argp, - struct pentry_state *pest) -{ - const char *tstr = dgettext (argp->argp_domain, str); - const char *fstr = filter_doc (tstr, ARGP_KEY_HELP_HEADER, argp, pest->state); - - if (fstr) - { - if (*fstr) - { - if (pest->hhstate->prev_entry) - /* Precede with a blank line. */ - __argp_fmtstream_putc (pest->stream, '\n'); - indent_to (pest->stream, uparams.header_col); - __argp_fmtstream_set_lmargin (pest->stream, uparams.header_col); - __argp_fmtstream_set_wmargin (pest->stream, uparams.header_col); - __argp_fmtstream_puts (pest->stream, fstr); - __argp_fmtstream_set_lmargin (pest->stream, 0); - __argp_fmtstream_putc (pest->stream, '\n'); - } - - pest->hhstate->sep_groups = 1; /* Separate subsequent groups. */ - } - - if (fstr != tstr) - free ((char *) fstr); -} - -/* Inserts a comma if this isn't the first item on the line, and then makes - sure we're at least to column COL. If this *is* the first item on a line, - prints any pending whitespace/headers that should precede this line. Also - clears FIRST. */ -static void -comma (unsigned col, struct pentry_state *pest) -{ - if (pest->first) - { - const struct hol_entry *pe = pest->hhstate->prev_entry; - const struct hol_cluster *cl = pest->entry->cluster; - - if (pest->hhstate->sep_groups && pe && pest->entry->group != pe->group) - __argp_fmtstream_putc (pest->stream, '\n'); - - if (cl && cl->header && *cl->header - && (!pe - || (pe->cluster != cl - && !hol_cluster_is_child (pe->cluster, cl)))) - /* If we're changing clusters, then this must be the start of the - ENTRY's cluster unless that is an ancestor of the previous one - (in which case we had just popped into a sub-cluster for a bit). - If so, then print the cluster's header line. */ - { - int old_wm = __argp_fmtstream_wmargin (pest->stream); - print_header (cl->header, cl->argp, pest); - __argp_fmtstream_set_wmargin (pest->stream, old_wm); - } - - pest->first = 0; - } - else - __argp_fmtstream_puts (pest->stream, ", "); - - indent_to (pest->stream, col); -} - -/* Print help for ENTRY to STREAM. */ -static void -hol_entry_help (struct hol_entry *entry, const struct argp_state *state, - argp_fmtstream_t stream, struct hol_help_state *hhstate) -{ - unsigned num; - const struct argp_option *real = entry->opt, *opt; - char *so = entry->short_options; - int have_long_opt = 0; /* We have any long options. */ - /* Saved margins. */ - int old_lm = __argp_fmtstream_set_lmargin (stream, 0); - int old_wm = __argp_fmtstream_wmargin (stream); - /* PEST is a state block holding some of our variables that we'd like to - share with helper functions. */ - struct pentry_state pest = { entry, stream, hhstate, 1, state }; - - if (! odoc (real)) - for (opt = real, num = entry->num; num > 0; opt++, num--) - if (opt->name && ovisible (opt)) - { - have_long_opt = 1; - break; - } - - /* First emit short options. */ - __argp_fmtstream_set_wmargin (stream, uparams.short_opt_col); /* For truly bizarre cases. */ - for (opt = real, num = entry->num; num > 0; opt++, num--) - if (oshort (opt) && opt->key == *so) - /* OPT has a valid (non shadowed) short option. */ - { - if (ovisible (opt)) - { - comma (uparams.short_opt_col, &pest); - __argp_fmtstream_putc (stream, '-'); - __argp_fmtstream_putc (stream, *so); - if (!have_long_opt || uparams.dup_args) - arg (real, " %s", "[%s]", - state == NULL ? NULL : state->root_argp->argp_domain, - stream); - else if (real->arg) - hhstate->suppressed_dup_arg = 1; - } - so++; - } - - /* Now, long options. */ - if (odoc (real)) - /* A "documentation" option. */ - { - __argp_fmtstream_set_wmargin (stream, uparams.doc_opt_col); - for (opt = real, num = entry->num; num > 0; opt++, num--) - if (opt->name && ovisible (opt)) - { - comma (uparams.doc_opt_col, &pest); - /* Calling dgettext here isn't quite right, since sorting will - have been done on the original; but documentation options - should be pretty rare anyway... */ - __argp_fmtstream_puts (stream, - dgettext (state == NULL ? NULL - : state->root_argp->argp_domain, - opt->name)); - } - } - else - /* A real long option. */ - { - __argp_fmtstream_set_wmargin (stream, uparams.long_opt_col); - for (opt = real, num = entry->num; num > 0; opt++, num--) - if (opt->name && ovisible (opt)) - { - comma (uparams.long_opt_col, &pest); - __argp_fmtstream_printf (stream, "--%s", opt->name); - arg (real, "=%s", "[=%s]", - state == NULL ? NULL : state->root_argp->argp_domain, stream); - } - } - - /* Next, documentation strings. */ - __argp_fmtstream_set_lmargin (stream, 0); - - if (pest.first) - { - /* Didn't print any switches, what's up? */ - if (!oshort (real) && !real->name) - /* This is a group header, print it nicely. */ - print_header (real->doc, entry->argp, &pest); - else - /* Just a totally shadowed option or null header; print nothing. */ - goto cleanup; /* Just return, after cleaning up. */ - } - else - { - const char *tstr = real->doc ? dgettext (state == NULL ? NULL - : state->root_argp->argp_domain, - real->doc) : 0; - const char *fstr = filter_doc (tstr, real->key, entry->argp, state); - if (fstr && *fstr) - { - unsigned int col = __argp_fmtstream_point (stream); - - __argp_fmtstream_set_lmargin (stream, uparams.opt_doc_col); - __argp_fmtstream_set_wmargin (stream, uparams.opt_doc_col); - - if (col > (unsigned int) (uparams.opt_doc_col + 3)) - __argp_fmtstream_putc (stream, '\n'); - else if (col >= (unsigned int) uparams.opt_doc_col) - __argp_fmtstream_puts (stream, " "); - else - indent_to (stream, uparams.opt_doc_col); - - __argp_fmtstream_puts (stream, fstr); - } - if (fstr && fstr != tstr) - free ((char *) fstr); - - /* Reset the left margin. */ - __argp_fmtstream_set_lmargin (stream, 0); - __argp_fmtstream_putc (stream, '\n'); - } - - hhstate->prev_entry = entry; - -cleanup: - __argp_fmtstream_set_lmargin (stream, old_lm); - __argp_fmtstream_set_wmargin (stream, old_wm); -} - -/* Output a long help message about the options in HOL to STREAM. */ -static void -hol_help (struct hol *hol, const struct argp_state *state, - argp_fmtstream_t stream) -{ - unsigned num; - struct hol_entry *entry; - struct hol_help_state hhstate = { 0, 0, 0 }; - - for (entry = hol->entries, num = hol->num_entries; num > 0; entry++, num--) - hol_entry_help (entry, state, stream, &hhstate); - - if (hhstate.suppressed_dup_arg && uparams.dup_args_note) - { - const char *tstr = dgettext (state == NULL ? NULL - : state->root_argp->argp_domain, "\ -Mandatory or optional arguments to long options are also mandatory or \ -optional for any corresponding short options."); - const char *fstr = filter_doc (tstr, ARGP_KEY_HELP_DUP_ARGS_NOTE, - state ? state->root_argp : 0, state); - if (fstr && *fstr) - { - __argp_fmtstream_putc (stream, '\n'); - __argp_fmtstream_puts (stream, fstr); - __argp_fmtstream_putc (stream, '\n'); - } - if (fstr && fstr != tstr) - free ((char *) fstr); - } -} - -/* Helper functions for hol_usage. */ - -/* If OPT is a short option without an arg, append its key to the string - pointer pointer to by COOKIE, and advance the pointer. */ -static int -add_argless_short_opt (const struct argp_option *opt, - const struct argp_option *real, - const char *domain, void *cookie) -{ - char **snao_end = cookie; - if (!(opt->arg || real->arg) - && !((opt->flags | real->flags) & OPTION_NO_USAGE)) - *(*snao_end)++ = opt->key; - return 0; -} - -/* If OPT is a short option with an arg, output a usage entry for it to the - stream pointed at by COOKIE. */ -static int -usage_argful_short_opt (const struct argp_option *opt, - const struct argp_option *real, - const char *domain, void *cookie) -{ - argp_fmtstream_t stream = cookie; - const char *arg = opt->arg; - int flags = opt->flags | real->flags; - - if (! arg) - arg = real->arg; - - if (arg && !(flags & OPTION_NO_USAGE)) - { - arg = dgettext (domain, arg); - - if (flags & OPTION_ARG_OPTIONAL) - __argp_fmtstream_printf (stream, " [-%c[%s]]", opt->key, arg); - else - { - /* Manually do line wrapping so that it (probably) won't - get wrapped at the embedded space. */ - space (stream, 6 + strlen (arg)); - __argp_fmtstream_printf (stream, "[-%c %s]", opt->key, arg); - } - } - - return 0; -} - -/* Output a usage entry for the long option opt to the stream pointed at by - COOKIE. */ -static int -usage_long_opt (const struct argp_option *opt, - const struct argp_option *real, - const char *domain, void *cookie) -{ - argp_fmtstream_t stream = cookie; - const char *arg = opt->arg; - int flags = opt->flags | real->flags; - - if (! arg) - arg = real->arg; - - if (! (flags & OPTION_NO_USAGE)) - { - if (arg) - { - arg = dgettext (domain, arg); - if (flags & OPTION_ARG_OPTIONAL) - __argp_fmtstream_printf (stream, " [--%s[=%s]]", opt->name, arg); - else - __argp_fmtstream_printf (stream, " [--%s=%s]", opt->name, arg); - } - else - __argp_fmtstream_printf (stream, " [--%s]", opt->name); - } - - return 0; -} - -/* Print a short usage description for the arguments in HOL to STREAM. */ -static void -hol_usage (struct hol *hol, argp_fmtstream_t stream) -{ - if (hol->num_entries > 0) - { - unsigned nentries; - struct hol_entry *entry; - char *short_no_arg_opts = alloca (strlen (hol->short_options) + 1); - char *snao_end = short_no_arg_opts; - - /* First we put a list of short options without arguments. */ - for (entry = hol->entries, nentries = hol->num_entries - ; nentries > 0 - ; entry++, nentries--) - hol_entry_short_iterate (entry, add_argless_short_opt, - entry->argp->argp_domain, &snao_end); - if (snao_end > short_no_arg_opts) - { - *snao_end++ = 0; - __argp_fmtstream_printf (stream, " [-%s]", short_no_arg_opts); - } - - /* Now a list of short options *with* arguments. */ - for (entry = hol->entries, nentries = hol->num_entries - ; nentries > 0 - ; entry++, nentries--) - hol_entry_short_iterate (entry, usage_argful_short_opt, - entry->argp->argp_domain, stream); - - /* Finally, a list of long options (whew!). */ - for (entry = hol->entries, nentries = hol->num_entries - ; nentries > 0 - ; entry++, nentries--) - hol_entry_long_iterate (entry, usage_long_opt, - entry->argp->argp_domain, stream); - } -} - -/* Make a HOL containing all levels of options in ARGP. CLUSTER is the - cluster in which ARGP's entries should be clustered, or 0. */ -static struct hol * -argp_hol (const struct argp *argp, struct hol_cluster *cluster) -{ - const struct argp_child *child = argp->children; - struct hol *hol = make_hol (argp, cluster); - if (child) - while (child->argp) - { - struct hol_cluster *child_cluster = - ((child->group || child->header) - /* Put CHILD->argp within its own cluster. */ - ? hol_add_cluster (hol, child->group, child->header, - child - argp->children, cluster, argp) - /* Just merge it into the parent's cluster. */ - : cluster); - hol_append (hol, argp_hol (child->argp, child_cluster)) ; - child++; - } - return hol; -} - -/* Calculate how many different levels with alternative args strings exist in - ARGP. */ -static size_t -argp_args_levels (const struct argp *argp) -{ - size_t levels = 0; - const struct argp_child *child = argp->children; - - if (argp->args_doc && strchr (argp->args_doc, '\n')) - levels++; - - if (child) - while (child->argp) - levels += argp_args_levels ((child++)->argp); - - return levels; -} - -/* Print all the non-option args documented in ARGP to STREAM. Any output is - preceded by a space. LEVELS is a pointer to a byte vector the length - returned by argp_args_levels; it should be initialized to zero, and - updated by this routine for the next call if ADVANCE is true. True is - returned as long as there are more patterns to output. */ -static int -argp_args_usage (const struct argp *argp, const struct argp_state *state, - char **levels, int advance, argp_fmtstream_t stream) -{ - char *our_level = *levels; - int multiple = 0; - const struct argp_child *child = argp->children; - const char *tdoc = dgettext (argp->argp_domain, argp->args_doc), *nl = 0; - const char *fdoc = filter_doc (tdoc, ARGP_KEY_HELP_ARGS_DOC, argp, state); - - if (fdoc) - { - const char *cp = fdoc; - nl = __strchrnul (cp, '\n'); - if (*nl != '\0') - /* This is a 'multi-level' args doc; advance to the correct position - as determined by our state in LEVELS, and update LEVELS. */ - { - int i; - multiple = 1; - for (i = 0; i < *our_level; i++) - cp = nl + 1, nl = __strchrnul (cp, '\n'); - (*levels)++; - } - - /* Manually do line wrapping so that it (probably) won't get wrapped at - any embedded spaces. */ - space (stream, 1 + mbsnwidth (cp, nl - cp, MBSW_STOP_AT_NUL)); - - __argp_fmtstream_write (stream, cp, nl - cp); - } - if (fdoc && fdoc != tdoc) - free ((char *)fdoc); /* Free user's modified doc string. */ - - if (child) - while (child->argp) - advance = !argp_args_usage ((child++)->argp, state, levels, advance, stream); - - if (advance && multiple) - { - /* Need to increment our level. */ - if (*nl) - /* There's more we can do here. */ - { - (*our_level)++; - advance = 0; /* Our parent shouldn't advance also. */ - } - else if (*our_level > 0) - /* We had multiple levels, but used them up; reset to zero. */ - *our_level = 0; - } - - return !advance; -} - -/* Print the documentation for ARGP to STREAM; if POST is false, then - everything preceding a '\v' character in the documentation strings (or - the whole string, for those with none) is printed, otherwise, everything - following the '\v' character (nothing for strings without). Each separate - bit of documentation is separated a blank line, and if PRE_BLANK is true, - then the first is as well. If FIRST_ONLY is true, only the first - occurrence is output. Returns true if anything was output. */ -static int -argp_doc (const struct argp *argp, const struct argp_state *state, - int post, int pre_blank, int first_only, - argp_fmtstream_t stream) -{ - const char *text; - const char *inp_text; - void *input = 0; - int anything = 0; - size_t inp_text_limit = 0; - const char *doc = dgettext (argp->argp_domain, argp->doc); - const struct argp_child *child = argp->children; - - if (doc) - { - char *vt = strchr (doc, '\v'); - inp_text = post ? (vt ? vt + 1 : 0) : doc; - inp_text_limit = (!post && vt) ? (vt - doc) : 0; - } - else - inp_text = 0; - - if (argp->help_filter) - /* We have to filter the doc strings. */ - { - if (inp_text_limit) - /* Copy INP_TEXT so that it's nul-terminated. */ - inp_text = __strndup (inp_text, inp_text_limit); - input = __argp_input (argp, state); - text = - (*argp->help_filter) (post - ? ARGP_KEY_HELP_POST_DOC - : ARGP_KEY_HELP_PRE_DOC, - inp_text, input); - } - else - text = (const char *) inp_text; - - if (text) - { - if (pre_blank) - __argp_fmtstream_putc (stream, '\n'); - - if (text == inp_text && inp_text_limit) - __argp_fmtstream_write (stream, inp_text, inp_text_limit); - else - __argp_fmtstream_puts (stream, text); - - if (__argp_fmtstream_point (stream) > __argp_fmtstream_lmargin (stream)) - __argp_fmtstream_putc (stream, '\n'); - - anything = 1; - } - - if (text && text != inp_text) - free ((char *) text); /* Free TEXT returned from the help filter. */ - if (inp_text && inp_text_limit && argp->help_filter) - free ((char *) inp_text); /* We copied INP_TEXT, so free it now. */ - - if (post && argp->help_filter) - /* Now see if we have to output a ARGP_KEY_HELP_EXTRA text. */ - { - text = (*argp->help_filter) (ARGP_KEY_HELP_EXTRA, 0, input); - if (text) - { - if (anything || pre_blank) - __argp_fmtstream_putc (stream, '\n'); - __argp_fmtstream_puts (stream, text); - free ((char *) text); - if (__argp_fmtstream_point (stream) - > __argp_fmtstream_lmargin (stream)) - __argp_fmtstream_putc (stream, '\n'); - anything = 1; - } - } - - if (child) - while (child->argp && !(first_only && anything)) - anything |= - argp_doc ((child++)->argp, state, - post, anything || pre_blank, first_only, - stream); - - return anything; -} - -/* Output a usage message for ARGP to STREAM. If called from - argp_state_help, STATE is the relevent parsing state. FLAGS are from the - set ARGP_HELP_*. NAME is what to use wherever a 'program name' is - needed. */ -static void -_help (const struct argp *argp, const struct argp_state *state, FILE *stream, - unsigned flags, char *name) -{ - int anything = 0; /* Whether we've output anything. */ - struct hol *hol = 0; - argp_fmtstream_t fs; - - if (! stream) - return; - -#if _LIBC || (HAVE_FLOCKFILE && HAVE_FUNLOCKFILE) - __flockfile (stream); -#endif - - if (! uparams.valid) - fill_in_uparams (state); - - fs = __argp_make_fmtstream (stream, 0, uparams.rmargin, 0); - if (! fs) - { -#if _LIBC || (HAVE_FLOCKFILE && HAVE_FUNLOCKFILE) - __funlockfile (stream); -#endif - return; - } - - if (flags & (ARGP_HELP_USAGE | ARGP_HELP_SHORT_USAGE | ARGP_HELP_LONG)) - { - hol = argp_hol (argp, 0); - - /* If present, these options always come last. */ - hol_set_group (hol, "help", -1); - hol_set_group (hol, "version", -1); - - hol_sort (hol); - } - - if (flags & (ARGP_HELP_USAGE | ARGP_HELP_SHORT_USAGE)) - /* Print a short "Usage:" message. */ - { - int first_pattern = 1, more_patterns; - size_t num_pattern_levels = argp_args_levels (argp); - char *pattern_levels = alloca (num_pattern_levels); - - memset (pattern_levels, 0, num_pattern_levels); - - do - { - int old_lm; - int old_wm = __argp_fmtstream_set_wmargin (fs, uparams.usage_indent); - char *levels = pattern_levels; - - if (first_pattern) - __argp_fmtstream_printf (fs, "%s %s", - dgettext (argp->argp_domain, "Usage:"), - name); - else - __argp_fmtstream_printf (fs, "%s %s", - dgettext (argp->argp_domain, " or: "), - name); - - /* We set the lmargin as well as the wmargin, because hol_usage - manually wraps options with newline to avoid annoying breaks. */ - old_lm = __argp_fmtstream_set_lmargin (fs, uparams.usage_indent); - - if (flags & ARGP_HELP_SHORT_USAGE) - /* Just show where the options go. */ - { - if (hol->num_entries > 0) - __argp_fmtstream_puts (fs, dgettext (argp->argp_domain, - " [OPTION...]")); - } - else - /* Actually print the options. */ - { - hol_usage (hol, fs); - flags |= ARGP_HELP_SHORT_USAGE; /* But only do so once. */ - } - - more_patterns = argp_args_usage (argp, state, &levels, 1, fs); - - __argp_fmtstream_set_wmargin (fs, old_wm); - __argp_fmtstream_set_lmargin (fs, old_lm); - - __argp_fmtstream_putc (fs, '\n'); - anything = 1; - - first_pattern = 0; - } - while (more_patterns); - } - - if (flags & ARGP_HELP_PRE_DOC) - anything |= argp_doc (argp, state, 0, 0, 1, fs); - - if (flags & ARGP_HELP_SEE) - { - __argp_fmtstream_printf (fs, dgettext (argp->argp_domain, "\ -Try '%s --help' or '%s --usage' for more information.\n"), - name, name); - anything = 1; - } - - if (flags & ARGP_HELP_LONG) - /* Print a long, detailed help message. */ - { - /* Print info about all the options. */ - if (hol->num_entries > 0) - { - if (anything) - __argp_fmtstream_putc (fs, '\n'); - hol_help (hol, state, fs); - anything = 1; - } - } - - if (flags & ARGP_HELP_POST_DOC) - /* Print any documentation strings at the end. */ - anything |= argp_doc (argp, state, 1, anything, 0, fs); - - if ((flags & ARGP_HELP_BUG_ADDR) && argp_program_bug_address) - { - if (anything) - __argp_fmtstream_putc (fs, '\n'); - __argp_fmtstream_printf (fs, dgettext (argp->argp_domain, - "Report bugs to %s.\n"), - argp_program_bug_address); - anything = 1; - } - -#if _LIBC || (HAVE_FLOCKFILE && HAVE_FUNLOCKFILE) - __funlockfile (stream); -#endif - - if (hol) - hol_free (hol); - - __argp_fmtstream_free (fs); -} - -/* Output a usage message for ARGP to STREAM. FLAGS are from the set - ARGP_HELP_*. NAME is what to use wherever a 'program name' is needed. */ -void __argp_help (const struct argp *argp, FILE *stream, - unsigned flags, char *name) -{ - _help (argp, 0, stream, flags, name); -} -#ifdef weak_alias -weak_alias (__argp_help, argp_help) -#endif - -#if ! (defined _LIBC || HAVE_DECL_PROGRAM_INVOCATION_SHORT_NAME) -char * -__argp_short_program_name (void) -{ -# if HAVE_DECL_PROGRAM_INVOCATION_NAME - char *name = strrchr (program_invocation_name, '/'); - return name ? name + 1 : program_invocation_name; -# else - /* FIXME: What now? Miles suggests that it is better to use NULL, - but currently the value is passed on directly to fputs_unlocked, - so that requires more changes. */ -# if __GNUC__ -# warning No reasonable value to return -# endif /* __GNUC__ */ - return ""; -# endif -} -#endif - -/* Output, if appropriate, a usage message for STATE to STREAM. FLAGS are - from the set ARGP_HELP_*. */ -void -__argp_state_help (const struct argp_state *state, FILE *stream, unsigned flags) -{ - if ((!state || ! (state->flags & ARGP_NO_ERRS)) && stream) - { - if (state && (state->flags & ARGP_LONG_ONLY)) - flags |= ARGP_HELP_LONG_ONLY; - - _help (state ? state->root_argp : 0, state, stream, flags, - state ? state->name : __argp_short_program_name ()); - - if (!state || ! (state->flags & ARGP_NO_EXIT)) - { - if (flags & ARGP_HELP_EXIT_ERR) - exit (argp_err_exit_status); - if (flags & ARGP_HELP_EXIT_OK) - exit (0); - } - } -} -#ifdef weak_alias -weak_alias (__argp_state_help, argp_state_help) -#endif - -/* If appropriate, print the printf string FMT and following args, preceded - by the program name and ':', to stderr, and followed by a "Try ... --help" - message, then exit (1). */ -void -__argp_error (const struct argp_state *state, const char *fmt, ...) -{ - if (!state || !(state->flags & ARGP_NO_ERRS)) - { - FILE *stream = state ? state->err_stream : stderr; - - if (stream) - { - va_list ap; - -#if _LIBC || (HAVE_FLOCKFILE && HAVE_FUNLOCKFILE) - __flockfile (stream); -#endif - - va_start (ap, fmt); - -#ifdef _LIBC - char *buf; - - if (_IO_vasprintf (&buf, fmt, ap) < 0) - buf = NULL; - - __fxprintf (stream, "%s: %s\n", - state ? state->name : __argp_short_program_name (), buf); - - free (buf); -#else - fputs_unlocked (state ? state->name : __argp_short_program_name (), - stream); - putc_unlocked (':', stream); - putc_unlocked (' ', stream); - - vfprintf (stream, fmt, ap); - - putc_unlocked ('\n', stream); -#endif - - __argp_state_help (state, stream, ARGP_HELP_STD_ERR); - - va_end (ap); - -#if _LIBC || (HAVE_FLOCKFILE && HAVE_FUNLOCKFILE) - __funlockfile (stream); -#endif - } - } -} -#ifdef weak_alias -weak_alias (__argp_error, argp_error) -#endif - -/* Similar to the standard gnu error-reporting function error(), but will - respect the ARGP_NO_EXIT and ARGP_NO_ERRS flags in STATE, and will print - to STATE->err_stream. This is useful for argument parsing code that is - shared between program startup (when exiting is desired) and runtime - option parsing (when typically an error code is returned instead). The - difference between this function and argp_error is that the latter is for - *parsing errors*, and the former is for other problems that occur during - parsing but don't reflect a (syntactic) problem with the input. */ -void -__argp_failure (const struct argp_state *state, int status, int errnum, - const char *fmt, ...) -{ - if (!state || !(state->flags & ARGP_NO_ERRS)) - { - FILE *stream = state ? state->err_stream : stderr; - - if (stream) - { -#if _LIBC || (HAVE_FLOCKFILE && HAVE_FUNLOCKFILE) - __flockfile (stream); -#endif - -#ifdef _LIBC - __fxprintf (stream, "%s", - state ? state->name : __argp_short_program_name ()); -#else - fputs_unlocked (state ? state->name : __argp_short_program_name (), - stream); -#endif - - if (fmt) - { - va_list ap; - - va_start (ap, fmt); -#ifdef _LIBC - char *buf; - - if (_IO_vasprintf (&buf, fmt, ap) < 0) - buf = NULL; - - __fxprintf (stream, ": %s", buf); - - free (buf); -#else - putc_unlocked (':', stream); - putc_unlocked (' ', stream); - - vfprintf (stream, fmt, ap); -#endif - - va_end (ap); - } - - if (errnum) - { - char buf[200]; - -#ifdef _LIBC - __fxprintf (stream, ": %s", - __strerror_r (errnum, buf, sizeof (buf))); -#else - char const *s = NULL; - putc_unlocked (':', stream); - putc_unlocked (' ', stream); -# if GNULIB_STRERROR_R_POSIX || HAVE_DECL_STRERROR_R -# if !GNULIB_STRERROR_R_POSIX && STRERROR_R_CHAR_P - s = __strerror_r (errnum, buf, sizeof buf); -# else - if (__strerror_r (errnum, buf, sizeof buf) == 0) - s = buf; -# endif -# endif - if (! s && ! (s = strerror (errnum))) - s = dgettext (state->root_argp->argp_domain, - "Unknown system error"); - fputs_unlocked (s, stream); -#endif - } - -#if _LIBC - if (_IO_fwide (stream, 0) > 0) - putwc_unlocked (L'\n', stream); - else -#endif - putc_unlocked ('\n', stream); - -#if _LIBC || (HAVE_FLOCKFILE && HAVE_FUNLOCKFILE) - __funlockfile (stream); -#endif - - if (status && (!state || !(state->flags & ARGP_NO_EXIT))) - exit (status); - } - } -} -#ifdef weak_alias -weak_alias (__argp_failure, argp_failure) -#endif diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/argp-namefrob.h b/thirdparty/grub-2.04/grub-core/lib/gnulib/argp-namefrob.h deleted file mode 100644 index 2fb9ac494..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/argp-namefrob.h +++ /dev/null @@ -1,157 +0,0 @@ -/* Name frobnication for compiling argp outside of glibc - Copyright (C) 1997-2019 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Written by Miles Bader . - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . */ - -#if !_LIBC -/* This code is written for inclusion in gnu-libc, and uses names in the - namespace reserved for libc. If we're not compiling in libc, define those - names to be the normal ones instead. */ - -/* argp-parse functions */ -#undef __argp_parse -#define __argp_parse argp_parse -#undef __option_is_end -#define __option_is_end _option_is_end -#undef __option_is_short -#define __option_is_short _option_is_short -#undef __argp_input -#define __argp_input _argp_input - -/* argp-help functions */ -#undef __argp_help -#define __argp_help argp_help -#undef __argp_error -#define __argp_error argp_error -#undef __argp_failure -#define __argp_failure argp_failure -#undef __argp_state_help -#define __argp_state_help argp_state_help -#undef __argp_usage -#define __argp_usage argp_usage - -/* argp-fmtstream functions */ -#undef __argp_make_fmtstream -#define __argp_make_fmtstream argp_make_fmtstream -#undef __argp_fmtstream_free -#define __argp_fmtstream_free argp_fmtstream_free -#undef __argp_fmtstream_putc -#define __argp_fmtstream_putc argp_fmtstream_putc -#undef __argp_fmtstream_puts -#define __argp_fmtstream_puts argp_fmtstream_puts -#undef __argp_fmtstream_write -#define __argp_fmtstream_write argp_fmtstream_write -#undef __argp_fmtstream_printf -#define __argp_fmtstream_printf argp_fmtstream_printf -#undef __argp_fmtstream_set_lmargin -#define __argp_fmtstream_set_lmargin argp_fmtstream_set_lmargin -#undef __argp_fmtstream_set_rmargin -#define __argp_fmtstream_set_rmargin argp_fmtstream_set_rmargin -#undef __argp_fmtstream_set_wmargin -#define __argp_fmtstream_set_wmargin argp_fmtstream_set_wmargin -#undef __argp_fmtstream_point -#define __argp_fmtstream_point argp_fmtstream_point -#undef __argp_fmtstream_update -#define __argp_fmtstream_update _argp_fmtstream_update -#undef __argp_fmtstream_ensure -#define __argp_fmtstream_ensure _argp_fmtstream_ensure -#undef __argp_fmtstream_lmargin -#define __argp_fmtstream_lmargin argp_fmtstream_lmargin -#undef __argp_fmtstream_rmargin -#define __argp_fmtstream_rmargin argp_fmtstream_rmargin -#undef __argp_fmtstream_wmargin -#define __argp_fmtstream_wmargin argp_fmtstream_wmargin - -/* normal libc functions we call */ -#undef __flockfile -#define __flockfile flockfile -#undef __funlockfile -#define __funlockfile funlockfile -#undef __mempcpy -#define __mempcpy mempcpy -#undef __sleep -#define __sleep sleep -#undef __strcasecmp -#define __strcasecmp strcasecmp -#undef __strchrnul -#define __strchrnul strchrnul -#undef __strerror_r -#define __strerror_r strerror_r -#undef __strndup -#define __strndup strndup -#undef __vsnprintf -#define __vsnprintf vsnprintf - -#if defined(HAVE_DECL_CLEARERR_UNLOCKED) && !HAVE_DECL_CLEARERR_UNLOCKED -# define clearerr_unlocked(x) clearerr (x) -#endif -#if defined(HAVE_DECL_FEOF_UNLOCKED) && !HAVE_DECL_FEOF_UNLOCKED -# define feof_unlocked(x) feof (x) -#endif -#if defined(HAVE_DECL_FERROR_UNLOCKED) && !HAVE_DECL_FERROR_UNLOCKED -# define ferror_unlocked(x) ferror (x) -#endif -#if defined(HAVE_DECL_FFLUSH_UNLOCKED) && !HAVE_DECL_FFLUSH_UNLOCKED -# define fflush_unlocked(x) fflush (x) -#endif -#if defined(HAVE_DECL_FGETS_UNLOCKED) && !HAVE_DECL_FGETS_UNLOCKED -# define fgets_unlocked(x,y,z) fgets (x,y,z) -#endif -#if defined(HAVE_DECL_FPUTC_UNLOCKED) && !HAVE_DECL_FPUTC_UNLOCKED -# define fputc_unlocked(x,y) fputc (x,y) -#endif -#if defined(HAVE_DECL_FPUTS_UNLOCKED) && !HAVE_DECL_FPUTS_UNLOCKED -# define fputs_unlocked(x,y) fputs (x,y) -#endif -#if defined(HAVE_DECL_FREAD_UNLOCKED) && !HAVE_DECL_FREAD_UNLOCKED -# define fread_unlocked(w,x,y,z) fread (w,x,y,z) -#endif -#if defined(HAVE_DECL_FWRITE_UNLOCKED) && !HAVE_DECL_FWRITE_UNLOCKED -# define fwrite_unlocked(w,x,y,z) fwrite (w,x,y,z) -#endif -#if defined(HAVE_DECL_GETC_UNLOCKED) && !HAVE_DECL_GETC_UNLOCKED -# define getc_unlocked(x) getc (x) -#endif -#if defined(HAVE_DECL_GETCHAR_UNLOCKED) && !HAVE_DECL_GETCHAR_UNLOCKED -# define getchar_unlocked() getchar () -#endif -#if defined(HAVE_DECL_PUTC_UNLOCKED) && !HAVE_DECL_PUTC_UNLOCKED -# define putc_unlocked(x,y) putc (x,y) -#endif -#if defined(HAVE_DECL_PUTCHAR_UNLOCKED) && !HAVE_DECL_PUTCHAR_UNLOCKED -# define putchar_unlocked(x) putchar (x) -#endif - -#endif /* !_LIBC */ - -#ifndef __set_errno -#define __set_errno(e) (errno = (e)) -#endif - -#if defined GNULIB_ARGP_DISABLE_DIRNAME -# define __argp_base_name(arg) arg -#elif defined GNULIB_ARGP_EXTERN_BASENAME -extern char *__argp_base_name (const char *arg); -#else -# include "dirname.h" -# define __argp_base_name last_component -#endif - -#if defined _LIBC || HAVE_DECL_PROGRAM_INVOCATION_SHORT_NAME -# define __argp_short_program_name() (program_invocation_short_name) -#else -extern char *__argp_short_program_name (void); -#endif diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/argp-parse.c b/thirdparty/grub-2.04/grub-core/lib/gnulib/argp-parse.c deleted file mode 100644 index 900adad54..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/argp-parse.c +++ /dev/null @@ -1,957 +0,0 @@ -/* Hierarchical argument parsing, layered over getopt - Copyright (C) 1995-2019 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Written by Miles Bader . - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . */ - -#ifdef HAVE_CONFIG_H -# include -#endif - -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#ifdef _LIBC -# include -# undef dgettext -# define dgettext(domain, msgid) \ - __dcgettext (domain, msgid, LC_MESSAGES) -#else -# include "gettext.h" -#endif -#define N_(msgid) msgid - -#include "argp.h" -#include "argp-namefrob.h" - -#define alignto(n, d) ((((n) + (d) - 1) / (d)) * (d)) - -/* Getopt return values. */ -#define KEY_END (-1) /* The end of the options. */ -#define KEY_ARG 1 /* A non-option argument. */ -#define KEY_ERR '?' /* An error parsing the options. */ - -/* The meta-argument used to prevent any further arguments being interpreted - as options. */ -#define QUOTE "--" - -/* The number of bits we steal in a long-option value for our own use. */ -#define GROUP_BITS CHAR_BIT - -/* The number of bits available for the user value. */ -#define USER_BITS ((sizeof ((struct option *)0)->val * CHAR_BIT) - GROUP_BITS) -#define USER_MASK ((1 << USER_BITS) - 1) - -/* EZ alias for ARGP_ERR_UNKNOWN. */ -#define EBADKEY ARGP_ERR_UNKNOWN - -/* Default options. */ - -/* When argp is given the --HANG switch, _ARGP_HANG is set and argp will sleep - for one second intervals, decrementing _ARGP_HANG until it's zero. Thus - you can force the program to continue by attaching a debugger and setting - it to 0 yourself. */ -static volatile int _argp_hang; - -#define OPT_PROGNAME -2 -#define OPT_USAGE -3 -#define OPT_HANG -4 - -static const struct argp_option argp_default_options[] = -{ - {"help", '?', 0, 0, N_("give this help list"), -1}, - {"usage", OPT_USAGE, 0, 0, N_("give a short usage message"), 0}, - {"program-name",OPT_PROGNAME, N_("NAME"), OPTION_HIDDEN, - N_("set the program name"), 0}, - {"HANG", OPT_HANG, N_("SECS"), OPTION_ARG_OPTIONAL | OPTION_HIDDEN, - N_("hang for SECS seconds (default 3600)"), 0}, - {NULL, 0, 0, 0, NULL, 0} -}; - -static error_t -argp_default_parser (int key, char *arg, struct argp_state *state) -{ - switch (key) - { - case '?': - __argp_state_help (state, state->out_stream, ARGP_HELP_STD_HELP); - break; - case OPT_USAGE: - __argp_state_help (state, state->out_stream, - ARGP_HELP_USAGE | ARGP_HELP_EXIT_OK); - break; - - case OPT_PROGNAME: /* Set the program name. */ -#if defined _LIBC || HAVE_DECL_PROGRAM_INVOCATION_NAME - program_invocation_name = arg; -#endif - /* [Note that some systems only have PROGRAM_INVOCATION_SHORT_NAME (aka - __PROGNAME), in which case, PROGRAM_INVOCATION_NAME is just defined - to be that, so we have to be a bit careful here.] */ - - /* Update what we use for messages. */ - state->name = __argp_base_name (arg); - -#if defined _LIBC || HAVE_DECL_PROGRAM_INVOCATION_SHORT_NAME - program_invocation_short_name = state->name; -#endif - - if ((state->flags & (ARGP_PARSE_ARGV0 | ARGP_NO_ERRS)) - == ARGP_PARSE_ARGV0) - /* Update what getopt uses too. */ - state->argv[0] = arg; - - break; - - case OPT_HANG: - _argp_hang = atoi (arg ? arg : "3600"); - while (_argp_hang-- > 0) - __sleep (1); - break; - - default: - return EBADKEY; - } - return 0; -} - -static const struct argp argp_default_argp = - {argp_default_options, &argp_default_parser, NULL, NULL, NULL, NULL, "libc"}; - - -static const struct argp_option argp_version_options[] = -{ - {"version", 'V', 0, 0, N_("print program version"), -1}, - {NULL, 0, 0, 0, NULL, 0} -}; - -static error_t -argp_version_parser (int key, char *arg, struct argp_state *state) -{ - switch (key) - { - case 'V': - if (argp_program_version_hook) - (*argp_program_version_hook) (state->out_stream, state); - else if (argp_program_version) - fprintf (state->out_stream, "%s\n", argp_program_version); - else - __argp_error (state, "%s", - dgettext (state->root_argp->argp_domain, - "(PROGRAM ERROR) No version known!?")); - if (! (state->flags & ARGP_NO_EXIT)) - exit (0); - break; - default: - return EBADKEY; - } - return 0; -} - -static const struct argp argp_version_argp = - {argp_version_options, &argp_version_parser, NULL, NULL, NULL, NULL, "libc"}; - -/* Returns the offset into the getopt long options array LONG_OPTIONS of a - long option with called NAME, or -1 if none is found. Passing NULL as - NAME will return the number of options. */ -static int -find_long_option (struct option *long_options, const char *name) -{ - struct option *l = long_options; - while (l->name != NULL) - if (name != NULL && strcmp (l->name, name) == 0) - return l - long_options; - else - l++; - if (name == NULL) - return l - long_options; - else - return -1; -} - - -/* The state of a "group" during parsing. Each group corresponds to a - particular argp structure from the tree of such descending from the top - level argp passed to argp_parse. */ -struct group -{ - /* This group's parsing function. */ - argp_parser_t parser; - - /* Which argp this group is from. */ - const struct argp *argp; - - /* Points to the point in SHORT_OPTS corresponding to the end of the short - options for this group. We use it to determine from which group a - particular short options is from. */ - char *short_end; - - /* The number of non-option args successfully handled by this parser. */ - unsigned args_processed; - - /* This group's parser's parent's group. */ - struct group *parent; - unsigned parent_index; /* And the our position in the parent. */ - - /* These fields are swapped into and out of the state structure when - calling this group's parser. */ - void *input, **child_inputs; - void *hook; -}; - -/* Call GROUP's parser with KEY and ARG, swapping any group-specific info - from STATE before calling, and back into state afterwards. If GROUP has - no parser, EBADKEY is returned. */ -static error_t -group_parse (struct group *group, struct argp_state *state, int key, char *arg) -{ - if (group->parser) - { - error_t err; - state->hook = group->hook; - state->input = group->input; - state->child_inputs = group->child_inputs; - state->arg_num = group->args_processed; - err = (*group->parser)(key, arg, state); - group->hook = state->hook; - return err; - } - else - return EBADKEY; -} - -struct parser -{ - const struct argp *argp; - - /* SHORT_OPTS is the getopt short options string for the union of all the - groups of options. */ - char *short_opts; - /* LONG_OPTS is the array of getop long option structures for the union of - all the groups of options. */ - struct option *long_opts; - /* OPT_DATA is the getopt data used for the re-entrant getopt. */ - struct _getopt_data opt_data; - - /* States of the various parsing groups. */ - struct group *groups; - /* The end of the GROUPS array. */ - struct group *egroup; - /* A vector containing storage for the CHILD_INPUTS field in all groups. */ - void **child_inputs; - - /* True if we think using getopt is still useful; if false, then - remaining arguments are just passed verbatim with ARGP_KEY_ARG. This is - cleared whenever getopt returns KEY_END, but may be set again if the user - moves the next argument pointer backwards. */ - int try_getopt; - - /* State block supplied to parsing routines. */ - struct argp_state state; - - /* Memory used by this parser. */ - void *storage; -}; - -/* The next usable entries in the various parser tables being filled in by - convert_options. */ -struct parser_convert_state -{ - struct parser *parser; - char *short_end; - struct option *long_end; - void **child_inputs_end; -}; - -/* Converts all options in ARGP (which is put in GROUP) and ancestors - into getopt options stored in SHORT_OPTS and LONG_OPTS; SHORT_END and - CVT->LONG_END are the points at which new options are added. Returns the - next unused group entry. CVT holds state used during the conversion. */ -static struct group * -convert_options (const struct argp *argp, - struct group *parent, unsigned parent_index, - struct group *group, struct parser_convert_state *cvt) -{ - /* REAL is the most recent non-alias value of OPT. */ - const struct argp_option *real = argp->options; - const struct argp_child *children = argp->children; - - if (real || argp->parser) - { - const struct argp_option *opt; - - if (real) - for (opt = real; !__option_is_end (opt); opt++) - { - if (! (opt->flags & OPTION_ALIAS)) - /* OPT isn't an alias, so we can use values from it. */ - real = opt; - - if (! (real->flags & OPTION_DOC)) - /* A real option (not just documentation). */ - { - if (__option_is_short (opt)) - /* OPT can be used as a short option. */ - { - *cvt->short_end++ = opt->key; - if (real->arg) - { - *cvt->short_end++ = ':'; - if (real->flags & OPTION_ARG_OPTIONAL) - *cvt->short_end++ = ':'; - } - *cvt->short_end = '\0'; /* keep 0 terminated */ - } - - if (opt->name - && find_long_option (cvt->parser->long_opts, opt->name) < 0) - /* OPT can be used as a long option. */ - { - cvt->long_end->name = opt->name; - cvt->long_end->has_arg = - (real->arg - ? (real->flags & OPTION_ARG_OPTIONAL - ? optional_argument - : required_argument) - : no_argument); - cvt->long_end->flag = 0; - /* we add a disambiguating code to all the user's - values (which is removed before we actually call - the function to parse the value); this means that - the user loses use of the high 8 bits in all his - values (the sign of the lower bits is preserved - however)... */ - cvt->long_end->val = - ((opt->key ? opt->key : real->key) & USER_MASK) - + (((group - cvt->parser->groups) + 1) << USER_BITS); - - /* Keep the LONG_OPTS list terminated. */ - (++cvt->long_end)->name = NULL; - } - } - } - - group->parser = argp->parser; - group->argp = argp; - group->short_end = cvt->short_end; - group->args_processed = 0; - group->parent = parent; - group->parent_index = parent_index; - group->input = 0; - group->hook = 0; - group->child_inputs = 0; - - if (children) - /* Assign GROUP's CHILD_INPUTS field some space from - CVT->child_inputs_end.*/ - { - unsigned num_children = 0; - while (children[num_children].argp) - num_children++; - group->child_inputs = cvt->child_inputs_end; - cvt->child_inputs_end += num_children; - } - - parent = group++; - } - else - parent = 0; - - if (children) - { - unsigned index = 0; - while (children->argp) - group = - convert_options (children++->argp, parent, index++, group, cvt); - } - - return group; -} - -/* Find the merged set of getopt options, with keys appropriately prefixed. */ -static void -parser_convert (struct parser *parser, const struct argp *argp, int flags) -{ - struct parser_convert_state cvt; - - cvt.parser = parser; - cvt.short_end = parser->short_opts; - cvt.long_end = parser->long_opts; - cvt.child_inputs_end = parser->child_inputs; - - if (flags & ARGP_IN_ORDER) - *cvt.short_end++ = '-'; - else if (flags & ARGP_NO_ARGS) - *cvt.short_end++ = '+'; - *cvt.short_end = '\0'; - - cvt.long_end->name = NULL; - - parser->argp = argp; - - if (argp) - parser->egroup = convert_options (argp, 0, 0, parser->groups, &cvt); - else - parser->egroup = parser->groups; /* No parsers at all! */ -} - -/* Lengths of various parser fields which we will allocated. */ -struct parser_sizes -{ - size_t short_len; /* Getopt short options string. */ - size_t long_len; /* Getopt long options vector. */ - size_t num_groups; /* Group structures we allocate. */ - size_t num_child_inputs; /* Child input slots. */ -}; - -/* For ARGP, increments the NUM_GROUPS field in SZS by the total number of - argp structures descended from it, and the SHORT_LEN & LONG_LEN fields by - the maximum lengths of the resulting merged getopt short options string and - long-options array, respectively. */ -static void -calc_sizes (const struct argp *argp, struct parser_sizes *szs) -{ - const struct argp_child *child = argp->children; - const struct argp_option *opt = argp->options; - - if (opt || argp->parser) - { - szs->num_groups++; - if (opt) - { - int num_opts = 0; - while (!__option_is_end (opt++)) - num_opts++; - szs->short_len += num_opts * 3; /* opt + up to 2 ':'s */ - szs->long_len += num_opts; - } - } - - if (child) - while (child->argp) - { - calc_sizes ((child++)->argp, szs); - szs->num_child_inputs++; - } -} - -/* Initializes PARSER to parse ARGP in a manner described by FLAGS. */ -static error_t -parser_init (struct parser *parser, const struct argp *argp, - int argc, char **argv, int flags, void *input) -{ - error_t err = 0; - struct group *group; - struct parser_sizes szs; - struct _getopt_data opt_data = _GETOPT_DATA_INITIALIZER; - char *storage; - size_t glen, gsum; - size_t clen, csum; - size_t llen, lsum; - size_t slen, ssum; - - szs.short_len = (flags & ARGP_NO_ARGS) ? 0 : 1; - szs.long_len = 0; - szs.num_groups = 0; - szs.num_child_inputs = 0; - - if (argp) - calc_sizes (argp, &szs); - - /* Lengths of the various bits of storage used by PARSER. */ - glen = (szs.num_groups + 1) * sizeof (struct group); - clen = szs.num_child_inputs * sizeof (void *); - llen = (szs.long_len + 1) * sizeof (struct option); - slen = szs.short_len + 1; - - /* Sums of previous lengths, properly aligned. There's no need to - align gsum, since struct group is aligned at least as strictly as - void * (since it contains a void * member). And there's no need - to align lsum, since struct option is aligned at least as - strictly as char. */ - gsum = glen; - csum = alignto (gsum + clen, alignof (struct option)); - lsum = csum + llen; - ssum = lsum + slen; - - parser->storage = malloc (ssum); - if (! parser->storage) - return ENOMEM; - - storage = parser->storage; - parser->groups = parser->storage; - parser->child_inputs = (void **) (storage + gsum); - parser->long_opts = (struct option *) (storage + csum); - parser->short_opts = storage + lsum; - parser->opt_data = opt_data; - - memset (parser->child_inputs, 0, clen); - parser_convert (parser, argp, flags); - - memset (&parser->state, 0, sizeof (struct argp_state)); - parser->state.root_argp = parser->argp; - parser->state.argc = argc; - parser->state.argv = argv; - parser->state.flags = flags; - parser->state.err_stream = stderr; - parser->state.out_stream = stdout; - parser->state.next = 0; /* Tell getopt to initialize. */ - parser->state.pstate = parser; - - parser->try_getopt = 1; - - /* Call each parser for the first time, giving it a chance to propagate - values to child parsers. */ - if (parser->groups < parser->egroup) - parser->groups->input = input; - for (group = parser->groups; - group < parser->egroup && (!err || err == EBADKEY); - group++) - { - if (group->parent) - /* If a child parser, get the initial input value from the parent. */ - group->input = group->parent->child_inputs[group->parent_index]; - - if (!group->parser - && group->argp->children && group->argp->children->argp) - /* For the special case where no parsing function is supplied for an - argp, propagate its input to its first child, if any (this just - makes very simple wrapper argps more convenient). */ - group->child_inputs[0] = group->input; - - err = group_parse (group, &parser->state, ARGP_KEY_INIT, 0); - } - if (err == EBADKEY) - err = 0; /* Some parser didn't understand. */ - - if (err) - return err; - - if (parser->state.flags & ARGP_NO_ERRS) - { - parser->opt_data.opterr = 0; - if (parser->state.flags & ARGP_PARSE_ARGV0) - /* getopt always skips ARGV[0], so we have to fake it out. As long - as OPTERR is 0, then it shouldn't actually try to access it. */ - parser->state.argv--, parser->state.argc++; - } - else - parser->opt_data.opterr = 1; /* Print error messages. */ - - if (parser->state.argv == argv && argv[0]) - /* There's an argv[0]; use it for messages. */ - parser->state.name = __argp_base_name (argv[0]); - else - parser->state.name = __argp_short_program_name (); - - return 0; -} - -/* Free any storage consumed by PARSER (but not PARSER itself). */ -static error_t -parser_finalize (struct parser *parser, - error_t err, int arg_ebadkey, int *end_index) -{ - struct group *group; - - if (err == EBADKEY && arg_ebadkey) - /* Suppress errors generated by unparsed arguments. */ - err = 0; - - if (! err) - { - if (parser->state.next == parser->state.argc) - /* We successfully parsed all arguments! Call all the parsers again, - just a few more times... */ - { - for (group = parser->groups; - group < parser->egroup && (!err || err==EBADKEY); - group++) - if (group->args_processed == 0) - err = group_parse (group, &parser->state, ARGP_KEY_NO_ARGS, 0); - for (group = parser->egroup - 1; - group >= parser->groups && (!err || err==EBADKEY); - group--) - err = group_parse (group, &parser->state, ARGP_KEY_END, 0); - - if (err == EBADKEY) - err = 0; /* Some parser didn't understand. */ - - /* Tell the user that all arguments are parsed. */ - if (end_index) - *end_index = parser->state.next; - } - else if (end_index) - /* Return any remaining arguments to the user. */ - *end_index = parser->state.next; - else - /* No way to return the remaining arguments, they must be bogus. */ - { - if (!(parser->state.flags & ARGP_NO_ERRS) - && parser->state.err_stream) - fprintf (parser->state.err_stream, - dgettext (parser->argp->argp_domain, - "%s: Too many arguments\n"), - parser->state.name); - err = EBADKEY; - } - } - - /* Okay, we're all done, with either an error or success; call the parsers - to indicate which one. */ - - if (err) - { - /* Maybe print an error message. */ - if (err == EBADKEY) - /* An appropriate message describing what the error was should have - been printed earlier. */ - __argp_state_help (&parser->state, parser->state.err_stream, - ARGP_HELP_STD_ERR); - - /* Since we didn't exit, give each parser an error indication. */ - for (group = parser->groups; group < parser->egroup; group++) - group_parse (group, &parser->state, ARGP_KEY_ERROR, 0); - } - else - /* Notify parsers of success, and propagate back values from parsers. */ - { - /* We pass over the groups in reverse order so that child groups are - given a chance to do there processing before passing back a value to - the parent. */ - for (group = parser->egroup - 1 - ; group >= parser->groups && (!err || err == EBADKEY) - ; group--) - err = group_parse (group, &parser->state, ARGP_KEY_SUCCESS, 0); - if (err == EBADKEY) - err = 0; /* Some parser didn't understand. */ - } - - /* Call parsers once more, to do any final cleanup. Errors are ignored. */ - for (group = parser->egroup - 1; group >= parser->groups; group--) - group_parse (group, &parser->state, ARGP_KEY_FINI, 0); - - if (err == EBADKEY) - err = EINVAL; - - free (parser->storage); - - return err; -} - -/* Call the user parsers to parse the non-option argument VAL, at the current - position, returning any error. The state NEXT pointer is assumed to have - been adjusted (by getopt) to point after this argument; this function will - adjust it correctly to reflect however many args actually end up being - consumed. */ -static error_t -parser_parse_arg (struct parser *parser, char *val) -{ - /* Save the starting value of NEXT, first adjusting it so that the arg - we're parsing is again the front of the arg vector. */ - int index = --parser->state.next; - error_t err = EBADKEY; - struct group *group; - int key = 0; /* Which of ARGP_KEY_ARG[S] we used. */ - - /* Try to parse the argument in each parser. */ - for (group = parser->groups - ; group < parser->egroup && err == EBADKEY - ; group++) - { - parser->state.next++; /* For ARGP_KEY_ARG, consume the arg. */ - key = ARGP_KEY_ARG; - err = group_parse (group, &parser->state, key, val); - - if (err == EBADKEY) - /* This parser doesn't like ARGP_KEY_ARG; try ARGP_KEY_ARGS instead. */ - { - parser->state.next--; /* For ARGP_KEY_ARGS, put back the arg. */ - key = ARGP_KEY_ARGS; - err = group_parse (group, &parser->state, key, 0); - } - } - - if (! err) - { - if (key == ARGP_KEY_ARGS) - /* The default for ARGP_KEY_ARGS is to assume that if NEXT isn't - changed by the user, *all* arguments should be considered - consumed. */ - parser->state.next = parser->state.argc; - - if (parser->state.next > index) - /* Remember that we successfully processed a non-option - argument -- but only if the user hasn't gotten tricky and set - the clock back. */ - (--group)->args_processed += (parser->state.next - index); - else - /* The user wants to reparse some args, give getopt another try. */ - parser->try_getopt = 1; - } - - return err; -} - -/* Call the user parsers to parse the option OPT, with argument VAL, at the - current position, returning any error. */ -static error_t -parser_parse_opt (struct parser *parser, int opt, char *val) -{ - /* The group key encoded in the high bits; 0 for short opts or - group_number + 1 for long opts. */ - int group_key = opt >> USER_BITS; - error_t err = EBADKEY; - - if (group_key == 0) - /* A short option. By comparing OPT's position in SHORT_OPTS to the - various starting positions in each group's SHORT_END field, we can - determine which group OPT came from. */ - { - struct group *group; - char *short_index = strchr (parser->short_opts, opt); - - if (short_index) - for (group = parser->groups; group < parser->egroup; group++) - if (group->short_end > short_index) - { - err = group_parse (group, &parser->state, opt, - parser->opt_data.optarg); - break; - } - } - else - /* A long option. Preserve the sign in the user key, without - invoking undefined behavior. Assume two's complement. */ - { - int user_key = - ((opt & (1 << (USER_BITS - 1))) ? ~USER_MASK : 0) | (opt & USER_MASK); - err = - group_parse (&parser->groups[group_key - 1], &parser->state, - user_key, parser->opt_data.optarg); - } - - if (err == EBADKEY) - /* At least currently, an option not recognized is an error in the - parser, because we pre-compute which parser is supposed to deal - with each option. */ - { - static const char bad_key_err[] = - N_("(PROGRAM ERROR) Option should have been recognized!?"); - if (group_key == 0) - __argp_error (&parser->state, "-%c: %s", opt, - dgettext (parser->argp->argp_domain, bad_key_err)); - else - { - struct option *long_opt = parser->long_opts; - while (long_opt->val != opt && long_opt->name) - long_opt++; - __argp_error (&parser->state, "--%s: %s", - long_opt->name ? long_opt->name : "???", - dgettext (parser->argp->argp_domain, bad_key_err)); - } - } - - return err; -} - -/* Parse the next argument in PARSER (as indicated by PARSER->state.next). - Any error from the parsers is returned, and *ARGP_EBADKEY indicates - whether a value of EBADKEY is due to an unrecognized argument (which is - generally not fatal). */ -static error_t -parser_parse_next (struct parser *parser, int *arg_ebadkey) -{ - int opt; - error_t err = 0; - - if (parser->state.quoted && parser->state.next < parser->state.quoted) - /* The next argument pointer has been moved to before the quoted - region, so pretend we never saw the quoting "--", and give getopt - another chance. If the user hasn't removed it, getopt will just - process it again. */ - parser->state.quoted = 0; - - if (parser->try_getopt && !parser->state.quoted) - /* Give getopt a chance to parse this. */ - { - /* Put it back in OPTIND for getopt. */ - parser->opt_data.optind = parser->state.next; - /* Distinguish KEY_ERR from a real option. */ - parser->opt_data.optopt = KEY_END; - if (parser->state.flags & ARGP_LONG_ONLY) - opt = _getopt_long_only_r (parser->state.argc, parser->state.argv, - parser->short_opts, parser->long_opts, 0, - &parser->opt_data); - else - opt = _getopt_long_r (parser->state.argc, parser->state.argv, - parser->short_opts, parser->long_opts, 0, - &parser->opt_data); - /* And see what getopt did. */ - parser->state.next = parser->opt_data.optind; - - if (opt == KEY_END) - /* Getopt says there are no more options, so stop using - getopt; we'll continue if necessary on our own. */ - { - parser->try_getopt = 0; - if (parser->state.next > 1 - && strcmp (parser->state.argv[parser->state.next - 1], QUOTE) - == 0) - /* Not only is this the end of the options, but it's a - "quoted" region, which may have args that *look* like - options, so we definitely shouldn't try to use getopt past - here, whatever happens. */ - parser->state.quoted = parser->state.next; - } - else if (opt == KEY_ERR && parser->opt_data.optopt != KEY_END) - /* KEY_ERR can have the same value as a valid user short - option, but in the case of a real error, getopt sets OPTOPT - to the offending character, which can never be KEY_END. */ - { - *arg_ebadkey = 0; - return EBADKEY; - } - } - else - opt = KEY_END; - - if (opt == KEY_END) - { - /* We're past what getopt considers the options. */ - if (parser->state.next >= parser->state.argc - || (parser->state.flags & ARGP_NO_ARGS)) - /* Indicate that we're done. */ - { - *arg_ebadkey = 1; - return EBADKEY; - } - else - /* A non-option arg; simulate what getopt might have done. */ - { - opt = KEY_ARG; - parser->opt_data.optarg = parser->state.argv[parser->state.next++]; - } - } - - if (opt == KEY_ARG) - /* A non-option argument; try each parser in turn. */ - err = parser_parse_arg (parser, parser->opt_data.optarg); - else - err = parser_parse_opt (parser, opt, parser->opt_data.optarg); - - if (err == EBADKEY) - *arg_ebadkey = (opt == KEY_END || opt == KEY_ARG); - - return err; -} - -/* Parse the options strings in ARGC & ARGV according to the argp in ARGP. - FLAGS is one of the ARGP_ flags above. If END_INDEX is non-NULL, the - index in ARGV of the first unparsed option is returned in it. If an - unknown option is present, EINVAL is returned; if some parser routine - returned a non-zero value, it is returned; otherwise 0 is returned. */ -error_t -__argp_parse (const struct argp *argp, int argc, char **argv, unsigned flags, - int *end_index, void *input) -{ - error_t err; - struct parser parser; - - /* If true, then err == EBADKEY is a result of a non-option argument failing - to be parsed (which in some cases isn't actually an error). */ - int arg_ebadkey = 0; - -#ifndef _LIBC - if (!(flags & ARGP_PARSE_ARGV0)) - { -#if HAVE_DECL_PROGRAM_INVOCATION_NAME - if (!program_invocation_name) - program_invocation_name = argv[0]; -#endif -#if HAVE_DECL_PROGRAM_INVOCATION_SHORT_NAME - if (!program_invocation_short_name) - program_invocation_short_name = __argp_base_name (argv[0]); -#endif - } -#endif - - if (! (flags & ARGP_NO_HELP)) - /* Add our own options. */ - { - struct argp_child *child = alloca (4 * sizeof (struct argp_child)); - struct argp *top_argp = alloca (sizeof (struct argp)); - - /* TOP_ARGP has no options, it just serves to group the user & default - argps. */ - memset (top_argp, 0, sizeof (*top_argp)); - top_argp->children = child; - - memset (child, 0, 4 * sizeof (struct argp_child)); - - if (argp) - (child++)->argp = argp; - (child++)->argp = &argp_default_argp; - if (argp_program_version || argp_program_version_hook) - (child++)->argp = &argp_version_argp; - child->argp = 0; - - argp = top_argp; - } - - /* Construct a parser for these arguments. */ - err = parser_init (&parser, argp, argc, argv, flags, input); - - if (! err) - /* Parse! */ - { - while (! err) - err = parser_parse_next (&parser, &arg_ebadkey); - err = parser_finalize (&parser, err, arg_ebadkey, end_index); - } - - return err; -} -#ifdef weak_alias -weak_alias (__argp_parse, argp_parse) -#endif - -/* Return the input field for ARGP in the parser corresponding to STATE; used - by the help routines. */ -void * -__argp_input (const struct argp *argp, const struct argp_state *state) -{ - if (state && state->pstate) - { - struct group *group; - struct parser *parser = state->pstate; - - for (group = parser->groups; group < parser->egroup; group++) - if (group->argp == argp) - return group->input; - } - - return 0; -} -#ifdef weak_alias -weak_alias (__argp_input, _argp_input) -#endif diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/argp-pin.c b/thirdparty/grub-2.04/grub-core/lib/gnulib/argp-pin.c deleted file mode 100644 index ece7423e3..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/argp-pin.c +++ /dev/null @@ -1,33 +0,0 @@ -/* Full and short program names for argp module - Copyright (C) 2005, 2009-2019 Free Software Foundation, Inc. - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . */ - -#ifdef HAVE_CONFIG_H -# include -#endif - -#ifndef HAVE_PROGRAM_INVOCATION_SHORT_NAME -char *program_invocation_short_name = 0; -#endif -#ifndef HAVE_PROGRAM_INVOCATION_NAME -char *program_invocation_name = 0; -#endif - -#if (defined HAVE_PROGRAM_INVOCATION_SHORT_NAME \ - && defined HAVE_PROGRAM_INVOCATION_NAME) -/* This declaration is solely to ensure that after preprocessing - this file is never empty. */ -typedef int dummy; -#endif diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/argp-pv.c b/thirdparty/grub-2.04/grub-core/lib/gnulib/argp-pv.c deleted file mode 100644 index f76b365ad..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/argp-pv.c +++ /dev/null @@ -1,33 +0,0 @@ -/* Default definition for ARGP_PROGRAM_VERSION. - Copyright (C) 1996-2019 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Written by Miles Bader . - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . */ - -/* If set by the user program to a non-zero value, then a default option - --version is added (unless the ARGP_NO_HELP flag is used), which will - print this string followed by a newline and exit (unless the - ARGP_NO_EXIT flag is used). Overridden by ARGP_PROGRAM_VERSION_HOOK. */ -const char *argp_program_version -/* This variable should be zero-initialized. On most systems, putting it into - BSS is sufficient. Not so on Mac OS X 10.3 and 10.4, see - - . */ -#if defined __ELF__ - /* On ELF systems, variables in BSS behave well. */ -#else - = (const char *) 0 -#endif - ; diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/argp-pvh.c b/thirdparty/grub-2.04/grub-core/lib/gnulib/argp-pvh.c deleted file mode 100644 index be73e335f..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/argp-pvh.c +++ /dev/null @@ -1,30 +0,0 @@ -/* Default definition for ARGP_PROGRAM_VERSION_HOOK. - Copyright (C) 1996-2019 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Written by Miles Bader . - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . */ - -#ifdef HAVE_CONFIG_H -# include -#endif - -#include "argp.h" - -/* If set by the user program to a non-zero value, then a default option - --version is added (unless the ARGP_NO_HELP flag is used), which calls - this function with a stream to print the version to and a pointer to the - current parsing state, and then exits (unless the ARGP_NO_EXIT flag is - used). This variable takes precedent over ARGP_PROGRAM_VERSION. */ -void (*argp_program_version_hook) (FILE *stream, struct argp_state *state) = NULL; diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/argp-xinl.c b/thirdparty/grub-2.04/grub-core/lib/gnulib/argp-xinl.c deleted file mode 100644 index ebc032f6f..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/argp-xinl.c +++ /dev/null @@ -1,46 +0,0 @@ -/* Real definitions for extern inline functions in argp.h - Copyright (C) 1997-2019 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Written by Miles Bader . - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . */ - -#ifdef HAVE_CONFIG_H -# include -#endif - -#if defined _LIBC || defined HAVE_FEATURES_H -# include -#endif - -#ifndef __USE_EXTERN_INLINES -# define __USE_EXTERN_INLINES 1 -#endif -#ifdef _LIBC -# define ARGP_EI -#else -# define ARGP_EI _GL_EXTERN_INLINE -#endif -#undef __OPTIMIZE__ -#define __OPTIMIZE__ 1 -#include "argp.h" - -/* Add weak aliases. */ -#if _LIBC - 0 && defined (weak_alias) - -weak_alias (__argp_usage, argp_usage) -weak_alias (__option_is_short, _option_is_short) -weak_alias (__option_is_end, _option_is_end) - -#endif diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/argp.h b/thirdparty/grub-2.04/grub-core/lib/gnulib/argp.h deleted file mode 100644 index 317ac034e..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/argp.h +++ /dev/null @@ -1,631 +0,0 @@ -/* Hierarchical argument parsing, layered over getopt. - Copyright (C) 1995-2019 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Written by Miles Bader . - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . */ - -#ifndef _ARGP_H -#define _ARGP_H - -#include -#include -#include -#include - -#define __need_error_t -#include - -#ifndef __THROW -# define __THROW -#endif -#ifndef __NTH -# define __NTH(fct) fct __THROW -#endif - -/* The __attribute__ feature is available in gcc versions 2.5 and later. - The __-protected variants of the attributes 'format' and 'printf' are - accepted by gcc versions 2.6.4 (effectively 2.7) and later. - We enable _GL_ATTRIBUTE_FORMAT only if these are supported too, because - gnulib and libintl do '#define printf __printf__' when they override - the 'printf' function. */ -#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 7) -# define _GL_ATTRIBUTE_FORMAT(spec) __attribute__ ((__format__ spec)) -#else -# define _GL_ATTRIBUTE_FORMAT(spec) /* empty */ -#endif - -/* GCC 2.95 and later have "__restrict"; C99 compilers have - "restrict", and "configure" may have defined "restrict". - Other compilers use __restrict, __restrict__, and _Restrict, and - 'configure' might #define 'restrict' to those words. */ -#ifndef __restrict -# if ! (2 < __GNUC__ || (2 == __GNUC__ && 95 <= __GNUC_MINOR__)) -# if 199901L <= __STDC_VERSION__ -# define __restrict restrict -# else -# define __restrict -# endif -# endif -#endif - -#ifndef __error_t_defined -typedef int error_t; -# define __error_t_defined -#endif - -#ifdef __cplusplus -extern "C" { -#endif - -/* A description of a particular option. A pointer to an array of - these is passed in the OPTIONS field of an argp structure. Each option - entry can correspond to one long option and/or one short option; more - names for the same option can be added by following an entry in an option - array with options having the OPTION_ALIAS flag set. */ -struct argp_option -{ - /* The long option name. For more than one name for the same option, you - can use following options with the OPTION_ALIAS flag set. */ - const char *name; - - /* What key is returned for this option. If > 0 and printable, then it's - also accepted as a short option. */ - int key; - - /* If non-NULL, this is the name of the argument associated with this - option, which is required unless the OPTION_ARG_OPTIONAL flag is set. */ - const char *arg; - - /* OPTION_ flags. */ - int flags; - - /* The doc string for this option. If both NAME and KEY are 0, This string - will be printed outdented from the normal option column, making it - useful as a group header (it will be the first thing printed in its - group); in this usage, it's conventional to end the string with a ':'. - - Write the initial value as N_("TEXT") if you want xgettext to collect - it into a POT file. */ - const char *doc; - - /* The group this option is in. In a long help message, options are sorted - alphabetically within each group, and the groups presented in the order - 0, 1, 2, ..., n, -m, ..., -2, -1. Every entry in an options array with - if this field 0 will inherit the group number of the previous entry, or - zero if it's the first one, unless its a group header (NAME and KEY both - 0), in which case, the previous entry + 1 is the default. Automagic - options such as --help are put into group -1. */ - int group; -}; - -/* The argument associated with this option is optional. */ -#define OPTION_ARG_OPTIONAL 0x1 - -/* This option isn't displayed in any help messages. */ -#define OPTION_HIDDEN 0x2 - -/* This option is an alias for the closest previous non-alias option. This - means that it will be displayed in the same help entry, and will inherit - fields other than NAME and KEY from the aliased option. */ -#define OPTION_ALIAS 0x4 - -/* This option isn't actually an option (and so should be ignored by the - actual option parser), but rather an arbitrary piece of documentation that - should be displayed in much the same manner as the options. If this flag - is set, then the option NAME field is displayed unmodified (e.g., no '--' - prefix is added) at the left-margin (where a *short* option would normally - be displayed), and the documentation string in the normal place. The NAME - field will be translated using gettext, unless OPTION_NO_TRANS is set (see - below). For purposes of sorting, any leading whitespace and punctuation is - ignored, except that if the first non-whitespace character is not '-', this - entry is displayed after all options (and OPTION_DOC entries with a leading - '-') in the same group. */ -#define OPTION_DOC 0x8 - -/* This option shouldn't be included in "long" usage messages (but is still - included in help messages). This is mainly intended for options that are - completely documented in an argp's ARGS_DOC field, in which case including - the option in the generic usage list would be redundant. For instance, - if ARGS_DOC is "FOO BAR\n-x BLAH", and the '-x' option's purpose is to - distinguish these two cases, -x should probably be marked - OPTION_NO_USAGE. */ -#define OPTION_NO_USAGE 0x10 - -/* Valid only in conjunction with OPTION_DOC. This option disables translation - of option name. */ -#define OPTION_NO_TRANS 0x20 - -struct argp; /* fwd declare this type */ -struct argp_state; /* " */ -struct argp_child; /* " */ - -/* The type of a pointer to an argp parsing function. */ -typedef error_t (*argp_parser_t) (int __key, char *__arg, - struct argp_state *__state); - -/* What to return for unrecognized keys. For special ARGP_KEY_ keys, such - returns will simply be ignored. For user keys, this error will be turned - into EINVAL (if the call to argp_parse is such that errors are propagated - back to the user instead of exiting); returning EINVAL itself would result - in an immediate stop to parsing in *all* cases. */ -#define ARGP_ERR_UNKNOWN E2BIG /* Hurd should never need E2BIG. XXX */ - -/* Special values for the KEY argument to an argument parsing function. - ARGP_ERR_UNKNOWN should be returned if they aren't understood. - - The sequence of keys to a parsing function is either (where each - uppercased word should be prefixed by 'ARGP_KEY_' and opt is a user key): - - INIT opt... NO_ARGS END SUCCESS -- No non-option arguments at all - or INIT (opt | ARG)... END SUCCESS -- All non-option args parsed - or INIT (opt | ARG)... SUCCESS -- Some non-option arg unrecognized - - The third case is where every parser returned ARGP_KEY_UNKNOWN for an - argument, in which case parsing stops at that argument (returning the - unparsed arguments to the caller of argp_parse if requested, or stopping - with an error message if not). - - If an error occurs (either detected by argp, or because the parsing - function returned an error value), then the parser is called with - ARGP_KEY_ERROR, and no further calls are made. */ - -/* This is not an option at all, but rather a command line argument. If a - parser receiving this key returns success, the fact is recorded, and the - ARGP_KEY_NO_ARGS case won't be used. HOWEVER, if while processing the - argument, a parser function decrements the NEXT field of the state it's - passed, the option won't be considered processed; this is to allow you to - actually modify the argument (perhaps into an option), and have it - processed again. */ -#define ARGP_KEY_ARG 0 -/* There are remaining arguments not parsed by any parser, which may be found - starting at (STATE->argv + STATE->next). If success is returned, but - STATE->next left untouched, it's assumed that all arguments were consume, - otherwise, the parser should adjust STATE->next to reflect any arguments - consumed. */ -#define ARGP_KEY_ARGS 0x1000006 -/* There are no more command line arguments at all. */ -#define ARGP_KEY_END 0x1000001 -/* Because it's common to want to do some special processing if there aren't - any non-option args, user parsers are called with this key if they didn't - successfully process any non-option arguments. Called just before - ARGP_KEY_END (where more general validity checks on previously parsed - arguments can take place). */ -#define ARGP_KEY_NO_ARGS 0x1000002 -/* Passed in before any parsing is done. Afterwards, the values of each - element of the CHILD_INPUT field, if any, in the state structure is - copied to each child's state to be the initial value of the INPUT field. */ -#define ARGP_KEY_INIT 0x1000003 -/* Use after all other keys, including SUCCESS & END. */ -#define ARGP_KEY_FINI 0x1000007 -/* Passed in when parsing has successfully been completed (even if there are - still arguments remaining). */ -#define ARGP_KEY_SUCCESS 0x1000004 -/* Passed in if an error occurs. */ -#define ARGP_KEY_ERROR 0x1000005 - -/* An argp structure contains a set of options declarations, a function to - deal with parsing one, documentation string, a possible vector of child - argp's, and perhaps a function to filter help output. When actually - parsing options, getopt is called with the union of all the argp - structures chained together through their CHILD pointers, with conflicts - being resolved in favor of the first occurrence in the chain. */ -struct argp -{ - /* An array of argp_option structures, terminated by an entry with both - NAME and KEY having a value of 0. */ - const struct argp_option *options; - - /* What to do with an option from this structure. KEY is the key - associated with the option, and ARG is any associated argument (NULL if - none was supplied). If KEY isn't understood, ARGP_ERR_UNKNOWN should be - returned. If a non-zero, non-ARGP_ERR_UNKNOWN value is returned, then - parsing is stopped immediately, and that value is returned from - argp_parse(). For special (non-user-supplied) values of KEY, see the - ARGP_KEY_ definitions below. */ - argp_parser_t parser; - - /* A string describing what other arguments are wanted by this program. It - is only used by argp_usage to print the "Usage:" message. If it - contains newlines, the strings separated by them are considered - alternative usage patterns, and printed on separate lines (lines after - the first are prefix by " or: " instead of "Usage:"). */ - const char *args_doc; - - /* If non-NULL, a string containing extra text to be printed before and - after the options in a long help message (separated by a vertical tab - '\v' character). - Write the initial value as N_("BEFORE-TEXT") "\v" N_("AFTER-TEXT") if - you want xgettext to collect the two pieces of text into a POT file. */ - const char *doc; - - /* A vector of argp_children structures, terminated by a member with a 0 - argp field, pointing to child argps should be parsed with this one. Any - conflicts are resolved in favor of this argp, or early argps in the - CHILDREN list. This field is useful if you use libraries that supply - their own argp structure, which you want to use in conjunction with your - own. */ - const struct argp_child *children; - - /* If non-zero, this should be a function to filter the output of help - messages. KEY is either a key from an option, in which case TEXT is - that option's help text, or a special key from the ARGP_KEY_HELP_ - defines, below, describing which other help text TEXT is. The function - should return either TEXT, if it should be used as-is, a replacement - string, which should be malloced, and will be freed by argp, or NULL, - meaning "print nothing". The value for TEXT is *after* any translation - has been done, so if any of the replacement text also needs translation, - that should be done by the filter function. INPUT is either the input - supplied to argp_parse, or NULL, if argp_help was called directly. */ - char *(*help_filter) (int __key, const char *__text, void *__input); - - /* If non-zero the strings used in the argp library are translated using - the domain described by this string. Otherwise the currently installed - default domain is used. */ - const char *argp_domain; -}; - -/* Possible KEY arguments to a help filter function. */ -#define ARGP_KEY_HELP_PRE_DOC 0x2000001 /* Help text preceding options. */ -#define ARGP_KEY_HELP_POST_DOC 0x2000002 /* Help text following options. */ -#define ARGP_KEY_HELP_HEADER 0x2000003 /* Option header string. */ -#define ARGP_KEY_HELP_EXTRA 0x2000004 /* After all other documentation; - TEXT is NULL for this key. */ -/* Explanatory note emitted when duplicate option arguments have been - suppressed. */ -#define ARGP_KEY_HELP_DUP_ARGS_NOTE 0x2000005 -#define ARGP_KEY_HELP_ARGS_DOC 0x2000006 /* Argument doc string. */ - -/* When an argp has a non-zero CHILDREN field, it should point to a vector of - argp_child structures, each of which describes a subsidiary argp. */ -struct argp_child -{ - /* The child parser. */ - const struct argp *argp; - - /* Flags for this child. */ - int flags; - - /* If non-zero, an optional header to be printed in help output before the - child options. As a side-effect, a non-zero value forces the child - options to be grouped together; to achieve this effect without actually - printing a header string, use a value of "". */ - const char *header; - - /* Where to group the child options relative to the other ("consolidated") - options in the parent argp; the values are the same as the GROUP field - in argp_option structs, but all child-groupings follow parent options at - a particular group level. If both this field and HEADER are zero, then - they aren't grouped at all, but rather merged with the parent options - (merging the child's grouping levels with the parents). */ - int group; -}; - -/* Parsing state. This is provided to parsing functions called by argp, - which may examine and, as noted, modify fields. */ -struct argp_state -{ - /* The top level ARGP being parsed. */ - const struct argp *root_argp; - - /* The argument vector being parsed. May be modified. */ - int argc; - char **argv; - - /* The index in ARGV of the next arg that to be parsed. May be modified. */ - int next; - - /* The flags supplied to argp_parse. May be modified. */ - unsigned flags; - - /* While calling a parsing function with a key of ARGP_KEY_ARG, this is the - number of the current arg, starting at zero, and incremented after each - such call returns. At all other times, this is the number of such - arguments that have been processed. */ - unsigned arg_num; - - /* If non-zero, the index in ARGV of the first argument following a special - '--' argument (which prevents anything following being interpreted as an - option). Only set once argument parsing has proceeded past this point. */ - int quoted; - - /* An arbitrary pointer passed in from the user. */ - void *input; - /* Values to pass to child parsers. This vector will be the same length as - the number of children for the current parser. */ - void **child_inputs; - - /* For the parser's use. Initialized to 0. */ - void *hook; - - /* The name used when printing messages. This is initialized to ARGV[0], - or PROGRAM_INVOCATION_NAME if that is unavailable. */ - char *name; - - /* Streams used when argp prints something. */ - FILE *err_stream; /* For errors; initialized to stderr. */ - FILE *out_stream; /* For information; initialized to stdout. */ - - void *pstate; /* Private, for use by argp. */ -}; - -/* Flags for argp_parse (note that the defaults are those that are - convenient for program command line parsing): */ - -/* Don't ignore the first element of ARGV. Normally (and always unless - ARGP_NO_ERRS is set) the first element of the argument vector is - skipped for option parsing purposes, as it corresponds to the program name - in a command line. */ -#define ARGP_PARSE_ARGV0 0x01 - -/* Don't print error messages for unknown options to stderr; unless this flag - is set, ARGP_PARSE_ARGV0 is ignored, as ARGV[0] is used as the program - name in the error messages. This flag implies ARGP_NO_EXIT (on the - assumption that silent exiting upon errors is bad behaviour). */ -#define ARGP_NO_ERRS 0x02 - -/* Don't parse any non-option args. Normally non-option args are parsed by - calling the parse functions with a key of ARGP_KEY_ARG, and the actual arg - as the value. Since it's impossible to know which parse function wants to - handle it, each one is called in turn, until one returns 0 or an error - other than ARGP_ERR_UNKNOWN; if an argument is handled by no one, the - argp_parse returns prematurely (but with a return value of 0). If all - args have been parsed without error, all parsing functions are called one - last time with a key of ARGP_KEY_END. This flag needn't normally be set, - as the normal behavior is to stop parsing as soon as some argument can't - be handled. */ -#define ARGP_NO_ARGS 0x04 - -/* Parse options and arguments in the same order they occur on the command - line -- normally they're rearranged so that all options come first. */ -#define ARGP_IN_ORDER 0x08 - -/* Don't provide the standard long option --help, which causes usage and - option help information to be output to stdout, and exit (0) called. */ -#define ARGP_NO_HELP 0x10 - -/* Don't exit on errors (they may still result in error messages). */ -#define ARGP_NO_EXIT 0x20 - -/* Use the gnu getopt "long-only" rules for parsing arguments. */ -#define ARGP_LONG_ONLY 0x40 - -/* Turns off any message-printing/exiting options. */ -#define ARGP_SILENT (ARGP_NO_EXIT | ARGP_NO_ERRS | ARGP_NO_HELP) - -/* Parse the options strings in ARGC & ARGV according to the options in ARGP. - FLAGS is one of the ARGP_ flags above. If ARG_INDEX is non-NULL, the - index in ARGV of the first unparsed option is returned in it. If an - unknown option is present, ARGP_ERR_UNKNOWN is returned; if some parser - routine returned a non-zero value, it is returned; otherwise 0 is - returned. This function may also call exit unless the ARGP_NO_HELP flag - is set. INPUT is a pointer to a value to be passed in to the parser. */ -extern error_t argp_parse (const struct argp *__restrict __argp, - int /*argc*/, char **__restrict /*argv*/, - unsigned __flags, int *__restrict __arg_index, - void *__restrict __input); -extern error_t __argp_parse (const struct argp *__restrict __argp, - int /*argc*/, char **__restrict /*argv*/, - unsigned __flags, int *__restrict __arg_index, - void *__restrict __input); - -/* Global variables. */ - -/* GNULIB makes sure both program_invocation_name and - program_invocation_short_name are available */ -#ifdef GNULIB_PROGRAM_INVOCATION_NAME -extern char *program_invocation_name; -# undef HAVE_DECL_PROGRAM_INVOCATION_NAME -# define HAVE_DECL_PROGRAM_INVOCATION_NAME 1 -#endif - -#ifdef GNULIB_PROGRAM_INVOCATION_SHORT_NAME -extern char *program_invocation_short_name; -# undef HAVE_DECL_PROGRAM_INVOCATION_SHORT_NAME -# define HAVE_DECL_PROGRAM_INVOCATION_SHORT_NAME 1 -#endif - -/* If defined or set by the user program to a non-zero value, then a default - option --version is added (unless the ARGP_NO_HELP flag is used), which - will print this string followed by a newline and exit (unless the - ARGP_NO_EXIT flag is used). Overridden by ARGP_PROGRAM_VERSION_HOOK. */ -extern const char *argp_program_version; - -/* If defined or set by the user program to a non-zero value, then a default - option --version is added (unless the ARGP_NO_HELP flag is used), which - calls this function with a stream to print the version to and a pointer to - the current parsing state, and then exits (unless the ARGP_NO_EXIT flag is - used). This variable takes precedent over ARGP_PROGRAM_VERSION. */ -extern void (*argp_program_version_hook) (FILE *__restrict __stream, - struct argp_state *__restrict - __state); - -/* If defined or set by the user program, it should point to string that is - the bug-reporting address for the program. It will be printed by - argp_help if the ARGP_HELP_BUG_ADDR flag is set (as it is by various - standard help messages), embedded in a sentence that says something like - "Report bugs to ADDR." */ -extern const char *argp_program_bug_address; - -/* The exit status that argp will use when exiting due to a parsing error. - If not defined or set by the user program, this defaults to EX_USAGE from - . */ -extern error_t argp_err_exit_status; - -/* Flags for argp_help. */ -#define ARGP_HELP_USAGE 0x01 /* a Usage: message. */ -#define ARGP_HELP_SHORT_USAGE 0x02 /* " but don't actually print options. */ -#define ARGP_HELP_SEE 0x04 /* a "Try ... for more help" message. */ -#define ARGP_HELP_LONG 0x08 /* a long help message. */ -#define ARGP_HELP_PRE_DOC 0x10 /* doc string preceding long help. */ -#define ARGP_HELP_POST_DOC 0x20 /* doc string following long help. */ -#define ARGP_HELP_DOC (ARGP_HELP_PRE_DOC | ARGP_HELP_POST_DOC) -#define ARGP_HELP_BUG_ADDR 0x40 /* bug report address */ -#define ARGP_HELP_LONG_ONLY 0x80 /* modify output appropriately to - reflect ARGP_LONG_ONLY mode. */ - -/* These ARGP_HELP flags are only understood by argp_state_help. */ -#define ARGP_HELP_EXIT_ERR 0x100 /* Call exit(1) instead of returning. */ -#define ARGP_HELP_EXIT_OK 0x200 /* Call exit(0) instead of returning. */ - -/* The standard thing to do after a program command line parsing error, if an - error message has already been printed. */ -#define ARGP_HELP_STD_ERR \ - (ARGP_HELP_SEE | ARGP_HELP_EXIT_ERR) -/* The standard thing to do after a program command line parsing error, if no - more specific error message has been printed. */ -#define ARGP_HELP_STD_USAGE \ - (ARGP_HELP_SHORT_USAGE | ARGP_HELP_SEE | ARGP_HELP_EXIT_ERR) -/* The standard thing to do in response to a --help option. */ -#define ARGP_HELP_STD_HELP \ - (ARGP_HELP_SHORT_USAGE | ARGP_HELP_LONG | ARGP_HELP_EXIT_OK \ - | ARGP_HELP_DOC | ARGP_HELP_BUG_ADDR) - -/* Output a usage message for ARGP to STREAM. FLAGS are from the set - ARGP_HELP_*. */ -extern void argp_help (const struct argp *__restrict __argp, - FILE *__restrict __stream, - unsigned __flags, char *__restrict __name); -extern void __argp_help (const struct argp *__restrict __argp, - FILE *__restrict __stream, unsigned __flags, - char *__name); - -/* The following routines are intended to be called from within an argp - parsing routine (thus taking an argp_state structure as the first - argument). They may or may not print an error message and exit, depending - on the flags in STATE -- in any case, the caller should be prepared for - them *not* to exit, and should return an appropriate error after calling - them. [argp_usage & argp_error should probably be called argp_state_..., - but they're used often enough that they should be short] */ - -/* Output, if appropriate, a usage message for STATE to STREAM. FLAGS are - from the set ARGP_HELP_*. */ -extern void argp_state_help (const struct argp_state *__restrict __state, - FILE *__restrict __stream, - unsigned int __flags); -extern void __argp_state_help (const struct argp_state *__restrict __state, - FILE *__restrict __stream, - unsigned int __flags); - -#if _LIBC -/* Possibly output the standard usage message for ARGP to stderr and exit. */ -extern void argp_usage (const struct argp_state *__state); -extern void __argp_usage (const struct argp_state *__state); -#endif - -/* If appropriate, print the printf string FMT and following args, preceded - by the program name and ':', to stderr, and followed by a "Try ... --help" - message, then exit (1). */ -extern void argp_error (const struct argp_state *__restrict __state, - const char *__restrict __fmt, ...) - _GL_ATTRIBUTE_FORMAT ((__printf__, 2, 3)); -extern void __argp_error (const struct argp_state *__restrict __state, - const char *__restrict __fmt, ...) - _GL_ATTRIBUTE_FORMAT ((__printf__, 2, 3)); - -/* Similar to the standard gnu error-reporting function error(), but will - respect the ARGP_NO_EXIT and ARGP_NO_ERRS flags in STATE, and will print - to STATE->err_stream. This is useful for argument parsing code that is - shared between program startup (when exiting is desired) and runtime - option parsing (when typically an error code is returned instead). The - difference between this function and argp_error is that the latter is for - *parsing errors*, and the former is for other problems that occur during - parsing but don't reflect a (syntactic) problem with the input. */ -extern void argp_failure (const struct argp_state *__restrict __state, - int __status, int __errnum, - const char *__restrict __fmt, ...) - _GL_ATTRIBUTE_FORMAT ((__printf__, 4, 5)); -extern void __argp_failure (const struct argp_state *__restrict __state, - int __status, int __errnum, - const char *__restrict __fmt, ...) - _GL_ATTRIBUTE_FORMAT ((__printf__, 4, 5)); - -#if _LIBC -/* Returns true if the option OPT is a valid short option. */ -extern int _option_is_short (const struct argp_option *__opt) __THROW; -extern int __option_is_short (const struct argp_option *__opt) __THROW; - -/* Returns true if the option OPT is in fact the last (unused) entry in an - options array. */ -extern int _option_is_end (const struct argp_option *__opt) __THROW; -extern int __option_is_end (const struct argp_option *__opt) __THROW; -#endif - -/* Return the input field for ARGP in the parser corresponding to STATE; used - by the help routines. */ -extern void *_argp_input (const struct argp *__restrict __argp, - const struct argp_state *__restrict __state) - __THROW; -extern void *__argp_input (const struct argp *__restrict __argp, - const struct argp_state *__restrict __state) - __THROW; - -#if !_LIBC || defined __USE_EXTERN_INLINES - -# if !_LIBC -# define __argp_usage argp_usage -# define __argp_state_help argp_state_help -# define __option_is_short _option_is_short -# define __option_is_end _option_is_end -#ifndef _GL_INLINE_HEADER_BEGIN - #error "Please include config.h first." -#endif -_GL_INLINE_HEADER_BEGIN -# ifndef ARGP_EI -# define ARGP_EI _GL_INLINE -# endif -# endif - -# ifndef ARGP_EI -# define ARGP_EI __extern_inline -# endif - -ARGP_EI void -__argp_usage (const struct argp_state *__state) -{ - __argp_state_help (__state, stderr, ARGP_HELP_STD_USAGE); -} - -ARGP_EI int -__NTH (__option_is_short (const struct argp_option *__opt)) -{ - if (__opt->flags & OPTION_DOC) - return 0; - else - { - int __key = __opt->key; - return __key > 0 && __key <= UCHAR_MAX && isprint (__key); - } -} - -ARGP_EI int -__NTH (__option_is_end (const struct argp_option *__opt)) -{ - return !__opt->key && !__opt->name && !__opt->doc && !__opt->group; -} - -# if !_LIBC -# undef __argp_usage -# undef __argp_state_help -# undef __option_is_short -# undef __option_is_end -_GL_INLINE_HEADER_END -# endif -#endif /* Use extern inlines. */ - -#ifdef __cplusplus -} -#endif - -#endif /* argp.h */ diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/asnprintf.c b/thirdparty/grub-2.04/grub-core/lib/gnulib/asnprintf.c deleted file mode 100644 index d2a8c0972..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/asnprintf.c +++ /dev/null @@ -1,34 +0,0 @@ -/* Formatted output to strings. - Copyright (C) 1999, 2002, 2006, 2009-2019 Free Software Foundation, Inc. - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3, or (at your option) - any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License along - with this program; if not, see . */ - -#include - -/* Specification. */ -#include "vasnprintf.h" - -#include - -char * -asnprintf (char *resultbuf, size_t *lengthp, const char *format, ...) -{ - va_list args; - char *result; - - va_start (args, format); - result = vasnprintf (resultbuf, lengthp, format, args); - va_end (args); - return result; -} diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/assure.h b/thirdparty/grub-2.04/grub-core/lib/gnulib/assure.h deleted file mode 100644 index c21b6a6b8..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/assure.h +++ /dev/null @@ -1,37 +0,0 @@ -/* Run-time assert-like macros. - - Copyright (C) 2014-2019 Free Software Foundation, Inc. - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . */ - -/* Written by Paul Eggert. */ - -#ifndef _GL_ASSURE_H -#define _GL_ASSURE_H - -#include - -/* Check E's value at runtime, and report an error and abort if not. - However, do nothing if NDEBUG is defined. - - Unlike standard 'assert', this macro always compiles E even when NDEBUG - is defined, so as to catch typos and avoid some GCC warnings. */ - -#ifdef NDEBUG -# define assure(E) ((void) (0 && (E))) -#else -# define assure(E) assert (E) -#endif - -#endif diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/basename-lgpl.c b/thirdparty/grub-2.04/grub-core/lib/gnulib/basename-lgpl.c deleted file mode 100644 index 0ae04ee57..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/basename-lgpl.c +++ /dev/null @@ -1,75 +0,0 @@ -/* basename.c -- return the last element in a file name - - Copyright (C) 1990, 1998-2001, 2003-2006, 2009-2019 Free Software - Foundation, Inc. - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . */ - -#include - -#include "dirname.h" - -#include - -/* Return the address of the last file name component of NAME. If - NAME has no relative file name components because it is a file - system root, return the empty string. */ - -char * -last_component (char const *name) -{ - char const *base = name + FILE_SYSTEM_PREFIX_LEN (name); - char const *p; - bool saw_slash = false; - - while (ISSLASH (*base)) - base++; - - for (p = base; *p; p++) - { - if (ISSLASH (*p)) - saw_slash = true; - else if (saw_slash) - { - base = p; - saw_slash = false; - } - } - - return (char *) base; -} - -/* Return the length of the basename NAME. Typically NAME is the - value returned by base_name or last_component. Act like strlen - (NAME), except omit all trailing slashes. */ - -size_t -base_len (char const *name) -{ - size_t len; - size_t prefix_len = FILE_SYSTEM_PREFIX_LEN (name); - - for (len = strlen (name); 1 < len && ISSLASH (name[len - 1]); len--) - continue; - - if (DOUBLE_SLASH_IS_DISTINCT_ROOT && len == 1 - && ISSLASH (name[0]) && ISSLASH (name[1]) && ! name[2]) - return 2; - - if (FILE_SYSTEM_DRIVE_PREFIX_CAN_BE_RELATIVE && prefix_len - && len == prefix_len && ISSLASH (name[prefix_len])) - return prefix_len + 1; - - return len; -} diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/btowc.c b/thirdparty/grub-2.04/grub-core/lib/gnulib/btowc.c deleted file mode 100644 index 9e2496d40..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/btowc.c +++ /dev/null @@ -1,39 +0,0 @@ -/* Convert unibyte character to wide character. - Copyright (C) 2008, 2010-2019 Free Software Foundation, Inc. - Written by Bruno Haible , 2008. - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . */ - -#include - -/* Specification. */ -#include - -#include -#include - -wint_t -btowc (int c) -{ - if (c != EOF) - { - char buf[1]; - wchar_t wc; - - buf[0] = c; - if (mbtowc (&wc, buf, 1) >= 0) - return wc; - } - return WEOF; -} diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/c++defs.h b/thirdparty/grub-2.04/grub-core/lib/gnulib/c++defs.h deleted file mode 100644 index 87d071672..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/c++defs.h +++ /dev/null @@ -1,316 +0,0 @@ -/* C++ compatible function declaration macros. - Copyright (C) 2010-2019 Free Software Foundation, Inc. - - This program is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published - by the Free Software Foundation; either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . */ - -#ifndef _GL_CXXDEFS_H -#define _GL_CXXDEFS_H - -/* Begin/end the GNULIB_NAMESPACE namespace. */ -#if defined __cplusplus && defined GNULIB_NAMESPACE -# define _GL_BEGIN_NAMESPACE namespace GNULIB_NAMESPACE { -# define _GL_END_NAMESPACE } -#else -# define _GL_BEGIN_NAMESPACE -# define _GL_END_NAMESPACE -#endif - -/* The three most frequent use cases of these macros are: - - * For providing a substitute for a function that is missing on some - platforms, but is declared and works fine on the platforms on which - it exists: - - #if @GNULIB_FOO@ - # if !@HAVE_FOO@ - _GL_FUNCDECL_SYS (foo, ...); - # endif - _GL_CXXALIAS_SYS (foo, ...); - _GL_CXXALIASWARN (foo); - #elif defined GNULIB_POSIXCHECK - ... - #endif - - * For providing a replacement for a function that exists on all platforms, - but is broken/insufficient and needs to be replaced on some platforms: - - #if @GNULIB_FOO@ - # if @REPLACE_FOO@ - # if !(defined __cplusplus && defined GNULIB_NAMESPACE) - # undef foo - # define foo rpl_foo - # endif - _GL_FUNCDECL_RPL (foo, ...); - _GL_CXXALIAS_RPL (foo, ...); - # else - _GL_CXXALIAS_SYS (foo, ...); - # endif - _GL_CXXALIASWARN (foo); - #elif defined GNULIB_POSIXCHECK - ... - #endif - - * For providing a replacement for a function that exists on some platforms - but is broken/insufficient and needs to be replaced on some of them and - is additionally either missing or undeclared on some other platforms: - - #if @GNULIB_FOO@ - # if @REPLACE_FOO@ - # if !(defined __cplusplus && defined GNULIB_NAMESPACE) - # undef foo - # define foo rpl_foo - # endif - _GL_FUNCDECL_RPL (foo, ...); - _GL_CXXALIAS_RPL (foo, ...); - # else - # if !@HAVE_FOO@ or if !@HAVE_DECL_FOO@ - _GL_FUNCDECL_SYS (foo, ...); - # endif - _GL_CXXALIAS_SYS (foo, ...); - # endif - _GL_CXXALIASWARN (foo); - #elif defined GNULIB_POSIXCHECK - ... - #endif -*/ - -/* _GL_EXTERN_C declaration; - performs the declaration with C linkage. */ -#if defined __cplusplus -# define _GL_EXTERN_C extern "C" -#else -# define _GL_EXTERN_C extern -#endif - -/* _GL_FUNCDECL_RPL (func, rettype, parameters_and_attributes); - declares a replacement function, named rpl_func, with the given prototype, - consisting of return type, parameters, and attributes. - Example: - _GL_FUNCDECL_RPL (open, int, (const char *filename, int flags, ...) - _GL_ARG_NONNULL ((1))); - */ -#define _GL_FUNCDECL_RPL(func,rettype,parameters_and_attributes) \ - _GL_FUNCDECL_RPL_1 (rpl_##func, rettype, parameters_and_attributes) -#define _GL_FUNCDECL_RPL_1(rpl_func,rettype,parameters_and_attributes) \ - _GL_EXTERN_C rettype rpl_func parameters_and_attributes - -/* _GL_FUNCDECL_SYS (func, rettype, parameters_and_attributes); - declares the system function, named func, with the given prototype, - consisting of return type, parameters, and attributes. - Example: - _GL_FUNCDECL_SYS (open, int, (const char *filename, int flags, ...) - _GL_ARG_NONNULL ((1))); - */ -#define _GL_FUNCDECL_SYS(func,rettype,parameters_and_attributes) \ - _GL_EXTERN_C rettype func parameters_and_attributes - -/* _GL_CXXALIAS_RPL (func, rettype, parameters); - declares a C++ alias called GNULIB_NAMESPACE::func - that redirects to rpl_func, if GNULIB_NAMESPACE is defined. - Example: - _GL_CXXALIAS_RPL (open, int, (const char *filename, int flags, ...)); - - Wrapping rpl_func in an object with an inline conversion operator - avoids a reference to rpl_func unless GNULIB_NAMESPACE::func is - actually used in the program. */ -#define _GL_CXXALIAS_RPL(func,rettype,parameters) \ - _GL_CXXALIAS_RPL_1 (func, rpl_##func, rettype, parameters) -#if defined __cplusplus && defined GNULIB_NAMESPACE -# define _GL_CXXALIAS_RPL_1(func,rpl_func,rettype,parameters) \ - namespace GNULIB_NAMESPACE \ - { \ - static const struct _gl_ ## func ## _wrapper \ - { \ - typedef rettype (*type) parameters; \ - \ - inline operator type () const \ - { \ - return ::rpl_func; \ - } \ - } func = {}; \ - } \ - _GL_EXTERN_C int _gl_cxxalias_dummy -#else -# define _GL_CXXALIAS_RPL_1(func,rpl_func,rettype,parameters) \ - _GL_EXTERN_C int _gl_cxxalias_dummy -#endif - -/* _GL_CXXALIAS_RPL_CAST_1 (func, rpl_func, rettype, parameters); - is like _GL_CXXALIAS_RPL_1 (func, rpl_func, rettype, parameters); - except that the C function rpl_func may have a slightly different - declaration. A cast is used to silence the "invalid conversion" error - that would otherwise occur. */ -#if defined __cplusplus && defined GNULIB_NAMESPACE -# define _GL_CXXALIAS_RPL_CAST_1(func,rpl_func,rettype,parameters) \ - namespace GNULIB_NAMESPACE \ - { \ - static const struct _gl_ ## func ## _wrapper \ - { \ - typedef rettype (*type) parameters; \ - \ - inline operator type () const \ - { \ - return reinterpret_cast(::rpl_func); \ - } \ - } func = {}; \ - } \ - _GL_EXTERN_C int _gl_cxxalias_dummy -#else -# define _GL_CXXALIAS_RPL_CAST_1(func,rpl_func,rettype,parameters) \ - _GL_EXTERN_C int _gl_cxxalias_dummy -#endif - -/* _GL_CXXALIAS_SYS (func, rettype, parameters); - declares a C++ alias called GNULIB_NAMESPACE::func - that redirects to the system provided function func, if GNULIB_NAMESPACE - is defined. - Example: - _GL_CXXALIAS_SYS (open, int, (const char *filename, int flags, ...)); - - Wrapping func in an object with an inline conversion operator - avoids a reference to func unless GNULIB_NAMESPACE::func is - actually used in the program. */ -#if defined __cplusplus && defined GNULIB_NAMESPACE -# define _GL_CXXALIAS_SYS(func,rettype,parameters) \ - namespace GNULIB_NAMESPACE \ - { \ - static const struct _gl_ ## func ## _wrapper \ - { \ - typedef rettype (*type) parameters; \ - \ - inline operator type () const \ - { \ - return ::func; \ - } \ - } func = {}; \ - } \ - _GL_EXTERN_C int _gl_cxxalias_dummy -#else -# define _GL_CXXALIAS_SYS(func,rettype,parameters) \ - _GL_EXTERN_C int _gl_cxxalias_dummy -#endif - -/* _GL_CXXALIAS_SYS_CAST (func, rettype, parameters); - is like _GL_CXXALIAS_SYS (func, rettype, parameters); - except that the C function func may have a slightly different declaration. - A cast is used to silence the "invalid conversion" error that would - otherwise occur. */ -#if defined __cplusplus && defined GNULIB_NAMESPACE -# define _GL_CXXALIAS_SYS_CAST(func,rettype,parameters) \ - namespace GNULIB_NAMESPACE \ - { \ - static const struct _gl_ ## func ## _wrapper \ - { \ - typedef rettype (*type) parameters; \ - \ - inline operator type () const \ - { \ - return reinterpret_cast(::func); \ - } \ - } func = {}; \ - } \ - _GL_EXTERN_C int _gl_cxxalias_dummy -#else -# define _GL_CXXALIAS_SYS_CAST(func,rettype,parameters) \ - _GL_EXTERN_C int _gl_cxxalias_dummy -#endif - -/* _GL_CXXALIAS_SYS_CAST2 (func, rettype, parameters, rettype2, parameters2); - is like _GL_CXXALIAS_SYS (func, rettype, parameters); - except that the C function is picked among a set of overloaded functions, - namely the one with rettype2 and parameters2. Two consecutive casts - are used to silence the "cannot find a match" and "invalid conversion" - errors that would otherwise occur. */ -#if defined __cplusplus && defined GNULIB_NAMESPACE - /* The outer cast must be a reinterpret_cast. - The inner cast: When the function is defined as a set of overloaded - functions, it works as a static_cast<>, choosing the designated variant. - When the function is defined as a single variant, it works as a - reinterpret_cast<>. The parenthesized cast syntax works both ways. */ -# define _GL_CXXALIAS_SYS_CAST2(func,rettype,parameters,rettype2,parameters2) \ - namespace GNULIB_NAMESPACE \ - { \ - static const struct _gl_ ## func ## _wrapper \ - { \ - typedef rettype (*type) parameters; \ - \ - inline operator type () const \ - { \ - return reinterpret_cast((rettype2 (*) parameters2)(::func)); \ - } \ - } func = {}; \ - } \ - _GL_EXTERN_C int _gl_cxxalias_dummy -#else -# define _GL_CXXALIAS_SYS_CAST2(func,rettype,parameters,rettype2,parameters2) \ - _GL_EXTERN_C int _gl_cxxalias_dummy -#endif - -/* _GL_CXXALIASWARN (func); - causes a warning to be emitted when ::func is used but not when - GNULIB_NAMESPACE::func is used. func must be defined without overloaded - variants. */ -#if defined __cplusplus && defined GNULIB_NAMESPACE -# define _GL_CXXALIASWARN(func) \ - _GL_CXXALIASWARN_1 (func, GNULIB_NAMESPACE) -# define _GL_CXXALIASWARN_1(func,namespace) \ - _GL_CXXALIASWARN_2 (func, namespace) -/* To work around GCC bug , - we enable the warning only when not optimizing. */ -# if !__OPTIMIZE__ -# define _GL_CXXALIASWARN_2(func,namespace) \ - _GL_WARN_ON_USE (func, \ - "The symbol ::" #func " refers to the system function. " \ - "Use " #namespace "::" #func " instead.") -# elif __GNUC__ >= 3 && GNULIB_STRICT_CHECKING -# define _GL_CXXALIASWARN_2(func,namespace) \ - extern __typeof__ (func) func -# else -# define _GL_CXXALIASWARN_2(func,namespace) \ - _GL_EXTERN_C int _gl_cxxalias_dummy -# endif -#else -# define _GL_CXXALIASWARN(func) \ - _GL_EXTERN_C int _gl_cxxalias_dummy -#endif - -/* _GL_CXXALIASWARN1 (func, rettype, parameters_and_attributes); - causes a warning to be emitted when the given overloaded variant of ::func - is used but not when GNULIB_NAMESPACE::func is used. */ -#if defined __cplusplus && defined GNULIB_NAMESPACE -# define _GL_CXXALIASWARN1(func,rettype,parameters_and_attributes) \ - _GL_CXXALIASWARN1_1 (func, rettype, parameters_and_attributes, \ - GNULIB_NAMESPACE) -# define _GL_CXXALIASWARN1_1(func,rettype,parameters_and_attributes,namespace) \ - _GL_CXXALIASWARN1_2 (func, rettype, parameters_and_attributes, namespace) -/* To work around GCC bug , - we enable the warning only when not optimizing. */ -# if !__OPTIMIZE__ -# define _GL_CXXALIASWARN1_2(func,rettype,parameters_and_attributes,namespace) \ - _GL_WARN_ON_USE_CXX (func, rettype, parameters_and_attributes, \ - "The symbol ::" #func " refers to the system function. " \ - "Use " #namespace "::" #func " instead.") -# elif __GNUC__ >= 3 && GNULIB_STRICT_CHECKING -# define _GL_CXXALIASWARN1_2(func,rettype,parameters_and_attributes,namespace) \ - extern __typeof__ (func) func -# else -# define _GL_CXXALIASWARN1_2(func,rettype,parameters_and_attributes,namespace) \ - _GL_EXTERN_C int _gl_cxxalias_dummy -# endif -#else -# define _GL_CXXALIASWARN1(func,rettype,parameters_and_attributes) \ - _GL_EXTERN_C int _gl_cxxalias_dummy -#endif - -#endif /* _GL_CXXDEFS_H */ diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/cdefs.h b/thirdparty/grub-2.04/grub-core/lib/gnulib/cdefs.h deleted file mode 100644 index f7a106440..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/cdefs.h +++ /dev/null @@ -1,514 +0,0 @@ -/* Copyright (C) 1992-2019 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU General Public - License as published by the Free Software Foundation; either - version 3 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - General Public License for more details. - - You should have received a copy of the GNU General Public - License along with the GNU C Library; if not, see - . */ - -#ifndef _SYS_CDEFS_H -#define _SYS_CDEFS_H 1 - -/* We are almost always included from features.h. */ -#ifndef _FEATURES_H -# include -#endif - -/* The GNU libc does not support any K&R compilers or the traditional mode - of ISO C compilers anymore. Check for some of the combinations not - anymore supported. */ -#if defined __GNUC__ && !defined __STDC__ -# error "You need a ISO C conforming compiler to use the glibc headers" -#endif - -/* Some user header file might have defined this before. */ -#undef __P -#undef __PMT - -#ifdef __GNUC__ - -/* All functions, except those with callbacks or those that - synchronize memory, are leaf functions. */ -# if __GNUC_PREREQ (4, 6) && !defined _LIBC -# define __LEAF , __leaf__ -# define __LEAF_ATTR __attribute__ ((__leaf__)) -# else -# define __LEAF -# define __LEAF_ATTR -# endif - -/* GCC can always grok prototypes. For C++ programs we add throw() - to help it optimize the function calls. But this works only with - gcc 2.8.x and egcs. For gcc 3.2 and up we even mark C functions - as non-throwing using a function attribute since programs can use - the -fexceptions options for C code as well. */ -# if !defined __cplusplus && __GNUC_PREREQ (3, 3) -# define __THROW __attribute__ ((__nothrow__ __LEAF)) -# define __THROWNL __attribute__ ((__nothrow__)) -# define __NTH(fct) __attribute__ ((__nothrow__ __LEAF)) fct -# define __NTHNL(fct) __attribute__ ((__nothrow__)) fct -# else -# if defined __cplusplus && __GNUC_PREREQ (2,8) -# define __THROW throw () -# define __THROWNL throw () -# define __NTH(fct) __LEAF_ATTR fct throw () -# define __NTHNL(fct) fct throw () -# else -# define __THROW -# define __THROWNL -# define __NTH(fct) fct -# define __NTHNL(fct) fct -# endif -# endif - -#else /* Not GCC. */ - -# if (defined __cplusplus \ - || (defined __STDC_VERSION__ && __STDC_VERSION__ >= 199901L)) -# define __inline inline -# else -# define __inline /* No inline functions. */ -# endif - -# define __THROW -# define __THROWNL -# define __NTH(fct) fct - -#endif /* GCC. */ - -/* Compilers that are not clang may object to - #if defined __clang__ && __has_extension(...) - even though they do not need to evaluate the right-hand side of the &&. */ -#if defined __clang__ && defined __has_extension -# define __glibc_clang_has_extension(ext) __has_extension (ext) -#else -# define __glibc_clang_has_extension(ext) 0 -#endif - -/* These two macros are not used in glibc anymore. They are kept here - only because some other projects expect the macros to be defined. */ -#define __P(args) args -#define __PMT(args) args - -/* For these things, GCC behaves the ANSI way normally, - and the non-ANSI way under -traditional. */ - -#define __CONCAT(x,y) x ## y -#define __STRING(x) #x - -/* This is not a typedef so `const __ptr_t' does the right thing. */ -#define __ptr_t void * - - -/* C++ needs to know that types and declarations are C, not C++. */ -#ifdef __cplusplus -# define __BEGIN_DECLS extern "C" { -# define __END_DECLS } -#else -# define __BEGIN_DECLS -# define __END_DECLS -#endif - - -/* Fortify support. */ -#define __bos(ptr) __builtin_object_size (ptr, __USE_FORTIFY_LEVEL > 1) -#define __bos0(ptr) __builtin_object_size (ptr, 0) - -#if __GNUC_PREREQ (4,3) -# define __warndecl(name, msg) \ - extern void name (void) __attribute__((__warning__ (msg))) -# define __warnattr(msg) __attribute__((__warning__ (msg))) -# define __errordecl(name, msg) \ - extern void name (void) __attribute__((__error__ (msg))) -#else -# define __warndecl(name, msg) extern void name (void) -# define __warnattr(msg) -# define __errordecl(name, msg) extern void name (void) -#endif - -/* Support for flexible arrays. - Headers that should use flexible arrays only if they're "real" - (e.g. only if they won't affect sizeof()) should test - #if __glibc_c99_flexarr_available. */ -#if defined __STDC_VERSION__ && __STDC_VERSION__ >= 199901L && !defined __HP_cc -# define __flexarr [] -# define __glibc_c99_flexarr_available 1 -#elif __GNUC_PREREQ (2,97) -/* GCC 2.97 supports C99 flexible array members as an extension, - even when in C89 mode or compiling C++ (any version). */ -# define __flexarr [] -# define __glibc_c99_flexarr_available 1 -#elif defined __GNUC__ -/* Pre-2.97 GCC did not support C99 flexible arrays but did have - an equivalent extension with slightly different notation. */ -# define __flexarr [0] -# define __glibc_c99_flexarr_available 1 -#else -/* Some other non-C99 compiler. Approximate with [1]. */ -# define __flexarr [1] -# define __glibc_c99_flexarr_available 0 -#endif - - -/* __asm__ ("xyz") is used throughout the headers to rename functions - at the assembly language level. This is wrapped by the __REDIRECT - macro, in order to support compilers that can do this some other - way. When compilers don't support asm-names at all, we have to do - preprocessor tricks instead (which don't have exactly the right - semantics, but it's the best we can do). - - Example: - int __REDIRECT(setpgrp, (__pid_t pid, __pid_t pgrp), setpgid); */ - -#if defined __GNUC__ && __GNUC__ >= 2 - -# define __REDIRECT(name, proto, alias) name proto __asm__ (__ASMNAME (#alias)) -# ifdef __cplusplus -# define __REDIRECT_NTH(name, proto, alias) \ - name proto __THROW __asm__ (__ASMNAME (#alias)) -# define __REDIRECT_NTHNL(name, proto, alias) \ - name proto __THROWNL __asm__ (__ASMNAME (#alias)) -# else -# define __REDIRECT_NTH(name, proto, alias) \ - name proto __asm__ (__ASMNAME (#alias)) __THROW -# define __REDIRECT_NTHNL(name, proto, alias) \ - name proto __asm__ (__ASMNAME (#alias)) __THROWNL -# endif -# define __ASMNAME(cname) __ASMNAME2 (__USER_LABEL_PREFIX__, cname) -# define __ASMNAME2(prefix, cname) __STRING (prefix) cname - -/* -#elif __SOME_OTHER_COMPILER__ - -# define __REDIRECT(name, proto, alias) name proto; \ - _Pragma("let " #name " = " #alias) -*/ -#endif - -/* GCC has various useful declarations that can be made with the - `__attribute__' syntax. All of the ways we use this do fine if - they are omitted for compilers that don't understand it. */ -#if !defined __GNUC__ || __GNUC__ < 2 -# define __attribute__(xyz) /* Ignore */ -#endif - -/* At some point during the gcc 2.96 development the `malloc' attribute - for functions was introduced. We don't want to use it unconditionally - (although this would be possible) since it generates warnings. */ -#if __GNUC_PREREQ (2,96) -# define __attribute_malloc__ __attribute__ ((__malloc__)) -#else -# define __attribute_malloc__ /* Ignore */ -#endif - -/* Tell the compiler which arguments to an allocation function - indicate the size of the allocation. */ -#if __GNUC_PREREQ (4, 3) -# define __attribute_alloc_size__(params) \ - __attribute__ ((__alloc_size__ params)) -#else -# define __attribute_alloc_size__(params) /* Ignore. */ -#endif - -/* At some point during the gcc 2.96 development the `pure' attribute - for functions was introduced. We don't want to use it unconditionally - (although this would be possible) since it generates warnings. */ -#if __GNUC_PREREQ (2,96) -# define __attribute_pure__ __attribute__ ((__pure__)) -#else -# define __attribute_pure__ /* Ignore */ -#endif - -/* This declaration tells the compiler that the value is constant. */ -#if __GNUC_PREREQ (2,5) -# define __attribute_const__ __attribute__ ((__const__)) -#else -# define __attribute_const__ /* Ignore */ -#endif - -/* At some point during the gcc 3.1 development the `used' attribute - for functions was introduced. We don't want to use it unconditionally - (although this would be possible) since it generates warnings. */ -#if __GNUC_PREREQ (3,1) -# define __attribute_used__ __attribute__ ((__used__)) -# define __attribute_noinline__ __attribute__ ((__noinline__)) -#else -# define __attribute_used__ __attribute__ ((__unused__)) -# define __attribute_noinline__ /* Ignore */ -#endif - -/* Since version 3.2, gcc allows marking deprecated functions. */ -#if __GNUC_PREREQ (3,2) -# define __attribute_deprecated__ __attribute__ ((__deprecated__)) -#else -# define __attribute_deprecated__ /* Ignore */ -#endif - -/* Since version 4.5, gcc also allows one to specify the message printed - when a deprecated function is used. clang claims to be gcc 4.2, but - may also support this feature. */ -#if __GNUC_PREREQ (4,5) || \ - __glibc_clang_has_extension (__attribute_deprecated_with_message__) -# define __attribute_deprecated_msg__(msg) \ - __attribute__ ((__deprecated__ (msg))) -#else -# define __attribute_deprecated_msg__(msg) __attribute_deprecated__ -#endif - -/* At some point during the gcc 2.8 development the `format_arg' attribute - for functions was introduced. We don't want to use it unconditionally - (although this would be possible) since it generates warnings. - If several `format_arg' attributes are given for the same function, in - gcc-3.0 and older, all but the last one are ignored. In newer gccs, - all designated arguments are considered. */ -#if __GNUC_PREREQ (2,8) -# define __attribute_format_arg__(x) __attribute__ ((__format_arg__ (x))) -#else -# define __attribute_format_arg__(x) /* Ignore */ -#endif - -/* At some point during the gcc 2.97 development the `strfmon' format - attribute for functions was introduced. We don't want to use it - unconditionally (although this would be possible) since it - generates warnings. */ -#if __GNUC_PREREQ (2,97) -# define __attribute_format_strfmon__(a,b) \ - __attribute__ ((__format__ (__strfmon__, a, b))) -#else -# define __attribute_format_strfmon__(a,b) /* Ignore */ -#endif - -/* The nonnull function attribute marks pointer parameters that - must not be NULL. Do not define __nonnull if it is already defined, - for portability when this file is used in Gnulib. */ -#ifndef __nonnull -# if __GNUC_PREREQ (3,3) -# define __nonnull(params) __attribute__ ((__nonnull__ params)) -# else -# define __nonnull(params) -# endif -#endif - -/* If fortification mode, we warn about unused results of certain - function calls which can lead to problems. */ -#if __GNUC_PREREQ (3,4) -# define __attribute_warn_unused_result__ \ - __attribute__ ((__warn_unused_result__)) -# if defined __USE_FORTIFY_LEVEL && __USE_FORTIFY_LEVEL > 0 -# define __wur __attribute_warn_unused_result__ -# endif -#else -# define __attribute_warn_unused_result__ /* empty */ -#endif -#ifndef __wur -# define __wur /* Ignore */ -#endif - -/* Forces a function to be always inlined. */ -#if __GNUC_PREREQ (3,2) -/* The Linux kernel defines __always_inline in stddef.h (283d7573), and - it conflicts with this definition. Therefore undefine it first to - allow either header to be included first. */ -# undef __always_inline -# define __always_inline __inline __attribute__ ((__always_inline__)) -#else -# undef __always_inline -# define __always_inline __inline -#endif - -/* Associate error messages with the source location of the call site rather - than with the source location inside the function. */ -#if __GNUC_PREREQ (4,3) -# define __attribute_artificial__ __attribute__ ((__artificial__)) -#else -# define __attribute_artificial__ /* Ignore */ -#endif - -/* GCC 4.3 and above with -std=c99 or -std=gnu99 implements ISO C99 - inline semantics, unless -fgnu89-inline is used. Using __GNUC_STDC_INLINE__ - or __GNUC_GNU_INLINE is not a good enough check for gcc because gcc versions - older than 4.3 may define these macros and still not guarantee GNU inlining - semantics. - - clang++ identifies itself as gcc-4.2, but has support for GNU inlining - semantics, that can be checked fot by using the __GNUC_STDC_INLINE_ and - __GNUC_GNU_INLINE__ macro definitions. */ -#if (!defined __cplusplus || __GNUC_PREREQ (4,3) \ - || (defined __clang__ && (defined __GNUC_STDC_INLINE__ \ - || defined __GNUC_GNU_INLINE__))) -# if defined __GNUC_STDC_INLINE__ || defined __cplusplus -# define __extern_inline extern __inline __attribute__ ((__gnu_inline__)) -# define __extern_always_inline \ - extern __always_inline __attribute__ ((__gnu_inline__)) -# else -# define __extern_inline extern __inline -# define __extern_always_inline extern __always_inline -# endif -#endif - -#ifdef __extern_always_inline -# define __fortify_function __extern_always_inline __attribute_artificial__ -#endif - -/* GCC 4.3 and above allow passing all anonymous arguments of an - __extern_always_inline function to some other vararg function. */ -#if __GNUC_PREREQ (4,3) -# define __va_arg_pack() __builtin_va_arg_pack () -# define __va_arg_pack_len() __builtin_va_arg_pack_len () -#endif - -/* It is possible to compile containing GCC extensions even if GCC is - run in pedantic mode if the uses are carefully marked using the - `__extension__' keyword. But this is not generally available before - version 2.8. */ -#if !__GNUC_PREREQ (2,8) -# define __extension__ /* Ignore */ -#endif - -/* __restrict is known in EGCS 1.2 and above. */ -#if !__GNUC_PREREQ (2,92) -# if defined __STDC_VERSION__ && __STDC_VERSION__ >= 199901L -# define __restrict restrict -# else -# define __restrict /* Ignore */ -# endif -#endif - -/* ISO C99 also allows to declare arrays as non-overlapping. The syntax is - array_name[restrict] - GCC 3.1 supports this. */ -#if __GNUC_PREREQ (3,1) && !defined __GNUG__ -# define __restrict_arr __restrict -#else -# ifdef __GNUC__ -# define __restrict_arr /* Not supported in old GCC. */ -# else -# if defined __STDC_VERSION__ && __STDC_VERSION__ >= 199901L -# define __restrict_arr restrict -# else -/* Some other non-C99 compiler. */ -# define __restrict_arr /* Not supported. */ -# endif -# endif -#endif - -#if __GNUC__ >= 3 -# define __glibc_unlikely(cond) __builtin_expect ((cond), 0) -# define __glibc_likely(cond) __builtin_expect ((cond), 1) -#else -# define __glibc_unlikely(cond) (cond) -# define __glibc_likely(cond) (cond) -#endif - -#ifdef __has_attribute -# define __glibc_has_attribute(attr) __has_attribute (attr) -#else -# define __glibc_has_attribute(attr) 0 -#endif - -#if (!defined _Noreturn \ - && (defined __STDC_VERSION__ ? __STDC_VERSION__ : 0) < 201112 \ - && !__GNUC_PREREQ (4,7)) -# if __GNUC_PREREQ (2,8) -# define _Noreturn __attribute__ ((__noreturn__)) -# else -# define _Noreturn -# endif -#endif - -#if __GNUC_PREREQ (8, 0) -/* Describes a char array whose address can safely be passed as the first - argument to strncpy and strncat, as the char array is not necessarily - a NUL-terminated string. */ -# define __attribute_nonstring__ __attribute__ ((__nonstring__)) -#else -# define __attribute_nonstring__ -#endif - -#if (!defined _Static_assert && !defined __cplusplus \ - && (defined __STDC_VERSION__ ? __STDC_VERSION__ : 0) < 201112 \ - && (!__GNUC_PREREQ (4, 6) || defined __STRICT_ANSI__)) -# define _Static_assert(expr, diagnostic) \ - extern int (*__Static_assert_function (void)) \ - [!!sizeof (struct { int __error_if_negative: (expr) ? 2 : -1; })] -#endif - -/* The #ifndef lets Gnulib avoid including these on non-glibc - platforms, where the includes typically do not exist. */ -#ifndef __WORDSIZE -# include -# include -#endif - -#if defined __LONG_DOUBLE_MATH_OPTIONAL && defined __NO_LONG_DOUBLE_MATH -# define __LDBL_COMPAT 1 -# ifdef __REDIRECT -# define __LDBL_REDIR1(name, proto, alias) __REDIRECT (name, proto, alias) -# define __LDBL_REDIR(name, proto) \ - __LDBL_REDIR1 (name, proto, __nldbl_##name) -# define __LDBL_REDIR1_NTH(name, proto, alias) __REDIRECT_NTH (name, proto, alias) -# define __LDBL_REDIR_NTH(name, proto) \ - __LDBL_REDIR1_NTH (name, proto, __nldbl_##name) -# define __LDBL_REDIR1_DECL(name, alias) \ - extern __typeof (name) name __asm (__ASMNAME (#alias)); -# define __LDBL_REDIR_DECL(name) \ - extern __typeof (name) name __asm (__ASMNAME ("__nldbl_" #name)); -# define __REDIRECT_LDBL(name, proto, alias) \ - __LDBL_REDIR1 (name, proto, __nldbl_##alias) -# define __REDIRECT_NTH_LDBL(name, proto, alias) \ - __LDBL_REDIR1_NTH (name, proto, __nldbl_##alias) -# endif -#endif -#if !defined __LDBL_COMPAT || !defined __REDIRECT -# define __LDBL_REDIR1(name, proto, alias) name proto -# define __LDBL_REDIR(name, proto) name proto -# define __LDBL_REDIR1_NTH(name, proto, alias) name proto __THROW -# define __LDBL_REDIR_NTH(name, proto) name proto __THROW -# define __LDBL_REDIR_DECL(name) -# ifdef __REDIRECT -# define __REDIRECT_LDBL(name, proto, alias) __REDIRECT (name, proto, alias) -# define __REDIRECT_NTH_LDBL(name, proto, alias) \ - __REDIRECT_NTH (name, proto, alias) -# endif -#endif - -/* __glibc_macro_warning (MESSAGE) issues warning MESSAGE. This is - intended for use in preprocessor macros. - - Note: MESSAGE must be a _single_ string; concatenation of string - literals is not supported. */ -#if __GNUC_PREREQ (4,8) || __glibc_clang_prereq (3,5) -# define __glibc_macro_warning1(message) _Pragma (#message) -# define __glibc_macro_warning(message) \ - __glibc_macro_warning1 (GCC warning message) -#else -# define __glibc_macro_warning(msg) -#endif - -/* Generic selection (ISO C11) is a C-only feature, available in GCC - since version 4.9. Previous versions do not provide generic - selection, even though they might set __STDC_VERSION__ to 201112L, - when in -std=c11 mode. Thus, we must check for !defined __GNUC__ - when testing __STDC_VERSION__ for generic selection support. - On the other hand, Clang also defines __GNUC__, so a clang-specific - check is required to enable the use of generic selection. */ -#if !defined __cplusplus \ - && (__GNUC_PREREQ (4, 9) \ - || __glibc_clang_has_extension (c_generic_selections) \ - || (!defined __GNUC__ && defined __STDC_VERSION__ \ - && __STDC_VERSION__ >= 201112L)) -# define __HAVE_GENERIC_SELECTION 1 -#else -# define __HAVE_GENERIC_SELECTION 0 -#endif - -#endif /* sys/cdefs.h */ diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/chdir-long.c b/thirdparty/grub-2.04/grub-core/lib/gnulib/chdir-long.c deleted file mode 100644 index febdf59d4..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/chdir-long.c +++ /dev/null @@ -1,264 +0,0 @@ -/* provide a chdir function that tries not to fail due to ENAMETOOLONG - Copyright (C) 2004-2019 Free Software Foundation, Inc. - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . */ - -/* written by Jim Meyering */ - -#include - -#include "chdir-long.h" - -#include -#include -#include -#include -#include -#include - -#include "assure.h" - -#ifndef PATH_MAX -# error "compile this file only if your system defines PATH_MAX" -#endif - -/* The results of openat() in this file are not leaked to any - single-threaded code that could use stdio. - FIXME - if the kernel ever adds support for multi-thread safety for - avoiding standard fds, then we should use openat_safer. */ - -struct cd_buf -{ - int fd; -}; - -static void -cdb_init (struct cd_buf *cdb) -{ - cdb->fd = AT_FDCWD; -} - -static int -cdb_fchdir (struct cd_buf const *cdb) -{ - return fchdir (cdb->fd); -} - -static void -cdb_free (struct cd_buf const *cdb) -{ - if (0 <= cdb->fd) - { - bool close_fail = close (cdb->fd); - assure (! close_fail); - } -} - -/* Given a file descriptor of an open directory (or AT_FDCWD), CDB->fd, - try to open the CDB->fd-relative directory, DIR. If the open succeeds, - update CDB->fd with the resulting descriptor, close the incoming file - descriptor, and return zero. Upon failure, return -1 and set errno. */ -static int -cdb_advance_fd (struct cd_buf *cdb, char const *dir) -{ - int new_fd = openat (cdb->fd, dir, - O_SEARCH | O_DIRECTORY | O_NOCTTY | O_NONBLOCK); - if (new_fd < 0) - return -1; - - cdb_free (cdb); - cdb->fd = new_fd; - - return 0; -} - -/* Return a pointer to the first non-slash in S. */ -static char * _GL_ATTRIBUTE_PURE -find_non_slash (char const *s) -{ - size_t n_slash = strspn (s, "/"); - return (char *) s + n_slash; -} - -/* This is a function much like chdir, but without the PATH_MAX limitation - on the length of the directory name. A significant difference is that - it must be able to modify (albeit only temporarily) the directory - name. It handles an arbitrarily long directory name by operating - on manageable portions of the name. On systems without the openat - syscall, this means changing the working directory to more and more - "distant" points along the long directory name and then restoring - the working directory. If any of those attempts to save or restore - the working directory fails, this function exits nonzero. - - Note that this function may still fail with errno == ENAMETOOLONG, but - only if the specified directory name contains a component that is long - enough to provoke such a failure all by itself (e.g. if the component - has length PATH_MAX or greater on systems that define PATH_MAX). */ - -int -chdir_long (char *dir) -{ - int e = chdir (dir); - if (e == 0 || errno != ENAMETOOLONG) - return e; - - { - size_t len = strlen (dir); - char *dir_end = dir + len; - struct cd_buf cdb; - size_t n_leading_slash; - - cdb_init (&cdb); - - /* If DIR is the empty string, then the chdir above - must have failed and set errno to ENOENT. */ - assure (0 < len); - assure (PATH_MAX <= len); - - /* Count leading slashes. */ - n_leading_slash = strspn (dir, "/"); - - /* Handle any leading slashes as well as any name that matches - the regular expression, m!^//hostname[/]*! . Handling this - prefix separately usually results in a single additional - cdb_advance_fd call, but it's worthwhile, since it makes the - code in the following loop cleaner. */ - if (n_leading_slash == 2) - { - int err; - /* Find next slash. - We already know that dir[2] is neither a slash nor '\0'. */ - char *slash = memchr (dir + 3, '/', dir_end - (dir + 3)); - if (slash == NULL) - { - errno = ENAMETOOLONG; - return -1; - } - *slash = '\0'; - err = cdb_advance_fd (&cdb, dir); - *slash = '/'; - if (err != 0) - goto Fail; - dir = find_non_slash (slash + 1); - } - else if (n_leading_slash) - { - if (cdb_advance_fd (&cdb, "/") != 0) - goto Fail; - dir += n_leading_slash; - } - - assure (*dir != '/'); - assure (dir <= dir_end); - - while (PATH_MAX <= dir_end - dir) - { - int err; - /* Find a slash that is PATH_MAX or fewer bytes away from dir. - I.e. see if there is a slash that will give us a name of - length PATH_MAX-1 or less. */ - char *slash = memrchr (dir, '/', PATH_MAX); - if (slash == NULL) - { - errno = ENAMETOOLONG; - return -1; - } - - *slash = '\0'; - assure (slash - dir < PATH_MAX); - err = cdb_advance_fd (&cdb, dir); - *slash = '/'; - if (err != 0) - goto Fail; - - dir = find_non_slash (slash + 1); - } - - if (dir < dir_end) - { - if (cdb_advance_fd (&cdb, dir) != 0) - goto Fail; - } - - if (cdb_fchdir (&cdb) != 0) - goto Fail; - - cdb_free (&cdb); - return 0; - - Fail: - { - int saved_errno = errno; - cdb_free (&cdb); - errno = saved_errno; - return -1; - } - } -} - -#if TEST_CHDIR - -# include "closeout.h" -# include "error.h" - -int -main (int argc, char *argv[]) -{ - char *line = NULL; - size_t n = 0; - int len; - - atexit (close_stdout); - - len = getline (&line, &n, stdin); - if (len < 0) - { - int saved_errno = errno; - if (feof (stdin)) - exit (0); - - error (EXIT_FAILURE, saved_errno, - "reading standard input"); - } - else if (len == 0) - exit (0); - - if (line[len-1] == '\n') - line[len-1] = '\0'; - - if (chdir_long (line) != 0) - error (EXIT_FAILURE, errno, - "chdir_long failed: %s", line); - - if (argc <= 1) - { - /* Using 'pwd' here makes sense only if it is a robust implementation, - like the one in coreutils after the 2004-04-19 changes. */ - char const *cmd = "pwd"; - execlp (cmd, (char *) NULL); - error (EXIT_FAILURE, errno, "%s", cmd); - } - - fclose (stdin); - fclose (stderr); - - exit (EXIT_SUCCESS); -} -#endif - -/* -Local Variables: -compile-command: "gcc -DTEST_CHDIR=1 -g -O -W -Wall chdir-long.c libcoreutils.a" -End: -*/ diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/chdir-long.h b/thirdparty/grub-2.04/grub-core/lib/gnulib/chdir-long.h deleted file mode 100644 index 43259d1b2..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/chdir-long.h +++ /dev/null @@ -1,30 +0,0 @@ -/* provide a chdir function that tries not to fail due to ENAMETOOLONG - Copyright (C) 2004-2005, 2009-2019 Free Software Foundation, Inc. - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . */ - -/* Written by Jim Meyering. */ - -#include -#include - -#include "pathmax.h" - -/* On systems without PATH_MAX, presume that chdir accepts - arbitrarily long directory names. */ -#ifndef PATH_MAX -# define chdir_long(Dir) chdir (Dir) -#else -int chdir_long (char *dir); -#endif diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/cloexec.c b/thirdparty/grub-2.04/grub-core/lib/gnulib/cloexec.c deleted file mode 100644 index db425766a..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/cloexec.c +++ /dev/null @@ -1,83 +0,0 @@ -/* cloexec.c - set or clear the close-on-exec descriptor flag - - Copyright (C) 1991, 2004-2006, 2009-2019 Free Software Foundation, Inc. - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . - - The code is taken from glibc/manual/llio.texi */ - -#include - -#include "cloexec.h" - -#include -#include -#include - -/* Set the 'FD_CLOEXEC' flag of DESC if VALUE is true, - or clear the flag if VALUE is false. - Return 0 on success, or -1 on error with 'errno' set. - - Note that on MingW, this function does NOT protect DESC from being - inherited into spawned children. Instead, either use dup_cloexec - followed by closing the original DESC, or use interfaces such as - open or pipe2 that accept flags like O_CLOEXEC to create DESC - non-inheritable in the first place. */ - -int -set_cloexec_flag (int desc, bool value) -{ -#ifdef F_SETFD - - int flags = fcntl (desc, F_GETFD, 0); - - if (0 <= flags) - { - int newflags = (value ? flags | FD_CLOEXEC : flags & ~FD_CLOEXEC); - - if (flags == newflags - || fcntl (desc, F_SETFD, newflags) != -1) - return 0; - } - - return -1; - -#else /* !F_SETFD */ - - /* Use dup2 to reject invalid file descriptors; the cloexec flag - will be unaffected. */ - if (desc < 0) - { - errno = EBADF; - return -1; - } - if (dup2 (desc, desc) < 0) - /* errno is EBADF here. */ - return -1; - - /* There is nothing we can do on this kind of platform. Punt. */ - return 0; -#endif /* !F_SETFD */ -} - - -/* Duplicates a file handle FD, while marking the copy to be closed - prior to exec or spawn. Returns -1 and sets errno if FD could not - be duplicated. */ - -int -dup_cloexec (int fd) -{ - return fcntl (fd, F_DUPFD_CLOEXEC, 0); -} diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/cloexec.h b/thirdparty/grub-2.04/grub-core/lib/gnulib/cloexec.h deleted file mode 100644 index 06ad945d8..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/cloexec.h +++ /dev/null @@ -1,38 +0,0 @@ -/* cloexec.c - set or clear the close-on-exec descriptor flag - - Copyright (C) 2004, 2009-2019 Free Software Foundation, Inc. - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . - -*/ - -#include - -/* Set the 'FD_CLOEXEC' flag of DESC if VALUE is true, - or clear the flag if VALUE is false. - Return 0 on success, or -1 on error with 'errno' set. - - Note that on MingW, this function does NOT protect DESC from being - inherited into spawned children. Instead, either use dup_cloexec - followed by closing the original DESC, or use interfaces such as - open or pipe2 that accept flags like O_CLOEXEC to create DESC - non-inheritable in the first place. */ - -int set_cloexec_flag (int desc, bool value); - -/* Duplicates a file handle FD, while marking the copy to be closed - prior to exec or spawn. Returns -1 and sets errno if FD could not - be duplicated. */ - -int dup_cloexec (int fd); diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/close.c b/thirdparty/grub-2.04/grub-core/lib/gnulib/close.c deleted file mode 100644 index 40ce845bc..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/close.c +++ /dev/null @@ -1,71 +0,0 @@ -/* close replacement. - Copyright (C) 2008-2019 Free Software Foundation, Inc. - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . */ - -#include - -/* Specification. */ -#include - -#include - -#include "fd-hook.h" -#if HAVE_MSVC_INVALID_PARAMETER_HANDLER -# include "msvc-inval.h" -#endif - -#undef close - -#if HAVE_MSVC_INVALID_PARAMETER_HANDLER -static int -close_nothrow (int fd) -{ - int result; - - TRY_MSVC_INVAL - { - result = close (fd); - } - CATCH_MSVC_INVAL - { - result = -1; - errno = EBADF; - } - DONE_MSVC_INVAL; - - return result; -} -#else -# define close_nothrow close -#endif - -/* Override close() to call into other gnulib modules. */ - -int -rpl_close (int fd) -{ -#if WINDOWS_SOCKETS - int retval = execute_all_close_hooks (close_nothrow, fd); -#else - int retval = close_nothrow (fd); -#endif - -#if REPLACE_FCHDIR - if (retval >= 0) - _gl_unregister_fd (fd); -#endif - - return retval; -} diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/dirent.in.h b/thirdparty/grub-2.04/grub-core/lib/gnulib/dirent.in.h deleted file mode 100644 index a3c8eb341..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/dirent.in.h +++ /dev/null @@ -1,267 +0,0 @@ -/* A GNU-like . - Copyright (C) 2006-2019 Free Software Foundation, Inc. - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . */ - -#ifndef _@GUARD_PREFIX@_DIRENT_H - -#if __GNUC__ >= 3 -@PRAGMA_SYSTEM_HEADER@ -#endif -@PRAGMA_COLUMNS@ - -/* The include_next requires a split double-inclusion guard. */ -#if @HAVE_DIRENT_H@ -# @INCLUDE_NEXT@ @NEXT_DIRENT_H@ -#endif - -#ifndef _@GUARD_PREFIX@_DIRENT_H -#define _@GUARD_PREFIX@_DIRENT_H - -/* Get ino_t. Needed on some systems, including glibc 2.8. */ -#include - -#if !@HAVE_DIRENT_H@ -/* Define types DIR and 'struct dirent'. */ -# if !GNULIB_defined_struct_dirent -struct dirent -{ - char d_type; - char d_name[1]; -}; -/* Possible values for 'd_type'. */ -# define DT_UNKNOWN 0 -# define DT_FIFO 1 /* FIFO */ -# define DT_CHR 2 /* character device */ -# define DT_DIR 4 /* directory */ -# define DT_BLK 6 /* block device */ -# define DT_REG 8 /* regular file */ -# define DT_LNK 10 /* symbolic link */ -# define DT_SOCK 12 /* socket */ -# define DT_WHT 14 /* whiteout */ -typedef struct gl_directory DIR; -# define GNULIB_defined_struct_dirent 1 -# endif -#endif - -/* The __attribute__ feature is available in gcc versions 2.5 and later. - The attribute __pure__ was added in gcc 2.96. */ -#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 96) -# define _GL_ATTRIBUTE_PURE __attribute__ ((__pure__)) -#else -# define _GL_ATTRIBUTE_PURE /* empty */ -#endif - -/* The definitions of _GL_FUNCDECL_RPL etc. are copied here. */ - -/* The definition of _GL_ARG_NONNULL is copied here. */ - -/* The definition of _GL_WARN_ON_USE is copied here. */ - - -/* Declare overridden functions. */ - -#if @GNULIB_OPENDIR@ -# if @REPLACE_OPENDIR@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# undef opendir -# define opendir rpl_opendir -# define GNULIB_defined_opendir 1 -# endif -_GL_FUNCDECL_RPL (opendir, DIR *, (const char *dir_name) _GL_ARG_NONNULL ((1))); -_GL_CXXALIAS_RPL (opendir, DIR *, (const char *dir_name)); -# else -# if !@HAVE_OPENDIR@ -_GL_FUNCDECL_SYS (opendir, DIR *, (const char *dir_name) _GL_ARG_NONNULL ((1))); -# endif -_GL_CXXALIAS_SYS (opendir, DIR *, (const char *dir_name)); -# endif -_GL_CXXALIASWARN (opendir); -#elif defined GNULIB_POSIXCHECK -# undef opendir -# if HAVE_RAW_DECL_OPENDIR -_GL_WARN_ON_USE (opendir, "opendir is not portable - " - "use gnulib module opendir for portability"); -# endif -#endif - -#if @GNULIB_READDIR@ -# if !@HAVE_READDIR@ -_GL_FUNCDECL_SYS (readdir, struct dirent *, (DIR *dirp) _GL_ARG_NONNULL ((1))); -# endif -_GL_CXXALIAS_SYS (readdir, struct dirent *, (DIR *dirp)); -_GL_CXXALIASWARN (readdir); -#elif defined GNULIB_POSIXCHECK -# undef readdir -# if HAVE_RAW_DECL_READDIR -_GL_WARN_ON_USE (readdir, "readdir is not portable - " - "use gnulib module readdir for portability"); -# endif -#endif - -#if @GNULIB_REWINDDIR@ -# if !@HAVE_REWINDDIR@ -_GL_FUNCDECL_SYS (rewinddir, void, (DIR *dirp) _GL_ARG_NONNULL ((1))); -# endif -_GL_CXXALIAS_SYS (rewinddir, void, (DIR *dirp)); -_GL_CXXALIASWARN (rewinddir); -#elif defined GNULIB_POSIXCHECK -# undef rewinddir -# if HAVE_RAW_DECL_REWINDDIR -_GL_WARN_ON_USE (rewinddir, "rewinddir is not portable - " - "use gnulib module rewinddir for portability"); -# endif -#endif - -#if @GNULIB_CLOSEDIR@ -# if @REPLACE_CLOSEDIR@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# undef closedir -# define closedir rpl_closedir -# define GNULIB_defined_closedir 1 -# endif -_GL_FUNCDECL_RPL (closedir, int, (DIR *dirp) _GL_ARG_NONNULL ((1))); -_GL_CXXALIAS_RPL (closedir, int, (DIR *dirp)); -# else -# if !@HAVE_CLOSEDIR@ -_GL_FUNCDECL_SYS (closedir, int, (DIR *dirp) _GL_ARG_NONNULL ((1))); -# endif -_GL_CXXALIAS_SYS (closedir, int, (DIR *dirp)); -# endif -_GL_CXXALIASWARN (closedir); -#elif defined GNULIB_POSIXCHECK -# undef closedir -# if HAVE_RAW_DECL_CLOSEDIR -_GL_WARN_ON_USE (closedir, "closedir is not portable - " - "use gnulib module closedir for portability"); -# endif -#endif - -#if @GNULIB_DIRFD@ -/* Return the file descriptor associated with the given directory stream, - or -1 if none exists. */ -# if @REPLACE_DIRFD@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# undef dirfd -# define dirfd rpl_dirfd -# endif -_GL_FUNCDECL_RPL (dirfd, int, (DIR *) _GL_ARG_NONNULL ((1))); -_GL_CXXALIAS_RPL (dirfd, int, (DIR *)); - -# ifdef __KLIBC__ -/* Gnulib internal hooks needed to maintain the dirfd metadata. */ -_GL_EXTERN_C int _gl_register_dirp_fd (int fd, DIR *dirp) - _GL_ARG_NONNULL ((2)); -_GL_EXTERN_C void _gl_unregister_dirp_fd (int fd); -# endif -# else -# if defined __cplusplus && defined GNULIB_NAMESPACE && defined dirfd - /* dirfd is defined as a macro and not as a function. - Turn it into a function and get rid of the macro. */ -static inline int (dirfd) (DIR *dp) { return dirfd (dp); } -# undef dirfd -# endif -# if !(@HAVE_DECL_DIRFD@ || defined dirfd) -_GL_FUNCDECL_SYS (dirfd, int, (DIR *) _GL_ARG_NONNULL ((1))); -# endif -_GL_CXXALIAS_SYS (dirfd, int, (DIR *)); -# endif -_GL_CXXALIASWARN (dirfd); -#elif defined GNULIB_POSIXCHECK -# undef dirfd -# if HAVE_RAW_DECL_DIRFD -_GL_WARN_ON_USE (dirfd, "dirfd is unportable - " - "use gnulib module dirfd for portability"); -# endif -#endif - -#if @GNULIB_FDOPENDIR@ -/* Open a directory stream visiting the given directory file - descriptor. Return NULL and set errno if fd is not visiting a - directory. On success, this function consumes fd (it will be - implicitly closed either by this function or by a subsequent - closedir). */ -# if @REPLACE_FDOPENDIR@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# undef fdopendir -# define fdopendir rpl_fdopendir -# endif -_GL_FUNCDECL_RPL (fdopendir, DIR *, (int fd)); -_GL_CXXALIAS_RPL (fdopendir, DIR *, (int fd)); -# else -# if !@HAVE_FDOPENDIR@ || !@HAVE_DECL_FDOPENDIR@ -_GL_FUNCDECL_SYS (fdopendir, DIR *, (int fd)); -# endif -_GL_CXXALIAS_SYS (fdopendir, DIR *, (int fd)); -# endif -_GL_CXXALIASWARN (fdopendir); -#elif defined GNULIB_POSIXCHECK -# undef fdopendir -# if HAVE_RAW_DECL_FDOPENDIR -_GL_WARN_ON_USE (fdopendir, "fdopendir is unportable - " - "use gnulib module fdopendir for portability"); -# endif -#endif - -#if @GNULIB_SCANDIR@ -/* Scan the directory DIR, calling FILTER on each directory entry. - Entries for which FILTER returns nonzero are individually malloc'd, - sorted using qsort with CMP, and collected in a malloc'd array in - *NAMELIST. Returns the number of entries selected, or -1 on error. */ -# if !@HAVE_SCANDIR@ -_GL_FUNCDECL_SYS (scandir, int, - (const char *dir, struct dirent ***namelist, - int (*filter) (const struct dirent *), - int (*cmp) (const struct dirent **, const struct dirent **)) - _GL_ARG_NONNULL ((1, 2, 4))); -# endif -/* Need to cast, because on glibc systems, the fourth parameter is - int (*cmp) (const void *, const void *). */ -_GL_CXXALIAS_SYS_CAST (scandir, int, - (const char *dir, struct dirent ***namelist, - int (*filter) (const struct dirent *), - int (*cmp) (const struct dirent **, const struct dirent **))); -_GL_CXXALIASWARN (scandir); -#elif defined GNULIB_POSIXCHECK -# undef scandir -# if HAVE_RAW_DECL_SCANDIR -_GL_WARN_ON_USE (scandir, "scandir is unportable - " - "use gnulib module scandir for portability"); -# endif -#endif - -#if @GNULIB_ALPHASORT@ -/* Compare two 'struct dirent' entries alphabetically. */ -# if !@HAVE_ALPHASORT@ -_GL_FUNCDECL_SYS (alphasort, int, - (const struct dirent **, const struct dirent **) - _GL_ATTRIBUTE_PURE - _GL_ARG_NONNULL ((1, 2))); -# endif -/* Need to cast, because on glibc systems, the parameters are - (const void *, const void *). */ -_GL_CXXALIAS_SYS_CAST (alphasort, int, - (const struct dirent **, const struct dirent **)); -_GL_CXXALIASWARN (alphasort); -#elif defined GNULIB_POSIXCHECK -# undef alphasort -# if HAVE_RAW_DECL_ALPHASORT -_GL_WARN_ON_USE (alphasort, "alphasort is unportable - " - "use gnulib module alphasort for portability"); -# endif -#endif - - -#endif /* _@GUARD_PREFIX@_DIRENT_H */ -#endif /* _@GUARD_PREFIX@_DIRENT_H */ diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/dirfd.c b/thirdparty/grub-2.04/grub-core/lib/gnulib/dirfd.c deleted file mode 100644 index bc858fd09..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/dirfd.c +++ /dev/null @@ -1,98 +0,0 @@ -/* dirfd.c -- return the file descriptor associated with an open DIR* - - Copyright (C) 2001, 2006, 2008-2019 Free Software Foundation, Inc. - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . */ - -/* Written by Jim Meyering. */ - -#include - -#include -#include - -#ifdef __KLIBC__ -# include -# include - -static struct dirp_fd_list -{ - DIR *dirp; - int fd; - struct dirp_fd_list *next; -} *dirp_fd_start = NULL; - -/* Register fd associated with dirp to dirp_fd_list. */ -int -_gl_register_dirp_fd (int fd, DIR *dirp) -{ - struct dirp_fd_list *new_dirp_fd = malloc (sizeof *new_dirp_fd); - if (!new_dirp_fd) - return -1; - - new_dirp_fd->dirp = dirp; - new_dirp_fd->fd = fd; - new_dirp_fd->next = dirp_fd_start; - - dirp_fd_start = new_dirp_fd; - - return 0; -} - -/* Unregister fd from dirp_fd_list with closing it */ -void -_gl_unregister_dirp_fd (int fd) -{ - struct dirp_fd_list *dirp_fd; - struct dirp_fd_list *dirp_fd_prev; - - for (dirp_fd_prev = NULL, dirp_fd = dirp_fd_start; dirp_fd; - dirp_fd_prev = dirp_fd, dirp_fd = dirp_fd->next) - { - if (dirp_fd->fd == fd) - { - if (dirp_fd_prev) - dirp_fd_prev->next = dirp_fd->next; - else /* dirp_fd == dirp_fd_start */ - dirp_fd_start = dirp_fd_start->next; - - close (fd); - free (dirp_fd); - break; - } - } -} -#endif - -int -dirfd (DIR *dir_p) -{ - int fd = DIR_TO_FD (dir_p); - if (fd == -1) -#ifndef __KLIBC__ - errno = ENOTSUP; -#else - { - struct dirp_fd_list *dirp_fd; - - for (dirp_fd = dirp_fd_start; dirp_fd; dirp_fd = dirp_fd->next) - if (dirp_fd->dirp == dir_p) - return dirp_fd->fd; - - errno = EINVAL; - } -#endif - - return fd; -} diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/dirname-lgpl.c b/thirdparty/grub-2.04/grub-core/lib/gnulib/dirname-lgpl.c deleted file mode 100644 index 7cf89d8cf..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/dirname-lgpl.c +++ /dev/null @@ -1,86 +0,0 @@ -/* dirname.c -- return all but the last element in a file name - - Copyright (C) 1990, 1998, 2000-2001, 2003-2006, 2009-2019 Free Software - Foundation, Inc. - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . */ - -#include - -#include "dirname.h" - -#include -#include - -/* Return the length of the prefix of FILE that will be used by - dir_name. If FILE is in the working directory, this returns zero - even though 'dir_name (FILE)' will return ".". Works properly even - if there are trailing slashes (by effectively ignoring them). */ - -size_t -dir_len (char const *file) -{ - size_t prefix_length = FILE_SYSTEM_PREFIX_LEN (file); - size_t length; - - /* Advance prefix_length beyond important leading slashes. */ - prefix_length += (prefix_length != 0 - ? (FILE_SYSTEM_DRIVE_PREFIX_CAN_BE_RELATIVE - && ISSLASH (file[prefix_length])) - : (ISSLASH (file[0]) - ? ((DOUBLE_SLASH_IS_DISTINCT_ROOT - && ISSLASH (file[1]) && ! ISSLASH (file[2]) - ? 2 : 1)) - : 0)); - - /* Strip the basename and any redundant slashes before it. */ - for (length = last_component (file) - file; - prefix_length < length; length--) - if (! ISSLASH (file[length - 1])) - break; - return length; -} - - -/* In general, we can't use the builtin 'dirname' function if available, - since it has different meanings in different environments. - In some environments the builtin 'dirname' modifies its argument. - - Return the leading directories part of FILE, allocated with malloc. - Works properly even if there are trailing slashes (by effectively - ignoring them). Return NULL on failure. - - If lstat (FILE) would succeed, then { chdir (dir_name (FILE)); - lstat (base_name (FILE)); } will access the same file. Likewise, - if the sequence { chdir (dir_name (FILE)); - rename (base_name (FILE), "foo"); } succeeds, you have renamed FILE - to "foo" in the same directory FILE was in. */ - -char * -mdir_name (char const *file) -{ - size_t length = dir_len (file); - bool append_dot = (length == 0 - || (FILE_SYSTEM_DRIVE_PREFIX_CAN_BE_RELATIVE - && length == FILE_SYSTEM_PREFIX_LEN (file) - && file[2] != '\0' && ! ISSLASH (file[2]))); - char *dir = malloc (length + append_dot + 1); - if (!dir) - return NULL; - memcpy (dir, file, length); - if (append_dot) - dir[length++] = '.'; - dir[length] = '\0'; - return dir; -} diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/dirname.h b/thirdparty/grub-2.04/grub-core/lib/gnulib/dirname.h deleted file mode 100644 index 579165947..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/dirname.h +++ /dev/null @@ -1,54 +0,0 @@ -/* Take file names apart into directory and base names. - - Copyright (C) 1998, 2001, 2003-2006, 2009-2019 Free Software Foundation, - Inc. - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . */ - -#ifndef DIRNAME_H_ -# define DIRNAME_H_ 1 - -# include -# include -# include "dosname.h" - -# ifndef DIRECTORY_SEPARATOR -# define DIRECTORY_SEPARATOR '/' -# endif - -# ifndef DOUBLE_SLASH_IS_DISTINCT_ROOT -# define DOUBLE_SLASH_IS_DISTINCT_ROOT 0 -# endif - -#ifdef __cplusplus -extern "C" { -#endif - -# if GNULIB_DIRNAME -char *base_name (char const *file) _GL_ATTRIBUTE_MALLOC; -char *dir_name (char const *file); -# endif - -char *mdir_name (char const *file); -size_t base_len (char const *file) _GL_ATTRIBUTE_PURE; -size_t dir_len (char const *file) _GL_ATTRIBUTE_PURE; -char *last_component (char const *file) _GL_ATTRIBUTE_PURE; - -bool strip_trailing_slashes (char *file); - -#ifdef __cplusplus -} /* extern "C" */ -#endif - -#endif /* not DIRNAME_H_ */ diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/dosname.h b/thirdparty/grub-2.04/grub-core/lib/gnulib/dosname.h deleted file mode 100644 index c0ab6848a..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/dosname.h +++ /dev/null @@ -1,52 +0,0 @@ -/* File names on MS-DOS/Windows systems. - - Copyright (C) 2000-2001, 2004-2006, 2009-2019 Free Software Foundation, Inc. - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . - - From Paul Eggert and Jim Meyering. */ - -#ifndef _DOSNAME_H -#define _DOSNAME_H - -#if (defined _WIN32 || defined __CYGWIN__ \ - || defined __EMX__ || defined __MSDOS__ || defined __DJGPP__) - /* This internal macro assumes ASCII, but all hosts that support drive - letters use ASCII. */ -# define _IS_DRIVE_LETTER(C) (((unsigned int) (C) | ('a' - 'A')) - 'a' \ - <= 'z' - 'a') -# define FILE_SYSTEM_PREFIX_LEN(Filename) \ - (_IS_DRIVE_LETTER ((Filename)[0]) && (Filename)[1] == ':' ? 2 : 0) -# ifndef __CYGWIN__ -# define FILE_SYSTEM_DRIVE_PREFIX_CAN_BE_RELATIVE 1 -# endif -# define ISSLASH(C) ((C) == '/' || (C) == '\\') -#else -# define FILE_SYSTEM_PREFIX_LEN(Filename) 0 -# define ISSLASH(C) ((C) == '/') -#endif - -#ifndef FILE_SYSTEM_DRIVE_PREFIX_CAN_BE_RELATIVE -# define FILE_SYSTEM_DRIVE_PREFIX_CAN_BE_RELATIVE 0 -#endif - -#if FILE_SYSTEM_DRIVE_PREFIX_CAN_BE_RELATIVE -# define IS_ABSOLUTE_FILE_NAME(F) ISSLASH ((F)[FILE_SYSTEM_PREFIX_LEN (F)]) -# else -# define IS_ABSOLUTE_FILE_NAME(F) \ - (ISSLASH ((F)[0]) || FILE_SYSTEM_PREFIX_LEN (F) != 0) -#endif -#define IS_RELATIVE_FILE_NAME(F) (! IS_ABSOLUTE_FILE_NAME (F)) - -#endif /* DOSNAME_H_ */ diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/dup-safer-flag.c b/thirdparty/grub-2.04/grub-core/lib/gnulib/dup-safer-flag.c deleted file mode 100644 index 485f7411b..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/dup-safer-flag.c +++ /dev/null @@ -1,38 +0,0 @@ -/* Duplicate a file descriptor result, avoiding clobbering - STD{IN,OUT,ERR}_FILENO, with specific flags. - - Copyright (C) 2001, 2004-2006, 2009-2019 Free Software Foundation, Inc. - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . */ - -/* Written by Paul Eggert and Eric Blake. */ - -#include - -/* Specification. */ -#include "unistd-safer.h" - -#include -#include - -/* Like dup, but do not return STDIN_FILENO, STDOUT_FILENO, or - STDERR_FILENO. If FLAG contains O_CLOEXEC, behave like - fcntl(F_DUPFD_CLOEXEC) rather than fcntl(F_DUPFD). */ - -int -dup_safer_flag (int fd, int flag) -{ - return fcntl (fd, (flag & O_CLOEXEC) ? F_DUPFD_CLOEXEC : F_DUPFD, - STDERR_FILENO + 1); -} diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/dup-safer.c b/thirdparty/grub-2.04/grub-core/lib/gnulib/dup-safer.c deleted file mode 100644 index c0c5f2a91..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/dup-safer.c +++ /dev/null @@ -1,34 +0,0 @@ -/* Invoke dup, but avoid some glitches. - - Copyright (C) 2001, 2004-2006, 2009-2019 Free Software Foundation, Inc. - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . */ - -/* Written by Paul Eggert. */ - -#include - -#include "unistd-safer.h" - -#include -#include - -/* Like dup, but do not return STDIN_FILENO, STDOUT_FILENO, or - STDERR_FILENO. */ - -int -dup_safer (int fd) -{ - return fcntl (fd, F_DUPFD, STDERR_FILENO + 1); -} diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/dup2.c b/thirdparty/grub-2.04/grub-core/lib/gnulib/dup2.c deleted file mode 100644 index d3aafa458..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/dup2.c +++ /dev/null @@ -1,235 +0,0 @@ -/* Duplicate an open file descriptor to a specified file descriptor. - - Copyright (C) 1999, 2004-2007, 2009-2019 Free Software Foundation, Inc. - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . */ - -/* written by Paul Eggert */ - -#include - -/* Specification. */ -#include - -#include -#include - -#if HAVE_DUP2 - -# undef dup2 - -# if defined _WIN32 && ! defined __CYGWIN__ - -/* Get declarations of the native Windows API functions. */ -# define WIN32_LEAN_AND_MEAN -# include - -# if HAVE_MSVC_INVALID_PARAMETER_HANDLER -# include "msvc-inval.h" -# endif - -/* Get _get_osfhandle. */ -# if GNULIB_MSVC_NOTHROW -# include "msvc-nothrow.h" -# else -# include -# endif - -# if HAVE_MSVC_INVALID_PARAMETER_HANDLER -static int -dup2_nothrow (int fd, int desired_fd) -{ - int result; - - TRY_MSVC_INVAL - { - result = dup2 (fd, desired_fd); - } - CATCH_MSVC_INVAL - { - errno = EBADF; - result = -1; - } - DONE_MSVC_INVAL; - - return result; -} -# else -# define dup2_nothrow dup2 -# endif - -static int -ms_windows_dup2 (int fd, int desired_fd) -{ - int result; - - /* If fd is closed, mingw hangs on dup2 (fd, fd). If fd is open, - dup2 (fd, fd) returns 0, but all further attempts to use fd in - future dup2 calls will hang. */ - if (fd == desired_fd) - { - if ((HANDLE) _get_osfhandle (fd) == INVALID_HANDLE_VALUE) - { - errno = EBADF; - return -1; - } - return fd; - } - - /* Wine 1.0.1 return 0 when desired_fd is negative but not -1: - https://bugs.winehq.org/show_bug.cgi?id=21289 */ - if (desired_fd < 0) - { - errno = EBADF; - return -1; - } - - result = dup2_nothrow (fd, desired_fd); - - if (result == 0) - result = desired_fd; - - return result; -} - -# define dup2 ms_windows_dup2 - -# elif defined __KLIBC__ - -# include - -static int -klibc_dup2dirfd (int fd, int desired_fd) -{ - int tempfd; - int dupfd; - - tempfd = open ("NUL", O_RDONLY); - if (tempfd == -1) - return -1; - - if (tempfd == desired_fd) - { - close (tempfd); - - char path[_MAX_PATH]; - if (__libc_Back_ioFHToPath (fd, path, sizeof (path))) - return -1; - - return open(path, O_RDONLY); - } - - dupfd = klibc_dup2dirfd (fd, desired_fd); - - close (tempfd); - - return dupfd; -} - -static int -klibc_dup2 (int fd, int desired_fd) -{ - int dupfd; - struct stat sbuf; - - dupfd = dup2 (fd, desired_fd); - if (dupfd == -1 && errno == ENOTSUP \ - && !fstat (fd, &sbuf) && S_ISDIR (sbuf.st_mode)) - { - close (desired_fd); - - return klibc_dup2dirfd (fd, desired_fd); - } - - return dupfd; -} - -# define dup2 klibc_dup2 -# endif - -int -rpl_dup2 (int fd, int desired_fd) -{ - int result; - -# ifdef F_GETFL - /* On Linux kernels 2.6.26-2.6.29, dup2 (fd, fd) returns -EBADF. - On Cygwin 1.5.x, dup2 (1, 1) returns 0. - On Cygwin 1.7.17, dup2 (1, -1) dumps core. - On Cygwin 1.7.25, dup2 (1, 256) can dump core. - On Haiku, dup2 (fd, fd) mistakenly clears FD_CLOEXEC. */ -# if HAVE_SETDTABLESIZE - setdtablesize (desired_fd + 1); -# endif - if (desired_fd < 0) - fd = desired_fd; - if (fd == desired_fd) - return fcntl (fd, F_GETFL) == -1 ? -1 : fd; -# endif - - result = dup2 (fd, desired_fd); - - /* Correct an errno value on FreeBSD 6.1 and Cygwin 1.5.x. */ - if (result == -1 && errno == EMFILE) - errno = EBADF; -# if REPLACE_FCHDIR - if (fd != desired_fd && result != -1) - result = _gl_register_dup (fd, result); -# endif - return result; -} - -#else /* !HAVE_DUP2 */ - -/* On older platforms, dup2 did not exist. */ - -# ifndef F_DUPFD -static int -dupfd (int fd, int desired_fd) -{ - int duplicated_fd = dup (fd); - if (duplicated_fd < 0 || duplicated_fd == desired_fd) - return duplicated_fd; - else - { - int r = dupfd (fd, desired_fd); - int e = errno; - close (duplicated_fd); - errno = e; - return r; - } -} -# endif - -int -dup2 (int fd, int desired_fd) -{ - int result = fcntl (fd, F_GETFL) < 0 ? -1 : fd; - if (result == -1 || fd == desired_fd) - return result; - close (desired_fd); -# ifdef F_DUPFD - result = fcntl (fd, F_DUPFD, desired_fd); -# if REPLACE_FCHDIR - if (0 <= result) - result = _gl_register_dup (fd, result); -# endif -# else - result = dupfd (fd, desired_fd); -# endif - if (result == -1 && (errno == EMFILE || errno == EINVAL)) - errno = EBADF; - return result; -} -#endif /* !HAVE_DUP2 */ diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/errno.in.h b/thirdparty/grub-2.04/grub-core/lib/gnulib/errno.in.h deleted file mode 100644 index 3bd27f1cc..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/errno.in.h +++ /dev/null @@ -1,279 +0,0 @@ -/* A POSIX-like . - - Copyright (C) 2008-2019 Free Software Foundation, Inc. - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3, or (at your option) - any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, see . */ - -#ifndef _@GUARD_PREFIX@_ERRNO_H - -#if __GNUC__ >= 3 -@PRAGMA_SYSTEM_HEADER@ -#endif -@PRAGMA_COLUMNS@ - -/* The include_next requires a split double-inclusion guard. */ -#@INCLUDE_NEXT@ @NEXT_ERRNO_H@ - -#ifndef _@GUARD_PREFIX@_ERRNO_H -#define _@GUARD_PREFIX@_ERRNO_H - - -/* On native Windows platforms, many macros are not defined. */ -# if defined _WIN32 && ! defined __CYGWIN__ - -/* These are the same values as defined by MSVC 10, for interoperability. */ - -# ifndef ENOMSG -# define ENOMSG 122 -# define GNULIB_defined_ENOMSG 1 -# endif - -# ifndef EIDRM -# define EIDRM 111 -# define GNULIB_defined_EIDRM 1 -# endif - -# ifndef ENOLINK -# define ENOLINK 121 -# define GNULIB_defined_ENOLINK 1 -# endif - -# ifndef EPROTO -# define EPROTO 134 -# define GNULIB_defined_EPROTO 1 -# endif - -# ifndef EBADMSG -# define EBADMSG 104 -# define GNULIB_defined_EBADMSG 1 -# endif - -# ifndef EOVERFLOW -# define EOVERFLOW 132 -# define GNULIB_defined_EOVERFLOW 1 -# endif - -# ifndef ENOTSUP -# define ENOTSUP 129 -# define GNULIB_defined_ENOTSUP 1 -# endif - -# ifndef ENETRESET -# define ENETRESET 117 -# define GNULIB_defined_ENETRESET 1 -# endif - -# ifndef ECONNABORTED -# define ECONNABORTED 106 -# define GNULIB_defined_ECONNABORTED 1 -# endif - -# ifndef ECANCELED -# define ECANCELED 105 -# define GNULIB_defined_ECANCELED 1 -# endif - -# ifndef EOWNERDEAD -# define EOWNERDEAD 133 -# define GNULIB_defined_EOWNERDEAD 1 -# endif - -# ifndef ENOTRECOVERABLE -# define ENOTRECOVERABLE 127 -# define GNULIB_defined_ENOTRECOVERABLE 1 -# endif - -# ifndef EINPROGRESS -# define EINPROGRESS 112 -# define EALREADY 103 -# define ENOTSOCK 128 -# define EDESTADDRREQ 109 -# define EMSGSIZE 115 -# define EPROTOTYPE 136 -# define ENOPROTOOPT 123 -# define EPROTONOSUPPORT 135 -# define EOPNOTSUPP 130 -# define EAFNOSUPPORT 102 -# define EADDRINUSE 100 -# define EADDRNOTAVAIL 101 -# define ENETDOWN 116 -# define ENETUNREACH 118 -# define ECONNRESET 108 -# define ENOBUFS 119 -# define EISCONN 113 -# define ENOTCONN 126 -# define ETIMEDOUT 138 -# define ECONNREFUSED 107 -# define ELOOP 114 -# define EHOSTUNREACH 110 -# define EWOULDBLOCK 140 -# define GNULIB_defined_ESOCK 1 -# endif - -# ifndef ETXTBSY -# define ETXTBSY 139 -# define ENODATA 120 /* not required by POSIX */ -# define ENOSR 124 /* not required by POSIX */ -# define ENOSTR 125 /* not required by POSIX */ -# define ETIME 137 /* not required by POSIX */ -# define EOTHER 131 /* not required by POSIX */ -# define GNULIB_defined_ESTREAMS 1 -# endif - -/* These are intentionally the same values as the WSA* error numbers, defined - in . */ -# define ESOCKTNOSUPPORT 10044 /* not required by POSIX */ -# define EPFNOSUPPORT 10046 /* not required by POSIX */ -# define ESHUTDOWN 10058 /* not required by POSIX */ -# define ETOOMANYREFS 10059 /* not required by POSIX */ -# define EHOSTDOWN 10064 /* not required by POSIX */ -# define EPROCLIM 10067 /* not required by POSIX */ -# define EUSERS 10068 /* not required by POSIX */ -# define EDQUOT 10069 -# define ESTALE 10070 -# define EREMOTE 10071 /* not required by POSIX */ -# define GNULIB_defined_EWINSOCK 1 - -# endif - - -/* On OSF/1 5.1, when _XOPEN_SOURCE_EXTENDED is not defined, the macros - EMULTIHOP, ENOLINK, EOVERFLOW are not defined. */ -# if @EMULTIHOP_HIDDEN@ -# define EMULTIHOP @EMULTIHOP_VALUE@ -# define GNULIB_defined_EMULTIHOP 1 -# endif -# if @ENOLINK_HIDDEN@ -# define ENOLINK @ENOLINK_VALUE@ -# define GNULIB_defined_ENOLINK 1 -# endif -# if @EOVERFLOW_HIDDEN@ -# define EOVERFLOW @EOVERFLOW_VALUE@ -# define GNULIB_defined_EOVERFLOW 1 -# endif - - -/* On OpenBSD 4.0 and on native Windows, the macros ENOMSG, EIDRM, ENOLINK, - EPROTO, EMULTIHOP, EBADMSG, EOVERFLOW, ENOTSUP, ECANCELED are not defined. - Likewise, on NonStop Kernel, EDQUOT is not defined. - Define them here. Values >= 2000 seem safe to use: Solaris ESTALE = 151, - HP-UX EWOULDBLOCK = 246, IRIX EDQUOT = 1133. - - Note: When one of these systems defines some of these macros some day, - binaries will have to be recompiled so that they recognizes the new - errno values from the system. */ - -# ifndef ENOMSG -# define ENOMSG 2000 -# define GNULIB_defined_ENOMSG 1 -# endif - -# ifndef EIDRM -# define EIDRM 2001 -# define GNULIB_defined_EIDRM 1 -# endif - -# ifndef ENOLINK -# define ENOLINK 2002 -# define GNULIB_defined_ENOLINK 1 -# endif - -# ifndef EPROTO -# define EPROTO 2003 -# define GNULIB_defined_EPROTO 1 -# endif - -# ifndef EMULTIHOP -# define EMULTIHOP 2004 -# define GNULIB_defined_EMULTIHOP 1 -# endif - -# ifndef EBADMSG -# define EBADMSG 2005 -# define GNULIB_defined_EBADMSG 1 -# endif - -# ifndef EOVERFLOW -# define EOVERFLOW 2006 -# define GNULIB_defined_EOVERFLOW 1 -# endif - -# ifndef ENOTSUP -# define ENOTSUP 2007 -# define GNULIB_defined_ENOTSUP 1 -# endif - -# ifndef ENETRESET -# define ENETRESET 2011 -# define GNULIB_defined_ENETRESET 1 -# endif - -# ifndef ECONNABORTED -# define ECONNABORTED 2012 -# define GNULIB_defined_ECONNABORTED 1 -# endif - -# ifndef ESTALE -# define ESTALE 2009 -# define GNULIB_defined_ESTALE 1 -# endif - -# ifndef EDQUOT -# define EDQUOT 2010 -# define GNULIB_defined_EDQUOT 1 -# endif - -# ifndef ECANCELED -# define ECANCELED 2008 -# define GNULIB_defined_ECANCELED 1 -# endif - -/* On many platforms, the macros EOWNERDEAD and ENOTRECOVERABLE are not - defined. */ - -# ifndef EOWNERDEAD -# if defined __sun - /* Use the same values as defined for Solaris >= 8, for - interoperability. */ -# define EOWNERDEAD 58 -# define ENOTRECOVERABLE 59 -# elif defined _WIN32 && ! defined __CYGWIN__ - /* We have a conflict here: pthreads-win32 defines these values - differently than MSVC 10. It's hairy to decide which one to use. */ -# if defined __MINGW32__ && !defined USE_WINDOWS_THREADS - /* Use the same values as defined by pthreads-win32, for - interoperability. */ -# define EOWNERDEAD 43 -# define ENOTRECOVERABLE 44 -# else - /* Use the same values as defined by MSVC 10, for - interoperability. */ -# define EOWNERDEAD 133 -# define ENOTRECOVERABLE 127 -# endif -# else -# define EOWNERDEAD 2013 -# define ENOTRECOVERABLE 2014 -# endif -# define GNULIB_defined_EOWNERDEAD 1 -# define GNULIB_defined_ENOTRECOVERABLE 1 -# endif - -# ifndef EILSEQ -# define EILSEQ 2015 -# define GNULIB_defined_EILSEQ 1 -# endif - -#endif /* _@GUARD_PREFIX@_ERRNO_H */ -#endif /* _@GUARD_PREFIX@_ERRNO_H */ diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/error.c b/thirdparty/grub-2.04/grub-core/lib/gnulib/error.c deleted file mode 100644 index 7e532f0e4..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/error.c +++ /dev/null @@ -1,411 +0,0 @@ -/* Error handler for noninteractive utilities - Copyright (C) 1990-1998, 2000-2007, 2009-2019 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . */ - -/* Written by David MacKenzie . */ - -#if !_LIBC -# include -#endif - -#include "error.h" - -#include -#include -#include -#include - -#if !_LIBC && ENABLE_NLS -# include "gettext.h" -# define _(msgid) gettext (msgid) -#endif - -#ifdef _LIBC -# include -# include -# include -# include -# define mbsrtowcs __mbsrtowcs -# define USE_UNLOCKED_IO 0 -# define _GL_ATTRIBUTE_FORMAT_PRINTF(a, b) -# define _GL_ARG_NONNULL(a) -#else -# include "getprogname.h" -#endif - -#if USE_UNLOCKED_IO -# include "unlocked-io.h" -#endif - -#ifndef _ -# define _(String) String -#endif - -/* If NULL, error will flush stdout, then print on stderr the program - name, a colon and a space. Otherwise, error will call this - function without parameters instead. */ -void (*error_print_progname) (void); - -/* This variable is incremented each time 'error' is called. */ -unsigned int error_message_count; - -#ifdef _LIBC -/* In the GNU C library, there is a predefined variable for this. */ - -# define program_name program_invocation_name -# include -# include -# include - -/* In GNU libc we want do not want to use the common name 'error' directly. - Instead make it a weak alias. */ -extern void __error (int status, int errnum, const char *message, ...) - __attribute__ ((__format__ (__printf__, 3, 4))); -extern void __error_at_line (int status, int errnum, const char *file_name, - unsigned int line_number, const char *message, - ...) - __attribute__ ((__format__ (__printf__, 5, 6))); -# define error __error -# define error_at_line __error_at_line - -# include -# define fflush(s) _IO_fflush (s) -# undef putc -# define putc(c, fp) _IO_putc (c, fp) - -# include - -#else /* not _LIBC */ - -# include -# include - -# if defined _WIN32 && ! defined __CYGWIN__ -/* Get declarations of the native Windows API functions. */ -# define WIN32_LEAN_AND_MEAN -# include -/* Get _get_osfhandle. */ -# if GNULIB_MSVC_NOTHROW -# include "msvc-nothrow.h" -# else -# include -# endif -# endif - -/* The gnulib override of fcntl is not needed in this file. */ -# undef fcntl - -# if !(GNULIB_STRERROR_R_POSIX || HAVE_DECL_STRERROR_R) -# ifndef HAVE_DECL_STRERROR_R -"this configure-time declaration test was not run" -# endif -# if STRERROR_R_CHAR_P -char *strerror_r (int errnum, char *buf, size_t buflen); -# else -int strerror_r (int errnum, char *buf, size_t buflen); -# endif -# endif - -#define program_name getprogname () - -# if GNULIB_STRERROR_R_POSIX || HAVE_STRERROR_R || defined strerror_r -# define __strerror_r strerror_r -# endif /* GNULIB_STRERROR_R_POSIX || HAVE_STRERROR_R || defined strerror_r */ -#endif /* not _LIBC */ - -#if !_LIBC -/* Return non-zero if FD is open. */ -static int -is_open (int fd) -{ -# if defined _WIN32 && ! defined __CYGWIN__ - /* On native Windows: The initial state of unassigned standard file - descriptors is that they are open but point to an INVALID_HANDLE_VALUE. - There is no fcntl, and the gnulib replacement fcntl does not support - F_GETFL. */ - return (HANDLE) _get_osfhandle (fd) != INVALID_HANDLE_VALUE; -# else -# ifndef F_GETFL -# error Please port fcntl to your platform -# endif - return 0 <= fcntl (fd, F_GETFL); -# endif -} -#endif - -static void -flush_stdout (void) -{ -#if !_LIBC - int stdout_fd; - -# if GNULIB_FREOPEN_SAFER - /* Use of gnulib's freopen-safer module normally ensures that - fileno (stdout) == 1 - whenever stdout is open. */ - stdout_fd = STDOUT_FILENO; -# else - /* POSIX states that fileno (stdout) after fclose is unspecified. But in - practice it is not a problem, because stdout is statically allocated and - the fd of a FILE stream is stored as a field in its allocated memory. */ - stdout_fd = fileno (stdout); -# endif - /* POSIX states that fflush (stdout) after fclose is unspecified; it - is safe in glibc, but not on all other platforms. fflush (NULL) - is always defined, but too draconian. */ - if (0 <= stdout_fd && is_open (stdout_fd)) -#endif - fflush (stdout); -} - -static void -print_errno_message (int errnum) -{ - char const *s; - -#if _LIBC || GNULIB_STRERROR_R_POSIX || defined HAVE_STRERROR_R - char errbuf[1024]; -# if _LIBC || (!GNULIB_STRERROR_R_POSIX && STRERROR_R_CHAR_P) - s = __strerror_r (errnum, errbuf, sizeof errbuf); -# else - if (__strerror_r (errnum, errbuf, sizeof errbuf) == 0) - s = errbuf; - else - s = 0; -# endif -#else - s = strerror (errnum); -#endif - -#if !_LIBC - if (! s) - s = _("Unknown system error"); -#endif - -#if _LIBC - __fxprintf (NULL, ": %s", s); -#else - fprintf (stderr, ": %s", s); -#endif -} - -static void _GL_ATTRIBUTE_FORMAT_PRINTF (3, 0) _GL_ARG_NONNULL ((3)) -error_tail (int status, int errnum, const char *message, va_list args) -{ -#if _LIBC - if (_IO_fwide (stderr, 0) > 0) - { - size_t len = strlen (message) + 1; - wchar_t *wmessage = NULL; - mbstate_t st; - size_t res; - const char *tmp; - bool use_malloc = false; - - while (1) - { - if (__libc_use_alloca (len * sizeof (wchar_t))) - wmessage = (wchar_t *) alloca (len * sizeof (wchar_t)); - else - { - if (!use_malloc) - wmessage = NULL; - - wchar_t *p = (wchar_t *) realloc (wmessage, - len * sizeof (wchar_t)); - if (p == NULL) - { - free (wmessage); - fputws_unlocked (L"out of memory\n", stderr); - return; - } - wmessage = p; - use_malloc = true; - } - - memset (&st, '\0', sizeof (st)); - tmp = message; - - res = mbsrtowcs (wmessage, &tmp, len, &st); - if (res != len) - break; - - if (__builtin_expect (len >= SIZE_MAX / sizeof (wchar_t) / 2, 0)) - { - /* This really should not happen if everything is fine. */ - res = (size_t) -1; - break; - } - - len *= 2; - } - - if (res == (size_t) -1) - { - /* The string cannot be converted. */ - if (use_malloc) - { - free (wmessage); - use_malloc = false; - } - wmessage = (wchar_t *) L"???"; - } - - __vfwprintf (stderr, wmessage, args); - - if (use_malloc) - free (wmessage); - } - else -#endif - vfprintf (stderr, message, args); - - ++error_message_count; - if (errnum) - print_errno_message (errnum); -#if _LIBC - __fxprintf (NULL, "\n"); -#else - putc ('\n', stderr); -#endif - fflush (stderr); - if (status) - exit (status); -} - - -/* Print the program name and error message MESSAGE, which is a printf-style - format string with optional args. - If ERRNUM is nonzero, print its corresponding system error message. - Exit with status STATUS if it is nonzero. */ -void -error (int status, int errnum, const char *message, ...) -{ - va_list args; - -#if defined _LIBC && defined __libc_ptf_call - /* We do not want this call to be cut short by a thread - cancellation. Therefore disable cancellation for now. */ - int state = PTHREAD_CANCEL_ENABLE; - __libc_ptf_call (pthread_setcancelstate, (PTHREAD_CANCEL_DISABLE, &state), - 0); -#endif - - flush_stdout (); -#ifdef _LIBC - _IO_flockfile (stderr); -#endif - if (error_print_progname) - (*error_print_progname) (); - else - { -#if _LIBC - __fxprintf (NULL, "%s: ", program_name); -#else - fprintf (stderr, "%s: ", program_name); -#endif - } - - va_start (args, message); - error_tail (status, errnum, message, args); - va_end (args); - -#ifdef _LIBC - _IO_funlockfile (stderr); -# ifdef __libc_ptf_call - __libc_ptf_call (pthread_setcancelstate, (state, NULL), 0); -# endif -#endif -} - -/* Sometimes we want to have at most one error per line. This - variable controls whether this mode is selected or not. */ -int error_one_per_line; - -void -error_at_line (int status, int errnum, const char *file_name, - unsigned int line_number, const char *message, ...) -{ - va_list args; - - if (error_one_per_line) - { - static const char *old_file_name; - static unsigned int old_line_number; - - if (old_line_number == line_number - && (file_name == old_file_name - || (old_file_name != NULL - && file_name != NULL - && strcmp (old_file_name, file_name) == 0))) - - /* Simply return and print nothing. */ - return; - - old_file_name = file_name; - old_line_number = line_number; - } - -#if defined _LIBC && defined __libc_ptf_call - /* We do not want this call to be cut short by a thread - cancellation. Therefore disable cancellation for now. */ - int state = PTHREAD_CANCEL_ENABLE; - __libc_ptf_call (pthread_setcancelstate, (PTHREAD_CANCEL_DISABLE, &state), - 0); -#endif - - flush_stdout (); -#ifdef _LIBC - _IO_flockfile (stderr); -#endif - if (error_print_progname) - (*error_print_progname) (); - else - { -#if _LIBC - __fxprintf (NULL, "%s:", program_name); -#else - fprintf (stderr, "%s:", program_name); -#endif - } - -#if _LIBC - __fxprintf (NULL, file_name != NULL ? "%s:%u: " : " ", - file_name, line_number); -#else - fprintf (stderr, file_name != NULL ? "%s:%u: " : " ", - file_name, line_number); -#endif - - va_start (args, message); - error_tail (status, errnum, message, args); - va_end (args); - -#ifdef _LIBC - _IO_funlockfile (stderr); -# ifdef __libc_ptf_call - __libc_ptf_call (pthread_setcancelstate, (state, NULL), 0); -# endif -#endif -} - -#ifdef _LIBC -/* Make the weak alias. */ -# undef error -# undef error_at_line -weak_alias (__error, error) -weak_alias (__error_at_line, error_at_line) -#endif diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/error.h b/thirdparty/grub-2.04/grub-core/lib/gnulib/error.h deleted file mode 100644 index 3759f8ad4..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/error.h +++ /dev/null @@ -1,75 +0,0 @@ -/* Declaration for error-reporting function - Copyright (C) 1995-1997, 2003, 2006, 2008-2019 Free Software Foundation, - Inc. - This file is part of the GNU C Library. - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . */ - -#ifndef _ERROR_H -#define _ERROR_H 1 - -/* The __attribute__ feature is available in gcc versions 2.5 and later. - The __-protected variants of the attributes 'format' and 'printf' are - accepted by gcc versions 2.6.4 (effectively 2.7) and later. - We enable _GL_ATTRIBUTE_FORMAT only if these are supported too, because - gnulib and libintl do '#define printf __printf__' when they override - the 'printf' function. */ -#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 7) -# define _GL_ATTRIBUTE_FORMAT(spec) __attribute__ ((__format__ spec)) -#else -# define _GL_ATTRIBUTE_FORMAT(spec) /* empty */ -#endif - -/* On mingw, the flavor of printf depends on whether the extensions module - * is in use; the check for determines the witness macro. */ -#ifndef _GL_ATTRIBUTE_SPEC_PRINTF -# if GNULIB_PRINTF_ATTRIBUTE_FLAVOR_GNU -# define _GL_ATTRIBUTE_SPEC_PRINTF __gnu_printf__ -# else -# define _GL_ATTRIBUTE_SPEC_PRINTF __printf__ -# endif -#endif - -#ifdef __cplusplus -extern "C" { -#endif - -/* Print a message with 'fprintf (stderr, FORMAT, ...)'; - if ERRNUM is nonzero, follow it with ": " and strerror (ERRNUM). - If STATUS is nonzero, terminate the program with 'exit (STATUS)'. */ - -extern void error (int __status, int __errnum, const char *__format, ...) - _GL_ATTRIBUTE_FORMAT ((_GL_ATTRIBUTE_SPEC_PRINTF, 3, 4)); - -extern void error_at_line (int __status, int __errnum, const char *__fname, - unsigned int __lineno, const char *__format, ...) - _GL_ATTRIBUTE_FORMAT ((_GL_ATTRIBUTE_SPEC_PRINTF, 5, 6)); - -/* If NULL, error will flush stdout, then print on stderr the program - name, a colon and a space. Otherwise, error will call this - function without parameters instead. */ -extern void (*error_print_progname) (void); - -/* This variable is incremented each time 'error' is called. */ -extern unsigned int error_message_count; - -/* Sometimes we want to have at most one error per line. This - variable controls whether this mode is selected or not. */ -extern int error_one_per_line; - -#ifdef __cplusplus -} -#endif - -#endif /* error.h */ diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/exitfail.c b/thirdparty/grub-2.04/grub-core/lib/gnulib/exitfail.c deleted file mode 100644 index 69b351372..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/exitfail.c +++ /dev/null @@ -1,24 +0,0 @@ -/* Failure exit status - - Copyright (C) 2002-2003, 2005-2007, 2009-2019 Free Software Foundation, Inc. - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . */ - -#include - -#include "exitfail.h" - -#include - -int volatile exit_failure = EXIT_FAILURE; diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/exitfail.h b/thirdparty/grub-2.04/grub-core/lib/gnulib/exitfail.h deleted file mode 100644 index 480ad1a16..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/exitfail.h +++ /dev/null @@ -1,18 +0,0 @@ -/* Failure exit status - - Copyright (C) 2002, 2009-2019 Free Software Foundation, Inc. - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . */ - -extern int volatile exit_failure; diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/fchdir.c b/thirdparty/grub-2.04/grub-core/lib/gnulib/fchdir.c deleted file mode 100644 index 38ab802e0..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/fchdir.c +++ /dev/null @@ -1,208 +0,0 @@ -/* fchdir replacement. - Copyright (C) 2006-2019 Free Software Foundation, Inc. - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . */ - -#include - -/* Specification. */ -#include - -#include -#include -#include -#include -#include -#include -#include -#include - -#include "assure.h" -#include "dosname.h" -#include "filenamecat.h" - -#ifndef REPLACE_OPEN_DIRECTORY -# define REPLACE_OPEN_DIRECTORY 0 -#endif - -/* This replacement assumes that a directory is not renamed while opened - through a file descriptor. - - FIXME: On mingw, this would be possible to enforce if we were to - also open a HANDLE to each directory currently visited by a file - descriptor, since mingw refuses to rename any in-use file system - object. */ - -/* Array of file descriptors opened. If REPLACE_OPEN_DIRECTORY or if it points - to a directory, it stores info about this directory. */ -typedef struct -{ - char *name; /* Absolute name of the directory, or NULL. */ - /* FIXME - add a DIR* member to make dirfd possible on mingw? */ -} dir_info_t; -static dir_info_t *dirs; -static size_t dirs_allocated; - -/* Try to ensure dirs has enough room for a slot at index fd; free any - contents already in that slot. Return false and set errno to - ENOMEM on allocation failure. */ -static bool -ensure_dirs_slot (size_t fd) -{ - if (fd < dirs_allocated) - free (dirs[fd].name); - else - { - size_t new_allocated; - dir_info_t *new_dirs; - - new_allocated = 2 * dirs_allocated + 1; - if (new_allocated <= fd) - new_allocated = fd + 1; - new_dirs = - (dirs != NULL - ? (dir_info_t *) realloc (dirs, new_allocated * sizeof *dirs) - : (dir_info_t *) malloc (new_allocated * sizeof *dirs)); - if (new_dirs == NULL) - return false; - memset (new_dirs + dirs_allocated, 0, - (new_allocated - dirs_allocated) * sizeof *dirs); - dirs = new_dirs; - dirs_allocated = new_allocated; - } - return true; -} - -/* Return an absolute name of DIR in malloc'd storage. */ -static char * -get_name (char const *dir) -{ - char *cwd; - char *result; - int saved_errno; - - if (IS_ABSOLUTE_FILE_NAME (dir)) - return strdup (dir); - - /* We often encounter "."; treat it as a special case. */ - cwd = getcwd (NULL, 0); - if (!cwd || (dir[0] == '.' && dir[1] == '\0')) - return cwd; - - result = mfile_name_concat (cwd, dir, NULL); - saved_errno = errno; - free (cwd); - errno = saved_errno; - return result; -} - -/* Hook into the gnulib replacements for open() and close() to keep track - of the open file descriptors. */ - -/* Close FD, cleaning up any fd to name mapping if fd was visiting a - directory. */ -void -_gl_unregister_fd (int fd) -{ - if (fd >= 0 && fd < dirs_allocated) - { - free (dirs[fd].name); - dirs[fd].name = NULL; - } -} - -/* Mark FD as visiting FILENAME. FD must be non-negative, and refer - to an open file descriptor. If REPLACE_OPEN_DIRECTORY is non-zero, - this should only be called if FD is visiting a directory. Close FD - and return -1 if there is insufficient memory to track the - directory name; otherwise return FD. */ -int -_gl_register_fd (int fd, const char *filename) -{ - struct stat statbuf; - - assure (0 <= fd); - if (REPLACE_OPEN_DIRECTORY - || (fstat (fd, &statbuf) == 0 && S_ISDIR (statbuf.st_mode))) - { - if (!ensure_dirs_slot (fd) - || (dirs[fd].name = get_name (filename)) == NULL) - { - int saved_errno = errno; - close (fd); - errno = saved_errno; - return -1; - } - } - return fd; -} - -/* Mark NEWFD as a duplicate of OLDFD; useful from dup, dup2, dup3, - and fcntl. Both arguments must be valid and distinct file - descriptors. Close NEWFD and return -1 if OLDFD is tracking a - directory, but there is insufficient memory to track the same - directory in NEWFD; otherwise return NEWFD. */ -int -_gl_register_dup (int oldfd, int newfd) -{ - assure (0 <= oldfd && 0 <= newfd && oldfd != newfd); - if (oldfd < dirs_allocated && dirs[oldfd].name) - { - /* Duplicated a directory; must ensure newfd is allocated. */ - if (!ensure_dirs_slot (newfd) - || (dirs[newfd].name = strdup (dirs[oldfd].name)) == NULL) - { - int saved_errno = errno; - close (newfd); - errno = saved_errno; - newfd = -1; - } - } - else if (newfd < dirs_allocated) - { - /* Duplicated a non-directory; ensure newfd is cleared. */ - free (dirs[newfd].name); - dirs[newfd].name = NULL; - } - return newfd; -} - -/* If FD is currently visiting a directory, then return the name of - that directory. Otherwise, return NULL and set errno. */ -const char * -_gl_directory_name (int fd) -{ - if (0 <= fd && fd < dirs_allocated && dirs[fd].name != NULL) - return dirs[fd].name; - /* At this point, fd is either invalid, or open but not a directory. - If dup2 fails, errno is correctly EBADF. */ - if (0 <= fd) - { - if (dup2 (fd, fd) == fd) - errno = ENOTDIR; - } - else - errno = EBADF; - return NULL; -} - - -/* Implement fchdir() in terms of chdir(). */ - -int -fchdir (int fd) -{ - const char *name = _gl_directory_name (fd); - return name ? chdir (name) : -1; -} diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/fcntl.c b/thirdparty/grub-2.04/grub-core/lib/gnulib/fcntl.c deleted file mode 100644 index f602fad62..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/fcntl.c +++ /dev/null @@ -1,626 +0,0 @@ -/* Provide file descriptor control. - - Copyright (C) 2009-2019 Free Software Foundation, Inc. - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . */ - -/* Written by Eric Blake . */ - -#include - -/* Specification. */ -#include - -#include -#include -#include -#include - -#ifdef __KLIBC__ -# define INCL_DOS -# include -#endif - -#if defined _WIN32 && ! defined __CYGWIN__ -/* Get declarations of the native Windows API functions. */ -# define WIN32_LEAN_AND_MEAN -# include - -/* Get _get_osfhandle. */ -# if GNULIB_MSVC_NOTHROW -# include "msvc-nothrow.h" -# else -# include -# endif - -/* Upper bound on getdtablesize(). See lib/getdtablesize.c. */ -# define OPEN_MAX_MAX 0x10000 - -/* Duplicate OLDFD into the first available slot of at least NEWFD, - which must be positive, with FLAGS determining whether the duplicate - will be inheritable. */ -static int -dupfd (int oldfd, int newfd, int flags) -{ - /* Mingw has no way to create an arbitrary fd. Iterate until all - file descriptors less than newfd are filled up. */ - HANDLE curr_process = GetCurrentProcess (); - HANDLE old_handle = (HANDLE) _get_osfhandle (oldfd); - unsigned char fds_to_close[OPEN_MAX_MAX / CHAR_BIT]; - unsigned int fds_to_close_bound = 0; - int result; - BOOL inherit = flags & O_CLOEXEC ? FALSE : TRUE; - int mode; - - if (newfd < 0 || getdtablesize () <= newfd) - { - errno = EINVAL; - return -1; - } - if (old_handle == INVALID_HANDLE_VALUE - || (mode = setmode (oldfd, O_BINARY)) == -1) - { - /* oldfd is not open, or is an unassigned standard file - descriptor. */ - errno = EBADF; - return -1; - } - setmode (oldfd, mode); - flags |= mode; - - for (;;) - { - HANDLE new_handle; - int duplicated_fd; - unsigned int index; - - if (!DuplicateHandle (curr_process, /* SourceProcessHandle */ - old_handle, /* SourceHandle */ - curr_process, /* TargetProcessHandle */ - (PHANDLE) &new_handle, /* TargetHandle */ - (DWORD) 0, /* DesiredAccess */ - inherit, /* InheritHandle */ - DUPLICATE_SAME_ACCESS)) /* Options */ - { - switch (GetLastError ()) - { - case ERROR_TOO_MANY_OPEN_FILES: - errno = EMFILE; - break; - case ERROR_INVALID_HANDLE: - case ERROR_INVALID_TARGET_HANDLE: - case ERROR_DIRECT_ACCESS_HANDLE: - errno = EBADF; - break; - case ERROR_INVALID_PARAMETER: - case ERROR_INVALID_FUNCTION: - case ERROR_INVALID_ACCESS: - errno = EINVAL; - break; - default: - errno = EACCES; - break; - } - result = -1; - break; - } - duplicated_fd = _open_osfhandle ((intptr_t) new_handle, flags); - if (duplicated_fd < 0) - { - CloseHandle (new_handle); - result = -1; - break; - } - if (newfd <= duplicated_fd) - { - result = duplicated_fd; - break; - } - - /* Set the bit duplicated_fd in fds_to_close[]. */ - index = (unsigned int) duplicated_fd / CHAR_BIT; - if (fds_to_close_bound <= index) - { - if (sizeof fds_to_close <= index) - /* Need to increase OPEN_MAX_MAX. */ - abort (); - memset (fds_to_close + fds_to_close_bound, '\0', - index + 1 - fds_to_close_bound); - fds_to_close_bound = index + 1; - } - fds_to_close[index] |= 1 << ((unsigned int) duplicated_fd % CHAR_BIT); - } - - /* Close the previous fds that turned out to be too small. */ - { - int saved_errno = errno; - unsigned int duplicated_fd; - - for (duplicated_fd = 0; - duplicated_fd < fds_to_close_bound * CHAR_BIT; - duplicated_fd++) - if ((fds_to_close[duplicated_fd / CHAR_BIT] - >> (duplicated_fd % CHAR_BIT)) - & 1) - close (duplicated_fd); - - errno = saved_errno; - } - -# if REPLACE_FCHDIR - if (0 <= result) - result = _gl_register_dup (oldfd, result); -# endif - return result; -} -#endif /* W32 */ - -/* Forward declarations, because we '#undef fcntl' in the middle of this - compilation unit. */ -/* Our implementation of fcntl (fd, F_DUPFD, target). */ -static int rpl_fcntl_DUPFD (int fd, int target); -/* Our implementation of fcntl (fd, F_DUPFD_CLOEXEC, target). */ -static int rpl_fcntl_DUPFD_CLOEXEC (int fd, int target); -#ifdef __KLIBC__ -/* Adds support for fcntl on directories. */ -static int klibc_fcntl (int fd, int action, /* arg */...); -#endif - - -/* Perform the specified ACTION on the file descriptor FD, possibly - using the argument ARG further described below. This replacement - handles the following actions, and forwards all others on to the - native fcntl. An unrecognized ACTION returns -1 with errno set to - EINVAL. - - F_DUPFD - duplicate FD, with int ARG being the minimum target fd. - If successful, return the duplicate, which will be inheritable; - otherwise return -1 and set errno. - - F_DUPFD_CLOEXEC - duplicate FD, with int ARG being the minimum - target fd. If successful, return the duplicate, which will not be - inheritable; otherwise return -1 and set errno. - - F_GETFD - ARG need not be present. If successful, return a - non-negative value containing the descriptor flags of FD (only - FD_CLOEXEC is portable, but other flags may be present); otherwise - return -1 and set errno. */ - -int -fcntl (int fd, int action, /* arg */...) -#undef fcntl -#ifdef __KLIBC__ -# define fcntl klibc_fcntl -#endif -{ - va_list arg; - int result = -1; - va_start (arg, action); - switch (action) - { - case F_DUPFD: - { - int target = va_arg (arg, int); - result = rpl_fcntl_DUPFD (fd, target); - break; - } - - case F_DUPFD_CLOEXEC: - { - int target = va_arg (arg, int); - result = rpl_fcntl_DUPFD_CLOEXEC (fd, target); - break; - } - -#if !HAVE_FCNTL - case F_GETFD: - { -# if defined _WIN32 && ! defined __CYGWIN__ - HANDLE handle = (HANDLE) _get_osfhandle (fd); - DWORD flags; - if (handle == INVALID_HANDLE_VALUE - || GetHandleInformation (handle, &flags) == 0) - errno = EBADF; - else - result = (flags & HANDLE_FLAG_INHERIT) ? 0 : FD_CLOEXEC; -# else /* !W32 */ - /* Use dup2 to reject invalid file descriptors. No way to - access this information, so punt. */ - if (0 <= dup2 (fd, fd)) - result = 0; -# endif /* !W32 */ - break; - } /* F_GETFD */ -#endif /* !HAVE_FCNTL */ - - /* Implementing F_SETFD on mingw is not trivial - there is no - API for changing the O_NOINHERIT bit on an fd, and merely - changing the HANDLE_FLAG_INHERIT bit on the underlying handle - can lead to odd state. It may be possible by duplicating the - handle, using _open_osfhandle with the right flags, then - using dup2 to move the duplicate onto the original, but that - is not supported for now. */ - - default: - { -#if HAVE_FCNTL - switch (action) - { - #ifdef F_BARRIERFSYNC /* macOS */ - case F_BARRIERFSYNC: - #endif - #ifdef F_CHKCLEAN /* macOS */ - case F_CHKCLEAN: - #endif - #ifdef F_CLOSEM /* NetBSD, HP-UX */ - case F_CLOSEM: - #endif - #ifdef F_FLUSH_DATA /* macOS */ - case F_FLUSH_DATA: - #endif - #ifdef F_FREEZE_FS /* macOS */ - case F_FREEZE_FS: - #endif - #ifdef F_FULLFSYNC /* macOS */ - case F_FULLFSYNC: - #endif - #ifdef F_GETCONFINED /* macOS */ - case F_GETCONFINED: - #endif - #ifdef F_GETDEFAULTPROTLEVEL /* macOS */ - case F_GETDEFAULTPROTLEVEL: - #endif - #ifdef F_GETFD /* POSIX */ - case F_GETFD: - #endif - #ifdef F_GETFL /* POSIX */ - case F_GETFL: - #endif - #ifdef F_GETLEASE /* Linux */ - case F_GETLEASE: - #endif - #ifdef F_GETNOSIGPIPE /* macOS */ - case F_GETNOSIGPIPE: - #endif - #ifdef F_GETOWN /* POSIX */ - case F_GETOWN: - #endif - #ifdef F_GETPIPE_SZ /* Linux */ - case F_GETPIPE_SZ: - #endif - #ifdef F_GETPROTECTIONCLASS /* macOS */ - case F_GETPROTECTIONCLASS: - #endif - #ifdef F_GETPROTECTIONLEVEL /* macOS */ - case F_GETPROTECTIONLEVEL: - #endif - #ifdef F_GET_SEALS /* Linux */ - case F_GET_SEALS: - #endif - #ifdef F_GETSIG /* Linux */ - case F_GETSIG: - #endif - #ifdef F_MAXFD /* NetBSD */ - case F_MAXFD: - #endif - #ifdef F_RECYCLE /* macOS */ - case F_RECYCLE: - #endif - #ifdef F_SETFIFOENH /* HP-UX */ - case F_SETFIFOENH: - #endif - #ifdef F_THAW_FS /* macOS */ - case F_THAW_FS: - #endif - /* These actions take no argument. */ - result = fcntl (fd, action); - break; - - #ifdef F_ADD_SEALS /* Linux */ - case F_ADD_SEALS: - #endif - #ifdef F_BADFD /* Solaris */ - case F_BADFD: - #endif - #ifdef F_CHECK_OPENEVT /* macOS */ - case F_CHECK_OPENEVT: - #endif - #ifdef F_DUP2FD /* FreeBSD, AIX, Solaris */ - case F_DUP2FD: - #endif - #ifdef F_DUP2FD_CLOEXEC /* FreeBSD, Solaris */ - case F_DUP2FD_CLOEXEC: - #endif - #ifdef F_DUP2FD_CLOFORK /* Solaris */ - case F_DUP2FD_CLOFORK: - #endif - #ifdef F_DUPFD /* POSIX */ - case F_DUPFD: - #endif - #ifdef F_DUPFD_CLOEXEC /* POSIX */ - case F_DUPFD_CLOEXEC: - #endif - #ifdef F_DUPFD_CLOFORK /* Solaris */ - case F_DUPFD_CLOFORK: - #endif - #ifdef F_GETXFL /* Solaris */ - case F_GETXFL: - #endif - #ifdef F_GLOBAL_NOCACHE /* macOS */ - case F_GLOBAL_NOCACHE: - #endif - #ifdef F_MAKECOMPRESSED /* macOS */ - case F_MAKECOMPRESSED: - #endif - #ifdef F_MOVEDATAEXTENTS /* macOS */ - case F_MOVEDATAEXTENTS: - #endif - #ifdef F_NOCACHE /* macOS */ - case F_NOCACHE: - #endif - #ifdef F_NODIRECT /* macOS */ - case F_NODIRECT: - #endif - #ifdef F_NOTIFY /* Linux */ - case F_NOTIFY: - #endif - #ifdef F_OPLKACK /* IRIX */ - case F_OPLKACK: - #endif - #ifdef F_OPLKREG /* IRIX */ - case F_OPLKREG: - #endif - #ifdef F_RDAHEAD /* macOS */ - case F_RDAHEAD: - #endif - #ifdef F_SETBACKINGSTORE /* macOS */ - case F_SETBACKINGSTORE: - #endif - #ifdef F_SETCONFINED /* macOS */ - case F_SETCONFINED: - #endif - #ifdef F_SETFD /* POSIX */ - case F_SETFD: - #endif - #ifdef F_SETFL /* POSIX */ - case F_SETFL: - #endif - #ifdef F_SETLEASE /* Linux */ - case F_SETLEASE: - #endif - #ifdef F_SETNOSIGPIPE /* macOS */ - case F_SETNOSIGPIPE: - #endif - #ifdef F_SETOWN /* POSIX */ - case F_SETOWN: - #endif - #ifdef F_SETPIPE_SZ /* Linux */ - case F_SETPIPE_SZ: - #endif - #ifdef F_SETPROTECTIONCLASS /* macOS */ - case F_SETPROTECTIONCLASS: - #endif - #ifdef F_SETSIG /* Linux */ - case F_SETSIG: - #endif - #ifdef F_SINGLE_WRITER /* macOS */ - case F_SINGLE_WRITER: - #endif - /* These actions take an 'int' argument. */ - { - int x = va_arg (arg, int); - result = fcntl (fd, action, x); - } - break; - - default: - /* Other actions take a pointer argument. */ - { - void *p = va_arg (arg, void *); - result = fcntl (fd, action, p); - } - break; - } -#else - errno = EINVAL; -#endif - break; - } - } - va_end (arg); - return result; -} - -static int -rpl_fcntl_DUPFD (int fd, int target) -{ - int result; -#if !HAVE_FCNTL - result = dupfd (fd, target, 0); -#elif FCNTL_DUPFD_BUGGY || REPLACE_FCHDIR - /* Detect invalid target; needed for cygwin 1.5.x. */ - if (target < 0 || getdtablesize () <= target) - { - result = -1; - errno = EINVAL; - } - else - { - /* Haiku alpha 2 loses fd flags on original. */ - int flags = fcntl (fd, F_GETFD); - if (flags < 0) - result = -1; - else - { - result = fcntl (fd, F_DUPFD, target); - if (0 <= result && fcntl (fd, F_SETFD, flags) == -1) - { - int saved_errno = errno; - close (result); - result = -1; - errno = saved_errno; - } -# if REPLACE_FCHDIR - if (0 <= result) - result = _gl_register_dup (fd, result); -# endif - } - } -#else - result = fcntl (fd, F_DUPFD, target); -#endif - return result; -} - -static int -rpl_fcntl_DUPFD_CLOEXEC (int fd, int target) -{ - int result; -#if !HAVE_FCNTL - result = dupfd (fd, target, O_CLOEXEC); -#else /* HAVE_FCNTL */ -# if defined __HAIKU__ - /* On Haiku, the system fcntl (fd, F_DUPFD_CLOEXEC, target) sets - the FD_CLOEXEC flag on fd, not on target. Therefore avoid the - system fcntl in this case. */ -# define have_dupfd_cloexec -1 -# else - /* Try the system call first, if the headers claim it exists - (that is, if GNULIB_defined_F_DUPFD_CLOEXEC is 0), since we - may be running with a glibc that has the macro but with an - older kernel that does not support it. Cache the - information on whether the system call really works, but - avoid caching failure if the corresponding F_DUPFD fails - for any reason. 0 = unknown, 1 = yes, -1 = no. */ - static int have_dupfd_cloexec = GNULIB_defined_F_DUPFD_CLOEXEC ? -1 : 0; - if (0 <= have_dupfd_cloexec) - { - result = fcntl (fd, F_DUPFD_CLOEXEC, target); - if (0 <= result || errno != EINVAL) - { - have_dupfd_cloexec = 1; -# if REPLACE_FCHDIR - if (0 <= result) - result = _gl_register_dup (fd, result); -# endif - } - else - { - result = rpl_fcntl_DUPFD (fd, target); - if (result >= 0) - have_dupfd_cloexec = -1; - } - } - else -# endif - result = rpl_fcntl_DUPFD (fd, target); - if (0 <= result && have_dupfd_cloexec == -1) - { - int flags = fcntl (result, F_GETFD); - if (flags < 0 || fcntl (result, F_SETFD, flags | FD_CLOEXEC) == -1) - { - int saved_errno = errno; - close (result); - errno = saved_errno; - result = -1; - } - } -#endif /* HAVE_FCNTL */ - return result; -} - -#undef fcntl - -#ifdef __KLIBC__ - -static int -klibc_fcntl (int fd, int action, /* arg */...); -{ - va_list arg_ptr; - int arg; - struct stat sbuf; - int result; - - va_start (arg_ptr, action); - arg = va_arg (arg_ptr, int); - result = fcntl (fd, action, arg); - /* EPERM for F_DUPFD, ENOTSUP for others */ - if (result == -1 && (errno == EPERM || errno == ENOTSUP) - && !fstat (fd, &sbuf) && S_ISDIR (sbuf.st_mode)) - { - ULONG ulMode; - - switch (action) - { - case F_DUPFD: - /* Find available fd */ - while (fcntl (arg, F_GETFL) != -1 || errno != EBADF) - arg++; - - result = dup2 (fd, arg); - break; - - /* Using underlying APIs is right ? */ - case F_GETFD: - if (DosQueryFHState (fd, &ulMode)) - break; - - result = (ulMode & OPEN_FLAGS_NOINHERIT) ? FD_CLOEXEC : 0; - break; - - case F_SETFD: - if (arg & ~FD_CLOEXEC) - break; - - if (DosQueryFHState (fd, &ulMode)) - break; - - if (arg & FD_CLOEXEC) - ulMode |= OPEN_FLAGS_NOINHERIT; - else - ulMode &= ~OPEN_FLAGS_NOINHERIT; - - /* Filter supported flags. */ - ulMode &= (OPEN_FLAGS_WRITE_THROUGH | OPEN_FLAGS_FAIL_ON_ERROR - | OPEN_FLAGS_NO_CACHE | OPEN_FLAGS_NOINHERIT); - - if (DosSetFHState (fd, ulMode)) - break; - - result = 0; - break; - - case F_GETFL: - result = 0; - break; - - case F_SETFL: - if (arg != 0) - break; - - result = 0; - break; - - default: - errno = EINVAL; - break; - } - } - - va_end (arg_ptr); - - return result; -} - -#endif diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/fcntl.in.h b/thirdparty/grub-2.04/grub-core/lib/gnulib/fcntl.in.h deleted file mode 100644 index eb70dc61e..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/fcntl.in.h +++ /dev/null @@ -1,366 +0,0 @@ -/* Like , but with non-working flags defined to 0. - - Copyright (C) 2006-2019 Free Software Foundation, Inc. - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . */ - -/* written by Paul Eggert */ - -#if __GNUC__ >= 3 -@PRAGMA_SYSTEM_HEADER@ -#endif -@PRAGMA_COLUMNS@ - -#if defined __need_system_fcntl_h -/* Special invocation convention. */ - -/* Needed before . - May also define off_t to a 64-bit type on native Windows. */ -#include -/* On some systems other than glibc, is a prerequisite of - . On glibc systems, we would like to avoid namespace pollution. - But on glibc systems, includes inside an - extern "C" { ... } block, which leads to errors in C++ mode with the - overridden from gnulib. These errors are known to be gone - with g++ version >= 4.3. */ -#if !(defined __GLIBC__ || defined __UCLIBC__) || (defined __cplusplus && defined GNULIB_NAMESPACE && (defined __ICC || !(__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 3)))) -# include -#endif -#@INCLUDE_NEXT@ @NEXT_FCNTL_H@ - -#else -/* Normal invocation convention. */ - -#ifndef _@GUARD_PREFIX@_FCNTL_H - -/* Needed before . - May also define off_t to a 64-bit type on native Windows. */ -#include -/* On some systems other than glibc, is a prerequisite of - . On glibc systems, we would like to avoid namespace pollution. - But on glibc systems, includes inside an - extern "C" { ... } block, which leads to errors in C++ mode with the - overridden from gnulib. These errors are known to be gone - with g++ version >= 4.3. */ -#if !(defined __GLIBC__ || defined __UCLIBC__) || (defined __cplusplus && defined GNULIB_NAMESPACE && (defined __ICC || !(__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 3)))) -# include -#endif -/* The include_next requires a split double-inclusion guard. */ -#@INCLUDE_NEXT@ @NEXT_FCNTL_H@ - -#ifndef _@GUARD_PREFIX@_FCNTL_H -#define _@GUARD_PREFIX@_FCNTL_H - -#ifndef __GLIBC__ /* Avoid namespace pollution on glibc systems. */ -# include -#endif - -/* Native Windows platforms declare open(), creat() in . */ -#if (@GNULIB_OPEN@ || defined GNULIB_POSIXCHECK) \ - && (defined _WIN32 && ! defined __CYGWIN__) -# include -#endif - - -/* The definitions of _GL_FUNCDECL_RPL etc. are copied here. */ - -/* The definition of _GL_ARG_NONNULL is copied here. */ - -/* The definition of _GL_WARN_ON_USE is copied here. */ - - -/* Declare overridden functions. */ - -#if @GNULIB_FCNTL@ -# if @REPLACE_FCNTL@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# undef fcntl -# define fcntl rpl_fcntl -# endif -_GL_FUNCDECL_RPL (fcntl, int, (int fd, int action, ...)); -_GL_CXXALIAS_RPL (fcntl, int, (int fd, int action, ...)); -# else -# if !@HAVE_FCNTL@ -_GL_FUNCDECL_SYS (fcntl, int, (int fd, int action, ...)); -# endif -_GL_CXXALIAS_SYS (fcntl, int, (int fd, int action, ...)); -# endif -_GL_CXXALIASWARN (fcntl); -#elif defined GNULIB_POSIXCHECK -# undef fcntl -# if HAVE_RAW_DECL_FCNTL -_GL_WARN_ON_USE (fcntl, "fcntl is not always POSIX compliant - " - "use gnulib module fcntl for portability"); -# endif -#endif - -#if @GNULIB_OPEN@ -# if @REPLACE_OPEN@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# undef open -# define open rpl_open -# endif -_GL_FUNCDECL_RPL (open, int, (const char *filename, int flags, ...) - _GL_ARG_NONNULL ((1))); -_GL_CXXALIAS_RPL (open, int, (const char *filename, int flags, ...)); -# else -_GL_CXXALIAS_SYS (open, int, (const char *filename, int flags, ...)); -# endif -/* On HP-UX 11, in C++ mode, open() is defined as an inline function with a - default argument. _GL_CXXALIASWARN does not work in this case. */ -# if !defined __hpux -_GL_CXXALIASWARN (open); -# endif -#elif defined GNULIB_POSIXCHECK -# undef open -/* Assume open is always declared. */ -_GL_WARN_ON_USE (open, "open is not always POSIX compliant - " - "use gnulib module open for portability"); -#endif - -#if @GNULIB_OPENAT@ -# if @REPLACE_OPENAT@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# undef openat -# define openat rpl_openat -# endif -_GL_FUNCDECL_RPL (openat, int, - (int fd, char const *file, int flags, /* mode_t mode */ ...) - _GL_ARG_NONNULL ((2))); -_GL_CXXALIAS_RPL (openat, int, - (int fd, char const *file, int flags, /* mode_t mode */ ...)); -# else -# if !@HAVE_OPENAT@ -_GL_FUNCDECL_SYS (openat, int, - (int fd, char const *file, int flags, /* mode_t mode */ ...) - _GL_ARG_NONNULL ((2))); -# endif -_GL_CXXALIAS_SYS (openat, int, - (int fd, char const *file, int flags, /* mode_t mode */ ...)); -# endif -_GL_CXXALIASWARN (openat); -#elif defined GNULIB_POSIXCHECK -# undef openat -# if HAVE_RAW_DECL_OPENAT -_GL_WARN_ON_USE (openat, "openat is not portable - " - "use gnulib module openat for portability"); -# endif -#endif - - -/* Fix up the FD_* macros, only known to be missing on mingw. */ - -#ifndef FD_CLOEXEC -# define FD_CLOEXEC 1 -#endif - -/* Fix up the supported F_* macros. Intentionally leave other F_* - macros undefined. Only known to be missing on mingw. */ - -#ifndef F_DUPFD_CLOEXEC -# define F_DUPFD_CLOEXEC 0x40000000 -/* Witness variable: 1 if gnulib defined F_DUPFD_CLOEXEC, 0 otherwise. */ -# define GNULIB_defined_F_DUPFD_CLOEXEC 1 -#else -# define GNULIB_defined_F_DUPFD_CLOEXEC 0 -#endif - -#ifndef F_DUPFD -# define F_DUPFD 1 -#endif - -#ifndef F_GETFD -# define F_GETFD 2 -#endif - -/* Fix up the O_* macros. */ - -/* AIX 7.1 with XL C 12.1 defines O_CLOEXEC, O_NOFOLLOW, and O_TTY_INIT - to values outside 'int' range, so omit these misdefinitions. - But avoid namespace pollution on non-AIX systems. */ -#ifdef _AIX -# include -# if defined O_CLOEXEC && ! (INT_MIN <= O_CLOEXEC && O_CLOEXEC <= INT_MAX) -# undef O_CLOEXEC -# endif -# if defined O_NOFOLLOW && ! (INT_MIN <= O_NOFOLLOW && O_NOFOLLOW <= INT_MAX) -# undef O_NOFOLLOW -# endif -# if defined O_TTY_INIT && ! (INT_MIN <= O_TTY_INIT && O_TTY_INIT <= INT_MAX) -# undef O_TTY_INIT -# endif -#endif - -#if !defined O_DIRECT && defined O_DIRECTIO -/* Tru64 spells it 'O_DIRECTIO'. */ -# define O_DIRECT O_DIRECTIO -#endif - -#if !defined O_CLOEXEC && defined O_NOINHERIT -/* Mingw spells it 'O_NOINHERIT'. */ -# define O_CLOEXEC O_NOINHERIT -#endif - -#ifndef O_CLOEXEC -# define O_CLOEXEC 0x40000000 /* Try to not collide with system O_* flags. */ -# define GNULIB_defined_O_CLOEXEC 1 -#else -# define GNULIB_defined_O_CLOEXEC 0 -#endif - -#ifndef O_DIRECT -# define O_DIRECT 0 -#endif - -#ifndef O_DIRECTORY -# define O_DIRECTORY 0 -#endif - -#ifndef O_DSYNC -# define O_DSYNC 0 -#endif - -#ifndef O_EXEC -# define O_EXEC O_RDONLY /* This is often close enough in older systems. */ -#endif - -#ifndef O_IGNORE_CTTY -# define O_IGNORE_CTTY 0 -#endif - -#ifndef O_NDELAY -# define O_NDELAY 0 -#endif - -#ifndef O_NOATIME -# define O_NOATIME 0 -#endif - -#ifndef O_NONBLOCK -# define O_NONBLOCK O_NDELAY -#endif - -/* If the gnulib module 'nonblocking' is in use, guarantee a working non-zero - value of O_NONBLOCK. Otherwise, O_NONBLOCK is defined (above) to O_NDELAY - or to 0 as fallback. */ -#if @GNULIB_NONBLOCKING@ -# if O_NONBLOCK -# define GNULIB_defined_O_NONBLOCK 0 -# else -# define GNULIB_defined_O_NONBLOCK 1 -# undef O_NONBLOCK -# define O_NONBLOCK 0x40000000 -# endif -#endif - -#ifndef O_NOCTTY -# define O_NOCTTY 0 -#endif - -#ifndef O_NOFOLLOW -# define O_NOFOLLOW 0 -#endif - -#ifndef O_NOLINK -# define O_NOLINK 0 -#endif - -#ifndef O_NOLINKS -# define O_NOLINKS 0 -#endif - -#ifndef O_NOTRANS -# define O_NOTRANS 0 -#endif - -#ifndef O_RSYNC -# define O_RSYNC 0 -#endif - -#ifndef O_SEARCH -# define O_SEARCH O_RDONLY /* This is often close enough in older systems. */ -#endif - -#ifndef O_SYNC -# define O_SYNC 0 -#endif - -#ifndef O_TTY_INIT -# define O_TTY_INIT 0 -#endif - -#if ~O_ACCMODE & (O_RDONLY | O_WRONLY | O_RDWR | O_EXEC | O_SEARCH) -# undef O_ACCMODE -# define O_ACCMODE (O_RDONLY | O_WRONLY | O_RDWR | O_EXEC | O_SEARCH) -#endif - -/* For systems that distinguish between text and binary I/O. - O_BINARY is usually declared in fcntl.h */ -#if !defined O_BINARY && defined _O_BINARY - /* For MSC-compatible compilers. */ -# define O_BINARY _O_BINARY -# define O_TEXT _O_TEXT -#endif - -#if defined __BEOS__ || defined __HAIKU__ - /* BeOS 5 and Haiku have O_BINARY and O_TEXT, but they have no effect. */ -# undef O_BINARY -# undef O_TEXT -#endif - -#ifndef O_BINARY -# define O_BINARY 0 -# define O_TEXT 0 -#endif - -/* Fix up the AT_* macros. */ - -/* Work around a bug in Solaris 9 and 10: AT_FDCWD is positive. Its - value exceeds INT_MAX, so its use as an int doesn't conform to the - C standard, and GCC and Sun C complain in some cases. If the bug - is present, undef AT_FDCWD here, so it can be redefined below. */ -#if 0 < AT_FDCWD && AT_FDCWD == 0xffd19553 -# undef AT_FDCWD -#endif - -/* Use the same bit pattern as Solaris 9, but with the proper - signedness. The bit pattern is important, in case this actually is - Solaris with the above workaround. */ -#ifndef AT_FDCWD -# define AT_FDCWD (-3041965) -#endif - -/* Use the same values as Solaris 9. This shouldn't matter, but - there's no real reason to differ. */ -#ifndef AT_SYMLINK_NOFOLLOW -# define AT_SYMLINK_NOFOLLOW 4096 -#endif - -#ifndef AT_REMOVEDIR -# define AT_REMOVEDIR 1 -#endif - -/* Solaris 9 lacks these two, so just pick unique values. */ -#ifndef AT_SYMLINK_FOLLOW -# define AT_SYMLINK_FOLLOW 2 -#endif - -#ifndef AT_EACCESS -# define AT_EACCESS 4 -#endif - - -#endif /* _@GUARD_PREFIX@_FCNTL_H */ -#endif /* _@GUARD_PREFIX@_FCNTL_H */ -#endif diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/fd-hook.c b/thirdparty/grub-2.04/grub-core/lib/gnulib/fd-hook.c deleted file mode 100644 index 78791198f..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/fd-hook.c +++ /dev/null @@ -1,116 +0,0 @@ -/* Hook for making file descriptor functions close(), ioctl() extensible. - Copyright (C) 2009-2019 Free Software Foundation, Inc. - Written by Bruno Haible , 2009. - - This program is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published - by the Free Software Foundation; either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . */ - -#include - -/* Specification. */ -#include "fd-hook.h" - -#include - -/* Currently, this entire code is only needed for the handling of sockets - on native Windows platforms. */ -#if WINDOWS_SOCKETS - -/* The first and last link in the doubly linked list. - Initially the list is empty. */ -static struct fd_hook anchor = { &anchor, &anchor, NULL, NULL }; - -int -execute_close_hooks (const struct fd_hook *remaining_list, gl_close_fn primary, - int fd) -{ - if (remaining_list == &anchor) - /* End of list reached. */ - return primary (fd); - else - return remaining_list->private_close_fn (remaining_list->private_next, - primary, fd); -} - -int -execute_all_close_hooks (gl_close_fn primary, int fd) -{ - return execute_close_hooks (anchor.private_next, primary, fd); -} - -int -execute_ioctl_hooks (const struct fd_hook *remaining_list, gl_ioctl_fn primary, - int fd, int request, void *arg) -{ - if (remaining_list == &anchor) - /* End of list reached. */ - return primary (fd, request, arg); - else - return remaining_list->private_ioctl_fn (remaining_list->private_next, - primary, fd, request, arg); -} - -int -execute_all_ioctl_hooks (gl_ioctl_fn primary, - int fd, int request, void *arg) -{ - return execute_ioctl_hooks (anchor.private_next, primary, fd, request, arg); -} - -void -register_fd_hook (close_hook_fn close_hook, ioctl_hook_fn ioctl_hook, struct fd_hook *link) -{ - if (close_hook == NULL) - close_hook = execute_close_hooks; - if (ioctl_hook == NULL) - ioctl_hook = execute_ioctl_hooks; - - if (link->private_next == NULL && link->private_prev == NULL) - { - /* Add the link to the doubly linked list. */ - link->private_next = anchor.private_next; - link->private_prev = &anchor; - link->private_close_fn = close_hook; - link->private_ioctl_fn = ioctl_hook; - anchor.private_next->private_prev = link; - anchor.private_next = link; - } - else - { - /* The link is already in use. */ - if (link->private_close_fn != close_hook - || link->private_ioctl_fn != ioctl_hook) - abort (); - } -} - -void -unregister_fd_hook (struct fd_hook *link) -{ - struct fd_hook *next = link->private_next; - struct fd_hook *prev = link->private_prev; - - if (next != NULL && prev != NULL) - { - /* The link is in use. Remove it from the doubly linked list. */ - prev->private_next = next; - next->private_prev = prev; - /* Clear the link, to mark it unused. */ - link->private_next = NULL; - link->private_prev = NULL; - link->private_close_fn = NULL; - link->private_ioctl_fn = NULL; - } -} - -#endif diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/fd-hook.h b/thirdparty/grub-2.04/grub-core/lib/gnulib/fd-hook.h deleted file mode 100644 index bf07f0068..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/fd-hook.h +++ /dev/null @@ -1,119 +0,0 @@ -/* Hook for making file descriptor functions close(), ioctl() extensible. - Copyright (C) 2009-2019 Free Software Foundation, Inc. - - This program is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published - by the Free Software Foundation; either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . */ - - -#ifndef FD_HOOK_H -#define FD_HOOK_H - -#ifdef __cplusplus -extern "C" { -#endif - - -/* Currently, this entire code is only needed for the handling of sockets - on native Windows platforms. */ -#if WINDOWS_SOCKETS - - -/* Type of function that closes FD. */ -typedef int (*gl_close_fn) (int fd); - -/* Type of function that applies a control request to FD. */ -typedef int (*gl_ioctl_fn) (int fd, int request, void *arg); - -/* An element of the list of file descriptor hooks. - In CLOS (Common Lisp Object System) speak, it consists of an "around" - method for the close() function and an "around" method for the ioctl() - function. - The fields of this structure are considered private. */ -struct fd_hook -{ - /* Doubly linked list. */ - struct fd_hook *private_next; - struct fd_hook *private_prev; - /* Function that treats the types of FD that it knows about and calls - execute_close_hooks (REMAINING_LIST, PRIMARY, FD) as a fallback. */ - int (*private_close_fn) (const struct fd_hook *remaining_list, - gl_close_fn primary, - int fd); - /* Function that treats the types of FD that it knows about and calls - execute_ioctl_hooks (REMAINING_LIST, PRIMARY, FD, REQUEST, ARG) as a - fallback. */ - int (*private_ioctl_fn) (const struct fd_hook *remaining_list, - gl_ioctl_fn primary, - int fd, int request, void *arg); -}; - -/* This type of function closes FD, applying special knowledge for the FD - types it knows about, and calls - execute_close_hooks (REMAINING_LIST, PRIMARY, FD) - for the other FD types. - In CLOS speak, REMAINING_LIST is the remaining list of "around" methods, - and PRIMARY is the "primary" method for close(). */ -typedef int (*close_hook_fn) (const struct fd_hook *remaining_list, - gl_close_fn primary, - int fd); - -/* Execute the close hooks in REMAINING_LIST, with PRIMARY as "primary" method. - Return 0 or -1, like close() would do. */ -extern int execute_close_hooks (const struct fd_hook *remaining_list, - gl_close_fn primary, - int fd); - -/* Execute all close hooks, with PRIMARY as "primary" method. - Return 0 or -1, like close() would do. */ -extern int execute_all_close_hooks (gl_close_fn primary, int fd); - -/* This type of function applies a control request to FD, applying special - knowledge for the FD types it knows about, and calls - execute_ioctl_hooks (REMAINING_LIST, PRIMARY, FD, REQUEST, ARG) - for the other FD types. - In CLOS speak, REMAINING_LIST is the remaining list of "around" methods, - and PRIMARY is the "primary" method for ioctl(). */ -typedef int (*ioctl_hook_fn) (const struct fd_hook *remaining_list, - gl_ioctl_fn primary, - int fd, int request, void *arg); - -/* Execute the ioctl hooks in REMAINING_LIST, with PRIMARY as "primary" method. - Return 0 or -1, like ioctl() would do. */ -extern int execute_ioctl_hooks (const struct fd_hook *remaining_list, - gl_ioctl_fn primary, - int fd, int request, void *arg); - -/* Execute all ioctl hooks, with PRIMARY as "primary" method. - Return 0 or -1, like ioctl() would do. */ -extern int execute_all_ioctl_hooks (gl_ioctl_fn primary, - int fd, int request, void *arg); - -/* Add a function pair to the list of file descriptor hooks. - CLOSE_HOOK and IOCTL_HOOK may be NULL, indicating no change. - The LINK variable points to a piece of memory which is guaranteed to be - accessible until the corresponding call to unregister_fd_hook. */ -extern void register_fd_hook (close_hook_fn close_hook, ioctl_hook_fn ioctl_hook, - struct fd_hook *link); - -/* Removes a hook from the list of file descriptor hooks. */ -extern void unregister_fd_hook (struct fd_hook *link); - - -#endif - - -#ifdef __cplusplus -} -#endif - -#endif /* FD_HOOK_H */ diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/fd-safer-flag.c b/thirdparty/grub-2.04/grub-core/lib/gnulib/fd-safer-flag.c deleted file mode 100644 index 7c026ef54..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/fd-safer-flag.c +++ /dev/null @@ -1,52 +0,0 @@ -/* Adjust a file descriptor result so that it avoids clobbering - STD{IN,OUT,ERR}_FILENO, with specific flags. - - Copyright (C) 2005-2006, 2009-2019 Free Software Foundation, Inc. - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . */ - -/* Written by Paul Eggert and Eric Blake. */ - -#include - -/* Specification. */ -#include "unistd-safer.h" - -#include -#include - -/* Return FD, unless FD would be a copy of standard input, output, or - error; in that case, return a duplicate of FD, closing FD. If FLAG - contains O_CLOEXEC, the returned FD will have close-on-exec - semantics. On failure to duplicate, close FD, set errno, and - return -1. Preserve errno if FD is negative, so that the caller - can always inspect errno when the returned value is negative. - - This function is usefully wrapped around functions that return file - descriptors, e.g., fd_safer_flag (open ("file", O_RDONLY | flag), flag). */ - -int -fd_safer_flag (int fd, int flag) -{ - if (STDIN_FILENO <= fd && fd <= STDERR_FILENO) - { - int f = dup_safer_flag (fd, flag); - int e = errno; - close (fd); - errno = e; - fd = f; - } - - return fd; -} diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/fd-safer.c b/thirdparty/grub-2.04/grub-core/lib/gnulib/fd-safer.c deleted file mode 100644 index b5113e136..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/fd-safer.c +++ /dev/null @@ -1,49 +0,0 @@ -/* Return a safer copy of a file descriptor. - - Copyright (C) 2005-2006, 2009-2019 Free Software Foundation, Inc. - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . */ - -/* Written by Paul Eggert. */ - -#include - -#include "unistd-safer.h" - -#include -#include - -/* Return FD, unless FD would be a copy of standard input, output, or - error; in that case, return a duplicate of FD, closing FD. On - failure to duplicate, close FD, set errno, and return -1. Preserve - errno if FD is negative, so that the caller can always inspect - errno when the returned value is negative. - - This function is usefully wrapped around functions that return file - descriptors, e.g., fd_safer (open ("file", O_RDONLY)). */ - -int -fd_safer (int fd) -{ - if (STDIN_FILENO <= fd && fd <= STDERR_FILENO) - { - int f = dup_safer (fd); - int e = errno; - close (fd); - errno = e; - fd = f; - } - - return fd; -} diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/filename.h b/thirdparty/grub-2.04/grub-core/lib/gnulib/filename.h deleted file mode 100644 index 3ba31059f..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/filename.h +++ /dev/null @@ -1,54 +0,0 @@ -/* Basic filename support macros. - Copyright (C) 2001-2004, 2007-2019 Free Software Foundation, Inc. - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . */ - -#ifndef _FILENAME_H -#define _FILENAME_H - -#ifdef __cplusplus -extern "C" { -#endif - - -/* Pathname support. - ISSLASH(C) tests whether C is a directory separator character. - IS_ABSOLUTE_PATH(P) tests whether P is an absolute path. If it is not, - it may be concatenated to a directory pathname. - IS_PATH_WITH_DIR(P) tests whether P contains a directory specification. - */ -#if defined _WIN32 || defined __CYGWIN__ || defined __EMX__ || defined __DJGPP__ - /* Native Windows, Cygwin, OS/2, DOS */ -# define ISSLASH(C) ((C) == '/' || (C) == '\\') -# define HAS_DEVICE(P) \ - ((((P)[0] >= 'A' && (P)[0] <= 'Z') || ((P)[0] >= 'a' && (P)[0] <= 'z')) \ - && (P)[1] == ':') -# define IS_ABSOLUTE_PATH(P) (ISSLASH ((P)[0]) || HAS_DEVICE (P)) -# define IS_PATH_WITH_DIR(P) \ - (strchr (P, '/') != NULL || strchr (P, '\\') != NULL || HAS_DEVICE (P)) -# define FILE_SYSTEM_PREFIX_LEN(P) (HAS_DEVICE (P) ? 2 : 0) -#else - /* Unix */ -# define ISSLASH(C) ((C) == '/') -# define IS_ABSOLUTE_PATH(P) ISSLASH ((P)[0]) -# define IS_PATH_WITH_DIR(P) (strchr (P, '/') != NULL) -# define FILE_SYSTEM_PREFIX_LEN(P) 0 -#endif - - -#ifdef __cplusplus -} -#endif - -#endif /* _FILENAME_H */ diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/filenamecat-lgpl.c b/thirdparty/grub-2.04/grub-core/lib/gnulib/filenamecat-lgpl.c deleted file mode 100644 index 98b105a15..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/filenamecat-lgpl.c +++ /dev/null @@ -1,87 +0,0 @@ -/* Concatenate two arbitrary file names. - - Copyright (C) 1996-2007, 2009-2019 Free Software Foundation, Inc. - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . */ - -/* Written by Jim Meyering. */ - -#include - -/* Specification. */ -#include "filenamecat.h" - -#include -#include - -#include "dirname.h" - -#if ! HAVE_MEMPCPY && ! defined mempcpy -# define mempcpy(D, S, N) ((void *) ((char *) memcpy (D, S, N) + (N))) -#endif - -/* Concatenate two file name components, DIR and BASE, in - newly-allocated storage and return the result. - The resulting file name F is such that the commands "ls F" and "(cd - DIR; ls ./BASE)" refer to the same file. If necessary, put - a separator between DIR and BASE in the result. Typically this - separator is "/", but in rare cases it might be ".". - In any case, if BASE_IN_RESULT is non-NULL, set - *BASE_IN_RESULT to point to the copy of BASE at the end of the - returned concatenation. - - Return NULL if malloc fails. */ - -char * -mfile_name_concat (char const *dir, char const *base, char **base_in_result) -{ - char const *dirbase = last_component (dir); - size_t dirbaselen = base_len (dirbase); - size_t dirlen = dirbase - dir + dirbaselen; - size_t baselen = strlen (base); - char sep = '\0'; - if (dirbaselen) - { - /* DIR is not a file system root, so separate with / if needed. */ - if (! ISSLASH (dir[dirlen - 1]) && ! ISSLASH (*base)) - sep = '/'; - } - else if (ISSLASH (*base)) - { - /* DIR is a file system root and BASE begins with a slash, so - separate with ".". For example, if DIR is "/" and BASE is - "/foo" then return "/./foo", as "//foo" would be wrong on - some POSIX systems. A fancier algorithm could omit "." in - some cases but is not worth the trouble. */ - sep = '.'; - } - - char *p_concat = malloc (dirlen + (sep != '\0') + baselen + 1); - char *p; - - if (p_concat == NULL) - return NULL; - - p = mempcpy (p_concat, dir, dirlen); - *p = sep; - p += sep != '\0'; - - if (base_in_result) - *base_in_result = p; - - p = mempcpy (p, base, baselen); - *p = '\0'; - - return p_concat; -} diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/filenamecat.h b/thirdparty/grub-2.04/grub-core/lib/gnulib/filenamecat.h deleted file mode 100644 index 67b46b0a5..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/filenamecat.h +++ /dev/null @@ -1,27 +0,0 @@ -/* Concatenate two arbitrary file names. - - Copyright (C) 1996-1997, 2003, 2005, 2007, 2009-2019 Free Software - Foundation, Inc. - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . */ - -/* Written by Jim Meyering. */ - -#if GNULIB_FILENAMECAT -char *file_name_concat (char const *dir, char const *base, - char **base_in_result); -#endif - -char *mfile_name_concat (char const *dir, char const *base, - char **base_in_result); diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/flexmember.h b/thirdparty/grub-2.04/grub-core/lib/gnulib/flexmember.h deleted file mode 100644 index 0d65f6da6..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/flexmember.h +++ /dev/null @@ -1,45 +0,0 @@ -/* Sizes of structs with flexible array members. - - Copyright 2016-2019 Free Software Foundation, Inc. - - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU General Public - License as published by the Free Software Foundation; either - version 3 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - General Public License for more details. - - You should have received a copy of the GNU General Public - License along with the GNU C Library; if not, see - . - - Written by Paul Eggert. */ - -#include - -/* Nonzero multiple of alignment of TYPE, suitable for FLEXSIZEOF below. - On older platforms without _Alignof, use a pessimistic bound that is - safe in practice even if FLEXIBLE_ARRAY_MEMBER is 1. - On newer platforms, use _Alignof to get a tighter bound. */ - -#if !defined __STDC_VERSION__ || __STDC_VERSION__ < 201112 -# define FLEXALIGNOF(type) (sizeof (type) & ~ (sizeof (type) - 1)) -#else -# define FLEXALIGNOF(type) _Alignof (type) -#endif - -/* Upper bound on the size of a struct of type TYPE with a flexible - array member named MEMBER that is followed by N bytes of other data. - This is not simply sizeof (TYPE) + N, since it may require - alignment on unusually picky C11 platforms, and - FLEXIBLE_ARRAY_MEMBER may be 1 on pre-C11 platforms. - Yield a value less than N if and only if arithmetic overflow occurs. */ - -#define FLEXSIZEOF(type, member, n) \ - ((offsetof (type, member) + FLEXALIGNOF (type) - 1 + (n)) \ - & ~ (FLEXALIGNOF (type) - 1)) diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/float+.h b/thirdparty/grub-2.04/grub-core/lib/gnulib/float+.h deleted file mode 100644 index 5af861f7a..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/float+.h +++ /dev/null @@ -1,147 +0,0 @@ -/* Supplemental information about the floating-point formats. - Copyright (C) 2007, 2009-2019 Free Software Foundation, Inc. - Written by Bruno Haible , 2007. - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3, or (at your option) - any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, see . */ - -#ifndef _FLOATPLUS_H -#define _FLOATPLUS_H - -#include -#include - -/* Number of bits in the mantissa of a floating-point number, including the - "hidden bit". */ -#if FLT_RADIX == 2 -# define FLT_MANT_BIT FLT_MANT_DIG -# define DBL_MANT_BIT DBL_MANT_DIG -# define LDBL_MANT_BIT LDBL_MANT_DIG -#elif FLT_RADIX == 4 -# define FLT_MANT_BIT (FLT_MANT_DIG * 2) -# define DBL_MANT_BIT (DBL_MANT_DIG * 2) -# define LDBL_MANT_BIT (LDBL_MANT_DIG * 2) -#elif FLT_RADIX == 16 -# define FLT_MANT_BIT (FLT_MANT_DIG * 4) -# define DBL_MANT_BIT (DBL_MANT_DIG * 4) -# define LDBL_MANT_BIT (LDBL_MANT_DIG * 4) -#endif - -/* Bit mask that can be used to mask the exponent, as an unsigned number. */ -#define FLT_EXP_MASK ((FLT_MAX_EXP - FLT_MIN_EXP) | 7) -#define DBL_EXP_MASK ((DBL_MAX_EXP - DBL_MIN_EXP) | 7) -#define LDBL_EXP_MASK ((LDBL_MAX_EXP - LDBL_MIN_EXP) | 7) - -/* Number of bits used for the exponent of a floating-point number, including - the exponent's sign. */ -#define FLT_EXP_BIT \ - (FLT_EXP_MASK < 0x100 ? 8 : \ - FLT_EXP_MASK < 0x200 ? 9 : \ - FLT_EXP_MASK < 0x400 ? 10 : \ - FLT_EXP_MASK < 0x800 ? 11 : \ - FLT_EXP_MASK < 0x1000 ? 12 : \ - FLT_EXP_MASK < 0x2000 ? 13 : \ - FLT_EXP_MASK < 0x4000 ? 14 : \ - FLT_EXP_MASK < 0x8000 ? 15 : \ - FLT_EXP_MASK < 0x10000 ? 16 : \ - FLT_EXP_MASK < 0x20000 ? 17 : \ - FLT_EXP_MASK < 0x40000 ? 18 : \ - FLT_EXP_MASK < 0x80000 ? 19 : \ - FLT_EXP_MASK < 0x100000 ? 20 : \ - FLT_EXP_MASK < 0x200000 ? 21 : \ - FLT_EXP_MASK < 0x400000 ? 22 : \ - FLT_EXP_MASK < 0x800000 ? 23 : \ - FLT_EXP_MASK < 0x1000000 ? 24 : \ - FLT_EXP_MASK < 0x2000000 ? 25 : \ - FLT_EXP_MASK < 0x4000000 ? 26 : \ - FLT_EXP_MASK < 0x8000000 ? 27 : \ - FLT_EXP_MASK < 0x10000000 ? 28 : \ - FLT_EXP_MASK < 0x20000000 ? 29 : \ - FLT_EXP_MASK < 0x40000000 ? 30 : \ - FLT_EXP_MASK <= 0x7fffffff ? 31 : \ - 32) -#define DBL_EXP_BIT \ - (DBL_EXP_MASK < 0x100 ? 8 : \ - DBL_EXP_MASK < 0x200 ? 9 : \ - DBL_EXP_MASK < 0x400 ? 10 : \ - DBL_EXP_MASK < 0x800 ? 11 : \ - DBL_EXP_MASK < 0x1000 ? 12 : \ - DBL_EXP_MASK < 0x2000 ? 13 : \ - DBL_EXP_MASK < 0x4000 ? 14 : \ - DBL_EXP_MASK < 0x8000 ? 15 : \ - DBL_EXP_MASK < 0x10000 ? 16 : \ - DBL_EXP_MASK < 0x20000 ? 17 : \ - DBL_EXP_MASK < 0x40000 ? 18 : \ - DBL_EXP_MASK < 0x80000 ? 19 : \ - DBL_EXP_MASK < 0x100000 ? 20 : \ - DBL_EXP_MASK < 0x200000 ? 21 : \ - DBL_EXP_MASK < 0x400000 ? 22 : \ - DBL_EXP_MASK < 0x800000 ? 23 : \ - DBL_EXP_MASK < 0x1000000 ? 24 : \ - DBL_EXP_MASK < 0x2000000 ? 25 : \ - DBL_EXP_MASK < 0x4000000 ? 26 : \ - DBL_EXP_MASK < 0x8000000 ? 27 : \ - DBL_EXP_MASK < 0x10000000 ? 28 : \ - DBL_EXP_MASK < 0x20000000 ? 29 : \ - DBL_EXP_MASK < 0x40000000 ? 30 : \ - DBL_EXP_MASK <= 0x7fffffff ? 31 : \ - 32) -#define LDBL_EXP_BIT \ - (LDBL_EXP_MASK < 0x100 ? 8 : \ - LDBL_EXP_MASK < 0x200 ? 9 : \ - LDBL_EXP_MASK < 0x400 ? 10 : \ - LDBL_EXP_MASK < 0x800 ? 11 : \ - LDBL_EXP_MASK < 0x1000 ? 12 : \ - LDBL_EXP_MASK < 0x2000 ? 13 : \ - LDBL_EXP_MASK < 0x4000 ? 14 : \ - LDBL_EXP_MASK < 0x8000 ? 15 : \ - LDBL_EXP_MASK < 0x10000 ? 16 : \ - LDBL_EXP_MASK < 0x20000 ? 17 : \ - LDBL_EXP_MASK < 0x40000 ? 18 : \ - LDBL_EXP_MASK < 0x80000 ? 19 : \ - LDBL_EXP_MASK < 0x100000 ? 20 : \ - LDBL_EXP_MASK < 0x200000 ? 21 : \ - LDBL_EXP_MASK < 0x400000 ? 22 : \ - LDBL_EXP_MASK < 0x800000 ? 23 : \ - LDBL_EXP_MASK < 0x1000000 ? 24 : \ - LDBL_EXP_MASK < 0x2000000 ? 25 : \ - LDBL_EXP_MASK < 0x4000000 ? 26 : \ - LDBL_EXP_MASK < 0x8000000 ? 27 : \ - LDBL_EXP_MASK < 0x10000000 ? 28 : \ - LDBL_EXP_MASK < 0x20000000 ? 29 : \ - LDBL_EXP_MASK < 0x40000000 ? 30 : \ - LDBL_EXP_MASK <= 0x7fffffff ? 31 : \ - 32) - -/* Number of bits used for a floating-point number: the mantissa (not - counting the "hidden bit", since it may or may not be explicit), the - exponent, and the sign. */ -#define FLT_TOTAL_BIT ((FLT_MANT_BIT - 1) + FLT_EXP_BIT + 1) -#define DBL_TOTAL_BIT ((DBL_MANT_BIT - 1) + DBL_EXP_BIT + 1) -#define LDBL_TOTAL_BIT ((LDBL_MANT_BIT - 1) + LDBL_EXP_BIT + 1) - -/* Number of bytes used for a floating-point number. - This can be smaller than the 'sizeof'. For example, on i386 systems, - 'long double' most often have LDBL_MANT_BIT = 64, LDBL_EXP_BIT = 16, hence - LDBL_TOTAL_BIT = 80 bits, i.e. 10 bytes of consecutive memory, but - sizeof (long double) = 12 or = 16. */ -#define SIZEOF_FLT ((FLT_TOTAL_BIT + CHAR_BIT - 1) / CHAR_BIT) -#define SIZEOF_DBL ((DBL_TOTAL_BIT + CHAR_BIT - 1) / CHAR_BIT) -#define SIZEOF_LDBL ((LDBL_TOTAL_BIT + CHAR_BIT - 1) / CHAR_BIT) - -/* Verify that SIZEOF_FLT <= sizeof (float) etc. */ -typedef int verify_sizeof_flt[SIZEOF_FLT <= sizeof (float) ? 1 : -1]; -typedef int verify_sizeof_dbl[SIZEOF_DBL <= sizeof (double) ? 1 : - 1]; -typedef int verify_sizeof_ldbl[SIZEOF_LDBL <= sizeof (long double) ? 1 : - 1]; - -#endif /* _FLOATPLUS_H */ diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/float.c b/thirdparty/grub-2.04/grub-core/lib/gnulib/float.c deleted file mode 100644 index 8872deb59..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/float.c +++ /dev/null @@ -1,33 +0,0 @@ -/* Auxiliary definitions for . - Copyright (C) 2011-2019 Free Software Foundation, Inc. - Written by Bruno Haible , 2011. - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . */ - -#include - -/* Specification. */ -#include - -#if (defined _ARCH_PPC || defined _POWER) && (defined _AIX || defined __linux__) && (LDBL_MANT_DIG == 106) && defined __GNUC__ -const union gl_long_double_union gl_LDBL_MAX = - { { DBL_MAX, DBL_MAX / (double)134217728UL / (double)134217728UL } }; -#elif defined __i386__ -const union gl_long_double_union gl_LDBL_MAX = - { { 0xFFFFFFFF, 0xFFFFFFFF, 32766 } }; -#else -/* This declaration is solely to ensure that after preprocessing - this file is never empty. */ -typedef int dummy; -#endif diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/float.in.h b/thirdparty/grub-2.04/grub-core/lib/gnulib/float.in.h deleted file mode 100644 index ba094a8ef..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/float.in.h +++ /dev/null @@ -1,188 +0,0 @@ -/* A correct . - - Copyright (C) 2007-2019 Free Software Foundation, Inc. - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . */ - -#ifndef _@GUARD_PREFIX@_FLOAT_H - -#if __GNUC__ >= 3 -@PRAGMA_SYSTEM_HEADER@ -#endif -@PRAGMA_COLUMNS@ - -/* The include_next requires a split double-inclusion guard. */ -#@INCLUDE_NEXT@ @NEXT_FLOAT_H@ - -#ifndef _@GUARD_PREFIX@_FLOAT_H -#define _@GUARD_PREFIX@_FLOAT_H - -/* 'long double' properties. */ - -#if defined __i386__ && (defined __BEOS__ || defined __OpenBSD__) -/* Number of mantissa units, in base FLT_RADIX. */ -# undef LDBL_MANT_DIG -# define LDBL_MANT_DIG 64 -/* Number of decimal digits that is sufficient for representing a number. */ -# undef LDBL_DIG -# define LDBL_DIG 18 -/* x-1 where x is the smallest representable number > 1. */ -# undef LDBL_EPSILON -# define LDBL_EPSILON 1.0842021724855044340E-19L -/* Minimum e such that FLT_RADIX^(e-1) is a normalized number. */ -# undef LDBL_MIN_EXP -# define LDBL_MIN_EXP (-16381) -/* Maximum e such that FLT_RADIX^(e-1) is a representable finite number. */ -# undef LDBL_MAX_EXP -# define LDBL_MAX_EXP 16384 -/* Minimum positive normalized number. */ -# undef LDBL_MIN -# define LDBL_MIN 3.3621031431120935063E-4932L -/* Maximum representable finite number. */ -# undef LDBL_MAX -# define LDBL_MAX 1.1897314953572317650E+4932L -/* Minimum e such that 10^e is in the range of normalized numbers. */ -# undef LDBL_MIN_10_EXP -# define LDBL_MIN_10_EXP (-4931) -/* Maximum e such that 10^e is in the range of representable finite numbers. */ -# undef LDBL_MAX_10_EXP -# define LDBL_MAX_10_EXP 4932 -#endif - -/* On FreeBSD/x86 6.4, the 'long double' type really has only 53 bits of - precision in the compiler but 64 bits of precision at runtime. See - . */ -#if defined __i386__ && (defined __FreeBSD__ || defined __DragonFly__) -/* Number of mantissa units, in base FLT_RADIX. */ -# undef LDBL_MANT_DIG -# define LDBL_MANT_DIG 64 -/* Number of decimal digits that is sufficient for representing a number. */ -# undef LDBL_DIG -# define LDBL_DIG 18 -/* x-1 where x is the smallest representable number > 1. */ -# undef LDBL_EPSILON -# define LDBL_EPSILON 1.084202172485504434007452800869941711426e-19L /* 2^-63 */ -/* Minimum e such that FLT_RADIX^(e-1) is a normalized number. */ -# undef LDBL_MIN_EXP -# define LDBL_MIN_EXP (-16381) -/* Maximum e such that FLT_RADIX^(e-1) is a representable finite number. */ -# undef LDBL_MAX_EXP -# define LDBL_MAX_EXP 16384 -/* Minimum positive normalized number. */ -# undef LDBL_MIN -# define LDBL_MIN 3.362103143112093506262677817321752E-4932L /* = 0x1p-16382L */ -/* Maximum representable finite number. */ -# undef LDBL_MAX -/* LDBL_MAX is represented as { 0xFFFFFFFF, 0xFFFFFFFF, 32766 }. - But the largest literal that GCC allows us to write is - 0x0.fffffffffffff8p16384L = { 0xFFFFF800, 0xFFFFFFFF, 32766 }. - So, define it like this through a reference to an external variable - - const unsigned int LDBL_MAX[3] = { 0xFFFFFFFF, 0xFFFFFFFF, 32766 }; - extern const long double LDBL_MAX; - - Unfortunately, this is not a constant expression. */ -union gl_long_double_union - { - struct { unsigned int lo; unsigned int hi; unsigned int exponent; } xd; - long double ld; - }; -extern const union gl_long_double_union gl_LDBL_MAX; -# define LDBL_MAX (gl_LDBL_MAX.ld) -/* Minimum e such that 10^e is in the range of normalized numbers. */ -# undef LDBL_MIN_10_EXP -# define LDBL_MIN_10_EXP (-4931) -/* Maximum e such that 10^e is in the range of representable finite numbers. */ -# undef LDBL_MAX_10_EXP -# define LDBL_MAX_10_EXP 4932 -#endif - -/* On AIX 7.1 with gcc 4.2, the values of LDBL_MIN_EXP, LDBL_MIN, LDBL_MAX are - wrong. - On Linux/PowerPC with gcc 4.4, the value of LDBL_MAX is wrong. */ -#if (defined _ARCH_PPC || defined _POWER) && defined _AIX && (LDBL_MANT_DIG == 106) && defined __GNUC__ -# undef LDBL_MIN_EXP -# define LDBL_MIN_EXP DBL_MIN_EXP -# undef LDBL_MIN_10_EXP -# define LDBL_MIN_10_EXP DBL_MIN_10_EXP -# undef LDBL_MIN -# define LDBL_MIN 2.22507385850720138309023271733240406422e-308L /* DBL_MIN = 2^-1022 */ -#endif -#if (defined _ARCH_PPC || defined _POWER) && (defined _AIX || defined __linux__) && (LDBL_MANT_DIG == 106) && defined __GNUC__ -# undef LDBL_MAX -/* LDBL_MAX is represented as { 0x7FEFFFFF, 0xFFFFFFFF, 0x7C8FFFFF, 0xFFFFFFFF }. - It is not easy to define: - #define LDBL_MAX 1.79769313486231580793728971405302307166e308L - is too small, whereas - #define LDBL_MAX 1.79769313486231580793728971405302307167e308L - is too large. Apparently a bug in GCC decimal-to-binary conversion. - Also, I can't get values larger than - #define LDBL63 ((long double) (1ULL << 63)) - #define LDBL882 (LDBL63 * LDBL63 * LDBL63 * LDBL63 * LDBL63 * LDBL63 * LDBL63 * LDBL63 * LDBL63 * LDBL63 * LDBL63 * LDBL63 * LDBL63 * LDBL63) - #define LDBL945 (LDBL63 * LDBL63 * LDBL63 * LDBL63 * LDBL63 * LDBL63 * LDBL63 * LDBL63 * LDBL63 * LDBL63 * LDBL63 * LDBL63 * LDBL63 * LDBL63 * LDBL63) - #define LDBL1008 (LDBL63 * LDBL63 * LDBL63 * LDBL63 * LDBL63 * LDBL63 * LDBL63 * LDBL63 * LDBL63 * LDBL63 * LDBL63 * LDBL63 * LDBL63 * LDBL63 * LDBL63 * LDBL63) - #define LDBL_MAX (LDBL1008 * 65535.0L + LDBL945 * (long double) 9223372036821221375ULL + LDBL882 * (long double) 4611686018427387904ULL) - which is represented as { 0x7FEFFFFF, 0xFFFFFFFF, 0x7C8FFFFF, 0xF8000000 }. - So, define it like this through a reference to an external variable - - const double LDBL_MAX[2] = { DBL_MAX, DBL_MAX / (double)134217728UL / (double)134217728UL }; - extern const long double LDBL_MAX; - - or through a pointer cast - - #define LDBL_MAX \ - (*(const long double *) (double[]) { DBL_MAX, DBL_MAX / (double)134217728UL / (double)134217728UL }) - - Unfortunately, this is not a constant expression, and the latter expression - does not work well when GCC is optimizing.. */ -union gl_long_double_union - { - struct { double hi; double lo; } dd; - long double ld; - }; -extern const union gl_long_double_union gl_LDBL_MAX; -# define LDBL_MAX (gl_LDBL_MAX.ld) -#endif - -/* On IRIX 6.5, with cc, the value of LDBL_MANT_DIG is wrong. - On IRIX 6.5, with gcc 4.2, the values of LDBL_MIN_EXP, LDBL_MIN, LDBL_EPSILON - are wrong. */ -#if defined __sgi && (LDBL_MANT_DIG >= 106) -# undef LDBL_MANT_DIG -# define LDBL_MANT_DIG 106 -# if defined __GNUC__ -# undef LDBL_MIN_EXP -# define LDBL_MIN_EXP DBL_MIN_EXP -# undef LDBL_MIN_10_EXP -# define LDBL_MIN_10_EXP DBL_MIN_10_EXP -# undef LDBL_MIN -# define LDBL_MIN 2.22507385850720138309023271733240406422e-308L /* DBL_MIN = 2^-1022 */ -# undef LDBL_EPSILON -# define LDBL_EPSILON 2.46519032881566189191165176650870696773e-32L /* 2^-105 */ -# endif -#endif - -#if @REPLACE_ITOLD@ -/* Pull in a function that fixes the 'int' to 'long double' conversion - of glibc 2.7. */ -extern -# ifdef __cplusplus -"C" -# endif -void _Qp_itoq (long double *, int); -static void (*_gl_float_fix_itold) (long double *, int) = _Qp_itoq; -#endif - -#endif /* _@GUARD_PREFIX@_FLOAT_H */ -#endif /* _@GUARD_PREFIX@_FLOAT_H */ diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/fnmatch.c b/thirdparty/grub-2.04/grub-core/lib/gnulib/fnmatch.c deleted file mode 100644 index dbcd29069..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/fnmatch.c +++ /dev/null @@ -1,356 +0,0 @@ -/* Copyright (C) 1991-1993, 1996-2007, 2009-2019 Free Software Foundation, Inc. - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3, or (at your option) - any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, see . */ - -#ifndef _LIBC -# include -#endif - -/* Enable GNU extensions in fnmatch.h. */ -#ifndef _GNU_SOURCE -# define _GNU_SOURCE 1 -#endif - -#include - -#include -#include -#include -#include -#include -#include -#include -#include - -#define WIDE_CHAR_SUPPORT \ - (HAVE_WCTYPE_H && HAVE_BTOWC && HAVE_ISWCTYPE \ - && HAVE_WMEMCHR && (HAVE_WMEMCPY || HAVE_WMEMPCPY)) - -/* For platform which support the ISO C amendment 1 functionality we - support user defined character classes. */ -#if defined _LIBC || WIDE_CHAR_SUPPORT -# include -# include -#endif - -/* We need some of the locale data (the collation sequence information) - but there is no interface to get this information in general. Therefore - we support a correct implementation only in glibc. */ -#ifdef _LIBC -# include "../locale/localeinfo.h" -# include "../locale/elem-hash.h" -# include "../locale/coll-lookup.h" -# include - -# define CONCAT(a,b) __CONCAT(a,b) -# define mbsrtowcs __mbsrtowcs -# define fnmatch __fnmatch -extern int fnmatch (const char *pattern, const char *string, int flags); -#endif - -#ifndef SIZE_MAX -# define SIZE_MAX ((size_t) -1) -#endif - -#include "flexmember.h" - -#ifndef FALLTHROUGH -# if __GNUC__ < 7 -# define FALLTHROUGH ((void) 0) -# else -# define FALLTHROUGH __attribute__ ((__fallthrough__)) -# endif -#endif - -/* We often have to test for FNM_FILE_NAME and FNM_PERIOD being both set. */ -#define NO_LEADING_PERIOD(flags) \ - ((flags & (FNM_FILE_NAME | FNM_PERIOD)) == (FNM_FILE_NAME | FNM_PERIOD)) - -/* Comment out all this code if we are using the GNU C Library, and are not - actually compiling the library itself, and have not detected a bug - in the library. This code is part of the GNU C - Library, but also included in many other GNU distributions. Compiling - and linking in this code is a waste when using the GNU C library - (especially if it is a shared library). Rather than having every GNU - program understand 'configure --with-gnu-libc' and omit the object files, - it is simpler to just do this in the source for each such file. */ - -#if defined _LIBC || !defined __GNU_LIBRARY__ || !HAVE_FNMATCH_GNU - - -# if ! (defined isblank || (HAVE_ISBLANK && HAVE_DECL_ISBLANK)) -# define isblank(c) ((c) == ' ' || (c) == '\t') -# endif - -# define STREQ(s1, s2) (strcmp (s1, s2) == 0) - -# if defined _LIBC || WIDE_CHAR_SUPPORT -/* The GNU C library provides support for user-defined character classes - and the functions from ISO C amendment 1. */ -# ifdef CHARCLASS_NAME_MAX -# define CHAR_CLASS_MAX_LENGTH CHARCLASS_NAME_MAX -# else -/* This shouldn't happen but some implementation might still have this - problem. Use a reasonable default value. */ -# define CHAR_CLASS_MAX_LENGTH 256 -# endif - -# ifdef _LIBC -# define IS_CHAR_CLASS(string) __wctype (string) -# else -# define IS_CHAR_CLASS(string) wctype (string) -# endif - -# ifdef _LIBC -# define ISWCTYPE(WC, WT) __iswctype (WC, WT) -# else -# define ISWCTYPE(WC, WT) iswctype (WC, WT) -# endif - -# if (HAVE_MBSTATE_T && HAVE_MBSRTOWCS) || _LIBC -/* In this case we are implementing the multibyte character handling. */ -# define HANDLE_MULTIBYTE 1 -# endif - -# else -# define CHAR_CLASS_MAX_LENGTH 6 /* Namely, 'xdigit'. */ - -# define IS_CHAR_CLASS(string) \ - (STREQ (string, "alpha") || STREQ (string, "upper") \ - || STREQ (string, "lower") || STREQ (string, "digit") \ - || STREQ (string, "alnum") || STREQ (string, "xdigit") \ - || STREQ (string, "space") || STREQ (string, "print") \ - || STREQ (string, "punct") || STREQ (string, "graph") \ - || STREQ (string, "cntrl") || STREQ (string, "blank")) -# endif - -/* Avoid depending on library functions or files - whose names are inconsistent. */ - -/* Global variable. */ -static int posixly_correct; - -# ifndef internal_function -/* Inside GNU libc we mark some function in a special way. In other - environments simply ignore the marking. */ -# define internal_function -# endif - -/* Note that this evaluates C many times. */ -# define FOLD(c) ((flags & FNM_CASEFOLD) ? tolower (c) : (c)) -# define CHAR char -# define UCHAR unsigned char -# define INT int -# define FCT internal_fnmatch -# define EXT ext_match -# define END end_pattern -# define L_(CS) CS -# ifdef _LIBC -# define BTOWC(C) __btowc (C) -# else -# define BTOWC(C) btowc (C) -# endif -# define STRLEN(S) strlen (S) -# define STRCAT(D, S) strcat (D, S) -# ifdef _LIBC -# define MEMPCPY(D, S, N) __mempcpy (D, S, N) -# else -# if HAVE_MEMPCPY -# define MEMPCPY(D, S, N) mempcpy (D, S, N) -# else -# define MEMPCPY(D, S, N) ((void *) ((char *) memcpy (D, S, N) + (N))) -# endif -# endif -# define MEMCHR(S, C, N) memchr (S, C, N) -# include "fnmatch_loop.c" - - -# if HANDLE_MULTIBYTE -# define FOLD(c) ((flags & FNM_CASEFOLD) ? towlower (c) : (c)) -# define CHAR wchar_t -# define UCHAR wint_t -# define INT wint_t -# define FCT internal_fnwmatch -# define EXT ext_wmatch -# define END end_wpattern -# define L_(CS) L##CS -# define BTOWC(C) (C) -# ifdef _LIBC -# define STRLEN(S) __wcslen (S) -# define STRCAT(D, S) __wcscat (D, S) -# define MEMPCPY(D, S, N) __wmempcpy (D, S, N) -# else -# define STRLEN(S) wcslen (S) -# define STRCAT(D, S) wcscat (D, S) -# if HAVE_WMEMPCPY -# define MEMPCPY(D, S, N) wmempcpy (D, S, N) -# else -# define MEMPCPY(D, S, N) (wmemcpy (D, S, N) + (N)) -# endif -# endif -# define MEMCHR(S, C, N) wmemchr (S, C, N) -# define WIDE_CHAR_VERSION 1 - -# undef IS_CHAR_CLASS -/* We have to convert the wide character string in a multibyte string. But - we know that the character class names consist of alphanumeric characters - from the portable character set, and since the wide character encoding - for a member of the portable character set is the same code point as - its single-byte encoding, we can use a simplified method to convert the - string to a multibyte character string. */ -static wctype_t -is_char_class (const wchar_t *wcs) -{ - char s[CHAR_CLASS_MAX_LENGTH + 1]; - char *cp = s; - - do - { - /* Test for a printable character from the portable character set. */ -# ifdef _LIBC - if (*wcs < 0x20 || *wcs > 0x7e - || *wcs == 0x24 || *wcs == 0x40 || *wcs == 0x60) - return (wctype_t) 0; -# else - switch (*wcs) - { - case L' ': case L'!': case L'"': case L'#': case L'%': - case L'&': case L'\'': case L'(': case L')': case L'*': - case L'+': case L',': case L'-': case L'.': case L'/': - case L'0': case L'1': case L'2': case L'3': case L'4': - case L'5': case L'6': case L'7': case L'8': case L'9': - case L':': case L';': case L'<': case L'=': case L'>': - case L'?': - case L'A': case L'B': case L'C': case L'D': case L'E': - case L'F': case L'G': case L'H': case L'I': case L'J': - case L'K': case L'L': case L'M': case L'N': case L'O': - case L'P': case L'Q': case L'R': case L'S': case L'T': - case L'U': case L'V': case L'W': case L'X': case L'Y': - case L'Z': - case L'[': case L'\\': case L']': case L'^': case L'_': - case L'a': case L'b': case L'c': case L'd': case L'e': - case L'f': case L'g': case L'h': case L'i': case L'j': - case L'k': case L'l': case L'm': case L'n': case L'o': - case L'p': case L'q': case L'r': case L's': case L't': - case L'u': case L'v': case L'w': case L'x': case L'y': - case L'z': case L'{': case L'|': case L'}': case L'~': - break; - default: - return (wctype_t) 0; - } -# endif - - /* Avoid overrunning the buffer. */ - if (cp == s + CHAR_CLASS_MAX_LENGTH) - return (wctype_t) 0; - - *cp++ = (char) *wcs++; - } - while (*wcs != L'\0'); - - *cp = '\0'; - -# ifdef _LIBC - return __wctype (s); -# else - return wctype (s); -# endif -} -# define IS_CHAR_CLASS(string) is_char_class (string) - -# include "fnmatch_loop.c" -# endif - - -int -fnmatch (const char *pattern, const char *string, int flags) -{ -# if HANDLE_MULTIBYTE -# define ALLOCA_LIMIT 2000 - if (__builtin_expect (MB_CUR_MAX, 1) != 1) - { - mbstate_t ps; - size_t patsize; - size_t strsize; - size_t totsize; - wchar_t *wpattern; - wchar_t *wstring; - int res; - - /* Calculate the size needed to convert the strings to - wide characters. */ - memset (&ps, '\0', sizeof (ps)); - patsize = mbsrtowcs (NULL, &pattern, 0, &ps) + 1; - if (__builtin_expect (patsize != 0, 1)) - { - assert (mbsinit (&ps)); - strsize = mbsrtowcs (NULL, &string, 0, &ps) + 1; - if (__builtin_expect (strsize != 0, 1)) - { - assert (mbsinit (&ps)); - totsize = patsize + strsize; - if (__builtin_expect (! (patsize <= totsize - && totsize <= SIZE_MAX / sizeof (wchar_t)), - 0)) - { - errno = ENOMEM; - return -1; - } - - /* Allocate room for the wide characters. */ - if (__builtin_expect (totsize < ALLOCA_LIMIT, 1)) - wpattern = (wchar_t *) alloca (totsize * sizeof (wchar_t)); - else - { - wpattern = malloc (totsize * sizeof (wchar_t)); - if (__builtin_expect (! wpattern, 0)) - { - errno = ENOMEM; - return -1; - } - } - wstring = wpattern + patsize; - - /* Convert the strings into wide characters. */ - mbsrtowcs (wpattern, &pattern, patsize, &ps); - assert (mbsinit (&ps)); - mbsrtowcs (wstring, &string, strsize, &ps); - - res = internal_fnwmatch (wpattern, wstring, wstring + strsize - 1, - flags & FNM_PERIOD, flags); - - if (__builtin_expect (! (totsize < ALLOCA_LIMIT), 0)) - free (wpattern); - return res; - } - } - } - -# endif /* HANDLE_MULTIBYTE */ - - return internal_fnmatch (pattern, string, string + strlen (string), - flags & FNM_PERIOD, flags); -} - -# ifdef _LIBC -# undef fnmatch -versioned_symbol (libc, __fnmatch, fnmatch, GLIBC_2_2_3); -# if SHLIB_COMPAT(libc, GLIBC_2_0, GLIBC_2_2_3) -strong_alias (__fnmatch, __fnmatch_old) -compat_symbol (libc, __fnmatch_old, fnmatch, GLIBC_2_0); -# endif -libc_hidden_ver (__fnmatch, fnmatch) -# endif - -#endif /* _LIBC or not __GNU_LIBRARY__. */ diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/fnmatch.in.h b/thirdparty/grub-2.04/grub-core/lib/gnulib/fnmatch.in.h deleted file mode 100644 index 2ead7828a..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/fnmatch.in.h +++ /dev/null @@ -1,110 +0,0 @@ -/* Substitute for and wrapper around . - Copyright (C) 1991-1993, 1996-1999, 2001-2003, 2005, 2007, 2009-2019 Free - Software Foundation, Inc. - - This file is part of the GNU C Library. - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3, or (at your option) - any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, see . */ - -#ifndef _@GUARD_PREFIX@_FNMATCH_H - -#if __GNUC__ >= 3 -@PRAGMA_SYSTEM_HEADER@ -#endif -@PRAGMA_COLUMNS@ - -/* The include_next requires a split double-inclusion guard. */ -#if @HAVE_FNMATCH_H@ && !@REPLACE_FNMATCH@ -# @INCLUDE_NEXT@ @NEXT_FNMATCH_H@ -#endif - -#ifndef _@GUARD_PREFIX@_FNMATCH_H -#define _@GUARD_PREFIX@_FNMATCH_H - -/* The definitions of _GL_FUNCDECL_RPL etc. are copied here. */ - -/* The definition of _GL_ARG_NONNULL is copied here. */ - -/* The definition of _GL_WARN_ON_USE is copied here. */ - -#if !@HAVE_FNMATCH_H@ || @REPLACE_FNMATCH@ - -/* We #undef these before defining them because some losing systems - (HP-UX A.08.07 for example) define these in . */ -#undef FNM_PATHNAME -#undef FNM_NOESCAPE -#undef FNM_PERIOD - -/* Bits set in the FLAGS argument to 'fnmatch'. */ -#define FNM_PATHNAME (1 << 0) /* No wildcard can ever match '/'. */ -#define FNM_NOESCAPE (1 << 1) /* Backslashes don't quote special chars. */ -#define FNM_PERIOD (1 << 2) /* Leading '.' is matched only explicitly. */ - -#if !defined _POSIX_C_SOURCE || _POSIX_C_SOURCE < 2 || defined _GNU_SOURCE -# define FNM_FILE_NAME FNM_PATHNAME /* Preferred GNU name. */ -# define FNM_LEADING_DIR (1 << 3) /* Ignore '/...' after a match. */ -# define FNM_CASEFOLD (1 << 4) /* Compare without regard to case. */ -# define FNM_EXTMATCH (1 << 5) /* Use ksh-like extended matching. */ -#endif - -/* Value returned by 'fnmatch' if STRING does not match PATTERN. */ -#define FNM_NOMATCH 1 - -/* This value is returned if the implementation does not support - 'fnmatch'. Since this is not the case here it will never be - returned but the conformance test suites still require the symbol - to be defined. */ -#ifdef _XOPEN_SOURCE -# define FNM_NOSYS (-1) -#endif - -#endif - - -#if @GNULIB_FNMATCH@ -/* Match NAME against the file name pattern PATTERN, - returning zero if it matches, FNM_NOMATCH if not. */ -# if @REPLACE_FNMATCH@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# define fnmatch rpl_fnmatch -# endif -_GL_FUNCDECL_RPL (fnmatch, int, - (const char *pattern, const char *name, int flags) - _GL_ARG_NONNULL ((1, 2))); -_GL_CXXALIAS_RPL (fnmatch, int, - (const char *pattern, const char *name, int flags)); -# else -# if !@HAVE_FNMATCH@ -_GL_FUNCDECL_SYS (fnmatch, int, - (const char *pattern, const char *name, int flags) - _GL_ARG_NONNULL ((1, 2))); -# endif -_GL_CXXALIAS_SYS (fnmatch, int, - (const char *pattern, const char *name, int flags)); -# endif -# if !GNULIB_FNMATCH_GNU -_GL_CXXALIASWARN (fnmatch); -# endif -#elif defined GNULIB_POSIXCHECK -# undef fnmatch -# if HAVE_RAW_DECL_FNMATCH -_GL_WARN_ON_USE (fnmatch, - "fnmatch does not portably work - " - "use gnulib module fnmatch for portability or gnulib module fnmatch-gnu for a glibc compatible implementation"); -# endif -#endif - - -#endif /* _@GUARD_PREFIX@_FNMATCH_H */ -#endif /* _@GUARD_PREFIX@_FNMATCH_H */ diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/fnmatch_loop.c b/thirdparty/grub-2.04/grub-core/lib/gnulib/fnmatch_loop.c deleted file mode 100644 index 82a7ceed7..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/fnmatch_loop.c +++ /dev/null @@ -1,1217 +0,0 @@ -/* Copyright (C) 1991-1993, 1996-2006, 2009-2019 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3, or (at your option) - any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, see . */ - -/* Match STRING against the file name pattern PATTERN, returning zero if - it matches, nonzero if not. */ -static int EXT (INT opt, const CHAR *pattern, const CHAR *string, - const CHAR *string_end, bool no_leading_period, int flags) - internal_function; -static const CHAR *END (const CHAR *patternp) internal_function; - -static int -internal_function -FCT (const CHAR *pattern, const CHAR *string, const CHAR *string_end, - bool no_leading_period, int flags) -{ - register const CHAR *p = pattern, *n = string; - register UCHAR c; -#ifdef _LIBC -# if WIDE_CHAR_VERSION - const char *collseq = (const char *) - _NL_CURRENT(LC_COLLATE, _NL_COLLATE_COLLSEQWC); -# else - const UCHAR *collseq = (const UCHAR *) - _NL_CURRENT(LC_COLLATE, _NL_COLLATE_COLLSEQMB); -# endif -#endif - - while ((c = *p++) != L_('\0')) - { - bool new_no_leading_period = false; - c = FOLD (c); - - switch (c) - { - case L_('?'): - if (__builtin_expect (flags & FNM_EXTMATCH, 0) && *p == '(') - { - int res; - - res = EXT (c, p, n, string_end, no_leading_period, - flags); - if (res != -1) - return res; - } - - if (n == string_end) - return FNM_NOMATCH; - else if (*n == L_('/') && (flags & FNM_FILE_NAME)) - return FNM_NOMATCH; - else if (*n == L_('.') && no_leading_period) - return FNM_NOMATCH; - break; - - case L_('\\'): - if (!(flags & FNM_NOESCAPE)) - { - c = *p++; - if (c == L_('\0')) - /* Trailing \ loses. */ - return FNM_NOMATCH; - c = FOLD (c); - } - if (n == string_end || FOLD ((UCHAR) *n) != c) - return FNM_NOMATCH; - break; - - case L_('*'): - if (__builtin_expect (flags & FNM_EXTMATCH, 0) && *p == '(') - { - int res; - - res = EXT (c, p, n, string_end, no_leading_period, - flags); - if (res != -1) - return res; - } - - if (n != string_end && *n == L_('.') && no_leading_period) - return FNM_NOMATCH; - - for (c = *p++; c == L_('?') || c == L_('*'); c = *p++) - { - if (*p == L_('(') && (flags & FNM_EXTMATCH) != 0) - { - const CHAR *endp = END (p); - if (endp != p) - { - /* This is a pattern. Skip over it. */ - p = endp; - continue; - } - } - - if (c == L_('?')) - { - /* A ? needs to match one character. */ - if (n == string_end) - /* There isn't another character; no match. */ - return FNM_NOMATCH; - else if (*n == L_('/') - && __builtin_expect (flags & FNM_FILE_NAME, 0)) - /* A slash does not match a wildcard under - FNM_FILE_NAME. */ - return FNM_NOMATCH; - else - /* One character of the string is consumed in matching - this ? wildcard, so *??? won't match if there are - less than three characters. */ - ++n; - } - } - - if (c == L_('\0')) - /* The wildcard(s) is/are the last element of the pattern. - If the name is a file name and contains another slash - this means it cannot match, unless the FNM_LEADING_DIR - flag is set. */ - { - int result = (flags & FNM_FILE_NAME) == 0 ? 0 : FNM_NOMATCH; - - if (flags & FNM_FILE_NAME) - { - if (flags & FNM_LEADING_DIR) - result = 0; - else - { - if (MEMCHR (n, L_('/'), string_end - n) == NULL) - result = 0; - } - } - - return result; - } - else - { - const CHAR *endp; - - endp = MEMCHR (n, (flags & FNM_FILE_NAME) ? L_('/') : L_('\0'), - string_end - n); - if (endp == NULL) - endp = string_end; - - if (c == L_('[') - || (__builtin_expect (flags & FNM_EXTMATCH, 0) != 0 - && (c == L_('@') || c == L_('+') || c == L_('!')) - && *p == L_('('))) - { - int flags2 = ((flags & FNM_FILE_NAME) - ? flags : (flags & ~FNM_PERIOD)); - bool no_leading_period2 = no_leading_period; - - for (--p; n < endp; ++n, no_leading_period2 = false) - if (FCT (p, n, string_end, no_leading_period2, flags2) - == 0) - return 0; - } - else if (c == L_('/') && (flags & FNM_FILE_NAME)) - { - while (n < string_end && *n != L_('/')) - ++n; - if (n < string_end && *n == L_('/') - && (FCT (p, n + 1, string_end, flags & FNM_PERIOD, flags) - == 0)) - return 0; - } - else - { - int flags2 = ((flags & FNM_FILE_NAME) - ? flags : (flags & ~FNM_PERIOD)); - int no_leading_period2 = no_leading_period; - - if (c == L_('\\') && !(flags & FNM_NOESCAPE)) - c = *p; - c = FOLD (c); - for (--p; n < endp; ++n, no_leading_period2 = false) - if (FOLD ((UCHAR) *n) == c - && (FCT (p, n, string_end, no_leading_period2, flags2) - == 0)) - return 0; - } - } - - /* If we come here no match is possible with the wildcard. */ - return FNM_NOMATCH; - - case L_('['): - { - /* Nonzero if the sense of the character class is inverted. */ - const CHAR *p_init = p; - const CHAR *n_init = n; - register bool not; - CHAR cold; - UCHAR fn; - - if (posixly_correct == 0) - posixly_correct = getenv ("POSIXLY_CORRECT") != NULL ? 1 : -1; - - if (n == string_end) - return FNM_NOMATCH; - - if (*n == L_('.') && no_leading_period) - return FNM_NOMATCH; - - if (*n == L_('/') && (flags & FNM_FILE_NAME)) - /* '/' cannot be matched. */ - return FNM_NOMATCH; - - not = (*p == L_('!') || (posixly_correct < 0 && *p == L_('^'))); - if (not) - ++p; - - fn = FOLD ((UCHAR) *n); - - c = *p++; - for (;;) - { - bool is_range = false; - - if (!(flags & FNM_NOESCAPE) && c == L_('\\')) - { - if (*p == L_('\0')) - return FNM_NOMATCH; - c = FOLD ((UCHAR) *p); - ++p; - - goto normal_bracket; - } - else if (c == L_('[') && *p == L_(':')) - { - /* Leave room for the null. */ - CHAR str[CHAR_CLASS_MAX_LENGTH + 1]; - size_t c1 = 0; -#if defined _LIBC || WIDE_CHAR_SUPPORT - wctype_t wt; -#endif - const CHAR *startp = p; - - for (;;) - { - if (c1 == CHAR_CLASS_MAX_LENGTH) - /* The name is too long and therefore the pattern - is ill-formed. */ - return FNM_NOMATCH; - - c = *++p; - if (c == L_(':') && p[1] == L_(']')) - { - p += 2; - break; - } - if (c < L_('a') || c >= L_('z')) - { - /* This cannot possibly be a character class name. - Match it as a normal range. */ - p = startp; - c = L_('['); - goto normal_bracket; - } - str[c1++] = c; - } - str[c1] = L_('\0'); - -#if defined _LIBC || WIDE_CHAR_SUPPORT - wt = IS_CHAR_CLASS (str); - if (wt == 0) - /* Invalid character class name. */ - return FNM_NOMATCH; - -# if defined _LIBC && ! WIDE_CHAR_VERSION - /* The following code is glibc specific but does - there a good job in speeding up the code since - we can avoid the btowc() call. */ - if (_ISCTYPE ((UCHAR) *n, wt)) - goto matched; -# else - if (ISWCTYPE (BTOWC ((UCHAR) *n), wt)) - goto matched; -# endif -#else - if ((STREQ (str, L_("alnum")) && isalnum ((UCHAR) *n)) - || (STREQ (str, L_("alpha")) && isalpha ((UCHAR) *n)) - || (STREQ (str, L_("blank")) && isblank ((UCHAR) *n)) - || (STREQ (str, L_("cntrl")) && iscntrl ((UCHAR) *n)) - || (STREQ (str, L_("digit")) && isdigit ((UCHAR) *n)) - || (STREQ (str, L_("graph")) && isgraph ((UCHAR) *n)) - || (STREQ (str, L_("lower")) && islower ((UCHAR) *n)) - || (STREQ (str, L_("print")) && isprint ((UCHAR) *n)) - || (STREQ (str, L_("punct")) && ispunct ((UCHAR) *n)) - || (STREQ (str, L_("space")) && isspace ((UCHAR) *n)) - || (STREQ (str, L_("upper")) && isupper ((UCHAR) *n)) - || (STREQ (str, L_("xdigit")) && isxdigit ((UCHAR) *n))) - goto matched; -#endif - c = *p++; - } -#ifdef _LIBC - else if (c == L_('[') && *p == L_('=')) - { - UCHAR str[1]; - uint32_t nrules = - _NL_CURRENT_WORD (LC_COLLATE, _NL_COLLATE_NRULES); - const CHAR *startp = p; - - c = *++p; - if (c == L_('\0')) - { - p = startp; - c = L_('['); - goto normal_bracket; - } - str[0] = c; - - c = *++p; - if (c != L_('=') || p[1] != L_(']')) - { - p = startp; - c = L_('['); - goto normal_bracket; - } - p += 2; - - if (nrules == 0) - { - if ((UCHAR) *n == str[0]) - goto matched; - } - else - { - const int32_t *table; -# if WIDE_CHAR_VERSION - const int32_t *weights; - const int32_t *extra; -# else - const unsigned char *weights; - const unsigned char *extra; -# endif - const int32_t *indirect; - int32_t idx; - const UCHAR *cp = (const UCHAR *) str; - - /* This #include defines a local function! */ -# if WIDE_CHAR_VERSION -# include -# else -# include -# endif - -# if WIDE_CHAR_VERSION - table = (const int32_t *) - _NL_CURRENT (LC_COLLATE, _NL_COLLATE_TABLEWC); - weights = (const int32_t *) - _NL_CURRENT (LC_COLLATE, _NL_COLLATE_WEIGHTWC); - extra = (const int32_t *) - _NL_CURRENT (LC_COLLATE, _NL_COLLATE_EXTRAWC); - indirect = (const int32_t *) - _NL_CURRENT (LC_COLLATE, _NL_COLLATE_INDIRECTWC); -# else - table = (const int32_t *) - _NL_CURRENT (LC_COLLATE, _NL_COLLATE_TABLEMB); - weights = (const unsigned char *) - _NL_CURRENT (LC_COLLATE, _NL_COLLATE_WEIGHTMB); - extra = (const unsigned char *) - _NL_CURRENT (LC_COLLATE, _NL_COLLATE_EXTRAMB); - indirect = (const int32_t *) - _NL_CURRENT (LC_COLLATE, _NL_COLLATE_INDIRECTMB); -# endif - - idx = findidx (&cp); - if (idx != 0) - { - /* We found a table entry. Now see whether the - character we are currently at has the same - equivalence class value. */ - int len = weights[idx & 0xffffff]; - int32_t idx2; - const UCHAR *np = (const UCHAR *) n; - - idx2 = findidx (&np); - if (idx2 != 0 - && (idx >> 24) == (idx2 >> 24) - && len == weights[idx2 & 0xffffff]) - { - int cnt = 0; - - idx &= 0xffffff; - idx2 &= 0xffffff; - - while (cnt < len - && (weights[idx + 1 + cnt] - == weights[idx2 + 1 + cnt])) - ++cnt; - - if (cnt == len) - goto matched; - } - } - } - - c = *p++; - } -#endif - else if (c == L_('\0')) - { - /* [ unterminated, treat as normal character. */ - p = p_init; - n = n_init; - c = L_('['); - goto normal_match; - } - else - { -#ifdef _LIBC - bool is_seqval = false; - - if (c == L_('[') && *p == L_('.')) - { - uint32_t nrules = - _NL_CURRENT_WORD (LC_COLLATE, _NL_COLLATE_NRULES); - const CHAR *startp = p; - size_t c1 = 0; - - while (1) - { - c = *++p; - if (c == L_('.') && p[1] == L_(']')) - { - p += 2; - break; - } - if (c == '\0') - return FNM_NOMATCH; - ++c1; - } - - /* We have to handling the symbols differently in - ranges since then the collation sequence is - important. */ - is_range = *p == L_('-') && p[1] != L_('\0'); - - if (nrules == 0) - { - /* There are no names defined in the collation - data. Therefore we only accept the trivial - names consisting of the character itself. */ - if (c1 != 1) - return FNM_NOMATCH; - - if (!is_range && *n == startp[1]) - goto matched; - - cold = startp[1]; - c = *p++; - } - else - { - int32_t table_size; - const int32_t *symb_table; -# ifdef WIDE_CHAR_VERSION - char str[c1]; - size_t strcnt; -# else -# define str (startp + 1) -# endif - const unsigned char *extra; - int32_t idx; - int32_t elem; - int32_t second; - int32_t hash; - -# ifdef WIDE_CHAR_VERSION - /* We have to convert the name to a single-byte - string. This is possible since the names - consist of ASCII characters and the internal - representation is UCS4. */ - for (strcnt = 0; strcnt < c1; ++strcnt) - str[strcnt] = startp[1 + strcnt]; -# endif - - table_size = - _NL_CURRENT_WORD (LC_COLLATE, - _NL_COLLATE_SYMB_HASH_SIZEMB); - symb_table = (const int32_t *) - _NL_CURRENT (LC_COLLATE, - _NL_COLLATE_SYMB_TABLEMB); - extra = (const unsigned char *) - _NL_CURRENT (LC_COLLATE, - _NL_COLLATE_SYMB_EXTRAMB); - - /* Locate the character in the hashing table. */ - hash = elem_hash (str, c1); - - idx = 0; - elem = hash % table_size; - if (symb_table[2 * elem] != 0) - { - second = hash % (table_size - 2) + 1; - - do - { - /* First compare the hashing value. */ - if (symb_table[2 * elem] == hash - && (c1 - == extra[symb_table[2 * elem + 1]]) - && memcmp (str, - &extra[symb_table[2 * elem - + 1] - + 1], c1) == 0) - { - /* Yep, this is the entry. */ - idx = symb_table[2 * elem + 1]; - idx += 1 + extra[idx]; - break; - } - - /* Next entry. */ - elem += second; - } - while (symb_table[2 * elem] != 0); - } - - if (symb_table[2 * elem] != 0) - { - /* Compare the byte sequence but only if - this is not part of a range. */ -# ifdef WIDE_CHAR_VERSION - int32_t *wextra; - - idx += 1 + extra[idx]; - /* Adjust for the alignment. */ - idx = (idx + 3) & ~3; - - wextra = (int32_t *) &extra[idx + 4]; -# endif - - if (! is_range) - { -# ifdef WIDE_CHAR_VERSION - for (c1 = 0; - (int32_t) c1 < wextra[idx]; - ++c1) - if (n[c1] != wextra[1 + c1]) - break; - - if ((int32_t) c1 == wextra[idx]) - goto matched; -# else - for (c1 = 0; c1 < extra[idx]; ++c1) - if (n[c1] != extra[1 + c1]) - break; - - if (c1 == extra[idx]) - goto matched; -# endif - } - - /* Get the collation sequence value. */ - is_seqval = true; -# ifdef WIDE_CHAR_VERSION - cold = wextra[1 + wextra[idx]]; -# else - /* Adjust for the alignment. */ - idx += 1 + extra[idx]; - idx = (idx + 3) & ~4; - cold = *((int32_t *) &extra[idx]); -# endif - - c = *p++; - } - else if (c1 == 1) - { - /* No valid character. Match it as a - single byte. */ - if (!is_range && *n == str[0]) - goto matched; - - cold = str[0]; - c = *p++; - } - else - return FNM_NOMATCH; - } - } - else -# undef str -#endif - { - c = FOLD (c); - normal_bracket: - - /* We have to handling the symbols differently in - ranges since then the collation sequence is - important. */ - is_range = (*p == L_('-') && p[1] != L_('\0') - && p[1] != L_(']')); - - if (!is_range && c == fn) - goto matched; - -#if _LIBC - /* This is needed if we goto normal_bracket; from - outside of is_seqval's scope. */ - is_seqval = false; -#endif - - cold = c; - c = *p++; - } - - if (c == L_('-') && *p != L_(']')) - { -#if _LIBC - /* We have to find the collation sequence - value for C. Collation sequence is nothing - we can regularly access. The sequence - value is defined by the order in which the - definitions of the collation values for the - various characters appear in the source - file. A strange concept, nowhere - documented. */ - uint32_t fcollseq; - uint32_t lcollseq; - UCHAR cend = *p++; - -# ifdef WIDE_CHAR_VERSION - /* Search in the 'names' array for the characters. */ - fcollseq = __collseq_table_lookup (collseq, fn); - if (fcollseq == ~((uint32_t) 0)) - /* XXX We don't know anything about the character - we are supposed to match. This means we are - failing. */ - goto range_not_matched; - - if (is_seqval) - lcollseq = cold; - else - lcollseq = __collseq_table_lookup (collseq, cold); -# else - fcollseq = collseq[fn]; - lcollseq = is_seqval ? cold : collseq[(UCHAR) cold]; -# endif - - is_seqval = false; - if (cend == L_('[') && *p == L_('.')) - { - uint32_t nrules = - _NL_CURRENT_WORD (LC_COLLATE, - _NL_COLLATE_NRULES); - const CHAR *startp = p; - size_t c1 = 0; - - while (1) - { - c = *++p; - if (c == L_('.') && p[1] == L_(']')) - { - p += 2; - break; - } - if (c == '\0') - return FNM_NOMATCH; - ++c1; - } - - if (nrules == 0) - { - /* There are no names defined in the - collation data. Therefore we only - accept the trivial names consisting - of the character itself. */ - if (c1 != 1) - return FNM_NOMATCH; - - cend = startp[1]; - } - else - { - int32_t table_size; - const int32_t *symb_table; -# ifdef WIDE_CHAR_VERSION - char str[c1]; - size_t strcnt; -# else -# define str (startp + 1) -# endif - const unsigned char *extra; - int32_t idx; - int32_t elem; - int32_t second; - int32_t hash; - -# ifdef WIDE_CHAR_VERSION - /* We have to convert the name to a single-byte - string. This is possible since the names - consist of ASCII characters and the internal - representation is UCS4. */ - for (strcnt = 0; strcnt < c1; ++strcnt) - str[strcnt] = startp[1 + strcnt]; -# endif - - table_size = - _NL_CURRENT_WORD (LC_COLLATE, - _NL_COLLATE_SYMB_HASH_SIZEMB); - symb_table = (const int32_t *) - _NL_CURRENT (LC_COLLATE, - _NL_COLLATE_SYMB_TABLEMB); - extra = (const unsigned char *) - _NL_CURRENT (LC_COLLATE, - _NL_COLLATE_SYMB_EXTRAMB); - - /* Locate the character in the hashing - table. */ - hash = elem_hash (str, c1); - - idx = 0; - elem = hash % table_size; - if (symb_table[2 * elem] != 0) - { - second = hash % (table_size - 2) + 1; - - do - { - /* First compare the hashing value. */ - if (symb_table[2 * elem] == hash - && (c1 - == extra[symb_table[2 * elem + 1]]) - && memcmp (str, - &extra[symb_table[2 * elem + 1] - + 1], c1) == 0) - { - /* Yep, this is the entry. */ - idx = symb_table[2 * elem + 1]; - idx += 1 + extra[idx]; - break; - } - - /* Next entry. */ - elem += second; - } - while (symb_table[2 * elem] != 0); - } - - if (symb_table[2 * elem] != 0) - { - /* Compare the byte sequence but only if - this is not part of a range. */ -# ifdef WIDE_CHAR_VERSION - int32_t *wextra; - - idx += 1 + extra[idx]; - /* Adjust for the alignment. */ - idx = (idx + 3) & ~4; - - wextra = (int32_t *) &extra[idx + 4]; -# endif - /* Get the collation sequence value. */ - is_seqval = true; -# ifdef WIDE_CHAR_VERSION - cend = wextra[1 + wextra[idx]]; -# else - /* Adjust for the alignment. */ - idx += 1 + extra[idx]; - idx = (idx + 3) & ~4; - cend = *((int32_t *) &extra[idx]); -# endif - } - else if (symb_table[2 * elem] != 0 && c1 == 1) - { - cend = str[0]; - c = *p++; - } - else - return FNM_NOMATCH; - } -# undef str - } - else - { - if (!(flags & FNM_NOESCAPE) && cend == L_('\\')) - cend = *p++; - if (cend == L_('\0')) - return FNM_NOMATCH; - cend = FOLD (cend); - } - - /* XXX It is not entirely clear to me how to handle - characters which are not mentioned in the - collation specification. */ - if ( -# ifdef WIDE_CHAR_VERSION - lcollseq == 0xffffffff || -# endif - lcollseq <= fcollseq) - { - /* We have to look at the upper bound. */ - uint32_t hcollseq; - - if (is_seqval) - hcollseq = cend; - else - { -# ifdef WIDE_CHAR_VERSION - hcollseq = - __collseq_table_lookup (collseq, cend); - if (hcollseq == ~((uint32_t) 0)) - { - /* Hum, no information about the upper - bound. The matching succeeds if the - lower bound is matched exactly. */ - if (lcollseq != fcollseq) - goto range_not_matched; - - goto matched; - } -# else - hcollseq = collseq[cend]; -# endif - } - - if (lcollseq <= hcollseq && fcollseq <= hcollseq) - goto matched; - } -# ifdef WIDE_CHAR_VERSION - range_not_matched: -# endif -#else - /* We use a boring value comparison of the character - values. This is better than comparing using - 'strcoll' since the latter would have surprising - and sometimes fatal consequences. */ - UCHAR cend = *p++; - - if (!(flags & FNM_NOESCAPE) && cend == L_('\\')) - cend = *p++; - if (cend == L_('\0')) - return FNM_NOMATCH; - - /* It is a range. */ - if (cold <= fn && fn <= cend) - goto matched; -#endif - - c = *p++; - } - } - - if (c == L_(']')) - break; - } - - if (!not) - return FNM_NOMATCH; - break; - - matched: - /* Skip the rest of the [...] that already matched. */ - do - { - ignore_next: - c = *p++; - - if (c == L_('\0')) - /* [... (unterminated) loses. */ - return FNM_NOMATCH; - - if (!(flags & FNM_NOESCAPE) && c == L_('\\')) - { - if (*p == L_('\0')) - return FNM_NOMATCH; - /* XXX 1003.2d11 is unclear if this is right. */ - ++p; - } - else if (c == L_('[') && *p == L_(':')) - { - int c1 = 0; - const CHAR *startp = p; - - while (1) - { - c = *++p; - if (++c1 == CHAR_CLASS_MAX_LENGTH) - return FNM_NOMATCH; - - if (*p == L_(':') && p[1] == L_(']')) - break; - - if (c < L_('a') || c >= L_('z')) - { - p = startp; - goto ignore_next; - } - } - p += 2; - c = *p++; - } - else if (c == L_('[') && *p == L_('=')) - { - c = *++p; - if (c == L_('\0')) - return FNM_NOMATCH; - c = *++p; - if (c != L_('=') || p[1] != L_(']')) - return FNM_NOMATCH; - p += 2; - c = *p++; - } - else if (c == L_('[') && *p == L_('.')) - { - ++p; - while (1) - { - c = *++p; - if (c == '\0') - return FNM_NOMATCH; - - if (*p == L_('.') && p[1] == L_(']')) - break; - } - p += 2; - c = *p++; - } - } - while (c != L_(']')); - if (not) - return FNM_NOMATCH; - } - break; - - case L_('+'): - case L_('@'): - case L_('!'): - if (__builtin_expect (flags & FNM_EXTMATCH, 0) && *p == '(') - { - int res; - - res = EXT (c, p, n, string_end, no_leading_period, flags); - if (res != -1) - return res; - } - goto normal_match; - - case L_('/'): - if (NO_LEADING_PERIOD (flags)) - { - if (n == string_end || c != (UCHAR) *n) - return FNM_NOMATCH; - - new_no_leading_period = true; - break; - } - FALLTHROUGH; - default: - normal_match: - if (n == string_end || c != FOLD ((UCHAR) *n)) - return FNM_NOMATCH; - } - - no_leading_period = new_no_leading_period; - ++n; - } - - if (n == string_end) - return 0; - - if ((flags & FNM_LEADING_DIR) && n != string_end && *n == L_('/')) - /* The FNM_LEADING_DIR flag says that "foo*" matches "foobar/frobozz". */ - return 0; - - return FNM_NOMATCH; -} - - -static const CHAR * -internal_function -END (const CHAR *pattern) -{ - const CHAR *p = pattern; - - while (1) - if (*++p == L_('\0')) - /* This is an invalid pattern. */ - return pattern; - else if (*p == L_('[')) - { - /* Handle brackets special. */ - if (posixly_correct == 0) - posixly_correct = getenv ("POSIXLY_CORRECT") != NULL ? 1 : -1; - - /* Skip the not sign. We have to recognize it because of a possibly - following ']'. */ - if (*++p == L_('!') || (posixly_correct < 0 && *p == L_('^'))) - ++p; - /* A leading ']' is recognized as such. */ - if (*p == L_(']')) - ++p; - /* Skip over all characters of the list. */ - while (*p != L_(']')) - if (*p++ == L_('\0')) - /* This is no valid pattern. */ - return pattern; - } - else if ((*p == L_('?') || *p == L_('*') || *p == L_('+') || *p == L_('@') - || *p == L_('!')) && p[1] == L_('(')) - p = END (p + 1); - else if (*p == L_(')')) - break; - - return p + 1; -} - - -static int -internal_function -EXT (INT opt, const CHAR *pattern, const CHAR *string, const CHAR *string_end, - bool no_leading_period, int flags) -{ - const CHAR *startp; - size_t level; - struct patternlist - { - struct patternlist *next; - CHAR str[FLEXIBLE_ARRAY_MEMBER]; - } *list = NULL; - struct patternlist **lastp = &list; - size_t pattern_len = STRLEN (pattern); - const CHAR *p; - const CHAR *rs; - enum { ALLOCA_LIMIT = 8000 }; - - /* Parse the pattern. Store the individual parts in the list. */ - level = 0; - for (startp = p = pattern + 1; ; ++p) - if (*p == L_('\0')) - /* This is an invalid pattern. */ - return -1; - else if (*p == L_('[')) - { - /* Handle brackets special. */ - if (posixly_correct == 0) - posixly_correct = getenv ("POSIXLY_CORRECT") != NULL ? 1 : -1; - - /* Skip the not sign. We have to recognize it because of a possibly - following ']'. */ - if (*++p == L_('!') || (posixly_correct < 0 && *p == L_('^'))) - ++p; - /* A leading ']' is recognized as such. */ - if (*p == L_(']')) - ++p; - /* Skip over all characters of the list. */ - while (*p != L_(']')) - if (*p++ == L_('\0')) - /* This is no valid pattern. */ - return -1; - } - else if ((*p == L_('?') || *p == L_('*') || *p == L_('+') || *p == L_('@') - || *p == L_('!')) && p[1] == L_('(')) - /* Remember the nesting level. */ - ++level; - else if (*p == L_(')')) - { - if (level-- == 0) - { - /* This means we found the end of the pattern. */ -#define NEW_PATTERN \ - struct patternlist *newp; \ - size_t plen; \ - size_t plensize; \ - size_t newpsize; \ - \ - plen = (opt == L_('?') || opt == L_('@') \ - ? pattern_len \ - : p - startp + 1UL); \ - plensize = plen * sizeof (CHAR); \ - newpsize = FLEXSIZEOF (struct patternlist, str, plensize); \ - if ((size_t) -1 / sizeof (CHAR) < plen \ - || newpsize < offsetof (struct patternlist, str) \ - || ALLOCA_LIMIT <= newpsize) \ - return -1; \ - newp = (struct patternlist *) alloca (newpsize); \ - *((CHAR *) MEMPCPY (newp->str, startp, p - startp)) = L_('\0'); \ - newp->next = NULL; \ - *lastp = newp; \ - lastp = &newp->next - NEW_PATTERN; - break; - } - } - else if (*p == L_('|')) - { - if (level == 0) - { - NEW_PATTERN; - startp = p + 1; - } - } - assert (list != NULL); - assert (p[-1] == L_(')')); -#undef NEW_PATTERN - - switch (opt) - { - case L_('*'): - if (FCT (p, string, string_end, no_leading_period, flags) == 0) - return 0; - FALLTHROUGH; - case L_('+'): - do - { - for (rs = string; rs <= string_end; ++rs) - /* First match the prefix with the current pattern with the - current pattern. */ - if (FCT (list->str, string, rs, no_leading_period, - flags & FNM_FILE_NAME ? flags : flags & ~FNM_PERIOD) == 0 - /* This was successful. Now match the rest with the rest - of the pattern. */ - && (FCT (p, rs, string_end, - rs == string - ? no_leading_period - : rs[-1] == '/' && NO_LEADING_PERIOD (flags), - flags & FNM_FILE_NAME - ? flags : flags & ~FNM_PERIOD) == 0 - /* This didn't work. Try the whole pattern. */ - || (rs != string - && FCT (pattern - 1, rs, string_end, - rs == string - ? no_leading_period - : rs[-1] == '/' && NO_LEADING_PERIOD (flags), - flags & FNM_FILE_NAME - ? flags : flags & ~FNM_PERIOD) == 0))) - /* It worked. Signal success. */ - return 0; - } - while ((list = list->next) != NULL); - - /* None of the patterns lead to a match. */ - return FNM_NOMATCH; - - case L_('?'): - if (FCT (p, string, string_end, no_leading_period, flags) == 0) - return 0; - FALLTHROUGH; - case L_('@'): - do - /* I cannot believe it but 'strcat' is actually acceptable - here. Match the entire string with the prefix from the - pattern list and the rest of the pattern following the - pattern list. */ - if (FCT (STRCAT (list->str, p), string, string_end, - no_leading_period, - flags & FNM_FILE_NAME ? flags : flags & ~FNM_PERIOD) == 0) - /* It worked. Signal success. */ - return 0; - while ((list = list->next) != NULL); - - /* None of the patterns lead to a match. */ - return FNM_NOMATCH; - - case L_('!'): - for (rs = string; rs <= string_end; ++rs) - { - struct patternlist *runp; - - for (runp = list; runp != NULL; runp = runp->next) - if (FCT (runp->str, string, rs, no_leading_period, - flags & FNM_FILE_NAME ? flags : flags & ~FNM_PERIOD) == 0) - break; - - /* If none of the patterns matched see whether the rest does. */ - if (runp == NULL - && (FCT (p, rs, string_end, - rs == string - ? no_leading_period - : rs[-1] == '/' && NO_LEADING_PERIOD (flags), - flags & FNM_FILE_NAME ? flags : flags & ~FNM_PERIOD) - == 0)) - /* This is successful. */ - return 0; - } - - /* None of the patterns together with the rest of the pattern - lead to a match. */ - return FNM_NOMATCH; - - default: - assert (! "Invalid extended matching operator"); - break; - } - - return -1; -} - - -#undef FOLD -#undef CHAR -#undef UCHAR -#undef INT -#undef FCT -#undef EXT -#undef END -#undef MEMPCPY -#undef MEMCHR -#undef STRLEN -#undef STRCAT -#undef L_ -#undef BTOWC diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/fstat.c b/thirdparty/grub-2.04/grub-core/lib/gnulib/fstat.c deleted file mode 100644 index 4f0e61881..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/fstat.c +++ /dev/null @@ -1,90 +0,0 @@ -/* fstat() replacement. - Copyright (C) 2011-2019 Free Software Foundation, Inc. - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . */ - -/* If the user's config.h happens to include , let it include only - the system's here, so that orig_fstat doesn't recurse to - rpl_fstat. */ -#define __need_system_sys_stat_h -#include - -/* Get the original definition of fstat. It might be defined as a macro. */ -#include -#include -#undef __need_system_sys_stat_h - -#if defined _WIN32 && ! defined __CYGWIN__ -# define WINDOWS_NATIVE -#endif - -#if !defined WINDOWS_NATIVE - -static int -orig_fstat (int fd, struct stat *buf) -{ - return fstat (fd, buf); -} - -#endif - -/* Specification. */ -/* Write "sys/stat.h" here, not , otherwise OSF/1 5.1 DTK cc - eliminates this include because of the preliminary #include - above. */ -#include "sys/stat.h" - -#include "stat-time.h" - -#include -#include -#ifdef WINDOWS_NATIVE -# define WIN32_LEAN_AND_MEAN -# include -# if GNULIB_MSVC_NOTHROW -# include "msvc-nothrow.h" -# else -# include -# endif -# include "stat-w32.h" -#endif - -int -rpl_fstat (int fd, struct stat *buf) -{ -#if REPLACE_FCHDIR && REPLACE_OPEN_DIRECTORY - /* Handle the case when rpl_open() used a dummy file descriptor to work - around an open() that can't normally visit directories. */ - const char *name = _gl_directory_name (fd); - if (name != NULL) - return stat (name, buf); -#endif - -#ifdef WINDOWS_NATIVE - /* Fill the fields ourselves, because the original fstat function returns - values for st_atime, st_mtime, st_ctime that depend on the current time - zone. See - */ - HANDLE h = (HANDLE) _get_osfhandle (fd); - - if (h == INVALID_HANDLE_VALUE) - { - errno = EBADF; - return -1; - } - return _gl_fstat_by_handle (h, NULL, buf); -#else - return stat_time_normalize (orig_fstat (fd, buf), buf); -#endif -} diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/getcwd-lgpl.c b/thirdparty/grub-2.04/grub-core/lib/gnulib/getcwd-lgpl.c deleted file mode 100644 index b224cfc9d..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/getcwd-lgpl.c +++ /dev/null @@ -1,126 +0,0 @@ -/* Copyright (C) 2011-2019 Free Software Foundation, Inc. - This file is part of gnulib. - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . */ - -#include - -/* Specification */ -#include - -#include -#include -#include - -#if GNULIB_GETCWD -/* Favor GPL getcwd.c if both getcwd and getcwd-lgpl modules are in use. */ -typedef int dummy; -#else - -/* Get the name of the current working directory, and put it in SIZE - bytes of BUF. Returns NULL if the directory couldn't be determined - (perhaps because the absolute name was longer than PATH_MAX, or - because of missing read/search permissions on parent directories) - or SIZE was too small. If successful, returns BUF. If BUF is - NULL, an array is allocated with 'malloc'; the array is SIZE bytes - long, unless SIZE == 0, in which case it is as big as - necessary. */ - -# undef getcwd -char * -rpl_getcwd (char *buf, size_t size) -{ - char *ptr; - char *result; - - /* Handle single size operations. */ - if (buf) - { - if (!size) - { - errno = EINVAL; - return NULL; - } - return getcwd (buf, size); - } - - if (size) - { - buf = malloc (size); - if (!buf) - { - errno = ENOMEM; - return NULL; - } - result = getcwd (buf, size); - if (!result) - { - int saved_errno = errno; - free (buf); - errno = saved_errno; - } - return result; - } - - /* Flexible sizing requested. Avoid over-allocation for the common - case of a name that fits within a 4k page, minus some space for - local variables, to be sure we don't skip over a guard page. */ - { - char tmp[4032]; - size = sizeof tmp; - ptr = getcwd (tmp, size); - if (ptr) - { - result = strdup (ptr); - if (!result) - errno = ENOMEM; - return result; - } - if (errno != ERANGE) - return NULL; - } - - /* My what a large directory name we have. */ - do - { - size <<= 1; - ptr = realloc (buf, size); - if (ptr == NULL) - { - free (buf); - errno = ENOMEM; - return NULL; - } - buf = ptr; - result = getcwd (buf, size); - } - while (!result && errno == ERANGE); - - if (!result) - { - int saved_errno = errno; - free (buf); - errno = saved_errno; - } - else - { - /* Trim to fit, if possible. */ - result = realloc (buf, strlen (buf) + 1); - if (!result) - result = buf; - } - return result; -} - -#endif diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/getdelim.c b/thirdparty/grub-2.04/grub-core/lib/gnulib/getdelim.c deleted file mode 100644 index 528678c25..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/getdelim.c +++ /dev/null @@ -1,147 +0,0 @@ -/* getdelim.c --- Implementation of replacement getdelim function. - Copyright (C) 1994, 1996-1998, 2001, 2003, 2005-2019 Free Software - Foundation, Inc. - - This program is free software; you can redistribute it and/or - modify it under the terms of the GNU General Public License as - published by the Free Software Foundation; either version 3, or (at - your option) any later version. - - This program is distributed in the hope that it will be useful, but - WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, see . */ - -/* Ported from glibc by Simon Josefsson. */ - -/* Don't use __attribute__ __nonnull__ in this compilation unit. Otherwise gcc - optimizes away the lineptr == NULL || n == NULL || fp == NULL tests below. */ -#define _GL_ARG_NONNULL(params) - -#include - -#include - -#include -#include -#include -#include - -#ifndef SSIZE_MAX -# define SSIZE_MAX ((ssize_t) (SIZE_MAX / 2)) -#endif - -#if USE_UNLOCKED_IO -# include "unlocked-io.h" -# define getc_maybe_unlocked(fp) getc(fp) -#elif !HAVE_FLOCKFILE || !HAVE_FUNLOCKFILE || !HAVE_DECL_GETC_UNLOCKED -# undef flockfile -# undef funlockfile -# define flockfile(x) ((void) 0) -# define funlockfile(x) ((void) 0) -# define getc_maybe_unlocked(fp) getc(fp) -#else -# define getc_maybe_unlocked(fp) getc_unlocked(fp) -#endif - -static void -alloc_failed (void) -{ -#if defined _WIN32 && ! defined __CYGWIN__ - /* Avoid errno problem without using the realloc module; see: - https://lists.gnu.org/r/bug-gnulib/2016-08/msg00025.html */ - errno = ENOMEM; -#endif -} - -/* Read up to (and including) a DELIMITER from FP into *LINEPTR (and - NUL-terminate it). *LINEPTR is a pointer returned from malloc (or - NULL), pointing to *N characters of space. It is realloc'ed as - necessary. Returns the number of characters read (not including - the null terminator), or -1 on error or EOF. */ - -ssize_t -getdelim (char **lineptr, size_t *n, int delimiter, FILE *fp) -{ - ssize_t result; - size_t cur_len = 0; - - if (lineptr == NULL || n == NULL || fp == NULL) - { - errno = EINVAL; - return -1; - } - - flockfile (fp); - - if (*lineptr == NULL || *n == 0) - { - char *new_lineptr; - *n = 120; - new_lineptr = (char *) realloc (*lineptr, *n); - if (new_lineptr == NULL) - { - alloc_failed (); - result = -1; - goto unlock_return; - } - *lineptr = new_lineptr; - } - - for (;;) - { - int i; - - i = getc_maybe_unlocked (fp); - if (i == EOF) - { - result = -1; - break; - } - - /* Make enough space for len+1 (for final NUL) bytes. */ - if (cur_len + 1 >= *n) - { - size_t needed_max = - SSIZE_MAX < SIZE_MAX ? (size_t) SSIZE_MAX + 1 : SIZE_MAX; - size_t needed = 2 * *n + 1; /* Be generous. */ - char *new_lineptr; - - if (needed_max < needed) - needed = needed_max; - if (cur_len + 1 >= needed) - { - result = -1; - errno = EOVERFLOW; - goto unlock_return; - } - - new_lineptr = (char *) realloc (*lineptr, needed); - if (new_lineptr == NULL) - { - alloc_failed (); - result = -1; - goto unlock_return; - } - - *lineptr = new_lineptr; - *n = needed; - } - - (*lineptr)[cur_len] = i; - cur_len++; - - if (i == delimiter) - break; - } - (*lineptr)[cur_len] = '\0'; - result = cur_len ? cur_len : result; - - unlock_return: - funlockfile (fp); /* doesn't set errno */ - - return result; -} diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/getdtablesize.c b/thirdparty/grub-2.04/grub-core/lib/gnulib/getdtablesize.c deleted file mode 100644 index 03a92435f..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/getdtablesize.c +++ /dev/null @@ -1,124 +0,0 @@ -/* getdtablesize() function: Return maximum possible file descriptor value + 1. - Copyright (C) 2008-2019 Free Software Foundation, Inc. - Written by Bruno Haible , 2008. - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . */ - -#include - -/* Specification. */ -#include - -#if defined _WIN32 && ! defined __CYGWIN__ - -# include - -# if HAVE_MSVC_INVALID_PARAMETER_HANDLER -# include "msvc-inval.h" -# endif - -# if HAVE_MSVC_INVALID_PARAMETER_HANDLER -static int -_setmaxstdio_nothrow (int newmax) -{ - int result; - - TRY_MSVC_INVAL - { - result = _setmaxstdio (newmax); - } - CATCH_MSVC_INVAL - { - result = -1; - } - DONE_MSVC_INVAL; - - return result; -} -# else -# define _setmaxstdio_nothrow _setmaxstdio -# endif - -/* Cache for the previous getdtablesize () result. Safe to cache because - Windows also lacks setrlimit. */ -static int dtablesize; - -int -getdtablesize (void) -{ - if (dtablesize == 0) - { - /* We are looking for the number N such that the valid file descriptors - are 0..N-1. It can be obtained through a loop as follows: - { - int fd; - for (fd = 3; fd < 65536; fd++) - if (dup2 (0, fd) == -1) - break; - return fd; - } - On Windows XP, the result is 2048. - The drawback of this loop is that it allocates memory for a libc - internal array that is never freed. - - The number N can also be obtained as the upper bound for - _getmaxstdio (). _getmaxstdio () returns the maximum number of open - FILE objects. The sanity check in _setmaxstdio reveals the maximum - number of file descriptors. This too allocates memory, but it is - freed when we call _setmaxstdio with the original value. */ - int orig_max_stdio = _getmaxstdio (); - unsigned int bound; - for (bound = 0x10000; _setmaxstdio_nothrow (bound) < 0; bound = bound / 2) - ; - _setmaxstdio_nothrow (orig_max_stdio); - dtablesize = bound; - } - return dtablesize; -} - -#else - -# include -# include - -# ifndef RLIM_SAVED_CUR -# define RLIM_SAVED_CUR RLIM_INFINITY -# endif -# ifndef RLIM_SAVED_MAX -# define RLIM_SAVED_MAX RLIM_INFINITY -# endif - -# ifdef __CYGWIN__ - /* Cygwin 1.7.25 auto-increases the RLIMIT_NOFILE soft limit until it - hits the compile-time constant hard limit of 3200. We might as - well just report the hard limit. */ -# define rlim_cur rlim_max -# endif - -int -getdtablesize (void) -{ - struct rlimit lim; - - if (getrlimit (RLIMIT_NOFILE, &lim) == 0 - && 0 <= lim.rlim_cur && lim.rlim_cur <= INT_MAX - && lim.rlim_cur != RLIM_INFINITY - && lim.rlim_cur != RLIM_SAVED_CUR - && lim.rlim_cur != RLIM_SAVED_MAX) - return lim.rlim_cur; - - return INT_MAX; -} - -#endif diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/getline.c b/thirdparty/grub-2.04/grub-core/lib/gnulib/getline.c deleted file mode 100644 index 40882fb21..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/getline.c +++ /dev/null @@ -1,27 +0,0 @@ -/* getline.c --- Implementation of replacement getline function. - Copyright (C) 2005-2007, 2009-2019 Free Software Foundation, Inc. - - This program is free software; you can redistribute it and/or - modify it under the terms of the GNU General Public License as - published by the Free Software Foundation; either version 3, or (at - your option) any later version. - - This program is distributed in the hope that it will be useful, but - WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, see . */ - -/* Written by Simon Josefsson. */ - -#include - -#include - -ssize_t -getline (char **lineptr, size_t *n, FILE *stream) -{ - return getdelim (lineptr, n, '\n', stream); -} diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/getopt-cdefs.in.h b/thirdparty/grub-2.04/grub-core/lib/gnulib/getopt-cdefs.in.h deleted file mode 100644 index 049145b38..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/getopt-cdefs.in.h +++ /dev/null @@ -1,67 +0,0 @@ -/* getopt-on-non-glibc compatibility macros. - Copyright (C) 1989-2019 Free Software Foundation, Inc. - This file is part of gnulib. - Unlike most of the getopt implementation, it is NOT shared - with the GNU C Library. - - This file is free software; you can redistribute it and/or modify it - under the terms of the GNU General Public License as - published by the Free Software Foundation; either version 3 of - the License, or (at your option) any later version. - - This file is distributed in the hope that it will be useful, but - WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - General Public License for more details. - - You should have received a copy of the GNU General Public - License along with gnulib; if not, see - . */ - -#ifndef _GETOPT_CDEFS_H -#define _GETOPT_CDEFS_H 1 - -/* This header should not be used directly; include getopt.h or - unistd.h instead. It does not have a protective #error, because - the guard macro for getopt.h in gnulib is not fixed. */ - -/* getopt-core.h and getopt-ext.h are shared with GNU libc, and expect - a number of the internal macros supplied to GNU libc's headers by - sys/cdefs.h. Provide fallback definitions for all of them. */ -#if @HAVE_SYS_CDEFS_H@ -# include -#endif - -#ifndef __BEGIN_DECLS -# ifdef __cplusplus -# define __BEGIN_DECLS extern "C" { -# else -# define __BEGIN_DECLS /* nothing */ -# endif -#endif -#ifndef __END_DECLS -# ifdef __cplusplus -# define __END_DECLS } -# else -# define __END_DECLS /* nothing */ -# endif -#endif - -#ifndef __GNUC_PREREQ -# if defined __GNUC__ && defined __GNUC_VERSION__ -# define __GNUC_PREREQ(maj, min) \ - ((__GNUC__ << 16) + __GNUC_MINOR__ >= ((maj) << 16) + (min)) -# else -# define __GNUC_PREREQ(maj, min) 0 -# endif -#endif - -#ifndef __THROW -# if defined __cplusplus && __GNUC_PREREQ (2,8) -# define __THROW throw () -# else -# define __THROW -# endif -#endif - -#endif /* _GETOPT_CDEFS_H */ diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/getopt-core.h b/thirdparty/grub-2.04/grub-core/lib/gnulib/getopt-core.h deleted file mode 100644 index 6360ad694..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/getopt-core.h +++ /dev/null @@ -1,96 +0,0 @@ -/* Declarations for getopt (basic, portable features only). - Copyright (C) 1989-2019 Free Software Foundation, Inc. - This file is part of the GNU C Library and is also part of gnulib. - Patches to this file should be submitted to both projects. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU General Public - License as published by the Free Software Foundation; either - version 3 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - General Public License for more details. - - You should have received a copy of the GNU General Public - License along with the GNU C Library; if not, see - . */ - -#ifndef _GETOPT_CORE_H -#define _GETOPT_CORE_H 1 - -/* This header should not be used directly; include getopt.h or - unistd.h instead. Unlike most bits headers, it does not have - a protective #error, because the guard macro for getopt.h in - gnulib is not fixed. */ - -__BEGIN_DECLS - -/* For communication from 'getopt' to the caller. - When 'getopt' finds an option that takes an argument, - the argument value is returned here. - Also, when 'ordering' is RETURN_IN_ORDER, - each non-option ARGV-element is returned here. */ - -extern char *optarg; - -/* Index in ARGV of the next element to be scanned. - This is used for communication to and from the caller - and for communication between successive calls to 'getopt'. - - On entry to 'getopt', zero means this is the first call; initialize. - - When 'getopt' returns -1, this is the index of the first of the - non-option elements that the caller should itself scan. - - Otherwise, 'optind' communicates from one call to the next - how much of ARGV has been scanned so far. */ - -extern int optind; - -/* Callers store zero here to inhibit the error message 'getopt' prints - for unrecognized options. */ - -extern int opterr; - -/* Set to an option character which was unrecognized. */ - -extern int optopt; - -/* Get definitions and prototypes for functions to process the - arguments in ARGV (ARGC of them, minus the program name) for - options given in OPTS. - - Return the option character from OPTS just read. Return -1 when - there are no more options. For unrecognized options, or options - missing arguments, 'optopt' is set to the option letter, and '?' is - returned. - - The OPTS string is a list of characters which are recognized option - letters, optionally followed by colons, specifying that that letter - takes an argument, to be placed in 'optarg'. - - If a letter in OPTS is followed by two colons, its argument is - optional. This behavior is specific to the GNU 'getopt'. - - The argument '--' causes premature termination of argument - scanning, explicitly telling 'getopt' that there are no more - options. - - If OPTS begins with '-', then non-option arguments are treated as - arguments to the option '\1'. This behavior is specific to the GNU - 'getopt'. If OPTS begins with '+', or POSIXLY_CORRECT is set in - the environment, then do not permute arguments. - - For standards compliance, the 'argv' argument has the type - char *const *, but this is inaccurate; if argument permutation is - enabled, the argv array (not the strings it points to) must be - writable. */ - -extern int getopt (int ___argc, char *const *___argv, const char *__shortopts) - __THROW _GL_ARG_NONNULL ((2, 3)); - -__END_DECLS - -#endif /* _GETOPT_CORE_H */ diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/getopt-ext.h b/thirdparty/grub-2.04/grub-core/lib/gnulib/getopt-ext.h deleted file mode 100644 index 13cb0077b..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/getopt-ext.h +++ /dev/null @@ -1,77 +0,0 @@ -/* Declarations for getopt (GNU extensions). - Copyright (C) 1989-2019 Free Software Foundation, Inc. - This file is part of the GNU C Library and is also part of gnulib. - Patches to this file should be submitted to both projects. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU General Public - License as published by the Free Software Foundation; either - version 3 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - General Public License for more details. - - You should have received a copy of the GNU General Public - License along with the GNU C Library; if not, see - . */ - -#ifndef _GETOPT_EXT_H -#define _GETOPT_EXT_H 1 - -/* This header should not be used directly; include getopt.h instead. - Unlike most bits headers, it does not have a protective #error, - because the guard macro for getopt.h in gnulib is not fixed. */ - -__BEGIN_DECLS - -/* Describe the long-named options requested by the application. - The LONG_OPTIONS argument to getopt_long or getopt_long_only is a vector - of 'struct option' terminated by an element containing a name which is - zero. - - The field 'has_arg' is: - no_argument (or 0) if the option does not take an argument, - required_argument (or 1) if the option requires an argument, - optional_argument (or 2) if the option takes an optional argument. - - If the field 'flag' is not NULL, it points to a variable that is set - to the value given in the field 'val' when the option is found, but - left unchanged if the option is not found. - - To have a long-named option do something other than set an 'int' to - a compiled-in constant, such as set a value from 'optarg', set the - option's 'flag' field to zero and its 'val' field to a nonzero - value (the equivalent single-letter option character, if there is - one). For long options that have a zero 'flag' field, 'getopt' - returns the contents of the 'val' field. */ - -struct option -{ - const char *name; - /* has_arg can't be an enum because some compilers complain about - type mismatches in all the code that assumes it is an int. */ - int has_arg; - int *flag; - int val; -}; - -/* Names for the values of the 'has_arg' field of 'struct option'. */ - -#define no_argument 0 -#define required_argument 1 -#define optional_argument 2 - -extern int getopt_long (int ___argc, char *__getopt_argv_const *___argv, - const char *__shortopts, - const struct option *__longopts, int *__longind) - __THROW _GL_ARG_NONNULL ((2, 3)); -extern int getopt_long_only (int ___argc, char *__getopt_argv_const *___argv, - const char *__shortopts, - const struct option *__longopts, int *__longind) - __THROW _GL_ARG_NONNULL ((2, 3)); - -__END_DECLS - -#endif /* _GETOPT_EXT_H */ diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/getopt-pfx-core.h b/thirdparty/grub-2.04/grub-core/lib/gnulib/getopt-pfx-core.h deleted file mode 100644 index 8fac2691e..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/getopt-pfx-core.h +++ /dev/null @@ -1,59 +0,0 @@ -/* getopt (basic, portable features) gnulib wrapper header. - Copyright (C) 1989-2019 Free Software Foundation, Inc. - This file is part of gnulib. - Unlike most of the getopt implementation, it is NOT shared - with the GNU C Library. - - This file is free software; you can redistribute it and/or modify it - under the terms of the GNU General Public License as - published by the Free Software Foundation; either version 3 of - the License, or (at your option) any later version. - - This file is distributed in the hope that it will be useful, but - WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - General Public License for more details. - - You should have received a copy of the GNU General Public - License along with gnulib; if not, see - . */ - -#ifndef _GETOPT_PFX_CORE_H -#define _GETOPT_PFX_CORE_H 1 - -/* This header should not be used directly; include getopt.h or - unistd.h instead. It does not have a protective #error, because - the guard macro for getopt.h in gnulib is not fixed. */ - -/* Standalone applications should #define __GETOPT_PREFIX to an - identifier that prefixes the external functions and variables - defined in getopt-core.h and getopt-ext.h. Systematically - rename identifiers so that they do not collide with the system - functions and variables. Renaming avoids problems with some - compilers and linkers. */ -#ifdef __GETOPT_PREFIX -# ifndef __GETOPT_ID -# define __GETOPT_CONCAT(x, y) x ## y -# define __GETOPT_XCONCAT(x, y) __GETOPT_CONCAT (x, y) -# define __GETOPT_ID(y) __GETOPT_XCONCAT (__GETOPT_PREFIX, y) -# endif -# undef getopt -# undef optarg -# undef opterr -# undef optind -# undef optopt -# define getopt __GETOPT_ID (getopt) -# define optarg __GETOPT_ID (optarg) -# define opterr __GETOPT_ID (opterr) -# define optind __GETOPT_ID (optind) -# define optopt __GETOPT_ID (optopt) - -/* The system's getopt.h may have already included getopt-core.h to - declare the unprefixed identifiers. Undef _GETOPT_CORE_H so that - getopt-core.h declares them with prefixes. */ -# undef _GETOPT_CORE_H -#endif - -#include - -#endif /* _GETOPT_PFX_CORE_H */ diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/getopt-pfx-ext.h b/thirdparty/grub-2.04/grub-core/lib/gnulib/getopt-pfx-ext.h deleted file mode 100644 index 0e21aefb0..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/getopt-pfx-ext.h +++ /dev/null @@ -1,71 +0,0 @@ -/* getopt (GNU extensions) gnulib wrapper header. - Copyright (C) 1989-2019 Free Software Foundation, Inc. - This file is part of gnulib. - Unlike most of the getopt implementation, it is NOT shared - with the GNU C Library. - - This file is free software; you can redistribute it and/or modify it - under the terms of the GNU General Public License as - published by the Free Software Foundation; either version 3 of - the License, or (at your option) any later version. - - This file is distributed in the hope that it will be useful, but - WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - General Public License for more details. - - You should have received a copy of the GNU General Public - License along with gnulib; if not, see - . */ - -#ifndef _GETOPT_PFX_EXT_H -#define _GETOPT_PFX_EXT_H 1 - -/* This header should not be used directly; include getopt.h instead. - It does not have a protective #error, because the guard macro for - getopt.h in gnulib is not fixed. */ - -/* Standalone applications should #define __GETOPT_PREFIX to an - identifier that prefixes the external functions and variables - defined in getopt-core.h and getopt-ext.h. Systematically - rename identifiers so that they do not collide with the system - functions and variables. Renaming avoids problems with some - compilers and linkers. */ -#ifdef __GETOPT_PREFIX -# ifndef __GETOPT_ID -# define __GETOPT_CONCAT(x, y) x ## y -# define __GETOPT_XCONCAT(x, y) __GETOPT_CONCAT (x, y) -# define __GETOPT_ID(y) __GETOPT_XCONCAT (__GETOPT_PREFIX, y) -# endif -# undef getopt_long -# undef getopt_long_only -# undef option -# undef _getopt_internal -# define getopt_long __GETOPT_ID (getopt_long) -# define getopt_long_only __GETOPT_ID (getopt_long_only) -# define option __GETOPT_ID (option) -# define _getopt_internal __GETOPT_ID (getopt_internal) - -/* The system's getopt.h may have already included getopt-ext.h to - declare the unprefixed identifiers. Undef _GETOPT_EXT_H so that - getopt-ext.h declares them with prefixes. */ -# undef _GETOPT_EXT_H -#endif - -/* Standalone applications get correct prototypes for getopt_long and - getopt_long_only; they declare "char **argv". For backward - compatibility with old applications, if __GETOPT_PREFIX is not - defined, we supply GNU-libc-compatible, but incorrect, prototypes - using "char *const *argv". (GNU libc is stuck with the incorrect - prototypes, as they are baked into older versions of LSB.) */ -#ifndef __getopt_argv_const -# if defined __GETOPT_PREFIX -# define __getopt_argv_const /* empty */ -# else -# define __getopt_argv_const const -# endif -#endif - -#include - -#endif /* _GETOPT_PFX_EXT_H */ diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/getopt.c b/thirdparty/grub-2.04/grub-core/lib/gnulib/getopt.c deleted file mode 100644 index 8ee075a80..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/getopt.c +++ /dev/null @@ -1,811 +0,0 @@ -/* Getopt for GNU. - Copyright (C) 1987-2019 Free Software Foundation, Inc. - This file is part of the GNU C Library and is also part of gnulib. - Patches to this file should be submitted to both projects. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU General Public - License as published by the Free Software Foundation; either - version 3 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - General Public License for more details. - - You should have received a copy of the GNU General Public - License along with the GNU C Library; if not, see - . */ - -#ifndef _LIBC -# include -#endif - -#include "getopt.h" - -#include -#include -#include -#include - -#ifdef _LIBC -/* When used as part of glibc, error printing must be done differently - for standards compliance. getopt is not a cancellation point, so - it must not call functions that are, and it is specified by an - older standard than stdio locking, so it must not refer to - functions in the "user namespace" related to stdio locking. - Finally, it must use glibc's internal message translation so that - the messages are looked up in the proper text domain. */ -# include -# define fprintf __fxprintf_nocancel -# define flockfile(fp) _IO_flockfile (fp) -# define funlockfile(fp) _IO_funlockfile (fp) -#else -# include "gettext.h" -# define _(msgid) gettext (msgid) -/* When used standalone, flockfile and funlockfile might not be - available. */ -# if (!defined _POSIX_THREAD_SAFE_FUNCTIONS \ - || (defined _WIN32 && ! defined __CYGWIN__)) -# define flockfile(fp) /* nop */ -# define funlockfile(fp) /* nop */ -# endif -/* When used standalone, do not attempt to use alloca. */ -# define __libc_use_alloca(size) 0 -# undef alloca -# define alloca(size) (abort (), (void *)0) -#endif - -/* This implementation of 'getopt' has three modes for handling - options interspersed with non-option arguments. It can stop - scanning for options at the first non-option argument encountered, - as POSIX specifies. It can continue scanning for options after the - first non-option argument, but permute 'argv' as it goes so that, - after 'getopt' is done, all the options precede all the non-option - arguments and 'optind' points to the first non-option argument. - Or, it can report non-option arguments as if they were arguments to - the option character '\x01'. - - The default behavior of 'getopt_long' is to permute the argument list. - When this implementation is used standalone, the default behavior of - 'getopt' is to stop at the first non-option argument, but when it is - used as part of GNU libc it also permutes the argument list. In both - cases, setting the environment variable POSIXLY_CORRECT to any value - disables permutation. - - If the first character of the OPTSTRING argument to 'getopt' or - 'getopt_long' is '+', both functions will stop at the first - non-option argument. If it is '-', both functions will report - non-option arguments as arguments to the option character '\x01'. */ - -#include "getopt_int.h" - -/* For communication from 'getopt' to the caller. - When 'getopt' finds an option that takes an argument, - the argument value is returned here. - Also, when 'ordering' is RETURN_IN_ORDER, - each non-option ARGV-element is returned here. */ - -char *optarg; - -/* Index in ARGV of the next element to be scanned. - This is used for communication to and from the caller - and for communication between successive calls to 'getopt'. - - On entry to 'getopt', zero means this is the first call; initialize. - - When 'getopt' returns -1, this is the index of the first of the - non-option elements that the caller should itself scan. - - Otherwise, 'optind' communicates from one call to the next - how much of ARGV has been scanned so far. */ - -/* 1003.2 says this must be 1 before any call. */ -int optind = 1; - -/* Callers store zero here to inhibit the error message - for unrecognized options. */ - -int opterr = 1; - -/* Set to an option character which was unrecognized. - This must be initialized on some systems to avoid linking in the - system's own getopt implementation. */ - -int optopt = '?'; - -/* Keep a global copy of all internal members of getopt_data. */ - -static struct _getopt_data getopt_data; - -/* Exchange two adjacent subsequences of ARGV. - One subsequence is elements [first_nonopt,last_nonopt) - which contains all the non-options that have been skipped so far. - The other is elements [last_nonopt,optind), which contains all - the options processed since those non-options were skipped. - - 'first_nonopt' and 'last_nonopt' are relocated so that they describe - the new indices of the non-options in ARGV after they are moved. */ - -static void -exchange (char **argv, struct _getopt_data *d) -{ - int bottom = d->__first_nonopt; - int middle = d->__last_nonopt; - int top = d->optind; - char *tem; - - /* Exchange the shorter segment with the far end of the longer segment. - That puts the shorter segment into the right place. - It leaves the longer segment in the right place overall, - but it consists of two parts that need to be swapped next. */ - - while (top > middle && middle > bottom) - { - if (top - middle > middle - bottom) - { - /* Bottom segment is the short one. */ - int len = middle - bottom; - int i; - - /* Swap it with the top part of the top segment. */ - for (i = 0; i < len; i++) - { - tem = argv[bottom + i]; - argv[bottom + i] = argv[top - (middle - bottom) + i]; - argv[top - (middle - bottom) + i] = tem; - } - /* Exclude the moved bottom segment from further swapping. */ - top -= len; - } - else - { - /* Top segment is the short one. */ - int len = top - middle; - int i; - - /* Swap it with the bottom part of the bottom segment. */ - for (i = 0; i < len; i++) - { - tem = argv[bottom + i]; - argv[bottom + i] = argv[middle + i]; - argv[middle + i] = tem; - } - /* Exclude the moved top segment from further swapping. */ - bottom += len; - } - } - - /* Update records for the slots the non-options now occupy. */ - - d->__first_nonopt += (d->optind - d->__last_nonopt); - d->__last_nonopt = d->optind; -} - -/* Process the argument starting with d->__nextchar as a long option. - d->optind should *not* have been advanced over this argument. - - If the value returned is -1, it was not actually a long option, the - state is unchanged, and the argument should be processed as a set - of short options (this can only happen when long_only is true). - Otherwise, the option (and its argument, if any) have been consumed - and the return value is the value to return from _getopt_internal_r. */ -static int -process_long_option (int argc, char **argv, const char *optstring, - const struct option *longopts, int *longind, - int long_only, struct _getopt_data *d, - int print_errors, const char *prefix) -{ - char *nameend; - size_t namelen; - const struct option *p; - const struct option *pfound = NULL; - int n_options; - int option_index; - - for (nameend = d->__nextchar; *nameend && *nameend != '='; nameend++) - /* Do nothing. */ ; - namelen = nameend - d->__nextchar; - - /* First look for an exact match, counting the options as a side - effect. */ - for (p = longopts, n_options = 0; p->name; p++, n_options++) - if (!strncmp (p->name, d->__nextchar, namelen) - && namelen == strlen (p->name)) - { - /* Exact match found. */ - pfound = p; - option_index = n_options; - break; - } - - if (pfound == NULL) - { - /* Didn't find an exact match, so look for abbreviations. */ - unsigned char *ambig_set = NULL; - int ambig_malloced = 0; - int ambig_fallback = 0; - int indfound = -1; - - for (p = longopts, option_index = 0; p->name; p++, option_index++) - if (!strncmp (p->name, d->__nextchar, namelen)) - { - if (pfound == NULL) - { - /* First nonexact match found. */ - pfound = p; - indfound = option_index; - } - else if (long_only - || pfound->has_arg != p->has_arg - || pfound->flag != p->flag - || pfound->val != p->val) - { - /* Second or later nonexact match found. */ - if (!ambig_fallback) - { - if (!print_errors) - /* Don't waste effort tracking the ambig set if - we're not going to print it anyway. */ - ambig_fallback = 1; - else if (!ambig_set) - { - if (__libc_use_alloca (n_options)) - ambig_set = alloca (n_options); - else if ((ambig_set = malloc (n_options)) == NULL) - /* Fall back to simpler error message. */ - ambig_fallback = 1; - else - ambig_malloced = 1; - - if (ambig_set) - { - memset (ambig_set, 0, n_options); - ambig_set[indfound] = 1; - } - } - if (ambig_set) - ambig_set[option_index] = 1; - } - } - } - - if (ambig_set || ambig_fallback) - { - if (print_errors) - { - if (ambig_fallback) - fprintf (stderr, _("%s: option '%s%s' is ambiguous\n"), - argv[0], prefix, d->__nextchar); - else - { - flockfile (stderr); - fprintf (stderr, - _("%s: option '%s%s' is ambiguous; possibilities:"), - argv[0], prefix, d->__nextchar); - - for (option_index = 0; option_index < n_options; option_index++) - if (ambig_set[option_index]) - fprintf (stderr, " '%s%s'", - prefix, longopts[option_index].name); - - /* This must use 'fprintf' even though it's only - printing a single character, so that it goes through - __fxprintf_nocancel when compiled as part of glibc. */ - fprintf (stderr, "\n"); - funlockfile (stderr); - } - } - if (ambig_malloced) - free (ambig_set); - d->__nextchar += strlen (d->__nextchar); - d->optind++; - d->optopt = 0; - return '?'; - } - - option_index = indfound; - } - - if (pfound == NULL) - { - /* Can't find it as a long option. If this is not getopt_long_only, - or the option starts with '--' or is not a valid short option, - then it's an error. */ - if (!long_only || argv[d->optind][1] == '-' - || strchr (optstring, *d->__nextchar) == NULL) - { - if (print_errors) - fprintf (stderr, _("%s: unrecognized option '%s%s'\n"), - argv[0], prefix, d->__nextchar); - - d->__nextchar = NULL; - d->optind++; - d->optopt = 0; - return '?'; - } - - /* Otherwise interpret it as a short option. */ - return -1; - } - - /* We have found a matching long option. Consume it. */ - d->optind++; - d->__nextchar = NULL; - if (*nameend) - { - /* Don't test has_arg with >, because some C compilers don't - allow it to be used on enums. */ - if (pfound->has_arg) - d->optarg = nameend + 1; - else - { - if (print_errors) - fprintf (stderr, - _("%s: option '%s%s' doesn't allow an argument\n"), - argv[0], prefix, pfound->name); - - d->optopt = pfound->val; - return '?'; - } - } - else if (pfound->has_arg == 1) - { - if (d->optind < argc) - d->optarg = argv[d->optind++]; - else - { - if (print_errors) - fprintf (stderr, - _("%s: option '%s%s' requires an argument\n"), - argv[0], prefix, pfound->name); - - d->optopt = pfound->val; - return optstring[0] == ':' ? ':' : '?'; - } - } - - if (longind != NULL) - *longind = option_index; - if (pfound->flag) - { - *(pfound->flag) = pfound->val; - return 0; - } - return pfound->val; -} - -/* Initialize internal data upon the first call to getopt. */ - -static const char * -_getopt_initialize (int argc _GL_UNUSED, - char **argv _GL_UNUSED, const char *optstring, - struct _getopt_data *d, int posixly_correct) -{ - /* Start processing options with ARGV-element 1 (since ARGV-element 0 - is the program name); the sequence of previously skipped - non-option ARGV-elements is empty. */ - if (d->optind == 0) - d->optind = 1; - - d->__first_nonopt = d->__last_nonopt = d->optind; - d->__nextchar = NULL; - - /* Determine how to handle the ordering of options and nonoptions. */ - if (optstring[0] == '-') - { - d->__ordering = RETURN_IN_ORDER; - ++optstring; - } - else if (optstring[0] == '+') - { - d->__ordering = REQUIRE_ORDER; - ++optstring; - } - else if (posixly_correct || !!getenv ("POSIXLY_CORRECT")) - d->__ordering = REQUIRE_ORDER; - else - d->__ordering = PERMUTE; - - d->__initialized = 1; - return optstring; -} - -/* Scan elements of ARGV (whose length is ARGC) for option characters - given in OPTSTRING. - - If an element of ARGV starts with '-', and is not exactly "-" or "--", - then it is an option element. The characters of this element - (aside from the initial '-') are option characters. If 'getopt' - is called repeatedly, it returns successively each of the option characters - from each of the option elements. - - If 'getopt' finds another option character, it returns that character, - updating 'optind' and 'nextchar' so that the next call to 'getopt' can - resume the scan with the following option character or ARGV-element. - - If there are no more option characters, 'getopt' returns -1. - Then 'optind' is the index in ARGV of the first ARGV-element - that is not an option. (The ARGV-elements have been permuted - so that those that are not options now come last.) - - OPTSTRING is a string containing the legitimate option characters. - If an option character is seen that is not listed in OPTSTRING, - return '?' after printing an error message. If you set 'opterr' to - zero, the error message is suppressed but we still return '?'. - - If a char in OPTSTRING is followed by a colon, that means it wants an arg, - so the following text in the same ARGV-element, or the text of the following - ARGV-element, is returned in 'optarg'. Two colons mean an option that - wants an optional arg; if there is text in the current ARGV-element, - it is returned in 'optarg', otherwise 'optarg' is set to zero. - - If OPTSTRING starts with '-' or '+', it requests different methods of - handling the non-option ARGV-elements. - See the comments about RETURN_IN_ORDER and REQUIRE_ORDER, above. - - Long-named options begin with '--' instead of '-'. - Their names may be abbreviated as long as the abbreviation is unique - or is an exact match for some defined option. If they have an - argument, it follows the option name in the same ARGV-element, separated - from the option name by a '=', or else the in next ARGV-element. - When 'getopt' finds a long-named option, it returns 0 if that option's - 'flag' field is nonzero, the value of the option's 'val' field - if the 'flag' field is zero. - - The elements of ARGV aren't really const, because we permute them. - But we pretend they're const in the prototype to be compatible - with other systems. - - LONGOPTS is a vector of 'struct option' terminated by an - element containing a name which is zero. - - LONGIND returns the index in LONGOPT of the long-named option found. - It is only valid when a long-named option has been found by the most - recent call. - - If LONG_ONLY is nonzero, '-' as well as '--' can introduce - long-named options. */ - -int -_getopt_internal_r (int argc, char **argv, const char *optstring, - const struct option *longopts, int *longind, - int long_only, struct _getopt_data *d, int posixly_correct) -{ - int print_errors = d->opterr; - - if (argc < 1) - return -1; - - d->optarg = NULL; - - if (d->optind == 0 || !d->__initialized) - optstring = _getopt_initialize (argc, argv, optstring, d, posixly_correct); - else if (optstring[0] == '-' || optstring[0] == '+') - optstring++; - - if (optstring[0] == ':') - print_errors = 0; - - /* Test whether ARGV[optind] points to a non-option argument. */ -#define NONOPTION_P (argv[d->optind][0] != '-' || argv[d->optind][1] == '\0') - - if (d->__nextchar == NULL || *d->__nextchar == '\0') - { - /* Advance to the next ARGV-element. */ - - /* Give FIRST_NONOPT & LAST_NONOPT rational values if OPTIND has been - moved back by the user (who may also have changed the arguments). */ - if (d->__last_nonopt > d->optind) - d->__last_nonopt = d->optind; - if (d->__first_nonopt > d->optind) - d->__first_nonopt = d->optind; - - if (d->__ordering == PERMUTE) - { - /* If we have just processed some options following some non-options, - exchange them so that the options come first. */ - - if (d->__first_nonopt != d->__last_nonopt - && d->__last_nonopt != d->optind) - exchange (argv, d); - else if (d->__last_nonopt != d->optind) - d->__first_nonopt = d->optind; - - /* Skip any additional non-options - and extend the range of non-options previously skipped. */ - - while (d->optind < argc && NONOPTION_P) - d->optind++; - d->__last_nonopt = d->optind; - } - - /* The special ARGV-element '--' means premature end of options. - Skip it like a null option, - then exchange with previous non-options as if it were an option, - then skip everything else like a non-option. */ - - if (d->optind != argc && !strcmp (argv[d->optind], "--")) - { - d->optind++; - - if (d->__first_nonopt != d->__last_nonopt - && d->__last_nonopt != d->optind) - exchange (argv, d); - else if (d->__first_nonopt == d->__last_nonopt) - d->__first_nonopt = d->optind; - d->__last_nonopt = argc; - - d->optind = argc; - } - - /* If we have done all the ARGV-elements, stop the scan - and back over any non-options that we skipped and permuted. */ - - if (d->optind == argc) - { - /* Set the next-arg-index to point at the non-options - that we previously skipped, so the caller will digest them. */ - if (d->__first_nonopt != d->__last_nonopt) - d->optind = d->__first_nonopt; - return -1; - } - - /* If we have come to a non-option and did not permute it, - either stop the scan or describe it to the caller and pass it by. */ - - if (NONOPTION_P) - { - if (d->__ordering == REQUIRE_ORDER) - return -1; - d->optarg = argv[d->optind++]; - return 1; - } - - /* We have found another option-ARGV-element. - Check whether it might be a long option. */ - if (longopts) - { - if (argv[d->optind][1] == '-') - { - /* "--foo" is always a long option. The special option - "--" was handled above. */ - d->__nextchar = argv[d->optind] + 2; - return process_long_option (argc, argv, optstring, longopts, - longind, long_only, d, - print_errors, "--"); - } - - /* If long_only and the ARGV-element has the form "-f", - where f is a valid short option, don't consider it an - abbreviated form of a long option that starts with f. - Otherwise there would be no way to give the -f short - option. - - On the other hand, if there's a long option "fubar" and - the ARGV-element is "-fu", do consider that an - abbreviation of the long option, just like "--fu", and - not "-f" with arg "u". - - This distinction seems to be the most useful approach. */ - if (long_only && (argv[d->optind][2] - || !strchr (optstring, argv[d->optind][1]))) - { - int code; - d->__nextchar = argv[d->optind] + 1; - code = process_long_option (argc, argv, optstring, longopts, - longind, long_only, d, - print_errors, "-"); - if (code != -1) - return code; - } - } - - /* It is not a long option. Skip the initial punctuation. */ - d->__nextchar = argv[d->optind] + 1; - } - - /* Look at and handle the next short option-character. */ - - { - char c = *d->__nextchar++; - const char *temp = strchr (optstring, c); - - /* Increment 'optind' when we start to process its last character. */ - if (*d->__nextchar == '\0') - ++d->optind; - - if (temp == NULL || c == ':' || c == ';') - { - if (print_errors) - fprintf (stderr, _("%s: invalid option -- '%c'\n"), argv[0], c); - d->optopt = c; - return '?'; - } - - /* Convenience. Treat POSIX -W foo same as long option --foo */ - if (temp[0] == 'W' && temp[1] == ';' && longopts != NULL) - { - /* This is an option that requires an argument. */ - if (*d->__nextchar != '\0') - d->optarg = d->__nextchar; - else if (d->optind == argc) - { - if (print_errors) - fprintf (stderr, - _("%s: option requires an argument -- '%c'\n"), - argv[0], c); - - d->optopt = c; - if (optstring[0] == ':') - c = ':'; - else - c = '?'; - return c; - } - else - d->optarg = argv[d->optind]; - - d->__nextchar = d->optarg; - d->optarg = NULL; - return process_long_option (argc, argv, optstring, longopts, longind, - 0 /* long_only */, d, print_errors, "-W "); - } - if (temp[1] == ':') - { - if (temp[2] == ':') - { - /* This is an option that accepts an argument optionally. */ - if (*d->__nextchar != '\0') - { - d->optarg = d->__nextchar; - d->optind++; - } - else - d->optarg = NULL; - d->__nextchar = NULL; - } - else - { - /* This is an option that requires an argument. */ - if (*d->__nextchar != '\0') - { - d->optarg = d->__nextchar; - /* If we end this ARGV-element by taking the rest as an arg, - we must advance to the next element now. */ - d->optind++; - } - else if (d->optind == argc) - { - if (print_errors) - fprintf (stderr, - _("%s: option requires an argument -- '%c'\n"), - argv[0], c); - - d->optopt = c; - if (optstring[0] == ':') - c = ':'; - else - c = '?'; - } - else - /* We already incremented 'optind' once; - increment it again when taking next ARGV-elt as argument. */ - d->optarg = argv[d->optind++]; - d->__nextchar = NULL; - } - } - return c; - } -} - -int -_getopt_internal (int argc, char **argv, const char *optstring, - const struct option *longopts, int *longind, int long_only, - int posixly_correct) -{ - int result; - - getopt_data.optind = optind; - getopt_data.opterr = opterr; - - result = _getopt_internal_r (argc, argv, optstring, longopts, - longind, long_only, &getopt_data, - posixly_correct); - - optind = getopt_data.optind; - optarg = getopt_data.optarg; - optopt = getopt_data.optopt; - - return result; -} - -/* glibc gets a LSB-compliant getopt and a POSIX-complaint __posix_getopt. - Standalone applications just get a POSIX-compliant getopt. - POSIX and LSB both require these functions to take 'char *const *argv' - even though this is incorrect (because of the permutation). */ -#define GETOPT_ENTRY(NAME, POSIXLY_CORRECT) \ - int \ - NAME (int argc, char *const *argv, const char *optstring) \ - { \ - return _getopt_internal (argc, (char **)argv, optstring, \ - 0, 0, 0, POSIXLY_CORRECT); \ - } - -#ifdef _LIBC -GETOPT_ENTRY(getopt, 0) -GETOPT_ENTRY(__posix_getopt, 1) -#else -GETOPT_ENTRY(getopt, 1) -#endif - - -#ifdef TEST - -/* Compile with -DTEST to make an executable for use in testing - the above definition of 'getopt'. */ - -int -main (int argc, char **argv) -{ - int c; - int digit_optind = 0; - - while (1) - { - int this_option_optind = optind ? optind : 1; - - c = getopt (argc, argv, "abc:d:0123456789"); - if (c == -1) - break; - - switch (c) - { - case '0': - case '1': - case '2': - case '3': - case '4': - case '5': - case '6': - case '7': - case '8': - case '9': - if (digit_optind != 0 && digit_optind != this_option_optind) - printf ("digits occur in two different argv-elements.\n"); - digit_optind = this_option_optind; - printf ("option %c\n", c); - break; - - case 'a': - printf ("option a\n"); - break; - - case 'b': - printf ("option b\n"); - break; - - case 'c': - printf ("option c with value '%s'\n", optarg); - break; - - case '?': - break; - - default: - printf ("?? getopt returned character code 0%o ??\n", c); - } - } - - if (optind < argc) - { - printf ("non-option ARGV-elements: "); - while (optind < argc) - printf ("%s ", argv[optind++]); - printf ("\n"); - } - - exit (0); -} - -#endif /* TEST */ diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/getopt.in.h b/thirdparty/grub-2.04/grub-core/lib/gnulib/getopt.in.h deleted file mode 100644 index c77f34ce5..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/getopt.in.h +++ /dev/null @@ -1,61 +0,0 @@ -/* Declarations for getopt. - Copyright (C) 1989-2019 Free Software Foundation, Inc. - This file is part of gnulib. - Unlike most of the getopt implementation, it is NOT shared - with the GNU C Library, which supplies a different version of - this file. - - This file is free software; you can redistribute it and/or modify it - under the terms of the GNU General Public License as - published by the Free Software Foundation; either version 3 of - the License, or (at your option) any later version. - - This file is distributed in the hope that it will be useful, but - WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - General Public License for more details. - - You should have received a copy of the GNU General Public - License along with gnulib; if not, see . */ - -#ifndef _@GUARD_PREFIX@_GETOPT_H - -#if __GNUC__ >= 3 -@PRAGMA_SYSTEM_HEADER@ -#endif -@PRAGMA_COLUMNS@ - -/* The include_next requires a split double-inclusion guard. We must - also inform the replacement unistd.h to not recursively use - ; our definitions will be present soon enough. */ -#if @HAVE_GETOPT_H@ -# define _GL_SYSTEM_GETOPT -# @INCLUDE_NEXT@ @NEXT_GETOPT_H@ -# undef _GL_SYSTEM_GETOPT -#endif - -#define _@GUARD_PREFIX@_GETOPT_H 1 - -/* Standalone applications should #define __GETOPT_PREFIX to an - identifier that prefixes the external functions and variables - defined in getopt-core.h and getopt-ext.h. When this happens, - include the headers that might declare getopt so that they will not - cause confusion if included after this file (if the system had - , we have already included it). */ -#if defined __GETOPT_PREFIX -# if !@HAVE_GETOPT_H@ -# define __need_system_stdlib_h -# include -# undef __need_system_stdlib_h -# include -# include -# endif -#endif - -/* The definition of _GL_ARG_NONNULL is copied here. */ - -#include -#include -#include - -#endif /* _@GUARD_PREFIX@_GETOPT_H */ diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/getopt1.c b/thirdparty/grub-2.04/grub-core/lib/gnulib/getopt1.c deleted file mode 100644 index 883aa6bbc..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/getopt1.c +++ /dev/null @@ -1,159 +0,0 @@ -/* getopt_long and getopt_long_only entry points for GNU getopt. - Copyright (C) 1987-2019 Free Software Foundation, Inc. - This file is part of the GNU C Library and is also part of gnulib. - Patches to this file should be submitted to both projects. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU General Public - License as published by the Free Software Foundation; either - version 3 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - General Public License for more details. - - You should have received a copy of the GNU General Public - License along with the GNU C Library; if not, see - . */ - -#ifndef _LIBC -# include -#endif - -#include "getopt.h" -#include "getopt_int.h" - -int -getopt_long (int argc, char *__getopt_argv_const *argv, const char *options, - const struct option *long_options, int *opt_index) -{ - return _getopt_internal (argc, (char **) argv, options, long_options, - opt_index, 0, 0); -} - -int -_getopt_long_r (int argc, char **argv, const char *options, - const struct option *long_options, int *opt_index, - struct _getopt_data *d) -{ - return _getopt_internal_r (argc, argv, options, long_options, opt_index, - 0, d, 0); -} - -/* Like getopt_long, but '-' as well as '--' can indicate a long option. - If an option that starts with '-' (not '--') doesn't match a long option, - but does match a short option, it is parsed as a short option - instead. */ - -int -getopt_long_only (int argc, char *__getopt_argv_const *argv, - const char *options, - const struct option *long_options, int *opt_index) -{ - return _getopt_internal (argc, (char **) argv, options, long_options, - opt_index, 1, 0); -} - -int -_getopt_long_only_r (int argc, char **argv, const char *options, - const struct option *long_options, int *opt_index, - struct _getopt_data *d) -{ - return _getopt_internal_r (argc, argv, options, long_options, opt_index, - 1, d, 0); -} - - -#ifdef TEST - -#include -#include - -int -main (int argc, char **argv) -{ - int c; - int digit_optind = 0; - - while (1) - { - int this_option_optind = optind ? optind : 1; - int option_index = 0; - static const struct option long_options[] = - { - {"add", 1, 0, 0}, - {"append", 0, 0, 0}, - {"delete", 1, 0, 0}, - {"verbose", 0, 0, 0}, - {"create", 0, 0, 0}, - {"file", 1, 0, 0}, - {0, 0, 0, 0} - }; - - c = getopt_long (argc, argv, "abc:d:0123456789", - long_options, &option_index); - if (c == -1) - break; - - switch (c) - { - case 0: - printf ("option %s", long_options[option_index].name); - if (optarg) - printf (" with arg %s", optarg); - printf ("\n"); - break; - - case '0': - case '1': - case '2': - case '3': - case '4': - case '5': - case '6': - case '7': - case '8': - case '9': - if (digit_optind != 0 && digit_optind != this_option_optind) - printf ("digits occur in two different argv-elements.\n"); - digit_optind = this_option_optind; - printf ("option %c\n", c); - break; - - case 'a': - printf ("option a\n"); - break; - - case 'b': - printf ("option b\n"); - break; - - case 'c': - printf ("option c with value '%s'\n", optarg); - break; - - case 'd': - printf ("option d with value '%s'\n", optarg); - break; - - case '?': - break; - - default: - printf ("?? getopt returned character code 0%o ??\n", c); - } - } - - if (optind < argc) - { - printf ("non-option ARGV-elements: "); - while (optind < argc) - printf ("%s ", argv[optind++]); - printf ("\n"); - } - - exit (0); -} - -#endif /* TEST */ diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/getopt_int.h b/thirdparty/grub-2.04/grub-core/lib/gnulib/getopt_int.h deleted file mode 100644 index e63706f60..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/getopt_int.h +++ /dev/null @@ -1,118 +0,0 @@ -/* Internal declarations for getopt. - Copyright (C) 1989-2019 Free Software Foundation, Inc. - This file is part of the GNU C Library and is also part of gnulib. - Patches to this file should be submitted to both projects. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU General Public - License as published by the Free Software Foundation; either - version 3 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - General Public License for more details. - - You should have received a copy of the GNU General Public - License along with the GNU C Library; if not, see - . */ - -#ifndef _GETOPT_INT_H -#define _GETOPT_INT_H 1 - -#include - -extern int _getopt_internal (int ___argc, char **___argv, - const char *__shortopts, - const struct option *__longopts, int *__longind, - int __long_only, int __posixly_correct); - - -/* Reentrant versions which can handle parsing multiple argument - vectors at the same time. */ - -/* Describe how to deal with options that follow non-option ARGV-elements. - - REQUIRE_ORDER means don't recognize them as options; stop option - processing when the first non-option is seen. This is what POSIX - specifies should happen. - - PERMUTE means permute the contents of ARGV as we scan, so that - eventually all the non-options are at the end. This allows options - to be given in any order, even with programs that were not written - to expect this. - - RETURN_IN_ORDER is an option available to programs that were - written to expect options and other ARGV-elements in any order - and that care about the ordering of the two. We describe each - non-option ARGV-element as if it were the argument of an option - with character code 1. - - The special argument '--' forces an end of option-scanning regardless - of the value of 'ordering'. In the case of RETURN_IN_ORDER, only - '--' can cause 'getopt' to return -1 with 'optind' != ARGC. */ - -enum __ord - { - REQUIRE_ORDER, PERMUTE, RETURN_IN_ORDER - }; - -/* Data type for reentrant functions. */ -struct _getopt_data -{ - /* These have exactly the same meaning as the corresponding global - variables, except that they are used for the reentrant - versions of getopt. */ - int optind; - int opterr; - int optopt; - char *optarg; - - /* Internal members. */ - - /* True if the internal members have been initialized. */ - int __initialized; - - /* The next char to be scanned in the option-element - in which the last option character we returned was found. - This allows us to pick up the scan where we left off. - - If this is zero, or a null string, it means resume the scan - by advancing to the next ARGV-element. */ - char *__nextchar; - - /* See __ord above. */ - enum __ord __ordering; - - /* Handle permutation of arguments. */ - - /* Describe the part of ARGV that contains non-options that have - been skipped. 'first_nonopt' is the index in ARGV of the first - of them; 'last_nonopt' is the index after the last of them. */ - - int __first_nonopt; - int __last_nonopt; -}; - -/* The initializer is necessary to set OPTIND and OPTERR to their - default values and to clear the initialization flag. */ -#define _GETOPT_DATA_INITIALIZER { 1, 1 } - -extern int _getopt_internal_r (int ___argc, char **___argv, - const char *__shortopts, - const struct option *__longopts, int *__longind, - int __long_only, struct _getopt_data *__data, - int __posixly_correct); - -extern int _getopt_long_r (int ___argc, char **___argv, - const char *__shortopts, - const struct option *__longopts, int *__longind, - struct _getopt_data *__data); - -extern int _getopt_long_only_r (int ___argc, char **___argv, - const char *__shortopts, - const struct option *__longopts, - int *__longind, - struct _getopt_data *__data); - -#endif /* getopt_int.h */ diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/getprogname.c b/thirdparty/grub-2.04/grub-core/lib/gnulib/getprogname.c deleted file mode 100644 index 96fa75961..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/getprogname.c +++ /dev/null @@ -1,255 +0,0 @@ -/* Program name management. - Copyright (C) 2016-2019 Free Software Foundation, Inc. - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . */ - -#include - -/* Specification. */ -#include "getprogname.h" - -#include /* get program_invocation_name declaration */ -#include /* get __argv declaration */ - -#ifdef _AIX -# include -# include -# include -#endif - -#ifdef __MVS__ -# ifndef _OPEN_SYS -# define _OPEN_SYS -# endif -# include -# include -#endif - -#ifdef __hpux -# include -# include -# include -# include -#endif - -#ifdef __sgi -# include -# include -# include -# include -# include -#endif - -#include "dirname.h" - -#ifndef HAVE_GETPROGNAME /* not Mac OS X, FreeBSD, NetBSD, OpenBSD >= 5.4, Cygwin */ -char const * -getprogname (void) -{ -# if HAVE_DECL_PROGRAM_INVOCATION_SHORT_NAME /* glibc, BeOS */ - /* https://www.gnu.org/software/libc/manual/html_node/Error-Messages.html */ - return program_invocation_short_name; -# elif HAVE_DECL_PROGRAM_INVOCATION_NAME /* glibc, BeOS */ - /* https://www.gnu.org/software/libc/manual/html_node/Error-Messages.html */ - return last_component (program_invocation_name); -# elif HAVE_GETEXECNAME /* Solaris */ - /* https://docs.oracle.com/cd/E19253-01/816-5168/6mbb3hrb1/index.html */ - const char *p = getexecname (); - if (!p) - p = "?"; - return last_component (p); -# elif HAVE_DECL___ARGV /* mingw, MSVC */ - /* https://msdn.microsoft.com/en-us/library/dn727674.aspx */ - const char *p = __argv && __argv[0] ? __argv[0] : "?"; - return last_component (p); -# elif HAVE_VAR___PROGNAME /* OpenBSD, QNX */ - /* https://man.openbsd.org/style.9 */ - /* http://www.qnx.de/developers/docs/6.5.0/index.jsp?topic=%2Fcom.qnx.doc.neutrino_lib_ref%2Fp%2F__progname.html */ - /* Be careful to declare this only when we absolutely need it - (OpenBSD 5.1), rather than when it's available. Otherwise, - its mere declaration makes program_invocation_short_name - malfunction (have zero length) with Fedora 25's glibc. */ - extern char *__progname; - const char *p = __progname; - return p && p[0] ? p : "?"; -# elif _AIX /* AIX */ - /* Idea by Bastien ROUCARIÈS, - https://lists.gnu.org/r/bug-gnulib/2010-12/msg00095.html - Reference: https://www.ibm.com/support/knowledgecenter/en/ssw_aix_61/com.ibm.aix.basetrf1/getprocs.htm - */ - static char *p; - static int first = 1; - if (first) - { - first = 0; - pid_t pid = getpid (); - struct procentry64 procs; - p = (0 < getprocs64 (&procs, sizeof procs, NULL, 0, &pid, 1) - ? strdup (procs.pi_comm) - : NULL); - if (!p) - p = "?"; - } - return p; -# elif defined __hpux - static char *p; - static int first = 1; - if (first) - { - first = 0; - pid_t pid = getpid (); - struct pst_status status; - if (pstat_getproc (&status, sizeof status, 0, pid) > 0) - { - char *ucomm = status.pst_ucomm; - char *cmd = status.pst_cmd; - if (strlen (ucomm) < PST_UCOMMLEN - 1) - p = ucomm; - else - { - /* ucomm is truncated to length PST_UCOMMLEN - 1. - Look at cmd instead. */ - char *space = strchr (cmd, ' '); - if (space != NULL) - *space = '\0'; - p = strrchr (cmd, '/'); - if (p != NULL) - p++; - else - p = cmd; - if (strlen (p) > PST_UCOMMLEN - 1 - && memcmp (p, ucomm, PST_UCOMMLEN - 1) == 0) - /* p is less truncated than ucomm. */ - ; - else - p = ucomm; - } - p = strdup (p); - } - else - { -# if !defined __LP64__ - /* Support for 32-bit programs running in 64-bit HP-UX. - The documented way to do this is to use the same source code - as above, but in a compilation unit where '#define _PSTAT64 1' - is in effect. I prefer a single compilation unit; the struct - size and the offsets are not going to change. */ - char status64[1216]; - if (__pstat_getproc64 (status64, sizeof status64, 0, pid) > 0) - { - char *ucomm = status64 + 288; - char *cmd = status64 + 168; - if (strlen (ucomm) < PST_UCOMMLEN - 1) - p = ucomm; - else - { - /* ucomm is truncated to length PST_UCOMMLEN - 1. - Look at cmd instead. */ - char *space = strchr (cmd, ' '); - if (space != NULL) - *space = '\0'; - p = strrchr (cmd, '/'); - if (p != NULL) - p++; - else - p = cmd; - if (strlen (p) > PST_UCOMMLEN - 1 - && memcmp (p, ucomm, PST_UCOMMLEN - 1) == 0) - /* p is less truncated than ucomm. */ - ; - else - p = ucomm; - } - p = strdup (p); - } - else -# endif - p = NULL; - } - if (!p) - p = "?"; - } - return p; -# elif __MVS__ /* z/OS */ - /* https://www.ibm.com/support/knowledgecenter/SSLTBW_2.1.0/com.ibm.zos.v2r1.bpxbd00/rtwgetp.htm */ - static char *p = "?"; - static int first = 1; - if (first) - { - pid_t pid = getpid (); - int token; - W_PSPROC buf; - first = 0; - memset (&buf, 0, sizeof(buf)); - buf.ps_cmdptr = (char *) malloc (buf.ps_cmdlen = PS_CMDBLEN_LONG); - buf.ps_conttyptr = (char *) malloc (buf.ps_conttylen = PS_CONTTYBLEN); - buf.ps_pathptr = (char *) malloc (buf.ps_pathlen = PS_PATHBLEN); - if (buf.ps_cmdptr && buf.ps_conttyptr && buf.ps_pathptr) - { - for (token = 0; token >= 0; - token = w_getpsent (token, &buf, sizeof(buf))) - { - if (token > 0 && buf.ps_pid == pid) - { - char *s = strdup (last_component (buf.ps_pathptr)); - if (s) - p = s; - break; - } - } - } - free (buf.ps_cmdptr); - free (buf.ps_conttyptr); - free (buf.ps_pathptr); - } - return p; -# elif defined __sgi /* IRIX */ - char filename[50]; - int fd; - - sprintf (filename, "/proc/pinfo/%d", (int) getpid ()); - fd = open (filename, O_RDONLY); - if (0 <= fd) - { - prpsinfo_t buf; - int ioctl_ok = 0 <= ioctl (fd, PIOCPSINFO, &buf); - close (fd); - if (ioctl_ok) - { - char *name = buf.pr_fname; - size_t namesize = sizeof buf.pr_fname; - char *namenul = memchr (name, '\0', namesize); - size_t namelen = namenul ? namenul - name : namesize; - char *namecopy = malloc (namelen + 1); - if (namecopy) - { - namecopy[namelen] = 0; - return memcpy (namecopy, name, namelen); - } - } - } - return NULL; -# else -# error "getprogname module not ported to this OS" -# endif -} - -#endif - -/* - * Hey Emacs! - * Local Variables: - * coding: utf-8 - * End: - */ diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/getprogname.h b/thirdparty/grub-2.04/grub-core/lib/gnulib/getprogname.h deleted file mode 100644 index 1590b38d3..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/getprogname.h +++ /dev/null @@ -1,40 +0,0 @@ -/* Program name management. - Copyright (C) 2016-2019 Free Software Foundation, Inc. - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . */ - -#ifndef _GL_GETPROGNAME_H -#define _GL_GETPROGNAME_H - -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* Return the base name of the executing program. - On native Windows this will usually end in ".exe" or ".EXE". */ -#ifndef HAVE_GETPROGNAME -extern char const *getprogname (void) -# ifdef HAVE_DECL_PROGRAM_INVOCATION_NAME - _GL_ATTRIBUTE_PURE -# endif - ; -#endif - -#ifdef __cplusplus -} -#endif - -#endif diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/gettext.h b/thirdparty/grub-2.04/grub-core/lib/gnulib/gettext.h deleted file mode 100644 index 89f53d917..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/gettext.h +++ /dev/null @@ -1,294 +0,0 @@ -/* Convenience header for conditional use of GNU . - Copyright (C) 1995-1998, 2000-2002, 2004-2006, 2009-2019 Free Software - Foundation, Inc. - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3, or (at your option) - any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License along - with this program; if not, see . */ - -#ifndef _LIBGETTEXT_H -#define _LIBGETTEXT_H 1 - -/* NLS can be disabled through the configure --disable-nls option - or through "#define ENABLE NLS 0" before including this file. */ -#if defined ENABLE_NLS && ENABLE_NLS - -/* Get declarations of GNU message catalog functions. */ -# include - -/* You can set the DEFAULT_TEXT_DOMAIN macro to specify the domain used by - the gettext() and ngettext() macros. This is an alternative to calling - textdomain(), and is useful for libraries. */ -# ifdef DEFAULT_TEXT_DOMAIN -# undef gettext -# define gettext(Msgid) \ - dgettext (DEFAULT_TEXT_DOMAIN, Msgid) -# undef ngettext -# define ngettext(Msgid1, Msgid2, N) \ - dngettext (DEFAULT_TEXT_DOMAIN, Msgid1, Msgid2, N) -# endif - -#else - -/* Solaris /usr/include/locale.h includes /usr/include/libintl.h, which - chokes if dcgettext is defined as a macro. So include it now, to make - later inclusions of a NOP. We don't include - as well because people using "gettext.h" will not include , - and also including would fail on SunOS 4, whereas - is OK. */ -#if defined(__sun) -# include -#endif - -/* Many header files from the libstdc++ coming with g++ 3.3 or newer include - , which chokes if dcgettext is defined as a macro. So include - it now, to make later inclusions of a NOP. */ -#if defined(__cplusplus) && defined(__GNUG__) && (__GNUC__ >= 3) -# include -# if (__GLIBC__ >= 2 && !defined __UCLIBC__) || _GLIBCXX_HAVE_LIBINTL_H -# include -# endif -#endif - -/* Disabled NLS. - The casts to 'const char *' serve the purpose of producing warnings - for invalid uses of the value returned from these functions. - On pre-ANSI systems without 'const', the config.h file is supposed to - contain "#define const". */ -# undef gettext -# define gettext(Msgid) ((const char *) (Msgid)) -# undef dgettext -# define dgettext(Domainname, Msgid) ((void) (Domainname), gettext (Msgid)) -# undef dcgettext -# define dcgettext(Domainname, Msgid, Category) \ - ((void) (Category), dgettext (Domainname, Msgid)) -# undef ngettext -# define ngettext(Msgid1, Msgid2, N) \ - ((N) == 1 \ - ? ((void) (Msgid2), (const char *) (Msgid1)) \ - : ((void) (Msgid1), (const char *) (Msgid2))) -# undef dngettext -# define dngettext(Domainname, Msgid1, Msgid2, N) \ - ((void) (Domainname), ngettext (Msgid1, Msgid2, N)) -# undef dcngettext -# define dcngettext(Domainname, Msgid1, Msgid2, N, Category) \ - ((void) (Category), dngettext (Domainname, Msgid1, Msgid2, N)) -# undef textdomain -# define textdomain(Domainname) ((const char *) (Domainname)) -# undef bindtextdomain -# define bindtextdomain(Domainname, Dirname) \ - ((void) (Domainname), (const char *) (Dirname)) -# undef bind_textdomain_codeset -# define bind_textdomain_codeset(Domainname, Codeset) \ - ((void) (Domainname), (const char *) (Codeset)) - -#endif - -/* Prefer gnulib's setlocale override over libintl's setlocale override. */ -#ifdef GNULIB_defined_setlocale -# undef setlocale -# define setlocale rpl_setlocale -#endif - -/* A pseudo function call that serves as a marker for the automated - extraction of messages, but does not call gettext(). The run-time - translation is done at a different place in the code. - The argument, String, should be a literal string. Concatenated strings - and other string expressions won't work. - The macro's expansion is not parenthesized, so that it is suitable as - initializer for static 'char[]' or 'const char[]' variables. */ -#define gettext_noop(String) String - -/* The separator between msgctxt and msgid in a .mo file. */ -#define GETTEXT_CONTEXT_GLUE "\004" - -/* Pseudo function calls, taking a MSGCTXT and a MSGID instead of just a - MSGID. MSGCTXT and MSGID must be string literals. MSGCTXT should be - short and rarely need to change. - The letter 'p' stands for 'particular' or 'special'. */ -#ifdef DEFAULT_TEXT_DOMAIN -# define pgettext(Msgctxt, Msgid) \ - pgettext_aux (DEFAULT_TEXT_DOMAIN, Msgctxt GETTEXT_CONTEXT_GLUE Msgid, Msgid, LC_MESSAGES) -#else -# define pgettext(Msgctxt, Msgid) \ - pgettext_aux (NULL, Msgctxt GETTEXT_CONTEXT_GLUE Msgid, Msgid, LC_MESSAGES) -#endif -#define dpgettext(Domainname, Msgctxt, Msgid) \ - pgettext_aux (Domainname, Msgctxt GETTEXT_CONTEXT_GLUE Msgid, Msgid, LC_MESSAGES) -#define dcpgettext(Domainname, Msgctxt, Msgid, Category) \ - pgettext_aux (Domainname, Msgctxt GETTEXT_CONTEXT_GLUE Msgid, Msgid, Category) -#ifdef DEFAULT_TEXT_DOMAIN -# define npgettext(Msgctxt, Msgid, MsgidPlural, N) \ - npgettext_aux (DEFAULT_TEXT_DOMAIN, Msgctxt GETTEXT_CONTEXT_GLUE Msgid, Msgid, MsgidPlural, N, LC_MESSAGES) -#else -# define npgettext(Msgctxt, Msgid, MsgidPlural, N) \ - npgettext_aux (NULL, Msgctxt GETTEXT_CONTEXT_GLUE Msgid, Msgid, MsgidPlural, N, LC_MESSAGES) -#endif -#define dnpgettext(Domainname, Msgctxt, Msgid, MsgidPlural, N) \ - npgettext_aux (Domainname, Msgctxt GETTEXT_CONTEXT_GLUE Msgid, Msgid, MsgidPlural, N, LC_MESSAGES) -#define dcnpgettext(Domainname, Msgctxt, Msgid, MsgidPlural, N, Category) \ - npgettext_aux (Domainname, Msgctxt GETTEXT_CONTEXT_GLUE Msgid, Msgid, MsgidPlural, N, Category) - -#ifdef __GNUC__ -__inline -#else -#ifdef __cplusplus -inline -#endif -#endif -static const char * -pgettext_aux (const char *domain, - const char *msg_ctxt_id, const char *msgid, - int category) -{ - const char *translation = dcgettext (domain, msg_ctxt_id, category); - if (translation == msg_ctxt_id) - return msgid; - else - return translation; -} - -#ifdef __GNUC__ -__inline -#else -#ifdef __cplusplus -inline -#endif -#endif -static const char * -npgettext_aux (const char *domain, - const char *msg_ctxt_id, const char *msgid, - const char *msgid_plural, unsigned long int n, - int category) -{ - const char *translation = - dcngettext (domain, msg_ctxt_id, msgid_plural, n, category); - if (translation == msg_ctxt_id || translation == msgid_plural) - return (n == 1 ? msgid : msgid_plural); - else - return translation; -} - -/* The same thing extended for non-constant arguments. Here MSGCTXT and MSGID - can be arbitrary expressions. But for string literals these macros are - less efficient than those above. */ - -#include - -#if (((__GNUC__ >= 3 || __GNUG__ >= 2) && !defined __STRICT_ANSI__) \ - /* || (__STDC_VERSION__ == 199901L && !defined __HP_cc) - || (__STDC_VERSION__ >= 201112L && !defined __STDC_NO_VLA__) */ ) -# define _LIBGETTEXT_HAVE_VARIABLE_SIZE_ARRAYS 1 -#else -# define _LIBGETTEXT_HAVE_VARIABLE_SIZE_ARRAYS 0 -#endif - -#if !_LIBGETTEXT_HAVE_VARIABLE_SIZE_ARRAYS -#include -#endif - -#define pgettext_expr(Msgctxt, Msgid) \ - dcpgettext_expr (NULL, Msgctxt, Msgid, LC_MESSAGES) -#define dpgettext_expr(Domainname, Msgctxt, Msgid) \ - dcpgettext_expr (Domainname, Msgctxt, Msgid, LC_MESSAGES) - -#ifdef __GNUC__ -__inline -#else -#ifdef __cplusplus -inline -#endif -#endif -static const char * -dcpgettext_expr (const char *domain, - const char *msgctxt, const char *msgid, - int category) -{ - size_t msgctxt_len = strlen (msgctxt) + 1; - size_t msgid_len = strlen (msgid) + 1; - const char *translation; -#if _LIBGETTEXT_HAVE_VARIABLE_SIZE_ARRAYS - char msg_ctxt_id[msgctxt_len + msgid_len]; -#else - char buf[1024]; - char *msg_ctxt_id = - (msgctxt_len + msgid_len <= sizeof (buf) - ? buf - : (char *) malloc (msgctxt_len + msgid_len)); - if (msg_ctxt_id != NULL) -#endif - { - int found_translation; - memcpy (msg_ctxt_id, msgctxt, msgctxt_len - 1); - msg_ctxt_id[msgctxt_len - 1] = '\004'; - memcpy (msg_ctxt_id + msgctxt_len, msgid, msgid_len); - translation = dcgettext (domain, msg_ctxt_id, category); - found_translation = (translation != msg_ctxt_id); -#if !_LIBGETTEXT_HAVE_VARIABLE_SIZE_ARRAYS - if (msg_ctxt_id != buf) - free (msg_ctxt_id); -#endif - if (found_translation) - return translation; - } - return msgid; -} - -#define npgettext_expr(Msgctxt, Msgid, MsgidPlural, N) \ - dcnpgettext_expr (NULL, Msgctxt, Msgid, MsgidPlural, N, LC_MESSAGES) -#define dnpgettext_expr(Domainname, Msgctxt, Msgid, MsgidPlural, N) \ - dcnpgettext_expr (Domainname, Msgctxt, Msgid, MsgidPlural, N, LC_MESSAGES) - -#ifdef __GNUC__ -__inline -#else -#ifdef __cplusplus -inline -#endif -#endif -static const char * -dcnpgettext_expr (const char *domain, - const char *msgctxt, const char *msgid, - const char *msgid_plural, unsigned long int n, - int category) -{ - size_t msgctxt_len = strlen (msgctxt) + 1; - size_t msgid_len = strlen (msgid) + 1; - const char *translation; -#if _LIBGETTEXT_HAVE_VARIABLE_SIZE_ARRAYS - char msg_ctxt_id[msgctxt_len + msgid_len]; -#else - char buf[1024]; - char *msg_ctxt_id = - (msgctxt_len + msgid_len <= sizeof (buf) - ? buf - : (char *) malloc (msgctxt_len + msgid_len)); - if (msg_ctxt_id != NULL) -#endif - { - int found_translation; - memcpy (msg_ctxt_id, msgctxt, msgctxt_len - 1); - msg_ctxt_id[msgctxt_len - 1] = '\004'; - memcpy (msg_ctxt_id + msgctxt_len, msgid, msgid_len); - translation = dcngettext (domain, msg_ctxt_id, msgid_plural, n, category); - found_translation = !(translation == msg_ctxt_id || translation == msgid_plural); -#if !_LIBGETTEXT_HAVE_VARIABLE_SIZE_ARRAYS - if (msg_ctxt_id != buf) - free (msg_ctxt_id); -#endif - if (found_translation) - return translation; - } - return (n == 1 ? msgid : msgid_plural); -} - -#endif /* _LIBGETTEXT_H */ diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/glthread/lock.c b/thirdparty/grub-2.04/grub-core/lib/gnulib/glthread/lock.c deleted file mode 100644 index a4498cbd9..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/glthread/lock.c +++ /dev/null @@ -1,1221 +0,0 @@ -/* Locking in multithreaded situations. - Copyright (C) 2005-2019 Free Software Foundation, Inc. - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3, or (at your option) - any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, see . */ - -/* Written by Bruno Haible , 2005. - Based on GCC's gthr-posix.h, gthr-posix95.h, gthr-solaris.h, - gthr-win32.h. */ - -#include - -#include "glthread/lock.h" - -/* ========================================================================= */ - -#if USE_POSIX_THREADS - -/* -------------------------- gl_lock_t datatype -------------------------- */ - -/* ------------------------- gl_rwlock_t datatype ------------------------- */ - -# if HAVE_PTHREAD_RWLOCK && (HAVE_PTHREAD_RWLOCK_RDLOCK_PREFER_WRITER || (defined PTHREAD_RWLOCK_WRITER_NONRECURSIVE_INITIALIZER_NP && (__GNU_LIBRARY__ > 1))) - -# ifdef PTHREAD_RWLOCK_INITIALIZER - -# if !HAVE_PTHREAD_RWLOCK_RDLOCK_PREFER_WRITER - /* glibc with bug https://sourceware.org/bugzilla/show_bug.cgi?id=13701 */ - -int -glthread_rwlock_init_for_glibc (pthread_rwlock_t *lock) -{ - pthread_rwlockattr_t attributes; - int err; - - err = pthread_rwlockattr_init (&attributes); - if (err != 0) - return err; - /* Note: PTHREAD_RWLOCK_PREFER_WRITER_NONRECURSIVE_NP is the only value that - causes the writer to be preferred. PTHREAD_RWLOCK_PREFER_WRITER_NP does not - do this; see - http://man7.org/linux/man-pages/man3/pthread_rwlockattr_setkind_np.3.html */ - err = pthread_rwlockattr_setkind_np (&attributes, - PTHREAD_RWLOCK_PREFER_WRITER_NONRECURSIVE_NP); - if (err == 0) - err = pthread_rwlock_init(lock, &attributes); - /* pthread_rwlockattr_destroy always returns 0. It cannot influence the - return value. */ - pthread_rwlockattr_destroy (&attributes); - return err; -} - -# endif -# else - -int -glthread_rwlock_init_multithreaded (gl_rwlock_t *lock) -{ - int err; - - err = pthread_rwlock_init (&lock->rwlock, NULL); - if (err != 0) - return err; - lock->initialized = 1; - return 0; -} - -int -glthread_rwlock_rdlock_multithreaded (gl_rwlock_t *lock) -{ - if (!lock->initialized) - { - int err; - - err = pthread_mutex_lock (&lock->guard); - if (err != 0) - return err; - if (!lock->initialized) - { - err = glthread_rwlock_init_multithreaded (lock); - if (err != 0) - { - pthread_mutex_unlock (&lock->guard); - return err; - } - } - err = pthread_mutex_unlock (&lock->guard); - if (err != 0) - return err; - } - return pthread_rwlock_rdlock (&lock->rwlock); -} - -int -glthread_rwlock_wrlock_multithreaded (gl_rwlock_t *lock) -{ - if (!lock->initialized) - { - int err; - - err = pthread_mutex_lock (&lock->guard); - if (err != 0) - return err; - if (!lock->initialized) - { - err = glthread_rwlock_init_multithreaded (lock); - if (err != 0) - { - pthread_mutex_unlock (&lock->guard); - return err; - } - } - err = pthread_mutex_unlock (&lock->guard); - if (err != 0) - return err; - } - return pthread_rwlock_wrlock (&lock->rwlock); -} - -int -glthread_rwlock_unlock_multithreaded (gl_rwlock_t *lock) -{ - if (!lock->initialized) - return EINVAL; - return pthread_rwlock_unlock (&lock->rwlock); -} - -int -glthread_rwlock_destroy_multithreaded (gl_rwlock_t *lock) -{ - int err; - - if (!lock->initialized) - return EINVAL; - err = pthread_rwlock_destroy (&lock->rwlock); - if (err != 0) - return err; - lock->initialized = 0; - return 0; -} - -# endif - -# else - -int -glthread_rwlock_init_multithreaded (gl_rwlock_t *lock) -{ - int err; - - err = pthread_mutex_init (&lock->lock, NULL); - if (err != 0) - return err; - err = pthread_cond_init (&lock->waiting_readers, NULL); - if (err != 0) - return err; - err = pthread_cond_init (&lock->waiting_writers, NULL); - if (err != 0) - return err; - lock->waiting_writers_count = 0; - lock->runcount = 0; - return 0; -} - -int -glthread_rwlock_rdlock_multithreaded (gl_rwlock_t *lock) -{ - int err; - - err = pthread_mutex_lock (&lock->lock); - if (err != 0) - return err; - /* Test whether only readers are currently running, and whether the runcount - field will not overflow, and whether no writer is waiting. The latter - condition is because POSIX recommends that "write locks shall take - precedence over read locks", to avoid "writer starvation". */ - while (!(lock->runcount + 1 > 0 && lock->waiting_writers_count == 0)) - { - /* This thread has to wait for a while. Enqueue it among the - waiting_readers. */ - err = pthread_cond_wait (&lock->waiting_readers, &lock->lock); - if (err != 0) - { - pthread_mutex_unlock (&lock->lock); - return err; - } - } - lock->runcount++; - return pthread_mutex_unlock (&lock->lock); -} - -int -glthread_rwlock_wrlock_multithreaded (gl_rwlock_t *lock) -{ - int err; - - err = pthread_mutex_lock (&lock->lock); - if (err != 0) - return err; - /* Test whether no readers or writers are currently running. */ - while (!(lock->runcount == 0)) - { - /* This thread has to wait for a while. Enqueue it among the - waiting_writers. */ - lock->waiting_writers_count++; - err = pthread_cond_wait (&lock->waiting_writers, &lock->lock); - if (err != 0) - { - lock->waiting_writers_count--; - pthread_mutex_unlock (&lock->lock); - return err; - } - lock->waiting_writers_count--; - } - lock->runcount--; /* runcount becomes -1 */ - return pthread_mutex_unlock (&lock->lock); -} - -int -glthread_rwlock_unlock_multithreaded (gl_rwlock_t *lock) -{ - int err; - - err = pthread_mutex_lock (&lock->lock); - if (err != 0) - return err; - if (lock->runcount < 0) - { - /* Drop a writer lock. */ - if (!(lock->runcount == -1)) - { - pthread_mutex_unlock (&lock->lock); - return EINVAL; - } - lock->runcount = 0; - } - else - { - /* Drop a reader lock. */ - if (!(lock->runcount > 0)) - { - pthread_mutex_unlock (&lock->lock); - return EINVAL; - } - lock->runcount--; - } - if (lock->runcount == 0) - { - /* POSIX recommends that "write locks shall take precedence over read - locks", to avoid "writer starvation". */ - if (lock->waiting_writers_count > 0) - { - /* Wake up one of the waiting writers. */ - err = pthread_cond_signal (&lock->waiting_writers); - if (err != 0) - { - pthread_mutex_unlock (&lock->lock); - return err; - } - } - else - { - /* Wake up all waiting readers. */ - err = pthread_cond_broadcast (&lock->waiting_readers); - if (err != 0) - { - pthread_mutex_unlock (&lock->lock); - return err; - } - } - } - return pthread_mutex_unlock (&lock->lock); -} - -int -glthread_rwlock_destroy_multithreaded (gl_rwlock_t *lock) -{ - int err; - - err = pthread_mutex_destroy (&lock->lock); - if (err != 0) - return err; - err = pthread_cond_destroy (&lock->waiting_readers); - if (err != 0) - return err; - err = pthread_cond_destroy (&lock->waiting_writers); - if (err != 0) - return err; - return 0; -} - -# endif - -/* --------------------- gl_recursive_lock_t datatype --------------------- */ - -# if HAVE_PTHREAD_MUTEX_RECURSIVE - -# if defined PTHREAD_RECURSIVE_MUTEX_INITIALIZER || defined PTHREAD_RECURSIVE_MUTEX_INITIALIZER_NP - -int -glthread_recursive_lock_init_multithreaded (gl_recursive_lock_t *lock) -{ - pthread_mutexattr_t attributes; - int err; - - err = pthread_mutexattr_init (&attributes); - if (err != 0) - return err; - err = pthread_mutexattr_settype (&attributes, PTHREAD_MUTEX_RECURSIVE); - if (err != 0) - { - pthread_mutexattr_destroy (&attributes); - return err; - } - err = pthread_mutex_init (lock, &attributes); - if (err != 0) - { - pthread_mutexattr_destroy (&attributes); - return err; - } - err = pthread_mutexattr_destroy (&attributes); - if (err != 0) - return err; - return 0; -} - -# else - -int -glthread_recursive_lock_init_multithreaded (gl_recursive_lock_t *lock) -{ - pthread_mutexattr_t attributes; - int err; - - err = pthread_mutexattr_init (&attributes); - if (err != 0) - return err; - err = pthread_mutexattr_settype (&attributes, PTHREAD_MUTEX_RECURSIVE); - if (err != 0) - { - pthread_mutexattr_destroy (&attributes); - return err; - } - err = pthread_mutex_init (&lock->recmutex, &attributes); - if (err != 0) - { - pthread_mutexattr_destroy (&attributes); - return err; - } - err = pthread_mutexattr_destroy (&attributes); - if (err != 0) - return err; - lock->initialized = 1; - return 0; -} - -int -glthread_recursive_lock_lock_multithreaded (gl_recursive_lock_t *lock) -{ - if (!lock->initialized) - { - int err; - - err = pthread_mutex_lock (&lock->guard); - if (err != 0) - return err; - if (!lock->initialized) - { - err = glthread_recursive_lock_init_multithreaded (lock); - if (err != 0) - { - pthread_mutex_unlock (&lock->guard); - return err; - } - } - err = pthread_mutex_unlock (&lock->guard); - if (err != 0) - return err; - } - return pthread_mutex_lock (&lock->recmutex); -} - -int -glthread_recursive_lock_unlock_multithreaded (gl_recursive_lock_t *lock) -{ - if (!lock->initialized) - return EINVAL; - return pthread_mutex_unlock (&lock->recmutex); -} - -int -glthread_recursive_lock_destroy_multithreaded (gl_recursive_lock_t *lock) -{ - int err; - - if (!lock->initialized) - return EINVAL; - err = pthread_mutex_destroy (&lock->recmutex); - if (err != 0) - return err; - lock->initialized = 0; - return 0; -} - -# endif - -# else - -int -glthread_recursive_lock_init_multithreaded (gl_recursive_lock_t *lock) -{ - int err; - - err = pthread_mutex_init (&lock->mutex, NULL); - if (err != 0) - return err; - lock->owner = (pthread_t) 0; - lock->depth = 0; - return 0; -} - -int -glthread_recursive_lock_lock_multithreaded (gl_recursive_lock_t *lock) -{ - pthread_t self = pthread_self (); - if (lock->owner != self) - { - int err; - - err = pthread_mutex_lock (&lock->mutex); - if (err != 0) - return err; - lock->owner = self; - } - if (++(lock->depth) == 0) /* wraparound? */ - { - lock->depth--; - return EAGAIN; - } - return 0; -} - -int -glthread_recursive_lock_unlock_multithreaded (gl_recursive_lock_t *lock) -{ - if (lock->owner != pthread_self ()) - return EPERM; - if (lock->depth == 0) - return EINVAL; - if (--(lock->depth) == 0) - { - lock->owner = (pthread_t) 0; - return pthread_mutex_unlock (&lock->mutex); - } - else - return 0; -} - -int -glthread_recursive_lock_destroy_multithreaded (gl_recursive_lock_t *lock) -{ - if (lock->owner != (pthread_t) 0) - return EBUSY; - return pthread_mutex_destroy (&lock->mutex); -} - -# endif - -/* -------------------------- gl_once_t datatype -------------------------- */ - -static const pthread_once_t fresh_once = PTHREAD_ONCE_INIT; - -int -glthread_once_singlethreaded (pthread_once_t *once_control) -{ - /* We don't know whether pthread_once_t is an integer type, a floating-point - type, a pointer type, or a structure type. */ - char *firstbyte = (char *)once_control; - if (*firstbyte == *(const char *)&fresh_once) - { - /* First time use of once_control. Invert the first byte. */ - *firstbyte = ~ *(const char *)&fresh_once; - return 1; - } - else - return 0; -} - -#endif - -/* ========================================================================= */ - -#if USE_PTH_THREADS - -/* Use the GNU Pth threads library. */ - -/* -------------------------- gl_lock_t datatype -------------------------- */ - -/* ------------------------- gl_rwlock_t datatype ------------------------- */ - -# if !HAVE_PTH_RWLOCK_ACQUIRE_PREFER_WRITER - -int -glthread_rwlock_init_multithreaded (gl_rwlock_t *lock) -{ - if (!pth_mutex_init (&lock->lock)) - return errno; - if (!pth_cond_init (&lock->waiting_readers)) - return errno; - if (!pth_cond_init (&lock->waiting_writers)) - return errno; - lock->waiting_writers_count = 0; - lock->runcount = 0; - lock->initialized = 1; - return 0; -} - -int -glthread_rwlock_rdlock_multithreaded (gl_rwlock_t *lock) -{ - if (!lock->initialized) - glthread_rwlock_init_multithreaded (lock); - if (!pth_mutex_acquire (&lock->lock, 0, NULL)) - return errno; - /* Test whether only readers are currently running, and whether the runcount - field will not overflow, and whether no writer is waiting. The latter - condition is because POSIX recommends that "write locks shall take - precedence over read locks", to avoid "writer starvation". */ - while (!(lock->runcount + 1 > 0 && lock->waiting_writers_count == 0)) - { - /* This thread has to wait for a while. Enqueue it among the - waiting_readers. */ - if (!pth_cond_await (&lock->waiting_readers, &lock->lock, NULL)) - { - int err = errno; - pth_mutex_release (&lock->lock); - return err; - } - } - lock->runcount++; - return (!pth_mutex_release (&lock->lock) ? errno : 0); -} - -int -glthread_rwlock_wrlock_multithreaded (gl_rwlock_t *lock) -{ - if (!lock->initialized) - glthread_rwlock_init_multithreaded (lock); - if (!pth_mutex_acquire (&lock->lock, 0, NULL)) - return errno; - /* Test whether no readers or writers are currently running. */ - while (!(lock->runcount == 0)) - { - /* This thread has to wait for a while. Enqueue it among the - waiting_writers. */ - lock->waiting_writers_count++; - if (!pth_cond_await (&lock->waiting_writers, &lock->lock, NULL)) - { - int err = errno; - lock->waiting_writers_count--; - pth_mutex_release (&lock->lock); - return err; - } - lock->waiting_writers_count--; - } - lock->runcount--; /* runcount becomes -1 */ - return (!pth_mutex_release (&lock->lock) ? errno : 0); -} - -int -glthread_rwlock_unlock_multithreaded (gl_rwlock_t *lock) -{ - int err; - - if (!lock->initialized) - return EINVAL; - if (!pth_mutex_acquire (&lock->lock, 0, NULL)) - return errno; - if (lock->runcount < 0) - { - /* Drop a writer lock. */ - if (!(lock->runcount == -1)) - { - pth_mutex_release (&lock->lock); - return EINVAL; - } - lock->runcount = 0; - } - else - { - /* Drop a reader lock. */ - if (!(lock->runcount > 0)) - { - pth_mutex_release (&lock->lock); - return EINVAL; - } - lock->runcount--; - } - if (lock->runcount == 0) - { - /* POSIX recommends that "write locks shall take precedence over read - locks", to avoid "writer starvation". */ - if (lock->waiting_writers_count > 0) - { - /* Wake up one of the waiting writers. */ - if (!pth_cond_notify (&lock->waiting_writers, FALSE)) - { - int err = errno; - pth_mutex_release (&lock->lock); - return err; - } - } - else - { - /* Wake up all waiting readers. */ - if (!pth_cond_notify (&lock->waiting_readers, TRUE)) - { - int err = errno; - pth_mutex_release (&lock->lock); - return err; - } - } - } - return (!pth_mutex_release (&lock->lock) ? errno : 0); -} - -int -glthread_rwlock_destroy_multithreaded (gl_rwlock_t *lock) -{ - lock->initialized = 0; - return 0; -} - -# endif - -/* --------------------- gl_recursive_lock_t datatype --------------------- */ - -/* -------------------------- gl_once_t datatype -------------------------- */ - -static void -glthread_once_call (void *arg) -{ - void (**gl_once_temp_addr) (void) = (void (**) (void)) arg; - void (*initfunction) (void) = *gl_once_temp_addr; - initfunction (); -} - -int -glthread_once_multithreaded (pth_once_t *once_control, void (*initfunction) (void)) -{ - void (*temp) (void) = initfunction; - return (!pth_once (once_control, glthread_once_call, &temp) ? errno : 0); -} - -int -glthread_once_singlethreaded (pth_once_t *once_control) -{ - /* We know that pth_once_t is an integer type. */ - if (*once_control == PTH_ONCE_INIT) - { - /* First time use of once_control. Invert the marker. */ - *once_control = ~ PTH_ONCE_INIT; - return 1; - } - else - return 0; -} - -#endif - -/* ========================================================================= */ - -#if USE_SOLARIS_THREADS - -/* Use the old Solaris threads library. */ - -/* -------------------------- gl_lock_t datatype -------------------------- */ - -/* ------------------------- gl_rwlock_t datatype ------------------------- */ - -/* --------------------- gl_recursive_lock_t datatype --------------------- */ - -int -glthread_recursive_lock_init_multithreaded (gl_recursive_lock_t *lock) -{ - int err; - - err = mutex_init (&lock->mutex, USYNC_THREAD, NULL); - if (err != 0) - return err; - lock->owner = (thread_t) 0; - lock->depth = 0; - return 0; -} - -int -glthread_recursive_lock_lock_multithreaded (gl_recursive_lock_t *lock) -{ - thread_t self = thr_self (); - if (lock->owner != self) - { - int err; - - err = mutex_lock (&lock->mutex); - if (err != 0) - return err; - lock->owner = self; - } - if (++(lock->depth) == 0) /* wraparound? */ - { - lock->depth--; - return EAGAIN; - } - return 0; -} - -int -glthread_recursive_lock_unlock_multithreaded (gl_recursive_lock_t *lock) -{ - if (lock->owner != thr_self ()) - return EPERM; - if (lock->depth == 0) - return EINVAL; - if (--(lock->depth) == 0) - { - lock->owner = (thread_t) 0; - return mutex_unlock (&lock->mutex); - } - else - return 0; -} - -int -glthread_recursive_lock_destroy_multithreaded (gl_recursive_lock_t *lock) -{ - if (lock->owner != (thread_t) 0) - return EBUSY; - return mutex_destroy (&lock->mutex); -} - -/* -------------------------- gl_once_t datatype -------------------------- */ - -int -glthread_once_multithreaded (gl_once_t *once_control, void (*initfunction) (void)) -{ - if (!once_control->inited) - { - int err; - - /* Use the mutex to guarantee that if another thread is already calling - the initfunction, this thread waits until it's finished. */ - err = mutex_lock (&once_control->mutex); - if (err != 0) - return err; - if (!once_control->inited) - { - once_control->inited = 1; - initfunction (); - } - return mutex_unlock (&once_control->mutex); - } - else - return 0; -} - -int -glthread_once_singlethreaded (gl_once_t *once_control) -{ - /* We know that gl_once_t contains an integer type. */ - if (!once_control->inited) - { - /* First time use of once_control. Invert the marker. */ - once_control->inited = ~ 0; - return 1; - } - else - return 0; -} - -#endif - -/* ========================================================================= */ - -#if USE_WINDOWS_THREADS - -/* -------------------------- gl_lock_t datatype -------------------------- */ - -void -glthread_lock_init_func (gl_lock_t *lock) -{ - InitializeCriticalSection (&lock->lock); - lock->guard.done = 1; -} - -int -glthread_lock_lock_func (gl_lock_t *lock) -{ - if (!lock->guard.done) - { - if (InterlockedIncrement (&lock->guard.started) == 0) - /* This thread is the first one to need this lock. Initialize it. */ - glthread_lock_init (lock); - else - /* Yield the CPU while waiting for another thread to finish - initializing this lock. */ - while (!lock->guard.done) - Sleep (0); - } - EnterCriticalSection (&lock->lock); - return 0; -} - -int -glthread_lock_unlock_func (gl_lock_t *lock) -{ - if (!lock->guard.done) - return EINVAL; - LeaveCriticalSection (&lock->lock); - return 0; -} - -int -glthread_lock_destroy_func (gl_lock_t *lock) -{ - if (!lock->guard.done) - return EINVAL; - DeleteCriticalSection (&lock->lock); - lock->guard.done = 0; - return 0; -} - -/* ------------------------- gl_rwlock_t datatype ------------------------- */ - -/* In this file, the waitqueues are implemented as circular arrays. */ -#define gl_waitqueue_t gl_carray_waitqueue_t - -static void -gl_waitqueue_init (gl_waitqueue_t *wq) -{ - wq->array = NULL; - wq->count = 0; - wq->alloc = 0; - wq->offset = 0; -} - -/* Enqueues the current thread, represented by an event, in a wait queue. - Returns INVALID_HANDLE_VALUE if an allocation failure occurs. */ -static HANDLE -gl_waitqueue_add (gl_waitqueue_t *wq) -{ - HANDLE event; - unsigned int index; - - if (wq->count == wq->alloc) - { - unsigned int new_alloc = 2 * wq->alloc + 1; - HANDLE *new_array = - (HANDLE *) realloc (wq->array, new_alloc * sizeof (HANDLE)); - if (new_array == NULL) - /* No more memory. */ - return INVALID_HANDLE_VALUE; - /* Now is a good opportunity to rotate the array so that its contents - starts at offset 0. */ - if (wq->offset > 0) - { - unsigned int old_count = wq->count; - unsigned int old_alloc = wq->alloc; - unsigned int old_offset = wq->offset; - unsigned int i; - if (old_offset + old_count > old_alloc) - { - unsigned int limit = old_offset + old_count - old_alloc; - for (i = 0; i < limit; i++) - new_array[old_alloc + i] = new_array[i]; - } - for (i = 0; i < old_count; i++) - new_array[i] = new_array[old_offset + i]; - wq->offset = 0; - } - wq->array = new_array; - wq->alloc = new_alloc; - } - /* Whether the created event is a manual-reset one or an auto-reset one, - does not matter, since we will wait on it only once. */ - event = CreateEvent (NULL, TRUE, FALSE, NULL); - if (event == INVALID_HANDLE_VALUE) - /* No way to allocate an event. */ - return INVALID_HANDLE_VALUE; - index = wq->offset + wq->count; - if (index >= wq->alloc) - index -= wq->alloc; - wq->array[index] = event; - wq->count++; - return event; -} - -/* Notifies the first thread from a wait queue and dequeues it. */ -static void -gl_waitqueue_notify_first (gl_waitqueue_t *wq) -{ - SetEvent (wq->array[wq->offset + 0]); - wq->offset++; - wq->count--; - if (wq->count == 0 || wq->offset == wq->alloc) - wq->offset = 0; -} - -/* Notifies all threads from a wait queue and dequeues them all. */ -static void -gl_waitqueue_notify_all (gl_waitqueue_t *wq) -{ - unsigned int i; - - for (i = 0; i < wq->count; i++) - { - unsigned int index = wq->offset + i; - if (index >= wq->alloc) - index -= wq->alloc; - SetEvent (wq->array[index]); - } - wq->count = 0; - wq->offset = 0; -} - -void -glthread_rwlock_init_func (gl_rwlock_t *lock) -{ - InitializeCriticalSection (&lock->lock); - gl_waitqueue_init (&lock->waiting_readers); - gl_waitqueue_init (&lock->waiting_writers); - lock->runcount = 0; - lock->guard.done = 1; -} - -int -glthread_rwlock_rdlock_func (gl_rwlock_t *lock) -{ - if (!lock->guard.done) - { - if (InterlockedIncrement (&lock->guard.started) == 0) - /* This thread is the first one to need this lock. Initialize it. */ - glthread_rwlock_init (lock); - else - /* Yield the CPU while waiting for another thread to finish - initializing this lock. */ - while (!lock->guard.done) - Sleep (0); - } - EnterCriticalSection (&lock->lock); - /* Test whether only readers are currently running, and whether the runcount - field will not overflow, and whether no writer is waiting. The latter - condition is because POSIX recommends that "write locks shall take - precedence over read locks", to avoid "writer starvation". */ - if (!(lock->runcount + 1 > 0 && lock->waiting_writers.count == 0)) - { - /* This thread has to wait for a while. Enqueue it among the - waiting_readers. */ - HANDLE event = gl_waitqueue_add (&lock->waiting_readers); - if (event != INVALID_HANDLE_VALUE) - { - DWORD result; - LeaveCriticalSection (&lock->lock); - /* Wait until another thread signals this event. */ - result = WaitForSingleObject (event, INFINITE); - if (result == WAIT_FAILED || result == WAIT_TIMEOUT) - abort (); - CloseHandle (event); - /* The thread which signalled the event already did the bookkeeping: - removed us from the waiting_readers, incremented lock->runcount. */ - if (!(lock->runcount > 0)) - abort (); - return 0; - } - else - { - /* Allocation failure. Weird. */ - do - { - LeaveCriticalSection (&lock->lock); - Sleep (1); - EnterCriticalSection (&lock->lock); - } - while (!(lock->runcount + 1 > 0)); - } - } - lock->runcount++; - LeaveCriticalSection (&lock->lock); - return 0; -} - -int -glthread_rwlock_wrlock_func (gl_rwlock_t *lock) -{ - if (!lock->guard.done) - { - if (InterlockedIncrement (&lock->guard.started) == 0) - /* This thread is the first one to need this lock. Initialize it. */ - glthread_rwlock_init (lock); - else - /* Yield the CPU while waiting for another thread to finish - initializing this lock. */ - while (!lock->guard.done) - Sleep (0); - } - EnterCriticalSection (&lock->lock); - /* Test whether no readers or writers are currently running. */ - if (!(lock->runcount == 0)) - { - /* This thread has to wait for a while. Enqueue it among the - waiting_writers. */ - HANDLE event = gl_waitqueue_add (&lock->waiting_writers); - if (event != INVALID_HANDLE_VALUE) - { - DWORD result; - LeaveCriticalSection (&lock->lock); - /* Wait until another thread signals this event. */ - result = WaitForSingleObject (event, INFINITE); - if (result == WAIT_FAILED || result == WAIT_TIMEOUT) - abort (); - CloseHandle (event); - /* The thread which signalled the event already did the bookkeeping: - removed us from the waiting_writers, set lock->runcount = -1. */ - if (!(lock->runcount == -1)) - abort (); - return 0; - } - else - { - /* Allocation failure. Weird. */ - do - { - LeaveCriticalSection (&lock->lock); - Sleep (1); - EnterCriticalSection (&lock->lock); - } - while (!(lock->runcount == 0)); - } - } - lock->runcount--; /* runcount becomes -1 */ - LeaveCriticalSection (&lock->lock); - return 0; -} - -int -glthread_rwlock_unlock_func (gl_rwlock_t *lock) -{ - if (!lock->guard.done) - return EINVAL; - EnterCriticalSection (&lock->lock); - if (lock->runcount < 0) - { - /* Drop a writer lock. */ - if (!(lock->runcount == -1)) - abort (); - lock->runcount = 0; - } - else - { - /* Drop a reader lock. */ - if (!(lock->runcount > 0)) - { - LeaveCriticalSection (&lock->lock); - return EPERM; - } - lock->runcount--; - } - if (lock->runcount == 0) - { - /* POSIX recommends that "write locks shall take precedence over read - locks", to avoid "writer starvation". */ - if (lock->waiting_writers.count > 0) - { - /* Wake up one of the waiting writers. */ - lock->runcount--; - gl_waitqueue_notify_first (&lock->waiting_writers); - } - else - { - /* Wake up all waiting readers. */ - lock->runcount += lock->waiting_readers.count; - gl_waitqueue_notify_all (&lock->waiting_readers); - } - } - LeaveCriticalSection (&lock->lock); - return 0; -} - -int -glthread_rwlock_destroy_func (gl_rwlock_t *lock) -{ - if (!lock->guard.done) - return EINVAL; - if (lock->runcount != 0) - return EBUSY; - DeleteCriticalSection (&lock->lock); - if (lock->waiting_readers.array != NULL) - free (lock->waiting_readers.array); - if (lock->waiting_writers.array != NULL) - free (lock->waiting_writers.array); - lock->guard.done = 0; - return 0; -} - -/* --------------------- gl_recursive_lock_t datatype --------------------- */ - -void -glthread_recursive_lock_init_func (gl_recursive_lock_t *lock) -{ - lock->owner = 0; - lock->depth = 0; - InitializeCriticalSection (&lock->lock); - lock->guard.done = 1; -} - -int -glthread_recursive_lock_lock_func (gl_recursive_lock_t *lock) -{ - if (!lock->guard.done) - { - if (InterlockedIncrement (&lock->guard.started) == 0) - /* This thread is the first one to need this lock. Initialize it. */ - glthread_recursive_lock_init (lock); - else - /* Yield the CPU while waiting for another thread to finish - initializing this lock. */ - while (!lock->guard.done) - Sleep (0); - } - { - DWORD self = GetCurrentThreadId (); - if (lock->owner != self) - { - EnterCriticalSection (&lock->lock); - lock->owner = self; - } - if (++(lock->depth) == 0) /* wraparound? */ - { - lock->depth--; - return EAGAIN; - } - } - return 0; -} - -int -glthread_recursive_lock_unlock_func (gl_recursive_lock_t *lock) -{ - if (lock->owner != GetCurrentThreadId ()) - return EPERM; - if (lock->depth == 0) - return EINVAL; - if (--(lock->depth) == 0) - { - lock->owner = 0; - LeaveCriticalSection (&lock->lock); - } - return 0; -} - -int -glthread_recursive_lock_destroy_func (gl_recursive_lock_t *lock) -{ - if (lock->owner != 0) - return EBUSY; - DeleteCriticalSection (&lock->lock); - lock->guard.done = 0; - return 0; -} - -/* -------------------------- gl_once_t datatype -------------------------- */ - -void -glthread_once_func (gl_once_t *once_control, void (*initfunction) (void)) -{ - if (once_control->inited <= 0) - { - if (InterlockedIncrement (&once_control->started) == 0) - { - /* This thread is the first one to come to this once_control. */ - InitializeCriticalSection (&once_control->lock); - EnterCriticalSection (&once_control->lock); - once_control->inited = 0; - initfunction (); - once_control->inited = 1; - LeaveCriticalSection (&once_control->lock); - } - else - { - /* Undo last operation. */ - InterlockedDecrement (&once_control->started); - /* Some other thread has already started the initialization. - Yield the CPU while waiting for the other thread to finish - initializing and taking the lock. */ - while (once_control->inited < 0) - Sleep (0); - if (once_control->inited <= 0) - { - /* Take the lock. This blocks until the other thread has - finished calling the initfunction. */ - EnterCriticalSection (&once_control->lock); - LeaveCriticalSection (&once_control->lock); - if (!(once_control->inited > 0)) - abort (); - } - } - } -} - -#endif - -/* ========================================================================= */ diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/glthread/lock.h b/thirdparty/grub-2.04/grub-core/lib/gnulib/glthread/lock.h deleted file mode 100644 index 636b0895b..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/glthread/lock.h +++ /dev/null @@ -1,988 +0,0 @@ -/* Locking in multithreaded situations. - Copyright (C) 2005-2019 Free Software Foundation, Inc. - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3, or (at your option) - any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, see . */ - -/* Written by Bruno Haible , 2005. - Based on GCC's gthr-posix.h, gthr-posix95.h, gthr-solaris.h, - gthr-win32.h. */ - -/* This file contains locking primitives for use with a given thread library. - It does not contain primitives for creating threads or for other - synchronization primitives. - - Normal (non-recursive) locks: - Type: gl_lock_t - Declaration: gl_lock_define(extern, name) - Initializer: gl_lock_define_initialized(, name) - Initialization: gl_lock_init (name); - Taking the lock: gl_lock_lock (name); - Releasing the lock: gl_lock_unlock (name); - De-initialization: gl_lock_destroy (name); - Equivalent functions with control of error handling: - Initialization: err = glthread_lock_init (&name); - Taking the lock: err = glthread_lock_lock (&name); - Releasing the lock: err = glthread_lock_unlock (&name); - De-initialization: err = glthread_lock_destroy (&name); - - Read-Write (non-recursive) locks: - Type: gl_rwlock_t - Declaration: gl_rwlock_define(extern, name) - Initializer: gl_rwlock_define_initialized(, name) - Initialization: gl_rwlock_init (name); - Taking the lock: gl_rwlock_rdlock (name); - gl_rwlock_wrlock (name); - Releasing the lock: gl_rwlock_unlock (name); - De-initialization: gl_rwlock_destroy (name); - Equivalent functions with control of error handling: - Initialization: err = glthread_rwlock_init (&name); - Taking the lock: err = glthread_rwlock_rdlock (&name); - err = glthread_rwlock_wrlock (&name); - Releasing the lock: err = glthread_rwlock_unlock (&name); - De-initialization: err = glthread_rwlock_destroy (&name); - - Recursive locks: - Type: gl_recursive_lock_t - Declaration: gl_recursive_lock_define(extern, name) - Initializer: gl_recursive_lock_define_initialized(, name) - Initialization: gl_recursive_lock_init (name); - Taking the lock: gl_recursive_lock_lock (name); - Releasing the lock: gl_recursive_lock_unlock (name); - De-initialization: gl_recursive_lock_destroy (name); - Equivalent functions with control of error handling: - Initialization: err = glthread_recursive_lock_init (&name); - Taking the lock: err = glthread_recursive_lock_lock (&name); - Releasing the lock: err = glthread_recursive_lock_unlock (&name); - De-initialization: err = glthread_recursive_lock_destroy (&name); - - Once-only execution: - Type: gl_once_t - Initializer: gl_once_define(extern, name) - Execution: gl_once (name, initfunction); - Equivalent functions with control of error handling: - Execution: err = glthread_once (&name, initfunction); -*/ - - -#ifndef _LOCK_H -#define _LOCK_H - -#include -#include - -/* ========================================================================= */ - -#if USE_POSIX_THREADS - -/* Use the POSIX threads library. */ - -# include - -# ifdef __cplusplus -extern "C" { -# endif - -# if PTHREAD_IN_USE_DETECTION_HARD - -/* The pthread_in_use() detection needs to be done at runtime. */ -# define pthread_in_use() \ - glthread_in_use () -extern int glthread_in_use (void); - -# endif - -# if USE_POSIX_THREADS_WEAK - -/* Use weak references to the POSIX threads library. */ - -/* Weak references avoid dragging in external libraries if the other parts - of the program don't use them. Here we use them, because we don't want - every program that uses libintl to depend on libpthread. This assumes - that libpthread would not be loaded after libintl; i.e. if libintl is - loaded first, by an executable that does not depend on libpthread, and - then a module is dynamically loaded that depends on libpthread, libintl - will not be multithread-safe. */ - -/* The way to test at runtime whether libpthread is present is to test - whether a function pointer's value, such as &pthread_mutex_init, is - non-NULL. However, some versions of GCC have a bug through which, in - PIC mode, &foo != NULL always evaluates to true if there is a direct - call to foo(...) in the same function. To avoid this, we test the - address of a function in libpthread that we don't use. */ - -# pragma weak pthread_mutex_init -# pragma weak pthread_mutex_lock -# pragma weak pthread_mutex_unlock -# pragma weak pthread_mutex_destroy -# pragma weak pthread_rwlock_init -# pragma weak pthread_rwlock_rdlock -# pragma weak pthread_rwlock_wrlock -# pragma weak pthread_rwlock_unlock -# pragma weak pthread_rwlock_destroy -# pragma weak pthread_once -# pragma weak pthread_cond_init -# pragma weak pthread_cond_wait -# pragma weak pthread_cond_signal -# pragma weak pthread_cond_broadcast -# pragma weak pthread_cond_destroy -# pragma weak pthread_mutexattr_init -# pragma weak pthread_mutexattr_settype -# pragma weak pthread_mutexattr_destroy -# pragma weak pthread_rwlockattr_init -# if __GNU_LIBRARY__ > 1 -# pragma weak pthread_rwlockattr_setkind_np -# endif -# pragma weak pthread_rwlockattr_destroy -# ifndef pthread_self -# pragma weak pthread_self -# endif - -# if !PTHREAD_IN_USE_DETECTION_HARD - /* Considering all platforms with USE_POSIX_THREADS_WEAK, only few symbols - can be used to determine whether libpthread is in use. These are: - pthread_mutexattr_gettype - pthread_rwlockattr_destroy - pthread_rwlockattr_init - */ -# pragma weak pthread_mutexattr_gettype -# define pthread_in_use() (pthread_mutexattr_gettype != NULL) -# endif - -# else - -# if !PTHREAD_IN_USE_DETECTION_HARD -# define pthread_in_use() 1 -# endif - -# endif - -/* -------------------------- gl_lock_t datatype -------------------------- */ - -typedef pthread_mutex_t gl_lock_t; -# define gl_lock_define(STORAGECLASS, NAME) \ - STORAGECLASS pthread_mutex_t NAME; -# define gl_lock_define_initialized(STORAGECLASS, NAME) \ - STORAGECLASS pthread_mutex_t NAME = gl_lock_initializer; -# define gl_lock_initializer \ - PTHREAD_MUTEX_INITIALIZER -# define glthread_lock_init(LOCK) \ - (pthread_in_use () ? pthread_mutex_init (LOCK, NULL) : 0) -# define glthread_lock_lock(LOCK) \ - (pthread_in_use () ? pthread_mutex_lock (LOCK) : 0) -# define glthread_lock_unlock(LOCK) \ - (pthread_in_use () ? pthread_mutex_unlock (LOCK) : 0) -# define glthread_lock_destroy(LOCK) \ - (pthread_in_use () ? pthread_mutex_destroy (LOCK) : 0) - -/* ------------------------- gl_rwlock_t datatype ------------------------- */ - -# if HAVE_PTHREAD_RWLOCK && (HAVE_PTHREAD_RWLOCK_RDLOCK_PREFER_WRITER || (defined PTHREAD_RWLOCK_WRITER_NONRECURSIVE_INITIALIZER_NP && (__GNU_LIBRARY__ > 1))) - -# ifdef PTHREAD_RWLOCK_INITIALIZER - -typedef pthread_rwlock_t gl_rwlock_t; -# define gl_rwlock_define(STORAGECLASS, NAME) \ - STORAGECLASS pthread_rwlock_t NAME; -# define gl_rwlock_define_initialized(STORAGECLASS, NAME) \ - STORAGECLASS pthread_rwlock_t NAME = gl_rwlock_initializer; -# if HAVE_PTHREAD_RWLOCK_RDLOCK_PREFER_WRITER -# define gl_rwlock_initializer \ - PTHREAD_RWLOCK_INITIALIZER -# define glthread_rwlock_init(LOCK) \ - (pthread_in_use () ? pthread_rwlock_init (LOCK, NULL) : 0) -# else /* glibc with bug https://sourceware.org/bugzilla/show_bug.cgi?id=13701 */ -# define gl_rwlock_initializer \ - PTHREAD_RWLOCK_WRITER_NONRECURSIVE_INITIALIZER_NP -# define glthread_rwlock_init(LOCK) \ - (pthread_in_use () ? glthread_rwlock_init_for_glibc (LOCK) : 0) -extern int glthread_rwlock_init_for_glibc (pthread_rwlock_t *lock); -# endif -# define glthread_rwlock_rdlock(LOCK) \ - (pthread_in_use () ? pthread_rwlock_rdlock (LOCK) : 0) -# define glthread_rwlock_wrlock(LOCK) \ - (pthread_in_use () ? pthread_rwlock_wrlock (LOCK) : 0) -# define glthread_rwlock_unlock(LOCK) \ - (pthread_in_use () ? pthread_rwlock_unlock (LOCK) : 0) -# define glthread_rwlock_destroy(LOCK) \ - (pthread_in_use () ? pthread_rwlock_destroy (LOCK) : 0) - -# else - -typedef struct - { - int initialized; - pthread_mutex_t guard; /* protects the initialization */ - pthread_rwlock_t rwlock; /* read-write lock */ - } - gl_rwlock_t; -# define gl_rwlock_define(STORAGECLASS, NAME) \ - STORAGECLASS gl_rwlock_t NAME; -# define gl_rwlock_define_initialized(STORAGECLASS, NAME) \ - STORAGECLASS gl_rwlock_t NAME = gl_rwlock_initializer; -# define gl_rwlock_initializer \ - { 0, PTHREAD_MUTEX_INITIALIZER } -# define glthread_rwlock_init(LOCK) \ - (pthread_in_use () ? glthread_rwlock_init_multithreaded (LOCK) : 0) -# define glthread_rwlock_rdlock(LOCK) \ - (pthread_in_use () ? glthread_rwlock_rdlock_multithreaded (LOCK) : 0) -# define glthread_rwlock_wrlock(LOCK) \ - (pthread_in_use () ? glthread_rwlock_wrlock_multithreaded (LOCK) : 0) -# define glthread_rwlock_unlock(LOCK) \ - (pthread_in_use () ? glthread_rwlock_unlock_multithreaded (LOCK) : 0) -# define glthread_rwlock_destroy(LOCK) \ - (pthread_in_use () ? glthread_rwlock_destroy_multithreaded (LOCK) : 0) -extern int glthread_rwlock_init_multithreaded (gl_rwlock_t *lock); -extern int glthread_rwlock_rdlock_multithreaded (gl_rwlock_t *lock); -extern int glthread_rwlock_wrlock_multithreaded (gl_rwlock_t *lock); -extern int glthread_rwlock_unlock_multithreaded (gl_rwlock_t *lock); -extern int glthread_rwlock_destroy_multithreaded (gl_rwlock_t *lock); - -# endif - -# else - -typedef struct - { - pthread_mutex_t lock; /* protects the remaining fields */ - pthread_cond_t waiting_readers; /* waiting readers */ - pthread_cond_t waiting_writers; /* waiting writers */ - unsigned int waiting_writers_count; /* number of waiting writers */ - int runcount; /* number of readers running, or -1 when a writer runs */ - } - gl_rwlock_t; -# define gl_rwlock_define(STORAGECLASS, NAME) \ - STORAGECLASS gl_rwlock_t NAME; -# define gl_rwlock_define_initialized(STORAGECLASS, NAME) \ - STORAGECLASS gl_rwlock_t NAME = gl_rwlock_initializer; -# define gl_rwlock_initializer \ - { PTHREAD_MUTEX_INITIALIZER, PTHREAD_COND_INITIALIZER, PTHREAD_COND_INITIALIZER, 0, 0 } -# define glthread_rwlock_init(LOCK) \ - (pthread_in_use () ? glthread_rwlock_init_multithreaded (LOCK) : 0) -# define glthread_rwlock_rdlock(LOCK) \ - (pthread_in_use () ? glthread_rwlock_rdlock_multithreaded (LOCK) : 0) -# define glthread_rwlock_wrlock(LOCK) \ - (pthread_in_use () ? glthread_rwlock_wrlock_multithreaded (LOCK) : 0) -# define glthread_rwlock_unlock(LOCK) \ - (pthread_in_use () ? glthread_rwlock_unlock_multithreaded (LOCK) : 0) -# define glthread_rwlock_destroy(LOCK) \ - (pthread_in_use () ? glthread_rwlock_destroy_multithreaded (LOCK) : 0) -extern int glthread_rwlock_init_multithreaded (gl_rwlock_t *lock); -extern int glthread_rwlock_rdlock_multithreaded (gl_rwlock_t *lock); -extern int glthread_rwlock_wrlock_multithreaded (gl_rwlock_t *lock); -extern int glthread_rwlock_unlock_multithreaded (gl_rwlock_t *lock); -extern int glthread_rwlock_destroy_multithreaded (gl_rwlock_t *lock); - -# endif - -/* --------------------- gl_recursive_lock_t datatype --------------------- */ - -# if HAVE_PTHREAD_MUTEX_RECURSIVE - -# if defined PTHREAD_RECURSIVE_MUTEX_INITIALIZER || defined PTHREAD_RECURSIVE_MUTEX_INITIALIZER_NP - -typedef pthread_mutex_t gl_recursive_lock_t; -# define gl_recursive_lock_define(STORAGECLASS, NAME) \ - STORAGECLASS pthread_mutex_t NAME; -# define gl_recursive_lock_define_initialized(STORAGECLASS, NAME) \ - STORAGECLASS pthread_mutex_t NAME = gl_recursive_lock_initializer; -# ifdef PTHREAD_RECURSIVE_MUTEX_INITIALIZER -# define gl_recursive_lock_initializer \ - PTHREAD_RECURSIVE_MUTEX_INITIALIZER -# else -# define gl_recursive_lock_initializer \ - PTHREAD_RECURSIVE_MUTEX_INITIALIZER_NP -# endif -# define glthread_recursive_lock_init(LOCK) \ - (pthread_in_use () ? glthread_recursive_lock_init_multithreaded (LOCK) : 0) -# define glthread_recursive_lock_lock(LOCK) \ - (pthread_in_use () ? pthread_mutex_lock (LOCK) : 0) -# define glthread_recursive_lock_unlock(LOCK) \ - (pthread_in_use () ? pthread_mutex_unlock (LOCK) : 0) -# define glthread_recursive_lock_destroy(LOCK) \ - (pthread_in_use () ? pthread_mutex_destroy (LOCK) : 0) -extern int glthread_recursive_lock_init_multithreaded (gl_recursive_lock_t *lock); - -# else - -typedef struct - { - pthread_mutex_t recmutex; /* recursive mutex */ - pthread_mutex_t guard; /* protects the initialization */ - int initialized; - } - gl_recursive_lock_t; -# define gl_recursive_lock_define(STORAGECLASS, NAME) \ - STORAGECLASS gl_recursive_lock_t NAME; -# define gl_recursive_lock_define_initialized(STORAGECLASS, NAME) \ - STORAGECLASS gl_recursive_lock_t NAME = gl_recursive_lock_initializer; -# define gl_recursive_lock_initializer \ - { PTHREAD_MUTEX_INITIALIZER, PTHREAD_MUTEX_INITIALIZER, 0 } -# define glthread_recursive_lock_init(LOCK) \ - (pthread_in_use () ? glthread_recursive_lock_init_multithreaded (LOCK) : 0) -# define glthread_recursive_lock_lock(LOCK) \ - (pthread_in_use () ? glthread_recursive_lock_lock_multithreaded (LOCK) : 0) -# define glthread_recursive_lock_unlock(LOCK) \ - (pthread_in_use () ? glthread_recursive_lock_unlock_multithreaded (LOCK) : 0) -# define glthread_recursive_lock_destroy(LOCK) \ - (pthread_in_use () ? glthread_recursive_lock_destroy_multithreaded (LOCK) : 0) -extern int glthread_recursive_lock_init_multithreaded (gl_recursive_lock_t *lock); -extern int glthread_recursive_lock_lock_multithreaded (gl_recursive_lock_t *lock); -extern int glthread_recursive_lock_unlock_multithreaded (gl_recursive_lock_t *lock); -extern int glthread_recursive_lock_destroy_multithreaded (gl_recursive_lock_t *lock); - -# endif - -# else - -/* Old versions of POSIX threads on Solaris did not have recursive locks. - We have to implement them ourselves. */ - -typedef struct - { - pthread_mutex_t mutex; - pthread_t owner; - unsigned long depth; - } - gl_recursive_lock_t; -# define gl_recursive_lock_define(STORAGECLASS, NAME) \ - STORAGECLASS gl_recursive_lock_t NAME; -# define gl_recursive_lock_define_initialized(STORAGECLASS, NAME) \ - STORAGECLASS gl_recursive_lock_t NAME = gl_recursive_lock_initializer; -# define gl_recursive_lock_initializer \ - { PTHREAD_MUTEX_INITIALIZER, (pthread_t) 0, 0 } -# define glthread_recursive_lock_init(LOCK) \ - (pthread_in_use () ? glthread_recursive_lock_init_multithreaded (LOCK) : 0) -# define glthread_recursive_lock_lock(LOCK) \ - (pthread_in_use () ? glthread_recursive_lock_lock_multithreaded (LOCK) : 0) -# define glthread_recursive_lock_unlock(LOCK) \ - (pthread_in_use () ? glthread_recursive_lock_unlock_multithreaded (LOCK) : 0) -# define glthread_recursive_lock_destroy(LOCK) \ - (pthread_in_use () ? glthread_recursive_lock_destroy_multithreaded (LOCK) : 0) -extern int glthread_recursive_lock_init_multithreaded (gl_recursive_lock_t *lock); -extern int glthread_recursive_lock_lock_multithreaded (gl_recursive_lock_t *lock); -extern int glthread_recursive_lock_unlock_multithreaded (gl_recursive_lock_t *lock); -extern int glthread_recursive_lock_destroy_multithreaded (gl_recursive_lock_t *lock); - -# endif - -/* -------------------------- gl_once_t datatype -------------------------- */ - -typedef pthread_once_t gl_once_t; -# define gl_once_define(STORAGECLASS, NAME) \ - STORAGECLASS pthread_once_t NAME = PTHREAD_ONCE_INIT; -# define glthread_once(ONCE_CONTROL, INITFUNCTION) \ - (pthread_in_use () \ - ? pthread_once (ONCE_CONTROL, INITFUNCTION) \ - : (glthread_once_singlethreaded (ONCE_CONTROL) ? (INITFUNCTION (), 0) : 0)) -extern int glthread_once_singlethreaded (pthread_once_t *once_control); - -# ifdef __cplusplus -} -# endif - -#endif - -/* ========================================================================= */ - -#if USE_PTH_THREADS - -/* Use the GNU Pth threads library. */ - -# include - -# ifdef __cplusplus -extern "C" { -# endif - -# if USE_PTH_THREADS_WEAK - -/* Use weak references to the GNU Pth threads library. */ - -# pragma weak pth_mutex_init -# pragma weak pth_mutex_acquire -# pragma weak pth_mutex_release -# pragma weak pth_rwlock_init -# pragma weak pth_rwlock_acquire -# pragma weak pth_rwlock_release -# pragma weak pth_once -# pragma weak pth_cond_init -# pragma weak pth_cond_await -# pragma weak pth_cond_notify - -# pragma weak pth_cancel -# define pth_in_use() (pth_cancel != NULL) - -# else - -# define pth_in_use() 1 - -# endif - -/* -------------------------- gl_lock_t datatype -------------------------- */ - -typedef pth_mutex_t gl_lock_t; -# define gl_lock_define(STORAGECLASS, NAME) \ - STORAGECLASS pth_mutex_t NAME; -# define gl_lock_define_initialized(STORAGECLASS, NAME) \ - STORAGECLASS pth_mutex_t NAME = gl_lock_initializer; -# define gl_lock_initializer \ - PTH_MUTEX_INIT -# define glthread_lock_init(LOCK) \ - (pth_in_use () && !pth_mutex_init (LOCK) ? errno : 0) -# define glthread_lock_lock(LOCK) \ - (pth_in_use () && !pth_mutex_acquire (LOCK, 0, NULL) ? errno : 0) -# define glthread_lock_unlock(LOCK) \ - (pth_in_use () && !pth_mutex_release (LOCK) ? errno : 0) -# define glthread_lock_destroy(LOCK) \ - ((void)(LOCK), 0) - -/* ------------------------- gl_rwlock_t datatype ------------------------- */ - -/* Pth pth_rwlock_acquire always prefers readers. No autoconf test so far. */ -# if HAVE_PTH_RWLOCK_ACQUIRE_PREFER_WRITER - -typedef pth_rwlock_t gl_rwlock_t; -# define gl_rwlock_define(STORAGECLASS, NAME) \ - STORAGECLASS pth_rwlock_t NAME; -# define gl_rwlock_define_initialized(STORAGECLASS, NAME) \ - STORAGECLASS pth_rwlock_t NAME = gl_rwlock_initializer; -# define gl_rwlock_initializer \ - PTH_RWLOCK_INIT -# define glthread_rwlock_init(LOCK) \ - (pth_in_use () && !pth_rwlock_init (LOCK) ? errno : 0) -# define glthread_rwlock_rdlock(LOCK) \ - (pth_in_use () && !pth_rwlock_acquire (LOCK, PTH_RWLOCK_RD, 0, NULL) ? errno : 0) -# define glthread_rwlock_wrlock(LOCK) \ - (pth_in_use () && !pth_rwlock_acquire (LOCK, PTH_RWLOCK_RW, 0, NULL) ? errno : 0) -# define glthread_rwlock_unlock(LOCK) \ - (pth_in_use () && !pth_rwlock_release (LOCK) ? errno : 0) -# define glthread_rwlock_destroy(LOCK) \ - ((void)(LOCK), 0) - -# else - -typedef struct - { - int initialized; - pth_mutex_t lock; /* protects the remaining fields */ - pth_cond_t waiting_readers; /* waiting readers */ - pth_cond_t waiting_writers; /* waiting writers */ - unsigned int waiting_writers_count; /* number of waiting writers */ - int runcount; /* number of readers running, or -1 when a writer runs */ - } - gl_rwlock_t; -# define gl_rwlock_define(STORAGECLASS, NAME) \ - STORAGECLASS gl_rwlock_t NAME; -# define gl_rwlock_define_initialized(STORAGECLASS, NAME) \ - STORAGECLASS gl_rwlock_t NAME = gl_rwlock_initializer; -# define gl_rwlock_initializer \ - { 0 } -# define glthread_rwlock_init(LOCK) \ - (pth_in_use () ? glthread_rwlock_init_multithreaded (LOCK) : 0) -# define glthread_rwlock_rdlock(LOCK) \ - (pth_in_use () ? glthread_rwlock_rdlock_multithreaded (LOCK) : 0) -# define glthread_rwlock_wrlock(LOCK) \ - (pth_in_use () ? glthread_rwlock_wrlock_multithreaded (LOCK) : 0) -# define glthread_rwlock_unlock(LOCK) \ - (pth_in_use () ? glthread_rwlock_unlock_multithreaded (LOCK) : 0) -# define glthread_rwlock_destroy(LOCK) \ - (pth_in_use () ? glthread_rwlock_destroy_multithreaded (LOCK) : 0) -extern int glthread_rwlock_init_multithreaded (gl_rwlock_t *lock); -extern int glthread_rwlock_rdlock_multithreaded (gl_rwlock_t *lock); -extern int glthread_rwlock_wrlock_multithreaded (gl_rwlock_t *lock); -extern int glthread_rwlock_unlock_multithreaded (gl_rwlock_t *lock); -extern int glthread_rwlock_destroy_multithreaded (gl_rwlock_t *lock); - -# endif - -/* --------------------- gl_recursive_lock_t datatype --------------------- */ - -/* In Pth, mutexes are recursive by default. */ -typedef pth_mutex_t gl_recursive_lock_t; -# define gl_recursive_lock_define(STORAGECLASS, NAME) \ - STORAGECLASS pth_mutex_t NAME; -# define gl_recursive_lock_define_initialized(STORAGECLASS, NAME) \ - STORAGECLASS pth_mutex_t NAME = gl_recursive_lock_initializer; -# define gl_recursive_lock_initializer \ - PTH_MUTEX_INIT -# define glthread_recursive_lock_init(LOCK) \ - (pth_in_use () && !pth_mutex_init (LOCK) ? errno : 0) -# define glthread_recursive_lock_lock(LOCK) \ - (pth_in_use () && !pth_mutex_acquire (LOCK, 0, NULL) ? errno : 0) -# define glthread_recursive_lock_unlock(LOCK) \ - (pth_in_use () && !pth_mutex_release (LOCK) ? errno : 0) -# define glthread_recursive_lock_destroy(LOCK) \ - ((void)(LOCK), 0) - -/* -------------------------- gl_once_t datatype -------------------------- */ - -typedef pth_once_t gl_once_t; -# define gl_once_define(STORAGECLASS, NAME) \ - STORAGECLASS pth_once_t NAME = PTH_ONCE_INIT; -# define glthread_once(ONCE_CONTROL, INITFUNCTION) \ - (pth_in_use () \ - ? glthread_once_multithreaded (ONCE_CONTROL, INITFUNCTION) \ - : (glthread_once_singlethreaded (ONCE_CONTROL) ? (INITFUNCTION (), 0) : 0)) -extern int glthread_once_multithreaded (pth_once_t *once_control, void (*initfunction) (void)); -extern int glthread_once_singlethreaded (pth_once_t *once_control); - -# ifdef __cplusplus -} -# endif - -#endif - -/* ========================================================================= */ - -#if USE_SOLARIS_THREADS - -/* Use the old Solaris threads library. */ - -# include -# include - -# ifdef __cplusplus -extern "C" { -# endif - -# if USE_SOLARIS_THREADS_WEAK - -/* Use weak references to the old Solaris threads library. */ - -# pragma weak mutex_init -# pragma weak mutex_lock -# pragma weak mutex_unlock -# pragma weak mutex_destroy -# pragma weak rwlock_init -# pragma weak rw_rdlock -# pragma weak rw_wrlock -# pragma weak rw_unlock -# pragma weak rwlock_destroy -# pragma weak thr_self - -# pragma weak thr_suspend -# define thread_in_use() (thr_suspend != NULL) - -# else - -# define thread_in_use() 1 - -# endif - -/* -------------------------- gl_lock_t datatype -------------------------- */ - -typedef mutex_t gl_lock_t; -# define gl_lock_define(STORAGECLASS, NAME) \ - STORAGECLASS mutex_t NAME; -# define gl_lock_define_initialized(STORAGECLASS, NAME) \ - STORAGECLASS mutex_t NAME = gl_lock_initializer; -# define gl_lock_initializer \ - DEFAULTMUTEX -# define glthread_lock_init(LOCK) \ - (thread_in_use () ? mutex_init (LOCK, USYNC_THREAD, NULL) : 0) -# define glthread_lock_lock(LOCK) \ - (thread_in_use () ? mutex_lock (LOCK) : 0) -# define glthread_lock_unlock(LOCK) \ - (thread_in_use () ? mutex_unlock (LOCK) : 0) -# define glthread_lock_destroy(LOCK) \ - (thread_in_use () ? mutex_destroy (LOCK) : 0) - -/* ------------------------- gl_rwlock_t datatype ------------------------- */ - -typedef rwlock_t gl_rwlock_t; -# define gl_rwlock_define(STORAGECLASS, NAME) \ - STORAGECLASS rwlock_t NAME; -# define gl_rwlock_define_initialized(STORAGECLASS, NAME) \ - STORAGECLASS rwlock_t NAME = gl_rwlock_initializer; -# define gl_rwlock_initializer \ - DEFAULTRWLOCK -# define glthread_rwlock_init(LOCK) \ - (thread_in_use () ? rwlock_init (LOCK, USYNC_THREAD, NULL) : 0) -# define glthread_rwlock_rdlock(LOCK) \ - (thread_in_use () ? rw_rdlock (LOCK) : 0) -# define glthread_rwlock_wrlock(LOCK) \ - (thread_in_use () ? rw_wrlock (LOCK) : 0) -# define glthread_rwlock_unlock(LOCK) \ - (thread_in_use () ? rw_unlock (LOCK) : 0) -# define glthread_rwlock_destroy(LOCK) \ - (thread_in_use () ? rwlock_destroy (LOCK) : 0) - -/* --------------------- gl_recursive_lock_t datatype --------------------- */ - -/* Old Solaris threads did not have recursive locks. - We have to implement them ourselves. */ - -typedef struct - { - mutex_t mutex; - thread_t owner; - unsigned long depth; - } - gl_recursive_lock_t; -# define gl_recursive_lock_define(STORAGECLASS, NAME) \ - STORAGECLASS gl_recursive_lock_t NAME; -# define gl_recursive_lock_define_initialized(STORAGECLASS, NAME) \ - STORAGECLASS gl_recursive_lock_t NAME = gl_recursive_lock_initializer; -# define gl_recursive_lock_initializer \ - { DEFAULTMUTEX, (thread_t) 0, 0 } -# define glthread_recursive_lock_init(LOCK) \ - (thread_in_use () ? glthread_recursive_lock_init_multithreaded (LOCK) : 0) -# define glthread_recursive_lock_lock(LOCK) \ - (thread_in_use () ? glthread_recursive_lock_lock_multithreaded (LOCK) : 0) -# define glthread_recursive_lock_unlock(LOCK) \ - (thread_in_use () ? glthread_recursive_lock_unlock_multithreaded (LOCK) : 0) -# define glthread_recursive_lock_destroy(LOCK) \ - (thread_in_use () ? glthread_recursive_lock_destroy_multithreaded (LOCK) : 0) -extern int glthread_recursive_lock_init_multithreaded (gl_recursive_lock_t *lock); -extern int glthread_recursive_lock_lock_multithreaded (gl_recursive_lock_t *lock); -extern int glthread_recursive_lock_unlock_multithreaded (gl_recursive_lock_t *lock); -extern int glthread_recursive_lock_destroy_multithreaded (gl_recursive_lock_t *lock); - -/* -------------------------- gl_once_t datatype -------------------------- */ - -typedef struct - { - volatile int inited; - mutex_t mutex; - } - gl_once_t; -# define gl_once_define(STORAGECLASS, NAME) \ - STORAGECLASS gl_once_t NAME = { 0, DEFAULTMUTEX }; -# define glthread_once(ONCE_CONTROL, INITFUNCTION) \ - (thread_in_use () \ - ? glthread_once_multithreaded (ONCE_CONTROL, INITFUNCTION) \ - : (glthread_once_singlethreaded (ONCE_CONTROL) ? (INITFUNCTION (), 0) : 0)) -extern int glthread_once_multithreaded (gl_once_t *once_control, void (*initfunction) (void)); -extern int glthread_once_singlethreaded (gl_once_t *once_control); - -# ifdef __cplusplus -} -# endif - -#endif - -/* ========================================================================= */ - -#if USE_WINDOWS_THREADS - -# define WIN32_LEAN_AND_MEAN /* avoid including junk */ -# include - -# ifdef __cplusplus -extern "C" { -# endif - -/* We can use CRITICAL_SECTION directly, rather than the native Windows Event, - Mutex, Semaphore types, because - - we need only to synchronize inside a single process (address space), - not inter-process locking, - - we don't need to support trylock operations. (TryEnterCriticalSection - does not work on Windows 95/98/ME. Packages that need trylock usually - define their own mutex type.) */ - -/* There is no way to statically initialize a CRITICAL_SECTION. It needs - to be done lazily, once only. For this we need spinlocks. */ - -typedef struct { volatile int done; volatile long started; } gl_spinlock_t; - -/* -------------------------- gl_lock_t datatype -------------------------- */ - -typedef struct - { - gl_spinlock_t guard; /* protects the initialization */ - CRITICAL_SECTION lock; - } - gl_lock_t; -# define gl_lock_define(STORAGECLASS, NAME) \ - STORAGECLASS gl_lock_t NAME; -# define gl_lock_define_initialized(STORAGECLASS, NAME) \ - STORAGECLASS gl_lock_t NAME = gl_lock_initializer; -# define gl_lock_initializer \ - { { 0, -1 } } -# define glthread_lock_init(LOCK) \ - (glthread_lock_init_func (LOCK), 0) -# define glthread_lock_lock(LOCK) \ - glthread_lock_lock_func (LOCK) -# define glthread_lock_unlock(LOCK) \ - glthread_lock_unlock_func (LOCK) -# define glthread_lock_destroy(LOCK) \ - glthread_lock_destroy_func (LOCK) -extern void glthread_lock_init_func (gl_lock_t *lock); -extern int glthread_lock_lock_func (gl_lock_t *lock); -extern int glthread_lock_unlock_func (gl_lock_t *lock); -extern int glthread_lock_destroy_func (gl_lock_t *lock); - -/* ------------------------- gl_rwlock_t datatype ------------------------- */ - -/* It is impossible to implement read-write locks using plain locks, without - introducing an extra thread dedicated to managing read-write locks. - Therefore here we need to use the low-level Event type. */ - -typedef struct - { - HANDLE *array; /* array of waiting threads, each represented by an event */ - unsigned int count; /* number of waiting threads */ - unsigned int alloc; /* length of allocated array */ - unsigned int offset; /* index of first waiting thread in array */ - } - gl_carray_waitqueue_t; -typedef struct - { - gl_spinlock_t guard; /* protects the initialization */ - CRITICAL_SECTION lock; /* protects the remaining fields */ - gl_carray_waitqueue_t waiting_readers; /* waiting readers */ - gl_carray_waitqueue_t waiting_writers; /* waiting writers */ - int runcount; /* number of readers running, or -1 when a writer runs */ - } - gl_rwlock_t; -# define gl_rwlock_define(STORAGECLASS, NAME) \ - STORAGECLASS gl_rwlock_t NAME; -# define gl_rwlock_define_initialized(STORAGECLASS, NAME) \ - STORAGECLASS gl_rwlock_t NAME = gl_rwlock_initializer; -# define gl_rwlock_initializer \ - { { 0, -1 } } -# define glthread_rwlock_init(LOCK) \ - (glthread_rwlock_init_func (LOCK), 0) -# define glthread_rwlock_rdlock(LOCK) \ - glthread_rwlock_rdlock_func (LOCK) -# define glthread_rwlock_wrlock(LOCK) \ - glthread_rwlock_wrlock_func (LOCK) -# define glthread_rwlock_unlock(LOCK) \ - glthread_rwlock_unlock_func (LOCK) -# define glthread_rwlock_destroy(LOCK) \ - glthread_rwlock_destroy_func (LOCK) -extern void glthread_rwlock_init_func (gl_rwlock_t *lock); -extern int glthread_rwlock_rdlock_func (gl_rwlock_t *lock); -extern int glthread_rwlock_wrlock_func (gl_rwlock_t *lock); -extern int glthread_rwlock_unlock_func (gl_rwlock_t *lock); -extern int glthread_rwlock_destroy_func (gl_rwlock_t *lock); - -/* --------------------- gl_recursive_lock_t datatype --------------------- */ - -/* The native Windows documentation says that CRITICAL_SECTION already - implements a recursive lock. But we need not rely on it: It's easy to - implement a recursive lock without this assumption. */ - -typedef struct - { - gl_spinlock_t guard; /* protects the initialization */ - DWORD owner; - unsigned long depth; - CRITICAL_SECTION lock; - } - gl_recursive_lock_t; -# define gl_recursive_lock_define(STORAGECLASS, NAME) \ - STORAGECLASS gl_recursive_lock_t NAME; -# define gl_recursive_lock_define_initialized(STORAGECLASS, NAME) \ - STORAGECLASS gl_recursive_lock_t NAME = gl_recursive_lock_initializer; -# define gl_recursive_lock_initializer \ - { { 0, -1 }, 0, 0 } -# define glthread_recursive_lock_init(LOCK) \ - (glthread_recursive_lock_init_func (LOCK), 0) -# define glthread_recursive_lock_lock(LOCK) \ - glthread_recursive_lock_lock_func (LOCK) -# define glthread_recursive_lock_unlock(LOCK) \ - glthread_recursive_lock_unlock_func (LOCK) -# define glthread_recursive_lock_destroy(LOCK) \ - glthread_recursive_lock_destroy_func (LOCK) -extern void glthread_recursive_lock_init_func (gl_recursive_lock_t *lock); -extern int glthread_recursive_lock_lock_func (gl_recursive_lock_t *lock); -extern int glthread_recursive_lock_unlock_func (gl_recursive_lock_t *lock); -extern int glthread_recursive_lock_destroy_func (gl_recursive_lock_t *lock); - -/* -------------------------- gl_once_t datatype -------------------------- */ - -typedef struct - { - volatile int inited; - volatile long started; - CRITICAL_SECTION lock; - } - gl_once_t; -# define gl_once_define(STORAGECLASS, NAME) \ - STORAGECLASS gl_once_t NAME = { -1, -1 }; -# define glthread_once(ONCE_CONTROL, INITFUNCTION) \ - (glthread_once_func (ONCE_CONTROL, INITFUNCTION), 0) -extern void glthread_once_func (gl_once_t *once_control, void (*initfunction) (void)); - -# ifdef __cplusplus -} -# endif - -#endif - -/* ========================================================================= */ - -#if !(USE_POSIX_THREADS || USE_PTH_THREADS || USE_SOLARIS_THREADS || USE_WINDOWS_THREADS) - -/* Provide dummy implementation if threads are not supported. */ - -/* -------------------------- gl_lock_t datatype -------------------------- */ - -typedef int gl_lock_t; -# define gl_lock_define(STORAGECLASS, NAME) -# define gl_lock_define_initialized(STORAGECLASS, NAME) -# define glthread_lock_init(NAME) 0 -# define glthread_lock_lock(NAME) 0 -# define glthread_lock_unlock(NAME) 0 -# define glthread_lock_destroy(NAME) 0 - -/* ------------------------- gl_rwlock_t datatype ------------------------- */ - -typedef int gl_rwlock_t; -# define gl_rwlock_define(STORAGECLASS, NAME) -# define gl_rwlock_define_initialized(STORAGECLASS, NAME) -# define glthread_rwlock_init(NAME) 0 -# define glthread_rwlock_rdlock(NAME) 0 -# define glthread_rwlock_wrlock(NAME) 0 -# define glthread_rwlock_unlock(NAME) 0 -# define glthread_rwlock_destroy(NAME) 0 - -/* --------------------- gl_recursive_lock_t datatype --------------------- */ - -typedef int gl_recursive_lock_t; -# define gl_recursive_lock_define(STORAGECLASS, NAME) -# define gl_recursive_lock_define_initialized(STORAGECLASS, NAME) -# define glthread_recursive_lock_init(NAME) 0 -# define glthread_recursive_lock_lock(NAME) 0 -# define glthread_recursive_lock_unlock(NAME) 0 -# define glthread_recursive_lock_destroy(NAME) 0 - -/* -------------------------- gl_once_t datatype -------------------------- */ - -typedef int gl_once_t; -# define gl_once_define(STORAGECLASS, NAME) \ - STORAGECLASS gl_once_t NAME = 0; -# define glthread_once(ONCE_CONTROL, INITFUNCTION) \ - (*(ONCE_CONTROL) == 0 ? (*(ONCE_CONTROL) = ~ 0, INITFUNCTION (), 0) : 0) - -#endif - -/* ========================================================================= */ - -/* Macros with built-in error handling. */ - -/* -------------------------- gl_lock_t datatype -------------------------- */ - -#define gl_lock_init(NAME) \ - do \ - { \ - if (glthread_lock_init (&NAME)) \ - abort (); \ - } \ - while (0) -#define gl_lock_lock(NAME) \ - do \ - { \ - if (glthread_lock_lock (&NAME)) \ - abort (); \ - } \ - while (0) -#define gl_lock_unlock(NAME) \ - do \ - { \ - if (glthread_lock_unlock (&NAME)) \ - abort (); \ - } \ - while (0) -#define gl_lock_destroy(NAME) \ - do \ - { \ - if (glthread_lock_destroy (&NAME)) \ - abort (); \ - } \ - while (0) - -/* ------------------------- gl_rwlock_t datatype ------------------------- */ - -#define gl_rwlock_init(NAME) \ - do \ - { \ - if (glthread_rwlock_init (&NAME)) \ - abort (); \ - } \ - while (0) -#define gl_rwlock_rdlock(NAME) \ - do \ - { \ - if (glthread_rwlock_rdlock (&NAME)) \ - abort (); \ - } \ - while (0) -#define gl_rwlock_wrlock(NAME) \ - do \ - { \ - if (glthread_rwlock_wrlock (&NAME)) \ - abort (); \ - } \ - while (0) -#define gl_rwlock_unlock(NAME) \ - do \ - { \ - if (glthread_rwlock_unlock (&NAME)) \ - abort (); \ - } \ - while (0) -#define gl_rwlock_destroy(NAME) \ - do \ - { \ - if (glthread_rwlock_destroy (&NAME)) \ - abort (); \ - } \ - while (0) - -/* --------------------- gl_recursive_lock_t datatype --------------------- */ - -#define gl_recursive_lock_init(NAME) \ - do \ - { \ - if (glthread_recursive_lock_init (&NAME)) \ - abort (); \ - } \ - while (0) -#define gl_recursive_lock_lock(NAME) \ - do \ - { \ - if (glthread_recursive_lock_lock (&NAME)) \ - abort (); \ - } \ - while (0) -#define gl_recursive_lock_unlock(NAME) \ - do \ - { \ - if (glthread_recursive_lock_unlock (&NAME)) \ - abort (); \ - } \ - while (0) -#define gl_recursive_lock_destroy(NAME) \ - do \ - { \ - if (glthread_recursive_lock_destroy (&NAME)) \ - abort (); \ - } \ - while (0) - -/* -------------------------- gl_once_t datatype -------------------------- */ - -#define gl_once(NAME, INITFUNCTION) \ - do \ - { \ - if (glthread_once (&NAME, INITFUNCTION)) \ - abort (); \ - } \ - while (0) - -/* ========================================================================= */ - -#endif /* _LOCK_H */ diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/glthread/threadlib.c b/thirdparty/grub-2.04/grub-core/lib/gnulib/glthread/threadlib.c deleted file mode 100644 index a5ebd9bfe..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/glthread/threadlib.c +++ /dev/null @@ -1,73 +0,0 @@ -/* Multithreading primitives. - Copyright (C) 2005-2019 Free Software Foundation, Inc. - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3, or (at your option) - any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, see . */ - -/* Written by Bruno Haible , 2005. */ - -#include - -/* ========================================================================= */ - -#if USE_POSIX_THREADS - -/* Use the POSIX threads library. */ - -# include -# include - -# if PTHREAD_IN_USE_DETECTION_HARD - -/* The function to be executed by a dummy thread. */ -static void * -dummy_thread_func (void *arg) -{ - return arg; -} - -int -glthread_in_use (void) -{ - static int tested; - static int result; /* 1: linked with -lpthread, 0: only with libc */ - - if (!tested) - { - pthread_t thread; - - if (pthread_create (&thread, NULL, dummy_thread_func, NULL) != 0) - /* Thread creation failed. */ - result = 0; - else - { - /* Thread creation works. */ - void *retval; - if (pthread_join (thread, &retval) != 0) - abort (); - result = 1; - } - tested = 1; - } - return result; -} - -# endif - -#endif - -/* ========================================================================= */ - -/* This declaration is solely to ensure that after preprocessing - this file is never empty. */ -typedef int dummy; diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/hard-locale.c b/thirdparty/grub-2.04/grub-core/lib/gnulib/hard-locale.c deleted file mode 100644 index dcfcad62e..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/hard-locale.c +++ /dev/null @@ -1,72 +0,0 @@ -/* hard-locale.c -- Determine whether a locale is hard. - - Copyright (C) 1997-1999, 2002-2004, 2006-2007, 2009-2019 Free Software - Foundation, Inc. - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . */ - -#include - -#include "hard-locale.h" - -#include -#include -#include - -#ifdef __GLIBC__ -# define GLIBC_VERSION __GLIBC__ -#elif defined __UCLIBC__ -# define GLIBC_VERSION 2 -#else -# define GLIBC_VERSION 0 -#endif - -/* Return true if the current CATEGORY locale is hard, i.e. if you - can't get away with assuming traditional C or POSIX behavior. */ -bool -hard_locale (int category) -{ - bool hard = true; - char const *p = setlocale (category, NULL); - - if (p) - { - if (2 <= GLIBC_VERSION) - { - if (strcmp (p, "C") == 0 || strcmp (p, "POSIX") == 0) - hard = false; - } - else - { - char *locale = strdup (p); - if (locale) - { - /* Temporarily set the locale to the "C" and "POSIX" locales - to find their names, so that we can determine whether one - or the other is the caller's locale. */ - if (((p = setlocale (category, "C")) - && strcmp (p, locale) == 0) - || ((p = setlocale (category, "POSIX")) - && strcmp (p, locale) == 0)) - hard = false; - - /* Restore the caller's locale. */ - setlocale (category, locale); - free (locale); - } - } - } - - return hard; -} diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/hard-locale.h b/thirdparty/grub-2.04/grub-core/lib/gnulib/hard-locale.h deleted file mode 100644 index 8f1da96e2..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/hard-locale.h +++ /dev/null @@ -1,25 +0,0 @@ -/* Determine whether a locale is hard. - - Copyright (C) 1999, 2003-2004, 2009-2019 Free Software Foundation, Inc. - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . */ - -#ifndef HARD_LOCALE_H_ -# define HARD_LOCALE_H_ 1 - -# include - -bool hard_locale (int); - -#endif /* HARD_LOCALE_H_ */ diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/intprops.h b/thirdparty/grub-2.04/grub-core/lib/gnulib/intprops.h deleted file mode 100644 index 1a44ae556..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/intprops.h +++ /dev/null @@ -1,455 +0,0 @@ -/* intprops.h -- properties of integer types - - Copyright (C) 2001-2019 Free Software Foundation, Inc. - - This program is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published - by the Free Software Foundation; either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . */ - -/* Written by Paul Eggert. */ - -#ifndef _GL_INTPROPS_H -#define _GL_INTPROPS_H - -#include - -/* Return a value with the common real type of E and V and the value of V. - Do not evaluate E. */ -#define _GL_INT_CONVERT(e, v) ((1 ? 0 : (e)) + (v)) - -/* Act like _GL_INT_CONVERT (E, -V) but work around a bug in IRIX 6.5 cc; see - . */ -#define _GL_INT_NEGATE_CONVERT(e, v) ((1 ? 0 : (e)) - (v)) - -/* The extra casts in the following macros work around compiler bugs, - e.g., in Cray C 5.0.3.0. */ - -/* True if the arithmetic type T is an integer type. bool counts as - an integer. */ -#define TYPE_IS_INTEGER(t) ((t) 1.5 == 1) - -/* True if the real type T is signed. */ -#define TYPE_SIGNED(t) (! ((t) 0 < (t) -1)) - -/* Return 1 if the real expression E, after promotion, has a - signed or floating type. Do not evaluate E. */ -#define EXPR_SIGNED(e) (_GL_INT_NEGATE_CONVERT (e, 1) < 0) - - -/* Minimum and maximum values for integer types and expressions. */ - -/* The width in bits of the integer type or expression T. - Do not evaluate T. - Padding bits are not supported; this is checked at compile-time below. */ -#define TYPE_WIDTH(t) (sizeof (t) * CHAR_BIT) - -/* The maximum and minimum values for the integer type T. */ -#define TYPE_MINIMUM(t) ((t) ~ TYPE_MAXIMUM (t)) -#define TYPE_MAXIMUM(t) \ - ((t) (! TYPE_SIGNED (t) \ - ? (t) -1 \ - : ((((t) 1 << (TYPE_WIDTH (t) - 2)) - 1) * 2 + 1))) - -/* The maximum and minimum values for the type of the expression E, - after integer promotion. E is not evaluated. */ -#define _GL_INT_MINIMUM(e) \ - (EXPR_SIGNED (e) \ - ? ~ _GL_SIGNED_INT_MAXIMUM (e) \ - : _GL_INT_CONVERT (e, 0)) -#define _GL_INT_MAXIMUM(e) \ - (EXPR_SIGNED (e) \ - ? _GL_SIGNED_INT_MAXIMUM (e) \ - : _GL_INT_NEGATE_CONVERT (e, 1)) -#define _GL_SIGNED_INT_MAXIMUM(e) \ - (((_GL_INT_CONVERT (e, 1) << (TYPE_WIDTH ((e) + 0) - 2)) - 1) * 2 + 1) - -/* Work around OpenVMS incompatibility with C99. */ -#if !defined LLONG_MAX && defined __INT64_MAX -# define LLONG_MAX __INT64_MAX -# define LLONG_MIN __INT64_MIN -#endif - -/* This include file assumes that signed types are two's complement without - padding bits; the above macros have undefined behavior otherwise. - If this is a problem for you, please let us know how to fix it for your host. - This assumption is tested by the intprops-tests module. */ - -/* Does the __typeof__ keyword work? This could be done by - 'configure', but for now it's easier to do it by hand. */ -#if (2 <= __GNUC__ \ - || (1210 <= __IBMC__ && defined __IBM__TYPEOF__) \ - || (0x5110 <= __SUNPRO_C && !__STDC__)) -# define _GL_HAVE___TYPEOF__ 1 -#else -# define _GL_HAVE___TYPEOF__ 0 -#endif - -/* Return 1 if the integer type or expression T might be signed. Return 0 - if it is definitely unsigned. This macro does not evaluate its argument, - and expands to an integer constant expression. */ -#if _GL_HAVE___TYPEOF__ -# define _GL_SIGNED_TYPE_OR_EXPR(t) TYPE_SIGNED (__typeof__ (t)) -#else -# define _GL_SIGNED_TYPE_OR_EXPR(t) 1 -#endif - -/* Bound on length of the string representing an unsigned integer - value representable in B bits. log10 (2.0) < 146/485. The - smallest value of B where this bound is not tight is 2621. */ -#define INT_BITS_STRLEN_BOUND(b) (((b) * 146 + 484) / 485) - -/* Bound on length of the string representing an integer type or expression T. - Subtract 1 for the sign bit if T is signed, and then add 1 more for - a minus sign if needed. - - Because _GL_SIGNED_TYPE_OR_EXPR sometimes returns 0 when its argument is - signed, this macro may overestimate the true bound by one byte when - applied to unsigned types of size 2, 4, 16, ... bytes. */ -#define INT_STRLEN_BOUND(t) \ - (INT_BITS_STRLEN_BOUND (TYPE_WIDTH (t) - _GL_SIGNED_TYPE_OR_EXPR (t)) \ - + _GL_SIGNED_TYPE_OR_EXPR (t)) - -/* Bound on buffer size needed to represent an integer type or expression T, - including the terminating null. */ -#define INT_BUFSIZE_BOUND(t) (INT_STRLEN_BOUND (t) + 1) - - -/* Range overflow checks. - - The INT__RANGE_OVERFLOW macros return 1 if the corresponding C - operators might not yield numerically correct answers due to - arithmetic overflow. They do not rely on undefined or - implementation-defined behavior. Their implementations are simple - and straightforward, but they are a bit harder to use than the - INT__OVERFLOW macros described below. - - Example usage: - - long int i = ...; - long int j = ...; - if (INT_MULTIPLY_RANGE_OVERFLOW (i, j, LONG_MIN, LONG_MAX)) - printf ("multiply would overflow"); - else - printf ("product is %ld", i * j); - - Restrictions on *_RANGE_OVERFLOW macros: - - These macros do not check for all possible numerical problems or - undefined or unspecified behavior: they do not check for division - by zero, for bad shift counts, or for shifting negative numbers. - - These macros may evaluate their arguments zero or multiple times, - so the arguments should not have side effects. The arithmetic - arguments (including the MIN and MAX arguments) must be of the same - integer type after the usual arithmetic conversions, and the type - must have minimum value MIN and maximum MAX. Unsigned types should - use a zero MIN of the proper type. - - These macros are tuned for constant MIN and MAX. For commutative - operations such as A + B, they are also tuned for constant B. */ - -/* Return 1 if A + B would overflow in [MIN,MAX] arithmetic. - See above for restrictions. */ -#define INT_ADD_RANGE_OVERFLOW(a, b, min, max) \ - ((b) < 0 \ - ? (a) < (min) - (b) \ - : (max) - (b) < (a)) - -/* Return 1 if A - B would overflow in [MIN,MAX] arithmetic. - See above for restrictions. */ -#define INT_SUBTRACT_RANGE_OVERFLOW(a, b, min, max) \ - ((b) < 0 \ - ? (max) + (b) < (a) \ - : (a) < (min) + (b)) - -/* Return 1 if - A would overflow in [MIN,MAX] arithmetic. - See above for restrictions. */ -#define INT_NEGATE_RANGE_OVERFLOW(a, min, max) \ - ((min) < 0 \ - ? (a) < - (max) \ - : 0 < (a)) - -/* Return 1 if A * B would overflow in [MIN,MAX] arithmetic. - See above for restrictions. Avoid && and || as they tickle - bugs in Sun C 5.11 2010/08/13 and other compilers; see - . */ -#define INT_MULTIPLY_RANGE_OVERFLOW(a, b, min, max) \ - ((b) < 0 \ - ? ((a) < 0 \ - ? (a) < (max) / (b) \ - : (b) == -1 \ - ? 0 \ - : (min) / (b) < (a)) \ - : (b) == 0 \ - ? 0 \ - : ((a) < 0 \ - ? (a) < (min) / (b) \ - : (max) / (b) < (a))) - -/* Return 1 if A / B would overflow in [MIN,MAX] arithmetic. - See above for restrictions. Do not check for division by zero. */ -#define INT_DIVIDE_RANGE_OVERFLOW(a, b, min, max) \ - ((min) < 0 && (b) == -1 && (a) < - (max)) - -/* Return 1 if A % B would overflow in [MIN,MAX] arithmetic. - See above for restrictions. Do not check for division by zero. - Mathematically, % should never overflow, but on x86-like hosts - INT_MIN % -1 traps, and the C standard permits this, so treat this - as an overflow too. */ -#define INT_REMAINDER_RANGE_OVERFLOW(a, b, min, max) \ - INT_DIVIDE_RANGE_OVERFLOW (a, b, min, max) - -/* Return 1 if A << B would overflow in [MIN,MAX] arithmetic. - See above for restrictions. Here, MIN and MAX are for A only, and B need - not be of the same type as the other arguments. The C standard says that - behavior is undefined for shifts unless 0 <= B < wordwidth, and that when - A is negative then A << B has undefined behavior and A >> B has - implementation-defined behavior, but do not check these other - restrictions. */ -#define INT_LEFT_SHIFT_RANGE_OVERFLOW(a, b, min, max) \ - ((a) < 0 \ - ? (a) < (min) >> (b) \ - : (max) >> (b) < (a)) - -/* True if __builtin_add_overflow (A, B, P) works when P is non-null. */ -#if 5 <= __GNUC__ && !defined __ICC -# define _GL_HAS_BUILTIN_OVERFLOW 1 -#else -# define _GL_HAS_BUILTIN_OVERFLOW 0 -#endif - -/* True if __builtin_add_overflow_p (A, B, C) works. */ -#define _GL_HAS_BUILTIN_OVERFLOW_P (7 <= __GNUC__) - -/* The _GL*_OVERFLOW macros have the same restrictions as the - *_RANGE_OVERFLOW macros, except that they do not assume that operands - (e.g., A and B) have the same type as MIN and MAX. Instead, they assume - that the result (e.g., A + B) has that type. */ -#if _GL_HAS_BUILTIN_OVERFLOW_P -# define _GL_ADD_OVERFLOW(a, b, min, max) \ - __builtin_add_overflow_p (a, b, (__typeof__ ((a) + (b))) 0) -# define _GL_SUBTRACT_OVERFLOW(a, b, min, max) \ - __builtin_sub_overflow_p (a, b, (__typeof__ ((a) - (b))) 0) -# define _GL_MULTIPLY_OVERFLOW(a, b, min, max) \ - __builtin_mul_overflow_p (a, b, (__typeof__ ((a) * (b))) 0) -#else -# define _GL_ADD_OVERFLOW(a, b, min, max) \ - ((min) < 0 ? INT_ADD_RANGE_OVERFLOW (a, b, min, max) \ - : (a) < 0 ? (b) <= (a) + (b) \ - : (b) < 0 ? (a) <= (a) + (b) \ - : (a) + (b) < (b)) -# define _GL_SUBTRACT_OVERFLOW(a, b, min, max) \ - ((min) < 0 ? INT_SUBTRACT_RANGE_OVERFLOW (a, b, min, max) \ - : (a) < 0 ? 1 \ - : (b) < 0 ? (a) - (b) <= (a) \ - : (a) < (b)) -# define _GL_MULTIPLY_OVERFLOW(a, b, min, max) \ - (((min) == 0 && (((a) < 0 && 0 < (b)) || ((b) < 0 && 0 < (a)))) \ - || INT_MULTIPLY_RANGE_OVERFLOW (a, b, min, max)) -#endif -#define _GL_DIVIDE_OVERFLOW(a, b, min, max) \ - ((min) < 0 ? (b) == _GL_INT_NEGATE_CONVERT (min, 1) && (a) < - (max) \ - : (a) < 0 ? (b) <= (a) + (b) - 1 \ - : (b) < 0 && (a) + (b) <= (a)) -#define _GL_REMAINDER_OVERFLOW(a, b, min, max) \ - ((min) < 0 ? (b) == _GL_INT_NEGATE_CONVERT (min, 1) && (a) < - (max) \ - : (a) < 0 ? (a) % (b) != ((max) - (b) + 1) % (b) \ - : (b) < 0 && ! _GL_UNSIGNED_NEG_MULTIPLE (a, b, max)) - -/* Return a nonzero value if A is a mathematical multiple of B, where - A is unsigned, B is negative, and MAX is the maximum value of A's - type. A's type must be the same as (A % B)'s type. Normally (A % - -B == 0) suffices, but things get tricky if -B would overflow. */ -#define _GL_UNSIGNED_NEG_MULTIPLE(a, b, max) \ - (((b) < -_GL_SIGNED_INT_MAXIMUM (b) \ - ? (_GL_SIGNED_INT_MAXIMUM (b) == (max) \ - ? (a) \ - : (a) % (_GL_INT_CONVERT (a, _GL_SIGNED_INT_MAXIMUM (b)) + 1)) \ - : (a) % - (b)) \ - == 0) - -/* Check for integer overflow, and report low order bits of answer. - - The INT__OVERFLOW macros return 1 if the corresponding C operators - might not yield numerically correct answers due to arithmetic overflow. - The INT__WRAPV macros also store the low-order bits of the answer. - These macros work correctly on all known practical hosts, and do not rely - on undefined behavior due to signed arithmetic overflow. - - Example usage, assuming A and B are long int: - - if (INT_MULTIPLY_OVERFLOW (a, b)) - printf ("result would overflow\n"); - else - printf ("result is %ld (no overflow)\n", a * b); - - Example usage with WRAPV flavor: - - long int result; - bool overflow = INT_MULTIPLY_WRAPV (a, b, &result); - printf ("result is %ld (%s)\n", result, - overflow ? "after overflow" : "no overflow"); - - Restrictions on these macros: - - These macros do not check for all possible numerical problems or - undefined or unspecified behavior: they do not check for division - by zero, for bad shift counts, or for shifting negative numbers. - - These macros may evaluate their arguments zero or multiple times, so the - arguments should not have side effects. - - The WRAPV macros are not constant expressions. They support only - +, binary -, and *. The result type must be signed. - - These macros are tuned for their last argument being a constant. - - Return 1 if the integer expressions A * B, A - B, -A, A * B, A / B, - A % B, and A << B would overflow, respectively. */ - -#define INT_ADD_OVERFLOW(a, b) \ - _GL_BINARY_OP_OVERFLOW (a, b, _GL_ADD_OVERFLOW) -#define INT_SUBTRACT_OVERFLOW(a, b) \ - _GL_BINARY_OP_OVERFLOW (a, b, _GL_SUBTRACT_OVERFLOW) -#if _GL_HAS_BUILTIN_OVERFLOW_P -# define INT_NEGATE_OVERFLOW(a) INT_SUBTRACT_OVERFLOW (0, a) -#else -# define INT_NEGATE_OVERFLOW(a) \ - INT_NEGATE_RANGE_OVERFLOW (a, _GL_INT_MINIMUM (a), _GL_INT_MAXIMUM (a)) -#endif -#define INT_MULTIPLY_OVERFLOW(a, b) \ - _GL_BINARY_OP_OVERFLOW (a, b, _GL_MULTIPLY_OVERFLOW) -#define INT_DIVIDE_OVERFLOW(a, b) \ - _GL_BINARY_OP_OVERFLOW (a, b, _GL_DIVIDE_OVERFLOW) -#define INT_REMAINDER_OVERFLOW(a, b) \ - _GL_BINARY_OP_OVERFLOW (a, b, _GL_REMAINDER_OVERFLOW) -#define INT_LEFT_SHIFT_OVERFLOW(a, b) \ - INT_LEFT_SHIFT_RANGE_OVERFLOW (a, b, \ - _GL_INT_MINIMUM (a), _GL_INT_MAXIMUM (a)) - -/* Return 1 if the expression A B would overflow, - where OP_RESULT_OVERFLOW (A, B, MIN, MAX) does the actual test, - assuming MIN and MAX are the minimum and maximum for the result type. - Arguments should be free of side effects. */ -#define _GL_BINARY_OP_OVERFLOW(a, b, op_result_overflow) \ - op_result_overflow (a, b, \ - _GL_INT_MINIMUM (_GL_INT_CONVERT (a, b)), \ - _GL_INT_MAXIMUM (_GL_INT_CONVERT (a, b))) - -/* Store the low-order bits of A + B, A - B, A * B, respectively, into *R. - Return 1 if the result overflows. See above for restrictions. */ -#define INT_ADD_WRAPV(a, b, r) \ - _GL_INT_OP_WRAPV (a, b, r, +, __builtin_add_overflow, INT_ADD_OVERFLOW) -#define INT_SUBTRACT_WRAPV(a, b, r) \ - _GL_INT_OP_WRAPV (a, b, r, -, __builtin_sub_overflow, INT_SUBTRACT_OVERFLOW) -#define INT_MULTIPLY_WRAPV(a, b, r) \ - _GL_INT_OP_WRAPV (a, b, r, *, __builtin_mul_overflow, INT_MULTIPLY_OVERFLOW) - -/* Nonzero if this compiler has GCC bug 68193 or Clang bug 25390. See: - https://gcc.gnu.org/bugzilla/show_bug.cgi?id=68193 - https://llvm.org/bugs/show_bug.cgi?id=25390 - For now, assume all versions of GCC-like compilers generate bogus - warnings for _Generic. This matters only for older compilers that - lack __builtin_add_overflow. */ -#if __GNUC__ -# define _GL__GENERIC_BOGUS 1 -#else -# define _GL__GENERIC_BOGUS 0 -#endif - -/* Store the low-order bits of A B into *R, where OP specifies - the operation. BUILTIN is the builtin operation, and OVERFLOW the - overflow predicate. Return 1 if the result overflows. See above - for restrictions. */ -#if _GL_HAS_BUILTIN_OVERFLOW -# define _GL_INT_OP_WRAPV(a, b, r, op, builtin, overflow) builtin (a, b, r) -#elif 201112 <= __STDC_VERSION__ && !_GL__GENERIC_BOGUS -# define _GL_INT_OP_WRAPV(a, b, r, op, builtin, overflow) \ - (_Generic \ - (*(r), \ - signed char: \ - _GL_INT_OP_CALC (a, b, r, op, overflow, unsigned int, \ - signed char, SCHAR_MIN, SCHAR_MAX), \ - short int: \ - _GL_INT_OP_CALC (a, b, r, op, overflow, unsigned int, \ - short int, SHRT_MIN, SHRT_MAX), \ - int: \ - _GL_INT_OP_CALC (a, b, r, op, overflow, unsigned int, \ - int, INT_MIN, INT_MAX), \ - long int: \ - _GL_INT_OP_CALC (a, b, r, op, overflow, unsigned long int, \ - long int, LONG_MIN, LONG_MAX), \ - long long int: \ - _GL_INT_OP_CALC (a, b, r, op, overflow, unsigned long long int, \ - long long int, LLONG_MIN, LLONG_MAX))) -#else -# define _GL_INT_OP_WRAPV(a, b, r, op, builtin, overflow) \ - (sizeof *(r) == sizeof (signed char) \ - ? _GL_INT_OP_CALC (a, b, r, op, overflow, unsigned int, \ - signed char, SCHAR_MIN, SCHAR_MAX) \ - : sizeof *(r) == sizeof (short int) \ - ? _GL_INT_OP_CALC (a, b, r, op, overflow, unsigned int, \ - short int, SHRT_MIN, SHRT_MAX) \ - : sizeof *(r) == sizeof (int) \ - ? _GL_INT_OP_CALC (a, b, r, op, overflow, unsigned int, \ - int, INT_MIN, INT_MAX) \ - : _GL_INT_OP_WRAPV_LONGISH(a, b, r, op, overflow)) -# ifdef LLONG_MAX -# define _GL_INT_OP_WRAPV_LONGISH(a, b, r, op, overflow) \ - (sizeof *(r) == sizeof (long int) \ - ? _GL_INT_OP_CALC (a, b, r, op, overflow, unsigned long int, \ - long int, LONG_MIN, LONG_MAX) \ - : _GL_INT_OP_CALC (a, b, r, op, overflow, unsigned long long int, \ - long long int, LLONG_MIN, LLONG_MAX)) -# else -# define _GL_INT_OP_WRAPV_LONGISH(a, b, r, op, overflow) \ - _GL_INT_OP_CALC (a, b, r, op, overflow, unsigned long int, \ - long int, LONG_MIN, LONG_MAX) -# endif -#endif - -/* Store the low-order bits of A B into *R, where the operation - is given by OP. Use the unsigned type UT for calculation to avoid - overflow problems. *R's type is T, with extrema TMIN and TMAX. - T must be a signed integer type. Return 1 if the result overflows. */ -#define _GL_INT_OP_CALC(a, b, r, op, overflow, ut, t, tmin, tmax) \ - (sizeof ((a) op (b)) < sizeof (t) \ - ? _GL_INT_OP_CALC1 ((t) (a), (t) (b), r, op, overflow, ut, t, tmin, tmax) \ - : _GL_INT_OP_CALC1 (a, b, r, op, overflow, ut, t, tmin, tmax)) -#define _GL_INT_OP_CALC1(a, b, r, op, overflow, ut, t, tmin, tmax) \ - ((overflow (a, b) \ - || (EXPR_SIGNED ((a) op (b)) && ((a) op (b)) < (tmin)) \ - || (tmax) < ((a) op (b))) \ - ? (*(r) = _GL_INT_OP_WRAPV_VIA_UNSIGNED (a, b, op, ut, t), 1) \ - : (*(r) = _GL_INT_OP_WRAPV_VIA_UNSIGNED (a, b, op, ut, t), 0)) - -/* Return the low-order bits of A B, where the operation is given - by OP. Use the unsigned type UT for calculation to avoid undefined - behavior on signed integer overflow, and convert the result to type T. - UT is at least as wide as T and is no narrower than unsigned int, - T is two's complement, and there is no padding or trap representations. - Assume that converting UT to T yields the low-order bits, as is - done in all known two's-complement C compilers. E.g., see: - https://gcc.gnu.org/onlinedocs/gcc/Integers-implementation.html - - According to the C standard, converting UT to T yields an - implementation-defined result or signal for values outside T's - range. However, code that works around this theoretical problem - runs afoul of a compiler bug in Oracle Studio 12.3 x86. See: - https://lists.gnu.org/r/bug-gnulib/2017-04/msg00049.html - As the compiler bug is real, don't try to work around the - theoretical problem. */ - -#define _GL_INT_OP_WRAPV_VIA_UNSIGNED(a, b, op, ut, t) \ - ((t) ((ut) (a) op (ut) (b))) - -#endif /* _GL_INTPROPS_H */ diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/itold.c b/thirdparty/grub-2.04/grub-core/lib/gnulib/itold.c deleted file mode 100644 index bca01eb56..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/itold.c +++ /dev/null @@ -1,28 +0,0 @@ -/* Replacement for 'int' to 'long double' conversion routine. - Copyright (C) 2011-2019 Free Software Foundation, Inc. - Written by Bruno Haible , 2011. - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . */ - -#include - -/* Specification. */ -#include - -void -_Qp_itoq (long double *result, int a) -{ - /* Convert from 'int' to 'double', then from 'double' to 'long double'. */ - *result = (double) a; -} diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/langinfo.in.h b/thirdparty/grub-2.04/grub-core/lib/gnulib/langinfo.in.h deleted file mode 100644 index 6d4063506..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/langinfo.in.h +++ /dev/null @@ -1,222 +0,0 @@ -/* Substitute for and wrapper around . - Copyright (C) 2009-2019 Free Software Foundation, Inc. - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3, or (at your option) - any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, see . */ - -/* - * POSIX for platforms that lack it or have an incomplete one. - * - */ - -#ifndef _@GUARD_PREFIX@_LANGINFO_H - -#if __GNUC__ >= 3 -@PRAGMA_SYSTEM_HEADER@ -#endif -@PRAGMA_COLUMNS@ - -/* The include_next requires a split double-inclusion guard. */ -#if @HAVE_LANGINFO_H@ -# @INCLUDE_NEXT@ @NEXT_LANGINFO_H@ -#endif - -#ifndef _@GUARD_PREFIX@_LANGINFO_H -#define _@GUARD_PREFIX@_LANGINFO_H - - -#if !@HAVE_LANGINFO_H@ - -/* A platform that lacks . */ - -/* Assume that it also lacks and the nl_item type. */ -# if !GNULIB_defined_nl_item -typedef int nl_item; -# define GNULIB_defined_nl_item 1 -# endif - -/* nl_langinfo items of the LC_CTYPE category */ -# define CODESET 10000 -/* nl_langinfo items of the LC_NUMERIC category */ -# define RADIXCHAR 10001 -# define DECIMAL_POINT RADIXCHAR -# define THOUSEP 10002 -# define THOUSANDS_SEP THOUSEP -# define GROUPING 10114 -/* nl_langinfo items of the LC_TIME category */ -# define D_T_FMT 10003 -# define D_FMT 10004 -# define T_FMT 10005 -# define T_FMT_AMPM 10006 -# define AM_STR 10007 -# define PM_STR 10008 -# define DAY_1 10009 -# define DAY_2 (DAY_1 + 1) -# define DAY_3 (DAY_1 + 2) -# define DAY_4 (DAY_1 + 3) -# define DAY_5 (DAY_1 + 4) -# define DAY_6 (DAY_1 + 5) -# define DAY_7 (DAY_1 + 6) -# define ABDAY_1 10016 -# define ABDAY_2 (ABDAY_1 + 1) -# define ABDAY_3 (ABDAY_1 + 2) -# define ABDAY_4 (ABDAY_1 + 3) -# define ABDAY_5 (ABDAY_1 + 4) -# define ABDAY_6 (ABDAY_1 + 5) -# define ABDAY_7 (ABDAY_1 + 6) -# define MON_1 10023 -# define MON_2 (MON_1 + 1) -# define MON_3 (MON_1 + 2) -# define MON_4 (MON_1 + 3) -# define MON_5 (MON_1 + 4) -# define MON_6 (MON_1 + 5) -# define MON_7 (MON_1 + 6) -# define MON_8 (MON_1 + 7) -# define MON_9 (MON_1 + 8) -# define MON_10 (MON_1 + 9) -# define MON_11 (MON_1 + 10) -# define MON_12 (MON_1 + 11) -# define ALTMON_1 10200 -# define ALTMON_2 (ALTMON_1 + 1) -# define ALTMON_3 (ALTMON_1 + 2) -# define ALTMON_4 (ALTMON_1 + 3) -# define ALTMON_5 (ALTMON_1 + 4) -# define ALTMON_6 (ALTMON_1 + 5) -# define ALTMON_7 (ALTMON_1 + 6) -# define ALTMON_8 (ALTMON_1 + 7) -# define ALTMON_9 (ALTMON_1 + 8) -# define ALTMON_10 (ALTMON_1 + 9) -# define ALTMON_11 (ALTMON_1 + 10) -# define ALTMON_12 (ALTMON_1 + 11) -# define ABMON_1 10035 -# define ABMON_2 (ABMON_1 + 1) -# define ABMON_3 (ABMON_1 + 2) -# define ABMON_4 (ABMON_1 + 3) -# define ABMON_5 (ABMON_1 + 4) -# define ABMON_6 (ABMON_1 + 5) -# define ABMON_7 (ABMON_1 + 6) -# define ABMON_8 (ABMON_1 + 7) -# define ABMON_9 (ABMON_1 + 8) -# define ABMON_10 (ABMON_1 + 9) -# define ABMON_11 (ABMON_1 + 10) -# define ABMON_12 (ABMON_1 + 11) -# define ERA 10047 -# define ERA_D_FMT 10048 -# define ERA_D_T_FMT 10049 -# define ERA_T_FMT 10050 -# define ALT_DIGITS 10051 -/* nl_langinfo items of the LC_MONETARY category */ -# define CRNCYSTR 10052 -# define CURRENCY_SYMBOL CRNCYSTR -# define INT_CURR_SYMBOL 10100 -# define MON_DECIMAL_POINT 10101 -# define MON_THOUSANDS_SEP 10102 -# define MON_GROUPING 10103 -# define POSITIVE_SIGN 10104 -# define NEGATIVE_SIGN 10105 -# define FRAC_DIGITS 10106 -# define INT_FRAC_DIGITS 10107 -# define P_CS_PRECEDES 10108 -# define N_CS_PRECEDES 10109 -# define P_SEP_BY_SPACE 10110 -# define N_SEP_BY_SPACE 10111 -# define P_SIGN_POSN 10112 -# define N_SIGN_POSN 10113 -/* nl_langinfo items of the LC_MESSAGES category */ -# define YESEXPR 10053 -# define NOEXPR 10054 - -#else - -/* A platform that has . */ - -# if !@HAVE_LANGINFO_CODESET@ -# define CODESET 10000 -# define GNULIB_defined_CODESET 1 -# endif - -# if !@HAVE_LANGINFO_T_FMT_AMPM@ -# define T_FMT_AMPM 10006 -# define GNULIB_defined_T_FMT_AMPM 1 -# endif - -# if !@HAVE_LANGINFO_ALTMON@ -# define ALTMON_1 10200 -# define ALTMON_2 (ALTMON_1 + 1) -# define ALTMON_3 (ALTMON_1 + 2) -# define ALTMON_4 (ALTMON_1 + 3) -# define ALTMON_5 (ALTMON_1 + 4) -# define ALTMON_6 (ALTMON_1 + 5) -# define ALTMON_7 (ALTMON_1 + 6) -# define ALTMON_8 (ALTMON_1 + 7) -# define ALTMON_9 (ALTMON_1 + 8) -# define ALTMON_10 (ALTMON_1 + 9) -# define ALTMON_11 (ALTMON_1 + 10) -# define ALTMON_12 (ALTMON_1 + 11) -# define GNULIB_defined_ALTMON 1 -# endif - -# if !@HAVE_LANGINFO_ERA@ -# define ERA 10047 -# define ERA_D_FMT 10048 -# define ERA_D_T_FMT 10049 -# define ERA_T_FMT 10050 -# define ALT_DIGITS 10051 -# define GNULIB_defined_ERA 1 -# endif - -# if !@HAVE_LANGINFO_YESEXPR@ -# define YESEXPR 10053 -# define NOEXPR 10054 -# define GNULIB_defined_YESEXPR 1 -# endif - -#endif - -/* The definitions of _GL_FUNCDECL_RPL etc. are copied here. */ - -/* The definition of _GL_WARN_ON_USE is copied here. */ - -/* Declare overridden functions. */ - - -/* Return a piece of locale dependent information. - Note: The difference between nl_langinfo (CODESET) and locale_charset () - is that the latter normalizes the encoding names to GNU conventions. */ - -#if @GNULIB_NL_LANGINFO@ -# if @REPLACE_NL_LANGINFO@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# undef nl_langinfo -# define nl_langinfo rpl_nl_langinfo -# endif -_GL_FUNCDECL_RPL (nl_langinfo, char *, (nl_item item)); -_GL_CXXALIAS_RPL (nl_langinfo, char *, (nl_item item)); -# else -# if !@HAVE_NL_LANGINFO@ -_GL_FUNCDECL_SYS (nl_langinfo, char *, (nl_item item)); -# endif -_GL_CXXALIAS_SYS (nl_langinfo, char *, (nl_item item)); -# endif -_GL_CXXALIASWARN (nl_langinfo); -#elif defined GNULIB_POSIXCHECK -# undef nl_langinfo -# if HAVE_RAW_DECL_NL_LANGINFO -_GL_WARN_ON_USE (nl_langinfo, "nl_langinfo is not portable - " - "use gnulib module nl_langinfo for portability"); -# endif -#endif - - -#endif /* _@GUARD_PREFIX@_LANGINFO_H */ -#endif /* _@GUARD_PREFIX@_LANGINFO_H */ diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/libc-config.h b/thirdparty/grub-2.04/grub-core/lib/gnulib/libc-config.h deleted file mode 100644 index 57c69661d..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/libc-config.h +++ /dev/null @@ -1,174 +0,0 @@ -/* System definitions for code taken from the GNU C Library - - Copyright 2017-2019 Free Software Foundation, Inc. - - This program is free software; you can redistribute it and/or - modify it under the terms of the GNU General Public - License as published by the Free Software Foundation; either - version 3 of the License, or (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - General Public License for more details. - - You should have received a copy of the GNU General Public - License along with this program; if not, see - . */ - -/* Written by Paul Eggert. */ - -/* This is intended to be a good-enough substitute for glibc system - macros like those defined in , so that Gnulib code - shared with glibc can do this as the first #include: - - #ifndef _LIBC - # include - #endif - - When compiled as part of glibc this is a no-op; when compiled as - part of Gnulib this includes Gnulib's and defines macros - that glibc library code would normally assume. */ - -#include - -/* On glibc this includes and and #defines - _FEATURES_H, __WORDSIZE, and __set_errno. On FreeBSD 11 it - includes which defines __nonnull. Elsewhere it - is harmless. */ -#include - -/* From glibc . */ -#ifndef __set_errno -# define __set_errno(val) (errno = (val)) -#endif - -/* From glibc . */ - -#ifndef __GNUC_PREREQ -# if defined __GNUC__ && defined __GNUC_MINOR__ -# define __GNUC_PREREQ(maj, min) ((maj) < __GNUC__ + ((min) <= __GNUC_MINOR__)) -# else -# define __GNUC_PREREQ(maj, min) 0 -# endif -#endif - -#ifndef __glibc_clang_prereq -# if defined __clang_major__ && defined __clang_minor__ -# define __glibc_clang_prereq(maj, min) \ - ((maj) < __clang_major__ + ((min) <= __clang_minor__)) -# else -# define __glibc_clang_prereq(maj, min) 0 -# endif -#endif - - -/* Prepare to include , which is our copy of glibc - . */ - -/* Define _FEATURES_H so that does not include . */ -#ifndef _FEATURES_H -# define _FEATURES_H 1 -#endif -/* Define __WORDSIZE so that does not attempt to include - nonexistent files. Make it a syntax error, since Gnulib does not - use __WORDSIZE now, and if Gnulib uses it later the syntax error - will let us know that __WORDSIZE needs configuring. */ -#ifndef __WORDSIZE -# define __WORDSIZE %%% -#endif -/* Undef the macros unconditionally defined by our copy of glibc - , so that they do not clash with any system-defined - versions. */ -#undef _SYS_CDEFS_H -#undef __ASMNAME -#undef __ASMNAME2 -#undef __BEGIN_DECLS -#undef __CONCAT -#undef __END_DECLS -#undef __HAVE_GENERIC_SELECTION -#undef __LDBL_COMPAT -#undef __LDBL_REDIR -#undef __LDBL_REDIR1 -#undef __LDBL_REDIR1_DECL -#undef __LDBL_REDIR1_NTH -#undef __LDBL_REDIR_DECL -#undef __LDBL_REDIR_NTH -#undef __LEAF -#undef __LEAF_ATTR -#undef __NTH -#undef __NTHNL -#undef __P -#undef __PMT -#undef __REDIRECT -#undef __REDIRECT_LDBL -#undef __REDIRECT_NTH -#undef __REDIRECT_NTHNL -#undef __REDIRECT_NTH_LDBL -#undef __STRING -#undef __THROW -#undef __THROWNL -#undef __always_inline -#undef __attribute__ -#undef __attribute_alloc_size__ -#undef __attribute_artificial__ -#undef __attribute_const__ -#undef __attribute_deprecated__ -#undef __attribute_deprecated_msg__ -#undef __attribute_format_arg__ -#undef __attribute_format_strfmon__ -#undef __attribute_malloc__ -#undef __attribute_noinline__ -#undef __attribute_nonstring__ -#undef __attribute_pure__ -#undef __attribute_used__ -#undef __attribute_warn_unused_result__ -#undef __bos -#undef __bos0 -#undef __errordecl -#undef __extension__ -#undef __extern_always_inline -#undef __extern_inline -#undef __flexarr -#undef __fortify_function -#undef __glibc_c99_flexarr_available -#undef __glibc_clang_has_extension -#undef __glibc_likely -#undef __glibc_macro_warning -#undef __glibc_macro_warning1 -#undef __glibc_unlikely -#undef __inline -#undef __ptr_t -#undef __restrict -#undef __restrict_arr -#undef __va_arg_pack -#undef __va_arg_pack_len -#undef __warnattr -#undef __warndecl - -/* Include our copy of glibc . */ -#include - -/* __inline is too pessimistic for non-GCC. */ -#undef __inline -#ifndef HAVE___INLINE -# if 199901 <= __STDC_VERSION__ || defined inline -# define __inline inline -# else -# define __inline -# endif -#endif - - -/* A substitute for glibc , good enough for Gnulib. */ -#define attribute_hidden -#define libc_hidden_proto(name, ...) -#define libc_hidden_def(name) -#define libc_hidden_weak(name) -#define libc_hidden_ver(local, name) -#define strong_alias(name, aliasname) -#define weak_alias(name, aliasname) - -/* A substitute for glibc , good enough for Gnulib. */ -#define SHLIB_COMPAT(lib, introduced, obsoleted) 0 -#define versioned_symbol(lib, local, symbol, version) diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/limits.in.h b/thirdparty/grub-2.04/grub-core/lib/gnulib/limits.in.h deleted file mode 100644 index 39750b38d..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/limits.in.h +++ /dev/null @@ -1,104 +0,0 @@ -/* A GNU-like . - - Copyright 2016-2019 Free Software Foundation, Inc. - - This program is free software; you can redistribute it and/or - modify it under the terms of the GNU General Public License - as published by the Free Software Foundation; either version 3, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, see . */ - -#ifndef _@GUARD_PREFIX@_LIMITS_H - -#if __GNUC__ >= 3 -@PRAGMA_SYSTEM_HEADER@ -#endif -@PRAGMA_COLUMNS@ - -/* The include_next requires a split double-inclusion guard. */ -#@INCLUDE_NEXT@ @NEXT_LIMITS_H@ - -#ifndef _@GUARD_PREFIX@_LIMITS_H -#define _@GUARD_PREFIX@_LIMITS_H - -#ifndef LLONG_MIN -# if defined LONG_LONG_MIN /* HP-UX 11.31 */ -# define LLONG_MIN LONG_LONG_MIN -# elif defined LONGLONG_MIN /* IRIX 6.5 */ -# define LLONG_MIN LONGLONG_MIN -# elif defined __GNUC__ -# define LLONG_MIN (- __LONG_LONG_MAX__ - 1LL) -# endif -#endif -#ifndef LLONG_MAX -# if defined LONG_LONG_MAX /* HP-UX 11.31 */ -# define LLONG_MAX LONG_LONG_MAX -# elif defined LONGLONG_MAX /* IRIX 6.5 */ -# define LLONG_MAX LONGLONG_MAX -# elif defined __GNUC__ -# define LLONG_MAX __LONG_LONG_MAX__ -# endif -#endif -#ifndef ULLONG_MAX -# if defined ULONG_LONG_MAX /* HP-UX 11.31 */ -# define ULLONG_MAX ULONG_LONG_MAX -# elif defined ULONGLONG_MAX /* IRIX 6.5 */ -# define ULLONG_MAX ULONGLONG_MAX -# elif defined __GNUC__ -# define ULLONG_MAX (__LONG_LONG_MAX__ * 2ULL + 1ULL) -# endif -#endif - -/* The number of usable bits in an unsigned or signed integer type - with minimum value MIN and maximum value MAX, as an int expression - suitable in #if. Cover all known practical hosts. This - implementation exploits the fact that MAX is 1 less than a power of - 2, and merely counts the number of 1 bits in MAX; "COBn" means - "count the number of 1 bits in the low-order n bits"). */ -#define _GL_INTEGER_WIDTH(min, max) (((min) < 0) + _GL_COB128 (max)) -#define _GL_COB128(n) (_GL_COB64 ((n) >> 31 >> 31 >> 2) + _GL_COB64 (n)) -#define _GL_COB64(n) (_GL_COB32 ((n) >> 31 >> 1) + _GL_COB32 (n)) -#define _GL_COB32(n) (_GL_COB16 ((n) >> 16) + _GL_COB16 (n)) -#define _GL_COB16(n) (_GL_COB8 ((n) >> 8) + _GL_COB8 (n)) -#define _GL_COB8(n) (_GL_COB4 ((n) >> 4) + _GL_COB4 (n)) -#define _GL_COB4(n) (!!((n) & 8) + !!((n) & 4) + !!((n) & 2) + !!((n) & 1)) - -#ifndef WORD_BIT -/* Assume 'int' is 32 bits wide. */ -# define WORD_BIT 32 -#endif -#ifndef LONG_BIT -/* Assume 'long' is 32 or 64 bits wide. */ -# if LONG_MAX == INT_MAX -# define LONG_BIT 32 -# else -# define LONG_BIT 64 -# endif -#endif - -/* Macros specified by ISO/IEC TS 18661-1:2014. */ - -#if (! defined ULLONG_WIDTH \ - && (defined _GNU_SOURCE || defined __STDC_WANT_IEC_60559_BFP_EXT__)) -# define CHAR_WIDTH _GL_INTEGER_WIDTH (CHAR_MIN, CHAR_MAX) -# define SCHAR_WIDTH _GL_INTEGER_WIDTH (SCHAR_MIN, SCHAR_MAX) -# define UCHAR_WIDTH _GL_INTEGER_WIDTH (0, UCHAR_MAX) -# define SHRT_WIDTH _GL_INTEGER_WIDTH (SHRT_MIN, SHRT_MAX) -# define USHRT_WIDTH _GL_INTEGER_WIDTH (0, USHRT_MAX) -# define INT_WIDTH _GL_INTEGER_WIDTH (INT_MIN, INT_MAX) -# define UINT_WIDTH _GL_INTEGER_WIDTH (0, UINT_MAX) -# define LONG_WIDTH _GL_INTEGER_WIDTH (LONG_MIN, LONG_MAX) -# define ULONG_WIDTH _GL_INTEGER_WIDTH (0, ULONG_MAX) -# define LLONG_WIDTH _GL_INTEGER_WIDTH (LLONG_MIN, LLONG_MAX) -# define ULLONG_WIDTH _GL_INTEGER_WIDTH (0, ULLONG_MAX) -#endif /* !ULLONG_WIDTH && (_GNU_SOURCE || __STDC_WANT_IEC_60559_BFP_EXT__) */ - -#endif /* _@GUARD_PREFIX@_LIMITS_H */ -#endif /* _@GUARD_PREFIX@_LIMITS_H */ diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/localcharset.c b/thirdparty/grub-2.04/grub-core/lib/gnulib/localcharset.c deleted file mode 100644 index 38e27e6f3..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/localcharset.c +++ /dev/null @@ -1,996 +0,0 @@ -/* Determine a canonical name for the current locale's character encoding. - - Copyright (C) 2000-2006, 2008-2019 Free Software Foundation, Inc. - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3, or (at your option) - any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License along - with this program; if not, see . */ - -/* Written by Bruno Haible . */ - -#include - -/* Specification. */ -#include "localcharset.h" - -#include -#include -#include -#include - -#if defined __APPLE__ && defined __MACH__ && HAVE_LANGINFO_CODESET -# define DARWIN7 /* Darwin 7 or newer, i.e. Mac OS X 10.3 or newer */ -#endif - -#if defined _WIN32 && !defined __CYGWIN__ -# define WINDOWS_NATIVE -# include -#endif - -#if defined __EMX__ -/* Assume EMX program runs on OS/2, even if compiled under DOS. */ -# ifndef OS2 -# define OS2 -# endif -#endif - -#if !defined WINDOWS_NATIVE -# if HAVE_LANGINFO_CODESET -# include -# else -# if 0 /* see comment regarding use of setlocale(), below */ -# include -# endif -# endif -# ifdef __CYGWIN__ -# define WIN32_LEAN_AND_MEAN -# include -# endif -#elif defined WINDOWS_NATIVE -# define WIN32_LEAN_AND_MEAN -# include -#endif -#if defined OS2 -# define INCL_DOS -# include -#endif - -/* For MB_CUR_MAX_L */ -#if defined DARWIN7 -# include -#endif - - -#if HAVE_LANGINFO_CODESET || defined WINDOWS_NATIVE || defined OS2 - -/* On these platforms, we use a mapping from non-canonical encoding name - to GNU canonical encoding name. */ - -/* With glibc-2.1 or newer, we don't need any canonicalization, - because glibc has iconv and both glibc and libiconv support all - GNU canonical names directly. */ -# if !((defined __GNU_LIBRARY__ && __GLIBC__ >= 2) || defined __UCLIBC__) - -struct table_entry -{ - const char alias[11+1]; - const char canonical[11+1]; -}; - -/* Table of platform-dependent mappings, sorted in ascending order. */ -static const struct table_entry alias_table[] = - { -# if defined __FreeBSD__ /* FreeBSD */ - /*{ "ARMSCII-8", "ARMSCII-8" },*/ - { "Big5", "BIG5" }, - { "C", "ASCII" }, - /*{ "CP1131", "CP1131" },*/ - /*{ "CP1251", "CP1251" },*/ - /*{ "CP866", "CP866" },*/ - /*{ "GB18030", "GB18030" },*/ - /*{ "GB2312", "GB2312" },*/ - /*{ "GBK", "GBK" },*/ - /*{ "ISCII-DEV", "?" },*/ - { "ISO8859-1", "ISO-8859-1" }, - { "ISO8859-13", "ISO-8859-13" }, - { "ISO8859-15", "ISO-8859-15" }, - { "ISO8859-2", "ISO-8859-2" }, - { "ISO8859-5", "ISO-8859-5" }, - { "ISO8859-7", "ISO-8859-7" }, - { "ISO8859-9", "ISO-8859-9" }, - /*{ "KOI8-R", "KOI8-R" },*/ - /*{ "KOI8-U", "KOI8-U" },*/ - { "SJIS", "SHIFT_JIS" }, - { "US-ASCII", "ASCII" }, - { "eucCN", "GB2312" }, - { "eucJP", "EUC-JP" }, - { "eucKR", "EUC-KR" } -# define alias_table_defined -# endif -# if defined __NetBSD__ /* NetBSD */ - { "646", "ASCII" }, - /*{ "ARMSCII-8", "ARMSCII-8" },*/ - /*{ "BIG5", "BIG5" },*/ - { "Big5-HKSCS", "BIG5-HKSCS" }, - /*{ "CP1251", "CP1251" },*/ - /*{ "CP866", "CP866" },*/ - /*{ "GB18030", "GB18030" },*/ - /*{ "GB2312", "GB2312" },*/ - { "ISO8859-1", "ISO-8859-1" }, - { "ISO8859-13", "ISO-8859-13" }, - { "ISO8859-15", "ISO-8859-15" }, - { "ISO8859-2", "ISO-8859-2" }, - { "ISO8859-4", "ISO-8859-4" }, - { "ISO8859-5", "ISO-8859-5" }, - { "ISO8859-7", "ISO-8859-7" }, - /*{ "KOI8-R", "KOI8-R" },*/ - /*{ "KOI8-U", "KOI8-U" },*/ - /*{ "PT154", "PT154" },*/ - { "SJIS", "SHIFT_JIS" }, - { "eucCN", "GB2312" }, - { "eucJP", "EUC-JP" }, - { "eucKR", "EUC-KR" }, - { "eucTW", "EUC-TW" } -# define alias_table_defined -# endif -# if defined __OpenBSD__ /* OpenBSD */ - { "646", "ASCII" }, - { "ISO8859-1", "ISO-8859-1" }, - { "ISO8859-13", "ISO-8859-13" }, - { "ISO8859-15", "ISO-8859-15" }, - { "ISO8859-2", "ISO-8859-2" }, - { "ISO8859-4", "ISO-8859-4" }, - { "ISO8859-5", "ISO-8859-5" }, - { "ISO8859-7", "ISO-8859-7" } -# define alias_table_defined -# endif -# if defined __APPLE__ && defined __MACH__ /* Mac OS X */ - /* Darwin 7.5 has nl_langinfo(CODESET), but sometimes its value is - useless: - - It returns the empty string when LANG is set to a locale of the - form ll_CC, although ll_CC/LC_CTYPE is a symlink to an UTF-8 - LC_CTYPE file. - - The environment variables LANG, LC_CTYPE, LC_ALL are not set by - the system; nl_langinfo(CODESET) returns "US-ASCII" in this case. - - The documentation says: - "... all code that calls BSD system routines should ensure - that the const *char parameters of these routines are in UTF-8 - encoding. All BSD system functions expect their string - parameters to be in UTF-8 encoding and nothing else." - It also says - "An additional caveat is that string parameters for files, - paths, and other file-system entities must be in canonical - UTF-8. In a canonical UTF-8 Unicode string, all decomposable - characters are decomposed ..." - but this is not true: You can pass non-decomposed UTF-8 strings - to file system functions, and it is the OS which will convert - them to decomposed UTF-8 before accessing the file system. - - The Apple Terminal application displays UTF-8 by default. - - However, other applications are free to use different encodings: - - xterm uses ISO-8859-1 by default. - - TextEdit uses MacRoman by default. - We prefer UTF-8 over decomposed UTF-8-MAC because one should - minimize the use of decomposed Unicode. Unfortunately, through the - Darwin file system, decomposed UTF-8 strings are leaked into user - space nevertheless. - Then there are also the locales with encodings other than US-ASCII - and UTF-8. These locales can be occasionally useful to users (e.g. - when grepping through ISO-8859-1 encoded text files), when all their - file names are in US-ASCII. - */ - { "ARMSCII-8", "ARMSCII-8" }, - { "Big5", "BIG5" }, - { "Big5HKSCS", "BIG5-HKSCS" }, - { "CP1131", "CP1131" }, - { "CP1251", "CP1251" }, - { "CP866", "CP866" }, - { "CP949", "CP949" }, - { "GB18030", "GB18030" }, - { "GB2312", "GB2312" }, - { "GBK", "GBK" }, - /*{ "ISCII-DEV", "?" },*/ - { "ISO8859-1", "ISO-8859-1" }, - { "ISO8859-13", "ISO-8859-13" }, - { "ISO8859-15", "ISO-8859-15" }, - { "ISO8859-2", "ISO-8859-2" }, - { "ISO8859-4", "ISO-8859-4" }, - { "ISO8859-5", "ISO-8859-5" }, - { "ISO8859-7", "ISO-8859-7" }, - { "ISO8859-9", "ISO-8859-9" }, - { "KOI8-R", "KOI8-R" }, - { "KOI8-U", "KOI8-U" }, - { "PT154", "PT154" }, - { "SJIS", "SHIFT_JIS" }, - { "eucCN", "GB2312" }, - { "eucJP", "EUC-JP" }, - { "eucKR", "EUC-KR" } -# define alias_table_defined -# endif -# if defined _AIX /* AIX */ - /*{ "GBK", "GBK" },*/ - { "IBM-1046", "CP1046" }, - { "IBM-1124", "CP1124" }, - { "IBM-1129", "CP1129" }, - { "IBM-1252", "CP1252" }, - { "IBM-850", "CP850" }, - { "IBM-856", "CP856" }, - { "IBM-921", "ISO-8859-13" }, - { "IBM-922", "CP922" }, - { "IBM-932", "CP932" }, - { "IBM-943", "CP943" }, - { "IBM-eucCN", "GB2312" }, - { "IBM-eucJP", "EUC-JP" }, - { "IBM-eucKR", "EUC-KR" }, - { "IBM-eucTW", "EUC-TW" }, - { "ISO8859-1", "ISO-8859-1" }, - { "ISO8859-15", "ISO-8859-15" }, - { "ISO8859-2", "ISO-8859-2" }, - { "ISO8859-5", "ISO-8859-5" }, - { "ISO8859-6", "ISO-8859-6" }, - { "ISO8859-7", "ISO-8859-7" }, - { "ISO8859-8", "ISO-8859-8" }, - { "ISO8859-9", "ISO-8859-9" }, - { "TIS-620", "TIS-620" }, - /*{ "UTF-8", "UTF-8" },*/ - { "big5", "BIG5" } -# define alias_table_defined -# endif -# if defined __hpux /* HP-UX */ - { "SJIS", "SHIFT_JIS" }, - { "arabic8", "HP-ARABIC8" }, - { "big5", "BIG5" }, - { "cp1251", "CP1251" }, - { "eucJP", "EUC-JP" }, - { "eucKR", "EUC-KR" }, - { "eucTW", "EUC-TW" }, - { "gb18030", "GB18030" }, - { "greek8", "HP-GREEK8" }, - { "hebrew8", "HP-HEBREW8" }, - { "hkbig5", "BIG5-HKSCS" }, - { "hp15CN", "GB2312" }, - { "iso88591", "ISO-8859-1" }, - { "iso885913", "ISO-8859-13" }, - { "iso885915", "ISO-8859-15" }, - { "iso88592", "ISO-8859-2" }, - { "iso88594", "ISO-8859-4" }, - { "iso88595", "ISO-8859-5" }, - { "iso88596", "ISO-8859-6" }, - { "iso88597", "ISO-8859-7" }, - { "iso88598", "ISO-8859-8" }, - { "iso88599", "ISO-8859-9" }, - { "kana8", "HP-KANA8" }, - { "koi8r", "KOI8-R" }, - { "roman8", "HP-ROMAN8" }, - { "tis620", "TIS-620" }, - { "turkish8", "HP-TURKISH8" }, - { "utf8", "UTF-8" } -# define alias_table_defined -# endif -# if defined __sgi /* IRIX */ - { "ISO8859-1", "ISO-8859-1" }, - { "ISO8859-15", "ISO-8859-15" }, - { "ISO8859-2", "ISO-8859-2" }, - { "ISO8859-5", "ISO-8859-5" }, - { "ISO8859-7", "ISO-8859-7" }, - { "ISO8859-9", "ISO-8859-9" }, - { "eucCN", "GB2312" }, - { "eucJP", "EUC-JP" }, - { "eucKR", "EUC-KR" }, - { "eucTW", "EUC-TW" } -# define alias_table_defined -# endif -# if defined __osf__ /* OSF/1 */ - /*{ "GBK", "GBK" },*/ - { "ISO8859-1", "ISO-8859-1" }, - { "ISO8859-15", "ISO-8859-15" }, - { "ISO8859-2", "ISO-8859-2" }, - { "ISO8859-4", "ISO-8859-4" }, - { "ISO8859-5", "ISO-8859-5" }, - { "ISO8859-7", "ISO-8859-7" }, - { "ISO8859-8", "ISO-8859-8" }, - { "ISO8859-9", "ISO-8859-9" }, - { "KSC5601", "CP949" }, - { "SJIS", "SHIFT_JIS" }, - { "TACTIS", "TIS-620" }, - /*{ "UTF-8", "UTF-8" },*/ - { "big5", "BIG5" }, - { "cp850", "CP850" }, - { "dechanyu", "DEC-HANYU" }, - { "dechanzi", "GB2312" }, - { "deckanji", "DEC-KANJI" }, - { "deckorean", "EUC-KR" }, - { "eucJP", "EUC-JP" }, - { "eucKR", "EUC-KR" }, - { "eucTW", "EUC-TW" }, - { "sdeckanji", "EUC-JP" } -# define alias_table_defined -# endif -# if defined __sun /* Solaris */ - { "5601", "EUC-KR" }, - { "646", "ASCII" }, - /*{ "BIG5", "BIG5" },*/ - { "Big5-HKSCS", "BIG5-HKSCS" }, - { "GB18030", "GB18030" }, - /*{ "GBK", "GBK" },*/ - { "ISO8859-1", "ISO-8859-1" }, - { "ISO8859-11", "TIS-620" }, - { "ISO8859-13", "ISO-8859-13" }, - { "ISO8859-15", "ISO-8859-15" }, - { "ISO8859-2", "ISO-8859-2" }, - { "ISO8859-3", "ISO-8859-3" }, - { "ISO8859-4", "ISO-8859-4" }, - { "ISO8859-5", "ISO-8859-5" }, - { "ISO8859-6", "ISO-8859-6" }, - { "ISO8859-7", "ISO-8859-7" }, - { "ISO8859-8", "ISO-8859-8" }, - { "ISO8859-9", "ISO-8859-9" }, - { "PCK", "SHIFT_JIS" }, - { "TIS620.2533", "TIS-620" }, - /*{ "UTF-8", "UTF-8" },*/ - { "ansi-1251", "CP1251" }, - { "cns11643", "EUC-TW" }, - { "eucJP", "EUC-JP" }, - { "gb2312", "GB2312" }, - { "koi8-r", "KOI8-R" } -# define alias_table_defined -# endif -# if defined __minix /* Minix */ - { "646", "ASCII" } -# define alias_table_defined -# endif -# if defined WINDOWS_NATIVE || defined __CYGWIN__ /* Windows */ - { "CP1361", "JOHAB" }, - { "CP20127", "ASCII" }, - { "CP20866", "KOI8-R" }, - { "CP20936", "GB2312" }, - { "CP21866", "KOI8-RU" }, - { "CP28591", "ISO-8859-1" }, - { "CP28592", "ISO-8859-2" }, - { "CP28593", "ISO-8859-3" }, - { "CP28594", "ISO-8859-4" }, - { "CP28595", "ISO-8859-5" }, - { "CP28596", "ISO-8859-6" }, - { "CP28597", "ISO-8859-7" }, - { "CP28598", "ISO-8859-8" }, - { "CP28599", "ISO-8859-9" }, - { "CP28605", "ISO-8859-15" }, - { "CP38598", "ISO-8859-8" }, - { "CP51932", "EUC-JP" }, - { "CP51936", "GB2312" }, - { "CP51949", "EUC-KR" }, - { "CP51950", "EUC-TW" }, - { "CP54936", "GB18030" }, - { "CP65001", "UTF-8" }, - { "CP936", "GBK" } -# define alias_table_defined -# endif -# if defined OS2 /* OS/2 */ - /* The list of encodings is taken from "List of OS/2 Codepages" - by Alex Taylor: - . - See also "IBM Globalization - Code page identifiers": - . */ - { "CP1089", "ISO-8859-6" }, - { "CP1208", "UTF-8" }, - { "CP1381", "GB2312" }, - { "CP1386", "GBK" }, - { "CP3372", "EUC-JP" }, - { "CP813", "ISO-8859-7" }, - { "CP819", "ISO-8859-1" }, - { "CP878", "KOI8-R" }, - { "CP912", "ISO-8859-2" }, - { "CP913", "ISO-8859-3" }, - { "CP914", "ISO-8859-4" }, - { "CP915", "ISO-8859-5" }, - { "CP916", "ISO-8859-8" }, - { "CP920", "ISO-8859-9" }, - { "CP921", "ISO-8859-13" }, - { "CP923", "ISO-8859-15" }, - { "CP954", "EUC-JP" }, - { "CP964", "EUC-TW" }, - { "CP970", "EUC-KR" } -# define alias_table_defined -# endif -# if defined VMS /* OpenVMS */ - /* The list of encodings is taken from the OpenVMS 7.3-1 documentation - "Compaq C Run-Time Library Reference Manual for OpenVMS systems" - section 10.7 "Handling Different Character Sets". */ - { "DECHANYU", "DEC-HANYU" }, - { "DECHANZI", "GB2312" }, - { "DECKANJI", "DEC-KANJI" }, - { "DECKOREAN", "EUC-KR" }, - { "ISO8859-1", "ISO-8859-1" }, - { "ISO8859-2", "ISO-8859-2" }, - { "ISO8859-5", "ISO-8859-5" }, - { "ISO8859-7", "ISO-8859-7" }, - { "ISO8859-8", "ISO-8859-8" }, - { "ISO8859-9", "ISO-8859-9" }, - { "SDECKANJI", "EUC-JP" }, - { "SJIS", "SHIFT_JIS" }, - { "eucJP", "EUC-JP" }, - { "eucTW", "EUC-TW" } -# define alias_table_defined -# endif -# ifndef alias_table_defined - /* Just a dummy entry, to avoid a C syntax error. */ - { "", "" } -# endif - }; - -# endif - -#else - -/* On these platforms, we use a mapping from locale name to GNU canonical - encoding name. */ - -struct table_entry -{ - const char locale[17+1]; - const char canonical[11+1]; -}; - -/* Table of platform-dependent mappings, sorted in ascending order. */ -static const struct table_entry locale_table[] = - { -# if defined __FreeBSD__ /* FreeBSD 4.2 */ - { "cs_CZ.ISO_8859-2", "ISO-8859-2" }, - { "da_DK.DIS_8859-15", "ISO-8859-15" }, - { "da_DK.ISO_8859-1", "ISO-8859-1" }, - { "de_AT.DIS_8859-15", "ISO-8859-15" }, - { "de_AT.ISO_8859-1", "ISO-8859-1" }, - { "de_CH.DIS_8859-15", "ISO-8859-15" }, - { "de_CH.ISO_8859-1", "ISO-8859-1" }, - { "de_DE.DIS_8859-15", "ISO-8859-15" }, - { "de_DE.ISO_8859-1", "ISO-8859-1" }, - { "en_AU.DIS_8859-15", "ISO-8859-15" }, - { "en_AU.ISO_8859-1", "ISO-8859-1" }, - { "en_CA.DIS_8859-15", "ISO-8859-15" }, - { "en_CA.ISO_8859-1", "ISO-8859-1" }, - { "en_GB.DIS_8859-15", "ISO-8859-15" }, - { "en_GB.ISO_8859-1", "ISO-8859-1" }, - { "en_US.DIS_8859-15", "ISO-8859-15" }, - { "en_US.ISO_8859-1", "ISO-8859-1" }, - { "es_ES.DIS_8859-15", "ISO-8859-15" }, - { "es_ES.ISO_8859-1", "ISO-8859-1" }, - { "fi_FI.DIS_8859-15", "ISO-8859-15" }, - { "fi_FI.ISO_8859-1", "ISO-8859-1" }, - { "fr_BE.DIS_8859-15", "ISO-8859-15" }, - { "fr_BE.ISO_8859-1", "ISO-8859-1" }, - { "fr_CA.DIS_8859-15", "ISO-8859-15" }, - { "fr_CA.ISO_8859-1", "ISO-8859-1" }, - { "fr_CH.DIS_8859-15", "ISO-8859-15" }, - { "fr_CH.ISO_8859-1", "ISO-8859-1" }, - { "fr_FR.DIS_8859-15", "ISO-8859-15" }, - { "fr_FR.ISO_8859-1", "ISO-8859-1" }, - { "hr_HR.ISO_8859-2", "ISO-8859-2" }, - { "hu_HU.ISO_8859-2", "ISO-8859-2" }, - { "is_IS.DIS_8859-15", "ISO-8859-15" }, - { "is_IS.ISO_8859-1", "ISO-8859-1" }, - { "it_CH.DIS_8859-15", "ISO-8859-15" }, - { "it_CH.ISO_8859-1", "ISO-8859-1" }, - { "it_IT.DIS_8859-15", "ISO-8859-15" }, - { "it_IT.ISO_8859-1", "ISO-8859-1" }, - { "ja_JP.EUC", "EUC-JP" }, - { "ja_JP.SJIS", "SHIFT_JIS" }, - { "ja_JP.Shift_JIS", "SHIFT_JIS" }, - { "ko_KR.EUC", "EUC-KR" }, - { "la_LN.ASCII", "ASCII" }, - { "la_LN.DIS_8859-15", "ISO-8859-15" }, - { "la_LN.ISO_8859-1", "ISO-8859-1" }, - { "la_LN.ISO_8859-2", "ISO-8859-2" }, - { "la_LN.ISO_8859-4", "ISO-8859-4" }, - { "lt_LN.ASCII", "ASCII" }, - { "lt_LN.DIS_8859-15", "ISO-8859-15" }, - { "lt_LN.ISO_8859-1", "ISO-8859-1" }, - { "lt_LN.ISO_8859-2", "ISO-8859-2" }, - { "lt_LT.ISO_8859-4", "ISO-8859-4" }, - { "nl_BE.DIS_8859-15", "ISO-8859-15" }, - { "nl_BE.ISO_8859-1", "ISO-8859-1" }, - { "nl_NL.DIS_8859-15", "ISO-8859-15" }, - { "nl_NL.ISO_8859-1", "ISO-8859-1" }, - { "no_NO.DIS_8859-15", "ISO-8859-15" }, - { "no_NO.ISO_8859-1", "ISO-8859-1" }, - { "pl_PL.ISO_8859-2", "ISO-8859-2" }, - { "pt_PT.DIS_8859-15", "ISO-8859-15" }, - { "pt_PT.ISO_8859-1", "ISO-8859-1" }, - { "ru_RU.CP866", "CP866" }, - { "ru_RU.ISO_8859-5", "ISO-8859-5" }, - { "ru_RU.KOI8-R", "KOI8-R" }, - { "ru_SU.CP866", "CP866" }, - { "ru_SU.ISO_8859-5", "ISO-8859-5" }, - { "ru_SU.KOI8-R", "KOI8-R" }, - { "sl_SI.ISO_8859-2", "ISO-8859-2" }, - { "sv_SE.DIS_8859-15", "ISO-8859-15" }, - { "sv_SE.ISO_8859-1", "ISO-8859-1" }, - { "uk_UA.KOI8-U", "KOI8-U" }, - { "zh_CN.EUC", "GB2312" }, - { "zh_TW.BIG5", "BIG5" }, - { "zh_TW.Big5", "BIG5" } -# define locale_table_defined -# endif -# if defined __DJGPP__ /* DOS / DJGPP 2.03 */ - /* The encodings given here may not all be correct. - If you find that the encoding given for your language and - country is not the one your DOS machine actually uses, just - correct it in this file, and send a mail to - Juan Manuel Guerrero - and . */ - { "C", "ASCII" }, - { "ar", "CP864" }, - { "ar_AE", "CP864" }, - { "ar_DZ", "CP864" }, - { "ar_EG", "CP864" }, - { "ar_IQ", "CP864" }, - { "ar_IR", "CP864" }, - { "ar_JO", "CP864" }, - { "ar_KW", "CP864" }, - { "ar_MA", "CP864" }, - { "ar_OM", "CP864" }, - { "ar_QA", "CP864" }, - { "ar_SA", "CP864" }, - { "ar_SY", "CP864" }, - { "be", "CP866" }, - { "be_BE", "CP866" }, - { "bg", "CP866" }, /* not CP855 ?? */ - { "bg_BG", "CP866" }, /* not CP855 ?? */ - { "ca", "CP850" }, - { "ca_ES", "CP850" }, - { "cs", "CP852" }, - { "cs_CZ", "CP852" }, - { "da", "CP865" }, /* not CP850 ?? */ - { "da_DK", "CP865" }, /* not CP850 ?? */ - { "de", "CP850" }, - { "de_AT", "CP850" }, - { "de_CH", "CP850" }, - { "de_DE", "CP850" }, - { "el", "CP869" }, - { "el_GR", "CP869" }, - { "en", "CP850" }, - { "en_AU", "CP850" }, /* not CP437 ?? */ - { "en_CA", "CP850" }, - { "en_GB", "CP850" }, - { "en_NZ", "CP437" }, - { "en_US", "CP437" }, - { "en_ZA", "CP850" }, /* not CP437 ?? */ - { "eo", "CP850" }, - { "eo_EO", "CP850" }, - { "es", "CP850" }, - { "es_AR", "CP850" }, - { "es_BO", "CP850" }, - { "es_CL", "CP850" }, - { "es_CO", "CP850" }, - { "es_CR", "CP850" }, - { "es_CU", "CP850" }, - { "es_DO", "CP850" }, - { "es_EC", "CP850" }, - { "es_ES", "CP850" }, - { "es_GT", "CP850" }, - { "es_HN", "CP850" }, - { "es_MX", "CP850" }, - { "es_NI", "CP850" }, - { "es_PA", "CP850" }, - { "es_PE", "CP850" }, - { "es_PY", "CP850" }, - { "es_SV", "CP850" }, - { "es_UY", "CP850" }, - { "es_VE", "CP850" }, - { "et", "CP850" }, - { "et_EE", "CP850" }, - { "eu", "CP850" }, - { "eu_ES", "CP850" }, - { "fi", "CP850" }, - { "fi_FI", "CP850" }, - { "fr", "CP850" }, - { "fr_BE", "CP850" }, - { "fr_CA", "CP850" }, - { "fr_CH", "CP850" }, - { "fr_FR", "CP850" }, - { "ga", "CP850" }, - { "ga_IE", "CP850" }, - { "gd", "CP850" }, - { "gd_GB", "CP850" }, - { "gl", "CP850" }, - { "gl_ES", "CP850" }, - { "he", "CP862" }, - { "he_IL", "CP862" }, - { "hr", "CP852" }, - { "hr_HR", "CP852" }, - { "hu", "CP852" }, - { "hu_HU", "CP852" }, - { "id", "CP850" }, /* not CP437 ?? */ - { "id_ID", "CP850" }, /* not CP437 ?? */ - { "is", "CP861" }, /* not CP850 ?? */ - { "is_IS", "CP861" }, /* not CP850 ?? */ - { "it", "CP850" }, - { "it_CH", "CP850" }, - { "it_IT", "CP850" }, - { "ja", "CP932" }, - { "ja_JP", "CP932" }, - { "kr", "CP949" }, /* not CP934 ?? */ - { "kr_KR", "CP949" }, /* not CP934 ?? */ - { "lt", "CP775" }, - { "lt_LT", "CP775" }, - { "lv", "CP775" }, - { "lv_LV", "CP775" }, - { "mk", "CP866" }, /* not CP855 ?? */ - { "mk_MK", "CP866" }, /* not CP855 ?? */ - { "mt", "CP850" }, - { "mt_MT", "CP850" }, - { "nb", "CP865" }, /* not CP850 ?? */ - { "nb_NO", "CP865" }, /* not CP850 ?? */ - { "nl", "CP850" }, - { "nl_BE", "CP850" }, - { "nl_NL", "CP850" }, - { "nn", "CP865" }, /* not CP850 ?? */ - { "nn_NO", "CP865" }, /* not CP850 ?? */ - { "no", "CP865" }, /* not CP850 ?? */ - { "no_NO", "CP865" }, /* not CP850 ?? */ - { "pl", "CP852" }, - { "pl_PL", "CP852" }, - { "pt", "CP850" }, - { "pt_BR", "CP850" }, - { "pt_PT", "CP850" }, - { "ro", "CP852" }, - { "ro_RO", "CP852" }, - { "ru", "CP866" }, - { "ru_RU", "CP866" }, - { "sk", "CP852" }, - { "sk_SK", "CP852" }, - { "sl", "CP852" }, - { "sl_SI", "CP852" }, - { "sq", "CP852" }, - { "sq_AL", "CP852" }, - { "sr", "CP852" }, /* CP852 or CP866 or CP855 ?? */ - { "sr_CS", "CP852" }, /* CP852 or CP866 or CP855 ?? */ - { "sr_YU", "CP852" }, /* CP852 or CP866 or CP855 ?? */ - { "sv", "CP850" }, - { "sv_SE", "CP850" }, - { "th", "CP874" }, - { "th_TH", "CP874" }, - { "tr", "CP857" }, - { "tr_TR", "CP857" }, - { "uk", "CP1125" }, - { "uk_UA", "CP1125" }, - { "zh_CN", "GBK" }, - { "zh_TW", "CP950" } /* not CP938 ?? */ -# define locale_table_defined -# endif -# ifndef locale_table_defined - /* Just a dummy entry, to avoid a C syntax error. */ - { "", "" } -# endif - }; - -#endif - - -/* Determine the current locale's character encoding, and canonicalize it - into one of the canonical names listed in localcharset.h. - The result must not be freed; it is statically allocated. - If the canonical name cannot be determined, the result is a non-canonical - name. */ - -#ifdef STATIC -STATIC -#endif -const char * -locale_charset (void) -{ - const char *codeset; - -#if HAVE_LANGINFO_CODESET || defined WINDOWS_NATIVE || defined OS2 - -# if HAVE_LANGINFO_CODESET - - /* Most systems support nl_langinfo (CODESET) nowadays. */ - codeset = nl_langinfo (CODESET); - -# ifdef __CYGWIN__ - /* Cygwin < 1.7 does not have locales. nl_langinfo (CODESET) always - returns "US-ASCII". Return the suffix of the locale name from the - environment variables (if present) or the codepage as a number. */ - if (codeset != NULL && strcmp (codeset, "US-ASCII") == 0) - { - const char *locale; - static char buf[2 + 10 + 1]; - - locale = getenv ("LC_ALL"); - if (locale == NULL || locale[0] == '\0') - { - locale = getenv ("LC_CTYPE"); - if (locale == NULL || locale[0] == '\0') - locale = getenv ("LANG"); - } - if (locale != NULL && locale[0] != '\0') - { - /* If the locale name contains an encoding after the dot, return - it. */ - const char *dot = strchr (locale, '.'); - - if (dot != NULL) - { - const char *modifier; - - dot++; - /* Look for the possible @... trailer and remove it, if any. */ - modifier = strchr (dot, '@'); - if (modifier == NULL) - return dot; - if (modifier - dot < sizeof (buf)) - { - memcpy (buf, dot, modifier - dot); - buf [modifier - dot] = '\0'; - return buf; - } - } - } - - /* The Windows API has a function returning the locale's codepage as a - number: GetACP(). This encoding is used by Cygwin, unless the user - has set the environment variable CYGWIN=codepage:oem (which very few - people do). - Output directed to console windows needs to be converted (to - GetOEMCP() if the console is using a raster font, or to - GetConsoleOutputCP() if it is using a TrueType font). Cygwin does - this conversion transparently (see winsup/cygwin/fhandler_console.cc), - converting to GetConsoleOutputCP(). This leads to correct results, - except when SetConsoleOutputCP has been called and a raster font is - in use. */ - sprintf (buf, "CP%u", GetACP ()); - codeset = buf; - } -# endif - - if (codeset == NULL) - /* The canonical name cannot be determined. */ - codeset = ""; - -# elif defined WINDOWS_NATIVE - - static char buf[2 + 10 + 1]; - - /* The Windows API has a function returning the locale's codepage as - a number, but the value doesn't change according to what the - 'setlocale' call specified. So we use it as a last resort, in - case the string returned by 'setlocale' doesn't specify the - codepage. */ - char *current_locale = setlocale (LC_ALL, NULL); - char *pdot; - - /* If they set different locales for different categories, - 'setlocale' will return a semi-colon separated list of locale - values. To make sure we use the correct one, we choose LC_CTYPE. */ - if (strchr (current_locale, ';')) - current_locale = setlocale (LC_CTYPE, NULL); - - pdot = strrchr (current_locale, '.'); - if (pdot && 2 + strlen (pdot + 1) + 1 <= sizeof (buf)) - sprintf (buf, "CP%s", pdot + 1); - else - { - /* The Windows API has a function returning the locale's codepage as a - number: GetACP(). - When the output goes to a console window, it needs to be provided in - GetOEMCP() encoding if the console is using a raster font, or in - GetConsoleOutputCP() encoding if it is using a TrueType font. - But in GUI programs and for output sent to files and pipes, GetACP() - encoding is the best bet. */ - sprintf (buf, "CP%u", GetACP ()); - } - codeset = buf; - -# elif defined OS2 - - const char *locale; - static char buf[2 + 10 + 1]; - ULONG cp[3]; - ULONG cplen; - - codeset = NULL; - - /* Allow user to override the codeset, as set in the operating system, - with standard language environment variables. */ - locale = getenv ("LC_ALL"); - if (locale == NULL || locale[0] == '\0') - { - locale = getenv ("LC_CTYPE"); - if (locale == NULL || locale[0] == '\0') - locale = getenv ("LANG"); - } - if (locale != NULL && locale[0] != '\0') - { - /* If the locale name contains an encoding after the dot, return it. */ - const char *dot = strchr (locale, '.'); - - if (dot != NULL) - { - const char *modifier; - - dot++; - /* Look for the possible @... trailer and remove it, if any. */ - modifier = strchr (dot, '@'); - if (modifier == NULL) - return dot; - if (modifier - dot < sizeof (buf)) - { - memcpy (buf, dot, modifier - dot); - buf [modifier - dot] = '\0'; - return buf; - } - } - - /* For the POSIX locale, don't use the system's codepage. */ - if (strcmp (locale, "C") == 0 || strcmp (locale, "POSIX") == 0) - codeset = ""; - } - - if (codeset == NULL) - { - /* OS/2 has a function returning the locale's codepage as a number. */ - if (DosQueryCp (sizeof (cp), cp, &cplen)) - codeset = ""; - else - { - sprintf (buf, "CP%u", cp[0]); - codeset = buf; - } - } - -# else - -# error "Add code for other platforms here." - -# endif - - /* Resolve alias. */ - { -# ifdef alias_table_defined - /* On some platforms, UTF-8 locales are the most frequently used ones. - Speed up the common case and slow down the less common cases by - testing for this case first. */ -# if defined __OpenBSD__ || (defined __APPLE__ && defined __MACH__) || defined __sun || defined __CYGWIN__ - if (strcmp (codeset, "UTF-8") == 0) - goto done_table_lookup; - else -# endif - { - const struct table_entry * const table = alias_table; - size_t const table_size = - sizeof (alias_table) / sizeof (struct table_entry); - /* The table is sorted. Perform a binary search. */ - size_t hi = table_size; - size_t lo = 0; - while (lo < hi) - { - /* Invariant: - for i < lo, strcmp (table[i].alias, codeset) < 0, - for i >= hi, strcmp (table[i].alias, codeset) > 0. */ - size_t mid = (hi + lo) >> 1; /* >= lo, < hi */ - int cmp = strcmp (table[mid].alias, codeset); - if (cmp < 0) - lo = mid + 1; - else if (cmp > 0) - hi = mid; - else - { - /* Found an i with - strcmp (table[i].alias, codeset) == 0. */ - codeset = table[mid].canonical; - goto done_table_lookup; - } - } - } - if (0) - done_table_lookup: ; - else -# endif - { - /* Did not find it in the table. */ - /* On Mac OS X, all modern locales use the UTF-8 encoding. - BeOS and Haiku have a single locale, and it has UTF-8 encoding. */ -# if (defined __APPLE__ && defined __MACH__) || defined __BEOS__ || defined __HAIKU__ - codeset = "UTF-8"; -# else - /* Don't return an empty string. GNU libc and GNU libiconv interpret - the empty string as denoting "the locale's character encoding", - thus GNU libiconv would call this function a second time. */ - if (codeset[0] == '\0') - codeset = "ASCII"; -# endif - } - } - -#else - - /* On old systems which lack it, use setlocale or getenv. */ - const char *locale = NULL; - - /* But most old systems don't have a complete set of locales. Some - (like DJGPP) have only the C locale. Therefore we don't use setlocale - here; it would return "C" when it doesn't support the locale name the - user has set. */ -# if 0 - locale = setlocale (LC_CTYPE, NULL); -# endif - if (locale == NULL || locale[0] == '\0') - { - locale = getenv ("LC_ALL"); - if (locale == NULL || locale[0] == '\0') - { - locale = getenv ("LC_CTYPE"); - if (locale == NULL || locale[0] == '\0') - locale = getenv ("LANG"); - if (locale == NULL) - locale = ""; - } - } - - /* Map locale name to canonical encoding name. */ - { -# ifdef locale_table_defined - const struct table_entry * const table = locale_table; - size_t const table_size = - sizeof (locale_table) / sizeof (struct table_entry); - /* The table is sorted. Perform a binary search. */ - size_t hi = table_size; - size_t lo = 0; - while (lo < hi) - { - /* Invariant: - for i < lo, strcmp (table[i].locale, locale) < 0, - for i >= hi, strcmp (table[i].locale, locale) > 0. */ - size_t mid = (hi + lo) >> 1; /* >= lo, < hi */ - int cmp = strcmp (table[mid].locale, locale); - if (cmp < 0) - lo = mid + 1; - else if (cmp > 0) - hi = mid; - else - { - /* Found an i with - strcmp (table[i].locale, locale) == 0. */ - codeset = table[mid].canonical; - goto done_table_lookup; - } - } - if (0) - done_table_lookup: ; - else -# endif - { - /* Did not find it in the table. */ - /* On Mac OS X, all modern locales use the UTF-8 encoding. - BeOS and Haiku have a single locale, and it has UTF-8 encoding. */ -# if (defined __APPLE__ && defined __MACH__) || defined __BEOS__ || defined __HAIKU__ - codeset = "UTF-8"; -# else - /* The canonical name cannot be determined. */ - /* Don't return an empty string. GNU libc and GNU libiconv interpret - the empty string as denoting "the locale's character encoding", - thus GNU libiconv would call this function a second time. */ - codeset = "ASCII"; -# endif - } - } - -#endif - -#ifdef DARWIN7 - /* Mac OS X sets MB_CUR_MAX to 1 when LC_ALL=C, and "UTF-8" - (the default codeset) does not work when MB_CUR_MAX is 1. */ - if (strcmp (codeset, "UTF-8") == 0 && MB_CUR_MAX_L (uselocale (NULL)) <= 1) - codeset = "ASCII"; -#endif - - return codeset; -} diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/localcharset.h b/thirdparty/grub-2.04/grub-core/lib/gnulib/localcharset.h deleted file mode 100644 index 7d0d7711d..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/localcharset.h +++ /dev/null @@ -1,134 +0,0 @@ -/* Determine a canonical name for the current locale's character encoding. - Copyright (C) 2000-2003, 2009-2019 Free Software Foundation, Inc. - This file is part of the GNU CHARSET Library. - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3, or (at your option) - any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License along - with this program; if not, see . */ - -#ifndef _LOCALCHARSET_H -#define _LOCALCHARSET_H - - -#ifdef __cplusplus -extern "C" { -#endif - - -/* Determine the current locale's character encoding, and canonicalize it - into one of the canonical names listed below. - The result must not be freed; it is statically allocated. - If the canonical name cannot be determined, the result is a non-canonical - name. */ -extern const char * locale_charset (void); - -/* About GNU canonical names for character encodings: - - Every canonical name must be supported by GNU libiconv. Support by GNU libc - is also desirable. - - The name is case insensitive. Usually an upper case MIME charset name is - preferred. - - The current list of these GNU canonical names is: - - name MIME? used by which systems - (darwin = Mac OS X, windows = native Windows) - - ASCII, ANSI_X3.4-1968 glibc solaris freebsd netbsd darwin minix cygwin - ISO-8859-1 Y glibc aix hpux irix osf solaris freebsd netbsd openbsd darwin cygwin - ISO-8859-2 Y glibc aix hpux irix osf solaris freebsd netbsd openbsd darwin cygwin - ISO-8859-3 Y glibc solaris cygwin - ISO-8859-4 Y hpux osf solaris freebsd netbsd openbsd darwin - ISO-8859-5 Y glibc aix hpux irix osf solaris freebsd netbsd openbsd darwin cygwin - ISO-8859-6 Y glibc aix hpux solaris cygwin - ISO-8859-7 Y glibc aix hpux irix osf solaris freebsd netbsd openbsd darwin cygwin - ISO-8859-8 Y glibc aix hpux osf solaris cygwin - ISO-8859-9 Y glibc aix hpux irix osf solaris freebsd darwin cygwin - ISO-8859-13 glibc hpux solaris freebsd netbsd openbsd darwin cygwin - ISO-8859-14 glibc cygwin - ISO-8859-15 glibc aix irix osf solaris freebsd netbsd openbsd darwin cygwin - KOI8-R Y glibc hpux solaris freebsd netbsd openbsd darwin - KOI8-U Y glibc freebsd netbsd openbsd darwin cygwin - KOI8-T glibc - CP437 dos - CP775 dos - CP850 aix osf dos - CP852 dos - CP855 dos - CP856 aix - CP857 dos - CP861 dos - CP862 dos - CP864 dos - CP865 dos - CP866 freebsd netbsd openbsd darwin dos - CP869 dos - CP874 windows dos - CP922 aix - CP932 aix cygwin windows dos - CP943 aix - CP949 osf darwin windows dos - CP950 windows dos - CP1046 aix - CP1124 aix - CP1125 dos - CP1129 aix - CP1131 freebsd darwin - CP1250 windows - CP1251 glibc hpux solaris freebsd netbsd openbsd darwin cygwin windows - CP1252 aix windows - CP1253 windows - CP1254 windows - CP1255 glibc windows - CP1256 windows - CP1257 windows - GB2312 Y glibc aix hpux irix solaris freebsd netbsd darwin cygwin - EUC-JP Y glibc aix hpux irix osf solaris freebsd netbsd darwin cygwin - EUC-KR Y glibc aix hpux irix osf solaris freebsd netbsd darwin cygwin - EUC-TW glibc aix hpux irix osf solaris netbsd - BIG5 Y glibc aix hpux osf solaris freebsd netbsd darwin cygwin - BIG5-HKSCS glibc hpux solaris netbsd darwin - GBK glibc aix osf solaris freebsd darwin cygwin windows dos - GB18030 glibc hpux solaris freebsd netbsd darwin - SHIFT_JIS Y hpux osf solaris freebsd netbsd darwin - JOHAB glibc solaris windows - TIS-620 glibc aix hpux osf solaris cygwin - VISCII Y glibc - TCVN5712-1 glibc - ARMSCII-8 glibc freebsd netbsd darwin - GEORGIAN-PS glibc cygwin - PT154 glibc netbsd cygwin - HP-ROMAN8 hpux - HP-ARABIC8 hpux - HP-GREEK8 hpux - HP-HEBREW8 hpux - HP-TURKISH8 hpux - HP-KANA8 hpux - DEC-KANJI osf - DEC-HANYU osf - UTF-8 Y glibc aix hpux osf solaris netbsd darwin cygwin - - Note: Names which are not marked as being a MIME name should not be used in - Internet protocols for information interchange (mail, news, etc.). - - Note: ASCII and ANSI_X3.4-1968 are synonymous canonical names. Applications - must understand both names and treat them as equivalent. - */ - - -#ifdef __cplusplus -} -#endif - - -#endif /* _LOCALCHARSET_H */ diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/locale.in.h b/thirdparty/grub-2.04/grub-core/lib/gnulib/locale.in.h deleted file mode 100644 index 5f33ed17c..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/locale.in.h +++ /dev/null @@ -1,272 +0,0 @@ -/* A POSIX . - Copyright (C) 2007-2019 Free Software Foundation, Inc. - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . */ - -#if __GNUC__ >= 3 -@PRAGMA_SYSTEM_HEADER@ -#endif -@PRAGMA_COLUMNS@ - -#if (defined _WIN32 && !defined __CYGWIN__ && defined __need_locale_t) \ - || defined _GL_ALREADY_INCLUDING_LOCALE_H - -/* Special invocation convention: - - Inside mingw header files, - - To handle Solaris header files (through Solaris 10) when combined - with gettext's libintl.h. */ - -#@INCLUDE_NEXT@ @NEXT_LOCALE_H@ - -#else -/* Normal invocation convention. */ - -#ifndef _@GUARD_PREFIX@_LOCALE_H - -#define _GL_ALREADY_INCLUDING_LOCALE_H - -/* The include_next requires a split double-inclusion guard. */ -#@INCLUDE_NEXT@ @NEXT_LOCALE_H@ - -#undef _GL_ALREADY_INCLUDING_LOCALE_H - -#ifndef _@GUARD_PREFIX@_LOCALE_H -#define _@GUARD_PREFIX@_LOCALE_H - -/* NetBSD 5.0 mis-defines NULL. */ -#include - -/* Mac OS X 10.5 defines the locale_t type in . */ -#if @HAVE_XLOCALE_H@ -# include -#endif - -/* The definitions of _GL_FUNCDECL_RPL etc. are copied here. */ - -/* The definition of _GL_ARG_NONNULL is copied here. */ - -/* The definition of _GL_WARN_ON_USE is copied here. */ - -/* The LC_MESSAGES locale category is specified in POSIX, but not in ISO C. - On systems that don't define it, use the same value as GNU libintl. */ -#if !defined LC_MESSAGES -# define LC_MESSAGES 1729 -#endif - -/* Bionic libc's 'struct lconv' is just a dummy. */ -#if @REPLACE_STRUCT_LCONV@ -# define lconv rpl_lconv -struct lconv -{ - /* All 'char *' are actually 'const char *'. */ - - /* Members that depend on the LC_NUMERIC category of the locale. See - */ - - /* Symbol used as decimal point. */ - char *decimal_point; - /* Symbol used to separate groups of digits to the left of the decimal - point. */ - char *thousands_sep; - /* Definition of the size of groups of digits to the left of the decimal - point. */ - char *grouping; - - /* Members that depend on the LC_MONETARY category of the locale. See - */ - - /* Symbol used as decimal point. */ - char *mon_decimal_point; - /* Symbol used to separate groups of digits to the left of the decimal - point. */ - char *mon_thousands_sep; - /* Definition of the size of groups of digits to the left of the decimal - point. */ - char *mon_grouping; - /* Sign used to indicate a value >= 0. */ - char *positive_sign; - /* Sign used to indicate a value < 0. */ - char *negative_sign; - - /* For formatting local currency. */ - /* Currency symbol (3 characters) followed by separator (1 character). */ - char *currency_symbol; - /* Number of digits after the decimal point. */ - char frac_digits; - /* For values >= 0: 1 if the currency symbol precedes the number, 0 if it - comes after the number. */ - char p_cs_precedes; - /* For values >= 0: Position of the sign. */ - char p_sign_posn; - /* For values >= 0: Placement of spaces between currency symbol, sign, and - number. */ - char p_sep_by_space; - /* For values < 0: 1 if the currency symbol precedes the number, 0 if it - comes after the number. */ - char n_cs_precedes; - /* For values < 0: Position of the sign. */ - char n_sign_posn; - /* For values < 0: Placement of spaces between currency symbol, sign, and - number. */ - char n_sep_by_space; - - /* For formatting international currency. */ - /* Currency symbol (3 characters) followed by separator (1 character). */ - char *int_curr_symbol; - /* Number of digits after the decimal point. */ - char int_frac_digits; - /* For values >= 0: 1 if the currency symbol precedes the number, 0 if it - comes after the number. */ - char int_p_cs_precedes; - /* For values >= 0: Position of the sign. */ - char int_p_sign_posn; - /* For values >= 0: Placement of spaces between currency symbol, sign, and - number. */ - char int_p_sep_by_space; - /* For values < 0: 1 if the currency symbol precedes the number, 0 if it - comes after the number. */ - char int_n_cs_precedes; - /* For values < 0: Position of the sign. */ - char int_n_sign_posn; - /* For values < 0: Placement of spaces between currency symbol, sign, and - number. */ - char int_n_sep_by_space; -}; -#endif - -#if @GNULIB_LOCALECONV@ -# if @REPLACE_LOCALECONV@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# undef localeconv -# define localeconv rpl_localeconv -# endif -_GL_FUNCDECL_RPL (localeconv, struct lconv *, (void)); -_GL_CXXALIAS_RPL (localeconv, struct lconv *, (void)); -# else -_GL_CXXALIAS_SYS (localeconv, struct lconv *, (void)); -# endif -_GL_CXXALIASWARN (localeconv); -#elif @REPLACE_STRUCT_LCONV@ -# undef localeconv -# define localeconv localeconv_used_without_requesting_gnulib_module_localeconv -#elif defined GNULIB_POSIXCHECK -# undef localeconv -# if HAVE_RAW_DECL_LOCALECONV -_GL_WARN_ON_USE (localeconv, - "localeconv returns too few information on some platforms - " - "use gnulib module localeconv for portability"); -# endif -#endif - -#if @GNULIB_SETLOCALE@ -# if @REPLACE_SETLOCALE@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# undef setlocale -# define setlocale rpl_setlocale -# define GNULIB_defined_setlocale 1 -# endif -_GL_FUNCDECL_RPL (setlocale, char *, (int category, const char *locale)); -_GL_CXXALIAS_RPL (setlocale, char *, (int category, const char *locale)); -# else -_GL_CXXALIAS_SYS (setlocale, char *, (int category, const char *locale)); -# endif -_GL_CXXALIASWARN (setlocale); -#elif defined GNULIB_POSIXCHECK -# undef setlocale -# if HAVE_RAW_DECL_SETLOCALE -_GL_WARN_ON_USE (setlocale, "setlocale works differently on native Windows - " - "use gnulib module setlocale for portability"); -# endif -#endif - -#if /*@GNULIB_NEWLOCALE@ ||*/ (@GNULIB_LOCALENAME@ && @HAVE_NEWLOCALE@) -# if @REPLACE_NEWLOCALE@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# undef newlocale -# define newlocale rpl_newlocale -# define GNULIB_defined_newlocale 1 -# endif -_GL_FUNCDECL_RPL (newlocale, locale_t, - (int category_mask, const char *name, locale_t base) - _GL_ARG_NONNULL ((2))); -_GL_CXXALIAS_RPL (newlocale, locale_t, - (int category_mask, const char *name, locale_t base)); -# else -# if @HAVE_NEWLOCALE@ -_GL_CXXALIAS_SYS (newlocale, locale_t, - (int category_mask, const char *name, locale_t base)); -# endif -# endif -# if @HAVE_NEWLOCALE@ -_GL_CXXALIASWARN (newlocale); -# endif -#elif defined GNULIB_POSIXCHECK -# undef newlocale -# if HAVE_RAW_DECL_NEWLOCALE -_GL_WARN_ON_USE (newlocale, "newlocale is not portable"); -# endif -#endif - -#if @GNULIB_DUPLOCALE@ || (@GNULIB_LOCALENAME@ && @HAVE_DUPLOCALE@) -# if @REPLACE_DUPLOCALE@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# undef duplocale -# define duplocale rpl_duplocale -# define GNULIB_defined_duplocale 1 -# endif -_GL_FUNCDECL_RPL (duplocale, locale_t, (locale_t locale) _GL_ARG_NONNULL ((1))); -_GL_CXXALIAS_RPL (duplocale, locale_t, (locale_t locale)); -# else -# if @HAVE_DUPLOCALE@ -_GL_CXXALIAS_SYS (duplocale, locale_t, (locale_t locale)); -# endif -# endif -# if @HAVE_DUPLOCALE@ -_GL_CXXALIASWARN (duplocale); -# endif -#elif defined GNULIB_POSIXCHECK -# undef duplocale -# if HAVE_RAW_DECL_DUPLOCALE -_GL_WARN_ON_USE (duplocale, "duplocale is buggy on some glibc systems - " - "use gnulib module duplocale for portability"); -# endif -#endif - -#if /*@GNULIB_FREELOCALE@ ||*/ (@GNULIB_LOCALENAME@ && @HAVE_FREELOCALE@) -# if @REPLACE_FREELOCALE@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# undef freelocale -# define freelocale rpl_freelocale -# define GNULIB_defined_freelocale 1 -# endif -_GL_FUNCDECL_RPL (freelocale, void, (locale_t locale) _GL_ARG_NONNULL ((1))); -_GL_CXXALIAS_RPL (freelocale, void, (locale_t locale)); -# else -# if @HAVE_FREELOCALE@ -_GL_CXXALIAS_SYS (freelocale, void, (locale_t locale)); -# endif -# endif -# if @HAVE_FREELOCALE@ -_GL_CXXALIASWARN (freelocale); -# endif -#elif defined GNULIB_POSIXCHECK -# undef freelocale -# if HAVE_RAW_DECL_FREELOCALE -_GL_WARN_ON_USE (freelocale, "freelocale is not portable"); -# endif -#endif - -#endif /* _@GUARD_PREFIX@_LOCALE_H */ -#endif /* _@GUARD_PREFIX@_LOCALE_H */ -#endif /* !(__need_locale_t || _GL_ALREADY_INCLUDING_LOCALE_H) */ diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/localeconv.c b/thirdparty/grub-2.04/grub-core/lib/gnulib/localeconv.c deleted file mode 100644 index b5a965f3e..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/localeconv.c +++ /dev/null @@ -1,103 +0,0 @@ -/* Query locale dependent information for formatting numbers. - Copyright (C) 2012-2019 Free Software Foundation, Inc. - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . */ - -#include - -/* Specification. */ -#include - -#if HAVE_STRUCT_LCONV_DECIMAL_POINT - -/* Override for platforms where 'struct lconv' lacks the int_p_*, int_n_* - members. */ - -struct lconv * -localeconv (void) -{ - static struct lconv result; -# undef lconv -# undef localeconv - struct lconv *sys_result = localeconv (); - - result.decimal_point = sys_result->decimal_point; - result.thousands_sep = sys_result->thousands_sep; - result.grouping = sys_result->grouping; - result.mon_decimal_point = sys_result->mon_decimal_point; - result.mon_thousands_sep = sys_result->mon_thousands_sep; - result.mon_grouping = sys_result->mon_grouping; - result.positive_sign = sys_result->positive_sign; - result.negative_sign = sys_result->negative_sign; - result.currency_symbol = sys_result->currency_symbol; - result.frac_digits = sys_result->frac_digits; - result.p_cs_precedes = sys_result->p_cs_precedes; - result.p_sign_posn = sys_result->p_sign_posn; - result.p_sep_by_space = sys_result->p_sep_by_space; - result.n_cs_precedes = sys_result->n_cs_precedes; - result.n_sign_posn = sys_result->n_sign_posn; - result.n_sep_by_space = sys_result->n_sep_by_space; - result.int_curr_symbol = sys_result->int_curr_symbol; - result.int_frac_digits = sys_result->int_frac_digits; - result.int_p_cs_precedes = sys_result->p_cs_precedes; - result.int_p_sign_posn = sys_result->p_sign_posn; - result.int_p_sep_by_space = sys_result->p_sep_by_space; - result.int_n_cs_precedes = sys_result->n_cs_precedes; - result.int_n_sign_posn = sys_result->n_sign_posn; - result.int_n_sep_by_space = sys_result->n_sep_by_space; - - return &result; -} - -#else - -/* Override for platforms where 'struct lconv' is a dummy. */ - -# include - -struct lconv * -localeconv (void) -{ - static /*const*/ struct lconv result = - { - /* decimal_point */ ".", - /* thousands_sep */ "", - /* grouping */ "", - /* mon_decimal_point */ "", - /* mon_thousands_sep */ "", - /* mon_grouping */ "", - /* positive_sign */ "", - /* negative_sign */ "", - /* currency_symbol */ "", - /* frac_digits */ CHAR_MAX, - /* p_cs_precedes */ CHAR_MAX, - /* p_sign_posn */ CHAR_MAX, - /* p_sep_by_space */ CHAR_MAX, - /* n_cs_precedes */ CHAR_MAX, - /* n_sign_posn */ CHAR_MAX, - /* n_sep_by_space */ CHAR_MAX, - /* int_curr_symbol */ "", - /* int_frac_digits */ CHAR_MAX, - /* int_p_cs_precedes */ CHAR_MAX, - /* int_p_sign_posn */ CHAR_MAX, - /* int_p_sep_by_space */ CHAR_MAX, - /* int_n_cs_precedes */ CHAR_MAX, - /* int_n_sign_posn */ CHAR_MAX, - /* int_n_sep_by_space */ CHAR_MAX - }; - - return &result; -} - -#endif diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/malloc.c b/thirdparty/grub-2.04/grub-core/lib/gnulib/malloc.c deleted file mode 100644 index 76e6ff764..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/malloc.c +++ /dev/null @@ -1,56 +0,0 @@ -/* malloc() function that is glibc compatible. - - Copyright (C) 1997-1998, 2006-2007, 2009-2019 Free Software Foundation, Inc. - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3, or (at your option) - any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, see . */ - -/* written by Jim Meyering and Bruno Haible */ - -#define _GL_USE_STDLIB_ALLOC 1 -#include -/* Only the AC_FUNC_MALLOC macro defines 'malloc' already in config.h. */ -#ifdef malloc -# define NEED_MALLOC_GNU 1 -# undef malloc -/* Whereas the gnulib module 'malloc-gnu' defines HAVE_MALLOC_GNU. */ -#elif GNULIB_MALLOC_GNU && !HAVE_MALLOC_GNU -# define NEED_MALLOC_GNU 1 -#endif - -#include - -#include - -/* Allocate an N-byte block of memory from the heap. - If N is zero, allocate a 1-byte block. */ - -void * -rpl_malloc (size_t n) -{ - void *result; - -#if NEED_MALLOC_GNU - if (n == 0) - n = 1; -#endif - - result = malloc (n); - -#if !HAVE_MALLOC_POSIX - if (result == NULL) - errno = ENOMEM; -#endif - - return result; -} diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/malloca.c b/thirdparty/grub-2.04/grub-core/lib/gnulib/malloca.c deleted file mode 100644 index f60c5fb5d..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/malloca.c +++ /dev/null @@ -1,105 +0,0 @@ -/* Safe automatic memory allocation. - Copyright (C) 2003, 2006-2007, 2009-2019 Free Software Foundation, Inc. - Written by Bruno Haible , 2003, 2018. - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3, or (at your option) - any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, see . */ - -#define _GL_USE_STDLIB_ALLOC 1 -#include - -/* Specification. */ -#include "malloca.h" - -#include "verify.h" - -/* The speed critical point in this file is freea() applied to an alloca() - result: it must be fast, to match the speed of alloca(). The speed of - mmalloca() and freea() in the other case are not critical, because they - are only invoked for big memory sizes. - Here we use a bit in the address as an indicator, an idea by OndÅ™ej Bílka. - malloca() can return three types of pointers: - - Pointers ≡ 0 mod 2*sa_alignment_max come from stack allocation. - - Pointers ≡ sa_alignment_max mod 2*sa_alignment_max come from heap - allocation. - - NULL comes from a failed heap allocation. */ - -/* Type for holding very small pointer differences. */ -typedef unsigned char small_t; -/* Verify that it is wide enough. */ -verify (2 * sa_alignment_max - 1 <= (small_t) -1); - -void * -mmalloca (size_t n) -{ -#if HAVE_ALLOCA - /* Allocate one more word, used to determine the address to pass to freea(), - and room for the alignment ≡ sa_alignment_max mod 2*sa_alignment_max. */ - size_t nplus = n + sizeof (small_t) + 2 * sa_alignment_max - 1; - - if (nplus >= n) - { - char *mem = (char *) malloc (nplus); - - if (mem != NULL) - { - char *p = - (char *)((((uintptr_t)mem + sizeof (small_t) + sa_alignment_max - 1) - & ~(uintptr_t)(2 * sa_alignment_max - 1)) - + sa_alignment_max); - /* Here p >= mem + sizeof (small_t), - and p <= mem + sizeof (small_t) + 2 * sa_alignment_max - 1 - hence p + n <= mem + nplus. - So, the memory range [p, p+n) lies in the allocated memory range - [mem, mem + nplus). */ - ((small_t *) p)[-1] = p - mem; - /* p ≡ sa_alignment_max mod 2*sa_alignment_max. */ - return p; - } - } - /* Out of memory. */ - return NULL; -#else -# if !MALLOC_0_IS_NONNULL - if (n == 0) - n = 1; -# endif - return malloc (n); -#endif -} - -#if HAVE_ALLOCA -void -freea (void *p) -{ - /* Check argument. */ - if ((uintptr_t) p & (sa_alignment_max - 1)) - { - /* p was not the result of a malloca() call. Invalid argument. */ - abort (); - } - /* Determine whether p was a non-NULL pointer returned by mmalloca(). */ - if ((uintptr_t) p & sa_alignment_max) - { - void *mem = (char *) p - ((small_t *) p)[-1]; - free (mem); - } -} -#endif - -/* - * Hey Emacs! - * Local Variables: - * coding: utf-8 - * End: - */ diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/malloca.h b/thirdparty/grub-2.04/grub-core/lib/gnulib/malloca.h deleted file mode 100644 index d80c316ca..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/malloca.h +++ /dev/null @@ -1,127 +0,0 @@ -/* Safe automatic memory allocation. - Copyright (C) 2003-2007, 2009-2019 Free Software Foundation, Inc. - Written by Bruno Haible , 2003. - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3, or (at your option) - any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, see . */ - -#ifndef _MALLOCA_H -#define _MALLOCA_H - -#include -#include -#include -#include - -#include "xalloc-oversized.h" - - -#ifdef __cplusplus -extern "C" { -#endif - - -/* safe_alloca(N) is equivalent to alloca(N) when it is safe to call - alloca(N); otherwise it returns NULL. It either returns N bytes of - memory allocated on the stack, that lasts until the function returns, - or NULL. - Use of safe_alloca should be avoided: - - inside arguments of function calls - undefined behaviour, - - in inline functions - the allocation may actually last until the - calling function returns. -*/ -#if HAVE_ALLOCA -/* The OS usually guarantees only one guard page at the bottom of the stack, - and a page size can be as small as 4096 bytes. So we cannot safely - allocate anything larger than 4096 bytes. Also care for the possibility - of a few compiler-allocated temporary stack slots. - This must be a macro, not a function. */ -# define safe_alloca(N) ((N) < 4032 ? alloca (N) : NULL) -#else -# define safe_alloca(N) ((void) (N), NULL) -#endif - -/* malloca(N) is a safe variant of alloca(N). It allocates N bytes of - memory allocated on the stack, that must be freed using freea() before - the function returns. Upon failure, it returns NULL. */ -#if HAVE_ALLOCA -# define malloca(N) \ - ((N) < 4032 - (2 * sa_alignment_max - 1) \ - ? (void *) (((uintptr_t) (char *) alloca ((N) + 2 * sa_alignment_max - 1) \ - + (2 * sa_alignment_max - 1)) \ - & ~(uintptr_t)(2 * sa_alignment_max - 1)) \ - : mmalloca (N)) -#else -# define malloca(N) \ - mmalloca (N) -#endif -extern void * mmalloca (size_t n); - -/* Free a block of memory allocated through malloca(). */ -#if HAVE_ALLOCA -extern void freea (void *p); -#else -# define freea free -#endif - -/* nmalloca(N,S) is an overflow-safe variant of malloca (N * S). - It allocates an array of N objects, each with S bytes of memory, - on the stack. S must be positive and N must be nonnegative. - The array must be freed using freea() before the function returns. */ -#define nmalloca(n, s) (xalloc_oversized (n, s) ? NULL : malloca ((n) * (s))) - - -#ifdef __cplusplus -} -#endif - - -/* ------------------- Auxiliary, non-public definitions ------------------- */ - -/* Determine the alignment of a type at compile time. */ -#if defined __GNUC__ || defined __IBM__ALIGNOF__ -# define sa_alignof __alignof__ -#elif defined __cplusplus - template struct sa_alignof_helper { char __slot1; type __slot2; }; -# define sa_alignof(type) offsetof (sa_alignof_helper, __slot2) -#elif defined __hpux - /* Work around a HP-UX 10.20 cc bug with enums constants defined as offsetof - values. */ -# define sa_alignof(type) (sizeof (type) <= 4 ? 4 : 8) -#elif defined _AIX - /* Work around an AIX 3.2.5 xlc bug with enums constants defined as offsetof - values. */ -# define sa_alignof(type) (sizeof (type) <= 4 ? 4 : 8) -#else -# define sa_alignof(type) offsetof (struct { char __slot1; type __slot2; }, __slot2) -#endif - -enum -{ -/* The desired alignment of memory allocations is the maximum alignment - among all elementary types. */ - sa_alignment_long = sa_alignof (long), - sa_alignment_double = sa_alignof (double), -#if HAVE_LONG_LONG_INT - sa_alignment_longlong = sa_alignof (long long), -#endif - sa_alignment_longdouble = sa_alignof (long double), - sa_alignment_max = ((sa_alignment_long - 1) | (sa_alignment_double - 1) -#if HAVE_LONG_LONG_INT - | (sa_alignment_longlong - 1) -#endif - | (sa_alignment_longdouble - 1) - ) + 1 -}; - -#endif /* _MALLOCA_H */ diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/mbrtowc.c b/thirdparty/grub-2.04/grub-core/lib/gnulib/mbrtowc.c deleted file mode 100644 index bbe3f7a3b..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/mbrtowc.c +++ /dev/null @@ -1,458 +0,0 @@ -/* Convert multibyte character to wide character. - Copyright (C) 1999-2002, 2005-2019 Free Software Foundation, Inc. - Written by Bruno Haible , 2008. - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . */ - -#include - -/* Specification. */ -#include - -#if C_LOCALE_MAYBE_EILSEQ -# include "hard-locale.h" -# include -#endif - -#if GNULIB_defined_mbstate_t -/* Implement mbrtowc() on top of mbtowc(). */ - -# include -# include - -# include "localcharset.h" -# include "streq.h" -# include "verify.h" - -# ifndef FALLTHROUGH -# if __GNUC__ < 7 -# define FALLTHROUGH ((void) 0) -# else -# define FALLTHROUGH __attribute__ ((__fallthrough__)) -# endif -# endif - -/* Returns a classification of special values of the encoding of the current - locale. */ -typedef enum { - enc_other, /* other */ - enc_utf8, /* UTF-8 */ - enc_eucjp, /* EUC-JP */ - enc_94, /* EUC-KR, GB2312, BIG5 */ - enc_euctw, /* EUC-TW */ - enc_gb18030, /* GB18030 */ - enc_sjis /* SJIS */ -} enc_t; -static inline enc_t -locale_enc (void) -{ - const char *encoding = locale_charset (); - if (STREQ_OPT (encoding, "UTF-8", 'U', 'T', 'F', '-', '8', 0, 0, 0, 0)) - return enc_utf8; - if (STREQ_OPT (encoding, "EUC-JP", 'E', 'U', 'C', '-', 'J', 'P', 0, 0, 0)) - return enc_eucjp; - if (STREQ_OPT (encoding, "EUC-KR", 'E', 'U', 'C', '-', 'K', 'R', 0, 0, 0) - || STREQ_OPT (encoding, "GB2312", 'G', 'B', '2', '3', '1', '2', 0, 0, 0) - || STREQ_OPT (encoding, "BIG5", 'B', 'I', 'G', '5', 0, 0, 0, 0, 0)) - return enc_94; - if (STREQ_OPT (encoding, "EUC-TW", 'E', 'U', 'C', '-', 'T', 'W', 0, 0, 0)) - return enc_euctw; - if (STREQ_OPT (encoding, "GB18030", 'G', 'B', '1', '8', '0', '3', '0', 0, 0)) - return enc_gb18030; - if (STREQ_OPT (encoding, "SJIS", 'S', 'J', 'I', 'S', 0, 0, 0, 0, 0)) - return enc_sjis; - return enc_other; -} - -#if GNULIB_WCHAR_SINGLE -/* When we know that the locale does not change, provide a speedup by - caching the value of locale_enc. */ -static int cached_locale_enc = -1; -static inline enc_t -locale_enc_cached (void) -{ - if (cached_locale_enc < 0) - cached_locale_enc = locale_enc (); - return cached_locale_enc; -} -#else -/* By default, don't make assumptions, hence no caching. */ -# define locale_enc_cached locale_enc -#endif - -verify (sizeof (mbstate_t) >= 4); - -static char internal_state[4]; - -size_t -mbrtowc (wchar_t *pwc, const char *s, size_t n, mbstate_t *ps) -{ - char *pstate = (char *)ps; - - if (s == NULL) - { - pwc = NULL; - s = ""; - n = 1; - } - - if (n == 0) - return (size_t)(-2); - - /* Here n > 0. */ - - if (pstate == NULL) - pstate = internal_state; - - { - size_t nstate = pstate[0]; - char buf[4]; - const char *p; - size_t m; - - switch (nstate) - { - case 0: - p = s; - m = n; - break; - case 3: - buf[2] = pstate[3]; - FALLTHROUGH; - case 2: - buf[1] = pstate[2]; - FALLTHROUGH; - case 1: - buf[0] = pstate[1]; - p = buf; - m = nstate; - buf[m++] = s[0]; - if (n >= 2 && m < 4) - { - buf[m++] = s[1]; - if (n >= 3 && m < 4) - buf[m++] = s[2]; - } - break; - default: - errno = EINVAL; - return (size_t)(-1); - } - - /* Here m > 0. */ - -# if __GLIBC__ || defined __UCLIBC__ - /* Work around bug */ - mbtowc (NULL, NULL, 0); -# endif - { - int res = mbtowc (pwc, p, m); - - if (res >= 0) - { - if (pwc != NULL && ((*pwc == 0) != (res == 0))) - abort (); - if (nstate >= (res > 0 ? res : 1)) - abort (); - res -= nstate; - pstate[0] = 0; - return res; - } - - /* mbtowc does not distinguish between invalid and incomplete multibyte - sequences. But mbrtowc needs to make this distinction. - There are two possible approaches: - - Use iconv() and its return value. - - Use built-in knowledge about the possible encodings. - Given the low quality of implementation of iconv() on the systems that - lack mbrtowc(), we use the second approach. - The possible encodings are: - - 8-bit encodings, - - EUC-JP, EUC-KR, GB2312, EUC-TW, BIG5, GB18030, SJIS, - - UTF-8. - Use specialized code for each. */ - if (m >= 4 || m >= MB_CUR_MAX) - goto invalid; - /* Here MB_CUR_MAX > 1 and 0 < m < 4. */ - switch (locale_enc_cached ()) - { - case enc_utf8: /* UTF-8 */ - { - /* Cf. unistr/u8-mblen.c. */ - unsigned char c = (unsigned char) p[0]; - - if (c >= 0xc2) - { - if (c < 0xe0) - { - if (m == 1) - goto incomplete; - } - else if (c < 0xf0) - { - if (m == 1) - goto incomplete; - if (m == 2) - { - unsigned char c2 = (unsigned char) p[1]; - - if ((c2 ^ 0x80) < 0x40 - && (c >= 0xe1 || c2 >= 0xa0) - && (c != 0xed || c2 < 0xa0)) - goto incomplete; - } - } - else if (c <= 0xf4) - { - if (m == 1) - goto incomplete; - else /* m == 2 || m == 3 */ - { - unsigned char c2 = (unsigned char) p[1]; - - if ((c2 ^ 0x80) < 0x40 - && (c >= 0xf1 || c2 >= 0x90) - && (c < 0xf4 || (c == 0xf4 && c2 < 0x90))) - { - if (m == 2) - goto incomplete; - else /* m == 3 */ - { - unsigned char c3 = (unsigned char) p[2]; - - if ((c3 ^ 0x80) < 0x40) - goto incomplete; - } - } - } - } - } - goto invalid; - } - - /* As a reference for this code, you can use the GNU libiconv - implementation. Look for uses of the RET_TOOFEW macro. */ - - case enc_eucjp: /* EUC-JP */ - { - if (m == 1) - { - unsigned char c = (unsigned char) p[0]; - - if ((c >= 0xa1 && c < 0xff) || c == 0x8e || c == 0x8f) - goto incomplete; - } - if (m == 2) - { - unsigned char c = (unsigned char) p[0]; - - if (c == 0x8f) - { - unsigned char c2 = (unsigned char) p[1]; - - if (c2 >= 0xa1 && c2 < 0xff) - goto incomplete; - } - } - goto invalid; - } - - case enc_94: /* EUC-KR, GB2312, BIG5 */ - { - if (m == 1) - { - unsigned char c = (unsigned char) p[0]; - - if (c >= 0xa1 && c < 0xff) - goto incomplete; - } - goto invalid; - } - - case enc_euctw: /* EUC-TW */ - { - if (m == 1) - { - unsigned char c = (unsigned char) p[0]; - - if ((c >= 0xa1 && c < 0xff) || c == 0x8e) - goto incomplete; - } - else /* m == 2 || m == 3 */ - { - unsigned char c = (unsigned char) p[0]; - - if (c == 0x8e) - goto incomplete; - } - goto invalid; - } - - case enc_gb18030: /* GB18030 */ - { - if (m == 1) - { - unsigned char c = (unsigned char) p[0]; - - if ((c >= 0x90 && c <= 0xe3) || (c >= 0xf8 && c <= 0xfe)) - goto incomplete; - } - else /* m == 2 || m == 3 */ - { - unsigned char c = (unsigned char) p[0]; - - if (c >= 0x90 && c <= 0xe3) - { - unsigned char c2 = (unsigned char) p[1]; - - if (c2 >= 0x30 && c2 <= 0x39) - { - if (m == 2) - goto incomplete; - else /* m == 3 */ - { - unsigned char c3 = (unsigned char) p[2]; - - if (c3 >= 0x81 && c3 <= 0xfe) - goto incomplete; - } - } - } - } - goto invalid; - } - - case enc_sjis: /* SJIS */ - { - if (m == 1) - { - unsigned char c = (unsigned char) p[0]; - - if ((c >= 0x81 && c <= 0x9f) || (c >= 0xe0 && c <= 0xea) - || (c >= 0xf0 && c <= 0xf9)) - goto incomplete; - } - goto invalid; - } - - default: - /* An unknown multibyte encoding. */ - goto incomplete; - } - - incomplete: - { - size_t k = nstate; - /* Here 0 <= k < m < 4. */ - pstate[++k] = s[0]; - if (k < m) - { - pstate[++k] = s[1]; - if (k < m) - pstate[++k] = s[2]; - } - if (k != m) - abort (); - } - pstate[0] = m; - return (size_t)(-2); - - invalid: - errno = EILSEQ; - /* The conversion state is undefined, says POSIX. */ - return (size_t)(-1); - } - } -} - -#else -/* Override the system's mbrtowc() function. */ - -# undef mbrtowc - -size_t -rpl_mbrtowc (wchar_t *pwc, const char *s, size_t n, mbstate_t *ps) -{ - size_t ret; - wchar_t wc; - -# if MBRTOWC_NULL_ARG2_BUG || MBRTOWC_RETVAL_BUG || MBRTOWC_EMPTY_INPUT_BUG - if (s == NULL) - { - pwc = NULL; - s = ""; - n = 1; - } -# endif - -# if MBRTOWC_EMPTY_INPUT_BUG - if (n == 0) - return (size_t) -2; -# endif - - if (! pwc) - pwc = &wc; - -# if MBRTOWC_RETVAL_BUG - { - static mbstate_t internal_state; - - /* Override mbrtowc's internal state. We cannot call mbsinit() on the - hidden internal state, but we can call it on our variable. */ - if (ps == NULL) - ps = &internal_state; - - if (!mbsinit (ps)) - { - /* Parse the rest of the multibyte character byte for byte. */ - size_t count = 0; - for (; n > 0; s++, n--) - { - ret = mbrtowc (&wc, s, 1, ps); - - if (ret == (size_t)(-1)) - return (size_t)(-1); - count++; - if (ret != (size_t)(-2)) - { - /* The multibyte character has been completed. */ - *pwc = wc; - return (wc == 0 ? 0 : count); - } - } - return (size_t)(-2); - } - } -# endif - - ret = mbrtowc (pwc, s, n, ps); - -# if MBRTOWC_NUL_RETVAL_BUG - if (ret < (size_t) -2 && !*pwc) - return 0; -# endif - -# if C_LOCALE_MAYBE_EILSEQ - if ((size_t) -2 <= ret && n != 0 && ! hard_locale (LC_CTYPE)) - { - unsigned char uc = *s; - *pwc = uc; - return 1; - } -# endif - - return ret; -} - -#endif diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/mbsinit.c b/thirdparty/grub-2.04/grub-core/lib/gnulib/mbsinit.c deleted file mode 100644 index 5ecaef77c..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/mbsinit.c +++ /dev/null @@ -1,73 +0,0 @@ -/* Test for initial conversion state. - Copyright (C) 2008-2019 Free Software Foundation, Inc. - Written by Bruno Haible , 2008. - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . */ - -#include - -/* Specification. */ -#include - -#include "verify.h" - -#if GNULIB_defined_mbstate_t - -/* Platforms that lack mbsinit() also lack mbrlen(), mbrtowc(), mbsrtowcs() - and wcrtomb(), wcsrtombs(). - We assume that - - sizeof (mbstate_t) >= 4, - - only stateless encodings are supported (such as UTF-8 and EUC-JP, but - not ISO-2022 variants), - - for each encoding, the number of bytes for a wide character is <= 4. - (This maximum is attained for UTF-8, GB18030, EUC-TW.) - We define the meaning of mbstate_t as follows: - - In mb -> wc direction, mbstate_t's first byte contains the number of - buffered bytes (in the range 0..3), followed by up to 3 buffered bytes. - See mbrtowc.c. - - In wc -> mb direction, mbstate_t contains no information. In other - words, it is always in the initial state. */ - -verify (sizeof (mbstate_t) >= 4); - -int -mbsinit (const mbstate_t *ps) -{ - const char *pstate = (const char *)ps; - - return pstate == NULL || pstate[0] == 0; -} - -#else - -int -mbsinit (const mbstate_t *ps) -{ -# if defined _WIN32 && !defined __CYGWIN__ - /* Native Windows. */ -# ifdef __MINGW32__ - /* On mingw, 'mbstate_t' is defined as 'int'. */ - return ps == NULL || *ps == 0; -# else - /* MSVC defines 'mbstate_t' as an 8-byte struct; the first 4-bytes matter. */ - return ps == NULL || *(const unsigned int *)ps == 0; -# endif -# else - /* Minix, HP-UX 11.00, Solaris 2.6, Interix, ... */ - /* Maybe this definition works, maybe not... */ - return ps == NULL || *(const char *)ps == 0; -# endif -} - -#endif diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/mbsrtowcs-impl.h b/thirdparty/grub-2.04/grub-core/lib/gnulib/mbsrtowcs-impl.h deleted file mode 100644 index 110d692e1..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/mbsrtowcs-impl.h +++ /dev/null @@ -1,122 +0,0 @@ -/* Convert string to wide string. - Copyright (C) 2008-2019 Free Software Foundation, Inc. - Written by Bruno Haible , 2008. - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . */ - -size_t -mbsrtowcs (wchar_t *dest, const char **srcp, size_t len, mbstate_t *ps) -{ - if (ps == NULL) - ps = &_gl_mbsrtowcs_state; - { - const char *src = *srcp; - - if (dest != NULL) - { - wchar_t *destptr = dest; - - for (; len > 0; destptr++, len--) - { - size_t src_avail; - size_t ret; - - /* An optimized variant of - src_avail = strnlen1 (src, MB_LEN_MAX); */ - if (src[0] == '\0') - src_avail = 1; - else if (src[1] == '\0') - src_avail = 2; - else if (src[2] == '\0') - src_avail = 3; - else if (MB_LEN_MAX <= 4 || src[3] == '\0') - src_avail = 4; - else - src_avail = 4 + strnlen1 (src + 4, MB_LEN_MAX - 4); - - /* Parse the next multibyte character. */ - ret = mbrtowc (destptr, src, src_avail, ps); - - if (ret == (size_t)(-2)) - /* Encountered a multibyte character that extends past a '\0' byte - or that is longer than MB_LEN_MAX bytes. Cannot happen. */ - abort (); - - if (ret == (size_t)(-1)) - goto bad_input; - if (ret == 0) - { - src = NULL; - /* Here mbsinit (ps). */ - break; - } - src += ret; - } - - *srcp = src; - return destptr - dest; - } - else - { - /* Ignore dest and len, don't store *srcp at the end, and - don't clobber *ps. */ - mbstate_t state = *ps; - size_t totalcount = 0; - - for (;; totalcount++) - { - size_t src_avail; - size_t ret; - - /* An optimized variant of - src_avail = strnlen1 (src, MB_LEN_MAX); */ - if (src[0] == '\0') - src_avail = 1; - else if (src[1] == '\0') - src_avail = 2; - else if (src[2] == '\0') - src_avail = 3; - else if (MB_LEN_MAX <= 4 || src[3] == '\0') - src_avail = 4; - else - src_avail = 4 + strnlen1 (src + 4, MB_LEN_MAX - 4); - - /* Parse the next multibyte character. */ - ret = mbrtowc (NULL, src, src_avail, &state); - - if (ret == (size_t)(-2)) - /* Encountered a multibyte character that extends past a '\0' byte - or that is longer than MB_LEN_MAX bytes. Cannot happen. */ - abort (); - - if (ret == (size_t)(-1)) - goto bad_input2; - if (ret == 0) - { - /* Here mbsinit (&state). */ - break; - } - src += ret; - } - - return totalcount; - } - - bad_input: - *srcp = src; - bad_input2: - errno = EILSEQ; - return (size_t)(-1); - } -} diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/mbsrtowcs-state.c b/thirdparty/grub-2.04/grub-core/lib/gnulib/mbsrtowcs-state.c deleted file mode 100644 index 59525e72c..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/mbsrtowcs-state.c +++ /dev/null @@ -1,37 +0,0 @@ -/* Convert string to wide string. - Copyright (C) 2008-2019 Free Software Foundation, Inc. - Written by Bruno Haible , 2008. - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . */ - -#include - -#include - -/* Internal state used by the functions mbsrtowcs() and mbsnrtowcs(). */ -mbstate_t _gl_mbsrtowcs_state -/* The state must initially be in the "initial state"; so, zero-initialize it. - On most systems, putting it into BSS is sufficient. Not so on Mac OS X 10.3, - see . - When it needs an initializer, use 0 or {0} as initializer? 0 only works - when mbstate_t is a scalar type (such as when gnulib defines it, or on - AIX, IRIX, mingw). {0} works as an initializer in all cases: for a struct - or union type, but also for a scalar type (ISO C 99, 6.7.8.(11)). */ -#if defined __ELF__ - /* On ELF systems, variables in BSS behave well. */ -#else - /* Use braces, to be on the safe side. */ - = { 0 } -#endif - ; diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/mbsrtowcs.c b/thirdparty/grub-2.04/grub-core/lib/gnulib/mbsrtowcs.c deleted file mode 100644 index 14f241e30..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/mbsrtowcs.c +++ /dev/null @@ -1,32 +0,0 @@ -/* Convert string to wide string. - Copyright (C) 2008-2019 Free Software Foundation, Inc. - Written by Bruno Haible , 2008. - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . */ - -#include - -/* Specification. */ -#include - -#include -#include -#include - -#include "strnlen1.h" - - -extern mbstate_t _gl_mbsrtowcs_state; - -#include "mbsrtowcs-impl.h" diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/mbswidth.c b/thirdparty/grub-2.04/grub-core/lib/gnulib/mbswidth.c deleted file mode 100644 index b3fb7f83a..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/mbswidth.c +++ /dev/null @@ -1,208 +0,0 @@ -/* Determine the number of screen columns needed for a string. - Copyright (C) 2000-2019 Free Software Foundation, Inc. - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . */ - -/* Written by Bruno Haible . */ - -#include - -/* Specification. */ -#include "mbswidth.h" - -/* Get MB_CUR_MAX. */ -#include - -#include - -/* Get isprint(). */ -#include - -/* Get mbstate_t, mbrtowc(), mbsinit(), wcwidth(). */ -#include - -/* Get iswcntrl(). */ -#include - -/* Get INT_MAX. */ -#include - -#ifndef FALLTHROUGH -# if __GNUC__ < 7 -# define FALLTHROUGH ((void) 0) -# else -# define FALLTHROUGH __attribute__ ((__fallthrough__)) -# endif -#endif - -/* Returns the number of columns needed to represent the multibyte - character string pointed to by STRING. If a non-printable character - occurs, and MBSW_REJECT_UNPRINTABLE is specified, -1 is returned. - With flags = MBSW_REJECT_INVALID | MBSW_REJECT_UNPRINTABLE, this is - the multibyte analogue of the wcswidth function. */ -int -mbswidth (const char *string, int flags) -{ - return mbsnwidth (string, strlen (string), flags); -} - -/* Returns the number of columns needed to represent the multibyte - character string pointed to by STRING of length NBYTES. If a - non-printable character occurs, and MBSW_REJECT_UNPRINTABLE is - specified, -1 is returned. */ -int -mbsnwidth (const char *string, size_t nbytes, int flags) -{ - const char *p = string; - const char *plimit = p + nbytes; - int width; - - width = 0; - if (MB_CUR_MAX > 1) - { - while (p < plimit) - switch (*p) - { - case ' ': case '!': case '"': case '#': case '%': - case '&': case '\'': case '(': case ')': case '*': - case '+': case ',': case '-': case '.': case '/': - case '0': case '1': case '2': case '3': case '4': - case '5': case '6': case '7': case '8': case '9': - case ':': case ';': case '<': case '=': case '>': - case '?': - case 'A': case 'B': case 'C': case 'D': case 'E': - case 'F': case 'G': case 'H': case 'I': case 'J': - case 'K': case 'L': case 'M': case 'N': case 'O': - case 'P': case 'Q': case 'R': case 'S': case 'T': - case 'U': case 'V': case 'W': case 'X': case 'Y': - case 'Z': - case '[': case '\\': case ']': case '^': case '_': - case 'a': case 'b': case 'c': case 'd': case 'e': - case 'f': case 'g': case 'h': case 'i': case 'j': - case 'k': case 'l': case 'm': case 'n': case 'o': - case 'p': case 'q': case 'r': case 's': case 't': - case 'u': case 'v': case 'w': case 'x': case 'y': - case 'z': case '{': case '|': case '}': case '~': - /* These characters are printable ASCII characters. */ - p++; - width++; - break; - case '\0': - if (flags & MBSW_STOP_AT_NUL) - return width; - FALLTHROUGH; - default: - /* If we have a multibyte sequence, scan it up to its end. */ - { - mbstate_t mbstate; - memset (&mbstate, 0, sizeof mbstate); - do - { - wchar_t wc; - size_t bytes; - int w; - - bytes = mbrtowc (&wc, p, plimit - p, &mbstate); - - if (bytes == (size_t) -1) - /* An invalid multibyte sequence was encountered. */ - { - if (!(flags & MBSW_REJECT_INVALID)) - { - p++; - width++; - break; - } - else - return -1; - } - - if (bytes == (size_t) -2) - /* An incomplete multibyte character at the end. */ - { - if (!(flags & MBSW_REJECT_INVALID)) - { - p = plimit; - width++; - break; - } - else - return -1; - } - - if (bytes == 0) - /* A null wide character was encountered. */ - bytes = 1; - - w = wcwidth (wc); - if (w >= 0) - /* A printable multibyte character. */ - { - if (w > INT_MAX - width) - goto overflow; - width += w; - } - else - /* An unprintable multibyte character. */ - if (!(flags & MBSW_REJECT_UNPRINTABLE)) - { - if (!iswcntrl (wc)) - { - if (width == INT_MAX) - goto overflow; - width++; - } - } - else - return -1; - - p += bytes; - } - while (! mbsinit (&mbstate)); - } - break; - } - return width; - } - - while (p < plimit) - { - unsigned char c = (unsigned char) *p++; - - if (c == 0 && (flags & MBSW_STOP_AT_NUL)) - return width; - - if (isprint (c)) - { - if (width == INT_MAX) - goto overflow; - width++; - } - else if (!(flags & MBSW_REJECT_UNPRINTABLE)) - { - if (!iscntrl (c)) - { - if (width == INT_MAX) - goto overflow; - width++; - } - } - else - return -1; - } - return width; - - overflow: - return INT_MAX; -} diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/mbswidth.h b/thirdparty/grub-2.04/grub-core/lib/gnulib/mbswidth.h deleted file mode 100644 index 45a123e63..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/mbswidth.h +++ /dev/null @@ -1,64 +0,0 @@ -/* Determine the number of screen columns needed for a string. - Copyright (C) 2000-2004, 2007, 2009-2019 Free Software Foundation, Inc. - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . */ - -#include - -/* Avoid a clash of our mbswidth() with a function of the same name defined - in UnixWare 7.1.1 . We need this #include before the #define - below. - However, we don't want to #include on all platforms because - - Tru64 with Desktop Toolkit C has a bug: must be included before - . - - BSD/OS 4.1 has a bug: and must be included before - . */ -#if HAVE_DECL_MBSWIDTH_IN_WCHAR_H -# include -#endif - - -#ifdef __cplusplus -extern "C" { -#endif - - -/* Optional flags to influence mbswidth/mbsnwidth behavior. */ - -/* If this bit is set, return -1 upon finding an invalid or incomplete - character. Otherwise, assume invalid characters have width 1. */ -#define MBSW_REJECT_INVALID 1 - -/* If this bit is set, return -1 upon finding a non-printable character. - Otherwise, assume unprintable characters have width 0 if they are - control characters and 1 otherwise. */ -#define MBSW_REJECT_UNPRINTABLE 2 - -/* If this bit is set \0 is treated as the end of string. - Otherwise it's treated as a normal one column width character. */ -#define MBSW_STOP_AT_NUL 4 - - -/* Returns the number of screen columns needed for STRING. */ -#define mbswidth gnu_mbswidth /* avoid clash with UnixWare 7.1.1 function */ -extern int mbswidth (const char *string, int flags); - -/* Returns the number of screen columns needed for the NBYTES bytes - starting at BUF. */ -extern int mbsnwidth (const char *buf, size_t nbytes, int flags); - - -#ifdef __cplusplus -} -#endif diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/mbtowc-impl.h b/thirdparty/grub-2.04/grub-core/lib/gnulib/mbtowc-impl.h deleted file mode 100644 index f4ab98181..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/mbtowc-impl.h +++ /dev/null @@ -1,44 +0,0 @@ -/* Convert multibyte character to wide character. - Copyright (C) 2011-2019 Free Software Foundation, Inc. - Written by Bruno Haible , 2011. - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . */ - -/* We don't need a static internal state, because the encoding is not state - dependent, and when mbrtowc returns (size_t)(-2). we throw the result - away. */ - -int -mbtowc (wchar_t *pwc, const char *s, size_t n) -{ - if (s == NULL) - return 0; - else - { - mbstate_t state; - wchar_t wc; - size_t result; - - memset (&state, 0, sizeof (mbstate_t)); - result = mbrtowc (&wc, s, n, &state); - if (result == (size_t)-1 || result == (size_t)-2) - { - errno = EILSEQ; - return -1; - } - if (pwc != NULL) - *pwc = wc; - return (wc == 0 ? 0 : result); - } -} diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/mbtowc.c b/thirdparty/grub-2.04/grub-core/lib/gnulib/mbtowc.c deleted file mode 100644 index 77a847241..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/mbtowc.c +++ /dev/null @@ -1,26 +0,0 @@ -/* Convert multibyte character to wide character. - Copyright (C) 2011-2019 Free Software Foundation, Inc. - Written by Bruno Haible , 2011. - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . */ - -#include - -#include - -#include -#include -#include - -#include "mbtowc-impl.h" diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/memchr.c b/thirdparty/grub-2.04/grub-core/lib/gnulib/memchr.c deleted file mode 100644 index 4e0c5f9de..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/memchr.c +++ /dev/null @@ -1,172 +0,0 @@ -/* Copyright (C) 1991, 1993, 1996-1997, 1999-2000, 2003-2004, 2006, 2008-2019 - Free Software Foundation, Inc. - - Based on strlen implementation by Torbjorn Granlund (tege@sics.se), - with help from Dan Sahlin (dan@sics.se) and - commentary by Jim Blandy (jimb@ai.mit.edu); - adaptation to memchr suggested by Dick Karpinski (dick@cca.ucsf.edu), - and implemented by Roland McGrath (roland@ai.mit.edu). - -NOTE: The canonical source of this file is maintained with the GNU C Library. -Bugs can be reported to bug-glibc@prep.ai.mit.edu. - -This program is free software: you can redistribute it and/or modify it -under the terms of the GNU General Public License as published by the -Free Software Foundation; either version 3 of the License, or any -later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . */ - -#ifndef _LIBC -# include -#endif - -#include - -#include - -#if defined _LIBC -# include -#else -# define reg_char char -#endif - -#include - -#if HAVE_BP_SYM_H || defined _LIBC -# include -#else -# define BP_SYM(sym) sym -#endif - -#undef __memchr -#ifdef _LIBC -# undef memchr -#endif - -#ifndef weak_alias -# define __memchr memchr -#endif - -/* Search no more than N bytes of S for C. */ -void * -__memchr (void const *s, int c_in, size_t n) -{ - /* On 32-bit hardware, choosing longword to be a 32-bit unsigned - long instead of a 64-bit uintmax_t tends to give better - performance. On 64-bit hardware, unsigned long is generally 64 - bits already. Change this typedef to experiment with - performance. */ - typedef unsigned long int longword; - - const unsigned char *char_ptr; - const longword *longword_ptr; - longword repeated_one; - longword repeated_c; - unsigned reg_char c; - - c = (unsigned char) c_in; - - /* Handle the first few bytes by reading one byte at a time. - Do this until CHAR_PTR is aligned on a longword boundary. */ - for (char_ptr = (const unsigned char *) s; - n > 0 && (size_t) char_ptr % sizeof (longword) != 0; - --n, ++char_ptr) - if (*char_ptr == c) - return (void *) char_ptr; - - longword_ptr = (const longword *) char_ptr; - - /* All these elucidatory comments refer to 4-byte longwords, - but the theory applies equally well to any size longwords. */ - - /* Compute auxiliary longword values: - repeated_one is a value which has a 1 in every byte. - repeated_c has c in every byte. */ - repeated_one = 0x01010101; - repeated_c = c | (c << 8); - repeated_c |= repeated_c << 16; - if (0xffffffffU < (longword) -1) - { - repeated_one |= repeated_one << 31 << 1; - repeated_c |= repeated_c << 31 << 1; - if (8 < sizeof (longword)) - { - size_t i; - - for (i = 64; i < sizeof (longword) * 8; i *= 2) - { - repeated_one |= repeated_one << i; - repeated_c |= repeated_c << i; - } - } - } - - /* Instead of the traditional loop which tests each byte, we will test a - longword at a time. The tricky part is testing if *any of the four* - bytes in the longword in question are equal to c. We first use an xor - with repeated_c. This reduces the task to testing whether *any of the - four* bytes in longword1 is zero. - - We compute tmp = - ((longword1 - repeated_one) & ~longword1) & (repeated_one << 7). - That is, we perform the following operations: - 1. Subtract repeated_one. - 2. & ~longword1. - 3. & a mask consisting of 0x80 in every byte. - Consider what happens in each byte: - - If a byte of longword1 is zero, step 1 and 2 transform it into 0xff, - and step 3 transforms it into 0x80. A carry can also be propagated - to more significant bytes. - - If a byte of longword1 is nonzero, let its lowest 1 bit be at - position k (0 <= k <= 7); so the lowest k bits are 0. After step 1, - the byte ends in a single bit of value 0 and k bits of value 1. - After step 2, the result is just k bits of value 1: 2^k - 1. After - step 3, the result is 0. And no carry is produced. - So, if longword1 has only non-zero bytes, tmp is zero. - Whereas if longword1 has a zero byte, call j the position of the least - significant zero byte. Then the result has a zero at positions 0, ..., - j-1 and a 0x80 at position j. We cannot predict the result at the more - significant bytes (positions j+1..3), but it does not matter since we - already have a non-zero bit at position 8*j+7. - - So, the test whether any byte in longword1 is zero is equivalent to - testing whether tmp is nonzero. */ - - while (n >= sizeof (longword)) - { - longword longword1 = *longword_ptr ^ repeated_c; - - if ((((longword1 - repeated_one) & ~longword1) - & (repeated_one << 7)) != 0) - break; - longword_ptr++; - n -= sizeof (longword); - } - - char_ptr = (const unsigned char *) longword_ptr; - - /* At this point, we know that either n < sizeof (longword), or one of the - sizeof (longword) bytes starting at char_ptr is == c. On little-endian - machines, we could determine the first such byte without any further - memory accesses, just by looking at the tmp result from the last loop - iteration. But this does not work on big-endian machines. Choose code - that works in both cases. */ - - for (; n > 0; --n, ++char_ptr) - { - if (*char_ptr == c) - return (void *) char_ptr; - } - - return NULL; -} -#ifdef weak_alias -weak_alias (__memchr, BP_SYM (memchr)) -#endif diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/memchr.valgrind b/thirdparty/grub-2.04/grub-core/lib/gnulib/memchr.valgrind deleted file mode 100644 index 60f247e10..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/memchr.valgrind +++ /dev/null @@ -1,14 +0,0 @@ -# Suppress a valgrind message about use of uninitialized memory in memchr(). -# POSIX states that when the character is found, memchr must not read extra -# bytes in an overestimated length (for example, where memchr is used to -# implement strnlen). However, we use a safe word read to provide a speedup. -{ - memchr-value4 - Memcheck:Value4 - fun:rpl_memchr -} -{ - memchr-value8 - Memcheck:Value8 - fun:rpl_memchr -} diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/mempcpy.c b/thirdparty/grub-2.04/grub-core/lib/gnulib/mempcpy.c deleted file mode 100644 index d0220e10f..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/mempcpy.c +++ /dev/null @@ -1,28 +0,0 @@ -/* Copy memory area and return pointer after last written byte. - Copyright (C) 2003, 2007, 2009-2019 Free Software Foundation, Inc. - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3, or (at your option) - any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, see . */ - -#include - -/* Specification. */ -#include - -/* Copy N bytes of SRC to DEST, return pointer to bytes after the - last written byte. */ -void * -mempcpy (void *dest, const void *src, size_t n) -{ - return (char *) memcpy (dest, src, n) + n; -} diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/memrchr.c b/thirdparty/grub-2.04/grub-core/lib/gnulib/memrchr.c deleted file mode 100644 index 96022835c..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/memrchr.c +++ /dev/null @@ -1,161 +0,0 @@ -/* memrchr -- find the last occurrence of a byte in a memory block - - Copyright (C) 1991, 1993, 1996-1997, 1999-2000, 2003-2019 Free Software - Foundation, Inc. - - Based on strlen implementation by Torbjorn Granlund (tege@sics.se), - with help from Dan Sahlin (dan@sics.se) and - commentary by Jim Blandy (jimb@ai.mit.edu); - adaptation to memchr suggested by Dick Karpinski (dick@cca.ucsf.edu), - and implemented by Roland McGrath (roland@ai.mit.edu). - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . */ - -#if defined _LIBC -# include -#else -# include -# define reg_char char -#endif - -#include -#include - -#undef __memrchr -#ifdef _LIBC -# undef memrchr -#endif - -#ifndef weak_alias -# define __memrchr memrchr -#endif - -/* Search no more than N bytes of S for C. */ -void * -__memrchr (void const *s, int c_in, size_t n) -{ - /* On 32-bit hardware, choosing longword to be a 32-bit unsigned - long instead of a 64-bit uintmax_t tends to give better - performance. On 64-bit hardware, unsigned long is generally 64 - bits already. Change this typedef to experiment with - performance. */ - typedef unsigned long int longword; - - const unsigned char *char_ptr; - const longword *longword_ptr; - longword repeated_one; - longword repeated_c; - unsigned reg_char c; - - c = (unsigned char) c_in; - - /* Handle the last few bytes by reading one byte at a time. - Do this until CHAR_PTR is aligned on a longword boundary. */ - for (char_ptr = (const unsigned char *) s + n; - n > 0 && (size_t) char_ptr % sizeof (longword) != 0; - --n) - if (*--char_ptr == c) - return (void *) char_ptr; - - longword_ptr = (const void *) char_ptr; - - /* All these elucidatory comments refer to 4-byte longwords, - but the theory applies equally well to any size longwords. */ - - /* Compute auxiliary longword values: - repeated_one is a value which has a 1 in every byte. - repeated_c has c in every byte. */ - repeated_one = 0x01010101; - repeated_c = c | (c << 8); - repeated_c |= repeated_c << 16; - if (0xffffffffU < (longword) -1) - { - repeated_one |= repeated_one << 31 << 1; - repeated_c |= repeated_c << 31 << 1; - if (8 < sizeof (longword)) - { - size_t i; - - for (i = 64; i < sizeof (longword) * 8; i *= 2) - { - repeated_one |= repeated_one << i; - repeated_c |= repeated_c << i; - } - } - } - - /* Instead of the traditional loop which tests each byte, we will test a - longword at a time. The tricky part is testing if *any of the four* - bytes in the longword in question are equal to c. We first use an xor - with repeated_c. This reduces the task to testing whether *any of the - four* bytes in longword1 is zero. - - We compute tmp = - ((longword1 - repeated_one) & ~longword1) & (repeated_one << 7). - That is, we perform the following operations: - 1. Subtract repeated_one. - 2. & ~longword1. - 3. & a mask consisting of 0x80 in every byte. - Consider what happens in each byte: - - If a byte of longword1 is zero, step 1 and 2 transform it into 0xff, - and step 3 transforms it into 0x80. A carry can also be propagated - to more significant bytes. - - If a byte of longword1 is nonzero, let its lowest 1 bit be at - position k (0 <= k <= 7); so the lowest k bits are 0. After step 1, - the byte ends in a single bit of value 0 and k bits of value 1. - After step 2, the result is just k bits of value 1: 2^k - 1. After - step 3, the result is 0. And no carry is produced. - So, if longword1 has only non-zero bytes, tmp is zero. - Whereas if longword1 has a zero byte, call j the position of the least - significant zero byte. Then the result has a zero at positions 0, ..., - j-1 and a 0x80 at position j. We cannot predict the result at the more - significant bytes (positions j+1..3), but it does not matter since we - already have a non-zero bit at position 8*j+7. - - So, the test whether any byte in longword1 is zero is equivalent to - testing whether tmp is nonzero. */ - - while (n >= sizeof (longword)) - { - longword longword1 = *--longword_ptr ^ repeated_c; - - if ((((longword1 - repeated_one) & ~longword1) - & (repeated_one << 7)) != 0) - { - longword_ptr++; - break; - } - n -= sizeof (longword); - } - - char_ptr = (const unsigned char *) longword_ptr; - - /* At this point, we know that either n < sizeof (longword), or one of the - sizeof (longword) bytes starting at char_ptr is == c. On little-endian - machines, we could determine the first such byte without any further - memory accesses, just by looking at the tmp result from the last loop - iteration. But this does not work on big-endian machines. Choose code - that works in both cases. */ - - while (n-- > 0) - { - if (*--char_ptr == c) - return (void *) char_ptr; - } - - return NULL; -} -#ifdef weak_alias -weak_alias (__memrchr, memrchr) -#endif diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/msvc-inval.c b/thirdparty/grub-2.04/grub-core/lib/gnulib/msvc-inval.c deleted file mode 100644 index 75b5a070a..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/msvc-inval.c +++ /dev/null @@ -1,129 +0,0 @@ -/* Invalid parameter handler for MSVC runtime libraries. - Copyright (C) 2011-2019 Free Software Foundation, Inc. - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3, or (at your option) - any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License along - with this program; if not, see . */ - -#include - -/* Specification. */ -#include "msvc-inval.h" - -#if HAVE_MSVC_INVALID_PARAMETER_HANDLER \ - && !(MSVC_INVALID_PARAMETER_HANDLING == SANE_LIBRARY_HANDLING) - -/* Get _invalid_parameter_handler type and _set_invalid_parameter_handler - declaration. */ -# include - -# if MSVC_INVALID_PARAMETER_HANDLING == DEFAULT_HANDLING - -static void __cdecl -gl_msvc_invalid_parameter_handler (const wchar_t *expression, - const wchar_t *function, - const wchar_t *file, - unsigned int line, - uintptr_t dummy) -{ -} - -# else - -/* Get declarations of the native Windows API functions. */ -# define WIN32_LEAN_AND_MEAN -# include - -# if defined _MSC_VER - -static void __cdecl -gl_msvc_invalid_parameter_handler (const wchar_t *expression, - const wchar_t *function, - const wchar_t *file, - unsigned int line, - uintptr_t dummy) -{ - RaiseException (STATUS_GNULIB_INVALID_PARAMETER, 0, 0, NULL); -} - -# else - -/* An index to thread-local storage. */ -static DWORD tls_index; -static int tls_initialized /* = 0 */; - -/* Used as a fallback only. */ -static struct gl_msvc_inval_per_thread not_per_thread; - -struct gl_msvc_inval_per_thread * -gl_msvc_inval_current (void) -{ - if (!tls_initialized) - { - tls_index = TlsAlloc (); - tls_initialized = 1; - } - if (tls_index == TLS_OUT_OF_INDEXES) - /* TlsAlloc had failed. */ - return ¬_per_thread; - else - { - struct gl_msvc_inval_per_thread *pointer = - (struct gl_msvc_inval_per_thread *) TlsGetValue (tls_index); - if (pointer == NULL) - { - /* First call. Allocate a new 'struct gl_msvc_inval_per_thread'. */ - pointer = - (struct gl_msvc_inval_per_thread *) - malloc (sizeof (struct gl_msvc_inval_per_thread)); - if (pointer == NULL) - /* Could not allocate memory. Use the global storage. */ - pointer = ¬_per_thread; - TlsSetValue (tls_index, pointer); - } - return pointer; - } -} - -static void __cdecl -gl_msvc_invalid_parameter_handler (const wchar_t *expression, - const wchar_t *function, - const wchar_t *file, - unsigned int line, - uintptr_t dummy) -{ - struct gl_msvc_inval_per_thread *current = gl_msvc_inval_current (); - if (current->restart_valid) - longjmp (current->restart, 1); - else - /* An invalid parameter notification from outside the gnulib code. - Give the caller a chance to intervene. */ - RaiseException (STATUS_GNULIB_INVALID_PARAMETER, 0, 0, NULL); -} - -# endif - -# endif - -static int gl_msvc_inval_initialized /* = 0 */; - -void -gl_msvc_inval_ensure_handler (void) -{ - if (gl_msvc_inval_initialized == 0) - { - _set_invalid_parameter_handler (gl_msvc_invalid_parameter_handler); - gl_msvc_inval_initialized = 1; - } -} - -#endif diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/msvc-inval.h b/thirdparty/grub-2.04/grub-core/lib/gnulib/msvc-inval.h deleted file mode 100644 index e31cf6509..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/msvc-inval.h +++ /dev/null @@ -1,222 +0,0 @@ -/* Invalid parameter handler for MSVC runtime libraries. - Copyright (C) 2011-2019 Free Software Foundation, Inc. - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3, or (at your option) - any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License along - with this program; if not, see . */ - -#ifndef _MSVC_INVAL_H -#define _MSVC_INVAL_H - -/* With MSVC runtime libraries with the "invalid parameter handler" concept, - functions like fprintf(), dup2(), or close() crash when the caller passes - an invalid argument. But POSIX wants error codes (such as EINVAL or EBADF) - instead. - This file defines macros that turn such an invalid parameter notification - into a non-local exit. An error code can then be produced at the target - of this exit. You can thus write code like - - TRY_MSVC_INVAL - { - - } - CATCH_MSVC_INVAL - { - - } - DONE_MSVC_INVAL; - - This entire block expands to a single statement. - - The handling of invalid parameters can be done in three ways: - - * The default way, which is reasonable for programs (not libraries): - AC_DEFINE([MSVC_INVALID_PARAMETER_HANDLING], [DEFAULT_HANDLING]) - - * The way for libraries that make "hairy" calls (like close(-1), or - fclose(fp) where fileno(fp) is closed, or simply getdtablesize()): - AC_DEFINE([MSVC_INVALID_PARAMETER_HANDLING], [HAIRY_LIBRARY_HANDLING]) - - * The way for libraries that make no "hairy" calls: - AC_DEFINE([MSVC_INVALID_PARAMETER_HANDLING], [SANE_LIBRARY_HANDLING]) - */ - -#define DEFAULT_HANDLING 0 -#define HAIRY_LIBRARY_HANDLING 1 -#define SANE_LIBRARY_HANDLING 2 - -#if HAVE_MSVC_INVALID_PARAMETER_HANDLER \ - && !(MSVC_INVALID_PARAMETER_HANDLING == SANE_LIBRARY_HANDLING) -/* A native Windows platform with the "invalid parameter handler" concept, - and either DEFAULT_HANDLING or HAIRY_LIBRARY_HANDLING. */ - -# if MSVC_INVALID_PARAMETER_HANDLING == DEFAULT_HANDLING -/* Default handling. */ - -# ifdef __cplusplus -extern "C" { -# endif - -/* Ensure that the invalid parameter handler in installed that just returns. - Because we assume no other part of the program installs a different - invalid parameter handler, this solution is multithread-safe. */ -extern void gl_msvc_inval_ensure_handler (void); - -# ifdef __cplusplus -} -# endif - -# define TRY_MSVC_INVAL \ - do \ - { \ - gl_msvc_inval_ensure_handler (); \ - if (1) -# define CATCH_MSVC_INVAL \ - else -# define DONE_MSVC_INVAL \ - } \ - while (0) - -# else -/* Handling for hairy libraries. */ - -# include - -/* Gnulib can define its own status codes, as described in the page - "Raising Software Exceptions" on microsoft.com - . - Our status codes are composed of - - 0xE0000000, mandatory for all user-defined status codes, - - 0x474E550, a API identifier ("GNU"), - - 0, 1, 2, ..., used to distinguish different status codes from the - same API. */ -# define STATUS_GNULIB_INVALID_PARAMETER (0xE0000000 + 0x474E550 + 0) - -# if defined _MSC_VER -/* A compiler that supports __try/__except, as described in the page - "try-except statement" on microsoft.com - . - With __try/__except, we can use the multithread-safe exception handling. */ - -# ifdef __cplusplus -extern "C" { -# endif - -/* Ensure that the invalid parameter handler in installed that raises a - software exception with code STATUS_GNULIB_INVALID_PARAMETER. - Because we assume no other part of the program installs a different - invalid parameter handler, this solution is multithread-safe. */ -extern void gl_msvc_inval_ensure_handler (void); - -# ifdef __cplusplus -} -# endif - -# define TRY_MSVC_INVAL \ - do \ - { \ - gl_msvc_inval_ensure_handler (); \ - __try -# define CATCH_MSVC_INVAL \ - __except (GetExceptionCode () == STATUS_GNULIB_INVALID_PARAMETER \ - ? EXCEPTION_EXECUTE_HANDLER \ - : EXCEPTION_CONTINUE_SEARCH) -# define DONE_MSVC_INVAL \ - } \ - while (0) - -# else -/* Any compiler. - We can only use setjmp/longjmp. */ - -# include - -# ifdef __cplusplus -extern "C" { -# endif - -struct gl_msvc_inval_per_thread -{ - /* The restart that will resume execution at the code between - CATCH_MSVC_INVAL and DONE_MSVC_INVAL. It is enabled only between - TRY_MSVC_INVAL and CATCH_MSVC_INVAL. */ - jmp_buf restart; - - /* Tells whether the contents of restart is valid. */ - int restart_valid; -}; - -/* Ensure that the invalid parameter handler in installed that passes - control to the gl_msvc_inval_restart if it is valid, or raises a - software exception with code STATUS_GNULIB_INVALID_PARAMETER otherwise. - Because we assume no other part of the program installs a different - invalid parameter handler, this solution is multithread-safe. */ -extern void gl_msvc_inval_ensure_handler (void); - -/* Return a pointer to the per-thread data for the current thread. */ -extern struct gl_msvc_inval_per_thread *gl_msvc_inval_current (void); - -# ifdef __cplusplus -} -# endif - -# define TRY_MSVC_INVAL \ - do \ - { \ - struct gl_msvc_inval_per_thread *msvc_inval_current; \ - gl_msvc_inval_ensure_handler (); \ - msvc_inval_current = gl_msvc_inval_current (); \ - /* First, initialize gl_msvc_inval_restart. */ \ - if (setjmp (msvc_inval_current->restart) == 0) \ - { \ - /* Then, mark it as valid. */ \ - msvc_inval_current->restart_valid = 1; -# define CATCH_MSVC_INVAL \ - /* Execution completed. \ - Mark gl_msvc_inval_restart as invalid. */ \ - msvc_inval_current->restart_valid = 0; \ - } \ - else \ - { \ - /* Execution triggered an invalid parameter notification. \ - Mark gl_msvc_inval_restart as invalid. */ \ - msvc_inval_current->restart_valid = 0; -# define DONE_MSVC_INVAL \ - } \ - } \ - while (0) - -# endif - -# endif - -#else -/* A platform that does not need to the invalid parameter handler, - or when SANE_LIBRARY_HANDLING is desired. */ - -/* The braces here avoid GCC warnings like - "warning: suggest explicit braces to avoid ambiguous 'else'". */ -# define TRY_MSVC_INVAL \ - do \ - { \ - if (1) -# define CATCH_MSVC_INVAL \ - else -# define DONE_MSVC_INVAL \ - } \ - while (0) - -#endif - -#endif /* _MSVC_INVAL_H */ diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/msvc-nothrow.c b/thirdparty/grub-2.04/grub-core/lib/gnulib/msvc-nothrow.c deleted file mode 100644 index 49b709ca4..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/msvc-nothrow.c +++ /dev/null @@ -1,51 +0,0 @@ -/* Wrappers that don't throw invalid parameter notifications - with MSVC runtime libraries. - Copyright (C) 2011-2019 Free Software Foundation, Inc. - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3, or (at your option) - any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License along - with this program; if not, see . */ - -#include - -/* Specification. */ -#include "msvc-nothrow.h" - -/* Get declarations of the native Windows API functions. */ -#define WIN32_LEAN_AND_MEAN -#include - -#if HAVE_MSVC_INVALID_PARAMETER_HANDLER -# include "msvc-inval.h" -#endif - -#undef _get_osfhandle - -#if HAVE_MSVC_INVALID_PARAMETER_HANDLER -intptr_t -_gl_nothrow_get_osfhandle (int fd) -{ - intptr_t result; - - TRY_MSVC_INVAL - { - result = _get_osfhandle (fd); - } - CATCH_MSVC_INVAL - { - result = (intptr_t) INVALID_HANDLE_VALUE; - } - DONE_MSVC_INVAL; - - return result; -} -#endif diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/msvc-nothrow.h b/thirdparty/grub-2.04/grub-core/lib/gnulib/msvc-nothrow.h deleted file mode 100644 index 8d3ca7892..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/msvc-nothrow.h +++ /dev/null @@ -1,43 +0,0 @@ -/* Wrappers that don't throw invalid parameter notifications - with MSVC runtime libraries. - Copyright (C) 2011-2019 Free Software Foundation, Inc. - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3, or (at your option) - any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License along - with this program; if not, see . */ - -#ifndef _MSVC_NOTHROW_H -#define _MSVC_NOTHROW_H - -/* With MSVC runtime libraries with the "invalid parameter handler" concept, - functions like fprintf(), dup2(), or close() crash when the caller passes - an invalid argument. But POSIX wants error codes (such as EINVAL or EBADF) - instead. - This file defines wrappers that turn such an invalid parameter notification - into an error code. */ - -#if defined _WIN32 && ! defined __CYGWIN__ - -/* Get original declaration of _get_osfhandle. */ -# include - -# if HAVE_MSVC_INVALID_PARAMETER_HANDLER - -/* Override _get_osfhandle. */ -extern intptr_t _gl_nothrow_get_osfhandle (int fd); -# define _get_osfhandle _gl_nothrow_get_osfhandle - -# endif - -#endif - -#endif /* _MSVC_NOTHROW_H */ diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/nl_langinfo.c b/thirdparty/grub-2.04/grub-core/lib/gnulib/nl_langinfo.c deleted file mode 100644 index e8a5595ae..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/nl_langinfo.c +++ /dev/null @@ -1,366 +0,0 @@ -/* nl_langinfo() replacement: query locale dependent information. - - Copyright (C) 2007-2019 Free Software Foundation, Inc. - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . */ - -#include - -/* Specification. */ -#include - -#include -#include -#if defined _WIN32 && ! defined __CYGWIN__ -# define WIN32_LEAN_AND_MEAN /* avoid including junk */ -# include -# include -#endif - -#if !REPLACE_NL_LANGINFO || GNULIB_defined_CODESET -/* Return the codeset of the current locale, if this is easily deducible. - Otherwise, return "". */ -static char * -ctype_codeset (void) -{ - static char buf[2 + 10 + 1]; - char const *locale = setlocale (LC_CTYPE, NULL); - char *codeset = buf; - size_t codesetlen; - codeset[0] = '\0'; - - if (locale && locale[0]) - { - /* If the locale name contains an encoding after the dot, return it. */ - char *dot = strchr (locale, '.'); - - if (dot) - { - /* Look for the possible @... trailer and remove it, if any. */ - char *codeset_start = dot + 1; - char const *modifier = strchr (codeset_start, '@'); - - if (! modifier) - codeset = codeset_start; - else - { - codesetlen = modifier - codeset_start; - if (codesetlen < sizeof buf) - { - codeset = memcpy (buf, codeset_start, codesetlen); - codeset[codesetlen] = '\0'; - } - } - } - } - -# if defined _WIN32 && ! defined __CYGWIN__ - /* If setlocale is successful, it returns the number of the - codepage, as a string. Otherwise, fall back on Windows API - GetACP, which returns the locale's codepage as a number (although - this doesn't change according to what the 'setlocale' call specified). - Either way, prepend "CP" to make it a valid codeset name. */ - codesetlen = strlen (codeset); - if (0 < codesetlen && codesetlen < sizeof buf - 2) - memmove (buf + 2, codeset, codesetlen + 1); - else - sprintf (buf + 2, "%u", GetACP ()); - codeset = memcpy (buf, "CP", 2); -# endif - return codeset; -} -#endif - - -#if REPLACE_NL_LANGINFO - -/* Override nl_langinfo with support for added nl_item values. */ - -# undef nl_langinfo - -char * -rpl_nl_langinfo (nl_item item) -{ - switch (item) - { -# if GNULIB_defined_CODESET - case CODESET: - return ctype_codeset (); -# endif -# if GNULIB_defined_T_FMT_AMPM - case T_FMT_AMPM: - return (char *) "%I:%M:%S %p"; -# endif -# if GNULIB_defined_ALTMON - case ALTMON_1: - case ALTMON_2: - case ALTMON_3: - case ALTMON_4: - case ALTMON_5: - case ALTMON_6: - case ALTMON_7: - case ALTMON_8: - case ALTMON_9: - case ALTMON_10: - case ALTMON_11: - case ALTMON_12: - /* We don't ship the appropriate localizations with gnulib. Therefore, - treat ALTMON_i like MON_i. */ - item = item - ALTMON_1 + MON_1; - break; -# endif -# if GNULIB_defined_ERA - case ERA: - /* The format is not standardized. In glibc it is a sequence of strings - of the form "direction:offset:start_date:end_date:era_name:era_format" - with an empty string at the end. */ - return (char *) ""; - case ERA_D_FMT: - /* The %Ex conversion in strftime behaves like %x if the locale does not - have an alternative time format. */ - item = D_FMT; - break; - case ERA_D_T_FMT: - /* The %Ec conversion in strftime behaves like %c if the locale does not - have an alternative time format. */ - item = D_T_FMT; - break; - case ERA_T_FMT: - /* The %EX conversion in strftime behaves like %X if the locale does not - have an alternative time format. */ - item = T_FMT; - break; - case ALT_DIGITS: - /* The format is not standardized. In glibc it is a sequence of 10 - strings, appended in memory. */ - return (char *) "\0\0\0\0\0\0\0\0\0\0"; -# endif -# if GNULIB_defined_YESEXPR || !FUNC_NL_LANGINFO_YESEXPR_WORKS - case YESEXPR: - return (char *) "^[yY]"; - case NOEXPR: - return (char *) "^[nN]"; -# endif - default: - break; - } - return nl_langinfo (item); -} - -#else - -/* Provide nl_langinfo from scratch, either for native MS-Windows, or - for old Unix platforms without locales, such as Linux libc5 or - BeOS. */ - -# include - -char * -nl_langinfo (nl_item item) -{ - static char nlbuf[100]; - struct tm tmm = { 0 }; - - switch (item) - { - /* nl_langinfo items of the LC_CTYPE category */ - case CODESET: - { - char *codeset = ctype_codeset (); - if (*codeset) - return codeset; - } -# ifdef __BEOS__ - return (char *) "UTF-8"; -# else - return (char *) "ISO-8859-1"; -# endif - /* nl_langinfo items of the LC_NUMERIC category */ - case RADIXCHAR: - return localeconv () ->decimal_point; - case THOUSEP: - return localeconv () ->thousands_sep; -# ifdef GROUPING - case GROUPING: - return localeconv () ->grouping; -# endif - /* nl_langinfo items of the LC_TIME category. - TODO: Really use the locale. */ - case D_T_FMT: - case ERA_D_T_FMT: - return (char *) "%a %b %e %H:%M:%S %Y"; - case D_FMT: - case ERA_D_FMT: - return (char *) "%m/%d/%y"; - case T_FMT: - case ERA_T_FMT: - return (char *) "%H:%M:%S"; - case T_FMT_AMPM: - return (char *) "%I:%M:%S %p"; - case AM_STR: - if (!strftime (nlbuf, sizeof nlbuf, "%p", &tmm)) - return (char *) "AM"; - return nlbuf; - case PM_STR: - tmm.tm_hour = 12; - if (!strftime (nlbuf, sizeof nlbuf, "%p", &tmm)) - return (char *) "PM"; - return nlbuf; - case DAY_1: - case DAY_2: - case DAY_3: - case DAY_4: - case DAY_5: - case DAY_6: - case DAY_7: - { - static char const days[][sizeof "Wednesday"] = { - "Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", - "Friday", "Saturday" - }; - tmm.tm_wday = item - DAY_1; - if (!strftime (nlbuf, sizeof nlbuf, "%A", &tmm)) - return (char *) days[item - DAY_1]; - return nlbuf; - } - case ABDAY_1: - case ABDAY_2: - case ABDAY_3: - case ABDAY_4: - case ABDAY_5: - case ABDAY_6: - case ABDAY_7: - { - static char const abdays[][sizeof "Sun"] = { - "Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat" - }; - tmm.tm_wday = item - ABDAY_1; - if (!strftime (nlbuf, sizeof nlbuf, "%a", &tmm)) - return (char *) abdays[item - ABDAY_1]; - return nlbuf; - } - { - static char const months[][sizeof "September"] = { - "January", "February", "March", "April", "May", "June", "July", - "September", "October", "November", "December" - }; - case MON_1: - case MON_2: - case MON_3: - case MON_4: - case MON_5: - case MON_6: - case MON_7: - case MON_8: - case MON_9: - case MON_10: - case MON_11: - case MON_12: - tmm.tm_mon = item - MON_1; - if (!strftime (nlbuf, sizeof nlbuf, "%B", &tmm)) - return (char *) months[item - MON_1]; - return nlbuf; - case ALTMON_1: - case ALTMON_2: - case ALTMON_3: - case ALTMON_4: - case ALTMON_5: - case ALTMON_6: - case ALTMON_7: - case ALTMON_8: - case ALTMON_9: - case ALTMON_10: - case ALTMON_11: - case ALTMON_12: - tmm.tm_mon = item - ALTMON_1; - /* The platforms without nl_langinfo() don't support strftime with %OB. - We don't even need to try. */ - #if 0 - if (!strftime (nlbuf, sizeof nlbuf, "%OB", &tmm)) - #endif - if (!strftime (nlbuf, sizeof nlbuf, "%B", &tmm)) - return (char *) months[item - ALTMON_1]; - return nlbuf; - } - case ABMON_1: - case ABMON_2: - case ABMON_3: - case ABMON_4: - case ABMON_5: - case ABMON_6: - case ABMON_7: - case ABMON_8: - case ABMON_9: - case ABMON_10: - case ABMON_11: - case ABMON_12: - { - static char const abmonths[][sizeof "Jan"] = { - "Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", - "Sep", "Oct", "Nov", "Dec" - }; - tmm.tm_mon = item - ABMON_1; - if (!strftime (nlbuf, sizeof nlbuf, "%b", &tmm)) - return (char *) abmonths[item - ABMON_1]; - return nlbuf; - } - case ERA: - return (char *) ""; - case ALT_DIGITS: - return (char *) "\0\0\0\0\0\0\0\0\0\0"; - /* nl_langinfo items of the LC_MONETARY category. */ - case CRNCYSTR: - return localeconv () ->currency_symbol; -# ifdef INT_CURR_SYMBOL - case INT_CURR_SYMBOL: - return localeconv () ->int_curr_symbol; - case MON_DECIMAL_POINT: - return localeconv () ->mon_decimal_point; - case MON_THOUSANDS_SEP: - return localeconv () ->mon_thousands_sep; - case MON_GROUPING: - return localeconv () ->mon_grouping; - case POSITIVE_SIGN: - return localeconv () ->positive_sign; - case NEGATIVE_SIGN: - return localeconv () ->negative_sign; - case FRAC_DIGITS: - return & localeconv () ->frac_digits; - case INT_FRAC_DIGITS: - return & localeconv () ->int_frac_digits; - case P_CS_PRECEDES: - return & localeconv () ->p_cs_precedes; - case N_CS_PRECEDES: - return & localeconv () ->n_cs_precedes; - case P_SEP_BY_SPACE: - return & localeconv () ->p_sep_by_space; - case N_SEP_BY_SPACE: - return & localeconv () ->n_sep_by_space; - case P_SIGN_POSN: - return & localeconv () ->p_sign_posn; - case N_SIGN_POSN: - return & localeconv () ->n_sign_posn; -# endif - /* nl_langinfo items of the LC_MESSAGES category - TODO: Really use the locale. */ - case YESEXPR: - return (char *) "^[yY]"; - case NOEXPR: - return (char *) "^[nN]"; - default: - return (char *) ""; - } -} - -#endif diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/open.c b/thirdparty/grub-2.04/grub-core/lib/gnulib/open.c deleted file mode 100644 index 655260572..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/open.c +++ /dev/null @@ -1,208 +0,0 @@ -/* Open a descriptor to a file. - Copyright (C) 2007-2019 Free Software Foundation, Inc. - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . */ - -/* Written by Bruno Haible , 2007. */ - -/* If the user's config.h happens to include , let it include only - the system's here, so that orig_open doesn't recurse to - rpl_open. */ -#define __need_system_fcntl_h -#include - -/* Get the original definition of open. It might be defined as a macro. */ -#include -#include -#undef __need_system_fcntl_h - -static int -orig_open (const char *filename, int flags, mode_t mode) -{ - return open (filename, flags, mode); -} - -/* Specification. */ -/* Write "fcntl.h" here, not , otherwise OSF/1 5.1 DTK cc eliminates - this include because of the preliminary #include above. */ -#include "fcntl.h" - -#include "cloexec.h" - -#include -#include -#include -#include -#include -#include - -#ifndef REPLACE_OPEN_DIRECTORY -# define REPLACE_OPEN_DIRECTORY 0 -#endif - -int -open (const char *filename, int flags, ...) -{ - /* 0 = unknown, 1 = yes, -1 = no. */ -#if GNULIB_defined_O_CLOEXEC - int have_cloexec = -1; -#else - static int have_cloexec; -#endif - - mode_t mode; - int fd; - - mode = 0; - if (flags & O_CREAT) - { - va_list arg; - va_start (arg, flags); - - /* We have to use PROMOTED_MODE_T instead of mode_t, otherwise GCC 4 - creates crashing code when 'mode_t' is smaller than 'int'. */ - mode = va_arg (arg, PROMOTED_MODE_T); - - va_end (arg); - } - -#if GNULIB_defined_O_NONBLOCK - /* The only known platform that lacks O_NONBLOCK is mingw, but it - also lacks named pipes and Unix sockets, which are the only two - file types that require non-blocking handling in open(). - Therefore, it is safe to ignore O_NONBLOCK here. It is handy - that mingw also lacks openat(), so that is also covered here. */ - flags &= ~O_NONBLOCK; -#endif - -#if defined _WIN32 && ! defined __CYGWIN__ - if (strcmp (filename, "/dev/null") == 0) - filename = "NUL"; -#endif - -#if OPEN_TRAILING_SLASH_BUG - /* If the filename ends in a slash and one of O_CREAT, O_WRONLY, O_RDWR - is specified, then fail. - Rationale: POSIX - says that - "A pathname that contains at least one non-slash character and that - ends with one or more trailing slashes shall be resolved as if a - single dot character ( '.' ) were appended to the pathname." - and - "The special filename dot shall refer to the directory specified by - its predecessor." - If the named file already exists as a directory, then - - if O_CREAT is specified, open() must fail because of the semantics - of O_CREAT, - - if O_WRONLY or O_RDWR is specified, open() must fail because POSIX - says that it - fails with errno = EISDIR in this case. - If the named file does not exist or does not name a directory, then - - if O_CREAT is specified, open() must fail since open() cannot create - directories, - - if O_WRONLY or O_RDWR is specified, open() must fail because the - file does not contain a '.' directory. */ - if (flags & (O_CREAT | O_WRONLY | O_RDWR)) - { - size_t len = strlen (filename); - if (len > 0 && filename[len - 1] == '/') - { - errno = EISDIR; - return -1; - } - } -#endif - - fd = orig_open (filename, - flags & ~(have_cloexec <= 0 ? O_CLOEXEC : 0), mode); - - if (flags & O_CLOEXEC) - { - if (! have_cloexec) - { - if (0 <= fd) - have_cloexec = 1; - else if (errno == EINVAL) - { - fd = orig_open (filename, flags & ~O_CLOEXEC, mode); - have_cloexec = -1; - } - } - if (have_cloexec < 0 && 0 <= fd) - set_cloexec_flag (fd, true); - } - - -#if REPLACE_FCHDIR - /* Implementing fchdir and fdopendir requires the ability to open a - directory file descriptor. If open doesn't support that (as on - mingw), we use a dummy file that behaves the same as directories - on Linux (ie. always reports EOF on attempts to read()), and - override fstat() in fchdir.c to hide the fact that we have a - dummy. */ - if (REPLACE_OPEN_DIRECTORY && fd < 0 && errno == EACCES - && ((flags & O_ACCMODE) == O_RDONLY - || (O_SEARCH != O_RDONLY && (flags & O_ACCMODE) == O_SEARCH))) - { - struct stat statbuf; - if (stat (filename, &statbuf) == 0 && S_ISDIR (statbuf.st_mode)) - { - /* Maximum recursion depth of 1. */ - fd = open ("/dev/null", flags, mode); - if (0 <= fd) - fd = _gl_register_fd (fd, filename); - } - else - errno = EACCES; - } -#endif - -#if OPEN_TRAILING_SLASH_BUG - /* If the filename ends in a slash and fd does not refer to a directory, - then fail. - Rationale: POSIX - says that - "A pathname that contains at least one non-slash character and that - ends with one or more trailing slashes shall be resolved as if a - single dot character ( '.' ) were appended to the pathname." - and - "The special filename dot shall refer to the directory specified by - its predecessor." - If the named file without the slash is not a directory, open() must fail - with ENOTDIR. */ - if (fd >= 0) - { - /* We know len is positive, since open did not fail with ENOENT. */ - size_t len = strlen (filename); - if (filename[len - 1] == '/') - { - struct stat statbuf; - - if (fstat (fd, &statbuf) >= 0 && !S_ISDIR (statbuf.st_mode)) - { - close (fd); - errno = ENOTDIR; - return -1; - } - } - } -#endif - -#if REPLACE_FCHDIR - if (!REPLACE_OPEN_DIRECTORY && 0 <= fd) - fd = _gl_register_fd (fd, filename); -#endif - - return fd; -} diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/openat-die.c b/thirdparty/grub-2.04/grub-core/lib/gnulib/openat-die.c deleted file mode 100644 index 690c447af..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/openat-die.c +++ /dev/null @@ -1,62 +0,0 @@ -/* Report a save- or restore-cwd failure in our openat replacement and then exit. - - Copyright (C) 2005-2006, 2008-2019 Free Software Foundation, Inc. - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . */ - -#include - -#include "openat.h" - -#include - -#ifndef GNULIB_LIBPOSIX -# include "error.h" -#endif - -#include "exitfail.h" - -#include "gettext.h" -#define _(msgid) gettext (msgid) - -_Noreturn void -openat_save_fail (int errnum) -{ -#ifndef GNULIB_LIBPOSIX - error (exit_failure, errnum, - _("unable to record current working directory")); -#endif - /* _Noreturn cannot be applied to error, since it returns - when its first argument is 0. To help compilers understand that this - function does not return, call abort. Also, the abort is a - safety feature if exit_failure is 0 (which shouldn't happen). */ - abort (); -} - - -/* Exit with an error about failure to restore the working directory - during an openat emulation. The caller must ensure that fd 2 is - not a just-opened fd, even when openat_safer is not in use. */ - -_Noreturn void -openat_restore_fail (int errnum) -{ -#ifndef GNULIB_LIBPOSIX - error (exit_failure, errnum, - _("failed to return to initial working directory")); -#endif - - /* As above. */ - abort (); -} diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/openat-priv.h b/thirdparty/grub-2.04/grub-core/lib/gnulib/openat-priv.h deleted file mode 100644 index 7b90eefa4..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/openat-priv.h +++ /dev/null @@ -1,64 +0,0 @@ -/* Internals for openat-like functions. - - Copyright (C) 2005-2006, 2009-2019 Free Software Foundation, Inc. - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . */ - -/* written by Jim Meyering */ - -#ifndef _GL_HEADER_OPENAT_PRIV -#define _GL_HEADER_OPENAT_PRIV - -#include -#include -#include - -/* Maximum number of bytes that it is safe to allocate as a single - array on the stack, and that is known as a compile-time constant. - The assumption is that we'll touch the array very quickly, or a - temporary very near the array, provoking an out-of-memory trap. On - some operating systems, there is only one guard page for the stack, - and a page size can be as small as 4096 bytes. Subtract 64 in the - hope that this will let the compiler touch a nearby temporary and - provoke a trap. */ -#define SAFER_ALLOCA_MAX (4096 - 64) - -#define SAFER_ALLOCA(m) ((m) < SAFER_ALLOCA_MAX ? (m) : SAFER_ALLOCA_MAX) - -#if defined PATH_MAX -# define OPENAT_BUFFER_SIZE SAFER_ALLOCA (PATH_MAX) -#elif defined _XOPEN_PATH_MAX -# define OPENAT_BUFFER_SIZE SAFER_ALLOCA (_XOPEN_PATH_MAX) -#else -# define OPENAT_BUFFER_SIZE SAFER_ALLOCA (1024) -#endif - -char *openat_proc_name (char buf[OPENAT_BUFFER_SIZE], int fd, char const *file); - -/* Trying to access a BUILD_PROC_NAME file will fail on systems without - /proc support, and even on systems *with* ProcFS support. Return - nonzero if the failure may be legitimate, e.g., because /proc is not - readable, or the particular .../fd/N directory is not present. */ -#define EXPECTED_ERRNO(Errno) \ - ((Errno) == ENOTDIR || (Errno) == ENOENT \ - || (Errno) == EPERM || (Errno) == EACCES \ - || (Errno) == ENOSYS /* Solaris 8 */ \ - || (Errno) == EOPNOTSUPP /* FreeBSD */) - -/* Wrapper function shared among linkat and renameat. */ -int at_func2 (int fd1, char const *file1, - int fd2, char const *file2, - int (*func) (char const *file1, char const *file2)); - -#endif /* _GL_HEADER_OPENAT_PRIV */ diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/openat-proc.c b/thirdparty/grub-2.04/grub-core/lib/gnulib/openat-proc.c deleted file mode 100644 index da76e2b39..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/openat-proc.c +++ /dev/null @@ -1,134 +0,0 @@ -/* Create /proc/self/fd-related names for subfiles of open directories. - - Copyright (C) 2006, 2009-2019 Free Software Foundation, Inc. - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . */ - -/* Written by Paul Eggert. */ - -#include - -#include "openat-priv.h" - -#include -#include -#include - -#include -#include -#include -#include - -#ifdef __KLIBC__ -# include -#endif - -#include "intprops.h" - -/* Set BUF to the name of the subfile of the directory identified by - FD, where the subfile is named FILE. If successful, return BUF if - the result fits in BUF, dynamically allocated memory otherwise. - Return NULL (setting errno) on error. */ -char * -openat_proc_name (char buf[OPENAT_BUFFER_SIZE], int fd, char const *file) -{ - char *result = buf; - int dirlen; - - /* Make sure the caller gets ENOENT when appropriate. */ - if (!*file) - { - buf[0] = '\0'; - return buf; - } - -#ifndef __KLIBC__ -# define PROC_SELF_FD_FORMAT "/proc/self/fd/%d/" - { - enum { - PROC_SELF_FD_DIR_SIZE_BOUND - = (sizeof PROC_SELF_FD_FORMAT - (sizeof "%d" - 1) - + INT_STRLEN_BOUND (int)) - }; - - static int proc_status = 0; - if (! proc_status) - { - /* Set PROC_STATUS to a positive value if /proc/self/fd is - reliable, and a negative value otherwise. Solaris 10 - /proc/self/fd mishandles "..", and any file name might expand - to ".." after symbolic link expansion, so avoid /proc/self/fd - if it mishandles "..". Solaris 10 has openat, but this - problem is exhibited on code that built on Solaris 8 and - running on Solaris 10. */ - - int proc_self_fd = open ("/proc/self/fd", - O_SEARCH | O_DIRECTORY | O_NOCTTY | O_NONBLOCK); - if (proc_self_fd < 0) - proc_status = -1; - else - { - /* Detect whether /proc/self/fd/%i/../fd exists, where %i is the - number of a file descriptor open on /proc/self/fd. On Linux, - that name resolves to /proc/self/fd, which was opened above. - However, on Solaris, it may resolve to /proc/self/fd/fd, which - cannot exist, since all names in /proc/self/fd are numeric. */ - char dotdot_buf[PROC_SELF_FD_DIR_SIZE_BOUND + sizeof "../fd" - 1]; - sprintf (dotdot_buf, PROC_SELF_FD_FORMAT "../fd", proc_self_fd); - proc_status = access (dotdot_buf, F_OK) ? -1 : 1; - close (proc_self_fd); - } - } - - if (proc_status < 0) - return NULL; - else - { - size_t bufsize = PROC_SELF_FD_DIR_SIZE_BOUND + strlen (file); - if (OPENAT_BUFFER_SIZE < bufsize) - { - result = malloc (bufsize); - if (! result) - return NULL; - } - - dirlen = sprintf (result, PROC_SELF_FD_FORMAT, fd); - } - } -#else - /* OS/2 kLIBC provides a function to retrieve a path from a fd. */ - { - char dir[_MAX_PATH]; - size_t bufsize; - - if (__libc_Back_ioFHToPath (fd, dir, sizeof dir)) - return NULL; - - dirlen = strlen (dir); - bufsize = dirlen + 1 + strlen (file) + 1; /* 1 for '/', 1 for null */ - if (OPENAT_BUFFER_SIZE < bufsize) - { - result = malloc (bufsize); - if (! result) - return NULL; - } - - strcpy (result, dir); - result[dirlen++] = '/'; - } -#endif - - strcpy (result + dirlen, file); - return result; -} diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/openat.c b/thirdparty/grub-2.04/grub-core/lib/gnulib/openat.c deleted file mode 100644 index 4ab4a318d..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/openat.c +++ /dev/null @@ -1,314 +0,0 @@ -/* provide a replacement openat function - Copyright (C) 2004-2019 Free Software Foundation, Inc. - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . */ - -/* written by Jim Meyering */ - -/* If the user's config.h happens to include , let it include only - the system's here, so that orig_openat doesn't recurse to - rpl_openat. */ -#define __need_system_fcntl_h -#include - -/* Get the original definition of open. It might be defined as a macro. */ -#include -#include -#undef __need_system_fcntl_h - -#if HAVE_OPENAT -static int -orig_openat (int fd, char const *filename, int flags, mode_t mode) -{ - return openat (fd, filename, flags, mode); -} -#endif - -/* Write "fcntl.h" here, not , otherwise OSF/1 5.1 DTK cc eliminates - this include because of the preliminary #include above. */ -#include "fcntl.h" - -#include "openat.h" - -#include "cloexec.h" - -#include -#include -#include -#include -#include -#include - -#if HAVE_OPENAT - -/* Like openat, but support O_CLOEXEC and work around Solaris 9 bugs - with trailing slash. */ -int -rpl_openat (int dfd, char const *filename, int flags, ...) -{ - /* 0 = unknown, 1 = yes, -1 = no. */ -#if GNULIB_defined_O_CLOEXEC - int have_cloexec = -1; -#else - static int have_cloexec; -#endif - - mode_t mode; - int fd; - - mode = 0; - if (flags & O_CREAT) - { - va_list arg; - va_start (arg, flags); - - /* We have to use PROMOTED_MODE_T instead of mode_t, otherwise GCC 4 - creates crashing code when 'mode_t' is smaller than 'int'. */ - mode = va_arg (arg, PROMOTED_MODE_T); - - va_end (arg); - } - -# if OPEN_TRAILING_SLASH_BUG - /* If the filename ends in a slash and one of O_CREAT, O_WRONLY, O_RDWR - is specified, then fail. - Rationale: POSIX - says that - "A pathname that contains at least one non-slash character and that - ends with one or more trailing slashes shall be resolved as if a - single dot character ( '.' ) were appended to the pathname." - and - "The special filename dot shall refer to the directory specified by - its predecessor." - If the named file already exists as a directory, then - - if O_CREAT is specified, open() must fail because of the semantics - of O_CREAT, - - if O_WRONLY or O_RDWR is specified, open() must fail because POSIX - says that it - fails with errno = EISDIR in this case. - If the named file does not exist or does not name a directory, then - - if O_CREAT is specified, open() must fail since open() cannot create - directories, - - if O_WRONLY or O_RDWR is specified, open() must fail because the - file does not contain a '.' directory. */ - if (flags & (O_CREAT | O_WRONLY | O_RDWR)) - { - size_t len = strlen (filename); - if (len > 0 && filename[len - 1] == '/') - { - errno = EISDIR; - return -1; - } - } -# endif - - fd = orig_openat (dfd, filename, - flags & ~(have_cloexec <= 0 ? O_CLOEXEC : 0), mode); - - if (flags & O_CLOEXEC) - { - if (! have_cloexec) - { - if (0 <= fd) - have_cloexec = 1; - else if (errno == EINVAL) - { - fd = orig_openat (dfd, filename, flags & ~O_CLOEXEC, mode); - have_cloexec = -1; - } - } - if (have_cloexec < 0 && 0 <= fd) - set_cloexec_flag (fd, true); - } - - -# if OPEN_TRAILING_SLASH_BUG - /* If the filename ends in a slash and fd does not refer to a directory, - then fail. - Rationale: POSIX - says that - "A pathname that contains at least one non-slash character and that - ends with one or more trailing slashes shall be resolved as if a - single dot character ( '.' ) were appended to the pathname." - and - "The special filename dot shall refer to the directory specified by - its predecessor." - If the named file without the slash is not a directory, open() must fail - with ENOTDIR. */ - if (fd >= 0) - { - /* We know len is positive, since open did not fail with ENOENT. */ - size_t len = strlen (filename); - if (filename[len - 1] == '/') - { - struct stat statbuf; - - if (fstat (fd, &statbuf) >= 0 && !S_ISDIR (statbuf.st_mode)) - { - close (fd); - errno = ENOTDIR; - return -1; - } - } - } -# endif - - return fd; -} - -#else /* !HAVE_OPENAT */ - -# include "dosname.h" /* solely for definition of IS_ABSOLUTE_FILE_NAME */ -# include "openat-priv.h" -# include "save-cwd.h" - -/* Replacement for Solaris' openat function. - - First, try to simulate it via open ("/proc/self/fd/FD/FILE"). - Failing that, simulate it by doing save_cwd/fchdir/open/restore_cwd. - If either the save_cwd or the restore_cwd fails (relatively unlikely), - then give a diagnostic and exit nonzero. - Otherwise, upon failure, set errno and return -1, as openat does. - Upon successful completion, return a file descriptor. */ -int -openat (int fd, char const *file, int flags, ...) -{ - mode_t mode = 0; - - if (flags & O_CREAT) - { - va_list arg; - va_start (arg, flags); - - /* We have to use PROMOTED_MODE_T instead of mode_t, otherwise GCC 4 - creates crashing code when 'mode_t' is smaller than 'int'. */ - mode = va_arg (arg, PROMOTED_MODE_T); - - va_end (arg); - } - - return openat_permissive (fd, file, flags, mode, NULL); -} - -/* Like openat (FD, FILE, FLAGS, MODE), but if CWD_ERRNO is - nonnull, set *CWD_ERRNO to an errno value if unable to save - or restore the initial working directory. This is needed only - the first time remove.c's remove_dir opens a command-line - directory argument. - - If a previous attempt to restore the current working directory - failed, then we must not even try to access a '.'-relative name. - It is the caller's responsibility not to call this function - in that case. */ - -int -openat_permissive (int fd, char const *file, int flags, mode_t mode, - int *cwd_errno) -{ - struct saved_cwd saved_cwd; - int saved_errno; - int err; - bool save_ok; - - if (fd == AT_FDCWD || IS_ABSOLUTE_FILE_NAME (file)) - return open (file, flags, mode); - - { - char buf[OPENAT_BUFFER_SIZE]; - char *proc_file = openat_proc_name (buf, fd, file); - if (proc_file) - { - int open_result = open (proc_file, flags, mode); - int open_errno = errno; - if (proc_file != buf) - free (proc_file); - /* If the syscall succeeds, or if it fails with an unexpected - errno value, then return right away. Otherwise, fall through - and resort to using save_cwd/restore_cwd. */ - if (0 <= open_result || ! EXPECTED_ERRNO (open_errno)) - { - errno = open_errno; - return open_result; - } - } - } - - save_ok = (save_cwd (&saved_cwd) == 0); - if (! save_ok) - { - if (! cwd_errno) - openat_save_fail (errno); - *cwd_errno = errno; - } - if (0 <= fd && fd == saved_cwd.desc) - { - /* If saving the working directory collides with the user's - requested fd, then the user's fd must have been closed to - begin with. */ - free_cwd (&saved_cwd); - errno = EBADF; - return -1; - } - - err = fchdir (fd); - saved_errno = errno; - - if (! err) - { - err = open (file, flags, mode); - saved_errno = errno; - if (save_ok && restore_cwd (&saved_cwd) != 0) - { - if (! cwd_errno) - { - /* Don't write a message to just-created fd 2. */ - saved_errno = errno; - if (err == STDERR_FILENO) - close (err); - openat_restore_fail (saved_errno); - } - *cwd_errno = errno; - } - } - - free_cwd (&saved_cwd); - errno = saved_errno; - return err; -} - -/* Return true if our openat implementation must resort to - using save_cwd and restore_cwd. */ -bool -openat_needs_fchdir (void) -{ - bool needs_fchdir = true; - int fd = open ("/", O_SEARCH); - - if (0 <= fd) - { - char buf[OPENAT_BUFFER_SIZE]; - char *proc_file = openat_proc_name (buf, fd, "."); - if (proc_file) - { - needs_fchdir = false; - if (proc_file != buf) - free (proc_file); - } - close (fd); - } - - return needs_fchdir; -} - -#endif /* !HAVE_OPENAT */ diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/openat.h b/thirdparty/grub-2.04/grub-core/lib/gnulib/openat.h deleted file mode 100644 index f23b371c4..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/openat.h +++ /dev/null @@ -1,123 +0,0 @@ -/* provide a replacement openat function - Copyright (C) 2004-2006, 2008-2019 Free Software Foundation, Inc. - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . */ - -/* written by Jim Meyering */ - -#ifndef _GL_HEADER_OPENAT -#define _GL_HEADER_OPENAT - -#include - -#include -#include -#include -#include - -#ifndef _GL_INLINE_HEADER_BEGIN - #error "Please include config.h first." -#endif -_GL_INLINE_HEADER_BEGIN - -#if !HAVE_OPENAT - -int openat_permissive (int fd, char const *file, int flags, mode_t mode, - int *cwd_errno); -bool openat_needs_fchdir (void); - -#else - -# define openat_permissive(Fd, File, Flags, Mode, Cwd_errno) \ - openat (Fd, File, Flags, Mode) -# define openat_needs_fchdir() false - -#endif - -_Noreturn void openat_restore_fail (int); -_Noreturn void openat_save_fail (int); - -/* Using these function names makes application code - slightly more readable than it would be with - fchownat (..., 0) or fchownat (..., AT_SYMLINK_NOFOLLOW). */ - -#if GNULIB_FCHOWNAT - -# ifndef FCHOWNAT_INLINE -# define FCHOWNAT_INLINE _GL_INLINE -# endif - -FCHOWNAT_INLINE int -chownat (int fd, char const *file, uid_t owner, gid_t group) -{ - return fchownat (fd, file, owner, group, 0); -} - -FCHOWNAT_INLINE int -lchownat (int fd, char const *file, uid_t owner, gid_t group) -{ - return fchownat (fd, file, owner, group, AT_SYMLINK_NOFOLLOW); -} - -#endif - -#if GNULIB_FCHMODAT - -# ifndef FCHMODAT_INLINE -# define FCHMODAT_INLINE _GL_INLINE -# endif - -FCHMODAT_INLINE int -chmodat (int fd, char const *file, mode_t mode) -{ - return fchmodat (fd, file, mode, 0); -} - -FCHMODAT_INLINE int -lchmodat (int fd, char const *file, mode_t mode) -{ - return fchmodat (fd, file, mode, AT_SYMLINK_NOFOLLOW); -} - -#endif - -#if GNULIB_STATAT - -# ifndef STATAT_INLINE -# define STATAT_INLINE _GL_INLINE -# endif - -STATAT_INLINE int -statat (int fd, char const *name, struct stat *st) -{ - return fstatat (fd, name, st, 0); -} - -STATAT_INLINE int -lstatat (int fd, char const *name, struct stat *st) -{ - return fstatat (fd, name, st, AT_SYMLINK_NOFOLLOW); -} - -#endif - -/* For now, there are no wrappers named laccessat or leuidaccessat, - since gnulib doesn't support faccessat(,AT_SYMLINK_NOFOLLOW) and - since access rights on symlinks are of limited utility. Likewise, - wrappers are not provided for accessat or euidaccessat, so as to - avoid dragging in -lgen on some platforms. */ - -_GL_INLINE_HEADER_END - -#endif /* _GL_HEADER_OPENAT */ diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/pathmax.h b/thirdparty/grub-2.04/grub-core/lib/gnulib/pathmax.h deleted file mode 100644 index 83b9491f1..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/pathmax.h +++ /dev/null @@ -1,83 +0,0 @@ -/* Define PATH_MAX somehow. Requires sys/types.h. - Copyright (C) 1992, 1999, 2001, 2003, 2005, 2009-2019 Free Software - Foundation, Inc. - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3, or (at your option) - any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, see . */ - -#ifndef _PATHMAX_H -# define _PATHMAX_H - -/* POSIX:2008 defines PATH_MAX to be the maximum number of bytes in a filename, - including the terminating NUL byte. - - PATH_MAX is not defined on systems which have no limit on filename length, - such as GNU/Hurd. - - This file does *not* define PATH_MAX always. Programs that use this file - can handle the GNU/Hurd case in several ways: - - Either with a package-wide handling, or with a per-file handling, - - Either through a - #ifdef PATH_MAX - or through a fallback like - #ifndef PATH_MAX - # define PATH_MAX 8192 - #endif - or through a fallback like - #ifndef PATH_MAX - # define PATH_MAX pathconf ("/", _PC_PATH_MAX) - #endif - */ - -# include - -# include - -# ifndef _POSIX_PATH_MAX -# define _POSIX_PATH_MAX 256 -# endif - -/* Don't include sys/param.h if it already has been. */ -# if defined HAVE_SYS_PARAM_H && !defined PATH_MAX && !defined MAXPATHLEN -# include -# endif - -# if !defined PATH_MAX && defined MAXPATHLEN -# define PATH_MAX MAXPATHLEN -# endif - -# ifdef __hpux -/* On HP-UX, PATH_MAX designates the maximum number of bytes in a filename, - *not* including the terminating NUL byte, and is set to 1023. - Additionally, when _XOPEN_SOURCE is defined to 500 or more, PATH_MAX is - not defined at all any more. */ -# undef PATH_MAX -# define PATH_MAX 1024 -# endif - -# if defined _WIN32 && ! defined __CYGWIN__ -/* The page "Naming Files, Paths, and Namespaces" on msdn.microsoft.com, - section "Maximum Path Length Limitation", - - explains that the maximum size of a filename, including the terminating - NUL byte, is 260 = 3 + 256 + 1. - This is the same value as - - FILENAME_MAX in , - - _MAX_PATH in , - - MAX_PATH in . - Undefine the original value, because mingw's gets it wrong. */ -# undef PATH_MAX -# define PATH_MAX 260 -# endif - -#endif /* _PATHMAX_H */ diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/pipe-safer.c b/thirdparty/grub-2.04/grub-core/lib/gnulib/pipe-safer.c deleted file mode 100644 index 62017397c..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/pipe-safer.c +++ /dev/null @@ -1,56 +0,0 @@ -/* Invoke pipe, but avoid some glitches. - Copyright (C) 2005-2006, 2009-2019 Free Software Foundation, Inc. - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . */ - -/* Written by Jim Meyering. */ - -#include - -#include "unistd-safer.h" - -#include -#include - -/* Like pipe, but ensure that neither of the file descriptors is - STDIN_FILENO, STDOUT_FILENO, or STDERR_FILENO. Fail with ENOSYS on - platforms that lack pipe. */ - -int -pipe_safer (int fd[2]) -{ -#if HAVE_PIPE - if (pipe (fd) == 0) - { - int i; - for (i = 0; i < 2; i++) - { - fd[i] = fd_safer (fd[i]); - if (fd[i] < 0) - { - int e = errno; - close (fd[1 - i]); - errno = e; - return -1; - } - } - - return 0; - } -#else - errno = ENOSYS; -#endif - - return -1; -} diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/printf-args.c b/thirdparty/grub-2.04/grub-core/lib/gnulib/printf-args.c deleted file mode 100644 index e45cfbede..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/printf-args.c +++ /dev/null @@ -1,187 +0,0 @@ -/* Decomposed printf argument list. - Copyright (C) 1999, 2002-2003, 2005-2007, 2009-2019 Free Software - Foundation, Inc. - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3, or (at your option) - any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License along - with this program; if not, see . */ - -/* This file can be parametrized with the following macros: - ENABLE_UNISTDIO Set to 1 to enable the unistdio extensions. - PRINTF_FETCHARGS Name of the function to be defined. - STATIC Set to 'static' to declare the function static. */ - -#ifndef PRINTF_FETCHARGS -# include -#endif - -/* Specification. */ -#ifndef PRINTF_FETCHARGS -# include "printf-args.h" -#endif - -#ifdef STATIC -STATIC -#endif -int -PRINTF_FETCHARGS (va_list args, arguments *a) -{ - size_t i; - argument *ap; - - for (i = 0, ap = &a->arg[0]; i < a->count; i++, ap++) - switch (ap->type) - { - case TYPE_SCHAR: - ap->a.a_schar = va_arg (args, /*signed char*/ int); - break; - case TYPE_UCHAR: - ap->a.a_uchar = va_arg (args, /*unsigned char*/ int); - break; - case TYPE_SHORT: - ap->a.a_short = va_arg (args, /*short*/ int); - break; - case TYPE_USHORT: - ap->a.a_ushort = va_arg (args, /*unsigned short*/ int); - break; - case TYPE_INT: - ap->a.a_int = va_arg (args, int); - break; - case TYPE_UINT: - ap->a.a_uint = va_arg (args, unsigned int); - break; - case TYPE_LONGINT: - ap->a.a_longint = va_arg (args, long int); - break; - case TYPE_ULONGINT: - ap->a.a_ulongint = va_arg (args, unsigned long int); - break; -#if HAVE_LONG_LONG_INT - case TYPE_LONGLONGINT: - ap->a.a_longlongint = va_arg (args, long long int); - break; - case TYPE_ULONGLONGINT: - ap->a.a_ulonglongint = va_arg (args, unsigned long long int); - break; -#endif - case TYPE_DOUBLE: - ap->a.a_double = va_arg (args, double); - break; - case TYPE_LONGDOUBLE: - ap->a.a_longdouble = va_arg (args, long double); - break; - case TYPE_CHAR: - ap->a.a_char = va_arg (args, int); - break; -#if HAVE_WINT_T - case TYPE_WIDE_CHAR: - /* Although ISO C 99 7.24.1.(2) says that wint_t is "unchanged by - default argument promotions", this is not the case in mingw32, - where wint_t is 'unsigned short'. */ - ap->a.a_wide_char = - (sizeof (wint_t) < sizeof (int) - ? (wint_t) va_arg (args, int) - : va_arg (args, wint_t)); - break; -#endif - case TYPE_STRING: - ap->a.a_string = va_arg (args, const char *); - /* A null pointer is an invalid argument for "%s", but in practice - it occurs quite frequently in printf statements that produce - debug output. Use a fallback in this case. */ - if (ap->a.a_string == NULL) - ap->a.a_string = "(NULL)"; - break; -#if HAVE_WCHAR_T - case TYPE_WIDE_STRING: - ap->a.a_wide_string = va_arg (args, const wchar_t *); - /* A null pointer is an invalid argument for "%ls", but in practice - it occurs quite frequently in printf statements that produce - debug output. Use a fallback in this case. */ - if (ap->a.a_wide_string == NULL) - { - static const wchar_t wide_null_string[] = - { - (wchar_t)'(', - (wchar_t)'N', (wchar_t)'U', (wchar_t)'L', (wchar_t)'L', - (wchar_t)')', - (wchar_t)0 - }; - ap->a.a_wide_string = wide_null_string; - } - break; -#endif - case TYPE_POINTER: - ap->a.a_pointer = va_arg (args, void *); - break; - case TYPE_COUNT_SCHAR_POINTER: - ap->a.a_count_schar_pointer = va_arg (args, signed char *); - break; - case TYPE_COUNT_SHORT_POINTER: - ap->a.a_count_short_pointer = va_arg (args, short *); - break; - case TYPE_COUNT_INT_POINTER: - ap->a.a_count_int_pointer = va_arg (args, int *); - break; - case TYPE_COUNT_LONGINT_POINTER: - ap->a.a_count_longint_pointer = va_arg (args, long int *); - break; -#if HAVE_LONG_LONG_INT - case TYPE_COUNT_LONGLONGINT_POINTER: - ap->a.a_count_longlongint_pointer = va_arg (args, long long int *); - break; -#endif -#if ENABLE_UNISTDIO - /* The unistdio extensions. */ - case TYPE_U8_STRING: - ap->a.a_u8_string = va_arg (args, const uint8_t *); - /* A null pointer is an invalid argument for "%U", but in practice - it occurs quite frequently in printf statements that produce - debug output. Use a fallback in this case. */ - if (ap->a.a_u8_string == NULL) - { - static const uint8_t u8_null_string[] = - { '(', 'N', 'U', 'L', 'L', ')', 0 }; - ap->a.a_u8_string = u8_null_string; - } - break; - case TYPE_U16_STRING: - ap->a.a_u16_string = va_arg (args, const uint16_t *); - /* A null pointer is an invalid argument for "%lU", but in practice - it occurs quite frequently in printf statements that produce - debug output. Use a fallback in this case. */ - if (ap->a.a_u16_string == NULL) - { - static const uint16_t u16_null_string[] = - { '(', 'N', 'U', 'L', 'L', ')', 0 }; - ap->a.a_u16_string = u16_null_string; - } - break; - case TYPE_U32_STRING: - ap->a.a_u32_string = va_arg (args, const uint32_t *); - /* A null pointer is an invalid argument for "%llU", but in practice - it occurs quite frequently in printf statements that produce - debug output. Use a fallback in this case. */ - if (ap->a.a_u32_string == NULL) - { - static const uint32_t u32_null_string[] = - { '(', 'N', 'U', 'L', 'L', ')', 0 }; - ap->a.a_u32_string = u32_null_string; - } - break; -#endif - default: - /* Unknown type. */ - return -1; - } - return 0; -} diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/printf-args.h b/thirdparty/grub-2.04/grub-core/lib/gnulib/printf-args.h deleted file mode 100644 index 866cba04d..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/printf-args.h +++ /dev/null @@ -1,158 +0,0 @@ -/* Decomposed printf argument list. - Copyright (C) 1999, 2002-2003, 2006-2007, 2011-2019 Free Software - Foundation, Inc. - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3, or (at your option) - any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License along - with this program; if not, see . */ - -#ifndef _PRINTF_ARGS_H -#define _PRINTF_ARGS_H - -/* This file can be parametrized with the following macros: - ENABLE_UNISTDIO Set to 1 to enable the unistdio extensions. - PRINTF_FETCHARGS Name of the function to be declared. - STATIC Set to 'static' to declare the function static. */ - -/* Default parameters. */ -#ifndef PRINTF_FETCHARGS -# define PRINTF_FETCHARGS printf_fetchargs -#endif - -/* Get size_t. */ -#include - -/* Get wchar_t. */ -#if HAVE_WCHAR_T -# include -#endif - -/* Get wint_t. */ -#if HAVE_WINT_T -# include -#endif - -/* Get va_list. */ -#include - - -/* Argument types */ -typedef enum -{ - TYPE_NONE, - TYPE_SCHAR, - TYPE_UCHAR, - TYPE_SHORT, - TYPE_USHORT, - TYPE_INT, - TYPE_UINT, - TYPE_LONGINT, - TYPE_ULONGINT, -#if HAVE_LONG_LONG_INT - TYPE_LONGLONGINT, - TYPE_ULONGLONGINT, -#endif - TYPE_DOUBLE, - TYPE_LONGDOUBLE, - TYPE_CHAR, -#if HAVE_WINT_T - TYPE_WIDE_CHAR, -#endif - TYPE_STRING, -#if HAVE_WCHAR_T - TYPE_WIDE_STRING, -#endif - TYPE_POINTER, - TYPE_COUNT_SCHAR_POINTER, - TYPE_COUNT_SHORT_POINTER, - TYPE_COUNT_INT_POINTER, - TYPE_COUNT_LONGINT_POINTER -#if HAVE_LONG_LONG_INT -, TYPE_COUNT_LONGLONGINT_POINTER -#endif -#if ENABLE_UNISTDIO - /* The unistdio extensions. */ -, TYPE_U8_STRING -, TYPE_U16_STRING -, TYPE_U32_STRING -#endif -} arg_type; - -/* Polymorphic argument */ -typedef struct -{ - arg_type type; - union - { - signed char a_schar; - unsigned char a_uchar; - short a_short; - unsigned short a_ushort; - int a_int; - unsigned int a_uint; - long int a_longint; - unsigned long int a_ulongint; -#if HAVE_LONG_LONG_INT - long long int a_longlongint; - unsigned long long int a_ulonglongint; -#endif - float a_float; - double a_double; - long double a_longdouble; - int a_char; -#if HAVE_WINT_T - wint_t a_wide_char; -#endif - const char* a_string; -#if HAVE_WCHAR_T - const wchar_t* a_wide_string; -#endif - void* a_pointer; - signed char * a_count_schar_pointer; - short * a_count_short_pointer; - int * a_count_int_pointer; - long int * a_count_longint_pointer; -#if HAVE_LONG_LONG_INT - long long int * a_count_longlongint_pointer; -#endif -#if ENABLE_UNISTDIO - /* The unistdio extensions. */ - const uint8_t * a_u8_string; - const uint16_t * a_u16_string; - const uint32_t * a_u32_string; -#endif - } - a; -} -argument; - -/* Number of directly allocated arguments (no malloc() needed). */ -#define N_DIRECT_ALLOC_ARGUMENTS 7 - -typedef struct -{ - size_t count; - argument *arg; - argument direct_alloc_arg[N_DIRECT_ALLOC_ARGUMENTS]; -} -arguments; - - -/* Fetch the arguments, putting them into a. */ -#ifdef STATIC -STATIC -#else -extern -#endif -int PRINTF_FETCHARGS (va_list args, arguments *a); - -#endif /* _PRINTF_ARGS_H */ diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/printf-parse.c b/thirdparty/grub-2.04/grub-core/lib/gnulib/printf-parse.c deleted file mode 100644 index 8596fd5f3..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/printf-parse.c +++ /dev/null @@ -1,638 +0,0 @@ -/* Formatted output to strings. - Copyright (C) 1999-2000, 2002-2003, 2006-2019 Free Software Foundation, Inc. - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3, or (at your option) - any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License along - with this program; if not, see . */ - -/* This file can be parametrized with the following macros: - CHAR_T The element type of the format string. - CHAR_T_ONLY_ASCII Set to 1 to enable verification that all characters - in the format string are ASCII. - DIRECTIVE Structure denoting a format directive. - Depends on CHAR_T. - DIRECTIVES Structure denoting the set of format directives of a - format string. Depends on CHAR_T. - PRINTF_PARSE Function that parses a format string. - Depends on CHAR_T. - STATIC Set to 'static' to declare the function static. - ENABLE_UNISTDIO Set to 1 to enable the unistdio extensions. */ - -#ifndef PRINTF_PARSE -# include -#endif - -/* Specification. */ -#ifndef PRINTF_PARSE -# include "printf-parse.h" -#endif - -/* Default parameters. */ -#ifndef PRINTF_PARSE -# define PRINTF_PARSE printf_parse -# define CHAR_T char -# define DIRECTIVE char_directive -# define DIRECTIVES char_directives -#endif - -/* Get size_t, NULL. */ -#include - -/* Get intmax_t. */ -#if defined IN_LIBINTL || defined IN_LIBASPRINTF -# if HAVE_STDINT_H_WITH_UINTMAX -# include -# endif -# if HAVE_INTTYPES_H_WITH_UINTMAX -# include -# endif -#else -# include -#endif - -/* malloc(), realloc(), free(). */ -#include - -/* memcpy(). */ -#include - -/* errno. */ -#include - -/* Checked size_t computations. */ -#include "xsize.h" - -#if CHAR_T_ONLY_ASCII -/* c_isascii(). */ -# include "c-ctype.h" -#endif - -#ifdef STATIC -STATIC -#endif -int -PRINTF_PARSE (const CHAR_T *format, DIRECTIVES *d, arguments *a) -{ - const CHAR_T *cp = format; /* pointer into format */ - size_t arg_posn = 0; /* number of regular arguments consumed */ - size_t d_allocated; /* allocated elements of d->dir */ - size_t a_allocated; /* allocated elements of a->arg */ - size_t max_width_length = 0; - size_t max_precision_length = 0; - - d->count = 0; - d_allocated = N_DIRECT_ALLOC_DIRECTIVES; - d->dir = d->direct_alloc_dir; - - a->count = 0; - a_allocated = N_DIRECT_ALLOC_ARGUMENTS; - a->arg = a->direct_alloc_arg; - -#define REGISTER_ARG(_index_,_type_) \ - { \ - size_t n = (_index_); \ - if (n >= a_allocated) \ - { \ - size_t memory_size; \ - argument *memory; \ - \ - a_allocated = xtimes (a_allocated, 2); \ - if (a_allocated <= n) \ - a_allocated = xsum (n, 1); \ - memory_size = xtimes (a_allocated, sizeof (argument)); \ - if (size_overflow_p (memory_size)) \ - /* Overflow, would lead to out of memory. */ \ - goto out_of_memory; \ - memory = (argument *) (a->arg != a->direct_alloc_arg \ - ? realloc (a->arg, memory_size) \ - : malloc (memory_size)); \ - if (memory == NULL) \ - /* Out of memory. */ \ - goto out_of_memory; \ - if (a->arg == a->direct_alloc_arg) \ - memcpy (memory, a->arg, a->count * sizeof (argument)); \ - a->arg = memory; \ - } \ - while (a->count <= n) \ - a->arg[a->count++].type = TYPE_NONE; \ - if (a->arg[n].type == TYPE_NONE) \ - a->arg[n].type = (_type_); \ - else if (a->arg[n].type != (_type_)) \ - /* Ambiguous type for positional argument. */ \ - goto error; \ - } - - while (*cp != '\0') - { - CHAR_T c = *cp++; - if (c == '%') - { - size_t arg_index = ARG_NONE; - DIRECTIVE *dp = &d->dir[d->count]; /* pointer to next directive */ - - /* Initialize the next directive. */ - dp->dir_start = cp - 1; - dp->flags = 0; - dp->width_start = NULL; - dp->width_end = NULL; - dp->width_arg_index = ARG_NONE; - dp->precision_start = NULL; - dp->precision_end = NULL; - dp->precision_arg_index = ARG_NONE; - dp->arg_index = ARG_NONE; - - /* Test for positional argument. */ - if (*cp >= '0' && *cp <= '9') - { - const CHAR_T *np; - - for (np = cp; *np >= '0' && *np <= '9'; np++) - ; - if (*np == '$') - { - size_t n = 0; - - for (np = cp; *np >= '0' && *np <= '9'; np++) - n = xsum (xtimes (n, 10), *np - '0'); - if (n == 0) - /* Positional argument 0. */ - goto error; - if (size_overflow_p (n)) - /* n too large, would lead to out of memory later. */ - goto error; - arg_index = n - 1; - cp = np + 1; - } - } - - /* Read the flags. */ - for (;;) - { - if (*cp == '\'') - { - dp->flags |= FLAG_GROUP; - cp++; - } - else if (*cp == '-') - { - dp->flags |= FLAG_LEFT; - cp++; - } - else if (*cp == '+') - { - dp->flags |= FLAG_SHOWSIGN; - cp++; - } - else if (*cp == ' ') - { - dp->flags |= FLAG_SPACE; - cp++; - } - else if (*cp == '#') - { - dp->flags |= FLAG_ALT; - cp++; - } - else if (*cp == '0') - { - dp->flags |= FLAG_ZERO; - cp++; - } -#if __GLIBC__ >= 2 && !defined __UCLIBC__ - else if (*cp == 'I') - { - dp->flags |= FLAG_LOCALIZED; - cp++; - } -#endif - else - break; - } - - /* Parse the field width. */ - if (*cp == '*') - { - dp->width_start = cp; - cp++; - dp->width_end = cp; - if (max_width_length < 1) - max_width_length = 1; - - /* Test for positional argument. */ - if (*cp >= '0' && *cp <= '9') - { - const CHAR_T *np; - - for (np = cp; *np >= '0' && *np <= '9'; np++) - ; - if (*np == '$') - { - size_t n = 0; - - for (np = cp; *np >= '0' && *np <= '9'; np++) - n = xsum (xtimes (n, 10), *np - '0'); - if (n == 0) - /* Positional argument 0. */ - goto error; - if (size_overflow_p (n)) - /* n too large, would lead to out of memory later. */ - goto error; - dp->width_arg_index = n - 1; - cp = np + 1; - } - } - if (dp->width_arg_index == ARG_NONE) - { - dp->width_arg_index = arg_posn++; - if (dp->width_arg_index == ARG_NONE) - /* arg_posn wrapped around. */ - goto error; - } - REGISTER_ARG (dp->width_arg_index, TYPE_INT); - } - else if (*cp >= '0' && *cp <= '9') - { - size_t width_length; - - dp->width_start = cp; - for (; *cp >= '0' && *cp <= '9'; cp++) - ; - dp->width_end = cp; - width_length = dp->width_end - dp->width_start; - if (max_width_length < width_length) - max_width_length = width_length; - } - - /* Parse the precision. */ - if (*cp == '.') - { - cp++; - if (*cp == '*') - { - dp->precision_start = cp - 1; - cp++; - dp->precision_end = cp; - if (max_precision_length < 2) - max_precision_length = 2; - - /* Test for positional argument. */ - if (*cp >= '0' && *cp <= '9') - { - const CHAR_T *np; - - for (np = cp; *np >= '0' && *np <= '9'; np++) - ; - if (*np == '$') - { - size_t n = 0; - - for (np = cp; *np >= '0' && *np <= '9'; np++) - n = xsum (xtimes (n, 10), *np - '0'); - if (n == 0) - /* Positional argument 0. */ - goto error; - if (size_overflow_p (n)) - /* n too large, would lead to out of memory - later. */ - goto error; - dp->precision_arg_index = n - 1; - cp = np + 1; - } - } - if (dp->precision_arg_index == ARG_NONE) - { - dp->precision_arg_index = arg_posn++; - if (dp->precision_arg_index == ARG_NONE) - /* arg_posn wrapped around. */ - goto error; - } - REGISTER_ARG (dp->precision_arg_index, TYPE_INT); - } - else - { - size_t precision_length; - - dp->precision_start = cp - 1; - for (; *cp >= '0' && *cp <= '9'; cp++) - ; - dp->precision_end = cp; - precision_length = dp->precision_end - dp->precision_start; - if (max_precision_length < precision_length) - max_precision_length = precision_length; - } - } - - { - arg_type type; - - /* Parse argument type/size specifiers. */ - { - int flags = 0; - - for (;;) - { - if (*cp == 'h') - { - flags |= (1 << (flags & 1)); - cp++; - } - else if (*cp == 'L') - { - flags |= 4; - cp++; - } - else if (*cp == 'l') - { - flags += 8; - cp++; - } - else if (*cp == 'j') - { - if (sizeof (intmax_t) > sizeof (long)) - { - /* intmax_t = long long */ - flags += 16; - } - else if (sizeof (intmax_t) > sizeof (int)) - { - /* intmax_t = long */ - flags += 8; - } - cp++; - } - else if (*cp == 'z' || *cp == 'Z') - { - /* 'z' is standardized in ISO C 99, but glibc uses 'Z' - because the warning facility in gcc-2.95.2 understands - only 'Z' (see gcc-2.95.2/gcc/c-common.c:1784). */ - if (sizeof (size_t) > sizeof (long)) - { - /* size_t = long long */ - flags += 16; - } - else if (sizeof (size_t) > sizeof (int)) - { - /* size_t = long */ - flags += 8; - } - cp++; - } - else if (*cp == 't') - { - if (sizeof (ptrdiff_t) > sizeof (long)) - { - /* ptrdiff_t = long long */ - flags += 16; - } - else if (sizeof (ptrdiff_t) > sizeof (int)) - { - /* ptrdiff_t = long */ - flags += 8; - } - cp++; - } -#if defined __APPLE__ && defined __MACH__ - /* On Mac OS X 10.3, PRIdMAX is defined as "qd". - We cannot change it to "lld" because PRIdMAX must also - be understood by the system's printf routines. */ - else if (*cp == 'q') - { - if (64 / 8 > sizeof (long)) - { - /* int64_t = long long */ - flags += 16; - } - else - { - /* int64_t = long */ - flags += 8; - } - cp++; - } -#endif -#if defined _WIN32 && ! defined __CYGWIN__ - /* On native Windows, PRIdMAX is defined as "I64d". - We cannot change it to "lld" because PRIdMAX must also - be understood by the system's printf routines. */ - else if (*cp == 'I' && cp[1] == '6' && cp[2] == '4') - { - if (64 / 8 > sizeof (long)) - { - /* __int64 = long long */ - flags += 16; - } - else - { - /* __int64 = long */ - flags += 8; - } - cp += 3; - } -#endif - else - break; - } - - /* Read the conversion character. */ - c = *cp++; - switch (c) - { - case 'd': case 'i': -#if HAVE_LONG_LONG_INT - /* If 'long long' exists and is larger than 'long': */ - if (flags >= 16 || (flags & 4)) - type = TYPE_LONGLONGINT; - else -#endif - /* If 'long long' exists and is the same as 'long', we parse - "lld" into TYPE_LONGINT. */ - if (flags >= 8) - type = TYPE_LONGINT; - else if (flags & 2) - type = TYPE_SCHAR; - else if (flags & 1) - type = TYPE_SHORT; - else - type = TYPE_INT; - break; - case 'o': case 'u': case 'x': case 'X': -#if HAVE_LONG_LONG_INT - /* If 'long long' exists and is larger than 'long': */ - if (flags >= 16 || (flags & 4)) - type = TYPE_ULONGLONGINT; - else -#endif - /* If 'unsigned long long' exists and is the same as - 'unsigned long', we parse "llu" into TYPE_ULONGINT. */ - if (flags >= 8) - type = TYPE_ULONGINT; - else if (flags & 2) - type = TYPE_UCHAR; - else if (flags & 1) - type = TYPE_USHORT; - else - type = TYPE_UINT; - break; - case 'f': case 'F': case 'e': case 'E': case 'g': case 'G': - case 'a': case 'A': - if (flags >= 16 || (flags & 4)) - type = TYPE_LONGDOUBLE; - else - type = TYPE_DOUBLE; - break; - case 'c': - if (flags >= 8) -#if HAVE_WINT_T - type = TYPE_WIDE_CHAR; -#else - goto error; -#endif - else - type = TYPE_CHAR; - break; -#if HAVE_WINT_T - case 'C': - type = TYPE_WIDE_CHAR; - c = 'c'; - break; -#endif - case 's': - if (flags >= 8) -#if HAVE_WCHAR_T - type = TYPE_WIDE_STRING; -#else - goto error; -#endif - else - type = TYPE_STRING; - break; -#if HAVE_WCHAR_T - case 'S': - type = TYPE_WIDE_STRING; - c = 's'; - break; -#endif - case 'p': - type = TYPE_POINTER; - break; - case 'n': -#if HAVE_LONG_LONG_INT - /* If 'long long' exists and is larger than 'long': */ - if (flags >= 16 || (flags & 4)) - type = TYPE_COUNT_LONGLONGINT_POINTER; - else -#endif - /* If 'long long' exists and is the same as 'long', we parse - "lln" into TYPE_COUNT_LONGINT_POINTER. */ - if (flags >= 8) - type = TYPE_COUNT_LONGINT_POINTER; - else if (flags & 2) - type = TYPE_COUNT_SCHAR_POINTER; - else if (flags & 1) - type = TYPE_COUNT_SHORT_POINTER; - else - type = TYPE_COUNT_INT_POINTER; - break; -#if ENABLE_UNISTDIO - /* The unistdio extensions. */ - case 'U': - if (flags >= 16) - type = TYPE_U32_STRING; - else if (flags >= 8) - type = TYPE_U16_STRING; - else - type = TYPE_U8_STRING; - break; -#endif - case '%': - type = TYPE_NONE; - break; - default: - /* Unknown conversion character. */ - goto error; - } - } - - if (type != TYPE_NONE) - { - dp->arg_index = arg_index; - if (dp->arg_index == ARG_NONE) - { - dp->arg_index = arg_posn++; - if (dp->arg_index == ARG_NONE) - /* arg_posn wrapped around. */ - goto error; - } - REGISTER_ARG (dp->arg_index, type); - } - dp->conversion = c; - dp->dir_end = cp; - } - - d->count++; - if (d->count >= d_allocated) - { - size_t memory_size; - DIRECTIVE *memory; - - d_allocated = xtimes (d_allocated, 2); - memory_size = xtimes (d_allocated, sizeof (DIRECTIVE)); - if (size_overflow_p (memory_size)) - /* Overflow, would lead to out of memory. */ - goto out_of_memory; - memory = (DIRECTIVE *) (d->dir != d->direct_alloc_dir - ? realloc (d->dir, memory_size) - : malloc (memory_size)); - if (memory == NULL) - /* Out of memory. */ - goto out_of_memory; - if (d->dir == d->direct_alloc_dir) - memcpy (memory, d->dir, d->count * sizeof (DIRECTIVE)); - d->dir = memory; - } - } -#if CHAR_T_ONLY_ASCII - else if (!c_isascii (c)) - { - /* Non-ASCII character. Not supported. */ - goto error; - } -#endif - } - d->dir[d->count].dir_start = cp; - - d->max_width_length = max_width_length; - d->max_precision_length = max_precision_length; - return 0; - -error: - if (a->arg != a->direct_alloc_arg) - free (a->arg); - if (d->dir != d->direct_alloc_dir) - free (d->dir); - errno = EINVAL; - return -1; - -out_of_memory: - if (a->arg != a->direct_alloc_arg) - free (a->arg); - if (d->dir != d->direct_alloc_dir) - free (d->dir); - errno = ENOMEM; - return -1; -} - -#undef PRINTF_PARSE -#undef DIRECTIVES -#undef DIRECTIVE -#undef CHAR_T_ONLY_ASCII -#undef CHAR_T diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/printf-parse.h b/thirdparty/grub-2.04/grub-core/lib/gnulib/printf-parse.h deleted file mode 100644 index 746bb3fe0..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/printf-parse.h +++ /dev/null @@ -1,193 +0,0 @@ -/* Parse printf format string. - Copyright (C) 1999, 2002-2003, 2005, 2007, 2010-2019 Free Software - Foundation, Inc. - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3, or (at your option) - any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License along - with this program; if not, see . */ - -#ifndef _PRINTF_PARSE_H -#define _PRINTF_PARSE_H - -/* This file can be parametrized with the following macros: - ENABLE_UNISTDIO Set to 1 to enable the unistdio extensions. - STATIC Set to 'static' to declare the function static. */ - -#if HAVE_FEATURES_H -# include /* for __GLIBC__, __UCLIBC__ */ -#endif - -#include "printf-args.h" - - -/* Flags */ -#define FLAG_GROUP 1 /* ' flag */ -#define FLAG_LEFT 2 /* - flag */ -#define FLAG_SHOWSIGN 4 /* + flag */ -#define FLAG_SPACE 8 /* space flag */ -#define FLAG_ALT 16 /* # flag */ -#define FLAG_ZERO 32 -#if __GLIBC__ >= 2 && !defined __UCLIBC__ -# define FLAG_LOCALIZED 64 /* I flag, uses localized digits */ -#endif - -/* arg_index value indicating that no argument is consumed. */ -#define ARG_NONE (~(size_t)0) - -/* xxx_directive: A parsed directive. - xxx_directives: A parsed format string. */ - -/* Number of directly allocated directives (no malloc() needed). */ -#define N_DIRECT_ALLOC_DIRECTIVES 7 - -/* A parsed directive. */ -typedef struct -{ - const char* dir_start; - const char* dir_end; - int flags; - const char* width_start; - const char* width_end; - size_t width_arg_index; - const char* precision_start; - const char* precision_end; - size_t precision_arg_index; - char conversion; /* d i o u x X f F e E g G a A c s p n U % but not C S */ - size_t arg_index; -} -char_directive; - -/* A parsed format string. */ -typedef struct -{ - size_t count; - char_directive *dir; - size_t max_width_length; - size_t max_precision_length; - char_directive direct_alloc_dir[N_DIRECT_ALLOC_DIRECTIVES]; -} -char_directives; - -#if ENABLE_UNISTDIO - -/* A parsed directive. */ -typedef struct -{ - const uint8_t* dir_start; - const uint8_t* dir_end; - int flags; - const uint8_t* width_start; - const uint8_t* width_end; - size_t width_arg_index; - const uint8_t* precision_start; - const uint8_t* precision_end; - size_t precision_arg_index; - uint8_t conversion; /* d i o u x X f F e E g G a A c s p n U % but not C S */ - size_t arg_index; -} -u8_directive; - -/* A parsed format string. */ -typedef struct -{ - size_t count; - u8_directive *dir; - size_t max_width_length; - size_t max_precision_length; - u8_directive direct_alloc_dir[N_DIRECT_ALLOC_DIRECTIVES]; -} -u8_directives; - -/* A parsed directive. */ -typedef struct -{ - const uint16_t* dir_start; - const uint16_t* dir_end; - int flags; - const uint16_t* width_start; - const uint16_t* width_end; - size_t width_arg_index; - const uint16_t* precision_start; - const uint16_t* precision_end; - size_t precision_arg_index; - uint16_t conversion; /* d i o u x X f F e E g G a A c s p n U % but not C S */ - size_t arg_index; -} -u16_directive; - -/* A parsed format string. */ -typedef struct -{ - size_t count; - u16_directive *dir; - size_t max_width_length; - size_t max_precision_length; - u16_directive direct_alloc_dir[N_DIRECT_ALLOC_DIRECTIVES]; -} -u16_directives; - -/* A parsed directive. */ -typedef struct -{ - const uint32_t* dir_start; - const uint32_t* dir_end; - int flags; - const uint32_t* width_start; - const uint32_t* width_end; - size_t width_arg_index; - const uint32_t* precision_start; - const uint32_t* precision_end; - size_t precision_arg_index; - uint32_t conversion; /* d i o u x X f F e E g G a A c s p n U % but not C S */ - size_t arg_index; -} -u32_directive; - -/* A parsed format string. */ -typedef struct -{ - size_t count; - u32_directive *dir; - size_t max_width_length; - size_t max_precision_length; - u32_directive direct_alloc_dir[N_DIRECT_ALLOC_DIRECTIVES]; -} -u32_directives; - -#endif - - -/* Parses the format string. Fills in the number N of directives, and fills - in directives[0], ..., directives[N-1], and sets directives[N].dir_start - to the end of the format string. Also fills in the arg_type fields of the - arguments and the needed count of arguments. */ -#if ENABLE_UNISTDIO -extern int - ulc_printf_parse (const char *format, char_directives *d, arguments *a); -extern int - u8_printf_parse (const uint8_t *format, u8_directives *d, arguments *a); -extern int - u16_printf_parse (const uint16_t *format, u16_directives *d, - arguments *a); -extern int - u32_printf_parse (const uint32_t *format, u32_directives *d, - arguments *a); -#else -# ifdef STATIC -STATIC -# else -extern -# endif -int printf_parse (const char *format, char_directives *d, arguments *a); -#endif - -#endif /* _PRINTF_PARSE_H */ diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/progname.c b/thirdparty/grub-2.04/grub-core/lib/gnulib/progname.c deleted file mode 100644 index a42b7fa2f..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/progname.c +++ /dev/null @@ -1,92 +0,0 @@ -/* Program name management. - Copyright (C) 2001-2003, 2005-2019 Free Software Foundation, Inc. - Written by Bruno Haible , 2001. - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . */ - - -#include - -/* Specification. */ -#undef ENABLE_RELOCATABLE /* avoid defining set_program_name as a macro */ -#include "progname.h" - -#include /* get program_invocation_name declaration */ -#include -#include -#include - - -/* String containing name the program is called with. - To be initialized by main(). */ -const char *program_name = NULL; - -/* Set program_name, based on argv[0]. - argv0 must be a string allocated with indefinite extent, and must not be - modified after this call. */ -void -set_program_name (const char *argv0) -{ - /* libtool creates a temporary executable whose name is sometimes prefixed - with "lt-" (depends on the platform). It also makes argv[0] absolute. - But the name of the temporary executable is a detail that should not be - visible to the end user and to the test suite. - Remove this "/.libs/" or "/.libs/lt-" prefix here. */ - const char *slash; - const char *base; - - /* Sanity check. POSIX requires the invoking process to pass a non-NULL - argv[0]. */ - if (argv0 == NULL) - { - /* It's a bug in the invoking program. Help diagnosing it. */ - fputs ("A NULL argv[0] was passed through an exec system call.\n", - stderr); - abort (); - } - - slash = strrchr (argv0, '/'); - base = (slash != NULL ? slash + 1 : argv0); - if (base - argv0 >= 7 && strncmp (base - 7, "/.libs/", 7) == 0) - { - argv0 = base; - if (strncmp (base, "lt-", 3) == 0) - { - argv0 = base + 3; - /* On glibc systems, remove the "lt-" prefix from the variable - program_invocation_short_name. */ -#if HAVE_DECL_PROGRAM_INVOCATION_SHORT_NAME - program_invocation_short_name = (char *) argv0; -#endif - } - } - - /* But don't strip off a leading / in general, because when the user - runs - /some/hidden/place/bin/cp foo foo - he should get the error message - /some/hidden/place/bin/cp: `foo' and `foo' are the same file - not - cp: `foo' and `foo' are the same file - */ - - program_name = argv0; - - /* On glibc systems, the error() function comes from libc and uses the - variable program_invocation_name, not program_name. So set this variable - as well. */ -#if HAVE_DECL_PROGRAM_INVOCATION_NAME - program_invocation_name = (char *) argv0; -#endif -} diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/progname.h b/thirdparty/grub-2.04/grub-core/lib/gnulib/progname.h deleted file mode 100644 index c726e97e9..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/progname.h +++ /dev/null @@ -1,62 +0,0 @@ -/* Program name management. - Copyright (C) 2001-2004, 2006, 2009-2019 Free Software Foundation, Inc. - Written by Bruno Haible , 2001. - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . */ - -#ifndef _PROGNAME_H -#define _PROGNAME_H - -/* Programs using this file should do the following in main(): - set_program_name (argv[0]); - */ - - -#ifdef __cplusplus -extern "C" { -#endif - - -/* String containing name the program is called with. */ -extern const char *program_name; - -/* Set program_name, based on argv[0]. - argv0 must be a string allocated with indefinite extent, and must not be - modified after this call. */ -extern void set_program_name (const char *argv0); - -#if ENABLE_RELOCATABLE - -/* Set program_name, based on argv[0], and original installation prefix and - directory, for relocatability. */ -extern void set_program_name_and_installdir (const char *argv0, - const char *orig_installprefix, - const char *orig_installdir); -#undef set_program_name -#define set_program_name(ARG0) \ - set_program_name_and_installdir (ARG0, INSTALLPREFIX, INSTALLDIR) - -/* Return the full pathname of the current executable, based on the earlier - call to set_program_name_and_installdir. Return NULL if unknown. */ -extern char *get_full_program_name (void); - -#endif - - -#ifdef __cplusplus -} -#endif - - -#endif /* _PROGNAME_H */ diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/rawmemchr.c b/thirdparty/grub-2.04/grub-core/lib/gnulib/rawmemchr.c deleted file mode 100644 index 7df61512f..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/rawmemchr.c +++ /dev/null @@ -1,136 +0,0 @@ -/* Searching in a string. - Copyright (C) 2008-2019 Free Software Foundation, Inc. - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . */ - -#include - -/* Specification. */ -#include - -/* Find the first occurrence of C in S. */ -void * -rawmemchr (const void *s, int c_in) -{ - /* On 32-bit hardware, choosing longword to be a 32-bit unsigned - long instead of a 64-bit uintmax_t tends to give better - performance. On 64-bit hardware, unsigned long is generally 64 - bits already. Change this typedef to experiment with - performance. */ - typedef unsigned long int longword; - - const unsigned char *char_ptr; - const longword *longword_ptr; - longword repeated_one; - longword repeated_c; - unsigned char c; - - c = (unsigned char) c_in; - - /* Handle the first few bytes by reading one byte at a time. - Do this until CHAR_PTR is aligned on a longword boundary. */ - for (char_ptr = (const unsigned char *) s; - (size_t) char_ptr % sizeof (longword) != 0; - ++char_ptr) - if (*char_ptr == c) - return (void *) char_ptr; - - longword_ptr = (const longword *) char_ptr; - - /* All these elucidatory comments refer to 4-byte longwords, - but the theory applies equally well to any size longwords. */ - - /* Compute auxiliary longword values: - repeated_one is a value which has a 1 in every byte. - repeated_c has c in every byte. */ - repeated_one = 0x01010101; - repeated_c = c | (c << 8); - repeated_c |= repeated_c << 16; - if (0xffffffffU < (longword) -1) - { - repeated_one |= repeated_one << 31 << 1; - repeated_c |= repeated_c << 31 << 1; - if (8 < sizeof (longword)) - { - size_t i; - - for (i = 64; i < sizeof (longword) * 8; i *= 2) - { - repeated_one |= repeated_one << i; - repeated_c |= repeated_c << i; - } - } - } - - /* Instead of the traditional loop which tests each byte, we will - test a longword at a time. The tricky part is testing if *any of - the four* bytes in the longword in question are equal to NUL or - c. We first use an xor with repeated_c. This reduces the task - to testing whether *any of the four* bytes in longword1 is zero. - - We compute tmp = - ((longword1 - repeated_one) & ~longword1) & (repeated_one << 7). - That is, we perform the following operations: - 1. Subtract repeated_one. - 2. & ~longword1. - 3. & a mask consisting of 0x80 in every byte. - Consider what happens in each byte: - - If a byte of longword1 is zero, step 1 and 2 transform it into 0xff, - and step 3 transforms it into 0x80. A carry can also be propagated - to more significant bytes. - - If a byte of longword1 is nonzero, let its lowest 1 bit be at - position k (0 <= k <= 7); so the lowest k bits are 0. After step 1, - the byte ends in a single bit of value 0 and k bits of value 1. - After step 2, the result is just k bits of value 1: 2^k - 1. After - step 3, the result is 0. And no carry is produced. - So, if longword1 has only non-zero bytes, tmp is zero. - Whereas if longword1 has a zero byte, call j the position of the least - significant zero byte. Then the result has a zero at positions 0, ..., - j-1 and a 0x80 at position j. We cannot predict the result at the more - significant bytes (positions j+1..3), but it does not matter since we - already have a non-zero bit at position 8*j+7. - - The test whether any byte in longword1 is zero is equivalent - to testing whether tmp is nonzero. - - This test can read beyond the end of a string, depending on where - C_IN is encountered. However, this is considered safe since the - initialization phase ensured that the read will be aligned, - therefore, the read will not cross page boundaries and will not - cause a fault. */ - - while (1) - { - longword longword1 = *longword_ptr ^ repeated_c; - - if ((((longword1 - repeated_one) & ~longword1) - & (repeated_one << 7)) != 0) - break; - longword_ptr++; - } - - char_ptr = (const unsigned char *) longword_ptr; - - /* At this point, we know that one of the sizeof (longword) bytes - starting at char_ptr is == c. On little-endian machines, we - could determine the first such byte without any further memory - accesses, just by looking at the tmp result from the last loop - iteration. But this does not work on big-endian machines. - Choose code that works in both cases. */ - - char_ptr = (unsigned char *) longword_ptr; - while (*char_ptr != c) - char_ptr++; - return (void *) char_ptr; -} diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/rawmemchr.valgrind b/thirdparty/grub-2.04/grub-core/lib/gnulib/rawmemchr.valgrind deleted file mode 100644 index 636392368..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/rawmemchr.valgrind +++ /dev/null @@ -1,12 +0,0 @@ -# Suppress a valgrind message about use of uninitialized memory in rawmemchr(). -# This use is OK because it provides only a speedup. -{ - rawmemchr-value4 - Memcheck:Value4 - fun:rawmemchr -} -{ - rawmemchr-value8 - Memcheck:Value8 - fun:rawmemchr -} diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/realloc.c b/thirdparty/grub-2.04/grub-core/lib/gnulib/realloc.c deleted file mode 100644 index a81ce3b55..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/realloc.c +++ /dev/null @@ -1,79 +0,0 @@ -/* realloc() function that is glibc compatible. - - Copyright (C) 1997, 2003-2004, 2006-2007, 2009-2019 Free Software - Foundation, Inc. - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . */ - -/* written by Jim Meyering and Bruno Haible */ - -#define _GL_USE_STDLIB_ALLOC 1 -#include - -/* Only the AC_FUNC_REALLOC macro defines 'realloc' already in config.h. */ -#ifdef realloc -# define NEED_REALLOC_GNU 1 -/* Whereas the gnulib module 'realloc-gnu' defines HAVE_REALLOC_GNU. */ -#elif GNULIB_REALLOC_GNU && !HAVE_REALLOC_GNU -# define NEED_REALLOC_GNU 1 -#endif - -/* Infer the properties of the system's malloc function. - The gnulib module 'malloc-gnu' defines HAVE_MALLOC_GNU. */ -#if GNULIB_MALLOC_GNU && HAVE_MALLOC_GNU -# define SYSTEM_MALLOC_GLIBC_COMPATIBLE 1 -#endif - -#include - -#include - -/* Change the size of an allocated block of memory P to N bytes, - with error checking. If N is zero, change it to 1. If P is NULL, - use malloc. */ - -void * -rpl_realloc (void *p, size_t n) -{ - void *result; - -#if NEED_REALLOC_GNU - if (n == 0) - { - n = 1; - - /* In theory realloc might fail, so don't rely on it to free. */ - free (p); - p = NULL; - } -#endif - - if (p == NULL) - { -#if GNULIB_REALLOC_GNU && !NEED_REALLOC_GNU && !SYSTEM_MALLOC_GLIBC_COMPATIBLE - if (n == 0) - n = 1; -#endif - result = malloc (n); - } - else - result = realloc (p, n); - -#if !HAVE_REALLOC_POSIX - if (result == NULL) - errno = ENOMEM; -#endif - - return result; -} diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/regcomp.c b/thirdparty/grub-2.04/grub-core/lib/gnulib/regcomp.c deleted file mode 100644 index fe7dfcbe5..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/regcomp.c +++ /dev/null @@ -1,3934 +0,0 @@ -/* Extended regular expression matching and search library. - Copyright (C) 2002-2019 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Isamu Hasegawa . - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU General Public - License as published by the Free Software Foundation; either - version 3 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - General Public License for more details. - - You should have received a copy of the GNU General Public - License along with the GNU C Library; if not, see - . */ - -#ifdef _LIBC -# include -#endif - -static reg_errcode_t re_compile_internal (regex_t *preg, const char * pattern, - size_t length, reg_syntax_t syntax); -static void re_compile_fastmap_iter (regex_t *bufp, - const re_dfastate_t *init_state, - char *fastmap); -static reg_errcode_t init_dfa (re_dfa_t *dfa, size_t pat_len); -#ifdef RE_ENABLE_I18N -static void free_charset (re_charset_t *cset); -#endif /* RE_ENABLE_I18N */ -static void free_workarea_compile (regex_t *preg); -static reg_errcode_t create_initial_state (re_dfa_t *dfa); -#ifdef RE_ENABLE_I18N -static void optimize_utf8 (re_dfa_t *dfa); -#endif -static reg_errcode_t analyze (regex_t *preg); -static reg_errcode_t preorder (bin_tree_t *root, - reg_errcode_t (fn (void *, bin_tree_t *)), - void *extra); -static reg_errcode_t postorder (bin_tree_t *root, - reg_errcode_t (fn (void *, bin_tree_t *)), - void *extra); -static reg_errcode_t optimize_subexps (void *extra, bin_tree_t *node); -static reg_errcode_t lower_subexps (void *extra, bin_tree_t *node); -static bin_tree_t *lower_subexp (reg_errcode_t *err, regex_t *preg, - bin_tree_t *node); -static reg_errcode_t calc_first (void *extra, bin_tree_t *node); -static reg_errcode_t calc_next (void *extra, bin_tree_t *node); -static reg_errcode_t link_nfa_nodes (void *extra, bin_tree_t *node); -static Idx duplicate_node (re_dfa_t *dfa, Idx org_idx, unsigned int constraint); -static Idx search_duplicated_node (const re_dfa_t *dfa, Idx org_node, - unsigned int constraint); -static reg_errcode_t calc_eclosure (re_dfa_t *dfa); -static reg_errcode_t calc_eclosure_iter (re_node_set *new_set, re_dfa_t *dfa, - Idx node, bool root); -static reg_errcode_t calc_inveclosure (re_dfa_t *dfa); -static Idx fetch_number (re_string_t *input, re_token_t *token, - reg_syntax_t syntax); -static int peek_token (re_token_t *token, re_string_t *input, - reg_syntax_t syntax); -static bin_tree_t *parse (re_string_t *regexp, regex_t *preg, - reg_syntax_t syntax, reg_errcode_t *err); -static bin_tree_t *parse_reg_exp (re_string_t *regexp, regex_t *preg, - re_token_t *token, reg_syntax_t syntax, - Idx nest, reg_errcode_t *err); -static bin_tree_t *parse_branch (re_string_t *regexp, regex_t *preg, - re_token_t *token, reg_syntax_t syntax, - Idx nest, reg_errcode_t *err); -static bin_tree_t *parse_expression (re_string_t *regexp, regex_t *preg, - re_token_t *token, reg_syntax_t syntax, - Idx nest, reg_errcode_t *err); -static bin_tree_t *parse_sub_exp (re_string_t *regexp, regex_t *preg, - re_token_t *token, reg_syntax_t syntax, - Idx nest, reg_errcode_t *err); -static bin_tree_t *parse_dup_op (bin_tree_t *dup_elem, re_string_t *regexp, - re_dfa_t *dfa, re_token_t *token, - reg_syntax_t syntax, reg_errcode_t *err); -static bin_tree_t *parse_bracket_exp (re_string_t *regexp, re_dfa_t *dfa, - re_token_t *token, reg_syntax_t syntax, - reg_errcode_t *err); -static reg_errcode_t parse_bracket_element (bracket_elem_t *elem, - re_string_t *regexp, - re_token_t *token, int token_len, - re_dfa_t *dfa, - reg_syntax_t syntax, - bool accept_hyphen); -static reg_errcode_t parse_bracket_symbol (bracket_elem_t *elem, - re_string_t *regexp, - re_token_t *token); -#ifdef RE_ENABLE_I18N -static reg_errcode_t build_equiv_class (bitset_t sbcset, - re_charset_t *mbcset, - Idx *equiv_class_alloc, - const unsigned char *name); -static reg_errcode_t build_charclass (RE_TRANSLATE_TYPE trans, - bitset_t sbcset, - re_charset_t *mbcset, - Idx *char_class_alloc, - const char *class_name, - reg_syntax_t syntax); -#else /* not RE_ENABLE_I18N */ -static reg_errcode_t build_equiv_class (bitset_t sbcset, - const unsigned char *name); -static reg_errcode_t build_charclass (RE_TRANSLATE_TYPE trans, - bitset_t sbcset, - const char *class_name, - reg_syntax_t syntax); -#endif /* not RE_ENABLE_I18N */ -static bin_tree_t *build_charclass_op (re_dfa_t *dfa, - RE_TRANSLATE_TYPE trans, - const char *class_name, - const char *extra, - bool non_match, reg_errcode_t *err); -static bin_tree_t *create_tree (re_dfa_t *dfa, - bin_tree_t *left, bin_tree_t *right, - re_token_type_t type); -static bin_tree_t *create_token_tree (re_dfa_t *dfa, - bin_tree_t *left, bin_tree_t *right, - const re_token_t *token); -static bin_tree_t *duplicate_tree (const bin_tree_t *src, re_dfa_t *dfa); -static void free_token (re_token_t *node); -static reg_errcode_t free_tree (void *extra, bin_tree_t *node); -static reg_errcode_t mark_opt_subexp (void *extra, bin_tree_t *node); - -/* This table gives an error message for each of the error codes listed - in regex.h. Obviously the order here has to be same as there. - POSIX doesn't require that we do anything for REG_NOERROR, - but why not be nice? */ - -static const char __re_error_msgid[] = - { -#define REG_NOERROR_IDX 0 - gettext_noop ("Success") /* REG_NOERROR */ - "\0" -#define REG_NOMATCH_IDX (REG_NOERROR_IDX + sizeof "Success") - gettext_noop ("No match") /* REG_NOMATCH */ - "\0" -#define REG_BADPAT_IDX (REG_NOMATCH_IDX + sizeof "No match") - gettext_noop ("Invalid regular expression") /* REG_BADPAT */ - "\0" -#define REG_ECOLLATE_IDX (REG_BADPAT_IDX + sizeof "Invalid regular expression") - gettext_noop ("Invalid collation character") /* REG_ECOLLATE */ - "\0" -#define REG_ECTYPE_IDX (REG_ECOLLATE_IDX + sizeof "Invalid collation character") - gettext_noop ("Invalid character class name") /* REG_ECTYPE */ - "\0" -#define REG_EESCAPE_IDX (REG_ECTYPE_IDX + sizeof "Invalid character class name") - gettext_noop ("Trailing backslash") /* REG_EESCAPE */ - "\0" -#define REG_ESUBREG_IDX (REG_EESCAPE_IDX + sizeof "Trailing backslash") - gettext_noop ("Invalid back reference") /* REG_ESUBREG */ - "\0" -#define REG_EBRACK_IDX (REG_ESUBREG_IDX + sizeof "Invalid back reference") - gettext_noop ("Unmatched [, [^, [:, [., or [=") /* REG_EBRACK */ - "\0" -#define REG_EPAREN_IDX (REG_EBRACK_IDX + sizeof "Unmatched [, [^, [:, [., or [=") - gettext_noop ("Unmatched ( or \\(") /* REG_EPAREN */ - "\0" -#define REG_EBRACE_IDX (REG_EPAREN_IDX + sizeof "Unmatched ( or \\(") - gettext_noop ("Unmatched \\{") /* REG_EBRACE */ - "\0" -#define REG_BADBR_IDX (REG_EBRACE_IDX + sizeof "Unmatched \\{") - gettext_noop ("Invalid content of \\{\\}") /* REG_BADBR */ - "\0" -#define REG_ERANGE_IDX (REG_BADBR_IDX + sizeof "Invalid content of \\{\\}") - gettext_noop ("Invalid range end") /* REG_ERANGE */ - "\0" -#define REG_ESPACE_IDX (REG_ERANGE_IDX + sizeof "Invalid range end") - gettext_noop ("Memory exhausted") /* REG_ESPACE */ - "\0" -#define REG_BADRPT_IDX (REG_ESPACE_IDX + sizeof "Memory exhausted") - gettext_noop ("Invalid preceding regular expression") /* REG_BADRPT */ - "\0" -#define REG_EEND_IDX (REG_BADRPT_IDX + sizeof "Invalid preceding regular expression") - gettext_noop ("Premature end of regular expression") /* REG_EEND */ - "\0" -#define REG_ESIZE_IDX (REG_EEND_IDX + sizeof "Premature end of regular expression") - gettext_noop ("Regular expression too big") /* REG_ESIZE */ - "\0" -#define REG_ERPAREN_IDX (REG_ESIZE_IDX + sizeof "Regular expression too big") - gettext_noop ("Unmatched ) or \\)") /* REG_ERPAREN */ - }; - -static const size_t __re_error_msgid_idx[] = - { - REG_NOERROR_IDX, - REG_NOMATCH_IDX, - REG_BADPAT_IDX, - REG_ECOLLATE_IDX, - REG_ECTYPE_IDX, - REG_EESCAPE_IDX, - REG_ESUBREG_IDX, - REG_EBRACK_IDX, - REG_EPAREN_IDX, - REG_EBRACE_IDX, - REG_BADBR_IDX, - REG_ERANGE_IDX, - REG_ESPACE_IDX, - REG_BADRPT_IDX, - REG_EEND_IDX, - REG_ESIZE_IDX, - REG_ERPAREN_IDX - }; - -/* Entry points for GNU code. */ - -/* re_compile_pattern is the GNU regular expression compiler: it - compiles PATTERN (of length LENGTH) and puts the result in BUFP. - Returns 0 if the pattern was valid, otherwise an error string. - - Assumes the 'allocated' (and perhaps 'buffer') and 'translate' fields - are set in BUFP on entry. */ - -const char * -re_compile_pattern (const char *pattern, size_t length, - struct re_pattern_buffer *bufp) -{ - reg_errcode_t ret; - - /* And GNU code determines whether or not to get register information - by passing null for the REGS argument to re_match, etc., not by - setting no_sub, unless RE_NO_SUB is set. */ - bufp->no_sub = !!(re_syntax_options & RE_NO_SUB); - - /* Match anchors at newline. */ - bufp->newline_anchor = 1; - - ret = re_compile_internal (bufp, pattern, length, re_syntax_options); - - if (!ret) - return NULL; - return gettext (__re_error_msgid + __re_error_msgid_idx[(int) ret]); -} -weak_alias (__re_compile_pattern, re_compile_pattern) - -/* Set by 're_set_syntax' to the current regexp syntax to recognize. Can - also be assigned to arbitrarily: each pattern buffer stores its own - syntax, so it can be changed between regex compilations. */ -/* This has no initializer because initialized variables in Emacs - become read-only after dumping. */ -reg_syntax_t re_syntax_options; - - -/* Specify the precise syntax of regexps for compilation. This provides - for compatibility for various utilities which historically have - different, incompatible syntaxes. - - The argument SYNTAX is a bit mask comprised of the various bits - defined in regex.h. We return the old syntax. */ - -reg_syntax_t -re_set_syntax (reg_syntax_t syntax) -{ - reg_syntax_t ret = re_syntax_options; - - re_syntax_options = syntax; - return ret; -} -weak_alias (__re_set_syntax, re_set_syntax) - -int -re_compile_fastmap (struct re_pattern_buffer *bufp) -{ - re_dfa_t *dfa = bufp->buffer; - char *fastmap = bufp->fastmap; - - memset (fastmap, '\0', sizeof (char) * SBC_MAX); - re_compile_fastmap_iter (bufp, dfa->init_state, fastmap); - if (dfa->init_state != dfa->init_state_word) - re_compile_fastmap_iter (bufp, dfa->init_state_word, fastmap); - if (dfa->init_state != dfa->init_state_nl) - re_compile_fastmap_iter (bufp, dfa->init_state_nl, fastmap); - if (dfa->init_state != dfa->init_state_begbuf) - re_compile_fastmap_iter (bufp, dfa->init_state_begbuf, fastmap); - bufp->fastmap_accurate = 1; - return 0; -} -weak_alias (__re_compile_fastmap, re_compile_fastmap) - -static inline void -__attribute__ ((always_inline)) -re_set_fastmap (char *fastmap, bool icase, int ch) -{ - fastmap[ch] = 1; - if (icase) - fastmap[tolower (ch)] = 1; -} - -/* Helper function for re_compile_fastmap. - Compile fastmap for the initial_state INIT_STATE. */ - -static void -re_compile_fastmap_iter (regex_t *bufp, const re_dfastate_t *init_state, - char *fastmap) -{ - re_dfa_t *dfa = bufp->buffer; - Idx node_cnt; - bool icase = (dfa->mb_cur_max == 1 && (bufp->syntax & RE_ICASE)); - for (node_cnt = 0; node_cnt < init_state->nodes.nelem; ++node_cnt) - { - Idx node = init_state->nodes.elems[node_cnt]; - re_token_type_t type = dfa->nodes[node].type; - - if (type == CHARACTER) - { - re_set_fastmap (fastmap, icase, dfa->nodes[node].opr.c); -#ifdef RE_ENABLE_I18N - if ((bufp->syntax & RE_ICASE) && dfa->mb_cur_max > 1) - { - unsigned char buf[MB_LEN_MAX]; - unsigned char *p; - wchar_t wc; - mbstate_t state; - - p = buf; - *p++ = dfa->nodes[node].opr.c; - while (++node < dfa->nodes_len - && dfa->nodes[node].type == CHARACTER - && dfa->nodes[node].mb_partial) - *p++ = dfa->nodes[node].opr.c; - memset (&state, '\0', sizeof (state)); - if (__mbrtowc (&wc, (const char *) buf, p - buf, - &state) == p - buf - && (__wcrtomb ((char *) buf, __towlower (wc), &state) - != (size_t) -1)) - re_set_fastmap (fastmap, false, buf[0]); - } -#endif - } - else if (type == SIMPLE_BRACKET) - { - int i, ch; - for (i = 0, ch = 0; i < BITSET_WORDS; ++i) - { - int j; - bitset_word_t w = dfa->nodes[node].opr.sbcset[i]; - for (j = 0; j < BITSET_WORD_BITS; ++j, ++ch) - if (w & ((bitset_word_t) 1 << j)) - re_set_fastmap (fastmap, icase, ch); - } - } -#ifdef RE_ENABLE_I18N - else if (type == COMPLEX_BRACKET) - { - re_charset_t *cset = dfa->nodes[node].opr.mbcset; - Idx i; - -# ifdef _LIBC - /* See if we have to try all bytes which start multiple collation - elements. - e.g. In da_DK, we want to catch 'a' since "aa" is a valid - collation element, and don't catch 'b' since 'b' is - the only collation element which starts from 'b' (and - it is caught by SIMPLE_BRACKET). */ - if (_NL_CURRENT_WORD (LC_COLLATE, _NL_COLLATE_NRULES) != 0 - && (cset->ncoll_syms || cset->nranges)) - { - const int32_t *table = (const int32_t *) - _NL_CURRENT (LC_COLLATE, _NL_COLLATE_TABLEMB); - for (i = 0; i < SBC_MAX; ++i) - if (table[i] < 0) - re_set_fastmap (fastmap, icase, i); - } -# endif /* _LIBC */ - - /* See if we have to start the match at all multibyte characters, - i.e. where we would not find an invalid sequence. This only - applies to multibyte character sets; for single byte character - sets, the SIMPLE_BRACKET again suffices. */ - if (dfa->mb_cur_max > 1 - && (cset->nchar_classes || cset->non_match || cset->nranges -# ifdef _LIBC - || cset->nequiv_classes -# endif /* _LIBC */ - )) - { - unsigned char c = 0; - do - { - mbstate_t mbs; - memset (&mbs, 0, sizeof (mbs)); - if (__mbrtowc (NULL, (char *) &c, 1, &mbs) == (size_t) -2) - re_set_fastmap (fastmap, false, (int) c); - } - while (++c != 0); - } - - else - { - /* ... Else catch all bytes which can start the mbchars. */ - for (i = 0; i < cset->nmbchars; ++i) - { - char buf[256]; - mbstate_t state; - memset (&state, '\0', sizeof (state)); - if (__wcrtomb (buf, cset->mbchars[i], &state) != (size_t) -1) - re_set_fastmap (fastmap, icase, *(unsigned char *) buf); - if ((bufp->syntax & RE_ICASE) && dfa->mb_cur_max > 1) - { - if (__wcrtomb (buf, __towlower (cset->mbchars[i]), &state) - != (size_t) -1) - re_set_fastmap (fastmap, false, *(unsigned char *) buf); - } - } - } - } -#endif /* RE_ENABLE_I18N */ - else if (type == OP_PERIOD -#ifdef RE_ENABLE_I18N - || type == OP_UTF8_PERIOD -#endif /* RE_ENABLE_I18N */ - || type == END_OF_RE) - { - memset (fastmap, '\1', sizeof (char) * SBC_MAX); - if (type == END_OF_RE) - bufp->can_be_null = 1; - return; - } - } -} - -/* Entry point for POSIX code. */ -/* regcomp takes a regular expression as a string and compiles it. - - PREG is a regex_t *. We do not expect any fields to be initialized, - since POSIX says we shouldn't. Thus, we set - - 'buffer' to the compiled pattern; - 'used' to the length of the compiled pattern; - 'syntax' to RE_SYNTAX_POSIX_EXTENDED if the - REG_EXTENDED bit in CFLAGS is set; otherwise, to - RE_SYNTAX_POSIX_BASIC; - 'newline_anchor' to REG_NEWLINE being set in CFLAGS; - 'fastmap' to an allocated space for the fastmap; - 'fastmap_accurate' to zero; - 're_nsub' to the number of subexpressions in PATTERN. - - PATTERN is the address of the pattern string. - - CFLAGS is a series of bits which affect compilation. - - If REG_EXTENDED is set, we use POSIX extended syntax; otherwise, we - use POSIX basic syntax. - - If REG_NEWLINE is set, then . and [^...] don't match newline. - Also, regexec will try a match beginning after every newline. - - If REG_ICASE is set, then we considers upper- and lowercase - versions of letters to be equivalent when matching. - - If REG_NOSUB is set, then when PREG is passed to regexec, that - routine will report only success or failure, and nothing about the - registers. - - It returns 0 if it succeeds, nonzero if it doesn't. (See regex.h for - the return codes and their meanings.) */ - -int -regcomp (regex_t *__restrict preg, const char *__restrict pattern, int cflags) -{ - reg_errcode_t ret; - reg_syntax_t syntax = ((cflags & REG_EXTENDED) ? RE_SYNTAX_POSIX_EXTENDED - : RE_SYNTAX_POSIX_BASIC); - - preg->buffer = NULL; - preg->allocated = 0; - preg->used = 0; - - /* Try to allocate space for the fastmap. */ - preg->fastmap = re_malloc (char, SBC_MAX); - if (__glibc_unlikely (preg->fastmap == NULL)) - return REG_ESPACE; - - syntax |= (cflags & REG_ICASE) ? RE_ICASE : 0; - - /* If REG_NEWLINE is set, newlines are treated differently. */ - if (cflags & REG_NEWLINE) - { /* REG_NEWLINE implies neither . nor [^...] match newline. */ - syntax &= ~RE_DOT_NEWLINE; - syntax |= RE_HAT_LISTS_NOT_NEWLINE; - /* It also changes the matching behavior. */ - preg->newline_anchor = 1; - } - else - preg->newline_anchor = 0; - preg->no_sub = !!(cflags & REG_NOSUB); - preg->translate = NULL; - - ret = re_compile_internal (preg, pattern, strlen (pattern), syntax); - - /* POSIX doesn't distinguish between an unmatched open-group and an - unmatched close-group: both are REG_EPAREN. */ - if (ret == REG_ERPAREN) - ret = REG_EPAREN; - - /* We have already checked preg->fastmap != NULL. */ - if (__glibc_likely (ret == REG_NOERROR)) - /* Compute the fastmap now, since regexec cannot modify the pattern - buffer. This function never fails in this implementation. */ - (void) re_compile_fastmap (preg); - else - { - /* Some error occurred while compiling the expression. */ - re_free (preg->fastmap); - preg->fastmap = NULL; - } - - return (int) ret; -} -libc_hidden_def (__regcomp) -weak_alias (__regcomp, regcomp) - -/* Returns a message corresponding to an error code, ERRCODE, returned - from either regcomp or regexec. We don't use PREG here. */ - -size_t -regerror (int errcode, const regex_t *__restrict preg, char *__restrict errbuf, - size_t errbuf_size) -{ - const char *msg; - size_t msg_size; - int nerrcodes = sizeof __re_error_msgid_idx / sizeof __re_error_msgid_idx[0]; - - if (__glibc_unlikely (errcode < 0 || errcode >= nerrcodes)) - /* Only error codes returned by the rest of the code should be passed - to this routine. If we are given anything else, or if other regex - code generates an invalid error code, then the program has a bug. - Dump core so we can fix it. */ - msg = gettext ("unknown regexp error"); - else - msg = gettext (__re_error_msgid + __re_error_msgid_idx[errcode]); - - msg_size = strlen (msg) + 1; /* Includes the null. */ - - if (__glibc_likely (errbuf_size != 0)) - { - size_t cpy_size = msg_size; - if (__glibc_unlikely (msg_size > errbuf_size)) - { - cpy_size = errbuf_size - 1; - errbuf[cpy_size] = '\0'; - } - memcpy (errbuf, msg, cpy_size); - } - - return msg_size; -} -weak_alias (__regerror, regerror) - - -#ifdef RE_ENABLE_I18N -/* This static array is used for the map to single-byte characters when - UTF-8 is used. Otherwise we would allocate memory just to initialize - it the same all the time. UTF-8 is the preferred encoding so this is - a worthwhile optimization. */ -static const bitset_t utf8_sb_map = -{ - /* Set the first 128 bits. */ -# if defined __GNUC__ && !defined __STRICT_ANSI__ - [0 ... 0x80 / BITSET_WORD_BITS - 1] = BITSET_WORD_MAX -# else -# if 4 * BITSET_WORD_BITS < ASCII_CHARS -# error "bitset_word_t is narrower than 32 bits" -# elif 3 * BITSET_WORD_BITS < ASCII_CHARS - BITSET_WORD_MAX, BITSET_WORD_MAX, BITSET_WORD_MAX, -# elif 2 * BITSET_WORD_BITS < ASCII_CHARS - BITSET_WORD_MAX, BITSET_WORD_MAX, -# elif 1 * BITSET_WORD_BITS < ASCII_CHARS - BITSET_WORD_MAX, -# endif - (BITSET_WORD_MAX - >> (SBC_MAX % BITSET_WORD_BITS == 0 - ? 0 - : BITSET_WORD_BITS - SBC_MAX % BITSET_WORD_BITS)) -# endif -}; -#endif - - -static void -free_dfa_content (re_dfa_t *dfa) -{ - Idx i, j; - - if (dfa->nodes) - for (i = 0; i < dfa->nodes_len; ++i) - free_token (dfa->nodes + i); - re_free (dfa->nexts); - for (i = 0; i < dfa->nodes_len; ++i) - { - if (dfa->eclosures != NULL) - re_node_set_free (dfa->eclosures + i); - if (dfa->inveclosures != NULL) - re_node_set_free (dfa->inveclosures + i); - if (dfa->edests != NULL) - re_node_set_free (dfa->edests + i); - } - re_free (dfa->edests); - re_free (dfa->eclosures); - re_free (dfa->inveclosures); - re_free (dfa->nodes); - - if (dfa->state_table) - for (i = 0; i <= dfa->state_hash_mask; ++i) - { - struct re_state_table_entry *entry = dfa->state_table + i; - for (j = 0; j < entry->num; ++j) - { - re_dfastate_t *state = entry->array[j]; - free_state (state); - } - re_free (entry->array); - } - re_free (dfa->state_table); -#ifdef RE_ENABLE_I18N - if (dfa->sb_char != utf8_sb_map) - re_free (dfa->sb_char); -#endif - re_free (dfa->subexp_map); -#ifdef DEBUG - re_free (dfa->re_str); -#endif - - re_free (dfa); -} - - -/* Free dynamically allocated space used by PREG. */ - -void -regfree (regex_t *preg) -{ - re_dfa_t *dfa = preg->buffer; - if (__glibc_likely (dfa != NULL)) - { - lock_fini (dfa->lock); - free_dfa_content (dfa); - } - preg->buffer = NULL; - preg->allocated = 0; - - re_free (preg->fastmap); - preg->fastmap = NULL; - - re_free (preg->translate); - preg->translate = NULL; -} -libc_hidden_def (__regfree) -weak_alias (__regfree, regfree) - -/* Entry points compatible with 4.2 BSD regex library. We don't define - them unless specifically requested. */ - -#if defined _REGEX_RE_COMP || defined _LIBC - -/* BSD has one and only one pattern buffer. */ -static struct re_pattern_buffer re_comp_buf; - -char * -# ifdef _LIBC -/* Make these definitions weak in libc, so POSIX programs can redefine - these names if they don't use our functions, and still use - regcomp/regexec above without link errors. */ -weak_function -# endif -re_comp (const char *s) -{ - reg_errcode_t ret; - char *fastmap; - - if (!s) - { - if (!re_comp_buf.buffer) - return gettext ("No previous regular expression"); - return 0; - } - - if (re_comp_buf.buffer) - { - fastmap = re_comp_buf.fastmap; - re_comp_buf.fastmap = NULL; - __regfree (&re_comp_buf); - memset (&re_comp_buf, '\0', sizeof (re_comp_buf)); - re_comp_buf.fastmap = fastmap; - } - - if (re_comp_buf.fastmap == NULL) - { - re_comp_buf.fastmap = re_malloc (char, SBC_MAX); - if (re_comp_buf.fastmap == NULL) - return (char *) gettext (__re_error_msgid - + __re_error_msgid_idx[(int) REG_ESPACE]); - } - - /* Since 're_exec' always passes NULL for the 'regs' argument, we - don't need to initialize the pattern buffer fields which affect it. */ - - /* Match anchors at newlines. */ - re_comp_buf.newline_anchor = 1; - - ret = re_compile_internal (&re_comp_buf, s, strlen (s), re_syntax_options); - - if (!ret) - return NULL; - - /* Yes, we're discarding 'const' here if !HAVE_LIBINTL. */ - return (char *) gettext (__re_error_msgid + __re_error_msgid_idx[(int) ret]); -} - -#ifdef _LIBC -libc_freeres_fn (free_mem) -{ - __regfree (&re_comp_buf); -} -#endif - -#endif /* _REGEX_RE_COMP */ - -/* Internal entry point. - Compile the regular expression PATTERN, whose length is LENGTH. - SYNTAX indicate regular expression's syntax. */ - -static reg_errcode_t -re_compile_internal (regex_t *preg, const char * pattern, size_t length, - reg_syntax_t syntax) -{ - reg_errcode_t err = REG_NOERROR; - re_dfa_t *dfa; - re_string_t regexp; - - /* Initialize the pattern buffer. */ - preg->fastmap_accurate = 0; - preg->syntax = syntax; - preg->not_bol = preg->not_eol = 0; - preg->used = 0; - preg->re_nsub = 0; - preg->can_be_null = 0; - preg->regs_allocated = REGS_UNALLOCATED; - - /* Initialize the dfa. */ - dfa = preg->buffer; - if (__glibc_unlikely (preg->allocated < sizeof (re_dfa_t))) - { - /* If zero allocated, but buffer is non-null, try to realloc - enough space. This loses if buffer's address is bogus, but - that is the user's responsibility. If ->buffer is NULL this - is a simple allocation. */ - dfa = re_realloc (preg->buffer, re_dfa_t, 1); - if (dfa == NULL) - return REG_ESPACE; - preg->allocated = sizeof (re_dfa_t); - preg->buffer = dfa; - } - preg->used = sizeof (re_dfa_t); - - err = init_dfa (dfa, length); - if (__glibc_unlikely (err == REG_NOERROR && lock_init (dfa->lock) != 0)) - err = REG_ESPACE; - if (__glibc_unlikely (err != REG_NOERROR)) - { - free_dfa_content (dfa); - preg->buffer = NULL; - preg->allocated = 0; - return err; - } -#ifdef DEBUG - /* Note: length+1 will not overflow since it is checked in init_dfa. */ - dfa->re_str = re_malloc (char, length + 1); - strncpy (dfa->re_str, pattern, length + 1); -#endif - - err = re_string_construct (®exp, pattern, length, preg->translate, - (syntax & RE_ICASE) != 0, dfa); - if (__glibc_unlikely (err != REG_NOERROR)) - { - re_compile_internal_free_return: - free_workarea_compile (preg); - re_string_destruct (®exp); - lock_fini (dfa->lock); - free_dfa_content (dfa); - preg->buffer = NULL; - preg->allocated = 0; - return err; - } - - /* Parse the regular expression, and build a structure tree. */ - preg->re_nsub = 0; - dfa->str_tree = parse (®exp, preg, syntax, &err); - if (__glibc_unlikely (dfa->str_tree == NULL)) - goto re_compile_internal_free_return; - - /* Analyze the tree and create the nfa. */ - err = analyze (preg); - if (__glibc_unlikely (err != REG_NOERROR)) - goto re_compile_internal_free_return; - -#ifdef RE_ENABLE_I18N - /* If possible, do searching in single byte encoding to speed things up. */ - if (dfa->is_utf8 && !(syntax & RE_ICASE) && preg->translate == NULL) - optimize_utf8 (dfa); -#endif - - /* Then create the initial state of the dfa. */ - err = create_initial_state (dfa); - - /* Release work areas. */ - free_workarea_compile (preg); - re_string_destruct (®exp); - - if (__glibc_unlikely (err != REG_NOERROR)) - { - lock_fini (dfa->lock); - free_dfa_content (dfa); - preg->buffer = NULL; - preg->allocated = 0; - } - - return err; -} - -/* Initialize DFA. We use the length of the regular expression PAT_LEN - as the initial length of some arrays. */ - -static reg_errcode_t -init_dfa (re_dfa_t *dfa, size_t pat_len) -{ - __re_size_t table_size; -#ifndef _LIBC - const char *codeset_name; -#endif -#ifdef RE_ENABLE_I18N - size_t max_i18n_object_size = MAX (sizeof (wchar_t), sizeof (wctype_t)); -#else - size_t max_i18n_object_size = 0; -#endif - size_t max_object_size = - MAX (sizeof (struct re_state_table_entry), - MAX (sizeof (re_token_t), - MAX (sizeof (re_node_set), - MAX (sizeof (regmatch_t), - max_i18n_object_size)))); - - memset (dfa, '\0', sizeof (re_dfa_t)); - - /* Force allocation of str_tree_storage the first time. */ - dfa->str_tree_storage_idx = BIN_TREE_STORAGE_SIZE; - - /* Avoid overflows. The extra "/ 2" is for the table_size doubling - calculation below, and for similar doubling calculations - elsewhere. And it's <= rather than <, because some of the - doubling calculations add 1 afterwards. */ - if (__glibc_unlikely (MIN (IDX_MAX, SIZE_MAX / max_object_size) / 2 - <= pat_len)) - return REG_ESPACE; - - dfa->nodes_alloc = pat_len + 1; - dfa->nodes = re_malloc (re_token_t, dfa->nodes_alloc); - - /* table_size = 2 ^ ceil(log pat_len) */ - for (table_size = 1; ; table_size <<= 1) - if (table_size > pat_len) - break; - - dfa->state_table = calloc (sizeof (struct re_state_table_entry), table_size); - dfa->state_hash_mask = table_size - 1; - - dfa->mb_cur_max = MB_CUR_MAX; -#ifdef _LIBC - if (dfa->mb_cur_max == 6 - && strcmp (_NL_CURRENT (LC_CTYPE, _NL_CTYPE_CODESET_NAME), "UTF-8") == 0) - dfa->is_utf8 = 1; - dfa->map_notascii = (_NL_CURRENT_WORD (LC_CTYPE, _NL_CTYPE_MAP_TO_NONASCII) - != 0); -#else - codeset_name = nl_langinfo (CODESET); - if ((codeset_name[0] == 'U' || codeset_name[0] == 'u') - && (codeset_name[1] == 'T' || codeset_name[1] == 't') - && (codeset_name[2] == 'F' || codeset_name[2] == 'f') - && strcmp (codeset_name + 3 + (codeset_name[3] == '-'), "8") == 0) - dfa->is_utf8 = 1; - - /* We check exhaustively in the loop below if this charset is a - superset of ASCII. */ - dfa->map_notascii = 0; -#endif - -#ifdef RE_ENABLE_I18N - if (dfa->mb_cur_max > 1) - { - if (dfa->is_utf8) - dfa->sb_char = (re_bitset_ptr_t) utf8_sb_map; - else - { - int i, j, ch; - - dfa->sb_char = (re_bitset_ptr_t) calloc (sizeof (bitset_t), 1); - if (__glibc_unlikely (dfa->sb_char == NULL)) - return REG_ESPACE; - - /* Set the bits corresponding to single byte chars. */ - for (i = 0, ch = 0; i < BITSET_WORDS; ++i) - for (j = 0; j < BITSET_WORD_BITS; ++j, ++ch) - { - wint_t wch = __btowc (ch); - if (wch != WEOF) - dfa->sb_char[i] |= (bitset_word_t) 1 << j; -# ifndef _LIBC - if (isascii (ch) && wch != ch) - dfa->map_notascii = 1; -# endif - } - } - } -#endif - - if (__glibc_unlikely (dfa->nodes == NULL || dfa->state_table == NULL)) - return REG_ESPACE; - return REG_NOERROR; -} - -/* Initialize WORD_CHAR table, which indicate which character is - "word". In this case "word" means that it is the word construction - character used by some operators like "\<", "\>", etc. */ - -static void -init_word_char (re_dfa_t *dfa) -{ - int i = 0; - int j; - int ch = 0; - dfa->word_ops_used = 1; - if (__glibc_likely (dfa->map_notascii == 0)) - { - /* Avoid uint32_t and uint64_t as some non-GCC platforms lack - them, an issue when this code is used in Gnulib. */ - bitset_word_t bits0 = 0x00000000; - bitset_word_t bits1 = 0x03ff0000; - bitset_word_t bits2 = 0x87fffffe; - bitset_word_t bits3 = 0x07fffffe; - if (BITSET_WORD_BITS == 64) - { - /* Pacify gcc -Woverflow on 32-bit platformns. */ - dfa->word_char[0] = bits1 << 31 << 1 | bits0; - dfa->word_char[1] = bits3 << 31 << 1 | bits2; - i = 2; - } - else if (BITSET_WORD_BITS == 32) - { - dfa->word_char[0] = bits0; - dfa->word_char[1] = bits1; - dfa->word_char[2] = bits2; - dfa->word_char[3] = bits3; - i = 4; - } - else - goto general_case; - ch = 128; - - if (__glibc_likely (dfa->is_utf8)) - { - memset (&dfa->word_char[i], '\0', (SBC_MAX - ch) / 8); - return; - } - } - - general_case: - for (; i < BITSET_WORDS; ++i) - for (j = 0; j < BITSET_WORD_BITS; ++j, ++ch) - if (isalnum (ch) || ch == '_') - dfa->word_char[i] |= (bitset_word_t) 1 << j; -} - -/* Free the work area which are only used while compiling. */ - -static void -free_workarea_compile (regex_t *preg) -{ - re_dfa_t *dfa = preg->buffer; - bin_tree_storage_t *storage, *next; - for (storage = dfa->str_tree_storage; storage; storage = next) - { - next = storage->next; - re_free (storage); - } - dfa->str_tree_storage = NULL; - dfa->str_tree_storage_idx = BIN_TREE_STORAGE_SIZE; - dfa->str_tree = NULL; - re_free (dfa->org_indices); - dfa->org_indices = NULL; -} - -/* Create initial states for all contexts. */ - -static reg_errcode_t -create_initial_state (re_dfa_t *dfa) -{ - Idx first, i; - reg_errcode_t err; - re_node_set init_nodes; - - /* Initial states have the epsilon closure of the node which is - the first node of the regular expression. */ - first = dfa->str_tree->first->node_idx; - dfa->init_node = first; - err = re_node_set_init_copy (&init_nodes, dfa->eclosures + first); - if (__glibc_unlikely (err != REG_NOERROR)) - return err; - - /* The back-references which are in initial states can epsilon transit, - since in this case all of the subexpressions can be null. - Then we add epsilon closures of the nodes which are the next nodes of - the back-references. */ - if (dfa->nbackref > 0) - for (i = 0; i < init_nodes.nelem; ++i) - { - Idx node_idx = init_nodes.elems[i]; - re_token_type_t type = dfa->nodes[node_idx].type; - - Idx clexp_idx; - if (type != OP_BACK_REF) - continue; - for (clexp_idx = 0; clexp_idx < init_nodes.nelem; ++clexp_idx) - { - re_token_t *clexp_node; - clexp_node = dfa->nodes + init_nodes.elems[clexp_idx]; - if (clexp_node->type == OP_CLOSE_SUBEXP - && clexp_node->opr.idx == dfa->nodes[node_idx].opr.idx) - break; - } - if (clexp_idx == init_nodes.nelem) - continue; - - if (type == OP_BACK_REF) - { - Idx dest_idx = dfa->edests[node_idx].elems[0]; - if (!re_node_set_contains (&init_nodes, dest_idx)) - { - reg_errcode_t merge_err - = re_node_set_merge (&init_nodes, dfa->eclosures + dest_idx); - if (merge_err != REG_NOERROR) - return merge_err; - i = 0; - } - } - } - - /* It must be the first time to invoke acquire_state. */ - dfa->init_state = re_acquire_state_context (&err, dfa, &init_nodes, 0); - /* We don't check ERR here, since the initial state must not be NULL. */ - if (__glibc_unlikely (dfa->init_state == NULL)) - return err; - if (dfa->init_state->has_constraint) - { - dfa->init_state_word = re_acquire_state_context (&err, dfa, &init_nodes, - CONTEXT_WORD); - dfa->init_state_nl = re_acquire_state_context (&err, dfa, &init_nodes, - CONTEXT_NEWLINE); - dfa->init_state_begbuf = re_acquire_state_context (&err, dfa, - &init_nodes, - CONTEXT_NEWLINE - | CONTEXT_BEGBUF); - if (__glibc_unlikely (dfa->init_state_word == NULL - || dfa->init_state_nl == NULL - || dfa->init_state_begbuf == NULL)) - return err; - } - else - dfa->init_state_word = dfa->init_state_nl - = dfa->init_state_begbuf = dfa->init_state; - - re_node_set_free (&init_nodes); - return REG_NOERROR; -} - -#ifdef RE_ENABLE_I18N -/* If it is possible to do searching in single byte encoding instead of UTF-8 - to speed things up, set dfa->mb_cur_max to 1, clear is_utf8 and change - DFA nodes where needed. */ - -static void -optimize_utf8 (re_dfa_t *dfa) -{ - Idx node; - int i; - bool mb_chars = false; - bool has_period = false; - - for (node = 0; node < dfa->nodes_len; ++node) - switch (dfa->nodes[node].type) - { - case CHARACTER: - if (dfa->nodes[node].opr.c >= ASCII_CHARS) - mb_chars = true; - break; - case ANCHOR: - switch (dfa->nodes[node].opr.ctx_type) - { - case LINE_FIRST: - case LINE_LAST: - case BUF_FIRST: - case BUF_LAST: - break; - default: - /* Word anchors etc. cannot be handled. It's okay to test - opr.ctx_type since constraints (for all DFA nodes) are - created by ORing one or more opr.ctx_type values. */ - return; - } - break; - case OP_PERIOD: - has_period = true; - break; - case OP_BACK_REF: - case OP_ALT: - case END_OF_RE: - case OP_DUP_ASTERISK: - case OP_OPEN_SUBEXP: - case OP_CLOSE_SUBEXP: - break; - case COMPLEX_BRACKET: - return; - case SIMPLE_BRACKET: - /* Just double check. */ - { - int rshift = (ASCII_CHARS % BITSET_WORD_BITS == 0 - ? 0 - : BITSET_WORD_BITS - ASCII_CHARS % BITSET_WORD_BITS); - for (i = ASCII_CHARS / BITSET_WORD_BITS; i < BITSET_WORDS; ++i) - { - if (dfa->nodes[node].opr.sbcset[i] >> rshift != 0) - return; - rshift = 0; - } - } - break; - default: - break; - } - - if (mb_chars || has_period) - for (node = 0; node < dfa->nodes_len; ++node) - { - if (dfa->nodes[node].type == CHARACTER - && dfa->nodes[node].opr.c >= ASCII_CHARS) - dfa->nodes[node].mb_partial = 0; - else if (dfa->nodes[node].type == OP_PERIOD) - dfa->nodes[node].type = OP_UTF8_PERIOD; - } - - /* The search can be in single byte locale. */ - dfa->mb_cur_max = 1; - dfa->is_utf8 = 0; - dfa->has_mb_node = dfa->nbackref > 0 || has_period; -} -#endif - -/* Analyze the structure tree, and calculate "first", "next", "edest", - "eclosure", and "inveclosure". */ - -static reg_errcode_t -analyze (regex_t *preg) -{ - re_dfa_t *dfa = preg->buffer; - reg_errcode_t ret; - - /* Allocate arrays. */ - dfa->nexts = re_malloc (Idx, dfa->nodes_alloc); - dfa->org_indices = re_malloc (Idx, dfa->nodes_alloc); - dfa->edests = re_malloc (re_node_set, dfa->nodes_alloc); - dfa->eclosures = re_malloc (re_node_set, dfa->nodes_alloc); - if (__glibc_unlikely (dfa->nexts == NULL || dfa->org_indices == NULL - || dfa->edests == NULL || dfa->eclosures == NULL)) - return REG_ESPACE; - - dfa->subexp_map = re_malloc (Idx, preg->re_nsub); - if (dfa->subexp_map != NULL) - { - Idx i; - for (i = 0; i < preg->re_nsub; i++) - dfa->subexp_map[i] = i; - preorder (dfa->str_tree, optimize_subexps, dfa); - for (i = 0; i < preg->re_nsub; i++) - if (dfa->subexp_map[i] != i) - break; - if (i == preg->re_nsub) - { - re_free (dfa->subexp_map); - dfa->subexp_map = NULL; - } - } - - ret = postorder (dfa->str_tree, lower_subexps, preg); - if (__glibc_unlikely (ret != REG_NOERROR)) - return ret; - ret = postorder (dfa->str_tree, calc_first, dfa); - if (__glibc_unlikely (ret != REG_NOERROR)) - return ret; - preorder (dfa->str_tree, calc_next, dfa); - ret = preorder (dfa->str_tree, link_nfa_nodes, dfa); - if (__glibc_unlikely (ret != REG_NOERROR)) - return ret; - ret = calc_eclosure (dfa); - if (__glibc_unlikely (ret != REG_NOERROR)) - return ret; - - /* We only need this during the prune_impossible_nodes pass in regexec.c; - skip it if p_i_n will not run, as calc_inveclosure can be quadratic. */ - if ((!preg->no_sub && preg->re_nsub > 0 && dfa->has_plural_match) - || dfa->nbackref) - { - dfa->inveclosures = re_malloc (re_node_set, dfa->nodes_len); - if (__glibc_unlikely (dfa->inveclosures == NULL)) - return REG_ESPACE; - ret = calc_inveclosure (dfa); - } - - return ret; -} - -/* Our parse trees are very unbalanced, so we cannot use a stack to - implement parse tree visits. Instead, we use parent pointers and - some hairy code in these two functions. */ -static reg_errcode_t -postorder (bin_tree_t *root, reg_errcode_t (fn (void *, bin_tree_t *)), - void *extra) -{ - bin_tree_t *node, *prev; - - for (node = root; ; ) - { - /* Descend down the tree, preferably to the left (or to the right - if that's the only child). */ - while (node->left || node->right) - if (node->left) - node = node->left; - else - node = node->right; - - do - { - reg_errcode_t err = fn (extra, node); - if (__glibc_unlikely (err != REG_NOERROR)) - return err; - if (node->parent == NULL) - return REG_NOERROR; - prev = node; - node = node->parent; - } - /* Go up while we have a node that is reached from the right. */ - while (node->right == prev || node->right == NULL); - node = node->right; - } -} - -static reg_errcode_t -preorder (bin_tree_t *root, reg_errcode_t (fn (void *, bin_tree_t *)), - void *extra) -{ - bin_tree_t *node; - - for (node = root; ; ) - { - reg_errcode_t err = fn (extra, node); - if (__glibc_unlikely (err != REG_NOERROR)) - return err; - - /* Go to the left node, or up and to the right. */ - if (node->left) - node = node->left; - else - { - bin_tree_t *prev = NULL; - while (node->right == prev || node->right == NULL) - { - prev = node; - node = node->parent; - if (!node) - return REG_NOERROR; - } - node = node->right; - } - } -} - -/* Optimization pass: if a SUBEXP is entirely contained, strip it and tell - re_search_internal to map the inner one's opr.idx to this one's. Adjust - backreferences as well. Requires a preorder visit. */ -static reg_errcode_t -optimize_subexps (void *extra, bin_tree_t *node) -{ - re_dfa_t *dfa = (re_dfa_t *) extra; - - if (node->token.type == OP_BACK_REF && dfa->subexp_map) - { - int idx = node->token.opr.idx; - node->token.opr.idx = dfa->subexp_map[idx]; - dfa->used_bkref_map |= 1 << node->token.opr.idx; - } - - else if (node->token.type == SUBEXP - && node->left && node->left->token.type == SUBEXP) - { - Idx other_idx = node->left->token.opr.idx; - - node->left = node->left->left; - if (node->left) - node->left->parent = node; - - dfa->subexp_map[other_idx] = dfa->subexp_map[node->token.opr.idx]; - if (other_idx < BITSET_WORD_BITS) - dfa->used_bkref_map &= ~((bitset_word_t) 1 << other_idx); - } - - return REG_NOERROR; -} - -/* Lowering pass: Turn each SUBEXP node into the appropriate concatenation - of OP_OPEN_SUBEXP, the body of the SUBEXP (if any) and OP_CLOSE_SUBEXP. */ -static reg_errcode_t -lower_subexps (void *extra, bin_tree_t *node) -{ - regex_t *preg = (regex_t *) extra; - reg_errcode_t err = REG_NOERROR; - - if (node->left && node->left->token.type == SUBEXP) - { - node->left = lower_subexp (&err, preg, node->left); - if (node->left) - node->left->parent = node; - } - if (node->right && node->right->token.type == SUBEXP) - { - node->right = lower_subexp (&err, preg, node->right); - if (node->right) - node->right->parent = node; - } - - return err; -} - -static bin_tree_t * -lower_subexp (reg_errcode_t *err, regex_t *preg, bin_tree_t *node) -{ - re_dfa_t *dfa = preg->buffer; - bin_tree_t *body = node->left; - bin_tree_t *op, *cls, *tree1, *tree; - - if (preg->no_sub - /* We do not optimize empty subexpressions, because otherwise we may - have bad CONCAT nodes with NULL children. This is obviously not - very common, so we do not lose much. An example that triggers - this case is the sed "script" /\(\)/x. */ - && node->left != NULL - && (node->token.opr.idx >= BITSET_WORD_BITS - || !(dfa->used_bkref_map - & ((bitset_word_t) 1 << node->token.opr.idx)))) - return node->left; - - /* Convert the SUBEXP node to the concatenation of an - OP_OPEN_SUBEXP, the contents, and an OP_CLOSE_SUBEXP. */ - op = create_tree (dfa, NULL, NULL, OP_OPEN_SUBEXP); - cls = create_tree (dfa, NULL, NULL, OP_CLOSE_SUBEXP); - tree1 = body ? create_tree (dfa, body, cls, CONCAT) : cls; - tree = create_tree (dfa, op, tree1, CONCAT); - if (__glibc_unlikely (tree == NULL || tree1 == NULL - || op == NULL || cls == NULL)) - { - *err = REG_ESPACE; - return NULL; - } - - op->token.opr.idx = cls->token.opr.idx = node->token.opr.idx; - op->token.opt_subexp = cls->token.opt_subexp = node->token.opt_subexp; - return tree; -} - -/* Pass 1 in building the NFA: compute FIRST and create unlinked automaton - nodes. Requires a postorder visit. */ -static reg_errcode_t -calc_first (void *extra, bin_tree_t *node) -{ - re_dfa_t *dfa = (re_dfa_t *) extra; - if (node->token.type == CONCAT) - { - node->first = node->left->first; - node->node_idx = node->left->node_idx; - } - else - { - node->first = node; - node->node_idx = re_dfa_add_node (dfa, node->token); - if (__glibc_unlikely (node->node_idx == -1)) - return REG_ESPACE; - if (node->token.type == ANCHOR) - dfa->nodes[node->node_idx].constraint = node->token.opr.ctx_type; - } - return REG_NOERROR; -} - -/* Pass 2: compute NEXT on the tree. Preorder visit. */ -static reg_errcode_t -calc_next (void *extra, bin_tree_t *node) -{ - switch (node->token.type) - { - case OP_DUP_ASTERISK: - node->left->next = node; - break; - case CONCAT: - node->left->next = node->right->first; - node->right->next = node->next; - break; - default: - if (node->left) - node->left->next = node->next; - if (node->right) - node->right->next = node->next; - break; - } - return REG_NOERROR; -} - -/* Pass 3: link all DFA nodes to their NEXT node (any order will do). */ -static reg_errcode_t -link_nfa_nodes (void *extra, bin_tree_t *node) -{ - re_dfa_t *dfa = (re_dfa_t *) extra; - Idx idx = node->node_idx; - reg_errcode_t err = REG_NOERROR; - - switch (node->token.type) - { - case CONCAT: - break; - - case END_OF_RE: - assert (node->next == NULL); - break; - - case OP_DUP_ASTERISK: - case OP_ALT: - { - Idx left, right; - dfa->has_plural_match = 1; - if (node->left != NULL) - left = node->left->first->node_idx; - else - left = node->next->node_idx; - if (node->right != NULL) - right = node->right->first->node_idx; - else - right = node->next->node_idx; - assert (left > -1); - assert (right > -1); - err = re_node_set_init_2 (dfa->edests + idx, left, right); - } - break; - - case ANCHOR: - case OP_OPEN_SUBEXP: - case OP_CLOSE_SUBEXP: - err = re_node_set_init_1 (dfa->edests + idx, node->next->node_idx); - break; - - case OP_BACK_REF: - dfa->nexts[idx] = node->next->node_idx; - if (node->token.type == OP_BACK_REF) - err = re_node_set_init_1 (dfa->edests + idx, dfa->nexts[idx]); - break; - - default: - assert (!IS_EPSILON_NODE (node->token.type)); - dfa->nexts[idx] = node->next->node_idx; - break; - } - - return err; -} - -/* Duplicate the epsilon closure of the node ROOT_NODE. - Note that duplicated nodes have constraint INIT_CONSTRAINT in addition - to their own constraint. */ - -static reg_errcode_t -duplicate_node_closure (re_dfa_t *dfa, Idx top_org_node, Idx top_clone_node, - Idx root_node, unsigned int init_constraint) -{ - Idx org_node, clone_node; - bool ok; - unsigned int constraint = init_constraint; - for (org_node = top_org_node, clone_node = top_clone_node;;) - { - Idx org_dest, clone_dest; - if (dfa->nodes[org_node].type == OP_BACK_REF) - { - /* If the back reference epsilon-transit, its destination must - also have the constraint. Then duplicate the epsilon closure - of the destination of the back reference, and store it in - edests of the back reference. */ - org_dest = dfa->nexts[org_node]; - re_node_set_empty (dfa->edests + clone_node); - clone_dest = duplicate_node (dfa, org_dest, constraint); - if (__glibc_unlikely (clone_dest == -1)) - return REG_ESPACE; - dfa->nexts[clone_node] = dfa->nexts[org_node]; - ok = re_node_set_insert (dfa->edests + clone_node, clone_dest); - if (__glibc_unlikely (! ok)) - return REG_ESPACE; - } - else if (dfa->edests[org_node].nelem == 0) - { - /* In case of the node can't epsilon-transit, don't duplicate the - destination and store the original destination as the - destination of the node. */ - dfa->nexts[clone_node] = dfa->nexts[org_node]; - break; - } - else if (dfa->edests[org_node].nelem == 1) - { - /* In case of the node can epsilon-transit, and it has only one - destination. */ - org_dest = dfa->edests[org_node].elems[0]; - re_node_set_empty (dfa->edests + clone_node); - /* If the node is root_node itself, it means the epsilon closure - has a loop. Then tie it to the destination of the root_node. */ - if (org_node == root_node && clone_node != org_node) - { - ok = re_node_set_insert (dfa->edests + clone_node, org_dest); - if (__glibc_unlikely (! ok)) - return REG_ESPACE; - break; - } - /* In case the node has another constraint, append it. */ - constraint |= dfa->nodes[org_node].constraint; - clone_dest = duplicate_node (dfa, org_dest, constraint); - if (__glibc_unlikely (clone_dest == -1)) - return REG_ESPACE; - ok = re_node_set_insert (dfa->edests + clone_node, clone_dest); - if (__glibc_unlikely (! ok)) - return REG_ESPACE; - } - else /* dfa->edests[org_node].nelem == 2 */ - { - /* In case of the node can epsilon-transit, and it has two - destinations. In the bin_tree_t and DFA, that's '|' and '*'. */ - org_dest = dfa->edests[org_node].elems[0]; - re_node_set_empty (dfa->edests + clone_node); - /* Search for a duplicated node which satisfies the constraint. */ - clone_dest = search_duplicated_node (dfa, org_dest, constraint); - if (clone_dest == -1) - { - /* There is no such duplicated node, create a new one. */ - reg_errcode_t err; - clone_dest = duplicate_node (dfa, org_dest, constraint); - if (__glibc_unlikely (clone_dest == -1)) - return REG_ESPACE; - ok = re_node_set_insert (dfa->edests + clone_node, clone_dest); - if (__glibc_unlikely (! ok)) - return REG_ESPACE; - err = duplicate_node_closure (dfa, org_dest, clone_dest, - root_node, constraint); - if (__glibc_unlikely (err != REG_NOERROR)) - return err; - } - else - { - /* There is a duplicated node which satisfies the constraint, - use it to avoid infinite loop. */ - ok = re_node_set_insert (dfa->edests + clone_node, clone_dest); - if (__glibc_unlikely (! ok)) - return REG_ESPACE; - } - - org_dest = dfa->edests[org_node].elems[1]; - clone_dest = duplicate_node (dfa, org_dest, constraint); - if (__glibc_unlikely (clone_dest == -1)) - return REG_ESPACE; - ok = re_node_set_insert (dfa->edests + clone_node, clone_dest); - if (__glibc_unlikely (! ok)) - return REG_ESPACE; - } - org_node = org_dest; - clone_node = clone_dest; - } - return REG_NOERROR; -} - -/* Search for a node which is duplicated from the node ORG_NODE, and - satisfies the constraint CONSTRAINT. */ - -static Idx -search_duplicated_node (const re_dfa_t *dfa, Idx org_node, - unsigned int constraint) -{ - Idx idx; - for (idx = dfa->nodes_len - 1; dfa->nodes[idx].duplicated && idx > 0; --idx) - { - if (org_node == dfa->org_indices[idx] - && constraint == dfa->nodes[idx].constraint) - return idx; /* Found. */ - } - return -1; /* Not found. */ -} - -/* Duplicate the node whose index is ORG_IDX and set the constraint CONSTRAINT. - Return the index of the new node, or -1 if insufficient storage is - available. */ - -static Idx -duplicate_node (re_dfa_t *dfa, Idx org_idx, unsigned int constraint) -{ - Idx dup_idx = re_dfa_add_node (dfa, dfa->nodes[org_idx]); - if (__glibc_likely (dup_idx != -1)) - { - dfa->nodes[dup_idx].constraint = constraint; - dfa->nodes[dup_idx].constraint |= dfa->nodes[org_idx].constraint; - dfa->nodes[dup_idx].duplicated = 1; - - /* Store the index of the original node. */ - dfa->org_indices[dup_idx] = org_idx; - } - return dup_idx; -} - -static reg_errcode_t -calc_inveclosure (re_dfa_t *dfa) -{ - Idx src, idx; - bool ok; - for (idx = 0; idx < dfa->nodes_len; ++idx) - re_node_set_init_empty (dfa->inveclosures + idx); - - for (src = 0; src < dfa->nodes_len; ++src) - { - Idx *elems = dfa->eclosures[src].elems; - for (idx = 0; idx < dfa->eclosures[src].nelem; ++idx) - { - ok = re_node_set_insert_last (dfa->inveclosures + elems[idx], src); - if (__glibc_unlikely (! ok)) - return REG_ESPACE; - } - } - - return REG_NOERROR; -} - -/* Calculate "eclosure" for all the node in DFA. */ - -static reg_errcode_t -calc_eclosure (re_dfa_t *dfa) -{ - Idx node_idx; - bool incomplete; -#ifdef DEBUG - assert (dfa->nodes_len > 0); -#endif - incomplete = false; - /* For each nodes, calculate epsilon closure. */ - for (node_idx = 0; ; ++node_idx) - { - reg_errcode_t err; - re_node_set eclosure_elem; - if (node_idx == dfa->nodes_len) - { - if (!incomplete) - break; - incomplete = false; - node_idx = 0; - } - -#ifdef DEBUG - assert (dfa->eclosures[node_idx].nelem != -1); -#endif - - /* If we have already calculated, skip it. */ - if (dfa->eclosures[node_idx].nelem != 0) - continue; - /* Calculate epsilon closure of 'node_idx'. */ - err = calc_eclosure_iter (&eclosure_elem, dfa, node_idx, true); - if (__glibc_unlikely (err != REG_NOERROR)) - return err; - - if (dfa->eclosures[node_idx].nelem == 0) - { - incomplete = true; - re_node_set_free (&eclosure_elem); - } - } - return REG_NOERROR; -} - -/* Calculate epsilon closure of NODE. */ - -static reg_errcode_t -calc_eclosure_iter (re_node_set *new_set, re_dfa_t *dfa, Idx node, bool root) -{ - reg_errcode_t err; - Idx i; - re_node_set eclosure; - bool ok; - bool incomplete = false; - err = re_node_set_alloc (&eclosure, dfa->edests[node].nelem + 1); - if (__glibc_unlikely (err != REG_NOERROR)) - return err; - - /* This indicates that we are calculating this node now. - We reference this value to avoid infinite loop. */ - dfa->eclosures[node].nelem = -1; - - /* If the current node has constraints, duplicate all nodes - since they must inherit the constraints. */ - if (dfa->nodes[node].constraint - && dfa->edests[node].nelem - && !dfa->nodes[dfa->edests[node].elems[0]].duplicated) - { - err = duplicate_node_closure (dfa, node, node, node, - dfa->nodes[node].constraint); - if (__glibc_unlikely (err != REG_NOERROR)) - return err; - } - - /* Expand each epsilon destination nodes. */ - if (IS_EPSILON_NODE(dfa->nodes[node].type)) - for (i = 0; i < dfa->edests[node].nelem; ++i) - { - re_node_set eclosure_elem; - Idx edest = dfa->edests[node].elems[i]; - /* If calculating the epsilon closure of 'edest' is in progress, - return intermediate result. */ - if (dfa->eclosures[edest].nelem == -1) - { - incomplete = true; - continue; - } - /* If we haven't calculated the epsilon closure of 'edest' yet, - calculate now. Otherwise use calculated epsilon closure. */ - if (dfa->eclosures[edest].nelem == 0) - { - err = calc_eclosure_iter (&eclosure_elem, dfa, edest, false); - if (__glibc_unlikely (err != REG_NOERROR)) - return err; - } - else - eclosure_elem = dfa->eclosures[edest]; - /* Merge the epsilon closure of 'edest'. */ - err = re_node_set_merge (&eclosure, &eclosure_elem); - if (__glibc_unlikely (err != REG_NOERROR)) - return err; - /* If the epsilon closure of 'edest' is incomplete, - the epsilon closure of this node is also incomplete. */ - if (dfa->eclosures[edest].nelem == 0) - { - incomplete = true; - re_node_set_free (&eclosure_elem); - } - } - - /* An epsilon closure includes itself. */ - ok = re_node_set_insert (&eclosure, node); - if (__glibc_unlikely (! ok)) - return REG_ESPACE; - if (incomplete && !root) - dfa->eclosures[node].nelem = 0; - else - dfa->eclosures[node] = eclosure; - *new_set = eclosure; - return REG_NOERROR; -} - -/* Functions for token which are used in the parser. */ - -/* Fetch a token from INPUT. - We must not use this function inside bracket expressions. */ - -static void -fetch_token (re_token_t *result, re_string_t *input, reg_syntax_t syntax) -{ - re_string_skip_bytes (input, peek_token (result, input, syntax)); -} - -/* Peek a token from INPUT, and return the length of the token. - We must not use this function inside bracket expressions. */ - -static int -peek_token (re_token_t *token, re_string_t *input, reg_syntax_t syntax) -{ - unsigned char c; - - if (re_string_eoi (input)) - { - token->type = END_OF_RE; - return 0; - } - - c = re_string_peek_byte (input, 0); - token->opr.c = c; - - token->word_char = 0; -#ifdef RE_ENABLE_I18N - token->mb_partial = 0; - if (input->mb_cur_max > 1 && - !re_string_first_byte (input, re_string_cur_idx (input))) - { - token->type = CHARACTER; - token->mb_partial = 1; - return 1; - } -#endif - if (c == '\\') - { - unsigned char c2; - if (re_string_cur_idx (input) + 1 >= re_string_length (input)) - { - token->type = BACK_SLASH; - return 1; - } - - c2 = re_string_peek_byte_case (input, 1); - token->opr.c = c2; - token->type = CHARACTER; -#ifdef RE_ENABLE_I18N - if (input->mb_cur_max > 1) - { - wint_t wc = re_string_wchar_at (input, - re_string_cur_idx (input) + 1); - token->word_char = IS_WIDE_WORD_CHAR (wc) != 0; - } - else -#endif - token->word_char = IS_WORD_CHAR (c2) != 0; - - switch (c2) - { - case '|': - if (!(syntax & RE_LIMITED_OPS) && !(syntax & RE_NO_BK_VBAR)) - token->type = OP_ALT; - break; - case '1': case '2': case '3': case '4': case '5': - case '6': case '7': case '8': case '9': - if (!(syntax & RE_NO_BK_REFS)) - { - token->type = OP_BACK_REF; - token->opr.idx = c2 - '1'; - } - break; - case '<': - if (!(syntax & RE_NO_GNU_OPS)) - { - token->type = ANCHOR; - token->opr.ctx_type = WORD_FIRST; - } - break; - case '>': - if (!(syntax & RE_NO_GNU_OPS)) - { - token->type = ANCHOR; - token->opr.ctx_type = WORD_LAST; - } - break; - case 'b': - if (!(syntax & RE_NO_GNU_OPS)) - { - token->type = ANCHOR; - token->opr.ctx_type = WORD_DELIM; - } - break; - case 'B': - if (!(syntax & RE_NO_GNU_OPS)) - { - token->type = ANCHOR; - token->opr.ctx_type = NOT_WORD_DELIM; - } - break; - case 'w': - if (!(syntax & RE_NO_GNU_OPS)) - token->type = OP_WORD; - break; - case 'W': - if (!(syntax & RE_NO_GNU_OPS)) - token->type = OP_NOTWORD; - break; - case 's': - if (!(syntax & RE_NO_GNU_OPS)) - token->type = OP_SPACE; - break; - case 'S': - if (!(syntax & RE_NO_GNU_OPS)) - token->type = OP_NOTSPACE; - break; - case '`': - if (!(syntax & RE_NO_GNU_OPS)) - { - token->type = ANCHOR; - token->opr.ctx_type = BUF_FIRST; - } - break; - case '\'': - if (!(syntax & RE_NO_GNU_OPS)) - { - token->type = ANCHOR; - token->opr.ctx_type = BUF_LAST; - } - break; - case '(': - if (!(syntax & RE_NO_BK_PARENS)) - token->type = OP_OPEN_SUBEXP; - break; - case ')': - if (!(syntax & RE_NO_BK_PARENS)) - token->type = OP_CLOSE_SUBEXP; - break; - case '+': - if (!(syntax & RE_LIMITED_OPS) && (syntax & RE_BK_PLUS_QM)) - token->type = OP_DUP_PLUS; - break; - case '?': - if (!(syntax & RE_LIMITED_OPS) && (syntax & RE_BK_PLUS_QM)) - token->type = OP_DUP_QUESTION; - break; - case '{': - if ((syntax & RE_INTERVALS) && (!(syntax & RE_NO_BK_BRACES))) - token->type = OP_OPEN_DUP_NUM; - break; - case '}': - if ((syntax & RE_INTERVALS) && (!(syntax & RE_NO_BK_BRACES))) - token->type = OP_CLOSE_DUP_NUM; - break; - default: - break; - } - return 2; - } - - token->type = CHARACTER; -#ifdef RE_ENABLE_I18N - if (input->mb_cur_max > 1) - { - wint_t wc = re_string_wchar_at (input, re_string_cur_idx (input)); - token->word_char = IS_WIDE_WORD_CHAR (wc) != 0; - } - else -#endif - token->word_char = IS_WORD_CHAR (token->opr.c); - - switch (c) - { - case '\n': - if (syntax & RE_NEWLINE_ALT) - token->type = OP_ALT; - break; - case '|': - if (!(syntax & RE_LIMITED_OPS) && (syntax & RE_NO_BK_VBAR)) - token->type = OP_ALT; - break; - case '*': - token->type = OP_DUP_ASTERISK; - break; - case '+': - if (!(syntax & RE_LIMITED_OPS) && !(syntax & RE_BK_PLUS_QM)) - token->type = OP_DUP_PLUS; - break; - case '?': - if (!(syntax & RE_LIMITED_OPS) && !(syntax & RE_BK_PLUS_QM)) - token->type = OP_DUP_QUESTION; - break; - case '{': - if ((syntax & RE_INTERVALS) && (syntax & RE_NO_BK_BRACES)) - token->type = OP_OPEN_DUP_NUM; - break; - case '}': - if ((syntax & RE_INTERVALS) && (syntax & RE_NO_BK_BRACES)) - token->type = OP_CLOSE_DUP_NUM; - break; - case '(': - if (syntax & RE_NO_BK_PARENS) - token->type = OP_OPEN_SUBEXP; - break; - case ')': - if (syntax & RE_NO_BK_PARENS) - token->type = OP_CLOSE_SUBEXP; - break; - case '[': - token->type = OP_OPEN_BRACKET; - break; - case '.': - token->type = OP_PERIOD; - break; - case '^': - if (!(syntax & (RE_CONTEXT_INDEP_ANCHORS | RE_CARET_ANCHORS_HERE)) && - re_string_cur_idx (input) != 0) - { - char prev = re_string_peek_byte (input, -1); - if (!(syntax & RE_NEWLINE_ALT) || prev != '\n') - break; - } - token->type = ANCHOR; - token->opr.ctx_type = LINE_FIRST; - break; - case '$': - if (!(syntax & RE_CONTEXT_INDEP_ANCHORS) && - re_string_cur_idx (input) + 1 != re_string_length (input)) - { - re_token_t next; - re_string_skip_bytes (input, 1); - peek_token (&next, input, syntax); - re_string_skip_bytes (input, -1); - if (next.type != OP_ALT && next.type != OP_CLOSE_SUBEXP) - break; - } - token->type = ANCHOR; - token->opr.ctx_type = LINE_LAST; - break; - default: - break; - } - return 1; -} - -/* Peek a token from INPUT, and return the length of the token. - We must not use this function out of bracket expressions. */ - -static int -peek_token_bracket (re_token_t *token, re_string_t *input, reg_syntax_t syntax) -{ - unsigned char c; - if (re_string_eoi (input)) - { - token->type = END_OF_RE; - return 0; - } - c = re_string_peek_byte (input, 0); - token->opr.c = c; - -#ifdef RE_ENABLE_I18N - if (input->mb_cur_max > 1 && - !re_string_first_byte (input, re_string_cur_idx (input))) - { - token->type = CHARACTER; - return 1; - } -#endif /* RE_ENABLE_I18N */ - - if (c == '\\' && (syntax & RE_BACKSLASH_ESCAPE_IN_LISTS) - && re_string_cur_idx (input) + 1 < re_string_length (input)) - { - /* In this case, '\' escape a character. */ - unsigned char c2; - re_string_skip_bytes (input, 1); - c2 = re_string_peek_byte (input, 0); - token->opr.c = c2; - token->type = CHARACTER; - return 1; - } - if (c == '[') /* '[' is a special char in a bracket exps. */ - { - unsigned char c2; - int token_len; - if (re_string_cur_idx (input) + 1 < re_string_length (input)) - c2 = re_string_peek_byte (input, 1); - else - c2 = 0; - token->opr.c = c2; - token_len = 2; - switch (c2) - { - case '.': - token->type = OP_OPEN_COLL_ELEM; - break; - - case '=': - token->type = OP_OPEN_EQUIV_CLASS; - break; - - case ':': - if (syntax & RE_CHAR_CLASSES) - { - token->type = OP_OPEN_CHAR_CLASS; - break; - } - FALLTHROUGH; - default: - token->type = CHARACTER; - token->opr.c = c; - token_len = 1; - break; - } - return token_len; - } - switch (c) - { - case '-': - token->type = OP_CHARSET_RANGE; - break; - case ']': - token->type = OP_CLOSE_BRACKET; - break; - case '^': - token->type = OP_NON_MATCH_LIST; - break; - default: - token->type = CHARACTER; - } - return 1; -} - -/* Functions for parser. */ - -/* Entry point of the parser. - Parse the regular expression REGEXP and return the structure tree. - If an error occurs, ERR is set by error code, and return NULL. - This function build the following tree, from regular expression : - CAT - / \ - / \ - EOR - - CAT means concatenation. - EOR means end of regular expression. */ - -static bin_tree_t * -parse (re_string_t *regexp, regex_t *preg, reg_syntax_t syntax, - reg_errcode_t *err) -{ - re_dfa_t *dfa = preg->buffer; - bin_tree_t *tree, *eor, *root; - re_token_t current_token; - dfa->syntax = syntax; - fetch_token (¤t_token, regexp, syntax | RE_CARET_ANCHORS_HERE); - tree = parse_reg_exp (regexp, preg, ¤t_token, syntax, 0, err); - if (__glibc_unlikely (*err != REG_NOERROR && tree == NULL)) - return NULL; - eor = create_tree (dfa, NULL, NULL, END_OF_RE); - if (tree != NULL) - root = create_tree (dfa, tree, eor, CONCAT); - else - root = eor; - if (__glibc_unlikely (eor == NULL || root == NULL)) - { - *err = REG_ESPACE; - return NULL; - } - return root; -} - -/* This function build the following tree, from regular expression - |: - ALT - / \ - / \ - - - ALT means alternative, which represents the operator '|'. */ - -static bin_tree_t * -parse_reg_exp (re_string_t *regexp, regex_t *preg, re_token_t *token, - reg_syntax_t syntax, Idx nest, reg_errcode_t *err) -{ - re_dfa_t *dfa = preg->buffer; - bin_tree_t *tree, *branch = NULL; - bitset_word_t initial_bkref_map = dfa->completed_bkref_map; - tree = parse_branch (regexp, preg, token, syntax, nest, err); - if (__glibc_unlikely (*err != REG_NOERROR && tree == NULL)) - return NULL; - - while (token->type == OP_ALT) - { - fetch_token (token, regexp, syntax | RE_CARET_ANCHORS_HERE); - if (token->type != OP_ALT && token->type != END_OF_RE - && (nest == 0 || token->type != OP_CLOSE_SUBEXP)) - { - bitset_word_t accumulated_bkref_map = dfa->completed_bkref_map; - dfa->completed_bkref_map = initial_bkref_map; - branch = parse_branch (regexp, preg, token, syntax, nest, err); - if (__glibc_unlikely (*err != REG_NOERROR && branch == NULL)) - { - if (tree != NULL) - postorder (tree, free_tree, NULL); - return NULL; - } - dfa->completed_bkref_map |= accumulated_bkref_map; - } - else - branch = NULL; - tree = create_tree (dfa, tree, branch, OP_ALT); - if (__glibc_unlikely (tree == NULL)) - { - *err = REG_ESPACE; - return NULL; - } - } - return tree; -} - -/* This function build the following tree, from regular expression - : - CAT - / \ - / \ - - - CAT means concatenation. */ - -static bin_tree_t * -parse_branch (re_string_t *regexp, regex_t *preg, re_token_t *token, - reg_syntax_t syntax, Idx nest, reg_errcode_t *err) -{ - bin_tree_t *tree, *expr; - re_dfa_t *dfa = preg->buffer; - tree = parse_expression (regexp, preg, token, syntax, nest, err); - if (__glibc_unlikely (*err != REG_NOERROR && tree == NULL)) - return NULL; - - while (token->type != OP_ALT && token->type != END_OF_RE - && (nest == 0 || token->type != OP_CLOSE_SUBEXP)) - { - expr = parse_expression (regexp, preg, token, syntax, nest, err); - if (__glibc_unlikely (*err != REG_NOERROR && expr == NULL)) - { - if (tree != NULL) - postorder (tree, free_tree, NULL); - return NULL; - } - if (tree != NULL && expr != NULL) - { - bin_tree_t *newtree = create_tree (dfa, tree, expr, CONCAT); - if (newtree == NULL) - { - postorder (expr, free_tree, NULL); - postorder (tree, free_tree, NULL); - *err = REG_ESPACE; - return NULL; - } - tree = newtree; - } - else if (tree == NULL) - tree = expr; - /* Otherwise expr == NULL, we don't need to create new tree. */ - } - return tree; -} - -/* This function build the following tree, from regular expression a*: - * - | - a -*/ - -static bin_tree_t * -parse_expression (re_string_t *regexp, regex_t *preg, re_token_t *token, - reg_syntax_t syntax, Idx nest, reg_errcode_t *err) -{ - re_dfa_t *dfa = preg->buffer; - bin_tree_t *tree; - switch (token->type) - { - case CHARACTER: - tree = create_token_tree (dfa, NULL, NULL, token); - if (__glibc_unlikely (tree == NULL)) - { - *err = REG_ESPACE; - return NULL; - } -#ifdef RE_ENABLE_I18N - if (dfa->mb_cur_max > 1) - { - while (!re_string_eoi (regexp) - && !re_string_first_byte (regexp, re_string_cur_idx (regexp))) - { - bin_tree_t *mbc_remain; - fetch_token (token, regexp, syntax); - mbc_remain = create_token_tree (dfa, NULL, NULL, token); - tree = create_tree (dfa, tree, mbc_remain, CONCAT); - if (__glibc_unlikely (mbc_remain == NULL || tree == NULL)) - { - *err = REG_ESPACE; - return NULL; - } - } - } -#endif - break; - - case OP_OPEN_SUBEXP: - tree = parse_sub_exp (regexp, preg, token, syntax, nest + 1, err); - if (__glibc_unlikely (*err != REG_NOERROR && tree == NULL)) - return NULL; - break; - - case OP_OPEN_BRACKET: - tree = parse_bracket_exp (regexp, dfa, token, syntax, err); - if (__glibc_unlikely (*err != REG_NOERROR && tree == NULL)) - return NULL; - break; - - case OP_BACK_REF: - if (!__glibc_likely (dfa->completed_bkref_map & (1 << token->opr.idx))) - { - *err = REG_ESUBREG; - return NULL; - } - dfa->used_bkref_map |= 1 << token->opr.idx; - tree = create_token_tree (dfa, NULL, NULL, token); - if (__glibc_unlikely (tree == NULL)) - { - *err = REG_ESPACE; - return NULL; - } - ++dfa->nbackref; - dfa->has_mb_node = 1; - break; - - case OP_OPEN_DUP_NUM: - if (syntax & RE_CONTEXT_INVALID_DUP) - { - *err = REG_BADRPT; - return NULL; - } - FALLTHROUGH; - case OP_DUP_ASTERISK: - case OP_DUP_PLUS: - case OP_DUP_QUESTION: - if (syntax & RE_CONTEXT_INVALID_OPS) - { - *err = REG_BADRPT; - return NULL; - } - else if (syntax & RE_CONTEXT_INDEP_OPS) - { - fetch_token (token, regexp, syntax); - return parse_expression (regexp, preg, token, syntax, nest, err); - } - FALLTHROUGH; - case OP_CLOSE_SUBEXP: - if ((token->type == OP_CLOSE_SUBEXP) && - !(syntax & RE_UNMATCHED_RIGHT_PAREN_ORD)) - { - *err = REG_ERPAREN; - return NULL; - } - FALLTHROUGH; - case OP_CLOSE_DUP_NUM: - /* We treat it as a normal character. */ - - /* Then we can these characters as normal characters. */ - token->type = CHARACTER; - /* mb_partial and word_char bits should be initialized already - by peek_token. */ - tree = create_token_tree (dfa, NULL, NULL, token); - if (__glibc_unlikely (tree == NULL)) - { - *err = REG_ESPACE; - return NULL; - } - break; - - case ANCHOR: - if ((token->opr.ctx_type - & (WORD_DELIM | NOT_WORD_DELIM | WORD_FIRST | WORD_LAST)) - && dfa->word_ops_used == 0) - init_word_char (dfa); - if (token->opr.ctx_type == WORD_DELIM - || token->opr.ctx_type == NOT_WORD_DELIM) - { - bin_tree_t *tree_first, *tree_last; - if (token->opr.ctx_type == WORD_DELIM) - { - token->opr.ctx_type = WORD_FIRST; - tree_first = create_token_tree (dfa, NULL, NULL, token); - token->opr.ctx_type = WORD_LAST; - } - else - { - token->opr.ctx_type = INSIDE_WORD; - tree_first = create_token_tree (dfa, NULL, NULL, token); - token->opr.ctx_type = INSIDE_NOTWORD; - } - tree_last = create_token_tree (dfa, NULL, NULL, token); - tree = create_tree (dfa, tree_first, tree_last, OP_ALT); - if (__glibc_unlikely (tree_first == NULL || tree_last == NULL - || tree == NULL)) - { - *err = REG_ESPACE; - return NULL; - } - } - else - { - tree = create_token_tree (dfa, NULL, NULL, token); - if (__glibc_unlikely (tree == NULL)) - { - *err = REG_ESPACE; - return NULL; - } - } - /* We must return here, since ANCHORs can't be followed - by repetition operators. - eg. RE"^*" is invalid or "", - it must not be "". */ - fetch_token (token, regexp, syntax); - return tree; - - case OP_PERIOD: - tree = create_token_tree (dfa, NULL, NULL, token); - if (__glibc_unlikely (tree == NULL)) - { - *err = REG_ESPACE; - return NULL; - } - if (dfa->mb_cur_max > 1) - dfa->has_mb_node = 1; - break; - - case OP_WORD: - case OP_NOTWORD: - tree = build_charclass_op (dfa, regexp->trans, - "alnum", - "_", - token->type == OP_NOTWORD, err); - if (__glibc_unlikely (*err != REG_NOERROR && tree == NULL)) - return NULL; - break; - - case OP_SPACE: - case OP_NOTSPACE: - tree = build_charclass_op (dfa, regexp->trans, - "space", - "", - token->type == OP_NOTSPACE, err); - if (__glibc_unlikely (*err != REG_NOERROR && tree == NULL)) - return NULL; - break; - - case OP_ALT: - case END_OF_RE: - return NULL; - - case BACK_SLASH: - *err = REG_EESCAPE; - return NULL; - - default: - /* Must not happen? */ -#ifdef DEBUG - assert (0); -#endif - return NULL; - } - fetch_token (token, regexp, syntax); - - while (token->type == OP_DUP_ASTERISK || token->type == OP_DUP_PLUS - || token->type == OP_DUP_QUESTION || token->type == OP_OPEN_DUP_NUM) - { - bin_tree_t *dup_tree = parse_dup_op (tree, regexp, dfa, token, - syntax, err); - if (__glibc_unlikely (*err != REG_NOERROR && dup_tree == NULL)) - { - if (tree != NULL) - postorder (tree, free_tree, NULL); - return NULL; - } - tree = dup_tree; - /* In BRE consecutive duplications are not allowed. */ - if ((syntax & RE_CONTEXT_INVALID_DUP) - && (token->type == OP_DUP_ASTERISK - || token->type == OP_OPEN_DUP_NUM)) - { - if (tree != NULL) - postorder (tree, free_tree, NULL); - *err = REG_BADRPT; - return NULL; - } - } - - return tree; -} - -/* This function build the following tree, from regular expression - (): - SUBEXP - | - -*/ - -static bin_tree_t * -parse_sub_exp (re_string_t *regexp, regex_t *preg, re_token_t *token, - reg_syntax_t syntax, Idx nest, reg_errcode_t *err) -{ - re_dfa_t *dfa = preg->buffer; - bin_tree_t *tree; - size_t cur_nsub; - cur_nsub = preg->re_nsub++; - - fetch_token (token, regexp, syntax | RE_CARET_ANCHORS_HERE); - - /* The subexpression may be a null string. */ - if (token->type == OP_CLOSE_SUBEXP) - tree = NULL; - else - { - tree = parse_reg_exp (regexp, preg, token, syntax, nest, err); - if (__glibc_unlikely (*err == REG_NOERROR - && token->type != OP_CLOSE_SUBEXP)) - { - if (tree != NULL) - postorder (tree, free_tree, NULL); - *err = REG_EPAREN; - } - if (__glibc_unlikely (*err != REG_NOERROR)) - return NULL; - } - - if (cur_nsub <= '9' - '1') - dfa->completed_bkref_map |= 1 << cur_nsub; - - tree = create_tree (dfa, tree, NULL, SUBEXP); - if (__glibc_unlikely (tree == NULL)) - { - *err = REG_ESPACE; - return NULL; - } - tree->token.opr.idx = cur_nsub; - return tree; -} - -/* This function parse repetition operators like "*", "+", "{1,3}" etc. */ - -static bin_tree_t * -parse_dup_op (bin_tree_t *elem, re_string_t *regexp, re_dfa_t *dfa, - re_token_t *token, reg_syntax_t syntax, reg_errcode_t *err) -{ - bin_tree_t *tree = NULL, *old_tree = NULL; - Idx i, start, end, start_idx = re_string_cur_idx (regexp); - re_token_t start_token = *token; - - if (token->type == OP_OPEN_DUP_NUM) - { - end = 0; - start = fetch_number (regexp, token, syntax); - if (start == -1) - { - if (token->type == CHARACTER && token->opr.c == ',') - start = 0; /* We treat "{,m}" as "{0,m}". */ - else - { - *err = REG_BADBR; /* {} is invalid. */ - return NULL; - } - } - if (__glibc_likely (start != -2)) - { - /* We treat "{n}" as "{n,n}". */ - end = ((token->type == OP_CLOSE_DUP_NUM) ? start - : ((token->type == CHARACTER && token->opr.c == ',') - ? fetch_number (regexp, token, syntax) : -2)); - } - if (__glibc_unlikely (start == -2 || end == -2)) - { - /* Invalid sequence. */ - if (__glibc_unlikely (!(syntax & RE_INVALID_INTERVAL_ORD))) - { - if (token->type == END_OF_RE) - *err = REG_EBRACE; - else - *err = REG_BADBR; - - return NULL; - } - - /* If the syntax bit is set, rollback. */ - re_string_set_index (regexp, start_idx); - *token = start_token; - token->type = CHARACTER; - /* mb_partial and word_char bits should be already initialized by - peek_token. */ - return elem; - } - - if (__glibc_unlikely ((end != -1 && start > end) - || token->type != OP_CLOSE_DUP_NUM)) - { - /* First number greater than second. */ - *err = REG_BADBR; - return NULL; - } - - if (__glibc_unlikely (RE_DUP_MAX < (end == -1 ? start : end))) - { - *err = REG_ESIZE; - return NULL; - } - } - else - { - start = (token->type == OP_DUP_PLUS) ? 1 : 0; - end = (token->type == OP_DUP_QUESTION) ? 1 : -1; - } - - fetch_token (token, regexp, syntax); - - if (__glibc_unlikely (elem == NULL)) - return NULL; - if (__glibc_unlikely (start == 0 && end == 0)) - { - postorder (elem, free_tree, NULL); - return NULL; - } - - /* Extract "{n,m}" to "...{0,}". */ - if (__glibc_unlikely (start > 0)) - { - tree = elem; - for (i = 2; i <= start; ++i) - { - elem = duplicate_tree (elem, dfa); - tree = create_tree (dfa, tree, elem, CONCAT); - if (__glibc_unlikely (elem == NULL || tree == NULL)) - goto parse_dup_op_espace; - } - - if (start == end) - return tree; - - /* Duplicate ELEM before it is marked optional. */ - elem = duplicate_tree (elem, dfa); - if (__glibc_unlikely (elem == NULL)) - goto parse_dup_op_espace; - old_tree = tree; - } - else - old_tree = NULL; - - if (elem->token.type == SUBEXP) - { - uintptr_t subidx = elem->token.opr.idx; - postorder (elem, mark_opt_subexp, (void *) subidx); - } - - tree = create_tree (dfa, elem, NULL, - (end == -1 ? OP_DUP_ASTERISK : OP_ALT)); - if (__glibc_unlikely (tree == NULL)) - goto parse_dup_op_espace; - - /* This loop is actually executed only when end != -1, - to rewrite {0,n} as ((...?)?)?... We have - already created the start+1-th copy. */ - if (TYPE_SIGNED (Idx) || end != -1) - for (i = start + 2; i <= end; ++i) - { - elem = duplicate_tree (elem, dfa); - tree = create_tree (dfa, tree, elem, CONCAT); - if (__glibc_unlikely (elem == NULL || tree == NULL)) - goto parse_dup_op_espace; - - tree = create_tree (dfa, tree, NULL, OP_ALT); - if (__glibc_unlikely (tree == NULL)) - goto parse_dup_op_espace; - } - - if (old_tree) - tree = create_tree (dfa, old_tree, tree, CONCAT); - - return tree; - - parse_dup_op_espace: - *err = REG_ESPACE; - return NULL; -} - -/* Size of the names for collating symbol/equivalence_class/character_class. - I'm not sure, but maybe enough. */ -#define BRACKET_NAME_BUF_SIZE 32 - -#ifndef _LIBC - -# ifdef RE_ENABLE_I18N -/* Convert the byte B to the corresponding wide character. In a - unibyte locale, treat B as itself. In a multibyte locale, return - WEOF if B is an encoding error. */ -static wint_t -parse_byte (unsigned char b, re_charset_t *mbcset) -{ - return mbcset == NULL ? b : __btowc (b); -} -# endif - - /* Local function for parse_bracket_exp only used in case of NOT _LIBC. - Build the range expression which starts from START_ELEM, and ends - at END_ELEM. The result are written to MBCSET and SBCSET. - RANGE_ALLOC is the allocated size of mbcset->range_starts, and - mbcset->range_ends, is a pointer argument since we may - update it. */ - -static reg_errcode_t -# ifdef RE_ENABLE_I18N -build_range_exp (const reg_syntax_t syntax, - bitset_t sbcset, - re_charset_t *mbcset, - Idx *range_alloc, - const bracket_elem_t *start_elem, - const bracket_elem_t *end_elem) -# else /* not RE_ENABLE_I18N */ -build_range_exp (const reg_syntax_t syntax, - bitset_t sbcset, - const bracket_elem_t *start_elem, - const bracket_elem_t *end_elem) -# endif /* not RE_ENABLE_I18N */ -{ - unsigned int start_ch, end_ch; - /* Equivalence Classes and Character Classes can't be a range start/end. */ - if (__glibc_unlikely (start_elem->type == EQUIV_CLASS - || start_elem->type == CHAR_CLASS - || end_elem->type == EQUIV_CLASS - || end_elem->type == CHAR_CLASS)) - return REG_ERANGE; - - /* We can handle no multi character collating elements without libc - support. */ - if (__glibc_unlikely ((start_elem->type == COLL_SYM - && strlen ((char *) start_elem->opr.name) > 1) - || (end_elem->type == COLL_SYM - && strlen ((char *) end_elem->opr.name) > 1))) - return REG_ECOLLATE; - -# ifdef RE_ENABLE_I18N - { - wchar_t wc; - wint_t start_wc; - wint_t end_wc; - - start_ch = ((start_elem->type == SB_CHAR) ? start_elem->opr.ch - : ((start_elem->type == COLL_SYM) ? start_elem->opr.name[0] - : 0)); - end_ch = ((end_elem->type == SB_CHAR) ? end_elem->opr.ch - : ((end_elem->type == COLL_SYM) ? end_elem->opr.name[0] - : 0)); - start_wc = ((start_elem->type == SB_CHAR || start_elem->type == COLL_SYM) - ? parse_byte (start_ch, mbcset) : start_elem->opr.wch); - end_wc = ((end_elem->type == SB_CHAR || end_elem->type == COLL_SYM) - ? parse_byte (end_ch, mbcset) : end_elem->opr.wch); - if (start_wc == WEOF || end_wc == WEOF) - return REG_ECOLLATE; - else if (__glibc_unlikely ((syntax & RE_NO_EMPTY_RANGES) - && start_wc > end_wc)) - return REG_ERANGE; - - /* Got valid collation sequence values, add them as a new entry. - However, for !_LIBC we have no collation elements: if the - character set is single byte, the single byte character set - that we build below suffices. parse_bracket_exp passes - no MBCSET if dfa->mb_cur_max == 1. */ - if (mbcset) - { - /* Check the space of the arrays. */ - if (__glibc_unlikely (*range_alloc == mbcset->nranges)) - { - /* There is not enough space, need realloc. */ - wchar_t *new_array_start, *new_array_end; - Idx new_nranges; - - /* +1 in case of mbcset->nranges is 0. */ - new_nranges = 2 * mbcset->nranges + 1; - /* Use realloc since mbcset->range_starts and mbcset->range_ends - are NULL if *range_alloc == 0. */ - new_array_start = re_realloc (mbcset->range_starts, wchar_t, - new_nranges); - new_array_end = re_realloc (mbcset->range_ends, wchar_t, - new_nranges); - - if (__glibc_unlikely (new_array_start == NULL - || new_array_end == NULL)) - { - re_free (new_array_start); - re_free (new_array_end); - return REG_ESPACE; - } - - mbcset->range_starts = new_array_start; - mbcset->range_ends = new_array_end; - *range_alloc = new_nranges; - } - - mbcset->range_starts[mbcset->nranges] = start_wc; - mbcset->range_ends[mbcset->nranges++] = end_wc; - } - - /* Build the table for single byte characters. */ - for (wc = 0; wc < SBC_MAX; ++wc) - { - if (start_wc <= wc && wc <= end_wc) - bitset_set (sbcset, wc); - } - } -# else /* not RE_ENABLE_I18N */ - { - unsigned int ch; - start_ch = ((start_elem->type == SB_CHAR ) ? start_elem->opr.ch - : ((start_elem->type == COLL_SYM) ? start_elem->opr.name[0] - : 0)); - end_ch = ((end_elem->type == SB_CHAR ) ? end_elem->opr.ch - : ((end_elem->type == COLL_SYM) ? end_elem->opr.name[0] - : 0)); - if (start_ch > end_ch) - return REG_ERANGE; - /* Build the table for single byte characters. */ - for (ch = 0; ch < SBC_MAX; ++ch) - if (start_ch <= ch && ch <= end_ch) - bitset_set (sbcset, ch); - } -# endif /* not RE_ENABLE_I18N */ - return REG_NOERROR; -} -#endif /* not _LIBC */ - -#ifndef _LIBC -/* Helper function for parse_bracket_exp only used in case of NOT _LIBC.. - Build the collating element which is represented by NAME. - The result are written to MBCSET and SBCSET. - COLL_SYM_ALLOC is the allocated size of mbcset->coll_sym, is a - pointer argument since we may update it. */ - -static reg_errcode_t -# ifdef RE_ENABLE_I18N -build_collating_symbol (bitset_t sbcset, re_charset_t *mbcset, - Idx *coll_sym_alloc, const unsigned char *name) -# else /* not RE_ENABLE_I18N */ -build_collating_symbol (bitset_t sbcset, const unsigned char *name) -# endif /* not RE_ENABLE_I18N */ -{ - size_t name_len = strlen ((const char *) name); - if (__glibc_unlikely (name_len != 1)) - return REG_ECOLLATE; - else - { - bitset_set (sbcset, name[0]); - return REG_NOERROR; - } -} -#endif /* not _LIBC */ - -/* This function parse bracket expression like "[abc]", "[a-c]", - "[[.a-a.]]" etc. */ - -static bin_tree_t * -parse_bracket_exp (re_string_t *regexp, re_dfa_t *dfa, re_token_t *token, - reg_syntax_t syntax, reg_errcode_t *err) -{ -#ifdef _LIBC - const unsigned char *collseqmb; - const char *collseqwc; - uint32_t nrules; - int32_t table_size; - const int32_t *symb_table; - const unsigned char *extra; - - /* Local function for parse_bracket_exp used in _LIBC environment. - Seek the collating symbol entry corresponding to NAME. - Return the index of the symbol in the SYMB_TABLE, - or -1 if not found. */ - - auto inline int32_t - __attribute__ ((always_inline)) - seek_collating_symbol_entry (const unsigned char *name, size_t name_len) - { - int32_t elem; - - for (elem = 0; elem < table_size; elem++) - if (symb_table[2 * elem] != 0) - { - int32_t idx = symb_table[2 * elem + 1]; - /* Skip the name of collating element name. */ - idx += 1 + extra[idx]; - if (/* Compare the length of the name. */ - name_len == extra[idx] - /* Compare the name. */ - && memcmp (name, &extra[idx + 1], name_len) == 0) - /* Yep, this is the entry. */ - return elem; - } - return -1; - } - - /* Local function for parse_bracket_exp used in _LIBC environment. - Look up the collation sequence value of BR_ELEM. - Return the value if succeeded, UINT_MAX otherwise. */ - - auto inline unsigned int - __attribute__ ((always_inline)) - lookup_collation_sequence_value (bracket_elem_t *br_elem) - { - if (br_elem->type == SB_CHAR) - { - /* - if (MB_CUR_MAX == 1) - */ - if (nrules == 0) - return collseqmb[br_elem->opr.ch]; - else - { - wint_t wc = __btowc (br_elem->opr.ch); - return __collseq_table_lookup (collseqwc, wc); - } - } - else if (br_elem->type == MB_CHAR) - { - if (nrules != 0) - return __collseq_table_lookup (collseqwc, br_elem->opr.wch); - } - else if (br_elem->type == COLL_SYM) - { - size_t sym_name_len = strlen ((char *) br_elem->opr.name); - if (nrules != 0) - { - int32_t elem, idx; - elem = seek_collating_symbol_entry (br_elem->opr.name, - sym_name_len); - if (elem != -1) - { - /* We found the entry. */ - idx = symb_table[2 * elem + 1]; - /* Skip the name of collating element name. */ - idx += 1 + extra[idx]; - /* Skip the byte sequence of the collating element. */ - idx += 1 + extra[idx]; - /* Adjust for the alignment. */ - idx = (idx + 3) & ~3; - /* Skip the multibyte collation sequence value. */ - idx += sizeof (unsigned int); - /* Skip the wide char sequence of the collating element. */ - idx += sizeof (unsigned int) * - (1 + *(unsigned int *) (extra + idx)); - /* Return the collation sequence value. */ - return *(unsigned int *) (extra + idx); - } - else if (sym_name_len == 1) - { - /* No valid character. Match it as a single byte - character. */ - return collseqmb[br_elem->opr.name[0]]; - } - } - else if (sym_name_len == 1) - return collseqmb[br_elem->opr.name[0]]; - } - return UINT_MAX; - } - - /* Local function for parse_bracket_exp used in _LIBC environment. - Build the range expression which starts from START_ELEM, and ends - at END_ELEM. The result are written to MBCSET and SBCSET. - RANGE_ALLOC is the allocated size of mbcset->range_starts, and - mbcset->range_ends, is a pointer argument since we may - update it. */ - - auto inline reg_errcode_t - __attribute__ ((always_inline)) - build_range_exp (bitset_t sbcset, re_charset_t *mbcset, int *range_alloc, - bracket_elem_t *start_elem, bracket_elem_t *end_elem) - { - unsigned int ch; - uint32_t start_collseq; - uint32_t end_collseq; - - /* Equivalence Classes and Character Classes can't be a range - start/end. */ - if (__glibc_unlikely (start_elem->type == EQUIV_CLASS - || start_elem->type == CHAR_CLASS - || end_elem->type == EQUIV_CLASS - || end_elem->type == CHAR_CLASS)) - return REG_ERANGE; - - /* FIXME: Implement rational ranges here, too. */ - start_collseq = lookup_collation_sequence_value (start_elem); - end_collseq = lookup_collation_sequence_value (end_elem); - /* Check start/end collation sequence values. */ - if (__glibc_unlikely (start_collseq == UINT_MAX - || end_collseq == UINT_MAX)) - return REG_ECOLLATE; - if (__glibc_unlikely ((syntax & RE_NO_EMPTY_RANGES) - && start_collseq > end_collseq)) - return REG_ERANGE; - - /* Got valid collation sequence values, add them as a new entry. - However, if we have no collation elements, and the character set - is single byte, the single byte character set that we - build below suffices. */ - if (nrules > 0 || dfa->mb_cur_max > 1) - { - /* Check the space of the arrays. */ - if (__glibc_unlikely (*range_alloc == mbcset->nranges)) - { - /* There is not enough space, need realloc. */ - uint32_t *new_array_start; - uint32_t *new_array_end; - Idx new_nranges; - - /* +1 in case of mbcset->nranges is 0. */ - new_nranges = 2 * mbcset->nranges + 1; - new_array_start = re_realloc (mbcset->range_starts, uint32_t, - new_nranges); - new_array_end = re_realloc (mbcset->range_ends, uint32_t, - new_nranges); - - if (__glibc_unlikely (new_array_start == NULL - || new_array_end == NULL)) - return REG_ESPACE; - - mbcset->range_starts = new_array_start; - mbcset->range_ends = new_array_end; - *range_alloc = new_nranges; - } - - mbcset->range_starts[mbcset->nranges] = start_collseq; - mbcset->range_ends[mbcset->nranges++] = end_collseq; - } - - /* Build the table for single byte characters. */ - for (ch = 0; ch < SBC_MAX; ch++) - { - uint32_t ch_collseq; - /* - if (MB_CUR_MAX == 1) - */ - if (nrules == 0) - ch_collseq = collseqmb[ch]; - else - ch_collseq = __collseq_table_lookup (collseqwc, __btowc (ch)); - if (start_collseq <= ch_collseq && ch_collseq <= end_collseq) - bitset_set (sbcset, ch); - } - return REG_NOERROR; - } - - /* Local function for parse_bracket_exp used in _LIBC environment. - Build the collating element which is represented by NAME. - The result are written to MBCSET and SBCSET. - COLL_SYM_ALLOC is the allocated size of mbcset->coll_sym, is a - pointer argument since we may update it. */ - - auto inline reg_errcode_t - __attribute__ ((always_inline)) - build_collating_symbol (bitset_t sbcset, re_charset_t *mbcset, - Idx *coll_sym_alloc, const unsigned char *name) - { - int32_t elem, idx; - size_t name_len = strlen ((const char *) name); - if (nrules != 0) - { - elem = seek_collating_symbol_entry (name, name_len); - if (elem != -1) - { - /* We found the entry. */ - idx = symb_table[2 * elem + 1]; - /* Skip the name of collating element name. */ - idx += 1 + extra[idx]; - } - else if (name_len == 1) - { - /* No valid character, treat it as a normal - character. */ - bitset_set (sbcset, name[0]); - return REG_NOERROR; - } - else - return REG_ECOLLATE; - - /* Got valid collation sequence, add it as a new entry. */ - /* Check the space of the arrays. */ - if (__glibc_unlikely (*coll_sym_alloc == mbcset->ncoll_syms)) - { - /* Not enough, realloc it. */ - /* +1 in case of mbcset->ncoll_syms is 0. */ - Idx new_coll_sym_alloc = 2 * mbcset->ncoll_syms + 1; - /* Use realloc since mbcset->coll_syms is NULL - if *alloc == 0. */ - int32_t *new_coll_syms = re_realloc (mbcset->coll_syms, int32_t, - new_coll_sym_alloc); - if (__glibc_unlikely (new_coll_syms == NULL)) - return REG_ESPACE; - mbcset->coll_syms = new_coll_syms; - *coll_sym_alloc = new_coll_sym_alloc; - } - mbcset->coll_syms[mbcset->ncoll_syms++] = idx; - return REG_NOERROR; - } - else - { - if (__glibc_unlikely (name_len != 1)) - return REG_ECOLLATE; - else - { - bitset_set (sbcset, name[0]); - return REG_NOERROR; - } - } - } -#endif - - re_token_t br_token; - re_bitset_ptr_t sbcset; -#ifdef RE_ENABLE_I18N - re_charset_t *mbcset; - Idx coll_sym_alloc = 0, range_alloc = 0, mbchar_alloc = 0; - Idx equiv_class_alloc = 0, char_class_alloc = 0; -#endif /* not RE_ENABLE_I18N */ - bool non_match = false; - bin_tree_t *work_tree; - int token_len; - bool first_round = true; -#ifdef _LIBC - collseqmb = (const unsigned char *) - _NL_CURRENT (LC_COLLATE, _NL_COLLATE_COLLSEQMB); - nrules = _NL_CURRENT_WORD (LC_COLLATE, _NL_COLLATE_NRULES); - if (nrules) - { - /* - if (MB_CUR_MAX > 1) - */ - collseqwc = _NL_CURRENT (LC_COLLATE, _NL_COLLATE_COLLSEQWC); - table_size = _NL_CURRENT_WORD (LC_COLLATE, _NL_COLLATE_SYMB_HASH_SIZEMB); - symb_table = (const int32_t *) _NL_CURRENT (LC_COLLATE, - _NL_COLLATE_SYMB_TABLEMB); - extra = (const unsigned char *) _NL_CURRENT (LC_COLLATE, - _NL_COLLATE_SYMB_EXTRAMB); - } -#endif - sbcset = (re_bitset_ptr_t) calloc (sizeof (bitset_t), 1); -#ifdef RE_ENABLE_I18N - mbcset = (re_charset_t *) calloc (sizeof (re_charset_t), 1); -#endif /* RE_ENABLE_I18N */ -#ifdef RE_ENABLE_I18N - if (__glibc_unlikely (sbcset == NULL || mbcset == NULL)) -#else - if (__glibc_unlikely (sbcset == NULL)) -#endif /* RE_ENABLE_I18N */ - { - re_free (sbcset); -#ifdef RE_ENABLE_I18N - re_free (mbcset); -#endif - *err = REG_ESPACE; - return NULL; - } - - token_len = peek_token_bracket (token, regexp, syntax); - if (__glibc_unlikely (token->type == END_OF_RE)) - { - *err = REG_BADPAT; - goto parse_bracket_exp_free_return; - } - if (token->type == OP_NON_MATCH_LIST) - { -#ifdef RE_ENABLE_I18N - mbcset->non_match = 1; -#endif /* not RE_ENABLE_I18N */ - non_match = true; - if (syntax & RE_HAT_LISTS_NOT_NEWLINE) - bitset_set (sbcset, '\n'); - re_string_skip_bytes (regexp, token_len); /* Skip a token. */ - token_len = peek_token_bracket (token, regexp, syntax); - if (__glibc_unlikely (token->type == END_OF_RE)) - { - *err = REG_BADPAT; - goto parse_bracket_exp_free_return; - } - } - - /* We treat the first ']' as a normal character. */ - if (token->type == OP_CLOSE_BRACKET) - token->type = CHARACTER; - - while (1) - { - bracket_elem_t start_elem, end_elem; - unsigned char start_name_buf[BRACKET_NAME_BUF_SIZE]; - unsigned char end_name_buf[BRACKET_NAME_BUF_SIZE]; - reg_errcode_t ret; - int token_len2 = 0; - bool is_range_exp = false; - re_token_t token2; - - start_elem.opr.name = start_name_buf; - start_elem.type = COLL_SYM; - ret = parse_bracket_element (&start_elem, regexp, token, token_len, dfa, - syntax, first_round); - if (__glibc_unlikely (ret != REG_NOERROR)) - { - *err = ret; - goto parse_bracket_exp_free_return; - } - first_round = false; - - /* Get information about the next token. We need it in any case. */ - token_len = peek_token_bracket (token, regexp, syntax); - - /* Do not check for ranges if we know they are not allowed. */ - if (start_elem.type != CHAR_CLASS && start_elem.type != EQUIV_CLASS) - { - if (__glibc_unlikely (token->type == END_OF_RE)) - { - *err = REG_EBRACK; - goto parse_bracket_exp_free_return; - } - if (token->type == OP_CHARSET_RANGE) - { - re_string_skip_bytes (regexp, token_len); /* Skip '-'. */ - token_len2 = peek_token_bracket (&token2, regexp, syntax); - if (__glibc_unlikely (token2.type == END_OF_RE)) - { - *err = REG_EBRACK; - goto parse_bracket_exp_free_return; - } - if (token2.type == OP_CLOSE_BRACKET) - { - /* We treat the last '-' as a normal character. */ - re_string_skip_bytes (regexp, -token_len); - token->type = CHARACTER; - } - else - is_range_exp = true; - } - } - - if (is_range_exp == true) - { - end_elem.opr.name = end_name_buf; - end_elem.type = COLL_SYM; - ret = parse_bracket_element (&end_elem, regexp, &token2, token_len2, - dfa, syntax, true); - if (__glibc_unlikely (ret != REG_NOERROR)) - { - *err = ret; - goto parse_bracket_exp_free_return; - } - - token_len = peek_token_bracket (token, regexp, syntax); - -#ifdef _LIBC - *err = build_range_exp (sbcset, mbcset, &range_alloc, - &start_elem, &end_elem); -#else -# ifdef RE_ENABLE_I18N - *err = build_range_exp (syntax, sbcset, - dfa->mb_cur_max > 1 ? mbcset : NULL, - &range_alloc, &start_elem, &end_elem); -# else - *err = build_range_exp (syntax, sbcset, &start_elem, &end_elem); -# endif -#endif /* RE_ENABLE_I18N */ - if (__glibc_unlikely (*err != REG_NOERROR)) - goto parse_bracket_exp_free_return; - } - else - { - switch (start_elem.type) - { - case SB_CHAR: - bitset_set (sbcset, start_elem.opr.ch); - break; -#ifdef RE_ENABLE_I18N - case MB_CHAR: - /* Check whether the array has enough space. */ - if (__glibc_unlikely (mbchar_alloc == mbcset->nmbchars)) - { - wchar_t *new_mbchars; - /* Not enough, realloc it. */ - /* +1 in case of mbcset->nmbchars is 0. */ - mbchar_alloc = 2 * mbcset->nmbchars + 1; - /* Use realloc since array is NULL if *alloc == 0. */ - new_mbchars = re_realloc (mbcset->mbchars, wchar_t, - mbchar_alloc); - if (__glibc_unlikely (new_mbchars == NULL)) - goto parse_bracket_exp_espace; - mbcset->mbchars = new_mbchars; - } - mbcset->mbchars[mbcset->nmbchars++] = start_elem.opr.wch; - break; -#endif /* RE_ENABLE_I18N */ - case EQUIV_CLASS: - *err = build_equiv_class (sbcset, -#ifdef RE_ENABLE_I18N - mbcset, &equiv_class_alloc, -#endif /* RE_ENABLE_I18N */ - start_elem.opr.name); - if (__glibc_unlikely (*err != REG_NOERROR)) - goto parse_bracket_exp_free_return; - break; - case COLL_SYM: - *err = build_collating_symbol (sbcset, -#ifdef RE_ENABLE_I18N - mbcset, &coll_sym_alloc, -#endif /* RE_ENABLE_I18N */ - start_elem.opr.name); - if (__glibc_unlikely (*err != REG_NOERROR)) - goto parse_bracket_exp_free_return; - break; - case CHAR_CLASS: - *err = build_charclass (regexp->trans, sbcset, -#ifdef RE_ENABLE_I18N - mbcset, &char_class_alloc, -#endif /* RE_ENABLE_I18N */ - (const char *) start_elem.opr.name, - syntax); - if (__glibc_unlikely (*err != REG_NOERROR)) - goto parse_bracket_exp_free_return; - break; - default: - assert (0); - break; - } - } - if (__glibc_unlikely (token->type == END_OF_RE)) - { - *err = REG_EBRACK; - goto parse_bracket_exp_free_return; - } - if (token->type == OP_CLOSE_BRACKET) - break; - } - - re_string_skip_bytes (regexp, token_len); /* Skip a token. */ - - /* If it is non-matching list. */ - if (non_match) - bitset_not (sbcset); - -#ifdef RE_ENABLE_I18N - /* Ensure only single byte characters are set. */ - if (dfa->mb_cur_max > 1) - bitset_mask (sbcset, dfa->sb_char); - - if (mbcset->nmbchars || mbcset->ncoll_syms || mbcset->nequiv_classes - || mbcset->nranges || (dfa->mb_cur_max > 1 && (mbcset->nchar_classes - || mbcset->non_match))) - { - bin_tree_t *mbc_tree; - int sbc_idx; - /* Build a tree for complex bracket. */ - dfa->has_mb_node = 1; - br_token.type = COMPLEX_BRACKET; - br_token.opr.mbcset = mbcset; - mbc_tree = create_token_tree (dfa, NULL, NULL, &br_token); - if (__glibc_unlikely (mbc_tree == NULL)) - goto parse_bracket_exp_espace; - for (sbc_idx = 0; sbc_idx < BITSET_WORDS; ++sbc_idx) - if (sbcset[sbc_idx]) - break; - /* If there are no bits set in sbcset, there is no point - of having both SIMPLE_BRACKET and COMPLEX_BRACKET. */ - if (sbc_idx < BITSET_WORDS) - { - /* Build a tree for simple bracket. */ - br_token.type = SIMPLE_BRACKET; - br_token.opr.sbcset = sbcset; - work_tree = create_token_tree (dfa, NULL, NULL, &br_token); - if (__glibc_unlikely (work_tree == NULL)) - goto parse_bracket_exp_espace; - - /* Then join them by ALT node. */ - work_tree = create_tree (dfa, work_tree, mbc_tree, OP_ALT); - if (__glibc_unlikely (work_tree == NULL)) - goto parse_bracket_exp_espace; - } - else - { - re_free (sbcset); - work_tree = mbc_tree; - } - } - else -#endif /* not RE_ENABLE_I18N */ - { -#ifdef RE_ENABLE_I18N - free_charset (mbcset); -#endif - /* Build a tree for simple bracket. */ - br_token.type = SIMPLE_BRACKET; - br_token.opr.sbcset = sbcset; - work_tree = create_token_tree (dfa, NULL, NULL, &br_token); - if (__glibc_unlikely (work_tree == NULL)) - goto parse_bracket_exp_espace; - } - return work_tree; - - parse_bracket_exp_espace: - *err = REG_ESPACE; - parse_bracket_exp_free_return: - re_free (sbcset); -#ifdef RE_ENABLE_I18N - free_charset (mbcset); -#endif /* RE_ENABLE_I18N */ - return NULL; -} - -/* Parse an element in the bracket expression. */ - -static reg_errcode_t -parse_bracket_element (bracket_elem_t *elem, re_string_t *regexp, - re_token_t *token, int token_len, re_dfa_t *dfa, - reg_syntax_t syntax, bool accept_hyphen) -{ -#ifdef RE_ENABLE_I18N - int cur_char_size; - cur_char_size = re_string_char_size_at (regexp, re_string_cur_idx (regexp)); - if (cur_char_size > 1) - { - elem->type = MB_CHAR; - elem->opr.wch = re_string_wchar_at (regexp, re_string_cur_idx (regexp)); - re_string_skip_bytes (regexp, cur_char_size); - return REG_NOERROR; - } -#endif /* RE_ENABLE_I18N */ - re_string_skip_bytes (regexp, token_len); /* Skip a token. */ - if (token->type == OP_OPEN_COLL_ELEM || token->type == OP_OPEN_CHAR_CLASS - || token->type == OP_OPEN_EQUIV_CLASS) - return parse_bracket_symbol (elem, regexp, token); - if (__glibc_unlikely (token->type == OP_CHARSET_RANGE) && !accept_hyphen) - { - /* A '-' must only appear as anything but a range indicator before - the closing bracket. Everything else is an error. */ - re_token_t token2; - (void) peek_token_bracket (&token2, regexp, syntax); - if (token2.type != OP_CLOSE_BRACKET) - /* The actual error value is not standardized since this whole - case is undefined. But ERANGE makes good sense. */ - return REG_ERANGE; - } - elem->type = SB_CHAR; - elem->opr.ch = token->opr.c; - return REG_NOERROR; -} - -/* Parse a bracket symbol in the bracket expression. Bracket symbols are - such as [::], [..], and - [==]. */ - -static reg_errcode_t -parse_bracket_symbol (bracket_elem_t *elem, re_string_t *regexp, - re_token_t *token) -{ - unsigned char ch, delim = token->opr.c; - int i = 0; - if (re_string_eoi(regexp)) - return REG_EBRACK; - for (;; ++i) - { - if (i >= BRACKET_NAME_BUF_SIZE) - return REG_EBRACK; - if (token->type == OP_OPEN_CHAR_CLASS) - ch = re_string_fetch_byte_case (regexp); - else - ch = re_string_fetch_byte (regexp); - if (re_string_eoi(regexp)) - return REG_EBRACK; - if (ch == delim && re_string_peek_byte (regexp, 0) == ']') - break; - elem->opr.name[i] = ch; - } - re_string_skip_bytes (regexp, 1); - elem->opr.name[i] = '\0'; - switch (token->type) - { - case OP_OPEN_COLL_ELEM: - elem->type = COLL_SYM; - break; - case OP_OPEN_EQUIV_CLASS: - elem->type = EQUIV_CLASS; - break; - case OP_OPEN_CHAR_CLASS: - elem->type = CHAR_CLASS; - break; - default: - break; - } - return REG_NOERROR; -} - - /* Helper function for parse_bracket_exp. - Build the equivalence class which is represented by NAME. - The result are written to MBCSET and SBCSET. - EQUIV_CLASS_ALLOC is the allocated size of mbcset->equiv_classes, - is a pointer argument since we may update it. */ - -static reg_errcode_t -#ifdef RE_ENABLE_I18N -build_equiv_class (bitset_t sbcset, re_charset_t *mbcset, - Idx *equiv_class_alloc, const unsigned char *name) -#else /* not RE_ENABLE_I18N */ -build_equiv_class (bitset_t sbcset, const unsigned char *name) -#endif /* not RE_ENABLE_I18N */ -{ -#ifdef _LIBC - uint32_t nrules = _NL_CURRENT_WORD (LC_COLLATE, _NL_COLLATE_NRULES); - if (nrules != 0) - { - const int32_t *table, *indirect; - const unsigned char *weights, *extra, *cp; - unsigned char char_buf[2]; - int32_t idx1, idx2; - unsigned int ch; - size_t len; - /* Calculate the index for equivalence class. */ - cp = name; - table = (const int32_t *) _NL_CURRENT (LC_COLLATE, _NL_COLLATE_TABLEMB); - weights = (const unsigned char *) _NL_CURRENT (LC_COLLATE, - _NL_COLLATE_WEIGHTMB); - extra = (const unsigned char *) _NL_CURRENT (LC_COLLATE, - _NL_COLLATE_EXTRAMB); - indirect = (const int32_t *) _NL_CURRENT (LC_COLLATE, - _NL_COLLATE_INDIRECTMB); - idx1 = findidx (table, indirect, extra, &cp, -1); - if (__glibc_unlikely (idx1 == 0 || *cp != '\0')) - /* This isn't a valid character. */ - return REG_ECOLLATE; - - /* Build single byte matching table for this equivalence class. */ - len = weights[idx1 & 0xffffff]; - for (ch = 0; ch < SBC_MAX; ++ch) - { - char_buf[0] = ch; - cp = char_buf; - idx2 = findidx (table, indirect, extra, &cp, 1); -/* - idx2 = table[ch]; -*/ - if (idx2 == 0) - /* This isn't a valid character. */ - continue; - /* Compare only if the length matches and the collation rule - index is the same. */ - if (len == weights[idx2 & 0xffffff] && (idx1 >> 24) == (idx2 >> 24) - && memcmp (weights + (idx1 & 0xffffff) + 1, - weights + (idx2 & 0xffffff) + 1, len) == 0) - bitset_set (sbcset, ch); - } - /* Check whether the array has enough space. */ - if (__glibc_unlikely (*equiv_class_alloc == mbcset->nequiv_classes)) - { - /* Not enough, realloc it. */ - /* +1 in case of mbcset->nequiv_classes is 0. */ - Idx new_equiv_class_alloc = 2 * mbcset->nequiv_classes + 1; - /* Use realloc since the array is NULL if *alloc == 0. */ - int32_t *new_equiv_classes = re_realloc (mbcset->equiv_classes, - int32_t, - new_equiv_class_alloc); - if (__glibc_unlikely (new_equiv_classes == NULL)) - return REG_ESPACE; - mbcset->equiv_classes = new_equiv_classes; - *equiv_class_alloc = new_equiv_class_alloc; - } - mbcset->equiv_classes[mbcset->nequiv_classes++] = idx1; - } - else -#endif /* _LIBC */ - { - if (__glibc_unlikely (strlen ((const char *) name) != 1)) - return REG_ECOLLATE; - bitset_set (sbcset, *name); - } - return REG_NOERROR; -} - - /* Helper function for parse_bracket_exp. - Build the character class which is represented by NAME. - The result are written to MBCSET and SBCSET. - CHAR_CLASS_ALLOC is the allocated size of mbcset->char_classes, - is a pointer argument since we may update it. */ - -static reg_errcode_t -#ifdef RE_ENABLE_I18N -build_charclass (RE_TRANSLATE_TYPE trans, bitset_t sbcset, - re_charset_t *mbcset, Idx *char_class_alloc, - const char *class_name, reg_syntax_t syntax) -#else /* not RE_ENABLE_I18N */ -build_charclass (RE_TRANSLATE_TYPE trans, bitset_t sbcset, - const char *class_name, reg_syntax_t syntax) -#endif /* not RE_ENABLE_I18N */ -{ - int i; - const char *name = class_name; - - /* In case of REG_ICASE "upper" and "lower" match the both of - upper and lower cases. */ - if ((syntax & RE_ICASE) - && (strcmp (name, "upper") == 0 || strcmp (name, "lower") == 0)) - name = "alpha"; - -#ifdef RE_ENABLE_I18N - /* Check the space of the arrays. */ - if (__glibc_unlikely (*char_class_alloc == mbcset->nchar_classes)) - { - /* Not enough, realloc it. */ - /* +1 in case of mbcset->nchar_classes is 0. */ - Idx new_char_class_alloc = 2 * mbcset->nchar_classes + 1; - /* Use realloc since array is NULL if *alloc == 0. */ - wctype_t *new_char_classes = re_realloc (mbcset->char_classes, wctype_t, - new_char_class_alloc); - if (__glibc_unlikely (new_char_classes == NULL)) - return REG_ESPACE; - mbcset->char_classes = new_char_classes; - *char_class_alloc = new_char_class_alloc; - } - mbcset->char_classes[mbcset->nchar_classes++] = __wctype (name); -#endif /* RE_ENABLE_I18N */ - -#define BUILD_CHARCLASS_LOOP(ctype_func) \ - do { \ - if (__glibc_unlikely (trans != NULL)) \ - { \ - for (i = 0; i < SBC_MAX; ++i) \ - if (ctype_func (i)) \ - bitset_set (sbcset, trans[i]); \ - } \ - else \ - { \ - for (i = 0; i < SBC_MAX; ++i) \ - if (ctype_func (i)) \ - bitset_set (sbcset, i); \ - } \ - } while (0) - - if (strcmp (name, "alnum") == 0) - BUILD_CHARCLASS_LOOP (isalnum); - else if (strcmp (name, "cntrl") == 0) - BUILD_CHARCLASS_LOOP (iscntrl); - else if (strcmp (name, "lower") == 0) - BUILD_CHARCLASS_LOOP (islower); - else if (strcmp (name, "space") == 0) - BUILD_CHARCLASS_LOOP (isspace); - else if (strcmp (name, "alpha") == 0) - BUILD_CHARCLASS_LOOP (isalpha); - else if (strcmp (name, "digit") == 0) - BUILD_CHARCLASS_LOOP (isdigit); - else if (strcmp (name, "print") == 0) - BUILD_CHARCLASS_LOOP (isprint); - else if (strcmp (name, "upper") == 0) - BUILD_CHARCLASS_LOOP (isupper); - else if (strcmp (name, "blank") == 0) - BUILD_CHARCLASS_LOOP (isblank); - else if (strcmp (name, "graph") == 0) - BUILD_CHARCLASS_LOOP (isgraph); - else if (strcmp (name, "punct") == 0) - BUILD_CHARCLASS_LOOP (ispunct); - else if (strcmp (name, "xdigit") == 0) - BUILD_CHARCLASS_LOOP (isxdigit); - else - return REG_ECTYPE; - - return REG_NOERROR; -} - -static bin_tree_t * -build_charclass_op (re_dfa_t *dfa, RE_TRANSLATE_TYPE trans, - const char *class_name, - const char *extra, bool non_match, - reg_errcode_t *err) -{ - re_bitset_ptr_t sbcset; -#ifdef RE_ENABLE_I18N - re_charset_t *mbcset; - Idx alloc = 0; -#endif /* not RE_ENABLE_I18N */ - reg_errcode_t ret; - re_token_t br_token; - bin_tree_t *tree; - - sbcset = (re_bitset_ptr_t) calloc (sizeof (bitset_t), 1); - if (__glibc_unlikely (sbcset == NULL)) - { - *err = REG_ESPACE; - return NULL; - } -#ifdef RE_ENABLE_I18N - mbcset = (re_charset_t *) calloc (sizeof (re_charset_t), 1); - if (__glibc_unlikely (mbcset == NULL)) - { - re_free (sbcset); - *err = REG_ESPACE; - return NULL; - } - mbcset->non_match = non_match; -#endif /* RE_ENABLE_I18N */ - - /* We don't care the syntax in this case. */ - ret = build_charclass (trans, sbcset, -#ifdef RE_ENABLE_I18N - mbcset, &alloc, -#endif /* RE_ENABLE_I18N */ - class_name, 0); - - if (__glibc_unlikely (ret != REG_NOERROR)) - { - re_free (sbcset); -#ifdef RE_ENABLE_I18N - free_charset (mbcset); -#endif /* RE_ENABLE_I18N */ - *err = ret; - return NULL; - } - /* \w match '_' also. */ - for (; *extra; extra++) - bitset_set (sbcset, *extra); - - /* If it is non-matching list. */ - if (non_match) - bitset_not (sbcset); - -#ifdef RE_ENABLE_I18N - /* Ensure only single byte characters are set. */ - if (dfa->mb_cur_max > 1) - bitset_mask (sbcset, dfa->sb_char); -#endif - - /* Build a tree for simple bracket. */ -#if defined GCC_LINT || defined lint - memset (&br_token, 0, sizeof br_token); -#endif - br_token.type = SIMPLE_BRACKET; - br_token.opr.sbcset = sbcset; - tree = create_token_tree (dfa, NULL, NULL, &br_token); - if (__glibc_unlikely (tree == NULL)) - goto build_word_op_espace; - -#ifdef RE_ENABLE_I18N - if (dfa->mb_cur_max > 1) - { - bin_tree_t *mbc_tree; - /* Build a tree for complex bracket. */ - br_token.type = COMPLEX_BRACKET; - br_token.opr.mbcset = mbcset; - dfa->has_mb_node = 1; - mbc_tree = create_token_tree (dfa, NULL, NULL, &br_token); - if (__glibc_unlikely (mbc_tree == NULL)) - goto build_word_op_espace; - /* Then join them by ALT node. */ - tree = create_tree (dfa, tree, mbc_tree, OP_ALT); - if (__glibc_likely (mbc_tree != NULL)) - return tree; - } - else - { - free_charset (mbcset); - return tree; - } -#else /* not RE_ENABLE_I18N */ - return tree; -#endif /* not RE_ENABLE_I18N */ - - build_word_op_espace: - re_free (sbcset); -#ifdef RE_ENABLE_I18N - free_charset (mbcset); -#endif /* RE_ENABLE_I18N */ - *err = REG_ESPACE; - return NULL; -} - -/* This is intended for the expressions like "a{1,3}". - Fetch a number from 'input', and return the number. - Return -1 if the number field is empty like "{,1}". - Return RE_DUP_MAX + 1 if the number field is too large. - Return -2 if an error occurred. */ - -static Idx -fetch_number (re_string_t *input, re_token_t *token, reg_syntax_t syntax) -{ - Idx num = -1; - unsigned char c; - while (1) - { - fetch_token (token, input, syntax); - c = token->opr.c; - if (__glibc_unlikely (token->type == END_OF_RE)) - return -2; - if (token->type == OP_CLOSE_DUP_NUM || c == ',') - break; - num = ((token->type != CHARACTER || c < '0' || '9' < c || num == -2) - ? -2 - : num == -1 - ? c - '0' - : MIN (RE_DUP_MAX + 1, num * 10 + c - '0')); - } - return num; -} - -#ifdef RE_ENABLE_I18N -static void -free_charset (re_charset_t *cset) -{ - re_free (cset->mbchars); -# ifdef _LIBC - re_free (cset->coll_syms); - re_free (cset->equiv_classes); -# endif - re_free (cset->range_starts); - re_free (cset->range_ends); - re_free (cset->char_classes); - re_free (cset); -} -#endif /* RE_ENABLE_I18N */ - -/* Functions for binary tree operation. */ - -/* Create a tree node. */ - -static bin_tree_t * -create_tree (re_dfa_t *dfa, bin_tree_t *left, bin_tree_t *right, - re_token_type_t type) -{ - re_token_t t; -#if defined GCC_LINT || defined lint - memset (&t, 0, sizeof t); -#endif - t.type = type; - return create_token_tree (dfa, left, right, &t); -} - -static bin_tree_t * -create_token_tree (re_dfa_t *dfa, bin_tree_t *left, bin_tree_t *right, - const re_token_t *token) -{ - bin_tree_t *tree; - if (__glibc_unlikely (dfa->str_tree_storage_idx == BIN_TREE_STORAGE_SIZE)) - { - bin_tree_storage_t *storage = re_malloc (bin_tree_storage_t, 1); - - if (storage == NULL) - return NULL; - storage->next = dfa->str_tree_storage; - dfa->str_tree_storage = storage; - dfa->str_tree_storage_idx = 0; - } - tree = &dfa->str_tree_storage->data[dfa->str_tree_storage_idx++]; - - tree->parent = NULL; - tree->left = left; - tree->right = right; - tree->token = *token; - tree->token.duplicated = 0; - tree->token.opt_subexp = 0; - tree->first = NULL; - tree->next = NULL; - tree->node_idx = -1; - - if (left != NULL) - left->parent = tree; - if (right != NULL) - right->parent = tree; - return tree; -} - -/* Mark the tree SRC as an optional subexpression. - To be called from preorder or postorder. */ - -static reg_errcode_t -mark_opt_subexp (void *extra, bin_tree_t *node) -{ - Idx idx = (uintptr_t) extra; - if (node->token.type == SUBEXP && node->token.opr.idx == idx) - node->token.opt_subexp = 1; - - return REG_NOERROR; -} - -/* Free the allocated memory inside NODE. */ - -static void -free_token (re_token_t *node) -{ -#ifdef RE_ENABLE_I18N - if (node->type == COMPLEX_BRACKET && node->duplicated == 0) - free_charset (node->opr.mbcset); - else -#endif /* RE_ENABLE_I18N */ - if (node->type == SIMPLE_BRACKET && node->duplicated == 0) - re_free (node->opr.sbcset); -} - -/* Worker function for tree walking. Free the allocated memory inside NODE - and its children. */ - -static reg_errcode_t -free_tree (void *extra, bin_tree_t *node) -{ - free_token (&node->token); - return REG_NOERROR; -} - - -/* Duplicate the node SRC, and return new node. This is a preorder - visit similar to the one implemented by the generic visitor, but - we need more infrastructure to maintain two parallel trees --- so, - it's easier to duplicate. */ - -static bin_tree_t * -duplicate_tree (const bin_tree_t *root, re_dfa_t *dfa) -{ - const bin_tree_t *node; - bin_tree_t *dup_root; - bin_tree_t **p_new = &dup_root, *dup_node = root->parent; - - for (node = root; ; ) - { - /* Create a new tree and link it back to the current parent. */ - *p_new = create_token_tree (dfa, NULL, NULL, &node->token); - if (*p_new == NULL) - return NULL; - (*p_new)->parent = dup_node; - (*p_new)->token.duplicated = 1; - dup_node = *p_new; - - /* Go to the left node, or up and to the right. */ - if (node->left) - { - node = node->left; - p_new = &dup_node->left; - } - else - { - const bin_tree_t *prev = NULL; - while (node->right == prev || node->right == NULL) - { - prev = node; - node = node->parent; - dup_node = dup_node->parent; - if (!node) - return dup_root; - } - node = node->right; - p_new = &dup_node->right; - } - } -} diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/regex.c b/thirdparty/grub-2.04/grub-core/lib/gnulib/regex.c deleted file mode 100644 index eab7a48b2..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/regex.c +++ /dev/null @@ -1,81 +0,0 @@ -/* Extended regular expression matching and search library. - Copyright (C) 2002-2019 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Isamu Hasegawa . - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU General Public - License as published by the Free Software Foundation; either - version 3 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - General Public License for more details. - - You should have received a copy of the GNU General Public - License along with the GNU C Library; if not, see - . */ - -#ifndef _LIBC -# include - -# if __GNUC_PREREQ (4, 6) -# pragma GCC diagnostic ignored "-Wsuggest-attribute=pure" -# endif -# if __GNUC_PREREQ (4, 3) -# pragma GCC diagnostic ignored "-Wold-style-definition" -# pragma GCC diagnostic ignored "-Wtype-limits" -# endif -#endif - -/* Make sure no one compiles this code with a C++ compiler. */ -#if defined __cplusplus && defined _LIBC -# error "This is C code, use a C compiler" -#endif - -#ifdef _LIBC -/* We have to keep the namespace clean. */ -# define regfree(preg) __regfree (preg) -# define regexec(pr, st, nm, pm, ef) __regexec (pr, st, nm, pm, ef) -# define regcomp(preg, pattern, cflags) __regcomp (preg, pattern, cflags) -# define regerror(errcode, preg, errbuf, errbuf_size) \ - __regerror(errcode, preg, errbuf, errbuf_size) -# define re_set_registers(bu, re, nu, st, en) \ - __re_set_registers (bu, re, nu, st, en) -# define re_match_2(bufp, string1, size1, string2, size2, pos, regs, stop) \ - __re_match_2 (bufp, string1, size1, string2, size2, pos, regs, stop) -# define re_match(bufp, string, size, pos, regs) \ - __re_match (bufp, string, size, pos, regs) -# define re_search(bufp, string, size, startpos, range, regs) \ - __re_search (bufp, string, size, startpos, range, regs) -# define re_compile_pattern(pattern, length, bufp) \ - __re_compile_pattern (pattern, length, bufp) -# define re_set_syntax(syntax) __re_set_syntax (syntax) -# define re_search_2(bufp, st1, s1, st2, s2, startpos, range, regs, stop) \ - __re_search_2 (bufp, st1, s1, st2, s2, startpos, range, regs, stop) -# define re_compile_fastmap(bufp) __re_compile_fastmap (bufp) - -# include "../locale/localeinfo.h" -#endif - -/* On some systems, limits.h sets RE_DUP_MAX to a lower value than - GNU regex allows. Include it before , which correctly - #undefs RE_DUP_MAX and sets it to the right value. */ -#include - -#include -#include "regex_internal.h" - -#include "regex_internal.c" -#include "regcomp.c" -#include "regexec.c" - -/* Binary backward compatibility. */ -#if _LIBC -# include -# if SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_3) -link_warning (re_max_failures, "the 're_max_failures' variable is obsolete and will go away.") -int re_max_failures = 2000; -# endif -#endif diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/regex.h b/thirdparty/grub-2.04/grub-core/lib/gnulib/regex.h deleted file mode 100644 index 77ac1a559..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/regex.h +++ /dev/null @@ -1,658 +0,0 @@ -/* Definitions for data structures and routines for the regular - expression library. - Copyright (C) 1985, 1989-2019 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU General Public - License as published by the Free Software Foundation; either - version 3 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - General Public License for more details. - - You should have received a copy of the GNU General Public - License along with the GNU C Library; if not, see - . */ - -#ifndef _REGEX_H -#define _REGEX_H 1 - -#include - -/* Allow the use in C++ code. */ -#ifdef __cplusplus -extern "C" { -#endif - -/* Define __USE_GNU to declare GNU extensions that violate the - POSIX name space rules. */ -#ifdef _GNU_SOURCE -# define __USE_GNU 1 -#endif - -#ifdef _REGEX_LARGE_OFFSETS - -/* Use types and values that are wide enough to represent signed and - unsigned byte offsets in memory. This currently works only when - the regex code is used outside of the GNU C library; it is not yet - supported within glibc itself, and glibc users should not define - _REGEX_LARGE_OFFSETS. */ - -/* The type of object sizes. */ -typedef size_t __re_size_t; - -/* The type of object sizes, in places where the traditional code - uses unsigned long int. */ -typedef size_t __re_long_size_t; - -#else - -/* The traditional GNU regex implementation mishandles strings longer - than INT_MAX. */ -typedef unsigned int __re_size_t; -typedef unsigned long int __re_long_size_t; - -#endif - -/* The following two types have to be signed and unsigned integer type - wide enough to hold a value of a pointer. For most ANSI compilers - ptrdiff_t and size_t should be likely OK. Still size of these two - types is 2 for Microsoft C. Ugh... */ -typedef long int s_reg_t; -typedef unsigned long int active_reg_t; - -/* The following bits are used to determine the regexp syntax we - recognize. The set/not-set meanings are chosen so that Emacs syntax - remains the value 0. The bits are given in alphabetical order, and - the definitions shifted by one from the previous bit; thus, when we - add or remove a bit, only one other definition need change. */ -typedef unsigned long int reg_syntax_t; - -#ifdef __USE_GNU -/* If this bit is not set, then \ inside a bracket expression is literal. - If set, then such a \ quotes the following character. */ -# define RE_BACKSLASH_ESCAPE_IN_LISTS ((unsigned long int) 1) - -/* If this bit is not set, then + and ? are operators, and \+ and \? are - literals. - If set, then \+ and \? are operators and + and ? are literals. */ -# define RE_BK_PLUS_QM (RE_BACKSLASH_ESCAPE_IN_LISTS << 1) - -/* If this bit is set, then character classes are supported. They are: - [:alpha:], [:upper:], [:lower:], [:digit:], [:alnum:], [:xdigit:], - [:space:], [:print:], [:punct:], [:graph:], and [:cntrl:]. - If not set, then character classes are not supported. */ -# define RE_CHAR_CLASSES (RE_BK_PLUS_QM << 1) - -/* If this bit is set, then ^ and $ are always anchors (outside bracket - expressions, of course). - If this bit is not set, then it depends: - ^ is an anchor if it is at the beginning of a regular - expression or after an open-group or an alternation operator; - $ is an anchor if it is at the end of a regular expression, or - before a close-group or an alternation operator. - - This bit could be (re)combined with RE_CONTEXT_INDEP_OPS, because - POSIX draft 11.2 says that * etc. in leading positions is undefined. - We already implemented a previous draft which made those constructs - invalid, though, so we haven't changed the code back. */ -# define RE_CONTEXT_INDEP_ANCHORS (RE_CHAR_CLASSES << 1) - -/* If this bit is set, then special characters are always special - regardless of where they are in the pattern. - If this bit is not set, then special characters are special only in - some contexts; otherwise they are ordinary. Specifically, - * + ? and intervals are only special when not after the beginning, - open-group, or alternation operator. */ -# define RE_CONTEXT_INDEP_OPS (RE_CONTEXT_INDEP_ANCHORS << 1) - -/* If this bit is set, then *, +, ?, and { cannot be first in an re or - immediately after an alternation or begin-group operator. */ -# define RE_CONTEXT_INVALID_OPS (RE_CONTEXT_INDEP_OPS << 1) - -/* If this bit is set, then . matches newline. - If not set, then it doesn't. */ -# define RE_DOT_NEWLINE (RE_CONTEXT_INVALID_OPS << 1) - -/* If this bit is set, then . doesn't match NUL. - If not set, then it does. */ -# define RE_DOT_NOT_NULL (RE_DOT_NEWLINE << 1) - -/* If this bit is set, nonmatching lists [^...] do not match newline. - If not set, they do. */ -# define RE_HAT_LISTS_NOT_NEWLINE (RE_DOT_NOT_NULL << 1) - -/* If this bit is set, either \{...\} or {...} defines an - interval, depending on RE_NO_BK_BRACES. - If not set, \{, \}, {, and } are literals. */ -# define RE_INTERVALS (RE_HAT_LISTS_NOT_NEWLINE << 1) - -/* If this bit is set, +, ? and | aren't recognized as operators. - If not set, they are. */ -# define RE_LIMITED_OPS (RE_INTERVALS << 1) - -/* If this bit is set, newline is an alternation operator. - If not set, newline is literal. */ -# define RE_NEWLINE_ALT (RE_LIMITED_OPS << 1) - -/* If this bit is set, then '{...}' defines an interval, and \{ and \} - are literals. - If not set, then '\{...\}' defines an interval. */ -# define RE_NO_BK_BRACES (RE_NEWLINE_ALT << 1) - -/* If this bit is set, (...) defines a group, and \( and \) are literals. - If not set, \(...\) defines a group, and ( and ) are literals. */ -# define RE_NO_BK_PARENS (RE_NO_BK_BRACES << 1) - -/* If this bit is set, then \ matches . - If not set, then \ is a back-reference. */ -# define RE_NO_BK_REFS (RE_NO_BK_PARENS << 1) - -/* If this bit is set, then | is an alternation operator, and \| is literal. - If not set, then \| is an alternation operator, and | is literal. */ -# define RE_NO_BK_VBAR (RE_NO_BK_REFS << 1) - -/* If this bit is set, then an ending range point collating higher - than the starting range point, as in [z-a], is invalid. - If not set, then when ending range point collates higher than the - starting range point, the range is ignored. */ -# define RE_NO_EMPTY_RANGES (RE_NO_BK_VBAR << 1) - -/* If this bit is set, then an unmatched ) is ordinary. - If not set, then an unmatched ) is invalid. */ -# define RE_UNMATCHED_RIGHT_PAREN_ORD (RE_NO_EMPTY_RANGES << 1) - -/* If this bit is set, succeed as soon as we match the whole pattern, - without further backtracking. */ -# define RE_NO_POSIX_BACKTRACKING (RE_UNMATCHED_RIGHT_PAREN_ORD << 1) - -/* If this bit is set, do not process the GNU regex operators. - If not set, then the GNU regex operators are recognized. */ -# define RE_NO_GNU_OPS (RE_NO_POSIX_BACKTRACKING << 1) - -/* If this bit is set, turn on internal regex debugging. - If not set, and debugging was on, turn it off. - This only works if regex.c is compiled -DDEBUG. - We define this bit always, so that all that's needed to turn on - debugging is to recompile regex.c; the calling code can always have - this bit set, and it won't affect anything in the normal case. */ -# define RE_DEBUG (RE_NO_GNU_OPS << 1) - -/* If this bit is set, a syntactically invalid interval is treated as - a string of ordinary characters. For example, the ERE 'a{1' is - treated as 'a\{1'. */ -# define RE_INVALID_INTERVAL_ORD (RE_DEBUG << 1) - -/* If this bit is set, then ignore case when matching. - If not set, then case is significant. */ -# define RE_ICASE (RE_INVALID_INTERVAL_ORD << 1) - -/* This bit is used internally like RE_CONTEXT_INDEP_ANCHORS but only - for ^, because it is difficult to scan the regex backwards to find - whether ^ should be special. */ -# define RE_CARET_ANCHORS_HERE (RE_ICASE << 1) - -/* If this bit is set, then \{ cannot be first in a regex or - immediately after an alternation, open-group or \} operator. */ -# define RE_CONTEXT_INVALID_DUP (RE_CARET_ANCHORS_HERE << 1) - -/* If this bit is set, then no_sub will be set to 1 during - re_compile_pattern. */ -# define RE_NO_SUB (RE_CONTEXT_INVALID_DUP << 1) -#endif - -/* This global variable defines the particular regexp syntax to use (for - some interfaces). When a regexp is compiled, the syntax used is - stored in the pattern buffer, so changing this does not affect - already-compiled regexps. */ -extern reg_syntax_t re_syntax_options; - -#ifdef __USE_GNU -/* Define combinations of the above bits for the standard possibilities. - (The [[[ comments delimit what gets put into the Texinfo file, so - don't delete them!) */ -/* [[[begin syntaxes]]] */ -# define RE_SYNTAX_EMACS 0 - -# define RE_SYNTAX_AWK \ - (RE_BACKSLASH_ESCAPE_IN_LISTS | RE_DOT_NOT_NULL \ - | RE_NO_BK_PARENS | RE_NO_BK_REFS \ - | RE_NO_BK_VBAR | RE_NO_EMPTY_RANGES \ - | RE_DOT_NEWLINE | RE_CONTEXT_INDEP_ANCHORS \ - | RE_CHAR_CLASSES \ - | RE_UNMATCHED_RIGHT_PAREN_ORD | RE_NO_GNU_OPS) - -# define RE_SYNTAX_GNU_AWK \ - ((RE_SYNTAX_POSIX_EXTENDED | RE_BACKSLASH_ESCAPE_IN_LISTS \ - | RE_INVALID_INTERVAL_ORD) \ - & ~(RE_DOT_NOT_NULL | RE_CONTEXT_INDEP_OPS \ - | RE_CONTEXT_INVALID_OPS )) - -# define RE_SYNTAX_POSIX_AWK \ - (RE_SYNTAX_POSIX_EXTENDED | RE_BACKSLASH_ESCAPE_IN_LISTS \ - | RE_INTERVALS | RE_NO_GNU_OPS \ - | RE_INVALID_INTERVAL_ORD) - -# define RE_SYNTAX_GREP \ - ((RE_SYNTAX_POSIX_BASIC | RE_NEWLINE_ALT) \ - & ~(RE_CONTEXT_INVALID_DUP | RE_DOT_NOT_NULL)) - -# define RE_SYNTAX_EGREP \ - ((RE_SYNTAX_POSIX_EXTENDED | RE_INVALID_INTERVAL_ORD | RE_NEWLINE_ALT) \ - & ~(RE_CONTEXT_INVALID_OPS | RE_DOT_NOT_NULL)) - -/* POSIX grep -E behavior is no longer incompatible with GNU. */ -# define RE_SYNTAX_POSIX_EGREP \ - RE_SYNTAX_EGREP - -/* P1003.2/D11.2, section 4.20.7.1, lines 5078ff. */ -# define RE_SYNTAX_ED RE_SYNTAX_POSIX_BASIC - -# define RE_SYNTAX_SED RE_SYNTAX_POSIX_BASIC - -/* Syntax bits common to both basic and extended POSIX regex syntax. */ -# define _RE_SYNTAX_POSIX_COMMON \ - (RE_CHAR_CLASSES | RE_DOT_NEWLINE | RE_DOT_NOT_NULL \ - | RE_INTERVALS | RE_NO_EMPTY_RANGES) - -# define RE_SYNTAX_POSIX_BASIC \ - (_RE_SYNTAX_POSIX_COMMON | RE_BK_PLUS_QM | RE_CONTEXT_INVALID_DUP) - -/* Differs from ..._POSIX_BASIC only in that RE_BK_PLUS_QM becomes - RE_LIMITED_OPS, i.e., \? \+ \| are not recognized. Actually, this - isn't minimal, since other operators, such as \`, aren't disabled. */ -# define RE_SYNTAX_POSIX_MINIMAL_BASIC \ - (_RE_SYNTAX_POSIX_COMMON | RE_LIMITED_OPS) - -# define RE_SYNTAX_POSIX_EXTENDED \ - (_RE_SYNTAX_POSIX_COMMON | RE_CONTEXT_INDEP_ANCHORS \ - | RE_CONTEXT_INDEP_OPS | RE_NO_BK_BRACES \ - | RE_NO_BK_PARENS | RE_NO_BK_VBAR \ - | RE_CONTEXT_INVALID_OPS | RE_UNMATCHED_RIGHT_PAREN_ORD) - -/* Differs from ..._POSIX_EXTENDED in that RE_CONTEXT_INDEP_OPS is - removed and RE_NO_BK_REFS is added. */ -# define RE_SYNTAX_POSIX_MINIMAL_EXTENDED \ - (_RE_SYNTAX_POSIX_COMMON | RE_CONTEXT_INDEP_ANCHORS \ - | RE_CONTEXT_INVALID_OPS | RE_NO_BK_BRACES \ - | RE_NO_BK_PARENS | RE_NO_BK_REFS \ - | RE_NO_BK_VBAR | RE_UNMATCHED_RIGHT_PAREN_ORD) -/* [[[end syntaxes]]] */ - -/* Maximum number of duplicates an interval can allow. POSIX-conforming - systems might define this in , but we want our - value, so remove any previous define. */ -# ifdef _REGEX_INCLUDE_LIMITS_H -# include -# endif -# ifdef RE_DUP_MAX -# undef RE_DUP_MAX -# endif - -/* RE_DUP_MAX is 2**15 - 1 because an earlier implementation stored - the counter as a 2-byte signed integer. This is no longer true, so - RE_DUP_MAX could be increased to (INT_MAX / 10 - 1), or to - ((SIZE_MAX - 9) / 10) if _REGEX_LARGE_OFFSETS is defined. - However, there would be a huge performance problem if someone - actually used a pattern like a\{214748363\}, so RE_DUP_MAX retains - its historical value. */ -# define RE_DUP_MAX (0x7fff) -#endif - - -/* POSIX 'cflags' bits (i.e., information for 'regcomp'). */ - -/* If this bit is set, then use extended regular expression syntax. - If not set, then use basic regular expression syntax. */ -#define REG_EXTENDED 1 - -/* If this bit is set, then ignore case when matching. - If not set, then case is significant. */ -#define REG_ICASE (1 << 1) - -/* If this bit is set, then anchors do not match at newline - characters in the string. - If not set, then anchors do match at newlines. */ -#define REG_NEWLINE (1 << 2) - -/* If this bit is set, then report only success or fail in regexec. - If not set, then returns differ between not matching and errors. */ -#define REG_NOSUB (1 << 3) - - -/* POSIX 'eflags' bits (i.e., information for regexec). */ - -/* If this bit is set, then the beginning-of-line operator doesn't match - the beginning of the string (presumably because it's not the - beginning of a line). - If not set, then the beginning-of-line operator does match the - beginning of the string. */ -#define REG_NOTBOL 1 - -/* Like REG_NOTBOL, except for the end-of-line. */ -#define REG_NOTEOL (1 << 1) - -/* Use PMATCH[0] to delimit the start and end of the search in the - buffer. */ -#define REG_STARTEND (1 << 2) - - -/* If any error codes are removed, changed, or added, update the - '__re_error_msgid' table in regcomp.c. */ - -typedef enum -{ - _REG_ENOSYS = -1, /* This will never happen for this implementation. */ - _REG_NOERROR = 0, /* Success. */ - _REG_NOMATCH, /* Didn't find a match (for regexec). */ - - /* POSIX regcomp return error codes. (In the order listed in the - standard.) */ - _REG_BADPAT, /* Invalid pattern. */ - _REG_ECOLLATE, /* Invalid collating element. */ - _REG_ECTYPE, /* Invalid character class name. */ - _REG_EESCAPE, /* Trailing backslash. */ - _REG_ESUBREG, /* Invalid back reference. */ - _REG_EBRACK, /* Unmatched left bracket. */ - _REG_EPAREN, /* Parenthesis imbalance. */ - _REG_EBRACE, /* Unmatched \{. */ - _REG_BADBR, /* Invalid contents of \{\}. */ - _REG_ERANGE, /* Invalid range end. */ - _REG_ESPACE, /* Ran out of memory. */ - _REG_BADRPT, /* No preceding re for repetition op. */ - - /* Error codes we've added. */ - _REG_EEND, /* Premature end. */ - _REG_ESIZE, /* Too large (e.g., repeat count too large). */ - _REG_ERPAREN /* Unmatched ) or \); not returned from regcomp. */ -} reg_errcode_t; - -#if defined _XOPEN_SOURCE || defined __USE_XOPEN2K -# define REG_ENOSYS _REG_ENOSYS -#endif -#define REG_NOERROR _REG_NOERROR -#define REG_NOMATCH _REG_NOMATCH -#define REG_BADPAT _REG_BADPAT -#define REG_ECOLLATE _REG_ECOLLATE -#define REG_ECTYPE _REG_ECTYPE -#define REG_EESCAPE _REG_EESCAPE -#define REG_ESUBREG _REG_ESUBREG -#define REG_EBRACK _REG_EBRACK -#define REG_EPAREN _REG_EPAREN -#define REG_EBRACE _REG_EBRACE -#define REG_BADBR _REG_BADBR -#define REG_ERANGE _REG_ERANGE -#define REG_ESPACE _REG_ESPACE -#define REG_BADRPT _REG_BADRPT -#define REG_EEND _REG_EEND -#define REG_ESIZE _REG_ESIZE -#define REG_ERPAREN _REG_ERPAREN - -/* This data structure represents a compiled pattern. Before calling - the pattern compiler, the fields 'buffer', 'allocated', 'fastmap', - and 'translate' can be set. After the pattern has been compiled, - the fields 're_nsub', 'not_bol' and 'not_eol' are available. All - other fields are private to the regex routines. */ - -#ifndef RE_TRANSLATE_TYPE -# define __RE_TRANSLATE_TYPE unsigned char * -# ifdef __USE_GNU -# define RE_TRANSLATE_TYPE __RE_TRANSLATE_TYPE -# endif -#endif - -#ifdef __USE_GNU -# define __REPB_PREFIX(name) name -#else -# define __REPB_PREFIX(name) __##name -#endif - -struct re_pattern_buffer -{ - /* Space that holds the compiled pattern. The type - 'struct re_dfa_t' is private and is not declared here. */ - struct re_dfa_t *__REPB_PREFIX(buffer); - - /* Number of bytes to which 'buffer' points. */ - __re_long_size_t __REPB_PREFIX(allocated); - - /* Number of bytes actually used in 'buffer'. */ - __re_long_size_t __REPB_PREFIX(used); - - /* Syntax setting with which the pattern was compiled. */ - reg_syntax_t __REPB_PREFIX(syntax); - - /* Pointer to a fastmap, if any, otherwise zero. re_search uses the - fastmap, if there is one, to skip over impossible starting points - for matches. */ - char *__REPB_PREFIX(fastmap); - - /* Either a translate table to apply to all characters before - comparing them, or zero for no translation. The translation is - applied to a pattern when it is compiled and to a string when it - is matched. */ - __RE_TRANSLATE_TYPE __REPB_PREFIX(translate); - - /* Number of subexpressions found by the compiler. */ - size_t re_nsub; - - /* Zero if this pattern cannot match the empty string, one else. - Well, in truth it's used only in 're_search_2', to see whether or - not we should use the fastmap, so we don't set this absolutely - perfectly; see 're_compile_fastmap' (the "duplicate" case). */ - unsigned __REPB_PREFIX(can_be_null) : 1; - - /* If REGS_UNALLOCATED, allocate space in the 'regs' structure - for 'max (RE_NREGS, re_nsub + 1)' groups. - If REGS_REALLOCATE, reallocate space if necessary. - If REGS_FIXED, use what's there. */ -#ifdef __USE_GNU -# define REGS_UNALLOCATED 0 -# define REGS_REALLOCATE 1 -# define REGS_FIXED 2 -#endif - unsigned __REPB_PREFIX(regs_allocated) : 2; - - /* Set to zero when 're_compile_pattern' compiles a pattern; set to - one by 're_compile_fastmap' if it updates the fastmap. */ - unsigned __REPB_PREFIX(fastmap_accurate) : 1; - - /* If set, 're_match_2' does not return information about - subexpressions. */ - unsigned __REPB_PREFIX(no_sub) : 1; - - /* If set, a beginning-of-line anchor doesn't match at the beginning - of the string. */ - unsigned __REPB_PREFIX(not_bol) : 1; - - /* Similarly for an end-of-line anchor. */ - unsigned __REPB_PREFIX(not_eol) : 1; - - /* If true, an anchor at a newline matches. */ - unsigned __REPB_PREFIX(newline_anchor) : 1; -}; - -typedef struct re_pattern_buffer regex_t; - -/* Type for byte offsets within the string. POSIX mandates this. */ -#ifdef _REGEX_LARGE_OFFSETS -/* POSIX 1003.1-2008 requires that regoff_t be at least as wide as - ptrdiff_t and ssize_t. We don't know of any hosts where ptrdiff_t - is wider than ssize_t, so ssize_t is safe. ptrdiff_t is not - visible here, so use ssize_t. */ -typedef ssize_t regoff_t; -#else -/* The traditional GNU regex implementation mishandles strings longer - than INT_MAX. */ -typedef int regoff_t; -#endif - - -#ifdef __USE_GNU -/* This is the structure we store register match data in. See - regex.texinfo for a full description of what registers match. */ -struct re_registers -{ - __re_size_t num_regs; - regoff_t *start; - regoff_t *end; -}; - - -/* If 'regs_allocated' is REGS_UNALLOCATED in the pattern buffer, - 're_match_2' returns information about at least this many registers - the first time a 'regs' structure is passed. */ -# ifndef RE_NREGS -# define RE_NREGS 30 -# endif -#endif - - -/* POSIX specification for registers. Aside from the different names than - 're_registers', POSIX uses an array of structures, instead of a - structure of arrays. */ -typedef struct -{ - regoff_t rm_so; /* Byte offset from string's start to substring's start. */ - regoff_t rm_eo; /* Byte offset from string's start to substring's end. */ -} regmatch_t; - -/* Declarations for routines. */ - -#ifdef __USE_GNU -/* Sets the current default syntax to SYNTAX, and return the old syntax. - You can also simply assign to the 're_syntax_options' variable. */ -extern reg_syntax_t re_set_syntax (reg_syntax_t __syntax); - -/* Compile the regular expression PATTERN, with length LENGTH - and syntax given by the global 're_syntax_options', into the buffer - BUFFER. Return NULL if successful, and an error string if not. - - To free the allocated storage, you must call 'regfree' on BUFFER. - Note that the translate table must either have been initialized by - 'regcomp', with a malloc'ed value, or set to NULL before calling - 'regfree'. */ -extern const char *re_compile_pattern (const char *__pattern, size_t __length, - struct re_pattern_buffer *__buffer); - - -/* Compile a fastmap for the compiled pattern in BUFFER; used to - accelerate searches. Return 0 if successful and -2 if was an - internal error. */ -extern int re_compile_fastmap (struct re_pattern_buffer *__buffer); - - -/* Search in the string STRING (with length LENGTH) for the pattern - compiled into BUFFER. Start searching at position START, for RANGE - characters. Return the starting position of the match, -1 for no - match, or -2 for an internal error. Also return register - information in REGS (if REGS and BUFFER->no_sub are nonzero). */ -extern regoff_t re_search (struct re_pattern_buffer *__buffer, - const char *__String, regoff_t __length, - regoff_t __start, regoff_t __range, - struct re_registers *__regs); - - -/* Like 're_search', but search in the concatenation of STRING1 and - STRING2. Also, stop searching at index START + STOP. */ -extern regoff_t re_search_2 (struct re_pattern_buffer *__buffer, - const char *__string1, regoff_t __length1, - const char *__string2, regoff_t __length2, - regoff_t __start, regoff_t __range, - struct re_registers *__regs, - regoff_t __stop); - - -/* Like 're_search', but return how many characters in STRING the regexp - in BUFFER matched, starting at position START. */ -extern regoff_t re_match (struct re_pattern_buffer *__buffer, - const char *__String, regoff_t __length, - regoff_t __start, struct re_registers *__regs); - - -/* Relates to 're_match' as 're_search_2' relates to 're_search'. */ -extern regoff_t re_match_2 (struct re_pattern_buffer *__buffer, - const char *__string1, regoff_t __length1, - const char *__string2, regoff_t __length2, - regoff_t __start, struct re_registers *__regs, - regoff_t __stop); - - -/* Set REGS to hold NUM_REGS registers, storing them in STARTS and - ENDS. Subsequent matches using BUFFER and REGS will use this memory - for recording register information. STARTS and ENDS must be - allocated with malloc, and must each be at least 'NUM_REGS * sizeof - (regoff_t)' bytes long. - - If NUM_REGS == 0, then subsequent matches should allocate their own - register data. - - Unless this function is called, the first search or match using - BUFFER will allocate its own register data, without - freeing the old data. */ -extern void re_set_registers (struct re_pattern_buffer *__buffer, - struct re_registers *__regs, - __re_size_t __num_regs, - regoff_t *__starts, regoff_t *__ends); -#endif /* Use GNU */ - -#if defined _REGEX_RE_COMP || (defined _LIBC && defined __USE_MISC) -# ifndef _CRAY -/* 4.2 bsd compatibility. */ -extern char *re_comp (const char *); -extern int re_exec (const char *); -# endif -#endif - -/* For plain 'restrict', use glibc's __restrict if defined. - Otherwise, GCC 2.95 and later have "__restrict"; C99 compilers have - "restrict", and "configure" may have defined "restrict". - Other compilers use __restrict, __restrict__, and _Restrict, and - 'configure' might #define 'restrict' to those words, so pick a - different name. */ -#ifndef _Restrict_ -# if defined __restrict || 2 < __GNUC__ + (95 <= __GNUC_MINOR__) -# define _Restrict_ __restrict -# elif 199901L <= __STDC_VERSION__ || defined restrict -# define _Restrict_ restrict -# else -# define _Restrict_ -# endif -#endif -/* For [restrict], use glibc's __restrict_arr if available. - Otherwise, GCC 3.1 (not in C++ mode) and C99 support [restrict]. */ -#ifndef _Restrict_arr_ -# ifdef __restrict_arr -# define _Restrict_arr_ __restrict_arr -# elif ((199901L <= __STDC_VERSION__ || 3 < __GNUC__ + (1 <= __GNUC_MINOR__)) \ - && !defined __GNUG__) -# define _Restrict_arr_ _Restrict_ -# else -# define _Restrict_arr_ -# endif -#endif - -/* POSIX compatibility. */ -extern int regcomp (regex_t *_Restrict_ __preg, - const char *_Restrict_ __pattern, - int __cflags); - -extern int regexec (const regex_t *_Restrict_ __preg, - const char *_Restrict_ __String, size_t __nmatch, - regmatch_t __pmatch[_Restrict_arr_], - int __eflags); - -extern size_t regerror (int __errcode, const regex_t *_Restrict_ __preg, - char *_Restrict_ __errbuf, size_t __errbuf_size); - -extern void regfree (regex_t *__preg); - - -#ifdef __cplusplus -} -#endif /* C++ */ - -#endif /* regex.h */ diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/regex_internal.c b/thirdparty/grub-2.04/grub-core/lib/gnulib/regex_internal.c deleted file mode 100644 index b592f0672..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/regex_internal.c +++ /dev/null @@ -1,1746 +0,0 @@ -/* Extended regular expression matching and search library. - Copyright (C) 2002-2019 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Isamu Hasegawa . - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU General Public - License as published by the Free Software Foundation; either - version 3 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - General Public License for more details. - - You should have received a copy of the GNU General Public - License along with the GNU C Library; if not, see - . */ - -static void re_string_construct_common (const char *str, Idx len, - re_string_t *pstr, - RE_TRANSLATE_TYPE trans, bool icase, - const re_dfa_t *dfa); -static re_dfastate_t *create_ci_newstate (const re_dfa_t *dfa, - const re_node_set *nodes, - re_hashval_t hash); -static re_dfastate_t *create_cd_newstate (const re_dfa_t *dfa, - const re_node_set *nodes, - unsigned int context, - re_hashval_t hash); -static reg_errcode_t re_string_realloc_buffers (re_string_t *pstr, - Idx new_buf_len); -#ifdef RE_ENABLE_I18N -static void build_wcs_buffer (re_string_t *pstr); -static reg_errcode_t build_wcs_upper_buffer (re_string_t *pstr); -#endif /* RE_ENABLE_I18N */ -static void build_upper_buffer (re_string_t *pstr); -static void re_string_translate_buffer (re_string_t *pstr); -static unsigned int re_string_context_at (const re_string_t *input, Idx idx, - int eflags) __attribute__ ((pure)); - -/* Functions for string operation. */ - -/* This function allocate the buffers. It is necessary to call - re_string_reconstruct before using the object. */ - -static reg_errcode_t -__attribute_warn_unused_result__ -re_string_allocate (re_string_t *pstr, const char *str, Idx len, Idx init_len, - RE_TRANSLATE_TYPE trans, bool icase, const re_dfa_t *dfa) -{ - reg_errcode_t ret; - Idx init_buf_len; - - /* Ensure at least one character fits into the buffers. */ - if (init_len < dfa->mb_cur_max) - init_len = dfa->mb_cur_max; - init_buf_len = (len + 1 < init_len) ? len + 1: init_len; - re_string_construct_common (str, len, pstr, trans, icase, dfa); - - ret = re_string_realloc_buffers (pstr, init_buf_len); - if (__glibc_unlikely (ret != REG_NOERROR)) - return ret; - - pstr->word_char = dfa->word_char; - pstr->word_ops_used = dfa->word_ops_used; - pstr->mbs = pstr->mbs_allocated ? pstr->mbs : (unsigned char *) str; - pstr->valid_len = (pstr->mbs_allocated || dfa->mb_cur_max > 1) ? 0 : len; - pstr->valid_raw_len = pstr->valid_len; - return REG_NOERROR; -} - -/* This function allocate the buffers, and initialize them. */ - -static reg_errcode_t -__attribute_warn_unused_result__ -re_string_construct (re_string_t *pstr, const char *str, Idx len, - RE_TRANSLATE_TYPE trans, bool icase, const re_dfa_t *dfa) -{ - reg_errcode_t ret; - memset (pstr, '\0', sizeof (re_string_t)); - re_string_construct_common (str, len, pstr, trans, icase, dfa); - - if (len > 0) - { - ret = re_string_realloc_buffers (pstr, len + 1); - if (__glibc_unlikely (ret != REG_NOERROR)) - return ret; - } - pstr->mbs = pstr->mbs_allocated ? pstr->mbs : (unsigned char *) str; - - if (icase) - { -#ifdef RE_ENABLE_I18N - if (dfa->mb_cur_max > 1) - { - while (1) - { - ret = build_wcs_upper_buffer (pstr); - if (__glibc_unlikely (ret != REG_NOERROR)) - return ret; - if (pstr->valid_raw_len >= len) - break; - if (pstr->bufs_len > pstr->valid_len + dfa->mb_cur_max) - break; - ret = re_string_realloc_buffers (pstr, pstr->bufs_len * 2); - if (__glibc_unlikely (ret != REG_NOERROR)) - return ret; - } - } - else -#endif /* RE_ENABLE_I18N */ - build_upper_buffer (pstr); - } - else - { -#ifdef RE_ENABLE_I18N - if (dfa->mb_cur_max > 1) - build_wcs_buffer (pstr); - else -#endif /* RE_ENABLE_I18N */ - { - if (trans != NULL) - re_string_translate_buffer (pstr); - else - { - pstr->valid_len = pstr->bufs_len; - pstr->valid_raw_len = pstr->bufs_len; - } - } - } - - return REG_NOERROR; -} - -/* Helper functions for re_string_allocate, and re_string_construct. */ - -static reg_errcode_t -__attribute_warn_unused_result__ -re_string_realloc_buffers (re_string_t *pstr, Idx new_buf_len) -{ -#ifdef RE_ENABLE_I18N - if (pstr->mb_cur_max > 1) - { - wint_t *new_wcs; - - /* Avoid overflow in realloc. */ - const size_t max_object_size = MAX (sizeof (wint_t), sizeof (Idx)); - if (__glibc_unlikely (MIN (IDX_MAX, SIZE_MAX / max_object_size) - < new_buf_len)) - return REG_ESPACE; - - new_wcs = re_realloc (pstr->wcs, wint_t, new_buf_len); - if (__glibc_unlikely (new_wcs == NULL)) - return REG_ESPACE; - pstr->wcs = new_wcs; - if (pstr->offsets != NULL) - { - Idx *new_offsets = re_realloc (pstr->offsets, Idx, new_buf_len); - if (__glibc_unlikely (new_offsets == NULL)) - return REG_ESPACE; - pstr->offsets = new_offsets; - } - } -#endif /* RE_ENABLE_I18N */ - if (pstr->mbs_allocated) - { - unsigned char *new_mbs = re_realloc (pstr->mbs, unsigned char, - new_buf_len); - if (__glibc_unlikely (new_mbs == NULL)) - return REG_ESPACE; - pstr->mbs = new_mbs; - } - pstr->bufs_len = new_buf_len; - return REG_NOERROR; -} - - -static void -re_string_construct_common (const char *str, Idx len, re_string_t *pstr, - RE_TRANSLATE_TYPE trans, bool icase, - const re_dfa_t *dfa) -{ - pstr->raw_mbs = (const unsigned char *) str; - pstr->len = len; - pstr->raw_len = len; - pstr->trans = trans; - pstr->icase = icase; - pstr->mbs_allocated = (trans != NULL || icase); - pstr->mb_cur_max = dfa->mb_cur_max; - pstr->is_utf8 = dfa->is_utf8; - pstr->map_notascii = dfa->map_notascii; - pstr->stop = pstr->len; - pstr->raw_stop = pstr->stop; -} - -#ifdef RE_ENABLE_I18N - -/* Build wide character buffer PSTR->WCS. - If the byte sequence of the string are: - (0), (1), (0), (1), - Then wide character buffer will be: - , WEOF , , WEOF , - We use WEOF for padding, they indicate that the position isn't - a first byte of a multibyte character. - - Note that this function assumes PSTR->VALID_LEN elements are already - built and starts from PSTR->VALID_LEN. */ - -static void -build_wcs_buffer (re_string_t *pstr) -{ -#ifdef _LIBC - unsigned char buf[MB_LEN_MAX]; - assert (MB_LEN_MAX >= pstr->mb_cur_max); -#else - unsigned char buf[64]; -#endif - mbstate_t prev_st; - Idx byte_idx, end_idx, remain_len; - size_t mbclen; - - /* Build the buffers from pstr->valid_len to either pstr->len or - pstr->bufs_len. */ - end_idx = (pstr->bufs_len > pstr->len) ? pstr->len : pstr->bufs_len; - for (byte_idx = pstr->valid_len; byte_idx < end_idx;) - { - wchar_t wc; - const char *p; - - remain_len = end_idx - byte_idx; - prev_st = pstr->cur_state; - /* Apply the translation if we need. */ - if (__glibc_unlikely (pstr->trans != NULL)) - { - int i, ch; - - for (i = 0; i < pstr->mb_cur_max && i < remain_len; ++i) - { - ch = pstr->raw_mbs [pstr->raw_mbs_idx + byte_idx + i]; - buf[i] = pstr->mbs[byte_idx + i] = pstr->trans[ch]; - } - p = (const char *) buf; - } - else - p = (const char *) pstr->raw_mbs + pstr->raw_mbs_idx + byte_idx; - mbclen = __mbrtowc (&wc, p, remain_len, &pstr->cur_state); - if (__glibc_unlikely (mbclen == (size_t) -1 || mbclen == 0 - || (mbclen == (size_t) -2 - && pstr->bufs_len >= pstr->len))) - { - /* We treat these cases as a singlebyte character. */ - mbclen = 1; - wc = (wchar_t) pstr->raw_mbs[pstr->raw_mbs_idx + byte_idx]; - if (__glibc_unlikely (pstr->trans != NULL)) - wc = pstr->trans[wc]; - pstr->cur_state = prev_st; - } - else if (__glibc_unlikely (mbclen == (size_t) -2)) - { - /* The buffer doesn't have enough space, finish to build. */ - pstr->cur_state = prev_st; - break; - } - - /* Write wide character and padding. */ - pstr->wcs[byte_idx++] = wc; - /* Write paddings. */ - for (remain_len = byte_idx + mbclen - 1; byte_idx < remain_len ;) - pstr->wcs[byte_idx++] = WEOF; - } - pstr->valid_len = byte_idx; - pstr->valid_raw_len = byte_idx; -} - -/* Build wide character buffer PSTR->WCS like build_wcs_buffer, - but for REG_ICASE. */ - -static reg_errcode_t -__attribute_warn_unused_result__ -build_wcs_upper_buffer (re_string_t *pstr) -{ - mbstate_t prev_st; - Idx src_idx, byte_idx, end_idx, remain_len; - size_t mbclen; -#ifdef _LIBC - char buf[MB_LEN_MAX]; - assert (MB_LEN_MAX >= pstr->mb_cur_max); -#else - char buf[64]; -#endif - - byte_idx = pstr->valid_len; - end_idx = (pstr->bufs_len > pstr->len) ? pstr->len : pstr->bufs_len; - - /* The following optimization assumes that ASCII characters can be - mapped to wide characters with a simple cast. */ - if (! pstr->map_notascii && pstr->trans == NULL && !pstr->offsets_needed) - { - while (byte_idx < end_idx) - { - wchar_t wc; - - if (isascii (pstr->raw_mbs[pstr->raw_mbs_idx + byte_idx]) - && mbsinit (&pstr->cur_state)) - { - /* In case of a singlebyte character. */ - pstr->mbs[byte_idx] - = toupper (pstr->raw_mbs[pstr->raw_mbs_idx + byte_idx]); - /* The next step uses the assumption that wchar_t is encoded - ASCII-safe: all ASCII values can be converted like this. */ - pstr->wcs[byte_idx] = (wchar_t) pstr->mbs[byte_idx]; - ++byte_idx; - continue; - } - - remain_len = end_idx - byte_idx; - prev_st = pstr->cur_state; - mbclen = __mbrtowc (&wc, - ((const char *) pstr->raw_mbs + pstr->raw_mbs_idx - + byte_idx), remain_len, &pstr->cur_state); - if (__glibc_likely (0 < mbclen && mbclen < (size_t) -2)) - { - wchar_t wcu = __towupper (wc); - if (wcu != wc) - { - size_t mbcdlen; - - mbcdlen = __wcrtomb (buf, wcu, &prev_st); - if (__glibc_likely (mbclen == mbcdlen)) - memcpy (pstr->mbs + byte_idx, buf, mbclen); - else - { - src_idx = byte_idx; - goto offsets_needed; - } - } - else - memcpy (pstr->mbs + byte_idx, - pstr->raw_mbs + pstr->raw_mbs_idx + byte_idx, mbclen); - pstr->wcs[byte_idx++] = wcu; - /* Write paddings. */ - for (remain_len = byte_idx + mbclen - 1; byte_idx < remain_len ;) - pstr->wcs[byte_idx++] = WEOF; - } - else if (mbclen == (size_t) -1 || mbclen == 0 - || (mbclen == (size_t) -2 && pstr->bufs_len >= pstr->len)) - { - /* It is an invalid character, an incomplete character - at the end of the string, or '\0'. Just use the byte. */ - int ch = pstr->raw_mbs[pstr->raw_mbs_idx + byte_idx]; - pstr->mbs[byte_idx] = ch; - /* And also cast it to wide char. */ - pstr->wcs[byte_idx++] = (wchar_t) ch; - if (__glibc_unlikely (mbclen == (size_t) -1)) - pstr->cur_state = prev_st; - } - else - { - /* The buffer doesn't have enough space, finish to build. */ - pstr->cur_state = prev_st; - break; - } - } - pstr->valid_len = byte_idx; - pstr->valid_raw_len = byte_idx; - return REG_NOERROR; - } - else - for (src_idx = pstr->valid_raw_len; byte_idx < end_idx;) - { - wchar_t wc; - const char *p; - offsets_needed: - remain_len = end_idx - byte_idx; - prev_st = pstr->cur_state; - if (__glibc_unlikely (pstr->trans != NULL)) - { - int i, ch; - - for (i = 0; i < pstr->mb_cur_max && i < remain_len; ++i) - { - ch = pstr->raw_mbs [pstr->raw_mbs_idx + src_idx + i]; - buf[i] = pstr->trans[ch]; - } - p = (const char *) buf; - } - else - p = (const char *) pstr->raw_mbs + pstr->raw_mbs_idx + src_idx; - mbclen = __mbrtowc (&wc, p, remain_len, &pstr->cur_state); - if (__glibc_likely (0 < mbclen && mbclen < (size_t) -2)) - { - wchar_t wcu = __towupper (wc); - if (wcu != wc) - { - size_t mbcdlen; - - mbcdlen = __wcrtomb ((char *) buf, wcu, &prev_st); - if (__glibc_likely (mbclen == mbcdlen)) - memcpy (pstr->mbs + byte_idx, buf, mbclen); - else if (mbcdlen != (size_t) -1) - { - size_t i; - - if (byte_idx + mbcdlen > pstr->bufs_len) - { - pstr->cur_state = prev_st; - break; - } - - if (pstr->offsets == NULL) - { - pstr->offsets = re_malloc (Idx, pstr->bufs_len); - - if (pstr->offsets == NULL) - return REG_ESPACE; - } - if (!pstr->offsets_needed) - { - for (i = 0; i < (size_t) byte_idx; ++i) - pstr->offsets[i] = i; - pstr->offsets_needed = 1; - } - - memcpy (pstr->mbs + byte_idx, buf, mbcdlen); - pstr->wcs[byte_idx] = wcu; - pstr->offsets[byte_idx] = src_idx; - for (i = 1; i < mbcdlen; ++i) - { - pstr->offsets[byte_idx + i] - = src_idx + (i < mbclen ? i : mbclen - 1); - pstr->wcs[byte_idx + i] = WEOF; - } - pstr->len += mbcdlen - mbclen; - if (pstr->raw_stop > src_idx) - pstr->stop += mbcdlen - mbclen; - end_idx = (pstr->bufs_len > pstr->len) - ? pstr->len : pstr->bufs_len; - byte_idx += mbcdlen; - src_idx += mbclen; - continue; - } - else - memcpy (pstr->mbs + byte_idx, p, mbclen); - } - else - memcpy (pstr->mbs + byte_idx, p, mbclen); - - if (__glibc_unlikely (pstr->offsets_needed != 0)) - { - size_t i; - for (i = 0; i < mbclen; ++i) - pstr->offsets[byte_idx + i] = src_idx + i; - } - src_idx += mbclen; - - pstr->wcs[byte_idx++] = wcu; - /* Write paddings. */ - for (remain_len = byte_idx + mbclen - 1; byte_idx < remain_len ;) - pstr->wcs[byte_idx++] = WEOF; - } - else if (mbclen == (size_t) -1 || mbclen == 0 - || (mbclen == (size_t) -2 && pstr->bufs_len >= pstr->len)) - { - /* It is an invalid character or '\0'. Just use the byte. */ - int ch = pstr->raw_mbs[pstr->raw_mbs_idx + src_idx]; - - if (__glibc_unlikely (pstr->trans != NULL)) - ch = pstr->trans [ch]; - pstr->mbs[byte_idx] = ch; - - if (__glibc_unlikely (pstr->offsets_needed != 0)) - pstr->offsets[byte_idx] = src_idx; - ++src_idx; - - /* And also cast it to wide char. */ - pstr->wcs[byte_idx++] = (wchar_t) ch; - if (__glibc_unlikely (mbclen == (size_t) -1)) - pstr->cur_state = prev_st; - } - else - { - /* The buffer doesn't have enough space, finish to build. */ - pstr->cur_state = prev_st; - break; - } - } - pstr->valid_len = byte_idx; - pstr->valid_raw_len = src_idx; - return REG_NOERROR; -} - -/* Skip characters until the index becomes greater than NEW_RAW_IDX. - Return the index. */ - -static Idx -re_string_skip_chars (re_string_t *pstr, Idx new_raw_idx, wint_t *last_wc) -{ - mbstate_t prev_st; - Idx rawbuf_idx; - size_t mbclen; - wint_t wc = WEOF; - - /* Skip the characters which are not necessary to check. */ - for (rawbuf_idx = pstr->raw_mbs_idx + pstr->valid_raw_len; - rawbuf_idx < new_raw_idx;) - { - wchar_t wc2; - Idx remain_len = pstr->raw_len - rawbuf_idx; - prev_st = pstr->cur_state; - mbclen = __mbrtowc (&wc2, (const char *) pstr->raw_mbs + rawbuf_idx, - remain_len, &pstr->cur_state); - if (__glibc_unlikely (mbclen == (size_t) -2 || mbclen == (size_t) -1 - || mbclen == 0)) - { - /* We treat these cases as a single byte character. */ - if (mbclen == 0 || remain_len == 0) - wc = L'\0'; - else - wc = *(unsigned char *) (pstr->raw_mbs + rawbuf_idx); - mbclen = 1; - pstr->cur_state = prev_st; - } - else - wc = wc2; - /* Then proceed the next character. */ - rawbuf_idx += mbclen; - } - *last_wc = wc; - return rawbuf_idx; -} -#endif /* RE_ENABLE_I18N */ - -/* Build the buffer PSTR->MBS, and apply the translation if we need. - This function is used in case of REG_ICASE. */ - -static void -build_upper_buffer (re_string_t *pstr) -{ - Idx char_idx, end_idx; - end_idx = (pstr->bufs_len > pstr->len) ? pstr->len : pstr->bufs_len; - - for (char_idx = pstr->valid_len; char_idx < end_idx; ++char_idx) - { - int ch = pstr->raw_mbs[pstr->raw_mbs_idx + char_idx]; - if (__glibc_unlikely (pstr->trans != NULL)) - ch = pstr->trans[ch]; - pstr->mbs[char_idx] = toupper (ch); - } - pstr->valid_len = char_idx; - pstr->valid_raw_len = char_idx; -} - -/* Apply TRANS to the buffer in PSTR. */ - -static void -re_string_translate_buffer (re_string_t *pstr) -{ - Idx buf_idx, end_idx; - end_idx = (pstr->bufs_len > pstr->len) ? pstr->len : pstr->bufs_len; - - for (buf_idx = pstr->valid_len; buf_idx < end_idx; ++buf_idx) - { - int ch = pstr->raw_mbs[pstr->raw_mbs_idx + buf_idx]; - pstr->mbs[buf_idx] = pstr->trans[ch]; - } - - pstr->valid_len = buf_idx; - pstr->valid_raw_len = buf_idx; -} - -/* This function re-construct the buffers. - Concretely, convert to wide character in case of pstr->mb_cur_max > 1, - convert to upper case in case of REG_ICASE, apply translation. */ - -static reg_errcode_t -__attribute_warn_unused_result__ -re_string_reconstruct (re_string_t *pstr, Idx idx, int eflags) -{ - Idx offset; - - if (__glibc_unlikely (pstr->raw_mbs_idx <= idx)) - offset = idx - pstr->raw_mbs_idx; - else - { - /* Reset buffer. */ -#ifdef RE_ENABLE_I18N - if (pstr->mb_cur_max > 1) - memset (&pstr->cur_state, '\0', sizeof (mbstate_t)); -#endif /* RE_ENABLE_I18N */ - pstr->len = pstr->raw_len; - pstr->stop = pstr->raw_stop; - pstr->valid_len = 0; - pstr->raw_mbs_idx = 0; - pstr->valid_raw_len = 0; - pstr->offsets_needed = 0; - pstr->tip_context = ((eflags & REG_NOTBOL) ? CONTEXT_BEGBUF - : CONTEXT_NEWLINE | CONTEXT_BEGBUF); - if (!pstr->mbs_allocated) - pstr->mbs = (unsigned char *) pstr->raw_mbs; - offset = idx; - } - - if (__glibc_likely (offset != 0)) - { - /* Should the already checked characters be kept? */ - if (__glibc_likely (offset < pstr->valid_raw_len)) - { - /* Yes, move them to the front of the buffer. */ -#ifdef RE_ENABLE_I18N - if (__glibc_unlikely (pstr->offsets_needed)) - { - Idx low = 0, high = pstr->valid_len, mid; - do - { - mid = (high + low) / 2; - if (pstr->offsets[mid] > offset) - high = mid; - else if (pstr->offsets[mid] < offset) - low = mid + 1; - else - break; - } - while (low < high); - if (pstr->offsets[mid] < offset) - ++mid; - pstr->tip_context = re_string_context_at (pstr, mid - 1, - eflags); - /* This can be quite complicated, so handle specially - only the common and easy case where the character with - different length representation of lower and upper - case is present at or after offset. */ - if (pstr->valid_len > offset - && mid == offset && pstr->offsets[mid] == offset) - { - memmove (pstr->wcs, pstr->wcs + offset, - (pstr->valid_len - offset) * sizeof (wint_t)); - memmove (pstr->mbs, pstr->mbs + offset, pstr->valid_len - offset); - pstr->valid_len -= offset; - pstr->valid_raw_len -= offset; - for (low = 0; low < pstr->valid_len; low++) - pstr->offsets[low] = pstr->offsets[low + offset] - offset; - } - else - { - /* Otherwise, just find out how long the partial multibyte - character at offset is and fill it with WEOF/255. */ - pstr->len = pstr->raw_len - idx + offset; - pstr->stop = pstr->raw_stop - idx + offset; - pstr->offsets_needed = 0; - while (mid > 0 && pstr->offsets[mid - 1] == offset) - --mid; - while (mid < pstr->valid_len) - if (pstr->wcs[mid] != WEOF) - break; - else - ++mid; - if (mid == pstr->valid_len) - pstr->valid_len = 0; - else - { - pstr->valid_len = pstr->offsets[mid] - offset; - if (pstr->valid_len) - { - for (low = 0; low < pstr->valid_len; ++low) - pstr->wcs[low] = WEOF; - memset (pstr->mbs, 255, pstr->valid_len); - } - } - pstr->valid_raw_len = pstr->valid_len; - } - } - else -#endif - { - pstr->tip_context = re_string_context_at (pstr, offset - 1, - eflags); -#ifdef RE_ENABLE_I18N - if (pstr->mb_cur_max > 1) - memmove (pstr->wcs, pstr->wcs + offset, - (pstr->valid_len - offset) * sizeof (wint_t)); -#endif /* RE_ENABLE_I18N */ - if (__glibc_unlikely (pstr->mbs_allocated)) - memmove (pstr->mbs, pstr->mbs + offset, - pstr->valid_len - offset); - pstr->valid_len -= offset; - pstr->valid_raw_len -= offset; -#if defined DEBUG && DEBUG - assert (pstr->valid_len > 0); -#endif - } - } - else - { -#ifdef RE_ENABLE_I18N - /* No, skip all characters until IDX. */ - Idx prev_valid_len = pstr->valid_len; - - if (__glibc_unlikely (pstr->offsets_needed)) - { - pstr->len = pstr->raw_len - idx + offset; - pstr->stop = pstr->raw_stop - idx + offset; - pstr->offsets_needed = 0; - } -#endif - pstr->valid_len = 0; -#ifdef RE_ENABLE_I18N - if (pstr->mb_cur_max > 1) - { - Idx wcs_idx; - wint_t wc = WEOF; - - if (pstr->is_utf8) - { - const unsigned char *raw, *p, *end; - - /* Special case UTF-8. Multi-byte chars start with any - byte other than 0x80 - 0xbf. */ - raw = pstr->raw_mbs + pstr->raw_mbs_idx; - end = raw + (offset - pstr->mb_cur_max); - if (end < pstr->raw_mbs) - end = pstr->raw_mbs; - p = raw + offset - 1; -#ifdef _LIBC - /* We know the wchar_t encoding is UCS4, so for the simple - case, ASCII characters, skip the conversion step. */ - if (isascii (*p) && __glibc_likely (pstr->trans == NULL)) - { - memset (&pstr->cur_state, '\0', sizeof (mbstate_t)); - /* pstr->valid_len = 0; */ - wc = (wchar_t) *p; - } - else -#endif - for (; p >= end; --p) - if ((*p & 0xc0) != 0x80) - { - mbstate_t cur_state; - wchar_t wc2; - Idx mlen = raw + pstr->len - p; - unsigned char buf[6]; - size_t mbclen; - - const unsigned char *pp = p; - if (__glibc_unlikely (pstr->trans != NULL)) - { - int i = mlen < 6 ? mlen : 6; - while (--i >= 0) - buf[i] = pstr->trans[p[i]]; - pp = buf; - } - /* XXX Don't use mbrtowc, we know which conversion - to use (UTF-8 -> UCS4). */ - memset (&cur_state, 0, sizeof (cur_state)); - mbclen = __mbrtowc (&wc2, (const char *) pp, mlen, - &cur_state); - if (raw + offset - p <= mbclen - && mbclen < (size_t) -2) - { - memset (&pstr->cur_state, '\0', - sizeof (mbstate_t)); - pstr->valid_len = mbclen - (raw + offset - p); - wc = wc2; - } - break; - } - } - - if (wc == WEOF) - pstr->valid_len = re_string_skip_chars (pstr, idx, &wc) - idx; - if (wc == WEOF) - pstr->tip_context - = re_string_context_at (pstr, prev_valid_len - 1, eflags); - else - pstr->tip_context = ((__glibc_unlikely (pstr->word_ops_used != 0) - && IS_WIDE_WORD_CHAR (wc)) - ? CONTEXT_WORD - : ((IS_WIDE_NEWLINE (wc) - && pstr->newline_anchor) - ? CONTEXT_NEWLINE : 0)); - if (__glibc_unlikely (pstr->valid_len)) - { - for (wcs_idx = 0; wcs_idx < pstr->valid_len; ++wcs_idx) - pstr->wcs[wcs_idx] = WEOF; - if (pstr->mbs_allocated) - memset (pstr->mbs, 255, pstr->valid_len); - } - pstr->valid_raw_len = pstr->valid_len; - } - else -#endif /* RE_ENABLE_I18N */ - { - int c = pstr->raw_mbs[pstr->raw_mbs_idx + offset - 1]; - pstr->valid_raw_len = 0; - if (pstr->trans) - c = pstr->trans[c]; - pstr->tip_context = (bitset_contain (pstr->word_char, c) - ? CONTEXT_WORD - : ((IS_NEWLINE (c) && pstr->newline_anchor) - ? CONTEXT_NEWLINE : 0)); - } - } - if (!__glibc_unlikely (pstr->mbs_allocated)) - pstr->mbs += offset; - } - pstr->raw_mbs_idx = idx; - pstr->len -= offset; - pstr->stop -= offset; - - /* Then build the buffers. */ -#ifdef RE_ENABLE_I18N - if (pstr->mb_cur_max > 1) - { - if (pstr->icase) - { - reg_errcode_t ret = build_wcs_upper_buffer (pstr); - if (__glibc_unlikely (ret != REG_NOERROR)) - return ret; - } - else - build_wcs_buffer (pstr); - } - else -#endif /* RE_ENABLE_I18N */ - if (__glibc_unlikely (pstr->mbs_allocated)) - { - if (pstr->icase) - build_upper_buffer (pstr); - else if (pstr->trans != NULL) - re_string_translate_buffer (pstr); - } - else - pstr->valid_len = pstr->len; - - pstr->cur_idx = 0; - return REG_NOERROR; -} - -static unsigned char -__attribute__ ((pure)) -re_string_peek_byte_case (const re_string_t *pstr, Idx idx) -{ - int ch; - Idx off; - - /* Handle the common (easiest) cases first. */ - if (__glibc_likely (!pstr->mbs_allocated)) - return re_string_peek_byte (pstr, idx); - -#ifdef RE_ENABLE_I18N - if (pstr->mb_cur_max > 1 - && ! re_string_is_single_byte_char (pstr, pstr->cur_idx + idx)) - return re_string_peek_byte (pstr, idx); -#endif - - off = pstr->cur_idx + idx; -#ifdef RE_ENABLE_I18N - if (pstr->offsets_needed) - off = pstr->offsets[off]; -#endif - - ch = pstr->raw_mbs[pstr->raw_mbs_idx + off]; - -#ifdef RE_ENABLE_I18N - /* Ensure that e.g. for tr_TR.UTF-8 BACKSLASH DOTLESS SMALL LETTER I - this function returns CAPITAL LETTER I instead of first byte of - DOTLESS SMALL LETTER I. The latter would confuse the parser, - since peek_byte_case doesn't advance cur_idx in any way. */ - if (pstr->offsets_needed && !isascii (ch)) - return re_string_peek_byte (pstr, idx); -#endif - - return ch; -} - -static unsigned char -re_string_fetch_byte_case (re_string_t *pstr) -{ - if (__glibc_likely (!pstr->mbs_allocated)) - return re_string_fetch_byte (pstr); - -#ifdef RE_ENABLE_I18N - if (pstr->offsets_needed) - { - Idx off; - int ch; - - /* For tr_TR.UTF-8 [[:islower:]] there is - [[: CAPITAL LETTER I WITH DOT lower:]] in mbs. Skip - in that case the whole multi-byte character and return - the original letter. On the other side, with - [[: DOTLESS SMALL LETTER I return [[:I, as doing - anything else would complicate things too much. */ - - if (!re_string_first_byte (pstr, pstr->cur_idx)) - return re_string_fetch_byte (pstr); - - off = pstr->offsets[pstr->cur_idx]; - ch = pstr->raw_mbs[pstr->raw_mbs_idx + off]; - - if (! isascii (ch)) - return re_string_fetch_byte (pstr); - - re_string_skip_bytes (pstr, - re_string_char_size_at (pstr, pstr->cur_idx)); - return ch; - } -#endif - - return pstr->raw_mbs[pstr->raw_mbs_idx + pstr->cur_idx++]; -} - -static void -re_string_destruct (re_string_t *pstr) -{ -#ifdef RE_ENABLE_I18N - re_free (pstr->wcs); - re_free (pstr->offsets); -#endif /* RE_ENABLE_I18N */ - if (pstr->mbs_allocated) - re_free (pstr->mbs); -} - -/* Return the context at IDX in INPUT. */ - -static unsigned int -re_string_context_at (const re_string_t *input, Idx idx, int eflags) -{ - int c; - if (__glibc_unlikely (idx < 0)) - /* In this case, we use the value stored in input->tip_context, - since we can't know the character in input->mbs[-1] here. */ - return input->tip_context; - if (__glibc_unlikely (idx == input->len)) - return ((eflags & REG_NOTEOL) ? CONTEXT_ENDBUF - : CONTEXT_NEWLINE | CONTEXT_ENDBUF); -#ifdef RE_ENABLE_I18N - if (input->mb_cur_max > 1) - { - wint_t wc; - Idx wc_idx = idx; - while(input->wcs[wc_idx] == WEOF) - { -#if defined DEBUG && DEBUG - /* It must not happen. */ - assert (wc_idx >= 0); -#endif - --wc_idx; - if (wc_idx < 0) - return input->tip_context; - } - wc = input->wcs[wc_idx]; - if (__glibc_unlikely (input->word_ops_used != 0) - && IS_WIDE_WORD_CHAR (wc)) - return CONTEXT_WORD; - return (IS_WIDE_NEWLINE (wc) && input->newline_anchor - ? CONTEXT_NEWLINE : 0); - } - else -#endif - { - c = re_string_byte_at (input, idx); - if (bitset_contain (input->word_char, c)) - return CONTEXT_WORD; - return IS_NEWLINE (c) && input->newline_anchor ? CONTEXT_NEWLINE : 0; - } -} - -/* Functions for set operation. */ - -static reg_errcode_t -__attribute_warn_unused_result__ -re_node_set_alloc (re_node_set *set, Idx size) -{ - set->alloc = size; - set->nelem = 0; - set->elems = re_malloc (Idx, size); - if (__glibc_unlikely (set->elems == NULL) - && (MALLOC_0_IS_NONNULL || size != 0)) - return REG_ESPACE; - return REG_NOERROR; -} - -static reg_errcode_t -__attribute_warn_unused_result__ -re_node_set_init_1 (re_node_set *set, Idx elem) -{ - set->alloc = 1; - set->nelem = 1; - set->elems = re_malloc (Idx, 1); - if (__glibc_unlikely (set->elems == NULL)) - { - set->alloc = set->nelem = 0; - return REG_ESPACE; - } - set->elems[0] = elem; - return REG_NOERROR; -} - -static reg_errcode_t -__attribute_warn_unused_result__ -re_node_set_init_2 (re_node_set *set, Idx elem1, Idx elem2) -{ - set->alloc = 2; - set->elems = re_malloc (Idx, 2); - if (__glibc_unlikely (set->elems == NULL)) - return REG_ESPACE; - if (elem1 == elem2) - { - set->nelem = 1; - set->elems[0] = elem1; - } - else - { - set->nelem = 2; - if (elem1 < elem2) - { - set->elems[0] = elem1; - set->elems[1] = elem2; - } - else - { - set->elems[0] = elem2; - set->elems[1] = elem1; - } - } - return REG_NOERROR; -} - -static reg_errcode_t -__attribute_warn_unused_result__ -re_node_set_init_copy (re_node_set *dest, const re_node_set *src) -{ - dest->nelem = src->nelem; - if (src->nelem > 0) - { - dest->alloc = dest->nelem; - dest->elems = re_malloc (Idx, dest->alloc); - if (__glibc_unlikely (dest->elems == NULL)) - { - dest->alloc = dest->nelem = 0; - return REG_ESPACE; - } - memcpy (dest->elems, src->elems, src->nelem * sizeof (Idx)); - } - else - re_node_set_init_empty (dest); - return REG_NOERROR; -} - -/* Calculate the intersection of the sets SRC1 and SRC2. And merge it to - DEST. Return value indicate the error code or REG_NOERROR if succeeded. - Note: We assume dest->elems is NULL, when dest->alloc is 0. */ - -static reg_errcode_t -__attribute_warn_unused_result__ -re_node_set_add_intersect (re_node_set *dest, const re_node_set *src1, - const re_node_set *src2) -{ - Idx i1, i2, is, id, delta, sbase; - if (src1->nelem == 0 || src2->nelem == 0) - return REG_NOERROR; - - /* We need dest->nelem + 2 * elems_in_intersection; this is a - conservative estimate. */ - if (src1->nelem + src2->nelem + dest->nelem > dest->alloc) - { - Idx new_alloc = src1->nelem + src2->nelem + dest->alloc; - Idx *new_elems = re_realloc (dest->elems, Idx, new_alloc); - if (__glibc_unlikely (new_elems == NULL)) - return REG_ESPACE; - dest->elems = new_elems; - dest->alloc = new_alloc; - } - - /* Find the items in the intersection of SRC1 and SRC2, and copy - into the top of DEST those that are not already in DEST itself. */ - sbase = dest->nelem + src1->nelem + src2->nelem; - i1 = src1->nelem - 1; - i2 = src2->nelem - 1; - id = dest->nelem - 1; - for (;;) - { - if (src1->elems[i1] == src2->elems[i2]) - { - /* Try to find the item in DEST. Maybe we could binary search? */ - while (id >= 0 && dest->elems[id] > src1->elems[i1]) - --id; - - if (id < 0 || dest->elems[id] != src1->elems[i1]) - dest->elems[--sbase] = src1->elems[i1]; - - if (--i1 < 0 || --i2 < 0) - break; - } - - /* Lower the highest of the two items. */ - else if (src1->elems[i1] < src2->elems[i2]) - { - if (--i2 < 0) - break; - } - else - { - if (--i1 < 0) - break; - } - } - - id = dest->nelem - 1; - is = dest->nelem + src1->nelem + src2->nelem - 1; - delta = is - sbase + 1; - - /* Now copy. When DELTA becomes zero, the remaining - DEST elements are already in place; this is more or - less the same loop that is in re_node_set_merge. */ - dest->nelem += delta; - if (delta > 0 && id >= 0) - for (;;) - { - if (dest->elems[is] > dest->elems[id]) - { - /* Copy from the top. */ - dest->elems[id + delta--] = dest->elems[is--]; - if (delta == 0) - break; - } - else - { - /* Slide from the bottom. */ - dest->elems[id + delta] = dest->elems[id]; - if (--id < 0) - break; - } - } - - /* Copy remaining SRC elements. */ - memcpy (dest->elems, dest->elems + sbase, delta * sizeof (Idx)); - - return REG_NOERROR; -} - -/* Calculate the union set of the sets SRC1 and SRC2. And store it to - DEST. Return value indicate the error code or REG_NOERROR if succeeded. */ - -static reg_errcode_t -__attribute_warn_unused_result__ -re_node_set_init_union (re_node_set *dest, const re_node_set *src1, - const re_node_set *src2) -{ - Idx i1, i2, id; - if (src1 != NULL && src1->nelem > 0 && src2 != NULL && src2->nelem > 0) - { - dest->alloc = src1->nelem + src2->nelem; - dest->elems = re_malloc (Idx, dest->alloc); - if (__glibc_unlikely (dest->elems == NULL)) - return REG_ESPACE; - } - else - { - if (src1 != NULL && src1->nelem > 0) - return re_node_set_init_copy (dest, src1); - else if (src2 != NULL && src2->nelem > 0) - return re_node_set_init_copy (dest, src2); - else - re_node_set_init_empty (dest); - return REG_NOERROR; - } - for (i1 = i2 = id = 0 ; i1 < src1->nelem && i2 < src2->nelem ;) - { - if (src1->elems[i1] > src2->elems[i2]) - { - dest->elems[id++] = src2->elems[i2++]; - continue; - } - if (src1->elems[i1] == src2->elems[i2]) - ++i2; - dest->elems[id++] = src1->elems[i1++]; - } - if (i1 < src1->nelem) - { - memcpy (dest->elems + id, src1->elems + i1, - (src1->nelem - i1) * sizeof (Idx)); - id += src1->nelem - i1; - } - else if (i2 < src2->nelem) - { - memcpy (dest->elems + id, src2->elems + i2, - (src2->nelem - i2) * sizeof (Idx)); - id += src2->nelem - i2; - } - dest->nelem = id; - return REG_NOERROR; -} - -/* Calculate the union set of the sets DEST and SRC. And store it to - DEST. Return value indicate the error code or REG_NOERROR if succeeded. */ - -static reg_errcode_t -__attribute_warn_unused_result__ -re_node_set_merge (re_node_set *dest, const re_node_set *src) -{ - Idx is, id, sbase, delta; - if (src == NULL || src->nelem == 0) - return REG_NOERROR; - if (dest->alloc < 2 * src->nelem + dest->nelem) - { - Idx new_alloc = 2 * (src->nelem + dest->alloc); - Idx *new_buffer = re_realloc (dest->elems, Idx, new_alloc); - if (__glibc_unlikely (new_buffer == NULL)) - return REG_ESPACE; - dest->elems = new_buffer; - dest->alloc = new_alloc; - } - - if (__glibc_unlikely (dest->nelem == 0)) - { - dest->nelem = src->nelem; - memcpy (dest->elems, src->elems, src->nelem * sizeof (Idx)); - return REG_NOERROR; - } - - /* Copy into the top of DEST the items of SRC that are not - found in DEST. Maybe we could binary search in DEST? */ - for (sbase = dest->nelem + 2 * src->nelem, - is = src->nelem - 1, id = dest->nelem - 1; is >= 0 && id >= 0; ) - { - if (dest->elems[id] == src->elems[is]) - is--, id--; - else if (dest->elems[id] < src->elems[is]) - dest->elems[--sbase] = src->elems[is--]; - else /* if (dest->elems[id] > src->elems[is]) */ - --id; - } - - if (is >= 0) - { - /* If DEST is exhausted, the remaining items of SRC must be unique. */ - sbase -= is + 1; - memcpy (dest->elems + sbase, src->elems, (is + 1) * sizeof (Idx)); - } - - id = dest->nelem - 1; - is = dest->nelem + 2 * src->nelem - 1; - delta = is - sbase + 1; - if (delta == 0) - return REG_NOERROR; - - /* Now copy. When DELTA becomes zero, the remaining - DEST elements are already in place. */ - dest->nelem += delta; - for (;;) - { - if (dest->elems[is] > dest->elems[id]) - { - /* Copy from the top. */ - dest->elems[id + delta--] = dest->elems[is--]; - if (delta == 0) - break; - } - else - { - /* Slide from the bottom. */ - dest->elems[id + delta] = dest->elems[id]; - if (--id < 0) - { - /* Copy remaining SRC elements. */ - memcpy (dest->elems, dest->elems + sbase, - delta * sizeof (Idx)); - break; - } - } - } - - return REG_NOERROR; -} - -/* Insert the new element ELEM to the re_node_set* SET. - SET should not already have ELEM. - Return true if successful. */ - -static bool -__attribute_warn_unused_result__ -re_node_set_insert (re_node_set *set, Idx elem) -{ - Idx idx; - /* In case the set is empty. */ - if (set->alloc == 0) - return __glibc_likely (re_node_set_init_1 (set, elem) == REG_NOERROR); - - if (__glibc_unlikely (set->nelem) == 0) - { - /* We already guaranteed above that set->alloc != 0. */ - set->elems[0] = elem; - ++set->nelem; - return true; - } - - /* Realloc if we need. */ - if (set->alloc == set->nelem) - { - Idx *new_elems; - set->alloc = set->alloc * 2; - new_elems = re_realloc (set->elems, Idx, set->alloc); - if (__glibc_unlikely (new_elems == NULL)) - return false; - set->elems = new_elems; - } - - /* Move the elements which follows the new element. Test the - first element separately to skip a check in the inner loop. */ - if (elem < set->elems[0]) - { - idx = 0; - for (idx = set->nelem; idx > 0; idx--) - set->elems[idx] = set->elems[idx - 1]; - } - else - { - for (idx = set->nelem; set->elems[idx - 1] > elem; idx--) - set->elems[idx] = set->elems[idx - 1]; - } - - /* Insert the new element. */ - set->elems[idx] = elem; - ++set->nelem; - return true; -} - -/* Insert the new element ELEM to the re_node_set* SET. - SET should not already have any element greater than or equal to ELEM. - Return true if successful. */ - -static bool -__attribute_warn_unused_result__ -re_node_set_insert_last (re_node_set *set, Idx elem) -{ - /* Realloc if we need. */ - if (set->alloc == set->nelem) - { - Idx *new_elems; - set->alloc = (set->alloc + 1) * 2; - new_elems = re_realloc (set->elems, Idx, set->alloc); - if (__glibc_unlikely (new_elems == NULL)) - return false; - set->elems = new_elems; - } - - /* Insert the new element. */ - set->elems[set->nelem++] = elem; - return true; -} - -/* Compare two node sets SET1 and SET2. - Return true if SET1 and SET2 are equivalent. */ - -static bool -__attribute__ ((pure)) -re_node_set_compare (const re_node_set *set1, const re_node_set *set2) -{ - Idx i; - if (set1 == NULL || set2 == NULL || set1->nelem != set2->nelem) - return false; - for (i = set1->nelem ; --i >= 0 ; ) - if (set1->elems[i] != set2->elems[i]) - return false; - return true; -} - -/* Return (idx + 1) if SET contains the element ELEM, return 0 otherwise. */ - -static Idx -__attribute__ ((pure)) -re_node_set_contains (const re_node_set *set, Idx elem) -{ - __re_size_t idx, right, mid; - if (set->nelem <= 0) - return 0; - - /* Binary search the element. */ - idx = 0; - right = set->nelem - 1; - while (idx < right) - { - mid = (idx + right) / 2; - if (set->elems[mid] < elem) - idx = mid + 1; - else - right = mid; - } - return set->elems[idx] == elem ? idx + 1 : 0; -} - -static void -re_node_set_remove_at (re_node_set *set, Idx idx) -{ - if (idx < 0 || idx >= set->nelem) - return; - --set->nelem; - for (; idx < set->nelem; idx++) - set->elems[idx] = set->elems[idx + 1]; -} - - -/* Add the token TOKEN to dfa->nodes, and return the index of the token. - Or return -1 if an error occurred. */ - -static Idx -re_dfa_add_node (re_dfa_t *dfa, re_token_t token) -{ - if (__glibc_unlikely (dfa->nodes_len >= dfa->nodes_alloc)) - { - size_t new_nodes_alloc = dfa->nodes_alloc * 2; - Idx *new_nexts, *new_indices; - re_node_set *new_edests, *new_eclosures; - re_token_t *new_nodes; - - /* Avoid overflows in realloc. */ - const size_t max_object_size = MAX (sizeof (re_token_t), - MAX (sizeof (re_node_set), - sizeof (Idx))); - if (__glibc_unlikely (MIN (IDX_MAX, SIZE_MAX / max_object_size) - < new_nodes_alloc)) - return -1; - - new_nodes = re_realloc (dfa->nodes, re_token_t, new_nodes_alloc); - if (__glibc_unlikely (new_nodes == NULL)) - return -1; - dfa->nodes = new_nodes; - new_nexts = re_realloc (dfa->nexts, Idx, new_nodes_alloc); - new_indices = re_realloc (dfa->org_indices, Idx, new_nodes_alloc); - new_edests = re_realloc (dfa->edests, re_node_set, new_nodes_alloc); - new_eclosures = re_realloc (dfa->eclosures, re_node_set, new_nodes_alloc); - if (__glibc_unlikely (new_nexts == NULL || new_indices == NULL - || new_edests == NULL || new_eclosures == NULL)) - { - re_free (new_nexts); - re_free (new_indices); - re_free (new_edests); - re_free (new_eclosures); - return -1; - } - dfa->nexts = new_nexts; - dfa->org_indices = new_indices; - dfa->edests = new_edests; - dfa->eclosures = new_eclosures; - dfa->nodes_alloc = new_nodes_alloc; - } - dfa->nodes[dfa->nodes_len] = token; - dfa->nodes[dfa->nodes_len].constraint = 0; -#ifdef RE_ENABLE_I18N - dfa->nodes[dfa->nodes_len].accept_mb = - ((token.type == OP_PERIOD && dfa->mb_cur_max > 1) - || token.type == COMPLEX_BRACKET); -#endif - dfa->nexts[dfa->nodes_len] = -1; - re_node_set_init_empty (dfa->edests + dfa->nodes_len); - re_node_set_init_empty (dfa->eclosures + dfa->nodes_len); - return dfa->nodes_len++; -} - -static re_hashval_t -calc_state_hash (const re_node_set *nodes, unsigned int context) -{ - re_hashval_t hash = nodes->nelem + context; - Idx i; - for (i = 0 ; i < nodes->nelem ; i++) - hash += nodes->elems[i]; - return hash; -} - -/* Search for the state whose node_set is equivalent to NODES. - Return the pointer to the state, if we found it in the DFA. - Otherwise create the new one and return it. In case of an error - return NULL and set the error code in ERR. - Note: - We assume NULL as the invalid state, then it is possible that - return value is NULL and ERR is REG_NOERROR. - - We never return non-NULL value in case of any errors, it is for - optimization. */ - -static re_dfastate_t * -__attribute_warn_unused_result__ -re_acquire_state (reg_errcode_t *err, const re_dfa_t *dfa, - const re_node_set *nodes) -{ - re_hashval_t hash; - re_dfastate_t *new_state; - struct re_state_table_entry *spot; - Idx i; -#if defined GCC_LINT || defined lint - /* Suppress bogus uninitialized-variable warnings. */ - *err = REG_NOERROR; -#endif - if (__glibc_unlikely (nodes->nelem == 0)) - { - *err = REG_NOERROR; - return NULL; - } - hash = calc_state_hash (nodes, 0); - spot = dfa->state_table + (hash & dfa->state_hash_mask); - - for (i = 0 ; i < spot->num ; i++) - { - re_dfastate_t *state = spot->array[i]; - if (hash != state->hash) - continue; - if (re_node_set_compare (&state->nodes, nodes)) - return state; - } - - /* There are no appropriate state in the dfa, create the new one. */ - new_state = create_ci_newstate (dfa, nodes, hash); - if (__glibc_unlikely (new_state == NULL)) - *err = REG_ESPACE; - - return new_state; -} - -/* Search for the state whose node_set is equivalent to NODES and - whose context is equivalent to CONTEXT. - Return the pointer to the state, if we found it in the DFA. - Otherwise create the new one and return it. In case of an error - return NULL and set the error code in ERR. - Note: - We assume NULL as the invalid state, then it is possible that - return value is NULL and ERR is REG_NOERROR. - - We never return non-NULL value in case of any errors, it is for - optimization. */ - -static re_dfastate_t * -__attribute_warn_unused_result__ -re_acquire_state_context (reg_errcode_t *err, const re_dfa_t *dfa, - const re_node_set *nodes, unsigned int context) -{ - re_hashval_t hash; - re_dfastate_t *new_state; - struct re_state_table_entry *spot; - Idx i; -#if defined GCC_LINT || defined lint - /* Suppress bogus uninitialized-variable warnings. */ - *err = REG_NOERROR; -#endif - if (nodes->nelem == 0) - { - *err = REG_NOERROR; - return NULL; - } - hash = calc_state_hash (nodes, context); - spot = dfa->state_table + (hash & dfa->state_hash_mask); - - for (i = 0 ; i < spot->num ; i++) - { - re_dfastate_t *state = spot->array[i]; - if (state->hash == hash - && state->context == context - && re_node_set_compare (state->entrance_nodes, nodes)) - return state; - } - /* There are no appropriate state in 'dfa', create the new one. */ - new_state = create_cd_newstate (dfa, nodes, context, hash); - if (__glibc_unlikely (new_state == NULL)) - *err = REG_ESPACE; - - return new_state; -} - -/* Finish initialization of the new state NEWSTATE, and using its hash value - HASH put in the appropriate bucket of DFA's state table. Return value - indicates the error code if failed. */ - -static reg_errcode_t -__attribute_warn_unused_result__ -register_state (const re_dfa_t *dfa, re_dfastate_t *newstate, - re_hashval_t hash) -{ - struct re_state_table_entry *spot; - reg_errcode_t err; - Idx i; - - newstate->hash = hash; - err = re_node_set_alloc (&newstate->non_eps_nodes, newstate->nodes.nelem); - if (__glibc_unlikely (err != REG_NOERROR)) - return REG_ESPACE; - for (i = 0; i < newstate->nodes.nelem; i++) - { - Idx elem = newstate->nodes.elems[i]; - if (!IS_EPSILON_NODE (dfa->nodes[elem].type)) - if (! re_node_set_insert_last (&newstate->non_eps_nodes, elem)) - return REG_ESPACE; - } - - spot = dfa->state_table + (hash & dfa->state_hash_mask); - if (__glibc_unlikely (spot->alloc <= spot->num)) - { - Idx new_alloc = 2 * spot->num + 2; - re_dfastate_t **new_array = re_realloc (spot->array, re_dfastate_t *, - new_alloc); - if (__glibc_unlikely (new_array == NULL)) - return REG_ESPACE; - spot->array = new_array; - spot->alloc = new_alloc; - } - spot->array[spot->num++] = newstate; - return REG_NOERROR; -} - -static void -free_state (re_dfastate_t *state) -{ - re_node_set_free (&state->non_eps_nodes); - re_node_set_free (&state->inveclosure); - if (state->entrance_nodes != &state->nodes) - { - re_node_set_free (state->entrance_nodes); - re_free (state->entrance_nodes); - } - re_node_set_free (&state->nodes); - re_free (state->word_trtable); - re_free (state->trtable); - re_free (state); -} - -/* Create the new state which is independent of contexts. - Return the new state if succeeded, otherwise return NULL. */ - -static re_dfastate_t * -__attribute_warn_unused_result__ -create_ci_newstate (const re_dfa_t *dfa, const re_node_set *nodes, - re_hashval_t hash) -{ - Idx i; - reg_errcode_t err; - re_dfastate_t *newstate; - - newstate = (re_dfastate_t *) calloc (sizeof (re_dfastate_t), 1); - if (__glibc_unlikely (newstate == NULL)) - return NULL; - err = re_node_set_init_copy (&newstate->nodes, nodes); - if (__glibc_unlikely (err != REG_NOERROR)) - { - re_free (newstate); - return NULL; - } - - newstate->entrance_nodes = &newstate->nodes; - for (i = 0 ; i < nodes->nelem ; i++) - { - re_token_t *node = dfa->nodes + nodes->elems[i]; - re_token_type_t type = node->type; - if (type == CHARACTER && !node->constraint) - continue; -#ifdef RE_ENABLE_I18N - newstate->accept_mb |= node->accept_mb; -#endif /* RE_ENABLE_I18N */ - - /* If the state has the halt node, the state is a halt state. */ - if (type == END_OF_RE) - newstate->halt = 1; - else if (type == OP_BACK_REF) - newstate->has_backref = 1; - else if (type == ANCHOR || node->constraint) - newstate->has_constraint = 1; - } - err = register_state (dfa, newstate, hash); - if (__glibc_unlikely (err != REG_NOERROR)) - { - free_state (newstate); - newstate = NULL; - } - return newstate; -} - -/* Create the new state which is depend on the context CONTEXT. - Return the new state if succeeded, otherwise return NULL. */ - -static re_dfastate_t * -__attribute_warn_unused_result__ -create_cd_newstate (const re_dfa_t *dfa, const re_node_set *nodes, - unsigned int context, re_hashval_t hash) -{ - Idx i, nctx_nodes = 0; - reg_errcode_t err; - re_dfastate_t *newstate; - - newstate = (re_dfastate_t *) calloc (sizeof (re_dfastate_t), 1); - if (__glibc_unlikely (newstate == NULL)) - return NULL; - err = re_node_set_init_copy (&newstate->nodes, nodes); - if (__glibc_unlikely (err != REG_NOERROR)) - { - re_free (newstate); - return NULL; - } - - newstate->context = context; - newstate->entrance_nodes = &newstate->nodes; - - for (i = 0 ; i < nodes->nelem ; i++) - { - re_token_t *node = dfa->nodes + nodes->elems[i]; - re_token_type_t type = node->type; - unsigned int constraint = node->constraint; - - if (type == CHARACTER && !constraint) - continue; -#ifdef RE_ENABLE_I18N - newstate->accept_mb |= node->accept_mb; -#endif /* RE_ENABLE_I18N */ - - /* If the state has the halt node, the state is a halt state. */ - if (type == END_OF_RE) - newstate->halt = 1; - else if (type == OP_BACK_REF) - newstate->has_backref = 1; - - if (constraint) - { - if (newstate->entrance_nodes == &newstate->nodes) - { - newstate->entrance_nodes = re_malloc (re_node_set, 1); - if (__glibc_unlikely (newstate->entrance_nodes == NULL)) - { - free_state (newstate); - return NULL; - } - if (re_node_set_init_copy (newstate->entrance_nodes, nodes) - != REG_NOERROR) - return NULL; - nctx_nodes = 0; - newstate->has_constraint = 1; - } - - if (NOT_SATISFY_PREV_CONSTRAINT (constraint,context)) - { - re_node_set_remove_at (&newstate->nodes, i - nctx_nodes); - ++nctx_nodes; - } - } - } - err = register_state (dfa, newstate, hash); - if (__glibc_unlikely (err != REG_NOERROR)) - { - free_state (newstate); - newstate = NULL; - } - return newstate; -} diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/regex_internal.h b/thirdparty/grub-2.04/grub-core/lib/gnulib/regex_internal.h deleted file mode 100644 index a3aedda89..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/regex_internal.h +++ /dev/null @@ -1,874 +0,0 @@ -/* Extended regular expression matching and search library. - Copyright (C) 2002-2019 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Isamu Hasegawa . - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU General Public - License as published by the Free Software Foundation; either - version 3 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - General Public License for more details. - - You should have received a copy of the GNU General Public - License along with the GNU C Library; if not, see - . */ - -#ifndef _REGEX_INTERNAL_H -#define _REGEX_INTERNAL_H 1 - -#include -#include -#include -#include -#include - -#include -#include -#include -#include -#include -#include - -#include - -#ifdef _LIBC -# include -# define lock_define(name) __libc_lock_define (, name) -# define lock_init(lock) (__libc_lock_init (lock), 0) -# define lock_fini(lock) ((void) 0) -# define lock_lock(lock) __libc_lock_lock (lock) -# define lock_unlock(lock) __libc_lock_unlock (lock) -#elif defined GNULIB_LOCK && !defined USE_UNLOCKED_IO -# include "glthread/lock.h" - /* Use gl_lock_define if empty macro arguments are known to work. - Otherwise, fall back on less-portable substitutes. */ -# if ((defined __GNUC__ && !defined __STRICT_ANSI__) \ - || (defined __STDC_VERSION__ && 199901L <= __STDC_VERSION__)) -# define lock_define(name) gl_lock_define (, name) -# elif USE_POSIX_THREADS -# define lock_define(name) pthread_mutex_t name; -# elif USE_PTH_THREADS -# define lock_define(name) pth_mutex_t name; -# elif USE_SOLARIS_THREADS -# define lock_define(name) mutex_t name; -# elif USE_WINDOWS_THREADS -# define lock_define(name) gl_lock_t name; -# else -# define lock_define(name) -# endif -# define lock_init(lock) glthread_lock_init (&(lock)) -# define lock_fini(lock) glthread_lock_destroy (&(lock)) -# define lock_lock(lock) glthread_lock_lock (&(lock)) -# define lock_unlock(lock) glthread_lock_unlock (&(lock)) -#elif defined GNULIB_PTHREAD && !defined USE_UNLOCKED_IO -# include -# define lock_define(name) pthread_mutex_t name; -# define lock_init(lock) pthread_mutex_init (&(lock), 0) -# define lock_fini(lock) pthread_mutex_destroy (&(lock)) -# define lock_lock(lock) pthread_mutex_lock (&(lock)) -# define lock_unlock(lock) pthread_mutex_unlock (&(lock)) -#else -# define lock_define(name) -# define lock_init(lock) 0 -# define lock_fini(lock) ((void) 0) - /* The 'dfa' avoids an "unused variable 'dfa'" warning from GCC. */ -# define lock_lock(lock) ((void) dfa) -# define lock_unlock(lock) ((void) 0) -#endif - -/* In case that the system doesn't have isblank(). */ -#if !defined _LIBC && ! (defined isblank || (HAVE_ISBLANK && HAVE_DECL_ISBLANK)) -# define isblank(ch) ((ch) == ' ' || (ch) == '\t') -#endif - -#ifdef _LIBC -# ifndef _RE_DEFINE_LOCALE_FUNCTIONS -# define _RE_DEFINE_LOCALE_FUNCTIONS 1 -# include -# include -# endif -#endif - -/* This is for other GNU distributions with internationalized messages. */ -#if (HAVE_LIBINTL_H && ENABLE_NLS) || defined _LIBC -# include -# ifdef _LIBC -# undef gettext -# define gettext(msgid) \ - __dcgettext (_libc_intl_domainname, msgid, LC_MESSAGES) -# endif -#else -# undef gettext -# define gettext(msgid) (msgid) -#endif - -#ifndef gettext_noop -/* This define is so xgettext can find the internationalizable - strings. */ -# define gettext_noop(String) String -#endif - -#if (defined MB_CUR_MAX && HAVE_WCTYPE_H && HAVE_ISWCTYPE) || _LIBC -# define RE_ENABLE_I18N -#endif - -/* Number of ASCII characters. */ -#define ASCII_CHARS 0x80 - -/* Number of single byte characters. */ -#define SBC_MAX (UCHAR_MAX + 1) - -#define COLL_ELEM_LEN_MAX 8 - -/* The character which represents newline. */ -#define NEWLINE_CHAR '\n' -#define WIDE_NEWLINE_CHAR L'\n' - -/* Rename to standard API for using out of glibc. */ -#ifndef _LIBC -# undef __wctype -# undef __iswalnum -# undef __iswctype -# undef __towlower -# undef __towupper -# define __wctype wctype -# define __iswalnum iswalnum -# define __iswctype iswctype -# define __towlower towlower -# define __towupper towupper -# define __btowc btowc -# define __mbrtowc mbrtowc -# define __wcrtomb wcrtomb -# define __regfree regfree -#endif /* not _LIBC */ - -#ifndef SSIZE_MAX -# define SSIZE_MAX ((ssize_t) (SIZE_MAX / 2)) -#endif - -/* The type of indexes into strings. This is signed, not size_t, - since the API requires indexes to fit in regoff_t anyway, and using - signed integers makes the code a bit smaller and presumably faster. - The traditional GNU regex implementation uses int for indexes. - The POSIX-compatible implementation uses a possibly-wider type. - The name 'Idx' is three letters to minimize the hassle of - reindenting a lot of regex code that formerly used 'int'. */ -typedef regoff_t Idx; -#ifdef _REGEX_LARGE_OFFSETS -# define IDX_MAX SSIZE_MAX -#else -# define IDX_MAX INT_MAX -#endif - -/* A hash value, suitable for computing hash tables. */ -typedef __re_size_t re_hashval_t; - -/* An integer used to represent a set of bits. It must be unsigned, - and must be at least as wide as unsigned int. */ -typedef unsigned long int bitset_word_t; -/* All bits set in a bitset_word_t. */ -#define BITSET_WORD_MAX ULONG_MAX - -/* Number of bits in a bitset_word_t. For portability to hosts with - padding bits, do not use '(sizeof (bitset_word_t) * CHAR_BIT)'; - instead, deduce it directly from BITSET_WORD_MAX. Avoid - greater-than-32-bit integers and unconditional shifts by more than - 31 bits, as they're not portable. */ -#if BITSET_WORD_MAX == 0xffffffffUL -# define BITSET_WORD_BITS 32 -#elif BITSET_WORD_MAX >> 31 >> 4 == 1 -# define BITSET_WORD_BITS 36 -#elif BITSET_WORD_MAX >> 31 >> 16 == 1 -# define BITSET_WORD_BITS 48 -#elif BITSET_WORD_MAX >> 31 >> 28 == 1 -# define BITSET_WORD_BITS 60 -#elif BITSET_WORD_MAX >> 31 >> 31 >> 1 == 1 -# define BITSET_WORD_BITS 64 -#elif BITSET_WORD_MAX >> 31 >> 31 >> 9 == 1 -# define BITSET_WORD_BITS 72 -#elif BITSET_WORD_MAX >> 31 >> 31 >> 31 >> 31 >> 3 == 1 -# define BITSET_WORD_BITS 128 -#elif BITSET_WORD_MAX >> 31 >> 31 >> 31 >> 31 >> 31 >> 31 >> 31 >> 31 >> 7 == 1 -# define BITSET_WORD_BITS 256 -#elif BITSET_WORD_MAX >> 31 >> 31 >> 31 >> 31 >> 31 >> 31 >> 31 >> 31 >> 7 > 1 -# define BITSET_WORD_BITS 257 /* any value > SBC_MAX will do here */ -# if BITSET_WORD_BITS <= SBC_MAX -# error "Invalid SBC_MAX" -# endif -#else -# error "Add case for new bitset_word_t size" -#endif - -/* Number of bitset_word_t values in a bitset_t. */ -#define BITSET_WORDS ((SBC_MAX + BITSET_WORD_BITS - 1) / BITSET_WORD_BITS) - -typedef bitset_word_t bitset_t[BITSET_WORDS]; -typedef bitset_word_t *re_bitset_ptr_t; -typedef const bitset_word_t *re_const_bitset_ptr_t; - -#define PREV_WORD_CONSTRAINT 0x0001 -#define PREV_NOTWORD_CONSTRAINT 0x0002 -#define NEXT_WORD_CONSTRAINT 0x0004 -#define NEXT_NOTWORD_CONSTRAINT 0x0008 -#define PREV_NEWLINE_CONSTRAINT 0x0010 -#define NEXT_NEWLINE_CONSTRAINT 0x0020 -#define PREV_BEGBUF_CONSTRAINT 0x0040 -#define NEXT_ENDBUF_CONSTRAINT 0x0080 -#define WORD_DELIM_CONSTRAINT 0x0100 -#define NOT_WORD_DELIM_CONSTRAINT 0x0200 - -typedef enum -{ - INSIDE_WORD = PREV_WORD_CONSTRAINT | NEXT_WORD_CONSTRAINT, - WORD_FIRST = PREV_NOTWORD_CONSTRAINT | NEXT_WORD_CONSTRAINT, - WORD_LAST = PREV_WORD_CONSTRAINT | NEXT_NOTWORD_CONSTRAINT, - INSIDE_NOTWORD = PREV_NOTWORD_CONSTRAINT | NEXT_NOTWORD_CONSTRAINT, - LINE_FIRST = PREV_NEWLINE_CONSTRAINT, - LINE_LAST = NEXT_NEWLINE_CONSTRAINT, - BUF_FIRST = PREV_BEGBUF_CONSTRAINT, - BUF_LAST = NEXT_ENDBUF_CONSTRAINT, - WORD_DELIM = WORD_DELIM_CONSTRAINT, - NOT_WORD_DELIM = NOT_WORD_DELIM_CONSTRAINT -} re_context_type; - -typedef struct -{ - Idx alloc; - Idx nelem; - Idx *elems; -} re_node_set; - -typedef enum -{ - NON_TYPE = 0, - - /* Node type, These are used by token, node, tree. */ - CHARACTER = 1, - END_OF_RE = 2, - SIMPLE_BRACKET = 3, - OP_BACK_REF = 4, - OP_PERIOD = 5, -#ifdef RE_ENABLE_I18N - COMPLEX_BRACKET = 6, - OP_UTF8_PERIOD = 7, -#endif /* RE_ENABLE_I18N */ - - /* We define EPSILON_BIT as a macro so that OP_OPEN_SUBEXP is used - when the debugger shows values of this enum type. */ -#define EPSILON_BIT 8 - OP_OPEN_SUBEXP = EPSILON_BIT | 0, - OP_CLOSE_SUBEXP = EPSILON_BIT | 1, - OP_ALT = EPSILON_BIT | 2, - OP_DUP_ASTERISK = EPSILON_BIT | 3, - ANCHOR = EPSILON_BIT | 4, - - /* Tree type, these are used only by tree. */ - CONCAT = 16, - SUBEXP = 17, - - /* Token type, these are used only by token. */ - OP_DUP_PLUS = 18, - OP_DUP_QUESTION, - OP_OPEN_BRACKET, - OP_CLOSE_BRACKET, - OP_CHARSET_RANGE, - OP_OPEN_DUP_NUM, - OP_CLOSE_DUP_NUM, - OP_NON_MATCH_LIST, - OP_OPEN_COLL_ELEM, - OP_CLOSE_COLL_ELEM, - OP_OPEN_EQUIV_CLASS, - OP_CLOSE_EQUIV_CLASS, - OP_OPEN_CHAR_CLASS, - OP_CLOSE_CHAR_CLASS, - OP_WORD, - OP_NOTWORD, - OP_SPACE, - OP_NOTSPACE, - BACK_SLASH - -} re_token_type_t; - -#ifdef RE_ENABLE_I18N -typedef struct -{ - /* Multibyte characters. */ - wchar_t *mbchars; - - /* Collating symbols. */ -# ifdef _LIBC - int32_t *coll_syms; -# endif - - /* Equivalence classes. */ -# ifdef _LIBC - int32_t *equiv_classes; -# endif - - /* Range expressions. */ -# ifdef _LIBC - uint32_t *range_starts; - uint32_t *range_ends; -# else /* not _LIBC */ - wchar_t *range_starts; - wchar_t *range_ends; -# endif /* not _LIBC */ - - /* Character classes. */ - wctype_t *char_classes; - - /* If this character set is the non-matching list. */ - unsigned int non_match : 1; - - /* # of multibyte characters. */ - Idx nmbchars; - - /* # of collating symbols. */ - Idx ncoll_syms; - - /* # of equivalence classes. */ - Idx nequiv_classes; - - /* # of range expressions. */ - Idx nranges; - - /* # of character classes. */ - Idx nchar_classes; -} re_charset_t; -#endif /* RE_ENABLE_I18N */ - -typedef struct -{ - union - { - unsigned char c; /* for CHARACTER */ - re_bitset_ptr_t sbcset; /* for SIMPLE_BRACKET */ -#ifdef RE_ENABLE_I18N - re_charset_t *mbcset; /* for COMPLEX_BRACKET */ -#endif /* RE_ENABLE_I18N */ - Idx idx; /* for BACK_REF */ - re_context_type ctx_type; /* for ANCHOR */ - } opr; -#if __GNUC__ >= 2 && !defined __STRICT_ANSI__ - re_token_type_t type : 8; -#else - re_token_type_t type; -#endif - unsigned int constraint : 10; /* context constraint */ - unsigned int duplicated : 1; - unsigned int opt_subexp : 1; -#ifdef RE_ENABLE_I18N - unsigned int accept_mb : 1; - /* These 2 bits can be moved into the union if needed (e.g. if running out - of bits; move opr.c to opr.c.c and move the flags to opr.c.flags). */ - unsigned int mb_partial : 1; -#endif - unsigned int word_char : 1; -} re_token_t; - -#define IS_EPSILON_NODE(type) ((type) & EPSILON_BIT) - -struct re_string_t -{ - /* Indicate the raw buffer which is the original string passed as an - argument of regexec(), re_search(), etc.. */ - const unsigned char *raw_mbs; - /* Store the multibyte string. In case of "case insensitive mode" like - REG_ICASE, upper cases of the string are stored, otherwise MBS points - the same address that RAW_MBS points. */ - unsigned char *mbs; -#ifdef RE_ENABLE_I18N - /* Store the wide character string which is corresponding to MBS. */ - wint_t *wcs; - Idx *offsets; - mbstate_t cur_state; -#endif - /* Index in RAW_MBS. Each character mbs[i] corresponds to - raw_mbs[raw_mbs_idx + i]. */ - Idx raw_mbs_idx; - /* The length of the valid characters in the buffers. */ - Idx valid_len; - /* The corresponding number of bytes in raw_mbs array. */ - Idx valid_raw_len; - /* The length of the buffers MBS and WCS. */ - Idx bufs_len; - /* The index in MBS, which is updated by re_string_fetch_byte. */ - Idx cur_idx; - /* length of RAW_MBS array. */ - Idx raw_len; - /* This is RAW_LEN - RAW_MBS_IDX + VALID_LEN - VALID_RAW_LEN. */ - Idx len; - /* End of the buffer may be shorter than its length in the cases such - as re_match_2, re_search_2. Then, we use STOP for end of the buffer - instead of LEN. */ - Idx raw_stop; - /* This is RAW_STOP - RAW_MBS_IDX adjusted through OFFSETS. */ - Idx stop; - - /* The context of mbs[0]. We store the context independently, since - the context of mbs[0] may be different from raw_mbs[0], which is - the beginning of the input string. */ - unsigned int tip_context; - /* The translation passed as a part of an argument of re_compile_pattern. */ - RE_TRANSLATE_TYPE trans; - /* Copy of re_dfa_t's word_char. */ - re_const_bitset_ptr_t word_char; - /* true if REG_ICASE. */ - unsigned char icase; - unsigned char is_utf8; - unsigned char map_notascii; - unsigned char mbs_allocated; - unsigned char offsets_needed; - unsigned char newline_anchor; - unsigned char word_ops_used; - int mb_cur_max; -}; -typedef struct re_string_t re_string_t; - - -struct re_dfa_t; -typedef struct re_dfa_t re_dfa_t; - -#ifndef _LIBC -# define IS_IN(libc) false -#endif - -#define re_string_peek_byte(pstr, offset) \ - ((pstr)->mbs[(pstr)->cur_idx + offset]) -#define re_string_fetch_byte(pstr) \ - ((pstr)->mbs[(pstr)->cur_idx++]) -#define re_string_first_byte(pstr, idx) \ - ((idx) == (pstr)->valid_len || (pstr)->wcs[idx] != WEOF) -#define re_string_is_single_byte_char(pstr, idx) \ - ((pstr)->wcs[idx] != WEOF && ((pstr)->valid_len == (idx) + 1 \ - || (pstr)->wcs[(idx) + 1] != WEOF)) -#define re_string_eoi(pstr) ((pstr)->stop <= (pstr)->cur_idx) -#define re_string_cur_idx(pstr) ((pstr)->cur_idx) -#define re_string_get_buffer(pstr) ((pstr)->mbs) -#define re_string_length(pstr) ((pstr)->len) -#define re_string_byte_at(pstr,idx) ((pstr)->mbs[idx]) -#define re_string_skip_bytes(pstr,idx) ((pstr)->cur_idx += (idx)) -#define re_string_set_index(pstr,idx) ((pstr)->cur_idx = (idx)) - -#if defined _LIBC || HAVE_ALLOCA -# include -#endif - -#ifndef _LIBC -# if HAVE_ALLOCA -/* The OS usually guarantees only one guard page at the bottom of the stack, - and a page size can be as small as 4096 bytes. So we cannot safely - allocate anything larger than 4096 bytes. Also care for the possibility - of a few compiler-allocated temporary stack slots. */ -# define __libc_use_alloca(n) ((n) < 4032) -# else -/* alloca is implemented with malloc, so just use malloc. */ -# define __libc_use_alloca(n) 0 -# undef alloca -# define alloca(n) malloc (n) -# endif -#endif - -#ifdef _LIBC -# define MALLOC_0_IS_NONNULL 1 -#elif !defined MALLOC_0_IS_NONNULL -# define MALLOC_0_IS_NONNULL 0 -#endif - -#ifndef MAX -# define MAX(a,b) ((a) < (b) ? (b) : (a)) -#endif -#ifndef MIN -# define MIN(a,b) ((a) < (b) ? (a) : (b)) -#endif - -#define re_malloc(t,n) ((t *) malloc ((n) * sizeof (t))) -#define re_realloc(p,t,n) ((t *) realloc (p, (n) * sizeof (t))) -#define re_free(p) free (p) - -struct bin_tree_t -{ - struct bin_tree_t *parent; - struct bin_tree_t *left; - struct bin_tree_t *right; - struct bin_tree_t *first; - struct bin_tree_t *next; - - re_token_t token; - - /* 'node_idx' is the index in dfa->nodes, if 'type' == 0. - Otherwise 'type' indicate the type of this node. */ - Idx node_idx; -}; -typedef struct bin_tree_t bin_tree_t; - -#define BIN_TREE_STORAGE_SIZE \ - ((1024 - sizeof (void *)) / sizeof (bin_tree_t)) - -struct bin_tree_storage_t -{ - struct bin_tree_storage_t *next; - bin_tree_t data[BIN_TREE_STORAGE_SIZE]; -}; -typedef struct bin_tree_storage_t bin_tree_storage_t; - -#define CONTEXT_WORD 1 -#define CONTEXT_NEWLINE (CONTEXT_WORD << 1) -#define CONTEXT_BEGBUF (CONTEXT_NEWLINE << 1) -#define CONTEXT_ENDBUF (CONTEXT_BEGBUF << 1) - -#define IS_WORD_CONTEXT(c) ((c) & CONTEXT_WORD) -#define IS_NEWLINE_CONTEXT(c) ((c) & CONTEXT_NEWLINE) -#define IS_BEGBUF_CONTEXT(c) ((c) & CONTEXT_BEGBUF) -#define IS_ENDBUF_CONTEXT(c) ((c) & CONTEXT_ENDBUF) -#define IS_ORDINARY_CONTEXT(c) ((c) == 0) - -#define IS_WORD_CHAR(ch) (isalnum (ch) || (ch) == '_') -#define IS_NEWLINE(ch) ((ch) == NEWLINE_CHAR) -#define IS_WIDE_WORD_CHAR(ch) (__iswalnum (ch) || (ch) == L'_') -#define IS_WIDE_NEWLINE(ch) ((ch) == WIDE_NEWLINE_CHAR) - -#define NOT_SATISFY_PREV_CONSTRAINT(constraint,context) \ - ((((constraint) & PREV_WORD_CONSTRAINT) && !IS_WORD_CONTEXT (context)) \ - || ((constraint & PREV_NOTWORD_CONSTRAINT) && IS_WORD_CONTEXT (context)) \ - || ((constraint & PREV_NEWLINE_CONSTRAINT) && !IS_NEWLINE_CONTEXT (context))\ - || ((constraint & PREV_BEGBUF_CONSTRAINT) && !IS_BEGBUF_CONTEXT (context))) - -#define NOT_SATISFY_NEXT_CONSTRAINT(constraint,context) \ - ((((constraint) & NEXT_WORD_CONSTRAINT) && !IS_WORD_CONTEXT (context)) \ - || (((constraint) & NEXT_NOTWORD_CONSTRAINT) && IS_WORD_CONTEXT (context)) \ - || (((constraint) & NEXT_NEWLINE_CONSTRAINT) && !IS_NEWLINE_CONTEXT (context)) \ - || (((constraint) & NEXT_ENDBUF_CONSTRAINT) && !IS_ENDBUF_CONTEXT (context))) - -struct re_dfastate_t -{ - re_hashval_t hash; - re_node_set nodes; - re_node_set non_eps_nodes; - re_node_set inveclosure; - re_node_set *entrance_nodes; - struct re_dfastate_t **trtable, **word_trtable; - unsigned int context : 4; - unsigned int halt : 1; - /* If this state can accept "multi byte". - Note that we refer to multibyte characters, and multi character - collating elements as "multi byte". */ - unsigned int accept_mb : 1; - /* If this state has backreference node(s). */ - unsigned int has_backref : 1; - unsigned int has_constraint : 1; -}; -typedef struct re_dfastate_t re_dfastate_t; - -struct re_state_table_entry -{ - Idx num; - Idx alloc; - re_dfastate_t **array; -}; - -/* Array type used in re_sub_match_last_t and re_sub_match_top_t. */ - -typedef struct -{ - Idx next_idx; - Idx alloc; - re_dfastate_t **array; -} state_array_t; - -/* Store information about the node NODE whose type is OP_CLOSE_SUBEXP. */ - -typedef struct -{ - Idx node; - Idx str_idx; /* The position NODE match at. */ - state_array_t path; -} re_sub_match_last_t; - -/* Store information about the node NODE whose type is OP_OPEN_SUBEXP. - And information about the node, whose type is OP_CLOSE_SUBEXP, - corresponding to NODE is stored in LASTS. */ - -typedef struct -{ - Idx str_idx; - Idx node; - state_array_t *path; - Idx alasts; /* Allocation size of LASTS. */ - Idx nlasts; /* The number of LASTS. */ - re_sub_match_last_t **lasts; -} re_sub_match_top_t; - -struct re_backref_cache_entry -{ - Idx node; - Idx str_idx; - Idx subexp_from; - Idx subexp_to; - char more; - char unused; - unsigned short int eps_reachable_subexps_map; -}; - -typedef struct -{ - /* The string object corresponding to the input string. */ - re_string_t input; -#if defined _LIBC || (defined __STDC_VERSION__ && __STDC_VERSION__ >= 199901L) - const re_dfa_t *const dfa; -#else - const re_dfa_t *dfa; -#endif - /* EFLAGS of the argument of regexec. */ - int eflags; - /* Where the matching ends. */ - Idx match_last; - Idx last_node; - /* The state log used by the matcher. */ - re_dfastate_t **state_log; - Idx state_log_top; - /* Back reference cache. */ - Idx nbkref_ents; - Idx abkref_ents; - struct re_backref_cache_entry *bkref_ents; - int max_mb_elem_len; - Idx nsub_tops; - Idx asub_tops; - re_sub_match_top_t **sub_tops; -} re_match_context_t; - -typedef struct -{ - re_dfastate_t **sifted_states; - re_dfastate_t **limited_states; - Idx last_node; - Idx last_str_idx; - re_node_set limits; -} re_sift_context_t; - -struct re_fail_stack_ent_t -{ - Idx idx; - Idx node; - regmatch_t *regs; - re_node_set eps_via_nodes; -}; - -struct re_fail_stack_t -{ - Idx num; - Idx alloc; - struct re_fail_stack_ent_t *stack; -}; - -struct re_dfa_t -{ - re_token_t *nodes; - size_t nodes_alloc; - size_t nodes_len; - Idx *nexts; - Idx *org_indices; - re_node_set *edests; - re_node_set *eclosures; - re_node_set *inveclosures; - struct re_state_table_entry *state_table; - re_dfastate_t *init_state; - re_dfastate_t *init_state_word; - re_dfastate_t *init_state_nl; - re_dfastate_t *init_state_begbuf; - bin_tree_t *str_tree; - bin_tree_storage_t *str_tree_storage; - re_bitset_ptr_t sb_char; - int str_tree_storage_idx; - - /* number of subexpressions 're_nsub' is in regex_t. */ - re_hashval_t state_hash_mask; - Idx init_node; - Idx nbackref; /* The number of backreference in this dfa. */ - - /* Bitmap expressing which backreference is used. */ - bitset_word_t used_bkref_map; - bitset_word_t completed_bkref_map; - - unsigned int has_plural_match : 1; - /* If this dfa has "multibyte node", which is a backreference or - a node which can accept multibyte character or multi character - collating element. */ - unsigned int has_mb_node : 1; - unsigned int is_utf8 : 1; - unsigned int map_notascii : 1; - unsigned int word_ops_used : 1; - int mb_cur_max; - bitset_t word_char; - reg_syntax_t syntax; - Idx *subexp_map; -#ifdef DEBUG - char* re_str; -#endif - lock_define (lock) -}; - -#define re_node_set_init_empty(set) memset (set, '\0', sizeof (re_node_set)) -#define re_node_set_remove(set,id) \ - (re_node_set_remove_at (set, re_node_set_contains (set, id) - 1)) -#define re_node_set_empty(p) ((p)->nelem = 0) -#define re_node_set_free(set) re_free ((set)->elems) - - -typedef enum -{ - SB_CHAR, - MB_CHAR, - EQUIV_CLASS, - COLL_SYM, - CHAR_CLASS -} bracket_elem_type; - -typedef struct -{ - bracket_elem_type type; - union - { - unsigned char ch; - unsigned char *name; - wchar_t wch; - } opr; -} bracket_elem_t; - - -/* Functions for bitset_t operation. */ - -static inline void -bitset_set (bitset_t set, Idx i) -{ - set[i / BITSET_WORD_BITS] |= (bitset_word_t) 1 << i % BITSET_WORD_BITS; -} - -static inline void -bitset_clear (bitset_t set, Idx i) -{ - set[i / BITSET_WORD_BITS] &= ~ ((bitset_word_t) 1 << i % BITSET_WORD_BITS); -} - -static inline bool -bitset_contain (const bitset_t set, Idx i) -{ - return (set[i / BITSET_WORD_BITS] >> i % BITSET_WORD_BITS) & 1; -} - -static inline void -bitset_empty (bitset_t set) -{ - memset (set, '\0', sizeof (bitset_t)); -} - -static inline void -bitset_set_all (bitset_t set) -{ - memset (set, -1, sizeof (bitset_word_t) * (SBC_MAX / BITSET_WORD_BITS)); - if (SBC_MAX % BITSET_WORD_BITS != 0) - set[BITSET_WORDS - 1] = - ((bitset_word_t) 1 << SBC_MAX % BITSET_WORD_BITS) - 1; -} - -static inline void -bitset_copy (bitset_t dest, const bitset_t src) -{ - memcpy (dest, src, sizeof (bitset_t)); -} - -static inline void -bitset_not (bitset_t set) -{ - int bitset_i; - for (bitset_i = 0; bitset_i < SBC_MAX / BITSET_WORD_BITS; ++bitset_i) - set[bitset_i] = ~set[bitset_i]; - if (SBC_MAX % BITSET_WORD_BITS != 0) - set[BITSET_WORDS - 1] = - ((((bitset_word_t) 1 << SBC_MAX % BITSET_WORD_BITS) - 1) - & ~set[BITSET_WORDS - 1]); -} - -static inline void -bitset_merge (bitset_t dest, const bitset_t src) -{ - int bitset_i; - for (bitset_i = 0; bitset_i < BITSET_WORDS; ++bitset_i) - dest[bitset_i] |= src[bitset_i]; -} - -static inline void -bitset_mask (bitset_t dest, const bitset_t src) -{ - int bitset_i; - for (bitset_i = 0; bitset_i < BITSET_WORDS; ++bitset_i) - dest[bitset_i] &= src[bitset_i]; -} - -#ifdef RE_ENABLE_I18N -/* Functions for re_string. */ -static int -__attribute__ ((pure, unused)) -re_string_char_size_at (const re_string_t *pstr, Idx idx) -{ - int byte_idx; - if (pstr->mb_cur_max == 1) - return 1; - for (byte_idx = 1; idx + byte_idx < pstr->valid_len; ++byte_idx) - if (pstr->wcs[idx + byte_idx] != WEOF) - break; - return byte_idx; -} - -static wint_t -__attribute__ ((pure, unused)) -re_string_wchar_at (const re_string_t *pstr, Idx idx) -{ - if (pstr->mb_cur_max == 1) - return (wint_t) pstr->mbs[idx]; - return (wint_t) pstr->wcs[idx]; -} - -# ifdef _LIBC -# include -# endif - -static int -__attribute__ ((pure, unused)) -re_string_elem_size_at (const re_string_t *pstr, Idx idx) -{ -# ifdef _LIBC - const unsigned char *p, *extra; - const int32_t *table, *indirect; - uint_fast32_t nrules = _NL_CURRENT_WORD (LC_COLLATE, _NL_COLLATE_NRULES); - - if (nrules != 0) - { - table = (const int32_t *) _NL_CURRENT (LC_COLLATE, _NL_COLLATE_TABLEMB); - extra = (const unsigned char *) - _NL_CURRENT (LC_COLLATE, _NL_COLLATE_EXTRAMB); - indirect = (const int32_t *) _NL_CURRENT (LC_COLLATE, - _NL_COLLATE_INDIRECTMB); - p = pstr->mbs + idx; - findidx (table, indirect, extra, &p, pstr->len - idx); - return p - pstr->mbs - idx; - } - else -# endif /* _LIBC */ - return 1; -} -#endif /* RE_ENABLE_I18N */ - -#ifndef FALLTHROUGH -# if __GNUC__ < 7 -# define FALLTHROUGH ((void) 0) -# else -# define FALLTHROUGH __attribute__ ((__fallthrough__)) -# endif -#endif - -#endif /* _REGEX_INTERNAL_H */ diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/regexec.c b/thirdparty/grub-2.04/grub-core/lib/gnulib/regexec.c deleted file mode 100644 index 21cf7915f..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/regexec.c +++ /dev/null @@ -1,4334 +0,0 @@ -/* Extended regular expression matching and search library. - Copyright (C) 2002-2019 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Isamu Hasegawa . - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU General Public - License as published by the Free Software Foundation; either - version 3 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - General Public License for more details. - - You should have received a copy of the GNU General Public - License along with the GNU C Library; if not, see - . */ - -static reg_errcode_t match_ctx_init (re_match_context_t *cache, int eflags, - Idx n); -static void match_ctx_clean (re_match_context_t *mctx); -static void match_ctx_free (re_match_context_t *cache); -static reg_errcode_t match_ctx_add_entry (re_match_context_t *cache, Idx node, - Idx str_idx, Idx from, Idx to); -static Idx search_cur_bkref_entry (const re_match_context_t *mctx, Idx str_idx); -static reg_errcode_t match_ctx_add_subtop (re_match_context_t *mctx, Idx node, - Idx str_idx); -static re_sub_match_last_t * match_ctx_add_sublast (re_sub_match_top_t *subtop, - Idx node, Idx str_idx); -static void sift_ctx_init (re_sift_context_t *sctx, re_dfastate_t **sifted_sts, - re_dfastate_t **limited_sts, Idx last_node, - Idx last_str_idx); -static reg_errcode_t re_search_internal (const regex_t *preg, - const char *string, Idx length, - Idx start, Idx last_start, Idx stop, - size_t nmatch, regmatch_t pmatch[], - int eflags); -static regoff_t re_search_2_stub (struct re_pattern_buffer *bufp, - const char *string1, Idx length1, - const char *string2, Idx length2, - Idx start, regoff_t range, - struct re_registers *regs, - Idx stop, bool ret_len); -static regoff_t re_search_stub (struct re_pattern_buffer *bufp, - const char *string, Idx length, Idx start, - regoff_t range, Idx stop, - struct re_registers *regs, - bool ret_len); -static unsigned re_copy_regs (struct re_registers *regs, regmatch_t *pmatch, - Idx nregs, int regs_allocated); -static reg_errcode_t prune_impossible_nodes (re_match_context_t *mctx); -static Idx check_matching (re_match_context_t *mctx, bool fl_longest_match, - Idx *p_match_first); -static Idx check_halt_state_context (const re_match_context_t *mctx, - const re_dfastate_t *state, Idx idx); -static void update_regs (const re_dfa_t *dfa, regmatch_t *pmatch, - regmatch_t *prev_idx_match, Idx cur_node, - Idx cur_idx, Idx nmatch); -static reg_errcode_t push_fail_stack (struct re_fail_stack_t *fs, - Idx str_idx, Idx dest_node, Idx nregs, - regmatch_t *regs, - re_node_set *eps_via_nodes); -static reg_errcode_t set_regs (const regex_t *preg, - const re_match_context_t *mctx, - size_t nmatch, regmatch_t *pmatch, - bool fl_backtrack); -static reg_errcode_t free_fail_stack_return (struct re_fail_stack_t *fs); - -#ifdef RE_ENABLE_I18N -static int sift_states_iter_mb (const re_match_context_t *mctx, - re_sift_context_t *sctx, - Idx node_idx, Idx str_idx, Idx max_str_idx); -#endif /* RE_ENABLE_I18N */ -static reg_errcode_t sift_states_backward (const re_match_context_t *mctx, - re_sift_context_t *sctx); -static reg_errcode_t build_sifted_states (const re_match_context_t *mctx, - re_sift_context_t *sctx, Idx str_idx, - re_node_set *cur_dest); -static reg_errcode_t update_cur_sifted_state (const re_match_context_t *mctx, - re_sift_context_t *sctx, - Idx str_idx, - re_node_set *dest_nodes); -static reg_errcode_t add_epsilon_src_nodes (const re_dfa_t *dfa, - re_node_set *dest_nodes, - const re_node_set *candidates); -static bool check_dst_limits (const re_match_context_t *mctx, - const re_node_set *limits, - Idx dst_node, Idx dst_idx, Idx src_node, - Idx src_idx); -static int check_dst_limits_calc_pos_1 (const re_match_context_t *mctx, - int boundaries, Idx subexp_idx, - Idx from_node, Idx bkref_idx); -static int check_dst_limits_calc_pos (const re_match_context_t *mctx, - Idx limit, Idx subexp_idx, - Idx node, Idx str_idx, - Idx bkref_idx); -static reg_errcode_t check_subexp_limits (const re_dfa_t *dfa, - re_node_set *dest_nodes, - const re_node_set *candidates, - re_node_set *limits, - struct re_backref_cache_entry *bkref_ents, - Idx str_idx); -static reg_errcode_t sift_states_bkref (const re_match_context_t *mctx, - re_sift_context_t *sctx, - Idx str_idx, const re_node_set *candidates); -static reg_errcode_t merge_state_array (const re_dfa_t *dfa, - re_dfastate_t **dst, - re_dfastate_t **src, Idx num); -static re_dfastate_t *find_recover_state (reg_errcode_t *err, - re_match_context_t *mctx); -static re_dfastate_t *transit_state (reg_errcode_t *err, - re_match_context_t *mctx, - re_dfastate_t *state); -static re_dfastate_t *merge_state_with_log (reg_errcode_t *err, - re_match_context_t *mctx, - re_dfastate_t *next_state); -static reg_errcode_t check_subexp_matching_top (re_match_context_t *mctx, - re_node_set *cur_nodes, - Idx str_idx); -#if 0 -static re_dfastate_t *transit_state_sb (reg_errcode_t *err, - re_match_context_t *mctx, - re_dfastate_t *pstate); -#endif -#ifdef RE_ENABLE_I18N -static reg_errcode_t transit_state_mb (re_match_context_t *mctx, - re_dfastate_t *pstate); -#endif /* RE_ENABLE_I18N */ -static reg_errcode_t transit_state_bkref (re_match_context_t *mctx, - const re_node_set *nodes); -static reg_errcode_t get_subexp (re_match_context_t *mctx, - Idx bkref_node, Idx bkref_str_idx); -static reg_errcode_t get_subexp_sub (re_match_context_t *mctx, - const re_sub_match_top_t *sub_top, - re_sub_match_last_t *sub_last, - Idx bkref_node, Idx bkref_str); -static Idx find_subexp_node (const re_dfa_t *dfa, const re_node_set *nodes, - Idx subexp_idx, int type); -static reg_errcode_t check_arrival (re_match_context_t *mctx, - state_array_t *path, Idx top_node, - Idx top_str, Idx last_node, Idx last_str, - int type); -static reg_errcode_t check_arrival_add_next_nodes (re_match_context_t *mctx, - Idx str_idx, - re_node_set *cur_nodes, - re_node_set *next_nodes); -static reg_errcode_t check_arrival_expand_ecl (const re_dfa_t *dfa, - re_node_set *cur_nodes, - Idx ex_subexp, int type); -static reg_errcode_t check_arrival_expand_ecl_sub (const re_dfa_t *dfa, - re_node_set *dst_nodes, - Idx target, Idx ex_subexp, - int type); -static reg_errcode_t expand_bkref_cache (re_match_context_t *mctx, - re_node_set *cur_nodes, Idx cur_str, - Idx subexp_num, int type); -static bool build_trtable (const re_dfa_t *dfa, re_dfastate_t *state); -#ifdef RE_ENABLE_I18N -static int check_node_accept_bytes (const re_dfa_t *dfa, Idx node_idx, - const re_string_t *input, Idx idx); -# ifdef _LIBC -static unsigned int find_collation_sequence_value (const unsigned char *mbs, - size_t name_len); -# endif /* _LIBC */ -#endif /* RE_ENABLE_I18N */ -static Idx group_nodes_into_DFAstates (const re_dfa_t *dfa, - const re_dfastate_t *state, - re_node_set *states_node, - bitset_t *states_ch); -static bool check_node_accept (const re_match_context_t *mctx, - const re_token_t *node, Idx idx); -static reg_errcode_t extend_buffers (re_match_context_t *mctx, int min_len); - -/* Entry point for POSIX code. */ - -/* regexec searches for a given pattern, specified by PREG, in the - string STRING. - - If NMATCH is zero or REG_NOSUB was set in the cflags argument to - 'regcomp', we ignore PMATCH. Otherwise, we assume PMATCH has at - least NMATCH elements, and we set them to the offsets of the - corresponding matched substrings. - - EFLAGS specifies "execution flags" which affect matching: if - REG_NOTBOL is set, then ^ does not match at the beginning of the - string; if REG_NOTEOL is set, then $ does not match at the end. - - We return 0 if we find a match and REG_NOMATCH if not. */ - -int -regexec (const regex_t *__restrict preg, const char *__restrict string, - size_t nmatch, regmatch_t pmatch[], int eflags) -{ - reg_errcode_t err; - Idx start, length; - re_dfa_t *dfa = preg->buffer; - - if (eflags & ~(REG_NOTBOL | REG_NOTEOL | REG_STARTEND)) - return REG_BADPAT; - - if (eflags & REG_STARTEND) - { - start = pmatch[0].rm_so; - length = pmatch[0].rm_eo; - } - else - { - start = 0; - length = strlen (string); - } - - lock_lock (dfa->lock); - if (preg->no_sub) - err = re_search_internal (preg, string, length, start, length, - length, 0, NULL, eflags); - else - err = re_search_internal (preg, string, length, start, length, - length, nmatch, pmatch, eflags); - lock_unlock (dfa->lock); - return err != REG_NOERROR; -} - -#ifdef _LIBC -libc_hidden_def (__regexec) - -# include -versioned_symbol (libc, __regexec, regexec, GLIBC_2_3_4); - -# if SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_3_4) -__typeof__ (__regexec) __compat_regexec; - -int -attribute_compat_text_section -__compat_regexec (const regex_t *__restrict preg, - const char *__restrict string, size_t nmatch, - regmatch_t pmatch[], int eflags) -{ - return regexec (preg, string, nmatch, pmatch, - eflags & (REG_NOTBOL | REG_NOTEOL)); -} -compat_symbol (libc, __compat_regexec, regexec, GLIBC_2_0); -# endif -#endif - -/* Entry points for GNU code. */ - -/* re_match, re_search, re_match_2, re_search_2 - - The former two functions operate on STRING with length LENGTH, - while the later two operate on concatenation of STRING1 and STRING2 - with lengths LENGTH1 and LENGTH2, respectively. - - re_match() matches the compiled pattern in BUFP against the string, - starting at index START. - - re_search() first tries matching at index START, then it tries to match - starting from index START + 1, and so on. The last start position tried - is START + RANGE. (Thus RANGE = 0 forces re_search to operate the same - way as re_match().) - - The parameter STOP of re_{match,search}_2 specifies that no match exceeding - the first STOP characters of the concatenation of the strings should be - concerned. - - If REGS is not NULL, and BUFP->no_sub is not set, the offsets of the match - and all groups is stored in REGS. (For the "_2" variants, the offsets are - computed relative to the concatenation, not relative to the individual - strings.) - - On success, re_match* functions return the length of the match, re_search* - return the position of the start of the match. Return value -1 means no - match was found and -2 indicates an internal error. */ - -regoff_t -re_match (struct re_pattern_buffer *bufp, const char *string, Idx length, - Idx start, struct re_registers *regs) -{ - return re_search_stub (bufp, string, length, start, 0, length, regs, true); -} -#ifdef _LIBC -weak_alias (__re_match, re_match) -#endif - -regoff_t -re_search (struct re_pattern_buffer *bufp, const char *string, Idx length, - Idx start, regoff_t range, struct re_registers *regs) -{ - return re_search_stub (bufp, string, length, start, range, length, regs, - false); -} -#ifdef _LIBC -weak_alias (__re_search, re_search) -#endif - -regoff_t -re_match_2 (struct re_pattern_buffer *bufp, const char *string1, Idx length1, - const char *string2, Idx length2, Idx start, - struct re_registers *regs, Idx stop) -{ - return re_search_2_stub (bufp, string1, length1, string2, length2, - start, 0, regs, stop, true); -} -#ifdef _LIBC -weak_alias (__re_match_2, re_match_2) -#endif - -regoff_t -re_search_2 (struct re_pattern_buffer *bufp, const char *string1, Idx length1, - const char *string2, Idx length2, Idx start, regoff_t range, - struct re_registers *regs, Idx stop) -{ - return re_search_2_stub (bufp, string1, length1, string2, length2, - start, range, regs, stop, false); -} -#ifdef _LIBC -weak_alias (__re_search_2, re_search_2) -#endif - -static regoff_t -re_search_2_stub (struct re_pattern_buffer *bufp, const char *string1, - Idx length1, const char *string2, Idx length2, Idx start, - regoff_t range, struct re_registers *regs, - Idx stop, bool ret_len) -{ - const char *str; - regoff_t rval; - Idx len; - char *s = NULL; - - if (__glibc_unlikely ((length1 < 0 || length2 < 0 || stop < 0 - || INT_ADD_WRAPV (length1, length2, &len)))) - return -2; - - /* Concatenate the strings. */ - if (length2 > 0) - if (length1 > 0) - { - s = re_malloc (char, len); - - if (__glibc_unlikely (s == NULL)) - return -2; -#ifdef _LIBC - memcpy (__mempcpy (s, string1, length1), string2, length2); -#else - memcpy (s, string1, length1); - memcpy (s + length1, string2, length2); -#endif - str = s; - } - else - str = string2; - else - str = string1; - - rval = re_search_stub (bufp, str, len, start, range, stop, regs, - ret_len); - re_free (s); - return rval; -} - -/* The parameters have the same meaning as those of re_search. - Additional parameters: - If RET_LEN is true the length of the match is returned (re_match style); - otherwise the position of the match is returned. */ - -static regoff_t -re_search_stub (struct re_pattern_buffer *bufp, const char *string, Idx length, - Idx start, regoff_t range, Idx stop, struct re_registers *regs, - bool ret_len) -{ - reg_errcode_t result; - regmatch_t *pmatch; - Idx nregs; - regoff_t rval; - int eflags = 0; - re_dfa_t *dfa = bufp->buffer; - Idx last_start = start + range; - - /* Check for out-of-range. */ - if (__glibc_unlikely (start < 0 || start > length)) - return -1; - if (__glibc_unlikely (length < last_start - || (0 <= range && last_start < start))) - last_start = length; - else if (__glibc_unlikely (last_start < 0 - || (range < 0 && start <= last_start))) - last_start = 0; - - lock_lock (dfa->lock); - - eflags |= (bufp->not_bol) ? REG_NOTBOL : 0; - eflags |= (bufp->not_eol) ? REG_NOTEOL : 0; - - /* Compile fastmap if we haven't yet. */ - if (start < last_start && bufp->fastmap != NULL && !bufp->fastmap_accurate) - re_compile_fastmap (bufp); - - if (__glibc_unlikely (bufp->no_sub)) - regs = NULL; - - /* We need at least 1 register. */ - if (regs == NULL) - nregs = 1; - else if (__glibc_unlikely (bufp->regs_allocated == REGS_FIXED - && regs->num_regs <= bufp->re_nsub)) - { - nregs = regs->num_regs; - if (__glibc_unlikely (nregs < 1)) - { - /* Nothing can be copied to regs. */ - regs = NULL; - nregs = 1; - } - } - else - nregs = bufp->re_nsub + 1; - pmatch = re_malloc (regmatch_t, nregs); - if (__glibc_unlikely (pmatch == NULL)) - { - rval = -2; - goto out; - } - - result = re_search_internal (bufp, string, length, start, last_start, stop, - nregs, pmatch, eflags); - - rval = 0; - - /* I hope we needn't fill their regs with -1's when no match was found. */ - if (result != REG_NOERROR) - rval = result == REG_NOMATCH ? -1 : -2; - else if (regs != NULL) - { - /* If caller wants register contents data back, copy them. */ - bufp->regs_allocated = re_copy_regs (regs, pmatch, nregs, - bufp->regs_allocated); - if (__glibc_unlikely (bufp->regs_allocated == REGS_UNALLOCATED)) - rval = -2; - } - - if (__glibc_likely (rval == 0)) - { - if (ret_len) - { - assert (pmatch[0].rm_so == start); - rval = pmatch[0].rm_eo - start; - } - else - rval = pmatch[0].rm_so; - } - re_free (pmatch); - out: - lock_unlock (dfa->lock); - return rval; -} - -static unsigned -re_copy_regs (struct re_registers *regs, regmatch_t *pmatch, Idx nregs, - int regs_allocated) -{ - int rval = REGS_REALLOCATE; - Idx i; - Idx need_regs = nregs + 1; - /* We need one extra element beyond 'num_regs' for the '-1' marker GNU code - uses. */ - - /* Have the register data arrays been allocated? */ - if (regs_allocated == REGS_UNALLOCATED) - { /* No. So allocate them with malloc. */ - regs->start = re_malloc (regoff_t, need_regs); - if (__glibc_unlikely (regs->start == NULL)) - return REGS_UNALLOCATED; - regs->end = re_malloc (regoff_t, need_regs); - if (__glibc_unlikely (regs->end == NULL)) - { - re_free (regs->start); - return REGS_UNALLOCATED; - } - regs->num_regs = need_regs; - } - else if (regs_allocated == REGS_REALLOCATE) - { /* Yes. If we need more elements than were already - allocated, reallocate them. If we need fewer, just - leave it alone. */ - if (__glibc_unlikely (need_regs > regs->num_regs)) - { - regoff_t *new_start = re_realloc (regs->start, regoff_t, need_regs); - regoff_t *new_end; - if (__glibc_unlikely (new_start == NULL)) - return REGS_UNALLOCATED; - new_end = re_realloc (regs->end, regoff_t, need_regs); - if (__glibc_unlikely (new_end == NULL)) - { - re_free (new_start); - return REGS_UNALLOCATED; - } - regs->start = new_start; - regs->end = new_end; - regs->num_regs = need_regs; - } - } - else - { - assert (regs_allocated == REGS_FIXED); - /* This function may not be called with REGS_FIXED and nregs too big. */ - assert (regs->num_regs >= nregs); - rval = REGS_FIXED; - } - - /* Copy the regs. */ - for (i = 0; i < nregs; ++i) - { - regs->start[i] = pmatch[i].rm_so; - regs->end[i] = pmatch[i].rm_eo; - } - for ( ; i < regs->num_regs; ++i) - regs->start[i] = regs->end[i] = -1; - - return rval; -} - -/* Set REGS to hold NUM_REGS registers, storing them in STARTS and - ENDS. Subsequent matches using PATTERN_BUFFER and REGS will use - this memory for recording register information. STARTS and ENDS - must be allocated using the malloc library routine, and must each - be at least NUM_REGS * sizeof (regoff_t) bytes long. - - If NUM_REGS == 0, then subsequent matches should allocate their own - register data. - - Unless this function is called, the first search or match using - PATTERN_BUFFER will allocate its own register data, without - freeing the old data. */ - -void -re_set_registers (struct re_pattern_buffer *bufp, struct re_registers *regs, - __re_size_t num_regs, regoff_t *starts, regoff_t *ends) -{ - if (num_regs) - { - bufp->regs_allocated = REGS_REALLOCATE; - regs->num_regs = num_regs; - regs->start = starts; - regs->end = ends; - } - else - { - bufp->regs_allocated = REGS_UNALLOCATED; - regs->num_regs = 0; - regs->start = regs->end = NULL; - } -} -#ifdef _LIBC -weak_alias (__re_set_registers, re_set_registers) -#endif - -/* Entry points compatible with 4.2 BSD regex library. We don't define - them unless specifically requested. */ - -#if defined _REGEX_RE_COMP || defined _LIBC -int -# ifdef _LIBC -weak_function -# endif -re_exec (const char *s) -{ - return 0 == regexec (&re_comp_buf, s, 0, NULL, 0); -} -#endif /* _REGEX_RE_COMP */ - -/* Internal entry point. */ - -/* Searches for a compiled pattern PREG in the string STRING, whose - length is LENGTH. NMATCH, PMATCH, and EFLAGS have the same - meaning as with regexec. LAST_START is START + RANGE, where - START and RANGE have the same meaning as with re_search. - Return REG_NOERROR if we find a match, and REG_NOMATCH if not, - otherwise return the error code. - Note: We assume front end functions already check ranges. - (0 <= LAST_START && LAST_START <= LENGTH) */ - -static reg_errcode_t -__attribute_warn_unused_result__ -re_search_internal (const regex_t *preg, const char *string, Idx length, - Idx start, Idx last_start, Idx stop, size_t nmatch, - regmatch_t pmatch[], int eflags) -{ - reg_errcode_t err; - const re_dfa_t *dfa = preg->buffer; - Idx left_lim, right_lim; - int incr; - bool fl_longest_match; - int match_kind; - Idx match_first; - Idx match_last = -1; - Idx extra_nmatch; - bool sb; - int ch; -#if defined _LIBC || (defined __STDC_VERSION__ && __STDC_VERSION__ >= 199901L) - re_match_context_t mctx = { .dfa = dfa }; -#else - re_match_context_t mctx; -#endif - char *fastmap = ((preg->fastmap != NULL && preg->fastmap_accurate - && start != last_start && !preg->can_be_null) - ? preg->fastmap : NULL); - RE_TRANSLATE_TYPE t = preg->translate; - -#if !(defined _LIBC || (defined __STDC_VERSION__ && __STDC_VERSION__ >= 199901L)) - memset (&mctx, '\0', sizeof (re_match_context_t)); - mctx.dfa = dfa; -#endif - - extra_nmatch = (nmatch > preg->re_nsub) ? nmatch - (preg->re_nsub + 1) : 0; - nmatch -= extra_nmatch; - - /* Check if the DFA haven't been compiled. */ - if (__glibc_unlikely (preg->used == 0 || dfa->init_state == NULL - || dfa->init_state_word == NULL - || dfa->init_state_nl == NULL - || dfa->init_state_begbuf == NULL)) - return REG_NOMATCH; - -#ifdef DEBUG - /* We assume front-end functions already check them. */ - assert (0 <= last_start && last_start <= length); -#endif - - /* If initial states with non-begbuf contexts have no elements, - the regex must be anchored. If preg->newline_anchor is set, - we'll never use init_state_nl, so do not check it. */ - if (dfa->init_state->nodes.nelem == 0 - && dfa->init_state_word->nodes.nelem == 0 - && (dfa->init_state_nl->nodes.nelem == 0 - || !preg->newline_anchor)) - { - if (start != 0 && last_start != 0) - return REG_NOMATCH; - start = last_start = 0; - } - - /* We must check the longest matching, if nmatch > 0. */ - fl_longest_match = (nmatch != 0 || dfa->nbackref); - - err = re_string_allocate (&mctx.input, string, length, dfa->nodes_len + 1, - preg->translate, (preg->syntax & RE_ICASE) != 0, - dfa); - if (__glibc_unlikely (err != REG_NOERROR)) - goto free_return; - mctx.input.stop = stop; - mctx.input.raw_stop = stop; - mctx.input.newline_anchor = preg->newline_anchor; - - err = match_ctx_init (&mctx, eflags, dfa->nbackref * 2); - if (__glibc_unlikely (err != REG_NOERROR)) - goto free_return; - - /* We will log all the DFA states through which the dfa pass, - if nmatch > 1, or this dfa has "multibyte node", which is a - back-reference or a node which can accept multibyte character or - multi character collating element. */ - if (nmatch > 1 || dfa->has_mb_node) - { - /* Avoid overflow. */ - if (__glibc_unlikely ((MIN (IDX_MAX, SIZE_MAX / sizeof (re_dfastate_t *)) - <= mctx.input.bufs_len))) - { - err = REG_ESPACE; - goto free_return; - } - - mctx.state_log = re_malloc (re_dfastate_t *, mctx.input.bufs_len + 1); - if (__glibc_unlikely (mctx.state_log == NULL)) - { - err = REG_ESPACE; - goto free_return; - } - } - else - mctx.state_log = NULL; - - match_first = start; - mctx.input.tip_context = (eflags & REG_NOTBOL) ? CONTEXT_BEGBUF - : CONTEXT_NEWLINE | CONTEXT_BEGBUF; - - /* Check incrementally whether the input string matches. */ - incr = (last_start < start) ? -1 : 1; - left_lim = (last_start < start) ? last_start : start; - right_lim = (last_start < start) ? start : last_start; - sb = dfa->mb_cur_max == 1; - match_kind = - (fastmap - ? ((sb || !(preg->syntax & RE_ICASE || t) ? 4 : 0) - | (start <= last_start ? 2 : 0) - | (t != NULL ? 1 : 0)) - : 8); - - for (;; match_first += incr) - { - err = REG_NOMATCH; - if (match_first < left_lim || right_lim < match_first) - goto free_return; - - /* Advance as rapidly as possible through the string, until we - find a plausible place to start matching. This may be done - with varying efficiency, so there are various possibilities: - only the most common of them are specialized, in order to - save on code size. We use a switch statement for speed. */ - switch (match_kind) - { - case 8: - /* No fastmap. */ - break; - - case 7: - /* Fastmap with single-byte translation, match forward. */ - while (__glibc_likely (match_first < right_lim) - && !fastmap[t[(unsigned char) string[match_first]]]) - ++match_first; - goto forward_match_found_start_or_reached_end; - - case 6: - /* Fastmap without translation, match forward. */ - while (__glibc_likely (match_first < right_lim) - && !fastmap[(unsigned char) string[match_first]]) - ++match_first; - - forward_match_found_start_or_reached_end: - if (__glibc_unlikely (match_first == right_lim)) - { - ch = match_first >= length - ? 0 : (unsigned char) string[match_first]; - if (!fastmap[t ? t[ch] : ch]) - goto free_return; - } - break; - - case 4: - case 5: - /* Fastmap without multi-byte translation, match backwards. */ - while (match_first >= left_lim) - { - ch = match_first >= length - ? 0 : (unsigned char) string[match_first]; - if (fastmap[t ? t[ch] : ch]) - break; - --match_first; - } - if (match_first < left_lim) - goto free_return; - break; - - default: - /* In this case, we can't determine easily the current byte, - since it might be a component byte of a multibyte - character. Then we use the constructed buffer instead. */ - for (;;) - { - /* If MATCH_FIRST is out of the valid range, reconstruct the - buffers. */ - __re_size_t offset = match_first - mctx.input.raw_mbs_idx; - if (__glibc_unlikely (offset - >= (__re_size_t) mctx.input.valid_raw_len)) - { - err = re_string_reconstruct (&mctx.input, match_first, - eflags); - if (__glibc_unlikely (err != REG_NOERROR)) - goto free_return; - - offset = match_first - mctx.input.raw_mbs_idx; - } - /* If MATCH_FIRST is out of the buffer, leave it as '\0'. - Note that MATCH_FIRST must not be smaller than 0. */ - ch = (match_first >= length - ? 0 : re_string_byte_at (&mctx.input, offset)); - if (fastmap[ch]) - break; - match_first += incr; - if (match_first < left_lim || match_first > right_lim) - { - err = REG_NOMATCH; - goto free_return; - } - } - break; - } - - /* Reconstruct the buffers so that the matcher can assume that - the matching starts from the beginning of the buffer. */ - err = re_string_reconstruct (&mctx.input, match_first, eflags); - if (__glibc_unlikely (err != REG_NOERROR)) - goto free_return; - -#ifdef RE_ENABLE_I18N - /* Don't consider this char as a possible match start if it part, - yet isn't the head, of a multibyte character. */ - if (!sb && !re_string_first_byte (&mctx.input, 0)) - continue; -#endif - - /* It seems to be appropriate one, then use the matcher. */ - /* We assume that the matching starts from 0. */ - mctx.state_log_top = mctx.nbkref_ents = mctx.max_mb_elem_len = 0; - match_last = check_matching (&mctx, fl_longest_match, - start <= last_start ? &match_first : NULL); - if (match_last != -1) - { - if (__glibc_unlikely (match_last == -2)) - { - err = REG_ESPACE; - goto free_return; - } - else - { - mctx.match_last = match_last; - if ((!preg->no_sub && nmatch > 1) || dfa->nbackref) - { - re_dfastate_t *pstate = mctx.state_log[match_last]; - mctx.last_node = check_halt_state_context (&mctx, pstate, - match_last); - } - if ((!preg->no_sub && nmatch > 1 && dfa->has_plural_match) - || dfa->nbackref) - { - err = prune_impossible_nodes (&mctx); - if (err == REG_NOERROR) - break; - if (__glibc_unlikely (err != REG_NOMATCH)) - goto free_return; - match_last = -1; - } - else - break; /* We found a match. */ - } - } - - match_ctx_clean (&mctx); - } - -#ifdef DEBUG - assert (match_last != -1); - assert (err == REG_NOERROR); -#endif - - /* Set pmatch[] if we need. */ - if (nmatch > 0) - { - Idx reg_idx; - - /* Initialize registers. */ - for (reg_idx = 1; reg_idx < nmatch; ++reg_idx) - pmatch[reg_idx].rm_so = pmatch[reg_idx].rm_eo = -1; - - /* Set the points where matching start/end. */ - pmatch[0].rm_so = 0; - pmatch[0].rm_eo = mctx.match_last; - /* FIXME: This function should fail if mctx.match_last exceeds - the maximum possible regoff_t value. We need a new error - code REG_OVERFLOW. */ - - if (!preg->no_sub && nmatch > 1) - { - err = set_regs (preg, &mctx, nmatch, pmatch, - dfa->has_plural_match && dfa->nbackref > 0); - if (__glibc_unlikely (err != REG_NOERROR)) - goto free_return; - } - - /* At last, add the offset to each register, since we slid - the buffers so that we could assume that the matching starts - from 0. */ - for (reg_idx = 0; reg_idx < nmatch; ++reg_idx) - if (pmatch[reg_idx].rm_so != -1) - { -#ifdef RE_ENABLE_I18N - if (__glibc_unlikely (mctx.input.offsets_needed != 0)) - { - pmatch[reg_idx].rm_so = - (pmatch[reg_idx].rm_so == mctx.input.valid_len - ? mctx.input.valid_raw_len - : mctx.input.offsets[pmatch[reg_idx].rm_so]); - pmatch[reg_idx].rm_eo = - (pmatch[reg_idx].rm_eo == mctx.input.valid_len - ? mctx.input.valid_raw_len - : mctx.input.offsets[pmatch[reg_idx].rm_eo]); - } -#else - assert (mctx.input.offsets_needed == 0); -#endif - pmatch[reg_idx].rm_so += match_first; - pmatch[reg_idx].rm_eo += match_first; - } - for (reg_idx = 0; reg_idx < extra_nmatch; ++reg_idx) - { - pmatch[nmatch + reg_idx].rm_so = -1; - pmatch[nmatch + reg_idx].rm_eo = -1; - } - - if (dfa->subexp_map) - for (reg_idx = 0; reg_idx + 1 < nmatch; reg_idx++) - if (dfa->subexp_map[reg_idx] != reg_idx) - { - pmatch[reg_idx + 1].rm_so - = pmatch[dfa->subexp_map[reg_idx] + 1].rm_so; - pmatch[reg_idx + 1].rm_eo - = pmatch[dfa->subexp_map[reg_idx] + 1].rm_eo; - } - } - - free_return: - re_free (mctx.state_log); - if (dfa->nbackref) - match_ctx_free (&mctx); - re_string_destruct (&mctx.input); - return err; -} - -static reg_errcode_t -__attribute_warn_unused_result__ -prune_impossible_nodes (re_match_context_t *mctx) -{ - const re_dfa_t *const dfa = mctx->dfa; - Idx halt_node, match_last; - reg_errcode_t ret; - re_dfastate_t **sifted_states; - re_dfastate_t **lim_states = NULL; - re_sift_context_t sctx; -#ifdef DEBUG - assert (mctx->state_log != NULL); -#endif - match_last = mctx->match_last; - halt_node = mctx->last_node; - - /* Avoid overflow. */ - if (__glibc_unlikely (MIN (IDX_MAX, SIZE_MAX / sizeof (re_dfastate_t *)) - <= match_last)) - return REG_ESPACE; - - sifted_states = re_malloc (re_dfastate_t *, match_last + 1); - if (__glibc_unlikely (sifted_states == NULL)) - { - ret = REG_ESPACE; - goto free_return; - } - if (dfa->nbackref) - { - lim_states = re_malloc (re_dfastate_t *, match_last + 1); - if (__glibc_unlikely (lim_states == NULL)) - { - ret = REG_ESPACE; - goto free_return; - } - while (1) - { - memset (lim_states, '\0', - sizeof (re_dfastate_t *) * (match_last + 1)); - sift_ctx_init (&sctx, sifted_states, lim_states, halt_node, - match_last); - ret = sift_states_backward (mctx, &sctx); - re_node_set_free (&sctx.limits); - if (__glibc_unlikely (ret != REG_NOERROR)) - goto free_return; - if (sifted_states[0] != NULL || lim_states[0] != NULL) - break; - do - { - --match_last; - if (match_last < 0) - { - ret = REG_NOMATCH; - goto free_return; - } - } while (mctx->state_log[match_last] == NULL - || !mctx->state_log[match_last]->halt); - halt_node = check_halt_state_context (mctx, - mctx->state_log[match_last], - match_last); - } - ret = merge_state_array (dfa, sifted_states, lim_states, - match_last + 1); - re_free (lim_states); - lim_states = NULL; - if (__glibc_unlikely (ret != REG_NOERROR)) - goto free_return; - } - else - { - sift_ctx_init (&sctx, sifted_states, lim_states, halt_node, match_last); - ret = sift_states_backward (mctx, &sctx); - re_node_set_free (&sctx.limits); - if (__glibc_unlikely (ret != REG_NOERROR)) - goto free_return; - if (sifted_states[0] == NULL) - { - ret = REG_NOMATCH; - goto free_return; - } - } - re_free (mctx->state_log); - mctx->state_log = sifted_states; - sifted_states = NULL; - mctx->last_node = halt_node; - mctx->match_last = match_last; - ret = REG_NOERROR; - free_return: - re_free (sifted_states); - re_free (lim_states); - return ret; -} - -/* Acquire an initial state and return it. - We must select appropriate initial state depending on the context, - since initial states may have constraints like "\<", "^", etc.. */ - -static inline re_dfastate_t * -__attribute__ ((always_inline)) -acquire_init_state_context (reg_errcode_t *err, const re_match_context_t *mctx, - Idx idx) -{ - const re_dfa_t *const dfa = mctx->dfa; - if (dfa->init_state->has_constraint) - { - unsigned int context; - context = re_string_context_at (&mctx->input, idx - 1, mctx->eflags); - if (IS_WORD_CONTEXT (context)) - return dfa->init_state_word; - else if (IS_ORDINARY_CONTEXT (context)) - return dfa->init_state; - else if (IS_BEGBUF_CONTEXT (context) && IS_NEWLINE_CONTEXT (context)) - return dfa->init_state_begbuf; - else if (IS_NEWLINE_CONTEXT (context)) - return dfa->init_state_nl; - else if (IS_BEGBUF_CONTEXT (context)) - { - /* It is relatively rare case, then calculate on demand. */ - return re_acquire_state_context (err, dfa, - dfa->init_state->entrance_nodes, - context); - } - else - /* Must not happen? */ - return dfa->init_state; - } - else - return dfa->init_state; -} - -/* Check whether the regular expression match input string INPUT or not, - and return the index where the matching end. Return -1 if - there is no match, and return -2 in case of an error. - FL_LONGEST_MATCH means we want the POSIX longest matching. - If P_MATCH_FIRST is not NULL, and the match fails, it is set to the - next place where we may want to try matching. - Note that the matcher assumes that the matching starts from the current - index of the buffer. */ - -static Idx -__attribute_warn_unused_result__ -check_matching (re_match_context_t *mctx, bool fl_longest_match, - Idx *p_match_first) -{ - const re_dfa_t *const dfa = mctx->dfa; - reg_errcode_t err; - Idx match = 0; - Idx match_last = -1; - Idx cur_str_idx = re_string_cur_idx (&mctx->input); - re_dfastate_t *cur_state; - bool at_init_state = p_match_first != NULL; - Idx next_start_idx = cur_str_idx; - - err = REG_NOERROR; - cur_state = acquire_init_state_context (&err, mctx, cur_str_idx); - /* An initial state must not be NULL (invalid). */ - if (__glibc_unlikely (cur_state == NULL)) - { - assert (err == REG_ESPACE); - return -2; - } - - if (mctx->state_log != NULL) - { - mctx->state_log[cur_str_idx] = cur_state; - - /* Check OP_OPEN_SUBEXP in the initial state in case that we use them - later. E.g. Processing back references. */ - if (__glibc_unlikely (dfa->nbackref)) - { - at_init_state = false; - err = check_subexp_matching_top (mctx, &cur_state->nodes, 0); - if (__glibc_unlikely (err != REG_NOERROR)) - return err; - - if (cur_state->has_backref) - { - err = transit_state_bkref (mctx, &cur_state->nodes); - if (__glibc_unlikely (err != REG_NOERROR)) - return err; - } - } - } - - /* If the RE accepts NULL string. */ - if (__glibc_unlikely (cur_state->halt)) - { - if (!cur_state->has_constraint - || check_halt_state_context (mctx, cur_state, cur_str_idx)) - { - if (!fl_longest_match) - return cur_str_idx; - else - { - match_last = cur_str_idx; - match = 1; - } - } - } - - while (!re_string_eoi (&mctx->input)) - { - re_dfastate_t *old_state = cur_state; - Idx next_char_idx = re_string_cur_idx (&mctx->input) + 1; - - if ((__glibc_unlikely (next_char_idx >= mctx->input.bufs_len) - && mctx->input.bufs_len < mctx->input.len) - || (__glibc_unlikely (next_char_idx >= mctx->input.valid_len) - && mctx->input.valid_len < mctx->input.len)) - { - err = extend_buffers (mctx, next_char_idx + 1); - if (__glibc_unlikely (err != REG_NOERROR)) - { - assert (err == REG_ESPACE); - return -2; - } - } - - cur_state = transit_state (&err, mctx, cur_state); - if (mctx->state_log != NULL) - cur_state = merge_state_with_log (&err, mctx, cur_state); - - if (cur_state == NULL) - { - /* Reached the invalid state or an error. Try to recover a valid - state using the state log, if available and if we have not - already found a valid (even if not the longest) match. */ - if (__glibc_unlikely (err != REG_NOERROR)) - return -2; - - if (mctx->state_log == NULL - || (match && !fl_longest_match) - || (cur_state = find_recover_state (&err, mctx)) == NULL) - break; - } - - if (__glibc_unlikely (at_init_state)) - { - if (old_state == cur_state) - next_start_idx = next_char_idx; - else - at_init_state = false; - } - - if (cur_state->halt) - { - /* Reached a halt state. - Check the halt state can satisfy the current context. */ - if (!cur_state->has_constraint - || check_halt_state_context (mctx, cur_state, - re_string_cur_idx (&mctx->input))) - { - /* We found an appropriate halt state. */ - match_last = re_string_cur_idx (&mctx->input); - match = 1; - - /* We found a match, do not modify match_first below. */ - p_match_first = NULL; - if (!fl_longest_match) - break; - } - } - } - - if (p_match_first) - *p_match_first += next_start_idx; - - return match_last; -} - -/* Check NODE match the current context. */ - -static bool -check_halt_node_context (const re_dfa_t *dfa, Idx node, unsigned int context) -{ - re_token_type_t type = dfa->nodes[node].type; - unsigned int constraint = dfa->nodes[node].constraint; - if (type != END_OF_RE) - return false; - if (!constraint) - return true; - if (NOT_SATISFY_NEXT_CONSTRAINT (constraint, context)) - return false; - return true; -} - -/* Check the halt state STATE match the current context. - Return 0 if not match, if the node, STATE has, is a halt node and - match the context, return the node. */ - -static Idx -check_halt_state_context (const re_match_context_t *mctx, - const re_dfastate_t *state, Idx idx) -{ - Idx i; - unsigned int context; -#ifdef DEBUG - assert (state->halt); -#endif - context = re_string_context_at (&mctx->input, idx, mctx->eflags); - for (i = 0; i < state->nodes.nelem; ++i) - if (check_halt_node_context (mctx->dfa, state->nodes.elems[i], context)) - return state->nodes.elems[i]; - return 0; -} - -/* Compute the next node to which "NFA" transit from NODE("NFA" is a NFA - corresponding to the DFA). - Return the destination node, and update EPS_VIA_NODES; - return -1 in case of errors. */ - -static Idx -proceed_next_node (const re_match_context_t *mctx, Idx nregs, regmatch_t *regs, - Idx *pidx, Idx node, re_node_set *eps_via_nodes, - struct re_fail_stack_t *fs) -{ - const re_dfa_t *const dfa = mctx->dfa; - Idx i; - bool ok; - if (IS_EPSILON_NODE (dfa->nodes[node].type)) - { - re_node_set *cur_nodes = &mctx->state_log[*pidx]->nodes; - re_node_set *edests = &dfa->edests[node]; - Idx dest_node; - ok = re_node_set_insert (eps_via_nodes, node); - if (__glibc_unlikely (! ok)) - return -2; - /* Pick up a valid destination, or return -1 if none - is found. */ - for (dest_node = -1, i = 0; i < edests->nelem; ++i) - { - Idx candidate = edests->elems[i]; - if (!re_node_set_contains (cur_nodes, candidate)) - continue; - if (dest_node == -1) - dest_node = candidate; - - else - { - /* In order to avoid infinite loop like "(a*)*", return the second - epsilon-transition if the first was already considered. */ - if (re_node_set_contains (eps_via_nodes, dest_node)) - return candidate; - - /* Otherwise, push the second epsilon-transition on the fail stack. */ - else if (fs != NULL - && push_fail_stack (fs, *pidx, candidate, nregs, regs, - eps_via_nodes)) - return -2; - - /* We know we are going to exit. */ - break; - } - } - return dest_node; - } - else - { - Idx naccepted = 0; - re_token_type_t type = dfa->nodes[node].type; - -#ifdef RE_ENABLE_I18N - if (dfa->nodes[node].accept_mb) - naccepted = check_node_accept_bytes (dfa, node, &mctx->input, *pidx); - else -#endif /* RE_ENABLE_I18N */ - if (type == OP_BACK_REF) - { - Idx subexp_idx = dfa->nodes[node].opr.idx + 1; - naccepted = regs[subexp_idx].rm_eo - regs[subexp_idx].rm_so; - if (fs != NULL) - { - if (regs[subexp_idx].rm_so == -1 || regs[subexp_idx].rm_eo == -1) - return -1; - else if (naccepted) - { - char *buf = (char *) re_string_get_buffer (&mctx->input); - if (memcmp (buf + regs[subexp_idx].rm_so, buf + *pidx, - naccepted) != 0) - return -1; - } - } - - if (naccepted == 0) - { - Idx dest_node; - ok = re_node_set_insert (eps_via_nodes, node); - if (__glibc_unlikely (! ok)) - return -2; - dest_node = dfa->edests[node].elems[0]; - if (re_node_set_contains (&mctx->state_log[*pidx]->nodes, - dest_node)) - return dest_node; - } - } - - if (naccepted != 0 - || check_node_accept (mctx, dfa->nodes + node, *pidx)) - { - Idx dest_node = dfa->nexts[node]; - *pidx = (naccepted == 0) ? *pidx + 1 : *pidx + naccepted; - if (fs && (*pidx > mctx->match_last || mctx->state_log[*pidx] == NULL - || !re_node_set_contains (&mctx->state_log[*pidx]->nodes, - dest_node))) - return -1; - re_node_set_empty (eps_via_nodes); - return dest_node; - } - } - return -1; -} - -static reg_errcode_t -__attribute_warn_unused_result__ -push_fail_stack (struct re_fail_stack_t *fs, Idx str_idx, Idx dest_node, - Idx nregs, regmatch_t *regs, re_node_set *eps_via_nodes) -{ - reg_errcode_t err; - Idx num = fs->num++; - if (fs->num == fs->alloc) - { - struct re_fail_stack_ent_t *new_array; - new_array = re_realloc (fs->stack, struct re_fail_stack_ent_t, - fs->alloc * 2); - if (new_array == NULL) - return REG_ESPACE; - fs->alloc *= 2; - fs->stack = new_array; - } - fs->stack[num].idx = str_idx; - fs->stack[num].node = dest_node; - fs->stack[num].regs = re_malloc (regmatch_t, nregs); - if (fs->stack[num].regs == NULL) - return REG_ESPACE; - memcpy (fs->stack[num].regs, regs, sizeof (regmatch_t) * nregs); - err = re_node_set_init_copy (&fs->stack[num].eps_via_nodes, eps_via_nodes); - return err; -} - -static Idx -pop_fail_stack (struct re_fail_stack_t *fs, Idx *pidx, Idx nregs, - regmatch_t *regs, re_node_set *eps_via_nodes) -{ - Idx num = --fs->num; - assert (num >= 0); - *pidx = fs->stack[num].idx; - memcpy (regs, fs->stack[num].regs, sizeof (regmatch_t) * nregs); - re_node_set_free (eps_via_nodes); - re_free (fs->stack[num].regs); - *eps_via_nodes = fs->stack[num].eps_via_nodes; - return fs->stack[num].node; -} - -/* Set the positions where the subexpressions are starts/ends to registers - PMATCH. - Note: We assume that pmatch[0] is already set, and - pmatch[i].rm_so == pmatch[i].rm_eo == -1 for 0 < i < nmatch. */ - -static reg_errcode_t -__attribute_warn_unused_result__ -set_regs (const regex_t *preg, const re_match_context_t *mctx, size_t nmatch, - regmatch_t *pmatch, bool fl_backtrack) -{ - const re_dfa_t *dfa = preg->buffer; - Idx idx, cur_node; - re_node_set eps_via_nodes; - struct re_fail_stack_t *fs; - struct re_fail_stack_t fs_body = { 0, 2, NULL }; - regmatch_t *prev_idx_match; - bool prev_idx_match_malloced = false; - -#ifdef DEBUG - assert (nmatch > 1); - assert (mctx->state_log != NULL); -#endif - if (fl_backtrack) - { - fs = &fs_body; - fs->stack = re_malloc (struct re_fail_stack_ent_t, fs->alloc); - if (fs->stack == NULL) - return REG_ESPACE; - } - else - fs = NULL; - - cur_node = dfa->init_node; - re_node_set_init_empty (&eps_via_nodes); - - if (__libc_use_alloca (nmatch * sizeof (regmatch_t))) - prev_idx_match = (regmatch_t *) alloca (nmatch * sizeof (regmatch_t)); - else - { - prev_idx_match = re_malloc (regmatch_t, nmatch); - if (prev_idx_match == NULL) - { - free_fail_stack_return (fs); - return REG_ESPACE; - } - prev_idx_match_malloced = true; - } - memcpy (prev_idx_match, pmatch, sizeof (regmatch_t) * nmatch); - - for (idx = pmatch[0].rm_so; idx <= pmatch[0].rm_eo ;) - { - update_regs (dfa, pmatch, prev_idx_match, cur_node, idx, nmatch); - - if (idx == pmatch[0].rm_eo && cur_node == mctx->last_node) - { - Idx reg_idx; - if (fs) - { - for (reg_idx = 0; reg_idx < nmatch; ++reg_idx) - if (pmatch[reg_idx].rm_so > -1 && pmatch[reg_idx].rm_eo == -1) - break; - if (reg_idx == nmatch) - { - re_node_set_free (&eps_via_nodes); - if (prev_idx_match_malloced) - re_free (prev_idx_match); - return free_fail_stack_return (fs); - } - cur_node = pop_fail_stack (fs, &idx, nmatch, pmatch, - &eps_via_nodes); - } - else - { - re_node_set_free (&eps_via_nodes); - if (prev_idx_match_malloced) - re_free (prev_idx_match); - return REG_NOERROR; - } - } - - /* Proceed to next node. */ - cur_node = proceed_next_node (mctx, nmatch, pmatch, &idx, cur_node, - &eps_via_nodes, fs); - - if (__glibc_unlikely (cur_node < 0)) - { - if (__glibc_unlikely (cur_node == -2)) - { - re_node_set_free (&eps_via_nodes); - if (prev_idx_match_malloced) - re_free (prev_idx_match); - free_fail_stack_return (fs); - return REG_ESPACE; - } - if (fs) - cur_node = pop_fail_stack (fs, &idx, nmatch, pmatch, - &eps_via_nodes); - else - { - re_node_set_free (&eps_via_nodes); - if (prev_idx_match_malloced) - re_free (prev_idx_match); - return REG_NOMATCH; - } - } - } - re_node_set_free (&eps_via_nodes); - if (prev_idx_match_malloced) - re_free (prev_idx_match); - return free_fail_stack_return (fs); -} - -static reg_errcode_t -free_fail_stack_return (struct re_fail_stack_t *fs) -{ - if (fs) - { - Idx fs_idx; - for (fs_idx = 0; fs_idx < fs->num; ++fs_idx) - { - re_node_set_free (&fs->stack[fs_idx].eps_via_nodes); - re_free (fs->stack[fs_idx].regs); - } - re_free (fs->stack); - } - return REG_NOERROR; -} - -static void -update_regs (const re_dfa_t *dfa, regmatch_t *pmatch, - regmatch_t *prev_idx_match, Idx cur_node, Idx cur_idx, Idx nmatch) -{ - int type = dfa->nodes[cur_node].type; - if (type == OP_OPEN_SUBEXP) - { - Idx reg_num = dfa->nodes[cur_node].opr.idx + 1; - - /* We are at the first node of this sub expression. */ - if (reg_num < nmatch) - { - pmatch[reg_num].rm_so = cur_idx; - pmatch[reg_num].rm_eo = -1; - } - } - else if (type == OP_CLOSE_SUBEXP) - { - Idx reg_num = dfa->nodes[cur_node].opr.idx + 1; - if (reg_num < nmatch) - { - /* We are at the last node of this sub expression. */ - if (pmatch[reg_num].rm_so < cur_idx) - { - pmatch[reg_num].rm_eo = cur_idx; - /* This is a non-empty match or we are not inside an optional - subexpression. Accept this right away. */ - memcpy (prev_idx_match, pmatch, sizeof (regmatch_t) * nmatch); - } - else - { - if (dfa->nodes[cur_node].opt_subexp - && prev_idx_match[reg_num].rm_so != -1) - /* We transited through an empty match for an optional - subexpression, like (a?)*, and this is not the subexp's - first match. Copy back the old content of the registers - so that matches of an inner subexpression are undone as - well, like in ((a?))*. */ - memcpy (pmatch, prev_idx_match, sizeof (regmatch_t) * nmatch); - else - /* We completed a subexpression, but it may be part of - an optional one, so do not update PREV_IDX_MATCH. */ - pmatch[reg_num].rm_eo = cur_idx; - } - } - } -} - -/* This function checks the STATE_LOG from the SCTX->last_str_idx to 0 - and sift the nodes in each states according to the following rules. - Updated state_log will be wrote to STATE_LOG. - - Rules: We throw away the Node 'a' in the STATE_LOG[STR_IDX] if... - 1. When STR_IDX == MATCH_LAST(the last index in the state_log): - If 'a' isn't the LAST_NODE and 'a' can't epsilon transit to - the LAST_NODE, we throw away the node 'a'. - 2. When 0 <= STR_IDX < MATCH_LAST and 'a' accepts - string 's' and transit to 'b': - i. If 'b' isn't in the STATE_LOG[STR_IDX+strlen('s')], we throw - away the node 'a'. - ii. If 'b' is in the STATE_LOG[STR_IDX+strlen('s')] but 'b' is - thrown away, we throw away the node 'a'. - 3. When 0 <= STR_IDX < MATCH_LAST and 'a' epsilon transit to 'b': - i. If 'b' isn't in the STATE_LOG[STR_IDX], we throw away the - node 'a'. - ii. If 'b' is in the STATE_LOG[STR_IDX] but 'b' is thrown away, - we throw away the node 'a'. */ - -#define STATE_NODE_CONTAINS(state,node) \ - ((state) != NULL && re_node_set_contains (&(state)->nodes, node)) - -static reg_errcode_t -sift_states_backward (const re_match_context_t *mctx, re_sift_context_t *sctx) -{ - reg_errcode_t err; - int null_cnt = 0; - Idx str_idx = sctx->last_str_idx; - re_node_set cur_dest; - -#ifdef DEBUG - assert (mctx->state_log != NULL && mctx->state_log[str_idx] != NULL); -#endif - - /* Build sifted state_log[str_idx]. It has the nodes which can epsilon - transit to the last_node and the last_node itself. */ - err = re_node_set_init_1 (&cur_dest, sctx->last_node); - if (__glibc_unlikely (err != REG_NOERROR)) - return err; - err = update_cur_sifted_state (mctx, sctx, str_idx, &cur_dest); - if (__glibc_unlikely (err != REG_NOERROR)) - goto free_return; - - /* Then check each states in the state_log. */ - while (str_idx > 0) - { - /* Update counters. */ - null_cnt = (sctx->sifted_states[str_idx] == NULL) ? null_cnt + 1 : 0; - if (null_cnt > mctx->max_mb_elem_len) - { - memset (sctx->sifted_states, '\0', - sizeof (re_dfastate_t *) * str_idx); - re_node_set_free (&cur_dest); - return REG_NOERROR; - } - re_node_set_empty (&cur_dest); - --str_idx; - - if (mctx->state_log[str_idx]) - { - err = build_sifted_states (mctx, sctx, str_idx, &cur_dest); - if (__glibc_unlikely (err != REG_NOERROR)) - goto free_return; - } - - /* Add all the nodes which satisfy the following conditions: - - It can epsilon transit to a node in CUR_DEST. - - It is in CUR_SRC. - And update state_log. */ - err = update_cur_sifted_state (mctx, sctx, str_idx, &cur_dest); - if (__glibc_unlikely (err != REG_NOERROR)) - goto free_return; - } - err = REG_NOERROR; - free_return: - re_node_set_free (&cur_dest); - return err; -} - -static reg_errcode_t -__attribute_warn_unused_result__ -build_sifted_states (const re_match_context_t *mctx, re_sift_context_t *sctx, - Idx str_idx, re_node_set *cur_dest) -{ - const re_dfa_t *const dfa = mctx->dfa; - const re_node_set *cur_src = &mctx->state_log[str_idx]->non_eps_nodes; - Idx i; - - /* Then build the next sifted state. - We build the next sifted state on 'cur_dest', and update - 'sifted_states[str_idx]' with 'cur_dest'. - Note: - 'cur_dest' is the sifted state from 'state_log[str_idx + 1]'. - 'cur_src' points the node_set of the old 'state_log[str_idx]' - (with the epsilon nodes pre-filtered out). */ - for (i = 0; i < cur_src->nelem; i++) - { - Idx prev_node = cur_src->elems[i]; - int naccepted = 0; - bool ok; - -#ifdef DEBUG - re_token_type_t type = dfa->nodes[prev_node].type; - assert (!IS_EPSILON_NODE (type)); -#endif -#ifdef RE_ENABLE_I18N - /* If the node may accept "multi byte". */ - if (dfa->nodes[prev_node].accept_mb) - naccepted = sift_states_iter_mb (mctx, sctx, prev_node, - str_idx, sctx->last_str_idx); -#endif /* RE_ENABLE_I18N */ - - /* We don't check backreferences here. - See update_cur_sifted_state(). */ - if (!naccepted - && check_node_accept (mctx, dfa->nodes + prev_node, str_idx) - && STATE_NODE_CONTAINS (sctx->sifted_states[str_idx + 1], - dfa->nexts[prev_node])) - naccepted = 1; - - if (naccepted == 0) - continue; - - if (sctx->limits.nelem) - { - Idx to_idx = str_idx + naccepted; - if (check_dst_limits (mctx, &sctx->limits, - dfa->nexts[prev_node], to_idx, - prev_node, str_idx)) - continue; - } - ok = re_node_set_insert (cur_dest, prev_node); - if (__glibc_unlikely (! ok)) - return REG_ESPACE; - } - - return REG_NOERROR; -} - -/* Helper functions. */ - -static reg_errcode_t -clean_state_log_if_needed (re_match_context_t *mctx, Idx next_state_log_idx) -{ - Idx top = mctx->state_log_top; - - if ((next_state_log_idx >= mctx->input.bufs_len - && mctx->input.bufs_len < mctx->input.len) - || (next_state_log_idx >= mctx->input.valid_len - && mctx->input.valid_len < mctx->input.len)) - { - reg_errcode_t err; - err = extend_buffers (mctx, next_state_log_idx + 1); - if (__glibc_unlikely (err != REG_NOERROR)) - return err; - } - - if (top < next_state_log_idx) - { - memset (mctx->state_log + top + 1, '\0', - sizeof (re_dfastate_t *) * (next_state_log_idx - top)); - mctx->state_log_top = next_state_log_idx; - } - return REG_NOERROR; -} - -static reg_errcode_t -merge_state_array (const re_dfa_t *dfa, re_dfastate_t **dst, - re_dfastate_t **src, Idx num) -{ - Idx st_idx; - reg_errcode_t err; - for (st_idx = 0; st_idx < num; ++st_idx) - { - if (dst[st_idx] == NULL) - dst[st_idx] = src[st_idx]; - else if (src[st_idx] != NULL) - { - re_node_set merged_set; - err = re_node_set_init_union (&merged_set, &dst[st_idx]->nodes, - &src[st_idx]->nodes); - if (__glibc_unlikely (err != REG_NOERROR)) - return err; - dst[st_idx] = re_acquire_state (&err, dfa, &merged_set); - re_node_set_free (&merged_set); - if (__glibc_unlikely (err != REG_NOERROR)) - return err; - } - } - return REG_NOERROR; -} - -static reg_errcode_t -update_cur_sifted_state (const re_match_context_t *mctx, - re_sift_context_t *sctx, Idx str_idx, - re_node_set *dest_nodes) -{ - const re_dfa_t *const dfa = mctx->dfa; - reg_errcode_t err = REG_NOERROR; - const re_node_set *candidates; - candidates = ((mctx->state_log[str_idx] == NULL) ? NULL - : &mctx->state_log[str_idx]->nodes); - - if (dest_nodes->nelem == 0) - sctx->sifted_states[str_idx] = NULL; - else - { - if (candidates) - { - /* At first, add the nodes which can epsilon transit to a node in - DEST_NODE. */ - err = add_epsilon_src_nodes (dfa, dest_nodes, candidates); - if (__glibc_unlikely (err != REG_NOERROR)) - return err; - - /* Then, check the limitations in the current sift_context. */ - if (sctx->limits.nelem) - { - err = check_subexp_limits (dfa, dest_nodes, candidates, &sctx->limits, - mctx->bkref_ents, str_idx); - if (__glibc_unlikely (err != REG_NOERROR)) - return err; - } - } - - sctx->sifted_states[str_idx] = re_acquire_state (&err, dfa, dest_nodes); - if (__glibc_unlikely (err != REG_NOERROR)) - return err; - } - - if (candidates && mctx->state_log[str_idx]->has_backref) - { - err = sift_states_bkref (mctx, sctx, str_idx, candidates); - if (__glibc_unlikely (err != REG_NOERROR)) - return err; - } - return REG_NOERROR; -} - -static reg_errcode_t -__attribute_warn_unused_result__ -add_epsilon_src_nodes (const re_dfa_t *dfa, re_node_set *dest_nodes, - const re_node_set *candidates) -{ - reg_errcode_t err = REG_NOERROR; - Idx i; - - re_dfastate_t *state = re_acquire_state (&err, dfa, dest_nodes); - if (__glibc_unlikely (err != REG_NOERROR)) - return err; - - if (!state->inveclosure.alloc) - { - err = re_node_set_alloc (&state->inveclosure, dest_nodes->nelem); - if (__glibc_unlikely (err != REG_NOERROR)) - return REG_ESPACE; - for (i = 0; i < dest_nodes->nelem; i++) - { - err = re_node_set_merge (&state->inveclosure, - dfa->inveclosures + dest_nodes->elems[i]); - if (__glibc_unlikely (err != REG_NOERROR)) - return REG_ESPACE; - } - } - return re_node_set_add_intersect (dest_nodes, candidates, - &state->inveclosure); -} - -static reg_errcode_t -sub_epsilon_src_nodes (const re_dfa_t *dfa, Idx node, re_node_set *dest_nodes, - const re_node_set *candidates) -{ - Idx ecl_idx; - reg_errcode_t err; - re_node_set *inv_eclosure = dfa->inveclosures + node; - re_node_set except_nodes; - re_node_set_init_empty (&except_nodes); - for (ecl_idx = 0; ecl_idx < inv_eclosure->nelem; ++ecl_idx) - { - Idx cur_node = inv_eclosure->elems[ecl_idx]; - if (cur_node == node) - continue; - if (IS_EPSILON_NODE (dfa->nodes[cur_node].type)) - { - Idx edst1 = dfa->edests[cur_node].elems[0]; - Idx edst2 = ((dfa->edests[cur_node].nelem > 1) - ? dfa->edests[cur_node].elems[1] : -1); - if ((!re_node_set_contains (inv_eclosure, edst1) - && re_node_set_contains (dest_nodes, edst1)) - || (edst2 > 0 - && !re_node_set_contains (inv_eclosure, edst2) - && re_node_set_contains (dest_nodes, edst2))) - { - err = re_node_set_add_intersect (&except_nodes, candidates, - dfa->inveclosures + cur_node); - if (__glibc_unlikely (err != REG_NOERROR)) - { - re_node_set_free (&except_nodes); - return err; - } - } - } - } - for (ecl_idx = 0; ecl_idx < inv_eclosure->nelem; ++ecl_idx) - { - Idx cur_node = inv_eclosure->elems[ecl_idx]; - if (!re_node_set_contains (&except_nodes, cur_node)) - { - Idx idx = re_node_set_contains (dest_nodes, cur_node) - 1; - re_node_set_remove_at (dest_nodes, idx); - } - } - re_node_set_free (&except_nodes); - return REG_NOERROR; -} - -static bool -check_dst_limits (const re_match_context_t *mctx, const re_node_set *limits, - Idx dst_node, Idx dst_idx, Idx src_node, Idx src_idx) -{ - const re_dfa_t *const dfa = mctx->dfa; - Idx lim_idx, src_pos, dst_pos; - - Idx dst_bkref_idx = search_cur_bkref_entry (mctx, dst_idx); - Idx src_bkref_idx = search_cur_bkref_entry (mctx, src_idx); - for (lim_idx = 0; lim_idx < limits->nelem; ++lim_idx) - { - Idx subexp_idx; - struct re_backref_cache_entry *ent; - ent = mctx->bkref_ents + limits->elems[lim_idx]; - subexp_idx = dfa->nodes[ent->node].opr.idx; - - dst_pos = check_dst_limits_calc_pos (mctx, limits->elems[lim_idx], - subexp_idx, dst_node, dst_idx, - dst_bkref_idx); - src_pos = check_dst_limits_calc_pos (mctx, limits->elems[lim_idx], - subexp_idx, src_node, src_idx, - src_bkref_idx); - - /* In case of: - ( ) - ( ) - ( ) */ - if (src_pos == dst_pos) - continue; /* This is unrelated limitation. */ - else - return true; - } - return false; -} - -static int -check_dst_limits_calc_pos_1 (const re_match_context_t *mctx, int boundaries, - Idx subexp_idx, Idx from_node, Idx bkref_idx) -{ - const re_dfa_t *const dfa = mctx->dfa; - const re_node_set *eclosures = dfa->eclosures + from_node; - Idx node_idx; - - /* Else, we are on the boundary: examine the nodes on the epsilon - closure. */ - for (node_idx = 0; node_idx < eclosures->nelem; ++node_idx) - { - Idx node = eclosures->elems[node_idx]; - switch (dfa->nodes[node].type) - { - case OP_BACK_REF: - if (bkref_idx != -1) - { - struct re_backref_cache_entry *ent = mctx->bkref_ents + bkref_idx; - do - { - Idx dst; - int cpos; - - if (ent->node != node) - continue; - - if (subexp_idx < BITSET_WORD_BITS - && !(ent->eps_reachable_subexps_map - & ((bitset_word_t) 1 << subexp_idx))) - continue; - - /* Recurse trying to reach the OP_OPEN_SUBEXP and - OP_CLOSE_SUBEXP cases below. But, if the - destination node is the same node as the source - node, don't recurse because it would cause an - infinite loop: a regex that exhibits this behavior - is ()\1*\1* */ - dst = dfa->edests[node].elems[0]; - if (dst == from_node) - { - if (boundaries & 1) - return -1; - else /* if (boundaries & 2) */ - return 0; - } - - cpos = - check_dst_limits_calc_pos_1 (mctx, boundaries, subexp_idx, - dst, bkref_idx); - if (cpos == -1 /* && (boundaries & 1) */) - return -1; - if (cpos == 0 && (boundaries & 2)) - return 0; - - if (subexp_idx < BITSET_WORD_BITS) - ent->eps_reachable_subexps_map - &= ~((bitset_word_t) 1 << subexp_idx); - } - while (ent++->more); - } - break; - - case OP_OPEN_SUBEXP: - if ((boundaries & 1) && subexp_idx == dfa->nodes[node].opr.idx) - return -1; - break; - - case OP_CLOSE_SUBEXP: - if ((boundaries & 2) && subexp_idx == dfa->nodes[node].opr.idx) - return 0; - break; - - default: - break; - } - } - - return (boundaries & 2) ? 1 : 0; -} - -static int -check_dst_limits_calc_pos (const re_match_context_t *mctx, Idx limit, - Idx subexp_idx, Idx from_node, Idx str_idx, - Idx bkref_idx) -{ - struct re_backref_cache_entry *lim = mctx->bkref_ents + limit; - int boundaries; - - /* If we are outside the range of the subexpression, return -1 or 1. */ - if (str_idx < lim->subexp_from) - return -1; - - if (lim->subexp_to < str_idx) - return 1; - - /* If we are within the subexpression, return 0. */ - boundaries = (str_idx == lim->subexp_from); - boundaries |= (str_idx == lim->subexp_to) << 1; - if (boundaries == 0) - return 0; - - /* Else, examine epsilon closure. */ - return check_dst_limits_calc_pos_1 (mctx, boundaries, subexp_idx, - from_node, bkref_idx); -} - -/* Check the limitations of sub expressions LIMITS, and remove the nodes - which are against limitations from DEST_NODES. */ - -static reg_errcode_t -check_subexp_limits (const re_dfa_t *dfa, re_node_set *dest_nodes, - const re_node_set *candidates, re_node_set *limits, - struct re_backref_cache_entry *bkref_ents, Idx str_idx) -{ - reg_errcode_t err; - Idx node_idx, lim_idx; - - for (lim_idx = 0; lim_idx < limits->nelem; ++lim_idx) - { - Idx subexp_idx; - struct re_backref_cache_entry *ent; - ent = bkref_ents + limits->elems[lim_idx]; - - if (str_idx <= ent->subexp_from || ent->str_idx < str_idx) - continue; /* This is unrelated limitation. */ - - subexp_idx = dfa->nodes[ent->node].opr.idx; - if (ent->subexp_to == str_idx) - { - Idx ops_node = -1; - Idx cls_node = -1; - for (node_idx = 0; node_idx < dest_nodes->nelem; ++node_idx) - { - Idx node = dest_nodes->elems[node_idx]; - re_token_type_t type = dfa->nodes[node].type; - if (type == OP_OPEN_SUBEXP - && subexp_idx == dfa->nodes[node].opr.idx) - ops_node = node; - else if (type == OP_CLOSE_SUBEXP - && subexp_idx == dfa->nodes[node].opr.idx) - cls_node = node; - } - - /* Check the limitation of the open subexpression. */ - /* Note that (ent->subexp_to = str_idx != ent->subexp_from). */ - if (ops_node >= 0) - { - err = sub_epsilon_src_nodes (dfa, ops_node, dest_nodes, - candidates); - if (__glibc_unlikely (err != REG_NOERROR)) - return err; - } - - /* Check the limitation of the close subexpression. */ - if (cls_node >= 0) - for (node_idx = 0; node_idx < dest_nodes->nelem; ++node_idx) - { - Idx node = dest_nodes->elems[node_idx]; - if (!re_node_set_contains (dfa->inveclosures + node, - cls_node) - && !re_node_set_contains (dfa->eclosures + node, - cls_node)) - { - /* It is against this limitation. - Remove it form the current sifted state. */ - err = sub_epsilon_src_nodes (dfa, node, dest_nodes, - candidates); - if (__glibc_unlikely (err != REG_NOERROR)) - return err; - --node_idx; - } - } - } - else /* (ent->subexp_to != str_idx) */ - { - for (node_idx = 0; node_idx < dest_nodes->nelem; ++node_idx) - { - Idx node = dest_nodes->elems[node_idx]; - re_token_type_t type = dfa->nodes[node].type; - if (type == OP_CLOSE_SUBEXP || type == OP_OPEN_SUBEXP) - { - if (subexp_idx != dfa->nodes[node].opr.idx) - continue; - /* It is against this limitation. - Remove it form the current sifted state. */ - err = sub_epsilon_src_nodes (dfa, node, dest_nodes, - candidates); - if (__glibc_unlikely (err != REG_NOERROR)) - return err; - } - } - } - } - return REG_NOERROR; -} - -static reg_errcode_t -__attribute_warn_unused_result__ -sift_states_bkref (const re_match_context_t *mctx, re_sift_context_t *sctx, - Idx str_idx, const re_node_set *candidates) -{ - const re_dfa_t *const dfa = mctx->dfa; - reg_errcode_t err; - Idx node_idx, node; - re_sift_context_t local_sctx; - Idx first_idx = search_cur_bkref_entry (mctx, str_idx); - - if (first_idx == -1) - return REG_NOERROR; - - local_sctx.sifted_states = NULL; /* Mark that it hasn't been initialized. */ - - for (node_idx = 0; node_idx < candidates->nelem; ++node_idx) - { - Idx enabled_idx; - re_token_type_t type; - struct re_backref_cache_entry *entry; - node = candidates->elems[node_idx]; - type = dfa->nodes[node].type; - /* Avoid infinite loop for the REs like "()\1+". */ - if (node == sctx->last_node && str_idx == sctx->last_str_idx) - continue; - if (type != OP_BACK_REF) - continue; - - entry = mctx->bkref_ents + first_idx; - enabled_idx = first_idx; - do - { - Idx subexp_len; - Idx to_idx; - Idx dst_node; - bool ok; - re_dfastate_t *cur_state; - - if (entry->node != node) - continue; - subexp_len = entry->subexp_to - entry->subexp_from; - to_idx = str_idx + subexp_len; - dst_node = (subexp_len ? dfa->nexts[node] - : dfa->edests[node].elems[0]); - - if (to_idx > sctx->last_str_idx - || sctx->sifted_states[to_idx] == NULL - || !STATE_NODE_CONTAINS (sctx->sifted_states[to_idx], dst_node) - || check_dst_limits (mctx, &sctx->limits, node, - str_idx, dst_node, to_idx)) - continue; - - if (local_sctx.sifted_states == NULL) - { - local_sctx = *sctx; - err = re_node_set_init_copy (&local_sctx.limits, &sctx->limits); - if (__glibc_unlikely (err != REG_NOERROR)) - goto free_return; - } - local_sctx.last_node = node; - local_sctx.last_str_idx = str_idx; - ok = re_node_set_insert (&local_sctx.limits, enabled_idx); - if (__glibc_unlikely (! ok)) - { - err = REG_ESPACE; - goto free_return; - } - cur_state = local_sctx.sifted_states[str_idx]; - err = sift_states_backward (mctx, &local_sctx); - if (__glibc_unlikely (err != REG_NOERROR)) - goto free_return; - if (sctx->limited_states != NULL) - { - err = merge_state_array (dfa, sctx->limited_states, - local_sctx.sifted_states, - str_idx + 1); - if (__glibc_unlikely (err != REG_NOERROR)) - goto free_return; - } - local_sctx.sifted_states[str_idx] = cur_state; - re_node_set_remove (&local_sctx.limits, enabled_idx); - - /* mctx->bkref_ents may have changed, reload the pointer. */ - entry = mctx->bkref_ents + enabled_idx; - } - while (enabled_idx++, entry++->more); - } - err = REG_NOERROR; - free_return: - if (local_sctx.sifted_states != NULL) - { - re_node_set_free (&local_sctx.limits); - } - - return err; -} - - -#ifdef RE_ENABLE_I18N -static int -sift_states_iter_mb (const re_match_context_t *mctx, re_sift_context_t *sctx, - Idx node_idx, Idx str_idx, Idx max_str_idx) -{ - const re_dfa_t *const dfa = mctx->dfa; - int naccepted; - /* Check the node can accept "multi byte". */ - naccepted = check_node_accept_bytes (dfa, node_idx, &mctx->input, str_idx); - if (naccepted > 0 && str_idx + naccepted <= max_str_idx && - !STATE_NODE_CONTAINS (sctx->sifted_states[str_idx + naccepted], - dfa->nexts[node_idx])) - /* The node can't accept the "multi byte", or the - destination was already thrown away, then the node - could't accept the current input "multi byte". */ - naccepted = 0; - /* Otherwise, it is sure that the node could accept - 'naccepted' bytes input. */ - return naccepted; -} -#endif /* RE_ENABLE_I18N */ - - -/* Functions for state transition. */ - -/* Return the next state to which the current state STATE will transit by - accepting the current input byte, and update STATE_LOG if necessary. - If STATE can accept a multibyte char/collating element/back reference - update the destination of STATE_LOG. */ - -static re_dfastate_t * -__attribute_warn_unused_result__ -transit_state (reg_errcode_t *err, re_match_context_t *mctx, - re_dfastate_t *state) -{ - re_dfastate_t **trtable; - unsigned char ch; - -#ifdef RE_ENABLE_I18N - /* If the current state can accept multibyte. */ - if (__glibc_unlikely (state->accept_mb)) - { - *err = transit_state_mb (mctx, state); - if (__glibc_unlikely (*err != REG_NOERROR)) - return NULL; - } -#endif /* RE_ENABLE_I18N */ - - /* Then decide the next state with the single byte. */ -#if 0 - if (0) - /* don't use transition table */ - return transit_state_sb (err, mctx, state); -#endif - - /* Use transition table */ - ch = re_string_fetch_byte (&mctx->input); - for (;;) - { - trtable = state->trtable; - if (__glibc_likely (trtable != NULL)) - return trtable[ch]; - - trtable = state->word_trtable; - if (__glibc_likely (trtable != NULL)) - { - unsigned int context; - context - = re_string_context_at (&mctx->input, - re_string_cur_idx (&mctx->input) - 1, - mctx->eflags); - if (IS_WORD_CONTEXT (context)) - return trtable[ch + SBC_MAX]; - else - return trtable[ch]; - } - - if (!build_trtable (mctx->dfa, state)) - { - *err = REG_ESPACE; - return NULL; - } - - /* Retry, we now have a transition table. */ - } -} - -/* Update the state_log if we need */ -static re_dfastate_t * -merge_state_with_log (reg_errcode_t *err, re_match_context_t *mctx, - re_dfastate_t *next_state) -{ - const re_dfa_t *const dfa = mctx->dfa; - Idx cur_idx = re_string_cur_idx (&mctx->input); - - if (cur_idx > mctx->state_log_top) - { - mctx->state_log[cur_idx] = next_state; - mctx->state_log_top = cur_idx; - } - else if (mctx->state_log[cur_idx] == 0) - { - mctx->state_log[cur_idx] = next_state; - } - else - { - re_dfastate_t *pstate; - unsigned int context; - re_node_set next_nodes, *log_nodes, *table_nodes = NULL; - /* If (state_log[cur_idx] != 0), it implies that cur_idx is - the destination of a multibyte char/collating element/ - back reference. Then the next state is the union set of - these destinations and the results of the transition table. */ - pstate = mctx->state_log[cur_idx]; - log_nodes = pstate->entrance_nodes; - if (next_state != NULL) - { - table_nodes = next_state->entrance_nodes; - *err = re_node_set_init_union (&next_nodes, table_nodes, - log_nodes); - if (__glibc_unlikely (*err != REG_NOERROR)) - return NULL; - } - else - next_nodes = *log_nodes; - /* Note: We already add the nodes of the initial state, - then we don't need to add them here. */ - - context = re_string_context_at (&mctx->input, - re_string_cur_idx (&mctx->input) - 1, - mctx->eflags); - next_state = mctx->state_log[cur_idx] - = re_acquire_state_context (err, dfa, &next_nodes, context); - /* We don't need to check errors here, since the return value of - this function is next_state and ERR is already set. */ - - if (table_nodes != NULL) - re_node_set_free (&next_nodes); - } - - if (__glibc_unlikely (dfa->nbackref) && next_state != NULL) - { - /* Check OP_OPEN_SUBEXP in the current state in case that we use them - later. We must check them here, since the back references in the - next state might use them. */ - *err = check_subexp_matching_top (mctx, &next_state->nodes, - cur_idx); - if (__glibc_unlikely (*err != REG_NOERROR)) - return NULL; - - /* If the next state has back references. */ - if (next_state->has_backref) - { - *err = transit_state_bkref (mctx, &next_state->nodes); - if (__glibc_unlikely (*err != REG_NOERROR)) - return NULL; - next_state = mctx->state_log[cur_idx]; - } - } - - return next_state; -} - -/* Skip bytes in the input that correspond to part of a - multi-byte match, then look in the log for a state - from which to restart matching. */ -static re_dfastate_t * -find_recover_state (reg_errcode_t *err, re_match_context_t *mctx) -{ - re_dfastate_t *cur_state; - do - { - Idx max = mctx->state_log_top; - Idx cur_str_idx = re_string_cur_idx (&mctx->input); - - do - { - if (++cur_str_idx > max) - return NULL; - re_string_skip_bytes (&mctx->input, 1); - } - while (mctx->state_log[cur_str_idx] == NULL); - - cur_state = merge_state_with_log (err, mctx, NULL); - } - while (*err == REG_NOERROR && cur_state == NULL); - return cur_state; -} - -/* Helper functions for transit_state. */ - -/* From the node set CUR_NODES, pick up the nodes whose types are - OP_OPEN_SUBEXP and which have corresponding back references in the regular - expression. And register them to use them later for evaluating the - corresponding back references. */ - -static reg_errcode_t -check_subexp_matching_top (re_match_context_t *mctx, re_node_set *cur_nodes, - Idx str_idx) -{ - const re_dfa_t *const dfa = mctx->dfa; - Idx node_idx; - reg_errcode_t err; - - /* TODO: This isn't efficient. - Because there might be more than one nodes whose types are - OP_OPEN_SUBEXP and whose index is SUBEXP_IDX, we must check all - nodes. - E.g. RE: (a){2} */ - for (node_idx = 0; node_idx < cur_nodes->nelem; ++node_idx) - { - Idx node = cur_nodes->elems[node_idx]; - if (dfa->nodes[node].type == OP_OPEN_SUBEXP - && dfa->nodes[node].opr.idx < BITSET_WORD_BITS - && (dfa->used_bkref_map - & ((bitset_word_t) 1 << dfa->nodes[node].opr.idx))) - { - err = match_ctx_add_subtop (mctx, node, str_idx); - if (__glibc_unlikely (err != REG_NOERROR)) - return err; - } - } - return REG_NOERROR; -} - -#if 0 -/* Return the next state to which the current state STATE will transit by - accepting the current input byte. */ - -static re_dfastate_t * -transit_state_sb (reg_errcode_t *err, re_match_context_t *mctx, - re_dfastate_t *state) -{ - const re_dfa_t *const dfa = mctx->dfa; - re_node_set next_nodes; - re_dfastate_t *next_state; - Idx node_cnt, cur_str_idx = re_string_cur_idx (&mctx->input); - unsigned int context; - - *err = re_node_set_alloc (&next_nodes, state->nodes.nelem + 1); - if (__glibc_unlikely (*err != REG_NOERROR)) - return NULL; - for (node_cnt = 0; node_cnt < state->nodes.nelem; ++node_cnt) - { - Idx cur_node = state->nodes.elems[node_cnt]; - if (check_node_accept (mctx, dfa->nodes + cur_node, cur_str_idx)) - { - *err = re_node_set_merge (&next_nodes, - dfa->eclosures + dfa->nexts[cur_node]); - if (__glibc_unlikely (*err != REG_NOERROR)) - { - re_node_set_free (&next_nodes); - return NULL; - } - } - } - context = re_string_context_at (&mctx->input, cur_str_idx, mctx->eflags); - next_state = re_acquire_state_context (err, dfa, &next_nodes, context); - /* We don't need to check errors here, since the return value of - this function is next_state and ERR is already set. */ - - re_node_set_free (&next_nodes); - re_string_skip_bytes (&mctx->input, 1); - return next_state; -} -#endif - -#ifdef RE_ENABLE_I18N -static reg_errcode_t -transit_state_mb (re_match_context_t *mctx, re_dfastate_t *pstate) -{ - const re_dfa_t *const dfa = mctx->dfa; - reg_errcode_t err; - Idx i; - - for (i = 0; i < pstate->nodes.nelem; ++i) - { - re_node_set dest_nodes, *new_nodes; - Idx cur_node_idx = pstate->nodes.elems[i]; - int naccepted; - Idx dest_idx; - unsigned int context; - re_dfastate_t *dest_state; - - if (!dfa->nodes[cur_node_idx].accept_mb) - continue; - - if (dfa->nodes[cur_node_idx].constraint) - { - context = re_string_context_at (&mctx->input, - re_string_cur_idx (&mctx->input), - mctx->eflags); - if (NOT_SATISFY_NEXT_CONSTRAINT (dfa->nodes[cur_node_idx].constraint, - context)) - continue; - } - - /* How many bytes the node can accept? */ - naccepted = check_node_accept_bytes (dfa, cur_node_idx, &mctx->input, - re_string_cur_idx (&mctx->input)); - if (naccepted == 0) - continue; - - /* The node can accepts 'naccepted' bytes. */ - dest_idx = re_string_cur_idx (&mctx->input) + naccepted; - mctx->max_mb_elem_len = ((mctx->max_mb_elem_len < naccepted) ? naccepted - : mctx->max_mb_elem_len); - err = clean_state_log_if_needed (mctx, dest_idx); - if (__glibc_unlikely (err != REG_NOERROR)) - return err; -#ifdef DEBUG - assert (dfa->nexts[cur_node_idx] != -1); -#endif - new_nodes = dfa->eclosures + dfa->nexts[cur_node_idx]; - - dest_state = mctx->state_log[dest_idx]; - if (dest_state == NULL) - dest_nodes = *new_nodes; - else - { - err = re_node_set_init_union (&dest_nodes, - dest_state->entrance_nodes, new_nodes); - if (__glibc_unlikely (err != REG_NOERROR)) - return err; - } - context = re_string_context_at (&mctx->input, dest_idx - 1, - mctx->eflags); - mctx->state_log[dest_idx] - = re_acquire_state_context (&err, dfa, &dest_nodes, context); - if (dest_state != NULL) - re_node_set_free (&dest_nodes); - if (__glibc_unlikely (mctx->state_log[dest_idx] == NULL - && err != REG_NOERROR)) - return err; - } - return REG_NOERROR; -} -#endif /* RE_ENABLE_I18N */ - -static reg_errcode_t -transit_state_bkref (re_match_context_t *mctx, const re_node_set *nodes) -{ - const re_dfa_t *const dfa = mctx->dfa; - reg_errcode_t err; - Idx i; - Idx cur_str_idx = re_string_cur_idx (&mctx->input); - - for (i = 0; i < nodes->nelem; ++i) - { - Idx dest_str_idx, prev_nelem, bkc_idx; - Idx node_idx = nodes->elems[i]; - unsigned int context; - const re_token_t *node = dfa->nodes + node_idx; - re_node_set *new_dest_nodes; - - /* Check whether 'node' is a backreference or not. */ - if (node->type != OP_BACK_REF) - continue; - - if (node->constraint) - { - context = re_string_context_at (&mctx->input, cur_str_idx, - mctx->eflags); - if (NOT_SATISFY_NEXT_CONSTRAINT (node->constraint, context)) - continue; - } - - /* 'node' is a backreference. - Check the substring which the substring matched. */ - bkc_idx = mctx->nbkref_ents; - err = get_subexp (mctx, node_idx, cur_str_idx); - if (__glibc_unlikely (err != REG_NOERROR)) - goto free_return; - - /* And add the epsilon closures (which is 'new_dest_nodes') of - the backreference to appropriate state_log. */ -#ifdef DEBUG - assert (dfa->nexts[node_idx] != -1); -#endif - for (; bkc_idx < mctx->nbkref_ents; ++bkc_idx) - { - Idx subexp_len; - re_dfastate_t *dest_state; - struct re_backref_cache_entry *bkref_ent; - bkref_ent = mctx->bkref_ents + bkc_idx; - if (bkref_ent->node != node_idx || bkref_ent->str_idx != cur_str_idx) - continue; - subexp_len = bkref_ent->subexp_to - bkref_ent->subexp_from; - new_dest_nodes = (subexp_len == 0 - ? dfa->eclosures + dfa->edests[node_idx].elems[0] - : dfa->eclosures + dfa->nexts[node_idx]); - dest_str_idx = (cur_str_idx + bkref_ent->subexp_to - - bkref_ent->subexp_from); - context = re_string_context_at (&mctx->input, dest_str_idx - 1, - mctx->eflags); - dest_state = mctx->state_log[dest_str_idx]; - prev_nelem = ((mctx->state_log[cur_str_idx] == NULL) ? 0 - : mctx->state_log[cur_str_idx]->nodes.nelem); - /* Add 'new_dest_node' to state_log. */ - if (dest_state == NULL) - { - mctx->state_log[dest_str_idx] - = re_acquire_state_context (&err, dfa, new_dest_nodes, - context); - if (__glibc_unlikely (mctx->state_log[dest_str_idx] == NULL - && err != REG_NOERROR)) - goto free_return; - } - else - { - re_node_set dest_nodes; - err = re_node_set_init_union (&dest_nodes, - dest_state->entrance_nodes, - new_dest_nodes); - if (__glibc_unlikely (err != REG_NOERROR)) - { - re_node_set_free (&dest_nodes); - goto free_return; - } - mctx->state_log[dest_str_idx] - = re_acquire_state_context (&err, dfa, &dest_nodes, context); - re_node_set_free (&dest_nodes); - if (__glibc_unlikely (mctx->state_log[dest_str_idx] == NULL - && err != REG_NOERROR)) - goto free_return; - } - /* We need to check recursively if the backreference can epsilon - transit. */ - if (subexp_len == 0 - && mctx->state_log[cur_str_idx]->nodes.nelem > prev_nelem) - { - err = check_subexp_matching_top (mctx, new_dest_nodes, - cur_str_idx); - if (__glibc_unlikely (err != REG_NOERROR)) - goto free_return; - err = transit_state_bkref (mctx, new_dest_nodes); - if (__glibc_unlikely (err != REG_NOERROR)) - goto free_return; - } - } - } - err = REG_NOERROR; - free_return: - return err; -} - -/* Enumerate all the candidates which the backreference BKREF_NODE can match - at BKREF_STR_IDX, and register them by match_ctx_add_entry(). - Note that we might collect inappropriate candidates here. - However, the cost of checking them strictly here is too high, then we - delay these checking for prune_impossible_nodes(). */ - -static reg_errcode_t -__attribute_warn_unused_result__ -get_subexp (re_match_context_t *mctx, Idx bkref_node, Idx bkref_str_idx) -{ - const re_dfa_t *const dfa = mctx->dfa; - Idx subexp_num, sub_top_idx; - const char *buf = (const char *) re_string_get_buffer (&mctx->input); - /* Return if we have already checked BKREF_NODE at BKREF_STR_IDX. */ - Idx cache_idx = search_cur_bkref_entry (mctx, bkref_str_idx); - if (cache_idx != -1) - { - const struct re_backref_cache_entry *entry - = mctx->bkref_ents + cache_idx; - do - if (entry->node == bkref_node) - return REG_NOERROR; /* We already checked it. */ - while (entry++->more); - } - - subexp_num = dfa->nodes[bkref_node].opr.idx; - - /* For each sub expression */ - for (sub_top_idx = 0; sub_top_idx < mctx->nsub_tops; ++sub_top_idx) - { - reg_errcode_t err; - re_sub_match_top_t *sub_top = mctx->sub_tops[sub_top_idx]; - re_sub_match_last_t *sub_last; - Idx sub_last_idx, sl_str, bkref_str_off; - - if (dfa->nodes[sub_top->node].opr.idx != subexp_num) - continue; /* It isn't related. */ - - sl_str = sub_top->str_idx; - bkref_str_off = bkref_str_idx; - /* At first, check the last node of sub expressions we already - evaluated. */ - for (sub_last_idx = 0; sub_last_idx < sub_top->nlasts; ++sub_last_idx) - { - regoff_t sl_str_diff; - sub_last = sub_top->lasts[sub_last_idx]; - sl_str_diff = sub_last->str_idx - sl_str; - /* The matched string by the sub expression match with the substring - at the back reference? */ - if (sl_str_diff > 0) - { - if (__glibc_unlikely (bkref_str_off + sl_str_diff - > mctx->input.valid_len)) - { - /* Not enough chars for a successful match. */ - if (bkref_str_off + sl_str_diff > mctx->input.len) - break; - - err = clean_state_log_if_needed (mctx, - bkref_str_off - + sl_str_diff); - if (__glibc_unlikely (err != REG_NOERROR)) - return err; - buf = (const char *) re_string_get_buffer (&mctx->input); - } - if (memcmp (buf + bkref_str_off, buf + sl_str, sl_str_diff) != 0) - /* We don't need to search this sub expression any more. */ - break; - } - bkref_str_off += sl_str_diff; - sl_str += sl_str_diff; - err = get_subexp_sub (mctx, sub_top, sub_last, bkref_node, - bkref_str_idx); - - /* Reload buf, since the preceding call might have reallocated - the buffer. */ - buf = (const char *) re_string_get_buffer (&mctx->input); - - if (err == REG_NOMATCH) - continue; - if (__glibc_unlikely (err != REG_NOERROR)) - return err; - } - - if (sub_last_idx < sub_top->nlasts) - continue; - if (sub_last_idx > 0) - ++sl_str; - /* Then, search for the other last nodes of the sub expression. */ - for (; sl_str <= bkref_str_idx; ++sl_str) - { - Idx cls_node; - regoff_t sl_str_off; - const re_node_set *nodes; - sl_str_off = sl_str - sub_top->str_idx; - /* The matched string by the sub expression match with the substring - at the back reference? */ - if (sl_str_off > 0) - { - if (__glibc_unlikely (bkref_str_off >= mctx->input.valid_len)) - { - /* If we are at the end of the input, we cannot match. */ - if (bkref_str_off >= mctx->input.len) - break; - - err = extend_buffers (mctx, bkref_str_off + 1); - if (__glibc_unlikely (err != REG_NOERROR)) - return err; - - buf = (const char *) re_string_get_buffer (&mctx->input); - } - if (buf [bkref_str_off++] != buf[sl_str - 1]) - break; /* We don't need to search this sub expression - any more. */ - } - if (mctx->state_log[sl_str] == NULL) - continue; - /* Does this state have a ')' of the sub expression? */ - nodes = &mctx->state_log[sl_str]->nodes; - cls_node = find_subexp_node (dfa, nodes, subexp_num, - OP_CLOSE_SUBEXP); - if (cls_node == -1) - continue; /* No. */ - if (sub_top->path == NULL) - { - sub_top->path = calloc (sizeof (state_array_t), - sl_str - sub_top->str_idx + 1); - if (sub_top->path == NULL) - return REG_ESPACE; - } - /* Can the OP_OPEN_SUBEXP node arrive the OP_CLOSE_SUBEXP node - in the current context? */ - err = check_arrival (mctx, sub_top->path, sub_top->node, - sub_top->str_idx, cls_node, sl_str, - OP_CLOSE_SUBEXP); - if (err == REG_NOMATCH) - continue; - if (__glibc_unlikely (err != REG_NOERROR)) - return err; - sub_last = match_ctx_add_sublast (sub_top, cls_node, sl_str); - if (__glibc_unlikely (sub_last == NULL)) - return REG_ESPACE; - err = get_subexp_sub (mctx, sub_top, sub_last, bkref_node, - bkref_str_idx); - buf = (const char *) re_string_get_buffer (&mctx->input); - if (err == REG_NOMATCH) - continue; - if (__glibc_unlikely (err != REG_NOERROR)) - return err; - } - } - return REG_NOERROR; -} - -/* Helper functions for get_subexp(). */ - -/* Check SUB_LAST can arrive to the back reference BKREF_NODE at BKREF_STR. - If it can arrive, register the sub expression expressed with SUB_TOP - and SUB_LAST. */ - -static reg_errcode_t -get_subexp_sub (re_match_context_t *mctx, const re_sub_match_top_t *sub_top, - re_sub_match_last_t *sub_last, Idx bkref_node, Idx bkref_str) -{ - reg_errcode_t err; - Idx to_idx; - /* Can the subexpression arrive the back reference? */ - err = check_arrival (mctx, &sub_last->path, sub_last->node, - sub_last->str_idx, bkref_node, bkref_str, - OP_OPEN_SUBEXP); - if (err != REG_NOERROR) - return err; - err = match_ctx_add_entry (mctx, bkref_node, bkref_str, sub_top->str_idx, - sub_last->str_idx); - if (__glibc_unlikely (err != REG_NOERROR)) - return err; - to_idx = bkref_str + sub_last->str_idx - sub_top->str_idx; - return clean_state_log_if_needed (mctx, to_idx); -} - -/* Find the first node which is '(' or ')' and whose index is SUBEXP_IDX. - Search '(' if FL_OPEN, or search ')' otherwise. - TODO: This function isn't efficient... - Because there might be more than one nodes whose types are - OP_OPEN_SUBEXP and whose index is SUBEXP_IDX, we must check all - nodes. - E.g. RE: (a){2} */ - -static Idx -find_subexp_node (const re_dfa_t *dfa, const re_node_set *nodes, - Idx subexp_idx, int type) -{ - Idx cls_idx; - for (cls_idx = 0; cls_idx < nodes->nelem; ++cls_idx) - { - Idx cls_node = nodes->elems[cls_idx]; - const re_token_t *node = dfa->nodes + cls_node; - if (node->type == type - && node->opr.idx == subexp_idx) - return cls_node; - } - return -1; -} - -/* Check whether the node TOP_NODE at TOP_STR can arrive to the node - LAST_NODE at LAST_STR. We record the path onto PATH since it will be - heavily reused. - Return REG_NOERROR if it can arrive, or REG_NOMATCH otherwise. */ - -static reg_errcode_t -__attribute_warn_unused_result__ -check_arrival (re_match_context_t *mctx, state_array_t *path, Idx top_node, - Idx top_str, Idx last_node, Idx last_str, int type) -{ - const re_dfa_t *const dfa = mctx->dfa; - reg_errcode_t err = REG_NOERROR; - Idx subexp_num, backup_cur_idx, str_idx, null_cnt; - re_dfastate_t *cur_state = NULL; - re_node_set *cur_nodes, next_nodes; - re_dfastate_t **backup_state_log; - unsigned int context; - - subexp_num = dfa->nodes[top_node].opr.idx; - /* Extend the buffer if we need. */ - if (__glibc_unlikely (path->alloc < last_str + mctx->max_mb_elem_len + 1)) - { - re_dfastate_t **new_array; - Idx old_alloc = path->alloc; - Idx incr_alloc = last_str + mctx->max_mb_elem_len + 1; - Idx new_alloc; - if (__glibc_unlikely (IDX_MAX - old_alloc < incr_alloc)) - return REG_ESPACE; - new_alloc = old_alloc + incr_alloc; - if (__glibc_unlikely (SIZE_MAX / sizeof (re_dfastate_t *) < new_alloc)) - return REG_ESPACE; - new_array = re_realloc (path->array, re_dfastate_t *, new_alloc); - if (__glibc_unlikely (new_array == NULL)) - return REG_ESPACE; - path->array = new_array; - path->alloc = new_alloc; - memset (new_array + old_alloc, '\0', - sizeof (re_dfastate_t *) * (path->alloc - old_alloc)); - } - - str_idx = path->next_idx ? path->next_idx : top_str; - - /* Temporary modify MCTX. */ - backup_state_log = mctx->state_log; - backup_cur_idx = mctx->input.cur_idx; - mctx->state_log = path->array; - mctx->input.cur_idx = str_idx; - - /* Setup initial node set. */ - context = re_string_context_at (&mctx->input, str_idx - 1, mctx->eflags); - if (str_idx == top_str) - { - err = re_node_set_init_1 (&next_nodes, top_node); - if (__glibc_unlikely (err != REG_NOERROR)) - return err; - err = check_arrival_expand_ecl (dfa, &next_nodes, subexp_num, type); - if (__glibc_unlikely (err != REG_NOERROR)) - { - re_node_set_free (&next_nodes); - return err; - } - } - else - { - cur_state = mctx->state_log[str_idx]; - if (cur_state && cur_state->has_backref) - { - err = re_node_set_init_copy (&next_nodes, &cur_state->nodes); - if (__glibc_unlikely (err != REG_NOERROR)) - return err; - } - else - re_node_set_init_empty (&next_nodes); - } - if (str_idx == top_str || (cur_state && cur_state->has_backref)) - { - if (next_nodes.nelem) - { - err = expand_bkref_cache (mctx, &next_nodes, str_idx, - subexp_num, type); - if (__glibc_unlikely (err != REG_NOERROR)) - { - re_node_set_free (&next_nodes); - return err; - } - } - cur_state = re_acquire_state_context (&err, dfa, &next_nodes, context); - if (__glibc_unlikely (cur_state == NULL && err != REG_NOERROR)) - { - re_node_set_free (&next_nodes); - return err; - } - mctx->state_log[str_idx] = cur_state; - } - - for (null_cnt = 0; str_idx < last_str && null_cnt <= mctx->max_mb_elem_len;) - { - re_node_set_empty (&next_nodes); - if (mctx->state_log[str_idx + 1]) - { - err = re_node_set_merge (&next_nodes, - &mctx->state_log[str_idx + 1]->nodes); - if (__glibc_unlikely (err != REG_NOERROR)) - { - re_node_set_free (&next_nodes); - return err; - } - } - if (cur_state) - { - err = check_arrival_add_next_nodes (mctx, str_idx, - &cur_state->non_eps_nodes, - &next_nodes); - if (__glibc_unlikely (err != REG_NOERROR)) - { - re_node_set_free (&next_nodes); - return err; - } - } - ++str_idx; - if (next_nodes.nelem) - { - err = check_arrival_expand_ecl (dfa, &next_nodes, subexp_num, type); - if (__glibc_unlikely (err != REG_NOERROR)) - { - re_node_set_free (&next_nodes); - return err; - } - err = expand_bkref_cache (mctx, &next_nodes, str_idx, - subexp_num, type); - if (__glibc_unlikely (err != REG_NOERROR)) - { - re_node_set_free (&next_nodes); - return err; - } - } - context = re_string_context_at (&mctx->input, str_idx - 1, mctx->eflags); - cur_state = re_acquire_state_context (&err, dfa, &next_nodes, context); - if (__glibc_unlikely (cur_state == NULL && err != REG_NOERROR)) - { - re_node_set_free (&next_nodes); - return err; - } - mctx->state_log[str_idx] = cur_state; - null_cnt = cur_state == NULL ? null_cnt + 1 : 0; - } - re_node_set_free (&next_nodes); - cur_nodes = (mctx->state_log[last_str] == NULL ? NULL - : &mctx->state_log[last_str]->nodes); - path->next_idx = str_idx; - - /* Fix MCTX. */ - mctx->state_log = backup_state_log; - mctx->input.cur_idx = backup_cur_idx; - - /* Then check the current node set has the node LAST_NODE. */ - if (cur_nodes != NULL && re_node_set_contains (cur_nodes, last_node)) - return REG_NOERROR; - - return REG_NOMATCH; -} - -/* Helper functions for check_arrival. */ - -/* Calculate the destination nodes of CUR_NODES at STR_IDX, and append them - to NEXT_NODES. - TODO: This function is similar to the functions transit_state*(), - however this function has many additional works. - Can't we unify them? */ - -static reg_errcode_t -__attribute_warn_unused_result__ -check_arrival_add_next_nodes (re_match_context_t *mctx, Idx str_idx, - re_node_set *cur_nodes, re_node_set *next_nodes) -{ - const re_dfa_t *const dfa = mctx->dfa; - bool ok; - Idx cur_idx; -#ifdef RE_ENABLE_I18N - reg_errcode_t err = REG_NOERROR; -#endif - re_node_set union_set; - re_node_set_init_empty (&union_set); - for (cur_idx = 0; cur_idx < cur_nodes->nelem; ++cur_idx) - { - int naccepted = 0; - Idx cur_node = cur_nodes->elems[cur_idx]; -#ifdef DEBUG - re_token_type_t type = dfa->nodes[cur_node].type; - assert (!IS_EPSILON_NODE (type)); -#endif -#ifdef RE_ENABLE_I18N - /* If the node may accept "multi byte". */ - if (dfa->nodes[cur_node].accept_mb) - { - naccepted = check_node_accept_bytes (dfa, cur_node, &mctx->input, - str_idx); - if (naccepted > 1) - { - re_dfastate_t *dest_state; - Idx next_node = dfa->nexts[cur_node]; - Idx next_idx = str_idx + naccepted; - dest_state = mctx->state_log[next_idx]; - re_node_set_empty (&union_set); - if (dest_state) - { - err = re_node_set_merge (&union_set, &dest_state->nodes); - if (__glibc_unlikely (err != REG_NOERROR)) - { - re_node_set_free (&union_set); - return err; - } - } - ok = re_node_set_insert (&union_set, next_node); - if (__glibc_unlikely (! ok)) - { - re_node_set_free (&union_set); - return REG_ESPACE; - } - mctx->state_log[next_idx] = re_acquire_state (&err, dfa, - &union_set); - if (__glibc_unlikely (mctx->state_log[next_idx] == NULL - && err != REG_NOERROR)) - { - re_node_set_free (&union_set); - return err; - } - } - } -#endif /* RE_ENABLE_I18N */ - if (naccepted - || check_node_accept (mctx, dfa->nodes + cur_node, str_idx)) - { - ok = re_node_set_insert (next_nodes, dfa->nexts[cur_node]); - if (__glibc_unlikely (! ok)) - { - re_node_set_free (&union_set); - return REG_ESPACE; - } - } - } - re_node_set_free (&union_set); - return REG_NOERROR; -} - -/* For all the nodes in CUR_NODES, add the epsilon closures of them to - CUR_NODES, however exclude the nodes which are: - - inside the sub expression whose number is EX_SUBEXP, if FL_OPEN. - - out of the sub expression whose number is EX_SUBEXP, if !FL_OPEN. -*/ - -static reg_errcode_t -check_arrival_expand_ecl (const re_dfa_t *dfa, re_node_set *cur_nodes, - Idx ex_subexp, int type) -{ - reg_errcode_t err; - Idx idx, outside_node; - re_node_set new_nodes; -#ifdef DEBUG - assert (cur_nodes->nelem); -#endif - err = re_node_set_alloc (&new_nodes, cur_nodes->nelem); - if (__glibc_unlikely (err != REG_NOERROR)) - return err; - /* Create a new node set NEW_NODES with the nodes which are epsilon - closures of the node in CUR_NODES. */ - - for (idx = 0; idx < cur_nodes->nelem; ++idx) - { - Idx cur_node = cur_nodes->elems[idx]; - const re_node_set *eclosure = dfa->eclosures + cur_node; - outside_node = find_subexp_node (dfa, eclosure, ex_subexp, type); - if (outside_node == -1) - { - /* There are no problematic nodes, just merge them. */ - err = re_node_set_merge (&new_nodes, eclosure); - if (__glibc_unlikely (err != REG_NOERROR)) - { - re_node_set_free (&new_nodes); - return err; - } - } - else - { - /* There are problematic nodes, re-calculate incrementally. */ - err = check_arrival_expand_ecl_sub (dfa, &new_nodes, cur_node, - ex_subexp, type); - if (__glibc_unlikely (err != REG_NOERROR)) - { - re_node_set_free (&new_nodes); - return err; - } - } - } - re_node_set_free (cur_nodes); - *cur_nodes = new_nodes; - return REG_NOERROR; -} - -/* Helper function for check_arrival_expand_ecl. - Check incrementally the epsilon closure of TARGET, and if it isn't - problematic append it to DST_NODES. */ - -static reg_errcode_t -__attribute_warn_unused_result__ -check_arrival_expand_ecl_sub (const re_dfa_t *dfa, re_node_set *dst_nodes, - Idx target, Idx ex_subexp, int type) -{ - Idx cur_node; - for (cur_node = target; !re_node_set_contains (dst_nodes, cur_node);) - { - bool ok; - - if (dfa->nodes[cur_node].type == type - && dfa->nodes[cur_node].opr.idx == ex_subexp) - { - if (type == OP_CLOSE_SUBEXP) - { - ok = re_node_set_insert (dst_nodes, cur_node); - if (__glibc_unlikely (! ok)) - return REG_ESPACE; - } - break; - } - ok = re_node_set_insert (dst_nodes, cur_node); - if (__glibc_unlikely (! ok)) - return REG_ESPACE; - if (dfa->edests[cur_node].nelem == 0) - break; - if (dfa->edests[cur_node].nelem == 2) - { - reg_errcode_t err; - err = check_arrival_expand_ecl_sub (dfa, dst_nodes, - dfa->edests[cur_node].elems[1], - ex_subexp, type); - if (__glibc_unlikely (err != REG_NOERROR)) - return err; - } - cur_node = dfa->edests[cur_node].elems[0]; - } - return REG_NOERROR; -} - - -/* For all the back references in the current state, calculate the - destination of the back references by the appropriate entry - in MCTX->BKREF_ENTS. */ - -static reg_errcode_t -__attribute_warn_unused_result__ -expand_bkref_cache (re_match_context_t *mctx, re_node_set *cur_nodes, - Idx cur_str, Idx subexp_num, int type) -{ - const re_dfa_t *const dfa = mctx->dfa; - reg_errcode_t err; - Idx cache_idx_start = search_cur_bkref_entry (mctx, cur_str); - struct re_backref_cache_entry *ent; - - if (cache_idx_start == -1) - return REG_NOERROR; - - restart: - ent = mctx->bkref_ents + cache_idx_start; - do - { - Idx to_idx, next_node; - - /* Is this entry ENT is appropriate? */ - if (!re_node_set_contains (cur_nodes, ent->node)) - continue; /* No. */ - - to_idx = cur_str + ent->subexp_to - ent->subexp_from; - /* Calculate the destination of the back reference, and append it - to MCTX->STATE_LOG. */ - if (to_idx == cur_str) - { - /* The backreference did epsilon transit, we must re-check all the - node in the current state. */ - re_node_set new_dests; - reg_errcode_t err2, err3; - next_node = dfa->edests[ent->node].elems[0]; - if (re_node_set_contains (cur_nodes, next_node)) - continue; - err = re_node_set_init_1 (&new_dests, next_node); - err2 = check_arrival_expand_ecl (dfa, &new_dests, subexp_num, type); - err3 = re_node_set_merge (cur_nodes, &new_dests); - re_node_set_free (&new_dests); - if (__glibc_unlikely (err != REG_NOERROR || err2 != REG_NOERROR - || err3 != REG_NOERROR)) - { - err = (err != REG_NOERROR ? err - : (err2 != REG_NOERROR ? err2 : err3)); - return err; - } - /* TODO: It is still inefficient... */ - goto restart; - } - else - { - re_node_set union_set; - next_node = dfa->nexts[ent->node]; - if (mctx->state_log[to_idx]) - { - bool ok; - if (re_node_set_contains (&mctx->state_log[to_idx]->nodes, - next_node)) - continue; - err = re_node_set_init_copy (&union_set, - &mctx->state_log[to_idx]->nodes); - ok = re_node_set_insert (&union_set, next_node); - if (__glibc_unlikely (err != REG_NOERROR || ! ok)) - { - re_node_set_free (&union_set); - err = err != REG_NOERROR ? err : REG_ESPACE; - return err; - } - } - else - { - err = re_node_set_init_1 (&union_set, next_node); - if (__glibc_unlikely (err != REG_NOERROR)) - return err; - } - mctx->state_log[to_idx] = re_acquire_state (&err, dfa, &union_set); - re_node_set_free (&union_set); - if (__glibc_unlikely (mctx->state_log[to_idx] == NULL - && err != REG_NOERROR)) - return err; - } - } - while (ent++->more); - return REG_NOERROR; -} - -/* Build transition table for the state. - Return true if successful. */ - -static bool -build_trtable (const re_dfa_t *dfa, re_dfastate_t *state) -{ - reg_errcode_t err; - Idx i, j; - int ch; - bool need_word_trtable = false; - bitset_word_t elem, mask; - bool dests_node_malloced = false; - bool dest_states_malloced = false; - Idx ndests; /* Number of the destination states from 'state'. */ - re_dfastate_t **trtable; - re_dfastate_t **dest_states = NULL, **dest_states_word, **dest_states_nl; - re_node_set follows, *dests_node; - bitset_t *dests_ch; - bitset_t acceptable; - - struct dests_alloc - { - re_node_set dests_node[SBC_MAX]; - bitset_t dests_ch[SBC_MAX]; - } *dests_alloc; - - /* We build DFA states which corresponds to the destination nodes - from 'state'. 'dests_node[i]' represents the nodes which i-th - destination state contains, and 'dests_ch[i]' represents the - characters which i-th destination state accepts. */ - if (__libc_use_alloca (sizeof (struct dests_alloc))) - dests_alloc = (struct dests_alloc *) alloca (sizeof (struct dests_alloc)); - else - { - dests_alloc = re_malloc (struct dests_alloc, 1); - if (__glibc_unlikely (dests_alloc == NULL)) - return false; - dests_node_malloced = true; - } - dests_node = dests_alloc->dests_node; - dests_ch = dests_alloc->dests_ch; - - /* Initialize transition table. */ - state->word_trtable = state->trtable = NULL; - - /* At first, group all nodes belonging to 'state' into several - destinations. */ - ndests = group_nodes_into_DFAstates (dfa, state, dests_node, dests_ch); - if (__glibc_unlikely (ndests <= 0)) - { - if (dests_node_malloced) - re_free (dests_alloc); - /* Return false in case of an error, true otherwise. */ - if (ndests == 0) - { - state->trtable = (re_dfastate_t **) - calloc (sizeof (re_dfastate_t *), SBC_MAX); - if (__glibc_unlikely (state->trtable == NULL)) - return false; - return true; - } - return false; - } - - err = re_node_set_alloc (&follows, ndests + 1); - if (__glibc_unlikely (err != REG_NOERROR)) - goto out_free; - - /* Avoid arithmetic overflow in size calculation. */ - size_t ndests_max - = ((SIZE_MAX - (sizeof (re_node_set) + sizeof (bitset_t)) * SBC_MAX) - / (3 * sizeof (re_dfastate_t *))); - if (__glibc_unlikely (ndests_max < ndests)) - goto out_free; - - if (__libc_use_alloca ((sizeof (re_node_set) + sizeof (bitset_t)) * SBC_MAX - + ndests * 3 * sizeof (re_dfastate_t *))) - dest_states = (re_dfastate_t **) - alloca (ndests * 3 * sizeof (re_dfastate_t *)); - else - { - dest_states = re_malloc (re_dfastate_t *, ndests * 3); - if (__glibc_unlikely (dest_states == NULL)) - { -out_free: - if (dest_states_malloced) - re_free (dest_states); - re_node_set_free (&follows); - for (i = 0; i < ndests; ++i) - re_node_set_free (dests_node + i); - if (dests_node_malloced) - re_free (dests_alloc); - return false; - } - dest_states_malloced = true; - } - dest_states_word = dest_states + ndests; - dest_states_nl = dest_states_word + ndests; - bitset_empty (acceptable); - - /* Then build the states for all destinations. */ - for (i = 0; i < ndests; ++i) - { - Idx next_node; - re_node_set_empty (&follows); - /* Merge the follows of this destination states. */ - for (j = 0; j < dests_node[i].nelem; ++j) - { - next_node = dfa->nexts[dests_node[i].elems[j]]; - if (next_node != -1) - { - err = re_node_set_merge (&follows, dfa->eclosures + next_node); - if (__glibc_unlikely (err != REG_NOERROR)) - goto out_free; - } - } - dest_states[i] = re_acquire_state_context (&err, dfa, &follows, 0); - if (__glibc_unlikely (dest_states[i] == NULL && err != REG_NOERROR)) - goto out_free; - /* If the new state has context constraint, - build appropriate states for these contexts. */ - if (dest_states[i]->has_constraint) - { - dest_states_word[i] = re_acquire_state_context (&err, dfa, &follows, - CONTEXT_WORD); - if (__glibc_unlikely (dest_states_word[i] == NULL - && err != REG_NOERROR)) - goto out_free; - - if (dest_states[i] != dest_states_word[i] && dfa->mb_cur_max > 1) - need_word_trtable = true; - - dest_states_nl[i] = re_acquire_state_context (&err, dfa, &follows, - CONTEXT_NEWLINE); - if (__glibc_unlikely (dest_states_nl[i] == NULL && err != REG_NOERROR)) - goto out_free; - } - else - { - dest_states_word[i] = dest_states[i]; - dest_states_nl[i] = dest_states[i]; - } - bitset_merge (acceptable, dests_ch[i]); - } - - if (!__glibc_unlikely (need_word_trtable)) - { - /* We don't care about whether the following character is a word - character, or we are in a single-byte character set so we can - discern by looking at the character code: allocate a - 256-entry transition table. */ - trtable = state->trtable = - (re_dfastate_t **) calloc (sizeof (re_dfastate_t *), SBC_MAX); - if (__glibc_unlikely (trtable == NULL)) - goto out_free; - - /* For all characters ch...: */ - for (i = 0; i < BITSET_WORDS; ++i) - for (ch = i * BITSET_WORD_BITS, elem = acceptable[i], mask = 1; - elem; - mask <<= 1, elem >>= 1, ++ch) - if (__glibc_unlikely (elem & 1)) - { - /* There must be exactly one destination which accepts - character ch. See group_nodes_into_DFAstates. */ - for (j = 0; (dests_ch[j][i] & mask) == 0; ++j) - ; - - /* j-th destination accepts the word character ch. */ - if (dfa->word_char[i] & mask) - trtable[ch] = dest_states_word[j]; - else - trtable[ch] = dest_states[j]; - } - } - else - { - /* We care about whether the following character is a word - character, and we are in a multi-byte character set: discern - by looking at the character code: build two 256-entry - transition tables, one starting at trtable[0] and one - starting at trtable[SBC_MAX]. */ - trtable = state->word_trtable = - (re_dfastate_t **) calloc (sizeof (re_dfastate_t *), 2 * SBC_MAX); - if (__glibc_unlikely (trtable == NULL)) - goto out_free; - - /* For all characters ch...: */ - for (i = 0; i < BITSET_WORDS; ++i) - for (ch = i * BITSET_WORD_BITS, elem = acceptable[i], mask = 1; - elem; - mask <<= 1, elem >>= 1, ++ch) - if (__glibc_unlikely (elem & 1)) - { - /* There must be exactly one destination which accepts - character ch. See group_nodes_into_DFAstates. */ - for (j = 0; (dests_ch[j][i] & mask) == 0; ++j) - ; - - /* j-th destination accepts the word character ch. */ - trtable[ch] = dest_states[j]; - trtable[ch + SBC_MAX] = dest_states_word[j]; - } - } - - /* new line */ - if (bitset_contain (acceptable, NEWLINE_CHAR)) - { - /* The current state accepts newline character. */ - for (j = 0; j < ndests; ++j) - if (bitset_contain (dests_ch[j], NEWLINE_CHAR)) - { - /* k-th destination accepts newline character. */ - trtable[NEWLINE_CHAR] = dest_states_nl[j]; - if (need_word_trtable) - trtable[NEWLINE_CHAR + SBC_MAX] = dest_states_nl[j]; - /* There must be only one destination which accepts - newline. See group_nodes_into_DFAstates. */ - break; - } - } - - if (dest_states_malloced) - re_free (dest_states); - - re_node_set_free (&follows); - for (i = 0; i < ndests; ++i) - re_node_set_free (dests_node + i); - - if (dests_node_malloced) - re_free (dests_alloc); - - return true; -} - -/* Group all nodes belonging to STATE into several destinations. - Then for all destinations, set the nodes belonging to the destination - to DESTS_NODE[i] and set the characters accepted by the destination - to DEST_CH[i]. This function return the number of destinations. */ - -static Idx -group_nodes_into_DFAstates (const re_dfa_t *dfa, const re_dfastate_t *state, - re_node_set *dests_node, bitset_t *dests_ch) -{ - reg_errcode_t err; - bool ok; - Idx i, j, k; - Idx ndests; /* Number of the destinations from 'state'. */ - bitset_t accepts; /* Characters a node can accept. */ - const re_node_set *cur_nodes = &state->nodes; - bitset_empty (accepts); - ndests = 0; - - /* For all the nodes belonging to 'state', */ - for (i = 0; i < cur_nodes->nelem; ++i) - { - re_token_t *node = &dfa->nodes[cur_nodes->elems[i]]; - re_token_type_t type = node->type; - unsigned int constraint = node->constraint; - - /* Enumerate all single byte character this node can accept. */ - if (type == CHARACTER) - bitset_set (accepts, node->opr.c); - else if (type == SIMPLE_BRACKET) - { - bitset_merge (accepts, node->opr.sbcset); - } - else if (type == OP_PERIOD) - { -#ifdef RE_ENABLE_I18N - if (dfa->mb_cur_max > 1) - bitset_merge (accepts, dfa->sb_char); - else -#endif - bitset_set_all (accepts); - if (!(dfa->syntax & RE_DOT_NEWLINE)) - bitset_clear (accepts, '\n'); - if (dfa->syntax & RE_DOT_NOT_NULL) - bitset_clear (accepts, '\0'); - } -#ifdef RE_ENABLE_I18N - else if (type == OP_UTF8_PERIOD) - { - if (ASCII_CHARS % BITSET_WORD_BITS == 0) - memset (accepts, -1, ASCII_CHARS / CHAR_BIT); - else - bitset_merge (accepts, utf8_sb_map); - if (!(dfa->syntax & RE_DOT_NEWLINE)) - bitset_clear (accepts, '\n'); - if (dfa->syntax & RE_DOT_NOT_NULL) - bitset_clear (accepts, '\0'); - } -#endif - else - continue; - - /* Check the 'accepts' and sift the characters which are not - match it the context. */ - if (constraint) - { - if (constraint & NEXT_NEWLINE_CONSTRAINT) - { - bool accepts_newline = bitset_contain (accepts, NEWLINE_CHAR); - bitset_empty (accepts); - if (accepts_newline) - bitset_set (accepts, NEWLINE_CHAR); - else - continue; - } - if (constraint & NEXT_ENDBUF_CONSTRAINT) - { - bitset_empty (accepts); - continue; - } - - if (constraint & NEXT_WORD_CONSTRAINT) - { - bitset_word_t any_set = 0; - if (type == CHARACTER && !node->word_char) - { - bitset_empty (accepts); - continue; - } -#ifdef RE_ENABLE_I18N - if (dfa->mb_cur_max > 1) - for (j = 0; j < BITSET_WORDS; ++j) - any_set |= (accepts[j] &= (dfa->word_char[j] | ~dfa->sb_char[j])); - else -#endif - for (j = 0; j < BITSET_WORDS; ++j) - any_set |= (accepts[j] &= dfa->word_char[j]); - if (!any_set) - continue; - } - if (constraint & NEXT_NOTWORD_CONSTRAINT) - { - bitset_word_t any_set = 0; - if (type == CHARACTER && node->word_char) - { - bitset_empty (accepts); - continue; - } -#ifdef RE_ENABLE_I18N - if (dfa->mb_cur_max > 1) - for (j = 0; j < BITSET_WORDS; ++j) - any_set |= (accepts[j] &= ~(dfa->word_char[j] & dfa->sb_char[j])); - else -#endif - for (j = 0; j < BITSET_WORDS; ++j) - any_set |= (accepts[j] &= ~dfa->word_char[j]); - if (!any_set) - continue; - } - } - - /* Then divide 'accepts' into DFA states, or create a new - state. Above, we make sure that accepts is not empty. */ - for (j = 0; j < ndests; ++j) - { - bitset_t intersec; /* Intersection sets, see below. */ - bitset_t remains; - /* Flags, see below. */ - bitset_word_t has_intersec, not_subset, not_consumed; - - /* Optimization, skip if this state doesn't accept the character. */ - if (type == CHARACTER && !bitset_contain (dests_ch[j], node->opr.c)) - continue; - - /* Enumerate the intersection set of this state and 'accepts'. */ - has_intersec = 0; - for (k = 0; k < BITSET_WORDS; ++k) - has_intersec |= intersec[k] = accepts[k] & dests_ch[j][k]; - /* And skip if the intersection set is empty. */ - if (!has_intersec) - continue; - - /* Then check if this state is a subset of 'accepts'. */ - not_subset = not_consumed = 0; - for (k = 0; k < BITSET_WORDS; ++k) - { - not_subset |= remains[k] = ~accepts[k] & dests_ch[j][k]; - not_consumed |= accepts[k] = accepts[k] & ~dests_ch[j][k]; - } - - /* If this state isn't a subset of 'accepts', create a - new group state, which has the 'remains'. */ - if (not_subset) - { - bitset_copy (dests_ch[ndests], remains); - bitset_copy (dests_ch[j], intersec); - err = re_node_set_init_copy (dests_node + ndests, &dests_node[j]); - if (__glibc_unlikely (err != REG_NOERROR)) - goto error_return; - ++ndests; - } - - /* Put the position in the current group. */ - ok = re_node_set_insert (&dests_node[j], cur_nodes->elems[i]); - if (__glibc_unlikely (! ok)) - goto error_return; - - /* If all characters are consumed, go to next node. */ - if (!not_consumed) - break; - } - /* Some characters remain, create a new group. */ - if (j == ndests) - { - bitset_copy (dests_ch[ndests], accepts); - err = re_node_set_init_1 (dests_node + ndests, cur_nodes->elems[i]); - if (__glibc_unlikely (err != REG_NOERROR)) - goto error_return; - ++ndests; - bitset_empty (accepts); - } - } - return ndests; - error_return: - for (j = 0; j < ndests; ++j) - re_node_set_free (dests_node + j); - return -1; -} - -#ifdef RE_ENABLE_I18N -/* Check how many bytes the node 'dfa->nodes[node_idx]' accepts. - Return the number of the bytes the node accepts. - STR_IDX is the current index of the input string. - - This function handles the nodes which can accept one character, or - one collating element like '.', '[a-z]', opposite to the other nodes - can only accept one byte. */ - -# ifdef _LIBC -# include -# endif - -static int -check_node_accept_bytes (const re_dfa_t *dfa, Idx node_idx, - const re_string_t *input, Idx str_idx) -{ - const re_token_t *node = dfa->nodes + node_idx; - int char_len, elem_len; - Idx i; - - if (__glibc_unlikely (node->type == OP_UTF8_PERIOD)) - { - unsigned char c = re_string_byte_at (input, str_idx), d; - if (__glibc_likely (c < 0xc2)) - return 0; - - if (str_idx + 2 > input->len) - return 0; - - d = re_string_byte_at (input, str_idx + 1); - if (c < 0xe0) - return (d < 0x80 || d > 0xbf) ? 0 : 2; - else if (c < 0xf0) - { - char_len = 3; - if (c == 0xe0 && d < 0xa0) - return 0; - } - else if (c < 0xf8) - { - char_len = 4; - if (c == 0xf0 && d < 0x90) - return 0; - } - else if (c < 0xfc) - { - char_len = 5; - if (c == 0xf8 && d < 0x88) - return 0; - } - else if (c < 0xfe) - { - char_len = 6; - if (c == 0xfc && d < 0x84) - return 0; - } - else - return 0; - - if (str_idx + char_len > input->len) - return 0; - - for (i = 1; i < char_len; ++i) - { - d = re_string_byte_at (input, str_idx + i); - if (d < 0x80 || d > 0xbf) - return 0; - } - return char_len; - } - - char_len = re_string_char_size_at (input, str_idx); - if (node->type == OP_PERIOD) - { - if (char_len <= 1) - return 0; - /* FIXME: I don't think this if is needed, as both '\n' - and '\0' are char_len == 1. */ - /* '.' accepts any one character except the following two cases. */ - if ((!(dfa->syntax & RE_DOT_NEWLINE) && - re_string_byte_at (input, str_idx) == '\n') || - ((dfa->syntax & RE_DOT_NOT_NULL) && - re_string_byte_at (input, str_idx) == '\0')) - return 0; - return char_len; - } - - elem_len = re_string_elem_size_at (input, str_idx); - if ((elem_len <= 1 && char_len <= 1) || char_len == 0) - return 0; - - if (node->type == COMPLEX_BRACKET) - { - const re_charset_t *cset = node->opr.mbcset; -# ifdef _LIBC - const unsigned char *pin - = ((const unsigned char *) re_string_get_buffer (input) + str_idx); - Idx j; - uint32_t nrules; -# endif /* _LIBC */ - int match_len = 0; - wchar_t wc = ((cset->nranges || cset->nchar_classes || cset->nmbchars) - ? re_string_wchar_at (input, str_idx) : 0); - - /* match with multibyte character? */ - for (i = 0; i < cset->nmbchars; ++i) - if (wc == cset->mbchars[i]) - { - match_len = char_len; - goto check_node_accept_bytes_match; - } - /* match with character_class? */ - for (i = 0; i < cset->nchar_classes; ++i) - { - wctype_t wt = cset->char_classes[i]; - if (__iswctype (wc, wt)) - { - match_len = char_len; - goto check_node_accept_bytes_match; - } - } - -# ifdef _LIBC - nrules = _NL_CURRENT_WORD (LC_COLLATE, _NL_COLLATE_NRULES); - if (nrules != 0) - { - unsigned int in_collseq = 0; - const int32_t *table, *indirect; - const unsigned char *weights, *extra; - const char *collseqwc; - - /* match with collating_symbol? */ - if (cset->ncoll_syms) - extra = (const unsigned char *) - _NL_CURRENT (LC_COLLATE, _NL_COLLATE_SYMB_EXTRAMB); - for (i = 0; i < cset->ncoll_syms; ++i) - { - const unsigned char *coll_sym = extra + cset->coll_syms[i]; - /* Compare the length of input collating element and - the length of current collating element. */ - if (*coll_sym != elem_len) - continue; - /* Compare each bytes. */ - for (j = 0; j < *coll_sym; j++) - if (pin[j] != coll_sym[1 + j]) - break; - if (j == *coll_sym) - { - /* Match if every bytes is equal. */ - match_len = j; - goto check_node_accept_bytes_match; - } - } - - if (cset->nranges) - { - if (elem_len <= char_len) - { - collseqwc = _NL_CURRENT (LC_COLLATE, _NL_COLLATE_COLLSEQWC); - in_collseq = __collseq_table_lookup (collseqwc, wc); - } - else - in_collseq = find_collation_sequence_value (pin, elem_len); - } - /* match with range expression? */ - /* FIXME: Implement rational ranges here, too. */ - for (i = 0; i < cset->nranges; ++i) - if (cset->range_starts[i] <= in_collseq - && in_collseq <= cset->range_ends[i]) - { - match_len = elem_len; - goto check_node_accept_bytes_match; - } - - /* match with equivalence_class? */ - if (cset->nequiv_classes) - { - const unsigned char *cp = pin; - table = (const int32_t *) - _NL_CURRENT (LC_COLLATE, _NL_COLLATE_TABLEMB); - weights = (const unsigned char *) - _NL_CURRENT (LC_COLLATE, _NL_COLLATE_WEIGHTMB); - extra = (const unsigned char *) - _NL_CURRENT (LC_COLLATE, _NL_COLLATE_EXTRAMB); - indirect = (const int32_t *) - _NL_CURRENT (LC_COLLATE, _NL_COLLATE_INDIRECTMB); - int32_t idx = findidx (table, indirect, extra, &cp, elem_len); - int32_t rule = idx >> 24; - idx &= 0xffffff; - if (idx > 0) - { - size_t weight_len = weights[idx]; - for (i = 0; i < cset->nequiv_classes; ++i) - { - int32_t equiv_class_idx = cset->equiv_classes[i]; - int32_t equiv_class_rule = equiv_class_idx >> 24; - equiv_class_idx &= 0xffffff; - if (weights[equiv_class_idx] == weight_len - && equiv_class_rule == rule - && memcmp (weights + idx + 1, - weights + equiv_class_idx + 1, - weight_len) == 0) - { - match_len = elem_len; - goto check_node_accept_bytes_match; - } - } - } - } - } - else -# endif /* _LIBC */ - { - /* match with range expression? */ - for (i = 0; i < cset->nranges; ++i) - { - if (cset->range_starts[i] <= wc && wc <= cset->range_ends[i]) - { - match_len = char_len; - goto check_node_accept_bytes_match; - } - } - } - check_node_accept_bytes_match: - if (!cset->non_match) - return match_len; - else - { - if (match_len > 0) - return 0; - else - return (elem_len > char_len) ? elem_len : char_len; - } - } - return 0; -} - -# ifdef _LIBC -static unsigned int -find_collation_sequence_value (const unsigned char *mbs, size_t mbs_len) -{ - uint32_t nrules = _NL_CURRENT_WORD (LC_COLLATE, _NL_COLLATE_NRULES); - if (nrules == 0) - { - if (mbs_len == 1) - { - /* No valid character. Match it as a single byte character. */ - const unsigned char *collseq = (const unsigned char *) - _NL_CURRENT (LC_COLLATE, _NL_COLLATE_COLLSEQMB); - return collseq[mbs[0]]; - } - return UINT_MAX; - } - else - { - int32_t idx; - const unsigned char *extra = (const unsigned char *) - _NL_CURRENT (LC_COLLATE, _NL_COLLATE_SYMB_EXTRAMB); - int32_t extrasize = (const unsigned char *) - _NL_CURRENT (LC_COLLATE, _NL_COLLATE_SYMB_EXTRAMB + 1) - extra; - - for (idx = 0; idx < extrasize;) - { - int mbs_cnt; - bool found = false; - int32_t elem_mbs_len; - /* Skip the name of collating element name. */ - idx = idx + extra[idx] + 1; - elem_mbs_len = extra[idx++]; - if (mbs_len == elem_mbs_len) - { - for (mbs_cnt = 0; mbs_cnt < elem_mbs_len; ++mbs_cnt) - if (extra[idx + mbs_cnt] != mbs[mbs_cnt]) - break; - if (mbs_cnt == elem_mbs_len) - /* Found the entry. */ - found = true; - } - /* Skip the byte sequence of the collating element. */ - idx += elem_mbs_len; - /* Adjust for the alignment. */ - idx = (idx + 3) & ~3; - /* Skip the collation sequence value. */ - idx += sizeof (uint32_t); - /* Skip the wide char sequence of the collating element. */ - idx = idx + sizeof (uint32_t) * (*(int32_t *) (extra + idx) + 1); - /* If we found the entry, return the sequence value. */ - if (found) - return *(uint32_t *) (extra + idx); - /* Skip the collation sequence value. */ - idx += sizeof (uint32_t); - } - return UINT_MAX; - } -} -# endif /* _LIBC */ -#endif /* RE_ENABLE_I18N */ - -/* Check whether the node accepts the byte which is IDX-th - byte of the INPUT. */ - -static bool -check_node_accept (const re_match_context_t *mctx, const re_token_t *node, - Idx idx) -{ - unsigned char ch; - ch = re_string_byte_at (&mctx->input, idx); - switch (node->type) - { - case CHARACTER: - if (node->opr.c != ch) - return false; - break; - - case SIMPLE_BRACKET: - if (!bitset_contain (node->opr.sbcset, ch)) - return false; - break; - -#ifdef RE_ENABLE_I18N - case OP_UTF8_PERIOD: - if (ch >= ASCII_CHARS) - return false; - FALLTHROUGH; -#endif - case OP_PERIOD: - if ((ch == '\n' && !(mctx->dfa->syntax & RE_DOT_NEWLINE)) - || (ch == '\0' && (mctx->dfa->syntax & RE_DOT_NOT_NULL))) - return false; - break; - - default: - return false; - } - - if (node->constraint) - { - /* The node has constraints. Check whether the current context - satisfies the constraints. */ - unsigned int context = re_string_context_at (&mctx->input, idx, - mctx->eflags); - if (NOT_SATISFY_NEXT_CONSTRAINT (node->constraint, context)) - return false; - } - - return true; -} - -/* Extend the buffers, if the buffers have run out. */ - -static reg_errcode_t -__attribute_warn_unused_result__ -extend_buffers (re_match_context_t *mctx, int min_len) -{ - reg_errcode_t ret; - re_string_t *pstr = &mctx->input; - - /* Avoid overflow. */ - if (__glibc_unlikely (MIN (IDX_MAX, SIZE_MAX / sizeof (re_dfastate_t *)) / 2 - <= pstr->bufs_len)) - return REG_ESPACE; - - /* Double the lengths of the buffers, but allocate at least MIN_LEN. */ - ret = re_string_realloc_buffers (pstr, - MAX (min_len, - MIN (pstr->len, pstr->bufs_len * 2))); - if (__glibc_unlikely (ret != REG_NOERROR)) - return ret; - - if (mctx->state_log != NULL) - { - /* And double the length of state_log. */ - /* XXX We have no indication of the size of this buffer. If this - allocation fail we have no indication that the state_log array - does not have the right size. */ - re_dfastate_t **new_array = re_realloc (mctx->state_log, re_dfastate_t *, - pstr->bufs_len + 1); - if (__glibc_unlikely (new_array == NULL)) - return REG_ESPACE; - mctx->state_log = new_array; - } - - /* Then reconstruct the buffers. */ - if (pstr->icase) - { -#ifdef RE_ENABLE_I18N - if (pstr->mb_cur_max > 1) - { - ret = build_wcs_upper_buffer (pstr); - if (__glibc_unlikely (ret != REG_NOERROR)) - return ret; - } - else -#endif /* RE_ENABLE_I18N */ - build_upper_buffer (pstr); - } - else - { -#ifdef RE_ENABLE_I18N - if (pstr->mb_cur_max > 1) - build_wcs_buffer (pstr); - else -#endif /* RE_ENABLE_I18N */ - { - if (pstr->trans != NULL) - re_string_translate_buffer (pstr); - } - } - return REG_NOERROR; -} - - -/* Functions for matching context. */ - -/* Initialize MCTX. */ - -static reg_errcode_t -__attribute_warn_unused_result__ -match_ctx_init (re_match_context_t *mctx, int eflags, Idx n) -{ - mctx->eflags = eflags; - mctx->match_last = -1; - if (n > 0) - { - /* Avoid overflow. */ - size_t max_object_size = - MAX (sizeof (struct re_backref_cache_entry), - sizeof (re_sub_match_top_t *)); - if (__glibc_unlikely (MIN (IDX_MAX, SIZE_MAX / max_object_size) < n)) - return REG_ESPACE; - - mctx->bkref_ents = re_malloc (struct re_backref_cache_entry, n); - mctx->sub_tops = re_malloc (re_sub_match_top_t *, n); - if (__glibc_unlikely (mctx->bkref_ents == NULL || mctx->sub_tops == NULL)) - return REG_ESPACE; - } - /* Already zero-ed by the caller. - else - mctx->bkref_ents = NULL; - mctx->nbkref_ents = 0; - mctx->nsub_tops = 0; */ - mctx->abkref_ents = n; - mctx->max_mb_elem_len = 1; - mctx->asub_tops = n; - return REG_NOERROR; -} - -/* Clean the entries which depend on the current input in MCTX. - This function must be invoked when the matcher changes the start index - of the input, or changes the input string. */ - -static void -match_ctx_clean (re_match_context_t *mctx) -{ - Idx st_idx; - for (st_idx = 0; st_idx < mctx->nsub_tops; ++st_idx) - { - Idx sl_idx; - re_sub_match_top_t *top = mctx->sub_tops[st_idx]; - for (sl_idx = 0; sl_idx < top->nlasts; ++sl_idx) - { - re_sub_match_last_t *last = top->lasts[sl_idx]; - re_free (last->path.array); - re_free (last); - } - re_free (top->lasts); - if (top->path) - { - re_free (top->path->array); - re_free (top->path); - } - re_free (top); - } - - mctx->nsub_tops = 0; - mctx->nbkref_ents = 0; -} - -/* Free all the memory associated with MCTX. */ - -static void -match_ctx_free (re_match_context_t *mctx) -{ - /* First, free all the memory associated with MCTX->SUB_TOPS. */ - match_ctx_clean (mctx); - re_free (mctx->sub_tops); - re_free (mctx->bkref_ents); -} - -/* Add a new backreference entry to MCTX. - Note that we assume that caller never call this function with duplicate - entry, and call with STR_IDX which isn't smaller than any existing entry. -*/ - -static reg_errcode_t -__attribute_warn_unused_result__ -match_ctx_add_entry (re_match_context_t *mctx, Idx node, Idx str_idx, Idx from, - Idx to) -{ - if (mctx->nbkref_ents >= mctx->abkref_ents) - { - struct re_backref_cache_entry* new_entry; - new_entry = re_realloc (mctx->bkref_ents, struct re_backref_cache_entry, - mctx->abkref_ents * 2); - if (__glibc_unlikely (new_entry == NULL)) - { - re_free (mctx->bkref_ents); - return REG_ESPACE; - } - mctx->bkref_ents = new_entry; - memset (mctx->bkref_ents + mctx->nbkref_ents, '\0', - sizeof (struct re_backref_cache_entry) * mctx->abkref_ents); - mctx->abkref_ents *= 2; - } - if (mctx->nbkref_ents > 0 - && mctx->bkref_ents[mctx->nbkref_ents - 1].str_idx == str_idx) - mctx->bkref_ents[mctx->nbkref_ents - 1].more = 1; - - mctx->bkref_ents[mctx->nbkref_ents].node = node; - mctx->bkref_ents[mctx->nbkref_ents].str_idx = str_idx; - mctx->bkref_ents[mctx->nbkref_ents].subexp_from = from; - mctx->bkref_ents[mctx->nbkref_ents].subexp_to = to; - - /* This is a cache that saves negative results of check_dst_limits_calc_pos. - If bit N is clear, means that this entry won't epsilon-transition to - an OP_OPEN_SUBEXP or OP_CLOSE_SUBEXP for the N+1-th subexpression. If - it is set, check_dst_limits_calc_pos_1 will recurse and try to find one - such node. - - A backreference does not epsilon-transition unless it is empty, so set - to all zeros if FROM != TO. */ - mctx->bkref_ents[mctx->nbkref_ents].eps_reachable_subexps_map - = (from == to ? -1 : 0); - - mctx->bkref_ents[mctx->nbkref_ents++].more = 0; - if (mctx->max_mb_elem_len < to - from) - mctx->max_mb_elem_len = to - from; - return REG_NOERROR; -} - -/* Return the first entry with the same str_idx, or -1 if none is - found. Note that MCTX->BKREF_ENTS is already sorted by MCTX->STR_IDX. */ - -static Idx -search_cur_bkref_entry (const re_match_context_t *mctx, Idx str_idx) -{ - Idx left, right, mid, last; - last = right = mctx->nbkref_ents; - for (left = 0; left < right;) - { - mid = (left + right) / 2; - if (mctx->bkref_ents[mid].str_idx < str_idx) - left = mid + 1; - else - right = mid; - } - if (left < last && mctx->bkref_ents[left].str_idx == str_idx) - return left; - else - return -1; -} - -/* Register the node NODE, whose type is OP_OPEN_SUBEXP, and which matches - at STR_IDX. */ - -static reg_errcode_t -__attribute_warn_unused_result__ -match_ctx_add_subtop (re_match_context_t *mctx, Idx node, Idx str_idx) -{ -#ifdef DEBUG - assert (mctx->sub_tops != NULL); - assert (mctx->asub_tops > 0); -#endif - if (__glibc_unlikely (mctx->nsub_tops == mctx->asub_tops)) - { - Idx new_asub_tops = mctx->asub_tops * 2; - re_sub_match_top_t **new_array = re_realloc (mctx->sub_tops, - re_sub_match_top_t *, - new_asub_tops); - if (__glibc_unlikely (new_array == NULL)) - return REG_ESPACE; - mctx->sub_tops = new_array; - mctx->asub_tops = new_asub_tops; - } - mctx->sub_tops[mctx->nsub_tops] = calloc (1, sizeof (re_sub_match_top_t)); - if (__glibc_unlikely (mctx->sub_tops[mctx->nsub_tops] == NULL)) - return REG_ESPACE; - mctx->sub_tops[mctx->nsub_tops]->node = node; - mctx->sub_tops[mctx->nsub_tops++]->str_idx = str_idx; - return REG_NOERROR; -} - -/* Register the node NODE, whose type is OP_CLOSE_SUBEXP, and which matches - at STR_IDX, whose corresponding OP_OPEN_SUBEXP is SUB_TOP. */ - -static re_sub_match_last_t * -match_ctx_add_sublast (re_sub_match_top_t *subtop, Idx node, Idx str_idx) -{ - re_sub_match_last_t *new_entry; - if (__glibc_unlikely (subtop->nlasts == subtop->alasts)) - { - Idx new_alasts = 2 * subtop->alasts + 1; - re_sub_match_last_t **new_array = re_realloc (subtop->lasts, - re_sub_match_last_t *, - new_alasts); - if (__glibc_unlikely (new_array == NULL)) - return NULL; - subtop->lasts = new_array; - subtop->alasts = new_alasts; - } - new_entry = calloc (1, sizeof (re_sub_match_last_t)); - if (__glibc_likely (new_entry != NULL)) - { - subtop->lasts[subtop->nlasts] = new_entry; - new_entry->node = node; - new_entry->str_idx = str_idx; - ++subtop->nlasts; - } - return new_entry; -} - -static void -sift_ctx_init (re_sift_context_t *sctx, re_dfastate_t **sifted_sts, - re_dfastate_t **limited_sts, Idx last_node, Idx last_str_idx) -{ - sctx->sifted_states = sifted_sts; - sctx->limited_states = limited_sts; - sctx->last_node = last_node; - sctx->last_str_idx = last_str_idx; - re_node_set_init_empty (&sctx->limits); -} diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/save-cwd.c b/thirdparty/grub-2.04/grub-core/lib/gnulib/save-cwd.c deleted file mode 100644 index a67d95d14..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/save-cwd.c +++ /dev/null @@ -1,97 +0,0 @@ -/* save-cwd.c -- Save and restore current working directory. - - Copyright (C) 1995, 1997-1998, 2003-2006, 2009-2019 Free Software - Foundation, Inc. - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . */ - -/* Written by Jim Meyering. */ - -#include - -#include "save-cwd.h" - -#include -#include -#include -#include -#include - -#include "chdir-long.h" -#include "unistd--.h" - -#if GNULIB_FCNTL_SAFER -# include "fcntl--.h" -#else -# define GNULIB_FCNTL_SAFER 0 -#endif - -/* Record the location of the current working directory in CWD so that - the program may change to other directories and later use restore_cwd - to return to the recorded location. This function may allocate - space using malloc (via getcwd) or leave a file descriptor open; - use free_cwd to perform the necessary free or close. Upon failure, - no memory is allocated, any locally opened file descriptors are - closed; return non-zero -- in that case, free_cwd need not be - called, but doing so is ok. Otherwise, return zero. - - The _raison d'etre_ for this interface is that the working directory - is sometimes inaccessible, and getcwd is not robust or as efficient. - So, we prefer to use the open/fchdir approach, but fall back on - getcwd if necessary. This module works for most cases with just - the getcwd-lgpl module, but to be truly robust, use the getcwd module. - - Some systems lack fchdir altogether: e.g., OS/2, pre-2001 Cygwin, - SCO Xenix. Also, SunOS 4 and Irix 5.3 provide the function, yet it - doesn't work for partitions on which auditing is enabled. If - you're still using an obsolete system with these problems, please - send email to the maintainer of this code. */ - -int -save_cwd (struct saved_cwd *cwd) -{ - cwd->name = NULL; - - cwd->desc = open (".", O_SEARCH | O_CLOEXEC); - if (!GNULIB_FCNTL_SAFER) - cwd->desc = fd_safer_flag (cwd->desc, O_CLOEXEC); - if (cwd->desc < 0) - { - cwd->name = getcwd (NULL, 0); - return cwd->name ? 0 : -1; - } - - return 0; -} - -/* Change to recorded location, CWD, in directory hierarchy. - Upon failure, return -1 (errno is set by chdir or fchdir). - Upon success, return zero. */ - -int -restore_cwd (const struct saved_cwd *cwd) -{ - if (0 <= cwd->desc) - return fchdir (cwd->desc); - else - return chdir_long (cwd->name); -} - -void -free_cwd (struct saved_cwd *cwd) -{ - if (cwd->desc >= 0) - close (cwd->desc); - free (cwd->name); -} diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/save-cwd.h b/thirdparty/grub-2.04/grub-core/lib/gnulib/save-cwd.h deleted file mode 100644 index 6a780703c..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/save-cwd.h +++ /dev/null @@ -1,34 +0,0 @@ -/* Save and restore current working directory. - - Copyright (C) 1995, 1997-1998, 2003, 2009-2019 Free Software Foundation, - Inc. - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . */ - -/* Written by Jim Meyering. */ - -#ifndef SAVE_CWD_H -# define SAVE_CWD_H 1 - -struct saved_cwd - { - int desc; - char *name; - }; - -int save_cwd (struct saved_cwd *cwd); -int restore_cwd (const struct saved_cwd *cwd); -void free_cwd (struct saved_cwd *cwd); - -#endif /* SAVE_CWD_H */ diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/size_max.h b/thirdparty/grub-2.04/grub-core/lib/gnulib/size_max.h deleted file mode 100644 index e265fb972..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/size_max.h +++ /dev/null @@ -1,30 +0,0 @@ -/* size_max.h -- declare SIZE_MAX through system headers - Copyright (C) 2005-2006, 2009-2019 Free Software Foundation, Inc. - Written by Simon Josefsson. - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3, or (at your option) - any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, see . */ - -#ifndef GNULIB_SIZE_MAX_H -#define GNULIB_SIZE_MAX_H - -/* Get SIZE_MAX declaration on systems like Solaris 7/8/9. */ -# include -/* Get SIZE_MAX declaration on systems like glibc 2. */ -# if HAVE_STDINT_H -# include -# endif -/* On systems where these include files don't define it, SIZE_MAX is defined - in config.h. */ - -#endif /* GNULIB_SIZE_MAX_H */ diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/sleep.c b/thirdparty/grub-2.04/grub-core/lib/gnulib/sleep.c deleted file mode 100644 index c5218e5fd..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/sleep.c +++ /dev/null @@ -1,76 +0,0 @@ -/* Pausing execution of the current thread. - Copyright (C) 2007, 2009-2019 Free Software Foundation, Inc. - Written by Bruno Haible , 2007. - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . */ - -#include - -/* Specification. */ -#include - -#include - -#include "verify.h" - -#if defined _WIN32 && ! defined __CYGWIN__ - -# define WIN32_LEAN_AND_MEAN /* avoid including junk */ -# include - -unsigned int -sleep (unsigned int seconds) -{ - unsigned int remaining; - - /* Sleep for 1 second many times, because - 1. Sleep is not interruptible by Ctrl-C, - 2. we want to avoid arithmetic overflow while multiplying with 1000. */ - for (remaining = seconds; remaining > 0; remaining--) - Sleep (1000); - - return remaining; -} - -#elif HAVE_SLEEP - -# undef sleep - -/* Guarantee unlimited sleep and a reasonable return value. Cygwin - 1.5.x rejects attempts to sleep more than 49.7 days (2**32 - milliseconds), but uses uninitialized memory which results in a - garbage answer. Similarly, Linux 2.6.9 with glibc 2.3.4 has a too - small return value when asked to sleep more than 24.85 days. */ -unsigned int -rpl_sleep (unsigned int seconds) -{ - /* This requires int larger than 16 bits. */ - verify (UINT_MAX / 24 / 24 / 60 / 60); - const unsigned int limit = 24 * 24 * 60 * 60; - while (limit < seconds) - { - unsigned int result; - seconds -= limit; - result = sleep (limit); - if (result) - return seconds + result; - } - return sleep (seconds); -} - -#else /* !HAVE_SLEEP */ - - #error "Please port gnulib sleep.c to your platform, possibly using usleep() or select(), then report this to bug-gnulib." - -#endif diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/stat-time.c b/thirdparty/grub-2.04/grub-core/lib/gnulib/stat-time.c deleted file mode 100644 index 81b83ddb4..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/stat-time.c +++ /dev/null @@ -1,3 +0,0 @@ -#include -#define _GL_STAT_TIME_INLINE _GL_EXTERN_INLINE -#include "stat-time.h" diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/stat-time.h b/thirdparty/grub-2.04/grub-core/lib/gnulib/stat-time.h deleted file mode 100644 index d4f1f9610..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/stat-time.h +++ /dev/null @@ -1,252 +0,0 @@ -/* stat-related time functions. - - Copyright (C) 2005, 2007, 2009-2019 Free Software Foundation, Inc. - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . */ - -/* Written by Paul Eggert. */ - -#ifndef STAT_TIME_H -#define STAT_TIME_H 1 - -#include "intprops.h" - -#include -#include -#include -#include - -#ifndef _GL_INLINE_HEADER_BEGIN - #error "Please include config.h first." -#endif -_GL_INLINE_HEADER_BEGIN -#ifndef _GL_STAT_TIME_INLINE -# define _GL_STAT_TIME_INLINE _GL_INLINE -#endif - -#ifdef __cplusplus -extern "C" { -#endif - -/* STAT_TIMESPEC (ST, ST_XTIM) is the ST_XTIM member for *ST of type - struct timespec, if available. If not, then STAT_TIMESPEC_NS (ST, - ST_XTIM) is the nanosecond component of the ST_XTIM member for *ST, - if available. ST_XTIM can be st_atim, st_ctim, st_mtim, or st_birthtim - for access, status change, data modification, or birth (creation) - time respectively. - - These macros are private to stat-time.h. */ -#if _GL_WINDOWS_STAT_TIMESPEC || defined HAVE_STRUCT_STAT_ST_ATIM_TV_NSEC -# if _GL_WINDOWS_STAT_TIMESPEC || defined TYPEOF_STRUCT_STAT_ST_ATIM_IS_STRUCT_TIMESPEC -# define STAT_TIMESPEC(st, st_xtim) ((st)->st_xtim) -# else -# define STAT_TIMESPEC_NS(st, st_xtim) ((st)->st_xtim.tv_nsec) -# endif -#elif defined HAVE_STRUCT_STAT_ST_ATIMESPEC_TV_NSEC -# define STAT_TIMESPEC(st, st_xtim) ((st)->st_xtim##espec) -#elif defined HAVE_STRUCT_STAT_ST_ATIMENSEC -# define STAT_TIMESPEC_NS(st, st_xtim) ((st)->st_xtim##ensec) -#elif defined HAVE_STRUCT_STAT_ST_ATIM_ST__TIM_TV_NSEC -# define STAT_TIMESPEC_NS(st, st_xtim) ((st)->st_xtim.st__tim.tv_nsec) -#endif - -/* Return the nanosecond component of *ST's access time. */ -_GL_STAT_TIME_INLINE long int _GL_ATTRIBUTE_PURE -get_stat_atime_ns (struct stat const *st) -{ -# if defined STAT_TIMESPEC - return STAT_TIMESPEC (st, st_atim).tv_nsec; -# elif defined STAT_TIMESPEC_NS - return STAT_TIMESPEC_NS (st, st_atim); -# else - return 0; -# endif -} - -/* Return the nanosecond component of *ST's status change time. */ -_GL_STAT_TIME_INLINE long int _GL_ATTRIBUTE_PURE -get_stat_ctime_ns (struct stat const *st) -{ -# if defined STAT_TIMESPEC - return STAT_TIMESPEC (st, st_ctim).tv_nsec; -# elif defined STAT_TIMESPEC_NS - return STAT_TIMESPEC_NS (st, st_ctim); -# else - return 0; -# endif -} - -/* Return the nanosecond component of *ST's data modification time. */ -_GL_STAT_TIME_INLINE long int _GL_ATTRIBUTE_PURE -get_stat_mtime_ns (struct stat const *st) -{ -# if defined STAT_TIMESPEC - return STAT_TIMESPEC (st, st_mtim).tv_nsec; -# elif defined STAT_TIMESPEC_NS - return STAT_TIMESPEC_NS (st, st_mtim); -# else - return 0; -# endif -} - -/* Return the nanosecond component of *ST's birth time. */ -_GL_STAT_TIME_INLINE long int _GL_ATTRIBUTE_PURE -get_stat_birthtime_ns (struct stat const *st _GL_UNUSED) -{ -# if defined HAVE_STRUCT_STAT_ST_BIRTHTIMESPEC_TV_NSEC - return STAT_TIMESPEC (st, st_birthtim).tv_nsec; -# elif defined HAVE_STRUCT_STAT_ST_BIRTHTIMENSEC - return STAT_TIMESPEC_NS (st, st_birthtim); -# else - return 0; -# endif -} - -/* Return *ST's access time. */ -_GL_STAT_TIME_INLINE struct timespec _GL_ATTRIBUTE_PURE -get_stat_atime (struct stat const *st) -{ -#ifdef STAT_TIMESPEC - return STAT_TIMESPEC (st, st_atim); -#else - struct timespec t; - t.tv_sec = st->st_atime; - t.tv_nsec = get_stat_atime_ns (st); - return t; -#endif -} - -/* Return *ST's status change time. */ -_GL_STAT_TIME_INLINE struct timespec _GL_ATTRIBUTE_PURE -get_stat_ctime (struct stat const *st) -{ -#ifdef STAT_TIMESPEC - return STAT_TIMESPEC (st, st_ctim); -#else - struct timespec t; - t.tv_sec = st->st_ctime; - t.tv_nsec = get_stat_ctime_ns (st); - return t; -#endif -} - -/* Return *ST's data modification time. */ -_GL_STAT_TIME_INLINE struct timespec _GL_ATTRIBUTE_PURE -get_stat_mtime (struct stat const *st) -{ -#ifdef STAT_TIMESPEC - return STAT_TIMESPEC (st, st_mtim); -#else - struct timespec t; - t.tv_sec = st->st_mtime; - t.tv_nsec = get_stat_mtime_ns (st); - return t; -#endif -} - -/* Return *ST's birth time, if available; otherwise return a value - with tv_sec and tv_nsec both equal to -1. */ -_GL_STAT_TIME_INLINE struct timespec _GL_ATTRIBUTE_PURE -get_stat_birthtime (struct stat const *st _GL_UNUSED) -{ - struct timespec t; - -#if (defined HAVE_STRUCT_STAT_ST_BIRTHTIMESPEC_TV_NSEC \ - || defined HAVE_STRUCT_STAT_ST_BIRTHTIM_TV_NSEC) - t = STAT_TIMESPEC (st, st_birthtim); -#elif defined HAVE_STRUCT_STAT_ST_BIRTHTIMENSEC - t.tv_sec = st->st_birthtime; - t.tv_nsec = st->st_birthtimensec; -#elif defined _WIN32 && ! defined __CYGWIN__ - /* Native Windows platforms (but not Cygwin) put the "file creation - time" in st_ctime (!). See - . */ -# if _GL_WINDOWS_STAT_TIMESPEC - t = st->st_ctim; -# else - t.tv_sec = st->st_ctime; - t.tv_nsec = 0; -# endif -#else - /* Birth time is not supported. */ - t.tv_sec = -1; - t.tv_nsec = -1; -#endif - -#if (defined HAVE_STRUCT_STAT_ST_BIRTHTIMESPEC_TV_NSEC \ - || defined HAVE_STRUCT_STAT_ST_BIRTHTIM_TV_NSEC \ - || defined HAVE_STRUCT_STAT_ST_BIRTHTIMENSEC) - /* FreeBSD and NetBSD sometimes signal the absence of knowledge by - using zero. Attempt to work around this problem. Alas, this can - report failure even for valid timestamps. Also, NetBSD - sometimes returns junk in the birth time fields; work around this - bug if it is detected. */ - if (! (t.tv_sec && 0 <= t.tv_nsec && t.tv_nsec < 1000000000)) - { - t.tv_sec = -1; - t.tv_nsec = -1; - } -#endif - - return t; -} - -/* If a stat-like function returned RESULT, normalize the timestamps - in *ST, in case this platform suffers from the Solaris 11 bug where - tv_nsec might be negative. Return the adjusted RESULT, setting - errno to EOVERFLOW if normalization overflowed. This function - is intended to be private to this .h file. */ -_GL_STAT_TIME_INLINE int -stat_time_normalize (int result, struct stat *st _GL_UNUSED) -{ -#if defined __sun && defined STAT_TIMESPEC - if (result == 0) - { - long int timespec_hz = 1000000000; - short int const ts_off[] = { offsetof (struct stat, st_atim), - offsetof (struct stat, st_mtim), - offsetof (struct stat, st_ctim) }; - int i; - for (i = 0; i < sizeof ts_off / sizeof *ts_off; i++) - { - struct timespec *ts = (struct timespec *) ((char *) st + ts_off[i]); - long int q = ts->tv_nsec / timespec_hz; - long int r = ts->tv_nsec % timespec_hz; - if (r < 0) - { - r += timespec_hz; - q--; - } - ts->tv_nsec = r; - /* Overflow is possible, as Solaris 11 stat can yield - tv_sec == TYPE_MINIMUM (time_t) && tv_nsec == -1000000000. - INT_ADD_WRAPV is OK, since time_t is signed on Solaris. */ - if (INT_ADD_WRAPV (q, ts->tv_sec, &ts->tv_sec)) - { - errno = EOVERFLOW; - return -1; - } - } - } -#endif - return result; -} - -#ifdef __cplusplus -} -#endif - -_GL_INLINE_HEADER_END - -#endif diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/stat-w32.c b/thirdparty/grub-2.04/grub-core/lib/gnulib/stat-w32.c deleted file mode 100644 index ffa99429d..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/stat-w32.c +++ /dev/null @@ -1,425 +0,0 @@ -/* Core of implementation of fstat and stat for native Windows. - Copyright (C) 2017-2019 Free Software Foundation, Inc. - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . */ - -/* Written by Bruno Haible. */ - -#include - -#if defined _WIN32 && ! defined __CYGWIN__ - -/* Ensure that defines FILE_ID_INFO. */ -#undef _WIN32_WINNT -#define _WIN32_WINNT _WIN32_WINNT_WIN8 - -#include -#include -#include -#include -#include -#include -#include - -/* Specification. */ -#include "stat-w32.h" - -#include "pathmax.h" -#include "verify.h" - -/* Avoid warnings from gcc -Wcast-function-type. */ -#define GetProcAddress \ - (void *) GetProcAddress - -#if _GL_WINDOWS_STAT_INODES == 2 -/* GetFileInformationByHandleEx was introduced only in Windows Vista. */ -typedef DWORD (WINAPI * GetFileInformationByHandleExFuncType) (HANDLE hFile, - FILE_INFO_BY_HANDLE_CLASS fiClass, - LPVOID lpBuffer, - DWORD dwBufferSize); -static GetFileInformationByHandleExFuncType GetFileInformationByHandleExFunc = NULL; -#endif -/* GetFinalPathNameByHandle was introduced only in Windows Vista. */ -typedef DWORD (WINAPI * GetFinalPathNameByHandleFuncType) (HANDLE hFile, - LPTSTR lpFilePath, - DWORD lenFilePath, - DWORD dwFlags); -static GetFinalPathNameByHandleFuncType GetFinalPathNameByHandleFunc = NULL; -static BOOL initialized = FALSE; - -static void -initialize (void) -{ - HMODULE kernel32 = LoadLibrary ("kernel32.dll"); - if (kernel32 != NULL) - { -#if _GL_WINDOWS_STAT_INODES == 2 - GetFileInformationByHandleExFunc = - (GetFileInformationByHandleExFuncType) GetProcAddress (kernel32, "GetFileInformationByHandleEx"); -#endif - GetFinalPathNameByHandleFunc = - (GetFinalPathNameByHandleFuncType) GetProcAddress (kernel32, "GetFinalPathNameByHandleA"); - } - initialized = TRUE; -} - -/* Converts a FILETIME to GMT time since 1970-01-01 00:00:00. */ -#if _GL_WINDOWS_STAT_TIMESPEC -struct timespec -_gl_convert_FILETIME_to_timespec (const FILETIME *ft) -{ - struct timespec result; - /* FILETIME: */ - unsigned long long since_1601 = - ((unsigned long long) ft->dwHighDateTime << 32) - | (unsigned long long) ft->dwLowDateTime; - if (since_1601 == 0) - { - result.tv_sec = 0; - result.tv_nsec = 0; - } - else - { - /* Between 1601-01-01 and 1970-01-01 there were 280 normal years and 89 - leap years, in total 134774 days. */ - unsigned long long since_1970 = - since_1601 - (unsigned long long) 134774 * (unsigned long long) 86400 * (unsigned long long) 10000000; - result.tv_sec = since_1970 / (unsigned long long) 10000000; - result.tv_nsec = (unsigned long) (since_1970 % (unsigned long long) 10000000) * 100; - } - return result; -} -#else -time_t -_gl_convert_FILETIME_to_POSIX (const FILETIME *ft) -{ - /* FILETIME: */ - unsigned long long since_1601 = - ((unsigned long long) ft->dwHighDateTime << 32) - | (unsigned long long) ft->dwLowDateTime; - if (since_1601 == 0) - return 0; - else - { - /* Between 1601-01-01 and 1970-01-01 there were 280 normal years and 89 - leap years, in total 134774 days. */ - unsigned long long since_1970 = - since_1601 - (unsigned long long) 134774 * (unsigned long long) 86400 * (unsigned long long) 10000000; - return since_1970 / (unsigned long long) 10000000; - } -} -#endif - -/* Fill *BUF with information about the file designated by H. - PATH is the file name, if known, otherwise NULL. - Return 0 if successful, or -1 with errno set upon failure. */ -int -_gl_fstat_by_handle (HANDLE h, const char *path, struct stat *buf) -{ - /* GetFileType - */ - DWORD type = GetFileType (h); - if (type == FILE_TYPE_DISK) - { - if (!initialized) - initialize (); - - /* st_mode can be determined through - GetFileAttributesEx - - - or through - GetFileInformationByHandle - - - or through - GetFileInformationByHandleEx with argument FileBasicInfo - - - The latter requires -D_WIN32_WINNT=_WIN32_WINNT_VISTA or higher. */ - BY_HANDLE_FILE_INFORMATION info; - if (! GetFileInformationByHandle (h, &info)) - goto failed; - - /* Test for error conditions before starting to fill *buf. */ - if (sizeof (buf->st_size) <= 4 && info.nFileSizeHigh > 0) - { - errno = EOVERFLOW; - return -1; - } - -#if _GL_WINDOWS_STAT_INODES - /* st_ino can be determined through - GetFileInformationByHandle - - - as 64 bits, or through - GetFileInformationByHandleEx with argument FileIdInfo - - - as 128 bits. - The latter requires -D_WIN32_WINNT=_WIN32_WINNT_WIN8 or higher. */ - /* Experiments show that GetFileInformationByHandleEx does not provide - much more information than GetFileInformationByHandle: - * The dwVolumeSerialNumber from GetFileInformationByHandle is equal - to the low 32 bits of the 64-bit VolumeSerialNumber from - GetFileInformationByHandleEx, and is apparently sufficient for - identifying the device. - * The nFileIndex from GetFileInformationByHandle is equal to the low - 64 bits of the 128-bit FileId from GetFileInformationByHandleEx, - and the high 64 bits of this 128-bit FileId are zero. - * On a FAT file system, GetFileInformationByHandleEx fails with error - ERROR_INVALID_PARAMETER, whereas GetFileInformationByHandle - succeeds. - * On a CIFS/SMB file system, GetFileInformationByHandleEx fails with - error ERROR_INVALID_LEVEL, whereas GetFileInformationByHandle - succeeds. */ -# if _GL_WINDOWS_STAT_INODES == 2 - if (GetFileInformationByHandleExFunc != NULL) - { - FILE_ID_INFO id; - if (GetFileInformationByHandleExFunc (h, FileIdInfo, &id, sizeof (id))) - { - buf->st_dev = id.VolumeSerialNumber; - verify (sizeof (ino_t) == sizeof (id.FileId)); - memcpy (&buf->st_ino, &id.FileId, sizeof (ino_t)); - goto ino_done; - } - else - { - switch (GetLastError ()) - { - case ERROR_INVALID_PARAMETER: /* older Windows version, or FAT */ - case ERROR_INVALID_LEVEL: /* CIFS/SMB file system */ - goto fallback; - default: - goto failed; - } - } - } - fallback: ; - /* Fallback for older Windows versions. */ - buf->st_dev = info.dwVolumeSerialNumber; - buf->st_ino._gl_ino[0] = ((ULONGLONG) info.nFileIndexHigh << 32) | (ULONGLONG) info.nFileIndexLow; - buf->st_ino._gl_ino[1] = 0; - ino_done: ; -# else /* _GL_WINDOWS_STAT_INODES == 1 */ - buf->st_dev = info.dwVolumeSerialNumber; - buf->st_ino = ((ULONGLONG) info.nFileIndexHigh << 32) | (ULONGLONG) info.nFileIndexLow; -# endif -#else - /* st_ino is not wide enough for identifying a file on a device. - Without st_ino, st_dev is pointless. */ - buf->st_dev = 0; - buf->st_ino = 0; -#endif - - /* st_mode. */ - unsigned int mode = - /* XXX How to handle FILE_ATTRIBUTE_REPARSE_POINT ? */ - ((info.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY) ? _S_IFDIR | S_IEXEC_UGO : _S_IFREG) - | S_IREAD_UGO - | ((info.dwFileAttributes & FILE_ATTRIBUTE_READONLY) ? 0 : S_IWRITE_UGO); - if (!(info.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY)) - { - /* Determine whether the file is executable by looking at the file - name suffix. - If the file name is already known, use it. Otherwise, for - non-empty files, it can be determined through - GetFinalPathNameByHandle - - or through - GetFileInformationByHandleEx with argument FileNameInfo - - - Both require -D_WIN32_WINNT=_WIN32_WINNT_VISTA or higher. */ - if (info.nFileSizeHigh > 0 || info.nFileSizeLow > 0) - { - char fpath[PATH_MAX]; - if (path != NULL - || (GetFinalPathNameByHandleFunc != NULL - && GetFinalPathNameByHandleFunc (h, fpath, sizeof (fpath), VOLUME_NAME_NONE) - < sizeof (fpath) - && (path = fpath, 1))) - { - const char *last_dot = NULL; - const char *p; - for (p = path; *p != '\0'; p++) - if (*p == '.') - last_dot = p; - if (last_dot != NULL) - { - const char *suffix = last_dot + 1; - if (_stricmp (suffix, "exe") == 0 - || _stricmp (suffix, "bat") == 0 - || _stricmp (suffix, "cmd") == 0 - || _stricmp (suffix, "com") == 0) - mode |= S_IEXEC_UGO; - } - } - else - /* Cannot determine file name. Pretend that it is executable. */ - mode |= S_IEXEC_UGO; - } - } - buf->st_mode = mode; - - /* st_nlink can be determined through - GetFileInformationByHandle - - - or through - GetFileInformationByHandleEx with argument FileStandardInfo - - - The latter requires -D_WIN32_WINNT=_WIN32_WINNT_VISTA or higher. */ - buf->st_nlink = (info.nNumberOfLinks > SHRT_MAX ? SHRT_MAX : info.nNumberOfLinks); - - /* There's no easy way to map the Windows SID concept to an integer. */ - buf->st_uid = 0; - buf->st_gid = 0; - - /* st_rdev is irrelevant for normal files and directories. */ - buf->st_rdev = 0; - - /* st_size can be determined through - GetFileSizeEx - - or through - GetFileAttributesEx - - - or through - GetFileInformationByHandle - - - or through - GetFileInformationByHandleEx with argument FileStandardInfo - - - The latter requires -D_WIN32_WINNT=_WIN32_WINNT_VISTA or higher. */ - if (sizeof (buf->st_size) <= 4) - /* Range check already done above. */ - buf->st_size = info.nFileSizeLow; - else - buf->st_size = ((long long) info.nFileSizeHigh << 32) | (long long) info.nFileSizeLow; - - /* st_atime, st_mtime, st_ctime can be determined through - GetFileTime - - or through - GetFileAttributesEx - - - or through - GetFileInformationByHandle - - - or through - GetFileInformationByHandleEx with argument FileBasicInfo - - - The latter requires -D_WIN32_WINNT=_WIN32_WINNT_VISTA or higher. */ -#if _GL_WINDOWS_STAT_TIMESPEC - buf->st_atim = _gl_convert_FILETIME_to_timespec (&info.ftLastAccessTime); - buf->st_mtim = _gl_convert_FILETIME_to_timespec (&info.ftLastWriteTime); - buf->st_ctim = _gl_convert_FILETIME_to_timespec (&info.ftCreationTime); -#else - buf->st_atime = _gl_convert_FILETIME_to_POSIX (&info.ftLastAccessTime); - buf->st_mtime = _gl_convert_FILETIME_to_POSIX (&info.ftLastWriteTime); - buf->st_ctime = _gl_convert_FILETIME_to_POSIX (&info.ftCreationTime); -#endif - - return 0; - } - else if (type == FILE_TYPE_CHAR || type == FILE_TYPE_PIPE) - { - buf->st_dev = 0; -#if _GL_WINDOWS_STAT_INODES == 2 - buf->st_ino._gl_ino[0] = buf->st_ino._gl_ino[1] = 0; -#else - buf->st_ino = 0; -#endif - buf->st_mode = (type == FILE_TYPE_PIPE ? _S_IFIFO : _S_IFCHR); - buf->st_nlink = 1; - buf->st_uid = 0; - buf->st_gid = 0; - buf->st_rdev = 0; - if (type == FILE_TYPE_PIPE) - { - /* PeekNamedPipe - */ - DWORD bytes_available; - if (PeekNamedPipe (h, NULL, 0, NULL, &bytes_available, NULL)) - buf->st_size = bytes_available; - else - buf->st_size = 0; - } - else - buf->st_size = 0; -#if _GL_WINDOWS_STAT_TIMESPEC - buf->st_atim.tv_sec = 0; buf->st_atim.tv_nsec = 0; - buf->st_mtim.tv_sec = 0; buf->st_mtim.tv_nsec = 0; - buf->st_ctim.tv_sec = 0; buf->st_ctim.tv_nsec = 0; -#else - buf->st_atime = 0; - buf->st_mtime = 0; - buf->st_ctime = 0; -#endif - return 0; - } - else - { - errno = ENOENT; - return -1; - } - - failed: - { - DWORD error = GetLastError (); - #if 0 - fprintf (stderr, "_gl_fstat_by_handle error 0x%x\n", (unsigned int) error); - #endif - switch (error) - { - case ERROR_ACCESS_DENIED: - case ERROR_SHARING_VIOLATION: - errno = EACCES; - break; - - case ERROR_OUTOFMEMORY: - errno = ENOMEM; - break; - - case ERROR_WRITE_FAULT: - case ERROR_READ_FAULT: - case ERROR_GEN_FAILURE: - errno = EIO; - break; - - default: - errno = EINVAL; - break; - } - return -1; - } -} - -#else - -/* This declaration is solely to ensure that after preprocessing - this file is never empty. */ -typedef int dummy; - -#endif diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/stat-w32.h b/thirdparty/grub-2.04/grub-core/lib/gnulib/stat-w32.h deleted file mode 100644 index 6b961d7ff..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/stat-w32.h +++ /dev/null @@ -1,37 +0,0 @@ -/* Core of implementation of fstat and stat for native Windows. - Copyright (C) 2017-2019 Free Software Foundation, Inc. - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . */ - -#ifndef _STAT_W32_H -#define _STAT_W32_H 1 - -/* Converts a FILETIME to GMT time since 1970-01-01 00:00:00. */ -#if _GL_WINDOWS_STAT_TIMESPEC -extern struct timespec _gl_convert_FILETIME_to_timespec (const FILETIME *ft); -#else -extern time_t _gl_convert_FILETIME_to_POSIX (const FILETIME *ft); -#endif - -/* Fill *BUF with information about the file designated by H. - PATH is the file name, if known, otherwise NULL. - Return 0 if successful, or -1 with errno set upon failure. */ -extern int _gl_fstat_by_handle (HANDLE h, const char *path, struct stat *buf); - -/* Bitmasks for st_mode. */ -#define S_IREAD_UGO (_S_IREAD | (_S_IREAD >> 3) | (_S_IREAD >> 6)) -#define S_IWRITE_UGO (_S_IWRITE | (_S_IWRITE >> 3) | (_S_IWRITE >> 6)) -#define S_IEXEC_UGO (_S_IEXEC | (_S_IEXEC >> 3) | (_S_IEXEC >> 6)) - -#endif /* _STAT_W32_H */ diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/stat.c b/thirdparty/grub-2.04/grub-core/lib/gnulib/stat.c deleted file mode 100644 index 74f47954c..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/stat.c +++ /dev/null @@ -1,429 +0,0 @@ -/* Work around platform bugs in stat. - Copyright (C) 2009-2019 Free Software Foundation, Inc. - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . */ - -/* Written by Eric Blake and Bruno Haible. */ - -/* If the user's config.h happens to include , let it include only - the system's here, so that orig_stat doesn't recurse to - rpl_stat. */ -#define __need_system_sys_stat_h -#include - -/* Get the original definition of stat. It might be defined as a macro. */ -#include -#include -#undef __need_system_sys_stat_h - -#if defined _WIN32 && ! defined __CYGWIN__ -# define WINDOWS_NATIVE -#endif - -#if !defined WINDOWS_NATIVE - -static int -orig_stat (const char *filename, struct stat *buf) -{ - return stat (filename, buf); -} - -#endif - -/* Specification. */ -/* Write "sys/stat.h" here, not , otherwise OSF/1 5.1 DTK cc - eliminates this include because of the preliminary #include - above. */ -#include "sys/stat.h" - -#include "stat-time.h" - -#include -#include -#include -#include -#include "filename.h" -#include "malloca.h" -#include "verify.h" - -#ifdef WINDOWS_NATIVE -# define WIN32_LEAN_AND_MEAN -# include -# include "stat-w32.h" -#endif - -#ifdef WINDOWS_NATIVE -/* Return TRUE if the given file name denotes an UNC root. */ -static BOOL -is_unc_root (const char *rname) -{ - /* Test whether it has the syntax '\\server\share'. */ - if (ISSLASH (rname[0]) && ISSLASH (rname[1])) - { - /* It starts with two slashes. Find the next slash. */ - const char *p = rname + 2; - const char *q = p; - while (*q != '\0' && !ISSLASH (*q)) - q++; - if (q > p && *q != '\0') - { - /* Found the next slash at q. */ - q++; - const char *r = q; - while (*r != '\0' && !ISSLASH (*r)) - r++; - if (r > q && *r == '\0') - return TRUE; - } - } - return FALSE; -} -#endif - -/* Store information about NAME into ST. Work around bugs with - trailing slashes. Mingw has other bugs (such as st_ino always - being 0 on success) which this wrapper does not work around. But - at least this implementation provides the ability to emulate fchdir - correctly. */ - -int -rpl_stat (char const *name, struct stat *buf) -{ -#ifdef WINDOWS_NATIVE - /* Fill the fields ourselves, because the original stat function returns - values for st_atime, st_mtime, st_ctime that depend on the current time - zone. See - */ - /* XXX Should we convert to wchar_t* and prepend '\\?\', in order to work - around length limitations - ? */ - - /* POSIX - specifies: "More than two leading characters shall be treated as - a single character." */ - if (ISSLASH (name[0]) && ISSLASH (name[1]) && ISSLASH (name[2])) - { - name += 2; - while (ISSLASH (name[1])) - name++; - } - - size_t len = strlen (name); - size_t drive_prefix_len = (HAS_DEVICE (name) ? 2 : 0); - - /* Remove trailing slashes (except the very first one, at position - drive_prefix_len), but remember their presence. */ - size_t rlen; - bool check_dir = false; - - rlen = len; - while (rlen > drive_prefix_len && ISSLASH (name[rlen-1])) - { - check_dir = true; - if (rlen == drive_prefix_len + 1) - break; - rlen--; - } - - /* Handle '' and 'C:'. */ - if (!check_dir && rlen == drive_prefix_len) - { - errno = ENOENT; - return -1; - } - - /* Handle '\\'. */ - if (rlen == 1 && ISSLASH (name[0]) && len >= 2) - { - errno = ENOENT; - return -1; - } - - const char *rname; - char *malloca_rname; - if (rlen == len) - { - rname = name; - malloca_rname = NULL; - } - else - { - malloca_rname = malloca (rlen + 1); - if (malloca_rname == NULL) - { - errno = ENOMEM; - return -1; - } - memcpy (malloca_rname, name, rlen); - malloca_rname[rlen] = '\0'; - rname = malloca_rname; - } - - /* There are two ways to get at the requested information: - - by scanning the parent directory and examining the relevant - directory entry, - - by opening the file directly. - The first approach fails for root directories (e.g. 'C:\') and - UNC root directories (e.g. '\\server\share'). - The second approach fails for some system files (e.g. 'C:\pagefile.sys' - and 'C:\hiberfil.sys'): ERROR_SHARING_VIOLATION. - The second approach gives more information (in particular, correct - st_dev, st_ino, st_nlink fields). - So we use the second approach and, as a fallback except for root and - UNC root directories, also the first approach. */ - { - int ret; - - { - /* Approach based on the file. */ - - /* Open a handle to the file. - CreateFile - - */ - HANDLE h = - CreateFile (rname, - FILE_READ_ATTRIBUTES, - FILE_SHARE_READ | FILE_SHARE_WRITE | FILE_SHARE_DELETE, - NULL, - OPEN_EXISTING, - /* FILE_FLAG_POSIX_SEMANTICS (treat file names that differ only - in case as different) makes sense only when applied to *all* - filesystem operations. */ - FILE_FLAG_BACKUP_SEMANTICS /* | FILE_FLAG_POSIX_SEMANTICS */, - NULL); - if (h != INVALID_HANDLE_VALUE) - { - ret = _gl_fstat_by_handle (h, rname, buf); - CloseHandle (h); - goto done; - } - } - - /* Test for root and UNC root directories. */ - if ((rlen == drive_prefix_len + 1 && ISSLASH (rname[drive_prefix_len])) - || is_unc_root (rname)) - goto failed; - - /* Fallback. */ - { - /* Approach based on the directory entry. */ - - if (strchr (rname, '?') != NULL || strchr (rname, '*') != NULL) - { - /* Other Windows API functions would fail with error - ERROR_INVALID_NAME. */ - if (malloca_rname != NULL) - freea (malloca_rname); - errno = ENOENT; - return -1; - } - - /* Get the details about the directory entry. This can be done through - FindFirstFile - - - or through - FindFirstFileEx with argument FindExInfoBasic - - - */ - WIN32_FIND_DATA info; - HANDLE h = FindFirstFile (rname, &info); - if (h == INVALID_HANDLE_VALUE) - goto failed; - - /* Test for error conditions before starting to fill *buf. */ - if (sizeof (buf->st_size) <= 4 && info.nFileSizeHigh > 0) - { - FindClose (h); - if (malloca_rname != NULL) - freea (malloca_rname); - errno = EOVERFLOW; - return -1; - } - -# if _GL_WINDOWS_STAT_INODES - buf->st_dev = 0; -# if _GL_WINDOWS_STAT_INODES == 2 - buf->st_ino._gl_ino[0] = buf->st_ino._gl_ino[1] = 0; -# else /* _GL_WINDOWS_STAT_INODES == 1 */ - buf->st_ino = 0; -# endif -# else - /* st_ino is not wide enough for identifying a file on a device. - Without st_ino, st_dev is pointless. */ - buf->st_dev = 0; - buf->st_ino = 0; -# endif - - /* st_mode. */ - unsigned int mode = - /* XXX How to handle FILE_ATTRIBUTE_REPARSE_POINT ? */ - ((info.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY) ? _S_IFDIR | S_IEXEC_UGO : _S_IFREG) - | S_IREAD_UGO - | ((info.dwFileAttributes & FILE_ATTRIBUTE_READONLY) ? 0 : S_IWRITE_UGO); - if (!(info.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY)) - { - /* Determine whether the file is executable by looking at the file - name suffix. */ - if (info.nFileSizeHigh > 0 || info.nFileSizeLow > 0) - { - const char *last_dot = NULL; - const char *p; - for (p = info.cFileName; *p != '\0'; p++) - if (*p == '.') - last_dot = p; - if (last_dot != NULL) - { - const char *suffix = last_dot + 1; - if (_stricmp (suffix, "exe") == 0 - || _stricmp (suffix, "bat") == 0 - || _stricmp (suffix, "cmd") == 0 - || _stricmp (suffix, "com") == 0) - mode |= S_IEXEC_UGO; - } - } - } - buf->st_mode = mode; - - /* st_nlink. Ignore hard links here. */ - buf->st_nlink = 1; - - /* There's no easy way to map the Windows SID concept to an integer. */ - buf->st_uid = 0; - buf->st_gid = 0; - - /* st_rdev is irrelevant for normal files and directories. */ - buf->st_rdev = 0; - - /* st_size. */ - if (sizeof (buf->st_size) <= 4) - /* Range check already done above. */ - buf->st_size = info.nFileSizeLow; - else - buf->st_size = ((long long) info.nFileSizeHigh << 32) | (long long) info.nFileSizeLow; - - /* st_atime, st_mtime, st_ctime. */ -# if _GL_WINDOWS_STAT_TIMESPEC - buf->st_atim = _gl_convert_FILETIME_to_timespec (&info.ftLastAccessTime); - buf->st_mtim = _gl_convert_FILETIME_to_timespec (&info.ftLastWriteTime); - buf->st_ctim = _gl_convert_FILETIME_to_timespec (&info.ftCreationTime); -# else - buf->st_atime = _gl_convert_FILETIME_to_POSIX (&info.ftLastAccessTime); - buf->st_mtime = _gl_convert_FILETIME_to_POSIX (&info.ftLastWriteTime); - buf->st_ctime = _gl_convert_FILETIME_to_POSIX (&info.ftCreationTime); -# endif - - FindClose (h); - - ret = 0; - } - - done: - if (ret >= 0 && check_dir && !S_ISDIR (buf->st_mode)) - { - errno = ENOTDIR; - ret = -1; - } - if (malloca_rname != NULL) - { - int saved_errno = errno; - freea (malloca_rname); - errno = saved_errno; - } - return ret; - } - - failed: - { - DWORD error = GetLastError (); - #if 0 - fprintf (stderr, "rpl_stat error 0x%x\n", (unsigned int) error); - #endif - - if (malloca_rname != NULL) - freea (malloca_rname); - - switch (error) - { - /* Some of these errors probably cannot happen with the specific flags - that we pass to CreateFile. But who knows... */ - case ERROR_FILE_NOT_FOUND: /* The last component of rname does not exist. */ - case ERROR_PATH_NOT_FOUND: /* Some directory component in rname does not exist. */ - case ERROR_BAD_PATHNAME: /* rname is such as '\\server'. */ - case ERROR_BAD_NET_NAME: /* rname is such as '\\server\nonexistentshare'. */ - case ERROR_INVALID_NAME: /* rname contains wildcards, misplaced colon, etc. */ - case ERROR_DIRECTORY: - errno = ENOENT; - break; - - case ERROR_ACCESS_DENIED: /* rname is such as 'C:\System Volume Information\foo'. */ - case ERROR_SHARING_VIOLATION: /* rname is such as 'C:\pagefile.sys' (second approach only). */ - /* XXX map to EACCESS or EPERM? */ - errno = EACCES; - break; - - case ERROR_OUTOFMEMORY: - errno = ENOMEM; - break; - - case ERROR_WRITE_PROTECT: - errno = EROFS; - break; - - case ERROR_WRITE_FAULT: - case ERROR_READ_FAULT: - case ERROR_GEN_FAILURE: - errno = EIO; - break; - - case ERROR_BUFFER_OVERFLOW: - case ERROR_FILENAME_EXCED_RANGE: - errno = ENAMETOOLONG; - break; - - case ERROR_DELETE_PENDING: /* XXX map to EACCESS or EPERM? */ - errno = EPERM; - break; - - default: - errno = EINVAL; - break; - } - - return -1; - } -#else - int result = orig_stat (name, buf); - if (result == 0) - { -# if REPLACE_FUNC_STAT_FILE - /* Solaris 9 mistakenly succeeds when given a non-directory with a - trailing slash. */ - if (!S_ISDIR (buf->st_mode)) - { - size_t len = strlen (name); - if (ISSLASH (name[len - 1])) - { - errno = ENOTDIR; - return -1; - } - } -# endif /* REPLACE_FUNC_STAT_FILE */ - result = stat_time_normalize (result, buf); - } - return result; -#endif -} diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/stdalign.in.h b/thirdparty/grub-2.04/grub-core/lib/gnulib/stdalign.in.h deleted file mode 100644 index d988d7c19..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/stdalign.in.h +++ /dev/null @@ -1,121 +0,0 @@ -/* A substitute for ISO C11 . - - Copyright 2011-2019 Free Software Foundation, Inc. - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3, or (at your option) - any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, see . */ - -/* Written by Paul Eggert and Bruno Haible. */ - -#ifndef _GL_STDALIGN_H -#define _GL_STDALIGN_H - -/* ISO C11 for platforms that lack it. - - References: - ISO C11 (latest free draft - ) - sections 6.5.3.4, 6.7.5, 7.15. - C++11 (latest free draft - ) - section 18.10. */ - -/* alignof (TYPE), also known as _Alignof (TYPE), yields the alignment - requirement of a structure member (i.e., slot or field) that is of - type TYPE, as an integer constant expression. - - This differs from GCC's __alignof__ operator, which can yield a - better-performing alignment for an object of that type. For - example, on x86 with GCC, __alignof__ (double) and __alignof__ - (long long) are 8, whereas alignof (double) and alignof (long long) - are 4 unless the option '-malign-double' is used. - - The result cannot be used as a value for an 'enum' constant, if you - want to be portable to HP-UX 10.20 cc and AIX 3.2.5 xlc. - - Include for offsetof. */ -#include - -/* FreeBSD 9.1 , included by and lots of other - standard headers, defines conflicting implementations of _Alignas - and _Alignof that are no better than ours; override them. */ -#undef _Alignas -#undef _Alignof - -/* GCC releases before GCC 4.9 had a bug in _Alignof. See GCC bug 52023 - . */ -#if (!defined __STDC_VERSION__ || __STDC_VERSION__ < 201112 \ - || (defined __GNUC__ && __GNUC__ < 4 + (__GNUC_MINOR__ < 9))) -# ifdef __cplusplus -# if 201103 <= __cplusplus -# define _Alignof(type) alignof (type) -# else - template struct __alignof_helper { char __a; __t __b; }; -# define _Alignof(type) offsetof (__alignof_helper, __b) -# endif -# else -# define _Alignof(type) offsetof (struct { char __a; type __b; }, __b) -# endif -#endif -#if ! (defined __cplusplus && 201103 <= __cplusplus) -# define alignof _Alignof -#endif -#define __alignof_is_defined 1 - -/* alignas (A), also known as _Alignas (A), aligns a variable or type - to the alignment A, where A is an integer constant expression. For - example: - - int alignas (8) foo; - struct s { int a; int alignas (8) bar; }; - - aligns the address of FOO and the offset of BAR to be multiples of 8. - - A should be a power of two that is at least the type's alignment - and at most the implementation's alignment limit. This limit is - 2**28 on typical GNUish hosts, and 2**13 on MSVC. To be portable - to MSVC through at least version 10.0, A should be an integer - constant, as MSVC does not support expressions such as 1 << 3. - To be portable to Sun C 5.11, do not align auto variables to - anything stricter than their default alignment. - - The following C11 requirements are not supported here: - - - If A is zero, alignas has no effect. - - alignas can be used multiple times; the strictest one wins. - - alignas (TYPE) is equivalent to alignas (alignof (TYPE)). - - */ - -#if !defined __STDC_VERSION__ || __STDC_VERSION__ < 201112 -# if defined __cplusplus && 201103 <= __cplusplus -# define _Alignas(a) alignas (a) -# elif ((defined __APPLE__ && defined __MACH__ \ - ? 4 < __GNUC__ + (1 <= __GNUC_MINOR__) \ - : __GNUC__) \ - || (__ia64 && (61200 <= __HP_cc || 61200 <= __HP_aCC)) \ - || __ICC || 0x590 <= __SUNPRO_C || 0x0600 <= __xlC__) -# define _Alignas(a) __attribute__ ((__aligned__ (a))) -# elif 1300 <= _MSC_VER -# define _Alignas(a) __declspec (align (a)) -# endif -#endif -#if ((defined _Alignas && ! (defined __cplusplus && 201103 <= __cplusplus)) \ - || (defined __STDC_VERSION__ && 201112 <= __STDC_VERSION__)) -# define alignas _Alignas -#endif -#if defined alignas || (defined __cplusplus && 201103 <= __cplusplus) -# define __alignas_is_defined 1 -#endif - -#endif /* _GL_STDALIGN_H */ diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/stdbool.in.h b/thirdparty/grub-2.04/grub-core/lib/gnulib/stdbool.in.h deleted file mode 100644 index 8158b009f..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/stdbool.in.h +++ /dev/null @@ -1,132 +0,0 @@ -/* Copyright (C) 2001-2003, 2006-2019 Free Software Foundation, Inc. - Written by Bruno Haible , 2001. - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3, or (at your option) - any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, see . */ - -#ifndef _GL_STDBOOL_H -#define _GL_STDBOOL_H - -/* ISO C 99 for platforms that lack it. */ - -/* Usage suggestions: - - Programs that use should be aware of some limitations - and standards compliance issues. - - Standards compliance: - - - must be #included before 'bool', 'false', 'true' - can be used. - - - You cannot assume that sizeof (bool) == 1. - - - Programs should not undefine the macros bool, true, and false, - as C99 lists that as an "obsolescent feature". - - Limitations of this substitute, when used in a C89 environment: - - - must be #included before the '_Bool' type can be used. - - - You cannot assume that _Bool is a typedef; it might be a macro. - - - Bit-fields of type 'bool' are not supported. Portable code - should use 'unsigned int foo : 1;' rather than 'bool foo : 1;'. - - - In C99, casts and automatic conversions to '_Bool' or 'bool' are - performed in such a way that every nonzero value gets converted - to 'true', and zero gets converted to 'false'. This doesn't work - with this substitute. With this substitute, only the values 0 and 1 - give the expected result when converted to _Bool' or 'bool'. - - - C99 allows the use of (_Bool)0.0 in constant expressions, but - this substitute cannot always provide this property. - - Also, it is suggested that programs use 'bool' rather than '_Bool'; - this isn't required, but 'bool' is more common. */ - - -/* 7.16. Boolean type and values */ - -/* BeOS already #defines false 0, true 1. We use the same - definitions below, but temporarily we have to #undef them. */ -#if defined __BEOS__ && !defined __HAIKU__ -# include /* defines bool but not _Bool */ -# undef false -# undef true -#endif - -#ifdef __cplusplus -# define _Bool bool -# define bool bool -#else -# if defined __BEOS__ && !defined __HAIKU__ - /* A compiler known to have 'bool'. */ - /* If the compiler already has both 'bool' and '_Bool', we can assume they - are the same types. */ -# if !@HAVE__BOOL@ -typedef bool _Bool; -# endif -# else -# if !defined __GNUC__ - /* If @HAVE__BOOL@: - Some HP-UX cc and AIX IBM C compiler versions have compiler bugs when - the built-in _Bool type is used. See - https://gcc.gnu.org/ml/gcc-patches/2003-12/msg02303.html - https://lists.gnu.org/r/bug-coreutils/2005-11/msg00161.html - https://lists.gnu.org/r/bug-coreutils/2005-10/msg00086.html - Similar bugs are likely with other compilers as well; this file - wouldn't be used if was working. - So we override the _Bool type. - If !@HAVE__BOOL@: - Need to define _Bool ourselves. As 'signed char' or as an enum type? - Use of a typedef, with SunPRO C, leads to a stupid - "warning: _Bool is a keyword in ISO C99". - Use of an enum type, with IRIX cc, leads to a stupid - "warning(1185): enumerated type mixed with another type". - Even the existence of an enum type, without a typedef, - "Invalid enumerator. (badenum)" with HP-UX cc on Tru64. - The only benefit of the enum, debuggability, is not important - with these compilers. So use 'signed char' and no enum. */ -# define _Bool signed char -# else - /* With this compiler, trust the _Bool type if the compiler has it. */ -# if !@HAVE__BOOL@ - /* For the sake of symbolic names in gdb, define true and false as - enum constants, not only as macros. - It is tempting to write - typedef enum { false = 0, true = 1 } _Bool; - so that gdb prints values of type 'bool' symbolically. But then - values of type '_Bool' might promote to 'int' or 'unsigned int' - (see ISO C 99 6.7.2.2.(4)); however, '_Bool' must promote to 'int' - (see ISO C 99 6.3.1.1.(2)). So add a negative value to the - enum; this ensures that '_Bool' promotes to 'int'. */ -typedef enum { _Bool_must_promote_to_int = -1, false = 0, true = 1 } _Bool; -# endif -# endif -# endif -# define bool _Bool -#endif - -/* The other macros must be usable in preprocessor directives. */ -#ifdef __cplusplus -# define false false -# define true true -#else -# define false 0 -# define true 1 -#endif - -#define __bool_true_false_are_defined 1 - -#endif /* _GL_STDBOOL_H */ diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/stddef.in.h b/thirdparty/grub-2.04/grub-core/lib/gnulib/stddef.in.h deleted file mode 100644 index 5aad1210d..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/stddef.in.h +++ /dev/null @@ -1,114 +0,0 @@ -/* A substitute for POSIX 2008 , for platforms that have issues. - - Copyright (C) 2009-2019 Free Software Foundation, Inc. - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3, or (at your option) - any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, see . */ - -/* Written by Eric Blake. */ - -/* - * POSIX 2008 for platforms that have issues. - * - */ - -#if __GNUC__ >= 3 -@PRAGMA_SYSTEM_HEADER@ -#endif -@PRAGMA_COLUMNS@ - -#if defined __need_wchar_t || defined __need_size_t \ - || defined __need_ptrdiff_t || defined __need_NULL \ - || defined __need_wint_t -/* Special invocation convention inside gcc header files. In - particular, gcc provides a version of that blindly - redefines NULL even when __need_wint_t was defined, even though - wint_t is not normally provided by . Hence, we must - remember if special invocation has ever been used to obtain wint_t, - in which case we need to clean up NULL yet again. */ - -# if !(defined _@GUARD_PREFIX@_STDDEF_H && defined _GL_STDDEF_WINT_T) -# ifdef __need_wint_t -# define _GL_STDDEF_WINT_T -# endif -# @INCLUDE_NEXT@ @NEXT_STDDEF_H@ -# endif - -#else -/* Normal invocation convention. */ - -# ifndef _@GUARD_PREFIX@_STDDEF_H - -/* The include_next requires a split double-inclusion guard. */ - -# @INCLUDE_NEXT@ @NEXT_STDDEF_H@ - -/* On NetBSD 5.0, the definition of NULL lacks proper parentheses. */ -# if (@REPLACE_NULL@ \ - && (!defined _@GUARD_PREFIX@_STDDEF_H || defined _GL_STDDEF_WINT_T)) -# undef NULL -# ifdef __cplusplus - /* ISO C++ says that the macro NULL must expand to an integer constant - expression, hence '((void *) 0)' is not allowed in C++. */ -# if __GNUG__ >= 3 - /* GNU C++ has a __null macro that behaves like an integer ('int' or - 'long') but has the same size as a pointer. Use that, to avoid - warnings. */ -# define NULL __null -# else -# define NULL 0L -# endif -# else -# define NULL ((void *) 0) -# endif -# endif - -# ifndef _@GUARD_PREFIX@_STDDEF_H -# define _@GUARD_PREFIX@_STDDEF_H - -/* Some platforms lack wchar_t. */ -#if !@HAVE_WCHAR_T@ -# define wchar_t int -#endif - -/* Some platforms lack max_align_t. The check for _GCC_MAX_ALIGN_T is - a hack in case the configure-time test was done with g++ even though - we are currently compiling with gcc. */ -#if ! (@HAVE_MAX_ALIGN_T@ || defined _GCC_MAX_ALIGN_T) -# if !GNULIB_defined_max_align_t -/* On the x86, the maximum storage alignment of double, long, etc. is 4, - but GCC's C11 ABI for x86 says that max_align_t has an alignment of 8, - and the C11 standard allows this. Work around this problem by - using __alignof__ (which returns 8 for double) rather than _Alignof - (which returns 4), and align each union member accordingly. */ -# ifdef __GNUC__ -# define _GL_STDDEF_ALIGNAS(type) \ - __attribute__ ((__aligned__ (__alignof__ (type)))) -# else -# define _GL_STDDEF_ALIGNAS(type) /* */ -# endif -typedef union -{ - char *__p _GL_STDDEF_ALIGNAS (char *); - double __d _GL_STDDEF_ALIGNAS (double); - long double __ld _GL_STDDEF_ALIGNAS (long double); - long int __i _GL_STDDEF_ALIGNAS (long int); -} rpl_max_align_t; -# define max_align_t rpl_max_align_t -# define GNULIB_defined_max_align_t 1 -# endif -#endif - -# endif /* _@GUARD_PREFIX@_STDDEF_H */ -# endif /* _@GUARD_PREFIX@_STDDEF_H */ -#endif /* __need_XXX */ diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/stdint.in.h b/thirdparty/grub-2.04/grub-core/lib/gnulib/stdint.in.h deleted file mode 100644 index 21dd8d23e..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/stdint.in.h +++ /dev/null @@ -1,726 +0,0 @@ -/* Copyright (C) 2001-2002, 2004-2019 Free Software Foundation, Inc. - Written by Paul Eggert, Bruno Haible, Sam Steingold, Peter Burwood. - This file is part of gnulib. - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3, or (at your option) - any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, see . */ - -/* - * ISO C 99 for platforms that lack it. - * - */ - -#ifndef _@GUARD_PREFIX@_STDINT_H - -#if __GNUC__ >= 3 -@PRAGMA_SYSTEM_HEADER@ -#endif -@PRAGMA_COLUMNS@ - -/* When including a system file that in turn includes , - use the system , not our substitute. This avoids - problems with (for example) VMS, whose includes - . */ -#define _GL_JUST_INCLUDE_SYSTEM_INTTYPES_H - -/* On Android (Bionic libc), includes this file before - having defined 'time_t'. Therefore in this case avoid including - other system header files; just include the system's . - Ideally we should test __BIONIC__ here, but it is only defined after - has been included; hence test __ANDROID__ instead. */ -#if defined __ANDROID__ && defined _GL_INCLUDING_SYS_TYPES_H -# @INCLUDE_NEXT@ @NEXT_STDINT_H@ -#else - -/* Get those types that are already defined in other system include - files, so that we can "#define int8_t signed char" below without - worrying about a later system include file containing a "typedef - signed char int8_t;" that will get messed up by our macro. Our - macros should all be consistent with the system versions, except - for the "fast" types and macros, which we recommend against using - in public interfaces due to compiler differences. */ - -#if @HAVE_STDINT_H@ -# if defined __sgi && ! defined __c99 - /* Bypass IRIX's if in C89 mode, since it merely annoys users - with "This header file is to be used only for c99 mode compilations" - diagnostics. */ -# define __STDINT_H__ -# endif - - /* Some pre-C++11 implementations need this. */ -# ifdef __cplusplus -# ifndef __STDC_CONSTANT_MACROS -# define __STDC_CONSTANT_MACROS 1 -# endif -# ifndef __STDC_LIMIT_MACROS -# define __STDC_LIMIT_MACROS 1 -# endif -# endif - - /* Other systems may have an incomplete or buggy . - Include it before , since any "#include " - in would reinclude us, skipping our contents because - _@GUARD_PREFIX@_STDINT_H is defined. - The include_next requires a split double-inclusion guard. */ -# @INCLUDE_NEXT@ @NEXT_STDINT_H@ -#endif - -#if ! defined _@GUARD_PREFIX@_STDINT_H && ! defined _GL_JUST_INCLUDE_SYSTEM_STDINT_H -#define _@GUARD_PREFIX@_STDINT_H - -/* Get SCHAR_MIN, SCHAR_MAX, UCHAR_MAX, INT_MIN, INT_MAX, - LONG_MIN, LONG_MAX, ULONG_MAX, _GL_INTEGER_WIDTH. */ -#include - -/* Override WINT_MIN and WINT_MAX if gnulib's or overrides - wint_t. */ -#if @GNULIB_OVERRIDES_WINT_T@ -# undef WINT_MIN -# undef WINT_MAX -# define WINT_MIN 0x0U -# define WINT_MAX 0xffffffffU -#endif - -#if ! @HAVE_C99_STDINT_H@ - -/* defines some of the stdint.h types as well, on glibc, - IRIX 6.5, and OpenBSD 3.8 (via ). - AIX 5.2 isn't needed and causes troubles. - Mac OS X 10.4.6 includes (which is us), but - relies on the system definitions, so include - after @NEXT_STDINT_H@. */ -# if @HAVE_SYS_TYPES_H@ && ! defined _AIX -# include -# endif - -# if @HAVE_INTTYPES_H@ - /* In OpenBSD 3.8, includes , which defines - int{8,16,32,64}_t, uint{8,16,32,64}_t and __BIT_TYPES_DEFINED__. - also defines intptr_t and uintptr_t. */ -# include -# elif @HAVE_SYS_INTTYPES_H@ - /* Solaris 7 has the types except the *_fast*_t types, and - the macros except for *_FAST*_*, INTPTR_MIN, PTRDIFF_MIN, PTRDIFF_MAX. */ -# include -# endif - -# if @HAVE_SYS_BITYPES_H@ && ! defined __BIT_TYPES_DEFINED__ - /* Linux libc4 >= 4.6.7 and libc5 have a that defines - int{8,16,32,64}_t and __BIT_TYPES_DEFINED__. In libc5 >= 5.2.2 it is - included by . */ -# include -# endif - -# undef _GL_JUST_INCLUDE_SYSTEM_INTTYPES_H - -/* Minimum and maximum values for an integer type under the usual assumption. - Return an unspecified value if BITS == 0, adding a check to pacify - picky compilers. */ - -/* These are separate macros, because if you try to merge these macros into - a single one, HP-UX cc rejects the resulting expression in constant - expressions. */ -# define _STDINT_UNSIGNED_MIN(bits, zero) \ - (zero) -# define _STDINT_SIGNED_MIN(bits, zero) \ - (~ _STDINT_MAX (1, bits, zero)) - -# define _STDINT_MAX(signed, bits, zero) \ - (((((zero) + 1) << ((bits) ? (bits) - 1 - (signed) : 0)) - 1) * 2 + 1) - -#if !GNULIB_defined_stdint_types - -/* 7.18.1.1. Exact-width integer types */ - -/* Here we assume a standard architecture where the hardware integer - types have 8, 16, 32, optionally 64 bits. */ - -# undef int8_t -# undef uint8_t -typedef signed char gl_int8_t; -typedef unsigned char gl_uint8_t; -# define int8_t gl_int8_t -# define uint8_t gl_uint8_t - -# undef int16_t -# undef uint16_t -typedef short int gl_int16_t; -typedef unsigned short int gl_uint16_t; -# define int16_t gl_int16_t -# define uint16_t gl_uint16_t - -# undef int32_t -# undef uint32_t -typedef int gl_int32_t; -typedef unsigned int gl_uint32_t; -# define int32_t gl_int32_t -# define uint32_t gl_uint32_t - -/* If the system defines INT64_MAX, assume int64_t works. That way, - if the underlying platform defines int64_t to be a 64-bit long long - int, the code below won't mistakenly define it to be a 64-bit long - int, which would mess up C++ name mangling. We must use #ifdef - rather than #if, to avoid an error with HP-UX 10.20 cc. */ - -# ifdef INT64_MAX -# define GL_INT64_T -# else -/* Do not undefine int64_t if gnulib is not being used with 64-bit - types, since otherwise it breaks platforms like Tandem/NSK. */ -# if LONG_MAX >> 31 >> 31 == 1 -# undef int64_t -typedef long int gl_int64_t; -# define int64_t gl_int64_t -# define GL_INT64_T -# elif defined _MSC_VER -# undef int64_t -typedef __int64 gl_int64_t; -# define int64_t gl_int64_t -# define GL_INT64_T -# elif @HAVE_LONG_LONG_INT@ -# undef int64_t -typedef long long int gl_int64_t; -# define int64_t gl_int64_t -# define GL_INT64_T -# endif -# endif - -# ifdef UINT64_MAX -# define GL_UINT64_T -# else -# if ULONG_MAX >> 31 >> 31 >> 1 == 1 -# undef uint64_t -typedef unsigned long int gl_uint64_t; -# define uint64_t gl_uint64_t -# define GL_UINT64_T -# elif defined _MSC_VER -# undef uint64_t -typedef unsigned __int64 gl_uint64_t; -# define uint64_t gl_uint64_t -# define GL_UINT64_T -# elif @HAVE_UNSIGNED_LONG_LONG_INT@ -# undef uint64_t -typedef unsigned long long int gl_uint64_t; -# define uint64_t gl_uint64_t -# define GL_UINT64_T -# endif -# endif - -/* Avoid collision with Solaris 2.5.1 etc. */ -# define _UINT8_T -# define _UINT32_T -# define _UINT64_T - - -/* 7.18.1.2. Minimum-width integer types */ - -/* Here we assume a standard architecture where the hardware integer - types have 8, 16, 32, optionally 64 bits. Therefore the leastN_t types - are the same as the corresponding N_t types. */ - -# undef int_least8_t -# undef uint_least8_t -# undef int_least16_t -# undef uint_least16_t -# undef int_least32_t -# undef uint_least32_t -# undef int_least64_t -# undef uint_least64_t -# define int_least8_t int8_t -# define uint_least8_t uint8_t -# define int_least16_t int16_t -# define uint_least16_t uint16_t -# define int_least32_t int32_t -# define uint_least32_t uint32_t -# ifdef GL_INT64_T -# define int_least64_t int64_t -# endif -# ifdef GL_UINT64_T -# define uint_least64_t uint64_t -# endif - -/* 7.18.1.3. Fastest minimum-width integer types */ - -/* Note: Other substitutes may define these types differently. - It is not recommended to use these types in public header files. */ - -/* Here we assume a standard architecture where the hardware integer - types have 8, 16, 32, optionally 64 bits. Therefore the fastN_t types - are taken from the same list of types. The following code normally - uses types consistent with glibc, as that lessens the chance of - incompatibility with older GNU hosts. */ - -# undef int_fast8_t -# undef uint_fast8_t -# undef int_fast16_t -# undef uint_fast16_t -# undef int_fast32_t -# undef uint_fast32_t -# undef int_fast64_t -# undef uint_fast64_t -typedef signed char gl_int_fast8_t; -typedef unsigned char gl_uint_fast8_t; - -# ifdef __sun -/* Define types compatible with SunOS 5.10, so that code compiled under - earlier SunOS versions works with code compiled under SunOS 5.10. */ -typedef int gl_int_fast32_t; -typedef unsigned int gl_uint_fast32_t; -# else -typedef long int gl_int_fast32_t; -typedef unsigned long int gl_uint_fast32_t; -# endif -typedef gl_int_fast32_t gl_int_fast16_t; -typedef gl_uint_fast32_t gl_uint_fast16_t; - -# define int_fast8_t gl_int_fast8_t -# define uint_fast8_t gl_uint_fast8_t -# define int_fast16_t gl_int_fast16_t -# define uint_fast16_t gl_uint_fast16_t -# define int_fast32_t gl_int_fast32_t -# define uint_fast32_t gl_uint_fast32_t -# ifdef GL_INT64_T -# define int_fast64_t int64_t -# endif -# ifdef GL_UINT64_T -# define uint_fast64_t uint64_t -# endif - -/* 7.18.1.4. Integer types capable of holding object pointers */ - -/* kLIBC's stdint.h defines _INTPTR_T_DECLARED and needs its own - definitions of intptr_t and uintptr_t (which use int and unsigned) - to avoid clashes with declarations of system functions like sbrk. */ -# ifndef _INTPTR_T_DECLARED -# undef intptr_t -# undef uintptr_t -typedef long int gl_intptr_t; -typedef unsigned long int gl_uintptr_t; -# define intptr_t gl_intptr_t -# define uintptr_t gl_uintptr_t -# endif - -/* 7.18.1.5. Greatest-width integer types */ - -/* Note: These types are compiler dependent. It may be unwise to use them in - public header files. */ - -/* If the system defines INTMAX_MAX, assume that intmax_t works, and - similarly for UINTMAX_MAX and uintmax_t. This avoids problems with - assuming one type where another is used by the system. */ - -# ifndef INTMAX_MAX -# undef INTMAX_C -# undef intmax_t -# if @HAVE_LONG_LONG_INT@ && LONG_MAX >> 30 == 1 -typedef long long int gl_intmax_t; -# define intmax_t gl_intmax_t -# elif defined GL_INT64_T -# define intmax_t int64_t -# else -typedef long int gl_intmax_t; -# define intmax_t gl_intmax_t -# endif -# endif - -# ifndef UINTMAX_MAX -# undef UINTMAX_C -# undef uintmax_t -# if @HAVE_UNSIGNED_LONG_LONG_INT@ && ULONG_MAX >> 31 == 1 -typedef unsigned long long int gl_uintmax_t; -# define uintmax_t gl_uintmax_t -# elif defined GL_UINT64_T -# define uintmax_t uint64_t -# else -typedef unsigned long int gl_uintmax_t; -# define uintmax_t gl_uintmax_t -# endif -# endif - -/* Verify that intmax_t and uintmax_t have the same size. Too much code - breaks if this is not the case. If this check fails, the reason is likely - to be found in the autoconf macros. */ -typedef int _verify_intmax_size[sizeof (intmax_t) == sizeof (uintmax_t) - ? 1 : -1]; - -# define GNULIB_defined_stdint_types 1 -# endif /* !GNULIB_defined_stdint_types */ - -/* 7.18.2. Limits of specified-width integer types */ - -/* 7.18.2.1. Limits of exact-width integer types */ - -/* Here we assume a standard architecture where the hardware integer - types have 8, 16, 32, optionally 64 bits. */ - -# undef INT8_MIN -# undef INT8_MAX -# undef UINT8_MAX -# define INT8_MIN (~ INT8_MAX) -# define INT8_MAX 127 -# define UINT8_MAX 255 - -# undef INT16_MIN -# undef INT16_MAX -# undef UINT16_MAX -# define INT16_MIN (~ INT16_MAX) -# define INT16_MAX 32767 -# define UINT16_MAX 65535 - -# undef INT32_MIN -# undef INT32_MAX -# undef UINT32_MAX -# define INT32_MIN (~ INT32_MAX) -# define INT32_MAX 2147483647 -# define UINT32_MAX 4294967295U - -# if defined GL_INT64_T && ! defined INT64_MAX -/* Prefer (- INTMAX_C (1) << 63) over (~ INT64_MAX) because SunPRO C 5.0 - evaluates the latter incorrectly in preprocessor expressions. */ -# define INT64_MIN (- INTMAX_C (1) << 63) -# define INT64_MAX INTMAX_C (9223372036854775807) -# endif - -# if defined GL_UINT64_T && ! defined UINT64_MAX -# define UINT64_MAX UINTMAX_C (18446744073709551615) -# endif - -/* 7.18.2.2. Limits of minimum-width integer types */ - -/* Here we assume a standard architecture where the hardware integer - types have 8, 16, 32, optionally 64 bits. Therefore the leastN_t types - are the same as the corresponding N_t types. */ - -# undef INT_LEAST8_MIN -# undef INT_LEAST8_MAX -# undef UINT_LEAST8_MAX -# define INT_LEAST8_MIN INT8_MIN -# define INT_LEAST8_MAX INT8_MAX -# define UINT_LEAST8_MAX UINT8_MAX - -# undef INT_LEAST16_MIN -# undef INT_LEAST16_MAX -# undef UINT_LEAST16_MAX -# define INT_LEAST16_MIN INT16_MIN -# define INT_LEAST16_MAX INT16_MAX -# define UINT_LEAST16_MAX UINT16_MAX - -# undef INT_LEAST32_MIN -# undef INT_LEAST32_MAX -# undef UINT_LEAST32_MAX -# define INT_LEAST32_MIN INT32_MIN -# define INT_LEAST32_MAX INT32_MAX -# define UINT_LEAST32_MAX UINT32_MAX - -# undef INT_LEAST64_MIN -# undef INT_LEAST64_MAX -# ifdef GL_INT64_T -# define INT_LEAST64_MIN INT64_MIN -# define INT_LEAST64_MAX INT64_MAX -# endif - -# undef UINT_LEAST64_MAX -# ifdef GL_UINT64_T -# define UINT_LEAST64_MAX UINT64_MAX -# endif - -/* 7.18.2.3. Limits of fastest minimum-width integer types */ - -/* Here we assume a standard architecture where the hardware integer - types have 8, 16, 32, optionally 64 bits. Therefore the fastN_t types - are taken from the same list of types. */ - -# undef INT_FAST8_MIN -# undef INT_FAST8_MAX -# undef UINT_FAST8_MAX -# define INT_FAST8_MIN SCHAR_MIN -# define INT_FAST8_MAX SCHAR_MAX -# define UINT_FAST8_MAX UCHAR_MAX - -# undef INT_FAST16_MIN -# undef INT_FAST16_MAX -# undef UINT_FAST16_MAX -# define INT_FAST16_MIN INT_FAST32_MIN -# define INT_FAST16_MAX INT_FAST32_MAX -# define UINT_FAST16_MAX UINT_FAST32_MAX - -# undef INT_FAST32_MIN -# undef INT_FAST32_MAX -# undef UINT_FAST32_MAX -# ifdef __sun -# define INT_FAST32_MIN INT_MIN -# define INT_FAST32_MAX INT_MAX -# define UINT_FAST32_MAX UINT_MAX -# else -# define INT_FAST32_MIN LONG_MIN -# define INT_FAST32_MAX LONG_MAX -# define UINT_FAST32_MAX ULONG_MAX -# endif - -# undef INT_FAST64_MIN -# undef INT_FAST64_MAX -# ifdef GL_INT64_T -# define INT_FAST64_MIN INT64_MIN -# define INT_FAST64_MAX INT64_MAX -# endif - -# undef UINT_FAST64_MAX -# ifdef GL_UINT64_T -# define UINT_FAST64_MAX UINT64_MAX -# endif - -/* 7.18.2.4. Limits of integer types capable of holding object pointers */ - -# undef INTPTR_MIN -# undef INTPTR_MAX -# undef UINTPTR_MAX -# define INTPTR_MIN LONG_MIN -# define INTPTR_MAX LONG_MAX -# define UINTPTR_MAX ULONG_MAX - -/* 7.18.2.5. Limits of greatest-width integer types */ - -# ifndef INTMAX_MAX -# undef INTMAX_MIN -# ifdef INT64_MAX -# define INTMAX_MIN INT64_MIN -# define INTMAX_MAX INT64_MAX -# else -# define INTMAX_MIN INT32_MIN -# define INTMAX_MAX INT32_MAX -# endif -# endif - -# ifndef UINTMAX_MAX -# ifdef UINT64_MAX -# define UINTMAX_MAX UINT64_MAX -# else -# define UINTMAX_MAX UINT32_MAX -# endif -# endif - -/* 7.18.3. Limits of other integer types */ - -/* ptrdiff_t limits */ -# undef PTRDIFF_MIN -# undef PTRDIFF_MAX -# if @APPLE_UNIVERSAL_BUILD@ -# ifdef _LP64 -# define PTRDIFF_MIN _STDINT_SIGNED_MIN (64, 0l) -# define PTRDIFF_MAX _STDINT_MAX (1, 64, 0l) -# else -# define PTRDIFF_MIN _STDINT_SIGNED_MIN (32, 0) -# define PTRDIFF_MAX _STDINT_MAX (1, 32, 0) -# endif -# else -# define PTRDIFF_MIN \ - _STDINT_SIGNED_MIN (@BITSIZEOF_PTRDIFF_T@, 0@PTRDIFF_T_SUFFIX@) -# define PTRDIFF_MAX \ - _STDINT_MAX (1, @BITSIZEOF_PTRDIFF_T@, 0@PTRDIFF_T_SUFFIX@) -# endif - -/* sig_atomic_t limits */ -# undef SIG_ATOMIC_MIN -# undef SIG_ATOMIC_MAX -# if @HAVE_SIGNED_SIG_ATOMIC_T@ -# define SIG_ATOMIC_MIN \ - _STDINT_SIGNED_MIN (@BITSIZEOF_SIG_ATOMIC_T@, 0@SIG_ATOMIC_T_SUFFIX@) -# else -# define SIG_ATOMIC_MIN \ - _STDINT_UNSIGNED_MIN (@BITSIZEOF_SIG_ATOMIC_T@, 0@SIG_ATOMIC_T_SUFFIX@) -# endif -# define SIG_ATOMIC_MAX \ - _STDINT_MAX (@HAVE_SIGNED_SIG_ATOMIC_T@, @BITSIZEOF_SIG_ATOMIC_T@, \ - 0@SIG_ATOMIC_T_SUFFIX@) - - -/* size_t limit */ -# undef SIZE_MAX -# if @APPLE_UNIVERSAL_BUILD@ -# ifdef _LP64 -# define SIZE_MAX _STDINT_MAX (0, 64, 0ul) -# else -# define SIZE_MAX _STDINT_MAX (0, 32, 0ul) -# endif -# else -# define SIZE_MAX _STDINT_MAX (0, @BITSIZEOF_SIZE_T@, 0@SIZE_T_SUFFIX@) -# endif - -/* wchar_t limits */ -/* Get WCHAR_MIN, WCHAR_MAX. - This include is not on the top, above, because on OSF/1 4.0 we have a - sequence of nested includes - -> -> -> , and the latter includes - and assumes its types are already defined. */ -# if @HAVE_WCHAR_H@ && ! (defined WCHAR_MIN && defined WCHAR_MAX) - /* BSD/OS 4.0.1 has a bug: , and must be - included before . */ -# include -# include -# include -# define _GL_JUST_INCLUDE_SYSTEM_WCHAR_H -# include -# undef _GL_JUST_INCLUDE_SYSTEM_WCHAR_H -# endif -# undef WCHAR_MIN -# undef WCHAR_MAX -# if @HAVE_SIGNED_WCHAR_T@ -# define WCHAR_MIN \ - _STDINT_SIGNED_MIN (@BITSIZEOF_WCHAR_T@, 0@WCHAR_T_SUFFIX@) -# else -# define WCHAR_MIN \ - _STDINT_UNSIGNED_MIN (@BITSIZEOF_WCHAR_T@, 0@WCHAR_T_SUFFIX@) -# endif -# define WCHAR_MAX \ - _STDINT_MAX (@HAVE_SIGNED_WCHAR_T@, @BITSIZEOF_WCHAR_T@, 0@WCHAR_T_SUFFIX@) - -/* wint_t limits */ -# undef WINT_MIN -# undef WINT_MAX -# if @HAVE_SIGNED_WINT_T@ -# define WINT_MIN \ - _STDINT_SIGNED_MIN (@BITSIZEOF_WINT_T@, 0@WINT_T_SUFFIX@) -# else -# define WINT_MIN \ - _STDINT_UNSIGNED_MIN (@BITSIZEOF_WINT_T@, 0@WINT_T_SUFFIX@) -# endif -# define WINT_MAX \ - _STDINT_MAX (@HAVE_SIGNED_WINT_T@, @BITSIZEOF_WINT_T@, 0@WINT_T_SUFFIX@) - -/* 7.18.4. Macros for integer constants */ - -/* 7.18.4.1. Macros for minimum-width integer constants */ -/* According to ISO C 99 Technical Corrigendum 1 */ - -/* Here we assume a standard architecture where the hardware integer - types have 8, 16, 32, optionally 64 bits, and int is 32 bits. */ - -# undef INT8_C -# undef UINT8_C -# define INT8_C(x) x -# define UINT8_C(x) x - -# undef INT16_C -# undef UINT16_C -# define INT16_C(x) x -# define UINT16_C(x) x - -# undef INT32_C -# undef UINT32_C -# define INT32_C(x) x -# define UINT32_C(x) x ## U - -# undef INT64_C -# undef UINT64_C -# if LONG_MAX >> 31 >> 31 == 1 -# define INT64_C(x) x##L -# elif defined _MSC_VER -# define INT64_C(x) x##i64 -# elif @HAVE_LONG_LONG_INT@ -# define INT64_C(x) x##LL -# endif -# if ULONG_MAX >> 31 >> 31 >> 1 == 1 -# define UINT64_C(x) x##UL -# elif defined _MSC_VER -# define UINT64_C(x) x##ui64 -# elif @HAVE_UNSIGNED_LONG_LONG_INT@ -# define UINT64_C(x) x##ULL -# endif - -/* 7.18.4.2. Macros for greatest-width integer constants */ - -# ifndef INTMAX_C -# if @HAVE_LONG_LONG_INT@ && LONG_MAX >> 30 == 1 -# define INTMAX_C(x) x##LL -# elif defined GL_INT64_T -# define INTMAX_C(x) INT64_C(x) -# else -# define INTMAX_C(x) x##L -# endif -# endif - -# ifndef UINTMAX_C -# if @HAVE_UNSIGNED_LONG_LONG_INT@ && ULONG_MAX >> 31 == 1 -# define UINTMAX_C(x) x##ULL -# elif defined GL_UINT64_T -# define UINTMAX_C(x) UINT64_C(x) -# else -# define UINTMAX_C(x) x##UL -# endif -# endif - -#endif /* !@HAVE_C99_STDINT_H@ */ - -/* Macros specified by ISO/IEC TS 18661-1:2014. */ - -#if (!defined UINTMAX_WIDTH \ - && (defined _GNU_SOURCE || defined __STDC_WANT_IEC_60559_BFP_EXT__)) -# ifdef INT8_MAX -# define INT8_WIDTH _GL_INTEGER_WIDTH (INT8_MIN, INT8_MAX) -# endif -# ifdef UINT8_MAX -# define UINT8_WIDTH _GL_INTEGER_WIDTH (0, UINT8_MAX) -# endif -# ifdef INT16_MAX -# define INT16_WIDTH _GL_INTEGER_WIDTH (INT16_MIN, INT16_MAX) -# endif -# ifdef UINT16_MAX -# define UINT16_WIDTH _GL_INTEGER_WIDTH (0, UINT16_MAX) -# endif -# ifdef INT32_MAX -# define INT32_WIDTH _GL_INTEGER_WIDTH (INT32_MIN, INT32_MAX) -# endif -# ifdef UINT32_MAX -# define UINT32_WIDTH _GL_INTEGER_WIDTH (0, UINT32_MAX) -# endif -# ifdef INT64_MAX -# define INT64_WIDTH _GL_INTEGER_WIDTH (INT64_MIN, INT64_MAX) -# endif -# ifdef UINT64_MAX -# define UINT64_WIDTH _GL_INTEGER_WIDTH (0, UINT64_MAX) -# endif -# define INT_LEAST8_WIDTH _GL_INTEGER_WIDTH (INT_LEAST8_MIN, INT_LEAST8_MAX) -# define UINT_LEAST8_WIDTH _GL_INTEGER_WIDTH (0, UINT_LEAST8_MAX) -# define INT_LEAST16_WIDTH _GL_INTEGER_WIDTH (INT_LEAST16_MIN, INT_LEAST16_MAX) -# define UINT_LEAST16_WIDTH _GL_INTEGER_WIDTH (0, UINT_LEAST16_MAX) -# define INT_LEAST32_WIDTH _GL_INTEGER_WIDTH (INT_LEAST32_MIN, INT_LEAST32_MAX) -# define UINT_LEAST32_WIDTH _GL_INTEGER_WIDTH (0, UINT_LEAST32_MAX) -# define INT_LEAST64_WIDTH _GL_INTEGER_WIDTH (INT_LEAST64_MIN, INT_LEAST64_MAX) -# define UINT_LEAST64_WIDTH _GL_INTEGER_WIDTH (0, UINT_LEAST64_MAX) -# define INT_FAST8_WIDTH _GL_INTEGER_WIDTH (INT_FAST8_MIN, INT_FAST8_MAX) -# define UINT_FAST8_WIDTH _GL_INTEGER_WIDTH (0, UINT_FAST8_MAX) -# define INT_FAST16_WIDTH _GL_INTEGER_WIDTH (INT_FAST16_MIN, INT_FAST16_MAX) -# define UINT_FAST16_WIDTH _GL_INTEGER_WIDTH (0, UINT_FAST16_MAX) -# define INT_FAST32_WIDTH _GL_INTEGER_WIDTH (INT_FAST32_MIN, INT_FAST32_MAX) -# define UINT_FAST32_WIDTH _GL_INTEGER_WIDTH (0, UINT_FAST32_MAX) -# define INT_FAST64_WIDTH _GL_INTEGER_WIDTH (INT_FAST64_MIN, INT_FAST64_MAX) -# define UINT_FAST64_WIDTH _GL_INTEGER_WIDTH (0, UINT_FAST64_MAX) -# define INTPTR_WIDTH _GL_INTEGER_WIDTH (INTPTR_MIN, INTPTR_MAX) -# define UINTPTR_WIDTH _GL_INTEGER_WIDTH (0, UINTPTR_MAX) -# define INTMAX_WIDTH _GL_INTEGER_WIDTH (INTMAX_MIN, INTMAX_MAX) -# define UINTMAX_WIDTH _GL_INTEGER_WIDTH (0, UINTMAX_MAX) -# define PTRDIFF_WIDTH _GL_INTEGER_WIDTH (PTRDIFF_MIN, PTRDIFF_MAX) -# define SIZE_WIDTH _GL_INTEGER_WIDTH (0, SIZE_MAX) -# define WCHAR_WIDTH _GL_INTEGER_WIDTH (WCHAR_MIN, WCHAR_MAX) -# ifdef WINT_MAX -# define WINT_WIDTH _GL_INTEGER_WIDTH (WINT_MIN, WINT_MAX) -# endif -# ifdef SIG_ATOMIC_MAX -# define SIG_ATOMIC_WIDTH _GL_INTEGER_WIDTH (SIG_ATOMIC_MIN, SIG_ATOMIC_MAX) -# endif -#endif /* !WINT_WIDTH && (_GNU_SOURCE || __STDC_WANT_IEC_60559_BFP_EXT__) */ - -#endif /* _@GUARD_PREFIX@_STDINT_H */ -#endif /* !(defined __ANDROID__ && ...) */ -#endif /* !defined _@GUARD_PREFIX@_STDINT_H && !defined _GL_JUST_INCLUDE_SYSTEM_STDINT_H */ diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/stdio.in.h b/thirdparty/grub-2.04/grub-core/lib/gnulib/stdio.in.h deleted file mode 100644 index acf29c4be..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/stdio.in.h +++ /dev/null @@ -1,1377 +0,0 @@ -/* A GNU-like . - - Copyright (C) 2004, 2007-2019 Free Software Foundation, Inc. - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3, or (at your option) - any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, see . */ - -#if __GNUC__ >= 3 -@PRAGMA_SYSTEM_HEADER@ -#endif -@PRAGMA_COLUMNS@ - -#if defined __need_FILE || defined __need___FILE || defined _GL_ALREADY_INCLUDING_STDIO_H -/* Special invocation convention: - - Inside glibc header files. - - On OSF/1 5.1 we have a sequence of nested includes - -> -> -> -> - -> -> -> . - In this situation, the functions are not yet declared, therefore we cannot - provide the C++ aliases. */ - -#@INCLUDE_NEXT@ @NEXT_STDIO_H@ - -#else -/* Normal invocation convention. */ - -#ifndef _@GUARD_PREFIX@_STDIO_H - -#define _GL_ALREADY_INCLUDING_STDIO_H - -/* The include_next requires a split double-inclusion guard. */ -#@INCLUDE_NEXT@ @NEXT_STDIO_H@ - -#undef _GL_ALREADY_INCLUDING_STDIO_H - -#ifndef _@GUARD_PREFIX@_STDIO_H -#define _@GUARD_PREFIX@_STDIO_H - -/* Get va_list. Needed on many systems, including glibc 2.8. */ -#include - -#include - -/* Get off_t and ssize_t. Needed on many systems, including glibc 2.8 - and eglibc 2.11.2. - May also define off_t to a 64-bit type on native Windows. */ -#include - -/* The __attribute__ feature is available in gcc versions 2.5 and later. - The __-protected variants of the attributes 'format' and 'printf' are - accepted by gcc versions 2.6.4 (effectively 2.7) and later. - We enable _GL_ATTRIBUTE_FORMAT only if these are supported too, because - gnulib and libintl do '#define printf __printf__' when they override - the 'printf' function. */ -#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 7) -# define _GL_ATTRIBUTE_FORMAT(spec) __attribute__ ((__format__ spec)) -#else -# define _GL_ATTRIBUTE_FORMAT(spec) /* empty */ -#endif - -/* _GL_ATTRIBUTE_FORMAT_PRINTF - indicates to GCC that the function takes a format string and arguments, - where the format string directives are the ones standardized by ISO C99 - and POSIX. */ -#if __GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 4) -# define _GL_ATTRIBUTE_FORMAT_PRINTF(formatstring_parameter, first_argument) \ - _GL_ATTRIBUTE_FORMAT ((__gnu_printf__, formatstring_parameter, first_argument)) -#else -# define _GL_ATTRIBUTE_FORMAT_PRINTF(formatstring_parameter, first_argument) \ - _GL_ATTRIBUTE_FORMAT ((__printf__, formatstring_parameter, first_argument)) -#endif - -/* _GL_ATTRIBUTE_FORMAT_PRINTF_SYSTEM is like _GL_ATTRIBUTE_FORMAT_PRINTF, - except that it indicates to GCC that the supported format string directives - are the ones of the system printf(), rather than the ones standardized by - ISO C99 and POSIX. */ -#if GNULIB_PRINTF_ATTRIBUTE_FLAVOR_GNU -# define _GL_ATTRIBUTE_FORMAT_PRINTF_SYSTEM(formatstring_parameter, first_argument) \ - _GL_ATTRIBUTE_FORMAT_PRINTF (formatstring_parameter, first_argument) -#else -# define _GL_ATTRIBUTE_FORMAT_PRINTF_SYSTEM(formatstring_parameter, first_argument) \ - _GL_ATTRIBUTE_FORMAT ((__printf__, formatstring_parameter, first_argument)) -#endif - -/* _GL_ATTRIBUTE_FORMAT_SCANF - indicates to GCC that the function takes a format string and arguments, - where the format string directives are the ones standardized by ISO C99 - and POSIX. */ -#if __GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 4) -# define _GL_ATTRIBUTE_FORMAT_SCANF(formatstring_parameter, first_argument) \ - _GL_ATTRIBUTE_FORMAT ((__gnu_scanf__, formatstring_parameter, first_argument)) -#else -# define _GL_ATTRIBUTE_FORMAT_SCANF(formatstring_parameter, first_argument) \ - _GL_ATTRIBUTE_FORMAT ((__scanf__, formatstring_parameter, first_argument)) -#endif - -/* _GL_ATTRIBUTE_FORMAT_SCANF_SYSTEM is like _GL_ATTRIBUTE_FORMAT_SCANF, - except that it indicates to GCC that the supported format string directives - are the ones of the system scanf(), rather than the ones standardized by - ISO C99 and POSIX. */ -#define _GL_ATTRIBUTE_FORMAT_SCANF_SYSTEM(formatstring_parameter, first_argument) \ - _GL_ATTRIBUTE_FORMAT ((__scanf__, formatstring_parameter, first_argument)) - -/* Solaris 10 and NetBSD 7.0 declare renameat in , not in . */ -/* But in any case avoid namespace pollution on glibc systems. */ -#if (@GNULIB_RENAMEAT@ || defined GNULIB_POSIXCHECK) && (defined __sun || defined __NetBSD__) \ - && ! defined __GLIBC__ -# include -#endif - -/* MSVC declares 'perror' in , not in . We must include - it before we #define perror rpl_perror. */ -/* But in any case avoid namespace pollution on glibc systems. */ -#if (@GNULIB_PERROR@ || defined GNULIB_POSIXCHECK) \ - && (defined _WIN32 && ! defined __CYGWIN__) \ - && ! defined __GLIBC__ -# include -#endif - -/* MSVC declares 'remove' in , not in . We must include - it before we #define remove rpl_remove. */ -/* MSVC declares 'rename' in , not in . We must include - it before we #define rename rpl_rename. */ -/* But in any case avoid namespace pollution on glibc systems. */ -#if (@GNULIB_REMOVE@ || @GNULIB_RENAME@ || defined GNULIB_POSIXCHECK) \ - && (defined _WIN32 && ! defined __CYGWIN__) \ - && ! defined __GLIBC__ -# include -#endif - - -/* The definitions of _GL_FUNCDECL_RPL etc. are copied here. */ - -/* The definition of _GL_ARG_NONNULL is copied here. */ - -/* The definition of _GL_WARN_ON_USE is copied here. */ - -/* Macros for stringification. */ -#define _GL_STDIO_STRINGIZE(token) #token -#define _GL_STDIO_MACROEXPAND_AND_STRINGIZE(token) _GL_STDIO_STRINGIZE(token) - -/* When also using extern inline, suppress the use of static inline in - standard headers of problematic Apple configurations, as Libc at - least through Libc-825.26 (2013-04-09) mishandles it; see, e.g., - . - Perhaps Apple will fix this some day. */ -#if (defined _GL_EXTERN_INLINE_IN_USE && defined __APPLE__ \ - && defined __GNUC__ && defined __STDC__) -# undef putc_unlocked -#endif - -#if @GNULIB_DPRINTF@ -# if @REPLACE_DPRINTF@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# define dprintf rpl_dprintf -# endif -_GL_FUNCDECL_RPL (dprintf, int, (int fd, const char *format, ...) - _GL_ATTRIBUTE_FORMAT_PRINTF (2, 3) - _GL_ARG_NONNULL ((2))); -_GL_CXXALIAS_RPL (dprintf, int, (int fd, const char *format, ...)); -# else -# if !@HAVE_DPRINTF@ -_GL_FUNCDECL_SYS (dprintf, int, (int fd, const char *format, ...) - _GL_ATTRIBUTE_FORMAT_PRINTF (2, 3) - _GL_ARG_NONNULL ((2))); -# endif -_GL_CXXALIAS_SYS (dprintf, int, (int fd, const char *format, ...)); -# endif -_GL_CXXALIASWARN (dprintf); -#elif defined GNULIB_POSIXCHECK -# undef dprintf -# if HAVE_RAW_DECL_DPRINTF -_GL_WARN_ON_USE (dprintf, "dprintf is unportable - " - "use gnulib module dprintf for portability"); -# endif -#endif - -#if @GNULIB_FCLOSE@ -/* Close STREAM and its underlying file descriptor. */ -# if @REPLACE_FCLOSE@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# define fclose rpl_fclose -# endif -_GL_FUNCDECL_RPL (fclose, int, (FILE *stream) _GL_ARG_NONNULL ((1))); -_GL_CXXALIAS_RPL (fclose, int, (FILE *stream)); -# else -_GL_CXXALIAS_SYS (fclose, int, (FILE *stream)); -# endif -_GL_CXXALIASWARN (fclose); -#elif defined GNULIB_POSIXCHECK -# undef fclose -/* Assume fclose is always declared. */ -_GL_WARN_ON_USE (fclose, "fclose is not always POSIX compliant - " - "use gnulib module fclose for portable POSIX compliance"); -#endif - -#if @GNULIB_FDOPEN@ -# if @REPLACE_FDOPEN@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# undef fdopen -# define fdopen rpl_fdopen -# endif -_GL_FUNCDECL_RPL (fdopen, FILE *, (int fd, const char *mode) - _GL_ARG_NONNULL ((2))); -_GL_CXXALIAS_RPL (fdopen, FILE *, (int fd, const char *mode)); -# else -_GL_CXXALIAS_SYS (fdopen, FILE *, (int fd, const char *mode)); -# endif -_GL_CXXALIASWARN (fdopen); -#elif defined GNULIB_POSIXCHECK -# undef fdopen -/* Assume fdopen is always declared. */ -_GL_WARN_ON_USE (fdopen, "fdopen on native Windows platforms is not POSIX compliant - " - "use gnulib module fdopen for portability"); -#endif - -#if @GNULIB_FFLUSH@ -/* Flush all pending data on STREAM according to POSIX rules. Both - output and seekable input streams are supported. - Note! LOSS OF DATA can occur if fflush is applied on an input stream - that is _not_seekable_ or on an update stream that is _not_seekable_ - and in which the most recent operation was input. Seekability can - be tested with lseek(fileno(fp),0,SEEK_CUR). */ -# if @REPLACE_FFLUSH@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# define fflush rpl_fflush -# endif -_GL_FUNCDECL_RPL (fflush, int, (FILE *gl_stream)); -_GL_CXXALIAS_RPL (fflush, int, (FILE *gl_stream)); -# else -_GL_CXXALIAS_SYS (fflush, int, (FILE *gl_stream)); -# endif -_GL_CXXALIASWARN (fflush); -#elif defined GNULIB_POSIXCHECK -# undef fflush -/* Assume fflush is always declared. */ -_GL_WARN_ON_USE (fflush, "fflush is not always POSIX compliant - " - "use gnulib module fflush for portable POSIX compliance"); -#endif - -#if @GNULIB_FGETC@ -# if @REPLACE_STDIO_READ_FUNCS@ && @GNULIB_STDIO_H_NONBLOCKING@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# undef fgetc -# define fgetc rpl_fgetc -# endif -_GL_FUNCDECL_RPL (fgetc, int, (FILE *stream) _GL_ARG_NONNULL ((1))); -_GL_CXXALIAS_RPL (fgetc, int, (FILE *stream)); -# else -_GL_CXXALIAS_SYS (fgetc, int, (FILE *stream)); -# endif -_GL_CXXALIASWARN (fgetc); -#endif - -#if @GNULIB_FGETS@ -# if @REPLACE_STDIO_READ_FUNCS@ && @GNULIB_STDIO_H_NONBLOCKING@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# undef fgets -# define fgets rpl_fgets -# endif -_GL_FUNCDECL_RPL (fgets, char *, (char *s, int n, FILE *stream) - _GL_ARG_NONNULL ((1, 3))); -_GL_CXXALIAS_RPL (fgets, char *, (char *s, int n, FILE *stream)); -# else -_GL_CXXALIAS_SYS (fgets, char *, (char *s, int n, FILE *stream)); -# endif -_GL_CXXALIASWARN (fgets); -#endif - -#if @GNULIB_FOPEN@ -# if @REPLACE_FOPEN@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# undef fopen -# define fopen rpl_fopen -# endif -_GL_FUNCDECL_RPL (fopen, FILE *, (const char *filename, const char *mode) - _GL_ARG_NONNULL ((1, 2))); -_GL_CXXALIAS_RPL (fopen, FILE *, (const char *filename, const char *mode)); -# else -_GL_CXXALIAS_SYS (fopen, FILE *, (const char *filename, const char *mode)); -# endif -_GL_CXXALIASWARN (fopen); -#elif defined GNULIB_POSIXCHECK -# undef fopen -/* Assume fopen is always declared. */ -_GL_WARN_ON_USE (fopen, "fopen on native Windows platforms is not POSIX compliant - " - "use gnulib module fopen for portability"); -#endif - -#if @GNULIB_FPRINTF_POSIX@ || @GNULIB_FPRINTF@ -# if (@GNULIB_FPRINTF_POSIX@ && @REPLACE_FPRINTF@) \ - || (@GNULIB_FPRINTF@ && @REPLACE_STDIO_WRITE_FUNCS@ && (@GNULIB_STDIO_H_NONBLOCKING@ || @GNULIB_STDIO_H_SIGPIPE@)) -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# define fprintf rpl_fprintf -# endif -# define GNULIB_overrides_fprintf 1 -# if @GNULIB_FPRINTF_POSIX@ || @GNULIB_VFPRINTF_POSIX@ -_GL_FUNCDECL_RPL (fprintf, int, (FILE *fp, const char *format, ...) - _GL_ATTRIBUTE_FORMAT_PRINTF (2, 3) - _GL_ARG_NONNULL ((1, 2))); -# else -_GL_FUNCDECL_RPL (fprintf, int, (FILE *fp, const char *format, ...) - _GL_ATTRIBUTE_FORMAT_PRINTF_SYSTEM (2, 3) - _GL_ARG_NONNULL ((1, 2))); -# endif -_GL_CXXALIAS_RPL (fprintf, int, (FILE *fp, const char *format, ...)); -# else -_GL_CXXALIAS_SYS (fprintf, int, (FILE *fp, const char *format, ...)); -# endif -_GL_CXXALIASWARN (fprintf); -#endif -#if !@GNULIB_FPRINTF_POSIX@ && defined GNULIB_POSIXCHECK -# if !GNULIB_overrides_fprintf -# undef fprintf -# endif -/* Assume fprintf is always declared. */ -_GL_WARN_ON_USE (fprintf, "fprintf is not always POSIX compliant - " - "use gnulib module fprintf-posix for portable " - "POSIX compliance"); -#endif - -#if @GNULIB_FPURGE@ -/* Discard all pending buffered I/O data on STREAM. - STREAM must not be wide-character oriented. - When discarding pending output, the file position is set back to where it - was before the write calls. When discarding pending input, the file - position is advanced to match the end of the previously read input. - Return 0 if successful. Upon error, return -1 and set errno. */ -# if @REPLACE_FPURGE@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# define fpurge rpl_fpurge -# endif -_GL_FUNCDECL_RPL (fpurge, int, (FILE *gl_stream) _GL_ARG_NONNULL ((1))); -_GL_CXXALIAS_RPL (fpurge, int, (FILE *gl_stream)); -# else -# if !@HAVE_DECL_FPURGE@ -_GL_FUNCDECL_SYS (fpurge, int, (FILE *gl_stream) _GL_ARG_NONNULL ((1))); -# endif -_GL_CXXALIAS_SYS (fpurge, int, (FILE *gl_stream)); -# endif -_GL_CXXALIASWARN (fpurge); -#elif defined GNULIB_POSIXCHECK -# undef fpurge -# if HAVE_RAW_DECL_FPURGE -_GL_WARN_ON_USE (fpurge, "fpurge is not always present - " - "use gnulib module fpurge for portability"); -# endif -#endif - -#if @GNULIB_FPUTC@ -# if @REPLACE_STDIO_WRITE_FUNCS@ && (@GNULIB_STDIO_H_NONBLOCKING@ || @GNULIB_STDIO_H_SIGPIPE@) -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# undef fputc -# define fputc rpl_fputc -# endif -_GL_FUNCDECL_RPL (fputc, int, (int c, FILE *stream) _GL_ARG_NONNULL ((2))); -_GL_CXXALIAS_RPL (fputc, int, (int c, FILE *stream)); -# else -_GL_CXXALIAS_SYS (fputc, int, (int c, FILE *stream)); -# endif -_GL_CXXALIASWARN (fputc); -#endif - -#if @GNULIB_FPUTS@ -# if @REPLACE_STDIO_WRITE_FUNCS@ && (@GNULIB_STDIO_H_NONBLOCKING@ || @GNULIB_STDIO_H_SIGPIPE@) -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# undef fputs -# define fputs rpl_fputs -# endif -_GL_FUNCDECL_RPL (fputs, int, (const char *string, FILE *stream) - _GL_ARG_NONNULL ((1, 2))); -_GL_CXXALIAS_RPL (fputs, int, (const char *string, FILE *stream)); -# else -_GL_CXXALIAS_SYS (fputs, int, (const char *string, FILE *stream)); -# endif -_GL_CXXALIASWARN (fputs); -#endif - -#if @GNULIB_FREAD@ -# if @REPLACE_STDIO_READ_FUNCS@ && @GNULIB_STDIO_H_NONBLOCKING@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# undef fread -# define fread rpl_fread -# endif -_GL_FUNCDECL_RPL (fread, size_t, (void *ptr, size_t s, size_t n, FILE *stream) - _GL_ARG_NONNULL ((4))); -_GL_CXXALIAS_RPL (fread, size_t, (void *ptr, size_t s, size_t n, FILE *stream)); -# else -_GL_CXXALIAS_SYS (fread, size_t, (void *ptr, size_t s, size_t n, FILE *stream)); -# endif -_GL_CXXALIASWARN (fread); -#endif - -#if @GNULIB_FREOPEN@ -# if @REPLACE_FREOPEN@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# undef freopen -# define freopen rpl_freopen -# endif -_GL_FUNCDECL_RPL (freopen, FILE *, - (const char *filename, const char *mode, FILE *stream) - _GL_ARG_NONNULL ((2, 3))); -_GL_CXXALIAS_RPL (freopen, FILE *, - (const char *filename, const char *mode, FILE *stream)); -# else -_GL_CXXALIAS_SYS (freopen, FILE *, - (const char *filename, const char *mode, FILE *stream)); -# endif -_GL_CXXALIASWARN (freopen); -#elif defined GNULIB_POSIXCHECK -# undef freopen -/* Assume freopen is always declared. */ -_GL_WARN_ON_USE (freopen, - "freopen on native Windows platforms is not POSIX compliant - " - "use gnulib module freopen for portability"); -#endif - -#if @GNULIB_FSCANF@ -# if @REPLACE_STDIO_READ_FUNCS@ && @GNULIB_STDIO_H_NONBLOCKING@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# undef fscanf -# define fscanf rpl_fscanf -# endif -_GL_FUNCDECL_RPL (fscanf, int, (FILE *stream, const char *format, ...) - _GL_ATTRIBUTE_FORMAT_SCANF_SYSTEM (2, 3) - _GL_ARG_NONNULL ((1, 2))); -_GL_CXXALIAS_RPL (fscanf, int, (FILE *stream, const char *format, ...)); -# else -_GL_CXXALIAS_SYS (fscanf, int, (FILE *stream, const char *format, ...)); -# endif -_GL_CXXALIASWARN (fscanf); -#endif - - -/* Set up the following warnings, based on which modules are in use. - GNU Coding Standards discourage the use of fseek, since it imposes - an arbitrary limitation on some 32-bit hosts. Remember that the - fseek module depends on the fseeko module, so we only have three - cases to consider: - - 1. The developer is not using either module. Issue a warning under - GNULIB_POSIXCHECK for both functions, to remind them that both - functions have bugs on some systems. _GL_NO_LARGE_FILES has no - impact on this warning. - - 2. The developer is using both modules. They may be unaware of the - arbitrary limitations of fseek, so issue a warning under - GNULIB_POSIXCHECK. On the other hand, they may be using both - modules intentionally, so the developer can define - _GL_NO_LARGE_FILES in the compilation units where the use of fseek - is safe, to silence the warning. - - 3. The developer is using the fseeko module, but not fseek. Gnulib - guarantees that fseek will still work around platform bugs in that - case, but we presume that the developer is aware of the pitfalls of - fseek and was trying to avoid it, so issue a warning even when - GNULIB_POSIXCHECK is undefined. Again, _GL_NO_LARGE_FILES can be - defined to silence the warning in particular compilation units. - In C++ compilations with GNULIB_NAMESPACE, in order to avoid that - fseek gets defined as a macro, it is recommended that the developer - uses the fseek module, even if he is not calling the fseek function. - - Most gnulib clients that perform stream operations should fall into - category 3. */ - -#if @GNULIB_FSEEK@ -# if defined GNULIB_POSIXCHECK && !defined _GL_NO_LARGE_FILES -# define _GL_FSEEK_WARN /* Category 2, above. */ -# undef fseek -# endif -# if @REPLACE_FSEEK@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# undef fseek -# define fseek rpl_fseek -# endif -_GL_FUNCDECL_RPL (fseek, int, (FILE *fp, long offset, int whence) - _GL_ARG_NONNULL ((1))); -_GL_CXXALIAS_RPL (fseek, int, (FILE *fp, long offset, int whence)); -# else -_GL_CXXALIAS_SYS (fseek, int, (FILE *fp, long offset, int whence)); -# endif -_GL_CXXALIASWARN (fseek); -#endif - -#if @GNULIB_FSEEKO@ -# if !@GNULIB_FSEEK@ && !defined _GL_NO_LARGE_FILES -# define _GL_FSEEK_WARN /* Category 3, above. */ -# undef fseek -# endif -# if @REPLACE_FSEEKO@ -/* Provide an fseeko function that is aware of a preceding fflush(), and which - detects pipes. */ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# undef fseeko -# define fseeko rpl_fseeko -# endif -_GL_FUNCDECL_RPL (fseeko, int, (FILE *fp, off_t offset, int whence) - _GL_ARG_NONNULL ((1))); -_GL_CXXALIAS_RPL (fseeko, int, (FILE *fp, off_t offset, int whence)); -# else -# if ! @HAVE_DECL_FSEEKO@ -_GL_FUNCDECL_SYS (fseeko, int, (FILE *fp, off_t offset, int whence) - _GL_ARG_NONNULL ((1))); -# endif -_GL_CXXALIAS_SYS (fseeko, int, (FILE *fp, off_t offset, int whence)); -# endif -_GL_CXXALIASWARN (fseeko); -#elif defined GNULIB_POSIXCHECK -# define _GL_FSEEK_WARN /* Category 1, above. */ -# undef fseek -# undef fseeko -# if HAVE_RAW_DECL_FSEEKO -_GL_WARN_ON_USE (fseeko, "fseeko is unportable - " - "use gnulib module fseeko for portability"); -# endif -#endif - -#ifdef _GL_FSEEK_WARN -# undef _GL_FSEEK_WARN -/* Here, either fseek is undefined (but C89 guarantees that it is - declared), or it is defined as rpl_fseek (declared above). */ -_GL_WARN_ON_USE (fseek, "fseek cannot handle files larger than 4 GB " - "on 32-bit platforms - " - "use fseeko function for handling of large files"); -#endif - - -/* ftell, ftello. See the comments on fseek/fseeko. */ - -#if @GNULIB_FTELL@ -# if defined GNULIB_POSIXCHECK && !defined _GL_NO_LARGE_FILES -# define _GL_FTELL_WARN /* Category 2, above. */ -# undef ftell -# endif -# if @REPLACE_FTELL@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# undef ftell -# define ftell rpl_ftell -# endif -_GL_FUNCDECL_RPL (ftell, long, (FILE *fp) _GL_ARG_NONNULL ((1))); -_GL_CXXALIAS_RPL (ftell, long, (FILE *fp)); -# else -_GL_CXXALIAS_SYS (ftell, long, (FILE *fp)); -# endif -_GL_CXXALIASWARN (ftell); -#endif - -#if @GNULIB_FTELLO@ -# if !@GNULIB_FTELL@ && !defined _GL_NO_LARGE_FILES -# define _GL_FTELL_WARN /* Category 3, above. */ -# undef ftell -# endif -# if @REPLACE_FTELLO@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# undef ftello -# define ftello rpl_ftello -# endif -_GL_FUNCDECL_RPL (ftello, off_t, (FILE *fp) _GL_ARG_NONNULL ((1))); -_GL_CXXALIAS_RPL (ftello, off_t, (FILE *fp)); -# else -# if ! @HAVE_DECL_FTELLO@ -_GL_FUNCDECL_SYS (ftello, off_t, (FILE *fp) _GL_ARG_NONNULL ((1))); -# endif -_GL_CXXALIAS_SYS (ftello, off_t, (FILE *fp)); -# endif -_GL_CXXALIASWARN (ftello); -#elif defined GNULIB_POSIXCHECK -# define _GL_FTELL_WARN /* Category 1, above. */ -# undef ftell -# undef ftello -# if HAVE_RAW_DECL_FTELLO -_GL_WARN_ON_USE (ftello, "ftello is unportable - " - "use gnulib module ftello for portability"); -# endif -#endif - -#ifdef _GL_FTELL_WARN -# undef _GL_FTELL_WARN -/* Here, either ftell is undefined (but C89 guarantees that it is - declared), or it is defined as rpl_ftell (declared above). */ -_GL_WARN_ON_USE (ftell, "ftell cannot handle files larger than 4 GB " - "on 32-bit platforms - " - "use ftello function for handling of large files"); -#endif - - -#if @GNULIB_FWRITE@ -# if @REPLACE_STDIO_WRITE_FUNCS@ && (@GNULIB_STDIO_H_NONBLOCKING@ || @GNULIB_STDIO_H_SIGPIPE@) -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# undef fwrite -# define fwrite rpl_fwrite -# endif -_GL_FUNCDECL_RPL (fwrite, size_t, - (const void *ptr, size_t s, size_t n, FILE *stream) - _GL_ARG_NONNULL ((1, 4))); -_GL_CXXALIAS_RPL (fwrite, size_t, - (const void *ptr, size_t s, size_t n, FILE *stream)); -# else -_GL_CXXALIAS_SYS (fwrite, size_t, - (const void *ptr, size_t s, size_t n, FILE *stream)); - -/* Work around bug 11959 when fortifying glibc 2.4 through 2.15 - , - which sometimes causes an unwanted diagnostic for fwrite calls. - This affects only function declaration attributes under certain - versions of gcc and clang, and is not needed for C++. */ -# if (0 < __USE_FORTIFY_LEVEL \ - && __GLIBC__ == 2 && 4 <= __GLIBC_MINOR__ && __GLIBC_MINOR__ <= 15 \ - && 3 < __GNUC__ + (4 <= __GNUC_MINOR__) \ - && !defined __cplusplus) -# undef fwrite -# undef fwrite_unlocked -extern size_t __REDIRECT (rpl_fwrite, - (const void *__restrict, size_t, size_t, - FILE *__restrict), - fwrite); -extern size_t __REDIRECT (rpl_fwrite_unlocked, - (const void *__restrict, size_t, size_t, - FILE *__restrict), - fwrite_unlocked); -# define fwrite rpl_fwrite -# define fwrite_unlocked rpl_fwrite_unlocked -# endif -# endif -_GL_CXXALIASWARN (fwrite); -#endif - -#if @GNULIB_GETC@ -# if @REPLACE_STDIO_READ_FUNCS@ && @GNULIB_STDIO_H_NONBLOCKING@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# undef getc -# define getc rpl_fgetc -# endif -_GL_FUNCDECL_RPL (fgetc, int, (FILE *stream) _GL_ARG_NONNULL ((1))); -_GL_CXXALIAS_RPL_1 (getc, rpl_fgetc, int, (FILE *stream)); -# else -_GL_CXXALIAS_SYS (getc, int, (FILE *stream)); -# endif -_GL_CXXALIASWARN (getc); -#endif - -#if @GNULIB_GETCHAR@ -# if @REPLACE_STDIO_READ_FUNCS@ && @GNULIB_STDIO_H_NONBLOCKING@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# undef getchar -# define getchar rpl_getchar -# endif -_GL_FUNCDECL_RPL (getchar, int, (void)); -_GL_CXXALIAS_RPL (getchar, int, (void)); -# else -_GL_CXXALIAS_SYS (getchar, int, (void)); -# endif -_GL_CXXALIASWARN (getchar); -#endif - -#if @GNULIB_GETDELIM@ -/* Read input, up to (and including) the next occurrence of DELIMITER, from - STREAM, store it in *LINEPTR (and NUL-terminate it). - *LINEPTR is a pointer returned from malloc (or NULL), pointing to *LINESIZE - bytes of space. It is realloc'd as necessary. - Return the number of bytes read and stored at *LINEPTR (not including the - NUL terminator), or -1 on error or EOF. */ -# if @REPLACE_GETDELIM@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# undef getdelim -# define getdelim rpl_getdelim -# endif -_GL_FUNCDECL_RPL (getdelim, ssize_t, - (char **lineptr, size_t *linesize, int delimiter, - FILE *stream) - _GL_ARG_NONNULL ((1, 2, 4))); -_GL_CXXALIAS_RPL (getdelim, ssize_t, - (char **lineptr, size_t *linesize, int delimiter, - FILE *stream)); -# else -# if !@HAVE_DECL_GETDELIM@ -_GL_FUNCDECL_SYS (getdelim, ssize_t, - (char **lineptr, size_t *linesize, int delimiter, - FILE *stream) - _GL_ARG_NONNULL ((1, 2, 4))); -# endif -_GL_CXXALIAS_SYS (getdelim, ssize_t, - (char **lineptr, size_t *linesize, int delimiter, - FILE *stream)); -# endif -_GL_CXXALIASWARN (getdelim); -#elif defined GNULIB_POSIXCHECK -# undef getdelim -# if HAVE_RAW_DECL_GETDELIM -_GL_WARN_ON_USE (getdelim, "getdelim is unportable - " - "use gnulib module getdelim for portability"); -# endif -#endif - -#if @GNULIB_GETLINE@ -/* Read a line, up to (and including) the next newline, from STREAM, store it - in *LINEPTR (and NUL-terminate it). - *LINEPTR is a pointer returned from malloc (or NULL), pointing to *LINESIZE - bytes of space. It is realloc'd as necessary. - Return the number of bytes read and stored at *LINEPTR (not including the - NUL terminator), or -1 on error or EOF. */ -# if @REPLACE_GETLINE@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# undef getline -# define getline rpl_getline -# endif -_GL_FUNCDECL_RPL (getline, ssize_t, - (char **lineptr, size_t *linesize, FILE *stream) - _GL_ARG_NONNULL ((1, 2, 3))); -_GL_CXXALIAS_RPL (getline, ssize_t, - (char **lineptr, size_t *linesize, FILE *stream)); -# else -# if !@HAVE_DECL_GETLINE@ -_GL_FUNCDECL_SYS (getline, ssize_t, - (char **lineptr, size_t *linesize, FILE *stream) - _GL_ARG_NONNULL ((1, 2, 3))); -# endif -_GL_CXXALIAS_SYS (getline, ssize_t, - (char **lineptr, size_t *linesize, FILE *stream)); -# endif -# if @HAVE_DECL_GETLINE@ -_GL_CXXALIASWARN (getline); -# endif -#elif defined GNULIB_POSIXCHECK -# undef getline -# if HAVE_RAW_DECL_GETLINE -_GL_WARN_ON_USE (getline, "getline is unportable - " - "use gnulib module getline for portability"); -# endif -#endif - -/* It is very rare that the developer ever has full control of stdin, - so any use of gets warrants an unconditional warning; besides, C11 - removed it. */ -#undef gets -#if HAVE_RAW_DECL_GETS && !defined __cplusplus -_GL_WARN_ON_USE (gets, "gets is a security hole - use fgets instead"); -#endif - -#if @GNULIB_OBSTACK_PRINTF@ || @GNULIB_OBSTACK_PRINTF_POSIX@ -struct obstack; -/* Grow an obstack with formatted output. Return the number of - bytes added to OBS. No trailing nul byte is added, and the - object should be closed with obstack_finish before use. Upon - memory allocation error, call obstack_alloc_failed_handler. Upon - other error, return -1. */ -# if @REPLACE_OBSTACK_PRINTF@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# define obstack_printf rpl_obstack_printf -# endif -_GL_FUNCDECL_RPL (obstack_printf, int, - (struct obstack *obs, const char *format, ...) - _GL_ATTRIBUTE_FORMAT_PRINTF (2, 3) - _GL_ARG_NONNULL ((1, 2))); -_GL_CXXALIAS_RPL (obstack_printf, int, - (struct obstack *obs, const char *format, ...)); -# else -# if !@HAVE_DECL_OBSTACK_PRINTF@ -_GL_FUNCDECL_SYS (obstack_printf, int, - (struct obstack *obs, const char *format, ...) - _GL_ATTRIBUTE_FORMAT_PRINTF (2, 3) - _GL_ARG_NONNULL ((1, 2))); -# endif -_GL_CXXALIAS_SYS (obstack_printf, int, - (struct obstack *obs, const char *format, ...)); -# endif -_GL_CXXALIASWARN (obstack_printf); -# if @REPLACE_OBSTACK_PRINTF@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# define obstack_vprintf rpl_obstack_vprintf -# endif -_GL_FUNCDECL_RPL (obstack_vprintf, int, - (struct obstack *obs, const char *format, va_list args) - _GL_ATTRIBUTE_FORMAT_PRINTF (2, 0) - _GL_ARG_NONNULL ((1, 2))); -_GL_CXXALIAS_RPL (obstack_vprintf, int, - (struct obstack *obs, const char *format, va_list args)); -# else -# if !@HAVE_DECL_OBSTACK_PRINTF@ -_GL_FUNCDECL_SYS (obstack_vprintf, int, - (struct obstack *obs, const char *format, va_list args) - _GL_ATTRIBUTE_FORMAT_PRINTF (2, 0) - _GL_ARG_NONNULL ((1, 2))); -# endif -_GL_CXXALIAS_SYS (obstack_vprintf, int, - (struct obstack *obs, const char *format, va_list args)); -# endif -_GL_CXXALIASWARN (obstack_vprintf); -#endif - -#if @GNULIB_PCLOSE@ -# if !@HAVE_PCLOSE@ -_GL_FUNCDECL_SYS (pclose, int, (FILE *stream) _GL_ARG_NONNULL ((1))); -# endif -_GL_CXXALIAS_SYS (pclose, int, (FILE *stream)); -_GL_CXXALIASWARN (pclose); -#elif defined GNULIB_POSIXCHECK -# undef pclose -# if HAVE_RAW_DECL_PCLOSE -_GL_WARN_ON_USE (pclose, "pclose is unportable - " - "use gnulib module pclose for more portability"); -# endif -#endif - -#if @GNULIB_PERROR@ -/* Print a message to standard error, describing the value of ERRNO, - (if STRING is not NULL and not empty) prefixed with STRING and ": ", - and terminated with a newline. */ -# if @REPLACE_PERROR@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# define perror rpl_perror -# endif -_GL_FUNCDECL_RPL (perror, void, (const char *string)); -_GL_CXXALIAS_RPL (perror, void, (const char *string)); -# else -_GL_CXXALIAS_SYS (perror, void, (const char *string)); -# endif -_GL_CXXALIASWARN (perror); -#elif defined GNULIB_POSIXCHECK -# undef perror -/* Assume perror is always declared. */ -_GL_WARN_ON_USE (perror, "perror is not always POSIX compliant - " - "use gnulib module perror for portability"); -#endif - -#if @GNULIB_POPEN@ -# if @REPLACE_POPEN@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# undef popen -# define popen rpl_popen -# endif -_GL_FUNCDECL_RPL (popen, FILE *, (const char *cmd, const char *mode) - _GL_ARG_NONNULL ((1, 2))); -_GL_CXXALIAS_RPL (popen, FILE *, (const char *cmd, const char *mode)); -# else -# if !@HAVE_POPEN@ -_GL_FUNCDECL_SYS (popen, FILE *, (const char *cmd, const char *mode) - _GL_ARG_NONNULL ((1, 2))); -# endif -_GL_CXXALIAS_SYS (popen, FILE *, (const char *cmd, const char *mode)); -# endif -_GL_CXXALIASWARN (popen); -#elif defined GNULIB_POSIXCHECK -# undef popen -# if HAVE_RAW_DECL_POPEN -_GL_WARN_ON_USE (popen, "popen is buggy on some platforms - " - "use gnulib module popen or pipe for more portability"); -# endif -#endif - -#if @GNULIB_PRINTF_POSIX@ || @GNULIB_PRINTF@ -# if (@GNULIB_PRINTF_POSIX@ && @REPLACE_PRINTF@) \ - || (@GNULIB_PRINTF@ && @REPLACE_STDIO_WRITE_FUNCS@ && (@GNULIB_STDIO_H_NONBLOCKING@ || @GNULIB_STDIO_H_SIGPIPE@)) -# if defined __GNUC__ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -/* Don't break __attribute__((format(printf,M,N))). */ -# define printf __printf__ -# endif -# if @GNULIB_PRINTF_POSIX@ || @GNULIB_VFPRINTF_POSIX@ -_GL_FUNCDECL_RPL_1 (__printf__, int, - (const char *format, ...) - __asm__ (@ASM_SYMBOL_PREFIX@ - _GL_STDIO_MACROEXPAND_AND_STRINGIZE(rpl_printf)) - _GL_ATTRIBUTE_FORMAT_PRINTF (1, 2) - _GL_ARG_NONNULL ((1))); -# else -_GL_FUNCDECL_RPL_1 (__printf__, int, - (const char *format, ...) - __asm__ (@ASM_SYMBOL_PREFIX@ - _GL_STDIO_MACROEXPAND_AND_STRINGIZE(rpl_printf)) - _GL_ATTRIBUTE_FORMAT_PRINTF_SYSTEM (1, 2) - _GL_ARG_NONNULL ((1))); -# endif -_GL_CXXALIAS_RPL_1 (printf, __printf__, int, (const char *format, ...)); -# else -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# define printf rpl_printf -# endif -_GL_FUNCDECL_RPL (printf, int, - (const char *format, ...) - _GL_ATTRIBUTE_FORMAT_PRINTF (1, 2) - _GL_ARG_NONNULL ((1))); -_GL_CXXALIAS_RPL (printf, int, (const char *format, ...)); -# endif -# define GNULIB_overrides_printf 1 -# else -_GL_CXXALIAS_SYS (printf, int, (const char *format, ...)); -# endif -_GL_CXXALIASWARN (printf); -#endif -#if !@GNULIB_PRINTF_POSIX@ && defined GNULIB_POSIXCHECK -# if !GNULIB_overrides_printf -# undef printf -# endif -/* Assume printf is always declared. */ -_GL_WARN_ON_USE (printf, "printf is not always POSIX compliant - " - "use gnulib module printf-posix for portable " - "POSIX compliance"); -#endif - -#if @GNULIB_PUTC@ -# if @REPLACE_STDIO_WRITE_FUNCS@ && (@GNULIB_STDIO_H_NONBLOCKING@ || @GNULIB_STDIO_H_SIGPIPE@) -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# undef putc -# define putc rpl_fputc -# endif -_GL_FUNCDECL_RPL (fputc, int, (int c, FILE *stream) _GL_ARG_NONNULL ((2))); -_GL_CXXALIAS_RPL_1 (putc, rpl_fputc, int, (int c, FILE *stream)); -# else -_GL_CXXALIAS_SYS (putc, int, (int c, FILE *stream)); -# endif -_GL_CXXALIASWARN (putc); -#endif - -#if @GNULIB_PUTCHAR@ -# if @REPLACE_STDIO_WRITE_FUNCS@ && (@GNULIB_STDIO_H_NONBLOCKING@ || @GNULIB_STDIO_H_SIGPIPE@) -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# undef putchar -# define putchar rpl_putchar -# endif -_GL_FUNCDECL_RPL (putchar, int, (int c)); -_GL_CXXALIAS_RPL (putchar, int, (int c)); -# else -_GL_CXXALIAS_SYS (putchar, int, (int c)); -# endif -_GL_CXXALIASWARN (putchar); -#endif - -#if @GNULIB_PUTS@ -# if @REPLACE_STDIO_WRITE_FUNCS@ && (@GNULIB_STDIO_H_NONBLOCKING@ || @GNULIB_STDIO_H_SIGPIPE@) -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# undef puts -# define puts rpl_puts -# endif -_GL_FUNCDECL_RPL (puts, int, (const char *string) _GL_ARG_NONNULL ((1))); -_GL_CXXALIAS_RPL (puts, int, (const char *string)); -# else -_GL_CXXALIAS_SYS (puts, int, (const char *string)); -# endif -_GL_CXXALIASWARN (puts); -#endif - -#if @GNULIB_REMOVE@ -# if @REPLACE_REMOVE@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# undef remove -# define remove rpl_remove -# endif -_GL_FUNCDECL_RPL (remove, int, (const char *name) _GL_ARG_NONNULL ((1))); -_GL_CXXALIAS_RPL (remove, int, (const char *name)); -# else -_GL_CXXALIAS_SYS (remove, int, (const char *name)); -# endif -_GL_CXXALIASWARN (remove); -#elif defined GNULIB_POSIXCHECK -# undef remove -/* Assume remove is always declared. */ -_GL_WARN_ON_USE (remove, "remove cannot handle directories on some platforms - " - "use gnulib module remove for more portability"); -#endif - -#if @GNULIB_RENAME@ -# if @REPLACE_RENAME@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# undef rename -# define rename rpl_rename -# endif -_GL_FUNCDECL_RPL (rename, int, - (const char *old_filename, const char *new_filename) - _GL_ARG_NONNULL ((1, 2))); -_GL_CXXALIAS_RPL (rename, int, - (const char *old_filename, const char *new_filename)); -# else -_GL_CXXALIAS_SYS (rename, int, - (const char *old_filename, const char *new_filename)); -# endif -_GL_CXXALIASWARN (rename); -#elif defined GNULIB_POSIXCHECK -# undef rename -/* Assume rename is always declared. */ -_GL_WARN_ON_USE (rename, "rename is buggy on some platforms - " - "use gnulib module rename for more portability"); -#endif - -#if @GNULIB_RENAMEAT@ -# if @REPLACE_RENAMEAT@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# undef renameat -# define renameat rpl_renameat -# endif -_GL_FUNCDECL_RPL (renameat, int, - (int fd1, char const *file1, int fd2, char const *file2) - _GL_ARG_NONNULL ((2, 4))); -_GL_CXXALIAS_RPL (renameat, int, - (int fd1, char const *file1, int fd2, char const *file2)); -# else -# if !@HAVE_RENAMEAT@ -_GL_FUNCDECL_SYS (renameat, int, - (int fd1, char const *file1, int fd2, char const *file2) - _GL_ARG_NONNULL ((2, 4))); -# endif -_GL_CXXALIAS_SYS (renameat, int, - (int fd1, char const *file1, int fd2, char const *file2)); -# endif -_GL_CXXALIASWARN (renameat); -#elif defined GNULIB_POSIXCHECK -# undef renameat -# if HAVE_RAW_DECL_RENAMEAT -_GL_WARN_ON_USE (renameat, "renameat is not portable - " - "use gnulib module renameat for portability"); -# endif -#endif - -#if @GNULIB_SCANF@ -# if @REPLACE_STDIO_READ_FUNCS@ && @GNULIB_STDIO_H_NONBLOCKING@ -# if defined __GNUC__ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# undef scanf -/* Don't break __attribute__((format(scanf,M,N))). */ -# define scanf __scanf__ -# endif -_GL_FUNCDECL_RPL_1 (__scanf__, int, - (const char *format, ...) - __asm__ (@ASM_SYMBOL_PREFIX@ - _GL_STDIO_MACROEXPAND_AND_STRINGIZE(rpl_scanf)) - _GL_ATTRIBUTE_FORMAT_SCANF_SYSTEM (1, 2) - _GL_ARG_NONNULL ((1))); -_GL_CXXALIAS_RPL_1 (scanf, __scanf__, int, (const char *format, ...)); -# else -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# undef scanf -# define scanf rpl_scanf -# endif -_GL_FUNCDECL_RPL (scanf, int, (const char *format, ...) - _GL_ATTRIBUTE_FORMAT_SCANF_SYSTEM (1, 2) - _GL_ARG_NONNULL ((1))); -_GL_CXXALIAS_RPL (scanf, int, (const char *format, ...)); -# endif -# else -_GL_CXXALIAS_SYS (scanf, int, (const char *format, ...)); -# endif -_GL_CXXALIASWARN (scanf); -#endif - -#if @GNULIB_SNPRINTF@ -# if @REPLACE_SNPRINTF@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# define snprintf rpl_snprintf -# endif -_GL_FUNCDECL_RPL (snprintf, int, - (char *str, size_t size, const char *format, ...) - _GL_ATTRIBUTE_FORMAT_PRINTF (3, 4) - _GL_ARG_NONNULL ((3))); -_GL_CXXALIAS_RPL (snprintf, int, - (char *str, size_t size, const char *format, ...)); -# else -# if !@HAVE_DECL_SNPRINTF@ -_GL_FUNCDECL_SYS (snprintf, int, - (char *str, size_t size, const char *format, ...) - _GL_ATTRIBUTE_FORMAT_PRINTF (3, 4) - _GL_ARG_NONNULL ((3))); -# endif -_GL_CXXALIAS_SYS (snprintf, int, - (char *str, size_t size, const char *format, ...)); -# endif -_GL_CXXALIASWARN (snprintf); -#elif defined GNULIB_POSIXCHECK -# undef snprintf -# if HAVE_RAW_DECL_SNPRINTF -_GL_WARN_ON_USE (snprintf, "snprintf is unportable - " - "use gnulib module snprintf for portability"); -# endif -#endif - -/* Some people would argue that all sprintf uses should be warned about - (for example, OpenBSD issues a link warning for it), - since it can cause security holes due to buffer overruns. - However, we believe that sprintf can be used safely, and is more - efficient than snprintf in those safe cases; and as proof of our - belief, we use sprintf in several gnulib modules. So this header - intentionally avoids adding a warning to sprintf except when - GNULIB_POSIXCHECK is defined. */ - -#if @GNULIB_SPRINTF_POSIX@ -# if @REPLACE_SPRINTF@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# define sprintf rpl_sprintf -# endif -_GL_FUNCDECL_RPL (sprintf, int, (char *str, const char *format, ...) - _GL_ATTRIBUTE_FORMAT_PRINTF (2, 3) - _GL_ARG_NONNULL ((1, 2))); -_GL_CXXALIAS_RPL (sprintf, int, (char *str, const char *format, ...)); -# else -_GL_CXXALIAS_SYS (sprintf, int, (char *str, const char *format, ...)); -# endif -_GL_CXXALIASWARN (sprintf); -#elif defined GNULIB_POSIXCHECK -# undef sprintf -/* Assume sprintf is always declared. */ -_GL_WARN_ON_USE (sprintf, "sprintf is not always POSIX compliant - " - "use gnulib module sprintf-posix for portable " - "POSIX compliance"); -#endif - -#if @GNULIB_TMPFILE@ -# if @REPLACE_TMPFILE@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# define tmpfile rpl_tmpfile -# endif -_GL_FUNCDECL_RPL (tmpfile, FILE *, (void)); -_GL_CXXALIAS_RPL (tmpfile, FILE *, (void)); -# else -_GL_CXXALIAS_SYS (tmpfile, FILE *, (void)); -# endif -_GL_CXXALIASWARN (tmpfile); -#elif defined GNULIB_POSIXCHECK -# undef tmpfile -# if HAVE_RAW_DECL_TMPFILE -_GL_WARN_ON_USE (tmpfile, "tmpfile is not usable on mingw - " - "use gnulib module tmpfile for portability"); -# endif -#endif - -#if @GNULIB_VASPRINTF@ -/* Write formatted output to a string dynamically allocated with malloc(). - If the memory allocation succeeds, store the address of the string in - *RESULT and return the number of resulting bytes, excluding the trailing - NUL. Upon memory allocation error, or some other error, return -1. */ -# if @REPLACE_VASPRINTF@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# define asprintf rpl_asprintf -# endif -_GL_FUNCDECL_RPL (asprintf, int, - (char **result, const char *format, ...) - _GL_ATTRIBUTE_FORMAT_PRINTF (2, 3) - _GL_ARG_NONNULL ((1, 2))); -_GL_CXXALIAS_RPL (asprintf, int, - (char **result, const char *format, ...)); -# else -# if !@HAVE_VASPRINTF@ -_GL_FUNCDECL_SYS (asprintf, int, - (char **result, const char *format, ...) - _GL_ATTRIBUTE_FORMAT_PRINTF (2, 3) - _GL_ARG_NONNULL ((1, 2))); -# endif -_GL_CXXALIAS_SYS (asprintf, int, - (char **result, const char *format, ...)); -# endif -_GL_CXXALIASWARN (asprintf); -# if @REPLACE_VASPRINTF@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# define vasprintf rpl_vasprintf -# endif -_GL_FUNCDECL_RPL (vasprintf, int, - (char **result, const char *format, va_list args) - _GL_ATTRIBUTE_FORMAT_PRINTF (2, 0) - _GL_ARG_NONNULL ((1, 2))); -_GL_CXXALIAS_RPL (vasprintf, int, - (char **result, const char *format, va_list args)); -# else -# if !@HAVE_VASPRINTF@ -_GL_FUNCDECL_SYS (vasprintf, int, - (char **result, const char *format, va_list args) - _GL_ATTRIBUTE_FORMAT_PRINTF (2, 0) - _GL_ARG_NONNULL ((1, 2))); -# endif -_GL_CXXALIAS_SYS (vasprintf, int, - (char **result, const char *format, va_list args)); -# endif -_GL_CXXALIASWARN (vasprintf); -#endif - -#if @GNULIB_VDPRINTF@ -# if @REPLACE_VDPRINTF@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# define vdprintf rpl_vdprintf -# endif -_GL_FUNCDECL_RPL (vdprintf, int, (int fd, const char *format, va_list args) - _GL_ATTRIBUTE_FORMAT_PRINTF (2, 0) - _GL_ARG_NONNULL ((2))); -_GL_CXXALIAS_RPL (vdprintf, int, (int fd, const char *format, va_list args)); -# else -# if !@HAVE_VDPRINTF@ -_GL_FUNCDECL_SYS (vdprintf, int, (int fd, const char *format, va_list args) - _GL_ATTRIBUTE_FORMAT_PRINTF (2, 0) - _GL_ARG_NONNULL ((2))); -# endif -/* Need to cast, because on Solaris, the third parameter will likely be - __va_list args. */ -_GL_CXXALIAS_SYS_CAST (vdprintf, int, - (int fd, const char *format, va_list args)); -# endif -_GL_CXXALIASWARN (vdprintf); -#elif defined GNULIB_POSIXCHECK -# undef vdprintf -# if HAVE_RAW_DECL_VDPRINTF -_GL_WARN_ON_USE (vdprintf, "vdprintf is unportable - " - "use gnulib module vdprintf for portability"); -# endif -#endif - -#if @GNULIB_VFPRINTF_POSIX@ || @GNULIB_VFPRINTF@ -# if (@GNULIB_VFPRINTF_POSIX@ && @REPLACE_VFPRINTF@) \ - || (@GNULIB_VFPRINTF@ && @REPLACE_STDIO_WRITE_FUNCS@ && (@GNULIB_STDIO_H_NONBLOCKING@ || @GNULIB_STDIO_H_SIGPIPE@)) -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# define vfprintf rpl_vfprintf -# endif -# define GNULIB_overrides_vfprintf 1 -# if @GNULIB_VFPRINTF_POSIX@ -_GL_FUNCDECL_RPL (vfprintf, int, (FILE *fp, const char *format, va_list args) - _GL_ATTRIBUTE_FORMAT_PRINTF (2, 0) - _GL_ARG_NONNULL ((1, 2))); -# else -_GL_FUNCDECL_RPL (vfprintf, int, (FILE *fp, const char *format, va_list args) - _GL_ATTRIBUTE_FORMAT_PRINTF_SYSTEM (2, 0) - _GL_ARG_NONNULL ((1, 2))); -# endif -_GL_CXXALIAS_RPL (vfprintf, int, (FILE *fp, const char *format, va_list args)); -# else -/* Need to cast, because on Solaris, the third parameter is - __va_list args - and GCC's fixincludes did not change this to __gnuc_va_list. */ -_GL_CXXALIAS_SYS_CAST (vfprintf, int, - (FILE *fp, const char *format, va_list args)); -# endif -_GL_CXXALIASWARN (vfprintf); -#endif -#if !@GNULIB_VFPRINTF_POSIX@ && defined GNULIB_POSIXCHECK -# if !GNULIB_overrides_vfprintf -# undef vfprintf -# endif -/* Assume vfprintf is always declared. */ -_GL_WARN_ON_USE (vfprintf, "vfprintf is not always POSIX compliant - " - "use gnulib module vfprintf-posix for portable " - "POSIX compliance"); -#endif - -#if @GNULIB_VFSCANF@ -# if @REPLACE_STDIO_READ_FUNCS@ && @GNULIB_STDIO_H_NONBLOCKING@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# undef vfscanf -# define vfscanf rpl_vfscanf -# endif -_GL_FUNCDECL_RPL (vfscanf, int, - (FILE *stream, const char *format, va_list args) - _GL_ATTRIBUTE_FORMAT_SCANF_SYSTEM (2, 0) - _GL_ARG_NONNULL ((1, 2))); -_GL_CXXALIAS_RPL (vfscanf, int, - (FILE *stream, const char *format, va_list args)); -# else -_GL_CXXALIAS_SYS (vfscanf, int, - (FILE *stream, const char *format, va_list args)); -# endif -_GL_CXXALIASWARN (vfscanf); -#endif - -#if @GNULIB_VPRINTF_POSIX@ || @GNULIB_VPRINTF@ -# if (@GNULIB_VPRINTF_POSIX@ && @REPLACE_VPRINTF@) \ - || (@GNULIB_VPRINTF@ && @REPLACE_STDIO_WRITE_FUNCS@ && (@GNULIB_STDIO_H_NONBLOCKING@ || @GNULIB_STDIO_H_SIGPIPE@)) -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# define vprintf rpl_vprintf -# endif -# define GNULIB_overrides_vprintf 1 -# if @GNULIB_VPRINTF_POSIX@ || @GNULIB_VFPRINTF_POSIX@ -_GL_FUNCDECL_RPL (vprintf, int, (const char *format, va_list args) - _GL_ATTRIBUTE_FORMAT_PRINTF (1, 0) - _GL_ARG_NONNULL ((1))); -# else -_GL_FUNCDECL_RPL (vprintf, int, (const char *format, va_list args) - _GL_ATTRIBUTE_FORMAT_PRINTF_SYSTEM (1, 0) - _GL_ARG_NONNULL ((1))); -# endif -_GL_CXXALIAS_RPL (vprintf, int, (const char *format, va_list args)); -# else -/* Need to cast, because on Solaris, the second parameter is - __va_list args - and GCC's fixincludes did not change this to __gnuc_va_list. */ -_GL_CXXALIAS_SYS_CAST (vprintf, int, (const char *format, va_list args)); -# endif -_GL_CXXALIASWARN (vprintf); -#endif -#if !@GNULIB_VPRINTF_POSIX@ && defined GNULIB_POSIXCHECK -# if !GNULIB_overrides_vprintf -# undef vprintf -# endif -/* Assume vprintf is always declared. */ -_GL_WARN_ON_USE (vprintf, "vprintf is not always POSIX compliant - " - "use gnulib module vprintf-posix for portable " - "POSIX compliance"); -#endif - -#if @GNULIB_VSCANF@ -# if @REPLACE_STDIO_READ_FUNCS@ && @GNULIB_STDIO_H_NONBLOCKING@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# undef vscanf -# define vscanf rpl_vscanf -# endif -_GL_FUNCDECL_RPL (vscanf, int, (const char *format, va_list args) - _GL_ATTRIBUTE_FORMAT_SCANF_SYSTEM (1, 0) - _GL_ARG_NONNULL ((1))); -_GL_CXXALIAS_RPL (vscanf, int, (const char *format, va_list args)); -# else -_GL_CXXALIAS_SYS (vscanf, int, (const char *format, va_list args)); -# endif -_GL_CXXALIASWARN (vscanf); -#endif - -#if @GNULIB_VSNPRINTF@ -# if @REPLACE_VSNPRINTF@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# define vsnprintf rpl_vsnprintf -# endif -_GL_FUNCDECL_RPL (vsnprintf, int, - (char *str, size_t size, const char *format, va_list args) - _GL_ATTRIBUTE_FORMAT_PRINTF (3, 0) - _GL_ARG_NONNULL ((3))); -_GL_CXXALIAS_RPL (vsnprintf, int, - (char *str, size_t size, const char *format, va_list args)); -# else -# if !@HAVE_DECL_VSNPRINTF@ -_GL_FUNCDECL_SYS (vsnprintf, int, - (char *str, size_t size, const char *format, va_list args) - _GL_ATTRIBUTE_FORMAT_PRINTF (3, 0) - _GL_ARG_NONNULL ((3))); -# endif -_GL_CXXALIAS_SYS (vsnprintf, int, - (char *str, size_t size, const char *format, va_list args)); -# endif -_GL_CXXALIASWARN (vsnprintf); -#elif defined GNULIB_POSIXCHECK -# undef vsnprintf -# if HAVE_RAW_DECL_VSNPRINTF -_GL_WARN_ON_USE (vsnprintf, "vsnprintf is unportable - " - "use gnulib module vsnprintf for portability"); -# endif -#endif - -#if @GNULIB_VSPRINTF_POSIX@ -# if @REPLACE_VSPRINTF@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# define vsprintf rpl_vsprintf -# endif -_GL_FUNCDECL_RPL (vsprintf, int, - (char *str, const char *format, va_list args) - _GL_ATTRIBUTE_FORMAT_PRINTF (2, 0) - _GL_ARG_NONNULL ((1, 2))); -_GL_CXXALIAS_RPL (vsprintf, int, - (char *str, const char *format, va_list args)); -# else -/* Need to cast, because on Solaris, the third parameter is - __va_list args - and GCC's fixincludes did not change this to __gnuc_va_list. */ -_GL_CXXALIAS_SYS_CAST (vsprintf, int, - (char *str, const char *format, va_list args)); -# endif -_GL_CXXALIASWARN (vsprintf); -#elif defined GNULIB_POSIXCHECK -# undef vsprintf -/* Assume vsprintf is always declared. */ -_GL_WARN_ON_USE (vsprintf, "vsprintf is not always POSIX compliant - " - "use gnulib module vsprintf-posix for portable " - "POSIX compliance"); -#endif - -#endif /* _@GUARD_PREFIX@_STDIO_H */ -#endif /* _@GUARD_PREFIX@_STDIO_H */ -#endif diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/stdlib.in.h b/thirdparty/grub-2.04/grub-core/lib/gnulib/stdlib.in.h deleted file mode 100644 index d80d7ec6b..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/stdlib.in.h +++ /dev/null @@ -1,1013 +0,0 @@ -/* A GNU-like . - - Copyright (C) 1995, 2001-2004, 2006-2019 Free Software Foundation, Inc. - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . */ - -#if __GNUC__ >= 3 -@PRAGMA_SYSTEM_HEADER@ -#endif -@PRAGMA_COLUMNS@ - -#if defined __need_system_stdlib_h || defined __need_malloc_and_calloc -/* Special invocation conventions inside some gnulib header files, - and inside some glibc header files, respectively. */ - -#@INCLUDE_NEXT@ @NEXT_STDLIB_H@ - -#else -/* Normal invocation convention. */ - -#ifndef _@GUARD_PREFIX@_STDLIB_H - -/* The include_next requires a split double-inclusion guard. */ -#@INCLUDE_NEXT@ @NEXT_STDLIB_H@ - -#ifndef _@GUARD_PREFIX@_STDLIB_H -#define _@GUARD_PREFIX@_STDLIB_H - -/* NetBSD 5.0 mis-defines NULL. */ -#include - -/* MirBSD 10 defines WEXITSTATUS in , not in . */ -#if @GNULIB_SYSTEM_POSIX@ && !defined WEXITSTATUS -# include -#endif - -/* Solaris declares getloadavg() in . */ -#if (@GNULIB_GETLOADAVG@ || defined GNULIB_POSIXCHECK) && @HAVE_SYS_LOADAVG_H@ -/* OpenIndiana has a bug: must be included before - . */ -# include -# include -#endif - -/* Native Windows platforms declare mktemp() in . */ -#if 0 && (defined _WIN32 && ! defined __CYGWIN__) -# include -#endif - -#if @GNULIB_RANDOM_R@ - -/* OSF/1 5.1 declares 'struct random_data' in , which is included - from if _REENTRANT is defined. Include it whenever we need - 'struct random_data'. */ -# if @HAVE_RANDOM_H@ -# include -# endif - -# if !@HAVE_STRUCT_RANDOM_DATA@ || @REPLACE_RANDOM_R@ || !@HAVE_RANDOM_R@ -# include -# endif - -# if !@HAVE_STRUCT_RANDOM_DATA@ -/* Define 'struct random_data'. - But allow multiple gnulib generated replacements to coexist. */ -# if !GNULIB_defined_struct_random_data -struct random_data -{ - int32_t *fptr; /* Front pointer. */ - int32_t *rptr; /* Rear pointer. */ - int32_t *state; /* Array of state values. */ - int rand_type; /* Type of random number generator. */ - int rand_deg; /* Degree of random number generator. */ - int rand_sep; /* Distance between front and rear. */ - int32_t *end_ptr; /* Pointer behind state table. */ -}; -# define GNULIB_defined_struct_random_data 1 -# endif -# endif -#endif - -#if (@GNULIB_MKSTEMP@ || @GNULIB_MKSTEMPS@ || @GNULIB_MKOSTEMP@ || @GNULIB_MKOSTEMPS@ || @GNULIB_GETSUBOPT@ || defined GNULIB_POSIXCHECK) && ! defined __GLIBC__ && !(defined _WIN32 && ! defined __CYGWIN__) -/* On Mac OS X 10.3, only declares mkstemp. */ -/* On Mac OS X 10.5, only declares mkstemps. */ -/* On Mac OS X 10.13, only declares mkostemp and mkostemps. */ -/* On Cygwin 1.7.1, only declares getsubopt. */ -/* But avoid namespace pollution on glibc systems and native Windows. */ -# include -#endif - -/* The __attribute__ feature is available in gcc versions 2.5 and later. - The attribute __pure__ was added in gcc 2.96. */ -#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 96) -# define _GL_ATTRIBUTE_PURE __attribute__ ((__pure__)) -#else -# define _GL_ATTRIBUTE_PURE /* empty */ -#endif - -/* The definition of _Noreturn is copied here. */ - -/* The definitions of _GL_FUNCDECL_RPL etc. are copied here. */ - -/* The definition of _GL_ARG_NONNULL is copied here. */ - -/* The definition of _GL_WARN_ON_USE is copied here. */ - - -/* Some systems do not define EXIT_*, despite otherwise supporting C89. */ -#ifndef EXIT_SUCCESS -# define EXIT_SUCCESS 0 -#endif -/* Tandem/NSK and other platforms that define EXIT_FAILURE as -1 interfere - with proper operation of xargs. */ -#ifndef EXIT_FAILURE -# define EXIT_FAILURE 1 -#elif EXIT_FAILURE != 1 -# undef EXIT_FAILURE -# define EXIT_FAILURE 1 -#endif - - -#if @GNULIB__EXIT@ -/* Terminate the current process with the given return code, without running - the 'atexit' handlers. */ -# if !@HAVE__EXIT@ -_GL_FUNCDECL_SYS (_Exit, _Noreturn void, (int status)); -# endif -_GL_CXXALIAS_SYS (_Exit, void, (int status)); -_GL_CXXALIASWARN (_Exit); -#elif defined GNULIB_POSIXCHECK -# undef _Exit -# if HAVE_RAW_DECL__EXIT -_GL_WARN_ON_USE (_Exit, "_Exit is unportable - " - "use gnulib module _Exit for portability"); -# endif -#endif - - -#if @GNULIB_ATOLL@ -/* Parse a signed decimal integer. - Returns the value of the integer. Errors are not detected. */ -# if !@HAVE_ATOLL@ -_GL_FUNCDECL_SYS (atoll, long long, (const char *string) - _GL_ATTRIBUTE_PURE - _GL_ARG_NONNULL ((1))); -# endif -_GL_CXXALIAS_SYS (atoll, long long, (const char *string)); -_GL_CXXALIASWARN (atoll); -#elif defined GNULIB_POSIXCHECK -# undef atoll -# if HAVE_RAW_DECL_ATOLL -_GL_WARN_ON_USE (atoll, "atoll is unportable - " - "use gnulib module atoll for portability"); -# endif -#endif - -#if @GNULIB_CALLOC_POSIX@ -# if @REPLACE_CALLOC@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# undef calloc -# define calloc rpl_calloc -# endif -_GL_FUNCDECL_RPL (calloc, void *, (size_t nmemb, size_t size)); -_GL_CXXALIAS_RPL (calloc, void *, (size_t nmemb, size_t size)); -# else -_GL_CXXALIAS_SYS (calloc, void *, (size_t nmemb, size_t size)); -# endif -_GL_CXXALIASWARN (calloc); -#elif defined GNULIB_POSIXCHECK -# undef calloc -/* Assume calloc is always declared. */ -_GL_WARN_ON_USE (calloc, "calloc is not POSIX compliant everywhere - " - "use gnulib module calloc-posix for portability"); -#endif - -#if @GNULIB_CANONICALIZE_FILE_NAME@ -# if @REPLACE_CANONICALIZE_FILE_NAME@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# define canonicalize_file_name rpl_canonicalize_file_name -# endif -_GL_FUNCDECL_RPL (canonicalize_file_name, char *, (const char *name) - _GL_ARG_NONNULL ((1))); -_GL_CXXALIAS_RPL (canonicalize_file_name, char *, (const char *name)); -# else -# if !@HAVE_CANONICALIZE_FILE_NAME@ -_GL_FUNCDECL_SYS (canonicalize_file_name, char *, (const char *name) - _GL_ARG_NONNULL ((1))); -# endif -_GL_CXXALIAS_SYS (canonicalize_file_name, char *, (const char *name)); -# endif -_GL_CXXALIASWARN (canonicalize_file_name); -#elif defined GNULIB_POSIXCHECK -# undef canonicalize_file_name -# if HAVE_RAW_DECL_CANONICALIZE_FILE_NAME -_GL_WARN_ON_USE (canonicalize_file_name, - "canonicalize_file_name is unportable - " - "use gnulib module canonicalize-lgpl for portability"); -# endif -#endif - -#if @GNULIB_GETLOADAVG@ -/* Store max(NELEM,3) load average numbers in LOADAVG[]. - The three numbers are the load average of the last 1 minute, the last 5 - minutes, and the last 15 minutes, respectively. - LOADAVG is an array of NELEM numbers. */ -# if !@HAVE_DECL_GETLOADAVG@ -_GL_FUNCDECL_SYS (getloadavg, int, (double loadavg[], int nelem) - _GL_ARG_NONNULL ((1))); -# endif -_GL_CXXALIAS_SYS (getloadavg, int, (double loadavg[], int nelem)); -_GL_CXXALIASWARN (getloadavg); -#elif defined GNULIB_POSIXCHECK -# undef getloadavg -# if HAVE_RAW_DECL_GETLOADAVG -_GL_WARN_ON_USE (getloadavg, "getloadavg is not portable - " - "use gnulib module getloadavg for portability"); -# endif -#endif - -#if @GNULIB_GETSUBOPT@ -/* Assuming *OPTIONP is a comma separated list of elements of the form - "token" or "token=value", getsubopt parses the first of these elements. - If the first element refers to a "token" that is member of the given - NULL-terminated array of tokens: - - It replaces the comma with a NUL byte, updates *OPTIONP to point past - the first option and the comma, sets *VALUEP to the value of the - element (or NULL if it doesn't contain an "=" sign), - - It returns the index of the "token" in the given array of tokens. - Otherwise it returns -1, and *OPTIONP and *VALUEP are undefined. - For more details see the POSIX:2001 specification. - http://www.opengroup.org/susv3xsh/getsubopt.html */ -# if !@HAVE_GETSUBOPT@ -_GL_FUNCDECL_SYS (getsubopt, int, - (char **optionp, char *const *tokens, char **valuep) - _GL_ARG_NONNULL ((1, 2, 3))); -# endif -_GL_CXXALIAS_SYS (getsubopt, int, - (char **optionp, char *const *tokens, char **valuep)); -_GL_CXXALIASWARN (getsubopt); -#elif defined GNULIB_POSIXCHECK -# undef getsubopt -# if HAVE_RAW_DECL_GETSUBOPT -_GL_WARN_ON_USE (getsubopt, "getsubopt is unportable - " - "use gnulib module getsubopt for portability"); -# endif -#endif - -#if @GNULIB_GRANTPT@ -/* Change the ownership and access permission of the slave side of the - pseudo-terminal whose master side is specified by FD. */ -# if !@HAVE_GRANTPT@ -_GL_FUNCDECL_SYS (grantpt, int, (int fd)); -# endif -_GL_CXXALIAS_SYS (grantpt, int, (int fd)); -_GL_CXXALIASWARN (grantpt); -#elif defined GNULIB_POSIXCHECK -# undef grantpt -# if HAVE_RAW_DECL_GRANTPT -_GL_WARN_ON_USE (grantpt, "grantpt is not portable - " - "use gnulib module grantpt for portability"); -# endif -#endif - -/* If _GL_USE_STDLIB_ALLOC is nonzero, the including module does not - rely on GNU or POSIX semantics for malloc and realloc (for example, - by never specifying a zero size), so it does not need malloc or - realloc to be redefined. */ -#if @GNULIB_MALLOC_POSIX@ -# if @REPLACE_MALLOC@ -# if !((defined __cplusplus && defined GNULIB_NAMESPACE) \ - || _GL_USE_STDLIB_ALLOC) -# undef malloc -# define malloc rpl_malloc -# endif -_GL_FUNCDECL_RPL (malloc, void *, (size_t size)); -_GL_CXXALIAS_RPL (malloc, void *, (size_t size)); -# else -_GL_CXXALIAS_SYS (malloc, void *, (size_t size)); -# endif -_GL_CXXALIASWARN (malloc); -#elif defined GNULIB_POSIXCHECK && !_GL_USE_STDLIB_ALLOC -# undef malloc -/* Assume malloc is always declared. */ -_GL_WARN_ON_USE (malloc, "malloc is not POSIX compliant everywhere - " - "use gnulib module malloc-posix for portability"); -#endif - -/* Convert a multibyte character to a wide character. */ -#if @GNULIB_MBTOWC@ -# if @REPLACE_MBTOWC@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# undef mbtowc -# define mbtowc rpl_mbtowc -# endif -_GL_FUNCDECL_RPL (mbtowc, int, (wchar_t *pwc, const char *s, size_t n)); -_GL_CXXALIAS_RPL (mbtowc, int, (wchar_t *pwc, const char *s, size_t n)); -# else -_GL_CXXALIAS_SYS (mbtowc, int, (wchar_t *pwc, const char *s, size_t n)); -# endif -_GL_CXXALIASWARN (mbtowc); -#endif - -#if @GNULIB_MKDTEMP@ -/* Create a unique temporary directory from TEMPLATE. - The last six characters of TEMPLATE must be "XXXXXX"; - they are replaced with a string that makes the directory name unique. - Returns TEMPLATE, or a null pointer if it cannot get a unique name. - The directory is created mode 700. */ -# if !@HAVE_MKDTEMP@ -_GL_FUNCDECL_SYS (mkdtemp, char *, (char * /*template*/) _GL_ARG_NONNULL ((1))); -# endif -_GL_CXXALIAS_SYS (mkdtemp, char *, (char * /*template*/)); -_GL_CXXALIASWARN (mkdtemp); -#elif defined GNULIB_POSIXCHECK -# undef mkdtemp -# if HAVE_RAW_DECL_MKDTEMP -_GL_WARN_ON_USE (mkdtemp, "mkdtemp is unportable - " - "use gnulib module mkdtemp for portability"); -# endif -#endif - -#if @GNULIB_MKOSTEMP@ -/* Create a unique temporary file from TEMPLATE. - The last six characters of TEMPLATE must be "XXXXXX"; - they are replaced with a string that makes the file name unique. - The flags are a bitmask, possibly including O_CLOEXEC (defined in ) - and O_TEXT, O_BINARY (defined in "binary-io.h"). - The file is then created, with the specified flags, ensuring it didn't exist - before. - The file is created read-write (mask at least 0600 & ~umask), but it may be - world-readable and world-writable (mask 0666 & ~umask), depending on the - implementation. - Returns the open file descriptor if successful, otherwise -1 and errno - set. */ -# if !@HAVE_MKOSTEMP@ -_GL_FUNCDECL_SYS (mkostemp, int, (char * /*template*/, int /*flags*/) - _GL_ARG_NONNULL ((1))); -# endif -_GL_CXXALIAS_SYS (mkostemp, int, (char * /*template*/, int /*flags*/)); -_GL_CXXALIASWARN (mkostemp); -#elif defined GNULIB_POSIXCHECK -# undef mkostemp -# if HAVE_RAW_DECL_MKOSTEMP -_GL_WARN_ON_USE (mkostemp, "mkostemp is unportable - " - "use gnulib module mkostemp for portability"); -# endif -#endif - -#if @GNULIB_MKOSTEMPS@ -/* Create a unique temporary file from TEMPLATE. - The last six characters of TEMPLATE before a suffix of length - SUFFIXLEN must be "XXXXXX"; - they are replaced with a string that makes the file name unique. - The flags are a bitmask, possibly including O_CLOEXEC (defined in ) - and O_TEXT, O_BINARY (defined in "binary-io.h"). - The file is then created, with the specified flags, ensuring it didn't exist - before. - The file is created read-write (mask at least 0600 & ~umask), but it may be - world-readable and world-writable (mask 0666 & ~umask), depending on the - implementation. - Returns the open file descriptor if successful, otherwise -1 and errno - set. */ -# if !@HAVE_MKOSTEMPS@ -_GL_FUNCDECL_SYS (mkostemps, int, - (char * /*template*/, int /*suffixlen*/, int /*flags*/) - _GL_ARG_NONNULL ((1))); -# endif -_GL_CXXALIAS_SYS (mkostemps, int, - (char * /*template*/, int /*suffixlen*/, int /*flags*/)); -_GL_CXXALIASWARN (mkostemps); -#elif defined GNULIB_POSIXCHECK -# undef mkostemps -# if HAVE_RAW_DECL_MKOSTEMPS -_GL_WARN_ON_USE (mkostemps, "mkostemps is unportable - " - "use gnulib module mkostemps for portability"); -# endif -#endif - -#if @GNULIB_MKSTEMP@ -/* Create a unique temporary file from TEMPLATE. - The last six characters of TEMPLATE must be "XXXXXX"; - they are replaced with a string that makes the file name unique. - The file is then created, ensuring it didn't exist before. - The file is created read-write (mask at least 0600 & ~umask), but it may be - world-readable and world-writable (mask 0666 & ~umask), depending on the - implementation. - Returns the open file descriptor if successful, otherwise -1 and errno - set. */ -# if @REPLACE_MKSTEMP@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# define mkstemp rpl_mkstemp -# endif -_GL_FUNCDECL_RPL (mkstemp, int, (char * /*template*/) _GL_ARG_NONNULL ((1))); -_GL_CXXALIAS_RPL (mkstemp, int, (char * /*template*/)); -# else -# if ! @HAVE_MKSTEMP@ -_GL_FUNCDECL_SYS (mkstemp, int, (char * /*template*/) _GL_ARG_NONNULL ((1))); -# endif -_GL_CXXALIAS_SYS (mkstemp, int, (char * /*template*/)); -# endif -_GL_CXXALIASWARN (mkstemp); -#elif defined GNULIB_POSIXCHECK -# undef mkstemp -# if HAVE_RAW_DECL_MKSTEMP -_GL_WARN_ON_USE (mkstemp, "mkstemp is unportable - " - "use gnulib module mkstemp for portability"); -# endif -#endif - -#if @GNULIB_MKSTEMPS@ -/* Create a unique temporary file from TEMPLATE. - The last six characters of TEMPLATE prior to a suffix of length - SUFFIXLEN must be "XXXXXX"; - they are replaced with a string that makes the file name unique. - The file is then created, ensuring it didn't exist before. - The file is created read-write (mask at least 0600 & ~umask), but it may be - world-readable and world-writable (mask 0666 & ~umask), depending on the - implementation. - Returns the open file descriptor if successful, otherwise -1 and errno - set. */ -# if !@HAVE_MKSTEMPS@ -_GL_FUNCDECL_SYS (mkstemps, int, (char * /*template*/, int /*suffixlen*/) - _GL_ARG_NONNULL ((1))); -# endif -_GL_CXXALIAS_SYS (mkstemps, int, (char * /*template*/, int /*suffixlen*/)); -_GL_CXXALIASWARN (mkstemps); -#elif defined GNULIB_POSIXCHECK -# undef mkstemps -# if HAVE_RAW_DECL_MKSTEMPS -_GL_WARN_ON_USE (mkstemps, "mkstemps is unportable - " - "use gnulib module mkstemps for portability"); -# endif -#endif - -#if @GNULIB_POSIX_OPENPT@ -/* Return an FD open to the master side of a pseudo-terminal. Flags should - include O_RDWR, and may also include O_NOCTTY. */ -# if !@HAVE_POSIX_OPENPT@ -_GL_FUNCDECL_SYS (posix_openpt, int, (int flags)); -# endif -_GL_CXXALIAS_SYS (posix_openpt, int, (int flags)); -_GL_CXXALIASWARN (posix_openpt); -#elif defined GNULIB_POSIXCHECK -# undef posix_openpt -# if HAVE_RAW_DECL_POSIX_OPENPT -_GL_WARN_ON_USE (posix_openpt, "posix_openpt is not portable - " - "use gnulib module posix_openpt for portability"); -# endif -#endif - -#if @GNULIB_PTSNAME@ -/* Return the pathname of the pseudo-terminal slave associated with - the master FD is open on, or NULL on errors. */ -# if @REPLACE_PTSNAME@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# undef ptsname -# define ptsname rpl_ptsname -# endif -_GL_FUNCDECL_RPL (ptsname, char *, (int fd)); -_GL_CXXALIAS_RPL (ptsname, char *, (int fd)); -# else -# if !@HAVE_PTSNAME@ -_GL_FUNCDECL_SYS (ptsname, char *, (int fd)); -# endif -_GL_CXXALIAS_SYS (ptsname, char *, (int fd)); -# endif -_GL_CXXALIASWARN (ptsname); -#elif defined GNULIB_POSIXCHECK -# undef ptsname -# if HAVE_RAW_DECL_PTSNAME -_GL_WARN_ON_USE (ptsname, "ptsname is not portable - " - "use gnulib module ptsname for portability"); -# endif -#endif - -#if @GNULIB_PTSNAME_R@ -/* Set the pathname of the pseudo-terminal slave associated with - the master FD is open on and return 0, or set errno and return - non-zero on errors. */ -# if @REPLACE_PTSNAME_R@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# undef ptsname_r -# define ptsname_r rpl_ptsname_r -# endif -_GL_FUNCDECL_RPL (ptsname_r, int, (int fd, char *buf, size_t len)); -_GL_CXXALIAS_RPL (ptsname_r, int, (int fd, char *buf, size_t len)); -# else -# if !@HAVE_PTSNAME_R@ -_GL_FUNCDECL_SYS (ptsname_r, int, (int fd, char *buf, size_t len)); -# endif -_GL_CXXALIAS_SYS (ptsname_r, int, (int fd, char *buf, size_t len)); -# endif -_GL_CXXALIASWARN (ptsname_r); -#elif defined GNULIB_POSIXCHECK -# undef ptsname_r -# if HAVE_RAW_DECL_PTSNAME_R -_GL_WARN_ON_USE (ptsname_r, "ptsname_r is not portable - " - "use gnulib module ptsname_r for portability"); -# endif -#endif - -#if @GNULIB_PUTENV@ -# if @REPLACE_PUTENV@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# undef putenv -# define putenv rpl_putenv -# endif -_GL_FUNCDECL_RPL (putenv, int, (char *string) _GL_ARG_NONNULL ((1))); -_GL_CXXALIAS_RPL (putenv, int, (char *string)); -# else -_GL_CXXALIAS_SYS (putenv, int, (char *string)); -# endif -_GL_CXXALIASWARN (putenv); -#endif - -#if @GNULIB_QSORT_R@ -/* Sort an array of NMEMB elements, starting at address BASE, each element - occupying SIZE bytes, in ascending order according to the comparison - function COMPARE. */ -# if @REPLACE_QSORT_R@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# undef qsort_r -# define qsort_r rpl_qsort_r -# endif -_GL_FUNCDECL_RPL (qsort_r, void, (void *base, size_t nmemb, size_t size, - int (*compare) (void const *, void const *, - void *), - void *arg) _GL_ARG_NONNULL ((1, 4))); -_GL_CXXALIAS_RPL (qsort_r, void, (void *base, size_t nmemb, size_t size, - int (*compare) (void const *, void const *, - void *), - void *arg)); -# else -# if !@HAVE_QSORT_R@ -_GL_FUNCDECL_SYS (qsort_r, void, (void *base, size_t nmemb, size_t size, - int (*compare) (void const *, void const *, - void *), - void *arg) _GL_ARG_NONNULL ((1, 4))); -# endif -_GL_CXXALIAS_SYS (qsort_r, void, (void *base, size_t nmemb, size_t size, - int (*compare) (void const *, void const *, - void *), - void *arg)); -# endif -_GL_CXXALIASWARN (qsort_r); -#elif defined GNULIB_POSIXCHECK -# undef qsort_r -# if HAVE_RAW_DECL_QSORT_R -_GL_WARN_ON_USE (qsort_r, "qsort_r is not portable - " - "use gnulib module qsort_r for portability"); -# endif -#endif - - -#if @GNULIB_RANDOM_R@ -# if !@HAVE_RANDOM_R@ -# ifndef RAND_MAX -# define RAND_MAX 2147483647 -# endif -# endif -#endif - - -#if @GNULIB_RANDOM@ -# if !@HAVE_RANDOM@ -_GL_FUNCDECL_SYS (random, long, (void)); -# endif -_GL_CXXALIAS_SYS (random, long, (void)); -_GL_CXXALIASWARN (random); -#elif defined GNULIB_POSIXCHECK -# undef random -# if HAVE_RAW_DECL_RANDOM -_GL_WARN_ON_USE (random, "random is unportable - " - "use gnulib module random for portability"); -# endif -#endif - -#if @GNULIB_RANDOM@ -# if !@HAVE_RANDOM@ -_GL_FUNCDECL_SYS (srandom, void, (unsigned int seed)); -# endif -_GL_CXXALIAS_SYS (srandom, void, (unsigned int seed)); -_GL_CXXALIASWARN (srandom); -#elif defined GNULIB_POSIXCHECK -# undef srandom -# if HAVE_RAW_DECL_SRANDOM -_GL_WARN_ON_USE (srandom, "srandom is unportable - " - "use gnulib module random for portability"); -# endif -#endif - -#if @GNULIB_RANDOM@ -# if !@HAVE_RANDOM@ || !@HAVE_DECL_INITSTATE@ -_GL_FUNCDECL_SYS (initstate, char *, - (unsigned int seed, char *buf, size_t buf_size) - _GL_ARG_NONNULL ((2))); -# endif -_GL_CXXALIAS_SYS (initstate, char *, - (unsigned int seed, char *buf, size_t buf_size)); -_GL_CXXALIASWARN (initstate); -#elif defined GNULIB_POSIXCHECK -# undef initstate -# if HAVE_RAW_DECL_INITSTATE_R -_GL_WARN_ON_USE (initstate, "initstate is unportable - " - "use gnulib module random for portability"); -# endif -#endif - -#if @GNULIB_RANDOM@ -# if !@HAVE_RANDOM@ || !@HAVE_DECL_SETSTATE@ -_GL_FUNCDECL_SYS (setstate, char *, (char *arg_state) _GL_ARG_NONNULL ((1))); -# endif -_GL_CXXALIAS_SYS (setstate, char *, (char *arg_state)); -_GL_CXXALIASWARN (setstate); -#elif defined GNULIB_POSIXCHECK -# undef setstate -# if HAVE_RAW_DECL_SETSTATE_R -_GL_WARN_ON_USE (setstate, "setstate is unportable - " - "use gnulib module random for portability"); -# endif -#endif - - -#if @GNULIB_RANDOM_R@ -# if @REPLACE_RANDOM_R@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# undef random_r -# define random_r rpl_random_r -# endif -_GL_FUNCDECL_RPL (random_r, int, (struct random_data *buf, int32_t *result) - _GL_ARG_NONNULL ((1, 2))); -_GL_CXXALIAS_RPL (random_r, int, (struct random_data *buf, int32_t *result)); -# else -# if !@HAVE_RANDOM_R@ -_GL_FUNCDECL_SYS (random_r, int, (struct random_data *buf, int32_t *result) - _GL_ARG_NONNULL ((1, 2))); -# endif -_GL_CXXALIAS_SYS (random_r, int, (struct random_data *buf, int32_t *result)); -# endif -_GL_CXXALIASWARN (random_r); -#elif defined GNULIB_POSIXCHECK -# undef random_r -# if HAVE_RAW_DECL_RANDOM_R -_GL_WARN_ON_USE (random_r, "random_r is unportable - " - "use gnulib module random_r for portability"); -# endif -#endif - -#if @GNULIB_RANDOM_R@ -# if @REPLACE_RANDOM_R@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# undef srandom_r -# define srandom_r rpl_srandom_r -# endif -_GL_FUNCDECL_RPL (srandom_r, int, - (unsigned int seed, struct random_data *rand_state) - _GL_ARG_NONNULL ((2))); -_GL_CXXALIAS_RPL (srandom_r, int, - (unsigned int seed, struct random_data *rand_state)); -# else -# if !@HAVE_RANDOM_R@ -_GL_FUNCDECL_SYS (srandom_r, int, - (unsigned int seed, struct random_data *rand_state) - _GL_ARG_NONNULL ((2))); -# endif -_GL_CXXALIAS_SYS (srandom_r, int, - (unsigned int seed, struct random_data *rand_state)); -# endif -_GL_CXXALIASWARN (srandom_r); -#elif defined GNULIB_POSIXCHECK -# undef srandom_r -# if HAVE_RAW_DECL_SRANDOM_R -_GL_WARN_ON_USE (srandom_r, "srandom_r is unportable - " - "use gnulib module random_r for portability"); -# endif -#endif - -#if @GNULIB_RANDOM_R@ -# if @REPLACE_RANDOM_R@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# undef initstate_r -# define initstate_r rpl_initstate_r -# endif -_GL_FUNCDECL_RPL (initstate_r, int, - (unsigned int seed, char *buf, size_t buf_size, - struct random_data *rand_state) - _GL_ARG_NONNULL ((2, 4))); -_GL_CXXALIAS_RPL (initstate_r, int, - (unsigned int seed, char *buf, size_t buf_size, - struct random_data *rand_state)); -# else -# if !@HAVE_RANDOM_R@ -_GL_FUNCDECL_SYS (initstate_r, int, - (unsigned int seed, char *buf, size_t buf_size, - struct random_data *rand_state) - _GL_ARG_NONNULL ((2, 4))); -# endif -_GL_CXXALIAS_SYS (initstate_r, int, - (unsigned int seed, char *buf, size_t buf_size, - struct random_data *rand_state)); -# endif -_GL_CXXALIASWARN (initstate_r); -#elif defined GNULIB_POSIXCHECK -# undef initstate_r -# if HAVE_RAW_DECL_INITSTATE_R -_GL_WARN_ON_USE (initstate_r, "initstate_r is unportable - " - "use gnulib module random_r for portability"); -# endif -#endif - -#if @GNULIB_RANDOM_R@ -# if @REPLACE_RANDOM_R@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# undef setstate_r -# define setstate_r rpl_setstate_r -# endif -_GL_FUNCDECL_RPL (setstate_r, int, - (char *arg_state, struct random_data *rand_state) - _GL_ARG_NONNULL ((1, 2))); -_GL_CXXALIAS_RPL (setstate_r, int, - (char *arg_state, struct random_data *rand_state)); -# else -# if !@HAVE_RANDOM_R@ -_GL_FUNCDECL_SYS (setstate_r, int, - (char *arg_state, struct random_data *rand_state) - _GL_ARG_NONNULL ((1, 2))); -# endif -_GL_CXXALIAS_SYS (setstate_r, int, - (char *arg_state, struct random_data *rand_state)); -# endif -_GL_CXXALIASWARN (setstate_r); -#elif defined GNULIB_POSIXCHECK -# undef setstate_r -# if HAVE_RAW_DECL_SETSTATE_R -_GL_WARN_ON_USE (setstate_r, "setstate_r is unportable - " - "use gnulib module random_r for portability"); -# endif -#endif - - -#if @GNULIB_REALLOC_POSIX@ -# if @REPLACE_REALLOC@ -# if !((defined __cplusplus && defined GNULIB_NAMESPACE) \ - || _GL_USE_STDLIB_ALLOC) -# undef realloc -# define realloc rpl_realloc -# endif -_GL_FUNCDECL_RPL (realloc, void *, (void *ptr, size_t size)); -_GL_CXXALIAS_RPL (realloc, void *, (void *ptr, size_t size)); -# else -_GL_CXXALIAS_SYS (realloc, void *, (void *ptr, size_t size)); -# endif -_GL_CXXALIASWARN (realloc); -#elif defined GNULIB_POSIXCHECK && !_GL_USE_STDLIB_ALLOC -# undef realloc -/* Assume realloc is always declared. */ -_GL_WARN_ON_USE (realloc, "realloc is not POSIX compliant everywhere - " - "use gnulib module realloc-posix for portability"); -#endif - - -#if @GNULIB_REALLOCARRAY@ -# if ! @HAVE_REALLOCARRAY@ -_GL_FUNCDECL_SYS (reallocarray, void *, - (void *ptr, size_t nmemb, size_t size)); -# endif -_GL_CXXALIAS_SYS (reallocarray, void *, - (void *ptr, size_t nmemb, size_t size)); -_GL_CXXALIASWARN (reallocarray); -#elif defined GNULIB_POSIXCHECK -# undef reallocarray -# if HAVE_RAW_DECL_REALLOCARRAY -_GL_WARN_ON_USE (reallocarray, "reallocarray is not portable - " - "use gnulib module reallocarray for portability"); -# endif -#endif - -#if @GNULIB_REALPATH@ -# if @REPLACE_REALPATH@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# define realpath rpl_realpath -# endif -_GL_FUNCDECL_RPL (realpath, char *, (const char *name, char *resolved) - _GL_ARG_NONNULL ((1))); -_GL_CXXALIAS_RPL (realpath, char *, (const char *name, char *resolved)); -# else -# if !@HAVE_REALPATH@ -_GL_FUNCDECL_SYS (realpath, char *, (const char *name, char *resolved) - _GL_ARG_NONNULL ((1))); -# endif -_GL_CXXALIAS_SYS (realpath, char *, (const char *name, char *resolved)); -# endif -_GL_CXXALIASWARN (realpath); -#elif defined GNULIB_POSIXCHECK -# undef realpath -# if HAVE_RAW_DECL_REALPATH -_GL_WARN_ON_USE (realpath, "realpath is unportable - use gnulib module " - "canonicalize or canonicalize-lgpl for portability"); -# endif -#endif - -#if @GNULIB_RPMATCH@ -/* Test a user response to a question. - Return 1 if it is affirmative, 0 if it is negative, or -1 if not clear. */ -# if !@HAVE_RPMATCH@ -_GL_FUNCDECL_SYS (rpmatch, int, (const char *response) _GL_ARG_NONNULL ((1))); -# endif -_GL_CXXALIAS_SYS (rpmatch, int, (const char *response)); -_GL_CXXALIASWARN (rpmatch); -#elif defined GNULIB_POSIXCHECK -# undef rpmatch -# if HAVE_RAW_DECL_RPMATCH -_GL_WARN_ON_USE (rpmatch, "rpmatch is unportable - " - "use gnulib module rpmatch for portability"); -# endif -#endif - -#if @GNULIB_SECURE_GETENV@ -/* Look up NAME in the environment, returning 0 in insecure situations. */ -# if !@HAVE_SECURE_GETENV@ -_GL_FUNCDECL_SYS (secure_getenv, char *, - (char const *name) _GL_ARG_NONNULL ((1))); -# endif -_GL_CXXALIAS_SYS (secure_getenv, char *, (char const *name)); -_GL_CXXALIASWARN (secure_getenv); -#elif defined GNULIB_POSIXCHECK -# undef secure_getenv -# if HAVE_RAW_DECL_SECURE_GETENV -_GL_WARN_ON_USE (secure_getenv, "secure_getenv is unportable - " - "use gnulib module secure_getenv for portability"); -# endif -#endif - -#if @GNULIB_SETENV@ -/* Set NAME to VALUE in the environment. - If REPLACE is nonzero, overwrite an existing value. */ -# if @REPLACE_SETENV@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# undef setenv -# define setenv rpl_setenv -# endif -_GL_FUNCDECL_RPL (setenv, int, - (const char *name, const char *value, int replace) - _GL_ARG_NONNULL ((1))); -_GL_CXXALIAS_RPL (setenv, int, - (const char *name, const char *value, int replace)); -# else -# if !@HAVE_DECL_SETENV@ -_GL_FUNCDECL_SYS (setenv, int, - (const char *name, const char *value, int replace) - _GL_ARG_NONNULL ((1))); -# endif -_GL_CXXALIAS_SYS (setenv, int, - (const char *name, const char *value, int replace)); -# endif -# if !(@REPLACE_SETENV@ && !@HAVE_DECL_SETENV@) -_GL_CXXALIASWARN (setenv); -# endif -#elif defined GNULIB_POSIXCHECK -# undef setenv -# if HAVE_RAW_DECL_SETENV -_GL_WARN_ON_USE (setenv, "setenv is unportable - " - "use gnulib module setenv for portability"); -# endif -#endif - -#if @GNULIB_STRTOD@ - /* Parse a double from STRING, updating ENDP if appropriate. */ -# if @REPLACE_STRTOD@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# define strtod rpl_strtod -# endif -_GL_FUNCDECL_RPL (strtod, double, (const char *str, char **endp) - _GL_ARG_NONNULL ((1))); -_GL_CXXALIAS_RPL (strtod, double, (const char *str, char **endp)); -# else -# if !@HAVE_STRTOD@ -_GL_FUNCDECL_SYS (strtod, double, (const char *str, char **endp) - _GL_ARG_NONNULL ((1))); -# endif -_GL_CXXALIAS_SYS (strtod, double, (const char *str, char **endp)); -# endif -_GL_CXXALIASWARN (strtod); -#elif defined GNULIB_POSIXCHECK -# undef strtod -# if HAVE_RAW_DECL_STRTOD -_GL_WARN_ON_USE (strtod, "strtod is unportable - " - "use gnulib module strtod for portability"); -# endif -#endif - -#if @GNULIB_STRTOLL@ -/* Parse a signed integer whose textual representation starts at STRING. - The integer is expected to be in base BASE (2 <= BASE <= 36); if BASE == 0, - it may be decimal or octal (with prefix "0") or hexadecimal (with prefix - "0x"). - If ENDPTR is not NULL, the address of the first byte after the integer is - stored in *ENDPTR. - Upon overflow, the return value is LLONG_MAX or LLONG_MIN, and errno is set - to ERANGE. */ -# if !@HAVE_STRTOLL@ -_GL_FUNCDECL_SYS (strtoll, long long, - (const char *string, char **endptr, int base) - _GL_ARG_NONNULL ((1))); -# endif -_GL_CXXALIAS_SYS (strtoll, long long, - (const char *string, char **endptr, int base)); -_GL_CXXALIASWARN (strtoll); -#elif defined GNULIB_POSIXCHECK -# undef strtoll -# if HAVE_RAW_DECL_STRTOLL -_GL_WARN_ON_USE (strtoll, "strtoll is unportable - " - "use gnulib module strtoll for portability"); -# endif -#endif - -#if @GNULIB_STRTOULL@ -/* Parse an unsigned integer whose textual representation starts at STRING. - The integer is expected to be in base BASE (2 <= BASE <= 36); if BASE == 0, - it may be decimal or octal (with prefix "0") or hexadecimal (with prefix - "0x"). - If ENDPTR is not NULL, the address of the first byte after the integer is - stored in *ENDPTR. - Upon overflow, the return value is ULLONG_MAX, and errno is set to - ERANGE. */ -# if !@HAVE_STRTOULL@ -_GL_FUNCDECL_SYS (strtoull, unsigned long long, - (const char *string, char **endptr, int base) - _GL_ARG_NONNULL ((1))); -# endif -_GL_CXXALIAS_SYS (strtoull, unsigned long long, - (const char *string, char **endptr, int base)); -_GL_CXXALIASWARN (strtoull); -#elif defined GNULIB_POSIXCHECK -# undef strtoull -# if HAVE_RAW_DECL_STRTOULL -_GL_WARN_ON_USE (strtoull, "strtoull is unportable - " - "use gnulib module strtoull for portability"); -# endif -#endif - -#if @GNULIB_UNLOCKPT@ -/* Unlock the slave side of the pseudo-terminal whose master side is specified - by FD, so that it can be opened. */ -# if !@HAVE_UNLOCKPT@ -_GL_FUNCDECL_SYS (unlockpt, int, (int fd)); -# endif -_GL_CXXALIAS_SYS (unlockpt, int, (int fd)); -_GL_CXXALIASWARN (unlockpt); -#elif defined GNULIB_POSIXCHECK -# undef unlockpt -# if HAVE_RAW_DECL_UNLOCKPT -_GL_WARN_ON_USE (unlockpt, "unlockpt is not portable - " - "use gnulib module unlockpt for portability"); -# endif -#endif - -#if @GNULIB_UNSETENV@ -/* Remove the variable NAME from the environment. */ -# if @REPLACE_UNSETENV@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# undef unsetenv -# define unsetenv rpl_unsetenv -# endif -_GL_FUNCDECL_RPL (unsetenv, int, (const char *name) _GL_ARG_NONNULL ((1))); -_GL_CXXALIAS_RPL (unsetenv, int, (const char *name)); -# else -# if !@HAVE_DECL_UNSETENV@ -_GL_FUNCDECL_SYS (unsetenv, int, (const char *name) _GL_ARG_NONNULL ((1))); -# endif -_GL_CXXALIAS_SYS (unsetenv, int, (const char *name)); -# endif -# if !(@REPLACE_UNSETENV@ && !@HAVE_DECL_UNSETENV@) -_GL_CXXALIASWARN (unsetenv); -# endif -#elif defined GNULIB_POSIXCHECK -# undef unsetenv -# if HAVE_RAW_DECL_UNSETENV -_GL_WARN_ON_USE (unsetenv, "unsetenv is unportable - " - "use gnulib module unsetenv for portability"); -# endif -#endif - -/* Convert a wide character to a multibyte character. */ -#if @GNULIB_WCTOMB@ -# if @REPLACE_WCTOMB@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# undef wctomb -# define wctomb rpl_wctomb -# endif -_GL_FUNCDECL_RPL (wctomb, int, (char *s, wchar_t wc)); -_GL_CXXALIAS_RPL (wctomb, int, (char *s, wchar_t wc)); -# else -_GL_CXXALIAS_SYS (wctomb, int, (char *s, wchar_t wc)); -# endif -_GL_CXXALIASWARN (wctomb); -#endif - - -#endif /* _@GUARD_PREFIX@_STDLIB_H */ -#endif /* _@GUARD_PREFIX@_STDLIB_H */ -#endif diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/strcasecmp.c b/thirdparty/grub-2.04/grub-core/lib/gnulib/strcasecmp.c deleted file mode 100644 index 6cd0e1e37..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/strcasecmp.c +++ /dev/null @@ -1,62 +0,0 @@ -/* Case-insensitive string comparison function. - Copyright (C) 1998-1999, 2005-2007, 2009-2019 Free Software Foundation, Inc. - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3, or (at your option) - any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, see . */ - -#include - -/* Specification. */ -#include - -#include -#include - -#define TOLOWER(Ch) (isupper (Ch) ? tolower (Ch) : (Ch)) - -/* Compare strings S1 and S2, ignoring case, returning less than, equal to or - greater than zero if S1 is lexicographically less than, equal to or greater - than S2. - Note: This function does not work with multibyte strings! */ - -int -strcasecmp (const char *s1, const char *s2) -{ - const unsigned char *p1 = (const unsigned char *) s1; - const unsigned char *p2 = (const unsigned char *) s2; - unsigned char c1, c2; - - if (p1 == p2) - return 0; - - do - { - c1 = TOLOWER (*p1); - c2 = TOLOWER (*p2); - - if (c1 == '\0') - break; - - ++p1; - ++p2; - } - while (c1 == c2); - - if (UCHAR_MAX <= INT_MAX) - return c1 - c2; - else - /* On machines where 'char' and 'int' are types of the same size, the - difference of two 'unsigned char' values - including the sign bit - - doesn't fit in an 'int'. */ - return (c1 > c2 ? 1 : c1 < c2 ? -1 : 0); -} diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/strchrnul.c b/thirdparty/grub-2.04/grub-core/lib/gnulib/strchrnul.c deleted file mode 100644 index 0f5dd8140..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/strchrnul.c +++ /dev/null @@ -1,142 +0,0 @@ -/* Searching in a string. - Copyright (C) 2003, 2007-2019 Free Software Foundation, Inc. - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . */ - -#include - -/* Specification. */ -#include - -/* Find the first occurrence of C in S or the final NUL byte. */ -char * -strchrnul (const char *s, int c_in) -{ - /* On 32-bit hardware, choosing longword to be a 32-bit unsigned - long instead of a 64-bit uintmax_t tends to give better - performance. On 64-bit hardware, unsigned long is generally 64 - bits already. Change this typedef to experiment with - performance. */ - typedef unsigned long int longword; - - const unsigned char *char_ptr; - const longword *longword_ptr; - longword repeated_one; - longword repeated_c; - unsigned char c; - - c = (unsigned char) c_in; - if (!c) - return rawmemchr (s, 0); - - /* Handle the first few bytes by reading one byte at a time. - Do this until CHAR_PTR is aligned on a longword boundary. */ - for (char_ptr = (const unsigned char *) s; - (size_t) char_ptr % sizeof (longword) != 0; - ++char_ptr) - if (!*char_ptr || *char_ptr == c) - return (char *) char_ptr; - - longword_ptr = (const longword *) char_ptr; - - /* All these elucidatory comments refer to 4-byte longwords, - but the theory applies equally well to any size longwords. */ - - /* Compute auxiliary longword values: - repeated_one is a value which has a 1 in every byte. - repeated_c has c in every byte. */ - repeated_one = 0x01010101; - repeated_c = c | (c << 8); - repeated_c |= repeated_c << 16; - if (0xffffffffU < (longword) -1) - { - repeated_one |= repeated_one << 31 << 1; - repeated_c |= repeated_c << 31 << 1; - if (8 < sizeof (longword)) - { - size_t i; - - for (i = 64; i < sizeof (longword) * 8; i *= 2) - { - repeated_one |= repeated_one << i; - repeated_c |= repeated_c << i; - } - } - } - - /* Instead of the traditional loop which tests each byte, we will - test a longword at a time. The tricky part is testing if *any of - the four* bytes in the longword in question are equal to NUL or - c. We first use an xor with repeated_c. This reduces the task - to testing whether *any of the four* bytes in longword1 or - longword2 is zero. - - Let's consider longword1. We compute tmp = - ((longword1 - repeated_one) & ~longword1) & (repeated_one << 7). - That is, we perform the following operations: - 1. Subtract repeated_one. - 2. & ~longword1. - 3. & a mask consisting of 0x80 in every byte. - Consider what happens in each byte: - - If a byte of longword1 is zero, step 1 and 2 transform it into 0xff, - and step 3 transforms it into 0x80. A carry can also be propagated - to more significant bytes. - - If a byte of longword1 is nonzero, let its lowest 1 bit be at - position k (0 <= k <= 7); so the lowest k bits are 0. After step 1, - the byte ends in a single bit of value 0 and k bits of value 1. - After step 2, the result is just k bits of value 1: 2^k - 1. After - step 3, the result is 0. And no carry is produced. - So, if longword1 has only non-zero bytes, tmp is zero. - Whereas if longword1 has a zero byte, call j the position of the least - significant zero byte. Then the result has a zero at positions 0, ..., - j-1 and a 0x80 at position j. We cannot predict the result at the more - significant bytes (positions j+1..3), but it does not matter since we - already have a non-zero bit at position 8*j+7. - - The test whether any byte in longword1 or longword2 is zero is equivalent - to testing whether tmp1 is nonzero or tmp2 is nonzero. We can combine - this into a single test, whether (tmp1 | tmp2) is nonzero. - - This test can read more than one byte beyond the end of a string, - depending on where the terminating NUL is encountered. However, - this is considered safe since the initialization phase ensured - that the read will be aligned, therefore, the read will not cross - page boundaries and will not cause a fault. */ - - while (1) - { - longword longword1 = *longword_ptr ^ repeated_c; - longword longword2 = *longword_ptr; - - if (((((longword1 - repeated_one) & ~longword1) - | ((longword2 - repeated_one) & ~longword2)) - & (repeated_one << 7)) != 0) - break; - longword_ptr++; - } - - char_ptr = (const unsigned char *) longword_ptr; - - /* At this point, we know that one of the sizeof (longword) bytes - starting at char_ptr is == 0 or == c. On little-endian machines, - we could determine the first such byte without any further memory - accesses, just by looking at the tmp result from the last loop - iteration. But this does not work on big-endian machines. - Choose code that works in both cases. */ - - char_ptr = (unsigned char *) longword_ptr; - while (*char_ptr && (*char_ptr != c)) - char_ptr++; - return (char *) char_ptr; -} diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/strchrnul.valgrind b/thirdparty/grub-2.04/grub-core/lib/gnulib/strchrnul.valgrind deleted file mode 100644 index b14fa1304..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/strchrnul.valgrind +++ /dev/null @@ -1,12 +0,0 @@ -# Suppress a valgrind message about use of uninitialized memory in strchrnul(). -# This use is OK because it provides only a speedup. -{ - strchrnul-value4 - Memcheck:Value4 - fun:strchrnul -} -{ - strchrnul-value8 - Memcheck:Value8 - fun:strchrnul -} diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/strdup.c b/thirdparty/grub-2.04/grub-core/lib/gnulib/strdup.c deleted file mode 100644 index 717cf65ba..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/strdup.c +++ /dev/null @@ -1,54 +0,0 @@ -/* Copyright (C) 1991, 1996-1998, 2002-2004, 2006-2007, 2009-2019 Free Software - Foundation, Inc. - - This file is part of the GNU C Library. - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3, or (at your option) - any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License along - with this program; if not, see . */ - -#ifndef _LIBC -# include -#endif - -/* Get specification. */ -#include - -#include - -#undef __strdup -#ifdef _LIBC -# undef strdup -#endif - -#ifndef weak_alias -# define __strdup strdup -#endif - -/* Duplicate S, returning an identical malloc'd string. */ -char * -__strdup (const char *s) -{ - size_t len = strlen (s) + 1; - void *new = malloc (len); - - if (new == NULL) - return NULL; - - return (char *) memcpy (new, s, len); -} -#ifdef libc_hidden_def -libc_hidden_def (__strdup) -#endif -#ifdef weak_alias -weak_alias (__strdup, strdup) -#endif diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/streq.h b/thirdparty/grub-2.04/grub-core/lib/gnulib/streq.h deleted file mode 100644 index 326537b6d..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/streq.h +++ /dev/null @@ -1,176 +0,0 @@ -/* Optimized string comparison. - Copyright (C) 2001-2002, 2007, 2009-2019 Free Software Foundation, Inc. - - This program is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published - by the Free Software Foundation; either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . */ - -/* Written by Bruno Haible . */ - -#ifndef _GL_STREQ_H -#define _GL_STREQ_H - -#include - -/* STREQ_OPT allows to optimize string comparison with a small literal string. - STREQ_OPT (s, "EUC-KR", 'E', 'U', 'C', '-', 'K', 'R', 0, 0, 0) - is semantically equivalent to - strcmp (s, "EUC-KR") == 0 - just faster. */ - -/* Help GCC to generate good code for string comparisons with - immediate strings. */ -#if defined (__GNUC__) && defined (__OPTIMIZE__) - -static inline int -streq9 (const char *s1, const char *s2) -{ - return strcmp (s1 + 9, s2 + 9) == 0; -} - -static inline int -streq8 (const char *s1, const char *s2, char s28) -{ - if (s1[8] == s28) - { - if (s28 == 0) - return 1; - else - return streq9 (s1, s2); - } - else - return 0; -} - -static inline int -streq7 (const char *s1, const char *s2, char s27, char s28) -{ - if (s1[7] == s27) - { - if (s27 == 0) - return 1; - else - return streq8 (s1, s2, s28); - } - else - return 0; -} - -static inline int -streq6 (const char *s1, const char *s2, char s26, char s27, char s28) -{ - if (s1[6] == s26) - { - if (s26 == 0) - return 1; - else - return streq7 (s1, s2, s27, s28); - } - else - return 0; -} - -static inline int -streq5 (const char *s1, const char *s2, char s25, char s26, char s27, char s28) -{ - if (s1[5] == s25) - { - if (s25 == 0) - return 1; - else - return streq6 (s1, s2, s26, s27, s28); - } - else - return 0; -} - -static inline int -streq4 (const char *s1, const char *s2, char s24, char s25, char s26, char s27, char s28) -{ - if (s1[4] == s24) - { - if (s24 == 0) - return 1; - else - return streq5 (s1, s2, s25, s26, s27, s28); - } - else - return 0; -} - -static inline int -streq3 (const char *s1, const char *s2, char s23, char s24, char s25, char s26, char s27, char s28) -{ - if (s1[3] == s23) - { - if (s23 == 0) - return 1; - else - return streq4 (s1, s2, s24, s25, s26, s27, s28); - } - else - return 0; -} - -static inline int -streq2 (const char *s1, const char *s2, char s22, char s23, char s24, char s25, char s26, char s27, char s28) -{ - if (s1[2] == s22) - { - if (s22 == 0) - return 1; - else - return streq3 (s1, s2, s23, s24, s25, s26, s27, s28); - } - else - return 0; -} - -static inline int -streq1 (const char *s1, const char *s2, char s21, char s22, char s23, char s24, char s25, char s26, char s27, char s28) -{ - if (s1[1] == s21) - { - if (s21 == 0) - return 1; - else - return streq2 (s1, s2, s22, s23, s24, s25, s26, s27, s28); - } - else - return 0; -} - -static inline int -streq0 (const char *s1, const char *s2, char s20, char s21, char s22, char s23, char s24, char s25, char s26, char s27, char s28) -{ - if (s1[0] == s20) - { - if (s20 == 0) - return 1; - else - return streq1 (s1, s2, s21, s22, s23, s24, s25, s26, s27, s28); - } - else - return 0; -} - -#define STREQ_OPT(s1,s2,s20,s21,s22,s23,s24,s25,s26,s27,s28) \ - streq0 (s1, s2, s20, s21, s22, s23, s24, s25, s26, s27, s28) - -#else - -#define STREQ_OPT(s1,s2,s20,s21,s22,s23,s24,s25,s26,s27,s28) \ - (strcmp (s1, s2) == 0) - -#endif - -#endif /* _GL_STREQ_H */ diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/strerror-override.c b/thirdparty/grub-2.04/grub-core/lib/gnulib/strerror-override.c deleted file mode 100644 index 558a010a9..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/strerror-override.c +++ /dev/null @@ -1,302 +0,0 @@ -/* strerror-override.c --- POSIX compatible system error routine - - Copyright (C) 2010-2019 Free Software Foundation, Inc. - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . */ - -/* Written by Bruno Haible , 2010. */ - -#include - -#include "strerror-override.h" - -#include - -#if GNULIB_defined_EWINSOCK /* native Windows platforms */ -# if HAVE_WINSOCK2_H -# include -# endif -#endif - -/* If ERRNUM maps to an errno value defined by gnulib, return a string - describing the error. Otherwise return NULL. */ -const char * -strerror_override (int errnum) -{ - /* These error messages are taken from glibc/sysdeps/gnu/errlist.c. */ - switch (errnum) - { -#if REPLACE_STRERROR_0 - case 0: - return "Success"; -#endif - -#if GNULIB_defined_ESOCK /* native Windows platforms with older */ - case EINPROGRESS: - return "Operation now in progress"; - case EALREADY: - return "Operation already in progress"; - case ENOTSOCK: - return "Socket operation on non-socket"; - case EDESTADDRREQ: - return "Destination address required"; - case EMSGSIZE: - return "Message too long"; - case EPROTOTYPE: - return "Protocol wrong type for socket"; - case ENOPROTOOPT: - return "Protocol not available"; - case EPROTONOSUPPORT: - return "Protocol not supported"; - case EOPNOTSUPP: - return "Operation not supported"; - case EAFNOSUPPORT: - return "Address family not supported by protocol"; - case EADDRINUSE: - return "Address already in use"; - case EADDRNOTAVAIL: - return "Cannot assign requested address"; - case ENETDOWN: - return "Network is down"; - case ENETUNREACH: - return "Network is unreachable"; - case ECONNRESET: - return "Connection reset by peer"; - case ENOBUFS: - return "No buffer space available"; - case EISCONN: - return "Transport endpoint is already connected"; - case ENOTCONN: - return "Transport endpoint is not connected"; - case ETIMEDOUT: - return "Connection timed out"; - case ECONNREFUSED: - return "Connection refused"; - case ELOOP: - return "Too many levels of symbolic links"; - case EHOSTUNREACH: - return "No route to host"; - case EWOULDBLOCK: - return "Operation would block"; -#endif -#if GNULIB_defined_ESTREAMS /* native Windows platforms with older */ - case ETXTBSY: - return "Text file busy"; - case ENODATA: - return "No data available"; - case ENOSR: - return "Out of streams resources"; - case ENOSTR: - return "Device not a stream"; - case ETIME: - return "Timer expired"; - case EOTHER: - return "Other error"; -#endif -#if GNULIB_defined_EWINSOCK /* native Windows platforms */ - case ESOCKTNOSUPPORT: - return "Socket type not supported"; - case EPFNOSUPPORT: - return "Protocol family not supported"; - case ESHUTDOWN: - return "Cannot send after transport endpoint shutdown"; - case ETOOMANYREFS: - return "Too many references: cannot splice"; - case EHOSTDOWN: - return "Host is down"; - case EPROCLIM: - return "Too many processes"; - case EUSERS: - return "Too many users"; - case EDQUOT: - return "Disk quota exceeded"; - case ESTALE: - return "Stale NFS file handle"; - case EREMOTE: - return "Object is remote"; -# if HAVE_WINSOCK2_H - /* WSA_INVALID_HANDLE maps to EBADF */ - /* WSA_NOT_ENOUGH_MEMORY maps to ENOMEM */ - /* WSA_INVALID_PARAMETER maps to EINVAL */ - case WSA_OPERATION_ABORTED: - return "Overlapped operation aborted"; - case WSA_IO_INCOMPLETE: - return "Overlapped I/O event object not in signaled state"; - case WSA_IO_PENDING: - return "Overlapped operations will complete later"; - /* WSAEINTR maps to EINTR */ - /* WSAEBADF maps to EBADF */ - /* WSAEACCES maps to EACCES */ - /* WSAEFAULT maps to EFAULT */ - /* WSAEINVAL maps to EINVAL */ - /* WSAEMFILE maps to EMFILE */ - /* WSAEWOULDBLOCK maps to EWOULDBLOCK */ - /* WSAEINPROGRESS maps to EINPROGRESS */ - /* WSAEALREADY maps to EALREADY */ - /* WSAENOTSOCK maps to ENOTSOCK */ - /* WSAEDESTADDRREQ maps to EDESTADDRREQ */ - /* WSAEMSGSIZE maps to EMSGSIZE */ - /* WSAEPROTOTYPE maps to EPROTOTYPE */ - /* WSAENOPROTOOPT maps to ENOPROTOOPT */ - /* WSAEPROTONOSUPPORT maps to EPROTONOSUPPORT */ - /* WSAESOCKTNOSUPPORT is ESOCKTNOSUPPORT */ - /* WSAEOPNOTSUPP maps to EOPNOTSUPP */ - /* WSAEPFNOSUPPORT is EPFNOSUPPORT */ - /* WSAEAFNOSUPPORT maps to EAFNOSUPPORT */ - /* WSAEADDRINUSE maps to EADDRINUSE */ - /* WSAEADDRNOTAVAIL maps to EADDRNOTAVAIL */ - /* WSAENETDOWN maps to ENETDOWN */ - /* WSAENETUNREACH maps to ENETUNREACH */ - /* WSAENETRESET maps to ENETRESET */ - /* WSAECONNABORTED maps to ECONNABORTED */ - /* WSAECONNRESET maps to ECONNRESET */ - /* WSAENOBUFS maps to ENOBUFS */ - /* WSAEISCONN maps to EISCONN */ - /* WSAENOTCONN maps to ENOTCONN */ - /* WSAESHUTDOWN is ESHUTDOWN */ - /* WSAETOOMANYREFS is ETOOMANYREFS */ - /* WSAETIMEDOUT maps to ETIMEDOUT */ - /* WSAECONNREFUSED maps to ECONNREFUSED */ - /* WSAELOOP maps to ELOOP */ - /* WSAENAMETOOLONG maps to ENAMETOOLONG */ - /* WSAEHOSTDOWN is EHOSTDOWN */ - /* WSAEHOSTUNREACH maps to EHOSTUNREACH */ - /* WSAENOTEMPTY maps to ENOTEMPTY */ - /* WSAEPROCLIM is EPROCLIM */ - /* WSAEUSERS is EUSERS */ - /* WSAEDQUOT is EDQUOT */ - /* WSAESTALE is ESTALE */ - /* WSAEREMOTE is EREMOTE */ - case WSASYSNOTREADY: - return "Network subsystem is unavailable"; - case WSAVERNOTSUPPORTED: - return "Winsock.dll version out of range"; - case WSANOTINITIALISED: - return "Successful WSAStartup not yet performed"; - case WSAEDISCON: - return "Graceful shutdown in progress"; - case WSAENOMORE: case WSA_E_NO_MORE: - return "No more results"; - case WSAECANCELLED: case WSA_E_CANCELLED: - return "Call was canceled"; - case WSAEINVALIDPROCTABLE: - return "Procedure call table is invalid"; - case WSAEINVALIDPROVIDER: - return "Service provider is invalid"; - case WSAEPROVIDERFAILEDINIT: - return "Service provider failed to initialize"; - case WSASYSCALLFAILURE: - return "System call failure"; - case WSASERVICE_NOT_FOUND: - return "Service not found"; - case WSATYPE_NOT_FOUND: - return "Class type not found"; - case WSAEREFUSED: - return "Database query was refused"; - case WSAHOST_NOT_FOUND: - return "Host not found"; - case WSATRY_AGAIN: - return "Nonauthoritative host not found"; - case WSANO_RECOVERY: - return "Nonrecoverable error"; - case WSANO_DATA: - return "Valid name, no data record of requested type"; - /* WSA_QOS_* omitted */ -# endif -#endif - -#if GNULIB_defined_ENOMSG - case ENOMSG: - return "No message of desired type"; -#endif - -#if GNULIB_defined_EIDRM - case EIDRM: - return "Identifier removed"; -#endif - -#if GNULIB_defined_ENOLINK - case ENOLINK: - return "Link has been severed"; -#endif - -#if GNULIB_defined_EPROTO - case EPROTO: - return "Protocol error"; -#endif - -#if GNULIB_defined_EMULTIHOP - case EMULTIHOP: - return "Multihop attempted"; -#endif - -#if GNULIB_defined_EBADMSG - case EBADMSG: - return "Bad message"; -#endif - -#if GNULIB_defined_EOVERFLOW - case EOVERFLOW: - return "Value too large for defined data type"; -#endif - -#if GNULIB_defined_ENOTSUP - case ENOTSUP: - return "Not supported"; -#endif - -#if GNULIB_defined_ENETRESET - case ENETRESET: - return "Network dropped connection on reset"; -#endif - -#if GNULIB_defined_ECONNABORTED - case ECONNABORTED: - return "Software caused connection abort"; -#endif - -#if GNULIB_defined_ESTALE - case ESTALE: - return "Stale NFS file handle"; -#endif - -#if GNULIB_defined_EDQUOT - case EDQUOT: - return "Disk quota exceeded"; -#endif - -#if GNULIB_defined_ECANCELED - case ECANCELED: - return "Operation canceled"; -#endif - -#if GNULIB_defined_EOWNERDEAD - case EOWNERDEAD: - return "Owner died"; -#endif - -#if GNULIB_defined_ENOTRECOVERABLE - case ENOTRECOVERABLE: - return "State not recoverable"; -#endif - -#if GNULIB_defined_EILSEQ - case EILSEQ: - return "Invalid or incomplete multibyte or wide character"; -#endif - - default: - return NULL; - } -} diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/strerror-override.h b/thirdparty/grub-2.04/grub-core/lib/gnulib/strerror-override.h deleted file mode 100644 index 255febcaf..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/strerror-override.h +++ /dev/null @@ -1,56 +0,0 @@ -/* strerror-override.h --- POSIX compatible system error routine - - Copyright (C) 2010-2019 Free Software Foundation, Inc. - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . */ - -#ifndef _GL_STRERROR_OVERRIDE_H -# define _GL_STRERROR_OVERRIDE_H - -# include -# include - -/* Reasonable buffer size that should never trigger ERANGE; if this - proves too small, we intentionally abort(), to remind us to fix - this value. */ -# define STACKBUF_LEN 256 - -/* If ERRNUM maps to an errno value defined by gnulib, return a string - describing the error. Otherwise return NULL. */ -# if REPLACE_STRERROR_0 \ - || GNULIB_defined_ESOCK \ - || GNULIB_defined_ESTREAMS \ - || GNULIB_defined_EWINSOCK \ - || GNULIB_defined_ENOMSG \ - || GNULIB_defined_EIDRM \ - || GNULIB_defined_ENOLINK \ - || GNULIB_defined_EPROTO \ - || GNULIB_defined_EMULTIHOP \ - || GNULIB_defined_EBADMSG \ - || GNULIB_defined_EOVERFLOW \ - || GNULIB_defined_ENOTSUP \ - || GNULIB_defined_ENETRESET \ - || GNULIB_defined_ECONNABORTED \ - || GNULIB_defined_ESTALE \ - || GNULIB_defined_EDQUOT \ - || GNULIB_defined_ECANCELED \ - || GNULIB_defined_EOWNERDEAD \ - || GNULIB_defined_ENOTRECOVERABLE \ - || GNULIB_defined_EILSEQ -extern const char *strerror_override (int errnum) _GL_ATTRIBUTE_CONST; -# else -# define strerror_override(ignored) NULL -# endif - -#endif /* _GL_STRERROR_OVERRIDE_H */ diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/strerror.c b/thirdparty/grub-2.04/grub-core/lib/gnulib/strerror.c deleted file mode 100644 index f5900fd14..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/strerror.c +++ /dev/null @@ -1,71 +0,0 @@ -/* strerror.c --- POSIX compatible system error routine - - Copyright (C) 2007-2019 Free Software Foundation, Inc. - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . */ - -#include - -/* Specification. */ -#include - -#include -#include -#include -#include - -#include "intprops.h" -#include "strerror-override.h" -#include "verify.h" - -/* Use the system functions, not the gnulib overrides in this file. */ -#undef sprintf - -char * -strerror (int n) -#undef strerror -{ - static char buf[STACKBUF_LEN]; - size_t len; - - /* Cast away const, due to the historical signature of strerror; - callers should not be modifying the string. */ - const char *msg = strerror_override (n); - if (msg) - return (char *) msg; - - msg = strerror (n); - - /* Our strerror_r implementation might use the system's strerror - buffer, so all other clients of strerror have to see the error - copied into a buffer that we manage. This is not thread-safe, - even if the system strerror is, but portable programs shouldn't - be using strerror if they care about thread-safety. */ - if (!msg || !*msg) - { - static char const fmt[] = "Unknown error %d"; - verify (sizeof buf >= sizeof (fmt) + INT_STRLEN_BOUND (n)); - sprintf (buf, fmt, n); - errno = EINVAL; - return buf; - } - - /* Fix STACKBUF_LEN if this ever aborts. */ - len = strlen (msg); - if (sizeof buf <= len) - abort (); - - memcpy (buf, msg, len + 1); - return buf; -} diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/string.in.h b/thirdparty/grub-2.04/grub-core/lib/gnulib/string.in.h deleted file mode 100644 index 4a9292f74..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/string.in.h +++ /dev/null @@ -1,1063 +0,0 @@ -/* A GNU-like . - - Copyright (C) 1995-1996, 2001-2019 Free Software Foundation, Inc. - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3, or (at your option) - any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, see . */ - -#if __GNUC__ >= 3 -@PRAGMA_SYSTEM_HEADER@ -#endif -@PRAGMA_COLUMNS@ - -#if defined _GL_ALREADY_INCLUDING_STRING_H -/* Special invocation convention: - - On OS X/NetBSD we have a sequence of nested includes - -> -> "string.h" - In this situation system _chk variants due to -D_FORTIFY_SOURCE - might be used after any replacements defined here. */ - -#@INCLUDE_NEXT@ @NEXT_STRING_H@ - -#else -/* Normal invocation convention. */ - -#ifndef _@GUARD_PREFIX@_STRING_H - -#define _GL_ALREADY_INCLUDING_STRING_H - -/* The include_next requires a split double-inclusion guard. */ -#@INCLUDE_NEXT@ @NEXT_STRING_H@ - -#undef _GL_ALREADY_INCLUDING_STRING_H - -#ifndef _@GUARD_PREFIX@_STRING_H -#define _@GUARD_PREFIX@_STRING_H - -/* NetBSD 5.0 mis-defines NULL. */ -#include - -/* MirBSD defines mbslen as a macro. */ -#if @GNULIB_MBSLEN@ && defined __MirBSD__ -# include -#endif - -/* The __attribute__ feature is available in gcc versions 2.5 and later. - The attribute __pure__ was added in gcc 2.96. */ -#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 96) -# define _GL_ATTRIBUTE_PURE __attribute__ ((__pure__)) -#else -# define _GL_ATTRIBUTE_PURE /* empty */ -#endif - -/* NetBSD 5.0 declares strsignal in , not in . */ -/* But in any case avoid namespace pollution on glibc systems. */ -#if (@GNULIB_STRSIGNAL@ || defined GNULIB_POSIXCHECK) && defined __NetBSD__ \ - && ! defined __GLIBC__ -# include -#endif - -/* The definitions of _GL_FUNCDECL_RPL etc. are copied here. */ - -/* The definition of _GL_ARG_NONNULL is copied here. */ - -/* The definition of _GL_WARN_ON_USE is copied here. */ - - -/* Clear a block of memory. The compiler will not delete a call to - this function, even if the block is dead after the call. */ -#if @GNULIB_EXPLICIT_BZERO@ -# if ! @HAVE_EXPLICIT_BZERO@ -_GL_FUNCDECL_SYS (explicit_bzero, void, - (void *__dest, size_t __n) _GL_ARG_NONNULL ((1))); -# endif -_GL_CXXALIAS_SYS (explicit_bzero, void, (void *__dest, size_t __n)); -_GL_CXXALIASWARN (explicit_bzero); -#elif defined GNULIB_POSIXCHECK -# undef explicit_bzero -# if HAVE_RAW_DECL_EXPLICIT_BZERO -_GL_WARN_ON_USE (explicit_bzero, "explicit_bzero is unportable - " - "use gnulib module explicit_bzero for portability"); -# endif -#endif - -/* Find the index of the least-significant set bit. */ -#if @GNULIB_FFSL@ -# if !@HAVE_FFSL@ -_GL_FUNCDECL_SYS (ffsl, int, (long int i)); -# endif -_GL_CXXALIAS_SYS (ffsl, int, (long int i)); -_GL_CXXALIASWARN (ffsl); -#elif defined GNULIB_POSIXCHECK -# undef ffsl -# if HAVE_RAW_DECL_FFSL -_GL_WARN_ON_USE (ffsl, "ffsl is not portable - use the ffsl module"); -# endif -#endif - - -/* Find the index of the least-significant set bit. */ -#if @GNULIB_FFSLL@ -# if !@HAVE_FFSLL@ -_GL_FUNCDECL_SYS (ffsll, int, (long long int i)); -# endif -_GL_CXXALIAS_SYS (ffsll, int, (long long int i)); -_GL_CXXALIASWARN (ffsll); -#elif defined GNULIB_POSIXCHECK -# undef ffsll -# if HAVE_RAW_DECL_FFSLL -_GL_WARN_ON_USE (ffsll, "ffsll is not portable - use the ffsll module"); -# endif -#endif - - -/* Return the first instance of C within N bytes of S, or NULL. */ -#if @GNULIB_MEMCHR@ -# if @REPLACE_MEMCHR@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# define memchr rpl_memchr -# endif -_GL_FUNCDECL_RPL (memchr, void *, (void const *__s, int __c, size_t __n) - _GL_ATTRIBUTE_PURE - _GL_ARG_NONNULL ((1))); -_GL_CXXALIAS_RPL (memchr, void *, (void const *__s, int __c, size_t __n)); -# else -# if ! @HAVE_MEMCHR@ -_GL_FUNCDECL_SYS (memchr, void *, (void const *__s, int __c, size_t __n) - _GL_ATTRIBUTE_PURE - _GL_ARG_NONNULL ((1))); -# endif - /* On some systems, this function is defined as an overloaded function: - extern "C" { const void * std::memchr (const void *, int, size_t); } - extern "C++" { void * std::memchr (void *, int, size_t); } */ -_GL_CXXALIAS_SYS_CAST2 (memchr, - void *, (void const *__s, int __c, size_t __n), - void const *, (void const *__s, int __c, size_t __n)); -# endif -# if ((__GLIBC__ == 2 && __GLIBC_MINOR__ >= 10) && !defined __UCLIBC__) \ - && (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 4)) -_GL_CXXALIASWARN1 (memchr, void *, (void *__s, int __c, size_t __n)); -_GL_CXXALIASWARN1 (memchr, void const *, - (void const *__s, int __c, size_t __n)); -# else -_GL_CXXALIASWARN (memchr); -# endif -#elif defined GNULIB_POSIXCHECK -# undef memchr -/* Assume memchr is always declared. */ -_GL_WARN_ON_USE (memchr, "memchr has platform-specific bugs - " - "use gnulib module memchr for portability" ); -#endif - -/* Return the first occurrence of NEEDLE in HAYSTACK. */ -#if @GNULIB_MEMMEM@ -# if @REPLACE_MEMMEM@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# define memmem rpl_memmem -# endif -_GL_FUNCDECL_RPL (memmem, void *, - (void const *__haystack, size_t __haystack_len, - void const *__needle, size_t __needle_len) - _GL_ATTRIBUTE_PURE - _GL_ARG_NONNULL ((1, 3))); -_GL_CXXALIAS_RPL (memmem, void *, - (void const *__haystack, size_t __haystack_len, - void const *__needle, size_t __needle_len)); -# else -# if ! @HAVE_DECL_MEMMEM@ -_GL_FUNCDECL_SYS (memmem, void *, - (void const *__haystack, size_t __haystack_len, - void const *__needle, size_t __needle_len) - _GL_ATTRIBUTE_PURE - _GL_ARG_NONNULL ((1, 3))); -# endif -_GL_CXXALIAS_SYS (memmem, void *, - (void const *__haystack, size_t __haystack_len, - void const *__needle, size_t __needle_len)); -# endif -_GL_CXXALIASWARN (memmem); -#elif defined GNULIB_POSIXCHECK -# undef memmem -# if HAVE_RAW_DECL_MEMMEM -_GL_WARN_ON_USE (memmem, "memmem is unportable and often quadratic - " - "use gnulib module memmem-simple for portability, " - "and module memmem for speed" ); -# endif -#endif - -/* Copy N bytes of SRC to DEST, return pointer to bytes after the - last written byte. */ -#if @GNULIB_MEMPCPY@ -# if ! @HAVE_MEMPCPY@ -_GL_FUNCDECL_SYS (mempcpy, void *, - (void *restrict __dest, void const *restrict __src, - size_t __n) - _GL_ARG_NONNULL ((1, 2))); -# endif -_GL_CXXALIAS_SYS (mempcpy, void *, - (void *restrict __dest, void const *restrict __src, - size_t __n)); -_GL_CXXALIASWARN (mempcpy); -#elif defined GNULIB_POSIXCHECK -# undef mempcpy -# if HAVE_RAW_DECL_MEMPCPY -_GL_WARN_ON_USE (mempcpy, "mempcpy is unportable - " - "use gnulib module mempcpy for portability"); -# endif -#endif - -/* Search backwards through a block for a byte (specified as an int). */ -#if @GNULIB_MEMRCHR@ -# if ! @HAVE_DECL_MEMRCHR@ -_GL_FUNCDECL_SYS (memrchr, void *, (void const *, int, size_t) - _GL_ATTRIBUTE_PURE - _GL_ARG_NONNULL ((1))); -# endif - /* On some systems, this function is defined as an overloaded function: - extern "C++" { const void * std::memrchr (const void *, int, size_t); } - extern "C++" { void * std::memrchr (void *, int, size_t); } */ -_GL_CXXALIAS_SYS_CAST2 (memrchr, - void *, (void const *, int, size_t), - void const *, (void const *, int, size_t)); -# if ((__GLIBC__ == 2 && __GLIBC_MINOR__ >= 10) && !defined __UCLIBC__) \ - && (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 4)) -_GL_CXXALIASWARN1 (memrchr, void *, (void *, int, size_t)); -_GL_CXXALIASWARN1 (memrchr, void const *, (void const *, int, size_t)); -# else -_GL_CXXALIASWARN (memrchr); -# endif -#elif defined GNULIB_POSIXCHECK -# undef memrchr -# if HAVE_RAW_DECL_MEMRCHR -_GL_WARN_ON_USE (memrchr, "memrchr is unportable - " - "use gnulib module memrchr for portability"); -# endif -#endif - -/* Find the first occurrence of C in S. More efficient than - memchr(S,C,N), at the expense of undefined behavior if C does not - occur within N bytes. */ -#if @GNULIB_RAWMEMCHR@ -# if ! @HAVE_RAWMEMCHR@ -_GL_FUNCDECL_SYS (rawmemchr, void *, (void const *__s, int __c_in) - _GL_ATTRIBUTE_PURE - _GL_ARG_NONNULL ((1))); -# endif - /* On some systems, this function is defined as an overloaded function: - extern "C++" { const void * std::rawmemchr (const void *, int); } - extern "C++" { void * std::rawmemchr (void *, int); } */ -_GL_CXXALIAS_SYS_CAST2 (rawmemchr, - void *, (void const *__s, int __c_in), - void const *, (void const *__s, int __c_in)); -# if ((__GLIBC__ == 2 && __GLIBC_MINOR__ >= 10) && !defined __UCLIBC__) \ - && (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 4)) -_GL_CXXALIASWARN1 (rawmemchr, void *, (void *__s, int __c_in)); -_GL_CXXALIASWARN1 (rawmemchr, void const *, (void const *__s, int __c_in)); -# else -_GL_CXXALIASWARN (rawmemchr); -# endif -#elif defined GNULIB_POSIXCHECK -# undef rawmemchr -# if HAVE_RAW_DECL_RAWMEMCHR -_GL_WARN_ON_USE (rawmemchr, "rawmemchr is unportable - " - "use gnulib module rawmemchr for portability"); -# endif -#endif - -/* Copy SRC to DST, returning the address of the terminating '\0' in DST. */ -#if @GNULIB_STPCPY@ -# if ! @HAVE_STPCPY@ -_GL_FUNCDECL_SYS (stpcpy, char *, - (char *restrict __dst, char const *restrict __src) - _GL_ARG_NONNULL ((1, 2))); -# endif -_GL_CXXALIAS_SYS (stpcpy, char *, - (char *restrict __dst, char const *restrict __src)); -_GL_CXXALIASWARN (stpcpy); -#elif defined GNULIB_POSIXCHECK -# undef stpcpy -# if HAVE_RAW_DECL_STPCPY -_GL_WARN_ON_USE (stpcpy, "stpcpy is unportable - " - "use gnulib module stpcpy for portability"); -# endif -#endif - -/* Copy no more than N bytes of SRC to DST, returning a pointer past the - last non-NUL byte written into DST. */ -#if @GNULIB_STPNCPY@ -# if @REPLACE_STPNCPY@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# undef stpncpy -# define stpncpy rpl_stpncpy -# endif -_GL_FUNCDECL_RPL (stpncpy, char *, - (char *restrict __dst, char const *restrict __src, - size_t __n) - _GL_ARG_NONNULL ((1, 2))); -_GL_CXXALIAS_RPL (stpncpy, char *, - (char *restrict __dst, char const *restrict __src, - size_t __n)); -# else -# if ! @HAVE_STPNCPY@ -_GL_FUNCDECL_SYS (stpncpy, char *, - (char *restrict __dst, char const *restrict __src, - size_t __n) - _GL_ARG_NONNULL ((1, 2))); -# endif -_GL_CXXALIAS_SYS (stpncpy, char *, - (char *restrict __dst, char const *restrict __src, - size_t __n)); -# endif -_GL_CXXALIASWARN (stpncpy); -#elif defined GNULIB_POSIXCHECK -# undef stpncpy -# if HAVE_RAW_DECL_STPNCPY -_GL_WARN_ON_USE (stpncpy, "stpncpy is unportable - " - "use gnulib module stpncpy for portability"); -# endif -#endif - -#if defined GNULIB_POSIXCHECK -/* strchr() does not work with multibyte strings if the locale encoding is - GB18030 and the character to be searched is a digit. */ -# undef strchr -/* Assume strchr is always declared. */ -_GL_WARN_ON_USE (strchr, "strchr cannot work correctly on character strings " - "in some multibyte locales - " - "use mbschr if you care about internationalization"); -#endif - -/* Find the first occurrence of C in S or the final NUL byte. */ -#if @GNULIB_STRCHRNUL@ -# if @REPLACE_STRCHRNUL@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# define strchrnul rpl_strchrnul -# endif -_GL_FUNCDECL_RPL (strchrnul, char *, (const char *__s, int __c_in) - _GL_ATTRIBUTE_PURE - _GL_ARG_NONNULL ((1))); -_GL_CXXALIAS_RPL (strchrnul, char *, - (const char *str, int ch)); -# else -# if ! @HAVE_STRCHRNUL@ -_GL_FUNCDECL_SYS (strchrnul, char *, (char const *__s, int __c_in) - _GL_ATTRIBUTE_PURE - _GL_ARG_NONNULL ((1))); -# endif - /* On some systems, this function is defined as an overloaded function: - extern "C++" { const char * std::strchrnul (const char *, int); } - extern "C++" { char * std::strchrnul (char *, int); } */ -_GL_CXXALIAS_SYS_CAST2 (strchrnul, - char *, (char const *__s, int __c_in), - char const *, (char const *__s, int __c_in)); -# endif -# if ((__GLIBC__ == 2 && __GLIBC_MINOR__ >= 10) && !defined __UCLIBC__) \ - && (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 4)) -_GL_CXXALIASWARN1 (strchrnul, char *, (char *__s, int __c_in)); -_GL_CXXALIASWARN1 (strchrnul, char const *, (char const *__s, int __c_in)); -# else -_GL_CXXALIASWARN (strchrnul); -# endif -#elif defined GNULIB_POSIXCHECK -# undef strchrnul -# if HAVE_RAW_DECL_STRCHRNUL -_GL_WARN_ON_USE (strchrnul, "strchrnul is unportable - " - "use gnulib module strchrnul for portability"); -# endif -#endif - -/* Duplicate S, returning an identical malloc'd string. */ -#if @GNULIB_STRDUP@ -# if @REPLACE_STRDUP@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# undef strdup -# define strdup rpl_strdup -# endif -_GL_FUNCDECL_RPL (strdup, char *, (char const *__s) _GL_ARG_NONNULL ((1))); -_GL_CXXALIAS_RPL (strdup, char *, (char const *__s)); -# else -# if defined __cplusplus && defined GNULIB_NAMESPACE && defined strdup - /* strdup exists as a function and as a macro. Get rid of the macro. */ -# undef strdup -# endif -# if !(@HAVE_DECL_STRDUP@ || defined strdup) -_GL_FUNCDECL_SYS (strdup, char *, (char const *__s) _GL_ARG_NONNULL ((1))); -# endif -_GL_CXXALIAS_SYS (strdup, char *, (char const *__s)); -# endif -_GL_CXXALIASWARN (strdup); -#elif defined GNULIB_POSIXCHECK -# undef strdup -# if HAVE_RAW_DECL_STRDUP -_GL_WARN_ON_USE (strdup, "strdup is unportable - " - "use gnulib module strdup for portability"); -# endif -#endif - -/* Append no more than N characters from SRC onto DEST. */ -#if @GNULIB_STRNCAT@ -# if @REPLACE_STRNCAT@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# undef strncat -# define strncat rpl_strncat -# endif -_GL_FUNCDECL_RPL (strncat, char *, (char *dest, const char *src, size_t n) - _GL_ARG_NONNULL ((1, 2))); -_GL_CXXALIAS_RPL (strncat, char *, (char *dest, const char *src, size_t n)); -# else -_GL_CXXALIAS_SYS (strncat, char *, (char *dest, const char *src, size_t n)); -# endif -_GL_CXXALIASWARN (strncat); -#elif defined GNULIB_POSIXCHECK -# undef strncat -# if HAVE_RAW_DECL_STRNCAT -_GL_WARN_ON_USE (strncat, "strncat is unportable - " - "use gnulib module strncat for portability"); -# endif -#endif - -/* Return a newly allocated copy of at most N bytes of STRING. */ -#if @GNULIB_STRNDUP@ -# if @REPLACE_STRNDUP@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# undef strndup -# define strndup rpl_strndup -# endif -_GL_FUNCDECL_RPL (strndup, char *, (char const *__s, size_t __n) - _GL_ARG_NONNULL ((1))); -_GL_CXXALIAS_RPL (strndup, char *, (char const *__s, size_t __n)); -# else -# if ! @HAVE_DECL_STRNDUP@ -_GL_FUNCDECL_SYS (strndup, char *, (char const *__s, size_t __n) - _GL_ARG_NONNULL ((1))); -# endif -_GL_CXXALIAS_SYS (strndup, char *, (char const *__s, size_t __n)); -# endif -_GL_CXXALIASWARN (strndup); -#elif defined GNULIB_POSIXCHECK -# undef strndup -# if HAVE_RAW_DECL_STRNDUP -_GL_WARN_ON_USE (strndup, "strndup is unportable - " - "use gnulib module strndup for portability"); -# endif -#endif - -/* Find the length (number of bytes) of STRING, but scan at most - MAXLEN bytes. If no '\0' terminator is found in that many bytes, - return MAXLEN. */ -#if @GNULIB_STRNLEN@ -# if @REPLACE_STRNLEN@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# undef strnlen -# define strnlen rpl_strnlen -# endif -_GL_FUNCDECL_RPL (strnlen, size_t, (char const *__s, size_t __maxlen) - _GL_ATTRIBUTE_PURE - _GL_ARG_NONNULL ((1))); -_GL_CXXALIAS_RPL (strnlen, size_t, (char const *__s, size_t __maxlen)); -# else -# if ! @HAVE_DECL_STRNLEN@ -_GL_FUNCDECL_SYS (strnlen, size_t, (char const *__s, size_t __maxlen) - _GL_ATTRIBUTE_PURE - _GL_ARG_NONNULL ((1))); -# endif -_GL_CXXALIAS_SYS (strnlen, size_t, (char const *__s, size_t __maxlen)); -# endif -_GL_CXXALIASWARN (strnlen); -#elif defined GNULIB_POSIXCHECK -# undef strnlen -# if HAVE_RAW_DECL_STRNLEN -_GL_WARN_ON_USE (strnlen, "strnlen is unportable - " - "use gnulib module strnlen for portability"); -# endif -#endif - -#if defined GNULIB_POSIXCHECK -/* strcspn() assumes the second argument is a list of single-byte characters. - Even in this simple case, it does not work with multibyte strings if the - locale encoding is GB18030 and one of the characters to be searched is a - digit. */ -# undef strcspn -/* Assume strcspn is always declared. */ -_GL_WARN_ON_USE (strcspn, "strcspn cannot work correctly on character strings " - "in multibyte locales - " - "use mbscspn if you care about internationalization"); -#endif - -/* Find the first occurrence in S of any character in ACCEPT. */ -#if @GNULIB_STRPBRK@ -# if ! @HAVE_STRPBRK@ -_GL_FUNCDECL_SYS (strpbrk, char *, (char const *__s, char const *__accept) - _GL_ATTRIBUTE_PURE - _GL_ARG_NONNULL ((1, 2))); -# endif - /* On some systems, this function is defined as an overloaded function: - extern "C" { const char * strpbrk (const char *, const char *); } - extern "C++" { char * strpbrk (char *, const char *); } */ -_GL_CXXALIAS_SYS_CAST2 (strpbrk, - char *, (char const *__s, char const *__accept), - const char *, (char const *__s, char const *__accept)); -# if ((__GLIBC__ == 2 && __GLIBC_MINOR__ >= 10) && !defined __UCLIBC__) \ - && (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 4)) -_GL_CXXALIASWARN1 (strpbrk, char *, (char *__s, char const *__accept)); -_GL_CXXALIASWARN1 (strpbrk, char const *, - (char const *__s, char const *__accept)); -# else -_GL_CXXALIASWARN (strpbrk); -# endif -# if defined GNULIB_POSIXCHECK -/* strpbrk() assumes the second argument is a list of single-byte characters. - Even in this simple case, it does not work with multibyte strings if the - locale encoding is GB18030 and one of the characters to be searched is a - digit. */ -# undef strpbrk -_GL_WARN_ON_USE (strpbrk, "strpbrk cannot work correctly on character strings " - "in multibyte locales - " - "use mbspbrk if you care about internationalization"); -# endif -#elif defined GNULIB_POSIXCHECK -# undef strpbrk -# if HAVE_RAW_DECL_STRPBRK -_GL_WARN_ON_USE (strpbrk, "strpbrk is unportable - " - "use gnulib module strpbrk for portability"); -# endif -#endif - -#if defined GNULIB_POSIXCHECK -/* strspn() assumes the second argument is a list of single-byte characters. - Even in this simple case, it cannot work with multibyte strings. */ -# undef strspn -/* Assume strspn is always declared. */ -_GL_WARN_ON_USE (strspn, "strspn cannot work correctly on character strings " - "in multibyte locales - " - "use mbsspn if you care about internationalization"); -#endif - -#if defined GNULIB_POSIXCHECK -/* strrchr() does not work with multibyte strings if the locale encoding is - GB18030 and the character to be searched is a digit. */ -# undef strrchr -/* Assume strrchr is always declared. */ -_GL_WARN_ON_USE (strrchr, "strrchr cannot work correctly on character strings " - "in some multibyte locales - " - "use mbsrchr if you care about internationalization"); -#endif - -/* Search the next delimiter (char listed in DELIM) starting at *STRINGP. - If one is found, overwrite it with a NUL, and advance *STRINGP - to point to the next char after it. Otherwise, set *STRINGP to NULL. - If *STRINGP was already NULL, nothing happens. - Return the old value of *STRINGP. - - This is a variant of strtok() that is multithread-safe and supports - empty fields. - - Caveat: It modifies the original string. - Caveat: These functions cannot be used on constant strings. - Caveat: The identity of the delimiting character is lost. - Caveat: It doesn't work with multibyte strings unless all of the delimiter - characters are ASCII characters < 0x30. - - See also strtok_r(). */ -#if @GNULIB_STRSEP@ -# if ! @HAVE_STRSEP@ -_GL_FUNCDECL_SYS (strsep, char *, - (char **restrict __stringp, char const *restrict __delim) - _GL_ARG_NONNULL ((1, 2))); -# endif -_GL_CXXALIAS_SYS (strsep, char *, - (char **restrict __stringp, char const *restrict __delim)); -_GL_CXXALIASWARN (strsep); -# if defined GNULIB_POSIXCHECK -# undef strsep -_GL_WARN_ON_USE (strsep, "strsep cannot work correctly on character strings " - "in multibyte locales - " - "use mbssep if you care about internationalization"); -# endif -#elif defined GNULIB_POSIXCHECK -# undef strsep -# if HAVE_RAW_DECL_STRSEP -_GL_WARN_ON_USE (strsep, "strsep is unportable - " - "use gnulib module strsep for portability"); -# endif -#endif - -#if @GNULIB_STRSTR@ -# if @REPLACE_STRSTR@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# define strstr rpl_strstr -# endif -_GL_FUNCDECL_RPL (strstr, char *, (const char *haystack, const char *needle) - _GL_ATTRIBUTE_PURE - _GL_ARG_NONNULL ((1, 2))); -_GL_CXXALIAS_RPL (strstr, char *, (const char *haystack, const char *needle)); -# else - /* On some systems, this function is defined as an overloaded function: - extern "C++" { const char * strstr (const char *, const char *); } - extern "C++" { char * strstr (char *, const char *); } */ -_GL_CXXALIAS_SYS_CAST2 (strstr, - char *, (const char *haystack, const char *needle), - const char *, (const char *haystack, const char *needle)); -# endif -# if ((__GLIBC__ == 2 && __GLIBC_MINOR__ >= 10) && !defined __UCLIBC__) \ - && (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 4)) -_GL_CXXALIASWARN1 (strstr, char *, (char *haystack, const char *needle)); -_GL_CXXALIASWARN1 (strstr, const char *, - (const char *haystack, const char *needle)); -# else -_GL_CXXALIASWARN (strstr); -# endif -#elif defined GNULIB_POSIXCHECK -/* strstr() does not work with multibyte strings if the locale encoding is - different from UTF-8: - POSIX says that it operates on "strings", and "string" in POSIX is defined - as a sequence of bytes, not of characters. */ -# undef strstr -/* Assume strstr is always declared. */ -_GL_WARN_ON_USE (strstr, "strstr is quadratic on many systems, and cannot " - "work correctly on character strings in most " - "multibyte locales - " - "use mbsstr if you care about internationalization, " - "or use strstr if you care about speed"); -#endif - -/* Find the first occurrence of NEEDLE in HAYSTACK, using case-insensitive - comparison. */ -#if @GNULIB_STRCASESTR@ -# if @REPLACE_STRCASESTR@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# define strcasestr rpl_strcasestr -# endif -_GL_FUNCDECL_RPL (strcasestr, char *, - (const char *haystack, const char *needle) - _GL_ATTRIBUTE_PURE - _GL_ARG_NONNULL ((1, 2))); -_GL_CXXALIAS_RPL (strcasestr, char *, - (const char *haystack, const char *needle)); -# else -# if ! @HAVE_STRCASESTR@ -_GL_FUNCDECL_SYS (strcasestr, char *, - (const char *haystack, const char *needle) - _GL_ATTRIBUTE_PURE - _GL_ARG_NONNULL ((1, 2))); -# endif - /* On some systems, this function is defined as an overloaded function: - extern "C++" { const char * strcasestr (const char *, const char *); } - extern "C++" { char * strcasestr (char *, const char *); } */ -_GL_CXXALIAS_SYS_CAST2 (strcasestr, - char *, (const char *haystack, const char *needle), - const char *, (const char *haystack, const char *needle)); -# endif -# if ((__GLIBC__ == 2 && __GLIBC_MINOR__ >= 10) && !defined __UCLIBC__) \ - && (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 4)) -_GL_CXXALIASWARN1 (strcasestr, char *, (char *haystack, const char *needle)); -_GL_CXXALIASWARN1 (strcasestr, const char *, - (const char *haystack, const char *needle)); -# else -_GL_CXXALIASWARN (strcasestr); -# endif -#elif defined GNULIB_POSIXCHECK -/* strcasestr() does not work with multibyte strings: - It is a glibc extension, and glibc implements it only for unibyte - locales. */ -# undef strcasestr -# if HAVE_RAW_DECL_STRCASESTR -_GL_WARN_ON_USE (strcasestr, "strcasestr does work correctly on character " - "strings in multibyte locales - " - "use mbscasestr if you care about " - "internationalization, or use c-strcasestr if you want " - "a locale independent function"); -# endif -#endif - -/* Parse S into tokens separated by characters in DELIM. - If S is NULL, the saved pointer in SAVE_PTR is used as - the next starting point. For example: - char s[] = "-abc-=-def"; - char *sp; - x = strtok_r(s, "-", &sp); // x = "abc", sp = "=-def" - x = strtok_r(NULL, "-=", &sp); // x = "def", sp = NULL - x = strtok_r(NULL, "=", &sp); // x = NULL - // s = "abc\0-def\0" - - This is a variant of strtok() that is multithread-safe. - - For the POSIX documentation for this function, see: - http://www.opengroup.org/susv3xsh/strtok.html - - Caveat: It modifies the original string. - Caveat: These functions cannot be used on constant strings. - Caveat: The identity of the delimiting character is lost. - Caveat: It doesn't work with multibyte strings unless all of the delimiter - characters are ASCII characters < 0x30. - - See also strsep(). */ -#if @GNULIB_STRTOK_R@ -# if @REPLACE_STRTOK_R@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# undef strtok_r -# define strtok_r rpl_strtok_r -# endif -_GL_FUNCDECL_RPL (strtok_r, char *, - (char *restrict s, char const *restrict delim, - char **restrict save_ptr) - _GL_ARG_NONNULL ((2, 3))); -_GL_CXXALIAS_RPL (strtok_r, char *, - (char *restrict s, char const *restrict delim, - char **restrict save_ptr)); -# else -# if @UNDEFINE_STRTOK_R@ || defined GNULIB_POSIXCHECK -# undef strtok_r -# endif -# if ! @HAVE_DECL_STRTOK_R@ -_GL_FUNCDECL_SYS (strtok_r, char *, - (char *restrict s, char const *restrict delim, - char **restrict save_ptr) - _GL_ARG_NONNULL ((2, 3))); -# endif -_GL_CXXALIAS_SYS (strtok_r, char *, - (char *restrict s, char const *restrict delim, - char **restrict save_ptr)); -# endif -_GL_CXXALIASWARN (strtok_r); -# if defined GNULIB_POSIXCHECK -_GL_WARN_ON_USE (strtok_r, "strtok_r cannot work correctly on character " - "strings in multibyte locales - " - "use mbstok_r if you care about internationalization"); -# endif -#elif defined GNULIB_POSIXCHECK -# undef strtok_r -# if HAVE_RAW_DECL_STRTOK_R -_GL_WARN_ON_USE (strtok_r, "strtok_r is unportable - " - "use gnulib module strtok_r for portability"); -# endif -#endif - - -/* The following functions are not specified by POSIX. They are gnulib - extensions. */ - -#if @GNULIB_MBSLEN@ -/* Return the number of multibyte characters in the character string STRING. - This considers multibyte characters, unlike strlen, which counts bytes. */ -# ifdef __MirBSD__ /* MirBSD defines mbslen as a macro. Override it. */ -# undef mbslen -# endif -# if @HAVE_MBSLEN@ /* AIX, OSF/1, MirBSD define mbslen already in libc. */ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# define mbslen rpl_mbslen -# endif -_GL_FUNCDECL_RPL (mbslen, size_t, (const char *string) - _GL_ATTRIBUTE_PURE - _GL_ARG_NONNULL ((1))); -_GL_CXXALIAS_RPL (mbslen, size_t, (const char *string)); -# else -_GL_FUNCDECL_SYS (mbslen, size_t, (const char *string) - _GL_ATTRIBUTE_PURE - _GL_ARG_NONNULL ((1))); -_GL_CXXALIAS_SYS (mbslen, size_t, (const char *string)); -# endif -_GL_CXXALIASWARN (mbslen); -#endif - -#if @GNULIB_MBSNLEN@ -/* Return the number of multibyte characters in the character string starting - at STRING and ending at STRING + LEN. */ -_GL_EXTERN_C size_t mbsnlen (const char *string, size_t len) - _GL_ATTRIBUTE_PURE - _GL_ARG_NONNULL ((1)); -#endif - -#if @GNULIB_MBSCHR@ -/* Locate the first single-byte character C in the character string STRING, - and return a pointer to it. Return NULL if C is not found in STRING. - Unlike strchr(), this function works correctly in multibyte locales with - encodings such as GB18030. */ -# if defined __hpux -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# define mbschr rpl_mbschr /* avoid collision with HP-UX function */ -# endif -_GL_FUNCDECL_RPL (mbschr, char *, (const char *string, int c) - _GL_ATTRIBUTE_PURE - _GL_ARG_NONNULL ((1))); -_GL_CXXALIAS_RPL (mbschr, char *, (const char *string, int c)); -# else -_GL_FUNCDECL_SYS (mbschr, char *, (const char *string, int c) - _GL_ATTRIBUTE_PURE - _GL_ARG_NONNULL ((1))); -_GL_CXXALIAS_SYS (mbschr, char *, (const char *string, int c)); -# endif -_GL_CXXALIASWARN (mbschr); -#endif - -#if @GNULIB_MBSRCHR@ -/* Locate the last single-byte character C in the character string STRING, - and return a pointer to it. Return NULL if C is not found in STRING. - Unlike strrchr(), this function works correctly in multibyte locales with - encodings such as GB18030. */ -# if defined __hpux || defined __INTERIX -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# define mbsrchr rpl_mbsrchr /* avoid collision with system function */ -# endif -_GL_FUNCDECL_RPL (mbsrchr, char *, (const char *string, int c) - _GL_ATTRIBUTE_PURE - _GL_ARG_NONNULL ((1))); -_GL_CXXALIAS_RPL (mbsrchr, char *, (const char *string, int c)); -# else -_GL_FUNCDECL_SYS (mbsrchr, char *, (const char *string, int c) - _GL_ATTRIBUTE_PURE - _GL_ARG_NONNULL ((1))); -_GL_CXXALIAS_SYS (mbsrchr, char *, (const char *string, int c)); -# endif -_GL_CXXALIASWARN (mbsrchr); -#endif - -#if @GNULIB_MBSSTR@ -/* Find the first occurrence of the character string NEEDLE in the character - string HAYSTACK. Return NULL if NEEDLE is not found in HAYSTACK. - Unlike strstr(), this function works correctly in multibyte locales with - encodings different from UTF-8. */ -_GL_EXTERN_C char * mbsstr (const char *haystack, const char *needle) - _GL_ATTRIBUTE_PURE - _GL_ARG_NONNULL ((1, 2)); -#endif - -#if @GNULIB_MBSCASECMP@ -/* Compare the character strings S1 and S2, ignoring case, returning less than, - equal to or greater than zero if S1 is lexicographically less than, equal to - or greater than S2. - Note: This function may, in multibyte locales, return 0 for strings of - different lengths! - Unlike strcasecmp(), this function works correctly in multibyte locales. */ -_GL_EXTERN_C int mbscasecmp (const char *s1, const char *s2) - _GL_ATTRIBUTE_PURE - _GL_ARG_NONNULL ((1, 2)); -#endif - -#if @GNULIB_MBSNCASECMP@ -/* Compare the initial segment of the character string S1 consisting of at most - N characters with the initial segment of the character string S2 consisting - of at most N characters, ignoring case, returning less than, equal to or - greater than zero if the initial segment of S1 is lexicographically less - than, equal to or greater than the initial segment of S2. - Note: This function may, in multibyte locales, return 0 for initial segments - of different lengths! - Unlike strncasecmp(), this function works correctly in multibyte locales. - But beware that N is not a byte count but a character count! */ -_GL_EXTERN_C int mbsncasecmp (const char *s1, const char *s2, size_t n) - _GL_ATTRIBUTE_PURE - _GL_ARG_NONNULL ((1, 2)); -#endif - -#if @GNULIB_MBSPCASECMP@ -/* Compare the initial segment of the character string STRING consisting of - at most mbslen (PREFIX) characters with the character string PREFIX, - ignoring case. If the two match, return a pointer to the first byte - after this prefix in STRING. Otherwise, return NULL. - Note: This function may, in multibyte locales, return non-NULL if STRING - is of smaller length than PREFIX! - Unlike strncasecmp(), this function works correctly in multibyte - locales. */ -_GL_EXTERN_C char * mbspcasecmp (const char *string, const char *prefix) - _GL_ATTRIBUTE_PURE - _GL_ARG_NONNULL ((1, 2)); -#endif - -#if @GNULIB_MBSCASESTR@ -/* Find the first occurrence of the character string NEEDLE in the character - string HAYSTACK, using case-insensitive comparison. - Note: This function may, in multibyte locales, return success even if - strlen (haystack) < strlen (needle) ! - Unlike strcasestr(), this function works correctly in multibyte locales. */ -_GL_EXTERN_C char * mbscasestr (const char *haystack, const char *needle) - _GL_ATTRIBUTE_PURE - _GL_ARG_NONNULL ((1, 2)); -#endif - -#if @GNULIB_MBSCSPN@ -/* Find the first occurrence in the character string STRING of any character - in the character string ACCEPT. Return the number of bytes from the - beginning of the string to this occurrence, or to the end of the string - if none exists. - Unlike strcspn(), this function works correctly in multibyte locales. */ -_GL_EXTERN_C size_t mbscspn (const char *string, const char *accept) - _GL_ATTRIBUTE_PURE - _GL_ARG_NONNULL ((1, 2)); -#endif - -#if @GNULIB_MBSPBRK@ -/* Find the first occurrence in the character string STRING of any character - in the character string ACCEPT. Return the pointer to it, or NULL if none - exists. - Unlike strpbrk(), this function works correctly in multibyte locales. */ -# if defined __hpux -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# define mbspbrk rpl_mbspbrk /* avoid collision with HP-UX function */ -# endif -_GL_FUNCDECL_RPL (mbspbrk, char *, (const char *string, const char *accept) - _GL_ATTRIBUTE_PURE - _GL_ARG_NONNULL ((1, 2))); -_GL_CXXALIAS_RPL (mbspbrk, char *, (const char *string, const char *accept)); -# else -_GL_FUNCDECL_SYS (mbspbrk, char *, (const char *string, const char *accept) - _GL_ATTRIBUTE_PURE - _GL_ARG_NONNULL ((1, 2))); -_GL_CXXALIAS_SYS (mbspbrk, char *, (const char *string, const char *accept)); -# endif -_GL_CXXALIASWARN (mbspbrk); -#endif - -#if @GNULIB_MBSSPN@ -/* Find the first occurrence in the character string STRING of any character - not in the character string REJECT. Return the number of bytes from the - beginning of the string to this occurrence, or to the end of the string - if none exists. - Unlike strspn(), this function works correctly in multibyte locales. */ -_GL_EXTERN_C size_t mbsspn (const char *string, const char *reject) - _GL_ATTRIBUTE_PURE - _GL_ARG_NONNULL ((1, 2)); -#endif - -#if @GNULIB_MBSSEP@ -/* Search the next delimiter (multibyte character listed in the character - string DELIM) starting at the character string *STRINGP. - If one is found, overwrite it with a NUL, and advance *STRINGP to point - to the next multibyte character after it. Otherwise, set *STRINGP to NULL. - If *STRINGP was already NULL, nothing happens. - Return the old value of *STRINGP. - - This is a variant of mbstok_r() that supports empty fields. - - Caveat: It modifies the original string. - Caveat: These functions cannot be used on constant strings. - Caveat: The identity of the delimiting character is lost. - - See also mbstok_r(). */ -_GL_EXTERN_C char * mbssep (char **stringp, const char *delim) - _GL_ARG_NONNULL ((1, 2)); -#endif - -#if @GNULIB_MBSTOK_R@ -/* Parse the character string STRING into tokens separated by characters in - the character string DELIM. - If STRING is NULL, the saved pointer in SAVE_PTR is used as - the next starting point. For example: - char s[] = "-abc-=-def"; - char *sp; - x = mbstok_r(s, "-", &sp); // x = "abc", sp = "=-def" - x = mbstok_r(NULL, "-=", &sp); // x = "def", sp = NULL - x = mbstok_r(NULL, "=", &sp); // x = NULL - // s = "abc\0-def\0" - - Caveat: It modifies the original string. - Caveat: These functions cannot be used on constant strings. - Caveat: The identity of the delimiting character is lost. - - See also mbssep(). */ -_GL_EXTERN_C char * mbstok_r (char *string, const char *delim, char **save_ptr) - _GL_ARG_NONNULL ((2, 3)); -#endif - -/* Map any int, typically from errno, into an error message. */ -#if @GNULIB_STRERROR@ -# if @REPLACE_STRERROR@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# undef strerror -# define strerror rpl_strerror -# endif -_GL_FUNCDECL_RPL (strerror, char *, (int)); -_GL_CXXALIAS_RPL (strerror, char *, (int)); -# else -_GL_CXXALIAS_SYS (strerror, char *, (int)); -# endif -_GL_CXXALIASWARN (strerror); -#elif defined GNULIB_POSIXCHECK -# undef strerror -/* Assume strerror is always declared. */ -_GL_WARN_ON_USE (strerror, "strerror is unportable - " - "use gnulib module strerror to guarantee non-NULL result"); -#endif - -/* Map any int, typically from errno, into an error message. Multithread-safe. - Uses the POSIX declaration, not the glibc declaration. */ -#if @GNULIB_STRERROR_R@ -# if @REPLACE_STRERROR_R@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# undef strerror_r -# define strerror_r rpl_strerror_r -# endif -_GL_FUNCDECL_RPL (strerror_r, int, (int errnum, char *buf, size_t buflen) - _GL_ARG_NONNULL ((2))); -_GL_CXXALIAS_RPL (strerror_r, int, (int errnum, char *buf, size_t buflen)); -# else -# if !@HAVE_DECL_STRERROR_R@ -_GL_FUNCDECL_SYS (strerror_r, int, (int errnum, char *buf, size_t buflen) - _GL_ARG_NONNULL ((2))); -# endif -_GL_CXXALIAS_SYS (strerror_r, int, (int errnum, char *buf, size_t buflen)); -# endif -# if @HAVE_DECL_STRERROR_R@ -_GL_CXXALIASWARN (strerror_r); -# endif -#elif defined GNULIB_POSIXCHECK -# undef strerror_r -# if HAVE_RAW_DECL_STRERROR_R -_GL_WARN_ON_USE (strerror_r, "strerror_r is unportable - " - "use gnulib module strerror_r-posix for portability"); -# endif -#endif - -#if @GNULIB_STRSIGNAL@ -# if @REPLACE_STRSIGNAL@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# define strsignal rpl_strsignal -# endif -_GL_FUNCDECL_RPL (strsignal, char *, (int __sig)); -_GL_CXXALIAS_RPL (strsignal, char *, (int __sig)); -# else -# if ! @HAVE_DECL_STRSIGNAL@ -_GL_FUNCDECL_SYS (strsignal, char *, (int __sig)); -# endif -/* Need to cast, because on Cygwin 1.5.x systems, the return type is - 'const char *'. */ -_GL_CXXALIAS_SYS_CAST (strsignal, char *, (int __sig)); -# endif -_GL_CXXALIASWARN (strsignal); -#elif defined GNULIB_POSIXCHECK -# undef strsignal -# if HAVE_RAW_DECL_STRSIGNAL -_GL_WARN_ON_USE (strsignal, "strsignal is unportable - " - "use gnulib module strsignal for portability"); -# endif -#endif - -#if @GNULIB_STRVERSCMP@ -# if !@HAVE_STRVERSCMP@ -_GL_FUNCDECL_SYS (strverscmp, int, (const char *, const char *) - _GL_ATTRIBUTE_PURE - _GL_ARG_NONNULL ((1, 2))); -# endif -_GL_CXXALIAS_SYS (strverscmp, int, (const char *, const char *)); -_GL_CXXALIASWARN (strverscmp); -#elif defined GNULIB_POSIXCHECK -# undef strverscmp -# if HAVE_RAW_DECL_STRVERSCMP -_GL_WARN_ON_USE (strverscmp, "strverscmp is unportable - " - "use gnulib module strverscmp for portability"); -# endif -#endif - - -#endif /* _@GUARD_PREFIX@_STRING_H */ -#endif /* _@GUARD_PREFIX@_STRING_H */ -#endif diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/strings.in.h b/thirdparty/grub-2.04/grub-core/lib/gnulib/strings.in.h deleted file mode 100644 index 21b1a85b3..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/strings.in.h +++ /dev/null @@ -1,122 +0,0 @@ -/* A substitute . - - Copyright (C) 2007-2019 Free Software Foundation, Inc. - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3, or (at your option) - any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, see . */ - -#ifndef _@GUARD_PREFIX@_STRINGS_H - -#if __GNUC__ >= 3 -@PRAGMA_SYSTEM_HEADER@ -#endif -@PRAGMA_COLUMNS@ - -/* Minix 3.1.8 has a bug: must be included before . - But avoid namespace pollution on glibc systems. */ -#if defined __minix && !defined __GLIBC__ -# include -#endif - -/* The include_next requires a split double-inclusion guard. */ -#if @HAVE_STRINGS_H@ -# @INCLUDE_NEXT@ @NEXT_STRINGS_H@ -#endif - -#ifndef _@GUARD_PREFIX@_STRINGS_H -#define _@GUARD_PREFIX@_STRINGS_H - -#if ! @HAVE_DECL_STRNCASECMP@ -/* Get size_t. */ -# include -#endif - - -/* The definitions of _GL_FUNCDECL_RPL etc. are copied here. */ - -/* The definition of _GL_ARG_NONNULL is copied here. */ - -/* The definition of _GL_WARN_ON_USE is copied here. */ - -#ifdef __cplusplus -extern "C" { -#endif - - - /* Find the index of the least-significant set bit. */ -#if @GNULIB_FFS@ -# if !@HAVE_FFS@ -_GL_FUNCDECL_SYS (ffs, int, (int i)); -# endif -_GL_CXXALIAS_SYS (ffs, int, (int i)); -_GL_CXXALIASWARN (ffs); -#elif defined GNULIB_POSIXCHECK -# undef ffs -# if HAVE_RAW_DECL_FFS -_GL_WARN_ON_USE (ffs, "ffs is not portable - use the ffs module"); -# endif -#endif - -/* Compare strings S1 and S2, ignoring case, returning less than, equal to or - greater than zero if S1 is lexicographically less than, equal to or greater - than S2. - Note: This function does not work in multibyte locales. */ -#if ! @HAVE_STRCASECMP@ -extern int strcasecmp (char const *s1, char const *s2) - _GL_ARG_NONNULL ((1, 2)); -#endif -#if defined GNULIB_POSIXCHECK -/* strcasecmp() does not work with multibyte strings: - POSIX says that it operates on "strings", and "string" in POSIX is defined - as a sequence of bytes, not of characters. */ -# undef strcasecmp -# if HAVE_RAW_DECL_STRCASECMP -_GL_WARN_ON_USE (strcasecmp, "strcasecmp cannot work correctly on character " - "strings in multibyte locales - " - "use mbscasecmp if you care about " - "internationalization, or use c_strcasecmp , " - "gnulib module c-strcase) if you want a locale " - "independent function"); -# endif -#endif - -/* Compare no more than N bytes of strings S1 and S2, ignoring case, - returning less than, equal to or greater than zero if S1 is - lexicographically less than, equal to or greater than S2. - Note: This function cannot work correctly in multibyte locales. */ -#if ! @HAVE_DECL_STRNCASECMP@ -extern int strncasecmp (char const *s1, char const *s2, size_t n) - _GL_ARG_NONNULL ((1, 2)); -#endif -#if defined GNULIB_POSIXCHECK -/* strncasecmp() does not work with multibyte strings: - POSIX says that it operates on "strings", and "string" in POSIX is defined - as a sequence of bytes, not of characters. */ -# undef strncasecmp -# if HAVE_RAW_DECL_STRNCASECMP -_GL_WARN_ON_USE (strncasecmp, "strncasecmp cannot work correctly on character " - "strings in multibyte locales - " - "use mbsncasecmp or mbspcasecmp if you care about " - "internationalization, or use c_strncasecmp , " - "gnulib module c-strcase) if you want a locale " - "independent function"); -# endif -#endif - - -#ifdef __cplusplus -} -#endif - -#endif /* _@GUARD_PREFIX@_STRING_H */ -#endif /* _@GUARD_PREFIX@_STRING_H */ diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/stripslash.c b/thirdparty/grub-2.04/grub-core/lib/gnulib/stripslash.c deleted file mode 100644 index dfc15b43c..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/stripslash.c +++ /dev/null @@ -1,45 +0,0 @@ -/* stripslash.c -- remove redundant trailing slashes from a file name - - Copyright (C) 1990, 2001, 2003-2006, 2009-2019 Free Software Foundation, - Inc. - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . */ - -#include - -#include "dirname.h" - -/* Remove trailing slashes from FILE. Return true if a trailing slash - was removed. This is useful when using file name completion from a - shell that adds a "/" after directory names (such as tcsh and - bash), because on symlinks to directories, several system calls - have different semantics according to whether a trailing slash is - present. */ - -bool -strip_trailing_slashes (char *file) -{ - char *base = last_component (file); - char *base_lim; - bool had_slash; - - /* last_component returns "" for file system roots, but we need to turn - "///" into "/". */ - if (! *base) - base = file; - base_lim = base + base_len (base); - had_slash = (*base_lim != '\0'); - *base_lim = '\0'; - return had_slash; -} diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/strncasecmp.c b/thirdparty/grub-2.04/grub-core/lib/gnulib/strncasecmp.c deleted file mode 100644 index 034011c56..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/strncasecmp.c +++ /dev/null @@ -1,62 +0,0 @@ -/* strncasecmp.c -- case insensitive string comparator - Copyright (C) 1998-1999, 2005-2007, 2009-2019 Free Software Foundation, Inc. - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3, or (at your option) - any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, see . */ - -#include - -/* Specification. */ -#include - -#include -#include - -#define TOLOWER(Ch) (isupper (Ch) ? tolower (Ch) : (Ch)) - -/* Compare no more than N bytes of strings S1 and S2, ignoring case, - returning less than, equal to or greater than zero if S1 is - lexicographically less than, equal to or greater than S2. - Note: This function cannot work correctly in multibyte locales. */ - -int -strncasecmp (const char *s1, const char *s2, size_t n) -{ - register const unsigned char *p1 = (const unsigned char *) s1; - register const unsigned char *p2 = (const unsigned char *) s2; - unsigned char c1, c2; - - if (p1 == p2 || n == 0) - return 0; - - do - { - c1 = TOLOWER (*p1); - c2 = TOLOWER (*p2); - - if (--n == 0 || c1 == '\0') - break; - - ++p1; - ++p2; - } - while (c1 == c2); - - if (UCHAR_MAX <= INT_MAX) - return c1 - c2; - else - /* On machines where 'char' and 'int' are types of the same size, the - difference of two 'unsigned char' values - including the sign bit - - doesn't fit in an 'int'. */ - return (c1 > c2 ? 1 : c1 < c2 ? -1 : 0); -} diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/strndup.c b/thirdparty/grub-2.04/grub-core/lib/gnulib/strndup.c deleted file mode 100644 index 5b7482846..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/strndup.c +++ /dev/null @@ -1,36 +0,0 @@ -/* A replacement function, for systems that lack strndup. - - Copyright (C) 1996-1998, 2001-2003, 2005-2007, 2009-2019 Free Software - Foundation, Inc. - - This program is free software; you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by the - Free Software Foundation; either version 3, or (at your option) any - later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, see . */ - -#include - -#include - -#include - -char * -strndup (char const *s, size_t n) -{ - size_t len = strnlen (s, n); - char *new = malloc (len + 1); - - if (new == NULL) - return NULL; - - new[len] = '\0'; - return memcpy (new, s, len); -} diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/strnlen.c b/thirdparty/grub-2.04/grub-core/lib/gnulib/strnlen.c deleted file mode 100644 index 9fb663509..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/strnlen.c +++ /dev/null @@ -1,30 +0,0 @@ -/* Find the length of STRING, but scan at most MAXLEN characters. - Copyright (C) 2005-2007, 2009-2019 Free Software Foundation, Inc. - Written by Simon Josefsson. - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3, or (at your option) - any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, see . */ - -#include - -#include - -/* Find the length of STRING, but scan at most MAXLEN characters. - If no '\0' terminator is found in that many characters, return MAXLEN. */ - -size_t -strnlen (const char *string, size_t maxlen) -{ - const char *end = memchr (string, '\0', maxlen); - return end ? (size_t) (end - string) : maxlen; -} diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/strnlen1.c b/thirdparty/grub-2.04/grub-core/lib/gnulib/strnlen1.c deleted file mode 100644 index 666a5572c..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/strnlen1.c +++ /dev/null @@ -1,35 +0,0 @@ -/* Find the length of STRING + 1, but scan at most MAXLEN bytes. - Copyright (C) 2005-2006, 2009-2019 Free Software Foundation, Inc. - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . */ - -#include - -/* Specification. */ -#include "strnlen1.h" - -#include - -/* Find the length of STRING + 1, but scan at most MAXLEN bytes. - If no '\0' terminator is found in that many characters, return MAXLEN. */ -/* This is the same as strnlen (string, maxlen - 1) + 1. */ -size_t -strnlen1 (const char *string, size_t maxlen) -{ - const char *end = (const char *) memchr (string, '\0', maxlen); - if (end != NULL) - return end - string + 1; - else - return maxlen; -} diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/strnlen1.h b/thirdparty/grub-2.04/grub-core/lib/gnulib/strnlen1.h deleted file mode 100644 index 5d9524462..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/strnlen1.h +++ /dev/null @@ -1,40 +0,0 @@ -/* Find the length of STRING + 1, but scan at most MAXLEN bytes. - Copyright (C) 2005, 2009-2019 Free Software Foundation, Inc. - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . */ - -#ifndef _STRNLEN1_H -#define _STRNLEN1_H - -#include - - -#ifdef __cplusplus -extern "C" { -#endif - - -/* Find the length of STRING + 1, but scan at most MAXLEN bytes. - If no '\0' terminator is found in that many characters, return MAXLEN. */ -/* This is the same as strnlen (string, maxlen - 1) + 1. */ -extern size_t strnlen1 (const char *string, size_t maxlen) - _GL_ATTRIBUTE_PURE; - - -#ifdef __cplusplus -} -#endif - - -#endif /* _STRNLEN1_H */ diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/sys_stat.in.h b/thirdparty/grub-2.04/grub-core/lib/gnulib/sys_stat.in.h deleted file mode 100644 index 58fa93fd0..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/sys_stat.in.h +++ /dev/null @@ -1,816 +0,0 @@ -/* Provide a more complete sys/stat.h header file. - Copyright (C) 2005-2019 Free Software Foundation, Inc. - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3, or (at your option) - any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, see . */ - -/* Written by Eric Blake, Paul Eggert, and Jim Meyering. */ - -/* This file is supposed to be used on platforms where is - incomplete. It is intended to provide definitions and prototypes - needed by an application. Start with what the system provides. */ - -#if __GNUC__ >= 3 -@PRAGMA_SYSTEM_HEADER@ -#endif -@PRAGMA_COLUMNS@ - -#if defined __need_system_sys_stat_h -/* Special invocation convention. */ - -#@INCLUDE_NEXT@ @NEXT_SYS_STAT_H@ - -#else -/* Normal invocation convention. */ - -#ifndef _@GUARD_PREFIX@_SYS_STAT_H - -/* Get nlink_t. - May also define off_t to a 64-bit type on native Windows. */ -#include - -/* Get struct timespec. */ -#include - -/* The include_next requires a split double-inclusion guard. */ -#@INCLUDE_NEXT@ @NEXT_SYS_STAT_H@ - -#ifndef _@GUARD_PREFIX@_SYS_STAT_H -#define _@GUARD_PREFIX@_SYS_STAT_H - -/* The definitions of _GL_FUNCDECL_RPL etc. are copied here. */ - -/* The definition of _GL_ARG_NONNULL is copied here. */ - -/* The definition of _GL_WARN_ON_USE is copied here. */ - -/* Before doing "#define mkdir rpl_mkdir" below, we need to include all - headers that may declare mkdir(). Native Windows platforms declare mkdir - in and/or , not in . */ -#if defined _WIN32 && ! defined __CYGWIN__ -# include /* mingw32, mingw64 */ -# include /* mingw64, MSVC 9 */ -#endif - -/* Native Windows platforms declare umask() in . */ -#if 0 && (defined _WIN32 && ! defined __CYGWIN__) -# include -#endif - -/* Large File Support on native Windows. */ -#if @WINDOWS_64_BIT_ST_SIZE@ -# define stat _stati64 -#endif - -/* Optionally, override 'struct stat' on native Windows. */ -#if @GNULIB_OVERRIDES_STRUCT_STAT@ - -# undef stat -# if @GNULIB_STAT@ -# define stat rpl_stat -# else - /* Provoke a clear link error if stat() is used as a function and - module 'stat' is not in use. */ -# define stat stat_used_without_requesting_gnulib_module_stat -# endif - -# if !GNULIB_defined_struct_stat -struct stat -{ - dev_t st_dev; - ino_t st_ino; - mode_t st_mode; - nlink_t st_nlink; -# if 0 - uid_t st_uid; -# else /* uid_t is not defined by default on native Windows. */ - short st_uid; -# endif -# if 0 - gid_t st_gid; -# else /* gid_t is not defined by default on native Windows. */ - short st_gid; -# endif - dev_t st_rdev; - off_t st_size; -# if 0 - blksize_t st_blksize; - blkcnt_t st_blocks; -# endif - -# if @WINDOWS_STAT_TIMESPEC@ - struct timespec st_atim; - struct timespec st_mtim; - struct timespec st_ctim; -# else - time_t st_atime; - time_t st_mtime; - time_t st_ctime; -# endif -}; -# if @WINDOWS_STAT_TIMESPEC@ -# define st_atime st_atim.tv_sec -# define st_mtime st_mtim.tv_sec -# define st_ctime st_ctim.tv_sec - /* Indicator, for gnulib internal purposes. */ -# define _GL_WINDOWS_STAT_TIMESPEC 1 -# endif -# define GNULIB_defined_struct_stat 1 -# endif - -/* Other possible values of st_mode. */ -# if 0 -# define _S_IFBLK 0x6000 -# endif -# if 0 -# define _S_IFLNK 0xA000 -# endif -# if 0 -# define _S_IFSOCK 0xC000 -# endif - -#endif - -#ifndef S_IFIFO -# ifdef _S_IFIFO -# define S_IFIFO _S_IFIFO -# endif -#endif - -#ifndef S_IFMT -# define S_IFMT 0170000 -#endif - -#if STAT_MACROS_BROKEN -# undef S_ISBLK -# undef S_ISCHR -# undef S_ISDIR -# undef S_ISFIFO -# undef S_ISLNK -# undef S_ISNAM -# undef S_ISMPB -# undef S_ISMPC -# undef S_ISNWK -# undef S_ISREG -# undef S_ISSOCK -#endif - -#ifndef S_ISBLK -# ifdef S_IFBLK -# define S_ISBLK(m) (((m) & S_IFMT) == S_IFBLK) -# else -# define S_ISBLK(m) 0 -# endif -#endif - -#ifndef S_ISCHR -# ifdef S_IFCHR -# define S_ISCHR(m) (((m) & S_IFMT) == S_IFCHR) -# else -# define S_ISCHR(m) 0 -# endif -#endif - -#ifndef S_ISDIR -# ifdef S_IFDIR -# define S_ISDIR(m) (((m) & S_IFMT) == S_IFDIR) -# else -# define S_ISDIR(m) 0 -# endif -#endif - -#ifndef S_ISDOOR /* Solaris 2.5 and up */ -# define S_ISDOOR(m) 0 -#endif - -#ifndef S_ISFIFO -# ifdef S_IFIFO -# define S_ISFIFO(m) (((m) & S_IFMT) == S_IFIFO) -# else -# define S_ISFIFO(m) 0 -# endif -#endif - -#ifndef S_ISLNK -# ifdef S_IFLNK -# define S_ISLNK(m) (((m) & S_IFMT) == S_IFLNK) -# else -# define S_ISLNK(m) 0 -# endif -#endif - -#ifndef S_ISMPB /* V7 */ -# ifdef S_IFMPB -# define S_ISMPB(m) (((m) & S_IFMT) == S_IFMPB) -# define S_ISMPC(m) (((m) & S_IFMT) == S_IFMPC) -# else -# define S_ISMPB(m) 0 -# define S_ISMPC(m) 0 -# endif -#endif - -#ifndef S_ISMPX /* AIX */ -# define S_ISMPX(m) 0 -#endif - -#ifndef S_ISNAM /* Xenix */ -# ifdef S_IFNAM -# define S_ISNAM(m) (((m) & S_IFMT) == S_IFNAM) -# else -# define S_ISNAM(m) 0 -# endif -#endif - -#ifndef S_ISNWK /* HP/UX */ -# ifdef S_IFNWK -# define S_ISNWK(m) (((m) & S_IFMT) == S_IFNWK) -# else -# define S_ISNWK(m) 0 -# endif -#endif - -#ifndef S_ISPORT /* Solaris 10 and up */ -# define S_ISPORT(m) 0 -#endif - -#ifndef S_ISREG -# ifdef S_IFREG -# define S_ISREG(m) (((m) & S_IFMT) == S_IFREG) -# else -# define S_ISREG(m) 0 -# endif -#endif - -#ifndef S_ISSOCK -# ifdef S_IFSOCK -# define S_ISSOCK(m) (((m) & S_IFMT) == S_IFSOCK) -# else -# define S_ISSOCK(m) 0 -# endif -#endif - - -#ifndef S_TYPEISMQ -# define S_TYPEISMQ(p) 0 -#endif - -#ifndef S_TYPEISTMO -# define S_TYPEISTMO(p) 0 -#endif - - -#ifndef S_TYPEISSEM -# ifdef S_INSEM -# define S_TYPEISSEM(p) (S_ISNAM ((p)->st_mode) && (p)->st_rdev == S_INSEM) -# else -# define S_TYPEISSEM(p) 0 -# endif -#endif - -#ifndef S_TYPEISSHM -# ifdef S_INSHD -# define S_TYPEISSHM(p) (S_ISNAM ((p)->st_mode) && (p)->st_rdev == S_INSHD) -# else -# define S_TYPEISSHM(p) 0 -# endif -#endif - -/* high performance ("contiguous data") */ -#ifndef S_ISCTG -# define S_ISCTG(p) 0 -#endif - -/* Cray DMF (data migration facility): off line, with data */ -#ifndef S_ISOFD -# define S_ISOFD(p) 0 -#endif - -/* Cray DMF (data migration facility): off line, with no data */ -#ifndef S_ISOFL -# define S_ISOFL(p) 0 -#endif - -/* 4.4BSD whiteout */ -#ifndef S_ISWHT -# define S_ISWHT(m) 0 -#endif - -/* If any of the following are undefined, - define them to their de facto standard values. */ -#if !S_ISUID -# define S_ISUID 04000 -#endif -#if !S_ISGID -# define S_ISGID 02000 -#endif - -/* S_ISVTX is a common extension to POSIX. */ -#ifndef S_ISVTX -# define S_ISVTX 01000 -#endif - -#if !S_IRUSR && S_IREAD -# define S_IRUSR S_IREAD -#endif -#if !S_IRUSR -# define S_IRUSR 00400 -#endif -#if !S_IRGRP -# define S_IRGRP (S_IRUSR >> 3) -#endif -#if !S_IROTH -# define S_IROTH (S_IRUSR >> 6) -#endif - -#if !S_IWUSR && S_IWRITE -# define S_IWUSR S_IWRITE -#endif -#if !S_IWUSR -# define S_IWUSR 00200 -#endif -#if !S_IWGRP -# define S_IWGRP (S_IWUSR >> 3) -#endif -#if !S_IWOTH -# define S_IWOTH (S_IWUSR >> 6) -#endif - -#if !S_IXUSR && S_IEXEC -# define S_IXUSR S_IEXEC -#endif -#if !S_IXUSR -# define S_IXUSR 00100 -#endif -#if !S_IXGRP -# define S_IXGRP (S_IXUSR >> 3) -#endif -#if !S_IXOTH -# define S_IXOTH (S_IXUSR >> 6) -#endif - -#if !S_IRWXU -# define S_IRWXU (S_IRUSR | S_IWUSR | S_IXUSR) -#endif -#if !S_IRWXG -# define S_IRWXG (S_IRGRP | S_IWGRP | S_IXGRP) -#endif -#if !S_IRWXO -# define S_IRWXO (S_IROTH | S_IWOTH | S_IXOTH) -#endif - -/* S_IXUGO is a common extension to POSIX. */ -#if !S_IXUGO -# define S_IXUGO (S_IXUSR | S_IXGRP | S_IXOTH) -#endif - -#ifndef S_IRWXUGO -# define S_IRWXUGO (S_IRWXU | S_IRWXG | S_IRWXO) -#endif - -/* Macros for futimens and utimensat. */ -#ifndef UTIME_NOW -# define UTIME_NOW (-1) -# define UTIME_OMIT (-2) -#endif - - -#if @GNULIB_FCHMODAT@ -# if !@HAVE_FCHMODAT@ -_GL_FUNCDECL_SYS (fchmodat, int, - (int fd, char const *file, mode_t mode, int flag) - _GL_ARG_NONNULL ((2))); -# endif -_GL_CXXALIAS_SYS (fchmodat, int, - (int fd, char const *file, mode_t mode, int flag)); -_GL_CXXALIASWARN (fchmodat); -#elif defined GNULIB_POSIXCHECK -# undef fchmodat -# if HAVE_RAW_DECL_FCHMODAT -_GL_WARN_ON_USE (fchmodat, "fchmodat is not portable - " - "use gnulib module openat for portability"); -# endif -#endif - - -#if @GNULIB_FSTAT@ -# if @REPLACE_FSTAT@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# undef fstat -# define fstat rpl_fstat -# endif -_GL_FUNCDECL_RPL (fstat, int, (int fd, struct stat *buf) _GL_ARG_NONNULL ((2))); -_GL_CXXALIAS_RPL (fstat, int, (int fd, struct stat *buf)); -# else -_GL_CXXALIAS_SYS (fstat, int, (int fd, struct stat *buf)); -# endif -_GL_CXXALIASWARN (fstat); -#elif @GNULIB_OVERRIDES_STRUCT_STAT@ -# undef fstat -# define fstat fstat_used_without_requesting_gnulib_module_fstat -#elif @WINDOWS_64_BIT_ST_SIZE@ -/* Above, we define stat to _stati64. */ -# define fstat _fstati64 -#elif defined GNULIB_POSIXCHECK -# undef fstat -# if HAVE_RAW_DECL_FSTAT -_GL_WARN_ON_USE (fstat, "fstat has portability problems - " - "use gnulib module fstat for portability"); -# endif -#endif - - -#if @GNULIB_FSTATAT@ -# if @REPLACE_FSTATAT@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# undef fstatat -# define fstatat rpl_fstatat -# endif -_GL_FUNCDECL_RPL (fstatat, int, - (int fd, char const *name, struct stat *st, int flags) - _GL_ARG_NONNULL ((2, 3))); -_GL_CXXALIAS_RPL (fstatat, int, - (int fd, char const *name, struct stat *st, int flags)); -# else -# if !@HAVE_FSTATAT@ -_GL_FUNCDECL_SYS (fstatat, int, - (int fd, char const *name, struct stat *st, int flags) - _GL_ARG_NONNULL ((2, 3))); -# endif -_GL_CXXALIAS_SYS (fstatat, int, - (int fd, char const *name, struct stat *st, int flags)); -# endif -_GL_CXXALIASWARN (fstatat); -#elif @GNULIB_OVERRIDES_STRUCT_STAT@ -# undef fstatat -# define fstatat fstatat_used_without_requesting_gnulib_module_fstatat -#elif defined GNULIB_POSIXCHECK -# undef fstatat -# if HAVE_RAW_DECL_FSTATAT -_GL_WARN_ON_USE (fstatat, "fstatat is not portable - " - "use gnulib module openat for portability"); -# endif -#endif - - -#if @GNULIB_FUTIMENS@ -/* Use the rpl_ prefix also on Solaris <= 9, because on Solaris 9 our futimens - implementation relies on futimesat, which on Solaris 10 makes an invocation - to futimens that is meant to invoke the libc's futimens(), not gnulib's - futimens(). */ -# if @REPLACE_FUTIMENS@ || (!@HAVE_FUTIMENS@ && defined __sun) -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# undef futimens -# define futimens rpl_futimens -# endif -_GL_FUNCDECL_RPL (futimens, int, (int fd, struct timespec const times[2])); -_GL_CXXALIAS_RPL (futimens, int, (int fd, struct timespec const times[2])); -# else -# if !@HAVE_FUTIMENS@ -_GL_FUNCDECL_SYS (futimens, int, (int fd, struct timespec const times[2])); -# endif -_GL_CXXALIAS_SYS (futimens, int, (int fd, struct timespec const times[2])); -# endif -# if @HAVE_FUTIMENS@ -_GL_CXXALIASWARN (futimens); -# endif -#elif defined GNULIB_POSIXCHECK -# undef futimens -# if HAVE_RAW_DECL_FUTIMENS -_GL_WARN_ON_USE (futimens, "futimens is not portable - " - "use gnulib module futimens for portability"); -# endif -#endif - - -#if @GNULIB_LCHMOD@ -/* Change the mode of FILENAME to MODE, without dereferencing it if FILENAME - denotes a symbolic link. */ -# if !@HAVE_LCHMOD@ -/* The lchmod replacement follows symbolic links. Callers should take - this into account; lchmod should be applied only to arguments that - are known to not be symbolic links. On hosts that lack lchmod, - this can lead to race conditions between the check and the - invocation of lchmod, but we know of no workarounds that are - reliable in general. You might try requesting support for lchmod - from your operating system supplier. */ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# define lchmod chmod -# endif -/* Need to cast, because on mingw, the second parameter of chmod is - int mode. */ -_GL_CXXALIAS_RPL_CAST_1 (lchmod, chmod, int, - (const char *filename, mode_t mode)); -# else -# if 0 /* assume already declared */ -_GL_FUNCDECL_SYS (lchmod, int, (const char *filename, mode_t mode) - _GL_ARG_NONNULL ((1))); -# endif -_GL_CXXALIAS_SYS (lchmod, int, (const char *filename, mode_t mode)); -# endif -# if @HAVE_LCHMOD@ -_GL_CXXALIASWARN (lchmod); -# endif -#elif defined GNULIB_POSIXCHECK -# undef lchmod -# if HAVE_RAW_DECL_LCHMOD -_GL_WARN_ON_USE (lchmod, "lchmod is unportable - " - "use gnulib module lchmod for portability"); -# endif -#endif - - -#if @GNULIB_LSTAT@ -# if ! @HAVE_LSTAT@ -/* mingw does not support symlinks, therefore it does not have lstat. But - without links, stat does just fine. */ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# define lstat stat -# endif -_GL_CXXALIAS_RPL_1 (lstat, stat, int, (const char *name, struct stat *buf)); -# elif @REPLACE_LSTAT@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# undef lstat -# define lstat rpl_lstat -# endif -_GL_FUNCDECL_RPL (lstat, int, (const char *name, struct stat *buf) - _GL_ARG_NONNULL ((1, 2))); -_GL_CXXALIAS_RPL (lstat, int, (const char *name, struct stat *buf)); -# else -_GL_CXXALIAS_SYS (lstat, int, (const char *name, struct stat *buf)); -# endif -# if @HAVE_LSTAT@ -_GL_CXXALIASWARN (lstat); -# endif -#elif @GNULIB_OVERRIDES_STRUCT_STAT@ -# undef lstat -# define lstat lstat_used_without_requesting_gnulib_module_lstat -#elif defined GNULIB_POSIXCHECK -# undef lstat -# if HAVE_RAW_DECL_LSTAT -_GL_WARN_ON_USE (lstat, "lstat is unportable - " - "use gnulib module lstat for portability"); -# endif -#endif - - -#if @REPLACE_MKDIR@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# undef mkdir -# define mkdir rpl_mkdir -# endif -_GL_FUNCDECL_RPL (mkdir, int, (char const *name, mode_t mode) - _GL_ARG_NONNULL ((1))); -_GL_CXXALIAS_RPL (mkdir, int, (char const *name, mode_t mode)); -#else -/* mingw's _mkdir() function has 1 argument, but we pass 2 arguments. - Additionally, it declares _mkdir (and depending on compile flags, an - alias mkdir), only in the nonstandard includes and , - which are included above. */ -# if defined _WIN32 && ! defined __CYGWIN__ - -# if !GNULIB_defined_rpl_mkdir -static int -rpl_mkdir (char const *name, mode_t mode) -{ - return _mkdir (name); -} -# define GNULIB_defined_rpl_mkdir 1 -# endif - -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# define mkdir rpl_mkdir -# endif -_GL_CXXALIAS_RPL (mkdir, int, (char const *name, mode_t mode)); -# else -_GL_CXXALIAS_SYS (mkdir, int, (char const *name, mode_t mode)); -# endif -#endif -_GL_CXXALIASWARN (mkdir); - - -#if @GNULIB_MKDIRAT@ -# if !@HAVE_MKDIRAT@ -_GL_FUNCDECL_SYS (mkdirat, int, (int fd, char const *file, mode_t mode) - _GL_ARG_NONNULL ((2))); -# endif -_GL_CXXALIAS_SYS (mkdirat, int, (int fd, char const *file, mode_t mode)); -_GL_CXXALIASWARN (mkdirat); -#elif defined GNULIB_POSIXCHECK -# undef mkdirat -# if HAVE_RAW_DECL_MKDIRAT -_GL_WARN_ON_USE (mkdirat, "mkdirat is not portable - " - "use gnulib module openat for portability"); -# endif -#endif - - -#if @GNULIB_MKFIFO@ -# if @REPLACE_MKFIFO@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# undef mkfifo -# define mkfifo rpl_mkfifo -# endif -_GL_FUNCDECL_RPL (mkfifo, int, (char const *file, mode_t mode) - _GL_ARG_NONNULL ((1))); -_GL_CXXALIAS_RPL (mkfifo, int, (char const *file, mode_t mode)); -# else -# if !@HAVE_MKFIFO@ -_GL_FUNCDECL_SYS (mkfifo, int, (char const *file, mode_t mode) - _GL_ARG_NONNULL ((1))); -# endif -_GL_CXXALIAS_SYS (mkfifo, int, (char const *file, mode_t mode)); -# endif -_GL_CXXALIASWARN (mkfifo); -#elif defined GNULIB_POSIXCHECK -# undef mkfifo -# if HAVE_RAW_DECL_MKFIFO -_GL_WARN_ON_USE (mkfifo, "mkfifo is not portable - " - "use gnulib module mkfifo for portability"); -# endif -#endif - - -#if @GNULIB_MKFIFOAT@ -# if !@HAVE_MKFIFOAT@ -_GL_FUNCDECL_SYS (mkfifoat, int, (int fd, char const *file, mode_t mode) - _GL_ARG_NONNULL ((2))); -# endif -_GL_CXXALIAS_SYS (mkfifoat, int, (int fd, char const *file, mode_t mode)); -_GL_CXXALIASWARN (mkfifoat); -#elif defined GNULIB_POSIXCHECK -# undef mkfifoat -# if HAVE_RAW_DECL_MKFIFOAT -_GL_WARN_ON_USE (mkfifoat, "mkfifoat is not portable - " - "use gnulib module mkfifoat for portability"); -# endif -#endif - - -#if @GNULIB_MKNOD@ -# if @REPLACE_MKNOD@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# undef mknod -# define mknod rpl_mknod -# endif -_GL_FUNCDECL_RPL (mknod, int, (char const *file, mode_t mode, dev_t dev) - _GL_ARG_NONNULL ((1))); -_GL_CXXALIAS_RPL (mknod, int, (char const *file, mode_t mode, dev_t dev)); -# else -# if !@HAVE_MKNOD@ -_GL_FUNCDECL_SYS (mknod, int, (char const *file, mode_t mode, dev_t dev) - _GL_ARG_NONNULL ((1))); -# endif -/* Need to cast, because on OSF/1 5.1, the third parameter is '...'. */ -_GL_CXXALIAS_SYS_CAST (mknod, int, (char const *file, mode_t mode, dev_t dev)); -# endif -_GL_CXXALIASWARN (mknod); -#elif defined GNULIB_POSIXCHECK -# undef mknod -# if HAVE_RAW_DECL_MKNOD -_GL_WARN_ON_USE (mknod, "mknod is not portable - " - "use gnulib module mknod for portability"); -# endif -#endif - - -#if @GNULIB_MKNODAT@ -# if !@HAVE_MKNODAT@ -_GL_FUNCDECL_SYS (mknodat, int, - (int fd, char const *file, mode_t mode, dev_t dev) - _GL_ARG_NONNULL ((2))); -# endif -_GL_CXXALIAS_SYS (mknodat, int, - (int fd, char const *file, mode_t mode, dev_t dev)); -_GL_CXXALIASWARN (mknodat); -#elif defined GNULIB_POSIXCHECK -# undef mknodat -# if HAVE_RAW_DECL_MKNODAT -_GL_WARN_ON_USE (mknodat, "mknodat is not portable - " - "use gnulib module mkfifoat for portability"); -# endif -#endif - - -#if @GNULIB_STAT@ -# if @REPLACE_STAT@ -# if !@GNULIB_OVERRIDES_STRUCT_STAT@ - /* We can't use the object-like #define stat rpl_stat, because of - struct stat. This means that rpl_stat will not be used if the user - does (stat)(a,b). Oh well. */ -# if defined _AIX && defined stat && defined _LARGE_FILES - /* With _LARGE_FILES defined, AIX (only) defines stat to stat64, - so we have to replace stat64() instead of stat(). */ -# undef stat64 -# define stat64(name, st) rpl_stat (name, st) -# elif @WINDOWS_64_BIT_ST_SIZE@ - /* Above, we define stat to _stati64. */ -# if defined __MINGW32__ && defined _stati64 -# ifndef _USE_32BIT_TIME_T - /* The system headers define _stati64 to _stat64. */ -# undef _stat64 -# define _stat64(name, st) rpl_stat (name, st) -# endif -# elif defined _MSC_VER && defined _stati64 -# ifdef _USE_32BIT_TIME_T - /* The system headers define _stati64 to _stat32i64. */ -# undef _stat32i64 -# define _stat32i64(name, st) rpl_stat (name, st) -# else - /* The system headers define _stati64 to _stat64. */ -# undef _stat64 -# define _stat64(name, st) rpl_stat (name, st) -# endif -# else -# undef _stati64 -# define _stati64(name, st) rpl_stat (name, st) -# endif -# elif defined __MINGW32__ && defined stat -# ifdef _USE_32BIT_TIME_T - /* The system headers define stat to _stat32i64. */ -# undef _stat32i64 -# define _stat32i64(name, st) rpl_stat (name, st) -# else - /* The system headers define stat to _stat64. */ -# undef _stat64 -# define _stat64(name, st) rpl_stat (name, st) -# endif -# elif defined _MSC_VER && defined stat -# ifdef _USE_32BIT_TIME_T - /* The system headers define stat to _stat32. */ -# undef _stat32 -# define _stat32(name, st) rpl_stat (name, st) -# else - /* The system headers define stat to _stat64i32. */ -# undef _stat64i32 -# define _stat64i32(name, st) rpl_stat (name, st) -# endif -# else /* !(_AIX || __MINGW32__ || _MSC_VER) */ -# undef stat -# define stat(name, st) rpl_stat (name, st) -# endif /* !_LARGE_FILES */ -# endif /* !@GNULIB_OVERRIDES_STRUCT_STAT@ */ -_GL_EXTERN_C int stat (const char *name, struct stat *buf) - _GL_ARG_NONNULL ((1, 2)); -# endif -#elif @GNULIB_OVERRIDES_STRUCT_STAT@ -/* see above: - #define stat stat_used_without_requesting_gnulib_module_stat - */ -#elif defined GNULIB_POSIXCHECK -# undef stat -# if HAVE_RAW_DECL_STAT -_GL_WARN_ON_USE (stat, "stat is unportable - " - "use gnulib module stat for portability"); -# endif -#endif - - -#if @GNULIB_UTIMENSAT@ -/* Use the rpl_ prefix also on Solaris <= 9, because on Solaris 9 our utimensat - implementation relies on futimesat, which on Solaris 10 makes an invocation - to utimensat that is meant to invoke the libc's utimensat(), not gnulib's - utimensat(). */ -# if @REPLACE_UTIMENSAT@ || (!@HAVE_UTIMENSAT@ && defined __sun) -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# undef utimensat -# define utimensat rpl_utimensat -# endif -_GL_FUNCDECL_RPL (utimensat, int, (int fd, char const *name, - struct timespec const times[2], int flag) - _GL_ARG_NONNULL ((2))); -_GL_CXXALIAS_RPL (utimensat, int, (int fd, char const *name, - struct timespec const times[2], int flag)); -# else -# if !@HAVE_UTIMENSAT@ -_GL_FUNCDECL_SYS (utimensat, int, (int fd, char const *name, - struct timespec const times[2], int flag) - _GL_ARG_NONNULL ((2))); -# endif -_GL_CXXALIAS_SYS (utimensat, int, (int fd, char const *name, - struct timespec const times[2], int flag)); -# endif -# if @HAVE_UTIMENSAT@ -_GL_CXXALIASWARN (utimensat); -# endif -#elif defined GNULIB_POSIXCHECK -# undef utimensat -# if HAVE_RAW_DECL_UTIMENSAT -_GL_WARN_ON_USE (utimensat, "utimensat is not portable - " - "use gnulib module utimensat for portability"); -# endif -#endif - - -#endif /* _@GUARD_PREFIX@_SYS_STAT_H */ -#endif /* _@GUARD_PREFIX@_SYS_STAT_H */ -#endif diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/sys_types.in.h b/thirdparty/grub-2.04/grub-core/lib/gnulib/sys_types.in.h deleted file mode 100644 index 237e2068c..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/sys_types.in.h +++ /dev/null @@ -1,106 +0,0 @@ -/* Provide a more complete sys/types.h. - - Copyright (C) 2011-2019 Free Software Foundation, Inc. - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3, or (at your option) - any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, see . */ - -#if __GNUC__ >= 3 -@PRAGMA_SYSTEM_HEADER@ -#endif -@PRAGMA_COLUMNS@ - -#if defined _WIN32 && !defined __CYGWIN__ \ - && (defined __need_off_t || defined __need___off64_t \ - || defined __need_ssize_t || defined __need_time_t) - -/* Special invocation convention inside mingw header files. */ - -#@INCLUDE_NEXT@ @NEXT_SYS_TYPES_H@ - -#else -/* Normal invocation convention. */ - -#ifndef _@GUARD_PREFIX@_SYS_TYPES_H - -/* The include_next requires a split double-inclusion guard. */ -# define _GL_INCLUDING_SYS_TYPES_H -#@INCLUDE_NEXT@ @NEXT_SYS_TYPES_H@ -# undef _GL_INCLUDING_SYS_TYPES_H - -#ifndef _@GUARD_PREFIX@_SYS_TYPES_H -#define _@GUARD_PREFIX@_SYS_TYPES_H - -/* Override off_t if Large File Support is requested on native Windows. */ -#if @WINDOWS_64_BIT_OFF_T@ -/* Same as int64_t in . */ -# if defined _MSC_VER -# define off_t __int64 -# else -# define off_t long long int -# endif -/* Indicator, for gnulib internal purposes. */ -# define _GL_WINDOWS_64_BIT_OFF_T 1 -#endif - -/* Override dev_t and ino_t if distinguishable inodes support is requested - on native Windows. */ -#if @WINDOWS_STAT_INODES@ - -# if @WINDOWS_STAT_INODES@ == 2 -/* Experimental, not useful in Windows 10. */ - -/* Define dev_t to a 64-bit type. */ -# if !defined GNULIB_defined_dev_t -typedef unsigned long long int rpl_dev_t; -# undef dev_t -# define dev_t rpl_dev_t -# define GNULIB_defined_dev_t 1 -# endif - -/* Define ino_t to a 128-bit type. */ -# if !defined GNULIB_defined_ino_t -/* MSVC does not have a 128-bit integer type. - GCC has a 128-bit integer type __int128, but only on 64-bit targets. */ -typedef struct { unsigned long long int _gl_ino[2]; } rpl_ino_t; -# undef ino_t -# define ino_t rpl_ino_t -# define GNULIB_defined_ino_t 1 -# endif - -# else /* @WINDOWS_STAT_INODES@ == 1 */ - -/* Define ino_t to a 64-bit type. */ -# if !defined GNULIB_defined_ino_t -typedef unsigned long long int rpl_ino_t; -# undef ino_t -# define ino_t rpl_ino_t -# define GNULIB_defined_ino_t 1 -# endif - -# endif - -/* Indicator, for gnulib internal purposes. */ -# define _GL_WINDOWS_STAT_INODES @WINDOWS_STAT_INODES@ - -#endif - -/* MSVC 9 defines size_t in , not in . */ -/* But avoid namespace pollution on glibc systems. */ -#if (defined _WIN32 && ! defined __CYGWIN__) && ! defined __GLIBC__ -# include -#endif - -#endif /* _@GUARD_PREFIX@_SYS_TYPES_H */ -#endif /* _@GUARD_PREFIX@_SYS_TYPES_H */ -#endif /* __need_XXX */ diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/sysexits.in.h b/thirdparty/grub-2.04/grub-core/lib/gnulib/sysexits.in.h deleted file mode 100644 index 7043a0a99..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/sysexits.in.h +++ /dev/null @@ -1,72 +0,0 @@ -/* exit() exit codes for some BSD system programs. - Copyright (C) 2003, 2006-2019 Free Software Foundation, Inc. - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . */ - -/* Written by Simon Josefsson based on sysexits(3) man page */ - -#ifndef _@GUARD_PREFIX@_SYSEXITS_H - -#if __GNUC__ >= 3 -@PRAGMA_SYSTEM_HEADER@ -#endif -@PRAGMA_COLUMNS@ - -#if @HAVE_SYSEXITS_H@ - -/* IRIX 6.5 has an that defines a macro EX_OK with a nonzero - value. Override it. See - */ -# ifdef __sgi -# include -# undef EX_OK -# endif - -/* The include_next requires a split double-inclusion guard. */ -# @INCLUDE_NEXT@ @NEXT_SYSEXITS_H@ - -/* HP-UX 11 ends at EX_NOPERM. */ -# ifndef EX_CONFIG -# define EX_CONFIG 78 -# endif - -#endif - -#ifndef _@GUARD_PREFIX@_SYSEXITS_H -#define _@GUARD_PREFIX@_SYSEXITS_H - -#if !@HAVE_SYSEXITS_H@ - -# define EX_OK 0 /* same value as EXIT_SUCCESS */ - -# define EX_USAGE 64 -# define EX_DATAERR 65 -# define EX_NOINPUT 66 -# define EX_NOUSER 67 -# define EX_NOHOST 68 -# define EX_UNAVAILABLE 69 -# define EX_SOFTWARE 70 -# define EX_OSERR 71 -# define EX_OSFILE 72 -# define EX_CANTCREAT 73 -# define EX_IOERR 74 -# define EX_TEMPFAIL 75 -# define EX_PROTOCOL 76 -# define EX_NOPERM 77 -# define EX_CONFIG 78 - -#endif - -#endif /* _@GUARD_PREFIX@_SYSEXITS_H */ -#endif /* _@GUARD_PREFIX@_SYSEXITS_H */ diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/time.in.h b/thirdparty/grub-2.04/grub-core/lib/gnulib/time.in.h deleted file mode 100644 index dd3b21273..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/time.in.h +++ /dev/null @@ -1,350 +0,0 @@ -/* A more-standard . - - Copyright (C) 2007-2019 Free Software Foundation, Inc. - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3, or (at your option) - any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, see . */ - -#if __GNUC__ >= 3 -@PRAGMA_SYSTEM_HEADER@ -#endif -@PRAGMA_COLUMNS@ - -/* Don't get in the way of glibc when it includes time.h merely to - declare a few standard symbols, rather than to declare all the - symbols. (However, skip this for MinGW as it treats __need_time_t - incompatibly.) Also, Solaris 8 eventually includes itself - recursively; if that is happening, just include the system - without adding our own declarations. */ -#if (((defined __need_time_t || defined __need_clock_t \ - || defined __need_timespec) \ - && !defined __MINGW32__) \ - || defined _@GUARD_PREFIX@_TIME_H) - -# @INCLUDE_NEXT@ @NEXT_TIME_H@ - -#else - -# define _@GUARD_PREFIX@_TIME_H - -# @INCLUDE_NEXT@ @NEXT_TIME_H@ - -/* NetBSD 5.0 mis-defines NULL. */ -# include - -/* The definitions of _GL_FUNCDECL_RPL etc. are copied here. */ - -/* The definition of _GL_ARG_NONNULL is copied here. */ - -/* The definition of _GL_WARN_ON_USE is copied here. */ - -/* Some systems don't define struct timespec (e.g., AIX 4.1). - Or they define it with the wrong member names or define it in - (e.g., FreeBSD circa 1997). Stock Mingw prior to 3.0 does not define it, - but the pthreads-win32 library defines it in . */ -# if ! @TIME_H_DEFINES_STRUCT_TIMESPEC@ -# if @SYS_TIME_H_DEFINES_STRUCT_TIMESPEC@ -# include -# elif @PTHREAD_H_DEFINES_STRUCT_TIMESPEC@ -# include -# elif @UNISTD_H_DEFINES_STRUCT_TIMESPEC@ -# include -# else - -# ifdef __cplusplus -extern "C" { -# endif - -# if !GNULIB_defined_struct_timespec -# undef timespec -# define timespec rpl_timespec -struct timespec -{ - time_t tv_sec; - long int tv_nsec; -}; -# define GNULIB_defined_struct_timespec 1 -# endif - -# ifdef __cplusplus -} -# endif - -# endif -# endif - -# if !GNULIB_defined_struct_time_t_must_be_integral -/* Per http://austingroupbugs.net/view.php?id=327, POSIX requires - time_t to be an integer type, even though C99 permits floating - point. We don't know of any implementation that uses floating - point, and it is much easier to write code that doesn't have to - worry about that corner case, so we force the issue. */ -struct __time_t_must_be_integral { - unsigned int __floating_time_t_unsupported : (time_t) 1; -}; -# define GNULIB_defined_struct_time_t_must_be_integral 1 -# endif - -/* Sleep for at least RQTP seconds unless interrupted, If interrupted, - return -1 and store the remaining time into RMTP. See - . */ -# if @GNULIB_NANOSLEEP@ -# if @REPLACE_NANOSLEEP@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# define nanosleep rpl_nanosleep -# endif -_GL_FUNCDECL_RPL (nanosleep, int, - (struct timespec const *__rqtp, struct timespec *__rmtp) - _GL_ARG_NONNULL ((1))); -_GL_CXXALIAS_RPL (nanosleep, int, - (struct timespec const *__rqtp, struct timespec *__rmtp)); -# else -# if ! @HAVE_NANOSLEEP@ -_GL_FUNCDECL_SYS (nanosleep, int, - (struct timespec const *__rqtp, struct timespec *__rmtp) - _GL_ARG_NONNULL ((1))); -# endif -_GL_CXXALIAS_SYS (nanosleep, int, - (struct timespec const *__rqtp, struct timespec *__rmtp)); -# endif -_GL_CXXALIASWARN (nanosleep); -# endif - -/* Initialize time conversion information. */ -# if @GNULIB_TZSET@ -# if @REPLACE_TZSET@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# undef tzset -# define tzset rpl_tzset -# endif -_GL_FUNCDECL_RPL (tzset, void, (void)); -_GL_CXXALIAS_RPL (tzset, void, (void)); -# else -# if ! @HAVE_TZSET@ -_GL_FUNCDECL_SYS (tzset, void, (void)); -# endif -_GL_CXXALIAS_SYS (tzset, void, (void)); -# endif -_GL_CXXALIASWARN (tzset); -# endif - -/* Return the 'time_t' representation of TP and normalize TP. */ -# if @GNULIB_MKTIME@ -# if @REPLACE_MKTIME@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# define mktime rpl_mktime -# endif -_GL_FUNCDECL_RPL (mktime, time_t, (struct tm *__tp) _GL_ARG_NONNULL ((1))); -_GL_CXXALIAS_RPL (mktime, time_t, (struct tm *__tp)); -# else -_GL_CXXALIAS_SYS (mktime, time_t, (struct tm *__tp)); -# endif -_GL_CXXALIASWARN (mktime); -# endif - -/* Convert TIMER to RESULT, assuming local time and UTC respectively. See - and - . */ -# if @GNULIB_TIME_R@ -# if @REPLACE_LOCALTIME_R@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# undef localtime_r -# define localtime_r rpl_localtime_r -# endif -_GL_FUNCDECL_RPL (localtime_r, struct tm *, (time_t const *restrict __timer, - struct tm *restrict __result) - _GL_ARG_NONNULL ((1, 2))); -_GL_CXXALIAS_RPL (localtime_r, struct tm *, (time_t const *restrict __timer, - struct tm *restrict __result)); -# else -# if ! @HAVE_DECL_LOCALTIME_R@ -_GL_FUNCDECL_SYS (localtime_r, struct tm *, (time_t const *restrict __timer, - struct tm *restrict __result) - _GL_ARG_NONNULL ((1, 2))); -# endif -_GL_CXXALIAS_SYS (localtime_r, struct tm *, (time_t const *restrict __timer, - struct tm *restrict __result)); -# endif -# if @HAVE_DECL_LOCALTIME_R@ -_GL_CXXALIASWARN (localtime_r); -# endif -# if @REPLACE_LOCALTIME_R@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# undef gmtime_r -# define gmtime_r rpl_gmtime_r -# endif -_GL_FUNCDECL_RPL (gmtime_r, struct tm *, (time_t const *restrict __timer, - struct tm *restrict __result) - _GL_ARG_NONNULL ((1, 2))); -_GL_CXXALIAS_RPL (gmtime_r, struct tm *, (time_t const *restrict __timer, - struct tm *restrict __result)); -# else -# if ! @HAVE_DECL_LOCALTIME_R@ -_GL_FUNCDECL_SYS (gmtime_r, struct tm *, (time_t const *restrict __timer, - struct tm *restrict __result) - _GL_ARG_NONNULL ((1, 2))); -# endif -_GL_CXXALIAS_SYS (gmtime_r, struct tm *, (time_t const *restrict __timer, - struct tm *restrict __result)); -# endif -# if @HAVE_DECL_LOCALTIME_R@ -_GL_CXXALIASWARN (gmtime_r); -# endif -# endif - -/* Convert TIMER to RESULT, assuming local time and UTC respectively. See - and - . */ -# if @GNULIB_LOCALTIME@ || @REPLACE_LOCALTIME@ -# if @REPLACE_LOCALTIME@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# undef localtime -# define localtime rpl_localtime -# endif -_GL_FUNCDECL_RPL (localtime, struct tm *, (time_t const *__timer) - _GL_ARG_NONNULL ((1))); -_GL_CXXALIAS_RPL (localtime, struct tm *, (time_t const *__timer)); -# else -_GL_CXXALIAS_SYS (localtime, struct tm *, (time_t const *__timer)); -# endif -_GL_CXXALIASWARN (localtime); -# endif - -# if 0 || @REPLACE_GMTIME@ -# if @REPLACE_GMTIME@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# undef gmtime -# define gmtime rpl_gmtime -# endif -_GL_FUNCDECL_RPL (gmtime, struct tm *, (time_t const *__timer) - _GL_ARG_NONNULL ((1))); -_GL_CXXALIAS_RPL (gmtime, struct tm *, (time_t const *__timer)); -# else -_GL_CXXALIAS_SYS (gmtime, struct tm *, (time_t const *__timer)); -# endif -_GL_CXXALIASWARN (gmtime); -# endif - -/* Parse BUF as a timestamp, assuming FORMAT specifies its layout, and store - the resulting broken-down time into TM. See - . */ -# if @GNULIB_STRPTIME@ -# if ! @HAVE_STRPTIME@ -_GL_FUNCDECL_SYS (strptime, char *, (char const *restrict __buf, - char const *restrict __format, - struct tm *restrict __tm) - _GL_ARG_NONNULL ((1, 2, 3))); -# endif -_GL_CXXALIAS_SYS (strptime, char *, (char const *restrict __buf, - char const *restrict __format, - struct tm *restrict __tm)); -_GL_CXXALIASWARN (strptime); -# endif - -/* Convert *TP to a date and time string. See - . */ -# if @GNULIB_CTIME@ -# if @REPLACE_CTIME@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# define ctime rpl_ctime -# endif -_GL_FUNCDECL_RPL (ctime, char *, (time_t const *__tp) - _GL_ARG_NONNULL ((1))); -_GL_CXXALIAS_RPL (ctime, char *, (time_t const *__tp)); -# else -_GL_CXXALIAS_SYS (ctime, char *, (time_t const *__tp)); -# endif -_GL_CXXALIASWARN (ctime); -# endif - -/* Convert *TP to a date and time string. See - . */ -# if @GNULIB_STRFTIME@ -# if @REPLACE_STRFTIME@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# define strftime rpl_strftime -# endif -_GL_FUNCDECL_RPL (strftime, size_t, (char *__buf, size_t __bufsize, - const char *__fmt, const struct tm *__tp) - _GL_ARG_NONNULL ((1, 3, 4))); -_GL_CXXALIAS_RPL (strftime, size_t, (char *__buf, size_t __bufsize, - const char *__fmt, const struct tm *__tp)); -# else -_GL_CXXALIAS_SYS (strftime, size_t, (char *__buf, size_t __bufsize, - const char *__fmt, const struct tm *__tp)); -# endif -_GL_CXXALIASWARN (strftime); -# endif - -# if defined _GNU_SOURCE && @GNULIB_TIME_RZ@ && ! @HAVE_TIMEZONE_T@ -typedef struct tm_zone *timezone_t; -_GL_FUNCDECL_SYS (tzalloc, timezone_t, (char const *__name)); -_GL_CXXALIAS_SYS (tzalloc, timezone_t, (char const *__name)); -_GL_FUNCDECL_SYS (tzfree, void, (timezone_t __tz)); -_GL_CXXALIAS_SYS (tzfree, void, (timezone_t __tz)); -_GL_FUNCDECL_SYS (localtime_rz, struct tm *, - (timezone_t __tz, time_t const *restrict __timer, - struct tm *restrict __result) _GL_ARG_NONNULL ((2, 3))); -_GL_CXXALIAS_SYS (localtime_rz, struct tm *, - (timezone_t __tz, time_t const *restrict __timer, - struct tm *restrict __result)); -_GL_FUNCDECL_SYS (mktime_z, time_t, - (timezone_t __tz, struct tm *restrict __result) - _GL_ARG_NONNULL ((2))); -_GL_CXXALIAS_SYS (mktime_z, time_t, - (timezone_t __tz, struct tm *restrict __result)); -# endif - -/* Convert TM to a time_t value, assuming UTC. */ -# if @GNULIB_TIMEGM@ -# if @REPLACE_TIMEGM@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# undef timegm -# define timegm rpl_timegm -# endif -_GL_FUNCDECL_RPL (timegm, time_t, (struct tm *__tm) _GL_ARG_NONNULL ((1))); -_GL_CXXALIAS_RPL (timegm, time_t, (struct tm *__tm)); -# else -# if ! @HAVE_TIMEGM@ -_GL_FUNCDECL_SYS (timegm, time_t, (struct tm *__tm) _GL_ARG_NONNULL ((1))); -# endif -_GL_CXXALIAS_SYS (timegm, time_t, (struct tm *__tm)); -# endif -_GL_CXXALIASWARN (timegm); -# endif - -/* Encourage applications to avoid unsafe functions that can overrun - buffers when given outlandish struct tm values. Portable - applications should use strftime (or even sprintf) instead. */ -# if defined GNULIB_POSIXCHECK -# undef asctime -_GL_WARN_ON_USE (asctime, "asctime can overrun buffers in some cases - " - "better use strftime (or even sprintf) instead"); -# endif -# if defined GNULIB_POSIXCHECK -# undef asctime_r -_GL_WARN_ON_USE (asctime, "asctime_r can overrun buffers in some cases - " - "better use strftime (or even sprintf) instead"); -# endif -# if defined GNULIB_POSIXCHECK -# undef ctime -_GL_WARN_ON_USE (asctime, "ctime can overrun buffers in some cases - " - "better use strftime (or even sprintf) instead"); -# endif -# if defined GNULIB_POSIXCHECK -# undef ctime_r -_GL_WARN_ON_USE (asctime, "ctime_r can overrun buffers in some cases - " - "better use strftime (or even sprintf) instead"); -# endif - -#endif diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/unistd--.h b/thirdparty/grub-2.04/grub-core/lib/gnulib/unistd--.h deleted file mode 100644 index 126885437..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/unistd--.h +++ /dev/null @@ -1,32 +0,0 @@ -/* Like unistd.h, but redefine some names to avoid glitches. - - Copyright (C) 2005, 2009-2019 Free Software Foundation, Inc. - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . */ - -/* Written by Paul Eggert. */ - -#include -#include "unistd-safer.h" - -#undef dup -#define dup dup_safer - -#undef pipe -#define pipe pipe_safer - -#if GNULIB_PIPE2_SAFER -# undef pipe2 -# define pipe2 pipe2_safer -#endif diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/unistd-safer.h b/thirdparty/grub-2.04/grub-core/lib/gnulib/unistd-safer.h deleted file mode 100644 index 8eebffcae..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/unistd-safer.h +++ /dev/null @@ -1,31 +0,0 @@ -/* Invoke unistd-like functions, but avoid some glitches. - - Copyright (C) 2001, 2003, 2005, 2009-2019 Free Software Foundation, Inc. - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . */ - -/* Written by Paul Eggert and Eric Blake. */ - -int dup_safer (int); -int fd_safer (int); -int pipe_safer (int[2]); - -#if GNULIB_FD_SAFER_FLAG -int dup_safer_flag (int, int); -int fd_safer_flag (int, int); -#endif - -#if GNULIB_PIPE2_SAFER -int pipe2_safer (int[2], int); -#endif diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/unistd.c b/thirdparty/grub-2.04/grub-core/lib/gnulib/unistd.c deleted file mode 100644 index 72bad1c05..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/unistd.c +++ /dev/null @@ -1,4 +0,0 @@ -#include -#define _GL_UNISTD_INLINE _GL_EXTERN_INLINE -#include "unistd.h" -typedef int dummy; diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/unistd.in.h b/thirdparty/grub-2.04/grub-core/lib/gnulib/unistd.in.h deleted file mode 100644 index a10ca28a5..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/unistd.in.h +++ /dev/null @@ -1,1668 +0,0 @@ -/* Substitute for and wrapper around . - Copyright (C) 2003-2019 Free Software Foundation, Inc. - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3, or (at your option) - any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, see . */ - -#ifndef _@GUARD_PREFIX@_UNISTD_H - -#if __GNUC__ >= 3 -@PRAGMA_SYSTEM_HEADER@ -#endif -@PRAGMA_COLUMNS@ - -#ifdef _GL_INCLUDING_UNISTD_H -/* Special invocation convention: - - On Mac OS X 10.3.9 we have a sequence of nested includes - -> -> -> - In this situation, the functions are not yet declared, therefore we cannot - provide the C++ aliases. */ - -#@INCLUDE_NEXT@ @NEXT_UNISTD_H@ - -#else -/* Normal invocation convention. */ - -/* The include_next requires a split double-inclusion guard. */ -#if @HAVE_UNISTD_H@ -# define _GL_INCLUDING_UNISTD_H -# @INCLUDE_NEXT@ @NEXT_UNISTD_H@ -# undef _GL_INCLUDING_UNISTD_H -#endif - -/* Get all possible declarations of gethostname(). */ -#if @GNULIB_GETHOSTNAME@ && @UNISTD_H_HAVE_WINSOCK2_H@ \ - && !defined _GL_INCLUDING_WINSOCK2_H -# define _GL_INCLUDING_WINSOCK2_H -# include -# undef _GL_INCLUDING_WINSOCK2_H -#endif - -#if !defined _@GUARD_PREFIX@_UNISTD_H && !defined _GL_INCLUDING_WINSOCK2_H -#define _@GUARD_PREFIX@_UNISTD_H - -/* NetBSD 5.0 mis-defines NULL. Also get size_t. */ -#include - -/* mingw doesn't define the SEEK_* or *_FILENO macros in . */ -/* MSVC declares 'unlink' in , not in . We must include - it before we #define unlink rpl_unlink. */ -/* Cygwin 1.7.1 declares symlinkat in , not in . */ -/* But avoid namespace pollution on glibc systems. */ -#if (!(defined SEEK_CUR && defined SEEK_END && defined SEEK_SET) \ - || ((@GNULIB_UNLINK@ || defined GNULIB_POSIXCHECK) \ - && (defined _WIN32 && ! defined __CYGWIN__)) \ - || ((@GNULIB_SYMLINKAT@ || defined GNULIB_POSIXCHECK) \ - && defined __CYGWIN__)) \ - && ! defined __GLIBC__ -# include -#endif - -/* Cygwin 1.7.1 declares unlinkat in , not in . */ -/* But avoid namespace pollution on glibc systems. */ -#if (@GNULIB_UNLINKAT@ || defined GNULIB_POSIXCHECK) && defined __CYGWIN__ \ - && ! defined __GLIBC__ -# include -#endif - -/* mingw fails to declare _exit in . */ -/* mingw, MSVC, BeOS, Haiku declare environ in , not in - . */ -/* Solaris declares getcwd not only in but also in . */ -/* OSF Tru64 Unix cannot see gnulib rpl_strtod when system is - included here. */ -/* But avoid namespace pollution on glibc systems. */ -#if !defined __GLIBC__ && !defined __osf__ -# define __need_system_stdlib_h -# include -# undef __need_system_stdlib_h -#endif - -/* Native Windows platforms declare chdir, getcwd, rmdir in - and/or , not in . - They also declare access(), chmod(), close(), dup(), dup2(), isatty(), - lseek(), read(), unlink(), write() in . */ -#if ((@GNULIB_CHDIR@ || @GNULIB_GETCWD@ || @GNULIB_RMDIR@ \ - || defined GNULIB_POSIXCHECK) \ - && (defined _WIN32 && ! defined __CYGWIN__)) -# include /* mingw32, mingw64 */ -# include /* mingw64, MSVC 9 */ -#elif (@GNULIB_CLOSE@ || @GNULIB_DUP@ || @GNULIB_DUP2@ || @GNULIB_ISATTY@ \ - || @GNULIB_LSEEK@ || @GNULIB_READ@ || @GNULIB_UNLINK@ || @GNULIB_WRITE@ \ - || defined GNULIB_POSIXCHECK) \ - && (defined _WIN32 && ! defined __CYGWIN__) -# include -#endif - -/* AIX and OSF/1 5.1 declare getdomainname in , not in . - NonStop Kernel declares gethostname in , not in . */ -/* But avoid namespace pollution on glibc systems. */ -#if ((@GNULIB_GETDOMAINNAME@ && (defined _AIX || defined __osf__)) \ - || (@GNULIB_GETHOSTNAME@ && defined __TANDEM)) \ - && !defined __GLIBC__ -# include -#endif - -/* MSVC defines off_t in . - May also define off_t to a 64-bit type on native Windows. */ -#if !@HAVE_UNISTD_H@ || @WINDOWS_64_BIT_OFF_T@ -/* Get off_t. */ -# include -#endif - -#if (@GNULIB_READ@ || @GNULIB_WRITE@ \ - || @GNULIB_READLINK@ || @GNULIB_READLINKAT@ \ - || @GNULIB_PREAD@ || @GNULIB_PWRITE@ || defined GNULIB_POSIXCHECK) -/* Get ssize_t. */ -# include -#endif - -/* The definitions of _GL_FUNCDECL_RPL etc. are copied here. */ - -/* The definition of _GL_ARG_NONNULL is copied here. */ - -/* The definition of _GL_WARN_ON_USE is copied here. */ - - -/* Get getopt(), optarg, optind, opterr, optopt. */ -#if @GNULIB_UNISTD_H_GETOPT@ && !defined _GL_SYSTEM_GETOPT -# include -# include -#endif - -#ifndef _GL_INLINE_HEADER_BEGIN - #error "Please include config.h first." -#endif -_GL_INLINE_HEADER_BEGIN -#ifndef _GL_UNISTD_INLINE -# define _GL_UNISTD_INLINE _GL_INLINE -#endif - -/* Hide some function declarations from . */ - -#if @GNULIB_GETHOSTNAME@ && @UNISTD_H_HAVE_WINSOCK2_H@ -# if !defined _@GUARD_PREFIX@_SYS_SOCKET_H -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# undef socket -# define socket socket_used_without_including_sys_socket_h -# undef connect -# define connect connect_used_without_including_sys_socket_h -# undef accept -# define accept accept_used_without_including_sys_socket_h -# undef bind -# define bind bind_used_without_including_sys_socket_h -# undef getpeername -# define getpeername getpeername_used_without_including_sys_socket_h -# undef getsockname -# define getsockname getsockname_used_without_including_sys_socket_h -# undef getsockopt -# define getsockopt getsockopt_used_without_including_sys_socket_h -# undef listen -# define listen listen_used_without_including_sys_socket_h -# undef recv -# define recv recv_used_without_including_sys_socket_h -# undef send -# define send send_used_without_including_sys_socket_h -# undef recvfrom -# define recvfrom recvfrom_used_without_including_sys_socket_h -# undef sendto -# define sendto sendto_used_without_including_sys_socket_h -# undef setsockopt -# define setsockopt setsockopt_used_without_including_sys_socket_h -# undef shutdown -# define shutdown shutdown_used_without_including_sys_socket_h -# else - _GL_WARN_ON_USE (socket, - "socket() used without including "); - _GL_WARN_ON_USE (connect, - "connect() used without including "); - _GL_WARN_ON_USE (accept, - "accept() used without including "); - _GL_WARN_ON_USE (bind, - "bind() used without including "); - _GL_WARN_ON_USE (getpeername, - "getpeername() used without including "); - _GL_WARN_ON_USE (getsockname, - "getsockname() used without including "); - _GL_WARN_ON_USE (getsockopt, - "getsockopt() used without including "); - _GL_WARN_ON_USE (listen, - "listen() used without including "); - _GL_WARN_ON_USE (recv, - "recv() used without including "); - _GL_WARN_ON_USE (send, - "send() used without including "); - _GL_WARN_ON_USE (recvfrom, - "recvfrom() used without including "); - _GL_WARN_ON_USE (sendto, - "sendto() used without including "); - _GL_WARN_ON_USE (setsockopt, - "setsockopt() used without including "); - _GL_WARN_ON_USE (shutdown, - "shutdown() used without including "); -# endif -# endif -# if !defined _@GUARD_PREFIX@_SYS_SELECT_H -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# undef select -# define select select_used_without_including_sys_select_h -# else - _GL_WARN_ON_USE (select, - "select() used without including "); -# endif -# endif -#endif - - -/* OS/2 EMX lacks these macros. */ -#ifndef STDIN_FILENO -# define STDIN_FILENO 0 -#endif -#ifndef STDOUT_FILENO -# define STDOUT_FILENO 1 -#endif -#ifndef STDERR_FILENO -# define STDERR_FILENO 2 -#endif - -/* Ensure *_OK macros exist. */ -#ifndef F_OK -# define F_OK 0 -# define X_OK 1 -# define W_OK 2 -# define R_OK 4 -#endif - - -/* Declare overridden functions. */ - - -#if defined GNULIB_POSIXCHECK -/* The access() function is a security risk. */ -_GL_WARN_ON_USE (access, "the access function is a security risk - " - "use the gnulib module faccessat instead"); -#endif - - -#if @GNULIB_CHDIR@ -_GL_CXXALIAS_SYS (chdir, int, (const char *file) _GL_ARG_NONNULL ((1))); -_GL_CXXALIASWARN (chdir); -#elif defined GNULIB_POSIXCHECK -# undef chdir -# if HAVE_RAW_DECL_CHDIR -_GL_WARN_ON_USE (chown, "chdir is not always in - " - "use gnulib module chdir for portability"); -# endif -#endif - - -#if @GNULIB_CHOWN@ -/* Change the owner of FILE to UID (if UID is not -1) and the group of FILE - to GID (if GID is not -1). Follow symbolic links. - Return 0 if successful, otherwise -1 and errno set. - See the POSIX:2008 specification - . */ -# if @REPLACE_DUP2@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# define dup2 rpl_dup2 -# endif -_GL_FUNCDECL_RPL (dup2, int, (int oldfd, int newfd)); -_GL_CXXALIAS_RPL (dup2, int, (int oldfd, int newfd)); -# else -# if !@HAVE_DUP2@ -_GL_FUNCDECL_SYS (dup2, int, (int oldfd, int newfd)); -# endif -_GL_CXXALIAS_SYS (dup2, int, (int oldfd, int newfd)); -# endif -_GL_CXXALIASWARN (dup2); -#elif defined GNULIB_POSIXCHECK -# undef dup2 -# if HAVE_RAW_DECL_DUP2 -_GL_WARN_ON_USE (dup2, "dup2 is unportable - " - "use gnulib module dup2 for portability"); -# endif -#endif - - -#if @GNULIB_DUP3@ -/* Copy the file descriptor OLDFD into file descriptor NEWFD, with the - specified flags. - The flags are a bitmask, possibly including O_CLOEXEC (defined in ) - and O_TEXT, O_BINARY (defined in "binary-io.h"). - Close NEWFD first if it is open. - Return newfd if successful, otherwise -1 and errno set. - See the Linux man page at - . */ -# if @HAVE_DUP3@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# define dup3 rpl_dup3 -# endif -_GL_FUNCDECL_RPL (dup3, int, (int oldfd, int newfd, int flags)); -_GL_CXXALIAS_RPL (dup3, int, (int oldfd, int newfd, int flags)); -# else -_GL_FUNCDECL_SYS (dup3, int, (int oldfd, int newfd, int flags)); -_GL_CXXALIAS_SYS (dup3, int, (int oldfd, int newfd, int flags)); -# endif -_GL_CXXALIASWARN (dup3); -#elif defined GNULIB_POSIXCHECK -# undef dup3 -# if HAVE_RAW_DECL_DUP3 -_GL_WARN_ON_USE (dup3, "dup3 is unportable - " - "use gnulib module dup3 for portability"); -# endif -#endif - - -#if @GNULIB_ENVIRON@ -# if defined __CYGWIN__ && !defined __i386__ -/* The 'environ' variable is defined in a DLL. Therefore its declaration needs - the '__declspec(dllimport)' attribute, but the system's lacks it. - This leads to a link error on 64-bit Cygwin when the option - -Wl,--disable-auto-import is in use. */ -_GL_EXTERN_C __declspec(dllimport) char **environ; -# endif -# if !@HAVE_DECL_ENVIRON@ -/* Set of environment variables and values. An array of strings of the form - "VARIABLE=VALUE", terminated with a NULL. */ -# if defined __APPLE__ && defined __MACH__ -# include -# if !TARGET_OS_IPHONE && !TARGET_IPHONE_SIMULATOR -# define _GL_USE_CRT_EXTERNS -# endif -# endif -# ifdef _GL_USE_CRT_EXTERNS -# include -# define environ (*_NSGetEnviron ()) -# else -# ifdef __cplusplus -extern "C" { -# endif -extern char **environ; -# ifdef __cplusplus -} -# endif -# endif -# endif -#elif defined GNULIB_POSIXCHECK -# if HAVE_RAW_DECL_ENVIRON -_GL_UNISTD_INLINE char *** -_GL_WARN_ON_USE_ATTRIBUTE ("environ is unportable - " - "use gnulib module environ for portability") -rpl_environ (void) -{ - return &environ; -} -# undef environ -# define environ (*rpl_environ ()) -# endif -#endif - - -#if @GNULIB_EUIDACCESS@ -/* Like access(), except that it uses the effective user id and group id of - the current process. */ -# if !@HAVE_EUIDACCESS@ -_GL_FUNCDECL_SYS (euidaccess, int, (const char *filename, int mode) - _GL_ARG_NONNULL ((1))); -# endif -_GL_CXXALIAS_SYS (euidaccess, int, (const char *filename, int mode)); -_GL_CXXALIASWARN (euidaccess); -# if defined GNULIB_POSIXCHECK -/* Like access(), this function is a security risk. */ -_GL_WARN_ON_USE (euidaccess, "the euidaccess function is a security risk - " - "use the gnulib module faccessat instead"); -# endif -#elif defined GNULIB_POSIXCHECK -# undef euidaccess -# if HAVE_RAW_DECL_EUIDACCESS -_GL_WARN_ON_USE (euidaccess, "euidaccess is unportable - " - "use gnulib module euidaccess for portability"); -# endif -#endif - - -#if @GNULIB_FACCESSAT@ -# if @REPLACE_FACCESSAT@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# undef faccessat -# define faccessat rpl_faccessat -# endif -_GL_FUNCDECL_RPL (faccessat, int, - (int fd, char const *name, int mode, int flag) - _GL_ARG_NONNULL ((2))); -_GL_CXXALIAS_RPL (faccessat, int, - (int fd, char const *name, int mode, int flag)); -# else -# if !@HAVE_FACCESSAT@ -_GL_FUNCDECL_SYS (faccessat, int, - (int fd, char const *file, int mode, int flag) - _GL_ARG_NONNULL ((2))); -# endif -_GL_CXXALIAS_SYS (faccessat, int, - (int fd, char const *file, int mode, int flag)); -# endif -_GL_CXXALIASWARN (faccessat); -#elif defined GNULIB_POSIXCHECK -# undef faccessat -# if HAVE_RAW_DECL_FACCESSAT -_GL_WARN_ON_USE (faccessat, "faccessat is not portable - " - "use gnulib module faccessat for portability"); -# endif -#endif - - -#if @GNULIB_FCHDIR@ -/* Change the process' current working directory to the directory on which - the given file descriptor is open. - Return 0 if successful, otherwise -1 and errno set. - See the POSIX:2008 specification - . */ -# if ! @HAVE_FCHDIR@ -_GL_FUNCDECL_SYS (fchdir, int, (int /*fd*/)); - -/* Gnulib internal hooks needed to maintain the fchdir metadata. */ -_GL_EXTERN_C int _gl_register_fd (int fd, const char *filename) - _GL_ARG_NONNULL ((2)); -_GL_EXTERN_C void _gl_unregister_fd (int fd); -_GL_EXTERN_C int _gl_register_dup (int oldfd, int newfd); -_GL_EXTERN_C const char *_gl_directory_name (int fd); - -# else -# if !@HAVE_DECL_FCHDIR@ -_GL_FUNCDECL_SYS (fchdir, int, (int /*fd*/)); -# endif -# endif -_GL_CXXALIAS_SYS (fchdir, int, (int /*fd*/)); -_GL_CXXALIASWARN (fchdir); -#elif defined GNULIB_POSIXCHECK -# undef fchdir -# if HAVE_RAW_DECL_FCHDIR -_GL_WARN_ON_USE (fchdir, "fchdir is unportable - " - "use gnulib module fchdir for portability"); -# endif -#endif - - -#if @GNULIB_FCHOWNAT@ -# if @REPLACE_FCHOWNAT@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# undef fchownat -# define fchownat rpl_fchownat -# endif -_GL_FUNCDECL_RPL (fchownat, int, (int fd, char const *file, - uid_t owner, gid_t group, int flag) - _GL_ARG_NONNULL ((2))); -_GL_CXXALIAS_RPL (fchownat, int, (int fd, char const *file, - uid_t owner, gid_t group, int flag)); -# else -# if !@HAVE_FCHOWNAT@ -_GL_FUNCDECL_SYS (fchownat, int, (int fd, char const *file, - uid_t owner, gid_t group, int flag) - _GL_ARG_NONNULL ((2))); -# endif -_GL_CXXALIAS_SYS (fchownat, int, (int fd, char const *file, - uid_t owner, gid_t group, int flag)); -# endif -_GL_CXXALIASWARN (fchownat); -#elif defined GNULIB_POSIXCHECK -# undef fchownat -# if HAVE_RAW_DECL_FCHOWNAT -_GL_WARN_ON_USE (fchownat, "fchownat is not portable - " - "use gnulib module openat for portability"); -# endif -#endif - - -#if @GNULIB_FDATASYNC@ -/* Synchronize changes to a file. - Return 0 if successful, otherwise -1 and errno set. - See POSIX:2008 specification - . */ -# if !@HAVE_FDATASYNC@ || !@HAVE_DECL_FDATASYNC@ -_GL_FUNCDECL_SYS (fdatasync, int, (int fd)); -# endif -_GL_CXXALIAS_SYS (fdatasync, int, (int fd)); -_GL_CXXALIASWARN (fdatasync); -#elif defined GNULIB_POSIXCHECK -# undef fdatasync -# if HAVE_RAW_DECL_FDATASYNC -_GL_WARN_ON_USE (fdatasync, "fdatasync is unportable - " - "use gnulib module fdatasync for portability"); -# endif -#endif - - -#if @GNULIB_FSYNC@ -/* Synchronize changes, including metadata, to a file. - Return 0 if successful, otherwise -1 and errno set. - See POSIX:2008 specification - . */ -# if !@HAVE_FSYNC@ -_GL_FUNCDECL_SYS (fsync, int, (int fd)); -# endif -_GL_CXXALIAS_SYS (fsync, int, (int fd)); -_GL_CXXALIASWARN (fsync); -#elif defined GNULIB_POSIXCHECK -# undef fsync -# if HAVE_RAW_DECL_FSYNC -_GL_WARN_ON_USE (fsync, "fsync is unportable - " - "use gnulib module fsync for portability"); -# endif -#endif - - -#if @GNULIB_FTRUNCATE@ -/* Change the size of the file to which FD is opened to become equal to LENGTH. - Return 0 if successful, otherwise -1 and errno set. - See the POSIX:2008 specification - . */ -# if @REPLACE_FTRUNCATE@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# undef ftruncate -# define ftruncate rpl_ftruncate -# endif -_GL_FUNCDECL_RPL (ftruncate, int, (int fd, off_t length)); -_GL_CXXALIAS_RPL (ftruncate, int, (int fd, off_t length)); -# else -# if !@HAVE_FTRUNCATE@ -_GL_FUNCDECL_SYS (ftruncate, int, (int fd, off_t length)); -# endif -_GL_CXXALIAS_SYS (ftruncate, int, (int fd, off_t length)); -# endif -_GL_CXXALIASWARN (ftruncate); -#elif defined GNULIB_POSIXCHECK -# undef ftruncate -# if HAVE_RAW_DECL_FTRUNCATE -_GL_WARN_ON_USE (ftruncate, "ftruncate is unportable - " - "use gnulib module ftruncate for portability"); -# endif -#endif - - -#if @GNULIB_GETCWD@ -/* Get the name of the current working directory, and put it in SIZE bytes - of BUF. - Return BUF if successful, or NULL if the directory couldn't be determined - or SIZE was too small. - See the POSIX:2008 specification - . - Additionally, the gnulib module 'getcwd' guarantees the following GNU - extension: If BUF is NULL, an array is allocated with 'malloc'; the array - is SIZE bytes long, unless SIZE == 0, in which case it is as big as - necessary. */ -# if @REPLACE_GETCWD@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# define getcwd rpl_getcwd -# endif -_GL_FUNCDECL_RPL (getcwd, char *, (char *buf, size_t size)); -_GL_CXXALIAS_RPL (getcwd, char *, (char *buf, size_t size)); -# else -/* Need to cast, because on mingw, the second parameter is - int size. */ -_GL_CXXALIAS_SYS_CAST (getcwd, char *, (char *buf, size_t size)); -# endif -_GL_CXXALIASWARN (getcwd); -#elif defined GNULIB_POSIXCHECK -# undef getcwd -# if HAVE_RAW_DECL_GETCWD -_GL_WARN_ON_USE (getcwd, "getcwd is unportable - " - "use gnulib module getcwd for portability"); -# endif -#endif - - -#if @GNULIB_GETDOMAINNAME@ -/* Return the NIS domain name of the machine. - WARNING! The NIS domain name is unrelated to the fully qualified host name - of the machine. It is also unrelated to email addresses. - WARNING! The NIS domain name is usually the empty string or "(none)" when - not using NIS. - - Put up to LEN bytes of the NIS domain name into NAME. - Null terminate it if the name is shorter than LEN. - If the NIS domain name is longer than LEN, set errno = EINVAL and return -1. - Return 0 if successful, otherwise set errno and return -1. */ -# if @REPLACE_GETDOMAINNAME@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# undef getdomainname -# define getdomainname rpl_getdomainname -# endif -_GL_FUNCDECL_RPL (getdomainname, int, (char *name, size_t len) - _GL_ARG_NONNULL ((1))); -_GL_CXXALIAS_RPL (getdomainname, int, (char *name, size_t len)); -# else -# if !@HAVE_DECL_GETDOMAINNAME@ -_GL_FUNCDECL_SYS (getdomainname, int, (char *name, size_t len) - _GL_ARG_NONNULL ((1))); -# endif -_GL_CXXALIAS_SYS (getdomainname, int, (char *name, size_t len)); -# endif -_GL_CXXALIASWARN (getdomainname); -#elif defined GNULIB_POSIXCHECK -# undef getdomainname -# if HAVE_RAW_DECL_GETDOMAINNAME -_GL_WARN_ON_USE (getdomainname, "getdomainname is unportable - " - "use gnulib module getdomainname for portability"); -# endif -#endif - - -#if @GNULIB_GETDTABLESIZE@ -/* Return the maximum number of file descriptors in the current process. - In POSIX, this is same as sysconf (_SC_OPEN_MAX). */ -# if @REPLACE_GETDTABLESIZE@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# undef getdtablesize -# define getdtablesize rpl_getdtablesize -# endif -_GL_FUNCDECL_RPL (getdtablesize, int, (void)); -_GL_CXXALIAS_RPL (getdtablesize, int, (void)); -# else -# if !@HAVE_GETDTABLESIZE@ -_GL_FUNCDECL_SYS (getdtablesize, int, (void)); -# endif -_GL_CXXALIAS_SYS (getdtablesize, int, (void)); -# endif -_GL_CXXALIASWARN (getdtablesize); -#elif defined GNULIB_POSIXCHECK -# undef getdtablesize -# if HAVE_RAW_DECL_GETDTABLESIZE -_GL_WARN_ON_USE (getdtablesize, "getdtablesize is unportable - " - "use gnulib module getdtablesize for portability"); -# endif -#endif - - -#if @GNULIB_GETGROUPS@ -/* Return the supplemental groups that the current process belongs to. - It is unspecified whether the effective group id is in the list. - If N is 0, return the group count; otherwise, N describes how many - entries are available in GROUPS. Return -1 and set errno if N is - not 0 and not large enough. Fails with ENOSYS on some systems. */ -# if @REPLACE_GETGROUPS@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# undef getgroups -# define getgroups rpl_getgroups -# endif -_GL_FUNCDECL_RPL (getgroups, int, (int n, gid_t *groups)); -_GL_CXXALIAS_RPL (getgroups, int, (int n, gid_t *groups)); -# else -# if !@HAVE_GETGROUPS@ -_GL_FUNCDECL_SYS (getgroups, int, (int n, gid_t *groups)); -# endif -_GL_CXXALIAS_SYS (getgroups, int, (int n, gid_t *groups)); -# endif -_GL_CXXALIASWARN (getgroups); -#elif defined GNULIB_POSIXCHECK -# undef getgroups -# if HAVE_RAW_DECL_GETGROUPS -_GL_WARN_ON_USE (getgroups, "getgroups is unportable - " - "use gnulib module getgroups for portability"); -# endif -#endif - - -#if @GNULIB_GETHOSTNAME@ -/* Return the standard host name of the machine. - WARNING! The host name may or may not be fully qualified. - - Put up to LEN bytes of the host name into NAME. - Null terminate it if the name is shorter than LEN. - If the host name is longer than LEN, set errno = EINVAL and return -1. - Return 0 if successful, otherwise set errno and return -1. */ -# if @UNISTD_H_HAVE_WINSOCK2_H@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# undef gethostname -# define gethostname rpl_gethostname -# endif -_GL_FUNCDECL_RPL (gethostname, int, (char *name, size_t len) - _GL_ARG_NONNULL ((1))); -_GL_CXXALIAS_RPL (gethostname, int, (char *name, size_t len)); -# else -# if !@HAVE_GETHOSTNAME@ -_GL_FUNCDECL_SYS (gethostname, int, (char *name, size_t len) - _GL_ARG_NONNULL ((1))); -# endif -/* Need to cast, because on Solaris 10 and OSF/1 5.1 systems, the second - parameter is - int len. */ -_GL_CXXALIAS_SYS_CAST (gethostname, int, (char *name, size_t len)); -# endif -_GL_CXXALIASWARN (gethostname); -#elif @UNISTD_H_HAVE_WINSOCK2_H@ -# undef gethostname -# define gethostname gethostname_used_without_requesting_gnulib_module_gethostname -#elif defined GNULIB_POSIXCHECK -# undef gethostname -# if HAVE_RAW_DECL_GETHOSTNAME -_GL_WARN_ON_USE (gethostname, "gethostname is unportable - " - "use gnulib module gethostname for portability"); -# endif -#endif - - -#if @GNULIB_GETLOGIN@ -/* Returns the user's login name, or NULL if it cannot be found. Upon error, - returns NULL with errno set. - - See . - - Most programs don't need to use this function, because the information is - available through environment variables: - ${LOGNAME-$USER} on Unix platforms, - $USERNAME on native Windows platforms. - */ -# if !@HAVE_DECL_GETLOGIN@ -_GL_FUNCDECL_SYS (getlogin, char *, (void)); -# endif -_GL_CXXALIAS_SYS (getlogin, char *, (void)); -_GL_CXXALIASWARN (getlogin); -#elif defined GNULIB_POSIXCHECK -# undef getlogin -# if HAVE_RAW_DECL_GETLOGIN -_GL_WARN_ON_USE (getlogin, "getlogin is unportable - " - "use gnulib module getlogin for portability"); -# endif -#endif - - -#if @GNULIB_GETLOGIN_R@ -/* Copies the user's login name to NAME. - The array pointed to by NAME has room for SIZE bytes. - - Returns 0 if successful. Upon error, an error number is returned, or -1 in - the case that the login name cannot be found but no specific error is - provided (this case is hopefully rare but is left open by the POSIX spec). - - See . - - Most programs don't need to use this function, because the information is - available through environment variables: - ${LOGNAME-$USER} on Unix platforms, - $USERNAME on native Windows platforms. - */ -# if @REPLACE_GETLOGIN_R@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# define getlogin_r rpl_getlogin_r -# endif -_GL_FUNCDECL_RPL (getlogin_r, int, (char *name, size_t size) - _GL_ARG_NONNULL ((1))); -_GL_CXXALIAS_RPL (getlogin_r, int, (char *name, size_t size)); -# else -# if !@HAVE_DECL_GETLOGIN_R@ -_GL_FUNCDECL_SYS (getlogin_r, int, (char *name, size_t size) - _GL_ARG_NONNULL ((1))); -# endif -/* Need to cast, because on Solaris 10 systems, the second argument is - int size. */ -_GL_CXXALIAS_SYS_CAST (getlogin_r, int, (char *name, size_t size)); -# endif -_GL_CXXALIASWARN (getlogin_r); -#elif defined GNULIB_POSIXCHECK -# undef getlogin_r -# if HAVE_RAW_DECL_GETLOGIN_R -_GL_WARN_ON_USE (getlogin_r, "getlogin_r is unportable - " - "use gnulib module getlogin_r for portability"); -# endif -#endif - - -#if @GNULIB_GETPAGESIZE@ -# if @REPLACE_GETPAGESIZE@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# define getpagesize rpl_getpagesize -# endif -_GL_FUNCDECL_RPL (getpagesize, int, (void)); -_GL_CXXALIAS_RPL (getpagesize, int, (void)); -# else -# if !@HAVE_GETPAGESIZE@ -# if !defined getpagesize -/* This is for POSIX systems. */ -# if !defined _gl_getpagesize && defined _SC_PAGESIZE -# if ! (defined __VMS && __VMS_VER < 70000000) -# define _gl_getpagesize() sysconf (_SC_PAGESIZE) -# endif -# endif -/* This is for older VMS. */ -# if !defined _gl_getpagesize && defined __VMS -# ifdef __ALPHA -# define _gl_getpagesize() 8192 -# else -# define _gl_getpagesize() 512 -# endif -# endif -/* This is for BeOS. */ -# if !defined _gl_getpagesize && @HAVE_OS_H@ -# include -# if defined B_PAGE_SIZE -# define _gl_getpagesize() B_PAGE_SIZE -# endif -# endif -/* This is for AmigaOS4.0. */ -# if !defined _gl_getpagesize && defined __amigaos4__ -# define _gl_getpagesize() 2048 -# endif -/* This is for older Unix systems. */ -# if !defined _gl_getpagesize && @HAVE_SYS_PARAM_H@ -# include -# ifdef EXEC_PAGESIZE -# define _gl_getpagesize() EXEC_PAGESIZE -# else -# ifdef NBPG -# ifndef CLSIZE -# define CLSIZE 1 -# endif -# define _gl_getpagesize() (NBPG * CLSIZE) -# else -# ifdef NBPC -# define _gl_getpagesize() NBPC -# endif -# endif -# endif -# endif -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# define getpagesize() _gl_getpagesize () -# else -# if !GNULIB_defined_getpagesize_function -_GL_UNISTD_INLINE int -getpagesize () -{ - return _gl_getpagesize (); -} -# define GNULIB_defined_getpagesize_function 1 -# endif -# endif -# endif -# endif -/* Need to cast, because on Cygwin 1.5.x systems, the return type is size_t. */ -_GL_CXXALIAS_SYS_CAST (getpagesize, int, (void)); -# endif -# if @HAVE_DECL_GETPAGESIZE@ -_GL_CXXALIASWARN (getpagesize); -# endif -#elif defined GNULIB_POSIXCHECK -# undef getpagesize -# if HAVE_RAW_DECL_GETPAGESIZE -_GL_WARN_ON_USE (getpagesize, "getpagesize is unportable - " - "use gnulib module getpagesize for portability"); -# endif -#endif - - -#if @GNULIB_GETPASS@ -/* Function getpass() from module 'getpass': - Read a password from /dev/tty or stdin. - Function getpass() from module 'getpass-gnu': - Read a password of arbitrary length from /dev/tty or stdin. */ -# if @REPLACE_GETPASS@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# undef getpass -# define getpass rpl_getpass -# endif -_GL_FUNCDECL_RPL (getpass, char *, (const char *prompt) - _GL_ARG_NONNULL ((1))); -_GL_CXXALIAS_RPL (getpass, char *, (const char *prompt)); -# else -# if !@HAVE_GETPASS@ -_GL_FUNCDECL_SYS (getpass, char *, (const char *prompt) - _GL_ARG_NONNULL ((1))); -# endif -_GL_CXXALIAS_SYS (getpass, char *, (const char *prompt)); -# endif -_GL_CXXALIASWARN (getpass); -#elif defined GNULIB_POSIXCHECK -# undef getpass -# if HAVE_RAW_DECL_GETPASS -_GL_WARN_ON_USE (getpass, "getpass is unportable - " - "use gnulib module getpass or getpass-gnu for portability"); -# endif -#endif - - -#if @GNULIB_GETUSERSHELL@ -/* Return the next valid login shell on the system, or NULL when the end of - the list has been reached. */ -# if !@HAVE_DECL_GETUSERSHELL@ -_GL_FUNCDECL_SYS (getusershell, char *, (void)); -# endif -_GL_CXXALIAS_SYS (getusershell, char *, (void)); -_GL_CXXALIASWARN (getusershell); -#elif defined GNULIB_POSIXCHECK -# undef getusershell -# if HAVE_RAW_DECL_GETUSERSHELL -_GL_WARN_ON_USE (getusershell, "getusershell is unportable - " - "use gnulib module getusershell for portability"); -# endif -#endif - -#if @GNULIB_GETUSERSHELL@ -/* Rewind to pointer that is advanced at each getusershell() call. */ -# if !@HAVE_DECL_GETUSERSHELL@ -_GL_FUNCDECL_SYS (setusershell, void, (void)); -# endif -_GL_CXXALIAS_SYS (setusershell, void, (void)); -_GL_CXXALIASWARN (setusershell); -#elif defined GNULIB_POSIXCHECK -# undef setusershell -# if HAVE_RAW_DECL_SETUSERSHELL -_GL_WARN_ON_USE (setusershell, "setusershell is unportable - " - "use gnulib module getusershell for portability"); -# endif -#endif - -#if @GNULIB_GETUSERSHELL@ -/* Free the pointer that is advanced at each getusershell() call and - associated resources. */ -# if !@HAVE_DECL_GETUSERSHELL@ -_GL_FUNCDECL_SYS (endusershell, void, (void)); -# endif -_GL_CXXALIAS_SYS (endusershell, void, (void)); -_GL_CXXALIASWARN (endusershell); -#elif defined GNULIB_POSIXCHECK -# undef endusershell -# if HAVE_RAW_DECL_ENDUSERSHELL -_GL_WARN_ON_USE (endusershell, "endusershell is unportable - " - "use gnulib module getusershell for portability"); -# endif -#endif - - -#if @GNULIB_GROUP_MEMBER@ -/* Determine whether group id is in calling user's group list. */ -# if !@HAVE_GROUP_MEMBER@ -_GL_FUNCDECL_SYS (group_member, int, (gid_t gid)); -# endif -_GL_CXXALIAS_SYS (group_member, int, (gid_t gid)); -_GL_CXXALIASWARN (group_member); -#elif defined GNULIB_POSIXCHECK -# undef group_member -# if HAVE_RAW_DECL_GROUP_MEMBER -_GL_WARN_ON_USE (group_member, "group_member is unportable - " - "use gnulib module group-member for portability"); -# endif -#endif - - -#if @GNULIB_ISATTY@ -# if @REPLACE_ISATTY@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# undef isatty -# define isatty rpl_isatty -# endif -_GL_FUNCDECL_RPL (isatty, int, (int fd)); -_GL_CXXALIAS_RPL (isatty, int, (int fd)); -# else -_GL_CXXALIAS_SYS (isatty, int, (int fd)); -# endif -_GL_CXXALIASWARN (isatty); -#elif defined GNULIB_POSIXCHECK -# undef isatty -# if HAVE_RAW_DECL_ISATTY -_GL_WARN_ON_USE (isatty, "isatty has portability problems on native Windows - " - "use gnulib module isatty for portability"); -# endif -#endif - - -#if @GNULIB_LCHOWN@ -/* Change the owner of FILE to UID (if UID is not -1) and the group of FILE - to GID (if GID is not -1). Do not follow symbolic links. - Return 0 if successful, otherwise -1 and errno set. - See the POSIX:2008 specification - . */ -# if @REPLACE_LCHOWN@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# undef lchown -# define lchown rpl_lchown -# endif -_GL_FUNCDECL_RPL (lchown, int, (char const *file, uid_t owner, gid_t group) - _GL_ARG_NONNULL ((1))); -_GL_CXXALIAS_RPL (lchown, int, (char const *file, uid_t owner, gid_t group)); -# else -# if !@HAVE_LCHOWN@ -_GL_FUNCDECL_SYS (lchown, int, (char const *file, uid_t owner, gid_t group) - _GL_ARG_NONNULL ((1))); -# endif -_GL_CXXALIAS_SYS (lchown, int, (char const *file, uid_t owner, gid_t group)); -# endif -_GL_CXXALIASWARN (lchown); -#elif defined GNULIB_POSIXCHECK -# undef lchown -# if HAVE_RAW_DECL_LCHOWN -_GL_WARN_ON_USE (lchown, "lchown is unportable to pre-POSIX.1-2001 systems - " - "use gnulib module lchown for portability"); -# endif -#endif - - -#if @GNULIB_LINK@ -/* Create a new hard link for an existing file. - Return 0 if successful, otherwise -1 and errno set. - See POSIX:2008 specification - . */ -# if @REPLACE_LINK@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# define link rpl_link -# endif -_GL_FUNCDECL_RPL (link, int, (const char *path1, const char *path2) - _GL_ARG_NONNULL ((1, 2))); -_GL_CXXALIAS_RPL (link, int, (const char *path1, const char *path2)); -# else -# if !@HAVE_LINK@ -_GL_FUNCDECL_SYS (link, int, (const char *path1, const char *path2) - _GL_ARG_NONNULL ((1, 2))); -# endif -_GL_CXXALIAS_SYS (link, int, (const char *path1, const char *path2)); -# endif -_GL_CXXALIASWARN (link); -#elif defined GNULIB_POSIXCHECK -# undef link -# if HAVE_RAW_DECL_LINK -_GL_WARN_ON_USE (link, "link is unportable - " - "use gnulib module link for portability"); -# endif -#endif - - -#if @GNULIB_LINKAT@ -/* Create a new hard link for an existing file, relative to two - directories. FLAG controls whether symlinks are followed. - Return 0 if successful, otherwise -1 and errno set. */ -# if @REPLACE_LINKAT@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# undef linkat -# define linkat rpl_linkat -# endif -_GL_FUNCDECL_RPL (linkat, int, - (int fd1, const char *path1, int fd2, const char *path2, - int flag) - _GL_ARG_NONNULL ((2, 4))); -_GL_CXXALIAS_RPL (linkat, int, - (int fd1, const char *path1, int fd2, const char *path2, - int flag)); -# else -# if !@HAVE_LINKAT@ -_GL_FUNCDECL_SYS (linkat, int, - (int fd1, const char *path1, int fd2, const char *path2, - int flag) - _GL_ARG_NONNULL ((2, 4))); -# endif -_GL_CXXALIAS_SYS (linkat, int, - (int fd1, const char *path1, int fd2, const char *path2, - int flag)); -# endif -_GL_CXXALIASWARN (linkat); -#elif defined GNULIB_POSIXCHECK -# undef linkat -# if HAVE_RAW_DECL_LINKAT -_GL_WARN_ON_USE (linkat, "linkat is unportable - " - "use gnulib module linkat for portability"); -# endif -#endif - - -#if @GNULIB_LSEEK@ -/* Set the offset of FD relative to SEEK_SET, SEEK_CUR, or SEEK_END. - Return the new offset if successful, otherwise -1 and errno set. - See the POSIX:2008 specification - . */ -# if @REPLACE_LSEEK@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# define lseek rpl_lseek -# endif -_GL_FUNCDECL_RPL (lseek, off_t, (int fd, off_t offset, int whence)); -_GL_CXXALIAS_RPL (lseek, off_t, (int fd, off_t offset, int whence)); -# else -_GL_CXXALIAS_SYS (lseek, off_t, (int fd, off_t offset, int whence)); -# endif -_GL_CXXALIASWARN (lseek); -#elif defined GNULIB_POSIXCHECK -# undef lseek -# if HAVE_RAW_DECL_LSEEK -_GL_WARN_ON_USE (lseek, "lseek does not fail with ESPIPE on pipes on some " - "systems - use gnulib module lseek for portability"); -# endif -#endif - - -#if @GNULIB_PIPE@ -/* Create a pipe, defaulting to O_BINARY mode. - Store the read-end as fd[0] and the write-end as fd[1]. - Return 0 upon success, or -1 with errno set upon failure. */ -# if !@HAVE_PIPE@ -_GL_FUNCDECL_SYS (pipe, int, (int fd[2]) _GL_ARG_NONNULL ((1))); -# endif -_GL_CXXALIAS_SYS (pipe, int, (int fd[2])); -_GL_CXXALIASWARN (pipe); -#elif defined GNULIB_POSIXCHECK -# undef pipe -# if HAVE_RAW_DECL_PIPE -_GL_WARN_ON_USE (pipe, "pipe is unportable - " - "use gnulib module pipe-posix for portability"); -# endif -#endif - - -#if @GNULIB_PIPE2@ -/* Create a pipe, applying the given flags when opening the read-end of the - pipe and the write-end of the pipe. - The flags are a bitmask, possibly including O_CLOEXEC (defined in ) - and O_TEXT, O_BINARY (defined in "binary-io.h"). - Store the read-end as fd[0] and the write-end as fd[1]. - Return 0 upon success, or -1 with errno set upon failure. - See also the Linux man page at - . */ -# if @HAVE_PIPE2@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# define pipe2 rpl_pipe2 -# endif -_GL_FUNCDECL_RPL (pipe2, int, (int fd[2], int flags) _GL_ARG_NONNULL ((1))); -_GL_CXXALIAS_RPL (pipe2, int, (int fd[2], int flags)); -# else -_GL_FUNCDECL_SYS (pipe2, int, (int fd[2], int flags) _GL_ARG_NONNULL ((1))); -_GL_CXXALIAS_SYS (pipe2, int, (int fd[2], int flags)); -# endif -_GL_CXXALIASWARN (pipe2); -#elif defined GNULIB_POSIXCHECK -# undef pipe2 -# if HAVE_RAW_DECL_PIPE2 -_GL_WARN_ON_USE (pipe2, "pipe2 is unportable - " - "use gnulib module pipe2 for portability"); -# endif -#endif - - -#if @GNULIB_PREAD@ -/* Read at most BUFSIZE bytes from FD into BUF, starting at OFFSET. - Return the number of bytes placed into BUF if successful, otherwise - set errno and return -1. 0 indicates EOF. - See the POSIX:2008 specification - . */ -# if @REPLACE_PREAD@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# undef pread -# define pread rpl_pread -# endif -_GL_FUNCDECL_RPL (pread, ssize_t, - (int fd, void *buf, size_t bufsize, off_t offset) - _GL_ARG_NONNULL ((2))); -_GL_CXXALIAS_RPL (pread, ssize_t, - (int fd, void *buf, size_t bufsize, off_t offset)); -# else -# if !@HAVE_PREAD@ -_GL_FUNCDECL_SYS (pread, ssize_t, - (int fd, void *buf, size_t bufsize, off_t offset) - _GL_ARG_NONNULL ((2))); -# endif -_GL_CXXALIAS_SYS (pread, ssize_t, - (int fd, void *buf, size_t bufsize, off_t offset)); -# endif -_GL_CXXALIASWARN (pread); -#elif defined GNULIB_POSIXCHECK -# undef pread -# if HAVE_RAW_DECL_PREAD -_GL_WARN_ON_USE (pread, "pread is unportable - " - "use gnulib module pread for portability"); -# endif -#endif - - -#if @GNULIB_PWRITE@ -/* Write at most BUFSIZE bytes from BUF into FD, starting at OFFSET. - Return the number of bytes written if successful, otherwise - set errno and return -1. 0 indicates nothing written. See the - POSIX:2008 specification - . */ -# if @REPLACE_PWRITE@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# undef pwrite -# define pwrite rpl_pwrite -# endif -_GL_FUNCDECL_RPL (pwrite, ssize_t, - (int fd, const void *buf, size_t bufsize, off_t offset) - _GL_ARG_NONNULL ((2))); -_GL_CXXALIAS_RPL (pwrite, ssize_t, - (int fd, const void *buf, size_t bufsize, off_t offset)); -# else -# if !@HAVE_PWRITE@ -_GL_FUNCDECL_SYS (pwrite, ssize_t, - (int fd, const void *buf, size_t bufsize, off_t offset) - _GL_ARG_NONNULL ((2))); -# endif -_GL_CXXALIAS_SYS (pwrite, ssize_t, - (int fd, const void *buf, size_t bufsize, off_t offset)); -# endif -_GL_CXXALIASWARN (pwrite); -#elif defined GNULIB_POSIXCHECK -# undef pwrite -# if HAVE_RAW_DECL_PWRITE -_GL_WARN_ON_USE (pwrite, "pwrite is unportable - " - "use gnulib module pwrite for portability"); -# endif -#endif - - -#if @GNULIB_READ@ -/* Read up to COUNT bytes from file descriptor FD into the buffer starting - at BUF. See the POSIX:2008 specification - . */ -# if @REPLACE_READ@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# undef read -# define read rpl_read -# endif -_GL_FUNCDECL_RPL (read, ssize_t, (int fd, void *buf, size_t count) - _GL_ARG_NONNULL ((2))); -_GL_CXXALIAS_RPL (read, ssize_t, (int fd, void *buf, size_t count)); -# else -/* Need to cast, because on mingw, the third parameter is - unsigned int count - and the return type is 'int'. */ -_GL_CXXALIAS_SYS_CAST (read, ssize_t, (int fd, void *buf, size_t count)); -# endif -_GL_CXXALIASWARN (read); -#endif - - -#if @GNULIB_READLINK@ -/* Read the contents of the symbolic link FILE and place the first BUFSIZE - bytes of it into BUF. Return the number of bytes placed into BUF if - successful, otherwise -1 and errno set. - See the POSIX:2008 specification - . */ -# if @REPLACE_READLINK@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# define readlink rpl_readlink -# endif -_GL_FUNCDECL_RPL (readlink, ssize_t, - (const char *file, char *buf, size_t bufsize) - _GL_ARG_NONNULL ((1, 2))); -_GL_CXXALIAS_RPL (readlink, ssize_t, - (const char *file, char *buf, size_t bufsize)); -# else -# if !@HAVE_READLINK@ -_GL_FUNCDECL_SYS (readlink, ssize_t, - (const char *file, char *buf, size_t bufsize) - _GL_ARG_NONNULL ((1, 2))); -# endif -_GL_CXXALIAS_SYS (readlink, ssize_t, - (const char *file, char *buf, size_t bufsize)); -# endif -_GL_CXXALIASWARN (readlink); -#elif defined GNULIB_POSIXCHECK -# undef readlink -# if HAVE_RAW_DECL_READLINK -_GL_WARN_ON_USE (readlink, "readlink is unportable - " - "use gnulib module readlink for portability"); -# endif -#endif - - -#if @GNULIB_READLINKAT@ -# if @REPLACE_READLINKAT@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# define readlinkat rpl_readlinkat -# endif -_GL_FUNCDECL_RPL (readlinkat, ssize_t, - (int fd, char const *file, char *buf, size_t len) - _GL_ARG_NONNULL ((2, 3))); -_GL_CXXALIAS_RPL (readlinkat, ssize_t, - (int fd, char const *file, char *buf, size_t len)); -# else -# if !@HAVE_READLINKAT@ -_GL_FUNCDECL_SYS (readlinkat, ssize_t, - (int fd, char const *file, char *buf, size_t len) - _GL_ARG_NONNULL ((2, 3))); -# endif -_GL_CXXALIAS_SYS (readlinkat, ssize_t, - (int fd, char const *file, char *buf, size_t len)); -# endif -_GL_CXXALIASWARN (readlinkat); -#elif defined GNULIB_POSIXCHECK -# undef readlinkat -# if HAVE_RAW_DECL_READLINKAT -_GL_WARN_ON_USE (readlinkat, "readlinkat is not portable - " - "use gnulib module readlinkat for portability"); -# endif -#endif - - -#if @GNULIB_RMDIR@ -/* Remove the directory DIR. */ -# if @REPLACE_RMDIR@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# define rmdir rpl_rmdir -# endif -_GL_FUNCDECL_RPL (rmdir, int, (char const *name) _GL_ARG_NONNULL ((1))); -_GL_CXXALIAS_RPL (rmdir, int, (char const *name)); -# else -_GL_CXXALIAS_SYS (rmdir, int, (char const *name)); -# endif -_GL_CXXALIASWARN (rmdir); -#elif defined GNULIB_POSIXCHECK -# undef rmdir -# if HAVE_RAW_DECL_RMDIR -_GL_WARN_ON_USE (rmdir, "rmdir is unportable - " - "use gnulib module rmdir for portability"); -# endif -#endif - - -#if @GNULIB_SETHOSTNAME@ -/* Set the host name of the machine. - The host name may or may not be fully qualified. - - Put LEN bytes of NAME into the host name. - Return 0 if successful, otherwise, set errno and return -1. - - Platforms with no ability to set the hostname return -1 and set - errno = ENOSYS. */ -# if !@HAVE_SETHOSTNAME@ || !@HAVE_DECL_SETHOSTNAME@ -_GL_FUNCDECL_SYS (sethostname, int, (const char *name, size_t len) - _GL_ARG_NONNULL ((1))); -# endif -/* Need to cast, because on Solaris 11 2011-10, Mac OS X 10.5, IRIX 6.5 - and FreeBSD 6.4 the second parameter is int. On Solaris 11 - 2011-10, the first parameter is not const. */ -_GL_CXXALIAS_SYS_CAST (sethostname, int, (const char *name, size_t len)); -_GL_CXXALIASWARN (sethostname); -#elif defined GNULIB_POSIXCHECK -# undef sethostname -# if HAVE_RAW_DECL_SETHOSTNAME -_GL_WARN_ON_USE (sethostname, "sethostname is unportable - " - "use gnulib module sethostname for portability"); -# endif -#endif - - -#if @GNULIB_SLEEP@ -/* Pause the execution of the current thread for N seconds. - Returns the number of seconds left to sleep. - See the POSIX:2008 specification - . */ -# if @REPLACE_SLEEP@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# undef sleep -# define sleep rpl_sleep -# endif -_GL_FUNCDECL_RPL (sleep, unsigned int, (unsigned int n)); -_GL_CXXALIAS_RPL (sleep, unsigned int, (unsigned int n)); -# else -# if !@HAVE_SLEEP@ -_GL_FUNCDECL_SYS (sleep, unsigned int, (unsigned int n)); -# endif -_GL_CXXALIAS_SYS (sleep, unsigned int, (unsigned int n)); -# endif -_GL_CXXALIASWARN (sleep); -#elif defined GNULIB_POSIXCHECK -# undef sleep -# if HAVE_RAW_DECL_SLEEP -_GL_WARN_ON_USE (sleep, "sleep is unportable - " - "use gnulib module sleep for portability"); -# endif -#endif - - -#if @GNULIB_SYMLINK@ -# if @REPLACE_SYMLINK@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# undef symlink -# define symlink rpl_symlink -# endif -_GL_FUNCDECL_RPL (symlink, int, (char const *contents, char const *file) - _GL_ARG_NONNULL ((1, 2))); -_GL_CXXALIAS_RPL (symlink, int, (char const *contents, char const *file)); -# else -# if !@HAVE_SYMLINK@ -_GL_FUNCDECL_SYS (symlink, int, (char const *contents, char const *file) - _GL_ARG_NONNULL ((1, 2))); -# endif -_GL_CXXALIAS_SYS (symlink, int, (char const *contents, char const *file)); -# endif -_GL_CXXALIASWARN (symlink); -#elif defined GNULIB_POSIXCHECK -# undef symlink -# if HAVE_RAW_DECL_SYMLINK -_GL_WARN_ON_USE (symlink, "symlink is not portable - " - "use gnulib module symlink for portability"); -# endif -#endif - - -#if @GNULIB_SYMLINKAT@ -# if @REPLACE_SYMLINKAT@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# undef symlinkat -# define symlinkat rpl_symlinkat -# endif -_GL_FUNCDECL_RPL (symlinkat, int, - (char const *contents, int fd, char const *file) - _GL_ARG_NONNULL ((1, 3))); -_GL_CXXALIAS_RPL (symlinkat, int, - (char const *contents, int fd, char const *file)); -# else -# if !@HAVE_SYMLINKAT@ -_GL_FUNCDECL_SYS (symlinkat, int, - (char const *contents, int fd, char const *file) - _GL_ARG_NONNULL ((1, 3))); -# endif -_GL_CXXALIAS_SYS (symlinkat, int, - (char const *contents, int fd, char const *file)); -# endif -_GL_CXXALIASWARN (symlinkat); -#elif defined GNULIB_POSIXCHECK -# undef symlinkat -# if HAVE_RAW_DECL_SYMLINKAT -_GL_WARN_ON_USE (symlinkat, "symlinkat is not portable - " - "use gnulib module symlinkat for portability"); -# endif -#endif - - -#if @GNULIB_TRUNCATE@ -/* Change the size of the file designated by FILENAME to become equal to LENGTH. - Return 0 if successful, otherwise -1 and errno set. - See the POSIX:2008 specification - . */ -# if @REPLACE_TRUNCATE@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# undef truncate -# define truncate rpl_truncate -# endif -_GL_FUNCDECL_RPL (truncate, int, (const char *filename, off_t length) - _GL_ARG_NONNULL ((1))); -_GL_CXXALIAS_RPL (truncate, int, (const char *filename, off_t length)); -# else -# if !@HAVE_DECL_TRUNCATE@ -_GL_FUNCDECL_SYS (truncate, int, (const char *filename, off_t length) - _GL_ARG_NONNULL ((1))); -# endif -_GL_CXXALIAS_SYS (truncate, int, (const char *filename, off_t length)); -# endif -_GL_CXXALIASWARN (truncate); -#elif defined GNULIB_POSIXCHECK -# undef truncate -# if HAVE_RAW_DECL_TRUNCATE -_GL_WARN_ON_USE (truncate, "truncate is unportable - " - "use gnulib module truncate for portability"); -# endif -#endif - - -#if @GNULIB_TTYNAME_R@ -/* Store at most BUFLEN characters of the pathname of the terminal FD is - open on in BUF. Return 0 on success, otherwise an error number. */ -# if @REPLACE_TTYNAME_R@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# undef ttyname_r -# define ttyname_r rpl_ttyname_r -# endif -_GL_FUNCDECL_RPL (ttyname_r, int, - (int fd, char *buf, size_t buflen) _GL_ARG_NONNULL ((2))); -_GL_CXXALIAS_RPL (ttyname_r, int, - (int fd, char *buf, size_t buflen)); -# else -# if !@HAVE_DECL_TTYNAME_R@ -_GL_FUNCDECL_SYS (ttyname_r, int, - (int fd, char *buf, size_t buflen) _GL_ARG_NONNULL ((2))); -# endif -_GL_CXXALIAS_SYS (ttyname_r, int, - (int fd, char *buf, size_t buflen)); -# endif -_GL_CXXALIASWARN (ttyname_r); -#elif defined GNULIB_POSIXCHECK -# undef ttyname_r -# if HAVE_RAW_DECL_TTYNAME_R -_GL_WARN_ON_USE (ttyname_r, "ttyname_r is not portable - " - "use gnulib module ttyname_r for portability"); -# endif -#endif - - -#if @GNULIB_UNLINK@ -# if @REPLACE_UNLINK@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# undef unlink -# define unlink rpl_unlink -# endif -_GL_FUNCDECL_RPL (unlink, int, (char const *file) _GL_ARG_NONNULL ((1))); -_GL_CXXALIAS_RPL (unlink, int, (char const *file)); -# else -_GL_CXXALIAS_SYS (unlink, int, (char const *file)); -# endif -_GL_CXXALIASWARN (unlink); -#elif defined GNULIB_POSIXCHECK -# undef unlink -# if HAVE_RAW_DECL_UNLINK -_GL_WARN_ON_USE (unlink, "unlink is not portable - " - "use gnulib module unlink for portability"); -# endif -#endif - - -#if @GNULIB_UNLINKAT@ -# if @REPLACE_UNLINKAT@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# undef unlinkat -# define unlinkat rpl_unlinkat -# endif -_GL_FUNCDECL_RPL (unlinkat, int, (int fd, char const *file, int flag) - _GL_ARG_NONNULL ((2))); -_GL_CXXALIAS_RPL (unlinkat, int, (int fd, char const *file, int flag)); -# else -# if !@HAVE_UNLINKAT@ -_GL_FUNCDECL_SYS (unlinkat, int, (int fd, char const *file, int flag) - _GL_ARG_NONNULL ((2))); -# endif -_GL_CXXALIAS_SYS (unlinkat, int, (int fd, char const *file, int flag)); -# endif -_GL_CXXALIASWARN (unlinkat); -#elif defined GNULIB_POSIXCHECK -# undef unlinkat -# if HAVE_RAW_DECL_UNLINKAT -_GL_WARN_ON_USE (unlinkat, "unlinkat is not portable - " - "use gnulib module openat for portability"); -# endif -#endif - - -#if @GNULIB_USLEEP@ -/* Pause the execution of the current thread for N microseconds. - Returns 0 on completion, or -1 on range error. - See the POSIX:2001 specification - . */ -# if @REPLACE_USLEEP@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# undef usleep -# define usleep rpl_usleep -# endif -_GL_FUNCDECL_RPL (usleep, int, (useconds_t n)); -_GL_CXXALIAS_RPL (usleep, int, (useconds_t n)); -# else -# if !@HAVE_USLEEP@ -_GL_FUNCDECL_SYS (usleep, int, (useconds_t n)); -# endif -_GL_CXXALIAS_SYS (usleep, int, (useconds_t n)); -# endif -_GL_CXXALIASWARN (usleep); -#elif defined GNULIB_POSIXCHECK -# undef usleep -# if HAVE_RAW_DECL_USLEEP -_GL_WARN_ON_USE (usleep, "usleep is unportable - " - "use gnulib module usleep for portability"); -# endif -#endif - - -#if @GNULIB_WRITE@ -/* Write up to COUNT bytes starting at BUF to file descriptor FD. - See the POSIX:2008 specification - . */ -# if @REPLACE_WRITE@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# undef write -# define write rpl_write -# endif -_GL_FUNCDECL_RPL (write, ssize_t, (int fd, const void *buf, size_t count) - _GL_ARG_NONNULL ((2))); -_GL_CXXALIAS_RPL (write, ssize_t, (int fd, const void *buf, size_t count)); -# else -/* Need to cast, because on mingw, the third parameter is - unsigned int count - and the return type is 'int'. */ -_GL_CXXALIAS_SYS_CAST (write, ssize_t, (int fd, const void *buf, size_t count)); -# endif -_GL_CXXALIASWARN (write); -#endif - -_GL_INLINE_HEADER_END - -#endif /* _@GUARD_PREFIX@_UNISTD_H */ -#endif /* _GL_INCLUDING_UNISTD_H */ -#endif /* _@GUARD_PREFIX@_UNISTD_H */ diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/unitypes.in.h b/thirdparty/grub-2.04/grub-core/lib/gnulib/unitypes.in.h deleted file mode 100644 index 631654bdb..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/unitypes.in.h +++ /dev/null @@ -1,46 +0,0 @@ -/* Elementary types and macros for the GNU UniString library. - Copyright (C) 2002, 2005-2006, 2009-2019 Free Software Foundation, Inc. - - This program is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published - by the Free Software Foundation; either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . */ - -#ifndef _UNITYPES_H -#define _UNITYPES_H - -/* Get uint8_t, uint16_t, uint32_t. */ -#include - -/* Type representing a Unicode character. */ -typedef uint32_t ucs4_t; - -/* Attribute of a function whose result depends only on the arguments - (not pointers!) and which has no side effects. */ -#ifndef _UC_ATTRIBUTE_CONST -# if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 95) -# define _UC_ATTRIBUTE_CONST __attribute__ ((__const__)) -# else -# define _UC_ATTRIBUTE_CONST -# endif -#endif - -/* Attribute of a function whose result depends only on the arguments - (possibly pointers) and global memory, and which has no side effects. */ -#ifndef _UC_ATTRIBUTE_PURE -# if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 96) -# define _UC_ATTRIBUTE_PURE __attribute__ ((__pure__)) -# else -# define _UC_ATTRIBUTE_PURE -# endif -#endif - -#endif /* _UNITYPES_H */ diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/uniwidth.in.h b/thirdparty/grub-2.04/grub-core/lib/gnulib/uniwidth.in.h deleted file mode 100644 index 80c5eeab3..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/uniwidth.in.h +++ /dev/null @@ -1,72 +0,0 @@ -/* Display width functions. - Copyright (C) 2001-2002, 2005, 2007, 2009-2019 Free Software Foundation, - Inc. - - This program is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published - by the Free Software Foundation; either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . */ - -#ifndef _UNIWIDTH_H -#define _UNIWIDTH_H - -#include "unitypes.h" - -/* Get size_t. */ -#include - -/* Get locale_charset() declaration. */ -#include "localcharset.h" - -#ifdef __cplusplus -extern "C" { -#endif - - -/* Display width. */ - -/* These functions are locale dependent. The encoding argument identifies - the encoding (e.g. "ISO-8859-2" for Polish). */ - -/* Determine number of column positions required for UC. */ -extern int - uc_width (ucs4_t uc, const char *encoding) - _UC_ATTRIBUTE_PURE; - -/* Determine number of column positions required for first N units - (or fewer if S ends before this) in S. */ -extern int - u8_width (const uint8_t *s, size_t n, const char *encoding) - _UC_ATTRIBUTE_PURE; -extern int - u16_width (const uint16_t *s, size_t n, const char *encoding) - _UC_ATTRIBUTE_PURE; -extern int - u32_width (const uint32_t *s, size_t n, const char *encoding) - _UC_ATTRIBUTE_PURE; - -/* Determine number of column positions required for S. */ -extern int - u8_strwidth (const uint8_t *s, const char *encoding) - _UC_ATTRIBUTE_PURE; -extern int - u16_strwidth (const uint16_t *s, const char *encoding) - _UC_ATTRIBUTE_PURE; -extern int - u32_strwidth (const uint32_t *s, const char *encoding) - _UC_ATTRIBUTE_PURE; - - -#ifdef __cplusplus -} -#endif - -#endif /* _UNIWIDTH_H */ diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/uniwidth/cjk.h b/thirdparty/grub-2.04/grub-core/lib/gnulib/uniwidth/cjk.h deleted file mode 100644 index 9870422ca..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/uniwidth/cjk.h +++ /dev/null @@ -1,37 +0,0 @@ -/* Test for CJK encoding. - Copyright (C) 2001-2002, 2005-2007, 2009-2019 Free Software Foundation, Inc. - Written by Bruno Haible , 2002. - - This program is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published - by the Free Software Foundation; either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . */ - -#include "streq.h" - -static int -is_cjk_encoding (const char *encoding) -{ - if (0 - /* Legacy Japanese encodings */ - || STREQ_OPT (encoding, "EUC-JP", 'E', 'U', 'C', '-', 'J', 'P', 0, 0, 0) - /* Legacy Chinese encodings */ - || STREQ_OPT (encoding, "GB2312", 'G', 'B', '2', '3', '1', '2', 0, 0, 0) - || STREQ_OPT (encoding, "GBK", 'G', 'B', 'K', 0, 0, 0, 0, 0, 0) - || STREQ_OPT (encoding, "EUC-TW", 'E', 'U', 'C', '-', 'T', 'W', 0, 0, 0) - || STREQ_OPT (encoding, "BIG5", 'B', 'I', 'G', '5', 0, 0, 0, 0, 0) - /* Legacy Korean encodings */ - || STREQ_OPT (encoding, "EUC-KR", 'E', 'U', 'C', '-', 'K', 'R', 0, 0, 0) - || STREQ_OPT (encoding, "CP949", 'C', 'P', '9', '4', '9', 0, 0, 0, 0) - || STREQ_OPT (encoding, "JOHAB", 'J', 'O', 'H', 'A', 'B', 0, 0, 0, 0)) - return 1; - return 0; -} diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/uniwidth/width.c b/thirdparty/grub-2.04/grub-core/lib/gnulib/uniwidth/width.c deleted file mode 100644 index a7f59b18e..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/uniwidth/width.c +++ /dev/null @@ -1,468 +0,0 @@ -/* Determine display width of Unicode character. - Copyright (C) 2001-2002, 2006-2019 Free Software Foundation, Inc. - Written by Bruno Haible , 2002. - - This program is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published - by the Free Software Foundation; either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . */ - -#include - -/* Specification. */ -#include "uniwidth.h" - -#include "cjk.h" - -/* - * Non-spacing attribute table. - * Consists of: - * - Non-spacing characters; generated from PropList.txt or - * "grep '^[^;]*;[^;]*;[^;]*;[^;]*;NSM;' UnicodeData.txt" - * - Format control characters; generated from - * "grep '^[^;]*;[^;]*;Cf;' UnicodeData.txt" - * - Zero width characters; generated from - * "grep '^[^;]*;ZERO WIDTH ' UnicodeData.txt" - */ -static const unsigned char nonspacing_table_data[38*64] = { - /* 0x0000-0x01ff */ - 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, /* 0x0000-0x003f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, /* 0x0040-0x007f */ - 0xff, 0xff, 0xff, 0xff, 0x00, 0x20, 0x00, 0x00, /* 0x0080-0x00bf */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x00c0-0x00ff */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x0100-0x013f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x0140-0x017f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x0180-0x01bf */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x01c0-0x01ff */ - /* 0x0200-0x03ff */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x0200-0x023f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x0240-0x027f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x0280-0x02bf */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x02c0-0x02ff */ - 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, /* 0x0300-0x033f */ - 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, /* 0x0340-0x037f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x0380-0x03bf */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x03c0-0x03ff */ - /* 0x0400-0x05ff */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x0400-0x043f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x0440-0x047f */ - 0xf8, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x0480-0x04bf */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x04c0-0x04ff */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x0500-0x053f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x0540-0x057f */ - 0x00, 0x00, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xbf, /* 0x0580-0x05bf */ - 0xb6, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x05c0-0x05ff */ - /* 0x0600-0x07ff */ - 0x3f, 0x00, 0xff, 0x17, 0x00, 0x00, 0x00, 0x00, /* 0x0600-0x063f */ - 0x00, 0xf8, 0xff, 0xff, 0x00, 0x00, 0x01, 0x00, /* 0x0640-0x067f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x0680-0x06bf */ - 0x00, 0x00, 0xc0, 0xbf, 0x9f, 0x3d, 0x00, 0x00, /* 0x06c0-0x06ff */ - 0x00, 0x80, 0x02, 0x00, 0x00, 0x00, 0xff, 0xff, /* 0x0700-0x073f */ - 0xff, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x0740-0x077f */ - 0x00, 0x00, 0x00, 0x00, 0xc0, 0xff, 0x01, 0x00, /* 0x0780-0x07bf */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x0f, 0x00, /* 0x07c0-0x07ff */ - /* 0x0800-0x09ff */ - 0x00, 0x00, 0xc0, 0xfb, 0xef, 0x3e, 0x00, 0x00, /* 0x0800-0x083f */ - 0x00, 0x00, 0x00, 0x0e, 0x00, 0x00, 0x00, 0x00, /* 0x0840-0x087f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x0880-0x08bf */ - 0x00, 0x00, 0xf0, 0xff, 0xff, 0xff, 0xff, 0xff, /* 0x08c0-0x08ff */ - 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x14, /* 0x0900-0x093f */ - 0xfe, 0x21, 0xfe, 0x00, 0x0c, 0x00, 0x00, 0x00, /* 0x0940-0x097f */ - 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, /* 0x0980-0x09bf */ - 0x1e, 0x20, 0x00, 0x00, 0x0c, 0x00, 0x00, 0x00, /* 0x09c0-0x09ff */ - /* 0x0a00-0x0bff */ - 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, /* 0x0a00-0x0a3f */ - 0x86, 0x39, 0x02, 0x00, 0x00, 0x00, 0x23, 0x00, /* 0x0a40-0x0a7f */ - 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, /* 0x0a80-0x0abf */ - 0xbe, 0x21, 0x00, 0x00, 0x0c, 0x00, 0x00, 0x00, /* 0x0ac0-0x0aff */ - 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x90, /* 0x0b00-0x0b3f */ - 0x1e, 0x20, 0x40, 0x00, 0x0c, 0x00, 0x00, 0x00, /* 0x0b40-0x0b7f */ - 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x0b80-0x0bbf */ - 0x01, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x0bc0-0x0bff */ - /* 0x0c00-0x0dff */ - 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, /* 0x0c00-0x0c3f */ - 0xc1, 0x3d, 0x60, 0x00, 0x0c, 0x00, 0x00, 0x00, /* 0x0c40-0x0c7f */ - 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, /* 0x0c80-0x0cbf */ - 0x00, 0x30, 0x00, 0x00, 0x0c, 0x00, 0x00, 0x00, /* 0x0cc0-0x0cff */ - 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x0d00-0x0d3f */ - 0x1e, 0x20, 0x00, 0x00, 0x0c, 0x00, 0x00, 0x00, /* 0x0d40-0x0d7f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x0d80-0x0dbf */ - 0x00, 0x04, 0x5c, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x0dc0-0x0dff */ - /* 0x0e00-0x0fff */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf2, 0x07, /* 0x0e00-0x0e3f */ - 0x80, 0x7f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x0e40-0x0e7f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf2, 0x1b, /* 0x0e80-0x0ebf */ - 0x00, 0x3f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x0ec0-0x0eff */ - 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0xa0, 0x02, /* 0x0f00-0x0f3f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfe, 0x7f, /* 0x0f40-0x0f7f */ - 0xdf, 0xe0, 0xff, 0xfe, 0xff, 0xff, 0xff, 0x1f, /* 0x0f80-0x0fbf */ - 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x0fc0-0x0fff */ - /* 0x1000-0x11ff */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xfd, 0x66, /* 0x1000-0x103f */ - 0x00, 0x00, 0x00, 0xc3, 0x01, 0x00, 0x1e, 0x00, /* 0x1040-0x107f */ - 0x64, 0x20, 0x00, 0x20, 0x00, 0x00, 0x00, 0x00, /* 0x1080-0x10bf */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10c0-0x10ff */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1100-0x113f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1140-0x117f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1180-0x11bf */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x11c0-0x11ff */ - /* 0x1200-0x13ff */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1200-0x123f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1240-0x127f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1280-0x12bf */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x12c0-0x12ff */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1300-0x133f */ - 0x00, 0x00, 0x00, 0xe0, 0x00, 0x00, 0x00, 0x00, /* 0x1340-0x137f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1380-0x13bf */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x13c0-0x13ff */ - /* 0x1600-0x17ff */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1600-0x163f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1640-0x167f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1680-0x16bf */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x16c0-0x16ff */ - 0x00, 0x00, 0x1c, 0x00, 0x00, 0x00, 0x1c, 0x00, /* 0x1700-0x173f */ - 0x00, 0x00, 0x0c, 0x00, 0x00, 0x00, 0x0c, 0x00, /* 0x1740-0x177f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xb0, 0x3f, /* 0x1780-0x17bf */ - 0x40, 0xfe, 0x0f, 0x20, 0x00, 0x00, 0x00, 0x00, /* 0x17c0-0x17ff */ - /* 0x1800-0x19ff */ - 0x00, 0x78, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1800-0x183f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1840-0x187f */ - 0x60, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, /* 0x1880-0x18bf */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x18c0-0x18ff */ - 0x00, 0x00, 0x00, 0x00, 0x87, 0x01, 0x04, 0x0e, /* 0x1900-0x193f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1940-0x197f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1980-0x19bf */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x19c0-0x19ff */ - /* 0x1a00-0x1bff */ - 0x00, 0x00, 0x80, 0x09, 0x00, 0x00, 0x00, 0x00, /* 0x1a00-0x1a3f */ - 0x00, 0x00, 0x40, 0x7f, 0xe5, 0x1f, 0xf8, 0x9f, /* 0x1a40-0x1a7f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x7f, /* 0x1a80-0x1abf */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1ac0-0x1aff */ - 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd0, 0x17, /* 0x1b00-0x1b3f */ - 0x04, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x0f, 0x00, /* 0x1b40-0x1b7f */ - 0x03, 0x00, 0x00, 0x00, 0x3c, 0x3b, 0x00, 0x00, /* 0x1b80-0x1bbf */ - 0x00, 0x00, 0x00, 0x00, 0x40, 0xa3, 0x03, 0x00, /* 0x1bc0-0x1bff */ - /* 0x1c00-0x1dff */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0xcf, 0x00, /* 0x1c00-0x1c3f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1c40-0x1c7f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1c80-0x1cbf */ - 0x00, 0x00, 0xf7, 0xff, 0xfd, 0x21, 0x10, 0x03, /* 0x1cc0-0x1cff */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1d00-0x1d3f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1d40-0x1d7f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1d80-0x1dbf */ - 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0xf8, /* 0x1dc0-0x1dff */ - /* 0x2000-0x21ff */ - 0x00, 0xf8, 0x00, 0x00, 0x00, 0x7c, 0x00, 0x00, /* 0x2000-0x203f */ - 0x00, 0x00, 0x00, 0x00, 0xdf, 0xff, 0x00, 0x00, /* 0x2040-0x207f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x2080-0x20bf */ - 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x01, 0x00, /* 0x20c0-0x20ff */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x2100-0x213f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x2140-0x217f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x2180-0x21bf */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x21c0-0x21ff */ - /* 0x2c00-0x2dff */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x2c00-0x2c3f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x2c40-0x2c7f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x2c80-0x2cbf */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x03, 0x00, /* 0x2cc0-0x2cff */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x2d00-0x2d3f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, /* 0x2d40-0x2d7f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x2d80-0x2dbf */ - 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, /* 0x2dc0-0x2dff */ - /* 0x3000-0x31ff */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x00, /* 0x3000-0x303f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x3040-0x307f */ - 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x00, /* 0x3080-0x30bf */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x30c0-0x30ff */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x3100-0x313f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x3140-0x317f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x3180-0x31bf */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x31c0-0x31ff */ - /* 0xa600-0xa7ff */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xa600-0xa63f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xf7, 0x3f, /* 0xa640-0xa67f */ - 0x00, 0x00, 0x00, 0xc0, 0x00, 0x00, 0x00, 0x00, /* 0xa680-0xa6bf */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, /* 0xa6c0-0xa6ff */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xa700-0xa73f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xa740-0xa77f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xa780-0xa7bf */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xa7c0-0xa7ff */ - /* 0xa800-0xa9ff */ - 0x44, 0x08, 0x00, 0x00, 0x60, 0x00, 0x00, 0x00, /* 0xa800-0xa83f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xa840-0xa87f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xa880-0xa8bf */ - 0x30, 0x00, 0x00, 0x00, 0xff, 0xff, 0x03, 0x00, /* 0xa8c0-0xa8ff */ - 0x00, 0x00, 0x00, 0x00, 0xc0, 0x3f, 0x00, 0x00, /* 0xa900-0xa93f */ - 0x80, 0xff, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xa940-0xa97f */ - 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc8, 0x13, /* 0xa980-0xa9bf */ - 0x00, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, /* 0xa9c0-0xa9ff */ - /* 0xaa00-0xabff */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x7e, 0x66, 0x00, /* 0xaa00-0xaa3f */ - 0x08, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, /* 0xaa40-0xaa7f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x9d, 0xc1, /* 0xaa80-0xaabf */ - 0x02, 0x00, 0x00, 0x00, 0x00, 0x30, 0x40, 0x00, /* 0xaac0-0xaaff */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xab00-0xab3f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xab40-0xab7f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xab80-0xabbf */ - 0x00, 0x00, 0x00, 0x00, 0x20, 0x21, 0x00, 0x00, /* 0xabc0-0xabff */ - /* 0xfa00-0xfbff */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xfa00-0xfa3f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xfa40-0xfa7f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xfa80-0xfabf */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xfac0-0xfaff */ - 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, 0x00, 0x00, /* 0xfb00-0xfb3f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xfb40-0xfb7f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xfb80-0xfbbf */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xfbc0-0xfbff */ - /* 0xfe00-0xffff */ - 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, /* 0xfe00-0xfe3f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xfe40-0xfe7f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xfe80-0xfebf */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, /* 0xfec0-0xfeff */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xff00-0xff3f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xff40-0xff7f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xff80-0xffbf */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0e, /* 0xffc0-0xffff */ - /* 0x10000-0x101ff */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10000-0x1003f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10040-0x1007f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10080-0x100bf */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x100c0-0x100ff */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10100-0x1013f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10140-0x1017f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10180-0x101bf */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, /* 0x101c0-0x101ff */ - /* 0x10200-0x103ff */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10200-0x1023f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10240-0x1027f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10280-0x102bf */ - 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, /* 0x102c0-0x102ff */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10300-0x1033f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x07, /* 0x10340-0x1037f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10380-0x103bf */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x103c0-0x103ff */ - /* 0x10a00-0x10bff */ - 0x6e, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x87, /* 0x10a00-0x10a3f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10a40-0x10a7f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10a80-0x10abf */ - 0x00, 0x00, 0x00, 0x00, 0x60, 0x00, 0x00, 0x00, /* 0x10ac0-0x10aff */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10b00-0x10b3f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10b40-0x10b7f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10b80-0x10bbf */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10bc0-0x10bff */ - /* 0x11000-0x111ff */ - 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, /* 0x11000-0x1103f */ - 0x7f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, /* 0x11040-0x1107f */ - 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x78, 0x26, /* 0x11080-0x110bf */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x110c0-0x110ff */ - 0x07, 0x00, 0x00, 0x00, 0x80, 0xef, 0x1f, 0x00, /* 0x11100-0x1113f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, /* 0x11140-0x1117f */ - 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x7f, /* 0x11180-0x111bf */ - 0x00, 0x1c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x111c0-0x111ff */ - /* 0x11200-0x113ff */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xd3, 0x40, /* 0x11200-0x1123f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x11240-0x1127f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x11280-0x112bf */ - 0x00, 0x00, 0x00, 0x80, 0xf8, 0x07, 0x00, 0x00, /* 0x112c0-0x112ff */ - 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, /* 0x11300-0x1133f */ - 0x01, 0x00, 0x00, 0x00, 0xc0, 0x1f, 0x1f, 0x00, /* 0x11340-0x1137f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x11380-0x113bf */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x113c0-0x113ff */ - /* 0x11400-0x115ff */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, /* 0x11400-0x1143f */ - 0x5c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x11440-0x1147f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x85, /* 0x11480-0x114bf */ - 0x0d, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x114c0-0x114ff */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x11500-0x1153f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x11540-0x1157f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0xb0, /* 0x11580-0x115bf */ - 0x01, 0x00, 0x00, 0x30, 0x00, 0x00, 0x00, 0x00, /* 0x115c0-0x115ff */ - /* 0x11600-0x117ff */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0xa7, /* 0x11600-0x1163f */ - 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x11640-0x1167f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x28, 0xbf, 0x00, /* 0x11680-0x116bf */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x116c0-0x116ff */ - 0x00, 0x00, 0x00, 0xe0, 0xbc, 0x0f, 0x00, 0x00, /* 0x11700-0x1173f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x11740-0x1177f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x11780-0x117bf */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x117c0-0x117ff */ - /* 0x11c00-0x11dff */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7f, 0x3f, /* 0x11c00-0x11c3f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x11c40-0x11c7f */ - 0x00, 0x00, 0xfc, 0xff, 0xff, 0xfc, 0x6d, 0x00, /* 0x11c80-0x11cbf */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x11cc0-0x11cff */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x11d00-0x11d3f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x11d40-0x11d7f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x11d80-0x11dbf */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x11dc0-0x11dff */ - /* 0x16a00-0x16bff */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x16a00-0x16a3f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x16a40-0x16a7f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x16a80-0x16abf */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1f, 0x00, /* 0x16ac0-0x16aff */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7f, 0x00, /* 0x16b00-0x16b3f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x16b40-0x16b7f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x16b80-0x16bbf */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x16bc0-0x16bff */ - /* 0x16e00-0x16fff */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x16e00-0x16e3f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x16e40-0x16e7f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x16e80-0x16ebf */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x16ec0-0x16eff */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x16f00-0x16f3f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x16f40-0x16f7f */ - 0x00, 0x80, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x16f80-0x16fbf */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x16fc0-0x16fff */ - /* 0x1bc00-0x1bdff */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1bc00-0x1bc3f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1bc40-0x1bc7f */ - 0x00, 0x00, 0x00, 0x60, 0x0f, 0x00, 0x00, 0x00, /* 0x1bc80-0x1bcbf */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1bcc0-0x1bcff */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1bd00-0x1bd3f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1bd40-0x1bd7f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1bd80-0x1bdbf */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1bdc0-0x1bdff */ - /* 0x1d000-0x1d1ff */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1d000-0x1d03f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1d040-0x1d07f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1d080-0x1d0bf */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1d0c0-0x1d0ff */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1d100-0x1d13f */ - 0x00, 0x00, 0x00, 0x00, 0x80, 0x03, 0xf8, 0xff, /* 0x1d140-0x1d17f */ - 0xe7, 0x0f, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x00, /* 0x1d180-0x1d1bf */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1d1c0-0x1d1ff */ - /* 0x1d200-0x1d3ff */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1d200-0x1d23f */ - 0x1c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1d240-0x1d27f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1d280-0x1d2bf */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1d2c0-0x1d2ff */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1d300-0x1d33f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1d340-0x1d37f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1d380-0x1d3bf */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1d3c0-0x1d3ff */ - /* 0x1da00-0x1dbff */ - 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0xf8, /* 0x1da00-0x1da3f */ - 0xff, 0xff, 0xff, 0xff, 0xff, 0x1f, 0x20, 0x00, /* 0x1da40-0x1da7f */ - 0x10, 0x00, 0x00, 0xf8, 0xfe, 0xff, 0x00, 0x00, /* 0x1da80-0x1dabf */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1dac0-0x1daff */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1db00-0x1db3f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1db40-0x1db7f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1db80-0x1dbbf */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1dbc0-0x1dbff */ - /* 0x1e000-0x1e1ff */ - 0x7f, 0xff, 0xff, 0xf9, 0xdb, 0x07, 0x00, 0x00, /* 0x1e000-0x1e03f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1e040-0x1e07f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1e080-0x1e0bf */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1e0c0-0x1e0ff */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1e100-0x1e13f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1e140-0x1e17f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1e180-0x1e1bf */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1e1c0-0x1e1ff */ - /* 0x1e800-0x1e9ff */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1e800-0x1e83f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1e840-0x1e87f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1e880-0x1e8bf */ - 0x00, 0x00, 0x7f, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1e8c0-0x1e8ff */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1e900-0x1e93f */ - 0xf0, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1e940-0x1e97f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1e980-0x1e9bf */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 /* 0x1e9c0-0x1e9ff */ -}; -static const signed char nonspacing_table_ind[248] = { - 0, 1, 2, 3, 4, 5, 6, 7, /* 0x0000-0x0fff */ - 8, 9, -1, 10, 11, 12, 13, -1, /* 0x1000-0x1fff */ - 14, -1, -1, -1, -1, -1, 15, -1, /* 0x2000-0x2fff */ - 16, -1, -1, -1, -1, -1, -1, -1, /* 0x3000-0x3fff */ - -1, -1, -1, -1, -1, -1, -1, -1, /* 0x4000-0x4fff */ - -1, -1, -1, -1, -1, -1, -1, -1, /* 0x5000-0x5fff */ - -1, -1, -1, -1, -1, -1, -1, -1, /* 0x6000-0x6fff */ - -1, -1, -1, -1, -1, -1, -1, -1, /* 0x7000-0x7fff */ - -1, -1, -1, -1, -1, -1, -1, -1, /* 0x8000-0x8fff */ - -1, -1, -1, -1, -1, -1, -1, -1, /* 0x9000-0x9fff */ - -1, -1, -1, 17, 18, 19, -1, -1, /* 0xa000-0xafff */ - -1, -1, -1, -1, -1, -1, -1, -1, /* 0xb000-0xbfff */ - -1, -1, -1, -1, -1, -1, -1, -1, /* 0xc000-0xcfff */ - -1, -1, -1, -1, -1, -1, -1, -1, /* 0xd000-0xdfff */ - -1, -1, -1, -1, -1, -1, -1, -1, /* 0xe000-0xefff */ - -1, -1, -1, -1, -1, 20, -1, 21, /* 0xf000-0xffff */ - 22, 23, -1, -1, -1, 24, -1, -1, /* 0x10000-0x10fff */ - 25, 26, 27, 28, -1, -1, 29, -1, /* 0x11000-0x11fff */ - -1, -1, -1, -1, -1, -1, -1, -1, /* 0x12000-0x12fff */ - -1, -1, -1, -1, -1, -1, -1, -1, /* 0x13000-0x13fff */ - -1, -1, -1, -1, -1, -1, -1, -1, /* 0x14000-0x14fff */ - -1, -1, -1, -1, -1, -1, -1, -1, /* 0x15000-0x15fff */ - -1, -1, -1, -1, -1, 30, -1, 31, /* 0x16000-0x16fff */ - -1, -1, -1, -1, -1, -1, -1, -1, /* 0x17000-0x17fff */ - -1, -1, -1, -1, -1, -1, -1, -1, /* 0x18000-0x18fff */ - -1, -1, -1, -1, -1, -1, -1, -1, /* 0x19000-0x19fff */ - -1, -1, -1, -1, -1, -1, -1, -1, /* 0x1a000-0x1afff */ - -1, -1, -1, -1, -1, -1, 32, -1, /* 0x1b000-0x1bfff */ - -1, -1, -1, -1, -1, -1, -1, -1, /* 0x1c000-0x1cfff */ - 33, 34, -1, -1, -1, 35, -1, -1, /* 0x1d000-0x1dfff */ - 36, -1, -1, -1, 37, -1, -1, -1 /* 0x1e000-0x1efff */ -}; - -/* Determine number of column positions required for UC. */ -int -uc_width (ucs4_t uc, const char *encoding) -{ - /* Test for non-spacing or control character. */ - if ((uc >> 9) < 248) - { - int ind = nonspacing_table_ind[uc >> 9]; - if (ind >= 0) - if ((nonspacing_table_data[64*ind + ((uc >> 3) & 63)] >> (uc & 7)) & 1) - { - if (uc > 0 && uc < 0xa0) - return -1; - else - return 0; - } - } - else if ((uc >> 9) == (0xe0000 >> 9)) - { - if (uc >= 0xe0100) - { - if (uc <= 0xe01ef) - return 0; - } - else - { - if (uc >= 0xe0020 ? uc <= 0xe007f : uc == 0xe0001) - return 0; - } - } - /* Test for double-width character. - * Generated from "grep '^[^;]\{4,5\};[WF]' EastAsianWidth.txt" - * and "grep '^[^;]\{4,5\};[^WF]' EastAsianWidth.txt" - */ - if (uc >= 0x1100 - && ((uc < 0x1160) /* Hangul Jamo */ - || (uc >= 0x2329 && uc < 0x232b) /* Angle Brackets */ - || (uc >= 0x2e80 && uc < 0xa4d0 /* CJK ... Yi */ - && !(uc == 0x303f) && !(uc >= 0x4dc0 && uc < 0x4e00)) - || (uc >= 0xac00 && uc < 0xd7a4) /* Hangul Syllables */ - || (uc >= 0xf900 && uc < 0xfb00) /* CJK Compatibility Ideographs */ - || (uc >= 0xfe10 && uc < 0xfe20) /* Presentation Forms for Vertical */ - || (uc >= 0xfe30 && uc < 0xfe70) /* CJK Compatibility Forms */ - || (uc >= 0xff00 && uc < 0xff61) /* Fullwidth Forms */ - || (uc >= 0xffe0 && uc < 0xffe7) /* Fullwidth Signs */ - || (uc >= 0x20000 && uc <= 0x2ffff) /* Supplementary Ideographic Plane */ - || (uc >= 0x30000 && uc <= 0x3ffff) /* Tertiary Ideographic Plane */ - ) ) - return 2; - /* In ancient CJK encodings, Cyrillic and most other characters are - double-width as well. */ - if (uc >= 0x00A1 && uc < 0xFF61 && uc != 0x20A9 - && is_cjk_encoding (encoding)) - return 2; - return 1; -} diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/vasnprintf.c b/thirdparty/grub-2.04/grub-core/lib/gnulib/vasnprintf.c deleted file mode 100644 index c47590372..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/vasnprintf.c +++ /dev/null @@ -1,5621 +0,0 @@ -/* vsprintf with automatic memory allocation. - Copyright (C) 1999, 2002-2019 Free Software Foundation, Inc. - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3, or (at your option) - any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License along - with this program; if not, see . */ - -/* This file can be parametrized with the following macros: - VASNPRINTF The name of the function being defined. - FCHAR_T The element type of the format string. - DCHAR_T The element type of the destination (result) string. - FCHAR_T_ONLY_ASCII Set to 1 to enable verification that all characters - in the format string are ASCII. MUST be set if - FCHAR_T and DCHAR_T are not the same type. - DIRECTIVE Structure denoting a format directive. - Depends on FCHAR_T. - DIRECTIVES Structure denoting the set of format directives of a - format string. Depends on FCHAR_T. - PRINTF_PARSE Function that parses a format string. - Depends on FCHAR_T. - DCHAR_CPY memcpy like function for DCHAR_T[] arrays. - DCHAR_SET memset like function for DCHAR_T[] arrays. - DCHAR_MBSNLEN mbsnlen like function for DCHAR_T[] arrays. - SNPRINTF The system's snprintf (or similar) function. - This may be either snprintf or swprintf. - TCHAR_T The element type of the argument and result string - of the said SNPRINTF function. This may be either - char or wchar_t. The code exploits that - sizeof (TCHAR_T) | sizeof (DCHAR_T) and - alignof (TCHAR_T) <= alignof (DCHAR_T). - DCHAR_IS_TCHAR Set to 1 if DCHAR_T and TCHAR_T are the same type. - DCHAR_CONV_FROM_ENCODING A function to convert from char[] to DCHAR[]. - DCHAR_IS_UINT8_T Set to 1 if DCHAR_T is uint8_t. - DCHAR_IS_UINT16_T Set to 1 if DCHAR_T is uint16_t. - DCHAR_IS_UINT32_T Set to 1 if DCHAR_T is uint32_t. */ - -/* Tell glibc's to provide a prototype for snprintf(). - This must come before because may include - , and once has been included, it's too late. */ -#ifndef _GNU_SOURCE -# define _GNU_SOURCE 1 -#endif - -#ifndef VASNPRINTF -# include -#endif -#ifndef IN_LIBINTL -# include -#endif - -/* Specification. */ -#ifndef VASNPRINTF -# if WIDE_CHAR_VERSION -# include "vasnwprintf.h" -# else -# include "vasnprintf.h" -# endif -#endif - -#include /* localeconv() */ -#include /* snprintf(), sprintf() */ -#include /* abort(), malloc(), realloc(), free() */ -#include /* memcpy(), strlen() */ -#include /* errno */ -#include /* CHAR_BIT */ -#include /* DBL_MAX_EXP, LDBL_MAX_EXP */ -#if HAVE_NL_LANGINFO -# include -#endif -#ifndef VASNPRINTF -# if WIDE_CHAR_VERSION -# include "wprintf-parse.h" -# else -# include "printf-parse.h" -# endif -#endif - -/* Checked size_t computations. */ -#include "xsize.h" - -#include "verify.h" - -#if (NEED_PRINTF_DOUBLE || NEED_PRINTF_LONG_DOUBLE) && !defined IN_LIBINTL -# include -# include "float+.h" -#endif - -#if (NEED_PRINTF_DOUBLE || NEED_PRINTF_INFINITE_DOUBLE) && !defined IN_LIBINTL -# include -# include "isnand-nolibm.h" -#endif - -#if (NEED_PRINTF_LONG_DOUBLE || NEED_PRINTF_INFINITE_LONG_DOUBLE) && !defined IN_LIBINTL -# include -# include "isnanl-nolibm.h" -# include "fpucw.h" -#endif - -#if (NEED_PRINTF_DIRECTIVE_A || NEED_PRINTF_DOUBLE) && !defined IN_LIBINTL -# include -# include "isnand-nolibm.h" -# include "printf-frexp.h" -#endif - -#if (NEED_PRINTF_DIRECTIVE_A || NEED_PRINTF_LONG_DOUBLE) && !defined IN_LIBINTL -# include -# include "isnanl-nolibm.h" -# include "printf-frexpl.h" -# include "fpucw.h" -#endif - -#ifndef FALLTHROUGH -# if __GNUC__ < 7 -# define FALLTHROUGH ((void) 0) -# else -# define FALLTHROUGH __attribute__ ((__fallthrough__)) -# endif -#endif - -/* Default parameters. */ -#ifndef VASNPRINTF -# if WIDE_CHAR_VERSION -# define VASNPRINTF vasnwprintf -# define FCHAR_T wchar_t -# define DCHAR_T wchar_t -# define TCHAR_T wchar_t -# define DCHAR_IS_TCHAR 1 -# define DIRECTIVE wchar_t_directive -# define DIRECTIVES wchar_t_directives -# define PRINTF_PARSE wprintf_parse -# define DCHAR_CPY wmemcpy -# define DCHAR_SET wmemset -# else -# define VASNPRINTF vasnprintf -# define FCHAR_T char -# define DCHAR_T char -# define TCHAR_T char -# define DCHAR_IS_TCHAR 1 -# define DIRECTIVE char_directive -# define DIRECTIVES char_directives -# define PRINTF_PARSE printf_parse -# define DCHAR_CPY memcpy -# define DCHAR_SET memset -# endif -#endif -#if WIDE_CHAR_VERSION - /* TCHAR_T is wchar_t. */ -# define USE_SNPRINTF 1 -# if HAVE_DECL__SNWPRINTF - /* On Windows, the function swprintf() has a different signature than - on Unix; we use the function _snwprintf() or - on mingw - snwprintf() - instead. The mingw function snwprintf() has fewer bugs than the - MSVCRT function _snwprintf(), so prefer that. */ -# if defined __MINGW32__ -# define SNPRINTF snwprintf -# else -# define SNPRINTF _snwprintf -# define USE_MSVC__SNPRINTF 1 -# endif -# else - /* Unix. */ -# define SNPRINTF swprintf -# endif -#else - /* TCHAR_T is char. */ - /* Use snprintf if it exists under the name 'snprintf' or '_snprintf'. - But don't use it on BeOS, since BeOS snprintf produces no output if the - size argument is >= 0x3000000. - Also don't use it on Linux libc5, since there snprintf with size = 1 - writes any output without bounds, like sprintf. */ -# if (HAVE_DECL__SNPRINTF || HAVE_SNPRINTF) && !defined __BEOS__ && !(__GNU_LIBRARY__ == 1) -# define USE_SNPRINTF 1 -# else -# define USE_SNPRINTF 0 -# endif -# if HAVE_DECL__SNPRINTF - /* Windows. The mingw function snprintf() has fewer bugs than the MSVCRT - function _snprintf(), so prefer that. */ -# if defined __MINGW32__ -# define SNPRINTF snprintf - /* Here we need to call the native snprintf, not rpl_snprintf. */ -# undef snprintf -# else - /* MSVC versions < 14 did not have snprintf, only _snprintf. */ -# define SNPRINTF _snprintf -# define USE_MSVC__SNPRINTF 1 -# endif -# else - /* Unix. */ -# define SNPRINTF snprintf - /* Here we need to call the native snprintf, not rpl_snprintf. */ -# undef snprintf -# endif -#endif -/* Here we need to call the native sprintf, not rpl_sprintf. */ -#undef sprintf - -/* GCC >= 4.0 with -Wall emits unjustified "... may be used uninitialized" - warnings in this file. Use -Dlint to suppress them. */ -#if defined GCC_LINT || defined lint -# define IF_LINT(Code) Code -#else -# define IF_LINT(Code) /* empty */ -#endif - -/* Avoid some warnings from "gcc -Wshadow". - This file doesn't use the exp() and remainder() functions. */ -#undef exp -#define exp expo -#undef remainder -#define remainder rem - -#if (!USE_SNPRINTF || !HAVE_SNPRINTF_RETVAL_C99 || USE_MSVC__SNPRINTF) && !WIDE_CHAR_VERSION -# if (HAVE_STRNLEN && !defined _AIX) -# define local_strnlen strnlen -# else -# ifndef local_strnlen_defined -# define local_strnlen_defined 1 -static size_t -local_strnlen (const char *string, size_t maxlen) -{ - const char *end = memchr (string, '\0', maxlen); - return end ? (size_t) (end - string) : maxlen; -} -# endif -# endif -#endif - -#if (((!USE_SNPRINTF || !HAVE_SNPRINTF_RETVAL_C99 || USE_MSVC__SNPRINTF) && WIDE_CHAR_VERSION) || ((!USE_SNPRINTF || !HAVE_SNPRINTF_RETVAL_C99 || USE_MSVC__SNPRINTF || (NEED_PRINTF_DIRECTIVE_LS && !defined IN_LIBINTL)) && !WIDE_CHAR_VERSION && DCHAR_IS_TCHAR)) && HAVE_WCHAR_T -# if HAVE_WCSLEN -# define local_wcslen wcslen -# else - /* Solaris 2.5.1 has wcslen() in a separate library libw.so. To avoid - a dependency towards this library, here is a local substitute. - Define this substitute only once, even if this file is included - twice in the same compilation unit. */ -# ifndef local_wcslen_defined -# define local_wcslen_defined 1 -static size_t -local_wcslen (const wchar_t *s) -{ - const wchar_t *ptr; - - for (ptr = s; *ptr != (wchar_t) 0; ptr++) - ; - return ptr - s; -} -# endif -# endif -#endif - -#if (!USE_SNPRINTF || !HAVE_SNPRINTF_RETVAL_C99 || USE_MSVC__SNPRINTF) && HAVE_WCHAR_T && WIDE_CHAR_VERSION -# if HAVE_WCSNLEN -# define local_wcsnlen wcsnlen -# else -# ifndef local_wcsnlen_defined -# define local_wcsnlen_defined 1 -static size_t -local_wcsnlen (const wchar_t *s, size_t maxlen) -{ - const wchar_t *ptr; - - for (ptr = s; maxlen > 0 && *ptr != (wchar_t) 0; ptr++, maxlen--) - ; - return ptr - s; -} -# endif -# endif -#endif - -#if (NEED_PRINTF_DIRECTIVE_A || NEED_PRINTF_LONG_DOUBLE || NEED_PRINTF_INFINITE_LONG_DOUBLE || NEED_PRINTF_DOUBLE || NEED_PRINTF_INFINITE_DOUBLE) && !defined IN_LIBINTL -/* Determine the decimal-point character according to the current locale. */ -# ifndef decimal_point_char_defined -# define decimal_point_char_defined 1 -static char -decimal_point_char (void) -{ - const char *point; - /* Determine it in a multithread-safe way. We know nl_langinfo is - multithread-safe on glibc systems and Mac OS X systems, but is not required - to be multithread-safe by POSIX. sprintf(), however, is multithread-safe. - localeconv() is rarely multithread-safe. */ -# if HAVE_NL_LANGINFO && (__GLIBC__ || defined __UCLIBC__ || (defined __APPLE__ && defined __MACH__)) - point = nl_langinfo (RADIXCHAR); -# elif 1 - char pointbuf[5]; - sprintf (pointbuf, "%#.0f", 1.0); - point = &pointbuf[1]; -# else - point = localeconv () -> decimal_point; -# endif - /* The decimal point is always a single byte: either '.' or ','. */ - return (point[0] != '\0' ? point[0] : '.'); -} -# endif -#endif - -#if NEED_PRINTF_INFINITE_DOUBLE && !NEED_PRINTF_DOUBLE && !defined IN_LIBINTL - -/* Equivalent to !isfinite(x) || x == 0, but does not require libm. */ -static int -is_infinite_or_zero (double x) -{ - return isnand (x) || x + x == x; -} - -#endif - -#if NEED_PRINTF_INFINITE_LONG_DOUBLE && !NEED_PRINTF_LONG_DOUBLE && !defined IN_LIBINTL - -/* Equivalent to !isfinite(x) || x == 0, but does not require libm. */ -static int -is_infinite_or_zerol (long double x) -{ - return isnanl (x) || x + x == x; -} - -#endif - -#if (NEED_PRINTF_LONG_DOUBLE || NEED_PRINTF_DOUBLE) && !defined IN_LIBINTL - -/* Converting 'long double' to decimal without rare rounding bugs requires - real bignums. We use the naming conventions of GNU gmp, but vastly simpler - (and slower) algorithms. */ - -typedef unsigned int mp_limb_t; -# define GMP_LIMB_BITS 32 -verify (sizeof (mp_limb_t) * CHAR_BIT == GMP_LIMB_BITS); - -typedef unsigned long long mp_twolimb_t; -# define GMP_TWOLIMB_BITS 64 -verify (sizeof (mp_twolimb_t) * CHAR_BIT == GMP_TWOLIMB_BITS); - -/* Representation of a bignum >= 0. */ -typedef struct -{ - size_t nlimbs; - mp_limb_t *limbs; /* Bits in little-endian order, allocated with malloc(). */ -} mpn_t; - -/* Compute the product of two bignums >= 0. - Return the allocated memory in case of success, NULL in case of memory - allocation failure. */ -static void * -multiply (mpn_t src1, mpn_t src2, mpn_t *dest) -{ - const mp_limb_t *p1; - const mp_limb_t *p2; - size_t len1; - size_t len2; - - if (src1.nlimbs <= src2.nlimbs) - { - len1 = src1.nlimbs; - p1 = src1.limbs; - len2 = src2.nlimbs; - p2 = src2.limbs; - } - else - { - len1 = src2.nlimbs; - p1 = src2.limbs; - len2 = src1.nlimbs; - p2 = src1.limbs; - } - /* Now 0 <= len1 <= len2. */ - if (len1 == 0) - { - /* src1 or src2 is zero. */ - dest->nlimbs = 0; - dest->limbs = (mp_limb_t *) malloc (1); - } - else - { - /* Here 1 <= len1 <= len2. */ - size_t dlen; - mp_limb_t *dp; - size_t k, i, j; - - dlen = len1 + len2; - dp = (mp_limb_t *) malloc (dlen * sizeof (mp_limb_t)); - if (dp == NULL) - return NULL; - for (k = len2; k > 0; ) - dp[--k] = 0; - for (i = 0; i < len1; i++) - { - mp_limb_t digit1 = p1[i]; - mp_twolimb_t carry = 0; - for (j = 0; j < len2; j++) - { - mp_limb_t digit2 = p2[j]; - carry += (mp_twolimb_t) digit1 * (mp_twolimb_t) digit2; - carry += dp[i + j]; - dp[i + j] = (mp_limb_t) carry; - carry = carry >> GMP_LIMB_BITS; - } - dp[i + len2] = (mp_limb_t) carry; - } - /* Normalise. */ - while (dlen > 0 && dp[dlen - 1] == 0) - dlen--; - dest->nlimbs = dlen; - dest->limbs = dp; - } - return dest->limbs; -} - -/* Compute the quotient of a bignum a >= 0 and a bignum b > 0. - a is written as a = q * b + r with 0 <= r < b. q is the quotient, r - the remainder. - Finally, round-to-even is performed: If r > b/2 or if r = b/2 and q is odd, - q is incremented. - Return the allocated memory in case of success, NULL in case of memory - allocation failure. */ -static void * -divide (mpn_t a, mpn_t b, mpn_t *q) -{ - /* Algorithm: - First normalise a and b: a=[a[m-1],...,a[0]], b=[b[n-1],...,b[0]] - with m>=0 and n>0 (in base beta = 2^GMP_LIMB_BITS). - If m=n=1, perform a single-precision division: - r:=0, j:=m, - while j>0 do - {Here (q[m-1]*beta^(m-1)+...+q[j]*beta^j) * b[0] + r*beta^j = - = a[m-1]*beta^(m-1)+...+a[j]*beta^j und 0<=r=n>1, perform a multiple-precision division: - We have a/b < beta^(m-n+1). - s:=intDsize-1-(highest bit in b[n-1]), 0<=s=beta/2. - For j=m-n,...,0: {Here 0 <= r < b*beta^(j+1).} - Compute q* : - q* := floor((r[j+n]*beta+r[j+n-1])/b[n-1]). - In case of overflow (q* >= beta) set q* := beta-1. - Compute c2 := ((r[j+n]*beta+r[j+n-1]) - q* * b[n-1])*beta + r[j+n-2] - and c3 := b[n-2] * q*. - {We have 0 <= c2 < 2*beta^2, even 0 <= c2 < beta^2 if no overflow - occurred. Furthermore 0 <= c3 < beta^2. - If there was overflow and - r[j+n]*beta+r[j+n-1] - q* * b[n-1] >= beta, i.e. c2 >= beta^2, - the next test can be skipped.} - While c3 > c2, {Here 0 <= c2 < c3 < beta^2} - Put q* := q* - 1, c2 := c2 + b[n-1]*beta, c3 := c3 - b[n-2]. - If q* > 0: - Put r := r - b * q* * beta^j. In detail: - [r[n+j],...,r[j]] := [r[n+j],...,r[j]] - q* * [b[n-1],...,b[0]]. - hence: u:=0, for i:=0 to n-1 do - u := u + q* * b[i], - r[j+i]:=r[j+i]-(u mod beta) (+ beta, if carry), - u:=u div beta (+ 1, if carry in subtraction) - r[n+j]:=r[n+j]-u. - {Since always u = (q* * [b[i-1],...,b[0]] div beta^i) + 1 - < q* + 1 <= beta, - the carry u does not overflow.} - If a negative carry occurs, put q* := q* - 1 - and [r[n+j],...,r[j]] := [r[n+j],...,r[j]] + [0,b[n-1],...,b[0]]. - Set q[j] := q*. - Normalise [q[m-n],..,q[0]]; this yields the quotient q. - Shift [r[n-1],...,r[0]] right by s bits and normalise; this yields the - rest r. - The room for q[j] can be allocated at the memory location of r[n+j]. - Finally, round-to-even: - Shift r left by 1 bit. - If r > b or if r = b and q[0] is odd, q := q+1. - */ - const mp_limb_t *a_ptr = a.limbs; - size_t a_len = a.nlimbs; - const mp_limb_t *b_ptr = b.limbs; - size_t b_len = b.nlimbs; - mp_limb_t *roomptr; - mp_limb_t *tmp_roomptr = NULL; - mp_limb_t *q_ptr; - size_t q_len; - mp_limb_t *r_ptr; - size_t r_len; - - /* Allocate room for a_len+2 digits. - (Need a_len+1 digits for the real division and 1 more digit for the - final rounding of q.) */ - roomptr = (mp_limb_t *) malloc ((a_len + 2) * sizeof (mp_limb_t)); - if (roomptr == NULL) - return NULL; - - /* Normalise a. */ - while (a_len > 0 && a_ptr[a_len - 1] == 0) - a_len--; - - /* Normalise b. */ - for (;;) - { - if (b_len == 0) - /* Division by zero. */ - abort (); - if (b_ptr[b_len - 1] == 0) - b_len--; - else - break; - } - - /* Here m = a_len >= 0 and n = b_len > 0. */ - - if (a_len < b_len) - { - /* m beta^(m-2) <= a/b < beta^m */ - r_ptr = roomptr; - q_ptr = roomptr + 1; - { - mp_limb_t den = b_ptr[0]; - mp_limb_t remainder = 0; - const mp_limb_t *sourceptr = a_ptr + a_len; - mp_limb_t *destptr = q_ptr + a_len; - size_t count; - for (count = a_len; count > 0; count--) - { - mp_twolimb_t num = - ((mp_twolimb_t) remainder << GMP_LIMB_BITS) | *--sourceptr; - *--destptr = num / den; - remainder = num % den; - } - /* Normalise and store r. */ - if (remainder > 0) - { - r_ptr[0] = remainder; - r_len = 1; - } - else - r_len = 0; - /* Normalise q. */ - q_len = a_len; - if (q_ptr[q_len - 1] == 0) - q_len--; - } - } - else - { - /* n>1: multiple precision division. - beta^(m-1) <= a < beta^m, beta^(n-1) <= b < beta^n ==> - beta^(m-n-1) <= a/b < beta^(m-n+1). */ - /* Determine s. */ - size_t s; - { - mp_limb_t msd = b_ptr[b_len - 1]; /* = b[n-1], > 0 */ - /* Determine s = GMP_LIMB_BITS - integer_length (msd). - Code copied from gnulib's integer_length.c. */ -# if __GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4) - s = __builtin_clz (msd); -# else -# if defined DBL_EXPBIT0_WORD && defined DBL_EXPBIT0_BIT - if (GMP_LIMB_BITS <= DBL_MANT_BIT) - { - /* Use 'double' operations. - Assumes an IEEE 754 'double' implementation. */ -# define DBL_EXP_MASK ((DBL_MAX_EXP - DBL_MIN_EXP) | 7) -# define DBL_EXP_BIAS (DBL_EXP_MASK / 2 - 1) -# define NWORDS \ - ((sizeof (double) + sizeof (unsigned int) - 1) / sizeof (unsigned int)) - union { double value; unsigned int word[NWORDS]; } m; - - /* Use a single integer to floating-point conversion. */ - m.value = msd; - - s = GMP_LIMB_BITS - - (((m.word[DBL_EXPBIT0_WORD] >> DBL_EXPBIT0_BIT) & DBL_EXP_MASK) - - DBL_EXP_BIAS); - } - else -# undef NWORDS -# endif - { - s = 31; - if (msd >= 0x10000) - { - msd = msd >> 16; - s -= 16; - } - if (msd >= 0x100) - { - msd = msd >> 8; - s -= 8; - } - if (msd >= 0x10) - { - msd = msd >> 4; - s -= 4; - } - if (msd >= 0x4) - { - msd = msd >> 2; - s -= 2; - } - if (msd >= 0x2) - { - msd = msd >> 1; - s -= 1; - } - } -# endif - } - /* 0 <= s < GMP_LIMB_BITS. - Copy b, shifting it left by s bits. */ - if (s > 0) - { - tmp_roomptr = (mp_limb_t *) malloc (b_len * sizeof (mp_limb_t)); - if (tmp_roomptr == NULL) - { - free (roomptr); - return NULL; - } - { - const mp_limb_t *sourceptr = b_ptr; - mp_limb_t *destptr = tmp_roomptr; - mp_twolimb_t accu = 0; - size_t count; - for (count = b_len; count > 0; count--) - { - accu += (mp_twolimb_t) *sourceptr++ << s; - *destptr++ = (mp_limb_t) accu; - accu = accu >> GMP_LIMB_BITS; - } - /* accu must be zero, since that was how s was determined. */ - if (accu != 0) - abort (); - } - b_ptr = tmp_roomptr; - } - /* Copy a, shifting it left by s bits, yields r. - Memory layout: - At the beginning: r = roomptr[0..a_len], - at the end: r = roomptr[0..b_len-1], q = roomptr[b_len..a_len] */ - r_ptr = roomptr; - if (s == 0) - { - memcpy (r_ptr, a_ptr, a_len * sizeof (mp_limb_t)); - r_ptr[a_len] = 0; - } - else - { - const mp_limb_t *sourceptr = a_ptr; - mp_limb_t *destptr = r_ptr; - mp_twolimb_t accu = 0; - size_t count; - for (count = a_len; count > 0; count--) - { - accu += (mp_twolimb_t) *sourceptr++ << s; - *destptr++ = (mp_limb_t) accu; - accu = accu >> GMP_LIMB_BITS; - } - *destptr++ = (mp_limb_t) accu; - } - q_ptr = roomptr + b_len; - q_len = a_len - b_len + 1; /* q will have m-n+1 limbs */ - { - size_t j = a_len - b_len; /* m-n */ - mp_limb_t b_msd = b_ptr[b_len - 1]; /* b[n-1] */ - mp_limb_t b_2msd = b_ptr[b_len - 2]; /* b[n-2] */ - mp_twolimb_t b_msdd = /* b[n-1]*beta+b[n-2] */ - ((mp_twolimb_t) b_msd << GMP_LIMB_BITS) | b_2msd; - /* Division loop, traversed m-n+1 times. - j counts down, b is unchanged, beta/2 <= b[n-1] < beta. */ - for (;;) - { - mp_limb_t q_star; - mp_limb_t c1; - if (r_ptr[j + b_len] < b_msd) /* r[j+n] < b[n-1] ? */ - { - /* Divide r[j+n]*beta+r[j+n-1] by b[n-1], no overflow. */ - mp_twolimb_t num = - ((mp_twolimb_t) r_ptr[j + b_len] << GMP_LIMB_BITS) - | r_ptr[j + b_len - 1]; - q_star = num / b_msd; - c1 = num % b_msd; - } - else - { - /* Overflow, hence r[j+n]*beta+r[j+n-1] >= beta*b[n-1]. */ - q_star = (mp_limb_t)~(mp_limb_t)0; /* q* = beta-1 */ - /* Test whether r[j+n]*beta+r[j+n-1] - (beta-1)*b[n-1] >= beta - <==> r[j+n]*beta+r[j+n-1] + b[n-1] >= beta*b[n-1]+beta - <==> b[n-1] < floor((r[j+n]*beta+r[j+n-1]+b[n-1])/beta) - {<= beta !}. - If yes, jump directly to the subtraction loop. - (Otherwise, r[j+n]*beta+r[j+n-1] - (beta-1)*b[n-1] < beta - <==> floor((r[j+n]*beta+r[j+n-1]+b[n-1])/beta) = b[n-1] ) */ - if (r_ptr[j + b_len] > b_msd - || (c1 = r_ptr[j + b_len - 1] + b_msd) < b_msd) - /* r[j+n] >= b[n-1]+1 or - r[j+n] = b[n-1] and the addition r[j+n-1]+b[n-1] gives a - carry. */ - goto subtract; - } - /* q_star = q*, - c1 = (r[j+n]*beta+r[j+n-1]) - q* * b[n-1] (>=0, 0, decrease it by - b[n-1]*beta+b[n-2]. Because of b[n-1]*beta+b[n-2] >= beta^2/2 - this can happen only twice. */ - if (c3 > c2) - { - q_star = q_star - 1; /* q* := q* - 1 */ - if (c3 - c2 > b_msdd) - q_star = q_star - 1; /* q* := q* - 1 */ - } - } - if (q_star > 0) - subtract: - { - /* Subtract r := r - b * q* * beta^j. */ - mp_limb_t cr; - { - const mp_limb_t *sourceptr = b_ptr; - mp_limb_t *destptr = r_ptr + j; - mp_twolimb_t carry = 0; - size_t count; - for (count = b_len; count > 0; count--) - { - /* Here 0 <= carry <= q*. */ - carry = - carry - + (mp_twolimb_t) q_star * (mp_twolimb_t) *sourceptr++ - + (mp_limb_t) ~(*destptr); - /* Here 0 <= carry <= beta*q* + beta-1. */ - *destptr++ = ~(mp_limb_t) carry; - carry = carry >> GMP_LIMB_BITS; /* <= q* */ - } - cr = (mp_limb_t) carry; - } - /* Subtract cr from r_ptr[j + b_len], then forget about - r_ptr[j + b_len]. */ - if (cr > r_ptr[j + b_len]) - { - /* Subtraction gave a carry. */ - q_star = q_star - 1; /* q* := q* - 1 */ - /* Add b back. */ - { - const mp_limb_t *sourceptr = b_ptr; - mp_limb_t *destptr = r_ptr + j; - mp_limb_t carry = 0; - size_t count; - for (count = b_len; count > 0; count--) - { - mp_limb_t source1 = *sourceptr++; - mp_limb_t source2 = *destptr; - *destptr++ = source1 + source2 + carry; - carry = - (carry - ? source1 >= (mp_limb_t) ~source2 - : source1 > (mp_limb_t) ~source2); - } - } - /* Forget about the carry and about r[j+n]. */ - } - } - /* q* is determined. Store it as q[j]. */ - q_ptr[j] = q_star; - if (j == 0) - break; - j--; - } - } - r_len = b_len; - /* Normalise q. */ - if (q_ptr[q_len - 1] == 0) - q_len--; -# if 0 /* Not needed here, since we need r only to compare it with b/2, and - b is shifted left by s bits. */ - /* Shift r right by s bits. */ - if (s > 0) - { - mp_limb_t ptr = r_ptr + r_len; - mp_twolimb_t accu = 0; - size_t count; - for (count = r_len; count > 0; count--) - { - accu = (mp_twolimb_t) (mp_limb_t) accu << GMP_LIMB_BITS; - accu += (mp_twolimb_t) *--ptr << (GMP_LIMB_BITS - s); - *ptr = (mp_limb_t) (accu >> GMP_LIMB_BITS); - } - } -# endif - /* Normalise r. */ - while (r_len > 0 && r_ptr[r_len - 1] == 0) - r_len--; - } - /* Compare r << 1 with b. */ - if (r_len > b_len) - goto increment_q; - { - size_t i; - for (i = b_len;;) - { - mp_limb_t r_i = - (i <= r_len && i > 0 ? r_ptr[i - 1] >> (GMP_LIMB_BITS - 1) : 0) - | (i < r_len ? r_ptr[i] << 1 : 0); - mp_limb_t b_i = (i < b_len ? b_ptr[i] : 0); - if (r_i > b_i) - goto increment_q; - if (r_i < b_i) - goto keep_q; - if (i == 0) - break; - i--; - } - } - if (q_len > 0 && ((q_ptr[0] & 1) != 0)) - /* q is odd. */ - increment_q: - { - size_t i; - for (i = 0; i < q_len; i++) - if (++(q_ptr[i]) != 0) - goto keep_q; - q_ptr[q_len++] = 1; - } - keep_q: - if (tmp_roomptr != NULL) - free (tmp_roomptr); - q->limbs = q_ptr; - q->nlimbs = q_len; - return roomptr; -} - -/* Convert a bignum a >= 0, multiplied with 10^extra_zeroes, to decimal - representation. - Destroys the contents of a. - Return the allocated memory - containing the decimal digits in low-to-high - order, terminated with a NUL character - in case of success, NULL in case - of memory allocation failure. */ -static char * -convert_to_decimal (mpn_t a, size_t extra_zeroes) -{ - mp_limb_t *a_ptr = a.limbs; - size_t a_len = a.nlimbs; - /* 0.03345 is slightly larger than log(2)/(9*log(10)). */ - size_t c_len = 9 * ((size_t)(a_len * (GMP_LIMB_BITS * 0.03345f)) + 1); - /* We need extra_zeroes bytes for zeroes, followed by c_len bytes for the - digits of a, followed by 1 byte for the terminating NUL. */ - char *c_ptr = (char *) malloc (xsum (xsum (extra_zeroes, c_len), 1)); - if (c_ptr != NULL) - { - char *d_ptr = c_ptr; - for (; extra_zeroes > 0; extra_zeroes--) - *d_ptr++ = '0'; - while (a_len > 0) - { - /* Divide a by 10^9, in-place. */ - mp_limb_t remainder = 0; - mp_limb_t *ptr = a_ptr + a_len; - size_t count; - for (count = a_len; count > 0; count--) - { - mp_twolimb_t num = - ((mp_twolimb_t) remainder << GMP_LIMB_BITS) | *--ptr; - *ptr = num / 1000000000; - remainder = num % 1000000000; - } - /* Store the remainder as 9 decimal digits. */ - for (count = 9; count > 0; count--) - { - *d_ptr++ = '0' + (remainder % 10); - remainder = remainder / 10; - } - /* Normalize a. */ - if (a_ptr[a_len - 1] == 0) - a_len--; - } - /* Remove leading zeroes. */ - while (d_ptr > c_ptr && d_ptr[-1] == '0') - d_ptr--; - /* But keep at least one zero. */ - if (d_ptr == c_ptr) - *d_ptr++ = '0'; - /* Terminate the string. */ - *d_ptr = '\0'; - } - return c_ptr; -} - -# if NEED_PRINTF_LONG_DOUBLE - -/* Assuming x is finite and >= 0: - write x as x = 2^e * m, where m is a bignum. - Return the allocated memory in case of success, NULL in case of memory - allocation failure. */ -static void * -decode_long_double (long double x, int *ep, mpn_t *mp) -{ - mpn_t m; - int exp; - long double y; - size_t i; - - /* Allocate memory for result. */ - m.nlimbs = (LDBL_MANT_BIT + GMP_LIMB_BITS - 1) / GMP_LIMB_BITS; - m.limbs = (mp_limb_t *) malloc (m.nlimbs * sizeof (mp_limb_t)); - if (m.limbs == NULL) - return NULL; - /* Split into exponential part and mantissa. */ - y = frexpl (x, &exp); - if (!(y >= 0.0L && y < 1.0L)) - abort (); - /* x = 2^exp * y = 2^(exp - LDBL_MANT_BIT) * (y * 2^LDBL_MANT_BIT), and the - latter is an integer. */ - /* Convert the mantissa (y * 2^LDBL_MANT_BIT) to a sequence of limbs. - I'm not sure whether it's safe to cast a 'long double' value between - 2^31 and 2^32 to 'unsigned int', therefore play safe and cast only - 'long double' values between 0 and 2^16 (to 'unsigned int' or 'int', - doesn't matter). */ -# if (LDBL_MANT_BIT % GMP_LIMB_BITS) != 0 -# if (LDBL_MANT_BIT % GMP_LIMB_BITS) > GMP_LIMB_BITS / 2 - { - mp_limb_t hi, lo; - y *= (mp_limb_t) 1 << (LDBL_MANT_BIT % (GMP_LIMB_BITS / 2)); - hi = (int) y; - y -= hi; - if (!(y >= 0.0L && y < 1.0L)) - abort (); - y *= (mp_limb_t) 1 << (GMP_LIMB_BITS / 2); - lo = (int) y; - y -= lo; - if (!(y >= 0.0L && y < 1.0L)) - abort (); - m.limbs[LDBL_MANT_BIT / GMP_LIMB_BITS] = (hi << (GMP_LIMB_BITS / 2)) | lo; - } -# else - { - mp_limb_t d; - y *= (mp_limb_t) 1 << (LDBL_MANT_BIT % GMP_LIMB_BITS); - d = (int) y; - y -= d; - if (!(y >= 0.0L && y < 1.0L)) - abort (); - m.limbs[LDBL_MANT_BIT / GMP_LIMB_BITS] = d; - } -# endif -# endif - for (i = LDBL_MANT_BIT / GMP_LIMB_BITS; i > 0; ) - { - mp_limb_t hi, lo; - y *= (mp_limb_t) 1 << (GMP_LIMB_BITS / 2); - hi = (int) y; - y -= hi; - if (!(y >= 0.0L && y < 1.0L)) - abort (); - y *= (mp_limb_t) 1 << (GMP_LIMB_BITS / 2); - lo = (int) y; - y -= lo; - if (!(y >= 0.0L && y < 1.0L)) - abort (); - m.limbs[--i] = (hi << (GMP_LIMB_BITS / 2)) | lo; - } -# if 0 /* On FreeBSD 6.1/x86, 'long double' numbers sometimes have excess - precision. */ - if (!(y == 0.0L)) - abort (); -# endif - /* Normalise. */ - while (m.nlimbs > 0 && m.limbs[m.nlimbs - 1] == 0) - m.nlimbs--; - *mp = m; - *ep = exp - LDBL_MANT_BIT; - return m.limbs; -} - -# endif - -# if NEED_PRINTF_DOUBLE - -/* Assuming x is finite and >= 0: - write x as x = 2^e * m, where m is a bignum. - Return the allocated memory in case of success, NULL in case of memory - allocation failure. */ -static void * -decode_double (double x, int *ep, mpn_t *mp) -{ - mpn_t m; - int exp; - double y; - size_t i; - - /* Allocate memory for result. */ - m.nlimbs = (DBL_MANT_BIT + GMP_LIMB_BITS - 1) / GMP_LIMB_BITS; - m.limbs = (mp_limb_t *) malloc (m.nlimbs * sizeof (mp_limb_t)); - if (m.limbs == NULL) - return NULL; - /* Split into exponential part and mantissa. */ - y = frexp (x, &exp); - if (!(y >= 0.0 && y < 1.0)) - abort (); - /* x = 2^exp * y = 2^(exp - DBL_MANT_BIT) * (y * 2^DBL_MANT_BIT), and the - latter is an integer. */ - /* Convert the mantissa (y * 2^DBL_MANT_BIT) to a sequence of limbs. - I'm not sure whether it's safe to cast a 'double' value between - 2^31 and 2^32 to 'unsigned int', therefore play safe and cast only - 'double' values between 0 and 2^16 (to 'unsigned int' or 'int', - doesn't matter). */ -# if (DBL_MANT_BIT % GMP_LIMB_BITS) != 0 -# if (DBL_MANT_BIT % GMP_LIMB_BITS) > GMP_LIMB_BITS / 2 - { - mp_limb_t hi, lo; - y *= (mp_limb_t) 1 << (DBL_MANT_BIT % (GMP_LIMB_BITS / 2)); - hi = (int) y; - y -= hi; - if (!(y >= 0.0 && y < 1.0)) - abort (); - y *= (mp_limb_t) 1 << (GMP_LIMB_BITS / 2); - lo = (int) y; - y -= lo; - if (!(y >= 0.0 && y < 1.0)) - abort (); - m.limbs[DBL_MANT_BIT / GMP_LIMB_BITS] = (hi << (GMP_LIMB_BITS / 2)) | lo; - } -# else - { - mp_limb_t d; - y *= (mp_limb_t) 1 << (DBL_MANT_BIT % GMP_LIMB_BITS); - d = (int) y; - y -= d; - if (!(y >= 0.0 && y < 1.0)) - abort (); - m.limbs[DBL_MANT_BIT / GMP_LIMB_BITS] = d; - } -# endif -# endif - for (i = DBL_MANT_BIT / GMP_LIMB_BITS; i > 0; ) - { - mp_limb_t hi, lo; - y *= (mp_limb_t) 1 << (GMP_LIMB_BITS / 2); - hi = (int) y; - y -= hi; - if (!(y >= 0.0 && y < 1.0)) - abort (); - y *= (mp_limb_t) 1 << (GMP_LIMB_BITS / 2); - lo = (int) y; - y -= lo; - if (!(y >= 0.0 && y < 1.0)) - abort (); - m.limbs[--i] = (hi << (GMP_LIMB_BITS / 2)) | lo; - } - if (!(y == 0.0)) - abort (); - /* Normalise. */ - while (m.nlimbs > 0 && m.limbs[m.nlimbs - 1] == 0) - m.nlimbs--; - *mp = m; - *ep = exp - DBL_MANT_BIT; - return m.limbs; -} - -# endif - -/* Assuming x = 2^e * m is finite and >= 0, and n is an integer: - Returns the decimal representation of round (x * 10^n). - Return the allocated memory - containing the decimal digits in low-to-high - order, terminated with a NUL character - in case of success, NULL in case - of memory allocation failure. */ -static char * -scale10_round_decimal_decoded (int e, mpn_t m, void *memory, int n) -{ - int s; - size_t extra_zeroes; - unsigned int abs_n; - unsigned int abs_s; - mp_limb_t *pow5_ptr; - size_t pow5_len; - unsigned int s_limbs; - unsigned int s_bits; - mpn_t pow5; - mpn_t z; - void *z_memory; - char *digits; - - if (memory == NULL) - return NULL; - /* x = 2^e * m, hence - y = round (2^e * 10^n * m) = round (2^(e+n) * 5^n * m) - = round (2^s * 5^n * m). */ - s = e + n; - extra_zeroes = 0; - /* Factor out a common power of 10 if possible. */ - if (s > 0 && n > 0) - { - extra_zeroes = (s < n ? s : n); - s -= extra_zeroes; - n -= extra_zeroes; - } - /* Here y = round (2^s * 5^n * m) * 10^extra_zeroes. - Before converting to decimal, we need to compute - z = round (2^s * 5^n * m). */ - /* Compute 5^|n|, possibly shifted by |s| bits if n and s have the same - sign. 2.322 is slightly larger than log(5)/log(2). */ - abs_n = (n >= 0 ? n : -n); - abs_s = (s >= 0 ? s : -s); - pow5_ptr = (mp_limb_t *) malloc (((int)(abs_n * (2.322f / GMP_LIMB_BITS)) + 1 - + abs_s / GMP_LIMB_BITS + 1) - * sizeof (mp_limb_t)); - if (pow5_ptr == NULL) - { - free (memory); - return NULL; - } - /* Initialize with 1. */ - pow5_ptr[0] = 1; - pow5_len = 1; - /* Multiply with 5^|n|. */ - if (abs_n > 0) - { - static mp_limb_t const small_pow5[13 + 1] = - { - 1, 5, 25, 125, 625, 3125, 15625, 78125, 390625, 1953125, 9765625, - 48828125, 244140625, 1220703125 - }; - unsigned int n13; - for (n13 = 0; n13 <= abs_n; n13 += 13) - { - mp_limb_t digit1 = small_pow5[n13 + 13 <= abs_n ? 13 : abs_n - n13]; - size_t j; - mp_twolimb_t carry = 0; - for (j = 0; j < pow5_len; j++) - { - mp_limb_t digit2 = pow5_ptr[j]; - carry += (mp_twolimb_t) digit1 * (mp_twolimb_t) digit2; - pow5_ptr[j] = (mp_limb_t) carry; - carry = carry >> GMP_LIMB_BITS; - } - if (carry > 0) - pow5_ptr[pow5_len++] = (mp_limb_t) carry; - } - } - s_limbs = abs_s / GMP_LIMB_BITS; - s_bits = abs_s % GMP_LIMB_BITS; - if (n >= 0 ? s >= 0 : s <= 0) - { - /* Multiply with 2^|s|. */ - if (s_bits > 0) - { - mp_limb_t *ptr = pow5_ptr; - mp_twolimb_t accu = 0; - size_t count; - for (count = pow5_len; count > 0; count--) - { - accu += (mp_twolimb_t) *ptr << s_bits; - *ptr++ = (mp_limb_t) accu; - accu = accu >> GMP_LIMB_BITS; - } - if (accu > 0) - { - *ptr = (mp_limb_t) accu; - pow5_len++; - } - } - if (s_limbs > 0) - { - size_t count; - for (count = pow5_len; count > 0;) - { - count--; - pow5_ptr[s_limbs + count] = pow5_ptr[count]; - } - for (count = s_limbs; count > 0;) - { - count--; - pow5_ptr[count] = 0; - } - pow5_len += s_limbs; - } - pow5.limbs = pow5_ptr; - pow5.nlimbs = pow5_len; - if (n >= 0) - { - /* Multiply m with pow5. No division needed. */ - z_memory = multiply (m, pow5, &z); - } - else - { - /* Divide m by pow5 and round. */ - z_memory = divide (m, pow5, &z); - } - } - else - { - pow5.limbs = pow5_ptr; - pow5.nlimbs = pow5_len; - if (n >= 0) - { - /* n >= 0, s < 0. - Multiply m with pow5, then divide by 2^|s|. */ - mpn_t numerator; - mpn_t denominator; - void *tmp_memory; - tmp_memory = multiply (m, pow5, &numerator); - if (tmp_memory == NULL) - { - free (pow5_ptr); - free (memory); - return NULL; - } - /* Construct 2^|s|. */ - { - mp_limb_t *ptr = pow5_ptr + pow5_len; - size_t i; - for (i = 0; i < s_limbs; i++) - ptr[i] = 0; - ptr[s_limbs] = (mp_limb_t) 1 << s_bits; - denominator.limbs = ptr; - denominator.nlimbs = s_limbs + 1; - } - z_memory = divide (numerator, denominator, &z); - free (tmp_memory); - } - else - { - /* n < 0, s > 0. - Multiply m with 2^s, then divide by pow5. */ - mpn_t numerator; - mp_limb_t *num_ptr; - num_ptr = (mp_limb_t *) malloc ((m.nlimbs + s_limbs + 1) - * sizeof (mp_limb_t)); - if (num_ptr == NULL) - { - free (pow5_ptr); - free (memory); - return NULL; - } - { - mp_limb_t *destptr = num_ptr; - { - size_t i; - for (i = 0; i < s_limbs; i++) - *destptr++ = 0; - } - if (s_bits > 0) - { - const mp_limb_t *sourceptr = m.limbs; - mp_twolimb_t accu = 0; - size_t count; - for (count = m.nlimbs; count > 0; count--) - { - accu += (mp_twolimb_t) *sourceptr++ << s_bits; - *destptr++ = (mp_limb_t) accu; - accu = accu >> GMP_LIMB_BITS; - } - if (accu > 0) - *destptr++ = (mp_limb_t) accu; - } - else - { - const mp_limb_t *sourceptr = m.limbs; - size_t count; - for (count = m.nlimbs; count > 0; count--) - *destptr++ = *sourceptr++; - } - numerator.limbs = num_ptr; - numerator.nlimbs = destptr - num_ptr; - } - z_memory = divide (numerator, pow5, &z); - free (num_ptr); - } - } - free (pow5_ptr); - free (memory); - - /* Here y = round (x * 10^n) = z * 10^extra_zeroes. */ - - if (z_memory == NULL) - return NULL; - digits = convert_to_decimal (z, extra_zeroes); - free (z_memory); - return digits; -} - -# if NEED_PRINTF_LONG_DOUBLE - -/* Assuming x is finite and >= 0, and n is an integer: - Returns the decimal representation of round (x * 10^n). - Return the allocated memory - containing the decimal digits in low-to-high - order, terminated with a NUL character - in case of success, NULL in case - of memory allocation failure. */ -static char * -scale10_round_decimal_long_double (long double x, int n) -{ - int e IF_LINT(= 0); - mpn_t m; - void *memory = decode_long_double (x, &e, &m); - return scale10_round_decimal_decoded (e, m, memory, n); -} - -# endif - -# if NEED_PRINTF_DOUBLE - -/* Assuming x is finite and >= 0, and n is an integer: - Returns the decimal representation of round (x * 10^n). - Return the allocated memory - containing the decimal digits in low-to-high - order, terminated with a NUL character - in case of success, NULL in case - of memory allocation failure. */ -static char * -scale10_round_decimal_double (double x, int n) -{ - int e IF_LINT(= 0); - mpn_t m; - void *memory = decode_double (x, &e, &m); - return scale10_round_decimal_decoded (e, m, memory, n); -} - -# endif - -# if NEED_PRINTF_LONG_DOUBLE - -/* Assuming x is finite and > 0: - Return an approximation for n with 10^n <= x < 10^(n+1). - The approximation is usually the right n, but may be off by 1 sometimes. */ -static int -floorlog10l (long double x) -{ - int exp; - long double y; - double z; - double l; - - /* Split into exponential part and mantissa. */ - y = frexpl (x, &exp); - if (!(y >= 0.0L && y < 1.0L)) - abort (); - if (y == 0.0L) - return INT_MIN; - if (y < 0.5L) - { - while (y < (1.0L / (1 << (GMP_LIMB_BITS / 2)) / (1 << (GMP_LIMB_BITS / 2)))) - { - y *= 1.0L * (1 << (GMP_LIMB_BITS / 2)) * (1 << (GMP_LIMB_BITS / 2)); - exp -= GMP_LIMB_BITS; - } - if (y < (1.0L / (1 << 16))) - { - y *= 1.0L * (1 << 16); - exp -= 16; - } - if (y < (1.0L / (1 << 8))) - { - y *= 1.0L * (1 << 8); - exp -= 8; - } - if (y < (1.0L / (1 << 4))) - { - y *= 1.0L * (1 << 4); - exp -= 4; - } - if (y < (1.0L / (1 << 2))) - { - y *= 1.0L * (1 << 2); - exp -= 2; - } - if (y < (1.0L / (1 << 1))) - { - y *= 1.0L * (1 << 1); - exp -= 1; - } - } - if (!(y >= 0.5L && y < 1.0L)) - abort (); - /* Compute an approximation for l = log2(x) = exp + log2(y). */ - l = exp; - z = y; - if (z < 0.70710678118654752444) - { - z *= 1.4142135623730950488; - l -= 0.5; - } - if (z < 0.8408964152537145431) - { - z *= 1.1892071150027210667; - l -= 0.25; - } - if (z < 0.91700404320467123175) - { - z *= 1.0905077326652576592; - l -= 0.125; - } - if (z < 0.9576032806985736469) - { - z *= 1.0442737824274138403; - l -= 0.0625; - } - /* Now 0.95 <= z <= 1.01. */ - z = 1 - z; - /* log2(1-z) = 1/log(2) * (- z - z^2/2 - z^3/3 - z^4/4 - ...) - Four terms are enough to get an approximation with error < 10^-7. */ - l -= 1.4426950408889634074 * z * (1.0 + z * (0.5 + z * ((1.0 / 3) + z * 0.25))); - /* Finally multiply with log(2)/log(10), yields an approximation for - log10(x). */ - l *= 0.30102999566398119523; - /* Round down to the next integer. */ - return (int) l + (l < 0 ? -1 : 0); -} - -# endif - -# if NEED_PRINTF_DOUBLE - -/* Assuming x is finite and > 0: - Return an approximation for n with 10^n <= x < 10^(n+1). - The approximation is usually the right n, but may be off by 1 sometimes. */ -static int -floorlog10 (double x) -{ - int exp; - double y; - double z; - double l; - - /* Split into exponential part and mantissa. */ - y = frexp (x, &exp); - if (!(y >= 0.0 && y < 1.0)) - abort (); - if (y == 0.0) - return INT_MIN; - if (y < 0.5) - { - while (y < (1.0 / (1 << (GMP_LIMB_BITS / 2)) / (1 << (GMP_LIMB_BITS / 2)))) - { - y *= 1.0 * (1 << (GMP_LIMB_BITS / 2)) * (1 << (GMP_LIMB_BITS / 2)); - exp -= GMP_LIMB_BITS; - } - if (y < (1.0 / (1 << 16))) - { - y *= 1.0 * (1 << 16); - exp -= 16; - } - if (y < (1.0 / (1 << 8))) - { - y *= 1.0 * (1 << 8); - exp -= 8; - } - if (y < (1.0 / (1 << 4))) - { - y *= 1.0 * (1 << 4); - exp -= 4; - } - if (y < (1.0 / (1 << 2))) - { - y *= 1.0 * (1 << 2); - exp -= 2; - } - if (y < (1.0 / (1 << 1))) - { - y *= 1.0 * (1 << 1); - exp -= 1; - } - } - if (!(y >= 0.5 && y < 1.0)) - abort (); - /* Compute an approximation for l = log2(x) = exp + log2(y). */ - l = exp; - z = y; - if (z < 0.70710678118654752444) - { - z *= 1.4142135623730950488; - l -= 0.5; - } - if (z < 0.8408964152537145431) - { - z *= 1.1892071150027210667; - l -= 0.25; - } - if (z < 0.91700404320467123175) - { - z *= 1.0905077326652576592; - l -= 0.125; - } - if (z < 0.9576032806985736469) - { - z *= 1.0442737824274138403; - l -= 0.0625; - } - /* Now 0.95 <= z <= 1.01. */ - z = 1 - z; - /* log2(1-z) = 1/log(2) * (- z - z^2/2 - z^3/3 - z^4/4 - ...) - Four terms are enough to get an approximation with error < 10^-7. */ - l -= 1.4426950408889634074 * z * (1.0 + z * (0.5 + z * ((1.0 / 3) + z * 0.25))); - /* Finally multiply with log(2)/log(10), yields an approximation for - log10(x). */ - l *= 0.30102999566398119523; - /* Round down to the next integer. */ - return (int) l + (l < 0 ? -1 : 0); -} - -# endif - -/* Tests whether a string of digits consists of exactly PRECISION zeroes and - a single '1' digit. */ -static int -is_borderline (const char *digits, size_t precision) -{ - for (; precision > 0; precision--, digits++) - if (*digits != '0') - return 0; - if (*digits != '1') - return 0; - digits++; - return *digits == '\0'; -} - -#endif - -#if !USE_SNPRINTF || !HAVE_SNPRINTF_RETVAL_C99 || USE_MSVC__SNPRINTF - -/* Use a different function name, to make it possible that the 'wchar_t' - parametrization and the 'char' parametrization get compiled in the same - translation unit. */ -# if WIDE_CHAR_VERSION -# define MAX_ROOM_NEEDED wmax_room_needed -# else -# define MAX_ROOM_NEEDED max_room_needed -# endif - -/* Returns the number of TCHAR_T units needed as temporary space for the result - of sprintf or SNPRINTF of a single conversion directive. */ -static size_t -MAX_ROOM_NEEDED (const arguments *ap, size_t arg_index, FCHAR_T conversion, - arg_type type, int flags, size_t width, int has_precision, - size_t precision, int pad_ourselves) -{ - size_t tmp_length; - - switch (conversion) - { - case 'd': case 'i': case 'u': -# if HAVE_LONG_LONG_INT - if (type == TYPE_LONGLONGINT || type == TYPE_ULONGLONGINT) - tmp_length = - (unsigned int) (sizeof (unsigned long long) * CHAR_BIT - * 0.30103 /* binary -> decimal */ - ) - + 1; /* turn floor into ceil */ - else -# endif - if (type == TYPE_LONGINT || type == TYPE_ULONGINT) - tmp_length = - (unsigned int) (sizeof (unsigned long) * CHAR_BIT - * 0.30103 /* binary -> decimal */ - ) - + 1; /* turn floor into ceil */ - else - tmp_length = - (unsigned int) (sizeof (unsigned int) * CHAR_BIT - * 0.30103 /* binary -> decimal */ - ) - + 1; /* turn floor into ceil */ - if (tmp_length < precision) - tmp_length = precision; - /* Multiply by 2, as an estimate for FLAG_GROUP. */ - tmp_length = xsum (tmp_length, tmp_length); - /* Add 1, to account for a leading sign. */ - tmp_length = xsum (tmp_length, 1); - break; - - case 'o': -# if HAVE_LONG_LONG_INT - if (type == TYPE_LONGLONGINT || type == TYPE_ULONGLONGINT) - tmp_length = - (unsigned int) (sizeof (unsigned long long) * CHAR_BIT - * 0.333334 /* binary -> octal */ - ) - + 1; /* turn floor into ceil */ - else -# endif - if (type == TYPE_LONGINT || type == TYPE_ULONGINT) - tmp_length = - (unsigned int) (sizeof (unsigned long) * CHAR_BIT - * 0.333334 /* binary -> octal */ - ) - + 1; /* turn floor into ceil */ - else - tmp_length = - (unsigned int) (sizeof (unsigned int) * CHAR_BIT - * 0.333334 /* binary -> octal */ - ) - + 1; /* turn floor into ceil */ - if (tmp_length < precision) - tmp_length = precision; - /* Add 1, to account for a leading sign. */ - tmp_length = xsum (tmp_length, 1); - break; - - case 'x': case 'X': -# if HAVE_LONG_LONG_INT - if (type == TYPE_LONGLONGINT || type == TYPE_ULONGLONGINT) - tmp_length = - (unsigned int) (sizeof (unsigned long long) * CHAR_BIT - * 0.25 /* binary -> hexadecimal */ - ) - + 1; /* turn floor into ceil */ - else -# endif - if (type == TYPE_LONGINT || type == TYPE_ULONGINT) - tmp_length = - (unsigned int) (sizeof (unsigned long) * CHAR_BIT - * 0.25 /* binary -> hexadecimal */ - ) - + 1; /* turn floor into ceil */ - else - tmp_length = - (unsigned int) (sizeof (unsigned int) * CHAR_BIT - * 0.25 /* binary -> hexadecimal */ - ) - + 1; /* turn floor into ceil */ - if (tmp_length < precision) - tmp_length = precision; - /* Add 2, to account for a leading sign or alternate form. */ - tmp_length = xsum (tmp_length, 2); - break; - - case 'f': case 'F': - if (type == TYPE_LONGDOUBLE) - tmp_length = - (unsigned int) (LDBL_MAX_EXP - * 0.30103 /* binary -> decimal */ - * 2 /* estimate for FLAG_GROUP */ - ) - + 1 /* turn floor into ceil */ - + 10; /* sign, decimal point etc. */ - else - tmp_length = - (unsigned int) (DBL_MAX_EXP - * 0.30103 /* binary -> decimal */ - * 2 /* estimate for FLAG_GROUP */ - ) - + 1 /* turn floor into ceil */ - + 10; /* sign, decimal point etc. */ - tmp_length = xsum (tmp_length, precision); - break; - - case 'e': case 'E': case 'g': case 'G': - tmp_length = - 12; /* sign, decimal point, exponent etc. */ - tmp_length = xsum (tmp_length, precision); - break; - - case 'a': case 'A': - if (type == TYPE_LONGDOUBLE) - tmp_length = - (unsigned int) (LDBL_DIG - * 0.831 /* decimal -> hexadecimal */ - ) - + 1; /* turn floor into ceil */ - else - tmp_length = - (unsigned int) (DBL_DIG - * 0.831 /* decimal -> hexadecimal */ - ) - + 1; /* turn floor into ceil */ - if (tmp_length < precision) - tmp_length = precision; - /* Account for sign, decimal point etc. */ - tmp_length = xsum (tmp_length, 12); - break; - - case 'c': -# if HAVE_WINT_T && !WIDE_CHAR_VERSION - if (type == TYPE_WIDE_CHAR) - tmp_length = MB_CUR_MAX; - else -# endif - tmp_length = 1; - break; - - case 's': -# if HAVE_WCHAR_T - if (type == TYPE_WIDE_STRING) - { -# if WIDE_CHAR_VERSION - /* ISO C says about %ls in fwprintf: - "If the precision is not specified or is greater than the size - of the array, the array shall contain a null wide character." - So if there is a precision, we must not use wcslen. */ - const wchar_t *arg = ap->arg[arg_index].a.a_wide_string; - - if (has_precision) - tmp_length = local_wcsnlen (arg, precision); - else - tmp_length = local_wcslen (arg); -# else - /* ISO C says about %ls in fprintf: - "If a precision is specified, no more than that many bytes are - written (including shift sequences, if any), and the array - shall contain a null wide character if, to equal the multibyte - character sequence length given by the precision, the function - would need to access a wide character one past the end of the - array." - So if there is a precision, we must not use wcslen. */ - /* This case has already been handled separately in VASNPRINTF. */ - abort (); -# endif - } - else -# endif - { -# if WIDE_CHAR_VERSION - /* ISO C says about %s in fwprintf: - "If the precision is not specified or is greater than the size - of the converted array, the converted array shall contain a - null wide character." - So if there is a precision, we must not use strlen. */ - /* This case has already been handled separately in VASNPRINTF. */ - abort (); -# else - /* ISO C says about %s in fprintf: - "If the precision is not specified or greater than the size of - the array, the array shall contain a null character." - So if there is a precision, we must not use strlen. */ - const char *arg = ap->arg[arg_index].a.a_string; - - if (has_precision) - tmp_length = local_strnlen (arg, precision); - else - tmp_length = strlen (arg); -# endif - } - break; - - case 'p': - tmp_length = - (unsigned int) (sizeof (void *) * CHAR_BIT - * 0.25 /* binary -> hexadecimal */ - ) - + 1 /* turn floor into ceil */ - + 2; /* account for leading 0x */ - break; - - default: - abort (); - } - - if (!pad_ourselves) - { -# if ENABLE_UNISTDIO - /* Padding considers the number of characters, therefore the number of - elements after padding may be - > max (tmp_length, width) - but is certainly - <= tmp_length + width. */ - tmp_length = xsum (tmp_length, width); -# else - /* Padding considers the number of elements, says POSIX. */ - if (tmp_length < width) - tmp_length = width; -# endif - } - - tmp_length = xsum (tmp_length, 1); /* account for trailing NUL */ - - return tmp_length; -} - -#endif - -DCHAR_T * -VASNPRINTF (DCHAR_T *resultbuf, size_t *lengthp, - const FCHAR_T *format, va_list args) -{ - DIRECTIVES d; - arguments a; - - if (PRINTF_PARSE (format, &d, &a) < 0) - /* errno is already set. */ - return NULL; - -#define CLEANUP() \ - if (d.dir != d.direct_alloc_dir) \ - free (d.dir); \ - if (a.arg != a.direct_alloc_arg) \ - free (a.arg); - - if (PRINTF_FETCHARGS (args, &a) < 0) - { - CLEANUP (); - errno = EINVAL; - return NULL; - } - - { - size_t buf_neededlength; - TCHAR_T *buf; - TCHAR_T *buf_malloced; - const FCHAR_T *cp; - size_t i; - DIRECTIVE *dp; - /* Output string accumulator. */ - DCHAR_T *result; - size_t allocated; - size_t length; - - /* Allocate a small buffer that will hold a directive passed to - sprintf or snprintf. */ - buf_neededlength = - xsum4 (7, d.max_width_length, d.max_precision_length, 6); -#if HAVE_ALLOCA - if (buf_neededlength < 4000 / sizeof (TCHAR_T)) - { - buf = (TCHAR_T *) alloca (buf_neededlength * sizeof (TCHAR_T)); - buf_malloced = NULL; - } - else -#endif - { - size_t buf_memsize = xtimes (buf_neededlength, sizeof (TCHAR_T)); - if (size_overflow_p (buf_memsize)) - goto out_of_memory_1; - buf = (TCHAR_T *) malloc (buf_memsize); - if (buf == NULL) - goto out_of_memory_1; - buf_malloced = buf; - } - - if (resultbuf != NULL) - { - result = resultbuf; - allocated = *lengthp; - } - else - { - result = NULL; - allocated = 0; - } - length = 0; - /* Invariants: - result is either == resultbuf or == NULL or malloc-allocated. - If length > 0, then result != NULL. */ - - /* Ensures that allocated >= needed. Aborts through a jump to - out_of_memory if needed is SIZE_MAX or otherwise too big. */ -#define ENSURE_ALLOCATION(needed) \ - if ((needed) > allocated) \ - { \ - size_t memory_size; \ - DCHAR_T *memory; \ - \ - allocated = (allocated > 0 ? xtimes (allocated, 2) : 12); \ - if ((needed) > allocated) \ - allocated = (needed); \ - memory_size = xtimes (allocated, sizeof (DCHAR_T)); \ - if (size_overflow_p (memory_size)) \ - goto out_of_memory; \ - if (result == resultbuf || result == NULL) \ - memory = (DCHAR_T *) malloc (memory_size); \ - else \ - memory = (DCHAR_T *) realloc (result, memory_size); \ - if (memory == NULL) \ - goto out_of_memory; \ - if (result == resultbuf && length > 0) \ - DCHAR_CPY (memory, result, length); \ - result = memory; \ - } - - for (cp = format, i = 0, dp = &d.dir[0]; ; cp = dp->dir_end, i++, dp++) - { - if (cp != dp->dir_start) - { - size_t n = dp->dir_start - cp; - size_t augmented_length = xsum (length, n); - - ENSURE_ALLOCATION (augmented_length); - /* This copies a piece of FCHAR_T[] into a DCHAR_T[]. Here we - need that the format string contains only ASCII characters - if FCHAR_T and DCHAR_T are not the same type. */ - if (sizeof (FCHAR_T) == sizeof (DCHAR_T)) - { - DCHAR_CPY (result + length, (const DCHAR_T *) cp, n); - length = augmented_length; - } - else - { - do - result[length++] = *cp++; - while (--n > 0); - } - } - if (i == d.count) - break; - - /* Execute a single directive. */ - if (dp->conversion == '%') - { - size_t augmented_length; - - if (!(dp->arg_index == ARG_NONE)) - abort (); - augmented_length = xsum (length, 1); - ENSURE_ALLOCATION (augmented_length); - result[length] = '%'; - length = augmented_length; - } - else - { - if (!(dp->arg_index != ARG_NONE)) - abort (); - - if (dp->conversion == 'n') - { - switch (a.arg[dp->arg_index].type) - { - case TYPE_COUNT_SCHAR_POINTER: - *a.arg[dp->arg_index].a.a_count_schar_pointer = length; - break; - case TYPE_COUNT_SHORT_POINTER: - *a.arg[dp->arg_index].a.a_count_short_pointer = length; - break; - case TYPE_COUNT_INT_POINTER: - *a.arg[dp->arg_index].a.a_count_int_pointer = length; - break; - case TYPE_COUNT_LONGINT_POINTER: - *a.arg[dp->arg_index].a.a_count_longint_pointer = length; - break; -#if HAVE_LONG_LONG_INT - case TYPE_COUNT_LONGLONGINT_POINTER: - *a.arg[dp->arg_index].a.a_count_longlongint_pointer = length; - break; -#endif - default: - abort (); - } - } -#if ENABLE_UNISTDIO - /* The unistdio extensions. */ - else if (dp->conversion == 'U') - { - arg_type type = a.arg[dp->arg_index].type; - int flags = dp->flags; - int has_width; - size_t width; - int has_precision; - size_t precision; - - has_width = 0; - width = 0; - if (dp->width_start != dp->width_end) - { - if (dp->width_arg_index != ARG_NONE) - { - int arg; - - if (!(a.arg[dp->width_arg_index].type == TYPE_INT)) - abort (); - arg = a.arg[dp->width_arg_index].a.a_int; - width = arg; - if (arg < 0) - { - /* "A negative field width is taken as a '-' flag - followed by a positive field width." */ - flags |= FLAG_LEFT; - width = -width; - } - } - else - { - const FCHAR_T *digitp = dp->width_start; - - do - width = xsum (xtimes (width, 10), *digitp++ - '0'); - while (digitp != dp->width_end); - } - has_width = 1; - } - - has_precision = 0; - precision = 0; - if (dp->precision_start != dp->precision_end) - { - if (dp->precision_arg_index != ARG_NONE) - { - int arg; - - if (!(a.arg[dp->precision_arg_index].type == TYPE_INT)) - abort (); - arg = a.arg[dp->precision_arg_index].a.a_int; - /* "A negative precision is taken as if the precision - were omitted." */ - if (arg >= 0) - { - precision = arg; - has_precision = 1; - } - } - else - { - const FCHAR_T *digitp = dp->precision_start + 1; - - precision = 0; - while (digitp != dp->precision_end) - precision = xsum (xtimes (precision, 10), *digitp++ - '0'); - has_precision = 1; - } - } - - switch (type) - { - case TYPE_U8_STRING: - { - const uint8_t *arg = a.arg[dp->arg_index].a.a_u8_string; - const uint8_t *arg_end; - size_t characters; - - if (has_precision) - { - /* Use only PRECISION characters, from the left. */ - arg_end = arg; - characters = 0; - for (; precision > 0; precision--) - { - int count = u8_strmblen (arg_end); - if (count == 0) - break; - if (count < 0) - { - if (!(result == resultbuf || result == NULL)) - free (result); - if (buf_malloced != NULL) - free (buf_malloced); - CLEANUP (); - errno = EILSEQ; - return NULL; - } - arg_end += count; - characters++; - } - } - else if (has_width) - { - /* Use the entire string, and count the number of - characters. */ - arg_end = arg; - characters = 0; - for (;;) - { - int count = u8_strmblen (arg_end); - if (count == 0) - break; - if (count < 0) - { - if (!(result == resultbuf || result == NULL)) - free (result); - if (buf_malloced != NULL) - free (buf_malloced); - CLEANUP (); - errno = EILSEQ; - return NULL; - } - arg_end += count; - characters++; - } - } - else - { - /* Use the entire string. */ - arg_end = arg + u8_strlen (arg); - /* The number of characters doesn't matter. */ - characters = 0; - } - - if (characters < width && !(dp->flags & FLAG_LEFT)) - { - size_t n = width - characters; - ENSURE_ALLOCATION (xsum (length, n)); - DCHAR_SET (result + length, ' ', n); - length += n; - } - -# if DCHAR_IS_UINT8_T - { - size_t n = arg_end - arg; - ENSURE_ALLOCATION (xsum (length, n)); - DCHAR_CPY (result + length, arg, n); - length += n; - } -# else - { /* Convert. */ - DCHAR_T *converted = result + length; - size_t converted_len = allocated - length; -# if DCHAR_IS_TCHAR - /* Convert from UTF-8 to locale encoding. */ - converted = - u8_conv_to_encoding (locale_charset (), - iconveh_question_mark, - arg, arg_end - arg, NULL, - converted, &converted_len); -# else - /* Convert from UTF-8 to UTF-16/UTF-32. */ - converted = - U8_TO_DCHAR (arg, arg_end - arg, - converted, &converted_len); -# endif - if (converted == NULL) - { - int saved_errno = errno; - if (!(result == resultbuf || result == NULL)) - free (result); - if (buf_malloced != NULL) - free (buf_malloced); - CLEANUP (); - errno = saved_errno; - return NULL; - } - if (converted != result + length) - { - ENSURE_ALLOCATION (xsum (length, converted_len)); - DCHAR_CPY (result + length, converted, converted_len); - free (converted); - } - length += converted_len; - } -# endif - - if (characters < width && (dp->flags & FLAG_LEFT)) - { - size_t n = width - characters; - ENSURE_ALLOCATION (xsum (length, n)); - DCHAR_SET (result + length, ' ', n); - length += n; - } - } - break; - - case TYPE_U16_STRING: - { - const uint16_t *arg = a.arg[dp->arg_index].a.a_u16_string; - const uint16_t *arg_end; - size_t characters; - - if (has_precision) - { - /* Use only PRECISION characters, from the left. */ - arg_end = arg; - characters = 0; - for (; precision > 0; precision--) - { - int count = u16_strmblen (arg_end); - if (count == 0) - break; - if (count < 0) - { - if (!(result == resultbuf || result == NULL)) - free (result); - if (buf_malloced != NULL) - free (buf_malloced); - CLEANUP (); - errno = EILSEQ; - return NULL; - } - arg_end += count; - characters++; - } - } - else if (has_width) - { - /* Use the entire string, and count the number of - characters. */ - arg_end = arg; - characters = 0; - for (;;) - { - int count = u16_strmblen (arg_end); - if (count == 0) - break; - if (count < 0) - { - if (!(result == resultbuf || result == NULL)) - free (result); - if (buf_malloced != NULL) - free (buf_malloced); - CLEANUP (); - errno = EILSEQ; - return NULL; - } - arg_end += count; - characters++; - } - } - else - { - /* Use the entire string. */ - arg_end = arg + u16_strlen (arg); - /* The number of characters doesn't matter. */ - characters = 0; - } - - if (characters < width && !(dp->flags & FLAG_LEFT)) - { - size_t n = width - characters; - ENSURE_ALLOCATION (xsum (length, n)); - DCHAR_SET (result + length, ' ', n); - length += n; - } - -# if DCHAR_IS_UINT16_T - { - size_t n = arg_end - arg; - ENSURE_ALLOCATION (xsum (length, n)); - DCHAR_CPY (result + length, arg, n); - length += n; - } -# else - { /* Convert. */ - DCHAR_T *converted = result + length; - size_t converted_len = allocated - length; -# if DCHAR_IS_TCHAR - /* Convert from UTF-16 to locale encoding. */ - converted = - u16_conv_to_encoding (locale_charset (), - iconveh_question_mark, - arg, arg_end - arg, NULL, - converted, &converted_len); -# else - /* Convert from UTF-16 to UTF-8/UTF-32. */ - converted = - U16_TO_DCHAR (arg, arg_end - arg, - converted, &converted_len); -# endif - if (converted == NULL) - { - int saved_errno = errno; - if (!(result == resultbuf || result == NULL)) - free (result); - if (buf_malloced != NULL) - free (buf_malloced); - CLEANUP (); - errno = saved_errno; - return NULL; - } - if (converted != result + length) - { - ENSURE_ALLOCATION (xsum (length, converted_len)); - DCHAR_CPY (result + length, converted, converted_len); - free (converted); - } - length += converted_len; - } -# endif - - if (characters < width && (dp->flags & FLAG_LEFT)) - { - size_t n = width - characters; - ENSURE_ALLOCATION (xsum (length, n)); - DCHAR_SET (result + length, ' ', n); - length += n; - } - } - break; - - case TYPE_U32_STRING: - { - const uint32_t *arg = a.arg[dp->arg_index].a.a_u32_string; - const uint32_t *arg_end; - size_t characters; - - if (has_precision) - { - /* Use only PRECISION characters, from the left. */ - arg_end = arg; - characters = 0; - for (; precision > 0; precision--) - { - int count = u32_strmblen (arg_end); - if (count == 0) - break; - if (count < 0) - { - if (!(result == resultbuf || result == NULL)) - free (result); - if (buf_malloced != NULL) - free (buf_malloced); - CLEANUP (); - errno = EILSEQ; - return NULL; - } - arg_end += count; - characters++; - } - } - else if (has_width) - { - /* Use the entire string, and count the number of - characters. */ - arg_end = arg; - characters = 0; - for (;;) - { - int count = u32_strmblen (arg_end); - if (count == 0) - break; - if (count < 0) - { - if (!(result == resultbuf || result == NULL)) - free (result); - if (buf_malloced != NULL) - free (buf_malloced); - CLEANUP (); - errno = EILSEQ; - return NULL; - } - arg_end += count; - characters++; - } - } - else - { - /* Use the entire string. */ - arg_end = arg + u32_strlen (arg); - /* The number of characters doesn't matter. */ - characters = 0; - } - - if (characters < width && !(dp->flags & FLAG_LEFT)) - { - size_t n = width - characters; - ENSURE_ALLOCATION (xsum (length, n)); - DCHAR_SET (result + length, ' ', n); - length += n; - } - -# if DCHAR_IS_UINT32_T - { - size_t n = arg_end - arg; - ENSURE_ALLOCATION (xsum (length, n)); - DCHAR_CPY (result + length, arg, n); - length += n; - } -# else - { /* Convert. */ - DCHAR_T *converted = result + length; - size_t converted_len = allocated - length; -# if DCHAR_IS_TCHAR - /* Convert from UTF-32 to locale encoding. */ - converted = - u32_conv_to_encoding (locale_charset (), - iconveh_question_mark, - arg, arg_end - arg, NULL, - converted, &converted_len); -# else - /* Convert from UTF-32 to UTF-8/UTF-16. */ - converted = - U32_TO_DCHAR (arg, arg_end - arg, - converted, &converted_len); -# endif - if (converted == NULL) - { - int saved_errno = errno; - if (!(result == resultbuf || result == NULL)) - free (result); - if (buf_malloced != NULL) - free (buf_malloced); - CLEANUP (); - errno = saved_errno; - return NULL; - } - if (converted != result + length) - { - ENSURE_ALLOCATION (xsum (length, converted_len)); - DCHAR_CPY (result + length, converted, converted_len); - free (converted); - } - length += converted_len; - } -# endif - - if (characters < width && (dp->flags & FLAG_LEFT)) - { - size_t n = width - characters; - ENSURE_ALLOCATION (xsum (length, n)); - DCHAR_SET (result + length, ' ', n); - length += n; - } - } - break; - - default: - abort (); - } - } -#endif -#if (!USE_SNPRINTF || !HAVE_SNPRINTF_RETVAL_C99 || USE_MSVC__SNPRINTF || (NEED_PRINTF_DIRECTIVE_LS && !defined IN_LIBINTL)) && HAVE_WCHAR_T - else if (dp->conversion == 's' -# if WIDE_CHAR_VERSION - && a.arg[dp->arg_index].type != TYPE_WIDE_STRING -# else - && a.arg[dp->arg_index].type == TYPE_WIDE_STRING -# endif - ) - { - /* The normal handling of the 's' directive below requires - allocating a temporary buffer. The determination of its - length (tmp_length), in the case when a precision is - specified, below requires a conversion between a char[] - string and a wchar_t[] wide string. It could be done, but - we have no guarantee that the implementation of sprintf will - use the exactly same algorithm. Without this guarantee, it - is possible to have buffer overrun bugs. In order to avoid - such bugs, we implement the entire processing of the 's' - directive ourselves. */ - int flags = dp->flags; - int has_width; - size_t width; - int has_precision; - size_t precision; - - has_width = 0; - width = 0; - if (dp->width_start != dp->width_end) - { - if (dp->width_arg_index != ARG_NONE) - { - int arg; - - if (!(a.arg[dp->width_arg_index].type == TYPE_INT)) - abort (); - arg = a.arg[dp->width_arg_index].a.a_int; - width = arg; - if (arg < 0) - { - /* "A negative field width is taken as a '-' flag - followed by a positive field width." */ - flags |= FLAG_LEFT; - width = -width; - } - } - else - { - const FCHAR_T *digitp = dp->width_start; - - do - width = xsum (xtimes (width, 10), *digitp++ - '0'); - while (digitp != dp->width_end); - } - has_width = 1; - } - - has_precision = 0; - precision = 6; - if (dp->precision_start != dp->precision_end) - { - if (dp->precision_arg_index != ARG_NONE) - { - int arg; - - if (!(a.arg[dp->precision_arg_index].type == TYPE_INT)) - abort (); - arg = a.arg[dp->precision_arg_index].a.a_int; - /* "A negative precision is taken as if the precision - were omitted." */ - if (arg >= 0) - { - precision = arg; - has_precision = 1; - } - } - else - { - const FCHAR_T *digitp = dp->precision_start + 1; - - precision = 0; - while (digitp != dp->precision_end) - precision = xsum (xtimes (precision, 10), *digitp++ - '0'); - has_precision = 1; - } - } - -# if WIDE_CHAR_VERSION - /* %s in vasnwprintf. See the specification of fwprintf. */ - { - const char *arg = a.arg[dp->arg_index].a.a_string; - const char *arg_end; - size_t characters; - - if (has_precision) - { - /* Use only as many bytes as needed to produce PRECISION - wide characters, from the left. */ -# if HAVE_MBRTOWC - mbstate_t state; - memset (&state, '\0', sizeof (mbstate_t)); -# endif - arg_end = arg; - characters = 0; - for (; precision > 0; precision--) - { - int count; -# if HAVE_MBRTOWC - count = mbrlen (arg_end, MB_CUR_MAX, &state); -# else - count = mblen (arg_end, MB_CUR_MAX); -# endif - if (count == 0) - /* Found the terminating NUL. */ - break; - if (count < 0) - { - /* Invalid or incomplete multibyte character. */ - if (!(result == resultbuf || result == NULL)) - free (result); - if (buf_malloced != NULL) - free (buf_malloced); - CLEANUP (); - errno = EILSEQ; - return NULL; - } - arg_end += count; - characters++; - } - } - else if (has_width) - { - /* Use the entire string, and count the number of wide - characters. */ -# if HAVE_MBRTOWC - mbstate_t state; - memset (&state, '\0', sizeof (mbstate_t)); -# endif - arg_end = arg; - characters = 0; - for (;;) - { - int count; -# if HAVE_MBRTOWC - count = mbrlen (arg_end, MB_CUR_MAX, &state); -# else - count = mblen (arg_end, MB_CUR_MAX); -# endif - if (count == 0) - /* Found the terminating NUL. */ - break; - if (count < 0) - { - /* Invalid or incomplete multibyte character. */ - if (!(result == resultbuf || result == NULL)) - free (result); - if (buf_malloced != NULL) - free (buf_malloced); - CLEANUP (); - errno = EILSEQ; - return NULL; - } - arg_end += count; - characters++; - } - } - else - { - /* Use the entire string. */ - arg_end = arg + strlen (arg); - /* The number of characters doesn't matter. */ - characters = 0; - } - - if (characters < width && !(dp->flags & FLAG_LEFT)) - { - size_t n = width - characters; - ENSURE_ALLOCATION (xsum (length, n)); - DCHAR_SET (result + length, ' ', n); - length += n; - } - - if (has_precision || has_width) - { - /* We know the number of wide characters in advance. */ - size_t remaining; -# if HAVE_MBRTOWC - mbstate_t state; - memset (&state, '\0', sizeof (mbstate_t)); -# endif - ENSURE_ALLOCATION (xsum (length, characters)); - for (remaining = characters; remaining > 0; remaining--) - { - wchar_t wc; - int count; -# if HAVE_MBRTOWC - count = mbrtowc (&wc, arg, arg_end - arg, &state); -# else - count = mbtowc (&wc, arg, arg_end - arg); -# endif - if (count <= 0) - /* mbrtowc not consistent with mbrlen, or mbtowc - not consistent with mblen. */ - abort (); - result[length++] = wc; - arg += count; - } - if (!(arg == arg_end)) - abort (); - } - else - { -# if HAVE_MBRTOWC - mbstate_t state; - memset (&state, '\0', sizeof (mbstate_t)); -# endif - while (arg < arg_end) - { - wchar_t wc; - int count; -# if HAVE_MBRTOWC - count = mbrtowc (&wc, arg, arg_end - arg, &state); -# else - count = mbtowc (&wc, arg, arg_end - arg); -# endif - if (count <= 0) - /* mbrtowc not consistent with mbrlen, or mbtowc - not consistent with mblen. */ - abort (); - ENSURE_ALLOCATION (xsum (length, 1)); - result[length++] = wc; - arg += count; - } - } - - if (characters < width && (dp->flags & FLAG_LEFT)) - { - size_t n = width - characters; - ENSURE_ALLOCATION (xsum (length, n)); - DCHAR_SET (result + length, ' ', n); - length += n; - } - } -# else - /* %ls in vasnprintf. See the specification of fprintf. */ - { - const wchar_t *arg = a.arg[dp->arg_index].a.a_wide_string; - const wchar_t *arg_end; - size_t characters; -# if !DCHAR_IS_TCHAR - /* This code assumes that TCHAR_T is 'char'. */ - verify (sizeof (TCHAR_T) == 1); - TCHAR_T *tmpsrc; - DCHAR_T *tmpdst; - size_t tmpdst_len; -# endif - size_t w; - - if (has_precision) - { - /* Use only as many wide characters as needed to produce - at most PRECISION bytes, from the left. */ -# if HAVE_WCRTOMB && !defined GNULIB_defined_mbstate_t - mbstate_t state; - memset (&state, '\0', sizeof (mbstate_t)); -# endif - arg_end = arg; - characters = 0; - while (precision > 0) - { - char cbuf[64]; /* Assume MB_CUR_MAX <= 64. */ - int count; - - if (*arg_end == 0) - /* Found the terminating null wide character. */ - break; -# if HAVE_WCRTOMB && !defined GNULIB_defined_mbstate_t - count = wcrtomb (cbuf, *arg_end, &state); -# else - count = wctomb (cbuf, *arg_end); -# endif - if (count < 0) - { - /* Cannot convert. */ - if (!(result == resultbuf || result == NULL)) - free (result); - if (buf_malloced != NULL) - free (buf_malloced); - CLEANUP (); - errno = EILSEQ; - return NULL; - } - if (precision < (unsigned int) count) - break; - arg_end++; - characters += count; - precision -= count; - } - } -# if DCHAR_IS_TCHAR - else if (has_width) -# else - else -# endif - { - /* Use the entire string, and count the number of - bytes. */ -# if HAVE_WCRTOMB && !defined GNULIB_defined_mbstate_t - mbstate_t state; - memset (&state, '\0', sizeof (mbstate_t)); -# endif - arg_end = arg; - characters = 0; - for (;;) - { - char cbuf[64]; /* Assume MB_CUR_MAX <= 64. */ - int count; - - if (*arg_end == 0) - /* Found the terminating null wide character. */ - break; -# if HAVE_WCRTOMB && !defined GNULIB_defined_mbstate_t - count = wcrtomb (cbuf, *arg_end, &state); -# else - count = wctomb (cbuf, *arg_end); -# endif - if (count < 0) - { - /* Cannot convert. */ - if (!(result == resultbuf || result == NULL)) - free (result); - if (buf_malloced != NULL) - free (buf_malloced); - CLEANUP (); - errno = EILSEQ; - return NULL; - } - arg_end++; - characters += count; - } - } -# if DCHAR_IS_TCHAR - else - { - /* Use the entire string. */ - arg_end = arg + local_wcslen (arg); - /* The number of bytes doesn't matter. */ - characters = 0; - } -# endif - -# if !DCHAR_IS_TCHAR - /* Convert the string into a piece of temporary memory. */ - tmpsrc = (TCHAR_T *) malloc (characters * sizeof (TCHAR_T)); - if (tmpsrc == NULL) - goto out_of_memory; - { - TCHAR_T *tmpptr = tmpsrc; - size_t remaining; -# if HAVE_WCRTOMB && !defined GNULIB_defined_mbstate_t - mbstate_t state; - memset (&state, '\0', sizeof (mbstate_t)); -# endif - for (remaining = characters; remaining > 0; ) - { - char cbuf[64]; /* Assume MB_CUR_MAX <= 64. */ - int count; - - if (*arg == 0) - abort (); -# if HAVE_WCRTOMB && !defined GNULIB_defined_mbstate_t - count = wcrtomb (cbuf, *arg, &state); -# else - count = wctomb (cbuf, *arg); -# endif - if (count <= 0) - /* Inconsistency. */ - abort (); - memcpy (tmpptr, cbuf, count); - tmpptr += count; - arg++; - remaining -= count; - } - if (!(arg == arg_end)) - abort (); - } - - /* Convert from TCHAR_T[] to DCHAR_T[]. */ - tmpdst = - DCHAR_CONV_FROM_ENCODING (locale_charset (), - iconveh_question_mark, - tmpsrc, characters, - NULL, - NULL, &tmpdst_len); - if (tmpdst == NULL) - { - int saved_errno = errno; - free (tmpsrc); - if (!(result == resultbuf || result == NULL)) - free (result); - if (buf_malloced != NULL) - free (buf_malloced); - CLEANUP (); - errno = saved_errno; - return NULL; - } - free (tmpsrc); -# endif - - if (has_width) - { -# if ENABLE_UNISTDIO - /* Outside POSIX, it's preferable to compare the width - against the number of _characters_ of the converted - value. */ - w = DCHAR_MBSNLEN (result + length, characters); -# else - /* The width is compared against the number of _bytes_ - of the converted value, says POSIX. */ - w = characters; -# endif - } - else - /* w doesn't matter. */ - w = 0; - - if (w < width && !(dp->flags & FLAG_LEFT)) - { - size_t n = width - w; - ENSURE_ALLOCATION (xsum (length, n)); - DCHAR_SET (result + length, ' ', n); - length += n; - } - -# if DCHAR_IS_TCHAR - if (has_precision || has_width) - { - /* We know the number of bytes in advance. */ - size_t remaining; -# if HAVE_WCRTOMB && !defined GNULIB_defined_mbstate_t - mbstate_t state; - memset (&state, '\0', sizeof (mbstate_t)); -# endif - ENSURE_ALLOCATION (xsum (length, characters)); - for (remaining = characters; remaining > 0; ) - { - char cbuf[64]; /* Assume MB_CUR_MAX <= 64. */ - int count; - - if (*arg == 0) - abort (); -# if HAVE_WCRTOMB && !defined GNULIB_defined_mbstate_t - count = wcrtomb (cbuf, *arg, &state); -# else - count = wctomb (cbuf, *arg); -# endif - if (count <= 0) - /* Inconsistency. */ - abort (); - memcpy (result + length, cbuf, count); - length += count; - arg++; - remaining -= count; - } - if (!(arg == arg_end)) - abort (); - } - else - { -# if HAVE_WCRTOMB && !defined GNULIB_defined_mbstate_t - mbstate_t state; - memset (&state, '\0', sizeof (mbstate_t)); -# endif - while (arg < arg_end) - { - char cbuf[64]; /* Assume MB_CUR_MAX <= 64. */ - int count; - - if (*arg == 0) - abort (); -# if HAVE_WCRTOMB && !defined GNULIB_defined_mbstate_t - count = wcrtomb (cbuf, *arg, &state); -# else - count = wctomb (cbuf, *arg); -# endif - if (count <= 0) - { - /* Cannot convert. */ - if (!(result == resultbuf || result == NULL)) - free (result); - if (buf_malloced != NULL) - free (buf_malloced); - CLEANUP (); - errno = EILSEQ; - return NULL; - } - ENSURE_ALLOCATION (xsum (length, count)); - memcpy (result + length, cbuf, count); - length += count; - arg++; - } - } -# else - ENSURE_ALLOCATION (xsum (length, tmpdst_len)); - DCHAR_CPY (result + length, tmpdst, tmpdst_len); - free (tmpdst); - length += tmpdst_len; -# endif - - if (w < width && (dp->flags & FLAG_LEFT)) - { - size_t n = width - w; - ENSURE_ALLOCATION (xsum (length, n)); - DCHAR_SET (result + length, ' ', n); - length += n; - } - } -# endif - } -#endif -#if (NEED_PRINTF_DIRECTIVE_A || NEED_PRINTF_LONG_DOUBLE || NEED_PRINTF_DOUBLE) && !defined IN_LIBINTL - else if ((dp->conversion == 'a' || dp->conversion == 'A') -# if !(NEED_PRINTF_DIRECTIVE_A || (NEED_PRINTF_LONG_DOUBLE && NEED_PRINTF_DOUBLE)) - && (0 -# if NEED_PRINTF_DOUBLE - || a.arg[dp->arg_index].type == TYPE_DOUBLE -# endif -# if NEED_PRINTF_LONG_DOUBLE - || a.arg[dp->arg_index].type == TYPE_LONGDOUBLE -# endif - ) -# endif - ) - { - arg_type type = a.arg[dp->arg_index].type; - int flags = dp->flags; - size_t width; - int has_precision; - size_t precision; - size_t tmp_length; - size_t count; - DCHAR_T tmpbuf[700]; - DCHAR_T *tmp; - DCHAR_T *pad_ptr; - DCHAR_T *p; - - width = 0; - if (dp->width_start != dp->width_end) - { - if (dp->width_arg_index != ARG_NONE) - { - int arg; - - if (!(a.arg[dp->width_arg_index].type == TYPE_INT)) - abort (); - arg = a.arg[dp->width_arg_index].a.a_int; - width = arg; - if (arg < 0) - { - /* "A negative field width is taken as a '-' flag - followed by a positive field width." */ - flags |= FLAG_LEFT; - width = -width; - } - } - else - { - const FCHAR_T *digitp = dp->width_start; - - do - width = xsum (xtimes (width, 10), *digitp++ - '0'); - while (digitp != dp->width_end); - } - } - - has_precision = 0; - precision = 0; - if (dp->precision_start != dp->precision_end) - { - if (dp->precision_arg_index != ARG_NONE) - { - int arg; - - if (!(a.arg[dp->precision_arg_index].type == TYPE_INT)) - abort (); - arg = a.arg[dp->precision_arg_index].a.a_int; - /* "A negative precision is taken as if the precision - were omitted." */ - if (arg >= 0) - { - precision = arg; - has_precision = 1; - } - } - else - { - const FCHAR_T *digitp = dp->precision_start + 1; - - precision = 0; - while (digitp != dp->precision_end) - precision = xsum (xtimes (precision, 10), *digitp++ - '0'); - has_precision = 1; - } - } - - /* Allocate a temporary buffer of sufficient size. */ - if (type == TYPE_LONGDOUBLE) - tmp_length = - (unsigned int) ((LDBL_DIG + 1) - * 0.831 /* decimal -> hexadecimal */ - ) - + 1; /* turn floor into ceil */ - else - tmp_length = - (unsigned int) ((DBL_DIG + 1) - * 0.831 /* decimal -> hexadecimal */ - ) - + 1; /* turn floor into ceil */ - if (tmp_length < precision) - tmp_length = precision; - /* Account for sign, decimal point etc. */ - tmp_length = xsum (tmp_length, 12); - - if (tmp_length < width) - tmp_length = width; - - tmp_length = xsum (tmp_length, 1); /* account for trailing NUL */ - - if (tmp_length <= sizeof (tmpbuf) / sizeof (DCHAR_T)) - tmp = tmpbuf; - else - { - size_t tmp_memsize = xtimes (tmp_length, sizeof (DCHAR_T)); - - if (size_overflow_p (tmp_memsize)) - /* Overflow, would lead to out of memory. */ - goto out_of_memory; - tmp = (DCHAR_T *) malloc (tmp_memsize); - if (tmp == NULL) - /* Out of memory. */ - goto out_of_memory; - } - - pad_ptr = NULL; - p = tmp; - if (type == TYPE_LONGDOUBLE) - { -# if NEED_PRINTF_DIRECTIVE_A || NEED_PRINTF_LONG_DOUBLE - long double arg = a.arg[dp->arg_index].a.a_longdouble; - - if (isnanl (arg)) - { - if (dp->conversion == 'A') - { - *p++ = 'N'; *p++ = 'A'; *p++ = 'N'; - } - else - { - *p++ = 'n'; *p++ = 'a'; *p++ = 'n'; - } - } - else - { - int sign = 0; - DECL_LONG_DOUBLE_ROUNDING - - BEGIN_LONG_DOUBLE_ROUNDING (); - - if (signbit (arg)) /* arg < 0.0L or negative zero */ - { - sign = -1; - arg = -arg; - } - - if (sign < 0) - *p++ = '-'; - else if (flags & FLAG_SHOWSIGN) - *p++ = '+'; - else if (flags & FLAG_SPACE) - *p++ = ' '; - - if (arg > 0.0L && arg + arg == arg) - { - if (dp->conversion == 'A') - { - *p++ = 'I'; *p++ = 'N'; *p++ = 'F'; - } - else - { - *p++ = 'i'; *p++ = 'n'; *p++ = 'f'; - } - } - else - { - int exponent; - long double mantissa; - - if (arg > 0.0L) - mantissa = printf_frexpl (arg, &exponent); - else - { - exponent = 0; - mantissa = 0.0L; - } - - if (has_precision - && precision < (unsigned int) ((LDBL_DIG + 1) * 0.831) + 1) - { - /* Round the mantissa. */ - long double tail = mantissa; - size_t q; - - for (q = precision; ; q--) - { - int digit = (int) tail; - tail -= digit; - if (q == 0) - { - if (digit & 1 ? tail >= 0.5L : tail > 0.5L) - tail = 1 - tail; - else - tail = - tail; - break; - } - tail *= 16.0L; - } - if (tail != 0.0L) - for (q = precision; q > 0; q--) - tail *= 0.0625L; - mantissa += tail; - } - - *p++ = '0'; - *p++ = dp->conversion - 'A' + 'X'; - pad_ptr = p; - { - int digit; - - digit = (int) mantissa; - mantissa -= digit; - *p++ = '0' + digit; - if ((flags & FLAG_ALT) - || mantissa > 0.0L || precision > 0) - { - *p++ = decimal_point_char (); - /* This loop terminates because we assume - that FLT_RADIX is a power of 2. */ - while (mantissa > 0.0L) - { - mantissa *= 16.0L; - digit = (int) mantissa; - mantissa -= digit; - *p++ = digit - + (digit < 10 - ? '0' - : dp->conversion - 10); - if (precision > 0) - precision--; - } - while (precision > 0) - { - *p++ = '0'; - precision--; - } - } - } - *p++ = dp->conversion - 'A' + 'P'; -# if WIDE_CHAR_VERSION - { - static const wchar_t decimal_format[] = - { '%', '+', 'd', '\0' }; - SNPRINTF (p, 6 + 1, decimal_format, exponent); - } - while (*p != '\0') - p++; -# else - if (sizeof (DCHAR_T) == 1) - { - sprintf ((char *) p, "%+d", exponent); - while (*p != '\0') - p++; - } - else - { - char expbuf[6 + 1]; - const char *ep; - sprintf (expbuf, "%+d", exponent); - for (ep = expbuf; (*p = *ep) != '\0'; ep++) - p++; - } -# endif - } - - END_LONG_DOUBLE_ROUNDING (); - } -# else - abort (); -# endif - } - else - { -# if NEED_PRINTF_DIRECTIVE_A || NEED_PRINTF_DOUBLE - double arg = a.arg[dp->arg_index].a.a_double; - - if (isnand (arg)) - { - if (dp->conversion == 'A') - { - *p++ = 'N'; *p++ = 'A'; *p++ = 'N'; - } - else - { - *p++ = 'n'; *p++ = 'a'; *p++ = 'n'; - } - } - else - { - int sign = 0; - - if (signbit (arg)) /* arg < 0.0 or negative zero */ - { - sign = -1; - arg = -arg; - } - - if (sign < 0) - *p++ = '-'; - else if (flags & FLAG_SHOWSIGN) - *p++ = '+'; - else if (flags & FLAG_SPACE) - *p++ = ' '; - - if (arg > 0.0 && arg + arg == arg) - { - if (dp->conversion == 'A') - { - *p++ = 'I'; *p++ = 'N'; *p++ = 'F'; - } - else - { - *p++ = 'i'; *p++ = 'n'; *p++ = 'f'; - } - } - else - { - int exponent; - double mantissa; - - if (arg > 0.0) - mantissa = printf_frexp (arg, &exponent); - else - { - exponent = 0; - mantissa = 0.0; - } - - if (has_precision - && precision < (unsigned int) ((DBL_DIG + 1) * 0.831) + 1) - { - /* Round the mantissa. */ - double tail = mantissa; - size_t q; - - for (q = precision; ; q--) - { - int digit = (int) tail; - tail -= digit; - if (q == 0) - { - if (digit & 1 ? tail >= 0.5 : tail > 0.5) - tail = 1 - tail; - else - tail = - tail; - break; - } - tail *= 16.0; - } - if (tail != 0.0) - for (q = precision; q > 0; q--) - tail *= 0.0625; - mantissa += tail; - } - - *p++ = '0'; - *p++ = dp->conversion - 'A' + 'X'; - pad_ptr = p; - { - int digit; - - digit = (int) mantissa; - mantissa -= digit; - *p++ = '0' + digit; - if ((flags & FLAG_ALT) - || mantissa > 0.0 || precision > 0) - { - *p++ = decimal_point_char (); - /* This loop terminates because we assume - that FLT_RADIX is a power of 2. */ - while (mantissa > 0.0) - { - mantissa *= 16.0; - digit = (int) mantissa; - mantissa -= digit; - *p++ = digit - + (digit < 10 - ? '0' - : dp->conversion - 10); - if (precision > 0) - precision--; - } - while (precision > 0) - { - *p++ = '0'; - precision--; - } - } - } - *p++ = dp->conversion - 'A' + 'P'; -# if WIDE_CHAR_VERSION - { - static const wchar_t decimal_format[] = - { '%', '+', 'd', '\0' }; - SNPRINTF (p, 6 + 1, decimal_format, exponent); - } - while (*p != '\0') - p++; -# else - if (sizeof (DCHAR_T) == 1) - { - sprintf ((char *) p, "%+d", exponent); - while (*p != '\0') - p++; - } - else - { - char expbuf[6 + 1]; - const char *ep; - sprintf (expbuf, "%+d", exponent); - for (ep = expbuf; (*p = *ep) != '\0'; ep++) - p++; - } -# endif - } - } -# else - abort (); -# endif - } - - /* The generated string now extends from tmp to p, with the - zero padding insertion point being at pad_ptr. */ - count = p - tmp; - - if (count < width) - { - size_t pad = width - count; - DCHAR_T *end = p + pad; - - if (flags & FLAG_LEFT) - { - /* Pad with spaces on the right. */ - for (; pad > 0; pad--) - *p++ = ' '; - } - else if ((flags & FLAG_ZERO) && pad_ptr != NULL) - { - /* Pad with zeroes. */ - DCHAR_T *q = end; - - while (p > pad_ptr) - *--q = *--p; - for (; pad > 0; pad--) - *p++ = '0'; - } - else - { - /* Pad with spaces on the left. */ - DCHAR_T *q = end; - - while (p > tmp) - *--q = *--p; - for (; pad > 0; pad--) - *p++ = ' '; - } - - p = end; - } - - count = p - tmp; - - if (count >= tmp_length) - /* tmp_length was incorrectly calculated - fix the - code above! */ - abort (); - - /* Make room for the result. */ - if (count >= allocated - length) - { - size_t n = xsum (length, count); - - ENSURE_ALLOCATION (n); - } - - /* Append the result. */ - memcpy (result + length, tmp, count * sizeof (DCHAR_T)); - if (tmp != tmpbuf) - free (tmp); - length += count; - } -#endif -#if (NEED_PRINTF_INFINITE_DOUBLE || NEED_PRINTF_DOUBLE || NEED_PRINTF_INFINITE_LONG_DOUBLE || NEED_PRINTF_LONG_DOUBLE) && !defined IN_LIBINTL - else if ((dp->conversion == 'f' || dp->conversion == 'F' - || dp->conversion == 'e' || dp->conversion == 'E' - || dp->conversion == 'g' || dp->conversion == 'G' - || dp->conversion == 'a' || dp->conversion == 'A') - && (0 -# if NEED_PRINTF_DOUBLE - || a.arg[dp->arg_index].type == TYPE_DOUBLE -# elif NEED_PRINTF_INFINITE_DOUBLE - || (a.arg[dp->arg_index].type == TYPE_DOUBLE - /* The systems (mingw) which produce wrong output - for Inf, -Inf, and NaN also do so for -0.0. - Therefore we treat this case here as well. */ - && is_infinite_or_zero (a.arg[dp->arg_index].a.a_double)) -# endif -# if NEED_PRINTF_LONG_DOUBLE - || a.arg[dp->arg_index].type == TYPE_LONGDOUBLE -# elif NEED_PRINTF_INFINITE_LONG_DOUBLE - || (a.arg[dp->arg_index].type == TYPE_LONGDOUBLE - /* Some systems produce wrong output for Inf, - -Inf, and NaN. Some systems in this category - (IRIX 5.3) also do so for -0.0. Therefore we - treat this case here as well. */ - && is_infinite_or_zerol (a.arg[dp->arg_index].a.a_longdouble)) -# endif - )) - { -# if (NEED_PRINTF_DOUBLE || NEED_PRINTF_INFINITE_DOUBLE) && (NEED_PRINTF_LONG_DOUBLE || NEED_PRINTF_INFINITE_LONG_DOUBLE) - arg_type type = a.arg[dp->arg_index].type; -# endif - int flags = dp->flags; - size_t width; - size_t count; - int has_precision; - size_t precision; - size_t tmp_length; - DCHAR_T tmpbuf[700]; - DCHAR_T *tmp; - DCHAR_T *pad_ptr; - DCHAR_T *p; - - width = 0; - if (dp->width_start != dp->width_end) - { - if (dp->width_arg_index != ARG_NONE) - { - int arg; - - if (!(a.arg[dp->width_arg_index].type == TYPE_INT)) - abort (); - arg = a.arg[dp->width_arg_index].a.a_int; - width = arg; - if (arg < 0) - { - /* "A negative field width is taken as a '-' flag - followed by a positive field width." */ - flags |= FLAG_LEFT; - width = -width; - } - } - else - { - const FCHAR_T *digitp = dp->width_start; - - do - width = xsum (xtimes (width, 10), *digitp++ - '0'); - while (digitp != dp->width_end); - } - } - - has_precision = 0; - precision = 0; - if (dp->precision_start != dp->precision_end) - { - if (dp->precision_arg_index != ARG_NONE) - { - int arg; - - if (!(a.arg[dp->precision_arg_index].type == TYPE_INT)) - abort (); - arg = a.arg[dp->precision_arg_index].a.a_int; - /* "A negative precision is taken as if the precision - were omitted." */ - if (arg >= 0) - { - precision = arg; - has_precision = 1; - } - } - else - { - const FCHAR_T *digitp = dp->precision_start + 1; - - precision = 0; - while (digitp != dp->precision_end) - precision = xsum (xtimes (precision, 10), *digitp++ - '0'); - has_precision = 1; - } - } - - /* POSIX specifies the default precision to be 6 for %f, %F, - %e, %E, but not for %g, %G. Implementations appear to use - the same default precision also for %g, %G. But for %a, %A, - the default precision is 0. */ - if (!has_precision) - if (!(dp->conversion == 'a' || dp->conversion == 'A')) - precision = 6; - - /* Allocate a temporary buffer of sufficient size. */ -# if NEED_PRINTF_DOUBLE && NEED_PRINTF_LONG_DOUBLE - tmp_length = (type == TYPE_LONGDOUBLE ? LDBL_DIG + 1 : DBL_DIG + 1); -# elif NEED_PRINTF_INFINITE_DOUBLE && NEED_PRINTF_LONG_DOUBLE - tmp_length = (type == TYPE_LONGDOUBLE ? LDBL_DIG + 1 : 0); -# elif NEED_PRINTF_LONG_DOUBLE - tmp_length = LDBL_DIG + 1; -# elif NEED_PRINTF_DOUBLE - tmp_length = DBL_DIG + 1; -# else - tmp_length = 0; -# endif - if (tmp_length < precision) - tmp_length = precision; -# if NEED_PRINTF_LONG_DOUBLE -# if NEED_PRINTF_DOUBLE || NEED_PRINTF_INFINITE_DOUBLE - if (type == TYPE_LONGDOUBLE) -# endif - if (dp->conversion == 'f' || dp->conversion == 'F') - { - long double arg = a.arg[dp->arg_index].a.a_longdouble; - if (!(isnanl (arg) || arg + arg == arg)) - { - /* arg is finite and nonzero. */ - int exponent = floorlog10l (arg < 0 ? -arg : arg); - if (exponent >= 0 && tmp_length < exponent + precision) - tmp_length = exponent + precision; - } - } -# endif -# if NEED_PRINTF_DOUBLE -# if NEED_PRINTF_LONG_DOUBLE || NEED_PRINTF_INFINITE_LONG_DOUBLE - if (type == TYPE_DOUBLE) -# endif - if (dp->conversion == 'f' || dp->conversion == 'F') - { - double arg = a.arg[dp->arg_index].a.a_double; - if (!(isnand (arg) || arg + arg == arg)) - { - /* arg is finite and nonzero. */ - int exponent = floorlog10 (arg < 0 ? -arg : arg); - if (exponent >= 0 && tmp_length < exponent + precision) - tmp_length = exponent + precision; - } - } -# endif - /* Account for sign, decimal point etc. */ - tmp_length = xsum (tmp_length, 12); - - if (tmp_length < width) - tmp_length = width; - - tmp_length = xsum (tmp_length, 1); /* account for trailing NUL */ - - if (tmp_length <= sizeof (tmpbuf) / sizeof (DCHAR_T)) - tmp = tmpbuf; - else - { - size_t tmp_memsize = xtimes (tmp_length, sizeof (DCHAR_T)); - - if (size_overflow_p (tmp_memsize)) - /* Overflow, would lead to out of memory. */ - goto out_of_memory; - tmp = (DCHAR_T *) malloc (tmp_memsize); - if (tmp == NULL) - /* Out of memory. */ - goto out_of_memory; - } - - pad_ptr = NULL; - p = tmp; - -# if NEED_PRINTF_LONG_DOUBLE || NEED_PRINTF_INFINITE_LONG_DOUBLE -# if NEED_PRINTF_DOUBLE || NEED_PRINTF_INFINITE_DOUBLE - if (type == TYPE_LONGDOUBLE) -# endif - { - long double arg = a.arg[dp->arg_index].a.a_longdouble; - - if (isnanl (arg)) - { - if (dp->conversion >= 'A' && dp->conversion <= 'Z') - { - *p++ = 'N'; *p++ = 'A'; *p++ = 'N'; - } - else - { - *p++ = 'n'; *p++ = 'a'; *p++ = 'n'; - } - } - else - { - int sign = 0; - DECL_LONG_DOUBLE_ROUNDING - - BEGIN_LONG_DOUBLE_ROUNDING (); - - if (signbit (arg)) /* arg < 0.0L or negative zero */ - { - sign = -1; - arg = -arg; - } - - if (sign < 0) - *p++ = '-'; - else if (flags & FLAG_SHOWSIGN) - *p++ = '+'; - else if (flags & FLAG_SPACE) - *p++ = ' '; - - if (arg > 0.0L && arg + arg == arg) - { - if (dp->conversion >= 'A' && dp->conversion <= 'Z') - { - *p++ = 'I'; *p++ = 'N'; *p++ = 'F'; - } - else - { - *p++ = 'i'; *p++ = 'n'; *p++ = 'f'; - } - } - else - { -# if NEED_PRINTF_LONG_DOUBLE - pad_ptr = p; - - if (dp->conversion == 'f' || dp->conversion == 'F') - { - char *digits; - size_t ndigits; - - digits = - scale10_round_decimal_long_double (arg, precision); - if (digits == NULL) - { - END_LONG_DOUBLE_ROUNDING (); - goto out_of_memory; - } - ndigits = strlen (digits); - - if (ndigits > precision) - do - { - --ndigits; - *p++ = digits[ndigits]; - } - while (ndigits > precision); - else - *p++ = '0'; - /* Here ndigits <= precision. */ - if ((flags & FLAG_ALT) || precision > 0) - { - *p++ = decimal_point_char (); - for (; precision > ndigits; precision--) - *p++ = '0'; - while (ndigits > 0) - { - --ndigits; - *p++ = digits[ndigits]; - } - } - - free (digits); - } - else if (dp->conversion == 'e' || dp->conversion == 'E') - { - int exponent; - - if (arg == 0.0L) - { - exponent = 0; - *p++ = '0'; - if ((flags & FLAG_ALT) || precision > 0) - { - *p++ = decimal_point_char (); - for (; precision > 0; precision--) - *p++ = '0'; - } - } - else - { - /* arg > 0.0L. */ - int adjusted; - char *digits; - size_t ndigits; - - exponent = floorlog10l (arg); - adjusted = 0; - for (;;) - { - digits = - scale10_round_decimal_long_double (arg, - (int)precision - exponent); - if (digits == NULL) - { - END_LONG_DOUBLE_ROUNDING (); - goto out_of_memory; - } - ndigits = strlen (digits); - - if (ndigits == precision + 1) - break; - if (ndigits < precision - || ndigits > precision + 2) - /* The exponent was not guessed - precisely enough. */ - abort (); - if (adjusted) - /* None of two values of exponent is - the right one. Prevent an endless - loop. */ - abort (); - free (digits); - if (ndigits == precision) - exponent -= 1; - else - exponent += 1; - adjusted = 1; - } - /* Here ndigits = precision+1. */ - if (is_borderline (digits, precision)) - { - /* Maybe the exponent guess was too high - and a smaller exponent can be reached - by turning a 10...0 into 9...9x. */ - char *digits2 = - scale10_round_decimal_long_double (arg, - (int)precision - exponent + 1); - if (digits2 == NULL) - { - free (digits); - END_LONG_DOUBLE_ROUNDING (); - goto out_of_memory; - } - if (strlen (digits2) == precision + 1) - { - free (digits); - digits = digits2; - exponent -= 1; - } - else - free (digits2); - } - /* Here ndigits = precision+1. */ - - *p++ = digits[--ndigits]; - if ((flags & FLAG_ALT) || precision > 0) - { - *p++ = decimal_point_char (); - while (ndigits > 0) - { - --ndigits; - *p++ = digits[ndigits]; - } - } - - free (digits); - } - - *p++ = dp->conversion; /* 'e' or 'E' */ -# if WIDE_CHAR_VERSION - { - static const wchar_t decimal_format[] = - { '%', '+', '.', '2', 'd', '\0' }; - SNPRINTF (p, 6 + 1, decimal_format, exponent); - } - while (*p != '\0') - p++; -# else - if (sizeof (DCHAR_T) == 1) - { - sprintf ((char *) p, "%+.2d", exponent); - while (*p != '\0') - p++; - } - else - { - char expbuf[6 + 1]; - const char *ep; - sprintf (expbuf, "%+.2d", exponent); - for (ep = expbuf; (*p = *ep) != '\0'; ep++) - p++; - } -# endif - } - else if (dp->conversion == 'g' || dp->conversion == 'G') - { - if (precision == 0) - precision = 1; - /* precision >= 1. */ - - if (arg == 0.0L) - /* The exponent is 0, >= -4, < precision. - Use fixed-point notation. */ - { - size_t ndigits = precision; - /* Number of trailing zeroes that have to be - dropped. */ - size_t nzeroes = - (flags & FLAG_ALT ? 0 : precision - 1); - - --ndigits; - *p++ = '0'; - if ((flags & FLAG_ALT) || ndigits > nzeroes) - { - *p++ = decimal_point_char (); - while (ndigits > nzeroes) - { - --ndigits; - *p++ = '0'; - } - } - } - else - { - /* arg > 0.0L. */ - int exponent; - int adjusted; - char *digits; - size_t ndigits; - size_t nzeroes; - - exponent = floorlog10l (arg); - adjusted = 0; - for (;;) - { - digits = - scale10_round_decimal_long_double (arg, - (int)(precision - 1) - exponent); - if (digits == NULL) - { - END_LONG_DOUBLE_ROUNDING (); - goto out_of_memory; - } - ndigits = strlen (digits); - - if (ndigits == precision) - break; - if (ndigits < precision - 1 - || ndigits > precision + 1) - /* The exponent was not guessed - precisely enough. */ - abort (); - if (adjusted) - /* None of two values of exponent is - the right one. Prevent an endless - loop. */ - abort (); - free (digits); - if (ndigits < precision) - exponent -= 1; - else - exponent += 1; - adjusted = 1; - } - /* Here ndigits = precision. */ - if (is_borderline (digits, precision - 1)) - { - /* Maybe the exponent guess was too high - and a smaller exponent can be reached - by turning a 10...0 into 9...9x. */ - char *digits2 = - scale10_round_decimal_long_double (arg, - (int)(precision - 1) - exponent + 1); - if (digits2 == NULL) - { - free (digits); - END_LONG_DOUBLE_ROUNDING (); - goto out_of_memory; - } - if (strlen (digits2) == precision) - { - free (digits); - digits = digits2; - exponent -= 1; - } - else - free (digits2); - } - /* Here ndigits = precision. */ - - /* Determine the number of trailing zeroes - that have to be dropped. */ - nzeroes = 0; - if ((flags & FLAG_ALT) == 0) - while (nzeroes < ndigits - && digits[nzeroes] == '0') - nzeroes++; - - /* The exponent is now determined. */ - if (exponent >= -4 - && exponent < (long)precision) - { - /* Fixed-point notation: - max(exponent,0)+1 digits, then the - decimal point, then the remaining - digits without trailing zeroes. */ - if (exponent >= 0) - { - size_t ecount = exponent + 1; - /* Note: count <= precision = ndigits. */ - for (; ecount > 0; ecount--) - *p++ = digits[--ndigits]; - if ((flags & FLAG_ALT) || ndigits > nzeroes) - { - *p++ = decimal_point_char (); - while (ndigits > nzeroes) - { - --ndigits; - *p++ = digits[ndigits]; - } - } - } - else - { - size_t ecount = -exponent - 1; - *p++ = '0'; - *p++ = decimal_point_char (); - for (; ecount > 0; ecount--) - *p++ = '0'; - while (ndigits > nzeroes) - { - --ndigits; - *p++ = digits[ndigits]; - } - } - } - else - { - /* Exponential notation. */ - *p++ = digits[--ndigits]; - if ((flags & FLAG_ALT) || ndigits > nzeroes) - { - *p++ = decimal_point_char (); - while (ndigits > nzeroes) - { - --ndigits; - *p++ = digits[ndigits]; - } - } - *p++ = dp->conversion - 'G' + 'E'; /* 'e' or 'E' */ -# if WIDE_CHAR_VERSION - { - static const wchar_t decimal_format[] = - { '%', '+', '.', '2', 'd', '\0' }; - SNPRINTF (p, 6 + 1, decimal_format, exponent); - } - while (*p != '\0') - p++; -# else - if (sizeof (DCHAR_T) == 1) - { - sprintf ((char *) p, "%+.2d", exponent); - while (*p != '\0') - p++; - } - else - { - char expbuf[6 + 1]; - const char *ep; - sprintf (expbuf, "%+.2d", exponent); - for (ep = expbuf; (*p = *ep) != '\0'; ep++) - p++; - } -# endif - } - - free (digits); - } - } - else - abort (); -# else - /* arg is finite. */ - if (!(arg == 0.0L)) - abort (); - - pad_ptr = p; - - if (dp->conversion == 'f' || dp->conversion == 'F') - { - *p++ = '0'; - if ((flags & FLAG_ALT) || precision > 0) - { - *p++ = decimal_point_char (); - for (; precision > 0; precision--) - *p++ = '0'; - } - } - else if (dp->conversion == 'e' || dp->conversion == 'E') - { - *p++ = '0'; - if ((flags & FLAG_ALT) || precision > 0) - { - *p++ = decimal_point_char (); - for (; precision > 0; precision--) - *p++ = '0'; - } - *p++ = dp->conversion; /* 'e' or 'E' */ - *p++ = '+'; - *p++ = '0'; - *p++ = '0'; - } - else if (dp->conversion == 'g' || dp->conversion == 'G') - { - *p++ = '0'; - if (flags & FLAG_ALT) - { - size_t ndigits = - (precision > 0 ? precision - 1 : 0); - *p++ = decimal_point_char (); - for (; ndigits > 0; --ndigits) - *p++ = '0'; - } - } - else if (dp->conversion == 'a' || dp->conversion == 'A') - { - *p++ = '0'; - *p++ = dp->conversion - 'A' + 'X'; - pad_ptr = p; - *p++ = '0'; - if ((flags & FLAG_ALT) || precision > 0) - { - *p++ = decimal_point_char (); - for (; precision > 0; precision--) - *p++ = '0'; - } - *p++ = dp->conversion - 'A' + 'P'; - *p++ = '+'; - *p++ = '0'; - } - else - abort (); -# endif - } - - END_LONG_DOUBLE_ROUNDING (); - } - } -# if NEED_PRINTF_DOUBLE || NEED_PRINTF_INFINITE_DOUBLE - else -# endif -# endif -# if NEED_PRINTF_DOUBLE || NEED_PRINTF_INFINITE_DOUBLE - { - double arg = a.arg[dp->arg_index].a.a_double; - - if (isnand (arg)) - { - if (dp->conversion >= 'A' && dp->conversion <= 'Z') - { - *p++ = 'N'; *p++ = 'A'; *p++ = 'N'; - } - else - { - *p++ = 'n'; *p++ = 'a'; *p++ = 'n'; - } - } - else - { - int sign = 0; - - if (signbit (arg)) /* arg < 0.0 or negative zero */ - { - sign = -1; - arg = -arg; - } - - if (sign < 0) - *p++ = '-'; - else if (flags & FLAG_SHOWSIGN) - *p++ = '+'; - else if (flags & FLAG_SPACE) - *p++ = ' '; - - if (arg > 0.0 && arg + arg == arg) - { - if (dp->conversion >= 'A' && dp->conversion <= 'Z') - { - *p++ = 'I'; *p++ = 'N'; *p++ = 'F'; - } - else - { - *p++ = 'i'; *p++ = 'n'; *p++ = 'f'; - } - } - else - { -# if NEED_PRINTF_DOUBLE - pad_ptr = p; - - if (dp->conversion == 'f' || dp->conversion == 'F') - { - char *digits; - size_t ndigits; - - digits = - scale10_round_decimal_double (arg, precision); - if (digits == NULL) - goto out_of_memory; - ndigits = strlen (digits); - - if (ndigits > precision) - do - { - --ndigits; - *p++ = digits[ndigits]; - } - while (ndigits > precision); - else - *p++ = '0'; - /* Here ndigits <= precision. */ - if ((flags & FLAG_ALT) || precision > 0) - { - *p++ = decimal_point_char (); - for (; precision > ndigits; precision--) - *p++ = '0'; - while (ndigits > 0) - { - --ndigits; - *p++ = digits[ndigits]; - } - } - - free (digits); - } - else if (dp->conversion == 'e' || dp->conversion == 'E') - { - int exponent; - - if (arg == 0.0) - { - exponent = 0; - *p++ = '0'; - if ((flags & FLAG_ALT) || precision > 0) - { - *p++ = decimal_point_char (); - for (; precision > 0; precision--) - *p++ = '0'; - } - } - else - { - /* arg > 0.0. */ - int adjusted; - char *digits; - size_t ndigits; - - exponent = floorlog10 (arg); - adjusted = 0; - for (;;) - { - digits = - scale10_round_decimal_double (arg, - (int)precision - exponent); - if (digits == NULL) - goto out_of_memory; - ndigits = strlen (digits); - - if (ndigits == precision + 1) - break; - if (ndigits < precision - || ndigits > precision + 2) - /* The exponent was not guessed - precisely enough. */ - abort (); - if (adjusted) - /* None of two values of exponent is - the right one. Prevent an endless - loop. */ - abort (); - free (digits); - if (ndigits == precision) - exponent -= 1; - else - exponent += 1; - adjusted = 1; - } - /* Here ndigits = precision+1. */ - if (is_borderline (digits, precision)) - { - /* Maybe the exponent guess was too high - and a smaller exponent can be reached - by turning a 10...0 into 9...9x. */ - char *digits2 = - scale10_round_decimal_double (arg, - (int)precision - exponent + 1); - if (digits2 == NULL) - { - free (digits); - goto out_of_memory; - } - if (strlen (digits2) == precision + 1) - { - free (digits); - digits = digits2; - exponent -= 1; - } - else - free (digits2); - } - /* Here ndigits = precision+1. */ - - *p++ = digits[--ndigits]; - if ((flags & FLAG_ALT) || precision > 0) - { - *p++ = decimal_point_char (); - while (ndigits > 0) - { - --ndigits; - *p++ = digits[ndigits]; - } - } - - free (digits); - } - - *p++ = dp->conversion; /* 'e' or 'E' */ -# if WIDE_CHAR_VERSION - { - static const wchar_t decimal_format[] = - /* Produce the same number of exponent digits - as the native printf implementation. */ -# if defined _WIN32 && ! defined __CYGWIN__ - { '%', '+', '.', '3', 'd', '\0' }; -# else - { '%', '+', '.', '2', 'd', '\0' }; -# endif - SNPRINTF (p, 6 + 1, decimal_format, exponent); - } - while (*p != '\0') - p++; -# else - { - static const char decimal_format[] = - /* Produce the same number of exponent digits - as the native printf implementation. */ -# if defined _WIN32 && ! defined __CYGWIN__ - "%+.3d"; -# else - "%+.2d"; -# endif - if (sizeof (DCHAR_T) == 1) - { - sprintf ((char *) p, decimal_format, exponent); - while (*p != '\0') - p++; - } - else - { - char expbuf[6 + 1]; - const char *ep; - sprintf (expbuf, decimal_format, exponent); - for (ep = expbuf; (*p = *ep) != '\0'; ep++) - p++; - } - } -# endif - } - else if (dp->conversion == 'g' || dp->conversion == 'G') - { - if (precision == 0) - precision = 1; - /* precision >= 1. */ - - if (arg == 0.0) - /* The exponent is 0, >= -4, < precision. - Use fixed-point notation. */ - { - size_t ndigits = precision; - /* Number of trailing zeroes that have to be - dropped. */ - size_t nzeroes = - (flags & FLAG_ALT ? 0 : precision - 1); - - --ndigits; - *p++ = '0'; - if ((flags & FLAG_ALT) || ndigits > nzeroes) - { - *p++ = decimal_point_char (); - while (ndigits > nzeroes) - { - --ndigits; - *p++ = '0'; - } - } - } - else - { - /* arg > 0.0. */ - int exponent; - int adjusted; - char *digits; - size_t ndigits; - size_t nzeroes; - - exponent = floorlog10 (arg); - adjusted = 0; - for (;;) - { - digits = - scale10_round_decimal_double (arg, - (int)(precision - 1) - exponent); - if (digits == NULL) - goto out_of_memory; - ndigits = strlen (digits); - - if (ndigits == precision) - break; - if (ndigits < precision - 1 - || ndigits > precision + 1) - /* The exponent was not guessed - precisely enough. */ - abort (); - if (adjusted) - /* None of two values of exponent is - the right one. Prevent an endless - loop. */ - abort (); - free (digits); - if (ndigits < precision) - exponent -= 1; - else - exponent += 1; - adjusted = 1; - } - /* Here ndigits = precision. */ - if (is_borderline (digits, precision - 1)) - { - /* Maybe the exponent guess was too high - and a smaller exponent can be reached - by turning a 10...0 into 9...9x. */ - char *digits2 = - scale10_round_decimal_double (arg, - (int)(precision - 1) - exponent + 1); - if (digits2 == NULL) - { - free (digits); - goto out_of_memory; - } - if (strlen (digits2) == precision) - { - free (digits); - digits = digits2; - exponent -= 1; - } - else - free (digits2); - } - /* Here ndigits = precision. */ - - /* Determine the number of trailing zeroes - that have to be dropped. */ - nzeroes = 0; - if ((flags & FLAG_ALT) == 0) - while (nzeroes < ndigits - && digits[nzeroes] == '0') - nzeroes++; - - /* The exponent is now determined. */ - if (exponent >= -4 - && exponent < (long)precision) - { - /* Fixed-point notation: - max(exponent,0)+1 digits, then the - decimal point, then the remaining - digits without trailing zeroes. */ - if (exponent >= 0) - { - size_t ecount = exponent + 1; - /* Note: ecount <= precision = ndigits. */ - for (; ecount > 0; ecount--) - *p++ = digits[--ndigits]; - if ((flags & FLAG_ALT) || ndigits > nzeroes) - { - *p++ = decimal_point_char (); - while (ndigits > nzeroes) - { - --ndigits; - *p++ = digits[ndigits]; - } - } - } - else - { - size_t ecount = -exponent - 1; - *p++ = '0'; - *p++ = decimal_point_char (); - for (; ecount > 0; ecount--) - *p++ = '0'; - while (ndigits > nzeroes) - { - --ndigits; - *p++ = digits[ndigits]; - } - } - } - else - { - /* Exponential notation. */ - *p++ = digits[--ndigits]; - if ((flags & FLAG_ALT) || ndigits > nzeroes) - { - *p++ = decimal_point_char (); - while (ndigits > nzeroes) - { - --ndigits; - *p++ = digits[ndigits]; - } - } - *p++ = dp->conversion - 'G' + 'E'; /* 'e' or 'E' */ -# if WIDE_CHAR_VERSION - { - static const wchar_t decimal_format[] = - /* Produce the same number of exponent digits - as the native printf implementation. */ -# if defined _WIN32 && ! defined __CYGWIN__ - { '%', '+', '.', '3', 'd', '\0' }; -# else - { '%', '+', '.', '2', 'd', '\0' }; -# endif - SNPRINTF (p, 6 + 1, decimal_format, exponent); - } - while (*p != '\0') - p++; -# else - { - static const char decimal_format[] = - /* Produce the same number of exponent digits - as the native printf implementation. */ -# if defined _WIN32 && ! defined __CYGWIN__ - "%+.3d"; -# else - "%+.2d"; -# endif - if (sizeof (DCHAR_T) == 1) - { - sprintf ((char *) p, decimal_format, exponent); - while (*p != '\0') - p++; - } - else - { - char expbuf[6 + 1]; - const char *ep; - sprintf (expbuf, decimal_format, exponent); - for (ep = expbuf; (*p = *ep) != '\0'; ep++) - p++; - } - } -# endif - } - - free (digits); - } - } - else - abort (); -# else - /* arg is finite. */ - if (!(arg == 0.0)) - abort (); - - pad_ptr = p; - - if (dp->conversion == 'f' || dp->conversion == 'F') - { - *p++ = '0'; - if ((flags & FLAG_ALT) || precision > 0) - { - *p++ = decimal_point_char (); - for (; precision > 0; precision--) - *p++ = '0'; - } - } - else if (dp->conversion == 'e' || dp->conversion == 'E') - { - *p++ = '0'; - if ((flags & FLAG_ALT) || precision > 0) - { - *p++ = decimal_point_char (); - for (; precision > 0; precision--) - *p++ = '0'; - } - *p++ = dp->conversion; /* 'e' or 'E' */ - *p++ = '+'; - /* Produce the same number of exponent digits as - the native printf implementation. */ -# if defined _WIN32 && ! defined __CYGWIN__ - *p++ = '0'; -# endif - *p++ = '0'; - *p++ = '0'; - } - else if (dp->conversion == 'g' || dp->conversion == 'G') - { - *p++ = '0'; - if (flags & FLAG_ALT) - { - size_t ndigits = - (precision > 0 ? precision - 1 : 0); - *p++ = decimal_point_char (); - for (; ndigits > 0; --ndigits) - *p++ = '0'; - } - } - else - abort (); -# endif - } - } - } -# endif - - /* The generated string now extends from tmp to p, with the - zero padding insertion point being at pad_ptr. */ - count = p - tmp; - - if (count < width) - { - size_t pad = width - count; - DCHAR_T *end = p + pad; - - if (flags & FLAG_LEFT) - { - /* Pad with spaces on the right. */ - for (; pad > 0; pad--) - *p++ = ' '; - } - else if ((flags & FLAG_ZERO) && pad_ptr != NULL) - { - /* Pad with zeroes. */ - DCHAR_T *q = end; - - while (p > pad_ptr) - *--q = *--p; - for (; pad > 0; pad--) - *p++ = '0'; - } - else - { - /* Pad with spaces on the left. */ - DCHAR_T *q = end; - - while (p > tmp) - *--q = *--p; - for (; pad > 0; pad--) - *p++ = ' '; - } - - p = end; - } - - count = p - tmp; - - if (count >= tmp_length) - /* tmp_length was incorrectly calculated - fix the - code above! */ - abort (); - - /* Make room for the result. */ - if (count >= allocated - length) - { - size_t n = xsum (length, count); - - ENSURE_ALLOCATION (n); - } - - /* Append the result. */ - memcpy (result + length, tmp, count * sizeof (DCHAR_T)); - if (tmp != tmpbuf) - free (tmp); - length += count; - } -#endif - else - { - arg_type type = a.arg[dp->arg_index].type; - int flags = dp->flags; -#if !DCHAR_IS_TCHAR || ENABLE_UNISTDIO || NEED_PRINTF_FLAG_LEFTADJUST || NEED_PRINTF_FLAG_ZERO || NEED_PRINTF_UNBOUNDED_PRECISION - int has_width; -#endif -#if !USE_SNPRINTF || !HAVE_SNPRINTF_RETVAL_C99 || USE_MSVC__SNPRINTF || !DCHAR_IS_TCHAR || ENABLE_UNISTDIO || NEED_PRINTF_FLAG_LEFTADJUST || NEED_PRINTF_FLAG_ZERO || NEED_PRINTF_UNBOUNDED_PRECISION - size_t width; -#endif -#if !USE_SNPRINTF || !HAVE_SNPRINTF_RETVAL_C99 || USE_MSVC__SNPRINTF || NEED_PRINTF_UNBOUNDED_PRECISION - int has_precision; - size_t precision; -#endif -#if NEED_PRINTF_UNBOUNDED_PRECISION - int prec_ourselves; -#else -# define prec_ourselves 0 -#endif -#if NEED_PRINTF_FLAG_LEFTADJUST -# define pad_ourselves 1 -#elif !DCHAR_IS_TCHAR || ENABLE_UNISTDIO || NEED_PRINTF_FLAG_ZERO || NEED_PRINTF_UNBOUNDED_PRECISION - int pad_ourselves; -#else -# define pad_ourselves 0 -#endif - TCHAR_T *fbp; - unsigned int prefix_count; - int prefixes[2] IF_LINT (= { 0 }); - int orig_errno; -#if !USE_SNPRINTF - size_t tmp_length; - TCHAR_T tmpbuf[700]; - TCHAR_T *tmp; -#endif - -#if !DCHAR_IS_TCHAR || ENABLE_UNISTDIO || NEED_PRINTF_FLAG_LEFTADJUST || NEED_PRINTF_FLAG_ZERO || NEED_PRINTF_UNBOUNDED_PRECISION - has_width = 0; -#endif -#if !USE_SNPRINTF || !HAVE_SNPRINTF_RETVAL_C99 || USE_MSVC__SNPRINTF || !DCHAR_IS_TCHAR || ENABLE_UNISTDIO || NEED_PRINTF_FLAG_LEFTADJUST || NEED_PRINTF_FLAG_ZERO || NEED_PRINTF_UNBOUNDED_PRECISION - width = 0; - if (dp->width_start != dp->width_end) - { - if (dp->width_arg_index != ARG_NONE) - { - int arg; - - if (!(a.arg[dp->width_arg_index].type == TYPE_INT)) - abort (); - arg = a.arg[dp->width_arg_index].a.a_int; - width = arg; - if (arg < 0) - { - /* "A negative field width is taken as a '-' flag - followed by a positive field width." */ - flags |= FLAG_LEFT; - width = -width; - } - } - else - { - const FCHAR_T *digitp = dp->width_start; - - do - width = xsum (xtimes (width, 10), *digitp++ - '0'); - while (digitp != dp->width_end); - } -#if !DCHAR_IS_TCHAR || ENABLE_UNISTDIO || NEED_PRINTF_FLAG_LEFTADJUST || NEED_PRINTF_FLAG_ZERO || NEED_PRINTF_UNBOUNDED_PRECISION - has_width = 1; -#endif - } -#endif - -#if !USE_SNPRINTF || !HAVE_SNPRINTF_RETVAL_C99 || USE_MSVC__SNPRINTF || NEED_PRINTF_UNBOUNDED_PRECISION - has_precision = 0; - precision = 6; - if (dp->precision_start != dp->precision_end) - { - if (dp->precision_arg_index != ARG_NONE) - { - int arg; - - if (!(a.arg[dp->precision_arg_index].type == TYPE_INT)) - abort (); - arg = a.arg[dp->precision_arg_index].a.a_int; - /* "A negative precision is taken as if the precision - were omitted." */ - if (arg >= 0) - { - precision = arg; - has_precision = 1; - } - } - else - { - const FCHAR_T *digitp = dp->precision_start + 1; - - precision = 0; - while (digitp != dp->precision_end) - precision = xsum (xtimes (precision, 10), *digitp++ - '0'); - has_precision = 1; - } - } -#endif - - /* Decide whether to handle the precision ourselves. */ -#if NEED_PRINTF_UNBOUNDED_PRECISION - switch (dp->conversion) - { - case 'd': case 'i': case 'u': - case 'o': - case 'x': case 'X': case 'p': - prec_ourselves = has_precision && (precision > 0); - break; - default: - prec_ourselves = 0; - break; - } -#endif - - /* Decide whether to perform the padding ourselves. */ -#if !NEED_PRINTF_FLAG_LEFTADJUST && (!DCHAR_IS_TCHAR || ENABLE_UNISTDIO || NEED_PRINTF_FLAG_ZERO || NEED_PRINTF_UNBOUNDED_PRECISION) - switch (dp->conversion) - { -# if !DCHAR_IS_TCHAR || ENABLE_UNISTDIO - /* If we need conversion from TCHAR_T[] to DCHAR_T[], we need - to perform the padding after this conversion. Functions - with unistdio extensions perform the padding based on - character count rather than element count. */ - case 'c': case 's': -# endif -# if NEED_PRINTF_FLAG_ZERO - case 'f': case 'F': case 'e': case 'E': case 'g': case 'G': - case 'a': case 'A': -# endif - pad_ourselves = 1; - break; - default: - pad_ourselves = prec_ourselves; - break; - } -#endif - -#if !USE_SNPRINTF - /* Allocate a temporary buffer of sufficient size for calling - sprintf. */ - tmp_length = - MAX_ROOM_NEEDED (&a, dp->arg_index, dp->conversion, type, - flags, width, has_precision, precision, - pad_ourselves); - - if (tmp_length <= sizeof (tmpbuf) / sizeof (TCHAR_T)) - tmp = tmpbuf; - else - { - size_t tmp_memsize = xtimes (tmp_length, sizeof (TCHAR_T)); - - if (size_overflow_p (tmp_memsize)) - /* Overflow, would lead to out of memory. */ - goto out_of_memory; - tmp = (TCHAR_T *) malloc (tmp_memsize); - if (tmp == NULL) - /* Out of memory. */ - goto out_of_memory; - } -#endif - - /* Construct the format string for calling snprintf or - sprintf. */ - fbp = buf; - *fbp++ = '%'; -#if NEED_PRINTF_FLAG_GROUPING - /* The underlying implementation doesn't support the ' flag. - Produce no grouping characters in this case; this is - acceptable because the grouping is locale dependent. */ -#else - if (flags & FLAG_GROUP) - *fbp++ = '\''; -#endif - if (flags & FLAG_LEFT) - *fbp++ = '-'; - if (flags & FLAG_SHOWSIGN) - *fbp++ = '+'; - if (flags & FLAG_SPACE) - *fbp++ = ' '; - if (flags & FLAG_ALT) - *fbp++ = '#'; -#if __GLIBC__ >= 2 && !defined __UCLIBC__ - if (flags & FLAG_LOCALIZED) - *fbp++ = 'I'; -#endif - if (!pad_ourselves) - { - if (flags & FLAG_ZERO) - *fbp++ = '0'; - if (dp->width_start != dp->width_end) - { - size_t n = dp->width_end - dp->width_start; - /* The width specification is known to consist only - of standard ASCII characters. */ - if (sizeof (FCHAR_T) == sizeof (TCHAR_T)) - { - memcpy (fbp, dp->width_start, n * sizeof (TCHAR_T)); - fbp += n; - } - else - { - const FCHAR_T *mp = dp->width_start; - do - *fbp++ = *mp++; - while (--n > 0); - } - } - } - if (!prec_ourselves) - { - if (dp->precision_start != dp->precision_end) - { - size_t n = dp->precision_end - dp->precision_start; - /* The precision specification is known to consist only - of standard ASCII characters. */ - if (sizeof (FCHAR_T) == sizeof (TCHAR_T)) - { - memcpy (fbp, dp->precision_start, n * sizeof (TCHAR_T)); - fbp += n; - } - else - { - const FCHAR_T *mp = dp->precision_start; - do - *fbp++ = *mp++; - while (--n > 0); - } - } - } - - switch (type) - { -#if HAVE_LONG_LONG_INT - case TYPE_LONGLONGINT: - case TYPE_ULONGLONGINT: -# if defined _WIN32 && ! defined __CYGWIN__ - *fbp++ = 'I'; - *fbp++ = '6'; - *fbp++ = '4'; - break; -# else - *fbp++ = 'l'; -# endif -#endif - FALLTHROUGH; - case TYPE_LONGINT: - case TYPE_ULONGINT: -#if HAVE_WINT_T - case TYPE_WIDE_CHAR: -#endif -#if HAVE_WCHAR_T - case TYPE_WIDE_STRING: -#endif - *fbp++ = 'l'; - break; - case TYPE_LONGDOUBLE: - *fbp++ = 'L'; - break; - default: - break; - } -#if NEED_PRINTF_DIRECTIVE_F - if (dp->conversion == 'F') - *fbp = 'f'; - else -#endif - *fbp = dp->conversion; -#if USE_SNPRINTF -# if ! (((__GLIBC__ > 2 || (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 3)) \ - && !defined __UCLIBC__) \ - || (defined __APPLE__ && defined __MACH__) \ - || (defined _WIN32 && ! defined __CYGWIN__)) - fbp[1] = '%'; - fbp[2] = 'n'; - fbp[3] = '\0'; -# else - /* On glibc2 systems from glibc >= 2.3 - probably also older - ones - we know that snprintf's return value conforms to - ISO C 99: the tests gl_SNPRINTF_RETVAL_C99 and - gl_SNPRINTF_TRUNCATION_C99 pass. - Therefore we can avoid using %n in this situation. - On glibc2 systems from 2004-10-18 or newer, the use of %n - in format strings in writable memory may crash the program - (if compiled with _FORTIFY_SOURCE=2), so we should avoid it - in this situation. */ - /* On Mac OS X 10.3 or newer, we know that snprintf's return - value conforms to ISO C 99: the tests gl_SNPRINTF_RETVAL_C99 - and gl_SNPRINTF_TRUNCATION_C99 pass. - Therefore we can avoid using %n in this situation. - On Mac OS X 10.13 or newer, the use of %n in format strings - in writable memory by default crashes the program, so we - should avoid it in this situation. */ - /* On native Windows systems (such as mingw), we can avoid using - %n because: - - Although the gl_SNPRINTF_TRUNCATION_C99 test fails, - snprintf does not write more than the specified number - of bytes. (snprintf (buf, 3, "%d %d", 4567, 89) writes - '4', '5', '6' into buf, not '4', '5', '\0'.) - - Although the gl_SNPRINTF_RETVAL_C99 test fails, snprintf - allows us to recognize the case of an insufficient - buffer size: it returns -1 in this case. - On native Windows systems (such as mingw) where the OS is - Windows Vista, the use of %n in format strings by default - crashes the program. See - and - - So we should avoid %n in this situation. */ - fbp[1] = '\0'; -# endif -#else - fbp[1] = '\0'; -#endif - - /* Construct the arguments for calling snprintf or sprintf. */ - prefix_count = 0; - if (!pad_ourselves && dp->width_arg_index != ARG_NONE) - { - if (!(a.arg[dp->width_arg_index].type == TYPE_INT)) - abort (); - prefixes[prefix_count++] = a.arg[dp->width_arg_index].a.a_int; - } - if (!prec_ourselves && dp->precision_arg_index != ARG_NONE) - { - if (!(a.arg[dp->precision_arg_index].type == TYPE_INT)) - abort (); - prefixes[prefix_count++] = a.arg[dp->precision_arg_index].a.a_int; - } - -#if USE_SNPRINTF - /* The SNPRINTF result is appended after result[0..length]. - The latter is an array of DCHAR_T; SNPRINTF appends an - array of TCHAR_T to it. This is possible because - sizeof (TCHAR_T) divides sizeof (DCHAR_T) and - alignof (TCHAR_T) <= alignof (DCHAR_T). */ -# define TCHARS_PER_DCHAR (sizeof (DCHAR_T) / sizeof (TCHAR_T)) - /* Ensure that maxlen below will be >= 2. Needed on BeOS, - where an snprintf() with maxlen==1 acts like sprintf(). */ - ENSURE_ALLOCATION (xsum (length, - (2 + TCHARS_PER_DCHAR - 1) - / TCHARS_PER_DCHAR)); - /* Prepare checking whether snprintf returns the count - via %n. */ - *(TCHAR_T *) (result + length) = '\0'; -#endif - - orig_errno = errno; - - for (;;) - { - int count = -1; - -#if USE_SNPRINTF - int retcount = 0; - size_t maxlen = allocated - length; - /* SNPRINTF can fail if its second argument is - > INT_MAX. */ - if (maxlen > INT_MAX / TCHARS_PER_DCHAR) - maxlen = INT_MAX / TCHARS_PER_DCHAR; - maxlen = maxlen * TCHARS_PER_DCHAR; -# define SNPRINTF_BUF(arg) \ - switch (prefix_count) \ - { \ - case 0: \ - retcount = SNPRINTF ((TCHAR_T *) (result + length), \ - maxlen, buf, \ - arg, &count); \ - break; \ - case 1: \ - retcount = SNPRINTF ((TCHAR_T *) (result + length), \ - maxlen, buf, \ - prefixes[0], arg, &count); \ - break; \ - case 2: \ - retcount = SNPRINTF ((TCHAR_T *) (result + length), \ - maxlen, buf, \ - prefixes[0], prefixes[1], arg, \ - &count); \ - break; \ - default: \ - abort (); \ - } -#else -# define SNPRINTF_BUF(arg) \ - switch (prefix_count) \ - { \ - case 0: \ - count = sprintf (tmp, buf, arg); \ - break; \ - case 1: \ - count = sprintf (tmp, buf, prefixes[0], arg); \ - break; \ - case 2: \ - count = sprintf (tmp, buf, prefixes[0], prefixes[1],\ - arg); \ - break; \ - default: \ - abort (); \ - } -#endif - - errno = 0; - switch (type) - { - case TYPE_SCHAR: - { - int arg = a.arg[dp->arg_index].a.a_schar; - SNPRINTF_BUF (arg); - } - break; - case TYPE_UCHAR: - { - unsigned int arg = a.arg[dp->arg_index].a.a_uchar; - SNPRINTF_BUF (arg); - } - break; - case TYPE_SHORT: - { - int arg = a.arg[dp->arg_index].a.a_short; - SNPRINTF_BUF (arg); - } - break; - case TYPE_USHORT: - { - unsigned int arg = a.arg[dp->arg_index].a.a_ushort; - SNPRINTF_BUF (arg); - } - break; - case TYPE_INT: - { - int arg = a.arg[dp->arg_index].a.a_int; - SNPRINTF_BUF (arg); - } - break; - case TYPE_UINT: - { - unsigned int arg = a.arg[dp->arg_index].a.a_uint; - SNPRINTF_BUF (arg); - } - break; - case TYPE_LONGINT: - { - long int arg = a.arg[dp->arg_index].a.a_longint; - SNPRINTF_BUF (arg); - } - break; - case TYPE_ULONGINT: - { - unsigned long int arg = a.arg[dp->arg_index].a.a_ulongint; - SNPRINTF_BUF (arg); - } - break; -#if HAVE_LONG_LONG_INT - case TYPE_LONGLONGINT: - { - long long int arg = a.arg[dp->arg_index].a.a_longlongint; - SNPRINTF_BUF (arg); - } - break; - case TYPE_ULONGLONGINT: - { - unsigned long long int arg = a.arg[dp->arg_index].a.a_ulonglongint; - SNPRINTF_BUF (arg); - } - break; -#endif - case TYPE_DOUBLE: - { - double arg = a.arg[dp->arg_index].a.a_double; - SNPRINTF_BUF (arg); - } - break; - case TYPE_LONGDOUBLE: - { - long double arg = a.arg[dp->arg_index].a.a_longdouble; - SNPRINTF_BUF (arg); - } - break; - case TYPE_CHAR: - { - int arg = a.arg[dp->arg_index].a.a_char; - SNPRINTF_BUF (arg); - } - break; -#if HAVE_WINT_T - case TYPE_WIDE_CHAR: - { - wint_t arg = a.arg[dp->arg_index].a.a_wide_char; - SNPRINTF_BUF (arg); - } - break; -#endif - case TYPE_STRING: - { - const char *arg = a.arg[dp->arg_index].a.a_string; - SNPRINTF_BUF (arg); - } - break; -#if HAVE_WCHAR_T - case TYPE_WIDE_STRING: - { - const wchar_t *arg = a.arg[dp->arg_index].a.a_wide_string; - SNPRINTF_BUF (arg); - } - break; -#endif - case TYPE_POINTER: - { - void *arg = a.arg[dp->arg_index].a.a_pointer; - SNPRINTF_BUF (arg); - } - break; - default: - abort (); - } - -#if USE_SNPRINTF - /* Portability: Not all implementations of snprintf() - are ISO C 99 compliant. Determine the number of - bytes that snprintf() has produced or would have - produced. */ - if (count >= 0) - { - /* Verify that snprintf() has NUL-terminated its - result. */ - if ((unsigned int) count < maxlen - && ((TCHAR_T *) (result + length)) [count] != '\0') - abort (); - /* Portability hack. */ - if (retcount > count) - count = retcount; - } - else - { - /* snprintf() doesn't understand the '%n' - directive. */ - if (fbp[1] != '\0') - { - /* Don't use the '%n' directive; instead, look - at the snprintf() return value. */ - fbp[1] = '\0'; - continue; - } - else - { - /* Look at the snprintf() return value. */ - if (retcount < 0) - { -# if !HAVE_SNPRINTF_RETVAL_C99 || USE_MSVC__SNPRINTF - /* HP-UX 10.20 snprintf() is doubly deficient: - It doesn't understand the '%n' directive, - *and* it returns -1 (rather than the length - that would have been required) when the - buffer is too small. - But a failure at this point can also come - from other reasons than a too small buffer, - such as an invalid wide string argument to - the %ls directive, or possibly an invalid - floating-point argument. */ - size_t tmp_length = - MAX_ROOM_NEEDED (&a, dp->arg_index, - dp->conversion, type, flags, - width, - has_precision, - precision, pad_ourselves); - - if (maxlen < tmp_length) - { - /* Make more room. But try to do through - this reallocation only once. */ - size_t bigger_need = - xsum (length, - xsum (tmp_length, - TCHARS_PER_DCHAR - 1) - / TCHARS_PER_DCHAR); - /* And always grow proportionally. - (There may be several arguments, each - needing a little more room than the - previous one.) */ - size_t bigger_need2 = - xsum (xtimes (allocated, 2), 12); - if (bigger_need < bigger_need2) - bigger_need = bigger_need2; - ENSURE_ALLOCATION (bigger_need); - continue; - } -# endif - } - else - count = retcount; - } - } -#endif - - /* Attempt to handle failure. */ - if (count < 0) - { - /* SNPRINTF or sprintf failed. Save and use the errno - that it has set, if any. */ - int saved_errno = errno; - if (saved_errno == 0) - { - if (dp->conversion == 'c' || dp->conversion == 's') - saved_errno = EILSEQ; - else - saved_errno = EINVAL; - } - - if (!(result == resultbuf || result == NULL)) - free (result); - if (buf_malloced != NULL) - free (buf_malloced); - CLEANUP (); - - errno = saved_errno; - return NULL; - } - -#if USE_SNPRINTF - /* Handle overflow of the allocated buffer. - If such an overflow occurs, a C99 compliant snprintf() - returns a count >= maxlen. However, a non-compliant - snprintf() function returns only count = maxlen - 1. To - cover both cases, test whether count >= maxlen - 1. */ - if ((unsigned int) count + 1 >= maxlen) - { - /* If maxlen already has attained its allowed maximum, - allocating more memory will not increase maxlen. - Instead of looping, bail out. */ - if (maxlen == INT_MAX / TCHARS_PER_DCHAR) - goto overflow; - else - { - /* Need at least (count + 1) * sizeof (TCHAR_T) - bytes. (The +1 is for the trailing NUL.) - But ask for (count + 2) * sizeof (TCHAR_T) - bytes, so that in the next round, we likely get - maxlen > (unsigned int) count + 1 - and so we don't get here again. - And allocate proportionally, to avoid looping - eternally if snprintf() reports a too small - count. */ - size_t n = - xmax (xsum (length, - ((unsigned int) count + 2 - + TCHARS_PER_DCHAR - 1) - / TCHARS_PER_DCHAR), - xtimes (allocated, 2)); - - ENSURE_ALLOCATION (n); - continue; - } - } -#endif - -#if NEED_PRINTF_UNBOUNDED_PRECISION - if (prec_ourselves) - { - /* Handle the precision. */ - TCHAR_T *prec_ptr = -# if USE_SNPRINTF - (TCHAR_T *) (result + length); -# else - tmp; -# endif - size_t prefix_count; - size_t move; - - prefix_count = 0; - /* Put the additional zeroes after the sign. */ - if (count >= 1 - && (*prec_ptr == '-' || *prec_ptr == '+' - || *prec_ptr == ' ')) - prefix_count = 1; - /* Put the additional zeroes after the 0x prefix if - (flags & FLAG_ALT) || (dp->conversion == 'p'). */ - else if (count >= 2 - && prec_ptr[0] == '0' - && (prec_ptr[1] == 'x' || prec_ptr[1] == 'X')) - prefix_count = 2; - - move = count - prefix_count; - if (precision > move) - { - /* Insert zeroes. */ - size_t insert = precision - move; - TCHAR_T *prec_end; - -# if USE_SNPRINTF - size_t n = - xsum (length, - (count + insert + TCHARS_PER_DCHAR - 1) - / TCHARS_PER_DCHAR); - length += (count + TCHARS_PER_DCHAR - 1) / TCHARS_PER_DCHAR; - ENSURE_ALLOCATION (n); - length -= (count + TCHARS_PER_DCHAR - 1) / TCHARS_PER_DCHAR; - prec_ptr = (TCHAR_T *) (result + length); -# endif - - prec_end = prec_ptr + count; - prec_ptr += prefix_count; - - while (prec_end > prec_ptr) - { - prec_end--; - prec_end[insert] = prec_end[0]; - } - - prec_end += insert; - do - *--prec_end = '0'; - while (prec_end > prec_ptr); - - count += insert; - } - } -#endif - -#if !USE_SNPRINTF - if (count >= tmp_length) - /* tmp_length was incorrectly calculated - fix the - code above! */ - abort (); -#endif - -#if !DCHAR_IS_TCHAR - /* Convert from TCHAR_T[] to DCHAR_T[]. */ - if (dp->conversion == 'c' || dp->conversion == 's') - { - /* type = TYPE_CHAR or TYPE_WIDE_CHAR or TYPE_STRING - TYPE_WIDE_STRING. - The result string is not certainly ASCII. */ - const TCHAR_T *tmpsrc; - DCHAR_T *tmpdst; - size_t tmpdst_len; - /* This code assumes that TCHAR_T is 'char'. */ - verify (sizeof (TCHAR_T) == 1); -# if USE_SNPRINTF - tmpsrc = (TCHAR_T *) (result + length); -# else - tmpsrc = tmp; -# endif - tmpdst = - DCHAR_CONV_FROM_ENCODING (locale_charset (), - iconveh_question_mark, - tmpsrc, count, - NULL, - NULL, &tmpdst_len); - if (tmpdst == NULL) - { - int saved_errno = errno; - if (!(result == resultbuf || result == NULL)) - free (result); - if (buf_malloced != NULL) - free (buf_malloced); - CLEANUP (); - errno = saved_errno; - return NULL; - } - ENSURE_ALLOCATION (xsum (length, tmpdst_len)); - DCHAR_CPY (result + length, tmpdst, tmpdst_len); - free (tmpdst); - count = tmpdst_len; - } - else - { - /* The result string is ASCII. - Simple 1:1 conversion. */ -# if USE_SNPRINTF - /* If sizeof (DCHAR_T) == sizeof (TCHAR_T), it's a - no-op conversion, in-place on the array starting - at (result + length). */ - if (sizeof (DCHAR_T) != sizeof (TCHAR_T)) -# endif - { - const TCHAR_T *tmpsrc; - DCHAR_T *tmpdst; - size_t n; - -# if USE_SNPRINTF - if (result == resultbuf) - { - tmpsrc = (TCHAR_T *) (result + length); - /* ENSURE_ALLOCATION will not move tmpsrc - (because it's part of resultbuf). */ - ENSURE_ALLOCATION (xsum (length, count)); - } - else - { - /* ENSURE_ALLOCATION will move the array - (because it uses realloc(). */ - ENSURE_ALLOCATION (xsum (length, count)); - tmpsrc = (TCHAR_T *) (result + length); - } -# else - tmpsrc = tmp; - ENSURE_ALLOCATION (xsum (length, count)); -# endif - tmpdst = result + length; - /* Copy backwards, because of overlapping. */ - tmpsrc += count; - tmpdst += count; - for (n = count; n > 0; n--) - *--tmpdst = *--tmpsrc; - } - } -#endif - -#if DCHAR_IS_TCHAR && !USE_SNPRINTF - /* Make room for the result. */ - if (count > allocated - length) - { - /* Need at least count elements. But allocate - proportionally. */ - size_t n = - xmax (xsum (length, count), xtimes (allocated, 2)); - - ENSURE_ALLOCATION (n); - } -#endif - - /* Here count <= allocated - length. */ - - /* Perform padding. */ -#if !DCHAR_IS_TCHAR || ENABLE_UNISTDIO || NEED_PRINTF_FLAG_LEFTADJUST || NEED_PRINTF_FLAG_ZERO || NEED_PRINTF_UNBOUNDED_PRECISION - if (pad_ourselves && has_width) - { - size_t w; -# if ENABLE_UNISTDIO - /* Outside POSIX, it's preferable to compare the width - against the number of _characters_ of the converted - value. */ - w = DCHAR_MBSNLEN (result + length, count); -# else - /* The width is compared against the number of _bytes_ - of the converted value, says POSIX. */ - w = count; -# endif - if (w < width) - { - size_t pad = width - w; - - /* Make room for the result. */ - if (xsum (count, pad) > allocated - length) - { - /* Need at least count + pad elements. But - allocate proportionally. */ - size_t n = - xmax (xsum3 (length, count, pad), - xtimes (allocated, 2)); - -# if USE_SNPRINTF - length += count; - ENSURE_ALLOCATION (n); - length -= count; -# else - ENSURE_ALLOCATION (n); -# endif - } - /* Here count + pad <= allocated - length. */ - - { -# if !DCHAR_IS_TCHAR || USE_SNPRINTF - DCHAR_T * const rp = result + length; -# else - DCHAR_T * const rp = tmp; -# endif - DCHAR_T *p = rp + count; - DCHAR_T *end = p + pad; - DCHAR_T *pad_ptr; -# if !DCHAR_IS_TCHAR || ENABLE_UNISTDIO - if (dp->conversion == 'c' - || dp->conversion == 's') - /* No zero-padding for string directives. */ - pad_ptr = NULL; - else -# endif - { - pad_ptr = (*rp == '-' ? rp + 1 : rp); - /* No zero-padding of "inf" and "nan". */ - if ((*pad_ptr >= 'A' && *pad_ptr <= 'Z') - || (*pad_ptr >= 'a' && *pad_ptr <= 'z')) - pad_ptr = NULL; - } - /* The generated string now extends from rp to p, - with the zero padding insertion point being at - pad_ptr. */ - - count = count + pad; /* = end - rp */ - - if (flags & FLAG_LEFT) - { - /* Pad with spaces on the right. */ - for (; pad > 0; pad--) - *p++ = ' '; - } - else if ((flags & FLAG_ZERO) && pad_ptr != NULL) - { - /* Pad with zeroes. */ - DCHAR_T *q = end; - - while (p > pad_ptr) - *--q = *--p; - for (; pad > 0; pad--) - *p++ = '0'; - } - else - { - /* Pad with spaces on the left. */ - DCHAR_T *q = end; - - while (p > rp) - *--q = *--p; - for (; pad > 0; pad--) - *p++ = ' '; - } - } - } - } -#endif - - /* Here still count <= allocated - length. */ - -#if !DCHAR_IS_TCHAR || USE_SNPRINTF - /* The snprintf() result did fit. */ -#else - /* Append the sprintf() result. */ - memcpy (result + length, tmp, count * sizeof (DCHAR_T)); -#endif -#if !USE_SNPRINTF - if (tmp != tmpbuf) - free (tmp); -#endif - -#if NEED_PRINTF_DIRECTIVE_F - if (dp->conversion == 'F') - { - /* Convert the %f result to upper case for %F. */ - DCHAR_T *rp = result + length; - size_t rc; - for (rc = count; rc > 0; rc--, rp++) - if (*rp >= 'a' && *rp <= 'z') - *rp = *rp - 'a' + 'A'; - } -#endif - - length += count; - break; - } - errno = orig_errno; -#undef pad_ourselves -#undef prec_ourselves - } - } - } - - /* Add the final NUL. */ - ENSURE_ALLOCATION (xsum (length, 1)); - result[length] = '\0'; - - if (result != resultbuf && length + 1 < allocated) - { - /* Shrink the allocated memory if possible. */ - DCHAR_T *memory; - - memory = (DCHAR_T *) realloc (result, (length + 1) * sizeof (DCHAR_T)); - if (memory != NULL) - result = memory; - } - - if (buf_malloced != NULL) - free (buf_malloced); - CLEANUP (); - *lengthp = length; - /* Note that we can produce a big string of a length > INT_MAX. POSIX - says that snprintf() fails with errno = EOVERFLOW in this case, but - that's only because snprintf() returns an 'int'. This function does - not have this limitation. */ - return result; - -#if USE_SNPRINTF - overflow: - if (!(result == resultbuf || result == NULL)) - free (result); - if (buf_malloced != NULL) - free (buf_malloced); - CLEANUP (); - errno = EOVERFLOW; - return NULL; -#endif - - out_of_memory: - if (!(result == resultbuf || result == NULL)) - free (result); - if (buf_malloced != NULL) - free (buf_malloced); - out_of_memory_1: - CLEANUP (); - errno = ENOMEM; - return NULL; - } -} - -#undef MAX_ROOM_NEEDED -#undef TCHARS_PER_DCHAR -#undef SNPRINTF -#undef USE_SNPRINTF -#undef DCHAR_SET -#undef DCHAR_CPY -#undef PRINTF_PARSE -#undef DIRECTIVES -#undef DIRECTIVE -#undef DCHAR_IS_TCHAR -#undef TCHAR_T -#undef DCHAR_T -#undef FCHAR_T -#undef VASNPRINTF diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/vasnprintf.h b/thirdparty/grub-2.04/grub-core/lib/gnulib/vasnprintf.h deleted file mode 100644 index 5b192b21e..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/vasnprintf.h +++ /dev/null @@ -1,79 +0,0 @@ -/* vsprintf with automatic memory allocation. - Copyright (C) 2002-2004, 2007-2019 Free Software Foundation, Inc. - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3, or (at your option) - any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License along - with this program; if not, see . */ - -#ifndef _VASNPRINTF_H -#define _VASNPRINTF_H - -/* Get va_list. */ -#include - -/* Get size_t. */ -#include - -/* The __attribute__ feature is available in gcc versions 2.5 and later. - The __-protected variants of the attributes 'format' and 'printf' are - accepted by gcc versions 2.6.4 (effectively 2.7) and later. - We enable _GL_ATTRIBUTE_FORMAT only if these are supported too, because - gnulib and libintl do '#define printf __printf__' when they override - the 'printf' function. */ -#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 7) -# define _GL_ATTRIBUTE_FORMAT(spec) __attribute__ ((__format__ spec)) -#else -# define _GL_ATTRIBUTE_FORMAT(spec) /* empty */ -#endif - -#ifdef __cplusplus -extern "C" { -#endif - -/* Write formatted output to a string dynamically allocated with malloc(). - You can pass a preallocated buffer for the result in RESULTBUF and its - size in *LENGTHP; otherwise you pass RESULTBUF = NULL. - If successful, return the address of the string (this may be = RESULTBUF - if no dynamic memory allocation was necessary) and set *LENGTHP to the - number of resulting bytes, excluding the trailing NUL. Upon error, set - errno and return NULL. - - When dynamic memory allocation occurs, the preallocated buffer is left - alone (with possibly modified contents). This makes it possible to use - a statically allocated or stack-allocated buffer, like this: - - char buf[100]; - size_t len = sizeof (buf); - char *output = vasnprintf (buf, &len, format, args); - if (output == NULL) - ... error handling ...; - else - { - ... use the output string ...; - if (output != buf) - free (output); - } - */ -#if REPLACE_VASNPRINTF -# define asnprintf rpl_asnprintf -# define vasnprintf rpl_vasnprintf -#endif -extern char * asnprintf (char *resultbuf, size_t *lengthp, const char *format, ...) - _GL_ATTRIBUTE_FORMAT ((__printf__, 3, 4)); -extern char * vasnprintf (char *resultbuf, size_t *lengthp, const char *format, va_list args) - _GL_ATTRIBUTE_FORMAT ((__printf__, 3, 0)); - -#ifdef __cplusplus -} -#endif - -#endif /* _VASNPRINTF_H */ diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/verify.h b/thirdparty/grub-2.04/grub-core/lib/gnulib/verify.h deleted file mode 100644 index b2e5f6446..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/verify.h +++ /dev/null @@ -1,285 +0,0 @@ -/* Compile-time assert-like macros. - - Copyright (C) 2005-2006, 2009-2019 Free Software Foundation, Inc. - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . */ - -/* Written by Paul Eggert, Bruno Haible, and Jim Meyering. */ - -#ifndef _GL_VERIFY_H -#define _GL_VERIFY_H - - -/* Define _GL_HAVE__STATIC_ASSERT to 1 if _Static_assert works as per C11. - This is supported by GCC 4.6.0 and later, in C mode, and its use - here generates easier-to-read diagnostics when verify (R) fails. - - Define _GL_HAVE_STATIC_ASSERT to 1 if static_assert works as per C++11. - This will likely be supported by future GCC versions, in C++ mode. - - Use this only with GCC. If we were willing to slow 'configure' - down we could also use it with other compilers, but since this - affects only the quality of diagnostics, why bother? */ -#if (4 < __GNUC__ + (6 <= __GNUC_MINOR__) \ - && (201112L <= __STDC_VERSION__ || !defined __STRICT_ANSI__) \ - && !defined __cplusplus) -# define _GL_HAVE__STATIC_ASSERT 1 -#endif -/* The condition (99 < __GNUC__) is temporary, until we know about the - first G++ release that supports static_assert. */ -#if (99 < __GNUC__) && defined __cplusplus -# define _GL_HAVE_STATIC_ASSERT 1 -#endif - -/* FreeBSD 9.1 , included by and lots of other - system headers, defines a conflicting _Static_assert that is no - better than ours; override it. */ -#ifndef _GL_HAVE_STATIC_ASSERT -# include -# undef _Static_assert -#endif - -/* Each of these macros verifies that its argument R is nonzero. To - be portable, R should be an integer constant expression. Unlike - assert (R), there is no run-time overhead. - - If _Static_assert works, verify (R) uses it directly. Similarly, - _GL_VERIFY_TRUE works by packaging a _Static_assert inside a struct - that is an operand of sizeof. - - The code below uses several ideas for C++ compilers, and for C - compilers that do not support _Static_assert: - - * The first step is ((R) ? 1 : -1). Given an expression R, of - integral or boolean or floating-point type, this yields an - expression of integral type, whose value is later verified to be - constant and nonnegative. - - * Next this expression W is wrapped in a type - struct _gl_verify_type { - unsigned int _gl_verify_error_if_negative: W; - }. - If W is negative, this yields a compile-time error. No compiler can - deal with a bit-field of negative size. - - One might think that an array size check would have the same - effect, that is, that the type struct { unsigned int dummy[W]; } - would work as well. However, inside a function, some compilers - (such as C++ compilers and GNU C) allow local parameters and - variables inside array size expressions. With these compilers, - an array size check would not properly diagnose this misuse of - the verify macro: - - void function (int n) { verify (n < 0); } - - * For the verify macro, the struct _gl_verify_type will need to - somehow be embedded into a declaration. To be portable, this - declaration must declare an object, a constant, a function, or a - typedef name. If the declared entity uses the type directly, - such as in - - struct dummy {...}; - typedef struct {...} dummy; - extern struct {...} *dummy; - extern void dummy (struct {...} *); - extern struct {...} *dummy (void); - - two uses of the verify macro would yield colliding declarations - if the entity names are not disambiguated. A workaround is to - attach the current line number to the entity name: - - #define _GL_CONCAT0(x, y) x##y - #define _GL_CONCAT(x, y) _GL_CONCAT0 (x, y) - extern struct {...} * _GL_CONCAT (dummy, __LINE__); - - But this has the problem that two invocations of verify from - within the same macro would collide, since the __LINE__ value - would be the same for both invocations. (The GCC __COUNTER__ - macro solves this problem, but is not portable.) - - A solution is to use the sizeof operator. It yields a number, - getting rid of the identity of the type. Declarations like - - extern int dummy [sizeof (struct {...})]; - extern void dummy (int [sizeof (struct {...})]); - extern int (*dummy (void)) [sizeof (struct {...})]; - - can be repeated. - - * Should the implementation use a named struct or an unnamed struct? - Which of the following alternatives can be used? - - extern int dummy [sizeof (struct {...})]; - extern int dummy [sizeof (struct _gl_verify_type {...})]; - extern void dummy (int [sizeof (struct {...})]); - extern void dummy (int [sizeof (struct _gl_verify_type {...})]); - extern int (*dummy (void)) [sizeof (struct {...})]; - extern int (*dummy (void)) [sizeof (struct _gl_verify_type {...})]; - - In the second and sixth case, the struct type is exported to the - outer scope; two such declarations therefore collide. GCC warns - about the first, third, and fourth cases. So the only remaining - possibility is the fifth case: - - extern int (*dummy (void)) [sizeof (struct {...})]; - - * GCC warns about duplicate declarations of the dummy function if - -Wredundant-decls is used. GCC 4.3 and later have a builtin - __COUNTER__ macro that can let us generate unique identifiers for - each dummy function, to suppress this warning. - - * This implementation exploits the fact that older versions of GCC, - which do not support _Static_assert, also do not warn about the - last declaration mentioned above. - - * GCC warns if -Wnested-externs is enabled and verify() is used - within a function body; but inside a function, you can always - arrange to use verify_expr() instead. - - * In C++, any struct definition inside sizeof is invalid. - Use a template type to work around the problem. */ - -/* Concatenate two preprocessor tokens. */ -#define _GL_CONCAT(x, y) _GL_CONCAT0 (x, y) -#define _GL_CONCAT0(x, y) x##y - -/* _GL_COUNTER is an integer, preferably one that changes each time we - use it. Use __COUNTER__ if it works, falling back on __LINE__ - otherwise. __LINE__ isn't perfect, but it's better than a - constant. */ -#if defined __COUNTER__ && __COUNTER__ != __COUNTER__ -# define _GL_COUNTER __COUNTER__ -#else -# define _GL_COUNTER __LINE__ -#endif - -/* Generate a symbol with the given prefix, making it unique if - possible. */ -#define _GL_GENSYM(prefix) _GL_CONCAT (prefix, _GL_COUNTER) - -/* Verify requirement R at compile-time, as an integer constant expression - that returns 1. If R is false, fail at compile-time, preferably - with a diagnostic that includes the string-literal DIAGNOSTIC. */ - -#define _GL_VERIFY_TRUE(R, DIAGNOSTIC) \ - (!!sizeof (_GL_VERIFY_TYPE (R, DIAGNOSTIC))) - -#ifdef __cplusplus -# if !GNULIB_defined_struct__gl_verify_type -template - struct _gl_verify_type { - unsigned int _gl_verify_error_if_negative: w; - }; -# define GNULIB_defined_struct__gl_verify_type 1 -# endif -# define _GL_VERIFY_TYPE(R, DIAGNOSTIC) \ - _gl_verify_type<(R) ? 1 : -1> -#elif defined _GL_HAVE__STATIC_ASSERT -# define _GL_VERIFY_TYPE(R, DIAGNOSTIC) \ - struct { \ - _Static_assert (R, DIAGNOSTIC); \ - int _gl_dummy; \ - } -#else -# define _GL_VERIFY_TYPE(R, DIAGNOSTIC) \ - struct { unsigned int _gl_verify_error_if_negative: (R) ? 1 : -1; } -#endif - -/* Verify requirement R at compile-time, as a declaration without a - trailing ';'. If R is false, fail at compile-time, preferably - with a diagnostic that includes the string-literal DIAGNOSTIC. - - Unfortunately, unlike C11, this implementation must appear as an - ordinary declaration, and cannot appear inside struct { ... }. */ - -#ifdef _GL_HAVE__STATIC_ASSERT -# define _GL_VERIFY _Static_assert -#else -# define _GL_VERIFY(R, DIAGNOSTIC) \ - extern int (*_GL_GENSYM (_gl_verify_function) (void)) \ - [_GL_VERIFY_TRUE (R, DIAGNOSTIC)] -#endif - -/* _GL_STATIC_ASSERT_H is defined if this code is copied into assert.h. */ -#ifdef _GL_STATIC_ASSERT_H -# if !defined _GL_HAVE__STATIC_ASSERT && !defined _Static_assert -# define _Static_assert(R, DIAGNOSTIC) _GL_VERIFY (R, DIAGNOSTIC) -# endif -# if !defined _GL_HAVE_STATIC_ASSERT && !defined static_assert -# define static_assert _Static_assert /* C11 requires this #define. */ -# endif -#endif - -/* @assert.h omit start@ */ - -/* Each of these macros verifies that its argument R is nonzero. To - be portable, R should be an integer constant expression. Unlike - assert (R), there is no run-time overhead. - - There are two macros, since no single macro can be used in all - contexts in C. verify_true (R) is for scalar contexts, including - integer constant expression contexts. verify (R) is for declaration - contexts, e.g., the top level. */ - -/* Verify requirement R at compile-time, as an integer constant expression. - Return 1. This is equivalent to verify_expr (R, 1). - - verify_true is obsolescent; please use verify_expr instead. */ - -#define verify_true(R) _GL_VERIFY_TRUE (R, "verify_true (" #R ")") - -/* Verify requirement R at compile-time. Return the value of the - expression E. */ - -#define verify_expr(R, E) \ - (_GL_VERIFY_TRUE (R, "verify_expr (" #R ", " #E ")") ? (E) : (E)) - -/* Verify requirement R at compile-time, as a declaration without a - trailing ';'. */ - -#ifdef __GNUC__ -# define verify(R) _GL_VERIFY (R, "verify (" #R ")") -#else -/* PGI barfs if R is long. Play it safe. */ -# define verify(R) _GL_VERIFY (R, "verify (...)") -#endif - -#ifndef __has_builtin -# define __has_builtin(x) 0 -#endif - -/* Assume that R always holds. This lets the compiler optimize - accordingly. R should not have side-effects; it may or may not be - evaluated. Behavior is undefined if R is false. */ - -#if (__has_builtin (__builtin_unreachable) \ - || 4 < __GNUC__ + (5 <= __GNUC_MINOR__)) -# define assume(R) ((R) ? (void) 0 : __builtin_unreachable ()) -#elif 1200 <= _MSC_VER -# define assume(R) __assume (R) -#elif ((defined GCC_LINT || defined lint) \ - && (__has_builtin (__builtin_trap) \ - || 3 < __GNUC__ + (3 < __GNUC_MINOR__ + (4 <= __GNUC_PATCHLEVEL__)))) - /* Doing it this way helps various packages when configured with - --enable-gcc-warnings, which compiles with -Dlint. It's nicer - when 'assume' silences warnings even with older GCCs. */ -# define assume(R) ((R) ? (void) 0 : __builtin_trap ()) -#else - /* Some tools grok NOTREACHED, e.g., Oracle Studio 12.6. */ -# define assume(R) ((R) ? (void) 0 : /*NOTREACHED*/ (void) 0) -#endif - -/* @assert.h omit end@ */ - -#endif diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/vsnprintf.c b/thirdparty/grub-2.04/grub-core/lib/gnulib/vsnprintf.c deleted file mode 100644 index 6a209f732..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/vsnprintf.c +++ /dev/null @@ -1,70 +0,0 @@ -/* Formatted output to strings. - Copyright (C) 2004, 2006-2019 Free Software Foundation, Inc. - Written by Simon Josefsson and Yoann Vandoorselaere . - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3, or (at your option) - any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License along - with this program; if not, see . */ - -#ifdef HAVE_CONFIG_H -# include -#endif - -/* Specification. */ -#include - -#include -#include -#include -#include -#include - -#include "vasnprintf.h" - -/* Print formatted output to string STR. Similar to vsprintf, but - additional length SIZE limit how much is written into STR. Returns - string length of formatted string (which may be larger than SIZE). - STR may be NULL, in which case nothing will be written. On error, - return a negative value. */ -int -vsnprintf (char *str, size_t size, const char *format, va_list args) -{ - char *output; - size_t len; - size_t lenbuf = size; - - output = vasnprintf (str, &lenbuf, format, args); - len = lenbuf; - - if (!output) - return -1; - - if (output != str) - { - if (size) - { - size_t pruned_len = (len < size ? len : size - 1); - memcpy (str, output, pruned_len); - str[pruned_len] = '\0'; - } - - free (output); - } - - if (len > INT_MAX) - { - errno = EOVERFLOW; - return -1; - } - - return len; -} diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/warn-on-use.h b/thirdparty/grub-2.04/grub-core/lib/gnulib/warn-on-use.h deleted file mode 100644 index 7d11a1569..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/warn-on-use.h +++ /dev/null @@ -1,131 +0,0 @@ -/* A C macro for emitting warnings if a function is used. - Copyright (C) 2010-2019 Free Software Foundation, Inc. - - This program is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published - by the Free Software Foundation; either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . */ - -/* _GL_WARN_ON_USE (function, "literal string") issues a declaration - for FUNCTION which will then trigger a compiler warning containing - the text of "literal string" anywhere that function is called, if - supported by the compiler. If the compiler does not support this - feature, the macro expands to an unused extern declaration. - - _GL_WARN_ON_USE_ATTRIBUTE ("literal string") expands to the - attribute used in _GL_WARN_ON_USE. If the compiler does not support - this feature, it expands to empty. - - These macros are useful for marking a function as a potential - portability trap, with the intent that "literal string" include - instructions on the replacement function that should be used - instead. - _GL_WARN_ON_USE is for functions with 'extern' linkage. - _GL_WARN_ON_USE_ATTRIBUTE is for functions with 'static' or 'inline' - linkage. - - However, one of the reasons that a function is a portability trap is - if it has the wrong signature. Declaring FUNCTION with a different - signature in C is a compilation error, so this macro must use the - same type as any existing declaration so that programs that avoid - the problematic FUNCTION do not fail to compile merely because they - included a header that poisoned the function. But this implies that - _GL_WARN_ON_USE is only safe to use if FUNCTION is known to already - have a declaration. Use of this macro implies that there must not - be any other macro hiding the declaration of FUNCTION; but - undefining FUNCTION first is part of the poisoning process anyway - (although for symbols that are provided only via a macro, the result - is a compilation error rather than a warning containing - "literal string"). Also note that in C++, it is only safe to use if - FUNCTION has no overloads. - - For an example, it is possible to poison 'getline' by: - - adding a call to gl_WARN_ON_USE_PREPARE([[#include ]], - [getline]) in configure.ac, which potentially defines - HAVE_RAW_DECL_GETLINE - - adding this code to a header that wraps the system : - #undef getline - #if HAVE_RAW_DECL_GETLINE - _GL_WARN_ON_USE (getline, "getline is required by POSIX 2008, but" - "not universally present; use the gnulib module getline"); - #endif - - It is not possible to directly poison global variables. But it is - possible to write a wrapper accessor function, and poison that - (less common usage, like &environ, will cause a compilation error - rather than issue the nice warning, but the end result of informing - the developer about their portability problem is still achieved): - #if HAVE_RAW_DECL_ENVIRON - static char *** - rpl_environ (void) { return &environ; } - _GL_WARN_ON_USE (rpl_environ, "environ is not always properly declared"); - # undef environ - # define environ (*rpl_environ ()) - #endif - or better (avoiding contradictory use of 'static' and 'extern'): - #if HAVE_RAW_DECL_ENVIRON - static char *** - _GL_WARN_ON_USE_ATTRIBUTE ("environ is not always properly declared") - rpl_environ (void) { return &environ; } - # undef environ - # define environ (*rpl_environ ()) - #endif - */ -#ifndef _GL_WARN_ON_USE - -# if 4 < __GNUC__ || (__GNUC__ == 4 && 3 <= __GNUC_MINOR__) -/* A compiler attribute is available in gcc versions 4.3.0 and later. */ -# define _GL_WARN_ON_USE(function, message) \ -extern __typeof__ (function) function __attribute__ ((__warning__ (message))) -# define _GL_WARN_ON_USE_ATTRIBUTE(message) \ - __attribute__ ((__warning__ (message))) -# elif __GNUC__ >= 3 && GNULIB_STRICT_CHECKING -/* Verify the existence of the function. */ -# define _GL_WARN_ON_USE(function, message) \ -extern __typeof__ (function) function -# define _GL_WARN_ON_USE_ATTRIBUTE(message) -# else /* Unsupported. */ -# define _GL_WARN_ON_USE(function, message) \ -_GL_WARN_EXTERN_C int _gl_warn_on_use -# define _GL_WARN_ON_USE_ATTRIBUTE(message) -# endif -#endif - -/* _GL_WARN_ON_USE_CXX (function, rettype, parameters_and_attributes, "string") - is like _GL_WARN_ON_USE (function, "string"), except that the function is - declared with the given prototype, consisting of return type, parameters, - and attributes. - This variant is useful for overloaded functions in C++. _GL_WARN_ON_USE does - not work in this case. */ -#ifndef _GL_WARN_ON_USE_CXX -# if 4 < __GNUC__ || (__GNUC__ == 4 && 3 <= __GNUC_MINOR__) -# define _GL_WARN_ON_USE_CXX(function,rettype,parameters_and_attributes,msg) \ -extern rettype function parameters_and_attributes \ - __attribute__ ((__warning__ (msg))) -# elif __GNUC__ >= 3 && GNULIB_STRICT_CHECKING -/* Verify the existence of the function. */ -# define _GL_WARN_ON_USE_CXX(function,rettype,parameters_and_attributes,msg) \ -extern rettype function parameters_and_attributes -# else /* Unsupported. */ -# define _GL_WARN_ON_USE_CXX(function,rettype,parameters_and_attributes,msg) \ -_GL_WARN_EXTERN_C int _gl_warn_on_use -# endif -#endif - -/* _GL_WARN_EXTERN_C declaration; - performs the declaration with C linkage. */ -#ifndef _GL_WARN_EXTERN_C -# if defined __cplusplus -# define _GL_WARN_EXTERN_C extern "C" -# else -# define _GL_WARN_EXTERN_C extern -# endif -#endif diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/wchar.in.h b/thirdparty/grub-2.04/grub-core/lib/gnulib/wchar.in.h deleted file mode 100644 index 17d569129..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/wchar.in.h +++ /dev/null @@ -1,1072 +0,0 @@ -/* A substitute for ISO C99 , for platforms that have issues. - - Copyright (C) 2007-2019 Free Software Foundation, Inc. - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3, or (at your option) - any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, see . */ - -/* Written by Eric Blake. */ - -/* - * ISO C 99 for platforms that have issues. - * - * - * For now, this just ensures proper prerequisite inclusion order and - * the declaration of wcwidth(). - */ - -#if __GNUC__ >= 3 -@PRAGMA_SYSTEM_HEADER@ -#endif -@PRAGMA_COLUMNS@ - -#if (((defined __need_mbstate_t || defined __need_wint_t) \ - && !defined __MINGW32__) \ - || (defined __hpux \ - && ((defined _INTTYPES_INCLUDED && !defined strtoimax) \ - || defined _GL_JUST_INCLUDE_SYSTEM_WCHAR_H)) \ - || (defined __MINGW32__ && defined __STRING_H_SOURCED__) \ - || defined _GL_ALREADY_INCLUDING_WCHAR_H) -/* Special invocation convention: - - Inside glibc and uClibc header files, but not MinGW. - - On HP-UX 11.00 we have a sequence of nested includes - -> -> , and the latter includes , - once indirectly -> -> -> - and once directly. In both situations 'wint_t' is not yet defined, - therefore we cannot provide the function overrides; instead include only - the system's . - - With MinGW 3.22, when includes , only some part of - is actually processed, and that doesn't include 'mbstate_t'. - - On IRIX 6.5, similarly, we have an include -> , and - the latter includes . But here, we have no way to detect whether - is completely included or is still being included. */ - -#@INCLUDE_NEXT@ @NEXT_WCHAR_H@ - -#else -/* Normal invocation convention. */ - -#ifndef _@GUARD_PREFIX@_WCHAR_H - -#define _GL_ALREADY_INCLUDING_WCHAR_H - -#if @HAVE_FEATURES_H@ -# include /* for __GLIBC__ */ -#endif - -/* Tru64 with Desktop Toolkit C has a bug: must be included before - . - BSD/OS 4.0.1 has a bug: , and must be - included before . - In some builds of uClibc, is nonexistent and wchar_t is defined - by . - But avoid namespace pollution on glibc systems. */ -#if !(defined __GLIBC__ && !defined __UCLIBC__) -# include -#endif -#ifndef __GLIBC__ -# include -# include -#endif - -/* Include the original if it exists. - Some builds of uClibc lack it. */ -/* The include_next requires a split double-inclusion guard. */ -#if @HAVE_WCHAR_H@ -# @INCLUDE_NEXT@ @NEXT_WCHAR_H@ -#endif - -#undef _GL_ALREADY_INCLUDING_WCHAR_H - -#ifndef _@GUARD_PREFIX@_WCHAR_H -#define _@GUARD_PREFIX@_WCHAR_H - -/* The __attribute__ feature is available in gcc versions 2.5 and later. - The attribute __pure__ was added in gcc 2.96. */ -#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 96) -# define _GL_ATTRIBUTE_PURE __attribute__ ((__pure__)) -#else -# define _GL_ATTRIBUTE_PURE /* empty */ -#endif - -/* The definitions of _GL_FUNCDECL_RPL etc. are copied here. */ - -/* The definition of _GL_ARG_NONNULL is copied here. */ - -/* The definition of _GL_WARN_ON_USE is copied here. */ - - -/* Define wint_t and WEOF. (Also done in wctype.in.h.) */ -#if !@HAVE_WINT_T@ && !defined wint_t -# define wint_t int -# ifndef WEOF -# define WEOF -1 -# endif -#else -/* mingw and MSVC define wint_t as 'unsigned short' in or - . This is too small: ISO C 99 section 7.24.1.(2) says that - wint_t must be "unchanged by default argument promotions". Override it. */ -# if @GNULIB_OVERRIDES_WINT_T@ -# if !GNULIB_defined_wint_t -# if @HAVE_CRTDEFS_H@ -# include -# else -# include -# endif -typedef unsigned int rpl_wint_t; -# undef wint_t -# define wint_t rpl_wint_t -# define GNULIB_defined_wint_t 1 -# endif -# endif -# ifndef WEOF -# define WEOF ((wint_t) -1) -# endif -#endif - - -/* Override mbstate_t if it is too small. - On IRIX 6.5, sizeof (mbstate_t) == 1, which is not sufficient for - implementing mbrtowc for encodings like UTF-8. */ -#if !(@HAVE_MBSINIT@ && @HAVE_MBRTOWC@) || @REPLACE_MBSTATE_T@ -# if !GNULIB_defined_mbstate_t -typedef int rpl_mbstate_t; -# undef mbstate_t -# define mbstate_t rpl_mbstate_t -# define GNULIB_defined_mbstate_t 1 -# endif -#endif - - -/* Convert a single-byte character to a wide character. */ -#if @GNULIB_BTOWC@ -# if @REPLACE_BTOWC@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# undef btowc -# define btowc rpl_btowc -# endif -_GL_FUNCDECL_RPL (btowc, wint_t, (int c) _GL_ATTRIBUTE_PURE); -_GL_CXXALIAS_RPL (btowc, wint_t, (int c)); -# else -# if !@HAVE_BTOWC@ -_GL_FUNCDECL_SYS (btowc, wint_t, (int c) _GL_ATTRIBUTE_PURE); -# endif -_GL_CXXALIAS_SYS (btowc, wint_t, (int c)); -# endif -_GL_CXXALIASWARN (btowc); -#elif defined GNULIB_POSIXCHECK -# undef btowc -# if HAVE_RAW_DECL_BTOWC -_GL_WARN_ON_USE (btowc, "btowc is unportable - " - "use gnulib module btowc for portability"); -# endif -#endif - - -/* Convert a wide character to a single-byte character. */ -#if @GNULIB_WCTOB@ -# if @REPLACE_WCTOB@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# undef wctob -# define wctob rpl_wctob -# endif -_GL_FUNCDECL_RPL (wctob, int, (wint_t wc) _GL_ATTRIBUTE_PURE); -_GL_CXXALIAS_RPL (wctob, int, (wint_t wc)); -# else -# if !defined wctob && !@HAVE_DECL_WCTOB@ -/* wctob is provided by gnulib, or wctob exists but is not declared. */ -_GL_FUNCDECL_SYS (wctob, int, (wint_t wc) _GL_ATTRIBUTE_PURE); -# endif -_GL_CXXALIAS_SYS (wctob, int, (wint_t wc)); -# endif -_GL_CXXALIASWARN (wctob); -#elif defined GNULIB_POSIXCHECK -# undef wctob -# if HAVE_RAW_DECL_WCTOB -_GL_WARN_ON_USE (wctob, "wctob is unportable - " - "use gnulib module wctob for portability"); -# endif -#endif - - -/* Test whether *PS is in the initial state. */ -#if @GNULIB_MBSINIT@ -# if @REPLACE_MBSINIT@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# undef mbsinit -# define mbsinit rpl_mbsinit -# endif -_GL_FUNCDECL_RPL (mbsinit, int, (const mbstate_t *ps)); -_GL_CXXALIAS_RPL (mbsinit, int, (const mbstate_t *ps)); -# else -# if !@HAVE_MBSINIT@ -_GL_FUNCDECL_SYS (mbsinit, int, (const mbstate_t *ps)); -# endif -_GL_CXXALIAS_SYS (mbsinit, int, (const mbstate_t *ps)); -# endif -_GL_CXXALIASWARN (mbsinit); -#elif defined GNULIB_POSIXCHECK -# undef mbsinit -# if HAVE_RAW_DECL_MBSINIT -_GL_WARN_ON_USE (mbsinit, "mbsinit is unportable - " - "use gnulib module mbsinit for portability"); -# endif -#endif - - -/* Convert a multibyte character to a wide character. */ -#if @GNULIB_MBRTOWC@ -# if @REPLACE_MBRTOWC@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# undef mbrtowc -# define mbrtowc rpl_mbrtowc -# endif -_GL_FUNCDECL_RPL (mbrtowc, size_t, - (wchar_t *pwc, const char *s, size_t n, mbstate_t *ps)); -_GL_CXXALIAS_RPL (mbrtowc, size_t, - (wchar_t *pwc, const char *s, size_t n, mbstate_t *ps)); -# else -# if !@HAVE_MBRTOWC@ -_GL_FUNCDECL_SYS (mbrtowc, size_t, - (wchar_t *pwc, const char *s, size_t n, mbstate_t *ps)); -# endif -_GL_CXXALIAS_SYS (mbrtowc, size_t, - (wchar_t *pwc, const char *s, size_t n, mbstate_t *ps)); -# endif -_GL_CXXALIASWARN (mbrtowc); -#elif defined GNULIB_POSIXCHECK -# undef mbrtowc -# if HAVE_RAW_DECL_MBRTOWC -_GL_WARN_ON_USE (mbrtowc, "mbrtowc is unportable - " - "use gnulib module mbrtowc for portability"); -# endif -#endif - - -/* Recognize a multibyte character. */ -#if @GNULIB_MBRLEN@ -# if @REPLACE_MBRLEN@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# undef mbrlen -# define mbrlen rpl_mbrlen -# endif -_GL_FUNCDECL_RPL (mbrlen, size_t, (const char *s, size_t n, mbstate_t *ps)); -_GL_CXXALIAS_RPL (mbrlen, size_t, (const char *s, size_t n, mbstate_t *ps)); -# else -# if !@HAVE_MBRLEN@ -_GL_FUNCDECL_SYS (mbrlen, size_t, (const char *s, size_t n, mbstate_t *ps)); -# endif -_GL_CXXALIAS_SYS (mbrlen, size_t, (const char *s, size_t n, mbstate_t *ps)); -# endif -_GL_CXXALIASWARN (mbrlen); -#elif defined GNULIB_POSIXCHECK -# undef mbrlen -# if HAVE_RAW_DECL_MBRLEN -_GL_WARN_ON_USE (mbrlen, "mbrlen is unportable - " - "use gnulib module mbrlen for portability"); -# endif -#endif - - -/* Convert a string to a wide string. */ -#if @GNULIB_MBSRTOWCS@ -# if @REPLACE_MBSRTOWCS@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# undef mbsrtowcs -# define mbsrtowcs rpl_mbsrtowcs -# endif -_GL_FUNCDECL_RPL (mbsrtowcs, size_t, - (wchar_t *dest, const char **srcp, size_t len, mbstate_t *ps) - _GL_ARG_NONNULL ((2))); -_GL_CXXALIAS_RPL (mbsrtowcs, size_t, - (wchar_t *dest, const char **srcp, size_t len, - mbstate_t *ps)); -# else -# if !@HAVE_MBSRTOWCS@ -_GL_FUNCDECL_SYS (mbsrtowcs, size_t, - (wchar_t *dest, const char **srcp, size_t len, mbstate_t *ps) - _GL_ARG_NONNULL ((2))); -# endif -_GL_CXXALIAS_SYS (mbsrtowcs, size_t, - (wchar_t *dest, const char **srcp, size_t len, - mbstate_t *ps)); -# endif -_GL_CXXALIASWARN (mbsrtowcs); -#elif defined GNULIB_POSIXCHECK -# undef mbsrtowcs -# if HAVE_RAW_DECL_MBSRTOWCS -_GL_WARN_ON_USE (mbsrtowcs, "mbsrtowcs is unportable - " - "use gnulib module mbsrtowcs for portability"); -# endif -#endif - - -/* Convert a string to a wide string. */ -#if @GNULIB_MBSNRTOWCS@ -# if @REPLACE_MBSNRTOWCS@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# undef mbsnrtowcs -# define mbsnrtowcs rpl_mbsnrtowcs -# endif -_GL_FUNCDECL_RPL (mbsnrtowcs, size_t, - (wchar_t *dest, const char **srcp, size_t srclen, size_t len, - mbstate_t *ps) - _GL_ARG_NONNULL ((2))); -_GL_CXXALIAS_RPL (mbsnrtowcs, size_t, - (wchar_t *dest, const char **srcp, size_t srclen, size_t len, - mbstate_t *ps)); -# else -# if !@HAVE_MBSNRTOWCS@ -_GL_FUNCDECL_SYS (mbsnrtowcs, size_t, - (wchar_t *dest, const char **srcp, size_t srclen, size_t len, - mbstate_t *ps) - _GL_ARG_NONNULL ((2))); -# endif -_GL_CXXALIAS_SYS (mbsnrtowcs, size_t, - (wchar_t *dest, const char **srcp, size_t srclen, size_t len, - mbstate_t *ps)); -# endif -_GL_CXXALIASWARN (mbsnrtowcs); -#elif defined GNULIB_POSIXCHECK -# undef mbsnrtowcs -# if HAVE_RAW_DECL_MBSNRTOWCS -_GL_WARN_ON_USE (mbsnrtowcs, "mbsnrtowcs is unportable - " - "use gnulib module mbsnrtowcs for portability"); -# endif -#endif - - -/* Convert a wide character to a multibyte character. */ -#if @GNULIB_WCRTOMB@ -# if @REPLACE_WCRTOMB@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# undef wcrtomb -# define wcrtomb rpl_wcrtomb -# endif -_GL_FUNCDECL_RPL (wcrtomb, size_t, (char *s, wchar_t wc, mbstate_t *ps)); -_GL_CXXALIAS_RPL (wcrtomb, size_t, (char *s, wchar_t wc, mbstate_t *ps)); -# else -# if !@HAVE_WCRTOMB@ -_GL_FUNCDECL_SYS (wcrtomb, size_t, (char *s, wchar_t wc, mbstate_t *ps)); -# endif -_GL_CXXALIAS_SYS (wcrtomb, size_t, (char *s, wchar_t wc, mbstate_t *ps)); -# endif -_GL_CXXALIASWARN (wcrtomb); -#elif defined GNULIB_POSIXCHECK -# undef wcrtomb -# if HAVE_RAW_DECL_WCRTOMB -_GL_WARN_ON_USE (wcrtomb, "wcrtomb is unportable - " - "use gnulib module wcrtomb for portability"); -# endif -#endif - - -/* Convert a wide string to a string. */ -#if @GNULIB_WCSRTOMBS@ -# if @REPLACE_WCSRTOMBS@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# undef wcsrtombs -# define wcsrtombs rpl_wcsrtombs -# endif -_GL_FUNCDECL_RPL (wcsrtombs, size_t, - (char *dest, const wchar_t **srcp, size_t len, mbstate_t *ps) - _GL_ARG_NONNULL ((2))); -_GL_CXXALIAS_RPL (wcsrtombs, size_t, - (char *dest, const wchar_t **srcp, size_t len, - mbstate_t *ps)); -# else -# if !@HAVE_WCSRTOMBS@ -_GL_FUNCDECL_SYS (wcsrtombs, size_t, - (char *dest, const wchar_t **srcp, size_t len, mbstate_t *ps) - _GL_ARG_NONNULL ((2))); -# endif -_GL_CXXALIAS_SYS (wcsrtombs, size_t, - (char *dest, const wchar_t **srcp, size_t len, - mbstate_t *ps)); -# endif -_GL_CXXALIASWARN (wcsrtombs); -#elif defined GNULIB_POSIXCHECK -# undef wcsrtombs -# if HAVE_RAW_DECL_WCSRTOMBS -_GL_WARN_ON_USE (wcsrtombs, "wcsrtombs is unportable - " - "use gnulib module wcsrtombs for portability"); -# endif -#endif - - -/* Convert a wide string to a string. */ -#if @GNULIB_WCSNRTOMBS@ -# if @REPLACE_WCSNRTOMBS@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# undef wcsnrtombs -# define wcsnrtombs rpl_wcsnrtombs -# endif -_GL_FUNCDECL_RPL (wcsnrtombs, size_t, - (char *dest, const wchar_t **srcp, size_t srclen, size_t len, - mbstate_t *ps) - _GL_ARG_NONNULL ((2))); -_GL_CXXALIAS_RPL (wcsnrtombs, size_t, - (char *dest, const wchar_t **srcp, size_t srclen, size_t len, - mbstate_t *ps)); -# else -# if !@HAVE_WCSNRTOMBS@ -_GL_FUNCDECL_SYS (wcsnrtombs, size_t, - (char *dest, const wchar_t **srcp, size_t srclen, size_t len, - mbstate_t *ps) - _GL_ARG_NONNULL ((2))); -# endif -_GL_CXXALIAS_SYS (wcsnrtombs, size_t, - (char *dest, const wchar_t **srcp, size_t srclen, size_t len, - mbstate_t *ps)); -# endif -_GL_CXXALIASWARN (wcsnrtombs); -#elif defined GNULIB_POSIXCHECK -# undef wcsnrtombs -# if HAVE_RAW_DECL_WCSNRTOMBS -_GL_WARN_ON_USE (wcsnrtombs, "wcsnrtombs is unportable - " - "use gnulib module wcsnrtombs for portability"); -# endif -#endif - - -/* Return the number of screen columns needed for WC. */ -#if @GNULIB_WCWIDTH@ -# if @REPLACE_WCWIDTH@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# undef wcwidth -# define wcwidth rpl_wcwidth -# endif -_GL_FUNCDECL_RPL (wcwidth, int, (wchar_t) _GL_ATTRIBUTE_PURE); -_GL_CXXALIAS_RPL (wcwidth, int, (wchar_t)); -# else -# if !@HAVE_DECL_WCWIDTH@ -/* wcwidth exists but is not declared. */ -_GL_FUNCDECL_SYS (wcwidth, int, (wchar_t) _GL_ATTRIBUTE_PURE); -# endif -_GL_CXXALIAS_SYS (wcwidth, int, (wchar_t)); -# endif -_GL_CXXALIASWARN (wcwidth); -#elif defined GNULIB_POSIXCHECK -# undef wcwidth -# if HAVE_RAW_DECL_WCWIDTH -_GL_WARN_ON_USE (wcwidth, "wcwidth is unportable - " - "use gnulib module wcwidth for portability"); -# endif -#endif - - -/* Search N wide characters of S for C. */ -#if @GNULIB_WMEMCHR@ -# if !@HAVE_WMEMCHR@ -_GL_FUNCDECL_SYS (wmemchr, wchar_t *, (const wchar_t *s, wchar_t c, size_t n) - _GL_ATTRIBUTE_PURE); -# endif - /* On some systems, this function is defined as an overloaded function: - extern "C++" { - const wchar_t * std::wmemchr (const wchar_t *, wchar_t, size_t); - wchar_t * std::wmemchr (wchar_t *, wchar_t, size_t); - } */ -_GL_CXXALIAS_SYS_CAST2 (wmemchr, - wchar_t *, (const wchar_t *, wchar_t, size_t), - const wchar_t *, (const wchar_t *, wchar_t, size_t)); -# if ((__GLIBC__ == 2 && __GLIBC_MINOR__ >= 10) && !defined __UCLIBC__) \ - && (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 4)) -_GL_CXXALIASWARN1 (wmemchr, wchar_t *, (wchar_t *s, wchar_t c, size_t n)); -_GL_CXXALIASWARN1 (wmemchr, const wchar_t *, - (const wchar_t *s, wchar_t c, size_t n)); -# else -_GL_CXXALIASWARN (wmemchr); -# endif -#elif defined GNULIB_POSIXCHECK -# undef wmemchr -# if HAVE_RAW_DECL_WMEMCHR -_GL_WARN_ON_USE (wmemchr, "wmemchr is unportable - " - "use gnulib module wmemchr for portability"); -# endif -#endif - - -/* Compare N wide characters of S1 and S2. */ -#if @GNULIB_WMEMCMP@ -# if !@HAVE_WMEMCMP@ -_GL_FUNCDECL_SYS (wmemcmp, int, - (const wchar_t *s1, const wchar_t *s2, size_t n) - _GL_ATTRIBUTE_PURE); -# endif -_GL_CXXALIAS_SYS (wmemcmp, int, - (const wchar_t *s1, const wchar_t *s2, size_t n)); -_GL_CXXALIASWARN (wmemcmp); -#elif defined GNULIB_POSIXCHECK -# undef wmemcmp -# if HAVE_RAW_DECL_WMEMCMP -_GL_WARN_ON_USE (wmemcmp, "wmemcmp is unportable - " - "use gnulib module wmemcmp for portability"); -# endif -#endif - - -/* Copy N wide characters of SRC to DEST. */ -#if @GNULIB_WMEMCPY@ -# if !@HAVE_WMEMCPY@ -_GL_FUNCDECL_SYS (wmemcpy, wchar_t *, - (wchar_t *dest, const wchar_t *src, size_t n)); -# endif -_GL_CXXALIAS_SYS (wmemcpy, wchar_t *, - (wchar_t *dest, const wchar_t *src, size_t n)); -_GL_CXXALIASWARN (wmemcpy); -#elif defined GNULIB_POSIXCHECK -# undef wmemcpy -# if HAVE_RAW_DECL_WMEMCPY -_GL_WARN_ON_USE (wmemcpy, "wmemcpy is unportable - " - "use gnulib module wmemcpy for portability"); -# endif -#endif - - -/* Copy N wide characters of SRC to DEST, guaranteeing correct behavior for - overlapping memory areas. */ -#if @GNULIB_WMEMMOVE@ -# if !@HAVE_WMEMMOVE@ -_GL_FUNCDECL_SYS (wmemmove, wchar_t *, - (wchar_t *dest, const wchar_t *src, size_t n)); -# endif -_GL_CXXALIAS_SYS (wmemmove, wchar_t *, - (wchar_t *dest, const wchar_t *src, size_t n)); -_GL_CXXALIASWARN (wmemmove); -#elif defined GNULIB_POSIXCHECK -# undef wmemmove -# if HAVE_RAW_DECL_WMEMMOVE -_GL_WARN_ON_USE (wmemmove, "wmemmove is unportable - " - "use gnulib module wmemmove for portability"); -# endif -#endif - - -/* Set N wide characters of S to C. */ -#if @GNULIB_WMEMSET@ -# if !@HAVE_WMEMSET@ -_GL_FUNCDECL_SYS (wmemset, wchar_t *, (wchar_t *s, wchar_t c, size_t n)); -# endif -_GL_CXXALIAS_SYS (wmemset, wchar_t *, (wchar_t *s, wchar_t c, size_t n)); -_GL_CXXALIASWARN (wmemset); -#elif defined GNULIB_POSIXCHECK -# undef wmemset -# if HAVE_RAW_DECL_WMEMSET -_GL_WARN_ON_USE (wmemset, "wmemset is unportable - " - "use gnulib module wmemset for portability"); -# endif -#endif - - -/* Return the number of wide characters in S. */ -#if @GNULIB_WCSLEN@ -# if !@HAVE_WCSLEN@ -_GL_FUNCDECL_SYS (wcslen, size_t, (const wchar_t *s) _GL_ATTRIBUTE_PURE); -# endif -_GL_CXXALIAS_SYS (wcslen, size_t, (const wchar_t *s)); -_GL_CXXALIASWARN (wcslen); -#elif defined GNULIB_POSIXCHECK -# undef wcslen -# if HAVE_RAW_DECL_WCSLEN -_GL_WARN_ON_USE (wcslen, "wcslen is unportable - " - "use gnulib module wcslen for portability"); -# endif -#endif - - -/* Return the number of wide characters in S, but at most MAXLEN. */ -#if @GNULIB_WCSNLEN@ -# if !@HAVE_WCSNLEN@ -_GL_FUNCDECL_SYS (wcsnlen, size_t, (const wchar_t *s, size_t maxlen) - _GL_ATTRIBUTE_PURE); -# endif -_GL_CXXALIAS_SYS (wcsnlen, size_t, (const wchar_t *s, size_t maxlen)); -_GL_CXXALIASWARN (wcsnlen); -#elif defined GNULIB_POSIXCHECK -# undef wcsnlen -# if HAVE_RAW_DECL_WCSNLEN -_GL_WARN_ON_USE (wcsnlen, "wcsnlen is unportable - " - "use gnulib module wcsnlen for portability"); -# endif -#endif - - -/* Copy SRC to DEST. */ -#if @GNULIB_WCSCPY@ -# if !@HAVE_WCSCPY@ -_GL_FUNCDECL_SYS (wcscpy, wchar_t *, (wchar_t *dest, const wchar_t *src)); -# endif -_GL_CXXALIAS_SYS (wcscpy, wchar_t *, (wchar_t *dest, const wchar_t *src)); -_GL_CXXALIASWARN (wcscpy); -#elif defined GNULIB_POSIXCHECK -# undef wcscpy -# if HAVE_RAW_DECL_WCSCPY -_GL_WARN_ON_USE (wcscpy, "wcscpy is unportable - " - "use gnulib module wcscpy for portability"); -# endif -#endif - - -/* Copy SRC to DEST, returning the address of the terminating L'\0' in DEST. */ -#if @GNULIB_WCPCPY@ -# if !@HAVE_WCPCPY@ -_GL_FUNCDECL_SYS (wcpcpy, wchar_t *, (wchar_t *dest, const wchar_t *src)); -# endif -_GL_CXXALIAS_SYS (wcpcpy, wchar_t *, (wchar_t *dest, const wchar_t *src)); -_GL_CXXALIASWARN (wcpcpy); -#elif defined GNULIB_POSIXCHECK -# undef wcpcpy -# if HAVE_RAW_DECL_WCPCPY -_GL_WARN_ON_USE (wcpcpy, "wcpcpy is unportable - " - "use gnulib module wcpcpy for portability"); -# endif -#endif - - -/* Copy no more than N wide characters of SRC to DEST. */ -#if @GNULIB_WCSNCPY@ -# if !@HAVE_WCSNCPY@ -_GL_FUNCDECL_SYS (wcsncpy, wchar_t *, - (wchar_t *dest, const wchar_t *src, size_t n)); -# endif -_GL_CXXALIAS_SYS (wcsncpy, wchar_t *, - (wchar_t *dest, const wchar_t *src, size_t n)); -_GL_CXXALIASWARN (wcsncpy); -#elif defined GNULIB_POSIXCHECK -# undef wcsncpy -# if HAVE_RAW_DECL_WCSNCPY -_GL_WARN_ON_USE (wcsncpy, "wcsncpy is unportable - " - "use gnulib module wcsncpy for portability"); -# endif -#endif - - -/* Copy no more than N characters of SRC to DEST, returning the address of - the last character written into DEST. */ -#if @GNULIB_WCPNCPY@ -# if !@HAVE_WCPNCPY@ -_GL_FUNCDECL_SYS (wcpncpy, wchar_t *, - (wchar_t *dest, const wchar_t *src, size_t n)); -# endif -_GL_CXXALIAS_SYS (wcpncpy, wchar_t *, - (wchar_t *dest, const wchar_t *src, size_t n)); -_GL_CXXALIASWARN (wcpncpy); -#elif defined GNULIB_POSIXCHECK -# undef wcpncpy -# if HAVE_RAW_DECL_WCPNCPY -_GL_WARN_ON_USE (wcpncpy, "wcpncpy is unportable - " - "use gnulib module wcpncpy for portability"); -# endif -#endif - - -/* Append SRC onto DEST. */ -#if @GNULIB_WCSCAT@ -# if !@HAVE_WCSCAT@ -_GL_FUNCDECL_SYS (wcscat, wchar_t *, (wchar_t *dest, const wchar_t *src)); -# endif -_GL_CXXALIAS_SYS (wcscat, wchar_t *, (wchar_t *dest, const wchar_t *src)); -_GL_CXXALIASWARN (wcscat); -#elif defined GNULIB_POSIXCHECK -# undef wcscat -# if HAVE_RAW_DECL_WCSCAT -_GL_WARN_ON_USE (wcscat, "wcscat is unportable - " - "use gnulib module wcscat for portability"); -# endif -#endif - - -/* Append no more than N wide characters of SRC onto DEST. */ -#if @GNULIB_WCSNCAT@ -# if !@HAVE_WCSNCAT@ -_GL_FUNCDECL_SYS (wcsncat, wchar_t *, - (wchar_t *dest, const wchar_t *src, size_t n)); -# endif -_GL_CXXALIAS_SYS (wcsncat, wchar_t *, - (wchar_t *dest, const wchar_t *src, size_t n)); -_GL_CXXALIASWARN (wcsncat); -#elif defined GNULIB_POSIXCHECK -# undef wcsncat -# if HAVE_RAW_DECL_WCSNCAT -_GL_WARN_ON_USE (wcsncat, "wcsncat is unportable - " - "use gnulib module wcsncat for portability"); -# endif -#endif - - -/* Compare S1 and S2. */ -#if @GNULIB_WCSCMP@ -# if !@HAVE_WCSCMP@ -_GL_FUNCDECL_SYS (wcscmp, int, (const wchar_t *s1, const wchar_t *s2) - _GL_ATTRIBUTE_PURE); -# endif -_GL_CXXALIAS_SYS (wcscmp, int, (const wchar_t *s1, const wchar_t *s2)); -_GL_CXXALIASWARN (wcscmp); -#elif defined GNULIB_POSIXCHECK -# undef wcscmp -# if HAVE_RAW_DECL_WCSCMP -_GL_WARN_ON_USE (wcscmp, "wcscmp is unportable - " - "use gnulib module wcscmp for portability"); -# endif -#endif - - -/* Compare no more than N wide characters of S1 and S2. */ -#if @GNULIB_WCSNCMP@ -# if !@HAVE_WCSNCMP@ -_GL_FUNCDECL_SYS (wcsncmp, int, - (const wchar_t *s1, const wchar_t *s2, size_t n) - _GL_ATTRIBUTE_PURE); -# endif -_GL_CXXALIAS_SYS (wcsncmp, int, - (const wchar_t *s1, const wchar_t *s2, size_t n)); -_GL_CXXALIASWARN (wcsncmp); -#elif defined GNULIB_POSIXCHECK -# undef wcsncmp -# if HAVE_RAW_DECL_WCSNCMP -_GL_WARN_ON_USE (wcsncmp, "wcsncmp is unportable - " - "use gnulib module wcsncmp for portability"); -# endif -#endif - - -/* Compare S1 and S2, ignoring case. */ -#if @GNULIB_WCSCASECMP@ -# if !@HAVE_WCSCASECMP@ -_GL_FUNCDECL_SYS (wcscasecmp, int, (const wchar_t *s1, const wchar_t *s2) - _GL_ATTRIBUTE_PURE); -# endif -_GL_CXXALIAS_SYS (wcscasecmp, int, (const wchar_t *s1, const wchar_t *s2)); -_GL_CXXALIASWARN (wcscasecmp); -#elif defined GNULIB_POSIXCHECK -# undef wcscasecmp -# if HAVE_RAW_DECL_WCSCASECMP -_GL_WARN_ON_USE (wcscasecmp, "wcscasecmp is unportable - " - "use gnulib module wcscasecmp for portability"); -# endif -#endif - - -/* Compare no more than N chars of S1 and S2, ignoring case. */ -#if @GNULIB_WCSNCASECMP@ -# if !@HAVE_WCSNCASECMP@ -_GL_FUNCDECL_SYS (wcsncasecmp, int, - (const wchar_t *s1, const wchar_t *s2, size_t n) - _GL_ATTRIBUTE_PURE); -# endif -_GL_CXXALIAS_SYS (wcsncasecmp, int, - (const wchar_t *s1, const wchar_t *s2, size_t n)); -_GL_CXXALIASWARN (wcsncasecmp); -#elif defined GNULIB_POSIXCHECK -# undef wcsncasecmp -# if HAVE_RAW_DECL_WCSNCASECMP -_GL_WARN_ON_USE (wcsncasecmp, "wcsncasecmp is unportable - " - "use gnulib module wcsncasecmp for portability"); -# endif -#endif - - -/* Compare S1 and S2, both interpreted as appropriate to the LC_COLLATE - category of the current locale. */ -#if @GNULIB_WCSCOLL@ -# if !@HAVE_WCSCOLL@ -_GL_FUNCDECL_SYS (wcscoll, int, (const wchar_t *s1, const wchar_t *s2)); -# endif -_GL_CXXALIAS_SYS (wcscoll, int, (const wchar_t *s1, const wchar_t *s2)); -_GL_CXXALIASWARN (wcscoll); -#elif defined GNULIB_POSIXCHECK -# undef wcscoll -# if HAVE_RAW_DECL_WCSCOLL -_GL_WARN_ON_USE (wcscoll, "wcscoll is unportable - " - "use gnulib module wcscoll for portability"); -# endif -#endif - - -/* Transform S2 into array pointed to by S1 such that if wcscmp is applied - to two transformed strings the result is the as applying 'wcscoll' to the - original strings. */ -#if @GNULIB_WCSXFRM@ -# if !@HAVE_WCSXFRM@ -_GL_FUNCDECL_SYS (wcsxfrm, size_t, (wchar_t *s1, const wchar_t *s2, size_t n)); -# endif -_GL_CXXALIAS_SYS (wcsxfrm, size_t, (wchar_t *s1, const wchar_t *s2, size_t n)); -_GL_CXXALIASWARN (wcsxfrm); -#elif defined GNULIB_POSIXCHECK -# undef wcsxfrm -# if HAVE_RAW_DECL_WCSXFRM -_GL_WARN_ON_USE (wcsxfrm, "wcsxfrm is unportable - " - "use gnulib module wcsxfrm for portability"); -# endif -#endif - - -/* Duplicate S, returning an identical malloc'd string. */ -#if @GNULIB_WCSDUP@ -# if !@HAVE_WCSDUP@ -_GL_FUNCDECL_SYS (wcsdup, wchar_t *, (const wchar_t *s)); -# endif -_GL_CXXALIAS_SYS (wcsdup, wchar_t *, (const wchar_t *s)); -_GL_CXXALIASWARN (wcsdup); -#elif defined GNULIB_POSIXCHECK -# undef wcsdup -# if HAVE_RAW_DECL_WCSDUP -_GL_WARN_ON_USE (wcsdup, "wcsdup is unportable - " - "use gnulib module wcsdup for portability"); -# endif -#endif - - -/* Find the first occurrence of WC in WCS. */ -#if @GNULIB_WCSCHR@ -# if !@HAVE_WCSCHR@ -_GL_FUNCDECL_SYS (wcschr, wchar_t *, (const wchar_t *wcs, wchar_t wc) - _GL_ATTRIBUTE_PURE); -# endif - /* On some systems, this function is defined as an overloaded function: - extern "C++" { - const wchar_t * std::wcschr (const wchar_t *, wchar_t); - wchar_t * std::wcschr (wchar_t *, wchar_t); - } */ -_GL_CXXALIAS_SYS_CAST2 (wcschr, - wchar_t *, (const wchar_t *, wchar_t), - const wchar_t *, (const wchar_t *, wchar_t)); -# if ((__GLIBC__ == 2 && __GLIBC_MINOR__ >= 10) && !defined __UCLIBC__) \ - && (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 4)) -_GL_CXXALIASWARN1 (wcschr, wchar_t *, (wchar_t *wcs, wchar_t wc)); -_GL_CXXALIASWARN1 (wcschr, const wchar_t *, (const wchar_t *wcs, wchar_t wc)); -# else -_GL_CXXALIASWARN (wcschr); -# endif -#elif defined GNULIB_POSIXCHECK -# undef wcschr -# if HAVE_RAW_DECL_WCSCHR -_GL_WARN_ON_USE (wcschr, "wcschr is unportable - " - "use gnulib module wcschr for portability"); -# endif -#endif - - -/* Find the last occurrence of WC in WCS. */ -#if @GNULIB_WCSRCHR@ -# if !@HAVE_WCSRCHR@ -_GL_FUNCDECL_SYS (wcsrchr, wchar_t *, (const wchar_t *wcs, wchar_t wc) - _GL_ATTRIBUTE_PURE); -# endif - /* On some systems, this function is defined as an overloaded function: - extern "C++" { - const wchar_t * std::wcsrchr (const wchar_t *, wchar_t); - wchar_t * std::wcsrchr (wchar_t *, wchar_t); - } */ -_GL_CXXALIAS_SYS_CAST2 (wcsrchr, - wchar_t *, (const wchar_t *, wchar_t), - const wchar_t *, (const wchar_t *, wchar_t)); -# if ((__GLIBC__ == 2 && __GLIBC_MINOR__ >= 10) && !defined __UCLIBC__) \ - && (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 4)) -_GL_CXXALIASWARN1 (wcsrchr, wchar_t *, (wchar_t *wcs, wchar_t wc)); -_GL_CXXALIASWARN1 (wcsrchr, const wchar_t *, (const wchar_t *wcs, wchar_t wc)); -# else -_GL_CXXALIASWARN (wcsrchr); -# endif -#elif defined GNULIB_POSIXCHECK -# undef wcsrchr -# if HAVE_RAW_DECL_WCSRCHR -_GL_WARN_ON_USE (wcsrchr, "wcsrchr is unportable - " - "use gnulib module wcsrchr for portability"); -# endif -#endif - - -/* Return the length of the initial segmet of WCS which consists entirely - of wide characters not in REJECT. */ -#if @GNULIB_WCSCSPN@ -# if !@HAVE_WCSCSPN@ -_GL_FUNCDECL_SYS (wcscspn, size_t, (const wchar_t *wcs, const wchar_t *reject) - _GL_ATTRIBUTE_PURE); -# endif -_GL_CXXALIAS_SYS (wcscspn, size_t, (const wchar_t *wcs, const wchar_t *reject)); -_GL_CXXALIASWARN (wcscspn); -#elif defined GNULIB_POSIXCHECK -# undef wcscspn -# if HAVE_RAW_DECL_WCSCSPN -_GL_WARN_ON_USE (wcscspn, "wcscspn is unportable - " - "use gnulib module wcscspn for portability"); -# endif -#endif - - -/* Return the length of the initial segmet of WCS which consists entirely - of wide characters in ACCEPT. */ -#if @GNULIB_WCSSPN@ -# if !@HAVE_WCSSPN@ -_GL_FUNCDECL_SYS (wcsspn, size_t, (const wchar_t *wcs, const wchar_t *accept) - _GL_ATTRIBUTE_PURE); -# endif -_GL_CXXALIAS_SYS (wcsspn, size_t, (const wchar_t *wcs, const wchar_t *accept)); -_GL_CXXALIASWARN (wcsspn); -#elif defined GNULIB_POSIXCHECK -# undef wcsspn -# if HAVE_RAW_DECL_WCSSPN -_GL_WARN_ON_USE (wcsspn, "wcsspn is unportable - " - "use gnulib module wcsspn for portability"); -# endif -#endif - - -/* Find the first occurrence in WCS of any character in ACCEPT. */ -#if @GNULIB_WCSPBRK@ -# if !@HAVE_WCSPBRK@ -_GL_FUNCDECL_SYS (wcspbrk, wchar_t *, - (const wchar_t *wcs, const wchar_t *accept) - _GL_ATTRIBUTE_PURE); -# endif - /* On some systems, this function is defined as an overloaded function: - extern "C++" { - const wchar_t * std::wcspbrk (const wchar_t *, const wchar_t *); - wchar_t * std::wcspbrk (wchar_t *, const wchar_t *); - } */ -_GL_CXXALIAS_SYS_CAST2 (wcspbrk, - wchar_t *, (const wchar_t *, const wchar_t *), - const wchar_t *, (const wchar_t *, const wchar_t *)); -# if ((__GLIBC__ == 2 && __GLIBC_MINOR__ >= 10) && !defined __UCLIBC__) \ - && (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 4)) -_GL_CXXALIASWARN1 (wcspbrk, wchar_t *, - (wchar_t *wcs, const wchar_t *accept)); -_GL_CXXALIASWARN1 (wcspbrk, const wchar_t *, - (const wchar_t *wcs, const wchar_t *accept)); -# else -_GL_CXXALIASWARN (wcspbrk); -# endif -#elif defined GNULIB_POSIXCHECK -# undef wcspbrk -# if HAVE_RAW_DECL_WCSPBRK -_GL_WARN_ON_USE (wcspbrk, "wcspbrk is unportable - " - "use gnulib module wcspbrk for portability"); -# endif -#endif - - -/* Find the first occurrence of NEEDLE in HAYSTACK. */ -#if @GNULIB_WCSSTR@ -# if !@HAVE_WCSSTR@ -_GL_FUNCDECL_SYS (wcsstr, wchar_t *, - (const wchar_t *haystack, const wchar_t *needle) - _GL_ATTRIBUTE_PURE); -# endif - /* On some systems, this function is defined as an overloaded function: - extern "C++" { - const wchar_t * std::wcsstr (const wchar_t *, const wchar_t *); - wchar_t * std::wcsstr (wchar_t *, const wchar_t *); - } */ -_GL_CXXALIAS_SYS_CAST2 (wcsstr, - wchar_t *, (const wchar_t *, const wchar_t *), - const wchar_t *, (const wchar_t *, const wchar_t *)); -# if ((__GLIBC__ == 2 && __GLIBC_MINOR__ >= 10) && !defined __UCLIBC__) \ - && (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 4)) -_GL_CXXALIASWARN1 (wcsstr, wchar_t *, - (wchar_t *haystack, const wchar_t *needle)); -_GL_CXXALIASWARN1 (wcsstr, const wchar_t *, - (const wchar_t *haystack, const wchar_t *needle)); -# else -_GL_CXXALIASWARN (wcsstr); -# endif -#elif defined GNULIB_POSIXCHECK -# undef wcsstr -# if HAVE_RAW_DECL_WCSSTR -_GL_WARN_ON_USE (wcsstr, "wcsstr is unportable - " - "use gnulib module wcsstr for portability"); -# endif -#endif - - -/* Divide WCS into tokens separated by characters in DELIM. */ -#if @GNULIB_WCSTOK@ -# if !@HAVE_WCSTOK@ -_GL_FUNCDECL_SYS (wcstok, wchar_t *, - (wchar_t *wcs, const wchar_t *delim, wchar_t **ptr)); -# endif -_GL_CXXALIAS_SYS (wcstok, wchar_t *, - (wchar_t *wcs, const wchar_t *delim, wchar_t **ptr)); -_GL_CXXALIASWARN (wcstok); -#elif defined GNULIB_POSIXCHECK -# undef wcstok -# if HAVE_RAW_DECL_WCSTOK -_GL_WARN_ON_USE (wcstok, "wcstok is unportable - " - "use gnulib module wcstok for portability"); -# endif -#endif - - -/* Determine number of column positions required for first N wide - characters (or fewer if S ends before this) in S. */ -#if @GNULIB_WCSWIDTH@ -# if @REPLACE_WCSWIDTH@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# undef wcswidth -# define wcswidth rpl_wcswidth -# endif -_GL_FUNCDECL_RPL (wcswidth, int, (const wchar_t *s, size_t n) - _GL_ATTRIBUTE_PURE); -_GL_CXXALIAS_RPL (wcswidth, int, (const wchar_t *s, size_t n)); -# else -# if !@HAVE_WCSWIDTH@ -_GL_FUNCDECL_SYS (wcswidth, int, (const wchar_t *s, size_t n) - _GL_ATTRIBUTE_PURE); -# endif -_GL_CXXALIAS_SYS (wcswidth, int, (const wchar_t *s, size_t n)); -# endif -_GL_CXXALIASWARN (wcswidth); -#elif defined GNULIB_POSIXCHECK -# undef wcswidth -# if HAVE_RAW_DECL_WCSWIDTH -_GL_WARN_ON_USE (wcswidth, "wcswidth is unportable - " - "use gnulib module wcswidth for portability"); -# endif -#endif - - -/* Convert *TP to a date and time wide string. See - . */ -#if @GNULIB_WCSFTIME@ -# if @REPLACE_WCSFTIME@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# undef wcsftime -# define wcsftime rpl_wcsftime -# endif -_GL_FUNCDECL_RPL (wcsftime, size_t, (wchar_t *__buf, size_t __bufsize, - const wchar_t *__fmt, const struct tm *__tp) - _GL_ARG_NONNULL ((1, 3, 4))); -_GL_CXXALIAS_RPL (wcsftime, size_t, (wchar_t *__buf, size_t __bufsize, - const wchar_t *__fmt, const struct tm *__tp)); -# else -# if !@HAVE_WCSFTIME@ -_GL_FUNCDECL_SYS (wcsftime, size_t, (wchar_t *__buf, size_t __bufsize, - const wchar_t *__fmt, const struct tm *__tp) - _GL_ARG_NONNULL ((1, 3, 4))); -# endif -_GL_CXXALIAS_SYS (wcsftime, size_t, (wchar_t *__buf, size_t __bufsize, - const wchar_t *__fmt, const struct tm *__tp)); -# endif -_GL_CXXALIASWARN (wcsftime); -#elif defined GNULIB_POSIXCHECK -# undef wcsftime -# if HAVE_RAW_DECL_WCSFTIME -_GL_WARN_ON_USE (wcsftime, "wcsftime is unportable - " - "use gnulib module wcsftime for portability"); -# endif -#endif - - -#endif /* _@GUARD_PREFIX@_WCHAR_H */ -#endif /* _@GUARD_PREFIX@_WCHAR_H */ -#endif diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/wcrtomb.c b/thirdparty/grub-2.04/grub-core/lib/gnulib/wcrtomb.c deleted file mode 100644 index 9fc40cfc9..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/wcrtomb.c +++ /dev/null @@ -1,53 +0,0 @@ -/* Convert wide character to multibyte character. - Copyright (C) 2008-2019 Free Software Foundation, Inc. - Written by Bruno Haible , 2008. - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . */ - -#include - -/* Specification. */ -#include - -#include -#include - - -size_t -wcrtomb (char *s, wchar_t wc, mbstate_t *ps) -{ - /* This implementation of wcrtomb on top of wctomb() supports only - stateless encodings. ps must be in the initial state. */ - if (ps != NULL && !mbsinit (ps)) - { - errno = EINVAL; - return (size_t)(-1); - } - - if (s == NULL) - /* We know the NUL wide character corresponds to the NUL character. */ - return 1; - else - { - int ret = wctomb (s, wc); - - if (ret >= 0) - return ret; - else - { - errno = EILSEQ; - return (size_t)(-1); - } - } -} diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/wctype-h.c b/thirdparty/grub-2.04/grub-core/lib/gnulib/wctype-h.c deleted file mode 100644 index bb5f847e3..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/wctype-h.c +++ /dev/null @@ -1,4 +0,0 @@ -/* Normally this would be wctype.c, but that name's already taken. */ -#include -#define _GL_WCTYPE_INLINE _GL_EXTERN_INLINE -#include "wctype.h" diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/wctype.in.h b/thirdparty/grub-2.04/grub-core/lib/gnulib/wctype.in.h deleted file mode 100644 index 0a7471fd4..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/wctype.in.h +++ /dev/null @@ -1,533 +0,0 @@ -/* A substitute for ISO C99 , for platforms that lack it. - - Copyright (C) 2006-2019 Free Software Foundation, Inc. - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3, or (at your option) - any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, see . */ - -/* Written by Bruno Haible and Paul Eggert. */ - -/* - * ISO C 99 for platforms that lack it. - * - * - * iswctype, towctrans, towlower, towupper, wctrans, wctype, - * wctrans_t, and wctype_t are not yet implemented. - */ - -#if __GNUC__ >= 3 -@PRAGMA_SYSTEM_HEADER@ -#endif -@PRAGMA_COLUMNS@ - -#if (defined __MINGW32__ && defined __CTYPE_H_SOURCED__) - -/* Special invocation convention: - - With MinGW 3.22, when includes , only some part of - is being processed, which doesn't include the idempotency - guard. */ - -#@INCLUDE_NEXT@ @NEXT_WCTYPE_H@ - -#else -/* Normal invocation convention. */ - -#ifndef _@GUARD_PREFIX@_WCTYPE_H - -#if @HAVE_WINT_T@ -/* Solaris 2.5 has a bug: must be included before . - Tru64 with Desktop Toolkit C has a bug: must be included before - . - BSD/OS 4.0.1 has a bug: , and must be - included before . */ -# include -# include -# include -# include -#endif - -/* Native Windows (mingw, MSVC) have declarations of towupper, towlower, and - isw* functions in , as well as in . Include - , in advance to avoid rpl_ prefix being added to the - declarations. */ -#if defined _WIN32 && ! defined __CYGWIN__ -# include -# include -#endif - -/* Include the original if it exists. - BeOS 5 has the functions but no . */ -/* The include_next requires a split double-inclusion guard. */ -#if @HAVE_WCTYPE_H@ -# @INCLUDE_NEXT@ @NEXT_WCTYPE_H@ -#endif - -#ifndef _@GUARD_PREFIX@_WCTYPE_H -#define _@GUARD_PREFIX@_WCTYPE_H - -#ifndef _GL_INLINE_HEADER_BEGIN - #error "Please include config.h first." -#endif -_GL_INLINE_HEADER_BEGIN -#ifndef _GL_WCTYPE_INLINE -# define _GL_WCTYPE_INLINE _GL_INLINE -#endif - -/* The definitions of _GL_FUNCDECL_RPL etc. are copied here. */ - -/* The definition of _GL_WARN_ON_USE is copied here. */ - -/* Solaris 2.6 includes which includes which - #defines a number of identifiers in the application namespace. Revert - these #defines. */ -#ifdef __sun -# undef multibyte -# undef eucw1 -# undef eucw2 -# undef eucw3 -# undef scrw1 -# undef scrw2 -# undef scrw3 -#endif - -/* Define wint_t and WEOF. (Also done in wchar.in.h.) */ -#if !@HAVE_WINT_T@ && !defined wint_t -# define wint_t int -# ifndef WEOF -# define WEOF -1 -# endif -#else -/* mingw and MSVC define wint_t as 'unsigned short' in or - . This is too small: ISO C 99 section 7.24.1.(2) says that - wint_t must be "unchanged by default argument promotions". Override it. */ -# if @GNULIB_OVERRIDES_WINT_T@ -# if !GNULIB_defined_wint_t -# if @HAVE_CRTDEFS_H@ -# include -# else -# include -# endif -typedef unsigned int rpl_wint_t; -# undef wint_t -# define wint_t rpl_wint_t -# define GNULIB_defined_wint_t 1 -# endif -# endif -# ifndef WEOF -# define WEOF ((wint_t) -1) -# endif -#endif - - -#if !GNULIB_defined_wctype_functions - -/* FreeBSD 4.4 to 4.11 has but lacks the functions. - Linux libc5 has and the functions but they are broken. - Assume all 11 functions (all isw* except iswblank) are implemented the - same way, or not at all. */ -# if ! @HAVE_ISWCNTRL@ || @REPLACE_ISWCNTRL@ - -/* IRIX 5.3 has macros but no functions, its isw* macros refer to an - undefined variable _ctmp_ and to macros like _P, and they - refer to system functions like _iswctype that are not in the - standard C library. Rather than try to get ancient buggy - implementations like this to work, just disable them. */ -# undef iswalnum -# undef iswalpha -# undef iswblank -# undef iswcntrl -# undef iswdigit -# undef iswgraph -# undef iswlower -# undef iswprint -# undef iswpunct -# undef iswspace -# undef iswupper -# undef iswxdigit -# undef towlower -# undef towupper - -/* Linux libc5 has and the functions but they are broken. */ -# if @REPLACE_ISWCNTRL@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# define iswalnum rpl_iswalnum -# define iswalpha rpl_iswalpha -# define iswblank rpl_iswblank -# define iswcntrl rpl_iswcntrl -# define iswdigit rpl_iswdigit -# define iswgraph rpl_iswgraph -# define iswlower rpl_iswlower -# define iswprint rpl_iswprint -# define iswpunct rpl_iswpunct -# define iswspace rpl_iswspace -# define iswupper rpl_iswupper -# define iswxdigit rpl_iswxdigit -# endif -# endif -# if @REPLACE_TOWLOWER@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# define towlower rpl_towlower -# define towupper rpl_towupper -# endif -# endif - -_GL_WCTYPE_INLINE int -# if @REPLACE_ISWCNTRL@ -rpl_iswalnum -# else -iswalnum -# endif - (wint_t wc) -{ - return ((wc >= '0' && wc <= '9') - || ((wc & ~0x20) >= 'A' && (wc & ~0x20) <= 'Z')); -} - -_GL_WCTYPE_INLINE int -# if @REPLACE_ISWCNTRL@ -rpl_iswalpha -# else -iswalpha -# endif - (wint_t wc) -{ - return (wc & ~0x20) >= 'A' && (wc & ~0x20) <= 'Z'; -} - -_GL_WCTYPE_INLINE int -# if @REPLACE_ISWCNTRL@ -rpl_iswblank -# else -iswblank -# endif - (wint_t wc) -{ - return wc == ' ' || wc == '\t'; -} - -_GL_WCTYPE_INLINE int -# if @REPLACE_ISWCNTRL@ -rpl_iswcntrl -# else -iswcntrl -# endif - (wint_t wc) -{ - return (wc & ~0x1f) == 0 || wc == 0x7f; -} - -_GL_WCTYPE_INLINE int -# if @REPLACE_ISWCNTRL@ -rpl_iswdigit -# else -iswdigit -# endif - (wint_t wc) -{ - return wc >= '0' && wc <= '9'; -} - -_GL_WCTYPE_INLINE int -# if @REPLACE_ISWCNTRL@ -rpl_iswgraph -# else -iswgraph -# endif - (wint_t wc) -{ - return wc >= '!' && wc <= '~'; -} - -_GL_WCTYPE_INLINE int -# if @REPLACE_ISWCNTRL@ -rpl_iswlower -# else -iswlower -# endif - (wint_t wc) -{ - return wc >= 'a' && wc <= 'z'; -} - -_GL_WCTYPE_INLINE int -# if @REPLACE_ISWCNTRL@ -rpl_iswprint -# else -iswprint -# endif - (wint_t wc) -{ - return wc >= ' ' && wc <= '~'; -} - -_GL_WCTYPE_INLINE int -# if @REPLACE_ISWCNTRL@ -rpl_iswpunct -# else -iswpunct -# endif - (wint_t wc) -{ - return (wc >= '!' && wc <= '~' - && !((wc >= '0' && wc <= '9') - || ((wc & ~0x20) >= 'A' && (wc & ~0x20) <= 'Z'))); -} - -_GL_WCTYPE_INLINE int -# if @REPLACE_ISWCNTRL@ -rpl_iswspace -# else -iswspace -# endif - (wint_t wc) -{ - return (wc == ' ' || wc == '\t' - || wc == '\n' || wc == '\v' || wc == '\f' || wc == '\r'); -} - -_GL_WCTYPE_INLINE int -# if @REPLACE_ISWCNTRL@ -rpl_iswupper -# else -iswupper -# endif - (wint_t wc) -{ - return wc >= 'A' && wc <= 'Z'; -} - -_GL_WCTYPE_INLINE int -# if @REPLACE_ISWCNTRL@ -rpl_iswxdigit -# else -iswxdigit -# endif - (wint_t wc) -{ - return ((wc >= '0' && wc <= '9') - || ((wc & ~0x20) >= 'A' && (wc & ~0x20) <= 'F')); -} - -_GL_WCTYPE_INLINE wint_t -# if @REPLACE_TOWLOWER@ -rpl_towlower -# else -towlower -# endif - (wint_t wc) -{ - return (wc >= 'A' && wc <= 'Z' ? wc - 'A' + 'a' : wc); -} - -_GL_WCTYPE_INLINE wint_t -# if @REPLACE_TOWLOWER@ -rpl_towupper -# else -towupper -# endif - (wint_t wc) -{ - return (wc >= 'a' && wc <= 'z' ? wc - 'a' + 'A' : wc); -} - -# elif @GNULIB_ISWBLANK@ && (! @HAVE_ISWBLANK@ || @REPLACE_ISWBLANK@) -/* Only the iswblank function is missing. */ - -# if @REPLACE_ISWBLANK@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# define iswblank rpl_iswblank -# endif -_GL_FUNCDECL_RPL (iswblank, int, (wint_t wc)); -# else -_GL_FUNCDECL_SYS (iswblank, int, (wint_t wc)); -# endif - -# endif - -# if defined __MINGW32__ - -/* On native Windows, wchar_t is uint16_t, and wint_t is uint32_t. - The functions towlower and towupper are implemented in the MSVCRT library - to take a wchar_t argument and return a wchar_t result. mingw declares - these functions to take a wint_t argument and return a wint_t result. - This means that: - 1. When the user passes an argument outside the range 0x0000..0xFFFF, the - function will look only at the lower 16 bits. This is allowed according - to POSIX. - 2. The return value is returned in the lower 16 bits of the result register. - The upper 16 bits are random: whatever happened to be in that part of the - result register. We need to fix this by adding a zero-extend from - wchar_t to wint_t after the call. */ - -_GL_WCTYPE_INLINE wint_t -rpl_towlower (wint_t wc) -{ - return (wint_t) (wchar_t) towlower (wc); -} -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# define towlower rpl_towlower -# endif - -_GL_WCTYPE_INLINE wint_t -rpl_towupper (wint_t wc) -{ - return (wint_t) (wchar_t) towupper (wc); -} -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# define towupper rpl_towupper -# endif - -# endif /* __MINGW32__ */ - -# define GNULIB_defined_wctype_functions 1 -#endif - -#if @REPLACE_ISWCNTRL@ -_GL_CXXALIAS_RPL (iswalnum, int, (wint_t wc)); -_GL_CXXALIAS_RPL (iswalpha, int, (wint_t wc)); -_GL_CXXALIAS_RPL (iswcntrl, int, (wint_t wc)); -_GL_CXXALIAS_RPL (iswdigit, int, (wint_t wc)); -_GL_CXXALIAS_RPL (iswgraph, int, (wint_t wc)); -_GL_CXXALIAS_RPL (iswlower, int, (wint_t wc)); -_GL_CXXALIAS_RPL (iswprint, int, (wint_t wc)); -_GL_CXXALIAS_RPL (iswpunct, int, (wint_t wc)); -_GL_CXXALIAS_RPL (iswspace, int, (wint_t wc)); -_GL_CXXALIAS_RPL (iswupper, int, (wint_t wc)); -_GL_CXXALIAS_RPL (iswxdigit, int, (wint_t wc)); -#else -_GL_CXXALIAS_SYS (iswalnum, int, (wint_t wc)); -_GL_CXXALIAS_SYS (iswalpha, int, (wint_t wc)); -_GL_CXXALIAS_SYS (iswcntrl, int, (wint_t wc)); -_GL_CXXALIAS_SYS (iswdigit, int, (wint_t wc)); -_GL_CXXALIAS_SYS (iswgraph, int, (wint_t wc)); -_GL_CXXALIAS_SYS (iswlower, int, (wint_t wc)); -_GL_CXXALIAS_SYS (iswprint, int, (wint_t wc)); -_GL_CXXALIAS_SYS (iswpunct, int, (wint_t wc)); -_GL_CXXALIAS_SYS (iswspace, int, (wint_t wc)); -_GL_CXXALIAS_SYS (iswupper, int, (wint_t wc)); -_GL_CXXALIAS_SYS (iswxdigit, int, (wint_t wc)); -#endif -_GL_CXXALIASWARN (iswalnum); -_GL_CXXALIASWARN (iswalpha); -_GL_CXXALIASWARN (iswcntrl); -_GL_CXXALIASWARN (iswdigit); -_GL_CXXALIASWARN (iswgraph); -_GL_CXXALIASWARN (iswlower); -_GL_CXXALIASWARN (iswprint); -_GL_CXXALIASWARN (iswpunct); -_GL_CXXALIASWARN (iswspace); -_GL_CXXALIASWARN (iswupper); -_GL_CXXALIASWARN (iswxdigit); - -#if @GNULIB_ISWBLANK@ -# if @REPLACE_ISWCNTRL@ || @REPLACE_ISWBLANK@ -_GL_CXXALIAS_RPL (iswblank, int, (wint_t wc)); -# else -_GL_CXXALIAS_SYS (iswblank, int, (wint_t wc)); -# endif -_GL_CXXALIASWARN (iswblank); -#endif - -#if !@HAVE_WCTYPE_T@ -# if !GNULIB_defined_wctype_t -typedef void * wctype_t; -# define GNULIB_defined_wctype_t 1 -# endif -#endif - -/* Get a descriptor for a wide character property. */ -#if @GNULIB_WCTYPE@ -# if !@HAVE_WCTYPE_T@ -_GL_FUNCDECL_SYS (wctype, wctype_t, (const char *name)); -# endif -_GL_CXXALIAS_SYS (wctype, wctype_t, (const char *name)); -_GL_CXXALIASWARN (wctype); -#elif defined GNULIB_POSIXCHECK -# undef wctype -# if HAVE_RAW_DECL_WCTYPE -_GL_WARN_ON_USE (wctype, "wctype is unportable - " - "use gnulib module wctype for portability"); -# endif -#endif - -/* Test whether a wide character has a given property. - The argument WC must be either a wchar_t value or WEOF. - The argument DESC must have been returned by the wctype() function. */ -#if @GNULIB_ISWCTYPE@ -# if !@HAVE_WCTYPE_T@ -_GL_FUNCDECL_SYS (iswctype, int, (wint_t wc, wctype_t desc)); -# endif -_GL_CXXALIAS_SYS (iswctype, int, (wint_t wc, wctype_t desc)); -_GL_CXXALIASWARN (iswctype); -#elif defined GNULIB_POSIXCHECK -# undef iswctype -# if HAVE_RAW_DECL_ISWCTYPE -_GL_WARN_ON_USE (iswctype, "iswctype is unportable - " - "use gnulib module iswctype for portability"); -# endif -#endif - -#if @REPLACE_TOWLOWER@ || defined __MINGW32__ -_GL_CXXALIAS_RPL (towlower, wint_t, (wint_t wc)); -_GL_CXXALIAS_RPL (towupper, wint_t, (wint_t wc)); -#else -_GL_CXXALIAS_SYS (towlower, wint_t, (wint_t wc)); -_GL_CXXALIAS_SYS (towupper, wint_t, (wint_t wc)); -#endif -_GL_CXXALIASWARN (towlower); -_GL_CXXALIASWARN (towupper); - -#if !@HAVE_WCTRANS_T@ -# if !GNULIB_defined_wctrans_t -typedef void * wctrans_t; -# define GNULIB_defined_wctrans_t 1 -# endif -#endif - -/* Get a descriptor for a wide character case conversion. */ -#if @GNULIB_WCTRANS@ -# if !@HAVE_WCTRANS_T@ -_GL_FUNCDECL_SYS (wctrans, wctrans_t, (const char *name)); -# endif -_GL_CXXALIAS_SYS (wctrans, wctrans_t, (const char *name)); -_GL_CXXALIASWARN (wctrans); -#elif defined GNULIB_POSIXCHECK -# undef wctrans -# if HAVE_RAW_DECL_WCTRANS -_GL_WARN_ON_USE (wctrans, "wctrans is unportable - " - "use gnulib module wctrans for portability"); -# endif -#endif - -/* Perform a given case conversion on a wide character. - The argument WC must be either a wchar_t value or WEOF. - The argument DESC must have been returned by the wctrans() function. */ -#if @GNULIB_TOWCTRANS@ -# if !@HAVE_WCTRANS_T@ -_GL_FUNCDECL_SYS (towctrans, wint_t, (wint_t wc, wctrans_t desc)); -# endif -_GL_CXXALIAS_SYS (towctrans, wint_t, (wint_t wc, wctrans_t desc)); -_GL_CXXALIASWARN (towctrans); -#elif defined GNULIB_POSIXCHECK -# undef towctrans -# if HAVE_RAW_DECL_TOWCTRANS -_GL_WARN_ON_USE (towctrans, "towctrans is unportable - " - "use gnulib module towctrans for portability"); -# endif -#endif - -_GL_INLINE_HEADER_END - -#endif /* _@GUARD_PREFIX@_WCTYPE_H */ -#endif /* _@GUARD_PREFIX@_WCTYPE_H */ -#endif diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/wcwidth.c b/thirdparty/grub-2.04/grub-core/lib/gnulib/wcwidth.c deleted file mode 100644 index 1f081ccaa..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/wcwidth.c +++ /dev/null @@ -1,73 +0,0 @@ -/* Determine the number of screen columns needed for a character. - Copyright (C) 2006-2007, 2010-2019 Free Software Foundation, Inc. - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . */ - -#include - -/* Specification. */ -#include - -/* Get iswprint. */ -#include - -#include "localcharset.h" -#include "streq.h" -#include "uniwidth.h" - -/* Returns 1 if the current locale is an UTF-8 locale, 0 otherwise. */ -static inline int -is_locale_utf8 (void) -{ - const char *encoding = locale_charset (); - return STREQ_OPT (encoding, "UTF-8", 'U', 'T', 'F', '-', '8', 0, 0, 0, 0); -} - -#if GNULIB_WCHAR_SINGLE -/* When we know that the locale does not change, provide a speedup by - caching the value of is_locale_utf8. */ -static int cached_is_locale_utf8 = -1; -static inline int -is_locale_utf8_cached (void) -{ - if (cached_is_locale_utf8 < 0) - cached_is_locale_utf8 = is_locale_utf8 (); - return cached_is_locale_utf8; -} -#else -/* By default, don't make assumptions, hence no caching. */ -# define is_locale_utf8_cached is_locale_utf8 -#endif - -int -wcwidth (wchar_t wc) -#undef wcwidth -{ - /* In UTF-8 locales, use a Unicode aware width function. */ - if (is_locale_utf8_cached ()) - { - /* We assume that in a UTF-8 locale, a wide character is the same as a - Unicode character. */ - return uc_width (wc, "UTF-8"); - } - else - { - /* Otherwise, fall back to the system's wcwidth function. */ -#if HAVE_WCWIDTH - return wcwidth (wc); -#else - return wc == 0 ? 0 : iswprint (wc) ? 1 : -1; -#endif - } -} diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/xalloc-oversized.h b/thirdparty/grub-2.04/grub-core/lib/gnulib/xalloc-oversized.h deleted file mode 100644 index e3068c83c..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/xalloc-oversized.h +++ /dev/null @@ -1,60 +0,0 @@ -/* xalloc-oversized.h -- memory allocation size checking - - Copyright (C) 1990-2000, 2003-2004, 2006-2019 Free Software Foundation, Inc. - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . */ - -#ifndef XALLOC_OVERSIZED_H_ -#define XALLOC_OVERSIZED_H_ - -#include -#include - -/* True if N * S would overflow in a size_t calculation, - or would generate a value larger than PTRDIFF_MAX. - This expands to a constant expression if N and S are both constants. - By gnulib convention, SIZE_MAX represents overflow in size - calculations, so the conservative size_t-based dividend to use here - is SIZE_MAX - 1. */ -#define __xalloc_oversized(n, s) \ - ((size_t) (PTRDIFF_MAX < SIZE_MAX ? PTRDIFF_MAX : SIZE_MAX - 1) / (s) < (n)) - -#if PTRDIFF_MAX < SIZE_MAX -typedef ptrdiff_t __xalloc_count_type; -#else -typedef size_t __xalloc_count_type; -#endif - -/* Return 1 if an array of N objects, each of size S, cannot exist - reliably due to size or ptrdiff_t arithmetic overflow. S must be - positive and N must be nonnegative. This is a macro, not a - function, so that it works correctly even when SIZE_MAX < N. */ - -#if 7 <= __GNUC__ -# define xalloc_oversized(n, s) \ - __builtin_mul_overflow_p (n, s, (__xalloc_count_type) 1) -#elif 5 <= __GNUC__ && !defined __ICC && !__STRICT_ANSI__ -# define xalloc_oversized(n, s) \ - (__builtin_constant_p (n) && __builtin_constant_p (s) \ - ? __xalloc_oversized (n, s) \ - : ({ __xalloc_count_type __xalloc_count; \ - __builtin_mul_overflow (n, s, &__xalloc_count); })) - -/* Other compilers use integer division; this may be slower but is - more portable. */ -#else -# define xalloc_oversized(n, s) __xalloc_oversized (n, s) -#endif - -#endif /* !XALLOC_OVERSIZED_H_ */ diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/xsize.c b/thirdparty/grub-2.04/grub-core/lib/gnulib/xsize.c deleted file mode 100644 index 4b4914c2c..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/xsize.c +++ /dev/null @@ -1,3 +0,0 @@ -#include -#define XSIZE_INLINE _GL_EXTERN_INLINE -#include "xsize.h" diff --git a/thirdparty/grub-2.04/grub-core/lib/gnulib/xsize.h b/thirdparty/grub-2.04/grub-core/lib/gnulib/xsize.h deleted file mode 100644 index ecfd478dc..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/gnulib/xsize.h +++ /dev/null @@ -1,117 +0,0 @@ -/* xsize.h -- Checked size_t computations. - - Copyright (C) 2003, 2008-2019 Free Software Foundation, Inc. - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3, or (at your option) - any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, see . */ - -#ifndef _XSIZE_H -#define _XSIZE_H - -/* Get size_t. */ -#include - -/* Get SIZE_MAX. */ -#include -#if HAVE_STDINT_H -# include -#endif - -#ifndef _GL_INLINE_HEADER_BEGIN - #error "Please include config.h first." -#endif -_GL_INLINE_HEADER_BEGIN -#ifndef XSIZE_INLINE -# define XSIZE_INLINE _GL_INLINE -#endif - -/* The size of memory objects is often computed through expressions of - type size_t. Example: - void* p = malloc (header_size + n * element_size). - These computations can lead to overflow. When this happens, malloc() - returns a piece of memory that is way too small, and the program then - crashes while attempting to fill the memory. - To avoid this, the functions and macros in this file check for overflow. - The convention is that SIZE_MAX represents overflow. - malloc (SIZE_MAX) is not guaranteed to fail -- think of a malloc - implementation that uses mmap --, it's recommended to use size_overflow_p() - or size_in_bounds_p() before invoking malloc(). - The example thus becomes: - size_t size = xsum (header_size, xtimes (n, element_size)); - void *p = (size_in_bounds_p (size) ? malloc (size) : NULL); -*/ - -/* Convert an arbitrary value >= 0 to type size_t. */ -#define xcast_size_t(N) \ - ((N) <= SIZE_MAX ? (size_t) (N) : SIZE_MAX) - -/* Sum of two sizes, with overflow check. */ -XSIZE_INLINE size_t -#if __GNUC__ >= 3 -__attribute__ ((__pure__)) -#endif -xsum (size_t size1, size_t size2) -{ - size_t sum = size1 + size2; - return (sum >= size1 ? sum : SIZE_MAX); -} - -/* Sum of three sizes, with overflow check. */ -XSIZE_INLINE size_t -#if __GNUC__ >= 3 -__attribute__ ((__pure__)) -#endif -xsum3 (size_t size1, size_t size2, size_t size3) -{ - return xsum (xsum (size1, size2), size3); -} - -/* Sum of four sizes, with overflow check. */ -XSIZE_INLINE size_t -#if __GNUC__ >= 3 -__attribute__ ((__pure__)) -#endif -xsum4 (size_t size1, size_t size2, size_t size3, size_t size4) -{ - return xsum (xsum (xsum (size1, size2), size3), size4); -} - -/* Maximum of two sizes, with overflow check. */ -XSIZE_INLINE size_t -#if __GNUC__ >= 3 -__attribute__ ((__pure__)) -#endif -xmax (size_t size1, size_t size2) -{ - /* No explicit check is needed here, because for any n: - max (SIZE_MAX, n) == SIZE_MAX and max (n, SIZE_MAX) == SIZE_MAX. */ - return (size1 >= size2 ? size1 : size2); -} - -/* Multiplication of a count with an element size, with overflow check. - The count must be >= 0 and the element size must be > 0. - This is a macro, not a function, so that it works correctly even - when N is of a wider type and N > SIZE_MAX. */ -#define xtimes(N, ELSIZE) \ - ((N) <= SIZE_MAX / (ELSIZE) ? (size_t) (N) * (ELSIZE) : SIZE_MAX) - -/* Check for overflow. */ -#define size_overflow_p(SIZE) \ - ((SIZE) == SIZE_MAX) -/* Check against overflow. */ -#define size_in_bounds_p(SIZE) \ - ((SIZE) != SIZE_MAX) - -_GL_INLINE_HEADER_END - -#endif /* _XSIZE_H */ diff --git a/thirdparty/grub-2.04/grub-core/lib/hexdump.c b/thirdparty/grub-2.04/grub-core/lib/hexdump.c deleted file mode 100644 index 317635a2b..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/hexdump.c +++ /dev/null @@ -1,85 +0,0 @@ -/* hexdump.c - hexdump function */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2008,2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include - -void -hexdump (unsigned long bse, char *buf, int len) -{ - int pos; - char line[80]; - - while (len > 0) - { - int cnt, i; - - pos = grub_snprintf (line, sizeof (line), "%08lx ", bse); - cnt = 16; - if (cnt > len) - cnt = len; - - for (i = 0; i < cnt; i++) - { - pos += grub_snprintf (&line[pos], sizeof (line) - pos, - "%02x ", (unsigned char) buf[i]); - if ((i & 7) == 7) - line[pos++] = ' '; - } - - for (; i < 16; i++) - { - pos += grub_snprintf (&line[pos], sizeof (line) - pos, " "); - if ((i & 7) == 7) - line[pos++] = ' '; - } - - line[pos++] = '|'; - - for (i = 0; i < cnt; i++) - line[pos++] = ((buf[i] >= 32) && (buf[i] < 127)) ? buf[i] : '.'; - - line[pos++] = '|'; - - line[pos] = 0; - - grub_printf ("%s\n", line); - - /* Print only first and last line if more than 3 lines are identical. */ - if (len >= 4 * 16 - && ! grub_memcmp (buf, buf + 1 * 16, 16) - && ! grub_memcmp (buf, buf + 2 * 16, 16) - && ! grub_memcmp (buf, buf + 3 * 16, 16)) - { - grub_printf ("*\n"); - do - { - bse += 16; - buf += 16; - len -= 16; - } - while (len >= 3 * 16 && ! grub_memcmp (buf, buf + 2 * 16, 16)); - } - - bse += 16; - buf += 16; - len -= cnt; - } -} diff --git a/thirdparty/grub-2.04/grub-core/lib/i386/backtrace.c b/thirdparty/grub-2.04/grub-core/lib/i386/backtrace.c deleted file mode 100644 index c3e03c727..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/i386/backtrace.c +++ /dev/null @@ -1,66 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include - -#define MAX_STACK_FRAME 102400 - -void -grub_backtrace_pointer (void *ebp) -{ - void *ptr, *nptr; - unsigned i; - - ptr = ebp; - while (1) - { - grub_printf ("%p: ", ptr); - grub_backtrace_print_address (((void **) ptr)[1]); - grub_printf (" ("); - for (i = 0; i < 2; i++) - grub_printf ("%p,", ((void **)ptr) [i + 2]); - grub_printf ("%p)\n", ((void **)ptr) [i + 2]); - nptr = *(void **)ptr; - if (nptr < ptr || (void **) nptr - (void **) ptr > MAX_STACK_FRAME - || nptr == ptr) - { - grub_printf ("Invalid stack frame at %p (%p)\n", ptr, nptr); - break; - } - ptr = nptr; - } -} - -void -grub_backtrace (void) -{ -#ifdef __x86_64__ - asm volatile ("movq %%rbp, %%rdi\n" - "callq *%%rax": :"a"(grub_backtrace_pointer)); -#else - asm volatile ("movl %%ebp, %%eax\n" - "calll *%%ecx": :"c"(grub_backtrace_pointer)); -#endif -} - diff --git a/thirdparty/grub-2.04/grub-core/lib/i386/halt.c b/thirdparty/grub-2.04/grub-core/lib/i386/halt.c deleted file mode 100644 index 2364fe4d7..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/i386/halt.c +++ /dev/null @@ -1,82 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2008 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include - -const char bochs_shutdown[] = "Shutdown"; - -/* - * This call is special... it never returns... in fact it should simply - * hang at this point! - */ -static inline void __attribute__ ((noreturn)) -stop (void) -{ - asm volatile ("cli"); - while (1) - { - asm volatile ("hlt"); - } -} - -static int -grub_shutdown_pci_iter (grub_pci_device_t dev, grub_pci_id_t pciid, - void *data __attribute__ ((unused))) -{ - /* QEMU. */ - if (pciid == 0x71138086) - { - grub_pci_address_t addr; - addr = grub_pci_make_address (dev, 0x40); - grub_pci_write (addr, 0x7001); - addr = grub_pci_make_address (dev, 0x80); - grub_pci_write (addr, grub_pci_read (addr) | 1); - grub_outw (0x2000, 0x7004); - } - return 0; -} - -void -grub_halt (void) -{ - unsigned int i; - -#if defined (GRUB_MACHINE_COREBOOT) || defined (GRUB_MACHINE_MULTIBOOT) - grub_acpi_halt (); -#endif - - /* Disable interrupts. */ - asm volatile ("cli"); - - /* Bochs, QEMU, etc. Removed in newer QEMU releases. */ - for (i = 0; i < sizeof (bochs_shutdown) - 1; i++) - grub_outb (bochs_shutdown[i], 0x8900); - - grub_pci_iterate (grub_shutdown_pci_iter, NULL); - - grub_puts_ (N_("GRUB doesn't know how to halt this machine yet!")); - - /* In order to return we'd have to check what the previous status of IF - flag was. But user most likely doesn't want to return anyway ... */ - stop (); -} diff --git a/thirdparty/grub-2.04/grub-core/lib/i386/pc/biosnum.c b/thirdparty/grub-2.04/grub-core/lib/i386/pc/biosnum.c deleted file mode 100644 index 0f0e743c4..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/i386/pc/biosnum.c +++ /dev/null @@ -1,47 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include - -static int -grub_get_root_biosnumber_default (void) -{ - const char *biosnum; - int ret = -1; - grub_device_t dev; - - biosnum = grub_env_get ("biosnum"); - - if (biosnum) - return grub_strtoul (biosnum, 0, 0); - - dev = grub_device_open (0); - if (dev && dev->disk && dev->disk->dev - && dev->disk->dev->id == GRUB_DISK_DEVICE_BIOSDISK_ID) - ret = (int) dev->disk->id; - - if (dev) - grub_device_close (dev); - - return ret; -} - -int (*grub_get_root_biosnumber) (void) = grub_get_root_biosnumber_default; diff --git a/thirdparty/grub-2.04/grub-core/lib/i386/pc/vesa_modes_table.c b/thirdparty/grub-2.04/grub-core/lib/i386/pc/vesa_modes_table.c deleted file mode 100644 index 6dc4b7d8d..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/i386/pc/vesa_modes_table.c +++ /dev/null @@ -1,127 +0,0 @@ - -#include - -/* This is the reverse of the table in [linux]/Documentation/fb/vesafb.txt - plus a few more modes based on the table in - http://en.wikipedia.org/wiki/VESA_BIOS_Extensions */ -struct grub_vesa_mode_table_entry -grub_vesa_mode_table[GRUB_VESA_MODE_TABLE_END - - GRUB_VESA_MODE_TABLE_START + 1] = - { - { 640, 400, 8 }, /* 0x300 */ - { 640, 480, 8 }, /* 0x301 */ - { 800, 600, 4 }, /* 0x302 */ - { 800, 600, 8 }, /* 0x303 */ - { 1024, 768, 4 }, /* 0x304 */ - { 1024, 768, 8 }, /* 0x305 */ - { 1280, 1024, 4 }, /* 0x306 */ - { 1280, 1024, 8 }, /* 0x307 */ - { 0, 0, 0 }, - { 0, 0, 0 }, - { 0, 0, 0 }, - { 0, 0, 0 }, - { 0, 0, 0 }, - { 320, 200, 15 }, /* 0x30d */ - { 320, 200, 16 }, /* 0x30e */ - { 320, 200, 24 }, /* 0x30f */ - { 640, 480, 15 }, /* 0x310 */ - { 640, 480, 16 }, /* 0x311 */ - { 640, 480, 24 }, /* 0x312 */ - { 800, 600, 15 }, /* 0x313 */ - { 800, 600, 16 }, /* 0x314 */ - { 800, 600, 24 }, /* 0x315 */ - { 1024, 768, 15 }, /* 0x316 */ - { 1024, 768, 16 }, /* 0x317 */ - { 1024, 768, 24 }, /* 0x318 */ - { 1280, 1024, 15 }, /* 0x319 */ - { 1280, 1024, 16 }, /* 0x31a */ - { 1280, 1024, 24 }, /* 0x31b */ - { 1600, 1200, 8 }, /* 0x31c */ - { 1600, 1200, 15 }, /* 0x31d */ - { 1600, 1200, 16 }, /* 0x31e */ - { 1600, 1200, 24 }, /* 0x31f */ - { 0, 0, 0 }, - { 640, 400, 15 }, /* 0x321 */ - { 640, 400, 16 }, /* 0x322 */ - { 640, 400, 24 }, /* 0x323 */ - { 640, 400, 32 }, /* 0x324 */ - { 0, 0, 0 }, - { 0, 0, 0 }, - { 0, 0, 0 }, - { 0, 0, 0 }, - { 640, 480, 32 }, /* 0x329 */ - { 0, 0, 0 }, - { 0, 0, 0 }, - { 0, 0, 0 }, - { 0, 0, 0 }, - { 0, 0, 0 }, - { 896, 672, 8 }, /* 0x32f */ - { 896, 672, 15 }, /* 0x330 */ - { 896, 672, 16 }, /* 0x331 */ - { 896, 672, 24 }, /* 0x332 */ - { 896, 672, 32 }, /* 0x333 */ - { 0, 0, 0 }, - { 0, 0, 0 }, - { 0, 0, 0 }, - { 0, 0, 0 }, - { 0, 0, 0 }, - { 0, 0, 0 }, - { 0, 0, 0 }, - { 0, 0, 0 }, - { 0, 0, 0 }, - { 0, 0, 0 }, - { 0, 0, 0 }, - { 0, 0, 0 }, - { 0, 0, 0 }, - { 0, 0, 0 }, - { 1600, 1200, 32 }, /* 0x342 */ - { 0, 0, 0 }, - { 0, 0, 0 }, - { 0, 0, 0 }, - { 0, 0, 0 }, - { 0, 0, 0 }, - { 0, 0, 0 }, - { 0, 0, 0 }, - { 0, 0, 0 }, - { 0, 0, 0 }, - { 0, 0, 0 }, - { 0, 0, 0 }, - { 0, 0, 0 }, - { 0, 0, 0 }, - { 0, 0, 0 }, - { 0, 0, 0 }, - { 0, 0, 0 }, - { 0, 0, 0 }, - { 0, 0, 0 }, - { 0, 0, 0 }, - { 0, 0, 0 }, - { 0, 0, 0 }, - { 0, 0, 0 }, - { 0, 0, 0 }, - { 0, 0, 0 }, - { 0, 0, 0 }, - { 0, 0, 0 }, - { 0, 0, 0 }, - { 0, 0, 0 }, - { 0, 0, 0 }, - { 1440, 900, 8 }, /* 0x360 */ - { 1440, 900, 15 }, /* 0x361 */ - { 1440, 900, 16 }, /* 0x362 */ - { 1440, 900, 24 }, /* 0x363 */ - { 1440, 900, 32 }, /* 0x364 */ - { 1152, 720, 8 }, /* 0x365 */ - { 1152, 720, 15 }, /* 0x366 */ - { 1152, 720, 16 }, /* 0x367 */ - { 1152, 720, 24 }, /* 0x368 */ - { 1152, 720, 32 }, /* 0x369 */ - { 1024, 640, 8 }, /* 0x36a */ - { 1024, 640, 15 }, /* 0x36b */ - { 1024, 640, 16 }, /* 0x36c */ - { 1024, 640, 24 }, /* 0x36d */ - { 1024, 640, 32 }, /* 0x36e */ - { 800, 500, 8 }, /* 0x36f */ - { 800, 500, 15 }, /* 0x370 */ - { 800, 500, 16 }, /* 0x371 */ - { 800, 500, 24 }, /* 0x372 */ - { 800, 500, 32 }, /* 0x373 */ - }; diff --git a/thirdparty/grub-2.04/grub-core/lib/i386/random.c b/thirdparty/grub-2.04/grub-core/lib/i386/random.c deleted file mode 100644 index cd83d2f8f..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/i386/random.c +++ /dev/null @@ -1,103 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2016 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include - -static int have_tsc = -1, have_pmtimer = -1; -static grub_port_t pmtimer_port; - -static int -detect_pmtimer (void) -{ - struct grub_acpi_fadt *fadt; - fadt = grub_acpi_find_fadt (); - if (!fadt) - return 0; - pmtimer_port = fadt->pmtimer; - if (!pmtimer_port) - return 0; - return 1; -} - -static int -pmtimer_tsc_get_random_bit (void) -{ - /* It's hard to come up with figures about pmtimer and tsc jitter but - 50 ppm seems to be typical. So we need 10^6/50 tsc cycles to get drift - of one tsc cycle. With TSC at least of 800 MHz it means 1/(50*800) - = 1/40000 s or about 3579545 / 40000 = 90 pmtimer ticks. - This gives us rate of 40000 bit/s or 5 kB/s. - */ - grub_uint64_t tsc_diff; - tsc_diff = grub_pmtimer_wait_count_tsc (pmtimer_port, 90); - if (tsc_diff == 0) - { - have_pmtimer = 0; - return -1; - } - return tsc_diff & 1; -} - -static int -pmtimer_tsc_get_random_byte (void) -{ - grub_uint8_t ret = 0; - int i, c; - for (i = 0; i < 8; i++) - { - c = pmtimer_tsc_get_random_bit (); - if (c < 0) - return -1; - ret |= c << i; - } - return ret; -} - -static int -pmtimer_fill_buffer (void *buffer, grub_size_t sz) -{ - grub_uint8_t *p = buffer; - int c; - while (sz) - { - c = pmtimer_tsc_get_random_byte (); - if (c < 0) - return 0; - *p++ = c; - sz--; - } - return 1; -} - -int -grub_crypto_arch_get_random (void *buffer, grub_size_t sz) -{ - if (have_tsc == -1) - have_tsc = grub_cpu_is_tsc_supported (); - if (!have_tsc) - return 0; - if (have_pmtimer == -1) - have_pmtimer = detect_pmtimer (); - if (!have_pmtimer) - return 0; - return pmtimer_fill_buffer (buffer, sz); -} diff --git a/thirdparty/grub-2.04/grub-core/lib/i386/reboot.c b/thirdparty/grub-2.04/grub-core/lib/i386/reboot.c deleted file mode 100644 index dce0b563d..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/i386/reboot.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2011 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#ifndef GRUB_MACHINE_EFI - -#include -#include -#include -#include -#include -#include - -void -grub_reboot (void) -{ - struct grub_relocator *relocator = NULL; - grub_relocator_chunk_t ch; - grub_err_t err; - void *buf; - struct grub_relocator16_state state; - grub_uint16_t segment; - - relocator = grub_relocator_new (); - if (!relocator) - while (1); - err = grub_relocator_alloc_chunk_align (relocator, &ch, 0x1000, 0x1000, - grub_reboot_end - grub_reboot_start, - 16, GRUB_RELOCATOR_PREFERENCE_NONE, - 0); - if (err) - while (1); - buf = get_virtual_current_address (ch); - grub_memcpy (buf, grub_reboot_start, grub_reboot_end - grub_reboot_start); - - segment = ((grub_addr_t) get_physical_target_address (ch)) >> 4; - state.gs = state.fs = state.es = state.ds = state.ss = segment; - state.sp = 0; - state.cs = segment; - state.ip = 0; - state.a20 = 0; - - grub_stop_floppy (); - - err = grub_relocator16_boot (relocator, state); - - while (1); -} - -#endif /* GRUB_MACHINE_EFI */ diff --git a/thirdparty/grub-2.04/grub-core/lib/i386/reboot_trampoline.S b/thirdparty/grub-2.04/grub-core/lib/i386/reboot_trampoline.S deleted file mode 100644 index c088cd081..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/i386/reboot_trampoline.S +++ /dev/null @@ -1,34 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2011 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include - - .p2align 4 - -VARIABLE(grub_reboot_start) - .code16 - - /* set 0x472 to 0x0000 for cold boot (0x1234 for warm boot) */ - movw $0x0472, %di - xorw %ax, %ax - movw %ax, (%di) - ljmp $0xf000, $0xfff0 - - .code32 -VARIABLE(grub_reboot_end) diff --git a/thirdparty/grub-2.04/grub-core/lib/i386/relocator.c b/thirdparty/grub-2.04/grub-core/lib/i386/relocator.c deleted file mode 100644 index 71dd4f0ab..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/i386/relocator.c +++ /dev/null @@ -1,216 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include - -#include -#include -#include - -#include -#include -#include -#include - -extern grub_uint8_t grub_relocator16_start; -extern grub_uint8_t grub_relocator16_end; -extern grub_uint16_t grub_relocator16_cs; -extern grub_uint16_t grub_relocator16_ip; -extern grub_uint16_t grub_relocator16_ds; -extern grub_uint16_t grub_relocator16_es; -extern grub_uint16_t grub_relocator16_fs; -extern grub_uint16_t grub_relocator16_gs; -extern grub_uint16_t grub_relocator16_ss; -extern grub_uint16_t grub_relocator16_sp; -extern grub_uint32_t grub_relocator16_edx; -extern grub_uint32_t grub_relocator16_ebx; -extern grub_uint32_t grub_relocator16_esi; -extern grub_uint32_t grub_relocator16_ebp; - -extern grub_uint16_t grub_relocator16_keep_a20_enabled; - -extern grub_uint8_t grub_relocator32_start; -extern grub_uint8_t grub_relocator32_end; -extern grub_uint32_t grub_relocator32_eax; -extern grub_uint32_t grub_relocator32_ebx; -extern grub_uint32_t grub_relocator32_ecx; -extern grub_uint32_t grub_relocator32_edx; -extern grub_uint32_t grub_relocator32_eip; -extern grub_uint32_t grub_relocator32_esp; -extern grub_uint32_t grub_relocator32_ebp; -extern grub_uint32_t grub_relocator32_esi; -extern grub_uint32_t grub_relocator32_edi; - -extern grub_uint8_t grub_relocator64_start; -extern grub_uint8_t grub_relocator64_end; -extern grub_uint64_t grub_relocator64_rax; -extern grub_uint64_t grub_relocator64_rbx; -extern grub_uint64_t grub_relocator64_rcx; -extern grub_uint64_t grub_relocator64_rdx; -extern grub_uint64_t grub_relocator64_rip; -extern grub_uint64_t grub_relocator64_rsp; -extern grub_uint64_t grub_relocator64_rsi; -extern grub_addr_t grub_relocator64_cr3; -extern struct grub_i386_idt grub_relocator16_idt; - -#define RELOCATOR_SIZEOF(x) (&grub_relocator##x##_end - &grub_relocator##x##_start) - -grub_err_t -grub_relocator32_boot (struct grub_relocator *rel, - struct grub_relocator32_state state, - int avoid_efi_bootservices) -{ - grub_err_t err; - void *relst; - grub_relocator_chunk_t ch; - - /* Specific memory range due to Global Descriptor Table for use by payload - that we will store in returned chunk. The address range and preference - are based on "THE LINUX/x86 BOOT PROTOCOL" specification. */ - err = grub_relocator_alloc_chunk_align (rel, &ch, 0x1000, - 0x9a000 - RELOCATOR_SIZEOF (32), - RELOCATOR_SIZEOF (32), 16, - GRUB_RELOCATOR_PREFERENCE_LOW, - avoid_efi_bootservices); - if (err) - return err; - - grub_relocator32_eax = state.eax; - grub_relocator32_ebx = state.ebx; - grub_relocator32_ecx = state.ecx; - grub_relocator32_edx = state.edx; - grub_relocator32_eip = state.eip; - grub_relocator32_esp = state.esp; - grub_relocator32_ebp = state.ebp; - grub_relocator32_esi = state.esi; - grub_relocator32_edi = state.edi; - - grub_memmove (get_virtual_current_address (ch), &grub_relocator32_start, - RELOCATOR_SIZEOF (32)); - - err = grub_relocator_prepare_relocs (rel, get_physical_target_address (ch), - &relst, NULL); - if (err) - return err; - - asm volatile ("cli"); - ((void (*) (void)) relst) (); - - /* Not reached. */ - return GRUB_ERR_NONE; -} - -grub_err_t -grub_relocator16_boot (struct grub_relocator *rel, - struct grub_relocator16_state state) -{ - grub_err_t err; - void *relst; - grub_relocator_chunk_t ch; - - /* Put it higher than the byte it checks for A20 check. */ - err = grub_relocator_alloc_chunk_align (rel, &ch, 0x8010, - 0xa0000 - RELOCATOR_SIZEOF (16) - - GRUB_RELOCATOR16_STACK_SIZE, - RELOCATOR_SIZEOF (16) - + GRUB_RELOCATOR16_STACK_SIZE, 16, - GRUB_RELOCATOR_PREFERENCE_NONE, - 0); - if (err) - return err; - - grub_relocator16_cs = state.cs; - grub_relocator16_ip = state.ip; - - grub_relocator16_ds = state.ds; - grub_relocator16_es = state.es; - grub_relocator16_fs = state.fs; - grub_relocator16_gs = state.gs; - - grub_relocator16_ss = state.ss; - grub_relocator16_sp = state.sp; - - grub_relocator16_ebp = state.ebp; - grub_relocator16_ebx = state.ebx; - grub_relocator16_edx = state.edx; - grub_relocator16_esi = state.esi; -#ifdef GRUB_MACHINE_PCBIOS - grub_relocator16_idt = *grub_realidt; -#else - grub_relocator16_idt.base = 0; - grub_relocator16_idt.limit = 0; -#endif - - grub_relocator16_keep_a20_enabled = state.a20; - - grub_memmove (get_virtual_current_address (ch), &grub_relocator16_start, - RELOCATOR_SIZEOF (16)); - - err = grub_relocator_prepare_relocs (rel, get_physical_target_address (ch), - &relst, NULL); - if (err) - return err; - - asm volatile ("cli"); - ((void (*) (void)) relst) (); - - /* Not reached. */ - return GRUB_ERR_NONE; -} - -grub_err_t -grub_relocator64_boot (struct grub_relocator *rel, - struct grub_relocator64_state state, - grub_addr_t min_addr, grub_addr_t max_addr) -{ - grub_err_t err; - void *relst; - grub_relocator_chunk_t ch; - - err = grub_relocator_alloc_chunk_align (rel, &ch, min_addr, - max_addr - RELOCATOR_SIZEOF (64), - RELOCATOR_SIZEOF (64), 16, - GRUB_RELOCATOR_PREFERENCE_NONE, - 0); - if (err) - return err; - - grub_relocator64_rax = state.rax; - grub_relocator64_rbx = state.rbx; - grub_relocator64_rcx = state.rcx; - grub_relocator64_rdx = state.rdx; - grub_relocator64_rip = state.rip; - grub_relocator64_rsp = state.rsp; - grub_relocator64_rsi = state.rsi; - grub_relocator64_cr3 = state.cr3; - - grub_memmove (get_virtual_current_address (ch), &grub_relocator64_start, - RELOCATOR_SIZEOF (64)); - - err = grub_relocator_prepare_relocs (rel, get_physical_target_address (ch), - &relst, NULL); - if (err) - return err; - - asm volatile ("cli"); - ((void (*) (void)) relst) (); - - /* Not reached. */ - return GRUB_ERR_NONE; -} diff --git a/thirdparty/grub-2.04/grub-core/lib/i386/relocator16.S b/thirdparty/grub-2.04/grub-core/lib/i386/relocator16.S deleted file mode 100644 index 371a2ed69..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/i386/relocator16.S +++ /dev/null @@ -1,329 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2009,2010 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -/* The code segment of the protected mode. */ -#define CODE_SEGMENT 0x08 - -/* The data segment of the protected mode. */ -#define DATA_SEGMENT 0x10 - -#define PSEUDO_REAL_CSEG 0x18 - -#define PSEUDO_REAL_DSEG 0x20 - -#include - -#include "relocator_common.S" - - .p2align 4 /* force 16-byte alignment */ - -VARIABLE(grub_relocator16_start) - PREAMBLE - -#ifdef __APPLE__ - LOCAL(cs_base_bytes12_offset) = LOCAL (cs_base_bytes12) - LOCAL (base) - LOCAL(cs_base_byte3_offset) = LOCAL (cs_base_byte3) - LOCAL (base) - movl %esi, %eax - movw %ax, (LOCAL(cs_base_bytes12_offset)) (RSI, 1) - shrl $16, %eax - movb %al, (LOCAL (cs_base_byte3_offset)) (RSI, 1) -#else - movl %esi, %eax - movw %ax, (LOCAL (cs_base_bytes12) - LOCAL (base)) (RSI, 1) - shrl $16, %eax - movb %al, (LOCAL (cs_base_byte3) - LOCAL (base)) (RSI, 1) -#endif - - RELOAD_GDT - .code32 - /* Update other registers. */ - movl $DATA_SEGMENT, %eax - movl %eax, %ds - movl %eax, %es - movl %eax, %fs - movl %eax, %gs - movl %eax, %ss - - DISABLE_PAGING - -#ifdef __x86_64__ - /* Disable amd64. */ - movl $GRUB_MEMORY_CPU_AMD64_MSR, %ecx - rdmsr - andl $(~GRUB_MEMORY_CPU_AMD64_MSR_ON), %eax - wrmsr -#endif - - /* Turn off PAE. */ - movl %cr4, %eax - andl $(~GRUB_MEMORY_CPU_CR4_PAE_ON), %eax - movl %eax, %cr4 - - /* Update other registers. */ - movl $PSEUDO_REAL_DSEG, %eax - movl %eax, %ds - movl %eax, %es - movl %eax, %fs - movl %eax, %gs - movl %eax, %ss - - movl %esi, %eax - shrl $4, %eax -#ifdef __APPLE__ - LOCAL(segment_offset) = LOCAL (segment) - LOCAL (base) - LOCAL(idt_offset) = LOCAL(relocator16_idt) - LOCAL (base) - LOCAL(cont2_offset) = LOCAL (cont2) - LOCAL(base) - movw %ax, LOCAL(segment_offset) (%esi, 1) - lidt LOCAL(idt_offset) (%esi, 1) - - /* jump to a 16 bit segment */ - ljmp $PSEUDO_REAL_CSEG, $(LOCAL(cont2_offset)) -#else - movw %ax, (LOCAL (segment) - LOCAL (base)) (%esi, 1) - - lidt (EXT_C(grub_relocator16_idt) - LOCAL (base)) (%esi, 1) - - /* jump to a 16 bit segment */ - ljmp $PSEUDO_REAL_CSEG, $(LOCAL (cont2) - LOCAL(base)) -#endif -LOCAL(cont2): - .code16 - - /* clear the PE bit of CR0 */ - movl %cr0, %eax - andl $(~GRUB_MEMORY_CPU_CR0_PE_ON), %eax - movl %eax, %cr0 - - /* flush prefetch queue, reload %cs */ - /* ljmp */ - .byte 0xea -#ifdef __APPLE__ - LOCAL(cont3_offset) = LOCAL(cont3) - LOCAL(base) - .word LOCAL(cont3_offset) -#else - .word LOCAL(cont3)-LOCAL(base) -#endif -LOCAL(segment): - .word 0 - -LOCAL(cont3): - - /* movw imm16, %ax. */ - .byte 0xb8 -VARIABLE(grub_relocator16_keep_a20_enabled) - .word 0 - - test %ax, %ax - jnz LOCAL(gate_a20_done) - - movw %cs, %ax - movw %ax, %ss -#ifdef __APPLE__ - LOCAL(relocator16_end_offset) = LOCAL(relocator16_end) - LOCAL(base) - leaw LOCAL(relocator16_end_offset), %sp -#else - leaw LOCAL(relocator16_end) - LOCAL(base), %sp -#endif - addw $GRUB_RELOCATOR16_STACK_SIZE, %sp - - /* second, try a BIOS call */ - movw $0x2400, %ax - int $0x15 - - call LOCAL(gate_a20_check_state) - testb %al, %al - jz LOCAL(gate_a20_done) - - /* - * In macbook, the keyboard test would hang the machine, so we move - * this forward. - */ - /* fourth, try the system control port A */ - inb $0x92 - andb $(~0x03), %al - outb $0x92 - - /* When turning off Gate A20, do not check the state strictly, - because a failure is not fatal usually, and Gate A20 is always - on some modern machines. */ - jmp LOCAL(gate_a20_done) - -LOCAL(gate_a20_check_state): - /* iterate the checking for a while */ - movw $100, %cx -1: - xorw %ax, %ax - movw %ax, %ds - decw %ax - movw %ax, %es - xorw %ax, %ax - - movw $0x8000, %ax - /* compare the byte at ADDR with that at 0x100000 + ADDR */ - movw %ax, %si - addw $0x10, %ax - movw %ax, %di - - /* save the original byte in DL */ - movb %ds:(%si), %dl - movb %es:(%di), %al - /* try to set one less value at ADDR */ - movb %al, %dh - decb %dh - movb %dh, %ds:(%si) - /* serialize */ - outb %al, $0x80 - outb %al, $0x80 - /* obtain the value at 0x100000 + ADDR in CH */ - movb %es:(%di), %dh - /* this result is 1 if A20 is on or 0 if it is off */ - subb %dh, %al - xorb $1, %al - /* restore the original */ - movb %dl, %ds:(%si) - - testb %al, %al - jz LOCAL(gate_a20_done) - loop 1b -2: - ret - -LOCAL(gate_a20_done): - /* - * We are in real mode now. Set up the real mode segment registers and - * all the other general purpose registers. cs is updated with ljmp. - */ - /* movw imm16, %ax. */ - .byte 0xb8 -VARIABLE(grub_relocator16_ds) - .word 0 - movw %ax, %ds - - /* movw imm16, %ax. */ - .byte 0xb8 -VARIABLE(grub_relocator16_es) - .word 0 - movw %ax, %es - - /* movw imm16, %ax. */ - .byte 0xb8 -VARIABLE(grub_relocator16_fs) - .word 0 - movw %ax, %fs - - /* movw imm16, %ax. */ - .byte 0xb8 -VARIABLE(grub_relocator16_gs) - .word 0 - movw %ax, %gs - - /* movw imm16, %ax. */ - .byte 0xb8 -VARIABLE(grub_relocator16_ss) - .word 0 - movw %ax, %ss - - /* movw imm16, %ax. */ - .byte 0xb8 -VARIABLE(grub_relocator16_sp) - .word 0 - movzwl %ax, %esp - - /* movw imm32, %eax. */ - .byte 0x66, 0xb8 -VARIABLE(grub_relocator16_esi) - .long 0 - movl %eax, %esi - - /* movw imm32, %edx. */ - .byte 0x66, 0xba -VARIABLE(grub_relocator16_edx) - .long 0 - - /* movw imm32, %ebx. */ - .byte 0x66, 0xbb -VARIABLE(grub_relocator16_ebx) - .long 0 - - /* movl imm32, %ebp. */ - .byte 0x66, 0xbd -VARIABLE(grub_relocator16_ebp) - .long 0 - - /* Cleared direction flag is of no problem with any current - payload and makes this implementation easier. */ - cld - - /* ljmp */ - .byte 0xea -VARIABLE(grub_relocator16_ip) - .word 0 -VARIABLE(grub_relocator16_cs) - .word 0 - - .code32 - - /* GDT. Copied from loader/i386/linux.c. */ - .p2align 4 -LOCAL(gdt): - .word 0, 0 - .byte 0, 0, 0, 0 - - /* -- code segment -- - * base = 0x00000000, limit = 0xFFFFF (4 KiB Granularity), present - * type = 32bit code execute/read, DPL = 0 - */ - .word 0xFFFF, 0 - .byte 0, 0x9A, 0xCF, 0 - - /* -- data segment -- - * base = 0x00000000, limit 0xFFFFF (4 KiB Granularity), present - * type = 32 bit data read/write, DPL = 0 - */ - .word 0xFFFF, 0 - .byte 0, 0x92, 0xCF, 0 - - /* -- 16 bit real mode CS -- - * base = filled by code, limit 0x0FFFF (1 B Granularity), present - * type = 16 bit code execute/read only/conforming, DPL = 0 - */ - .word 0xFFFF -LOCAL(cs_base_bytes12): - .word 0 -LOCAL(cs_base_byte3): - .byte 0 - - .byte 0x9E, 0, 0 - - /* -- 16 bit real mode DS -- - * base = 0x00000000, limit 0x0FFFF (1 B Granularity), present - * type = 16 bit data read/write, DPL = 0 - */ - .word 0xFFFF, 0 - .byte 0, 0x92, 0, 0 -LOCAL(gdt_end): - -#ifdef __APPLE__ -LOCAL(relocator16_idt): -#endif -VARIABLE(grub_relocator16_idt) - .word 0 - .long 0 -LOCAL(relocator16_end): -VARIABLE(grub_relocator16_end) - .byte 0 diff --git a/thirdparty/grub-2.04/grub-core/lib/i386/relocator32.S b/thirdparty/grub-2.04/grub-core/lib/i386/relocator32.S deleted file mode 100644 index 09ce56ad0..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/i386/relocator32.S +++ /dev/null @@ -1,134 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2009,2010 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -/* The code segment of the protected mode. */ -#define CODE_SEGMENT 0x10 - -/* The data segment of the protected mode. */ -#define DATA_SEGMENT 0x18 - -#include "relocator_common.S" - - .p2align 4 /* force 16-byte alignment */ - -VARIABLE(grub_relocator32_start) - PREAMBLE - - RELOAD_GDT - .code32 - /* Update other registers. */ - movl $DATA_SEGMENT, %eax - movl %eax, %ds - movl %eax, %es - movl %eax, %fs - movl %eax, %gs - movl %eax, %ss - - DISABLE_PAGING - -#ifdef __x86_64__ - /* Disable amd64. */ - movl $GRUB_MEMORY_CPU_AMD64_MSR, %ecx - rdmsr - andl $(~GRUB_MEMORY_CPU_AMD64_MSR_ON), %eax - wrmsr -#endif - - /* Turn off PAE. */ - movl %cr4, %eax - andl $(~GRUB_MEMORY_CPU_CR4_PAE_ON), %eax - movl %eax, %cr4 - - jmp LOCAL(cont2) -LOCAL(cont2): - .code32 - - /* mov imm32, %eax */ - .byte 0xb8 -VARIABLE(grub_relocator32_esp) - .long 0 - - movl %eax, %esp - - /* mov imm32, %eax */ - .byte 0xb8 -VARIABLE(grub_relocator32_ebp) - .long 0 - - movl %eax, %ebp - - /* mov imm32, %eax */ - .byte 0xb8 -VARIABLE(grub_relocator32_esi) - .long 0 - - movl %eax, %esi - - /* mov imm32, %eax */ - .byte 0xb8 -VARIABLE(grub_relocator32_edi) - .long 0 - - movl %eax, %edi - - /* mov imm32, %eax */ - .byte 0xb8 -VARIABLE(grub_relocator32_eax) - .long 0 - - /* mov imm32, %ebx */ - .byte 0xbb -VARIABLE(grub_relocator32_ebx) - .long 0 - - /* mov imm32, %ecx */ - .byte 0xb9 -VARIABLE(grub_relocator32_ecx) - .long 0 - - /* mov imm32, %edx */ - .byte 0xba -VARIABLE(grub_relocator32_edx) - .long 0 - - /* Cleared direction flag is of no problem with any current - payload and makes this implementation easier. */ - cld - - .byte 0xea -VARIABLE(grub_relocator32_eip) - .long 0 - .word CODE_SEGMENT - - /* GDT. Copied from loader/i386/linux.c. */ - .p2align 4 -LOCAL(gdt): - /* NULL. */ - .byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 - - /* Reserved. */ - .byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 - - /* Code segment. */ - .byte 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x9A, 0xCF, 0x00 - - /* Data segment. */ - .byte 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x92, 0xCF, 0x00 -LOCAL(gdt_end): - -VARIABLE(grub_relocator32_end) diff --git a/thirdparty/grub-2.04/grub-core/lib/i386/relocator64.S b/thirdparty/grub-2.04/grub-core/lib/i386/relocator64.S deleted file mode 100644 index 148f38adb..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/i386/relocator64.S +++ /dev/null @@ -1,186 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2009,2010 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#define CODE32_SEGMENT 0x18 -#define CODE_SEGMENT 0x08 - -/* The data segment of the protected mode. */ -#define DATA_SEGMENT 0x10 - -#include "relocator_common.S" - - .p2align 4 /* force 16-byte alignment */ - -VARIABLE(grub_relocator64_start) - PREAMBLE -#ifndef __x86_64__ - DISABLE_PAGING - - /* Turn on PAE. */ - movl %cr4, %eax - orl $(GRUB_MEMORY_CPU_CR4_PAE_ON | GRUB_MEMORY_CPU_CR4_PSE_ON), %eax - movl %eax, %cr4 - - /* mov imm32, %eax */ - .byte 0xb8 -VARIABLE(grub_relocator64_cr3) - .long 0 - movl %eax, %cr3 - - /* Turn on amd64. */ - movl $GRUB_MEMORY_CPU_AMD64_MSR, %ecx - rdmsr - orl $GRUB_MEMORY_CPU_AMD64_MSR_ON, %eax - wrmsr - - /* Enable paging. */ - movl %cr0, %eax - orl $GRUB_MEMORY_CPU_CR0_PAGING_ON, %eax - movl %eax, %cr0 - - RELOAD_GDT -#else - /* mov imm64, %rax */ - .byte 0x48 - .byte 0xb8 -VARIABLE(grub_relocator64_cr3) - .quad 0 - movq %rax, %cr3 -#endif - - .code64 - - /* mov imm64, %rax */ - .byte 0x48 - .byte 0xb8 -VARIABLE(grub_relocator64_rsp) - .quad 0 - - movq %rax, %rsp - -#ifdef GRUB_MACHINE_EFI - jmp LOCAL(skip_efi_stack_align) - - /* - * Here is grub_relocator64_efi_start() entry point. Most of the - * code below is shared between grub_relocator64_efi_start() - * and grub_relocator64_start(). - * - * Think twice before changing anything there!!! - */ -VARIABLE(grub_relocator64_efi_start) - /* Align the stack as UEFI spec requires. */ - andq $~15, %rsp - -LOCAL(skip_efi_stack_align): -#endif - /* mov imm64, %rax */ - .byte 0x48 - .byte 0xb8 -VARIABLE(grub_relocator64_rsi) - .quad 0 - - movq %rax, %rsi - - /* mov imm64, %rax */ - .byte 0x48 - .byte 0xb8 -VARIABLE(grub_relocator64_rax) - .quad 0 - - /* mov imm64, %rbx */ - .byte 0x48 - .byte 0xbb -VARIABLE(grub_relocator64_rbx) - .quad 0 - - /* mov imm64, %rcx */ - .byte 0x48 - .byte 0xb9 -VARIABLE(grub_relocator64_rcx) - .quad 0 - - /* mov imm64, %rdx */ - .byte 0x48 - .byte 0xba -VARIABLE(grub_relocator64_rdx) - .quad 0 - - /* Cleared direction flag is of no problem with any current - payload and makes this implementation easier. */ - cld - -#ifdef __APPLE__ - .byte 0xff, 0x25 - .quad 0 -#else - jmp *LOCAL(jump_addr) (%rip) -#endif - -LOCAL(jump_addr): -VARIABLE(grub_relocator64_rip) - .quad 0 - -#ifdef GRUB_MACHINE_EFI - /* Here grub_relocator64_efi_start() ends. Ufff... */ -VARIABLE(grub_relocator64_efi_end) -#endif - -#ifndef __x86_64__ - .p2align 4 -LOCAL(gdt): - /* NULL. */ - .byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 - - /* 64-bit segment. */ - .word 0xffff /* Limit xffff. */ - .word 0x0000 /* Base xxxx0000. */ - .byte 0x00 /* Base xx00xxxx. */ - .byte (0x8 /* Type 8. */ | (1 << 4) /* Code. */ \ - | (0 << 5) /* Ring 0. */ | (1 << 7) /* Present. */) - .byte (0xf /* Limit fxxxx. */ | (0 << 4) /* AVL flag. */ \ - | (1 << 5) /* 64-bit. */ | (0 << 6) \ - | (1 << 7) /* 4K granular. */) - .byte 0x00 /* Base 00xxxxxx. */ - - /* Data segment*/ - .word 0xffff /* Limit xffff. */ - .word 0x0000 /* Base xxxx0000. */ - .byte 0x00 /* Base xx00xxxx. */ - .byte (0x0 /* Type 0. */ | (0 << 4) /* Data. */ \ - | (0 << 5) /* Ring 0. */ | (1 << 7) /* Present. */) - .byte (0xf /* Limit fxxxx. */ | (0 << 4) /* AVL flag. */ \ - | (0 << 5) /* Data. */ | (0 << 6) \ - | (1 << 7) /* 4K granular. */) - .byte 0x00 /* Base 00xxxxxx. */ - - /* Compatibility segment. */ - .word 0xffff /* Limit xffff. */ - .word 0x0000 /* Base xxxx0000. */ - .byte 0x00 /* Base xx00xxxx. */ - .byte (0x8 /* Type 8. */ | (1 << 4) /* Code. */ \ - | (0 << 5) /* Ring 0. */ | (1 << 7) /* Present. */) - .byte (0xf /* Limit fxxxx. */ | (0 << 4) /* AVL flag. */ \ - | (0 << 5) /* 32-bit. */ | (1 << 6) /* 32-bit. */ \ - | (1 << 7) /* 4K granular. */) - .byte 0x00 /* Base 00xxxxxx. */ - -LOCAL(gdt_end): -#endif - -VARIABLE(grub_relocator64_end) diff --git a/thirdparty/grub-2.04/grub-core/lib/i386/relocator_asm.S b/thirdparty/grub-2.04/grub-core/lib/i386/relocator_asm.S deleted file mode 100644 index f273586fe..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/i386/relocator_asm.S +++ /dev/null @@ -1,80 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include - - .p2align 2 - -VARIABLE(grub_relocator_backward_start) - /* mov imm32, %eax */ - .byte 0xb8 -VARIABLE(grub_relocator_backward_dest) - .long 0 - movl %eax, %edi - - /* mov imm32, %eax */ - .byte 0xb8 -VARIABLE(grub_relocator_backward_src) - .long 0 - movl %eax, %esi - - /* mov imm32, %ecx */ - .byte 0xb9 -VARIABLE(grub_relocator_backward_chunk_size) - .long 0 - - add %ecx, %esi - add %ecx, %edi - - - /* Backward movsb is implicitly off-by-one. compensate that. */ - sub $1, %esi - sub $1, %edi - - /* Backward copy. */ - std - - rep - movsb -VARIABLE(grub_relocator_backward_end) - - -VARIABLE(grub_relocator_forward_start) - /* mov imm32, %eax */ - .byte 0xb8 -VARIABLE(grub_relocator_forward_dest) - .long 0 - movl %eax, %edi - - /* mov imm32, %rax */ - .byte 0xb8 -VARIABLE(grub_relocator_forward_src) - .long 0 - movl %eax, %esi - - /* mov imm32, %ecx */ - .byte 0xb9 -VARIABLE(grub_relocator_forward_chunk_size) - .long 0 - - /* Forward copy. */ - cld - rep - movsb -VARIABLE(grub_relocator_forward_end) diff --git a/thirdparty/grub-2.04/grub-core/lib/i386/relocator_common.S b/thirdparty/grub-2.04/grub-core/lib/i386/relocator_common.S deleted file mode 100644 index 03f427a03..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/i386/relocator_common.S +++ /dev/null @@ -1,113 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2009,2010 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - - -#include -#include - -#ifdef __x86_64__ -#define RAX %rax -#define RSI %rsi -#else -#define RAX %eax -#define RSI %esi -#endif - - .macro DISABLE_PAGING -#ifdef GRUB_MACHINE_IEEE1275 -#endif - - movl %cr0, %eax - andl $(~GRUB_MEMORY_CPU_CR0_PAGING_ON), %eax - movl %eax, %cr0 - .endm - - .macro PREAMBLE -LOCAL(base): - /* %rax contains now our new 'base'. */ - mov RAX, RSI - -#if defined (__APPLE__) && defined (__x86_64__) - leaq LOCAL(cont0) (%rip), RAX -#elif defined (__APPLE__) - LOCAL(cont0_offset) = LOCAL(cont0) - LOCAL(base) - add $LOCAL(cont0_offset), RAX -#else - add $(LOCAL(cont0) - LOCAL(base)), RAX -#endif - jmp *RAX -LOCAL(cont0): - .endm - - .macro RELOAD_GDT -#ifdef __APPLE__ - LOCAL(cont1_offset) = LOCAL(cont1) - LOCAL(base) - LOCAL(jump_vector_offset) = LOCAL(jump_vector) - LOCAL(base) - LOCAL(gdt_offset) = LOCAL(gdt) - LOCAL(base) - LOCAL(gdt_addr_offset) = LOCAL(gdt_addr) - LOCAL(base) - LOCAL(gdtdesc_offset) = LOCAL(gdtdesc) - LOCAL(base) - - lea LOCAL(cont1_offset) (RSI, 1), RAX - movl %eax, LOCAL(jump_vector_offset) (RSI, 1) - - lea LOCAL(gdt_offset) (RSI, 1), RAX - mov RAX, (LOCAL(gdt_addr_offset)) (RSI, 1) - - /* Switch to compatibility mode. */ - lgdt (LOCAL(gdtdesc_offset)) (RSI, 1) - - /* Update %cs. */ - ljmp *(LOCAL(jump_vector_offset)) (RSI, 1) - .p2align 4 -LOCAL(gdtdesc): - LOCAL(gdtsize) = LOCAL(gdt_end) - LOCAL(gdt) - .word LOCAL(gdtsize) -#else - lea (LOCAL(cont1) - LOCAL(base)) (RSI, 1), RAX - movl %eax, (LOCAL(jump_vector) - LOCAL(base)) (RSI, 1) - - lea (LOCAL(gdt) - LOCAL(base)) (RSI, 1), RAX - mov RAX, (LOCAL(gdt_addr) - LOCAL(base)) (RSI, 1) - - /* Switch to compatibility mode. */ - lgdt (LOCAL(gdtdesc) - LOCAL(base)) (RSI, 1) - - /* Update %cs. */ - ljmp *(LOCAL(jump_vector) - LOCAL(base)) (RSI, 1) - - .p2align 4 -LOCAL(gdtdesc): - .word LOCAL(gdt_end) - LOCAL(gdt) -#endif -LOCAL(gdt_addr): -#ifdef __x86_64__ - /* Filled by the code. */ - .quad 0 -#else - /* Filled by the code. */ - .long 0 -#endif - - .p2align 4 -LOCAL(jump_vector): - /* Jump location. Is filled by the code */ - .long 0 - .long CODE_SEGMENT - -LOCAL(cont1): - .endm diff --git a/thirdparty/grub-2.04/grub-core/lib/i386/relocator_common_c.c b/thirdparty/grub-2.04/grub-core/lib/i386/relocator_common_c.c deleted file mode 100644 index 7be609b73..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/i386/relocator_common_c.c +++ /dev/null @@ -1,109 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2009-2013 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include - -#include -#include -#include - -#include -#include - -extern grub_uint8_t grub_relocator_forward_start; -extern grub_uint8_t grub_relocator_forward_end; -extern grub_uint8_t grub_relocator_backward_start; -extern grub_uint8_t grub_relocator_backward_end; - -extern void *grub_relocator_backward_dest; -extern void *grub_relocator_backward_src; -extern grub_size_t grub_relocator_backward_chunk_size; - -extern void *grub_relocator_forward_dest; -extern void *grub_relocator_forward_src; -extern grub_size_t grub_relocator_forward_chunk_size; - -#define RELOCATOR_SIZEOF(x) (&grub_relocator##x##_end - &grub_relocator##x##_start) - -grub_size_t grub_relocator_align = 1; -grub_size_t grub_relocator_forward_size; -grub_size_t grub_relocator_backward_size; -#ifdef __x86_64__ -grub_size_t grub_relocator_jumper_size = 12; -#else -grub_size_t grub_relocator_jumper_size = 7; -#endif - -void -grub_cpu_relocator_init (void) -{ - grub_relocator_forward_size = RELOCATOR_SIZEOF (_forward); - grub_relocator_backward_size = RELOCATOR_SIZEOF (_backward); -} - -void -grub_cpu_relocator_jumper (void *rels, grub_addr_t addr) -{ - grub_uint8_t *ptr; - ptr = rels; -#ifdef __x86_64__ - /* movq imm64, %rax (for relocator) */ - *(grub_uint8_t *) ptr = 0x48; - ptr++; - *(grub_uint8_t *) ptr = 0xb8; - ptr++; - *(grub_uint64_t *) ptr = addr; - ptr += sizeof (grub_uint64_t); -#else - /* movl imm32, %eax (for relocator) */ - *(grub_uint8_t *) ptr = 0xb8; - ptr++; - *(grub_uint32_t *) ptr = addr; - ptr += sizeof (grub_uint32_t); -#endif - /* jmp $eax/$rax */ - *(grub_uint8_t *) ptr = 0xff; - ptr++; - *(grub_uint8_t *) ptr = 0xe0; - ptr++; -} - -void -grub_cpu_relocator_backward (void *ptr, void *src, void *dest, - grub_size_t size) -{ - grub_relocator_backward_dest = dest; - grub_relocator_backward_src = src; - grub_relocator_backward_chunk_size = size; - - grub_memmove (ptr, - &grub_relocator_backward_start, RELOCATOR_SIZEOF (_backward)); -} - -void -grub_cpu_relocator_forward (void *ptr, void *src, void *dest, - grub_size_t size) -{ - grub_relocator_forward_dest = dest; - grub_relocator_forward_src = src; - grub_relocator_forward_chunk_size = size; - - grub_memmove (ptr, - &grub_relocator_forward_start, RELOCATOR_SIZEOF (_forward)); -} diff --git a/thirdparty/grub-2.04/grub-core/lib/i386/setjmp.S b/thirdparty/grub-2.04/grub-core/lib/i386/setjmp.S deleted file mode 100644 index 0b0740f11..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/i386/setjmp.S +++ /dev/null @@ -1,59 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2003,2007 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include - - .file "setjmp.S" - -GRUB_MOD_LICENSE "GPLv3+" - - .text - -/* - * int grub_setjmp (grub_jmp_buf env) - */ -FUNCTION(grub_setjmp) - movl %ebx, 0(%eax) /* EBX */ - movl %esi, 4(%eax) /* ESI */ - movl %edi, 8(%eax) /* EDI */ - movl %ebp, 12(%eax) /* EBP */ - popl %ecx - movl %esp, 16(%eax) /* ESP */ - movl %ecx, 20(%eax) /* EIP */ - xorl %eax, %eax - jmp *%ecx - - -/* - * int grub_longjmp (grub_jmp_buf env, int val) - */ -FUNCTION(grub_longjmp) - movl 0(%eax), %ebx - movl 4(%eax), %esi - movl 8(%eax), %edi - movl 12(%eax), %ebp - movl 16(%eax), %esp - movl 20(%eax), %ecx - - movl %edx, %eax - testl %eax, %eax - jnz 1f - incl %eax -1: jmp *%ecx - diff --git a/thirdparty/grub-2.04/grub-core/lib/i386/xen/relocator.S b/thirdparty/grub-2.04/grub-core/lib/i386/xen/relocator.S deleted file mode 100644 index 96e51b59a..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/i386/xen/relocator.S +++ /dev/null @@ -1,165 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2013 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include - - .p2align 4 /* force 16-byte alignment */ - -VARIABLE(grub_relocator_xen_remap_start) -LOCAL(base): - /* Remap the remapper to it's new address. */ - /* mov imm32, %ebx - %ebx: new virtual address of remapper */ - .byte 0xbb -VARIABLE(grub_relocator_xen_remapper_virt) - .long 0 - - /* mov imm32, %ecx - %ecx: low part of page table entry */ - .byte 0xb9 -VARIABLE(grub_relocator_xen_remapper_map) - .long 0 - - /* mov imm32, %edx - %edx: high part of page table entry */ - .byte 0xba -VARIABLE(grub_relocator_xen_remapper_map_high) - .long 0 - - movl %ebx, %ebp /* %ebx is clobbered by hypercall */ - - movl $UVMF_INVLPG, %esi /* esi: flags (inv. single entry) */ - movl $__HYPERVISOR_update_va_mapping, %eax - int $0x82 - - movl %ebp, %ebx - addl $(LOCAL(cont) - LOCAL(base)), %ebx - - jmp *%ebx /* Continue with new virtual address */ - -LOCAL(cont): - /* Modify mappings of new page tables to be read-only. */ - /* mov imm32, %eax */ - .byte 0xb8 -VARIABLE(grub_relocator_xen_paging_areas_addr) - .long 0 - movl %eax, %ebx -1: - movl 0(%ebx), %ebp /* Get start pfn of the current area */ - movl GRUB_TARGET_SIZEOF_LONG(%ebx), %ecx /* Get # of pg tables */ - testl %ecx, %ecx /* 0 -> last area reached */ - jz 3f - addl $(2 * GRUB_TARGET_SIZEOF_LONG), %ebx - movl %ebx, %esp /* Save current area pointer */ - -2: - movl %ecx, %edi - /* mov imm32, %eax */ - .byte 0xb8 -VARIABLE(grub_relocator_xen_mfn_list) - .long 0 - movl 0(%eax, %ebp, 4), %ecx /* mfn */ - movl %ebp, %ebx - shll $PAGE_SHIFT, %ebx /* virtual address (1:1 mapping) */ - movl %ecx, %edx - shll $PAGE_SHIFT, %ecx /* prepare pte low part */ - shrl $(32 - PAGE_SHIFT), %edx /* pte high part */ - orl $(GRUB_PAGE_PRESENT | GRUB_PAGE_USER), %ecx /* pte low */ - movl $UVMF_INVLPG, %esi - movl $__HYPERVISOR_update_va_mapping, %eax - int $0x82 /* parameters: eax, ebx, ecx, edx, esi */ - - incl %ebp /* next pfn */ - movl %edi, %ecx - - loop 2b - - mov %esp, %ebx /* restore area poniter */ - jmp 1b - -3: - /* Switch page tables: pin new L3 pt, load cr3, unpin old L3. */ - /* mov imm32, %ebx */ - .byte 0xbb -VARIABLE(grub_relocator_xen_mmu_op_addr) - .long 0 - movl $3, %ecx /* 3 mmu ops */ - movl $0, %edx /* pdone (not used) */ - movl $DOMID_SELF, %esi - movl $__HYPERVISOR_mmuext_op, %eax - int $0x82 - - /* Continue in virtual kernel mapping. */ - /* mov imm32, %eax */ - .byte 0xb8 -VARIABLE(grub_relocator_xen_remap_continue) - .long 0 - - jmp *%eax - -VARIABLE(grub_relocator_xen_paging_areas) - .long 0, 0, 0, 0, 0, 0, 0, 0 - -VARIABLE(grub_relocator_xen_mmu_op) - .space 256 - -VARIABLE(grub_relocator_xen_remap_end) - - -VARIABLE(grub_relocator_xen_start) - /* Unmap old remapper area. */ - /* mov imm32, %eax */ - .byte 0xb8 -VARIABLE(grub_relocator_xen_remapper_virt2) - .long 0 - - movl %eax, %ebx - - xorl %ecx, %ecx /* Invalid pte */ - xorl %edx, %edx - - movl $UVMF_INVLPG, %esi - movl $__HYPERVISOR_update_va_mapping, %eax - int $0x82 - - /* Prepare registers for starting kernel. */ - /* mov imm32, %eax */ - .byte 0xb8 -VARIABLE(grub_relocator_xen_stack) - .long 0 - - movl %eax, %esp - - /* mov imm32, %eax */ - .byte 0xb8 -VARIABLE(grub_relocator_xen_start_info) - .long 0 - - movl %eax, %esi - - cld - - /* mov imm32, %eax */ - .byte 0xb8 -VARIABLE(grub_relocator_xen_entry_point) - .long 0 - - /* Now start the new kernel. */ - jmp *%eax - -VARIABLE(grub_relocator_xen_end) diff --git a/thirdparty/grub-2.04/grub-core/lib/ia64/longjmp.S b/thirdparty/grub-2.04/grub-core/lib/ia64/longjmp.S deleted file mode 100644 index 38afb2243..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/ia64/longjmp.S +++ /dev/null @@ -1,162 +0,0 @@ -/* Copyright (C) 1999, 2000, 2001, 2002, 2008 Free Software Foundation, Inc. - Contributed by David Mosberger-Tang . - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, write to the Free - Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA - 02111-1307 USA. - - Note that __sigsetjmp() did NOT flush the register stack. Instead, - we do it here since __longjmp() is usually much less frequently - invoked than __sigsetjmp(). The only difficulty is that __sigsetjmp() - didn't (and wouldn't be able to) save ar.rnat either. This is a problem - because if we're not careful, we could end up loading random NaT bits. - There are two cases: - - (i) ar.bsp < ia64_rse_rnat_addr(jmpbuf.ar_bsp) - ar.rnat contains the desired bits---preserve ar.rnat - across loadrs and write to ar.bspstore - - (ii) ar.bsp >= ia64_rse_rnat_addr(jmpbuf.ar_bsp) - The desired ar.rnat is stored in - ia64_rse_rnat_addr(jmpbuf.ar_bsp). Load those - bits into ar.rnat after setting ar.bspstore. */ - - - -# define pPos p6 /* is rotate count positive? */ -# define pNeg p7 /* is rotate count negative? */ - - - /* __longjmp(__jmp_buf buf, int val) */ - - .text - - .proc EXT_C(grub_longjmp) -FUNCTION(grub_longjmp) - alloc r8=ar.pfs,2,1,0,0 - mov r27=ar.rsc - add r2=0x98,in0 // r2 <- &jmpbuf.orig_jmp_buf_addr - ;; - ld8 r8=[r2],-16 // r8 <- orig_jmp_buf_addr - mov r10=ar.bsp - and r11=~0x3,r27 // clear ar.rsc.mode - ;; - flushrs // flush dirty regs to backing store (must be first in insn grp) - ld8 r23=[r2],8 // r23 <- jmpbuf.ar_bsp - sub r8=r8,in0 // r8 <- &orig_jmpbuf - &jmpbuf - ;; - ld8 r25=[r2] // r25 <- jmpbuf.ar_unat - extr.u r8=r8,3,6 // r8 <- (&orig_jmpbuf - &jmpbuf)/8 & 0x3f - ;; - cmp.lt pNeg,pPos=r8,r0 - mov r2=in0 - ;; -(pPos) mov r16=r8 -(pNeg) add r16=64,r8 -(pPos) sub r17=64,r8 -(pNeg) sub r17=r0,r8 - ;; - mov ar.rsc=r11 // put RSE in enforced lazy mode - shr.u r8=r25,r16 - add r3=8,in0 // r3 <- &jmpbuf.r1 - shl r9=r25,r17 - ;; - or r25=r8,r9 - ;; - mov r26=ar.rnat - mov ar.unat=r25 // setup ar.unat (NaT bits for r1, r4-r7, and r12) - ;; - ld8.fill.nta sp=[r2],16 // r12 (sp) - ld8.fill.nta gp=[r3],16 // r1 (gp) - dep r11=-1,r23,3,6 // r11 <- ia64_rse_rnat_addr(jmpbuf.ar_bsp) - ;; - ld8.nta r16=[r2],16 // caller's unat - ld8.nta r17=[r3],16 // fpsr - ;; - ld8.fill.nta r4=[r2],16 // r4 - ld8.fill.nta r5=[r3],16 // r5 (gp) - cmp.geu p8,p0=r10,r11 // p8 <- (ar.bsp >= jmpbuf.ar_bsp) - ;; - ld8.fill.nta r6=[r2],16 // r6 - ld8.fill.nta r7=[r3],16 // r7 - ;; - mov ar.unat=r16 // restore caller's unat - mov ar.fpsr=r17 // restore fpsr - ;; - ld8.nta r16=[r2],16 // b0 - ld8.nta r17=[r3],16 // b1 - ;; -(p8) ld8 r26=[r11] // r26 <- *ia64_rse_rnat_addr(jmpbuf.ar_bsp) - mov ar.bspstore=r23 // restore ar.bspstore - ;; - ld8.nta r18=[r2],16 // b2 - ld8.nta r19=[r3],16 // b3 - ;; - ld8.nta r20=[r2],16 // b4 - ld8.nta r21=[r3],16 // b5 - ;; - ld8.nta r11=[r2],16 // ar.pfs - ld8.nta r22=[r3],56 // ar.lc - ;; - ld8.nta r24=[r2],32 // pr - mov b0=r16 - ;; - ldf.fill.nta f2=[r2],32 - ldf.fill.nta f3=[r3],32 - mov b1=r17 - ;; - ldf.fill.nta f4=[r2],32 - ldf.fill.nta f5=[r3],32 - mov b2=r18 - ;; - ldf.fill.nta f16=[r2],32 - ldf.fill.nta f17=[r3],32 - mov b3=r19 - ;; - ldf.fill.nta f18=[r2],32 - ldf.fill.nta f19=[r3],32 - mov b4=r20 - ;; - ldf.fill.nta f20=[r2],32 - ldf.fill.nta f21=[r3],32 - mov b5=r21 - ;; - ldf.fill.nta f22=[r2],32 - ldf.fill.nta f23=[r3],32 - mov ar.lc=r22 - ;; - ldf.fill.nta f24=[r2],32 - ldf.fill.nta f25=[r3],32 - cmp.eq p8,p9=0,in1 - ;; - ldf.fill.nta f26=[r2],32 - ldf.fill.nta f27=[r3],32 - mov ar.pfs=r11 - ;; - ldf.fill.nta f28=[r2],32 - ldf.fill.nta f29=[r3],32 - ;; - ldf.fill.nta f30=[r2] - ldf.fill.nta f31=[r3] -(p8) mov r8=1 - - mov ar.rnat=r26 // restore ar.rnat - ;; - mov ar.rsc=r27 // restore ar.rsc -(p9) mov r8=in1 - - invala // virt. -> phys. regnum mapping may change - mov pr=r24,-1 - br.ret.dptk.few rp - .endp EXT_C(grub_longjmp) diff --git a/thirdparty/grub-2.04/grub-core/lib/ia64/setjmp.S b/thirdparty/grub-2.04/grub-core/lib/ia64/setjmp.S deleted file mode 100644 index a0382d83d..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/ia64/setjmp.S +++ /dev/null @@ -1,177 +0,0 @@ -/* Copyright (C) 1999, 2000, 2001, 2002, 2008 Free Software Foundation, Inc. - Contributed by David Mosberger-Tang . - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, write to the Free - Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA - 02111-1307 USA. - - The layout of the jmp_buf is as follows. This is subject to change - and user-code should never depend on the particular layout of - jmp_buf! - - - offset: description: - ------- ------------ - 0x000 stack pointer (r12) ; unchangeable (see _JMPBUF_UNWINDS) - 0x008 r1 (gp) - 0x010 caller's unat - 0x018 fpsr - 0x020 r4 - 0x028 r5 - 0x030 r6 - 0x038 r7 - 0x040 rp (b0) - 0x048 b1 - 0x050 b2 - 0x058 b3 - 0x060 b4 - 0x068 b5 - 0x070 ar.pfs - 0x078 ar.lc - 0x080 pr - 0x088 ar.bsp ; unchangeable (see __longjmp.S) - 0x090 ar.unat - 0x098 &__jmp_buf ; address of the jmpbuf (needed to locate NaT bits in unat) - 0x0a0 f2 - 0x0b0 f3 - 0x0c0 f4 - 0x0d0 f5 - 0x0e0 f16 - 0x0f0 f17 - 0x100 f18 - 0x110 f19 - 0x120 f20 - 0x130 f21 - 0x130 f22 - 0x140 f23 - 0x150 f24 - 0x160 f25 - 0x170 f26 - 0x180 f27 - 0x190 f28 - 0x1a0 f29 - 0x1b0 f30 - 0x1c0 f31 */ - -#include -#include - - .file "setjmp.S" - -GRUB_MOD_LICENSE "GPLv2+" - - /* The following two entry points are the traditional entry points: */ - - .text - - .proc EXT_C(grub_setjmp) -FUNCTION(grub_setjmp) - alloc r8=ar.pfs,2,0,0,0 - mov in1=1 - br.cond.sptk.many __sigsetjmp - .endp EXT_C(grub_setjmp) - - /* __sigsetjmp(__jmp_buf buf, int savemask) */ - - .proc __sigsetjmp -__sigsetjmp: - //.prologue ASM_UNW_PRLG_RP|ASM_UNW_PRLG_PFS, ASM_UNW_PRLG_GRSAVE(2) - alloc loc1=ar.pfs,2,2,2,0 - mov r16=ar.unat - ;; - mov r17=ar.fpsr - mov r2=in0 - add r3=8,in0 - ;; - st8.spill.nta [r2]=sp,16 // r12 (sp) - st8.spill.nta [r3]=gp,16 // r1 (gp) - ;; - st8.nta [r2]=r16,16 // save caller's unat - st8.nta [r3]=r17,16 // save fpsr - add r8=0xa0,in0 - ;; - st8.spill.nta [r2]=r4,16 // r4 - st8.spill.nta [r3]=r5,16 // r5 - add r9=0xb0,in0 - ;; - stf.spill.nta [r8]=f2,32 - stf.spill.nta [r9]=f3,32 - mov loc0=rp - .body - ;; - stf.spill.nta [r8]=f4,32 - stf.spill.nta [r9]=f5,32 - mov r17=b1 - ;; - stf.spill.nta [r8]=f16,32 - stf.spill.nta [r9]=f17,32 - mov r18=b2 - ;; - stf.spill.nta [r8]=f18,32 - stf.spill.nta [r9]=f19,32 - mov r19=b3 - ;; - stf.spill.nta [r8]=f20,32 - stf.spill.nta [r9]=f21,32 - mov r20=b4 - ;; - stf.spill.nta [r8]=f22,32 - stf.spill.nta [r9]=f23,32 - mov r21=b5 - ;; - stf.spill.nta [r8]=f24,32 - stf.spill.nta [r9]=f25,32 - mov r22=ar.lc - ;; - stf.spill.nta [r8]=f26,32 - stf.spill.nta [r9]=f27,32 - mov r24=pr - ;; - stf.spill.nta [r8]=f28,32 - stf.spill.nta [r9]=f29,32 - ;; - stf.spill.nta [r8]=f30 - stf.spill.nta [r9]=f31 - - st8.spill.nta [r2]=r6,16 // r6 - st8.spill.nta [r3]=r7,16 // r7 - ;; - mov r23=ar.bsp - mov r25=ar.unat - mov out0=in0 - - st8.nta [r2]=loc0,16 // b0 - st8.nta [r3]=r17,16 // b1 - mov out1=in1 - ;; - st8.nta [r2]=r18,16 // b2 - st8.nta [r3]=r19,16 // b3 - ;; - st8.nta [r2]=r20,16 // b4 - st8.nta [r3]=r21,16 // b5 - ;; - st8.nta [r2]=loc1,16 // ar.pfs - st8.nta [r3]=r22,16 // ar.lc - ;; - st8.nta [r2]=r24,16 // pr - st8.nta [r3]=r23,16 // ar.bsp - ;; - st8.nta [r2]=r25 // ar.unat - st8.nta [r3]=in0 // &__jmp_buf - mov r8=0 - mov rp=loc0 - mov ar.pfs=loc1 - br.ret.sptk.many rp - - .endp __sigsetjmp diff --git a/thirdparty/grub-2.04/grub-core/lib/ieee1275/cmos.c b/thirdparty/grub-2.04/grub-core/lib/ieee1275/cmos.c deleted file mode 100644 index 328d70a0c..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/ieee1275/cmos.c +++ /dev/null @@ -1,77 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2011 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include - -volatile grub_uint8_t *grub_cmos_port = 0; - -/* Helper for grub_cmos_find_port. */ -static int -grub_cmos_find_port_iter (struct grub_ieee1275_devalias *alias) -{ - grub_ieee1275_phandle_t dev; - grub_uint32_t addr[2]; - grub_ssize_t actual; - /* Enough to check if it's "m5819" */ - char compat[100]; - if (grub_ieee1275_finddevice (alias->path, &dev)) - return 0; - if (grub_ieee1275_get_property (dev, "compatible", compat, sizeof (compat), - 0)) - return 0; - if (grub_strcmp (compat, "m5819") != 0) - return 0; - if (grub_ieee1275_get_integer_property (dev, "address", - addr, sizeof (addr), &actual)) - return 0; - if (actual == 4) - { - grub_cmos_port = (volatile grub_uint8_t *) (grub_addr_t) addr[0]; - return 1; - } - -#if GRUB_CPU_SIZEOF_VOID_P == 8 - if (actual == 8) - { - grub_cmos_port = (volatile grub_uint8_t *) - ((((grub_addr_t) addr[0]) << 32) | addr[1]); - return 1; - } -#else - if (actual == 8 && addr[0] == 0) - { - grub_cmos_port = (volatile grub_uint8_t *) addr[1]; - return 1; - } -#endif - return 0; -} - -grub_err_t -grub_cmos_find_port (void) -{ - grub_ieee1275_devices_iterate (grub_cmos_find_port_iter); - if (!grub_cmos_port) - return grub_error (GRUB_ERR_IO, "no cmos found"); - - return GRUB_ERR_NONE; -} diff --git a/thirdparty/grub-2.04/grub-core/lib/ieee1275/datetime.c b/thirdparty/grub-2.04/grub-core/lib/ieee1275/datetime.c deleted file mode 100644 index b81fba2ed..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/ieee1275/datetime.c +++ /dev/null @@ -1,156 +0,0 @@ -/* kern/cmos_datetime.c - CMOS datetime function. - * - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2008,2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#if defined (__powerpc__) || defined (__sparc__) -#include -#endif - -GRUB_MOD_LICENSE ("GPLv3+"); - -static char *rtc = 0; -static int no_ieee1275_rtc = 0; - -/* Helper for find_rtc. */ -static int -find_rtc_iter (struct grub_ieee1275_devalias *alias) -{ - if (grub_strcmp (alias->type, "rtc") == 0) - { - grub_dprintf ("datetime", "Found RTC %s\n", alias->path); - rtc = grub_strdup (alias->path); - return 1; - } - return 0; -} - -static void -find_rtc (void) -{ - grub_ieee1275_devices_iterate (find_rtc_iter); - if (!rtc) - no_ieee1275_rtc = 1; -} - -grub_err_t -grub_get_datetime (struct grub_datetime *datetime) -{ - struct get_time_args - { - struct grub_ieee1275_common_hdr common; - grub_ieee1275_cell_t method; - grub_ieee1275_cell_t device; - grub_ieee1275_cell_t catch_result; - grub_ieee1275_cell_t year; - grub_ieee1275_cell_t month; - grub_ieee1275_cell_t day; - grub_ieee1275_cell_t hour; - grub_ieee1275_cell_t minute; - grub_ieee1275_cell_t second; - } - args; - int status; - grub_ieee1275_ihandle_t ihandle; - - if (no_ieee1275_rtc) - return grub_get_datetime_cmos (datetime); - if (!rtc) - find_rtc (); - if (!rtc) - return grub_get_datetime_cmos (datetime); - - status = grub_ieee1275_open (rtc, &ihandle); - if (status == -1) - return grub_error (GRUB_ERR_IO, "couldn't open RTC"); - - INIT_IEEE1275_COMMON (&args.common, "call-method", 2, 7); - args.device = (grub_ieee1275_cell_t) ihandle; - args.method = (grub_ieee1275_cell_t) "get-time"; - - status = IEEE1275_CALL_ENTRY_FN (&args); - - grub_ieee1275_close (ihandle); - - if (status == -1 || args.catch_result) - return grub_error (GRUB_ERR_IO, "get-time failed"); - - datetime->year = args.year; - datetime->month = args.month; - datetime->day = args.day + 1; - datetime->hour = args.hour; - datetime->minute = args.minute; - datetime->second = args.second; - - return GRUB_ERR_NONE; -} - -grub_err_t -grub_set_datetime (struct grub_datetime *datetime) -{ - struct set_time_args - { - struct grub_ieee1275_common_hdr common; - grub_ieee1275_cell_t method; - grub_ieee1275_cell_t device; - grub_ieee1275_cell_t year; - grub_ieee1275_cell_t month; - grub_ieee1275_cell_t day; - grub_ieee1275_cell_t hour; - grub_ieee1275_cell_t minute; - grub_ieee1275_cell_t second; - grub_ieee1275_cell_t catch_result; - } - args; - int status; - grub_ieee1275_ihandle_t ihandle; - - if (no_ieee1275_rtc) - return grub_set_datetime_cmos (datetime); - if (!rtc) - find_rtc (); - if (!rtc) - return grub_set_datetime_cmos (datetime); - - status = grub_ieee1275_open (rtc, &ihandle); - if (status == -1) - return grub_error (GRUB_ERR_IO, "couldn't open RTC"); - - INIT_IEEE1275_COMMON (&args.common, "call-method", 8, 1); - args.device = (grub_ieee1275_cell_t) ihandle; - args.method = (grub_ieee1275_cell_t) "set-time"; - - args.year = datetime->year; - args.month = datetime->month; - args.day = datetime->day - 1; - args.hour = datetime->hour; - args.minute = datetime->minute; - args.second = datetime->second; - - status = IEEE1275_CALL_ENTRY_FN (&args); - - grub_ieee1275_close (ihandle); - - if (status == -1 || args.catch_result) - return grub_error (GRUB_ERR_IO, "set-time failed"); - - return GRUB_ERR_NONE; -} diff --git a/thirdparty/grub-2.04/grub-core/lib/ieee1275/halt.c b/thirdparty/grub-2.04/grub-core/lib/ieee1275/halt.c deleted file mode 100644 index 8fc16d243..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/ieee1275/halt.c +++ /dev/null @@ -1,33 +0,0 @@ -/* openfw.c -- Open firmware support functions. */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2003,2004,2005,2007,2008,2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include - -void -grub_halt (void) -{ - /* Not standardized. We try three known commands. */ - - grub_ieee1275_interpret ("power-off", 0); - grub_ieee1275_interpret ("shut-down", 0); - grub_ieee1275_interpret ("poweroff", 0); - - while (1); -} diff --git a/thirdparty/grub-2.04/grub-core/lib/ieee1275/reboot.c b/thirdparty/grub-2.04/grub-core/lib/ieee1275/reboot.c deleted file mode 100644 index 91c8779f2..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/ieee1275/reboot.c +++ /dev/null @@ -1,27 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2011 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include - -void -grub_reboot (void) -{ - grub_ieee1275_interpret ("reset-all", 0); - for (;;) ; -} diff --git a/thirdparty/grub-2.04/grub-core/lib/ieee1275/relocator.c b/thirdparty/grub-2.04/grub-core/lib/ieee1275/relocator.c deleted file mode 100644 index c6dd8facb..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/ieee1275/relocator.c +++ /dev/null @@ -1,114 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2010 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include - -/* Helper for grub_relocator_firmware_get_max_events. */ -static int -count (grub_uint64_t addr __attribute__ ((unused)), - grub_uint64_t len __attribute__ ((unused)), - grub_memory_type_t type __attribute__ ((unused)), void *data) -{ - int *counter = data; - - (*counter)++; - return 0; -} - -unsigned -grub_relocator_firmware_get_max_events (void) -{ - int counter = 0; - - if (grub_ieee1275_test_flag (GRUB_IEEE1275_FLAG_FORCE_CLAIM)) - return 0; - grub_machine_mmap_iterate (count, &counter); - return 2 * counter; -} - -/* Context for grub_relocator_firmware_fill_events. */ -struct grub_relocator_firmware_fill_events_ctx -{ - struct grub_relocator_mmap_event *events; - int counter; -}; - -/* Helper for grub_relocator_firmware_fill_events. */ -static int -grub_relocator_firmware_fill_events_iter (grub_uint64_t addr, - grub_uint64_t len, - grub_memory_type_t type, void *data) -{ - struct grub_relocator_firmware_fill_events_ctx *ctx = data; - - if (type != GRUB_MEMORY_AVAILABLE) - return 0; - - if (grub_ieee1275_test_flag (GRUB_IEEE1275_FLAG_NO_PRE1_5M_CLAIM)) - { - if (addr + len <= 0x180000) - return 0; - - if (addr < 0x180000) - { - len = addr + len - 0x180000; - addr = 0x180000; - } - } - - ctx->events[ctx->counter].type = REG_FIRMWARE_START; - ctx->events[ctx->counter].pos = addr; - ctx->counter++; - ctx->events[ctx->counter].type = REG_FIRMWARE_END; - ctx->events[ctx->counter].pos = addr + len; - ctx->counter++; - - return 0; -} - -unsigned -grub_relocator_firmware_fill_events (struct grub_relocator_mmap_event *events) -{ - struct grub_relocator_firmware_fill_events_ctx ctx = { - .events = events, - .counter = 0 - }; - - if (grub_ieee1275_test_flag (GRUB_IEEE1275_FLAG_FORCE_CLAIM)) - return 0; - grub_machine_mmap_iterate (grub_relocator_firmware_fill_events_iter, &ctx); - return ctx.counter; -} - -int -grub_relocator_firmware_alloc_region (grub_addr_t start, grub_size_t size) -{ - grub_err_t err; - err = grub_claimmap (start, size); - grub_errno = 0; - return (err == 0); -} - -void -grub_relocator_firmware_free_region (grub_addr_t start, grub_size_t size) -{ - grub_ieee1275_release (start, size); -} diff --git a/thirdparty/grub-2.04/grub-core/lib/legacy_parse.c b/thirdparty/grub-2.04/grub-core/lib/legacy_parse.c deleted file mode 100644 index ef56150ac..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/legacy_parse.c +++ /dev/null @@ -1,875 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 1999,2000,2001,2002,2003,2004,2010,2012 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include - -#pragma GCC diagnostic ignored "-Wformat-nonliteral" - -struct legacy_command -{ - const char *name; - const char *map; - const char *suffix; - unsigned suffixarg; - unsigned argc; - enum arg_type { - TYPE_VERBATIM, - TYPE_FORCE_OPTION, - TYPE_NOAPM_OPTION, - TYPE_TYPE_OR_NOMEM_OPTION, - TYPE_OPTION, - TYPE_FILE, - TYPE_FILE_NO_CONSUME, - TYPE_PARTITION, - TYPE_BOOL, - TYPE_INT, - TYPE_REST_VERBATIM, - TYPE_VBE_MODE, - TYPE_WITH_CONFIGFILE_OPTION - } argt[4]; - enum { - FLAG_IGNORE_REST = 0x001, - FLAG_FALLBACK_AVAILABLE = 0x004, - FLAG_FALLBACK = 0x008, - FLAG_COLOR_INVERT = 0x010, - FLAG_NO_MENUENTRY = 0x020, - FLAG_MENUENTRY_ONLY = 0x040, - FLAG_TERMINAL = 0x080, - FLAG_TITLE = 0x100, - } flags; - const char *shortdesc; - const char *longdesc; -}; - -/* Help texts are kept here mostly for reference. They are never shown. So - no need to gettextize. - */ -static struct legacy_command legacy_commands[] = - { - /* FIXME: background unsupported. */ - {"blocklist", "blocklist '%s'\n", NULL, 0, 1, {TYPE_FILE}, 0, "FILE", - "Print the blocklist notation of the file FILE."}, - {"boot", "boot\n", NULL, 0, 0, {}, 0, 0, - "Boot the OS/chain-loader which has been loaded."}, - {"bootp", "net_bootp; net_ls_addr; echo $\"" N_("Default server is ${net_default_server}") "\"; if [ x%s = x--with-configfile ]; then " - "if net_get_dhcp_option configfile_name pxe 150 string; then " - "configfile $configfile_name; fi; fi\n", NULL, 0, 1, - {TYPE_WITH_CONFIGFILE_OPTION}, FLAG_IGNORE_REST, "[--with-configfile]", - "Initialize a network device via BOOTP. If the option `--with-configfile'" - " is given, try to load a configuration file specified by the 150 vendor" - " tag."}, - /* FIXME: border unsupported. */ - {"cat", "cat '%s'\n", NULL, 0, 1, {TYPE_FILE}, 0, "FILE", - "Print the contents of the file FILE."}, - {"chainloader", "chainloader %s '%s'\n", NULL, 0, - 2, {TYPE_FORCE_OPTION, TYPE_FILE}, 0, "[--force] FILE", - "Load the chain-loader FILE. If --force is specified, then load it" - " forcibly, whether the boot loader signature is present or not."}, - {"clear", "clear\n", NULL, 0, 0, {}, 0, 0, - "Clear the screen."}, - {"cmp", "cmp '%s' '%s'\n", NULL, 0, - 2, {TYPE_FILE, TYPE_FILE}, FLAG_IGNORE_REST, "FILE1 FILE2", - "Compare the file FILE1 with the FILE2 and inform the different values" - " if any."}, - {"color", "set color_normal='%s'; set color_highlight='%s'\n", NULL, 0, - 2, {TYPE_VERBATIM, TYPE_VERBATIM}, - FLAG_IGNORE_REST | FLAG_FALLBACK_AVAILABLE, "NORMAL [HIGHLIGHT]", - "Change the menu colors. The color NORMAL is used for most" - " lines in the menu, and the color HIGHLIGHT is used to highlight the" - " line where the cursor points. If you omit HIGHLIGHT, then the" - " inverted color of NORMAL is used for the highlighted line." - " The format of a color is \"FG/BG\". FG and BG are symbolic color names." - " A symbolic color name must be one of these: black, blue, green," - " cyan, red, magenta, brown, light-gray, dark-gray, light-blue," - " light-green, light-cyan, light-red, light-magenta, yellow and white." - " But only the first eight names can be used for BG. You can prefix" - " \"blink-\" to FG if you want a blinking foreground color."}, - {"color", "set color_normal='%s'; set color_highlight='%s'\n", NULL, 0, - 1, {TYPE_VERBATIM}, - FLAG_IGNORE_REST | FLAG_FALLBACK | FLAG_COLOR_INVERT, NULL, NULL}, - {"configfile", "legacy_configfile '%s'\n", NULL, 0, 1, {TYPE_FILE}, - 0, "FILE", "Load FILE as the configuration file."}, - {"debug", - "if [ -z \"$debug\" ]; then set debug=all; else set debug=; fi\n", NULL, 0, - 0, {}, 0, 0, "Turn on/off the debug mode."}, - {"default", - "set default='%s'; if [ x\"$default\" = xsaved ]; then load_env; " - "set default=\"$saved_entry\"; fi\n", NULL, 0, 1, {TYPE_VERBATIM}, 0, - "[NUM | `saved']", - "Set the default entry to entry number NUM (if not specified, it is" - " 0, the first entry) or the entry number saved by savedefault."}, - {"dhcp", "net_bootp; net_ls_addr; if [ x%s = x--with-configfile ]; then " - "if net_get_dhcp_option configfile_name pxe 150 string; then " - "configfile $configfile_name; fi; fi\n", NULL, 0, 1, - {TYPE_WITH_CONFIGFILE_OPTION}, FLAG_IGNORE_REST, "[--with-configfile]", - "Initialize a network device via BOOTP. If the option `--with-configfile'" - " is given, try to load a configuration file specified by the 150 vendor" - " tag."}, - {"displayapm", "lsapm\n", NULL, 0, 0, {}, 0, 0, - "Display APM BIOS information."}, - {"displaymem", "lsmmap\n", NULL, 0, 0, {}, 0, 0, - "Display what GRUB thinks the system address space map of the" - " machine is, including all regions of physical RAM installed."}, - /* FIXME: device and efimap unsupported. */ - /* NOTE: embed unsupported. */ - {"fallback", "set fallback='%s'\n", NULL, 0, - 1, {TYPE_VERBATIM}, 0, "NUM...", - "Go into unattended boot mode: if the default boot entry has any" - " errors, instead of waiting for the user to do anything, it" - " immediately starts over using the NUM entry (same numbering as the" - " `default' command). This obviously won't help if the machine" - " was rebooted by a kernel that GRUB loaded."}, - {"find", "search -f '%s'\n", NULL, 0, 1, {TYPE_FILE}, 0, "FILENAME", - "Search for the filename FILENAME in all of partitions and print the list of" - " the devices which contain the file."}, - /* FIXME: findiso unsupported. */ - /* FIXME: foreground unsupported. */ - /* FIXME: fstest unsupported. */ - /* NOTE: The obsolete C/H/S geometry isn't shown anymore. */ - {"geometry", "insmod regexp; ls -l (%s*)\n", NULL, 0, 1, {TYPE_VERBATIM}, 0, "DRIVE", - "Print the information for a drive DRIVE. "}, - {"halt", "halt %s\n", NULL, 0, 1, {TYPE_NOAPM_OPTION}, 0, "[--no-apm]", - "Halt your system. If APM is available on it, turn off the power using" - " the APM BIOS, unless you specify the option `--no-apm'."}, - /* FIXME: help unsupported. */ /* NUL_TERMINATE */ - {"hiddenmenu", NULL, - "if sleep -i $timeout; then timeout=0; else timeout=-1; fi\n", 0, - 0, {}, 0, "", "Hide the menu."}, - {"hide", "parttool '%s' hidden+\n", NULL, 0, 1, {TYPE_PARTITION}, - 0, "PARTITION", - "Hide PARTITION by setting the \"hidden\" bit in" - " its partition type code."}, - /* FIXME: ifconfig unsupported. */ - /* FIXME: impsprobe unsupported. */ - {"initrd", "legacy_initrd '%s' %s\n", NULL, 0, 2, {TYPE_FILE_NO_CONSUME, - TYPE_REST_VERBATIM}, 0, - "FILE [ARG ...]", - "Load an initial ramdisk FILE for a Linux format boot image and set the" - " appropriate parameters in the Linux setup area in memory."}, - /* NOTE: install unsupported. */ - /* FIXME: ioprobe unsupported. */ - /* FIXME: really support --no-mem-option. */ - {"kernel", "legacy_kernel %s %s '%s' %s\n", NULL, 0, - 4, {TYPE_TYPE_OR_NOMEM_OPTION, TYPE_TYPE_OR_NOMEM_OPTION, - TYPE_FILE_NO_CONSUME, TYPE_REST_VERBATIM}, 0, - "[--no-mem-option] [--type=TYPE] FILE [ARG ...]", - "Attempt to load the primary boot image from FILE. The rest of the" - " line is passed verbatim as the \"kernel command line\". Any modules" - " must be reloaded after using this command. The option --type is used" - " to suggest what type of kernel to be loaded. TYPE must be either of" - " \"netbsd\", \"freebsd\", \"openbsd\", \"linux\", \"biglinux\" and" - " \"multiboot\". The option --no-mem-option tells GRUB not to pass a" - " Linux's mem option automatically."}, - {"lock", "if ! authenticate legacy; then return; fi", NULL, 0, 0, {}, 0, - 0, "Break a command execution unless the user is authenticated."}, - {"makeactive", "parttool \"$root\" boot+\n", NULL, 0, 0, {}, 0, 0, - "Set the active partition on the root disk to GRUB's root device." - " This command is limited to _primary_ PC partitions on a hard disk."}, - {"map", "drivemap '%s' '%s'\n", NULL, 0, - 2, {TYPE_PARTITION, TYPE_PARTITION}, - FLAG_IGNORE_REST, "TO_DRIVE FROM_DRIVE", - "Map the drive FROM_DRIVE to the drive TO_DRIVE. This is necessary" - " when you chain-load some operating systems, such as DOS, if such an" - " OS resides at a non-first drive."}, - /* NOTE: md5crypt unsupported since GRUB has not enough entropy and this - hash shouldn't be used anymore. */ - {"module", "legacy_initrd '%s' %s\n", NULL, 0, 2, {TYPE_FILE_NO_CONSUME, - TYPE_REST_VERBATIM}, 0, - "FILE [ARG ...]", - "Load a boot module FILE for a Multiboot format boot image (no" - " interpretation of the file contents is made, so users of this" - " command must know what the kernel in question expects). The" - " rest of the line is passed as the \"module command line\", like" - " the `kernel' command."}, - {"modulenounzip", "legacy_initrd_nounzip '%s' %s\n", NULL, 0, 2, - {TYPE_FILE_NO_CONSUME, TYPE_REST_VERBATIM}, 0, - "FILE [ARG ...]", - "The same as `module', except that automatic decompression is" - " disabled."}, - {"pager", "set pager=%s; if [ \"$pager\" = 0 ]; then " - " echo Internal pager is now off; else " - "echo Internal pager is now on; fi\n", NULL, 0, - 1, {TYPE_BOOL}, FLAG_FALLBACK_AVAILABLE, "[FLAG]", - "Toggle pager mode with no argument. If FLAG is given and its value" - " is `on', turn on the mode. If FLAG is `off', turn off the mode."}, - {"pager", - "if [ \"$pager\" = 1 ]; then pager=0; echo Internal pager is now off;" - "else pager=1; echo Internal pager is now on; fi\n", NULL, 0, 0, {}, - FLAG_FALLBACK, NULL, NULL}, - /* FIXME: partnew unsupported. */ - {"parttype", "parttool '%s' type=%s\n", NULL, 0, - 2, {TYPE_PARTITION, TYPE_INT}, 0, - "PART TYPE", "Change the type of the partition PART to TYPE."}, - {"password", "if [ \"$superusers\" = "" ]; then superusers=legacy; fi;\n" - "legacy_password %s '%s'\n", - "menuentry \"Superuser menu\" --users \"legacy\" { configfile '%s'; }\n", - 2, 3, {TYPE_OPTION, TYPE_VERBATIM, TYPE_FILE}, - FLAG_IGNORE_REST | FLAG_FALLBACK_AVAILABLE | FLAG_NO_MENUENTRY, - "[--md5] PASSWD [FILE]", - "If used in the first section of a menu file, disable all" - " interactive editing control (menu entry editor and" - " command line). If the password PASSWD is entered, it loads the" - " FILE as a new config file and restarts the GRUB Stage 2. If you" - " omit the argument FILE, then GRUB just unlocks privileged" - " instructions. You can also use it in the script section, in" - " which case it will ask for the password, before continuing." - " The option --md5 tells GRUB that PASSWD is encrypted with" - " md5crypt."}, - {"password", "if [ \"$superusers\" = "" ]; then superusers=legacy; fi;\n" - "legacy_password %s '%s'\n", NULL, 0, 2, {TYPE_OPTION, TYPE_VERBATIM}, - FLAG_IGNORE_REST | FLAG_FALLBACK | FLAG_NO_MENUENTRY, NULL, NULL}, - {"password", "if legacy_check_password %s '%s'; then configfile '%s'; " - "else return; fi\n", NULL, 2, 3, {TYPE_OPTION, TYPE_VERBATIM, TYPE_FILE}, - FLAG_IGNORE_REST | FLAG_FALLBACK_AVAILABLE | FLAG_MENUENTRY_ONLY, - NULL, NULL}, - {"password", "if ! legacy_check_password %s '%s'; then return fi;\n", - NULL, 0, 2, {TYPE_OPTION, TYPE_VERBATIM}, - FLAG_IGNORE_REST | FLAG_FALLBACK | FLAG_MENUENTRY_ONLY, NULL, NULL}, - /* NOTE: GRUB2 has a design principle of not eternally waiting for user - input. 60 seconds should be enough. - */ - {"pause", "echo %s; if ! sleep -i 60; then return; fi\n", NULL, 0, 1, - {TYPE_REST_VERBATIM}, 0, - "[MESSAGE ...]", "Print MESSAGE, then wait until a key is pressed."}, - {"print", "echo %s\n", NULL, 0, 1, - {TYPE_REST_VERBATIM}, 0, - "[MESSAGE ...]", "Print MESSAGE."}, - /* FIXME: quit unsupported. */ - /* FIXME: rarp unsupported. */ - {"read", "read_dword %s\n", NULL, 0, 1, {TYPE_INT}, 0, "ADDR", - "Read a 32-bit value from memory at address ADDR and" - " display it in hex format."}, - {"reboot", "reboot\n", NULL, 0, 0, {}, 0, 0, "Reboot your system."}, - {"root", "set root='%s'; set legacy_hdbias='%s'\n", NULL, 0, - 2, {TYPE_PARTITION, TYPE_INT}, FLAG_FALLBACK_AVAILABLE, - "[DEVICE [HDBIAS]]", - "Set the current \"root device\" to the device DEVICE, then" - " attempt to mount it to get the partition size (for passing the" - " partition descriptor in `ES:ESI', used by some chain-loaded" - " bootloaders), the BSD drive-type (for booting BSD kernels using" - " their native boot format), and correctly determine " - " the PC partition where a BSD sub-partition is located. The" - " optional HDBIAS parameter is a number to tell a BSD kernel" - " how many BIOS drive numbers are on controllers before the current" - " one. For example, if there is an IDE disk and a SCSI disk, and your" - " FreeBSD root partition is on the SCSI disk, then use a `1' for HDBIAS."}, - {"root", "echo \"$root\"\n", NULL, 0, 0, {}, FLAG_FALLBACK, NULL, NULL}, - {"rootnoverify", "set root='%s'; set legacy_hdbias='%s'\n", NULL, 0, - 2, {TYPE_PARTITION, TYPE_INT}, 0, - "[DEVICE [HDBIAS]]", - "Similar to `root', but don't attempt to mount the partition. This" - " is useful for when an OS is outside of the area of the disk that" - " GRUB can read, but setting the correct root device is still" - " desired. Note that the items mentioned in `root' which" - " derived from attempting the mount will NOT work correctly."}, - {"rootnoverify", "echo \"$root\"\n", NULL, 0, - 0, {}, FLAG_FALLBACK, NULL, NULL}, - /* FIXME: support saving NUM and fallback. */ - {"savedefault", "saved_entry=${chosen}; save_env saved_entry\n", NULL, 0, - 0, {}, 0, "[NUM | `fallback']", - "Save the current entry as the default boot entry if no argument is" - " specified. If a number is specified, this number is saved. If" - " `fallback' is used, next fallback entry is saved."}, - {"serial", "serial %s\n", NULL, 0, 1, {TYPE_REST_VERBATIM}, 0, - "[--unit=UNIT] [--port=PORT] [--speed=SPEED] [--word=WORD] " - "[--parity=PARITY] [--stop=STOP] [--device=DEV]", - "Initialize a serial device. UNIT is a digit that specifies which serial" - " device is used (e.g. 0 == COM1). If you need to specify the port number," - " set it by --port. SPEED is the DTE-DTE speed. WORD is the word length," - " PARITY is the type of parity, which is one of `no', `odd' and `even'." - " STOP is the length of stop bit(s). The option --device can be used only" - " in the grub shell, which specifies the file name of a tty device. The" - " default values are COM1, 9600, 8N1."}, - /* FIXME: shade unsupported. */ - /* FIXME: silent unsupported. */ - /* FIXME: splashimage unsupported. */ - /* FIXME: setkey unsupported. */ /* NUL_TERMINATE */ - /* NOTE: setup unsupported. */ - /* FIXME: --no-echo, --no-edit unsupported. */ - /* NOTE: both terminals are activated so --silent and --timeout - are useless. */ - /* FIXME: graphics unsupported. */ - {"terminal", NULL, NULL, 0, 0, {}, FLAG_TERMINAL | FLAG_IGNORE_REST, - "[--dumb] [--no-echo] [--no-edit] [--timeout=SECS] [--lines=LINES] " - "[--silent] [console] [serial] [hercules] [graphics]", - "Select a terminal. When multiple terminals are specified, wait until" - " you push any key to continue. If both console and serial are specified," - " the terminal to which you input a key first will be selected. If no" - " argument is specified, print current setting. The option --dumb" - " specifies that your terminal is dumb, otherwise, vt100-compatibility" - " is assumed. If you specify --no-echo, input characters won't be echoed." - " If you specify --no-edit, the BASH-like editing feature will be disabled." - " If --timeout is present, this command will wait at most for SECS" - " seconds. The option --lines specifies the maximum number of lines." - " The option --silent is used to suppress messages."}, - /* FIXME: terminfo unsupported. */ /* NUL_TERMINATE */ - {"testload", "testload '%s'\n", NULL, 0, 1, {TYPE_FILE}, 0, "FILE", - "Read the entire contents of FILE in several different ways and" - " compares them, to test the filesystem code. " - " If this test succeeds, then a good next" - " step is to try loading a kernel."}, - {"testvbe", "insmod vbe; videotest '%s'\n", NULL, 0, 1, {TYPE_VBE_MODE}, 0, - "MODE", "Test the VBE mode MODE. Hit any key to return."}, - /* FIXME: tftpserver unsupported. */ - {"timeout", "set timeout=%s\n", NULL, 0, 1, {TYPE_INT}, 0, "SEC", - "Set a timeout, in SEC seconds, before automatically booting the" - " default entry (normally the first entry defined)."}, - {"title", NULL, NULL, 0, 0, {}, FLAG_TITLE, "NAME ...", - "Start a new boot entry, and set its name to the contents of the" - " rest of the line, starting with the first non-space character."}, - {"unhide", "parttool '%s' hidden-\n", NULL, 0, - 1, {TYPE_PARTITION}, 0, "PARTITION", - "Unhide PARTITION by clearing the \"hidden\" bit in its" - " partition type code."}, - /* FIXME: uppermem unsupported. */ - {"uuid", "search --set=root --fs-uuid '%s'\n", NULL, 0, 1, {TYPE_VERBATIM}, - 0, "UUID", "Find root by UUID"}, - {"vbeprobe", "insmod vbe; videoinfo '%s'\n", NULL, 0, 1, {TYPE_VBE_MODE}, - FLAG_FALLBACK_AVAILABLE, "[MODE]", - "Probe VBE information. If the mode number MODE is specified, show only" - " the information about only the mode."}, - {"vbeprobe", "insmod vbe; videoinfo\n", NULL, 0, 0, {}, - FLAG_FALLBACK, NULL, NULL} - /* FIXME: verbose unsupported. */ - /* FIXME: version unsupported. */ - /* FIXME: viewport unsupported. */ - }; - -char * -grub_legacy_escape (const char *in, grub_size_t len) -{ - char *ptr; - char *ret; - char saved; - int overhead = 0; - - for (ptr = (char*)in; ptr < in + len && *ptr; ptr++) - if (*ptr == '\'') - overhead += 3; - ret = grub_malloc (ptr - in + overhead + 1); - if (!ret) - return NULL; - - ptr = (char*)in; - saved = ptr[len]; - ptr[len] = '\0'; - grub_strchrsub (ret, ptr, '\'', "'\\''"); - ptr[len] = saved; - return ret; -} - -static char * -adjust_file (const char *in, grub_size_t len) -{ - const char *comma, *ptr, *rest; - char *ret, *outptr; - int overhead = 0; - int part = -1, subpart = -1; - if (in[0] != '(') - return grub_legacy_escape (in, len); - for (ptr = in + 1; ptr < in + len && *ptr && *ptr != ')' - && *ptr != ','; ptr++) - if (*ptr == '\'' || *ptr == '\\') - overhead++; - comma = ptr; - if (*comma == ')' && comma - in == 3 - && in[1] == 'n' && in[2] == 'd') - { - rest = comma + 1; - for (ptr = rest; ptr < in + len && *ptr; ptr++) - if (*ptr == '\'' || *ptr == '\\') - overhead++; - - ret = grub_malloc (ptr - in + overhead + 15); - if (!ret) - return NULL; - - outptr = grub_stpcpy (ret, "(tftp)");; - for (ptr = rest; ptr < in + len; ptr++) - { - if (*ptr == '\'' || *ptr == '\\') - *outptr++ = '\\'; - - *outptr++ = *ptr; - } - *outptr = 0; - return ret; - } - if (*comma != ',') - return grub_legacy_escape (in, len); - part = grub_strtoull (comma + 1, (char **) &rest, 0); - if (rest[0] == ',' && rest[1] >= 'a' && rest[1] <= 'z') - { - subpart = rest[1] - 'a'; - rest += 2; - } - for (ptr = rest; ptr < in + len && *ptr; ptr++) - if (*ptr == '\'' || *ptr == '\\') - overhead++; - - /* 35 is enough for any 2 numbers. */ - ret = grub_malloc (ptr - in + overhead + 35 + 5); - if (!ret) - return NULL; - - outptr = ret; - for (ptr = in; ptr < in + len && ptr <= comma; ptr++) - { - if (*ptr == '\'' || *ptr == '\\') - *outptr++ = '\\'; - - *outptr++ = *ptr; - } - if (subpart != -1) - grub_snprintf (outptr, 35, "%d,%d", part + 1, subpart + 1); - else - grub_snprintf (outptr, 35, "%d", part + 1); - while (*outptr) - outptr++; - for (ptr = rest; ptr < in + len; ptr++) - { - if (*ptr == '\'' || *ptr == '\\') - *outptr++ = '\\'; - - *outptr++ = *ptr; - } - *outptr = 0; - return ret; -} - -static int -check_option (const char *a, const char *b, grub_size_t len) -{ - if (grub_strlen (b) != len) - return 0; - return grub_strncmp (a, b, len) == 0; -} - -static int -is_option (enum arg_type opt, const char *curarg, grub_size_t len) -{ - switch (opt) - { - case TYPE_WITH_CONFIGFILE_OPTION: - return check_option (curarg, "--with-configfile", len); - case TYPE_NOAPM_OPTION: - return check_option (curarg, "--no-apm", len); - case TYPE_FORCE_OPTION: - return check_option (curarg, "--force", len); - case TYPE_TYPE_OR_NOMEM_OPTION: - return check_option (curarg, "--type=netbsd", len) - || check_option (curarg, "--type=freebsd", len) - || check_option (curarg, "--type=openbsd", len) - || check_option (curarg, "--type=linux", len) - || check_option (curarg, "--type=biglinux", len) - || check_option (curarg, "--type=multiboot", len) - || check_option (curarg, "--no-mem-option", len); - case TYPE_OPTION: - return (len >= 2 && curarg[0] == '-' && curarg[1] == '-'); - default: - return 0; - } -} - -char * -grub_legacy_parse (const char *buf, char **entryname, char **suffix) -{ - const char *ptr; - const char *cmdname; - unsigned i, cmdnum; - char *args[ARRAY_SIZE (legacy_commands[0].argt)]; - - *suffix = NULL; - - for (ptr = buf; *ptr && grub_isspace (*ptr); ptr++); - if (!*ptr || *ptr == '#') - { - char *ret; - int len = grub_strlen (buf); - ret = grub_malloc (len + 2); - grub_memcpy (ret, buf, len); - if (len && ret[len - 1] == '\n') - ret[len] = 0; - else - { - ret[len] = '\n'; - ret[len + 1] = 0; - } - return ret; - } - - cmdname = ptr; - for (ptr = buf; *ptr && !grub_isspace (*ptr) && *ptr != '='; ptr++); - - for (cmdnum = 0; cmdnum < ARRAY_SIZE (legacy_commands); cmdnum++) - if (grub_strncmp (legacy_commands[cmdnum].name, cmdname, ptr - cmdname) == 0 - && legacy_commands[cmdnum].name[ptr - cmdname] == 0 - && (!(*entryname != NULL && (legacy_commands[cmdnum].flags - & FLAG_NO_MENUENTRY))) - && (!(*entryname == NULL && (legacy_commands[cmdnum].flags - & FLAG_MENUENTRY_ONLY)))) - break; - if (cmdnum == ARRAY_SIZE (legacy_commands)) - return grub_xasprintf ("# Unsupported legacy command: %s\n", buf); - - for (; grub_isspace (*ptr) || *ptr == '='; ptr++); - - if (legacy_commands[cmdnum].flags & FLAG_TITLE) - { - const char *ptr2; - ptr2 = ptr + grub_strlen (ptr); - while (ptr2 > ptr && grub_isspace (*(ptr2 - 1))) - ptr2--; - *entryname = grub_strndup (ptr, ptr2 - ptr); - return NULL; - } - - if (legacy_commands[cmdnum].flags & FLAG_TERMINAL) - { - int dumb = 0, lines = 24; -#ifdef TODO - int no_echo = 0, no_edit = 0; -#endif - int hercules = 0; - int console = 0, serial = 0, graphics = 0; - /* Big enough for any possible resulting command. */ - char outbuf[512] = ""; - char *outptr; - while (*ptr) - { - /* "[--timeout=SECS] [--silent]" - " [console] [serial] [hercules]"*/ - if (grub_memcmp (ptr, "--dumb", sizeof ("--dumb") - 1) == 0) - dumb = 1; -#ifdef TODO - if (grub_memcmp (ptr, "--no-echo", sizeof ("--no-echo") - 1) == 0) - no_echo = 1; - - if (grub_memcmp (ptr, "--no-edit", sizeof ("--no-edit") - 1) == 0) - no_edit = 1; -#endif - if (grub_memcmp (ptr, "--lines=", sizeof ("--lines=") - 1) == 0) - { - lines = grub_strtoul (ptr + sizeof ("--lines=") - 1, 0, 0); - if (grub_errno) - { - lines = 24; - grub_errno = GRUB_ERR_NONE; - } - } - - if (grub_memcmp (ptr, "console", sizeof ("console") - 1) == 0) - console = 1; - - if (grub_memcmp (ptr, "serial", sizeof ("serial") - 1) == 0) - serial = 1; - if (grub_memcmp (ptr, "hercules", sizeof ("hercules") - 1) == 0) - hercules = 1; - if (grub_memcmp (ptr, "graphics", sizeof ("graphics") - 1) == 0) - graphics = 1; - while (*ptr && !grub_isspace (*ptr)) - ptr++; - while (*ptr && grub_isspace (*ptr)) - ptr++; - } - - if (!console && !serial && !hercules && !graphics) - return grub_strdup ("terminal_input; terminal_output; terminfo\n"); - - outptr = outbuf; - - if (graphics) - outptr = grub_stpcpy (outptr, "insmod all_video; "); - - outptr = grub_stpcpy (outptr, "terminal_input "); - if (serial) - outptr = grub_stpcpy (outptr, "serial "); - if (console || hercules || graphics) - outptr = grub_stpcpy (outptr, "console "); - outptr = grub_stpcpy (outptr, "; terminal_output "); - if (serial) - outptr = grub_stpcpy (outptr, "serial "); - if (console) - outptr = grub_stpcpy (outptr, "console "); - if (hercules) - outptr = grub_stpcpy (outptr, "mda_text "); - if (graphics) - outptr = grub_stpcpy (outptr, "gfxterm "); - outptr = grub_stpcpy (outptr, "; "); - *outptr = '\0'; - if (serial) - { - grub_snprintf (outptr, outbuf + sizeof (outbuf) - outptr, - "terminfo serial -g 80x%d %s; ", - lines, dumb ? "dumb" : "vt100"); - outptr += grub_strlen (outptr); - } - - grub_strcpy (outptr, "\n"); - - return grub_strdup (outbuf); - } - - grub_memset (args, 0, sizeof (args)); - - { - int hold_arg = 0; - const char *curarg = NULL; - for (i = 0; i < legacy_commands[cmdnum].argc; i++) - { - grub_size_t curarglen; - if (hold_arg) - { - ptr = curarg; - hold_arg = 0; - } - for (; grub_isspace (*ptr); ptr++); - curarg = ptr; - if (!*curarg) - break; - for (; *ptr && !grub_isspace (*ptr); ptr++); - if (i != legacy_commands[cmdnum].argc - 1 - || (legacy_commands[cmdnum].flags & FLAG_IGNORE_REST)) - curarglen = ptr - curarg; - else - { - curarglen = grub_strlen (curarg); - while (curarglen > 0 && grub_isspace (curarg[curarglen - 1])) - curarglen--; - } - if (*ptr) - ptr++; - switch (legacy_commands[cmdnum].argt[i]) - { - case TYPE_FILE_NO_CONSUME: - hold_arg = 1; - /* Fallthrough. */ - case TYPE_PARTITION: - case TYPE_FILE: - args[i] = adjust_file (curarg, curarglen); - break; - - case TYPE_REST_VERBATIM: - { - char *outptr, *outptr0; - int overhead = 3; - ptr = curarg; - while (*ptr) - { - for (; *ptr && grub_isspace (*ptr); ptr++); - for (; *ptr && !grub_isspace (*ptr); ptr++) - if (*ptr == '\'') - overhead += 3; - if (*ptr) - ptr++; - overhead += 3; - } - - outptr0 = args[i] = grub_malloc (overhead + (ptr - curarg)); - if (!outptr0) - return NULL; - ptr = curarg; - outptr = outptr0; - while (*ptr) - { - for (; *ptr && grub_isspace (*ptr); ptr++); - if (outptr != outptr0) - *outptr++ = ' '; - *outptr++ = '\''; - for (; *ptr && !grub_isspace (*ptr); ptr++) - { - if (*ptr == '\'') - { - *outptr++ = '\''; - *outptr++ = '\\'; - *outptr++ = '\''; - *outptr++ = '\''; - } - else - *outptr++ = *ptr; - } - *outptr++ = '\''; - if (*ptr) - ptr++; - } - *outptr++ = 0; - } - break; - - case TYPE_VERBATIM: - args[i] = grub_legacy_escape (curarg, curarglen); - break; - case TYPE_WITH_CONFIGFILE_OPTION: - case TYPE_FORCE_OPTION: - case TYPE_NOAPM_OPTION: - case TYPE_TYPE_OR_NOMEM_OPTION: - case TYPE_OPTION: - if (is_option (legacy_commands[cmdnum].argt[i], curarg, curarglen)) - { - args[i] = grub_strndup (curarg, curarglen); - break; - } - args[i] = grub_strdup (""); - hold_arg = 1; - break; - case TYPE_INT: - { - const char *brk; - int base = 10; - brk = curarg; - if (brk[0] == '0' && brk[1] == 'x') - { - base = 16; - brk += 2; - } - else if (brk[0] == '0') - base = 8; - for (; *brk && brk < curarg + curarglen; brk++) - { - if (base == 8 && (*brk == '8' || *brk == '9')) - break; - if (grub_isdigit (*brk)) - continue; - if (base != 16) - break; - if (!(*brk >= 'a' && *brk <= 'f') - && !(*brk >= 'A' && *brk <= 'F')) - break; - } - if (brk == curarg) - args[i] = grub_strdup ("0"); - else - args[i] = grub_strndup (curarg, brk - curarg); - } - break; - case TYPE_VBE_MODE: - { - unsigned mod; - struct grub_vesa_mode_table_entry *modedesc; - - mod = grub_strtoul (curarg, 0, 0); - if (grub_errno) - { - mod = 0; - grub_errno = GRUB_ERR_NONE; - } - if (mod < GRUB_VESA_MODE_TABLE_START - || mod > GRUB_VESA_MODE_TABLE_END) - { - args[i] = grub_strdup ("auto"); - break; - } - modedesc = &grub_vesa_mode_table[mod - GRUB_VESA_MODE_TABLE_START]; - if (!modedesc->width) - { - args[i] = grub_strdup ("auto"); - break; - } - args[i] = grub_xasprintf ("%ux%ux%u", - modedesc->width, modedesc->height, - modedesc->depth); - break; - } - case TYPE_BOOL: - if (curarglen == 2 && curarg[0] == 'o' && curarg[1] == 'n') - args[i] = grub_strdup ("1"); - else - args[i] = grub_strdup ("0"); - break; - } - } - } - - while (legacy_commands[cmdnum].argc > 0 - && args[legacy_commands[cmdnum].argc - 1] == NULL - && (legacy_commands[cmdnum].flags & FLAG_FALLBACK_AVAILABLE) - && args[legacy_commands[cmdnum + 1].argc] == NULL) - cmdnum++; - - for (; i < legacy_commands[cmdnum].argc; i++) - switch (legacy_commands[cmdnum].argt[i]) - { - case TYPE_FILE_NO_CONSUME: - case TYPE_PARTITION: - case TYPE_FILE: - case TYPE_REST_VERBATIM: - case TYPE_VERBATIM: - case TYPE_WITH_CONFIGFILE_OPTION: - case TYPE_FORCE_OPTION: - case TYPE_NOAPM_OPTION: - case TYPE_TYPE_OR_NOMEM_OPTION: - case TYPE_OPTION: - args[i] = grub_strdup (""); - break; - case TYPE_BOOL: - case TYPE_INT: - args[i] = grub_strdup ("0"); - break; - case TYPE_VBE_MODE: - args[i] = grub_strdup ("auto"); - break; - } - - if (legacy_commands[cmdnum].flags & FLAG_COLOR_INVERT) - { - char *corig = args[legacy_commands[cmdnum].argc - 1]; - char *slash = grub_strchr (corig, '/'); - char *invert; - grub_size_t len; - - len = grub_strlen (corig); - if (!slash) - { - grub_error (GRUB_ERR_BAD_ARGUMENT, N_("invalid color specification `%s'"), - args[0]); - return NULL; - } - invert = grub_malloc (len + 1); - if (!invert) - return NULL; - grub_memcpy (invert, slash + 1, len - (slash - corig) - 1); - invert[len - (slash - args[0]) - 1] = '/'; - grub_memcpy (invert + len - (slash - corig), corig, slash - corig); - invert[len] = 0; - args[legacy_commands[cmdnum].argc] = invert; - } - - if (legacy_commands[cmdnum].suffix) - { - *suffix = grub_xasprintf (legacy_commands[cmdnum].suffix, - args[legacy_commands[cmdnum].suffixarg]); - if (*suffix) - return NULL; - } - - { - char *ret = grub_xasprintf (legacy_commands[cmdnum].map, args[0], args[1], - args[2], args[3]); - grub_free (args[0]); - grub_free (args[1]); - grub_free (args[2]); - grub_free (args[3]); - return ret; - } -} diff --git a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/ChangeLog b/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/ChangeLog deleted file mode 100644 index 932071539..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/ChangeLog +++ /dev/null @@ -1,4357 +0,0 @@ -2019-07-04 Automatic import tool - - Imported ciphers to GRUB - - * Makefile.am: Removed - * Manifest: Removed - * ac.c: Removed - * arcfour.c: Removed including of config.h - Removed including of stdio.h - Removed including of stdlib.h - Removed including of string.h - (elftest): Removed declaration. - (selftest): Removed. - (GRUB_MOD_INIT(gcry_arcfour)): New function - - Register cipher _gcry_cipher_spec_arcfour - (GRUB_MOD_FINI(gcry_arcfour)): New function - - Unregister cipher _gcry_cipher_spec_arcfour - * blowfish.c: Removed including of config.h - Removed including of stdio.h - Removed including of stdlib.h - Removed including of string.h - (selftest): Removed. - (GRUB_MOD_INIT(gcry_blowfish)): New function - - Register cipher _gcry_cipher_spec_blowfish - (GRUB_MOD_FINI(gcry_blowfish)): New function - - Unregister cipher _gcry_cipher_spec_blowfish - * camellia-glue.c: Removed including of config.h - Removed including of config.h - (elftest): Removed declaration. - (selftest): Removed. - (GRUB_MOD_INIT(gcry_camellia)): New function - - Register cipher _gcry_cipher_spec_camellia128 - Register cipher _gcry_cipher_spec_camellia192 - Register cipher _gcry_cipher_spec_camellia256 - (GRUB_MOD_FINI(gcry_camellia)): New function - - Unregister cipher _gcry_cipher_spec_camellia128 - Unregister cipher _gcry_cipher_spec_camellia192 - Unregister cipher _gcry_cipher_spec_camellia256 - * cast5.c: Removed including of config.h - Removed including of stdio.h - Removed including of stdlib.h - Removed including of string.h - (selftest): Removed. - (GRUB_MOD_INIT(gcry_cast5)): New function - - Register cipher _gcry_cipher_spec_cast5 - (GRUB_MOD_FINI(gcry_cast5)): New function - - Unregister cipher _gcry_cipher_spec_cast5 - * cipher.c: Removed - * crc.c: Removed including of config.h - Removed including of stdio.h - Removed including of stdlib.h - Removed including of string.h - (GRUB_MOD_INIT(gcry_crc)): New function - - Register digest _gcry_digest_spec_crc32 - Register digest _gcry_digest_spec_crc32_rfc1510 - Register digest _gcry_digest_spec_crc24_rfc2440 - (GRUB_MOD_FINI(gcry_crc)): New function - - Unregister MD _gcry_digest_spec_crc32 - Unregister MD _gcry_digest_spec_crc32_rfc1510 - Unregister MD _gcry_digest_spec_crc24_rfc2440 - * des.c: Removed including of config.h - Removed including of stdio.h - Removed including of string.h - (elftest): Removed declaration. - (weak_keys_chksum): Removed. - (tripledes_set2keys): Removed. - (selftest): Removed. - (do_tripledes_set_extra_info): Removed. - (selftest_fips): Removed. - (run_selftests): Removed. - (_gcry_cipher_extraspec_tripledes): Removed. - (GRUB_MOD_INIT(gcry_des)): New function - - Register cipher _gcry_cipher_spec_des - Register cipher _gcry_cipher_spec_tripledes - (GRUB_MOD_FINI(gcry_des)): New function - - Unregister cipher _gcry_cipher_spec_des - Unregister cipher _gcry_cipher_spec_tripledes - * dsa.c: Removed including of config.h - Removed including of stdio.h - Removed including of stdlib.h - Removed including of string.h - (gen_k): Removed declaration. - (test_keys): Removed declaration. - (progress_cb): Removed declaration. - (progress_cb): Removed declaration. - (_gcry_register_pk_dsa_progress): Removed. - (progress): Removed. - (gen_k): Removed. - (test_keys): Removed. - (generate): Removed. - (generate_fips186): Removed. - (sign): Removed. - (dsa_generate_ext): Removed. - (dsa_generate): Removed. - (dsa_sign): Removed. - (selftest_sign_1024): Removed. - (selftests_dsa): Removed. - (run_selftests): Removed. - (_gcry_pubkey_extraspec_dsa): Removed. - (GRUB_MOD_INIT(gcry_dsa)): New function - - Register pk _gcry_digest_spec_crc24_rfc2440 - (GRUB_MOD_FINI(gcry_dsa)): New function - - Unregister pk _gcry_digest_spec_crc24_rfc2440 - * ecc.c: Removed - * elgamal.c: Removed - * hash-common.c: Removed - * hmac-tests.c: Removed - * idea.c: Removed including of config.h - Removed including of stdio.h - Removed including of stdlib.h - Removed including of string.h - Removed including of assert.h - (elftest): Removed declaration. - (selftest): Removed. - (GRUB_MOD_INIT(gcry_idea)): New function - - Register cipher _gcry_cipher_spec_idea - (GRUB_MOD_FINI(gcry_idea)): New function - - Unregister cipher _gcry_cipher_spec_idea - * kdf.c: Removed - * md.c: Removed - * md4.c: Removed including of config.h - Removed including of stdio.h - Removed including of stdlib.h - Removed including of string.h - (GRUB_MOD_INIT(gcry_md4)): New function - - Register digest _gcry_digest_spec_md4 - (GRUB_MOD_FINI(gcry_md4)): New function - - Unregister MD _gcry_digest_spec_md4 - * md5.c: Removed including of config.h - Removed including of stdio.h - Removed including of stdlib.h - Removed including of string.h - (GRUB_MOD_INIT(gcry_md5)): New function - - Register digest _gcry_digest_spec_md5 - (GRUB_MOD_FINI(gcry_md5)): New function - - Unregister MD _gcry_digest_spec_md5 - * primegen.c: Removed - * pubkey.c: Removed - * rfc2268.c: Removed including of config.h - Removed including of stdio.h - Removed including of stdlib.h - Removed including of string.h - (elftest): Removed declaration. - (selftest): Removed. - (GRUB_MOD_INIT(gcry_rfc2268)): New function - - Register cipher _gcry_cipher_spec_rfc2268_40 - (GRUB_MOD_FINI(gcry_rfc2268)): New function - - Unregister cipher _gcry_cipher_spec_rfc2268_40 - * rijndael.c: Removed including of config.h - Removed including of stdio.h - Removed including of stdlib.h - Removed including of string.h - (elftest): Removed declaration. - (_gcry_aes_cfb_enc): Removed. - (_gcry_aes_cbc_enc): Removed. - (_gcry_aes_ctr_enc): Removed. - (_gcry_aes_cfb_dec): Removed. - (_gcry_aes_cbc_dec): Removed. - (selftest_basic_128): Removed. - (selftest_basic_192): Removed. - (selftest_basic_256): Removed. - (selftest): Removed. - (selftest_fips_128_38a): Removed. - (selftest_fips_128): Removed. - (selftest_fips_192): Removed. - (selftest_fips_256): Removed. - (run_selftests): Removed. - (_gcry_cipher_extraspec_aes): Removed. - (_gcry_cipher_extraspec_aes192): Removed. - (_gcry_cipher_extraspec_aes256): Removed. - (GRUB_MOD_INIT(gcry_rijndael)): New function - - Register cipher _gcry_cipher_spec_aes - Register cipher _gcry_cipher_spec_aes192 - Register cipher _gcry_cipher_spec_aes256 - (GRUB_MOD_FINI(gcry_rijndael)): New function - - Unregister cipher _gcry_cipher_spec_aes - Unregister cipher _gcry_cipher_spec_aes192 - Unregister cipher _gcry_cipher_spec_aes256 - * rmd160.c: Removed including of config.h - Removed including of stdio.h - Removed including of stdlib.h - Removed including of string.h - (_gcry_rmd160_mixblock): Removed. - (_gcry_rmd160_hash_buffer): Removed. - (GRUB_MOD_INIT(gcry_rmd160)): New function - - Register digest _gcry_digest_spec_rmd160 - (GRUB_MOD_FINI(gcry_rmd160)): New function - - Unregister MD _gcry_digest_spec_rmd160 - * rsa.c: Removed including of config.h - Removed including of stdio.h - Removed including of stdlib.h - Removed including of string.h - Removed including of errno.h - (test_keys): Removed declaration. - (secret): Removed declaration. - (test_keys): Removed. - (check_exponent): Removed. - (generate_std): Removed. - (gen_x931_parm_xp): Removed. - (gen_x931_parm_xi): Removed. - (generate_x931): Removed. - (secret): Removed. - (rsa_blind): Removed. - (rsa_unblind): Removed. - (rsa_generate_ext): Removed. - (rsa_generate): Removed. - (rsa_decrypt): Removed. - (rsa_sign): Removed. - (compute_keygrip): Removed. - (selftest_sign_1024): Removed. - (extract_a_from_sexp): Removed. - (selftest_encr_1024): Removed. - (selftests_rsa): Removed. - (run_selftests): Removed. - (_gcry_pubkey_extraspec_rsa): Removed. - (GRUB_MOD_INIT(gcry_rsa)): New function - - Register pk _gcry_digest_spec_rmd160 - (GRUB_MOD_FINI(gcry_rsa)): New function - - Unregister pk _gcry_digest_spec_rmd160 - * seed.c: Removed including of config.h - Removed including of stdio.h - Removed including of stdlib.h - (elftest): Removed declaration. - (selftest): Removed. - (GRUB_MOD_INIT(gcry_seed)): New function - - Register cipher _gcry_cipher_spec_seed - (GRUB_MOD_FINI(gcry_seed)): New function - - Unregister cipher _gcry_cipher_spec_seed - * serpent.c: Removed including of config.h - Removed including of string.h - Removed including of stdio.h - (serpent_test): Removed. - (GRUB_MOD_INIT(gcry_serpent)): New function - - Register cipher _gcry_cipher_spec_serpent128 - Register cipher _gcry_cipher_spec_serpent192 - Register cipher _gcry_cipher_spec_serpent256 - (GRUB_MOD_FINI(gcry_serpent)): New function - - Unregister cipher _gcry_cipher_spec_serpent128 - Unregister cipher _gcry_cipher_spec_serpent192 - Unregister cipher _gcry_cipher_spec_serpent256 - * sha1.c: Removed including of config.h - Removed including of stdio.h - Removed including of stdlib.h - Removed including of string.h - Removed including of stdint.h - (_gcry_sha1_hash_buffer): Removed. - (selftests_sha1): Removed. - (run_selftests): Removed. - (_gcry_digest_extraspec_sha1): Removed. - (GRUB_MOD_INIT(gcry_sha1)): New function - - Register digest _gcry_digest_spec_sha1 - (GRUB_MOD_FINI(gcry_sha1)): New function - - Unregister MD _gcry_digest_spec_sha1 - * sha256.c: Removed including of config.h - Removed including of stdio.h - Removed including of stdlib.h - Removed including of string.h - (selftests_sha224): Removed. - (selftests_sha256): Removed. - (run_selftests): Removed. - (_gcry_digest_extraspec_sha224): Removed. - (_gcry_digest_extraspec_sha256): Removed. - (GRUB_MOD_INIT(gcry_sha256)): New function - - Register digest _gcry_digest_spec_sha224 - Register digest _gcry_digest_spec_sha256 - (GRUB_MOD_FINI(gcry_sha256)): New function - - Unregister MD _gcry_digest_spec_sha224 - Unregister MD _gcry_digest_spec_sha256 - * sha512.c: Removed including of config.h - Removed including of string.h - (selftests_sha384): Removed. - (selftests_sha512): Removed. - (run_selftests): Removed. - (_gcry_digest_extraspec_sha512): Removed. - (_gcry_digest_extraspec_sha384): Removed. - (GRUB_MOD_INIT(gcry_sha512)): New function - - Register digest _gcry_digest_spec_sha512 - Register digest _gcry_digest_spec_sha384 - (GRUB_MOD_FINI(gcry_sha512)): New function - - Unregister MD _gcry_digest_spec_sha512 - Unregister MD _gcry_digest_spec_sha384 - * test-getrusage.c: Removed - * tiger.c: Removed including of config.h - Removed including of stdio.h - Removed including of stdlib.h - Removed including of string.h - (GRUB_MOD_INIT(gcry_tiger)): New function - - Register digest _gcry_digest_spec_tiger - Register digest _gcry_digest_spec_tiger1 - Register digest _gcry_digest_spec_tiger2 - (GRUB_MOD_FINI(gcry_tiger)): New function - - Unregister MD _gcry_digest_spec_tiger - Unregister MD _gcry_digest_spec_tiger1 - Unregister MD _gcry_digest_spec_tiger2 - * twofish.c: Removed including of config.h - Removed including of stdio.h - Removed including of stdlib.h - Removed including of string.h - (elftest): Removed declaration. - (selftest): Removed. - Removed including of stdio.h - Removed including of string.h - Removed including of time.h - (GRUB_MOD_INIT(gcry_twofish)): New function - - Register cipher _gcry_cipher_spec_twofish - Register cipher _gcry_cipher_spec_twofish128 - (GRUB_MOD_FINI(gcry_twofish)): New function - - Unregister cipher _gcry_cipher_spec_twofish - Unregister cipher _gcry_cipher_spec_twofish128 - * whirlpool.c: Removed including of config.h - Removed including of stdio.h - Removed including of stdlib.h - Removed including of string.h - (GRUB_MOD_INIT(gcry_whirlpool)): New function - - Register digest _gcry_digest_spec_whirlpool - (GRUB_MOD_FINI(gcry_whirlpool)): New function - - Unregister MD _gcry_digest_spec_whirlpool - * crypto.lst: New file. - * types.h: New file. - * memory.h: New file. - * cipher.h: Likewise. - * g10lib.h: Likewise. - -2010-08-19 Werner Koch - - * cipher.c (gcry_cipher_open): Remove double release of the module. - Fixes bug#1263. - -2010-06-10 Jeff Johnson (wk) - - * ecc.c (ecc_generate_ext): Parse transient-key flag. - (generate_key): Add arg TRANSIENT_KEY and use it to set the random - level. - -2010-04-12 Brad Hards (wk) - - Spelling fixes. - -2010-03-26 Werner Koch - - * tiger.c (asn): Unfetter the old TIGER from an OID. - (TIGER_CONTEXT): Add field VARIANT. - (tiger_init): Factor code out to ... - (do_init): New. - (tiger1_init, tiger2_init): New. - (_gcry_digest_spec_tiger1, _gcry_digest_spec_tiger2): New. - * md.c (digest_table): Add TIGER1 and TIGER2 variants. - -2009-12-11 Werner Koch - - * sha256.c (Cho, Maj, Sum0, Sum1): Turn macros into inline - functions. - (transform): Partly unroll to interweave the chain variables - - * sha512.c (ROTR, Ch, Maj, Sum0, Sum1): Turn macros into inline - functions. - (transform): Partly unroll to interweave the chain variables. - Suggested by Christian Grothoff. - -2009-12-10 Werner Koch - - * Makefile.am (o_flag_munging): New. - (tiger.o, tiger.lo): Use it. - - * cipher.c (do_ctr_encrypt): Add arg OUTBUFLEN. Check for - suitable value. Add check for valid inputlen. Wipe temporary - memory. - (do_ctr_decrypt): Likewise. - (do_cbc_encrypt, do_cbc_decrypt): Add arg OUTBUFLEN. Check for - suitable value. Move check for valid inputlen to here; change - returned error from INV_ARG to INV_LENGTH. - (do_ecb_encrypt, do_ecb_decrypt): Ditto. - (do_cfb_encrypt, do_cfb_decrypt): Ditto. - (do_ofb_encrypt, do_ofb_decrypt): Ditto. - (cipher_encrypt, cipher_encrypt): Adjust for above changes. - (gcry_cipher_encrypt, gcry_cipher_decrypt): Simplify. - -2009-12-09 Werner Koch - - * cipher.c (gcry_cipher_open): Allow for GCRY_CIPHER_MODE_AESWRAP. - (cipher_encrypt, cipher_decrypt): Ditto. - (do_aeswrap_encrypt, do_aeswrap_decrypt): New. - (struct gcry_cipher_handle): Add field marks. - (cipher_setkey, cipher_setiv): Update marks flags. - (cipher_reset): Reset marks. - (cipher_encrypt, cipher_decrypt): Add new arg OUTBUFLEN. - (gcry_cipher_encrypt, gcry_cipher_decrypt): Pass outbuflen to - cipher_encrypt. Replace GPG_ERR_TOO_SHORT by - GPG_ERR_BUFFER_TOO_SHORT. - -2009-08-21 Werner Koch - - * dsa.c (dsa_generate_ext): Release retfactors array before - setting it to NULL. Reported by Daiko Ueno. - -2009-07-02 Werner Koch - - * md.c (md_read): Fix incomplete check for NULL. - Reported by Fabian Kail. - -2009-03-31 Werner Koch - - * rsa.c (rsa_check_secret_key): Return GPG_ERR_BAD_SECKEY and not - GPG_ERR_PUBKEY_ALGO. - -2009-02-16 Werner Koch - - * rsa.c (generate_x931): Do not initialize TBL with automatic - variables. - * whirlpool.c, tiger.c, sha256.c, sha1.c, rmd160.c, md5.c - * md4.c, crc.c: Remove memory.h. This is garbage from gnupg. - Reported by Dan Fandrich. - -2009-01-22 Werner Koch - - * ecc.c (compute_keygrip): Remove superfluous const. - -2009-01-06 Werner Koch - - * rmd160.c (oid_spec_rmd160): Add TeleTrust identifier. - -2008-12-10 Werner Koch - - * dsa.c (generate): Add arg DOMAIN and use it if specified. - (generate_fips186): Ditto. - (dsa_generate_ext): Parse and check the optional "domain" - parameter and pass them to the generate functions. - - * rijndael.c (rijndael_names): Add "AES128" and "AES-128". - (rijndael192_names): Add "AES-192". - (rijndael256_names): Add "AES-256". - -2008-12-05 Werner Koch - - * dsa.c (generate): Add arg TRANSIENT_KEY and use it to detrmine - the RNG quality needed. - (dsa_generate_ext): Parse the transient-key flag und pass it to - generate. - -2008-11-28 Werner Koch - - * dsa.c (generate_fips186): Add arg DERIVEPARMS and use the seed - value if available. - - * primegen.c (_gcry_generate_fips186_2_prime): Fix inner p loop. - -2008-11-26 Werner Koch - - * primegen.c (_gcry_generate_fips186_3_prime): New. - * dsa.c (generate_fips186): Add arg USE_FIPS186_2. - (dsa_generate_ext): Parse new flag use-fips183-2. - -2008-11-25 Werner Koch - - * dsa.c (generate_fips186): New. - (dsa_generate_ext): Use new function if derive-parms are given or - if in FIPS mode. - * primegen.c (_gcry_generate_fips186_2_prime): New. - -2008-11-24 Werner Koch - - * pubkey.c (gcry_pk_genkey): Insert code to output extrainfo. - (pubkey_generate): Add arg R_EXTRAINFO and pass it to the extended - key generation function. - * rsa.c (gen_x931_parm_xp, gen_x931_parm_xi): New. - (generate_x931): Generate params if not given. - (rsa_generate_ext): Parse use-x931 flag. Return p-q-swapped - indicator. - * dsa.c (dsa_generate_ext): Put RETFACTORS into R_EXTRAINFO if - possible. - - * pubkey.c (gcry_pk_genkey): Remove parsing of almost all - parameters and pass the parameter S-expression to pubkey_generate. - (pubkey_generate): Simplify by requitring modules to parse the - parameters. Remove the special cases for Elgamal and ECC. - (sexp_elements_extract_ecc): Add arg EXTRASPEC and use it. Fix - small memory leak. - (sexp_to_key): Pass EXTRASPEC to sexp_elements_extract_ecc. - (pubkey_table) [USE_ELGAMAL]: Add real extraspec. - * rsa.c (rsa_generate_ext): Adjust for new calling convention. - * dsa.c (dsa_generate_ext): Ditto. - * elgamal.c (_gcry_elg_generate): Ditto. Rename to elg_generate_ext. - (elg_generate): New. - (_gcry_elg_generate_using_x): Remove after merging code with - elg_generate_ext. - (_gcry_pubkey_extraspec_elg): New. - (_gcry_elg_check_secret_key, _gcry_elg_encrypt, _gcry_elg_sign) - (_gcry_elg_verify, _gcry_elg_get_nbits): Make static and remove - _gcry_ prefix. - * ecc.c (_gcry_ecc_generate): Rename to ecc_generate_ext and - adjust for new calling convention. - (_gcry_ecc_get_param): Rename to ecc_get_param and make static. - (_gcry_pubkey_extraspec_ecdsa): Add ecc_generate_ext and - ecc_get_param. - -2008-11-20 Werner Koch - - * pubkey.c (pubkey_generate): Add arg DERIVEPARMS. - (gcry_pk_genkey): Parse derive-parms and pass it to above. - * rsa.c (generate_x931): New. - (rsa_generate_ext): Add arg DERIVEPARMS and call new function in - fips mode or if DERIVEPARMS is given. - * primegen.c (_gcry_derive_x931_prime, find_x931_prime): New. - -2008-11-19 Werner Koch - - * rsa.c (rsa_decrypt): Use gcry_create_nonce for blinding. - (generate): Rename to generate_std. - -2008-11-05 Werner Koch - - * md.c (md_open): Use a switch to set the Bsize. - (prepare_macpads): Fix long key case for SHA384 and SHA512. - - * cipher.c (gcry_cipher_handle): Add field EXTRASPEC. - (gcry_cipher_open): Set it. - (gcry_cipher_ctl): Add private control code to disable weak key - detection and to return the current input block. - * des.c (_tripledes_ctx): Add field FLAGS. - (do_tripledes_set_extra_info): New. - (_gcry_cipher_extraspec_tripledes): Add new function. - (do_tripledes_setkey): Disable weak key detection. - -2008-10-24 Werner Koch - - * md.c (digest_table): Allow MD5 in fips mode. - (md_register_default): Take special action for MD5. - (md_enable, gcry_md_hash_buffer): Ditto. - -2008-09-30 Werner Koch - - * rijndael.c (do_setkey): Properly align "t" and "tk". - (prepare_decryption): Properly align "w". Fixes bug #936. - -2008-09-18 Werner Koch - - * pubkey.c (gcry_pk_genkey): Parse domain parameter. - (pubkey_generate): Add new arg DOMAIN and remove special case for - DSA with qbits. - * rsa.c (rsa_generate): Add dummy args QBITS, NAME and DOMAIN and - rename to rsa_generate_ext. Change caller. - (_gcry_rsa_generate, _gcry_rsa_check_secret_key) - (_gcry_rsa_encrypt, _gcry_rsa_decrypt, _gcry_rsa_sign) - (_gcry_rsa_verify, _gcry_rsa_get_nbits): Make static and remove - _gcry_ prefix. - (_gcry_pubkey_spec_rsa, _gcry_pubkey_extraspec_rsa): Adjust names. - * dsa.c (dsa_generate_ext): New. - (_gcry_dsa_generate): Replace code by a call to dsa_generate. - (_gcry_dsa_check_secret_key, _gcry_dsa_sign, _gcry_dsa_verify) - (_gcry_dsa_get_nbits): Make static and remove _gcry prefix. - (_gcry_dsa_generate2): Remove. - (_gcry_pubkey_spec_dsa): Adjust to name changes. - (_gcry_pubkey_extraspec_rsa): Add dsa_generate_ext. - -2008-09-16 Werner Koch - - * ecc.c (run_selftests): Add arg EXTENDED. - -2008-09-12 Werner Koch - - * rsa.c (test_keys): Do a bad case signature check. - * dsa.c (test_keys): Do a bad case check. - - * cipher.c (_gcry_cipher_selftest): Add arg EXTENDED and pass it - to the called tests. - * md.c (_gcry_md_selftest): Ditto. - * pubkey.c (_gcry_pk_selftest): Ditto. - * rijndael.c (run_selftests): Add arg EXTENDED and pass it to the - called tests. - (selftest_fips_128): Add arg EXTENDED and run only one test - non-extended mode. - (selftest_fips_192): Add dummy arg EXTENDED. - (selftest_fips_256): Ditto. - * hmac-tests.c (_gcry_hmac_selftest): Ditto. - (run_selftests): Ditto. - (selftests_sha1): Add arg EXTENDED and run only one test - non-extended mode. - (selftests_sha224, selftests_sha256): Ditto. - (selftests_sha384, selftests_sha512): Ditto. - * sha1.c (run_selftests): Add arg EXTENDED and pass it to the - called test. - (selftests_sha1): Add arg EXTENDED and run only one test - non-extended mode. - * sha256.c (run_selftests): Add arg EXTENDED and pass it to the - called tests. - (selftests_sha224): Add arg EXTENDED and run only one test - non-extended mode. - (selftests_sha256): Ditto. - * sha512.c (run_selftests): Add arg EXTENDED and pass it to the - called tests. - (selftests_sha384): Add arg EXTENDED and run only one test - non-extended mode. - (selftests_sha512): Ditto. - * des.c (run_selftests): Add arg EXTENDED and pass it to the - called test. - (selftest_fips): Add dummy arg EXTENDED. - * rsa.c (run_selftests): Add dummy arg EXTENDED. - - * dsa.c (run_selftests): Add dummy arg EXTENDED. - - * rsa.c (extract_a_from_sexp): New. - (selftest_encr_1024): Check that the ciphertext does not match the - plaintext. - (test_keys): Improve tests and return an error status. - (generate): Return an error if test_keys fails. - * dsa.c (test_keys): Add comments and return an error status. - (generate): Return an error if test_keys failed. - -2008-09-11 Werner Koch - - * rsa.c (_gcry_rsa_decrypt): Return an error instead of calling - BUG in case of a practically impossible condition. - (sample_secret_key, sample_public_key): New. - (selftest_sign_1024, selftest_encr_1024): New. - (selftests_rsa): Implement tests. - * dsa.c (sample_secret_key, sample_public_key): New. - (selftest_sign_1024): New. - (selftests_dsa): Implement tests. - -2008-09-09 Werner Koch - - * hmac-tests.c (selftests_sha1): Add tests. - (selftests_sha224, selftests_sha384, selftests_sha512): Make up tests. - - * hash-common.c, hash-common.h: New. - * sha1.c (selftests_sha1): Add 3 tests. - * sha256.c (selftests_sha256, selftests_sha224): Ditto. - * sha512.c (selftests_sha512, selftests_sha384): Ditto. - -2008-08-29 Werner Koch - - * pubkey.c (gcry_pk_get_keygrip): Remove the special case for RSA - and check whether a custom computation function has been setup. - * rsa.c (compute_keygrip): New. - (_gcry_pubkey_extraspec_rsa): Setup this function. - * ecc.c (compute_keygrip): New. - (_gcry_pubkey_extraspec_ecdsa): Setup this function. - -2008-08-28 Werner Koch - - * cipher.c (cipher_decrypt, cipher_encrypt): Return an error if - mode NONE is used. - (gcry_cipher_open): Allow mode NONE only with a debug flag set and - if not in FIPS mode. - -2008-08-26 Werner Koch - - * pubkey.c (pubkey_generate): Add arg KEYGEN_FLAGS. - (gcry_pk_genkey): Implement new parameter "transient-key" and - pass it as flags to pubkey_generate. - (pubkey_generate): Make use of an ext_generate function. - * rsa.c (generate): Add new arg transient_key and pass appropriate - args to the prime generator. - (_gcry_rsa_generate): Factor all code out to ... - (rsa_generate): .. new func with extra arg KEYGEN_FLAGS. - (_gcry_pubkey_extraspec_ecdsa): Setup rsa_generate. - * primegen.c (_gcry_generate_secret_prime) - (_gcry_generate_public_prime): Add new arg RANDOM_LEVEL. - -2008-08-21 Werner Koch - - * primegen.c (_gcry_generate_secret_prime) - (_gcry_generate_public_prime): Use a constant macro for the random - level. - -2008-08-19 Werner Koch - - * pubkey.c (sexp_elements_extract_ecc) [!USE_ECC]: Do not allow - allow "curve" parameter. - -2008-08-15 Werner Koch - - * pubkey.c (_gcry_pk_selftest): New. - * dsa.c (selftests_dsa, run_selftests): New. - * rsa.c (selftests_rsa, run_selftests): New. - * ecc.c (selftests_ecdsa, run_selftests): New. - - * md.c (_gcry_md_selftest): New. - * sha1.c (run_selftests, selftests_sha1): New. - * sha256.c (selftests_sha224, selftests_sha256, run_selftests): New. - * sha512.c (selftests_sha384, selftests_sha512, run_selftests): New. - - * des.c (selftest): Remove static variable form selftest. - (des_setkey): No on-the-fly self test in fips mode. - (tripledes_set3keys): Ditto. - - * cipher.c (_gcry_cipher_setkey, _gcry_cipher_setiv): - - * dsa.c (generate): Bail out in fips mode if NBITS is less than 1024. - * rsa.c (generate): Return an error code if the the requested size - is less than 1024 and we are in fpis mode. - (_gcry_rsa_generate): Take care of that error code. - - * ecc.c (generate_curve): In fips mode enable only NIST curves. - - * cipher.c (_gcry_cipher_selftest): New. - - * sha512.c (_gcry_digest_extraspec_sha384) - (_gcry_digest_extraspec_sha512): New. - * sha256.c (_gcry_digest_extraspec_sha224) - (_gcry_digest_extraspec_sha256): New. - * sha1.c (_gcry_digest_extraspec_sha1): New. - * ecc.c (_gcry_pubkey_extraspec_ecdsa): New. - * dsa.c (_gcry_pubkey_extraspec_dsa): New. - * rsa.c (_gcry_pubkey_extraspec_rsa): New. - * rijndael.c (_gcry_cipher_extraspec_aes) - (_gcry_cipher_extraspec_aes192, _gcry_cipher_extraspec_aes256): New. - * des.c (_gcry_cipher_extraspec_tripledes): New. - - * cipher.c (gcry_cipher_register): Rename to _gcry_cipher_register. - Add arg EXTRASPEC. - (dummy_extra_spec): New. - (cipher_table_entry): Add extraspec field. - * md.c (_gcry_md_register): Rename to _gcry_md_register. Add - arg EXTRASPEC. - (dummy_extra_spec): New. - (digest_table_entry): Add extraspec field. - * pubkey.c (gcry_pk_register): Rename to _gcry_pk_register. Add - arg EXTRASPEC. - (dummy_extra_spec): New. - (pubkey_table_entry): Add extraspec field. - - * ac.c: Let most public functions return GPG_ERR_UNSUPPORTED in - fips mode. - - * pubkey.c (pubkey_table_entry): Add field FIPS_ALLOWED and mark - appropriate algorithms. - (dummy_generate, dummy_check_secret_key, dummy_encrypt) - (dummy_decrypt, dummy_sign, dummy_verify, dummy_get_nbits): Signal - a fips error when used. - (gcry_pk_register): In fips mode do not allow to register new - algorithms. - - * md.c (digest_table): Add field FIPS_ALLOWED and mark appropriate - algorithms. - (md_register_default): In fips mode register only fips algorithms. - (gcry_md_register): In fips mode do not allow to register new - algorithms. - (gcry_md_get): Signal a fips error if called. - (gcry_md_hash_buffer): Do not allow rmd160 when not in fips mode. - (md_start_debug): Disable in fips_mode. - - * md.c (gcry_md_register_default): Rename to .. - (md_register_default): .. this. - (md_digest): Remove this commented fucntion. - * pubkey.c (gcry_pk_register_default): Rename to .. - (pk_register_default): .. this. - - * cipher.c (cipher_table_entry): Add field FIPS_ALLOWED. - (gcry_cipher_register_default): Register only fips approved - algorithms. - (gcry_cipher_register): Do not allow to register new ciphers. - (cipher_setiv): Signal fips error. - - * cipher (gcry_cipher_register_default): Rename to .. - (cipher_register_default): .. this. - (REGISTER_DEFAULT_CIPHERS): Adjust for that change. - -2008-07-05 Werner Koch - - * random-daemon.c, random.h, rndhw.c, rndunix.c, rand-internal.h - * random.c, rndegd.c, rndlinux.c, rndw32.c: Move to ../cipher. - * Makefile.am: Remove random stuff. - -2008-06-24 Szakats Istvan (wk) - - * ac.c (_gcry_ac_key_destroy, _gcry_ac_key_pair_generate): Relase - some more memory. - -2008-04-22 Werner Koch - - * rijndael.c (_gcry_aes_cfb_enc, _gcry_aes_cbc_enc) - (_gcry_aes_cfb_dec, _gcry_aes_cbc_dec): Use Padlock if possible. - -2008-04-18 Werner Koch - - * sha1.c (transform_aligned): Remove. That is will obviosuly not - work because we need a scratch working area and our internal API - does not allow to modify the buffers. - - * rijndael.c: Factor tables out to .. - * rijndael-tables.h: .. new. - - * ac.c (ac_data_extract): Make static. - - * camellia.h [HAVE_CONFIG_H]: Include config.h. - - * rndw32.c (registry_poll): Only print the performance data - problem warning once. Suggested by Simon Josefsson. - -2008-03-19 Werner Koch - - * cipher.c (gcry_cipher_open) [USE_AES]: Init bulk encryption only - if requested. Suggested by Dirk Stoecker. - -2008-03-18 Werner Koch - - * sha1.c: Include stdint.h. - (transform): Add arg NBLOCKS so that we can work on more than one - block and avoid updates of the chaining variables. Changed all - callers to use 1. - (sha1_write): Replace loop around transform. - (transform_aligned) [WORDS_BIGENDIAN]: New. - (TRANSFORM): New macro to replace all direct calls of transform. - -2008-03-17 Werner Koch - - * rijndael.c (_gcry_aes_cfb_dec): New. - (do_encrypt): Factor code out to .. - (do_encrypt_aligned): .. New. - (_gcry_aes_cfb_enc, _gcry_aes_cfb_dec): Use new function. - (do_decrypt): Factor code out to .. - (do_decrypt_aligned): .. new. - (_gcry_aes_cbc_enc, _gcry_aes_cbc_dec): New. - * cipher.c (struct gcry_cipher_handle): Put field IV into new - union U_IV to enforce proper alignment. Change all users. - (do_cfb_decrypt): Optimize. - (do_cbc_encrypt, do_cbc_decrypt): Optimize. - -2008-03-15 Werner Koch - - * rijndael.c (_gcry_aes_cfb_enc): New. - * cipher.c (struct gcry_cipher_handle): Add field ALGO and BULK. - (gcry_cipher_open): Set ALGO and BULK. - (do_cfb_encrypt): Optimize. - -2008-02-18 Werner Koch - - * rsa.c (_gcry_rsa_verify) [IS_DEVELOPMENT_VERSION]: Print - intermediate results. - -2008-01-08 Werner Koch - - * random.c (add_randomness): Do not just increment - POOL_FILLED_COUNTER but update it by the actual amount of data. - -2007-12-13 Werner Koch - - * pubkey.c (sexp_data_to_mpi): Support SHA-224. - -2007-12-05 Werner Koch - - * rijndael.c (USE_PADLOCK): Depend on ENABLE_PADLOCK_SUPPORT. - * rndhw.c (USE_PADLOCK): Ditto - - * rsa.c (secret): Fixed condition test for using CRT. Reported by - Dean Scarff. Fixes bug#864. - (_gcry_rsa_check_secret_key): Return an erro if the optional - parameters are missing. - * pubkey.c (sexp_elements_extract): Add arg ALGO_NAME. Changed all - callers to pass NULL. Add hack to allow for optional RSA - parameters. - (sexp_to_key): Pass algo name to sexp_elements_extract. - -2007-12-03 Werner Koch - - * random.c (gcry_random_add_bytes): Implement it. - * rand-internal.h (RANDOM_ORIGIN_EXTERNAL): New. - -2007-11-30 Werner Koch - - * rndhw.c: New. - * rndlinux.c (_gcry_rndlinux_gather_random): Try to read 50% - directly from the hwrng. - * random.c (do_fast_random_poll): Also run the hw rng fast poll. - (_gcry_random_dump_stats): Tell whether the hw rng failed. - -2007-11-29 Werner Koch - - * rijndael.c (USE_PADLOCK): Define new macro used for ia32. - (RIJNDAEL_context) [USE_PADLOCK]: Add fields USE_PADLOCK and - PADLOCK_KEY. - (do_setkey) [USE_PADLOCK]: Enable padlock if available for 128 bit - AES. - (do_padlock) [USE_PADLOCK]: New. - (rijndael_encrypt, rijndael_decrypt) [USE_PADLOCK]: Divert to - do_padlock. - * cipher.c (cipher_context_alignment_t): New. Use it in this - module in place of PROPERLY_ALIGNED_TYPE. - (NEED_16BYTE_ALIGNED_CONTEXT): Define macro for ia32. - (struct gcry_cipher_handle): Add field HANDLE_OFFSET. - (gcry_cipher_open): Take care of increased alignment requirements. - (gcry_cipher_close): Ditto. - -2007-11-28 Werner Koch - - * sha256.c (asn224): Fixed wrong template. It happened due to a - bug in RFC4880. SHA-224 is not in the stable version of libgcrypt - so the consequences are limited to users of this devel version. - -2007-10-31 Werner Koch - - * ac.c (gcry_ac_data_new): Remove due to the visibility wrapper. - (gcry_ac_data_destroy, gcry_ac_data_copy, gcry_ac_data_length) - (gcry_ac_data_set, gcry_ac_data_get_name, gcry_ac_data_get_index) - (gcry_ac_data_to_sexp, gcry_ac_data_from_sexp) - (gcry_ac_data_clear, gcry_ac_io_init, gcry_ac_open) - (gcry_ac_close, gcry_ac_key_init, gcry_ac_key_pair_generate) - (gcry_ac_key_pair_extract, gcry_ac_key_destroy) - (gcry_ac_key_pair_destroy, gcry_ac_key_data_get) - (gcry_ac_key_test, gcry_ac_key_get_nbits, gcry_ac_key_get_grip) - (gcry_ac_data_encrypt, gcry_ac_data_decrypt, gcry_ac_data_sign) - (gcry_ac_data_verify, gcry_ac_data_encode, gcry_ac_data_decode) - (gcry_ac_mpi_to_os, gcry_ac_mpi_to_os_alloc, gcry_ac_os_to_mpi) - (gcry_ac_data_encrypt_scheme, gcry_ac_data_decrypt_scheme) - (gcry_ac_data_sign_scheme, gcry_ac_data_verify_scheme) - (gcry_ac_io_init_va): Ditto. - (gcry_ac_id_to_name, gcry_ac_name_to_id): Remove as these - deprecated functions are now implemented by visibility.c. - -2007-10-26 Werner Koch - - * rndw32.c: Disable debug flag. - -2007-10-25 Werner Koch - - * rndw32.c: Updated from current cryptlib snapshot and modified - for our use. Removed support from pre NT systems. - (slow_gatherer_windows95): Remove. - (_gcry_rndw32_gather_random): Require an NT platform. - (init_system_rng, read_system_rng, read_mbm_data): New. - (slow_gatherer_windowsNT): Rename to ... - (slow_gatherer): .. this. Read system RNG and MBM. - (registry_poll): New with code factored out from slow_gatherer. - -2007-08-23 Werner Koch - - * random.c (pool_filled_counter): New. - (add_randomness): Use it. - -2007-08-22 Werner Koch - - * rndw32.c, rndunix.c: Switched to LGPL. - -2007-05-30 Werner Koch - - * camellia.h, camellia.c: Replace by new LGPL version and adjusted - camellia.h. - -2007-05-09 Marcus Brinkmann - - * ac.c (_gcry_ac_io_init_va, _gcry_ac_io_write, _gcry_ac_io_read): - Adjust users of gcry_ac_io_t because union is not anonymous - anymore. - -2007-05-02 Werner Koch - - * camellia-glue.c (camellia_setkey, camellia_encrypt) - (camellia_decrypt): Recalculated used stack size in called - functions. - * camellia.h: Redefine external symbols. - -2007-05-02 David Shaw - - * Makefile.am, cipher.c: Add Camellia. - - * camellia-glue.c: New. The necessary glue to interface libgcrypt - to the stock NTT Camellia distribution. - - * camellia.h, camellia.c: The stock NTT Camellia distribution - (GPL). - -2007-04-30 David Shaw - - * cipher.c: Use #if instead of #ifdef as configure defines the - USE_cipher defines as 0 for disabled. - -2007-04-30 Werner Koch - - * rndegd.c (_gcry_rndegd_set_socket_name): New. - -2007-04-30 Marcus Brinkmann - - * ecc.c (ec2os): Fix relocation of short numbers. - - * ecc.c (generate_key): Do not allocate D, which will be allocated - by GEN_K. Remove G. Fix test if g_x, g_y resp. q_x, q_y are - requested. - (_gcry_ecc_generate): Release unneeded members of SK. - * pubkey.c (sexp_to_key): Release NAME. - -2007-04-28 Marcus Brinkmann - - * ac.c (gcry_ac_mpi): Remove member NAME_PROVIDED. - (ac_data_mpi_copy, _gcry_ac_data_set, _gcry_ac_data_get_name) - (_gcry_ac_data_get_index, ac_data_construct): Adjust handling of - NAME accordingly. - -2007-04-20 Werner Koch - - * ecc.c (domain_parms): Add standard brainpool curves. - -2007-04-18 Werner Koch - - * ecc.c (generate_curve): Implement alias mechanism. - - * pubkey.c (sexp_elements_extract_ecc): New. - (sexp_to_key): Add special case for ecc. - (sexp_to_key, sexp_to_sig, sexp_to_enc, gcry_pk_genkey): Replace - name_terminated stuff by a call to _gcry_sexp_nth_string. - (gcry_pk_get_keygrip): Ditto. - -2007-04-16 Werner Koch - - * ecc.c (_gcry_ecc_generate): Renamed DUMMY to CURVE and use it. - -2007-04-13 Marcus Brinkmann - - * ac.c (ac_data_construct): Cast const away to suppress compiler - warning. - - * ecc.c (ecc_generate): Avoid compiler warning for unused argument - DUMMY. - (ecc_verify): Avoid compiler warning for unused arguments CMP and - OPAQUEV. - -2007-04-06 Werner Koch - - * sha1.c (oid_spec_sha1): Add another oid from X9.62. - -2007-03-28 Werner Koch - - * pubkey.c (gcry_pk_genkey): Do not issue misc-key-info if it is - empty. - (gcry_pk_genkey): New parameter "curve". - - * ecc.c: Entirely rewritten with only a few traces of the old - code left. - (_gcry_ecc_generate): New. - (generate_key) New arg NAME. - (generate_curve): Ditto. Return actual number of NBITS. - -2007-03-26 Werner Koch - - * pubkey.c (gcry_pk_genkey): Increase size of SKEY array and add a - runtime bounds check. - -2007-03-23 Werner Koch - - * ecc.c (ecc_ctx_init, ecc_ctx_free, ecc_mod, ecc_mulm): New. - (duplicate_point, sum_points, escalar_mult): Don't use a - copy of base->p. Replaced all mpi_mulm by ecc_mulm so that we can - experiment with different algorithms. - (generate_key, check_secret_key, sign, verify): Initialize a - computation context for use by ecc_mulm. - -2007-03-22 Werner Koch - - * pubkey.c (pubkey_table): Initialize ECC. - * Makefile.am (EXTRA_libcipher_la_SOURCES): Add ecc.c. - * ecc.c: New. Heavily reformatted and changed for use in libgcrypt. - (point_init): New. - (escalar_mult): Make arg R the first arg to be similar to the mpi - functions. - (duplicate_point): Ditto - (sum_points): Ditto - (sign, verify): Remove unneeded copy operations. - (sum_points): Removed memory leaks and optimized some compares. - (verify): Simplified input check. - -2007-03-14 Werner Koch - - * random.c (MASK_LEVEL): Removed macro as it was used only at one - place. Open coded it there. - (gcry_randomize, _gcry_update_random_seed_file) - (_gcry_fast_random_poll): Factor lock code out to .. - (lock_pool, unlock_pool): .. new. - (initialize): Look the pool while allocating. - (read_random_source, do_fast_random_poll): Moved intialization to ... - (initialize): .. here. - (_gcry_enable_quick_random_gen): No more need for initialization. - (is_initialized): Moved this global flag to .. - (initialize): .. here and changed all users to unconditionally call - initialize. - (add_randomness): Remove initalization here. It simply can't - happen. - - * random.c (enum random_origins): Moved to .. - * rand-internal.h: .. here. - * rndunix.c (_gcry_rndunix_gather_random): Use enum in prototype - for ORIGIN and renamed REQUESTOR to ORIGIN. - * rndegd.c (_gcry_rndegd_gather_random): Ditto. - * rndlinux.c (_gcry_rndlinux_gather_random): Ditto. - * rndw32.c (_gcry_rndw32_gather_random): Ditto. - (_gcry_rndw32_gather_random_fast): Ditto. - -2007-03-13 Werner Koch - - * random.c (enum random_origins): New. - (add_randomness): Renamed arg SOURCE to ORIGIN. - (read_random_source): Renamed arg REQUESTOR to ORIGIN. - (getfnc_gather_random): Removed static variable because this - function is only called one and thus we don't need this - optimization. - (_gcry_quick_random_gen): Removed and replaced by.. - (_gcry_enable_quick_random_gen): .. this. It is onlyu used to - enable it and it does not make sense to disable it later. Changed - the only one caller too. - (get_random_bytes): Removed. - (gcry_random_bytes, gcry_random_bytes_secure): Implement in terms - of gcry_randomize. - * random-daemon.c (_gcry_daemon_get_random_bytes): Removed. - -2007-02-23 Werner Koch - - * elgamal.c (generate): Removed unused variable TEMP. - (test_keys): New arg NODIE. - (generate_using_x, _gcry_elg_generate_using_x): New. - * pubkey.c (pubkey_generate): New arg XVALUE and direct call to - the new elgamal generate fucntion. - (gcry_pk_genkey): Parse the new "xvalue" tag. - -2007-02-22 Werner Koch - - * pubkey.c (sexp_data_to_mpi): Handle dynamically allocated - algorithms. Suggested by Neil Dunbar. Fixes bug#596. - - * rndw32.c (_gcry_rndw32_gather_random_fast): Make it return void. - - * cipher.c (gcry_cipher_algo_name): Simplified. - - * random.c: Use the daemon only if compiled with USE_RANDOM_DAEMON. - - * Makefile.am (libcipher_la_SOURCES): Build random-daemon support - only if requested. - -2007-02-21 Werner Koch - - * random.c (rndpool, keypool): Make unsigned. - (mix_pool): Change char* variables to unsigned char*. - (gcry_randomize): Make arg BUFFER a void*. - (gcry_create_nonce): Ditto. - - * rmd160.c (gcry_rmd160_mixblock): Make BUFFER a void*. - (_gcry_rmd160_hash_buffer): Make OUTBUF and BUFFER void*. - * sha1.c (_gcry_sha1_hash_buffer): Ditto. - - * cipher.c (gcry_cipher_encrypt, cry_cipher_decrypt): Change - buffer args to void*. - (gcry_cipher_register): Make ALGORITHM_ID a int *. - - * md.c (md_start_debug): Make SUFFIX a const char*. Use snprintf. - (gcry_md_debug): New. - (gcry_md_ctl): Changed arg BUFFER from unsigned char*. - - * md.c (md_write): Make INBUF a const void*. - (gcry_md_write): Remove needless cast. - * crc.c (crc32_write): Make INBUF a const void* - (update_crc32, crc24rfc2440_write): Ditto. - * sha512.c (sha512_write, transform): Ditto. - * sha256.c (sha256_write, transform): Ditto. - * rmd160.c (rmd160_write, transform): Ditto. - * md5.c (md5_write, transform): Ditto. - * md4.c (md4_write, transform): Ditto. - * sha1.c (sha1_write, transform): Ditto. - - * tiger.c (tiger_write, transform): Ditto. - * whirlpool.c (whirlpool_write, whirlpool_add, transform): Ditto. - - * elgamal.c (elg_names): Change to a const*. - * dsa.c (dsa_names): Ditto. - * rsa.c (rsa_names): Ditto. - * pubkey.c (gcry_pk_lookup_func_name): Make ALIASES a const. - -2007-02-20 Werner Koch - - * rndlinux.c (open_device): Remove unsused arg MINOR. - -2007-01-30 Werner Koch - - * sha256.c (oid_spec_sha256): Add alias from pkcs#1. - * sha512.c (oid_spec_sha512): Ditto. - (oid_spec_sha384): Ditto. - -2006-12-18 Werner Koch - - * rndlinux.c (set_cloexec_flag): New. - (open_device): Set close-on-exit flags. Suggested by Max - Kellermann. Fixes Debian#403613. - - * Makefile.am (AM_CPPFLAGS, AM_CFLAGS): Splitted and merged - Moritz' changes. - (INCLUDES): Removed. - -2006-11-30 Werner Koch - - * serpent.c (byte_swap_32): Remove trailing semicolon. - -2006-11-15 Werner Koch - - * Makefile.am (INCLUDES): Include ../src/ - -2006-11-03 Werner Koch - - * random.c [HAVE_GETTIMEOFDAY]: Included sys/time.h and not - sys/times.h. Reported by Rafaël Carré. - -2006-11-05 Moritz Schulte - - * Makefile.am (AM_CFLAGS): Added -I$(top_builddir)/src so that the - new gcrypt.h is used, not the one installed in the system. - -2006-10-25 Werner Koch - - * primegen.c (prime_generate_internal): Tweaked use of secure - memory and entropy use. Safe unused primes from the pool. Allocate - at least a pool of 30. - (save_pool_prime, get_pool_prime): New. - -2006-10-23 Werner Koch - - * ac.c (_gcry_ac_data_from_sexp): Reset sexp_tmp for failsafe - means. Release sexp_cur if needed. Reported by Dirk Stoecker. - - * pubkey.c (pubkeys_registered_lock): Intialized it. It is not - realy needed because this is a mere initialization to 0 anyway. - Noted by Victor Stinner. - -2006-10-17 Werner Koch - - * dsa.c (_gcry_dsa_generate2): New. - (generate): New arg QBITS. Add sanity checks for reasonable qbits - and nbits. - * pubkey.c (gcry_pk_genkey): Parse an qbits element. - (pubkey_generate): New arg QBITS. Pass it to the DSA generation. - -2006-10-05 Werner Koch - - * md.c (gcry_md_algo_info) : Check that the algo is - available. - -2006-10-04 David Shaw (wk) - - * tiger.c (round): Rename to tiger_round as gcc 4 has a built-in - round function that this conflicts with. - -2006-09-11 Werner Koch - - * rndw32.c (slow_gatherer_windowsNT): While adding data use the - size of the diskPerformance and not its address. Has been fixed in - GnuPG more than a year ago. Noted by Lee Fisher. - -2006-08-30 Werner Koch - - * pubkey.c (sexp_data_to_mpi): Need to allow "ripemd160" here as - this is the canonical name. - -2006-08-29 Hye-Shik Chang (wk) - - * seed.c: New. - -2006-08-03 Werner Koch - - * random-daemon.c (_gcry_daemon_initialize_basics): Don't - initialize the socket. Remove arg SOCKETNAME. - (connect_to_socket): Make sure that daemon is set to -1 on error. - (call_daemon): Initialize the socket on the first call. - (_gcry_daemon_randomize, _gcry_daemon_get_random_bytes) - (_gcry_daemon_create_nonce): New arg SOCKETNAME. - * random.c (initialize): Call new daemon initializator. - (get_random_bytes, gcry_randomize, gcry_create_nonce): Pass socket - name to daemon call and reset allow_daemon on failure. - -2006-07-26 Werner Koch - - * rmd160.c (_gcry_rmd160_mixblock): Add cast to transform call. - - * blowfish.c (selftest): Cast string to usnigned char*. - - * primegen.c (prime_generate_internal): Cast unsigned/char* - mismatch in calling m_out_of_n. - (is_prime): Changed COUNT to unsigned int *. - - * ac.c (_gcry_ac_data_copy): Initialize DATA_MPIS. - - * random.c (gcry_create_nonce): Update the pid after a fork. - Reported by Uoti Urpala. - -2006-07-04 Marcus Brinkmann - - * sha512.c: Fix typo in copyright notice. - -2006-06-21 Werner Koch - - * rsa.c (_gcry_rsa_generate): Replace xcalloc by calloc. - * pubkey.c (gcry_pk_encrypt, gcry_pk_sign): Ditto. - (sexp_to_key, sexp_to_sig, sexp_to_enc, gcry_pk_encrypt) - (gcry_pk_sign, gcry_pk_genkey, gcry_pk_get_keygrip): Ditto. - * md.c (md_copy): Ditto. - -2006-04-22 Moritz Schulte - - * random-daemon.c (_gcry_daemon_initialize_basics): New argument: - SOCKETNAME. Passing on to connect_to_socket() if non-NULL. - (connect_to_socket, writen, readn, call_daemon): New functions. - (_gcry_daemon_randomize, _gcry_daemon_get_random_bytes) - (_gcry_daemon_create_nonce): Call call_daemon(). - (RANDOM_DAEMON_SOCKET): New symbol. - (daemon_socket): New static variable. - - * random.h (_gcry_daemon_initialize_basics): New parameter: - SOCKETNAME. - (_gcry_set_random_daemon_socket): New declaration. - - * random.c (initialize_basics): Pass DAEMON_SOCKET_NAME to - _gcry_daemon_initialize_basics. - (_gcry_set_random_daemon_socket): New function, setting - DAEMON_SOCKET_NAME. - -2006-04-01 Moritz Schulte - - * ac.c (eme_pkcs_v1_5_encode): Use KEY_SIZE directly, no need to - call gcry_ac_key_get_nbits. - (eme_pkcs_v1_5_decode): Likewise. - (ac_es_dencode_prepare_pkcs_v1_5): Fill options_em structure with - key_size. - (_gcry_ac_data_dump, gcry_ac_data_dump): New functions. - (_gcry_ac_data_to_sexp, _gcry_ac_data_from_sexp): More or less - rewritten; changed S-Expression format so that it matches the one - used in pubkey.c. - -2006-03-15 Werner Koch - - * random-daemon.c: New. - * random.c (_gcry_use_random_daemon): New. - (get_random_bytes, gcry_randomize, gcry_create_nonce): Try - diverting to the daemon functions. - -2006-03-14 Werner Koch - - * random.c (lock_seed_file): New. - (read_seed_file, _gcry_update_random_seed_file): Use it. - - * random.c (gcry_create_nonce): Detect a fork and re-seed. - (read_pool): Fixed the fork detection; it used to work only for - multi-threaded processes. - -2006-03-12 Brad Hards (wk) - - * md.c (md_open): Use new variable macpads_Bsize instead of - hardwiring the block size. Changed at all places. - -2006-03-10 Brad Hards (wk, patch 2005-04-22) - - * md.c, sha256.c: Add support for SHA-224. - (sha224_init): New. - -2006-01-18 Brad Hards (wk 2006-03-07) - - * cipher.c (cipher_encrypt, cipher_decrypt, do_ofb_encrypt) - (do_ofb_decrypt, gcry_cipher_open): Implement Output Feedback Mode. - -2005-11-02 Moritz Schulte - - * pubkey.c (gcry_pk_algo_name): Return "?" instead of NULL for - unknown algorithm IDs. - * cipher.c (cipher_algo_to_string): Likewise. - -2005-11-01 Moritz Schulte - - * pubkey.c (gcry_pk_algo_info): Don't forget to break after switch - case. - -2005-09-19 Werner Koch - - * dsa.c (generate): Add preliminary support for 2 and 4 keys. - Return an error code if the key size is not supported. - (_gcry_dsa_generate): Return an error. - -2005-08-22 Werner Koch - - * primegen.c (check_prime): New arg RM_ROUNDS. - (prime_generate_internal): Call it here with 5 rounds as used - before. - (gcry_prime_check): But here with 64 rounds. - (is_prime): Make sure never to use less than 5 rounds. - -2005-04-16 Moritz Schulte - - * ac.c (_gcry_ac_init): New function. - -2005-04-12 Moritz Schulte - - * ac.c (_gcry_ac_io_write, _gcry_ac_io_read): Initialize err to - make the compiler happy. - Always use errno, now that gcry_malloc() is guaranteed to set - errno on failure. - (_gcry_ac_data_to_sexp): Don't forget to goto out after error in - loop. - (_gcry_ac_data_to_sexp): Remove unused variable: mpi_list; - (_gcry_ac_data_to_sexp): Always deallocate sexp_buffer. - (_gcry_ac_data_from_sexp): Don't forget to initialize data_set_new. - (_gcry_ac_data_from_sexp): Handle special case, which is - necessary, since gcry_sexp_nth() does not distinguish between - "element does not exist" and "element is the empty list". - (_gcry_ac_io_init_va): Use assert to make sure that mode and type - are correct. - Use gcry_error_t types where gcry_err_code_t types have been used - before. - -2005-04-11 Moritz Schulte - - * ac.c (_gcry_ac_data_sign_scheme): Don't forget to initialize - buffer. - - * whirlpool.c: New file. - * md.c (digest_table): Add whirlpool. - * Makefile.am (EXTRA_libcipher_la_SOURCES): Added: whirlpool.c. - -2005-03-30 Moritz Schulte - - * ac.c (_gcry_ac_data_from_sexp): Use length of SEXP_CUR, not - length of SEXP; do not forget to set SEXP_TMP to NULL after it has - been released. - - (struct gcry_ac_mpi): New member: name_provided. - (_gcry_ac_data_set): Rename variable `name_final' to `name_cp'; - remove const qualifier; change code to not cast away const - qualifiers; use name_provided member as well. - (_gcry_ac_data_set, _gcry_ac_data_get_name): Use name_provided - member of named mpi structure. - - (gcry_ac_name_to_id): Do not forget to initialize err. - (_gcry_ac_data_get_index): Do not forget to initialize mpi_return; - use gcry_free() instead of free(); remove unnecessary cast; rename - mpi_return and name_return to mpi_cp and name_cp; adjust code. - (ac_data_mpi_copy): Do not cast away const qualifier. - (ac_data_values_destroy): Likewise. - (ac_data_construct): Likewise. - - (ac_data_mpi_copy): Initialize flags to GCRY_AC_FLAG_DEALLOC. - (ac_data_extract): Use GCRY_AC_FLAG_DEALLOC instead of - GCRY_AC_FLAG_COPY. - - (_gcry_ac_io_init_va, _gcry_ac_io_init, gcry_ac_io_init) - (gcry_ac_io_init_va, _gcry_ac_io_write, _gcry_ac_io_read) - (_gcry_ac_io_read_all, _gcry_ac_io_process): New functions. - (gry_ac_em_dencode_t): Use gcry_ac_io_t in prototype instead of - memroy strings directly; adjust encode/decode functions to use io - objects. - (emsa_pkcs_v1_5_encode_data_cb): New function ... - (emsa_pkcs_v1_5_encode): ... use it here. - (ac_data_dencode): Use io objects. - (_gcry_ac_data_encode, _gcry_ac_data_decode, gcry_ac_data_encode) - (gcry_ac_data_decode): Likewise. - (_gcry_ac_data_encrypt_scheme, gcry_ac_data_encrypt_scheme) - (_gcry_ac_data_decrypt_scheme, gcry_ac_data_decrypt_scheme) - (_gcry_ac_data_sign_scheme, gcry_ac_data_sign_scheme) - (_gcry_ac_data_verify_scheme, gcry_ac_data_verify_scheme): - Likewise. - -2005-03-23 Werner Koch - - * rndw32.c (_gcry_rndw32_gather_random_fast): While adding data - use the size of the object and not the one of its address. Bug - reported by Sascha Kiefer. - -2005-03-19 Moritz Schulte - - * cipher.c (do_cbc_encrypt): Be careful to not overwrite data, - which is to be used later on. This happend, in case CTS is - enabled and OUTBUF is equal to INBUF. - -2005-02-25 Werner Koch - - * pubkey.c (gcry_pk_get_keygrip): Allow for shadowed-private-key. - -2005-02-13 Moritz Schulte - - * serpent.c: Updated from 1.2 branch: - - s/u32_t/u32/ and s/byte_t/byte/. Too match what we have always - used and are using in all other files too - (serpent_test): Moved prototype out of a fucntion. - -2005-02-07 Moritz Schulte - - * ac.c: Major parts rewritten. - * pubkey.c (_gcry_pk_get_elements): New function. - -2004-12-09 Werner Koch - - * serpent.c (serpent_setkey): Moved prototype of serpent_test to - outer scope. - -2004-09-11 Moritz Schulte - - * pubkey.c (pubkey_table): Added an alias entry for GCRY_PK_ELG_E. - -2004-08-23 Moritz Schulte - - * ac.c: Do not include . - * rndegd.c: Likewise. - * sha1.c: Likewise. - * rndunix.c: Likewise. - * rndlinux.c: Likewise. - * rmd160.c: Likewise. - * md5.c: Likewise. - * md4.c: Likewise. - * cipher.c: Likewise. - * crc.c: Likewise. - * blowfish.c: Likewise. - - * pubkey.c (dummy_generate, dummy_check_secret_key) - (dummy_encrypt, dummy_decrypt, dummy_sign, dummy_verify): Return - err code GPG_ERR_NOT_IMPLEMENTED instead of aborting through - log_bug(). - (dummy_get_nbits): Return 0 instead of aborting though log_bug(). - -2004-08-19 Werner Koch - - * pubkey.c (sexp_data_to_mpi): Changed the zero random byte - substituting code to actually do clever things. Thanks to - Matthias Urlichs for noting the implementation problem. - -2004-08-09 Moritz Schulte - - * pubkey.c (gcry_pk_sign): Fixed memory leak; fix provided by - Modestas Vainius. - -2004-07-16 Werner Koch - - * rijndael.c (do_encrypt): Fix alignment problem. Bugs found by - Matthias Urlichs. - (do_decrypt): Ditto. - (keySched, keySched2): Use 2 macros along with unions in the key - schedule context. - -2004-07-14 Moritz Schulte - - * rsa.c (_gcry_rsa_decrypt): Don't forget to free "a". Thanks to - Nikos Mavroyanopoulos. - -2004-05-09 Werner Koch - - * random.c (read_pool): Mix the PID in to better protect after a - fork. - -2004-07-04 Moritz Schulte - - * serpent.c: Use "u32_t" instead of "unsigned long", do not - declare S-Box variables as "register". Fixes failure on - OpenBSD/sparc64, reported by Nikolay Sturm. - -2004-05-07 Werner Koch - - * random.c (initialize): Factored out some code to .. - (initialize_basics): .. new function. - (_gcry_random_initialize): Just call initialize_basics unless the - new arg FULL is set to TRUE. - (_gcry_fast_random_poll): Don't do anything unless the random - system has been really initialized. - -2004-05-07 Moritz Schulte - - * ac.c (gcry_ac_open): Do not dereference NULL pointer. Reported - by Umberto Salsi. - -2004-02-20 Werner Koch - - * primegen.c (check_prime): New args CB_FUNC and CB_ARG; call them - at different stages. Pass these arguments through all callers. - -2004-02-06 Werner Koch - - * des.c: Add a new OID as used by pkcs#12. - - * rfc2268.c: New. Taken from libgcrypt. - * cipher.c: Setup the rfc2268 algorithm. - -2004-01-25 Moritz Schulte - - * primegen.c (prime_generate_internal): Do not forget to free - `q_factor'; fixed by Brieuc Jeunhomme. - (prime_generate_internal): Do not forget to free `prime'. - -2004-01-14 Moritz Schulte - - * ac.c (gcry_ac_data_set): New argument: flags; slightly - rewritten. - (gcry_ac_data_get_name, gcry_ac_data_get_index): Likewise. - (gcry_ac_key_pair_generate): New argument: misc_data; modified - order of arguments. - (gcry_ac_key_test): New argument: handle. - (gcry_ac_key_get_nbits, gcry_ac_key_get_grip): Likewise. - Use GCRY_AC_FLAG_NO_BLINDING instead of - GCRY_AC_DATA_FLAG_NO_BLINDING. - (gcry_ac_mpi): New member: flags. - (gcry_ac_data_search, gcry_ac_data_add): Removed functions. - -2003-12-22 Werner Koch - - * primegen.c (is_prime): Release A2. - -2003-12-19 Werner Koch - - * md.c: Moved a couple of functions down below the data structure - definitions. - (struct gcry_md_context): New field ACTUAL_HANDLE_SIZE. - (md_open): Set it here. - (strcut gcry_md_list): New field ACTUAL_STRUCT_SIZE. - (md_enable): Set it here. - (md_close): Wipe the context memory. - secure memory. - * cipher.c (struct gcry_cipher_handle): New field ACTUAL_HANDLE_SIZE. - (gcry_cipher_open): Set it here. - (gcry_cipher_close): Use it to always wipe out the handle data. - - * ac.c (gcry_ac_open): Make sure HANDLE gets initialized even when - the function is not successful. - (gcry_ac_close): Allow a NULL handle. - (gcry_ac_key_destroy, gcry_ac_key_pair_destroy): Ditto. - (gcry_ac_key_get_grip): Return INV_OBJ on error. - - * primegen.c (prime_generate_internal): Fixed error code for - failed malloc. Replaced the !err if chain by gotos. - (gcry_prime_group_generator): Remove the extra sanity check. - - * md.c: Minor code and comment cleanups. - -2003-12-16 Werner Koch - - * primegen.c (gen_prime): Doc fix. Thanks to Newton Hammet. - -2003-12-11 Werner Koch - - * rndunix.c (slow_poll): Don't use #warning but #error. - - * rndegd.c: Changed indentation. - (my_make_filename): Removd the var_arg cruft becuase we - don't need it here. Changed caller. - - * rndlinux.c: Changed indentation. - (open_device): Remove the superfluous stat call and clarify - comment. - - * rsa.c: Changed indentation. - (secret): Use the standard algorithm if p, q and u are not - available. - (rsa_blind, rsa_unblind): Renamed from _gcry_rsa_blind, - _gcry_rsa_unblind and moved more to the top. - - * md4.c: Changed indentation. Removed unnecessary casts. - * md5.c, rmd160.c, sha1.c, tiger.c: Ditto. - * rijndael.c, twofish.c: Ditto. - * serpent.c: Removed unnecessary casts. - * sha256.c, sha512.c: Ditto. - -2003-12-09 Werner Koch - - * dsa.c: Unified indentation style. - * elgamal.c: Ditto. - * des.c (des_key_schedule): Code beautifications. - * blowfish.c: Changed indentation style. - * cast5.c (do_cast_setkey): Ditto. - - * pubkey.c (gcry_pk_encrypt): Replaced the chain of if(!err) tests - by straightforward gotos. Other cleanups. - (gcry_pk_decrypt): Ditto. - (gcry_pk_sign): Ditto. - (gcry_pk_verify): Ditto. - (gcry_pk_genkey): Ditto. Use strtoul instead of strtol. - (gcry_pk_ctl): Use GPG_ERR_INV_ARG to indicate bad arguments. - -2003-12-07 Werner Koch - - * pubkey.c (gcry_pk_register_default): Undef the helper macro. - (gcry_pk_map_name): Allow NULL for string. - (sexp_to_key): Use memcpy and not strncpy. Use gcry_free and not - free. - (sexp_to_sig): Ditto. - (sexp_to_enc): Ditto. Replaced the chain of if(!err) tests by - straightforward gotos. - -2003-12-05 Werner Koch - - * cipher.c: Documentation cleanups. - (gcry_cipher_mode_from_oid): Allow NULL for STRING. - -2003-12-03 Werner Koch - - * elgamal.c (sign, do_encrypt, gen_k): Make sure that a small K is - only used for encryption. - -2003-11-18 Werner Koch - - * random.h (rndw32_set_dll_name): Removed unused prototype. - - * Makefile.am (EXTRA_DIST): Added Manifest. - -2003-11-11 Werner Koch - - * Manifest: New. - -2003-11-04 Werner Koch - - * md.c (gcry_md_hash_buffer): Use shortcut for SHA1 - * sha1.c (_gcry_sha1_hash_buffer): New. - - * random.c: Reformatted most functions. - (mix_pool): Moved the failsafe_digest from global - scope to here. - (do_fast_random_poll): Use the generic fucntions even if a fast - gathering function has been used. - (read_pool): Detect a fork and retry. - (gcry_randomize, get_random_bytes): Don't distinguish anymore - between weak and strong random. - (gcry_create_nonce): New. - -2003-10-31 Werner Koch - - * rndw32.c (slow_gatherer_windowsNT): Use a plain buffer for the - disk performance values and not the W32 API structure. - - * dsa.c (verify): s/exp/ex/ due to shadowing of a builtin. - * elgamal.c (verify): Ditto. - - * ac.c (gcry_ac_data_get_index): s/index/idx/ - (gcry_ac_data_copy_internal): Remove the cast in _gcry_malloc. - (gcry_ac_data_add): Must use gcry_realloc instead of realloc. - * pubkey.c (sexp_elements_extract): s/index/idx/ as tribute to the - forehackers. - (gcry_pk_encrypt): Removed shadowed definition of I. Reordered - arguments to malloc for clarity. - (gcry_pk_sign, gcry_pk_genkey): Ditto. - * primegen.c (prime_generate_internal): s/random/randomlevel/. - -2003-10-27 Moritz Schulte - - * pubkey.c (gcry_pk_encrypt): Don't forget to deallocate pkey. - -2003-10-27 Werner Koch - - * random.c (gcry_random_add_bytes): Return if buflen is zero to - avoid gcc warning about unsed parameter. - (MASK_LEVEL): Simplified; does now work for signed and unsigned - w/o warnings. - - * md.c (md_start_debug): Removed the const from SUFFIX, because - this function is called from the control fucntion which does not - require const. - - Prefixed all (pubkey,digest,cipher}_spec_* globale variables with - _gcry_. - - * ac.c (ac_key_identifiers): Made static. - - * random.c (getfnc_gather_random,getfnc_fast_random_poll): Move - prototypes to .. - * rand-internal.h: .. here - * random.c (getfnc_gather_random): Include rndw32 gatherer. - * rndunix.c, rndw32.c, rndegd.c: Include them here. - * rndlinux.c (_gcry_rndlinux_gather_random): Prepend the _gcry_ - prefix. Changed all callers. - * rndegd.c (_gcry_rndegd_gather_random): Likewise. - (_gcry_rndegd_connect_socket): Likewise. - * rndunix.c (_gcry_rndunix_gather_random): Likewise. - (waitpid): Made static. - * rndw32.c: Removed the old and unused winseed.dll cruft. - (_gcry_rndw32_gather_random_fast): Renamed from - gather_random_fast. - (_gcry_rndw32_gather_random): Renamed from gather_random. Note, - that the changes 2003-04-08 somehow got lost. - - * sha512.c (sha512_init, sha384_init): Made static. - - * cipher.c (do_ctr_decrypt): Removed "return" from this void - function. - -2003-10-24 Moritz Schulte - - * serpent.c: Fix an issue on big-endian systems. - - * rndw32.c: Removed IS_MODULE -cruft. - * rndlinux.c (rndlinux_gather_random): Likewise. - -2003-10-10 Werner Koch - - * primegen.c (gen_prime): Bail out if NBITS is less than 16. - (prime_generate_internal): Initialize prime variable to suppress - compiler warning. Check pbits, initialize qbits when passed as - zero. - - * primegen.c (prime_generate_internal): New arg - ALL_FACTORS. Changed all callers. - (gcry_prime_generate): Make the factors arg optional. Request - all_factors. Make sure PRIME is set to NULL even on error. - (gcry_prime_group_generator): New. - (gcry_prime_release_factors): New. - -2003-10-06 Werner Koch - - * primegen.c (gen_prime): Assert that NBITS is never zero, it - would cause a segv. - -2003-09-28 Moritz Schulte - - * ac.c: Include "cipher.h". - -2003-09-27 Moritz Schulte - - * rndegd.c (do_read): Return nread instead of nbytes; thanks to - Michael Caerwyn. - -2003-09-04 Werner Koch - - * pubkey.c (_gcry_pk_aliased_algo_name): New. - * ac.c (gcry_ac_open): Use it here. - - * Makefile.am (EXTRA_libcipher_la_SOURCES): Add serpent.c - -2003-09-02 Moritz Schulte - - * primegen.c (gcry_prime_check, gcry_prime_generate): New - functions. - (prime_generate_internal): New function, based on - _gcry_generate_elg_prime. - (_gcry_generate_elg_prime): Rewritten as a wrapper for - prime_generate_internal. - -2003-08-28 Werner Koch - - * pubkey.c (gcry_pk_encrypt): Don't include the flags list in the - return value. This does not make sense and breaks any programs - parsing the output strictly (e.g. current gpgsm). - (gcry_pk_encrypt): If aliases for the algorithm name exists, take - the first one instead of the regular name to adhere to SPKI - conventions. - (gcry_pk_genkey): Ditto. - (gcry_pk_sign): Ditto. Removed unused KEY_ALGO_NAME. - -2003-08-19 Moritz Schulte - - * cipher.c: Add support for Serpent - * serpent.c: New file. - -2003-08-10 Moritz Schulte - - * rsa.c (_gcry_rsa_blind, _gcry_rsa_unblind): Declare static. - -2003-08-09 Timo Schulz - - * random.c (getfnc_gather_random): Don't check NAME_OF_DEV_RANDOM - two times, but also the NAME_OF_DEV_URANDOM device. - -2003-08-08 Moritz Schulte - - * pubkey.c (sexp_to_enc): Fixed extraction of S-Expression: do not - fail if no `flags' sub S-Expression is found. - -2003-07-27 Werner Koch - - * md.c (gcry_md_lookup_func_oid): Allow for empty OID lists. - -2003-07-23 Moritz Schulte - - * ac.c (gcry_ac_data_construct): New argument: include_flags, only - include `flags' S-expression, if include_flags is true. Adjust - callers. Thanks for triggering a bug caused by `flags' - sub-S-expression where they are not expected to Ralf Schneider. - -2003-07-21 Moritz Schulte - - * pubkey.c (gcry_pk_lookup_func_name): Use new member name - `aliases' instead of `sexp_names'. - - * ac.c (gcry_ac_key_data_get): New function. - - * cipher.c (gcry_cipher_lookup_func_name): Fix return value. - -2003-07-20 Moritz Schulte - - * blowfish.c: Adjusted for new gcry_cipher_spec_t structure. - * cast5.c: Likewise. - * twofish.c: Likewise. - * arcfour.c: Likewise. - * rijndael.c (rijndael_oids, rijndael192_oids, rijndael256_oids): - New variables, adjust for new gcry_cipher_spec_t structure. - * des.c (oids_tripledes): New variable, adjust for new - gcry_cipher_spec_t structure. - - * md.c (oid_table): Removed. - - * tiger.c (oid_spec_tiger): New variable. - (digest_spec_tiger): Adjusted for new gry_md_spec_t structure. - - * sha512.c (oid_spec_sha512): New variable. - (digest_spec_sha512): Adjusted for new gry_md_spec_t structure. - - * sha512.c (oid_spec_sha384): New variable. - (digest_spec_sha384): Adjusted for new gry_md_spec_t structure. - - * sha256.c (oid_spec_sha256): New variable. - (digest_spec_sha256): Adjusted for new gry_md_spec_t structure. - - * sha1.c (oid_spec_sha1): New variable. - (digest_spec_sha1): Adjusted for new gry_md_spec_t structure. - - * rmd160.c (oid_spec_rmd160): New variable. - (digest_spec_rnd160): Adjusted for new gry_md_spec_t structure. - - * md5.c (oid_spec_md5): New variable. - (digest_spec_md5): Adjusted for new gry_md_spec_t structure. - - * md4.c (oid_spec_md4): New variable. - (digest_spec_md4): Adjusted for new gry_md_spec_t structure. - - * crc.c (digest_spec_crc32, digest_spec_crc32_rfc1510, - digest_spec_crc32_rfc2440): Adjusted for new gry_md_spec_t - structure. - -2003-07-19 Moritz Schulte - - * md.c (gcry_md_lookup_func_oid): New function. - (search_oid): New function, copied from cipher.c. - (gcry_md_map_name): Adjust for new search_oid_interface. - - * cipher.c (oid_table): Removed table. - (gcry_cipher_lookup_func_oid): New function. - (search_oid): Rewritten to use the module functions. - (gcry_cipher_map_name): Adjust for new search_oid interface. - (gcry_cipher_mode_from_oid): Likewise. - -2003-07-18 Werner Koch - - * md.c (gcry_md_hash_buffer): Convert ERR to gpg_error_t in - gpg_strerror. - -2003-07-14 Moritz Schulte - - * cipher.c (gcry_cipher_lookup_func_name): Also check the cipher - name aliases, not just the primary name. - (gcry_cipher_map_name): Remove kludge for aliasing Rijndael to - AES. - - * arcfour.c, blowfish.c, cast5.c, des.c, twofish.c: Adjust cipher - specification structures. - - * rijndael.c (rijndael_names, rijndael192_names, - rijndael256_names): New variables, use them in the cipher - specifications. - - * rmd160test.c: Removed file. - - * ac.c, arcfour.c, blowfish.c, cast5.c, cipher.c, des.c, dsa.c, - elgamal.c, md.c, pubkey.c, random.c, rijndael.c, rsa.c, twofish.c: - Used gcry_err* wrappers for libgpg symbols. - - * primegen.c (gen_prime): Correct the order arguments to - extra_check. - -2003-07-12 Moritz Schulte - - * ac.c: Replaced all public occurences of gpg_error_t with - gcry_error_t. - * cipher.c: Likewise. - * md.c: Likewise. - * pubkey.c: Likewise. - * random.c: Likewise. - - * cipher.c: Added support for TWOFISH128. - -2003-07-08 Moritz Schulte - - * ac.c (gcry_ac_data_copy_internal): New function, based on - gcry_ac_data_copy. - (gcry_ac_data_copy): Made public, use gcry_ac_data_copy_internal. - (gcry_ac_key_init): Use gcry_ac_data_copy_internal. - -2003-07-07 Moritz Schulte - - * ac.c (gcry_ac_data_set): Only release old MPI value if it is - different from the new value. Bug reported by Simon Josefsson - . - - * pubkey.c (gcry_pk_list): New function. - * md.c (gcry_md_list): New function. - - * ac.c (gcry_ac_key_pair_generate): Fix calculation of format - string size. - -2003-07-05 Moritz Schulte - - * md.c: Named struct of digest_table `digest_table_entry'. - (digest_table_entry): New member: algorithm; filled in. - (digest_table_entry): Removed unused member: flags. - (gcry_md_register): New argument: algorithm_id, filled in. - (gcry_md_register_default): Used algorithm ID from module - structure. - (gcry_md_map_name): Likewise. - (md_enable): Likewise. - (md_read): Likewise. - (gcry_md_info): Likewise. - - * pubkey.c: Named truct for pubkey_table `pubkey_table_entry'. - (pubkey_table_entry): New member: algorithm; filled in. - (gcry_pk_register_default): Used algorithm ID from pubkey_table. - (gcry_pk_register): New argument: algorithm_id, filled in. - (gcry_pk_map_name): Used algorithm ID from module structure. - (gcry_pk_decrypt): Likewise. - (gcry_pk_encrypt): Likewise. - (gcry_pk_verify): Likewise. - (gcry_pk_sign): Likewise. - (gcry_pk_testkey): Likewise. - (gcry_pk_genkey): Likewise. - (gcry_pk_get_nbits): Likewise. - (sexp_to_key): Removed unused variable: algo. - (sexp_to_sig): Likewise. - - * cipher.c: Named struct for cipher_table `cipher_table_entry'. - (cipher_table_entry): New member: algorithm; filled in. - (gcry_cipher_register_default): Used algorithm ID from - cipher_table. - (gcry_cipher_register): New argument: algorithm_id, filled in. - (gcry_cipher_map_name): Used algorithm ID from module structure. - - * arcfour.c (cipher_spec_arcfour): Removed algorithm ID. - * blowfish.c (cipher_spec_blowfish): Likewise. - * cast5.c (cipher_spec_cast5): Likewise. - * crc.c (digest_spec_crc32): Likewise. - * crc.c (digest_spec_crc32_rfc1510): Likewise. - * crc.c (digest_spec_crc32_rfc2440): Likewise. - * des.c (cipher_spec_des): Likewise. - * des.c (cipher_spec_tripledes): Likewise. - * dsa.c (pubkey_spec_dsa): Likewise. - * elgamal.c (pubkey_spec_elg): Likewise. - * md4.c (digest_spec_md4): Likewise. - * md5.c (digest_spec_md5): Likewise. - * aes.c (cipher_spec_aes): Likewise. - * aes.c (cipher_spec_aes192): Likewise. - * aes.c (cipher_spec_aes256): Likewise. - * rsa.c (pubkey_spec_rsa): Likewise. - * sha1.c (digest_spec_sha1): Likewise. - * sha256.c (digest_spec_sha256): Likewise. - * sha512.c (digest_spec_sha512): Likewise. - * tiger.c (digest_spec_tiger): Likewise. - * twofish.c (cipher_spec_twofish): Likewise. - * twofish.c (cipher_spec_twofish128): Likewise. - - * Makefile.am (EXTRA_libcipher_la_SOURCES): Fix list of source - files; reported by Simon Josefsson . - - * pubkey.c: Replaced all occurences of `id' with `algorithm', - since `id' is a keyword in obj-c. - * md.c: Likewise. - * cipher.c: Likewise. - - * crc.c, md4.c, md5.c, rmd160.c, sha1.c, sha256.c, tiger.c: - Replaced all occurences of gcry_digest_spec_t with gcry_md_spec_t. - - * dsa.c, rsa.c, elgamal.c: Replaced all occurencens of - gcry_pubkey_spec_t with gcry_pk_spec_t. - - * md.c: Replaced all occurences of gcry_digest_spec_t with - gcry_md_spec_t. - (gcry_digest_register_default): Renamed to ... - (gcry_md_register_default): ... this; adjusted callers. - (gcry_digest_lookup_func_name): Renamed to ... - (gcry_md_lookup_func_name): ... this; adjusted callers. - (gcry_digest_lookup_name): Renamed to ... - (gcry_md_lookup_name): ... this; adjusted callers. - (gcry_digest_register): Renamed to ... - (gcry_md_register): ... this. - (gcry_digest_unregister): Renamed to ... - (gcry_md_unregister): ... this. - - * pubkey.c (gcry_pubkey_register): Renamed to ... - (gcry_pk_register): ... this. - (gcry_pubkey_unregister): Renamed to ... - (gcry_pk_unregister): ... this. - Replaced all occurences of gcry_pubkey_spec_t with gcry_pk_spec_t. - (gcry_pubkey_register_default): Renamed to ... - (gcry_pk_register_default): ... this; adjusted callers. - (gcry_pubkey_lookup_func_name): Renamed to ... - (gcry_pk_lookup_func_name): ... this; adjusted callers. - (gcry_pubkey_lookup_name): Renamed to ... - (gcry_pk_lookup_name): ... this; adjusted callers. - - * md.c (gcry_md_hash_buffer): Fix error checking. Thanks to Simon - Josefsson . - -2003-07-04 Moritz Schulte - - * cipher.c (gcry_cipher_list): New function. - -2003-07-01 Moritz Schulte - - * pubkey.c (sexp_to_sig): Accept a `flags' S-expression to be more - consistent with sexp_to_enc. - -2003-06-30 Moritz Schulte - - * Makefile.am (libcipher_la_SOURCES): Added: ac.c. - - * pubkey.c (_gcry_pk_module_lookup): New function. - (_gcry_pk_module_release): New function. - -2003-06-29 Moritz Schulte - - * ac.c: New file. - -2003-06-26 Werner Koch - - * md.c (gcry_md_hash_buffer): Trigger BUG correcly with new API. - -2003-06-19 Werner Koch - - * md.c (gcry_md_is_enabled): Fixed. - -2003-06-18 Werner Koch - - * cipher.c (gcry_cipher_get_algo_keylen): New. - (gcry_cipher_get_algo_blklen): New. - -2003-06-18 Moritz Schulte - - * arcfour.c, cipher.c, blowfish.c, md.c, cast5.c, pubkey.c, crc.c, - des.c, dsa.c, elgamal.c, md4.c, md5.c, random.c, rijndael.c, - rmd160.c, rsa.c, sha1.c, sha256.c, sha512.c, tiger.c, twofish.c: - Replaced older types GcryDigestSpec, GcryCipherSpec and - GcryPubkeySpec with newer types: gcry_digest_spec_t, - gcry_cipher_spec_t and gcry_pubkey_spec_t. - - * md.c (gcry_digest_id_new): Removed function. - (gcry_digest_register): Removed code for generating a new module - ID. - - * pubkey.c (gcry_pubkey_id_new): Removed function. - (gcry_pubkey_register): Removed code for generating a new module - ID. - - * cipher.c, md.c, pubkey.c: Replace old type GcryModule with newer - one: gcry_module_t. - (gcry_cipher_id_new): Removed function. - (gcry_cipher_register): Removed code for generating a new module - ID. - - * cipher.c (gcry_cipher_register): Adjust call to - _gcry_module_add. - (gcry_cipher_register_default): Likewise. - * pubkey.c (gcry_pubkey_register_default): Likewise. - (gcry_pubkey_register): Likewise. - * md.c (gcry_digest_register_default): Likewise. - (gcry_digest_register): Likewise. - - * md.c (gcry_digest_lookup_func_id): Removed function. - (gcry_digest_lookup_id): Likewise. - (gcry_digest_id_new): Use _gcry_module_lookup_id instead of - gcry_digest_lookup_id. - (digest_algo_to_string): Likewise. - (check_digest_algo): Likewise. - (md_enable): Likewise. - (md_digest_length): Likewise. - (md_asn_oid): Likewise. - - * pubkey.c (gcry_pubkey_lookup_id): Removed function. - (gcry_pubkey_lookup_func_id): Likewise. - (gcry_pubkey_id_new): Use _gcry_module_lookup_id instead of - gcry_pubkey_id_new. - (gcry_pk_algo_name): Likewise. - (disable_pubkey_algo): Likewise. - (check_pubkey_algo): Likewise. - (pubkey_get_npkey): Likewise. - (pubkey_get_nskey): Likewise. - (pubkey_get_nsig): Likewise. - (pubkey_get_nenc): Likewise. - (pubkey_generate): Likewise. - (pubkey_check_secret_key): Likewise. - (pubkey_encrypt): Likewise. - (pubkey_decrypt): Likewise. - (pubkey_sign): Likewise. - (pubkey_verify): Likewise. - (gcry_pk_algo_info): Likewise. - - * cipher.c (gcry_cipher_lookup_func_id): Removed function. - (gcry_cipher_lookup_id): Likewise. - (cipher_algo_to_string): use _gcry_module_lookup_id instead of - gcry_cipher_lookup_id. - (disable_cipher_algo): Likewise. - (check_cipher_algo): Likewise. - (cipher_get_blocksize): Likewise. - (gcry_cipher_open): Likewise. - (gcry_cipher_id_new): Likewise. - -2003-06-17 Moritz Schulte - - * Makefile.am (GCRYPT_MODULES): Set to @GCRYPT_CIPHERS@, - @GCRYPT_PUBKEY_CIPHERS@, @GCRYPT_DIGESTS@ and @GCRYPT_RANDOM@. - (libcipher_la_DEPENDENCIES): Set to $(GCRYPT_MODULES). - (libcipher_la_LIBADD): Likewise. - (AM_CFLAGS): Added: @GPG_ERROR_CFLAGS@. - (EXTRA_libcipher_la_SOURCES): Added all conditional sources. - - * md.c (md_open): Use _gcry_fast_random_poll instead of - fast_random_poll. - * cipher.c (gcry_cipher_open): Likewise. - - * random.h (fast_random_poll): Removed macro. - - * blowfish.c, md4.c, md5.c, rmd160.c, sha1.c, sha256.c, sha512.c, - tiger.c: Use Autoconf's WORDS_BIGENDIAN instead of our own - BIG_ENDIAN_HOST. - -2003-06-16 Moritz Schulte - - * random.c (getfnc_gather_random): Do not special-case - USE_ALL_RANDOM_MODULES, make it the default. - - * dsa.c: Replace last occurences of old type names with newer - names (i.e. replace MPI with gcry_mpi_t). - * elgamal.c: Likewise. - * primegen.c: Likewise. - * pubkey.c: Likewise. - * rsa.c: Likewise. - -2003-06-14 Moritz Schulte - - * des.c (des_setkey): Add selftest check. - (tripledes_set3keys): Likewise. - (do_tripledes_setkey): Remove selftest check. - (do_des_setkey): Likewise. - -2003-06-11 Moritz Schulte - - * md.c (_gcry_md_init): New function. - * cipher.c (_gcry_cipher_init): New function. - * pubkey.c (_gcry_pk_init): New function. - -2003-06-13 Werner Koch - - * md.c (gcry_md_get_algo): Reverted to old API. This is a - convenience function anyway and error checking is not approriate. - (gcry_md_is_secure): New. - (gcry_md_is_enabled): New. - -2003-06-12 Werner Koch - - * cipher.c (gcry_cipher_open): Make sure HANDLE is set to NULL on - error. - -2003-06-11 Werner Koch - - * md.c (gcry_md_open): Make sure H receives either NULL or an - valid handle. - (gcry_md_copy): Swapped arguments so that it is more in lione with - md_open and most other API fucntions like memcpy (destination - comes first). Make sure HANDLE is set to NULL on error. - - * rijndael.c (do_encrypt): Hack to force correct alignment. It - seems not to be not sufficient, though. We should rework this - fucntions and remove all these ugly casts. Let the compiler - optimize or have an assembler implementation. - -2003-06-09 Moritz Schulte - - * Makefile.am: Removed rules serpent, since that is not commited - yet. - -2003-06-08 Moritz Schulte - - * pubkey.c (gcry_pk_encrypt): Improve calculation for size of the - format string. - -2003-06-07 Moritz Schulte - - * arcfour.c, bithelp.h, blowfish.c, cast5.c, cipher.c, crc.c, - des.c, dsa.c, elgamal.c, md4.c, md5.c, md.c, primegen.c, pubkey.c, - rand-internal.h, random.c, random.h, rijndael.c, rmd160.c, - rmd160test.c, rmd.h, rndeged.c, rndlinux.c, rndunix.c, rndw32.c, - rsa.c, sha1.c, sha256.c, sha512.c, tiger.c, twofish.c: Edited all - preprocessor instructions to remove whitespace before the '#'. - This is not required by C89, but there are some compilers out - there that don't like it. Replaced any occurence of the now - deprecated type names with the new ones. - -2003-06-04 Moritz Schulte - - * pubkey.c (gcry_pk_encrypt): Construct an arg_list and use - gcry_sexp_build_array instead of gcry_sexp_build. - (gcry_pk_sign): Likewise. - (gcry_pk_genkey): Likewise. - -2003-06-01 Moritz Schulte - - * dsa.c (_gcry_dsa_generate): Do not check wether the algorithm ID - does indeed belong to DSA. - (_gcry_dsa_sign): Likewise. - (_gcry_dsa_verify): Likewise. - (_gcry_dsa_get_nbits): Likewise. - - * elgamal.c (_gcry_elg_check_secret_key): Do not check wether the - algorithm ID does indeed belong to ElGamal. - (_gcry_elg_encrypt): Likewise. - (_gcry_elg_decrypt): Likewise. - (_gcry_elg_sign): Likewise. - (_gcry_elg_verify): Likewise. - (_gcry_elg_get_nbits): Likewise. - (_gcry_elg_generate): Likewise. - - * rsa.c (_gcry_rsa_generate): Do not check wether the algorithm ID - does indeed belong to RSA. - (_gcry_rsa_encrypt): Likewise. - (_gcry_rsa_decrypt): Likewise. - (_gcry_rsa_sign): Likewise. - (_gcry_rsa_verify): Likewise. - (_gcry_rsa_get_nbits): Likewise. - -2003-05-30 Moritz Schulte - - * md.c (md_get_algo): Return zero in case to algorithm is enabled. - - * md.c (gcry_md_info): Adjusted for new no-errno-API. - (md_final): Likewise. - (gcry_md_get_algo): Likewise. - * pubkey.c (gcry_pk_get_keygrip): Likewise. - (gcry_pk_ctl): Likewise. - (gcry_pk_algo_info): Likewise. - * des.c (selftest): Likewise. - -2003-05-29 Moritz Schulte - - * md.c (md_enable): Do not forget to release module on error. - (gcry_md_open): Adjusted for new no-errno-API. - (md_open): Likewise. - (md_copy): Likewise. - (gcry_md_copy): Likewise. - (gcry_md_setkey): Likewise. - (gcry_md_algo_info): Likewise. - - * cipher.c (gcry_cipher_open): Adjusted for new no-errno-API and - also fixed a locking bug. - (gcry_cipher_encrypt): Adjusted for new no-errno-API. - (gcry_cipher_decrypt): Likewise. - (gcry_cipher_ctl): Likewise. - (gcry_cipher_info): Likewise. - (gcry_cipher_algo_info): Likewise. - -2003-05-28 Moritz Schulte - - * md.c (md_enable): Adjusted for libgpg-error. - (gcry_md_enable): Likewise. - (gcry_digest_register_default): Likewise. - (gcry_digest_register): Likewise. - (check_digest_algo): Likewise. - (prepare_macpads): Likewise. - (gcry_md_setkey): Likewise. - (gcry_md_ctl): Likewise. - (gcry_md_get): Likewise. - (gcry_md_algo_info): Likewise. - (gcry_md_info): Likewise. - * dsa.c (_gcry_dsa_generate): Likewise. - (_gcry_dsa_check_secret_key): Likewise. - (_gcry_dsa_sign): Likewie. - (_gcry_dsa_verify): Likewise. - * twofish.c (do_twofish_setkey): Likewise. - (twofish_setkey): Likewise. - * cipher.c (gcry_cipher_register): Likewise. - -2003-05-25 Moritz Schulte - - * rijndael.c (do_setkey): Adjusted for libgpg-error. - (rijndael_setkey): Likewise. - * random.c (gcry_random_add_bytes): Likewise. - * elgamal.c (_gcry_elg_generate): Likewise. - (_gcry_elg_check_secret_key): Likewise. - (_gcry_elg_encrypt): Likewise. - (_gcry_elg_decrypt): Likewise. - (_gcry_elg_sign): Likewise. - (_gcry_elg_verify): Likewise. - * rsa.c (_gcry_rsa_generate): Likewise. - (_gcry_rsa_check_secret_key): Likewise. - (_gcry_rsa_encrypt): Likewise. - (_gcry_rsa_decrypt): Likewise. - (_gcry_rsa_sign): Likewise. - (_gcry_rsa_verify): Likewise. - * pubkey.c (dummy_generate, dummy_check_secret_key, dummy_encrypt, - dummy_decrypt, dummy_sign, dummy_verify): Likewise. - (gcry_pubkey_register): Likewise. - (check_pubkey_algo): Likewise. - (pubkey_generate): Likewise. - (pubkey_check_secret_key): Likewise. - (pubkey_encrypt): Likewise. - (pubkey_decrypt): Likewise. - (pubkey_sign): Likewise. - (pubkey_verify): Likewise. - (sexp_elements_extract): Likewise. - (sexp_to_key): Likewise. - (sexp_to_sig): Likewise. - (sexp_to_enc): Likewise. - (sexp_data_to_mpi): Likewise. - (gcry_pk_encrypt): Likewise. - (gcry_pk_decrypt): Likewise. - (gcry_pk_sign): Likewise. - (gcry_pk_verify): Likewise. - (gcry_pk_testkey): Likewise. - (gcry_pk_genkey): Likewise. - (gcry_pk_ctl): Likewise. - * cipher.c (dummy_setkey): Likewise. - (check_cipher_algo): Likewise. - (gcry_cipher_open): Likewise. - (cipher_setkey): Likewise. - (gcry_cipher_ctl): Likewise. - (cipher_encrypt): Likewise. - (gcry_cipher_encrypt): Likewise. - (cipher_decrypt): Likewise. - (gcry_cipher_decrypt): Likewise. - (gcry_cipher_info): Likewise. - (gcry_cipher_algo_info): Likewise. - * cast5.c (cast_setkey): Likewise. - (do_cast_setkey): Likewise. - * arcfour.c (arcfour_setkey): Likewise. - (do_arcfour_setkey): Likewise. - * blowfish.c (do_bf_setkey): Likewise. - (bf_setkey): Likewise. - * des.c (do_des_setkey): Likewise. - (do_tripledes_setkey): Likewise. - -2003-05-22 Moritz Schulte - - * tiger.c: Merged code ussing the U64_C macro from GnuPG. - - * sha512.c: Likewise. - -2003-05-17 Moritz Schulte - - * pubkey.c (gcry_pk_genkey): Fix type: acquire a lock, instead of - releasing it. - -2003-05-11 Moritz Schulte - - * pubkey.c (gcry_pk_testkey): Call REGISTER_DEFAULT_CIPHERS. - (gcry_pk_ctl): Likewise. - -2003-04-27 Moritz Schulte - - * pubkey.c (gcry_pk_genkey): Release sexp after extracted data has - been used. - - * md.c (gcry_md_get_algo_dlen): Simplified, simply call - md_digest_length to do the job. - - * des.c (do_des_setkey): Check for selftest failure not only - during initialization. - (do_tripledes_setkey): Include check for selftest failure. - - * pubkey.c (gcry_pubkey_register_default): New macro - `pubkey_use_dummy', use it. - - * elgamal.c (elg_names): New variable. - (pubkey_spec_elg): Include elg_names. - - * dsa.c (dsa_names): New variable. - (pubkey_spec_dsa): Include dsa_names. - - * rsa.c (rsa_names): New variable. - (pubkey_spec_rsa): Include rsa_names. - - * pubkey.c (gcry_pubkey_lookup_func_name): Compare name also with - the names listed in `sexp_names'. - -2003-04-24 Moritz Schulte - - * pubkey.c (sexp_to_key): New variables: module, pubkey. Adjusted - to new module interface. - (sexp_to_key): Changend type of argument `retalgo' from `int *' to - `GcryModule **'. Adjusted all callers. Removed argument: - r_algotblidx. - (sexp_to_sig): Changend type of argument `retalgo' from `int *' to - `GcryModule **'. Adjusted all callers. - (sexp_to_enc): Likewise. - - (pubkey_get_npkey, pubkey_get_nskey, pubkey_get_nsig, - pubkey_get_nenc): Use strlen to find out the number. - - * rsa.c: Adjust pubkey_spec_rsa to new internal interface. - * dsa.c: Likewise. - * elgamal.c: Likewise. - -2003-04-17 Moritz Schulte - - * pubkey.c (sexp_elements_extract): New function. - * pubkey.c (sexp_to_key): Removed variable `idx', added `err', use - sexp_elements_extract. - (sexp_to_sig): Likewise. - (sexp_to_enc): Likewise. - - * pubkey.c: Terminate list correctly. - * md.c: Include sha512/sha384 in digest_table. - -2003-04-16 Moritz Schulte - - * Makefile.am: Include support for sha512.c. - - * sha512.c: New file, merged from GnuPG, with few modifications - for libgcrypt. - - * rand-internal.h: Removed declarations for constructor functions. - - * md.c (md_copy): Call _gcry_module_use for incrementing the usage - counter of the digest modules. - - * rsa.c: Do not include "rsa.h". - * dsa.c: Do not include "dsa.h". - * elgamal.c: Do not include "elgamal.h". - * des.c: Do not include "des.h". - * cast5.c: Do not include "cast5.h". - * blowfish.c: Do not include "blowfish.h". - * arcfour.c: Do not include "arcfour.h". - - * Makefile.am (libcipher_la_DEPENDENCIES): Removed. - (libcipher_la_LIBADD): Removed. - Use Automake conditionals for conditional compilation. - -2003-04-13 Moritz Schulte - - * cipher.c (gcry_cipher_open): Call REGISTER_DEFAULT_CIPHERS. - - * md.c (gcry_md_list): New member: module. - (md_enable): New variable: module, changed use of module and - digest. - (md_enable): Initialize member: module. - (md_close): Call _gcry_module_release. - - * cipher.c (gcry_cipher_open): New variable: module, changed use of - module and cipher. - (struct gcry_cipher_handle): New member: module. - (gcry_cipher_open): Initialize member: module. - (gcry_cipher_close): Call _gcry_module_release. - -2003-04-09 Moritz Schulte - - * cipher.c: Include "ath.h". - * md.c: Likewise. - * pubkey.c: Likewise. - - * cipher.c (ciphers_registered_lock): New variable. - * md.c (digests_registered_lock): New variable. - * pubkey.c (pubkeys_registered_lock): New variable. - - * rndlinux.c (gnupgext_version, func_table): Removed definitions. - (gnupgext_enum_func): Removed function. - (_gcry_rndlinux_constructor): Removed function. - - * rndegd.c (gnupgext_version, func_table): Removed definitions. - (gnupgext_enum_func): Removed function. - (_gcry_rndegd_constructor): Removed function. - - * rndunix.c (gnupgext_version, func_table): Removed definitions. - (gnupgext_enum_func): Removed function. - (_gcry_rndunix_constructor): Removed function. - - * rndw32.c (gnupgext_version, func_table): Removed definitions. - (gnupgext_enum_func): Removed function. - (_gcry_rndw32_constructor): Removed function. - - * rndegd.c (rndegd_connect_socket): Simplify code for creating the - egd socket address. - (rndegd_connect_socket): Call log_fatal use instead of - g10_log_fatal. - (egd_gather_random): Renamed to ... - (rndegd_gather_random): ... here. - -2003-04-08 Moritz Schulte - - * rndlinux.c: Do not include "dynload.h". - * rndunix.c: Likewise. - * rndw32.c: Likewise. - - * rndegd.c (rndegd_connect_socket): Factored out from ... - (egd_gather_random): here; call it. - (egd_socket): New variable. - (egd_gather_random): Initialize fd with egd_socket, do not declare - fd static. - (do_read): Merged few changes from GnuPG. FIXME - not finished? - Do not include "dynload.h". - - * rndw32.c (gather_random): Renamed to rndw32_gather_random, do - not declare static. - (gather_random_fast): Renamed to rndw32_gather_random_fast, do not - declare static. - - * rndunix.c (gather_random): Renamed to rndunix_gather_random, do - not declare static. - * rndegd.c (gather_random): Renamed to rndegd_gather_random, do - not declare static. - * rndlinux.c (gather_random): Renamed to rndlinux_gather_random, - do not declare static. - -2003-04-07 Moritz Schulte - - * Makefile.am (libcipher_la_SOURCES): Removed construct.c. - (libcipher_la_SOURCES): Added sha1.c, sha256.c, rmd160.c, md4.c, - md5.c, tiger.c and crc.c - (EXTRA_PROGRAMS): Removed sha1, sha256, rmd160, md4, md5, tiger - and crc. Removed definitions: EXTRA_md4_SOURCES, - EXTRA_md5_SOURCES, EXTRA_rmd160_SOURCES, EXTRA_sha1_SOURCES, - EXTRA_sha256_SOURCES, EXTRA_tiger_SOURCES and EXTRA_crc_SOURCES, - BUILT_SOURCES, DISTCLEANFILES. - - * pubkey.c: Do not include "elgamal.h", "dsa.h" and "rsa.h". - - * Makefile.am (libcipher_la_SOURCES): Removed rsa.h, elgamal.h, - dsa.h, des.h, cast5.h, arcfour.h and blowfish.h. - - * rsa.h: Removed file. - * elgamal.h: Removed file. - * dsa.h: Removed file. - * des.h: Removed file. - * cast5.h: Removed file. - * arcfour.h: Removed file. - * blowfish.h: Removed file. - - * Makefile.am (libcipher_la_SOURCES): Removed dynload.c and - dynload.h. - - * rsa.c (pubkey_spec_rsa): New variable. - * dsa.c (pubkey_spec_rsa): New variable. - * elgamal.c (pubkey_spec_elg): New variable. - - * rsa.c (_gcry_rsa_get_info): Removed function. - * elgamal.c (_gcry_elg_get_info): Removed function. - * dsa.c (_gcry_dsa_get_info): Removed function. - - * tiger.c (tiger_get_info): Removed function. - (gnupgext_version, func_table): Removed definitions. - (gnupgext_enum_func): Removed function. - (_gcry_tiger_constructor): Removed function. - - * sha1.c (sha1_get_info): Removed function. - (gnupgext_version, func_table): Removed definitions. - (gnupgext_enum_func): Removed function. - (_gcry_sha1_constructor): Removed function. - - * sha256.c (sha256_get_info): Removed function. - (gnupgext_version, func_table): Removed definitions. - (gnupgext_enum_func): Removed function. - (_gcry_sha256_constructor): Removed function. - - * rmd160.c (rmd160_get_info): Removed function. - (gnupgext_version, func_table): Removed definitions. - (gnupgext_enum_func): Removed function. - (_gcry_rmd160_constructor): Removed function. - - * md5.c (md5_get_info): Removed function. - (gnupgext_version, func_table): Removed definitions. - (gnupgext_enum_func): Removed function. - (_gcry_md5_constructor): Removed function. - - * md4.c (md4_get_info): Removed function. - (gnupgext_version, func_table): Removed definitions. - (gnupgext_enum_func): Removed function. - (_gcry_md4_constructor): Removed function. - - * crc.c (crc_get_info): Removed function. - - * arcfour.c (do_arcfour_setkey): Changed type of context argument - to `void *', added local variable for cast, adjusted callers. - (arcfour_setkey): Likewise. - (encrypt_stream): Likewise. - * cast5.c (cast_setkey): Likewise. - (encrypt_block): Likewise. - * rijndael.c (rijndael_setkey): Likewise. - (rijndael_encrypt): Likewise. - (rijndael_decrypt): Likewise. - * twofish.c (twofish_setkey): Likewise. - (twofish_encrypt): Likewise. - (twofish_decrypt): Likewise. - * des.c (do_des_setkey): Likewise. - (do_des_encrypt): Likewise. - (do_des_encrypt): Likewise. - (do_tripledes_encrypt): Likewise. - (do_tripledes_encrypt): Likewise. - * blowfish.c (bf_setkey: Likewise. - (encrypt_block): Likewise. - (decrypt_block): Likewise. - - * arcfour.c (encrypt_stream): Likewise. - - * rijndael.c (gnupgext_version, func_table): Removed definitions. - (gnupgext_enum_func) Removed function. - - * twofish.c (gnupgext_version, func_table): Removed definitions. - (gnupgext_enum_func) Removed function. - - * cast5.c (CIPHER_ALGO_CAST5): Removed. - - * blowfish.c (FNCCAST_SETKEY, FNCCAST_CRYPT): Removed macros. - (CIPHER_ALGO_BLOWFISH): Removed symbol. - * cast5.c (FNCCAST_SETKEY, FNCCAST_CRYPT): Likewise. - * des.c (selftest_failed): Removed. - (initialized): New variable. - (do_des_setkey): Run selftest, if not yet done. - (FNCCAST_SETKEY, FNCCAST_CRYPT): Removed macros. - - * arcfour.c (_gcry_arcfour_get_info): Removed function. - * blowfish.c (_gcry_blowfish_get_info): Removed function. - * cast5.c (_gcry_cast5_get_info): Removed function. - * des.c (_gcry_des_get_info): Removed function. - * rijndael.c (_gcry_rijndael_get_info): Removed function. - * twofish.c (_gcry_twofish_get_info): Removed function. - - * arcfour.c (cipher_spec_arcfour): New variable. - * twofish.c (cipher_spec_twofish, cipher_spec_twofish128): New - variables. - * rijndael.c (cipher_spec_aes, cipher_spec_aes192, - cipher_spec256): New variables. - * des.c (cipher_spec_des, cipher_spec_tripledes): New variables. - * cast5.c (cipher_spec_cast5): New variable. - * blowfish.c (cipher_spec_blowfish): Likewise. - - * twofish.c: Do not include "dynload.h". - * rijndael.c: Likewise. - * des.c: Likewise. - * cast5.c: Likewise. - * blowfish.c: Likewise. - * cipher.c: Likewise. - * crc.c: Likewise. - * md4.c: Likewise. - * md5.c: Likewise. - * md.c: Likewise. - * pubkey.c: Likewise. - * rijndael.c: Likewise. - * sha1.c: Likewise. - * sha256.c: Likewise. - - * arcfour.c: Include "cipher.h". - * twofish.c: Likewise. - * rijndael.c: Likewise. - * des.c: Likewise. - * cast5.c: Likewise. - * blowfish.c: Likewise. - - * twofish.c (twofish_setkey): Declared argument `key' const. - (twofish_encrypt): Declared argument `inbuf' const. - (twofish_decrypt): Likewise. - - * rijndael.c (rijndael_setkey): Declared argument `key' const. - (rijndael_encrypt): Declared argument `inbuf' const. - (rijndael_decrypt): Likewise. - - * des.c (do_des_setkey): Declared argument `key' const. - (do_tripledes_setkey): Likewise. - (do_des_encrypt): Declared argument `inbuf' const. - (do_des_decrypt): Likewise. - (do_tripledes_encrypt): Likewise. - (do_tripledes_decrypt): Likewise. - - * cast5.c (encrypt_block): Declared argument `inbuf' const. - (decrypt_block): Likewise. - (cast_setkey): Declared argument `key' const. - - * blowfish.c (do_bf_setkey): Declared argument `key' const. - (encrypt_block): Declared argument `inbuf' const. - (encrypt_block): Likewise. - - - - * cipher.c: Remove CIPHER_ALGO_DUMMY related code. - Removed struct cipher_table_s. - Changed definition of cipher_table. - Removed definition of disabled_algos. - (ciphers_registered, default_ciphers_registered): New variables. - (REGISTER_DEFAULT_CIPHERS): New macro. - (dummy_setkey): Declared argument `key' const. - (dummy_encrypt_block): Declared argument `inbuf' const. - (dummy_encrypt_block): Likewise. - (dummy_encrypt_stream): Likewise. - (dummy_encrypt_stream): Likewise. - (dummy_setkey): Use `unsigned char' instead of `byte'. - (dummy_encrypt_block): Likewise. - (dummy_decrypt_block): Likewise. - (dummy_encrypt_stream): Likewise. - (dummy_decrypt_stream): Likewise. - (gcry_cipher_register_default): New function. - (gcry_cipher_lookup_func_id): New function. - (gcry_cipher_lookup_func_name): New function. - (gcry_cipher_lookup_id): New function. - (gcry_cipher_lookup_name): New function. - (gcry_cipher_id_new): New function. - (gcry_cipher_register): New function. - (gcry_cipher_unregister): New function. - (setup_cipher_table): Removed function. - (load_cipher_modules): Removed function. - (gcry_cipher_map_name): Adjusted to use new module management. - (cipher_algo_to_string): Likewise. - (disable_cipher_algo): Likewise. - (check_cipher_algo): Likewise. - (cipher_get_keylen): Likewise. - (cipher_get_blocksize): Likewise. - (gcry_cipher_open): Likewise. - (struct gcry_cipher_handle): Replaced members algo, algo_index, - blocksize, setkey, encrypt, decrypt, stencrypt, stdecrypt with one - member: cipher. - (gcry_cipher_open): Adjusted code for new handle structure. - (cipher_setkey): Likewise. - (cipher_setiv): Likewise. - (cipher_reset): Likewise. - (do_ecb_encrypt): Likewise. - (do_ecb_decrypt): Likewise. - (do_cbc_encrypt): Likewise. - (do_cbc_decrypt): Likewise. - (do_cfb_encrypt): Likewise. - (do_cfb_decrypt): Likewise. - (do_ctr_encrypt): Likewise. - (cipher_encrypt): Likewise. - (gcry_cipher_encrypt): Likewise. - (cipher_decrypt): Likewise. - (gcry_cipher_decrypt): Likewise. - (cipher_sync): Likewise. - (gcry_cipher_ctl): Likewise. - - * pubkey.c: Removed struct pubkey_table_s. - Changed definition of pubkey_table. - Removed definition of disabled_algos. - (pubkeys_registered, default_pubkeys_registered): New variables. - (REGISTER_DEFAULT_PUBKEYS): New macro. - (setup_pubkey_table): Removed function. - (load_pubkey_modules): Removed function. - (gcry_pubkey_register_default): New function. - (gcry_pubkey_lookup_func_id): New function. - (gcry_pubkey_lookup_func_name): New function. - (gcry_pubkey_lookup_id): New function. - (gcry_pubkey_lookup_name): New function. - (gcry_pubkey_id_new): New function. - (gcry_pubkey_register): New function. - (gcry_pubkey_unregister): New function. - (gcry_pk_map_name): Adjusted to use new module management. - (gcry_pk_algo_name): Likewise. - (disable_pubkey_algo): Likewise. - (check_pubkey_algo): Likewise. - (pubkey_get_npkey): Likewise. - (pubkey_get_nskey): Likewise. - (pubkey_get_nsig): Likewise. - (pubkey_get_nenc): Likewise. - (pubkey_generate): Likewise. - (pubkey_check_secret_key): Likewise. - (pubkey_encrypt): Likewise. - (pubkey_decrypt): Likewise. - (pubkey_sign): Likewise. - (pubkey_verify): Likewise. - (gcry_pk_get_nbits): Likewise. - (gcry_pk_algo_info): Likewise. - - * md.c: Removed struct md_digest_list_s. - (digest_list): Changed definition. - (digests_registered, default_digests_registered): New variables. - (REGISTER_DEFAULT_DIGESTS): New macro. - (new_list_item): Removed function. - (setup_md_table): Removed function. - (load_digest_module): Removed function. - (gcry_digest_register_default): New function. - (gcry_digest_lookup_func_id): New function. - (gcry_digest_lookup_func_name): New function. - (gcry_digest_lookup_id): New function. - (gcry_digest_lookup_name): New function. - (gcry_digest_id_new): New function. - (gcry_digest_register): New function. - (gcry_digest_unregister): New function. - (GcryDigestEntry): New type. - (struct gcry_md_context): Adjusted type of `list'. - (gcry_md_map_name): Adjusted to use new module management. - (digest_algo_to_string): Likewise. - (check_digest_algo): Likewise. - (md_enable): Likewise. - (md_digest_length): Likewise. - (md_asn_oid): Likewise. - -2003-04-07 Moritz Schulte - - * pubkey.c: Replaced PUBKEY_ALGO_DSA with GCRY_PK_DSA, - PUBKEY_ALGO_RSA with GCRY_PK_RSA and PUBKEY_ALGO_ELGAMAL with - GCRY_PK_ELG. - - * dsa.c: Replaced PUBKEY_ALGO_DSA with GCRY_PK_DSA. - -2003-04-01 Moritz Schulte - - * des.c: Removed checks for GCRY_CIPHER_3DES and GCRY_CIPHER_DES. - -2003-03-31 Moritz Schulte - - * tiger.c (tiger_get_info): Do not declare static. - * sha256.c (sha256_get_info): Likewise. - * sha1.c (sha1_get_info): Likewise. - * rmd160.c (rmd160_get_info): Likewise. - * md5.c (md5_get_info): Likewise. - * md4.c (md4_get_info): Likewise. - * crc.c (crc_get_info): Likewise. - - * md.c (load_digest_module): Call setup_md_table during - initialization. - (new_list_item): Link new element into digest_list. - - * cipher.c (do_ctr_decrypt): Made do_ctr_encrypt act as a wrapper - for do_ctr_encrypt, since these functions are identical. - -2003-03-30 Simon Josefsson - - * cipher.c (struct gcry_cipher_handle): Add counter field. - (gcry_cipher_open): Add CTR. - (cipher_reset): Clear counter field. - (do_ctr_encrypt, do_ctr_decrypt): New functions. - (cipher_encrypt, cipher_decrypt): Call CTR functions. - (gcry_cipher_ctl): Add SET_CTR to set counter. - -2003-03-30 Moritz Schulte - - * rsa.c (_gcry_rsa_blind): New function. - (_gcry_rsa_unblind): New function. - (_gcry_rsa_decrypt): Use _gcry_rsa_blind and _gcry_rsa_decrypt. - -2003-03-26 Moritz Schulte - - * dynload.c (_gcry_enum_gnupgext_pubkeys): Adjust `encrypt' and - `decrypt' function arguments. - (_gcry_enum_gnupgext_pubkeys): Likewise. - * dynload.h: Likewise. - - * pubkey.c (dummy_decrypt): Add argument: int flags. - (dummy_encrypt): Likewise. - - * elgamal.c (_gcry_elg_encrypt): Add argument: int flags. - (_gcry_elg_decrypt): Likewise. - - * rsa.c (_gcry_rsa_encrypt): Add argument: int flags. - (_gcry_rsa_decrypt): Likewise. - - * pubkey.c: Add `flags' argument to members `encrypt' and - `decrypt' of struct `pubkey_table_s'. - - * rsa.h: Add `flags' argument to function declarations. - * elgamal.h: Likewise. - - * pubkey.c (sexp_data_to_mpi): New variable: int parsed_flags. - (sexp_data_to_mpi): Set `parsed_flags'. - (sexp_data_to_mpi): New argument: int *flags. - (gcry_pk_encrypt): New variable: int flags. - (gcry_pk_encrypt): Pass `flags' to pubkey_encrypt. - (pubkey_encrypt): New variable: int flags. - (pubkey_encrypt): Pass `flags' to pubkey encrypt function. - (pubkey_decrypt): Likewise. - (pubkey_decrypt): Pass `flags' to pubkey encrypt function. - (gcry_pk_encrypt): Include `flags' s-exp in return list. - (sexp_to_enc): New argument: int *flags. - (gcry_pk_decrypt): New variable: int flags. - (gcry_pk_decrypt): Pass `flags' to pubkey_decrypt. - (sexp_to_enc): New variable: int parsed_flags. - (sexp_to_enc): Set `parsed_flags'. - -2003-03-22 Simon Josefsson - - * cipher.c (gcry_cipher_open, do_cbc_encrypt) - (gcry_cipher_encrypt): Support GCRY_CIPHER_CBC_MAC. - (gcry_cipher_ctl): Support GCRYCTL_SET_CBC_MAC. - -2003-03-19 Werner Koch - - * primegen.c (gen_prime): New args EXTRA_CHECK and EXTRA_CHECK_ARG - to allow for a user callback. Changed all callers. - (_gcry_generate_secret_prime) - (_gcry_generate_public_prime): Ditto, pass them to gen_prime. - * rsa.c (check_exponent): New. - (generate): Use a callback to ensure that a given exponent is - actually generated. - -2003-03-12 Moritz Schulte - - * primegen.c: Initialize `no_of_small_prime_numbers' statically. - (gen_prime): Remove calculation of `no_of_small_prime_numbers'. - -2003-03-03 Moritz Schulte - - * md.c (gcry_md_ctl): Rewritten to use same style like the other - functions dispatchers. - -2003-03-02 Moritz Schulte - - * cipher.c (struct gcry_cipher_handle): New member: algo_index. - (gcry_cipher_open): Allocate memory for two cipher contexts. - Initialize algo_index. - (cipher_setkey): Duplicate context into reserved memory. - (cipher_reset): New function, which resets the context and clear - the IV. - (gcry_cipher_ctl): Call cipher_reset. - -2003-02-23 Moritz Schulte - - * cipher.c: Remove (bogus) `digitp' macro definition. - * md.c: Likewise. - - * blowfish.c (burn_stack): Removed. - * arcfour.c (burn_stack): Likewise. - * cast5.c (burn_stack): Likewise. - * des.c (burn_stack): Likewise. - * md4.c (burn_stack): Likewise. - * md5.c (burn_stack): Likewise. - * random.c (burn_stack): Likewise. - * rijndael.c (burn_stack): Likewise. - * rmd160.c (burn_stack): Likewise. - * sha1.c (burn_stack): Likewise. - * sha256.c (burn_stack): Likewise. - * tiger.c (burn_stack): Likewise. - * twofish.c (burn_stack): Likewise. - - * blowfish.c: Changed all occurences of burn_stack to - _gcry_burn_stack. - * arcfour.c: Likewise. - * cast5.c: Likewise. - * des.c: Likewise. - * md4.c: Likewise. - * md5.c: Likewise. - * random.c: Likewise. - * rijndael.c: Likewise. - * rmd160.c: Likewise. - * sha1.c: Likewise. - * sha256.c: Likewise. - * tiger.c: Likewise. - * twofish.c: Likewise. - - * arcfour.c (_gcry_arcfour_get_info): Use GCRY_CIPHER_ARCFOUR - instead of hard-coded value `301'. - -2003-01-24 Werner Koch - - * random.c (_gcry_register_random_progress): New. - (_gcry_random_progress): New. - - * rndlinux.c (gather_random): Call the random progress function. - -2003-01-23 Werner Koch - - * rsa.c (generate): New arg USE_E to request a specific public - exponent. - (_gcry_rsa_generate): Ditto. - * elgamal.c (_gcry_elg_generate): Must add an dummy argument - instead of USE_E. - * dsa.c (_gcry_dsa_generate): Ditto. - * pubkey.c (dummy_generate): Ditto. - (pubkey_generate): Add USE_E arg and pass it down. - (gcry_pk_genkey): Detect "rsa-use-e" parameter and pass it to generate. - - * pubkey.c (sexp_to_enc): New arg RET_MODERN. - (gcry_pk_decrypt): Make use of it to return a real S-expression. - Return better error codes. - (gcry_pk_verify): Return better error codes. - -2003-01-21 Werner Koch - - * random.c (gcry_random_add_bytes): Add QUALITY argument, let - function return an error code and disable its core for now. - -2003-01-21 Timo Schulz - - * random.c (gcry_random_add_bytes): New. Function to add external - random to the pool. - -2003-01-20 Simon Josefsson - - * crc.c: New. - * Makefile.am (EXTRA_PROGRAMS, EXTRA_crc_SOURCES): Add crc.c. - * md.c (gcry_md_get_algo_dlen): Add values for CRC. - -2003-01-20 Werner Koch - - * sha256.c: New. - * bithelp.h (ror): New. - * Makfile.am: Add sha256.c. - * md.c (oid_table): Add values for SHA256 et al. - (gcry_md_get_algo_dlen): Likewise - -2003-01-20 Werner Koch - - * pubkey.c (gcry_pk_get_keygrip): Implemented keygrips for DSA - and ElGamal. - -2003-01-17 Werner Koch - - * cipher.c (gcry_cipher_encrypt): Reworked so that the output will - never contain the plaintext even if the caller did not checked the - return value. - - * md.c (gcry_md_get_algo): Changed error code to GCRYERR_GENERAL - because we don't have an invalid md algo but no algorithm enabled. - - * pubkey.c (gcry_pk_genkey): Changed error code for bounds check - of table parameters to GCRYERR_INTERNAL. - - * md.c (gcry_md_open): Partly reverted Timo's change from - 2002-10-10 by removing the check for the algorithm. An algorithm - of 0 is allowed and anyway we should not double check it or check - it using a different function. Also fixed the flags check. - - * pubkey.c (gcry_pk_encrypt): Make sure that R_CIPH points to NULL - on error. - (gcry_pk_decrypt): Ditto for R_PLAIN. - (gcry_pk_sign): Ditto for R_SIG. - (gcry_pk_genkey): Ditto for R_KEY. - -2003-01-16 Werner Koch - - * md.c (gcry_md_write): Changed 2nd argument type to void*. - (gcry_md_hash_buffer): Changed type of boths buffers to void*. - (gcry_md_setkey): Changed 2nd argument type to void*. - -2003-01-15 Werner Koch - - * pubkey.c (sexp_data_to_mpi): New. This handles pkcs1 padding. - (gcry_pk_sign, gcry_pk_verify): Use it here. - (gcry_pk_encrypt): And here. - (pubkey_verify): Add debug code. - (sexp_to_enc): Handle flags in the input and return the pkcs1 flag - in a new parameter. - (gcry_pk_decrypt): Prepare for future pkcs1 handling. - -2002-12-19 Werner Koch - - * random.c (_gcry_random_initialize): New. - -2002-12-16 Werner Koch - - * cipher.c: Added a Teletrust specific OID for 3DES. - -2002-12-12 Werner Koch - - * md.c: Added another oddball OIW OID (sha-1WithRSAEncryption). - -2002-11-23 Werner Koch - - * md.c (load_digest_module): Enlarged checked_algos bitmap. - * md4.c (func_table): Fixed entry for md4. - Both by Simon Josephson. - (transform): Copy data to get the alignment straight. Tested only - on i386. - -2002-11-10 Simon Josefsson - - * cipher.c (gcry_cipher_open): Don't reject CTS flag. - (do_cbc_encrypt, do_cbc_decrypt, cipher_encrypt) - (gcry_cipher_encrypt, cipher_decrypt) - (gcry_cipher_decrypt): Support CTS flag. - (gcry_cipher_ctl): Toggle CTS flag. - -2002-11-10 Werner Koch - - * md4.c: New. By Simon Josefsson. - * Makefile.am (EXTRA_PROGRAMS): Add md4.c. - * md.c (oid_table,gcry_md_get_algo_dlen): MD4 support. - -2002-10-14 Werner Koch - - * arcfour.c (do_encrypt_stream): Don't use increment op when - assigning to the same variable. - -2002-10-10 Timo Schulz - - * pubkey.c (gcry_pk_genkey): Check boundaries. - - * md.c (gcry_md_open): Check that algo is available and only - valid flag values are used. - (gcry_md_get_algo): Add error handling. - -2002-09-26 Werner Koch - - * md.c: Include an OID for TIGER. - * tiger.c (tiger_get_info): Use a regular OID. - -2002-09-17 Werner Koch - - * random.c: Replaced mutex.h by the new ath.h. Changed all calls. - -2002-09-16 Werner Koch - - * arcfour.c (do_encrypt_stream): Use register modifier and modulo. - According to Nikos Mavroyanopoulos this increases perfromace on - i386 system noticable. And I always tought gcc is clever enough. - * md5.c (transform): Use register modifier. - * rmd160.c (transform): Ditto. - * sha1.c (transform): Ditto. We hope that there are 6 free registers. - * random.c (gcry_randomize): Rewrote to avoid malloc calls. - - * rndlinux.c (gather_random): Replaced remaining fprintfs by log_*. - * arcfour.c (do_arcfour_setkey): Ditto. - * twofish.c (do_twofish_setkey): Ditto. - * rndegd.c (gather_random): Ditto. - * rijndael.c (do_setkey): Ditto. - * random.c (_gcry_random_dump_stats): Ditto. - * primegen.c (_gcry_generate_elg_prime): Ditto. - * des.c (_gcry_des_get_info): Ditto. - * cast5.c (do_cast_setkey): Ditto. - * blowfish.c (do_bf_setkey): Ditto. - -2002-08-26 Werner Koch - - * des.c (weak_keys): Fixed one entry in the table and compared - all entries against the literature. - (selftest): Checksum the weak key table. - -2002-08-21 Werner Koch - - * pubkey.c: Enable keygrip calculation for "openpgp-rsa". - -2002-08-17 Werner Koch - - * cipher.c (setup_cipher_table): Don't overwrite the DES entry - with the entry for DUMMY. - -2002-08-14 Werner Koch - - * des.c (do_des_setkey,do_des_encrypt, do_des_decrypt): New. - (_gcry_des_get_info): Support plain old DES. - * cipher.c (setup_cipher_table): Put DES into the table. - -2002-07-25 Werner Koch - - * rndunix.c (_gcry_rndunix_constructor): Prefixed with _gcry_. - Noted by Stephan Austermuehle. - -2002-07-08 Timo Schulz - - * rndw32.c: Replaced the m_ memory functions with the real - gcry_ functions. Renamed all g10_ prefixed functions to log_. - -2002-06-12 Werner Koch - - * rsa.c (generate): Use e = 65537 for now. - -2002-06-11 Werner Koch - - * pubkey.c (gcry_pk_get_keygrip): Allow a "protected-private-key". - -2002-06-05 Timo Schulz - - * cipher.c (gcry_cipher_encrypt, gcry_cipher_decrypt): - Check that the input size is a multiple of the blocksize. - -2002-05-23 Werner Koch - - * md.c (oid_table): Add an rsadsi OID for MD5. - -2002-05-21 Werner Koch - - * primegen.c, elgamal.c, dsa.c (progress): Do not print anything - by default. Pass an extra identifying string to the callback and - reserved 2 argumenst for current and total counters. Changed the - register function prototype. - -2002-05-17 Werner Koch - - * rndegd.c (rndegd_constructor): Fixed name of register function - and prefixed the function name with _gcry_. - * rndw32.c (rndw32_constructor): Ditto. - * tiger.c (tiger_constructor): Ditto. - - * Makefile.am: Removed all dynamic loading stuff. - * dynload.c: Ditto. Now only used for the constructor system. - -2002-05-15 Werner Koch - - * random.c (gcry_random_bytes,gcry_random_bytes_secure) - (gcry_randomize): Make sure we are initialized. - -2002-05-14 Werner Koch - - Changed license of most files to the LGPL. - -2002-05-02 Werner Koch - - * random.c (_gcry_fast_random_poll): Initialize the module so the - mutex can be used. - - * primegen.c (small_prime_numbers): Moved table from smallprime.c - * smallprime.c: File removed. - - * des.c (leftkey_swap, rightkey_swap, working_memcmp): Made static. - - * cipher.c (gcry_cipher_map_name): Map "RIJNDAEL" to "AES". - * rijndael.c (rijndael_get_info): We do only support a 128 bit - blocksize so it makes sense to change the algorithm strings to - AES. - - * tiger.c (tiger_final): Removed superfluous token pasting operators. - * md5.c (md5_final): Ditto. - -2002-04-30 Werner Koch - - * cipher.c: Fixed list of copyright years. - -2002-03-18 Werner Koch - - * random.c (initialize): Initialize the new pool lock mutex. - (_gcry_fast_random_poll): Add locking and moved main - code out to... - (do_fast_random_poll): new function. - (read_pool): Use the new function here. - (get_random_bytes): Add locking. - (_gcry_update_random_seed_file): Ditto. - -2002-03-11 Werner Koch - - * md.c: Add rsaSignatureWithripemd160 to OID table. - -2002-02-20 Werner Koch - - * sha1.c: Removed a left over comment note. The code has been - rewritten from scratch in 1998. Thanks to Niels Möller for - reporting this misleading comment. - -2002-02-18 Werner Koch - - * rndunix.c (rndunix_constructor): Use the the new prefixed - function name. Reported by Jordi Mallach. - -2002-02-10 Werner Koch - - * random.c (mix_pool): Carry an extra failsafe_digest buffer - around to make the function more robust. - -2002-02-08 Werner Koch - - * random.c (add_randomness): Xor new data into the pool and not - just copy it. This avoids any choosen input attacks which are not - serious in our setting because an outsider won't be able to mix - data in and even then we keep going with a PRNG. Thanks to Stefan - Keller for pointing this out. - -2002-01-04 Werner Koch - - * pubkey.c (gcry_pk_genkey): Do not release skey - it is static. - - * primegen.c (gen_prime): Of course we should use set_bit - and not set_highbit to set the second high bit. - -2001-12-18 Werner Koch - - * rsa.c (generate): Loop until we find the exact modulus size. - Changed the exponent to 41. - (rsa_get_info): s/usage/r_usage/ to avoid shadow warnings. - * primegen.c (gen_prime): Set 2 high order bits for secret primes. - - * Makefile.am (DISTCLEANFILES): Include construct.c. - -2001-12-17 Werner Koch - - * pubkey.c (gcry_pk_get_keygrip): New - experimental. - -2001-12-11 Werner Koch - - * cipher.c: Added OIDs for AES. - (gcry_cipher_mode_from_oid): New. - (gcry_cipher_map_name): Moved OID search code to .. - (search_oid): .. new function. - -2001-12-10 Werner Koch - - * pubkey.c (gcry_pk_encrypt): Find the signature algorithm by name - and not by number. - - * pubkey.c (gcry_pk_encrypt,gcry_pk_decrypt,gcry_pk_sign) - (gcry_pk_verify,gcry_pk_testkey, gcry_pk_genkey) - (gcry_pk_get_nbits): Release the arrays. Noted by Nikos - Mavroyanopoulos. - -2001-12-06 Werner Koch - - * cipher.c (gcry_cipher_map_name): Look also for OIDs prefixed - with "oid." or "OID.". - -2001-12-05 Werner Koch - - * pubkey.c (algo_info_table): Fixed entry for openpgp-rsa. - -2001-11-24 Werner Koch - - * pubkey.c: Added the rsaEncryption OID to the tables. - (sexp_to_key): Add an arg to return the index of the algorithm, - changed all callers. - (gcry_pk_sign): Find the signature algorithm by name and not by - number. - (gcry_pk_get_nbits): Fixed so that we can now really pass a secret - key to get the result. - - * md.c (gcry_md_map_name): Look also for OIDs prefixed with "oid." - or "OID." so that an OID string can be used as an S-Exp token. - -2001-11-20 Werner Koch - - * md.c (gcry_md_map_name): Lookup by OID if the the name begins - with a digit. - (oid_table): New. - -2001-11-16 Werner Koch - - * md.c (gcry_md_info): New operator GCRYCTL_IS_ALGO_ENABLED. - -2001-11-07 Werner Koch - - * md.c (gcry_md_hash_buffer): Close the handle which was left open - for algorithms other than rmd160. - -2001-08-08 Werner Koch - - * rndw32.c (gather_random): Use toolhelp in addition to the NT - gatherer for Windows2000. Suggested by Sami Tolvanen. - - * random.c (read_pool): Fixed length check, this used to be one - byte to strict. Made an assert out of it because the caller has - already made sure that only poolsize bytes are requested. - Reported by Marcus Brinkmann. - -2001-08-03 Werner Koch - - * cipher.c (cipher_encrypt, cipher_decrypt): Prepare to return - errors. We have to change the interface to all ciphers to make - this really work but we should do so to prepare for hardware - encryption modules. - (gcry_cipher_encrypt, gcry_cipher_decrypt): Return the error and - set lasterr. - (gcry_cipher_ctl): Make sure that errors from setkey are returned. - -2001-08-02 Werner Koch - - * rndlinux.c (gather_random): casted a size_t arg to int so that - the format string is correct. Casting is okay here and avoids - translation changes. - - * random.c (fast_random_poll): Do not check the return code of - getrusage. - - * rndunix.c: Add a signal.h header to avoid warnings on Solaris 7 - and 8. - - * tiger.c (print_abc,print_data): Removed. - - * rijndael.c, des.c, blowfish.c, twofish.c, cast5.c, arcfour.c - (burn_stack): New. Add wrappers for most functions to be able to - call burn_stack after the function invocation. This methods seems - to be the most portable way to zeroise the stack used. It does - only work on stack frame based machines but it is highly portable - and has no side effects. Just setting the automatic variables at - the end of a function to zero does not work well because the - compiler will optimize them away - marking them as volatile would - be bad for performance. - * md5.c, sha1.c, rmd160.c, tiger.c (burn_stack): Likewise. - * random.c (burn_stack): New. - (mix_pool): Use it here to burn the stack of the mixblock function. - - * primegen.c (_gcry_generate_elg_prime): Freed q at 3 places. - Thanks to Tommi Komulainen. - - * arcfour.c (arcfour_setkey): Check the minimim keylength against - bytes and not bits. - (selftest): Must reset the key before decryption. - -2001-05-31 Werner Koch - - * sha1.c (sha1_init): Made static. - - Changed all g10_ prefixed function names as well as some mpi_ - function names to cope with the introduced naming changes. - - * md.c (prepare_macpads): Made key const. - -2001-05-28 Werner Koch - - * rndegd.c (gather_random): Removed the use of tty_printf. - -2001-03-29 Werner Koch - - * md5.c (md5_final): Fixed calculation of hashed length. Thanks - to disastry@saiknes.lv for pointing out that it was horrible wrong - for more than 512MB of input. - * sha1.c (sha1_final): Ditto. - * rmd160.c (rmd160_final): Ditto. - * tiger.c (tiger_final): Ditto. - - * blowfish.c (encrypt,do_encrypt): Changed name to do_encrypt to - avoid name clashes with an encrypt function in stdlib.h of - Dynix/PIX. Thanks to Gene Carter. - * elgamal.c (encrypt,do_encrypt): Ditto. - - * twofish.c (gnupgext_enum_func): Use only when when compiled as a - module. - * rijndael.c (gnupgext_enum_func): Ditto. - - * tiger.c (tiger_get_info): Return "TIGER192" and not just - "TIGER". By Edwin Woudt. - - * random.c: Always include time.h - standard requirement. Thanks - to James Troup. - - * rndw32.c: Fixes to the macros. - -2001-01-11 Werner Koch - - * cipher.c (cipher_encrypt,gcry_cipher_encrypt): Use blocksize and - not 8. - -2000-12-19 Werner Koch - - Major change: - Removed all GnuPG stuff and renamed this piece of software - to gcrypt. - -2000-11-14 Werner Koch - - * dsa.c (test_keys): Replaced mpi_alloc by gcry_mpi_new and - mpi_free by gcry_mpi_release. - * elgamal.c (test_keys,generate): Ditto, also for mpi_alloc_secure. - * rsa.c (test_keys,generate,rsa_verify): Ditto. - * primegen.c (generate_elg_prime): Ditto. - (gen_prime): Ditto and removed nlimbs. - - * rsa.c (generate): Allocate 2 more vars in secure memory. - - * Makefile.am (OMIT_DEPENDENCIES): Hack to work around dependency - problems. - -2000-10-09 Werner Koch - - * arcfour.c, arcfour.h: New. - * cipher.c (cipher_encrypt, cipher_decrypt): Add stream mode. - (setup_cipher_table): Add Arcfour. - (gcry_cipher_open): Kludge to allow stream mode. - -Wed Oct 4 13:16:18 CEST 2000 Werner Koch - - * sha1.c (transform): Use rol() macro. Actually this is not needed - for a newer gcc but there are still aoter compilers. - - * rsa.c (test_keys): Use new random function. - - * md.c (gcry_md_setkey): New function to overcome problems with - const conflics. - (gcry_md_ctl): Pass set key to the new functions. - - * rijndael.c: New. - * cipher.c: Add Rijndael support. - -Mon Sep 18 16:35:45 CEST 2000 Werner Koch - - * rndlinux.c (open_device): Loose random device checking. - By Nils Ellmenreich. - - * random.c (fast_random_poll): Check ENOSYS for getrusage. - * rndunix.c: Add 2 sources for QNX. By Sam Roberts. - - * pubkey.c (gcry_pk_algo_info): Add GCRYCTL_GET_ALGO_USAGE. - - * rsa.c: Changed the comment about the patent. - (secret): Speed up by using the CRT. For a 2k keys this - is about 3 times faster. - (stronger_key_check): New but unused code to check the secret key. - * Makefile.am: Included rsa.[ch]. - * pubkey.c: Enabled RSA support. - (pubkey_get_npkey): Removed RSA workaround. - -Mon Jul 31 10:04:47 CEST 2000 Werner Koch - - * pubkey.c: Replaced all gcry_sexp_{car,cdr}_{data,mpi} by the new - gcry_sexp_nth_{data,mpi} functions. - -Tue Jul 25 17:44:15 CEST 2000 Werner Koch - - * pubkey.c (exp_to_key,sexp_to_sig,sexp_to_enc,gcry_pk_encrypt, - gcry_pk_decrypt,gcry_pk_sign,gcry_pk_genkey): Changed to work with - the new S-Exp interface. - -Mon Jul 17 16:35:47 CEST 2000 Werner Koch - - * random.c (gather_faked): Replaced make_timestamp by time(2) again. - -Fri Jul 14 19:38:23 CEST 2000 Werner Koch - - * md.c (gcry_md_ctl): Support GCRYCTL_{START,STOP}_DUMP. - - * Makefile.am: Never compile mingw32 as module. - - * Makefile.am: Tweaked module build and removed libtool - - * Makefile.am: Replaced -O1 by -O. Suggested by Alec Habig. - - * elgamal.c (sign): Removed inactive code. - - * rsa.c, rsa.h: New based on the old module version (only in CVS for now). - * pubkey.c (setup_pubkey_table): Added commented support for RSA. - - * rndunix.c (waitpid): New. For UTS 2.1. All by Dave Dykstra. - (my_popen): Do the FD_CLOEXEC only if it is available - (start_gatherer): Cope with missing _SC_OPEN_MAX - - * rndunix.c: Add some more headers for QNX. By Sam Roberts. - - * rndegd.c (gather_random): Shortcut level 0. - * rndunix.c (gather_random): Ditto. - * rndw32.c (gather_random): Ditto. - - * rndw32.c: Replaced with code from Cryptlib and commented the old stuff. - * rndw32.c: Add some debuging code enabled by an environment variable. - - * random.c (read_seed_file): Binary open for DOSish system - (update_random_seed_file): Ditto. - * random.c [MINGW32]: Include process.h for getpid. - * random.c (fast_random_poll): Add clock_gettime() as fallback for - system which support this POSIX.4 fucntion. By Sam Roberts. - - * random.c (read_seed_file): Removed the S_ISLNK test becuase it - is already covered by !S_ISREG and is not defined in Unixware. - Reported by Dave Dykstra. - (update_random_seed_file): Silently ignore update request when pool - is not filled. - - * random.c (read_seed_file): New. - (set_random_seed_file): New. - (read_pool): Try to read the seeding file. - (update_random_seed_file): New. - - (read_pool): Do an initial extra seeding when level 2 quality random - is requested the first time. This requestes at least POOLSIZE/2 bytes - of entropy. Compined with the seeding file this should make normal - random bytes cheaper and increase the quality of the random bytes - used for key generation. - - * random.c (read_pool): Print a more friendly error message in - cases when too much random is requested in one call. - - * random.c (fast_random_poll): Check whether RUSAGE_SELF is defined; - this is not the case for some ESIX and Unixware, although they have - getrusage(). - - * primegen.c (generate_elg_prime): All primes are now generated with - the lowest random quality level. Because they are public anyway we - don't need stronger random and by this we do not drain the systems - entropy so much. - - * primegen.c (register_primegen_progress): New. - * dsa.c (register_pk_dsa_progress): New. - * elgamal.c (register_pk_elg_progress): New. - - * elgamal.c (wiener_map): New. - (gen_k): Use a much smaller k. - (generate): Calculate the qbits using the wiener map and - choose an x at a size comparable to the one choosen in gen_k - - * rmd160.c (rmd160_get_info): Moved casting to the left side due to a - problem with UTS4.3. Suggested by Dave Dykstra. - * sha1.c (sha1_get_info): Ditto. - * tiger.c (tiger_get_info): Ditto. - * md5.c (md5_get_info): Ditto - * des.c (des_get_info): Ditto. - * blowfish.c (blowfish_get_info): Ditto. - * cast5.c (cast5_get_info): Ditto. - * twofish.c (twofish_get_info): Ditto. - -Fri Mar 24 11:25:45 CET 2000 Werner Koch - - * md.c (md_open): Add hmac arg and allocate space for the pads. - (md_finalize): Add HMAC support. - (md_copy): Ditto. - (md_close): Ditto. - (gcry_md_reset): Ditto. - (gcry_md_ctl): Ditto. - (prepare_macpdas): New. - -Mon Mar 13 19:22:46 CET 2000 Werner Koch - - * md.c (gcry_md_hash_buffer): Add support for the other algorithms. - -Mon Jan 31 16:37:34 CET 2000 Werner Koch - - * genprime.c (generate_elg_prime): Fixed returned factors which never - worked for non-DSA keys. - -Thu Jan 27 18:00:44 CET 2000 Werner Koch - - * pubkey.c (sexp_to_key): Fixed mem leaks in case of errors. - -Mon Jan 24 22:24:38 CET 2000 Werner Koch - - * pubkey.c (gcry_pk_decrypt): Implemented. - (gcry_pk_encrypt): Implemented. - (gcry_pk_testkey): New. - (gcry_pk_genkey): New. - (pubkey_decrypt): Made static. - (pubkey_encrypt): Ditto. - (pubkey_check_secret_key): Ditto. - (pubkey_generate): Ditto. - -Mon Jan 24 13:04:28 CET 2000 Werner Koch - - * pubkey.c (pubkey_nbits): Removed and replaced by ... - (gcry_pk_get_nbits): this new one. - -Wed Dec 8 21:58:32 CET 1999 Werner Koch - - * dsa.c: s/mpi_powm/gcry_mpi_powm/g - * elgamal.c: Ditto. - * primegen.c: Ditto. - - * : Replaced g10_opt_verbose by g10_log_verbosity(). - - * Makefile.am (INCLUDES): removed intl, add ../gcrypt - -Fri Nov 19 17:15:20 CET 1999 Werner Koch - - * dynload.c (cmp_filenames): New to replaced compare_filename() in - module. - (register_cipher_extension): Removed the tilde expansion stuff. - * rndeg.c (my_make_filename): New. - - * : Replaced header util.h by g10lib.h - - * random.c (gather_faked): Replaced make_timestamp by time(2). - Disabled wrning printed with tty_printf. - * rndlinux.c (gather_random): Always use fprintf instead of tty_xxx; - this should be replaced by a callback function. - - * primegen.c (gen_prime): Use gcry_mpi_randomize. - (is_prime): Ditto. - * elgamal.c (test_keys): Ditto. - * dsa.c (test_keys): Ditto. - - * cipher.c (gcry_cipher_close): Die on invalid handle. - -Mon Nov 15 21:36:02 CET 1999 Werner Koch - - * elgamal.c (gen_k): Use the new random API. - (generate): Ditto. - * dsa.c (gen_k): Ditto. - (generate): Ditto. - -Sat Nov 13 17:44:23 CET 1999 Werner Koch - - * pubkey.c (disable_pubkey_algo): Made static. - (gcry_pk_ctl): New. - - * random.c (get_random_bits): Renamed to ... - (get_random_bytes): ... this and made static. - (gcry_random_bytes): New. - (gcry_random_bytes_secure): New. - (randomize_buffer): Renamed to ... - (gcry_randomize): ...this. - - * md.c (gcry_md_hash_buffer): New. - - * pubkey.c (gcry_pk_algo_info): 4 new commands. - (pubkey_get_npkey): Made static. - (pubkey_get_nskey): Made static. - (pubkey_get_nsig): Made static. - (pubkey_get_nenc): Made static. - - * pubkey.c: Removed all G10ERR_xxx. - * cipher.c: Changed all GCRYERR_INV_ALGO to GCRYERR_INV_CIPHER_ALGO. - * md.c: Changed all GCRYERR_INV_ALGO to GCRYERR_INV_MD_ALGO. - * cast5.c (cast_setkey): Changed errocodes to GCRYERR_xxx. - * blowfish.c: Ditto. - * des.c: Ditto. - * twofish.c: Ditto. - * dsa.c: Ditto. - * elgamal.c: Ditto. - - * g10c.c: Removed - - * cipher.c (gcry_cipher_open): Replaced alloc functions and return NULL - if we are out of core. - * dynload.c: Replaced all memory allocation functions. - * md.c: Ditto. - * primegen.c: Ditto. - * pubkey.c: Ditto. - * random.c: Ditto. - * rndw32.c: Ditto. - * elgamal.c: Ditto. - * dsa.c: Ditto. - -Tue Oct 26 14:10:21 CEST 1999 Werner Koch - - * elgamal.c (sign): Hugh found strange code here. Replaced by BUG(). - - * cipher.c: Merged with gcrypt/symapi.c. - - * pubkey.c (string_to_pubkey_algo): Renamed function to ... - (gcry_pk_map_name): ... this. - (pubkey_algo_to_string): Renamed function to ... - (gcry_pk_algo_name): ... this. - (gcry_pk_algo_info): New. - * pubkey.c: Merged with gcrypt/pkapi.c. - - * md.c (md_reset): Clear finalized; thanks to Ulf Moeller for - fixing this bug. - - * md.c: Merged with gcrypt/mdapi.c - -Wed Sep 15 14:39:59 CEST 1999 Michael Roth - - * des.c: Various speed improvements: One bit pre rotation - trick after initial permutation (Richard Outerbridge). - Finished test of SSLeay Tripple-DES patterns. - -Wed Sep 15 16:22:17 CEST 1999 Werner Koch - - * rndw32.c: New. - -Mon Sep 13 10:51:29 CEST 1999 Werner Koch - - * bithelp.h: New. - * rmd160.h, sha1.h, md5.h: Use the rol macro from bithelp.h - -Tue Sep 7 16:23:36 CEST 1999 Werner Koch - - * Makefile.am: Fixed seds for latest egcc. By Ollivier Robert. - -Mon Sep 6 19:59:08 CEST 1999 Werner Koch - - * des.c (selftest): Add some testpattern - -Mon Aug 30 20:38:33 CEST 1999 Werner Koch - - * cipher.c (do_cbc_encrypt): Fixed serious bug occuring when not using - in place encryption. Pointed out by Frank Stajano. - -Mon Jul 26 09:34:46 CEST 1999 Werner Koch - - * md5.c (md5_final): Fix for a SCO cpp bug. - -Thu Jul 15 10:15:35 CEST 1999 Werner Koch - - * elgamal.c (elg_check_secret_key,elg_encrypt - elg_decrypt,elg_sign,elg_verify): Sanity check on the args. - * dsa.c (dsa_check_secret_key,dsa_sign,dsa_verify): Ditto. - - * pubkey.c (disable_pubkey_algo): New. - (check_pubkey_algo2): Look at disabled algo table. - * cipher.c (disable_cipher_algo): New. - (check_cipher_algo): Look at disabled algo table. - -Wed Jul 7 13:08:40 CEST 1999 Werner Koch - - * Makefile.am: Support for libtool. - -Fri Jul 2 11:45:54 CEST 1999 Werner Koch - - * dsa.c (gen_k): Changed algorithm to consume less random bytes - * elgamal.c (gen_k): Ditto. - - * random.c (random_dump_stats): New. - -Thu Jul 1 12:47:31 CEST 1999 Werner Koch - - * primegen.c, elgamal.c, dsa.c (progess): New and replaced all - fputc with a call to this function. - -Sat Jun 26 12:15:59 CEST 1999 Werner Koch - - * rndegd.c (do_write): s/ssize_t/int/ due to SunOS 4.1 probs. - - * cipher.c (do_cbc_encrypt, do_cbc_decrypt): New. - - * dynload.c (HAVE_DL_SHL_LOAD): Map hpux API to dlopen (Dave Dykstra). - * Makefile.am (install-exec-hook): Removed. - -Sun May 23 14:20:22 CEST 1999 Werner Koch - - * cipher.c (setup_cipher_table): Enable Twofish - - * random.c (fast_random_poll): Disable use of times() for mingw32. - -Mon May 17 21:54:43 CEST 1999 Werner Koch - - * dynload.c (register_internal_cipher_extension): Minor init fix. - -Tue May 4 15:47:53 CEST 1999 Werner Koch - - * primegen.c (gen_prime): Readded the Fermat test. Fixed the bug - that we didn't correct for step when passing the prime to the - Rabin-Miller test which led to bad performance (Stefan Keller). - (check_prime): Add a first Fermat test. - -Sun Apr 18 10:11:28 CEST 1999 Werner Koch - - * cipher.c (cipher_setiv): Add ivlen arg, changed all callers. - - * random.c (randomize_buffer): alway use secure memory because - we can't use m_is_secure() on a statically allocated buffer. - - * twofish.c: Replaced some macros by a loop to reduce text size. - * Makefile.am (twofish): No more need for sed editing. - -Fri Apr 9 12:26:25 CEST 1999 Werner Koch - - * cipher.c (cipher_open): Reversed the changes for AUTO_CFB. - - * blowfish.c: Dropped the Blowfish 160 mode. - * cipher.c (cipher_open): Ditto. - (setup_cipher_table): Ditto. And removed support of twofish128 - -Wed Apr 7 20:51:39 CEST 1999 Werner Koch - - * random.c (get_random_bits): Can now handle requests > POOLSIZE - - * cipher.c (cipher_open): Now uses standard CFB for automode if - the blocksize is gt 8 (according to rfc2440). - - * twofish.c: Applied Matthew Skala's patches for 256 bit key. - -Tue Apr 6 19:58:12 CEST 1999 Werner Koch - - * random.c (get_random_bits): Can now handle requests > POOLSIZE - - * cipher.c (cipher_open): Now uses standard CFB for automode if - the blocksize is gt 8 (according to rfc2440). - -Sat Mar 20 11:44:21 CET 1999 Werner Koch - - * rndlinux.c (tty_printf) [IS_MODULE]: Removed. - - * rndegd.c (gather_random): Some fixes. - -Wed Mar 17 13:09:03 CET 1999 Werner Koch - - * rndegd.c (do_read): New. - (gather_random): Changed the implementation. - -Mon Mar 8 20:47:17 CET 1999 Werner Koch - - * dynload.c (DLSYM_NEEDS_UNDERSCORE): Renamed. - -Fri Feb 26 17:55:41 CET 1999 Werner Koch - - * md.c: Nearly a total rewrote. - -Wed Feb 24 11:07:27 CET 1999 Werner Koch - - * cipher.c (context): Fixed alignment - * md.c: Ditto. - - * rndegd.c: New - -Mon Feb 22 20:04:00 CET 1999 Werner Koch - - * rndegd.c: New. - -Wed Feb 10 17:15:39 CET 1999 Werner Koch - - * Makefile.am: Modules are now figured out by configure - * construct.c: New. Generated by configure. Changed all modules - to work with that. - * sha1.h: Removed. - * md5.h: Removed. - - * twofish.c: Changed interface to allow Twofish/256 - - * rndunix.c (start_gatherer): Die on SIGPIPE. - -Wed Jan 20 18:59:49 CET 1999 Werner Koch - - * rndunix.c (gather_random): Fix to avoid infinite loop. - -Sun Jan 17 11:04:33 CET 1999 Werner Koch - - * des.c (is_weak_key): Replace system memcmp due to bugs - in SunOS's memcmp. - (des_get_info): Return error on failed selftest. - * twofish.c (twofish_setkey): Return error on failed selftest or - invalid keylength. - * cast5.c (cast_setkey): Ditto. - * blowfish.c (bf_setkey): Return error on failed selftest. - -Tue Jan 12 11:17:18 CET 1999 Werner Koch - - * random.c (random_is_faked): New. - - * tiger.c: Only compile if we have the u64 type - -Sat Jan 9 16:02:23 CET 1999 Werner Koch - - * rndunix.c (gather_random): check for setuid. - - * Makefile.am: Add a way to staically link random modules - -Thu Jan 7 18:00:58 CET 1999 Werner Koch - - * md.c (md_stop_debug): Do a flush first. - (md_open): size of buffer now depends on the secure parameter - -Sun Jan 3 15:28:44 CET 1999 Werner Koch - - * rndunix.c (start_gatherer): Fixed stupid ==/= bug - -1998-12-31 Geoff Keating - - * des.c (is_weak_key): Rewrite loop end condition. - -Tue Dec 29 14:41:47 CET 1998 Werner Koch - - * random.c: add unistd.h for getpid(). - (RAND_MAX): Fallback value for Sun. - -Wed Dec 23 17:12:24 CET 1998 Werner Koch - - * md.c (md_copy): Reset debug. - -Mon Dec 14 21:18:49 CET 1998 Werner Koch - - * random.c (read_random_source): Changed the interface to the - random gathering function. - (gather_faked): Use new interface. - * dynload.c (dynload_getfnc_fast_random_poll): Ditto. - (dynload_getfnc_gather_random): Ditto. - * rndlinux.c (gather_random): Ditto. - * rndunix.c (gather_random): Ditto. - -Sat Dec 12 18:40:32 CET 1998 Werner Koch - - * dynload.c (SYMBOL_VERSION): New to cope with system which needs - underscores. - - * rndunix.c: Rewrote large parts - -Thu Dec 10 20:15:36 CET 1998 Werner Koch - - * dynload.c (load_extension): increased needed verbosity level. - - * random.c (fast_random_poll): Fallback to a default fast random - poll function. - (read_random_source): Always use the faked entroy gatherer if no - gather module is available. - * rndlinux.c (fast_poll): Removed. - * rndunix.c (fast_poll): Removed. - - -Wed Nov 25 12:33:41 1998 Werner Koch (wk@isil.d.shuttle.de) - - * rand-*.c: Removed. - * rndlinux.c : New. - * rndunix.c : New. - * random.c : Restructured the interface to the gather modules. - (intialize): Call constructor functions - (read_radnom_source): Moved to here. - * dynload.c (dynload_getfnc_gather_random): New. - (dynload_getfnc_fast_random_poll): New. - (register_internal_cipher_extension): New. - (register_cipher_extension): Support of internal modules. - -Sun Nov 8 17:44:36 1998 Werner Koch (wk@isil.d.shuttle.de) - - * rand-unix.c (read_random_source): Removed the assert. - -Mon Oct 19 18:34:30 1998 me,,, (wk@tobold) - - * pubkey.c: Hack to allow us to give some info about RSA keys back. - -Thu Oct 15 11:47:57 1998 Werner Koch (wk@isil.d.shuttle.de) - - * dynload.c: Support for DLD - -Wed Oct 14 12:13:07 1998 Werner Koch (wk@isil.d.shuttle.de) - - * rand-unix.c: Now uses names from configure for /dev/random. - -1998-10-10 SL Baur - - * Makefile.am: fix sed -O substitutions to catch -O6, etc. - -Tue Oct 6 10:06:32 1998 Werner Koch (wk@isil.d.shuttle.de) - - * rand-unix.c (HAVE_GETTIMEOFDAY): Fixed (was ..GETTIMEOFTIME :-) - * rand-dummy.c (HAVE_GETTIMEOFDAY): Ditto. - -Mon Sep 28 13:23:09 1998 Werner Koch (wk@isil.d.shuttle.de) - - * md.c (md_digest): New. - (md_reset): New. - -Wed Sep 23 12:27:02 1998 Werner Koch (wk@isil.d.shuttle.de) - - * tiger.c (TIGER_CONTEXT): moved "buf", so that it is 64 bit aligned. - -Mon Sep 21 06:22:53 1998 Werner Koch (wk@(none)) - - * des.c: Some patches from Michael. - -Thu Sep 17 19:00:06 1998 Werner Koch (wk@(none)) - - * des.c : New file from Michael Roth - -Mon Sep 14 11:10:55 1998 Werner Koch (wk@(none)) - - * blowfish.c (bf_setkey): Niklas Hernaeus patch to detect weak keys. - -Mon Sep 14 09:19:25 1998 Werner Koch (wk@(none)) - - * dynload.c (RTLD_NOW): Now defined to 1 if it is undefined. - -Mon Sep 7 17:04:33 1998 Werner Koch (wk@(none)) - - * Makefile.am: Fixes to allow a different build directory - -Thu Aug 6 17:25:38 1998 Werner Koch,mobil,,, (wk@tobold) - - * random.c (get_random_byte): Removed and changed all callers - to use get_random_bits() - -Mon Jul 27 10:30:22 1998 Werner Koch (wk@(none)) - - * cipher.c : Support for other blocksizes - (cipher_get_blocksize): New. - * twofish.c: New. - * Makefile.am: Add twofish module. - -Mon Jul 13 21:30:52 1998 Werner Koch (wk@isil.d.shuttle.de) - - * random.c (read_pool): Simple alloc if secure_alloc is not set. - (get_random_bits): Ditto. - -Thu Jul 9 13:01:14 1998 Werner Koch (wk@isil.d.shuttle.de) - - * dynload.c (load_extension): Function now nbails out if - the program is run setuid. - -Wed Jul 8 18:58:23 1998 Werner Koch (wk@isil.d.shuttle.de) - - * rmd160.c (rmd160_hash_buffer): New. - -Thu Jul 2 10:50:30 1998 Werner Koch (wk@isil.d.shuttle.de) - - * cipher.c (cipher_open): algos >=100 use standard CFB - -Thu Jun 25 11:18:25 1998 Werner Koch (wk@isil.d.shuttle.de) - - * Makefile.am: Support for extensions - -Thu Jun 18 12:09:38 1998 Werner Koch (wk@isil.d.shuttle.de) - - * random.c (mix_pool): simpler handling for level 0 - -Mon Jun 15 14:40:48 1998 Werner Koch (wk@isil.d.shuttle.de) - - * tiger.c: Removed from dist, will reappear as dynload module - -Sat Jun 13 14:16:57 1998 Werner Koch (wk@isil.d.shuttle.de) - - * pubkey.c: Major changes to allow extensions. Changed the inteface - of all public key ciphers and added the ability to load extensions - on demand. - - * misc.c: Removed. - -Wed Jun 10 07:52:08 1998 Werner Koch,mobil,,, (wk@tobold) - - * dynload.c: New. - * cipher.c: Major changes to allow extensions. - -Mon Jun 8 22:43:00 1998 Werner Koch (wk@isil.d.shuttle.de) - - * cipher.c: Major internal chnages to support extensions. - * blowfish.c (blowfish_get_info): New and made all internal - functions static, changed heder. - * cast5.c (cast5_get_info): Likewise. - -Mon Jun 8 12:27:52 1998 Werner Koch (wk@isil.d.shuttle.de) - - * tiger.c (transform): Fix for big endian - - * cipher.c (do_cfb_decrypt): Big endian fix. - -Fri May 22 07:30:39 1998 Werner Koch (wk@isil.d.shuttle.de) - - * md.c (md_get_oid): Add a new one for TIGER. - -Thu May 21 13:24:52 1998 Werner Koch (wk@isil.d.shuttle.de) - - * cipher.c: Add support for a dummy cipher - -Thu May 14 15:40:36 1998 Werner Koch (wk@isil.d.shuttle.de) - - * rmd160.c (transform): fixed sigbus - I should better - add Christian von Roques's new implemenation of rmd160_write. - -Fri May 8 18:07:44 1998 Werner Koch (wk@isil.d.shuttle.de) - - * rand-internal.h, rand-unix.c, rand-w32.c, rand_dummy.c: New - * random.c: Moved system specific functions to rand-****.c - -Fri May 8 14:01:17 1998 Werner Koch (wk@isil.d.shuttle.de) - - * random.c (fast_random_poll): add call to gethrtime. - -Tue May 5 21:28:55 1998 Werner Koch (wk@isil.d.shuttle.de) - - * elgamal.c (elg_generate): choosing x was not correct, could - yield 6 bytes which are not from the random pool, tsss, tsss.. - -Tue May 5 14:09:06 1998 Werner Koch (wk@isil.d.shuttle.de) - - * primegen.c (generate_elg_prime): Add arg mode, changed all - callers and implemented mode 1. - -Mon Apr 27 14:41:58 1998 Werner Koch (wk@isil.d.shuttle.de) - - * cipher.c (cipher_get_keylen): New. - -Sun Apr 26 14:44:52 1998 Werner Koch (wk@isil.d.shuttle.de) - - * tiger.c, tiger.h: New. - -Wed Apr 8 14:57:11 1998 Werner Koch (wk@isil.d.shuttle.de) - - * misc.c (check_pubkey_algo2): New. - -Tue Apr 7 18:46:49 1998 Werner Koch (wk@isil.d.shuttle.de) - - * cipher.c: New - * misc.c (check_cipher_algo): Moved to cipher.c - * cast5.c: Moved many functions to cipher.c - * blowfish.c: Likewise. - -Sat Apr 4 19:52:08 1998 Werner Koch (wk@isil.d.shuttle.de) - - * cast5.c: Implemented and tested. - -Wed Apr 1 16:38:27 1998 Werner Koch (wk@isil.d.shuttle.de) - - * elgamal.c (elg_generate): Faster generation of x in some cases. - -Thu Mar 19 13:54:48 1998 Werner Koch (wk@isil.d.shuttle.de) - - * blowfish.c (blowfish_decode_cfb): changed XOR operation - (blowfish_encode_cfb): Ditto. - -Thu Mar 12 14:04:05 1998 Werner Koch (wk@isil.d.shuttle.de) - - * sha1.c (transform): Rewrote - - * blowfish.c (encrypt): Unrolled for rounds == 16 - (decrypt): Ditto. - -Tue Mar 10 16:32:08 1998 Werner Koch (wk@isil.d.shuttle.de) - - * rmd160.c (transform): Unrolled the loop. - -Tue Mar 10 13:05:14 1998 Werner Koch (wk@isil.d.shuttle.de) - - * random.c (read_pool): Add pool_balance stuff. - (get_random_bits): New. - - * elgamal.c (elg_generate): Now uses get_random_bits to generate x. - - -Tue Mar 10 11:33:51 1998 Werner Koch (wk@isil.d.shuttle.de) - - * md.c (md_digest_length): New. - -Tue Mar 10 11:27:41 1998 Werner Koch (wk@isil.d.shuttle.de) - - * dsa.c (dsa_verify): Works. - -Mon Mar 9 12:59:08 1998 Werner Koch (wk@isil.d.shuttle.de) - - * dsa.c, dsa.h: Removed some unused code. - -Wed Mar 4 10:39:22 1998 Werner Koch (wk@isil.d.shuttle.de) - - * md.c (md_open): Add call to fast_random_poll. - blowfish.c (blowfish_setkey): Ditto. - -Tue Mar 3 13:32:54 1998 Werner Koch (wk@isil.d.shuttle.de) - - * rmd160.c (rmd160_mixblock): New. - * random.c: Restructured to start with a new RNG implementation. - * random.h: New. - -Mon Mar 2 19:21:46 1998 Werner Koch (wk@isil.d.shuttle.de) - - * gost.c, gost.h: Removed because they did only contain trash. - -Sun Mar 1 16:42:29 1998 Werner Koch (wk@isil.d.shuttle.de) - - * random.c (fill_buffer): removed error message if n == -1. - -Fri Feb 27 16:39:34 1998 Werner Koch (wk@isil.d.shuttle.de) - - * md.c (md_enable): No init if called twice. - -Thu Feb 26 07:57:02 1998 Werner Koch (wk@isil.d.shuttle.de) - - * primegen.c (generate_elg_prime): Changed the progress printing. - (gen_prime): Ditto. - -Tue Feb 24 12:28:42 1998 Werner Koch (wk@isil.d.shuttle.de) - - * md5.c, md.5 : Replaced by a modified version of md5.c from - GNU textutils 1.22. - -Wed Feb 18 14:08:30 1998 Werner Koch (wk@isil.d.shuttle.de) - - * md.c, md.h : New debugging support - -Mon Feb 16 10:08:47 1998 Werner Koch (wk@isil.d.shuttle.de) - - * misc.c (cipher_algo_to_string): New - (pubkey_algo_to_string): New. - (digest_algo_to_string): New. - - - Copyright 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 - 2007, 2008, 2009, 2010 Free Software Foundation, Inc. - - This file is free software; as a special exception the author gives - unlimited permission to copy and/or distribute it, with or without - modifications, as long as this notice is preserved. - - This file is distributed in the hope that it will be useful, but - WITHOUT ANY WARRANTY, to the extent permitted by law; without even the - implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. diff --git a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/arcfour.c b/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/arcfour.c deleted file mode 100644 index 9d82360cb..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/arcfour.c +++ /dev/null @@ -1,143 +0,0 @@ -/* This file was automatically imported with - import_gcry.py. Please don't modify it */ -#include -GRUB_MOD_LICENSE ("GPLv3+"); -/* arcfour.c - The arcfour stream cipher - * Copyright (C) 2000, 2001, 2002, 2003 Free Software Foundation, Inc. - * - * This file is part of Libgcrypt. - * - * Libgcrypt is free software; you can redistribute it and/or modify - * it under the terms of the GNU Lesser general Public License as - * published by the Free Software Foundation; either version 2.1 of - * the License, or (at your option) any later version. - * - * Libgcrypt is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA - * - * For a description of the algorithm, see: - * Bruce Schneier: Applied Cryptography. John Wiley & Sons, 1996. - * ISBN 0-471-11709-9. Pages 397 ff. - */ - - -#include "types.h" -#include "g10lib.h" -#include "cipher.h" - - -typedef struct { - int idx_i, idx_j; - byte sbox[256]; -} ARCFOUR_context; - -static void -do_encrypt_stream( ARCFOUR_context *ctx, - byte *outbuf, const byte *inbuf, unsigned int length ) -{ - register int i = ctx->idx_i; - register int j = ctx->idx_j; - register byte *sbox = ctx->sbox; - register int t; - - while ( length-- ) - { - i++; - i = i & 255; /* The and-op seems to be faster than the mod-op. */ - j += sbox[i]; - j &= 255; - t = sbox[i]; sbox[i] = sbox[j]; sbox[j] = t; - *outbuf++ = *inbuf++ ^ sbox[(sbox[i] + sbox[j]) & 255]; - } - - ctx->idx_i = i; - ctx->idx_j = j; -} - -static void -encrypt_stream (void *context, - byte *outbuf, const byte *inbuf, unsigned int length) -{ - ARCFOUR_context *ctx = (ARCFOUR_context *) context; - do_encrypt_stream (ctx, outbuf, inbuf, length ); - _gcry_burn_stack (64); -} - - -static gcry_err_code_t -do_arcfour_setkey (void *context, const byte *key, unsigned int keylen) -{ - static int initialized; - static const char* selftest_failed; - int i, j; - byte karr[256]; - ARCFOUR_context *ctx = (ARCFOUR_context *) context; - - if (!initialized ) - { - initialized = 1; - selftest_failed = selftest(); - if( selftest_failed ) - log_error ("ARCFOUR selftest failed (%s)\n", selftest_failed ); - } - if( selftest_failed ) - return GPG_ERR_SELFTEST_FAILED; - - if( keylen < 40/8 ) /* we want at least 40 bits */ - return GPG_ERR_INV_KEYLEN; - - ctx->idx_i = ctx->idx_j = 0; - for (i=0; i < 256; i++ ) - ctx->sbox[i] = i; - for (i=0; i < 256; i++ ) - karr[i] = key[i%keylen]; - for (i=j=0; i < 256; i++ ) - { - int t; - j = (j + ctx->sbox[i] + karr[i]) % 256; - t = ctx->sbox[i]; - ctx->sbox[i] = ctx->sbox[j]; - ctx->sbox[j] = t; - } - memset( karr, 0, 256 ); - - return GPG_ERR_NO_ERROR; -} - -static gcry_err_code_t -arcfour_setkey ( void *context, const byte *key, unsigned int keylen ) -{ - ARCFOUR_context *ctx = (ARCFOUR_context *) context; - gcry_err_code_t rc = do_arcfour_setkey (ctx, key, keylen ); - _gcry_burn_stack (300); - return rc; -} - - - - -gcry_cipher_spec_t _gcry_cipher_spec_arcfour = - { - "ARCFOUR", NULL, NULL, 1, 128, sizeof (ARCFOUR_context), - arcfour_setkey, NULL, NULL, encrypt_stream, encrypt_stream, -#ifdef GRUB_UTIL - .modname = "gcry_arcfour", -#endif - }; - - -GRUB_MOD_INIT(gcry_arcfour) -{ - grub_cipher_register (&_gcry_cipher_spec_arcfour); -} - -GRUB_MOD_FINI(gcry_arcfour) -{ - grub_cipher_unregister (&_gcry_cipher_spec_arcfour); -} diff --git a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/bithelp.h b/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/bithelp.h deleted file mode 100644 index e957b4eac..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/bithelp.h +++ /dev/null @@ -1,57 +0,0 @@ -/* This file was automatically imported with - import_gcry.py. Please don't modify it */ -#include -/* bithelp.h - Some bit manipulation helpers - * Copyright (C) 1999, 2002 Free Software Foundation, Inc. - * - * This file is part of Libgcrypt. - * - * Libgcrypt is free software; you can redistribute it and/or modify - * it under the terms of the GNU Lesser general Public License as - * published by the Free Software Foundation; either version 2.1 of - * the License, or (at your option) any later version. - * - * Libgcrypt is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA - */ -#ifndef G10_BITHELP_H -#define G10_BITHELP_H - - -/**************** - * Rotate the 32 bit unsigned integer X by N bits left/right - */ -#if defined(__GNUC__) && defined(__i386__) -static inline u32 -rol( u32 x, int n) -{ - __asm__("roll %%cl,%0" - :"=r" (x) - :"0" (x),"c" (n)); - return x; -} -#else -#define rol(x,n) ( ((x) << (n)) | ((x) >> (32-(n))) ) -#endif - -#if defined(__GNUC__) && defined(__i386__) -static inline u32 -ror(u32 x, int n) -{ - __asm__("rorl %%cl,%0" - :"=r" (x) - :"0" (x),"c" (n)); - return x; -} -#else -#define ror(x,n) ( ((x) >> (n)) | ((x) << (32-(n))) ) -#endif - - -#endif /*G10_BITHELP_H*/ diff --git a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/blowfish.c b/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/blowfish.c deleted file mode 100644 index 612bfce45..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/blowfish.c +++ /dev/null @@ -1,592 +0,0 @@ -/* This file was automatically imported with - import_gcry.py. Please don't modify it */ -#include -GRUB_MOD_LICENSE ("GPLv3+"); -/* blowfish.c - Blowfish encryption - * Copyright (C) 1998, 2001, 2002, 2003 Free Software Foundation, Inc. - * - * This file is part of Libgcrypt. - * - * Libgcrypt is free software; you can redistribute it and/or modify - * it under the terms of the GNU Lesser general Public License as - * published by the Free Software Foundation; either version 2.1 of - * the License, or (at your option) any later version. - * - * Libgcrypt is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA - * - * For a description of the algorithm, see: - * Bruce Schneier: Applied Cryptography. John Wiley & Sons, 1996. - * ISBN 0-471-11709-9. Pages 336 ff. - */ - -/* Test values: - * key "abcdefghijklmnopqrstuvwxyz"; - * plain "BLOWFISH" - * cipher 32 4E D0 FE F4 13 A2 03 - * - */ - -#include "types.h" -#include "g10lib.h" -#include "cipher.h" - -#define BLOWFISH_BLOCKSIZE 8 -#define BLOWFISH_ROUNDS 16 - -typedef struct { - u32 s0[256]; - u32 s1[256]; - u32 s2[256]; - u32 s3[256]; - u32 p[BLOWFISH_ROUNDS+2]; -} BLOWFISH_context; - -static gcry_err_code_t bf_setkey (void *c, const byte *key, unsigned keylen); -static void encrypt_block (void *bc, byte *outbuf, const byte *inbuf); -static void decrypt_block (void *bc, byte *outbuf, const byte *inbuf); - - -/* precomputed S boxes */ -static const u32 ks0[256] = { - 0xD1310BA6,0x98DFB5AC,0x2FFD72DB,0xD01ADFB7,0xB8E1AFED,0x6A267E96, - 0xBA7C9045,0xF12C7F99,0x24A19947,0xB3916CF7,0x0801F2E2,0x858EFC16, - 0x636920D8,0x71574E69,0xA458FEA3,0xF4933D7E,0x0D95748F,0x728EB658, - 0x718BCD58,0x82154AEE,0x7B54A41D,0xC25A59B5,0x9C30D539,0x2AF26013, - 0xC5D1B023,0x286085F0,0xCA417918,0xB8DB38EF,0x8E79DCB0,0x603A180E, - 0x6C9E0E8B,0xB01E8A3E,0xD71577C1,0xBD314B27,0x78AF2FDA,0x55605C60, - 0xE65525F3,0xAA55AB94,0x57489862,0x63E81440,0x55CA396A,0x2AAB10B6, - 0xB4CC5C34,0x1141E8CE,0xA15486AF,0x7C72E993,0xB3EE1411,0x636FBC2A, - 0x2BA9C55D,0x741831F6,0xCE5C3E16,0x9B87931E,0xAFD6BA33,0x6C24CF5C, - 0x7A325381,0x28958677,0x3B8F4898,0x6B4BB9AF,0xC4BFE81B,0x66282193, - 0x61D809CC,0xFB21A991,0x487CAC60,0x5DEC8032,0xEF845D5D,0xE98575B1, - 0xDC262302,0xEB651B88,0x23893E81,0xD396ACC5,0x0F6D6FF3,0x83F44239, - 0x2E0B4482,0xA4842004,0x69C8F04A,0x9E1F9B5E,0x21C66842,0xF6E96C9A, - 0x670C9C61,0xABD388F0,0x6A51A0D2,0xD8542F68,0x960FA728,0xAB5133A3, - 0x6EEF0B6C,0x137A3BE4,0xBA3BF050,0x7EFB2A98,0xA1F1651D,0x39AF0176, - 0x66CA593E,0x82430E88,0x8CEE8619,0x456F9FB4,0x7D84A5C3,0x3B8B5EBE, - 0xE06F75D8,0x85C12073,0x401A449F,0x56C16AA6,0x4ED3AA62,0x363F7706, - 0x1BFEDF72,0x429B023D,0x37D0D724,0xD00A1248,0xDB0FEAD3,0x49F1C09B, - 0x075372C9,0x80991B7B,0x25D479D8,0xF6E8DEF7,0xE3FE501A,0xB6794C3B, - 0x976CE0BD,0x04C006BA,0xC1A94FB6,0x409F60C4,0x5E5C9EC2,0x196A2463, - 0x68FB6FAF,0x3E6C53B5,0x1339B2EB,0x3B52EC6F,0x6DFC511F,0x9B30952C, - 0xCC814544,0xAF5EBD09,0xBEE3D004,0xDE334AFD,0x660F2807,0x192E4BB3, - 0xC0CBA857,0x45C8740F,0xD20B5F39,0xB9D3FBDB,0x5579C0BD,0x1A60320A, - 0xD6A100C6,0x402C7279,0x679F25FE,0xFB1FA3CC,0x8EA5E9F8,0xDB3222F8, - 0x3C7516DF,0xFD616B15,0x2F501EC8,0xAD0552AB,0x323DB5FA,0xFD238760, - 0x53317B48,0x3E00DF82,0x9E5C57BB,0xCA6F8CA0,0x1A87562E,0xDF1769DB, - 0xD542A8F6,0x287EFFC3,0xAC6732C6,0x8C4F5573,0x695B27B0,0xBBCA58C8, - 0xE1FFA35D,0xB8F011A0,0x10FA3D98,0xFD2183B8,0x4AFCB56C,0x2DD1D35B, - 0x9A53E479,0xB6F84565,0xD28E49BC,0x4BFB9790,0xE1DDF2DA,0xA4CB7E33, - 0x62FB1341,0xCEE4C6E8,0xEF20CADA,0x36774C01,0xD07E9EFE,0x2BF11FB4, - 0x95DBDA4D,0xAE909198,0xEAAD8E71,0x6B93D5A0,0xD08ED1D0,0xAFC725E0, - 0x8E3C5B2F,0x8E7594B7,0x8FF6E2FB,0xF2122B64,0x8888B812,0x900DF01C, - 0x4FAD5EA0,0x688FC31C,0xD1CFF191,0xB3A8C1AD,0x2F2F2218,0xBE0E1777, - 0xEA752DFE,0x8B021FA1,0xE5A0CC0F,0xB56F74E8,0x18ACF3D6,0xCE89E299, - 0xB4A84FE0,0xFD13E0B7,0x7CC43B81,0xD2ADA8D9,0x165FA266,0x80957705, - 0x93CC7314,0x211A1477,0xE6AD2065,0x77B5FA86,0xC75442F5,0xFB9D35CF, - 0xEBCDAF0C,0x7B3E89A0,0xD6411BD3,0xAE1E7E49,0x00250E2D,0x2071B35E, - 0x226800BB,0x57B8E0AF,0x2464369B,0xF009B91E,0x5563911D,0x59DFA6AA, - 0x78C14389,0xD95A537F,0x207D5BA2,0x02E5B9C5,0x83260376,0x6295CFA9, - 0x11C81968,0x4E734A41,0xB3472DCA,0x7B14A94A,0x1B510052,0x9A532915, - 0xD60F573F,0xBC9BC6E4,0x2B60A476,0x81E67400,0x08BA6FB5,0x571BE91F, - 0xF296EC6B,0x2A0DD915,0xB6636521,0xE7B9F9B6,0xFF34052E,0xC5855664, - 0x53B02D5D,0xA99F8FA1,0x08BA4799,0x6E85076A }; - -static const u32 ks1[256] = { - 0x4B7A70E9,0xB5B32944,0xDB75092E,0xC4192623,0xAD6EA6B0,0x49A7DF7D, - 0x9CEE60B8,0x8FEDB266,0xECAA8C71,0x699A17FF,0x5664526C,0xC2B19EE1, - 0x193602A5,0x75094C29,0xA0591340,0xE4183A3E,0x3F54989A,0x5B429D65, - 0x6B8FE4D6,0x99F73FD6,0xA1D29C07,0xEFE830F5,0x4D2D38E6,0xF0255DC1, - 0x4CDD2086,0x8470EB26,0x6382E9C6,0x021ECC5E,0x09686B3F,0x3EBAEFC9, - 0x3C971814,0x6B6A70A1,0x687F3584,0x52A0E286,0xB79C5305,0xAA500737, - 0x3E07841C,0x7FDEAE5C,0x8E7D44EC,0x5716F2B8,0xB03ADA37,0xF0500C0D, - 0xF01C1F04,0x0200B3FF,0xAE0CF51A,0x3CB574B2,0x25837A58,0xDC0921BD, - 0xD19113F9,0x7CA92FF6,0x94324773,0x22F54701,0x3AE5E581,0x37C2DADC, - 0xC8B57634,0x9AF3DDA7,0xA9446146,0x0FD0030E,0xECC8C73E,0xA4751E41, - 0xE238CD99,0x3BEA0E2F,0x3280BBA1,0x183EB331,0x4E548B38,0x4F6DB908, - 0x6F420D03,0xF60A04BF,0x2CB81290,0x24977C79,0x5679B072,0xBCAF89AF, - 0xDE9A771F,0xD9930810,0xB38BAE12,0xDCCF3F2E,0x5512721F,0x2E6B7124, - 0x501ADDE6,0x9F84CD87,0x7A584718,0x7408DA17,0xBC9F9ABC,0xE94B7D8C, - 0xEC7AEC3A,0xDB851DFA,0x63094366,0xC464C3D2,0xEF1C1847,0x3215D908, - 0xDD433B37,0x24C2BA16,0x12A14D43,0x2A65C451,0x50940002,0x133AE4DD, - 0x71DFF89E,0x10314E55,0x81AC77D6,0x5F11199B,0x043556F1,0xD7A3C76B, - 0x3C11183B,0x5924A509,0xF28FE6ED,0x97F1FBFA,0x9EBABF2C,0x1E153C6E, - 0x86E34570,0xEAE96FB1,0x860E5E0A,0x5A3E2AB3,0x771FE71C,0x4E3D06FA, - 0x2965DCB9,0x99E71D0F,0x803E89D6,0x5266C825,0x2E4CC978,0x9C10B36A, - 0xC6150EBA,0x94E2EA78,0xA5FC3C53,0x1E0A2DF4,0xF2F74EA7,0x361D2B3D, - 0x1939260F,0x19C27960,0x5223A708,0xF71312B6,0xEBADFE6E,0xEAC31F66, - 0xE3BC4595,0xA67BC883,0xB17F37D1,0x018CFF28,0xC332DDEF,0xBE6C5AA5, - 0x65582185,0x68AB9802,0xEECEA50F,0xDB2F953B,0x2AEF7DAD,0x5B6E2F84, - 0x1521B628,0x29076170,0xECDD4775,0x619F1510,0x13CCA830,0xEB61BD96, - 0x0334FE1E,0xAA0363CF,0xB5735C90,0x4C70A239,0xD59E9E0B,0xCBAADE14, - 0xEECC86BC,0x60622CA7,0x9CAB5CAB,0xB2F3846E,0x648B1EAF,0x19BDF0CA, - 0xA02369B9,0x655ABB50,0x40685A32,0x3C2AB4B3,0x319EE9D5,0xC021B8F7, - 0x9B540B19,0x875FA099,0x95F7997E,0x623D7DA8,0xF837889A,0x97E32D77, - 0x11ED935F,0x16681281,0x0E358829,0xC7E61FD6,0x96DEDFA1,0x7858BA99, - 0x57F584A5,0x1B227263,0x9B83C3FF,0x1AC24696,0xCDB30AEB,0x532E3054, - 0x8FD948E4,0x6DBC3128,0x58EBF2EF,0x34C6FFEA,0xFE28ED61,0xEE7C3C73, - 0x5D4A14D9,0xE864B7E3,0x42105D14,0x203E13E0,0x45EEE2B6,0xA3AAABEA, - 0xDB6C4F15,0xFACB4FD0,0xC742F442,0xEF6ABBB5,0x654F3B1D,0x41CD2105, - 0xD81E799E,0x86854DC7,0xE44B476A,0x3D816250,0xCF62A1F2,0x5B8D2646, - 0xFC8883A0,0xC1C7B6A3,0x7F1524C3,0x69CB7492,0x47848A0B,0x5692B285, - 0x095BBF00,0xAD19489D,0x1462B174,0x23820E00,0x58428D2A,0x0C55F5EA, - 0x1DADF43E,0x233F7061,0x3372F092,0x8D937E41,0xD65FECF1,0x6C223BDB, - 0x7CDE3759,0xCBEE7460,0x4085F2A7,0xCE77326E,0xA6078084,0x19F8509E, - 0xE8EFD855,0x61D99735,0xA969A7AA,0xC50C06C2,0x5A04ABFC,0x800BCADC, - 0x9E447A2E,0xC3453484,0xFDD56705,0x0E1E9EC9,0xDB73DBD3,0x105588CD, - 0x675FDA79,0xE3674340,0xC5C43465,0x713E38D8,0x3D28F89E,0xF16DFF20, - 0x153E21E7,0x8FB03D4A,0xE6E39F2B,0xDB83ADF7 }; - -static const u32 ks2[256] = { - 0xE93D5A68,0x948140F7,0xF64C261C,0x94692934,0x411520F7,0x7602D4F7, - 0xBCF46B2E,0xD4A20068,0xD4082471,0x3320F46A,0x43B7D4B7,0x500061AF, - 0x1E39F62E,0x97244546,0x14214F74,0xBF8B8840,0x4D95FC1D,0x96B591AF, - 0x70F4DDD3,0x66A02F45,0xBFBC09EC,0x03BD9785,0x7FAC6DD0,0x31CB8504, - 0x96EB27B3,0x55FD3941,0xDA2547E6,0xABCA0A9A,0x28507825,0x530429F4, - 0x0A2C86DA,0xE9B66DFB,0x68DC1462,0xD7486900,0x680EC0A4,0x27A18DEE, - 0x4F3FFEA2,0xE887AD8C,0xB58CE006,0x7AF4D6B6,0xAACE1E7C,0xD3375FEC, - 0xCE78A399,0x406B2A42,0x20FE9E35,0xD9F385B9,0xEE39D7AB,0x3B124E8B, - 0x1DC9FAF7,0x4B6D1856,0x26A36631,0xEAE397B2,0x3A6EFA74,0xDD5B4332, - 0x6841E7F7,0xCA7820FB,0xFB0AF54E,0xD8FEB397,0x454056AC,0xBA489527, - 0x55533A3A,0x20838D87,0xFE6BA9B7,0xD096954B,0x55A867BC,0xA1159A58, - 0xCCA92963,0x99E1DB33,0xA62A4A56,0x3F3125F9,0x5EF47E1C,0x9029317C, - 0xFDF8E802,0x04272F70,0x80BB155C,0x05282CE3,0x95C11548,0xE4C66D22, - 0x48C1133F,0xC70F86DC,0x07F9C9EE,0x41041F0F,0x404779A4,0x5D886E17, - 0x325F51EB,0xD59BC0D1,0xF2BCC18F,0x41113564,0x257B7834,0x602A9C60, - 0xDFF8E8A3,0x1F636C1B,0x0E12B4C2,0x02E1329E,0xAF664FD1,0xCAD18115, - 0x6B2395E0,0x333E92E1,0x3B240B62,0xEEBEB922,0x85B2A20E,0xE6BA0D99, - 0xDE720C8C,0x2DA2F728,0xD0127845,0x95B794FD,0x647D0862,0xE7CCF5F0, - 0x5449A36F,0x877D48FA,0xC39DFD27,0xF33E8D1E,0x0A476341,0x992EFF74, - 0x3A6F6EAB,0xF4F8FD37,0xA812DC60,0xA1EBDDF8,0x991BE14C,0xDB6E6B0D, - 0xC67B5510,0x6D672C37,0x2765D43B,0xDCD0E804,0xF1290DC7,0xCC00FFA3, - 0xB5390F92,0x690FED0B,0x667B9FFB,0xCEDB7D9C,0xA091CF0B,0xD9155EA3, - 0xBB132F88,0x515BAD24,0x7B9479BF,0x763BD6EB,0x37392EB3,0xCC115979, - 0x8026E297,0xF42E312D,0x6842ADA7,0xC66A2B3B,0x12754CCC,0x782EF11C, - 0x6A124237,0xB79251E7,0x06A1BBE6,0x4BFB6350,0x1A6B1018,0x11CAEDFA, - 0x3D25BDD8,0xE2E1C3C9,0x44421659,0x0A121386,0xD90CEC6E,0xD5ABEA2A, - 0x64AF674E,0xDA86A85F,0xBEBFE988,0x64E4C3FE,0x9DBC8057,0xF0F7C086, - 0x60787BF8,0x6003604D,0xD1FD8346,0xF6381FB0,0x7745AE04,0xD736FCCC, - 0x83426B33,0xF01EAB71,0xB0804187,0x3C005E5F,0x77A057BE,0xBDE8AE24, - 0x55464299,0xBF582E61,0x4E58F48F,0xF2DDFDA2,0xF474EF38,0x8789BDC2, - 0x5366F9C3,0xC8B38E74,0xB475F255,0x46FCD9B9,0x7AEB2661,0x8B1DDF84, - 0x846A0E79,0x915F95E2,0x466E598E,0x20B45770,0x8CD55591,0xC902DE4C, - 0xB90BACE1,0xBB8205D0,0x11A86248,0x7574A99E,0xB77F19B6,0xE0A9DC09, - 0x662D09A1,0xC4324633,0xE85A1F02,0x09F0BE8C,0x4A99A025,0x1D6EFE10, - 0x1AB93D1D,0x0BA5A4DF,0xA186F20F,0x2868F169,0xDCB7DA83,0x573906FE, - 0xA1E2CE9B,0x4FCD7F52,0x50115E01,0xA70683FA,0xA002B5C4,0x0DE6D027, - 0x9AF88C27,0x773F8641,0xC3604C06,0x61A806B5,0xF0177A28,0xC0F586E0, - 0x006058AA,0x30DC7D62,0x11E69ED7,0x2338EA63,0x53C2DD94,0xC2C21634, - 0xBBCBEE56,0x90BCB6DE,0xEBFC7DA1,0xCE591D76,0x6F05E409,0x4B7C0188, - 0x39720A3D,0x7C927C24,0x86E3725F,0x724D9DB9,0x1AC15BB4,0xD39EB8FC, - 0xED545578,0x08FCA5B5,0xD83D7CD3,0x4DAD0FC4,0x1E50EF5E,0xB161E6F8, - 0xA28514D9,0x6C51133C,0x6FD5C7E7,0x56E14EC4,0x362ABFCE,0xDDC6C837, - 0xD79A3234,0x92638212,0x670EFA8E,0x406000E0 }; - -static const u32 ks3[256] = { - 0x3A39CE37,0xD3FAF5CF,0xABC27737,0x5AC52D1B,0x5CB0679E,0x4FA33742, - 0xD3822740,0x99BC9BBE,0xD5118E9D,0xBF0F7315,0xD62D1C7E,0xC700C47B, - 0xB78C1B6B,0x21A19045,0xB26EB1BE,0x6A366EB4,0x5748AB2F,0xBC946E79, - 0xC6A376D2,0x6549C2C8,0x530FF8EE,0x468DDE7D,0xD5730A1D,0x4CD04DC6, - 0x2939BBDB,0xA9BA4650,0xAC9526E8,0xBE5EE304,0xA1FAD5F0,0x6A2D519A, - 0x63EF8CE2,0x9A86EE22,0xC089C2B8,0x43242EF6,0xA51E03AA,0x9CF2D0A4, - 0x83C061BA,0x9BE96A4D,0x8FE51550,0xBA645BD6,0x2826A2F9,0xA73A3AE1, - 0x4BA99586,0xEF5562E9,0xC72FEFD3,0xF752F7DA,0x3F046F69,0x77FA0A59, - 0x80E4A915,0x87B08601,0x9B09E6AD,0x3B3EE593,0xE990FD5A,0x9E34D797, - 0x2CF0B7D9,0x022B8B51,0x96D5AC3A,0x017DA67D,0xD1CF3ED6,0x7C7D2D28, - 0x1F9F25CF,0xADF2B89B,0x5AD6B472,0x5A88F54C,0xE029AC71,0xE019A5E6, - 0x47B0ACFD,0xED93FA9B,0xE8D3C48D,0x283B57CC,0xF8D56629,0x79132E28, - 0x785F0191,0xED756055,0xF7960E44,0xE3D35E8C,0x15056DD4,0x88F46DBA, - 0x03A16125,0x0564F0BD,0xC3EB9E15,0x3C9057A2,0x97271AEC,0xA93A072A, - 0x1B3F6D9B,0x1E6321F5,0xF59C66FB,0x26DCF319,0x7533D928,0xB155FDF5, - 0x03563482,0x8ABA3CBB,0x28517711,0xC20AD9F8,0xABCC5167,0xCCAD925F, - 0x4DE81751,0x3830DC8E,0x379D5862,0x9320F991,0xEA7A90C2,0xFB3E7BCE, - 0x5121CE64,0x774FBE32,0xA8B6E37E,0xC3293D46,0x48DE5369,0x6413E680, - 0xA2AE0810,0xDD6DB224,0x69852DFD,0x09072166,0xB39A460A,0x6445C0DD, - 0x586CDECF,0x1C20C8AE,0x5BBEF7DD,0x1B588D40,0xCCD2017F,0x6BB4E3BB, - 0xDDA26A7E,0x3A59FF45,0x3E350A44,0xBCB4CDD5,0x72EACEA8,0xFA6484BB, - 0x8D6612AE,0xBF3C6F47,0xD29BE463,0x542F5D9E,0xAEC2771B,0xF64E6370, - 0x740E0D8D,0xE75B1357,0xF8721671,0xAF537D5D,0x4040CB08,0x4EB4E2CC, - 0x34D2466A,0x0115AF84,0xE1B00428,0x95983A1D,0x06B89FB4,0xCE6EA048, - 0x6F3F3B82,0x3520AB82,0x011A1D4B,0x277227F8,0x611560B1,0xE7933FDC, - 0xBB3A792B,0x344525BD,0xA08839E1,0x51CE794B,0x2F32C9B7,0xA01FBAC9, - 0xE01CC87E,0xBCC7D1F6,0xCF0111C3,0xA1E8AAC7,0x1A908749,0xD44FBD9A, - 0xD0DADECB,0xD50ADA38,0x0339C32A,0xC6913667,0x8DF9317C,0xE0B12B4F, - 0xF79E59B7,0x43F5BB3A,0xF2D519FF,0x27D9459C,0xBF97222C,0x15E6FC2A, - 0x0F91FC71,0x9B941525,0xFAE59361,0xCEB69CEB,0xC2A86459,0x12BAA8D1, - 0xB6C1075E,0xE3056A0C,0x10D25065,0xCB03A442,0xE0EC6E0E,0x1698DB3B, - 0x4C98A0BE,0x3278E964,0x9F1F9532,0xE0D392DF,0xD3A0342B,0x8971F21E, - 0x1B0A7441,0x4BA3348C,0xC5BE7120,0xC37632D8,0xDF359F8D,0x9B992F2E, - 0xE60B6F47,0x0FE3F11D,0xE54CDA54,0x1EDAD891,0xCE6279CF,0xCD3E7E6F, - 0x1618B166,0xFD2C1D05,0x848FD2C5,0xF6FB2299,0xF523F357,0xA6327623, - 0x93A83531,0x56CCCD02,0xACF08162,0x5A75EBB5,0x6E163697,0x88D273CC, - 0xDE966292,0x81B949D0,0x4C50901B,0x71C65614,0xE6C6C7BD,0x327A140A, - 0x45E1D006,0xC3F27B9A,0xC9AA53FD,0x62A80F00,0xBB25BFE2,0x35BDD2F6, - 0x71126905,0xB2040222,0xB6CBCF7C,0xCD769C2B,0x53113EC0,0x1640E3D3, - 0x38ABBD60,0x2547ADF0,0xBA38209C,0xF746CE76,0x77AFA1C5,0x20756060, - 0x85CBFE4E,0x8AE88DD8,0x7AAAF9B0,0x4CF9AA7E,0x1948C25C,0x02FB8A8C, - 0x01C36AE4,0xD6EBE1F9,0x90D4F869,0xA65CDEA0,0x3F09252D,0xC208E69F, - 0xB74E6132,0xCE77E25B,0x578FDFE3,0x3AC372E6 }; - -static const u32 ps[BLOWFISH_ROUNDS+2] = { - 0x243F6A88,0x85A308D3,0x13198A2E,0x03707344,0xA4093822,0x299F31D0, - 0x082EFA98,0xEC4E6C89,0x452821E6,0x38D01377,0xBE5466CF,0x34E90C6C, - 0xC0AC29B7,0xC97C50DD,0x3F84D5B5,0xB5470917,0x9216D5D9,0x8979FB1B }; - - - -#if BLOWFISH_ROUNDS != 16 -static inline u32 -function_F( BLOWFISH_context *bc, u32 x ) -{ - u16 a, b, c, d; - -#ifdef WORDS_BIGENDIAN - a = ((byte*)&x)[0]; - b = ((byte*)&x)[1]; - c = ((byte*)&x)[2]; - d = ((byte*)&x)[3]; -#else - a = ((byte*)&x)[3]; - b = ((byte*)&x)[2]; - c = ((byte*)&x)[1]; - d = ((byte*)&x)[0]; -#endif - - return ((bc->s0[a] + bc->s1[b]) ^ bc->s2[c] ) + bc->s3[d]; -} -#endif - -#ifdef WORDS_BIGENDIAN -#define F(x) ((( s0[((byte*)&x)[0]] + s1[((byte*)&x)[1]]) \ - ^ s2[((byte*)&x)[2]]) + s3[((byte*)&x)[3]] ) -#else -#define F(x) ((( s0[((byte*)&x)[3]] + s1[((byte*)&x)[2]]) \ - ^ s2[((byte*)&x)[1]]) + s3[((byte*)&x)[0]] ) -#endif -#define R(l,r,i) do { l ^= p[i]; r ^= F(l); } while(0) - - -static void -do_encrypt ( BLOWFISH_context *bc, u32 *ret_xl, u32 *ret_xr ) -{ -#if BLOWFISH_ROUNDS == 16 - u32 xl, xr, *s0, *s1, *s2, *s3, *p; - - xl = *ret_xl; - xr = *ret_xr; - p = bc->p; - s0 = bc->s0; - s1 = bc->s1; - s2 = bc->s2; - s3 = bc->s3; - - R( xl, xr, 0); - R( xr, xl, 1); - R( xl, xr, 2); - R( xr, xl, 3); - R( xl, xr, 4); - R( xr, xl, 5); - R( xl, xr, 6); - R( xr, xl, 7); - R( xl, xr, 8); - R( xr, xl, 9); - R( xl, xr, 10); - R( xr, xl, 11); - R( xl, xr, 12); - R( xr, xl, 13); - R( xl, xr, 14); - R( xr, xl, 15); - - xl ^= p[BLOWFISH_ROUNDS]; - xr ^= p[BLOWFISH_ROUNDS+1]; - - *ret_xl = xr; - *ret_xr = xl; - -#else - u32 xl, xr, temp, *p; - int i; - - xl = *ret_xl; - xr = *ret_xr; - p = bc->p; - - for(i=0; i < BLOWFISH_ROUNDS; i++ ) - { - xl ^= p[i]; - xr ^= function_F(bc, xl); - temp = xl; - xl = xr; - xr = temp; - } - temp = xl; - xl = xr; - xr = temp; - - xr ^= p[BLOWFISH_ROUNDS]; - xl ^= p[BLOWFISH_ROUNDS+1]; - - *ret_xl = xl; - *ret_xr = xr; -#endif -} - - -static void -decrypt ( BLOWFISH_context *bc, u32 *ret_xl, u32 *ret_xr ) -{ -#if BLOWFISH_ROUNDS == 16 - u32 xl, xr, *s0, *s1, *s2, *s3, *p; - - xl = *ret_xl; - xr = *ret_xr; - p = bc->p; - s0 = bc->s0; - s1 = bc->s1; - s2 = bc->s2; - s3 = bc->s3; - - R( xl, xr, 17); - R( xr, xl, 16); - R( xl, xr, 15); - R( xr, xl, 14); - R( xl, xr, 13); - R( xr, xl, 12); - R( xl, xr, 11); - R( xr, xl, 10); - R( xl, xr, 9); - R( xr, xl, 8); - R( xl, xr, 7); - R( xr, xl, 6); - R( xl, xr, 5); - R( xr, xl, 4); - R( xl, xr, 3); - R( xr, xl, 2); - - xl ^= p[1]; - xr ^= p[0]; - - *ret_xl = xr; - *ret_xr = xl; - -#else - u32 xl, xr, temp, *p; - int i; - - xl = *ret_xl; - xr = *ret_xr; - p = bc->p; - - for (i=BLOWFISH_ROUNDS+1; i > 1; i-- ) - { - xl ^= p[i]; - xr ^= function_F(bc, xl); - temp = xl; - xl = xr; - xr = temp; - } - - temp = xl; - xl = xr; - xr = temp; - - xr ^= p[1]; - xl ^= p[0]; - - *ret_xl = xl; - *ret_xr = xr; -#endif -} - -#undef F -#undef R - -static void -do_encrypt_block ( BLOWFISH_context *bc, byte *outbuf, const byte *inbuf ) -{ - u32 d1, d2; - - d1 = inbuf[0] << 24 | inbuf[1] << 16 | inbuf[2] << 8 | inbuf[3]; - d2 = inbuf[4] << 24 | inbuf[5] << 16 | inbuf[6] << 8 | inbuf[7]; - do_encrypt( bc, &d1, &d2 ); - outbuf[0] = (d1 >> 24) & 0xff; - outbuf[1] = (d1 >> 16) & 0xff; - outbuf[2] = (d1 >> 8) & 0xff; - outbuf[3] = d1 & 0xff; - outbuf[4] = (d2 >> 24) & 0xff; - outbuf[5] = (d2 >> 16) & 0xff; - outbuf[6] = (d2 >> 8) & 0xff; - outbuf[7] = d2 & 0xff; -} - -static void -encrypt_block (void *context, byte *outbuf, const byte *inbuf) -{ - BLOWFISH_context *bc = (BLOWFISH_context *) context; - do_encrypt_block (bc, outbuf, inbuf); - _gcry_burn_stack (64); -} - - -static void -do_decrypt_block (BLOWFISH_context *bc, byte *outbuf, const byte *inbuf) -{ - u32 d1, d2; - - d1 = inbuf[0] << 24 | inbuf[1] << 16 | inbuf[2] << 8 | inbuf[3]; - d2 = inbuf[4] << 24 | inbuf[5] << 16 | inbuf[6] << 8 | inbuf[7]; - decrypt( bc, &d1, &d2 ); - outbuf[0] = (d1 >> 24) & 0xff; - outbuf[1] = (d1 >> 16) & 0xff; - outbuf[2] = (d1 >> 8) & 0xff; - outbuf[3] = d1 & 0xff; - outbuf[4] = (d2 >> 24) & 0xff; - outbuf[5] = (d2 >> 16) & 0xff; - outbuf[6] = (d2 >> 8) & 0xff; - outbuf[7] = d2 & 0xff; -} - -static void -decrypt_block (void *context, byte *outbuf, const byte *inbuf) -{ - BLOWFISH_context *bc = (BLOWFISH_context *) context; - do_decrypt_block (bc, outbuf, inbuf); - _gcry_burn_stack (64); -} - - - - - -static gcry_err_code_t -do_bf_setkey (BLOWFISH_context *c, const byte *key, unsigned keylen) -{ - int i, j; - u32 data, datal, datar; - static int initialized; - static const char *selftest_failed; - - if( !initialized ) - { - initialized = 1; - selftest_failed = selftest(); - if( selftest_failed ) - log_error ("%s\n", selftest_failed ); - } - if( selftest_failed ) - return GPG_ERR_SELFTEST_FAILED; - - for(i=0; i < BLOWFISH_ROUNDS+2; i++ ) - c->p[i] = ps[i]; - for(i=0; i < 256; i++ ) - { - c->s0[i] = ks0[i]; - c->s1[i] = ks1[i]; - c->s2[i] = ks2[i]; - c->s3[i] = ks3[i]; - } - - for(i=j=0; i < BLOWFISH_ROUNDS+2; i++ ) - { -#ifdef WORDS_BIGENDIAN - ((byte*)&data)[0] = key[j]; - ((byte*)&data)[1] = key[(j+1)%keylen]; - ((byte*)&data)[2] = key[(j+2)%keylen]; - ((byte*)&data)[3] = key[(j+3)%keylen]; -#else - ((byte*)&data)[3] = key[j]; - ((byte*)&data)[2] = key[(j+1)%keylen]; - ((byte*)&data)[1] = key[(j+2)%keylen]; - ((byte*)&data)[0] = key[(j+3)%keylen]; -#endif - c->p[i] ^= data; - j = (j+4) % keylen; - } - - datal = datar = 0; - for(i=0; i < BLOWFISH_ROUNDS+2; i += 2 ) - { - do_encrypt( c, &datal, &datar ); - c->p[i] = datal; - c->p[i+1] = datar; - } - for(i=0; i < 256; i += 2 ) - { - do_encrypt( c, &datal, &datar ); - c->s0[i] = datal; - c->s0[i+1] = datar; - } - for(i=0; i < 256; i += 2 ) - { - do_encrypt( c, &datal, &datar ); - c->s1[i] = datal; - c->s1[i+1] = datar; - } - for(i=0; i < 256; i += 2 ) - { - do_encrypt( c, &datal, &datar ); - c->s2[i] = datal; - c->s2[i+1] = datar; - } - for(i=0; i < 256; i += 2 ) - { - do_encrypt( c, &datal, &datar ); - c->s3[i] = datal; - c->s3[i+1] = datar; - } - - - /* Check for weak key. A weak key is a key in which a value in - the P-array (here c) occurs more than once per table. */ - for(i=0; i < 255; i++ ) - { - for( j=i+1; j < 256; j++) - { - if( (c->s0[i] == c->s0[j]) || (c->s1[i] == c->s1[j]) || - (c->s2[i] == c->s2[j]) || (c->s3[i] == c->s3[j]) ) - return GPG_ERR_WEAK_KEY; - } - } - - return GPG_ERR_NO_ERROR; -} - - -static gcry_err_code_t -bf_setkey (void *context, const byte *key, unsigned keylen) -{ - BLOWFISH_context *c = (BLOWFISH_context *) context; - gcry_err_code_t rc = do_bf_setkey (c, key, keylen); - _gcry_burn_stack (64); - return rc; -} - - -gcry_cipher_spec_t _gcry_cipher_spec_blowfish = - { - "BLOWFISH", NULL, NULL, BLOWFISH_BLOCKSIZE, 128, - sizeof (BLOWFISH_context), - bf_setkey, encrypt_block, decrypt_block - , -#ifdef GRUB_UTIL - .modname = "gcry_blowfish", -#endif - }; - - -GRUB_MOD_INIT(gcry_blowfish) -{ - grub_cipher_register (&_gcry_cipher_spec_blowfish); -} - -GRUB_MOD_FINI(gcry_blowfish) -{ - grub_cipher_unregister (&_gcry_cipher_spec_blowfish); -} diff --git a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/bufhelp.h b/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/bufhelp.h deleted file mode 100644 index 89471e65f..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/bufhelp.h +++ /dev/null @@ -1,435 +0,0 @@ -/* This file was automatically imported with - import_gcry.py. Please don't modify it */ -#include -/* bufhelp.h - Some buffer manipulation helpers - * Copyright (C) 2012 Jussi Kivilinna - * - * This file is part of Libgcrypt. - * - * Libgcrypt is free software; you can redistribute it and/or modify - * it under the terms of the GNU Lesser General Public License as - * published by the Free Software Foundation; either version 2.1 of - * the License, or (at your option) any later version. - * - * Libgcrypt is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this program; if not, see . - */ -#ifndef GCRYPT_BUFHELP_H -#define GCRYPT_BUFHELP_H - - -#include "bithelp.h" - - -#undef BUFHELP_FAST_UNALIGNED_ACCESS -#if defined(HAVE_GCC_ATTRIBUTE_PACKED) && \ - defined(HAVE_GCC_ATTRIBUTE_ALIGNED) && \ - (defined(__i386__) || defined(__x86_64__) || \ - (defined(__arm__) && defined(__ARM_FEATURE_UNALIGNED)) || \ - defined(__aarch64__)) -/* These architectures are able of unaligned memory accesses and can - handle those fast. - */ -# define BUFHELP_FAST_UNALIGNED_ACCESS 1 -#endif - - -#ifdef BUFHELP_FAST_UNALIGNED_ACCESS -/* Define type with one-byte alignment on architectures with fast unaligned - memory accesses. - */ -typedef struct bufhelp_int_s -{ - uintptr_t a; -} __attribute__((packed, aligned(1))) bufhelp_int_t; -#else -/* Define type with default alignment for other architectures (unaligned - accessed handled in per byte loops). - */ -typedef struct bufhelp_int_s -{ - uintptr_t a; -} bufhelp_int_t; -#endif - - -/* Optimized function for small buffer copying */ -static inline void -buf_cpy(void *_dst, const void *_src, size_t len) -{ -#if __GNUC__ >= 4 && (defined(__x86_64__) || defined(__i386__)) - /* For AMD64 and i386, memcpy is faster. */ - memcpy(_dst, _src, len); -#else - byte *dst = _dst; - const byte *src = _src; - bufhelp_int_t *ldst; - const bufhelp_int_t *lsrc; -#ifndef BUFHELP_FAST_UNALIGNED_ACCESS - const unsigned int longmask = sizeof(bufhelp_int_t) - 1; - - /* Skip fast processing if buffers are unaligned. */ - if (((uintptr_t)dst | (uintptr_t)src) & longmask) - goto do_bytes; -#endif - - ldst = (bufhelp_int_t *)(void *)dst; - lsrc = (const bufhelp_int_t *)(const void *)src; - - for (; len >= sizeof(bufhelp_int_t); len -= sizeof(bufhelp_int_t)) - (ldst++)->a = (lsrc++)->a; - - dst = (byte *)ldst; - src = (const byte *)lsrc; - -#ifndef BUFHELP_FAST_UNALIGNED_ACCESS -do_bytes: -#endif - /* Handle tail. */ - for (; len; len--) - *dst++ = *src++; -#endif /*__GNUC__ >= 4 && (__x86_64__ || __i386__)*/ -} - - -/* Optimized function for buffer xoring */ -static inline void -buf_xor(void *_dst, const void *_src1, const void *_src2, size_t len) -{ - byte *dst = _dst; - const byte *src1 = _src1; - const byte *src2 = _src2; - bufhelp_int_t *ldst; - const bufhelp_int_t *lsrc1, *lsrc2; -#ifndef BUFHELP_FAST_UNALIGNED_ACCESS - const unsigned int longmask = sizeof(bufhelp_int_t) - 1; - - /* Skip fast processing if buffers are unaligned. */ - if (((uintptr_t)dst | (uintptr_t)src1 | (uintptr_t)src2) & longmask) - goto do_bytes; -#endif - - ldst = (bufhelp_int_t *)(void *)dst; - lsrc1 = (const bufhelp_int_t *)(const void *)src1; - lsrc2 = (const bufhelp_int_t *)(const void *)src2; - - for (; len >= sizeof(bufhelp_int_t); len -= sizeof(bufhelp_int_t)) - (ldst++)->a = (lsrc1++)->a ^ (lsrc2++)->a; - - dst = (byte *)ldst; - src1 = (const byte *)lsrc1; - src2 = (const byte *)lsrc2; - -#ifndef BUFHELP_FAST_UNALIGNED_ACCESS -do_bytes: -#endif - /* Handle tail. */ - for (; len; len--) - *dst++ = *src1++ ^ *src2++; -} - - -/* Optimized function for in-place buffer xoring. */ -static inline void -buf_xor_1(void *_dst, const void *_src, size_t len) -{ - byte *dst = _dst; - const byte *src = _src; - bufhelp_int_t *ldst; - const bufhelp_int_t *lsrc; -#ifndef BUFHELP_FAST_UNALIGNED_ACCESS - const unsigned int longmask = sizeof(bufhelp_int_t) - 1; - - /* Skip fast processing if buffers are unaligned. */ - if (((uintptr_t)dst | (uintptr_t)src) & longmask) - goto do_bytes; -#endif - - ldst = (bufhelp_int_t *)(void *)dst; - lsrc = (const bufhelp_int_t *)(const void *)src; - - for (; len >= sizeof(bufhelp_int_t); len -= sizeof(bufhelp_int_t)) - (ldst++)->a ^= (lsrc++)->a; - - dst = (byte *)ldst; - src = (const byte *)lsrc; - -#ifndef BUFHELP_FAST_UNALIGNED_ACCESS -do_bytes: -#endif - /* Handle tail. */ - for (; len; len--) - *dst++ ^= *src++; -} - - -/* Optimized function for buffer xoring with two destination buffers. Used - mainly by CFB mode encryption. */ -static inline void -buf_xor_2dst(void *_dst1, void *_dst2, const void *_src, size_t len) -{ - byte *dst1 = _dst1; - byte *dst2 = _dst2; - const byte *src = _src; - bufhelp_int_t *ldst1, *ldst2; - const bufhelp_int_t *lsrc; -#ifndef BUFHELP_FAST_UNALIGNED_ACCESS - const unsigned int longmask = sizeof(bufhelp_int_t) - 1; - - /* Skip fast processing if buffers are unaligned. */ - if (((uintptr_t)src | (uintptr_t)dst1 | (uintptr_t)dst2) & longmask) - goto do_bytes; -#endif - - ldst1 = (bufhelp_int_t *)(void *)dst1; - ldst2 = (bufhelp_int_t *)(void *)dst2; - lsrc = (const bufhelp_int_t *)(const void *)src; - - for (; len >= sizeof(bufhelp_int_t); len -= sizeof(bufhelp_int_t)) - (ldst1++)->a = ((ldst2++)->a ^= (lsrc++)->a); - - dst1 = (byte *)ldst1; - dst2 = (byte *)ldst2; - src = (const byte *)lsrc; - -#ifndef BUFHELP_FAST_UNALIGNED_ACCESS -do_bytes: -#endif - /* Handle tail. */ - for (; len; len--) - *dst1++ = (*dst2++ ^= *src++); -} - - -/* Optimized function for combined buffer xoring and copying. Used by mainly - CBC mode decryption. */ -static inline void -buf_xor_n_copy_2(void *_dst_xor, const void *_src_xor, void *_srcdst_cpy, - const void *_src_cpy, size_t len) -{ - byte *dst_xor = _dst_xor; - byte *srcdst_cpy = _srcdst_cpy; - const byte *src_xor = _src_xor; - const byte *src_cpy = _src_cpy; - byte temp; - bufhelp_int_t *ldst_xor, *lsrcdst_cpy; - const bufhelp_int_t *lsrc_cpy, *lsrc_xor; - uintptr_t ltemp; -#ifndef BUFHELP_FAST_UNALIGNED_ACCESS - const unsigned int longmask = sizeof(bufhelp_int_t) - 1; - - /* Skip fast processing if buffers are unaligned. */ - if (((uintptr_t)src_cpy | (uintptr_t)src_xor | (uintptr_t)dst_xor | - (uintptr_t)srcdst_cpy) & longmask) - goto do_bytes; -#endif - - ldst_xor = (bufhelp_int_t *)(void *)dst_xor; - lsrc_xor = (const bufhelp_int_t *)(void *)src_xor; - lsrcdst_cpy = (bufhelp_int_t *)(void *)srcdst_cpy; - lsrc_cpy = (const bufhelp_int_t *)(const void *)src_cpy; - - for (; len >= sizeof(bufhelp_int_t); len -= sizeof(bufhelp_int_t)) - { - ltemp = (lsrc_cpy++)->a; - (ldst_xor++)->a = (lsrcdst_cpy)->a ^ (lsrc_xor++)->a; - (lsrcdst_cpy++)->a = ltemp; - } - - dst_xor = (byte *)ldst_xor; - src_xor = (const byte *)lsrc_xor; - srcdst_cpy = (byte *)lsrcdst_cpy; - src_cpy = (const byte *)lsrc_cpy; - -#ifndef BUFHELP_FAST_UNALIGNED_ACCESS -do_bytes: -#endif - /* Handle tail. */ - for (; len; len--) - { - temp = *src_cpy++; - *dst_xor++ = *srcdst_cpy ^ *src_xor++; - *srcdst_cpy++ = temp; - } -} - - -/* Optimized function for combined buffer xoring and copying. Used by mainly - CFB mode decryption. */ -static inline void -buf_xor_n_copy(void *_dst_xor, void *_srcdst_cpy, const void *_src, size_t len) -{ - buf_xor_n_copy_2(_dst_xor, _src, _srcdst_cpy, _src, len); -} - - -/* Constant-time compare of two buffers. Returns 1 if buffers are equal, - and 0 if buffers differ. */ -static inline int -buf_eq_const(const void *_a, const void *_b, size_t len) -{ - const byte *a = _a; - const byte *b = _b; - size_t diff, i; - - /* Constant-time compare. */ - for (i = 0, diff = 0; i < len; i++) - diff -= !!(a[i] - b[i]); - - return !diff; -} - - -#ifndef BUFHELP_FAST_UNALIGNED_ACCESS - -/* Functions for loading and storing unaligned u32 values of different - endianness. */ -static inline u32 buf_get_be32(const void *_buf) -{ - const byte *in = _buf; - return ((u32)in[0] << 24) | ((u32)in[1] << 16) | \ - ((u32)in[2] << 8) | (u32)in[3]; -} - -static inline u32 buf_get_le32(const void *_buf) -{ - const byte *in = _buf; - return ((u32)in[3] << 24) | ((u32)in[2] << 16) | \ - ((u32)in[1] << 8) | (u32)in[0]; -} - -static inline void buf_put_be32(void *_buf, u32 val) -{ - byte *out = _buf; - out[0] = val >> 24; - out[1] = val >> 16; - out[2] = val >> 8; - out[3] = val; -} - -static inline void buf_put_le32(void *_buf, u32 val) -{ - byte *out = _buf; - out[3] = val >> 24; - out[2] = val >> 16; - out[1] = val >> 8; - out[0] = val; -} - - -/* Functions for loading and storing unaligned u64 values of different - endianness. */ -static inline u64 buf_get_be64(const void *_buf) -{ - const byte *in = _buf; - return ((u64)in[0] << 56) | ((u64)in[1] << 48) | \ - ((u64)in[2] << 40) | ((u64)in[3] << 32) | \ - ((u64)in[4] << 24) | ((u64)in[5] << 16) | \ - ((u64)in[6] << 8) | (u64)in[7]; -} - -static inline u64 buf_get_le64(const void *_buf) -{ - const byte *in = _buf; - return ((u64)in[7] << 56) | ((u64)in[6] << 48) | \ - ((u64)in[5] << 40) | ((u64)in[4] << 32) | \ - ((u64)in[3] << 24) | ((u64)in[2] << 16) | \ - ((u64)in[1] << 8) | (u64)in[0]; -} - -static inline void buf_put_be64(void *_buf, u64 val) -{ - byte *out = _buf; - out[0] = val >> 56; - out[1] = val >> 48; - out[2] = val >> 40; - out[3] = val >> 32; - out[4] = val >> 24; - out[5] = val >> 16; - out[6] = val >> 8; - out[7] = val; -} - -static inline void buf_put_le64(void *_buf, u64 val) -{ - byte *out = _buf; - out[7] = val >> 56; - out[6] = val >> 48; - out[5] = val >> 40; - out[4] = val >> 32; - out[3] = val >> 24; - out[2] = val >> 16; - out[1] = val >> 8; - out[0] = val; -} - -#else /*BUFHELP_FAST_UNALIGNED_ACCESS*/ - -typedef struct bufhelp_u32_s -{ - u32 a; -} __attribute__((packed, aligned(1))) bufhelp_u32_t; - -/* Functions for loading and storing unaligned u32 values of different - endianness. */ -static inline u32 buf_get_be32(const void *_buf) -{ - return be_bswap32(((const bufhelp_u32_t *)_buf)->a); -} - -static inline u32 buf_get_le32(const void *_buf) -{ - return le_bswap32(((const bufhelp_u32_t *)_buf)->a); -} - -static inline void buf_put_be32(void *_buf, u32 val) -{ - bufhelp_u32_t *out = _buf; - out->a = be_bswap32(val); -} - -static inline void buf_put_le32(void *_buf, u32 val) -{ - bufhelp_u32_t *out = _buf; - out->a = le_bswap32(val); -} - - -typedef struct bufhelp_u64_s -{ - u64 a; -} __attribute__((packed, aligned(1))) bufhelp_u64_t; - -/* Functions for loading and storing unaligned u64 values of different - endianness. */ -static inline u64 buf_get_be64(const void *_buf) -{ - return be_bswap64(((const bufhelp_u64_t *)_buf)->a); -} - -static inline u64 buf_get_le64(const void *_buf) -{ - return le_bswap64(((const bufhelp_u64_t *)_buf)->a); -} - -static inline void buf_put_be64(void *_buf, u64 val) -{ - bufhelp_u64_t *out = _buf; - out->a = be_bswap64(val); -} - -static inline void buf_put_le64(void *_buf, u64 val) -{ - bufhelp_u64_t *out = _buf; - out->a = le_bswap64(val); -} - - -#endif /*BUFHELP_FAST_UNALIGNED_ACCESS*/ - -#endif /*GCRYPT_BUFHELP_H*/ diff --git a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/camellia-glue.c b/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/camellia-glue.c deleted file mode 100644 index f1a914305..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/camellia-glue.c +++ /dev/null @@ -1,211 +0,0 @@ -/* This file was automatically imported with - import_gcry.py. Please don't modify it */ -#include -GRUB_MOD_LICENSE ("GPLv3+"); -/* camellia-glue.c - Glue for the Camellia cipher - * Copyright (C) 2007 Free Software Foundation, Inc. - * - * This file is part of Libgcrypt. - * - * Libgcrypt is free software; you can redistribute it and/or modify - * it under the terms of the GNU Lesser General Public License as - * published by the Free Software Foundation; either version 2.1 of - * the License, or (at your option) any later version. - * - * Libgcrypt is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this program; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA - * 02110-1301, USA. - */ - -/* I put all the libgcrypt-specific stuff in this file to keep the - camellia.c/camellia.h files exactly as provided by NTT. If they - update their code, this should make it easier to bring the changes - in. - dshaw - - There is one small change which needs to be done: Include the - following code at the top of camellia.h: */ -#if 0 - -/* To use Camellia with libraries it is often useful to keep the name - * space of the library clean. The following macro is thus useful: - * - * #define CAMELLIA_EXT_SYM_PREFIX foo_ - * - * This prefixes all external symbols with "foo_". - */ -#ifdef HAVE_CONFIG_H -#endif -#ifdef CAMELLIA_EXT_SYM_PREFIX -#define CAMELLIA_PREFIX1(x,y) x ## y -#define CAMELLIA_PREFIX2(x,y) CAMELLIA_PREFIX1(x,y) -#define CAMELLIA_PREFIX(x) CAMELLIA_PREFIX2(CAMELLIA_EXT_SYM_PREFIX,x) -#define Camellia_Ekeygen CAMELLIA_PREFIX(Camellia_Ekeygen) -#define Camellia_EncryptBlock CAMELLIA_PREFIX(Camellia_EncryptBlock) -#define Camellia_DecryptBlock CAMELLIA_PREFIX(Camellia_DecryptBlock) -#define camellia_decrypt128 CAMELLIA_PREFIX(camellia_decrypt128) -#define camellia_decrypt256 CAMELLIA_PREFIX(camellia_decrypt256) -#define camellia_encrypt128 CAMELLIA_PREFIX(camellia_encrypt128) -#define camellia_encrypt256 CAMELLIA_PREFIX(camellia_encrypt256) -#define camellia_setup128 CAMELLIA_PREFIX(camellia_setup128) -#define camellia_setup192 CAMELLIA_PREFIX(camellia_setup192) -#define camellia_setup256 CAMELLIA_PREFIX(camellia_setup256) -#endif /*CAMELLIA_EXT_SYM_PREFIX*/ - -#endif /* Code sample. */ - - -#include "types.h" -#include "g10lib.h" -#include "cipher.h" -#include "camellia.h" - -typedef struct -{ - int keybitlength; - KEY_TABLE_TYPE keytable; -} CAMELLIA_context; - - -static gcry_err_code_t -camellia_setkey(void *c, const byte *key, unsigned keylen) -{ - CAMELLIA_context *ctx=c; - static int initialized=0; - static const char *selftest_failed=NULL; - - if(keylen!=16 && keylen!=24 && keylen!=32) - return GPG_ERR_INV_KEYLEN; - - if(!initialized) - { - initialized=1; - selftest_failed=selftest(); - if(selftest_failed) - log_error("%s\n",selftest_failed); - } - - if(selftest_failed) - return GPG_ERR_SELFTEST_FAILED; - - ctx->keybitlength=keylen*8; - Camellia_Ekeygen(ctx->keybitlength,key,ctx->keytable); - _gcry_burn_stack - ((19+34+34)*sizeof(u32)+2*sizeof(void*) /* camellia_setup256 */ - +(4+32)*sizeof(u32)+2*sizeof(void*) /* camellia_setup192 */ - +0+sizeof(int)+2*sizeof(void*) /* Camellia_Ekeygen */ - +3*2*sizeof(void*) /* Function calls. */ - ); - - return 0; -} - -static void -camellia_encrypt(void *c, byte *outbuf, const byte *inbuf) -{ - CAMELLIA_context *ctx=c; - - Camellia_EncryptBlock(ctx->keybitlength,inbuf,ctx->keytable,outbuf); - _gcry_burn_stack - (sizeof(int)+2*sizeof(unsigned char *)+sizeof(KEY_TABLE_TYPE) - +4*sizeof(u32) - +2*sizeof(u32*)+4*sizeof(u32) - +2*2*sizeof(void*) /* Function calls. */ - ); -} - -static void -camellia_decrypt(void *c, byte *outbuf, const byte *inbuf) -{ - CAMELLIA_context *ctx=c; - - Camellia_DecryptBlock(ctx->keybitlength,inbuf,ctx->keytable,outbuf); - _gcry_burn_stack - (sizeof(int)+2*sizeof(unsigned char *)+sizeof(KEY_TABLE_TYPE) - +4*sizeof(u32) - +2*sizeof(u32*)+4*sizeof(u32) - +2*2*sizeof(void*) /* Function calls. */ - ); -} - - -/* These oids are from - , - retrieved May 1, 2007. */ - -static gcry_cipher_oid_spec_t camellia128_oids[] = - { - {"1.2.392.200011.61.1.1.1.2", GCRY_CIPHER_MODE_CBC}, - {"0.3.4401.5.3.1.9.1", GCRY_CIPHER_MODE_ECB}, - {"0.3.4401.5.3.1.9.3", GCRY_CIPHER_MODE_OFB}, - {"0.3.4401.5.3.1.9.4", GCRY_CIPHER_MODE_CFB}, - { NULL } - }; - -static gcry_cipher_oid_spec_t camellia192_oids[] = - { - {"1.2.392.200011.61.1.1.1.3", GCRY_CIPHER_MODE_CBC}, - {"0.3.4401.5.3.1.9.21", GCRY_CIPHER_MODE_ECB}, - {"0.3.4401.5.3.1.9.23", GCRY_CIPHER_MODE_OFB}, - {"0.3.4401.5.3.1.9.24", GCRY_CIPHER_MODE_CFB}, - { NULL } - }; - -static gcry_cipher_oid_spec_t camellia256_oids[] = - { - {"1.2.392.200011.61.1.1.1.4", GCRY_CIPHER_MODE_CBC}, - {"0.3.4401.5.3.1.9.41", GCRY_CIPHER_MODE_ECB}, - {"0.3.4401.5.3.1.9.43", GCRY_CIPHER_MODE_OFB}, - {"0.3.4401.5.3.1.9.44", GCRY_CIPHER_MODE_CFB}, - { NULL } - }; - -gcry_cipher_spec_t _gcry_cipher_spec_camellia128 = - { - "CAMELLIA128",NULL,camellia128_oids,CAMELLIA_BLOCK_SIZE,128, - sizeof(CAMELLIA_context),camellia_setkey,camellia_encrypt,camellia_decrypt - , -#ifdef GRUB_UTIL - .modname = "gcry_camellia", -#endif - }; - -gcry_cipher_spec_t _gcry_cipher_spec_camellia192 = - { - "CAMELLIA192",NULL,camellia192_oids,CAMELLIA_BLOCK_SIZE,192, - sizeof(CAMELLIA_context),camellia_setkey,camellia_encrypt,camellia_decrypt - , -#ifdef GRUB_UTIL - .modname = "gcry_camellia", -#endif - }; - -gcry_cipher_spec_t _gcry_cipher_spec_camellia256 = - { - "CAMELLIA256",NULL,camellia256_oids,CAMELLIA_BLOCK_SIZE,256, - sizeof(CAMELLIA_context),camellia_setkey,camellia_encrypt,camellia_decrypt - , -#ifdef GRUB_UTIL - .modname = "gcry_camellia", -#endif - }; - - -GRUB_MOD_INIT(gcry_camellia) -{ - grub_cipher_register (&_gcry_cipher_spec_camellia128); - grub_cipher_register (&_gcry_cipher_spec_camellia192); - grub_cipher_register (&_gcry_cipher_spec_camellia256); -} - -GRUB_MOD_FINI(gcry_camellia) -{ - grub_cipher_unregister (&_gcry_cipher_spec_camellia128); - grub_cipher_unregister (&_gcry_cipher_spec_camellia192); - grub_cipher_unregister (&_gcry_cipher_spec_camellia256); -} diff --git a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/camellia.c b/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/camellia.c deleted file mode 100644 index 5c85ea8fd..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/camellia.c +++ /dev/null @@ -1,1463 +0,0 @@ -/* This file was automatically imported with - import_gcry.py. Please don't modify it */ -#include -GRUB_MOD_LICENSE ("GPLv3+"); -/* camellia.h ver 1.2.0 - * - * Copyright (C) 2006,2007 - * NTT (Nippon Telegraph and Telephone Corporation). - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 2.1 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA - */ - -/* - * Algorithm Specification - * http://info.isl.ntt.co.jp/crypt/eng/camellia/specifications.html - */ - - -#include "camellia.h" - -/* u32 must be 32bit word */ -typedef unsigned int u32; -typedef unsigned char u8; - -/* key constants */ - -#define CAMELLIA_SIGMA1L (0xA09E667FL) -#define CAMELLIA_SIGMA1R (0x3BCC908BL) -#define CAMELLIA_SIGMA2L (0xB67AE858L) -#define CAMELLIA_SIGMA2R (0x4CAA73B2L) -#define CAMELLIA_SIGMA3L (0xC6EF372FL) -#define CAMELLIA_SIGMA3R (0xE94F82BEL) -#define CAMELLIA_SIGMA4L (0x54FF53A5L) -#define CAMELLIA_SIGMA4R (0xF1D36F1CL) -#define CAMELLIA_SIGMA5L (0x10E527FAL) -#define CAMELLIA_SIGMA5R (0xDE682D1DL) -#define CAMELLIA_SIGMA6L (0xB05688C2L) -#define CAMELLIA_SIGMA6R (0xB3E6C1FDL) - -/* - * macros - */ - - -#if defined(_MSC_VER) - -# define SWAP(x) (_lrotl(x, 8) & 0x00ff00ff | _lrotr(x, 8) & 0xff00ff00) -# define GETU32(p) SWAP(*((u32 *)(p))) -# define PUTU32(ct, st) {*((u32 *)(ct)) = SWAP((st));} - -#else /* not MS-VC */ - -# define GETU32(pt) \ - (((u32)(pt)[0] << 24) \ - ^ ((u32)(pt)[1] << 16) \ - ^ ((u32)(pt)[2] << 8) \ - ^ ((u32)(pt)[3])) - -# define PUTU32(ct, st) { \ - (ct)[0] = (u8)((st) >> 24); \ - (ct)[1] = (u8)((st) >> 16); \ - (ct)[2] = (u8)((st) >> 8); \ - (ct)[3] = (u8)(st); } - -#endif - -#define CamelliaSubkeyL(INDEX) (subkey[(INDEX)*2]) -#define CamelliaSubkeyR(INDEX) (subkey[(INDEX)*2 + 1]) - -/* rotation right shift 1byte */ -#define CAMELLIA_RR8(x) (((x) >> 8) + ((x) << 24)) -/* rotation left shift 1bit */ -#define CAMELLIA_RL1(x) (((x) << 1) + ((x) >> 31)) -/* rotation left shift 1byte */ -#define CAMELLIA_RL8(x) (((x) << 8) + ((x) >> 24)) - -#define CAMELLIA_ROLDQ(ll, lr, rl, rr, w0, w1, bits) \ - do { \ - w0 = ll; \ - ll = (ll << bits) + (lr >> (32 - bits)); \ - lr = (lr << bits) + (rl >> (32 - bits)); \ - rl = (rl << bits) + (rr >> (32 - bits)); \ - rr = (rr << bits) + (w0 >> (32 - bits)); \ - } while(0) - -#define CAMELLIA_ROLDQo32(ll, lr, rl, rr, w0, w1, bits) \ - do { \ - w0 = ll; \ - w1 = lr; \ - ll = (lr << (bits - 32)) + (rl >> (64 - bits)); \ - lr = (rl << (bits - 32)) + (rr >> (64 - bits)); \ - rl = (rr << (bits - 32)) + (w0 >> (64 - bits)); \ - rr = (w0 << (bits - 32)) + (w1 >> (64 - bits)); \ - } while(0) - -#define CAMELLIA_SP1110(INDEX) (camellia_sp1110[(INDEX)]) -#define CAMELLIA_SP0222(INDEX) (camellia_sp0222[(INDEX)]) -#define CAMELLIA_SP3033(INDEX) (camellia_sp3033[(INDEX)]) -#define CAMELLIA_SP4404(INDEX) (camellia_sp4404[(INDEX)]) - -#define CAMELLIA_F(xl, xr, kl, kr, yl, yr, il, ir, t0, t1) \ - do { \ - il = xl ^ kl; \ - ir = xr ^ kr; \ - t0 = il >> 16; \ - t1 = ir >> 16; \ - yl = CAMELLIA_SP1110(ir & 0xff) \ - ^ CAMELLIA_SP0222((t1 >> 8) & 0xff) \ - ^ CAMELLIA_SP3033(t1 & 0xff) \ - ^ CAMELLIA_SP4404((ir >> 8) & 0xff); \ - yr = CAMELLIA_SP1110((t0 >> 8) & 0xff) \ - ^ CAMELLIA_SP0222(t0 & 0xff) \ - ^ CAMELLIA_SP3033((il >> 8) & 0xff) \ - ^ CAMELLIA_SP4404(il & 0xff); \ - yl ^= yr; \ - yr = CAMELLIA_RR8(yr); \ - yr ^= yl; \ - } while(0) - - -/* - * for speed up - * - */ -#define CAMELLIA_FLS(ll, lr, rl, rr, kll, klr, krl, krr, t0, t1, t2, t3) \ - do { \ - t0 = kll; \ - t0 &= ll; \ - lr ^= CAMELLIA_RL1(t0); \ - t1 = klr; \ - t1 |= lr; \ - ll ^= t1; \ - \ - t2 = krr; \ - t2 |= rr; \ - rl ^= t2; \ - t3 = krl; \ - t3 &= rl; \ - rr ^= CAMELLIA_RL1(t3); \ - } while(0) - -#define CAMELLIA_ROUNDSM(xl, xr, kl, kr, yl, yr, il, ir, t0, t1) \ - do { \ - ir = CAMELLIA_SP1110(xr & 0xff) \ - ^ CAMELLIA_SP0222((xr >> 24) & 0xff) \ - ^ CAMELLIA_SP3033((xr >> 16) & 0xff) \ - ^ CAMELLIA_SP4404((xr >> 8) & 0xff); \ - il = CAMELLIA_SP1110((xl >> 24) & 0xff) \ - ^ CAMELLIA_SP0222((xl >> 16) & 0xff) \ - ^ CAMELLIA_SP3033((xl >> 8) & 0xff) \ - ^ CAMELLIA_SP4404(xl & 0xff); \ - il ^= kl; \ - ir ^= kr; \ - ir ^= il; \ - il = CAMELLIA_RR8(il); \ - il ^= ir; \ - yl ^= ir; \ - yr ^= il; \ - } while(0) - - -static const u32 camellia_sp1110[256] = { - 0x70707000,0x82828200,0x2c2c2c00,0xececec00, - 0xb3b3b300,0x27272700,0xc0c0c000,0xe5e5e500, - 0xe4e4e400,0x85858500,0x57575700,0x35353500, - 0xeaeaea00,0x0c0c0c00,0xaeaeae00,0x41414100, - 0x23232300,0xefefef00,0x6b6b6b00,0x93939300, - 0x45454500,0x19191900,0xa5a5a500,0x21212100, - 0xededed00,0x0e0e0e00,0x4f4f4f00,0x4e4e4e00, - 0x1d1d1d00,0x65656500,0x92929200,0xbdbdbd00, - 0x86868600,0xb8b8b800,0xafafaf00,0x8f8f8f00, - 0x7c7c7c00,0xebebeb00,0x1f1f1f00,0xcecece00, - 0x3e3e3e00,0x30303000,0xdcdcdc00,0x5f5f5f00, - 0x5e5e5e00,0xc5c5c500,0x0b0b0b00,0x1a1a1a00, - 0xa6a6a600,0xe1e1e100,0x39393900,0xcacaca00, - 0xd5d5d500,0x47474700,0x5d5d5d00,0x3d3d3d00, - 0xd9d9d900,0x01010100,0x5a5a5a00,0xd6d6d600, - 0x51515100,0x56565600,0x6c6c6c00,0x4d4d4d00, - 0x8b8b8b00,0x0d0d0d00,0x9a9a9a00,0x66666600, - 0xfbfbfb00,0xcccccc00,0xb0b0b000,0x2d2d2d00, - 0x74747400,0x12121200,0x2b2b2b00,0x20202000, - 0xf0f0f000,0xb1b1b100,0x84848400,0x99999900, - 0xdfdfdf00,0x4c4c4c00,0xcbcbcb00,0xc2c2c200, - 0x34343400,0x7e7e7e00,0x76767600,0x05050500, - 0x6d6d6d00,0xb7b7b700,0xa9a9a900,0x31313100, - 0xd1d1d100,0x17171700,0x04040400,0xd7d7d700, - 0x14141400,0x58585800,0x3a3a3a00,0x61616100, - 0xdedede00,0x1b1b1b00,0x11111100,0x1c1c1c00, - 0x32323200,0x0f0f0f00,0x9c9c9c00,0x16161600, - 0x53535300,0x18181800,0xf2f2f200,0x22222200, - 0xfefefe00,0x44444400,0xcfcfcf00,0xb2b2b200, - 0xc3c3c300,0xb5b5b500,0x7a7a7a00,0x91919100, - 0x24242400,0x08080800,0xe8e8e800,0xa8a8a800, - 0x60606000,0xfcfcfc00,0x69696900,0x50505000, - 0xaaaaaa00,0xd0d0d000,0xa0a0a000,0x7d7d7d00, - 0xa1a1a100,0x89898900,0x62626200,0x97979700, - 0x54545400,0x5b5b5b00,0x1e1e1e00,0x95959500, - 0xe0e0e000,0xffffff00,0x64646400,0xd2d2d200, - 0x10101000,0xc4c4c400,0x00000000,0x48484800, - 0xa3a3a300,0xf7f7f700,0x75757500,0xdbdbdb00, - 0x8a8a8a00,0x03030300,0xe6e6e600,0xdadada00, - 0x09090900,0x3f3f3f00,0xdddddd00,0x94949400, - 0x87878700,0x5c5c5c00,0x83838300,0x02020200, - 0xcdcdcd00,0x4a4a4a00,0x90909000,0x33333300, - 0x73737300,0x67676700,0xf6f6f600,0xf3f3f300, - 0x9d9d9d00,0x7f7f7f00,0xbfbfbf00,0xe2e2e200, - 0x52525200,0x9b9b9b00,0xd8d8d800,0x26262600, - 0xc8c8c800,0x37373700,0xc6c6c600,0x3b3b3b00, - 0x81818100,0x96969600,0x6f6f6f00,0x4b4b4b00, - 0x13131300,0xbebebe00,0x63636300,0x2e2e2e00, - 0xe9e9e900,0x79797900,0xa7a7a700,0x8c8c8c00, - 0x9f9f9f00,0x6e6e6e00,0xbcbcbc00,0x8e8e8e00, - 0x29292900,0xf5f5f500,0xf9f9f900,0xb6b6b600, - 0x2f2f2f00,0xfdfdfd00,0xb4b4b400,0x59595900, - 0x78787800,0x98989800,0x06060600,0x6a6a6a00, - 0xe7e7e700,0x46464600,0x71717100,0xbababa00, - 0xd4d4d400,0x25252500,0xababab00,0x42424200, - 0x88888800,0xa2a2a200,0x8d8d8d00,0xfafafa00, - 0x72727200,0x07070700,0xb9b9b900,0x55555500, - 0xf8f8f800,0xeeeeee00,0xacacac00,0x0a0a0a00, - 0x36363600,0x49494900,0x2a2a2a00,0x68686800, - 0x3c3c3c00,0x38383800,0xf1f1f100,0xa4a4a400, - 0x40404000,0x28282800,0xd3d3d300,0x7b7b7b00, - 0xbbbbbb00,0xc9c9c900,0x43434300,0xc1c1c100, - 0x15151500,0xe3e3e300,0xadadad00,0xf4f4f400, - 0x77777700,0xc7c7c700,0x80808000,0x9e9e9e00, -}; - -static const u32 camellia_sp0222[256] = { - 0x00e0e0e0,0x00050505,0x00585858,0x00d9d9d9, - 0x00676767,0x004e4e4e,0x00818181,0x00cbcbcb, - 0x00c9c9c9,0x000b0b0b,0x00aeaeae,0x006a6a6a, - 0x00d5d5d5,0x00181818,0x005d5d5d,0x00828282, - 0x00464646,0x00dfdfdf,0x00d6d6d6,0x00272727, - 0x008a8a8a,0x00323232,0x004b4b4b,0x00424242, - 0x00dbdbdb,0x001c1c1c,0x009e9e9e,0x009c9c9c, - 0x003a3a3a,0x00cacaca,0x00252525,0x007b7b7b, - 0x000d0d0d,0x00717171,0x005f5f5f,0x001f1f1f, - 0x00f8f8f8,0x00d7d7d7,0x003e3e3e,0x009d9d9d, - 0x007c7c7c,0x00606060,0x00b9b9b9,0x00bebebe, - 0x00bcbcbc,0x008b8b8b,0x00161616,0x00343434, - 0x004d4d4d,0x00c3c3c3,0x00727272,0x00959595, - 0x00ababab,0x008e8e8e,0x00bababa,0x007a7a7a, - 0x00b3b3b3,0x00020202,0x00b4b4b4,0x00adadad, - 0x00a2a2a2,0x00acacac,0x00d8d8d8,0x009a9a9a, - 0x00171717,0x001a1a1a,0x00353535,0x00cccccc, - 0x00f7f7f7,0x00999999,0x00616161,0x005a5a5a, - 0x00e8e8e8,0x00242424,0x00565656,0x00404040, - 0x00e1e1e1,0x00636363,0x00090909,0x00333333, - 0x00bfbfbf,0x00989898,0x00979797,0x00858585, - 0x00686868,0x00fcfcfc,0x00ececec,0x000a0a0a, - 0x00dadada,0x006f6f6f,0x00535353,0x00626262, - 0x00a3a3a3,0x002e2e2e,0x00080808,0x00afafaf, - 0x00282828,0x00b0b0b0,0x00747474,0x00c2c2c2, - 0x00bdbdbd,0x00363636,0x00222222,0x00383838, - 0x00646464,0x001e1e1e,0x00393939,0x002c2c2c, - 0x00a6a6a6,0x00303030,0x00e5e5e5,0x00444444, - 0x00fdfdfd,0x00888888,0x009f9f9f,0x00656565, - 0x00878787,0x006b6b6b,0x00f4f4f4,0x00232323, - 0x00484848,0x00101010,0x00d1d1d1,0x00515151, - 0x00c0c0c0,0x00f9f9f9,0x00d2d2d2,0x00a0a0a0, - 0x00555555,0x00a1a1a1,0x00414141,0x00fafafa, - 0x00434343,0x00131313,0x00c4c4c4,0x002f2f2f, - 0x00a8a8a8,0x00b6b6b6,0x003c3c3c,0x002b2b2b, - 0x00c1c1c1,0x00ffffff,0x00c8c8c8,0x00a5a5a5, - 0x00202020,0x00898989,0x00000000,0x00909090, - 0x00474747,0x00efefef,0x00eaeaea,0x00b7b7b7, - 0x00151515,0x00060606,0x00cdcdcd,0x00b5b5b5, - 0x00121212,0x007e7e7e,0x00bbbbbb,0x00292929, - 0x000f0f0f,0x00b8b8b8,0x00070707,0x00040404, - 0x009b9b9b,0x00949494,0x00212121,0x00666666, - 0x00e6e6e6,0x00cecece,0x00ededed,0x00e7e7e7, - 0x003b3b3b,0x00fefefe,0x007f7f7f,0x00c5c5c5, - 0x00a4a4a4,0x00373737,0x00b1b1b1,0x004c4c4c, - 0x00919191,0x006e6e6e,0x008d8d8d,0x00767676, - 0x00030303,0x002d2d2d,0x00dedede,0x00969696, - 0x00262626,0x007d7d7d,0x00c6c6c6,0x005c5c5c, - 0x00d3d3d3,0x00f2f2f2,0x004f4f4f,0x00191919, - 0x003f3f3f,0x00dcdcdc,0x00797979,0x001d1d1d, - 0x00525252,0x00ebebeb,0x00f3f3f3,0x006d6d6d, - 0x005e5e5e,0x00fbfbfb,0x00696969,0x00b2b2b2, - 0x00f0f0f0,0x00313131,0x000c0c0c,0x00d4d4d4, - 0x00cfcfcf,0x008c8c8c,0x00e2e2e2,0x00757575, - 0x00a9a9a9,0x004a4a4a,0x00575757,0x00848484, - 0x00111111,0x00454545,0x001b1b1b,0x00f5f5f5, - 0x00e4e4e4,0x000e0e0e,0x00737373,0x00aaaaaa, - 0x00f1f1f1,0x00dddddd,0x00595959,0x00141414, - 0x006c6c6c,0x00929292,0x00545454,0x00d0d0d0, - 0x00787878,0x00707070,0x00e3e3e3,0x00494949, - 0x00808080,0x00505050,0x00a7a7a7,0x00f6f6f6, - 0x00777777,0x00939393,0x00868686,0x00838383, - 0x002a2a2a,0x00c7c7c7,0x005b5b5b,0x00e9e9e9, - 0x00eeeeee,0x008f8f8f,0x00010101,0x003d3d3d, -}; - -static const u32 camellia_sp3033[256] = { - 0x38003838,0x41004141,0x16001616,0x76007676, - 0xd900d9d9,0x93009393,0x60006060,0xf200f2f2, - 0x72007272,0xc200c2c2,0xab00abab,0x9a009a9a, - 0x75007575,0x06000606,0x57005757,0xa000a0a0, - 0x91009191,0xf700f7f7,0xb500b5b5,0xc900c9c9, - 0xa200a2a2,0x8c008c8c,0xd200d2d2,0x90009090, - 0xf600f6f6,0x07000707,0xa700a7a7,0x27002727, - 0x8e008e8e,0xb200b2b2,0x49004949,0xde00dede, - 0x43004343,0x5c005c5c,0xd700d7d7,0xc700c7c7, - 0x3e003e3e,0xf500f5f5,0x8f008f8f,0x67006767, - 0x1f001f1f,0x18001818,0x6e006e6e,0xaf00afaf, - 0x2f002f2f,0xe200e2e2,0x85008585,0x0d000d0d, - 0x53005353,0xf000f0f0,0x9c009c9c,0x65006565, - 0xea00eaea,0xa300a3a3,0xae00aeae,0x9e009e9e, - 0xec00ecec,0x80008080,0x2d002d2d,0x6b006b6b, - 0xa800a8a8,0x2b002b2b,0x36003636,0xa600a6a6, - 0xc500c5c5,0x86008686,0x4d004d4d,0x33003333, - 0xfd00fdfd,0x66006666,0x58005858,0x96009696, - 0x3a003a3a,0x09000909,0x95009595,0x10001010, - 0x78007878,0xd800d8d8,0x42004242,0xcc00cccc, - 0xef00efef,0x26002626,0xe500e5e5,0x61006161, - 0x1a001a1a,0x3f003f3f,0x3b003b3b,0x82008282, - 0xb600b6b6,0xdb00dbdb,0xd400d4d4,0x98009898, - 0xe800e8e8,0x8b008b8b,0x02000202,0xeb00ebeb, - 0x0a000a0a,0x2c002c2c,0x1d001d1d,0xb000b0b0, - 0x6f006f6f,0x8d008d8d,0x88008888,0x0e000e0e, - 0x19001919,0x87008787,0x4e004e4e,0x0b000b0b, - 0xa900a9a9,0x0c000c0c,0x79007979,0x11001111, - 0x7f007f7f,0x22002222,0xe700e7e7,0x59005959, - 0xe100e1e1,0xda00dada,0x3d003d3d,0xc800c8c8, - 0x12001212,0x04000404,0x74007474,0x54005454, - 0x30003030,0x7e007e7e,0xb400b4b4,0x28002828, - 0x55005555,0x68006868,0x50005050,0xbe00bebe, - 0xd000d0d0,0xc400c4c4,0x31003131,0xcb00cbcb, - 0x2a002a2a,0xad00adad,0x0f000f0f,0xca00caca, - 0x70007070,0xff00ffff,0x32003232,0x69006969, - 0x08000808,0x62006262,0x00000000,0x24002424, - 0xd100d1d1,0xfb00fbfb,0xba00baba,0xed00eded, - 0x45004545,0x81008181,0x73007373,0x6d006d6d, - 0x84008484,0x9f009f9f,0xee00eeee,0x4a004a4a, - 0xc300c3c3,0x2e002e2e,0xc100c1c1,0x01000101, - 0xe600e6e6,0x25002525,0x48004848,0x99009999, - 0xb900b9b9,0xb300b3b3,0x7b007b7b,0xf900f9f9, - 0xce00cece,0xbf00bfbf,0xdf00dfdf,0x71007171, - 0x29002929,0xcd00cdcd,0x6c006c6c,0x13001313, - 0x64006464,0x9b009b9b,0x63006363,0x9d009d9d, - 0xc000c0c0,0x4b004b4b,0xb700b7b7,0xa500a5a5, - 0x89008989,0x5f005f5f,0xb100b1b1,0x17001717, - 0xf400f4f4,0xbc00bcbc,0xd300d3d3,0x46004646, - 0xcf00cfcf,0x37003737,0x5e005e5e,0x47004747, - 0x94009494,0xfa00fafa,0xfc00fcfc,0x5b005b5b, - 0x97009797,0xfe00fefe,0x5a005a5a,0xac00acac, - 0x3c003c3c,0x4c004c4c,0x03000303,0x35003535, - 0xf300f3f3,0x23002323,0xb800b8b8,0x5d005d5d, - 0x6a006a6a,0x92009292,0xd500d5d5,0x21002121, - 0x44004444,0x51005151,0xc600c6c6,0x7d007d7d, - 0x39003939,0x83008383,0xdc00dcdc,0xaa00aaaa, - 0x7c007c7c,0x77007777,0x56005656,0x05000505, - 0x1b001b1b,0xa400a4a4,0x15001515,0x34003434, - 0x1e001e1e,0x1c001c1c,0xf800f8f8,0x52005252, - 0x20002020,0x14001414,0xe900e9e9,0xbd00bdbd, - 0xdd00dddd,0xe400e4e4,0xa100a1a1,0xe000e0e0, - 0x8a008a8a,0xf100f1f1,0xd600d6d6,0x7a007a7a, - 0xbb00bbbb,0xe300e3e3,0x40004040,0x4f004f4f, -}; - -static const u32 camellia_sp4404[256] = { - 0x70700070,0x2c2c002c,0xb3b300b3,0xc0c000c0, - 0xe4e400e4,0x57570057,0xeaea00ea,0xaeae00ae, - 0x23230023,0x6b6b006b,0x45450045,0xa5a500a5, - 0xeded00ed,0x4f4f004f,0x1d1d001d,0x92920092, - 0x86860086,0xafaf00af,0x7c7c007c,0x1f1f001f, - 0x3e3e003e,0xdcdc00dc,0x5e5e005e,0x0b0b000b, - 0xa6a600a6,0x39390039,0xd5d500d5,0x5d5d005d, - 0xd9d900d9,0x5a5a005a,0x51510051,0x6c6c006c, - 0x8b8b008b,0x9a9a009a,0xfbfb00fb,0xb0b000b0, - 0x74740074,0x2b2b002b,0xf0f000f0,0x84840084, - 0xdfdf00df,0xcbcb00cb,0x34340034,0x76760076, - 0x6d6d006d,0xa9a900a9,0xd1d100d1,0x04040004, - 0x14140014,0x3a3a003a,0xdede00de,0x11110011, - 0x32320032,0x9c9c009c,0x53530053,0xf2f200f2, - 0xfefe00fe,0xcfcf00cf,0xc3c300c3,0x7a7a007a, - 0x24240024,0xe8e800e8,0x60600060,0x69690069, - 0xaaaa00aa,0xa0a000a0,0xa1a100a1,0x62620062, - 0x54540054,0x1e1e001e,0xe0e000e0,0x64640064, - 0x10100010,0x00000000,0xa3a300a3,0x75750075, - 0x8a8a008a,0xe6e600e6,0x09090009,0xdddd00dd, - 0x87870087,0x83830083,0xcdcd00cd,0x90900090, - 0x73730073,0xf6f600f6,0x9d9d009d,0xbfbf00bf, - 0x52520052,0xd8d800d8,0xc8c800c8,0xc6c600c6, - 0x81810081,0x6f6f006f,0x13130013,0x63630063, - 0xe9e900e9,0xa7a700a7,0x9f9f009f,0xbcbc00bc, - 0x29290029,0xf9f900f9,0x2f2f002f,0xb4b400b4, - 0x78780078,0x06060006,0xe7e700e7,0x71710071, - 0xd4d400d4,0xabab00ab,0x88880088,0x8d8d008d, - 0x72720072,0xb9b900b9,0xf8f800f8,0xacac00ac, - 0x36360036,0x2a2a002a,0x3c3c003c,0xf1f100f1, - 0x40400040,0xd3d300d3,0xbbbb00bb,0x43430043, - 0x15150015,0xadad00ad,0x77770077,0x80800080, - 0x82820082,0xecec00ec,0x27270027,0xe5e500e5, - 0x85850085,0x35350035,0x0c0c000c,0x41410041, - 0xefef00ef,0x93930093,0x19190019,0x21210021, - 0x0e0e000e,0x4e4e004e,0x65650065,0xbdbd00bd, - 0xb8b800b8,0x8f8f008f,0xebeb00eb,0xcece00ce, - 0x30300030,0x5f5f005f,0xc5c500c5,0x1a1a001a, - 0xe1e100e1,0xcaca00ca,0x47470047,0x3d3d003d, - 0x01010001,0xd6d600d6,0x56560056,0x4d4d004d, - 0x0d0d000d,0x66660066,0xcccc00cc,0x2d2d002d, - 0x12120012,0x20200020,0xb1b100b1,0x99990099, - 0x4c4c004c,0xc2c200c2,0x7e7e007e,0x05050005, - 0xb7b700b7,0x31310031,0x17170017,0xd7d700d7, - 0x58580058,0x61610061,0x1b1b001b,0x1c1c001c, - 0x0f0f000f,0x16160016,0x18180018,0x22220022, - 0x44440044,0xb2b200b2,0xb5b500b5,0x91910091, - 0x08080008,0xa8a800a8,0xfcfc00fc,0x50500050, - 0xd0d000d0,0x7d7d007d,0x89890089,0x97970097, - 0x5b5b005b,0x95950095,0xffff00ff,0xd2d200d2, - 0xc4c400c4,0x48480048,0xf7f700f7,0xdbdb00db, - 0x03030003,0xdada00da,0x3f3f003f,0x94940094, - 0x5c5c005c,0x02020002,0x4a4a004a,0x33330033, - 0x67670067,0xf3f300f3,0x7f7f007f,0xe2e200e2, - 0x9b9b009b,0x26260026,0x37370037,0x3b3b003b, - 0x96960096,0x4b4b004b,0xbebe00be,0x2e2e002e, - 0x79790079,0x8c8c008c,0x6e6e006e,0x8e8e008e, - 0xf5f500f5,0xb6b600b6,0xfdfd00fd,0x59590059, - 0x98980098,0x6a6a006a,0x46460046,0xbaba00ba, - 0x25250025,0x42420042,0xa2a200a2,0xfafa00fa, - 0x07070007,0x55550055,0xeeee00ee,0x0a0a000a, - 0x49490049,0x68680068,0x38380038,0xa4a400a4, - 0x28280028,0x7b7b007b,0xc9c900c9,0xc1c100c1, - 0xe3e300e3,0xf4f400f4,0xc7c700c7,0x9e9e009e, -}; - - -/** - * Stuff related to the Camellia key schedule - */ -#define subl(x) subL[(x)] -#define subr(x) subR[(x)] - -void camellia_setup128(const unsigned char *key, u32 *subkey) -{ - u32 kll, klr, krl, krr; - u32 il, ir, t0, t1, w0, w1; - u32 kw4l, kw4r, dw, tl, tr; - u32 subL[26]; - u32 subR[26]; - - /** - * k == kll || klr || krl || krr (|| is concatination) - */ - kll = GETU32(key ); - klr = GETU32(key + 4); - krl = GETU32(key + 8); - krr = GETU32(key + 12); - /** - * generate KL dependent subkeys - */ - subl(0) = kll; subr(0) = klr; - subl(1) = krl; subr(1) = krr; - CAMELLIA_ROLDQ(kll, klr, krl, krr, w0, w1, 15); - subl(4) = kll; subr(4) = klr; - subl(5) = krl; subr(5) = krr; - CAMELLIA_ROLDQ(kll, klr, krl, krr, w0, w1, 30); - subl(10) = kll; subr(10) = klr; - subl(11) = krl; subr(11) = krr; - CAMELLIA_ROLDQ(kll, klr, krl, krr, w0, w1, 15); - subl(13) = krl; subr(13) = krr; - CAMELLIA_ROLDQ(kll, klr, krl, krr, w0, w1, 17); - subl(16) = kll; subr(16) = klr; - subl(17) = krl; subr(17) = krr; - CAMELLIA_ROLDQ(kll, klr, krl, krr, w0, w1, 17); - subl(18) = kll; subr(18) = klr; - subl(19) = krl; subr(19) = krr; - CAMELLIA_ROLDQ(kll, klr, krl, krr, w0, w1, 17); - subl(22) = kll; subr(22) = klr; - subl(23) = krl; subr(23) = krr; - - /* generate KA */ - kll = subl(0); klr = subr(0); - krl = subl(1); krr = subr(1); - CAMELLIA_F(kll, klr, - CAMELLIA_SIGMA1L, CAMELLIA_SIGMA1R, - w0, w1, il, ir, t0, t1); - krl ^= w0; krr ^= w1; - CAMELLIA_F(krl, krr, - CAMELLIA_SIGMA2L, CAMELLIA_SIGMA2R, - kll, klr, il, ir, t0, t1); - CAMELLIA_F(kll, klr, - CAMELLIA_SIGMA3L, CAMELLIA_SIGMA3R, - krl, krr, il, ir, t0, t1); - krl ^= w0; krr ^= w1; - CAMELLIA_F(krl, krr, - CAMELLIA_SIGMA4L, CAMELLIA_SIGMA4R, - w0, w1, il, ir, t0, t1); - kll ^= w0; klr ^= w1; - - /* generate KA dependent subkeys */ - subl(2) = kll; subr(2) = klr; - subl(3) = krl; subr(3) = krr; - CAMELLIA_ROLDQ(kll, klr, krl, krr, w0, w1, 15); - subl(6) = kll; subr(6) = klr; - subl(7) = krl; subr(7) = krr; - CAMELLIA_ROLDQ(kll, klr, krl, krr, w0, w1, 15); - subl(8) = kll; subr(8) = klr; - subl(9) = krl; subr(9) = krr; - CAMELLIA_ROLDQ(kll, klr, krl, krr, w0, w1, 15); - subl(12) = kll; subr(12) = klr; - CAMELLIA_ROLDQ(kll, klr, krl, krr, w0, w1, 15); - subl(14) = kll; subr(14) = klr; - subl(15) = krl; subr(15) = krr; - CAMELLIA_ROLDQo32(kll, klr, krl, krr, w0, w1, 34); - subl(20) = kll; subr(20) = klr; - subl(21) = krl; subr(21) = krr; - CAMELLIA_ROLDQ(kll, klr, krl, krr, w0, w1, 17); - subl(24) = kll; subr(24) = klr; - subl(25) = krl; subr(25) = krr; - - - /* absorb kw2 to other subkeys */ - subl(3) ^= subl(1); subr(3) ^= subr(1); - subl(5) ^= subl(1); subr(5) ^= subr(1); - subl(7) ^= subl(1); subr(7) ^= subr(1); - subl(1) ^= subr(1) & ~subr(9); - dw = subl(1) & subl(9), subr(1) ^= CAMELLIA_RL1(dw); - subl(11) ^= subl(1); subr(11) ^= subr(1); - subl(13) ^= subl(1); subr(13) ^= subr(1); - subl(15) ^= subl(1); subr(15) ^= subr(1); - subl(1) ^= subr(1) & ~subr(17); - dw = subl(1) & subl(17), subr(1) ^= CAMELLIA_RL1(dw); - subl(19) ^= subl(1); subr(19) ^= subr(1); - subl(21) ^= subl(1); subr(21) ^= subr(1); - subl(23) ^= subl(1); subr(23) ^= subr(1); - subl(24) ^= subl(1); subr(24) ^= subr(1); - - /* absorb kw4 to other subkeys */ - kw4l = subl(25); kw4r = subr(25); - subl(22) ^= kw4l; subr(22) ^= kw4r; - subl(20) ^= kw4l; subr(20) ^= kw4r; - subl(18) ^= kw4l; subr(18) ^= kw4r; - kw4l ^= kw4r & ~subr(16); - dw = kw4l & subl(16), kw4r ^= CAMELLIA_RL1(dw); - subl(14) ^= kw4l; subr(14) ^= kw4r; - subl(12) ^= kw4l; subr(12) ^= kw4r; - subl(10) ^= kw4l; subr(10) ^= kw4r; - kw4l ^= kw4r & ~subr(8); - dw = kw4l & subl(8), kw4r ^= CAMELLIA_RL1(dw); - subl(6) ^= kw4l; subr(6) ^= kw4r; - subl(4) ^= kw4l; subr(4) ^= kw4r; - subl(2) ^= kw4l; subr(2) ^= kw4r; - subl(0) ^= kw4l; subr(0) ^= kw4r; - - /* key XOR is end of F-function */ - CamelliaSubkeyL(0) = subl(0) ^ subl(2); - CamelliaSubkeyR(0) = subr(0) ^ subr(2); - CamelliaSubkeyL(2) = subl(3); - CamelliaSubkeyR(2) = subr(3); - CamelliaSubkeyL(3) = subl(2) ^ subl(4); - CamelliaSubkeyR(3) = subr(2) ^ subr(4); - CamelliaSubkeyL(4) = subl(3) ^ subl(5); - CamelliaSubkeyR(4) = subr(3) ^ subr(5); - CamelliaSubkeyL(5) = subl(4) ^ subl(6); - CamelliaSubkeyR(5) = subr(4) ^ subr(6); - CamelliaSubkeyL(6) = subl(5) ^ subl(7); - CamelliaSubkeyR(6) = subr(5) ^ subr(7); - tl = subl(10) ^ (subr(10) & ~subr(8)); - dw = tl & subl(8), tr = subr(10) ^ CAMELLIA_RL1(dw); - CamelliaSubkeyL(7) = subl(6) ^ tl; - CamelliaSubkeyR(7) = subr(6) ^ tr; - CamelliaSubkeyL(8) = subl(8); - CamelliaSubkeyR(8) = subr(8); - CamelliaSubkeyL(9) = subl(9); - CamelliaSubkeyR(9) = subr(9); - tl = subl(7) ^ (subr(7) & ~subr(9)); - dw = tl & subl(9), tr = subr(7) ^ CAMELLIA_RL1(dw); - CamelliaSubkeyL(10) = tl ^ subl(11); - CamelliaSubkeyR(10) = tr ^ subr(11); - CamelliaSubkeyL(11) = subl(10) ^ subl(12); - CamelliaSubkeyR(11) = subr(10) ^ subr(12); - CamelliaSubkeyL(12) = subl(11) ^ subl(13); - CamelliaSubkeyR(12) = subr(11) ^ subr(13); - CamelliaSubkeyL(13) = subl(12) ^ subl(14); - CamelliaSubkeyR(13) = subr(12) ^ subr(14); - CamelliaSubkeyL(14) = subl(13) ^ subl(15); - CamelliaSubkeyR(14) = subr(13) ^ subr(15); - tl = subl(18) ^ (subr(18) & ~subr(16)); - dw = tl & subl(16), tr = subr(18) ^ CAMELLIA_RL1(dw); - CamelliaSubkeyL(15) = subl(14) ^ tl; - CamelliaSubkeyR(15) = subr(14) ^ tr; - CamelliaSubkeyL(16) = subl(16); - CamelliaSubkeyR(16) = subr(16); - CamelliaSubkeyL(17) = subl(17); - CamelliaSubkeyR(17) = subr(17); - tl = subl(15) ^ (subr(15) & ~subr(17)); - dw = tl & subl(17), tr = subr(15) ^ CAMELLIA_RL1(dw); - CamelliaSubkeyL(18) = tl ^ subl(19); - CamelliaSubkeyR(18) = tr ^ subr(19); - CamelliaSubkeyL(19) = subl(18) ^ subl(20); - CamelliaSubkeyR(19) = subr(18) ^ subr(20); - CamelliaSubkeyL(20) = subl(19) ^ subl(21); - CamelliaSubkeyR(20) = subr(19) ^ subr(21); - CamelliaSubkeyL(21) = subl(20) ^ subl(22); - CamelliaSubkeyR(21) = subr(20) ^ subr(22); - CamelliaSubkeyL(22) = subl(21) ^ subl(23); - CamelliaSubkeyR(22) = subr(21) ^ subr(23); - CamelliaSubkeyL(23) = subl(22); - CamelliaSubkeyR(23) = subr(22); - CamelliaSubkeyL(24) = subl(24) ^ subl(23); - CamelliaSubkeyR(24) = subr(24) ^ subr(23); - - /* apply the inverse of the last half of P-function */ - dw = CamelliaSubkeyL(2) ^ CamelliaSubkeyR(2), dw = CAMELLIA_RL8(dw); - CamelliaSubkeyR(2) = CamelliaSubkeyL(2) ^ dw, CamelliaSubkeyL(2) = dw; - dw = CamelliaSubkeyL(3) ^ CamelliaSubkeyR(3), dw = CAMELLIA_RL8(dw); - CamelliaSubkeyR(3) = CamelliaSubkeyL(3) ^ dw, CamelliaSubkeyL(3) = dw; - dw = CamelliaSubkeyL(4) ^ CamelliaSubkeyR(4), dw = CAMELLIA_RL8(dw); - CamelliaSubkeyR(4) = CamelliaSubkeyL(4) ^ dw, CamelliaSubkeyL(4) = dw; - dw = CamelliaSubkeyL(5) ^ CamelliaSubkeyR(5), dw = CAMELLIA_RL8(dw); - CamelliaSubkeyR(5) = CamelliaSubkeyL(5) ^ dw, CamelliaSubkeyL(5) = dw; - dw = CamelliaSubkeyL(6) ^ CamelliaSubkeyR(6), dw = CAMELLIA_RL8(dw); - CamelliaSubkeyR(6) = CamelliaSubkeyL(6) ^ dw, CamelliaSubkeyL(6) = dw; - dw = CamelliaSubkeyL(7) ^ CamelliaSubkeyR(7), dw = CAMELLIA_RL8(dw); - CamelliaSubkeyR(7) = CamelliaSubkeyL(7) ^ dw, CamelliaSubkeyL(7) = dw; - dw = CamelliaSubkeyL(10) ^ CamelliaSubkeyR(10), dw = CAMELLIA_RL8(dw); - CamelliaSubkeyR(10) = CamelliaSubkeyL(10) ^ dw, CamelliaSubkeyL(10) = dw; - dw = CamelliaSubkeyL(11) ^ CamelliaSubkeyR(11), dw = CAMELLIA_RL8(dw); - CamelliaSubkeyR(11) = CamelliaSubkeyL(11) ^ dw, CamelliaSubkeyL(11) = dw; - dw = CamelliaSubkeyL(12) ^ CamelliaSubkeyR(12), dw = CAMELLIA_RL8(dw); - CamelliaSubkeyR(12) = CamelliaSubkeyL(12) ^ dw, CamelliaSubkeyL(12) = dw; - dw = CamelliaSubkeyL(13) ^ CamelliaSubkeyR(13), dw = CAMELLIA_RL8(dw); - CamelliaSubkeyR(13) = CamelliaSubkeyL(13) ^ dw, CamelliaSubkeyL(13) = dw; - dw = CamelliaSubkeyL(14) ^ CamelliaSubkeyR(14), dw = CAMELLIA_RL8(dw); - CamelliaSubkeyR(14) = CamelliaSubkeyL(14) ^ dw, CamelliaSubkeyL(14) = dw; - dw = CamelliaSubkeyL(15) ^ CamelliaSubkeyR(15), dw = CAMELLIA_RL8(dw); - CamelliaSubkeyR(15) = CamelliaSubkeyL(15) ^ dw, CamelliaSubkeyL(15) = dw; - dw = CamelliaSubkeyL(18) ^ CamelliaSubkeyR(18), dw = CAMELLIA_RL8(dw); - CamelliaSubkeyR(18) = CamelliaSubkeyL(18) ^ dw, CamelliaSubkeyL(18) = dw; - dw = CamelliaSubkeyL(19) ^ CamelliaSubkeyR(19), dw = CAMELLIA_RL8(dw); - CamelliaSubkeyR(19) = CamelliaSubkeyL(19) ^ dw, CamelliaSubkeyL(19) = dw; - dw = CamelliaSubkeyL(20) ^ CamelliaSubkeyR(20), dw = CAMELLIA_RL8(dw); - CamelliaSubkeyR(20) = CamelliaSubkeyL(20) ^ dw, CamelliaSubkeyL(20) = dw; - dw = CamelliaSubkeyL(21) ^ CamelliaSubkeyR(21), dw = CAMELLIA_RL8(dw); - CamelliaSubkeyR(21) = CamelliaSubkeyL(21) ^ dw, CamelliaSubkeyL(21) = dw; - dw = CamelliaSubkeyL(22) ^ CamelliaSubkeyR(22), dw = CAMELLIA_RL8(dw); - CamelliaSubkeyR(22) = CamelliaSubkeyL(22) ^ dw, CamelliaSubkeyL(22) = dw; - dw = CamelliaSubkeyL(23) ^ CamelliaSubkeyR(23), dw = CAMELLIA_RL8(dw); - CamelliaSubkeyR(23) = CamelliaSubkeyL(23) ^ dw, CamelliaSubkeyL(23) = dw; - - return; -} - -void camellia_setup256(const unsigned char *key, u32 *subkey) -{ - u32 kll,klr,krl,krr; /* left half of key */ - u32 krll,krlr,krrl,krrr; /* right half of key */ - u32 il, ir, t0, t1, w0, w1; /* temporary variables */ - u32 kw4l, kw4r, dw, tl, tr; - u32 subL[34]; - u32 subR[34]; - - /** - * key = (kll || klr || krl || krr || krll || krlr || krrl || krrr) - * (|| is concatination) - */ - - kll = GETU32(key ); - klr = GETU32(key + 4); - krl = GETU32(key + 8); - krr = GETU32(key + 12); - krll = GETU32(key + 16); - krlr = GETU32(key + 20); - krrl = GETU32(key + 24); - krrr = GETU32(key + 28); - - /* generate KL dependent subkeys */ - subl(0) = kll; subr(0) = klr; - subl(1) = krl; subr(1) = krr; - CAMELLIA_ROLDQo32(kll, klr, krl, krr, w0, w1, 45); - subl(12) = kll; subr(12) = klr; - subl(13) = krl; subr(13) = krr; - CAMELLIA_ROLDQ(kll, klr, krl, krr, w0, w1, 15); - subl(16) = kll; subr(16) = klr; - subl(17) = krl; subr(17) = krr; - CAMELLIA_ROLDQ(kll, klr, krl, krr, w0, w1, 17); - subl(22) = kll; subr(22) = klr; - subl(23) = krl; subr(23) = krr; - CAMELLIA_ROLDQo32(kll, klr, krl, krr, w0, w1, 34); - subl(30) = kll; subr(30) = klr; - subl(31) = krl; subr(31) = krr; - - /* generate KR dependent subkeys */ - CAMELLIA_ROLDQ(krll, krlr, krrl, krrr, w0, w1, 15); - subl(4) = krll; subr(4) = krlr; - subl(5) = krrl; subr(5) = krrr; - CAMELLIA_ROLDQ(krll, krlr, krrl, krrr, w0, w1, 15); - subl(8) = krll; subr(8) = krlr; - subl(9) = krrl; subr(9) = krrr; - CAMELLIA_ROLDQ(krll, krlr, krrl, krrr, w0, w1, 30); - subl(18) = krll; subr(18) = krlr; - subl(19) = krrl; subr(19) = krrr; - CAMELLIA_ROLDQo32(krll, krlr, krrl, krrr, w0, w1, 34); - subl(26) = krll; subr(26) = krlr; - subl(27) = krrl; subr(27) = krrr; - CAMELLIA_ROLDQo32(krll, krlr, krrl, krrr, w0, w1, 34); - - /* generate KA */ - kll = subl(0) ^ krll; klr = subr(0) ^ krlr; - krl = subl(1) ^ krrl; krr = subr(1) ^ krrr; - CAMELLIA_F(kll, klr, - CAMELLIA_SIGMA1L, CAMELLIA_SIGMA1R, - w0, w1, il, ir, t0, t1); - krl ^= w0; krr ^= w1; - CAMELLIA_F(krl, krr, - CAMELLIA_SIGMA2L, CAMELLIA_SIGMA2R, - kll, klr, il, ir, t0, t1); - kll ^= krll; klr ^= krlr; - CAMELLIA_F(kll, klr, - CAMELLIA_SIGMA3L, CAMELLIA_SIGMA3R, - krl, krr, il, ir, t0, t1); - krl ^= w0 ^ krrl; krr ^= w1 ^ krrr; - CAMELLIA_F(krl, krr, - CAMELLIA_SIGMA4L, CAMELLIA_SIGMA4R, - w0, w1, il, ir, t0, t1); - kll ^= w0; klr ^= w1; - - /* generate KB */ - krll ^= kll; krlr ^= klr; - krrl ^= krl; krrr ^= krr; - CAMELLIA_F(krll, krlr, - CAMELLIA_SIGMA5L, CAMELLIA_SIGMA5R, - w0, w1, il, ir, t0, t1); - krrl ^= w0; krrr ^= w1; - CAMELLIA_F(krrl, krrr, - CAMELLIA_SIGMA6L, CAMELLIA_SIGMA6R, - w0, w1, il, ir, t0, t1); - krll ^= w0; krlr ^= w1; - - /* generate KA dependent subkeys */ - CAMELLIA_ROLDQ(kll, klr, krl, krr, w0, w1, 15); - subl(6) = kll; subr(6) = klr; - subl(7) = krl; subr(7) = krr; - CAMELLIA_ROLDQ(kll, klr, krl, krr, w0, w1, 30); - subl(14) = kll; subr(14) = klr; - subl(15) = krl; subr(15) = krr; - subl(24) = klr; subr(24) = krl; - subl(25) = krr; subr(25) = kll; - CAMELLIA_ROLDQo32(kll, klr, krl, krr, w0, w1, 49); - subl(28) = kll; subr(28) = klr; - subl(29) = krl; subr(29) = krr; - - /* generate KB dependent subkeys */ - subl(2) = krll; subr(2) = krlr; - subl(3) = krrl; subr(3) = krrr; - CAMELLIA_ROLDQ(krll, krlr, krrl, krrr, w0, w1, 30); - subl(10) = krll; subr(10) = krlr; - subl(11) = krrl; subr(11) = krrr; - CAMELLIA_ROLDQ(krll, krlr, krrl, krrr, w0, w1, 30); - subl(20) = krll; subr(20) = krlr; - subl(21) = krrl; subr(21) = krrr; - CAMELLIA_ROLDQo32(krll, krlr, krrl, krrr, w0, w1, 51); - subl(32) = krll; subr(32) = krlr; - subl(33) = krrl; subr(33) = krrr; - - /* absorb kw2 to other subkeys */ - subl(3) ^= subl(1); subr(3) ^= subr(1); - subl(5) ^= subl(1); subr(5) ^= subr(1); - subl(7) ^= subl(1); subr(7) ^= subr(1); - subl(1) ^= subr(1) & ~subr(9); - dw = subl(1) & subl(9), subr(1) ^= CAMELLIA_RL1(dw); - subl(11) ^= subl(1); subr(11) ^= subr(1); - subl(13) ^= subl(1); subr(13) ^= subr(1); - subl(15) ^= subl(1); subr(15) ^= subr(1); - subl(1) ^= subr(1) & ~subr(17); - dw = subl(1) & subl(17), subr(1) ^= CAMELLIA_RL1(dw); - subl(19) ^= subl(1); subr(19) ^= subr(1); - subl(21) ^= subl(1); subr(21) ^= subr(1); - subl(23) ^= subl(1); subr(23) ^= subr(1); - subl(1) ^= subr(1) & ~subr(25); - dw = subl(1) & subl(25), subr(1) ^= CAMELLIA_RL1(dw); - subl(27) ^= subl(1); subr(27) ^= subr(1); - subl(29) ^= subl(1); subr(29) ^= subr(1); - subl(31) ^= subl(1); subr(31) ^= subr(1); - subl(32) ^= subl(1); subr(32) ^= subr(1); - - /* absorb kw4 to other subkeys */ - kw4l = subl(33); kw4r = subr(33); - subl(30) ^= kw4l; subr(30) ^= kw4r; - subl(28) ^= kw4l; subr(28) ^= kw4r; - subl(26) ^= kw4l; subr(26) ^= kw4r; - kw4l ^= kw4r & ~subr(24); - dw = kw4l & subl(24), kw4r ^= CAMELLIA_RL1(dw); - subl(22) ^= kw4l; subr(22) ^= kw4r; - subl(20) ^= kw4l; subr(20) ^= kw4r; - subl(18) ^= kw4l; subr(18) ^= kw4r; - kw4l ^= kw4r & ~subr(16); - dw = kw4l & subl(16), kw4r ^= CAMELLIA_RL1(dw); - subl(14) ^= kw4l; subr(14) ^= kw4r; - subl(12) ^= kw4l; subr(12) ^= kw4r; - subl(10) ^= kw4l; subr(10) ^= kw4r; - kw4l ^= kw4r & ~subr(8); - dw = kw4l & subl(8), kw4r ^= CAMELLIA_RL1(dw); - subl(6) ^= kw4l; subr(6) ^= kw4r; - subl(4) ^= kw4l; subr(4) ^= kw4r; - subl(2) ^= kw4l; subr(2) ^= kw4r; - subl(0) ^= kw4l; subr(0) ^= kw4r; - - /* key XOR is end of F-function */ - CamelliaSubkeyL(0) = subl(0) ^ subl(2); - CamelliaSubkeyR(0) = subr(0) ^ subr(2); - CamelliaSubkeyL(2) = subl(3); - CamelliaSubkeyR(2) = subr(3); - CamelliaSubkeyL(3) = subl(2) ^ subl(4); - CamelliaSubkeyR(3) = subr(2) ^ subr(4); - CamelliaSubkeyL(4) = subl(3) ^ subl(5); - CamelliaSubkeyR(4) = subr(3) ^ subr(5); - CamelliaSubkeyL(5) = subl(4) ^ subl(6); - CamelliaSubkeyR(5) = subr(4) ^ subr(6); - CamelliaSubkeyL(6) = subl(5) ^ subl(7); - CamelliaSubkeyR(6) = subr(5) ^ subr(7); - tl = subl(10) ^ (subr(10) & ~subr(8)); - dw = tl & subl(8), tr = subr(10) ^ CAMELLIA_RL1(dw); - CamelliaSubkeyL(7) = subl(6) ^ tl; - CamelliaSubkeyR(7) = subr(6) ^ tr; - CamelliaSubkeyL(8) = subl(8); - CamelliaSubkeyR(8) = subr(8); - CamelliaSubkeyL(9) = subl(9); - CamelliaSubkeyR(9) = subr(9); - tl = subl(7) ^ (subr(7) & ~subr(9)); - dw = tl & subl(9), tr = subr(7) ^ CAMELLIA_RL1(dw); - CamelliaSubkeyL(10) = tl ^ subl(11); - CamelliaSubkeyR(10) = tr ^ subr(11); - CamelliaSubkeyL(11) = subl(10) ^ subl(12); - CamelliaSubkeyR(11) = subr(10) ^ subr(12); - CamelliaSubkeyL(12) = subl(11) ^ subl(13); - CamelliaSubkeyR(12) = subr(11) ^ subr(13); - CamelliaSubkeyL(13) = subl(12) ^ subl(14); - CamelliaSubkeyR(13) = subr(12) ^ subr(14); - CamelliaSubkeyL(14) = subl(13) ^ subl(15); - CamelliaSubkeyR(14) = subr(13) ^ subr(15); - tl = subl(18) ^ (subr(18) & ~subr(16)); - dw = tl & subl(16), tr = subr(18) ^ CAMELLIA_RL1(dw); - CamelliaSubkeyL(15) = subl(14) ^ tl; - CamelliaSubkeyR(15) = subr(14) ^ tr; - CamelliaSubkeyL(16) = subl(16); - CamelliaSubkeyR(16) = subr(16); - CamelliaSubkeyL(17) = subl(17); - CamelliaSubkeyR(17) = subr(17); - tl = subl(15) ^ (subr(15) & ~subr(17)); - dw = tl & subl(17), tr = subr(15) ^ CAMELLIA_RL1(dw); - CamelliaSubkeyL(18) = tl ^ subl(19); - CamelliaSubkeyR(18) = tr ^ subr(19); - CamelliaSubkeyL(19) = subl(18) ^ subl(20); - CamelliaSubkeyR(19) = subr(18) ^ subr(20); - CamelliaSubkeyL(20) = subl(19) ^ subl(21); - CamelliaSubkeyR(20) = subr(19) ^ subr(21); - CamelliaSubkeyL(21) = subl(20) ^ subl(22); - CamelliaSubkeyR(21) = subr(20) ^ subr(22); - CamelliaSubkeyL(22) = subl(21) ^ subl(23); - CamelliaSubkeyR(22) = subr(21) ^ subr(23); - tl = subl(26) ^ (subr(26) & ~subr(24)); - dw = tl & subl(24), tr = subr(26) ^ CAMELLIA_RL1(dw); - CamelliaSubkeyL(23) = subl(22) ^ tl; - CamelliaSubkeyR(23) = subr(22) ^ tr; - CamelliaSubkeyL(24) = subl(24); - CamelliaSubkeyR(24) = subr(24); - CamelliaSubkeyL(25) = subl(25); - CamelliaSubkeyR(25) = subr(25); - tl = subl(23) ^ (subr(23) & ~subr(25)); - dw = tl & subl(25), tr = subr(23) ^ CAMELLIA_RL1(dw); - CamelliaSubkeyL(26) = tl ^ subl(27); - CamelliaSubkeyR(26) = tr ^ subr(27); - CamelliaSubkeyL(27) = subl(26) ^ subl(28); - CamelliaSubkeyR(27) = subr(26) ^ subr(28); - CamelliaSubkeyL(28) = subl(27) ^ subl(29); - CamelliaSubkeyR(28) = subr(27) ^ subr(29); - CamelliaSubkeyL(29) = subl(28) ^ subl(30); - CamelliaSubkeyR(29) = subr(28) ^ subr(30); - CamelliaSubkeyL(30) = subl(29) ^ subl(31); - CamelliaSubkeyR(30) = subr(29) ^ subr(31); - CamelliaSubkeyL(31) = subl(30); - CamelliaSubkeyR(31) = subr(30); - CamelliaSubkeyL(32) = subl(32) ^ subl(31); - CamelliaSubkeyR(32) = subr(32) ^ subr(31); - - /* apply the inverse of the last half of P-function */ - dw = CamelliaSubkeyL(2) ^ CamelliaSubkeyR(2), dw = CAMELLIA_RL8(dw); - CamelliaSubkeyR(2) = CamelliaSubkeyL(2) ^ dw, CamelliaSubkeyL(2) = dw; - dw = CamelliaSubkeyL(3) ^ CamelliaSubkeyR(3), dw = CAMELLIA_RL8(dw); - CamelliaSubkeyR(3) = CamelliaSubkeyL(3) ^ dw, CamelliaSubkeyL(3) = dw; - dw = CamelliaSubkeyL(4) ^ CamelliaSubkeyR(4), dw = CAMELLIA_RL8(dw); - CamelliaSubkeyR(4) = CamelliaSubkeyL(4) ^ dw, CamelliaSubkeyL(4) = dw; - dw = CamelliaSubkeyL(5) ^ CamelliaSubkeyR(5), dw = CAMELLIA_RL8(dw); - CamelliaSubkeyR(5) = CamelliaSubkeyL(5) ^ dw, CamelliaSubkeyL(5) = dw; - dw = CamelliaSubkeyL(6) ^ CamelliaSubkeyR(6), dw = CAMELLIA_RL8(dw); - CamelliaSubkeyR(6) = CamelliaSubkeyL(6) ^ dw, CamelliaSubkeyL(6) = dw; - dw = CamelliaSubkeyL(7) ^ CamelliaSubkeyR(7), dw = CAMELLIA_RL8(dw); - CamelliaSubkeyR(7) = CamelliaSubkeyL(7) ^ dw, CamelliaSubkeyL(7) = dw; - dw = CamelliaSubkeyL(10) ^ CamelliaSubkeyR(10), dw = CAMELLIA_RL8(dw); - CamelliaSubkeyR(10) = CamelliaSubkeyL(10) ^ dw, CamelliaSubkeyL(10) = dw; - dw = CamelliaSubkeyL(11) ^ CamelliaSubkeyR(11), dw = CAMELLIA_RL8(dw); - CamelliaSubkeyR(11) = CamelliaSubkeyL(11) ^ dw, CamelliaSubkeyL(11) = dw; - dw = CamelliaSubkeyL(12) ^ CamelliaSubkeyR(12), dw = CAMELLIA_RL8(dw); - CamelliaSubkeyR(12) = CamelliaSubkeyL(12) ^ dw, CamelliaSubkeyL(12) = dw; - dw = CamelliaSubkeyL(13) ^ CamelliaSubkeyR(13), dw = CAMELLIA_RL8(dw); - CamelliaSubkeyR(13) = CamelliaSubkeyL(13) ^ dw, CamelliaSubkeyL(13) = dw; - dw = CamelliaSubkeyL(14) ^ CamelliaSubkeyR(14), dw = CAMELLIA_RL8(dw); - CamelliaSubkeyR(14) = CamelliaSubkeyL(14) ^ dw, CamelliaSubkeyL(14) = dw; - dw = CamelliaSubkeyL(15) ^ CamelliaSubkeyR(15), dw = CAMELLIA_RL8(dw); - CamelliaSubkeyR(15) = CamelliaSubkeyL(15) ^ dw, CamelliaSubkeyL(15) = dw; - dw = CamelliaSubkeyL(18) ^ CamelliaSubkeyR(18), dw = CAMELLIA_RL8(dw); - CamelliaSubkeyR(18) = CamelliaSubkeyL(18) ^ dw, CamelliaSubkeyL(18) = dw; - dw = CamelliaSubkeyL(19) ^ CamelliaSubkeyR(19), dw = CAMELLIA_RL8(dw); - CamelliaSubkeyR(19) = CamelliaSubkeyL(19) ^ dw, CamelliaSubkeyL(19) = dw; - dw = CamelliaSubkeyL(20) ^ CamelliaSubkeyR(20), dw = CAMELLIA_RL8(dw); - CamelliaSubkeyR(20) = CamelliaSubkeyL(20) ^ dw, CamelliaSubkeyL(20) = dw; - dw = CamelliaSubkeyL(21) ^ CamelliaSubkeyR(21), dw = CAMELLIA_RL8(dw); - CamelliaSubkeyR(21) = CamelliaSubkeyL(21) ^ dw, CamelliaSubkeyL(21) = dw; - dw = CamelliaSubkeyL(22) ^ CamelliaSubkeyR(22), dw = CAMELLIA_RL8(dw); - CamelliaSubkeyR(22) = CamelliaSubkeyL(22) ^ dw, CamelliaSubkeyL(22) = dw; - dw = CamelliaSubkeyL(23) ^ CamelliaSubkeyR(23), dw = CAMELLIA_RL8(dw); - CamelliaSubkeyR(23) = CamelliaSubkeyL(23) ^ dw, CamelliaSubkeyL(23) = dw; - dw = CamelliaSubkeyL(26) ^ CamelliaSubkeyR(26), dw = CAMELLIA_RL8(dw); - CamelliaSubkeyR(26) = CamelliaSubkeyL(26) ^ dw, CamelliaSubkeyL(26) = dw; - dw = CamelliaSubkeyL(27) ^ CamelliaSubkeyR(27), dw = CAMELLIA_RL8(dw); - CamelliaSubkeyR(27) = CamelliaSubkeyL(27) ^ dw, CamelliaSubkeyL(27) = dw; - dw = CamelliaSubkeyL(28) ^ CamelliaSubkeyR(28), dw = CAMELLIA_RL8(dw); - CamelliaSubkeyR(28) = CamelliaSubkeyL(28) ^ dw, CamelliaSubkeyL(28) = dw; - dw = CamelliaSubkeyL(29) ^ CamelliaSubkeyR(29), dw = CAMELLIA_RL8(dw); - CamelliaSubkeyR(29) = CamelliaSubkeyL(29) ^ dw, CamelliaSubkeyL(29) = dw; - dw = CamelliaSubkeyL(30) ^ CamelliaSubkeyR(30), dw = CAMELLIA_RL8(dw); - CamelliaSubkeyR(30) = CamelliaSubkeyL(30) ^ dw, CamelliaSubkeyL(30) = dw; - dw = CamelliaSubkeyL(31) ^ CamelliaSubkeyR(31), dw = CAMELLIA_RL8(dw); - CamelliaSubkeyR(31) = CamelliaSubkeyL(31) ^ dw,CamelliaSubkeyL(31) = dw; - - return; -} - -void camellia_setup192(const unsigned char *key, u32 *subkey) -{ - unsigned char kk[32]; - u32 krll, krlr, krrl,krrr; - - memcpy(kk, key, 24); - memcpy((unsigned char *)&krll, key+16,4); - memcpy((unsigned char *)&krlr, key+20,4); - krrl = ~krll; - krrr = ~krlr; - memcpy(kk+24, (unsigned char *)&krrl, 4); - memcpy(kk+28, (unsigned char *)&krrr, 4); - camellia_setup256(kk, subkey); - return; -} - - -/** - * Stuff related to camellia encryption/decryption - * - * "io" must be 4byte aligned and big-endian data. - */ -void camellia_encrypt128(const u32 *subkey, u32 *io) -{ - u32 il, ir, t0, t1; - - /* pre whitening but absorb kw2*/ - io[0] ^= CamelliaSubkeyL(0); - io[1] ^= CamelliaSubkeyR(0); - /* main iteration */ - - CAMELLIA_ROUNDSM(io[0],io[1], - CamelliaSubkeyL(2),CamelliaSubkeyR(2), - io[2],io[3],il,ir,t0,t1); - CAMELLIA_ROUNDSM(io[2],io[3], - CamelliaSubkeyL(3),CamelliaSubkeyR(3), - io[0],io[1],il,ir,t0,t1); - CAMELLIA_ROUNDSM(io[0],io[1], - CamelliaSubkeyL(4),CamelliaSubkeyR(4), - io[2],io[3],il,ir,t0,t1); - CAMELLIA_ROUNDSM(io[2],io[3], - CamelliaSubkeyL(5),CamelliaSubkeyR(5), - io[0],io[1],il,ir,t0,t1); - CAMELLIA_ROUNDSM(io[0],io[1], - CamelliaSubkeyL(6),CamelliaSubkeyR(6), - io[2],io[3],il,ir,t0,t1); - CAMELLIA_ROUNDSM(io[2],io[3], - CamelliaSubkeyL(7),CamelliaSubkeyR(7), - io[0],io[1],il,ir,t0,t1); - - CAMELLIA_FLS(io[0],io[1],io[2],io[3], - CamelliaSubkeyL(8),CamelliaSubkeyR(8), - CamelliaSubkeyL(9),CamelliaSubkeyR(9), - t0,t1,il,ir); - - CAMELLIA_ROUNDSM(io[0],io[1], - CamelliaSubkeyL(10),CamelliaSubkeyR(10), - io[2],io[3],il,ir,t0,t1); - CAMELLIA_ROUNDSM(io[2],io[3], - CamelliaSubkeyL(11),CamelliaSubkeyR(11), - io[0],io[1],il,ir,t0,t1); - CAMELLIA_ROUNDSM(io[0],io[1], - CamelliaSubkeyL(12),CamelliaSubkeyR(12), - io[2],io[3],il,ir,t0,t1); - CAMELLIA_ROUNDSM(io[2],io[3], - CamelliaSubkeyL(13),CamelliaSubkeyR(13), - io[0],io[1],il,ir,t0,t1); - CAMELLIA_ROUNDSM(io[0],io[1], - CamelliaSubkeyL(14),CamelliaSubkeyR(14), - io[2],io[3],il,ir,t0,t1); - CAMELLIA_ROUNDSM(io[2],io[3], - CamelliaSubkeyL(15),CamelliaSubkeyR(15), - io[0],io[1],il,ir,t0,t1); - - CAMELLIA_FLS(io[0],io[1],io[2],io[3], - CamelliaSubkeyL(16),CamelliaSubkeyR(16), - CamelliaSubkeyL(17),CamelliaSubkeyR(17), - t0,t1,il,ir); - - CAMELLIA_ROUNDSM(io[0],io[1], - CamelliaSubkeyL(18),CamelliaSubkeyR(18), - io[2],io[3],il,ir,t0,t1); - CAMELLIA_ROUNDSM(io[2],io[3], - CamelliaSubkeyL(19),CamelliaSubkeyR(19), - io[0],io[1],il,ir,t0,t1); - CAMELLIA_ROUNDSM(io[0],io[1], - CamelliaSubkeyL(20),CamelliaSubkeyR(20), - io[2],io[3],il,ir,t0,t1); - CAMELLIA_ROUNDSM(io[2],io[3], - CamelliaSubkeyL(21),CamelliaSubkeyR(21), - io[0],io[1],il,ir,t0,t1); - CAMELLIA_ROUNDSM(io[0],io[1], - CamelliaSubkeyL(22),CamelliaSubkeyR(22), - io[2],io[3],il,ir,t0,t1); - CAMELLIA_ROUNDSM(io[2],io[3], - CamelliaSubkeyL(23),CamelliaSubkeyR(23), - io[0],io[1],il,ir,t0,t1); - - /* post whitening but kw4 */ - io[2] ^= CamelliaSubkeyL(24); - io[3] ^= CamelliaSubkeyR(24); - - t0 = io[0]; - t1 = io[1]; - io[0] = io[2]; - io[1] = io[3]; - io[2] = t0; - io[3] = t1; - - return; -} - -void camellia_decrypt128(const u32 *subkey, u32 *io) -{ - u32 il,ir,t0,t1; /* temporary valiables */ - - /* pre whitening but absorb kw2*/ - io[0] ^= CamelliaSubkeyL(24); - io[1] ^= CamelliaSubkeyR(24); - - /* main iteration */ - CAMELLIA_ROUNDSM(io[0],io[1], - CamelliaSubkeyL(23),CamelliaSubkeyR(23), - io[2],io[3],il,ir,t0,t1); - CAMELLIA_ROUNDSM(io[2],io[3], - CamelliaSubkeyL(22),CamelliaSubkeyR(22), - io[0],io[1],il,ir,t0,t1); - CAMELLIA_ROUNDSM(io[0],io[1], - CamelliaSubkeyL(21),CamelliaSubkeyR(21), - io[2],io[3],il,ir,t0,t1); - CAMELLIA_ROUNDSM(io[2],io[3], - CamelliaSubkeyL(20),CamelliaSubkeyR(20), - io[0],io[1],il,ir,t0,t1); - CAMELLIA_ROUNDSM(io[0],io[1], - CamelliaSubkeyL(19),CamelliaSubkeyR(19), - io[2],io[3],il,ir,t0,t1); - CAMELLIA_ROUNDSM(io[2],io[3], - CamelliaSubkeyL(18),CamelliaSubkeyR(18), - io[0],io[1],il,ir,t0,t1); - - CAMELLIA_FLS(io[0],io[1],io[2],io[3], - CamelliaSubkeyL(17),CamelliaSubkeyR(17), - CamelliaSubkeyL(16),CamelliaSubkeyR(16), - t0,t1,il,ir); - - CAMELLIA_ROUNDSM(io[0],io[1], - CamelliaSubkeyL(15),CamelliaSubkeyR(15), - io[2],io[3],il,ir,t0,t1); - CAMELLIA_ROUNDSM(io[2],io[3], - CamelliaSubkeyL(14),CamelliaSubkeyR(14), - io[0],io[1],il,ir,t0,t1); - CAMELLIA_ROUNDSM(io[0],io[1], - CamelliaSubkeyL(13),CamelliaSubkeyR(13), - io[2],io[3],il,ir,t0,t1); - CAMELLIA_ROUNDSM(io[2],io[3], - CamelliaSubkeyL(12),CamelliaSubkeyR(12), - io[0],io[1],il,ir,t0,t1); - CAMELLIA_ROUNDSM(io[0],io[1], - CamelliaSubkeyL(11),CamelliaSubkeyR(11), - io[2],io[3],il,ir,t0,t1); - CAMELLIA_ROUNDSM(io[2],io[3], - CamelliaSubkeyL(10),CamelliaSubkeyR(10), - io[0],io[1],il,ir,t0,t1); - - CAMELLIA_FLS(io[0],io[1],io[2],io[3], - CamelliaSubkeyL(9),CamelliaSubkeyR(9), - CamelliaSubkeyL(8),CamelliaSubkeyR(8), - t0,t1,il,ir); - - CAMELLIA_ROUNDSM(io[0],io[1], - CamelliaSubkeyL(7),CamelliaSubkeyR(7), - io[2],io[3],il,ir,t0,t1); - CAMELLIA_ROUNDSM(io[2],io[3], - CamelliaSubkeyL(6),CamelliaSubkeyR(6), - io[0],io[1],il,ir,t0,t1); - CAMELLIA_ROUNDSM(io[0],io[1], - CamelliaSubkeyL(5),CamelliaSubkeyR(5), - io[2],io[3],il,ir,t0,t1); - CAMELLIA_ROUNDSM(io[2],io[3], - CamelliaSubkeyL(4),CamelliaSubkeyR(4), - io[0],io[1],il,ir,t0,t1); - CAMELLIA_ROUNDSM(io[0],io[1], - CamelliaSubkeyL(3),CamelliaSubkeyR(3), - io[2],io[3],il,ir,t0,t1); - CAMELLIA_ROUNDSM(io[2],io[3], - CamelliaSubkeyL(2),CamelliaSubkeyR(2), - io[0],io[1],il,ir,t0,t1); - - /* post whitening but kw4 */ - io[2] ^= CamelliaSubkeyL(0); - io[3] ^= CamelliaSubkeyR(0); - - t0 = io[0]; - t1 = io[1]; - io[0] = io[2]; - io[1] = io[3]; - io[2] = t0; - io[3] = t1; - - return; -} - -/** - * stuff for 192 and 256bit encryption/decryption - */ -void camellia_encrypt256(const u32 *subkey, u32 *io) -{ - u32 il,ir,t0,t1; /* temporary valiables */ - - /* pre whitening but absorb kw2*/ - io[0] ^= CamelliaSubkeyL(0); - io[1] ^= CamelliaSubkeyR(0); - - /* main iteration */ - CAMELLIA_ROUNDSM(io[0],io[1], - CamelliaSubkeyL(2),CamelliaSubkeyR(2), - io[2],io[3],il,ir,t0,t1); - CAMELLIA_ROUNDSM(io[2],io[3], - CamelliaSubkeyL(3),CamelliaSubkeyR(3), - io[0],io[1],il,ir,t0,t1); - CAMELLIA_ROUNDSM(io[0],io[1], - CamelliaSubkeyL(4),CamelliaSubkeyR(4), - io[2],io[3],il,ir,t0,t1); - CAMELLIA_ROUNDSM(io[2],io[3], - CamelliaSubkeyL(5),CamelliaSubkeyR(5), - io[0],io[1],il,ir,t0,t1); - CAMELLIA_ROUNDSM(io[0],io[1], - CamelliaSubkeyL(6),CamelliaSubkeyR(6), - io[2],io[3],il,ir,t0,t1); - CAMELLIA_ROUNDSM(io[2],io[3], - CamelliaSubkeyL(7),CamelliaSubkeyR(7), - io[0],io[1],il,ir,t0,t1); - - CAMELLIA_FLS(io[0],io[1],io[2],io[3], - CamelliaSubkeyL(8),CamelliaSubkeyR(8), - CamelliaSubkeyL(9),CamelliaSubkeyR(9), - t0,t1,il,ir); - - CAMELLIA_ROUNDSM(io[0],io[1], - CamelliaSubkeyL(10),CamelliaSubkeyR(10), - io[2],io[3],il,ir,t0,t1); - CAMELLIA_ROUNDSM(io[2],io[3], - CamelliaSubkeyL(11),CamelliaSubkeyR(11), - io[0],io[1],il,ir,t0,t1); - CAMELLIA_ROUNDSM(io[0],io[1], - CamelliaSubkeyL(12),CamelliaSubkeyR(12), - io[2],io[3],il,ir,t0,t1); - CAMELLIA_ROUNDSM(io[2],io[3], - CamelliaSubkeyL(13),CamelliaSubkeyR(13), - io[0],io[1],il,ir,t0,t1); - CAMELLIA_ROUNDSM(io[0],io[1], - CamelliaSubkeyL(14),CamelliaSubkeyR(14), - io[2],io[3],il,ir,t0,t1); - CAMELLIA_ROUNDSM(io[2],io[3], - CamelliaSubkeyL(15),CamelliaSubkeyR(15), - io[0],io[1],il,ir,t0,t1); - - CAMELLIA_FLS(io[0],io[1],io[2],io[3], - CamelliaSubkeyL(16),CamelliaSubkeyR(16), - CamelliaSubkeyL(17),CamelliaSubkeyR(17), - t0,t1,il,ir); - - CAMELLIA_ROUNDSM(io[0],io[1], - CamelliaSubkeyL(18),CamelliaSubkeyR(18), - io[2],io[3],il,ir,t0,t1); - CAMELLIA_ROUNDSM(io[2],io[3], - CamelliaSubkeyL(19),CamelliaSubkeyR(19), - io[0],io[1],il,ir,t0,t1); - CAMELLIA_ROUNDSM(io[0],io[1], - CamelliaSubkeyL(20),CamelliaSubkeyR(20), - io[2],io[3],il,ir,t0,t1); - CAMELLIA_ROUNDSM(io[2],io[3], - CamelliaSubkeyL(21),CamelliaSubkeyR(21), - io[0],io[1],il,ir,t0,t1); - CAMELLIA_ROUNDSM(io[0],io[1], - CamelliaSubkeyL(22),CamelliaSubkeyR(22), - io[2],io[3],il,ir,t0,t1); - CAMELLIA_ROUNDSM(io[2],io[3], - CamelliaSubkeyL(23),CamelliaSubkeyR(23), - io[0],io[1],il,ir,t0,t1); - - CAMELLIA_FLS(io[0],io[1],io[2],io[3], - CamelliaSubkeyL(24),CamelliaSubkeyR(24), - CamelliaSubkeyL(25),CamelliaSubkeyR(25), - t0,t1,il,ir); - - CAMELLIA_ROUNDSM(io[0],io[1], - CamelliaSubkeyL(26),CamelliaSubkeyR(26), - io[2],io[3],il,ir,t0,t1); - CAMELLIA_ROUNDSM(io[2],io[3], - CamelliaSubkeyL(27),CamelliaSubkeyR(27), - io[0],io[1],il,ir,t0,t1); - CAMELLIA_ROUNDSM(io[0],io[1], - CamelliaSubkeyL(28),CamelliaSubkeyR(28), - io[2],io[3],il,ir,t0,t1); - CAMELLIA_ROUNDSM(io[2],io[3], - CamelliaSubkeyL(29),CamelliaSubkeyR(29), - io[0],io[1],il,ir,t0,t1); - CAMELLIA_ROUNDSM(io[0],io[1], - CamelliaSubkeyL(30),CamelliaSubkeyR(30), - io[2],io[3],il,ir,t0,t1); - CAMELLIA_ROUNDSM(io[2],io[3], - CamelliaSubkeyL(31),CamelliaSubkeyR(31), - io[0],io[1],il,ir,t0,t1); - - /* post whitening but kw4 */ - io[2] ^= CamelliaSubkeyL(32); - io[3] ^= CamelliaSubkeyR(32); - - t0 = io[0]; - t1 = io[1]; - io[0] = io[2]; - io[1] = io[3]; - io[2] = t0; - io[3] = t1; - - return; -} - -void camellia_decrypt256(const u32 *subkey, u32 *io) -{ - u32 il,ir,t0,t1; /* temporary valiables */ - - /* pre whitening but absorb kw2*/ - io[0] ^= CamelliaSubkeyL(32); - io[1] ^= CamelliaSubkeyR(32); - - /* main iteration */ - CAMELLIA_ROUNDSM(io[0],io[1], - CamelliaSubkeyL(31),CamelliaSubkeyR(31), - io[2],io[3],il,ir,t0,t1); - CAMELLIA_ROUNDSM(io[2],io[3], - CamelliaSubkeyL(30),CamelliaSubkeyR(30), - io[0],io[1],il,ir,t0,t1); - CAMELLIA_ROUNDSM(io[0],io[1], - CamelliaSubkeyL(29),CamelliaSubkeyR(29), - io[2],io[3],il,ir,t0,t1); - CAMELLIA_ROUNDSM(io[2],io[3], - CamelliaSubkeyL(28),CamelliaSubkeyR(28), - io[0],io[1],il,ir,t0,t1); - CAMELLIA_ROUNDSM(io[0],io[1], - CamelliaSubkeyL(27),CamelliaSubkeyR(27), - io[2],io[3],il,ir,t0,t1); - CAMELLIA_ROUNDSM(io[2],io[3], - CamelliaSubkeyL(26),CamelliaSubkeyR(26), - io[0],io[1],il,ir,t0,t1); - - CAMELLIA_FLS(io[0],io[1],io[2],io[3], - CamelliaSubkeyL(25),CamelliaSubkeyR(25), - CamelliaSubkeyL(24),CamelliaSubkeyR(24), - t0,t1,il,ir); - - CAMELLIA_ROUNDSM(io[0],io[1], - CamelliaSubkeyL(23),CamelliaSubkeyR(23), - io[2],io[3],il,ir,t0,t1); - CAMELLIA_ROUNDSM(io[2],io[3], - CamelliaSubkeyL(22),CamelliaSubkeyR(22), - io[0],io[1],il,ir,t0,t1); - CAMELLIA_ROUNDSM(io[0],io[1], - CamelliaSubkeyL(21),CamelliaSubkeyR(21), - io[2],io[3],il,ir,t0,t1); - CAMELLIA_ROUNDSM(io[2],io[3], - CamelliaSubkeyL(20),CamelliaSubkeyR(20), - io[0],io[1],il,ir,t0,t1); - CAMELLIA_ROUNDSM(io[0],io[1], - CamelliaSubkeyL(19),CamelliaSubkeyR(19), - io[2],io[3],il,ir,t0,t1); - CAMELLIA_ROUNDSM(io[2],io[3], - CamelliaSubkeyL(18),CamelliaSubkeyR(18), - io[0],io[1],il,ir,t0,t1); - - CAMELLIA_FLS(io[0],io[1],io[2],io[3], - CamelliaSubkeyL(17),CamelliaSubkeyR(17), - CamelliaSubkeyL(16),CamelliaSubkeyR(16), - t0,t1,il,ir); - - CAMELLIA_ROUNDSM(io[0],io[1], - CamelliaSubkeyL(15),CamelliaSubkeyR(15), - io[2],io[3],il,ir,t0,t1); - CAMELLIA_ROUNDSM(io[2],io[3], - CamelliaSubkeyL(14),CamelliaSubkeyR(14), - io[0],io[1],il,ir,t0,t1); - CAMELLIA_ROUNDSM(io[0],io[1], - CamelliaSubkeyL(13),CamelliaSubkeyR(13), - io[2],io[3],il,ir,t0,t1); - CAMELLIA_ROUNDSM(io[2],io[3], - CamelliaSubkeyL(12),CamelliaSubkeyR(12), - io[0],io[1],il,ir,t0,t1); - CAMELLIA_ROUNDSM(io[0],io[1], - CamelliaSubkeyL(11),CamelliaSubkeyR(11), - io[2],io[3],il,ir,t0,t1); - CAMELLIA_ROUNDSM(io[2],io[3], - CamelliaSubkeyL(10),CamelliaSubkeyR(10), - io[0],io[1],il,ir,t0,t1); - - CAMELLIA_FLS(io[0],io[1],io[2],io[3], - CamelliaSubkeyL(9),CamelliaSubkeyR(9), - CamelliaSubkeyL(8),CamelliaSubkeyR(8), - t0,t1,il,ir); - - CAMELLIA_ROUNDSM(io[0],io[1], - CamelliaSubkeyL(7),CamelliaSubkeyR(7), - io[2],io[3],il,ir,t0,t1); - CAMELLIA_ROUNDSM(io[2],io[3], - CamelliaSubkeyL(6),CamelliaSubkeyR(6), - io[0],io[1],il,ir,t0,t1); - CAMELLIA_ROUNDSM(io[0],io[1], - CamelliaSubkeyL(5),CamelliaSubkeyR(5), - io[2],io[3],il,ir,t0,t1); - CAMELLIA_ROUNDSM(io[2],io[3], - CamelliaSubkeyL(4),CamelliaSubkeyR(4), - io[0],io[1],il,ir,t0,t1); - CAMELLIA_ROUNDSM(io[0],io[1], - CamelliaSubkeyL(3),CamelliaSubkeyR(3), - io[2],io[3],il,ir,t0,t1); - CAMELLIA_ROUNDSM(io[2],io[3], - CamelliaSubkeyL(2),CamelliaSubkeyR(2), - io[0],io[1],il,ir,t0,t1); - - /* post whitening but kw4 */ - io[2] ^= CamelliaSubkeyL(0); - io[3] ^= CamelliaSubkeyR(0); - - t0 = io[0]; - t1 = io[1]; - io[0] = io[2]; - io[1] = io[3]; - io[2] = t0; - io[3] = t1; - - return; -} - -/*** - * - * API for compatibility - */ - -void Camellia_Ekeygen(const int keyBitLength, - const unsigned char *rawKey, - KEY_TABLE_TYPE keyTable) -{ - switch(keyBitLength) { - case 128: - camellia_setup128(rawKey, keyTable); - break; - case 192: - camellia_setup192(rawKey, keyTable); - break; - case 256: - camellia_setup256(rawKey, keyTable); - break; - default: - break; - } -} - - -void Camellia_EncryptBlock(const int keyBitLength, - const unsigned char *plaintext, - const KEY_TABLE_TYPE keyTable, - unsigned char *ciphertext) -{ - u32 tmp[4]; - - tmp[0] = GETU32(plaintext); - tmp[1] = GETU32(plaintext + 4); - tmp[2] = GETU32(plaintext + 8); - tmp[3] = GETU32(plaintext + 12); - - switch (keyBitLength) { - case 128: - camellia_encrypt128(keyTable, tmp); - break; - case 192: - /* fall through */ - case 256: - camellia_encrypt256(keyTable, tmp); - break; - default: - break; - } - - PUTU32(ciphertext, tmp[0]); - PUTU32(ciphertext + 4, tmp[1]); - PUTU32(ciphertext + 8, tmp[2]); - PUTU32(ciphertext + 12, tmp[3]); -} - -void Camellia_DecryptBlock(const int keyBitLength, - const unsigned char *ciphertext, - const KEY_TABLE_TYPE keyTable, - unsigned char *plaintext) -{ - u32 tmp[4]; - - tmp[0] = GETU32(ciphertext); - tmp[1] = GETU32(ciphertext + 4); - tmp[2] = GETU32(ciphertext + 8); - tmp[3] = GETU32(ciphertext + 12); - - switch (keyBitLength) { - case 128: - camellia_decrypt128(keyTable, tmp); - break; - case 192: - /* fall through */ - case 256: - camellia_decrypt256(keyTable, tmp); - break; - default: - break; - } - PUTU32(plaintext, tmp[0]); - PUTU32(plaintext + 4, tmp[1]); - PUTU32(plaintext + 8, tmp[2]); - PUTU32(plaintext + 12, tmp[3]); -} diff --git a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/camellia.h b/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/camellia.h deleted file mode 100644 index 2ab2ddd83..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/camellia.h +++ /dev/null @@ -1,94 +0,0 @@ -/* This file was automatically imported with - import_gcry.py. Please don't modify it */ -#include -#include -void camellia_setup128(const unsigned char *key, grub_uint32_t *subkey); -void camellia_setup192(const unsigned char *key, grub_uint32_t *subkey); -void camellia_setup256(const unsigned char *key, grub_uint32_t *subkey); -void camellia_encrypt128(const grub_uint32_t *subkey, grub_uint32_t *io); -void camellia_encrypt192(const grub_uint32_t *subkey, grub_uint32_t *io); -void camellia_encrypt256(const grub_uint32_t *subkey, grub_uint32_t *io); -void camellia_decrypt128(const grub_uint32_t *subkey, grub_uint32_t *io); -void camellia_decrypt192(const grub_uint32_t *subkey, grub_uint32_t *io); -void camellia_decrypt256(const grub_uint32_t *subkey, grub_uint32_t *io); -#define memcpy grub_memcpy -/* camellia.h ver 1.2.0 - * - * Copyright (C) 2006,2007 - * NTT (Nippon Telegraph and Telephone Corporation). - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 2.1 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA - */ - -#ifndef HEADER_CAMELLIA_H -#define HEADER_CAMELLIA_H - -/* To use Camellia with libraries it is often useful to keep the name - * space of the library clean. The following macro is thus useful: - * - * #define CAMELLIA_EXT_SYM_PREFIX foo_ - * - * This prefixes all external symbols with "foo_". - */ -#ifdef HAVE_CONFIG_H -#endif -#ifdef CAMELLIA_EXT_SYM_PREFIX -#define CAMELLIA_PREFIX1(x,y) x ## y -#define CAMELLIA_PREFIX2(x,y) CAMELLIA_PREFIX1(x,y) -#define CAMELLIA_PREFIX(x) CAMELLIA_PREFIX2(CAMELLIA_EXT_SYM_PREFIX,x) -#define Camellia_Ekeygen CAMELLIA_PREFIX(Camellia_Ekeygen) -#define Camellia_EncryptBlock CAMELLIA_PREFIX(Camellia_EncryptBlock) -#define Camellia_DecryptBlock CAMELLIA_PREFIX(Camellia_DecryptBlock) -#define camellia_decrypt128 CAMELLIA_PREFIX(camellia_decrypt128) -#define camellia_decrypt256 CAMELLIA_PREFIX(camellia_decrypt256) -#define camellia_encrypt128 CAMELLIA_PREFIX(camellia_encrypt128) -#define camellia_encrypt256 CAMELLIA_PREFIX(camellia_encrypt256) -#define camellia_setup128 CAMELLIA_PREFIX(camellia_setup128) -#define camellia_setup192 CAMELLIA_PREFIX(camellia_setup192) -#define camellia_setup256 CAMELLIA_PREFIX(camellia_setup256) -#endif /*CAMELLIA_EXT_SYM_PREFIX*/ - - -#ifdef __cplusplus -extern "C" { -#endif - -#define CAMELLIA_BLOCK_SIZE 16 -#define CAMELLIA_TABLE_BYTE_LEN 272 -#define CAMELLIA_TABLE_WORD_LEN (CAMELLIA_TABLE_BYTE_LEN / 4) - -typedef unsigned int KEY_TABLE_TYPE[CAMELLIA_TABLE_WORD_LEN]; - - -void Camellia_Ekeygen(const int keyBitLength, - const unsigned char *rawKey, - KEY_TABLE_TYPE keyTable); - -void Camellia_EncryptBlock(const int keyBitLength, - const unsigned char *plaintext, - const KEY_TABLE_TYPE keyTable, - unsigned char *cipherText); - -void Camellia_DecryptBlock(const int keyBitLength, - const unsigned char *cipherText, - const KEY_TABLE_TYPE keyTable, - unsigned char *plaintext); - - -#ifdef __cplusplus -} -#endif - -#endif /* HEADER_CAMELLIA_H */ diff --git a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/cast5.c b/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/cast5.c deleted file mode 100644 index 8598fa3c0..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/cast5.c +++ /dev/null @@ -1,590 +0,0 @@ -/* This file was automatically imported with - import_gcry.py. Please don't modify it */ -#include -GRUB_MOD_LICENSE ("GPLv3+"); -/* cast5.c - CAST5 cipher (RFC2144) - * Copyright (C) 1998, 2001, 2002, 2003 Free Software Foundation, Inc. - * - * This file is part of Libgcrypt. - * - * Libgcrypt is free software; you can redistribute it and/or modify - * it under the terms of the GNU Lesser general Public License as - * published by the Free Software Foundation; either version 2.1 of - * the License, or (at your option) any later version. - * - * Libgcrypt is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA - */ - -/* Test vectors: - * - * 128-bit key = 01 23 45 67 12 34 56 78 23 45 67 89 34 56 78 9A - * plaintext = 01 23 45 67 89 AB CD EF - * ciphertext = 23 8B 4F E5 84 7E 44 B2 - * - * 80-bit key = 01 23 45 67 12 34 56 78 23 45 - * = 01 23 45 67 12 34 56 78 23 45 00 00 00 00 00 00 - * plaintext = 01 23 45 67 89 AB CD EF - * ciphertext = EB 6A 71 1A 2C 02 27 1B - * - * 40-bit key = 01 23 45 67 12 - * = 01 23 45 67 12 00 00 00 00 00 00 00 00 00 00 00 - * plaintext = 01 23 45 67 89 AB CD EF - * ciphertext = 7A C8 16 D1 6E 9B 30 2E - */ - -#include "g10lib.h" -#include "types.h" -#include "cipher.h" - -#define CAST5_BLOCKSIZE 8 - -typedef struct { - u32 Km[16]; - byte Kr[16]; -} CAST5_context; - -static gcry_err_code_t cast_setkey (void *c, const byte *key, unsigned keylen); -static void encrypt_block (void *c, byte *outbuf, const byte *inbuf); -static void decrypt_block (void *c, byte *outbuf, const byte *inbuf); - - - - -static const u32 s1[256] = { -0x30fb40d4, 0x9fa0ff0b, 0x6beccd2f, 0x3f258c7a, 0x1e213f2f, 0x9c004dd3, 0x6003e540, 0xcf9fc949, -0xbfd4af27, 0x88bbbdb5, 0xe2034090, 0x98d09675, 0x6e63a0e0, 0x15c361d2, 0xc2e7661d, 0x22d4ff8e, -0x28683b6f, 0xc07fd059, 0xff2379c8, 0x775f50e2, 0x43c340d3, 0xdf2f8656, 0x887ca41a, 0xa2d2bd2d, -0xa1c9e0d6, 0x346c4819, 0x61b76d87, 0x22540f2f, 0x2abe32e1, 0xaa54166b, 0x22568e3a, 0xa2d341d0, -0x66db40c8, 0xa784392f, 0x004dff2f, 0x2db9d2de, 0x97943fac, 0x4a97c1d8, 0x527644b7, 0xb5f437a7, -0xb82cbaef, 0xd751d159, 0x6ff7f0ed, 0x5a097a1f, 0x827b68d0, 0x90ecf52e, 0x22b0c054, 0xbc8e5935, -0x4b6d2f7f, 0x50bb64a2, 0xd2664910, 0xbee5812d, 0xb7332290, 0xe93b159f, 0xb48ee411, 0x4bff345d, -0xfd45c240, 0xad31973f, 0xc4f6d02e, 0x55fc8165, 0xd5b1caad, 0xa1ac2dae, 0xa2d4b76d, 0xc19b0c50, -0x882240f2, 0x0c6e4f38, 0xa4e4bfd7, 0x4f5ba272, 0x564c1d2f, 0xc59c5319, 0xb949e354, 0xb04669fe, -0xb1b6ab8a, 0xc71358dd, 0x6385c545, 0x110f935d, 0x57538ad5, 0x6a390493, 0xe63d37e0, 0x2a54f6b3, -0x3a787d5f, 0x6276a0b5, 0x19a6fcdf, 0x7a42206a, 0x29f9d4d5, 0xf61b1891, 0xbb72275e, 0xaa508167, -0x38901091, 0xc6b505eb, 0x84c7cb8c, 0x2ad75a0f, 0x874a1427, 0xa2d1936b, 0x2ad286af, 0xaa56d291, -0xd7894360, 0x425c750d, 0x93b39e26, 0x187184c9, 0x6c00b32d, 0x73e2bb14, 0xa0bebc3c, 0x54623779, -0x64459eab, 0x3f328b82, 0x7718cf82, 0x59a2cea6, 0x04ee002e, 0x89fe78e6, 0x3fab0950, 0x325ff6c2, -0x81383f05, 0x6963c5c8, 0x76cb5ad6, 0xd49974c9, 0xca180dcf, 0x380782d5, 0xc7fa5cf6, 0x8ac31511, -0x35e79e13, 0x47da91d0, 0xf40f9086, 0xa7e2419e, 0x31366241, 0x051ef495, 0xaa573b04, 0x4a805d8d, -0x548300d0, 0x00322a3c, 0xbf64cddf, 0xba57a68e, 0x75c6372b, 0x50afd341, 0xa7c13275, 0x915a0bf5, -0x6b54bfab, 0x2b0b1426, 0xab4cc9d7, 0x449ccd82, 0xf7fbf265, 0xab85c5f3, 0x1b55db94, 0xaad4e324, -0xcfa4bd3f, 0x2deaa3e2, 0x9e204d02, 0xc8bd25ac, 0xeadf55b3, 0xd5bd9e98, 0xe31231b2, 0x2ad5ad6c, -0x954329de, 0xadbe4528, 0xd8710f69, 0xaa51c90f, 0xaa786bf6, 0x22513f1e, 0xaa51a79b, 0x2ad344cc, -0x7b5a41f0, 0xd37cfbad, 0x1b069505, 0x41ece491, 0xb4c332e6, 0x032268d4, 0xc9600acc, 0xce387e6d, -0xbf6bb16c, 0x6a70fb78, 0x0d03d9c9, 0xd4df39de, 0xe01063da, 0x4736f464, 0x5ad328d8, 0xb347cc96, -0x75bb0fc3, 0x98511bfb, 0x4ffbcc35, 0xb58bcf6a, 0xe11f0abc, 0xbfc5fe4a, 0xa70aec10, 0xac39570a, -0x3f04442f, 0x6188b153, 0xe0397a2e, 0x5727cb79, 0x9ceb418f, 0x1cacd68d, 0x2ad37c96, 0x0175cb9d, -0xc69dff09, 0xc75b65f0, 0xd9db40d8, 0xec0e7779, 0x4744ead4, 0xb11c3274, 0xdd24cb9e, 0x7e1c54bd, -0xf01144f9, 0xd2240eb1, 0x9675b3fd, 0xa3ac3755, 0xd47c27af, 0x51c85f4d, 0x56907596, 0xa5bb15e6, -0x580304f0, 0xca042cf1, 0x011a37ea, 0x8dbfaadb, 0x35ba3e4a, 0x3526ffa0, 0xc37b4d09, 0xbc306ed9, -0x98a52666, 0x5648f725, 0xff5e569d, 0x0ced63d0, 0x7c63b2cf, 0x700b45e1, 0xd5ea50f1, 0x85a92872, -0xaf1fbda7, 0xd4234870, 0xa7870bf3, 0x2d3b4d79, 0x42e04198, 0x0cd0ede7, 0x26470db8, 0xf881814c, -0x474d6ad7, 0x7c0c5e5c, 0xd1231959, 0x381b7298, 0xf5d2f4db, 0xab838653, 0x6e2f1e23, 0x83719c9e, -0xbd91e046, 0x9a56456e, 0xdc39200c, 0x20c8c571, 0x962bda1c, 0xe1e696ff, 0xb141ab08, 0x7cca89b9, -0x1a69e783, 0x02cc4843, 0xa2f7c579, 0x429ef47d, 0x427b169c, 0x5ac9f049, 0xdd8f0f00, 0x5c8165bf -}; -static const u32 s2[256] = { -0x1f201094, 0xef0ba75b, 0x69e3cf7e, 0x393f4380, 0xfe61cf7a, 0xeec5207a, 0x55889c94, 0x72fc0651, -0xada7ef79, 0x4e1d7235, 0xd55a63ce, 0xde0436ba, 0x99c430ef, 0x5f0c0794, 0x18dcdb7d, 0xa1d6eff3, -0xa0b52f7b, 0x59e83605, 0xee15b094, 0xe9ffd909, 0xdc440086, 0xef944459, 0xba83ccb3, 0xe0c3cdfb, -0xd1da4181, 0x3b092ab1, 0xf997f1c1, 0xa5e6cf7b, 0x01420ddb, 0xe4e7ef5b, 0x25a1ff41, 0xe180f806, -0x1fc41080, 0x179bee7a, 0xd37ac6a9, 0xfe5830a4, 0x98de8b7f, 0x77e83f4e, 0x79929269, 0x24fa9f7b, -0xe113c85b, 0xacc40083, 0xd7503525, 0xf7ea615f, 0x62143154, 0x0d554b63, 0x5d681121, 0xc866c359, -0x3d63cf73, 0xcee234c0, 0xd4d87e87, 0x5c672b21, 0x071f6181, 0x39f7627f, 0x361e3084, 0xe4eb573b, -0x602f64a4, 0xd63acd9c, 0x1bbc4635, 0x9e81032d, 0x2701f50c, 0x99847ab4, 0xa0e3df79, 0xba6cf38c, -0x10843094, 0x2537a95e, 0xf46f6ffe, 0xa1ff3b1f, 0x208cfb6a, 0x8f458c74, 0xd9e0a227, 0x4ec73a34, -0xfc884f69, 0x3e4de8df, 0xef0e0088, 0x3559648d, 0x8a45388c, 0x1d804366, 0x721d9bfd, 0xa58684bb, -0xe8256333, 0x844e8212, 0x128d8098, 0xfed33fb4, 0xce280ae1, 0x27e19ba5, 0xd5a6c252, 0xe49754bd, -0xc5d655dd, 0xeb667064, 0x77840b4d, 0xa1b6a801, 0x84db26a9, 0xe0b56714, 0x21f043b7, 0xe5d05860, -0x54f03084, 0x066ff472, 0xa31aa153, 0xdadc4755, 0xb5625dbf, 0x68561be6, 0x83ca6b94, 0x2d6ed23b, -0xeccf01db, 0xa6d3d0ba, 0xb6803d5c, 0xaf77a709, 0x33b4a34c, 0x397bc8d6, 0x5ee22b95, 0x5f0e5304, -0x81ed6f61, 0x20e74364, 0xb45e1378, 0xde18639b, 0x881ca122, 0xb96726d1, 0x8049a7e8, 0x22b7da7b, -0x5e552d25, 0x5272d237, 0x79d2951c, 0xc60d894c, 0x488cb402, 0x1ba4fe5b, 0xa4b09f6b, 0x1ca815cf, -0xa20c3005, 0x8871df63, 0xb9de2fcb, 0x0cc6c9e9, 0x0beeff53, 0xe3214517, 0xb4542835, 0x9f63293c, -0xee41e729, 0x6e1d2d7c, 0x50045286, 0x1e6685f3, 0xf33401c6, 0x30a22c95, 0x31a70850, 0x60930f13, -0x73f98417, 0xa1269859, 0xec645c44, 0x52c877a9, 0xcdff33a6, 0xa02b1741, 0x7cbad9a2, 0x2180036f, -0x50d99c08, 0xcb3f4861, 0xc26bd765, 0x64a3f6ab, 0x80342676, 0x25a75e7b, 0xe4e6d1fc, 0x20c710e6, -0xcdf0b680, 0x17844d3b, 0x31eef84d, 0x7e0824e4, 0x2ccb49eb, 0x846a3bae, 0x8ff77888, 0xee5d60f6, -0x7af75673, 0x2fdd5cdb, 0xa11631c1, 0x30f66f43, 0xb3faec54, 0x157fd7fa, 0xef8579cc, 0xd152de58, -0xdb2ffd5e, 0x8f32ce19, 0x306af97a, 0x02f03ef8, 0x99319ad5, 0xc242fa0f, 0xa7e3ebb0, 0xc68e4906, -0xb8da230c, 0x80823028, 0xdcdef3c8, 0xd35fb171, 0x088a1bc8, 0xbec0c560, 0x61a3c9e8, 0xbca8f54d, -0xc72feffa, 0x22822e99, 0x82c570b4, 0xd8d94e89, 0x8b1c34bc, 0x301e16e6, 0x273be979, 0xb0ffeaa6, -0x61d9b8c6, 0x00b24869, 0xb7ffce3f, 0x08dc283b, 0x43daf65a, 0xf7e19798, 0x7619b72f, 0x8f1c9ba4, -0xdc8637a0, 0x16a7d3b1, 0x9fc393b7, 0xa7136eeb, 0xc6bcc63e, 0x1a513742, 0xef6828bc, 0x520365d6, -0x2d6a77ab, 0x3527ed4b, 0x821fd216, 0x095c6e2e, 0xdb92f2fb, 0x5eea29cb, 0x145892f5, 0x91584f7f, -0x5483697b, 0x2667a8cc, 0x85196048, 0x8c4bacea, 0x833860d4, 0x0d23e0f9, 0x6c387e8a, 0x0ae6d249, -0xb284600c, 0xd835731d, 0xdcb1c647, 0xac4c56ea, 0x3ebd81b3, 0x230eabb0, 0x6438bc87, 0xf0b5b1fa, -0x8f5ea2b3, 0xfc184642, 0x0a036b7a, 0x4fb089bd, 0x649da589, 0xa345415e, 0x5c038323, 0x3e5d3bb9, -0x43d79572, 0x7e6dd07c, 0x06dfdf1e, 0x6c6cc4ef, 0x7160a539, 0x73bfbe70, 0x83877605, 0x4523ecf1 -}; -static const u32 s3[256] = { -0x8defc240, 0x25fa5d9f, 0xeb903dbf, 0xe810c907, 0x47607fff, 0x369fe44b, 0x8c1fc644, 0xaececa90, -0xbeb1f9bf, 0xeefbcaea, 0xe8cf1950, 0x51df07ae, 0x920e8806, 0xf0ad0548, 0xe13c8d83, 0x927010d5, -0x11107d9f, 0x07647db9, 0xb2e3e4d4, 0x3d4f285e, 0xb9afa820, 0xfade82e0, 0xa067268b, 0x8272792e, -0x553fb2c0, 0x489ae22b, 0xd4ef9794, 0x125e3fbc, 0x21fffcee, 0x825b1bfd, 0x9255c5ed, 0x1257a240, -0x4e1a8302, 0xbae07fff, 0x528246e7, 0x8e57140e, 0x3373f7bf, 0x8c9f8188, 0xa6fc4ee8, 0xc982b5a5, -0xa8c01db7, 0x579fc264, 0x67094f31, 0xf2bd3f5f, 0x40fff7c1, 0x1fb78dfc, 0x8e6bd2c1, 0x437be59b, -0x99b03dbf, 0xb5dbc64b, 0x638dc0e6, 0x55819d99, 0xa197c81c, 0x4a012d6e, 0xc5884a28, 0xccc36f71, -0xb843c213, 0x6c0743f1, 0x8309893c, 0x0feddd5f, 0x2f7fe850, 0xd7c07f7e, 0x02507fbf, 0x5afb9a04, -0xa747d2d0, 0x1651192e, 0xaf70bf3e, 0x58c31380, 0x5f98302e, 0x727cc3c4, 0x0a0fb402, 0x0f7fef82, -0x8c96fdad, 0x5d2c2aae, 0x8ee99a49, 0x50da88b8, 0x8427f4a0, 0x1eac5790, 0x796fb449, 0x8252dc15, -0xefbd7d9b, 0xa672597d, 0xada840d8, 0x45f54504, 0xfa5d7403, 0xe83ec305, 0x4f91751a, 0x925669c2, -0x23efe941, 0xa903f12e, 0x60270df2, 0x0276e4b6, 0x94fd6574, 0x927985b2, 0x8276dbcb, 0x02778176, -0xf8af918d, 0x4e48f79e, 0x8f616ddf, 0xe29d840e, 0x842f7d83, 0x340ce5c8, 0x96bbb682, 0x93b4b148, -0xef303cab, 0x984faf28, 0x779faf9b, 0x92dc560d, 0x224d1e20, 0x8437aa88, 0x7d29dc96, 0x2756d3dc, -0x8b907cee, 0xb51fd240, 0xe7c07ce3, 0xe566b4a1, 0xc3e9615e, 0x3cf8209d, 0x6094d1e3, 0xcd9ca341, -0x5c76460e, 0x00ea983b, 0xd4d67881, 0xfd47572c, 0xf76cedd9, 0xbda8229c, 0x127dadaa, 0x438a074e, -0x1f97c090, 0x081bdb8a, 0x93a07ebe, 0xb938ca15, 0x97b03cff, 0x3dc2c0f8, 0x8d1ab2ec, 0x64380e51, -0x68cc7bfb, 0xd90f2788, 0x12490181, 0x5de5ffd4, 0xdd7ef86a, 0x76a2e214, 0xb9a40368, 0x925d958f, -0x4b39fffa, 0xba39aee9, 0xa4ffd30b, 0xfaf7933b, 0x6d498623, 0x193cbcfa, 0x27627545, 0x825cf47a, -0x61bd8ba0, 0xd11e42d1, 0xcead04f4, 0x127ea392, 0x10428db7, 0x8272a972, 0x9270c4a8, 0x127de50b, -0x285ba1c8, 0x3c62f44f, 0x35c0eaa5, 0xe805d231, 0x428929fb, 0xb4fcdf82, 0x4fb66a53, 0x0e7dc15b, -0x1f081fab, 0x108618ae, 0xfcfd086d, 0xf9ff2889, 0x694bcc11, 0x236a5cae, 0x12deca4d, 0x2c3f8cc5, -0xd2d02dfe, 0xf8ef5896, 0xe4cf52da, 0x95155b67, 0x494a488c, 0xb9b6a80c, 0x5c8f82bc, 0x89d36b45, -0x3a609437, 0xec00c9a9, 0x44715253, 0x0a874b49, 0xd773bc40, 0x7c34671c, 0x02717ef6, 0x4feb5536, -0xa2d02fff, 0xd2bf60c4, 0xd43f03c0, 0x50b4ef6d, 0x07478cd1, 0x006e1888, 0xa2e53f55, 0xb9e6d4bc, -0xa2048016, 0x97573833, 0xd7207d67, 0xde0f8f3d, 0x72f87b33, 0xabcc4f33, 0x7688c55d, 0x7b00a6b0, -0x947b0001, 0x570075d2, 0xf9bb88f8, 0x8942019e, 0x4264a5ff, 0x856302e0, 0x72dbd92b, 0xee971b69, -0x6ea22fde, 0x5f08ae2b, 0xaf7a616d, 0xe5c98767, 0xcf1febd2, 0x61efc8c2, 0xf1ac2571, 0xcc8239c2, -0x67214cb8, 0xb1e583d1, 0xb7dc3e62, 0x7f10bdce, 0xf90a5c38, 0x0ff0443d, 0x606e6dc6, 0x60543a49, -0x5727c148, 0x2be98a1d, 0x8ab41738, 0x20e1be24, 0xaf96da0f, 0x68458425, 0x99833be5, 0x600d457d, -0x282f9350, 0x8334b362, 0xd91d1120, 0x2b6d8da0, 0x642b1e31, 0x9c305a00, 0x52bce688, 0x1b03588a, -0xf7baefd5, 0x4142ed9c, 0xa4315c11, 0x83323ec5, 0xdfef4636, 0xa133c501, 0xe9d3531c, 0xee353783 -}; -static const u32 s4[256] = { -0x9db30420, 0x1fb6e9de, 0xa7be7bef, 0xd273a298, 0x4a4f7bdb, 0x64ad8c57, 0x85510443, 0xfa020ed1, -0x7e287aff, 0xe60fb663, 0x095f35a1, 0x79ebf120, 0xfd059d43, 0x6497b7b1, 0xf3641f63, 0x241e4adf, -0x28147f5f, 0x4fa2b8cd, 0xc9430040, 0x0cc32220, 0xfdd30b30, 0xc0a5374f, 0x1d2d00d9, 0x24147b15, -0xee4d111a, 0x0fca5167, 0x71ff904c, 0x2d195ffe, 0x1a05645f, 0x0c13fefe, 0x081b08ca, 0x05170121, -0x80530100, 0xe83e5efe, 0xac9af4f8, 0x7fe72701, 0xd2b8ee5f, 0x06df4261, 0xbb9e9b8a, 0x7293ea25, -0xce84ffdf, 0xf5718801, 0x3dd64b04, 0xa26f263b, 0x7ed48400, 0x547eebe6, 0x446d4ca0, 0x6cf3d6f5, -0x2649abdf, 0xaea0c7f5, 0x36338cc1, 0x503f7e93, 0xd3772061, 0x11b638e1, 0x72500e03, 0xf80eb2bb, -0xabe0502e, 0xec8d77de, 0x57971e81, 0xe14f6746, 0xc9335400, 0x6920318f, 0x081dbb99, 0xffc304a5, -0x4d351805, 0x7f3d5ce3, 0xa6c866c6, 0x5d5bcca9, 0xdaec6fea, 0x9f926f91, 0x9f46222f, 0x3991467d, -0xa5bf6d8e, 0x1143c44f, 0x43958302, 0xd0214eeb, 0x022083b8, 0x3fb6180c, 0x18f8931e, 0x281658e6, -0x26486e3e, 0x8bd78a70, 0x7477e4c1, 0xb506e07c, 0xf32d0a25, 0x79098b02, 0xe4eabb81, 0x28123b23, -0x69dead38, 0x1574ca16, 0xdf871b62, 0x211c40b7, 0xa51a9ef9, 0x0014377b, 0x041e8ac8, 0x09114003, -0xbd59e4d2, 0xe3d156d5, 0x4fe876d5, 0x2f91a340, 0x557be8de, 0x00eae4a7, 0x0ce5c2ec, 0x4db4bba6, -0xe756bdff, 0xdd3369ac, 0xec17b035, 0x06572327, 0x99afc8b0, 0x56c8c391, 0x6b65811c, 0x5e146119, -0x6e85cb75, 0xbe07c002, 0xc2325577, 0x893ff4ec, 0x5bbfc92d, 0xd0ec3b25, 0xb7801ab7, 0x8d6d3b24, -0x20c763ef, 0xc366a5fc, 0x9c382880, 0x0ace3205, 0xaac9548a, 0xeca1d7c7, 0x041afa32, 0x1d16625a, -0x6701902c, 0x9b757a54, 0x31d477f7, 0x9126b031, 0x36cc6fdb, 0xc70b8b46, 0xd9e66a48, 0x56e55a79, -0x026a4ceb, 0x52437eff, 0x2f8f76b4, 0x0df980a5, 0x8674cde3, 0xedda04eb, 0x17a9be04, 0x2c18f4df, -0xb7747f9d, 0xab2af7b4, 0xefc34d20, 0x2e096b7c, 0x1741a254, 0xe5b6a035, 0x213d42f6, 0x2c1c7c26, -0x61c2f50f, 0x6552daf9, 0xd2c231f8, 0x25130f69, 0xd8167fa2, 0x0418f2c8, 0x001a96a6, 0x0d1526ab, -0x63315c21, 0x5e0a72ec, 0x49bafefd, 0x187908d9, 0x8d0dbd86, 0x311170a7, 0x3e9b640c, 0xcc3e10d7, -0xd5cad3b6, 0x0caec388, 0xf73001e1, 0x6c728aff, 0x71eae2a1, 0x1f9af36e, 0xcfcbd12f, 0xc1de8417, -0xac07be6b, 0xcb44a1d8, 0x8b9b0f56, 0x013988c3, 0xb1c52fca, 0xb4be31cd, 0xd8782806, 0x12a3a4e2, -0x6f7de532, 0x58fd7eb6, 0xd01ee900, 0x24adffc2, 0xf4990fc5, 0x9711aac5, 0x001d7b95, 0x82e5e7d2, -0x109873f6, 0x00613096, 0xc32d9521, 0xada121ff, 0x29908415, 0x7fbb977f, 0xaf9eb3db, 0x29c9ed2a, -0x5ce2a465, 0xa730f32c, 0xd0aa3fe8, 0x8a5cc091, 0xd49e2ce7, 0x0ce454a9, 0xd60acd86, 0x015f1919, -0x77079103, 0xdea03af6, 0x78a8565e, 0xdee356df, 0x21f05cbe, 0x8b75e387, 0xb3c50651, 0xb8a5c3ef, -0xd8eeb6d2, 0xe523be77, 0xc2154529, 0x2f69efdf, 0xafe67afb, 0xf470c4b2, 0xf3e0eb5b, 0xd6cc9876, -0x39e4460c, 0x1fda8538, 0x1987832f, 0xca007367, 0xa99144f8, 0x296b299e, 0x492fc295, 0x9266beab, -0xb5676e69, 0x9bd3ddda, 0xdf7e052f, 0xdb25701c, 0x1b5e51ee, 0xf65324e6, 0x6afce36c, 0x0316cc04, -0x8644213e, 0xb7dc59d0, 0x7965291f, 0xccd6fd43, 0x41823979, 0x932bcdf6, 0xb657c34d, 0x4edfd282, -0x7ae5290c, 0x3cb9536b, 0x851e20fe, 0x9833557e, 0x13ecf0b0, 0xd3ffb372, 0x3f85c5c1, 0x0aef7ed2 -}; -static const u32 s5[256] = { -0x7ec90c04, 0x2c6e74b9, 0x9b0e66df, 0xa6337911, 0xb86a7fff, 0x1dd358f5, 0x44dd9d44, 0x1731167f, -0x08fbf1fa, 0xe7f511cc, 0xd2051b00, 0x735aba00, 0x2ab722d8, 0x386381cb, 0xacf6243a, 0x69befd7a, -0xe6a2e77f, 0xf0c720cd, 0xc4494816, 0xccf5c180, 0x38851640, 0x15b0a848, 0xe68b18cb, 0x4caadeff, -0x5f480a01, 0x0412b2aa, 0x259814fc, 0x41d0efe2, 0x4e40b48d, 0x248eb6fb, 0x8dba1cfe, 0x41a99b02, -0x1a550a04, 0xba8f65cb, 0x7251f4e7, 0x95a51725, 0xc106ecd7, 0x97a5980a, 0xc539b9aa, 0x4d79fe6a, -0xf2f3f763, 0x68af8040, 0xed0c9e56, 0x11b4958b, 0xe1eb5a88, 0x8709e6b0, 0xd7e07156, 0x4e29fea7, -0x6366e52d, 0x02d1c000, 0xc4ac8e05, 0x9377f571, 0x0c05372a, 0x578535f2, 0x2261be02, 0xd642a0c9, -0xdf13a280, 0x74b55bd2, 0x682199c0, 0xd421e5ec, 0x53fb3ce8, 0xc8adedb3, 0x28a87fc9, 0x3d959981, -0x5c1ff900, 0xfe38d399, 0x0c4eff0b, 0x062407ea, 0xaa2f4fb1, 0x4fb96976, 0x90c79505, 0xb0a8a774, -0xef55a1ff, 0xe59ca2c2, 0xa6b62d27, 0xe66a4263, 0xdf65001f, 0x0ec50966, 0xdfdd55bc, 0x29de0655, -0x911e739a, 0x17af8975, 0x32c7911c, 0x89f89468, 0x0d01e980, 0x524755f4, 0x03b63cc9, 0x0cc844b2, -0xbcf3f0aa, 0x87ac36e9, 0xe53a7426, 0x01b3d82b, 0x1a9e7449, 0x64ee2d7e, 0xcddbb1da, 0x01c94910, -0xb868bf80, 0x0d26f3fd, 0x9342ede7, 0x04a5c284, 0x636737b6, 0x50f5b616, 0xf24766e3, 0x8eca36c1, -0x136e05db, 0xfef18391, 0xfb887a37, 0xd6e7f7d4, 0xc7fb7dc9, 0x3063fcdf, 0xb6f589de, 0xec2941da, -0x26e46695, 0xb7566419, 0xf654efc5, 0xd08d58b7, 0x48925401, 0xc1bacb7f, 0xe5ff550f, 0xb6083049, -0x5bb5d0e8, 0x87d72e5a, 0xab6a6ee1, 0x223a66ce, 0xc62bf3cd, 0x9e0885f9, 0x68cb3e47, 0x086c010f, -0xa21de820, 0xd18b69de, 0xf3f65777, 0xfa02c3f6, 0x407edac3, 0xcbb3d550, 0x1793084d, 0xb0d70eba, -0x0ab378d5, 0xd951fb0c, 0xded7da56, 0x4124bbe4, 0x94ca0b56, 0x0f5755d1, 0xe0e1e56e, 0x6184b5be, -0x580a249f, 0x94f74bc0, 0xe327888e, 0x9f7b5561, 0xc3dc0280, 0x05687715, 0x646c6bd7, 0x44904db3, -0x66b4f0a3, 0xc0f1648a, 0x697ed5af, 0x49e92ff6, 0x309e374f, 0x2cb6356a, 0x85808573, 0x4991f840, -0x76f0ae02, 0x083be84d, 0x28421c9a, 0x44489406, 0x736e4cb8, 0xc1092910, 0x8bc95fc6, 0x7d869cf4, -0x134f616f, 0x2e77118d, 0xb31b2be1, 0xaa90b472, 0x3ca5d717, 0x7d161bba, 0x9cad9010, 0xaf462ba2, -0x9fe459d2, 0x45d34559, 0xd9f2da13, 0xdbc65487, 0xf3e4f94e, 0x176d486f, 0x097c13ea, 0x631da5c7, -0x445f7382, 0x175683f4, 0xcdc66a97, 0x70be0288, 0xb3cdcf72, 0x6e5dd2f3, 0x20936079, 0x459b80a5, -0xbe60e2db, 0xa9c23101, 0xeba5315c, 0x224e42f2, 0x1c5c1572, 0xf6721b2c, 0x1ad2fff3, 0x8c25404e, -0x324ed72f, 0x4067b7fd, 0x0523138e, 0x5ca3bc78, 0xdc0fd66e, 0x75922283, 0x784d6b17, 0x58ebb16e, -0x44094f85, 0x3f481d87, 0xfcfeae7b, 0x77b5ff76, 0x8c2302bf, 0xaaf47556, 0x5f46b02a, 0x2b092801, -0x3d38f5f7, 0x0ca81f36, 0x52af4a8a, 0x66d5e7c0, 0xdf3b0874, 0x95055110, 0x1b5ad7a8, 0xf61ed5ad, -0x6cf6e479, 0x20758184, 0xd0cefa65, 0x88f7be58, 0x4a046826, 0x0ff6f8f3, 0xa09c7f70, 0x5346aba0, -0x5ce96c28, 0xe176eda3, 0x6bac307f, 0x376829d2, 0x85360fa9, 0x17e3fe2a, 0x24b79767, 0xf5a96b20, -0xd6cd2595, 0x68ff1ebf, 0x7555442c, 0xf19f06be, 0xf9e0659a, 0xeeb9491d, 0x34010718, 0xbb30cab8, -0xe822fe15, 0x88570983, 0x750e6249, 0xda627e55, 0x5e76ffa8, 0xb1534546, 0x6d47de08, 0xefe9e7d4 -}; -static const u32 s6[256] = { -0xf6fa8f9d, 0x2cac6ce1, 0x4ca34867, 0xe2337f7c, 0x95db08e7, 0x016843b4, 0xeced5cbc, 0x325553ac, -0xbf9f0960, 0xdfa1e2ed, 0x83f0579d, 0x63ed86b9, 0x1ab6a6b8, 0xde5ebe39, 0xf38ff732, 0x8989b138, -0x33f14961, 0xc01937bd, 0xf506c6da, 0xe4625e7e, 0xa308ea99, 0x4e23e33c, 0x79cbd7cc, 0x48a14367, -0xa3149619, 0xfec94bd5, 0xa114174a, 0xeaa01866, 0xa084db2d, 0x09a8486f, 0xa888614a, 0x2900af98, -0x01665991, 0xe1992863, 0xc8f30c60, 0x2e78ef3c, 0xd0d51932, 0xcf0fec14, 0xf7ca07d2, 0xd0a82072, -0xfd41197e, 0x9305a6b0, 0xe86be3da, 0x74bed3cd, 0x372da53c, 0x4c7f4448, 0xdab5d440, 0x6dba0ec3, -0x083919a7, 0x9fbaeed9, 0x49dbcfb0, 0x4e670c53, 0x5c3d9c01, 0x64bdb941, 0x2c0e636a, 0xba7dd9cd, -0xea6f7388, 0xe70bc762, 0x35f29adb, 0x5c4cdd8d, 0xf0d48d8c, 0xb88153e2, 0x08a19866, 0x1ae2eac8, -0x284caf89, 0xaa928223, 0x9334be53, 0x3b3a21bf, 0x16434be3, 0x9aea3906, 0xefe8c36e, 0xf890cdd9, -0x80226dae, 0xc340a4a3, 0xdf7e9c09, 0xa694a807, 0x5b7c5ecc, 0x221db3a6, 0x9a69a02f, 0x68818a54, -0xceb2296f, 0x53c0843a, 0xfe893655, 0x25bfe68a, 0xb4628abc, 0xcf222ebf, 0x25ac6f48, 0xa9a99387, -0x53bddb65, 0xe76ffbe7, 0xe967fd78, 0x0ba93563, 0x8e342bc1, 0xe8a11be9, 0x4980740d, 0xc8087dfc, -0x8de4bf99, 0xa11101a0, 0x7fd37975, 0xda5a26c0, 0xe81f994f, 0x9528cd89, 0xfd339fed, 0xb87834bf, -0x5f04456d, 0x22258698, 0xc9c4c83b, 0x2dc156be, 0x4f628daa, 0x57f55ec5, 0xe2220abe, 0xd2916ebf, -0x4ec75b95, 0x24f2c3c0, 0x42d15d99, 0xcd0d7fa0, 0x7b6e27ff, 0xa8dc8af0, 0x7345c106, 0xf41e232f, -0x35162386, 0xe6ea8926, 0x3333b094, 0x157ec6f2, 0x372b74af, 0x692573e4, 0xe9a9d848, 0xf3160289, -0x3a62ef1d, 0xa787e238, 0xf3a5f676, 0x74364853, 0x20951063, 0x4576698d, 0xb6fad407, 0x592af950, -0x36f73523, 0x4cfb6e87, 0x7da4cec0, 0x6c152daa, 0xcb0396a8, 0xc50dfe5d, 0xfcd707ab, 0x0921c42f, -0x89dff0bb, 0x5fe2be78, 0x448f4f33, 0x754613c9, 0x2b05d08d, 0x48b9d585, 0xdc049441, 0xc8098f9b, -0x7dede786, 0xc39a3373, 0x42410005, 0x6a091751, 0x0ef3c8a6, 0x890072d6, 0x28207682, 0xa9a9f7be, -0xbf32679d, 0xd45b5b75, 0xb353fd00, 0xcbb0e358, 0x830f220a, 0x1f8fb214, 0xd372cf08, 0xcc3c4a13, -0x8cf63166, 0x061c87be, 0x88c98f88, 0x6062e397, 0x47cf8e7a, 0xb6c85283, 0x3cc2acfb, 0x3fc06976, -0x4e8f0252, 0x64d8314d, 0xda3870e3, 0x1e665459, 0xc10908f0, 0x513021a5, 0x6c5b68b7, 0x822f8aa0, -0x3007cd3e, 0x74719eef, 0xdc872681, 0x073340d4, 0x7e432fd9, 0x0c5ec241, 0x8809286c, 0xf592d891, -0x08a930f6, 0x957ef305, 0xb7fbffbd, 0xc266e96f, 0x6fe4ac98, 0xb173ecc0, 0xbc60b42a, 0x953498da, -0xfba1ae12, 0x2d4bd736, 0x0f25faab, 0xa4f3fceb, 0xe2969123, 0x257f0c3d, 0x9348af49, 0x361400bc, -0xe8816f4a, 0x3814f200, 0xa3f94043, 0x9c7a54c2, 0xbc704f57, 0xda41e7f9, 0xc25ad33a, 0x54f4a084, -0xb17f5505, 0x59357cbe, 0xedbd15c8, 0x7f97c5ab, 0xba5ac7b5, 0xb6f6deaf, 0x3a479c3a, 0x5302da25, -0x653d7e6a, 0x54268d49, 0x51a477ea, 0x5017d55b, 0xd7d25d88, 0x44136c76, 0x0404a8c8, 0xb8e5a121, -0xb81a928a, 0x60ed5869, 0x97c55b96, 0xeaec991b, 0x29935913, 0x01fdb7f1, 0x088e8dfa, 0x9ab6f6f5, -0x3b4cbf9f, 0x4a5de3ab, 0xe6051d35, 0xa0e1d855, 0xd36b4cf1, 0xf544edeb, 0xb0e93524, 0xbebb8fbd, -0xa2d762cf, 0x49c92f54, 0x38b5f331, 0x7128a454, 0x48392905, 0xa65b1db8, 0x851c97bd, 0xd675cf2f -}; -static const u32 s7[256] = { -0x85e04019, 0x332bf567, 0x662dbfff, 0xcfc65693, 0x2a8d7f6f, 0xab9bc912, 0xde6008a1, 0x2028da1f, -0x0227bce7, 0x4d642916, 0x18fac300, 0x50f18b82, 0x2cb2cb11, 0xb232e75c, 0x4b3695f2, 0xb28707de, -0xa05fbcf6, 0xcd4181e9, 0xe150210c, 0xe24ef1bd, 0xb168c381, 0xfde4e789, 0x5c79b0d8, 0x1e8bfd43, -0x4d495001, 0x38be4341, 0x913cee1d, 0x92a79c3f, 0x089766be, 0xbaeeadf4, 0x1286becf, 0xb6eacb19, -0x2660c200, 0x7565bde4, 0x64241f7a, 0x8248dca9, 0xc3b3ad66, 0x28136086, 0x0bd8dfa8, 0x356d1cf2, -0x107789be, 0xb3b2e9ce, 0x0502aa8f, 0x0bc0351e, 0x166bf52a, 0xeb12ff82, 0xe3486911, 0xd34d7516, -0x4e7b3aff, 0x5f43671b, 0x9cf6e037, 0x4981ac83, 0x334266ce, 0x8c9341b7, 0xd0d854c0, 0xcb3a6c88, -0x47bc2829, 0x4725ba37, 0xa66ad22b, 0x7ad61f1e, 0x0c5cbafa, 0x4437f107, 0xb6e79962, 0x42d2d816, -0x0a961288, 0xe1a5c06e, 0x13749e67, 0x72fc081a, 0xb1d139f7, 0xf9583745, 0xcf19df58, 0xbec3f756, -0xc06eba30, 0x07211b24, 0x45c28829, 0xc95e317f, 0xbc8ec511, 0x38bc46e9, 0xc6e6fa14, 0xbae8584a, -0xad4ebc46, 0x468f508b, 0x7829435f, 0xf124183b, 0x821dba9f, 0xaff60ff4, 0xea2c4e6d, 0x16e39264, -0x92544a8b, 0x009b4fc3, 0xaba68ced, 0x9ac96f78, 0x06a5b79a, 0xb2856e6e, 0x1aec3ca9, 0xbe838688, -0x0e0804e9, 0x55f1be56, 0xe7e5363b, 0xb3a1f25d, 0xf7debb85, 0x61fe033c, 0x16746233, 0x3c034c28, -0xda6d0c74, 0x79aac56c, 0x3ce4e1ad, 0x51f0c802, 0x98f8f35a, 0x1626a49f, 0xeed82b29, 0x1d382fe3, -0x0c4fb99a, 0xbb325778, 0x3ec6d97b, 0x6e77a6a9, 0xcb658b5c, 0xd45230c7, 0x2bd1408b, 0x60c03eb7, -0xb9068d78, 0xa33754f4, 0xf430c87d, 0xc8a71302, 0xb96d8c32, 0xebd4e7be, 0xbe8b9d2d, 0x7979fb06, -0xe7225308, 0x8b75cf77, 0x11ef8da4, 0xe083c858, 0x8d6b786f, 0x5a6317a6, 0xfa5cf7a0, 0x5dda0033, -0xf28ebfb0, 0xf5b9c310, 0xa0eac280, 0x08b9767a, 0xa3d9d2b0, 0x79d34217, 0x021a718d, 0x9ac6336a, -0x2711fd60, 0x438050e3, 0x069908a8, 0x3d7fedc4, 0x826d2bef, 0x4eeb8476, 0x488dcf25, 0x36c9d566, -0x28e74e41, 0xc2610aca, 0x3d49a9cf, 0xbae3b9df, 0xb65f8de6, 0x92aeaf64, 0x3ac7d5e6, 0x9ea80509, -0xf22b017d, 0xa4173f70, 0xdd1e16c3, 0x15e0d7f9, 0x50b1b887, 0x2b9f4fd5, 0x625aba82, 0x6a017962, -0x2ec01b9c, 0x15488aa9, 0xd716e740, 0x40055a2c, 0x93d29a22, 0xe32dbf9a, 0x058745b9, 0x3453dc1e, -0xd699296e, 0x496cff6f, 0x1c9f4986, 0xdfe2ed07, 0xb87242d1, 0x19de7eae, 0x053e561a, 0x15ad6f8c, -0x66626c1c, 0x7154c24c, 0xea082b2a, 0x93eb2939, 0x17dcb0f0, 0x58d4f2ae, 0x9ea294fb, 0x52cf564c, -0x9883fe66, 0x2ec40581, 0x763953c3, 0x01d6692e, 0xd3a0c108, 0xa1e7160e, 0xe4f2dfa6, 0x693ed285, -0x74904698, 0x4c2b0edd, 0x4f757656, 0x5d393378, 0xa132234f, 0x3d321c5d, 0xc3f5e194, 0x4b269301, -0xc79f022f, 0x3c997e7e, 0x5e4f9504, 0x3ffafbbd, 0x76f7ad0e, 0x296693f4, 0x3d1fce6f, 0xc61e45be, -0xd3b5ab34, 0xf72bf9b7, 0x1b0434c0, 0x4e72b567, 0x5592a33d, 0xb5229301, 0xcfd2a87f, 0x60aeb767, -0x1814386b, 0x30bcc33d, 0x38a0c07d, 0xfd1606f2, 0xc363519b, 0x589dd390, 0x5479f8e6, 0x1cb8d647, -0x97fd61a9, 0xea7759f4, 0x2d57539d, 0x569a58cf, 0xe84e63ad, 0x462e1b78, 0x6580f87e, 0xf3817914, -0x91da55f4, 0x40a230f3, 0xd1988f35, 0xb6e318d2, 0x3ffa50bc, 0x3d40f021, 0xc3c0bdae, 0x4958c24c, -0x518f36b2, 0x84b1d370, 0x0fedce83, 0x878ddada, 0xf2a279c7, 0x94e01be8, 0x90716f4b, 0x954b8aa3 -}; -static const u32 s8[256] = { -0xe216300d, 0xbbddfffc, 0xa7ebdabd, 0x35648095, 0x7789f8b7, 0xe6c1121b, 0x0e241600, 0x052ce8b5, -0x11a9cfb0, 0xe5952f11, 0xece7990a, 0x9386d174, 0x2a42931c, 0x76e38111, 0xb12def3a, 0x37ddddfc, -0xde9adeb1, 0x0a0cc32c, 0xbe197029, 0x84a00940, 0xbb243a0f, 0xb4d137cf, 0xb44e79f0, 0x049eedfd, -0x0b15a15d, 0x480d3168, 0x8bbbde5a, 0x669ded42, 0xc7ece831, 0x3f8f95e7, 0x72df191b, 0x7580330d, -0x94074251, 0x5c7dcdfa, 0xabbe6d63, 0xaa402164, 0xb301d40a, 0x02e7d1ca, 0x53571dae, 0x7a3182a2, -0x12a8ddec, 0xfdaa335d, 0x176f43e8, 0x71fb46d4, 0x38129022, 0xce949ad4, 0xb84769ad, 0x965bd862, -0x82f3d055, 0x66fb9767, 0x15b80b4e, 0x1d5b47a0, 0x4cfde06f, 0xc28ec4b8, 0x57e8726e, 0x647a78fc, -0x99865d44, 0x608bd593, 0x6c200e03, 0x39dc5ff6, 0x5d0b00a3, 0xae63aff2, 0x7e8bd632, 0x70108c0c, -0xbbd35049, 0x2998df04, 0x980cf42a, 0x9b6df491, 0x9e7edd53, 0x06918548, 0x58cb7e07, 0x3b74ef2e, -0x522fffb1, 0xd24708cc, 0x1c7e27cd, 0xa4eb215b, 0x3cf1d2e2, 0x19b47a38, 0x424f7618, 0x35856039, -0x9d17dee7, 0x27eb35e6, 0xc9aff67b, 0x36baf5b8, 0x09c467cd, 0xc18910b1, 0xe11dbf7b, 0x06cd1af8, -0x7170c608, 0x2d5e3354, 0xd4de495a, 0x64c6d006, 0xbcc0c62c, 0x3dd00db3, 0x708f8f34, 0x77d51b42, -0x264f620f, 0x24b8d2bf, 0x15c1b79e, 0x46a52564, 0xf8d7e54e, 0x3e378160, 0x7895cda5, 0x859c15a5, -0xe6459788, 0xc37bc75f, 0xdb07ba0c, 0x0676a3ab, 0x7f229b1e, 0x31842e7b, 0x24259fd7, 0xf8bef472, -0x835ffcb8, 0x6df4c1f2, 0x96f5b195, 0xfd0af0fc, 0xb0fe134c, 0xe2506d3d, 0x4f9b12ea, 0xf215f225, -0xa223736f, 0x9fb4c428, 0x25d04979, 0x34c713f8, 0xc4618187, 0xea7a6e98, 0x7cd16efc, 0x1436876c, -0xf1544107, 0xbedeee14, 0x56e9af27, 0xa04aa441, 0x3cf7c899, 0x92ecbae6, 0xdd67016d, 0x151682eb, -0xa842eedf, 0xfdba60b4, 0xf1907b75, 0x20e3030f, 0x24d8c29e, 0xe139673b, 0xefa63fb8, 0x71873054, -0xb6f2cf3b, 0x9f326442, 0xcb15a4cc, 0xb01a4504, 0xf1e47d8d, 0x844a1be5, 0xbae7dfdc, 0x42cbda70, -0xcd7dae0a, 0x57e85b7a, 0xd53f5af6, 0x20cf4d8c, 0xcea4d428, 0x79d130a4, 0x3486ebfb, 0x33d3cddc, -0x77853b53, 0x37effcb5, 0xc5068778, 0xe580b3e6, 0x4e68b8f4, 0xc5c8b37e, 0x0d809ea2, 0x398feb7c, -0x132a4f94, 0x43b7950e, 0x2fee7d1c, 0x223613bd, 0xdd06caa2, 0x37df932b, 0xc4248289, 0xacf3ebc3, -0x5715f6b7, 0xef3478dd, 0xf267616f, 0xc148cbe4, 0x9052815e, 0x5e410fab, 0xb48a2465, 0x2eda7fa4, -0xe87b40e4, 0xe98ea084, 0x5889e9e1, 0xefd390fc, 0xdd07d35b, 0xdb485694, 0x38d7e5b2, 0x57720101, -0x730edebc, 0x5b643113, 0x94917e4f, 0x503c2fba, 0x646f1282, 0x7523d24a, 0xe0779695, 0xf9c17a8f, -0x7a5b2121, 0xd187b896, 0x29263a4d, 0xba510cdf, 0x81f47c9f, 0xad1163ed, 0xea7b5965, 0x1a00726e, -0x11403092, 0x00da6d77, 0x4a0cdd61, 0xad1f4603, 0x605bdfb0, 0x9eedc364, 0x22ebe6a8, 0xcee7d28a, -0xa0e736a0, 0x5564a6b9, 0x10853209, 0xc7eb8f37, 0x2de705ca, 0x8951570f, 0xdf09822b, 0xbd691a6c, -0xaa12e4f2, 0x87451c0f, 0xe0f6a27a, 0x3ada4819, 0x4cf1764f, 0x0d771c2b, 0x67cdb156, 0x350d8384, -0x5938fa0f, 0x42399ef3, 0x36997b07, 0x0e84093d, 0x4aa93e61, 0x8360d87b, 0x1fa98b0c, 0x1149382c, -0xe97625a5, 0x0614d1b7, 0x0e25244b, 0x0c768347, 0x589e8d82, 0x0d2059d1, 0xa466bb1e, 0xf8da0a82, -0x04f19130, 0xba6e4ec0, 0x99265164, 0x1ee7230d, 0x50b2ad80, 0xeaee6801, 0x8db2a283, 0xea8bf59e -}; - - -#if defined(__GNUC__) && defined(__i386__) -static inline u32 -rol(int n, u32 x) -{ - __asm__("roll %%cl,%0" - :"=r" (x) - :"0" (x),"c" (n)); - return x; -} -#else -#define rol(n,x) ( ((x) << (n)) | ((x) >> (32-(n))) ) -#endif - -#define F1(D,m,r) ( (I = ((m) + (D))), (I=rol((r),I)), \ - (((s1[I >> 24] ^ s2[(I>>16)&0xff]) - s3[(I>>8)&0xff]) + s4[I&0xff]) ) -#define F2(D,m,r) ( (I = ((m) ^ (D))), (I=rol((r),I)), \ - (((s1[I >> 24] - s2[(I>>16)&0xff]) + s3[(I>>8)&0xff]) ^ s4[I&0xff]) ) -#define F3(D,m,r) ( (I = ((m) - (D))), (I=rol((r),I)), \ - (((s1[I >> 24] + s2[(I>>16)&0xff]) ^ s3[(I>>8)&0xff]) - s4[I&0xff]) ) - -static void -do_encrypt_block( CAST5_context *c, byte *outbuf, const byte *inbuf ) -{ - u32 l, r, t; - u32 I; /* used by the Fx macros */ - u32 *Km; - byte *Kr; - - Km = c->Km; - Kr = c->Kr; - - /* (L0,R0) <-- (m1...m64). (Split the plaintext into left and - * right 32-bit halves L0 = m1...m32 and R0 = m33...m64.) - */ - l = inbuf[0] << 24 | inbuf[1] << 16 | inbuf[2] << 8 | inbuf[3]; - r = inbuf[4] << 24 | inbuf[5] << 16 | inbuf[6] << 8 | inbuf[7]; - - /* (16 rounds) for i from 1 to 16, compute Li and Ri as follows: - * Li = Ri-1; - * Ri = Li-1 ^ f(Ri-1,Kmi,Kri), where f is defined in Section 2.2 - * Rounds 1, 4, 7, 10, 13, and 16 use f function Type 1. - * Rounds 2, 5, 8, 11, and 14 use f function Type 2. - * Rounds 3, 6, 9, 12, and 15 use f function Type 3. - */ - - t = l; l = r; r = t ^ F1(r, Km[ 0], Kr[ 0]); - t = l; l = r; r = t ^ F2(r, Km[ 1], Kr[ 1]); - t = l; l = r; r = t ^ F3(r, Km[ 2], Kr[ 2]); - t = l; l = r; r = t ^ F1(r, Km[ 3], Kr[ 3]); - t = l; l = r; r = t ^ F2(r, Km[ 4], Kr[ 4]); - t = l; l = r; r = t ^ F3(r, Km[ 5], Kr[ 5]); - t = l; l = r; r = t ^ F1(r, Km[ 6], Kr[ 6]); - t = l; l = r; r = t ^ F2(r, Km[ 7], Kr[ 7]); - t = l; l = r; r = t ^ F3(r, Km[ 8], Kr[ 8]); - t = l; l = r; r = t ^ F1(r, Km[ 9], Kr[ 9]); - t = l; l = r; r = t ^ F2(r, Km[10], Kr[10]); - t = l; l = r; r = t ^ F3(r, Km[11], Kr[11]); - t = l; l = r; r = t ^ F1(r, Km[12], Kr[12]); - t = l; l = r; r = t ^ F2(r, Km[13], Kr[13]); - t = l; l = r; r = t ^ F3(r, Km[14], Kr[14]); - t = l; l = r; r = t ^ F1(r, Km[15], Kr[15]); - - /* c1...c64 <-- (R16,L16). (Exchange final blocks L16, R16 and - * concatenate to form the ciphertext.) */ - outbuf[0] = (r >> 24) & 0xff; - outbuf[1] = (r >> 16) & 0xff; - outbuf[2] = (r >> 8) & 0xff; - outbuf[3] = r & 0xff; - outbuf[4] = (l >> 24) & 0xff; - outbuf[5] = (l >> 16) & 0xff; - outbuf[6] = (l >> 8) & 0xff; - outbuf[7] = l & 0xff; -} - -static void -encrypt_block (void *context , byte *outbuf, const byte *inbuf) -{ - CAST5_context *c = (CAST5_context *) context; - do_encrypt_block (c, outbuf, inbuf); - _gcry_burn_stack (20+4*sizeof(void*)); -} - - -static void -do_decrypt_block (CAST5_context *c, byte *outbuf, const byte *inbuf ) -{ - u32 l, r, t; - u32 I; - u32 *Km; - byte *Kr; - - Km = c->Km; - Kr = c->Kr; - - l = inbuf[0] << 24 | inbuf[1] << 16 | inbuf[2] << 8 | inbuf[3]; - r = inbuf[4] << 24 | inbuf[5] << 16 | inbuf[6] << 8 | inbuf[7]; - - t = l; l = r; r = t ^ F1(r, Km[15], Kr[15]); - t = l; l = r; r = t ^ F3(r, Km[14], Kr[14]); - t = l; l = r; r = t ^ F2(r, Km[13], Kr[13]); - t = l; l = r; r = t ^ F1(r, Km[12], Kr[12]); - t = l; l = r; r = t ^ F3(r, Km[11], Kr[11]); - t = l; l = r; r = t ^ F2(r, Km[10], Kr[10]); - t = l; l = r; r = t ^ F1(r, Km[ 9], Kr[ 9]); - t = l; l = r; r = t ^ F3(r, Km[ 8], Kr[ 8]); - t = l; l = r; r = t ^ F2(r, Km[ 7], Kr[ 7]); - t = l; l = r; r = t ^ F1(r, Km[ 6], Kr[ 6]); - t = l; l = r; r = t ^ F3(r, Km[ 5], Kr[ 5]); - t = l; l = r; r = t ^ F2(r, Km[ 4], Kr[ 4]); - t = l; l = r; r = t ^ F1(r, Km[ 3], Kr[ 3]); - t = l; l = r; r = t ^ F3(r, Km[ 2], Kr[ 2]); - t = l; l = r; r = t ^ F2(r, Km[ 1], Kr[ 1]); - t = l; l = r; r = t ^ F1(r, Km[ 0], Kr[ 0]); - - outbuf[0] = (r >> 24) & 0xff; - outbuf[1] = (r >> 16) & 0xff; - outbuf[2] = (r >> 8) & 0xff; - outbuf[3] = r & 0xff; - outbuf[4] = (l >> 24) & 0xff; - outbuf[5] = (l >> 16) & 0xff; - outbuf[6] = (l >> 8) & 0xff; - outbuf[7] = l & 0xff; -} - -static void -decrypt_block (void *context, byte *outbuf, const byte *inbuf) -{ - CAST5_context *c = (CAST5_context *) context; - do_decrypt_block (c, outbuf, inbuf); - _gcry_burn_stack (20+4*sizeof(void*)); -} - - - - -static void -key_schedule( u32 *x, u32 *z, u32 *k ) -{ - -#define xi(i) ((x[(i)/4] >> (8*(3-((i)%4)))) & 0xff) -#define zi(i) ((z[(i)/4] >> (8*(3-((i)%4)))) & 0xff) - - z[0] = x[0] ^ s5[xi(13)]^s6[xi(15)]^s7[xi(12)]^s8[xi(14)]^s7[xi( 8)]; - z[1] = x[2] ^ s5[zi( 0)]^s6[zi( 2)]^s7[zi( 1)]^s8[zi( 3)]^s8[xi(10)]; - z[2] = x[3] ^ s5[zi( 7)]^s6[zi( 6)]^s7[zi( 5)]^s8[zi( 4)]^s5[xi( 9)]; - z[3] = x[1] ^ s5[zi(10)]^s6[zi( 9)]^s7[zi(11)]^s8[zi( 8)]^s6[xi(11)]; - k[0] = s5[zi( 8)]^s6[zi( 9)]^s7[zi( 7)]^s8[zi( 6)]^s5[zi( 2)]; - k[1] = s5[zi(10)]^s6[zi(11)]^s7[zi( 5)]^s8[zi( 4)]^s6[zi( 6)]; - k[2] = s5[zi(12)]^s6[zi(13)]^s7[zi( 3)]^s8[zi( 2)]^s7[zi( 9)]; - k[3] = s5[zi(14)]^s6[zi(15)]^s7[zi( 1)]^s8[zi( 0)]^s8[zi(12)]; - - x[0] = z[2] ^ s5[zi( 5)]^s6[zi( 7)]^s7[zi( 4)]^s8[zi( 6)]^s7[zi( 0)]; - x[1] = z[0] ^ s5[xi( 0)]^s6[xi( 2)]^s7[xi( 1)]^s8[xi( 3)]^s8[zi( 2)]; - x[2] = z[1] ^ s5[xi( 7)]^s6[xi( 6)]^s7[xi( 5)]^s8[xi( 4)]^s5[zi( 1)]; - x[3] = z[3] ^ s5[xi(10)]^s6[xi( 9)]^s7[xi(11)]^s8[xi( 8)]^s6[zi( 3)]; - k[4] = s5[xi( 3)]^s6[xi( 2)]^s7[xi(12)]^s8[xi(13)]^s5[xi( 8)]; - k[5] = s5[xi( 1)]^s6[xi( 0)]^s7[xi(14)]^s8[xi(15)]^s6[xi(13)]; - k[6] = s5[xi( 7)]^s6[xi( 6)]^s7[xi( 8)]^s8[xi( 9)]^s7[xi( 3)]; - k[7] = s5[xi( 5)]^s6[xi( 4)]^s7[xi(10)]^s8[xi(11)]^s8[xi( 7)]; - - z[0] = x[0] ^ s5[xi(13)]^s6[xi(15)]^s7[xi(12)]^s8[xi(14)]^s7[xi( 8)]; - z[1] = x[2] ^ s5[zi( 0)]^s6[zi( 2)]^s7[zi( 1)]^s8[zi( 3)]^s8[xi(10)]; - z[2] = x[3] ^ s5[zi( 7)]^s6[zi( 6)]^s7[zi( 5)]^s8[zi( 4)]^s5[xi( 9)]; - z[3] = x[1] ^ s5[zi(10)]^s6[zi( 9)]^s7[zi(11)]^s8[zi( 8)]^s6[xi(11)]; - k[8] = s5[zi( 3)]^s6[zi( 2)]^s7[zi(12)]^s8[zi(13)]^s5[zi( 9)]; - k[9] = s5[zi( 1)]^s6[zi( 0)]^s7[zi(14)]^s8[zi(15)]^s6[zi(12)]; - k[10]= s5[zi( 7)]^s6[zi( 6)]^s7[zi( 8)]^s8[zi( 9)]^s7[zi( 2)]; - k[11]= s5[zi( 5)]^s6[zi( 4)]^s7[zi(10)]^s8[zi(11)]^s8[zi( 6)]; - - x[0] = z[2] ^ s5[zi( 5)]^s6[zi( 7)]^s7[zi( 4)]^s8[zi( 6)]^s7[zi( 0)]; - x[1] = z[0] ^ s5[xi( 0)]^s6[xi( 2)]^s7[xi( 1)]^s8[xi( 3)]^s8[zi( 2)]; - x[2] = z[1] ^ s5[xi( 7)]^s6[xi( 6)]^s7[xi( 5)]^s8[xi( 4)]^s5[zi( 1)]; - x[3] = z[3] ^ s5[xi(10)]^s6[xi( 9)]^s7[xi(11)]^s8[xi( 8)]^s6[zi( 3)]; - k[12]= s5[xi( 8)]^s6[xi( 9)]^s7[xi( 7)]^s8[xi( 6)]^s5[xi( 3)]; - k[13]= s5[xi(10)]^s6[xi(11)]^s7[xi( 5)]^s8[xi( 4)]^s6[xi( 7)]; - k[14]= s5[xi(12)]^s6[xi(13)]^s7[xi( 3)]^s8[xi( 2)]^s7[xi( 8)]; - k[15]= s5[xi(14)]^s6[xi(15)]^s7[xi( 1)]^s8[xi( 0)]^s8[xi(13)]; - -#undef xi -#undef zi -} - - -static gcry_err_code_t -do_cast_setkey( CAST5_context *c, const byte *key, unsigned keylen ) -{ - static int initialized; - static const char* selftest_failed; - int i; - u32 x[4]; - u32 z[4]; - u32 k[16]; - - if( !initialized ) - { - initialized = 1; - selftest_failed = selftest(); - if( selftest_failed ) - log_error ("CAST5 selftest failed (%s).\n", selftest_failed ); - } - if( selftest_failed ) - return GPG_ERR_SELFTEST_FAILED; - - if( keylen != 16 ) - return GPG_ERR_INV_KEYLEN; - - x[0] = key[0] << 24 | key[1] << 16 | key[2] << 8 | key[3]; - x[1] = key[4] << 24 | key[5] << 16 | key[6] << 8 | key[7]; - x[2] = key[8] << 24 | key[9] << 16 | key[10] << 8 | key[11]; - x[3] = key[12] << 24 | key[13] << 16 | key[14] << 8 | key[15]; - - key_schedule( x, z, k ); - for(i=0; i < 16; i++ ) - c->Km[i] = k[i]; - key_schedule( x, z, k ); - for(i=0; i < 16; i++ ) - c->Kr[i] = k[i] & 0x1f; - - memset(&x,0, sizeof x); - memset(&z,0, sizeof z); - memset(&k,0, sizeof k); - -#undef xi -#undef zi - return GPG_ERR_NO_ERROR; -} - -static gcry_err_code_t -cast_setkey (void *context, const byte *key, unsigned keylen ) -{ - CAST5_context *c = (CAST5_context *) context; - gcry_err_code_t rc = do_cast_setkey (c, key, keylen); - _gcry_burn_stack (96+7*sizeof(void*)); - return rc; -} - - -gcry_cipher_spec_t _gcry_cipher_spec_cast5 = - { - "CAST5", NULL, NULL, CAST5_BLOCKSIZE, 128, sizeof (CAST5_context), - cast_setkey, encrypt_block, decrypt_block - , -#ifdef GRUB_UTIL - .modname = "gcry_cast5", -#endif - }; - - -GRUB_MOD_INIT(gcry_cast5) -{ - grub_cipher_register (&_gcry_cipher_spec_cast5); -} - -GRUB_MOD_FINI(gcry_cast5) -{ - grub_cipher_unregister (&_gcry_cipher_spec_cast5); -} diff --git a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/cipher.h b/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/cipher.h deleted file mode 100644 index 73c67798d..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/cipher.h +++ /dev/null @@ -1,2 +0,0 @@ -#include -#include diff --git a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/crc.c b/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/crc.c deleted file mode 100644 index a92943213..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/crc.c +++ /dev/null @@ -1,826 +0,0 @@ -/* This file was automatically imported with - import_gcry.py. Please don't modify it */ -#include -GRUB_MOD_LICENSE ("GPLv3+"); -/* crc.c - Cyclic redundancy checks. - * Copyright (C) 2003 Free Software Foundation, Inc. - * - * This file is part of Libgcrypt. - * - * Libgcrypt is free software; you can redistribute it and/or modify - * it under the terms of the GNU Lesser General Public License as - * published by the Free Software Foundation; either version 2.1 of - * the License, or (at your option) any later version. - * - * Libgcrypt is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA - * - */ - - -#include "g10lib.h" -#include "cipher.h" - -#include "bithelp.h" -#include "bufhelp.h" - - -typedef struct -{ - u32 CRC; - byte buf[4]; -} -CRC_CONTEXT; - - -/* - * Code generated by universal_crc by Danjel McGougan - * - * CRC parameters used: - * bits: 32 - * poly: 0x04c11db7 - * init: 0xffffffff - * xor: 0xffffffff - * reverse: true - * non-direct: false - * - * CRC of the string "123456789" is 0xcbf43926 - */ - -static const u32 crc32_table[1024] = { - 0x00000000, 0x77073096, 0xee0e612c, 0x990951ba, - 0x076dc419, 0x706af48f, 0xe963a535, 0x9e6495a3, - 0x0edb8832, 0x79dcb8a4, 0xe0d5e91e, 0x97d2d988, - 0x09b64c2b, 0x7eb17cbd, 0xe7b82d07, 0x90bf1d91, - 0x1db71064, 0x6ab020f2, 0xf3b97148, 0x84be41de, - 0x1adad47d, 0x6ddde4eb, 0xf4d4b551, 0x83d385c7, - 0x136c9856, 0x646ba8c0, 0xfd62f97a, 0x8a65c9ec, - 0x14015c4f, 0x63066cd9, 0xfa0f3d63, 0x8d080df5, - 0x3b6e20c8, 0x4c69105e, 0xd56041e4, 0xa2677172, - 0x3c03e4d1, 0x4b04d447, 0xd20d85fd, 0xa50ab56b, - 0x35b5a8fa, 0x42b2986c, 0xdbbbc9d6, 0xacbcf940, - 0x32d86ce3, 0x45df5c75, 0xdcd60dcf, 0xabd13d59, - 0x26d930ac, 0x51de003a, 0xc8d75180, 0xbfd06116, - 0x21b4f4b5, 0x56b3c423, 0xcfba9599, 0xb8bda50f, - 0x2802b89e, 0x5f058808, 0xc60cd9b2, 0xb10be924, - 0x2f6f7c87, 0x58684c11, 0xc1611dab, 0xb6662d3d, - 0x76dc4190, 0x01db7106, 0x98d220bc, 0xefd5102a, - 0x71b18589, 0x06b6b51f, 0x9fbfe4a5, 0xe8b8d433, - 0x7807c9a2, 0x0f00f934, 0x9609a88e, 0xe10e9818, - 0x7f6a0dbb, 0x086d3d2d, 0x91646c97, 0xe6635c01, - 0x6b6b51f4, 0x1c6c6162, 0x856530d8, 0xf262004e, - 0x6c0695ed, 0x1b01a57b, 0x8208f4c1, 0xf50fc457, - 0x65b0d9c6, 0x12b7e950, 0x8bbeb8ea, 0xfcb9887c, - 0x62dd1ddf, 0x15da2d49, 0x8cd37cf3, 0xfbd44c65, - 0x4db26158, 0x3ab551ce, 0xa3bc0074, 0xd4bb30e2, - 0x4adfa541, 0x3dd895d7, 0xa4d1c46d, 0xd3d6f4fb, - 0x4369e96a, 0x346ed9fc, 0xad678846, 0xda60b8d0, - 0x44042d73, 0x33031de5, 0xaa0a4c5f, 0xdd0d7cc9, - 0x5005713c, 0x270241aa, 0xbe0b1010, 0xc90c2086, - 0x5768b525, 0x206f85b3, 0xb966d409, 0xce61e49f, - 0x5edef90e, 0x29d9c998, 0xb0d09822, 0xc7d7a8b4, - 0x59b33d17, 0x2eb40d81, 0xb7bd5c3b, 0xc0ba6cad, - 0xedb88320, 0x9abfb3b6, 0x03b6e20c, 0x74b1d29a, - 0xead54739, 0x9dd277af, 0x04db2615, 0x73dc1683, - 0xe3630b12, 0x94643b84, 0x0d6d6a3e, 0x7a6a5aa8, - 0xe40ecf0b, 0x9309ff9d, 0x0a00ae27, 0x7d079eb1, - 0xf00f9344, 0x8708a3d2, 0x1e01f268, 0x6906c2fe, - 0xf762575d, 0x806567cb, 0x196c3671, 0x6e6b06e7, - 0xfed41b76, 0x89d32be0, 0x10da7a5a, 0x67dd4acc, - 0xf9b9df6f, 0x8ebeeff9, 0x17b7be43, 0x60b08ed5, - 0xd6d6a3e8, 0xa1d1937e, 0x38d8c2c4, 0x4fdff252, - 0xd1bb67f1, 0xa6bc5767, 0x3fb506dd, 0x48b2364b, - 0xd80d2bda, 0xaf0a1b4c, 0x36034af6, 0x41047a60, - 0xdf60efc3, 0xa867df55, 0x316e8eef, 0x4669be79, - 0xcb61b38c, 0xbc66831a, 0x256fd2a0, 0x5268e236, - 0xcc0c7795, 0xbb0b4703, 0x220216b9, 0x5505262f, - 0xc5ba3bbe, 0xb2bd0b28, 0x2bb45a92, 0x5cb36a04, - 0xc2d7ffa7, 0xb5d0cf31, 0x2cd99e8b, 0x5bdeae1d, - 0x9b64c2b0, 0xec63f226, 0x756aa39c, 0x026d930a, - 0x9c0906a9, 0xeb0e363f, 0x72076785, 0x05005713, - 0x95bf4a82, 0xe2b87a14, 0x7bb12bae, 0x0cb61b38, - 0x92d28e9b, 0xe5d5be0d, 0x7cdcefb7, 0x0bdbdf21, - 0x86d3d2d4, 0xf1d4e242, 0x68ddb3f8, 0x1fda836e, - 0x81be16cd, 0xf6b9265b, 0x6fb077e1, 0x18b74777, - 0x88085ae6, 0xff0f6a70, 0x66063bca, 0x11010b5c, - 0x8f659eff, 0xf862ae69, 0x616bffd3, 0x166ccf45, - 0xa00ae278, 0xd70dd2ee, 0x4e048354, 0x3903b3c2, - 0xa7672661, 0xd06016f7, 0x4969474d, 0x3e6e77db, - 0xaed16a4a, 0xd9d65adc, 0x40df0b66, 0x37d83bf0, - 0xa9bcae53, 0xdebb9ec5, 0x47b2cf7f, 0x30b5ffe9, - 0xbdbdf21c, 0xcabac28a, 0x53b39330, 0x24b4a3a6, - 0xbad03605, 0xcdd70693, 0x54de5729, 0x23d967bf, - 0xb3667a2e, 0xc4614ab8, 0x5d681b02, 0x2a6f2b94, - 0xb40bbe37, 0xc30c8ea1, 0x5a05df1b, 0x2d02ef8d, - 0x00000000, 0x191b3141, 0x32366282, 0x2b2d53c3, - 0x646cc504, 0x7d77f445, 0x565aa786, 0x4f4196c7, - 0xc8d98a08, 0xd1c2bb49, 0xfaefe88a, 0xe3f4d9cb, - 0xacb54f0c, 0xb5ae7e4d, 0x9e832d8e, 0x87981ccf, - 0x4ac21251, 0x53d92310, 0x78f470d3, 0x61ef4192, - 0x2eaed755, 0x37b5e614, 0x1c98b5d7, 0x05838496, - 0x821b9859, 0x9b00a918, 0xb02dfadb, 0xa936cb9a, - 0xe6775d5d, 0xff6c6c1c, 0xd4413fdf, 0xcd5a0e9e, - 0x958424a2, 0x8c9f15e3, 0xa7b24620, 0xbea97761, - 0xf1e8e1a6, 0xe8f3d0e7, 0xc3de8324, 0xdac5b265, - 0x5d5daeaa, 0x44469feb, 0x6f6bcc28, 0x7670fd69, - 0x39316bae, 0x202a5aef, 0x0b07092c, 0x121c386d, - 0xdf4636f3, 0xc65d07b2, 0xed705471, 0xf46b6530, - 0xbb2af3f7, 0xa231c2b6, 0x891c9175, 0x9007a034, - 0x179fbcfb, 0x0e848dba, 0x25a9de79, 0x3cb2ef38, - 0x73f379ff, 0x6ae848be, 0x41c51b7d, 0x58de2a3c, - 0xf0794f05, 0xe9627e44, 0xc24f2d87, 0xdb541cc6, - 0x94158a01, 0x8d0ebb40, 0xa623e883, 0xbf38d9c2, - 0x38a0c50d, 0x21bbf44c, 0x0a96a78f, 0x138d96ce, - 0x5ccc0009, 0x45d73148, 0x6efa628b, 0x77e153ca, - 0xbabb5d54, 0xa3a06c15, 0x888d3fd6, 0x91960e97, - 0xded79850, 0xc7cca911, 0xece1fad2, 0xf5facb93, - 0x7262d75c, 0x6b79e61d, 0x4054b5de, 0x594f849f, - 0x160e1258, 0x0f152319, 0x243870da, 0x3d23419b, - 0x65fd6ba7, 0x7ce65ae6, 0x57cb0925, 0x4ed03864, - 0x0191aea3, 0x188a9fe2, 0x33a7cc21, 0x2abcfd60, - 0xad24e1af, 0xb43fd0ee, 0x9f12832d, 0x8609b26c, - 0xc94824ab, 0xd05315ea, 0xfb7e4629, 0xe2657768, - 0x2f3f79f6, 0x362448b7, 0x1d091b74, 0x04122a35, - 0x4b53bcf2, 0x52488db3, 0x7965de70, 0x607eef31, - 0xe7e6f3fe, 0xfefdc2bf, 0xd5d0917c, 0xcccba03d, - 0x838a36fa, 0x9a9107bb, 0xb1bc5478, 0xa8a76539, - 0x3b83984b, 0x2298a90a, 0x09b5fac9, 0x10aecb88, - 0x5fef5d4f, 0x46f46c0e, 0x6dd93fcd, 0x74c20e8c, - 0xf35a1243, 0xea412302, 0xc16c70c1, 0xd8774180, - 0x9736d747, 0x8e2de606, 0xa500b5c5, 0xbc1b8484, - 0x71418a1a, 0x685abb5b, 0x4377e898, 0x5a6cd9d9, - 0x152d4f1e, 0x0c367e5f, 0x271b2d9c, 0x3e001cdd, - 0xb9980012, 0xa0833153, 0x8bae6290, 0x92b553d1, - 0xddf4c516, 0xc4eff457, 0xefc2a794, 0xf6d996d5, - 0xae07bce9, 0xb71c8da8, 0x9c31de6b, 0x852aef2a, - 0xca6b79ed, 0xd37048ac, 0xf85d1b6f, 0xe1462a2e, - 0x66de36e1, 0x7fc507a0, 0x54e85463, 0x4df36522, - 0x02b2f3e5, 0x1ba9c2a4, 0x30849167, 0x299fa026, - 0xe4c5aeb8, 0xfdde9ff9, 0xd6f3cc3a, 0xcfe8fd7b, - 0x80a96bbc, 0x99b25afd, 0xb29f093e, 0xab84387f, - 0x2c1c24b0, 0x350715f1, 0x1e2a4632, 0x07317773, - 0x4870e1b4, 0x516bd0f5, 0x7a468336, 0x635db277, - 0xcbfad74e, 0xd2e1e60f, 0xf9ccb5cc, 0xe0d7848d, - 0xaf96124a, 0xb68d230b, 0x9da070c8, 0x84bb4189, - 0x03235d46, 0x1a386c07, 0x31153fc4, 0x280e0e85, - 0x674f9842, 0x7e54a903, 0x5579fac0, 0x4c62cb81, - 0x8138c51f, 0x9823f45e, 0xb30ea79d, 0xaa1596dc, - 0xe554001b, 0xfc4f315a, 0xd7626299, 0xce7953d8, - 0x49e14f17, 0x50fa7e56, 0x7bd72d95, 0x62cc1cd4, - 0x2d8d8a13, 0x3496bb52, 0x1fbbe891, 0x06a0d9d0, - 0x5e7ef3ec, 0x4765c2ad, 0x6c48916e, 0x7553a02f, - 0x3a1236e8, 0x230907a9, 0x0824546a, 0x113f652b, - 0x96a779e4, 0x8fbc48a5, 0xa4911b66, 0xbd8a2a27, - 0xf2cbbce0, 0xebd08da1, 0xc0fdde62, 0xd9e6ef23, - 0x14bce1bd, 0x0da7d0fc, 0x268a833f, 0x3f91b27e, - 0x70d024b9, 0x69cb15f8, 0x42e6463b, 0x5bfd777a, - 0xdc656bb5, 0xc57e5af4, 0xee530937, 0xf7483876, - 0xb809aeb1, 0xa1129ff0, 0x8a3fcc33, 0x9324fd72, - 0x00000000, 0x01c26a37, 0x0384d46e, 0x0246be59, - 0x0709a8dc, 0x06cbc2eb, 0x048d7cb2, 0x054f1685, - 0x0e1351b8, 0x0fd13b8f, 0x0d9785d6, 0x0c55efe1, - 0x091af964, 0x08d89353, 0x0a9e2d0a, 0x0b5c473d, - 0x1c26a370, 0x1de4c947, 0x1fa2771e, 0x1e601d29, - 0x1b2f0bac, 0x1aed619b, 0x18abdfc2, 0x1969b5f5, - 0x1235f2c8, 0x13f798ff, 0x11b126a6, 0x10734c91, - 0x153c5a14, 0x14fe3023, 0x16b88e7a, 0x177ae44d, - 0x384d46e0, 0x398f2cd7, 0x3bc9928e, 0x3a0bf8b9, - 0x3f44ee3c, 0x3e86840b, 0x3cc03a52, 0x3d025065, - 0x365e1758, 0x379c7d6f, 0x35dac336, 0x3418a901, - 0x3157bf84, 0x3095d5b3, 0x32d36bea, 0x331101dd, - 0x246be590, 0x25a98fa7, 0x27ef31fe, 0x262d5bc9, - 0x23624d4c, 0x22a0277b, 0x20e69922, 0x2124f315, - 0x2a78b428, 0x2bbade1f, 0x29fc6046, 0x283e0a71, - 0x2d711cf4, 0x2cb376c3, 0x2ef5c89a, 0x2f37a2ad, - 0x709a8dc0, 0x7158e7f7, 0x731e59ae, 0x72dc3399, - 0x7793251c, 0x76514f2b, 0x7417f172, 0x75d59b45, - 0x7e89dc78, 0x7f4bb64f, 0x7d0d0816, 0x7ccf6221, - 0x798074a4, 0x78421e93, 0x7a04a0ca, 0x7bc6cafd, - 0x6cbc2eb0, 0x6d7e4487, 0x6f38fade, 0x6efa90e9, - 0x6bb5866c, 0x6a77ec5b, 0x68315202, 0x69f33835, - 0x62af7f08, 0x636d153f, 0x612bab66, 0x60e9c151, - 0x65a6d7d4, 0x6464bde3, 0x662203ba, 0x67e0698d, - 0x48d7cb20, 0x4915a117, 0x4b531f4e, 0x4a917579, - 0x4fde63fc, 0x4e1c09cb, 0x4c5ab792, 0x4d98dda5, - 0x46c49a98, 0x4706f0af, 0x45404ef6, 0x448224c1, - 0x41cd3244, 0x400f5873, 0x4249e62a, 0x438b8c1d, - 0x54f16850, 0x55330267, 0x5775bc3e, 0x56b7d609, - 0x53f8c08c, 0x523aaabb, 0x507c14e2, 0x51be7ed5, - 0x5ae239e8, 0x5b2053df, 0x5966ed86, 0x58a487b1, - 0x5deb9134, 0x5c29fb03, 0x5e6f455a, 0x5fad2f6d, - 0xe1351b80, 0xe0f771b7, 0xe2b1cfee, 0xe373a5d9, - 0xe63cb35c, 0xe7fed96b, 0xe5b86732, 0xe47a0d05, - 0xef264a38, 0xeee4200f, 0xeca29e56, 0xed60f461, - 0xe82fe2e4, 0xe9ed88d3, 0xebab368a, 0xea695cbd, - 0xfd13b8f0, 0xfcd1d2c7, 0xfe976c9e, 0xff5506a9, - 0xfa1a102c, 0xfbd87a1b, 0xf99ec442, 0xf85cae75, - 0xf300e948, 0xf2c2837f, 0xf0843d26, 0xf1465711, - 0xf4094194, 0xf5cb2ba3, 0xf78d95fa, 0xf64fffcd, - 0xd9785d60, 0xd8ba3757, 0xdafc890e, 0xdb3ee339, - 0xde71f5bc, 0xdfb39f8b, 0xddf521d2, 0xdc374be5, - 0xd76b0cd8, 0xd6a966ef, 0xd4efd8b6, 0xd52db281, - 0xd062a404, 0xd1a0ce33, 0xd3e6706a, 0xd2241a5d, - 0xc55efe10, 0xc49c9427, 0xc6da2a7e, 0xc7184049, - 0xc25756cc, 0xc3953cfb, 0xc1d382a2, 0xc011e895, - 0xcb4dafa8, 0xca8fc59f, 0xc8c97bc6, 0xc90b11f1, - 0xcc440774, 0xcd866d43, 0xcfc0d31a, 0xce02b92d, - 0x91af9640, 0x906dfc77, 0x922b422e, 0x93e92819, - 0x96a63e9c, 0x976454ab, 0x9522eaf2, 0x94e080c5, - 0x9fbcc7f8, 0x9e7eadcf, 0x9c381396, 0x9dfa79a1, - 0x98b56f24, 0x99770513, 0x9b31bb4a, 0x9af3d17d, - 0x8d893530, 0x8c4b5f07, 0x8e0de15e, 0x8fcf8b69, - 0x8a809dec, 0x8b42f7db, 0x89044982, 0x88c623b5, - 0x839a6488, 0x82580ebf, 0x801eb0e6, 0x81dcdad1, - 0x8493cc54, 0x8551a663, 0x8717183a, 0x86d5720d, - 0xa9e2d0a0, 0xa820ba97, 0xaa6604ce, 0xaba46ef9, - 0xaeeb787c, 0xaf29124b, 0xad6fac12, 0xacadc625, - 0xa7f18118, 0xa633eb2f, 0xa4755576, 0xa5b73f41, - 0xa0f829c4, 0xa13a43f3, 0xa37cfdaa, 0xa2be979d, - 0xb5c473d0, 0xb40619e7, 0xb640a7be, 0xb782cd89, - 0xb2cddb0c, 0xb30fb13b, 0xb1490f62, 0xb08b6555, - 0xbbd72268, 0xba15485f, 0xb853f606, 0xb9919c31, - 0xbcde8ab4, 0xbd1ce083, 0xbf5a5eda, 0xbe9834ed, - 0x00000000, 0xb8bc6765, 0xaa09c88b, 0x12b5afee, - 0x8f629757, 0x37def032, 0x256b5fdc, 0x9dd738b9, - 0xc5b428ef, 0x7d084f8a, 0x6fbde064, 0xd7018701, - 0x4ad6bfb8, 0xf26ad8dd, 0xe0df7733, 0x58631056, - 0x5019579f, 0xe8a530fa, 0xfa109f14, 0x42acf871, - 0xdf7bc0c8, 0x67c7a7ad, 0x75720843, 0xcdce6f26, - 0x95ad7f70, 0x2d111815, 0x3fa4b7fb, 0x8718d09e, - 0x1acfe827, 0xa2738f42, 0xb0c620ac, 0x087a47c9, - 0xa032af3e, 0x188ec85b, 0x0a3b67b5, 0xb28700d0, - 0x2f503869, 0x97ec5f0c, 0x8559f0e2, 0x3de59787, - 0x658687d1, 0xdd3ae0b4, 0xcf8f4f5a, 0x7733283f, - 0xeae41086, 0x525877e3, 0x40edd80d, 0xf851bf68, - 0xf02bf8a1, 0x48979fc4, 0x5a22302a, 0xe29e574f, - 0x7f496ff6, 0xc7f50893, 0xd540a77d, 0x6dfcc018, - 0x359fd04e, 0x8d23b72b, 0x9f9618c5, 0x272a7fa0, - 0xbafd4719, 0x0241207c, 0x10f48f92, 0xa848e8f7, - 0x9b14583d, 0x23a83f58, 0x311d90b6, 0x89a1f7d3, - 0x1476cf6a, 0xaccaa80f, 0xbe7f07e1, 0x06c36084, - 0x5ea070d2, 0xe61c17b7, 0xf4a9b859, 0x4c15df3c, - 0xd1c2e785, 0x697e80e0, 0x7bcb2f0e, 0xc377486b, - 0xcb0d0fa2, 0x73b168c7, 0x6104c729, 0xd9b8a04c, - 0x446f98f5, 0xfcd3ff90, 0xee66507e, 0x56da371b, - 0x0eb9274d, 0xb6054028, 0xa4b0efc6, 0x1c0c88a3, - 0x81dbb01a, 0x3967d77f, 0x2bd27891, 0x936e1ff4, - 0x3b26f703, 0x839a9066, 0x912f3f88, 0x299358ed, - 0xb4446054, 0x0cf80731, 0x1e4da8df, 0xa6f1cfba, - 0xfe92dfec, 0x462eb889, 0x549b1767, 0xec277002, - 0x71f048bb, 0xc94c2fde, 0xdbf98030, 0x6345e755, - 0x6b3fa09c, 0xd383c7f9, 0xc1366817, 0x798a0f72, - 0xe45d37cb, 0x5ce150ae, 0x4e54ff40, 0xf6e89825, - 0xae8b8873, 0x1637ef16, 0x048240f8, 0xbc3e279d, - 0x21e91f24, 0x99557841, 0x8be0d7af, 0x335cb0ca, - 0xed59b63b, 0x55e5d15e, 0x47507eb0, 0xffec19d5, - 0x623b216c, 0xda874609, 0xc832e9e7, 0x708e8e82, - 0x28ed9ed4, 0x9051f9b1, 0x82e4565f, 0x3a58313a, - 0xa78f0983, 0x1f336ee6, 0x0d86c108, 0xb53aa66d, - 0xbd40e1a4, 0x05fc86c1, 0x1749292f, 0xaff54e4a, - 0x322276f3, 0x8a9e1196, 0x982bbe78, 0x2097d91d, - 0x78f4c94b, 0xc048ae2e, 0xd2fd01c0, 0x6a4166a5, - 0xf7965e1c, 0x4f2a3979, 0x5d9f9697, 0xe523f1f2, - 0x4d6b1905, 0xf5d77e60, 0xe762d18e, 0x5fdeb6eb, - 0xc2098e52, 0x7ab5e937, 0x680046d9, 0xd0bc21bc, - 0x88df31ea, 0x3063568f, 0x22d6f961, 0x9a6a9e04, - 0x07bda6bd, 0xbf01c1d8, 0xadb46e36, 0x15080953, - 0x1d724e9a, 0xa5ce29ff, 0xb77b8611, 0x0fc7e174, - 0x9210d9cd, 0x2aacbea8, 0x38191146, 0x80a57623, - 0xd8c66675, 0x607a0110, 0x72cfaefe, 0xca73c99b, - 0x57a4f122, 0xef189647, 0xfdad39a9, 0x45115ecc, - 0x764dee06, 0xcef18963, 0xdc44268d, 0x64f841e8, - 0xf92f7951, 0x41931e34, 0x5326b1da, 0xeb9ad6bf, - 0xb3f9c6e9, 0x0b45a18c, 0x19f00e62, 0xa14c6907, - 0x3c9b51be, 0x842736db, 0x96929935, 0x2e2efe50, - 0x2654b999, 0x9ee8defc, 0x8c5d7112, 0x34e11677, - 0xa9362ece, 0x118a49ab, 0x033fe645, 0xbb838120, - 0xe3e09176, 0x5b5cf613, 0x49e959fd, 0xf1553e98, - 0x6c820621, 0xd43e6144, 0xc68bceaa, 0x7e37a9cf, - 0xd67f4138, 0x6ec3265d, 0x7c7689b3, 0xc4caeed6, - 0x591dd66f, 0xe1a1b10a, 0xf3141ee4, 0x4ba87981, - 0x13cb69d7, 0xab770eb2, 0xb9c2a15c, 0x017ec639, - 0x9ca9fe80, 0x241599e5, 0x36a0360b, 0x8e1c516e, - 0x866616a7, 0x3eda71c2, 0x2c6fde2c, 0x94d3b949, - 0x090481f0, 0xb1b8e695, 0xa30d497b, 0x1bb12e1e, - 0x43d23e48, 0xfb6e592d, 0xe9dbf6c3, 0x516791a6, - 0xccb0a91f, 0x740cce7a, 0x66b96194, 0xde0506f1 -}; - -/* CRC32 */ - -static inline u32 -crc32_next (u32 crc, byte data) -{ - return (crc >> 8) ^ crc32_table[(crc & 0xff) ^ data]; -} - -/* - * Process 4 bytes in one go - */ -static inline u32 -crc32_next4 (u32 crc, u32 data) -{ - crc ^= data; - crc = crc32_table[(crc & 0xff) + 0x300] ^ - crc32_table[((crc >> 8) & 0xff) + 0x200] ^ - crc32_table[((crc >> 16) & 0xff) + 0x100] ^ - crc32_table[(crc >> 24) & 0xff]; - return crc; -} - -static void -crc32_init (void *context) -{ - CRC_CONTEXT *ctx = (CRC_CONTEXT *) context; - ctx->CRC = 0 ^ 0xffffffffL; -} - -static void -crc32_write (void *context, const void *inbuf_arg, size_t inlen) -{ - CRC_CONTEXT *ctx = (CRC_CONTEXT *) context; - const byte *inbuf = inbuf_arg; - u32 crc; - - if (!inbuf || !inlen) - return; - - crc = ctx->CRC; - - while (inlen >= 16) - { - inlen -= 16; - crc = crc32_next4(crc, buf_get_le32(&inbuf[0])); - crc = crc32_next4(crc, buf_get_le32(&inbuf[4])); - crc = crc32_next4(crc, buf_get_le32(&inbuf[8])); - crc = crc32_next4(crc, buf_get_le32(&inbuf[12])); - inbuf += 16; - } - - while (inlen >= 4) - { - inlen -= 4; - crc = crc32_next4(crc, buf_get_le32(inbuf)); - inbuf += 4; - } - - while (inlen--) - { - crc = crc32_next(crc, *inbuf++); - } - - ctx->CRC = crc; -} - -static byte * -crc32_read (void *context) -{ - CRC_CONTEXT *ctx = (CRC_CONTEXT *) context; - return ctx->buf; -} - -static void -crc32_final (void *context) -{ - CRC_CONTEXT *ctx = (CRC_CONTEXT *) context; - ctx->CRC ^= 0xffffffffL; - buf_put_be32 (ctx->buf, ctx->CRC); -} - -/* CRC32 a'la RFC 1510 */ -/* CRC of the string "123456789" is 0x2dfd2d88 */ - -static void -crc32rfc1510_init (void *context) -{ - CRC_CONTEXT *ctx = (CRC_CONTEXT *) context; - ctx->CRC = 0; -} - -static void -crc32rfc1510_final (void *context) -{ - CRC_CONTEXT *ctx = (CRC_CONTEXT *) context; - buf_put_be32(ctx->buf, ctx->CRC); -} - -/* CRC24 a'la RFC 2440 */ -/* - * Code generated by universal_crc by Danjel McGougan - * - * CRC parameters used: - * bits: 24 - * poly: 0x864cfb - * init: 0xb704ce - * xor: 0x000000 - * reverse: false - * non-direct: false - * - * CRC of the string "123456789" is 0x21cf02 - */ - -static const u32 crc24_table[1024] = -{ - 0x00000000, 0x00fb4c86, 0x000dd58a, 0x00f6990c, - 0x00e1e693, 0x001aaa15, 0x00ec3319, 0x00177f9f, - 0x003981a1, 0x00c2cd27, 0x0034542b, 0x00cf18ad, - 0x00d86732, 0x00232bb4, 0x00d5b2b8, 0x002efe3e, - 0x00894ec5, 0x00720243, 0x00849b4f, 0x007fd7c9, - 0x0068a856, 0x0093e4d0, 0x00657ddc, 0x009e315a, - 0x00b0cf64, 0x004b83e2, 0x00bd1aee, 0x00465668, - 0x005129f7, 0x00aa6571, 0x005cfc7d, 0x00a7b0fb, - 0x00e9d10c, 0x00129d8a, 0x00e40486, 0x001f4800, - 0x0008379f, 0x00f37b19, 0x0005e215, 0x00feae93, - 0x00d050ad, 0x002b1c2b, 0x00dd8527, 0x0026c9a1, - 0x0031b63e, 0x00cafab8, 0x003c63b4, 0x00c72f32, - 0x00609fc9, 0x009bd34f, 0x006d4a43, 0x009606c5, - 0x0081795a, 0x007a35dc, 0x008cacd0, 0x0077e056, - 0x00591e68, 0x00a252ee, 0x0054cbe2, 0x00af8764, - 0x00b8f8fb, 0x0043b47d, 0x00b52d71, 0x004e61f7, - 0x00d2a319, 0x0029ef9f, 0x00df7693, 0x00243a15, - 0x0033458a, 0x00c8090c, 0x003e9000, 0x00c5dc86, - 0x00eb22b8, 0x00106e3e, 0x00e6f732, 0x001dbbb4, - 0x000ac42b, 0x00f188ad, 0x000711a1, 0x00fc5d27, - 0x005beddc, 0x00a0a15a, 0x00563856, 0x00ad74d0, - 0x00ba0b4f, 0x004147c9, 0x00b7dec5, 0x004c9243, - 0x00626c7d, 0x009920fb, 0x006fb9f7, 0x0094f571, - 0x00838aee, 0x0078c668, 0x008e5f64, 0x007513e2, - 0x003b7215, 0x00c03e93, 0x0036a79f, 0x00cdeb19, - 0x00da9486, 0x0021d800, 0x00d7410c, 0x002c0d8a, - 0x0002f3b4, 0x00f9bf32, 0x000f263e, 0x00f46ab8, - 0x00e31527, 0x001859a1, 0x00eec0ad, 0x00158c2b, - 0x00b23cd0, 0x00497056, 0x00bfe95a, 0x0044a5dc, - 0x0053da43, 0x00a896c5, 0x005e0fc9, 0x00a5434f, - 0x008bbd71, 0x0070f1f7, 0x008668fb, 0x007d247d, - 0x006a5be2, 0x00911764, 0x00678e68, 0x009cc2ee, - 0x00a44733, 0x005f0bb5, 0x00a992b9, 0x0052de3f, - 0x0045a1a0, 0x00beed26, 0x0048742a, 0x00b338ac, - 0x009dc692, 0x00668a14, 0x00901318, 0x006b5f9e, - 0x007c2001, 0x00876c87, 0x0071f58b, 0x008ab90d, - 0x002d09f6, 0x00d64570, 0x0020dc7c, 0x00db90fa, - 0x00ccef65, 0x0037a3e3, 0x00c13aef, 0x003a7669, - 0x00148857, 0x00efc4d1, 0x00195ddd, 0x00e2115b, - 0x00f56ec4, 0x000e2242, 0x00f8bb4e, 0x0003f7c8, - 0x004d963f, 0x00b6dab9, 0x004043b5, 0x00bb0f33, - 0x00ac70ac, 0x00573c2a, 0x00a1a526, 0x005ae9a0, - 0x0074179e, 0x008f5b18, 0x0079c214, 0x00828e92, - 0x0095f10d, 0x006ebd8b, 0x00982487, 0x00636801, - 0x00c4d8fa, 0x003f947c, 0x00c90d70, 0x003241f6, - 0x00253e69, 0x00de72ef, 0x0028ebe3, 0x00d3a765, - 0x00fd595b, 0x000615dd, 0x00f08cd1, 0x000bc057, - 0x001cbfc8, 0x00e7f34e, 0x00116a42, 0x00ea26c4, - 0x0076e42a, 0x008da8ac, 0x007b31a0, 0x00807d26, - 0x009702b9, 0x006c4e3f, 0x009ad733, 0x00619bb5, - 0x004f658b, 0x00b4290d, 0x0042b001, 0x00b9fc87, - 0x00ae8318, 0x0055cf9e, 0x00a35692, 0x00581a14, - 0x00ffaaef, 0x0004e669, 0x00f27f65, 0x000933e3, - 0x001e4c7c, 0x00e500fa, 0x001399f6, 0x00e8d570, - 0x00c62b4e, 0x003d67c8, 0x00cbfec4, 0x0030b242, - 0x0027cddd, 0x00dc815b, 0x002a1857, 0x00d154d1, - 0x009f3526, 0x006479a0, 0x0092e0ac, 0x0069ac2a, - 0x007ed3b5, 0x00859f33, 0x0073063f, 0x00884ab9, - 0x00a6b487, 0x005df801, 0x00ab610d, 0x00502d8b, - 0x00475214, 0x00bc1e92, 0x004a879e, 0x00b1cb18, - 0x00167be3, 0x00ed3765, 0x001bae69, 0x00e0e2ef, - 0x00f79d70, 0x000cd1f6, 0x00fa48fa, 0x0001047c, - 0x002ffa42, 0x00d4b6c4, 0x00222fc8, 0x00d9634e, - 0x00ce1cd1, 0x00355057, 0x00c3c95b, 0x003885dd, - 0x00000000, 0x00488f66, 0x00901ecd, 0x00d891ab, - 0x00db711c, 0x0093fe7a, 0x004b6fd1, 0x0003e0b7, - 0x00b6e338, 0x00fe6c5e, 0x0026fdf5, 0x006e7293, - 0x006d9224, 0x00251d42, 0x00fd8ce9, 0x00b5038f, - 0x006cc771, 0x00244817, 0x00fcd9bc, 0x00b456da, - 0x00b7b66d, 0x00ff390b, 0x0027a8a0, 0x006f27c6, - 0x00da2449, 0x0092ab2f, 0x004a3a84, 0x0002b5e2, - 0x00015555, 0x0049da33, 0x00914b98, 0x00d9c4fe, - 0x00d88ee3, 0x00900185, 0x0048902e, 0x00001f48, - 0x0003ffff, 0x004b7099, 0x0093e132, 0x00db6e54, - 0x006e6ddb, 0x0026e2bd, 0x00fe7316, 0x00b6fc70, - 0x00b51cc7, 0x00fd93a1, 0x0025020a, 0x006d8d6c, - 0x00b44992, 0x00fcc6f4, 0x0024575f, 0x006cd839, - 0x006f388e, 0x0027b7e8, 0x00ff2643, 0x00b7a925, - 0x0002aaaa, 0x004a25cc, 0x0092b467, 0x00da3b01, - 0x00d9dbb6, 0x009154d0, 0x0049c57b, 0x00014a1d, - 0x004b5141, 0x0003de27, 0x00db4f8c, 0x0093c0ea, - 0x0090205d, 0x00d8af3b, 0x00003e90, 0x0048b1f6, - 0x00fdb279, 0x00b53d1f, 0x006dacb4, 0x002523d2, - 0x0026c365, 0x006e4c03, 0x00b6dda8, 0x00fe52ce, - 0x00279630, 0x006f1956, 0x00b788fd, 0x00ff079b, - 0x00fce72c, 0x00b4684a, 0x006cf9e1, 0x00247687, - 0x00917508, 0x00d9fa6e, 0x00016bc5, 0x0049e4a3, - 0x004a0414, 0x00028b72, 0x00da1ad9, 0x009295bf, - 0x0093dfa2, 0x00db50c4, 0x0003c16f, 0x004b4e09, - 0x0048aebe, 0x000021d8, 0x00d8b073, 0x00903f15, - 0x00253c9a, 0x006db3fc, 0x00b52257, 0x00fdad31, - 0x00fe4d86, 0x00b6c2e0, 0x006e534b, 0x0026dc2d, - 0x00ff18d3, 0x00b797b5, 0x006f061e, 0x00278978, - 0x002469cf, 0x006ce6a9, 0x00b47702, 0x00fcf864, - 0x0049fbeb, 0x0001748d, 0x00d9e526, 0x00916a40, - 0x00928af7, 0x00da0591, 0x0002943a, 0x004a1b5c, - 0x0096a282, 0x00de2de4, 0x0006bc4f, 0x004e3329, - 0x004dd39e, 0x00055cf8, 0x00ddcd53, 0x00954235, - 0x002041ba, 0x0068cedc, 0x00b05f77, 0x00f8d011, - 0x00fb30a6, 0x00b3bfc0, 0x006b2e6b, 0x0023a10d, - 0x00fa65f3, 0x00b2ea95, 0x006a7b3e, 0x0022f458, - 0x002114ef, 0x00699b89, 0x00b10a22, 0x00f98544, - 0x004c86cb, 0x000409ad, 0x00dc9806, 0x00941760, - 0x0097f7d7, 0x00df78b1, 0x0007e91a, 0x004f667c, - 0x004e2c61, 0x0006a307, 0x00de32ac, 0x0096bdca, - 0x00955d7d, 0x00ddd21b, 0x000543b0, 0x004dccd6, - 0x00f8cf59, 0x00b0403f, 0x0068d194, 0x00205ef2, - 0x0023be45, 0x006b3123, 0x00b3a088, 0x00fb2fee, - 0x0022eb10, 0x006a6476, 0x00b2f5dd, 0x00fa7abb, - 0x00f99a0c, 0x00b1156a, 0x006984c1, 0x00210ba7, - 0x00940828, 0x00dc874e, 0x000416e5, 0x004c9983, - 0x004f7934, 0x0007f652, 0x00df67f9, 0x0097e89f, - 0x00ddf3c3, 0x00957ca5, 0x004ded0e, 0x00056268, - 0x000682df, 0x004e0db9, 0x00969c12, 0x00de1374, - 0x006b10fb, 0x00239f9d, 0x00fb0e36, 0x00b38150, - 0x00b061e7, 0x00f8ee81, 0x00207f2a, 0x0068f04c, - 0x00b134b2, 0x00f9bbd4, 0x00212a7f, 0x0069a519, - 0x006a45ae, 0x0022cac8, 0x00fa5b63, 0x00b2d405, - 0x0007d78a, 0x004f58ec, 0x0097c947, 0x00df4621, - 0x00dca696, 0x009429f0, 0x004cb85b, 0x0004373d, - 0x00057d20, 0x004df246, 0x009563ed, 0x00ddec8b, - 0x00de0c3c, 0x0096835a, 0x004e12f1, 0x00069d97, - 0x00b39e18, 0x00fb117e, 0x002380d5, 0x006b0fb3, - 0x0068ef04, 0x00206062, 0x00f8f1c9, 0x00b07eaf, - 0x0069ba51, 0x00213537, 0x00f9a49c, 0x00b12bfa, - 0x00b2cb4d, 0x00fa442b, 0x0022d580, 0x006a5ae6, - 0x00df5969, 0x0097d60f, 0x004f47a4, 0x0007c8c2, - 0x00042875, 0x004ca713, 0x009436b8, 0x00dcb9de, - 0x00000000, 0x00d70983, 0x00555f80, 0x00825603, - 0x0051f286, 0x0086fb05, 0x0004ad06, 0x00d3a485, - 0x0059a88b, 0x008ea108, 0x000cf70b, 0x00dbfe88, - 0x00085a0d, 0x00df538e, 0x005d058d, 0x008a0c0e, - 0x00491c91, 0x009e1512, 0x001c4311, 0x00cb4a92, - 0x0018ee17, 0x00cfe794, 0x004db197, 0x009ab814, - 0x0010b41a, 0x00c7bd99, 0x0045eb9a, 0x0092e219, - 0x0041469c, 0x00964f1f, 0x0014191c, 0x00c3109f, - 0x006974a4, 0x00be7d27, 0x003c2b24, 0x00eb22a7, - 0x00388622, 0x00ef8fa1, 0x006dd9a2, 0x00bad021, - 0x0030dc2f, 0x00e7d5ac, 0x006583af, 0x00b28a2c, - 0x00612ea9, 0x00b6272a, 0x00347129, 0x00e378aa, - 0x00206835, 0x00f761b6, 0x007537b5, 0x00a23e36, - 0x00719ab3, 0x00a69330, 0x0024c533, 0x00f3ccb0, - 0x0079c0be, 0x00aec93d, 0x002c9f3e, 0x00fb96bd, - 0x00283238, 0x00ff3bbb, 0x007d6db8, 0x00aa643b, - 0x0029a4ce, 0x00fead4d, 0x007cfb4e, 0x00abf2cd, - 0x00785648, 0x00af5fcb, 0x002d09c8, 0x00fa004b, - 0x00700c45, 0x00a705c6, 0x002553c5, 0x00f25a46, - 0x0021fec3, 0x00f6f740, 0x0074a143, 0x00a3a8c0, - 0x0060b85f, 0x00b7b1dc, 0x0035e7df, 0x00e2ee5c, - 0x00314ad9, 0x00e6435a, 0x00641559, 0x00b31cda, - 0x003910d4, 0x00ee1957, 0x006c4f54, 0x00bb46d7, - 0x0068e252, 0x00bfebd1, 0x003dbdd2, 0x00eab451, - 0x0040d06a, 0x0097d9e9, 0x00158fea, 0x00c28669, - 0x001122ec, 0x00c62b6f, 0x00447d6c, 0x009374ef, - 0x001978e1, 0x00ce7162, 0x004c2761, 0x009b2ee2, - 0x00488a67, 0x009f83e4, 0x001dd5e7, 0x00cadc64, - 0x0009ccfb, 0x00dec578, 0x005c937b, 0x008b9af8, - 0x00583e7d, 0x008f37fe, 0x000d61fd, 0x00da687e, - 0x00506470, 0x00876df3, 0x00053bf0, 0x00d23273, - 0x000196f6, 0x00d69f75, 0x0054c976, 0x0083c0f5, - 0x00a9041b, 0x007e0d98, 0x00fc5b9b, 0x002b5218, - 0x00f8f69d, 0x002fff1e, 0x00ada91d, 0x007aa09e, - 0x00f0ac90, 0x0027a513, 0x00a5f310, 0x0072fa93, - 0x00a15e16, 0x00765795, 0x00f40196, 0x00230815, - 0x00e0188a, 0x00371109, 0x00b5470a, 0x00624e89, - 0x00b1ea0c, 0x0066e38f, 0x00e4b58c, 0x0033bc0f, - 0x00b9b001, 0x006eb982, 0x00ecef81, 0x003be602, - 0x00e84287, 0x003f4b04, 0x00bd1d07, 0x006a1484, - 0x00c070bf, 0x0017793c, 0x00952f3f, 0x004226bc, - 0x00918239, 0x00468bba, 0x00c4ddb9, 0x0013d43a, - 0x0099d834, 0x004ed1b7, 0x00cc87b4, 0x001b8e37, - 0x00c82ab2, 0x001f2331, 0x009d7532, 0x004a7cb1, - 0x00896c2e, 0x005e65ad, 0x00dc33ae, 0x000b3a2d, - 0x00d89ea8, 0x000f972b, 0x008dc128, 0x005ac8ab, - 0x00d0c4a5, 0x0007cd26, 0x00859b25, 0x005292a6, - 0x00813623, 0x00563fa0, 0x00d469a3, 0x00036020, - 0x0080a0d5, 0x0057a956, 0x00d5ff55, 0x0002f6d6, - 0x00d15253, 0x00065bd0, 0x00840dd3, 0x00530450, - 0x00d9085e, 0x000e01dd, 0x008c57de, 0x005b5e5d, - 0x0088fad8, 0x005ff35b, 0x00dda558, 0x000aacdb, - 0x00c9bc44, 0x001eb5c7, 0x009ce3c4, 0x004bea47, - 0x00984ec2, 0x004f4741, 0x00cd1142, 0x001a18c1, - 0x009014cf, 0x00471d4c, 0x00c54b4f, 0x001242cc, - 0x00c1e649, 0x0016efca, 0x0094b9c9, 0x0043b04a, - 0x00e9d471, 0x003eddf2, 0x00bc8bf1, 0x006b8272, - 0x00b826f7, 0x006f2f74, 0x00ed7977, 0x003a70f4, - 0x00b07cfa, 0x00677579, 0x00e5237a, 0x00322af9, - 0x00e18e7c, 0x003687ff, 0x00b4d1fc, 0x0063d87f, - 0x00a0c8e0, 0x0077c163, 0x00f59760, 0x00229ee3, - 0x00f13a66, 0x002633e5, 0x00a465e6, 0x00736c65, - 0x00f9606b, 0x002e69e8, 0x00ac3feb, 0x007b3668, - 0x00a892ed, 0x007f9b6e, 0x00fdcd6d, 0x002ac4ee, - 0x00000000, 0x00520936, 0x00a4126c, 0x00f61b5a, - 0x004825d8, 0x001a2cee, 0x00ec37b4, 0x00be3e82, - 0x006b0636, 0x00390f00, 0x00cf145a, 0x009d1d6c, - 0x002323ee, 0x00712ad8, 0x00873182, 0x00d538b4, - 0x00d60c6c, 0x0084055a, 0x00721e00, 0x00201736, - 0x009e29b4, 0x00cc2082, 0x003a3bd8, 0x006832ee, - 0x00bd0a5a, 0x00ef036c, 0x00191836, 0x004b1100, - 0x00f52f82, 0x00a726b4, 0x00513dee, 0x000334d8, - 0x00ac19d8, 0x00fe10ee, 0x00080bb4, 0x005a0282, - 0x00e43c00, 0x00b63536, 0x00402e6c, 0x0012275a, - 0x00c71fee, 0x009516d8, 0x00630d82, 0x003104b4, - 0x008f3a36, 0x00dd3300, 0x002b285a, 0x0079216c, - 0x007a15b4, 0x00281c82, 0x00de07d8, 0x008c0eee, - 0x0032306c, 0x0060395a, 0x00962200, 0x00c42b36, - 0x00111382, 0x00431ab4, 0x00b501ee, 0x00e708d8, - 0x0059365a, 0x000b3f6c, 0x00fd2436, 0x00af2d00, - 0x00a37f36, 0x00f17600, 0x00076d5a, 0x0055646c, - 0x00eb5aee, 0x00b953d8, 0x004f4882, 0x001d41b4, - 0x00c87900, 0x009a7036, 0x006c6b6c, 0x003e625a, - 0x00805cd8, 0x00d255ee, 0x00244eb4, 0x00764782, - 0x0075735a, 0x00277a6c, 0x00d16136, 0x00836800, - 0x003d5682, 0x006f5fb4, 0x009944ee, 0x00cb4dd8, - 0x001e756c, 0x004c7c5a, 0x00ba6700, 0x00e86e36, - 0x005650b4, 0x00045982, 0x00f242d8, 0x00a04bee, - 0x000f66ee, 0x005d6fd8, 0x00ab7482, 0x00f97db4, - 0x00474336, 0x00154a00, 0x00e3515a, 0x00b1586c, - 0x006460d8, 0x003669ee, 0x00c072b4, 0x00927b82, - 0x002c4500, 0x007e4c36, 0x0088576c, 0x00da5e5a, - 0x00d96a82, 0x008b63b4, 0x007d78ee, 0x002f71d8, - 0x00914f5a, 0x00c3466c, 0x00355d36, 0x00675400, - 0x00b26cb4, 0x00e06582, 0x00167ed8, 0x004477ee, - 0x00fa496c, 0x00a8405a, 0x005e5b00, 0x000c5236, - 0x0046ff6c, 0x0014f65a, 0x00e2ed00, 0x00b0e436, - 0x000edab4, 0x005cd382, 0x00aac8d8, 0x00f8c1ee, - 0x002df95a, 0x007ff06c, 0x0089eb36, 0x00dbe200, - 0x0065dc82, 0x0037d5b4, 0x00c1ceee, 0x0093c7d8, - 0x0090f300, 0x00c2fa36, 0x0034e16c, 0x0066e85a, - 0x00d8d6d8, 0x008adfee, 0x007cc4b4, 0x002ecd82, - 0x00fbf536, 0x00a9fc00, 0x005fe75a, 0x000dee6c, - 0x00b3d0ee, 0x00e1d9d8, 0x0017c282, 0x0045cbb4, - 0x00eae6b4, 0x00b8ef82, 0x004ef4d8, 0x001cfdee, - 0x00a2c36c, 0x00f0ca5a, 0x0006d100, 0x0054d836, - 0x0081e082, 0x00d3e9b4, 0x0025f2ee, 0x0077fbd8, - 0x00c9c55a, 0x009bcc6c, 0x006dd736, 0x003fde00, - 0x003cead8, 0x006ee3ee, 0x0098f8b4, 0x00caf182, - 0x0074cf00, 0x0026c636, 0x00d0dd6c, 0x0082d45a, - 0x0057ecee, 0x0005e5d8, 0x00f3fe82, 0x00a1f7b4, - 0x001fc936, 0x004dc000, 0x00bbdb5a, 0x00e9d26c, - 0x00e5805a, 0x00b7896c, 0x00419236, 0x00139b00, - 0x00ada582, 0x00ffacb4, 0x0009b7ee, 0x005bbed8, - 0x008e866c, 0x00dc8f5a, 0x002a9400, 0x00789d36, - 0x00c6a3b4, 0x0094aa82, 0x0062b1d8, 0x0030b8ee, - 0x00338c36, 0x00618500, 0x00979e5a, 0x00c5976c, - 0x007ba9ee, 0x0029a0d8, 0x00dfbb82, 0x008db2b4, - 0x00588a00, 0x000a8336, 0x00fc986c, 0x00ae915a, - 0x0010afd8, 0x0042a6ee, 0x00b4bdb4, 0x00e6b482, - 0x00499982, 0x001b90b4, 0x00ed8bee, 0x00bf82d8, - 0x0001bc5a, 0x0053b56c, 0x00a5ae36, 0x00f7a700, - 0x00229fb4, 0x00709682, 0x00868dd8, 0x00d484ee, - 0x006aba6c, 0x0038b35a, 0x00cea800, 0x009ca136, - 0x009f95ee, 0x00cd9cd8, 0x003b8782, 0x00698eb4, - 0x00d7b036, 0x0085b900, 0x0073a25a, 0x0021ab6c, - 0x00f493d8, 0x00a69aee, 0x005081b4, 0x00028882, - 0x00bcb600, 0x00eebf36, 0x0018a46c, 0x004aad5a -}; - -static inline -u32 crc24_init (void) -{ - return 0xce04b7; -} - -static inline -u32 crc24_next (u32 crc, byte data) -{ - return (crc >> 8) ^ crc24_table[(crc & 0xff) ^ data]; -} - -/* - * Process 4 bytes in one go - */ -static inline -u32 crc24_next4 (u32 crc, u32 data) -{ - crc ^= data; - crc = crc24_table[(crc & 0xff) + 0x300] ^ - crc24_table[((crc >> 8) & 0xff) + 0x200] ^ - crc24_table[((crc >> 16) & 0xff) + 0x100] ^ - crc24_table[(crc >> 24) & 0xff]; - return crc; -} - -static inline -u32 crc24_final (u32 crc) -{ - return crc & 0xffffff; -} - -static void -crc24rfc2440_init (void *context) -{ - CRC_CONTEXT *ctx = (CRC_CONTEXT *) context; - ctx->CRC = crc24_init(); -} - -static void -crc24rfc2440_write (void *context, const void *inbuf_arg, size_t inlen) -{ - const unsigned char *inbuf = inbuf_arg; - CRC_CONTEXT *ctx = (CRC_CONTEXT *) context; - u32 crc; - - if (!inbuf || !inlen) - return; - - crc = ctx->CRC; - - while (inlen >= 16) - { - inlen -= 16; - crc = crc24_next4(crc, buf_get_le32(&inbuf[0])); - crc = crc24_next4(crc, buf_get_le32(&inbuf[4])); - crc = crc24_next4(crc, buf_get_le32(&inbuf[8])); - crc = crc24_next4(crc, buf_get_le32(&inbuf[12])); - inbuf += 16; - } - - while (inlen >= 4) - { - inlen -= 4; - crc = crc24_next4(crc, buf_get_le32(inbuf)); - inbuf += 4; - } - - while (inlen--) - { - crc = crc24_next(crc, *inbuf++); - } - - ctx->CRC = crc; -} - -static void -crc24rfc2440_final (void *context) -{ - CRC_CONTEXT *ctx = (CRC_CONTEXT *) context; - ctx->CRC = crc24_final(ctx->CRC); - buf_put_le32 (ctx->buf, ctx->CRC); -} - -gcry_md_spec_t _gcry_digest_spec_crc32 = - { - "CRC32", NULL, 0, NULL, 4, - crc32_init, crc32_write, crc32_final, crc32_read, - sizeof (CRC_CONTEXT) - , -#ifdef GRUB_UTIL - .modname = "gcry_crc", -#endif - .blocksize = 64 - }; - -gcry_md_spec_t _gcry_digest_spec_crc32_rfc1510 = - { - "CRC32RFC1510", NULL, 0, NULL, 4, - crc32rfc1510_init, crc32_write, - crc32rfc1510_final, crc32_read, - sizeof (CRC_CONTEXT) - , -#ifdef GRUB_UTIL - .modname = "gcry_crc", -#endif - .blocksize = 64 - }; - -gcry_md_spec_t _gcry_digest_spec_crc24_rfc2440 = - { - "CRC24RFC2440", NULL, 0, NULL, 3, - crc24rfc2440_init, crc24rfc2440_write, - crc24rfc2440_final, crc32_read, - sizeof (CRC_CONTEXT) - , -#ifdef GRUB_UTIL - .modname = "gcry_crc", -#endif - .blocksize = 64 - }; - - -GRUB_MOD_INIT(gcry_crc) -{ - COMPILE_TIME_ASSERT(sizeof (CRC_CONTEXT) <= GRUB_CRYPTO_MAX_MD_CONTEXT_SIZE); - COMPILE_TIME_ASSERT(sizeof (CRC_CONTEXT) <= GRUB_CRYPTO_MAX_MD_CONTEXT_SIZE); - COMPILE_TIME_ASSERT(sizeof (CRC_CONTEXT) <= GRUB_CRYPTO_MAX_MD_CONTEXT_SIZE); - grub_md_register (&_gcry_digest_spec_crc32); - grub_md_register (&_gcry_digest_spec_crc32_rfc1510); - grub_md_register (&_gcry_digest_spec_crc24_rfc2440); -} - -GRUB_MOD_FINI(gcry_crc) -{ - grub_md_unregister (&_gcry_digest_spec_crc32); - grub_md_unregister (&_gcry_digest_spec_crc32_rfc1510); - grub_md_unregister (&_gcry_digest_spec_crc24_rfc2440); -} diff --git a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/crypto.lst b/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/crypto.lst deleted file mode 100644 index 77d9efc01..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/crypto.lst +++ /dev/null @@ -1,45 +0,0 @@ -RIJNDAEL: gcry_rijndael -RIJNDAEL192: gcry_rijndael -RIJNDAEL256: gcry_rijndael -AES128: gcry_rijndael -AES-128: gcry_rijndael -AES-192: gcry_rijndael -AES-256: gcry_rijndael -ADLER32: adler32 -CRC64: crc64 -ARCFOUR: gcry_arcfour -BLOWFISH: gcry_blowfish -CAMELLIA128: gcry_camellia -CAMELLIA192: gcry_camellia -CAMELLIA256: gcry_camellia -CAST5: gcry_cast5 -CRC32: gcry_crc -CRC32RFC1510: gcry_crc -CRC24RFC2440: gcry_crc -DES: gcry_des -3DES: gcry_des -DSA: gcry_dsa -IDEA: gcry_idea -MD4: gcry_md4 -MD5: gcry_md5 -RFC2268_40: gcry_rfc2268 -AES: gcry_rijndael -AES192: gcry_rijndael -AES256: gcry_rijndael -RIPEMD160: gcry_rmd160 -RSA: gcry_rsa -SEED: gcry_seed -SERPENT128: gcry_serpent -SERPENT192: gcry_serpent -SERPENT256: gcry_serpent -SHA1: gcry_sha1 -SHA224: gcry_sha256 -SHA256: gcry_sha256 -SHA512: gcry_sha512 -SHA384: gcry_sha512 -TIGER192: gcry_tiger -TIGER: gcry_tiger -TIGER2: gcry_tiger -TWOFISH: gcry_twofish -TWOFISH128: gcry_twofish -WHIRLPOOL: gcry_whirlpool diff --git a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/des.c b/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/des.c deleted file mode 100644 index 09521e8e8..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/des.c +++ /dev/null @@ -1,929 +0,0 @@ -/* This file was automatically imported with - import_gcry.py. Please don't modify it */ -#include -GRUB_MOD_LICENSE ("GPLv3+"); -/* des.c - DES and Triple-DES encryption/decryption Algorithm - * Copyright (C) 1998, 1999, 2001, 2002, 2003, - * 2008 Free Software Foundation, Inc. - * - * This file is part of Libgcrypt. - * - * Libgcrypt is free software; you can redistribute it and/or modify - * it under the terms of the GNU Lesser general Public License as - * published by the Free Software Foundation; either version 2.1 of - * the License, or (at your option) any later version. - * - * Libgcrypt is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA - * - * For a description of triple encryption, see: - * Bruce Schneier: Applied Cryptography. Second Edition. - * John Wiley & Sons, 1996. ISBN 0-471-12845-7. Pages 358 ff. - * This implementation is according to the definition of DES in FIPS - * PUB 46-2 from December 1993. - */ - - -/* - * Written by Michael Roth , September 1998 - */ - - -/* - * U S A G E - * =========== - * - * For DES or Triple-DES encryption/decryption you must initialize a proper - * encryption context with a key. - * - * A DES key is 64bit wide but only 56bits of the key are used. The remaining - * bits are parity bits and they will _not_ checked in this implementation, but - * simply ignored. - * - * For Triple-DES you could use either two 64bit keys or three 64bit keys. - * The parity bits will _not_ checked, too. - * - * After initializing a context with a key you could use this context to - * encrypt or decrypt data in 64bit blocks in Electronic Codebook Mode. - * - * (In the examples below the slashes at the beginning and ending of comments - * are omited.) - * - * DES Example - * ----------- - * unsigned char key[8]; - * unsigned char plaintext[8]; - * unsigned char ciphertext[8]; - * unsigned char recoverd[8]; - * des_ctx context; - * - * * Fill 'key' and 'plaintext' with some data * - * .... - * - * * Set up the DES encryption context * - * des_setkey(context, key); - * - * * Encrypt the plaintext * - * des_ecb_encrypt(context, plaintext, ciphertext); - * - * * To recover the orginal plaintext from ciphertext use: * - * des_ecb_decrypt(context, ciphertext, recoverd); - * - * - * Triple-DES Example - * ------------------ - * unsigned char key1[8]; - * unsigned char key2[8]; - * unsigned char key3[8]; - * unsigned char plaintext[8]; - * unsigned char ciphertext[8]; - * unsigned char recoverd[8]; - * tripledes_ctx context; - * - * * If you would like to use two 64bit keys, fill 'key1' and'key2' - * then setup the encryption context: * - * tripledes_set2keys(context, key1, key2); - * - * * To use three 64bit keys with Triple-DES use: * - * tripledes_set3keys(context, key1, key2, key3); - * - * * Encrypting plaintext with Triple-DES * - * tripledes_ecb_encrypt(context, plaintext, ciphertext); - * - * * Decrypting ciphertext to recover the plaintext with Triple-DES * - * tripledes_ecb_decrypt(context, ciphertext, recoverd); - * - * - * Selftest - * -------- - * char *error_msg; - * - * * To perform a selftest of this DES/Triple-DES implementation use the - * function selftest(). It will return an error string if there are - * some problems with this library. * - * - * if ( (error_msg = selftest()) ) - * { - * fprintf(stderr, "An error in the DES/Triple-DES implementation occurred: %s\n", error_msg); - * abort(); - * } - */ - - -#include "types.h" /* for byte and u32 typedefs */ -#include "g10lib.h" -#include "cipher.h" - -#if defined(__GNUC__) && defined(__GNU_LIBRARY__) -#define working_memcmp memcmp -#else -/* - * According to the SunOS man page, memcmp returns indeterminate sign - * depending on whether characters are signed or not. - */ -static int -working_memcmp( const char *a, const char *b, size_t n ) -{ - for( ; n; n--, a++, b++ ) - if( *a != *b ) - return (int)(*(byte*)a) - (int)(*(byte*)b); - return 0; -} -#endif - -/* - * Encryption/Decryption context of DES - */ -typedef struct _des_ctx - { - u32 encrypt_subkeys[32]; - u32 decrypt_subkeys[32]; - } -des_ctx[1]; - -/* - * Encryption/Decryption context of Triple-DES - */ -typedef struct _tripledes_ctx - { - u32 encrypt_subkeys[96]; - u32 decrypt_subkeys[96]; - struct { - int no_weak_key; - } flags; - } -tripledes_ctx[1]; - -static void des_key_schedule (const byte *, u32 *); -static int des_setkey (struct _des_ctx *, const byte *); -static int des_ecb_crypt (struct _des_ctx *, const byte *, byte *, int); -static int tripledes_ecb_crypt (struct _tripledes_ctx *, - const byte *, byte *, int); -static int is_weak_key ( const byte *key ); - -static int initialized; - - - - -/* - * The s-box values are permuted according to the 'primitive function P' - * and are rotated one bit to the left. - */ -static u32 sbox1[64] = -{ - 0x01010400, 0x00000000, 0x00010000, 0x01010404, 0x01010004, 0x00010404, 0x00000004, 0x00010000, - 0x00000400, 0x01010400, 0x01010404, 0x00000400, 0x01000404, 0x01010004, 0x01000000, 0x00000004, - 0x00000404, 0x01000400, 0x01000400, 0x00010400, 0x00010400, 0x01010000, 0x01010000, 0x01000404, - 0x00010004, 0x01000004, 0x01000004, 0x00010004, 0x00000000, 0x00000404, 0x00010404, 0x01000000, - 0x00010000, 0x01010404, 0x00000004, 0x01010000, 0x01010400, 0x01000000, 0x01000000, 0x00000400, - 0x01010004, 0x00010000, 0x00010400, 0x01000004, 0x00000400, 0x00000004, 0x01000404, 0x00010404, - 0x01010404, 0x00010004, 0x01010000, 0x01000404, 0x01000004, 0x00000404, 0x00010404, 0x01010400, - 0x00000404, 0x01000400, 0x01000400, 0x00000000, 0x00010004, 0x00010400, 0x00000000, 0x01010004 -}; - -static u32 sbox2[64] = -{ - 0x80108020, 0x80008000, 0x00008000, 0x00108020, 0x00100000, 0x00000020, 0x80100020, 0x80008020, - 0x80000020, 0x80108020, 0x80108000, 0x80000000, 0x80008000, 0x00100000, 0x00000020, 0x80100020, - 0x00108000, 0x00100020, 0x80008020, 0x00000000, 0x80000000, 0x00008000, 0x00108020, 0x80100000, - 0x00100020, 0x80000020, 0x00000000, 0x00108000, 0x00008020, 0x80108000, 0x80100000, 0x00008020, - 0x00000000, 0x00108020, 0x80100020, 0x00100000, 0x80008020, 0x80100000, 0x80108000, 0x00008000, - 0x80100000, 0x80008000, 0x00000020, 0x80108020, 0x00108020, 0x00000020, 0x00008000, 0x80000000, - 0x00008020, 0x80108000, 0x00100000, 0x80000020, 0x00100020, 0x80008020, 0x80000020, 0x00100020, - 0x00108000, 0x00000000, 0x80008000, 0x00008020, 0x80000000, 0x80100020, 0x80108020, 0x00108000 -}; - -static u32 sbox3[64] = -{ - 0x00000208, 0x08020200, 0x00000000, 0x08020008, 0x08000200, 0x00000000, 0x00020208, 0x08000200, - 0x00020008, 0x08000008, 0x08000008, 0x00020000, 0x08020208, 0x00020008, 0x08020000, 0x00000208, - 0x08000000, 0x00000008, 0x08020200, 0x00000200, 0x00020200, 0x08020000, 0x08020008, 0x00020208, - 0x08000208, 0x00020200, 0x00020000, 0x08000208, 0x00000008, 0x08020208, 0x00000200, 0x08000000, - 0x08020200, 0x08000000, 0x00020008, 0x00000208, 0x00020000, 0x08020200, 0x08000200, 0x00000000, - 0x00000200, 0x00020008, 0x08020208, 0x08000200, 0x08000008, 0x00000200, 0x00000000, 0x08020008, - 0x08000208, 0x00020000, 0x08000000, 0x08020208, 0x00000008, 0x00020208, 0x00020200, 0x08000008, - 0x08020000, 0x08000208, 0x00000208, 0x08020000, 0x00020208, 0x00000008, 0x08020008, 0x00020200 -}; - -static u32 sbox4[64] = -{ - 0x00802001, 0x00002081, 0x00002081, 0x00000080, 0x00802080, 0x00800081, 0x00800001, 0x00002001, - 0x00000000, 0x00802000, 0x00802000, 0x00802081, 0x00000081, 0x00000000, 0x00800080, 0x00800001, - 0x00000001, 0x00002000, 0x00800000, 0x00802001, 0x00000080, 0x00800000, 0x00002001, 0x00002080, - 0x00800081, 0x00000001, 0x00002080, 0x00800080, 0x00002000, 0x00802080, 0x00802081, 0x00000081, - 0x00800080, 0x00800001, 0x00802000, 0x00802081, 0x00000081, 0x00000000, 0x00000000, 0x00802000, - 0x00002080, 0x00800080, 0x00800081, 0x00000001, 0x00802001, 0x00002081, 0x00002081, 0x00000080, - 0x00802081, 0x00000081, 0x00000001, 0x00002000, 0x00800001, 0x00002001, 0x00802080, 0x00800081, - 0x00002001, 0x00002080, 0x00800000, 0x00802001, 0x00000080, 0x00800000, 0x00002000, 0x00802080 -}; - -static u32 sbox5[64] = -{ - 0x00000100, 0x02080100, 0x02080000, 0x42000100, 0x00080000, 0x00000100, 0x40000000, 0x02080000, - 0x40080100, 0x00080000, 0x02000100, 0x40080100, 0x42000100, 0x42080000, 0x00080100, 0x40000000, - 0x02000000, 0x40080000, 0x40080000, 0x00000000, 0x40000100, 0x42080100, 0x42080100, 0x02000100, - 0x42080000, 0x40000100, 0x00000000, 0x42000000, 0x02080100, 0x02000000, 0x42000000, 0x00080100, - 0x00080000, 0x42000100, 0x00000100, 0x02000000, 0x40000000, 0x02080000, 0x42000100, 0x40080100, - 0x02000100, 0x40000000, 0x42080000, 0x02080100, 0x40080100, 0x00000100, 0x02000000, 0x42080000, - 0x42080100, 0x00080100, 0x42000000, 0x42080100, 0x02080000, 0x00000000, 0x40080000, 0x42000000, - 0x00080100, 0x02000100, 0x40000100, 0x00080000, 0x00000000, 0x40080000, 0x02080100, 0x40000100 -}; - -static u32 sbox6[64] = -{ - 0x20000010, 0x20400000, 0x00004000, 0x20404010, 0x20400000, 0x00000010, 0x20404010, 0x00400000, - 0x20004000, 0x00404010, 0x00400000, 0x20000010, 0x00400010, 0x20004000, 0x20000000, 0x00004010, - 0x00000000, 0x00400010, 0x20004010, 0x00004000, 0x00404000, 0x20004010, 0x00000010, 0x20400010, - 0x20400010, 0x00000000, 0x00404010, 0x20404000, 0x00004010, 0x00404000, 0x20404000, 0x20000000, - 0x20004000, 0x00000010, 0x20400010, 0x00404000, 0x20404010, 0x00400000, 0x00004010, 0x20000010, - 0x00400000, 0x20004000, 0x20000000, 0x00004010, 0x20000010, 0x20404010, 0x00404000, 0x20400000, - 0x00404010, 0x20404000, 0x00000000, 0x20400010, 0x00000010, 0x00004000, 0x20400000, 0x00404010, - 0x00004000, 0x00400010, 0x20004010, 0x00000000, 0x20404000, 0x20000000, 0x00400010, 0x20004010 -}; - -static u32 sbox7[64] = -{ - 0x00200000, 0x04200002, 0x04000802, 0x00000000, 0x00000800, 0x04000802, 0x00200802, 0x04200800, - 0x04200802, 0x00200000, 0x00000000, 0x04000002, 0x00000002, 0x04000000, 0x04200002, 0x00000802, - 0x04000800, 0x00200802, 0x00200002, 0x04000800, 0x04000002, 0x04200000, 0x04200800, 0x00200002, - 0x04200000, 0x00000800, 0x00000802, 0x04200802, 0x00200800, 0x00000002, 0x04000000, 0x00200800, - 0x04000000, 0x00200800, 0x00200000, 0x04000802, 0x04000802, 0x04200002, 0x04200002, 0x00000002, - 0x00200002, 0x04000000, 0x04000800, 0x00200000, 0x04200800, 0x00000802, 0x00200802, 0x04200800, - 0x00000802, 0x04000002, 0x04200802, 0x04200000, 0x00200800, 0x00000000, 0x00000002, 0x04200802, - 0x00000000, 0x00200802, 0x04200000, 0x00000800, 0x04000002, 0x04000800, 0x00000800, 0x00200002 -}; - -static u32 sbox8[64] = -{ - 0x10001040, 0x00001000, 0x00040000, 0x10041040, 0x10000000, 0x10001040, 0x00000040, 0x10000000, - 0x00040040, 0x10040000, 0x10041040, 0x00041000, 0x10041000, 0x00041040, 0x00001000, 0x00000040, - 0x10040000, 0x10000040, 0x10001000, 0x00001040, 0x00041000, 0x00040040, 0x10040040, 0x10041000, - 0x00001040, 0x00000000, 0x00000000, 0x10040040, 0x10000040, 0x10001000, 0x00041040, 0x00040000, - 0x00041040, 0x00040000, 0x10041000, 0x00001000, 0x00000040, 0x10040040, 0x00001000, 0x00041040, - 0x10001000, 0x00000040, 0x10000040, 0x10040000, 0x10040040, 0x10000000, 0x00040000, 0x10001040, - 0x00000000, 0x10041040, 0x00040040, 0x10000040, 0x10040000, 0x10001000, 0x10001040, 0x00000000, - 0x10041040, 0x00041000, 0x00041000, 0x00001040, 0x00001040, 0x00040040, 0x10000000, 0x10041000 -}; - - -/* - * These two tables are part of the 'permuted choice 1' function. - * In this implementation several speed improvements are done. - */ -static u32 leftkey_swap[16] = -{ - 0x00000000, 0x00000001, 0x00000100, 0x00000101, - 0x00010000, 0x00010001, 0x00010100, 0x00010101, - 0x01000000, 0x01000001, 0x01000100, 0x01000101, - 0x01010000, 0x01010001, 0x01010100, 0x01010101 -}; - -static u32 rightkey_swap[16] = -{ - 0x00000000, 0x01000000, 0x00010000, 0x01010000, - 0x00000100, 0x01000100, 0x00010100, 0x01010100, - 0x00000001, 0x01000001, 0x00010001, 0x01010001, - 0x00000101, 0x01000101, 0x00010101, 0x01010101, -}; - - - -/* - * Numbers of left shifts per round for encryption subkeys. - * To calculate the decryption subkeys we just reverse the - * ordering of the calculated encryption subkeys. So their - * is no need for a decryption rotate tab. - */ -static byte encrypt_rotate_tab[16] = -{ - 1, 1, 2, 2, 2, 2, 2, 2, 1, 2, 2, 2, 2, 2, 2, 1 -}; - - - -/* - * Table with weak DES keys sorted in ascending order. - * In DES their are 64 known keys which are weak. They are weak - * because they produce only one, two or four different - * subkeys in the subkey scheduling process. - * The keys in this table have all their parity bits cleared. - */ -static byte weak_keys[64][8] = -{ - { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, /*w*/ - { 0x00, 0x00, 0x1e, 0x1e, 0x00, 0x00, 0x0e, 0x0e }, - { 0x00, 0x00, 0xe0, 0xe0, 0x00, 0x00, 0xf0, 0xf0 }, - { 0x00, 0x00, 0xfe, 0xfe, 0x00, 0x00, 0xfe, 0xfe }, - { 0x00, 0x1e, 0x00, 0x1e, 0x00, 0x0e, 0x00, 0x0e }, /*sw*/ - { 0x00, 0x1e, 0x1e, 0x00, 0x00, 0x0e, 0x0e, 0x00 }, - { 0x00, 0x1e, 0xe0, 0xfe, 0x00, 0x0e, 0xf0, 0xfe }, - { 0x00, 0x1e, 0xfe, 0xe0, 0x00, 0x0e, 0xfe, 0xf0 }, - { 0x00, 0xe0, 0x00, 0xe0, 0x00, 0xf0, 0x00, 0xf0 }, /*sw*/ - { 0x00, 0xe0, 0x1e, 0xfe, 0x00, 0xf0, 0x0e, 0xfe }, - { 0x00, 0xe0, 0xe0, 0x00, 0x00, 0xf0, 0xf0, 0x00 }, - { 0x00, 0xe0, 0xfe, 0x1e, 0x00, 0xf0, 0xfe, 0x0e }, - { 0x00, 0xfe, 0x00, 0xfe, 0x00, 0xfe, 0x00, 0xfe }, /*sw*/ - { 0x00, 0xfe, 0x1e, 0xe0, 0x00, 0xfe, 0x0e, 0xf0 }, - { 0x00, 0xfe, 0xe0, 0x1e, 0x00, 0xfe, 0xf0, 0x0e }, - { 0x00, 0xfe, 0xfe, 0x00, 0x00, 0xfe, 0xfe, 0x00 }, - { 0x1e, 0x00, 0x00, 0x1e, 0x0e, 0x00, 0x00, 0x0e }, - { 0x1e, 0x00, 0x1e, 0x00, 0x0e, 0x00, 0x0e, 0x00 }, /*sw*/ - { 0x1e, 0x00, 0xe0, 0xfe, 0x0e, 0x00, 0xf0, 0xfe }, - { 0x1e, 0x00, 0xfe, 0xe0, 0x0e, 0x00, 0xfe, 0xf0 }, - { 0x1e, 0x1e, 0x00, 0x00, 0x0e, 0x0e, 0x00, 0x00 }, - { 0x1e, 0x1e, 0x1e, 0x1e, 0x0e, 0x0e, 0x0e, 0x0e }, /*w*/ - { 0x1e, 0x1e, 0xe0, 0xe0, 0x0e, 0x0e, 0xf0, 0xf0 }, - { 0x1e, 0x1e, 0xfe, 0xfe, 0x0e, 0x0e, 0xfe, 0xfe }, - { 0x1e, 0xe0, 0x00, 0xfe, 0x0e, 0xf0, 0x00, 0xfe }, - { 0x1e, 0xe0, 0x1e, 0xe0, 0x0e, 0xf0, 0x0e, 0xf0 }, /*sw*/ - { 0x1e, 0xe0, 0xe0, 0x1e, 0x0e, 0xf0, 0xf0, 0x0e }, - { 0x1e, 0xe0, 0xfe, 0x00, 0x0e, 0xf0, 0xfe, 0x00 }, - { 0x1e, 0xfe, 0x00, 0xe0, 0x0e, 0xfe, 0x00, 0xf0 }, - { 0x1e, 0xfe, 0x1e, 0xfe, 0x0e, 0xfe, 0x0e, 0xfe }, /*sw*/ - { 0x1e, 0xfe, 0xe0, 0x00, 0x0e, 0xfe, 0xf0, 0x00 }, - { 0x1e, 0xfe, 0xfe, 0x1e, 0x0e, 0xfe, 0xfe, 0x0e }, - { 0xe0, 0x00, 0x00, 0xe0, 0xf0, 0x00, 0x00, 0xf0 }, - { 0xe0, 0x00, 0x1e, 0xfe, 0xf0, 0x00, 0x0e, 0xfe }, - { 0xe0, 0x00, 0xe0, 0x00, 0xf0, 0x00, 0xf0, 0x00 }, /*sw*/ - { 0xe0, 0x00, 0xfe, 0x1e, 0xf0, 0x00, 0xfe, 0x0e }, - { 0xe0, 0x1e, 0x00, 0xfe, 0xf0, 0x0e, 0x00, 0xfe }, - { 0xe0, 0x1e, 0x1e, 0xe0, 0xf0, 0x0e, 0x0e, 0xf0 }, - { 0xe0, 0x1e, 0xe0, 0x1e, 0xf0, 0x0e, 0xf0, 0x0e }, /*sw*/ - { 0xe0, 0x1e, 0xfe, 0x00, 0xf0, 0x0e, 0xfe, 0x00 }, - { 0xe0, 0xe0, 0x00, 0x00, 0xf0, 0xf0, 0x00, 0x00 }, - { 0xe0, 0xe0, 0x1e, 0x1e, 0xf0, 0xf0, 0x0e, 0x0e }, - { 0xe0, 0xe0, 0xe0, 0xe0, 0xf0, 0xf0, 0xf0, 0xf0 }, /*w*/ - { 0xe0, 0xe0, 0xfe, 0xfe, 0xf0, 0xf0, 0xfe, 0xfe }, - { 0xe0, 0xfe, 0x00, 0x1e, 0xf0, 0xfe, 0x00, 0x0e }, - { 0xe0, 0xfe, 0x1e, 0x00, 0xf0, 0xfe, 0x0e, 0x00 }, - { 0xe0, 0xfe, 0xe0, 0xfe, 0xf0, 0xfe, 0xf0, 0xfe }, /*sw*/ - { 0xe0, 0xfe, 0xfe, 0xe0, 0xf0, 0xfe, 0xfe, 0xf0 }, - { 0xfe, 0x00, 0x00, 0xfe, 0xfe, 0x00, 0x00, 0xfe }, - { 0xfe, 0x00, 0x1e, 0xe0, 0xfe, 0x00, 0x0e, 0xf0 }, - { 0xfe, 0x00, 0xe0, 0x1e, 0xfe, 0x00, 0xf0, 0x0e }, - { 0xfe, 0x00, 0xfe, 0x00, 0xfe, 0x00, 0xfe, 0x00 }, /*sw*/ - { 0xfe, 0x1e, 0x00, 0xe0, 0xfe, 0x0e, 0x00, 0xf0 }, - { 0xfe, 0x1e, 0x1e, 0xfe, 0xfe, 0x0e, 0x0e, 0xfe }, - { 0xfe, 0x1e, 0xe0, 0x00, 0xfe, 0x0e, 0xf0, 0x00 }, - { 0xfe, 0x1e, 0xfe, 0x1e, 0xfe, 0x0e, 0xfe, 0x0e }, /*sw*/ - { 0xfe, 0xe0, 0x00, 0x1e, 0xfe, 0xf0, 0x00, 0x0e }, - { 0xfe, 0xe0, 0x1e, 0x00, 0xfe, 0xf0, 0x0e, 0x00 }, - { 0xfe, 0xe0, 0xe0, 0xfe, 0xfe, 0xf0, 0xf0, 0xfe }, - { 0xfe, 0xe0, 0xfe, 0xe0, 0xfe, 0xf0, 0xfe, 0xf0 }, /*sw*/ - { 0xfe, 0xfe, 0x00, 0x00, 0xfe, 0xfe, 0x00, 0x00 }, - { 0xfe, 0xfe, 0x1e, 0x1e, 0xfe, 0xfe, 0x0e, 0x0e }, - { 0xfe, 0xfe, 0xe0, 0xe0, 0xfe, 0xfe, 0xf0, 0xf0 }, - { 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe } /*w*/ -}; - - - -/* - * Macro to swap bits across two words. - */ -#define DO_PERMUTATION(a, temp, b, offset, mask) \ - temp = ((a>>offset) ^ b) & mask; \ - b ^= temp; \ - a ^= temp<> 31); \ - temp = (left ^ right) & 0xaaaaaaaa; \ - right ^= temp; \ - left ^= temp; \ - left = (left << 1) | (left >> 31); - -/* - * The 'inverse initial permutation'. - */ -#define FINAL_PERMUTATION(left, temp, right) \ - left = (left << 31) | (left >> 1); \ - temp = (left ^ right) & 0xaaaaaaaa; \ - left ^= temp; \ - right ^= temp; \ - right = (right << 31) | (right >> 1); \ - DO_PERMUTATION(right, temp, left, 8, 0x00ff00ff) \ - DO_PERMUTATION(right, temp, left, 2, 0x33333333) \ - DO_PERMUTATION(left, temp, right, 16, 0x0000ffff) \ - DO_PERMUTATION(left, temp, right, 4, 0x0f0f0f0f) - - -/* - * A full DES round including 'expansion function', 'sbox substitution' - * and 'primitive function P' but without swapping the left and right word. - * Please note: The data in 'from' and 'to' is already rotated one bit to - * the left, done in the initial permutation. - */ -#define DES_ROUND(from, to, work, subkey) \ - work = from ^ *subkey++; \ - to ^= sbox8[ work & 0x3f ]; \ - to ^= sbox6[ (work>>8) & 0x3f ]; \ - to ^= sbox4[ (work>>16) & 0x3f ]; \ - to ^= sbox2[ (work>>24) & 0x3f ]; \ - work = ((from << 28) | (from >> 4)) ^ *subkey++; \ - to ^= sbox7[ work & 0x3f ]; \ - to ^= sbox5[ (work>>8) & 0x3f ]; \ - to ^= sbox3[ (work>>16) & 0x3f ]; \ - to ^= sbox1[ (work>>24) & 0x3f ]; - -/* - * Macros to convert 8 bytes from/to 32bit words. - */ -#define READ_64BIT_DATA(data, left, right) \ - left = (data[0] << 24) | (data[1] << 16) | (data[2] << 8) | data[3]; \ - right = (data[4] << 24) | (data[5] << 16) | (data[6] << 8) | data[7]; - -#define WRITE_64BIT_DATA(data, left, right) \ - data[0] = (left >> 24) &0xff; data[1] = (left >> 16) &0xff; \ - data[2] = (left >> 8) &0xff; data[3] = left &0xff; \ - data[4] = (right >> 24) &0xff; data[5] = (right >> 16) &0xff; \ - data[6] = (right >> 8) &0xff; data[7] = right &0xff; - -/* - * Handy macros for encryption and decryption of data - */ -#define des_ecb_encrypt(ctx, from, to) des_ecb_crypt(ctx, from, to, 0) -#define des_ecb_decrypt(ctx, from, to) des_ecb_crypt(ctx, from, to, 1) -#define tripledes_ecb_encrypt(ctx, from, to) tripledes_ecb_crypt(ctx,from,to,0) -#define tripledes_ecb_decrypt(ctx, from, to) tripledes_ecb_crypt(ctx,from,to,1) - - - - - - -/* - * des_key_schedule(): Calculate 16 subkeys pairs (even/odd) for - * 16 encryption rounds. - * To calculate subkeys for decryption the caller - * have to reorder the generated subkeys. - * - * rawkey: 8 Bytes of key data - * subkey: Array of at least 32 u32s. Will be filled - * with calculated subkeys. - * - */ -static void -des_key_schedule (const byte * rawkey, u32 * subkey) -{ - u32 left, right, work; - int round; - - READ_64BIT_DATA (rawkey, left, right) - - DO_PERMUTATION (right, work, left, 4, 0x0f0f0f0f) - DO_PERMUTATION (right, work, left, 0, 0x10101010) - - left = ((leftkey_swap[(left >> 0) & 0xf] << 3) - | (leftkey_swap[(left >> 8) & 0xf] << 2) - | (leftkey_swap[(left >> 16) & 0xf] << 1) - | (leftkey_swap[(left >> 24) & 0xf]) - | (leftkey_swap[(left >> 5) & 0xf] << 7) - | (leftkey_swap[(left >> 13) & 0xf] << 6) - | (leftkey_swap[(left >> 21) & 0xf] << 5) - | (leftkey_swap[(left >> 29) & 0xf] << 4)); - - left &= 0x0fffffff; - - right = ((rightkey_swap[(right >> 1) & 0xf] << 3) - | (rightkey_swap[(right >> 9) & 0xf] << 2) - | (rightkey_swap[(right >> 17) & 0xf] << 1) - | (rightkey_swap[(right >> 25) & 0xf]) - | (rightkey_swap[(right >> 4) & 0xf] << 7) - | (rightkey_swap[(right >> 12) & 0xf] << 6) - | (rightkey_swap[(right >> 20) & 0xf] << 5) - | (rightkey_swap[(right >> 28) & 0xf] << 4)); - - right &= 0x0fffffff; - - for (round = 0; round < 16; ++round) - { - left = ((left << encrypt_rotate_tab[round]) - | (left >> (28 - encrypt_rotate_tab[round]))) & 0x0fffffff; - right = ((right << encrypt_rotate_tab[round]) - | (right >> (28 - encrypt_rotate_tab[round]))) & 0x0fffffff; - - *subkey++ = (((left << 4) & 0x24000000) - | ((left << 28) & 0x10000000) - | ((left << 14) & 0x08000000) - | ((left << 18) & 0x02080000) - | ((left << 6) & 0x01000000) - | ((left << 9) & 0x00200000) - | ((left >> 1) & 0x00100000) - | ((left << 10) & 0x00040000) - | ((left << 2) & 0x00020000) - | ((left >> 10) & 0x00010000) - | ((right >> 13) & 0x00002000) - | ((right >> 4) & 0x00001000) - | ((right << 6) & 0x00000800) - | ((right >> 1) & 0x00000400) - | ((right >> 14) & 0x00000200) - | (right & 0x00000100) - | ((right >> 5) & 0x00000020) - | ((right >> 10) & 0x00000010) - | ((right >> 3) & 0x00000008) - | ((right >> 18) & 0x00000004) - | ((right >> 26) & 0x00000002) - | ((right >> 24) & 0x00000001)); - - *subkey++ = (((left << 15) & 0x20000000) - | ((left << 17) & 0x10000000) - | ((left << 10) & 0x08000000) - | ((left << 22) & 0x04000000) - | ((left >> 2) & 0x02000000) - | ((left << 1) & 0x01000000) - | ((left << 16) & 0x00200000) - | ((left << 11) & 0x00100000) - | ((left << 3) & 0x00080000) - | ((left >> 6) & 0x00040000) - | ((left << 15) & 0x00020000) - | ((left >> 4) & 0x00010000) - | ((right >> 2) & 0x00002000) - | ((right << 8) & 0x00001000) - | ((right >> 14) & 0x00000808) - | ((right >> 9) & 0x00000400) - | ((right) & 0x00000200) - | ((right << 7) & 0x00000100) - | ((right >> 7) & 0x00000020) - | ((right >> 3) & 0x00000011) - | ((right << 2) & 0x00000004) - | ((right >> 21) & 0x00000002)); - } -} - - -/* - * Fill a DES context with subkeys calculated from a 64bit key. - * Does not check parity bits, but simply ignore them. - * Does not check for weak keys. - */ -static int -des_setkey (struct _des_ctx *ctx, const byte * key) -{ - static const char *selftest_failed; - int i; - - if (!fips_mode () && !initialized) - { - initialized = 1; - selftest_failed = selftest (); - - if (selftest_failed) - log_error ("%s\n", selftest_failed); - } - if (selftest_failed) - return GPG_ERR_SELFTEST_FAILED; - - des_key_schedule (key, ctx->encrypt_subkeys); - _gcry_burn_stack (32); - - for(i=0; i<32; i+=2) - { - ctx->decrypt_subkeys[i] = ctx->encrypt_subkeys[30-i]; - ctx->decrypt_subkeys[i+1] = ctx->encrypt_subkeys[31-i]; - } - - return 0; -} - - - -/* - * Electronic Codebook Mode DES encryption/decryption of data according - * to 'mode'. - */ -static int -des_ecb_crypt (struct _des_ctx *ctx, const byte * from, byte * to, int mode) -{ - u32 left, right, work; - u32 *keys; - - keys = mode ? ctx->decrypt_subkeys : ctx->encrypt_subkeys; - - READ_64BIT_DATA (from, left, right) - INITIAL_PERMUTATION (left, work, right) - - DES_ROUND (right, left, work, keys) DES_ROUND (left, right, work, keys) - DES_ROUND (right, left, work, keys) DES_ROUND (left, right, work, keys) - DES_ROUND (right, left, work, keys) DES_ROUND (left, right, work, keys) - DES_ROUND (right, left, work, keys) DES_ROUND (left, right, work, keys) - DES_ROUND (right, left, work, keys) DES_ROUND (left, right, work, keys) - DES_ROUND (right, left, work, keys) DES_ROUND (left, right, work, keys) - DES_ROUND (right, left, work, keys) DES_ROUND (left, right, work, keys) - DES_ROUND (right, left, work, keys) DES_ROUND (left, right, work, keys) - - FINAL_PERMUTATION (right, work, left) - WRITE_64BIT_DATA (to, right, left) - - return 0; -} - - - -/* - * Fill a Triple-DES context with subkeys calculated from two 64bit keys. - * Does not check the parity bits of the keys, but simply ignore them. - * Does not check for weak keys. - */ - - - -/* - * Fill a Triple-DES context with subkeys calculated from three 64bit keys. - * Does not check the parity bits of the keys, but simply ignore them. - * Does not check for weak keys. - */ -static int -tripledes_set3keys (struct _tripledes_ctx *ctx, - const byte * key1, - const byte * key2, - const byte * key3) -{ - static const char *selftest_failed; - int i; - - if (!fips_mode () && !initialized) - { - initialized = 1; - selftest_failed = selftest (); - - if (selftest_failed) - log_error ("%s\n", selftest_failed); - } - if (selftest_failed) - return GPG_ERR_SELFTEST_FAILED; - - des_key_schedule (key1, ctx->encrypt_subkeys); - des_key_schedule (key2, &(ctx->decrypt_subkeys[32])); - des_key_schedule (key3, &(ctx->encrypt_subkeys[64])); - _gcry_burn_stack (32); - - for(i=0; i<32; i+=2) - { - ctx->decrypt_subkeys[i] = ctx->encrypt_subkeys[94-i]; - ctx->decrypt_subkeys[i+1] = ctx->encrypt_subkeys[95-i]; - - ctx->encrypt_subkeys[i+32] = ctx->decrypt_subkeys[62-i]; - ctx->encrypt_subkeys[i+33] = ctx->decrypt_subkeys[63-i]; - - ctx->decrypt_subkeys[i+64] = ctx->encrypt_subkeys[30-i]; - ctx->decrypt_subkeys[i+65] = ctx->encrypt_subkeys[31-i]; - } - - return 0; -} - - - -/* - * Electronic Codebook Mode Triple-DES encryption/decryption of data - * according to 'mode'. Sometimes this mode is named 'EDE' mode - * (Encryption-Decryption-Encryption). - */ -static int -tripledes_ecb_crypt (struct _tripledes_ctx *ctx, const byte * from, - byte * to, int mode) -{ - u32 left, right, work; - u32 *keys; - - keys = mode ? ctx->decrypt_subkeys : ctx->encrypt_subkeys; - - READ_64BIT_DATA (from, left, right) - INITIAL_PERMUTATION (left, work, right) - - DES_ROUND (right, left, work, keys) DES_ROUND (left, right, work, keys) - DES_ROUND (right, left, work, keys) DES_ROUND (left, right, work, keys) - DES_ROUND (right, left, work, keys) DES_ROUND (left, right, work, keys) - DES_ROUND (right, left, work, keys) DES_ROUND (left, right, work, keys) - DES_ROUND (right, left, work, keys) DES_ROUND (left, right, work, keys) - DES_ROUND (right, left, work, keys) DES_ROUND (left, right, work, keys) - DES_ROUND (right, left, work, keys) DES_ROUND (left, right, work, keys) - DES_ROUND (right, left, work, keys) DES_ROUND (left, right, work, keys) - - DES_ROUND (left, right, work, keys) DES_ROUND (right, left, work, keys) - DES_ROUND (left, right, work, keys) DES_ROUND (right, left, work, keys) - DES_ROUND (left, right, work, keys) DES_ROUND (right, left, work, keys) - DES_ROUND (left, right, work, keys) DES_ROUND (right, left, work, keys) - DES_ROUND (left, right, work, keys) DES_ROUND (right, left, work, keys) - DES_ROUND (left, right, work, keys) DES_ROUND (right, left, work, keys) - DES_ROUND (left, right, work, keys) DES_ROUND (right, left, work, keys) - DES_ROUND (left, right, work, keys) DES_ROUND (right, left, work, keys) - - DES_ROUND (right, left, work, keys) DES_ROUND (left, right, work, keys) - DES_ROUND (right, left, work, keys) DES_ROUND (left, right, work, keys) - DES_ROUND (right, left, work, keys) DES_ROUND (left, right, work, keys) - DES_ROUND (right, left, work, keys) DES_ROUND (left, right, work, keys) - DES_ROUND (right, left, work, keys) DES_ROUND (left, right, work, keys) - DES_ROUND (right, left, work, keys) DES_ROUND (left, right, work, keys) - DES_ROUND (right, left, work, keys) DES_ROUND (left, right, work, keys) - DES_ROUND (right, left, work, keys) DES_ROUND (left, right, work, keys) - - FINAL_PERMUTATION (right, work, left) - WRITE_64BIT_DATA (to, right, left) - - return 0; -} - - - - - -/* - * Check whether the 8 byte key is weak. - * Does not check the parity bits of the key but simple ignore them. - */ -static int -is_weak_key ( const byte *key ) -{ - byte work[8]; - int i, left, right, middle, cmp_result; - - /* clear parity bits */ - for(i=0; i<8; ++i) - work[i] = key[i] & 0xfe; - - /* binary search in the weak key table */ - left = 0; - right = 63; - while(left <= right) - { - middle = (left + right) / 2; - - if ( !(cmp_result=working_memcmp(work, weak_keys[middle], 8)) ) - return -1; - - if ( cmp_result > 0 ) - left = middle + 1; - else - right = middle - 1; - } - - return 0; -} - - - -/* - * Performs a selftest of this DES/Triple-DES implementation. - * Returns an string with the error text on failure. - * Returns NULL if all is ok. - */ - - -static gcry_err_code_t -do_tripledes_setkey ( void *context, const byte *key, unsigned keylen ) -{ - struct _tripledes_ctx *ctx = (struct _tripledes_ctx *) context; - - if( keylen != 24 ) - return GPG_ERR_INV_KEYLEN; - - tripledes_set3keys ( ctx, key, key+8, key+16); - - if (ctx->flags.no_weak_key) - ; /* Detection has been disabled. */ - else if (is_weak_key (key) || is_weak_key (key+8) || is_weak_key (key+16)) - { - _gcry_burn_stack (64); - return GPG_ERR_WEAK_KEY; - } - _gcry_burn_stack (64); - - return GPG_ERR_NO_ERROR; -} - - - - -static void -do_tripledes_encrypt( void *context, byte *outbuf, const byte *inbuf ) -{ - struct _tripledes_ctx *ctx = (struct _tripledes_ctx *) context; - - tripledes_ecb_encrypt ( ctx, inbuf, outbuf ); - _gcry_burn_stack (32); -} - -static void -do_tripledes_decrypt( void *context, byte *outbuf, const byte *inbuf ) -{ - struct _tripledes_ctx *ctx = (struct _tripledes_ctx *) context; - tripledes_ecb_decrypt ( ctx, inbuf, outbuf ); - _gcry_burn_stack (32); -} - -static gcry_err_code_t -do_des_setkey (void *context, const byte *key, unsigned keylen) -{ - struct _des_ctx *ctx = (struct _des_ctx *) context; - - if (keylen != 8) - return GPG_ERR_INV_KEYLEN; - - des_setkey (ctx, key); - - if (is_weak_key (key)) { - _gcry_burn_stack (64); - return GPG_ERR_WEAK_KEY; - } - _gcry_burn_stack (64); - - return GPG_ERR_NO_ERROR; -} - - -static void -do_des_encrypt( void *context, byte *outbuf, const byte *inbuf ) -{ - struct _des_ctx *ctx = (struct _des_ctx *) context; - - des_ecb_encrypt ( ctx, inbuf, outbuf ); - _gcry_burn_stack (32); -} - -static void -do_des_decrypt( void *context, byte *outbuf, const byte *inbuf ) -{ - struct _des_ctx *ctx = (struct _des_ctx *) context; - - des_ecb_decrypt ( ctx, inbuf, outbuf ); - _gcry_burn_stack (32); -} - - - - -/* - Self-test section. - */ - - -/* Selftest for TripleDES. */ - - - -/* Run a full self-test for ALGO and return 0 on success. */ - - - -gcry_cipher_spec_t _gcry_cipher_spec_des = - { - "DES", NULL, NULL, 8, 64, sizeof (struct _des_ctx), - do_des_setkey, do_des_encrypt, do_des_decrypt - , -#ifdef GRUB_UTIL - .modname = "gcry_des", -#endif - }; - -static gcry_cipher_oid_spec_t oids_tripledes[] = - { - { "1.2.840.113549.3.7", GCRY_CIPHER_MODE_CBC }, - /* Teletrust specific OID for 3DES. */ - { "1.3.36.3.1.3.2.1", GCRY_CIPHER_MODE_CBC }, - /* pbeWithSHAAnd3_KeyTripleDES_CBC */ - { "1.2.840.113549.1.12.1.3", GCRY_CIPHER_MODE_CBC }, - { NULL } - }; - -gcry_cipher_spec_t _gcry_cipher_spec_tripledes = - { - "3DES", NULL, oids_tripledes, 8, 192, sizeof (struct _tripledes_ctx), - do_tripledes_setkey, do_tripledes_encrypt, do_tripledes_decrypt - , -#ifdef GRUB_UTIL - .modname = "gcry_des", -#endif - }; - - - -GRUB_MOD_INIT(gcry_des) -{ - grub_cipher_register (&_gcry_cipher_spec_des); - grub_cipher_register (&_gcry_cipher_spec_tripledes); -} - -GRUB_MOD_FINI(gcry_des) -{ - grub_cipher_unregister (&_gcry_cipher_spec_des); - grub_cipher_unregister (&_gcry_cipher_spec_tripledes); -} diff --git a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/dsa.c b/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/dsa.c deleted file mode 100644 index 52079c5bc..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/dsa.c +++ /dev/null @@ -1,292 +0,0 @@ -/* This file was automatically imported with - import_gcry.py. Please don't modify it */ -#include -GRUB_MOD_LICENSE ("GPLv3+"); -/* dsa.c - DSA signature algorithm - * Copyright (C) 1998, 2000, 2001, 2002, 2003, - * 2006, 2008 Free Software Foundation, Inc. - * - * This file is part of Libgcrypt. - * - * Libgcrypt is free software; you can redistribute it and/or modify - * it under the terms of the GNU Lesser General Public License as - * published by the Free Software Foundation; either version 2.1 of - * the License, or (at your option) any later version. - * - * Libgcrypt is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this program; if not, see . - */ - - -#include "g10lib.h" -#include "mpi.h" -#include "cipher.h" - -typedef struct -{ - gcry_mpi_t p; /* prime */ - gcry_mpi_t q; /* group order */ - gcry_mpi_t g; /* group generator */ - gcry_mpi_t y; /* g^x mod p */ -} DSA_public_key; - - -typedef struct -{ - gcry_mpi_t p; /* prime */ - gcry_mpi_t q; /* group order */ - gcry_mpi_t g; /* group generator */ - gcry_mpi_t y; /* g^x mod p */ - gcry_mpi_t x; /* secret exponent */ -} DSA_secret_key; - - -/* A structure used to hold domain parameters. */ -typedef struct -{ - gcry_mpi_t p; /* prime */ - gcry_mpi_t q; /* group order */ - gcry_mpi_t g; /* group generator */ -} dsa_domain_t; - - -/* A sample 1024 bit DSA key used for the selftests. */ -/* A sample 1024 bit DSA key used for the selftests (public only). */ - - - - -static int check_secret_key (DSA_secret_key *sk); -static int verify (gcry_mpi_t r, gcry_mpi_t s, gcry_mpi_t input, - DSA_public_key *pkey); - - - - - - - -/* - * Generate a random secret exponent k less than q. - */ - - -/* Check that a freshly generated key actually works. Returns 0 on success. */ - - - -/* - Generate a DSA key pair with a key of size NBITS. If transient_key - is true the key is generated using the standard RNG and not the - very secure one. - - Returns: 2 structures filled with all needed values - and an array with the n-1 factors of (p-1) - */ - - -/* Generate a DSA key pair with a key of size NBITS using the - algorithm given in FIPS-186-3. If USE_FIPS186_2 is true, - FIPS-186-2 is used and thus the length is restricted to 1024/160. - If DERIVEPARMS is not NULL it may contain a seed value. If domain - parameters are specified in DOMAIN, DERIVEPARMS may not be given - and NBITS and QBITS must match the specified domain parameters. */ - - - -/* - Test whether the secret key is valid. - Returns: if this is a valid key. - */ -static int -check_secret_key( DSA_secret_key *sk ) -{ - int rc; - gcry_mpi_t y = mpi_alloc( mpi_get_nlimbs(sk->y) ); - - gcry_mpi_powm( y, sk->g, sk->x, sk->p ); - rc = !mpi_cmp( y, sk->y ); - mpi_free( y ); - return rc; -} - - - -/* - Make a DSA signature from HASH and put it into r and s. - */ - - -/* - Returns true if the signature composed from R and S is valid. - */ -static int -verify (gcry_mpi_t r, gcry_mpi_t s, gcry_mpi_t hash, DSA_public_key *pkey ) -{ - int rc; - gcry_mpi_t w, u1, u2, v; - gcry_mpi_t base[3]; - gcry_mpi_t ex[3]; - - if( !(mpi_cmp_ui( r, 0 ) > 0 && mpi_cmp( r, pkey->q ) < 0) ) - return 0; /* assertion 0 < r < q failed */ - if( !(mpi_cmp_ui( s, 0 ) > 0 && mpi_cmp( s, pkey->q ) < 0) ) - return 0; /* assertion 0 < s < q failed */ - - w = mpi_alloc( mpi_get_nlimbs(pkey->q) ); - u1 = mpi_alloc( mpi_get_nlimbs(pkey->q) ); - u2 = mpi_alloc( mpi_get_nlimbs(pkey->q) ); - v = mpi_alloc( mpi_get_nlimbs(pkey->p) ); - - /* w = s^(-1) mod q */ - mpi_invm( w, s, pkey->q ); - - /* u1 = (hash * w) mod q */ - mpi_mulm( u1, hash, w, pkey->q ); - - /* u2 = r * w mod q */ - mpi_mulm( u2, r, w, pkey->q ); - - /* v = g^u1 * y^u2 mod p mod q */ - base[0] = pkey->g; ex[0] = u1; - base[1] = pkey->y; ex[1] = u2; - base[2] = NULL; ex[2] = NULL; - mpi_mulpowm( v, base, ex, pkey->p ); - mpi_fdiv_r( v, v, pkey->q ); - - rc = !mpi_cmp( v, r ); - - mpi_free(w); - mpi_free(u1); - mpi_free(u2); - mpi_free(v); - - return rc; -} - - -/********************************************* - ************** interface ****************** - *********************************************/ - -#define dsa_generate 0 - -#define dsa_generate 0 - - -static gcry_err_code_t -dsa_check_secret_key (int algo, gcry_mpi_t *skey) -{ - gcry_err_code_t err = GPG_ERR_NO_ERROR; - DSA_secret_key sk; - - (void)algo; - - if ((! skey[0]) || (! skey[1]) || (! skey[2]) || (! skey[3]) || (! skey[4])) - err = GPG_ERR_BAD_MPI; - else - { - sk.p = skey[0]; - sk.q = skey[1]; - sk.g = skey[2]; - sk.y = skey[3]; - sk.x = skey[4]; - if (! check_secret_key (&sk)) - err = GPG_ERR_BAD_SECKEY; - } - - return err; -} - - -#define dsa_sign 0 -static gcry_err_code_t -dsa_verify (int algo, gcry_mpi_t hash, gcry_mpi_t *data, gcry_mpi_t *pkey, - int (*cmp) (void *, gcry_mpi_t), void *opaquev) -{ - gcry_err_code_t err = GPG_ERR_NO_ERROR; - DSA_public_key pk; - - (void)algo; - (void)cmp; - (void)opaquev; - - if ((! data[0]) || (! data[1]) || (! hash) - || (! pkey[0]) || (! pkey[1]) || (! pkey[2]) || (! pkey[3])) - err = GPG_ERR_BAD_MPI; - else - { - pk.p = pkey[0]; - pk.q = pkey[1]; - pk.g = pkey[2]; - pk.y = pkey[3]; - if (! verify (data[0], data[1], hash, &pk)) - err = GPG_ERR_BAD_SIGNATURE; - } - return err; -} - - -static unsigned int -dsa_get_nbits (int algo, gcry_mpi_t *pkey) -{ - (void)algo; - - return mpi_get_nbits (pkey[0]); -} - - - -/* - Self-test section. - */ - - - - - -/* Run a full self-test for ALGO and return 0 on success. */ - - - - -static const char *dsa_names[] = - { - "dsa", - "openpgp-dsa", - NULL, - }; - -gcry_pk_spec_t _gcry_pubkey_spec_dsa = - { - "DSA", dsa_names, - "pqgy", "pqgyx", "", "rs", "pqgy", - GCRY_PK_USAGE_SIGN, - dsa_generate, - dsa_check_secret_key, - NULL, - NULL, - dsa_sign, - dsa_verify, - dsa_get_nbits - , -#ifdef GRUB_UTIL - .modname = "gcry_dsa", -#endif - }; - - -GRUB_MOD_INIT(gcry_dsa) -{ - grub_crypto_pk_dsa = &_gcry_pubkey_spec_dsa; -} - -GRUB_MOD_FINI(gcry_dsa) -{ - grub_crypto_pk_dsa = 0; -} diff --git a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/g10lib.h b/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/g10lib.h deleted file mode 100644 index 49cc16a2a..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/g10lib.h +++ /dev/null @@ -1 +0,0 @@ -#include diff --git a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/hash-common.h b/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/hash-common.h deleted file mode 100644 index 79d36759f..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/hash-common.h +++ /dev/null @@ -1,36 +0,0 @@ -/* This file was automatically imported with - import_gcry.py. Please don't modify it */ -#include -/* hash-common.h - Declarations of common code for hash algorithms. - * Copyright (C) 2008 Free Software Foundation, Inc. - * - * This file is part of Libgcrypt. - * - * Libgcrypt is free software; you can redistribute it and/or modify - * it under the terms of the GNU Lesser General Public License as - * published by the Free Software Foundation; either version 2.1 of - * the License, or (at your option) any later version. - * - * Libgcrypt is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this program; if not, see . - */ - -#ifndef GCRY_HASH_COMMON_H -#define GCRY_HASH_COMMON_H - - -const char * _gcry_hash_selftest_check_one -/**/ (int algo, - int datamode, const void *data, size_t datalen, - const void *expect, size_t expectlen); - - - - - -#endif /*GCRY_HASH_COMMON_H*/ diff --git a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/idea.c b/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/idea.c deleted file mode 100644 index 52a818f4e..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/idea.c +++ /dev/null @@ -1,322 +0,0 @@ -/* This file was automatically imported with - import_gcry.py. Please don't modify it */ -#include -GRUB_MOD_LICENSE ("GPLv3+"); -/* idea.c - IDEA function - * Copyright 1997, 1998, 1999, 2001 Werner Koch (dd9jn) - * Copyright 2013 g10 Code GmbH - * - * Permission is hereby granted, free of charge, to any person obtaining a - * copy of this software and associated documentation files (the "Software"), - * to deal in the Software without restriction, including without limitation - * the rights to use, copy, modify, merge, publish, distribute, sublicense, - * and/or sell copies of the Software, and to permit persons to whom the - * Software is furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in - * all copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL - * WERNER KOCH BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER - * IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN - * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - * - * Except as contained in this notice, the name of Werner Koch shall not be - * used in advertising or otherwise to promote the sale, use or other dealings - * in this Software without prior written authorization from Werner Koch. - * - * Patents on IDEA have expired: - * Europe: EP0482154 on 2011-05-16, - * Japan: JP3225440 on 2011-05-16, - * U.S.: 5,214,703 on 2012-01-07. - */ - -/* - * Please see http://www.noepatents.org/ to learn why software patents - * are bad for society and what you can do to fight them. - * - * The code herein is based on the one from: - * Bruce Schneier: Applied Cryptography. John Wiley & Sons, 1996. - * ISBN 0-471-11709-9. - */ - - - -#include "types.h" /* for byte and u32 typedefs */ -#include "g10lib.h" -#include "cipher.h" - - -#define IDEA_KEYSIZE 16 -#define IDEA_BLOCKSIZE 8 -#define IDEA_ROUNDS 8 -#define IDEA_KEYLEN (6*IDEA_ROUNDS+4) - -typedef struct { - u16 ek[IDEA_KEYLEN]; - u16 dk[IDEA_KEYLEN]; - int have_dk; -} IDEA_context; - - - -static u16 -mul_inv( u16 x ) -{ - u16 t0, t1; - u16 q, y; - - if( x < 2 ) - return x; - t1 = 0x10001UL / x; - y = 0x10001UL % x; - if( y == 1 ) - return (1-t1) & 0xffff; - - t0 = 1; - do { - q = x / y; - x = x % y; - t0 += q * t1; - if( x == 1 ) - return t0; - q = y / x; - y = y % x; - t1 += q * t0; - } while( y != 1 ); - return (1-t1) & 0xffff; -} - - - -static void -expand_key( const byte *userkey, u16 *ek ) -{ - int i,j; - - for(j=0; j < 8; j++ ) { - ek[j] = (*userkey << 8) + userkey[1]; - userkey += 2; - } - for(i=0; j < IDEA_KEYLEN; j++ ) { - i++; - ek[i+7] = ek[i&7] << 9 | ek[(i+1)&7] >> 7; - ek += i & 8; - i &= 7; - } -} - - -static void -invert_key( u16 *ek, u16 dk[IDEA_KEYLEN] ) -{ - int i; - u16 t1, t2, t3; - u16 temp[IDEA_KEYLEN]; - u16 *p = temp + IDEA_KEYLEN; - - t1 = mul_inv( *ek++ ); - t2 = -*ek++; - t3 = -*ek++; - *--p = mul_inv( *ek++ ); - *--p = t3; - *--p = t2; - *--p = t1; - - for(i=0; i < IDEA_ROUNDS-1; i++ ) { - t1 = *ek++; - *--p = *ek++; - *--p = t1; - - t1 = mul_inv( *ek++ ); - t2 = -*ek++; - t3 = -*ek++; - *--p = mul_inv( *ek++ ); - *--p = t2; - *--p = t3; - *--p = t1; - } - t1 = *ek++; - *--p = *ek++; - *--p = t1; - - t1 = mul_inv( *ek++ ); - t2 = -*ek++; - t3 = -*ek++; - *--p = mul_inv( *ek++ ); - *--p = t3; - *--p = t2; - *--p = t1; - memcpy(dk, temp, sizeof(temp) ); - memset(temp, 0, sizeof(temp) ); /* burn temp */ -} - - -static void -cipher( byte *outbuf, const byte *inbuf, u16 *key ) -{ - u16 s2, s3; - u16 in[4]; - int r = IDEA_ROUNDS; -#define x1 (in[0]) -#define x2 (in[1]) -#define x3 (in[2]) -#define x4 (in[3]) -#define MUL(x,y) \ - do {u16 _t16; u32 _t32; \ - if( (_t16 = (y)) ) { \ - if( (x = (x)&0xffff) ) { \ - _t32 = (u32)x * _t16; \ - x = _t32 & 0xffff; \ - _t16 = _t32 >> 16; \ - x = ((x)-_t16) + (x<_t16?1:0); \ - } \ - else { \ - x = 1 - _t16; \ - } \ - } \ - else { \ - x = 1 - x; \ - } \ - } while(0) - - memcpy (in, inbuf, sizeof in); -#ifndef WORDS_BIGENDIAN - x1 = (x1>>8) | (x1<<8); - x2 = (x2>>8) | (x2<<8); - x3 = (x3>>8) | (x3<<8); - x4 = (x4>>8) | (x4<<8); -#endif - do { - MUL(x1, *key++); - x2 += *key++; - x3 += *key++; - MUL(x4, *key++ ); - - s3 = x3; - x3 ^= x1; - MUL(x3, *key++); - s2 = x2; - x2 ^=x4; - x2 += x3; - MUL(x2, *key++); - x3 += x2; - - x1 ^= x2; - x4 ^= x3; - - x2 ^= s3; - x3 ^= s2; - } while( --r ); - MUL(x1, *key++); - x3 += *key++; - x2 += *key++; - MUL(x4, *key); - -#ifndef WORDS_BIGENDIAN - x1 = (x1>>8) | (x1<<8); - x2 = (x2>>8) | (x2<<8); - x3 = (x3>>8) | (x3<<8); - x4 = (x4>>8) | (x4<<8); -#endif - memcpy (outbuf+0, &x1, 2); - memcpy (outbuf+2, &x3, 2); - memcpy (outbuf+4, &x2, 2); - memcpy (outbuf+6, &x4, 2); -#undef MUL -#undef x1 -#undef x2 -#undef x3 -#undef x4 -} - - -static int -do_setkey( IDEA_context *c, const byte *key, unsigned int keylen ) -{ - static int initialized = 0; - static const char *selftest_failed = 0; - - if( !initialized ) { - initialized = 1; - selftest_failed = selftest(); - if( selftest_failed ) - log_error( "%s\n", selftest_failed ); - } - if( selftest_failed ) - return GPG_ERR_SELFTEST_FAILED; - - assert(keylen == 16); - c->have_dk = 0; - expand_key( key, c->ek ); - invert_key( c->ek, c->dk ); - return 0; -} - -static gcry_err_code_t -idea_setkey (void *context, const byte *key, unsigned int keylen) -{ - IDEA_context *ctx = context; - int rc = do_setkey (ctx, key, keylen); - _gcry_burn_stack (23+6*sizeof(void*)); - return rc; -} - -static void -encrypt_block( IDEA_context *c, byte *outbuf, const byte *inbuf ) -{ - cipher( outbuf, inbuf, c->ek ); -} - -static void -idea_encrypt (void *context, byte *out, const byte *in) -{ - IDEA_context *ctx = context; - encrypt_block (ctx, out, in); - _gcry_burn_stack (24+3*sizeof (void*)); -} - -static void -decrypt_block( IDEA_context *c, byte *outbuf, const byte *inbuf ) -{ - if( !c->have_dk ) { - c->have_dk = 1; - invert_key( c->ek, c->dk ); - } - cipher( outbuf, inbuf, c->dk ); -} - -static void -idea_decrypt (void *context, byte *out, const byte *in) -{ - IDEA_context *ctx = context; - decrypt_block (ctx, out, in); - _gcry_burn_stack (24+3*sizeof (void*)); -} - - - - -gcry_cipher_spec_t _gcry_cipher_spec_idea = -{ - "IDEA", NULL, NULL, IDEA_BLOCKSIZE, 128, - sizeof (IDEA_context), - idea_setkey, idea_encrypt, idea_decrypt - , -#ifdef GRUB_UTIL - .modname = "gcry_idea", -#endif -}; - - -GRUB_MOD_INIT(gcry_idea) -{ - grub_cipher_register (&_gcry_cipher_spec_idea); -} - -GRUB_MOD_FINI(gcry_idea) -{ - grub_cipher_unregister (&_gcry_cipher_spec_idea); -} diff --git a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/init.c b/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/init.c deleted file mode 100644 index a02fe0fd9..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/init.c +++ /dev/null @@ -1,91 +0,0 @@ -#include -extern void grub_gcry_arcfour_init (void); -extern void grub_gcry_arcfour_fini (void); -extern void grub_gcry_blowfish_init (void); -extern void grub_gcry_blowfish_fini (void); -extern void grub_gcry_camellia_init (void); -extern void grub_gcry_camellia_fini (void); -extern void grub_gcry_cast5_init (void); -extern void grub_gcry_cast5_fini (void); -extern void grub_gcry_crc_init (void); -extern void grub_gcry_crc_fini (void); -extern void grub_gcry_des_init (void); -extern void grub_gcry_des_fini (void); -extern void grub_gcry_idea_init (void); -extern void grub_gcry_idea_fini (void); -extern void grub_gcry_md4_init (void); -extern void grub_gcry_md4_fini (void); -extern void grub_gcry_md5_init (void); -extern void grub_gcry_md5_fini (void); -extern void grub_gcry_rfc2268_init (void); -extern void grub_gcry_rfc2268_fini (void); -extern void grub_gcry_rijndael_init (void); -extern void grub_gcry_rijndael_fini (void); -extern void grub_gcry_rmd160_init (void); -extern void grub_gcry_rmd160_fini (void); -extern void grub_gcry_seed_init (void); -extern void grub_gcry_seed_fini (void); -extern void grub_gcry_serpent_init (void); -extern void grub_gcry_serpent_fini (void); -extern void grub_gcry_sha1_init (void); -extern void grub_gcry_sha1_fini (void); -extern void grub_gcry_sha256_init (void); -extern void grub_gcry_sha256_fini (void); -extern void grub_gcry_sha512_init (void); -extern void grub_gcry_sha512_fini (void); -extern void grub_gcry_tiger_init (void); -extern void grub_gcry_tiger_fini (void); -extern void grub_gcry_twofish_init (void); -extern void grub_gcry_twofish_fini (void); -extern void grub_gcry_whirlpool_init (void); -extern void grub_gcry_whirlpool_fini (void); - -void -grub_gcry_init_all (void) -{ - grub_gcry_arcfour_init (); - grub_gcry_blowfish_init (); - grub_gcry_camellia_init (); - grub_gcry_cast5_init (); - grub_gcry_crc_init (); - grub_gcry_des_init (); - grub_gcry_idea_init (); - grub_gcry_md4_init (); - grub_gcry_md5_init (); - grub_gcry_rfc2268_init (); - grub_gcry_rijndael_init (); - grub_gcry_rmd160_init (); - grub_gcry_seed_init (); - grub_gcry_serpent_init (); - grub_gcry_sha1_init (); - grub_gcry_sha256_init (); - grub_gcry_sha512_init (); - grub_gcry_tiger_init (); - grub_gcry_twofish_init (); - grub_gcry_whirlpool_init (); -} - -void -grub_gcry_fini_all (void) -{ - grub_gcry_arcfour_fini (); - grub_gcry_blowfish_fini (); - grub_gcry_camellia_fini (); - grub_gcry_cast5_fini (); - grub_gcry_crc_fini (); - grub_gcry_des_fini (); - grub_gcry_idea_fini (); - grub_gcry_md4_fini (); - grub_gcry_md5_fini (); - grub_gcry_rfc2268_fini (); - grub_gcry_rijndael_fini (); - grub_gcry_rmd160_fini (); - grub_gcry_seed_fini (); - grub_gcry_serpent_fini (); - grub_gcry_sha1_fini (); - grub_gcry_sha256_fini (); - grub_gcry_sha512_fini (); - grub_gcry_tiger_fini (); - grub_gcry_twofish_fini (); - grub_gcry_whirlpool_fini (); -} diff --git a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/md4.c b/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/md4.c deleted file mode 100644 index deb291af8..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/md4.c +++ /dev/null @@ -1,344 +0,0 @@ -/* This file was automatically imported with - import_gcry.py. Please don't modify it */ -#include -GRUB_MOD_LICENSE ("GPLv3+"); -/* md4.c - MD4 Message-Digest Algorithm - * Copyright (C) 2002, 2003 Free Software Foundation, Inc. - * - * This file is part of Libgcrypt. - * - * Libgcrypt is free software; you can redistribute it and/or modify - * it under the terms of the GNU Lesser General Public License as - * published by the Free Software Foundation; either version 2.1 of - * the License, or (at your option) any later version. - * - * Libgcrypt is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA - * - * Based on md5.c in libgcrypt, but rewritten to compute md4 checksums - * using a public domain md4 implementation with the following comments: - * - * Modified by Wei Dai from Andrew M. Kuchling's md4.c - * The original code and all modifications are in the public domain. - * - * This is the original introductory comment: - * - * md4.c : MD4 hash algorithm. - * - * Part of the Python Cryptography Toolkit, version 1.1 - * - * Distribute and use freely; there are no restrictions on further - * dissemination and usage except those imposed by the laws of your - * country of residence. - * - */ - -/* MD4 test suite: - * MD4 ("") = 31d6cfe0d16ae931b73c59d7e0c089c0 - * MD4 ("a") = bde52cb31de33e46245e05fbdbd6fb24 - * MD4 ("abc") = a448017aaf21d8525fc10ae87aa6729d - * MD4 ("message digest") = d9130a8164549fe818874806e1c7014b - * MD4 ("abcdefghijklmnopqrstuvwxyz") = d79e1c308aa5bbcdeea8ed63df412da9 - * MD4 ("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789") = - * 043f8582f241db351ce627e153e7f0e4 - * MD4 ("123456789012345678901234567890123456789012345678901234567890123456 - * 78901234567890") = e33b4ddc9c38f2199c3e7b164fcc0536 - */ - - -#include "g10lib.h" -#include "cipher.h" - -#include "bithelp.h" - - -typedef struct { - u32 A,B,C,D; /* chaining variables */ - u32 nblocks; - byte buf[64]; - int count; -} MD4_CONTEXT; - - -static void -md4_init( void *context ) -{ - MD4_CONTEXT *ctx = context; - - ctx->A = 0x67452301; - ctx->B = 0xefcdab89; - ctx->C = 0x98badcfe; - ctx->D = 0x10325476; - - ctx->nblocks = 0; - ctx->count = 0; -} - -#define F(x, y, z) ((z) ^ ((x) & ((y) ^ (z)))) -#define G(x, y, z) (((x) & (y)) | ((x) & (z)) | ((y) & (z))) -#define H(x, y, z) ((x) ^ (y) ^ (z)) - - -/**************** - * transform 64 bytes - */ -static void -transform ( MD4_CONTEXT *ctx, const unsigned char *data ) -{ - u32 in[16]; - register u32 A = ctx->A; - register u32 B = ctx->B; - register u32 C = ctx->C; - register u32 D = ctx->D; - -#ifdef WORDS_BIGENDIAN - { - int i; - byte *p2; - const byte *p1; - for(i=0, p1=data, p2=(byte*)in; i < 16; i++, p2 += 4 ) - { - p2[3] = *p1++; - p2[2] = *p1++; - p2[1] = *p1++; - p2[0] = *p1++; - } - } -#else - memcpy (in, data, 64); -#endif - - /* Round 1. */ -#define function(a,b,c,d,k,s) a=rol(a+F(b,c,d)+in[k],s); - function(A,B,C,D, 0, 3); - function(D,A,B,C, 1, 7); - function(C,D,A,B, 2,11); - function(B,C,D,A, 3,19); - function(A,B,C,D, 4, 3); - function(D,A,B,C, 5, 7); - function(C,D,A,B, 6,11); - function(B,C,D,A, 7,19); - function(A,B,C,D, 8, 3); - function(D,A,B,C, 9, 7); - function(C,D,A,B,10,11); - function(B,C,D,A,11,19); - function(A,B,C,D,12, 3); - function(D,A,B,C,13, 7); - function(C,D,A,B,14,11); - function(B,C,D,A,15,19); - -#undef function - - /* Round 2. */ -#define function(a,b,c,d,k,s) a=rol(a+G(b,c,d)+in[k]+0x5a827999,s); - - function(A,B,C,D, 0, 3); - function(D,A,B,C, 4, 5); - function(C,D,A,B, 8, 9); - function(B,C,D,A,12,13); - function(A,B,C,D, 1, 3); - function(D,A,B,C, 5, 5); - function(C,D,A,B, 9, 9); - function(B,C,D,A,13,13); - function(A,B,C,D, 2, 3); - function(D,A,B,C, 6, 5); - function(C,D,A,B,10, 9); - function(B,C,D,A,14,13); - function(A,B,C,D, 3, 3); - function(D,A,B,C, 7, 5); - function(C,D,A,B,11, 9); - function(B,C,D,A,15,13); - -#undef function - - /* Round 3. */ -#define function(a,b,c,d,k,s) a=rol(a+H(b,c,d)+in[k]+0x6ed9eba1,s); - - function(A,B,C,D, 0, 3); - function(D,A,B,C, 8, 9); - function(C,D,A,B, 4,11); - function(B,C,D,A,12,15); - function(A,B,C,D, 2, 3); - function(D,A,B,C,10, 9); - function(C,D,A,B, 6,11); - function(B,C,D,A,14,15); - function(A,B,C,D, 1, 3); - function(D,A,B,C, 9, 9); - function(C,D,A,B, 5,11); - function(B,C,D,A,13,15); - function(A,B,C,D, 3, 3); - function(D,A,B,C,11, 9); - function(C,D,A,B, 7,11); - function(B,C,D,A,15,15); - - - /* Put checksum in context given as argument. */ - ctx->A += A; - ctx->B += B; - ctx->C += C; - ctx->D += D; -} - - - -/* The routine updates the message-digest context to - * account for the presence of each of the characters inBuf[0..inLen-1] - * in the message whose digest is being computed. - */ -static void -md4_write ( void *context, const void *inbuf_arg, size_t inlen) -{ - const unsigned char *inbuf = inbuf_arg; - MD4_CONTEXT *hd = context; - - if( hd->count == 64 ) /* flush the buffer */ - { - transform( hd, hd->buf ); - _gcry_burn_stack (80+6*sizeof(void*)); - hd->count = 0; - hd->nblocks++; - } - if( !inbuf ) - return; - - if( hd->count ) - { - for( ; inlen && hd->count < 64; inlen-- ) - hd->buf[hd->count++] = *inbuf++; - md4_write( hd, NULL, 0 ); - if( !inlen ) - return; - } - _gcry_burn_stack (80+6*sizeof(void*)); - - while( inlen >= 64 ) - { - transform( hd, inbuf ); - hd->count = 0; - hd->nblocks++; - inlen -= 64; - inbuf += 64; - } - for( ; inlen && hd->count < 64; inlen-- ) - hd->buf[hd->count++] = *inbuf++; -} - - - -/* The routine final terminates the message-digest computation and - * ends with the desired message digest in mdContext->digest[0...15]. - * The handle is prepared for a new MD4 cycle. - * Returns 16 bytes representing the digest. - */ - -static void -md4_final( void *context ) -{ - MD4_CONTEXT *hd = context; - u32 t, msb, lsb; - byte *p; - - md4_write(hd, NULL, 0); /* flush */; - - t = hd->nblocks; - /* multiply by 64 to make a byte count */ - lsb = t << 6; - msb = t >> 26; - /* add the count */ - t = lsb; - if( (lsb += hd->count) < t ) - msb++; - /* multiply by 8 to make a bit count */ - t = lsb; - lsb <<= 3; - msb <<= 3; - msb |= t >> 29; - - if( hd->count < 56 ) /* enough room */ - { - hd->buf[hd->count++] = 0x80; /* pad */ - while( hd->count < 56 ) - hd->buf[hd->count++] = 0; /* pad */ - } - else /* need one extra block */ - { - hd->buf[hd->count++] = 0x80; /* pad character */ - while( hd->count < 64 ) - hd->buf[hd->count++] = 0; - md4_write(hd, NULL, 0); /* flush */; - memset(hd->buf, 0, 56 ); /* fill next block with zeroes */ - } - /* append the 64 bit count */ - hd->buf[56] = lsb ; - hd->buf[57] = lsb >> 8; - hd->buf[58] = lsb >> 16; - hd->buf[59] = lsb >> 24; - hd->buf[60] = msb ; - hd->buf[61] = msb >> 8; - hd->buf[62] = msb >> 16; - hd->buf[63] = msb >> 24; - transform( hd, hd->buf ); - _gcry_burn_stack (80+6*sizeof(void*)); - - p = hd->buf; -#ifdef WORDS_BIGENDIAN -#define X(a) do { *p++ = hd->a ; *p++ = hd->a >> 8; \ - *p++ = hd->a >> 16; *p++ = hd->a >> 24; } while(0) -#else /* little endian */ -#define X(a) do { *(u32*)p = (*hd).a ; p += 4; } while(0) -#endif - X(A); - X(B); - X(C); - X(D); -#undef X - -} - -static byte * -md4_read (void *context) -{ - MD4_CONTEXT *hd = context; - return hd->buf; -} - -static byte asn[18] = /* Object ID is 1.2.840.113549.2.4 */ - { 0x30, 0x20, 0x30, 0x0c, 0x06, 0x08, 0x2a, 0x86,0x48, - 0x86, 0xf7, 0x0d, 0x02, 0x04, 0x05, 0x00, 0x04, 0x10 }; - -static gcry_md_oid_spec_t oid_spec_md4[] = - { - /* iso.member-body.us.rsadsi.digestAlgorithm.md4 */ - { "1.2.840.113549.2.4" }, - { NULL }, - }; - -gcry_md_spec_t _gcry_digest_spec_md4 = - { - "MD4", asn, DIM (asn), oid_spec_md4,16, - md4_init, md4_write, md4_final, md4_read, - sizeof (MD4_CONTEXT) - , -#ifdef GRUB_UTIL - .modname = "gcry_md4", -#endif - .blocksize = 64 - }; - - -GRUB_MOD_INIT(gcry_md4) -{ - COMPILE_TIME_ASSERT(sizeof (MD4_CONTEXT) <= GRUB_CRYPTO_MAX_MD_CONTEXT_SIZE); - grub_md_register (&_gcry_digest_spec_md4); -} - -GRUB_MOD_FINI(gcry_md4) -{ - grub_md_unregister (&_gcry_digest_spec_md4); -} diff --git a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/md5.c b/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/md5.c deleted file mode 100644 index e5b6accca..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/md5.c +++ /dev/null @@ -1,372 +0,0 @@ -/* This file was automatically imported with - import_gcry.py. Please don't modify it */ -#include -GRUB_MOD_LICENSE ("GPLv3+"); -/* md5.c - MD5 Message-Digest Algorithm - * Copyright (C) 1995,1996,1998,1999,2001,2002, - * 2003 Free Software Foundation, Inc. - * - * This file is part of Libgcrypt. - * - * Libgcrypt is free software; you can redistribute it and/or modify - * it under the terms of the GNU Lesser General Public License as - * published by the Free Software Foundation; either version 2.1 of - * the License, or (at your option) any later version. - * - * Libgcrypt is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA - * - * According to the definition of MD5 in RFC 1321 from April 1992. - * NOTE: This is *not* the same file as the one from glibc. - * Written by Ulrich Drepper , 1995. - * heavily modified for GnuPG by Werner Koch - */ - -/* Test values: - * "" D4 1D 8C D9 8F 00 B2 04 E9 80 09 98 EC F8 42 7E - * "a" 0C C1 75 B9 C0 F1 B6 A8 31 C3 99 E2 69 77 26 61 - * "abc 90 01 50 98 3C D2 4F B0 D6 96 3F 7D 28 E1 7F 72 - * "message digest" F9 6B 69 7D 7C B7 93 8D 52 5A 2F 31 AA F1 61 D0 - */ - - -#include "g10lib.h" -#include "cipher.h" - -#include "bithelp.h" - - -typedef struct { - u32 A,B,C,D; /* chaining variables */ - u32 nblocks; - byte buf[64]; - int count; -} MD5_CONTEXT; - - -static void -md5_init( void *context ) -{ - MD5_CONTEXT *ctx = context; - - ctx->A = 0x67452301; - ctx->B = 0xefcdab89; - ctx->C = 0x98badcfe; - ctx->D = 0x10325476; - - ctx->nblocks = 0; - ctx->count = 0; -} - - -/* These are the four functions used in the four steps of the MD5 algorithm - and defined in the RFC 1321. The first function is a little bit optimized - (as found in Colin Plumbs public domain implementation). */ -/* #define FF(b, c, d) ((b & c) | (~b & d)) */ -#define FF(b, c, d) (d ^ (b & (c ^ d))) -#define FG(b, c, d) FF (d, b, c) -#define FH(b, c, d) (b ^ c ^ d) -#define FI(b, c, d) (c ^ (b | ~d)) - - -/**************** - * transform n*64 bytes - */ -static void -transform ( MD5_CONTEXT *ctx, const unsigned char *data ) -{ - u32 correct_words[16]; - register u32 A = ctx->A; - register u32 B = ctx->B; - register u32 C = ctx->C; - register u32 D = ctx->D; - u32 *cwp = correct_words; - -#ifdef WORDS_BIGENDIAN - { - int i; - byte *p2; - const byte *p1; - for(i=0, p1=data, p2=(byte*)correct_words; i < 16; i++, p2 += 4 ) - { - p2[3] = *p1++; - p2[2] = *p1++; - p2[1] = *p1++; - p2[0] = *p1++; - } - } -#else - memcpy( correct_words, data, 64 ); -#endif - - -#define OP(a, b, c, d, s, T) \ - do \ - { \ - a += FF (b, c, d) + (*cwp++) + T; \ - a = rol(a, s); \ - a += b; \ - } \ - while (0) - - /* Before we start, one word about the strange constants. - They are defined in RFC 1321 as - - T[i] = (int) (4294967296.0 * fabs (sin (i))), i=1..64 - */ - - /* Round 1. */ - OP (A, B, C, D, 7, 0xd76aa478); - OP (D, A, B, C, 12, 0xe8c7b756); - OP (C, D, A, B, 17, 0x242070db); - OP (B, C, D, A, 22, 0xc1bdceee); - OP (A, B, C, D, 7, 0xf57c0faf); - OP (D, A, B, C, 12, 0x4787c62a); - OP (C, D, A, B, 17, 0xa8304613); - OP (B, C, D, A, 22, 0xfd469501); - OP (A, B, C, D, 7, 0x698098d8); - OP (D, A, B, C, 12, 0x8b44f7af); - OP (C, D, A, B, 17, 0xffff5bb1); - OP (B, C, D, A, 22, 0x895cd7be); - OP (A, B, C, D, 7, 0x6b901122); - OP (D, A, B, C, 12, 0xfd987193); - OP (C, D, A, B, 17, 0xa679438e); - OP (B, C, D, A, 22, 0x49b40821); - -#undef OP -#define OP(f, a, b, c, d, k, s, T) \ - do \ - { \ - a += f (b, c, d) + correct_words[k] + T; \ - a = rol(a, s); \ - a += b; \ - } \ - while (0) - - /* Round 2. */ - OP (FG, A, B, C, D, 1, 5, 0xf61e2562); - OP (FG, D, A, B, C, 6, 9, 0xc040b340); - OP (FG, C, D, A, B, 11, 14, 0x265e5a51); - OP (FG, B, C, D, A, 0, 20, 0xe9b6c7aa); - OP (FG, A, B, C, D, 5, 5, 0xd62f105d); - OP (FG, D, A, B, C, 10, 9, 0x02441453); - OP (FG, C, D, A, B, 15, 14, 0xd8a1e681); - OP (FG, B, C, D, A, 4, 20, 0xe7d3fbc8); - OP (FG, A, B, C, D, 9, 5, 0x21e1cde6); - OP (FG, D, A, B, C, 14, 9, 0xc33707d6); - OP (FG, C, D, A, B, 3, 14, 0xf4d50d87); - OP (FG, B, C, D, A, 8, 20, 0x455a14ed); - OP (FG, A, B, C, D, 13, 5, 0xa9e3e905); - OP (FG, D, A, B, C, 2, 9, 0xfcefa3f8); - OP (FG, C, D, A, B, 7, 14, 0x676f02d9); - OP (FG, B, C, D, A, 12, 20, 0x8d2a4c8a); - - /* Round 3. */ - OP (FH, A, B, C, D, 5, 4, 0xfffa3942); - OP (FH, D, A, B, C, 8, 11, 0x8771f681); - OP (FH, C, D, A, B, 11, 16, 0x6d9d6122); - OP (FH, B, C, D, A, 14, 23, 0xfde5380c); - OP (FH, A, B, C, D, 1, 4, 0xa4beea44); - OP (FH, D, A, B, C, 4, 11, 0x4bdecfa9); - OP (FH, C, D, A, B, 7, 16, 0xf6bb4b60); - OP (FH, B, C, D, A, 10, 23, 0xbebfbc70); - OP (FH, A, B, C, D, 13, 4, 0x289b7ec6); - OP (FH, D, A, B, C, 0, 11, 0xeaa127fa); - OP (FH, C, D, A, B, 3, 16, 0xd4ef3085); - OP (FH, B, C, D, A, 6, 23, 0x04881d05); - OP (FH, A, B, C, D, 9, 4, 0xd9d4d039); - OP (FH, D, A, B, C, 12, 11, 0xe6db99e5); - OP (FH, C, D, A, B, 15, 16, 0x1fa27cf8); - OP (FH, B, C, D, A, 2, 23, 0xc4ac5665); - - /* Round 4. */ - OP (FI, A, B, C, D, 0, 6, 0xf4292244); - OP (FI, D, A, B, C, 7, 10, 0x432aff97); - OP (FI, C, D, A, B, 14, 15, 0xab9423a7); - OP (FI, B, C, D, A, 5, 21, 0xfc93a039); - OP (FI, A, B, C, D, 12, 6, 0x655b59c3); - OP (FI, D, A, B, C, 3, 10, 0x8f0ccc92); - OP (FI, C, D, A, B, 10, 15, 0xffeff47d); - OP (FI, B, C, D, A, 1, 21, 0x85845dd1); - OP (FI, A, B, C, D, 8, 6, 0x6fa87e4f); - OP (FI, D, A, B, C, 15, 10, 0xfe2ce6e0); - OP (FI, C, D, A, B, 6, 15, 0xa3014314); - OP (FI, B, C, D, A, 13, 21, 0x4e0811a1); - OP (FI, A, B, C, D, 4, 6, 0xf7537e82); - OP (FI, D, A, B, C, 11, 10, 0xbd3af235); - OP (FI, C, D, A, B, 2, 15, 0x2ad7d2bb); - OP (FI, B, C, D, A, 9, 21, 0xeb86d391); - - /* Put checksum in context given as argument. */ - ctx->A += A; - ctx->B += B; - ctx->C += C; - ctx->D += D; -} - - - -/* The routine updates the message-digest context to - * account for the presence of each of the characters inBuf[0..inLen-1] - * in the message whose digest is being computed. - */ -static void -md5_write( void *context, const void *inbuf_arg , size_t inlen) -{ - const unsigned char *inbuf = inbuf_arg; - MD5_CONTEXT *hd = context; - - if( hd->count == 64 ) /* flush the buffer */ - { - transform( hd, hd->buf ); - _gcry_burn_stack (80+6*sizeof(void*)); - hd->count = 0; - hd->nblocks++; - } - if( !inbuf ) - return; - - if( hd->count ) - { - for( ; inlen && hd->count < 64; inlen-- ) - hd->buf[hd->count++] = *inbuf++; - md5_write( hd, NULL, 0 ); - if( !inlen ) - return; - } - _gcry_burn_stack (80+6*sizeof(void*)); - - while( inlen >= 64 ) - { - transform( hd, inbuf ); - hd->count = 0; - hd->nblocks++; - inlen -= 64; - inbuf += 64; - } - for( ; inlen && hd->count < 64; inlen-- ) - hd->buf[hd->count++] = *inbuf++; - -} - - - -/* The routine final terminates the message-digest computation and - * ends with the desired message digest in mdContext->digest[0...15]. - * The handle is prepared for a new MD5 cycle. - * Returns 16 bytes representing the digest. - */ - -static void -md5_final( void *context) -{ - MD5_CONTEXT *hd = context; - u32 t, msb, lsb; - byte *p; - - md5_write(hd, NULL, 0); /* flush */; - - t = hd->nblocks; - /* multiply by 64 to make a byte count */ - lsb = t << 6; - msb = t >> 26; - /* add the count */ - t = lsb; - if( (lsb += hd->count) < t ) - msb++; - /* multiply by 8 to make a bit count */ - t = lsb; - lsb <<= 3; - msb <<= 3; - msb |= t >> 29; - - if( hd->count < 56 ) /* enough room */ - { - hd->buf[hd->count++] = 0x80; /* pad */ - while( hd->count < 56 ) - hd->buf[hd->count++] = 0; /* pad */ - } - else /* need one extra block */ - { - hd->buf[hd->count++] = 0x80; /* pad character */ - while( hd->count < 64 ) - hd->buf[hd->count++] = 0; - md5_write(hd, NULL, 0); /* flush */; - memset(hd->buf, 0, 56 ); /* fill next block with zeroes */ - } - /* append the 64 bit count */ - hd->buf[56] = lsb ; - hd->buf[57] = lsb >> 8; - hd->buf[58] = lsb >> 16; - hd->buf[59] = lsb >> 24; - hd->buf[60] = msb ; - hd->buf[61] = msb >> 8; - hd->buf[62] = msb >> 16; - hd->buf[63] = msb >> 24; - transform( hd, hd->buf ); - _gcry_burn_stack (80+6*sizeof(void*)); - - p = hd->buf; -#ifdef WORDS_BIGENDIAN -#define X(a) do { *p++ = hd->a ; *p++ = hd->a >> 8; \ - *p++ = hd->a >> 16; *p++ = hd->a >> 24; } while(0) -#else /* little endian */ -#define X(a) do { *(u32*)p = (*hd).a ; p += 4; } while(0) -#endif - X(A); - X(B); - X(C); - X(D); -#undef X - -} - -static byte * -md5_read( void *context ) -{ - MD5_CONTEXT *hd = (MD5_CONTEXT *) context; - return hd->buf; -} - -static byte asn[18] = /* Object ID is 1.2.840.113549.2.5 */ - { 0x30, 0x20, 0x30, 0x0c, 0x06, 0x08, 0x2a, 0x86,0x48, - 0x86, 0xf7, 0x0d, 0x02, 0x05, 0x05, 0x00, 0x04, 0x10 }; - -static gcry_md_oid_spec_t oid_spec_md5[] = - { - /* iso.member-body.us.rsadsi.pkcs.pkcs-1.4 (md5WithRSAEncryption) */ - { "1.2.840.113549.1.1.4" }, - /* RSADSI digestAlgorithm MD5 */ - { "1.2.840.113549.2.5" }, - { NULL }, - }; - -gcry_md_spec_t _gcry_digest_spec_md5 = - { - "MD5", asn, DIM (asn), oid_spec_md5, 16, - md5_init, md5_write, md5_final, md5_read, - sizeof (MD5_CONTEXT) - , -#ifdef GRUB_UTIL - .modname = "gcry_md5", -#endif - .blocksize = 64 - }; - - -GRUB_MOD_INIT(gcry_md5) -{ - COMPILE_TIME_ASSERT(sizeof (MD5_CONTEXT) <= GRUB_CRYPTO_MAX_MD_CONTEXT_SIZE); - grub_md_register (&_gcry_digest_spec_md5); -} - -GRUB_MOD_FINI(gcry_md5) -{ - grub_md_unregister (&_gcry_digest_spec_md5); -} diff --git a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/memory.h b/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/memory.h deleted file mode 100644 index 49cc16a2a..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/memory.h +++ /dev/null @@ -1 +0,0 @@ -#include diff --git a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/rfc2268.c b/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/rfc2268.c deleted file mode 100644 index c5c4a4b7c..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/rfc2268.c +++ /dev/null @@ -1,285 +0,0 @@ -/* This file was automatically imported with - import_gcry.py. Please don't modify it */ -#include -GRUB_MOD_LICENSE ("GPLv3+"); -/* rfc2268.c - The cipher described in rfc2268; aka Ron's Cipher 2. - * Copyright (C) 2003 Nikos Mavroyanopoulos - * Copyright (C) 2004 Free Software Foundation, Inc. - * - * This file is part of Libgcrypt - * - * Libgcrypt is free software; you can redistribute it and/or modify - * it under the terms of the GNU Lesser general Public License as - * published by the Free Software Foundation; either version 2.1 of - * the License, or (at your option) any later version. - * - * Libgcrypt is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA - */ - -/* This implementation was written by Nikos Mavroyanopoulos for GNUTLS - * as a Libgcrypt module (gnutls/lib/x509/rc2.c) and later adapted for - * direct use by Libgcrypt by Werner Koch. This implementation is - * only useful for pkcs#12 decryption. - * - * The implementation here is based on Peter Gutmann's RRC.2 paper. - */ - - -#include "g10lib.h" -#include "types.h" -#include "cipher.h" - -#define RFC2268_BLOCKSIZE 8 - -typedef struct -{ - u16 S[64]; -} RFC2268_context; - -static const unsigned char rfc2268_sbox[] = { - 217, 120, 249, 196, 25, 221, 181, 237, - 40, 233, 253, 121, 74, 160, 216, 157, - 198, 126, 55, 131, 43, 118, 83, 142, - 98, 76, 100, 136, 68, 139, 251, 162, - 23, 154, 89, 245, 135, 179, 79, 19, - 97, 69, 109, 141, 9, 129, 125, 50, - 189, 143, 64, 235, 134, 183, 123, 11, - 240, 149, 33, 34, 92, 107, 78, 130, - 84, 214, 101, 147, 206, 96, 178, 28, - 115, 86, 192, 20, 167, 140, 241, 220, - 18, 117, 202, 31, 59, 190, 228, 209, - 66, 61, 212, 48, 163, 60, 182, 38, - 111, 191, 14, 218, 70, 105, 7, 87, - 39, 242, 29, 155, 188, 148, 67, 3, - 248, 17, 199, 246, 144, 239, 62, 231, - 6, 195, 213, 47, 200, 102, 30, 215, - 8, 232, 234, 222, 128, 82, 238, 247, - 132, 170, 114, 172, 53, 77, 106, 42, - 150, 26, 210, 113, 90, 21, 73, 116, - 75, 159, 208, 94, 4, 24, 164, 236, - 194, 224, 65, 110, 15, 81, 203, 204, - 36, 145, 175, 80, 161, 244, 112, 57, - 153, 124, 58, 133, 35, 184, 180, 122, - 252, 2, 54, 91, 37, 85, 151, 49, - 45, 93, 250, 152, 227, 138, 146, 174, - 5, 223, 41, 16, 103, 108, 186, 201, - 211, 0, 230, 207, 225, 158, 168, 44, - 99, 22, 1, 63, 88, 226, 137, 169, - 13, 56, 52, 27, 171, 51, 255, 176, - 187, 72, 12, 95, 185, 177, 205, 46, - 197, 243, 219, 71, 229, 165, 156, 119, - 10, 166, 32, 104, 254, 127, 193, 173 -}; - -#define rotl16(x,n) (((x) << ((u16)(n))) | ((x) >> (16 - (u16)(n)))) -#define rotr16(x,n) (((x) >> ((u16)(n))) | ((x) << (16 - (u16)(n)))) - - - -static void -do_encrypt (void *context, unsigned char *outbuf, const unsigned char *inbuf) -{ - RFC2268_context *ctx = context; - register int i, j; - u16 word0 = 0, word1 = 0, word2 = 0, word3 = 0; - - word0 = (word0 << 8) | inbuf[1]; - word0 = (word0 << 8) | inbuf[0]; - word1 = (word1 << 8) | inbuf[3]; - word1 = (word1 << 8) | inbuf[2]; - word2 = (word2 << 8) | inbuf[5]; - word2 = (word2 << 8) | inbuf[4]; - word3 = (word3 << 8) | inbuf[7]; - word3 = (word3 << 8) | inbuf[6]; - - for (i = 0; i < 16; i++) - { - j = i * 4; - /* For some reason I cannot combine those steps. */ - word0 += (word1 & ~word3) + (word2 & word3) + ctx->S[j]; - word0 = rotl16(word0, 1); - - word1 += (word2 & ~word0) + (word3 & word0) + ctx->S[j + 1]; - word1 = rotl16(word1, 2); - - word2 += (word3 & ~word1) + (word0 & word1) + ctx->S[j + 2]; - word2 = rotl16(word2, 3); - - word3 += (word0 & ~word2) + (word1 & word2) + ctx->S[j + 3]; - word3 = rotl16(word3, 5); - - if (i == 4 || i == 10) - { - word0 += ctx->S[word3 & 63]; - word1 += ctx->S[word0 & 63]; - word2 += ctx->S[word1 & 63]; - word3 += ctx->S[word2 & 63]; - } - - } - - outbuf[0] = word0 & 255; - outbuf[1] = word0 >> 8; - outbuf[2] = word1 & 255; - outbuf[3] = word1 >> 8; - outbuf[4] = word2 & 255; - outbuf[5] = word2 >> 8; - outbuf[6] = word3 & 255; - outbuf[7] = word3 >> 8; -} - -static void -do_decrypt (void *context, unsigned char *outbuf, const unsigned char *inbuf) -{ - RFC2268_context *ctx = context; - register int i, j; - u16 word0 = 0, word1 = 0, word2 = 0, word3 = 0; - - word0 = (word0 << 8) | inbuf[1]; - word0 = (word0 << 8) | inbuf[0]; - word1 = (word1 << 8) | inbuf[3]; - word1 = (word1 << 8) | inbuf[2]; - word2 = (word2 << 8) | inbuf[5]; - word2 = (word2 << 8) | inbuf[4]; - word3 = (word3 << 8) | inbuf[7]; - word3 = (word3 << 8) | inbuf[6]; - - for (i = 15; i >= 0; i--) - { - j = i * 4; - - word3 = rotr16(word3, 5); - word3 -= (word0 & ~word2) + (word1 & word2) + ctx->S[j + 3]; - - word2 = rotr16(word2, 3); - word2 -= (word3 & ~word1) + (word0 & word1) + ctx->S[j + 2]; - - word1 = rotr16(word1, 2); - word1 -= (word2 & ~word0) + (word3 & word0) + ctx->S[j + 1]; - - word0 = rotr16(word0, 1); - word0 -= (word1 & ~word3) + (word2 & word3) + ctx->S[j]; - - if (i == 5 || i == 11) - { - word3 = word3 - ctx->S[word2 & 63]; - word2 = word2 - ctx->S[word1 & 63]; - word1 = word1 - ctx->S[word0 & 63]; - word0 = word0 - ctx->S[word3 & 63]; - } - - } - - outbuf[0] = word0 & 255; - outbuf[1] = word0 >> 8; - outbuf[2] = word1 & 255; - outbuf[3] = word1 >> 8; - outbuf[4] = word2 & 255; - outbuf[5] = word2 >> 8; - outbuf[6] = word3 & 255; - outbuf[7] = word3 >> 8; -} - - -static gpg_err_code_t -setkey_core (void *context, const unsigned char *key, unsigned int keylen, int with_phase2) -{ - static int initialized; - static const char *selftest_failed; - RFC2268_context *ctx = context; - unsigned int i; - unsigned char *S, x; - int len; - int bits = keylen * 8; - - if (!initialized) - { - initialized = 1; - selftest_failed = selftest (); - if (selftest_failed) - log_error ("RFC2268 selftest failed (%s).\n", selftest_failed); - } - if (selftest_failed) - return GPG_ERR_SELFTEST_FAILED; - - if (keylen < 40 / 8) /* We want at least 40 bits. */ - return GPG_ERR_INV_KEYLEN; - - S = (unsigned char *) ctx->S; - - for (i = 0; i < keylen; i++) - S[i] = key[i]; - - for (i = keylen; i < 128; i++) - S[i] = rfc2268_sbox[(S[i - keylen] + S[i - 1]) & 255]; - - S[0] = rfc2268_sbox[S[0]]; - - /* Phase 2 - reduce effective key size to "bits". This was not - * discussed in Gutmann's paper. I've copied that from the public - * domain code posted in sci.crypt. */ - if (with_phase2) - { - len = (bits + 7) >> 3; - i = 128 - len; - x = rfc2268_sbox[S[i] & (255 >> (7 & -bits))]; - S[i] = x; - - while (i--) - { - x = rfc2268_sbox[x ^ S[i + len]]; - S[i] = x; - } - } - - /* Make the expanded key, endian independent. */ - for (i = 0; i < 64; i++) - ctx->S[i] = ( (u16) S[i * 2] | (((u16) S[i * 2 + 1]) << 8)); - - return 0; -} - -static gpg_err_code_t -do_setkey (void *context, const unsigned char *key, unsigned int keylen) -{ - return setkey_core (context, key, keylen, 1); -} - - - - -static gcry_cipher_oid_spec_t oids_rfc2268_40[] = - { - /*{ "1.2.840.113549.3.2", GCRY_CIPHER_MODE_CBC },*/ - /* pbeWithSHAAnd40BitRC2_CBC */ - { "1.2.840.113549.1.12.1.6", GCRY_CIPHER_MODE_CBC }, - { NULL } - }; - -gcry_cipher_spec_t _gcry_cipher_spec_rfc2268_40 = { - "RFC2268_40", NULL, oids_rfc2268_40, - RFC2268_BLOCKSIZE, 40, sizeof(RFC2268_context), - do_setkey, do_encrypt, do_decrypt - , -#ifdef GRUB_UTIL - .modname = "gcry_rfc2268", -#endif -}; - - -GRUB_MOD_INIT(gcry_rfc2268) -{ - grub_cipher_register (&_gcry_cipher_spec_rfc2268_40); -} - -GRUB_MOD_FINI(gcry_rfc2268) -{ - grub_cipher_unregister (&_gcry_cipher_spec_rfc2268_40); -} diff --git a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/rijndael-tables.h b/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/rijndael-tables.h deleted file mode 100644 index 8027db6ee..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/rijndael-tables.h +++ /dev/null @@ -1,1689 +0,0 @@ -/* This file was automatically imported with - import_gcry.py. Please don't modify it */ -#include -/* rijndael-tables.h - Rijndael (AES) for GnuPG, - * Copyright (C) 2000, 2001, 2002, 2003, 2007, - * 2008 Free Software Foundation, Inc. - * - * This file is part of Libgcrypt. - * - * Libgcrypt is free software; you can redistribute it and/or modify - * it under the terms of the GNU Lesser General Public License as - * published by the Free Software Foundation; either version 2.1 of - * the License, or (at your option) any later version. - * - * Libgcrypt is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this program; if not, see . - */ - -/* To keep the actual implementation at a readable size we use this - include file to define the tables. */ - -static const unsigned char S[256] = - { - 99, 124, 119, 123, 242, 107, 111, 197, - 48, 1, 103, 43, 254, 215, 171, 118, - 202, 130, 201, 125, 250, 89, 71, 240, - 173, 212, 162, 175, 156, 164, 114, 192, - 183, 253, 147, 38, 54, 63, 247, 204, - 52, 165, 229, 241, 113, 216, 49, 21, - 4, 199, 35, 195, 24, 150, 5, 154, - 7, 18, 128, 226, 235, 39, 178, 117, - 9, 131, 44, 26, 27, 110, 90, 160, - 82, 59, 214, 179, 41, 227, 47, 132, - 83, 209, 0, 237, 32, 252, 177, 91, - 106, 203, 190, 57, 74, 76, 88, 207, - 208, 239, 170, 251, 67, 77, 51, 133, - 69, 249, 2, 127, 80, 60, 159, 168, - 81, 163, 64, 143, 146, 157, 56, 245, - 188, 182, 218, 33, 16, 255, 243, 210, - 205, 12, 19, 236, 95, 151, 68, 23, - 196, 167, 126, 61, 100, 93, 25, 115, - 96, 129, 79, 220, 34, 42, 144, 136, - 70, 238, 184, 20, 222, 94, 11, 219, - 224, 50, 58, 10, 73, 6, 36, 92, - 194, 211, 172, 98, 145, 149, 228, 121, - 231, 200, 55, 109, 141, 213, 78, 169, - 108, 86, 244, 234, 101, 122, 174, 8, - 186, 120, 37, 46, 28, 166, 180, 198, - 232, 221, 116, 31, 75, 189, 139, 138, - 112, 62, 181, 102, 72, 3, 246, 14, - 97, 53, 87, 185, 134, 193, 29, 158, - 225, 248, 152, 17, 105, 217, 142, 148, - 155, 30, 135, 233, 206, 85, 40, 223, - 140, 161, 137, 13, 191, 230, 66, 104, - 65, 153, 45, 15, 176, 84, 187, 22 - }; - - -static const unsigned char T1[256][4] = - { - { 0xc6,0x63,0x63,0xa5 }, { 0xf8,0x7c,0x7c,0x84 }, - { 0xee,0x77,0x77,0x99 }, { 0xf6,0x7b,0x7b,0x8d }, - { 0xff,0xf2,0xf2,0x0d }, { 0xd6,0x6b,0x6b,0xbd }, - { 0xde,0x6f,0x6f,0xb1 }, { 0x91,0xc5,0xc5,0x54 }, - { 0x60,0x30,0x30,0x50 }, { 0x02,0x01,0x01,0x03 }, - { 0xce,0x67,0x67,0xa9 }, { 0x56,0x2b,0x2b,0x7d }, - { 0xe7,0xfe,0xfe,0x19 }, { 0xb5,0xd7,0xd7,0x62 }, - { 0x4d,0xab,0xab,0xe6 }, { 0xec,0x76,0x76,0x9a }, - { 0x8f,0xca,0xca,0x45 }, { 0x1f,0x82,0x82,0x9d }, - { 0x89,0xc9,0xc9,0x40 }, { 0xfa,0x7d,0x7d,0x87 }, - { 0xef,0xfa,0xfa,0x15 }, { 0xb2,0x59,0x59,0xeb }, - { 0x8e,0x47,0x47,0xc9 }, { 0xfb,0xf0,0xf0,0x0b }, - { 0x41,0xad,0xad,0xec }, { 0xb3,0xd4,0xd4,0x67 }, - { 0x5f,0xa2,0xa2,0xfd }, { 0x45,0xaf,0xaf,0xea }, - { 0x23,0x9c,0x9c,0xbf }, { 0x53,0xa4,0xa4,0xf7 }, - { 0xe4,0x72,0x72,0x96 }, { 0x9b,0xc0,0xc0,0x5b }, - { 0x75,0xb7,0xb7,0xc2 }, { 0xe1,0xfd,0xfd,0x1c }, - { 0x3d,0x93,0x93,0xae }, { 0x4c,0x26,0x26,0x6a }, - { 0x6c,0x36,0x36,0x5a }, { 0x7e,0x3f,0x3f,0x41 }, - { 0xf5,0xf7,0xf7,0x02 }, { 0x83,0xcc,0xcc,0x4f }, - { 0x68,0x34,0x34,0x5c }, { 0x51,0xa5,0xa5,0xf4 }, - { 0xd1,0xe5,0xe5,0x34 }, { 0xf9,0xf1,0xf1,0x08 }, - { 0xe2,0x71,0x71,0x93 }, { 0xab,0xd8,0xd8,0x73 }, - { 0x62,0x31,0x31,0x53 }, { 0x2a,0x15,0x15,0x3f }, - { 0x08,0x04,0x04,0x0c }, { 0x95,0xc7,0xc7,0x52 }, - { 0x46,0x23,0x23,0x65 }, { 0x9d,0xc3,0xc3,0x5e }, - { 0x30,0x18,0x18,0x28 }, { 0x37,0x96,0x96,0xa1 }, - { 0x0a,0x05,0x05,0x0f }, { 0x2f,0x9a,0x9a,0xb5 }, - { 0x0e,0x07,0x07,0x09 }, { 0x24,0x12,0x12,0x36 }, - { 0x1b,0x80,0x80,0x9b }, { 0xdf,0xe2,0xe2,0x3d }, - { 0xcd,0xeb,0xeb,0x26 }, { 0x4e,0x27,0x27,0x69 }, - { 0x7f,0xb2,0xb2,0xcd }, { 0xea,0x75,0x75,0x9f }, - { 0x12,0x09,0x09,0x1b }, { 0x1d,0x83,0x83,0x9e }, - { 0x58,0x2c,0x2c,0x74 }, { 0x34,0x1a,0x1a,0x2e }, - { 0x36,0x1b,0x1b,0x2d }, { 0xdc,0x6e,0x6e,0xb2 }, - { 0xb4,0x5a,0x5a,0xee }, { 0x5b,0xa0,0xa0,0xfb }, - { 0xa4,0x52,0x52,0xf6 }, { 0x76,0x3b,0x3b,0x4d }, - { 0xb7,0xd6,0xd6,0x61 }, { 0x7d,0xb3,0xb3,0xce }, - { 0x52,0x29,0x29,0x7b }, { 0xdd,0xe3,0xe3,0x3e }, - { 0x5e,0x2f,0x2f,0x71 }, { 0x13,0x84,0x84,0x97 }, - { 0xa6,0x53,0x53,0xf5 }, { 0xb9,0xd1,0xd1,0x68 }, - { 0x00,0x00,0x00,0x00 }, { 0xc1,0xed,0xed,0x2c }, - { 0x40,0x20,0x20,0x60 }, { 0xe3,0xfc,0xfc,0x1f }, - { 0x79,0xb1,0xb1,0xc8 }, { 0xb6,0x5b,0x5b,0xed }, - { 0xd4,0x6a,0x6a,0xbe }, { 0x8d,0xcb,0xcb,0x46 }, - { 0x67,0xbe,0xbe,0xd9 }, { 0x72,0x39,0x39,0x4b }, - { 0x94,0x4a,0x4a,0xde }, { 0x98,0x4c,0x4c,0xd4 }, - { 0xb0,0x58,0x58,0xe8 }, { 0x85,0xcf,0xcf,0x4a }, - { 0xbb,0xd0,0xd0,0x6b }, { 0xc5,0xef,0xef,0x2a }, - { 0x4f,0xaa,0xaa,0xe5 }, { 0xed,0xfb,0xfb,0x16 }, - { 0x86,0x43,0x43,0xc5 }, { 0x9a,0x4d,0x4d,0xd7 }, - { 0x66,0x33,0x33,0x55 }, { 0x11,0x85,0x85,0x94 }, - { 0x8a,0x45,0x45,0xcf }, { 0xe9,0xf9,0xf9,0x10 }, - { 0x04,0x02,0x02,0x06 }, { 0xfe,0x7f,0x7f,0x81 }, - { 0xa0,0x50,0x50,0xf0 }, { 0x78,0x3c,0x3c,0x44 }, - { 0x25,0x9f,0x9f,0xba }, { 0x4b,0xa8,0xa8,0xe3 }, - { 0xa2,0x51,0x51,0xf3 }, { 0x5d,0xa3,0xa3,0xfe }, - { 0x80,0x40,0x40,0xc0 }, { 0x05,0x8f,0x8f,0x8a }, - { 0x3f,0x92,0x92,0xad }, { 0x21,0x9d,0x9d,0xbc }, - { 0x70,0x38,0x38,0x48 }, { 0xf1,0xf5,0xf5,0x04 }, - { 0x63,0xbc,0xbc,0xdf }, { 0x77,0xb6,0xb6,0xc1 }, - { 0xaf,0xda,0xda,0x75 }, { 0x42,0x21,0x21,0x63 }, - { 0x20,0x10,0x10,0x30 }, { 0xe5,0xff,0xff,0x1a }, - { 0xfd,0xf3,0xf3,0x0e }, { 0xbf,0xd2,0xd2,0x6d }, - { 0x81,0xcd,0xcd,0x4c }, { 0x18,0x0c,0x0c,0x14 }, - { 0x26,0x13,0x13,0x35 }, { 0xc3,0xec,0xec,0x2f }, - { 0xbe,0x5f,0x5f,0xe1 }, { 0x35,0x97,0x97,0xa2 }, - { 0x88,0x44,0x44,0xcc }, { 0x2e,0x17,0x17,0x39 }, - { 0x93,0xc4,0xc4,0x57 }, { 0x55,0xa7,0xa7,0xf2 }, - { 0xfc,0x7e,0x7e,0x82 }, { 0x7a,0x3d,0x3d,0x47 }, - { 0xc8,0x64,0x64,0xac }, { 0xba,0x5d,0x5d,0xe7 }, - { 0x32,0x19,0x19,0x2b }, { 0xe6,0x73,0x73,0x95 }, - { 0xc0,0x60,0x60,0xa0 }, { 0x19,0x81,0x81,0x98 }, - { 0x9e,0x4f,0x4f,0xd1 }, { 0xa3,0xdc,0xdc,0x7f }, - { 0x44,0x22,0x22,0x66 }, { 0x54,0x2a,0x2a,0x7e }, - { 0x3b,0x90,0x90,0xab }, { 0x0b,0x88,0x88,0x83 }, - { 0x8c,0x46,0x46,0xca }, { 0xc7,0xee,0xee,0x29 }, - { 0x6b,0xb8,0xb8,0xd3 }, { 0x28,0x14,0x14,0x3c }, - { 0xa7,0xde,0xde,0x79 }, { 0xbc,0x5e,0x5e,0xe2 }, - { 0x16,0x0b,0x0b,0x1d }, { 0xad,0xdb,0xdb,0x76 }, - { 0xdb,0xe0,0xe0,0x3b }, { 0x64,0x32,0x32,0x56 }, - { 0x74,0x3a,0x3a,0x4e }, { 0x14,0x0a,0x0a,0x1e }, - { 0x92,0x49,0x49,0xdb }, { 0x0c,0x06,0x06,0x0a }, - { 0x48,0x24,0x24,0x6c }, { 0xb8,0x5c,0x5c,0xe4 }, - { 0x9f,0xc2,0xc2,0x5d }, { 0xbd,0xd3,0xd3,0x6e }, - { 0x43,0xac,0xac,0xef }, { 0xc4,0x62,0x62,0xa6 }, - { 0x39,0x91,0x91,0xa8 }, { 0x31,0x95,0x95,0xa4 }, - { 0xd3,0xe4,0xe4,0x37 }, { 0xf2,0x79,0x79,0x8b }, - { 0xd5,0xe7,0xe7,0x32 }, { 0x8b,0xc8,0xc8,0x43 }, - { 0x6e,0x37,0x37,0x59 }, { 0xda,0x6d,0x6d,0xb7 }, - { 0x01,0x8d,0x8d,0x8c }, { 0xb1,0xd5,0xd5,0x64 }, - { 0x9c,0x4e,0x4e,0xd2 }, { 0x49,0xa9,0xa9,0xe0 }, - { 0xd8,0x6c,0x6c,0xb4 }, { 0xac,0x56,0x56,0xfa }, - { 0xf3,0xf4,0xf4,0x07 }, { 0xcf,0xea,0xea,0x25 }, - { 0xca,0x65,0x65,0xaf }, { 0xf4,0x7a,0x7a,0x8e }, - { 0x47,0xae,0xae,0xe9 }, { 0x10,0x08,0x08,0x18 }, - { 0x6f,0xba,0xba,0xd5 }, { 0xf0,0x78,0x78,0x88 }, - { 0x4a,0x25,0x25,0x6f }, { 0x5c,0x2e,0x2e,0x72 }, - { 0x38,0x1c,0x1c,0x24 }, { 0x57,0xa6,0xa6,0xf1 }, - { 0x73,0xb4,0xb4,0xc7 }, { 0x97,0xc6,0xc6,0x51 }, - { 0xcb,0xe8,0xe8,0x23 }, { 0xa1,0xdd,0xdd,0x7c }, - { 0xe8,0x74,0x74,0x9c }, { 0x3e,0x1f,0x1f,0x21 }, - { 0x96,0x4b,0x4b,0xdd }, { 0x61,0xbd,0xbd,0xdc }, - { 0x0d,0x8b,0x8b,0x86 }, { 0x0f,0x8a,0x8a,0x85 }, - { 0xe0,0x70,0x70,0x90 }, { 0x7c,0x3e,0x3e,0x42 }, - { 0x71,0xb5,0xb5,0xc4 }, { 0xcc,0x66,0x66,0xaa }, - { 0x90,0x48,0x48,0xd8 }, { 0x06,0x03,0x03,0x05 }, - { 0xf7,0xf6,0xf6,0x01 }, { 0x1c,0x0e,0x0e,0x12 }, - { 0xc2,0x61,0x61,0xa3 }, { 0x6a,0x35,0x35,0x5f }, - { 0xae,0x57,0x57,0xf9 }, { 0x69,0xb9,0xb9,0xd0 }, - { 0x17,0x86,0x86,0x91 }, { 0x99,0xc1,0xc1,0x58 }, - { 0x3a,0x1d,0x1d,0x27 }, { 0x27,0x9e,0x9e,0xb9 }, - { 0xd9,0xe1,0xe1,0x38 }, { 0xeb,0xf8,0xf8,0x13 }, - { 0x2b,0x98,0x98,0xb3 }, { 0x22,0x11,0x11,0x33 }, - { 0xd2,0x69,0x69,0xbb }, { 0xa9,0xd9,0xd9,0x70 }, - { 0x07,0x8e,0x8e,0x89 }, { 0x33,0x94,0x94,0xa7 }, - { 0x2d,0x9b,0x9b,0xb6 }, { 0x3c,0x1e,0x1e,0x22 }, - { 0x15,0x87,0x87,0x92 }, { 0xc9,0xe9,0xe9,0x20 }, - { 0x87,0xce,0xce,0x49 }, { 0xaa,0x55,0x55,0xff }, - { 0x50,0x28,0x28,0x78 }, { 0xa5,0xdf,0xdf,0x7a }, - { 0x03,0x8c,0x8c,0x8f }, { 0x59,0xa1,0xa1,0xf8 }, - { 0x09,0x89,0x89,0x80 }, { 0x1a,0x0d,0x0d,0x17 }, - { 0x65,0xbf,0xbf,0xda }, { 0xd7,0xe6,0xe6,0x31 }, - { 0x84,0x42,0x42,0xc6 }, { 0xd0,0x68,0x68,0xb8 }, - { 0x82,0x41,0x41,0xc3 }, { 0x29,0x99,0x99,0xb0 }, - { 0x5a,0x2d,0x2d,0x77 }, { 0x1e,0x0f,0x0f,0x11 }, - { 0x7b,0xb0,0xb0,0xcb }, { 0xa8,0x54,0x54,0xfc }, - { 0x6d,0xbb,0xbb,0xd6 }, { 0x2c,0x16,0x16,0x3a } - }; - -static const unsigned char T2[256][4] = - { - { 0xa5,0xc6,0x63,0x63 }, { 0x84,0xf8,0x7c,0x7c }, - { 0x99,0xee,0x77,0x77 }, { 0x8d,0xf6,0x7b,0x7b }, - { 0x0d,0xff,0xf2,0xf2 }, { 0xbd,0xd6,0x6b,0x6b }, - { 0xb1,0xde,0x6f,0x6f }, { 0x54,0x91,0xc5,0xc5 }, - { 0x50,0x60,0x30,0x30 }, { 0x03,0x02,0x01,0x01 }, - { 0xa9,0xce,0x67,0x67 }, { 0x7d,0x56,0x2b,0x2b }, - { 0x19,0xe7,0xfe,0xfe }, { 0x62,0xb5,0xd7,0xd7 }, - { 0xe6,0x4d,0xab,0xab }, { 0x9a,0xec,0x76,0x76 }, - { 0x45,0x8f,0xca,0xca }, { 0x9d,0x1f,0x82,0x82 }, - { 0x40,0x89,0xc9,0xc9 }, { 0x87,0xfa,0x7d,0x7d }, - { 0x15,0xef,0xfa,0xfa }, { 0xeb,0xb2,0x59,0x59 }, - { 0xc9,0x8e,0x47,0x47 }, { 0x0b,0xfb,0xf0,0xf0 }, - { 0xec,0x41,0xad,0xad }, { 0x67,0xb3,0xd4,0xd4 }, - { 0xfd,0x5f,0xa2,0xa2 }, { 0xea,0x45,0xaf,0xaf }, - { 0xbf,0x23,0x9c,0x9c }, { 0xf7,0x53,0xa4,0xa4 }, - { 0x96,0xe4,0x72,0x72 }, { 0x5b,0x9b,0xc0,0xc0 }, - { 0xc2,0x75,0xb7,0xb7 }, { 0x1c,0xe1,0xfd,0xfd }, - { 0xae,0x3d,0x93,0x93 }, { 0x6a,0x4c,0x26,0x26 }, - { 0x5a,0x6c,0x36,0x36 }, { 0x41,0x7e,0x3f,0x3f }, - { 0x02,0xf5,0xf7,0xf7 }, { 0x4f,0x83,0xcc,0xcc }, - { 0x5c,0x68,0x34,0x34 }, { 0xf4,0x51,0xa5,0xa5 }, - { 0x34,0xd1,0xe5,0xe5 }, { 0x08,0xf9,0xf1,0xf1 }, - { 0x93,0xe2,0x71,0x71 }, { 0x73,0xab,0xd8,0xd8 }, - { 0x53,0x62,0x31,0x31 }, { 0x3f,0x2a,0x15,0x15 }, - { 0x0c,0x08,0x04,0x04 }, { 0x52,0x95,0xc7,0xc7 }, - { 0x65,0x46,0x23,0x23 }, { 0x5e,0x9d,0xc3,0xc3 }, - { 0x28,0x30,0x18,0x18 }, { 0xa1,0x37,0x96,0x96 }, - { 0x0f,0x0a,0x05,0x05 }, { 0xb5,0x2f,0x9a,0x9a }, - { 0x09,0x0e,0x07,0x07 }, { 0x36,0x24,0x12,0x12 }, - { 0x9b,0x1b,0x80,0x80 }, { 0x3d,0xdf,0xe2,0xe2 }, - { 0x26,0xcd,0xeb,0xeb }, { 0x69,0x4e,0x27,0x27 }, - { 0xcd,0x7f,0xb2,0xb2 }, { 0x9f,0xea,0x75,0x75 }, - { 0x1b,0x12,0x09,0x09 }, { 0x9e,0x1d,0x83,0x83 }, - { 0x74,0x58,0x2c,0x2c }, { 0x2e,0x34,0x1a,0x1a }, - { 0x2d,0x36,0x1b,0x1b }, { 0xb2,0xdc,0x6e,0x6e }, - { 0xee,0xb4,0x5a,0x5a }, { 0xfb,0x5b,0xa0,0xa0 }, - { 0xf6,0xa4,0x52,0x52 }, { 0x4d,0x76,0x3b,0x3b }, - { 0x61,0xb7,0xd6,0xd6 }, { 0xce,0x7d,0xb3,0xb3 }, - { 0x7b,0x52,0x29,0x29 }, { 0x3e,0xdd,0xe3,0xe3 }, - { 0x71,0x5e,0x2f,0x2f }, { 0x97,0x13,0x84,0x84 }, - { 0xf5,0xa6,0x53,0x53 }, { 0x68,0xb9,0xd1,0xd1 }, - { 0x00,0x00,0x00,0x00 }, { 0x2c,0xc1,0xed,0xed }, - { 0x60,0x40,0x20,0x20 }, { 0x1f,0xe3,0xfc,0xfc }, - { 0xc8,0x79,0xb1,0xb1 }, { 0xed,0xb6,0x5b,0x5b }, - { 0xbe,0xd4,0x6a,0x6a }, { 0x46,0x8d,0xcb,0xcb }, - { 0xd9,0x67,0xbe,0xbe }, { 0x4b,0x72,0x39,0x39 }, - { 0xde,0x94,0x4a,0x4a }, { 0xd4,0x98,0x4c,0x4c }, - { 0xe8,0xb0,0x58,0x58 }, { 0x4a,0x85,0xcf,0xcf }, - { 0x6b,0xbb,0xd0,0xd0 }, { 0x2a,0xc5,0xef,0xef }, - { 0xe5,0x4f,0xaa,0xaa }, { 0x16,0xed,0xfb,0xfb }, - { 0xc5,0x86,0x43,0x43 }, { 0xd7,0x9a,0x4d,0x4d }, - { 0x55,0x66,0x33,0x33 }, { 0x94,0x11,0x85,0x85 }, - { 0xcf,0x8a,0x45,0x45 }, { 0x10,0xe9,0xf9,0xf9 }, - { 0x06,0x04,0x02,0x02 }, { 0x81,0xfe,0x7f,0x7f }, - { 0xf0,0xa0,0x50,0x50 }, { 0x44,0x78,0x3c,0x3c }, - { 0xba,0x25,0x9f,0x9f }, { 0xe3,0x4b,0xa8,0xa8 }, - { 0xf3,0xa2,0x51,0x51 }, { 0xfe,0x5d,0xa3,0xa3 }, - { 0xc0,0x80,0x40,0x40 }, { 0x8a,0x05,0x8f,0x8f }, - { 0xad,0x3f,0x92,0x92 }, { 0xbc,0x21,0x9d,0x9d }, - { 0x48,0x70,0x38,0x38 }, { 0x04,0xf1,0xf5,0xf5 }, - { 0xdf,0x63,0xbc,0xbc }, { 0xc1,0x77,0xb6,0xb6 }, - { 0x75,0xaf,0xda,0xda }, { 0x63,0x42,0x21,0x21 }, - { 0x30,0x20,0x10,0x10 }, { 0x1a,0xe5,0xff,0xff }, - { 0x0e,0xfd,0xf3,0xf3 }, { 0x6d,0xbf,0xd2,0xd2 }, - { 0x4c,0x81,0xcd,0xcd }, { 0x14,0x18,0x0c,0x0c }, - { 0x35,0x26,0x13,0x13 }, { 0x2f,0xc3,0xec,0xec }, - { 0xe1,0xbe,0x5f,0x5f }, { 0xa2,0x35,0x97,0x97 }, - { 0xcc,0x88,0x44,0x44 }, { 0x39,0x2e,0x17,0x17 }, - { 0x57,0x93,0xc4,0xc4 }, { 0xf2,0x55,0xa7,0xa7 }, - { 0x82,0xfc,0x7e,0x7e }, { 0x47,0x7a,0x3d,0x3d }, - { 0xac,0xc8,0x64,0x64 }, { 0xe7,0xba,0x5d,0x5d }, - { 0x2b,0x32,0x19,0x19 }, { 0x95,0xe6,0x73,0x73 }, - { 0xa0,0xc0,0x60,0x60 }, { 0x98,0x19,0x81,0x81 }, - { 0xd1,0x9e,0x4f,0x4f }, { 0x7f,0xa3,0xdc,0xdc }, - { 0x66,0x44,0x22,0x22 }, { 0x7e,0x54,0x2a,0x2a }, - { 0xab,0x3b,0x90,0x90 }, { 0x83,0x0b,0x88,0x88 }, - { 0xca,0x8c,0x46,0x46 }, { 0x29,0xc7,0xee,0xee }, - { 0xd3,0x6b,0xb8,0xb8 }, { 0x3c,0x28,0x14,0x14 }, - { 0x79,0xa7,0xde,0xde }, { 0xe2,0xbc,0x5e,0x5e }, - { 0x1d,0x16,0x0b,0x0b }, { 0x76,0xad,0xdb,0xdb }, - { 0x3b,0xdb,0xe0,0xe0 }, { 0x56,0x64,0x32,0x32 }, - { 0x4e,0x74,0x3a,0x3a }, { 0x1e,0x14,0x0a,0x0a }, - { 0xdb,0x92,0x49,0x49 }, { 0x0a,0x0c,0x06,0x06 }, - { 0x6c,0x48,0x24,0x24 }, { 0xe4,0xb8,0x5c,0x5c }, - { 0x5d,0x9f,0xc2,0xc2 }, { 0x6e,0xbd,0xd3,0xd3 }, - { 0xef,0x43,0xac,0xac }, { 0xa6,0xc4,0x62,0x62 }, - { 0xa8,0x39,0x91,0x91 }, { 0xa4,0x31,0x95,0x95 }, - { 0x37,0xd3,0xe4,0xe4 }, { 0x8b,0xf2,0x79,0x79 }, - { 0x32,0xd5,0xe7,0xe7 }, { 0x43,0x8b,0xc8,0xc8 }, - { 0x59,0x6e,0x37,0x37 }, { 0xb7,0xda,0x6d,0x6d }, - { 0x8c,0x01,0x8d,0x8d }, { 0x64,0xb1,0xd5,0xd5 }, - { 0xd2,0x9c,0x4e,0x4e }, { 0xe0,0x49,0xa9,0xa9 }, - { 0xb4,0xd8,0x6c,0x6c }, { 0xfa,0xac,0x56,0x56 }, - { 0x07,0xf3,0xf4,0xf4 }, { 0x25,0xcf,0xea,0xea }, - { 0xaf,0xca,0x65,0x65 }, { 0x8e,0xf4,0x7a,0x7a }, - { 0xe9,0x47,0xae,0xae }, { 0x18,0x10,0x08,0x08 }, - { 0xd5,0x6f,0xba,0xba }, { 0x88,0xf0,0x78,0x78 }, - { 0x6f,0x4a,0x25,0x25 }, { 0x72,0x5c,0x2e,0x2e }, - { 0x24,0x38,0x1c,0x1c }, { 0xf1,0x57,0xa6,0xa6 }, - { 0xc7,0x73,0xb4,0xb4 }, { 0x51,0x97,0xc6,0xc6 }, - { 0x23,0xcb,0xe8,0xe8 }, { 0x7c,0xa1,0xdd,0xdd }, - { 0x9c,0xe8,0x74,0x74 }, { 0x21,0x3e,0x1f,0x1f }, - { 0xdd,0x96,0x4b,0x4b }, { 0xdc,0x61,0xbd,0xbd }, - { 0x86,0x0d,0x8b,0x8b }, { 0x85,0x0f,0x8a,0x8a }, - { 0x90,0xe0,0x70,0x70 }, { 0x42,0x7c,0x3e,0x3e }, - { 0xc4,0x71,0xb5,0xb5 }, { 0xaa,0xcc,0x66,0x66 }, - { 0xd8,0x90,0x48,0x48 }, { 0x05,0x06,0x03,0x03 }, - { 0x01,0xf7,0xf6,0xf6 }, { 0x12,0x1c,0x0e,0x0e }, - { 0xa3,0xc2,0x61,0x61 }, { 0x5f,0x6a,0x35,0x35 }, - { 0xf9,0xae,0x57,0x57 }, { 0xd0,0x69,0xb9,0xb9 }, - { 0x91,0x17,0x86,0x86 }, { 0x58,0x99,0xc1,0xc1 }, - { 0x27,0x3a,0x1d,0x1d }, { 0xb9,0x27,0x9e,0x9e }, - { 0x38,0xd9,0xe1,0xe1 }, { 0x13,0xeb,0xf8,0xf8 }, - { 0xb3,0x2b,0x98,0x98 }, { 0x33,0x22,0x11,0x11 }, - { 0xbb,0xd2,0x69,0x69 }, { 0x70,0xa9,0xd9,0xd9 }, - { 0x89,0x07,0x8e,0x8e }, { 0xa7,0x33,0x94,0x94 }, - { 0xb6,0x2d,0x9b,0x9b }, { 0x22,0x3c,0x1e,0x1e }, - { 0x92,0x15,0x87,0x87 }, { 0x20,0xc9,0xe9,0xe9 }, - { 0x49,0x87,0xce,0xce }, { 0xff,0xaa,0x55,0x55 }, - { 0x78,0x50,0x28,0x28 }, { 0x7a,0xa5,0xdf,0xdf }, - { 0x8f,0x03,0x8c,0x8c }, { 0xf8,0x59,0xa1,0xa1 }, - { 0x80,0x09,0x89,0x89 }, { 0x17,0x1a,0x0d,0x0d }, - { 0xda,0x65,0xbf,0xbf }, { 0x31,0xd7,0xe6,0xe6 }, - { 0xc6,0x84,0x42,0x42 }, { 0xb8,0xd0,0x68,0x68 }, - { 0xc3,0x82,0x41,0x41 }, { 0xb0,0x29,0x99,0x99 }, - { 0x77,0x5a,0x2d,0x2d }, { 0x11,0x1e,0x0f,0x0f }, - { 0xcb,0x7b,0xb0,0xb0 }, { 0xfc,0xa8,0x54,0x54 }, - { 0xd6,0x6d,0xbb,0xbb }, { 0x3a,0x2c,0x16,0x16 } - }; - -static const unsigned char T3[256][4] = - { - { 0x63,0xa5,0xc6,0x63 }, { 0x7c,0x84,0xf8,0x7c }, - { 0x77,0x99,0xee,0x77 }, { 0x7b,0x8d,0xf6,0x7b }, - { 0xf2,0x0d,0xff,0xf2 }, { 0x6b,0xbd,0xd6,0x6b }, - { 0x6f,0xb1,0xde,0x6f }, { 0xc5,0x54,0x91,0xc5 }, - { 0x30,0x50,0x60,0x30 }, { 0x01,0x03,0x02,0x01 }, - { 0x67,0xa9,0xce,0x67 }, { 0x2b,0x7d,0x56,0x2b }, - { 0xfe,0x19,0xe7,0xfe }, { 0xd7,0x62,0xb5,0xd7 }, - { 0xab,0xe6,0x4d,0xab }, { 0x76,0x9a,0xec,0x76 }, - { 0xca,0x45,0x8f,0xca }, { 0x82,0x9d,0x1f,0x82 }, - { 0xc9,0x40,0x89,0xc9 }, { 0x7d,0x87,0xfa,0x7d }, - { 0xfa,0x15,0xef,0xfa }, { 0x59,0xeb,0xb2,0x59 }, - { 0x47,0xc9,0x8e,0x47 }, { 0xf0,0x0b,0xfb,0xf0 }, - { 0xad,0xec,0x41,0xad }, { 0xd4,0x67,0xb3,0xd4 }, - { 0xa2,0xfd,0x5f,0xa2 }, { 0xaf,0xea,0x45,0xaf }, - { 0x9c,0xbf,0x23,0x9c }, { 0xa4,0xf7,0x53,0xa4 }, - { 0x72,0x96,0xe4,0x72 }, { 0xc0,0x5b,0x9b,0xc0 }, - { 0xb7,0xc2,0x75,0xb7 }, { 0xfd,0x1c,0xe1,0xfd }, - { 0x93,0xae,0x3d,0x93 }, { 0x26,0x6a,0x4c,0x26 }, - { 0x36,0x5a,0x6c,0x36 }, { 0x3f,0x41,0x7e,0x3f }, - { 0xf7,0x02,0xf5,0xf7 }, { 0xcc,0x4f,0x83,0xcc }, - { 0x34,0x5c,0x68,0x34 }, { 0xa5,0xf4,0x51,0xa5 }, - { 0xe5,0x34,0xd1,0xe5 }, { 0xf1,0x08,0xf9,0xf1 }, - { 0x71,0x93,0xe2,0x71 }, { 0xd8,0x73,0xab,0xd8 }, - { 0x31,0x53,0x62,0x31 }, { 0x15,0x3f,0x2a,0x15 }, - { 0x04,0x0c,0x08,0x04 }, { 0xc7,0x52,0x95,0xc7 }, - { 0x23,0x65,0x46,0x23 }, { 0xc3,0x5e,0x9d,0xc3 }, - { 0x18,0x28,0x30,0x18 }, { 0x96,0xa1,0x37,0x96 }, - { 0x05,0x0f,0x0a,0x05 }, { 0x9a,0xb5,0x2f,0x9a }, - { 0x07,0x09,0x0e,0x07 }, { 0x12,0x36,0x24,0x12 }, - { 0x80,0x9b,0x1b,0x80 }, { 0xe2,0x3d,0xdf,0xe2 }, - { 0xeb,0x26,0xcd,0xeb }, { 0x27,0x69,0x4e,0x27 }, - { 0xb2,0xcd,0x7f,0xb2 }, { 0x75,0x9f,0xea,0x75 }, - { 0x09,0x1b,0x12,0x09 }, { 0x83,0x9e,0x1d,0x83 }, - { 0x2c,0x74,0x58,0x2c }, { 0x1a,0x2e,0x34,0x1a }, - { 0x1b,0x2d,0x36,0x1b }, { 0x6e,0xb2,0xdc,0x6e }, - { 0x5a,0xee,0xb4,0x5a }, { 0xa0,0xfb,0x5b,0xa0 }, - { 0x52,0xf6,0xa4,0x52 }, { 0x3b,0x4d,0x76,0x3b }, - { 0xd6,0x61,0xb7,0xd6 }, { 0xb3,0xce,0x7d,0xb3 }, - { 0x29,0x7b,0x52,0x29 }, { 0xe3,0x3e,0xdd,0xe3 }, - { 0x2f,0x71,0x5e,0x2f }, { 0x84,0x97,0x13,0x84 }, - { 0x53,0xf5,0xa6,0x53 }, { 0xd1,0x68,0xb9,0xd1 }, - { 0x00,0x00,0x00,0x00 }, { 0xed,0x2c,0xc1,0xed }, - { 0x20,0x60,0x40,0x20 }, { 0xfc,0x1f,0xe3,0xfc }, - { 0xb1,0xc8,0x79,0xb1 }, { 0x5b,0xed,0xb6,0x5b }, - { 0x6a,0xbe,0xd4,0x6a }, { 0xcb,0x46,0x8d,0xcb }, - { 0xbe,0xd9,0x67,0xbe }, { 0x39,0x4b,0x72,0x39 }, - { 0x4a,0xde,0x94,0x4a }, { 0x4c,0xd4,0x98,0x4c }, - { 0x58,0xe8,0xb0,0x58 }, { 0xcf,0x4a,0x85,0xcf }, - { 0xd0,0x6b,0xbb,0xd0 }, { 0xef,0x2a,0xc5,0xef }, - { 0xaa,0xe5,0x4f,0xaa }, { 0xfb,0x16,0xed,0xfb }, - { 0x43,0xc5,0x86,0x43 }, { 0x4d,0xd7,0x9a,0x4d }, - { 0x33,0x55,0x66,0x33 }, { 0x85,0x94,0x11,0x85 }, - { 0x45,0xcf,0x8a,0x45 }, { 0xf9,0x10,0xe9,0xf9 }, - { 0x02,0x06,0x04,0x02 }, { 0x7f,0x81,0xfe,0x7f }, - { 0x50,0xf0,0xa0,0x50 }, { 0x3c,0x44,0x78,0x3c }, - { 0x9f,0xba,0x25,0x9f }, { 0xa8,0xe3,0x4b,0xa8 }, - { 0x51,0xf3,0xa2,0x51 }, { 0xa3,0xfe,0x5d,0xa3 }, - { 0x40,0xc0,0x80,0x40 }, { 0x8f,0x8a,0x05,0x8f }, - { 0x92,0xad,0x3f,0x92 }, { 0x9d,0xbc,0x21,0x9d }, - { 0x38,0x48,0x70,0x38 }, { 0xf5,0x04,0xf1,0xf5 }, - { 0xbc,0xdf,0x63,0xbc }, { 0xb6,0xc1,0x77,0xb6 }, - { 0xda,0x75,0xaf,0xda }, { 0x21,0x63,0x42,0x21 }, - { 0x10,0x30,0x20,0x10 }, { 0xff,0x1a,0xe5,0xff }, - { 0xf3,0x0e,0xfd,0xf3 }, { 0xd2,0x6d,0xbf,0xd2 }, - { 0xcd,0x4c,0x81,0xcd }, { 0x0c,0x14,0x18,0x0c }, - { 0x13,0x35,0x26,0x13 }, { 0xec,0x2f,0xc3,0xec }, - { 0x5f,0xe1,0xbe,0x5f }, { 0x97,0xa2,0x35,0x97 }, - { 0x44,0xcc,0x88,0x44 }, { 0x17,0x39,0x2e,0x17 }, - { 0xc4,0x57,0x93,0xc4 }, { 0xa7,0xf2,0x55,0xa7 }, - { 0x7e,0x82,0xfc,0x7e }, { 0x3d,0x47,0x7a,0x3d }, - { 0x64,0xac,0xc8,0x64 }, { 0x5d,0xe7,0xba,0x5d }, - { 0x19,0x2b,0x32,0x19 }, { 0x73,0x95,0xe6,0x73 }, - { 0x60,0xa0,0xc0,0x60 }, { 0x81,0x98,0x19,0x81 }, - { 0x4f,0xd1,0x9e,0x4f }, { 0xdc,0x7f,0xa3,0xdc }, - { 0x22,0x66,0x44,0x22 }, { 0x2a,0x7e,0x54,0x2a }, - { 0x90,0xab,0x3b,0x90 }, { 0x88,0x83,0x0b,0x88 }, - { 0x46,0xca,0x8c,0x46 }, { 0xee,0x29,0xc7,0xee }, - { 0xb8,0xd3,0x6b,0xb8 }, { 0x14,0x3c,0x28,0x14 }, - { 0xde,0x79,0xa7,0xde }, { 0x5e,0xe2,0xbc,0x5e }, - { 0x0b,0x1d,0x16,0x0b }, { 0xdb,0x76,0xad,0xdb }, - { 0xe0,0x3b,0xdb,0xe0 }, { 0x32,0x56,0x64,0x32 }, - { 0x3a,0x4e,0x74,0x3a }, { 0x0a,0x1e,0x14,0x0a }, - { 0x49,0xdb,0x92,0x49 }, { 0x06,0x0a,0x0c,0x06 }, - { 0x24,0x6c,0x48,0x24 }, { 0x5c,0xe4,0xb8,0x5c }, - { 0xc2,0x5d,0x9f,0xc2 }, { 0xd3,0x6e,0xbd,0xd3 }, - { 0xac,0xef,0x43,0xac }, { 0x62,0xa6,0xc4,0x62 }, - { 0x91,0xa8,0x39,0x91 }, { 0x95,0xa4,0x31,0x95 }, - { 0xe4,0x37,0xd3,0xe4 }, { 0x79,0x8b,0xf2,0x79 }, - { 0xe7,0x32,0xd5,0xe7 }, { 0xc8,0x43,0x8b,0xc8 }, - { 0x37,0x59,0x6e,0x37 }, { 0x6d,0xb7,0xda,0x6d }, - { 0x8d,0x8c,0x01,0x8d }, { 0xd5,0x64,0xb1,0xd5 }, - { 0x4e,0xd2,0x9c,0x4e }, { 0xa9,0xe0,0x49,0xa9 }, - { 0x6c,0xb4,0xd8,0x6c }, { 0x56,0xfa,0xac,0x56 }, - { 0xf4,0x07,0xf3,0xf4 }, { 0xea,0x25,0xcf,0xea }, - { 0x65,0xaf,0xca,0x65 }, { 0x7a,0x8e,0xf4,0x7a }, - { 0xae,0xe9,0x47,0xae }, { 0x08,0x18,0x10,0x08 }, - { 0xba,0xd5,0x6f,0xba }, { 0x78,0x88,0xf0,0x78 }, - { 0x25,0x6f,0x4a,0x25 }, { 0x2e,0x72,0x5c,0x2e }, - { 0x1c,0x24,0x38,0x1c }, { 0xa6,0xf1,0x57,0xa6 }, - { 0xb4,0xc7,0x73,0xb4 }, { 0xc6,0x51,0x97,0xc6 }, - { 0xe8,0x23,0xcb,0xe8 }, { 0xdd,0x7c,0xa1,0xdd }, - { 0x74,0x9c,0xe8,0x74 }, { 0x1f,0x21,0x3e,0x1f }, - { 0x4b,0xdd,0x96,0x4b }, { 0xbd,0xdc,0x61,0xbd }, - { 0x8b,0x86,0x0d,0x8b }, { 0x8a,0x85,0x0f,0x8a }, - { 0x70,0x90,0xe0,0x70 }, { 0x3e,0x42,0x7c,0x3e }, - { 0xb5,0xc4,0x71,0xb5 }, { 0x66,0xaa,0xcc,0x66 }, - { 0x48,0xd8,0x90,0x48 }, { 0x03,0x05,0x06,0x03 }, - { 0xf6,0x01,0xf7,0xf6 }, { 0x0e,0x12,0x1c,0x0e }, - { 0x61,0xa3,0xc2,0x61 }, { 0x35,0x5f,0x6a,0x35 }, - { 0x57,0xf9,0xae,0x57 }, { 0xb9,0xd0,0x69,0xb9 }, - { 0x86,0x91,0x17,0x86 }, { 0xc1,0x58,0x99,0xc1 }, - { 0x1d,0x27,0x3a,0x1d }, { 0x9e,0xb9,0x27,0x9e }, - { 0xe1,0x38,0xd9,0xe1 }, { 0xf8,0x13,0xeb,0xf8 }, - { 0x98,0xb3,0x2b,0x98 }, { 0x11,0x33,0x22,0x11 }, - { 0x69,0xbb,0xd2,0x69 }, { 0xd9,0x70,0xa9,0xd9 }, - { 0x8e,0x89,0x07,0x8e }, { 0x94,0xa7,0x33,0x94 }, - { 0x9b,0xb6,0x2d,0x9b }, { 0x1e,0x22,0x3c,0x1e }, - { 0x87,0x92,0x15,0x87 }, { 0xe9,0x20,0xc9,0xe9 }, - { 0xce,0x49,0x87,0xce }, { 0x55,0xff,0xaa,0x55 }, - { 0x28,0x78,0x50,0x28 }, { 0xdf,0x7a,0xa5,0xdf }, - { 0x8c,0x8f,0x03,0x8c }, { 0xa1,0xf8,0x59,0xa1 }, - { 0x89,0x80,0x09,0x89 }, { 0x0d,0x17,0x1a,0x0d }, - { 0xbf,0xda,0x65,0xbf }, { 0xe6,0x31,0xd7,0xe6 }, - { 0x42,0xc6,0x84,0x42 }, { 0x68,0xb8,0xd0,0x68 }, - { 0x41,0xc3,0x82,0x41 }, { 0x99,0xb0,0x29,0x99 }, - { 0x2d,0x77,0x5a,0x2d }, { 0x0f,0x11,0x1e,0x0f }, - { 0xb0,0xcb,0x7b,0xb0 }, { 0x54,0xfc,0xa8,0x54 }, - { 0xbb,0xd6,0x6d,0xbb }, { 0x16,0x3a,0x2c,0x16 } - }; - -static const unsigned char T4[256][4] = - { - { 0x63,0x63,0xa5,0xc6 }, { 0x7c,0x7c,0x84,0xf8 }, - { 0x77,0x77,0x99,0xee }, { 0x7b,0x7b,0x8d,0xf6 }, - { 0xf2,0xf2,0x0d,0xff }, { 0x6b,0x6b,0xbd,0xd6 }, - { 0x6f,0x6f,0xb1,0xde }, { 0xc5,0xc5,0x54,0x91 }, - { 0x30,0x30,0x50,0x60 }, { 0x01,0x01,0x03,0x02 }, - { 0x67,0x67,0xa9,0xce }, { 0x2b,0x2b,0x7d,0x56 }, - { 0xfe,0xfe,0x19,0xe7 }, { 0xd7,0xd7,0x62,0xb5 }, - { 0xab,0xab,0xe6,0x4d }, { 0x76,0x76,0x9a,0xec }, - { 0xca,0xca,0x45,0x8f }, { 0x82,0x82,0x9d,0x1f }, - { 0xc9,0xc9,0x40,0x89 }, { 0x7d,0x7d,0x87,0xfa }, - { 0xfa,0xfa,0x15,0xef }, { 0x59,0x59,0xeb,0xb2 }, - { 0x47,0x47,0xc9,0x8e }, { 0xf0,0xf0,0x0b,0xfb }, - { 0xad,0xad,0xec,0x41 }, { 0xd4,0xd4,0x67,0xb3 }, - { 0xa2,0xa2,0xfd,0x5f }, { 0xaf,0xaf,0xea,0x45 }, - { 0x9c,0x9c,0xbf,0x23 }, { 0xa4,0xa4,0xf7,0x53 }, - { 0x72,0x72,0x96,0xe4 }, { 0xc0,0xc0,0x5b,0x9b }, - { 0xb7,0xb7,0xc2,0x75 }, { 0xfd,0xfd,0x1c,0xe1 }, - { 0x93,0x93,0xae,0x3d }, { 0x26,0x26,0x6a,0x4c }, - { 0x36,0x36,0x5a,0x6c }, { 0x3f,0x3f,0x41,0x7e }, - { 0xf7,0xf7,0x02,0xf5 }, { 0xcc,0xcc,0x4f,0x83 }, - { 0x34,0x34,0x5c,0x68 }, { 0xa5,0xa5,0xf4,0x51 }, - { 0xe5,0xe5,0x34,0xd1 }, { 0xf1,0xf1,0x08,0xf9 }, - { 0x71,0x71,0x93,0xe2 }, { 0xd8,0xd8,0x73,0xab }, - { 0x31,0x31,0x53,0x62 }, { 0x15,0x15,0x3f,0x2a }, - { 0x04,0x04,0x0c,0x08 }, { 0xc7,0xc7,0x52,0x95 }, - { 0x23,0x23,0x65,0x46 }, { 0xc3,0xc3,0x5e,0x9d }, - { 0x18,0x18,0x28,0x30 }, { 0x96,0x96,0xa1,0x37 }, - { 0x05,0x05,0x0f,0x0a }, { 0x9a,0x9a,0xb5,0x2f }, - { 0x07,0x07,0x09,0x0e }, { 0x12,0x12,0x36,0x24 }, - { 0x80,0x80,0x9b,0x1b }, { 0xe2,0xe2,0x3d,0xdf }, - { 0xeb,0xeb,0x26,0xcd }, { 0x27,0x27,0x69,0x4e }, - { 0xb2,0xb2,0xcd,0x7f }, { 0x75,0x75,0x9f,0xea }, - { 0x09,0x09,0x1b,0x12 }, { 0x83,0x83,0x9e,0x1d }, - { 0x2c,0x2c,0x74,0x58 }, { 0x1a,0x1a,0x2e,0x34 }, - { 0x1b,0x1b,0x2d,0x36 }, { 0x6e,0x6e,0xb2,0xdc }, - { 0x5a,0x5a,0xee,0xb4 }, { 0xa0,0xa0,0xfb,0x5b }, - { 0x52,0x52,0xf6,0xa4 }, { 0x3b,0x3b,0x4d,0x76 }, - { 0xd6,0xd6,0x61,0xb7 }, { 0xb3,0xb3,0xce,0x7d }, - { 0x29,0x29,0x7b,0x52 }, { 0xe3,0xe3,0x3e,0xdd }, - { 0x2f,0x2f,0x71,0x5e }, { 0x84,0x84,0x97,0x13 }, - { 0x53,0x53,0xf5,0xa6 }, { 0xd1,0xd1,0x68,0xb9 }, - { 0x00,0x00,0x00,0x00 }, { 0xed,0xed,0x2c,0xc1 }, - { 0x20,0x20,0x60,0x40 }, { 0xfc,0xfc,0x1f,0xe3 }, - { 0xb1,0xb1,0xc8,0x79 }, { 0x5b,0x5b,0xed,0xb6 }, - { 0x6a,0x6a,0xbe,0xd4 }, { 0xcb,0xcb,0x46,0x8d }, - { 0xbe,0xbe,0xd9,0x67 }, { 0x39,0x39,0x4b,0x72 }, - { 0x4a,0x4a,0xde,0x94 }, { 0x4c,0x4c,0xd4,0x98 }, - { 0x58,0x58,0xe8,0xb0 }, { 0xcf,0xcf,0x4a,0x85 }, - { 0xd0,0xd0,0x6b,0xbb }, { 0xef,0xef,0x2a,0xc5 }, - { 0xaa,0xaa,0xe5,0x4f }, { 0xfb,0xfb,0x16,0xed }, - { 0x43,0x43,0xc5,0x86 }, { 0x4d,0x4d,0xd7,0x9a }, - { 0x33,0x33,0x55,0x66 }, { 0x85,0x85,0x94,0x11 }, - { 0x45,0x45,0xcf,0x8a }, { 0xf9,0xf9,0x10,0xe9 }, - { 0x02,0x02,0x06,0x04 }, { 0x7f,0x7f,0x81,0xfe }, - { 0x50,0x50,0xf0,0xa0 }, { 0x3c,0x3c,0x44,0x78 }, - { 0x9f,0x9f,0xba,0x25 }, { 0xa8,0xa8,0xe3,0x4b }, - { 0x51,0x51,0xf3,0xa2 }, { 0xa3,0xa3,0xfe,0x5d }, - { 0x40,0x40,0xc0,0x80 }, { 0x8f,0x8f,0x8a,0x05 }, - { 0x92,0x92,0xad,0x3f }, { 0x9d,0x9d,0xbc,0x21 }, - { 0x38,0x38,0x48,0x70 }, { 0xf5,0xf5,0x04,0xf1 }, - { 0xbc,0xbc,0xdf,0x63 }, { 0xb6,0xb6,0xc1,0x77 }, - { 0xda,0xda,0x75,0xaf }, { 0x21,0x21,0x63,0x42 }, - { 0x10,0x10,0x30,0x20 }, { 0xff,0xff,0x1a,0xe5 }, - { 0xf3,0xf3,0x0e,0xfd }, { 0xd2,0xd2,0x6d,0xbf }, - { 0xcd,0xcd,0x4c,0x81 }, { 0x0c,0x0c,0x14,0x18 }, - { 0x13,0x13,0x35,0x26 }, { 0xec,0xec,0x2f,0xc3 }, - { 0x5f,0x5f,0xe1,0xbe }, { 0x97,0x97,0xa2,0x35 }, - { 0x44,0x44,0xcc,0x88 }, { 0x17,0x17,0x39,0x2e }, - { 0xc4,0xc4,0x57,0x93 }, { 0xa7,0xa7,0xf2,0x55 }, - { 0x7e,0x7e,0x82,0xfc }, { 0x3d,0x3d,0x47,0x7a }, - { 0x64,0x64,0xac,0xc8 }, { 0x5d,0x5d,0xe7,0xba }, - { 0x19,0x19,0x2b,0x32 }, { 0x73,0x73,0x95,0xe6 }, - { 0x60,0x60,0xa0,0xc0 }, { 0x81,0x81,0x98,0x19 }, - { 0x4f,0x4f,0xd1,0x9e }, { 0xdc,0xdc,0x7f,0xa3 }, - { 0x22,0x22,0x66,0x44 }, { 0x2a,0x2a,0x7e,0x54 }, - { 0x90,0x90,0xab,0x3b }, { 0x88,0x88,0x83,0x0b }, - { 0x46,0x46,0xca,0x8c }, { 0xee,0xee,0x29,0xc7 }, - { 0xb8,0xb8,0xd3,0x6b }, { 0x14,0x14,0x3c,0x28 }, - { 0xde,0xde,0x79,0xa7 }, { 0x5e,0x5e,0xe2,0xbc }, - { 0x0b,0x0b,0x1d,0x16 }, { 0xdb,0xdb,0x76,0xad }, - { 0xe0,0xe0,0x3b,0xdb }, { 0x32,0x32,0x56,0x64 }, - { 0x3a,0x3a,0x4e,0x74 }, { 0x0a,0x0a,0x1e,0x14 }, - { 0x49,0x49,0xdb,0x92 }, { 0x06,0x06,0x0a,0x0c }, - { 0x24,0x24,0x6c,0x48 }, { 0x5c,0x5c,0xe4,0xb8 }, - { 0xc2,0xc2,0x5d,0x9f }, { 0xd3,0xd3,0x6e,0xbd }, - { 0xac,0xac,0xef,0x43 }, { 0x62,0x62,0xa6,0xc4 }, - { 0x91,0x91,0xa8,0x39 }, { 0x95,0x95,0xa4,0x31 }, - { 0xe4,0xe4,0x37,0xd3 }, { 0x79,0x79,0x8b,0xf2 }, - { 0xe7,0xe7,0x32,0xd5 }, { 0xc8,0xc8,0x43,0x8b }, - { 0x37,0x37,0x59,0x6e }, { 0x6d,0x6d,0xb7,0xda }, - { 0x8d,0x8d,0x8c,0x01 }, { 0xd5,0xd5,0x64,0xb1 }, - { 0x4e,0x4e,0xd2,0x9c }, { 0xa9,0xa9,0xe0,0x49 }, - { 0x6c,0x6c,0xb4,0xd8 }, { 0x56,0x56,0xfa,0xac }, - { 0xf4,0xf4,0x07,0xf3 }, { 0xea,0xea,0x25,0xcf }, - { 0x65,0x65,0xaf,0xca }, { 0x7a,0x7a,0x8e,0xf4 }, - { 0xae,0xae,0xe9,0x47 }, { 0x08,0x08,0x18,0x10 }, - { 0xba,0xba,0xd5,0x6f }, { 0x78,0x78,0x88,0xf0 }, - { 0x25,0x25,0x6f,0x4a }, { 0x2e,0x2e,0x72,0x5c }, - { 0x1c,0x1c,0x24,0x38 }, { 0xa6,0xa6,0xf1,0x57 }, - { 0xb4,0xb4,0xc7,0x73 }, { 0xc6,0xc6,0x51,0x97 }, - { 0xe8,0xe8,0x23,0xcb }, { 0xdd,0xdd,0x7c,0xa1 }, - { 0x74,0x74,0x9c,0xe8 }, { 0x1f,0x1f,0x21,0x3e }, - { 0x4b,0x4b,0xdd,0x96 }, { 0xbd,0xbd,0xdc,0x61 }, - { 0x8b,0x8b,0x86,0x0d }, { 0x8a,0x8a,0x85,0x0f }, - { 0x70,0x70,0x90,0xe0 }, { 0x3e,0x3e,0x42,0x7c }, - { 0xb5,0xb5,0xc4,0x71 }, { 0x66,0x66,0xaa,0xcc }, - { 0x48,0x48,0xd8,0x90 }, { 0x03,0x03,0x05,0x06 }, - { 0xf6,0xf6,0x01,0xf7 }, { 0x0e,0x0e,0x12,0x1c }, - { 0x61,0x61,0xa3,0xc2 }, { 0x35,0x35,0x5f,0x6a }, - { 0x57,0x57,0xf9,0xae }, { 0xb9,0xb9,0xd0,0x69 }, - { 0x86,0x86,0x91,0x17 }, { 0xc1,0xc1,0x58,0x99 }, - { 0x1d,0x1d,0x27,0x3a }, { 0x9e,0x9e,0xb9,0x27 }, - { 0xe1,0xe1,0x38,0xd9 }, { 0xf8,0xf8,0x13,0xeb }, - { 0x98,0x98,0xb3,0x2b }, { 0x11,0x11,0x33,0x22 }, - { 0x69,0x69,0xbb,0xd2 }, { 0xd9,0xd9,0x70,0xa9 }, - { 0x8e,0x8e,0x89,0x07 }, { 0x94,0x94,0xa7,0x33 }, - { 0x9b,0x9b,0xb6,0x2d }, { 0x1e,0x1e,0x22,0x3c }, - { 0x87,0x87,0x92,0x15 }, { 0xe9,0xe9,0x20,0xc9 }, - { 0xce,0xce,0x49,0x87 }, { 0x55,0x55,0xff,0xaa }, - { 0x28,0x28,0x78,0x50 }, { 0xdf,0xdf,0x7a,0xa5 }, - { 0x8c,0x8c,0x8f,0x03 }, { 0xa1,0xa1,0xf8,0x59 }, - { 0x89,0x89,0x80,0x09 }, { 0x0d,0x0d,0x17,0x1a }, - { 0xbf,0xbf,0xda,0x65 }, { 0xe6,0xe6,0x31,0xd7 }, - { 0x42,0x42,0xc6,0x84 }, { 0x68,0x68,0xb8,0xd0 }, - { 0x41,0x41,0xc3,0x82 }, { 0x99,0x99,0xb0,0x29 }, - { 0x2d,0x2d,0x77,0x5a }, { 0x0f,0x0f,0x11,0x1e }, - { 0xb0,0xb0,0xcb,0x7b }, { 0x54,0x54,0xfc,0xa8 }, - { 0xbb,0xbb,0xd6,0x6d }, { 0x16,0x16,0x3a,0x2c } - }; - -static const unsigned char T5[256][4] = - { - { 0x51,0xf4,0xa7,0x50 }, { 0x7e,0x41,0x65,0x53 }, - { 0x1a,0x17,0xa4,0xc3 }, { 0x3a,0x27,0x5e,0x96 }, - { 0x3b,0xab,0x6b,0xcb }, { 0x1f,0x9d,0x45,0xf1 }, - { 0xac,0xfa,0x58,0xab }, { 0x4b,0xe3,0x03,0x93 }, - { 0x20,0x30,0xfa,0x55 }, { 0xad,0x76,0x6d,0xf6 }, - { 0x88,0xcc,0x76,0x91 }, { 0xf5,0x02,0x4c,0x25 }, - { 0x4f,0xe5,0xd7,0xfc }, { 0xc5,0x2a,0xcb,0xd7 }, - { 0x26,0x35,0x44,0x80 }, { 0xb5,0x62,0xa3,0x8f }, - { 0xde,0xb1,0x5a,0x49 }, { 0x25,0xba,0x1b,0x67 }, - { 0x45,0xea,0x0e,0x98 }, { 0x5d,0xfe,0xc0,0xe1 }, - { 0xc3,0x2f,0x75,0x02 }, { 0x81,0x4c,0xf0,0x12 }, - { 0x8d,0x46,0x97,0xa3 }, { 0x6b,0xd3,0xf9,0xc6 }, - { 0x03,0x8f,0x5f,0xe7 }, { 0x15,0x92,0x9c,0x95 }, - { 0xbf,0x6d,0x7a,0xeb }, { 0x95,0x52,0x59,0xda }, - { 0xd4,0xbe,0x83,0x2d }, { 0x58,0x74,0x21,0xd3 }, - { 0x49,0xe0,0x69,0x29 }, { 0x8e,0xc9,0xc8,0x44 }, - { 0x75,0xc2,0x89,0x6a }, { 0xf4,0x8e,0x79,0x78 }, - { 0x99,0x58,0x3e,0x6b }, { 0x27,0xb9,0x71,0xdd }, - { 0xbe,0xe1,0x4f,0xb6 }, { 0xf0,0x88,0xad,0x17 }, - { 0xc9,0x20,0xac,0x66 }, { 0x7d,0xce,0x3a,0xb4 }, - { 0x63,0xdf,0x4a,0x18 }, { 0xe5,0x1a,0x31,0x82 }, - { 0x97,0x51,0x33,0x60 }, { 0x62,0x53,0x7f,0x45 }, - { 0xb1,0x64,0x77,0xe0 }, { 0xbb,0x6b,0xae,0x84 }, - { 0xfe,0x81,0xa0,0x1c }, { 0xf9,0x08,0x2b,0x94 }, - { 0x70,0x48,0x68,0x58 }, { 0x8f,0x45,0xfd,0x19 }, - { 0x94,0xde,0x6c,0x87 }, { 0x52,0x7b,0xf8,0xb7 }, - { 0xab,0x73,0xd3,0x23 }, { 0x72,0x4b,0x02,0xe2 }, - { 0xe3,0x1f,0x8f,0x57 }, { 0x66,0x55,0xab,0x2a }, - { 0xb2,0xeb,0x28,0x07 }, { 0x2f,0xb5,0xc2,0x03 }, - { 0x86,0xc5,0x7b,0x9a }, { 0xd3,0x37,0x08,0xa5 }, - { 0x30,0x28,0x87,0xf2 }, { 0x23,0xbf,0xa5,0xb2 }, - { 0x02,0x03,0x6a,0xba }, { 0xed,0x16,0x82,0x5c }, - { 0x8a,0xcf,0x1c,0x2b }, { 0xa7,0x79,0xb4,0x92 }, - { 0xf3,0x07,0xf2,0xf0 }, { 0x4e,0x69,0xe2,0xa1 }, - { 0x65,0xda,0xf4,0xcd }, { 0x06,0x05,0xbe,0xd5 }, - { 0xd1,0x34,0x62,0x1f }, { 0xc4,0xa6,0xfe,0x8a }, - { 0x34,0x2e,0x53,0x9d }, { 0xa2,0xf3,0x55,0xa0 }, - { 0x05,0x8a,0xe1,0x32 }, { 0xa4,0xf6,0xeb,0x75 }, - { 0x0b,0x83,0xec,0x39 }, { 0x40,0x60,0xef,0xaa }, - { 0x5e,0x71,0x9f,0x06 }, { 0xbd,0x6e,0x10,0x51 }, - { 0x3e,0x21,0x8a,0xf9 }, { 0x96,0xdd,0x06,0x3d }, - { 0xdd,0x3e,0x05,0xae }, { 0x4d,0xe6,0xbd,0x46 }, - { 0x91,0x54,0x8d,0xb5 }, { 0x71,0xc4,0x5d,0x05 }, - { 0x04,0x06,0xd4,0x6f }, { 0x60,0x50,0x15,0xff }, - { 0x19,0x98,0xfb,0x24 }, { 0xd6,0xbd,0xe9,0x97 }, - { 0x89,0x40,0x43,0xcc }, { 0x67,0xd9,0x9e,0x77 }, - { 0xb0,0xe8,0x42,0xbd }, { 0x07,0x89,0x8b,0x88 }, - { 0xe7,0x19,0x5b,0x38 }, { 0x79,0xc8,0xee,0xdb }, - { 0xa1,0x7c,0x0a,0x47 }, { 0x7c,0x42,0x0f,0xe9 }, - { 0xf8,0x84,0x1e,0xc9 }, { 0x00,0x00,0x00,0x00 }, - { 0x09,0x80,0x86,0x83 }, { 0x32,0x2b,0xed,0x48 }, - { 0x1e,0x11,0x70,0xac }, { 0x6c,0x5a,0x72,0x4e }, - { 0xfd,0x0e,0xff,0xfb }, { 0x0f,0x85,0x38,0x56 }, - { 0x3d,0xae,0xd5,0x1e }, { 0x36,0x2d,0x39,0x27 }, - { 0x0a,0x0f,0xd9,0x64 }, { 0x68,0x5c,0xa6,0x21 }, - { 0x9b,0x5b,0x54,0xd1 }, { 0x24,0x36,0x2e,0x3a }, - { 0x0c,0x0a,0x67,0xb1 }, { 0x93,0x57,0xe7,0x0f }, - { 0xb4,0xee,0x96,0xd2 }, { 0x1b,0x9b,0x91,0x9e }, - { 0x80,0xc0,0xc5,0x4f }, { 0x61,0xdc,0x20,0xa2 }, - { 0x5a,0x77,0x4b,0x69 }, { 0x1c,0x12,0x1a,0x16 }, - { 0xe2,0x93,0xba,0x0a }, { 0xc0,0xa0,0x2a,0xe5 }, - { 0x3c,0x22,0xe0,0x43 }, { 0x12,0x1b,0x17,0x1d }, - { 0x0e,0x09,0x0d,0x0b }, { 0xf2,0x8b,0xc7,0xad }, - { 0x2d,0xb6,0xa8,0xb9 }, { 0x14,0x1e,0xa9,0xc8 }, - { 0x57,0xf1,0x19,0x85 }, { 0xaf,0x75,0x07,0x4c }, - { 0xee,0x99,0xdd,0xbb }, { 0xa3,0x7f,0x60,0xfd }, - { 0xf7,0x01,0x26,0x9f }, { 0x5c,0x72,0xf5,0xbc }, - { 0x44,0x66,0x3b,0xc5 }, { 0x5b,0xfb,0x7e,0x34 }, - { 0x8b,0x43,0x29,0x76 }, { 0xcb,0x23,0xc6,0xdc }, - { 0xb6,0xed,0xfc,0x68 }, { 0xb8,0xe4,0xf1,0x63 }, - { 0xd7,0x31,0xdc,0xca }, { 0x42,0x63,0x85,0x10 }, - { 0x13,0x97,0x22,0x40 }, { 0x84,0xc6,0x11,0x20 }, - { 0x85,0x4a,0x24,0x7d }, { 0xd2,0xbb,0x3d,0xf8 }, - { 0xae,0xf9,0x32,0x11 }, { 0xc7,0x29,0xa1,0x6d }, - { 0x1d,0x9e,0x2f,0x4b }, { 0xdc,0xb2,0x30,0xf3 }, - { 0x0d,0x86,0x52,0xec }, { 0x77,0xc1,0xe3,0xd0 }, - { 0x2b,0xb3,0x16,0x6c }, { 0xa9,0x70,0xb9,0x99 }, - { 0x11,0x94,0x48,0xfa }, { 0x47,0xe9,0x64,0x22 }, - { 0xa8,0xfc,0x8c,0xc4 }, { 0xa0,0xf0,0x3f,0x1a }, - { 0x56,0x7d,0x2c,0xd8 }, { 0x22,0x33,0x90,0xef }, - { 0x87,0x49,0x4e,0xc7 }, { 0xd9,0x38,0xd1,0xc1 }, - { 0x8c,0xca,0xa2,0xfe }, { 0x98,0xd4,0x0b,0x36 }, - { 0xa6,0xf5,0x81,0xcf }, { 0xa5,0x7a,0xde,0x28 }, - { 0xda,0xb7,0x8e,0x26 }, { 0x3f,0xad,0xbf,0xa4 }, - { 0x2c,0x3a,0x9d,0xe4 }, { 0x50,0x78,0x92,0x0d }, - { 0x6a,0x5f,0xcc,0x9b }, { 0x54,0x7e,0x46,0x62 }, - { 0xf6,0x8d,0x13,0xc2 }, { 0x90,0xd8,0xb8,0xe8 }, - { 0x2e,0x39,0xf7,0x5e }, { 0x82,0xc3,0xaf,0xf5 }, - { 0x9f,0x5d,0x80,0xbe }, { 0x69,0xd0,0x93,0x7c }, - { 0x6f,0xd5,0x2d,0xa9 }, { 0xcf,0x25,0x12,0xb3 }, - { 0xc8,0xac,0x99,0x3b }, { 0x10,0x18,0x7d,0xa7 }, - { 0xe8,0x9c,0x63,0x6e }, { 0xdb,0x3b,0xbb,0x7b }, - { 0xcd,0x26,0x78,0x09 }, { 0x6e,0x59,0x18,0xf4 }, - { 0xec,0x9a,0xb7,0x01 }, { 0x83,0x4f,0x9a,0xa8 }, - { 0xe6,0x95,0x6e,0x65 }, { 0xaa,0xff,0xe6,0x7e }, - { 0x21,0xbc,0xcf,0x08 }, { 0xef,0x15,0xe8,0xe6 }, - { 0xba,0xe7,0x9b,0xd9 }, { 0x4a,0x6f,0x36,0xce }, - { 0xea,0x9f,0x09,0xd4 }, { 0x29,0xb0,0x7c,0xd6 }, - { 0x31,0xa4,0xb2,0xaf }, { 0x2a,0x3f,0x23,0x31 }, - { 0xc6,0xa5,0x94,0x30 }, { 0x35,0xa2,0x66,0xc0 }, - { 0x74,0x4e,0xbc,0x37 }, { 0xfc,0x82,0xca,0xa6 }, - { 0xe0,0x90,0xd0,0xb0 }, { 0x33,0xa7,0xd8,0x15 }, - { 0xf1,0x04,0x98,0x4a }, { 0x41,0xec,0xda,0xf7 }, - { 0x7f,0xcd,0x50,0x0e }, { 0x17,0x91,0xf6,0x2f }, - { 0x76,0x4d,0xd6,0x8d }, { 0x43,0xef,0xb0,0x4d }, - { 0xcc,0xaa,0x4d,0x54 }, { 0xe4,0x96,0x04,0xdf }, - { 0x9e,0xd1,0xb5,0xe3 }, { 0x4c,0x6a,0x88,0x1b }, - { 0xc1,0x2c,0x1f,0xb8 }, { 0x46,0x65,0x51,0x7f }, - { 0x9d,0x5e,0xea,0x04 }, { 0x01,0x8c,0x35,0x5d }, - { 0xfa,0x87,0x74,0x73 }, { 0xfb,0x0b,0x41,0x2e }, - { 0xb3,0x67,0x1d,0x5a }, { 0x92,0xdb,0xd2,0x52 }, - { 0xe9,0x10,0x56,0x33 }, { 0x6d,0xd6,0x47,0x13 }, - { 0x9a,0xd7,0x61,0x8c }, { 0x37,0xa1,0x0c,0x7a }, - { 0x59,0xf8,0x14,0x8e }, { 0xeb,0x13,0x3c,0x89 }, - { 0xce,0xa9,0x27,0xee }, { 0xb7,0x61,0xc9,0x35 }, - { 0xe1,0x1c,0xe5,0xed }, { 0x7a,0x47,0xb1,0x3c }, - { 0x9c,0xd2,0xdf,0x59 }, { 0x55,0xf2,0x73,0x3f }, - { 0x18,0x14,0xce,0x79 }, { 0x73,0xc7,0x37,0xbf }, - { 0x53,0xf7,0xcd,0xea }, { 0x5f,0xfd,0xaa,0x5b }, - { 0xdf,0x3d,0x6f,0x14 }, { 0x78,0x44,0xdb,0x86 }, - { 0xca,0xaf,0xf3,0x81 }, { 0xb9,0x68,0xc4,0x3e }, - { 0x38,0x24,0x34,0x2c }, { 0xc2,0xa3,0x40,0x5f }, - { 0x16,0x1d,0xc3,0x72 }, { 0xbc,0xe2,0x25,0x0c }, - { 0x28,0x3c,0x49,0x8b }, { 0xff,0x0d,0x95,0x41 }, - { 0x39,0xa8,0x01,0x71 }, { 0x08,0x0c,0xb3,0xde }, - { 0xd8,0xb4,0xe4,0x9c }, { 0x64,0x56,0xc1,0x90 }, - { 0x7b,0xcb,0x84,0x61 }, { 0xd5,0x32,0xb6,0x70 }, - { 0x48,0x6c,0x5c,0x74 }, { 0xd0,0xb8,0x57,0x42 } - }; - -static const unsigned char T6[256][4] = - { - { 0x50,0x51,0xf4,0xa7 }, { 0x53,0x7e,0x41,0x65 }, - { 0xc3,0x1a,0x17,0xa4 }, { 0x96,0x3a,0x27,0x5e }, - { 0xcb,0x3b,0xab,0x6b }, { 0xf1,0x1f,0x9d,0x45 }, - { 0xab,0xac,0xfa,0x58 }, { 0x93,0x4b,0xe3,0x03 }, - { 0x55,0x20,0x30,0xfa }, { 0xf6,0xad,0x76,0x6d }, - { 0x91,0x88,0xcc,0x76 }, { 0x25,0xf5,0x02,0x4c }, - { 0xfc,0x4f,0xe5,0xd7 }, { 0xd7,0xc5,0x2a,0xcb }, - { 0x80,0x26,0x35,0x44 }, { 0x8f,0xb5,0x62,0xa3 }, - { 0x49,0xde,0xb1,0x5a }, { 0x67,0x25,0xba,0x1b }, - { 0x98,0x45,0xea,0x0e }, { 0xe1,0x5d,0xfe,0xc0 }, - { 0x02,0xc3,0x2f,0x75 }, { 0x12,0x81,0x4c,0xf0 }, - { 0xa3,0x8d,0x46,0x97 }, { 0xc6,0x6b,0xd3,0xf9 }, - { 0xe7,0x03,0x8f,0x5f }, { 0x95,0x15,0x92,0x9c }, - { 0xeb,0xbf,0x6d,0x7a }, { 0xda,0x95,0x52,0x59 }, - { 0x2d,0xd4,0xbe,0x83 }, { 0xd3,0x58,0x74,0x21 }, - { 0x29,0x49,0xe0,0x69 }, { 0x44,0x8e,0xc9,0xc8 }, - { 0x6a,0x75,0xc2,0x89 }, { 0x78,0xf4,0x8e,0x79 }, - { 0x6b,0x99,0x58,0x3e }, { 0xdd,0x27,0xb9,0x71 }, - { 0xb6,0xbe,0xe1,0x4f }, { 0x17,0xf0,0x88,0xad }, - { 0x66,0xc9,0x20,0xac }, { 0xb4,0x7d,0xce,0x3a }, - { 0x18,0x63,0xdf,0x4a }, { 0x82,0xe5,0x1a,0x31 }, - { 0x60,0x97,0x51,0x33 }, { 0x45,0x62,0x53,0x7f }, - { 0xe0,0xb1,0x64,0x77 }, { 0x84,0xbb,0x6b,0xae }, - { 0x1c,0xfe,0x81,0xa0 }, { 0x94,0xf9,0x08,0x2b }, - { 0x58,0x70,0x48,0x68 }, { 0x19,0x8f,0x45,0xfd }, - { 0x87,0x94,0xde,0x6c }, { 0xb7,0x52,0x7b,0xf8 }, - { 0x23,0xab,0x73,0xd3 }, { 0xe2,0x72,0x4b,0x02 }, - { 0x57,0xe3,0x1f,0x8f }, { 0x2a,0x66,0x55,0xab }, - { 0x07,0xb2,0xeb,0x28 }, { 0x03,0x2f,0xb5,0xc2 }, - { 0x9a,0x86,0xc5,0x7b }, { 0xa5,0xd3,0x37,0x08 }, - { 0xf2,0x30,0x28,0x87 }, { 0xb2,0x23,0xbf,0xa5 }, - { 0xba,0x02,0x03,0x6a }, { 0x5c,0xed,0x16,0x82 }, - { 0x2b,0x8a,0xcf,0x1c }, { 0x92,0xa7,0x79,0xb4 }, - { 0xf0,0xf3,0x07,0xf2 }, { 0xa1,0x4e,0x69,0xe2 }, - { 0xcd,0x65,0xda,0xf4 }, { 0xd5,0x06,0x05,0xbe }, - { 0x1f,0xd1,0x34,0x62 }, { 0x8a,0xc4,0xa6,0xfe }, - { 0x9d,0x34,0x2e,0x53 }, { 0xa0,0xa2,0xf3,0x55 }, - { 0x32,0x05,0x8a,0xe1 }, { 0x75,0xa4,0xf6,0xeb }, - { 0x39,0x0b,0x83,0xec }, { 0xaa,0x40,0x60,0xef }, - { 0x06,0x5e,0x71,0x9f }, { 0x51,0xbd,0x6e,0x10 }, - { 0xf9,0x3e,0x21,0x8a }, { 0x3d,0x96,0xdd,0x06 }, - { 0xae,0xdd,0x3e,0x05 }, { 0x46,0x4d,0xe6,0xbd }, - { 0xb5,0x91,0x54,0x8d }, { 0x05,0x71,0xc4,0x5d }, - { 0x6f,0x04,0x06,0xd4 }, { 0xff,0x60,0x50,0x15 }, - { 0x24,0x19,0x98,0xfb }, { 0x97,0xd6,0xbd,0xe9 }, - { 0xcc,0x89,0x40,0x43 }, { 0x77,0x67,0xd9,0x9e }, - { 0xbd,0xb0,0xe8,0x42 }, { 0x88,0x07,0x89,0x8b }, - { 0x38,0xe7,0x19,0x5b }, { 0xdb,0x79,0xc8,0xee }, - { 0x47,0xa1,0x7c,0x0a }, { 0xe9,0x7c,0x42,0x0f }, - { 0xc9,0xf8,0x84,0x1e }, { 0x00,0x00,0x00,0x00 }, - { 0x83,0x09,0x80,0x86 }, { 0x48,0x32,0x2b,0xed }, - { 0xac,0x1e,0x11,0x70 }, { 0x4e,0x6c,0x5a,0x72 }, - { 0xfb,0xfd,0x0e,0xff }, { 0x56,0x0f,0x85,0x38 }, - { 0x1e,0x3d,0xae,0xd5 }, { 0x27,0x36,0x2d,0x39 }, - { 0x64,0x0a,0x0f,0xd9 }, { 0x21,0x68,0x5c,0xa6 }, - { 0xd1,0x9b,0x5b,0x54 }, { 0x3a,0x24,0x36,0x2e }, - { 0xb1,0x0c,0x0a,0x67 }, { 0x0f,0x93,0x57,0xe7 }, - { 0xd2,0xb4,0xee,0x96 }, { 0x9e,0x1b,0x9b,0x91 }, - { 0x4f,0x80,0xc0,0xc5 }, { 0xa2,0x61,0xdc,0x20 }, - { 0x69,0x5a,0x77,0x4b }, { 0x16,0x1c,0x12,0x1a }, - { 0x0a,0xe2,0x93,0xba }, { 0xe5,0xc0,0xa0,0x2a }, - { 0x43,0x3c,0x22,0xe0 }, { 0x1d,0x12,0x1b,0x17 }, - { 0x0b,0x0e,0x09,0x0d }, { 0xad,0xf2,0x8b,0xc7 }, - { 0xb9,0x2d,0xb6,0xa8 }, { 0xc8,0x14,0x1e,0xa9 }, - { 0x85,0x57,0xf1,0x19 }, { 0x4c,0xaf,0x75,0x07 }, - { 0xbb,0xee,0x99,0xdd }, { 0xfd,0xa3,0x7f,0x60 }, - { 0x9f,0xf7,0x01,0x26 }, { 0xbc,0x5c,0x72,0xf5 }, - { 0xc5,0x44,0x66,0x3b }, { 0x34,0x5b,0xfb,0x7e }, - { 0x76,0x8b,0x43,0x29 }, { 0xdc,0xcb,0x23,0xc6 }, - { 0x68,0xb6,0xed,0xfc }, { 0x63,0xb8,0xe4,0xf1 }, - { 0xca,0xd7,0x31,0xdc }, { 0x10,0x42,0x63,0x85 }, - { 0x40,0x13,0x97,0x22 }, { 0x20,0x84,0xc6,0x11 }, - { 0x7d,0x85,0x4a,0x24 }, { 0xf8,0xd2,0xbb,0x3d }, - { 0x11,0xae,0xf9,0x32 }, { 0x6d,0xc7,0x29,0xa1 }, - { 0x4b,0x1d,0x9e,0x2f }, { 0xf3,0xdc,0xb2,0x30 }, - { 0xec,0x0d,0x86,0x52 }, { 0xd0,0x77,0xc1,0xe3 }, - { 0x6c,0x2b,0xb3,0x16 }, { 0x99,0xa9,0x70,0xb9 }, - { 0xfa,0x11,0x94,0x48 }, { 0x22,0x47,0xe9,0x64 }, - { 0xc4,0xa8,0xfc,0x8c }, { 0x1a,0xa0,0xf0,0x3f }, - { 0xd8,0x56,0x7d,0x2c }, { 0xef,0x22,0x33,0x90 }, - { 0xc7,0x87,0x49,0x4e }, { 0xc1,0xd9,0x38,0xd1 }, - { 0xfe,0x8c,0xca,0xa2 }, { 0x36,0x98,0xd4,0x0b }, - { 0xcf,0xa6,0xf5,0x81 }, { 0x28,0xa5,0x7a,0xde }, - { 0x26,0xda,0xb7,0x8e }, { 0xa4,0x3f,0xad,0xbf }, - { 0xe4,0x2c,0x3a,0x9d }, { 0x0d,0x50,0x78,0x92 }, - { 0x9b,0x6a,0x5f,0xcc }, { 0x62,0x54,0x7e,0x46 }, - { 0xc2,0xf6,0x8d,0x13 }, { 0xe8,0x90,0xd8,0xb8 }, - { 0x5e,0x2e,0x39,0xf7 }, { 0xf5,0x82,0xc3,0xaf }, - { 0xbe,0x9f,0x5d,0x80 }, { 0x7c,0x69,0xd0,0x93 }, - { 0xa9,0x6f,0xd5,0x2d }, { 0xb3,0xcf,0x25,0x12 }, - { 0x3b,0xc8,0xac,0x99 }, { 0xa7,0x10,0x18,0x7d }, - { 0x6e,0xe8,0x9c,0x63 }, { 0x7b,0xdb,0x3b,0xbb }, - { 0x09,0xcd,0x26,0x78 }, { 0xf4,0x6e,0x59,0x18 }, - { 0x01,0xec,0x9a,0xb7 }, { 0xa8,0x83,0x4f,0x9a }, - { 0x65,0xe6,0x95,0x6e }, { 0x7e,0xaa,0xff,0xe6 }, - { 0x08,0x21,0xbc,0xcf }, { 0xe6,0xef,0x15,0xe8 }, - { 0xd9,0xba,0xe7,0x9b }, { 0xce,0x4a,0x6f,0x36 }, - { 0xd4,0xea,0x9f,0x09 }, { 0xd6,0x29,0xb0,0x7c }, - { 0xaf,0x31,0xa4,0xb2 }, { 0x31,0x2a,0x3f,0x23 }, - { 0x30,0xc6,0xa5,0x94 }, { 0xc0,0x35,0xa2,0x66 }, - { 0x37,0x74,0x4e,0xbc }, { 0xa6,0xfc,0x82,0xca }, - { 0xb0,0xe0,0x90,0xd0 }, { 0x15,0x33,0xa7,0xd8 }, - { 0x4a,0xf1,0x04,0x98 }, { 0xf7,0x41,0xec,0xda }, - { 0x0e,0x7f,0xcd,0x50 }, { 0x2f,0x17,0x91,0xf6 }, - { 0x8d,0x76,0x4d,0xd6 }, { 0x4d,0x43,0xef,0xb0 }, - { 0x54,0xcc,0xaa,0x4d }, { 0xdf,0xe4,0x96,0x04 }, - { 0xe3,0x9e,0xd1,0xb5 }, { 0x1b,0x4c,0x6a,0x88 }, - { 0xb8,0xc1,0x2c,0x1f }, { 0x7f,0x46,0x65,0x51 }, - { 0x04,0x9d,0x5e,0xea }, { 0x5d,0x01,0x8c,0x35 }, - { 0x73,0xfa,0x87,0x74 }, { 0x2e,0xfb,0x0b,0x41 }, - { 0x5a,0xb3,0x67,0x1d }, { 0x52,0x92,0xdb,0xd2 }, - { 0x33,0xe9,0x10,0x56 }, { 0x13,0x6d,0xd6,0x47 }, - { 0x8c,0x9a,0xd7,0x61 }, { 0x7a,0x37,0xa1,0x0c }, - { 0x8e,0x59,0xf8,0x14 }, { 0x89,0xeb,0x13,0x3c }, - { 0xee,0xce,0xa9,0x27 }, { 0x35,0xb7,0x61,0xc9 }, - { 0xed,0xe1,0x1c,0xe5 }, { 0x3c,0x7a,0x47,0xb1 }, - { 0x59,0x9c,0xd2,0xdf }, { 0x3f,0x55,0xf2,0x73 }, - { 0x79,0x18,0x14,0xce }, { 0xbf,0x73,0xc7,0x37 }, - { 0xea,0x53,0xf7,0xcd }, { 0x5b,0x5f,0xfd,0xaa }, - { 0x14,0xdf,0x3d,0x6f }, { 0x86,0x78,0x44,0xdb }, - { 0x81,0xca,0xaf,0xf3 }, { 0x3e,0xb9,0x68,0xc4 }, - { 0x2c,0x38,0x24,0x34 }, { 0x5f,0xc2,0xa3,0x40 }, - { 0x72,0x16,0x1d,0xc3 }, { 0x0c,0xbc,0xe2,0x25 }, - { 0x8b,0x28,0x3c,0x49 }, { 0x41,0xff,0x0d,0x95 }, - { 0x71,0x39,0xa8,0x01 }, { 0xde,0x08,0x0c,0xb3 }, - { 0x9c,0xd8,0xb4,0xe4 }, { 0x90,0x64,0x56,0xc1 }, - { 0x61,0x7b,0xcb,0x84 }, { 0x70,0xd5,0x32,0xb6 }, - { 0x74,0x48,0x6c,0x5c }, { 0x42,0xd0,0xb8,0x57 } - }; - -static const unsigned char T7[256][4] = - { - { 0xa7,0x50,0x51,0xf4 }, { 0x65,0x53,0x7e,0x41 }, - { 0xa4,0xc3,0x1a,0x17 }, { 0x5e,0x96,0x3a,0x27 }, - { 0x6b,0xcb,0x3b,0xab }, { 0x45,0xf1,0x1f,0x9d }, - { 0x58,0xab,0xac,0xfa }, { 0x03,0x93,0x4b,0xe3 }, - { 0xfa,0x55,0x20,0x30 }, { 0x6d,0xf6,0xad,0x76 }, - { 0x76,0x91,0x88,0xcc }, { 0x4c,0x25,0xf5,0x02 }, - { 0xd7,0xfc,0x4f,0xe5 }, { 0xcb,0xd7,0xc5,0x2a }, - { 0x44,0x80,0x26,0x35 }, { 0xa3,0x8f,0xb5,0x62 }, - { 0x5a,0x49,0xde,0xb1 }, { 0x1b,0x67,0x25,0xba }, - { 0x0e,0x98,0x45,0xea }, { 0xc0,0xe1,0x5d,0xfe }, - { 0x75,0x02,0xc3,0x2f }, { 0xf0,0x12,0x81,0x4c }, - { 0x97,0xa3,0x8d,0x46 }, { 0xf9,0xc6,0x6b,0xd3 }, - { 0x5f,0xe7,0x03,0x8f }, { 0x9c,0x95,0x15,0x92 }, - { 0x7a,0xeb,0xbf,0x6d }, { 0x59,0xda,0x95,0x52 }, - { 0x83,0x2d,0xd4,0xbe }, { 0x21,0xd3,0x58,0x74 }, - { 0x69,0x29,0x49,0xe0 }, { 0xc8,0x44,0x8e,0xc9 }, - { 0x89,0x6a,0x75,0xc2 }, { 0x79,0x78,0xf4,0x8e }, - { 0x3e,0x6b,0x99,0x58 }, { 0x71,0xdd,0x27,0xb9 }, - { 0x4f,0xb6,0xbe,0xe1 }, { 0xad,0x17,0xf0,0x88 }, - { 0xac,0x66,0xc9,0x20 }, { 0x3a,0xb4,0x7d,0xce }, - { 0x4a,0x18,0x63,0xdf }, { 0x31,0x82,0xe5,0x1a }, - { 0x33,0x60,0x97,0x51 }, { 0x7f,0x45,0x62,0x53 }, - { 0x77,0xe0,0xb1,0x64 }, { 0xae,0x84,0xbb,0x6b }, - { 0xa0,0x1c,0xfe,0x81 }, { 0x2b,0x94,0xf9,0x08 }, - { 0x68,0x58,0x70,0x48 }, { 0xfd,0x19,0x8f,0x45 }, - { 0x6c,0x87,0x94,0xde }, { 0xf8,0xb7,0x52,0x7b }, - { 0xd3,0x23,0xab,0x73 }, { 0x02,0xe2,0x72,0x4b }, - { 0x8f,0x57,0xe3,0x1f }, { 0xab,0x2a,0x66,0x55 }, - { 0x28,0x07,0xb2,0xeb }, { 0xc2,0x03,0x2f,0xb5 }, - { 0x7b,0x9a,0x86,0xc5 }, { 0x08,0xa5,0xd3,0x37 }, - { 0x87,0xf2,0x30,0x28 }, { 0xa5,0xb2,0x23,0xbf }, - { 0x6a,0xba,0x02,0x03 }, { 0x82,0x5c,0xed,0x16 }, - { 0x1c,0x2b,0x8a,0xcf }, { 0xb4,0x92,0xa7,0x79 }, - { 0xf2,0xf0,0xf3,0x07 }, { 0xe2,0xa1,0x4e,0x69 }, - { 0xf4,0xcd,0x65,0xda }, { 0xbe,0xd5,0x06,0x05 }, - { 0x62,0x1f,0xd1,0x34 }, { 0xfe,0x8a,0xc4,0xa6 }, - { 0x53,0x9d,0x34,0x2e }, { 0x55,0xa0,0xa2,0xf3 }, - { 0xe1,0x32,0x05,0x8a }, { 0xeb,0x75,0xa4,0xf6 }, - { 0xec,0x39,0x0b,0x83 }, { 0xef,0xaa,0x40,0x60 }, - { 0x9f,0x06,0x5e,0x71 }, { 0x10,0x51,0xbd,0x6e }, - { 0x8a,0xf9,0x3e,0x21 }, { 0x06,0x3d,0x96,0xdd }, - { 0x05,0xae,0xdd,0x3e }, { 0xbd,0x46,0x4d,0xe6 }, - { 0x8d,0xb5,0x91,0x54 }, { 0x5d,0x05,0x71,0xc4 }, - { 0xd4,0x6f,0x04,0x06 }, { 0x15,0xff,0x60,0x50 }, - { 0xfb,0x24,0x19,0x98 }, { 0xe9,0x97,0xd6,0xbd }, - { 0x43,0xcc,0x89,0x40 }, { 0x9e,0x77,0x67,0xd9 }, - { 0x42,0xbd,0xb0,0xe8 }, { 0x8b,0x88,0x07,0x89 }, - { 0x5b,0x38,0xe7,0x19 }, { 0xee,0xdb,0x79,0xc8 }, - { 0x0a,0x47,0xa1,0x7c }, { 0x0f,0xe9,0x7c,0x42 }, - { 0x1e,0xc9,0xf8,0x84 }, { 0x00,0x00,0x00,0x00 }, - { 0x86,0x83,0x09,0x80 }, { 0xed,0x48,0x32,0x2b }, - { 0x70,0xac,0x1e,0x11 }, { 0x72,0x4e,0x6c,0x5a }, - { 0xff,0xfb,0xfd,0x0e }, { 0x38,0x56,0x0f,0x85 }, - { 0xd5,0x1e,0x3d,0xae }, { 0x39,0x27,0x36,0x2d }, - { 0xd9,0x64,0x0a,0x0f }, { 0xa6,0x21,0x68,0x5c }, - { 0x54,0xd1,0x9b,0x5b }, { 0x2e,0x3a,0x24,0x36 }, - { 0x67,0xb1,0x0c,0x0a }, { 0xe7,0x0f,0x93,0x57 }, - { 0x96,0xd2,0xb4,0xee }, { 0x91,0x9e,0x1b,0x9b }, - { 0xc5,0x4f,0x80,0xc0 }, { 0x20,0xa2,0x61,0xdc }, - { 0x4b,0x69,0x5a,0x77 }, { 0x1a,0x16,0x1c,0x12 }, - { 0xba,0x0a,0xe2,0x93 }, { 0x2a,0xe5,0xc0,0xa0 }, - { 0xe0,0x43,0x3c,0x22 }, { 0x17,0x1d,0x12,0x1b }, - { 0x0d,0x0b,0x0e,0x09 }, { 0xc7,0xad,0xf2,0x8b }, - { 0xa8,0xb9,0x2d,0xb6 }, { 0xa9,0xc8,0x14,0x1e }, - { 0x19,0x85,0x57,0xf1 }, { 0x07,0x4c,0xaf,0x75 }, - { 0xdd,0xbb,0xee,0x99 }, { 0x60,0xfd,0xa3,0x7f }, - { 0x26,0x9f,0xf7,0x01 }, { 0xf5,0xbc,0x5c,0x72 }, - { 0x3b,0xc5,0x44,0x66 }, { 0x7e,0x34,0x5b,0xfb }, - { 0x29,0x76,0x8b,0x43 }, { 0xc6,0xdc,0xcb,0x23 }, - { 0xfc,0x68,0xb6,0xed }, { 0xf1,0x63,0xb8,0xe4 }, - { 0xdc,0xca,0xd7,0x31 }, { 0x85,0x10,0x42,0x63 }, - { 0x22,0x40,0x13,0x97 }, { 0x11,0x20,0x84,0xc6 }, - { 0x24,0x7d,0x85,0x4a }, { 0x3d,0xf8,0xd2,0xbb }, - { 0x32,0x11,0xae,0xf9 }, { 0xa1,0x6d,0xc7,0x29 }, - { 0x2f,0x4b,0x1d,0x9e }, { 0x30,0xf3,0xdc,0xb2 }, - { 0x52,0xec,0x0d,0x86 }, { 0xe3,0xd0,0x77,0xc1 }, - { 0x16,0x6c,0x2b,0xb3 }, { 0xb9,0x99,0xa9,0x70 }, - { 0x48,0xfa,0x11,0x94 }, { 0x64,0x22,0x47,0xe9 }, - { 0x8c,0xc4,0xa8,0xfc }, { 0x3f,0x1a,0xa0,0xf0 }, - { 0x2c,0xd8,0x56,0x7d }, { 0x90,0xef,0x22,0x33 }, - { 0x4e,0xc7,0x87,0x49 }, { 0xd1,0xc1,0xd9,0x38 }, - { 0xa2,0xfe,0x8c,0xca }, { 0x0b,0x36,0x98,0xd4 }, - { 0x81,0xcf,0xa6,0xf5 }, { 0xde,0x28,0xa5,0x7a }, - { 0x8e,0x26,0xda,0xb7 }, { 0xbf,0xa4,0x3f,0xad }, - { 0x9d,0xe4,0x2c,0x3a }, { 0x92,0x0d,0x50,0x78 }, - { 0xcc,0x9b,0x6a,0x5f }, { 0x46,0x62,0x54,0x7e }, - { 0x13,0xc2,0xf6,0x8d }, { 0xb8,0xe8,0x90,0xd8 }, - { 0xf7,0x5e,0x2e,0x39 }, { 0xaf,0xf5,0x82,0xc3 }, - { 0x80,0xbe,0x9f,0x5d }, { 0x93,0x7c,0x69,0xd0 }, - { 0x2d,0xa9,0x6f,0xd5 }, { 0x12,0xb3,0xcf,0x25 }, - { 0x99,0x3b,0xc8,0xac }, { 0x7d,0xa7,0x10,0x18 }, - { 0x63,0x6e,0xe8,0x9c }, { 0xbb,0x7b,0xdb,0x3b }, - { 0x78,0x09,0xcd,0x26 }, { 0x18,0xf4,0x6e,0x59 }, - { 0xb7,0x01,0xec,0x9a }, { 0x9a,0xa8,0x83,0x4f }, - { 0x6e,0x65,0xe6,0x95 }, { 0xe6,0x7e,0xaa,0xff }, - { 0xcf,0x08,0x21,0xbc }, { 0xe8,0xe6,0xef,0x15 }, - { 0x9b,0xd9,0xba,0xe7 }, { 0x36,0xce,0x4a,0x6f }, - { 0x09,0xd4,0xea,0x9f }, { 0x7c,0xd6,0x29,0xb0 }, - { 0xb2,0xaf,0x31,0xa4 }, { 0x23,0x31,0x2a,0x3f }, - { 0x94,0x30,0xc6,0xa5 }, { 0x66,0xc0,0x35,0xa2 }, - { 0xbc,0x37,0x74,0x4e }, { 0xca,0xa6,0xfc,0x82 }, - { 0xd0,0xb0,0xe0,0x90 }, { 0xd8,0x15,0x33,0xa7 }, - { 0x98,0x4a,0xf1,0x04 }, { 0xda,0xf7,0x41,0xec }, - { 0x50,0x0e,0x7f,0xcd }, { 0xf6,0x2f,0x17,0x91 }, - { 0xd6,0x8d,0x76,0x4d }, { 0xb0,0x4d,0x43,0xef }, - { 0x4d,0x54,0xcc,0xaa }, { 0x04,0xdf,0xe4,0x96 }, - { 0xb5,0xe3,0x9e,0xd1 }, { 0x88,0x1b,0x4c,0x6a }, - { 0x1f,0xb8,0xc1,0x2c }, { 0x51,0x7f,0x46,0x65 }, - { 0xea,0x04,0x9d,0x5e }, { 0x35,0x5d,0x01,0x8c }, - { 0x74,0x73,0xfa,0x87 }, { 0x41,0x2e,0xfb,0x0b }, - { 0x1d,0x5a,0xb3,0x67 }, { 0xd2,0x52,0x92,0xdb }, - { 0x56,0x33,0xe9,0x10 }, { 0x47,0x13,0x6d,0xd6 }, - { 0x61,0x8c,0x9a,0xd7 }, { 0x0c,0x7a,0x37,0xa1 }, - { 0x14,0x8e,0x59,0xf8 }, { 0x3c,0x89,0xeb,0x13 }, - { 0x27,0xee,0xce,0xa9 }, { 0xc9,0x35,0xb7,0x61 }, - { 0xe5,0xed,0xe1,0x1c }, { 0xb1,0x3c,0x7a,0x47 }, - { 0xdf,0x59,0x9c,0xd2 }, { 0x73,0x3f,0x55,0xf2 }, - { 0xce,0x79,0x18,0x14 }, { 0x37,0xbf,0x73,0xc7 }, - { 0xcd,0xea,0x53,0xf7 }, { 0xaa,0x5b,0x5f,0xfd }, - { 0x6f,0x14,0xdf,0x3d }, { 0xdb,0x86,0x78,0x44 }, - { 0xf3,0x81,0xca,0xaf }, { 0xc4,0x3e,0xb9,0x68 }, - { 0x34,0x2c,0x38,0x24 }, { 0x40,0x5f,0xc2,0xa3 }, - { 0xc3,0x72,0x16,0x1d }, { 0x25,0x0c,0xbc,0xe2 }, - { 0x49,0x8b,0x28,0x3c }, { 0x95,0x41,0xff,0x0d }, - { 0x01,0x71,0x39,0xa8 }, { 0xb3,0xde,0x08,0x0c }, - { 0xe4,0x9c,0xd8,0xb4 }, { 0xc1,0x90,0x64,0x56 }, - { 0x84,0x61,0x7b,0xcb }, { 0xb6,0x70,0xd5,0x32 }, - { 0x5c,0x74,0x48,0x6c }, { 0x57,0x42,0xd0,0xb8 } - }; - -static const unsigned char T8[256][4] = - { - { 0xf4,0xa7,0x50,0x51 }, { 0x41,0x65,0x53,0x7e }, - { 0x17,0xa4,0xc3,0x1a }, { 0x27,0x5e,0x96,0x3a }, - { 0xab,0x6b,0xcb,0x3b }, { 0x9d,0x45,0xf1,0x1f }, - { 0xfa,0x58,0xab,0xac }, { 0xe3,0x03,0x93,0x4b }, - { 0x30,0xfa,0x55,0x20 }, { 0x76,0x6d,0xf6,0xad }, - { 0xcc,0x76,0x91,0x88 }, { 0x02,0x4c,0x25,0xf5 }, - { 0xe5,0xd7,0xfc,0x4f }, { 0x2a,0xcb,0xd7,0xc5 }, - { 0x35,0x44,0x80,0x26 }, { 0x62,0xa3,0x8f,0xb5 }, - { 0xb1,0x5a,0x49,0xde }, { 0xba,0x1b,0x67,0x25 }, - { 0xea,0x0e,0x98,0x45 }, { 0xfe,0xc0,0xe1,0x5d }, - { 0x2f,0x75,0x02,0xc3 }, { 0x4c,0xf0,0x12,0x81 }, - { 0x46,0x97,0xa3,0x8d }, { 0xd3,0xf9,0xc6,0x6b }, - { 0x8f,0x5f,0xe7,0x03 }, { 0x92,0x9c,0x95,0x15 }, - { 0x6d,0x7a,0xeb,0xbf }, { 0x52,0x59,0xda,0x95 }, - { 0xbe,0x83,0x2d,0xd4 }, { 0x74,0x21,0xd3,0x58 }, - { 0xe0,0x69,0x29,0x49 }, { 0xc9,0xc8,0x44,0x8e }, - { 0xc2,0x89,0x6a,0x75 }, { 0x8e,0x79,0x78,0xf4 }, - { 0x58,0x3e,0x6b,0x99 }, { 0xb9,0x71,0xdd,0x27 }, - { 0xe1,0x4f,0xb6,0xbe }, { 0x88,0xad,0x17,0xf0 }, - { 0x20,0xac,0x66,0xc9 }, { 0xce,0x3a,0xb4,0x7d }, - { 0xdf,0x4a,0x18,0x63 }, { 0x1a,0x31,0x82,0xe5 }, - { 0x51,0x33,0x60,0x97 }, { 0x53,0x7f,0x45,0x62 }, - { 0x64,0x77,0xe0,0xb1 }, { 0x6b,0xae,0x84,0xbb }, - { 0x81,0xa0,0x1c,0xfe }, { 0x08,0x2b,0x94,0xf9 }, - { 0x48,0x68,0x58,0x70 }, { 0x45,0xfd,0x19,0x8f }, - { 0xde,0x6c,0x87,0x94 }, { 0x7b,0xf8,0xb7,0x52 }, - { 0x73,0xd3,0x23,0xab }, { 0x4b,0x02,0xe2,0x72 }, - { 0x1f,0x8f,0x57,0xe3 }, { 0x55,0xab,0x2a,0x66 }, - { 0xeb,0x28,0x07,0xb2 }, { 0xb5,0xc2,0x03,0x2f }, - { 0xc5,0x7b,0x9a,0x86 }, { 0x37,0x08,0xa5,0xd3 }, - { 0x28,0x87,0xf2,0x30 }, { 0xbf,0xa5,0xb2,0x23 }, - { 0x03,0x6a,0xba,0x02 }, { 0x16,0x82,0x5c,0xed }, - { 0xcf,0x1c,0x2b,0x8a }, { 0x79,0xb4,0x92,0xa7 }, - { 0x07,0xf2,0xf0,0xf3 }, { 0x69,0xe2,0xa1,0x4e }, - { 0xda,0xf4,0xcd,0x65 }, { 0x05,0xbe,0xd5,0x06 }, - { 0x34,0x62,0x1f,0xd1 }, { 0xa6,0xfe,0x8a,0xc4 }, - { 0x2e,0x53,0x9d,0x34 }, { 0xf3,0x55,0xa0,0xa2 }, - { 0x8a,0xe1,0x32,0x05 }, { 0xf6,0xeb,0x75,0xa4 }, - { 0x83,0xec,0x39,0x0b }, { 0x60,0xef,0xaa,0x40 }, - { 0x71,0x9f,0x06,0x5e }, { 0x6e,0x10,0x51,0xbd }, - { 0x21,0x8a,0xf9,0x3e }, { 0xdd,0x06,0x3d,0x96 }, - { 0x3e,0x05,0xae,0xdd }, { 0xe6,0xbd,0x46,0x4d }, - { 0x54,0x8d,0xb5,0x91 }, { 0xc4,0x5d,0x05,0x71 }, - { 0x06,0xd4,0x6f,0x04 }, { 0x50,0x15,0xff,0x60 }, - { 0x98,0xfb,0x24,0x19 }, { 0xbd,0xe9,0x97,0xd6 }, - { 0x40,0x43,0xcc,0x89 }, { 0xd9,0x9e,0x77,0x67 }, - { 0xe8,0x42,0xbd,0xb0 }, { 0x89,0x8b,0x88,0x07 }, - { 0x19,0x5b,0x38,0xe7 }, { 0xc8,0xee,0xdb,0x79 }, - { 0x7c,0x0a,0x47,0xa1 }, { 0x42,0x0f,0xe9,0x7c }, - { 0x84,0x1e,0xc9,0xf8 }, { 0x00,0x00,0x00,0x00 }, - { 0x80,0x86,0x83,0x09 }, { 0x2b,0xed,0x48,0x32 }, - { 0x11,0x70,0xac,0x1e }, { 0x5a,0x72,0x4e,0x6c }, - { 0x0e,0xff,0xfb,0xfd }, { 0x85,0x38,0x56,0x0f }, - { 0xae,0xd5,0x1e,0x3d }, { 0x2d,0x39,0x27,0x36 }, - { 0x0f,0xd9,0x64,0x0a }, { 0x5c,0xa6,0x21,0x68 }, - { 0x5b,0x54,0xd1,0x9b }, { 0x36,0x2e,0x3a,0x24 }, - { 0x0a,0x67,0xb1,0x0c }, { 0x57,0xe7,0x0f,0x93 }, - { 0xee,0x96,0xd2,0xb4 }, { 0x9b,0x91,0x9e,0x1b }, - { 0xc0,0xc5,0x4f,0x80 }, { 0xdc,0x20,0xa2,0x61 }, - { 0x77,0x4b,0x69,0x5a }, { 0x12,0x1a,0x16,0x1c }, - { 0x93,0xba,0x0a,0xe2 }, { 0xa0,0x2a,0xe5,0xc0 }, - { 0x22,0xe0,0x43,0x3c }, { 0x1b,0x17,0x1d,0x12 }, - { 0x09,0x0d,0x0b,0x0e }, { 0x8b,0xc7,0xad,0xf2 }, - { 0xb6,0xa8,0xb9,0x2d }, { 0x1e,0xa9,0xc8,0x14 }, - { 0xf1,0x19,0x85,0x57 }, { 0x75,0x07,0x4c,0xaf }, - { 0x99,0xdd,0xbb,0xee }, { 0x7f,0x60,0xfd,0xa3 }, - { 0x01,0x26,0x9f,0xf7 }, { 0x72,0xf5,0xbc,0x5c }, - { 0x66,0x3b,0xc5,0x44 }, { 0xfb,0x7e,0x34,0x5b }, - { 0x43,0x29,0x76,0x8b }, { 0x23,0xc6,0xdc,0xcb }, - { 0xed,0xfc,0x68,0xb6 }, { 0xe4,0xf1,0x63,0xb8 }, - { 0x31,0xdc,0xca,0xd7 }, { 0x63,0x85,0x10,0x42 }, - { 0x97,0x22,0x40,0x13 }, { 0xc6,0x11,0x20,0x84 }, - { 0x4a,0x24,0x7d,0x85 }, { 0xbb,0x3d,0xf8,0xd2 }, - { 0xf9,0x32,0x11,0xae }, { 0x29,0xa1,0x6d,0xc7 }, - { 0x9e,0x2f,0x4b,0x1d }, { 0xb2,0x30,0xf3,0xdc }, - { 0x86,0x52,0xec,0x0d }, { 0xc1,0xe3,0xd0,0x77 }, - { 0xb3,0x16,0x6c,0x2b }, { 0x70,0xb9,0x99,0xa9 }, - { 0x94,0x48,0xfa,0x11 }, { 0xe9,0x64,0x22,0x47 }, - { 0xfc,0x8c,0xc4,0xa8 }, { 0xf0,0x3f,0x1a,0xa0 }, - { 0x7d,0x2c,0xd8,0x56 }, { 0x33,0x90,0xef,0x22 }, - { 0x49,0x4e,0xc7,0x87 }, { 0x38,0xd1,0xc1,0xd9 }, - { 0xca,0xa2,0xfe,0x8c }, { 0xd4,0x0b,0x36,0x98 }, - { 0xf5,0x81,0xcf,0xa6 }, { 0x7a,0xde,0x28,0xa5 }, - { 0xb7,0x8e,0x26,0xda }, { 0xad,0xbf,0xa4,0x3f }, - { 0x3a,0x9d,0xe4,0x2c }, { 0x78,0x92,0x0d,0x50 }, - { 0x5f,0xcc,0x9b,0x6a }, { 0x7e,0x46,0x62,0x54 }, - { 0x8d,0x13,0xc2,0xf6 }, { 0xd8,0xb8,0xe8,0x90 }, - { 0x39,0xf7,0x5e,0x2e }, { 0xc3,0xaf,0xf5,0x82 }, - { 0x5d,0x80,0xbe,0x9f }, { 0xd0,0x93,0x7c,0x69 }, - { 0xd5,0x2d,0xa9,0x6f }, { 0x25,0x12,0xb3,0xcf }, - { 0xac,0x99,0x3b,0xc8 }, { 0x18,0x7d,0xa7,0x10 }, - { 0x9c,0x63,0x6e,0xe8 }, { 0x3b,0xbb,0x7b,0xdb }, - { 0x26,0x78,0x09,0xcd }, { 0x59,0x18,0xf4,0x6e }, - { 0x9a,0xb7,0x01,0xec }, { 0x4f,0x9a,0xa8,0x83 }, - { 0x95,0x6e,0x65,0xe6 }, { 0xff,0xe6,0x7e,0xaa }, - { 0xbc,0xcf,0x08,0x21 }, { 0x15,0xe8,0xe6,0xef }, - { 0xe7,0x9b,0xd9,0xba }, { 0x6f,0x36,0xce,0x4a }, - { 0x9f,0x09,0xd4,0xea }, { 0xb0,0x7c,0xd6,0x29 }, - { 0xa4,0xb2,0xaf,0x31 }, { 0x3f,0x23,0x31,0x2a }, - { 0xa5,0x94,0x30,0xc6 }, { 0xa2,0x66,0xc0,0x35 }, - { 0x4e,0xbc,0x37,0x74 }, { 0x82,0xca,0xa6,0xfc }, - { 0x90,0xd0,0xb0,0xe0 }, { 0xa7,0xd8,0x15,0x33 }, - { 0x04,0x98,0x4a,0xf1 }, { 0xec,0xda,0xf7,0x41 }, - { 0xcd,0x50,0x0e,0x7f }, { 0x91,0xf6,0x2f,0x17 }, - { 0x4d,0xd6,0x8d,0x76 }, { 0xef,0xb0,0x4d,0x43 }, - { 0xaa,0x4d,0x54,0xcc }, { 0x96,0x04,0xdf,0xe4 }, - { 0xd1,0xb5,0xe3,0x9e }, { 0x6a,0x88,0x1b,0x4c }, - { 0x2c,0x1f,0xb8,0xc1 }, { 0x65,0x51,0x7f,0x46 }, - { 0x5e,0xea,0x04,0x9d }, { 0x8c,0x35,0x5d,0x01 }, - { 0x87,0x74,0x73,0xfa }, { 0x0b,0x41,0x2e,0xfb }, - { 0x67,0x1d,0x5a,0xb3 }, { 0xdb,0xd2,0x52,0x92 }, - { 0x10,0x56,0x33,0xe9 }, { 0xd6,0x47,0x13,0x6d }, - { 0xd7,0x61,0x8c,0x9a }, { 0xa1,0x0c,0x7a,0x37 }, - { 0xf8,0x14,0x8e,0x59 }, { 0x13,0x3c,0x89,0xeb }, - { 0xa9,0x27,0xee,0xce }, { 0x61,0xc9,0x35,0xb7 }, - { 0x1c,0xe5,0xed,0xe1 }, { 0x47,0xb1,0x3c,0x7a }, - { 0xd2,0xdf,0x59,0x9c }, { 0xf2,0x73,0x3f,0x55 }, - { 0x14,0xce,0x79,0x18 }, { 0xc7,0x37,0xbf,0x73 }, - { 0xf7,0xcd,0xea,0x53 }, { 0xfd,0xaa,0x5b,0x5f }, - { 0x3d,0x6f,0x14,0xdf }, { 0x44,0xdb,0x86,0x78 }, - { 0xaf,0xf3,0x81,0xca }, { 0x68,0xc4,0x3e,0xb9 }, - { 0x24,0x34,0x2c,0x38 }, { 0xa3,0x40,0x5f,0xc2 }, - { 0x1d,0xc3,0x72,0x16 }, { 0xe2,0x25,0x0c,0xbc }, - { 0x3c,0x49,0x8b,0x28 }, { 0x0d,0x95,0x41,0xff }, - { 0xa8,0x01,0x71,0x39 }, { 0x0c,0xb3,0xde,0x08 }, - { 0xb4,0xe4,0x9c,0xd8 }, { 0x56,0xc1,0x90,0x64 }, - { 0xcb,0x84,0x61,0x7b }, { 0x32,0xb6,0x70,0xd5 }, - { 0x6c,0x5c,0x74,0x48 }, { 0xb8,0x57,0x42,0xd0 } - }; - -static const unsigned char S5[256] = - { - 0x52,0x09,0x6a,0xd5,0x30,0x36,0xa5,0x38, - 0xbf,0x40,0xa3,0x9e,0x81,0xf3,0xd7,0xfb, - 0x7c,0xe3,0x39,0x82,0x9b,0x2f,0xff,0x87, - 0x34,0x8e,0x43,0x44,0xc4,0xde,0xe9,0xcb, - 0x54,0x7b,0x94,0x32,0xa6,0xc2,0x23,0x3d, - 0xee,0x4c,0x95,0x0b,0x42,0xfa,0xc3,0x4e, - 0x08,0x2e,0xa1,0x66,0x28,0xd9,0x24,0xb2, - 0x76,0x5b,0xa2,0x49,0x6d,0x8b,0xd1,0x25, - 0x72,0xf8,0xf6,0x64,0x86,0x68,0x98,0x16, - 0xd4,0xa4,0x5c,0xcc,0x5d,0x65,0xb6,0x92, - 0x6c,0x70,0x48,0x50,0xfd,0xed,0xb9,0xda, - 0x5e,0x15,0x46,0x57,0xa7,0x8d,0x9d,0x84, - 0x90,0xd8,0xab,0x00,0x8c,0xbc,0xd3,0x0a, - 0xf7,0xe4,0x58,0x05,0xb8,0xb3,0x45,0x06, - 0xd0,0x2c,0x1e,0x8f,0xca,0x3f,0x0f,0x02, - 0xc1,0xaf,0xbd,0x03,0x01,0x13,0x8a,0x6b, - 0x3a,0x91,0x11,0x41,0x4f,0x67,0xdc,0xea, - 0x97,0xf2,0xcf,0xce,0xf0,0xb4,0xe6,0x73, - 0x96,0xac,0x74,0x22,0xe7,0xad,0x35,0x85, - 0xe2,0xf9,0x37,0xe8,0x1c,0x75,0xdf,0x6e, - 0x47,0xf1,0x1a,0x71,0x1d,0x29,0xc5,0x89, - 0x6f,0xb7,0x62,0x0e,0xaa,0x18,0xbe,0x1b, - 0xfc,0x56,0x3e,0x4b,0xc6,0xd2,0x79,0x20, - 0x9a,0xdb,0xc0,0xfe,0x78,0xcd,0x5a,0xf4, - 0x1f,0xdd,0xa8,0x33,0x88,0x07,0xc7,0x31, - 0xb1,0x12,0x10,0x59,0x27,0x80,0xec,0x5f, - 0x60,0x51,0x7f,0xa9,0x19,0xb5,0x4a,0x0d, - 0x2d,0xe5,0x7a,0x9f,0x93,0xc9,0x9c,0xef, - 0xa0,0xe0,0x3b,0x4d,0xae,0x2a,0xf5,0xb0, - 0xc8,0xeb,0xbb,0x3c,0x83,0x53,0x99,0x61, - 0x17,0x2b,0x04,0x7e,0xba,0x77,0xd6,0x26, - 0xe1,0x69,0x14,0x63,0x55,0x21,0x0c,0x7d - }; - -static const unsigned char U1[256][4] = - { - { 0x00,0x00,0x00,0x00 }, { 0x0e,0x09,0x0d,0x0b }, - { 0x1c,0x12,0x1a,0x16 }, { 0x12,0x1b,0x17,0x1d }, - { 0x38,0x24,0x34,0x2c }, { 0x36,0x2d,0x39,0x27 }, - { 0x24,0x36,0x2e,0x3a }, { 0x2a,0x3f,0x23,0x31 }, - { 0x70,0x48,0x68,0x58 }, { 0x7e,0x41,0x65,0x53 }, - { 0x6c,0x5a,0x72,0x4e }, { 0x62,0x53,0x7f,0x45 }, - { 0x48,0x6c,0x5c,0x74 }, { 0x46,0x65,0x51,0x7f }, - { 0x54,0x7e,0x46,0x62 }, { 0x5a,0x77,0x4b,0x69 }, - { 0xe0,0x90,0xd0,0xb0 }, { 0xee,0x99,0xdd,0xbb }, - { 0xfc,0x82,0xca,0xa6 }, { 0xf2,0x8b,0xc7,0xad }, - { 0xd8,0xb4,0xe4,0x9c }, { 0xd6,0xbd,0xe9,0x97 }, - { 0xc4,0xa6,0xfe,0x8a }, { 0xca,0xaf,0xf3,0x81 }, - { 0x90,0xd8,0xb8,0xe8 }, { 0x9e,0xd1,0xb5,0xe3 }, - { 0x8c,0xca,0xa2,0xfe }, { 0x82,0xc3,0xaf,0xf5 }, - { 0xa8,0xfc,0x8c,0xc4 }, { 0xa6,0xf5,0x81,0xcf }, - { 0xb4,0xee,0x96,0xd2 }, { 0xba,0xe7,0x9b,0xd9 }, - { 0xdb,0x3b,0xbb,0x7b }, { 0xd5,0x32,0xb6,0x70 }, - { 0xc7,0x29,0xa1,0x6d }, { 0xc9,0x20,0xac,0x66 }, - { 0xe3,0x1f,0x8f,0x57 }, { 0xed,0x16,0x82,0x5c }, - { 0xff,0x0d,0x95,0x41 }, { 0xf1,0x04,0x98,0x4a }, - { 0xab,0x73,0xd3,0x23 }, { 0xa5,0x7a,0xde,0x28 }, - { 0xb7,0x61,0xc9,0x35 }, { 0xb9,0x68,0xc4,0x3e }, - { 0x93,0x57,0xe7,0x0f }, { 0x9d,0x5e,0xea,0x04 }, - { 0x8f,0x45,0xfd,0x19 }, { 0x81,0x4c,0xf0,0x12 }, - { 0x3b,0xab,0x6b,0xcb }, { 0x35,0xa2,0x66,0xc0 }, - { 0x27,0xb9,0x71,0xdd }, { 0x29,0xb0,0x7c,0xd6 }, - { 0x03,0x8f,0x5f,0xe7 }, { 0x0d,0x86,0x52,0xec }, - { 0x1f,0x9d,0x45,0xf1 }, { 0x11,0x94,0x48,0xfa }, - { 0x4b,0xe3,0x03,0x93 }, { 0x45,0xea,0x0e,0x98 }, - { 0x57,0xf1,0x19,0x85 }, { 0x59,0xf8,0x14,0x8e }, - { 0x73,0xc7,0x37,0xbf }, { 0x7d,0xce,0x3a,0xb4 }, - { 0x6f,0xd5,0x2d,0xa9 }, { 0x61,0xdc,0x20,0xa2 }, - { 0xad,0x76,0x6d,0xf6 }, { 0xa3,0x7f,0x60,0xfd }, - { 0xb1,0x64,0x77,0xe0 }, { 0xbf,0x6d,0x7a,0xeb }, - { 0x95,0x52,0x59,0xda }, { 0x9b,0x5b,0x54,0xd1 }, - { 0x89,0x40,0x43,0xcc }, { 0x87,0x49,0x4e,0xc7 }, - { 0xdd,0x3e,0x05,0xae }, { 0xd3,0x37,0x08,0xa5 }, - { 0xc1,0x2c,0x1f,0xb8 }, { 0xcf,0x25,0x12,0xb3 }, - { 0xe5,0x1a,0x31,0x82 }, { 0xeb,0x13,0x3c,0x89 }, - { 0xf9,0x08,0x2b,0x94 }, { 0xf7,0x01,0x26,0x9f }, - { 0x4d,0xe6,0xbd,0x46 }, { 0x43,0xef,0xb0,0x4d }, - { 0x51,0xf4,0xa7,0x50 }, { 0x5f,0xfd,0xaa,0x5b }, - { 0x75,0xc2,0x89,0x6a }, { 0x7b,0xcb,0x84,0x61 }, - { 0x69,0xd0,0x93,0x7c }, { 0x67,0xd9,0x9e,0x77 }, - { 0x3d,0xae,0xd5,0x1e }, { 0x33,0xa7,0xd8,0x15 }, - { 0x21,0xbc,0xcf,0x08 }, { 0x2f,0xb5,0xc2,0x03 }, - { 0x05,0x8a,0xe1,0x32 }, { 0x0b,0x83,0xec,0x39 }, - { 0x19,0x98,0xfb,0x24 }, { 0x17,0x91,0xf6,0x2f }, - { 0x76,0x4d,0xd6,0x8d }, { 0x78,0x44,0xdb,0x86 }, - { 0x6a,0x5f,0xcc,0x9b }, { 0x64,0x56,0xc1,0x90 }, - { 0x4e,0x69,0xe2,0xa1 }, { 0x40,0x60,0xef,0xaa }, - { 0x52,0x7b,0xf8,0xb7 }, { 0x5c,0x72,0xf5,0xbc }, - { 0x06,0x05,0xbe,0xd5 }, { 0x08,0x0c,0xb3,0xde }, - { 0x1a,0x17,0xa4,0xc3 }, { 0x14,0x1e,0xa9,0xc8 }, - { 0x3e,0x21,0x8a,0xf9 }, { 0x30,0x28,0x87,0xf2 }, - { 0x22,0x33,0x90,0xef }, { 0x2c,0x3a,0x9d,0xe4 }, - { 0x96,0xdd,0x06,0x3d }, { 0x98,0xd4,0x0b,0x36 }, - { 0x8a,0xcf,0x1c,0x2b }, { 0x84,0xc6,0x11,0x20 }, - { 0xae,0xf9,0x32,0x11 }, { 0xa0,0xf0,0x3f,0x1a }, - { 0xb2,0xeb,0x28,0x07 }, { 0xbc,0xe2,0x25,0x0c }, - { 0xe6,0x95,0x6e,0x65 }, { 0xe8,0x9c,0x63,0x6e }, - { 0xfa,0x87,0x74,0x73 }, { 0xf4,0x8e,0x79,0x78 }, - { 0xde,0xb1,0x5a,0x49 }, { 0xd0,0xb8,0x57,0x42 }, - { 0xc2,0xa3,0x40,0x5f }, { 0xcc,0xaa,0x4d,0x54 }, - { 0x41,0xec,0xda,0xf7 }, { 0x4f,0xe5,0xd7,0xfc }, - { 0x5d,0xfe,0xc0,0xe1 }, { 0x53,0xf7,0xcd,0xea }, - { 0x79,0xc8,0xee,0xdb }, { 0x77,0xc1,0xe3,0xd0 }, - { 0x65,0xda,0xf4,0xcd }, { 0x6b,0xd3,0xf9,0xc6 }, - { 0x31,0xa4,0xb2,0xaf }, { 0x3f,0xad,0xbf,0xa4 }, - { 0x2d,0xb6,0xa8,0xb9 }, { 0x23,0xbf,0xa5,0xb2 }, - { 0x09,0x80,0x86,0x83 }, { 0x07,0x89,0x8b,0x88 }, - { 0x15,0x92,0x9c,0x95 }, { 0x1b,0x9b,0x91,0x9e }, - { 0xa1,0x7c,0x0a,0x47 }, { 0xaf,0x75,0x07,0x4c }, - { 0xbd,0x6e,0x10,0x51 }, { 0xb3,0x67,0x1d,0x5a }, - { 0x99,0x58,0x3e,0x6b }, { 0x97,0x51,0x33,0x60 }, - { 0x85,0x4a,0x24,0x7d }, { 0x8b,0x43,0x29,0x76 }, - { 0xd1,0x34,0x62,0x1f }, { 0xdf,0x3d,0x6f,0x14 }, - { 0xcd,0x26,0x78,0x09 }, { 0xc3,0x2f,0x75,0x02 }, - { 0xe9,0x10,0x56,0x33 }, { 0xe7,0x19,0x5b,0x38 }, - { 0xf5,0x02,0x4c,0x25 }, { 0xfb,0x0b,0x41,0x2e }, - { 0x9a,0xd7,0x61,0x8c }, { 0x94,0xde,0x6c,0x87 }, - { 0x86,0xc5,0x7b,0x9a }, { 0x88,0xcc,0x76,0x91 }, - { 0xa2,0xf3,0x55,0xa0 }, { 0xac,0xfa,0x58,0xab }, - { 0xbe,0xe1,0x4f,0xb6 }, { 0xb0,0xe8,0x42,0xbd }, - { 0xea,0x9f,0x09,0xd4 }, { 0xe4,0x96,0x04,0xdf }, - { 0xf6,0x8d,0x13,0xc2 }, { 0xf8,0x84,0x1e,0xc9 }, - { 0xd2,0xbb,0x3d,0xf8 }, { 0xdc,0xb2,0x30,0xf3 }, - { 0xce,0xa9,0x27,0xee }, { 0xc0,0xa0,0x2a,0xe5 }, - { 0x7a,0x47,0xb1,0x3c }, { 0x74,0x4e,0xbc,0x37 }, - { 0x66,0x55,0xab,0x2a }, { 0x68,0x5c,0xa6,0x21 }, - { 0x42,0x63,0x85,0x10 }, { 0x4c,0x6a,0x88,0x1b }, - { 0x5e,0x71,0x9f,0x06 }, { 0x50,0x78,0x92,0x0d }, - { 0x0a,0x0f,0xd9,0x64 }, { 0x04,0x06,0xd4,0x6f }, - { 0x16,0x1d,0xc3,0x72 }, { 0x18,0x14,0xce,0x79 }, - { 0x32,0x2b,0xed,0x48 }, { 0x3c,0x22,0xe0,0x43 }, - { 0x2e,0x39,0xf7,0x5e }, { 0x20,0x30,0xfa,0x55 }, - { 0xec,0x9a,0xb7,0x01 }, { 0xe2,0x93,0xba,0x0a }, - { 0xf0,0x88,0xad,0x17 }, { 0xfe,0x81,0xa0,0x1c }, - { 0xd4,0xbe,0x83,0x2d }, { 0xda,0xb7,0x8e,0x26 }, - { 0xc8,0xac,0x99,0x3b }, { 0xc6,0xa5,0x94,0x30 }, - { 0x9c,0xd2,0xdf,0x59 }, { 0x92,0xdb,0xd2,0x52 }, - { 0x80,0xc0,0xc5,0x4f }, { 0x8e,0xc9,0xc8,0x44 }, - { 0xa4,0xf6,0xeb,0x75 }, { 0xaa,0xff,0xe6,0x7e }, - { 0xb8,0xe4,0xf1,0x63 }, { 0xb6,0xed,0xfc,0x68 }, - { 0x0c,0x0a,0x67,0xb1 }, { 0x02,0x03,0x6a,0xba }, - { 0x10,0x18,0x7d,0xa7 }, { 0x1e,0x11,0x70,0xac }, - { 0x34,0x2e,0x53,0x9d }, { 0x3a,0x27,0x5e,0x96 }, - { 0x28,0x3c,0x49,0x8b }, { 0x26,0x35,0x44,0x80 }, - { 0x7c,0x42,0x0f,0xe9 }, { 0x72,0x4b,0x02,0xe2 }, - { 0x60,0x50,0x15,0xff }, { 0x6e,0x59,0x18,0xf4 }, - { 0x44,0x66,0x3b,0xc5 }, { 0x4a,0x6f,0x36,0xce }, - { 0x58,0x74,0x21,0xd3 }, { 0x56,0x7d,0x2c,0xd8 }, - { 0x37,0xa1,0x0c,0x7a }, { 0x39,0xa8,0x01,0x71 }, - { 0x2b,0xb3,0x16,0x6c }, { 0x25,0xba,0x1b,0x67 }, - { 0x0f,0x85,0x38,0x56 }, { 0x01,0x8c,0x35,0x5d }, - { 0x13,0x97,0x22,0x40 }, { 0x1d,0x9e,0x2f,0x4b }, - { 0x47,0xe9,0x64,0x22 }, { 0x49,0xe0,0x69,0x29 }, - { 0x5b,0xfb,0x7e,0x34 }, { 0x55,0xf2,0x73,0x3f }, - { 0x7f,0xcd,0x50,0x0e }, { 0x71,0xc4,0x5d,0x05 }, - { 0x63,0xdf,0x4a,0x18 }, { 0x6d,0xd6,0x47,0x13 }, - { 0xd7,0x31,0xdc,0xca }, { 0xd9,0x38,0xd1,0xc1 }, - { 0xcb,0x23,0xc6,0xdc }, { 0xc5,0x2a,0xcb,0xd7 }, - { 0xef,0x15,0xe8,0xe6 }, { 0xe1,0x1c,0xe5,0xed }, - { 0xf3,0x07,0xf2,0xf0 }, { 0xfd,0x0e,0xff,0xfb }, - { 0xa7,0x79,0xb4,0x92 }, { 0xa9,0x70,0xb9,0x99 }, - { 0xbb,0x6b,0xae,0x84 }, { 0xb5,0x62,0xa3,0x8f }, - { 0x9f,0x5d,0x80,0xbe }, { 0x91,0x54,0x8d,0xb5 }, - { 0x83,0x4f,0x9a,0xa8 }, { 0x8d,0x46,0x97,0xa3 } - }; - -static const unsigned char U2[256][4] = - { - { 0x00,0x00,0x00,0x00 }, { 0x0b,0x0e,0x09,0x0d }, - { 0x16,0x1c,0x12,0x1a }, { 0x1d,0x12,0x1b,0x17 }, - { 0x2c,0x38,0x24,0x34 }, { 0x27,0x36,0x2d,0x39 }, - { 0x3a,0x24,0x36,0x2e }, { 0x31,0x2a,0x3f,0x23 }, - { 0x58,0x70,0x48,0x68 }, { 0x53,0x7e,0x41,0x65 }, - { 0x4e,0x6c,0x5a,0x72 }, { 0x45,0x62,0x53,0x7f }, - { 0x74,0x48,0x6c,0x5c }, { 0x7f,0x46,0x65,0x51 }, - { 0x62,0x54,0x7e,0x46 }, { 0x69,0x5a,0x77,0x4b }, - { 0xb0,0xe0,0x90,0xd0 }, { 0xbb,0xee,0x99,0xdd }, - { 0xa6,0xfc,0x82,0xca }, { 0xad,0xf2,0x8b,0xc7 }, - { 0x9c,0xd8,0xb4,0xe4 }, { 0x97,0xd6,0xbd,0xe9 }, - { 0x8a,0xc4,0xa6,0xfe }, { 0x81,0xca,0xaf,0xf3 }, - { 0xe8,0x90,0xd8,0xb8 }, { 0xe3,0x9e,0xd1,0xb5 }, - { 0xfe,0x8c,0xca,0xa2 }, { 0xf5,0x82,0xc3,0xaf }, - { 0xc4,0xa8,0xfc,0x8c }, { 0xcf,0xa6,0xf5,0x81 }, - { 0xd2,0xb4,0xee,0x96 }, { 0xd9,0xba,0xe7,0x9b }, - { 0x7b,0xdb,0x3b,0xbb }, { 0x70,0xd5,0x32,0xb6 }, - { 0x6d,0xc7,0x29,0xa1 }, { 0x66,0xc9,0x20,0xac }, - { 0x57,0xe3,0x1f,0x8f }, { 0x5c,0xed,0x16,0x82 }, - { 0x41,0xff,0x0d,0x95 }, { 0x4a,0xf1,0x04,0x98 }, - { 0x23,0xab,0x73,0xd3 }, { 0x28,0xa5,0x7a,0xde }, - { 0x35,0xb7,0x61,0xc9 }, { 0x3e,0xb9,0x68,0xc4 }, - { 0x0f,0x93,0x57,0xe7 }, { 0x04,0x9d,0x5e,0xea }, - { 0x19,0x8f,0x45,0xfd }, { 0x12,0x81,0x4c,0xf0 }, - { 0xcb,0x3b,0xab,0x6b }, { 0xc0,0x35,0xa2,0x66 }, - { 0xdd,0x27,0xb9,0x71 }, { 0xd6,0x29,0xb0,0x7c }, - { 0xe7,0x03,0x8f,0x5f }, { 0xec,0x0d,0x86,0x52 }, - { 0xf1,0x1f,0x9d,0x45 }, { 0xfa,0x11,0x94,0x48 }, - { 0x93,0x4b,0xe3,0x03 }, { 0x98,0x45,0xea,0x0e }, - { 0x85,0x57,0xf1,0x19 }, { 0x8e,0x59,0xf8,0x14 }, - { 0xbf,0x73,0xc7,0x37 }, { 0xb4,0x7d,0xce,0x3a }, - { 0xa9,0x6f,0xd5,0x2d }, { 0xa2,0x61,0xdc,0x20 }, - { 0xf6,0xad,0x76,0x6d }, { 0xfd,0xa3,0x7f,0x60 }, - { 0xe0,0xb1,0x64,0x77 }, { 0xeb,0xbf,0x6d,0x7a }, - { 0xda,0x95,0x52,0x59 }, { 0xd1,0x9b,0x5b,0x54 }, - { 0xcc,0x89,0x40,0x43 }, { 0xc7,0x87,0x49,0x4e }, - { 0xae,0xdd,0x3e,0x05 }, { 0xa5,0xd3,0x37,0x08 }, - { 0xb8,0xc1,0x2c,0x1f }, { 0xb3,0xcf,0x25,0x12 }, - { 0x82,0xe5,0x1a,0x31 }, { 0x89,0xeb,0x13,0x3c }, - { 0x94,0xf9,0x08,0x2b }, { 0x9f,0xf7,0x01,0x26 }, - { 0x46,0x4d,0xe6,0xbd }, { 0x4d,0x43,0xef,0xb0 }, - { 0x50,0x51,0xf4,0xa7 }, { 0x5b,0x5f,0xfd,0xaa }, - { 0x6a,0x75,0xc2,0x89 }, { 0x61,0x7b,0xcb,0x84 }, - { 0x7c,0x69,0xd0,0x93 }, { 0x77,0x67,0xd9,0x9e }, - { 0x1e,0x3d,0xae,0xd5 }, { 0x15,0x33,0xa7,0xd8 }, - { 0x08,0x21,0xbc,0xcf }, { 0x03,0x2f,0xb5,0xc2 }, - { 0x32,0x05,0x8a,0xe1 }, { 0x39,0x0b,0x83,0xec }, - { 0x24,0x19,0x98,0xfb }, { 0x2f,0x17,0x91,0xf6 }, - { 0x8d,0x76,0x4d,0xd6 }, { 0x86,0x78,0x44,0xdb }, - { 0x9b,0x6a,0x5f,0xcc }, { 0x90,0x64,0x56,0xc1 }, - { 0xa1,0x4e,0x69,0xe2 }, { 0xaa,0x40,0x60,0xef }, - { 0xb7,0x52,0x7b,0xf8 }, { 0xbc,0x5c,0x72,0xf5 }, - { 0xd5,0x06,0x05,0xbe }, { 0xde,0x08,0x0c,0xb3 }, - { 0xc3,0x1a,0x17,0xa4 }, { 0xc8,0x14,0x1e,0xa9 }, - { 0xf9,0x3e,0x21,0x8a }, { 0xf2,0x30,0x28,0x87 }, - { 0xef,0x22,0x33,0x90 }, { 0xe4,0x2c,0x3a,0x9d }, - { 0x3d,0x96,0xdd,0x06 }, { 0x36,0x98,0xd4,0x0b }, - { 0x2b,0x8a,0xcf,0x1c }, { 0x20,0x84,0xc6,0x11 }, - { 0x11,0xae,0xf9,0x32 }, { 0x1a,0xa0,0xf0,0x3f }, - { 0x07,0xb2,0xeb,0x28 }, { 0x0c,0xbc,0xe2,0x25 }, - { 0x65,0xe6,0x95,0x6e }, { 0x6e,0xe8,0x9c,0x63 }, - { 0x73,0xfa,0x87,0x74 }, { 0x78,0xf4,0x8e,0x79 }, - { 0x49,0xde,0xb1,0x5a }, { 0x42,0xd0,0xb8,0x57 }, - { 0x5f,0xc2,0xa3,0x40 }, { 0x54,0xcc,0xaa,0x4d }, - { 0xf7,0x41,0xec,0xda }, { 0xfc,0x4f,0xe5,0xd7 }, - { 0xe1,0x5d,0xfe,0xc0 }, { 0xea,0x53,0xf7,0xcd }, - { 0xdb,0x79,0xc8,0xee }, { 0xd0,0x77,0xc1,0xe3 }, - { 0xcd,0x65,0xda,0xf4 }, { 0xc6,0x6b,0xd3,0xf9 }, - { 0xaf,0x31,0xa4,0xb2 }, { 0xa4,0x3f,0xad,0xbf }, - { 0xb9,0x2d,0xb6,0xa8 }, { 0xb2,0x23,0xbf,0xa5 }, - { 0x83,0x09,0x80,0x86 }, { 0x88,0x07,0x89,0x8b }, - { 0x95,0x15,0x92,0x9c }, { 0x9e,0x1b,0x9b,0x91 }, - { 0x47,0xa1,0x7c,0x0a }, { 0x4c,0xaf,0x75,0x07 }, - { 0x51,0xbd,0x6e,0x10 }, { 0x5a,0xb3,0x67,0x1d }, - { 0x6b,0x99,0x58,0x3e }, { 0x60,0x97,0x51,0x33 }, - { 0x7d,0x85,0x4a,0x24 }, { 0x76,0x8b,0x43,0x29 }, - { 0x1f,0xd1,0x34,0x62 }, { 0x14,0xdf,0x3d,0x6f }, - { 0x09,0xcd,0x26,0x78 }, { 0x02,0xc3,0x2f,0x75 }, - { 0x33,0xe9,0x10,0x56 }, { 0x38,0xe7,0x19,0x5b }, - { 0x25,0xf5,0x02,0x4c }, { 0x2e,0xfb,0x0b,0x41 }, - { 0x8c,0x9a,0xd7,0x61 }, { 0x87,0x94,0xde,0x6c }, - { 0x9a,0x86,0xc5,0x7b }, { 0x91,0x88,0xcc,0x76 }, - { 0xa0,0xa2,0xf3,0x55 }, { 0xab,0xac,0xfa,0x58 }, - { 0xb6,0xbe,0xe1,0x4f }, { 0xbd,0xb0,0xe8,0x42 }, - { 0xd4,0xea,0x9f,0x09 }, { 0xdf,0xe4,0x96,0x04 }, - { 0xc2,0xf6,0x8d,0x13 }, { 0xc9,0xf8,0x84,0x1e }, - { 0xf8,0xd2,0xbb,0x3d }, { 0xf3,0xdc,0xb2,0x30 }, - { 0xee,0xce,0xa9,0x27 }, { 0xe5,0xc0,0xa0,0x2a }, - { 0x3c,0x7a,0x47,0xb1 }, { 0x37,0x74,0x4e,0xbc }, - { 0x2a,0x66,0x55,0xab }, { 0x21,0x68,0x5c,0xa6 }, - { 0x10,0x42,0x63,0x85 }, { 0x1b,0x4c,0x6a,0x88 }, - { 0x06,0x5e,0x71,0x9f }, { 0x0d,0x50,0x78,0x92 }, - { 0x64,0x0a,0x0f,0xd9 }, { 0x6f,0x04,0x06,0xd4 }, - { 0x72,0x16,0x1d,0xc3 }, { 0x79,0x18,0x14,0xce }, - { 0x48,0x32,0x2b,0xed }, { 0x43,0x3c,0x22,0xe0 }, - { 0x5e,0x2e,0x39,0xf7 }, { 0x55,0x20,0x30,0xfa }, - { 0x01,0xec,0x9a,0xb7 }, { 0x0a,0xe2,0x93,0xba }, - { 0x17,0xf0,0x88,0xad }, { 0x1c,0xfe,0x81,0xa0 }, - { 0x2d,0xd4,0xbe,0x83 }, { 0x26,0xda,0xb7,0x8e }, - { 0x3b,0xc8,0xac,0x99 }, { 0x30,0xc6,0xa5,0x94 }, - { 0x59,0x9c,0xd2,0xdf }, { 0x52,0x92,0xdb,0xd2 }, - { 0x4f,0x80,0xc0,0xc5 }, { 0x44,0x8e,0xc9,0xc8 }, - { 0x75,0xa4,0xf6,0xeb }, { 0x7e,0xaa,0xff,0xe6 }, - { 0x63,0xb8,0xe4,0xf1 }, { 0x68,0xb6,0xed,0xfc }, - { 0xb1,0x0c,0x0a,0x67 }, { 0xba,0x02,0x03,0x6a }, - { 0xa7,0x10,0x18,0x7d }, { 0xac,0x1e,0x11,0x70 }, - { 0x9d,0x34,0x2e,0x53 }, { 0x96,0x3a,0x27,0x5e }, - { 0x8b,0x28,0x3c,0x49 }, { 0x80,0x26,0x35,0x44 }, - { 0xe9,0x7c,0x42,0x0f }, { 0xe2,0x72,0x4b,0x02 }, - { 0xff,0x60,0x50,0x15 }, { 0xf4,0x6e,0x59,0x18 }, - { 0xc5,0x44,0x66,0x3b }, { 0xce,0x4a,0x6f,0x36 }, - { 0xd3,0x58,0x74,0x21 }, { 0xd8,0x56,0x7d,0x2c }, - { 0x7a,0x37,0xa1,0x0c }, { 0x71,0x39,0xa8,0x01 }, - { 0x6c,0x2b,0xb3,0x16 }, { 0x67,0x25,0xba,0x1b }, - { 0x56,0x0f,0x85,0x38 }, { 0x5d,0x01,0x8c,0x35 }, - { 0x40,0x13,0x97,0x22 }, { 0x4b,0x1d,0x9e,0x2f }, - { 0x22,0x47,0xe9,0x64 }, { 0x29,0x49,0xe0,0x69 }, - { 0x34,0x5b,0xfb,0x7e }, { 0x3f,0x55,0xf2,0x73 }, - { 0x0e,0x7f,0xcd,0x50 }, { 0x05,0x71,0xc4,0x5d }, - { 0x18,0x63,0xdf,0x4a }, { 0x13,0x6d,0xd6,0x47 }, - { 0xca,0xd7,0x31,0xdc }, { 0xc1,0xd9,0x38,0xd1 }, - { 0xdc,0xcb,0x23,0xc6 }, { 0xd7,0xc5,0x2a,0xcb }, - { 0xe6,0xef,0x15,0xe8 }, { 0xed,0xe1,0x1c,0xe5 }, - { 0xf0,0xf3,0x07,0xf2 }, { 0xfb,0xfd,0x0e,0xff }, - { 0x92,0xa7,0x79,0xb4 }, { 0x99,0xa9,0x70,0xb9 }, - { 0x84,0xbb,0x6b,0xae }, { 0x8f,0xb5,0x62,0xa3 }, - { 0xbe,0x9f,0x5d,0x80 }, { 0xb5,0x91,0x54,0x8d }, - { 0xa8,0x83,0x4f,0x9a }, { 0xa3,0x8d,0x46,0x97 } - }; - -static const unsigned char U3[256][4] = - { - { 0x00,0x00,0x00,0x00 }, { 0x0d,0x0b,0x0e,0x09 }, - { 0x1a,0x16,0x1c,0x12 }, { 0x17,0x1d,0x12,0x1b }, - { 0x34,0x2c,0x38,0x24 }, { 0x39,0x27,0x36,0x2d }, - { 0x2e,0x3a,0x24,0x36 }, { 0x23,0x31,0x2a,0x3f }, - { 0x68,0x58,0x70,0x48 }, { 0x65,0x53,0x7e,0x41 }, - { 0x72,0x4e,0x6c,0x5a }, { 0x7f,0x45,0x62,0x53 }, - { 0x5c,0x74,0x48,0x6c }, { 0x51,0x7f,0x46,0x65 }, - { 0x46,0x62,0x54,0x7e }, { 0x4b,0x69,0x5a,0x77 }, - { 0xd0,0xb0,0xe0,0x90 }, { 0xdd,0xbb,0xee,0x99 }, - { 0xca,0xa6,0xfc,0x82 }, { 0xc7,0xad,0xf2,0x8b }, - { 0xe4,0x9c,0xd8,0xb4 }, { 0xe9,0x97,0xd6,0xbd }, - { 0xfe,0x8a,0xc4,0xa6 }, { 0xf3,0x81,0xca,0xaf }, - { 0xb8,0xe8,0x90,0xd8 }, { 0xb5,0xe3,0x9e,0xd1 }, - { 0xa2,0xfe,0x8c,0xca }, { 0xaf,0xf5,0x82,0xc3 }, - { 0x8c,0xc4,0xa8,0xfc }, { 0x81,0xcf,0xa6,0xf5 }, - { 0x96,0xd2,0xb4,0xee }, { 0x9b,0xd9,0xba,0xe7 }, - { 0xbb,0x7b,0xdb,0x3b }, { 0xb6,0x70,0xd5,0x32 }, - { 0xa1,0x6d,0xc7,0x29 }, { 0xac,0x66,0xc9,0x20 }, - { 0x8f,0x57,0xe3,0x1f }, { 0x82,0x5c,0xed,0x16 }, - { 0x95,0x41,0xff,0x0d }, { 0x98,0x4a,0xf1,0x04 }, - { 0xd3,0x23,0xab,0x73 }, { 0xde,0x28,0xa5,0x7a }, - { 0xc9,0x35,0xb7,0x61 }, { 0xc4,0x3e,0xb9,0x68 }, - { 0xe7,0x0f,0x93,0x57 }, { 0xea,0x04,0x9d,0x5e }, - { 0xfd,0x19,0x8f,0x45 }, { 0xf0,0x12,0x81,0x4c }, - { 0x6b,0xcb,0x3b,0xab }, { 0x66,0xc0,0x35,0xa2 }, - { 0x71,0xdd,0x27,0xb9 }, { 0x7c,0xd6,0x29,0xb0 }, - { 0x5f,0xe7,0x03,0x8f }, { 0x52,0xec,0x0d,0x86 }, - { 0x45,0xf1,0x1f,0x9d }, { 0x48,0xfa,0x11,0x94 }, - { 0x03,0x93,0x4b,0xe3 }, { 0x0e,0x98,0x45,0xea }, - { 0x19,0x85,0x57,0xf1 }, { 0x14,0x8e,0x59,0xf8 }, - { 0x37,0xbf,0x73,0xc7 }, { 0x3a,0xb4,0x7d,0xce }, - { 0x2d,0xa9,0x6f,0xd5 }, { 0x20,0xa2,0x61,0xdc }, - { 0x6d,0xf6,0xad,0x76 }, { 0x60,0xfd,0xa3,0x7f }, - { 0x77,0xe0,0xb1,0x64 }, { 0x7a,0xeb,0xbf,0x6d }, - { 0x59,0xda,0x95,0x52 }, { 0x54,0xd1,0x9b,0x5b }, - { 0x43,0xcc,0x89,0x40 }, { 0x4e,0xc7,0x87,0x49 }, - { 0x05,0xae,0xdd,0x3e }, { 0x08,0xa5,0xd3,0x37 }, - { 0x1f,0xb8,0xc1,0x2c }, { 0x12,0xb3,0xcf,0x25 }, - { 0x31,0x82,0xe5,0x1a }, { 0x3c,0x89,0xeb,0x13 }, - { 0x2b,0x94,0xf9,0x08 }, { 0x26,0x9f,0xf7,0x01 }, - { 0xbd,0x46,0x4d,0xe6 }, { 0xb0,0x4d,0x43,0xef }, - { 0xa7,0x50,0x51,0xf4 }, { 0xaa,0x5b,0x5f,0xfd }, - { 0x89,0x6a,0x75,0xc2 }, { 0x84,0x61,0x7b,0xcb }, - { 0x93,0x7c,0x69,0xd0 }, { 0x9e,0x77,0x67,0xd9 }, - { 0xd5,0x1e,0x3d,0xae }, { 0xd8,0x15,0x33,0xa7 }, - { 0xcf,0x08,0x21,0xbc }, { 0xc2,0x03,0x2f,0xb5 }, - { 0xe1,0x32,0x05,0x8a }, { 0xec,0x39,0x0b,0x83 }, - { 0xfb,0x24,0x19,0x98 }, { 0xf6,0x2f,0x17,0x91 }, - { 0xd6,0x8d,0x76,0x4d }, { 0xdb,0x86,0x78,0x44 }, - { 0xcc,0x9b,0x6a,0x5f }, { 0xc1,0x90,0x64,0x56 }, - { 0xe2,0xa1,0x4e,0x69 }, { 0xef,0xaa,0x40,0x60 }, - { 0xf8,0xb7,0x52,0x7b }, { 0xf5,0xbc,0x5c,0x72 }, - { 0xbe,0xd5,0x06,0x05 }, { 0xb3,0xde,0x08,0x0c }, - { 0xa4,0xc3,0x1a,0x17 }, { 0xa9,0xc8,0x14,0x1e }, - { 0x8a,0xf9,0x3e,0x21 }, { 0x87,0xf2,0x30,0x28 }, - { 0x90,0xef,0x22,0x33 }, { 0x9d,0xe4,0x2c,0x3a }, - { 0x06,0x3d,0x96,0xdd }, { 0x0b,0x36,0x98,0xd4 }, - { 0x1c,0x2b,0x8a,0xcf }, { 0x11,0x20,0x84,0xc6 }, - { 0x32,0x11,0xae,0xf9 }, { 0x3f,0x1a,0xa0,0xf0 }, - { 0x28,0x07,0xb2,0xeb }, { 0x25,0x0c,0xbc,0xe2 }, - { 0x6e,0x65,0xe6,0x95 }, { 0x63,0x6e,0xe8,0x9c }, - { 0x74,0x73,0xfa,0x87 }, { 0x79,0x78,0xf4,0x8e }, - { 0x5a,0x49,0xde,0xb1 }, { 0x57,0x42,0xd0,0xb8 }, - { 0x40,0x5f,0xc2,0xa3 }, { 0x4d,0x54,0xcc,0xaa }, - { 0xda,0xf7,0x41,0xec }, { 0xd7,0xfc,0x4f,0xe5 }, - { 0xc0,0xe1,0x5d,0xfe }, { 0xcd,0xea,0x53,0xf7 }, - { 0xee,0xdb,0x79,0xc8 }, { 0xe3,0xd0,0x77,0xc1 }, - { 0xf4,0xcd,0x65,0xda }, { 0xf9,0xc6,0x6b,0xd3 }, - { 0xb2,0xaf,0x31,0xa4 }, { 0xbf,0xa4,0x3f,0xad }, - { 0xa8,0xb9,0x2d,0xb6 }, { 0xa5,0xb2,0x23,0xbf }, - { 0x86,0x83,0x09,0x80 }, { 0x8b,0x88,0x07,0x89 }, - { 0x9c,0x95,0x15,0x92 }, { 0x91,0x9e,0x1b,0x9b }, - { 0x0a,0x47,0xa1,0x7c }, { 0x07,0x4c,0xaf,0x75 }, - { 0x10,0x51,0xbd,0x6e }, { 0x1d,0x5a,0xb3,0x67 }, - { 0x3e,0x6b,0x99,0x58 }, { 0x33,0x60,0x97,0x51 }, - { 0x24,0x7d,0x85,0x4a }, { 0x29,0x76,0x8b,0x43 }, - { 0x62,0x1f,0xd1,0x34 }, { 0x6f,0x14,0xdf,0x3d }, - { 0x78,0x09,0xcd,0x26 }, { 0x75,0x02,0xc3,0x2f }, - { 0x56,0x33,0xe9,0x10 }, { 0x5b,0x38,0xe7,0x19 }, - { 0x4c,0x25,0xf5,0x02 }, { 0x41,0x2e,0xfb,0x0b }, - { 0x61,0x8c,0x9a,0xd7 }, { 0x6c,0x87,0x94,0xde }, - { 0x7b,0x9a,0x86,0xc5 }, { 0x76,0x91,0x88,0xcc }, - { 0x55,0xa0,0xa2,0xf3 }, { 0x58,0xab,0xac,0xfa }, - { 0x4f,0xb6,0xbe,0xe1 }, { 0x42,0xbd,0xb0,0xe8 }, - { 0x09,0xd4,0xea,0x9f }, { 0x04,0xdf,0xe4,0x96 }, - { 0x13,0xc2,0xf6,0x8d }, { 0x1e,0xc9,0xf8,0x84 }, - { 0x3d,0xf8,0xd2,0xbb }, { 0x30,0xf3,0xdc,0xb2 }, - { 0x27,0xee,0xce,0xa9 }, { 0x2a,0xe5,0xc0,0xa0 }, - { 0xb1,0x3c,0x7a,0x47 }, { 0xbc,0x37,0x74,0x4e }, - { 0xab,0x2a,0x66,0x55 }, { 0xa6,0x21,0x68,0x5c }, - { 0x85,0x10,0x42,0x63 }, { 0x88,0x1b,0x4c,0x6a }, - { 0x9f,0x06,0x5e,0x71 }, { 0x92,0x0d,0x50,0x78 }, - { 0xd9,0x64,0x0a,0x0f }, { 0xd4,0x6f,0x04,0x06 }, - { 0xc3,0x72,0x16,0x1d }, { 0xce,0x79,0x18,0x14 }, - { 0xed,0x48,0x32,0x2b }, { 0xe0,0x43,0x3c,0x22 }, - { 0xf7,0x5e,0x2e,0x39 }, { 0xfa,0x55,0x20,0x30 }, - { 0xb7,0x01,0xec,0x9a }, { 0xba,0x0a,0xe2,0x93 }, - { 0xad,0x17,0xf0,0x88 }, { 0xa0,0x1c,0xfe,0x81 }, - { 0x83,0x2d,0xd4,0xbe }, { 0x8e,0x26,0xda,0xb7 }, - { 0x99,0x3b,0xc8,0xac }, { 0x94,0x30,0xc6,0xa5 }, - { 0xdf,0x59,0x9c,0xd2 }, { 0xd2,0x52,0x92,0xdb }, - { 0xc5,0x4f,0x80,0xc0 }, { 0xc8,0x44,0x8e,0xc9 }, - { 0xeb,0x75,0xa4,0xf6 }, { 0xe6,0x7e,0xaa,0xff }, - { 0xf1,0x63,0xb8,0xe4 }, { 0xfc,0x68,0xb6,0xed }, - { 0x67,0xb1,0x0c,0x0a }, { 0x6a,0xba,0x02,0x03 }, - { 0x7d,0xa7,0x10,0x18 }, { 0x70,0xac,0x1e,0x11 }, - { 0x53,0x9d,0x34,0x2e }, { 0x5e,0x96,0x3a,0x27 }, - { 0x49,0x8b,0x28,0x3c }, { 0x44,0x80,0x26,0x35 }, - { 0x0f,0xe9,0x7c,0x42 }, { 0x02,0xe2,0x72,0x4b }, - { 0x15,0xff,0x60,0x50 }, { 0x18,0xf4,0x6e,0x59 }, - { 0x3b,0xc5,0x44,0x66 }, { 0x36,0xce,0x4a,0x6f }, - { 0x21,0xd3,0x58,0x74 }, { 0x2c,0xd8,0x56,0x7d }, - { 0x0c,0x7a,0x37,0xa1 }, { 0x01,0x71,0x39,0xa8 }, - { 0x16,0x6c,0x2b,0xb3 }, { 0x1b,0x67,0x25,0xba }, - { 0x38,0x56,0x0f,0x85 }, { 0x35,0x5d,0x01,0x8c }, - { 0x22,0x40,0x13,0x97 }, { 0x2f,0x4b,0x1d,0x9e }, - { 0x64,0x22,0x47,0xe9 }, { 0x69,0x29,0x49,0xe0 }, - { 0x7e,0x34,0x5b,0xfb }, { 0x73,0x3f,0x55,0xf2 }, - { 0x50,0x0e,0x7f,0xcd }, { 0x5d,0x05,0x71,0xc4 }, - { 0x4a,0x18,0x63,0xdf }, { 0x47,0x13,0x6d,0xd6 }, - { 0xdc,0xca,0xd7,0x31 }, { 0xd1,0xc1,0xd9,0x38 }, - { 0xc6,0xdc,0xcb,0x23 }, { 0xcb,0xd7,0xc5,0x2a }, - { 0xe8,0xe6,0xef,0x15 }, { 0xe5,0xed,0xe1,0x1c }, - { 0xf2,0xf0,0xf3,0x07 }, { 0xff,0xfb,0xfd,0x0e }, - { 0xb4,0x92,0xa7,0x79 }, { 0xb9,0x99,0xa9,0x70 }, - { 0xae,0x84,0xbb,0x6b }, { 0xa3,0x8f,0xb5,0x62 }, - { 0x80,0xbe,0x9f,0x5d }, { 0x8d,0xb5,0x91,0x54 }, - { 0x9a,0xa8,0x83,0x4f }, { 0x97,0xa3,0x8d,0x46 } - }; - -static const unsigned char U4[256][4] = - { - { 0x00,0x00,0x00,0x00 }, { 0x09,0x0d,0x0b,0x0e }, - { 0x12,0x1a,0x16,0x1c }, { 0x1b,0x17,0x1d,0x12 }, - { 0x24,0x34,0x2c,0x38 }, { 0x2d,0x39,0x27,0x36 }, - { 0x36,0x2e,0x3a,0x24 }, { 0x3f,0x23,0x31,0x2a }, - { 0x48,0x68,0x58,0x70 }, { 0x41,0x65,0x53,0x7e }, - { 0x5a,0x72,0x4e,0x6c }, { 0x53,0x7f,0x45,0x62 }, - { 0x6c,0x5c,0x74,0x48 }, { 0x65,0x51,0x7f,0x46 }, - { 0x7e,0x46,0x62,0x54 }, { 0x77,0x4b,0x69,0x5a }, - { 0x90,0xd0,0xb0,0xe0 }, { 0x99,0xdd,0xbb,0xee }, - { 0x82,0xca,0xa6,0xfc }, { 0x8b,0xc7,0xad,0xf2 }, - { 0xb4,0xe4,0x9c,0xd8 }, { 0xbd,0xe9,0x97,0xd6 }, - { 0xa6,0xfe,0x8a,0xc4 }, { 0xaf,0xf3,0x81,0xca }, - { 0xd8,0xb8,0xe8,0x90 }, { 0xd1,0xb5,0xe3,0x9e }, - { 0xca,0xa2,0xfe,0x8c }, { 0xc3,0xaf,0xf5,0x82 }, - { 0xfc,0x8c,0xc4,0xa8 }, { 0xf5,0x81,0xcf,0xa6 }, - { 0xee,0x96,0xd2,0xb4 }, { 0xe7,0x9b,0xd9,0xba }, - { 0x3b,0xbb,0x7b,0xdb }, { 0x32,0xb6,0x70,0xd5 }, - { 0x29,0xa1,0x6d,0xc7 }, { 0x20,0xac,0x66,0xc9 }, - { 0x1f,0x8f,0x57,0xe3 }, { 0x16,0x82,0x5c,0xed }, - { 0x0d,0x95,0x41,0xff }, { 0x04,0x98,0x4a,0xf1 }, - { 0x73,0xd3,0x23,0xab }, { 0x7a,0xde,0x28,0xa5 }, - { 0x61,0xc9,0x35,0xb7 }, { 0x68,0xc4,0x3e,0xb9 }, - { 0x57,0xe7,0x0f,0x93 }, { 0x5e,0xea,0x04,0x9d }, - { 0x45,0xfd,0x19,0x8f }, { 0x4c,0xf0,0x12,0x81 }, - { 0xab,0x6b,0xcb,0x3b }, { 0xa2,0x66,0xc0,0x35 }, - { 0xb9,0x71,0xdd,0x27 }, { 0xb0,0x7c,0xd6,0x29 }, - { 0x8f,0x5f,0xe7,0x03 }, { 0x86,0x52,0xec,0x0d }, - { 0x9d,0x45,0xf1,0x1f }, { 0x94,0x48,0xfa,0x11 }, - { 0xe3,0x03,0x93,0x4b }, { 0xea,0x0e,0x98,0x45 }, - { 0xf1,0x19,0x85,0x57 }, { 0xf8,0x14,0x8e,0x59 }, - { 0xc7,0x37,0xbf,0x73 }, { 0xce,0x3a,0xb4,0x7d }, - { 0xd5,0x2d,0xa9,0x6f }, { 0xdc,0x20,0xa2,0x61 }, - { 0x76,0x6d,0xf6,0xad }, { 0x7f,0x60,0xfd,0xa3 }, - { 0x64,0x77,0xe0,0xb1 }, { 0x6d,0x7a,0xeb,0xbf }, - { 0x52,0x59,0xda,0x95 }, { 0x5b,0x54,0xd1,0x9b }, - { 0x40,0x43,0xcc,0x89 }, { 0x49,0x4e,0xc7,0x87 }, - { 0x3e,0x05,0xae,0xdd }, { 0x37,0x08,0xa5,0xd3 }, - { 0x2c,0x1f,0xb8,0xc1 }, { 0x25,0x12,0xb3,0xcf }, - { 0x1a,0x31,0x82,0xe5 }, { 0x13,0x3c,0x89,0xeb }, - { 0x08,0x2b,0x94,0xf9 }, { 0x01,0x26,0x9f,0xf7 }, - { 0xe6,0xbd,0x46,0x4d }, { 0xef,0xb0,0x4d,0x43 }, - { 0xf4,0xa7,0x50,0x51 }, { 0xfd,0xaa,0x5b,0x5f }, - { 0xc2,0x89,0x6a,0x75 }, { 0xcb,0x84,0x61,0x7b }, - { 0xd0,0x93,0x7c,0x69 }, { 0xd9,0x9e,0x77,0x67 }, - { 0xae,0xd5,0x1e,0x3d }, { 0xa7,0xd8,0x15,0x33 }, - { 0xbc,0xcf,0x08,0x21 }, { 0xb5,0xc2,0x03,0x2f }, - { 0x8a,0xe1,0x32,0x05 }, { 0x83,0xec,0x39,0x0b }, - { 0x98,0xfb,0x24,0x19 }, { 0x91,0xf6,0x2f,0x17 }, - { 0x4d,0xd6,0x8d,0x76 }, { 0x44,0xdb,0x86,0x78 }, - { 0x5f,0xcc,0x9b,0x6a }, { 0x56,0xc1,0x90,0x64 }, - { 0x69,0xe2,0xa1,0x4e }, { 0x60,0xef,0xaa,0x40 }, - { 0x7b,0xf8,0xb7,0x52 }, { 0x72,0xf5,0xbc,0x5c }, - { 0x05,0xbe,0xd5,0x06 }, { 0x0c,0xb3,0xde,0x08 }, - { 0x17,0xa4,0xc3,0x1a }, { 0x1e,0xa9,0xc8,0x14 }, - { 0x21,0x8a,0xf9,0x3e }, { 0x28,0x87,0xf2,0x30 }, - { 0x33,0x90,0xef,0x22 }, { 0x3a,0x9d,0xe4,0x2c }, - { 0xdd,0x06,0x3d,0x96 }, { 0xd4,0x0b,0x36,0x98 }, - { 0xcf,0x1c,0x2b,0x8a }, { 0xc6,0x11,0x20,0x84 }, - { 0xf9,0x32,0x11,0xae }, { 0xf0,0x3f,0x1a,0xa0 }, - { 0xeb,0x28,0x07,0xb2 }, { 0xe2,0x25,0x0c,0xbc }, - { 0x95,0x6e,0x65,0xe6 }, { 0x9c,0x63,0x6e,0xe8 }, - { 0x87,0x74,0x73,0xfa }, { 0x8e,0x79,0x78,0xf4 }, - { 0xb1,0x5a,0x49,0xde }, { 0xb8,0x57,0x42,0xd0 }, - { 0xa3,0x40,0x5f,0xc2 }, { 0xaa,0x4d,0x54,0xcc }, - { 0xec,0xda,0xf7,0x41 }, { 0xe5,0xd7,0xfc,0x4f }, - { 0xfe,0xc0,0xe1,0x5d }, { 0xf7,0xcd,0xea,0x53 }, - { 0xc8,0xee,0xdb,0x79 }, { 0xc1,0xe3,0xd0,0x77 }, - { 0xda,0xf4,0xcd,0x65 }, { 0xd3,0xf9,0xc6,0x6b }, - { 0xa4,0xb2,0xaf,0x31 }, { 0xad,0xbf,0xa4,0x3f }, - { 0xb6,0xa8,0xb9,0x2d }, { 0xbf,0xa5,0xb2,0x23 }, - { 0x80,0x86,0x83,0x09 }, { 0x89,0x8b,0x88,0x07 }, - { 0x92,0x9c,0x95,0x15 }, { 0x9b,0x91,0x9e,0x1b }, - { 0x7c,0x0a,0x47,0xa1 }, { 0x75,0x07,0x4c,0xaf }, - { 0x6e,0x10,0x51,0xbd }, { 0x67,0x1d,0x5a,0xb3 }, - { 0x58,0x3e,0x6b,0x99 }, { 0x51,0x33,0x60,0x97 }, - { 0x4a,0x24,0x7d,0x85 }, { 0x43,0x29,0x76,0x8b }, - { 0x34,0x62,0x1f,0xd1 }, { 0x3d,0x6f,0x14,0xdf }, - { 0x26,0x78,0x09,0xcd }, { 0x2f,0x75,0x02,0xc3 }, - { 0x10,0x56,0x33,0xe9 }, { 0x19,0x5b,0x38,0xe7 }, - { 0x02,0x4c,0x25,0xf5 }, { 0x0b,0x41,0x2e,0xfb }, - { 0xd7,0x61,0x8c,0x9a }, { 0xde,0x6c,0x87,0x94 }, - { 0xc5,0x7b,0x9a,0x86 }, { 0xcc,0x76,0x91,0x88 }, - { 0xf3,0x55,0xa0,0xa2 }, { 0xfa,0x58,0xab,0xac }, - { 0xe1,0x4f,0xb6,0xbe }, { 0xe8,0x42,0xbd,0xb0 }, - { 0x9f,0x09,0xd4,0xea }, { 0x96,0x04,0xdf,0xe4 }, - { 0x8d,0x13,0xc2,0xf6 }, { 0x84,0x1e,0xc9,0xf8 }, - { 0xbb,0x3d,0xf8,0xd2 }, { 0xb2,0x30,0xf3,0xdc }, - { 0xa9,0x27,0xee,0xce }, { 0xa0,0x2a,0xe5,0xc0 }, - { 0x47,0xb1,0x3c,0x7a }, { 0x4e,0xbc,0x37,0x74 }, - { 0x55,0xab,0x2a,0x66 }, { 0x5c,0xa6,0x21,0x68 }, - { 0x63,0x85,0x10,0x42 }, { 0x6a,0x88,0x1b,0x4c }, - { 0x71,0x9f,0x06,0x5e }, { 0x78,0x92,0x0d,0x50 }, - { 0x0f,0xd9,0x64,0x0a }, { 0x06,0xd4,0x6f,0x04 }, - { 0x1d,0xc3,0x72,0x16 }, { 0x14,0xce,0x79,0x18 }, - { 0x2b,0xed,0x48,0x32 }, { 0x22,0xe0,0x43,0x3c }, - { 0x39,0xf7,0x5e,0x2e }, { 0x30,0xfa,0x55,0x20 }, - { 0x9a,0xb7,0x01,0xec }, { 0x93,0xba,0x0a,0xe2 }, - { 0x88,0xad,0x17,0xf0 }, { 0x81,0xa0,0x1c,0xfe }, - { 0xbe,0x83,0x2d,0xd4 }, { 0xb7,0x8e,0x26,0xda }, - { 0xac,0x99,0x3b,0xc8 }, { 0xa5,0x94,0x30,0xc6 }, - { 0xd2,0xdf,0x59,0x9c }, { 0xdb,0xd2,0x52,0x92 }, - { 0xc0,0xc5,0x4f,0x80 }, { 0xc9,0xc8,0x44,0x8e }, - { 0xf6,0xeb,0x75,0xa4 }, { 0xff,0xe6,0x7e,0xaa }, - { 0xe4,0xf1,0x63,0xb8 }, { 0xed,0xfc,0x68,0xb6 }, - { 0x0a,0x67,0xb1,0x0c }, { 0x03,0x6a,0xba,0x02 }, - { 0x18,0x7d,0xa7,0x10 }, { 0x11,0x70,0xac,0x1e }, - { 0x2e,0x53,0x9d,0x34 }, { 0x27,0x5e,0x96,0x3a }, - { 0x3c,0x49,0x8b,0x28 }, { 0x35,0x44,0x80,0x26 }, - { 0x42,0x0f,0xe9,0x7c }, { 0x4b,0x02,0xe2,0x72 }, - { 0x50,0x15,0xff,0x60 }, { 0x59,0x18,0xf4,0x6e }, - { 0x66,0x3b,0xc5,0x44 }, { 0x6f,0x36,0xce,0x4a }, - { 0x74,0x21,0xd3,0x58 }, { 0x7d,0x2c,0xd8,0x56 }, - { 0xa1,0x0c,0x7a,0x37 }, { 0xa8,0x01,0x71,0x39 }, - { 0xb3,0x16,0x6c,0x2b }, { 0xba,0x1b,0x67,0x25 }, - { 0x85,0x38,0x56,0x0f }, { 0x8c,0x35,0x5d,0x01 }, - { 0x97,0x22,0x40,0x13 }, { 0x9e,0x2f,0x4b,0x1d }, - { 0xe9,0x64,0x22,0x47 }, { 0xe0,0x69,0x29,0x49 }, - { 0xfb,0x7e,0x34,0x5b }, { 0xf2,0x73,0x3f,0x55 }, - { 0xcd,0x50,0x0e,0x7f }, { 0xc4,0x5d,0x05,0x71 }, - { 0xdf,0x4a,0x18,0x63 }, { 0xd6,0x47,0x13,0x6d }, - { 0x31,0xdc,0xca,0xd7 }, { 0x38,0xd1,0xc1,0xd9 }, - { 0x23,0xc6,0xdc,0xcb }, { 0x2a,0xcb,0xd7,0xc5 }, - { 0x15,0xe8,0xe6,0xef }, { 0x1c,0xe5,0xed,0xe1 }, - { 0x07,0xf2,0xf0,0xf3 }, { 0x0e,0xff,0xfb,0xfd }, - { 0x79,0xb4,0x92,0xa7 }, { 0x70,0xb9,0x99,0xa9 }, - { 0x6b,0xae,0x84,0xbb }, { 0x62,0xa3,0x8f,0xb5 }, - { 0x5d,0x80,0xbe,0x9f }, { 0x54,0x8d,0xb5,0x91 }, - { 0x4f,0x9a,0xa8,0x83 }, { 0x46,0x97,0xa3,0x8d } - }; - -static const u32 rcon[30] = - { - 0x01, 0x02, 0x04, 0x08, 0x10, 0x20, 0x40, 0x80, 0x1b, 0x36, 0x6c, - 0xd8, 0xab, 0x4d, 0x9a, 0x2f, 0x5e, 0xbc, 0x63, 0xc6, 0x97, 0x35, - 0x6a, 0xd4, 0xb3, 0x7d, 0xfa, 0xef, 0xc5, 0x91 - }; diff --git a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/rijndael.c b/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/rijndael.c deleted file mode 100644 index 92e4d2c1d..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/rijndael.c +++ /dev/null @@ -1,1478 +0,0 @@ -/* This file was automatically imported with - import_gcry.py. Please don't modify it */ -#include -GRUB_MOD_LICENSE ("GPLv3+"); -/* Rijndael (AES) for GnuPG - * Copyright (C) 2000, 2001, 2002, 2003, 2007, - * 2008, 2011 Free Software Foundation, Inc. - * - * This file is part of Libgcrypt. - * - * Libgcrypt is free software; you can redistribute it and/or modify - * it under the terms of the GNU Lesser General Public License as - * published by the Free Software Foundation; either version 2.1 of - * the License, or (at your option) any later version. - * - * Libgcrypt is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this program; if not, see . - ******************************************************************* - * The code here is based on the optimized implementation taken from - * http://www.esat.kuleuven.ac.be/~rijmen/rijndael/ on Oct 2, 2000, - * which carries this notice: - *------------------------------------------ - * rijndael-alg-fst.c v2.3 April '2000 - * - * Optimised ANSI C code - * - * authors: v1.0: Antoon Bosselaers - * v2.0: Vincent Rijmen - * v2.3: Paulo Barreto - * - * This code is placed in the public domain. - *------------------------------------------ - * - * The SP800-38a document is available at: - * http://csrc.nist.gov/publications/nistpubs/800-38a/sp800-38a.pdf - * - */ - - -#include "types.h" /* for byte and u32 typedefs */ -#include "g10lib.h" -#include "cipher.h" - -#define MAXKC (256/32) -#define MAXROUNDS 14 -#define BLOCKSIZE (128/8) - - -/* Helper macro to force alignment to 16 bytes. */ -#ifdef __GNUC__ -# define ATTR_ALIGNED_16 __attribute__ ((aligned (16))) -#else -# define ATTR_ALIGNED_16 -#endif - - -/* USE_PADLOCK indicates whether to compile the padlock specific - code. */ -#undef USE_PADLOCK -#ifdef ENABLE_PADLOCK_SUPPORT -# if defined (__i386__) && SIZEOF_UNSIGNED_LONG == 4 && defined (__GNUC__) -# define USE_PADLOCK 1 -# endif -#endif /*ENABLE_PADLOCK_SUPPORT*/ - -/* USE_AESNI inidicates whether to compile with Intel AES-NI code. We - need the vector-size attribute which seems to be available since - gcc 3. However, to be on the safe side we require at least gcc 4. */ -#undef USE_AESNI -#ifdef ENABLE_AESNI_SUPPORT -# if defined (__i386__) && SIZEOF_UNSIGNED_LONG == 4 && __GNUC__ >= 4 -# define USE_AESNI 1 -# endif -#endif /* ENABLE_AESNI_SUPPORT */ - -#ifdef USE_AESNI - typedef int m128i_t __attribute__ ((__vector_size__ (16))); -#endif /*USE_AESNI*/ - -/* Define an u32 variant for the sake of gcc 4.4's strict aliasing. */ -#if __GNUC__ > 4 || ( __GNUC__ == 4 && __GNUC_MINOR__ >= 4 ) -typedef u32 __attribute__ ((__may_alias__)) u32_a_t; -#else -typedef u32 u32_a_t; -#endif - - - -/* Our context object. */ -typedef struct -{ - /* The first fields are the keyschedule arrays. This is so that - they are aligned on a 16 byte boundary if using gcc. This - alignment is required for the AES-NI code and a good idea in any - case. The alignment is guaranteed due to the way cipher.c - allocates the space for the context. The PROPERLY_ALIGNED_TYPE - hack is used to force a minimal alignment if not using gcc of if - the alignment requirement is higher that 16 bytes. */ - union - { - PROPERLY_ALIGNED_TYPE dummy; - byte keyschedule[MAXROUNDS+1][4][4]; -#ifdef USE_PADLOCK - /* The key as passed to the padlock engine. It is only used if - the padlock engine is used (USE_PADLOCK, below). */ - unsigned char padlock_key[16] __attribute__ ((aligned (16))); -#endif /*USE_PADLOCK*/ - } u1; - union - { - PROPERLY_ALIGNED_TYPE dummy; - byte keyschedule[MAXROUNDS+1][4][4]; - } u2; - int rounds; /* Key-length-dependent number of rounds. */ - int decryption_prepared; /* The decryption key schedule is available. */ -#ifdef USE_PADLOCK - int use_padlock; /* Padlock shall be used. */ -#endif /*USE_PADLOCK*/ -#ifdef USE_AESNI - int use_aesni; /* AES-NI shall be used. */ -#endif /*USE_AESNI*/ -} RIJNDAEL_context ATTR_ALIGNED_16; - -/* Macros defining alias for the keyschedules. */ -#define keyschenc u1.keyschedule -#define keyschdec u2.keyschedule -#define padlockkey u1.padlock_key - -/* Two macros to be called prior and after the use of AESNI - instructions. There should be no external function calls between - the use of these macros. There purpose is to make sure that the - SSE regsiters are cleared and won't reveal any information about - the key or the data. */ -#ifdef USE_AESNI -# define aesni_prepare() do { } while (0) -# define aesni_cleanup() \ - do { asm volatile ("pxor %%xmm0, %%xmm0\n\t" \ - "pxor %%xmm1, %%xmm1\n" :: ); \ - } while (0) -# define aesni_cleanup_2_4() \ - do { asm volatile ("pxor %%xmm2, %%xmm2\n\t" \ - "pxor %%xmm3, %%xmm3\n" \ - "pxor %%xmm4, %%xmm4\n":: ); \ - } while (0) -#else -# define aesni_prepare() do { } while (0) -# define aesni_cleanup() do { } while (0) -#endif - - -/* All the numbers. */ -#include "rijndael-tables.h" - - - -/* Function prototypes. */ -#ifdef USE_AESNI -/* We don't want to inline these functions to help gcc allocate enough - registers. */ -static void do_aesni_ctr (const RIJNDAEL_context *ctx, unsigned char *ctr, - unsigned char *b, const unsigned char *a) - __attribute__ ((__noinline__)); -static void do_aesni_ctr_4 (const RIJNDAEL_context *ctx, unsigned char *ctr, - unsigned char *b, const unsigned char *a) - __attribute__ ((__noinline__)); -#endif /*USE_AESNI*/ - - - - -/* Perform the key setup. */ -static gcry_err_code_t -do_setkey (RIJNDAEL_context *ctx, const byte *key, const unsigned keylen) -{ - static int initialized = 0; - static const char *selftest_failed=0; - int rounds; - int i,j, r, t, rconpointer = 0; - int KC; - union - { - PROPERLY_ALIGNED_TYPE dummy; - byte k[MAXKC][4]; - } k; -#define k k.k - union - { - PROPERLY_ALIGNED_TYPE dummy; - byte tk[MAXKC][4]; - } tk; -#define tk tk.tk - - /* The on-the-fly self tests are only run in non-fips mode. In fips - mode explicit self-tests are required. Actually the on-the-fly - self-tests are not fully thread-safe and it might happen that a - failed self-test won't get noticed in another thread. - - FIXME: We might want to have a central registry of succeeded - self-tests. */ - if (!fips_mode () && !initialized) - { - initialized = 1; - selftest_failed = selftest (); - if (selftest_failed) - log_error ("%s\n", selftest_failed ); - } - if (selftest_failed) - return GPG_ERR_SELFTEST_FAILED; - - ctx->decryption_prepared = 0; -#ifdef USE_PADLOCK - ctx->use_padlock = 0; -#endif -#ifdef USE_AESNI - ctx->use_aesni = 0; -#endif - - if( keylen == 128/8 ) - { - rounds = 10; - KC = 4; - - if (0) - ; -#ifdef USE_PADLOCK - else if ((_gcry_get_hw_features () & HWF_PADLOCK_AES)) - { - ctx->use_padlock = 1; - memcpy (ctx->padlockkey, key, keylen); - } -#endif -#ifdef USE_AESNI - else if ((_gcry_get_hw_features () & HWF_INTEL_AESNI)) - { - ctx->use_aesni = 1; - } -#endif - } - else if ( keylen == 192/8 ) - { - rounds = 12; - KC = 6; - - if (0) - { - ; - } -#ifdef USE_AESNI - else if ((_gcry_get_hw_features () & HWF_INTEL_AESNI)) - { - ctx->use_aesni = 1; - } -#endif - } - else if ( keylen == 256/8 ) - { - rounds = 14; - KC = 8; - - if (0) - { - ; - } -#ifdef USE_AESNI - else if ((_gcry_get_hw_features () & HWF_INTEL_AESNI)) - { - ctx->use_aesni = 1; - } -#endif - } - else - return GPG_ERR_INV_KEYLEN; - - ctx->rounds = rounds; - - /* NB: We don't yet support Padlock hardware key generation. */ - - if (0) - ; -#ifdef USE_AESNI_is_disabled_here - else if (ctx->use_aesni && ctx->rounds == 10) - { - /* Note: This code works for AES-128 but it is not much better - than using the standard key schedule. We disable it for - now and don't put any effort into implementing this for - AES-192 and AES-256. */ - asm volatile ("movl %[key], %%esi\n\t" - "movdqu (%%esi), %%xmm1\n\t" /* xmm1 := key */ - "movl %[ksch], %%esi\n\t" - "movdqa %%xmm1, (%%esi)\n\t" /* ksch[0] := xmm1 */ - "aeskeygenassist $0x01, %%xmm1, %%xmm2\n\t" - "call .Lexpand128_%=\n\t" - "movdqa %%xmm1, 0x10(%%esi)\n\t" /* ksch[1] := xmm1 */ - "aeskeygenassist $0x02, %%xmm1, %%xmm2\n\t" - "call .Lexpand128_%=\n\t" - "movdqa %%xmm1, 0x20(%%esi)\n\t" /* ksch[2] := xmm1 */ - "aeskeygenassist $0x04, %%xmm1, %%xmm2\n\t" - "call .Lexpand128_%=\n\t" - "movdqa %%xmm1, 0x30(%%esi)\n\t" /* ksch[3] := xmm1 */ - "aeskeygenassist $0x08, %%xmm1, %%xmm2\n\t" - "call .Lexpand128_%=\n\t" - "movdqa %%xmm1, 0x40(%%esi)\n\t" /* ksch[4] := xmm1 */ - "aeskeygenassist $0x10, %%xmm1, %%xmm2\n\t" - "call .Lexpand128_%=\n\t" - "movdqa %%xmm1, 0x50(%%esi)\n\t" /* ksch[5] := xmm1 */ - "aeskeygenassist $0x20, %%xmm1, %%xmm2\n\t" - "call .Lexpand128_%=\n\t" - "movdqa %%xmm1, 0x60(%%esi)\n\t" /* ksch[6] := xmm1 */ - "aeskeygenassist $0x40, %%xmm1, %%xmm2\n\t" - "call .Lexpand128_%=\n\t" - "movdqa %%xmm1, 0x70(%%esi)\n\t" /* ksch[7] := xmm1 */ - "aeskeygenassist $0x80, %%xmm1, %%xmm2\n\t" - "call .Lexpand128_%=\n\t" - "movdqa %%xmm1, 0x80(%%esi)\n\t" /* ksch[8] := xmm1 */ - "aeskeygenassist $0x1b, %%xmm1, %%xmm2\n\t" - "call .Lexpand128_%=\n\t" - "movdqa %%xmm1, 0x90(%%esi)\n\t" /* ksch[9] := xmm1 */ - "aeskeygenassist $0x36, %%xmm1, %%xmm2\n\t" - "call .Lexpand128_%=\n\t" - "movdqa %%xmm1, 0xa0(%%esi)\n\t" /* ksch[10] := xmm1 */ - "jmp .Lleave%=\n" - - ".Lexpand128_%=:\n\t" - "pshufd $0xff, %%xmm2, %%xmm2\n\t" - "movdqa %%xmm1, %%xmm3\n\t" - "pslldq $4, %%xmm3\n\t" - "pxor %%xmm3, %%xmm1\n\t" - "pslldq $4, %%xmm3\n\t" - "pxor %%xmm3, %%xmm1\n\t" - "pslldq $4, %%xmm3\n\t" - "pxor %%xmm3, %%xmm2\n\t" - "pxor %%xmm2, %%xmm1\n\t" - "ret\n" - - ".Lleave%=:\n\t" - "pxor %%xmm1, %%xmm1\n\t" - "pxor %%xmm2, %%xmm2\n\t" - "pxor %%xmm3, %%xmm3\n" - : - : [key] "g" (key), [ksch] "g" (ctx->keyschenc) - : "%esi", "cc", "memory" ); - } -#endif /*USE_AESNI*/ - else - { -#define W (ctx->keyschenc) - for (i = 0; i < keylen; i++) - { - k[i >> 2][i & 3] = key[i]; - } - - for (j = KC-1; j >= 0; j--) - { - *((u32_a_t*)tk[j]) = *((u32_a_t*)k[j]); - } - r = 0; - t = 0; - /* Copy values into round key array. */ - for (j = 0; (j < KC) && (r < rounds + 1); ) - { - for (; (j < KC) && (t < 4); j++, t++) - { - *((u32_a_t*)W[r][t]) = *((u32_a_t*)tk[j]); - } - if (t == 4) - { - r++; - t = 0; - } - } - - while (r < rounds + 1) - { - /* While not enough round key material calculated calculate - new values. */ - tk[0][0] ^= S[tk[KC-1][1]]; - tk[0][1] ^= S[tk[KC-1][2]]; - tk[0][2] ^= S[tk[KC-1][3]]; - tk[0][3] ^= S[tk[KC-1][0]]; - tk[0][0] ^= rcon[rconpointer++]; - - if (KC != 8) - { - for (j = 1; j < KC; j++) - { - *((u32_a_t*)tk[j]) ^= *((u32_a_t*)tk[j-1]); - } - } - else - { - for (j = 1; j < KC/2; j++) - { - *((u32_a_t*)tk[j]) ^= *((u32_a_t*)tk[j-1]); - } - tk[KC/2][0] ^= S[tk[KC/2 - 1][0]]; - tk[KC/2][1] ^= S[tk[KC/2 - 1][1]]; - tk[KC/2][2] ^= S[tk[KC/2 - 1][2]]; - tk[KC/2][3] ^= S[tk[KC/2 - 1][3]]; - for (j = KC/2 + 1; j < KC; j++) - { - *((u32_a_t*)tk[j]) ^= *((u32_a_t*)tk[j-1]); - } - } - - /* Copy values into round key array. */ - for (j = 0; (j < KC) && (r < rounds + 1); ) - { - for (; (j < KC) && (t < 4); j++, t++) - { - *((u32_a_t*)W[r][t]) = *((u32_a_t*)tk[j]); - } - if (t == 4) - { - r++; - t = 0; - } - } - } -#undef W - } - - return 0; -#undef tk -#undef k -} - - -static gcry_err_code_t -rijndael_setkey (void *context, const byte *key, const unsigned keylen) -{ - RIJNDAEL_context *ctx = context; - - int rc = do_setkey (ctx, key, keylen); - _gcry_burn_stack ( 100 + 16*sizeof(int)); - return rc; -} - - -/* Make a decryption key from an encryption key. */ -static void -prepare_decryption( RIJNDAEL_context *ctx ) -{ - int r; - -#ifdef USE_AESNI - if (ctx->use_aesni) - { - /* The AES-NI decrypt instructions use the Equivalent Inverse - Cipher, thus we can't use the the standard decrypt key - preparation. */ - m128i_t *ekey = (m128i_t*)ctx->keyschenc; - m128i_t *dkey = (m128i_t*)ctx->keyschdec; - int rr; - - dkey[0] = ekey[ctx->rounds]; - for (r=1, rr=ctx->rounds-1; r < ctx->rounds; r++, rr--) - { - asm volatile - ("movdqu %[ekey], %%xmm1\n\t" - /*"aesimc %%xmm1, %%xmm1\n\t"*/ - ".byte 0x66, 0x0f, 0x38, 0xdb, 0xc9\n\t" - "movdqu %%xmm1, %[dkey]" - : [dkey] "=m" (dkey[r]) - : [ekey] "m" (ekey[rr]) ); - } - dkey[r] = ekey[0]; - } - else -#endif /*USE_AESNI*/ - { - union - { - PROPERLY_ALIGNED_TYPE dummy; - byte *w; - } w; -#define w w.w - - for (r=0; r < MAXROUNDS+1; r++ ) - { - *((u32_a_t*)ctx->keyschdec[r][0]) = *((u32_a_t*)ctx->keyschenc[r][0]); - *((u32_a_t*)ctx->keyschdec[r][1]) = *((u32_a_t*)ctx->keyschenc[r][1]); - *((u32_a_t*)ctx->keyschdec[r][2]) = *((u32_a_t*)ctx->keyschenc[r][2]); - *((u32_a_t*)ctx->keyschdec[r][3]) = *((u32_a_t*)ctx->keyschenc[r][3]); - } -#define W (ctx->keyschdec) - for (r = 1; r < ctx->rounds; r++) - { - w = W[r][0]; - *((u32_a_t*)w) = *((u32_a_t*)U1[w[0]]) ^ *((u32_a_t*)U2[w[1]]) - ^ *((u32_a_t*)U3[w[2]]) ^ *((u32_a_t*)U4[w[3]]); - - w = W[r][1]; - *((u32_a_t*)w) = *((u32_a_t*)U1[w[0]]) ^ *((u32_a_t*)U2[w[1]]) - ^ *((u32_a_t*)U3[w[2]]) ^ *((u32_a_t*)U4[w[3]]); - - w = W[r][2]; - *((u32_a_t*)w) = *((u32_a_t*)U1[w[0]]) ^ *((u32_a_t*)U2[w[1]]) - ^ *((u32_a_t*)U3[w[2]]) ^ *((u32_a_t*)U4[w[3]]); - - w = W[r][3]; - *((u32_a_t*)w) = *((u32_a_t*)U1[w[0]]) ^ *((u32_a_t*)U2[w[1]]) - ^ *((u32_a_t*)U3[w[2]]) ^ *((u32_a_t*)U4[w[3]]); - } -#undef W -#undef w - } -} - - -/* Encrypt one block. A and B need to be aligned on a 4 byte - boundary. A and B may be the same. */ -static void -do_encrypt_aligned (const RIJNDAEL_context *ctx, - unsigned char *b, const unsigned char *a) -{ -#define rk (ctx->keyschenc) - int rounds = ctx->rounds; - int r; - union - { - u32 tempu32[4]; /* Force correct alignment. */ - byte temp[4][4]; - } u; - - *((u32_a_t*)u.temp[0]) = *((u32_a_t*)(a )) ^ *((u32_a_t*)rk[0][0]); - *((u32_a_t*)u.temp[1]) = *((u32_a_t*)(a+ 4)) ^ *((u32_a_t*)rk[0][1]); - *((u32_a_t*)u.temp[2]) = *((u32_a_t*)(a+ 8)) ^ *((u32_a_t*)rk[0][2]); - *((u32_a_t*)u.temp[3]) = *((u32_a_t*)(a+12)) ^ *((u32_a_t*)rk[0][3]); - *((u32_a_t*)(b )) = (*((u32_a_t*)T1[u.temp[0][0]]) - ^ *((u32_a_t*)T2[u.temp[1][1]]) - ^ *((u32_a_t*)T3[u.temp[2][2]]) - ^ *((u32_a_t*)T4[u.temp[3][3]])); - *((u32_a_t*)(b + 4)) = (*((u32_a_t*)T1[u.temp[1][0]]) - ^ *((u32_a_t*)T2[u.temp[2][1]]) - ^ *((u32_a_t*)T3[u.temp[3][2]]) - ^ *((u32_a_t*)T4[u.temp[0][3]])); - *((u32_a_t*)(b + 8)) = (*((u32_a_t*)T1[u.temp[2][0]]) - ^ *((u32_a_t*)T2[u.temp[3][1]]) - ^ *((u32_a_t*)T3[u.temp[0][2]]) - ^ *((u32_a_t*)T4[u.temp[1][3]])); - *((u32_a_t*)(b +12)) = (*((u32_a_t*)T1[u.temp[3][0]]) - ^ *((u32_a_t*)T2[u.temp[0][1]]) - ^ *((u32_a_t*)T3[u.temp[1][2]]) - ^ *((u32_a_t*)T4[u.temp[2][3]])); - - for (r = 1; r < rounds-1; r++) - { - *((u32_a_t*)u.temp[0]) = *((u32_a_t*)(b )) ^ *((u32_a_t*)rk[r][0]); - *((u32_a_t*)u.temp[1]) = *((u32_a_t*)(b+ 4)) ^ *((u32_a_t*)rk[r][1]); - *((u32_a_t*)u.temp[2]) = *((u32_a_t*)(b+ 8)) ^ *((u32_a_t*)rk[r][2]); - *((u32_a_t*)u.temp[3]) = *((u32_a_t*)(b+12)) ^ *((u32_a_t*)rk[r][3]); - - *((u32_a_t*)(b )) = (*((u32_a_t*)T1[u.temp[0][0]]) - ^ *((u32_a_t*)T2[u.temp[1][1]]) - ^ *((u32_a_t*)T3[u.temp[2][2]]) - ^ *((u32_a_t*)T4[u.temp[3][3]])); - *((u32_a_t*)(b + 4)) = (*((u32_a_t*)T1[u.temp[1][0]]) - ^ *((u32_a_t*)T2[u.temp[2][1]]) - ^ *((u32_a_t*)T3[u.temp[3][2]]) - ^ *((u32_a_t*)T4[u.temp[0][3]])); - *((u32_a_t*)(b + 8)) = (*((u32_a_t*)T1[u.temp[2][0]]) - ^ *((u32_a_t*)T2[u.temp[3][1]]) - ^ *((u32_a_t*)T3[u.temp[0][2]]) - ^ *((u32_a_t*)T4[u.temp[1][3]])); - *((u32_a_t*)(b +12)) = (*((u32_a_t*)T1[u.temp[3][0]]) - ^ *((u32_a_t*)T2[u.temp[0][1]]) - ^ *((u32_a_t*)T3[u.temp[1][2]]) - ^ *((u32_a_t*)T4[u.temp[2][3]])); - } - - /* Last round is special. */ - *((u32_a_t*)u.temp[0]) = *((u32_a_t*)(b )) ^ *((u32_a_t*)rk[rounds-1][0]); - *((u32_a_t*)u.temp[1]) = *((u32_a_t*)(b+ 4)) ^ *((u32_a_t*)rk[rounds-1][1]); - *((u32_a_t*)u.temp[2]) = *((u32_a_t*)(b+ 8)) ^ *((u32_a_t*)rk[rounds-1][2]); - *((u32_a_t*)u.temp[3]) = *((u32_a_t*)(b+12)) ^ *((u32_a_t*)rk[rounds-1][3]); - b[ 0] = T1[u.temp[0][0]][1]; - b[ 1] = T1[u.temp[1][1]][1]; - b[ 2] = T1[u.temp[2][2]][1]; - b[ 3] = T1[u.temp[3][3]][1]; - b[ 4] = T1[u.temp[1][0]][1]; - b[ 5] = T1[u.temp[2][1]][1]; - b[ 6] = T1[u.temp[3][2]][1]; - b[ 7] = T1[u.temp[0][3]][1]; - b[ 8] = T1[u.temp[2][0]][1]; - b[ 9] = T1[u.temp[3][1]][1]; - b[10] = T1[u.temp[0][2]][1]; - b[11] = T1[u.temp[1][3]][1]; - b[12] = T1[u.temp[3][0]][1]; - b[13] = T1[u.temp[0][1]][1]; - b[14] = T1[u.temp[1][2]][1]; - b[15] = T1[u.temp[2][3]][1]; - *((u32_a_t*)(b )) ^= *((u32_a_t*)rk[rounds][0]); - *((u32_a_t*)(b+ 4)) ^= *((u32_a_t*)rk[rounds][1]); - *((u32_a_t*)(b+ 8)) ^= *((u32_a_t*)rk[rounds][2]); - *((u32_a_t*)(b+12)) ^= *((u32_a_t*)rk[rounds][3]); -#undef rk -} - - -static void -do_encrypt (const RIJNDAEL_context *ctx, - unsigned char *bx, const unsigned char *ax) -{ - /* BX and AX are not necessary correctly aligned. Thus we might - need to copy them here. We try to align to a 16 bytes. */ - if (((size_t)ax & 0x0f) || ((size_t)bx & 0x0f)) - { - union - { - u32 dummy[4]; - byte a[16] ATTR_ALIGNED_16; - } a; - union - { - u32 dummy[4]; - byte b[16] ATTR_ALIGNED_16; - } b; - - memcpy (a.a, ax, 16); - do_encrypt_aligned (ctx, b.b, a.a); - memcpy (bx, b.b, 16); - } - else - { - do_encrypt_aligned (ctx, bx, ax); - } -} - - -/* Encrypt or decrypt one block using the padlock engine. A and B may - be the same. */ -#ifdef USE_PADLOCK -static void -do_padlock (const RIJNDAEL_context *ctx, int decrypt_flag, - unsigned char *bx, const unsigned char *ax) -{ - /* BX and AX are not necessary correctly aligned. Thus we need to - copy them here. */ - unsigned char a[16] __attribute__ ((aligned (16))); - unsigned char b[16] __attribute__ ((aligned (16))); - unsigned int cword[4] __attribute__ ((aligned (16))); - - /* The control word fields are: - 127:12 11:10 9 8 7 6 5 4 3:0 - RESERVED KSIZE CRYPT INTER KEYGN CIPHR ALIGN DGEST ROUND */ - cword[0] = (ctx->rounds & 15); /* (The mask is just a safeguard.) */ - cword[1] = 0; - cword[2] = 0; - cword[3] = 0; - if (decrypt_flag) - cword[0] |= 0x00000200; - - memcpy (a, ax, 16); - - asm volatile - ("pushfl\n\t" /* Force key reload. */ - "popfl\n\t" - "xchg %3, %%ebx\n\t" /* Load key. */ - "movl $1, %%ecx\n\t" /* Init counter for just one block. */ - ".byte 0xf3, 0x0f, 0xa7, 0xc8\n\t" /* REP XSTORE ECB. */ - "xchg %3, %%ebx\n" /* Restore GOT register. */ - : /* No output */ - : "S" (a), "D" (b), "d" (cword), "r" (ctx->padlockkey) - : "%ecx", "cc", "memory" - ); - - memcpy (bx, b, 16); - -} -#endif /*USE_PADLOCK*/ - - -#ifdef USE_AESNI -/* Encrypt one block using the Intel AES-NI instructions. A and B may - be the same; they need to be properly aligned to 16 bytes. - - Our problem here is that gcc does not allow the "x" constraint for - SSE registers in asm unless you compile with -msse. The common - wisdom is to use a separate file for SSE instructions and build it - separately. This would require a lot of extra build system stuff, - similar to what we do in mpi/ for the asm stuff. What we do - instead is to use standard registers and a bit more of plain asm - which copies the data and key stuff to the SSE registers and later - back. If we decide to implement some block modes with parallelized - AES instructions, it might indeed be better to use plain asm ala - mpi/. */ -static void -do_aesni_enc_aligned (const RIJNDAEL_context *ctx, - unsigned char *b, const unsigned char *a) -{ -#define aesenc_xmm1_xmm0 ".byte 0x66, 0x0f, 0x38, 0xdc, 0xc1\n\t" -#define aesenclast_xmm1_xmm0 ".byte 0x66, 0x0f, 0x38, 0xdd, 0xc1\n\t" - /* Note: For now we relax the alignment requirement for A and B: It - does not make much difference because in many case we would need - to memcpy them to an extra buffer; using the movdqu is much faster - that memcpy and movdqa. For CFB we know that the IV is properly - aligned but that is a special case. We should better implement - CFB direct in asm. */ - asm volatile ("movdqu %[src], %%xmm0\n\t" /* xmm0 := *a */ - "movl %[key], %%esi\n\t" /* esi := keyschenc */ - "movdqa (%%esi), %%xmm1\n\t" /* xmm1 := key[0] */ - "pxor %%xmm1, %%xmm0\n\t" /* xmm0 ^= key[0] */ - "movdqa 0x10(%%esi), %%xmm1\n\t" - aesenc_xmm1_xmm0 - "movdqa 0x20(%%esi), %%xmm1\n\t" - aesenc_xmm1_xmm0 - "movdqa 0x30(%%esi), %%xmm1\n\t" - aesenc_xmm1_xmm0 - "movdqa 0x40(%%esi), %%xmm1\n\t" - aesenc_xmm1_xmm0 - "movdqa 0x50(%%esi), %%xmm1\n\t" - aesenc_xmm1_xmm0 - "movdqa 0x60(%%esi), %%xmm1\n\t" - aesenc_xmm1_xmm0 - "movdqa 0x70(%%esi), %%xmm1\n\t" - aesenc_xmm1_xmm0 - "movdqa 0x80(%%esi), %%xmm1\n\t" - aesenc_xmm1_xmm0 - "movdqa 0x90(%%esi), %%xmm1\n\t" - aesenc_xmm1_xmm0 - "movdqa 0xa0(%%esi), %%xmm1\n\t" - "cmp $10, %[rounds]\n\t" - "jz .Lenclast%=\n\t" - aesenc_xmm1_xmm0 - "movdqa 0xb0(%%esi), %%xmm1\n\t" - aesenc_xmm1_xmm0 - "movdqa 0xc0(%%esi), %%xmm1\n\t" - "cmp $12, %[rounds]\n\t" - "jz .Lenclast%=\n\t" - aesenc_xmm1_xmm0 - "movdqa 0xd0(%%esi), %%xmm1\n\t" - aesenc_xmm1_xmm0 - "movdqa 0xe0(%%esi), %%xmm1\n" - - ".Lenclast%=:\n\t" - aesenclast_xmm1_xmm0 - "movdqu %%xmm0, %[dst]\n" - : [dst] "=m" (*b) - : [src] "m" (*a), - [key] "r" (ctx->keyschenc), - [rounds] "r" (ctx->rounds) - : "%esi", "cc", "memory"); -#undef aesenc_xmm1_xmm0 -#undef aesenclast_xmm1_xmm0 -} - - -static void -do_aesni_dec_aligned (const RIJNDAEL_context *ctx, - unsigned char *b, const unsigned char *a) -{ -#define aesdec_xmm1_xmm0 ".byte 0x66, 0x0f, 0x38, 0xde, 0xc1\n\t" -#define aesdeclast_xmm1_xmm0 ".byte 0x66, 0x0f, 0x38, 0xdf, 0xc1\n\t" - asm volatile ("movdqu %[src], %%xmm0\n\t" /* xmm0 := *a */ - "movl %[key], %%esi\n\t" - "movdqa (%%esi), %%xmm1\n\t" - "pxor %%xmm1, %%xmm0\n\t" /* xmm0 ^= key[0] */ - "movdqa 0x10(%%esi), %%xmm1\n\t" - aesdec_xmm1_xmm0 - "movdqa 0x20(%%esi), %%xmm1\n\t" - aesdec_xmm1_xmm0 - "movdqa 0x30(%%esi), %%xmm1\n\t" - aesdec_xmm1_xmm0 - "movdqa 0x40(%%esi), %%xmm1\n\t" - aesdec_xmm1_xmm0 - "movdqa 0x50(%%esi), %%xmm1\n\t" - aesdec_xmm1_xmm0 - "movdqa 0x60(%%esi), %%xmm1\n\t" - aesdec_xmm1_xmm0 - "movdqa 0x70(%%esi), %%xmm1\n\t" - aesdec_xmm1_xmm0 - "movdqa 0x80(%%esi), %%xmm1\n\t" - aesdec_xmm1_xmm0 - "movdqa 0x90(%%esi), %%xmm1\n\t" - aesdec_xmm1_xmm0 - "movdqa 0xa0(%%esi), %%xmm1\n\t" - "cmp $10, %[rounds]\n\t" - "jz .Ldeclast%=\n\t" - aesdec_xmm1_xmm0 - "movdqa 0xb0(%%esi), %%xmm1\n\t" - aesdec_xmm1_xmm0 - "movdqa 0xc0(%%esi), %%xmm1\n\t" - "cmp $12, %[rounds]\n\t" - "jz .Ldeclast%=\n\t" - aesdec_xmm1_xmm0 - "movdqa 0xd0(%%esi), %%xmm1\n\t" - aesdec_xmm1_xmm0 - "movdqa 0xe0(%%esi), %%xmm1\n" - - ".Ldeclast%=:\n\t" - aesdeclast_xmm1_xmm0 - "movdqu %%xmm0, %[dst]\n" - : [dst] "=m" (*b) - : [src] "m" (*a), - [key] "r" (ctx->keyschdec), - [rounds] "r" (ctx->rounds) - : "%esi", "cc", "memory"); -#undef aesdec_xmm1_xmm0 -#undef aesdeclast_xmm1_xmm0 -} - - -/* Perform a CFB encryption or decryption round using the - initialization vector IV and the input block A. Write the result - to the output block B and update IV. IV needs to be 16 byte - aligned. */ -static void -do_aesni_cfb (const RIJNDAEL_context *ctx, int decrypt_flag, - unsigned char *iv, unsigned char *b, const unsigned char *a) -{ -#define aesenc_xmm1_xmm0 ".byte 0x66, 0x0f, 0x38, 0xdc, 0xc1\n\t" -#define aesenclast_xmm1_xmm0 ".byte 0x66, 0x0f, 0x38, 0xdd, 0xc1\n\t" - asm volatile ("movdqa %[iv], %%xmm0\n\t" /* xmm0 := IV */ - "movl %[key], %%esi\n\t" /* esi := keyschenc */ - "movdqa (%%esi), %%xmm1\n\t" /* xmm1 := key[0] */ - "pxor %%xmm1, %%xmm0\n\t" /* xmm0 ^= key[0] */ - "movdqa 0x10(%%esi), %%xmm1\n\t" - aesenc_xmm1_xmm0 - "movdqa 0x20(%%esi), %%xmm1\n\t" - aesenc_xmm1_xmm0 - "movdqa 0x30(%%esi), %%xmm1\n\t" - aesenc_xmm1_xmm0 - "movdqa 0x40(%%esi), %%xmm1\n\t" - aesenc_xmm1_xmm0 - "movdqa 0x50(%%esi), %%xmm1\n\t" - aesenc_xmm1_xmm0 - "movdqa 0x60(%%esi), %%xmm1\n\t" - aesenc_xmm1_xmm0 - "movdqa 0x70(%%esi), %%xmm1\n\t" - aesenc_xmm1_xmm0 - "movdqa 0x80(%%esi), %%xmm1\n\t" - aesenc_xmm1_xmm0 - "movdqa 0x90(%%esi), %%xmm1\n\t" - aesenc_xmm1_xmm0 - "movdqa 0xa0(%%esi), %%xmm1\n\t" - "cmp $10, %[rounds]\n\t" - "jz .Lenclast%=\n\t" - aesenc_xmm1_xmm0 - "movdqa 0xb0(%%esi), %%xmm1\n\t" - aesenc_xmm1_xmm0 - "movdqa 0xc0(%%esi), %%xmm1\n\t" - "cmp $12, %[rounds]\n\t" - "jz .Lenclast%=\n\t" - aesenc_xmm1_xmm0 - "movdqa 0xd0(%%esi), %%xmm1\n\t" - aesenc_xmm1_xmm0 - "movdqa 0xe0(%%esi), %%xmm1\n" - - ".Lenclast%=:\n\t" - aesenclast_xmm1_xmm0 - "movdqu %[src], %%xmm1\n\t" /* Save input. */ - "pxor %%xmm1, %%xmm0\n\t" /* xmm0 = input ^ IV */ - - "cmp $1, %[decrypt]\n\t" - "jz .Ldecrypt_%=\n\t" - "movdqa %%xmm0, %[iv]\n\t" /* [encrypt] Store IV. */ - "jmp .Lleave_%=\n" - ".Ldecrypt_%=:\n\t" - "movdqa %%xmm1, %[iv]\n" /* [decrypt] Store IV. */ - ".Lleave_%=:\n\t" - "movdqu %%xmm0, %[dst]\n" /* Store output. */ - : [iv] "+m" (*iv), [dst] "=m" (*b) - : [src] "m" (*a), - [key] "g" (ctx->keyschenc), - [rounds] "g" (ctx->rounds), - [decrypt] "m" (decrypt_flag) - : "%esi", "cc", "memory"); -#undef aesenc_xmm1_xmm0 -#undef aesenclast_xmm1_xmm0 -} - -/* Perform a CTR encryption round using the counter CTR and the input - block A. Write the result to the output block B and update CTR. - CTR needs to be a 16 byte aligned little-endian value. */ -static void -do_aesni_ctr (const RIJNDAEL_context *ctx, - unsigned char *ctr, unsigned char *b, const unsigned char *a) -{ -#define aesenc_xmm1_xmm0 ".byte 0x66, 0x0f, 0x38, 0xdc, 0xc1\n\t" -#define aesenclast_xmm1_xmm0 ".byte 0x66, 0x0f, 0x38, 0xdd, 0xc1\n\t" - static unsigned char be_mask[16] __attribute__ ((aligned (16))) = - { 15, 14, 13, 12, 11, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1, 0 }; - - asm volatile ("movdqa %[ctr], %%xmm0\n\t" /* xmm0, xmm2 := CTR */ - "movaps %%xmm0, %%xmm2\n\t" - "mov $1, %%esi\n\t" /* xmm2++ (big-endian) */ - "movd %%esi, %%xmm1\n\t" - "pshufb %[mask], %%xmm2\n\t" - "paddq %%xmm1, %%xmm2\n\t" - "pshufb %[mask], %%xmm2\n\t" - "movdqa %%xmm2, %[ctr]\n" /* Update CTR. */ - - "movl %[key], %%esi\n\t" /* esi := keyschenc */ - "movdqa (%%esi), %%xmm1\n\t" /* xmm1 := key[0] */ - "pxor %%xmm1, %%xmm0\n\t" /* xmm0 ^= key[0] */ - "movdqa 0x10(%%esi), %%xmm1\n\t" - aesenc_xmm1_xmm0 - "movdqa 0x20(%%esi), %%xmm1\n\t" - aesenc_xmm1_xmm0 - "movdqa 0x30(%%esi), %%xmm1\n\t" - aesenc_xmm1_xmm0 - "movdqa 0x40(%%esi), %%xmm1\n\t" - aesenc_xmm1_xmm0 - "movdqa 0x50(%%esi), %%xmm1\n\t" - aesenc_xmm1_xmm0 - "movdqa 0x60(%%esi), %%xmm1\n\t" - aesenc_xmm1_xmm0 - "movdqa 0x70(%%esi), %%xmm1\n\t" - aesenc_xmm1_xmm0 - "movdqa 0x80(%%esi), %%xmm1\n\t" - aesenc_xmm1_xmm0 - "movdqa 0x90(%%esi), %%xmm1\n\t" - aesenc_xmm1_xmm0 - "movdqa 0xa0(%%esi), %%xmm1\n\t" - "cmp $10, %[rounds]\n\t" - "jz .Lenclast%=\n\t" - aesenc_xmm1_xmm0 - "movdqa 0xb0(%%esi), %%xmm1\n\t" - aesenc_xmm1_xmm0 - "movdqa 0xc0(%%esi), %%xmm1\n\t" - "cmp $12, %[rounds]\n\t" - "jz .Lenclast%=\n\t" - aesenc_xmm1_xmm0 - "movdqa 0xd0(%%esi), %%xmm1\n\t" - aesenc_xmm1_xmm0 - "movdqa 0xe0(%%esi), %%xmm1\n" - - ".Lenclast%=:\n\t" - aesenclast_xmm1_xmm0 - "movdqu %[src], %%xmm1\n\t" /* xmm1 := input */ - "pxor %%xmm1, %%xmm0\n\t" /* EncCTR ^= input */ - "movdqu %%xmm0, %[dst]" /* Store EncCTR. */ - - : [ctr] "+m" (*ctr), [dst] "=m" (*b) - : [src] "m" (*a), - [key] "g" (ctx->keyschenc), - [rounds] "g" (ctx->rounds), - [mask] "m" (*be_mask) - : "%esi", "cc", "memory"); -#undef aesenc_xmm1_xmm0 -#undef aesenclast_xmm1_xmm0 -} - - -/* Four blocks at a time variant of do_aesni_ctr. */ -static void -do_aesni_ctr_4 (const RIJNDAEL_context *ctx, - unsigned char *ctr, unsigned char *b, const unsigned char *a) -{ -#define aesenc_xmm1_xmm0 ".byte 0x66, 0x0f, 0x38, 0xdc, 0xc1\n\t" -#define aesenc_xmm1_xmm2 ".byte 0x66, 0x0f, 0x38, 0xdc, 0xd1\n\t" -#define aesenc_xmm1_xmm3 ".byte 0x66, 0x0f, 0x38, 0xdc, 0xd9\n\t" -#define aesenc_xmm1_xmm4 ".byte 0x66, 0x0f, 0x38, 0xdc, 0xe1\n\t" -#define aesenclast_xmm1_xmm0 ".byte 0x66, 0x0f, 0x38, 0xdd, 0xc1\n\t" -#define aesenclast_xmm1_xmm2 ".byte 0x66, 0x0f, 0x38, 0xdd, 0xd1\n\t" -#define aesenclast_xmm1_xmm3 ".byte 0x66, 0x0f, 0x38, 0xdd, 0xd9\n\t" -#define aesenclast_xmm1_xmm4 ".byte 0x66, 0x0f, 0x38, 0xdd, 0xe1\n\t" - - static unsigned char be_mask[16] __attribute__ ((aligned (16))) = - { 15, 14, 13, 12, 11, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1, 0 }; - - /* Register usage: - esi keyschedule - xmm0 CTR-0 - xmm1 temp / round key - xmm2 CTR-1 - xmm3 CTR-2 - xmm4 CTR-3 - xmm5 temp - */ - - asm volatile ("movdqa %[ctr], %%xmm0\n\t" /* xmm0, xmm2 := CTR */ - "movaps %%xmm0, %%xmm2\n\t" - "mov $1, %%esi\n\t" /* xmm1 := 1 */ - "movd %%esi, %%xmm1\n\t" - "pshufb %[mask], %%xmm2\n\t" /* xmm2 := le(xmm2) */ - "paddq %%xmm1, %%xmm2\n\t" /* xmm2++ */ - "movaps %%xmm2, %%xmm3\n\t" /* xmm3 := xmm2 */ - "paddq %%xmm1, %%xmm3\n\t" /* xmm3++ */ - "movaps %%xmm3, %%xmm4\n\t" /* xmm4 := xmm3 */ - "paddq %%xmm1, %%xmm4\n\t" /* xmm4++ */ - "movaps %%xmm4, %%xmm5\n\t" /* xmm5 := xmm4 */ - "paddq %%xmm1, %%xmm5\n\t" /* xmm5++ */ - "pshufb %[mask], %%xmm2\n\t" /* xmm2 := be(xmm2) */ - "pshufb %[mask], %%xmm3\n\t" /* xmm3 := be(xmm3) */ - "pshufb %[mask], %%xmm4\n\t" /* xmm4 := be(xmm4) */ - "pshufb %[mask], %%xmm5\n\t" /* xmm5 := be(xmm5) */ - "movdqa %%xmm5, %[ctr]\n" /* Update CTR. */ - - "movl %[key], %%esi\n\t" /* esi := keyschenc */ - "movdqa (%%esi), %%xmm1\n\t" /* xmm1 := key[0] */ - "pxor %%xmm1, %%xmm0\n\t" /* xmm0 ^= key[0] */ - "pxor %%xmm1, %%xmm2\n\t" /* xmm2 ^= key[0] */ - "pxor %%xmm1, %%xmm3\n\t" /* xmm3 ^= key[0] */ - "pxor %%xmm1, %%xmm4\n\t" /* xmm4 ^= key[0] */ - "movdqa 0x10(%%esi), %%xmm1\n\t" - aesenc_xmm1_xmm0 - aesenc_xmm1_xmm2 - aesenc_xmm1_xmm3 - aesenc_xmm1_xmm4 - "movdqa 0x20(%%esi), %%xmm1\n\t" - aesenc_xmm1_xmm0 - aesenc_xmm1_xmm2 - aesenc_xmm1_xmm3 - aesenc_xmm1_xmm4 - "movdqa 0x30(%%esi), %%xmm1\n\t" - aesenc_xmm1_xmm0 - aesenc_xmm1_xmm2 - aesenc_xmm1_xmm3 - aesenc_xmm1_xmm4 - "movdqa 0x40(%%esi), %%xmm1\n\t" - aesenc_xmm1_xmm0 - aesenc_xmm1_xmm2 - aesenc_xmm1_xmm3 - aesenc_xmm1_xmm4 - "movdqa 0x50(%%esi), %%xmm1\n\t" - aesenc_xmm1_xmm0 - aesenc_xmm1_xmm2 - aesenc_xmm1_xmm3 - aesenc_xmm1_xmm4 - "movdqa 0x60(%%esi), %%xmm1\n\t" - aesenc_xmm1_xmm0 - aesenc_xmm1_xmm2 - aesenc_xmm1_xmm3 - aesenc_xmm1_xmm4 - "movdqa 0x70(%%esi), %%xmm1\n\t" - aesenc_xmm1_xmm0 - aesenc_xmm1_xmm2 - aesenc_xmm1_xmm3 - aesenc_xmm1_xmm4 - "movdqa 0x80(%%esi), %%xmm1\n\t" - aesenc_xmm1_xmm0 - aesenc_xmm1_xmm2 - aesenc_xmm1_xmm3 - aesenc_xmm1_xmm4 - "movdqa 0x90(%%esi), %%xmm1\n\t" - aesenc_xmm1_xmm0 - aesenc_xmm1_xmm2 - aesenc_xmm1_xmm3 - aesenc_xmm1_xmm4 - "movdqa 0xa0(%%esi), %%xmm1\n\t" - "cmp $10, %[rounds]\n\t" - "jz .Lenclast%=\n\t" - aesenc_xmm1_xmm0 - aesenc_xmm1_xmm2 - aesenc_xmm1_xmm3 - aesenc_xmm1_xmm4 - "movdqa 0xb0(%%esi), %%xmm1\n\t" - aesenc_xmm1_xmm0 - aesenc_xmm1_xmm2 - aesenc_xmm1_xmm3 - aesenc_xmm1_xmm4 - "movdqa 0xc0(%%esi), %%xmm1\n\t" - "cmp $12, %[rounds]\n\t" - "jz .Lenclast%=\n\t" - aesenc_xmm1_xmm0 - aesenc_xmm1_xmm2 - aesenc_xmm1_xmm3 - aesenc_xmm1_xmm4 - "movdqa 0xd0(%%esi), %%xmm1\n\t" - aesenc_xmm1_xmm0 - aesenc_xmm1_xmm2 - aesenc_xmm1_xmm3 - aesenc_xmm1_xmm4 - "movdqa 0xe0(%%esi), %%xmm1\n" - - ".Lenclast%=:\n\t" - aesenclast_xmm1_xmm0 - aesenclast_xmm1_xmm2 - aesenclast_xmm1_xmm3 - aesenclast_xmm1_xmm4 - - "movdqu %[src], %%xmm1\n\t" /* Get block 1. */ - "pxor %%xmm1, %%xmm0\n\t" /* EncCTR-1 ^= input */ - "movdqu %%xmm0, %[dst]\n\t" /* Store block 1 */ - - "movdqu (16)%[src], %%xmm1\n\t" /* Get block 2. */ - "pxor %%xmm1, %%xmm2\n\t" /* EncCTR-2 ^= input */ - "movdqu %%xmm2, (16)%[dst]\n\t" /* Store block 2. */ - - "movdqu (32)%[src], %%xmm1\n\t" /* Get block 3. */ - "pxor %%xmm1, %%xmm3\n\t" /* EncCTR-3 ^= input */ - "movdqu %%xmm3, (32)%[dst]\n\t" /* Store block 3. */ - - "movdqu (48)%[src], %%xmm1\n\t" /* Get block 4. */ - "pxor %%xmm1, %%xmm4\n\t" /* EncCTR-4 ^= input */ - "movdqu %%xmm4, (48)%[dst]" /* Store block 4. */ - - : [ctr] "+m" (*ctr), [dst] "=m" (*b) - : [src] "m" (*a), - [key] "g" (ctx->keyschenc), - [rounds] "g" (ctx->rounds), - [mask] "m" (*be_mask) - : "%esi", "cc", "memory"); -#undef aesenc_xmm1_xmm0 -#undef aesenc_xmm1_xmm2 -#undef aesenc_xmm1_xmm3 -#undef aesenc_xmm1_xmm4 -#undef aesenclast_xmm1_xmm0 -#undef aesenclast_xmm1_xmm2 -#undef aesenclast_xmm1_xmm3 -#undef aesenclast_xmm1_xmm4 -} - - -static void -do_aesni (RIJNDAEL_context *ctx, int decrypt_flag, - unsigned char *bx, const unsigned char *ax) -{ - - if (decrypt_flag) - { - if (!ctx->decryption_prepared ) - { - prepare_decryption ( ctx ); - ctx->decryption_prepared = 1; - } - do_aesni_dec_aligned (ctx, bx, ax); - } - else - do_aesni_enc_aligned (ctx, bx, ax); -} -#endif /*USE_AESNI*/ - - -static void -rijndael_encrypt (void *context, byte *b, const byte *a) -{ - RIJNDAEL_context *ctx = context; - - if (0) - ; -#ifdef USE_PADLOCK - else if (ctx->use_padlock) - { - do_padlock (ctx, 0, b, a); - _gcry_burn_stack (48 + 15 /* possible padding for alignment */); - } -#endif /*USE_PADLOCK*/ -#ifdef USE_AESNI - else if (ctx->use_aesni) - { - aesni_prepare (); - do_aesni (ctx, 0, b, a); - aesni_cleanup (); - } -#endif /*USE_AESNI*/ - else - { - do_encrypt (ctx, b, a); - _gcry_burn_stack (56 + 2*sizeof(int)); - } -} - - -/* Bulk encryption of complete blocks in CFB mode. Caller needs to - make sure that IV is aligned on an unsigned long boundary. This - function is only intended for the bulk encryption feature of - cipher.c. */ - - -/* Bulk encryption of complete blocks in CBC mode. Caller needs to - make sure that IV is aligned on an unsigned long boundary. This - function is only intended for the bulk encryption feature of - cipher.c. */ - - -/* Bulk encryption of complete blocks in CTR mode. Caller needs to - make sure that CTR is aligned on a 16 byte boundary if AESNI; the - minimum alignment is for an u32. This function is only intended - for the bulk encryption feature of cipher.c. CTR is expected to be - of size BLOCKSIZE. */ - - - -/* Decrypt one block. A and B need to be aligned on a 4 byte boundary - and the decryption must have been prepared. A and B may be the - same. */ -static void -do_decrypt_aligned (RIJNDAEL_context *ctx, - unsigned char *b, const unsigned char *a) -{ -#define rk (ctx->keyschdec) - int rounds = ctx->rounds; - int r; - union - { - u32 tempu32[4]; /* Force correct alignment. */ - byte temp[4][4]; - } u; - - - *((u32_a_t*)u.temp[0]) = *((u32_a_t*)(a )) ^ *((u32_a_t*)rk[rounds][0]); - *((u32_a_t*)u.temp[1]) = *((u32_a_t*)(a+ 4)) ^ *((u32_a_t*)rk[rounds][1]); - *((u32_a_t*)u.temp[2]) = *((u32_a_t*)(a+ 8)) ^ *((u32_a_t*)rk[rounds][2]); - *((u32_a_t*)u.temp[3]) = *((u32_a_t*)(a+12)) ^ *((u32_a_t*)rk[rounds][3]); - - *((u32_a_t*)(b )) = (*((u32_a_t*)T5[u.temp[0][0]]) - ^ *((u32_a_t*)T6[u.temp[3][1]]) - ^ *((u32_a_t*)T7[u.temp[2][2]]) - ^ *((u32_a_t*)T8[u.temp[1][3]])); - *((u32_a_t*)(b+ 4)) = (*((u32_a_t*)T5[u.temp[1][0]]) - ^ *((u32_a_t*)T6[u.temp[0][1]]) - ^ *((u32_a_t*)T7[u.temp[3][2]]) - ^ *((u32_a_t*)T8[u.temp[2][3]])); - *((u32_a_t*)(b+ 8)) = (*((u32_a_t*)T5[u.temp[2][0]]) - ^ *((u32_a_t*)T6[u.temp[1][1]]) - ^ *((u32_a_t*)T7[u.temp[0][2]]) - ^ *((u32_a_t*)T8[u.temp[3][3]])); - *((u32_a_t*)(b+12)) = (*((u32_a_t*)T5[u.temp[3][0]]) - ^ *((u32_a_t*)T6[u.temp[2][1]]) - ^ *((u32_a_t*)T7[u.temp[1][2]]) - ^ *((u32_a_t*)T8[u.temp[0][3]])); - - for (r = rounds-1; r > 1; r--) - { - *((u32_a_t*)u.temp[0]) = *((u32_a_t*)(b )) ^ *((u32_a_t*)rk[r][0]); - *((u32_a_t*)u.temp[1]) = *((u32_a_t*)(b+ 4)) ^ *((u32_a_t*)rk[r][1]); - *((u32_a_t*)u.temp[2]) = *((u32_a_t*)(b+ 8)) ^ *((u32_a_t*)rk[r][2]); - *((u32_a_t*)u.temp[3]) = *((u32_a_t*)(b+12)) ^ *((u32_a_t*)rk[r][3]); - *((u32_a_t*)(b )) = (*((u32_a_t*)T5[u.temp[0][0]]) - ^ *((u32_a_t*)T6[u.temp[3][1]]) - ^ *((u32_a_t*)T7[u.temp[2][2]]) - ^ *((u32_a_t*)T8[u.temp[1][3]])); - *((u32_a_t*)(b+ 4)) = (*((u32_a_t*)T5[u.temp[1][0]]) - ^ *((u32_a_t*)T6[u.temp[0][1]]) - ^ *((u32_a_t*)T7[u.temp[3][2]]) - ^ *((u32_a_t*)T8[u.temp[2][3]])); - *((u32_a_t*)(b+ 8)) = (*((u32_a_t*)T5[u.temp[2][0]]) - ^ *((u32_a_t*)T6[u.temp[1][1]]) - ^ *((u32_a_t*)T7[u.temp[0][2]]) - ^ *((u32_a_t*)T8[u.temp[3][3]])); - *((u32_a_t*)(b+12)) = (*((u32_a_t*)T5[u.temp[3][0]]) - ^ *((u32_a_t*)T6[u.temp[2][1]]) - ^ *((u32_a_t*)T7[u.temp[1][2]]) - ^ *((u32_a_t*)T8[u.temp[0][3]])); - } - - /* Last round is special. */ - *((u32_a_t*)u.temp[0]) = *((u32_a_t*)(b )) ^ *((u32_a_t*)rk[1][0]); - *((u32_a_t*)u.temp[1]) = *((u32_a_t*)(b+ 4)) ^ *((u32_a_t*)rk[1][1]); - *((u32_a_t*)u.temp[2]) = *((u32_a_t*)(b+ 8)) ^ *((u32_a_t*)rk[1][2]); - *((u32_a_t*)u.temp[3]) = *((u32_a_t*)(b+12)) ^ *((u32_a_t*)rk[1][3]); - b[ 0] = S5[u.temp[0][0]]; - b[ 1] = S5[u.temp[3][1]]; - b[ 2] = S5[u.temp[2][2]]; - b[ 3] = S5[u.temp[1][3]]; - b[ 4] = S5[u.temp[1][0]]; - b[ 5] = S5[u.temp[0][1]]; - b[ 6] = S5[u.temp[3][2]]; - b[ 7] = S5[u.temp[2][3]]; - b[ 8] = S5[u.temp[2][0]]; - b[ 9] = S5[u.temp[1][1]]; - b[10] = S5[u.temp[0][2]]; - b[11] = S5[u.temp[3][3]]; - b[12] = S5[u.temp[3][0]]; - b[13] = S5[u.temp[2][1]]; - b[14] = S5[u.temp[1][2]]; - b[15] = S5[u.temp[0][3]]; - *((u32_a_t*)(b )) ^= *((u32_a_t*)rk[0][0]); - *((u32_a_t*)(b+ 4)) ^= *((u32_a_t*)rk[0][1]); - *((u32_a_t*)(b+ 8)) ^= *((u32_a_t*)rk[0][2]); - *((u32_a_t*)(b+12)) ^= *((u32_a_t*)rk[0][3]); -#undef rk -} - - -/* Decrypt one block. AX and BX may be the same. */ -static void -do_decrypt (RIJNDAEL_context *ctx, byte *bx, const byte *ax) -{ - if ( !ctx->decryption_prepared ) - { - prepare_decryption ( ctx ); - _gcry_burn_stack (64); - ctx->decryption_prepared = 1; - } - - /* BX and AX are not necessary correctly aligned. Thus we might - need to copy them here. We try to align to a 16 bytes. */ - if (((size_t)ax & 0x0f) || ((size_t)bx & 0x0f)) - { - union - { - u32 dummy[4]; - byte a[16] ATTR_ALIGNED_16; - } a; - union - { - u32 dummy[4]; - byte b[16] ATTR_ALIGNED_16; - } b; - - memcpy (a.a, ax, 16); - do_decrypt_aligned (ctx, b.b, a.a); - memcpy (bx, b.b, 16); - } - else - { - do_decrypt_aligned (ctx, bx, ax); - } -} - - - - -static void -rijndael_decrypt (void *context, byte *b, const byte *a) -{ - RIJNDAEL_context *ctx = context; - - if (0) - ; -#ifdef USE_PADLOCK - else if (ctx->use_padlock) - { - do_padlock (ctx, 1, b, a); - _gcry_burn_stack (48 + 2*sizeof(int) /* FIXME */); - } -#endif /*USE_PADLOCK*/ -#ifdef USE_AESNI - else if (ctx->use_aesni) - { - aesni_prepare (); - do_aesni (ctx, 1, b, a); - aesni_cleanup (); - } -#endif /*USE_AESNI*/ - else - { - do_decrypt (ctx, b, a); - _gcry_burn_stack (56+2*sizeof(int)); - } -} - - -/* Bulk decryption of complete blocks in CFB mode. Caller needs to - make sure that IV is aligned on an unisgned lonhg boundary. This - function is only intended for the bulk encryption feature of - cipher.c. */ - - -/* Bulk decryption of complete blocks in CBC mode. Caller needs to - make sure that IV is aligned on an unsigned long boundary. This - function is only intended for the bulk encryption feature of - cipher.c. */ - - - - -/* Run the self-tests for AES 128. Returns NULL on success. */ - -/* Run the self-tests for AES 192. Returns NULL on success. */ - - -/* Run the self-tests for AES 256. Returns NULL on success. */ - -/* Run all the self-tests and return NULL on success. This function - is used for the on-the-fly self-tests. */ - - -/* SP800-38a.pdf for AES-128. */ - - -/* Complete selftest for AES-128 with all modes and driver code. */ - -/* Complete selftest for AES-192. */ - - -/* Complete selftest for AES-256. */ - - - -/* Run a full self-test for ALGO and return 0 on success. */ - - - - -static const char *rijndael_names[] = - { - "RIJNDAEL", - "AES128", - "AES-128", - NULL - }; - -static gcry_cipher_oid_spec_t rijndael_oids[] = - { - { "2.16.840.1.101.3.4.1.1", GCRY_CIPHER_MODE_ECB }, - { "2.16.840.1.101.3.4.1.2", GCRY_CIPHER_MODE_CBC }, - { "2.16.840.1.101.3.4.1.3", GCRY_CIPHER_MODE_OFB }, - { "2.16.840.1.101.3.4.1.4", GCRY_CIPHER_MODE_CFB }, - { NULL } - }; - -gcry_cipher_spec_t _gcry_cipher_spec_aes = - { - "AES", rijndael_names, rijndael_oids, 16, 128, sizeof (RIJNDAEL_context), - rijndael_setkey, rijndael_encrypt, rijndael_decrypt - , -#ifdef GRUB_UTIL - .modname = "gcry_rijndael", -#endif - }; - -static const char *rijndael192_names[] = - { - "RIJNDAEL192", - "AES-192", - NULL - }; - -static gcry_cipher_oid_spec_t rijndael192_oids[] = - { - { "2.16.840.1.101.3.4.1.21", GCRY_CIPHER_MODE_ECB }, - { "2.16.840.1.101.3.4.1.22", GCRY_CIPHER_MODE_CBC }, - { "2.16.840.1.101.3.4.1.23", GCRY_CIPHER_MODE_OFB }, - { "2.16.840.1.101.3.4.1.24", GCRY_CIPHER_MODE_CFB }, - { NULL } - }; - -gcry_cipher_spec_t _gcry_cipher_spec_aes192 = - { - "AES192", rijndael192_names, rijndael192_oids, 16, 192, sizeof (RIJNDAEL_context), - rijndael_setkey, rijndael_encrypt, rijndael_decrypt - , -#ifdef GRUB_UTIL - .modname = "gcry_rijndael", -#endif - }; - -static const char *rijndael256_names[] = - { - "RIJNDAEL256", - "AES-256", - NULL - }; - -static gcry_cipher_oid_spec_t rijndael256_oids[] = - { - { "2.16.840.1.101.3.4.1.41", GCRY_CIPHER_MODE_ECB }, - { "2.16.840.1.101.3.4.1.42", GCRY_CIPHER_MODE_CBC }, - { "2.16.840.1.101.3.4.1.43", GCRY_CIPHER_MODE_OFB }, - { "2.16.840.1.101.3.4.1.44", GCRY_CIPHER_MODE_CFB }, - { NULL } - }; - -gcry_cipher_spec_t _gcry_cipher_spec_aes256 = - { - "AES256", rijndael256_names, rijndael256_oids, 16, 256, - sizeof (RIJNDAEL_context), - rijndael_setkey, rijndael_encrypt, rijndael_decrypt - , -#ifdef GRUB_UTIL - .modname = "gcry_rijndael", -#endif - }; - - - -GRUB_MOD_INIT(gcry_rijndael) -{ - grub_cipher_register (&_gcry_cipher_spec_aes); - grub_cipher_register (&_gcry_cipher_spec_aes192); - grub_cipher_register (&_gcry_cipher_spec_aes256); -} - -GRUB_MOD_FINI(gcry_rijndael) -{ - grub_cipher_unregister (&_gcry_cipher_spec_aes); - grub_cipher_unregister (&_gcry_cipher_spec_aes192); - grub_cipher_unregister (&_gcry_cipher_spec_aes256); -} diff --git a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/rmd.h b/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/rmd.h deleted file mode 100644 index 75bb21f50..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/rmd.h +++ /dev/null @@ -1,39 +0,0 @@ -/* This file was automatically imported with - import_gcry.py. Please don't modify it */ -#include -/* rmd.h - RIPE-MD hash functions - * Copyright (C) 1998, 2001, 2002 Free Software Foundation, Inc. - * - * This file is part of Libgcrypt. - * - * Libgcrypt is free software; you can redistribute it and/or modify - * it under the terms of the GNU Lesser General Public License as - * published by the Free Software Foundation; either version 2.1 of - * the License, or (at your option) any later version. - * - * Libgcrypt is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA - */ -#ifndef G10_RMD_H -#define G10_RMD_H - - -/* We need this here because random.c must have direct access. */ -typedef struct -{ - u32 h0,h1,h2,h3,h4; - u32 nblocks; - byte buf[64]; - int count; -} RMD160_CONTEXT; - -void _gcry_rmd160_init ( void *context ); -void _gcry_rmd160_mixblock ( RMD160_CONTEXT *hd, void *blockof64byte ); - -#endif /*G10_RMD_H*/ diff --git a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/rmd160.c b/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/rmd160.c deleted file mode 100644 index 620fe98ab..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/rmd160.c +++ /dev/null @@ -1,565 +0,0 @@ -/* This file was automatically imported with - import_gcry.py. Please don't modify it */ -#include -GRUB_MOD_LICENSE ("GPLv3+"); -/* rmd160.c - RIPE-MD160 - * Copyright (C) 1998, 2001, 2002, 2003 Free Software Foundation, Inc. - * - * This file is part of Libgcrypt. - * - * Libgcrypt is free software; you can redistribute it and/or modify - * it under the terms of the GNU Lesser General Public License as - * published by the Free Software Foundation; either version 2.1 of - * the License, or (at your option) any later version. - * - * Libgcrypt is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA - */ - - -#include "g10lib.h" -#include "rmd.h" -#include "cipher.h" /* Only used for the rmd160_hash_buffer() prototype. */ - -#include "bithelp.h" - -/********************************* - * RIPEMD-160 is not patented, see (as of 25.10.97) - * http://www.esat.kuleuven.ac.be/~bosselae/ripemd160.html - * Note that the code uses Little Endian byteorder, which is good for - * 386 etc, but we must add some conversion when used on a big endian box. - * - * - * Pseudo-code for RIPEMD-160 - * - * RIPEMD-160 is an iterative hash function that operates on 32-bit words. - * The round function takes as input a 5-word chaining variable and a 16-word - * message block and maps this to a new chaining variable. All operations are - * defined on 32-bit words. Padding is identical to that of MD4. - * - * - * RIPEMD-160: definitions - * - * - * nonlinear functions at bit level: exor, mux, -, mux, - - * - * f(j, x, y, z) = x XOR y XOR z (0 <= j <= 15) - * f(j, x, y, z) = (x AND y) OR (NOT(x) AND z) (16 <= j <= 31) - * f(j, x, y, z) = (x OR NOT(y)) XOR z (32 <= j <= 47) - * f(j, x, y, z) = (x AND z) OR (y AND NOT(z)) (48 <= j <= 63) - * f(j, x, y, z) = x XOR (y OR NOT(z)) (64 <= j <= 79) - * - * - * added constants (hexadecimal) - * - * K(j) = 0x00000000 (0 <= j <= 15) - * K(j) = 0x5A827999 (16 <= j <= 31) int(2**30 x sqrt(2)) - * K(j) = 0x6ED9EBA1 (32 <= j <= 47) int(2**30 x sqrt(3)) - * K(j) = 0x8F1BBCDC (48 <= j <= 63) int(2**30 x sqrt(5)) - * K(j) = 0xA953FD4E (64 <= j <= 79) int(2**30 x sqrt(7)) - * K'(j) = 0x50A28BE6 (0 <= j <= 15) int(2**30 x cbrt(2)) - * K'(j) = 0x5C4DD124 (16 <= j <= 31) int(2**30 x cbrt(3)) - * K'(j) = 0x6D703EF3 (32 <= j <= 47) int(2**30 x cbrt(5)) - * K'(j) = 0x7A6D76E9 (48 <= j <= 63) int(2**30 x cbrt(7)) - * K'(j) = 0x00000000 (64 <= j <= 79) - * - * - * selection of message word - * - * r(j) = j (0 <= j <= 15) - * r(16..31) = 7, 4, 13, 1, 10, 6, 15, 3, 12, 0, 9, 5, 2, 14, 11, 8 - * r(32..47) = 3, 10, 14, 4, 9, 15, 8, 1, 2, 7, 0, 6, 13, 11, 5, 12 - * r(48..63) = 1, 9, 11, 10, 0, 8, 12, 4, 13, 3, 7, 15, 14, 5, 6, 2 - * r(64..79) = 4, 0, 5, 9, 7, 12, 2, 10, 14, 1, 3, 8, 11, 6, 15, 13 - * r0(0..15) = 5, 14, 7, 0, 9, 2, 11, 4, 13, 6, 15, 8, 1, 10, 3, 12 - * r0(16..31)= 6, 11, 3, 7, 0, 13, 5, 10, 14, 15, 8, 12, 4, 9, 1, 2 - * r0(32..47)= 15, 5, 1, 3, 7, 14, 6, 9, 11, 8, 12, 2, 10, 0, 4, 13 - * r0(48..63)= 8, 6, 4, 1, 3, 11, 15, 0, 5, 12, 2, 13, 9, 7, 10, 14 - * r0(64..79)= 12, 15, 10, 4, 1, 5, 8, 7, 6, 2, 13, 14, 0, 3, 9, 11 - * - * - * amount for rotate left (rol) - * - * s(0..15) = 11, 14, 15, 12, 5, 8, 7, 9, 11, 13, 14, 15, 6, 7, 9, 8 - * s(16..31) = 7, 6, 8, 13, 11, 9, 7, 15, 7, 12, 15, 9, 11, 7, 13, 12 - * s(32..47) = 11, 13, 6, 7, 14, 9, 13, 15, 14, 8, 13, 6, 5, 12, 7, 5 - * s(48..63) = 11, 12, 14, 15, 14, 15, 9, 8, 9, 14, 5, 6, 8, 6, 5, 12 - * s(64..79) = 9, 15, 5, 11, 6, 8, 13, 12, 5, 12, 13, 14, 11, 8, 5, 6 - * s'(0..15) = 8, 9, 9, 11, 13, 15, 15, 5, 7, 7, 8, 11, 14, 14, 12, 6 - * s'(16..31)= 9, 13, 15, 7, 12, 8, 9, 11, 7, 7, 12, 7, 6, 15, 13, 11 - * s'(32..47)= 9, 7, 15, 11, 8, 6, 6, 14, 12, 13, 5, 14, 13, 13, 7, 5 - * s'(48..63)= 15, 5, 8, 11, 14, 14, 6, 14, 6, 9, 12, 9, 12, 5, 15, 8 - * s'(64..79)= 8, 5, 12, 9, 12, 5, 14, 6, 8, 13, 6, 5, 15, 13, 11, 11 - * - * - * initial value (hexadecimal) - * - * h0 = 0x67452301; h1 = 0xEFCDAB89; h2 = 0x98BADCFE; h3 = 0x10325476; - * h4 = 0xC3D2E1F0; - * - * - * RIPEMD-160: pseudo-code - * - * It is assumed that the message after padding consists of t 16-word blocks - * that will be denoted with X[i][j], with 0 <= i <= t-1 and 0 <= j <= 15. - * The symbol [+] denotes addition modulo 2**32 and rol_s denotes cyclic left - * shift (rotate) over s positions. - * - * - * for i := 0 to t-1 { - * A := h0; B := h1; C := h2; D = h3; E = h4; - * A' := h0; B' := h1; C' := h2; D' = h3; E' = h4; - * for j := 0 to 79 { - * T := rol_s(j)(A [+] f(j, B, C, D) [+] X[i][r(j)] [+] K(j)) [+] E; - * A := E; E := D; D := rol_10(C); C := B; B := T; - * T := rol_s'(j)(A' [+] f(79-j, B', C', D') [+] X[i][r'(j)] - [+] K'(j)) [+] E'; - * A' := E'; E' := D'; D' := rol_10(C'); C' := B'; B' := T; - * } - * T := h1 [+] C [+] D'; h1 := h2 [+] D [+] E'; h2 := h3 [+] E [+] A'; - * h3 := h4 [+] A [+] B'; h4 := h0 [+] B [+] C'; h0 := T; - * } - */ - -/* Some examples: - * "" 9c1185a5c5e9fc54612808977ee8f548b2258d31 - * "a" 0bdc9d2d256b3ee9daae347be6f4dc835a467ffe - * "abc" 8eb208f7e05d987a9b044a8e98c6b087f15a0bfc - * "message digest" 5d0689ef49d2fae572b881b123a85ffa21595f36 - * "a...z" f71c27109c692c1b56bbdceb5b9d2865b3708dbc - * "abcdbcde...nopq" 12a053384a9c0c88e405a06c27dcf49ada62eb2b - * "A...Za...z0...9" b0e20b6e3116640286ed3a87a5713079b21f5189 - * 8 times "1234567890" 9b752e45573d4b39f4dbd3323cab82bf63326bfb - * 1 million times "a" 52783243c1697bdbe16d37f97f68f08325dc1528 - */ - - -void -_gcry_rmd160_init (void *context) -{ - RMD160_CONTEXT *hd = context; - - hd->h0 = 0x67452301; - hd->h1 = 0xEFCDAB89; - hd->h2 = 0x98BADCFE; - hd->h3 = 0x10325476; - hd->h4 = 0xC3D2E1F0; - hd->nblocks = 0; - hd->count = 0; -} - - - -/**************** - * Transform the message X which consists of 16 32-bit-words - */ -static void -transform ( RMD160_CONTEXT *hd, const unsigned char *data ) -{ - register u32 a,b,c,d,e; - u32 aa,bb,cc,dd,ee,t; -#ifdef WORDS_BIGENDIAN - u32 x[16]; - { - int i; - byte *p2; - const byte *p1; - for (i=0, p1=data, p2=(byte*)x; i < 16; i++, p2 += 4 ) - { - p2[3] = *p1++; - p2[2] = *p1++; - p2[1] = *p1++; - p2[0] = *p1++; - } - } -#else - /* This version is better because it is always aligned; - * The performance penalty on a 586-100 is about 6% which - * is acceptable - because the data is more local it might - * also be possible that this is faster on some machines. - * This function (when compiled with -02 on gcc 2.7.2) - * executes on a 586-100 (39.73 bogomips) at about 1900kb/sec; - * [measured with a 4MB data and "gpgm --print-md rmd160"] */ - u32 x[16]; - memcpy( x, data, 64 ); -#endif - - -#define K0 0x00000000 -#define K1 0x5A827999 -#define K2 0x6ED9EBA1 -#define K3 0x8F1BBCDC -#define K4 0xA953FD4E -#define KK0 0x50A28BE6 -#define KK1 0x5C4DD124 -#define KK2 0x6D703EF3 -#define KK3 0x7A6D76E9 -#define KK4 0x00000000 -#define F0(x,y,z) ( (x) ^ (y) ^ (z) ) -#define F1(x,y,z) ( ((x) & (y)) | (~(x) & (z)) ) -#define F2(x,y,z) ( ((x) | ~(y)) ^ (z) ) -#define F3(x,y,z) ( ((x) & (z)) | ((y) & ~(z)) ) -#define F4(x,y,z) ( (x) ^ ((y) | ~(z)) ) -#define R(a,b,c,d,e,f,k,r,s) do { t = a + f(b,c,d) + k + x[r]; \ - a = rol(t,s) + e; \ - c = rol(c,10); \ - } while(0) - - /* left lane */ - a = hd->h0; - b = hd->h1; - c = hd->h2; - d = hd->h3; - e = hd->h4; - R( a, b, c, d, e, F0, K0, 0, 11 ); - R( e, a, b, c, d, F0, K0, 1, 14 ); - R( d, e, a, b, c, F0, K0, 2, 15 ); - R( c, d, e, a, b, F0, K0, 3, 12 ); - R( b, c, d, e, a, F0, K0, 4, 5 ); - R( a, b, c, d, e, F0, K0, 5, 8 ); - R( e, a, b, c, d, F0, K0, 6, 7 ); - R( d, e, a, b, c, F0, K0, 7, 9 ); - R( c, d, e, a, b, F0, K0, 8, 11 ); - R( b, c, d, e, a, F0, K0, 9, 13 ); - R( a, b, c, d, e, F0, K0, 10, 14 ); - R( e, a, b, c, d, F0, K0, 11, 15 ); - R( d, e, a, b, c, F0, K0, 12, 6 ); - R( c, d, e, a, b, F0, K0, 13, 7 ); - R( b, c, d, e, a, F0, K0, 14, 9 ); - R( a, b, c, d, e, F0, K0, 15, 8 ); - R( e, a, b, c, d, F1, K1, 7, 7 ); - R( d, e, a, b, c, F1, K1, 4, 6 ); - R( c, d, e, a, b, F1, K1, 13, 8 ); - R( b, c, d, e, a, F1, K1, 1, 13 ); - R( a, b, c, d, e, F1, K1, 10, 11 ); - R( e, a, b, c, d, F1, K1, 6, 9 ); - R( d, e, a, b, c, F1, K1, 15, 7 ); - R( c, d, e, a, b, F1, K1, 3, 15 ); - R( b, c, d, e, a, F1, K1, 12, 7 ); - R( a, b, c, d, e, F1, K1, 0, 12 ); - R( e, a, b, c, d, F1, K1, 9, 15 ); - R( d, e, a, b, c, F1, K1, 5, 9 ); - R( c, d, e, a, b, F1, K1, 2, 11 ); - R( b, c, d, e, a, F1, K1, 14, 7 ); - R( a, b, c, d, e, F1, K1, 11, 13 ); - R( e, a, b, c, d, F1, K1, 8, 12 ); - R( d, e, a, b, c, F2, K2, 3, 11 ); - R( c, d, e, a, b, F2, K2, 10, 13 ); - R( b, c, d, e, a, F2, K2, 14, 6 ); - R( a, b, c, d, e, F2, K2, 4, 7 ); - R( e, a, b, c, d, F2, K2, 9, 14 ); - R( d, e, a, b, c, F2, K2, 15, 9 ); - R( c, d, e, a, b, F2, K2, 8, 13 ); - R( b, c, d, e, a, F2, K2, 1, 15 ); - R( a, b, c, d, e, F2, K2, 2, 14 ); - R( e, a, b, c, d, F2, K2, 7, 8 ); - R( d, e, a, b, c, F2, K2, 0, 13 ); - R( c, d, e, a, b, F2, K2, 6, 6 ); - R( b, c, d, e, a, F2, K2, 13, 5 ); - R( a, b, c, d, e, F2, K2, 11, 12 ); - R( e, a, b, c, d, F2, K2, 5, 7 ); - R( d, e, a, b, c, F2, K2, 12, 5 ); - R( c, d, e, a, b, F3, K3, 1, 11 ); - R( b, c, d, e, a, F3, K3, 9, 12 ); - R( a, b, c, d, e, F3, K3, 11, 14 ); - R( e, a, b, c, d, F3, K3, 10, 15 ); - R( d, e, a, b, c, F3, K3, 0, 14 ); - R( c, d, e, a, b, F3, K3, 8, 15 ); - R( b, c, d, e, a, F3, K3, 12, 9 ); - R( a, b, c, d, e, F3, K3, 4, 8 ); - R( e, a, b, c, d, F3, K3, 13, 9 ); - R( d, e, a, b, c, F3, K3, 3, 14 ); - R( c, d, e, a, b, F3, K3, 7, 5 ); - R( b, c, d, e, a, F3, K3, 15, 6 ); - R( a, b, c, d, e, F3, K3, 14, 8 ); - R( e, a, b, c, d, F3, K3, 5, 6 ); - R( d, e, a, b, c, F3, K3, 6, 5 ); - R( c, d, e, a, b, F3, K3, 2, 12 ); - R( b, c, d, e, a, F4, K4, 4, 9 ); - R( a, b, c, d, e, F4, K4, 0, 15 ); - R( e, a, b, c, d, F4, K4, 5, 5 ); - R( d, e, a, b, c, F4, K4, 9, 11 ); - R( c, d, e, a, b, F4, K4, 7, 6 ); - R( b, c, d, e, a, F4, K4, 12, 8 ); - R( a, b, c, d, e, F4, K4, 2, 13 ); - R( e, a, b, c, d, F4, K4, 10, 12 ); - R( d, e, a, b, c, F4, K4, 14, 5 ); - R( c, d, e, a, b, F4, K4, 1, 12 ); - R( b, c, d, e, a, F4, K4, 3, 13 ); - R( a, b, c, d, e, F4, K4, 8, 14 ); - R( e, a, b, c, d, F4, K4, 11, 11 ); - R( d, e, a, b, c, F4, K4, 6, 8 ); - R( c, d, e, a, b, F4, K4, 15, 5 ); - R( b, c, d, e, a, F4, K4, 13, 6 ); - - aa = a; bb = b; cc = c; dd = d; ee = e; - - /* right lane */ - a = hd->h0; - b = hd->h1; - c = hd->h2; - d = hd->h3; - e = hd->h4; - R( a, b, c, d, e, F4, KK0, 5, 8); - R( e, a, b, c, d, F4, KK0, 14, 9); - R( d, e, a, b, c, F4, KK0, 7, 9); - R( c, d, e, a, b, F4, KK0, 0, 11); - R( b, c, d, e, a, F4, KK0, 9, 13); - R( a, b, c, d, e, F4, KK0, 2, 15); - R( e, a, b, c, d, F4, KK0, 11, 15); - R( d, e, a, b, c, F4, KK0, 4, 5); - R( c, d, e, a, b, F4, KK0, 13, 7); - R( b, c, d, e, a, F4, KK0, 6, 7); - R( a, b, c, d, e, F4, KK0, 15, 8); - R( e, a, b, c, d, F4, KK0, 8, 11); - R( d, e, a, b, c, F4, KK0, 1, 14); - R( c, d, e, a, b, F4, KK0, 10, 14); - R( b, c, d, e, a, F4, KK0, 3, 12); - R( a, b, c, d, e, F4, KK0, 12, 6); - R( e, a, b, c, d, F3, KK1, 6, 9); - R( d, e, a, b, c, F3, KK1, 11, 13); - R( c, d, e, a, b, F3, KK1, 3, 15); - R( b, c, d, e, a, F3, KK1, 7, 7); - R( a, b, c, d, e, F3, KK1, 0, 12); - R( e, a, b, c, d, F3, KK1, 13, 8); - R( d, e, a, b, c, F3, KK1, 5, 9); - R( c, d, e, a, b, F3, KK1, 10, 11); - R( b, c, d, e, a, F3, KK1, 14, 7); - R( a, b, c, d, e, F3, KK1, 15, 7); - R( e, a, b, c, d, F3, KK1, 8, 12); - R( d, e, a, b, c, F3, KK1, 12, 7); - R( c, d, e, a, b, F3, KK1, 4, 6); - R( b, c, d, e, a, F3, KK1, 9, 15); - R( a, b, c, d, e, F3, KK1, 1, 13); - R( e, a, b, c, d, F3, KK1, 2, 11); - R( d, e, a, b, c, F2, KK2, 15, 9); - R( c, d, e, a, b, F2, KK2, 5, 7); - R( b, c, d, e, a, F2, KK2, 1, 15); - R( a, b, c, d, e, F2, KK2, 3, 11); - R( e, a, b, c, d, F2, KK2, 7, 8); - R( d, e, a, b, c, F2, KK2, 14, 6); - R( c, d, e, a, b, F2, KK2, 6, 6); - R( b, c, d, e, a, F2, KK2, 9, 14); - R( a, b, c, d, e, F2, KK2, 11, 12); - R( e, a, b, c, d, F2, KK2, 8, 13); - R( d, e, a, b, c, F2, KK2, 12, 5); - R( c, d, e, a, b, F2, KK2, 2, 14); - R( b, c, d, e, a, F2, KK2, 10, 13); - R( a, b, c, d, e, F2, KK2, 0, 13); - R( e, a, b, c, d, F2, KK2, 4, 7); - R( d, e, a, b, c, F2, KK2, 13, 5); - R( c, d, e, a, b, F1, KK3, 8, 15); - R( b, c, d, e, a, F1, KK3, 6, 5); - R( a, b, c, d, e, F1, KK3, 4, 8); - R( e, a, b, c, d, F1, KK3, 1, 11); - R( d, e, a, b, c, F1, KK3, 3, 14); - R( c, d, e, a, b, F1, KK3, 11, 14); - R( b, c, d, e, a, F1, KK3, 15, 6); - R( a, b, c, d, e, F1, KK3, 0, 14); - R( e, a, b, c, d, F1, KK3, 5, 6); - R( d, e, a, b, c, F1, KK3, 12, 9); - R( c, d, e, a, b, F1, KK3, 2, 12); - R( b, c, d, e, a, F1, KK3, 13, 9); - R( a, b, c, d, e, F1, KK3, 9, 12); - R( e, a, b, c, d, F1, KK3, 7, 5); - R( d, e, a, b, c, F1, KK3, 10, 15); - R( c, d, e, a, b, F1, KK3, 14, 8); - R( b, c, d, e, a, F0, KK4, 12, 8); - R( a, b, c, d, e, F0, KK4, 15, 5); - R( e, a, b, c, d, F0, KK4, 10, 12); - R( d, e, a, b, c, F0, KK4, 4, 9); - R( c, d, e, a, b, F0, KK4, 1, 12); - R( b, c, d, e, a, F0, KK4, 5, 5); - R( a, b, c, d, e, F0, KK4, 8, 14); - R( e, a, b, c, d, F0, KK4, 7, 6); - R( d, e, a, b, c, F0, KK4, 6, 8); - R( c, d, e, a, b, F0, KK4, 2, 13); - R( b, c, d, e, a, F0, KK4, 13, 6); - R( a, b, c, d, e, F0, KK4, 14, 5); - R( e, a, b, c, d, F0, KK4, 0, 15); - R( d, e, a, b, c, F0, KK4, 3, 13); - R( c, d, e, a, b, F0, KK4, 9, 11); - R( b, c, d, e, a, F0, KK4, 11, 11); - - - t = hd->h1 + d + cc; - hd->h1 = hd->h2 + e + dd; - hd->h2 = hd->h3 + a + ee; - hd->h3 = hd->h4 + b + aa; - hd->h4 = hd->h0 + c + bb; - hd->h0 = t; -} - - -/* Update the message digest with the contents - * of INBUF with length INLEN. - */ -static void -rmd160_write ( void *context, const void *inbuf_arg, size_t inlen) -{ - const unsigned char *inbuf = inbuf_arg; - RMD160_CONTEXT *hd = context; - - if( hd->count == 64 ) /* flush the buffer */ - { - transform( hd, hd->buf ); - _gcry_burn_stack (108+5*sizeof(void*)); - hd->count = 0; - hd->nblocks++; - } - if( !inbuf ) - return; - if( hd->count ) - { - for( ; inlen && hd->count < 64; inlen-- ) - hd->buf[hd->count++] = *inbuf++; - rmd160_write( hd, NULL, 0 ); - if( !inlen ) - return; - } - - while( inlen >= 64 ) - { - transform( hd, inbuf ); - hd->count = 0; - hd->nblocks++; - inlen -= 64; - inbuf += 64; - } - _gcry_burn_stack (108+5*sizeof(void*)); - for( ; inlen && hd->count < 64; inlen-- ) - hd->buf[hd->count++] = *inbuf++; -} - -/**************** - * Apply the rmd160 transform function on the buffer which must have - * a length 64 bytes. Do not use this function together with the - * other functions, use rmd160_init to initialize internal variables. - * Returns: 16 bytes in buffer with the mixed contentes of buffer. - */ - - -/* The routine terminates the computation - */ - -static void -rmd160_final( void *context ) -{ - RMD160_CONTEXT *hd = context; - u32 t, msb, lsb; - byte *p; - - rmd160_write(hd, NULL, 0); /* flush */; - - t = hd->nblocks; - /* multiply by 64 to make a byte count */ - lsb = t << 6; - msb = t >> 26; - /* add the count */ - t = lsb; - if( (lsb += hd->count) < t ) - msb++; - /* multiply by 8 to make a bit count */ - t = lsb; - lsb <<= 3; - msb <<= 3; - msb |= t >> 29; - - if( hd->count < 56 ) /* enough room */ - { - hd->buf[hd->count++] = 0x80; /* pad */ - while( hd->count < 56 ) - hd->buf[hd->count++] = 0; /* pad */ - } - else /* need one extra block */ - { - hd->buf[hd->count++] = 0x80; /* pad character */ - while( hd->count < 64 ) - hd->buf[hd->count++] = 0; - rmd160_write(hd, NULL, 0); /* flush */; - memset(hd->buf, 0, 56 ); /* fill next block with zeroes */ - } - /* append the 64 bit count */ - hd->buf[56] = lsb ; - hd->buf[57] = lsb >> 8; - hd->buf[58] = lsb >> 16; - hd->buf[59] = lsb >> 24; - hd->buf[60] = msb ; - hd->buf[61] = msb >> 8; - hd->buf[62] = msb >> 16; - hd->buf[63] = msb >> 24; - transform( hd, hd->buf ); - _gcry_burn_stack (108+5*sizeof(void*)); - - p = hd->buf; -#ifdef WORDS_BIGENDIAN -#define X(a) do { *p++ = hd->h##a ; *p++ = hd->h##a >> 8; \ - *p++ = hd->h##a >> 16; *p++ = hd->h##a >> 24; } while(0) -#else /* little endian */ -#define X(a) do { *(u32*)p = hd->h##a ; p += 4; } while(0) -#endif - X(0); - X(1); - X(2); - X(3); - X(4); -#undef X -} - -static byte * -rmd160_read( void *context ) -{ - RMD160_CONTEXT *hd = context; - - return hd->buf; -} - - - -/**************** - * Shortcut functions which puts the hash value of the supplied buffer - * into outbuf which must have a size of 20 bytes. - */ - -static byte asn[15] = /* Object ID is 1.3.36.3.2.1 */ - { 0x30, 0x21, 0x30, 0x09, 0x06, 0x05, 0x2b, 0x24, 0x03, - 0x02, 0x01, 0x05, 0x00, 0x04, 0x14 }; - -static gcry_md_oid_spec_t oid_spec_rmd160[] = - { - /* rsaSignatureWithripemd160 */ - { "1.3.36.3.3.1.2" }, - /* TeleTrust hash algorithm. */ - { "1.3.36.3.2.1" }, - { NULL } - }; - -gcry_md_spec_t _gcry_digest_spec_rmd160 = - { - "RIPEMD160", asn, DIM (asn), oid_spec_rmd160, 20, - _gcry_rmd160_init, rmd160_write, rmd160_final, rmd160_read, - sizeof (RMD160_CONTEXT) - , -#ifdef GRUB_UTIL - .modname = "gcry_rmd160", -#endif - .blocksize = 64 - }; - - -GRUB_MOD_INIT(gcry_rmd160) -{ - COMPILE_TIME_ASSERT(sizeof (RMD160_CONTEXT) <= GRUB_CRYPTO_MAX_MD_CONTEXT_SIZE); - grub_md_register (&_gcry_digest_spec_rmd160); -} - -GRUB_MOD_FINI(gcry_rmd160) -{ - grub_md_unregister (&_gcry_digest_spec_rmd160); -} diff --git a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/rsa.c b/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/rsa.c deleted file mode 100644 index 6e0187b9f..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/rsa.c +++ /dev/null @@ -1,395 +0,0 @@ -/* This file was automatically imported with - import_gcry.py. Please don't modify it */ -#include -GRUB_MOD_LICENSE ("GPLv3+"); -/* rsa.c - RSA implementation - * Copyright (C) 1997, 1998, 1999 by Werner Koch (dd9jn) - * Copyright (C) 2000, 2001, 2002, 2003, 2008 Free Software Foundation, Inc. - * - * This file is part of Libgcrypt. - * - * Libgcrypt is free software; you can redistribute it and/or modify - * it under the terms of the GNU Lesser General Public License as - * published by the Free Software Foundation; either version 2.1 of - * the License, or (at your option) any later version. - * - * Libgcrypt is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this program; if not, see . - */ - -/* This code uses an algorithm protected by U.S. Patent #4,405,829 - which expired on September 20, 2000. The patent holder placed that - patent into the public domain on Sep 6th, 2000. -*/ - - -#include "g10lib.h" -#include "mpi.h" -#include "cipher.h" - - -typedef struct -{ - gcry_mpi_t n; /* modulus */ - gcry_mpi_t e; /* exponent */ -} RSA_public_key; - - -typedef struct -{ - gcry_mpi_t n; /* public modulus */ - gcry_mpi_t e; /* public exponent */ - gcry_mpi_t d; /* exponent */ - gcry_mpi_t p; /* prime p. */ - gcry_mpi_t q; /* prime q. */ - gcry_mpi_t u; /* inverse of p mod q. */ -} RSA_secret_key; - - -/* A sample 1024 bit RSA key used for the selftests. */ -/* A sample 1024 bit RSA key used for the selftests (public only). */ - - - - -static int check_secret_key (RSA_secret_key *sk); -static void public (gcry_mpi_t output, gcry_mpi_t input, RSA_public_key *skey); - - -/* Check that a freshly generated key actually works. Returns 0 on success. */ - - -/* Callback used by the prime generation to test whether the exponent - is suitable. Returns 0 if the test has been passed. */ - -/**************** - * Generate a key pair with a key of size NBITS. - * USE_E = 0 let Libcgrypt decide what exponent to use. - * = 1 request the use of a "secure" exponent; this is required by some - * specification to be 65537. - * > 2 Use this public exponent. If the given exponent - * is not odd one is internally added to it. - * TRANSIENT_KEY: If true, generate the primes using the standard RNG. - * Returns: 2 structures filled with all needed values - */ - - -/* Helper for generate_x931. */ - - -/* Helper for generate_x931. */ - - - -/* Variant of the standard key generation code using the algorithm - from X9.31. Using this algorithm has the advantage that the - generation can be made deterministic which is required for CAVS - testing. */ - - -/**************** - * Test whether the secret key is valid. - * Returns: true if this is a valid key. - */ -static int -check_secret_key( RSA_secret_key *sk ) -{ - int rc; - gcry_mpi_t temp = mpi_alloc( mpi_get_nlimbs(sk->p)*2 ); - - mpi_mul(temp, sk->p, sk->q ); - rc = mpi_cmp( temp, sk->n ); - mpi_free(temp); - return !rc; -} - - - -/**************** - * Public key operation. Encrypt INPUT with PKEY and put result into OUTPUT. - * - * c = m^e mod n - * - * Where c is OUTPUT, m is INPUT and e,n are elements of PKEY. - */ -static void -public(gcry_mpi_t output, gcry_mpi_t input, RSA_public_key *pkey ) -{ - if( output == input ) /* powm doesn't like output and input the same */ - { - gcry_mpi_t x = mpi_alloc( mpi_get_nlimbs(input)*2 ); - mpi_powm( x, input, pkey->e, pkey->n ); - mpi_set(output, x); - mpi_free(x); - } - else - mpi_powm( output, input, pkey->e, pkey->n ); -} - -#if 0 -static void -stronger_key_check ( RSA_secret_key *skey ) -{ - gcry_mpi_t t = mpi_alloc_secure ( 0 ); - gcry_mpi_t t1 = mpi_alloc_secure ( 0 ); - gcry_mpi_t t2 = mpi_alloc_secure ( 0 ); - gcry_mpi_t phi = mpi_alloc_secure ( 0 ); - - /* check that n == p * q */ - mpi_mul( t, skey->p, skey->q); - if (mpi_cmp( t, skey->n) ) - log_info ( "RSA Oops: n != p * q\n" ); - - /* check that p is less than q */ - if( mpi_cmp( skey->p, skey->q ) > 0 ) - { - log_info ("RSA Oops: p >= q - fixed\n"); - _gcry_mpi_swap ( skey->p, skey->q); - } - - /* check that e divides neither p-1 nor q-1 */ - mpi_sub_ui(t, skey->p, 1 ); - mpi_fdiv_r(t, t, skey->e ); - if ( !mpi_cmp_ui( t, 0) ) - log_info ( "RSA Oops: e divides p-1\n" ); - mpi_sub_ui(t, skey->q, 1 ); - mpi_fdiv_r(t, t, skey->e ); - if ( !mpi_cmp_ui( t, 0) ) - log_info ( "RSA Oops: e divides q-1\n" ); - - /* check that d is correct */ - mpi_sub_ui( t1, skey->p, 1 ); - mpi_sub_ui( t2, skey->q, 1 ); - mpi_mul( phi, t1, t2 ); - gcry_mpi_gcd(t, t1, t2); - mpi_fdiv_q(t, phi, t); - mpi_invm(t, skey->e, t ); - if ( mpi_cmp(t, skey->d ) ) - { - log_info ( "RSA Oops: d is wrong - fixed\n"); - mpi_set (skey->d, t); - _gcry_log_mpidump (" fixed d", skey->d); - } - - /* check for correctness of u */ - mpi_invm(t, skey->p, skey->q ); - if ( mpi_cmp(t, skey->u ) ) - { - log_info ( "RSA Oops: u is wrong - fixed\n"); - mpi_set (skey->u, t); - _gcry_log_mpidump (" fixed u", skey->u); - } - - log_info ( "RSA secret key check finished\n"); - - mpi_free (t); - mpi_free (t1); - mpi_free (t2); - mpi_free (phi); -} -#endif - - - -/**************** - * Secret key operation. Encrypt INPUT with SKEY and put result into OUTPUT. - * - * m = c^d mod n - * - * Or faster: - * - * m1 = c ^ (d mod (p-1)) mod p - * m2 = c ^ (d mod (q-1)) mod q - * h = u * (m2 - m1) mod q - * m = m1 + h * p - * - * Where m is OUTPUT, c is INPUT and d,n,p,q,u are elements of SKEY. - */ - - - -/* Perform RSA blinding. */ - -/* Undo RSA blinding. */ - -/********************************************* - ************** interface ****************** - *********************************************/ - - - -#define rsa_generate 0 - -static gcry_err_code_t -rsa_check_secret_key (int algo, gcry_mpi_t *skey) -{ - gcry_err_code_t err = GPG_ERR_NO_ERROR; - RSA_secret_key sk; - - (void)algo; - - sk.n = skey[0]; - sk.e = skey[1]; - sk.d = skey[2]; - sk.p = skey[3]; - sk.q = skey[4]; - sk.u = skey[5]; - - if (!sk.p || !sk.q || !sk.u) - err = GPG_ERR_NO_OBJ; /* To check the key we need the optional - parameters. */ - else if (!check_secret_key (&sk)) - err = GPG_ERR_BAD_SECKEY; - - return err; -} - - -static gcry_err_code_t -rsa_encrypt (int algo, gcry_mpi_t *resarr, gcry_mpi_t data, - gcry_mpi_t *pkey, int flags) -{ - RSA_public_key pk; - - (void)algo; - (void)flags; - - pk.n = pkey[0]; - pk.e = pkey[1]; - resarr[0] = mpi_alloc (mpi_get_nlimbs (pk.n)); - public (resarr[0], data, &pk); - - return GPG_ERR_NO_ERROR; -} - - -#define rsa_decrypt 0 - -#define rsa_sign 0 - -static gcry_err_code_t -rsa_verify (int algo, gcry_mpi_t hash, gcry_mpi_t *data, gcry_mpi_t *pkey, - int (*cmp) (void *opaque, gcry_mpi_t tmp), - void *opaquev) -{ - RSA_public_key pk; - gcry_mpi_t result; - gcry_err_code_t rc; - - (void)algo; - (void)cmp; - (void)opaquev; - - pk.n = pkey[0]; - pk.e = pkey[1]; - result = gcry_mpi_new ( 160 ); - public( result, data[0], &pk ); -#ifdef IS_DEVELOPMENT_VERSION - if (DBG_CIPHER) - { - log_mpidump ("rsa verify result:", result ); - log_mpidump (" hash:", hash ); - } -#endif /*IS_DEVELOPMENT_VERSION*/ - if (cmp) - rc = (*cmp) (opaquev, result); - else - rc = mpi_cmp (result, hash) ? GPG_ERR_BAD_SIGNATURE : GPG_ERR_NO_ERROR; - gcry_mpi_release (result); - - return rc; -} - - -static unsigned int -rsa_get_nbits (int algo, gcry_mpi_t *pkey) -{ - (void)algo; - - return mpi_get_nbits (pkey[0]); -} - - -/* Compute a keygrip. MD is the hash context which we are going to - update. KEYPARAM is an S-expression with the key parameters, this - is usually a public key but may also be a secret key. An example - of such an S-expression is: - - (rsa - (n #00B...#) - (e #010001#)) - - PKCS-15 says that for RSA only the modulus should be hashed - - however, it is not clear whether this is meant to use the raw bytes - (assuming this is an unsigned integer) or whether the DER required - 0 should be prefixed. We hash the raw bytes. */ - - - - -/* - Self-test section. - */ - - - - -/* Given an S-expression ENCR_DATA of the form: - - (enc-val - (rsa - (a a-value))) - - as returned by gcry_pk_decrypt, return the the A-VALUE. On error, - return NULL. */ - - - - - - -/* Run a full self-test for ALGO and return 0 on success. */ - - - - -static const char *rsa_names[] = - { - "rsa", - "openpgp-rsa", - "oid.1.2.840.113549.1.1.1", - NULL, - }; - -gcry_pk_spec_t _gcry_pubkey_spec_rsa = - { - "RSA", rsa_names, - "ne", "nedpqu", "a", "s", "n", - GCRY_PK_USAGE_SIGN | GCRY_PK_USAGE_ENCR, - rsa_generate, - rsa_check_secret_key, - rsa_encrypt, - rsa_decrypt, - rsa_sign, - rsa_verify, - rsa_get_nbits, -#ifdef GRUB_UTIL - .modname = "gcry_rsa", -#endif - }; - - -GRUB_MOD_INIT(gcry_rsa) -{ - grub_crypto_pk_rsa = &_gcry_pubkey_spec_rsa; -} - -GRUB_MOD_FINI(gcry_rsa) -{ - grub_crypto_pk_rsa = 0; -} diff --git a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/seed.c b/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/seed.c deleted file mode 100644 index 087e27bf9..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/seed.c +++ /dev/null @@ -1,461 +0,0 @@ -/* This file was automatically imported with - import_gcry.py. Please don't modify it */ -#include -GRUB_MOD_LICENSE ("GPLv3+"); -/* SEED for libgcrypt - * Copyright (C) 2006 Free Software Foundation, Inc. - * - * This file is part of Libgcrypt. - * - * Libgcrypt is free software; you can redistribute it and/or modify - * it under the terms of the GNU Lesser General Public License as - * published by the Free Software Foundation; either version 2.1 of - * the License, or (at your option) any later version. - * - * Libgcrypt is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA - * - * -- - * This implementation was provided for libgcrypt in public domain - * by Hye-Shik Chang , July 2006. - */ - - -#include "types.h" /* for byte and u32 typedefs */ -#include "g10lib.h" -#include "cipher.h" - -#define NUMKC 16 - -#define GETU32(pt) (((u32)(pt)[0] << 24) ^ ((u32)(pt)[1] << 16) ^ \ - ((u32)(pt)[2] << 8) ^ ((u32)(pt)[3])) -#define PUTU32(ct, st) { (ct)[0] = (byte)((st) >> 24); \ - (ct)[1] = (byte)((st) >> 16); \ - (ct)[2] = (byte)((st) >> 8); \ - (ct)[3] = (byte)(st); } - -union wordbuf -{ - u32 w; - byte b[4]; -}; - -#ifdef WORDS_BIGENDIAN -#define b0 b[3] -#define b1 b[2] -#define b2 b[1] -#define b3 b[0] -#else -#define b0 b[0] -#define b1 b[1] -#define b2 b[2] -#define b3 b[3] -#endif - - -typedef struct -{ - u32 keyschedule[32]; -} SEED_context; - -static const u32 SS0[256] = { - 0x2989a1a8, 0x05858184, 0x16c6d2d4, 0x13c3d3d0, 0x14445054, 0x1d0d111c, - 0x2c8ca0ac, 0x25052124, 0x1d4d515c, 0x03434340, 0x18081018, 0x1e0e121c, - 0x11415150, 0x3cccf0fc, 0x0acac2c8, 0x23436360, 0x28082028, 0x04444044, - 0x20002020, 0x1d8d919c, 0x20c0e0e0, 0x22c2e2e0, 0x08c8c0c8, 0x17071314, - 0x2585a1a4, 0x0f8f838c, 0x03030300, 0x3b4b7378, 0x3b8bb3b8, 0x13031310, - 0x12c2d2d0, 0x2ecee2ec, 0x30407070, 0x0c8c808c, 0x3f0f333c, 0x2888a0a8, - 0x32023230, 0x1dcdd1dc, 0x36c6f2f4, 0x34447074, 0x2ccce0ec, 0x15859194, - 0x0b0b0308, 0x17475354, 0x1c4c505c, 0x1b4b5358, 0x3d8db1bc, 0x01010100, - 0x24042024, 0x1c0c101c, 0x33437370, 0x18889098, 0x10001010, 0x0cccc0cc, - 0x32c2f2f0, 0x19c9d1d8, 0x2c0c202c, 0x27c7e3e4, 0x32427270, 0x03838380, - 0x1b8b9398, 0x11c1d1d0, 0x06868284, 0x09c9c1c8, 0x20406060, 0x10405050, - 0x2383a3a0, 0x2bcbe3e8, 0x0d0d010c, 0x3686b2b4, 0x1e8e929c, 0x0f4f434c, - 0x3787b3b4, 0x1a4a5258, 0x06c6c2c4, 0x38487078, 0x2686a2a4, 0x12021210, - 0x2f8fa3ac, 0x15c5d1d4, 0x21416160, 0x03c3c3c0, 0x3484b0b4, 0x01414140, - 0x12425250, 0x3d4d717c, 0x0d8d818c, 0x08080008, 0x1f0f131c, 0x19899198, - 0x00000000, 0x19091118, 0x04040004, 0x13435350, 0x37c7f3f4, 0x21c1e1e0, - 0x3dcdf1fc, 0x36467274, 0x2f0f232c, 0x27072324, 0x3080b0b0, 0x0b8b8388, - 0x0e0e020c, 0x2b8ba3a8, 0x2282a2a0, 0x2e4e626c, 0x13839390, 0x0d4d414c, - 0x29496168, 0x3c4c707c, 0x09090108, 0x0a0a0208, 0x3f8fb3bc, 0x2fcfe3ec, - 0x33c3f3f0, 0x05c5c1c4, 0x07878384, 0x14041014, 0x3ecef2fc, 0x24446064, - 0x1eced2dc, 0x2e0e222c, 0x0b4b4348, 0x1a0a1218, 0x06060204, 0x21012120, - 0x2b4b6368, 0x26466264, 0x02020200, 0x35c5f1f4, 0x12829290, 0x0a8a8288, - 0x0c0c000c, 0x3383b3b0, 0x3e4e727c, 0x10c0d0d0, 0x3a4a7278, 0x07474344, - 0x16869294, 0x25c5e1e4, 0x26062224, 0x00808080, 0x2d8da1ac, 0x1fcfd3dc, - 0x2181a1a0, 0x30003030, 0x37073334, 0x2e8ea2ac, 0x36063234, 0x15051114, - 0x22022220, 0x38083038, 0x34c4f0f4, 0x2787a3a4, 0x05454144, 0x0c4c404c, - 0x01818180, 0x29c9e1e8, 0x04848084, 0x17879394, 0x35053134, 0x0bcbc3c8, - 0x0ecec2cc, 0x3c0c303c, 0x31417170, 0x11011110, 0x07c7c3c4, 0x09898188, - 0x35457174, 0x3bcbf3f8, 0x1acad2d8, 0x38c8f0f8, 0x14849094, 0x19495158, - 0x02828280, 0x04c4c0c4, 0x3fcff3fc, 0x09494148, 0x39093138, 0x27476364, - 0x00c0c0c0, 0x0fcfc3cc, 0x17c7d3d4, 0x3888b0b8, 0x0f0f030c, 0x0e8e828c, - 0x02424240, 0x23032320, 0x11819190, 0x2c4c606c, 0x1bcbd3d8, 0x2484a0a4, - 0x34043034, 0x31c1f1f0, 0x08484048, 0x02c2c2c0, 0x2f4f636c, 0x3d0d313c, - 0x2d0d212c, 0x00404040, 0x3e8eb2bc, 0x3e0e323c, 0x3c8cb0bc, 0x01c1c1c0, - 0x2a8aa2a8, 0x3a8ab2b8, 0x0e4e424c, 0x15455154, 0x3b0b3338, 0x1cccd0dc, - 0x28486068, 0x3f4f737c, 0x1c8c909c, 0x18c8d0d8, 0x0a4a4248, 0x16465254, - 0x37477374, 0x2080a0a0, 0x2dcde1ec, 0x06464244, 0x3585b1b4, 0x2b0b2328, - 0x25456164, 0x3acaf2f8, 0x23c3e3e0, 0x3989b1b8, 0x3181b1b0, 0x1f8f939c, - 0x1e4e525c, 0x39c9f1f8, 0x26c6e2e4, 0x3282b2b0, 0x31013130, 0x2acae2e8, - 0x2d4d616c, 0x1f4f535c, 0x24c4e0e4, 0x30c0f0f0, 0x0dcdc1cc, 0x08888088, - 0x16061214, 0x3a0a3238, 0x18485058, 0x14c4d0d4, 0x22426260, 0x29092128, - 0x07070304, 0x33033330, 0x28c8e0e8, 0x1b0b1318, 0x05050104, 0x39497178, - 0x10809090, 0x2a4a6268, 0x2a0a2228, 0x1a8a9298, -}; - -static const u32 SS1[256] = { - 0x38380830, 0xe828c8e0, 0x2c2d0d21, 0xa42686a2, 0xcc0fcfc3, 0xdc1eced2, - 0xb03383b3, 0xb83888b0, 0xac2f8fa3, 0x60204060, 0x54154551, 0xc407c7c3, - 0x44044440, 0x6c2f4f63, 0x682b4b63, 0x581b4b53, 0xc003c3c3, 0x60224262, - 0x30330333, 0xb43585b1, 0x28290921, 0xa02080a0, 0xe022c2e2, 0xa42787a3, - 0xd013c3d3, 0x90118191, 0x10110111, 0x04060602, 0x1c1c0c10, 0xbc3c8cb0, - 0x34360632, 0x480b4b43, 0xec2fcfe3, 0x88088880, 0x6c2c4c60, 0xa82888a0, - 0x14170713, 0xc404c4c0, 0x14160612, 0xf434c4f0, 0xc002c2c2, 0x44054541, - 0xe021c1e1, 0xd416c6d2, 0x3c3f0f33, 0x3c3d0d31, 0x8c0e8e82, 0x98188890, - 0x28280820, 0x4c0e4e42, 0xf436c6f2, 0x3c3e0e32, 0xa42585a1, 0xf839c9f1, - 0x0c0d0d01, 0xdc1fcfd3, 0xd818c8d0, 0x282b0b23, 0x64264662, 0x783a4a72, - 0x24270723, 0x2c2f0f23, 0xf031c1f1, 0x70324272, 0x40024242, 0xd414c4d0, - 0x40014141, 0xc000c0c0, 0x70334373, 0x64274763, 0xac2c8ca0, 0x880b8b83, - 0xf437c7f3, 0xac2d8da1, 0x80008080, 0x1c1f0f13, 0xc80acac2, 0x2c2c0c20, - 0xa82a8aa2, 0x34340430, 0xd012c2d2, 0x080b0b03, 0xec2ecee2, 0xe829c9e1, - 0x5c1d4d51, 0x94148490, 0x18180810, 0xf838c8f0, 0x54174753, 0xac2e8ea2, - 0x08080800, 0xc405c5c1, 0x10130313, 0xcc0dcdc1, 0x84068682, 0xb83989b1, - 0xfc3fcff3, 0x7c3d4d71, 0xc001c1c1, 0x30310131, 0xf435c5f1, 0x880a8a82, - 0x682a4a62, 0xb03181b1, 0xd011c1d1, 0x20200020, 0xd417c7d3, 0x00020202, - 0x20220222, 0x04040400, 0x68284860, 0x70314171, 0x04070703, 0xd81bcbd3, - 0x9c1d8d91, 0x98198991, 0x60214161, 0xbc3e8eb2, 0xe426c6e2, 0x58194951, - 0xdc1dcdd1, 0x50114151, 0x90108090, 0xdc1cccd0, 0x981a8a92, 0xa02383a3, - 0xa82b8ba3, 0xd010c0d0, 0x80018181, 0x0c0f0f03, 0x44074743, 0x181a0a12, - 0xe023c3e3, 0xec2ccce0, 0x8c0d8d81, 0xbc3f8fb3, 0x94168692, 0x783b4b73, - 0x5c1c4c50, 0xa02282a2, 0xa02181a1, 0x60234363, 0x20230323, 0x4c0d4d41, - 0xc808c8c0, 0x9c1e8e92, 0x9c1c8c90, 0x383a0a32, 0x0c0c0c00, 0x2c2e0e22, - 0xb83a8ab2, 0x6c2e4e62, 0x9c1f8f93, 0x581a4a52, 0xf032c2f2, 0x90128292, - 0xf033c3f3, 0x48094941, 0x78384870, 0xcc0cccc0, 0x14150511, 0xf83bcbf3, - 0x70304070, 0x74354571, 0x7c3f4f73, 0x34350531, 0x10100010, 0x00030303, - 0x64244460, 0x6c2d4d61, 0xc406c6c2, 0x74344470, 0xd415c5d1, 0xb43484b0, - 0xe82acae2, 0x08090901, 0x74364672, 0x18190911, 0xfc3ecef2, 0x40004040, - 0x10120212, 0xe020c0e0, 0xbc3d8db1, 0x04050501, 0xf83acaf2, 0x00010101, - 0xf030c0f0, 0x282a0a22, 0x5c1e4e52, 0xa82989a1, 0x54164652, 0x40034343, - 0x84058581, 0x14140410, 0x88098981, 0x981b8b93, 0xb03080b0, 0xe425c5e1, - 0x48084840, 0x78394971, 0x94178793, 0xfc3cccf0, 0x1c1e0e12, 0x80028282, - 0x20210121, 0x8c0c8c80, 0x181b0b13, 0x5c1f4f53, 0x74374773, 0x54144450, - 0xb03282b2, 0x1c1d0d11, 0x24250521, 0x4c0f4f43, 0x00000000, 0x44064642, - 0xec2dcde1, 0x58184850, 0x50124252, 0xe82bcbe3, 0x7c3e4e72, 0xd81acad2, - 0xc809c9c1, 0xfc3dcdf1, 0x30300030, 0x94158591, 0x64254561, 0x3c3c0c30, - 0xb43686b2, 0xe424c4e0, 0xb83b8bb3, 0x7c3c4c70, 0x0c0e0e02, 0x50104050, - 0x38390931, 0x24260622, 0x30320232, 0x84048480, 0x68294961, 0x90138393, - 0x34370733, 0xe427c7e3, 0x24240420, 0xa42484a0, 0xc80bcbc3, 0x50134353, - 0x080a0a02, 0x84078783, 0xd819c9d1, 0x4c0c4c40, 0x80038383, 0x8c0f8f83, - 0xcc0ecec2, 0x383b0b33, 0x480a4a42, 0xb43787b3, -}; - -static const u32 SS2[256] = { - 0xa1a82989, 0x81840585, 0xd2d416c6, 0xd3d013c3, 0x50541444, 0x111c1d0d, - 0xa0ac2c8c, 0x21242505, 0x515c1d4d, 0x43400343, 0x10181808, 0x121c1e0e, - 0x51501141, 0xf0fc3ccc, 0xc2c80aca, 0x63602343, 0x20282808, 0x40440444, - 0x20202000, 0x919c1d8d, 0xe0e020c0, 0xe2e022c2, 0xc0c808c8, 0x13141707, - 0xa1a42585, 0x838c0f8f, 0x03000303, 0x73783b4b, 0xb3b83b8b, 0x13101303, - 0xd2d012c2, 0xe2ec2ece, 0x70703040, 0x808c0c8c, 0x333c3f0f, 0xa0a82888, - 0x32303202, 0xd1dc1dcd, 0xf2f436c6, 0x70743444, 0xe0ec2ccc, 0x91941585, - 0x03080b0b, 0x53541747, 0x505c1c4c, 0x53581b4b, 0xb1bc3d8d, 0x01000101, - 0x20242404, 0x101c1c0c, 0x73703343, 0x90981888, 0x10101000, 0xc0cc0ccc, - 0xf2f032c2, 0xd1d819c9, 0x202c2c0c, 0xe3e427c7, 0x72703242, 0x83800383, - 0x93981b8b, 0xd1d011c1, 0x82840686, 0xc1c809c9, 0x60602040, 0x50501040, - 0xa3a02383, 0xe3e82bcb, 0x010c0d0d, 0xb2b43686, 0x929c1e8e, 0x434c0f4f, - 0xb3b43787, 0x52581a4a, 0xc2c406c6, 0x70783848, 0xa2a42686, 0x12101202, - 0xa3ac2f8f, 0xd1d415c5, 0x61602141, 0xc3c003c3, 0xb0b43484, 0x41400141, - 0x52501242, 0x717c3d4d, 0x818c0d8d, 0x00080808, 0x131c1f0f, 0x91981989, - 0x00000000, 0x11181909, 0x00040404, 0x53501343, 0xf3f437c7, 0xe1e021c1, - 0xf1fc3dcd, 0x72743646, 0x232c2f0f, 0x23242707, 0xb0b03080, 0x83880b8b, - 0x020c0e0e, 0xa3a82b8b, 0xa2a02282, 0x626c2e4e, 0x93901383, 0x414c0d4d, - 0x61682949, 0x707c3c4c, 0x01080909, 0x02080a0a, 0xb3bc3f8f, 0xe3ec2fcf, - 0xf3f033c3, 0xc1c405c5, 0x83840787, 0x10141404, 0xf2fc3ece, 0x60642444, - 0xd2dc1ece, 0x222c2e0e, 0x43480b4b, 0x12181a0a, 0x02040606, 0x21202101, - 0x63682b4b, 0x62642646, 0x02000202, 0xf1f435c5, 0x92901282, 0x82880a8a, - 0x000c0c0c, 0xb3b03383, 0x727c3e4e, 0xd0d010c0, 0x72783a4a, 0x43440747, - 0x92941686, 0xe1e425c5, 0x22242606, 0x80800080, 0xa1ac2d8d, 0xd3dc1fcf, - 0xa1a02181, 0x30303000, 0x33343707, 0xa2ac2e8e, 0x32343606, 0x11141505, - 0x22202202, 0x30383808, 0xf0f434c4, 0xa3a42787, 0x41440545, 0x404c0c4c, - 0x81800181, 0xe1e829c9, 0x80840484, 0x93941787, 0x31343505, 0xc3c80bcb, - 0xc2cc0ece, 0x303c3c0c, 0x71703141, 0x11101101, 0xc3c407c7, 0x81880989, - 0x71743545, 0xf3f83bcb, 0xd2d81aca, 0xf0f838c8, 0x90941484, 0x51581949, - 0x82800282, 0xc0c404c4, 0xf3fc3fcf, 0x41480949, 0x31383909, 0x63642747, - 0xc0c000c0, 0xc3cc0fcf, 0xd3d417c7, 0xb0b83888, 0x030c0f0f, 0x828c0e8e, - 0x42400242, 0x23202303, 0x91901181, 0x606c2c4c, 0xd3d81bcb, 0xa0a42484, - 0x30343404, 0xf1f031c1, 0x40480848, 0xc2c002c2, 0x636c2f4f, 0x313c3d0d, - 0x212c2d0d, 0x40400040, 0xb2bc3e8e, 0x323c3e0e, 0xb0bc3c8c, 0xc1c001c1, - 0xa2a82a8a, 0xb2b83a8a, 0x424c0e4e, 0x51541545, 0x33383b0b, 0xd0dc1ccc, - 0x60682848, 0x737c3f4f, 0x909c1c8c, 0xd0d818c8, 0x42480a4a, 0x52541646, - 0x73743747, 0xa0a02080, 0xe1ec2dcd, 0x42440646, 0xb1b43585, 0x23282b0b, - 0x61642545, 0xf2f83aca, 0xe3e023c3, 0xb1b83989, 0xb1b03181, 0x939c1f8f, - 0x525c1e4e, 0xf1f839c9, 0xe2e426c6, 0xb2b03282, 0x31303101, 0xe2e82aca, - 0x616c2d4d, 0x535c1f4f, 0xe0e424c4, 0xf0f030c0, 0xc1cc0dcd, 0x80880888, - 0x12141606, 0x32383a0a, 0x50581848, 0xd0d414c4, 0x62602242, 0x21282909, - 0x03040707, 0x33303303, 0xe0e828c8, 0x13181b0b, 0x01040505, 0x71783949, - 0x90901080, 0x62682a4a, 0x22282a0a, 0x92981a8a, -}; - -static const u32 SS3[256] = { - 0x08303838, 0xc8e0e828, 0x0d212c2d, 0x86a2a426, 0xcfc3cc0f, 0xced2dc1e, - 0x83b3b033, 0x88b0b838, 0x8fa3ac2f, 0x40606020, 0x45515415, 0xc7c3c407, - 0x44404404, 0x4f636c2f, 0x4b63682b, 0x4b53581b, 0xc3c3c003, 0x42626022, - 0x03333033, 0x85b1b435, 0x09212829, 0x80a0a020, 0xc2e2e022, 0x87a3a427, - 0xc3d3d013, 0x81919011, 0x01111011, 0x06020406, 0x0c101c1c, 0x8cb0bc3c, - 0x06323436, 0x4b43480b, 0xcfe3ec2f, 0x88808808, 0x4c606c2c, 0x88a0a828, - 0x07131417, 0xc4c0c404, 0x06121416, 0xc4f0f434, 0xc2c2c002, 0x45414405, - 0xc1e1e021, 0xc6d2d416, 0x0f333c3f, 0x0d313c3d, 0x8e828c0e, 0x88909818, - 0x08202828, 0x4e424c0e, 0xc6f2f436, 0x0e323c3e, 0x85a1a425, 0xc9f1f839, - 0x0d010c0d, 0xcfd3dc1f, 0xc8d0d818, 0x0b23282b, 0x46626426, 0x4a72783a, - 0x07232427, 0x0f232c2f, 0xc1f1f031, 0x42727032, 0x42424002, 0xc4d0d414, - 0x41414001, 0xc0c0c000, 0x43737033, 0x47636427, 0x8ca0ac2c, 0x8b83880b, - 0xc7f3f437, 0x8da1ac2d, 0x80808000, 0x0f131c1f, 0xcac2c80a, 0x0c202c2c, - 0x8aa2a82a, 0x04303434, 0xc2d2d012, 0x0b03080b, 0xcee2ec2e, 0xc9e1e829, - 0x4d515c1d, 0x84909414, 0x08101818, 0xc8f0f838, 0x47535417, 0x8ea2ac2e, - 0x08000808, 0xc5c1c405, 0x03131013, 0xcdc1cc0d, 0x86828406, 0x89b1b839, - 0xcff3fc3f, 0x4d717c3d, 0xc1c1c001, 0x01313031, 0xc5f1f435, 0x8a82880a, - 0x4a62682a, 0x81b1b031, 0xc1d1d011, 0x00202020, 0xc7d3d417, 0x02020002, - 0x02222022, 0x04000404, 0x48606828, 0x41717031, 0x07030407, 0xcbd3d81b, - 0x8d919c1d, 0x89919819, 0x41616021, 0x8eb2bc3e, 0xc6e2e426, 0x49515819, - 0xcdd1dc1d, 0x41515011, 0x80909010, 0xccd0dc1c, 0x8a92981a, 0x83a3a023, - 0x8ba3a82b, 0xc0d0d010, 0x81818001, 0x0f030c0f, 0x47434407, 0x0a12181a, - 0xc3e3e023, 0xcce0ec2c, 0x8d818c0d, 0x8fb3bc3f, 0x86929416, 0x4b73783b, - 0x4c505c1c, 0x82a2a022, 0x81a1a021, 0x43636023, 0x03232023, 0x4d414c0d, - 0xc8c0c808, 0x8e929c1e, 0x8c909c1c, 0x0a32383a, 0x0c000c0c, 0x0e222c2e, - 0x8ab2b83a, 0x4e626c2e, 0x8f939c1f, 0x4a52581a, 0xc2f2f032, 0x82929012, - 0xc3f3f033, 0x49414809, 0x48707838, 0xccc0cc0c, 0x05111415, 0xcbf3f83b, - 0x40707030, 0x45717435, 0x4f737c3f, 0x05313435, 0x00101010, 0x03030003, - 0x44606424, 0x4d616c2d, 0xc6c2c406, 0x44707434, 0xc5d1d415, 0x84b0b434, - 0xcae2e82a, 0x09010809, 0x46727436, 0x09111819, 0xcef2fc3e, 0x40404000, - 0x02121012, 0xc0e0e020, 0x8db1bc3d, 0x05010405, 0xcaf2f83a, 0x01010001, - 0xc0f0f030, 0x0a22282a, 0x4e525c1e, 0x89a1a829, 0x46525416, 0x43434003, - 0x85818405, 0x04101414, 0x89818809, 0x8b93981b, 0x80b0b030, 0xc5e1e425, - 0x48404808, 0x49717839, 0x87939417, 0xccf0fc3c, 0x0e121c1e, 0x82828002, - 0x01212021, 0x8c808c0c, 0x0b13181b, 0x4f535c1f, 0x47737437, 0x44505414, - 0x82b2b032, 0x0d111c1d, 0x05212425, 0x4f434c0f, 0x00000000, 0x46424406, - 0xcde1ec2d, 0x48505818, 0x42525012, 0xcbe3e82b, 0x4e727c3e, 0xcad2d81a, - 0xc9c1c809, 0xcdf1fc3d, 0x00303030, 0x85919415, 0x45616425, 0x0c303c3c, - 0x86b2b436, 0xc4e0e424, 0x8bb3b83b, 0x4c707c3c, 0x0e020c0e, 0x40505010, - 0x09313839, 0x06222426, 0x02323032, 0x84808404, 0x49616829, 0x83939013, - 0x07333437, 0xc7e3e427, 0x04202424, 0x84a0a424, 0xcbc3c80b, 0x43535013, - 0x0a02080a, 0x87838407, 0xc9d1d819, 0x4c404c0c, 0x83838003, 0x8f838c0f, - 0xcec2cc0e, 0x0b33383b, 0x4a42480a, 0x87b3b437, -}; - -static const u32 KC[NUMKC] = { - 0x9e3779b9, 0x3c6ef373, 0x78dde6e6, 0xf1bbcdcc, - 0xe3779b99, 0xc6ef3733, 0x8dde6e67, 0x1bbcdccf, - 0x3779b99e, 0x6ef3733c, 0xdde6e678, 0xbbcdccf1, - 0x779b99e3, 0xef3733c6, 0xde6e678d, 0xbcdccf1b, -}; - - - -/* Perform the key setup. - */ -static gcry_err_code_t -do_setkey (SEED_context *ctx, const byte *key, const unsigned keylen) -{ - static int initialized = 0; - static const char *selftest_failed=0; - u32 x1, x2, x3, x4; - union wordbuf t0, t1; - u32 *keyout = ctx->keyschedule; - int i; - - if (!initialized) - { - initialized = 1; - selftest_failed = selftest (); - if( selftest_failed ) - log_error ("%s\n", selftest_failed ); - } - if (selftest_failed) - return GPG_ERR_SELFTEST_FAILED; - - if (keylen != 16) - return GPG_ERR_INV_KEYLEN; - - x1 = GETU32 (key); - x2 = GETU32 (key+4); - x3 = GETU32 (key+8); - x4 = GETU32 (key+12); - - for (i = 0; i < NUMKC; i++) - { - t0.w = x1 + x3 - KC[i]; - t1.w = x2 + KC[i] - x4; - *(keyout++) = SS0[t0.b0] ^ SS1[t0.b1] ^ SS2[t0.b2] ^ SS3[t0.b3]; - *(keyout++) = SS0[t1.b0] ^ SS1[t1.b1] ^ SS2[t1.b2] ^ SS3[t1.b3]; - - if (i % 2 == 0) - { - t0.w = x1; - x1 = (x1>>8) ^ (x2<<24); - x2 = (x2>>8) ^ (t0.w<<24); - } - else - { - t0.w = x3; - x3 = (x3<<8) ^ (x4>>24); - x4 = (x4<<8) ^ (t0.w>>24); - } - } - - return 0; -} - -static gcry_err_code_t -seed_setkey (void *context, const byte *key, const unsigned keylen) -{ - SEED_context *ctx = context; - - int rc = do_setkey (ctx, key, keylen); - _gcry_burn_stack (4*6 + sizeof(void*)*2 + sizeof(int)*2); - return rc; -} - - - -#define OP(X1, X2, X3, X4, rbase) \ - t0.w = X3 ^ ctx->keyschedule[rbase]; \ - t1.w = X4 ^ ctx->keyschedule[rbase+1]; \ - t1.w ^= t0.w; \ - t1.w = SS0[t1.b0] ^ SS1[t1.b1] ^ SS2[t1.b2] ^ SS3[t1.b3]; \ - t0.w += t1.w; \ - t0.w = SS0[t0.b0] ^ SS1[t0.b1] ^ SS2[t0.b2] ^ SS3[t0.b3]; \ - t1.w += t0.w; \ - t1.w = SS0[t1.b0] ^ SS1[t1.b1] ^ SS2[t1.b2] ^ SS3[t1.b3]; \ - t0.w += t1.w; \ - X1 ^= t0.w; \ - X2 ^= t1.w; - -/* Encrypt one block. inbuf and outbuf may be the same. */ -static void -do_encrypt (const SEED_context *ctx, byte *outbuf, const byte *inbuf) -{ - u32 x1, x2, x3, x4; - union wordbuf t0, t1; - - x1 = GETU32 (inbuf); - x2 = GETU32 (inbuf+4); - x3 = GETU32 (inbuf+8); - x4 = GETU32 (inbuf+12); - - OP (x1, x2, x3, x4, 0); - OP (x3, x4, x1, x2, 2); - OP (x1, x2, x3, x4, 4); - OP (x3, x4, x1, x2, 6); - OP (x1, x2, x3, x4, 8); - OP (x3, x4, x1, x2, 10); - OP (x1, x2, x3, x4, 12); - OP (x3, x4, x1, x2, 14); - OP (x1, x2, x3, x4, 16); - OP (x3, x4, x1, x2, 18); - OP (x1, x2, x3, x4, 20); - OP (x3, x4, x1, x2, 22); - OP (x1, x2, x3, x4, 24); - OP (x3, x4, x1, x2, 26); - OP (x1, x2, x3, x4, 28); - OP (x3, x4, x1, x2, 30); - - PUTU32 (outbuf, x3); - PUTU32 (outbuf+4, x4); - PUTU32 (outbuf+8, x1); - PUTU32 (outbuf+12, x2); -} - -static void -seed_encrypt (void *context, byte *outbuf, const byte *inbuf) -{ - SEED_context *ctx = context; - - do_encrypt (ctx, outbuf, inbuf); - _gcry_burn_stack (4*6); -} - - - -/* Decrypt one block. inbuf and outbuf may be the same. */ -static void -do_decrypt (SEED_context *ctx, byte *outbuf, const byte *inbuf) -{ - u32 x1, x2, x3, x4; - union wordbuf t0, t1; - - x1 = GETU32 (inbuf); - x2 = GETU32 (inbuf+4); - x3 = GETU32 (inbuf+8); - x4 = GETU32 (inbuf+12); - - OP (x1, x2, x3, x4, 30); - OP (x3, x4, x1, x2, 28); - OP (x1, x2, x3, x4, 26); - OP (x3, x4, x1, x2, 24); - OP (x1, x2, x3, x4, 22); - OP (x3, x4, x1, x2, 20); - OP (x1, x2, x3, x4, 18); - OP (x3, x4, x1, x2, 16); - OP (x1, x2, x3, x4, 14); - OP (x3, x4, x1, x2, 12); - OP (x1, x2, x3, x4, 10); - OP (x3, x4, x1, x2, 8); - OP (x1, x2, x3, x4, 6); - OP (x3, x4, x1, x2, 4); - OP (x1, x2, x3, x4, 2); - OP (x3, x4, x1, x2, 0); - - PUTU32 (outbuf, x3); - PUTU32 (outbuf+4, x4); - PUTU32 (outbuf+8, x1); - PUTU32 (outbuf+12, x2); -} - -static void -seed_decrypt (void *context, byte *outbuf, const byte *inbuf) -{ - SEED_context *ctx = context; - - do_decrypt (ctx, outbuf, inbuf); - _gcry_burn_stack (4*6); -} - - -/* Test a single encryption and decryption with each key size. */ - - - -static gcry_cipher_oid_spec_t seed_oids[] = - { - { "1.2.410.200004.1.3", GCRY_CIPHER_MODE_ECB }, - { "1.2.410.200004.1.4", GCRY_CIPHER_MODE_CBC }, - { "1.2.410.200004.1.5", GCRY_CIPHER_MODE_CFB }, - { "1.2.410.200004.1.6", GCRY_CIPHER_MODE_OFB }, - { NULL } - }; - -gcry_cipher_spec_t _gcry_cipher_spec_seed = - { - "SEED", NULL, seed_oids, 16, 128, sizeof (SEED_context), - seed_setkey, seed_encrypt, seed_decrypt, -#ifdef GRUB_UTIL - .modname = "gcry_seed", -#endif - }; - - -GRUB_MOD_INIT(gcry_seed) -{ - grub_cipher_register (&_gcry_cipher_spec_seed); -} - -GRUB_MOD_FINI(gcry_seed) -{ - grub_cipher_unregister (&_gcry_cipher_spec_seed); -} diff --git a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/serpent.c b/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/serpent.c deleted file mode 100644 index 75be7b876..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/serpent.c +++ /dev/null @@ -1,903 +0,0 @@ -/* This file was automatically imported with - import_gcry.py. Please don't modify it */ -#include -GRUB_MOD_LICENSE ("GPLv3+"); -/* serpent.c - Implementation of the Serpent encryption algorithm. - * Copyright (C) 2003, 2004, 2005 Free Software Foundation, Inc. - * - * This file is part of Libgcrypt. - * - * Libgcrypt is free software; you can redistribute it and/or modify - * it under the terms of the GNU Lesser general Public License as - * published by the Free Software Foundation; either version 2.1 of - * the License, or (at your option) any later version. - * - * Libgcrypt is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA - * 02111-1307, USA. - */ - - - -#include "types.h" -#include "g10lib.h" -#include "cipher.h" -#include "bithelp.h" - -/* Number of rounds per Serpent encrypt/decrypt operation. */ -#define ROUNDS 32 - -/* Magic number, used during generating of the subkeys. */ -#define PHI 0x9E3779B9 - -/* Serpent works on 128 bit blocks. */ -typedef u32 serpent_block_t[4]; - -/* Serpent key, provided by the user. If the original key is shorter - than 256 bits, it is padded. */ -typedef u32 serpent_key_t[8]; - -/* The key schedule consists of 33 128 bit subkeys. */ -typedef u32 serpent_subkeys_t[ROUNDS + 1][4]; - -/* A Serpent context. */ -typedef struct serpent_context -{ - serpent_subkeys_t keys; /* Generated subkeys. */ -} serpent_context_t; - - -/* A prototype. */ -static const char *serpent_test (void); - - -#define byte_swap_32(x) \ - (0 \ - | (((x) & 0xff000000) >> 24) | (((x) & 0x00ff0000) >> 8) \ - | (((x) & 0x0000ff00) << 8) | (((x) & 0x000000ff) << 24)) - -/* These are the S-Boxes of Serpent. They are copied from Serpents - reference implementation (the optimized one, contained in - `floppy2') and are therefore: - - Copyright (C) 1998 Ross Anderson, Eli Biham, Lars Knudsen. - - To quote the Serpent homepage - (http://www.cl.cam.ac.uk/~rja14/serpent.html): - - "Serpent is now completely in the public domain, and we impose no - restrictions on its use. This was announced on the 21st August at - the First AES Candidate Conference. The optimised implementations - in the submission package are now under the GNU PUBLIC LICENSE - (GPL), although some comments in the code still say otherwise. You - are welcome to use Serpent for any application." */ - -#define SBOX0(a, b, c, d, w, x, y, z) \ - { \ - u32 t02, t03, t05, t06, t07, t08, t09; \ - u32 t11, t12, t13, t14, t15, t17, t01; \ - t01 = b ^ c ; \ - t02 = a | d ; \ - t03 = a ^ b ; \ - z = t02 ^ t01; \ - t05 = c | z ; \ - t06 = a ^ d ; \ - t07 = b | c ; \ - t08 = d & t05; \ - t09 = t03 & t07; \ - y = t09 ^ t08; \ - t11 = t09 & y ; \ - t12 = c ^ d ; \ - t13 = t07 ^ t11; \ - t14 = b & t06; \ - t15 = t06 ^ t13; \ - w = ~ t15; \ - t17 = w ^ t14; \ - x = t12 ^ t17; \ - } - -#define SBOX0_INVERSE(a, b, c, d, w, x, y, z) \ - { \ - u32 t02, t03, t04, t05, t06, t08, t09, t10; \ - u32 t12, t13, t14, t15, t17, t18, t01; \ - t01 = c ^ d ; \ - t02 = a | b ; \ - t03 = b | c ; \ - t04 = c & t01; \ - t05 = t02 ^ t01; \ - t06 = a | t04; \ - y = ~ t05; \ - t08 = b ^ d ; \ - t09 = t03 & t08; \ - t10 = d | y ; \ - x = t09 ^ t06; \ - t12 = a | t05; \ - t13 = x ^ t12; \ - t14 = t03 ^ t10; \ - t15 = a ^ c ; \ - z = t14 ^ t13; \ - t17 = t05 & t13; \ - t18 = t14 | t17; \ - w = t15 ^ t18; \ - } - -#define SBOX1(a, b, c, d, w, x, y, z) \ - { \ - u32 t02, t03, t04, t05, t06, t07, t08; \ - u32 t10, t11, t12, t13, t16, t17, t01; \ - t01 = a | d ; \ - t02 = c ^ d ; \ - t03 = ~ b ; \ - t04 = a ^ c ; \ - t05 = a | t03; \ - t06 = d & t04; \ - t07 = t01 & t02; \ - t08 = b | t06; \ - y = t02 ^ t05; \ - t10 = t07 ^ t08; \ - t11 = t01 ^ t10; \ - t12 = y ^ t11; \ - t13 = b & d ; \ - z = ~ t10; \ - x = t13 ^ t12; \ - t16 = t10 | x ; \ - t17 = t05 & t16; \ - w = c ^ t17; \ - } - -#define SBOX1_INVERSE(a, b, c, d, w, x, y, z) \ - { \ - u32 t02, t03, t04, t05, t06, t07, t08; \ - u32 t09, t10, t11, t14, t15, t17, t01; \ - t01 = a ^ b ; \ - t02 = b | d ; \ - t03 = a & c ; \ - t04 = c ^ t02; \ - t05 = a | t04; \ - t06 = t01 & t05; \ - t07 = d | t03; \ - t08 = b ^ t06; \ - t09 = t07 ^ t06; \ - t10 = t04 | t03; \ - t11 = d & t08; \ - y = ~ t09; \ - x = t10 ^ t11; \ - t14 = a | y ; \ - t15 = t06 ^ x ; \ - z = t01 ^ t04; \ - t17 = c ^ t15; \ - w = t14 ^ t17; \ - } - -#define SBOX2(a, b, c, d, w, x, y, z) \ - { \ - u32 t02, t03, t05, t06, t07, t08; \ - u32 t09, t10, t12, t13, t14, t01; \ - t01 = a | c ; \ - t02 = a ^ b ; \ - t03 = d ^ t01; \ - w = t02 ^ t03; \ - t05 = c ^ w ; \ - t06 = b ^ t05; \ - t07 = b | t05; \ - t08 = t01 & t06; \ - t09 = t03 ^ t07; \ - t10 = t02 | t09; \ - x = t10 ^ t08; \ - t12 = a | d ; \ - t13 = t09 ^ x ; \ - t14 = b ^ t13; \ - z = ~ t09; \ - y = t12 ^ t14; \ - } - -#define SBOX2_INVERSE(a, b, c, d, w, x, y, z) \ - { \ - u32 t02, t03, t04, t06, t07, t08, t09; \ - u32 t10, t11, t12, t15, t16, t17, t01; \ - t01 = a ^ d ; \ - t02 = c ^ d ; \ - t03 = a & c ; \ - t04 = b | t02; \ - w = t01 ^ t04; \ - t06 = a | c ; \ - t07 = d | w ; \ - t08 = ~ d ; \ - t09 = b & t06; \ - t10 = t08 | t03; \ - t11 = b & t07; \ - t12 = t06 & t02; \ - z = t09 ^ t10; \ - x = t12 ^ t11; \ - t15 = c & z ; \ - t16 = w ^ x ; \ - t17 = t10 ^ t15; \ - y = t16 ^ t17; \ - } - -#define SBOX3(a, b, c, d, w, x, y, z) \ - { \ - u32 t02, t03, t04, t05, t06, t07, t08; \ - u32 t09, t10, t11, t13, t14, t15, t01; \ - t01 = a ^ c ; \ - t02 = a | d ; \ - t03 = a & d ; \ - t04 = t01 & t02; \ - t05 = b | t03; \ - t06 = a & b ; \ - t07 = d ^ t04; \ - t08 = c | t06; \ - t09 = b ^ t07; \ - t10 = d & t05; \ - t11 = t02 ^ t10; \ - z = t08 ^ t09; \ - t13 = d | z ; \ - t14 = a | t07; \ - t15 = b & t13; \ - y = t08 ^ t11; \ - w = t14 ^ t15; \ - x = t05 ^ t04; \ - } - -#define SBOX3_INVERSE(a, b, c, d, w, x, y, z) \ - { \ - u32 t02, t03, t04, t05, t06, t07, t09; \ - u32 t11, t12, t13, t14, t16, t01; \ - t01 = c | d ; \ - t02 = a | d ; \ - t03 = c ^ t02; \ - t04 = b ^ t02; \ - t05 = a ^ d ; \ - t06 = t04 & t03; \ - t07 = b & t01; \ - y = t05 ^ t06; \ - t09 = a ^ t03; \ - w = t07 ^ t03; \ - t11 = w | t05; \ - t12 = t09 & t11; \ - t13 = a & y ; \ - t14 = t01 ^ t05; \ - x = b ^ t12; \ - t16 = b | t13; \ - z = t14 ^ t16; \ - } - -#define SBOX4(a, b, c, d, w, x, y, z) \ - { \ - u32 t02, t03, t04, t05, t06, t08, t09; \ - u32 t10, t11, t12, t13, t14, t15, t16, t01; \ - t01 = a | b ; \ - t02 = b | c ; \ - t03 = a ^ t02; \ - t04 = b ^ d ; \ - t05 = d | t03; \ - t06 = d & t01; \ - z = t03 ^ t06; \ - t08 = z & t04; \ - t09 = t04 & t05; \ - t10 = c ^ t06; \ - t11 = b & c ; \ - t12 = t04 ^ t08; \ - t13 = t11 | t03; \ - t14 = t10 ^ t09; \ - t15 = a & t05; \ - t16 = t11 | t12; \ - y = t13 ^ t08; \ - x = t15 ^ t16; \ - w = ~ t14; \ - } - -#define SBOX4_INVERSE(a, b, c, d, w, x, y, z) \ - { \ - u32 t02, t03, t04, t05, t06, t07, t09; \ - u32 t10, t11, t12, t13, t15, t01; \ - t01 = b | d ; \ - t02 = c | d ; \ - t03 = a & t01; \ - t04 = b ^ t02; \ - t05 = c ^ d ; \ - t06 = ~ t03; \ - t07 = a & t04; \ - x = t05 ^ t07; \ - t09 = x | t06; \ - t10 = a ^ t07; \ - t11 = t01 ^ t09; \ - t12 = d ^ t04; \ - t13 = c | t10; \ - z = t03 ^ t12; \ - t15 = a ^ t04; \ - y = t11 ^ t13; \ - w = t15 ^ t09; \ - } - -#define SBOX5(a, b, c, d, w, x, y, z) \ - { \ - u32 t02, t03, t04, t05, t07, t08, t09; \ - u32 t10, t11, t12, t13, t14, t01; \ - t01 = b ^ d ; \ - t02 = b | d ; \ - t03 = a & t01; \ - t04 = c ^ t02; \ - t05 = t03 ^ t04; \ - w = ~ t05; \ - t07 = a ^ t01; \ - t08 = d | w ; \ - t09 = b | t05; \ - t10 = d ^ t08; \ - t11 = b | t07; \ - t12 = t03 | w ; \ - t13 = t07 | t10; \ - t14 = t01 ^ t11; \ - y = t09 ^ t13; \ - x = t07 ^ t08; \ - z = t12 ^ t14; \ - } - -#define SBOX5_INVERSE(a, b, c, d, w, x, y, z) \ - { \ - u32 t02, t03, t04, t05, t07, t08, t09; \ - u32 t10, t12, t13, t15, t16, t01; \ - t01 = a & d ; \ - t02 = c ^ t01; \ - t03 = a ^ d ; \ - t04 = b & t02; \ - t05 = a & c ; \ - w = t03 ^ t04; \ - t07 = a & w ; \ - t08 = t01 ^ w ; \ - t09 = b | t05; \ - t10 = ~ b ; \ - x = t08 ^ t09; \ - t12 = t10 | t07; \ - t13 = w | x ; \ - z = t02 ^ t12; \ - t15 = t02 ^ t13; \ - t16 = b ^ d ; \ - y = t16 ^ t15; \ - } - -#define SBOX6(a, b, c, d, w, x, y, z) \ - { \ - u32 t02, t03, t04, t05, t07, t08, t09, t10; \ - u32 t11, t12, t13, t15, t17, t18, t01; \ - t01 = a & d ; \ - t02 = b ^ c ; \ - t03 = a ^ d ; \ - t04 = t01 ^ t02; \ - t05 = b | c ; \ - x = ~ t04; \ - t07 = t03 & t05; \ - t08 = b & x ; \ - t09 = a | c ; \ - t10 = t07 ^ t08; \ - t11 = b | d ; \ - t12 = c ^ t11; \ - t13 = t09 ^ t10; \ - y = ~ t13; \ - t15 = x & t03; \ - z = t12 ^ t07; \ - t17 = a ^ b ; \ - t18 = y ^ t15; \ - w = t17 ^ t18; \ - } - -#define SBOX6_INVERSE(a, b, c, d, w, x, y, z) \ - { \ - u32 t02, t03, t04, t05, t06, t07, t08, t09; \ - u32 t12, t13, t14, t15, t16, t17, t01; \ - t01 = a ^ c ; \ - t02 = ~ c ; \ - t03 = b & t01; \ - t04 = b | t02; \ - t05 = d | t03; \ - t06 = b ^ d ; \ - t07 = a & t04; \ - t08 = a | t02; \ - t09 = t07 ^ t05; \ - x = t06 ^ t08; \ - w = ~ t09; \ - t12 = b & w ; \ - t13 = t01 & t05; \ - t14 = t01 ^ t12; \ - t15 = t07 ^ t13; \ - t16 = d | t02; \ - t17 = a ^ x ; \ - z = t17 ^ t15; \ - y = t16 ^ t14; \ - } - -#define SBOX7(a, b, c, d, w, x, y, z) \ - { \ - u32 t02, t03, t04, t05, t06, t08, t09, t10; \ - u32 t11, t13, t14, t15, t16, t17, t01; \ - t01 = a & c ; \ - t02 = ~ d ; \ - t03 = a & t02; \ - t04 = b | t01; \ - t05 = a & b ; \ - t06 = c ^ t04; \ - z = t03 ^ t06; \ - t08 = c | z ; \ - t09 = d | t05; \ - t10 = a ^ t08; \ - t11 = t04 & z ; \ - x = t09 ^ t10; \ - t13 = b ^ x ; \ - t14 = t01 ^ x ; \ - t15 = c ^ t05; \ - t16 = t11 | t13; \ - t17 = t02 | t14; \ - w = t15 ^ t17; \ - y = a ^ t16; \ - } - -#define SBOX7_INVERSE(a, b, c, d, w, x, y, z) \ - { \ - u32 t02, t03, t04, t06, t07, t08, t09; \ - u32 t10, t11, t13, t14, t15, t16, t01; \ - t01 = a & b ; \ - t02 = a | b ; \ - t03 = c | t01; \ - t04 = d & t02; \ - z = t03 ^ t04; \ - t06 = b ^ t04; \ - t07 = d ^ z ; \ - t08 = ~ t07; \ - t09 = t06 | t08; \ - t10 = b ^ d ; \ - t11 = a | d ; \ - x = a ^ t09; \ - t13 = c ^ t06; \ - t14 = c & t11; \ - t15 = d | x ; \ - t16 = t01 | t10; \ - w = t13 ^ t15; \ - y = t14 ^ t16; \ - } - -/* XOR BLOCK1 into BLOCK0. */ -#define BLOCK_XOR(block0, block1) \ - { \ - block0[0] ^= block1[0]; \ - block0[1] ^= block1[1]; \ - block0[2] ^= block1[2]; \ - block0[3] ^= block1[3]; \ - } - -/* Copy BLOCK_SRC to BLOCK_DST. */ -#define BLOCK_COPY(block_dst, block_src) \ - { \ - block_dst[0] = block_src[0]; \ - block_dst[1] = block_src[1]; \ - block_dst[2] = block_src[2]; \ - block_dst[3] = block_src[3]; \ - } - -/* Apply SBOX number WHICH to to the block found in ARRAY0 at index - INDEX, writing the output to the block found in ARRAY1 at index - INDEX. */ -#define SBOX(which, array0, array1, index) \ - SBOX##which (array0[index + 0], array0[index + 1], \ - array0[index + 2], array0[index + 3], \ - array1[index + 0], array1[index + 1], \ - array1[index + 2], array1[index + 3]); - -/* Apply inverse SBOX number WHICH to to the block found in ARRAY0 at - index INDEX, writing the output to the block found in ARRAY1 at - index INDEX. */ -#define SBOX_INVERSE(which, array0, array1, index) \ - SBOX##which##_INVERSE (array0[index + 0], array0[index + 1], \ - array0[index + 2], array0[index + 3], \ - array1[index + 0], array1[index + 1], \ - array1[index + 2], array1[index + 3]); - -/* Apply the linear transformation to BLOCK. */ -#define LINEAR_TRANSFORMATION(block) \ - { \ - block[0] = rol (block[0], 13); \ - block[2] = rol (block[2], 3); \ - block[1] = block[1] ^ block[0] ^ block[2]; \ - block[3] = block[3] ^ block[2] ^ (block[0] << 3); \ - block[1] = rol (block[1], 1); \ - block[3] = rol (block[3], 7); \ - block[0] = block[0] ^ block[1] ^ block[3]; \ - block[2] = block[2] ^ block[3] ^ (block[1] << 7); \ - block[0] = rol (block[0], 5); \ - block[2] = rol (block[2], 22); \ - } - -/* Apply the inverse linear transformation to BLOCK. */ -#define LINEAR_TRANSFORMATION_INVERSE(block) \ - { \ - block[2] = ror (block[2], 22); \ - block[0] = ror (block[0] , 5); \ - block[2] = block[2] ^ block[3] ^ (block[1] << 7); \ - block[0] = block[0] ^ block[1] ^ block[3]; \ - block[3] = ror (block[3], 7); \ - block[1] = ror (block[1], 1); \ - block[3] = block[3] ^ block[2] ^ (block[0] << 3); \ - block[1] = block[1] ^ block[0] ^ block[2]; \ - block[2] = ror (block[2], 3); \ - block[0] = ror (block[0], 13); \ - } - -/* Apply a Serpent round to BLOCK, using the SBOX number WHICH and the - subkeys contained in SUBKEYS. Use BLOCK_TMP as temporary storage. - This macro increments `round'. */ -#define ROUND(which, subkeys, block, block_tmp) \ - { \ - BLOCK_XOR (block, subkeys[round]); \ - round++; \ - SBOX (which, block, block_tmp, 0); \ - LINEAR_TRANSFORMATION (block_tmp); \ - BLOCK_COPY (block, block_tmp); \ - } - -/* Apply the last Serpent round to BLOCK, using the SBOX number WHICH - and the subkeys contained in SUBKEYS. Use BLOCK_TMP as temporary - storage. The result will be stored in BLOCK_TMP. This macro - increments `round'. */ -#define ROUND_LAST(which, subkeys, block, block_tmp) \ - { \ - BLOCK_XOR (block, subkeys[round]); \ - round++; \ - SBOX (which, block, block_tmp, 0); \ - BLOCK_XOR (block_tmp, subkeys[round]); \ - round++; \ - } - -/* Apply an inverse Serpent round to BLOCK, using the SBOX number - WHICH and the subkeys contained in SUBKEYS. Use BLOCK_TMP as - temporary storage. This macro increments `round'. */ -#define ROUND_INVERSE(which, subkey, block, block_tmp) \ - { \ - LINEAR_TRANSFORMATION_INVERSE (block); \ - SBOX_INVERSE (which, block, block_tmp, 0); \ - BLOCK_XOR (block_tmp, subkey[round]); \ - round--; \ - BLOCK_COPY (block, block_tmp); \ - } - -/* Apply the first Serpent round to BLOCK, using the SBOX number WHICH - and the subkeys contained in SUBKEYS. Use BLOCK_TMP as temporary - storage. The result will be stored in BLOCK_TMP. This macro - increments `round'. */ -#define ROUND_FIRST_INVERSE(which, subkeys, block, block_tmp) \ - { \ - BLOCK_XOR (block, subkeys[round]); \ - round--; \ - SBOX_INVERSE (which, block, block_tmp, 0); \ - BLOCK_XOR (block_tmp, subkeys[round]); \ - round--; \ - } - -/* Convert the user provided key KEY of KEY_LENGTH bytes into the - internally used format. */ -static void -serpent_key_prepare (const byte *key, unsigned int key_length, - serpent_key_t key_prepared) -{ - int i; - - /* Copy key. */ - memcpy (key_prepared, key, key_length); - key_length /= 4; -#ifdef WORDS_BIGENDIAN - for (i = 0; i < key_length; i++) - key_prepared[i] = byte_swap_32 (key_prepared[i]); -#else - i = key_length; -#endif - if (i < 8) - { - /* Key must be padded according to the Serpent - specification. */ - key_prepared[i] = 0x00000001; - - for (i++; i < 8; i++) - key_prepared[i] = 0; - } -} - -/* Derive the 33 subkeys from KEY and store them in SUBKEYS. */ -static void -serpent_subkeys_generate (serpent_key_t key, serpent_subkeys_t subkeys) -{ - u32 w_real[140]; /* The `prekey'. */ - u32 k[132]; - u32 *w = &w_real[8]; - int i, j; - - /* Initialize with key values. */ - for (i = 0; i < 8; i++) - w[i - 8] = key[i]; - - /* Expand to intermediate key using the affine recurrence. */ - for (i = 0; i < 132; i++) - w[i] = rol (w[i - 8] ^ w[i - 5] ^ w[i - 3] ^ w[i - 1] ^ PHI ^ i, 11); - - /* Calculate subkeys via S-Boxes, in bitslice mode. */ - SBOX (3, w, k, 0); - SBOX (2, w, k, 4); - SBOX (1, w, k, 8); - SBOX (0, w, k, 12); - SBOX (7, w, k, 16); - SBOX (6, w, k, 20); - SBOX (5, w, k, 24); - SBOX (4, w, k, 28); - SBOX (3, w, k, 32); - SBOX (2, w, k, 36); - SBOX (1, w, k, 40); - SBOX (0, w, k, 44); - SBOX (7, w, k, 48); - SBOX (6, w, k, 52); - SBOX (5, w, k, 56); - SBOX (4, w, k, 60); - SBOX (3, w, k, 64); - SBOX (2, w, k, 68); - SBOX (1, w, k, 72); - SBOX (0, w, k, 76); - SBOX (7, w, k, 80); - SBOX (6, w, k, 84); - SBOX (5, w, k, 88); - SBOX (4, w, k, 92); - SBOX (3, w, k, 96); - SBOX (2, w, k, 100); - SBOX (1, w, k, 104); - SBOX (0, w, k, 108); - SBOX (7, w, k, 112); - SBOX (6, w, k, 116); - SBOX (5, w, k, 120); - SBOX (4, w, k, 124); - SBOX (3, w, k, 128); - - /* Renumber subkeys. */ - for (i = 0; i < ROUNDS + 1; i++) - for (j = 0; j < 4; j++) - subkeys[i][j] = k[4 * i + j]; -} - -/* Initialize CONTEXT with the key KEY of KEY_LENGTH bits. */ -static void -serpent_setkey_internal (serpent_context_t *context, - const byte *key, unsigned int key_length) -{ - serpent_key_t key_prepared; - - serpent_key_prepare (key, key_length, key_prepared); - serpent_subkeys_generate (key_prepared, context->keys); - _gcry_burn_stack (272 * sizeof (u32)); -} - -/* Initialize CTX with the key KEY of KEY_LENGTH bytes. */ -static gcry_err_code_t -serpent_setkey (void *ctx, - const byte *key, unsigned int key_length) -{ - serpent_context_t *context = ctx; - static const char *serpent_test_ret; - static int serpent_init_done; - gcry_err_code_t ret = GPG_ERR_NO_ERROR; - - if (! serpent_init_done) - { - /* Execute a self-test the first time, Serpent is used. */ - serpent_test_ret = serpent_test (); - if (serpent_test_ret) - log_error ("Serpent test failure: %s\n", serpent_test_ret); - serpent_init_done = 1; - } - - if (serpent_test_ret) - ret = GPG_ERR_SELFTEST_FAILED; - else - { - serpent_setkey_internal (context, key, key_length); - _gcry_burn_stack (sizeof (serpent_key_t)); - } - - return ret; -} - -static void -serpent_encrypt_internal (serpent_context_t *context, - const byte *input, byte *output) -{ - serpent_block_t b, b_next; - int round = 0; - - memcpy (b, input, sizeof (b)); -#ifdef WORDS_BIGENDIAN - b[0] = byte_swap_32 (b[0]); - b[1] = byte_swap_32 (b[1]); - b[2] = byte_swap_32 (b[2]); - b[3] = byte_swap_32 (b[3]); -#endif - - ROUND (0, context->keys, b, b_next); - ROUND (1, context->keys, b, b_next); - ROUND (2, context->keys, b, b_next); - ROUND (3, context->keys, b, b_next); - ROUND (4, context->keys, b, b_next); - ROUND (5, context->keys, b, b_next); - ROUND (6, context->keys, b, b_next); - ROUND (7, context->keys, b, b_next); - ROUND (0, context->keys, b, b_next); - ROUND (1, context->keys, b, b_next); - ROUND (2, context->keys, b, b_next); - ROUND (3, context->keys, b, b_next); - ROUND (4, context->keys, b, b_next); - ROUND (5, context->keys, b, b_next); - ROUND (6, context->keys, b, b_next); - ROUND (7, context->keys, b, b_next); - ROUND (0, context->keys, b, b_next); - ROUND (1, context->keys, b, b_next); - ROUND (2, context->keys, b, b_next); - ROUND (3, context->keys, b, b_next); - ROUND (4, context->keys, b, b_next); - ROUND (5, context->keys, b, b_next); - ROUND (6, context->keys, b, b_next); - ROUND (7, context->keys, b, b_next); - ROUND (0, context->keys, b, b_next); - ROUND (1, context->keys, b, b_next); - ROUND (2, context->keys, b, b_next); - ROUND (3, context->keys, b, b_next); - ROUND (4, context->keys, b, b_next); - ROUND (5, context->keys, b, b_next); - ROUND (6, context->keys, b, b_next); - - ROUND_LAST (7, context->keys, b, b_next); - -#ifdef WORDS_BIGENDIAN - b_next[0] = byte_swap_32 (b_next[0]); - b_next[1] = byte_swap_32 (b_next[1]); - b_next[2] = byte_swap_32 (b_next[2]); - b_next[3] = byte_swap_32 (b_next[3]); -#endif - memcpy (output, b_next, sizeof (b_next)); -} - -static void -serpent_decrypt_internal (serpent_context_t *context, - const byte *input, byte *output) -{ - serpent_block_t b, b_next; - int round = ROUNDS; - - memcpy (b_next, input, sizeof (b)); -#ifdef WORDS_BIGENDIAN - b_next[0] = byte_swap_32 (b_next[0]); - b_next[1] = byte_swap_32 (b_next[1]); - b_next[2] = byte_swap_32 (b_next[2]); - b_next[3] = byte_swap_32 (b_next[3]); -#endif - - ROUND_FIRST_INVERSE (7, context->keys, b_next, b); - - ROUND_INVERSE (6, context->keys, b, b_next); - ROUND_INVERSE (5, context->keys, b, b_next); - ROUND_INVERSE (4, context->keys, b, b_next); - ROUND_INVERSE (3, context->keys, b, b_next); - ROUND_INVERSE (2, context->keys, b, b_next); - ROUND_INVERSE (1, context->keys, b, b_next); - ROUND_INVERSE (0, context->keys, b, b_next); - ROUND_INVERSE (7, context->keys, b, b_next); - ROUND_INVERSE (6, context->keys, b, b_next); - ROUND_INVERSE (5, context->keys, b, b_next); - ROUND_INVERSE (4, context->keys, b, b_next); - ROUND_INVERSE (3, context->keys, b, b_next); - ROUND_INVERSE (2, context->keys, b, b_next); - ROUND_INVERSE (1, context->keys, b, b_next); - ROUND_INVERSE (0, context->keys, b, b_next); - ROUND_INVERSE (7, context->keys, b, b_next); - ROUND_INVERSE (6, context->keys, b, b_next); - ROUND_INVERSE (5, context->keys, b, b_next); - ROUND_INVERSE (4, context->keys, b, b_next); - ROUND_INVERSE (3, context->keys, b, b_next); - ROUND_INVERSE (2, context->keys, b, b_next); - ROUND_INVERSE (1, context->keys, b, b_next); - ROUND_INVERSE (0, context->keys, b, b_next); - ROUND_INVERSE (7, context->keys, b, b_next); - ROUND_INVERSE (6, context->keys, b, b_next); - ROUND_INVERSE (5, context->keys, b, b_next); - ROUND_INVERSE (4, context->keys, b, b_next); - ROUND_INVERSE (3, context->keys, b, b_next); - ROUND_INVERSE (2, context->keys, b, b_next); - ROUND_INVERSE (1, context->keys, b, b_next); - ROUND_INVERSE (0, context->keys, b, b_next); - -#ifdef WORDS_BIGENDIAN - b_next[0] = byte_swap_32 (b_next[0]); - b_next[1] = byte_swap_32 (b_next[1]); - b_next[2] = byte_swap_32 (b_next[2]); - b_next[3] = byte_swap_32 (b_next[3]); -#endif - memcpy (output, b_next, sizeof (b_next)); -} - -static void -serpent_encrypt (void *ctx, byte *buffer_out, const byte *buffer_in) -{ - serpent_context_t *context = ctx; - - serpent_encrypt_internal (context, buffer_in, buffer_out); - _gcry_burn_stack (2 * sizeof (serpent_block_t)); -} - -static void -serpent_decrypt (void *ctx, byte *buffer_out, const byte *buffer_in) -{ - serpent_context_t *context = ctx; - - serpent_decrypt_internal (context, buffer_in, buffer_out); - _gcry_burn_stack (2 * sizeof (serpent_block_t)); -} - - - -/* Serpent test. */ - -static const char *serpent_test (void) { return 0; } - - - -/* "SERPENT" is an alias for "SERPENT128". */ -static const char *cipher_spec_serpent128_aliases[] = - { - "SERPENT", - NULL - }; - -gcry_cipher_spec_t _gcry_cipher_spec_serpent128 = - { - "SERPENT128", cipher_spec_serpent128_aliases, NULL, 16, 128, - sizeof (serpent_context_t), - serpent_setkey, serpent_encrypt, serpent_decrypt - , -#ifdef GRUB_UTIL - .modname = "gcry_serpent", -#endif - }; - -gcry_cipher_spec_t _gcry_cipher_spec_serpent192 = - { - "SERPENT192", NULL, NULL, 16, 192, - sizeof (serpent_context_t), - serpent_setkey, serpent_encrypt, serpent_decrypt - , -#ifdef GRUB_UTIL - .modname = "gcry_serpent", -#endif - }; - -gcry_cipher_spec_t _gcry_cipher_spec_serpent256 = - { - "SERPENT256", NULL, NULL, 16, 256, - sizeof (serpent_context_t), - serpent_setkey, serpent_encrypt, serpent_decrypt - , -#ifdef GRUB_UTIL - .modname = "gcry_serpent", -#endif - }; - - -GRUB_MOD_INIT(gcry_serpent) -{ - grub_cipher_register (&_gcry_cipher_spec_serpent128); - grub_cipher_register (&_gcry_cipher_spec_serpent192); - grub_cipher_register (&_gcry_cipher_spec_serpent256); -} - -GRUB_MOD_FINI(gcry_serpent) -{ - grub_cipher_unregister (&_gcry_cipher_spec_serpent128); - grub_cipher_unregister (&_gcry_cipher_spec_serpent192); - grub_cipher_unregister (&_gcry_cipher_spec_serpent256); -} diff --git a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/sha1.c b/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/sha1.c deleted file mode 100644 index 581802dd5..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/sha1.c +++ /dev/null @@ -1,419 +0,0 @@ -/* This file was automatically imported with - import_gcry.py. Please don't modify it */ -#include -GRUB_MOD_LICENSE ("GPLv3+"); -/* sha1.c - SHA1 hash function - * Copyright (C) 1998, 2001, 2002, 2003, 2008 Free Software Foundation, Inc. - * - * This file is part of Libgcrypt. - * - * Libgcrypt is free software; you can redistribute it and/or modify - * it under the terms of the GNU Lesser General Public License as - * published by the Free Software Foundation; either version 2.1 of - * the License, or (at your option) any later version. - * - * Libgcrypt is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this program; if not, see . - */ - - -/* Test vectors: - * - * "abc" - * A999 3E36 4706 816A BA3E 2571 7850 C26C 9CD0 D89D - * - * "abcdbcdecdefdefgefghfghighijhijkijkljklmklmnlmnomnopnopq" - * 8498 3E44 1C3B D26E BAAE 4AA1 F951 29E5 E546 70F1 - */ - - -#ifdef HAVE_STDINT_H -#endif - -#include "g10lib.h" -#include "bithelp.h" -#include "cipher.h" -#include "hash-common.h" - - -/* A macro to test whether P is properly aligned for an u32 type. - Note that config.h provides a suitable replacement for uintptr_t if - it does not exist in stdint.h. */ -/* #if __GNUC__ >= 2 */ -/* # define U32_ALIGNED_P(p) (!(((uintptr_t)p) % __alignof__ (u32))) */ -/* #else */ -/* # define U32_ALIGNED_P(p) (!(((uintptr_t)p) % sizeof (u32))) */ -/* #endif */ - -#define TRANSFORM(x,d,n) transform ((x), (d), (n)) - - -typedef struct -{ - u32 h0,h1,h2,h3,h4; - u32 nblocks; - unsigned char buf[64]; - int count; -} SHA1_CONTEXT; - - - -static void -sha1_init (void *context) -{ - SHA1_CONTEXT *hd = context; - - hd->h0 = 0x67452301; - hd->h1 = 0xefcdab89; - hd->h2 = 0x98badcfe; - hd->h3 = 0x10325476; - hd->h4 = 0xc3d2e1f0; - hd->nblocks = 0; - hd->count = 0; -} - - -/* Round function macros. */ -#define K1 0x5A827999L -#define K2 0x6ED9EBA1L -#define K3 0x8F1BBCDCL -#define K4 0xCA62C1D6L -#define F1(x,y,z) ( z ^ ( x & ( y ^ z ) ) ) -#define F2(x,y,z) ( x ^ y ^ z ) -#define F3(x,y,z) ( ( x & y ) | ( z & ( x | y ) ) ) -#define F4(x,y,z) ( x ^ y ^ z ) -#define M(i) ( tm = x[ i &0x0f] \ - ^ x[(i-14)&0x0f] \ - ^ x[(i-8) &0x0f] \ - ^ x[(i-3) &0x0f], \ - (x[i&0x0f] = rol(tm, 1))) -#define R(a,b,c,d,e,f,k,m) do { e += rol( a, 5 ) \ - + f( b, c, d ) \ - + k \ - + m; \ - b = rol( b, 30 ); \ - } while(0) - - -/* - * Transform NBLOCKS of each 64 bytes (16 32-bit words) at DATA. - */ -static void -transform (SHA1_CONTEXT *hd, const unsigned char *data, size_t nblocks) -{ - register u32 a, b, c, d, e; /* Local copies of the chaining variables. */ - register u32 tm; /* Helper. */ - u32 x[16]; /* The array we work on. */ - - /* Loop over all blocks. */ - for ( ;nblocks; nblocks--) - { -#ifdef WORDS_BIGENDIAN - memcpy (x, data, 64); - data += 64; -#else - { - int i; - unsigned char *p; - - for(i=0, p=(unsigned char*)x; i < 16; i++, p += 4 ) - { - p[3] = *data++; - p[2] = *data++; - p[1] = *data++; - p[0] = *data++; - } - } -#endif - /* Get the values of the chaining variables. */ - a = hd->h0; - b = hd->h1; - c = hd->h2; - d = hd->h3; - e = hd->h4; - - /* Transform. */ - R( a, b, c, d, e, F1, K1, x[ 0] ); - R( e, a, b, c, d, F1, K1, x[ 1] ); - R( d, e, a, b, c, F1, K1, x[ 2] ); - R( c, d, e, a, b, F1, K1, x[ 3] ); - R( b, c, d, e, a, F1, K1, x[ 4] ); - R( a, b, c, d, e, F1, K1, x[ 5] ); - R( e, a, b, c, d, F1, K1, x[ 6] ); - R( d, e, a, b, c, F1, K1, x[ 7] ); - R( c, d, e, a, b, F1, K1, x[ 8] ); - R( b, c, d, e, a, F1, K1, x[ 9] ); - R( a, b, c, d, e, F1, K1, x[10] ); - R( e, a, b, c, d, F1, K1, x[11] ); - R( d, e, a, b, c, F1, K1, x[12] ); - R( c, d, e, a, b, F1, K1, x[13] ); - R( b, c, d, e, a, F1, K1, x[14] ); - R( a, b, c, d, e, F1, K1, x[15] ); - R( e, a, b, c, d, F1, K1, M(16) ); - R( d, e, a, b, c, F1, K1, M(17) ); - R( c, d, e, a, b, F1, K1, M(18) ); - R( b, c, d, e, a, F1, K1, M(19) ); - R( a, b, c, d, e, F2, K2, M(20) ); - R( e, a, b, c, d, F2, K2, M(21) ); - R( d, e, a, b, c, F2, K2, M(22) ); - R( c, d, e, a, b, F2, K2, M(23) ); - R( b, c, d, e, a, F2, K2, M(24) ); - R( a, b, c, d, e, F2, K2, M(25) ); - R( e, a, b, c, d, F2, K2, M(26) ); - R( d, e, a, b, c, F2, K2, M(27) ); - R( c, d, e, a, b, F2, K2, M(28) ); - R( b, c, d, e, a, F2, K2, M(29) ); - R( a, b, c, d, e, F2, K2, M(30) ); - R( e, a, b, c, d, F2, K2, M(31) ); - R( d, e, a, b, c, F2, K2, M(32) ); - R( c, d, e, a, b, F2, K2, M(33) ); - R( b, c, d, e, a, F2, K2, M(34) ); - R( a, b, c, d, e, F2, K2, M(35) ); - R( e, a, b, c, d, F2, K2, M(36) ); - R( d, e, a, b, c, F2, K2, M(37) ); - R( c, d, e, a, b, F2, K2, M(38) ); - R( b, c, d, e, a, F2, K2, M(39) ); - R( a, b, c, d, e, F3, K3, M(40) ); - R( e, a, b, c, d, F3, K3, M(41) ); - R( d, e, a, b, c, F3, K3, M(42) ); - R( c, d, e, a, b, F3, K3, M(43) ); - R( b, c, d, e, a, F3, K3, M(44) ); - R( a, b, c, d, e, F3, K3, M(45) ); - R( e, a, b, c, d, F3, K3, M(46) ); - R( d, e, a, b, c, F3, K3, M(47) ); - R( c, d, e, a, b, F3, K3, M(48) ); - R( b, c, d, e, a, F3, K3, M(49) ); - R( a, b, c, d, e, F3, K3, M(50) ); - R( e, a, b, c, d, F3, K3, M(51) ); - R( d, e, a, b, c, F3, K3, M(52) ); - R( c, d, e, a, b, F3, K3, M(53) ); - R( b, c, d, e, a, F3, K3, M(54) ); - R( a, b, c, d, e, F3, K3, M(55) ); - R( e, a, b, c, d, F3, K3, M(56) ); - R( d, e, a, b, c, F3, K3, M(57) ); - R( c, d, e, a, b, F3, K3, M(58) ); - R( b, c, d, e, a, F3, K3, M(59) ); - R( a, b, c, d, e, F4, K4, M(60) ); - R( e, a, b, c, d, F4, K4, M(61) ); - R( d, e, a, b, c, F4, K4, M(62) ); - R( c, d, e, a, b, F4, K4, M(63) ); - R( b, c, d, e, a, F4, K4, M(64) ); - R( a, b, c, d, e, F4, K4, M(65) ); - R( e, a, b, c, d, F4, K4, M(66) ); - R( d, e, a, b, c, F4, K4, M(67) ); - R( c, d, e, a, b, F4, K4, M(68) ); - R( b, c, d, e, a, F4, K4, M(69) ); - R( a, b, c, d, e, F4, K4, M(70) ); - R( e, a, b, c, d, F4, K4, M(71) ); - R( d, e, a, b, c, F4, K4, M(72) ); - R( c, d, e, a, b, F4, K4, M(73) ); - R( b, c, d, e, a, F4, K4, M(74) ); - R( a, b, c, d, e, F4, K4, M(75) ); - R( e, a, b, c, d, F4, K4, M(76) ); - R( d, e, a, b, c, F4, K4, M(77) ); - R( c, d, e, a, b, F4, K4, M(78) ); - R( b, c, d, e, a, F4, K4, M(79) ); - - /* Update the chaining variables. */ - hd->h0 += a; - hd->h1 += b; - hd->h2 += c; - hd->h3 += d; - hd->h4 += e; - } -} - - -/* Update the message digest with the contents - * of INBUF with length INLEN. - */ -static void -sha1_write( void *context, const void *inbuf_arg, size_t inlen) -{ - const unsigned char *inbuf = inbuf_arg; - SHA1_CONTEXT *hd = context; - size_t nblocks; - - if (hd->count == 64) /* Flush the buffer. */ - { - TRANSFORM( hd, hd->buf, 1 ); - _gcry_burn_stack (88+4*sizeof(void*)); - hd->count = 0; - hd->nblocks++; - } - if (!inbuf) - return; - - if (hd->count) - { - for (; inlen && hd->count < 64; inlen--) - hd->buf[hd->count++] = *inbuf++; - sha1_write (hd, NULL, 0); - if (!inlen) - return; - } - - nblocks = inlen / 64; - if (nblocks) - { - TRANSFORM (hd, inbuf, nblocks); - hd->count = 0; - hd->nblocks += nblocks; - inlen -= nblocks * 64; - inbuf += nblocks * 64; - } - _gcry_burn_stack (88+4*sizeof(void*)); - - /* Save remaining bytes. */ - for (; inlen && hd->count < 64; inlen--) - hd->buf[hd->count++] = *inbuf++; -} - - -/* The routine final terminates the computation and - * returns the digest. - * The handle is prepared for a new cycle, but adding bytes to the - * handle will the destroy the returned buffer. - * Returns: 20 bytes representing the digest. - */ - -static void -sha1_final(void *context) -{ - SHA1_CONTEXT *hd = context; - - u32 t, msb, lsb; - unsigned char *p; - - sha1_write(hd, NULL, 0); /* flush */; - - t = hd->nblocks; - /* multiply by 64 to make a byte count */ - lsb = t << 6; - msb = t >> 26; - /* add the count */ - t = lsb; - if( (lsb += hd->count) < t ) - msb++; - /* multiply by 8 to make a bit count */ - t = lsb; - lsb <<= 3; - msb <<= 3; - msb |= t >> 29; - - if( hd->count < 56 ) /* enough room */ - { - hd->buf[hd->count++] = 0x80; /* pad */ - while( hd->count < 56 ) - hd->buf[hd->count++] = 0; /* pad */ - } - else /* need one extra block */ - { - hd->buf[hd->count++] = 0x80; /* pad character */ - while( hd->count < 64 ) - hd->buf[hd->count++] = 0; - sha1_write(hd, NULL, 0); /* flush */; - memset(hd->buf, 0, 56 ); /* fill next block with zeroes */ - } - /* append the 64 bit count */ - hd->buf[56] = msb >> 24; - hd->buf[57] = msb >> 16; - hd->buf[58] = msb >> 8; - hd->buf[59] = msb ; - hd->buf[60] = lsb >> 24; - hd->buf[61] = lsb >> 16; - hd->buf[62] = lsb >> 8; - hd->buf[63] = lsb ; - TRANSFORM( hd, hd->buf, 1 ); - _gcry_burn_stack (88+4*sizeof(void*)); - - p = hd->buf; -#ifdef WORDS_BIGENDIAN -#define X(a) do { *(u32*)p = hd->h##a ; p += 4; } while(0) -#else /* little endian */ -#define X(a) do { *p++ = hd->h##a >> 24; *p++ = hd->h##a >> 16; \ - *p++ = hd->h##a >> 8; *p++ = hd->h##a; } while(0) -#endif - X(0); - X(1); - X(2); - X(3); - X(4); -#undef X - -} - -static unsigned char * -sha1_read( void *context ) -{ - SHA1_CONTEXT *hd = context; - - return hd->buf; -} - -/**************** - * Shortcut functions which puts the hash value of the supplied buffer - * into outbuf which must have a size of 20 bytes. - */ - - - -/* - Self-test section. - */ - - - - -/* Run a full self-test for ALGO and return 0 on success. */ - - - - -static unsigned char asn[15] = /* Object ID is 1.3.14.3.2.26 */ - { 0x30, 0x21, 0x30, 0x09, 0x06, 0x05, 0x2b, 0x0e, 0x03, - 0x02, 0x1a, 0x05, 0x00, 0x04, 0x14 }; - -static gcry_md_oid_spec_t oid_spec_sha1[] = - { - /* iso.member-body.us.rsadsi.pkcs.pkcs-1.5 (sha1WithRSAEncryption) */ - { "1.2.840.113549.1.1.5" }, - /* iso.member-body.us.x9-57.x9cm.3 (dsaWithSha1)*/ - { "1.2.840.10040.4.3" }, - /* from NIST's OIW (sha1) */ - { "1.3.14.3.2.26" }, - /* from NIST OIW (sha-1WithRSAEncryption) */ - { "1.3.14.3.2.29" }, - /* iso.member-body.us.ansi-x9-62.signatures.ecdsa-with-sha1 */ - { "1.2.840.10045.4.1" }, - { NULL }, - }; - -gcry_md_spec_t _gcry_digest_spec_sha1 = - { - "SHA1", asn, DIM (asn), oid_spec_sha1, 20, - sha1_init, sha1_write, sha1_final, sha1_read, - sizeof (SHA1_CONTEXT) - , -#ifdef GRUB_UTIL - .modname = "gcry_sha1", -#endif - .blocksize = 64 - }; - - -GRUB_MOD_INIT(gcry_sha1) -{ - COMPILE_TIME_ASSERT(sizeof (SHA1_CONTEXT) <= GRUB_CRYPTO_MAX_MD_CONTEXT_SIZE); - grub_md_register (&_gcry_digest_spec_sha1); -} - -GRUB_MOD_FINI(gcry_sha1) -{ - grub_md_unregister (&_gcry_digest_spec_sha1); -} diff --git a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/sha256.c b/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/sha256.c deleted file mode 100644 index 0c9fd6bf4..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/sha256.c +++ /dev/null @@ -1,463 +0,0 @@ -/* This file was automatically imported with - import_gcry.py. Please don't modify it */ -#include -GRUB_MOD_LICENSE ("GPLv3+"); -/* sha256.c - SHA256 hash function - * Copyright (C) 2003, 2006, 2008, 2009 Free Software Foundation, Inc. - * - * This file is part of Libgcrypt. - * - * Libgcrypt is free software; you can redistribute it and/or modify - * it under the terms of the GNU Lesser General Public License as - * published by the Free Software Foundation; either version 2.1 of - * the License, or (at your option) any later version. - * - * Libgcrypt is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this program; if not, see . - */ - - -/* Test vectors: - - "abc" - SHA224: 23097d22 3405d822 8642a477 bda255b3 2aadbce4 bda0b3f7 e36c9da7 - SHA256: ba7816bf 8f01cfea 414140de 5dae2223 b00361a3 96177a9c b410ff61 f20015ad - - "abcdbcdecdefdefgefghfghighijhijkijkljklmklmnlmnomnopnopq" - SHA224: 75388b16 512776cc 5dba5da1 fd890150 b0c6455c b4f58b19 52522525 - SHA256: 248d6a61 d20638b8 e5c02693 0c3e6039 a33ce459 64ff2167 f6ecedd4 19db06c1 - - "a" one million times - SHA224: 20794655 980c91d8 bbb4c1ea 97618a4b f03f4258 1948b2ee 4ee7ad67 - SHA256: cdc76e5c 9914fb92 81a1c7e2 84d73e67 f1809a48 a497200e 046d39cc c7112cd0 - - */ - - - -#include "g10lib.h" -#include "bithelp.h" -#include "cipher.h" -#include "hash-common.h" - -typedef struct { - u32 h0,h1,h2,h3,h4,h5,h6,h7; - u32 nblocks; - byte buf[64]; - int count; -} SHA256_CONTEXT; - - -static void -sha256_init (void *context) -{ - SHA256_CONTEXT *hd = context; - - hd->h0 = 0x6a09e667; - hd->h1 = 0xbb67ae85; - hd->h2 = 0x3c6ef372; - hd->h3 = 0xa54ff53a; - hd->h4 = 0x510e527f; - hd->h5 = 0x9b05688c; - hd->h6 = 0x1f83d9ab; - hd->h7 = 0x5be0cd19; - - hd->nblocks = 0; - hd->count = 0; -} - - -static void -sha224_init (void *context) -{ - SHA256_CONTEXT *hd = context; - - hd->h0 = 0xc1059ed8; - hd->h1 = 0x367cd507; - hd->h2 = 0x3070dd17; - hd->h3 = 0xf70e5939; - hd->h4 = 0xffc00b31; - hd->h5 = 0x68581511; - hd->h6 = 0x64f98fa7; - hd->h7 = 0xbefa4fa4; - - hd->nblocks = 0; - hd->count = 0; -} - - -/* - Transform the message X which consists of 16 32-bit-words. See FIPS - 180-2 for details. */ -#define S0(x) (ror ((x), 7) ^ ror ((x), 18) ^ ((x) >> 3)) /* (4.6) */ -#define S1(x) (ror ((x), 17) ^ ror ((x), 19) ^ ((x) >> 10)) /* (4.7) */ -#define R(a,b,c,d,e,f,g,h,k,w) do \ - { \ - t1 = (h) + Sum1((e)) + Cho((e),(f),(g)) + (k) + (w); \ - t2 = Sum0((a)) + Maj((a),(b),(c)); \ - h = g; \ - g = f; \ - f = e; \ - e = d + t1; \ - d = c; \ - c = b; \ - b = a; \ - a = t1 + t2; \ - } while (0) - -/* (4.2) same as SHA-1's F1. */ -static inline u32 -Cho (u32 x, u32 y, u32 z) -{ - return (z ^ (x & (y ^ z))); -} - -/* (4.3) same as SHA-1's F3 */ -static inline u32 -Maj (u32 x, u32 y, u32 z) -{ - return ((x & y) | (z & (x|y))); -} - -/* (4.4) */ -static inline u32 -Sum0 (u32 x) -{ - return (ror (x, 2) ^ ror (x, 13) ^ ror (x, 22)); -} - -/* (4.5) */ -static inline u32 -Sum1 (u32 x) -{ - return (ror (x, 6) ^ ror (x, 11) ^ ror (x, 25)); -} - - -static void -transform (SHA256_CONTEXT *hd, const unsigned char *data) -{ - static const u32 K[64] = { - 0x428a2f98, 0x71374491, 0xb5c0fbcf, 0xe9b5dba5, - 0x3956c25b, 0x59f111f1, 0x923f82a4, 0xab1c5ed5, - 0xd807aa98, 0x12835b01, 0x243185be, 0x550c7dc3, - 0x72be5d74, 0x80deb1fe, 0x9bdc06a7, 0xc19bf174, - 0xe49b69c1, 0xefbe4786, 0x0fc19dc6, 0x240ca1cc, - 0x2de92c6f, 0x4a7484aa, 0x5cb0a9dc, 0x76f988da, - 0x983e5152, 0xa831c66d, 0xb00327c8, 0xbf597fc7, - 0xc6e00bf3, 0xd5a79147, 0x06ca6351, 0x14292967, - 0x27b70a85, 0x2e1b2138, 0x4d2c6dfc, 0x53380d13, - 0x650a7354, 0x766a0abb, 0x81c2c92e, 0x92722c85, - 0xa2bfe8a1, 0xa81a664b, 0xc24b8b70, 0xc76c51a3, - 0xd192e819, 0xd6990624, 0xf40e3585, 0x106aa070, - 0x19a4c116, 0x1e376c08, 0x2748774c, 0x34b0bcb5, - 0x391c0cb3, 0x4ed8aa4a, 0x5b9cca4f, 0x682e6ff3, - 0x748f82ee, 0x78a5636f, 0x84c87814, 0x8cc70208, - 0x90befffa, 0xa4506ceb, 0xbef9a3f7, 0xc67178f2 - }; - - u32 a,b,c,d,e,f,g,h,t1,t2; - u32 x[16]; - u32 w[64]; - int i; - - a = hd->h0; - b = hd->h1; - c = hd->h2; - d = hd->h3; - e = hd->h4; - f = hd->h5; - g = hd->h6; - h = hd->h7; - -#ifdef WORDS_BIGENDIAN - memcpy (x, data, 64); -#else - { - byte *p2; - - for (i=0, p2=(byte*)x; i < 16; i++, p2 += 4 ) - { - p2[3] = *data++; - p2[2] = *data++; - p2[1] = *data++; - p2[0] = *data++; - } - } -#endif - - for (i=0; i < 16; i++) - w[i] = x[i]; - for (; i < 64; i++) - w[i] = S1(w[i-2]) + w[i-7] + S0(w[i-15]) + w[i-16]; - - for (i=0; i < 64;) - { -#if 0 - R(a,b,c,d,e,f,g,h,K[i],w[i]); - i++; -#else - t1 = h + Sum1 (e) + Cho (e, f, g) + K[i] + w[i]; - t2 = Sum0 (a) + Maj (a, b, c); - d += t1; - h = t1 + t2; - - t1 = g + Sum1 (d) + Cho (d, e, f) + K[i+1] + w[i+1]; - t2 = Sum0 (h) + Maj (h, a, b); - c += t1; - g = t1 + t2; - - t1 = f + Sum1 (c) + Cho (c, d, e) + K[i+2] + w[i+2]; - t2 = Sum0 (g) + Maj (g, h, a); - b += t1; - f = t1 + t2; - - t1 = e + Sum1 (b) + Cho (b, c, d) + K[i+3] + w[i+3]; - t2 = Sum0 (f) + Maj (f, g, h); - a += t1; - e = t1 + t2; - - t1 = d + Sum1 (a) + Cho (a, b, c) + K[i+4] + w[i+4]; - t2 = Sum0 (e) + Maj (e, f, g); - h += t1; - d = t1 + t2; - - t1 = c + Sum1 (h) + Cho (h, a, b) + K[i+5] + w[i+5]; - t2 = Sum0 (d) + Maj (d, e, f); - g += t1; - c = t1 + t2; - - t1 = b + Sum1 (g) + Cho (g, h, a) + K[i+6] + w[i+6]; - t2 = Sum0 (c) + Maj (c, d, e); - f += t1; - b = t1 + t2; - - t1 = a + Sum1 (f) + Cho (f, g, h) + K[i+7] + w[i+7]; - t2 = Sum0 (b) + Maj (b, c, d); - e += t1; - a = t1 + t2; - - i += 8; -#endif - } - - hd->h0 += a; - hd->h1 += b; - hd->h2 += c; - hd->h3 += d; - hd->h4 += e; - hd->h5 += f; - hd->h6 += g; - hd->h7 += h; -} -#undef S0 -#undef S1 -#undef R - - -/* Update the message digest with the contents of INBUF with length - INLEN. */ -static void -sha256_write (void *context, const void *inbuf_arg, size_t inlen) -{ - const unsigned char *inbuf = inbuf_arg; - SHA256_CONTEXT *hd = context; - - if (hd->count == 64) - { /* flush the buffer */ - transform (hd, hd->buf); - _gcry_burn_stack (74*4+32); - hd->count = 0; - hd->nblocks++; - } - if (!inbuf) - return; - if (hd->count) - { - for (; inlen && hd->count < 64; inlen--) - hd->buf[hd->count++] = *inbuf++; - sha256_write (hd, NULL, 0); - if (!inlen) - return; - } - - while (inlen >= 64) - { - transform (hd, inbuf); - hd->count = 0; - hd->nblocks++; - inlen -= 64; - inbuf += 64; - } - _gcry_burn_stack (74*4+32); - for (; inlen && hd->count < 64; inlen--) - hd->buf[hd->count++] = *inbuf++; -} - - -/* - The routine finally terminates the computation and returns the - digest. The handle is prepared for a new cycle, but adding bytes - to the handle will the destroy the returned buffer. Returns: 32 - bytes with the message the digest. */ -static void -sha256_final(void *context) -{ - SHA256_CONTEXT *hd = context; - u32 t, msb, lsb; - byte *p; - - sha256_write (hd, NULL, 0); /* flush */; - - t = hd->nblocks; - /* multiply by 64 to make a byte count */ - lsb = t << 6; - msb = t >> 26; - /* add the count */ - t = lsb; - if ((lsb += hd->count) < t) - msb++; - /* multiply by 8 to make a bit count */ - t = lsb; - lsb <<= 3; - msb <<= 3; - msb |= t >> 29; - - if (hd->count < 56) - { /* enough room */ - hd->buf[hd->count++] = 0x80; /* pad */ - while (hd->count < 56) - hd->buf[hd->count++] = 0; /* pad */ - } - else - { /* need one extra block */ - hd->buf[hd->count++] = 0x80; /* pad character */ - while (hd->count < 64) - hd->buf[hd->count++] = 0; - sha256_write (hd, NULL, 0); /* flush */; - memset (hd->buf, 0, 56 ); /* fill next block with zeroes */ - } - /* append the 64 bit count */ - hd->buf[56] = msb >> 24; - hd->buf[57] = msb >> 16; - hd->buf[58] = msb >> 8; - hd->buf[59] = msb; - hd->buf[60] = lsb >> 24; - hd->buf[61] = lsb >> 16; - hd->buf[62] = lsb >> 8; - hd->buf[63] = lsb; - transform (hd, hd->buf); - _gcry_burn_stack (74*4+32); - - p = hd->buf; -#ifdef WORDS_BIGENDIAN -#define X(a) do { *(u32*)p = hd->h##a ; p += 4; } while(0) -#else /* little endian */ -#define X(a) do { *p++ = hd->h##a >> 24; *p++ = hd->h##a >> 16; \ - *p++ = hd->h##a >> 8; *p++ = hd->h##a; } while(0) -#endif - X(0); - X(1); - X(2); - X(3); - X(4); - X(5); - X(6); - X(7); -#undef X -} - -static byte * -sha256_read (void *context) -{ - SHA256_CONTEXT *hd = context; - - return hd->buf; -} - - - -/* - Self-test section. - */ - - - - - -/* Run a full self-test for ALGO and return 0 on success. */ - - - - -static byte asn224[19] = /* Object ID is 2.16.840.1.101.3.4.2.4 */ - { 0x30, 0x2D, 0x30, 0x0d, 0x06, 0x09, 0x60, 0x86, 0x48, - 0x01, 0x65, 0x03, 0x04, 0x02, 0x04, 0x05, 0x00, 0x04, - 0x1C - }; - -static gcry_md_oid_spec_t oid_spec_sha224[] = - { - /* From RFC3874, Section 4 */ - { "2.16.840.1.101.3.4.2.4" }, - { NULL }, - }; - -static byte asn256[19] = /* Object ID is 2.16.840.1.101.3.4.2.1 */ - { 0x30, 0x31, 0x30, 0x0d, 0x06, 0x09, 0x60, 0x86, - 0x48, 0x01, 0x65, 0x03, 0x04, 0x02, 0x01, 0x05, - 0x00, 0x04, 0x20 }; - -static gcry_md_oid_spec_t oid_spec_sha256[] = - { - /* According to the OpenPGP draft rfc2440-bis06 */ - { "2.16.840.1.101.3.4.2.1" }, - /* PKCS#1 sha256WithRSAEncryption */ - { "1.2.840.113549.1.1.11" }, - - { NULL }, - }; - -gcry_md_spec_t _gcry_digest_spec_sha224 = - { - "SHA224", asn224, DIM (asn224), oid_spec_sha224, 28, - sha224_init, sha256_write, sha256_final, sha256_read, - sizeof (SHA256_CONTEXT) - , -#ifdef GRUB_UTIL - .modname = "gcry_sha256", -#endif - .blocksize = 64 - }; - -gcry_md_spec_t _gcry_digest_spec_sha256 = - { - "SHA256", asn256, DIM (asn256), oid_spec_sha256, 32, - sha256_init, sha256_write, sha256_final, sha256_read, - sizeof (SHA256_CONTEXT) - , -#ifdef GRUB_UTIL - .modname = "gcry_sha256", -#endif - .blocksize = 64 - }; - - -GRUB_MOD_INIT(gcry_sha256) -{ - COMPILE_TIME_ASSERT(sizeof (SHA256_CONTEXT) <= GRUB_CRYPTO_MAX_MD_CONTEXT_SIZE); - COMPILE_TIME_ASSERT(sizeof (SHA256_CONTEXT) <= GRUB_CRYPTO_MAX_MD_CONTEXT_SIZE); - grub_md_register (&_gcry_digest_spec_sha224); - grub_md_register (&_gcry_digest_spec_sha256); -} - -GRUB_MOD_FINI(gcry_sha256) -{ - grub_md_unregister (&_gcry_digest_spec_sha224); - grub_md_unregister (&_gcry_digest_spec_sha256); -} diff --git a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/sha512.c b/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/sha512.c deleted file mode 100644 index 717551ccd..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/sha512.c +++ /dev/null @@ -1,525 +0,0 @@ -/* This file was automatically imported with - import_gcry.py. Please don't modify it */ -#include -GRUB_MOD_LICENSE ("GPLv3+"); -/* sha512.c - SHA384 and SHA512 hash functions - * Copyright (C) 2003, 2008, 2009 Free Software Foundation, Inc. - * - * This file is part of Libgcrypt. - * - * Libgcrypt is free software; you can redistribute it and/or modify - * it under the terms of the GNU Lesser general Public License as - * published by the Free Software Foundation; either version 2.1 of - * the License, or (at your option) any later version. - * - * Libgcrypt is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this program; if not, see . - */ - - -/* Test vectors from FIPS-180-2: - * - * "abc" - * 384: - * CB00753F 45A35E8B B5A03D69 9AC65007 272C32AB 0EDED163 - * 1A8B605A 43FF5BED 8086072B A1E7CC23 58BAECA1 34C825A7 - * 512: - * DDAF35A1 93617ABA CC417349 AE204131 12E6FA4E 89A97EA2 0A9EEEE6 4B55D39A - * 2192992A 274FC1A8 36BA3C23 A3FEEBBD 454D4423 643CE80E 2A9AC94F A54CA49F - * - * "abcdefghbcdefghicdefghijdefghijkefghijklfghijklmghijklmnhijklmnoijklmnopjklmnopqklmnopqrlmnopqrsmnopqrstnopqrstu" - * 384: - * 09330C33 F71147E8 3D192FC7 82CD1B47 53111B17 3B3B05D2 - * 2FA08086 E3B0F712 FCC7C71A 557E2DB9 66C3E9FA 91746039 - * 512: - * 8E959B75 DAE313DA 8CF4F728 14FC143F 8F7779C6 EB9F7FA1 7299AEAD B6889018 - * 501D289E 4900F7E4 331B99DE C4B5433A C7D329EE B6DD2654 5E96E55B 874BE909 - * - * "a" x 1000000 - * 384: - * 9D0E1809 716474CB 086E834E 310A4A1C ED149E9C 00F24852 - * 7972CEC5 704C2A5B 07B8B3DC 38ECC4EB AE97DDD8 7F3D8985 - * 512: - * E718483D 0CE76964 4E2E42C7 BC15B463 8E1F98B1 3B204428 5632A803 AFA973EB - * DE0FF244 877EA60A 4CB0432C E577C31B EB009C5C 2C49AA2E 4EADB217 AD8CC09B - */ - - -#include "g10lib.h" -#include "bithelp.h" -#include "cipher.h" -#include "hash-common.h" - -typedef struct -{ - u64 h0, h1, h2, h3, h4, h5, h6, h7; - u64 nblocks; - byte buf[128]; - int count; -} SHA512_CONTEXT; - -static void -sha512_init (void *context) -{ - SHA512_CONTEXT *hd = context; - - hd->h0 = U64_C(0x6a09e667f3bcc908); - hd->h1 = U64_C(0xbb67ae8584caa73b); - hd->h2 = U64_C(0x3c6ef372fe94f82b); - hd->h3 = U64_C(0xa54ff53a5f1d36f1); - hd->h4 = U64_C(0x510e527fade682d1); - hd->h5 = U64_C(0x9b05688c2b3e6c1f); - hd->h6 = U64_C(0x1f83d9abfb41bd6b); - hd->h7 = U64_C(0x5be0cd19137e2179); - - hd->nblocks = 0; - hd->count = 0; -} - -static void -sha384_init (void *context) -{ - SHA512_CONTEXT *hd = context; - - hd->h0 = U64_C(0xcbbb9d5dc1059ed8); - hd->h1 = U64_C(0x629a292a367cd507); - hd->h2 = U64_C(0x9159015a3070dd17); - hd->h3 = U64_C(0x152fecd8f70e5939); - hd->h4 = U64_C(0x67332667ffc00b31); - hd->h5 = U64_C(0x8eb44a8768581511); - hd->h6 = U64_C(0xdb0c2e0d64f98fa7); - hd->h7 = U64_C(0x47b5481dbefa4fa4); - - hd->nblocks = 0; - hd->count = 0; -} - - -static inline u64 -ROTR (u64 x, u64 n) -{ - return ((x >> n) | (x << (64 - n))); -} - -static inline u64 -Ch (u64 x, u64 y, u64 z) -{ - return ((x & y) ^ ( ~x & z)); -} - -static inline u64 -Maj (u64 x, u64 y, u64 z) -{ - return ((x & y) ^ (x & z) ^ (y & z)); -} - -static inline u64 -Sum0 (u64 x) -{ - return (ROTR (x, 28) ^ ROTR (x, 34) ^ ROTR (x, 39)); -} - -static inline u64 -Sum1 (u64 x) -{ - return (ROTR (x, 14) ^ ROTR (x, 18) ^ ROTR (x, 41)); -} - -/**************** - * Transform the message W which consists of 16 64-bit-words - */ -static void -transform (SHA512_CONTEXT *hd, const unsigned char *data) -{ - u64 a, b, c, d, e, f, g, h; - u64 w[80]; - int t; - static const u64 k[] = - { - U64_C(0x428a2f98d728ae22), U64_C(0x7137449123ef65cd), - U64_C(0xb5c0fbcfec4d3b2f), U64_C(0xe9b5dba58189dbbc), - U64_C(0x3956c25bf348b538), U64_C(0x59f111f1b605d019), - U64_C(0x923f82a4af194f9b), U64_C(0xab1c5ed5da6d8118), - U64_C(0xd807aa98a3030242), U64_C(0x12835b0145706fbe), - U64_C(0x243185be4ee4b28c), U64_C(0x550c7dc3d5ffb4e2), - U64_C(0x72be5d74f27b896f), U64_C(0x80deb1fe3b1696b1), - U64_C(0x9bdc06a725c71235), U64_C(0xc19bf174cf692694), - U64_C(0xe49b69c19ef14ad2), U64_C(0xefbe4786384f25e3), - U64_C(0x0fc19dc68b8cd5b5), U64_C(0x240ca1cc77ac9c65), - U64_C(0x2de92c6f592b0275), U64_C(0x4a7484aa6ea6e483), - U64_C(0x5cb0a9dcbd41fbd4), U64_C(0x76f988da831153b5), - U64_C(0x983e5152ee66dfab), U64_C(0xa831c66d2db43210), - U64_C(0xb00327c898fb213f), U64_C(0xbf597fc7beef0ee4), - U64_C(0xc6e00bf33da88fc2), U64_C(0xd5a79147930aa725), - U64_C(0x06ca6351e003826f), U64_C(0x142929670a0e6e70), - U64_C(0x27b70a8546d22ffc), U64_C(0x2e1b21385c26c926), - U64_C(0x4d2c6dfc5ac42aed), U64_C(0x53380d139d95b3df), - U64_C(0x650a73548baf63de), U64_C(0x766a0abb3c77b2a8), - U64_C(0x81c2c92e47edaee6), U64_C(0x92722c851482353b), - U64_C(0xa2bfe8a14cf10364), U64_C(0xa81a664bbc423001), - U64_C(0xc24b8b70d0f89791), U64_C(0xc76c51a30654be30), - U64_C(0xd192e819d6ef5218), U64_C(0xd69906245565a910), - U64_C(0xf40e35855771202a), U64_C(0x106aa07032bbd1b8), - U64_C(0x19a4c116b8d2d0c8), U64_C(0x1e376c085141ab53), - U64_C(0x2748774cdf8eeb99), U64_C(0x34b0bcb5e19b48a8), - U64_C(0x391c0cb3c5c95a63), U64_C(0x4ed8aa4ae3418acb), - U64_C(0x5b9cca4f7763e373), U64_C(0x682e6ff3d6b2b8a3), - U64_C(0x748f82ee5defb2fc), U64_C(0x78a5636f43172f60), - U64_C(0x84c87814a1f0ab72), U64_C(0x8cc702081a6439ec), - U64_C(0x90befffa23631e28), U64_C(0xa4506cebde82bde9), - U64_C(0xbef9a3f7b2c67915), U64_C(0xc67178f2e372532b), - U64_C(0xca273eceea26619c), U64_C(0xd186b8c721c0c207), - U64_C(0xeada7dd6cde0eb1e), U64_C(0xf57d4f7fee6ed178), - U64_C(0x06f067aa72176fba), U64_C(0x0a637dc5a2c898a6), - U64_C(0x113f9804bef90dae), U64_C(0x1b710b35131c471b), - U64_C(0x28db77f523047d84), U64_C(0x32caab7b40c72493), - U64_C(0x3c9ebe0a15c9bebc), U64_C(0x431d67c49c100d4c), - U64_C(0x4cc5d4becb3e42b6), U64_C(0x597f299cfc657e2a), - U64_C(0x5fcb6fab3ad6faec), U64_C(0x6c44198c4a475817) - }; - - /* get values from the chaining vars */ - a = hd->h0; - b = hd->h1; - c = hd->h2; - d = hd->h3; - e = hd->h4; - f = hd->h5; - g = hd->h6; - h = hd->h7; - -#ifdef WORDS_BIGENDIAN - memcpy (w, data, 128); -#else - { - int i; - byte *p2; - - for (i = 0, p2 = (byte *) w; i < 16; i++, p2 += 8) - { - p2[7] = *data++; - p2[6] = *data++; - p2[5] = *data++; - p2[4] = *data++; - p2[3] = *data++; - p2[2] = *data++; - p2[1] = *data++; - p2[0] = *data++; - } - } -#endif - -#define S0(x) (ROTR((x),1) ^ ROTR((x),8) ^ ((x)>>7)) -#define S1(x) (ROTR((x),19) ^ ROTR((x),61) ^ ((x)>>6)) - - for (t = 16; t < 80; t++) - w[t] = S1 (w[t - 2]) + w[t - 7] + S0 (w[t - 15]) + w[t - 16]; - - - for (t = 0; t < 80; ) - { - u64 t1, t2; - - /* Performance on a AMD Athlon(tm) Dual Core Processor 4050e - with gcc 4.3.3 using gcry_md_hash_buffer of each 10000 bytes - initialized to 0,1,2,3...255,0,... and 1000 iterations: - - Not unrolled with macros: 440ms - Unrolled with macros: 350ms - Unrolled with inline: 330ms - */ -#if 0 /* Not unrolled. */ - t1 = h + Sum1 (e) + Ch (e, f, g) + k[t] + w[t]; - t2 = Sum0 (a) + Maj (a, b, c); - h = g; - g = f; - f = e; - e = d + t1; - d = c; - c = b; - b = a; - a = t1 + t2; - t++; -#else /* Unrolled to interweave the chain variables. */ - t1 = h + Sum1 (e) + Ch (e, f, g) + k[t] + w[t]; - t2 = Sum0 (a) + Maj (a, b, c); - d += t1; - h = t1 + t2; - - t1 = g + Sum1 (d) + Ch (d, e, f) + k[t+1] + w[t+1]; - t2 = Sum0 (h) + Maj (h, a, b); - c += t1; - g = t1 + t2; - - t1 = f + Sum1 (c) + Ch (c, d, e) + k[t+2] + w[t+2]; - t2 = Sum0 (g) + Maj (g, h, a); - b += t1; - f = t1 + t2; - - t1 = e + Sum1 (b) + Ch (b, c, d) + k[t+3] + w[t+3]; - t2 = Sum0 (f) + Maj (f, g, h); - a += t1; - e = t1 + t2; - - t1 = d + Sum1 (a) + Ch (a, b, c) + k[t+4] + w[t+4]; - t2 = Sum0 (e) + Maj (e, f, g); - h += t1; - d = t1 + t2; - - t1 = c + Sum1 (h) + Ch (h, a, b) + k[t+5] + w[t+5]; - t2 = Sum0 (d) + Maj (d, e, f); - g += t1; - c = t1 + t2; - - t1 = b + Sum1 (g) + Ch (g, h, a) + k[t+6] + w[t+6]; - t2 = Sum0 (c) + Maj (c, d, e); - f += t1; - b = t1 + t2; - - t1 = a + Sum1 (f) + Ch (f, g, h) + k[t+7] + w[t+7]; - t2 = Sum0 (b) + Maj (b, c, d); - e += t1; - a = t1 + t2; - - t += 8; -#endif - } - - /* Update chaining vars. */ - hd->h0 += a; - hd->h1 += b; - hd->h2 += c; - hd->h3 += d; - hd->h4 += e; - hd->h5 += f; - hd->h6 += g; - hd->h7 += h; -} - - -/* Update the message digest with the contents - * of INBUF with length INLEN. - */ -static void -sha512_write (void *context, const void *inbuf_arg, size_t inlen) -{ - const unsigned char *inbuf = inbuf_arg; - SHA512_CONTEXT *hd = context; - - if (hd->count == 128) - { /* flush the buffer */ - transform (hd, hd->buf); - _gcry_burn_stack (768); - hd->count = 0; - hd->nblocks++; - } - if (!inbuf) - return; - if (hd->count) - { - for (; inlen && hd->count < 128; inlen--) - hd->buf[hd->count++] = *inbuf++; - sha512_write (context, NULL, 0); - if (!inlen) - return; - } - - while (inlen >= 128) - { - transform (hd, inbuf); - hd->count = 0; - hd->nblocks++; - inlen -= 128; - inbuf += 128; - } - _gcry_burn_stack (768); - for (; inlen && hd->count < 128; inlen--) - hd->buf[hd->count++] = *inbuf++; -} - - -/* The routine final terminates the computation and - * returns the digest. - * The handle is prepared for a new cycle, but adding bytes to the - * handle will the destroy the returned buffer. - * Returns: 64 bytes representing the digest. When used for sha384, - * we take the leftmost 48 of those bytes. - */ - -static void -sha512_final (void *context) -{ - SHA512_CONTEXT *hd = context; - u64 t, msb, lsb; - byte *p; - - sha512_write (context, NULL, 0); /* flush */ ; - - t = hd->nblocks; - /* multiply by 128 to make a byte count */ - lsb = t << 7; - msb = t >> 57; - /* add the count */ - t = lsb; - if ((lsb += hd->count) < t) - msb++; - /* multiply by 8 to make a bit count */ - t = lsb; - lsb <<= 3; - msb <<= 3; - msb |= t >> 61; - - if (hd->count < 112) - { /* enough room */ - hd->buf[hd->count++] = 0x80; /* pad */ - while (hd->count < 112) - hd->buf[hd->count++] = 0; /* pad */ - } - else - { /* need one extra block */ - hd->buf[hd->count++] = 0x80; /* pad character */ - while (hd->count < 128) - hd->buf[hd->count++] = 0; - sha512_write (context, NULL, 0); /* flush */ ; - memset (hd->buf, 0, 112); /* fill next block with zeroes */ - } - /* append the 128 bit count */ - hd->buf[112] = msb >> 56; - hd->buf[113] = msb >> 48; - hd->buf[114] = msb >> 40; - hd->buf[115] = msb >> 32; - hd->buf[116] = msb >> 24; - hd->buf[117] = msb >> 16; - hd->buf[118] = msb >> 8; - hd->buf[119] = msb; - - hd->buf[120] = lsb >> 56; - hd->buf[121] = lsb >> 48; - hd->buf[122] = lsb >> 40; - hd->buf[123] = lsb >> 32; - hd->buf[124] = lsb >> 24; - hd->buf[125] = lsb >> 16; - hd->buf[126] = lsb >> 8; - hd->buf[127] = lsb; - transform (hd, hd->buf); - _gcry_burn_stack (768); - - p = hd->buf; -#ifdef WORDS_BIGENDIAN -#define X(a) do { *(u64*)p = hd->h##a ; p += 8; } while (0) -#else /* little endian */ -#define X(a) do { *p++ = hd->h##a >> 56; *p++ = hd->h##a >> 48; \ - *p++ = hd->h##a >> 40; *p++ = hd->h##a >> 32; \ - *p++ = hd->h##a >> 24; *p++ = hd->h##a >> 16; \ - *p++ = hd->h##a >> 8; *p++ = hd->h##a; } while (0) -#endif - X (0); - X (1); - X (2); - X (3); - X (4); - X (5); - /* Note that these last two chunks are included even for SHA384. - We just ignore them. */ - X (6); - X (7); -#undef X -} - -static byte * -sha512_read (void *context) -{ - SHA512_CONTEXT *hd = (SHA512_CONTEXT *) context; - return hd->buf; -} - - - -/* - Self-test section. - */ - - - - - -/* Run a full self-test for ALGO and return 0 on success. */ - - - - -static byte sha512_asn[] = /* Object ID is 2.16.840.1.101.3.4.2.3 */ - { - 0x30, 0x51, 0x30, 0x0d, 0x06, 0x09, 0x60, 0x86, - 0x48, 0x01, 0x65, 0x03, 0x04, 0x02, 0x03, 0x05, - 0x00, 0x04, 0x40 - }; - -static gcry_md_oid_spec_t oid_spec_sha512[] = - { - { "2.16.840.1.101.3.4.2.3" }, - - /* PKCS#1 sha512WithRSAEncryption */ - { "1.2.840.113549.1.1.13" }, - - { NULL } - }; - -gcry_md_spec_t _gcry_digest_spec_sha512 = - { - "SHA512", sha512_asn, DIM (sha512_asn), oid_spec_sha512, 64, - sha512_init, sha512_write, sha512_final, sha512_read, - sizeof (SHA512_CONTEXT), -#ifdef GRUB_UTIL - .modname = "gcry_sha512", -#endif - .blocksize = 128 - }; - -static byte sha384_asn[] = /* Object ID is 2.16.840.1.101.3.4.2.2 */ - { - 0x30, 0x41, 0x30, 0x0d, 0x06, 0x09, 0x60, 0x86, - 0x48, 0x01, 0x65, 0x03, 0x04, 0x02, 0x02, 0x05, - 0x00, 0x04, 0x30 - }; - -static gcry_md_oid_spec_t oid_spec_sha384[] = - { - { "2.16.840.1.101.3.4.2.2" }, - - /* PKCS#1 sha384WithRSAEncryption */ - { "1.2.840.113549.1.1.12" }, - - { NULL }, - }; - -gcry_md_spec_t _gcry_digest_spec_sha384 = - { - "SHA384", sha384_asn, DIM (sha384_asn), oid_spec_sha384, 48, - sha384_init, sha512_write, sha512_final, sha512_read, - sizeof (SHA512_CONTEXT), -#ifdef GRUB_UTIL - .modname = "gcry_sha512", -#endif - .blocksize = 128 - }; - - -GRUB_MOD_INIT(gcry_sha512) -{ - COMPILE_TIME_ASSERT(sizeof (SHA512_CONTEXT) <= GRUB_CRYPTO_MAX_MD_CONTEXT_SIZE); - COMPILE_TIME_ASSERT(sizeof (SHA512_CONTEXT) <= GRUB_CRYPTO_MAX_MD_CONTEXT_SIZE); - grub_md_register (&_gcry_digest_spec_sha512); - grub_md_register (&_gcry_digest_spec_sha384); -} - -GRUB_MOD_FINI(gcry_sha512) -{ - grub_md_unregister (&_gcry_digest_spec_sha512); - grub_md_unregister (&_gcry_digest_spec_sha384); -} diff --git a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/tiger.c b/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/tiger.c deleted file mode 100644 index c277293f7..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/tiger.c +++ /dev/null @@ -1,944 +0,0 @@ -/* This file was automatically imported with - import_gcry.py. Please don't modify it */ -#include -GRUB_MOD_LICENSE ("GPLv3+"); -/* tiger.c - The TIGER hash function - * Copyright (C) 1998, 2001, 2002, 2003, 2010 Free Software Foundation, Inc. - * - * This file is part of Libgcrypt. - * - * Libgcrypt is free software; you can redistribute it and/or modify - * it under the terms of the GNU Lesser General Public License as - * published by the Free Software Foundation; either version 2.1 of - * the License, or (at your option) any later version. - * - * Libgcrypt is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA - */ - -/* See http://www.cs.technion.ac.il/~biham/Reports/Tiger/ */ - - -#include "g10lib.h" -#include "cipher.h" - -/* We really need a 64 bit type for this code. */ -#ifdef HAVE_U64_TYPEDEF - -typedef struct -{ - u64 a, b, c; - byte buf[64]; - int count; - u32 nblocks; - int variant; /* 0 = old code, 1 = fixed code, 2 - TIGER2. */ -} TIGER_CONTEXT; - - -/********************************* - * Okay, okay, this is not the fastest code - improvements are welcome. - * - */ - -/* Some test vectors: - * "" 24F0130C63AC9332 16166E76B1BB925F F373DE2D49584E7A - * "abc" F258C1E88414AB2A 527AB541FFC5B8BF 935F7B951C132951 - * "Tiger" 9F00F599072300DD 276ABB38C8EB6DEC 37790C116F9D2BDF - * "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+-" - * 87FB2A9083851CF7 470D2CF810E6DF9E B586445034A5A386 - * "ABCDEFGHIJKLMNOPQRSTUVWXYZ=abcdefghijklmnopqrstuvwxyz+0123456789" - * 467DB80863EBCE48 8DF1CD1261655DE9 57896565975F9197 - * "Tiger - A Fast New Hash Function, by Ross Anderson and Eli Biham" - * 0C410A042968868A 1671DA5A3FD29A72 5EC1E457D3CDB303 - * "Tiger - A Fast New Hash Function, by Ross Anderson and Eli Biham, proc" - * "eedings of Fast Software Encryption 3, Cambridge." - * EBF591D5AFA655CE 7F22894FF87F54AC 89C811B6B0DA3193 - * "Tiger - A Fast New Hash Function, by Ross Anderson and Eli Biham, proc" - * "eedings of Fast Software Encryption 3, Cambridge, 1996." - * 3D9AEB03D1BD1A63 57B2774DFD6D5B24 DD68151D503974FC - * "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+-ABCDEF" - * "GHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+-" - * 00B83EB4E53440C5 76AC6AAEE0A74858 25FD15E70A59FFE4 - */ - -static u64 sbox1[256] = { - U64_C(0x02aab17cf7e90c5e) /* 0 */, U64_C(0xac424b03e243a8ec) /* 1 */, - U64_C(0x72cd5be30dd5fcd3) /* 2 */, U64_C(0x6d019b93f6f97f3a) /* 3 */, - U64_C(0xcd9978ffd21f9193) /* 4 */, U64_C(0x7573a1c9708029e2) /* 5 */, - U64_C(0xb164326b922a83c3) /* 6 */, U64_C(0x46883eee04915870) /* 7 */, - U64_C(0xeaace3057103ece6) /* 8 */, U64_C(0xc54169b808a3535c) /* 9 */, - U64_C(0x4ce754918ddec47c) /* 10 */, U64_C(0x0aa2f4dfdc0df40c) /* 11 */, - U64_C(0x10b76f18a74dbefa) /* 12 */, U64_C(0xc6ccb6235ad1ab6a) /* 13 */, - U64_C(0x13726121572fe2ff) /* 14 */, U64_C(0x1a488c6f199d921e) /* 15 */, - U64_C(0x4bc9f9f4da0007ca) /* 16 */, U64_C(0x26f5e6f6e85241c7) /* 17 */, - U64_C(0x859079dbea5947b6) /* 18 */, U64_C(0x4f1885c5c99e8c92) /* 19 */, - U64_C(0xd78e761ea96f864b) /* 20 */, U64_C(0x8e36428c52b5c17d) /* 21 */, - U64_C(0x69cf6827373063c1) /* 22 */, U64_C(0xb607c93d9bb4c56e) /* 23 */, - U64_C(0x7d820e760e76b5ea) /* 24 */, U64_C(0x645c9cc6f07fdc42) /* 25 */, - U64_C(0xbf38a078243342e0) /* 26 */, U64_C(0x5f6b343c9d2e7d04) /* 27 */, - U64_C(0xf2c28aeb600b0ec6) /* 28 */, U64_C(0x6c0ed85f7254bcac) /* 29 */, - U64_C(0x71592281a4db4fe5) /* 30 */, U64_C(0x1967fa69ce0fed9f) /* 31 */, - U64_C(0xfd5293f8b96545db) /* 32 */, U64_C(0xc879e9d7f2a7600b) /* 33 */, - U64_C(0x860248920193194e) /* 34 */, U64_C(0xa4f9533b2d9cc0b3) /* 35 */, - U64_C(0x9053836c15957613) /* 36 */, U64_C(0xdb6dcf8afc357bf1) /* 37 */, - U64_C(0x18beea7a7a370f57) /* 38 */, U64_C(0x037117ca50b99066) /* 39 */, - U64_C(0x6ab30a9774424a35) /* 40 */, U64_C(0xf4e92f02e325249b) /* 41 */, - U64_C(0x7739db07061ccae1) /* 42 */, U64_C(0xd8f3b49ceca42a05) /* 43 */, - U64_C(0xbd56be3f51382f73) /* 44 */, U64_C(0x45faed5843b0bb28) /* 45 */, - U64_C(0x1c813d5c11bf1f83) /* 46 */, U64_C(0x8af0e4b6d75fa169) /* 47 */, - U64_C(0x33ee18a487ad9999) /* 48 */, U64_C(0x3c26e8eab1c94410) /* 49 */, - U64_C(0xb510102bc0a822f9) /* 50 */, U64_C(0x141eef310ce6123b) /* 51 */, - U64_C(0xfc65b90059ddb154) /* 52 */, U64_C(0xe0158640c5e0e607) /* 53 */, - U64_C(0x884e079826c3a3cf) /* 54 */, U64_C(0x930d0d9523c535fd) /* 55 */, - U64_C(0x35638d754e9a2b00) /* 56 */, U64_C(0x4085fccf40469dd5) /* 57 */, - U64_C(0xc4b17ad28be23a4c) /* 58 */, U64_C(0xcab2f0fc6a3e6a2e) /* 59 */, - U64_C(0x2860971a6b943fcd) /* 60 */, U64_C(0x3dde6ee212e30446) /* 61 */, - U64_C(0x6222f32ae01765ae) /* 62 */, U64_C(0x5d550bb5478308fe) /* 63 */, - U64_C(0xa9efa98da0eda22a) /* 64 */, U64_C(0xc351a71686c40da7) /* 65 */, - U64_C(0x1105586d9c867c84) /* 66 */, U64_C(0xdcffee85fda22853) /* 67 */, - U64_C(0xccfbd0262c5eef76) /* 68 */, U64_C(0xbaf294cb8990d201) /* 69 */, - U64_C(0xe69464f52afad975) /* 70 */, U64_C(0x94b013afdf133e14) /* 71 */, - U64_C(0x06a7d1a32823c958) /* 72 */, U64_C(0x6f95fe5130f61119) /* 73 */, - U64_C(0xd92ab34e462c06c0) /* 74 */, U64_C(0xed7bde33887c71d2) /* 75 */, - U64_C(0x79746d6e6518393e) /* 76 */, U64_C(0x5ba419385d713329) /* 77 */, - U64_C(0x7c1ba6b948a97564) /* 78 */, U64_C(0x31987c197bfdac67) /* 79 */, - U64_C(0xde6c23c44b053d02) /* 80 */, U64_C(0x581c49fed002d64d) /* 81 */, - U64_C(0xdd474d6338261571) /* 82 */, U64_C(0xaa4546c3e473d062) /* 83 */, - U64_C(0x928fce349455f860) /* 84 */, U64_C(0x48161bbacaab94d9) /* 85 */, - U64_C(0x63912430770e6f68) /* 86 */, U64_C(0x6ec8a5e602c6641c) /* 87 */, - U64_C(0x87282515337ddd2b) /* 88 */, U64_C(0x2cda6b42034b701b) /* 89 */, - U64_C(0xb03d37c181cb096d) /* 90 */, U64_C(0xe108438266c71c6f) /* 91 */, - U64_C(0x2b3180c7eb51b255) /* 92 */, U64_C(0xdf92b82f96c08bbc) /* 93 */, - U64_C(0x5c68c8c0a632f3ba) /* 94 */, U64_C(0x5504cc861c3d0556) /* 95 */, - U64_C(0xabbfa4e55fb26b8f) /* 96 */, U64_C(0x41848b0ab3baceb4) /* 97 */, - U64_C(0xb334a273aa445d32) /* 98 */, U64_C(0xbca696f0a85ad881) /* 99 */, - U64_C(0x24f6ec65b528d56c) /* 100 */, U64_C(0x0ce1512e90f4524a) /* 101 */, - U64_C(0x4e9dd79d5506d35a) /* 102 */, U64_C(0x258905fac6ce9779) /* 103 */, - U64_C(0x2019295b3e109b33) /* 104 */, U64_C(0xf8a9478b73a054cc) /* 105 */, - U64_C(0x2924f2f934417eb0) /* 106 */, U64_C(0x3993357d536d1bc4) /* 107 */, - U64_C(0x38a81ac21db6ff8b) /* 108 */, U64_C(0x47c4fbf17d6016bf) /* 109 */, - U64_C(0x1e0faadd7667e3f5) /* 110 */, U64_C(0x7abcff62938beb96) /* 111 */, - U64_C(0xa78dad948fc179c9) /* 112 */, U64_C(0x8f1f98b72911e50d) /* 113 */, - U64_C(0x61e48eae27121a91) /* 114 */, U64_C(0x4d62f7ad31859808) /* 115 */, - U64_C(0xeceba345ef5ceaeb) /* 116 */, U64_C(0xf5ceb25ebc9684ce) /* 117 */, - U64_C(0xf633e20cb7f76221) /* 118 */, U64_C(0xa32cdf06ab8293e4) /* 119 */, - U64_C(0x985a202ca5ee2ca4) /* 120 */, U64_C(0xcf0b8447cc8a8fb1) /* 121 */, - U64_C(0x9f765244979859a3) /* 122 */, U64_C(0xa8d516b1a1240017) /* 123 */, - U64_C(0x0bd7ba3ebb5dc726) /* 124 */, U64_C(0xe54bca55b86adb39) /* 125 */, - U64_C(0x1d7a3afd6c478063) /* 126 */, U64_C(0x519ec608e7669edd) /* 127 */, - U64_C(0x0e5715a2d149aa23) /* 128 */, U64_C(0x177d4571848ff194) /* 129 */, - U64_C(0xeeb55f3241014c22) /* 130 */, U64_C(0x0f5e5ca13a6e2ec2) /* 131 */, - U64_C(0x8029927b75f5c361) /* 132 */, U64_C(0xad139fabc3d6e436) /* 133 */, - U64_C(0x0d5df1a94ccf402f) /* 134 */, U64_C(0x3e8bd948bea5dfc8) /* 135 */, - U64_C(0xa5a0d357bd3ff77e) /* 136 */, U64_C(0xa2d12e251f74f645) /* 137 */, - U64_C(0x66fd9e525e81a082) /* 138 */, U64_C(0x2e0c90ce7f687a49) /* 139 */, - U64_C(0xc2e8bcbeba973bc5) /* 140 */, U64_C(0x000001bce509745f) /* 141 */, - U64_C(0x423777bbe6dab3d6) /* 142 */, U64_C(0xd1661c7eaef06eb5) /* 143 */, - U64_C(0xa1781f354daacfd8) /* 144 */, U64_C(0x2d11284a2b16affc) /* 145 */, - U64_C(0xf1fc4f67fa891d1f) /* 146 */, U64_C(0x73ecc25dcb920ada) /* 147 */, - U64_C(0xae610c22c2a12651) /* 148 */, U64_C(0x96e0a810d356b78a) /* 149 */, - U64_C(0x5a9a381f2fe7870f) /* 150 */, U64_C(0xd5ad62ede94e5530) /* 151 */, - U64_C(0xd225e5e8368d1427) /* 152 */, U64_C(0x65977b70c7af4631) /* 153 */, - U64_C(0x99f889b2de39d74f) /* 154 */, U64_C(0x233f30bf54e1d143) /* 155 */, - U64_C(0x9a9675d3d9a63c97) /* 156 */, U64_C(0x5470554ff334f9a8) /* 157 */, - U64_C(0x166acb744a4f5688) /* 158 */, U64_C(0x70c74caab2e4aead) /* 159 */, - U64_C(0xf0d091646f294d12) /* 160 */, U64_C(0x57b82a89684031d1) /* 161 */, - U64_C(0xefd95a5a61be0b6b) /* 162 */, U64_C(0x2fbd12e969f2f29a) /* 163 */, - U64_C(0x9bd37013feff9fe8) /* 164 */, U64_C(0x3f9b0404d6085a06) /* 165 */, - U64_C(0x4940c1f3166cfe15) /* 166 */, U64_C(0x09542c4dcdf3defb) /* 167 */, - U64_C(0xb4c5218385cd5ce3) /* 168 */, U64_C(0xc935b7dc4462a641) /* 169 */, - U64_C(0x3417f8a68ed3b63f) /* 170 */, U64_C(0xb80959295b215b40) /* 171 */, - U64_C(0xf99cdaef3b8c8572) /* 172 */, U64_C(0x018c0614f8fcb95d) /* 173 */, - U64_C(0x1b14accd1a3acdf3) /* 174 */, U64_C(0x84d471f200bb732d) /* 175 */, - U64_C(0xc1a3110e95e8da16) /* 176 */, U64_C(0x430a7220bf1a82b8) /* 177 */, - U64_C(0xb77e090d39df210e) /* 178 */, U64_C(0x5ef4bd9f3cd05e9d) /* 179 */, - U64_C(0x9d4ff6da7e57a444) /* 180 */, U64_C(0xda1d60e183d4a5f8) /* 181 */, - U64_C(0xb287c38417998e47) /* 182 */, U64_C(0xfe3edc121bb31886) /* 183 */, - U64_C(0xc7fe3ccc980ccbef) /* 184 */, U64_C(0xe46fb590189bfd03) /* 185 */, - U64_C(0x3732fd469a4c57dc) /* 186 */, U64_C(0x7ef700a07cf1ad65) /* 187 */, - U64_C(0x59c64468a31d8859) /* 188 */, U64_C(0x762fb0b4d45b61f6) /* 189 */, - U64_C(0x155baed099047718) /* 190 */, U64_C(0x68755e4c3d50baa6) /* 191 */, - U64_C(0xe9214e7f22d8b4df) /* 192 */, U64_C(0x2addbf532eac95f4) /* 193 */, - U64_C(0x32ae3909b4bd0109) /* 194 */, U64_C(0x834df537b08e3450) /* 195 */, - U64_C(0xfa209da84220728d) /* 196 */, U64_C(0x9e691d9b9efe23f7) /* 197 */, - U64_C(0x0446d288c4ae8d7f) /* 198 */, U64_C(0x7b4cc524e169785b) /* 199 */, - U64_C(0x21d87f0135ca1385) /* 200 */, U64_C(0xcebb400f137b8aa5) /* 201 */, - U64_C(0x272e2b66580796be) /* 202 */, U64_C(0x3612264125c2b0de) /* 203 */, - U64_C(0x057702bdad1efbb2) /* 204 */, U64_C(0xd4babb8eacf84be9) /* 205 */, - U64_C(0x91583139641bc67b) /* 206 */, U64_C(0x8bdc2de08036e024) /* 207 */, - U64_C(0x603c8156f49f68ed) /* 208 */, U64_C(0xf7d236f7dbef5111) /* 209 */, - U64_C(0x9727c4598ad21e80) /* 210 */, U64_C(0xa08a0896670a5fd7) /* 211 */, - U64_C(0xcb4a8f4309eba9cb) /* 212 */, U64_C(0x81af564b0f7036a1) /* 213 */, - U64_C(0xc0b99aa778199abd) /* 214 */, U64_C(0x959f1ec83fc8e952) /* 215 */, - U64_C(0x8c505077794a81b9) /* 216 */, U64_C(0x3acaaf8f056338f0) /* 217 */, - U64_C(0x07b43f50627a6778) /* 218 */, U64_C(0x4a44ab49f5eccc77) /* 219 */, - U64_C(0x3bc3d6e4b679ee98) /* 220 */, U64_C(0x9cc0d4d1cf14108c) /* 221 */, - U64_C(0x4406c00b206bc8a0) /* 222 */, U64_C(0x82a18854c8d72d89) /* 223 */, - U64_C(0x67e366b35c3c432c) /* 224 */, U64_C(0xb923dd61102b37f2) /* 225 */, - U64_C(0x56ab2779d884271d) /* 226 */, U64_C(0xbe83e1b0ff1525af) /* 227 */, - U64_C(0xfb7c65d4217e49a9) /* 228 */, U64_C(0x6bdbe0e76d48e7d4) /* 229 */, - U64_C(0x08df828745d9179e) /* 230 */, U64_C(0x22ea6a9add53bd34) /* 231 */, - U64_C(0xe36e141c5622200a) /* 232 */, U64_C(0x7f805d1b8cb750ee) /* 233 */, - U64_C(0xafe5c7a59f58e837) /* 234 */, U64_C(0xe27f996a4fb1c23c) /* 235 */, - U64_C(0xd3867dfb0775f0d0) /* 236 */, U64_C(0xd0e673de6e88891a) /* 237 */, - U64_C(0x123aeb9eafb86c25) /* 238 */, U64_C(0x30f1d5d5c145b895) /* 239 */, - U64_C(0xbb434a2dee7269e7) /* 240 */, U64_C(0x78cb67ecf931fa38) /* 241 */, - U64_C(0xf33b0372323bbf9c) /* 242 */, U64_C(0x52d66336fb279c74) /* 243 */, - U64_C(0x505f33ac0afb4eaa) /* 244 */, U64_C(0xe8a5cd99a2cce187) /* 245 */, - U64_C(0x534974801e2d30bb) /* 246 */, U64_C(0x8d2d5711d5876d90) /* 247 */, - U64_C(0x1f1a412891bc038e) /* 248 */, U64_C(0xd6e2e71d82e56648) /* 249 */, - U64_C(0x74036c3a497732b7) /* 250 */, U64_C(0x89b67ed96361f5ab) /* 251 */, - U64_C(0xffed95d8f1ea02a2) /* 252 */, U64_C(0xe72b3bd61464d43d) /* 253 */, - U64_C(0xa6300f170bdc4820) /* 254 */, U64_C(0xebc18760ed78a77a) /* 255 */ -}; -static u64 sbox2[256] = { - U64_C(0xe6a6be5a05a12138) /* 256 */, U64_C(0xb5a122a5b4f87c98) /* 257 */, - U64_C(0x563c6089140b6990) /* 258 */, U64_C(0x4c46cb2e391f5dd5) /* 259 */, - U64_C(0xd932addbc9b79434) /* 260 */, U64_C(0x08ea70e42015aff5) /* 261 */, - U64_C(0xd765a6673e478cf1) /* 262 */, U64_C(0xc4fb757eab278d99) /* 263 */, - U64_C(0xdf11c6862d6e0692) /* 264 */, U64_C(0xddeb84f10d7f3b16) /* 265 */, - U64_C(0x6f2ef604a665ea04) /* 266 */, U64_C(0x4a8e0f0ff0e0dfb3) /* 267 */, - U64_C(0xa5edeef83dbcba51) /* 268 */, U64_C(0xfc4f0a2a0ea4371e) /* 269 */, - U64_C(0xe83e1da85cb38429) /* 270 */, U64_C(0xdc8ff882ba1b1ce2) /* 271 */, - U64_C(0xcd45505e8353e80d) /* 272 */, U64_C(0x18d19a00d4db0717) /* 273 */, - U64_C(0x34a0cfeda5f38101) /* 274 */, U64_C(0x0be77e518887caf2) /* 275 */, - U64_C(0x1e341438b3c45136) /* 276 */, U64_C(0xe05797f49089ccf9) /* 277 */, - U64_C(0xffd23f9df2591d14) /* 278 */, U64_C(0x543dda228595c5cd) /* 279 */, - U64_C(0x661f81fd99052a33) /* 280 */, U64_C(0x8736e641db0f7b76) /* 281 */, - U64_C(0x15227725418e5307) /* 282 */, U64_C(0xe25f7f46162eb2fa) /* 283 */, - U64_C(0x48a8b2126c13d9fe) /* 284 */, U64_C(0xafdc541792e76eea) /* 285 */, - U64_C(0x03d912bfc6d1898f) /* 286 */, U64_C(0x31b1aafa1b83f51b) /* 287 */, - U64_C(0xf1ac2796e42ab7d9) /* 288 */, U64_C(0x40a3a7d7fcd2ebac) /* 289 */, - U64_C(0x1056136d0afbbcc5) /* 290 */, U64_C(0x7889e1dd9a6d0c85) /* 291 */, - U64_C(0xd33525782a7974aa) /* 292 */, U64_C(0xa7e25d09078ac09b) /* 293 */, - U64_C(0xbd4138b3eac6edd0) /* 294 */, U64_C(0x920abfbe71eb9e70) /* 295 */, - U64_C(0xa2a5d0f54fc2625c) /* 296 */, U64_C(0xc054e36b0b1290a3) /* 297 */, - U64_C(0xf6dd59ff62fe932b) /* 298 */, U64_C(0x3537354511a8ac7d) /* 299 */, - U64_C(0xca845e9172fadcd4) /* 300 */, U64_C(0x84f82b60329d20dc) /* 301 */, - U64_C(0x79c62ce1cd672f18) /* 302 */, U64_C(0x8b09a2add124642c) /* 303 */, - U64_C(0xd0c1e96a19d9e726) /* 304 */, U64_C(0x5a786a9b4ba9500c) /* 305 */, - U64_C(0x0e020336634c43f3) /* 306 */, U64_C(0xc17b474aeb66d822) /* 307 */, - U64_C(0x6a731ae3ec9baac2) /* 308 */, U64_C(0x8226667ae0840258) /* 309 */, - U64_C(0x67d4567691caeca5) /* 310 */, U64_C(0x1d94155c4875adb5) /* 311 */, - U64_C(0x6d00fd985b813fdf) /* 312 */, U64_C(0x51286efcb774cd06) /* 313 */, - U64_C(0x5e8834471fa744af) /* 314 */, U64_C(0xf72ca0aee761ae2e) /* 315 */, - U64_C(0xbe40e4cdaee8e09a) /* 316 */, U64_C(0xe9970bbb5118f665) /* 317 */, - U64_C(0x726e4beb33df1964) /* 318 */, U64_C(0x703b000729199762) /* 319 */, - U64_C(0x4631d816f5ef30a7) /* 320 */, U64_C(0xb880b5b51504a6be) /* 321 */, - U64_C(0x641793c37ed84b6c) /* 322 */, U64_C(0x7b21ed77f6e97d96) /* 323 */, - U64_C(0x776306312ef96b73) /* 324 */, U64_C(0xae528948e86ff3f4) /* 325 */, - U64_C(0x53dbd7f286a3f8f8) /* 326 */, U64_C(0x16cadce74cfc1063) /* 327 */, - U64_C(0x005c19bdfa52c6dd) /* 328 */, U64_C(0x68868f5d64d46ad3) /* 329 */, - U64_C(0x3a9d512ccf1e186a) /* 330 */, U64_C(0x367e62c2385660ae) /* 331 */, - U64_C(0xe359e7ea77dcb1d7) /* 332 */, U64_C(0x526c0773749abe6e) /* 333 */, - U64_C(0x735ae5f9d09f734b) /* 334 */, U64_C(0x493fc7cc8a558ba8) /* 335 */, - U64_C(0xb0b9c1533041ab45) /* 336 */, U64_C(0x321958ba470a59bd) /* 337 */, - U64_C(0x852db00b5f46c393) /* 338 */, U64_C(0x91209b2bd336b0e5) /* 339 */, - U64_C(0x6e604f7d659ef19f) /* 340 */, U64_C(0xb99a8ae2782ccb24) /* 341 */, - U64_C(0xccf52ab6c814c4c7) /* 342 */, U64_C(0x4727d9afbe11727b) /* 343 */, - U64_C(0x7e950d0c0121b34d) /* 344 */, U64_C(0x756f435670ad471f) /* 345 */, - U64_C(0xf5add442615a6849) /* 346 */, U64_C(0x4e87e09980b9957a) /* 347 */, - U64_C(0x2acfa1df50aee355) /* 348 */, U64_C(0xd898263afd2fd556) /* 349 */, - U64_C(0xc8f4924dd80c8fd6) /* 350 */, U64_C(0xcf99ca3d754a173a) /* 351 */, - U64_C(0xfe477bacaf91bf3c) /* 352 */, U64_C(0xed5371f6d690c12d) /* 353 */, - U64_C(0x831a5c285e687094) /* 354 */, U64_C(0xc5d3c90a3708a0a4) /* 355 */, - U64_C(0x0f7f903717d06580) /* 356 */, U64_C(0x19f9bb13b8fdf27f) /* 357 */, - U64_C(0xb1bd6f1b4d502843) /* 358 */, U64_C(0x1c761ba38fff4012) /* 359 */, - U64_C(0x0d1530c4e2e21f3b) /* 360 */, U64_C(0x8943ce69a7372c8a) /* 361 */, - U64_C(0xe5184e11feb5ce66) /* 362 */, U64_C(0x618bdb80bd736621) /* 363 */, - U64_C(0x7d29bad68b574d0b) /* 364 */, U64_C(0x81bb613e25e6fe5b) /* 365 */, - U64_C(0x071c9c10bc07913f) /* 366 */, U64_C(0xc7beeb7909ac2d97) /* 367 */, - U64_C(0xc3e58d353bc5d757) /* 368 */, U64_C(0xeb017892f38f61e8) /* 369 */, - U64_C(0xd4effb9c9b1cc21a) /* 370 */, U64_C(0x99727d26f494f7ab) /* 371 */, - U64_C(0xa3e063a2956b3e03) /* 372 */, U64_C(0x9d4a8b9a4aa09c30) /* 373 */, - U64_C(0x3f6ab7d500090fb4) /* 374 */, U64_C(0x9cc0f2a057268ac0) /* 375 */, - U64_C(0x3dee9d2dedbf42d1) /* 376 */, U64_C(0x330f49c87960a972) /* 377 */, - U64_C(0xc6b2720287421b41) /* 378 */, U64_C(0x0ac59ec07c00369c) /* 379 */, - U64_C(0xef4eac49cb353425) /* 380 */, U64_C(0xf450244eef0129d8) /* 381 */, - U64_C(0x8acc46e5caf4deb6) /* 382 */, U64_C(0x2ffeab63989263f7) /* 383 */, - U64_C(0x8f7cb9fe5d7a4578) /* 384 */, U64_C(0x5bd8f7644e634635) /* 385 */, - U64_C(0x427a7315bf2dc900) /* 386 */, U64_C(0x17d0c4aa2125261c) /* 387 */, - U64_C(0x3992486c93518e50) /* 388 */, U64_C(0xb4cbfee0a2d7d4c3) /* 389 */, - U64_C(0x7c75d6202c5ddd8d) /* 390 */, U64_C(0xdbc295d8e35b6c61) /* 391 */, - U64_C(0x60b369d302032b19) /* 392 */, U64_C(0xce42685fdce44132) /* 393 */, - U64_C(0x06f3ddb9ddf65610) /* 394 */, U64_C(0x8ea4d21db5e148f0) /* 395 */, - U64_C(0x20b0fce62fcd496f) /* 396 */, U64_C(0x2c1b912358b0ee31) /* 397 */, - U64_C(0xb28317b818f5a308) /* 398 */, U64_C(0xa89c1e189ca6d2cf) /* 399 */, - U64_C(0x0c6b18576aaadbc8) /* 400 */, U64_C(0xb65deaa91299fae3) /* 401 */, - U64_C(0xfb2b794b7f1027e7) /* 402 */, U64_C(0x04e4317f443b5beb) /* 403 */, - U64_C(0x4b852d325939d0a6) /* 404 */, U64_C(0xd5ae6beefb207ffc) /* 405 */, - U64_C(0x309682b281c7d374) /* 406 */, U64_C(0xbae309a194c3b475) /* 407 */, - U64_C(0x8cc3f97b13b49f05) /* 408 */, U64_C(0x98a9422ff8293967) /* 409 */, - U64_C(0x244b16b01076ff7c) /* 410 */, U64_C(0xf8bf571c663d67ee) /* 411 */, - U64_C(0x1f0d6758eee30da1) /* 412 */, U64_C(0xc9b611d97adeb9b7) /* 413 */, - U64_C(0xb7afd5887b6c57a2) /* 414 */, U64_C(0x6290ae846b984fe1) /* 415 */, - U64_C(0x94df4cdeacc1a5fd) /* 416 */, U64_C(0x058a5bd1c5483aff) /* 417 */, - U64_C(0x63166cc142ba3c37) /* 418 */, U64_C(0x8db8526eb2f76f40) /* 419 */, - U64_C(0xe10880036f0d6d4e) /* 420 */, U64_C(0x9e0523c9971d311d) /* 421 */, - U64_C(0x45ec2824cc7cd691) /* 422 */, U64_C(0x575b8359e62382c9) /* 423 */, - U64_C(0xfa9e400dc4889995) /* 424 */, U64_C(0xd1823ecb45721568) /* 425 */, - U64_C(0xdafd983b8206082f) /* 426 */, U64_C(0xaa7d29082386a8cb) /* 427 */, - U64_C(0x269fcd4403b87588) /* 428 */, U64_C(0x1b91f5f728bdd1e0) /* 429 */, - U64_C(0xe4669f39040201f6) /* 430 */, U64_C(0x7a1d7c218cf04ade) /* 431 */, - U64_C(0x65623c29d79ce5ce) /* 432 */, U64_C(0x2368449096c00bb1) /* 433 */, - U64_C(0xab9bf1879da503ba) /* 434 */, U64_C(0xbc23ecb1a458058e) /* 435 */, - U64_C(0x9a58df01bb401ecc) /* 436 */, U64_C(0xa070e868a85f143d) /* 437 */, - U64_C(0x4ff188307df2239e) /* 438 */, U64_C(0x14d565b41a641183) /* 439 */, - U64_C(0xee13337452701602) /* 440 */, U64_C(0x950e3dcf3f285e09) /* 441 */, - U64_C(0x59930254b9c80953) /* 442 */, U64_C(0x3bf299408930da6d) /* 443 */, - U64_C(0xa955943f53691387) /* 444 */, U64_C(0xa15edecaa9cb8784) /* 445 */, - U64_C(0x29142127352be9a0) /* 446 */, U64_C(0x76f0371fff4e7afb) /* 447 */, - U64_C(0x0239f450274f2228) /* 448 */, U64_C(0xbb073af01d5e868b) /* 449 */, - U64_C(0xbfc80571c10e96c1) /* 450 */, U64_C(0xd267088568222e23) /* 451 */, - U64_C(0x9671a3d48e80b5b0) /* 452 */, U64_C(0x55b5d38ae193bb81) /* 453 */, - U64_C(0x693ae2d0a18b04b8) /* 454 */, U64_C(0x5c48b4ecadd5335f) /* 455 */, - U64_C(0xfd743b194916a1ca) /* 456 */, U64_C(0x2577018134be98c4) /* 457 */, - U64_C(0xe77987e83c54a4ad) /* 458 */, U64_C(0x28e11014da33e1b9) /* 459 */, - U64_C(0x270cc59e226aa213) /* 460 */, U64_C(0x71495f756d1a5f60) /* 461 */, - U64_C(0x9be853fb60afef77) /* 462 */, U64_C(0xadc786a7f7443dbf) /* 463 */, - U64_C(0x0904456173b29a82) /* 464 */, U64_C(0x58bc7a66c232bd5e) /* 465 */, - U64_C(0xf306558c673ac8b2) /* 466 */, U64_C(0x41f639c6b6c9772a) /* 467 */, - U64_C(0x216defe99fda35da) /* 468 */, U64_C(0x11640cc71c7be615) /* 469 */, - U64_C(0x93c43694565c5527) /* 470 */, U64_C(0xea038e6246777839) /* 471 */, - U64_C(0xf9abf3ce5a3e2469) /* 472 */, U64_C(0x741e768d0fd312d2) /* 473 */, - U64_C(0x0144b883ced652c6) /* 474 */, U64_C(0xc20b5a5ba33f8552) /* 475 */, - U64_C(0x1ae69633c3435a9d) /* 476 */, U64_C(0x97a28ca4088cfdec) /* 477 */, - U64_C(0x8824a43c1e96f420) /* 478 */, U64_C(0x37612fa66eeea746) /* 479 */, - U64_C(0x6b4cb165f9cf0e5a) /* 480 */, U64_C(0x43aa1c06a0abfb4a) /* 481 */, - U64_C(0x7f4dc26ff162796b) /* 482 */, U64_C(0x6cbacc8e54ed9b0f) /* 483 */, - U64_C(0xa6b7ffefd2bb253e) /* 484 */, U64_C(0x2e25bc95b0a29d4f) /* 485 */, - U64_C(0x86d6a58bdef1388c) /* 486 */, U64_C(0xded74ac576b6f054) /* 487 */, - U64_C(0x8030bdbc2b45805d) /* 488 */, U64_C(0x3c81af70e94d9289) /* 489 */, - U64_C(0x3eff6dda9e3100db) /* 490 */, U64_C(0xb38dc39fdfcc8847) /* 491 */, - U64_C(0x123885528d17b87e) /* 492 */, U64_C(0xf2da0ed240b1b642) /* 493 */, - U64_C(0x44cefadcd54bf9a9) /* 494 */, U64_C(0x1312200e433c7ee6) /* 495 */, - U64_C(0x9ffcc84f3a78c748) /* 496 */, U64_C(0xf0cd1f72248576bb) /* 497 */, - U64_C(0xec6974053638cfe4) /* 498 */, U64_C(0x2ba7b67c0cec4e4c) /* 499 */, - U64_C(0xac2f4df3e5ce32ed) /* 500 */, U64_C(0xcb33d14326ea4c11) /* 501 */, - U64_C(0xa4e9044cc77e58bc) /* 502 */, U64_C(0x5f513293d934fcef) /* 503 */, - U64_C(0x5dc9645506e55444) /* 504 */, U64_C(0x50de418f317de40a) /* 505 */, - U64_C(0x388cb31a69dde259) /* 506 */, U64_C(0x2db4a83455820a86) /* 507 */, - U64_C(0x9010a91e84711ae9) /* 508 */, U64_C(0x4df7f0b7b1498371) /* 509 */, - U64_C(0xd62a2eabc0977179) /* 510 */, U64_C(0x22fac097aa8d5c0e) /* 511 */ -}; -static u64 sbox3[256] = { - U64_C(0xf49fcc2ff1daf39b) /* 512 */, U64_C(0x487fd5c66ff29281) /* 513 */, - U64_C(0xe8a30667fcdca83f) /* 514 */, U64_C(0x2c9b4be3d2fcce63) /* 515 */, - U64_C(0xda3ff74b93fbbbc2) /* 516 */, U64_C(0x2fa165d2fe70ba66) /* 517 */, - U64_C(0xa103e279970e93d4) /* 518 */, U64_C(0xbecdec77b0e45e71) /* 519 */, - U64_C(0xcfb41e723985e497) /* 520 */, U64_C(0xb70aaa025ef75017) /* 521 */, - U64_C(0xd42309f03840b8e0) /* 522 */, U64_C(0x8efc1ad035898579) /* 523 */, - U64_C(0x96c6920be2b2abc5) /* 524 */, U64_C(0x66af4163375a9172) /* 525 */, - U64_C(0x2174abdcca7127fb) /* 526 */, U64_C(0xb33ccea64a72ff41) /* 527 */, - U64_C(0xf04a4933083066a5) /* 528 */, U64_C(0x8d970acdd7289af5) /* 529 */, - U64_C(0x8f96e8e031c8c25e) /* 530 */, U64_C(0xf3fec02276875d47) /* 531 */, - U64_C(0xec7bf310056190dd) /* 532 */, U64_C(0xf5adb0aebb0f1491) /* 533 */, - U64_C(0x9b50f8850fd58892) /* 534 */, U64_C(0x4975488358b74de8) /* 535 */, - U64_C(0xa3354ff691531c61) /* 536 */, U64_C(0x0702bbe481d2c6ee) /* 537 */, - U64_C(0x89fb24057deded98) /* 538 */, U64_C(0xac3075138596e902) /* 539 */, - U64_C(0x1d2d3580172772ed) /* 540 */, U64_C(0xeb738fc28e6bc30d) /* 541 */, - U64_C(0x5854ef8f63044326) /* 542 */, U64_C(0x9e5c52325add3bbe) /* 543 */, - U64_C(0x90aa53cf325c4623) /* 544 */, U64_C(0xc1d24d51349dd067) /* 545 */, - U64_C(0x2051cfeea69ea624) /* 546 */, U64_C(0x13220f0a862e7e4f) /* 547 */, - U64_C(0xce39399404e04864) /* 548 */, U64_C(0xd9c42ca47086fcb7) /* 549 */, - U64_C(0x685ad2238a03e7cc) /* 550 */, U64_C(0x066484b2ab2ff1db) /* 551 */, - U64_C(0xfe9d5d70efbf79ec) /* 552 */, U64_C(0x5b13b9dd9c481854) /* 553 */, - U64_C(0x15f0d475ed1509ad) /* 554 */, U64_C(0x0bebcd060ec79851) /* 555 */, - U64_C(0xd58c6791183ab7f8) /* 556 */, U64_C(0xd1187c5052f3eee4) /* 557 */, - U64_C(0xc95d1192e54e82ff) /* 558 */, U64_C(0x86eea14cb9ac6ca2) /* 559 */, - U64_C(0x3485beb153677d5d) /* 560 */, U64_C(0xdd191d781f8c492a) /* 561 */, - U64_C(0xf60866baa784ebf9) /* 562 */, U64_C(0x518f643ba2d08c74) /* 563 */, - U64_C(0x8852e956e1087c22) /* 564 */, U64_C(0xa768cb8dc410ae8d) /* 565 */, - U64_C(0x38047726bfec8e1a) /* 566 */, U64_C(0xa67738b4cd3b45aa) /* 567 */, - U64_C(0xad16691cec0dde19) /* 568 */, U64_C(0xc6d4319380462e07) /* 569 */, - U64_C(0xc5a5876d0ba61938) /* 570 */, U64_C(0x16b9fa1fa58fd840) /* 571 */, - U64_C(0x188ab1173ca74f18) /* 572 */, U64_C(0xabda2f98c99c021f) /* 573 */, - U64_C(0x3e0580ab134ae816) /* 574 */, U64_C(0x5f3b05b773645abb) /* 575 */, - U64_C(0x2501a2be5575f2f6) /* 576 */, U64_C(0x1b2f74004e7e8ba9) /* 577 */, - U64_C(0x1cd7580371e8d953) /* 578 */, U64_C(0x7f6ed89562764e30) /* 579 */, - U64_C(0xb15926ff596f003d) /* 580 */, U64_C(0x9f65293da8c5d6b9) /* 581 */, - U64_C(0x6ecef04dd690f84c) /* 582 */, U64_C(0x4782275fff33af88) /* 583 */, - U64_C(0xe41433083f820801) /* 584 */, U64_C(0xfd0dfe409a1af9b5) /* 585 */, - U64_C(0x4325a3342cdb396b) /* 586 */, U64_C(0x8ae77e62b301b252) /* 587 */, - U64_C(0xc36f9e9f6655615a) /* 588 */, U64_C(0x85455a2d92d32c09) /* 589 */, - U64_C(0xf2c7dea949477485) /* 590 */, U64_C(0x63cfb4c133a39eba) /* 591 */, - U64_C(0x83b040cc6ebc5462) /* 592 */, U64_C(0x3b9454c8fdb326b0) /* 593 */, - U64_C(0x56f56a9e87ffd78c) /* 594 */, U64_C(0x2dc2940d99f42bc6) /* 595 */, - U64_C(0x98f7df096b096e2d) /* 596 */, U64_C(0x19a6e01e3ad852bf) /* 597 */, - U64_C(0x42a99ccbdbd4b40b) /* 598 */, U64_C(0xa59998af45e9c559) /* 599 */, - U64_C(0x366295e807d93186) /* 600 */, U64_C(0x6b48181bfaa1f773) /* 601 */, - U64_C(0x1fec57e2157a0a1d) /* 602 */, U64_C(0x4667446af6201ad5) /* 603 */, - U64_C(0xe615ebcacfb0f075) /* 604 */, U64_C(0xb8f31f4f68290778) /* 605 */, - U64_C(0x22713ed6ce22d11e) /* 606 */, U64_C(0x3057c1a72ec3c93b) /* 607 */, - U64_C(0xcb46acc37c3f1f2f) /* 608 */, U64_C(0xdbb893fd02aaf50e) /* 609 */, - U64_C(0x331fd92e600b9fcf) /* 610 */, U64_C(0xa498f96148ea3ad6) /* 611 */, - U64_C(0xa8d8426e8b6a83ea) /* 612 */, U64_C(0xa089b274b7735cdc) /* 613 */, - U64_C(0x87f6b3731e524a11) /* 614 */, U64_C(0x118808e5cbc96749) /* 615 */, - U64_C(0x9906e4c7b19bd394) /* 616 */, U64_C(0xafed7f7e9b24a20c) /* 617 */, - U64_C(0x6509eadeeb3644a7) /* 618 */, U64_C(0x6c1ef1d3e8ef0ede) /* 619 */, - U64_C(0xb9c97d43e9798fb4) /* 620 */, U64_C(0xa2f2d784740c28a3) /* 621 */, - U64_C(0x7b8496476197566f) /* 622 */, U64_C(0x7a5be3e6b65f069d) /* 623 */, - U64_C(0xf96330ed78be6f10) /* 624 */, U64_C(0xeee60de77a076a15) /* 625 */, - U64_C(0x2b4bee4aa08b9bd0) /* 626 */, U64_C(0x6a56a63ec7b8894e) /* 627 */, - U64_C(0x02121359ba34fef4) /* 628 */, U64_C(0x4cbf99f8283703fc) /* 629 */, - U64_C(0x398071350caf30c8) /* 630 */, U64_C(0xd0a77a89f017687a) /* 631 */, - U64_C(0xf1c1a9eb9e423569) /* 632 */, U64_C(0x8c7976282dee8199) /* 633 */, - U64_C(0x5d1737a5dd1f7abd) /* 634 */, U64_C(0x4f53433c09a9fa80) /* 635 */, - U64_C(0xfa8b0c53df7ca1d9) /* 636 */, U64_C(0x3fd9dcbc886ccb77) /* 637 */, - U64_C(0xc040917ca91b4720) /* 638 */, U64_C(0x7dd00142f9d1dcdf) /* 639 */, - U64_C(0x8476fc1d4f387b58) /* 640 */, U64_C(0x23f8e7c5f3316503) /* 641 */, - U64_C(0x032a2244e7e37339) /* 642 */, U64_C(0x5c87a5d750f5a74b) /* 643 */, - U64_C(0x082b4cc43698992e) /* 644 */, U64_C(0xdf917becb858f63c) /* 645 */, - U64_C(0x3270b8fc5bf86dda) /* 646 */, U64_C(0x10ae72bb29b5dd76) /* 647 */, - U64_C(0x576ac94e7700362b) /* 648 */, U64_C(0x1ad112dac61efb8f) /* 649 */, - U64_C(0x691bc30ec5faa427) /* 650 */, U64_C(0xff246311cc327143) /* 651 */, - U64_C(0x3142368e30e53206) /* 652 */, U64_C(0x71380e31e02ca396) /* 653 */, - U64_C(0x958d5c960aad76f1) /* 654 */, U64_C(0xf8d6f430c16da536) /* 655 */, - U64_C(0xc8ffd13f1be7e1d2) /* 656 */, U64_C(0x7578ae66004ddbe1) /* 657 */, - U64_C(0x05833f01067be646) /* 658 */, U64_C(0xbb34b5ad3bfe586d) /* 659 */, - U64_C(0x095f34c9a12b97f0) /* 660 */, U64_C(0x247ab64525d60ca8) /* 661 */, - U64_C(0xdcdbc6f3017477d1) /* 662 */, U64_C(0x4a2e14d4decad24d) /* 663 */, - U64_C(0xbdb5e6d9be0a1eeb) /* 664 */, U64_C(0x2a7e70f7794301ab) /* 665 */, - U64_C(0xdef42d8a270540fd) /* 666 */, U64_C(0x01078ec0a34c22c1) /* 667 */, - U64_C(0xe5de511af4c16387) /* 668 */, U64_C(0x7ebb3a52bd9a330a) /* 669 */, - U64_C(0x77697857aa7d6435) /* 670 */, U64_C(0x004e831603ae4c32) /* 671 */, - U64_C(0xe7a21020ad78e312) /* 672 */, U64_C(0x9d41a70c6ab420f2) /* 673 */, - U64_C(0x28e06c18ea1141e6) /* 674 */, U64_C(0xd2b28cbd984f6b28) /* 675 */, - U64_C(0x26b75f6c446e9d83) /* 676 */, U64_C(0xba47568c4d418d7f) /* 677 */, - U64_C(0xd80badbfe6183d8e) /* 678 */, U64_C(0x0e206d7f5f166044) /* 679 */, - U64_C(0xe258a43911cbca3e) /* 680 */, U64_C(0x723a1746b21dc0bc) /* 681 */, - U64_C(0xc7caa854f5d7cdd3) /* 682 */, U64_C(0x7cac32883d261d9c) /* 683 */, - U64_C(0x7690c26423ba942c) /* 684 */, U64_C(0x17e55524478042b8) /* 685 */, - U64_C(0xe0be477656a2389f) /* 686 */, U64_C(0x4d289b5e67ab2da0) /* 687 */, - U64_C(0x44862b9c8fbbfd31) /* 688 */, U64_C(0xb47cc8049d141365) /* 689 */, - U64_C(0x822c1b362b91c793) /* 690 */, U64_C(0x4eb14655fb13dfd8) /* 691 */, - U64_C(0x1ecbba0714e2a97b) /* 692 */, U64_C(0x6143459d5cde5f14) /* 693 */, - U64_C(0x53a8fbf1d5f0ac89) /* 694 */, U64_C(0x97ea04d81c5e5b00) /* 695 */, - U64_C(0x622181a8d4fdb3f3) /* 696 */, U64_C(0xe9bcd341572a1208) /* 697 */, - U64_C(0x1411258643cce58a) /* 698 */, U64_C(0x9144c5fea4c6e0a4) /* 699 */, - U64_C(0x0d33d06565cf620f) /* 700 */, U64_C(0x54a48d489f219ca1) /* 701 */, - U64_C(0xc43e5eac6d63c821) /* 702 */, U64_C(0xa9728b3a72770daf) /* 703 */, - U64_C(0xd7934e7b20df87ef) /* 704 */, U64_C(0xe35503b61a3e86e5) /* 705 */, - U64_C(0xcae321fbc819d504) /* 706 */, U64_C(0x129a50b3ac60bfa6) /* 707 */, - U64_C(0xcd5e68ea7e9fb6c3) /* 708 */, U64_C(0xb01c90199483b1c7) /* 709 */, - U64_C(0x3de93cd5c295376c) /* 710 */, U64_C(0xaed52edf2ab9ad13) /* 711 */, - U64_C(0x2e60f512c0a07884) /* 712 */, U64_C(0xbc3d86a3e36210c9) /* 713 */, - U64_C(0x35269d9b163951ce) /* 714 */, U64_C(0x0c7d6e2ad0cdb5fa) /* 715 */, - U64_C(0x59e86297d87f5733) /* 716 */, U64_C(0x298ef221898db0e7) /* 717 */, - U64_C(0x55000029d1a5aa7e) /* 718 */, U64_C(0x8bc08ae1b5061b45) /* 719 */, - U64_C(0xc2c31c2b6c92703a) /* 720 */, U64_C(0x94cc596baf25ef42) /* 721 */, - U64_C(0x0a1d73db22540456) /* 722 */, U64_C(0x04b6a0f9d9c4179a) /* 723 */, - U64_C(0xeffdafa2ae3d3c60) /* 724 */, U64_C(0xf7c8075bb49496c4) /* 725 */, - U64_C(0x9cc5c7141d1cd4e3) /* 726 */, U64_C(0x78bd1638218e5534) /* 727 */, - U64_C(0xb2f11568f850246a) /* 728 */, U64_C(0xedfabcfa9502bc29) /* 729 */, - U64_C(0x796ce5f2da23051b) /* 730 */, U64_C(0xaae128b0dc93537c) /* 731 */, - U64_C(0x3a493da0ee4b29ae) /* 732 */, U64_C(0xb5df6b2c416895d7) /* 733 */, - U64_C(0xfcabbd25122d7f37) /* 734 */, U64_C(0x70810b58105dc4b1) /* 735 */, - U64_C(0xe10fdd37f7882a90) /* 736 */, U64_C(0x524dcab5518a3f5c) /* 737 */, - U64_C(0x3c9e85878451255b) /* 738 */, U64_C(0x4029828119bd34e2) /* 739 */, - U64_C(0x74a05b6f5d3ceccb) /* 740 */, U64_C(0xb610021542e13eca) /* 741 */, - U64_C(0x0ff979d12f59e2ac) /* 742 */, U64_C(0x6037da27e4f9cc50) /* 743 */, - U64_C(0x5e92975a0df1847d) /* 744 */, U64_C(0xd66de190d3e623fe) /* 745 */, - U64_C(0x5032d6b87b568048) /* 746 */, U64_C(0x9a36b7ce8235216e) /* 747 */, - U64_C(0x80272a7a24f64b4a) /* 748 */, U64_C(0x93efed8b8c6916f7) /* 749 */, - U64_C(0x37ddbff44cce1555) /* 750 */, U64_C(0x4b95db5d4b99bd25) /* 751 */, - U64_C(0x92d3fda169812fc0) /* 752 */, U64_C(0xfb1a4a9a90660bb6) /* 753 */, - U64_C(0x730c196946a4b9b2) /* 754 */, U64_C(0x81e289aa7f49da68) /* 755 */, - U64_C(0x64669a0f83b1a05f) /* 756 */, U64_C(0x27b3ff7d9644f48b) /* 757 */, - U64_C(0xcc6b615c8db675b3) /* 758 */, U64_C(0x674f20b9bcebbe95) /* 759 */, - U64_C(0x6f31238275655982) /* 760 */, U64_C(0x5ae488713e45cf05) /* 761 */, - U64_C(0xbf619f9954c21157) /* 762 */, U64_C(0xeabac46040a8eae9) /* 763 */, - U64_C(0x454c6fe9f2c0c1cd) /* 764 */, U64_C(0x419cf6496412691c) /* 765 */, - U64_C(0xd3dc3bef265b0f70) /* 766 */, U64_C(0x6d0e60f5c3578a9e) /* 767 */ -}; -static u64 sbox4[256] = { - U64_C(0x5b0e608526323c55) /* 768 */, U64_C(0x1a46c1a9fa1b59f5) /* 769 */, - U64_C(0xa9e245a17c4c8ffa) /* 770 */, U64_C(0x65ca5159db2955d7) /* 771 */, - U64_C(0x05db0a76ce35afc2) /* 772 */, U64_C(0x81eac77ea9113d45) /* 773 */, - U64_C(0x528ef88ab6ac0a0d) /* 774 */, U64_C(0xa09ea253597be3ff) /* 775 */, - U64_C(0x430ddfb3ac48cd56) /* 776 */, U64_C(0xc4b3a67af45ce46f) /* 777 */, - U64_C(0x4ececfd8fbe2d05e) /* 778 */, U64_C(0x3ef56f10b39935f0) /* 779 */, - U64_C(0x0b22d6829cd619c6) /* 780 */, U64_C(0x17fd460a74df2069) /* 781 */, - U64_C(0x6cf8cc8e8510ed40) /* 782 */, U64_C(0xd6c824bf3a6ecaa7) /* 783 */, - U64_C(0x61243d581a817049) /* 784 */, U64_C(0x048bacb6bbc163a2) /* 785 */, - U64_C(0xd9a38ac27d44cc32) /* 786 */, U64_C(0x7fddff5baaf410ab) /* 787 */, - U64_C(0xad6d495aa804824b) /* 788 */, U64_C(0xe1a6a74f2d8c9f94) /* 789 */, - U64_C(0xd4f7851235dee8e3) /* 790 */, U64_C(0xfd4b7f886540d893) /* 791 */, - U64_C(0x247c20042aa4bfda) /* 792 */, U64_C(0x096ea1c517d1327c) /* 793 */, - U64_C(0xd56966b4361a6685) /* 794 */, U64_C(0x277da5c31221057d) /* 795 */, - U64_C(0x94d59893a43acff7) /* 796 */, U64_C(0x64f0c51ccdc02281) /* 797 */, - U64_C(0x3d33bcc4ff6189db) /* 798 */, U64_C(0xe005cb184ce66af1) /* 799 */, - U64_C(0xff5ccd1d1db99bea) /* 800 */, U64_C(0xb0b854a7fe42980f) /* 801 */, - U64_C(0x7bd46a6a718d4b9f) /* 802 */, U64_C(0xd10fa8cc22a5fd8c) /* 803 */, - U64_C(0xd31484952be4bd31) /* 804 */, U64_C(0xc7fa975fcb243847) /* 805 */, - U64_C(0x4886ed1e5846c407) /* 806 */, U64_C(0x28cddb791eb70b04) /* 807 */, - U64_C(0xc2b00be2f573417f) /* 808 */, U64_C(0x5c9590452180f877) /* 809 */, - U64_C(0x7a6bddfff370eb00) /* 810 */, U64_C(0xce509e38d6d9d6a4) /* 811 */, - U64_C(0xebeb0f00647fa702) /* 812 */, U64_C(0x1dcc06cf76606f06) /* 813 */, - U64_C(0xe4d9f28ba286ff0a) /* 814 */, U64_C(0xd85a305dc918c262) /* 815 */, - U64_C(0x475b1d8732225f54) /* 816 */, U64_C(0x2d4fb51668ccb5fe) /* 817 */, - U64_C(0xa679b9d9d72bba20) /* 818 */, U64_C(0x53841c0d912d43a5) /* 819 */, - U64_C(0x3b7eaa48bf12a4e8) /* 820 */, U64_C(0x781e0e47f22f1ddf) /* 821 */, - U64_C(0xeff20ce60ab50973) /* 822 */, U64_C(0x20d261d19dffb742) /* 823 */, - U64_C(0x16a12b03062a2e39) /* 824 */, U64_C(0x1960eb2239650495) /* 825 */, - U64_C(0x251c16fed50eb8b8) /* 826 */, U64_C(0x9ac0c330f826016e) /* 827 */, - U64_C(0xed152665953e7671) /* 828 */, U64_C(0x02d63194a6369570) /* 829 */, - U64_C(0x5074f08394b1c987) /* 830 */, U64_C(0x70ba598c90b25ce1) /* 831 */, - U64_C(0x794a15810b9742f6) /* 832 */, U64_C(0x0d5925e9fcaf8c6c) /* 833 */, - U64_C(0x3067716cd868744e) /* 834 */, U64_C(0x910ab077e8d7731b) /* 835 */, - U64_C(0x6a61bbdb5ac42f61) /* 836 */, U64_C(0x93513efbf0851567) /* 837 */, - U64_C(0xf494724b9e83e9d5) /* 838 */, U64_C(0xe887e1985c09648d) /* 839 */, - U64_C(0x34b1d3c675370cfd) /* 840 */, U64_C(0xdc35e433bc0d255d) /* 841 */, - U64_C(0xd0aab84234131be0) /* 842 */, U64_C(0x08042a50b48b7eaf) /* 843 */, - U64_C(0x9997c4ee44a3ab35) /* 844 */, U64_C(0x829a7b49201799d0) /* 845 */, - U64_C(0x263b8307b7c54441) /* 846 */, U64_C(0x752f95f4fd6a6ca6) /* 847 */, - U64_C(0x927217402c08c6e5) /* 848 */, U64_C(0x2a8ab754a795d9ee) /* 849 */, - U64_C(0xa442f7552f72943d) /* 850 */, U64_C(0x2c31334e19781208) /* 851 */, - U64_C(0x4fa98d7ceaee6291) /* 852 */, U64_C(0x55c3862f665db309) /* 853 */, - U64_C(0xbd0610175d53b1f3) /* 854 */, U64_C(0x46fe6cb840413f27) /* 855 */, - U64_C(0x3fe03792df0cfa59) /* 856 */, U64_C(0xcfe700372eb85e8f) /* 857 */, - U64_C(0xa7be29e7adbce118) /* 858 */, U64_C(0xe544ee5cde8431dd) /* 859 */, - U64_C(0x8a781b1b41f1873e) /* 860 */, U64_C(0xa5c94c78a0d2f0e7) /* 861 */, - U64_C(0x39412e2877b60728) /* 862 */, U64_C(0xa1265ef3afc9a62c) /* 863 */, - U64_C(0xbcc2770c6a2506c5) /* 864 */, U64_C(0x3ab66dd5dce1ce12) /* 865 */, - U64_C(0xe65499d04a675b37) /* 866 */, U64_C(0x7d8f523481bfd216) /* 867 */, - U64_C(0x0f6f64fcec15f389) /* 868 */, U64_C(0x74efbe618b5b13c8) /* 869 */, - U64_C(0xacdc82b714273e1d) /* 870 */, U64_C(0xdd40bfe003199d17) /* 871 */, - U64_C(0x37e99257e7e061f8) /* 872 */, U64_C(0xfa52626904775aaa) /* 873 */, - U64_C(0x8bbbf63a463d56f9) /* 874 */, U64_C(0xf0013f1543a26e64) /* 875 */, - U64_C(0xa8307e9f879ec898) /* 876 */, U64_C(0xcc4c27a4150177cc) /* 877 */, - U64_C(0x1b432f2cca1d3348) /* 878 */, U64_C(0xde1d1f8f9f6fa013) /* 879 */, - U64_C(0x606602a047a7ddd6) /* 880 */, U64_C(0xd237ab64cc1cb2c7) /* 881 */, - U64_C(0x9b938e7225fcd1d3) /* 882 */, U64_C(0xec4e03708e0ff476) /* 883 */, - U64_C(0xfeb2fbda3d03c12d) /* 884 */, U64_C(0xae0bced2ee43889a) /* 885 */, - U64_C(0x22cb8923ebfb4f43) /* 886 */, U64_C(0x69360d013cf7396d) /* 887 */, - U64_C(0x855e3602d2d4e022) /* 888 */, U64_C(0x073805bad01f784c) /* 889 */, - U64_C(0x33e17a133852f546) /* 890 */, U64_C(0xdf4874058ac7b638) /* 891 */, - U64_C(0xba92b29c678aa14a) /* 892 */, U64_C(0x0ce89fc76cfaadcd) /* 893 */, - U64_C(0x5f9d4e0908339e34) /* 894 */, U64_C(0xf1afe9291f5923b9) /* 895 */, - U64_C(0x6e3480f60f4a265f) /* 896 */, U64_C(0xeebf3a2ab29b841c) /* 897 */, - U64_C(0xe21938a88f91b4ad) /* 898 */, U64_C(0x57dfeff845c6d3c3) /* 899 */, - U64_C(0x2f006b0bf62caaf2) /* 900 */, U64_C(0x62f479ef6f75ee78) /* 901 */, - U64_C(0x11a55ad41c8916a9) /* 902 */, U64_C(0xf229d29084fed453) /* 903 */, - U64_C(0x42f1c27b16b000e6) /* 904 */, U64_C(0x2b1f76749823c074) /* 905 */, - U64_C(0x4b76eca3c2745360) /* 906 */, U64_C(0x8c98f463b91691bd) /* 907 */, - U64_C(0x14bcc93cf1ade66a) /* 908 */, U64_C(0x8885213e6d458397) /* 909 */, - U64_C(0x8e177df0274d4711) /* 910 */, U64_C(0xb49b73b5503f2951) /* 911 */, - U64_C(0x10168168c3f96b6b) /* 912 */, U64_C(0x0e3d963b63cab0ae) /* 913 */, - U64_C(0x8dfc4b5655a1db14) /* 914 */, U64_C(0xf789f1356e14de5c) /* 915 */, - U64_C(0x683e68af4e51dac1) /* 916 */, U64_C(0xc9a84f9d8d4b0fd9) /* 917 */, - U64_C(0x3691e03f52a0f9d1) /* 918 */, U64_C(0x5ed86e46e1878e80) /* 919 */, - U64_C(0x3c711a0e99d07150) /* 920 */, U64_C(0x5a0865b20c4e9310) /* 921 */, - U64_C(0x56fbfc1fe4f0682e) /* 922 */, U64_C(0xea8d5de3105edf9b) /* 923 */, - U64_C(0x71abfdb12379187a) /* 924 */, U64_C(0x2eb99de1bee77b9c) /* 925 */, - U64_C(0x21ecc0ea33cf4523) /* 926 */, U64_C(0x59a4d7521805c7a1) /* 927 */, - U64_C(0x3896f5eb56ae7c72) /* 928 */, U64_C(0xaa638f3db18f75dc) /* 929 */, - U64_C(0x9f39358dabe9808e) /* 930 */, U64_C(0xb7defa91c00b72ac) /* 931 */, - U64_C(0x6b5541fd62492d92) /* 932 */, U64_C(0x6dc6dee8f92e4d5b) /* 933 */, - U64_C(0x353f57abc4beea7e) /* 934 */, U64_C(0x735769d6da5690ce) /* 935 */, - U64_C(0x0a234aa642391484) /* 936 */, U64_C(0xf6f9508028f80d9d) /* 937 */, - U64_C(0xb8e319a27ab3f215) /* 938 */, U64_C(0x31ad9c1151341a4d) /* 939 */, - U64_C(0x773c22a57bef5805) /* 940 */, U64_C(0x45c7561a07968633) /* 941 */, - U64_C(0xf913da9e249dbe36) /* 942 */, U64_C(0xda652d9b78a64c68) /* 943 */, - U64_C(0x4c27a97f3bc334ef) /* 944 */, U64_C(0x76621220e66b17f4) /* 945 */, - U64_C(0x967743899acd7d0b) /* 946 */, U64_C(0xf3ee5bcae0ed6782) /* 947 */, - U64_C(0x409f753600c879fc) /* 948 */, U64_C(0x06d09a39b5926db6) /* 949 */, - U64_C(0x6f83aeb0317ac588) /* 950 */, U64_C(0x01e6ca4a86381f21) /* 951 */, - U64_C(0x66ff3462d19f3025) /* 952 */, U64_C(0x72207c24ddfd3bfb) /* 953 */, - U64_C(0x4af6b6d3e2ece2eb) /* 954 */, U64_C(0x9c994dbec7ea08de) /* 955 */, - U64_C(0x49ace597b09a8bc4) /* 956 */, U64_C(0xb38c4766cf0797ba) /* 957 */, - U64_C(0x131b9373c57c2a75) /* 958 */, U64_C(0xb1822cce61931e58) /* 959 */, - U64_C(0x9d7555b909ba1c0c) /* 960 */, U64_C(0x127fafdd937d11d2) /* 961 */, - U64_C(0x29da3badc66d92e4) /* 962 */, U64_C(0xa2c1d57154c2ecbc) /* 963 */, - U64_C(0x58c5134d82f6fe24) /* 964 */, U64_C(0x1c3ae3515b62274f) /* 965 */, - U64_C(0xe907c82e01cb8126) /* 966 */, U64_C(0xf8ed091913e37fcb) /* 967 */, - U64_C(0x3249d8f9c80046c9) /* 968 */, U64_C(0x80cf9bede388fb63) /* 969 */, - U64_C(0x1881539a116cf19e) /* 970 */, U64_C(0x5103f3f76bd52457) /* 971 */, - U64_C(0x15b7e6f5ae47f7a8) /* 972 */, U64_C(0xdbd7c6ded47e9ccf) /* 973 */, - U64_C(0x44e55c410228bb1a) /* 974 */, U64_C(0xb647d4255edb4e99) /* 975 */, - U64_C(0x5d11882bb8aafc30) /* 976 */, U64_C(0xf5098bbb29d3212a) /* 977 */, - U64_C(0x8fb5ea14e90296b3) /* 978 */, U64_C(0x677b942157dd025a) /* 979 */, - U64_C(0xfb58e7c0a390acb5) /* 980 */, U64_C(0x89d3674c83bd4a01) /* 981 */, - U64_C(0x9e2da4df4bf3b93b) /* 982 */, U64_C(0xfcc41e328cab4829) /* 983 */, - U64_C(0x03f38c96ba582c52) /* 984 */, U64_C(0xcad1bdbd7fd85db2) /* 985 */, - U64_C(0xbbb442c16082ae83) /* 986 */, U64_C(0xb95fe86ba5da9ab0) /* 987 */, - U64_C(0xb22e04673771a93f) /* 988 */, U64_C(0x845358c9493152d8) /* 989 */, - U64_C(0xbe2a488697b4541e) /* 990 */, U64_C(0x95a2dc2dd38e6966) /* 991 */, - U64_C(0xc02c11ac923c852b) /* 992 */, U64_C(0x2388b1990df2a87b) /* 993 */, - U64_C(0x7c8008fa1b4f37be) /* 994 */, U64_C(0x1f70d0c84d54e503) /* 995 */, - U64_C(0x5490adec7ece57d4) /* 996 */, U64_C(0x002b3c27d9063a3a) /* 997 */, - U64_C(0x7eaea3848030a2bf) /* 998 */, U64_C(0xc602326ded2003c0) /* 999 */, - U64_C(0x83a7287d69a94086) /* 1000 */, U64_C(0xc57a5fcb30f57a8a) /* 1001 */, - U64_C(0xb56844e479ebe779) /* 1002 */, U64_C(0xa373b40f05dcbce9) /* 1003 */, - U64_C(0xd71a786e88570ee2) /* 1004 */, U64_C(0x879cbacdbde8f6a0) /* 1005 */, - U64_C(0x976ad1bcc164a32f) /* 1006 */, U64_C(0xab21e25e9666d78b) /* 1007 */, - U64_C(0x901063aae5e5c33c) /* 1008 */, U64_C(0x9818b34448698d90) /* 1009 */, - U64_C(0xe36487ae3e1e8abb) /* 1010 */, U64_C(0xafbdf931893bdcb4) /* 1011 */, - U64_C(0x6345a0dc5fbbd519) /* 1012 */, U64_C(0x8628fe269b9465ca) /* 1013 */, - U64_C(0x1e5d01603f9c51ec) /* 1014 */, U64_C(0x4de44006a15049b7) /* 1015 */, - U64_C(0xbf6c70e5f776cbb1) /* 1016 */, U64_C(0x411218f2ef552bed) /* 1017 */, - U64_C(0xcb0c0708705a36a3) /* 1018 */, U64_C(0xe74d14754f986044) /* 1019 */, - U64_C(0xcd56d9430ea8280e) /* 1020 */, U64_C(0xc12591d7535f5065) /* 1021 */, - U64_C(0xc83223f1720aef96) /* 1022 */, U64_C(0xc3a0396f7363a51f) /* 1023 */ -}; - -static void -do_init (void *context, int variant) -{ - TIGER_CONTEXT *hd = context; - - hd->a = 0x0123456789abcdefLL; - hd->b = 0xfedcba9876543210LL; - hd->c = 0xf096a5b4c3b2e187LL; - hd->nblocks = 0; - hd->count = 0; - hd->variant = variant; -} - -static void -tiger_init (void *context) -{ - do_init (context, 0); -} - -static void -tiger1_init (void *context) -{ - do_init (context, 1); -} - -static void -tiger2_init (void *context) -{ - do_init (context, 2); -} - -static void -tiger_round( u64 *ra, u64 *rb, u64 *rc, u64 x, int mul ) -{ - u64 a = *ra; - u64 b = *rb; - u64 c = *rc; - - c ^= x; - a -= ( sbox1[ c & 0xff ] ^ sbox2[ (c >> 16) & 0xff ] - ^ sbox3[ (c >> 32) & 0xff ] ^ sbox4[ (c >> 48) & 0xff ]); - b += ( sbox4[ (c >> 8) & 0xff ] ^ sbox3[ (c >> 24) & 0xff ] - ^ sbox2[ (c >> 40) & 0xff ] ^ sbox1[ (c >> 56) & 0xff ]); - b *= mul; - - *ra = a; - *rb = b; - *rc = c; -} - - -static void -pass( u64 *ra, u64 *rb, u64 *rc, u64 *x, int mul ) -{ - u64 a = *ra; - u64 b = *rb; - u64 c = *rc; - - tiger_round( &a, &b, &c, x[0], mul ); - tiger_round( &b, &c, &a, x[1], mul ); - tiger_round( &c, &a, &b, x[2], mul ); - tiger_round( &a, &b, &c, x[3], mul ); - tiger_round( &b, &c, &a, x[4], mul ); - tiger_round( &c, &a, &b, x[5], mul ); - tiger_round( &a, &b, &c, x[6], mul ); - tiger_round( &b, &c, &a, x[7], mul ); - - *ra = a; - *rb = b; - *rc = c; -} - - -static void -key_schedule( u64 *x ) -{ - x[0] -= x[7] ^ 0xa5a5a5a5a5a5a5a5LL; - x[1] ^= x[0]; - x[2] += x[1]; - x[3] -= x[2] ^ ((~x[1]) << 19 ); - x[4] ^= x[3]; - x[5] += x[4]; - x[6] -= x[5] ^ ((~x[4]) >> 23 ); - x[7] ^= x[6]; - x[0] += x[7]; - x[1] -= x[0] ^ ((~x[7]) << 19 ); - x[2] ^= x[1]; - x[3] += x[2]; - x[4] -= x[3] ^ ((~x[2]) >> 23 ); - x[5] ^= x[4]; - x[6] += x[5]; - x[7] -= x[6] ^ 0x0123456789abcdefLL; -} - - -/**************** - * Transform the message DATA which consists of 512 bytes (8 words) - */ -static void -transform ( TIGER_CONTEXT *hd, const unsigned char *data ) -{ - u64 a,b,c,aa,bb,cc; - u64 x[8]; -#ifdef WORDS_BIGENDIAN -#define MKWORD(d,n) \ - ( ((u64)(d)[8*(n)+7]) << 56 | ((u64)(d)[8*(n)+6]) << 48 \ - | ((u64)(d)[8*(n)+5]) << 40 | ((u64)(d)[8*(n)+4]) << 32 \ - | ((u64)(d)[8*(n)+3]) << 24 | ((u64)(d)[8*(n)+2]) << 16 \ - | ((u64)(d)[8*(n)+1]) << 8 | ((u64)(d)[8*(n) ]) ) - x[0] = MKWORD(data, 0); - x[1] = MKWORD(data, 1); - x[2] = MKWORD(data, 2); - x[3] = MKWORD(data, 3); - x[4] = MKWORD(data, 4); - x[5] = MKWORD(data, 5); - x[6] = MKWORD(data, 6); - x[7] = MKWORD(data, 7); -#undef MKWORD -#else - memcpy( &x[0], data, 64 ); -#endif - - /* save */ - a = aa = hd->a; - b = bb = hd->b; - c = cc = hd->c; - - pass( &a, &b, &c, x, 5); - key_schedule( x ); - pass( &c, &a, &b, x, 7); - key_schedule( x ); - pass( &b, &c, &a, x, 9); - - /* feedforward */ - a ^= aa; - b -= bb; - c += cc; - /* store */ - hd->a = a; - hd->b = b; - hd->c = c; -} - - - -/* Update the message digest with the contents - * of INBUF with length INLEN. - */ -static void -tiger_write ( void *context, const void *inbuf_arg, size_t inlen) -{ - const unsigned char *inbuf = inbuf_arg; - TIGER_CONTEXT *hd = context; - - if( hd->count == 64 ) /* flush the buffer */ - { - transform( hd, hd->buf ); - _gcry_burn_stack (21*8+11*sizeof(void*)); - hd->count = 0; - hd->nblocks++; - } - if( !inbuf ) - return; - if( hd->count ) - { - for( ; inlen && hd->count < 64; inlen-- ) - hd->buf[hd->count++] = *inbuf++; - tiger_write( hd, NULL, 0 ); - if( !inlen ) - return; - } - - while( inlen >= 64 ) - { - transform( hd, inbuf ); - hd->count = 0; - hd->nblocks++; - inlen -= 64; - inbuf += 64; - } - _gcry_burn_stack (21*8+11*sizeof(void*)); - for( ; inlen && hd->count < 64; inlen-- ) - hd->buf[hd->count++] = *inbuf++; -} - - - -/* The routine terminates the computation - */ -static void -tiger_final( void *context ) -{ - TIGER_CONTEXT *hd = context; - u32 t, msb, lsb; - byte *p; - byte pad = hd->variant == 2? 0x80 : 0x01; - - tiger_write(hd, NULL, 0); /* flush */; - - t = hd->nblocks; - /* multiply by 64 to make a byte count */ - lsb = t << 6; - msb = t >> 26; - /* add the count */ - t = lsb; - if( (lsb += hd->count) < t ) - msb++; - /* multiply by 8 to make a bit count */ - t = lsb; - lsb <<= 3; - msb <<= 3; - msb |= t >> 29; - - if( hd->count < 56 ) /* enough room */ - { - hd->buf[hd->count++] = pad; - while( hd->count < 56 ) - hd->buf[hd->count++] = 0; /* pad */ - } - else /* need one extra block */ - { - hd->buf[hd->count++] = pad; /* pad character */ - while( hd->count < 64 ) - hd->buf[hd->count++] = 0; - tiger_write(hd, NULL, 0); /* flush */; - memset(hd->buf, 0, 56 ); /* fill next block with zeroes */ - } - /* append the 64 bit count */ - hd->buf[56] = lsb ; - hd->buf[57] = lsb >> 8; - hd->buf[58] = lsb >> 16; - hd->buf[59] = lsb >> 24; - hd->buf[60] = msb ; - hd->buf[61] = msb >> 8; - hd->buf[62] = msb >> 16; - hd->buf[63] = msb >> 24; - transform( hd, hd->buf ); - _gcry_burn_stack (21*8+11*sizeof(void*)); - - p = hd->buf; -#ifdef WORDS_BIGENDIAN -#define X(a) do { *(u64*)p = hd->a ; p += 8; } while(0) -#else /* little endian */ -#define X(a) do { *p++ = hd->a >> 56; *p++ = hd->a >> 48; \ - *p++ = hd->a >> 40; *p++ = hd->a >> 32; \ - *p++ = hd->a >> 24; *p++ = hd->a >> 16; \ - *p++ = hd->a >> 8; *p++ = hd->a; } while(0) -#endif -#define Y(a) do { *p++ = hd->a ; *p++ = hd->a >> 8; \ - *p++ = hd->a >> 16; *p++ = hd->a >> 24; \ - *p++ = hd->a >> 32; *p++ = hd->a >> 40; \ - *p++ = hd->a >> 48; *p++ = hd->a >> 56; } while(0) - if (hd->variant == 0) - { - X(a); - X(b); - X(c); - } - else - { - Y(a); - Y(b); - Y(c); - } -#undef X -#undef Y -} - -static byte * -tiger_read( void *context ) -{ - TIGER_CONTEXT *hd = context; - - return hd->buf; -} - - - -/* This is the old TIGER variant based on the unfixed reference - implementation. IT was used in GnupG up to 1.3.2. We don't provide - an OID anymore because that would not be correct. */ -gcry_md_spec_t _gcry_digest_spec_tiger = - { - "TIGER192", NULL, 0, NULL, 24, - tiger_init, tiger_write, tiger_final, tiger_read, - sizeof (TIGER_CONTEXT) - , -#ifdef GRUB_UTIL - .modname = "gcry_tiger", -#endif - .blocksize = 64 - }; - - - -/* This is the fixed TIGER implementation. */ -static byte asn1[19] = /* Object ID is 1.3.6.1.4.1.11591.12.2 */ - { 0x30, 0x29, 0x30, 0x0d, 0x06, 0x09, 0x2b, 0x06, - 0x01, 0x04, 0x01, 0xda, 0x47, 0x0c, 0x02, - 0x05, 0x00, 0x04, 0x18 }; - -static gcry_md_oid_spec_t oid_spec_tiger1[] = - { - /* GNU.digestAlgorithm TIGER */ - { "1.3.6.1.4.1.11591.12.2" }, - { NULL } - }; - -gcry_md_spec_t _gcry_digest_spec_tiger1 = - { - "TIGER", asn1, DIM (asn1), oid_spec_tiger1, 24, - tiger1_init, tiger_write, tiger_final, tiger_read, - sizeof (TIGER_CONTEXT) - , -#ifdef GRUB_UTIL - .modname = "gcry_tiger", -#endif - .blocksize = 64 - }; - - - -/* This is TIGER2 which usues a changed padding algorithm. */ -gcry_md_spec_t _gcry_digest_spec_tiger2 = - { - "TIGER2", NULL, 0, NULL, 24, - tiger2_init, tiger_write, tiger_final, tiger_read, - sizeof (TIGER_CONTEXT) - , -#ifdef GRUB_UTIL - .modname = "gcry_tiger", -#endif - .blocksize = 64 - }; - -#endif /* HAVE_U64_TYPEDEF */ - - -GRUB_MOD_INIT(gcry_tiger) -{ - COMPILE_TIME_ASSERT(sizeof (TIGER_CONTEXT) <= GRUB_CRYPTO_MAX_MD_CONTEXT_SIZE); - COMPILE_TIME_ASSERT(sizeof (TIGER_CONTEXT) <= GRUB_CRYPTO_MAX_MD_CONTEXT_SIZE); - COMPILE_TIME_ASSERT(sizeof (TIGER_CONTEXT) <= GRUB_CRYPTO_MAX_MD_CONTEXT_SIZE); - grub_md_register (&_gcry_digest_spec_tiger); - grub_md_register (&_gcry_digest_spec_tiger1); - grub_md_register (&_gcry_digest_spec_tiger2); -} - -GRUB_MOD_FINI(gcry_tiger) -{ - grub_md_unregister (&_gcry_digest_spec_tiger); - grub_md_unregister (&_gcry_digest_spec_tiger1); - grub_md_unregister (&_gcry_digest_spec_tiger2); -} diff --git a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/twofish.c b/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/twofish.c deleted file mode 100644 index 0a65ac18c..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/twofish.c +++ /dev/null @@ -1,1001 +0,0 @@ -/* This file was automatically imported with - import_gcry.py. Please don't modify it */ -#include -GRUB_MOD_LICENSE ("GPLv3+"); -/* Twofish for GPG - * Copyright (C) 1998, 2002, 2003 Free Software Foundation, Inc. - * Written by Matthew Skala , July 26, 1998 - * 256-bit key length added March 20, 1999 - * Some modifications to reduce the text size by Werner Koch, April, 1998 - * - * This file is part of Libgcrypt. - * - * Libgcrypt is free software; you can redistribute it and/or modify - * it under the terms of the GNU Lesser General Public License as - * published by the Free Software Foundation; either version 2.1 of - * the License, or (at your option) any later version. - * - * Libgcrypt is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA - ******************************************************************** - * - * This code is a "clean room" implementation, written from the paper - * _Twofish: A 128-Bit Block Cipher_ by Bruce Schneier, John Kelsey, - * Doug Whiting, David Wagner, Chris Hall, and Niels Ferguson, available - * through http://www.counterpane.com/twofish.html - * - * For background information on multiplication in finite fields, used for - * the matrix operations in the key schedule, see the book _Contemporary - * Abstract Algebra_ by Joseph A. Gallian, especially chapter 22 in the - * Third Edition. - * - * Only the 128- and 256-bit key sizes are supported. This code is intended - * for GNU C on a 32-bit system, but it should work almost anywhere. Loops - * are unrolled, precomputation tables are used, etc., for maximum speed at - * some cost in memory consumption. */ - - -#include "types.h" /* for byte and u32 typedefs */ -#include "g10lib.h" -#include "cipher.h" - -/* Prototype for the self-test function. */ - -/* Structure for an expanded Twofish key. s contains the key-dependent - * S-boxes composed with the MDS matrix; w contains the eight "whitening" - * subkeys, K[0] through K[7]. k holds the remaining, "round" subkeys. Note - * that k[i] corresponds to what the Twofish paper calls K[i+8]. */ -typedef struct { - u32 s[4][256], w[8], k[32]; -} TWOFISH_context; - -/* These two tables are the q0 and q1 permutations, exactly as described in - * the Twofish paper. */ - -static const byte q0[256] = { - 0xA9, 0x67, 0xB3, 0xE8, 0x04, 0xFD, 0xA3, 0x76, 0x9A, 0x92, 0x80, 0x78, - 0xE4, 0xDD, 0xD1, 0x38, 0x0D, 0xC6, 0x35, 0x98, 0x18, 0xF7, 0xEC, 0x6C, - 0x43, 0x75, 0x37, 0x26, 0xFA, 0x13, 0x94, 0x48, 0xF2, 0xD0, 0x8B, 0x30, - 0x84, 0x54, 0xDF, 0x23, 0x19, 0x5B, 0x3D, 0x59, 0xF3, 0xAE, 0xA2, 0x82, - 0x63, 0x01, 0x83, 0x2E, 0xD9, 0x51, 0x9B, 0x7C, 0xA6, 0xEB, 0xA5, 0xBE, - 0x16, 0x0C, 0xE3, 0x61, 0xC0, 0x8C, 0x3A, 0xF5, 0x73, 0x2C, 0x25, 0x0B, - 0xBB, 0x4E, 0x89, 0x6B, 0x53, 0x6A, 0xB4, 0xF1, 0xE1, 0xE6, 0xBD, 0x45, - 0xE2, 0xF4, 0xB6, 0x66, 0xCC, 0x95, 0x03, 0x56, 0xD4, 0x1C, 0x1E, 0xD7, - 0xFB, 0xC3, 0x8E, 0xB5, 0xE9, 0xCF, 0xBF, 0xBA, 0xEA, 0x77, 0x39, 0xAF, - 0x33, 0xC9, 0x62, 0x71, 0x81, 0x79, 0x09, 0xAD, 0x24, 0xCD, 0xF9, 0xD8, - 0xE5, 0xC5, 0xB9, 0x4D, 0x44, 0x08, 0x86, 0xE7, 0xA1, 0x1D, 0xAA, 0xED, - 0x06, 0x70, 0xB2, 0xD2, 0x41, 0x7B, 0xA0, 0x11, 0x31, 0xC2, 0x27, 0x90, - 0x20, 0xF6, 0x60, 0xFF, 0x96, 0x5C, 0xB1, 0xAB, 0x9E, 0x9C, 0x52, 0x1B, - 0x5F, 0x93, 0x0A, 0xEF, 0x91, 0x85, 0x49, 0xEE, 0x2D, 0x4F, 0x8F, 0x3B, - 0x47, 0x87, 0x6D, 0x46, 0xD6, 0x3E, 0x69, 0x64, 0x2A, 0xCE, 0xCB, 0x2F, - 0xFC, 0x97, 0x05, 0x7A, 0xAC, 0x7F, 0xD5, 0x1A, 0x4B, 0x0E, 0xA7, 0x5A, - 0x28, 0x14, 0x3F, 0x29, 0x88, 0x3C, 0x4C, 0x02, 0xB8, 0xDA, 0xB0, 0x17, - 0x55, 0x1F, 0x8A, 0x7D, 0x57, 0xC7, 0x8D, 0x74, 0xB7, 0xC4, 0x9F, 0x72, - 0x7E, 0x15, 0x22, 0x12, 0x58, 0x07, 0x99, 0x34, 0x6E, 0x50, 0xDE, 0x68, - 0x65, 0xBC, 0xDB, 0xF8, 0xC8, 0xA8, 0x2B, 0x40, 0xDC, 0xFE, 0x32, 0xA4, - 0xCA, 0x10, 0x21, 0xF0, 0xD3, 0x5D, 0x0F, 0x00, 0x6F, 0x9D, 0x36, 0x42, - 0x4A, 0x5E, 0xC1, 0xE0 -}; - -static const byte q1[256] = { - 0x75, 0xF3, 0xC6, 0xF4, 0xDB, 0x7B, 0xFB, 0xC8, 0x4A, 0xD3, 0xE6, 0x6B, - 0x45, 0x7D, 0xE8, 0x4B, 0xD6, 0x32, 0xD8, 0xFD, 0x37, 0x71, 0xF1, 0xE1, - 0x30, 0x0F, 0xF8, 0x1B, 0x87, 0xFA, 0x06, 0x3F, 0x5E, 0xBA, 0xAE, 0x5B, - 0x8A, 0x00, 0xBC, 0x9D, 0x6D, 0xC1, 0xB1, 0x0E, 0x80, 0x5D, 0xD2, 0xD5, - 0xA0, 0x84, 0x07, 0x14, 0xB5, 0x90, 0x2C, 0xA3, 0xB2, 0x73, 0x4C, 0x54, - 0x92, 0x74, 0x36, 0x51, 0x38, 0xB0, 0xBD, 0x5A, 0xFC, 0x60, 0x62, 0x96, - 0x6C, 0x42, 0xF7, 0x10, 0x7C, 0x28, 0x27, 0x8C, 0x13, 0x95, 0x9C, 0xC7, - 0x24, 0x46, 0x3B, 0x70, 0xCA, 0xE3, 0x85, 0xCB, 0x11, 0xD0, 0x93, 0xB8, - 0xA6, 0x83, 0x20, 0xFF, 0x9F, 0x77, 0xC3, 0xCC, 0x03, 0x6F, 0x08, 0xBF, - 0x40, 0xE7, 0x2B, 0xE2, 0x79, 0x0C, 0xAA, 0x82, 0x41, 0x3A, 0xEA, 0xB9, - 0xE4, 0x9A, 0xA4, 0x97, 0x7E, 0xDA, 0x7A, 0x17, 0x66, 0x94, 0xA1, 0x1D, - 0x3D, 0xF0, 0xDE, 0xB3, 0x0B, 0x72, 0xA7, 0x1C, 0xEF, 0xD1, 0x53, 0x3E, - 0x8F, 0x33, 0x26, 0x5F, 0xEC, 0x76, 0x2A, 0x49, 0x81, 0x88, 0xEE, 0x21, - 0xC4, 0x1A, 0xEB, 0xD9, 0xC5, 0x39, 0x99, 0xCD, 0xAD, 0x31, 0x8B, 0x01, - 0x18, 0x23, 0xDD, 0x1F, 0x4E, 0x2D, 0xF9, 0x48, 0x4F, 0xF2, 0x65, 0x8E, - 0x78, 0x5C, 0x58, 0x19, 0x8D, 0xE5, 0x98, 0x57, 0x67, 0x7F, 0x05, 0x64, - 0xAF, 0x63, 0xB6, 0xFE, 0xF5, 0xB7, 0x3C, 0xA5, 0xCE, 0xE9, 0x68, 0x44, - 0xE0, 0x4D, 0x43, 0x69, 0x29, 0x2E, 0xAC, 0x15, 0x59, 0xA8, 0x0A, 0x9E, - 0x6E, 0x47, 0xDF, 0x34, 0x35, 0x6A, 0xCF, 0xDC, 0x22, 0xC9, 0xC0, 0x9B, - 0x89, 0xD4, 0xED, 0xAB, 0x12, 0xA2, 0x0D, 0x52, 0xBB, 0x02, 0x2F, 0xA9, - 0xD7, 0x61, 0x1E, 0xB4, 0x50, 0x04, 0xF6, 0xC2, 0x16, 0x25, 0x86, 0x56, - 0x55, 0x09, 0xBE, 0x91 -}; - -/* These MDS tables are actually tables of MDS composed with q0 and q1, - * because it is only ever used that way and we can save some time by - * precomputing. Of course the main saving comes from precomputing the - * GF(2^8) multiplication involved in the MDS matrix multiply; by looking - * things up in these tables we reduce the matrix multiply to four lookups - * and three XORs. Semi-formally, the definition of these tables is: - * mds[0][i] = MDS (q1[i] 0 0 0)^T mds[1][i] = MDS (0 q0[i] 0 0)^T - * mds[2][i] = MDS (0 0 q1[i] 0)^T mds[3][i] = MDS (0 0 0 q0[i])^T - * where ^T means "transpose", the matrix multiply is performed in GF(2^8) - * represented as GF(2)[x]/v(x) where v(x)=x^8+x^6+x^5+x^3+1 as described - * by Schneier et al, and I'm casually glossing over the byte/word - * conversion issues. */ - -static const u32 mds[4][256] = { - {0xBCBC3275, 0xECEC21F3, 0x202043C6, 0xB3B3C9F4, 0xDADA03DB, 0x02028B7B, - 0xE2E22BFB, 0x9E9EFAC8, 0xC9C9EC4A, 0xD4D409D3, 0x18186BE6, 0x1E1E9F6B, - 0x98980E45, 0xB2B2387D, 0xA6A6D2E8, 0x2626B74B, 0x3C3C57D6, 0x93938A32, - 0x8282EED8, 0x525298FD, 0x7B7BD437, 0xBBBB3771, 0x5B5B97F1, 0x474783E1, - 0x24243C30, 0x5151E20F, 0xBABAC6F8, 0x4A4AF31B, 0xBFBF4887, 0x0D0D70FA, - 0xB0B0B306, 0x7575DE3F, 0xD2D2FD5E, 0x7D7D20BA, 0x666631AE, 0x3A3AA35B, - 0x59591C8A, 0x00000000, 0xCDCD93BC, 0x1A1AE09D, 0xAEAE2C6D, 0x7F7FABC1, - 0x2B2BC7B1, 0xBEBEB90E, 0xE0E0A080, 0x8A8A105D, 0x3B3B52D2, 0x6464BAD5, - 0xD8D888A0, 0xE7E7A584, 0x5F5FE807, 0x1B1B1114, 0x2C2CC2B5, 0xFCFCB490, - 0x3131272C, 0x808065A3, 0x73732AB2, 0x0C0C8173, 0x79795F4C, 0x6B6B4154, - 0x4B4B0292, 0x53536974, 0x94948F36, 0x83831F51, 0x2A2A3638, 0xC4C49CB0, - 0x2222C8BD, 0xD5D5F85A, 0xBDBDC3FC, 0x48487860, 0xFFFFCE62, 0x4C4C0796, - 0x4141776C, 0xC7C7E642, 0xEBEB24F7, 0x1C1C1410, 0x5D5D637C, 0x36362228, - 0x6767C027, 0xE9E9AF8C, 0x4444F913, 0x1414EA95, 0xF5F5BB9C, 0xCFCF18C7, - 0x3F3F2D24, 0xC0C0E346, 0x7272DB3B, 0x54546C70, 0x29294CCA, 0xF0F035E3, - 0x0808FE85, 0xC6C617CB, 0xF3F34F11, 0x8C8CE4D0, 0xA4A45993, 0xCACA96B8, - 0x68683BA6, 0xB8B84D83, 0x38382820, 0xE5E52EFF, 0xADAD569F, 0x0B0B8477, - 0xC8C81DC3, 0x9999FFCC, 0x5858ED03, 0x19199A6F, 0x0E0E0A08, 0x95957EBF, - 0x70705040, 0xF7F730E7, 0x6E6ECF2B, 0x1F1F6EE2, 0xB5B53D79, 0x09090F0C, - 0x616134AA, 0x57571682, 0x9F9F0B41, 0x9D9D803A, 0x111164EA, 0x2525CDB9, - 0xAFAFDDE4, 0x4545089A, 0xDFDF8DA4, 0xA3A35C97, 0xEAEAD57E, 0x353558DA, - 0xEDEDD07A, 0x4343FC17, 0xF8F8CB66, 0xFBFBB194, 0x3737D3A1, 0xFAFA401D, - 0xC2C2683D, 0xB4B4CCF0, 0x32325DDE, 0x9C9C71B3, 0x5656E70B, 0xE3E3DA72, - 0x878760A7, 0x15151B1C, 0xF9F93AEF, 0x6363BFD1, 0x3434A953, 0x9A9A853E, - 0xB1B1428F, 0x7C7CD133, 0x88889B26, 0x3D3DA65F, 0xA1A1D7EC, 0xE4E4DF76, - 0x8181942A, 0x91910149, 0x0F0FFB81, 0xEEEEAA88, 0x161661EE, 0xD7D77321, - 0x9797F5C4, 0xA5A5A81A, 0xFEFE3FEB, 0x6D6DB5D9, 0x7878AEC5, 0xC5C56D39, - 0x1D1DE599, 0x7676A4CD, 0x3E3EDCAD, 0xCBCB6731, 0xB6B6478B, 0xEFEF5B01, - 0x12121E18, 0x6060C523, 0x6A6AB0DD, 0x4D4DF61F, 0xCECEE94E, 0xDEDE7C2D, - 0x55559DF9, 0x7E7E5A48, 0x2121B24F, 0x03037AF2, 0xA0A02665, 0x5E5E198E, - 0x5A5A6678, 0x65654B5C, 0x62624E58, 0xFDFD4519, 0x0606F48D, 0x404086E5, - 0xF2F2BE98, 0x3333AC57, 0x17179067, 0x05058E7F, 0xE8E85E05, 0x4F4F7D64, - 0x89896AAF, 0x10109563, 0x74742FB6, 0x0A0A75FE, 0x5C5C92F5, 0x9B9B74B7, - 0x2D2D333C, 0x3030D6A5, 0x2E2E49CE, 0x494989E9, 0x46467268, 0x77775544, - 0xA8A8D8E0, 0x9696044D, 0x2828BD43, 0xA9A92969, 0xD9D97929, 0x8686912E, - 0xD1D187AC, 0xF4F44A15, 0x8D8D1559, 0xD6D682A8, 0xB9B9BC0A, 0x42420D9E, - 0xF6F6C16E, 0x2F2FB847, 0xDDDD06DF, 0x23233934, 0xCCCC6235, 0xF1F1C46A, - 0xC1C112CF, 0x8585EBDC, 0x8F8F9E22, 0x7171A1C9, 0x9090F0C0, 0xAAAA539B, - 0x0101F189, 0x8B8BE1D4, 0x4E4E8CED, 0x8E8E6FAB, 0xABABA212, 0x6F6F3EA2, - 0xE6E6540D, 0xDBDBF252, 0x92927BBB, 0xB7B7B602, 0x6969CA2F, 0x3939D9A9, - 0xD3D30CD7, 0xA7A72361, 0xA2A2AD1E, 0xC3C399B4, 0x6C6C4450, 0x07070504, - 0x04047FF6, 0x272746C2, 0xACACA716, 0xD0D07625, 0x50501386, 0xDCDCF756, - 0x84841A55, 0xE1E15109, 0x7A7A25BE, 0x1313EF91}, - - {0xA9D93939, 0x67901717, 0xB3719C9C, 0xE8D2A6A6, 0x04050707, 0xFD985252, - 0xA3658080, 0x76DFE4E4, 0x9A084545, 0x92024B4B, 0x80A0E0E0, 0x78665A5A, - 0xE4DDAFAF, 0xDDB06A6A, 0xD1BF6363, 0x38362A2A, 0x0D54E6E6, 0xC6432020, - 0x3562CCCC, 0x98BEF2F2, 0x181E1212, 0xF724EBEB, 0xECD7A1A1, 0x6C774141, - 0x43BD2828, 0x7532BCBC, 0x37D47B7B, 0x269B8888, 0xFA700D0D, 0x13F94444, - 0x94B1FBFB, 0x485A7E7E, 0xF27A0303, 0xD0E48C8C, 0x8B47B6B6, 0x303C2424, - 0x84A5E7E7, 0x54416B6B, 0xDF06DDDD, 0x23C56060, 0x1945FDFD, 0x5BA33A3A, - 0x3D68C2C2, 0x59158D8D, 0xF321ECEC, 0xAE316666, 0xA23E6F6F, 0x82165757, - 0x63951010, 0x015BEFEF, 0x834DB8B8, 0x2E918686, 0xD9B56D6D, 0x511F8383, - 0x9B53AAAA, 0x7C635D5D, 0xA63B6868, 0xEB3FFEFE, 0xA5D63030, 0xBE257A7A, - 0x16A7ACAC, 0x0C0F0909, 0xE335F0F0, 0x6123A7A7, 0xC0F09090, 0x8CAFE9E9, - 0x3A809D9D, 0xF5925C5C, 0x73810C0C, 0x2C273131, 0x2576D0D0, 0x0BE75656, - 0xBB7B9292, 0x4EE9CECE, 0x89F10101, 0x6B9F1E1E, 0x53A93434, 0x6AC4F1F1, - 0xB499C3C3, 0xF1975B5B, 0xE1834747, 0xE66B1818, 0xBDC82222, 0x450E9898, - 0xE26E1F1F, 0xF4C9B3B3, 0xB62F7474, 0x66CBF8F8, 0xCCFF9999, 0x95EA1414, - 0x03ED5858, 0x56F7DCDC, 0xD4E18B8B, 0x1C1B1515, 0x1EADA2A2, 0xD70CD3D3, - 0xFB2BE2E2, 0xC31DC8C8, 0x8E195E5E, 0xB5C22C2C, 0xE9894949, 0xCF12C1C1, - 0xBF7E9595, 0xBA207D7D, 0xEA641111, 0x77840B0B, 0x396DC5C5, 0xAF6A8989, - 0x33D17C7C, 0xC9A17171, 0x62CEFFFF, 0x7137BBBB, 0x81FB0F0F, 0x793DB5B5, - 0x0951E1E1, 0xADDC3E3E, 0x242D3F3F, 0xCDA47676, 0xF99D5555, 0xD8EE8282, - 0xE5864040, 0xC5AE7878, 0xB9CD2525, 0x4D049696, 0x44557777, 0x080A0E0E, - 0x86135050, 0xE730F7F7, 0xA1D33737, 0x1D40FAFA, 0xAA346161, 0xED8C4E4E, - 0x06B3B0B0, 0x706C5454, 0xB22A7373, 0xD2523B3B, 0x410B9F9F, 0x7B8B0202, - 0xA088D8D8, 0x114FF3F3, 0x3167CBCB, 0xC2462727, 0x27C06767, 0x90B4FCFC, - 0x20283838, 0xF67F0404, 0x60784848, 0xFF2EE5E5, 0x96074C4C, 0x5C4B6565, - 0xB1C72B2B, 0xAB6F8E8E, 0x9E0D4242, 0x9CBBF5F5, 0x52F2DBDB, 0x1BF34A4A, - 0x5FA63D3D, 0x9359A4A4, 0x0ABCB9B9, 0xEF3AF9F9, 0x91EF1313, 0x85FE0808, - 0x49019191, 0xEE611616, 0x2D7CDEDE, 0x4FB22121, 0x8F42B1B1, 0x3BDB7272, - 0x47B82F2F, 0x8748BFBF, 0x6D2CAEAE, 0x46E3C0C0, 0xD6573C3C, 0x3E859A9A, - 0x6929A9A9, 0x647D4F4F, 0x2A948181, 0xCE492E2E, 0xCB17C6C6, 0x2FCA6969, - 0xFCC3BDBD, 0x975CA3A3, 0x055EE8E8, 0x7AD0EDED, 0xAC87D1D1, 0x7F8E0505, - 0xD5BA6464, 0x1AA8A5A5, 0x4BB72626, 0x0EB9BEBE, 0xA7608787, 0x5AF8D5D5, - 0x28223636, 0x14111B1B, 0x3FDE7575, 0x2979D9D9, 0x88AAEEEE, 0x3C332D2D, - 0x4C5F7979, 0x02B6B7B7, 0xB896CACA, 0xDA583535, 0xB09CC4C4, 0x17FC4343, - 0x551A8484, 0x1FF64D4D, 0x8A1C5959, 0x7D38B2B2, 0x57AC3333, 0xC718CFCF, - 0x8DF40606, 0x74695353, 0xB7749B9B, 0xC4F59797, 0x9F56ADAD, 0x72DAE3E3, - 0x7ED5EAEA, 0x154AF4F4, 0x229E8F8F, 0x12A2ABAB, 0x584E6262, 0x07E85F5F, - 0x99E51D1D, 0x34392323, 0x6EC1F6F6, 0x50446C6C, 0xDE5D3232, 0x68724646, - 0x6526A0A0, 0xBC93CDCD, 0xDB03DADA, 0xF8C6BABA, 0xC8FA9E9E, 0xA882D6D6, - 0x2BCF6E6E, 0x40507070, 0xDCEB8585, 0xFE750A0A, 0x328A9393, 0xA48DDFDF, - 0xCA4C2929, 0x10141C1C, 0x2173D7D7, 0xF0CCB4B4, 0xD309D4D4, 0x5D108A8A, - 0x0FE25151, 0x00000000, 0x6F9A1919, 0x9DE01A1A, 0x368F9494, 0x42E6C7C7, - 0x4AECC9C9, 0x5EFDD2D2, 0xC1AB7F7F, 0xE0D8A8A8}, - - {0xBC75BC32, 0xECF3EC21, 0x20C62043, 0xB3F4B3C9, 0xDADBDA03, 0x027B028B, - 0xE2FBE22B, 0x9EC89EFA, 0xC94AC9EC, 0xD4D3D409, 0x18E6186B, 0x1E6B1E9F, - 0x9845980E, 0xB27DB238, 0xA6E8A6D2, 0x264B26B7, 0x3CD63C57, 0x9332938A, - 0x82D882EE, 0x52FD5298, 0x7B377BD4, 0xBB71BB37, 0x5BF15B97, 0x47E14783, - 0x2430243C, 0x510F51E2, 0xBAF8BAC6, 0x4A1B4AF3, 0xBF87BF48, 0x0DFA0D70, - 0xB006B0B3, 0x753F75DE, 0xD25ED2FD, 0x7DBA7D20, 0x66AE6631, 0x3A5B3AA3, - 0x598A591C, 0x00000000, 0xCDBCCD93, 0x1A9D1AE0, 0xAE6DAE2C, 0x7FC17FAB, - 0x2BB12BC7, 0xBE0EBEB9, 0xE080E0A0, 0x8A5D8A10, 0x3BD23B52, 0x64D564BA, - 0xD8A0D888, 0xE784E7A5, 0x5F075FE8, 0x1B141B11, 0x2CB52CC2, 0xFC90FCB4, - 0x312C3127, 0x80A38065, 0x73B2732A, 0x0C730C81, 0x794C795F, 0x6B546B41, - 0x4B924B02, 0x53745369, 0x9436948F, 0x8351831F, 0x2A382A36, 0xC4B0C49C, - 0x22BD22C8, 0xD55AD5F8, 0xBDFCBDC3, 0x48604878, 0xFF62FFCE, 0x4C964C07, - 0x416C4177, 0xC742C7E6, 0xEBF7EB24, 0x1C101C14, 0x5D7C5D63, 0x36283622, - 0x672767C0, 0xE98CE9AF, 0x441344F9, 0x149514EA, 0xF59CF5BB, 0xCFC7CF18, - 0x3F243F2D, 0xC046C0E3, 0x723B72DB, 0x5470546C, 0x29CA294C, 0xF0E3F035, - 0x088508FE, 0xC6CBC617, 0xF311F34F, 0x8CD08CE4, 0xA493A459, 0xCAB8CA96, - 0x68A6683B, 0xB883B84D, 0x38203828, 0xE5FFE52E, 0xAD9FAD56, 0x0B770B84, - 0xC8C3C81D, 0x99CC99FF, 0x580358ED, 0x196F199A, 0x0E080E0A, 0x95BF957E, - 0x70407050, 0xF7E7F730, 0x6E2B6ECF, 0x1FE21F6E, 0xB579B53D, 0x090C090F, - 0x61AA6134, 0x57825716, 0x9F419F0B, 0x9D3A9D80, 0x11EA1164, 0x25B925CD, - 0xAFE4AFDD, 0x459A4508, 0xDFA4DF8D, 0xA397A35C, 0xEA7EEAD5, 0x35DA3558, - 0xED7AEDD0, 0x431743FC, 0xF866F8CB, 0xFB94FBB1, 0x37A137D3, 0xFA1DFA40, - 0xC23DC268, 0xB4F0B4CC, 0x32DE325D, 0x9CB39C71, 0x560B56E7, 0xE372E3DA, - 0x87A78760, 0x151C151B, 0xF9EFF93A, 0x63D163BF, 0x345334A9, 0x9A3E9A85, - 0xB18FB142, 0x7C337CD1, 0x8826889B, 0x3D5F3DA6, 0xA1ECA1D7, 0xE476E4DF, - 0x812A8194, 0x91499101, 0x0F810FFB, 0xEE88EEAA, 0x16EE1661, 0xD721D773, - 0x97C497F5, 0xA51AA5A8, 0xFEEBFE3F, 0x6DD96DB5, 0x78C578AE, 0xC539C56D, - 0x1D991DE5, 0x76CD76A4, 0x3EAD3EDC, 0xCB31CB67, 0xB68BB647, 0xEF01EF5B, - 0x1218121E, 0x602360C5, 0x6ADD6AB0, 0x4D1F4DF6, 0xCE4ECEE9, 0xDE2DDE7C, - 0x55F9559D, 0x7E487E5A, 0x214F21B2, 0x03F2037A, 0xA065A026, 0x5E8E5E19, - 0x5A785A66, 0x655C654B, 0x6258624E, 0xFD19FD45, 0x068D06F4, 0x40E54086, - 0xF298F2BE, 0x335733AC, 0x17671790, 0x057F058E, 0xE805E85E, 0x4F644F7D, - 0x89AF896A, 0x10631095, 0x74B6742F, 0x0AFE0A75, 0x5CF55C92, 0x9BB79B74, - 0x2D3C2D33, 0x30A530D6, 0x2ECE2E49, 0x49E94989, 0x46684672, 0x77447755, - 0xA8E0A8D8, 0x964D9604, 0x284328BD, 0xA969A929, 0xD929D979, 0x862E8691, - 0xD1ACD187, 0xF415F44A, 0x8D598D15, 0xD6A8D682, 0xB90AB9BC, 0x429E420D, - 0xF66EF6C1, 0x2F472FB8, 0xDDDFDD06, 0x23342339, 0xCC35CC62, 0xF16AF1C4, - 0xC1CFC112, 0x85DC85EB, 0x8F228F9E, 0x71C971A1, 0x90C090F0, 0xAA9BAA53, - 0x018901F1, 0x8BD48BE1, 0x4EED4E8C, 0x8EAB8E6F, 0xAB12ABA2, 0x6FA26F3E, - 0xE60DE654, 0xDB52DBF2, 0x92BB927B, 0xB702B7B6, 0x692F69CA, 0x39A939D9, - 0xD3D7D30C, 0xA761A723, 0xA21EA2AD, 0xC3B4C399, 0x6C506C44, 0x07040705, - 0x04F6047F, 0x27C22746, 0xAC16ACA7, 0xD025D076, 0x50865013, 0xDC56DCF7, - 0x8455841A, 0xE109E151, 0x7ABE7A25, 0x139113EF}, - - {0xD939A9D9, 0x90176790, 0x719CB371, 0xD2A6E8D2, 0x05070405, 0x9852FD98, - 0x6580A365, 0xDFE476DF, 0x08459A08, 0x024B9202, 0xA0E080A0, 0x665A7866, - 0xDDAFE4DD, 0xB06ADDB0, 0xBF63D1BF, 0x362A3836, 0x54E60D54, 0x4320C643, - 0x62CC3562, 0xBEF298BE, 0x1E12181E, 0x24EBF724, 0xD7A1ECD7, 0x77416C77, - 0xBD2843BD, 0x32BC7532, 0xD47B37D4, 0x9B88269B, 0x700DFA70, 0xF94413F9, - 0xB1FB94B1, 0x5A7E485A, 0x7A03F27A, 0xE48CD0E4, 0x47B68B47, 0x3C24303C, - 0xA5E784A5, 0x416B5441, 0x06DDDF06, 0xC56023C5, 0x45FD1945, 0xA33A5BA3, - 0x68C23D68, 0x158D5915, 0x21ECF321, 0x3166AE31, 0x3E6FA23E, 0x16578216, - 0x95106395, 0x5BEF015B, 0x4DB8834D, 0x91862E91, 0xB56DD9B5, 0x1F83511F, - 0x53AA9B53, 0x635D7C63, 0x3B68A63B, 0x3FFEEB3F, 0xD630A5D6, 0x257ABE25, - 0xA7AC16A7, 0x0F090C0F, 0x35F0E335, 0x23A76123, 0xF090C0F0, 0xAFE98CAF, - 0x809D3A80, 0x925CF592, 0x810C7381, 0x27312C27, 0x76D02576, 0xE7560BE7, - 0x7B92BB7B, 0xE9CE4EE9, 0xF10189F1, 0x9F1E6B9F, 0xA93453A9, 0xC4F16AC4, - 0x99C3B499, 0x975BF197, 0x8347E183, 0x6B18E66B, 0xC822BDC8, 0x0E98450E, - 0x6E1FE26E, 0xC9B3F4C9, 0x2F74B62F, 0xCBF866CB, 0xFF99CCFF, 0xEA1495EA, - 0xED5803ED, 0xF7DC56F7, 0xE18BD4E1, 0x1B151C1B, 0xADA21EAD, 0x0CD3D70C, - 0x2BE2FB2B, 0x1DC8C31D, 0x195E8E19, 0xC22CB5C2, 0x8949E989, 0x12C1CF12, - 0x7E95BF7E, 0x207DBA20, 0x6411EA64, 0x840B7784, 0x6DC5396D, 0x6A89AF6A, - 0xD17C33D1, 0xA171C9A1, 0xCEFF62CE, 0x37BB7137, 0xFB0F81FB, 0x3DB5793D, - 0x51E10951, 0xDC3EADDC, 0x2D3F242D, 0xA476CDA4, 0x9D55F99D, 0xEE82D8EE, - 0x8640E586, 0xAE78C5AE, 0xCD25B9CD, 0x04964D04, 0x55774455, 0x0A0E080A, - 0x13508613, 0x30F7E730, 0xD337A1D3, 0x40FA1D40, 0x3461AA34, 0x8C4EED8C, - 0xB3B006B3, 0x6C54706C, 0x2A73B22A, 0x523BD252, 0x0B9F410B, 0x8B027B8B, - 0x88D8A088, 0x4FF3114F, 0x67CB3167, 0x4627C246, 0xC06727C0, 0xB4FC90B4, - 0x28382028, 0x7F04F67F, 0x78486078, 0x2EE5FF2E, 0x074C9607, 0x4B655C4B, - 0xC72BB1C7, 0x6F8EAB6F, 0x0D429E0D, 0xBBF59CBB, 0xF2DB52F2, 0xF34A1BF3, - 0xA63D5FA6, 0x59A49359, 0xBCB90ABC, 0x3AF9EF3A, 0xEF1391EF, 0xFE0885FE, - 0x01914901, 0x6116EE61, 0x7CDE2D7C, 0xB2214FB2, 0x42B18F42, 0xDB723BDB, - 0xB82F47B8, 0x48BF8748, 0x2CAE6D2C, 0xE3C046E3, 0x573CD657, 0x859A3E85, - 0x29A96929, 0x7D4F647D, 0x94812A94, 0x492ECE49, 0x17C6CB17, 0xCA692FCA, - 0xC3BDFCC3, 0x5CA3975C, 0x5EE8055E, 0xD0ED7AD0, 0x87D1AC87, 0x8E057F8E, - 0xBA64D5BA, 0xA8A51AA8, 0xB7264BB7, 0xB9BE0EB9, 0x6087A760, 0xF8D55AF8, - 0x22362822, 0x111B1411, 0xDE753FDE, 0x79D92979, 0xAAEE88AA, 0x332D3C33, - 0x5F794C5F, 0xB6B702B6, 0x96CAB896, 0x5835DA58, 0x9CC4B09C, 0xFC4317FC, - 0x1A84551A, 0xF64D1FF6, 0x1C598A1C, 0x38B27D38, 0xAC3357AC, 0x18CFC718, - 0xF4068DF4, 0x69537469, 0x749BB774, 0xF597C4F5, 0x56AD9F56, 0xDAE372DA, - 0xD5EA7ED5, 0x4AF4154A, 0x9E8F229E, 0xA2AB12A2, 0x4E62584E, 0xE85F07E8, - 0xE51D99E5, 0x39233439, 0xC1F66EC1, 0x446C5044, 0x5D32DE5D, 0x72466872, - 0x26A06526, 0x93CDBC93, 0x03DADB03, 0xC6BAF8C6, 0xFA9EC8FA, 0x82D6A882, - 0xCF6E2BCF, 0x50704050, 0xEB85DCEB, 0x750AFE75, 0x8A93328A, 0x8DDFA48D, - 0x4C29CA4C, 0x141C1014, 0x73D72173, 0xCCB4F0CC, 0x09D4D309, 0x108A5D10, - 0xE2510FE2, 0x00000000, 0x9A196F9A, 0xE01A9DE0, 0x8F94368F, 0xE6C742E6, - 0xECC94AEC, 0xFDD25EFD, 0xAB7FC1AB, 0xD8A8E0D8} -}; - -/* The exp_to_poly and poly_to_exp tables are used to perform efficient - * operations in GF(2^8) represented as GF(2)[x]/w(x) where - * w(x)=x^8+x^6+x^3+x^2+1. We care about doing that because it's part of the - * definition of the RS matrix in the key schedule. Elements of that field - * are polynomials of degree not greater than 7 and all coefficients 0 or 1, - * which can be represented naturally by bytes (just substitute x=2). In that - * form, GF(2^8) addition is the same as bitwise XOR, but GF(2^8) - * multiplication is inefficient without hardware support. To multiply - * faster, I make use of the fact x is a generator for the nonzero elements, - * so that every element p of GF(2)[x]/w(x) is either 0 or equal to (x)^n for - * some n in 0..254. Note that that caret is exponentiation in GF(2^8), - * *not* polynomial notation. So if I want to compute pq where p and q are - * in GF(2^8), I can just say: - * 1. if p=0 or q=0 then pq=0 - * 2. otherwise, find m and n such that p=x^m and q=x^n - * 3. pq=(x^m)(x^n)=x^(m+n), so add m and n and find pq - * The translations in steps 2 and 3 are looked up in the tables - * poly_to_exp (for step 2) and exp_to_poly (for step 3). To see this - * in action, look at the CALC_S macro. As additional wrinkles, note that - * one of my operands is always a constant, so the poly_to_exp lookup on it - * is done in advance; I included the original values in the comments so - * readers can have some chance of recognizing that this *is* the RS matrix - * from the Twofish paper. I've only included the table entries I actually - * need; I never do a lookup on a variable input of zero and the biggest - * exponents I'll ever see are 254 (variable) and 237 (constant), so they'll - * never sum to more than 491. I'm repeating part of the exp_to_poly table - * so that I don't have to do mod-255 reduction in the exponent arithmetic. - * Since I know my constant operands are never zero, I only have to worry - * about zero values in the variable operand, and I do it with a simple - * conditional branch. I know conditionals are expensive, but I couldn't - * see a non-horrible way of avoiding them, and I did manage to group the - * statements so that each if covers four group multiplications. */ - -static const byte poly_to_exp[255] = { - 0x00, 0x01, 0x17, 0x02, 0x2E, 0x18, 0x53, 0x03, 0x6A, 0x2F, 0x93, 0x19, - 0x34, 0x54, 0x45, 0x04, 0x5C, 0x6B, 0xB6, 0x30, 0xA6, 0x94, 0x4B, 0x1A, - 0x8C, 0x35, 0x81, 0x55, 0xAA, 0x46, 0x0D, 0x05, 0x24, 0x5D, 0x87, 0x6C, - 0x9B, 0xB7, 0xC1, 0x31, 0x2B, 0xA7, 0xA3, 0x95, 0x98, 0x4C, 0xCA, 0x1B, - 0xE6, 0x8D, 0x73, 0x36, 0xCD, 0x82, 0x12, 0x56, 0x62, 0xAB, 0xF0, 0x47, - 0x4F, 0x0E, 0xBD, 0x06, 0xD4, 0x25, 0xD2, 0x5E, 0x27, 0x88, 0x66, 0x6D, - 0xD6, 0x9C, 0x79, 0xB8, 0x08, 0xC2, 0xDF, 0x32, 0x68, 0x2C, 0xFD, 0xA8, - 0x8A, 0xA4, 0x5A, 0x96, 0x29, 0x99, 0x22, 0x4D, 0x60, 0xCB, 0xE4, 0x1C, - 0x7B, 0xE7, 0x3B, 0x8E, 0x9E, 0x74, 0xF4, 0x37, 0xD8, 0xCE, 0xF9, 0x83, - 0x6F, 0x13, 0xB2, 0x57, 0xE1, 0x63, 0xDC, 0xAC, 0xC4, 0xF1, 0xAF, 0x48, - 0x0A, 0x50, 0x42, 0x0F, 0xBA, 0xBE, 0xC7, 0x07, 0xDE, 0xD5, 0x78, 0x26, - 0x65, 0xD3, 0xD1, 0x5F, 0xE3, 0x28, 0x21, 0x89, 0x59, 0x67, 0xFC, 0x6E, - 0xB1, 0xD7, 0xF8, 0x9D, 0xF3, 0x7A, 0x3A, 0xB9, 0xC6, 0x09, 0x41, 0xC3, - 0xAE, 0xE0, 0xDB, 0x33, 0x44, 0x69, 0x92, 0x2D, 0x52, 0xFE, 0x16, 0xA9, - 0x0C, 0x8B, 0x80, 0xA5, 0x4A, 0x5B, 0xB5, 0x97, 0xC9, 0x2A, 0xA2, 0x9A, - 0xC0, 0x23, 0x86, 0x4E, 0xBC, 0x61, 0xEF, 0xCC, 0x11, 0xE5, 0x72, 0x1D, - 0x3D, 0x7C, 0xEB, 0xE8, 0xE9, 0x3C, 0xEA, 0x8F, 0x7D, 0x9F, 0xEC, 0x75, - 0x1E, 0xF5, 0x3E, 0x38, 0xF6, 0xD9, 0x3F, 0xCF, 0x76, 0xFA, 0x1F, 0x84, - 0xA0, 0x70, 0xED, 0x14, 0x90, 0xB3, 0x7E, 0x58, 0xFB, 0xE2, 0x20, 0x64, - 0xD0, 0xDD, 0x77, 0xAD, 0xDA, 0xC5, 0x40, 0xF2, 0x39, 0xB0, 0xF7, 0x49, - 0xB4, 0x0B, 0x7F, 0x51, 0x15, 0x43, 0x91, 0x10, 0x71, 0xBB, 0xEE, 0xBF, - 0x85, 0xC8, 0xA1 -}; - -static const byte exp_to_poly[492] = { - 0x01, 0x02, 0x04, 0x08, 0x10, 0x20, 0x40, 0x80, 0x4D, 0x9A, 0x79, 0xF2, - 0xA9, 0x1F, 0x3E, 0x7C, 0xF8, 0xBD, 0x37, 0x6E, 0xDC, 0xF5, 0xA7, 0x03, - 0x06, 0x0C, 0x18, 0x30, 0x60, 0xC0, 0xCD, 0xD7, 0xE3, 0x8B, 0x5B, 0xB6, - 0x21, 0x42, 0x84, 0x45, 0x8A, 0x59, 0xB2, 0x29, 0x52, 0xA4, 0x05, 0x0A, - 0x14, 0x28, 0x50, 0xA0, 0x0D, 0x1A, 0x34, 0x68, 0xD0, 0xED, 0x97, 0x63, - 0xC6, 0xC1, 0xCF, 0xD3, 0xEB, 0x9B, 0x7B, 0xF6, 0xA1, 0x0F, 0x1E, 0x3C, - 0x78, 0xF0, 0xAD, 0x17, 0x2E, 0x5C, 0xB8, 0x3D, 0x7A, 0xF4, 0xA5, 0x07, - 0x0E, 0x1C, 0x38, 0x70, 0xE0, 0x8D, 0x57, 0xAE, 0x11, 0x22, 0x44, 0x88, - 0x5D, 0xBA, 0x39, 0x72, 0xE4, 0x85, 0x47, 0x8E, 0x51, 0xA2, 0x09, 0x12, - 0x24, 0x48, 0x90, 0x6D, 0xDA, 0xF9, 0xBF, 0x33, 0x66, 0xCC, 0xD5, 0xE7, - 0x83, 0x4B, 0x96, 0x61, 0xC2, 0xC9, 0xDF, 0xF3, 0xAB, 0x1B, 0x36, 0x6C, - 0xD8, 0xFD, 0xB7, 0x23, 0x46, 0x8C, 0x55, 0xAA, 0x19, 0x32, 0x64, 0xC8, - 0xDD, 0xF7, 0xA3, 0x0B, 0x16, 0x2C, 0x58, 0xB0, 0x2D, 0x5A, 0xB4, 0x25, - 0x4A, 0x94, 0x65, 0xCA, 0xD9, 0xFF, 0xB3, 0x2B, 0x56, 0xAC, 0x15, 0x2A, - 0x54, 0xA8, 0x1D, 0x3A, 0x74, 0xE8, 0x9D, 0x77, 0xEE, 0x91, 0x6F, 0xDE, - 0xF1, 0xAF, 0x13, 0x26, 0x4C, 0x98, 0x7D, 0xFA, 0xB9, 0x3F, 0x7E, 0xFC, - 0xB5, 0x27, 0x4E, 0x9C, 0x75, 0xEA, 0x99, 0x7F, 0xFE, 0xB1, 0x2F, 0x5E, - 0xBC, 0x35, 0x6A, 0xD4, 0xE5, 0x87, 0x43, 0x86, 0x41, 0x82, 0x49, 0x92, - 0x69, 0xD2, 0xE9, 0x9F, 0x73, 0xE6, 0x81, 0x4F, 0x9E, 0x71, 0xE2, 0x89, - 0x5F, 0xBE, 0x31, 0x62, 0xC4, 0xC5, 0xC7, 0xC3, 0xCB, 0xDB, 0xFB, 0xBB, - 0x3B, 0x76, 0xEC, 0x95, 0x67, 0xCE, 0xD1, 0xEF, 0x93, 0x6B, 0xD6, 0xE1, - 0x8F, 0x53, 0xA6, 0x01, 0x02, 0x04, 0x08, 0x10, 0x20, 0x40, 0x80, 0x4D, - 0x9A, 0x79, 0xF2, 0xA9, 0x1F, 0x3E, 0x7C, 0xF8, 0xBD, 0x37, 0x6E, 0xDC, - 0xF5, 0xA7, 0x03, 0x06, 0x0C, 0x18, 0x30, 0x60, 0xC0, 0xCD, 0xD7, 0xE3, - 0x8B, 0x5B, 0xB6, 0x21, 0x42, 0x84, 0x45, 0x8A, 0x59, 0xB2, 0x29, 0x52, - 0xA4, 0x05, 0x0A, 0x14, 0x28, 0x50, 0xA0, 0x0D, 0x1A, 0x34, 0x68, 0xD0, - 0xED, 0x97, 0x63, 0xC6, 0xC1, 0xCF, 0xD3, 0xEB, 0x9B, 0x7B, 0xF6, 0xA1, - 0x0F, 0x1E, 0x3C, 0x78, 0xF0, 0xAD, 0x17, 0x2E, 0x5C, 0xB8, 0x3D, 0x7A, - 0xF4, 0xA5, 0x07, 0x0E, 0x1C, 0x38, 0x70, 0xE0, 0x8D, 0x57, 0xAE, 0x11, - 0x22, 0x44, 0x88, 0x5D, 0xBA, 0x39, 0x72, 0xE4, 0x85, 0x47, 0x8E, 0x51, - 0xA2, 0x09, 0x12, 0x24, 0x48, 0x90, 0x6D, 0xDA, 0xF9, 0xBF, 0x33, 0x66, - 0xCC, 0xD5, 0xE7, 0x83, 0x4B, 0x96, 0x61, 0xC2, 0xC9, 0xDF, 0xF3, 0xAB, - 0x1B, 0x36, 0x6C, 0xD8, 0xFD, 0xB7, 0x23, 0x46, 0x8C, 0x55, 0xAA, 0x19, - 0x32, 0x64, 0xC8, 0xDD, 0xF7, 0xA3, 0x0B, 0x16, 0x2C, 0x58, 0xB0, 0x2D, - 0x5A, 0xB4, 0x25, 0x4A, 0x94, 0x65, 0xCA, 0xD9, 0xFF, 0xB3, 0x2B, 0x56, - 0xAC, 0x15, 0x2A, 0x54, 0xA8, 0x1D, 0x3A, 0x74, 0xE8, 0x9D, 0x77, 0xEE, - 0x91, 0x6F, 0xDE, 0xF1, 0xAF, 0x13, 0x26, 0x4C, 0x98, 0x7D, 0xFA, 0xB9, - 0x3F, 0x7E, 0xFC, 0xB5, 0x27, 0x4E, 0x9C, 0x75, 0xEA, 0x99, 0x7F, 0xFE, - 0xB1, 0x2F, 0x5E, 0xBC, 0x35, 0x6A, 0xD4, 0xE5, 0x87, 0x43, 0x86, 0x41, - 0x82, 0x49, 0x92, 0x69, 0xD2, 0xE9, 0x9F, 0x73, 0xE6, 0x81, 0x4F, 0x9E, - 0x71, 0xE2, 0x89, 0x5F, 0xBE, 0x31, 0x62, 0xC4, 0xC5, 0xC7, 0xC3, 0xCB -}; - - -/* The table constants are indices of - * S-box entries, preprocessed through q0 and q1. */ -static byte calc_sb_tbl[512] = { - 0xA9, 0x75, 0x67, 0xF3, 0xB3, 0xC6, 0xE8, 0xF4, - 0x04, 0xDB, 0xFD, 0x7B, 0xA3, 0xFB, 0x76, 0xC8, - 0x9A, 0x4A, 0x92, 0xD3, 0x80, 0xE6, 0x78, 0x6B, - 0xE4, 0x45, 0xDD, 0x7D, 0xD1, 0xE8, 0x38, 0x4B, - 0x0D, 0xD6, 0xC6, 0x32, 0x35, 0xD8, 0x98, 0xFD, - 0x18, 0x37, 0xF7, 0x71, 0xEC, 0xF1, 0x6C, 0xE1, - 0x43, 0x30, 0x75, 0x0F, 0x37, 0xF8, 0x26, 0x1B, - 0xFA, 0x87, 0x13, 0xFA, 0x94, 0x06, 0x48, 0x3F, - 0xF2, 0x5E, 0xD0, 0xBA, 0x8B, 0xAE, 0x30, 0x5B, - 0x84, 0x8A, 0x54, 0x00, 0xDF, 0xBC, 0x23, 0x9D, - 0x19, 0x6D, 0x5B, 0xC1, 0x3D, 0xB1, 0x59, 0x0E, - 0xF3, 0x80, 0xAE, 0x5D, 0xA2, 0xD2, 0x82, 0xD5, - 0x63, 0xA0, 0x01, 0x84, 0x83, 0x07, 0x2E, 0x14, - 0xD9, 0xB5, 0x51, 0x90, 0x9B, 0x2C, 0x7C, 0xA3, - 0xA6, 0xB2, 0xEB, 0x73, 0xA5, 0x4C, 0xBE, 0x54, - 0x16, 0x92, 0x0C, 0x74, 0xE3, 0x36, 0x61, 0x51, - 0xC0, 0x38, 0x8C, 0xB0, 0x3A, 0xBD, 0xF5, 0x5A, - 0x73, 0xFC, 0x2C, 0x60, 0x25, 0x62, 0x0B, 0x96, - 0xBB, 0x6C, 0x4E, 0x42, 0x89, 0xF7, 0x6B, 0x10, - 0x53, 0x7C, 0x6A, 0x28, 0xB4, 0x27, 0xF1, 0x8C, - 0xE1, 0x13, 0xE6, 0x95, 0xBD, 0x9C, 0x45, 0xC7, - 0xE2, 0x24, 0xF4, 0x46, 0xB6, 0x3B, 0x66, 0x70, - 0xCC, 0xCA, 0x95, 0xE3, 0x03, 0x85, 0x56, 0xCB, - 0xD4, 0x11, 0x1C, 0xD0, 0x1E, 0x93, 0xD7, 0xB8, - 0xFB, 0xA6, 0xC3, 0x83, 0x8E, 0x20, 0xB5, 0xFF, - 0xE9, 0x9F, 0xCF, 0x77, 0xBF, 0xC3, 0xBA, 0xCC, - 0xEA, 0x03, 0x77, 0x6F, 0x39, 0x08, 0xAF, 0xBF, - 0x33, 0x40, 0xC9, 0xE7, 0x62, 0x2B, 0x71, 0xE2, - 0x81, 0x79, 0x79, 0x0C, 0x09, 0xAA, 0xAD, 0x82, - 0x24, 0x41, 0xCD, 0x3A, 0xF9, 0xEA, 0xD8, 0xB9, - 0xE5, 0xE4, 0xC5, 0x9A, 0xB9, 0xA4, 0x4D, 0x97, - 0x44, 0x7E, 0x08, 0xDA, 0x86, 0x7A, 0xE7, 0x17, - 0xA1, 0x66, 0x1D, 0x94, 0xAA, 0xA1, 0xED, 0x1D, - 0x06, 0x3D, 0x70, 0xF0, 0xB2, 0xDE, 0xD2, 0xB3, - 0x41, 0x0B, 0x7B, 0x72, 0xA0, 0xA7, 0x11, 0x1C, - 0x31, 0xEF, 0xC2, 0xD1, 0x27, 0x53, 0x90, 0x3E, - 0x20, 0x8F, 0xF6, 0x33, 0x60, 0x26, 0xFF, 0x5F, - 0x96, 0xEC, 0x5C, 0x76, 0xB1, 0x2A, 0xAB, 0x49, - 0x9E, 0x81, 0x9C, 0x88, 0x52, 0xEE, 0x1B, 0x21, - 0x5F, 0xC4, 0x93, 0x1A, 0x0A, 0xEB, 0xEF, 0xD9, - 0x91, 0xC5, 0x85, 0x39, 0x49, 0x99, 0xEE, 0xCD, - 0x2D, 0xAD, 0x4F, 0x31, 0x8F, 0x8B, 0x3B, 0x01, - 0x47, 0x18, 0x87, 0x23, 0x6D, 0xDD, 0x46, 0x1F, - 0xD6, 0x4E, 0x3E, 0x2D, 0x69, 0xF9, 0x64, 0x48, - 0x2A, 0x4F, 0xCE, 0xF2, 0xCB, 0x65, 0x2F, 0x8E, - 0xFC, 0x78, 0x97, 0x5C, 0x05, 0x58, 0x7A, 0x19, - 0xAC, 0x8D, 0x7F, 0xE5, 0xD5, 0x98, 0x1A, 0x57, - 0x4B, 0x67, 0x0E, 0x7F, 0xA7, 0x05, 0x5A, 0x64, - 0x28, 0xAF, 0x14, 0x63, 0x3F, 0xB6, 0x29, 0xFE, - 0x88, 0xF5, 0x3C, 0xB7, 0x4C, 0x3C, 0x02, 0xA5, - 0xB8, 0xCE, 0xDA, 0xE9, 0xB0, 0x68, 0x17, 0x44, - 0x55, 0xE0, 0x1F, 0x4D, 0x8A, 0x43, 0x7D, 0x69, - 0x57, 0x29, 0xC7, 0x2E, 0x8D, 0xAC, 0x74, 0x15, - 0xB7, 0x59, 0xC4, 0xA8, 0x9F, 0x0A, 0x72, 0x9E, - 0x7E, 0x6E, 0x15, 0x47, 0x22, 0xDF, 0x12, 0x34, - 0x58, 0x35, 0x07, 0x6A, 0x99, 0xCF, 0x34, 0xDC, - 0x6E, 0x22, 0x50, 0xC9, 0xDE, 0xC0, 0x68, 0x9B, - 0x65, 0x89, 0xBC, 0xD4, 0xDB, 0xED, 0xF8, 0xAB, - 0xC8, 0x12, 0xA8, 0xA2, 0x2B, 0x0D, 0x40, 0x52, - 0xDC, 0xBB, 0xFE, 0x02, 0x32, 0x2F, 0xA4, 0xA9, - 0xCA, 0xD7, 0x10, 0x61, 0x21, 0x1E, 0xF0, 0xB4, - 0xD3, 0x50, 0x5D, 0x04, 0x0F, 0xF6, 0x00, 0xC2, - 0x6F, 0x16, 0x9D, 0x25, 0x36, 0x86, 0x42, 0x56, - 0x4A, 0x55, 0x5E, 0x09, 0xC1, 0xBE, 0xE0, 0x91 -}; -/* Macro to perform one column of the RS matrix multiplication. The - * parameters a, b, c, and d are the four bytes of output; i is the index - * of the key bytes, and w, x, y, and z, are the column of constants from - * the RS matrix, preprocessed through the poly_to_exp table. */ - -#define CALC_S(a, b, c, d, i, w, x, y, z) \ - if (key[i]) { \ - tmp = poly_to_exp[key[i] - 1]; \ - (a) ^= exp_to_poly[tmp + (w)]; \ - (b) ^= exp_to_poly[tmp + (x)]; \ - (c) ^= exp_to_poly[tmp + (y)]; \ - (d) ^= exp_to_poly[tmp + (z)]; \ - } - -/* Macros to calculate the key-dependent S-boxes for a 128-bit key using - * the S vector from CALC_S. CALC_SB_2 computes a single entry in all - * four S-boxes, where i is the index of the entry to compute, and a and b - * are the index numbers preprocessed through the q0 and q1 tables - * respectively. CALC_SB is simply a convenience to make the code shorter; - * it calls CALC_SB_2 four times with consecutive indices from i to i+3, - * using the remaining parameters two by two. */ - -#define CALC_SB_2(i, a, b) \ - ctx->s[0][i] = mds[0][q0[(a) ^ sa] ^ se]; \ - ctx->s[1][i] = mds[1][q0[(b) ^ sb] ^ sf]; \ - ctx->s[2][i] = mds[2][q1[(a) ^ sc] ^ sg]; \ - ctx->s[3][i] = mds[3][q1[(b) ^ sd] ^ sh] - -#define CALC_SB(i, a, b, c, d, e, f, g, h) \ - CALC_SB_2 (i, a, b); CALC_SB_2 ((i)+1, c, d); \ - CALC_SB_2 ((i)+2, e, f); CALC_SB_2 ((i)+3, g, h) - -/* Macros exactly like CALC_SB and CALC_SB_2, but for 256-bit keys. */ - -#define CALC_SB256_2(i, a, b) \ - ctx->s[0][i] = mds[0][q0[q0[q1[(b) ^ sa] ^ se] ^ si] ^ sm]; \ - ctx->s[1][i] = mds[1][q0[q1[q1[(a) ^ sb] ^ sf] ^ sj] ^ sn]; \ - ctx->s[2][i] = mds[2][q1[q0[q0[(a) ^ sc] ^ sg] ^ sk] ^ so]; \ - ctx->s[3][i] = mds[3][q1[q1[q0[(b) ^ sd] ^ sh] ^ sl] ^ sp]; - -#define CALC_SB256(i, a, b, c, d, e, f, g, h) \ - CALC_SB256_2 (i, a, b); CALC_SB256_2 ((i)+1, c, d); \ - CALC_SB256_2 ((i)+2, e, f); CALC_SB256_2 ((i)+3, g, h) - -/* Macros to calculate the whitening and round subkeys. CALC_K_2 computes the - * last two stages of the h() function for a given index (either 2i or 2i+1). - * a, b, c, and d are the four bytes going into the last two stages. For - * 128-bit keys, this is the entire h() function and a and c are the index - * preprocessed through q0 and q1 respectively; for longer keys they are the - * output of previous stages. j is the index of the first key byte to use. - * CALC_K computes a pair of subkeys for 128-bit Twofish, by calling CALC_K_2 - * twice, doing the Pseudo-Hadamard Transform, and doing the necessary - * rotations. Its parameters are: a, the array to write the results into, - * j, the index of the first output entry, k and l, the preprocessed indices - * for index 2i, and m and n, the preprocessed indices for index 2i+1. - * CALC_K256_2 expands CALC_K_2 to handle 256-bit keys, by doing two - * additional lookup-and-XOR stages. The parameters a and b are the index - * preprocessed through q0 and q1 respectively; j is the index of the first - * key byte to use. CALC_K256 is identical to CALC_K but for using the - * CALC_K256_2 macro instead of CALC_K_2. */ - -#define CALC_K_2(a, b, c, d, j) \ - mds[0][q0[a ^ key[(j) + 8]] ^ key[j]] \ - ^ mds[1][q0[b ^ key[(j) + 9]] ^ key[(j) + 1]] \ - ^ mds[2][q1[c ^ key[(j) + 10]] ^ key[(j) + 2]] \ - ^ mds[3][q1[d ^ key[(j) + 11]] ^ key[(j) + 3]] - -#define CALC_K(a, j, k, l, m, n) \ - x = CALC_K_2 (k, l, k, l, 0); \ - y = CALC_K_2 (m, n, m, n, 4); \ - y = (y << 8) + (y >> 24); \ - x += y; y += x; ctx->a[j] = x; \ - ctx->a[(j) + 1] = (y << 9) + (y >> 23) - -#define CALC_K256_2(a, b, j) \ - CALC_K_2 (q0[q1[b ^ key[(j) + 24]] ^ key[(j) + 16]], \ - q1[q1[a ^ key[(j) + 25]] ^ key[(j) + 17]], \ - q0[q0[a ^ key[(j) + 26]] ^ key[(j) + 18]], \ - q1[q0[b ^ key[(j) + 27]] ^ key[(j) + 19]], j) - -#define CALC_K256(a, j, k, l, m, n) \ - x = CALC_K256_2 (k, l, 0); \ - y = CALC_K256_2 (m, n, 4); \ - y = (y << 8) + (y >> 24); \ - x += y; y += x; ctx->a[j] = x; \ - ctx->a[(j) + 1] = (y << 9) + (y >> 23) - - - -/* Perform the key setup. Note that this works only with 128- and 256-bit - * keys, despite the API that looks like it might support other sizes. */ - -static gcry_err_code_t -do_twofish_setkey (TWOFISH_context *ctx, const byte *key, const unsigned keylen) -{ - int i, j, k; - - /* Temporaries for CALC_K. */ - u32 x, y; - - /* The S vector used to key the S-boxes, split up into individual bytes. - * 128-bit keys use only sa through sh; 256-bit use all of them. */ - byte sa = 0, sb = 0, sc = 0, sd = 0, se = 0, sf = 0, sg = 0, sh = 0; - byte si = 0, sj = 0, sk = 0, sl = 0, sm = 0, sn = 0, so = 0, sp = 0; - - /* Temporary for CALC_S. */ - byte tmp; - - /* Flags for self-test. */ - static int initialized = 0; - static const char *selftest_failed=0; - - /* Check key length. */ - if( ( ( keylen - 16 ) | 16 ) != 16 ) - return GPG_ERR_INV_KEYLEN; - - /* Do self-test if necessary. */ - if (!initialized) - { - initialized = 1; - selftest_failed = selftest (); - if( selftest_failed ) - log_error("%s\n", selftest_failed ); - } - if( selftest_failed ) - return GPG_ERR_SELFTEST_FAILED; - - /* Compute the first two words of the S vector. The magic numbers are - * the entries of the RS matrix, preprocessed through poly_to_exp. The - * numbers in the comments are the original (polynomial form) matrix - * entries. */ - CALC_S (sa, sb, sc, sd, 0, 0x00, 0x2D, 0x01, 0x2D); /* 01 A4 02 A4 */ - CALC_S (sa, sb, sc, sd, 1, 0x2D, 0xA4, 0x44, 0x8A); /* A4 56 A1 55 */ - CALC_S (sa, sb, sc, sd, 2, 0x8A, 0xD5, 0xBF, 0xD1); /* 55 82 FC 87 */ - CALC_S (sa, sb, sc, sd, 3, 0xD1, 0x7F, 0x3D, 0x99); /* 87 F3 C1 5A */ - CALC_S (sa, sb, sc, sd, 4, 0x99, 0x46, 0x66, 0x96); /* 5A 1E 47 58 */ - CALC_S (sa, sb, sc, sd, 5, 0x96, 0x3C, 0x5B, 0xED); /* 58 C6 AE DB */ - CALC_S (sa, sb, sc, sd, 6, 0xED, 0x37, 0x4F, 0xE0); /* DB 68 3D 9E */ - CALC_S (sa, sb, sc, sd, 7, 0xE0, 0xD0, 0x8C, 0x17); /* 9E E5 19 03 */ - CALC_S (se, sf, sg, sh, 8, 0x00, 0x2D, 0x01, 0x2D); /* 01 A4 02 A4 */ - CALC_S (se, sf, sg, sh, 9, 0x2D, 0xA4, 0x44, 0x8A); /* A4 56 A1 55 */ - CALC_S (se, sf, sg, sh, 10, 0x8A, 0xD5, 0xBF, 0xD1); /* 55 82 FC 87 */ - CALC_S (se, sf, sg, sh, 11, 0xD1, 0x7F, 0x3D, 0x99); /* 87 F3 C1 5A */ - CALC_S (se, sf, sg, sh, 12, 0x99, 0x46, 0x66, 0x96); /* 5A 1E 47 58 */ - CALC_S (se, sf, sg, sh, 13, 0x96, 0x3C, 0x5B, 0xED); /* 58 C6 AE DB */ - CALC_S (se, sf, sg, sh, 14, 0xED, 0x37, 0x4F, 0xE0); /* DB 68 3D 9E */ - CALC_S (se, sf, sg, sh, 15, 0xE0, 0xD0, 0x8C, 0x17); /* 9E E5 19 03 */ - - if (keylen == 32) /* 256-bit key */ - { - /* Calculate the remaining two words of the S vector */ - CALC_S (si, sj, sk, sl, 16, 0x00, 0x2D, 0x01, 0x2D); /* 01 A4 02 A4 */ - CALC_S (si, sj, sk, sl, 17, 0x2D, 0xA4, 0x44, 0x8A); /* A4 56 A1 55 */ - CALC_S (si, sj, sk, sl, 18, 0x8A, 0xD5, 0xBF, 0xD1); /* 55 82 FC 87 */ - CALC_S (si, sj, sk, sl, 19, 0xD1, 0x7F, 0x3D, 0x99); /* 87 F3 C1 5A */ - CALC_S (si, sj, sk, sl, 20, 0x99, 0x46, 0x66, 0x96); /* 5A 1E 47 58 */ - CALC_S (si, sj, sk, sl, 21, 0x96, 0x3C, 0x5B, 0xED); /* 58 C6 AE DB */ - CALC_S (si, sj, sk, sl, 22, 0xED, 0x37, 0x4F, 0xE0); /* DB 68 3D 9E */ - CALC_S (si, sj, sk, sl, 23, 0xE0, 0xD0, 0x8C, 0x17); /* 9E E5 19 03 */ - CALC_S (sm, sn, so, sp, 24, 0x00, 0x2D, 0x01, 0x2D); /* 01 A4 02 A4 */ - CALC_S (sm, sn, so, sp, 25, 0x2D, 0xA4, 0x44, 0x8A); /* A4 56 A1 55 */ - CALC_S (sm, sn, so, sp, 26, 0x8A, 0xD5, 0xBF, 0xD1); /* 55 82 FC 87 */ - CALC_S (sm, sn, so, sp, 27, 0xD1, 0x7F, 0x3D, 0x99); /* 87 F3 C1 5A */ - CALC_S (sm, sn, so, sp, 28, 0x99, 0x46, 0x66, 0x96); /* 5A 1E 47 58 */ - CALC_S (sm, sn, so, sp, 29, 0x96, 0x3C, 0x5B, 0xED); /* 58 C6 AE DB */ - CALC_S (sm, sn, so, sp, 30, 0xED, 0x37, 0x4F, 0xE0); /* DB 68 3D 9E */ - CALC_S (sm, sn, so, sp, 31, 0xE0, 0xD0, 0x8C, 0x17); /* 9E E5 19 03 */ - - /* Compute the S-boxes. */ - for(i=j=0,k=1; i < 256; i++, j += 2, k += 2 ) - { - CALC_SB256_2( i, calc_sb_tbl[j], calc_sb_tbl[k] ); - } - - /* Calculate whitening and round subkeys. The constants are - * indices of subkeys, preprocessed through q0 and q1. */ - CALC_K256 (w, 0, 0xA9, 0x75, 0x67, 0xF3); - CALC_K256 (w, 2, 0xB3, 0xC6, 0xE8, 0xF4); - CALC_K256 (w, 4, 0x04, 0xDB, 0xFD, 0x7B); - CALC_K256 (w, 6, 0xA3, 0xFB, 0x76, 0xC8); - CALC_K256 (k, 0, 0x9A, 0x4A, 0x92, 0xD3); - CALC_K256 (k, 2, 0x80, 0xE6, 0x78, 0x6B); - CALC_K256 (k, 4, 0xE4, 0x45, 0xDD, 0x7D); - CALC_K256 (k, 6, 0xD1, 0xE8, 0x38, 0x4B); - CALC_K256 (k, 8, 0x0D, 0xD6, 0xC6, 0x32); - CALC_K256 (k, 10, 0x35, 0xD8, 0x98, 0xFD); - CALC_K256 (k, 12, 0x18, 0x37, 0xF7, 0x71); - CALC_K256 (k, 14, 0xEC, 0xF1, 0x6C, 0xE1); - CALC_K256 (k, 16, 0x43, 0x30, 0x75, 0x0F); - CALC_K256 (k, 18, 0x37, 0xF8, 0x26, 0x1B); - CALC_K256 (k, 20, 0xFA, 0x87, 0x13, 0xFA); - CALC_K256 (k, 22, 0x94, 0x06, 0x48, 0x3F); - CALC_K256 (k, 24, 0xF2, 0x5E, 0xD0, 0xBA); - CALC_K256 (k, 26, 0x8B, 0xAE, 0x30, 0x5B); - CALC_K256 (k, 28, 0x84, 0x8A, 0x54, 0x00); - CALC_K256 (k, 30, 0xDF, 0xBC, 0x23, 0x9D); - } - else - { - /* Compute the S-boxes. */ - for(i=j=0,k=1; i < 256; i++, j += 2, k += 2 ) - { - CALC_SB_2( i, calc_sb_tbl[j], calc_sb_tbl[k] ); - } - - /* Calculate whitening and round subkeys. The constants are - * indices of subkeys, preprocessed through q0 and q1. */ - CALC_K (w, 0, 0xA9, 0x75, 0x67, 0xF3); - CALC_K (w, 2, 0xB3, 0xC6, 0xE8, 0xF4); - CALC_K (w, 4, 0x04, 0xDB, 0xFD, 0x7B); - CALC_K (w, 6, 0xA3, 0xFB, 0x76, 0xC8); - CALC_K (k, 0, 0x9A, 0x4A, 0x92, 0xD3); - CALC_K (k, 2, 0x80, 0xE6, 0x78, 0x6B); - CALC_K (k, 4, 0xE4, 0x45, 0xDD, 0x7D); - CALC_K (k, 6, 0xD1, 0xE8, 0x38, 0x4B); - CALC_K (k, 8, 0x0D, 0xD6, 0xC6, 0x32); - CALC_K (k, 10, 0x35, 0xD8, 0x98, 0xFD); - CALC_K (k, 12, 0x18, 0x37, 0xF7, 0x71); - CALC_K (k, 14, 0xEC, 0xF1, 0x6C, 0xE1); - CALC_K (k, 16, 0x43, 0x30, 0x75, 0x0F); - CALC_K (k, 18, 0x37, 0xF8, 0x26, 0x1B); - CALC_K (k, 20, 0xFA, 0x87, 0x13, 0xFA); - CALC_K (k, 22, 0x94, 0x06, 0x48, 0x3F); - CALC_K (k, 24, 0xF2, 0x5E, 0xD0, 0xBA); - CALC_K (k, 26, 0x8B, 0xAE, 0x30, 0x5B); - CALC_K (k, 28, 0x84, 0x8A, 0x54, 0x00); - CALC_K (k, 30, 0xDF, 0xBC, 0x23, 0x9D); - } - - return 0; -} - -static gcry_err_code_t -twofish_setkey (void *context, const byte *key, unsigned int keylen) -{ - TWOFISH_context *ctx = context; - int rc = do_twofish_setkey (ctx, key, keylen); - _gcry_burn_stack (23+6*sizeof(void*)); - return rc; -} - - - -/* Macros to compute the g() function in the encryption and decryption - * rounds. G1 is the straight g() function; G2 includes the 8-bit - * rotation for the high 32-bit word. */ - -#define G1(a) \ - (ctx->s[0][(a) & 0xFF]) ^ (ctx->s[1][((a) >> 8) & 0xFF]) \ - ^ (ctx->s[2][((a) >> 16) & 0xFF]) ^ (ctx->s[3][(a) >> 24]) - -#define G2(b) \ - (ctx->s[1][(b) & 0xFF]) ^ (ctx->s[2][((b) >> 8) & 0xFF]) \ - ^ (ctx->s[3][((b) >> 16) & 0xFF]) ^ (ctx->s[0][(b) >> 24]) - -/* Encryption and decryption Feistel rounds. Each one calls the two g() - * macros, does the PHT, and performs the XOR and the appropriate bit - * rotations. The parameters are the round number (used to select subkeys), - * and the four 32-bit chunks of the text. */ - -#define ENCROUND(n, a, b, c, d) \ - x = G1 (a); y = G2 (b); \ - x += y; y += x + ctx->k[2 * (n) + 1]; \ - (c) ^= x + ctx->k[2 * (n)]; \ - (c) = ((c) >> 1) + ((c) << 31); \ - (d) = (((d) << 1)+((d) >> 31)) ^ y - -#define DECROUND(n, a, b, c, d) \ - x = G1 (a); y = G2 (b); \ - x += y; y += x; \ - (d) ^= y + ctx->k[2 * (n) + 1]; \ - (d) = ((d) >> 1) + ((d) << 31); \ - (c) = (((c) << 1)+((c) >> 31)); \ - (c) ^= (x + ctx->k[2 * (n)]) - -/* Encryption and decryption cycles; each one is simply two Feistel rounds - * with the 32-bit chunks re-ordered to simulate the "swap" */ - -#define ENCCYCLE(n) \ - ENCROUND (2 * (n), a, b, c, d); \ - ENCROUND (2 * (n) + 1, c, d, a, b) - -#define DECCYCLE(n) \ - DECROUND (2 * (n) + 1, c, d, a, b); \ - DECROUND (2 * (n), a, b, c, d) - -/* Macros to convert the input and output bytes into 32-bit words, - * and simultaneously perform the whitening step. INPACK packs word - * number n into the variable named by x, using whitening subkey number m. - * OUTUNPACK unpacks word number n from the variable named by x, using - * whitening subkey number m. */ - -#define INPACK(n, x, m) \ - x = in[4 * (n)] ^ (in[4 * (n) + 1] << 8) \ - ^ (in[4 * (n) + 2] << 16) ^ (in[4 * (n) + 3] << 24) ^ ctx->w[m] - -#define OUTUNPACK(n, x, m) \ - x ^= ctx->w[m]; \ - out[4 * (n)] = x; out[4 * (n) + 1] = x >> 8; \ - out[4 * (n) + 2] = x >> 16; out[4 * (n) + 3] = x >> 24 - -/* Encrypt one block. in and out may be the same. */ - -static void -do_twofish_encrypt (const TWOFISH_context *ctx, byte *out, const byte *in) -{ - /* The four 32-bit chunks of the text. */ - u32 a, b, c, d; - - /* Temporaries used by the round function. */ - u32 x, y; - - /* Input whitening and packing. */ - INPACK (0, a, 0); - INPACK (1, b, 1); - INPACK (2, c, 2); - INPACK (3, d, 3); - - /* Encryption Feistel cycles. */ - ENCCYCLE (0); - ENCCYCLE (1); - ENCCYCLE (2); - ENCCYCLE (3); - ENCCYCLE (4); - ENCCYCLE (5); - ENCCYCLE (6); - ENCCYCLE (7); - - /* Output whitening and unpacking. */ - OUTUNPACK (0, c, 4); - OUTUNPACK (1, d, 5); - OUTUNPACK (2, a, 6); - OUTUNPACK (3, b, 7); -} - -static void -twofish_encrypt (void *context, byte *out, const byte *in) -{ - TWOFISH_context *ctx = context; - do_twofish_encrypt (ctx, out, in); - _gcry_burn_stack (24+3*sizeof (void*)); -} - - -/* Decrypt one block. in and out may be the same. */ - -static void -do_twofish_decrypt (const TWOFISH_context *ctx, byte *out, const byte *in) -{ - /* The four 32-bit chunks of the text. */ - u32 a, b, c, d; - - /* Temporaries used by the round function. */ - u32 x, y; - - /* Input whitening and packing. */ - INPACK (0, c, 4); - INPACK (1, d, 5); - INPACK (2, a, 6); - INPACK (3, b, 7); - - /* Encryption Feistel cycles. */ - DECCYCLE (7); - DECCYCLE (6); - DECCYCLE (5); - DECCYCLE (4); - DECCYCLE (3); - DECCYCLE (2); - DECCYCLE (1); - DECCYCLE (0); - - /* Output whitening and unpacking. */ - OUTUNPACK (0, a, 0); - OUTUNPACK (1, b, 1); - OUTUNPACK (2, c, 2); - OUTUNPACK (3, d, 3); -} - -static void -twofish_decrypt (void *context, byte *out, const byte *in) -{ - TWOFISH_context *ctx = context; - - do_twofish_decrypt (ctx, out, in); - _gcry_burn_stack (24+3*sizeof (void*)); -} - - -/* Test a single encryption and decryption with each key size. */ - - -/* More complete test program. This does 1000 encryptions and decryptions - * with each of 250 128-bit keys and 2000 encryptions and decryptions with - * each of 125 256-bit keys, using a feedback scheme similar to a Feistel - * cipher, so as to be sure of testing all the table entries pretty - * thoroughly. We keep changing the keys so as to get a more meaningful - * performance number, since the key setup is non-trivial for Twofish. */ - -#ifdef TEST - - -int -main() -{ - TWOFISH_context ctx; /* Expanded key. */ - int i, j; /* Loop counters. */ - - const char *encrypt_msg; /* Message to print regarding encryption test; - * the printf is done outside the loop to avoid - * stuffing up the timing. */ - clock_t timer; /* For computing elapsed time. */ - - /* Test buffer. */ - byte buffer[4][16] = { - {0x00, 0x11, 0x22, 0x33, 0x44, 0x55, 0x66, 0x77, - 0x88, 0x99, 0xAA, 0xBB, 0xCC, 0xDD, 0xEE, 0xFF}, - {0x0F, 0x1E, 0x2D, 0x3C, 0x4B, 0x5A, 0x69, 0x78, - 0x87, 0x96, 0xA5, 0xB4, 0xC3, 0xD2 ,0xE1, 0xF0}, - {0x01, 0x23, 0x45, 0x67, 0x89, 0xAB, 0xCD, 0xEF, - 0xFE, 0xDC, 0xBA, 0x98, 0x76, 0x54 ,0x32, 0x10}, - {0x01, 0x23, 0x45, 0x67, 0x76, 0x54 ,0x32, 0x10, - 0x89, 0xAB, 0xCD, 0xEF, 0xFE, 0xDC, 0xBA, 0x98} - }; - - /* Expected outputs for the million-operation test */ - static const byte test_encrypt[4][16] = { - {0xC8, 0x23, 0xB8, 0xB7, 0x6B, 0xFE, 0x91, 0x13, - 0x2F, 0xA7, 0x5E, 0xE6, 0x94, 0x77, 0x6F, 0x6B}, - {0x90, 0x36, 0xD8, 0x29, 0xD5, 0x96, 0xC2, 0x8E, - 0xE4, 0xFF, 0x76, 0xBC, 0xE5, 0x77, 0x88, 0x27}, - {0xB8, 0x78, 0x69, 0xAF, 0x42, 0x8B, 0x48, 0x64, - 0xF7, 0xE9, 0xF3, 0x9C, 0x42, 0x18, 0x7B, 0x73}, - {0x7A, 0x88, 0xFB, 0xEB, 0x90, 0xA4, 0xB4, 0xA8, - 0x43, 0xA3, 0x1D, 0xF1, 0x26, 0xC4, 0x53, 0x57} - }; - static const byte test_decrypt[4][16] = { - {0x00, 0x11, 0x22, 0x33, 0x44, 0x55, 0x66, 0x77, - 0x88, 0x99, 0xAA, 0xBB, 0xCC, 0xDD, 0xEE, 0xFF}, - {0x0F, 0x1E, 0x2D, 0x3C, 0x4B, 0x5A, 0x69, 0x78, - 0x87, 0x96, 0xA5, 0xB4, 0xC3, 0xD2 ,0xE1, 0xF0}, - {0x01, 0x23, 0x45, 0x67, 0x89, 0xAB, 0xCD, 0xEF, - 0xFE, 0xDC, 0xBA, 0x98, 0x76, 0x54 ,0x32, 0x10}, - {0x01, 0x23, 0x45, 0x67, 0x76, 0x54 ,0x32, 0x10, - 0x89, 0xAB, 0xCD, 0xEF, 0xFE, 0xDC, 0xBA, 0x98} - }; - - /* Start the timer ticking. */ - timer = clock (); - - /* Encryption test. */ - for (i = 0; i < 125; i++) - { - twofish_setkey (&ctx, buffer[0], sizeof (buffer[0])); - for (j = 0; j < 1000; j++) - twofish_encrypt (&ctx, buffer[2], buffer[2]); - twofish_setkey (&ctx, buffer[1], sizeof (buffer[1])); - for (j = 0; j < 1000; j++) - twofish_encrypt (&ctx, buffer[3], buffer[3]); - twofish_setkey (&ctx, buffer[2], sizeof (buffer[2])*2); - for (j = 0; j < 1000; j++) { - twofish_encrypt (&ctx, buffer[0], buffer[0]); - twofish_encrypt (&ctx, buffer[1], buffer[1]); - } - } - encrypt_msg = memcmp (buffer, test_encrypt, sizeof (test_encrypt)) ? - "encryption failure!\n" : "encryption OK!\n"; - - /* Decryption test. */ - for (i = 0; i < 125; i++) - { - twofish_setkey (&ctx, buffer[2], sizeof (buffer[2])*2); - for (j = 0; j < 1000; j++) { - twofish_decrypt (&ctx, buffer[0], buffer[0]); - twofish_decrypt (&ctx, buffer[1], buffer[1]); - } - twofish_setkey (&ctx, buffer[1], sizeof (buffer[1])); - for (j = 0; j < 1000; j++) - twofish_decrypt (&ctx, buffer[3], buffer[3]); - twofish_setkey (&ctx, buffer[0], sizeof (buffer[0])); - for (j = 0; j < 1000; j++) - twofish_decrypt (&ctx, buffer[2], buffer[2]); - } - - /* Stop the timer, and print results. */ - timer = clock () - timer; - printf (encrypt_msg); - printf (memcmp (buffer, test_decrypt, sizeof (test_decrypt)) ? - "decryption failure!\n" : "decryption OK!\n"); - printf ("elapsed time: %.1f s.\n", (float) timer / CLOCKS_PER_SEC); - - return 0; -} - -#endif /* TEST */ - - - -gcry_cipher_spec_t _gcry_cipher_spec_twofish = - { - "TWOFISH", NULL, NULL, 16, 256, sizeof (TWOFISH_context), - twofish_setkey, twofish_encrypt, twofish_decrypt - , -#ifdef GRUB_UTIL - .modname = "gcry_twofish", -#endif - }; - -gcry_cipher_spec_t _gcry_cipher_spec_twofish128 = - { - "TWOFISH128", NULL, NULL, 16, 128, sizeof (TWOFISH_context), - twofish_setkey, twofish_encrypt, twofish_decrypt - , -#ifdef GRUB_UTIL - .modname = "gcry_twofish", -#endif - }; - - -GRUB_MOD_INIT(gcry_twofish) -{ - grub_cipher_register (&_gcry_cipher_spec_twofish); - grub_cipher_register (&_gcry_cipher_spec_twofish128); -} - -GRUB_MOD_FINI(gcry_twofish) -{ - grub_cipher_unregister (&_gcry_cipher_spec_twofish); - grub_cipher_unregister (&_gcry_cipher_spec_twofish128); -} diff --git a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/types.h b/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/types.h deleted file mode 100644 index 2ec78b62d..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/types.h +++ /dev/null @@ -1,2 +0,0 @@ -#include -#include diff --git a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/whirlpool.c b/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/whirlpool.c deleted file mode 100644 index f2a463d42..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/cipher/whirlpool.c +++ /dev/null @@ -1,1422 +0,0 @@ -/* This file was automatically imported with - import_gcry.py. Please don't modify it */ -#include -GRUB_MOD_LICENSE ("GPLv3+"); -/* whirlpool.c - Whirlpool hashing algorithm - * Copyright (C) 2005 Free Software Foundation, Inc. - * - * This file is part of Libgcrypt. - * - * Libgcrypt is free software; you can redistribute it and/or modify - * it under the terms of the GNU Lesser General Public License as - * published by the Free Software Foundation; either version 2.1 of - * the License, or (at your option) any later version. - * - * Libgcrypt is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA - * - */ - -/* This is an implementation of the Whirlpool hashing algorithm, which - has been developed by Vincent Rijmen and Paulo S. L. M. Barreto; - it's homepage is located at: - http://planeta.terra.com.br/informatica/paulobarreto/WhirlpoolPage.html. - - The S-Boxes and the structure of the main transformation function, - which implements an optimized version of the algorithm, is taken - from the reference implementation available from - http://planeta.terra.com.br/informatica/paulobarreto/whirlpool.zip. */ - - -#include "types.h" -#include "g10lib.h" -#include "cipher.h" - -#include "bithelp.h" - -/* Size of a whirlpool block (in bytes). */ -#define BLOCK_SIZE 64 - -/* Number of rounds. */ -#define R 10 - - - -/* Types. */ -typedef u64 whirlpool_block_t[BLOCK_SIZE / 8]; - -typedef struct { - whirlpool_block_t hash_state; - unsigned char buffer[BLOCK_SIZE]; - size_t count; - unsigned char length[32]; -} whirlpool_context_t; - - - -/* Macros. */ - -/* Convert the the buffer BUFFER into a block BLOCK, using I as - counter. */ -#define buffer_to_block(buffer, block, i) \ - for (i = 0; i < 8; i++) \ - (block)[i] = ((u64) (0 \ - | (((u64) (buffer)[i * 8 + 0]) << 56) \ - | (((u64) (buffer)[i * 8 + 1]) << 48) \ - | (((u64) (buffer)[i * 8 + 2]) << 40) \ - | (((u64) (buffer)[i * 8 + 3]) << 32) \ - | (((u64) (buffer)[i * 8 + 4]) << 24) \ - | (((u64) (buffer)[i * 8 + 5]) << 16) \ - | (((u64) (buffer)[i * 8 + 6]) << 8) \ - | (((u64) (buffer)[i * 8 + 7]) << 0))); - -/* Convert the block BLOCK into a buffer BUFFER, using I as - counter. */ -#define block_to_buffer(buffer, block, i) \ - for (i = 0; i < 8; i++) \ - { \ - (buffer)[i * 8 + 0] = (block[i] >> 56) & 0xFF; \ - (buffer)[i * 8 + 1] = (block[i] >> 48) & 0xFF; \ - (buffer)[i * 8 + 2] = (block[i] >> 40) & 0xFF; \ - (buffer)[i * 8 + 3] = (block[i] >> 32) & 0xFF; \ - (buffer)[i * 8 + 4] = (block[i] >> 24) & 0xFF; \ - (buffer)[i * 8 + 5] = (block[i] >> 16) & 0xFF; \ - (buffer)[i * 8 + 6] = (block[i] >> 8) & 0xFF; \ - (buffer)[i * 8 + 7] = (block[i] >> 0) & 0xFF; \ - } - -/* Copy the block BLOCK_SRC to BLOCK_DST, using I as counter. */ -#define block_copy(block_dst, block_src, i) \ - for (i = 0; i < 8; i++) \ - block_dst[i] = block_src[i]; - -/* XOR the block BLOCK_SRC into BLOCK_DST, using I as counter. */ -#define block_xor(block_dst, block_src, i) \ - for (i = 0; i < 8; i++) \ - block_dst[i] ^= block_src[i]; - - - -/* Round constants. */ -static const u64 rc[R] = - { - U64_C (0x1823c6e887b8014f), - U64_C (0x36a6d2f5796f9152), - U64_C (0x60bc9b8ea30c7b35), - U64_C (0x1de0d7c22e4bfe57), - U64_C (0x157737e59ff04ada), - U64_C (0x58c9290ab1a06b85), - U64_C (0xbd5d10f4cb3e0567), - U64_C (0xe427418ba77d95d8), - U64_C (0xfbee7c66dd17479e), - U64_C (0xca2dbf07ad5a8333), - }; - - - -/* Main lookup boxes. */ -static const u64 C0[256] = - { - U64_C (0x18186018c07830d8), U64_C (0x23238c2305af4626), - U64_C (0xc6c63fc67ef991b8), U64_C (0xe8e887e8136fcdfb), - U64_C (0x878726874ca113cb), U64_C (0xb8b8dab8a9626d11), - U64_C (0x0101040108050209), U64_C (0x4f4f214f426e9e0d), - U64_C (0x3636d836adee6c9b), U64_C (0xa6a6a2a6590451ff), - U64_C (0xd2d26fd2debdb90c), U64_C (0xf5f5f3f5fb06f70e), - U64_C (0x7979f979ef80f296), U64_C (0x6f6fa16f5fcede30), - U64_C (0x91917e91fcef3f6d), U64_C (0x52525552aa07a4f8), - U64_C (0x60609d6027fdc047), U64_C (0xbcbccabc89766535), - U64_C (0x9b9b569baccd2b37), U64_C (0x8e8e028e048c018a), - U64_C (0xa3a3b6a371155bd2), U64_C (0x0c0c300c603c186c), - U64_C (0x7b7bf17bff8af684), U64_C (0x3535d435b5e16a80), - U64_C (0x1d1d741de8693af5), U64_C (0xe0e0a7e05347ddb3), - U64_C (0xd7d77bd7f6acb321), U64_C (0xc2c22fc25eed999c), - U64_C (0x2e2eb82e6d965c43), U64_C (0x4b4b314b627a9629), - U64_C (0xfefedffea321e15d), U64_C (0x575741578216aed5), - U64_C (0x15155415a8412abd), U64_C (0x7777c1779fb6eee8), - U64_C (0x3737dc37a5eb6e92), U64_C (0xe5e5b3e57b56d79e), - U64_C (0x9f9f469f8cd92313), U64_C (0xf0f0e7f0d317fd23), - U64_C (0x4a4a354a6a7f9420), U64_C (0xdada4fda9e95a944), - U64_C (0x58587d58fa25b0a2), U64_C (0xc9c903c906ca8fcf), - U64_C (0x2929a429558d527c), U64_C (0x0a0a280a5022145a), - U64_C (0xb1b1feb1e14f7f50), U64_C (0xa0a0baa0691a5dc9), - U64_C (0x6b6bb16b7fdad614), U64_C (0x85852e855cab17d9), - U64_C (0xbdbdcebd8173673c), U64_C (0x5d5d695dd234ba8f), - U64_C (0x1010401080502090), U64_C (0xf4f4f7f4f303f507), - U64_C (0xcbcb0bcb16c08bdd), U64_C (0x3e3ef83eedc67cd3), - U64_C (0x0505140528110a2d), U64_C (0x676781671fe6ce78), - U64_C (0xe4e4b7e47353d597), U64_C (0x27279c2725bb4e02), - U64_C (0x4141194132588273), U64_C (0x8b8b168b2c9d0ba7), - U64_C (0xa7a7a6a7510153f6), U64_C (0x7d7de97dcf94fab2), - U64_C (0x95956e95dcfb3749), U64_C (0xd8d847d88e9fad56), - U64_C (0xfbfbcbfb8b30eb70), U64_C (0xeeee9fee2371c1cd), - U64_C (0x7c7ced7cc791f8bb), U64_C (0x6666856617e3cc71), - U64_C (0xdddd53dda68ea77b), U64_C (0x17175c17b84b2eaf), - U64_C (0x4747014702468e45), U64_C (0x9e9e429e84dc211a), - U64_C (0xcaca0fca1ec589d4), U64_C (0x2d2db42d75995a58), - U64_C (0xbfbfc6bf9179632e), U64_C (0x07071c07381b0e3f), - U64_C (0xadad8ead012347ac), U64_C (0x5a5a755aea2fb4b0), - U64_C (0x838336836cb51bef), U64_C (0x3333cc3385ff66b6), - U64_C (0x636391633ff2c65c), U64_C (0x02020802100a0412), - U64_C (0xaaaa92aa39384993), U64_C (0x7171d971afa8e2de), - U64_C (0xc8c807c80ecf8dc6), U64_C (0x19196419c87d32d1), - U64_C (0x494939497270923b), U64_C (0xd9d943d9869aaf5f), - U64_C (0xf2f2eff2c31df931), U64_C (0xe3e3abe34b48dba8), - U64_C (0x5b5b715be22ab6b9), U64_C (0x88881a8834920dbc), - U64_C (0x9a9a529aa4c8293e), U64_C (0x262698262dbe4c0b), - U64_C (0x3232c8328dfa64bf), U64_C (0xb0b0fab0e94a7d59), - U64_C (0xe9e983e91b6acff2), U64_C (0x0f0f3c0f78331e77), - U64_C (0xd5d573d5e6a6b733), U64_C (0x80803a8074ba1df4), - U64_C (0xbebec2be997c6127), U64_C (0xcdcd13cd26de87eb), - U64_C (0x3434d034bde46889), U64_C (0x48483d487a759032), - U64_C (0xffffdbffab24e354), U64_C (0x7a7af57af78ff48d), - U64_C (0x90907a90f4ea3d64), U64_C (0x5f5f615fc23ebe9d), - U64_C (0x202080201da0403d), U64_C (0x6868bd6867d5d00f), - U64_C (0x1a1a681ad07234ca), U64_C (0xaeae82ae192c41b7), - U64_C (0xb4b4eab4c95e757d), U64_C (0x54544d549a19a8ce), - U64_C (0x93937693ece53b7f), U64_C (0x222288220daa442f), - U64_C (0x64648d6407e9c863), U64_C (0xf1f1e3f1db12ff2a), - U64_C (0x7373d173bfa2e6cc), U64_C (0x12124812905a2482), - U64_C (0x40401d403a5d807a), U64_C (0x0808200840281048), - U64_C (0xc3c32bc356e89b95), U64_C (0xecec97ec337bc5df), - U64_C (0xdbdb4bdb9690ab4d), U64_C (0xa1a1bea1611f5fc0), - U64_C (0x8d8d0e8d1c830791), U64_C (0x3d3df43df5c97ac8), - U64_C (0x97976697ccf1335b), U64_C (0x0000000000000000), - U64_C (0xcfcf1bcf36d483f9), U64_C (0x2b2bac2b4587566e), - U64_C (0x7676c57697b3ece1), U64_C (0x8282328264b019e6), - U64_C (0xd6d67fd6fea9b128), U64_C (0x1b1b6c1bd87736c3), - U64_C (0xb5b5eeb5c15b7774), U64_C (0xafaf86af112943be), - U64_C (0x6a6ab56a77dfd41d), U64_C (0x50505d50ba0da0ea), - U64_C (0x45450945124c8a57), U64_C (0xf3f3ebf3cb18fb38), - U64_C (0x3030c0309df060ad), U64_C (0xefef9bef2b74c3c4), - U64_C (0x3f3ffc3fe5c37eda), U64_C (0x55554955921caac7), - U64_C (0xa2a2b2a2791059db), U64_C (0xeaea8fea0365c9e9), - U64_C (0x656589650fecca6a), U64_C (0xbabad2bab9686903), - U64_C (0x2f2fbc2f65935e4a), U64_C (0xc0c027c04ee79d8e), - U64_C (0xdede5fdebe81a160), U64_C (0x1c1c701ce06c38fc), - U64_C (0xfdfdd3fdbb2ee746), U64_C (0x4d4d294d52649a1f), - U64_C (0x92927292e4e03976), U64_C (0x7575c9758fbceafa), - U64_C (0x06061806301e0c36), U64_C (0x8a8a128a249809ae), - U64_C (0xb2b2f2b2f940794b), U64_C (0xe6e6bfe66359d185), - U64_C (0x0e0e380e70361c7e), U64_C (0x1f1f7c1ff8633ee7), - U64_C (0x6262956237f7c455), U64_C (0xd4d477d4eea3b53a), - U64_C (0xa8a89aa829324d81), U64_C (0x96966296c4f43152), - U64_C (0xf9f9c3f99b3aef62), U64_C (0xc5c533c566f697a3), - U64_C (0x2525942535b14a10), U64_C (0x59597959f220b2ab), - U64_C (0x84842a8454ae15d0), U64_C (0x7272d572b7a7e4c5), - U64_C (0x3939e439d5dd72ec), U64_C (0x4c4c2d4c5a619816), - U64_C (0x5e5e655eca3bbc94), U64_C (0x7878fd78e785f09f), - U64_C (0x3838e038ddd870e5), U64_C (0x8c8c0a8c14860598), - U64_C (0xd1d163d1c6b2bf17), U64_C (0xa5a5aea5410b57e4), - U64_C (0xe2e2afe2434dd9a1), U64_C (0x616199612ff8c24e), - U64_C (0xb3b3f6b3f1457b42), U64_C (0x2121842115a54234), - U64_C (0x9c9c4a9c94d62508), U64_C (0x1e1e781ef0663cee), - U64_C (0x4343114322528661), U64_C (0xc7c73bc776fc93b1), - U64_C (0xfcfcd7fcb32be54f), U64_C (0x0404100420140824), - U64_C (0x51515951b208a2e3), U64_C (0x99995e99bcc72f25), - U64_C (0x6d6da96d4fc4da22), U64_C (0x0d0d340d68391a65), - U64_C (0xfafacffa8335e979), U64_C (0xdfdf5bdfb684a369), - U64_C (0x7e7ee57ed79bfca9), U64_C (0x242490243db44819), - U64_C (0x3b3bec3bc5d776fe), U64_C (0xabab96ab313d4b9a), - U64_C (0xcece1fce3ed181f0), U64_C (0x1111441188552299), - U64_C (0x8f8f068f0c890383), U64_C (0x4e4e254e4a6b9c04), - U64_C (0xb7b7e6b7d1517366), U64_C (0xebeb8beb0b60cbe0), - U64_C (0x3c3cf03cfdcc78c1), U64_C (0x81813e817cbf1ffd), - U64_C (0x94946a94d4fe3540), U64_C (0xf7f7fbf7eb0cf31c), - U64_C (0xb9b9deb9a1676f18), U64_C (0x13134c13985f268b), - U64_C (0x2c2cb02c7d9c5851), U64_C (0xd3d36bd3d6b8bb05), - U64_C (0xe7e7bbe76b5cd38c), U64_C (0x6e6ea56e57cbdc39), - U64_C (0xc4c437c46ef395aa), U64_C (0x03030c03180f061b), - U64_C (0x565645568a13acdc), U64_C (0x44440d441a49885e), - U64_C (0x7f7fe17fdf9efea0), U64_C (0xa9a99ea921374f88), - U64_C (0x2a2aa82a4d825467), U64_C (0xbbbbd6bbb16d6b0a), - U64_C (0xc1c123c146e29f87), U64_C (0x53535153a202a6f1), - U64_C (0xdcdc57dcae8ba572), U64_C (0x0b0b2c0b58271653), - U64_C (0x9d9d4e9d9cd32701), U64_C (0x6c6cad6c47c1d82b), - U64_C (0x3131c43195f562a4), U64_C (0x7474cd7487b9e8f3), - U64_C (0xf6f6fff6e309f115), U64_C (0x464605460a438c4c), - U64_C (0xacac8aac092645a5), U64_C (0x89891e893c970fb5), - U64_C (0x14145014a04428b4), U64_C (0xe1e1a3e15b42dfba), - U64_C (0x16165816b04e2ca6), U64_C (0x3a3ae83acdd274f7), - U64_C (0x6969b9696fd0d206), U64_C (0x09092409482d1241), - U64_C (0x7070dd70a7ade0d7), U64_C (0xb6b6e2b6d954716f), - U64_C (0xd0d067d0ceb7bd1e), U64_C (0xeded93ed3b7ec7d6), - U64_C (0xcccc17cc2edb85e2), U64_C (0x424215422a578468), - U64_C (0x98985a98b4c22d2c), U64_C (0xa4a4aaa4490e55ed), - U64_C (0x2828a0285d885075), U64_C (0x5c5c6d5cda31b886), - U64_C (0xf8f8c7f8933fed6b), U64_C (0x8686228644a411c2), - }; - -static const u64 C1[256] = - { - U64_C (0xd818186018c07830), U64_C (0x2623238c2305af46), - U64_C (0xb8c6c63fc67ef991), U64_C (0xfbe8e887e8136fcd), - U64_C (0xcb878726874ca113), U64_C (0x11b8b8dab8a9626d), - U64_C (0x0901010401080502), U64_C (0x0d4f4f214f426e9e), - U64_C (0x9b3636d836adee6c), U64_C (0xffa6a6a2a6590451), - U64_C (0x0cd2d26fd2debdb9), U64_C (0x0ef5f5f3f5fb06f7), - U64_C (0x967979f979ef80f2), U64_C (0x306f6fa16f5fcede), - U64_C (0x6d91917e91fcef3f), U64_C (0xf852525552aa07a4), - U64_C (0x4760609d6027fdc0), U64_C (0x35bcbccabc897665), - U64_C (0x379b9b569baccd2b), U64_C (0x8a8e8e028e048c01), - U64_C (0xd2a3a3b6a371155b), U64_C (0x6c0c0c300c603c18), - U64_C (0x847b7bf17bff8af6), U64_C (0x803535d435b5e16a), - U64_C (0xf51d1d741de8693a), U64_C (0xb3e0e0a7e05347dd), - U64_C (0x21d7d77bd7f6acb3), U64_C (0x9cc2c22fc25eed99), - U64_C (0x432e2eb82e6d965c), U64_C (0x294b4b314b627a96), - U64_C (0x5dfefedffea321e1), U64_C (0xd5575741578216ae), - U64_C (0xbd15155415a8412a), U64_C (0xe87777c1779fb6ee), - U64_C (0x923737dc37a5eb6e), U64_C (0x9ee5e5b3e57b56d7), - U64_C (0x139f9f469f8cd923), U64_C (0x23f0f0e7f0d317fd), - U64_C (0x204a4a354a6a7f94), U64_C (0x44dada4fda9e95a9), - U64_C (0xa258587d58fa25b0), U64_C (0xcfc9c903c906ca8f), - U64_C (0x7c2929a429558d52), U64_C (0x5a0a0a280a502214), - U64_C (0x50b1b1feb1e14f7f), U64_C (0xc9a0a0baa0691a5d), - U64_C (0x146b6bb16b7fdad6), U64_C (0xd985852e855cab17), - U64_C (0x3cbdbdcebd817367), U64_C (0x8f5d5d695dd234ba), - U64_C (0x9010104010805020), U64_C (0x07f4f4f7f4f303f5), - U64_C (0xddcbcb0bcb16c08b), U64_C (0xd33e3ef83eedc67c), - U64_C (0x2d0505140528110a), U64_C (0x78676781671fe6ce), - U64_C (0x97e4e4b7e47353d5), U64_C (0x0227279c2725bb4e), - U64_C (0x7341411941325882), U64_C (0xa78b8b168b2c9d0b), - U64_C (0xf6a7a7a6a7510153), U64_C (0xb27d7de97dcf94fa), - U64_C (0x4995956e95dcfb37), U64_C (0x56d8d847d88e9fad), - U64_C (0x70fbfbcbfb8b30eb), U64_C (0xcdeeee9fee2371c1), - U64_C (0xbb7c7ced7cc791f8), U64_C (0x716666856617e3cc), - U64_C (0x7bdddd53dda68ea7), U64_C (0xaf17175c17b84b2e), - U64_C (0x454747014702468e), U64_C (0x1a9e9e429e84dc21), - U64_C (0xd4caca0fca1ec589), U64_C (0x582d2db42d75995a), - U64_C (0x2ebfbfc6bf917963), U64_C (0x3f07071c07381b0e), - U64_C (0xacadad8ead012347), U64_C (0xb05a5a755aea2fb4), - U64_C (0xef838336836cb51b), U64_C (0xb63333cc3385ff66), - U64_C (0x5c636391633ff2c6), U64_C (0x1202020802100a04), - U64_C (0x93aaaa92aa393849), U64_C (0xde7171d971afa8e2), - U64_C (0xc6c8c807c80ecf8d), U64_C (0xd119196419c87d32), - U64_C (0x3b49493949727092), U64_C (0x5fd9d943d9869aaf), - U64_C (0x31f2f2eff2c31df9), U64_C (0xa8e3e3abe34b48db), - U64_C (0xb95b5b715be22ab6), U64_C (0xbc88881a8834920d), - U64_C (0x3e9a9a529aa4c829), U64_C (0x0b262698262dbe4c), - U64_C (0xbf3232c8328dfa64), U64_C (0x59b0b0fab0e94a7d), - U64_C (0xf2e9e983e91b6acf), U64_C (0x770f0f3c0f78331e), - U64_C (0x33d5d573d5e6a6b7), U64_C (0xf480803a8074ba1d), - U64_C (0x27bebec2be997c61), U64_C (0xebcdcd13cd26de87), - U64_C (0x893434d034bde468), U64_C (0x3248483d487a7590), - U64_C (0x54ffffdbffab24e3), U64_C (0x8d7a7af57af78ff4), - U64_C (0x6490907a90f4ea3d), U64_C (0x9d5f5f615fc23ebe), - U64_C (0x3d202080201da040), U64_C (0x0f6868bd6867d5d0), - U64_C (0xca1a1a681ad07234), U64_C (0xb7aeae82ae192c41), - U64_C (0x7db4b4eab4c95e75), U64_C (0xce54544d549a19a8), - U64_C (0x7f93937693ece53b), U64_C (0x2f222288220daa44), - U64_C (0x6364648d6407e9c8), U64_C (0x2af1f1e3f1db12ff), - U64_C (0xcc7373d173bfa2e6), U64_C (0x8212124812905a24), - U64_C (0x7a40401d403a5d80), U64_C (0x4808082008402810), - U64_C (0x95c3c32bc356e89b), U64_C (0xdfecec97ec337bc5), - U64_C (0x4ddbdb4bdb9690ab), U64_C (0xc0a1a1bea1611f5f), - U64_C (0x918d8d0e8d1c8307), U64_C (0xc83d3df43df5c97a), - U64_C (0x5b97976697ccf133), U64_C (0x0000000000000000), - U64_C (0xf9cfcf1bcf36d483), U64_C (0x6e2b2bac2b458756), - U64_C (0xe17676c57697b3ec), U64_C (0xe68282328264b019), - U64_C (0x28d6d67fd6fea9b1), U64_C (0xc31b1b6c1bd87736), - U64_C (0x74b5b5eeb5c15b77), U64_C (0xbeafaf86af112943), - U64_C (0x1d6a6ab56a77dfd4), U64_C (0xea50505d50ba0da0), - U64_C (0x5745450945124c8a), U64_C (0x38f3f3ebf3cb18fb), - U64_C (0xad3030c0309df060), U64_C (0xc4efef9bef2b74c3), - U64_C (0xda3f3ffc3fe5c37e), U64_C (0xc755554955921caa), - U64_C (0xdba2a2b2a2791059), U64_C (0xe9eaea8fea0365c9), - U64_C (0x6a656589650fecca), U64_C (0x03babad2bab96869), - U64_C (0x4a2f2fbc2f65935e), U64_C (0x8ec0c027c04ee79d), - U64_C (0x60dede5fdebe81a1), U64_C (0xfc1c1c701ce06c38), - U64_C (0x46fdfdd3fdbb2ee7), U64_C (0x1f4d4d294d52649a), - U64_C (0x7692927292e4e039), U64_C (0xfa7575c9758fbcea), - U64_C (0x3606061806301e0c), U64_C (0xae8a8a128a249809), - U64_C (0x4bb2b2f2b2f94079), U64_C (0x85e6e6bfe66359d1), - U64_C (0x7e0e0e380e70361c), U64_C (0xe71f1f7c1ff8633e), - U64_C (0x556262956237f7c4), U64_C (0x3ad4d477d4eea3b5), - U64_C (0x81a8a89aa829324d), U64_C (0x5296966296c4f431), - U64_C (0x62f9f9c3f99b3aef), U64_C (0xa3c5c533c566f697), - U64_C (0x102525942535b14a), U64_C (0xab59597959f220b2), - U64_C (0xd084842a8454ae15), U64_C (0xc57272d572b7a7e4), - U64_C (0xec3939e439d5dd72), U64_C (0x164c4c2d4c5a6198), - U64_C (0x945e5e655eca3bbc), U64_C (0x9f7878fd78e785f0), - U64_C (0xe53838e038ddd870), U64_C (0x988c8c0a8c148605), - U64_C (0x17d1d163d1c6b2bf), U64_C (0xe4a5a5aea5410b57), - U64_C (0xa1e2e2afe2434dd9), U64_C (0x4e616199612ff8c2), - U64_C (0x42b3b3f6b3f1457b), U64_C (0x342121842115a542), - U64_C (0x089c9c4a9c94d625), U64_C (0xee1e1e781ef0663c), - U64_C (0x6143431143225286), U64_C (0xb1c7c73bc776fc93), - U64_C (0x4ffcfcd7fcb32be5), U64_C (0x2404041004201408), - U64_C (0xe351515951b208a2), U64_C (0x2599995e99bcc72f), - U64_C (0x226d6da96d4fc4da), U64_C (0x650d0d340d68391a), - U64_C (0x79fafacffa8335e9), U64_C (0x69dfdf5bdfb684a3), - U64_C (0xa97e7ee57ed79bfc), U64_C (0x19242490243db448), - U64_C (0xfe3b3bec3bc5d776), U64_C (0x9aabab96ab313d4b), - U64_C (0xf0cece1fce3ed181), U64_C (0x9911114411885522), - U64_C (0x838f8f068f0c8903), U64_C (0x044e4e254e4a6b9c), - U64_C (0x66b7b7e6b7d15173), U64_C (0xe0ebeb8beb0b60cb), - U64_C (0xc13c3cf03cfdcc78), U64_C (0xfd81813e817cbf1f), - U64_C (0x4094946a94d4fe35), U64_C (0x1cf7f7fbf7eb0cf3), - U64_C (0x18b9b9deb9a1676f), U64_C (0x8b13134c13985f26), - U64_C (0x512c2cb02c7d9c58), U64_C (0x05d3d36bd3d6b8bb), - U64_C (0x8ce7e7bbe76b5cd3), U64_C (0x396e6ea56e57cbdc), - U64_C (0xaac4c437c46ef395), U64_C (0x1b03030c03180f06), - U64_C (0xdc565645568a13ac), U64_C (0x5e44440d441a4988), - U64_C (0xa07f7fe17fdf9efe), U64_C (0x88a9a99ea921374f), - U64_C (0x672a2aa82a4d8254), U64_C (0x0abbbbd6bbb16d6b), - U64_C (0x87c1c123c146e29f), U64_C (0xf153535153a202a6), - U64_C (0x72dcdc57dcae8ba5), U64_C (0x530b0b2c0b582716), - U64_C (0x019d9d4e9d9cd327), U64_C (0x2b6c6cad6c47c1d8), - U64_C (0xa43131c43195f562), U64_C (0xf37474cd7487b9e8), - U64_C (0x15f6f6fff6e309f1), U64_C (0x4c464605460a438c), - U64_C (0xa5acac8aac092645), U64_C (0xb589891e893c970f), - U64_C (0xb414145014a04428), U64_C (0xbae1e1a3e15b42df), - U64_C (0xa616165816b04e2c), U64_C (0xf73a3ae83acdd274), - U64_C (0x066969b9696fd0d2), U64_C (0x4109092409482d12), - U64_C (0xd77070dd70a7ade0), U64_C (0x6fb6b6e2b6d95471), - U64_C (0x1ed0d067d0ceb7bd), U64_C (0xd6eded93ed3b7ec7), - U64_C (0xe2cccc17cc2edb85), U64_C (0x68424215422a5784), - U64_C (0x2c98985a98b4c22d), U64_C (0xeda4a4aaa4490e55), - U64_C (0x752828a0285d8850), U64_C (0x865c5c6d5cda31b8), - U64_C (0x6bf8f8c7f8933fed), U64_C (0xc28686228644a411), - }; - -static const u64 C2[256] = - { - U64_C (0x30d818186018c078), U64_C (0x462623238c2305af), - U64_C (0x91b8c6c63fc67ef9), U64_C (0xcdfbe8e887e8136f), - U64_C (0x13cb878726874ca1), U64_C (0x6d11b8b8dab8a962), - U64_C (0x0209010104010805), U64_C (0x9e0d4f4f214f426e), - U64_C (0x6c9b3636d836adee), U64_C (0x51ffa6a6a2a65904), - U64_C (0xb90cd2d26fd2debd), U64_C (0xf70ef5f5f3f5fb06), - U64_C (0xf2967979f979ef80), U64_C (0xde306f6fa16f5fce), - U64_C (0x3f6d91917e91fcef), U64_C (0xa4f852525552aa07), - U64_C (0xc04760609d6027fd), U64_C (0x6535bcbccabc8976), - U64_C (0x2b379b9b569baccd), U64_C (0x018a8e8e028e048c), - U64_C (0x5bd2a3a3b6a37115), U64_C (0x186c0c0c300c603c), - U64_C (0xf6847b7bf17bff8a), U64_C (0x6a803535d435b5e1), - U64_C (0x3af51d1d741de869), U64_C (0xddb3e0e0a7e05347), - U64_C (0xb321d7d77bd7f6ac), U64_C (0x999cc2c22fc25eed), - U64_C (0x5c432e2eb82e6d96), U64_C (0x96294b4b314b627a), - U64_C (0xe15dfefedffea321), U64_C (0xaed5575741578216), - U64_C (0x2abd15155415a841), U64_C (0xeee87777c1779fb6), - U64_C (0x6e923737dc37a5eb), U64_C (0xd79ee5e5b3e57b56), - U64_C (0x23139f9f469f8cd9), U64_C (0xfd23f0f0e7f0d317), - U64_C (0x94204a4a354a6a7f), U64_C (0xa944dada4fda9e95), - U64_C (0xb0a258587d58fa25), U64_C (0x8fcfc9c903c906ca), - U64_C (0x527c2929a429558d), U64_C (0x145a0a0a280a5022), - U64_C (0x7f50b1b1feb1e14f), U64_C (0x5dc9a0a0baa0691a), - U64_C (0xd6146b6bb16b7fda), U64_C (0x17d985852e855cab), - U64_C (0x673cbdbdcebd8173), U64_C (0xba8f5d5d695dd234), - U64_C (0x2090101040108050), U64_C (0xf507f4f4f7f4f303), - U64_C (0x8bddcbcb0bcb16c0), U64_C (0x7cd33e3ef83eedc6), - U64_C (0x0a2d050514052811), U64_C (0xce78676781671fe6), - U64_C (0xd597e4e4b7e47353), U64_C (0x4e0227279c2725bb), - U64_C (0x8273414119413258), U64_C (0x0ba78b8b168b2c9d), - U64_C (0x53f6a7a7a6a75101), U64_C (0xfab27d7de97dcf94), - U64_C (0x374995956e95dcfb), U64_C (0xad56d8d847d88e9f), - U64_C (0xeb70fbfbcbfb8b30), U64_C (0xc1cdeeee9fee2371), - U64_C (0xf8bb7c7ced7cc791), U64_C (0xcc716666856617e3), - U64_C (0xa77bdddd53dda68e), U64_C (0x2eaf17175c17b84b), - U64_C (0x8e45474701470246), U64_C (0x211a9e9e429e84dc), - U64_C (0x89d4caca0fca1ec5), U64_C (0x5a582d2db42d7599), - U64_C (0x632ebfbfc6bf9179), U64_C (0x0e3f07071c07381b), - U64_C (0x47acadad8ead0123), U64_C (0xb4b05a5a755aea2f), - U64_C (0x1bef838336836cb5), U64_C (0x66b63333cc3385ff), - U64_C (0xc65c636391633ff2), U64_C (0x041202020802100a), - U64_C (0x4993aaaa92aa3938), U64_C (0xe2de7171d971afa8), - U64_C (0x8dc6c8c807c80ecf), U64_C (0x32d119196419c87d), - U64_C (0x923b494939497270), U64_C (0xaf5fd9d943d9869a), - U64_C (0xf931f2f2eff2c31d), U64_C (0xdba8e3e3abe34b48), - U64_C (0xb6b95b5b715be22a), U64_C (0x0dbc88881a883492), - U64_C (0x293e9a9a529aa4c8), U64_C (0x4c0b262698262dbe), - U64_C (0x64bf3232c8328dfa), U64_C (0x7d59b0b0fab0e94a), - U64_C (0xcff2e9e983e91b6a), U64_C (0x1e770f0f3c0f7833), - U64_C (0xb733d5d573d5e6a6), U64_C (0x1df480803a8074ba), - U64_C (0x6127bebec2be997c), U64_C (0x87ebcdcd13cd26de), - U64_C (0x68893434d034bde4), U64_C (0x903248483d487a75), - U64_C (0xe354ffffdbffab24), U64_C (0xf48d7a7af57af78f), - U64_C (0x3d6490907a90f4ea), U64_C (0xbe9d5f5f615fc23e), - U64_C (0x403d202080201da0), U64_C (0xd00f6868bd6867d5), - U64_C (0x34ca1a1a681ad072), U64_C (0x41b7aeae82ae192c), - U64_C (0x757db4b4eab4c95e), U64_C (0xa8ce54544d549a19), - U64_C (0x3b7f93937693ece5), U64_C (0x442f222288220daa), - U64_C (0xc86364648d6407e9), U64_C (0xff2af1f1e3f1db12), - U64_C (0xe6cc7373d173bfa2), U64_C (0x248212124812905a), - U64_C (0x807a40401d403a5d), U64_C (0x1048080820084028), - U64_C (0x9b95c3c32bc356e8), U64_C (0xc5dfecec97ec337b), - U64_C (0xab4ddbdb4bdb9690), U64_C (0x5fc0a1a1bea1611f), - U64_C (0x07918d8d0e8d1c83), U64_C (0x7ac83d3df43df5c9), - U64_C (0x335b97976697ccf1), U64_C (0x0000000000000000), - U64_C (0x83f9cfcf1bcf36d4), U64_C (0x566e2b2bac2b4587), - U64_C (0xece17676c57697b3), U64_C (0x19e68282328264b0), - U64_C (0xb128d6d67fd6fea9), U64_C (0x36c31b1b6c1bd877), - U64_C (0x7774b5b5eeb5c15b), U64_C (0x43beafaf86af1129), - U64_C (0xd41d6a6ab56a77df), U64_C (0xa0ea50505d50ba0d), - U64_C (0x8a5745450945124c), U64_C (0xfb38f3f3ebf3cb18), - U64_C (0x60ad3030c0309df0), U64_C (0xc3c4efef9bef2b74), - U64_C (0x7eda3f3ffc3fe5c3), U64_C (0xaac755554955921c), - U64_C (0x59dba2a2b2a27910), U64_C (0xc9e9eaea8fea0365), - U64_C (0xca6a656589650fec), U64_C (0x6903babad2bab968), - U64_C (0x5e4a2f2fbc2f6593), U64_C (0x9d8ec0c027c04ee7), - U64_C (0xa160dede5fdebe81), U64_C (0x38fc1c1c701ce06c), - U64_C (0xe746fdfdd3fdbb2e), U64_C (0x9a1f4d4d294d5264), - U64_C (0x397692927292e4e0), U64_C (0xeafa7575c9758fbc), - U64_C (0x0c3606061806301e), U64_C (0x09ae8a8a128a2498), - U64_C (0x794bb2b2f2b2f940), U64_C (0xd185e6e6bfe66359), - U64_C (0x1c7e0e0e380e7036), U64_C (0x3ee71f1f7c1ff863), - U64_C (0xc4556262956237f7), U64_C (0xb53ad4d477d4eea3), - U64_C (0x4d81a8a89aa82932), U64_C (0x315296966296c4f4), - U64_C (0xef62f9f9c3f99b3a), U64_C (0x97a3c5c533c566f6), - U64_C (0x4a102525942535b1), U64_C (0xb2ab59597959f220), - U64_C (0x15d084842a8454ae), U64_C (0xe4c57272d572b7a7), - U64_C (0x72ec3939e439d5dd), U64_C (0x98164c4c2d4c5a61), - U64_C (0xbc945e5e655eca3b), U64_C (0xf09f7878fd78e785), - U64_C (0x70e53838e038ddd8), U64_C (0x05988c8c0a8c1486), - U64_C (0xbf17d1d163d1c6b2), U64_C (0x57e4a5a5aea5410b), - U64_C (0xd9a1e2e2afe2434d), U64_C (0xc24e616199612ff8), - U64_C (0x7b42b3b3f6b3f145), U64_C (0x42342121842115a5), - U64_C (0x25089c9c4a9c94d6), U64_C (0x3cee1e1e781ef066), - U64_C (0x8661434311432252), U64_C (0x93b1c7c73bc776fc), - U64_C (0xe54ffcfcd7fcb32b), U64_C (0x0824040410042014), - U64_C (0xa2e351515951b208), U64_C (0x2f2599995e99bcc7), - U64_C (0xda226d6da96d4fc4), U64_C (0x1a650d0d340d6839), - U64_C (0xe979fafacffa8335), U64_C (0xa369dfdf5bdfb684), - U64_C (0xfca97e7ee57ed79b), U64_C (0x4819242490243db4), - U64_C (0x76fe3b3bec3bc5d7), U64_C (0x4b9aabab96ab313d), - U64_C (0x81f0cece1fce3ed1), U64_C (0x2299111144118855), - U64_C (0x03838f8f068f0c89), U64_C (0x9c044e4e254e4a6b), - U64_C (0x7366b7b7e6b7d151), U64_C (0xcbe0ebeb8beb0b60), - U64_C (0x78c13c3cf03cfdcc), U64_C (0x1ffd81813e817cbf), - U64_C (0x354094946a94d4fe), U64_C (0xf31cf7f7fbf7eb0c), - U64_C (0x6f18b9b9deb9a167), U64_C (0x268b13134c13985f), - U64_C (0x58512c2cb02c7d9c), U64_C (0xbb05d3d36bd3d6b8), - U64_C (0xd38ce7e7bbe76b5c), U64_C (0xdc396e6ea56e57cb), - U64_C (0x95aac4c437c46ef3), U64_C (0x061b03030c03180f), - U64_C (0xacdc565645568a13), U64_C (0x885e44440d441a49), - U64_C (0xfea07f7fe17fdf9e), U64_C (0x4f88a9a99ea92137), - U64_C (0x54672a2aa82a4d82), U64_C (0x6b0abbbbd6bbb16d), - U64_C (0x9f87c1c123c146e2), U64_C (0xa6f153535153a202), - U64_C (0xa572dcdc57dcae8b), U64_C (0x16530b0b2c0b5827), - U64_C (0x27019d9d4e9d9cd3), U64_C (0xd82b6c6cad6c47c1), - U64_C (0x62a43131c43195f5), U64_C (0xe8f37474cd7487b9), - U64_C (0xf115f6f6fff6e309), U64_C (0x8c4c464605460a43), - U64_C (0x45a5acac8aac0926), U64_C (0x0fb589891e893c97), - U64_C (0x28b414145014a044), U64_C (0xdfbae1e1a3e15b42), - U64_C (0x2ca616165816b04e), U64_C (0x74f73a3ae83acdd2), - U64_C (0xd2066969b9696fd0), U64_C (0x124109092409482d), - U64_C (0xe0d77070dd70a7ad), U64_C (0x716fb6b6e2b6d954), - U64_C (0xbd1ed0d067d0ceb7), U64_C (0xc7d6eded93ed3b7e), - U64_C (0x85e2cccc17cc2edb), U64_C (0x8468424215422a57), - U64_C (0x2d2c98985a98b4c2), U64_C (0x55eda4a4aaa4490e), - U64_C (0x50752828a0285d88), U64_C (0xb8865c5c6d5cda31), - U64_C (0xed6bf8f8c7f8933f), U64_C (0x11c28686228644a4), - }; - -static const u64 C3[256] = - { - U64_C (0x7830d818186018c0), U64_C (0xaf462623238c2305), - U64_C (0xf991b8c6c63fc67e), U64_C (0x6fcdfbe8e887e813), - U64_C (0xa113cb878726874c), U64_C (0x626d11b8b8dab8a9), - U64_C (0x0502090101040108), U64_C (0x6e9e0d4f4f214f42), - U64_C (0xee6c9b3636d836ad), U64_C (0x0451ffa6a6a2a659), - U64_C (0xbdb90cd2d26fd2de), U64_C (0x06f70ef5f5f3f5fb), - U64_C (0x80f2967979f979ef), U64_C (0xcede306f6fa16f5f), - U64_C (0xef3f6d91917e91fc), U64_C (0x07a4f852525552aa), - U64_C (0xfdc04760609d6027), U64_C (0x766535bcbccabc89), - U64_C (0xcd2b379b9b569bac), U64_C (0x8c018a8e8e028e04), - U64_C (0x155bd2a3a3b6a371), U64_C (0x3c186c0c0c300c60), - U64_C (0x8af6847b7bf17bff), U64_C (0xe16a803535d435b5), - U64_C (0x693af51d1d741de8), U64_C (0x47ddb3e0e0a7e053), - U64_C (0xacb321d7d77bd7f6), U64_C (0xed999cc2c22fc25e), - U64_C (0x965c432e2eb82e6d), U64_C (0x7a96294b4b314b62), - U64_C (0x21e15dfefedffea3), U64_C (0x16aed55757415782), - U64_C (0x412abd15155415a8), U64_C (0xb6eee87777c1779f), - U64_C (0xeb6e923737dc37a5), U64_C (0x56d79ee5e5b3e57b), - U64_C (0xd923139f9f469f8c), U64_C (0x17fd23f0f0e7f0d3), - U64_C (0x7f94204a4a354a6a), U64_C (0x95a944dada4fda9e), - U64_C (0x25b0a258587d58fa), U64_C (0xca8fcfc9c903c906), - U64_C (0x8d527c2929a42955), U64_C (0x22145a0a0a280a50), - U64_C (0x4f7f50b1b1feb1e1), U64_C (0x1a5dc9a0a0baa069), - U64_C (0xdad6146b6bb16b7f), U64_C (0xab17d985852e855c), - U64_C (0x73673cbdbdcebd81), U64_C (0x34ba8f5d5d695dd2), - U64_C (0x5020901010401080), U64_C (0x03f507f4f4f7f4f3), - U64_C (0xc08bddcbcb0bcb16), U64_C (0xc67cd33e3ef83eed), - U64_C (0x110a2d0505140528), U64_C (0xe6ce78676781671f), - U64_C (0x53d597e4e4b7e473), U64_C (0xbb4e0227279c2725), - U64_C (0x5882734141194132), U64_C (0x9d0ba78b8b168b2c), - U64_C (0x0153f6a7a7a6a751), U64_C (0x94fab27d7de97dcf), - U64_C (0xfb374995956e95dc), U64_C (0x9fad56d8d847d88e), - U64_C (0x30eb70fbfbcbfb8b), U64_C (0x71c1cdeeee9fee23), - U64_C (0x91f8bb7c7ced7cc7), U64_C (0xe3cc716666856617), - U64_C (0x8ea77bdddd53dda6), U64_C (0x4b2eaf17175c17b8), - U64_C (0x468e454747014702), U64_C (0xdc211a9e9e429e84), - U64_C (0xc589d4caca0fca1e), U64_C (0x995a582d2db42d75), - U64_C (0x79632ebfbfc6bf91), U64_C (0x1b0e3f07071c0738), - U64_C (0x2347acadad8ead01), U64_C (0x2fb4b05a5a755aea), - U64_C (0xb51bef838336836c), U64_C (0xff66b63333cc3385), - U64_C (0xf2c65c636391633f), U64_C (0x0a04120202080210), - U64_C (0x384993aaaa92aa39), U64_C (0xa8e2de7171d971af), - U64_C (0xcf8dc6c8c807c80e), U64_C (0x7d32d119196419c8), - U64_C (0x70923b4949394972), U64_C (0x9aaf5fd9d943d986), - U64_C (0x1df931f2f2eff2c3), U64_C (0x48dba8e3e3abe34b), - U64_C (0x2ab6b95b5b715be2), U64_C (0x920dbc88881a8834), - U64_C (0xc8293e9a9a529aa4), U64_C (0xbe4c0b262698262d), - U64_C (0xfa64bf3232c8328d), U64_C (0x4a7d59b0b0fab0e9), - U64_C (0x6acff2e9e983e91b), U64_C (0x331e770f0f3c0f78), - U64_C (0xa6b733d5d573d5e6), U64_C (0xba1df480803a8074), - U64_C (0x7c6127bebec2be99), U64_C (0xde87ebcdcd13cd26), - U64_C (0xe468893434d034bd), U64_C (0x75903248483d487a), - U64_C (0x24e354ffffdbffab), U64_C (0x8ff48d7a7af57af7), - U64_C (0xea3d6490907a90f4), U64_C (0x3ebe9d5f5f615fc2), - U64_C (0xa0403d202080201d), U64_C (0xd5d00f6868bd6867), - U64_C (0x7234ca1a1a681ad0), U64_C (0x2c41b7aeae82ae19), - U64_C (0x5e757db4b4eab4c9), U64_C (0x19a8ce54544d549a), - U64_C (0xe53b7f93937693ec), U64_C (0xaa442f222288220d), - U64_C (0xe9c86364648d6407), U64_C (0x12ff2af1f1e3f1db), - U64_C (0xa2e6cc7373d173bf), U64_C (0x5a24821212481290), - U64_C (0x5d807a40401d403a), U64_C (0x2810480808200840), - U64_C (0xe89b95c3c32bc356), U64_C (0x7bc5dfecec97ec33), - U64_C (0x90ab4ddbdb4bdb96), U64_C (0x1f5fc0a1a1bea161), - U64_C (0x8307918d8d0e8d1c), U64_C (0xc97ac83d3df43df5), - U64_C (0xf1335b97976697cc), U64_C (0x0000000000000000), - U64_C (0xd483f9cfcf1bcf36), U64_C (0x87566e2b2bac2b45), - U64_C (0xb3ece17676c57697), U64_C (0xb019e68282328264), - U64_C (0xa9b128d6d67fd6fe), U64_C (0x7736c31b1b6c1bd8), - U64_C (0x5b7774b5b5eeb5c1), U64_C (0x2943beafaf86af11), - U64_C (0xdfd41d6a6ab56a77), U64_C (0x0da0ea50505d50ba), - U64_C (0x4c8a574545094512), U64_C (0x18fb38f3f3ebf3cb), - U64_C (0xf060ad3030c0309d), U64_C (0x74c3c4efef9bef2b), - U64_C (0xc37eda3f3ffc3fe5), U64_C (0x1caac75555495592), - U64_C (0x1059dba2a2b2a279), U64_C (0x65c9e9eaea8fea03), - U64_C (0xecca6a656589650f), U64_C (0x686903babad2bab9), - U64_C (0x935e4a2f2fbc2f65), U64_C (0xe79d8ec0c027c04e), - U64_C (0x81a160dede5fdebe), U64_C (0x6c38fc1c1c701ce0), - U64_C (0x2ee746fdfdd3fdbb), U64_C (0x649a1f4d4d294d52), - U64_C (0xe0397692927292e4), U64_C (0xbceafa7575c9758f), - U64_C (0x1e0c360606180630), U64_C (0x9809ae8a8a128a24), - U64_C (0x40794bb2b2f2b2f9), U64_C (0x59d185e6e6bfe663), - U64_C (0x361c7e0e0e380e70), U64_C (0x633ee71f1f7c1ff8), - U64_C (0xf7c4556262956237), U64_C (0xa3b53ad4d477d4ee), - U64_C (0x324d81a8a89aa829), U64_C (0xf4315296966296c4), - U64_C (0x3aef62f9f9c3f99b), U64_C (0xf697a3c5c533c566), - U64_C (0xb14a102525942535), U64_C (0x20b2ab59597959f2), - U64_C (0xae15d084842a8454), U64_C (0xa7e4c57272d572b7), - U64_C (0xdd72ec3939e439d5), U64_C (0x6198164c4c2d4c5a), - U64_C (0x3bbc945e5e655eca), U64_C (0x85f09f7878fd78e7), - U64_C (0xd870e53838e038dd), U64_C (0x8605988c8c0a8c14), - U64_C (0xb2bf17d1d163d1c6), U64_C (0x0b57e4a5a5aea541), - U64_C (0x4dd9a1e2e2afe243), U64_C (0xf8c24e616199612f), - U64_C (0x457b42b3b3f6b3f1), U64_C (0xa542342121842115), - U64_C (0xd625089c9c4a9c94), U64_C (0x663cee1e1e781ef0), - U64_C (0x5286614343114322), U64_C (0xfc93b1c7c73bc776), - U64_C (0x2be54ffcfcd7fcb3), U64_C (0x1408240404100420), - U64_C (0x08a2e351515951b2), U64_C (0xc72f2599995e99bc), - U64_C (0xc4da226d6da96d4f), U64_C (0x391a650d0d340d68), - U64_C (0x35e979fafacffa83), U64_C (0x84a369dfdf5bdfb6), - U64_C (0x9bfca97e7ee57ed7), U64_C (0xb44819242490243d), - U64_C (0xd776fe3b3bec3bc5), U64_C (0x3d4b9aabab96ab31), - U64_C (0xd181f0cece1fce3e), U64_C (0x5522991111441188), - U64_C (0x8903838f8f068f0c), U64_C (0x6b9c044e4e254e4a), - U64_C (0x517366b7b7e6b7d1), U64_C (0x60cbe0ebeb8beb0b), - U64_C (0xcc78c13c3cf03cfd), U64_C (0xbf1ffd81813e817c), - U64_C (0xfe354094946a94d4), U64_C (0x0cf31cf7f7fbf7eb), - U64_C (0x676f18b9b9deb9a1), U64_C (0x5f268b13134c1398), - U64_C (0x9c58512c2cb02c7d), U64_C (0xb8bb05d3d36bd3d6), - U64_C (0x5cd38ce7e7bbe76b), U64_C (0xcbdc396e6ea56e57), - U64_C (0xf395aac4c437c46e), U64_C (0x0f061b03030c0318), - U64_C (0x13acdc565645568a), U64_C (0x49885e44440d441a), - U64_C (0x9efea07f7fe17fdf), U64_C (0x374f88a9a99ea921), - U64_C (0x8254672a2aa82a4d), U64_C (0x6d6b0abbbbd6bbb1), - U64_C (0xe29f87c1c123c146), U64_C (0x02a6f153535153a2), - U64_C (0x8ba572dcdc57dcae), U64_C (0x2716530b0b2c0b58), - U64_C (0xd327019d9d4e9d9c), U64_C (0xc1d82b6c6cad6c47), - U64_C (0xf562a43131c43195), U64_C (0xb9e8f37474cd7487), - U64_C (0x09f115f6f6fff6e3), U64_C (0x438c4c464605460a), - U64_C (0x2645a5acac8aac09), U64_C (0x970fb589891e893c), - U64_C (0x4428b414145014a0), U64_C (0x42dfbae1e1a3e15b), - U64_C (0x4e2ca616165816b0), U64_C (0xd274f73a3ae83acd), - U64_C (0xd0d2066969b9696f), U64_C (0x2d12410909240948), - U64_C (0xade0d77070dd70a7), U64_C (0x54716fb6b6e2b6d9), - U64_C (0xb7bd1ed0d067d0ce), U64_C (0x7ec7d6eded93ed3b), - U64_C (0xdb85e2cccc17cc2e), U64_C (0x578468424215422a), - U64_C (0xc22d2c98985a98b4), U64_C (0x0e55eda4a4aaa449), - U64_C (0x8850752828a0285d), U64_C (0x31b8865c5c6d5cda), - U64_C (0x3fed6bf8f8c7f893), U64_C (0xa411c28686228644), - }; - -static const u64 C4[256] = - { - U64_C (0xc07830d818186018), U64_C (0x05af462623238c23), - U64_C (0x7ef991b8c6c63fc6), U64_C (0x136fcdfbe8e887e8), - U64_C (0x4ca113cb87872687), U64_C (0xa9626d11b8b8dab8), - U64_C (0x0805020901010401), U64_C (0x426e9e0d4f4f214f), - U64_C (0xadee6c9b3636d836), U64_C (0x590451ffa6a6a2a6), - U64_C (0xdebdb90cd2d26fd2), U64_C (0xfb06f70ef5f5f3f5), - U64_C (0xef80f2967979f979), U64_C (0x5fcede306f6fa16f), - U64_C (0xfcef3f6d91917e91), U64_C (0xaa07a4f852525552), - U64_C (0x27fdc04760609d60), U64_C (0x89766535bcbccabc), - U64_C (0xaccd2b379b9b569b), U64_C (0x048c018a8e8e028e), - U64_C (0x71155bd2a3a3b6a3), U64_C (0x603c186c0c0c300c), - U64_C (0xff8af6847b7bf17b), U64_C (0xb5e16a803535d435), - U64_C (0xe8693af51d1d741d), U64_C (0x5347ddb3e0e0a7e0), - U64_C (0xf6acb321d7d77bd7), U64_C (0x5eed999cc2c22fc2), - U64_C (0x6d965c432e2eb82e), U64_C (0x627a96294b4b314b), - U64_C (0xa321e15dfefedffe), U64_C (0x8216aed557574157), - U64_C (0xa8412abd15155415), U64_C (0x9fb6eee87777c177), - U64_C (0xa5eb6e923737dc37), U64_C (0x7b56d79ee5e5b3e5), - U64_C (0x8cd923139f9f469f), U64_C (0xd317fd23f0f0e7f0), - U64_C (0x6a7f94204a4a354a), U64_C (0x9e95a944dada4fda), - U64_C (0xfa25b0a258587d58), U64_C (0x06ca8fcfc9c903c9), - U64_C (0x558d527c2929a429), U64_C (0x5022145a0a0a280a), - U64_C (0xe14f7f50b1b1feb1), U64_C (0x691a5dc9a0a0baa0), - U64_C (0x7fdad6146b6bb16b), U64_C (0x5cab17d985852e85), - U64_C (0x8173673cbdbdcebd), U64_C (0xd234ba8f5d5d695d), - U64_C (0x8050209010104010), U64_C (0xf303f507f4f4f7f4), - U64_C (0x16c08bddcbcb0bcb), U64_C (0xedc67cd33e3ef83e), - U64_C (0x28110a2d05051405), U64_C (0x1fe6ce7867678167), - U64_C (0x7353d597e4e4b7e4), U64_C (0x25bb4e0227279c27), - U64_C (0x3258827341411941), U64_C (0x2c9d0ba78b8b168b), - U64_C (0x510153f6a7a7a6a7), U64_C (0xcf94fab27d7de97d), - U64_C (0xdcfb374995956e95), U64_C (0x8e9fad56d8d847d8), - U64_C (0x8b30eb70fbfbcbfb), U64_C (0x2371c1cdeeee9fee), - U64_C (0xc791f8bb7c7ced7c), U64_C (0x17e3cc7166668566), - U64_C (0xa68ea77bdddd53dd), U64_C (0xb84b2eaf17175c17), - U64_C (0x02468e4547470147), U64_C (0x84dc211a9e9e429e), - U64_C (0x1ec589d4caca0fca), U64_C (0x75995a582d2db42d), - U64_C (0x9179632ebfbfc6bf), U64_C (0x381b0e3f07071c07), - U64_C (0x012347acadad8ead), U64_C (0xea2fb4b05a5a755a), - U64_C (0x6cb51bef83833683), U64_C (0x85ff66b63333cc33), - U64_C (0x3ff2c65c63639163), U64_C (0x100a041202020802), - U64_C (0x39384993aaaa92aa), U64_C (0xafa8e2de7171d971), - U64_C (0x0ecf8dc6c8c807c8), U64_C (0xc87d32d119196419), - U64_C (0x7270923b49493949), U64_C (0x869aaf5fd9d943d9), - U64_C (0xc31df931f2f2eff2), U64_C (0x4b48dba8e3e3abe3), - U64_C (0xe22ab6b95b5b715b), U64_C (0x34920dbc88881a88), - U64_C (0xa4c8293e9a9a529a), U64_C (0x2dbe4c0b26269826), - U64_C (0x8dfa64bf3232c832), U64_C (0xe94a7d59b0b0fab0), - U64_C (0x1b6acff2e9e983e9), U64_C (0x78331e770f0f3c0f), - U64_C (0xe6a6b733d5d573d5), U64_C (0x74ba1df480803a80), - U64_C (0x997c6127bebec2be), U64_C (0x26de87ebcdcd13cd), - U64_C (0xbde468893434d034), U64_C (0x7a75903248483d48), - U64_C (0xab24e354ffffdbff), U64_C (0xf78ff48d7a7af57a), - U64_C (0xf4ea3d6490907a90), U64_C (0xc23ebe9d5f5f615f), - U64_C (0x1da0403d20208020), U64_C (0x67d5d00f6868bd68), - U64_C (0xd07234ca1a1a681a), U64_C (0x192c41b7aeae82ae), - U64_C (0xc95e757db4b4eab4), U64_C (0x9a19a8ce54544d54), - U64_C (0xece53b7f93937693), U64_C (0x0daa442f22228822), - U64_C (0x07e9c86364648d64), U64_C (0xdb12ff2af1f1e3f1), - U64_C (0xbfa2e6cc7373d173), U64_C (0x905a248212124812), - U64_C (0x3a5d807a40401d40), U64_C (0x4028104808082008), - U64_C (0x56e89b95c3c32bc3), U64_C (0x337bc5dfecec97ec), - U64_C (0x9690ab4ddbdb4bdb), U64_C (0x611f5fc0a1a1bea1), - U64_C (0x1c8307918d8d0e8d), U64_C (0xf5c97ac83d3df43d), - U64_C (0xccf1335b97976697), U64_C (0x0000000000000000), - U64_C (0x36d483f9cfcf1bcf), U64_C (0x4587566e2b2bac2b), - U64_C (0x97b3ece17676c576), U64_C (0x64b019e682823282), - U64_C (0xfea9b128d6d67fd6), U64_C (0xd87736c31b1b6c1b), - U64_C (0xc15b7774b5b5eeb5), U64_C (0x112943beafaf86af), - U64_C (0x77dfd41d6a6ab56a), U64_C (0xba0da0ea50505d50), - U64_C (0x124c8a5745450945), U64_C (0xcb18fb38f3f3ebf3), - U64_C (0x9df060ad3030c030), U64_C (0x2b74c3c4efef9bef), - U64_C (0xe5c37eda3f3ffc3f), U64_C (0x921caac755554955), - U64_C (0x791059dba2a2b2a2), U64_C (0x0365c9e9eaea8fea), - U64_C (0x0fecca6a65658965), U64_C (0xb9686903babad2ba), - U64_C (0x65935e4a2f2fbc2f), U64_C (0x4ee79d8ec0c027c0), - U64_C (0xbe81a160dede5fde), U64_C (0xe06c38fc1c1c701c), - U64_C (0xbb2ee746fdfdd3fd), U64_C (0x52649a1f4d4d294d), - U64_C (0xe4e0397692927292), U64_C (0x8fbceafa7575c975), - U64_C (0x301e0c3606061806), U64_C (0x249809ae8a8a128a), - U64_C (0xf940794bb2b2f2b2), U64_C (0x6359d185e6e6bfe6), - U64_C (0x70361c7e0e0e380e), U64_C (0xf8633ee71f1f7c1f), - U64_C (0x37f7c45562629562), U64_C (0xeea3b53ad4d477d4), - U64_C (0x29324d81a8a89aa8), U64_C (0xc4f4315296966296), - U64_C (0x9b3aef62f9f9c3f9), U64_C (0x66f697a3c5c533c5), - U64_C (0x35b14a1025259425), U64_C (0xf220b2ab59597959), - U64_C (0x54ae15d084842a84), U64_C (0xb7a7e4c57272d572), - U64_C (0xd5dd72ec3939e439), U64_C (0x5a6198164c4c2d4c), - U64_C (0xca3bbc945e5e655e), U64_C (0xe785f09f7878fd78), - U64_C (0xddd870e53838e038), U64_C (0x148605988c8c0a8c), - U64_C (0xc6b2bf17d1d163d1), U64_C (0x410b57e4a5a5aea5), - U64_C (0x434dd9a1e2e2afe2), U64_C (0x2ff8c24e61619961), - U64_C (0xf1457b42b3b3f6b3), U64_C (0x15a5423421218421), - U64_C (0x94d625089c9c4a9c), U64_C (0xf0663cee1e1e781e), - U64_C (0x2252866143431143), U64_C (0x76fc93b1c7c73bc7), - U64_C (0xb32be54ffcfcd7fc), U64_C (0x2014082404041004), - U64_C (0xb208a2e351515951), U64_C (0xbcc72f2599995e99), - U64_C (0x4fc4da226d6da96d), U64_C (0x68391a650d0d340d), - U64_C (0x8335e979fafacffa), U64_C (0xb684a369dfdf5bdf), - U64_C (0xd79bfca97e7ee57e), U64_C (0x3db4481924249024), - U64_C (0xc5d776fe3b3bec3b), U64_C (0x313d4b9aabab96ab), - U64_C (0x3ed181f0cece1fce), U64_C (0x8855229911114411), - U64_C (0x0c8903838f8f068f), U64_C (0x4a6b9c044e4e254e), - U64_C (0xd1517366b7b7e6b7), U64_C (0x0b60cbe0ebeb8beb), - U64_C (0xfdcc78c13c3cf03c), U64_C (0x7cbf1ffd81813e81), - U64_C (0xd4fe354094946a94), U64_C (0xeb0cf31cf7f7fbf7), - U64_C (0xa1676f18b9b9deb9), U64_C (0x985f268b13134c13), - U64_C (0x7d9c58512c2cb02c), U64_C (0xd6b8bb05d3d36bd3), - U64_C (0x6b5cd38ce7e7bbe7), U64_C (0x57cbdc396e6ea56e), - U64_C (0x6ef395aac4c437c4), U64_C (0x180f061b03030c03), - U64_C (0x8a13acdc56564556), U64_C (0x1a49885e44440d44), - U64_C (0xdf9efea07f7fe17f), U64_C (0x21374f88a9a99ea9), - U64_C (0x4d8254672a2aa82a), U64_C (0xb16d6b0abbbbd6bb), - U64_C (0x46e29f87c1c123c1), U64_C (0xa202a6f153535153), - U64_C (0xae8ba572dcdc57dc), U64_C (0x582716530b0b2c0b), - U64_C (0x9cd327019d9d4e9d), U64_C (0x47c1d82b6c6cad6c), - U64_C (0x95f562a43131c431), U64_C (0x87b9e8f37474cd74), - U64_C (0xe309f115f6f6fff6), U64_C (0x0a438c4c46460546), - U64_C (0x092645a5acac8aac), U64_C (0x3c970fb589891e89), - U64_C (0xa04428b414145014), U64_C (0x5b42dfbae1e1a3e1), - U64_C (0xb04e2ca616165816), U64_C (0xcdd274f73a3ae83a), - U64_C (0x6fd0d2066969b969), U64_C (0x482d124109092409), - U64_C (0xa7ade0d77070dd70), U64_C (0xd954716fb6b6e2b6), - U64_C (0xceb7bd1ed0d067d0), U64_C (0x3b7ec7d6eded93ed), - U64_C (0x2edb85e2cccc17cc), U64_C (0x2a57846842421542), - U64_C (0xb4c22d2c98985a98), U64_C (0x490e55eda4a4aaa4), - U64_C (0x5d8850752828a028), U64_C (0xda31b8865c5c6d5c), - U64_C (0x933fed6bf8f8c7f8), U64_C (0x44a411c286862286), - }; - -static const u64 C5[256] = - { - U64_C (0x18c07830d8181860), U64_C (0x2305af462623238c), - U64_C (0xc67ef991b8c6c63f), U64_C (0xe8136fcdfbe8e887), - U64_C (0x874ca113cb878726), U64_C (0xb8a9626d11b8b8da), - U64_C (0x0108050209010104), U64_C (0x4f426e9e0d4f4f21), - U64_C (0x36adee6c9b3636d8), U64_C (0xa6590451ffa6a6a2), - U64_C (0xd2debdb90cd2d26f), U64_C (0xf5fb06f70ef5f5f3), - U64_C (0x79ef80f2967979f9), U64_C (0x6f5fcede306f6fa1), - U64_C (0x91fcef3f6d91917e), U64_C (0x52aa07a4f8525255), - U64_C (0x6027fdc04760609d), U64_C (0xbc89766535bcbcca), - U64_C (0x9baccd2b379b9b56), U64_C (0x8e048c018a8e8e02), - U64_C (0xa371155bd2a3a3b6), U64_C (0x0c603c186c0c0c30), - U64_C (0x7bff8af6847b7bf1), U64_C (0x35b5e16a803535d4), - U64_C (0x1de8693af51d1d74), U64_C (0xe05347ddb3e0e0a7), - U64_C (0xd7f6acb321d7d77b), U64_C (0xc25eed999cc2c22f), - U64_C (0x2e6d965c432e2eb8), U64_C (0x4b627a96294b4b31), - U64_C (0xfea321e15dfefedf), U64_C (0x578216aed5575741), - U64_C (0x15a8412abd151554), U64_C (0x779fb6eee87777c1), - U64_C (0x37a5eb6e923737dc), U64_C (0xe57b56d79ee5e5b3), - U64_C (0x9f8cd923139f9f46), U64_C (0xf0d317fd23f0f0e7), - U64_C (0x4a6a7f94204a4a35), U64_C (0xda9e95a944dada4f), - U64_C (0x58fa25b0a258587d), U64_C (0xc906ca8fcfc9c903), - U64_C (0x29558d527c2929a4), U64_C (0x0a5022145a0a0a28), - U64_C (0xb1e14f7f50b1b1fe), U64_C (0xa0691a5dc9a0a0ba), - U64_C (0x6b7fdad6146b6bb1), U64_C (0x855cab17d985852e), - U64_C (0xbd8173673cbdbdce), U64_C (0x5dd234ba8f5d5d69), - U64_C (0x1080502090101040), U64_C (0xf4f303f507f4f4f7), - U64_C (0xcb16c08bddcbcb0b), U64_C (0x3eedc67cd33e3ef8), - U64_C (0x0528110a2d050514), U64_C (0x671fe6ce78676781), - U64_C (0xe47353d597e4e4b7), U64_C (0x2725bb4e0227279c), - U64_C (0x4132588273414119), U64_C (0x8b2c9d0ba78b8b16), - U64_C (0xa7510153f6a7a7a6), U64_C (0x7dcf94fab27d7de9), - U64_C (0x95dcfb374995956e), U64_C (0xd88e9fad56d8d847), - U64_C (0xfb8b30eb70fbfbcb), U64_C (0xee2371c1cdeeee9f), - U64_C (0x7cc791f8bb7c7ced), U64_C (0x6617e3cc71666685), - U64_C (0xdda68ea77bdddd53), U64_C (0x17b84b2eaf17175c), - U64_C (0x4702468e45474701), U64_C (0x9e84dc211a9e9e42), - U64_C (0xca1ec589d4caca0f), U64_C (0x2d75995a582d2db4), - U64_C (0xbf9179632ebfbfc6), U64_C (0x07381b0e3f07071c), - U64_C (0xad012347acadad8e), U64_C (0x5aea2fb4b05a5a75), - U64_C (0x836cb51bef838336), U64_C (0x3385ff66b63333cc), - U64_C (0x633ff2c65c636391), U64_C (0x02100a0412020208), - U64_C (0xaa39384993aaaa92), U64_C (0x71afa8e2de7171d9), - U64_C (0xc80ecf8dc6c8c807), U64_C (0x19c87d32d1191964), - U64_C (0x497270923b494939), U64_C (0xd9869aaf5fd9d943), - U64_C (0xf2c31df931f2f2ef), U64_C (0xe34b48dba8e3e3ab), - U64_C (0x5be22ab6b95b5b71), U64_C (0x8834920dbc88881a), - U64_C (0x9aa4c8293e9a9a52), U64_C (0x262dbe4c0b262698), - U64_C (0x328dfa64bf3232c8), U64_C (0xb0e94a7d59b0b0fa), - U64_C (0xe91b6acff2e9e983), U64_C (0x0f78331e770f0f3c), - U64_C (0xd5e6a6b733d5d573), U64_C (0x8074ba1df480803a), - U64_C (0xbe997c6127bebec2), U64_C (0xcd26de87ebcdcd13), - U64_C (0x34bde468893434d0), U64_C (0x487a75903248483d), - U64_C (0xffab24e354ffffdb), U64_C (0x7af78ff48d7a7af5), - U64_C (0x90f4ea3d6490907a), U64_C (0x5fc23ebe9d5f5f61), - U64_C (0x201da0403d202080), U64_C (0x6867d5d00f6868bd), - U64_C (0x1ad07234ca1a1a68), U64_C (0xae192c41b7aeae82), - U64_C (0xb4c95e757db4b4ea), U64_C (0x549a19a8ce54544d), - U64_C (0x93ece53b7f939376), U64_C (0x220daa442f222288), - U64_C (0x6407e9c86364648d), U64_C (0xf1db12ff2af1f1e3), - U64_C (0x73bfa2e6cc7373d1), U64_C (0x12905a2482121248), - U64_C (0x403a5d807a40401d), U64_C (0x0840281048080820), - U64_C (0xc356e89b95c3c32b), U64_C (0xec337bc5dfecec97), - U64_C (0xdb9690ab4ddbdb4b), U64_C (0xa1611f5fc0a1a1be), - U64_C (0x8d1c8307918d8d0e), U64_C (0x3df5c97ac83d3df4), - U64_C (0x97ccf1335b979766), U64_C (0x0000000000000000), - U64_C (0xcf36d483f9cfcf1b), U64_C (0x2b4587566e2b2bac), - U64_C (0x7697b3ece17676c5), U64_C (0x8264b019e6828232), - U64_C (0xd6fea9b128d6d67f), U64_C (0x1bd87736c31b1b6c), - U64_C (0xb5c15b7774b5b5ee), U64_C (0xaf112943beafaf86), - U64_C (0x6a77dfd41d6a6ab5), U64_C (0x50ba0da0ea50505d), - U64_C (0x45124c8a57454509), U64_C (0xf3cb18fb38f3f3eb), - U64_C (0x309df060ad3030c0), U64_C (0xef2b74c3c4efef9b), - U64_C (0x3fe5c37eda3f3ffc), U64_C (0x55921caac7555549), - U64_C (0xa2791059dba2a2b2), U64_C (0xea0365c9e9eaea8f), - U64_C (0x650fecca6a656589), U64_C (0xbab9686903babad2), - U64_C (0x2f65935e4a2f2fbc), U64_C (0xc04ee79d8ec0c027), - U64_C (0xdebe81a160dede5f), U64_C (0x1ce06c38fc1c1c70), - U64_C (0xfdbb2ee746fdfdd3), U64_C (0x4d52649a1f4d4d29), - U64_C (0x92e4e03976929272), U64_C (0x758fbceafa7575c9), - U64_C (0x06301e0c36060618), U64_C (0x8a249809ae8a8a12), - U64_C (0xb2f940794bb2b2f2), U64_C (0xe66359d185e6e6bf), - U64_C (0x0e70361c7e0e0e38), U64_C (0x1ff8633ee71f1f7c), - U64_C (0x6237f7c455626295), U64_C (0xd4eea3b53ad4d477), - U64_C (0xa829324d81a8a89a), U64_C (0x96c4f43152969662), - U64_C (0xf99b3aef62f9f9c3), U64_C (0xc566f697a3c5c533), - U64_C (0x2535b14a10252594), U64_C (0x59f220b2ab595979), - U64_C (0x8454ae15d084842a), U64_C (0x72b7a7e4c57272d5), - U64_C (0x39d5dd72ec3939e4), U64_C (0x4c5a6198164c4c2d), - U64_C (0x5eca3bbc945e5e65), U64_C (0x78e785f09f7878fd), - U64_C (0x38ddd870e53838e0), U64_C (0x8c148605988c8c0a), - U64_C (0xd1c6b2bf17d1d163), U64_C (0xa5410b57e4a5a5ae), - U64_C (0xe2434dd9a1e2e2af), U64_C (0x612ff8c24e616199), - U64_C (0xb3f1457b42b3b3f6), U64_C (0x2115a54234212184), - U64_C (0x9c94d625089c9c4a), U64_C (0x1ef0663cee1e1e78), - U64_C (0x4322528661434311), U64_C (0xc776fc93b1c7c73b), - U64_C (0xfcb32be54ffcfcd7), U64_C (0x0420140824040410), - U64_C (0x51b208a2e3515159), U64_C (0x99bcc72f2599995e), - U64_C (0x6d4fc4da226d6da9), U64_C (0x0d68391a650d0d34), - U64_C (0xfa8335e979fafacf), U64_C (0xdfb684a369dfdf5b), - U64_C (0x7ed79bfca97e7ee5), U64_C (0x243db44819242490), - U64_C (0x3bc5d776fe3b3bec), U64_C (0xab313d4b9aabab96), - U64_C (0xce3ed181f0cece1f), U64_C (0x1188552299111144), - U64_C (0x8f0c8903838f8f06), U64_C (0x4e4a6b9c044e4e25), - U64_C (0xb7d1517366b7b7e6), U64_C (0xeb0b60cbe0ebeb8b), - U64_C (0x3cfdcc78c13c3cf0), U64_C (0x817cbf1ffd81813e), - U64_C (0x94d4fe354094946a), U64_C (0xf7eb0cf31cf7f7fb), - U64_C (0xb9a1676f18b9b9de), U64_C (0x13985f268b13134c), - U64_C (0x2c7d9c58512c2cb0), U64_C (0xd3d6b8bb05d3d36b), - U64_C (0xe76b5cd38ce7e7bb), U64_C (0x6e57cbdc396e6ea5), - U64_C (0xc46ef395aac4c437), U64_C (0x03180f061b03030c), - U64_C (0x568a13acdc565645), U64_C (0x441a49885e44440d), - U64_C (0x7fdf9efea07f7fe1), U64_C (0xa921374f88a9a99e), - U64_C (0x2a4d8254672a2aa8), U64_C (0xbbb16d6b0abbbbd6), - U64_C (0xc146e29f87c1c123), U64_C (0x53a202a6f1535351), - U64_C (0xdcae8ba572dcdc57), U64_C (0x0b582716530b0b2c), - U64_C (0x9d9cd327019d9d4e), U64_C (0x6c47c1d82b6c6cad), - U64_C (0x3195f562a43131c4), U64_C (0x7487b9e8f37474cd), - U64_C (0xf6e309f115f6f6ff), U64_C (0x460a438c4c464605), - U64_C (0xac092645a5acac8a), U64_C (0x893c970fb589891e), - U64_C (0x14a04428b4141450), U64_C (0xe15b42dfbae1e1a3), - U64_C (0x16b04e2ca6161658), U64_C (0x3acdd274f73a3ae8), - U64_C (0x696fd0d2066969b9), U64_C (0x09482d1241090924), - U64_C (0x70a7ade0d77070dd), U64_C (0xb6d954716fb6b6e2), - U64_C (0xd0ceb7bd1ed0d067), U64_C (0xed3b7ec7d6eded93), - U64_C (0xcc2edb85e2cccc17), U64_C (0x422a578468424215), - U64_C (0x98b4c22d2c98985a), U64_C (0xa4490e55eda4a4aa), - U64_C (0x285d8850752828a0), U64_C (0x5cda31b8865c5c6d), - U64_C (0xf8933fed6bf8f8c7), U64_C (0x8644a411c2868622), - }; - -static const u64 C6[256] = - { - U64_C (0x6018c07830d81818), U64_C (0x8c2305af46262323), - U64_C (0x3fc67ef991b8c6c6), U64_C (0x87e8136fcdfbe8e8), - U64_C (0x26874ca113cb8787), U64_C (0xdab8a9626d11b8b8), - U64_C (0x0401080502090101), U64_C (0x214f426e9e0d4f4f), - U64_C (0xd836adee6c9b3636), U64_C (0xa2a6590451ffa6a6), - U64_C (0x6fd2debdb90cd2d2), U64_C (0xf3f5fb06f70ef5f5), - U64_C (0xf979ef80f2967979), U64_C (0xa16f5fcede306f6f), - U64_C (0x7e91fcef3f6d9191), U64_C (0x5552aa07a4f85252), - U64_C (0x9d6027fdc0476060), U64_C (0xcabc89766535bcbc), - U64_C (0x569baccd2b379b9b), U64_C (0x028e048c018a8e8e), - U64_C (0xb6a371155bd2a3a3), U64_C (0x300c603c186c0c0c), - U64_C (0xf17bff8af6847b7b), U64_C (0xd435b5e16a803535), - U64_C (0x741de8693af51d1d), U64_C (0xa7e05347ddb3e0e0), - U64_C (0x7bd7f6acb321d7d7), U64_C (0x2fc25eed999cc2c2), - U64_C (0xb82e6d965c432e2e), U64_C (0x314b627a96294b4b), - U64_C (0xdffea321e15dfefe), U64_C (0x41578216aed55757), - U64_C (0x5415a8412abd1515), U64_C (0xc1779fb6eee87777), - U64_C (0xdc37a5eb6e923737), U64_C (0xb3e57b56d79ee5e5), - U64_C (0x469f8cd923139f9f), U64_C (0xe7f0d317fd23f0f0), - U64_C (0x354a6a7f94204a4a), U64_C (0x4fda9e95a944dada), - U64_C (0x7d58fa25b0a25858), U64_C (0x03c906ca8fcfc9c9), - U64_C (0xa429558d527c2929), U64_C (0x280a5022145a0a0a), - U64_C (0xfeb1e14f7f50b1b1), U64_C (0xbaa0691a5dc9a0a0), - U64_C (0xb16b7fdad6146b6b), U64_C (0x2e855cab17d98585), - U64_C (0xcebd8173673cbdbd), U64_C (0x695dd234ba8f5d5d), - U64_C (0x4010805020901010), U64_C (0xf7f4f303f507f4f4), - U64_C (0x0bcb16c08bddcbcb), U64_C (0xf83eedc67cd33e3e), - U64_C (0x140528110a2d0505), U64_C (0x81671fe6ce786767), - U64_C (0xb7e47353d597e4e4), U64_C (0x9c2725bb4e022727), - U64_C (0x1941325882734141), U64_C (0x168b2c9d0ba78b8b), - U64_C (0xa6a7510153f6a7a7), U64_C (0xe97dcf94fab27d7d), - U64_C (0x6e95dcfb37499595), U64_C (0x47d88e9fad56d8d8), - U64_C (0xcbfb8b30eb70fbfb), U64_C (0x9fee2371c1cdeeee), - U64_C (0xed7cc791f8bb7c7c), U64_C (0x856617e3cc716666), - U64_C (0x53dda68ea77bdddd), U64_C (0x5c17b84b2eaf1717), - U64_C (0x014702468e454747), U64_C (0x429e84dc211a9e9e), - U64_C (0x0fca1ec589d4caca), U64_C (0xb42d75995a582d2d), - U64_C (0xc6bf9179632ebfbf), U64_C (0x1c07381b0e3f0707), - U64_C (0x8ead012347acadad), U64_C (0x755aea2fb4b05a5a), - U64_C (0x36836cb51bef8383), U64_C (0xcc3385ff66b63333), - U64_C (0x91633ff2c65c6363), U64_C (0x0802100a04120202), - U64_C (0x92aa39384993aaaa), U64_C (0xd971afa8e2de7171), - U64_C (0x07c80ecf8dc6c8c8), U64_C (0x6419c87d32d11919), - U64_C (0x39497270923b4949), U64_C (0x43d9869aaf5fd9d9), - U64_C (0xeff2c31df931f2f2), U64_C (0xabe34b48dba8e3e3), - U64_C (0x715be22ab6b95b5b), U64_C (0x1a8834920dbc8888), - U64_C (0x529aa4c8293e9a9a), U64_C (0x98262dbe4c0b2626), - U64_C (0xc8328dfa64bf3232), U64_C (0xfab0e94a7d59b0b0), - U64_C (0x83e91b6acff2e9e9), U64_C (0x3c0f78331e770f0f), - U64_C (0x73d5e6a6b733d5d5), U64_C (0x3a8074ba1df48080), - U64_C (0xc2be997c6127bebe), U64_C (0x13cd26de87ebcdcd), - U64_C (0xd034bde468893434), U64_C (0x3d487a7590324848), - U64_C (0xdbffab24e354ffff), U64_C (0xf57af78ff48d7a7a), - U64_C (0x7a90f4ea3d649090), U64_C (0x615fc23ebe9d5f5f), - U64_C (0x80201da0403d2020), U64_C (0xbd6867d5d00f6868), - U64_C (0x681ad07234ca1a1a), U64_C (0x82ae192c41b7aeae), - U64_C (0xeab4c95e757db4b4), U64_C (0x4d549a19a8ce5454), - U64_C (0x7693ece53b7f9393), U64_C (0x88220daa442f2222), - U64_C (0x8d6407e9c8636464), U64_C (0xe3f1db12ff2af1f1), - U64_C (0xd173bfa2e6cc7373), U64_C (0x4812905a24821212), - U64_C (0x1d403a5d807a4040), U64_C (0x2008402810480808), - U64_C (0x2bc356e89b95c3c3), U64_C (0x97ec337bc5dfecec), - U64_C (0x4bdb9690ab4ddbdb), U64_C (0xbea1611f5fc0a1a1), - U64_C (0x0e8d1c8307918d8d), U64_C (0xf43df5c97ac83d3d), - U64_C (0x6697ccf1335b9797), U64_C (0x0000000000000000), - U64_C (0x1bcf36d483f9cfcf), U64_C (0xac2b4587566e2b2b), - U64_C (0xc57697b3ece17676), U64_C (0x328264b019e68282), - U64_C (0x7fd6fea9b128d6d6), U64_C (0x6c1bd87736c31b1b), - U64_C (0xeeb5c15b7774b5b5), U64_C (0x86af112943beafaf), - U64_C (0xb56a77dfd41d6a6a), U64_C (0x5d50ba0da0ea5050), - U64_C (0x0945124c8a574545), U64_C (0xebf3cb18fb38f3f3), - U64_C (0xc0309df060ad3030), U64_C (0x9bef2b74c3c4efef), - U64_C (0xfc3fe5c37eda3f3f), U64_C (0x4955921caac75555), - U64_C (0xb2a2791059dba2a2), U64_C (0x8fea0365c9e9eaea), - U64_C (0x89650fecca6a6565), U64_C (0xd2bab9686903baba), - U64_C (0xbc2f65935e4a2f2f), U64_C (0x27c04ee79d8ec0c0), - U64_C (0x5fdebe81a160dede), U64_C (0x701ce06c38fc1c1c), - U64_C (0xd3fdbb2ee746fdfd), U64_C (0x294d52649a1f4d4d), - U64_C (0x7292e4e039769292), U64_C (0xc9758fbceafa7575), - U64_C (0x1806301e0c360606), U64_C (0x128a249809ae8a8a), - U64_C (0xf2b2f940794bb2b2), U64_C (0xbfe66359d185e6e6), - U64_C (0x380e70361c7e0e0e), U64_C (0x7c1ff8633ee71f1f), - U64_C (0x956237f7c4556262), U64_C (0x77d4eea3b53ad4d4), - U64_C (0x9aa829324d81a8a8), U64_C (0x6296c4f431529696), - U64_C (0xc3f99b3aef62f9f9), U64_C (0x33c566f697a3c5c5), - U64_C (0x942535b14a102525), U64_C (0x7959f220b2ab5959), - U64_C (0x2a8454ae15d08484), U64_C (0xd572b7a7e4c57272), - U64_C (0xe439d5dd72ec3939), U64_C (0x2d4c5a6198164c4c), - U64_C (0x655eca3bbc945e5e), U64_C (0xfd78e785f09f7878), - U64_C (0xe038ddd870e53838), U64_C (0x0a8c148605988c8c), - U64_C (0x63d1c6b2bf17d1d1), U64_C (0xaea5410b57e4a5a5), - U64_C (0xafe2434dd9a1e2e2), U64_C (0x99612ff8c24e6161), - U64_C (0xf6b3f1457b42b3b3), U64_C (0x842115a542342121), - U64_C (0x4a9c94d625089c9c), U64_C (0x781ef0663cee1e1e), - U64_C (0x1143225286614343), U64_C (0x3bc776fc93b1c7c7), - U64_C (0xd7fcb32be54ffcfc), U64_C (0x1004201408240404), - U64_C (0x5951b208a2e35151), U64_C (0x5e99bcc72f259999), - U64_C (0xa96d4fc4da226d6d), U64_C (0x340d68391a650d0d), - U64_C (0xcffa8335e979fafa), U64_C (0x5bdfb684a369dfdf), - U64_C (0xe57ed79bfca97e7e), U64_C (0x90243db448192424), - U64_C (0xec3bc5d776fe3b3b), U64_C (0x96ab313d4b9aabab), - U64_C (0x1fce3ed181f0cece), U64_C (0x4411885522991111), - U64_C (0x068f0c8903838f8f), U64_C (0x254e4a6b9c044e4e), - U64_C (0xe6b7d1517366b7b7), U64_C (0x8beb0b60cbe0ebeb), - U64_C (0xf03cfdcc78c13c3c), U64_C (0x3e817cbf1ffd8181), - U64_C (0x6a94d4fe35409494), U64_C (0xfbf7eb0cf31cf7f7), - U64_C (0xdeb9a1676f18b9b9), U64_C (0x4c13985f268b1313), - U64_C (0xb02c7d9c58512c2c), U64_C (0x6bd3d6b8bb05d3d3), - U64_C (0xbbe76b5cd38ce7e7), U64_C (0xa56e57cbdc396e6e), - U64_C (0x37c46ef395aac4c4), U64_C (0x0c03180f061b0303), - U64_C (0x45568a13acdc5656), U64_C (0x0d441a49885e4444), - U64_C (0xe17fdf9efea07f7f), U64_C (0x9ea921374f88a9a9), - U64_C (0xa82a4d8254672a2a), U64_C (0xd6bbb16d6b0abbbb), - U64_C (0x23c146e29f87c1c1), U64_C (0x5153a202a6f15353), - U64_C (0x57dcae8ba572dcdc), U64_C (0x2c0b582716530b0b), - U64_C (0x4e9d9cd327019d9d), U64_C (0xad6c47c1d82b6c6c), - U64_C (0xc43195f562a43131), U64_C (0xcd7487b9e8f37474), - U64_C (0xfff6e309f115f6f6), U64_C (0x05460a438c4c4646), - U64_C (0x8aac092645a5acac), U64_C (0x1e893c970fb58989), - U64_C (0x5014a04428b41414), U64_C (0xa3e15b42dfbae1e1), - U64_C (0x5816b04e2ca61616), U64_C (0xe83acdd274f73a3a), - U64_C (0xb9696fd0d2066969), U64_C (0x2409482d12410909), - U64_C (0xdd70a7ade0d77070), U64_C (0xe2b6d954716fb6b6), - U64_C (0x67d0ceb7bd1ed0d0), U64_C (0x93ed3b7ec7d6eded), - U64_C (0x17cc2edb85e2cccc), U64_C (0x15422a5784684242), - U64_C (0x5a98b4c22d2c9898), U64_C (0xaaa4490e55eda4a4), - U64_C (0xa0285d8850752828), U64_C (0x6d5cda31b8865c5c), - U64_C (0xc7f8933fed6bf8f8), U64_C (0x228644a411c28686), - }; - -static const u64 C7[256] = - { - U64_C (0x186018c07830d818), U64_C (0x238c2305af462623), - U64_C (0xc63fc67ef991b8c6), U64_C (0xe887e8136fcdfbe8), - U64_C (0x8726874ca113cb87), U64_C (0xb8dab8a9626d11b8), - U64_C (0x0104010805020901), U64_C (0x4f214f426e9e0d4f), - U64_C (0x36d836adee6c9b36), U64_C (0xa6a2a6590451ffa6), - U64_C (0xd26fd2debdb90cd2), U64_C (0xf5f3f5fb06f70ef5), - U64_C (0x79f979ef80f29679), U64_C (0x6fa16f5fcede306f), - U64_C (0x917e91fcef3f6d91), U64_C (0x525552aa07a4f852), - U64_C (0x609d6027fdc04760), U64_C (0xbccabc89766535bc), - U64_C (0x9b569baccd2b379b), U64_C (0x8e028e048c018a8e), - U64_C (0xa3b6a371155bd2a3), U64_C (0x0c300c603c186c0c), - U64_C (0x7bf17bff8af6847b), U64_C (0x35d435b5e16a8035), - U64_C (0x1d741de8693af51d), U64_C (0xe0a7e05347ddb3e0), - U64_C (0xd77bd7f6acb321d7), U64_C (0xc22fc25eed999cc2), - U64_C (0x2eb82e6d965c432e), U64_C (0x4b314b627a96294b), - U64_C (0xfedffea321e15dfe), U64_C (0x5741578216aed557), - U64_C (0x155415a8412abd15), U64_C (0x77c1779fb6eee877), - U64_C (0x37dc37a5eb6e9237), U64_C (0xe5b3e57b56d79ee5), - U64_C (0x9f469f8cd923139f), U64_C (0xf0e7f0d317fd23f0), - U64_C (0x4a354a6a7f94204a), U64_C (0xda4fda9e95a944da), - U64_C (0x587d58fa25b0a258), U64_C (0xc903c906ca8fcfc9), - U64_C (0x29a429558d527c29), U64_C (0x0a280a5022145a0a), - U64_C (0xb1feb1e14f7f50b1), U64_C (0xa0baa0691a5dc9a0), - U64_C (0x6bb16b7fdad6146b), U64_C (0x852e855cab17d985), - U64_C (0xbdcebd8173673cbd), U64_C (0x5d695dd234ba8f5d), - U64_C (0x1040108050209010), U64_C (0xf4f7f4f303f507f4), - U64_C (0xcb0bcb16c08bddcb), U64_C (0x3ef83eedc67cd33e), - U64_C (0x05140528110a2d05), U64_C (0x6781671fe6ce7867), - U64_C (0xe4b7e47353d597e4), U64_C (0x279c2725bb4e0227), - U64_C (0x4119413258827341), U64_C (0x8b168b2c9d0ba78b), - U64_C (0xa7a6a7510153f6a7), U64_C (0x7de97dcf94fab27d), - U64_C (0x956e95dcfb374995), U64_C (0xd847d88e9fad56d8), - U64_C (0xfbcbfb8b30eb70fb), U64_C (0xee9fee2371c1cdee), - U64_C (0x7ced7cc791f8bb7c), U64_C (0x66856617e3cc7166), - U64_C (0xdd53dda68ea77bdd), U64_C (0x175c17b84b2eaf17), - U64_C (0x47014702468e4547), U64_C (0x9e429e84dc211a9e), - U64_C (0xca0fca1ec589d4ca), U64_C (0x2db42d75995a582d), - U64_C (0xbfc6bf9179632ebf), U64_C (0x071c07381b0e3f07), - U64_C (0xad8ead012347acad), U64_C (0x5a755aea2fb4b05a), - U64_C (0x8336836cb51bef83), U64_C (0x33cc3385ff66b633), - U64_C (0x6391633ff2c65c63), U64_C (0x020802100a041202), - U64_C (0xaa92aa39384993aa), U64_C (0x71d971afa8e2de71), - U64_C (0xc807c80ecf8dc6c8), U64_C (0x196419c87d32d119), - U64_C (0x4939497270923b49), U64_C (0xd943d9869aaf5fd9), - U64_C (0xf2eff2c31df931f2), U64_C (0xe3abe34b48dba8e3), - U64_C (0x5b715be22ab6b95b), U64_C (0x881a8834920dbc88), - U64_C (0x9a529aa4c8293e9a), U64_C (0x2698262dbe4c0b26), - U64_C (0x32c8328dfa64bf32), U64_C (0xb0fab0e94a7d59b0), - U64_C (0xe983e91b6acff2e9), U64_C (0x0f3c0f78331e770f), - U64_C (0xd573d5e6a6b733d5), U64_C (0x803a8074ba1df480), - U64_C (0xbec2be997c6127be), U64_C (0xcd13cd26de87ebcd), - U64_C (0x34d034bde4688934), U64_C (0x483d487a75903248), - U64_C (0xffdbffab24e354ff), U64_C (0x7af57af78ff48d7a), - U64_C (0x907a90f4ea3d6490), U64_C (0x5f615fc23ebe9d5f), - U64_C (0x2080201da0403d20), U64_C (0x68bd6867d5d00f68), - U64_C (0x1a681ad07234ca1a), U64_C (0xae82ae192c41b7ae), - U64_C (0xb4eab4c95e757db4), U64_C (0x544d549a19a8ce54), - U64_C (0x937693ece53b7f93), U64_C (0x2288220daa442f22), - U64_C (0x648d6407e9c86364), U64_C (0xf1e3f1db12ff2af1), - U64_C (0x73d173bfa2e6cc73), U64_C (0x124812905a248212), - U64_C (0x401d403a5d807a40), U64_C (0x0820084028104808), - U64_C (0xc32bc356e89b95c3), U64_C (0xec97ec337bc5dfec), - U64_C (0xdb4bdb9690ab4ddb), U64_C (0xa1bea1611f5fc0a1), - U64_C (0x8d0e8d1c8307918d), U64_C (0x3df43df5c97ac83d), - U64_C (0x976697ccf1335b97), U64_C (0x0000000000000000), - U64_C (0xcf1bcf36d483f9cf), U64_C (0x2bac2b4587566e2b), - U64_C (0x76c57697b3ece176), U64_C (0x82328264b019e682), - U64_C (0xd67fd6fea9b128d6), U64_C (0x1b6c1bd87736c31b), - U64_C (0xb5eeb5c15b7774b5), U64_C (0xaf86af112943beaf), - U64_C (0x6ab56a77dfd41d6a), U64_C (0x505d50ba0da0ea50), - U64_C (0x450945124c8a5745), U64_C (0xf3ebf3cb18fb38f3), - U64_C (0x30c0309df060ad30), U64_C (0xef9bef2b74c3c4ef), - U64_C (0x3ffc3fe5c37eda3f), U64_C (0x554955921caac755), - U64_C (0xa2b2a2791059dba2), U64_C (0xea8fea0365c9e9ea), - U64_C (0x6589650fecca6a65), U64_C (0xbad2bab9686903ba), - U64_C (0x2fbc2f65935e4a2f), U64_C (0xc027c04ee79d8ec0), - U64_C (0xde5fdebe81a160de), U64_C (0x1c701ce06c38fc1c), - U64_C (0xfdd3fdbb2ee746fd), U64_C (0x4d294d52649a1f4d), - U64_C (0x927292e4e0397692), U64_C (0x75c9758fbceafa75), - U64_C (0x061806301e0c3606), U64_C (0x8a128a249809ae8a), - U64_C (0xb2f2b2f940794bb2), U64_C (0xe6bfe66359d185e6), - U64_C (0x0e380e70361c7e0e), U64_C (0x1f7c1ff8633ee71f), - U64_C (0x62956237f7c45562), U64_C (0xd477d4eea3b53ad4), - U64_C (0xa89aa829324d81a8), U64_C (0x966296c4f4315296), - U64_C (0xf9c3f99b3aef62f9), U64_C (0xc533c566f697a3c5), - U64_C (0x25942535b14a1025), U64_C (0x597959f220b2ab59), - U64_C (0x842a8454ae15d084), U64_C (0x72d572b7a7e4c572), - U64_C (0x39e439d5dd72ec39), U64_C (0x4c2d4c5a6198164c), - U64_C (0x5e655eca3bbc945e), U64_C (0x78fd78e785f09f78), - U64_C (0x38e038ddd870e538), U64_C (0x8c0a8c148605988c), - U64_C (0xd163d1c6b2bf17d1), U64_C (0xa5aea5410b57e4a5), - U64_C (0xe2afe2434dd9a1e2), U64_C (0x6199612ff8c24e61), - U64_C (0xb3f6b3f1457b42b3), U64_C (0x21842115a5423421), - U64_C (0x9c4a9c94d625089c), U64_C (0x1e781ef0663cee1e), - U64_C (0x4311432252866143), U64_C (0xc73bc776fc93b1c7), - U64_C (0xfcd7fcb32be54ffc), U64_C (0x0410042014082404), - U64_C (0x515951b208a2e351), U64_C (0x995e99bcc72f2599), - U64_C (0x6da96d4fc4da226d), U64_C (0x0d340d68391a650d), - U64_C (0xfacffa8335e979fa), U64_C (0xdf5bdfb684a369df), - U64_C (0x7ee57ed79bfca97e), U64_C (0x2490243db4481924), - U64_C (0x3bec3bc5d776fe3b), U64_C (0xab96ab313d4b9aab), - U64_C (0xce1fce3ed181f0ce), U64_C (0x1144118855229911), - U64_C (0x8f068f0c8903838f), U64_C (0x4e254e4a6b9c044e), - U64_C (0xb7e6b7d1517366b7), U64_C (0xeb8beb0b60cbe0eb), - U64_C (0x3cf03cfdcc78c13c), U64_C (0x813e817cbf1ffd81), - U64_C (0x946a94d4fe354094), U64_C (0xf7fbf7eb0cf31cf7), - U64_C (0xb9deb9a1676f18b9), U64_C (0x134c13985f268b13), - U64_C (0x2cb02c7d9c58512c), U64_C (0xd36bd3d6b8bb05d3), - U64_C (0xe7bbe76b5cd38ce7), U64_C (0x6ea56e57cbdc396e), - U64_C (0xc437c46ef395aac4), U64_C (0x030c03180f061b03), - U64_C (0x5645568a13acdc56), U64_C (0x440d441a49885e44), - U64_C (0x7fe17fdf9efea07f), U64_C (0xa99ea921374f88a9), - U64_C (0x2aa82a4d8254672a), U64_C (0xbbd6bbb16d6b0abb), - U64_C (0xc123c146e29f87c1), U64_C (0x535153a202a6f153), - U64_C (0xdc57dcae8ba572dc), U64_C (0x0b2c0b582716530b), - U64_C (0x9d4e9d9cd327019d), U64_C (0x6cad6c47c1d82b6c), - U64_C (0x31c43195f562a431), U64_C (0x74cd7487b9e8f374), - U64_C (0xf6fff6e309f115f6), U64_C (0x4605460a438c4c46), - U64_C (0xac8aac092645a5ac), U64_C (0x891e893c970fb589), - U64_C (0x145014a04428b414), U64_C (0xe1a3e15b42dfbae1), - U64_C (0x165816b04e2ca616), U64_C (0x3ae83acdd274f73a), - U64_C (0x69b9696fd0d20669), U64_C (0x092409482d124109), - U64_C (0x70dd70a7ade0d770), U64_C (0xb6e2b6d954716fb6), - U64_C (0xd067d0ceb7bd1ed0), U64_C (0xed93ed3b7ec7d6ed), - U64_C (0xcc17cc2edb85e2cc), U64_C (0x4215422a57846842), - U64_C (0x985a98b4c22d2c98), U64_C (0xa4aaa4490e55eda4), - U64_C (0x28a0285d88507528), U64_C (0x5c6d5cda31b8865c), - U64_C (0xf8c7f8933fed6bf8), U64_C (0x86228644a411c286), - }; - - - -static void -whirlpool_init (void *ctx) -{ - whirlpool_context_t *context = ctx; - - memset (context, 0, sizeof (*context)); -} - - -/* - * Transform block. - */ -static void -whirlpool_transform (whirlpool_context_t *context, const unsigned char *data) -{ - whirlpool_block_t data_block; - whirlpool_block_t key; - whirlpool_block_t state; - whirlpool_block_t block; - unsigned int r; - unsigned int i; - - buffer_to_block (data, data_block, i); - block_copy (key, context->hash_state, i); - block_copy (state, context->hash_state, i); - block_xor (state, data_block, i); - - for (r = 0; r < R; r++) - { - /* Compute round key K^r. */ - - block[0] = (C0[(key[0] >> 56) & 0xFF] ^ C1[(key[7] >> 48) & 0xFF] ^ - C2[(key[6] >> 40) & 0xFF] ^ C3[(key[5] >> 32) & 0xFF] ^ - C4[(key[4] >> 24) & 0xFF] ^ C5[(key[3] >> 16) & 0xFF] ^ - C6[(key[2] >> 8) & 0xFF] ^ C7[(key[1] >> 0) & 0xFF] ^ rc[r]); - block[1] = (C0[(key[1] >> 56) & 0xFF] ^ C1[(key[0] >> 48) & 0xFF] ^ - C2[(key[7] >> 40) & 0xFF] ^ C3[(key[6] >> 32) & 0xFF] ^ - C4[(key[5] >> 24) & 0xFF] ^ C5[(key[4] >> 16) & 0xFF] ^ - C6[(key[3] >> 8) & 0xFF] ^ C7[(key[2] >> 0) & 0xFF]); - block[2] = (C0[(key[2] >> 56) & 0xFF] ^ C1[(key[1] >> 48) & 0xFF] ^ - C2[(key[0] >> 40) & 0xFF] ^ C3[(key[7] >> 32) & 0xFF] ^ - C4[(key[6] >> 24) & 0xFF] ^ C5[(key[5] >> 16) & 0xFF] ^ - C6[(key[4] >> 8) & 0xFF] ^ C7[(key[3] >> 0) & 0xFF]); - block[3] = (C0[(key[3] >> 56) & 0xFF] ^ C1[(key[2] >> 48) & 0xFF] ^ - C2[(key[1] >> 40) & 0xFF] ^ C3[(key[0] >> 32) & 0xFF] ^ - C4[(key[7] >> 24) & 0xFF] ^ C5[(key[6] >> 16) & 0xFF] ^ - C6[(key[5] >> 8) & 0xFF] ^ C7[(key[4] >> 0) & 0xFF]); - block[4] = (C0[(key[4] >> 56) & 0xFF] ^ C1[(key[3] >> 48) & 0xFF] ^ - C2[(key[2] >> 40) & 0xFF] ^ C3[(key[1] >> 32) & 0xFF] ^ - C4[(key[0] >> 24) & 0xFF] ^ C5[(key[7] >> 16) & 0xFF] ^ - C6[(key[6] >> 8) & 0xFF] ^ C7[(key[5] >> 0) & 0xFF]); - block[5] = (C0[(key[5] >> 56) & 0xFF] ^ C1[(key[4] >> 48) & 0xFF] ^ - C2[(key[3] >> 40) & 0xFF] ^ C3[(key[2] >> 32) & 0xFF] ^ - C4[(key[1] >> 24) & 0xFF] ^ C5[(key[0] >> 16) & 0xFF] ^ - C6[(key[7] >> 8) & 0xFF] ^ C7[(key[6] >> 0) & 0xFF]); - block[6] = (C0[(key[6] >> 56) & 0xFF] ^ C1[(key[5] >> 48) & 0xFF] ^ - C2[(key[4] >> 40) & 0xFF] ^ C3[(key[3] >> 32) & 0xFF] ^ - C4[(key[2] >> 24) & 0xFF] ^ C5[(key[1] >> 16) & 0xFF] ^ - C6[(key[0] >> 8) & 0xFF] ^ C7[(key[7] >> 0) & 0xFF]); - block[7] = (C0[(key[7] >> 56) & 0xFF] ^ C1[(key[6] >> 48) & 0xFF] ^ - C2[(key[5] >> 40) & 0xFF] ^ C3[(key[4] >> 32) & 0xFF] ^ - C4[(key[3] >> 24) & 0xFF] ^ C5[(key[2] >> 16) & 0xFF] ^ - C6[(key[1] >> 8) & 0xFF] ^ C7[(key[0] >> 0) & 0xFF]); - block_copy (key, block, i); - - /* Apply r-th round transformation. */ - - block[0] = (C0[(state[0] >> 56) & 0xFF] ^ C1[(state[7] >> 48) & 0xFF] ^ - C2[(state[6] >> 40) & 0xFF] ^ C3[(state[5] >> 32) & 0xFF] ^ - C4[(state[4] >> 24) & 0xFF] ^ C5[(state[3] >> 16) & 0xFF] ^ - C6[(state[2] >> 8) & 0xFF] ^ C7[(state[1] >> 0) & 0xFF] ^ key[0]); - block[1] = (C0[(state[1] >> 56) & 0xFF] ^ C1[(state[0] >> 48) & 0xFF] ^ - C2[(state[7] >> 40) & 0xFF] ^ C3[(state[6] >> 32) & 0xFF] ^ - C4[(state[5] >> 24) & 0xFF] ^ C5[(state[4] >> 16) & 0xFF] ^ - C6[(state[3] >> 8) & 0xFF] ^ C7[(state[2] >> 0) & 0xFF] ^ key[1]); - block[2] = (C0[(state[2] >> 56) & 0xFF] ^ C1[(state[1] >> 48) & 0xFF] ^ - C2[(state[0] >> 40) & 0xFF] ^ C3[(state[7] >> 32) & 0xFF] ^ - C4[(state[6] >> 24) & 0xFF] ^ C5[(state[5] >> 16) & 0xFF] ^ - C6[(state[4] >> 8) & 0xFF] ^ C7[(state[3] >> 0) & 0xFF] ^ key[2]); - block[3] = (C0[(state[3] >> 56) & 0xFF] ^ C1[(state[2] >> 48) & 0xFF] ^ - C2[(state[1] >> 40) & 0xFF] ^ C3[(state[0] >> 32) & 0xFF] ^ - C4[(state[7] >> 24) & 0xFF] ^ C5[(state[6] >> 16) & 0xFF] ^ - C6[(state[5] >> 8) & 0xFF] ^ C7[(state[4] >> 0) & 0xFF] ^ key[3]); - block[4] = (C0[(state[4] >> 56) & 0xFF] ^ C1[(state[3] >> 48) & 0xFF] ^ - C2[(state[2] >> 40) & 0xFF] ^ C3[(state[1] >> 32) & 0xFF] ^ - C4[(state[0] >> 24) & 0xFF] ^ C5[(state[7] >> 16) & 0xFF] ^ - C6[(state[6] >> 8) & 0xFF] ^ C7[(state[5] >> 0) & 0xFF] ^ key[4]); - block[5] = (C0[(state[5] >> 56) & 0xFF] ^ C1[(state[4] >> 48) & 0xFF] ^ - C2[(state[3] >> 40) & 0xFF] ^ C3[(state[2] >> 32) & 0xFF] ^ - C4[(state[1] >> 24) & 0xFF] ^ C5[(state[0] >> 16) & 0xFF] ^ - C6[(state[7] >> 8) & 0xFF] ^ C7[(state[6] >> 0) & 0xFF] ^ key[5]); - block[6] = (C0[(state[6] >> 56) & 0xFF] ^ C1[(state[5] >> 48) & 0xFF] ^ - C2[(state[4] >> 40) & 0xFF] ^ C3[(state[3] >> 32) & 0xFF] ^ - C4[(state[2] >> 24) & 0xFF] ^ C5[(state[1] >> 16) & 0xFF] ^ - C6[(state[0] >> 8) & 0xFF] ^ C7[(state[7] >> 0) & 0xFF] ^ key[6]); - block[7] = (C0[(state[7] >> 56) & 0xFF] ^ C1[(state[6] >> 48) & 0xFF] ^ - C2[(state[5] >> 40) & 0xFF] ^ C3[(state[4] >> 32) & 0xFF] ^ - C4[(state[3] >> 24) & 0xFF] ^ C5[(state[2] >> 16) & 0xFF] ^ - C6[(state[1] >> 8) & 0xFF] ^ C7[(state[0] >> 0) & 0xFF] ^ key[7]); - block_copy (state, block, i); - } - - /* Compression. */ - - block_xor (context->hash_state, data_block, i); - block_xor (context->hash_state, state, i); -} - -static void -whirlpool_add (whirlpool_context_t *context, - const void *buffer_arg, size_t buffer_n) -{ - const unsigned char *buffer = buffer_arg; - u64 buffer_size; - unsigned int carry; - unsigned int i; - - buffer_size = buffer_n; - - if (context->count == BLOCK_SIZE) - { - /* Flush the buffer. */ - whirlpool_transform (context, context->buffer); - /*_gcry_burn_stack (80+6*sizeof(void*));*/ /* FIXME */ - context->count = 0; - } - if (! buffer) - return; /* Nothing to add. */ - - if (context->count) - { - while (buffer_n && (context->count < BLOCK_SIZE)) - { - context->buffer[context->count++] = *buffer++; - buffer_n--; - } - whirlpool_add (context, NULL, 0); - if (!buffer_n) - /* Done. */ - return; - } - /*_gcry_burn_stack (80+6*sizeof(void*));*/ /* FIXME */ - - while (buffer_n >= BLOCK_SIZE) - { - whirlpool_transform (context, buffer); - context->count = 0; - buffer_n -= BLOCK_SIZE; - buffer += BLOCK_SIZE; - } - while (buffer_n && (context->count < BLOCK_SIZE)) - { - context->buffer[context->count++] = *buffer++; - buffer_n--; - } - - /* Update bit counter. */ - carry = 0; - buffer_size <<= 3; - for (i = 1; i <= 32; i++) - { - if (! (buffer_size || carry)) - break; - - carry += context->length[32 - i] + (buffer_size & 0xFF); - context->length[32 - i] = carry; - buffer_size >>= 8; - carry >>= 8; - } - gcry_assert (! (buffer_size || carry)); -} - -static void -whirlpool_write (void *ctx, const void *buffer, size_t buffer_n) -{ - whirlpool_context_t *context = ctx; - - whirlpool_add (context, buffer, buffer_n); -} - -static void -whirlpool_final (void *ctx) -{ - whirlpool_context_t *context = ctx; - unsigned int i; - - /* Flush. */ - whirlpool_add (context, NULL, 0); - - /* Pad. */ - context->buffer[context->count++] = 0x80; - - if (context->count > 32) - { - /* An extra block is necessary. */ - while (context->count < 64) - context->buffer[context->count++] = 0; - whirlpool_add (context, NULL, 0); - } - while (context->count < 32) - context->buffer[context->count++] = 0; - - /* Add length of message. */ - memcpy (context->buffer + context->count, context->length, 32); - context->count += 32; - whirlpool_add (context, NULL, 0); - - block_to_buffer (context->buffer, context->hash_state, i); -} - -static byte * -whirlpool_read (void *ctx) -{ - whirlpool_context_t *context = ctx; - - return context->buffer; -} - -gcry_md_spec_t _gcry_digest_spec_whirlpool = - { - "WHIRLPOOL", NULL, 0, NULL, 64, - whirlpool_init, whirlpool_write, whirlpool_final, whirlpool_read, - sizeof (whirlpool_context_t) - , -#ifdef GRUB_UTIL - .modname = "gcry_whirlpool", -#endif - .blocksize = 64 - }; - - -GRUB_MOD_INIT(gcry_whirlpool) -{ - COMPILE_TIME_ASSERT(sizeof (whirlpool_context_t) <= GRUB_CRYPTO_MAX_MD_CONTEXT_SIZE); - grub_md_register (&_gcry_digest_spec_whirlpool); -} - -GRUB_MOD_FINI(gcry_whirlpool) -{ - grub_md_unregister (&_gcry_digest_spec_whirlpool); -} diff --git a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/generic/Manifest b/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/generic/Manifest deleted file mode 100644 index c429fde72..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/generic/Manifest +++ /dev/null @@ -1,29 +0,0 @@ -# Manifest - checksums -# Copyright 2003 Free Software Foundation, Inc. -# -# This file is part of Libgcrypt. -# -# Libgcrypt is free software; you can redistribute it and/or modify -# it under the terms of the GNU Lesser general Public License as -# published by the Free Software Foundation; either version 2.1 of -# the License, or (at your option) any later version. -# -# Libgcrypt is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU Lesser General Public License for more details. -# -# You should have received a copy of the GNU Lesser General Public -# License along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA - -mpih-add1.c iQCVAwUAP+Lj2DEAnp832S/7AQKn/AQAwQLWggl6zNQ5EZ+lE+jKV8W3FsogW3/6tp9T5rrSR5JnlWyoHQ9/Pu4knOcLjS6nIfVOiAEifu3nuIysQr9jDSSSJA2LylSUBSXKLKDamPsOCwXOLxiZODslJT3CCGAUtLvXJrWDbTZQrkEuwnLnjQFDzuA7iY9JLrG9kAoXD6Q==WoWm -mpih-mul1.c iQCVAwUAP+LkCTEAnp832S/7AQKFVQP+MhBNjcY73JtnsHZfnaVZq3TiKwN151cWV51nDc1RnTaMhSIFeuNlj3vNML2W0Gn8n+GnyiWE2XXdQEaik6BL02eekUn9aq7I/rdpnTHuOjQPK1uwjuNl8RuJ9YrERBAxq4oB71f+iwMab8dsMSUlVC+NdeAocRqLLgnR/efkdLc==2Tkb -mpih-mul2.c iQCVAwUAP+LkMjEAnp832S/7AQLPeAQAqmRzxFe/mDqTdZr/pTXT8RVyB1vKB0Ei2THV05BxmI4OPv39uysfFpLMt/INsX7AGqdOlj4jOZ/qNaFXR1ceMrlSXvo8u/epk6rCXFp82kM7Qs983LjoP//PrMCkYkXwblaVrgUGiBUCbuPMliWTK6qKkxxXtEfqZ7nVbEWdBx8==Kwhl -mpih-mul3.c iQCVAwUAP+LkVDEAnp832S/7AQL91gP/Qd5iZWxRiN5DdEIVHAedoNvl23NPrT2UUdXvnSK49DpplTxkLiMBj0WqCayG/YIET2NpMRCeLvAZNcSt6lOm0bSZDYo1Hv/N+UoqD3V1McjY16REBv/nnPaMWMZcx7rl5yKTVZiX2PgV6oQOL7Yfrt5ZIOlrHBRs9S2/zcCaVz0==9BQe -mpih-lshift.c iQCVAwUAP+LlATEAnp832S/7AQIACAQAhMrpx0SRXE/LN1NkjMO9n74nMrvmzYJyru0gw2O4BYrUPvD/LWGju2FZaggKV0IBjmi0cDoCrNeK9EGjKOO1lfgODbX2IZ1LUhr9jDuMj0QRqj6T9YkAFYTNUk4GfpwIf7T6Ybo7c78Jx93PidCJt7d39eMMEalooC7LZ4IU3NM==nZ4k -mpih-rshift.c iQCVAwUAP+LlIjEAnp832S/7AQKiuAP/eYC2ZScd+taBx/kNzRvGjA0eAXvORMkMLV6Ot+OXVzVUi04eoP2yXdxSNFKwUj12p8GWXkdoMG3aOGBKg2a7bY5Q5RUho3hUWb9UsVYVUfXLf7IOTt/3a6MLh2CmV5dFPWJmSlbCyQRcn6n/fLDeJ3A2bWTS/BhqGfpOXUIU1ws==jCf8 -mpih-sub1.c iQCVAwUAP+LlZzEAnp832S/7AQIEPgP/dLHTDRbPrYJhsLp9SjGstU1M8/IC5XytcDtO3NQeu4mx6vaXjpujtsTvKIbX4QL5IahNntVVKv1xFLEm2yFg7L2ns0uD/mfwGgOhCG1j2o/SaTAWP5KxP7ae5UDcZl2w6NWvEuMj9t32zmziAZjP8W73A37FUspeRDYiL9sQzkI==QQzk -udiv-w-sdiv.c iQCVAwUAP+Lk0TEAnp832S/7AQICXAQAsxe1SQD4+xZaZTqBC0V9Cyuo0mrdccnRFzthOtm0ARwKFXU2cuLW/ZBOkmeWOVmOFhBp22/I8dEGYnMA3gcfmOMCpNu9i9zk/XHfptdunA1MnOe3GsoWgfHL0rhpAyPhp/X043ICB41NElnnuxADuQQlD4Z1fca5ygYxMr2crJg==EI/6 -mpi-asm-defs.h iQCVAwUAP+LkgDEAnp832S/7AQK0FgQAxJZ7xvXhoZa33GWe23LRb3asrno/loZSyAIXrntqtVH8M3pEsCY0OyW4ry4hX2RnxpuhRCM/PdRNLG3xXyMSVIhkHU8WVRLqzF2LLjEkyU3cAmHnnTQ9aO/XpUWtJGTZ8q2bv7ZsAEi4aPl0p6KhPXcPgM9vQ2XcyOPn3Dl0d6Q==xpjI -$names$ iQCVAwUAP+LmNDEAnp832S/7AQJa+gP+KQNJpbNOgc+s2UX+Ya2gDaOFcAROImIllhg3ej8EaBF8xxdHmWT1zaKwTwi3moEEleykMR104YAGWyQeMbFYiuPPBW+ohrT6KxRBVJpIA9auOOqqJMyglZyoR3Hv7gduVYUW1h/DebnqiKXKEfzQDFqYuT0ayuteoOR4B5NICbE==nLSh diff --git a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/generic/distfiles b/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/generic/distfiles deleted file mode 100644 index 9810eef4d..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/generic/distfiles +++ /dev/null @@ -1,11 +0,0 @@ -Manifest -mpih-add1.c -mpih-mul1.c -mpih-mul2.c -mpih-mul3.c -mpih-lshift.c -mpih-rshift.c -mpih-sub1.c -udiv-w-sdiv.c -mpi-asm-defs.h - diff --git a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/generic/mpi-asm-defs.h b/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/generic/mpi-asm-defs.h deleted file mode 100644 index 13424e280..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/generic/mpi-asm-defs.h +++ /dev/null @@ -1,10 +0,0 @@ -/* This file defines some basic constants for the MPI machinery. We - * need to define the types on a per-CPU basis, so it is done with - * this file here. */ -#define BYTES_PER_MPI_LIMB (SIZEOF_UNSIGNED_LONG) - - - - - - diff --git a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/generic/mpih-add1.c b/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/generic/mpih-add1.c deleted file mode 100644 index 4a84df64d..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/generic/mpih-add1.c +++ /dev/null @@ -1,65 +0,0 @@ -/* mpihelp-add_1.c - MPI helper functions - * Copyright (C) 1994, 1996, 1997, 1998, - * 2000, 2002 Free Software Foundation, Inc. - * - * This file is part of Libgcrypt. - * - * Libgcrypt is free software; you can redistribute it and/or modify - * it under the terms of the GNU Lesser General Public License as - * published by the Free Software Foundation; either version 2.1 of - * the License, or (at your option) any later version. - * - * Libgcrypt is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA - * - * Note: This code is heavily based on the GNU MP Library. - * Actually it's the same code with only minor changes in the - * way the data is stored; this is to support the abstraction - * of an optional secure memory allocation which may be used - * to avoid revealing of sensitive data due to paging etc. - */ - -#include -#include -#include -#include "mpi-internal.h" -#include "longlong.h" - -mpi_limb_t -_gcry_mpih_add_n (mpi_ptr_t res_ptr, mpi_ptr_t s1_ptr, - mpi_ptr_t s2_ptr, mpi_size_t size) -{ - mpi_limb_t x, y, cy; - mpi_size_t j; - - /* The loop counter and index J goes from -SIZE to -1. This way - the loop becomes faster. */ - j = -size; - - /* Offset the base pointers to compensate for the negative indices. */ - s1_ptr -= j; - s2_ptr -= j; - res_ptr -= j; - - cy = 0; - do - { - y = s2_ptr[j]; - x = s1_ptr[j]; - y += cy; /* add previous carry to one addend */ - cy = y < cy; /* get out carry from that addition */ - y += x; /* add other addend */ - cy += y < x; /* get out carry from that add, combine */ - res_ptr[j] = y; - } - while ( ++j ); - - return cy; -} - diff --git a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/generic/mpih-lshift.c b/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/generic/mpih-lshift.c deleted file mode 100644 index f48c12cd0..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/generic/mpih-lshift.c +++ /dev/null @@ -1,68 +0,0 @@ -/* mpi-lshift.c - MPI helper functions - * Copyright (C) 1994, 1996, 1998, 2001, 2002 Free Software Foundation, Inc. - * - * This file is part of Libgcrypt. - * - * Libgcrypt is free software; you can redistribute it and/or modify - * it under the terms of the GNU Lesser General Public License as - * published by the Free Software Foundation; either version 2.1 of - * the License, or (at your option) any later version. - * - * Libgcrypt is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA - * - * Note: This code is heavily based on the GNU MP Library. - * Actually it's the same code with only minor changes in the - * way the data is stored; this is to support the abstraction - * of an optional secure memory allocation which may be used - * to avoid revealing of sensitive data due to paging etc. - */ - -#include -#include -#include -#include "mpi-internal.h" - -/* Shift U (pointed to by UP and USIZE digits long) CNT bits to the left - * and store the USIZE least significant digits of the result at WP. - * Return the bits shifted out from the most significant digit. - * - * Argument constraints: - * 1. 0 < CNT < BITS_PER_MP_LIMB - * 2. If the result is to be written over the input, WP must be >= UP. - */ - -mpi_limb_t -_gcry_mpih_lshift( mpi_ptr_t wp, mpi_ptr_t up, mpi_size_t usize, - unsigned int cnt) -{ - mpi_limb_t high_limb, low_limb; - unsigned sh_1, sh_2; - mpi_size_t i; - mpi_limb_t retval; - - sh_1 = cnt; - wp += 1; - sh_2 = BITS_PER_MPI_LIMB - sh_1; - i = usize - 1; - low_limb = up[i]; - retval = low_limb >> sh_2; - high_limb = low_limb; - while ( --i >= 0 ) - { - low_limb = up[i]; - wp[i] = (high_limb << sh_1) | (low_limb >> sh_2); - high_limb = low_limb; - } - wp[i] = high_limb << sh_1; - - return retval; -} - - diff --git a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/generic/mpih-mul1.c b/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/generic/mpih-mul1.c deleted file mode 100644 index 0e8197d88..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/generic/mpih-mul1.c +++ /dev/null @@ -1,62 +0,0 @@ -/* mpihelp-mul_1.c - MPI helper functions - * Copyright (C) 1994, 1996, 1997, 1998, 2001, - * 2002 Free Software Foundation, Inc. - * - * This file is part of Libgcrypt. - * - * Libgcrypt is free software; you can redistribute it and/or modify - * it under the terms of the GNU Lesser General Public License as - * published by the Free Software Foundation; either version 2.1 of - * the License, or (at your option) any later version. - * - * Libgcrypt is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA - * - * Note: This code is heavily based on the GNU MP Library. - * Actually it's the same code with only minor changes in the - * way the data is stored; this is to support the abstraction - * of an optional secure memory allocation which may be used - * to avoid revealing of sensitive data due to paging etc. - */ - -#include -#include -#include -#include "mpi-internal.h" -#include "longlong.h" - -mpi_limb_t -_gcry_mpih_mul_1( mpi_ptr_t res_ptr, mpi_ptr_t s1_ptr, mpi_size_t s1_size, - mpi_limb_t s2_limb) -{ - mpi_limb_t cy_limb; - mpi_size_t j; - mpi_limb_t prod_high, prod_low; - - /* The loop counter and index J goes from -S1_SIZE to -1. This way - * the loop becomes faster. */ - j = -s1_size; - - /* Offset the base pointers to compensate for the negative indices. */ - s1_ptr -= j; - res_ptr -= j; - - cy_limb = 0; - do - { - umul_ppmm( prod_high, prod_low, s1_ptr[j], s2_limb ); - prod_low += cy_limb; - cy_limb = (prod_low < cy_limb?1:0) + prod_high; - res_ptr[j] = prod_low; - } - while( ++j ); - - return cy_limb; -} - diff --git a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/generic/mpih-mul2.c b/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/generic/mpih-mul2.c deleted file mode 100644 index 3b7549605..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/generic/mpih-mul2.c +++ /dev/null @@ -1,68 +0,0 @@ -/* mpih-mul2.c - MPI helper functions - * Copyright (C) 1994, 1996, 1997, 1998, 2001, - * 2002 Free Software Foundation, Inc. - * - * This file is part of Libgcrypt. - * - * Libgcrypt is free software; you can redistribute it and/or modify - * it under the terms of the GNU Lesser General Public License as - * published by the Free Software Foundation; either version 2.1 of - * the License, or (at your option) any later version. - * - * Libgcrypt is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA - * - * Note: This code is heavily based on the GNU MP Library. - * Actually it's the same code with only minor changes in the - * way the data is stored; this is to support the abstraction - * of an optional secure memory allocation which may be used - * to avoid revealing of sensitive data due to paging etc. - */ - -#include -#include -#include -#include "mpi-internal.h" -#include "longlong.h" - - -mpi_limb_t -_gcry_mpih_addmul_1( mpi_ptr_t res_ptr, mpi_ptr_t s1_ptr, - mpi_size_t s1_size, mpi_limb_t s2_limb) -{ - mpi_limb_t cy_limb; - mpi_size_t j; - mpi_limb_t prod_high, prod_low; - mpi_limb_t x; - - /* The loop counter and index J goes from -SIZE to -1. This way - * the loop becomes faster. */ - j = -s1_size; - res_ptr -= j; - s1_ptr -= j; - - cy_limb = 0; - do - { - umul_ppmm( prod_high, prod_low, s1_ptr[j], s2_limb ); - - prod_low += cy_limb; - cy_limb = (prod_low < cy_limb?1:0) + prod_high; - - x = res_ptr[j]; - prod_low = x + prod_low; - cy_limb += prod_low < x?1:0; - res_ptr[j] = prod_low; - } - while ( ++j ); - - return cy_limb; -} - - diff --git a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/generic/mpih-mul3.c b/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/generic/mpih-mul3.c deleted file mode 100644 index 5e84f94f3..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/generic/mpih-mul3.c +++ /dev/null @@ -1,68 +0,0 @@ -/* mpih-mul3.c - MPI helper functions - * Copyright (C) 1994, 1996, 1997, 1998, 2001, - * 2002 Free Software Foundation, Inc. - * - * This file is part of Libgcrypt. - * - * Libgcrypt is free software; you can redistribute it and/or modify - * it under the terms of the GNU Lesser General Public License as - * published by the Free Software Foundation; either version 2.1 of - * the License, or (at your option) any later version. - * - * Libgcrypt is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA - * - * Note: This code is heavily based on the GNU MP Library. - * Actually it's the same code with only minor changes in the - * way the data is stored; this is to support the abstraction - * of an optional secure memory allocation which may be used - * to avoid revealing of sensitive data due to paging etc. - */ - -#include -#include -#include -#include "mpi-internal.h" -#include "longlong.h" - - -mpi_limb_t -_gcry_mpih_submul_1( mpi_ptr_t res_ptr, mpi_ptr_t s1_ptr, - mpi_size_t s1_size, mpi_limb_t s2_limb) -{ - mpi_limb_t cy_limb; - mpi_size_t j; - mpi_limb_t prod_high, prod_low; - mpi_limb_t x; - - /* The loop counter and index J goes from -SIZE to -1. This way - * the loop becomes faster. */ - j = -s1_size; - res_ptr -= j; - s1_ptr -= j; - - cy_limb = 0; - do - { - umul_ppmm( prod_high, prod_low, s1_ptr[j], s2_limb); - - prod_low += cy_limb; - cy_limb = (prod_low < cy_limb?1:0) + prod_high; - - x = res_ptr[j]; - prod_low = x - prod_low; - cy_limb += prod_low > x?1:0; - res_ptr[j] = prod_low; - } - while( ++j ); - - return cy_limb; -} - - diff --git a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/generic/mpih-rshift.c b/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/generic/mpih-rshift.c deleted file mode 100644 index e40794fcf..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/generic/mpih-rshift.c +++ /dev/null @@ -1,67 +0,0 @@ -/* mpih-rshift.c - MPI helper functions - * Copyright (C) 1994, 1996, 1998, 1999, - * 2000, 2001, 2002 Free Software Foundation, Inc. - * - * This file is part of Libgcrypt. - * - * Libgcrypt is free software; you can redistribute it and/or modify - * it under the terms of the GNU Lesser General Public License as - * published by the Free Software Foundation; either version 2.1 of - * the License, or (at your option) any later version. - * - * Libgcrypt is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA - * - * Note: This code is heavily based on the GNU MP Library. - * Actually it's the same code with only minor changes in the - * way the data is stored; this is to support the abstraction - * of an optional secure memory allocation which may be used - * to avoid revealing of sensitive data due to paging etc. - */ - -#include -#include -#include -#include "mpi-internal.h" - - -/* Shift U (pointed to by UP and USIZE limbs long) CNT bits to the right - * and store the USIZE least significant limbs of the result at WP. - * The bits shifted out to the right are returned. - * - * Argument constraints: - * 1. 0 < CNT < BITS_PER_MP_LIMB - * 2. If the result is to be written over the input, WP must be <= UP. - */ - -mpi_limb_t -_gcry_mpih_rshift( mpi_ptr_t wp, mpi_ptr_t up, mpi_size_t usize, unsigned cnt) -{ - mpi_limb_t high_limb, low_limb; - unsigned sh_1, sh_2; - mpi_size_t i; - mpi_limb_t retval; - - sh_1 = cnt; - wp -= 1; - sh_2 = BITS_PER_MPI_LIMB - sh_1; - high_limb = up[0]; - retval = high_limb << sh_2; - low_limb = high_limb; - for (i=1; i < usize; i++) - { - high_limb = up[i]; - wp[i] = (low_limb >> sh_1) | (high_limb << sh_2); - low_limb = high_limb; - } - wp[i] = low_limb >> sh_1; - - return retval; -} - diff --git a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/generic/mpih-sub1.c b/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/generic/mpih-sub1.c deleted file mode 100644 index e88821bfb..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/generic/mpih-sub1.c +++ /dev/null @@ -1,66 +0,0 @@ -/* mpihelp-add_2.c - MPI helper functions - * Copyright (C) 1994, 1996, 1997, 1998, 2001, - * 2002 Free Software Foundation, Inc. - * - * This file is part of Libgcrypt. - * - * Libgcrypt is free software; you can redistribute it and/or modify - * it under the terms of the GNU Lesser General Public License as - * published by the Free Software Foundation; either version 2.1 of - * the License, or (at your option) any later version. - * - * Libgcrypt is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA - * - * Note: This code is heavily based on the GNU MP Library. - * Actually it's the same code with only minor changes in the - * way the data is stored; this is to support the abstraction - * of an optional secure memory allocation which may be used - * to avoid revealing of sensitive data due to paging etc. - */ - -#include -#include -#include -#include "mpi-internal.h" -#include "longlong.h" - -mpi_limb_t -_gcry_mpih_sub_n( mpi_ptr_t res_ptr, mpi_ptr_t s1_ptr, - mpi_ptr_t s2_ptr, mpi_size_t size) -{ - mpi_limb_t x, y, cy; - mpi_size_t j; - - /* The loop counter and index J goes from -SIZE to -1. This way - the loop becomes faster. */ - j = -size; - - /* Offset the base pointers to compensate for the negative indices. */ - s1_ptr -= j; - s2_ptr -= j; - res_ptr -= j; - - cy = 0; - do - { - y = s2_ptr[j]; - x = s1_ptr[j]; - y += cy; /* add previous carry to subtrahend */ - cy = y < cy; /* get out carry from that addition */ - y = x - y; /* main subtract */ - cy += y > x; /* get out carry from the subtract, combine */ - res_ptr[j] = y; - } - while( ++j ); - - return cy; -} - - diff --git a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/generic/udiv-w-sdiv.c b/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/generic/udiv-w-sdiv.c deleted file mode 100644 index e80d98bc5..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/generic/udiv-w-sdiv.c +++ /dev/null @@ -1,133 +0,0 @@ -/* mpih-w-sdiv -- implement udiv_qrnnd on machines with only signed - * division. - * Copyright (C) 1992, 1994, 1996, 1998, 2002 Free Software Foundation, Inc. - * Contributed by Peter L. Montgomery. - * - * This file is part of Libgcrypt. - * - * Libgcrypt is free software; you can redistribute it and/or modify - * it under the terms of the GNU Lesser General Public License as - * published by the Free Software Foundation; either version 2.1 of - * the License, or (at your option) any later version. - * - * Libgcrypt is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA - */ - -#include -#include -#include -#include "mpi-internal.h" -#include "longlong.h" - - -#if 0 /* not yet ported to MPI */ - -mpi_limb_t -mpihelp_udiv_w_sdiv( mpi_limp_t *rp, - mpi_limp_t *a1, - mpi_limp_t *a0, - mpi_limp_t *d ) -{ - mp_limb_t q, r; - mp_limb_t c0, c1, b1; - - if ((mpi_limb_signed_t) d >= 0) - { - if (a1 < d - a1 - (a0 >> (BITS_PER_MP_LIMB - 1))) - { - /* dividend, divisor, and quotient are nonnegative */ - sdiv_qrnnd (q, r, a1, a0, d); - } - else - { - /* Compute c1*2^32 + c0 = a1*2^32 + a0 - 2^31*d */ - sub_ddmmss (c1, c0, a1, a0, d >> 1, d << (BITS_PER_MP_LIMB - 1)); - /* Divide (c1*2^32 + c0) by d */ - sdiv_qrnnd (q, r, c1, c0, d); - /* Add 2^31 to quotient */ - q += (mp_limb_t) 1 << (BITS_PER_MP_LIMB - 1); - } - } - else - { - b1 = d >> 1; /* d/2, between 2^30 and 2^31 - 1 */ - c1 = a1 >> 1; /* A/2 */ - c0 = (a1 << (BITS_PER_MP_LIMB - 1)) + (a0 >> 1); - - if (a1 < b1) /* A < 2^32*b1, so A/2 < 2^31*b1 */ - { - sdiv_qrnnd (q, r, c1, c0, b1); /* (A/2) / (d/2) */ - - r = 2*r + (a0 & 1); /* Remainder from A/(2*b1) */ - if ((d & 1) != 0) - { - if (r >= q) - r = r - q; - else if (q - r <= d) - { - r = r - q + d; - q--; - } - else - { - r = r - q + 2*d; - q -= 2; - } - } - } - else if (c1 < b1) /* So 2^31 <= (A/2)/b1 < 2^32 */ - { - c1 = (b1 - 1) - c1; - c0 = ~c0; /* logical NOT */ - - sdiv_qrnnd (q, r, c1, c0, b1); /* (A/2) / (d/2) */ - - q = ~q; /* (A/2)/b1 */ - r = (b1 - 1) - r; - - r = 2*r + (a0 & 1); /* A/(2*b1) */ - - if ((d & 1) != 0) - { - if (r >= q) - r = r - q; - else if (q - r <= d) - { - r = r - q + d; - q--; - } - else - { - r = r - q + 2*d; - q -= 2; - } - } - } - else /* Implies c1 = b1 */ - { /* Hence a1 = d - 1 = 2*b1 - 1 */ - if (a0 >= -d) - { - q = -1; - r = a0 + d; - } - else - { - q = -2; - r = a0 + 2*d; - } - } - } - - *rp = r; - return q; -} - -#endif - diff --git a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/longlong.h b/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/longlong.h deleted file mode 100644 index 37a9b9aef..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/longlong.h +++ /dev/null @@ -1,1615 +0,0 @@ -/* This file was automatically imported with - import_gcry.py. Please don't modify it */ -/* longlong.h -- definitions for mixed size 32/64 bit arithmetic. - Note: I added some stuff for use with gnupg - -Copyright (C) 1991, 1992, 1993, 1994, 1996, 1998, - 2000, 2001, 2002, 2003, 2004, 2011 Free Software Foundation, Inc. - -This file is free software; you can redistribute it and/or modify -it under the terms of the GNU Lesser General Public License as published by -the Free Software Foundation; either version 2.1 of the License, or (at your -option) any later version. - -This file is distributed in the hope that it will be useful, but -WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY -or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public -License for more details. - -You should have received a copy of the GNU Library General Public License -along with this file; see the file COPYING.LIB. If not, write to -the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, -MA 02111-1307, USA. */ - -/* You have to define the following before including this file: - - UWtype -- An unsigned type, default type for operations (typically a "word") - UHWtype -- An unsigned type, at least half the size of UWtype. - UDWtype -- An unsigned type, at least twice as large a UWtype - W_TYPE_SIZE -- size in bits of UWtype - - SItype, USItype -- Signed and unsigned 32 bit types. - DItype, UDItype -- Signed and unsigned 64 bit types. - - On a 32 bit machine UWtype should typically be USItype; - on a 64 bit machine, UWtype should typically be UDItype. -*/ - -#define __BITS4 (W_TYPE_SIZE / 4) -#define __ll_B ((UWtype) 1 << (W_TYPE_SIZE / 2)) -#define __ll_lowpart(t) ((UWtype) (t) & (__ll_B - 1)) -#define __ll_highpart(t) ((UWtype) (t) >> (W_TYPE_SIZE / 2)) - -/* This is used to make sure no undesirable sharing between different libraries - that use this file takes place. */ -#ifndef __MPN -#define __MPN(x) __##x -#endif - -/* Define auxiliary asm macros. - - 1) umul_ppmm(high_prod, low_prod, multipler, multiplicand) multiplies two - UWtype integers MULTIPLER and MULTIPLICAND, and generates a two UWtype - word product in HIGH_PROD and LOW_PROD. - - 2) __umulsidi3(a,b) multiplies two UWtype integers A and B, and returns a - UDWtype product. This is just a variant of umul_ppmm. - - 3) udiv_qrnnd(quotient, remainder, high_numerator, low_numerator, - denominator) divides a UDWtype, composed by the UWtype integers - HIGH_NUMERATOR and LOW_NUMERATOR, by DENOMINATOR and places the quotient - in QUOTIENT and the remainder in REMAINDER. HIGH_NUMERATOR must be less - than DENOMINATOR for correct operation. If, in addition, the most - significant bit of DENOMINATOR must be 1, then the pre-processor symbol - UDIV_NEEDS_NORMALIZATION is defined to 1. - - 4) sdiv_qrnnd(quotient, remainder, high_numerator, low_numerator, - denominator). Like udiv_qrnnd but the numbers are signed. The quotient - is rounded towards 0. - - 5) count_leading_zeros(count, x) counts the number of zero-bits from the - msb to the first non-zero bit in the UWtype X. This is the number of - steps X needs to be shifted left to set the msb. Undefined for X == 0, - unless the symbol COUNT_LEADING_ZEROS_0 is defined to some value. - - 6) count_trailing_zeros(count, x) like count_leading_zeros, but counts - from the least significant end. - - 7) add_ssaaaa(high_sum, low_sum, high_addend_1, low_addend_1, - high_addend_2, low_addend_2) adds two UWtype integers, composed by - HIGH_ADDEND_1 and LOW_ADDEND_1, and HIGH_ADDEND_2 and LOW_ADDEND_2 - respectively. The result is placed in HIGH_SUM and LOW_SUM. Overflow - (i.e. carry out) is not stored anywhere, and is lost. - - 8) sub_ddmmss(high_difference, low_difference, high_minuend, low_minuend, - high_subtrahend, low_subtrahend) subtracts two two-word UWtype integers, - composed by HIGH_MINUEND_1 and LOW_MINUEND_1, and HIGH_SUBTRAHEND_2 and - LOW_SUBTRAHEND_2 respectively. The result is placed in HIGH_DIFFERENCE - and LOW_DIFFERENCE. Overflow (i.e. carry out) is not stored anywhere, - and is lost. - - If any of these macros are left undefined for a particular CPU, - C macros are used. */ - -/* The CPUs come in alphabetical order below. - - Please add support for more CPUs here, or improve the current support - for the CPUs below! */ - -#ifdef __riscos__ -#pragma continue_after_hash_error -#else /* !__riscos__ */ -#if defined (__GNUC__) && !defined (NO_ASM) - -/* We sometimes need to clobber "cc" with gcc2, but that would not be - understood by gcc1. Use cpp to avoid major code duplication. */ -#if __GNUC__ < 2 -#define __CLOBBER_CC -#define __AND_CLOBBER_CC -#else /* __GNUC__ >= 2 */ -#define __CLOBBER_CC : "cc" -#define __AND_CLOBBER_CC , "cc" -#endif /* __GNUC__ < 2 */ - - -/*************************************** - ************** A29K ***************** - ***************************************/ -#if (defined (__a29k__) || defined (_AM29K)) && W_TYPE_SIZE == 32 -#define add_ssaaaa(sh, sl, ah, al, bh, bl) \ - __asm__ ("add %1,%4,%5\n" \ - "addc %0,%2,%3" \ - : "=r" ((USItype)(sh)), \ - "=&r" ((USItype)(sl)) \ - : "%r" ((USItype)(ah)), \ - "rI" ((USItype)(bh)), \ - "%r" ((USItype)(al)), \ - "rI" ((USItype)(bl))) -#define sub_ddmmss(sh, sl, ah, al, bh, bl) \ - __asm__ ("sub %1,%4,%5\n" \ - "subc %0,%2,%3" \ - : "=r" ((USItype)(sh)), \ - "=&r" ((USItype)(sl)) \ - : "r" ((USItype)(ah)), \ - "rI" ((USItype)(bh)), \ - "r" ((USItype)(al)), \ - "rI" ((USItype)(bl))) -#define umul_ppmm(xh, xl, m0, m1) \ - do { \ - USItype __m0 = (m0), __m1 = (m1); \ - __asm__ ("multiplu %0,%1,%2" \ - : "=r" ((USItype)(xl)) \ - : "r" (__m0), \ - "r" (__m1)); \ - __asm__ ("multmu %0,%1,%2" \ - : "=r" ((USItype)(xh)) \ - : "r" (__m0), \ - "r" (__m1)); \ - } while (0) -#define udiv_qrnnd(q, r, n1, n0, d) \ - __asm__ ("dividu %0,%3,%4" \ - : "=r" ((USItype)(q)), \ - "=q" ((USItype)(r)) \ - : "1" ((USItype)(n1)), \ - "r" ((USItype)(n0)), \ - "r" ((USItype)(d))) -#define count_leading_zeros(count, x) \ - __asm__ ("clz %0,%1" \ - : "=r" ((USItype)(count)) \ - : "r" ((USItype)(x))) -#define COUNT_LEADING_ZEROS_0 32 -#endif /* __a29k__ */ - - -#if defined (__alpha) && W_TYPE_SIZE == 64 -#define umul_ppmm(ph, pl, m0, m1) \ - do { \ - UDItype __m0 = (m0), __m1 = (m1); \ - __asm__ ("umulh %r1,%2,%0" \ - : "=r" ((UDItype) ph) \ - : "%rJ" (__m0), \ - "rI" (__m1)); \ - (pl) = __m0 * __m1; \ - } while (0) -#define UMUL_TIME 46 -#ifndef LONGLONG_STANDALONE -#define udiv_qrnnd(q, r, n1, n0, d) \ - do { UDItype __r; \ - (q) = __udiv_qrnnd (&__r, (n1), (n0), (d)); \ - (r) = __r; \ - } while (0) -extern UDItype __udiv_qrnnd (); -#define UDIV_TIME 220 -#endif /* LONGLONG_STANDALONE */ -#endif /* __alpha */ - -/*************************************** - ************** ARM ****************** - ***************************************/ -#if defined (__arm__) && W_TYPE_SIZE == 32 && \ - (!defined (__thumb__) || defined (__thumb2__)) -/* The __ARM_ARCH define is provided by gcc 4.8. Construct it otherwise. */ -#ifndef __ARM_ARCH -# ifdef __ARM_ARCH_2__ -# define __ARM_ARCH 2 -# elif defined (__ARM_ARCH_3__) || defined (__ARM_ARCH_3M__) -# define __ARM_ARCH 3 -# elif defined (__ARM_ARCH_4__) || defined (__ARM_ARCH_4T__) -# define __ARM_ARCH 4 -# elif defined (__ARM_ARCH_5__) || defined (__ARM_ARCH_5E__) \ - || defined(__ARM_ARCH_5T__) || defined(__ARM_ARCH_5TE__) \ - || defined(__ARM_ARCH_5TEJ__) -# define __ARM_ARCH 5 -# elif defined (__ARM_ARCH_6__) || defined(__ARM_ARCH_6J__) \ - || defined (__ARM_ARCH_6Z__) || defined(__ARM_ARCH_6ZK__) \ - || defined (__ARM_ARCH_6K__) || defined(__ARM_ARCH_6T2__) -# define __ARM_ARCH 6 -# elif defined (__ARM_ARCH_7__) || defined(__ARM_ARCH_7A__) \ - || defined(__ARM_ARCH_7R__) || defined(__ARM_ARCH_7M__) \ - || defined(__ARM_ARCH_7EM__) -# define __ARM_ARCH 7 -# else - /* could not detect? */ -# endif -#endif -#define add_ssaaaa(sh, sl, ah, al, bh, bl) \ - __asm__ ("adds %1, %4, %5\n" \ - "adc %0, %2, %3" \ - : "=r" ((sh)), \ - "=&r" ((sl)) \ - : "%r" ((USItype)(ah)), \ - "rI" ((USItype)(bh)), \ - "%r" ((USItype)(al)), \ - "rI" ((USItype)(bl)) __CLOBBER_CC) -#define sub_ddmmss(sh, sl, ah, al, bh, bl) \ - __asm__ ("subs %1, %4, %5\n" \ - "sbc %0, %2, %3" \ - : "=r" ((sh)), \ - "=&r" ((sl)) \ - : "r" ((USItype)(ah)), \ - "rI" ((USItype)(bh)), \ - "r" ((USItype)(al)), \ - "rI" ((USItype)(bl)) __CLOBBER_CC) -#if (defined __ARM_ARCH && __ARM_ARCH <= 3) -#define umul_ppmm(xh, xl, a, b) \ - __asm__ ("@ Inlined umul_ppmm\n" \ - "mov %|r0, %2, lsr #16 @ AAAA\n" \ - "mov %|r2, %3, lsr #16 @ BBBB\n" \ - "bic %|r1, %2, %|r0, lsl #16 @ aaaa\n" \ - "bic %0, %3, %|r2, lsl #16 @ bbbb\n" \ - "mul %1, %|r1, %|r2 @ aaaa * BBBB\n" \ - "mul %|r2, %|r0, %|r2 @ AAAA * BBBB\n" \ - "mul %|r1, %0, %|r1 @ aaaa * bbbb\n" \ - "mul %0, %|r0, %0 @ AAAA * bbbb\n" \ - "adds %|r0, %1, %0 @ central sum\n" \ - "addcs %|r2, %|r2, #65536\n" \ - "adds %1, %|r1, %|r0, lsl #16\n" \ - "adc %0, %|r2, %|r0, lsr #16" \ - : "=&r" ((xh)), \ - "=r" ((xl)) \ - : "r" ((USItype)(a)), \ - "r" ((USItype)(b)) \ - : "r0", "r1", "r2" __AND_CLOBBER_CC) -#else /* __ARM_ARCH >= 4 */ -#define umul_ppmm(xh, xl, a, b) \ - __asm__ ("@ Inlined umul_ppmm\n" \ - "umull %1, %0, %2, %3" \ - : "=&r" ((xh)), \ - "=r" ((xl)) \ - : "r" ((USItype)(a)), \ - "r" ((USItype)(b))) -#endif /* __ARM_ARCH >= 4 */ -#define UMUL_TIME 20 -#define UDIV_TIME 100 -#if (defined __ARM_ARCH && __ARM_ARCH >= 5) -#define count_leading_zeros(count, x) \ - __asm__ ("clz %0, %1" \ - : "=r" ((count)) \ - : "r" ((USItype)(x))) -#endif /* __ARM_ARCH >= 5 */ -#endif /* __arm__ */ - -/*************************************** - ************** CLIPPER ************** - ***************************************/ -#if defined (__clipper__) && W_TYPE_SIZE == 32 -#define umul_ppmm(w1, w0, u, v) \ - ({union {UDItype __ll; \ - struct {USItype __l, __h;} __i; \ - } __xx; \ - __asm__ ("mulwux %2,%0" \ - : "=r" (__xx.__ll) \ - : "%0" ((USItype)(u)), \ - "r" ((USItype)(v))); \ - (w1) = __xx.__i.__h; (w0) = __xx.__i.__l;}) -#define smul_ppmm(w1, w0, u, v) \ - ({union {DItype __ll; \ - struct {SItype __l, __h;} __i; \ - } __xx; \ - __asm__ ("mulwx %2,%0" \ - : "=r" (__xx.__ll) \ - : "%0" ((SItype)(u)), \ - "r" ((SItype)(v))); \ - (w1) = __xx.__i.__h; (w0) = __xx.__i.__l;}) -#define __umulsidi3(u, v) \ - ({UDItype __w; \ - __asm__ ("mulwux %2,%0" \ - : "=r" (__w) \ - : "%0" ((USItype)(u)), \ - "r" ((USItype)(v))); \ - __w; }) -#endif /* __clipper__ */ - - -/*************************************** - ************** GMICRO *************** - ***************************************/ -#if defined (__gmicro__) && W_TYPE_SIZE == 32 -#define add_ssaaaa(sh, sl, ah, al, bh, bl) \ - __asm__ ("add.w %5,%1\n" \ - "addx %3,%0" \ - : "=g" ((USItype)(sh)), \ - "=&g" ((USItype)(sl)) \ - : "%0" ((USItype)(ah)), \ - "g" ((USItype)(bh)), \ - "%1" ((USItype)(al)), \ - "g" ((USItype)(bl))) -#define sub_ddmmss(sh, sl, ah, al, bh, bl) \ - __asm__ ("sub.w %5,%1\n" \ - "subx %3,%0" \ - : "=g" ((USItype)(sh)), \ - "=&g" ((USItype)(sl)) \ - : "0" ((USItype)(ah)), \ - "g" ((USItype)(bh)), \ - "1" ((USItype)(al)), \ - "g" ((USItype)(bl))) -#define umul_ppmm(ph, pl, m0, m1) \ - __asm__ ("mulx %3,%0,%1" \ - : "=g" ((USItype)(ph)), \ - "=r" ((USItype)(pl)) \ - : "%0" ((USItype)(m0)), \ - "g" ((USItype)(m1))) -#define udiv_qrnnd(q, r, nh, nl, d) \ - __asm__ ("divx %4,%0,%1" \ - : "=g" ((USItype)(q)), \ - "=r" ((USItype)(r)) \ - : "1" ((USItype)(nh)), \ - "0" ((USItype)(nl)), \ - "g" ((USItype)(d))) -#define count_leading_zeros(count, x) \ - __asm__ ("bsch/1 %1,%0" \ - : "=g" (count) \ - : "g" ((USItype)(x)), \ - "0" ((USItype)0)) -#endif - - -/*************************************** - ************** HPPA ***************** - ***************************************/ -#if defined (__hppa) && W_TYPE_SIZE == 32 -#define add_ssaaaa(sh, sl, ah, al, bh, bl) \ - __asm__ (" add %4,%5,%1\n" \ - " addc %2,%3,%0" \ - : "=r" ((USItype)(sh)), \ - "=&r" ((USItype)(sl)) \ - : "%rM" ((USItype)(ah)), \ - "rM" ((USItype)(bh)), \ - "%rM" ((USItype)(al)), \ - "rM" ((USItype)(bl))) -#define sub_ddmmss(sh, sl, ah, al, bh, bl) \ - __asm__ (" sub %4,%5,%1\n" \ - " subb %2,%3,%0" \ - : "=r" ((USItype)(sh)), \ - "=&r" ((USItype)(sl)) \ - : "rM" ((USItype)(ah)), \ - "rM" ((USItype)(bh)), \ - "rM" ((USItype)(al)), \ - "rM" ((USItype)(bl))) -#if defined (_PA_RISC1_1) -#define umul_ppmm(wh, wl, u, v) \ - do { \ - union {UDItype __ll; \ - struct {USItype __h, __l;} __i; \ - } __xx; \ - __asm__ (" xmpyu %1,%2,%0" \ - : "=*f" (__xx.__ll) \ - : "*f" ((USItype)(u)), \ - "*f" ((USItype)(v))); \ - (wh) = __xx.__i.__h; \ - (wl) = __xx.__i.__l; \ - } while (0) -#define UMUL_TIME 8 -#define UDIV_TIME 60 -#else -#define UMUL_TIME 40 -#define UDIV_TIME 80 -#endif -#ifndef LONGLONG_STANDALONE -#define udiv_qrnnd(q, r, n1, n0, d) \ - do { USItype __r; \ - (q) = __udiv_qrnnd (&__r, (n1), (n0), (d)); \ - (r) = __r; \ - } while (0) -extern USItype __udiv_qrnnd (); -#endif /* LONGLONG_STANDALONE */ -#define count_leading_zeros(count, x) \ - do { \ - USItype __tmp; \ - __asm__ ( \ - " ldi 1,%0 \n" \ - " extru,= %1,15,16,%%r0 ; Bits 31..16 zero? \n" \ - " extru,tr %1,15,16,%1 ; No. Shift down, skip add.\n" \ - " ldo 16(%0),%0 ; Yes. Perform add. \n" \ - " extru,= %1,23,8,%%r0 ; Bits 15..8 zero? \n" \ - " extru,tr %1,23,8,%1 ; No. Shift down, skip add.\n" \ - " ldo 8(%0),%0 ; Yes. Perform add. \n" \ - " extru,= %1,27,4,%%r0 ; Bits 7..4 zero? \n" \ - " extru,tr %1,27,4,%1 ; No. Shift down, skip add.\n" \ - " ldo 4(%0),%0 ; Yes. Perform add. \n" \ - " extru,= %1,29,2,%%r0 ; Bits 3..2 zero? \n" \ - " extru,tr %1,29,2,%1 ; No. Shift down, skip add.\n" \ - " ldo 2(%0),%0 ; Yes. Perform add. \n" \ - " extru %1,30,1,%1 ; Extract bit 1. \n" \ - " sub %0,%1,%0 ; Subtract it. " \ - : "=r" (count), "=r" (__tmp) : "1" (x)); \ - } while (0) -#endif /* hppa */ - - -/*************************************** - ************** I370 ***************** - ***************************************/ -#if (defined (__i370__) || defined (__mvs__)) && W_TYPE_SIZE == 32 -#define umul_ppmm(xh, xl, m0, m1) \ - do { \ - union {UDItype __ll; \ - struct {USItype __h, __l;} __i; \ - } __xx; \ - USItype __m0 = (m0), __m1 = (m1); \ - __asm__ ("mr %0,%3" \ - : "=r" (__xx.__i.__h), \ - "=r" (__xx.__i.__l) \ - : "%1" (__m0), \ - "r" (__m1)); \ - (xh) = __xx.__i.__h; (xl) = __xx.__i.__l; \ - (xh) += ((((SItype) __m0 >> 31) & __m1) \ - + (((SItype) __m1 >> 31) & __m0)); \ - } while (0) -#define smul_ppmm(xh, xl, m0, m1) \ - do { \ - union {DItype __ll; \ - struct {USItype __h, __l;} __i; \ - } __xx; \ - __asm__ ("mr %0,%3" \ - : "=r" (__xx.__i.__h), \ - "=r" (__xx.__i.__l) \ - : "%1" (m0), \ - "r" (m1)); \ - (xh) = __xx.__i.__h; (xl) = __xx.__i.__l; \ - } while (0) -#define sdiv_qrnnd(q, r, n1, n0, d) \ - do { \ - union {DItype __ll; \ - struct {USItype __h, __l;} __i; \ - } __xx; \ - __xx.__i.__h = n1; __xx.__i.__l = n0; \ - __asm__ ("dr %0,%2" \ - : "=r" (__xx.__ll) \ - : "0" (__xx.__ll), "r" (d)); \ - (q) = __xx.__i.__l; (r) = __xx.__i.__h; \ - } while (0) -#endif - - -/*************************************** - ************** I386 ***************** - ***************************************/ -#if (defined (__i386__) || defined (__i486__)) && W_TYPE_SIZE == 32 -#define add_ssaaaa(sh, sl, ah, al, bh, bl) \ - __asm__ ("addl %5,%1\n" \ - "adcl %3,%0" \ - : "=r" ((sh)), \ - "=&r" ((sl)) \ - : "%0" ((USItype)(ah)), \ - "g" ((USItype)(bh)), \ - "%1" ((USItype)(al)), \ - "g" ((USItype)(bl)) \ - __CLOBBER_CC) -#define sub_ddmmss(sh, sl, ah, al, bh, bl) \ - __asm__ ("subl %5,%1\n" \ - "sbbl %3,%0" \ - : "=r" ((sh)), \ - "=&r" ((sl)) \ - : "0" ((USItype)(ah)), \ - "g" ((USItype)(bh)), \ - "1" ((USItype)(al)), \ - "g" ((USItype)(bl)) \ - __CLOBBER_CC) -#define umul_ppmm(w1, w0, u, v) \ - __asm__ ("mull %3" \ - : "=a" ((w0)), \ - "=d" ((w1)) \ - : "%0" ((USItype)(u)), \ - "rm" ((USItype)(v)) \ - __CLOBBER_CC) -#define udiv_qrnnd(q, r, n1, n0, d) \ - __asm__ ("divl %4" \ - : "=a" ((q)), \ - "=d" ((r)) \ - : "0" ((USItype)(n0)), \ - "1" ((USItype)(n1)), \ - "rm" ((USItype)(d)) \ - __CLOBBER_CC) -#define count_leading_zeros(count, x) \ - do { \ - USItype __cbtmp; \ - __asm__ ("bsrl %1,%0" \ - : "=r" (__cbtmp) : "rm" ((USItype)(x)) \ - __CLOBBER_CC); \ - (count) = __cbtmp ^ 31; \ - } while (0) -#define count_trailing_zeros(count, x) \ - __asm__ ("bsfl %1,%0" : "=r" (count) : "rm" ((USItype)(x)) __CLOBBER_CC) -#ifndef UMUL_TIME -#define UMUL_TIME 40 -#endif -#ifndef UDIV_TIME -#define UDIV_TIME 40 -#endif -#endif /* 80x86 */ - - -/*************************************** - ************** I860 ***************** - ***************************************/ -#if defined (__i860__) && W_TYPE_SIZE == 32 -#define rshift_rhlc(r,h,l,c) \ - __asm__ ("shr %3,r0,r0\n" \ - "shrd %1,%2,%0" \ - "=r" (r) : "r" (h), "r" (l), "rn" (c)) -#endif /* i860 */ - -/*************************************** - ************** I960 ***************** - ***************************************/ -#if defined (__i960__) && W_TYPE_SIZE == 32 -#define add_ssaaaa(sh, sl, ah, al, bh, bl) \ - __asm__ ("cmpo 1,0\n" \ - "addc %5,%4,%1\n" \ - "addc %3,%2,%0" \ - : "=r" ((USItype)(sh)), \ - "=&r" ((USItype)(sl)) \ - : "%dI" ((USItype)(ah)), \ - "dI" ((USItype)(bh)), \ - "%dI" ((USItype)(al)), \ - "dI" ((USItype)(bl))) -#define sub_ddmmss(sh, sl, ah, al, bh, bl) \ - __asm__ ("cmpo 0,0\n" \ - "subc %5,%4,%1\n" \ - "subc %3,%2,%0" \ - : "=r" ((USItype)(sh)), \ - "=&r" ((USItype)(sl)) \ - : "dI" ((USItype)(ah)), \ - "dI" ((USItype)(bh)), \ - "dI" ((USItype)(al)), \ - "dI" ((USItype)(bl))) -#define umul_ppmm(w1, w0, u, v) \ - ({union {UDItype __ll; \ - struct {USItype __l, __h;} __i; \ - } __xx; \ - __asm__ ("emul %2,%1,%0" \ - : "=d" (__xx.__ll) \ - : "%dI" ((USItype)(u)), \ - "dI" ((USItype)(v))); \ - (w1) = __xx.__i.__h; (w0) = __xx.__i.__l;}) -#define __umulsidi3(u, v) \ - ({UDItype __w; \ - __asm__ ("emul %2,%1,%0" \ - : "=d" (__w) \ - : "%dI" ((USItype)(u)), \ - "dI" ((USItype)(v))); \ - __w; }) -#define udiv_qrnnd(q, r, nh, nl, d) \ - do { \ - union {UDItype __ll; \ - struct {USItype __l, __h;} __i; \ - } __nn; \ - __nn.__i.__h = (nh); __nn.__i.__l = (nl); \ - __asm__ ("ediv %d,%n,%0" \ - : "=d" (__rq.__ll) \ - : "dI" (__nn.__ll), \ - "dI" ((USItype)(d))); \ - (r) = __rq.__i.__l; (q) = __rq.__i.__h; \ - } while (0) -#define count_leading_zeros(count, x) \ - do { \ - USItype __cbtmp; \ - __asm__ ("scanbit %1,%0" \ - : "=r" (__cbtmp) \ - : "r" ((USItype)(x))); \ - (count) = __cbtmp ^ 31; \ - } while (0) -#define COUNT_LEADING_ZEROS_0 (-32) /* sic */ -#if defined (__i960mx) /* what is the proper symbol to test??? */ -#define rshift_rhlc(r,h,l,c) \ - do { \ - union {UDItype __ll; \ - struct {USItype __l, __h;} __i; \ - } __nn; \ - __nn.__i.__h = (h); __nn.__i.__l = (l); \ - __asm__ ("shre %2,%1,%0" \ - : "=d" (r) : "dI" (__nn.__ll), "dI" (c)); \ - } -#endif /* i960mx */ -#endif /* i960 */ - - -/*************************************** - ************** 68000 **************** - ***************************************/ -#if (defined (__mc68000__) || defined (__mc68020__) || defined (__NeXT__) || defined(mc68020)) && W_TYPE_SIZE == 32 -#define add_ssaaaa(sh, sl, ah, al, bh, bl) \ - __asm__ ("add%.l %5,%1\n" \ - "addx%.l %3,%0" \ - : "=d" ((USItype)(sh)), \ - "=&d" ((USItype)(sl)) \ - : "%0" ((USItype)(ah)), \ - "d" ((USItype)(bh)), \ - "%1" ((USItype)(al)), \ - "g" ((USItype)(bl))) -#define sub_ddmmss(sh, sl, ah, al, bh, bl) \ - __asm__ ("sub%.l %5,%1\n" \ - "subx%.l %3,%0" \ - : "=d" ((USItype)(sh)), \ - "=&d" ((USItype)(sl)) \ - : "0" ((USItype)(ah)), \ - "d" ((USItype)(bh)), \ - "1" ((USItype)(al)), \ - "g" ((USItype)(bl))) -#if (defined (__mc68020__) || defined (__NeXT__) || defined(mc68020)) -#define umul_ppmm(w1, w0, u, v) \ - __asm__ ("mulu%.l %3,%1:%0" \ - : "=d" ((USItype)(w0)), \ - "=d" ((USItype)(w1)) \ - : "%0" ((USItype)(u)), \ - "dmi" ((USItype)(v))) -#define UMUL_TIME 45 -#define udiv_qrnnd(q, r, n1, n0, d) \ - __asm__ ("divu%.l %4,%1:%0" \ - : "=d" ((USItype)(q)), \ - "=d" ((USItype)(r)) \ - : "0" ((USItype)(n0)), \ - "1" ((USItype)(n1)), \ - "dmi" ((USItype)(d))) -#define UDIV_TIME 90 -#define sdiv_qrnnd(q, r, n1, n0, d) \ - __asm__ ("divs%.l %4,%1:%0" \ - : "=d" ((USItype)(q)), \ - "=d" ((USItype)(r)) \ - : "0" ((USItype)(n0)), \ - "1" ((USItype)(n1)), \ - "dmi" ((USItype)(d))) -#define count_leading_zeros(count, x) \ - __asm__ ("bfffo %1{%b2:%b2},%0" \ - : "=d" ((USItype)(count)) \ - : "od" ((USItype)(x)), "n" (0)) -#define COUNT_LEADING_ZEROS_0 32 -#else /* not mc68020 */ -#define umul_ppmm(xh, xl, a, b) \ - do { USItype __umul_tmp1, __umul_tmp2; \ - __asm__ ("| Inlined umul_ppmm \n" \ - " move%.l %5,%3 \n" \ - " move%.l %2,%0 \n" \ - " move%.w %3,%1 \n" \ - " swap %3 \n" \ - " swap %0 \n" \ - " mulu %2,%1 \n" \ - " mulu %3,%0 \n" \ - " mulu %2,%3 \n" \ - " swap %2 \n" \ - " mulu %5,%2 \n" \ - " add%.l %3,%2 \n" \ - " jcc 1f \n" \ - " add%.l %#0x10000,%0 \n" \ - "1: move%.l %2,%3 \n" \ - " clr%.w %2 \n" \ - " swap %2 \n" \ - " swap %3 \n" \ - " clr%.w %3 \n" \ - " add%.l %3,%1 \n" \ - " addx%.l %2,%0 \n" \ - " | End inlined umul_ppmm" \ - : "=&d" ((USItype)(xh)), "=&d" ((USItype)(xl)), \ - "=d" (__umul_tmp1), "=&d" (__umul_tmp2) \ - : "%2" ((USItype)(a)), "d" ((USItype)(b))); \ - } while (0) -#define UMUL_TIME 100 -#define UDIV_TIME 400 -#endif /* not mc68020 */ -#endif /* mc68000 */ - - -/*************************************** - ************** 88000 **************** - ***************************************/ -#if defined (__m88000__) && W_TYPE_SIZE == 32 -#define add_ssaaaa(sh, sl, ah, al, bh, bl) \ - __asm__ ("addu.co %1,%r4,%r5\n" \ - "addu.ci %0,%r2,%r3" \ - : "=r" ((USItype)(sh)), \ - "=&r" ((USItype)(sl)) \ - : "%rJ" ((USItype)(ah)), \ - "rJ" ((USItype)(bh)), \ - "%rJ" ((USItype)(al)), \ - "rJ" ((USItype)(bl))) -#define sub_ddmmss(sh, sl, ah, al, bh, bl) \ - __asm__ ("subu.co %1,%r4,%r5\n" \ - "subu.ci %0,%r2,%r3" \ - : "=r" ((USItype)(sh)), \ - "=&r" ((USItype)(sl)) \ - : "rJ" ((USItype)(ah)), \ - "rJ" ((USItype)(bh)), \ - "rJ" ((USItype)(al)), \ - "rJ" ((USItype)(bl))) -#define count_leading_zeros(count, x) \ - do { \ - USItype __cbtmp; \ - __asm__ ("ff1 %0,%1" \ - : "=r" (__cbtmp) \ - : "r" ((USItype)(x))); \ - (count) = __cbtmp ^ 31; \ - } while (0) -#define COUNT_LEADING_ZEROS_0 63 /* sic */ -#if defined (__m88110__) -#define umul_ppmm(wh, wl, u, v) \ - do { \ - union {UDItype __ll; \ - struct {USItype __h, __l;} __i; \ - } __x; \ - __asm__ ("mulu.d %0,%1,%2" : "=r" (__x.__ll) : "r" (u), "r" (v)); \ - (wh) = __x.__i.__h; \ - (wl) = __x.__i.__l; \ - } while (0) -#define udiv_qrnnd(q, r, n1, n0, d) \ - ({union {UDItype __ll; \ - struct {USItype __h, __l;} __i; \ - } __x, __q; \ - __x.__i.__h = (n1); __x.__i.__l = (n0); \ - __asm__ ("divu.d %0,%1,%2" \ - : "=r" (__q.__ll) : "r" (__x.__ll), "r" (d)); \ - (r) = (n0) - __q.__l * (d); (q) = __q.__l; }) -#define UMUL_TIME 5 -#define UDIV_TIME 25 -#else -#define UMUL_TIME 17 -#define UDIV_TIME 150 -#endif /* __m88110__ */ -#endif /* __m88000__ */ - -/*************************************** - ************** MIPS ***************** - ***************************************/ -#if defined (__mips__) && W_TYPE_SIZE == 32 -#if defined (__clang__) || (__GNUC__ >= 5) || (__GNUC__ == 4 && __GNUC_MINOR__ >= 4) -#define umul_ppmm(w1, w0, u, v) \ - do { \ - UDItype _r; \ - _r = (UDItype) u * v; \ - (w1) = _r >> 32; \ - (w0) = (USItype) _r; \ - } while (0) -#elif __GNUC__ > 2 || __GNUC_MINOR__ >= 7 -#define umul_ppmm(w1, w0, u, v) \ - __asm__ ("multu %2,%3" \ - : "=l" ((USItype)(w0)), \ - "=h" ((USItype)(w1)) \ - : "d" ((USItype)(u)), \ - "d" ((USItype)(v))) -#else -#define umul_ppmm(w1, w0, u, v) \ - __asm__ ("multu %2,%3 \n" \ - "mflo %0 \n" \ - "mfhi %1" \ - : "=d" ((USItype)(w0)), \ - "=d" ((USItype)(w1)) \ - : "d" ((USItype)(u)), \ - "d" ((USItype)(v))) -#endif -#define UMUL_TIME 10 -#define UDIV_TIME 100 -#endif /* __mips__ */ - -/*************************************** - ************** MIPS/64 ************** - ***************************************/ -#if (defined (__mips) && __mips >= 3) && W_TYPE_SIZE == 64 -#if (__GNUC__ >= 5) || (__GNUC__ == 4 && __GNUC_MINOR__ >= 4) -typedef unsigned int UTItype __attribute__ ((mode (TI))); -#define umul_ppmm(w1, w0, u, v) \ - do { \ - UTItype _r; \ - _r = (UTItype) u * v; \ - (w1) = _r >> 64; \ - (w0) = (UDItype) _r; \ - } while (0) -#elif __GNUC__ > 2 || __GNUC_MINOR__ >= 7 -#define umul_ppmm(w1, w0, u, v) \ - __asm__ ("dmultu %2,%3" \ - : "=l" ((UDItype)(w0)), \ - "=h" ((UDItype)(w1)) \ - : "d" ((UDItype)(u)), \ - "d" ((UDItype)(v))) -#else -#define umul_ppmm(w1, w0, u, v) \ - __asm__ ("dmultu %2,%3 \n" \ - "mflo %0 \n" \ - "mfhi %1" \ - : "=d" ((UDItype)(w0)), \ - "=d" ((UDItype)(w1)) \ - : "d" ((UDItype)(u)), \ - "d" ((UDItype)(v))) -#endif -#define UMUL_TIME 20 -#define UDIV_TIME 140 -#endif /* __mips__ */ - - -/*************************************** - ************** 32000 **************** - ***************************************/ -#if defined (__ns32000__) && W_TYPE_SIZE == 32 -#define umul_ppmm(w1, w0, u, v) \ - ({union {UDItype __ll; \ - struct {USItype __l, __h;} __i; \ - } __xx; \ - __asm__ ("meid %2,%0" \ - : "=g" (__xx.__ll) \ - : "%0" ((USItype)(u)), \ - "g" ((USItype)(v))); \ - (w1) = __xx.__i.__h; (w0) = __xx.__i.__l;}) -#define __umulsidi3(u, v) \ - ({UDItype __w; \ - __asm__ ("meid %2,%0" \ - : "=g" (__w) \ - : "%0" ((USItype)(u)), \ - "g" ((USItype)(v))); \ - __w; }) -#define udiv_qrnnd(q, r, n1, n0, d) \ - ({union {UDItype __ll; \ - struct {USItype __l, __h;} __i; \ - } __xx; \ - __xx.__i.__h = (n1); __xx.__i.__l = (n0); \ - __asm__ ("deid %2,%0" \ - : "=g" (__xx.__ll) \ - : "0" (__xx.__ll), \ - "g" ((USItype)(d))); \ - (r) = __xx.__i.__l; (q) = __xx.__i.__h; }) -#define count_trailing_zeros(count,x) \ - do { - __asm__ ("ffsd %2,%0" \ - : "=r" ((USItype) (count)) \ - : "0" ((USItype) 0), \ - "r" ((USItype) (x))); \ - } while (0) -#endif /* __ns32000__ */ - - -/*************************************** - ************** PPC ****************** - ***************************************/ -#if (defined (_ARCH_PPC) || defined (_IBMR2)) && W_TYPE_SIZE == 32 -#define add_ssaaaa(sh, sl, ah, al, bh, bl) \ - do { \ - if (__builtin_constant_p (bh) && (bh) == 0) \ - __asm__ ("{a%I4|add%I4c} %1,%3,%4\n\t{aze|addze} %0,%2" \ - : "=r" ((sh)), \ - "=&r" ((sl)) \ - : "%r" ((USItype)(ah)), \ - "%r" ((USItype)(al)), \ - "rI" ((USItype)(bl))); \ - else if (__builtin_constant_p (bh) && (bh) ==~(USItype) 0) \ - __asm__ ("{a%I4|add%I4c} %1,%3,%4\n\t{ame|addme} %0,%2" \ - : "=r" ((sh)), \ - "=&r" ((sl)) \ - : "%r" ((USItype)(ah)), \ - "%r" ((USItype)(al)), \ - "rI" ((USItype)(bl))); \ - else \ - __asm__ ("{a%I5|add%I5c} %1,%4,%5\n\t{ae|adde} %0,%2,%3" \ - : "=r" ((sh)), \ - "=&r" ((sl)) \ - : "%r" ((USItype)(ah)), \ - "r" ((USItype)(bh)), \ - "%r" ((USItype)(al)), \ - "rI" ((USItype)(bl))); \ - } while (0) -#define sub_ddmmss(sh, sl, ah, al, bh, bl) \ - do { \ - if (__builtin_constant_p (ah) && (ah) == 0) \ - __asm__ ("{sf%I3|subf%I3c} %1,%4,%3\n\t{sfze|subfze} %0,%2" \ - : "=r" ((sh)), \ - "=&r" ((sl)) \ - : "r" ((USItype)(bh)), \ - "rI" ((USItype)(al)), \ - "r" ((USItype)(bl))); \ - else if (__builtin_constant_p (ah) && (ah) ==~(USItype) 0) \ - __asm__ ("{sf%I3|subf%I3c} %1,%4,%3\n\t{sfme|subfme} %0,%2" \ - : "=r" ((sh)), \ - "=&r" ((sl)) \ - : "r" ((USItype)(bh)), \ - "rI" ((USItype)(al)), \ - "r" ((USItype)(bl))); \ - else if (__builtin_constant_p (bh) && (bh) == 0) \ - __asm__ ("{sf%I3|subf%I3c} %1,%4,%3\n\t{ame|addme} %0,%2" \ - : "=r" ((sh)), \ - "=&r" ((sl)) \ - : "r" ((USItype)(ah)), \ - "rI" ((USItype)(al)), \ - "r" ((USItype)(bl))); \ - else if (__builtin_constant_p (bh) && (bh) ==~(USItype) 0) \ - __asm__ ("{sf%I3|subf%I3c} %1,%4,%3\n\t{aze|addze} %0,%2" \ - : "=r" ((sh)), \ - "=&r" ((sl)) \ - : "r" ((USItype)(ah)), \ - "rI" ((USItype)(al)), \ - "r" ((USItype)(bl))); \ - else \ - __asm__ ("{sf%I4|subf%I4c} %1,%5,%4\n\t{sfe|subfe} %0,%3,%2" \ - : "=r" ((sh)), \ - "=&r" ((sl)) \ - : "r" ((USItype)(ah)), \ - "r" ((USItype)(bh)), \ - "rI" ((USItype)(al)), \ - "r" ((USItype)(bl))); \ - } while (0) -#define count_leading_zeros(count, x) \ - __asm__ ("{cntlz|cntlzw} %0,%1" \ - : "=r" ((count)) \ - : "r" ((USItype)(x))) -#define COUNT_LEADING_ZEROS_0 32 -#if defined (_ARCH_PPC) -#define umul_ppmm(ph, pl, m0, m1) \ - do { \ - USItype __m0 = (m0), __m1 = (m1); \ - __asm__ ("mulhwu %0,%1,%2" \ - : "=r" (ph) \ - : "%r" (__m0), \ - "r" (__m1)); \ - (pl) = __m0 * __m1; \ - } while (0) -#define UMUL_TIME 15 -#define smul_ppmm(ph, pl, m0, m1) \ - do { \ - SItype __m0 = (m0), __m1 = (m1); \ - __asm__ ("mulhw %0,%1,%2" \ - : "=r" ((SItype) ph) \ - : "%r" (__m0), \ - "r" (__m1)); \ - (pl) = __m0 * __m1; \ - } while (0) -#define SMUL_TIME 14 -#define UDIV_TIME 120 -#else -#define umul_ppmm(xh, xl, m0, m1) \ - do { \ - USItype __m0 = (m0), __m1 = (m1); \ - __asm__ ("mul %0,%2,%3" \ - : "=r" ((xh)), \ - "=q" ((xl)) \ - : "r" (__m0), \ - "r" (__m1)); \ - (xh) += ((((SItype) __m0 >> 31) & __m1) \ - + (((SItype) __m1 >> 31) & __m0)); \ - } while (0) -#define UMUL_TIME 8 -#define smul_ppmm(xh, xl, m0, m1) \ - __asm__ ("mul %0,%2,%3" \ - : "=r" ((SItype)(xh)), \ - "=q" ((SItype)(xl)) \ - : "r" (m0), \ - "r" (m1)) -#define SMUL_TIME 4 -#define sdiv_qrnnd(q, r, nh, nl, d) \ - __asm__ ("div %0,%2,%4" \ - : "=r" ((SItype)(q)), "=q" ((SItype)(r)) \ - : "r" ((SItype)(nh)), "1" ((SItype)(nl)), "r" ((SItype)(d))) -#define UDIV_TIME 100 -#endif -#endif /* Power architecture variants. */ - -/* Powerpc 64 bit support taken from gmp-4.1.2. */ -/* We should test _IBMR2 here when we add assembly support for the system - vendor compilers. */ -#if 0 /* Not yet enabled because we don't have hardware for a test. */ -#if (defined (_ARCH_PPC) || defined (__powerpc__)) && W_TYPE_SIZE == 64 -#define add_ssaaaa(sh, sl, ah, al, bh, bl) \ - do { \ - if (__builtin_constant_p (bh) && (bh) == 0) \ - __asm__ ("{a%I4|add%I4c} %1,%3,%4\n\t{aze|addze} %0,%2" \ - : "=r" (sh), "=&r" (sl) : "r" (ah), "%r" (al), "rI" (bl));\ - else if (__builtin_constant_p (bh) && (bh) == ~(UDItype) 0) \ - __asm__ ("{a%I4|add%I4c} %1,%3,%4\n\t{ame|addme} %0,%2" \ - : "=r" (sh), "=&r" (sl) : "r" (ah), "%r" (al), "rI" (bl));\ - else \ - __asm__ ("{a%I5|add%I5c} %1,%4,%5\n\t{ae|adde} %0,%2,%3" \ - : "=r" (sh), "=&r" (sl) \ - : "%r" (ah), "r" (bh), "%r" (al), "rI" (bl)); \ - } while (0) -#define sub_ddmmss(sh, sl, ah, al, bh, bl) \ - do { \ - if (__builtin_constant_p (ah) && (ah) == 0) \ - __asm__ ("{sf%I3|subf%I3c} %1,%4,%3\n\t{sfze|subfze} %0,%2" \ - : "=r" (sh), "=&r" (sl) : "r" (bh), "rI" (al), "r" (bl));\ - else if (__builtin_constant_p (ah) && (ah) == ~(UDItype) 0) \ - __asm__ ("{sf%I3|subf%I3c} %1,%4,%3\n\t{sfme|subfme} %0,%2" \ - : "=r" (sh), "=&r" (sl) : "r" (bh), "rI" (al), "r" (bl));\ - else if (__builtin_constant_p (bh) && (bh) == 0) \ - __asm__ ("{sf%I3|subf%I3c} %1,%4,%3\n\t{ame|addme} %0,%2" \ - : "=r" (sh), "=&r" (sl) : "r" (ah), "rI" (al), "r" (bl));\ - else if (__builtin_constant_p (bh) && (bh) == ~(UDItype) 0) \ - __asm__ ("{sf%I3|subf%I3c} %1,%4,%3\n\t{aze|addze} %0,%2" \ - : "=r" (sh), "=&r" (sl) : "r" (ah), "rI" (al), "r" (bl));\ - else \ - __asm__ ("{sf%I4|subf%I4c} %1,%5,%4\n\t{sfe|subfe} %0,%3,%2" \ - : "=r" (sh), "=&r" (sl) \ - : "r" (ah), "r" (bh), "rI" (al), "r" (bl)); \ - } while (0) -#define count_leading_zeros(count, x) \ - __asm__ ("cntlzd %0,%1" : "=r" (count) : "r" (x)) -#define COUNT_LEADING_ZEROS_0 64 -#define umul_ppmm(ph, pl, m0, m1) \ - do { \ - UDItype __m0 = (m0), __m1 = (m1); \ - __asm__ ("mulhdu %0,%1,%2" : "=r" (ph) : "%r" (m0), "r" (m1)); \ - (pl) = __m0 * __m1; \ - } while (0) -#define UMUL_TIME 15 -#define smul_ppmm(ph, pl, m0, m1) \ - do { \ - DItype __m0 = (m0), __m1 = (m1); \ - __asm__ ("mulhd %0,%1,%2" : "=r" (ph) : "%r" (m0), "r" (m1)); \ - (pl) = __m0 * __m1; \ - } while (0) -#define SMUL_TIME 14 /* ??? */ -#define UDIV_TIME 120 /* ??? */ -#endif /* 64-bit PowerPC. */ -#endif /* if 0 */ - -/*************************************** - ************** PYR ****************** - ***************************************/ -#if defined (__pyr__) && W_TYPE_SIZE == 32 -#define add_ssaaaa(sh, sl, ah, al, bh, bl) \ - __asm__ ("addw %5,%1 \n" \ - "addwc %3,%0" \ - : "=r" ((USItype)(sh)), \ - "=&r" ((USItype)(sl)) \ - : "%0" ((USItype)(ah)), \ - "g" ((USItype)(bh)), \ - "%1" ((USItype)(al)), \ - "g" ((USItype)(bl))) -#define sub_ddmmss(sh, sl, ah, al, bh, bl) \ - __asm__ ("subw %5,%1 \n" \ - "subwb %3,%0" \ - : "=r" ((USItype)(sh)), \ - "=&r" ((USItype)(sl)) \ - : "0" ((USItype)(ah)), \ - "g" ((USItype)(bh)), \ - "1" ((USItype)(al)), \ - "g" ((USItype)(bl))) -/* This insn works on Pyramids with AP, XP, or MI CPUs, but not with SP. */ -#define umul_ppmm(w1, w0, u, v) \ - ({union {UDItype __ll; \ - struct {USItype __h, __l;} __i; \ - } __xx; \ - __asm__ ("movw %1,%R0 \n" \ - "uemul %2,%0" \ - : "=&r" (__xx.__ll) \ - : "g" ((USItype) (u)), \ - "g" ((USItype)(v))); \ - (w1) = __xx.__i.__h; (w0) = __xx.__i.__l;}) -#endif /* __pyr__ */ - - -/*************************************** - ************** RT/ROMP ************** - ***************************************/ -#if defined (__ibm032__) /* RT/ROMP */ && W_TYPE_SIZE == 32 -#define add_ssaaaa(sh, sl, ah, al, bh, bl) \ - __asm__ ("a %1,%5 \n" \ - "ae %0,%3" \ - : "=r" ((USItype)(sh)), \ - "=&r" ((USItype)(sl)) \ - : "%0" ((USItype)(ah)), \ - "r" ((USItype)(bh)), \ - "%1" ((USItype)(al)), \ - "r" ((USItype)(bl))) -#define sub_ddmmss(sh, sl, ah, al, bh, bl) \ - __asm__ ("s %1,%5\n" \ - "se %0,%3" \ - : "=r" ((USItype)(sh)), \ - "=&r" ((USItype)(sl)) \ - : "0" ((USItype)(ah)), \ - "r" ((USItype)(bh)), \ - "1" ((USItype)(al)), \ - "r" ((USItype)(bl))) -#define umul_ppmm(ph, pl, m0, m1) \ - do { \ - USItype __m0 = (m0), __m1 = (m1); \ - __asm__ ( \ - "s r2,r2 \n" \ - "mts r10,%2 \n" \ - "m r2,%3 \n" \ - "m r2,%3 \n" \ - "m r2,%3 \n" \ - "m r2,%3 \n" \ - "m r2,%3 \n" \ - "m r2,%3 \n" \ - "m r2,%3 \n" \ - "m r2,%3 \n" \ - "m r2,%3 \n" \ - "m r2,%3 \n" \ - "m r2,%3 \n" \ - "m r2,%3 \n" \ - "m r2,%3 \n" \ - "m r2,%3 \n" \ - "m r2,%3 \n" \ - "m r2,%3 \n" \ - "cas %0,r2,r0 \n" \ - "mfs r10,%1" \ - : "=r" ((USItype)(ph)), \ - "=r" ((USItype)(pl)) \ - : "%r" (__m0), \ - "r" (__m1) \ - : "r2"); \ - (ph) += ((((SItype) __m0 >> 31) & __m1) \ - + (((SItype) __m1 >> 31) & __m0)); \ - } while (0) -#define UMUL_TIME 20 -#define UDIV_TIME 200 -#define count_leading_zeros(count, x) \ - do { \ - if ((x) >= 0x10000) \ - __asm__ ("clz %0,%1" \ - : "=r" ((USItype)(count)) \ - : "r" ((USItype)(x) >> 16)); \ - else \ - { \ - __asm__ ("clz %0,%1" \ - : "=r" ((USItype)(count)) \ - : "r" ((USItype)(x))); \ - (count) += 16; \ - } \ - } while (0) -#endif /* RT/ROMP */ - - -/*************************************** - ************** SH2 ****************** - ***************************************/ -#if (defined (__sh2__) || defined(__sh3__) || defined(__SH4__) ) \ - && W_TYPE_SIZE == 32 -#define umul_ppmm(w1, w0, u, v) \ - __asm__ ( \ - "dmulu.l %2,%3\n" \ - "sts macl,%1\n" \ - "sts mach,%0" \ - : "=r" ((USItype)(w1)), \ - "=r" ((USItype)(w0)) \ - : "r" ((USItype)(u)), \ - "r" ((USItype)(v)) \ - : "macl", "mach") -#define UMUL_TIME 5 -#endif - -/*************************************** - ************** SPARC **************** - ***************************************/ -#if defined (__sparc__) && W_TYPE_SIZE == 32 -#define add_ssaaaa(sh, sl, ah, al, bh, bl) \ - __asm__ ("addcc %r4,%5,%1\n" \ - "addx %r2,%3,%0" \ - : "=r" ((USItype)(sh)), \ - "=&r" ((USItype)(sl)) \ - : "%rJ" ((USItype)(ah)), \ - "rI" ((USItype)(bh)), \ - "%rJ" ((USItype)(al)), \ - "rI" ((USItype)(bl)) \ - __CLOBBER_CC) -#define sub_ddmmss(sh, sl, ah, al, bh, bl) \ - __asm__ ("subcc %r4,%5,%1\n" \ - "subx %r2,%3,%0" \ - : "=r" ((USItype)(sh)), \ - "=&r" ((USItype)(sl)) \ - : "rJ" ((USItype)(ah)), \ - "rI" ((USItype)(bh)), \ - "rJ" ((USItype)(al)), \ - "rI" ((USItype)(bl)) \ - __CLOBBER_CC) -#if defined (__sparc_v8__) -/* Don't match immediate range because, 1) it is not often useful, - 2) the 'I' flag thinks of the range as a 13 bit signed interval, - while we want to match a 13 bit interval, sign extended to 32 bits, - but INTERPRETED AS UNSIGNED. */ -#define umul_ppmm(w1, w0, u, v) \ - __asm__ ("umul %2,%3,%1;rd %%y,%0" \ - : "=r" ((USItype)(w1)), \ - "=r" ((USItype)(w0)) \ - : "r" ((USItype)(u)), \ - "r" ((USItype)(v))) -#define UMUL_TIME 5 -#ifndef SUPERSPARC /* SuperSPARC's udiv only handles 53 bit dividends */ -#define udiv_qrnnd(q, r, n1, n0, d) \ - do { \ - USItype __q; \ - __asm__ ("mov %1,%%y;nop;nop;nop;udiv %2,%3,%0" \ - : "=r" ((USItype)(__q)) \ - : "r" ((USItype)(n1)), \ - "r" ((USItype)(n0)), \ - "r" ((USItype)(d))); \ - (r) = (n0) - __q * (d); \ - (q) = __q; \ - } while (0) -#define UDIV_TIME 25 -#endif /* SUPERSPARC */ -#else /* ! __sparc_v8__ */ -#if defined (__sparclite__) -/* This has hardware multiply but not divide. It also has two additional - instructions scan (ffs from high bit) and divscc. */ -#define umul_ppmm(w1, w0, u, v) \ - __asm__ ("umul %2,%3,%1;rd %%y,%0" \ - : "=r" ((USItype)(w1)), \ - "=r" ((USItype)(w0)) \ - : "r" ((USItype)(u)), \ - "r" ((USItype)(v))) -#define UMUL_TIME 5 -#define udiv_qrnnd(q, r, n1, n0, d) \ - __asm__ ("! Inlined udiv_qrnnd \n" \ - " wr %%g0,%2,%%y ! Not a delayed write for sparclite \n" \ - " tst %%g0 \n" \ - " divscc %3,%4,%%g1 \n" \ - " divscc %%g1,%4,%%g1 \n" \ - " divscc %%g1,%4,%%g1 \n" \ - " divscc %%g1,%4,%%g1 \n" \ - " divscc %%g1,%4,%%g1 \n" \ - " divscc %%g1,%4,%%g1 \n" \ - " divscc %%g1,%4,%%g1 \n" \ - " divscc %%g1,%4,%%g1 \n" \ - " divscc %%g1,%4,%%g1 \n" \ - " divscc %%g1,%4,%%g1 \n" \ - " divscc %%g1,%4,%%g1 \n" \ - " divscc %%g1,%4,%%g1 \n" \ - " divscc %%g1,%4,%%g1 \n" \ - " divscc %%g1,%4,%%g1 \n" \ - " divscc %%g1,%4,%%g1 \n" \ - " divscc %%g1,%4,%%g1 \n" \ - " divscc %%g1,%4,%%g1 \n" \ - " divscc %%g1,%4,%%g1 \n" \ - " divscc %%g1,%4,%%g1 \n" \ - " divscc %%g1,%4,%%g1 \n" \ - " divscc %%g1,%4,%%g1 \n" \ - " divscc %%g1,%4,%%g1 \n" \ - " divscc %%g1,%4,%%g1 \n" \ - " divscc %%g1,%4,%%g1 \n" \ - " divscc %%g1,%4,%%g1 \n" \ - " divscc %%g1,%4,%%g1 \n" \ - " divscc %%g1,%4,%%g1 \n" \ - " divscc %%g1,%4,%%g1 \n" \ - " divscc %%g1,%4,%%g1 \n" \ - " divscc %%g1,%4,%%g1 \n" \ - " divscc %%g1,%4,%%g1 \n" \ - " divscc %%g1,%4,%0 \n" \ - " rd %%y,%1 \n" \ - " bl,a 1f \n" \ - " add %1,%4,%1 \n" \ - "1: ! End of inline udiv_qrnnd" \ - : "=r" ((USItype)(q)), \ - "=r" ((USItype)(r)) \ - : "r" ((USItype)(n1)), \ - "r" ((USItype)(n0)), \ - "rI" ((USItype)(d)) \ - : "%g1" __AND_CLOBBER_CC) -#define UDIV_TIME 37 -#define count_leading_zeros(count, x) \ - __asm__ ("scan %1,0,%0" \ - : "=r" ((USItype)(x)) \ - : "r" ((USItype)(count))) -/* Early sparclites return 63 for an argument of 0, but they warn that future - implementations might change this. Therefore, leave COUNT_LEADING_ZEROS_0 - undefined. */ -#endif /* __sparclite__ */ -#endif /* __sparc_v8__ */ -/* Default to sparc v7 versions of umul_ppmm and udiv_qrnnd. */ -#ifndef umul_ppmm -#define umul_ppmm(w1, w0, u, v) \ - __asm__ ("! Inlined umul_ppmm \n" \ - " wr %%g0,%2,%%y ! SPARC has 0-3 delay insn after a wr \n" \ - " sra %3,31,%%g2 ! Don't move this insn \n" \ - " and %2,%%g2,%%g2 ! Don't move this insn \n" \ - " andcc %%g0,0,%%g1 ! Don't move this insn \n" \ - " mulscc %%g1,%3,%%g1 \n" \ - " mulscc %%g1,%3,%%g1 \n" \ - " mulscc %%g1,%3,%%g1 \n" \ - " mulscc %%g1,%3,%%g1 \n" \ - " mulscc %%g1,%3,%%g1 \n" \ - " mulscc %%g1,%3,%%g1 \n" \ - " mulscc %%g1,%3,%%g1 \n" \ - " mulscc %%g1,%3,%%g1 \n" \ - " mulscc %%g1,%3,%%g1 \n" \ - " mulscc %%g1,%3,%%g1 \n" \ - " mulscc %%g1,%3,%%g1 \n" \ - " mulscc %%g1,%3,%%g1 \n" \ - " mulscc %%g1,%3,%%g1 \n" \ - " mulscc %%g1,%3,%%g1 \n" \ - " mulscc %%g1,%3,%%g1 \n" \ - " mulscc %%g1,%3,%%g1 \n" \ - " mulscc %%g1,%3,%%g1 \n" \ - " mulscc %%g1,%3,%%g1 \n" \ - " mulscc %%g1,%3,%%g1 \n" \ - " mulscc %%g1,%3,%%g1 \n" \ - " mulscc %%g1,%3,%%g1 \n" \ - " mulscc %%g1,%3,%%g1 \n" \ - " mulscc %%g1,%3,%%g1 \n" \ - " mulscc %%g1,%3,%%g1 \n" \ - " mulscc %%g1,%3,%%g1 \n" \ - " mulscc %%g1,%3,%%g1 \n" \ - " mulscc %%g1,%3,%%g1 \n" \ - " mulscc %%g1,%3,%%g1 \n" \ - " mulscc %%g1,%3,%%g1 \n" \ - " mulscc %%g1,%3,%%g1 \n" \ - " mulscc %%g1,%3,%%g1 \n" \ - " mulscc %%g1,%3,%%g1 \n" \ - " mulscc %%g1,0,%%g1 \n" \ - " add %%g1,%%g2,%0 \n" \ - " rd %%y,%1" \ - : "=r" ((USItype)(w1)), \ - "=r" ((USItype)(w0)) \ - : "%rI" ((USItype)(u)), \ - "r" ((USItype)(v)) \ - : "%g1", "%g2" __AND_CLOBBER_CC) -#define UMUL_TIME 39 /* 39 instructions */ -#endif -#ifndef udiv_qrnnd -#ifndef LONGLONG_STANDALONE -#define udiv_qrnnd(q, r, n1, n0, d) \ - do { USItype __r; \ - (q) = __udiv_qrnnd (&__r, (n1), (n0), (d)); \ - (r) = __r; \ - } while (0) -extern USItype __udiv_qrnnd (); -#define UDIV_TIME 140 -#endif /* LONGLONG_STANDALONE */ -#endif /* udiv_qrnnd */ -#endif /* __sparc__ */ - - -/*************************************** - ************** VAX ****************** - ***************************************/ -#if defined (__vax__) && W_TYPE_SIZE == 32 -#define add_ssaaaa(sh, sl, ah, al, bh, bl) \ - __asm__ ("addl2 %5,%1\n" \ - "adwc %3,%0" \ - : "=g" ((USItype)(sh)), \ - "=&g" ((USItype)(sl)) \ - : "%0" ((USItype)(ah)), \ - "g" ((USItype)(bh)), \ - "%1" ((USItype)(al)), \ - "g" ((USItype)(bl))) -#define sub_ddmmss(sh, sl, ah, al, bh, bl) \ - __asm__ ("subl2 %5,%1\n" \ - "sbwc %3,%0" \ - : "=g" ((USItype)(sh)), \ - "=&g" ((USItype)(sl)) \ - : "0" ((USItype)(ah)), \ - "g" ((USItype)(bh)), \ - "1" ((USItype)(al)), \ - "g" ((USItype)(bl))) -#define umul_ppmm(xh, xl, m0, m1) \ - do { \ - union {UDItype __ll; \ - struct {USItype __l, __h;} __i; \ - } __xx; \ - USItype __m0 = (m0), __m1 = (m1); \ - __asm__ ("emul %1,%2,$0,%0" \ - : "=g" (__xx.__ll) \ - : "g" (__m0), \ - "g" (__m1)); \ - (xh) = __xx.__i.__h; (xl) = __xx.__i.__l; \ - (xh) += ((((SItype) __m0 >> 31) & __m1) \ - + (((SItype) __m1 >> 31) & __m0)); \ - } while (0) -#define sdiv_qrnnd(q, r, n1, n0, d) \ - do { \ - union {DItype __ll; \ - struct {SItype __l, __h;} __i; \ - } __xx; \ - __xx.__i.__h = n1; __xx.__i.__l = n0; \ - __asm__ ("ediv %3,%2,%0,%1" \ - : "=g" (q), "=g" (r) \ - : "g" (__xx.__ll), "g" (d)); \ - } while (0) -#endif /* __vax__ */ - - -/*************************************** - ************** Z8000 **************** - ***************************************/ -#if defined (__z8000__) && W_TYPE_SIZE == 16 -#define add_ssaaaa(sh, sl, ah, al, bh, bl) \ - __asm__ ("add %H1,%H5\n\tadc %H0,%H3" \ - : "=r" ((unsigned int)(sh)), \ - "=&r" ((unsigned int)(sl)) \ - : "%0" ((unsigned int)(ah)), \ - "r" ((unsigned int)(bh)), \ - "%1" ((unsigned int)(al)), \ - "rQR" ((unsigned int)(bl))) -#define sub_ddmmss(sh, sl, ah, al, bh, bl) \ - __asm__ ("sub %H1,%H5\n\tsbc %H0,%H3" \ - : "=r" ((unsigned int)(sh)), \ - "=&r" ((unsigned int)(sl)) \ - : "0" ((unsigned int)(ah)), \ - "r" ((unsigned int)(bh)), \ - "1" ((unsigned int)(al)), \ - "rQR" ((unsigned int)(bl))) -#define umul_ppmm(xh, xl, m0, m1) \ - do { \ - union {long int __ll; \ - struct {unsigned int __h, __l;} __i; \ - } __xx; \ - unsigned int __m0 = (m0), __m1 = (m1); \ - __asm__ ("mult %S0,%H3" \ - : "=r" (__xx.__i.__h), \ - "=r" (__xx.__i.__l) \ - : "%1" (__m0), \ - "rQR" (__m1)); \ - (xh) = __xx.__i.__h; (xl) = __xx.__i.__l; \ - (xh) += ((((signed int) __m0 >> 15) & __m1) \ - + (((signed int) __m1 >> 15) & __m0)); \ - } while (0) -#endif /* __z8000__ */ - -#endif /* __GNUC__ */ -#endif /* !__riscos__ */ - - -/*************************************** - *********** Generic Versions ******** - ***************************************/ -#if !defined (umul_ppmm) && defined (__umulsidi3) -#define umul_ppmm(ph, pl, m0, m1) \ - { \ - UDWtype __ll = __umulsidi3 (m0, m1); \ - ph = (UWtype) (__ll >> W_TYPE_SIZE); \ - pl = (UWtype) __ll; \ - } -#endif - -#if !defined (__umulsidi3) -#define __umulsidi3(u, v) \ - ({UWtype __hi, __lo; \ - umul_ppmm (__hi, __lo, u, v); \ - ((UDWtype) __hi << W_TYPE_SIZE) | __lo; }) -#endif - -/* If this machine has no inline assembler, use C macros. */ - -#if !defined (add_ssaaaa) -#define add_ssaaaa(sh, sl, ah, al, bh, bl) \ - do { \ - UWtype __x; \ - __x = (al) + (bl); \ - (sh) = (ah) + (bh) + (__x < (al)); \ - (sl) = __x; \ - } while (0) -#endif - -#if !defined (sub_ddmmss) -#define sub_ddmmss(sh, sl, ah, al, bh, bl) \ - do { \ - UWtype __x; \ - __x = (al) - (bl); \ - (sh) = (ah) - (bh) - (__x > (al)); \ - (sl) = __x; \ - } while (0) -#endif - -#if !defined (umul_ppmm) -#define umul_ppmm(w1, w0, u, v) \ - do { \ - UWtype __x0, __x1, __x2, __x3; \ - UHWtype __ul, __vl, __uh, __vh; \ - UWtype __u = (u), __v = (v); \ - \ - __ul = __ll_lowpart (__u); \ - __uh = __ll_highpart (__u); \ - __vl = __ll_lowpart (__v); \ - __vh = __ll_highpart (__v); \ - \ - __x0 = (UWtype) __ul * __vl; \ - __x1 = (UWtype) __ul * __vh; \ - __x2 = (UWtype) __uh * __vl; \ - __x3 = (UWtype) __uh * __vh; \ - \ - __x1 += __ll_highpart (__x0);/* this can't give carry */ \ - __x1 += __x2; /* but this indeed can */ \ - if (__x1 < __x2) /* did we get it? */ \ - __x3 += __ll_B; /* yes, add it in the proper pos. */ \ - \ - (w1) = __x3 + __ll_highpart (__x1); \ - (w0) = (__ll_lowpart (__x1) << W_TYPE_SIZE/2) + __ll_lowpart (__x0);\ - } while (0) -#endif - -#if !defined (umul_ppmm) -#define smul_ppmm(w1, w0, u, v) \ - do { \ - UWtype __w1; \ - UWtype __m0 = (u), __m1 = (v); \ - umul_ppmm (__w1, w0, __m0, __m1); \ - (w1) = __w1 - (-(__m0 >> (W_TYPE_SIZE - 1)) & __m1) \ - - (-(__m1 >> (W_TYPE_SIZE - 1)) & __m0); \ - } while (0) -#endif - -/* Define this unconditionally, so it can be used for debugging. */ -#define __udiv_qrnnd_c(q, r, n1, n0, d) \ - do { \ - UWtype __d1, __d0, __q1, __q0, __r1, __r0, __m; \ - __d1 = __ll_highpart (d); \ - __d0 = __ll_lowpart (d); \ - \ - __r1 = (n1) % __d1; \ - __q1 = (n1) / __d1; \ - __m = (UWtype) __q1 * __d0; \ - __r1 = __r1 * __ll_B | __ll_highpart (n0); \ - if (__r1 < __m) \ - { \ - __q1--, __r1 += (d); \ - if (__r1 >= (d)) /* i.e. we didn't get carry when adding to __r1 */\ - if (__r1 < __m) \ - __q1--, __r1 += (d); \ - } \ - __r1 -= __m; \ - \ - __r0 = __r1 % __d1; \ - __q0 = __r1 / __d1; \ - __m = (UWtype) __q0 * __d0; \ - __r0 = __r0 * __ll_B | __ll_lowpart (n0); \ - if (__r0 < __m) \ - { \ - __q0--, __r0 += (d); \ - if (__r0 >= (d)) \ - if (__r0 < __m) \ - __q0--, __r0 += (d); \ - } \ - __r0 -= __m; \ - \ - (q) = (UWtype) __q1 * __ll_B | __q0; \ - (r) = __r0; \ - } while (0) - -/* If the processor has no udiv_qrnnd but sdiv_qrnnd, go through - __udiv_w_sdiv (defined in libgcc or elsewhere). */ -#if !defined (udiv_qrnnd) && defined (sdiv_qrnnd) -#define udiv_qrnnd(q, r, nh, nl, d) \ - do { \ - UWtype __r; \ - (q) = __MPN(udiv_w_sdiv) (&__r, nh, nl, d); \ - (r) = __r; \ - } while (0) -#endif - -/* If udiv_qrnnd was not defined for this processor, use __udiv_qrnnd_c. */ -#if !defined (udiv_qrnnd) -#define UDIV_NEEDS_NORMALIZATION 1 -#define udiv_qrnnd __udiv_qrnnd_c -#endif - -#if !defined (count_leading_zeros) -extern -#ifdef __STDC__ -const -#endif -unsigned char _gcry_clz_tab[]; -#define MPI_INTERNAL_NEED_CLZ_TAB 1 -#define count_leading_zeros(count, x) \ - do { \ - UWtype __xr = (x); \ - UWtype __a; \ - \ - if (W_TYPE_SIZE <= 32) \ - { \ - __a = __xr < ((UWtype) 1 << 2*__BITS4) \ - ? (__xr < ((UWtype) 1 << __BITS4) ? 0 : __BITS4) \ - : (__xr < ((UWtype) 1 << 3*__BITS4) ? 2*__BITS4 : 3*__BITS4);\ - } \ - else \ - { \ - for (__a = W_TYPE_SIZE - 8; __a > 0; __a -= 8) \ - if (((__xr >> __a) & 0xff) != 0) \ - break; \ - } \ - \ - (count) = W_TYPE_SIZE - (_gcry_clz_tab[__xr >> __a] + __a); \ - } while (0) -/* This version gives a well-defined value for zero. */ -#define COUNT_LEADING_ZEROS_0 W_TYPE_SIZE -#endif - -#if !defined (count_trailing_zeros) -/* Define count_trailing_zeros using count_leading_zeros. The latter might be - defined in asm, but if it is not, the C version above is good enough. */ -#define count_trailing_zeros(count, x) \ - do { \ - UWtype __ctz_x = (x); \ - UWtype __ctz_c; \ - count_leading_zeros (__ctz_c, __ctz_x & -__ctz_x); \ - (count) = W_TYPE_SIZE - 1 - __ctz_c; \ - } while (0) -#endif - -#ifndef UDIV_NEEDS_NORMALIZATION -#define UDIV_NEEDS_NORMALIZATION 0 -#endif diff --git a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/mpi-add.c b/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/mpi-add.c deleted file mode 100644 index f8f609441..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/mpi-add.c +++ /dev/null @@ -1,237 +0,0 @@ -/* This file was automatically imported with - import_gcry.py. Please don't modify it */ -/* mpi-add.c - MPI functions - * Copyright (C) 1994, 1996, 1998, 2001, 2002, 2003 Free Software Foundation, Inc. - * - * This file is part of Libgcrypt. - * - * Libgcrypt is free software; you can redistribute it and/or modify - * it under the terms of the GNU Lesser General Public License as - * published by the Free Software Foundation; either version 2.1 of - * the License, or (at your option) any later version. - * - * Libgcrypt is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA - * - * Note: This code is heavily based on the GNU MP Library. - * Actually it's the same code with only minor changes in the - * way the data is stored; this is to support the abstraction - * of an optional secure memory allocation which may be used - * to avoid revealing of sensitive data due to paging etc. - */ - -#include -#include -#include - -#include "mpi-internal.h" - - -/**************** - * Add the unsigned integer V to the mpi-integer U and store the - * result in W. U and V may be the same. - */ -void -gcry_mpi_add_ui(gcry_mpi_t w, gcry_mpi_t u, unsigned long v ) -{ - mpi_ptr_t wp, up; - mpi_size_t usize, wsize; - int usign, wsign; - - usize = u->nlimbs; - usign = u->sign; - wsign = 0; - - /* If not space for W (and possible carry), increase space. */ - wsize = usize + 1; - if( w->alloced < wsize ) - mpi_resize(w, wsize); - - /* These must be after realloc (U may be the same as W). */ - up = u->d; - wp = w->d; - - if( !usize ) { /* simple */ - wp[0] = v; - wsize = v? 1:0; - } - else if( !usign ) { /* mpi is not negative */ - mpi_limb_t cy; - cy = _gcry_mpih_add_1(wp, up, usize, v); - wp[usize] = cy; - wsize = usize + cy; - } - else { /* The signs are different. Need exact comparison to determine - * which operand to subtract from which. */ - if( usize == 1 && up[0] < v ) { - wp[0] = v - up[0]; - wsize = 1; - } - else { - _gcry_mpih_sub_1(wp, up, usize, v); - /* Size can decrease with at most one limb. */ - wsize = usize - (wp[usize-1]==0); - wsign = 1; - } - } - - w->nlimbs = wsize; - w->sign = wsign; -} - - -void -gcry_mpi_add(gcry_mpi_t w, gcry_mpi_t u, gcry_mpi_t v) -{ - mpi_ptr_t wp, up, vp; - mpi_size_t usize, vsize, wsize; - int usign, vsign, wsign; - - if( u->nlimbs < v->nlimbs ) { /* Swap U and V. */ - usize = v->nlimbs; - usign = v->sign; - vsize = u->nlimbs; - vsign = u->sign; - wsize = usize + 1; - RESIZE_IF_NEEDED(w, wsize); - /* These must be after realloc (u or v may be the same as w). */ - up = v->d; - vp = u->d; - } - else { - usize = u->nlimbs; - usign = u->sign; - vsize = v->nlimbs; - vsign = v->sign; - wsize = usize + 1; - RESIZE_IF_NEEDED(w, wsize); - /* These must be after realloc (u or v may be the same as w). */ - up = u->d; - vp = v->d; - } - wp = w->d; - wsign = 0; - - if( !vsize ) { /* simple */ - MPN_COPY(wp, up, usize ); - wsize = usize; - wsign = usign; - } - else if( usign != vsign ) { /* different sign */ - /* This test is right since USIZE >= VSIZE */ - if( usize != vsize ) { - _gcry_mpih_sub(wp, up, usize, vp, vsize); - wsize = usize; - MPN_NORMALIZE(wp, wsize); - wsign = usign; - } - else if( _gcry_mpih_cmp(up, vp, usize) < 0 ) { - _gcry_mpih_sub_n(wp, vp, up, usize); - wsize = usize; - MPN_NORMALIZE(wp, wsize); - if( !usign ) - wsign = 1; - } - else { - _gcry_mpih_sub_n(wp, up, vp, usize); - wsize = usize; - MPN_NORMALIZE(wp, wsize); - if( usign ) - wsign = 1; - } - } - else { /* U and V have same sign. Add them. */ - mpi_limb_t cy = _gcry_mpih_add(wp, up, usize, vp, vsize); - wp[usize] = cy; - wsize = usize + cy; - if( usign ) - wsign = 1; - } - - w->nlimbs = wsize; - w->sign = wsign; -} - - -/**************** - * Subtract the unsigned integer V from the mpi-integer U and store the - * result in W. - */ -void -gcry_mpi_sub_ui(gcry_mpi_t w, gcry_mpi_t u, unsigned long v ) -{ - mpi_ptr_t wp, up; - mpi_size_t usize, wsize; - int usign, wsign; - - usize = u->nlimbs; - usign = u->sign; - wsign = 0; - - /* If not space for W (and possible carry), increase space. */ - wsize = usize + 1; - if( w->alloced < wsize ) - mpi_resize(w, wsize); - - /* These must be after realloc (U may be the same as W). */ - up = u->d; - wp = w->d; - - if( !usize ) { /* simple */ - wp[0] = v; - wsize = v? 1:0; - wsign = 1; - } - else if( usign ) { /* mpi and v are negative */ - mpi_limb_t cy; - cy = _gcry_mpih_add_1(wp, up, usize, v); - wp[usize] = cy; - wsize = usize + cy; - } - else { /* The signs are different. Need exact comparison to determine - * which operand to subtract from which. */ - if( usize == 1 && up[0] < v ) { - wp[0] = v - up[0]; - wsize = 1; - wsign = 1; - } - else { - _gcry_mpih_sub_1(wp, up, usize, v); - /* Size can decrease with at most one limb. */ - wsize = usize - (wp[usize-1]==0); - } - } - - w->nlimbs = wsize; - w->sign = wsign; -} - -void -gcry_mpi_sub(gcry_mpi_t w, gcry_mpi_t u, gcry_mpi_t v) -{ - gcry_mpi_t vv = mpi_copy (v); - vv->sign = ! vv->sign; - gcry_mpi_add (w, u, vv); - mpi_free (vv); -} - - -void -gcry_mpi_addm( gcry_mpi_t w, gcry_mpi_t u, gcry_mpi_t v, gcry_mpi_t m) -{ - gcry_mpi_add(w, u, v); - _gcry_mpi_fdiv_r( w, w, m ); -} - -void -gcry_mpi_subm( gcry_mpi_t w, gcry_mpi_t u, gcry_mpi_t v, gcry_mpi_t m) -{ - gcry_mpi_sub(w, u, v); - _gcry_mpi_fdiv_r( w, w, m ); -} diff --git a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/mpi-asm-defs.h b/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/mpi-asm-defs.h deleted file mode 100644 index 13424e280..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/mpi-asm-defs.h +++ /dev/null @@ -1,10 +0,0 @@ -/* This file defines some basic constants for the MPI machinery. We - * need to define the types on a per-CPU basis, so it is done with - * this file here. */ -#define BYTES_PER_MPI_LIMB (SIZEOF_UNSIGNED_LONG) - - - - - - diff --git a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/mpi-bit.c b/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/mpi-bit.c deleted file mode 100644 index 05b9f12bb..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/mpi-bit.c +++ /dev/null @@ -1,366 +0,0 @@ -/* This file was automatically imported with - import_gcry.py. Please don't modify it */ -/* mpi-bit.c - MPI bit level functions - * Copyright (C) 1998, 1999, 2001, 2002, 2006 Free Software Foundation, Inc. - * - * This file is part of Libgcrypt. - * - * Libgcrypt is free software; you can redistribute it and/or modify - * it under the terms of the GNU Lesser General Public License as - * published by the Free Software Foundation; either version 2.1 of - * the License, or (at your option) any later version. - * - * Libgcrypt is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA - */ - -#include -#include -#include -#include "mpi-internal.h" -#include "longlong.h" - - -#ifdef MPI_INTERNAL_NEED_CLZ_TAB -#ifdef __STDC__ -const -#endif -unsigned char -_gcry_clz_tab[] = -{ - 0,1,2,2,3,3,3,3,4,4,4,4,4,4,4,4,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, - 6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6, - 7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7, - 7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7, - 8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8, - 8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8, - 8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8, - 8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8, -}; -#endif - - -#define A_LIMB_1 ((mpi_limb_t)1) - - -/**************** - * Sometimes we have MSL (most significant limbs) which are 0; - * this is for some reasons not good, so this function removes them. - */ -void -_gcry_mpi_normalize( gcry_mpi_t a ) -{ - if( mpi_is_opaque(a) ) - return; - - for( ; a->nlimbs && !a->d[a->nlimbs-1]; a->nlimbs-- ) - ; -} - - - -/**************** - * Return the number of bits in A. - */ -unsigned int -gcry_mpi_get_nbits( gcry_mpi_t a ) -{ - unsigned n; - - if( mpi_is_opaque(a) ) { - return a->sign; /* which holds the number of bits */ - } - - _gcry_mpi_normalize( a ); - if( a->nlimbs ) { - mpi_limb_t alimb = a->d[a->nlimbs-1]; - if( alimb ) - count_leading_zeros( n, alimb ); - else - n = BITS_PER_MPI_LIMB; - n = BITS_PER_MPI_LIMB - n + (a->nlimbs-1) * BITS_PER_MPI_LIMB; - } - else - n = 0; - return n; -} - - -/**************** - * Test whether bit N is set. - */ -int -gcry_mpi_test_bit( gcry_mpi_t a, unsigned int n ) -{ - unsigned int limbno, bitno; - mpi_limb_t limb; - - limbno = n / BITS_PER_MPI_LIMB; - bitno = n % BITS_PER_MPI_LIMB; - - if( limbno >= a->nlimbs ) - return 0; /* too far left: this is a 0 */ - limb = a->d[limbno]; - return (limb & (A_LIMB_1 << bitno))? 1: 0; -} - - -/**************** - * Set bit N of A. - */ -void -gcry_mpi_set_bit( gcry_mpi_t a, unsigned int n ) -{ - unsigned int limbno, bitno; - - limbno = n / BITS_PER_MPI_LIMB; - bitno = n % BITS_PER_MPI_LIMB; - - if ( limbno >= a->nlimbs ) - { - mpi_resize (a, limbno+1 ); - a->nlimbs = limbno+1; - } - a->d[limbno] |= (A_LIMB_1<= a->nlimbs ) - { - mpi_resize (a, limbno+1 ); - a->nlimbs = limbno+1; - } - a->d[limbno] |= (A_LIMB_1<d[limbno] &= ~(A_LIMB_1 << bitno); - a->nlimbs = limbno+1; -} - -/**************** - * clear bit N of A and all bits above - */ -void -gcry_mpi_clear_highbit( gcry_mpi_t a, unsigned int n ) -{ - unsigned int limbno, bitno; - - limbno = n / BITS_PER_MPI_LIMB; - bitno = n % BITS_PER_MPI_LIMB; - - if( limbno >= a->nlimbs ) - return; /* not allocated, therefore no need to clear bits - :-) */ - - for( ; bitno < BITS_PER_MPI_LIMB; bitno++ ) - a->d[limbno] &= ~(A_LIMB_1 << bitno); - a->nlimbs = limbno+1; -} - -/**************** - * Clear bit N of A. - */ -void -gcry_mpi_clear_bit( gcry_mpi_t a, unsigned int n ) -{ - unsigned int limbno, bitno; - - limbno = n / BITS_PER_MPI_LIMB; - bitno = n % BITS_PER_MPI_LIMB; - - if( limbno >= a->nlimbs ) - return; /* don't need to clear this bit, it's to far to left */ - a->d[limbno] &= ~(A_LIMB_1 << bitno); -} - - -/**************** - * Shift A by COUNT limbs to the right - * This is used only within the MPI library - */ -void -_gcry_mpi_rshift_limbs( gcry_mpi_t a, unsigned int count ) -{ - mpi_ptr_t ap = a->d; - mpi_size_t n = a->nlimbs; - unsigned int i; - - if( count >= n ) { - a->nlimbs = 0; - return; - } - - for( i = 0; i < n - count; i++ ) - ap[i] = ap[i+count]; - ap[i] = 0; - a->nlimbs -= count; -} - - -/* - * Shift A by N bits to the right. - */ -void -gcry_mpi_rshift ( gcry_mpi_t x, gcry_mpi_t a, unsigned int n ) -{ - mpi_size_t xsize; - unsigned int i; - unsigned int nlimbs = (n/BITS_PER_MPI_LIMB); - unsigned int nbits = (n%BITS_PER_MPI_LIMB); - - if ( x == a ) - { - /* In-place operation. */ - if ( nlimbs >= x->nlimbs ) - { - x->nlimbs = 0; - return; - } - - if (nlimbs) - { - for (i=0; i < x->nlimbs - nlimbs; i++ ) - x->d[i] = x->d[i+nlimbs]; - x->d[i] = 0; - x->nlimbs -= nlimbs; - - } - if ( x->nlimbs && nbits ) - _gcry_mpih_rshift ( x->d, x->d, x->nlimbs, nbits ); - } - else if ( nlimbs ) - { - /* Copy and shift by more or equal bits than in a limb. */ - xsize = a->nlimbs; - x->sign = a->sign; - RESIZE_IF_NEEDED (x, xsize); - x->nlimbs = xsize; - for (i=0; i < a->nlimbs; i++ ) - x->d[i] = a->d[i]; - x->nlimbs = i; - - if ( nlimbs >= x->nlimbs ) - { - x->nlimbs = 0; - return; - } - - if (nlimbs) - { - for (i=0; i < x->nlimbs - nlimbs; i++ ) - x->d[i] = x->d[i+nlimbs]; - x->d[i] = 0; - x->nlimbs -= nlimbs; - } - - if ( x->nlimbs && nbits ) - _gcry_mpih_rshift ( x->d, x->d, x->nlimbs, nbits ); - } - else - { - /* Copy and shift by less than bits in a limb. */ - xsize = a->nlimbs; - x->sign = a->sign; - RESIZE_IF_NEEDED (x, xsize); - x->nlimbs = xsize; - - if ( xsize ) - { - if (nbits ) - _gcry_mpih_rshift (x->d, a->d, x->nlimbs, nbits ); - else - { - /* The rshift helper function is not specified for - NBITS==0, thus we do a plain copy here. */ - for (i=0; i < x->nlimbs; i++ ) - x->d[i] = a->d[i]; - } - } - } - MPN_NORMALIZE (x->d, x->nlimbs); -} - - -/**************** - * Shift A by COUNT limbs to the left - * This is used only within the MPI library - */ -void -_gcry_mpi_lshift_limbs (gcry_mpi_t a, unsigned int count) -{ - mpi_ptr_t ap; - int n = a->nlimbs; - int i; - - if (!count || !n) - return; - - RESIZE_IF_NEEDED (a, n+count); - - ap = a->d; - for (i = n-1; i >= 0; i--) - ap[i+count] = ap[i]; - for (i=0; i < count; i++ ) - ap[i] = 0; - a->nlimbs += count; -} - - -/* - * Shift A by N bits to the left. - */ -void -gcry_mpi_lshift ( gcry_mpi_t x, gcry_mpi_t a, unsigned int n ) -{ - unsigned int nlimbs = (n/BITS_PER_MPI_LIMB); - unsigned int nbits = (n%BITS_PER_MPI_LIMB); - - if (x == a && !n) - return; /* In-place shift with an amount of zero. */ - - if ( x != a ) - { - /* Copy A to X. */ - unsigned int alimbs = a->nlimbs; - int asign = a->sign; - mpi_ptr_t xp, ap; - - RESIZE_IF_NEEDED (x, alimbs+nlimbs+1); - xp = x->d; - ap = a->d; - MPN_COPY (xp, ap, alimbs); - x->nlimbs = alimbs; - x->flags = a->flags; - x->sign = asign; - } - - if (nlimbs && !nbits) - { - /* Shift a full number of limbs. */ - _gcry_mpi_lshift_limbs (x, nlimbs); - } - else if (n) - { - /* We use a very dump approach: Shift left by the number of - limbs plus one and than fix it up by an rshift. */ - _gcry_mpi_lshift_limbs (x, nlimbs+1); - gcry_mpi_rshift (x, x, BITS_PER_MPI_LIMB - nbits); - } - - MPN_NORMALIZE (x->d, x->nlimbs); -} diff --git a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/mpi-cmp.c b/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/mpi-cmp.c deleted file mode 100644 index b0ebbc162..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/mpi-cmp.c +++ /dev/null @@ -1,109 +0,0 @@ -/* This file was automatically imported with - import_gcry.py. Please don't modify it */ -/* mpi-cmp.c - MPI functions - * Copyright (C) 1998, 1999, 2001, 2002, 2005 Free Software Foundation, Inc. - * - * This file is part of Libgcrypt. - * - * Libgcrypt is free software; you can redistribute it and/or modify - * it under the terms of the GNU Lesser General Public License as - * published by the Free Software Foundation; either version 2.1 of - * the License, or (at your option) any later version. - * - * Libgcrypt is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA - */ - -#include -#include -#include -#include "mpi-internal.h" - -int -gcry_mpi_cmp_ui (gcry_mpi_t u, unsigned long v) -{ - mpi_limb_t limb = v; - - _gcry_mpi_normalize (u); - - /* Handle the case that U contains no limb. */ - if (u->nlimbs == 0) - return -(limb != 0); - - /* Handle the case that U is negative. */ - if (u->sign) - return -1; - - if (u->nlimbs == 1) - { - /* Handle the case that U contains exactly one limb. */ - - if (u->d[0] > limb) - return 1; - if (u->d[0] < limb) - return -1; - return 0; - } - else - /* Handle the case that U contains more than one limb. */ - return 1; -} - - -int -gcry_mpi_cmp (gcry_mpi_t u, gcry_mpi_t v) -{ - mpi_size_t usize; - mpi_size_t vsize; - int cmp; - - if (mpi_is_opaque (u) || mpi_is_opaque (v)) - { - if (mpi_is_opaque (u) && !mpi_is_opaque (v)) - return -1; - if (!mpi_is_opaque (u) && mpi_is_opaque (v)) - return 1; - if (!u->sign && !v->sign) - return 0; /* Empty buffers are identical. */ - if (u->sign < v->sign) - return -1; - if (u->sign > v->sign) - return 1; - return memcmp (u->d, v->d, (u->sign+7)/8); - } - else - { - _gcry_mpi_normalize (u); - _gcry_mpi_normalize (v); - - usize = u->nlimbs; - vsize = v->nlimbs; - - /* Compare sign bits. */ - - if (!u->sign && v->sign) - return 1; - if (u->sign && !v->sign) - return -1; - - /* U and V are either both positive or both negative. */ - - if (usize != vsize && !u->sign && !v->sign) - return usize - vsize; - if (usize != vsize && u->sign && v->sign) - return vsize + usize; - if (!usize ) - return 0; - if (!(cmp = _gcry_mpih_cmp (u->d, v->d, usize))) - return 0; - if ((cmp < 0?1:0) == (u->sign?1:0)) - return 1; - } - return -1; -} diff --git a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/mpi-div.c b/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/mpi-div.c deleted file mode 100644 index 5218caa74..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/mpi-div.c +++ /dev/null @@ -1,357 +0,0 @@ -/* This file was automatically imported with - import_gcry.py. Please don't modify it */ -/* mpi-div.c - MPI functions - * Copyright (C) 1994, 1996, 1998, 2001, 2002, - * 2003 Free Software Foundation, Inc. - * - * This file is part of Libgcrypt. - * - * Libgcrypt is free software; you can redistribute it and/or modify - * it under the terms of the GNU Lesser General Public License as - * published by the Free Software Foundation; either version 2.1 of - * the License, or (at your option) any later version. - * - * Libgcrypt is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA - * - * Note: This code is heavily based on the GNU MP Library. - * Actually it's the same code with only minor changes in the - * way the data is stored; this is to support the abstraction - * of an optional secure memory allocation which may be used - * to avoid revealing of sensitive data due to paging etc. - */ - -#include -#include -#include -#include "mpi-internal.h" -#include "longlong.h" -#include "g10lib.h" - - -void -_gcry_mpi_fdiv_r( gcry_mpi_t rem, gcry_mpi_t dividend, gcry_mpi_t divisor ) -{ - int divisor_sign = divisor->sign; - gcry_mpi_t temp_divisor = NULL; - - /* We need the original value of the divisor after the remainder has been - * preliminary calculated. We have to copy it to temporary space if it's - * the same variable as REM. */ - if( rem == divisor ) { - temp_divisor = mpi_copy( divisor ); - divisor = temp_divisor; - } - - _gcry_mpi_tdiv_r( rem, dividend, divisor ); - - if( ((divisor_sign?1:0) ^ (dividend->sign?1:0)) && rem->nlimbs ) - gcry_mpi_add( rem, rem, divisor); - - if( temp_divisor ) - mpi_free(temp_divisor); -} - - - -/**************** - * Division rounding the quotient towards -infinity. - * The remainder gets the same sign as the denominator. - * rem is optional - */ - -ulong -_gcry_mpi_fdiv_r_ui( gcry_mpi_t rem, gcry_mpi_t dividend, ulong divisor ) -{ - mpi_limb_t rlimb; - - rlimb = _gcry_mpih_mod_1( dividend->d, dividend->nlimbs, divisor ); - if( rlimb && dividend->sign ) - rlimb = divisor - rlimb; - - if( rem ) { - rem->d[0] = rlimb; - rem->nlimbs = rlimb? 1:0; - } - return rlimb; -} - - -void -_gcry_mpi_fdiv_q( gcry_mpi_t quot, gcry_mpi_t dividend, gcry_mpi_t divisor ) -{ - gcry_mpi_t tmp = mpi_alloc( mpi_get_nlimbs(quot) ); - _gcry_mpi_fdiv_qr( quot, tmp, dividend, divisor); - mpi_free(tmp); -} - -void -_gcry_mpi_fdiv_qr( gcry_mpi_t quot, gcry_mpi_t rem, gcry_mpi_t dividend, gcry_mpi_t divisor ) -{ - int divisor_sign = divisor->sign; - gcry_mpi_t temp_divisor = NULL; - - if( quot == divisor || rem == divisor ) { - temp_divisor = mpi_copy( divisor ); - divisor = temp_divisor; - } - - _gcry_mpi_tdiv_qr( quot, rem, dividend, divisor ); - - if( (divisor_sign ^ dividend->sign) && rem->nlimbs ) { - gcry_mpi_sub_ui( quot, quot, 1 ); - gcry_mpi_add( rem, rem, divisor); - } - - if( temp_divisor ) - mpi_free(temp_divisor); -} - - -/* If den == quot, den needs temporary storage. - * If den == rem, den needs temporary storage. - * If num == quot, num needs temporary storage. - * If den has temporary storage, it can be normalized while being copied, - * i.e no extra storage should be allocated. - */ - -void -_gcry_mpi_tdiv_r( gcry_mpi_t rem, gcry_mpi_t num, gcry_mpi_t den) -{ - _gcry_mpi_tdiv_qr(NULL, rem, num, den ); -} - -void -_gcry_mpi_tdiv_qr( gcry_mpi_t quot, gcry_mpi_t rem, gcry_mpi_t num, gcry_mpi_t den) -{ - mpi_ptr_t np, dp; - mpi_ptr_t qp, rp; - mpi_size_t nsize = num->nlimbs; - mpi_size_t dsize = den->nlimbs; - mpi_size_t qsize, rsize; - mpi_size_t sign_remainder = num->sign; - mpi_size_t sign_quotient = num->sign ^ den->sign; - unsigned normalization_steps; - mpi_limb_t q_limb; - mpi_ptr_t marker[5]; - unsigned int marker_nlimbs[5]; - int markidx=0; - - /* Ensure space is enough for quotient and remainder. - * We need space for an extra limb in the remainder, because it's - * up-shifted (normalized) below. */ - rsize = nsize + 1; - mpi_resize( rem, rsize); - - qsize = rsize - dsize; /* qsize cannot be bigger than this. */ - if( qsize <= 0 ) { - if( num != rem ) { - rem->nlimbs = num->nlimbs; - rem->sign = num->sign; - MPN_COPY(rem->d, num->d, nsize); - } - if( quot ) { - /* This needs to follow the assignment to rem, in case the - * numerator and quotient are the same. */ - quot->nlimbs = 0; - quot->sign = 0; - } - return; - } - - if( quot ) - mpi_resize( quot, qsize); - - /* Read pointers here, when reallocation is finished. */ - np = num->d; - dp = den->d; - rp = rem->d; - - /* Optimize division by a single-limb divisor. */ - if( dsize == 1 ) { - mpi_limb_t rlimb; - if( quot ) { - qp = quot->d; - rlimb = _gcry_mpih_divmod_1( qp, np, nsize, dp[0] ); - qsize -= qp[qsize - 1] == 0; - quot->nlimbs = qsize; - quot->sign = sign_quotient; - } - else - rlimb = _gcry_mpih_mod_1( np, nsize, dp[0] ); - rp[0] = rlimb; - rsize = rlimb != 0?1:0; - rem->nlimbs = rsize; - rem->sign = sign_remainder; - return; - } - - - if( quot ) { - qp = quot->d; - /* Make sure QP and NP point to different objects. Otherwise the - * numerator would be gradually overwritten by the quotient limbs. */ - if(qp == np) { /* Copy NP object to temporary space. */ - marker_nlimbs[markidx] = nsize; - np = marker[markidx++] = mpi_alloc_limb_space(nsize, - mpi_is_secure(quot)); - MPN_COPY(np, qp, nsize); - } - } - else /* Put quotient at top of remainder. */ - qp = rp + dsize; - - count_leading_zeros( normalization_steps, dp[dsize - 1] ); - - /* Normalize the denominator, i.e. make its most significant bit set by - * shifting it NORMALIZATION_STEPS bits to the left. Also shift the - * numerator the same number of steps (to keep the quotient the same!). - */ - if( normalization_steps ) { - mpi_ptr_t tp; - mpi_limb_t nlimb; - - /* Shift up the denominator setting the most significant bit of - * the most significant word. Use temporary storage not to clobber - * the original contents of the denominator. */ - marker_nlimbs[markidx] = dsize; - tp = marker[markidx++] = mpi_alloc_limb_space(dsize,mpi_is_secure(den)); - _gcry_mpih_lshift( tp, dp, dsize, normalization_steps ); - dp = tp; - - /* Shift up the numerator, possibly introducing a new most - * significant word. Move the shifted numerator in the remainder - * meanwhile. */ - nlimb = _gcry_mpih_lshift(rp, np, nsize, normalization_steps); - if( nlimb ) { - rp[nsize] = nlimb; - rsize = nsize + 1; - } - else - rsize = nsize; - } - else { - /* The denominator is already normalized, as required. Copy it to - * temporary space if it overlaps with the quotient or remainder. */ - if( dp == rp || (quot && (dp == qp))) { - mpi_ptr_t tp; - - marker_nlimbs[markidx] = dsize; - tp = marker[markidx++] = mpi_alloc_limb_space(dsize, - mpi_is_secure(den)); - MPN_COPY( tp, dp, dsize ); - dp = tp; - } - - /* Move the numerator to the remainder. */ - if( rp != np ) - MPN_COPY(rp, np, nsize); - - rsize = nsize; - } - - q_limb = _gcry_mpih_divrem( qp, 0, rp, rsize, dp, dsize ); - - if( quot ) { - qsize = rsize - dsize; - if(q_limb) { - qp[qsize] = q_limb; - qsize += 1; - } - - quot->nlimbs = qsize; - quot->sign = sign_quotient; - } - - rsize = dsize; - MPN_NORMALIZE (rp, rsize); - - if( normalization_steps && rsize ) { - _gcry_mpih_rshift(rp, rp, rsize, normalization_steps); - rsize -= rp[rsize - 1] == 0?1:0; - } - - rem->nlimbs = rsize; - rem->sign = sign_remainder; - while( markidx ) - { - markidx--; - _gcry_mpi_free_limb_space (marker[markidx], marker_nlimbs[markidx]); - } -} - -void -_gcry_mpi_tdiv_q_2exp( gcry_mpi_t w, gcry_mpi_t u, unsigned int count ) -{ - mpi_size_t usize, wsize; - mpi_size_t limb_cnt; - - usize = u->nlimbs; - limb_cnt = count / BITS_PER_MPI_LIMB; - wsize = usize - limb_cnt; - if( limb_cnt >= usize ) - w->nlimbs = 0; - else { - mpi_ptr_t wp; - mpi_ptr_t up; - - RESIZE_IF_NEEDED( w, wsize ); - wp = w->d; - up = u->d; - - count %= BITS_PER_MPI_LIMB; - if( count ) { - _gcry_mpih_rshift( wp, up + limb_cnt, wsize, count ); - wsize -= !wp[wsize - 1]; - } - else { - MPN_COPY_INCR( wp, up + limb_cnt, wsize); - } - - w->nlimbs = wsize; - } -} - -/**************** - * Check whether dividend is divisible by divisor - * (note: divisor must fit into a limb) - */ -int -_gcry_mpi_divisible_ui(gcry_mpi_t dividend, ulong divisor ) -{ - return !_gcry_mpih_mod_1( dividend->d, dividend->nlimbs, divisor ); -} - - -void -gcry_mpi_div (gcry_mpi_t quot, gcry_mpi_t rem, gcry_mpi_t dividend, gcry_mpi_t divisor, int round) -{ - if (!round) - { - if (!rem) - { - gcry_mpi_t tmp = mpi_alloc (mpi_get_nlimbs(quot)); - _gcry_mpi_tdiv_qr (quot, tmp, dividend, divisor); - mpi_free (tmp); - } - else - _gcry_mpi_tdiv_qr (quot, rem, dividend, divisor); - } - else if (round < 0) - { - if (!rem) - _gcry_mpi_fdiv_q (quot, dividend, divisor); - else if (!quot) - _gcry_mpi_fdiv_r (rem, dividend, divisor); - else - _gcry_mpi_fdiv_qr (quot, rem, dividend, divisor); - } - else - log_bug ("mpi rounding to ceiling not yet implemented\n"); -} diff --git a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/mpi-gcd.c b/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/mpi-gcd.c deleted file mode 100644 index 34bd24941..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/mpi-gcd.c +++ /dev/null @@ -1,53 +0,0 @@ -/* This file was automatically imported with - import_gcry.py. Please don't modify it */ -/* mpi-gcd.c - MPI functions - * Copyright (C) 1998, 2001, 2002, 2003 Free Software Foundation, Inc. - * - * This file is part of Libgcrypt. - * - * Libgcrypt is free software; you can redistribute it and/or modify - * it under the terms of the GNU Lesser General Public License as - * published by the Free Software Foundation; either version 2.1 of - * the License, or (at your option) any later version. - * - * Libgcrypt is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA - */ - -#include -#include -#include -#include "mpi-internal.h" - -/**************** - * Find the greatest common divisor G of A and B. - * Return: true if this 1, false in all other cases - */ -int -gcry_mpi_gcd( gcry_mpi_t g, gcry_mpi_t xa, gcry_mpi_t xb ) -{ - gcry_mpi_t a, b; - - a = mpi_copy(xa); - b = mpi_copy(xb); - - /* TAOCP Vol II, 4.5.2, Algorithm A */ - a->sign = 0; - b->sign = 0; - while( gcry_mpi_cmp_ui( b, 0 ) ) { - _gcry_mpi_fdiv_r( g, a, b ); /* g used as temorary variable */ - mpi_set(a,b); - mpi_set(b,g); - } - mpi_set(g, a); - - mpi_free(a); - mpi_free(b); - return !gcry_mpi_cmp_ui( g, 1); -} diff --git a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/mpi-inline.c b/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/mpi-inline.c deleted file mode 100644 index 4e3e8f3de..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/mpi-inline.c +++ /dev/null @@ -1,37 +0,0 @@ -/* This file was automatically imported with - import_gcry.py. Please don't modify it */ -/* mpi-inline.c - * Copyright (C) 1999, 2002 Free Software Foundation, Inc. - * - * This file is part of Libgcrypt. - * - * Libgcrypt is free software; you can redistribute it and/or modify - * it under the terms of the GNU Lesser General Public License as - * published by the Free Software Foundation; either version 2.1 of - * the License, or (at your option) any later version. - * - * Libgcrypt is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA - */ - -#include -#include -#include - -/* put the inline functions as real functions into the lib */ -#define G10_MPI_INLINE_DECL - -#include "mpi-internal.h" - -/* always include the header because it is only - * included by mpi-internal if __GCC__ is defined but we - * need it here in all cases and the above definition of - * of the macro allows us to do so - */ -#include "mpi-inline.h" diff --git a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/mpi-inline.h b/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/mpi-inline.h deleted file mode 100644 index 0818d2053..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/mpi-inline.h +++ /dev/null @@ -1,163 +0,0 @@ -/* This file was automatically imported with - import_gcry.py. Please don't modify it */ -/* mpi-inline.h - Internal to the Multi Precision Integers - * Copyright (C) 1994, 1996, 1998, 1999, - * 2001, 2002 Free Software Foundation, Inc. - * - * This file is part of Libgcrypt. - * - * Libgcrypt is free software; you can redistribute it and/or modify - * it under the terms of the GNU Lesser General Public License as - * published by the Free Software Foundation; either version 2.1 of - * the License, or (at your option) any later version. - * - * Libgcrypt is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA - * - * Note: This code is heavily based on the GNU MP Library. - * Actually it's the same code with only minor changes in the - * way the data is stored; this is to support the abstraction - * of an optional secure memory allocation which may be used - * to avoid revealing of sensitive data due to paging etc. - */ - -#ifndef G10_MPI_INLINE_H -#define G10_MPI_INLINE_H - -/* Starting with gcc 4.3 "extern inline" conforms in c99 mode to the - c99 semantics. To keep the useful old semantics we use an - attribute. */ -#ifndef G10_MPI_INLINE_DECL -# ifdef __GNUC_STDC_INLINE__ -# define G10_MPI_INLINE_DECL extern inline __attribute__ ((__gnu_inline__)) -# else -# define G10_MPI_INLINE_DECL extern __inline__ -# endif -#endif - -G10_MPI_INLINE_DECL mpi_limb_t -_gcry_mpih_add_1( mpi_ptr_t res_ptr, mpi_ptr_t s1_ptr, - mpi_size_t s1_size, mpi_limb_t s2_limb) -{ - mpi_limb_t x; - - x = *s1_ptr++; - s2_limb += x; - *res_ptr++ = s2_limb; - if( s2_limb < x ) { /* sum is less than the left operand: handle carry */ - while( --s1_size ) { - x = *s1_ptr++ + 1; /* add carry */ - *res_ptr++ = x; /* and store */ - if( x ) /* not 0 (no overflow): we can stop */ - goto leave; - } - return 1; /* return carry (size of s1 to small) */ - } - - leave: - if( res_ptr != s1_ptr ) { /* not the same variable */ - mpi_size_t i; /* copy the rest */ - for( i=0; i < s1_size-1; i++ ) - res_ptr[i] = s1_ptr[i]; - } - return 0; /* no carry */ -} - - - -G10_MPI_INLINE_DECL mpi_limb_t -_gcry_mpih_add(mpi_ptr_t res_ptr, mpi_ptr_t s1_ptr, mpi_size_t s1_size, - mpi_ptr_t s2_ptr, mpi_size_t s2_size) -{ - mpi_limb_t cy = 0; - - if( s2_size ) - cy = _gcry_mpih_add_n( res_ptr, s1_ptr, s2_ptr, s2_size ); - - if( s1_size - s2_size ) - cy = _gcry_mpih_add_1( res_ptr + s2_size, s1_ptr + s2_size, - s1_size - s2_size, cy); - return cy; -} - - -G10_MPI_INLINE_DECL mpi_limb_t -_gcry_mpih_sub_1(mpi_ptr_t res_ptr, mpi_ptr_t s1_ptr, - mpi_size_t s1_size, mpi_limb_t s2_limb ) -{ - mpi_limb_t x; - - x = *s1_ptr++; - s2_limb = x - s2_limb; - *res_ptr++ = s2_limb; - if( s2_limb > x ) { - while( --s1_size ) { - x = *s1_ptr++; - *res_ptr++ = x - 1; - if( x ) - goto leave; - } - return 1; - } - - leave: - if( res_ptr != s1_ptr ) { - mpi_size_t i; - for( i=0; i < s1_size-1; i++ ) - res_ptr[i] = s1_ptr[i]; - } - return 0; -} - - - -G10_MPI_INLINE_DECL mpi_limb_t -_gcry_mpih_sub( mpi_ptr_t res_ptr, mpi_ptr_t s1_ptr, mpi_size_t s1_size, - mpi_ptr_t s2_ptr, mpi_size_t s2_size) -{ - mpi_limb_t cy = 0; - - if( s2_size ) - cy = _gcry_mpih_sub_n(res_ptr, s1_ptr, s2_ptr, s2_size); - - if( s1_size - s2_size ) - cy = _gcry_mpih_sub_1(res_ptr + s2_size, s1_ptr + s2_size, - s1_size - s2_size, cy); - return cy; -} - -/**************** - * Compare OP1_PTR/OP1_SIZE with OP2_PTR/OP2_SIZE. - * There are no restrictions on the relative sizes of - * the two arguments. - * Return 1 if OP1 > OP2, 0 if they are equal, and -1 if OP1 < OP2. - */ -G10_MPI_INLINE_DECL int -_gcry_mpih_cmp( mpi_ptr_t op1_ptr, mpi_ptr_t op2_ptr, mpi_size_t size ) -{ - mpi_size_t i; - mpi_limb_t op1_word, op2_word; - - for( i = size - 1; i >= 0 ; i--) { - op1_word = op1_ptr[i]; - op2_word = op2_ptr[i]; - if( op1_word != op2_word ) - goto diff; - } - return 0; - - diff: - /* This can *not* be simplified to - * op2_word - op2_word - * since that expression might give signed overflow. */ - return (op1_word > op2_word) ? 1 : -1; -} - - -#endif /*G10_MPI_INLINE_H*/ diff --git a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/mpi-internal.h b/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/mpi-internal.h deleted file mode 100644 index c9684f2bb..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/mpi-internal.h +++ /dev/null @@ -1,279 +0,0 @@ -/* This file was automatically imported with - import_gcry.py. Please don't modify it */ -/* mpi-internal.h - Internal to the Multi Precision Integers - * Copyright (C) 1994, 1996, 1998, 2000, 2002, - * 2003 Free Software Foundation, Inc. - * - * This file is part of Libgcrypt. - * - * Libgcrypt is free software; you can redistribute it and/or modify - * it under the terms of the GNU Lesser General Public License as - * published by the Free Software Foundation; either version 2.1 of - * the License, or (at your option) any later version. - * - * Libgcrypt is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA - * - * Note: This code is heavily based on the GNU MP Library. - * Actually it's the same code with only minor changes in the - * way the data is stored; this is to support the abstraction - * of an optional secure memory allocation which may be used - * to avoid revealing of sensitive data due to paging etc. - */ - -#ifndef G10_MPI_INTERNAL_H -#define G10_MPI_INTERNAL_H - -#include "mpi-asm-defs.h" - -#ifndef BITS_PER_MPI_LIMB -#if BYTES_PER_MPI_LIMB == SIZEOF_UNSIGNED_INT - typedef unsigned int mpi_limb_t; - typedef signed int mpi_limb_signed_t; -#elif BYTES_PER_MPI_LIMB == SIZEOF_UNSIGNED_LONG - typedef unsigned long int mpi_limb_t; - typedef signed long int mpi_limb_signed_t; -#elif BYTES_PER_MPI_LIMB == SIZEOF_UNSIGNED_LONG_LONG - typedef unsigned long long int mpi_limb_t; - typedef signed long long int mpi_limb_signed_t; -#elif BYTES_PER_MPI_LIMB == SIZEOF_UNSIGNED_SHORT - typedef unsigned short int mpi_limb_t; - typedef signed short int mpi_limb_signed_t; -#else -#error BYTES_PER_MPI_LIMB does not match any C type -#endif -#define BITS_PER_MPI_LIMB (8*BYTES_PER_MPI_LIMB) -#endif /*BITS_PER_MPI_LIMB*/ - -#include "mpi.h" - -/* If KARATSUBA_THRESHOLD is not already defined, define it to a - * value which is good on most machines. */ - -/* tested 4, 16, 32 and 64, where 16 gave the best performance when - * checking a 768 and a 1024 bit ElGamal signature. - * (wk 22.12.97) */ -#ifndef KARATSUBA_THRESHOLD -#define KARATSUBA_THRESHOLD 16 -#endif - -/* The code can't handle KARATSUBA_THRESHOLD smaller than 2. */ -#if KARATSUBA_THRESHOLD < 2 -#undef KARATSUBA_THRESHOLD -#define KARATSUBA_THRESHOLD 2 -#endif - - -typedef mpi_limb_t *mpi_ptr_t; /* pointer to a limb */ -typedef int mpi_size_t; /* (must be a signed type) */ - -#define ABS(x) (x >= 0 ? x : -x) -#define MIN(l,o) ((l) < (o) ? (l) : (o)) -#define MAX(h,i) ((h) > (i) ? (h) : (i)) -#define RESIZE_IF_NEEDED(a,b) \ - do { \ - if( (a)->alloced < (b) ) \ - mpi_resize((a), (b)); \ - } while(0) - -/* Copy N limbs from S to D. */ -#define MPN_COPY( d, s, n) \ - do { \ - mpi_size_t _i; \ - for( _i = 0; _i < (n); _i++ ) \ - (d)[_i] = (s)[_i]; \ - } while(0) - -#define MPN_COPY_INCR( d, s, n) \ - do { \ - mpi_size_t _i; \ - for( _i = 0; _i < (n); _i++ ) \ - (d)[_i] = (d)[_i]; \ - } while (0) - -#define MPN_COPY_DECR( d, s, n ) \ - do { \ - mpi_size_t _i; \ - for( _i = (n)-1; _i >= 0; _i--) \ - (d)[_i] = (s)[_i]; \ - } while(0) - -/* Zero N limbs at D */ -#define MPN_ZERO(d, n) \ - do { \ - int _i; \ - for( _i = 0; _i < (n); _i++ ) \ - (d)[_i] = 0; \ - } while (0) - -#define MPN_NORMALIZE(d, n) \ - do { \ - while( (n) > 0 ) { \ - if( (d)[(n)-1] ) \ - break; \ - (n)--; \ - } \ - } while(0) - -#define MPN_NORMALIZE_NOT_ZERO(d, n) \ - do { \ - for(;;) { \ - if( (d)[(n)-1] ) \ - break; \ - (n)--; \ - } \ - } while(0) - -#define MPN_MUL_N_RECURSE(prodp, up, vp, size, tspace) \ - do { \ - if( (size) < KARATSUBA_THRESHOLD ) \ - mul_n_basecase (prodp, up, vp, size); \ - else \ - mul_n (prodp, up, vp, size, tspace); \ - } while (0); - - -/* Divide the two-limb number in (NH,,NL) by D, with DI being the largest - * limb not larger than (2**(2*BITS_PER_MP_LIMB))/D - (2**BITS_PER_MP_LIMB). - * If this would yield overflow, DI should be the largest possible number - * (i.e., only ones). For correct operation, the most significant bit of D - * has to be set. Put the quotient in Q and the remainder in R. - */ -#define UDIV_QRNND_PREINV(q, r, nh, nl, d, di) \ - do { \ - mpi_limb_t _q, _ql, _r; \ - mpi_limb_t _xh, _xl; \ - umul_ppmm (_q, _ql, (nh), (di)); \ - _q += (nh); /* DI is 2**BITS_PER_MPI_LIMB too small */ \ - umul_ppmm (_xh, _xl, _q, (d)); \ - sub_ddmmss (_xh, _r, (nh), (nl), _xh, _xl); \ - if( _xh ) { \ - sub_ddmmss (_xh, _r, _xh, _r, 0, (d)); \ - _q++; \ - if( _xh) { \ - sub_ddmmss (_xh, _r, _xh, _r, 0, (d)); \ - _q++; \ - } \ - } \ - if( _r >= (d) ) { \ - _r -= (d); \ - _q++; \ - } \ - (r) = _r; \ - (q) = _q; \ - } while (0) - - -/*-- mpiutil.c --*/ -#define mpi_alloc_limb_space(n,f) _gcry_mpi_alloc_limb_space((n),(f)) -mpi_ptr_t _gcry_mpi_alloc_limb_space( unsigned nlimbs, int sec ); -void _gcry_mpi_free_limb_space( mpi_ptr_t a, unsigned int nlimbs ); -void _gcry_mpi_assign_limb_space( gcry_mpi_t a, mpi_ptr_t ap, unsigned nlimbs ); - -/*-- mpi-bit.c --*/ -#define mpi_rshift_limbs(a,n) _gcry_mpi_rshift_limbs ((a), (n)) -#define mpi_lshift_limbs(a,n) _gcry_mpi_lshift_limbs ((a), (n)) - -void _gcry_mpi_rshift_limbs( gcry_mpi_t a, unsigned int count ); -void _gcry_mpi_lshift_limbs( gcry_mpi_t a, unsigned int count ); - - -/*-- mpih-add.c --*/ -mpi_limb_t _gcry_mpih_add_1(mpi_ptr_t res_ptr, mpi_ptr_t s1_ptr, - mpi_size_t s1_size, mpi_limb_t s2_limb ); -mpi_limb_t _gcry_mpih_add_n( mpi_ptr_t res_ptr, mpi_ptr_t s1_ptr, - mpi_ptr_t s2_ptr, mpi_size_t size); -mpi_limb_t _gcry_mpih_add(mpi_ptr_t res_ptr, mpi_ptr_t s1_ptr, mpi_size_t s1_size, - mpi_ptr_t s2_ptr, mpi_size_t s2_size); - -/*-- mpih-sub.c --*/ -mpi_limb_t _gcry_mpih_sub_1( mpi_ptr_t res_ptr, mpi_ptr_t s1_ptr, - mpi_size_t s1_size, mpi_limb_t s2_limb ); -mpi_limb_t _gcry_mpih_sub_n( mpi_ptr_t res_ptr, mpi_ptr_t s1_ptr, - mpi_ptr_t s2_ptr, mpi_size_t size); -mpi_limb_t _gcry_mpih_sub(mpi_ptr_t res_ptr, mpi_ptr_t s1_ptr, mpi_size_t s1_size, - mpi_ptr_t s2_ptr, mpi_size_t s2_size); - -/*-- mpih-cmp.c --*/ -int _gcry_mpih_cmp( mpi_ptr_t op1_ptr, mpi_ptr_t op2_ptr, mpi_size_t size ); - -/*-- mpih-mul.c --*/ - -struct karatsuba_ctx { - struct karatsuba_ctx *next; - mpi_ptr_t tspace; - unsigned int tspace_nlimbs; - mpi_size_t tspace_size; - mpi_ptr_t tp; - unsigned int tp_nlimbs; - mpi_size_t tp_size; -}; - -void _gcry_mpih_release_karatsuba_ctx( struct karatsuba_ctx *ctx ); - -mpi_limb_t _gcry_mpih_addmul_1( mpi_ptr_t res_ptr, mpi_ptr_t s1_ptr, - mpi_size_t s1_size, mpi_limb_t s2_limb); -mpi_limb_t _gcry_mpih_submul_1( mpi_ptr_t res_ptr, mpi_ptr_t s1_ptr, - mpi_size_t s1_size, mpi_limb_t s2_limb); -void _gcry_mpih_mul_n( mpi_ptr_t prodp, mpi_ptr_t up, mpi_ptr_t vp, - mpi_size_t size); -mpi_limb_t _gcry_mpih_mul( mpi_ptr_t prodp, mpi_ptr_t up, mpi_size_t usize, - mpi_ptr_t vp, mpi_size_t vsize); -void _gcry_mpih_sqr_n_basecase( mpi_ptr_t prodp, mpi_ptr_t up, mpi_size_t size ); -void _gcry_mpih_sqr_n( mpi_ptr_t prodp, mpi_ptr_t up, mpi_size_t size, - mpi_ptr_t tspace); - -void _gcry_mpih_mul_karatsuba_case( mpi_ptr_t prodp, - mpi_ptr_t up, mpi_size_t usize, - mpi_ptr_t vp, mpi_size_t vsize, - struct karatsuba_ctx *ctx ); - - -/*-- mpih-mul_1.c (or xxx/cpu/ *.S) --*/ -mpi_limb_t _gcry_mpih_mul_1( mpi_ptr_t res_ptr, mpi_ptr_t s1_ptr, - mpi_size_t s1_size, mpi_limb_t s2_limb); - -/*-- mpih-div.c --*/ -mpi_limb_t _gcry_mpih_mod_1(mpi_ptr_t dividend_ptr, mpi_size_t dividend_size, - mpi_limb_t divisor_limb); -mpi_limb_t _gcry_mpih_divrem( mpi_ptr_t qp, mpi_size_t qextra_limbs, - mpi_ptr_t np, mpi_size_t nsize, - mpi_ptr_t dp, mpi_size_t dsize); -mpi_limb_t _gcry_mpih_divmod_1( mpi_ptr_t quot_ptr, - mpi_ptr_t dividend_ptr, mpi_size_t dividend_size, - mpi_limb_t divisor_limb); - -/*-- mpih-shift.c --*/ -mpi_limb_t _gcry_mpih_lshift( mpi_ptr_t wp, mpi_ptr_t up, mpi_size_t usize, - unsigned cnt); -mpi_limb_t _gcry_mpih_rshift( mpi_ptr_t wp, mpi_ptr_t up, mpi_size_t usize, - unsigned cnt); - - -/* Define stuff for longlong.h. */ -#define W_TYPE_SIZE BITS_PER_MPI_LIMB - typedef mpi_limb_t UWtype; - typedef unsigned int UHWtype; -#if defined (__GNUC__) - typedef unsigned int UQItype __attribute__ ((mode (QI))); - typedef int SItype __attribute__ ((mode (SI))); - typedef unsigned int USItype __attribute__ ((mode (SI))); - typedef int DItype __attribute__ ((mode (DI))); - typedef unsigned int UDItype __attribute__ ((mode (DI))); -#else - typedef unsigned char UQItype; - typedef long SItype; - typedef unsigned long USItype; -#endif - -#ifdef __GNUC__ -#include "mpi-inline.h" -#endif - -#endif /*G10_MPI_INTERNAL_H*/ diff --git a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/mpi-inv.c b/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/mpi-inv.c deleted file mode 100644 index 684384f7f..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/mpi-inv.c +++ /dev/null @@ -1,269 +0,0 @@ -/* This file was automatically imported with - import_gcry.py. Please don't modify it */ -/* mpi-inv.c - MPI functions - * Copyright (C) 1998, 2001, 2002, 2003 Free Software Foundation, Inc. - * - * This file is part of Libgcrypt. - * - * Libgcrypt is free software; you can redistribute it and/or modify - * it under the terms of the GNU Lesser General Public License as - * published by the Free Software Foundation; either version 2.1 of - * the License, or (at your option) any later version. - * - * Libgcrypt is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this program; if not, see . - */ - -#include -#include -#include -#include "mpi-internal.h" -#include "g10lib.h" - -/**************** - * Calculate the multiplicative inverse X of A mod N - * That is: Find the solution x for - * 1 = (a*x) mod n - */ -int -gcry_mpi_invm( gcry_mpi_t x, gcry_mpi_t a, gcry_mpi_t n ) -{ -#if 0 - gcry_mpi_t u, v, u1, u2, u3, v1, v2, v3, q, t1, t2, t3; - gcry_mpi_t ta, tb, tc; - - u = mpi_copy(a); - v = mpi_copy(n); - u1 = mpi_alloc_set_ui(1); - u2 = mpi_alloc_set_ui(0); - u3 = mpi_copy(u); - v1 = mpi_alloc_set_ui(0); - v2 = mpi_alloc_set_ui(1); - v3 = mpi_copy(v); - q = mpi_alloc( mpi_get_nlimbs(u)+1 ); - t1 = mpi_alloc( mpi_get_nlimbs(u)+1 ); - t2 = mpi_alloc( mpi_get_nlimbs(u)+1 ); - t3 = mpi_alloc( mpi_get_nlimbs(u)+1 ); - while( mpi_cmp_ui( v3, 0 ) ) { - mpi_fdiv_q( q, u3, v3 ); - mpi_mul(t1, v1, q); mpi_mul(t2, v2, q); mpi_mul(t3, v3, q); - mpi_sub(t1, u1, t1); mpi_sub(t2, u2, t2); mpi_sub(t3, u3, t3); - mpi_set(u1, v1); mpi_set(u2, v2); mpi_set(u3, v3); - mpi_set(v1, t1); mpi_set(v2, t2); mpi_set(v3, t3); - } - /* log_debug("result:\n"); - log_mpidump("q =", q ); - log_mpidump("u1=", u1); - log_mpidump("u2=", u2); - log_mpidump("u3=", u3); - log_mpidump("v1=", v1); - log_mpidump("v2=", v2); */ - mpi_set(x, u1); - - mpi_free(u1); - mpi_free(u2); - mpi_free(u3); - mpi_free(v1); - mpi_free(v2); - mpi_free(v3); - mpi_free(q); - mpi_free(t1); - mpi_free(t2); - mpi_free(t3); - mpi_free(u); - mpi_free(v); -#elif 0 - /* Extended Euclid's algorithm (See TAOCP Vol II, 4.5.2, Alg X) - * modified according to Michael Penk's solution for Exercise 35 */ - - /* FIXME: we can simplify this in most cases (see Knuth) */ - gcry_mpi_t u, v, u1, u2, u3, v1, v2, v3, t1, t2, t3; - unsigned k; - int sign; - - u = mpi_copy(a); - v = mpi_copy(n); - for(k=0; !mpi_test_bit(u,0) && !mpi_test_bit(v,0); k++ ) { - mpi_rshift(u, u, 1); - mpi_rshift(v, v, 1); - } - - - u1 = mpi_alloc_set_ui(1); - u2 = mpi_alloc_set_ui(0); - u3 = mpi_copy(u); - v1 = mpi_copy(v); /* !-- used as const 1 */ - v2 = mpi_alloc( mpi_get_nlimbs(u) ); mpi_sub( v2, u1, u ); - v3 = mpi_copy(v); - if( mpi_test_bit(u, 0) ) { /* u is odd */ - t1 = mpi_alloc_set_ui(0); - t2 = mpi_alloc_set_ui(1); t2->sign = 1; - t3 = mpi_copy(v); t3->sign = !t3->sign; - goto Y4; - } - else { - t1 = mpi_alloc_set_ui(1); - t2 = mpi_alloc_set_ui(0); - t3 = mpi_copy(u); - } - do { - do { - if( mpi_test_bit(t1, 0) || mpi_test_bit(t2, 0) ) { /* one is odd */ - mpi_add(t1, t1, v); - mpi_sub(t2, t2, u); - } - mpi_rshift(t1, t1, 1); - mpi_rshift(t2, t2, 1); - mpi_rshift(t3, t3, 1); - Y4: - ; - } while( !mpi_test_bit( t3, 0 ) ); /* while t3 is even */ - - if( !t3->sign ) { - mpi_set(u1, t1); - mpi_set(u2, t2); - mpi_set(u3, t3); - } - else { - mpi_sub(v1, v, t1); - sign = u->sign; u->sign = !u->sign; - mpi_sub(v2, u, t2); - u->sign = sign; - sign = t3->sign; t3->sign = !t3->sign; - mpi_set(v3, t3); - t3->sign = sign; - } - mpi_sub(t1, u1, v1); - mpi_sub(t2, u2, v2); - mpi_sub(t3, u3, v3); - if( t1->sign ) { - mpi_add(t1, t1, v); - mpi_sub(t2, t2, u); - } - } while( mpi_cmp_ui( t3, 0 ) ); /* while t3 != 0 */ - /* mpi_lshift( u3, k ); */ - mpi_set(x, u1); - - mpi_free(u1); - mpi_free(u2); - mpi_free(u3); - mpi_free(v1); - mpi_free(v2); - mpi_free(v3); - mpi_free(t1); - mpi_free(t2); - mpi_free(t3); -#else - /* Extended Euclid's algorithm (See TAOCP Vol II, 4.5.2, Alg X) - * modified according to Michael Penk's solution for Exercise 35 - * with further enhancement */ - gcry_mpi_t u, v, u1, u2=NULL, u3, v1, v2=NULL, v3, t1, t2=NULL, t3; - unsigned k; - int sign; - int odd ; - - u = mpi_copy(a); - v = mpi_copy(n); - - for(k=0; !mpi_test_bit(u,0) && !mpi_test_bit(v,0); k++ ) { - mpi_rshift(u, u, 1); - mpi_rshift(v, v, 1); - } - odd = mpi_test_bit(v,0); - - u1 = mpi_alloc_set_ui(1); - if( !odd ) - u2 = mpi_alloc_set_ui(0); - u3 = mpi_copy(u); - v1 = mpi_copy(v); - if( !odd ) { - v2 = mpi_alloc( mpi_get_nlimbs(u) ); - mpi_sub( v2, u1, u ); /* U is used as const 1 */ - } - v3 = mpi_copy(v); - if( mpi_test_bit(u, 0) ) { /* u is odd */ - t1 = mpi_alloc_set_ui(0); - if( !odd ) { - t2 = mpi_alloc_set_ui(1); t2->sign = 1; - } - t3 = mpi_copy(v); t3->sign = !t3->sign; - goto Y4; - } - else { - t1 = mpi_alloc_set_ui(1); - if( !odd ) - t2 = mpi_alloc_set_ui(0); - t3 = mpi_copy(u); - } - do { - do { - if( !odd ) { - if( mpi_test_bit(t1, 0) || mpi_test_bit(t2, 0) ) { /* one is odd */ - mpi_add(t1, t1, v); - mpi_sub(t2, t2, u); - } - mpi_rshift(t1, t1, 1); - mpi_rshift(t2, t2, 1); - mpi_rshift(t3, t3, 1); - } - else { - if( mpi_test_bit(t1, 0) ) - mpi_add(t1, t1, v); - mpi_rshift(t1, t1, 1); - mpi_rshift(t3, t3, 1); - } - Y4: - ; - } while( !mpi_test_bit( t3, 0 ) ); /* while t3 is even */ - - if( !t3->sign ) { - mpi_set(u1, t1); - if( !odd ) - mpi_set(u2, t2); - mpi_set(u3, t3); - } - else { - mpi_sub(v1, v, t1); - sign = u->sign; u->sign = !u->sign; - if( !odd ) - mpi_sub(v2, u, t2); - u->sign = sign; - sign = t3->sign; t3->sign = !t3->sign; - mpi_set(v3, t3); - t3->sign = sign; - } - mpi_sub(t1, u1, v1); - if( !odd ) - mpi_sub(t2, u2, v2); - mpi_sub(t3, u3, v3); - if( t1->sign ) { - mpi_add(t1, t1, v); - if( !odd ) - mpi_sub(t2, t2, u); - } - } while( mpi_cmp_ui( t3, 0 ) ); /* while t3 != 0 */ - /* mpi_lshift( u3, k ); */ - mpi_set(x, u1); - - mpi_free(u1); - mpi_free(v1); - mpi_free(t1); - if( !odd ) { - mpi_free(u2); - mpi_free(v2); - mpi_free(t2); - } - mpi_free(u3); - mpi_free(v3); - mpi_free(t3); - - mpi_free(u); - mpi_free(v); -#endif - return 1; -} diff --git a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/mpi-mod.c b/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/mpi-mod.c deleted file mode 100644 index 6d9a6a331..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/mpi-mod.c +++ /dev/null @@ -1,186 +0,0 @@ -/* This file was automatically imported with - import_gcry.py. Please don't modify it */ -/* mpi-mod.c - Modular reduction - Copyright (C) 1998, 1999, 2001, 2002, 2003, - 2007 Free Software Foundation, Inc. - - This file is part of Libgcrypt. - - Libgcrypt is free software; you can redistribute it and/or modify - it under the terms of the GNU Lesser General Public License as - published by the Free Software Foundation; either version 2.1 of - the License, or (at your option) any later version. - - Libgcrypt is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, - USA. */ - - -#include -#include -#include - -#include "mpi-internal.h" -#include "longlong.h" -#include "g10lib.h" - - -/* Context used with Barrett reduction. */ -struct barrett_ctx_s -{ - gcry_mpi_t m; /* The modulus - may not be modified. */ - int m_copied; /* If true, M needs to be released. */ - int k; - gcry_mpi_t y; - gcry_mpi_t r1; /* Helper MPI. */ - gcry_mpi_t r2; /* Helper MPI. */ - gcry_mpi_t r3; /* Helper MPI allocated on demand. */ -}; - - - -void -_gcry_mpi_mod (gcry_mpi_t rem, gcry_mpi_t dividend, gcry_mpi_t divisor) -{ - _gcry_mpi_fdiv_r (rem, dividend, divisor); - rem->sign = 0; -} - - -/* This function returns a new context for Barrett based operations on - the modulus M. This context needs to be released using - _gcry_mpi_barrett_free. If COPY is true M will be transferred to - the context and the user may change M. If COPY is false, M may not - be changed until gcry_mpi_barrett_free has been called. */ -mpi_barrett_t -_gcry_mpi_barrett_init (gcry_mpi_t m, int copy) -{ - mpi_barrett_t ctx; - gcry_mpi_t tmp; - - mpi_normalize (m); - ctx = gcry_xcalloc (1, sizeof *ctx); - - if (copy) - { - ctx->m = mpi_copy (m); - ctx->m_copied = 1; - } - else - ctx->m = m; - - ctx->k = mpi_get_nlimbs (m); - tmp = mpi_alloc (ctx->k + 1); - - /* Barrett precalculation: y = floor(b^(2k) / m). */ - mpi_set_ui (tmp, 1); - mpi_lshift_limbs (tmp, 2 * ctx->k); - mpi_fdiv_q (tmp, tmp, m); - - ctx->y = tmp; - ctx->r1 = mpi_alloc ( 2 * ctx->k + 1 ); - ctx->r2 = mpi_alloc ( 2 * ctx->k + 1 ); - - return ctx; -} - -void -_gcry_mpi_barrett_free (mpi_barrett_t ctx) -{ - if (ctx) - { - mpi_free (ctx->y); - mpi_free (ctx->r1); - mpi_free (ctx->r2); - if (ctx->r3) - mpi_free (ctx->r3); - if (ctx->m_copied) - mpi_free (ctx->m); - gcry_free (ctx); - } -} - - -/* R = X mod M - - Using Barrett reduction. Before using this function - _gcry_mpi_barrett_init must have been called to do the - precalculations. CTX is the context created by this precalculation - and also conveys M. If the Barret reduction could no be done a - starightforward reduction method is used. - - We assume that these conditions are met: - Input: x =(x_2k-1 ...x_0)_b - m =(m_k-1 ....m_0)_b with m_k-1 != 0 - Output: r = x mod m - */ -void -_gcry_mpi_mod_barrett (gcry_mpi_t r, gcry_mpi_t x, mpi_barrett_t ctx) -{ - gcry_mpi_t m = ctx->m; - int k = ctx->k; - gcry_mpi_t y = ctx->y; - gcry_mpi_t r1 = ctx->r1; - gcry_mpi_t r2 = ctx->r2; - - mpi_normalize (x); - if (mpi_get_nlimbs (x) > 2*k ) - { - mpi_mod (r, x, m); - return; - } - - /* 1. q1 = floor( x / b^k-1) - * q2 = q1 * y - * q3 = floor( q2 / b^k+1 ) - * Actually, we don't need qx, we can work direct on r2 - */ - mpi_set ( r2, x ); - mpi_rshift_limbs ( r2, k-1 ); - mpi_mul ( r2, r2, y ); - mpi_rshift_limbs ( r2, k+1 ); - - /* 2. r1 = x mod b^k+1 - * r2 = q3 * m mod b^k+1 - * r = r1 - r2 - * 3. if r < 0 then r = r + b^k+1 - */ - mpi_set ( r1, x ); - if ( r1->nlimbs > k+1 ) /* Quick modulo operation. */ - r1->nlimbs = k+1; - mpi_mul ( r2, r2, m ); - if ( r2->nlimbs > k+1 ) /* Quick modulo operation. */ - r2->nlimbs = k+1; - mpi_sub ( r, r1, r2 ); - - if ( mpi_is_neg( r ) ) - { - if (!ctx->r3) - { - ctx->r3 = mpi_alloc ( k + 2 ); - mpi_set_ui (ctx->r3, 1); - mpi_lshift_limbs (ctx->r3, k + 1 ); - } - mpi_add ( r, r, ctx->r3 ); - } - - /* 4. while r >= m do r = r - m */ - while ( mpi_cmp( r, m ) >= 0 ) - mpi_sub ( r, r, m ); - -} - - -void -_gcry_mpi_mul_barrett (gcry_mpi_t w, gcry_mpi_t u, gcry_mpi_t v, - mpi_barrett_t ctx) -{ - gcry_mpi_mul (w, u, v); - mpi_mod_barrett (w, w, ctx); -} diff --git a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/mpi-mpow.c b/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/mpi-mpow.c deleted file mode 100644 index afef4336d..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/mpi-mpow.c +++ /dev/null @@ -1,225 +0,0 @@ -/* This file was automatically imported with - import_gcry.py. Please don't modify it */ -/* mpi-mpow.c - MPI functions - * Copyright (C) 1998, 1999, 2001, 2002, 2003 Free Software Foundation, Inc. - * - * This file is part of Libgcrypt. - * - * Libgcrypt is free software; you can redistribute it and/or modify - * it under the terms of the GNU Lesser General Public License as - * published by the Free Software Foundation; either version 2.1 of - * the License, or (at your option) any later version. - * - * Libgcrypt is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA - */ - -#include -#include -#include - -#include "mpi-internal.h" -#include "longlong.h" -#include "g10lib.h" - - -/* Barrett is slower than the classical way. It can be tweaked by - * using partial multiplications - */ -/*#define USE_BARRETT*/ - - - -#ifdef USE_BARRETT -static void barrett_mulm( gcry_mpi_t w, gcry_mpi_t u, gcry_mpi_t v, gcry_mpi_t m, gcry_mpi_t y, int k, gcry_mpi_t r1, gcry_mpi_t r2 ); -static gcry_mpi_t init_barrett( gcry_mpi_t m, int *k, gcry_mpi_t *r1, gcry_mpi_t *r2 ); -static int calc_barrett( gcry_mpi_t r, gcry_mpi_t x, gcry_mpi_t m, gcry_mpi_t y, int k, gcry_mpi_t r1, gcry_mpi_t r2 ); -#else -#define barrett_mulm( w, u, v, m, y, k, r1, r2 ) gcry_mpi_mulm( (w), (u), (v), (m) ) -#endif - - -static int -build_index( gcry_mpi_t *exparray, int k, int i, int t ) -{ - int j, bitno; - int idx = 0; - - bitno = t-i; - for(j=k-1; j >= 0; j-- ) { - idx <<= 1; - if( mpi_test_bit( exparray[j], bitno ) ) - idx |= 1; - } - /*log_debug("t=%d i=%d idx=%d\n", t, i, idx );*/ - return idx; -} - -/**************** - * RES = (BASE[0] ^ EXP[0]) * (BASE[1] ^ EXP[1]) * ... * mod M - */ -void -_gcry_mpi_mulpowm( gcry_mpi_t res, gcry_mpi_t *basearray, gcry_mpi_t *exparray, gcry_mpi_t m) -{ - int k; /* number of elements */ - int t; /* bit size of largest exponent */ - int i, j, idx; - gcry_mpi_t *G; /* table with precomputed values of size 2^k */ - gcry_mpi_t tmp; -#ifdef USE_BARRETT - gcry_mpi_t barrett_y, barrett_r1, barrett_r2; - int barrett_k; -#endif - - for(k=0; basearray[k]; k++ ) - ; - gcry_assert(k); - for(t=0, i=0; (tmp=exparray[i]); i++ ) { - /*log_mpidump("exp: ", tmp );*/ - j = mpi_get_nbits(tmp); - if( j > t ) - t = j; - } - /*log_mpidump("mod: ", m );*/ - gcry_assert (i==k); - gcry_assert (t); - gcry_assert (k < 10); - - G = gcry_xcalloc( (1<= 0 && idx < (1< 3 ? k-3:0; - - mpi_normalize( x ); - if( mpi_get_nlimbs(x) > 2*k ) - return 1; /* can't do it */ - - /* 1. q1 = floor( x / b^k-1) - * q2 = q1 * y - * q3 = floor( q2 / b^k+1 ) - * Actually, we don't need qx, we can work direct on r2 - */ - mpi_set( r2, x ); - mpi_rshift_limbs( r2, k-1 ); - mpi_mul( r2, r2, y ); - mpi_rshift_limbs( r2, k+1 ); - - /* 2. r1 = x mod b^k+1 - * r2 = q3 * m mod b^k+1 - * r = r1 - r2 - * 3. if r < 0 then r = r + b^k+1 - */ - mpi_set( r1, x ); - if( r1->nlimbs > k+1 ) /* quick modulo operation */ - r1->nlimbs = k+1; - mpi_mul( r2, r2, m ); - if( r2->nlimbs > k+1 ) /* quick modulo operation */ - r2->nlimbs = k+1; - mpi_sub( r, r1, r2 ); - - if( mpi_is_neg( r ) ) { - gcry_mpi_t tmp; - - tmp = mpi_alloc( k + 2 ); - mpi_set_ui( tmp, 1 ); - mpi_lshift_limbs( tmp, k+1 ); - mpi_add( r, r, tmp ); - mpi_free(tmp); - } - - /* 4. while r >= m do r = r - m */ - while( mpi_cmp( r, m ) >= 0 ) - mpi_sub( r, r, m ); - - return 0; -} -#endif /* USE_BARRETT */ diff --git a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/mpi-mul.c b/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/mpi-mul.c deleted file mode 100644 index d30554729..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/mpi-mul.c +++ /dev/null @@ -1,214 +0,0 @@ -/* This file was automatically imported with - import_gcry.py. Please don't modify it */ -/* mpi-mul.c - MPI functions - * Copyright (C) 1994, 1996, 1998, 2001, 2002, 2003 Free Software Foundation, Inc. - * - * This file is part of Libgcrypt. - * - * Libgcrypt is free software; you can redistribute it and/or modify - * it under the terms of the GNU Lesser General Public License as - * published by the Free Software Foundation; either version 2.1 of - * the License, or (at your option) any later version. - * - * Libgcrypt is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA - * - * Note: This code is heavily based on the GNU MP Library. - * Actually it's the same code with only minor changes in the - * way the data is stored; this is to support the abstraction - * of an optional secure memory allocation which may be used - * to avoid revealing of sensitive data due to paging etc. - */ - -#include -#include -#include -#include "mpi-internal.h" - - -void -gcry_mpi_mul_ui( gcry_mpi_t prod, gcry_mpi_t mult, unsigned long small_mult ) -{ - mpi_size_t size, prod_size; - mpi_ptr_t prod_ptr; - mpi_limb_t cy; - int sign; - - size = mult->nlimbs; - sign = mult->sign; - - if( !size || !small_mult ) { - prod->nlimbs = 0; - prod->sign = 0; - return; - } - - prod_size = size + 1; - if( prod->alloced < prod_size ) - mpi_resize( prod, prod_size ); - prod_ptr = prod->d; - - cy = _gcry_mpih_mul_1( prod_ptr, mult->d, size, (mpi_limb_t)small_mult ); - if( cy ) - prod_ptr[size++] = cy; - prod->nlimbs = size; - prod->sign = sign; -} - - -void -gcry_mpi_mul_2exp( gcry_mpi_t w, gcry_mpi_t u, unsigned long cnt) -{ - mpi_size_t usize, wsize, limb_cnt; - mpi_ptr_t wp; - mpi_limb_t wlimb; - int usign, wsign; - - usize = u->nlimbs; - usign = u->sign; - - if( !usize ) { - w->nlimbs = 0; - w->sign = 0; - return; - } - - limb_cnt = cnt / BITS_PER_MPI_LIMB; - wsize = usize + limb_cnt + 1; - if( w->alloced < wsize ) - mpi_resize(w, wsize ); - wp = w->d; - wsize = usize + limb_cnt; - wsign = usign; - - cnt %= BITS_PER_MPI_LIMB; - if( cnt ) { - wlimb = _gcry_mpih_lshift( wp + limb_cnt, u->d, usize, cnt ); - if( wlimb ) { - wp[wsize] = wlimb; - wsize++; - } - } - else { - MPN_COPY_DECR( wp + limb_cnt, u->d, usize ); - } - - /* Zero all whole limbs at low end. Do it here and not before calling - * mpn_lshift, not to lose for U == W. */ - MPN_ZERO( wp, limb_cnt ); - - w->nlimbs = wsize; - w->sign = wsign; -} - - -void -gcry_mpi_mul( gcry_mpi_t w, gcry_mpi_t u, gcry_mpi_t v) -{ - mpi_size_t usize, vsize, wsize; - mpi_ptr_t up, vp, wp; - mpi_limb_t cy; - int usign, vsign, usecure, vsecure, sign_product; - int assign_wp=0; - mpi_ptr_t tmp_limb=NULL; - unsigned int tmp_limb_nlimbs = 0; - - if( u->nlimbs < v->nlimbs ) { /* Swap U and V. */ - usize = v->nlimbs; - usign = v->sign; - usecure = mpi_is_secure(v); - up = v->d; - vsize = u->nlimbs; - vsign = u->sign; - vsecure = mpi_is_secure(u); - vp = u->d; - } - else { - usize = u->nlimbs; - usign = u->sign; - usecure = mpi_is_secure(u); - up = u->d; - vsize = v->nlimbs; - vsign = v->sign; - vsecure = mpi_is_secure(v); - vp = v->d; - } - sign_product = usign ^ vsign; - wp = w->d; - - /* Ensure W has space enough to store the result. */ - wsize = usize + vsize; - if ( !mpi_is_secure (w) && (mpi_is_secure (u) || mpi_is_secure (v)) ) { - /* w is not allocated in secure space but u or v is. To make sure - * that no temporray results are stored in w, we temporary use - * a newly allocated limb space for w */ - wp = mpi_alloc_limb_space( wsize, 1 ); - assign_wp = 2; /* mark it as 2 so that we can later copy it back to - * mormal memory */ - } - else if( w->alloced < wsize ) { - if( wp == up || wp == vp ) { - wp = mpi_alloc_limb_space( wsize, mpi_is_secure(w) ); - assign_wp = 1; - } - else { - mpi_resize(w, wsize ); - wp = w->d; - } - } - else { /* Make U and V not overlap with W. */ - if( wp == up ) { - /* W and U are identical. Allocate temporary space for U. */ - tmp_limb_nlimbs = usize; - up = tmp_limb = mpi_alloc_limb_space( usize, usecure ); - /* Is V identical too? Keep it identical with U. */ - if( wp == vp ) - vp = up; - /* Copy to the temporary space. */ - MPN_COPY( up, wp, usize ); - } - else if( wp == vp ) { - /* W and V are identical. Allocate temporary space for V. */ - tmp_limb_nlimbs = vsize; - vp = tmp_limb = mpi_alloc_limb_space( vsize, vsecure ); - /* Copy to the temporary space. */ - MPN_COPY( vp, wp, vsize ); - } - } - - if( !vsize ) - wsize = 0; - else { - cy = _gcry_mpih_mul( wp, up, usize, vp, vsize ); - wsize -= cy? 0:1; - } - - if( assign_wp ) { - if (assign_wp == 2) { - /* copy the temp wp from secure memory back to normal memory */ - mpi_ptr_t tmp_wp = mpi_alloc_limb_space (wsize, 0); - MPN_COPY (tmp_wp, wp, wsize); - _gcry_mpi_free_limb_space (wp, 0); - wp = tmp_wp; - } - _gcry_mpi_assign_limb_space( w, wp, wsize ); - } - w->nlimbs = wsize; - w->sign = sign_product; - if( tmp_limb ) - _gcry_mpi_free_limb_space (tmp_limb, tmp_limb_nlimbs); -} - - -void -gcry_mpi_mulm( gcry_mpi_t w, gcry_mpi_t u, gcry_mpi_t v, gcry_mpi_t m) -{ - gcry_mpi_mul(w, u, v); - _gcry_mpi_fdiv_r( w, w, m ); -} diff --git a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/mpi-pow.c b/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/mpi-pow.c deleted file mode 100644 index f6b3f58d7..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/mpi-pow.c +++ /dev/null @@ -1,340 +0,0 @@ -/* This file was automatically imported with - import_gcry.py. Please don't modify it */ -/* mpi-pow.c - MPI functions for exponentiation - * Copyright (C) 1994, 1996, 1998, 2000, 2002 - * 2003 Free Software Foundation, Inc. - * 2013 g10 Code GmbH - * - * This file is part of Libgcrypt. - * - * Libgcrypt is free software; you can redistribute it and/or modify - * it under the terms of the GNU Lesser General Public License as - * published by the Free Software Foundation; either version 2.1 of - * the License, or (at your option) any later version. - * - * Libgcrypt is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this program; if not, see . - * - * Note: This code is heavily based on the GNU MP Library. - * Actually it's the same code with only minor changes in the - * way the data is stored; this is to support the abstraction - * of an optional secure memory allocation which may be used - * to avoid revealing of sensitive data due to paging etc. - */ - -#include -#include -#include -#include - -#include "mpi-internal.h" -#include "longlong.h" - - -/**************** - * RES = BASE ^ EXPO mod MOD - */ -void -gcry_mpi_powm (gcry_mpi_t res, - gcry_mpi_t base, gcry_mpi_t expo, gcry_mpi_t mod) -{ - /* Pointer to the limbs of the arguments, their size and signs. */ - mpi_ptr_t rp, ep, mp, bp; - mpi_size_t esize, msize, bsize, rsize; - int msign, bsign, rsign; - /* Flags telling the secure allocation status of the arguments. */ - int esec, msec, bsec; - /* Size of the result including space for temporary values. */ - mpi_size_t size; - /* Helper. */ - int mod_shift_cnt; - int negative_result; - mpi_ptr_t mp_marker = NULL; - mpi_ptr_t bp_marker = NULL; - mpi_ptr_t ep_marker = NULL; - mpi_ptr_t xp_marker = NULL; - unsigned int mp_nlimbs = 0; - unsigned int bp_nlimbs = 0; - unsigned int ep_nlimbs = 0; - unsigned int xp_nlimbs = 0; - mpi_ptr_t tspace = NULL; - mpi_size_t tsize = 0; - - - esize = expo->nlimbs; - msize = mod->nlimbs; - size = 2 * msize; - msign = mod->sign; - - esec = mpi_is_secure(expo); - msec = mpi_is_secure(mod); - bsec = mpi_is_secure(base); - - rp = res->d; - ep = expo->d; - - if (!msize) - grub_fatal ("mpi division by zero"); - - if (!esize) - { - /* Exponent is zero, result is 1 mod MOD, i.e., 1 or 0 depending - on if MOD equals 1. */ - res->nlimbs = (msize == 1 && mod->d[0] == 1) ? 0 : 1; - if (res->nlimbs) - { - RESIZE_IF_NEEDED (res, 1); - rp = res->d; - rp[0] = 1; - } - res->sign = 0; - goto leave; - } - - /* Normalize MOD (i.e. make its most significant bit set) as - required by mpn_divrem. This will make the intermediate values - in the calculation slightly larger, but the correct result is - obtained after a final reduction using the original MOD value. */ - mp_nlimbs = msec? msize:0; - mp = mp_marker = mpi_alloc_limb_space(msize, msec); - count_leading_zeros (mod_shift_cnt, mod->d[msize-1]); - if (mod_shift_cnt) - _gcry_mpih_lshift (mp, mod->d, msize, mod_shift_cnt); - else - MPN_COPY( mp, mod->d, msize ); - - bsize = base->nlimbs; - bsign = base->sign; - if (bsize > msize) - { - /* The base is larger than the module. Reduce it. - - Allocate (BSIZE + 1) with space for remainder and quotient. - (The quotient is (bsize - msize + 1) limbs.) */ - bp_nlimbs = bsec ? (bsize + 1):0; - bp = bp_marker = mpi_alloc_limb_space( bsize + 1, bsec ); - MPN_COPY ( bp, base->d, bsize ); - /* We don't care about the quotient, store it above the - * remainder, at BP + MSIZE. */ - _gcry_mpih_divrem( bp + msize, 0, bp, bsize, mp, msize ); - bsize = msize; - /* Canonicalize the base, since we are going to multiply with it - quite a few times. */ - MPN_NORMALIZE( bp, bsize ); - } - else - bp = base->d; - - if (!bsize) - { - res->nlimbs = 0; - res->sign = 0; - goto leave; - } - - - /* Make BASE, EXPO and MOD not overlap with RES. */ - if ( rp == bp ) - { - /* RES and BASE are identical. Allocate temp. space for BASE. */ - gcry_assert (!bp_marker); - bp_nlimbs = bsec? bsize:0; - bp = bp_marker = mpi_alloc_limb_space( bsize, bsec ); - MPN_COPY(bp, rp, bsize); - } - if ( rp == ep ) - { - /* RES and EXPO are identical. Allocate temp. space for EXPO. */ - ep_nlimbs = esec? esize:0; - ep = ep_marker = mpi_alloc_limb_space( esize, esec ); - MPN_COPY(ep, rp, esize); - } - if ( rp == mp ) - { - /* RES and MOD are identical. Allocate temporary space for MOD.*/ - gcry_assert (!mp_marker); - mp_nlimbs = msec?msize:0; - mp = mp_marker = mpi_alloc_limb_space( msize, msec ); - MPN_COPY(mp, rp, msize); - } - - /* Copy base to the result. */ - if (res->alloced < size) - { - mpi_resize (res, size); - rp = res->d; - } - MPN_COPY ( rp, bp, bsize ); - rsize = bsize; - rsign = bsign; - - /* Main processing. */ - { - mpi_size_t i; - mpi_ptr_t xp; - int c; - mpi_limb_t e; - mpi_limb_t carry_limb; - struct karatsuba_ctx karactx; - - xp_nlimbs = msec? (2 * (msize + 1)):0; - xp = xp_marker = mpi_alloc_limb_space( 2 * (msize + 1), msec ); - - memset( &karactx, 0, sizeof karactx ); - negative_result = (ep[0] & 1) && base->sign; - - i = esize - 1; - e = ep[i]; - count_leading_zeros (c, e); - e = (e << c) << 1; /* Shift the expo bits to the left, lose msb. */ - c = BITS_PER_MPI_LIMB - 1 - c; - - /* Main loop. - - Make the result be pointed to alternately by XP and RP. This - helps us avoid block copying, which would otherwise be - necessary with the overlap restrictions of - _gcry_mpih_divmod. With 50% probability the result after this - loop will be in the area originally pointed by RP (==RES->d), - and with 50% probability in the area originally pointed to by XP. */ - for (;;) - { - while (c) - { - mpi_ptr_t tp; - mpi_size_t xsize; - - /*mpih_mul_n(xp, rp, rp, rsize);*/ - if ( rsize < KARATSUBA_THRESHOLD ) - _gcry_mpih_sqr_n_basecase( xp, rp, rsize ); - else - { - if ( !tspace ) - { - tsize = 2 * rsize; - tspace = mpi_alloc_limb_space( tsize, 0 ); - } - else if ( tsize < (2*rsize) ) - { - _gcry_mpi_free_limb_space (tspace, 0); - tsize = 2 * rsize; - tspace = mpi_alloc_limb_space (tsize, 0 ); - } - _gcry_mpih_sqr_n (xp, rp, rsize, tspace); - } - - xsize = 2 * rsize; - if ( xsize > msize ) - { - _gcry_mpih_divrem(xp + msize, 0, xp, xsize, mp, msize); - xsize = msize; - } - - tp = rp; rp = xp; xp = tp; - rsize = xsize; - - /* To mitigate the Yarom/Falkner flush+reload cache - * side-channel attack on the RSA secret exponent, we do - * the multiplication regardless of the value of the - * high-bit of E. But to avoid this performance penalty - * we do it only if the exponent has been stored in secure - * memory and we can thus assume it is a secret exponent. */ - if (esec || (mpi_limb_signed_t)e < 0) - { - /*mpih_mul( xp, rp, rsize, bp, bsize );*/ - if( bsize < KARATSUBA_THRESHOLD ) - _gcry_mpih_mul ( xp, rp, rsize, bp, bsize ); - else - _gcry_mpih_mul_karatsuba_case (xp, rp, rsize, bp, bsize, - &karactx); - - xsize = rsize + bsize; - if ( xsize > msize ) - { - _gcry_mpih_divrem(xp + msize, 0, xp, xsize, mp, msize); - xsize = msize; - } - } - if ( (mpi_limb_signed_t)e < 0 ) - { - tp = rp; rp = xp; xp = tp; - rsize = xsize; - } - e <<= 1; - c--; - } - - i--; - if ( i < 0 ) - break; - e = ep[i]; - c = BITS_PER_MPI_LIMB; - } - - /* We shifted MOD, the modulo reduction argument, left - MOD_SHIFT_CNT steps. Adjust the result by reducing it with the - original MOD. - - Also make sure the result is put in RES->d (where it already - might be, see above). */ - if ( mod_shift_cnt ) - { - carry_limb = _gcry_mpih_lshift( res->d, rp, rsize, mod_shift_cnt); - rp = res->d; - if ( carry_limb ) - { - rp[rsize] = carry_limb; - rsize++; - } - } - else if (res->d != rp) - { - MPN_COPY (res->d, rp, rsize); - rp = res->d; - } - - if ( rsize >= msize ) - { - _gcry_mpih_divrem(rp + msize, 0, rp, rsize, mp, msize); - rsize = msize; - } - - /* Remove any leading zero words from the result. */ - if ( mod_shift_cnt ) - _gcry_mpih_rshift( rp, rp, rsize, mod_shift_cnt); - MPN_NORMALIZE (rp, rsize); - - _gcry_mpih_release_karatsuba_ctx (&karactx ); - } - - /* Fixup for negative results. */ - if ( negative_result && rsize ) - { - if ( mod_shift_cnt ) - _gcry_mpih_rshift( mp, mp, msize, mod_shift_cnt); - _gcry_mpih_sub( rp, mp, msize, rp, rsize); - rsize = msize; - rsign = msign; - MPN_NORMALIZE(rp, rsize); - } - gcry_assert (res->d == rp); - res->nlimbs = rsize; - res->sign = rsign; - - leave: - if (mp_marker) - _gcry_mpi_free_limb_space( mp_marker, mp_nlimbs ); - if (bp_marker) - _gcry_mpi_free_limb_space( bp_marker, bp_nlimbs ); - if (ep_marker) - _gcry_mpi_free_limb_space( ep_marker, ep_nlimbs ); - if (xp_marker) - _gcry_mpi_free_limb_space( xp_marker, xp_nlimbs ); - if (tspace) - _gcry_mpi_free_limb_space( tspace, 0 ); -} diff --git a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/mpicoder.c b/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/mpicoder.c deleted file mode 100644 index 3d55dfcb3..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/mpicoder.c +++ /dev/null @@ -1,752 +0,0 @@ -/* This file was automatically imported with - import_gcry.py. Please don't modify it */ -/* mpicoder.c - Coder for the external representation of MPIs - * Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003 - * 2008 Free Software Foundation, Inc. - * - * This file is part of Libgcrypt. - * - * Libgcrypt is free software; you can redistribute it and/or modify - * it under the terms of the GNU Lesser General Public License as - * published by the Free Software Foundation; either version 2.1 of - * the License, or (at your option) any later version. - * - * Libgcrypt is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this program; if not, see . - */ - -#include -#include -#include -#include - -#include "mpi-internal.h" -#include "g10lib.h" - -#define MAX_EXTERN_MPI_BITS 16384 - -/* Helper used to scan PGP style MPIs. Returns NULL on failure. */ -static gcry_mpi_t -mpi_read_from_buffer (const unsigned char *buffer, unsigned *ret_nread, - int secure) -{ - int i, j; - unsigned int nbits, nbytes, nlimbs, nread=0; - mpi_limb_t a; - gcry_mpi_t val = MPI_NULL; - - if ( *ret_nread < 2 ) - goto leave; - nbits = buffer[0] << 8 | buffer[1]; - if ( nbits > MAX_EXTERN_MPI_BITS ) - { -/* log_debug ("mpi too large (%u bits)\n", nbits); */ - goto leave; - } - buffer += 2; - nread = 2; - - nbytes = (nbits+7) / 8; - nlimbs = (nbytes+BYTES_PER_MPI_LIMB-1) / BYTES_PER_MPI_LIMB; - val = secure? mpi_alloc_secure (nlimbs) : mpi_alloc (nlimbs); - i = BYTES_PER_MPI_LIMB - nbytes % BYTES_PER_MPI_LIMB; - i %= BYTES_PER_MPI_LIMB; - j= val->nlimbs = nlimbs; - val->sign = 0; - for ( ; j > 0; j-- ) - { - a = 0; - for (; i < BYTES_PER_MPI_LIMB; i++ ) - { - if ( ++nread > *ret_nread ) - { -/* log_debug ("mpi larger than buffer"); */ - mpi_free (val); - val = NULL; - goto leave; - } - a <<= 8; - a |= *buffer++; - } - i = 0; - val->d[j-1] = a; - } - - leave: - *ret_nread = nread; - return val; -} - - -/**************** - * Fill the mpi VAL from the hex string in STR. - */ -static int -mpi_fromstr (gcry_mpi_t val, const char *str) -{ - int sign = 0; - int prepend_zero = 0; - int i, j, c, c1, c2; - unsigned int nbits, nbytes, nlimbs; - mpi_limb_t a; - - if ( *str == '-' ) - { - sign = 1; - str++; - } - - /* Skip optional hex prefix. */ - if ( *str == '0' && str[1] == 'x' ) - str += 2; - - nbits = 4 * strlen (str); - if ((nbits % 8)) - prepend_zero = 1; - - nbytes = (nbits+7) / 8; - nlimbs = (nbytes+BYTES_PER_MPI_LIMB-1) / BYTES_PER_MPI_LIMB; - - if ( val->alloced < nlimbs ) - mpi_resize (val, nlimbs); - - i = BYTES_PER_MPI_LIMB - (nbytes % BYTES_PER_MPI_LIMB); - i %= BYTES_PER_MPI_LIMB; - j = val->nlimbs = nlimbs; - val->sign = sign; - for (; j > 0; j--) - { - a = 0; - for (; i < BYTES_PER_MPI_LIMB; i++) - { - if (prepend_zero) - { - c1 = '0'; - prepend_zero = 0; - } - else - c1 = *str++; - - if (!c1) - { - mpi_clear (val); - return 1; /* Error. */ - } - c2 = *str++; - if (!c2) - { - mpi_clear (val); - return 1; /* Error. */ - } - if ( c1 >= '0' && c1 <= '9' ) - c = c1 - '0'; - else if ( c1 >= 'a' && c1 <= 'f' ) - c = c1 - 'a' + 10; - else if ( c1 >= 'A' && c1 <= 'F' ) - c = c1 - 'A' + 10; - else - { - mpi_clear (val); - return 1; /* Error. */ - } - c <<= 4; - if ( c2 >= '0' && c2 <= '9' ) - c |= c2 - '0'; - else if( c2 >= 'a' && c2 <= 'f' ) - c |= c2 - 'a' + 10; - else if( c2 >= 'A' && c2 <= 'F' ) - c |= c2 - 'A' + 10; - else - { - mpi_clear(val); - return 1; /* Error. */ - } - a <<= 8; - a |= c; - } - i = 0; - val->d[j-1] = a; - } - - return 0; /* Okay. */ -} - - -/* Dump the value of A in a format suitable for debugging to - Libgcrypt's logging stream. Note that one leading space but no - trailing space or linefeed will be printed. It is okay to pass - NULL for A. */ -void -gcry_mpi_dump (const gcry_mpi_t a) -{ - int i; - - log_printf (" "); - if (!a) - log_printf ("[MPI_NULL]"); - else - { - if (a->sign) - log_printf ( "-"); -#if BYTES_PER_MPI_LIMB == 2 -# define X "4" -#elif BYTES_PER_MPI_LIMB == 4 -# define X "8" -#elif BYTES_PER_MPI_LIMB == 8 -# define X "16" -#elif BYTES_PER_MPI_LIMB == 16 -# define X "32" -#else -# error please define the format here -#endif - for (i=a->nlimbs; i > 0 ; i-- ) - { - log_printf (i != a->nlimbs? "%0" X "lX":"%lX", (ulong)a->d[i-1]); - } -#undef X - if (!a->nlimbs) - log_printf ("0"); - } -} - -/* Convience function used internally. */ -void -_gcry_log_mpidump (const char *text, gcry_mpi_t a) -{ - log_printf ("%s:", text); - gcry_mpi_dump (a); - log_printf ("\n"); -} - - -/* Return an allocated buffer with the MPI (msb first). NBYTES - receives the length of this buffer. Caller must free the return - string. This function returns an allocated buffer with NBYTES set - to zero if the value of A is zero. If sign is not NULL, it will be - set to the sign of the A. On error NULL is returned and ERRNO set - appropriately. */ -static unsigned char * -do_get_buffer (gcry_mpi_t a, unsigned int *nbytes, int *sign, int force_secure) -{ - unsigned char *p, *buffer; - mpi_limb_t alimb; - int i; - size_t n; - - if (sign) - *sign = a->sign; - - *nbytes = a->nlimbs * BYTES_PER_MPI_LIMB; - n = *nbytes? *nbytes:1; /* Allocate at least one byte. */ - p = buffer = (force_secure || mpi_is_secure(a))? gcry_malloc_secure (n) - : gcry_malloc (n); - if (!buffer) - return NULL; - - for (i=a->nlimbs-1; i >= 0; i--) - { - alimb = a->d[i]; -#if BYTES_PER_MPI_LIMB == 4 - *p++ = alimb >> 24; - *p++ = alimb >> 16; - *p++ = alimb >> 8; - *p++ = alimb ; -#elif BYTES_PER_MPI_LIMB == 8 - *p++ = alimb >> 56; - *p++ = alimb >> 48; - *p++ = alimb >> 40; - *p++ = alimb >> 32; - *p++ = alimb >> 24; - *p++ = alimb >> 16; - *p++ = alimb >> 8; - *p++ = alimb ; -#else -# error please implement for this limb size. -#endif - } - - /* This is sub-optimal but we need to do the shift operation because - the caller has to free the returned buffer. */ - for (p=buffer; *nbytes && !*p; p++, --*nbytes) - ; - if (p != buffer) - memmove (buffer,p, *nbytes); - return buffer; -} - - -byte * -_gcry_mpi_get_buffer (gcry_mpi_t a, unsigned int *nbytes, int *sign) -{ - return do_get_buffer (a, nbytes, sign, 0); -} - -byte * -_gcry_mpi_get_secure_buffer (gcry_mpi_t a, unsigned *nbytes, int *sign) -{ - return do_get_buffer (a, nbytes, sign, 1); -} - - -/* - * Use the NBYTES at BUFFER_ARG to update A. Set the sign of a to - * SIGN. - */ -void -_gcry_mpi_set_buffer (gcry_mpi_t a, const void *buffer_arg, - unsigned int nbytes, int sign) -{ - const unsigned char *buffer = (const unsigned char*)buffer_arg; - const unsigned char *p; - mpi_limb_t alimb; - int nlimbs; - int i; - - nlimbs = (nbytes + BYTES_PER_MPI_LIMB - 1) / BYTES_PER_MPI_LIMB; - RESIZE_IF_NEEDED(a, nlimbs); - a->sign = sign; - - for (i=0, p = buffer+nbytes-1; p >= buffer+BYTES_PER_MPI_LIMB; ) - { -#if BYTES_PER_MPI_LIMB == 4 - alimb = *p-- ; - alimb |= *p-- << 8 ; - alimb |= *p-- << 16 ; - alimb |= *p-- << 24 ; -#elif BYTES_PER_MPI_LIMB == 8 - alimb = (mpi_limb_t)*p-- ; - alimb |= (mpi_limb_t)*p-- << 8 ; - alimb |= (mpi_limb_t)*p-- << 16 ; - alimb |= (mpi_limb_t)*p-- << 24 ; - alimb |= (mpi_limb_t)*p-- << 32 ; - alimb |= (mpi_limb_t)*p-- << 40 ; - alimb |= (mpi_limb_t)*p-- << 48 ; - alimb |= (mpi_limb_t)*p-- << 56 ; -#else -# error please implement for this limb size. -#endif - a->d[i++] = alimb; - } - if ( p >= buffer ) - { -#if BYTES_PER_MPI_LIMB == 4 - alimb = *p--; - if (p >= buffer) - alimb |= *p-- << 8; - if (p >= buffer) - alimb |= *p-- << 16; - if (p >= buffer) - alimb |= *p-- << 24; -#elif BYTES_PER_MPI_LIMB == 8 - alimb = (mpi_limb_t)*p--; - if (p >= buffer) - alimb |= (mpi_limb_t)*p-- << 8; - if (p >= buffer) - alimb |= (mpi_limb_t)*p-- << 16; - if (p >= buffer) - alimb |= (mpi_limb_t)*p-- << 24; - if (p >= buffer) - alimb |= (mpi_limb_t)*p-- << 32; - if (p >= buffer) - alimb |= (mpi_limb_t)*p-- << 40; - if (p >= buffer) - alimb |= (mpi_limb_t)*p-- << 48; - if (p >= buffer) - alimb |= (mpi_limb_t)*p-- << 56; -#else -# error please implement for this limb size. -#endif - a->d[i++] = alimb; - } - a->nlimbs = i; - gcry_assert (i == nlimbs); -} - - -/* Convert the external representation of an integer stored in BUFFER - with a length of BUFLEN into a newly create MPI returned in - RET_MPI. If NBYTES is not NULL, it will receive the number of - bytes actually scanned after a successful operation. */ -gcry_error_t -gcry_mpi_scan (struct gcry_mpi **ret_mpi, enum gcry_mpi_format format, - const void *buffer_arg, size_t buflen, size_t *nscanned) -{ - const unsigned char *buffer = (const unsigned char*)buffer_arg; - struct gcry_mpi *a = NULL; - unsigned int len; - int secure = (buffer && gcry_is_secure (buffer)); - - if (format == GCRYMPI_FMT_SSH) - len = 0; - else - len = buflen; - - if (format == GCRYMPI_FMT_STD) - { - const unsigned char *s = buffer; - - a = secure? mpi_alloc_secure ((len+BYTES_PER_MPI_LIMB-1) - /BYTES_PER_MPI_LIMB) - : mpi_alloc ((len+BYTES_PER_MPI_LIMB-1)/BYTES_PER_MPI_LIMB); - if (len) - { - a->sign = !!(*s & 0x80); - if (a->sign) - { - /* FIXME: we have to convert from 2compl to magnitude format */ - mpi_free (a); - return gcry_error (GPG_ERR_INTERNAL); - } - else - _gcry_mpi_set_buffer (a, s, len, 0); - } - if (ret_mpi) - { - mpi_normalize ( a ); - *ret_mpi = a; - } - else - mpi_free(a); - return 0; - } - else if (format == GCRYMPI_FMT_USG) - { - a = secure? mpi_alloc_secure ((len+BYTES_PER_MPI_LIMB-1) - /BYTES_PER_MPI_LIMB) - : mpi_alloc ((len+BYTES_PER_MPI_LIMB-1)/BYTES_PER_MPI_LIMB); - - if (len) - _gcry_mpi_set_buffer (a, buffer, len, 0); - if (ret_mpi) - { - mpi_normalize ( a ); - *ret_mpi = a; - } - else - mpi_free(a); - return 0; - } - else if (format == GCRYMPI_FMT_PGP) - { - a = mpi_read_from_buffer (buffer, &len, secure); - if (nscanned) - *nscanned = len; - if (ret_mpi && a) - { - mpi_normalize (a); - *ret_mpi = a; - } - else if (a) - { - mpi_free(a); - a = NULL; - } - return a? 0 : gcry_error (GPG_ERR_INV_OBJ); - } - else if (format == GCRYMPI_FMT_SSH) - { - const unsigned char *s = buffer; - size_t n; - - /* This test is not strictly necessary and an assert (!len) - would be sufficient. We keep this test in case we later - allow the BUFLEN argument to act as a sanitiy check. Same - below. */ - if (len && len < 4) - return gcry_error (GPG_ERR_TOO_SHORT); - - n = (s[0] << 24 | s[1] << 16 | s[2] << 8 | s[3]); - s += 4; - if (len) - len -= 4; - if (len && n > len) - return gcry_error (GPG_ERR_TOO_LARGE); - - a = secure? mpi_alloc_secure ((n+BYTES_PER_MPI_LIMB-1) - /BYTES_PER_MPI_LIMB) - : mpi_alloc ((n+BYTES_PER_MPI_LIMB-1)/BYTES_PER_MPI_LIMB); - if (n) - { - a->sign = !!(*s & 0x80); - if (a->sign) - { - /* FIXME: we have to convert from 2compl to magnitude format */ - mpi_free(a); - return gcry_error (GPG_ERR_INTERNAL); - } - else - _gcry_mpi_set_buffer( a, s, n, 0 ); - } - if (nscanned) - *nscanned = n+4; - if (ret_mpi) - { - mpi_normalize ( a ); - *ret_mpi = a; - } - else - mpi_free(a); - return 0; - } - else if (format == GCRYMPI_FMT_HEX) - { - /* We can only handle C strings for now. */ - if (buflen) - return gcry_error (GPG_ERR_INV_ARG); - - a = secure? mpi_alloc_secure (0) : mpi_alloc(0); - if (mpi_fromstr (a, (const char *)buffer)) - { - mpi_free (a); - return gcry_error (GPG_ERR_INV_OBJ); - } - if (ret_mpi) - { - mpi_normalize ( a ); - *ret_mpi = a; - } - else - mpi_free(a); - return 0; - } - else - return gcry_error (GPG_ERR_INV_ARG); -} - - -/* Convert the big integer A into the external representation - described by FORMAT and store it in the provided BUFFER which has - been allocated by the user with a size of BUFLEN bytes. NWRITTEN - receives the actual length of the external representation unless it - has been passed as NULL. BUFFER may be NULL to query the required - length. */ -gcry_error_t -gcry_mpi_print (enum gcry_mpi_format format, - unsigned char *buffer, size_t buflen, - size_t *nwritten, struct gcry_mpi *a) -{ - unsigned int nbits = mpi_get_nbits (a); - size_t len; - size_t dummy_nwritten; - - if (!nwritten) - nwritten = &dummy_nwritten; - - len = buflen; - *nwritten = 0; - if (format == GCRYMPI_FMT_STD) - { - unsigned char *tmp; - int extra = 0; - unsigned int n; - - if (a->sign) - return gcry_error (GPG_ERR_INTERNAL); /* Can't handle it yet. */ - - tmp = _gcry_mpi_get_buffer (a, &n, NULL); - if (!tmp) - return gpg_error_from_syserror (); - if (n && (*tmp & 0x80)) - { - n++; - extra=1; - } - - if (buffer && n > len) - { - /* The provided buffer is too short. */ - gcry_free (tmp); - return gcry_error (GPG_ERR_TOO_SHORT); - } - if (buffer) - { - unsigned char *s = buffer; - - if (extra) - *s++ = 0; - memcpy (s, tmp, n-extra); - } - gcry_free(tmp); - *nwritten = n; - return 0; - } - else if (format == GCRYMPI_FMT_USG) - { - unsigned int n = (nbits + 7)/8; - - /* Note: We ignore the sign for this format. */ - /* FIXME: for performance reasons we should put this into - mpi_aprint because we can then use the buffer directly. */ - if (buffer && n > len) - return gcry_error (GPG_ERR_TOO_SHORT); - if (buffer) - { - unsigned char *tmp; - - tmp = _gcry_mpi_get_buffer (a, &n, NULL); - if (!tmp) - return gpg_error_from_syserror (); - memcpy (buffer, tmp, n); - gcry_free (tmp); - } - *nwritten = n; - return 0; - } - else if (format == GCRYMPI_FMT_PGP) - { - unsigned int n = (nbits + 7)/8; - - /* The PGP format can only handle unsigned integers. */ - if( a->sign ) - return gcry_error (GPG_ERR_INV_ARG); - - if (buffer && n+2 > len) - return gcry_error (GPG_ERR_TOO_SHORT); - - if (buffer) - { - unsigned char *tmp; - unsigned char *s = buffer; - - s[0] = nbits >> 8; - s[1] = nbits; - - tmp = _gcry_mpi_get_buffer (a, &n, NULL); - if (!tmp) - return gpg_error_from_syserror (); - memcpy (s+2, tmp, n); - gcry_free (tmp); - } - *nwritten = n+2; - return 0; - } - else if (format == GCRYMPI_FMT_SSH) - { - unsigned char *tmp; - int extra = 0; - unsigned int n; - - if (a->sign) - return gcry_error (GPG_ERR_INTERNAL); /* Can't handle it yet. */ - - tmp = _gcry_mpi_get_buffer (a, &n, NULL); - if (!tmp) - return gpg_error_from_syserror (); - if (n && (*tmp & 0x80)) - { - n++; - extra=1; - } - - if (buffer && n+4 > len) - { - gcry_free(tmp); - return gcry_error (GPG_ERR_TOO_SHORT); - } - - if (buffer) - { - unsigned char *s = buffer; - - *s++ = n >> 24; - *s++ = n >> 16; - *s++ = n >> 8; - *s++ = n; - if (extra) - *s++ = 0; - - memcpy (s, tmp, n-extra); - } - gcry_free (tmp); - *nwritten = 4+n; - return 0; - } - else if (format == GCRYMPI_FMT_HEX) - { - unsigned char *tmp; - int i; - int extra = 0; - unsigned int n = 0; - - tmp = _gcry_mpi_get_buffer (a, &n, NULL); - if (!tmp) - return gpg_error_from_syserror (); - if (!n || (*tmp & 0x80)) - extra = 2; - - if (buffer && 2*n + extra + !!a->sign + 1 > len) - { - gcry_free(tmp); - return gcry_error (GPG_ERR_TOO_SHORT); - } - if (buffer) - { - unsigned char *s = buffer; - - if (a->sign) - *s++ = '-'; - if (extra) - { - *s++ = '0'; - *s++ = '0'; - } - - for (i=0; i < n; i++) - { - unsigned int c = tmp[i]; - - *s++ = (c >> 4) < 10? '0'+(c>>4) : 'A'+(c>>4)-10 ; - c &= 15; - *s++ = c < 10? '0'+c : 'A'+c-10 ; - } - *s++ = 0; - *nwritten = s - buffer; - } - else - { - *nwritten = 2*n + extra + !!a->sign + 1; - } - gcry_free (tmp); - return 0; - } - else - return gcry_error (GPG_ERR_INV_ARG); -} - - -/* - * Like gcry_mpi_print but this function allocates the buffer itself. - * The caller has to supply the address of a pointer. NWRITTEN may be - * NULL. - */ -gcry_error_t -gcry_mpi_aprint (enum gcry_mpi_format format, - unsigned char **buffer, size_t *nwritten, - struct gcry_mpi *a) -{ - size_t n; - gcry_error_t rc; - - *buffer = NULL; - rc = gcry_mpi_print (format, NULL, 0, &n, a); - if (rc) - return rc; - - *buffer = mpi_is_secure(a) ? gcry_malloc_secure (n) : gcry_malloc (n); - if (!*buffer) - return gpg_error_from_syserror (); - rc = gcry_mpi_print( format, *buffer, n, &n, a ); - if (rc) - { - gcry_free(*buffer); - *buffer = NULL; - } - else if (nwritten) - *nwritten = n; - return rc; -} diff --git a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/mpih-add1.c b/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/mpih-add1.c deleted file mode 100644 index 4a84df64d..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/mpih-add1.c +++ /dev/null @@ -1,65 +0,0 @@ -/* mpihelp-add_1.c - MPI helper functions - * Copyright (C) 1994, 1996, 1997, 1998, - * 2000, 2002 Free Software Foundation, Inc. - * - * This file is part of Libgcrypt. - * - * Libgcrypt is free software; you can redistribute it and/or modify - * it under the terms of the GNU Lesser General Public License as - * published by the Free Software Foundation; either version 2.1 of - * the License, or (at your option) any later version. - * - * Libgcrypt is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA - * - * Note: This code is heavily based on the GNU MP Library. - * Actually it's the same code with only minor changes in the - * way the data is stored; this is to support the abstraction - * of an optional secure memory allocation which may be used - * to avoid revealing of sensitive data due to paging etc. - */ - -#include -#include -#include -#include "mpi-internal.h" -#include "longlong.h" - -mpi_limb_t -_gcry_mpih_add_n (mpi_ptr_t res_ptr, mpi_ptr_t s1_ptr, - mpi_ptr_t s2_ptr, mpi_size_t size) -{ - mpi_limb_t x, y, cy; - mpi_size_t j; - - /* The loop counter and index J goes from -SIZE to -1. This way - the loop becomes faster. */ - j = -size; - - /* Offset the base pointers to compensate for the negative indices. */ - s1_ptr -= j; - s2_ptr -= j; - res_ptr -= j; - - cy = 0; - do - { - y = s2_ptr[j]; - x = s1_ptr[j]; - y += cy; /* add previous carry to one addend */ - cy = y < cy; /* get out carry from that addition */ - y += x; /* add other addend */ - cy += y < x; /* get out carry from that add, combine */ - res_ptr[j] = y; - } - while ( ++j ); - - return cy; -} - diff --git a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/mpih-div.c b/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/mpih-div.c deleted file mode 100644 index 797c083e3..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/mpih-div.c +++ /dev/null @@ -1,536 +0,0 @@ -/* This file was automatically imported with - import_gcry.py. Please don't modify it */ -/* mpih-div.c - MPI helper functions - * Copyright (C) 1994, 1996, 1998, 2000, - * 2001, 2002 Free Software Foundation, Inc. - * - * This file is part of Libgcrypt. - * - * Libgcrypt is free software; you can redistribute it and/or modify - * it under the terms of the GNU Lesser General Public License as - * published by the Free Software Foundation; either version 2.1 of - * the License, or (at your option) any later version. - * - * Libgcrypt is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA - * - * Note: This code is heavily based on the GNU MP Library. - * Actually it's the same code with only minor changes in the - * way the data is stored; this is to support the abstraction - * of an optional secure memory allocation which may be used - * to avoid revealing of sensitive data due to paging etc. - */ - -#include -#include -#include -#include "mpi-internal.h" -#include "longlong.h" - -#ifndef UMUL_TIME -#define UMUL_TIME 1 -#endif -#ifndef UDIV_TIME -#define UDIV_TIME UMUL_TIME -#endif - -/* FIXME: We should be using invert_limb (or invert_normalized_limb) - * here (not udiv_qrnnd). - */ - -mpi_limb_t -_gcry_mpih_mod_1(mpi_ptr_t dividend_ptr, mpi_size_t dividend_size, - mpi_limb_t divisor_limb) -{ - mpi_size_t i; - mpi_limb_t n1, n0, r; - int dummy; - - /* Botch: Should this be handled at all? Rely on callers? */ - if( !dividend_size ) - return 0; - - /* If multiplication is much faster than division, and the - * dividend is large, pre-invert the divisor, and use - * only multiplications in the inner loop. - * - * This test should be read: - * Does it ever help to use udiv_qrnnd_preinv? - * && Does what we save compensate for the inversion overhead? - */ - if( UDIV_TIME > (2 * UMUL_TIME + 6) - && (UDIV_TIME - (2 * UMUL_TIME + 6)) * dividend_size > UDIV_TIME ) { - int normalization_steps; - - count_leading_zeros( normalization_steps, divisor_limb ); - if( normalization_steps ) { - mpi_limb_t divisor_limb_inverted; - - divisor_limb <<= normalization_steps; - - /* Compute (2**2N - 2**N * DIVISOR_LIMB) / DIVISOR_LIMB. The - * result is a (N+1)-bit approximation to 1/DIVISOR_LIMB, with the - * most significant bit (with weight 2**N) implicit. - * - * Special case for DIVISOR_LIMB == 100...000. - */ - if( !(divisor_limb << 1) ) - divisor_limb_inverted = ~(mpi_limb_t)0; - else - udiv_qrnnd(divisor_limb_inverted, dummy, - -divisor_limb, 0, divisor_limb); - - n1 = dividend_ptr[dividend_size - 1]; - r = n1 >> (BITS_PER_MPI_LIMB - normalization_steps); - - /* Possible optimization: - * if (r == 0 - * && divisor_limb > ((n1 << normalization_steps) - * | (dividend_ptr[dividend_size - 2] >> ...))) - * ...one division less... - */ - for( i = dividend_size - 2; i >= 0; i--) { - n0 = dividend_ptr[i]; - UDIV_QRNND_PREINV(dummy, r, r, - ((n1 << normalization_steps) - | (n0 >> (BITS_PER_MPI_LIMB - normalization_steps))), - divisor_limb, divisor_limb_inverted); - n1 = n0; - } - UDIV_QRNND_PREINV(dummy, r, r, - n1 << normalization_steps, - divisor_limb, divisor_limb_inverted); - return r >> normalization_steps; - } - else { - mpi_limb_t divisor_limb_inverted; - - /* Compute (2**2N - 2**N * DIVISOR_LIMB) / DIVISOR_LIMB. The - * result is a (N+1)-bit approximation to 1/DIVISOR_LIMB, with the - * most significant bit (with weight 2**N) implicit. - * - * Special case for DIVISOR_LIMB == 100...000. - */ - if( !(divisor_limb << 1) ) - divisor_limb_inverted = ~(mpi_limb_t)0; - else - udiv_qrnnd(divisor_limb_inverted, dummy, - -divisor_limb, 0, divisor_limb); - - i = dividend_size - 1; - r = dividend_ptr[i]; - - if( r >= divisor_limb ) - r = 0; - else - i--; - - for( ; i >= 0; i--) { - n0 = dividend_ptr[i]; - UDIV_QRNND_PREINV(dummy, r, r, - n0, divisor_limb, divisor_limb_inverted); - } - return r; - } - } - else { - if( UDIV_NEEDS_NORMALIZATION ) { - int normalization_steps; - - count_leading_zeros(normalization_steps, divisor_limb); - if( normalization_steps ) { - divisor_limb <<= normalization_steps; - - n1 = dividend_ptr[dividend_size - 1]; - r = n1 >> (BITS_PER_MPI_LIMB - normalization_steps); - - /* Possible optimization: - * if (r == 0 - * && divisor_limb > ((n1 << normalization_steps) - * | (dividend_ptr[dividend_size - 2] >> ...))) - * ...one division less... - */ - for(i = dividend_size - 2; i >= 0; i--) { - n0 = dividend_ptr[i]; - udiv_qrnnd (dummy, r, r, - ((n1 << normalization_steps) - | (n0 >> (BITS_PER_MPI_LIMB - normalization_steps))), - divisor_limb); - n1 = n0; - } - udiv_qrnnd (dummy, r, r, - n1 << normalization_steps, - divisor_limb); - return r >> normalization_steps; - } - } - /* No normalization needed, either because udiv_qrnnd doesn't require - * it, or because DIVISOR_LIMB is already normalized. */ - i = dividend_size - 1; - r = dividend_ptr[i]; - - if(r >= divisor_limb) - r = 0; - else - i--; - - for(; i >= 0; i--) { - n0 = dividend_ptr[i]; - udiv_qrnnd (dummy, r, r, n0, divisor_limb); - } - return r; - } -} - -/* Divide num (NP/NSIZE) by den (DP/DSIZE) and write - * the NSIZE-DSIZE least significant quotient limbs at QP - * and the DSIZE long remainder at NP. If QEXTRA_LIMBS is - * non-zero, generate that many fraction bits and append them after the - * other quotient limbs. - * Return the most significant limb of the quotient, this is always 0 or 1. - * - * Preconditions: - * 0. NSIZE >= DSIZE. - * 1. The most significant bit of the divisor must be set. - * 2. QP must either not overlap with the input operands at all, or - * QP + DSIZE >= NP must hold true. (This means that it's - * possible to put the quotient in the high part of NUM, right after the - * remainder in NUM. - * 3. NSIZE >= DSIZE, even if QEXTRA_LIMBS is non-zero. - */ - -mpi_limb_t -_gcry_mpih_divrem( mpi_ptr_t qp, mpi_size_t qextra_limbs, - mpi_ptr_t np, mpi_size_t nsize, - mpi_ptr_t dp, mpi_size_t dsize) -{ - mpi_limb_t most_significant_q_limb = 0; - - switch(dsize) { - case 0: - /* We are asked to divide by zero, so go ahead and do it! (To make - the compiler not remove this statement, return the value.) */ - grub_fatal ("mpi division by zero"); - return 0; - - case 1: - { - mpi_size_t i; - mpi_limb_t n1; - mpi_limb_t d; - - d = dp[0]; - n1 = np[nsize - 1]; - - if( n1 >= d ) { - n1 -= d; - most_significant_q_limb = 1; - } - - qp += qextra_limbs; - for( i = nsize - 2; i >= 0; i--) - udiv_qrnnd( qp[i], n1, n1, np[i], d ); - qp -= qextra_limbs; - - for( i = qextra_limbs - 1; i >= 0; i-- ) - udiv_qrnnd (qp[i], n1, n1, 0, d); - - np[0] = n1; - } - break; - - case 2: - { - mpi_size_t i; - mpi_limb_t n1, n0, n2; - mpi_limb_t d1, d0; - - np += nsize - 2; - d1 = dp[1]; - d0 = dp[0]; - n1 = np[1]; - n0 = np[0]; - - if( n1 >= d1 && (n1 > d1 || n0 >= d0) ) { - sub_ddmmss (n1, n0, n1, n0, d1, d0); - most_significant_q_limb = 1; - } - - for( i = qextra_limbs + nsize - 2 - 1; i >= 0; i-- ) { - mpi_limb_t q; - mpi_limb_t r; - - if( i >= qextra_limbs ) - np--; - else - np[0] = 0; - - if( n1 == d1 ) { - /* Q should be either 111..111 or 111..110. Need special - * treatment of this rare case as normal division would - * give overflow. */ - q = ~(mpi_limb_t)0; - - r = n0 + d1; - if( r < d1 ) { /* Carry in the addition? */ - add_ssaaaa( n1, n0, r - d0, np[0], 0, d0 ); - qp[i] = q; - continue; - } - n1 = d0 - (d0 != 0?1:0); - n0 = -d0; - } - else { - udiv_qrnnd (q, r, n1, n0, d1); - umul_ppmm (n1, n0, d0, q); - } - - n2 = np[0]; - q_test: - if( n1 > r || (n1 == r && n0 > n2) ) { - /* The estimated Q was too large. */ - q--; - sub_ddmmss (n1, n0, n1, n0, 0, d0); - r += d1; - if( r >= d1 ) /* If not carry, test Q again. */ - goto q_test; - } - - qp[i] = q; - sub_ddmmss (n1, n0, r, n2, n1, n0); - } - np[1] = n1; - np[0] = n0; - } - break; - - default: - { - mpi_size_t i; - mpi_limb_t dX, d1, n0; - - np += nsize - dsize; - dX = dp[dsize - 1]; - d1 = dp[dsize - 2]; - n0 = np[dsize - 1]; - - if( n0 >= dX ) { - if(n0 > dX || _gcry_mpih_cmp(np, dp, dsize - 1) >= 0 ) { - _gcry_mpih_sub_n(np, np, dp, dsize); - n0 = np[dsize - 1]; - most_significant_q_limb = 1; - } - } - - for( i = qextra_limbs + nsize - dsize - 1; i >= 0; i--) { - mpi_limb_t q; - mpi_limb_t n1, n2; - mpi_limb_t cy_limb; - - if( i >= qextra_limbs ) { - np--; - n2 = np[dsize]; - } - else { - n2 = np[dsize - 1]; - MPN_COPY_DECR (np + 1, np, dsize - 1); - np[0] = 0; - } - - if( n0 == dX ) { - /* This might over-estimate q, but it's probably not worth - * the extra code here to find out. */ - q = ~(mpi_limb_t)0; - } - else { - mpi_limb_t r; - - udiv_qrnnd(q, r, n0, np[dsize - 1], dX); - umul_ppmm(n1, n0, d1, q); - - while( n1 > r || (n1 == r && n0 > np[dsize - 2])) { - q--; - r += dX; - if( r < dX ) /* I.e. "carry in previous addition?" */ - break; - n1 -= n0 < d1; - n0 -= d1; - } - } - - /* Possible optimization: We already have (q * n0) and (1 * n1) - * after the calculation of q. Taking advantage of that, we - * could make this loop make two iterations less. */ - cy_limb = _gcry_mpih_submul_1(np, dp, dsize, q); - - if( n2 != cy_limb ) { - _gcry_mpih_add_n(np, np, dp, dsize); - q--; - } - - qp[i] = q; - n0 = np[dsize - 1]; - } - } - } - - return most_significant_q_limb; -} - - -/**************** - * Divide (DIVIDEND_PTR,,DIVIDEND_SIZE) by DIVISOR_LIMB. - * Write DIVIDEND_SIZE limbs of quotient at QUOT_PTR. - * Return the single-limb remainder. - * There are no constraints on the value of the divisor. - * - * QUOT_PTR and DIVIDEND_PTR might point to the same limb. - */ - -mpi_limb_t -_gcry_mpih_divmod_1( mpi_ptr_t quot_ptr, - mpi_ptr_t dividend_ptr, mpi_size_t dividend_size, - mpi_limb_t divisor_limb) -{ - mpi_size_t i; - mpi_limb_t n1, n0, r; - int dummy; - - if( !dividend_size ) - return 0; - - /* If multiplication is much faster than division, and the - * dividend is large, pre-invert the divisor, and use - * only multiplications in the inner loop. - * - * This test should be read: - * Does it ever help to use udiv_qrnnd_preinv? - * && Does what we save compensate for the inversion overhead? - */ - if( UDIV_TIME > (2 * UMUL_TIME + 6) - && (UDIV_TIME - (2 * UMUL_TIME + 6)) * dividend_size > UDIV_TIME ) { - int normalization_steps; - - count_leading_zeros( normalization_steps, divisor_limb ); - if( normalization_steps ) { - mpi_limb_t divisor_limb_inverted; - - divisor_limb <<= normalization_steps; - - /* Compute (2**2N - 2**N * DIVISOR_LIMB) / DIVISOR_LIMB. The - * result is a (N+1)-bit approximation to 1/DIVISOR_LIMB, with the - * most significant bit (with weight 2**N) implicit. - */ - /* Special case for DIVISOR_LIMB == 100...000. */ - if( !(divisor_limb << 1) ) - divisor_limb_inverted = ~(mpi_limb_t)0; - else - udiv_qrnnd(divisor_limb_inverted, dummy, - -divisor_limb, 0, divisor_limb); - - n1 = dividend_ptr[dividend_size - 1]; - r = n1 >> (BITS_PER_MPI_LIMB - normalization_steps); - - /* Possible optimization: - * if (r == 0 - * && divisor_limb > ((n1 << normalization_steps) - * | (dividend_ptr[dividend_size - 2] >> ...))) - * ...one division less... - */ - for( i = dividend_size - 2; i >= 0; i--) { - n0 = dividend_ptr[i]; - UDIV_QRNND_PREINV( quot_ptr[i + 1], r, r, - ((n1 << normalization_steps) - | (n0 >> (BITS_PER_MPI_LIMB - normalization_steps))), - divisor_limb, divisor_limb_inverted); - n1 = n0; - } - UDIV_QRNND_PREINV( quot_ptr[0], r, r, - n1 << normalization_steps, - divisor_limb, divisor_limb_inverted); - return r >> normalization_steps; - } - else { - mpi_limb_t divisor_limb_inverted; - - /* Compute (2**2N - 2**N * DIVISOR_LIMB) / DIVISOR_LIMB. The - * result is a (N+1)-bit approximation to 1/DIVISOR_LIMB, with the - * most significant bit (with weight 2**N) implicit. - */ - /* Special case for DIVISOR_LIMB == 100...000. */ - if( !(divisor_limb << 1) ) - divisor_limb_inverted = ~(mpi_limb_t) 0; - else - udiv_qrnnd(divisor_limb_inverted, dummy, - -divisor_limb, 0, divisor_limb); - - i = dividend_size - 1; - r = dividend_ptr[i]; - - if( r >= divisor_limb ) - r = 0; - else - quot_ptr[i--] = 0; - - for( ; i >= 0; i-- ) { - n0 = dividend_ptr[i]; - UDIV_QRNND_PREINV( quot_ptr[i], r, r, - n0, divisor_limb, divisor_limb_inverted); - } - return r; - } - } - else { - if(UDIV_NEEDS_NORMALIZATION) { - int normalization_steps; - - count_leading_zeros (normalization_steps, divisor_limb); - if( normalization_steps ) { - divisor_limb <<= normalization_steps; - - n1 = dividend_ptr[dividend_size - 1]; - r = n1 >> (BITS_PER_MPI_LIMB - normalization_steps); - - /* Possible optimization: - * if (r == 0 - * && divisor_limb > ((n1 << normalization_steps) - * | (dividend_ptr[dividend_size - 2] >> ...))) - * ...one division less... - */ - for( i = dividend_size - 2; i >= 0; i--) { - n0 = dividend_ptr[i]; - udiv_qrnnd (quot_ptr[i + 1], r, r, - ((n1 << normalization_steps) - | (n0 >> (BITS_PER_MPI_LIMB - normalization_steps))), - divisor_limb); - n1 = n0; - } - udiv_qrnnd (quot_ptr[0], r, r, - n1 << normalization_steps, - divisor_limb); - return r >> normalization_steps; - } - } - /* No normalization needed, either because udiv_qrnnd doesn't require - * it, or because DIVISOR_LIMB is already normalized. */ - i = dividend_size - 1; - r = dividend_ptr[i]; - - if(r >= divisor_limb) - r = 0; - else - quot_ptr[i--] = 0; - - for(; i >= 0; i--) { - n0 = dividend_ptr[i]; - udiv_qrnnd( quot_ptr[i], r, r, n0, divisor_limb ); - } - return r; - } -} diff --git a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/mpih-lshift.c b/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/mpih-lshift.c deleted file mode 100644 index f48c12cd0..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/mpih-lshift.c +++ /dev/null @@ -1,68 +0,0 @@ -/* mpi-lshift.c - MPI helper functions - * Copyright (C) 1994, 1996, 1998, 2001, 2002 Free Software Foundation, Inc. - * - * This file is part of Libgcrypt. - * - * Libgcrypt is free software; you can redistribute it and/or modify - * it under the terms of the GNU Lesser General Public License as - * published by the Free Software Foundation; either version 2.1 of - * the License, or (at your option) any later version. - * - * Libgcrypt is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA - * - * Note: This code is heavily based on the GNU MP Library. - * Actually it's the same code with only minor changes in the - * way the data is stored; this is to support the abstraction - * of an optional secure memory allocation which may be used - * to avoid revealing of sensitive data due to paging etc. - */ - -#include -#include -#include -#include "mpi-internal.h" - -/* Shift U (pointed to by UP and USIZE digits long) CNT bits to the left - * and store the USIZE least significant digits of the result at WP. - * Return the bits shifted out from the most significant digit. - * - * Argument constraints: - * 1. 0 < CNT < BITS_PER_MP_LIMB - * 2. If the result is to be written over the input, WP must be >= UP. - */ - -mpi_limb_t -_gcry_mpih_lshift( mpi_ptr_t wp, mpi_ptr_t up, mpi_size_t usize, - unsigned int cnt) -{ - mpi_limb_t high_limb, low_limb; - unsigned sh_1, sh_2; - mpi_size_t i; - mpi_limb_t retval; - - sh_1 = cnt; - wp += 1; - sh_2 = BITS_PER_MPI_LIMB - sh_1; - i = usize - 1; - low_limb = up[i]; - retval = low_limb >> sh_2; - high_limb = low_limb; - while ( --i >= 0 ) - { - low_limb = up[i]; - wp[i] = (high_limb << sh_1) | (low_limb >> sh_2); - high_limb = low_limb; - } - wp[i] = high_limb << sh_1; - - return retval; -} - - diff --git a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/mpih-mul.c b/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/mpih-mul.c deleted file mode 100644 index 44b368649..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/mpih-mul.c +++ /dev/null @@ -1,530 +0,0 @@ -/* This file was automatically imported with - import_gcry.py. Please don't modify it */ -/* mpih-mul.c - MPI helper functions - * Copyright (C) 1994, 1996, 1998, 1999, 2000, - * 2001, 2002 Free Software Foundation, Inc. - * - * This file is part of Libgcrypt. - * - * Libgcrypt is free software; you can redistribute it and/or modify - * it under the terms of the GNU Lesser General Public License as - * published by the Free Software Foundation; either version 2.1 of - * the License, or (at your option) any later version. - * - * Libgcrypt is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA - * - * Note: This code is heavily based on the GNU MP Library. - * Actually it's the same code with only minor changes in the - * way the data is stored; this is to support the abstraction - * of an optional secure memory allocation which may be used - * to avoid revealing of sensitive data due to paging etc. - */ - -#include -#include -#include -#include -#include "mpi-internal.h" -#include "longlong.h" -#include "g10lib.h" - -#define MPN_MUL_N_RECURSE(prodp, up, vp, size, tspace) \ - do { \ - if( (size) < KARATSUBA_THRESHOLD ) \ - mul_n_basecase (prodp, up, vp, size); \ - else \ - mul_n (prodp, up, vp, size, tspace); \ - } while (0); - -#define MPN_SQR_N_RECURSE(prodp, up, size, tspace) \ - do { \ - if ((size) < KARATSUBA_THRESHOLD) \ - _gcry_mpih_sqr_n_basecase (prodp, up, size); \ - else \ - _gcry_mpih_sqr_n (prodp, up, size, tspace); \ - } while (0); - - - - -/* Multiply the natural numbers u (pointed to by UP) and v (pointed to by VP), - * both with SIZE limbs, and store the result at PRODP. 2 * SIZE limbs are - * always stored. Return the most significant limb. - * - * Argument constraints: - * 1. PRODP != UP and PRODP != VP, i.e. the destination - * must be distinct from the multiplier and the multiplicand. - * - * - * Handle simple cases with traditional multiplication. - * - * This is the most critical code of multiplication. All multiplies rely - * on this, both small and huge. Small ones arrive here immediately. Huge - * ones arrive here as this is the base case for Karatsuba's recursive - * algorithm below. - */ - -static mpi_limb_t -mul_n_basecase( mpi_ptr_t prodp, mpi_ptr_t up, - mpi_ptr_t vp, mpi_size_t size) -{ - mpi_size_t i; - mpi_limb_t cy; - mpi_limb_t v_limb; - - /* Multiply by the first limb in V separately, as the result can be - * stored (not added) to PROD. We also avoid a loop for zeroing. */ - v_limb = vp[0]; - if( v_limb <= 1 ) { - if( v_limb == 1 ) - MPN_COPY( prodp, up, size ); - else - MPN_ZERO( prodp, size ); - cy = 0; - } - else - cy = _gcry_mpih_mul_1( prodp, up, size, v_limb ); - - prodp[size] = cy; - prodp++; - - /* For each iteration in the outer loop, multiply one limb from - * U with one limb from V, and add it to PROD. */ - for( i = 1; i < size; i++ ) { - v_limb = vp[i]; - if( v_limb <= 1 ) { - cy = 0; - if( v_limb == 1 ) - cy = _gcry_mpih_add_n(prodp, prodp, up, size); - } - else - cy = _gcry_mpih_addmul_1(prodp, up, size, v_limb); - - prodp[size] = cy; - prodp++; - } - - return cy; -} - - -static void -mul_n( mpi_ptr_t prodp, mpi_ptr_t up, mpi_ptr_t vp, - mpi_size_t size, mpi_ptr_t tspace ) -{ - if( size & 1 ) { - /* The size is odd, and the code below doesn't handle that. - * Multiply the least significant (size - 1) limbs with a recursive - * call, and handle the most significant limb of S1 and S2 - * separately. - * A slightly faster way to do this would be to make the Karatsuba - * code below behave as if the size were even, and let it check for - * odd size in the end. I.e., in essence move this code to the end. - * Doing so would save us a recursive call, and potentially make the - * stack grow a lot less. - */ - mpi_size_t esize = size - 1; /* even size */ - mpi_limb_t cy_limb; - - MPN_MUL_N_RECURSE( prodp, up, vp, esize, tspace ); - cy_limb = _gcry_mpih_addmul_1( prodp + esize, up, esize, vp[esize] ); - prodp[esize + esize] = cy_limb; - cy_limb = _gcry_mpih_addmul_1( prodp + esize, vp, size, up[esize] ); - prodp[esize + size] = cy_limb; - } - else { - /* Anatolij Alekseevich Karatsuba's divide-and-conquer algorithm. - * - * Split U in two pieces, U1 and U0, such that - * U = U0 + U1*(B**n), - * and V in V1 and V0, such that - * V = V0 + V1*(B**n). - * - * UV is then computed recursively using the identity - * - * 2n n n n - * UV = (B + B )U V + B (U -U )(V -V ) + (B + 1)U V - * 1 1 1 0 0 1 0 0 - * - * Where B = 2**BITS_PER_MP_LIMB. - */ - mpi_size_t hsize = size >> 1; - mpi_limb_t cy; - int negflg; - - /* Product H. ________________ ________________ - * |_____U1 x V1____||____U0 x V0_____| - * Put result in upper part of PROD and pass low part of TSPACE - * as new TSPACE. - */ - MPN_MUL_N_RECURSE(prodp + size, up + hsize, vp + hsize, hsize, tspace); - - /* Product M. ________________ - * |_(U1-U0)(V0-V1)_| - */ - if( _gcry_mpih_cmp(up + hsize, up, hsize) >= 0 ) { - _gcry_mpih_sub_n(prodp, up + hsize, up, hsize); - negflg = 0; - } - else { - _gcry_mpih_sub_n(prodp, up, up + hsize, hsize); - negflg = 1; - } - if( _gcry_mpih_cmp(vp + hsize, vp, hsize) >= 0 ) { - _gcry_mpih_sub_n(prodp + hsize, vp + hsize, vp, hsize); - negflg ^= 1; - } - else { - _gcry_mpih_sub_n(prodp + hsize, vp, vp + hsize, hsize); - /* No change of NEGFLG. */ - } - /* Read temporary operands from low part of PROD. - * Put result in low part of TSPACE using upper part of TSPACE - * as new TSPACE. - */ - MPN_MUL_N_RECURSE(tspace, prodp, prodp + hsize, hsize, tspace + size); - - /* Add/copy product H. */ - MPN_COPY (prodp + hsize, prodp + size, hsize); - cy = _gcry_mpih_add_n( prodp + size, prodp + size, - prodp + size + hsize, hsize); - - /* Add product M (if NEGFLG M is a negative number) */ - if(negflg) - cy -= _gcry_mpih_sub_n(prodp + hsize, prodp + hsize, tspace, size); - else - cy += _gcry_mpih_add_n(prodp + hsize, prodp + hsize, tspace, size); - - /* Product L. ________________ ________________ - * |________________||____U0 x V0_____| - * Read temporary operands from low part of PROD. - * Put result in low part of TSPACE using upper part of TSPACE - * as new TSPACE. - */ - MPN_MUL_N_RECURSE(tspace, up, vp, hsize, tspace + size); - - /* Add/copy Product L (twice) */ - - cy += _gcry_mpih_add_n(prodp + hsize, prodp + hsize, tspace, size); - if( cy ) - _gcry_mpih_add_1(prodp + hsize + size, prodp + hsize + size, hsize, cy); - - MPN_COPY(prodp, tspace, hsize); - cy = _gcry_mpih_add_n(prodp + hsize, prodp + hsize, tspace + hsize, hsize); - if( cy ) - _gcry_mpih_add_1(prodp + size, prodp + size, size, 1); - } -} - - -void -_gcry_mpih_sqr_n_basecase( mpi_ptr_t prodp, mpi_ptr_t up, mpi_size_t size ) -{ - mpi_size_t i; - mpi_limb_t cy_limb; - mpi_limb_t v_limb; - - /* Multiply by the first limb in V separately, as the result can be - * stored (not added) to PROD. We also avoid a loop for zeroing. */ - v_limb = up[0]; - if( v_limb <= 1 ) { - if( v_limb == 1 ) - MPN_COPY( prodp, up, size ); - else - MPN_ZERO(prodp, size); - cy_limb = 0; - } - else - cy_limb = _gcry_mpih_mul_1( prodp, up, size, v_limb ); - - prodp[size] = cy_limb; - prodp++; - - /* For each iteration in the outer loop, multiply one limb from - * U with one limb from V, and add it to PROD. */ - for( i=1; i < size; i++) { - v_limb = up[i]; - if( v_limb <= 1 ) { - cy_limb = 0; - if( v_limb == 1 ) - cy_limb = _gcry_mpih_add_n(prodp, prodp, up, size); - } - else - cy_limb = _gcry_mpih_addmul_1(prodp, up, size, v_limb); - - prodp[size] = cy_limb; - prodp++; - } -} - - -void -_gcry_mpih_sqr_n( mpi_ptr_t prodp, - mpi_ptr_t up, mpi_size_t size, mpi_ptr_t tspace) -{ - if( size & 1 ) { - /* The size is odd, and the code below doesn't handle that. - * Multiply the least significant (size - 1) limbs with a recursive - * call, and handle the most significant limb of S1 and S2 - * separately. - * A slightly faster way to do this would be to make the Karatsuba - * code below behave as if the size were even, and let it check for - * odd size in the end. I.e., in essence move this code to the end. - * Doing so would save us a recursive call, and potentially make the - * stack grow a lot less. - */ - mpi_size_t esize = size - 1; /* even size */ - mpi_limb_t cy_limb; - - MPN_SQR_N_RECURSE( prodp, up, esize, tspace ); - cy_limb = _gcry_mpih_addmul_1( prodp + esize, up, esize, up[esize] ); - prodp[esize + esize] = cy_limb; - cy_limb = _gcry_mpih_addmul_1( prodp + esize, up, size, up[esize] ); - - prodp[esize + size] = cy_limb; - } - else { - mpi_size_t hsize = size >> 1; - mpi_limb_t cy; - - /* Product H. ________________ ________________ - * |_____U1 x U1____||____U0 x U0_____| - * Put result in upper part of PROD and pass low part of TSPACE - * as new TSPACE. - */ - MPN_SQR_N_RECURSE(prodp + size, up + hsize, hsize, tspace); - - /* Product M. ________________ - * |_(U1-U0)(U0-U1)_| - */ - if( _gcry_mpih_cmp( up + hsize, up, hsize) >= 0 ) - _gcry_mpih_sub_n( prodp, up + hsize, up, hsize); - else - _gcry_mpih_sub_n (prodp, up, up + hsize, hsize); - - /* Read temporary operands from low part of PROD. - * Put result in low part of TSPACE using upper part of TSPACE - * as new TSPACE. */ - MPN_SQR_N_RECURSE(tspace, prodp, hsize, tspace + size); - - /* Add/copy product H */ - MPN_COPY(prodp + hsize, prodp + size, hsize); - cy = _gcry_mpih_add_n(prodp + size, prodp + size, - prodp + size + hsize, hsize); - - /* Add product M (if NEGFLG M is a negative number). */ - cy -= _gcry_mpih_sub_n (prodp + hsize, prodp + hsize, tspace, size); - - /* Product L. ________________ ________________ - * |________________||____U0 x U0_____| - * Read temporary operands from low part of PROD. - * Put result in low part of TSPACE using upper part of TSPACE - * as new TSPACE. */ - MPN_SQR_N_RECURSE (tspace, up, hsize, tspace + size); - - /* Add/copy Product L (twice). */ - cy += _gcry_mpih_add_n (prodp + hsize, prodp + hsize, tspace, size); - if( cy ) - _gcry_mpih_add_1(prodp + hsize + size, prodp + hsize + size, - hsize, cy); - - MPN_COPY(prodp, tspace, hsize); - cy = _gcry_mpih_add_n (prodp + hsize, prodp + hsize, tspace + hsize, hsize); - if( cy ) - _gcry_mpih_add_1 (prodp + size, prodp + size, size, 1); - } -} - - -/* This should be made into an inline function in gmp.h. */ -void -_gcry_mpih_mul_n( mpi_ptr_t prodp, - mpi_ptr_t up, mpi_ptr_t vp, mpi_size_t size) -{ - int secure; - - if( up == vp ) { - if( size < KARATSUBA_THRESHOLD ) - _gcry_mpih_sqr_n_basecase( prodp, up, size ); - else { - mpi_ptr_t tspace; - secure = gcry_is_secure( up ); - tspace = mpi_alloc_limb_space( 2 * size, secure ); - _gcry_mpih_sqr_n( prodp, up, size, tspace ); - _gcry_mpi_free_limb_space (tspace, 2 * size ); - } - } - else { - if( size < KARATSUBA_THRESHOLD ) - mul_n_basecase( prodp, up, vp, size ); - else { - mpi_ptr_t tspace; - secure = gcry_is_secure( up ) || gcry_is_secure( vp ); - tspace = mpi_alloc_limb_space( 2 * size, secure ); - mul_n (prodp, up, vp, size, tspace); - _gcry_mpi_free_limb_space (tspace, 2 * size ); - } - } -} - - - -void -_gcry_mpih_mul_karatsuba_case( mpi_ptr_t prodp, - mpi_ptr_t up, mpi_size_t usize, - mpi_ptr_t vp, mpi_size_t vsize, - struct karatsuba_ctx *ctx ) -{ - mpi_limb_t cy; - - if( !ctx->tspace || ctx->tspace_size < vsize ) { - if( ctx->tspace ) - _gcry_mpi_free_limb_space( ctx->tspace, ctx->tspace_nlimbs ); - ctx->tspace_nlimbs = 2 * vsize; - ctx->tspace = mpi_alloc_limb_space( 2 * vsize, - (gcry_is_secure( up ) - || gcry_is_secure( vp )) ); - ctx->tspace_size = vsize; - } - - MPN_MUL_N_RECURSE( prodp, up, vp, vsize, ctx->tspace ); - - prodp += vsize; - up += vsize; - usize -= vsize; - if( usize >= vsize ) { - if( !ctx->tp || ctx->tp_size < vsize ) { - if( ctx->tp ) - _gcry_mpi_free_limb_space( ctx->tp, ctx->tp_nlimbs ); - ctx->tp_nlimbs = 2 * vsize; - ctx->tp = mpi_alloc_limb_space( 2 * vsize, gcry_is_secure( up ) - || gcry_is_secure( vp ) ); - ctx->tp_size = vsize; - } - - do { - MPN_MUL_N_RECURSE( ctx->tp, up, vp, vsize, ctx->tspace ); - cy = _gcry_mpih_add_n( prodp, prodp, ctx->tp, vsize ); - _gcry_mpih_add_1( prodp + vsize, ctx->tp + vsize, vsize, cy ); - prodp += vsize; - up += vsize; - usize -= vsize; - } while( usize >= vsize ); - } - - if( usize ) { - if( usize < KARATSUBA_THRESHOLD ) { - _gcry_mpih_mul( ctx->tspace, vp, vsize, up, usize ); - } - else { - if( !ctx->next ) { - ctx->next = gcry_xcalloc( 1, sizeof *ctx ); - } - _gcry_mpih_mul_karatsuba_case( ctx->tspace, - vp, vsize, - up, usize, - ctx->next ); - } - - cy = _gcry_mpih_add_n( prodp, prodp, ctx->tspace, vsize); - _gcry_mpih_add_1( prodp + vsize, ctx->tspace + vsize, usize, cy ); - } -} - - -void -_gcry_mpih_release_karatsuba_ctx( struct karatsuba_ctx *ctx ) -{ - struct karatsuba_ctx *ctx2; - - if( ctx->tp ) - _gcry_mpi_free_limb_space( ctx->tp, ctx->tp_nlimbs ); - if( ctx->tspace ) - _gcry_mpi_free_limb_space( ctx->tspace, ctx->tspace_nlimbs ); - for( ctx=ctx->next; ctx; ctx = ctx2 ) { - ctx2 = ctx->next; - if( ctx->tp ) - _gcry_mpi_free_limb_space( ctx->tp, ctx->tp_nlimbs ); - if( ctx->tspace ) - _gcry_mpi_free_limb_space( ctx->tspace, ctx->tspace_nlimbs ); - gcry_free( ctx ); - } -} - -/* Multiply the natural numbers u (pointed to by UP, with USIZE limbs) - * and v (pointed to by VP, with VSIZE limbs), and store the result at - * PRODP. USIZE + VSIZE limbs are always stored, but if the input - * operands are normalized. Return the most significant limb of the - * result. - * - * NOTE: The space pointed to by PRODP is overwritten before finished - * with U and V, so overlap is an error. - * - * Argument constraints: - * 1. USIZE >= VSIZE. - * 2. PRODP != UP and PRODP != VP, i.e. the destination - * must be distinct from the multiplier and the multiplicand. - */ - -mpi_limb_t -_gcry_mpih_mul( mpi_ptr_t prodp, mpi_ptr_t up, mpi_size_t usize, - mpi_ptr_t vp, mpi_size_t vsize) -{ - mpi_ptr_t prod_endp = prodp + usize + vsize - 1; - mpi_limb_t cy; - struct karatsuba_ctx ctx; - - if( vsize < KARATSUBA_THRESHOLD ) { - mpi_size_t i; - mpi_limb_t v_limb; - - if( !vsize ) - return 0; - - /* Multiply by the first limb in V separately, as the result can be - * stored (not added) to PROD. We also avoid a loop for zeroing. */ - v_limb = vp[0]; - if( v_limb <= 1 ) { - if( v_limb == 1 ) - MPN_COPY( prodp, up, usize ); - else - MPN_ZERO( prodp, usize ); - cy = 0; - } - else - cy = _gcry_mpih_mul_1( prodp, up, usize, v_limb ); - - prodp[usize] = cy; - prodp++; - - /* For each iteration in the outer loop, multiply one limb from - * U with one limb from V, and add it to PROD. */ - for( i = 1; i < vsize; i++ ) { - v_limb = vp[i]; - if( v_limb <= 1 ) { - cy = 0; - if( v_limb == 1 ) - cy = _gcry_mpih_add_n(prodp, prodp, up, usize); - } - else - cy = _gcry_mpih_addmul_1(prodp, up, usize, v_limb); - - prodp[usize] = cy; - prodp++; - } - - return cy; - } - - memset( &ctx, 0, sizeof ctx ); - _gcry_mpih_mul_karatsuba_case( prodp, up, usize, vp, vsize, &ctx ); - _gcry_mpih_release_karatsuba_ctx( &ctx ); - return *prod_endp; -} diff --git a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/mpih-mul1.c b/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/mpih-mul1.c deleted file mode 100644 index 0e8197d88..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/mpih-mul1.c +++ /dev/null @@ -1,62 +0,0 @@ -/* mpihelp-mul_1.c - MPI helper functions - * Copyright (C) 1994, 1996, 1997, 1998, 2001, - * 2002 Free Software Foundation, Inc. - * - * This file is part of Libgcrypt. - * - * Libgcrypt is free software; you can redistribute it and/or modify - * it under the terms of the GNU Lesser General Public License as - * published by the Free Software Foundation; either version 2.1 of - * the License, or (at your option) any later version. - * - * Libgcrypt is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA - * - * Note: This code is heavily based on the GNU MP Library. - * Actually it's the same code with only minor changes in the - * way the data is stored; this is to support the abstraction - * of an optional secure memory allocation which may be used - * to avoid revealing of sensitive data due to paging etc. - */ - -#include -#include -#include -#include "mpi-internal.h" -#include "longlong.h" - -mpi_limb_t -_gcry_mpih_mul_1( mpi_ptr_t res_ptr, mpi_ptr_t s1_ptr, mpi_size_t s1_size, - mpi_limb_t s2_limb) -{ - mpi_limb_t cy_limb; - mpi_size_t j; - mpi_limb_t prod_high, prod_low; - - /* The loop counter and index J goes from -S1_SIZE to -1. This way - * the loop becomes faster. */ - j = -s1_size; - - /* Offset the base pointers to compensate for the negative indices. */ - s1_ptr -= j; - res_ptr -= j; - - cy_limb = 0; - do - { - umul_ppmm( prod_high, prod_low, s1_ptr[j], s2_limb ); - prod_low += cy_limb; - cy_limb = (prod_low < cy_limb?1:0) + prod_high; - res_ptr[j] = prod_low; - } - while( ++j ); - - return cy_limb; -} - diff --git a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/mpih-mul2.c b/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/mpih-mul2.c deleted file mode 100644 index 3b7549605..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/mpih-mul2.c +++ /dev/null @@ -1,68 +0,0 @@ -/* mpih-mul2.c - MPI helper functions - * Copyright (C) 1994, 1996, 1997, 1998, 2001, - * 2002 Free Software Foundation, Inc. - * - * This file is part of Libgcrypt. - * - * Libgcrypt is free software; you can redistribute it and/or modify - * it under the terms of the GNU Lesser General Public License as - * published by the Free Software Foundation; either version 2.1 of - * the License, or (at your option) any later version. - * - * Libgcrypt is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA - * - * Note: This code is heavily based on the GNU MP Library. - * Actually it's the same code with only minor changes in the - * way the data is stored; this is to support the abstraction - * of an optional secure memory allocation which may be used - * to avoid revealing of sensitive data due to paging etc. - */ - -#include -#include -#include -#include "mpi-internal.h" -#include "longlong.h" - - -mpi_limb_t -_gcry_mpih_addmul_1( mpi_ptr_t res_ptr, mpi_ptr_t s1_ptr, - mpi_size_t s1_size, mpi_limb_t s2_limb) -{ - mpi_limb_t cy_limb; - mpi_size_t j; - mpi_limb_t prod_high, prod_low; - mpi_limb_t x; - - /* The loop counter and index J goes from -SIZE to -1. This way - * the loop becomes faster. */ - j = -s1_size; - res_ptr -= j; - s1_ptr -= j; - - cy_limb = 0; - do - { - umul_ppmm( prod_high, prod_low, s1_ptr[j], s2_limb ); - - prod_low += cy_limb; - cy_limb = (prod_low < cy_limb?1:0) + prod_high; - - x = res_ptr[j]; - prod_low = x + prod_low; - cy_limb += prod_low < x?1:0; - res_ptr[j] = prod_low; - } - while ( ++j ); - - return cy_limb; -} - - diff --git a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/mpih-mul3.c b/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/mpih-mul3.c deleted file mode 100644 index 5e84f94f3..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/mpih-mul3.c +++ /dev/null @@ -1,68 +0,0 @@ -/* mpih-mul3.c - MPI helper functions - * Copyright (C) 1994, 1996, 1997, 1998, 2001, - * 2002 Free Software Foundation, Inc. - * - * This file is part of Libgcrypt. - * - * Libgcrypt is free software; you can redistribute it and/or modify - * it under the terms of the GNU Lesser General Public License as - * published by the Free Software Foundation; either version 2.1 of - * the License, or (at your option) any later version. - * - * Libgcrypt is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA - * - * Note: This code is heavily based on the GNU MP Library. - * Actually it's the same code with only minor changes in the - * way the data is stored; this is to support the abstraction - * of an optional secure memory allocation which may be used - * to avoid revealing of sensitive data due to paging etc. - */ - -#include -#include -#include -#include "mpi-internal.h" -#include "longlong.h" - - -mpi_limb_t -_gcry_mpih_submul_1( mpi_ptr_t res_ptr, mpi_ptr_t s1_ptr, - mpi_size_t s1_size, mpi_limb_t s2_limb) -{ - mpi_limb_t cy_limb; - mpi_size_t j; - mpi_limb_t prod_high, prod_low; - mpi_limb_t x; - - /* The loop counter and index J goes from -SIZE to -1. This way - * the loop becomes faster. */ - j = -s1_size; - res_ptr -= j; - s1_ptr -= j; - - cy_limb = 0; - do - { - umul_ppmm( prod_high, prod_low, s1_ptr[j], s2_limb); - - prod_low += cy_limb; - cy_limb = (prod_low < cy_limb?1:0) + prod_high; - - x = res_ptr[j]; - prod_low = x - prod_low; - cy_limb += prod_low > x?1:0; - res_ptr[j] = prod_low; - } - while( ++j ); - - return cy_limb; -} - - diff --git a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/mpih-rshift.c b/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/mpih-rshift.c deleted file mode 100644 index e40794fcf..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/mpih-rshift.c +++ /dev/null @@ -1,67 +0,0 @@ -/* mpih-rshift.c - MPI helper functions - * Copyright (C) 1994, 1996, 1998, 1999, - * 2000, 2001, 2002 Free Software Foundation, Inc. - * - * This file is part of Libgcrypt. - * - * Libgcrypt is free software; you can redistribute it and/or modify - * it under the terms of the GNU Lesser General Public License as - * published by the Free Software Foundation; either version 2.1 of - * the License, or (at your option) any later version. - * - * Libgcrypt is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA - * - * Note: This code is heavily based on the GNU MP Library. - * Actually it's the same code with only minor changes in the - * way the data is stored; this is to support the abstraction - * of an optional secure memory allocation which may be used - * to avoid revealing of sensitive data due to paging etc. - */ - -#include -#include -#include -#include "mpi-internal.h" - - -/* Shift U (pointed to by UP and USIZE limbs long) CNT bits to the right - * and store the USIZE least significant limbs of the result at WP. - * The bits shifted out to the right are returned. - * - * Argument constraints: - * 1. 0 < CNT < BITS_PER_MP_LIMB - * 2. If the result is to be written over the input, WP must be <= UP. - */ - -mpi_limb_t -_gcry_mpih_rshift( mpi_ptr_t wp, mpi_ptr_t up, mpi_size_t usize, unsigned cnt) -{ - mpi_limb_t high_limb, low_limb; - unsigned sh_1, sh_2; - mpi_size_t i; - mpi_limb_t retval; - - sh_1 = cnt; - wp -= 1; - sh_2 = BITS_PER_MPI_LIMB - sh_1; - high_limb = up[0]; - retval = high_limb << sh_2; - low_limb = high_limb; - for (i=1; i < usize; i++) - { - high_limb = up[i]; - wp[i] = (low_limb >> sh_1) | (high_limb << sh_2); - low_limb = high_limb; - } - wp[i] = low_limb >> sh_1; - - return retval; -} - diff --git a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/mpih-sub1.c b/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/mpih-sub1.c deleted file mode 100644 index e88821bfb..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/mpih-sub1.c +++ /dev/null @@ -1,66 +0,0 @@ -/* mpihelp-add_2.c - MPI helper functions - * Copyright (C) 1994, 1996, 1997, 1998, 2001, - * 2002 Free Software Foundation, Inc. - * - * This file is part of Libgcrypt. - * - * Libgcrypt is free software; you can redistribute it and/or modify - * it under the terms of the GNU Lesser General Public License as - * published by the Free Software Foundation; either version 2.1 of - * the License, or (at your option) any later version. - * - * Libgcrypt is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA - * - * Note: This code is heavily based on the GNU MP Library. - * Actually it's the same code with only minor changes in the - * way the data is stored; this is to support the abstraction - * of an optional secure memory allocation which may be used - * to avoid revealing of sensitive data due to paging etc. - */ - -#include -#include -#include -#include "mpi-internal.h" -#include "longlong.h" - -mpi_limb_t -_gcry_mpih_sub_n( mpi_ptr_t res_ptr, mpi_ptr_t s1_ptr, - mpi_ptr_t s2_ptr, mpi_size_t size) -{ - mpi_limb_t x, y, cy; - mpi_size_t j; - - /* The loop counter and index J goes from -SIZE to -1. This way - the loop becomes faster. */ - j = -size; - - /* Offset the base pointers to compensate for the negative indices. */ - s1_ptr -= j; - s2_ptr -= j; - res_ptr -= j; - - cy = 0; - do - { - y = s2_ptr[j]; - x = s1_ptr[j]; - y += cy; /* add previous carry to subtrahend */ - cy = y < cy; /* get out carry from that addition */ - y = x - y; /* main subtract */ - cy += y > x; /* get out carry from the subtract, combine */ - res_ptr[j] = y; - } - while( ++j ); - - return cy; -} - - diff --git a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/mpiutil.c b/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/mpiutil.c deleted file mode 100644 index 3fec8db3b..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/mpi/mpiutil.c +++ /dev/null @@ -1,435 +0,0 @@ -/* This file was automatically imported with - import_gcry.py. Please don't modify it */ -/* mpiutil.ac - Utility functions for MPI - * Copyright (C) 1998, 2000, 2001, 2002, 2003, - * 2007 Free Software Foundation, Inc. - * - * This file is part of Libgcrypt. - * - * Libgcrypt is free software; you can redistribute it and/or modify - * it under the terms of the GNU Lesser General Public License as - * published by the Free Software Foundation; either version 2.1 of - * the License, or (at your option) any later version. - * - * Libgcrypt is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this program; if not, see . - */ - -#include -#include -#include -#include - -#include "g10lib.h" -#include "mpi-internal.h" - - - - -/**************** - * Note: It was a bad idea to use the number of limbs to allocate - * because on a alpha the limbs are large but we normally need - * integers of n bits - So we should change this to bits (or bytes). - * - * But mpi_alloc is used in a lot of places :-(. New code - * should use mpi_new. - */ -gcry_mpi_t -_gcry_mpi_alloc( unsigned nlimbs ) -{ - gcry_mpi_t a; - - a = gcry_xmalloc( sizeof *a ); - a->d = nlimbs? mpi_alloc_limb_space( nlimbs, 0 ) : NULL; - a->alloced = nlimbs; - a->nlimbs = 0; - a->sign = 0; - a->flags = 0; - return a; -} - -void -_gcry_mpi_m_check( gcry_mpi_t a ) -{ - _gcry_check_heap(a); - _gcry_check_heap(a->d); -} - -gcry_mpi_t -_gcry_mpi_alloc_secure( unsigned nlimbs ) -{ - gcry_mpi_t a; - - a = gcry_xmalloc( sizeof *a ); - a->d = nlimbs? mpi_alloc_limb_space( nlimbs, 1 ) : NULL; - a->alloced = nlimbs; - a->flags = 1; - a->nlimbs = 0; - a->sign = 0; - return a; -} - - - -mpi_ptr_t -_gcry_mpi_alloc_limb_space( unsigned int nlimbs, int secure ) -{ - mpi_ptr_t p; - size_t len; - - len = (nlimbs ? nlimbs : 1) * sizeof (mpi_limb_t); - p = secure ? gcry_xmalloc_secure (len) : gcry_xmalloc (len); - if (! nlimbs) - *p = 0; - - return p; -} - -void -_gcry_mpi_free_limb_space( mpi_ptr_t a, unsigned int nlimbs) -{ - if (a) - { - size_t len = nlimbs * sizeof(mpi_limb_t); - - /* If we have information on the number of allocated limbs, we - better wipe that space out. This is a failsafe feature if - secure memory has been disabled or was not properly - implemented in user provided allocation functions. */ - if (len) - wipememory (a, len); - gcry_free(a); - } -} - - -void -_gcry_mpi_assign_limb_space( gcry_mpi_t a, mpi_ptr_t ap, unsigned int nlimbs ) -{ - _gcry_mpi_free_limb_space (a->d, a->alloced); - a->d = ap; - a->alloced = nlimbs; -} - - - -/**************** - * Resize the array of A to NLIMBS. The additional space is cleared - * (set to 0). - */ -void -_gcry_mpi_resize (gcry_mpi_t a, unsigned nlimbs) -{ - size_t i; - - if (nlimbs <= a->alloced) - { - /* We only need to clear the new space (this is a nop if the - limb space is already of the correct size. */ - for (i=a->nlimbs; i < a->alloced; i++) - a->d[i] = 0; - return; - } - - /* Actually resize the limb space. */ - if (a->d) - { - a->d = gcry_xrealloc (a->d, nlimbs * sizeof (mpi_limb_t)); - for (i=a->alloced; i < nlimbs; i++) - a->d[i] = 0; - } - else - { - if (a->flags & 1) - /* Secure memory is wanted. */ - a->d = gcry_xcalloc_secure (nlimbs , sizeof (mpi_limb_t)); - else - /* Standard memory. */ - a->d = gcry_xcalloc (nlimbs , sizeof (mpi_limb_t)); - } - a->alloced = nlimbs; -} - -void -_gcry_mpi_clear( gcry_mpi_t a ) -{ - a->nlimbs = 0; - a->flags = 0; -} - - -void -_gcry_mpi_free( gcry_mpi_t a ) -{ - if (!a ) - return; - if ((a->flags & 4)) - gcry_free( a->d ); - else - { - _gcry_mpi_free_limb_space(a->d, a->alloced); - } - if ((a->flags & ~7)) - log_bug("invalid flag value in mpi\n"); - gcry_free(a); -} - -static void -mpi_set_secure( gcry_mpi_t a ) -{ - mpi_ptr_t ap, bp; - - if ( (a->flags & 1) ) - return; - a->flags |= 1; - ap = a->d; - if (!a->nlimbs) - { - gcry_assert (!ap); - return; - } - bp = mpi_alloc_limb_space (a->nlimbs, 1); - MPN_COPY( bp, ap, a->nlimbs ); - a->d = bp; - _gcry_mpi_free_limb_space (ap, a->alloced); -} - - -gcry_mpi_t -gcry_mpi_set_opaque( gcry_mpi_t a, void *p, unsigned int nbits ) -{ - if (!a) - a = mpi_alloc(0); - - if( a->flags & 4 ) - gcry_free( a->d ); - else - _gcry_mpi_free_limb_space (a->d, a->alloced); - - a->d = p; - a->alloced = 0; - a->nlimbs = 0; - a->sign = nbits; - a->flags = 4; - return a; -} - - -void * -gcry_mpi_get_opaque( gcry_mpi_t a, unsigned int *nbits ) -{ - if( !(a->flags & 4) ) - log_bug("mpi_get_opaque on normal mpi\n"); - if( nbits ) - *nbits = a->sign; - return a->d; -} - - -/**************** - * Note: This copy function should not interpret the MPI - * but copy it transparently. - */ -gcry_mpi_t -gcry_mpi_copy( gcry_mpi_t a ) -{ - int i; - gcry_mpi_t b; - - if( a && (a->flags & 4) ) { - void *p = gcry_is_secure(a->d)? gcry_xmalloc_secure( (a->sign+7)/8 ) - : gcry_xmalloc( (a->sign+7)/8 ); - memcpy( p, a->d, (a->sign+7)/8 ); - b = gcry_mpi_set_opaque( NULL, p, a->sign ); - } - else if( a ) { - b = mpi_is_secure(a)? mpi_alloc_secure( a->nlimbs ) - : mpi_alloc( a->nlimbs ); - b->nlimbs = a->nlimbs; - b->sign = a->sign; - b->flags = a->flags; - for(i=0; i < b->nlimbs; i++ ) - b->d[i] = a->d[i]; - } - else - b = NULL; - return b; -} - - -/**************** - * This function allocates an MPI which is optimized to hold - * a value as large as the one given in the argument and allocates it - * with the same flags as A. - */ -gcry_mpi_t -_gcry_mpi_alloc_like( gcry_mpi_t a ) -{ - gcry_mpi_t b; - - if( a && (a->flags & 4) ) { - int n = (a->sign+7)/8; - void *p = gcry_is_secure(a->d)? gcry_malloc_secure( n ) - : gcry_malloc( n ); - memcpy( p, a->d, n ); - b = gcry_mpi_set_opaque( NULL, p, a->sign ); - } - else if( a ) { - b = mpi_is_secure(a)? mpi_alloc_secure( a->nlimbs ) - : mpi_alloc( a->nlimbs ); - b->nlimbs = 0; - b->sign = 0; - b->flags = a->flags; - } - else - b = NULL; - return b; -} - - -gcry_mpi_t -gcry_mpi_set( gcry_mpi_t w, gcry_mpi_t u) -{ - mpi_ptr_t wp, up; - mpi_size_t usize = u->nlimbs; - int usign = u->sign; - - if (!w) - w = _gcry_mpi_alloc( mpi_get_nlimbs(u) ); - RESIZE_IF_NEEDED(w, usize); - wp = w->d; - up = u->d; - MPN_COPY( wp, up, usize ); - w->nlimbs = usize; - w->flags = u->flags; - w->sign = usign; - return w; -} - - -gcry_mpi_t -gcry_mpi_set_ui( gcry_mpi_t w, unsigned long u) -{ - if (!w) - w = _gcry_mpi_alloc (1); - /* FIXME: If U is 0 we have no need to resize and thus possible - allocating the the limbs. */ - RESIZE_IF_NEEDED(w, 1); - w->d[0] = u; - w->nlimbs = u? 1:0; - w->sign = 0; - w->flags = 0; - return w; -} - -gcry_err_code_t -_gcry_mpi_get_ui (gcry_mpi_t w, unsigned long *u) -{ - gcry_err_code_t err = GPG_ERR_NO_ERROR; - unsigned long x = 0; - - if (w->nlimbs > 1) - err = GPG_ERR_TOO_LARGE; - else if (w->nlimbs == 1) - x = w->d[0]; - else - x = 0; - - if (! err) - *u = x; - - return err; -} - -gcry_error_t -gcry_mpi_get_ui (gcry_mpi_t w, unsigned long *u) -{ - gcry_err_code_t err = GPG_ERR_NO_ERROR; - - err = _gcry_mpi_get_ui (w, u); - - return gcry_error (err); -} - -gcry_mpi_t -_gcry_mpi_alloc_set_ui( unsigned long u) -{ - gcry_mpi_t w = mpi_alloc(1); - w->d[0] = u; - w->nlimbs = u? 1:0; - w->sign = 0; - return w; -} - -void -gcry_mpi_swap( gcry_mpi_t a, gcry_mpi_t b) -{ - struct gcry_mpi tmp; - - tmp = *a; *a = *b; *b = tmp; -} - - -gcry_mpi_t -gcry_mpi_new( unsigned int nbits ) -{ - return _gcry_mpi_alloc ( (nbits+BITS_PER_MPI_LIMB-1) - / BITS_PER_MPI_LIMB ); -} - - -gcry_mpi_t -gcry_mpi_snew( unsigned int nbits ) -{ - return _gcry_mpi_alloc_secure ( (nbits+BITS_PER_MPI_LIMB-1) - / BITS_PER_MPI_LIMB ); -} - -void -gcry_mpi_release( gcry_mpi_t a ) -{ - _gcry_mpi_free( a ); -} - - - -void -gcry_mpi_set_flag( gcry_mpi_t a, enum gcry_mpi_flag flag ) -{ - switch( flag ) { - case GCRYMPI_FLAG_SECURE: mpi_set_secure(a); break; - case GCRYMPI_FLAG_OPAQUE: - default: log_bug("invalid flag value\n"); - } -} - -void -gcry_mpi_clear_flag( gcry_mpi_t a, enum gcry_mpi_flag flag ) -{ - (void)a; /* Not yet used. */ - - switch (flag) - { - case GCRYMPI_FLAG_SECURE: - case GCRYMPI_FLAG_OPAQUE: - default: log_bug("invalid flag value\n"); - } -} - -int -gcry_mpi_get_flag( gcry_mpi_t a, enum gcry_mpi_flag flag ) -{ - switch (flag) - { - case GCRYMPI_FLAG_SECURE: return (a->flags & 1); - case GCRYMPI_FLAG_OPAQUE: return (a->flags & 4); - default: log_bug("invalid flag value\n"); - } - /*NOTREACHED*/ - return 0; -} diff --git a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/src/ath.h b/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/src/ath.h deleted file mode 100644 index 8769551be..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/src/ath.h +++ /dev/null @@ -1,147 +0,0 @@ -/* ath.h - Thread-safeness library. - Copyright (C) 2002, 2003, 2004 Free Software Foundation, Inc. - - This file is part of Libgcrypt. - - Libgcrypt is free software; you can redistribute it and/or modify - it under the terms of the GNU Lesser General Public License as - published by the Free Software Foundation; either version 2.1 of - the License, or (at your option) any later version. - - Libgcrypt is distributed in the hope that it will be useful, but - WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with Libgcrypt; if not, write to the Free Software - Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA - 02111-1307, USA. */ - -#ifndef ATH_H -#define ATH_H - -#include - -#ifdef _WIN32 -# include -#else /* !_WIN32 */ -# ifdef HAVE_SYS_SELECT_H -# include -# else -# include -# endif -# include -# ifdef HAVE_SYS_MSG_H -# include /* (e.g. for zOS) */ -# endif -# include -#endif /* !_WIN32 */ -#include - - - -/* Define _ATH_EXT_SYM_PREFIX if you want to give all external symbols - a prefix. */ -#define _ATH_EXT_SYM_PREFIX _gcry_ - -#ifdef _ATH_EXT_SYM_PREFIX -#define _ATH_PREFIX1(x,y) x ## y -#define _ATH_PREFIX2(x,y) _ATH_PREFIX1(x,y) -#define _ATH_PREFIX(x) _ATH_PREFIX2(_ATH_EXT_SYM_PREFIX,x) -#define ath_install _ATH_PREFIX(ath_install) -#define ath_init _ATH_PREFIX(ath_init) -#define ath_mutex_init _ATH_PREFIX(ath_mutex_init) -#define ath_mutex_destroy _ATH_PREFIX(ath_mutex_destroy) -#define ath_mutex_lock _ATH_PREFIX(ath_mutex_lock) -#define ath_mutex_unlock _ATH_PREFIX(ath_mutex_unlock) -#define ath_read _ATH_PREFIX(ath_read) -#define ath_write _ATH_PREFIX(ath_write) -#define ath_select _ATH_PREFIX(ath_select) -#define ath_waitpid _ATH_PREFIX(ath_waitpid) -#define ath_connect _ATH_PREFIX(ath_connect) -#define ath_accept _ATH_PREFIX(ath_accept) -#define ath_sendmsg _ATH_PREFIX(ath_sendmsg) -#define ath_recvmsg _ATH_PREFIX(ath_recvmsg) -#endif - - -enum ath_thread_option - { - ATH_THREAD_OPTION_DEFAULT = 0, - ATH_THREAD_OPTION_USER = 1, - ATH_THREAD_OPTION_PTH = 2, - ATH_THREAD_OPTION_PTHREAD = 3 - }; - -struct ath_ops -{ - /* The OPTION field encodes the thread model and the version number - of this structure. - Bits 7 - 0 are used for the thread model - Bits 15 - 8 are used for the version number. - */ - unsigned int option; - - int (*init) (void); - int (*mutex_init) (void **priv); - int (*mutex_destroy) (void *priv); - int (*mutex_lock) (void *priv); - int (*mutex_unlock) (void *priv); - ssize_t (*read) (int fd, void *buf, size_t nbytes); - ssize_t (*write) (int fd, const void *buf, size_t nbytes); -#ifdef _WIN32 - ssize_t (*select) (int nfd, void *rset, void *wset, void *eset, - struct timeval *timeout); - ssize_t (*waitpid) (pid_t pid, int *status, int options); - int (*accept) (int s, void *addr, int *length_ptr); - int (*connect) (int s, void *addr, int length); - int (*sendmsg) (int s, const void *msg, int flags); - int (*recvmsg) (int s, void *msg, int flags); -#else - ssize_t (*select) (int nfd, fd_set *rset, fd_set *wset, fd_set *eset, - struct timeval *timeout); - ssize_t (*waitpid) (pid_t pid, int *status, int options); - int (*accept) (int s, struct sockaddr *addr, socklen_t *length_ptr); - int (*connect) (int s, struct sockaddr *addr, socklen_t length); - int (*sendmsg) (int s, const struct msghdr *msg, int flags); - int (*recvmsg) (int s, struct msghdr *msg, int flags); -#endif -}; - -gpg_err_code_t ath_install (struct ath_ops *ath_ops, int check_only); -int ath_init (void); - - -/* Functions for mutual exclusion. */ -typedef void *ath_mutex_t; -#define ATH_MUTEX_INITIALIZER 0 - -int ath_mutex_init (ath_mutex_t *mutex); -int ath_mutex_destroy (ath_mutex_t *mutex); -int ath_mutex_lock (ath_mutex_t *mutex); -int ath_mutex_unlock (ath_mutex_t *mutex); - -/* Replacement for the POSIX functions, which can be used to allow - other (user-level) threads to run. */ -ssize_t ath_read (int fd, void *buf, size_t nbytes); -ssize_t ath_write (int fd, const void *buf, size_t nbytes); -#ifdef _WIN32 -ssize_t ath_select (int nfd, void *rset, void *wset, void *eset, - struct timeval *timeout); -ssize_t ath_waitpid (pid_t pid, int *status, int options); -int ath_accept (int s, void *addr, int *length_ptr); -int ath_connect (int s, void *addr, int length); -int ath_sendmsg (int s, const void *msg, int flags); -int ath_recvmsg (int s, void *msg, int flags); -#else -ssize_t ath_select (int nfd, fd_set *rset, fd_set *wset, fd_set *eset, - struct timeval *timeout); -ssize_t ath_waitpid (pid_t pid, int *status, int options); -int ath_accept (int s, struct sockaddr *addr, socklen_t *length_ptr); -int ath_connect (int s, struct sockaddr *addr, socklen_t length); -int ath_sendmsg (int s, const struct msghdr *msg, int flags); -int ath_recvmsg (int s, struct msghdr *msg, int flags); -#endif - -#endif /* ATH_H */ diff --git a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/src/cipher-proto.h b/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/src/cipher-proto.h deleted file mode 100644 index 347681ffe..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/src/cipher-proto.h +++ /dev/null @@ -1,124 +0,0 @@ -/* cipher-proto.h - Internal declarations - * Copyright (C) 2008, 2011 Free Software Foundation, Inc. - * - * This file is part of Libgcrypt. - * - * Libgcrypt is free software; you can redistribute it and/or modify - * it under the terms of the GNU Lesser general Public License as - * published by the Free Software Foundation; either version 2.1 of - * the License, or (at your option) any later version. - * - * Libgcrypt is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this program; if not, see . - */ - -/* This file has been factored out from cipher.h so that it can be - used standalone in visibility.c . */ - -#ifndef G10_CIPHER_PROTO_H -#define G10_CIPHER_PROTO_H - -/* Definition of a function used to report selftest failures. - DOMAIN is a string describing the function block: - "cipher", "digest", "pubkey or "random", - ALGO is the algorithm under test, - WHAT is a string describing what has been tested, - DESC is a string describing the error. */ -typedef void (*selftest_report_func_t)(const char *domain, - int algo, - const char *what, - const char *errdesc); - -/* Definition of the selftest functions. */ -typedef gpg_err_code_t (*selftest_func_t) - (int algo, int extended, selftest_report_func_t report); - - -/* An extended type of the generate function. */ -typedef gcry_err_code_t (*pk_ext_generate_t) - (int algo, - unsigned int nbits, - unsigned long evalue, - gcry_sexp_t genparms, - gcry_mpi_t *skey, - gcry_mpi_t **retfactors, - gcry_sexp_t *extrainfo); - -/* The type used to compute the keygrip. */ -typedef gpg_err_code_t (*pk_comp_keygrip_t) - (gcry_md_hd_t md, gcry_sexp_t keyparm); - -/* The type used to query ECC curve parameters. */ -typedef gcry_err_code_t (*pk_get_param_t) - (const char *name, gcry_mpi_t *pkey); - -/* The type used to query an ECC curve name. */ -typedef const char *(*pk_get_curve_t)(gcry_mpi_t *pkey, int iterator, - unsigned int *r_nbits); - -/* The type used to query ECC curve parameters by name. */ -typedef gcry_sexp_t (*pk_get_curve_param_t)(const char *name); - -/* The type used to convey additional information to a cipher. */ -typedef gpg_err_code_t (*cipher_set_extra_info_t) - (void *c, int what, const void *buffer, size_t buflen); - - -/* Extra module specification structures. These are used for internal - modules which provide more functions than available through the - public algorithm register APIs. */ -typedef struct cipher_extra_spec -{ - selftest_func_t selftest; - cipher_set_extra_info_t set_extra_info; -} cipher_extra_spec_t; - -typedef struct md_extra_spec -{ - selftest_func_t selftest; -} md_extra_spec_t; - -typedef struct pk_extra_spec -{ - selftest_func_t selftest; - pk_ext_generate_t ext_generate; - pk_comp_keygrip_t comp_keygrip; - pk_get_param_t get_param; - pk_get_curve_t get_curve; - pk_get_curve_param_t get_curve_param; -} pk_extra_spec_t; - - - -/* The private register functions. */ -gcry_error_t _gcry_cipher_register (gcry_cipher_spec_t *cipher, - cipher_extra_spec_t *extraspec, - int *algorithm_id, - gcry_module_t *module); -gcry_error_t _gcry_md_register (gcry_md_spec_t *cipher, - md_extra_spec_t *extraspec, - unsigned int *algorithm_id, - gcry_module_t *module); -gcry_error_t _gcry_pk_register (gcry_pk_spec_t *cipher, - pk_extra_spec_t *extraspec, - unsigned int *algorithm_id, - gcry_module_t *module); - -/* The selftest functions. */ -gcry_error_t _gcry_cipher_selftest (int algo, int extended, - selftest_report_func_t report); -gcry_error_t _gcry_md_selftest (int algo, int extended, - selftest_report_func_t report); -gcry_error_t _gcry_pk_selftest (int algo, int extended, - selftest_report_func_t report); -gcry_error_t _gcry_hmac_selftest (int algo, int extended, - selftest_report_func_t report); - -gcry_error_t _gcry_random_selftest (selftest_report_func_t report); - -#endif /*G10_CIPHER_PROTO_H*/ diff --git a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/src/cipher.h b/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/src/cipher.h deleted file mode 100644 index 48eeeda5e..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/src/cipher.h +++ /dev/null @@ -1,182 +0,0 @@ -/* cipher.h - * Copyright (C) 1998, 2002, 2003, 2009 Free Software Foundation, Inc. - * - * This file is part of Libgcrypt. - * - * Libgcrypt is free software; you can redistribute it and/or modify - * it under the terms of the GNU Lesser general Public License as - * published by the Free Software Foundation; either version 2.1 of - * the License, or (at your option) any later version. - * - * Libgcrypt is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA - */ -#ifndef G10_CIPHER_H -#define G10_CIPHER_H - -#include - -#define DBG_CIPHER _gcry_get_debug_flag( 1 ) - -#include "../random/random.h" - -#define PUBKEY_FLAG_NO_BLINDING (1 << 0) - -enum pk_operation - { - PUBKEY_OP_ENCRYPT, - PUBKEY_OP_DECRYPT, - PUBKEY_OP_SIGN, - PUBKEY_OP_VERIFY - }; - -enum pk_encoding - { - PUBKEY_ENC_RAW, - PUBKEY_ENC_PKCS1, - PUBKEY_ENC_OAEP, - PUBKEY_ENC_PSS, - PUBKEY_ENC_UNKNOWN - }; - -struct pk_encoding_ctx -{ - enum pk_operation op; - unsigned int nbits; - - enum pk_encoding encoding; - int flags; - - int hash_algo; - - /* for OAEP */ - unsigned char *label; - size_t labellen; - - /* for PSS */ - size_t saltlen; - - int (* verify_cmp) (void *opaque, gcry_mpi_t tmp); - void *verify_arg; -}; - -#define CIPHER_INFO_NO_WEAK_KEY 1 - -#include "cipher-proto.h" - - -/*-- rmd160.c --*/ -void _gcry_rmd160_hash_buffer (void *outbuf, - const void *buffer, size_t length); -/*-- sha1.c --*/ -void _gcry_sha1_hash_buffer (void *outbuf, - const void *buffer, size_t length); - -/*-- rijndael.c --*/ -void _gcry_aes_cfb_enc (void *context, unsigned char *iv, - void *outbuf, const void *inbuf, - unsigned int nblocks); -void _gcry_aes_cfb_dec (void *context, unsigned char *iv, - void *outbuf_arg, const void *inbuf_arg, - unsigned int nblocks); -void _gcry_aes_cbc_enc (void *context, unsigned char *iv, - void *outbuf_arg, const void *inbuf_arg, - unsigned int nblocks, int cbc_mac); -void _gcry_aes_cbc_dec (void *context, unsigned char *iv, - void *outbuf_arg, const void *inbuf_arg, - unsigned int nblocks); -void _gcry_aes_ctr_enc (void *context, unsigned char *ctr, - void *outbuf_arg, const void *inbuf_arg, - unsigned int nblocks); - - -/*-- dsa.c --*/ -void _gcry_register_pk_dsa_progress (gcry_handler_progress_t cbc, void *cb_data); - -/*-- elgamal.c --*/ -void _gcry_register_pk_elg_progress (gcry_handler_progress_t cb, - void *cb_data); - - -/*-- ecc.c --*/ -void _gcry_register_pk_ecc_progress (gcry_handler_progress_t cbc, - void *cb_data); - - -/*-- primegen.c --*/ -void _gcry_register_primegen_progress (gcry_handler_progress_t cb, - void *cb_data); - -/*-- pubkey.c --*/ -const char * _gcry_pk_aliased_algo_name (int algorithm); - -/* Declarations for the cipher specifications. */ -extern gcry_cipher_spec_t _gcry_cipher_spec_blowfish; -extern gcry_cipher_spec_t _gcry_cipher_spec_des; -extern gcry_cipher_spec_t _gcry_cipher_spec_tripledes; -extern gcry_cipher_spec_t _gcry_cipher_spec_arcfour; -extern gcry_cipher_spec_t _gcry_cipher_spec_cast5; -extern gcry_cipher_spec_t _gcry_cipher_spec_aes; -extern gcry_cipher_spec_t _gcry_cipher_spec_aes192; -extern gcry_cipher_spec_t _gcry_cipher_spec_aes256; -extern gcry_cipher_spec_t _gcry_cipher_spec_twofish; -extern gcry_cipher_spec_t _gcry_cipher_spec_twofish128; -extern gcry_cipher_spec_t _gcry_cipher_spec_serpent128; -extern gcry_cipher_spec_t _gcry_cipher_spec_serpent192; -extern gcry_cipher_spec_t _gcry_cipher_spec_serpent256; -extern gcry_cipher_spec_t _gcry_cipher_spec_rfc2268_40; -extern gcry_cipher_spec_t _gcry_cipher_spec_seed; -extern gcry_cipher_spec_t _gcry_cipher_spec_camellia128; -extern gcry_cipher_spec_t _gcry_cipher_spec_camellia192; -extern gcry_cipher_spec_t _gcry_cipher_spec_camellia256; -extern gcry_cipher_spec_t _gcry_cipher_spec_idea; - -extern cipher_extra_spec_t _gcry_cipher_extraspec_tripledes; -extern cipher_extra_spec_t _gcry_cipher_extraspec_aes; -extern cipher_extra_spec_t _gcry_cipher_extraspec_aes192; -extern cipher_extra_spec_t _gcry_cipher_extraspec_aes256; - - -/* Declarations for the digest specifications. */ -extern gcry_md_spec_t _gcry_digest_spec_crc32; -extern gcry_md_spec_t _gcry_digest_spec_crc32_rfc1510; -extern gcry_md_spec_t _gcry_digest_spec_crc24_rfc2440; -extern gcry_md_spec_t _gcry_digest_spec_md4; -extern gcry_md_spec_t _gcry_digest_spec_md5; -extern gcry_md_spec_t _gcry_digest_spec_rmd160; -extern gcry_md_spec_t _gcry_digest_spec_sha1; -extern gcry_md_spec_t _gcry_digest_spec_sha224; -extern gcry_md_spec_t _gcry_digest_spec_sha256; -extern gcry_md_spec_t _gcry_digest_spec_sha512; -extern gcry_md_spec_t _gcry_digest_spec_sha384; -extern gcry_md_spec_t _gcry_digest_spec_tiger; -extern gcry_md_spec_t _gcry_digest_spec_tiger1; -extern gcry_md_spec_t _gcry_digest_spec_tiger2; -extern gcry_md_spec_t _gcry_digest_spec_whirlpool; - -extern md_extra_spec_t _gcry_digest_extraspec_sha1; -extern md_extra_spec_t _gcry_digest_extraspec_sha224; -extern md_extra_spec_t _gcry_digest_extraspec_sha256; -extern md_extra_spec_t _gcry_digest_extraspec_sha384; -extern md_extra_spec_t _gcry_digest_extraspec_sha512; - -/* Declarations for the pubkey cipher specifications. */ -extern gcry_pk_spec_t _gcry_pubkey_spec_rsa; -extern gcry_pk_spec_t _gcry_pubkey_spec_elg; -extern gcry_pk_spec_t _gcry_pubkey_spec_dsa; -extern gcry_pk_spec_t _gcry_pubkey_spec_ecdsa; -extern gcry_pk_spec_t _gcry_pubkey_spec_ecdh; - -extern pk_extra_spec_t _gcry_pubkey_extraspec_rsa; -extern pk_extra_spec_t _gcry_pubkey_extraspec_dsa; -extern pk_extra_spec_t _gcry_pubkey_extraspec_elg; -extern pk_extra_spec_t _gcry_pubkey_extraspec_ecdsa; - - -#endif /*G10_CIPHER_H*/ diff --git a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/src/g10lib.h b/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/src/g10lib.h deleted file mode 100644 index 85a51beea..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/src/g10lib.h +++ /dev/null @@ -1,302 +0,0 @@ -/* g10lib.h - Internal definitions for libgcrypt - * Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003, 2005 - * 2007, 2011 Free Software Foundation, Inc. - * - * This file is part of Libgcrypt. - * - * Libgcrypt is free software; you can redistribute it and/or modify - * it under the terms of the GNU Lesser general Public License as - * published by the Free Software Foundation; either version 2.1 of - * the License, or (at your option) any later version. - * - * Libgcrypt is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this program; if not, see . - */ - -/* This header is to be used inside of libgcrypt in place of gcrypt.h. - This way we can better distinguish between internal and external - usage of gcrypt.h. */ - -#ifndef G10LIB_H -#define G10LIB_H 1 - -#ifdef _GCRYPT_H -#error gcrypt.h already included -#endif - -#ifndef _GCRYPT_IN_LIBGCRYPT -#error something is wrong with config.h -#endif - -#include -#include - -#include "visibility.h" -#include "types.h" - - - - -/* Attribute handling macros. */ - -#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 5 ) -#define JNLIB_GCC_M_FUNCTION 1 -#define JNLIB_GCC_A_NR __attribute__ ((noreturn)) -#define JNLIB_GCC_A_PRINTF( f, a ) __attribute__ ((format (__printf__,f,a))) -#define JNLIB_GCC_A_NR_PRINTF( f, a ) \ - __attribute__ ((noreturn, format (__printf__,f,a))) -#define GCC_ATTR_NORETURN __attribute__ ((__noreturn__)) -#else -#define JNLIB_GCC_A_NR -#define JNLIB_GCC_A_PRINTF( f, a ) -#define JNLIB_GCC_A_NR_PRINTF( f, a ) -#define GCC_ATTR_NORETURN -#endif - -#if __GNUC__ >= 3 -/* According to glibc this attribute is available since 2.8 however we - better play safe and use it only with gcc 3 or newer. */ -#define GCC_ATTR_FORMAT_ARG(a) __attribute__ ((format_arg (a))) -#else -#define GCC_ATTR_FORMAT_ARG(a) -#endif - - -/* Gettext macros. */ - -/* Some handy macros */ -#ifndef STR -#define STR(v) #v -#endif -#define STR2(v) STR(v) -#define DIM(v) (sizeof(v)/sizeof((v)[0])) -#define DIMof(type,member) DIM(((type *)0)->member) - - - -/*-- src/global.c -*/ -int _gcry_global_is_operational (void); -gcry_error_t _gcry_vcontrol (enum gcry_ctl_cmds cmd, va_list arg_ptr); -void _gcry_check_heap (const void *a); -int _gcry_get_debug_flag (unsigned int mask); - - -/*-- src/misc.c --*/ - -#if defined(JNLIB_GCC_M_FUNCTION) || __STDC_VERSION__ >= 199901L -void _gcry_bug (const char *file, int line, - const char *func) GCC_ATTR_NORETURN; -void _gcry_assert_failed (const char *expr, const char *file, int line, - const char *func) GCC_ATTR_NORETURN; -#else -void _gcry_bug (const char *file, int line); -void _gcry_assert_failed (const char *expr, const char *file, int line); -#endif - -const char *_gcry_gettext (const char *key) GCC_ATTR_FORMAT_ARG(1); -void _gcry_fatal_error(int rc, const char *text ) JNLIB_GCC_A_NR; -void _gcry_log( int level, const char *fmt, ... ) JNLIB_GCC_A_PRINTF(2,3); -void _gcry_log_bug( const char *fmt, ... ) JNLIB_GCC_A_NR_PRINTF(1,2); -void _gcry_log_fatal( const char *fmt, ... ) JNLIB_GCC_A_NR_PRINTF(1,2); -void _gcry_log_error( const char *fmt, ... ) JNLIB_GCC_A_PRINTF(1,2); -void _gcry_log_info( const char *fmt, ... ) JNLIB_GCC_A_PRINTF(1,2); -int _gcry_log_info_with_dummy_fp (FILE *fp, const char *fmt, ... ) - JNLIB_GCC_A_PRINTF(2,3); -void _gcry_log_debug( const char *fmt, ... ) JNLIB_GCC_A_PRINTF(1,2); -void _gcry_log_printf ( const char *fmt, ... ) JNLIB_GCC_A_PRINTF(1,2); -void _gcry_log_printhex (const char *text, const void *buffer, size_t length); - -void _gcry_set_log_verbosity( int level ); -int _gcry_log_verbosity( int level ); - -#ifdef JNLIB_GCC_M_FUNCTION -#define BUG() _gcry_bug( __FILE__ , __LINE__, __FUNCTION__ ) -#define gcry_assert(expr) ((expr)? (void)0 \ - : _gcry_assert_failed (STR(expr), __FILE__, __LINE__, __FUNCTION__)) -#elif __STDC_VERSION__ >= 199901L -#define BUG() _gcry_bug( __FILE__ , __LINE__, __func__ ) -#define gcry_assert(expr) ((expr)? (void)0 \ - : _gcry_assert_failed (STR(expr), __FILE__, __LINE__, __func__)) -#else -#define BUG() _gcry_bug( __FILE__ , __LINE__ ) -#define gcry_assert(expr) ((expr)? (void)0 \ - : _gcry_assert_failed (STR(expr), __FILE__, __LINE__)) -#endif - - -#define log_bug _gcry_log_bug -#define log_fatal _gcry_log_fatal -#define log_error _gcry_log_error -#define log_info _gcry_log_info -#define log_debug _gcry_log_debug -#define log_printf _gcry_log_printf -#define log_printhex _gcry_log_printhex - - -/*-- src/hwfeatures.c --*/ -/* (Do not change these values unless synced with the asm code.) */ -#define HWF_PADLOCK_RNG 1 -#define HWF_PADLOCK_AES 2 -#define HWF_PADLOCK_SHA 4 -#define HWF_PADLOCK_MMUL 8 - -#define HWF_INTEL_AESNI 256 - - -unsigned int _gcry_get_hw_features (void); -void _gcry_detect_hw_features (unsigned int); - - -/*-- mpi/mpiutil.c --*/ -const char *_gcry_mpi_get_hw_config (void); - - -/*-- cipher/pubkey.c --*/ - -/* FIXME: shouldn't this go into mpi.h? */ -#ifndef mpi_powm -#define mpi_powm(w,b,e,m) gcry_mpi_powm( (w), (b), (e), (m) ) -#endif - -/*-- primegen.c --*/ -gcry_mpi_t _gcry_generate_secret_prime (unsigned int nbits, - gcry_random_level_t random_level, - int (*extra_check)(void*, gcry_mpi_t), - void *extra_check_arg); -gcry_mpi_t _gcry_generate_public_prime (unsigned int nbits, - gcry_random_level_t random_level, - int (*extra_check)(void*, gcry_mpi_t), - void *extra_check_arg); -gcry_mpi_t _gcry_generate_elg_prime (int mode, - unsigned int pbits, unsigned int qbits, - gcry_mpi_t g, gcry_mpi_t **factors); -gcry_mpi_t _gcry_derive_x931_prime (const gcry_mpi_t xp, - const gcry_mpi_t xp1, const gcry_mpi_t xp2, - const gcry_mpi_t e, - gcry_mpi_t *r_p1, gcry_mpi_t *r_p2); -gpg_err_code_t _gcry_generate_fips186_2_prime - (unsigned int pbits, unsigned int qbits, - const void *seed, size_t seedlen, - gcry_mpi_t *r_q, gcry_mpi_t *r_p, - int *r_counter, - void **r_seed, size_t *r_seedlen); -gpg_err_code_t _gcry_generate_fips186_3_prime - (unsigned int pbits, unsigned int qbits, - const void *seed, size_t seedlen, - gcry_mpi_t *r_q, gcry_mpi_t *r_p, - int *r_counter, - void **r_seed, size_t *r_seedlen, int *r_hashalgo); - - -/* Replacements of missing functions (missing-string.c). */ -#ifndef HAVE_STPCPY -char *stpcpy (char *a, const char *b); -#endif -#ifndef HAVE_STRCASECMP -int strcasecmp (const char *a, const char *b) _GCRY_GCC_ATTR_PURE; -#endif - - -/* Macros used to rename missing functions. */ -#ifndef HAVE_STRTOUL -#define strtoul(a,b,c) ((unsigned long)strtol((a),(b),(c))) -#endif -#ifndef HAVE_MEMMOVE -#define memmove(d, s, n) bcopy((s), (d), (n)) -#endif -#ifndef HAVE_STRICMP -#define stricmp(a,b) strcasecmp( (a), (b) ) -#endif -#ifndef HAVE_ATEXIT -#define atexit(a) (on_exit((a),0)) -#endif -#ifndef HAVE_RAISE -#define raise(a) kill(getpid(), (a)) -#endif - - -/* Stack burning. */ - -void _gcry_burn_stack (int bytes); - - -/* To avoid that a compiler optimizes certain memset calls away, these - macros may be used instead. */ -#define wipememory2(_ptr,_set,_len) do { \ - volatile char *_vptr=(volatile char *)(_ptr); \ - size_t _vlen=(_len); \ - while(_vlen) { *_vptr=(_set); _vptr++; _vlen--; } \ - } while(0) -#define wipememory(_ptr,_len) wipememory2(_ptr,0,_len) - - - -/* Digit predicates. */ - -#define digitp(p) (*(p) >= '0' && *(p) <= '9') -#define octdigitp(p) (*(p) >= '0' && *(p) <= '7') -#define alphap(a) ( (*(a) >= 'A' && *(a) <= 'Z') \ - || (*(a) >= 'a' && *(a) <= 'z')) -#define hexdigitp(a) (digitp (a) \ - || (*(a) >= 'A' && *(a) <= 'F') \ - || (*(a) >= 'a' && *(a) <= 'f')) - - -/*-- sexp.c --*/ -gcry_error_t _gcry_sexp_vbuild (gcry_sexp_t *retsexp, size_t *erroff, - const char *format, va_list arg_ptr); -char *_gcry_sexp_nth_string (const gcry_sexp_t list, int number); - - -/*-- fips.c --*/ - -void _gcry_initialize_fips_mode (int force); - -int _gcry_fips_mode (void); -#define fips_mode() _gcry_fips_mode () - -int _gcry_enforced_fips_mode (void); - -void _gcry_set_enforced_fips_mode (void); - -void _gcry_inactivate_fips_mode (const char *text); -int _gcry_is_fips_mode_inactive (void); - - -void _gcry_fips_signal_error (const char *srcfile, - int srcline, - const char *srcfunc, - int is_fatal, - const char *description); -#ifdef JNLIB_GCC_M_FUNCTION -# define fips_signal_error(a) \ - _gcry_fips_signal_error (__FILE__, __LINE__, __FUNCTION__, 0, (a)) -# define fips_signal_fatal_error(a) \ - _gcry_fips_signal_error (__FILE__, __LINE__, __FUNCTION__, 1, (a)) -#else -# define fips_signal_error(a) \ - _gcry_fips_signal_error (__FILE__, __LINE__, NULL, 0, (a)) -# define fips_signal_fatal_error(a) \ - _gcry_fips_signal_error (__FILE__, __LINE__, NULL, 1, (a)) -#endif - -int _gcry_fips_is_operational (void); -#define fips_is_operational() (_gcry_global_is_operational ()) -#define fips_not_operational() (GCRY_GPG_ERR_NOT_OPERATIONAL) - -int _gcry_fips_test_operational (void); -int _gcry_fips_test_error_or_operational (void); - -gpg_err_code_t _gcry_fips_run_selftests (int extended); - -void _gcry_fips_noreturn (void); -#define fips_noreturn() (_gcry_fips_noreturn ()) - - - -#endif /* G10LIB_H */ diff --git a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/src/gcrypt-module.h b/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/src/gcrypt-module.h deleted file mode 100644 index e69de29bb..000000000 diff --git a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/src/hmac256.h b/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/src/hmac256.h deleted file mode 100644 index df28e7272..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/src/hmac256.h +++ /dev/null @@ -1,36 +0,0 @@ -/* hmac256.h - Declarations for _gcry_hmac256 - * Copyright (C) 2008 Free Software Foundation, Inc. - * - * This file is part of Libgcrypt. - * - * Libgcrypt is free software; you can redistribute it and/or modify - * it under the terms of the GNU Lesser general Public License as - * published by the Free Software Foundation; either version 2.1 of - * the License, or (at your option) any later version. - * - * Libgcrypt is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this program; if not, see . - */ - -#ifndef HMAC256_H -#define HMAC256_H - - -struct hmac256_context; -typedef struct hmac256_context *hmac256_context_t; - -hmac256_context_t _gcry_hmac256_new (const void *key, size_t keylen); -void _gcry_hmac256_update (hmac256_context_t hd, const void *buf, size_t len); -const void *_gcry_hmac256_finalize (hmac256_context_t hd, size_t *r_dlen); -void _gcry_hmac256_release (hmac256_context_t hd); - -int _gcry_hmac256_file (void *result, size_t resultsize, const char *filename, - const void *key, size_t keylen); - - -#endif /*HMAC256_H*/ diff --git a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/src/mpi.h b/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/src/mpi.h deleted file mode 100644 index 5883196b1..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/src/mpi.h +++ /dev/null @@ -1,266 +0,0 @@ -/* mpi.h - Multi Precision Integers - * Copyright (C) 1994, 1996, 1998, - * 2001, 2002, 2003, 2005 Free Software Foundation, Inc. - * - * This file is part of Libgcrypt. - * - * Libgcrypt is free software; you can redistribute it and/or modify - * it under the terms of the GNU Lesser general Public License as - * published by the Free Software Foundation; either version 2.1 of - * the License, or (at your option) any later version. - * - * Libgcrypt is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA - * - * Note: This code is heavily based on the GNU MP Library. - * Actually it's the same code with only minor changes in the - * way the data is stored; this is to support the abstraction - * of an optional secure memory allocation which may be used - * to avoid revealing of sensitive data due to paging etc. - */ - -#ifndef G10_MPI_H -#define G10_MPI_H - -#include -#include -#include - -#include "types.h" -#include "../mpi/mpi-asm-defs.h" - -#include "g10lib.h" - -#ifndef _GCRYPT_IN_LIBGCRYPT -#error this file should only be used inside libgcrypt -#endif - -#ifndef BITS_PER_MPI_LIMB -#if BYTES_PER_MPI_LIMB == SIZEOF_UNSIGNED_INT - typedef unsigned int mpi_limb_t; - typedef signed int mpi_limb_signed_t; -#elif BYTES_PER_MPI_LIMB == SIZEOF_UNSIGNED_LONG - typedef unsigned long int mpi_limb_t; - typedef signed long int mpi_limb_signed_t; -#elif BYTES_PER_MPI_LIMB == SIZEOF_UNSIGNED_LONG_LONG - typedef unsigned long long int mpi_limb_t; - typedef signed long long int mpi_limb_signed_t; -#elif BYTES_PER_MPI_LIMB == SIZEOF_UNSIGNED_SHORT - typedef unsigned short int mpi_limb_t; - typedef signed short int mpi_limb_signed_t; -#else -#error BYTES_PER_MPI_LIMB does not match any C type -#endif -#define BITS_PER_MPI_LIMB (8*BYTES_PER_MPI_LIMB) -#endif /*BITS_PER_MPI_LIMB*/ - -#define DBG_MPI _gcry_get_debug_flag( 2 ); - -struct gcry_mpi -{ - int alloced; /* Array size (# of allocated limbs). */ - int nlimbs; /* Number of valid limbs. */ - int sign; /* Indicates a negative number and is also used - for opaque MPIs to store the length. */ - unsigned int flags; /* Bit 0: Array to be allocated in secure memory space.*/ - /* Bit 2: the limb is a pointer to some m_alloced data.*/ - mpi_limb_t *d; /* Array with the limbs */ -}; - -#define MPI_NULL NULL - -#define mpi_get_nlimbs(a) ((a)->nlimbs) -#define mpi_is_neg(a) ((a)->sign) - -/*-- mpiutil.c --*/ - -#ifdef M_DEBUG -# define mpi_alloc(n) _gcry_mpi_debug_alloc((n), M_DBGINFO( __LINE__ ) ) -# define mpi_alloc_secure(n) _gcry_mpi_debug_alloc_secure((n), M_DBGINFO( __LINE__ ) ) -# define mpi_free(a) _gcry_mpi_debug_free((a), M_DBGINFO(__LINE__) ) -# define mpi_resize(a,b) _gcry_mpi_debug_resize((a),(b), M_DBGINFO(__LINE__) ) -# define mpi_copy(a) _gcry_mpi_debug_copy((a), M_DBGINFO(__LINE__) ) - gcry_mpi_t _gcry_mpi_debug_alloc( unsigned nlimbs, const char *info ); - gcry_mpi_t _gcry_mpi_debug_alloc_secure( unsigned nlimbs, const char *info ); - void _gcry_mpi_debug_free( gcry_mpi_t a, const char *info ); - void _gcry_mpi_debug_resize( gcry_mpi_t a, unsigned nlimbs, const char *info ); - gcry_mpi_t _gcry_mpi_debug_copy( gcry_mpi_t a, const char *info ); -#else -# define mpi_alloc(n) _gcry_mpi_alloc((n) ) -# define mpi_alloc_secure(n) _gcry_mpi_alloc_secure((n) ) -# define mpi_free(a) _gcry_mpi_free((a) ) -# define mpi_resize(a,b) _gcry_mpi_resize((a),(b)) -# define mpi_copy(a) _gcry_mpi_copy((a)) - gcry_mpi_t _gcry_mpi_alloc( unsigned nlimbs ); - gcry_mpi_t _gcry_mpi_alloc_secure( unsigned nlimbs ); - void _gcry_mpi_free( gcry_mpi_t a ); - void _gcry_mpi_resize( gcry_mpi_t a, unsigned nlimbs ); - gcry_mpi_t _gcry_mpi_copy( gcry_mpi_t a ); -#endif - -#define gcry_mpi_copy _gcry_mpi_copy - -#define mpi_is_opaque(a) ((a) && ((a)->flags&4)) -#define mpi_is_secure(a) ((a) && ((a)->flags&1)) -#define mpi_clear(a) _gcry_mpi_clear ((a)) -#define mpi_alloc_like(a) _gcry_mpi_alloc_like((a)) -#define mpi_set(a,b) gcry_mpi_set ((a),(b)) -#define mpi_set_ui(a,b) gcry_mpi_set_ui ((a),(b)) -#define mpi_get_ui(a,b) _gcry_mpi_get_ui ((a),(b)) -#define mpi_alloc_set_ui(a) _gcry_mpi_alloc_set_ui ((a)) -#define mpi_m_check(a) _gcry_mpi_m_check ((a)) -#define mpi_swap(a,b) _gcry_mpi_swap ((a),(b)) -#define mpi_new(n) _gcry_mpi_new ((n)) -#define mpi_snew(n) _gcry_mpi_snew ((n)) - -void _gcry_mpi_clear( gcry_mpi_t a ); -gcry_mpi_t _gcry_mpi_alloc_like( gcry_mpi_t a ); -gcry_mpi_t _gcry_mpi_alloc_set_ui( unsigned long u); -gcry_err_code_t _gcry_mpi_get_ui (gcry_mpi_t w, ulong *u); -gcry_err_code_t gcry_mpi_get_ui (gcry_mpi_t w, ulong *u); -void _gcry_mpi_m_check( gcry_mpi_t a ); -void _gcry_mpi_swap( gcry_mpi_t a, gcry_mpi_t b); -gcry_mpi_t _gcry_mpi_new (unsigned int nbits); -gcry_mpi_t _gcry_mpi_snew (unsigned int nbits); - -/*-- mpicoder.c --*/ -void _gcry_log_mpidump( const char *text, gcry_mpi_t a ); -u32 _gcry_mpi_get_keyid( gcry_mpi_t a, u32 *keyid ); -byte *_gcry_mpi_get_buffer( gcry_mpi_t a, unsigned *nbytes, int *sign ); -byte *_gcry_mpi_get_secure_buffer( gcry_mpi_t a, unsigned *nbytes, int *sign ); -void _gcry_mpi_set_buffer ( gcry_mpi_t a, const void *buffer, - unsigned int nbytes, int sign ); - -#define log_mpidump _gcry_log_mpidump - -/*-- mpi-add.c --*/ -#define mpi_add_ui(w,u,v) gcry_mpi_add_ui((w),(u),(v)) -#define mpi_add(w,u,v) gcry_mpi_add ((w),(u),(v)) -#define mpi_addm(w,u,v,m) gcry_mpi_addm ((w),(u),(v),(m)) -#define mpi_sub_ui(w,u,v) gcry_mpi_sub_ui ((w),(u),(v)) -#define mpi_sub(w,u,v) gcry_mpi_sub ((w),(u),(v)) -#define mpi_subm(w,u,v,m) gcry_mpi_subm ((w),(u),(v),(m)) - - -/*-- mpi-mul.c --*/ -#define mpi_mul_ui(w,u,v) gcry_mpi_mul_ui ((w),(u),(v)) -#define mpi_mul_2exp(w,u,v) gcry_mpi_mul_2exp ((w),(u),(v)) -#define mpi_mul(w,u,v) gcry_mpi_mul ((w),(u),(v)) -#define mpi_mulm(w,u,v,m) gcry_mpi_mulm ((w),(u),(v),(m)) - - -/*-- mpi-div.c --*/ -#define mpi_fdiv_r_ui(a,b,c) _gcry_mpi_fdiv_r_ui((a),(b),(c)) -#define mpi_fdiv_r(a,b,c) _gcry_mpi_fdiv_r((a),(b),(c)) -#define mpi_fdiv_q(a,b,c) _gcry_mpi_fdiv_q((a),(b),(c)) -#define mpi_fdiv_qr(a,b,c,d) _gcry_mpi_fdiv_qr((a),(b),(c),(d)) -#define mpi_tdiv_r(a,b,c) _gcry_mpi_tdiv_r((a),(b),(c)) -#define mpi_tdiv_qr(a,b,c,d) _gcry_mpi_tdiv_qr((a),(b),(c),(d)) -#define mpi_tdiv_q_2exp(a,b,c) _gcry_mpi_tdiv_q_2exp((a),(b),(c)) -#define mpi_divisible_ui(a,b) _gcry_mpi_divisible_ui((a),(b)) - -ulong _gcry_mpi_fdiv_r_ui( gcry_mpi_t rem, gcry_mpi_t dividend, ulong divisor ); -void _gcry_mpi_fdiv_r( gcry_mpi_t rem, gcry_mpi_t dividend, gcry_mpi_t divisor ); -void _gcry_mpi_fdiv_q( gcry_mpi_t quot, gcry_mpi_t dividend, gcry_mpi_t divisor ); -void _gcry_mpi_fdiv_qr( gcry_mpi_t quot, gcry_mpi_t rem, gcry_mpi_t dividend, gcry_mpi_t divisor ); -void _gcry_mpi_tdiv_r( gcry_mpi_t rem, gcry_mpi_t num, gcry_mpi_t den); -void _gcry_mpi_tdiv_qr( gcry_mpi_t quot, gcry_mpi_t rem, gcry_mpi_t num, gcry_mpi_t den); -void _gcry_mpi_tdiv_q_2exp( gcry_mpi_t w, gcry_mpi_t u, unsigned count ); -int _gcry_mpi_divisible_ui(gcry_mpi_t dividend, ulong divisor ); - - -/*-- mpi-mod.c --*/ -#define mpi_mod(r,a,m) _gcry_mpi_mod ((r), (a), (m)) -#define mpi_barrett_init(m,f) _gcry_mpi_barrett_init ((m),(f)) -#define mpi_barrett_free(c) _gcry_mpi_barrett_free ((c)) -#define mpi_mod_barrett(r,a,c) _gcry_mpi_mod_barrett ((r), (a), (c)) -#define mpi_mul_barrett(r,u,v,c) _gcry_mpi_mul_barrett ((r), (u), (v), (c)) - -void _gcry_mpi_mod (gcry_mpi_t r, gcry_mpi_t dividend, gcry_mpi_t divisor); - -/* Context used with Barrett reduction. */ -struct barrett_ctx_s; -typedef struct barrett_ctx_s *mpi_barrett_t; - -mpi_barrett_t _gcry_mpi_barrett_init (gcry_mpi_t m, int copy); -void _gcry_mpi_barrett_free (mpi_barrett_t ctx); -void _gcry_mpi_mod_barrett (gcry_mpi_t r, gcry_mpi_t x, mpi_barrett_t ctx); -void _gcry_mpi_mul_barrett (gcry_mpi_t w, gcry_mpi_t u, gcry_mpi_t v, - mpi_barrett_t ctx); - - - -/*-- mpi-gcd.c --*/ - -/*-- mpi-mpow.c --*/ -#define mpi_mulpowm(a,b,c,d) _gcry_mpi_mulpowm ((a),(b),(c),(d)) -void _gcry_mpi_mulpowm( gcry_mpi_t res, gcry_mpi_t *basearray, gcry_mpi_t *exparray, gcry_mpi_t mod); - -/*-- mpi-cmp.c --*/ -#define mpi_cmp_ui(a,b) gcry_mpi_cmp_ui ((a),(b)) -#define mpi_cmp(a,b) gcry_mpi_cmp ((a),(b)) -int gcry_mpi_cmp_ui( gcry_mpi_t u, ulong v ); -int gcry_mpi_cmp( gcry_mpi_t u, gcry_mpi_t v ); - -/*-- mpi-scan.c --*/ -#define mpi_trailing_zeros(a) _gcry_mpi_trailing_zeros ((a)) -int _gcry_mpi_getbyte( gcry_mpi_t a, unsigned idx ); -void _gcry_mpi_putbyte( gcry_mpi_t a, unsigned idx, int value ); -unsigned _gcry_mpi_trailing_zeros( gcry_mpi_t a ); - -/*-- mpi-bit.c --*/ -#define mpi_normalize(a) _gcry_mpi_normalize ((a)) -#define mpi_get_nbits(a) gcry_mpi_get_nbits ((a)) -#define mpi_test_bit(a,b) gcry_mpi_test_bit ((a),(b)) -#define mpi_set_bit(a,b) gcry_mpi_set_bit ((a),(b)) -#define mpi_set_highbit(a,b) gcry_mpi_set_highbit ((a),(b)) -#define mpi_clear_bit(a,b) gcry_mpi_clear_bit ((a),(b)) -#define mpi_clear_highbit(a,b) gcry_mpi_clear_highbit ((a),(b)) -#define mpi_rshift(a,b,c) gcry_mpi_rshift ((a),(b),(c)) -#define mpi_lshift(a,b,c) gcry_mpi_lshift ((a),(b),(c)) - -void _gcry_mpi_normalize( gcry_mpi_t a ); - -/*-- mpi-inv.c --*/ -#define mpi_invm(a,b,c) gcry_mpi_invm ((a),(b),(c)) - -/*-- ec.c --*/ - -/* Object to represent a point in projective coordinates. */ -struct mpi_point_s; -typedef struct mpi_point_s mpi_point_t; -struct mpi_point_s -{ - gcry_mpi_t x; - gcry_mpi_t y; - gcry_mpi_t z; -}; - -/* Context used with elliptic curve functions. */ -struct mpi_ec_ctx_s; -typedef struct mpi_ec_ctx_s *mpi_ec_t; - -void _gcry_mpi_ec_point_init (mpi_point_t *p); -void _gcry_mpi_ec_point_free (mpi_point_t *p); -mpi_ec_t _gcry_mpi_ec_init (gcry_mpi_t p, gcry_mpi_t a); -void _gcry_mpi_ec_free (mpi_ec_t ctx); -int _gcry_mpi_ec_get_affine (gcry_mpi_t x, gcry_mpi_t y, mpi_point_t *point, - mpi_ec_t ctx); -void _gcry_mpi_ec_dup_point (mpi_point_t *result, - mpi_point_t *point, mpi_ec_t ctx); -void _gcry_mpi_ec_add_points (mpi_point_t *result, - mpi_point_t *p1, mpi_point_t *p2, - mpi_ec_t ctx); -void _gcry_mpi_ec_mul_point (mpi_point_t *result, - gcry_mpi_t scalar, mpi_point_t *point, - mpi_ec_t ctx); - - - -#endif /*G10_MPI_H*/ diff --git a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/src/secmem.h b/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/src/secmem.h deleted file mode 100644 index 29e151af4..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/src/secmem.h +++ /dev/null @@ -1,39 +0,0 @@ -/* secmem.h - internal definitions for secmem - * Copyright (C) 2000, 2001, 2002, 2003 Free Software Foundation, Inc. - * - * This file is part of Libgcrypt. - * - * Libgcrypt is free software; you can redistribute it and/or modify - * it under the terms of the GNU Lesser general Public License as - * published by the Free Software Foundation; either version 2.1 of - * the License, or (at your option) any later version. - * - * Libgcrypt is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA - */ - -#ifndef G10_SECMEM_H -#define G10_SECMEM_H 1 - -void _gcry_secmem_init (size_t npool); -void _gcry_secmem_term (void); -void *_gcry_secmem_malloc (size_t size) _GCRY_GCC_ATTR_MALLOC; -void *_gcry_secmem_realloc (void *a, size_t newsize); -void _gcry_secmem_free (void *a); -void _gcry_secmem_dump_stats (void); -void _gcry_secmem_set_flags (unsigned flags); -unsigned _gcry_secmem_get_flags(void); -int _gcry_private_is_secure (const void *p); - -/* Flags for _gcry_secmem_{set,get}_flags. */ -#define GCRY_SECMEM_FLAG_NO_WARNING (1 << 0) -#define GCRY_SECMEM_FLAG_SUSPEND_WARNING (1 << 1) -#define GCRY_SECMEM_FLAG_NOT_LOCKED (1 << 2) - -#endif /* G10_SECMEM_H */ diff --git a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/src/stdmem.h b/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/src/stdmem.h deleted file mode 100644 index b476e7e50..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/src/stdmem.h +++ /dev/null @@ -1,32 +0,0 @@ -/* stdmem.h - internal definitions for stdmem - * Copyright (C) 2000, 2002, 2005 Free Software Foundation, Inc. - * - * This file is part of Libgcrypt. - * - * Libgcrypt is free software; you can redistribute it and/or modify - * it under the terms of the GNU Lesser general Public License as - * published by the Free Software Foundation; either version 2.1 of - * the License, or (at your option) any later version. - * - * Libgcrypt is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA - */ - -#ifndef G10_STDMEM_H -#define G10_STDMEM_H 1 - -void _gcry_private_enable_m_guard(void); - -void *_gcry_private_malloc (size_t n) _GCRY_GCC_ATTR_MALLOC; -void *_gcry_private_malloc_secure (size_t n) _GCRY_GCC_ATTR_MALLOC; -void *_gcry_private_realloc (void *a, size_t n); -void _gcry_private_check_heap (const void *a); -void _gcry_private_free (void *a); - -#endif /* G10_STDMEM_H */ diff --git a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/src/types.h b/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/src/types.h deleted file mode 100644 index f2c0abf93..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/src/types.h +++ /dev/null @@ -1,128 +0,0 @@ -/* types.h - some common typedefs - * Copyright (C) 1998, 2000, 2002, 2003 Free Software Foundation, Inc. - * - * This file is part of Libgcrypt. - * - * Libgcrypt is free software; you can redistribute it and/or modify - * it under the terms of the GNU Lesser general Public License as - * published by the Free Software Foundation; either version 2.1 of - * the License, or (at your option) any later version. - * - * Libgcrypt is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA - */ - -#ifndef GCRYPT_TYPES_H -#define GCRYPT_TYPES_H - - -/* The AC_CHECK_SIZEOF() in configure fails for some machines. - * we provide some fallback values here */ -#if !SIZEOF_UNSIGNED_SHORT -#undef SIZEOF_UNSIGNED_SHORT -#define SIZEOF_UNSIGNED_SHORT 2 -#endif -#if !SIZEOF_UNSIGNED_INT -#undef SIZEOF_UNSIGNED_INT -#define SIZEOF_UNSIGNED_INT 4 -#endif -#if !SIZEOF_UNSIGNED_LONG -#undef SIZEOF_UNSIGNED_LONG -#define SIZEOF_UNSIGNED_LONG 4 -#endif - - -#include - - -#ifndef HAVE_BYTE_TYPEDEF -#undef byte /* maybe there is a macro with this name */ -/* Windows typedefs byte in the rpc headers. Avoid warning about - double definition. */ -#if !(defined(_WIN32) && defined(cbNDRContext)) - typedef unsigned char byte; -#endif -#define HAVE_BYTE_TYPEDEF -#endif - -#ifndef HAVE_USHORT_TYPEDEF -#undef ushort /* maybe there is a macro with this name */ - typedef unsigned short ushort; -#define HAVE_USHORT_TYPEDEF -#endif - -#ifndef HAVE_ULONG_TYPEDEF -#undef ulong /* maybe there is a macro with this name */ - typedef unsigned long ulong; -#define HAVE_ULONG_TYPEDEF -#endif - -#ifndef HAVE_U16_TYPEDEF -#undef u16 /* maybe there is a macro with this name */ -#if SIZEOF_UNSIGNED_INT == 2 - typedef unsigned int u16; -#elif SIZEOF_UNSIGNED_SHORT == 2 - typedef unsigned short u16; -#else -#error no typedef for u16 -#endif -#define HAVE_U16_TYPEDEF -#endif - -#ifndef HAVE_U32_TYPEDEF -#undef u32 /* maybe there is a macro with this name */ -#if SIZEOF_UNSIGNED_INT == 4 - typedef unsigned int u32; -#elif SIZEOF_UNSIGNED_LONG == 4 - typedef unsigned long u32; -#else -#error no typedef for u32 -#endif -#define HAVE_U32_TYPEDEF -#endif - -/**************** - * Warning: Some systems segfault when this u64 typedef and - * the dummy code in cipher/md.c is not available. Examples are - * Solaris and IRIX. - */ -#ifndef HAVE_U64_TYPEDEF -#undef u64 /* maybe there is a macro with this name */ -#if SIZEOF_UNSIGNED_INT == 8 - typedef unsigned int u64; -#define U64_C(c) (c ## U) -#define HAVE_U64_TYPEDEF -#elif SIZEOF_UNSIGNED_LONG == 8 - typedef unsigned long u64; -#define U64_C(c) (c ## UL) -#define HAVE_U64_TYPEDEF -#elif SIZEOF_UNSIGNED_LONG_LONG == 8 - typedef unsigned long long u64; -#define U64_C(c) (c ## ULL) -#define HAVE_U64_TYPEDEF -#elif SIZEOF_UINT64_T == 8 - typedef uint64_t u64; -#define U64_C(c) (UINT64_C(c)) -#define HAVE_U64_TYPEDEF -#endif -#endif - -typedef union { - int a; - short b; - char c[1]; - long d; -#ifdef HAVE_U64_TYPEDEF - u64 e; -#endif - - -} PROPERLY_ALIGNED_TYPE; - -#endif /*GCRYPT_TYPES_H*/ diff --git a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/src/visibility.h b/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/src/visibility.h deleted file mode 100644 index d1fb01810..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/libgcrypt-grub/src/visibility.h +++ /dev/null @@ -1 +0,0 @@ -# include diff --git a/thirdparty/grub-2.04/grub-core/lib/libgcrypt/cipher/ChangeLog b/thirdparty/grub-2.04/grub-core/lib/libgcrypt/cipher/ChangeLog deleted file mode 100644 index 1b3694f58..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/libgcrypt/cipher/ChangeLog +++ /dev/null @@ -1,3990 +0,0 @@ -2010-08-19 Werner Koch - - * cipher.c (gcry_cipher_open): Remove double release of the module. - Fixes bug#1263. - -2010-06-10 Jeff Johnson (wk) - - * ecc.c (ecc_generate_ext): Parse transient-key flag. - (generate_key): Add arg TRANSIENT_KEY and use it to set the random - level. - -2010-04-12 Brad Hards (wk) - - Spelling fixes. - -2010-03-26 Werner Koch - - * tiger.c (asn): Unfetter the old TIGER from an OID. - (TIGER_CONTEXT): Add field VARIANT. - (tiger_init): Factor code out to ... - (do_init): New. - (tiger1_init, tiger2_init): New. - (_gcry_digest_spec_tiger1, _gcry_digest_spec_tiger2): New. - * md.c (digest_table): Add TIGER1 and TIGER2 variants. - -2009-12-11 Werner Koch - - * sha256.c (Cho, Maj, Sum0, Sum1): Turn macros into inline - functions. - (transform): Partly unroll to interweave the chain variables - - * sha512.c (ROTR, Ch, Maj, Sum0, Sum1): Turn macros into inline - functions. - (transform): Partly unroll to interweave the chain variables. - Suggested by Christian Grothoff. - -2009-12-10 Werner Koch - - * Makefile.am (o_flag_munging): New. - (tiger.o, tiger.lo): Use it. - - * cipher.c (do_ctr_encrypt): Add arg OUTBUFLEN. Check for - suitable value. Add check for valid inputlen. Wipe temporary - memory. - (do_ctr_decrypt): Likewise. - (do_cbc_encrypt, do_cbc_decrypt): Add arg OUTBUFLEN. Check for - suitable value. Move check for valid inputlen to here; change - returned error from INV_ARG to INV_LENGTH. - (do_ecb_encrypt, do_ecb_decrypt): Ditto. - (do_cfb_encrypt, do_cfb_decrypt): Ditto. - (do_ofb_encrypt, do_ofb_decrypt): Ditto. - (cipher_encrypt, cipher_encrypt): Adjust for above changes. - (gcry_cipher_encrypt, gcry_cipher_decrypt): Simplify. - -2009-12-09 Werner Koch - - * cipher.c (gcry_cipher_open): Allow for GCRY_CIPHER_MODE_AESWRAP. - (cipher_encrypt, cipher_decrypt): Ditto. - (do_aeswrap_encrypt, do_aeswrap_decrypt): New. - (struct gcry_cipher_handle): Add field marks. - (cipher_setkey, cipher_setiv): Update marks flags. - (cipher_reset): Reset marks. - (cipher_encrypt, cipher_decrypt): Add new arg OUTBUFLEN. - (gcry_cipher_encrypt, gcry_cipher_decrypt): Pass outbuflen to - cipher_encrypt. Replace GPG_ERR_TOO_SHORT by - GPG_ERR_BUFFER_TOO_SHORT. - -2009-08-21 Werner Koch - - * dsa.c (dsa_generate_ext): Release retfactors array before - setting it to NULL. Reported by Daiko Ueno. - -2009-07-02 Werner Koch - - * md.c (md_read): Fix incomplete check for NULL. - Reported by Fabian Kail. - -2009-03-31 Werner Koch - - * rsa.c (rsa_check_secret_key): Return GPG_ERR_BAD_SECKEY and not - GPG_ERR_PUBKEY_ALGO. - -2009-02-16 Werner Koch - - * rsa.c (generate_x931): Do not initialize TBL with automatic - variables. - * whirlpool.c, tiger.c, sha256.c, sha1.c, rmd160.c, md5.c - * md4.c, crc.c: Remove memory.h. This is garbage from gnupg. - Reported by Dan Fandrich. - -2009-01-22 Werner Koch - - * ecc.c (compute_keygrip): Remove superfluous const. - -2009-01-06 Werner Koch - - * rmd160.c (oid_spec_rmd160): Add TeleTrust identifier. - -2008-12-10 Werner Koch - - * dsa.c (generate): Add arg DOMAIN and use it if specified. - (generate_fips186): Ditto. - (dsa_generate_ext): Parse and check the optional "domain" - parameter and pass them to the generate functions. - - * rijndael.c (rijndael_names): Add "AES128" and "AES-128". - (rijndael192_names): Add "AES-192". - (rijndael256_names): Add "AES-256". - -2008-12-05 Werner Koch - - * dsa.c (generate): Add arg TRANSIENT_KEY and use it to detrmine - the RNG quality needed. - (dsa_generate_ext): Parse the transient-key flag und pass it to - generate. - -2008-11-28 Werner Koch - - * dsa.c (generate_fips186): Add arg DERIVEPARMS and use the seed - value if available. - - * primegen.c (_gcry_generate_fips186_2_prime): Fix inner p loop. - -2008-11-26 Werner Koch - - * primegen.c (_gcry_generate_fips186_3_prime): New. - * dsa.c (generate_fips186): Add arg USE_FIPS186_2. - (dsa_generate_ext): Parse new flag use-fips183-2. - -2008-11-25 Werner Koch - - * dsa.c (generate_fips186): New. - (dsa_generate_ext): Use new function if derive-parms are given or - if in FIPS mode. - * primegen.c (_gcry_generate_fips186_2_prime): New. - -2008-11-24 Werner Koch - - * pubkey.c (gcry_pk_genkey): Insert code to output extrainfo. - (pubkey_generate): Add arg R_EXTRAINFO and pass it to the extended - key generation function. - * rsa.c (gen_x931_parm_xp, gen_x931_parm_xi): New. - (generate_x931): Generate params if not given. - (rsa_generate_ext): Parse use-x931 flag. Return p-q-swapped - indicator. - * dsa.c (dsa_generate_ext): Put RETFACTORS into R_EXTRAINFO if - possible. - - * pubkey.c (gcry_pk_genkey): Remove parsing of almost all - parameters and pass the parameter S-expression to pubkey_generate. - (pubkey_generate): Simplify by requitring modules to parse the - parameters. Remove the special cases for Elgamal and ECC. - (sexp_elements_extract_ecc): Add arg EXTRASPEC and use it. Fix - small memory leak. - (sexp_to_key): Pass EXTRASPEC to sexp_elements_extract_ecc. - (pubkey_table) [USE_ELGAMAL]: Add real extraspec. - * rsa.c (rsa_generate_ext): Adjust for new calling convention. - * dsa.c (dsa_generate_ext): Ditto. - * elgamal.c (_gcry_elg_generate): Ditto. Rename to elg_generate_ext. - (elg_generate): New. - (_gcry_elg_generate_using_x): Remove after merging code with - elg_generate_ext. - (_gcry_pubkey_extraspec_elg): New. - (_gcry_elg_check_secret_key, _gcry_elg_encrypt, _gcry_elg_sign) - (_gcry_elg_verify, _gcry_elg_get_nbits): Make static and remove - _gcry_ prefix. - * ecc.c (_gcry_ecc_generate): Rename to ecc_generate_ext and - adjust for new calling convention. - (_gcry_ecc_get_param): Rename to ecc_get_param and make static. - (_gcry_pubkey_extraspec_ecdsa): Add ecc_generate_ext and - ecc_get_param. - -2008-11-20 Werner Koch - - * pubkey.c (pubkey_generate): Add arg DERIVEPARMS. - (gcry_pk_genkey): Parse derive-parms and pass it to above. - * rsa.c (generate_x931): New. - (rsa_generate_ext): Add arg DERIVEPARMS and call new function in - fips mode or if DERIVEPARMS is given. - * primegen.c (_gcry_derive_x931_prime, find_x931_prime): New. - -2008-11-19 Werner Koch - - * rsa.c (rsa_decrypt): Use gcry_create_nonce for blinding. - (generate): Rename to generate_std. - -2008-11-05 Werner Koch - - * md.c (md_open): Use a switch to set the Bsize. - (prepare_macpads): Fix long key case for SHA384 and SHA512. - - * cipher.c (gcry_cipher_handle): Add field EXTRASPEC. - (gcry_cipher_open): Set it. - (gcry_cipher_ctl): Add private control code to disable weak key - detection and to return the current input block. - * des.c (_tripledes_ctx): Add field FLAGS. - (do_tripledes_set_extra_info): New. - (_gcry_cipher_extraspec_tripledes): Add new function. - (do_tripledes_setkey): Disable weak key detection. - -2008-10-24 Werner Koch - - * md.c (digest_table): Allow MD5 in fips mode. - (md_register_default): Take special action for MD5. - (md_enable, gcry_md_hash_buffer): Ditto. - -2008-09-30 Werner Koch - - * rijndael.c (do_setkey): Properly align "t" and "tk". - (prepare_decryption): Properly align "w". Fixes bug #936. - -2008-09-18 Werner Koch - - * pubkey.c (gcry_pk_genkey): Parse domain parameter. - (pubkey_generate): Add new arg DOMAIN and remove special case for - DSA with qbits. - * rsa.c (rsa_generate): Add dummy args QBITS, NAME and DOMAIN and - rename to rsa_generate_ext. Change caller. - (_gcry_rsa_generate, _gcry_rsa_check_secret_key) - (_gcry_rsa_encrypt, _gcry_rsa_decrypt, _gcry_rsa_sign) - (_gcry_rsa_verify, _gcry_rsa_get_nbits): Make static and remove - _gcry_ prefix. - (_gcry_pubkey_spec_rsa, _gcry_pubkey_extraspec_rsa): Adjust names. - * dsa.c (dsa_generate_ext): New. - (_gcry_dsa_generate): Replace code by a call to dsa_generate. - (_gcry_dsa_check_secret_key, _gcry_dsa_sign, _gcry_dsa_verify) - (_gcry_dsa_get_nbits): Make static and remove _gcry prefix. - (_gcry_dsa_generate2): Remove. - (_gcry_pubkey_spec_dsa): Adjust to name changes. - (_gcry_pubkey_extraspec_rsa): Add dsa_generate_ext. - -2008-09-16 Werner Koch - - * ecc.c (run_selftests): Add arg EXTENDED. - -2008-09-12 Werner Koch - - * rsa.c (test_keys): Do a bad case signature check. - * dsa.c (test_keys): Do a bad case check. - - * cipher.c (_gcry_cipher_selftest): Add arg EXTENDED and pass it - to the called tests. - * md.c (_gcry_md_selftest): Ditto. - * pubkey.c (_gcry_pk_selftest): Ditto. - * rijndael.c (run_selftests): Add arg EXTENDED and pass it to the - called tests. - (selftest_fips_128): Add arg EXTENDED and run only one test - non-extended mode. - (selftest_fips_192): Add dummy arg EXTENDED. - (selftest_fips_256): Ditto. - * hmac-tests.c (_gcry_hmac_selftest): Ditto. - (run_selftests): Ditto. - (selftests_sha1): Add arg EXTENDED and run only one test - non-extended mode. - (selftests_sha224, selftests_sha256): Ditto. - (selftests_sha384, selftests_sha512): Ditto. - * sha1.c (run_selftests): Add arg EXTENDED and pass it to the - called test. - (selftests_sha1): Add arg EXTENDED and run only one test - non-extended mode. - * sha256.c (run_selftests): Add arg EXTENDED and pass it to the - called tests. - (selftests_sha224): Add arg EXTENDED and run only one test - non-extended mode. - (selftests_sha256): Ditto. - * sha512.c (run_selftests): Add arg EXTENDED and pass it to the - called tests. - (selftests_sha384): Add arg EXTENDED and run only one test - non-extended mode. - (selftests_sha512): Ditto. - * des.c (run_selftests): Add arg EXTENDED and pass it to the - called test. - (selftest_fips): Add dummy arg EXTENDED. - * rsa.c (run_selftests): Add dummy arg EXTENDED. - - * dsa.c (run_selftests): Add dummy arg EXTENDED. - - * rsa.c (extract_a_from_sexp): New. - (selftest_encr_1024): Check that the ciphertext does not match the - plaintext. - (test_keys): Improve tests and return an error status. - (generate): Return an error if test_keys fails. - * dsa.c (test_keys): Add comments and return an error status. - (generate): Return an error if test_keys failed. - -2008-09-11 Werner Koch - - * rsa.c (_gcry_rsa_decrypt): Return an error instead of calling - BUG in case of a practically impossible condition. - (sample_secret_key, sample_public_key): New. - (selftest_sign_1024, selftest_encr_1024): New. - (selftests_rsa): Implement tests. - * dsa.c (sample_secret_key, sample_public_key): New. - (selftest_sign_1024): New. - (selftests_dsa): Implement tests. - -2008-09-09 Werner Koch - - * hmac-tests.c (selftests_sha1): Add tests. - (selftests_sha224, selftests_sha384, selftests_sha512): Make up tests. - - * hash-common.c, hash-common.h: New. - * sha1.c (selftests_sha1): Add 3 tests. - * sha256.c (selftests_sha256, selftests_sha224): Ditto. - * sha512.c (selftests_sha512, selftests_sha384): Ditto. - -2008-08-29 Werner Koch - - * pubkey.c (gcry_pk_get_keygrip): Remove the special case for RSA - and check whether a custom computation function has been setup. - * rsa.c (compute_keygrip): New. - (_gcry_pubkey_extraspec_rsa): Setup this function. - * ecc.c (compute_keygrip): New. - (_gcry_pubkey_extraspec_ecdsa): Setup this function. - -2008-08-28 Werner Koch - - * cipher.c (cipher_decrypt, cipher_encrypt): Return an error if - mode NONE is used. - (gcry_cipher_open): Allow mode NONE only with a debug flag set and - if not in FIPS mode. - -2008-08-26 Werner Koch - - * pubkey.c (pubkey_generate): Add arg KEYGEN_FLAGS. - (gcry_pk_genkey): Implement new parameter "transient-key" and - pass it as flags to pubkey_generate. - (pubkey_generate): Make use of an ext_generate function. - * rsa.c (generate): Add new arg transient_key and pass appropriate - args to the prime generator. - (_gcry_rsa_generate): Factor all code out to ... - (rsa_generate): .. new func with extra arg KEYGEN_FLAGS. - (_gcry_pubkey_extraspec_ecdsa): Setup rsa_generate. - * primegen.c (_gcry_generate_secret_prime) - (_gcry_generate_public_prime): Add new arg RANDOM_LEVEL. - -2008-08-21 Werner Koch - - * primegen.c (_gcry_generate_secret_prime) - (_gcry_generate_public_prime): Use a constant macro for the random - level. - -2008-08-19 Werner Koch - - * pubkey.c (sexp_elements_extract_ecc) [!USE_ECC]: Do not allow - allow "curve" parameter. - -2008-08-15 Werner Koch - - * pubkey.c (_gcry_pk_selftest): New. - * dsa.c (selftests_dsa, run_selftests): New. - * rsa.c (selftests_rsa, run_selftests): New. - * ecc.c (selftests_ecdsa, run_selftests): New. - - * md.c (_gcry_md_selftest): New. - * sha1.c (run_selftests, selftests_sha1): New. - * sha256.c (selftests_sha224, selftests_sha256, run_selftests): New. - * sha512.c (selftests_sha384, selftests_sha512, run_selftests): New. - - * des.c (selftest): Remove static variable form selftest. - (des_setkey): No on-the-fly self test in fips mode. - (tripledes_set3keys): Ditto. - - * cipher.c (_gcry_cipher_setkey, _gcry_cipher_setiv): - - * dsa.c (generate): Bail out in fips mode if NBITS is less than 1024. - * rsa.c (generate): Return an error code if the the requested size - is less than 1024 and we are in fpis mode. - (_gcry_rsa_generate): Take care of that error code. - - * ecc.c (generate_curve): In fips mode enable only NIST curves. - - * cipher.c (_gcry_cipher_selftest): New. - - * sha512.c (_gcry_digest_extraspec_sha384) - (_gcry_digest_extraspec_sha512): New. - * sha256.c (_gcry_digest_extraspec_sha224) - (_gcry_digest_extraspec_sha256): New. - * sha1.c (_gcry_digest_extraspec_sha1): New. - * ecc.c (_gcry_pubkey_extraspec_ecdsa): New. - * dsa.c (_gcry_pubkey_extraspec_dsa): New. - * rsa.c (_gcry_pubkey_extraspec_rsa): New. - * rijndael.c (_gcry_cipher_extraspec_aes) - (_gcry_cipher_extraspec_aes192, _gcry_cipher_extraspec_aes256): New. - * des.c (_gcry_cipher_extraspec_tripledes): New. - - * cipher.c (gcry_cipher_register): Rename to _gcry_cipher_register. - Add arg EXTRASPEC. - (dummy_extra_spec): New. - (cipher_table_entry): Add extraspec field. - * md.c (_gcry_md_register): Rename to _gcry_md_register. Add - arg EXTRASPEC. - (dummy_extra_spec): New. - (digest_table_entry): Add extraspec field. - * pubkey.c (gcry_pk_register): Rename to _gcry_pk_register. Add - arg EXTRASPEC. - (dummy_extra_spec): New. - (pubkey_table_entry): Add extraspec field. - - * ac.c: Let most public functions return GPG_ERR_UNSUPPORTED in - fips mode. - - * pubkey.c (pubkey_table_entry): Add field FIPS_ALLOWED and mark - appropriate algorithms. - (dummy_generate, dummy_check_secret_key, dummy_encrypt) - (dummy_decrypt, dummy_sign, dummy_verify, dummy_get_nbits): Signal - a fips error when used. - (gcry_pk_register): In fips mode do not allow to register new - algorithms. - - * md.c (digest_table): Add field FIPS_ALLOWED and mark appropriate - algorithms. - (md_register_default): In fips mode register only fips algorithms. - (gcry_md_register): In fips mode do not allow to register new - algorithms. - (gcry_md_get): Signal a fips error if called. - (gcry_md_hash_buffer): Do not allow rmd160 when not in fips mode. - (md_start_debug): Disable in fips_mode. - - * md.c (gcry_md_register_default): Rename to .. - (md_register_default): .. this. - (md_digest): Remove this commented fucntion. - * pubkey.c (gcry_pk_register_default): Rename to .. - (pk_register_default): .. this. - - * cipher.c (cipher_table_entry): Add field FIPS_ALLOWED. - (gcry_cipher_register_default): Register only fips approved - algorithms. - (gcry_cipher_register): Do not allow to register new ciphers. - (cipher_setiv): Signal fips error. - - * cipher (gcry_cipher_register_default): Rename to .. - (cipher_register_default): .. this. - (REGISTER_DEFAULT_CIPHERS): Adjust for that change. - -2008-07-05 Werner Koch - - * random-daemon.c, random.h, rndhw.c, rndunix.c, rand-internal.h - * random.c, rndegd.c, rndlinux.c, rndw32.c: Move to ../cipher. - * Makefile.am: Remove random stuff. - -2008-06-24 Szakats Istvan (wk) - - * ac.c (_gcry_ac_key_destroy, _gcry_ac_key_pair_generate): Relase - some more memory. - -2008-04-22 Werner Koch - - * rijndael.c (_gcry_aes_cfb_enc, _gcry_aes_cbc_enc) - (_gcry_aes_cfb_dec, _gcry_aes_cbc_dec): Use Padlock if possible. - -2008-04-18 Werner Koch - - * sha1.c (transform_aligned): Remove. That is will obviosuly not - work because we need a scratch working area and our internal API - does not allow to modify the buffers. - - * rijndael.c: Factor tables out to .. - * rijndael-tables.h: .. new. - - * ac.c (ac_data_extract): Make static. - - * camellia.h [HAVE_CONFIG_H]: Include config.h. - - * rndw32.c (registry_poll): Only print the performance data - problem warning once. Suggested by Simon Josefsson. - -2008-03-19 Werner Koch - - * cipher.c (gcry_cipher_open) [USE_AES]: Init bulk encryption only - if requested. Suggested by Dirk Stoecker. - -2008-03-18 Werner Koch - - * sha1.c: Include stdint.h. - (transform): Add arg NBLOCKS so that we can work on more than one - block and avoid updates of the chaining variables. Changed all - callers to use 1. - (sha1_write): Replace loop around transform. - (transform_aligned) [WORDS_BIGENDIAN]: New. - (TRANSFORM): New macro to replace all direct calls of transform. - -2008-03-17 Werner Koch - - * rijndael.c (_gcry_aes_cfb_dec): New. - (do_encrypt): Factor code out to .. - (do_encrypt_aligned): .. New. - (_gcry_aes_cfb_enc, _gcry_aes_cfb_dec): Use new function. - (do_decrypt): Factor code out to .. - (do_decrypt_aligned): .. new. - (_gcry_aes_cbc_enc, _gcry_aes_cbc_dec): New. - * cipher.c (struct gcry_cipher_handle): Put field IV into new - union U_IV to enforce proper alignment. Change all users. - (do_cfb_decrypt): Optimize. - (do_cbc_encrypt, do_cbc_decrypt): Optimize. - -2008-03-15 Werner Koch - - * rijndael.c (_gcry_aes_cfb_enc): New. - * cipher.c (struct gcry_cipher_handle): Add field ALGO and BULK. - (gcry_cipher_open): Set ALGO and BULK. - (do_cfb_encrypt): Optimize. - -2008-02-18 Werner Koch - - * rsa.c (_gcry_rsa_verify) [IS_DEVELOPMENT_VERSION]: Print - intermediate results. - -2008-01-08 Werner Koch - - * random.c (add_randomness): Do not just increment - POOL_FILLED_COUNTER but update it by the actual amount of data. - -2007-12-13 Werner Koch - - * pubkey.c (sexp_data_to_mpi): Support SHA-224. - -2007-12-05 Werner Koch - - * rijndael.c (USE_PADLOCK): Depend on ENABLE_PADLOCK_SUPPORT. - * rndhw.c (USE_PADLOCK): Ditto - - * rsa.c (secret): Fixed condition test for using CRT. Reported by - Dean Scarff. Fixes bug#864. - (_gcry_rsa_check_secret_key): Return an erro if the optional - parameters are missing. - * pubkey.c (sexp_elements_extract): Add arg ALGO_NAME. Changed all - callers to pass NULL. Add hack to allow for optional RSA - parameters. - (sexp_to_key): Pass algo name to sexp_elements_extract. - -2007-12-03 Werner Koch - - * random.c (gcry_random_add_bytes): Implement it. - * rand-internal.h (RANDOM_ORIGIN_EXTERNAL): New. - -2007-11-30 Werner Koch - - * rndhw.c: New. - * rndlinux.c (_gcry_rndlinux_gather_random): Try to read 50% - directly from the hwrng. - * random.c (do_fast_random_poll): Also run the hw rng fast poll. - (_gcry_random_dump_stats): Tell whether the hw rng failed. - -2007-11-29 Werner Koch - - * rijndael.c (USE_PADLOCK): Define new macro used for ia32. - (RIJNDAEL_context) [USE_PADLOCK]: Add fields USE_PADLOCK and - PADLOCK_KEY. - (do_setkey) [USE_PADLOCK]: Enable padlock if available for 128 bit - AES. - (do_padlock) [USE_PADLOCK]: New. - (rijndael_encrypt, rijndael_decrypt) [USE_PADLOCK]: Divert to - do_padlock. - * cipher.c (cipher_context_alignment_t): New. Use it in this - module in place of PROPERLY_ALIGNED_TYPE. - (NEED_16BYTE_ALIGNED_CONTEXT): Define macro for ia32. - (struct gcry_cipher_handle): Add field HANDLE_OFFSET. - (gcry_cipher_open): Take care of increased alignment requirements. - (gcry_cipher_close): Ditto. - -2007-11-28 Werner Koch - - * sha256.c (asn224): Fixed wrong template. It happened due to a - bug in RFC4880. SHA-224 is not in the stable version of libgcrypt - so the consequences are limited to users of this devel version. - -2007-10-31 Werner Koch - - * ac.c (gcry_ac_data_new): Remove due to the visibility wrapper. - (gcry_ac_data_destroy, gcry_ac_data_copy, gcry_ac_data_length) - (gcry_ac_data_set, gcry_ac_data_get_name, gcry_ac_data_get_index) - (gcry_ac_data_to_sexp, gcry_ac_data_from_sexp) - (gcry_ac_data_clear, gcry_ac_io_init, gcry_ac_open) - (gcry_ac_close, gcry_ac_key_init, gcry_ac_key_pair_generate) - (gcry_ac_key_pair_extract, gcry_ac_key_destroy) - (gcry_ac_key_pair_destroy, gcry_ac_key_data_get) - (gcry_ac_key_test, gcry_ac_key_get_nbits, gcry_ac_key_get_grip) - (gcry_ac_data_encrypt, gcry_ac_data_decrypt, gcry_ac_data_sign) - (gcry_ac_data_verify, gcry_ac_data_encode, gcry_ac_data_decode) - (gcry_ac_mpi_to_os, gcry_ac_mpi_to_os_alloc, gcry_ac_os_to_mpi) - (gcry_ac_data_encrypt_scheme, gcry_ac_data_decrypt_scheme) - (gcry_ac_data_sign_scheme, gcry_ac_data_verify_scheme) - (gcry_ac_io_init_va): Ditto. - (gcry_ac_id_to_name, gcry_ac_name_to_id): Remove as these - deprecated functions are now implemented by visibility.c. - -2007-10-26 Werner Koch - - * rndw32.c: Disable debug flag. - -2007-10-25 Werner Koch - - * rndw32.c: Updated from current cryptlib snapshot and modified - for our use. Removed support from pre NT systems. - (slow_gatherer_windows95): Remove. - (_gcry_rndw32_gather_random): Require an NT platform. - (init_system_rng, read_system_rng, read_mbm_data): New. - (slow_gatherer_windowsNT): Rename to ... - (slow_gatherer): .. this. Read system RNG and MBM. - (registry_poll): New with code factored out from slow_gatherer. - -2007-08-23 Werner Koch - - * random.c (pool_filled_counter): New. - (add_randomness): Use it. - -2007-08-22 Werner Koch - - * rndw32.c, rndunix.c: Switched to LGPL. - -2007-05-30 Werner Koch - - * camellia.h, camellia.c: Replace by new LGPL version and adjusted - camellia.h. - -2007-05-09 Marcus Brinkmann - - * ac.c (_gcry_ac_io_init_va, _gcry_ac_io_write, _gcry_ac_io_read): - Adjust users of gcry_ac_io_t because union is not anonymous - anymore. - -2007-05-02 Werner Koch - - * camellia-glue.c (camellia_setkey, camellia_encrypt) - (camellia_decrypt): Recalculated used stack size in called - functions. - * camellia.h: Redefine external symbols. - -2007-05-02 David Shaw - - * Makefile.am, cipher.c: Add Camellia. - - * camellia-glue.c: New. The necessary glue to interface libgcrypt - to the stock NTT Camellia distribution. - - * camellia.h, camellia.c: The stock NTT Camellia distribution - (GPL). - -2007-04-30 David Shaw - - * cipher.c: Use #if instead of #ifdef as configure defines the - USE_cipher defines as 0 for disabled. - -2007-04-30 Werner Koch - - * rndegd.c (_gcry_rndegd_set_socket_name): New. - -2007-04-30 Marcus Brinkmann - - * ecc.c (ec2os): Fix relocation of short numbers. - - * ecc.c (generate_key): Do not allocate D, which will be allocated - by GEN_K. Remove G. Fix test if g_x, g_y resp. q_x, q_y are - requested. - (_gcry_ecc_generate): Release unneeded members of SK. - * pubkey.c (sexp_to_key): Release NAME. - -2007-04-28 Marcus Brinkmann - - * ac.c (gcry_ac_mpi): Remove member NAME_PROVIDED. - (ac_data_mpi_copy, _gcry_ac_data_set, _gcry_ac_data_get_name) - (_gcry_ac_data_get_index, ac_data_construct): Adjust handling of - NAME accordingly. - -2007-04-20 Werner Koch - - * ecc.c (domain_parms): Add standard brainpool curves. - -2007-04-18 Werner Koch - - * ecc.c (generate_curve): Implement alias mechanism. - - * pubkey.c (sexp_elements_extract_ecc): New. - (sexp_to_key): Add special case for ecc. - (sexp_to_key, sexp_to_sig, sexp_to_enc, gcry_pk_genkey): Replace - name_terminated stuff by a call to _gcry_sexp_nth_string. - (gcry_pk_get_keygrip): Ditto. - -2007-04-16 Werner Koch - - * ecc.c (_gcry_ecc_generate): Renamed DUMMY to CURVE and use it. - -2007-04-13 Marcus Brinkmann - - * ac.c (ac_data_construct): Cast const away to suppress compiler - warning. - - * ecc.c (ecc_generate): Avoid compiler warning for unused argument - DUMMY. - (ecc_verify): Avoid compiler warning for unused arguments CMP and - OPAQUEV. - -2007-04-06 Werner Koch - - * sha1.c (oid_spec_sha1): Add another oid from X9.62. - -2007-03-28 Werner Koch - - * pubkey.c (gcry_pk_genkey): Do not issue misc-key-info if it is - empty. - (gcry_pk_genkey): New parameter "curve". - - * ecc.c: Entirely rewritten with only a few traces of the old - code left. - (_gcry_ecc_generate): New. - (generate_key) New arg NAME. - (generate_curve): Ditto. Return actual number of NBITS. - -2007-03-26 Werner Koch - - * pubkey.c (gcry_pk_genkey): Increase size of SKEY array and add a - runtime bounds check. - -2007-03-23 Werner Koch - - * ecc.c (ecc_ctx_init, ecc_ctx_free, ecc_mod, ecc_mulm): New. - (duplicate_point, sum_points, escalar_mult): Don't use a - copy of base->p. Replaced all mpi_mulm by ecc_mulm so that we can - experiment with different algorithms. - (generate_key, check_secret_key, sign, verify): Initialize a - computation context for use by ecc_mulm. - -2007-03-22 Werner Koch - - * pubkey.c (pubkey_table): Initialize ECC. - * Makefile.am (EXTRA_libcipher_la_SOURCES): Add ecc.c. - * ecc.c: New. Heavily reformatted and changed for use in libgcrypt. - (point_init): New. - (escalar_mult): Make arg R the first arg to be similar to the mpi - functions. - (duplicate_point): Ditto - (sum_points): Ditto - (sign, verify): Remove unneeded copy operations. - (sum_points): Removed memory leaks and optimized some compares. - (verify): Simplified input check. - -2007-03-14 Werner Koch - - * random.c (MASK_LEVEL): Removed macro as it was used only at one - place. Open coded it there. - (gcry_randomize, _gcry_update_random_seed_file) - (_gcry_fast_random_poll): Factor lock code out to .. - (lock_pool, unlock_pool): .. new. - (initialize): Look the pool while allocating. - (read_random_source, do_fast_random_poll): Moved intialization to ... - (initialize): .. here. - (_gcry_enable_quick_random_gen): No more need for initialization. - (is_initialized): Moved this global flag to .. - (initialize): .. here and changed all users to unconditionally call - initialize. - (add_randomness): Remove initalization here. It simply can't - happen. - - * random.c (enum random_origins): Moved to .. - * rand-internal.h: .. here. - * rndunix.c (_gcry_rndunix_gather_random): Use enum in prototype - for ORIGIN and renamed REQUESTOR to ORIGIN. - * rndegd.c (_gcry_rndegd_gather_random): Ditto. - * rndlinux.c (_gcry_rndlinux_gather_random): Ditto. - * rndw32.c (_gcry_rndw32_gather_random): Ditto. - (_gcry_rndw32_gather_random_fast): Ditto. - -2007-03-13 Werner Koch - - * random.c (enum random_origins): New. - (add_randomness): Renamed arg SOURCE to ORIGIN. - (read_random_source): Renamed arg REQUESTOR to ORIGIN. - (getfnc_gather_random): Removed static variable because this - function is only called one and thus we don't need this - optimization. - (_gcry_quick_random_gen): Removed and replaced by.. - (_gcry_enable_quick_random_gen): .. this. It is onlyu used to - enable it and it does not make sense to disable it later. Changed - the only one caller too. - (get_random_bytes): Removed. - (gcry_random_bytes, gcry_random_bytes_secure): Implement in terms - of gcry_randomize. - * random-daemon.c (_gcry_daemon_get_random_bytes): Removed. - -2007-02-23 Werner Koch - - * elgamal.c (generate): Removed unused variable TEMP. - (test_keys): New arg NODIE. - (generate_using_x, _gcry_elg_generate_using_x): New. - * pubkey.c (pubkey_generate): New arg XVALUE and direct call to - the new elgamal generate fucntion. - (gcry_pk_genkey): Parse the new "xvalue" tag. - -2007-02-22 Werner Koch - - * pubkey.c (sexp_data_to_mpi): Handle dynamically allocated - algorithms. Suggested by Neil Dunbar. Fixes bug#596. - - * rndw32.c (_gcry_rndw32_gather_random_fast): Make it return void. - - * cipher.c (gcry_cipher_algo_name): Simplified. - - * random.c: Use the daemon only if compiled with USE_RANDOM_DAEMON. - - * Makefile.am (libcipher_la_SOURCES): Build random-daemon support - only if requested. - -2007-02-21 Werner Koch - - * random.c (rndpool, keypool): Make unsigned. - (mix_pool): Change char* variables to unsigned char*. - (gcry_randomize): Make arg BUFFER a void*. - (gcry_create_nonce): Ditto. - - * rmd160.c (gcry_rmd160_mixblock): Make BUFFER a void*. - (_gcry_rmd160_hash_buffer): Make OUTBUF and BUFFER void*. - * sha1.c (_gcry_sha1_hash_buffer): Ditto. - - * cipher.c (gcry_cipher_encrypt, cry_cipher_decrypt): Change - buffer args to void*. - (gcry_cipher_register): Make ALGORITHM_ID a int *. - - * md.c (md_start_debug): Make SUFFIX a const char*. Use snprintf. - (gcry_md_debug): New. - (gcry_md_ctl): Changed arg BUFFER from unsigned char*. - - * md.c (md_write): Make INBUF a const void*. - (gcry_md_write): Remove needless cast. - * crc.c (crc32_write): Make INBUF a const void* - (update_crc32, crc24rfc2440_write): Ditto. - * sha512.c (sha512_write, transform): Ditto. - * sha256.c (sha256_write, transform): Ditto. - * rmd160.c (rmd160_write, transform): Ditto. - * md5.c (md5_write, transform): Ditto. - * md4.c (md4_write, transform): Ditto. - * sha1.c (sha1_write, transform): Ditto. - - * tiger.c (tiger_write, transform): Ditto. - * whirlpool.c (whirlpool_write, whirlpool_add, transform): Ditto. - - * elgamal.c (elg_names): Change to a const*. - * dsa.c (dsa_names): Ditto. - * rsa.c (rsa_names): Ditto. - * pubkey.c (gcry_pk_lookup_func_name): Make ALIASES a const. - -2007-02-20 Werner Koch - - * rndlinux.c (open_device): Remove unsused arg MINOR. - -2007-01-30 Werner Koch - - * sha256.c (oid_spec_sha256): Add alias from pkcs#1. - * sha512.c (oid_spec_sha512): Ditto. - (oid_spec_sha384): Ditto. - -2006-12-18 Werner Koch - - * rndlinux.c (set_cloexec_flag): New. - (open_device): Set close-on-exit flags. Suggested by Max - Kellermann. Fixes Debian#403613. - - * Makefile.am (AM_CPPFLAGS, AM_CFLAGS): Splitted and merged - Moritz' changes. - (INCLUDES): Removed. - -2006-11-30 Werner Koch - - * serpent.c (byte_swap_32): Remove trailing semicolon. - -2006-11-15 Werner Koch - - * Makefile.am (INCLUDES): Include ../src/ - -2006-11-03 Werner Koch - - * random.c [HAVE_GETTIMEOFDAY]: Included sys/time.h and not - sys/times.h. Reported by Rafaël Carré. - -2006-11-05 Moritz Schulte - - * Makefile.am (AM_CFLAGS): Added -I$(top_builddir)/src so that the - new gcrypt.h is used, not the one installed in the system. - -2006-10-25 Werner Koch - - * primegen.c (prime_generate_internal): Tweaked use of secure - memory and entropy use. Safe unused primes from the pool. Allocate - at least a pool of 30. - (save_pool_prime, get_pool_prime): New. - -2006-10-23 Werner Koch - - * ac.c (_gcry_ac_data_from_sexp): Reset sexp_tmp for failsafe - means. Release sexp_cur if needed. Reported by Dirk Stoecker. - - * pubkey.c (pubkeys_registered_lock): Intialized it. It is not - realy needed because this is a mere initialization to 0 anyway. - Noted by Victor Stinner. - -2006-10-17 Werner Koch - - * dsa.c (_gcry_dsa_generate2): New. - (generate): New arg QBITS. Add sanity checks for reasonable qbits - and nbits. - * pubkey.c (gcry_pk_genkey): Parse an qbits element. - (pubkey_generate): New arg QBITS. Pass it to the DSA generation. - -2006-10-05 Werner Koch - - * md.c (gcry_md_algo_info) : Check that the algo is - available. - -2006-10-04 David Shaw (wk) - - * tiger.c (round): Rename to tiger_round as gcc 4 has a built-in - round function that this conflicts with. - -2006-09-11 Werner Koch - - * rndw32.c (slow_gatherer_windowsNT): While adding data use the - size of the diskPerformance and not its address. Has been fixed in - GnuPG more than a year ago. Noted by Lee Fisher. - -2006-08-30 Werner Koch - - * pubkey.c (sexp_data_to_mpi): Need to allow "ripemd160" here as - this is the canonical name. - -2006-08-29 Hye-Shik Chang (wk) - - * seed.c: New. - -2006-08-03 Werner Koch - - * random-daemon.c (_gcry_daemon_initialize_basics): Don't - initialize the socket. Remove arg SOCKETNAME. - (connect_to_socket): Make sure that daemon is set to -1 on error. - (call_daemon): Initialize the socket on the first call. - (_gcry_daemon_randomize, _gcry_daemon_get_random_bytes) - (_gcry_daemon_create_nonce): New arg SOCKETNAME. - * random.c (initialize): Call new daemon initializator. - (get_random_bytes, gcry_randomize, gcry_create_nonce): Pass socket - name to daemon call and reset allow_daemon on failure. - -2006-07-26 Werner Koch - - * rmd160.c (_gcry_rmd160_mixblock): Add cast to transform call. - - * blowfish.c (selftest): Cast string to usnigned char*. - - * primegen.c (prime_generate_internal): Cast unsigned/char* - mismatch in calling m_out_of_n. - (is_prime): Changed COUNT to unsigned int *. - - * ac.c (_gcry_ac_data_copy): Initialize DATA_MPIS. - - * random.c (gcry_create_nonce): Update the pid after a fork. - Reported by Uoti Urpala. - -2006-07-04 Marcus Brinkmann - - * sha512.c: Fix typo in copyright notice. - -2006-06-21 Werner Koch - - * rsa.c (_gcry_rsa_generate): Replace xcalloc by calloc. - * pubkey.c (gcry_pk_encrypt, gcry_pk_sign): Ditto. - (sexp_to_key, sexp_to_sig, sexp_to_enc, gcry_pk_encrypt) - (gcry_pk_sign, gcry_pk_genkey, gcry_pk_get_keygrip): Ditto. - * md.c (md_copy): Ditto. - -2006-04-22 Moritz Schulte - - * random-daemon.c (_gcry_daemon_initialize_basics): New argument: - SOCKETNAME. Passing on to connect_to_socket() if non-NULL. - (connect_to_socket, writen, readn, call_daemon): New functions. - (_gcry_daemon_randomize, _gcry_daemon_get_random_bytes) - (_gcry_daemon_create_nonce): Call call_daemon(). - (RANDOM_DAEMON_SOCKET): New symbol. - (daemon_socket): New static variable. - - * random.h (_gcry_daemon_initialize_basics): New parameter: - SOCKETNAME. - (_gcry_set_random_daemon_socket): New declaration. - - * random.c (initialize_basics): Pass DAEMON_SOCKET_NAME to - _gcry_daemon_initialize_basics. - (_gcry_set_random_daemon_socket): New function, setting - DAEMON_SOCKET_NAME. - -2006-04-01 Moritz Schulte - - * ac.c (eme_pkcs_v1_5_encode): Use KEY_SIZE directly, no need to - call gcry_ac_key_get_nbits. - (eme_pkcs_v1_5_decode): Likewise. - (ac_es_dencode_prepare_pkcs_v1_5): Fill options_em structure with - key_size. - (_gcry_ac_data_dump, gcry_ac_data_dump): New functions. - (_gcry_ac_data_to_sexp, _gcry_ac_data_from_sexp): More or less - rewritten; changed S-Expression format so that it matches the one - used in pubkey.c. - -2006-03-15 Werner Koch - - * random-daemon.c: New. - * random.c (_gcry_use_random_daemon): New. - (get_random_bytes, gcry_randomize, gcry_create_nonce): Try - diverting to the daemon functions. - -2006-03-14 Werner Koch - - * random.c (lock_seed_file): New. - (read_seed_file, _gcry_update_random_seed_file): Use it. - - * random.c (gcry_create_nonce): Detect a fork and re-seed. - (read_pool): Fixed the fork detection; it used to work only for - multi-threaded processes. - -2006-03-12 Brad Hards (wk) - - * md.c (md_open): Use new variable macpads_Bsize instead of - hardwiring the block size. Changed at all places. - -2006-03-10 Brad Hards (wk, patch 2005-04-22) - - * md.c, sha256.c: Add support for SHA-224. - (sha224_init): New. - -2006-01-18 Brad Hards (wk 2006-03-07) - - * cipher.c (cipher_encrypt, cipher_decrypt, do_ofb_encrypt) - (do_ofb_decrypt, gcry_cipher_open): Implement Output Feedback Mode. - -2005-11-02 Moritz Schulte - - * pubkey.c (gcry_pk_algo_name): Return "?" instead of NULL for - unknown algorithm IDs. - * cipher.c (cipher_algo_to_string): Likewise. - -2005-11-01 Moritz Schulte - - * pubkey.c (gcry_pk_algo_info): Don't forget to break after switch - case. - -2005-09-19 Werner Koch - - * dsa.c (generate): Add preliminary support for 2 and 4 keys. - Return an error code if the key size is not supported. - (_gcry_dsa_generate): Return an error. - -2005-08-22 Werner Koch - - * primegen.c (check_prime): New arg RM_ROUNDS. - (prime_generate_internal): Call it here with 5 rounds as used - before. - (gcry_prime_check): But here with 64 rounds. - (is_prime): Make sure never to use less than 5 rounds. - -2005-04-16 Moritz Schulte - - * ac.c (_gcry_ac_init): New function. - -2005-04-12 Moritz Schulte - - * ac.c (_gcry_ac_io_write, _gcry_ac_io_read): Initialize err to - make the compiler happy. - Always use errno, now that gcry_malloc() is guaranteed to set - errno on failure. - (_gcry_ac_data_to_sexp): Don't forget to goto out after error in - loop. - (_gcry_ac_data_to_sexp): Remove unused variable: mpi_list; - (_gcry_ac_data_to_sexp): Always deallocate sexp_buffer. - (_gcry_ac_data_from_sexp): Don't forget to initialize data_set_new. - (_gcry_ac_data_from_sexp): Handle special case, which is - necessary, since gcry_sexp_nth() does not distinguish between - "element does not exist" and "element is the empty list". - (_gcry_ac_io_init_va): Use assert to make sure that mode and type - are correct. - Use gcry_error_t types where gcry_err_code_t types have been used - before. - -2005-04-11 Moritz Schulte - - * ac.c (_gcry_ac_data_sign_scheme): Don't forget to initialize - buffer. - - * whirlpool.c: New file. - * md.c (digest_table): Add whirlpool. - * Makefile.am (EXTRA_libcipher_la_SOURCES): Added: whirlpool.c. - -2005-03-30 Moritz Schulte - - * ac.c (_gcry_ac_data_from_sexp): Use length of SEXP_CUR, not - length of SEXP; do not forget to set SEXP_TMP to NULL after it has - been released. - - (struct gcry_ac_mpi): New member: name_provided. - (_gcry_ac_data_set): Rename variable `name_final' to `name_cp'; - remove const qualifier; change code to not cast away const - qualifiers; use name_provided member as well. - (_gcry_ac_data_set, _gcry_ac_data_get_name): Use name_provided - member of named mpi structure. - - (gcry_ac_name_to_id): Do not forget to initialize err. - (_gcry_ac_data_get_index): Do not forget to initialize mpi_return; - use gcry_free() instead of free(); remove unnecessary cast; rename - mpi_return and name_return to mpi_cp and name_cp; adjust code. - (ac_data_mpi_copy): Do not cast away const qualifier. - (ac_data_values_destroy): Likewise. - (ac_data_construct): Likewise. - - (ac_data_mpi_copy): Initialize flags to GCRY_AC_FLAG_DEALLOC. - (ac_data_extract): Use GCRY_AC_FLAG_DEALLOC instead of - GCRY_AC_FLAG_COPY. - - (_gcry_ac_io_init_va, _gcry_ac_io_init, gcry_ac_io_init) - (gcry_ac_io_init_va, _gcry_ac_io_write, _gcry_ac_io_read) - (_gcry_ac_io_read_all, _gcry_ac_io_process): New functions. - (gry_ac_em_dencode_t): Use gcry_ac_io_t in prototype instead of - memroy strings directly; adjust encode/decode functions to use io - objects. - (emsa_pkcs_v1_5_encode_data_cb): New function ... - (emsa_pkcs_v1_5_encode): ... use it here. - (ac_data_dencode): Use io objects. - (_gcry_ac_data_encode, _gcry_ac_data_decode, gcry_ac_data_encode) - (gcry_ac_data_decode): Likewise. - (_gcry_ac_data_encrypt_scheme, gcry_ac_data_encrypt_scheme) - (_gcry_ac_data_decrypt_scheme, gcry_ac_data_decrypt_scheme) - (_gcry_ac_data_sign_scheme, gcry_ac_data_sign_scheme) - (_gcry_ac_data_verify_scheme, gcry_ac_data_verify_scheme): - Likewise. - -2005-03-23 Werner Koch - - * rndw32.c (_gcry_rndw32_gather_random_fast): While adding data - use the size of the object and not the one of its address. Bug - reported by Sascha Kiefer. - -2005-03-19 Moritz Schulte - - * cipher.c (do_cbc_encrypt): Be careful to not overwrite data, - which is to be used later on. This happend, in case CTS is - enabled and OUTBUF is equal to INBUF. - -2005-02-25 Werner Koch - - * pubkey.c (gcry_pk_get_keygrip): Allow for shadowed-private-key. - -2005-02-13 Moritz Schulte - - * serpent.c: Updated from 1.2 branch: - - s/u32_t/u32/ and s/byte_t/byte/. Too match what we have always - used and are using in all other files too - (serpent_test): Moved prototype out of a fucntion. - -2005-02-07 Moritz Schulte - - * ac.c: Major parts rewritten. - * pubkey.c (_gcry_pk_get_elements): New function. - -2004-12-09 Werner Koch - - * serpent.c (serpent_setkey): Moved prototype of serpent_test to - outer scope. - -2004-09-11 Moritz Schulte - - * pubkey.c (pubkey_table): Added an alias entry for GCRY_PK_ELG_E. - -2004-08-23 Moritz Schulte - - * ac.c: Do not include . - * rndegd.c: Likewise. - * sha1.c: Likewise. - * rndunix.c: Likewise. - * rndlinux.c: Likewise. - * rmd160.c: Likewise. - * md5.c: Likewise. - * md4.c: Likewise. - * cipher.c: Likewise. - * crc.c: Likewise. - * blowfish.c: Likewise. - - * pubkey.c (dummy_generate, dummy_check_secret_key) - (dummy_encrypt, dummy_decrypt, dummy_sign, dummy_verify): Return - err code GPG_ERR_NOT_IMPLEMENTED instead of aborting through - log_bug(). - (dummy_get_nbits): Return 0 instead of aborting though log_bug(). - -2004-08-19 Werner Koch - - * pubkey.c (sexp_data_to_mpi): Changed the zero random byte - substituting code to actually do clever things. Thanks to - Matthias Urlichs for noting the implementation problem. - -2004-08-09 Moritz Schulte - - * pubkey.c (gcry_pk_sign): Fixed memory leak; fix provided by - Modestas Vainius. - -2004-07-16 Werner Koch - - * rijndael.c (do_encrypt): Fix alignment problem. Bugs found by - Matthias Urlichs. - (do_decrypt): Ditto. - (keySched, keySched2): Use 2 macros along with unions in the key - schedule context. - -2004-07-14 Moritz Schulte - - * rsa.c (_gcry_rsa_decrypt): Don't forget to free "a". Thanks to - Nikos Mavroyanopoulos. - -2004-05-09 Werner Koch - - * random.c (read_pool): Mix the PID in to better protect after a - fork. - -2004-07-04 Moritz Schulte - - * serpent.c: Use "u32_t" instead of "unsigned long", do not - declare S-Box variables as "register". Fixes failure on - OpenBSD/sparc64, reported by Nikolay Sturm. - -2004-05-07 Werner Koch - - * random.c (initialize): Factored out some code to .. - (initialize_basics): .. new function. - (_gcry_random_initialize): Just call initialize_basics unless the - new arg FULL is set to TRUE. - (_gcry_fast_random_poll): Don't do anything unless the random - system has been really initialized. - -2004-05-07 Moritz Schulte - - * ac.c (gcry_ac_open): Do not dereference NULL pointer. Reported - by Umberto Salsi. - -2004-02-20 Werner Koch - - * primegen.c (check_prime): New args CB_FUNC and CB_ARG; call them - at different stages. Pass these arguments through all callers. - -2004-02-06 Werner Koch - - * des.c: Add a new OID as used by pkcs#12. - - * rfc2268.c: New. Taken from libgcrypt. - * cipher.c: Setup the rfc2268 algorithm. - -2004-01-25 Moritz Schulte - - * primegen.c (prime_generate_internal): Do not forget to free - `q_factor'; fixed by Brieuc Jeunhomme. - (prime_generate_internal): Do not forget to free `prime'. - -2004-01-14 Moritz Schulte - - * ac.c (gcry_ac_data_set): New argument: flags; slightly - rewritten. - (gcry_ac_data_get_name, gcry_ac_data_get_index): Likewise. - (gcry_ac_key_pair_generate): New argument: misc_data; modified - order of arguments. - (gcry_ac_key_test): New argument: handle. - (gcry_ac_key_get_nbits, gcry_ac_key_get_grip): Likewise. - Use GCRY_AC_FLAG_NO_BLINDING instead of - GCRY_AC_DATA_FLAG_NO_BLINDING. - (gcry_ac_mpi): New member: flags. - (gcry_ac_data_search, gcry_ac_data_add): Removed functions. - -2003-12-22 Werner Koch - - * primegen.c (is_prime): Release A2. - -2003-12-19 Werner Koch - - * md.c: Moved a couple of functions down below the data structure - definitions. - (struct gcry_md_context): New field ACTUAL_HANDLE_SIZE. - (md_open): Set it here. - (strcut gcry_md_list): New field ACTUAL_STRUCT_SIZE. - (md_enable): Set it here. - (md_close): Wipe the context memory. - secure memory. - * cipher.c (struct gcry_cipher_handle): New field ACTUAL_HANDLE_SIZE. - (gcry_cipher_open): Set it here. - (gcry_cipher_close): Use it to always wipe out the handle data. - - * ac.c (gcry_ac_open): Make sure HANDLE gets initialized even when - the function is not successful. - (gcry_ac_close): Allow a NULL handle. - (gcry_ac_key_destroy, gcry_ac_key_pair_destroy): Ditto. - (gcry_ac_key_get_grip): Return INV_OBJ on error. - - * primegen.c (prime_generate_internal): Fixed error code for - failed malloc. Replaced the !err if chain by gotos. - (gcry_prime_group_generator): Remove the extra sanity check. - - * md.c: Minor code and comment cleanups. - -2003-12-16 Werner Koch - - * primegen.c (gen_prime): Doc fix. Thanks to Newton Hammet. - -2003-12-11 Werner Koch - - * rndunix.c (slow_poll): Don't use #warning but #error. - - * rndegd.c: Changed indentation. - (my_make_filename): Removd the var_arg cruft becuase we - don't need it here. Changed caller. - - * rndlinux.c: Changed indentation. - (open_device): Remove the superfluous stat call and clarify - comment. - - * rsa.c: Changed indentation. - (secret): Use the standard algorithm if p, q and u are not - available. - (rsa_blind, rsa_unblind): Renamed from _gcry_rsa_blind, - _gcry_rsa_unblind and moved more to the top. - - * md4.c: Changed indentation. Removed unnecessary casts. - * md5.c, rmd160.c, sha1.c, tiger.c: Ditto. - * rijndael.c, twofish.c: Ditto. - * serpent.c: Removed unnecessary casts. - * sha256.c, sha512.c: Ditto. - -2003-12-09 Werner Koch - - * dsa.c: Unified indentation style. - * elgamal.c: Ditto. - * des.c (des_key_schedule): Code beautifications. - * blowfish.c: Changed indentation style. - * cast5.c (do_cast_setkey): Ditto. - - * pubkey.c (gcry_pk_encrypt): Replaced the chain of if(!err) tests - by straightforward gotos. Other cleanups. - (gcry_pk_decrypt): Ditto. - (gcry_pk_sign): Ditto. - (gcry_pk_verify): Ditto. - (gcry_pk_genkey): Ditto. Use strtoul instead of strtol. - (gcry_pk_ctl): Use GPG_ERR_INV_ARG to indicate bad arguments. - -2003-12-07 Werner Koch - - * pubkey.c (gcry_pk_register_default): Undef the helper macro. - (gcry_pk_map_name): Allow NULL for string. - (sexp_to_key): Use memcpy and not strncpy. Use gcry_free and not - free. - (sexp_to_sig): Ditto. - (sexp_to_enc): Ditto. Replaced the chain of if(!err) tests by - straightforward gotos. - -2003-12-05 Werner Koch - - * cipher.c: Documentation cleanups. - (gcry_cipher_mode_from_oid): Allow NULL for STRING. - -2003-12-03 Werner Koch - - * elgamal.c (sign, do_encrypt, gen_k): Make sure that a small K is - only used for encryption. - -2003-11-18 Werner Koch - - * random.h (rndw32_set_dll_name): Removed unused prototype. - - * Makefile.am (EXTRA_DIST): Added Manifest. - -2003-11-11 Werner Koch - - * Manifest: New. - -2003-11-04 Werner Koch - - * md.c (gcry_md_hash_buffer): Use shortcut for SHA1 - * sha1.c (_gcry_sha1_hash_buffer): New. - - * random.c: Reformatted most functions. - (mix_pool): Moved the failsafe_digest from global - scope to here. - (do_fast_random_poll): Use the generic fucntions even if a fast - gathering function has been used. - (read_pool): Detect a fork and retry. - (gcry_randomize, get_random_bytes): Don't distinguish anymore - between weak and strong random. - (gcry_create_nonce): New. - -2003-10-31 Werner Koch - - * rndw32.c (slow_gatherer_windowsNT): Use a plain buffer for the - disk performance values and not the W32 API structure. - - * dsa.c (verify): s/exp/ex/ due to shadowing of a builtin. - * elgamal.c (verify): Ditto. - - * ac.c (gcry_ac_data_get_index): s/index/idx/ - (gcry_ac_data_copy_internal): Remove the cast in _gcry_malloc. - (gcry_ac_data_add): Must use gcry_realloc instead of realloc. - * pubkey.c (sexp_elements_extract): s/index/idx/ as tribute to the - forehackers. - (gcry_pk_encrypt): Removed shadowed definition of I. Reordered - arguments to malloc for clarity. - (gcry_pk_sign, gcry_pk_genkey): Ditto. - * primegen.c (prime_generate_internal): s/random/randomlevel/. - -2003-10-27 Moritz Schulte - - * pubkey.c (gcry_pk_encrypt): Don't forget to deallocate pkey. - -2003-10-27 Werner Koch - - * random.c (gcry_random_add_bytes): Return if buflen is zero to - avoid gcc warning about unsed parameter. - (MASK_LEVEL): Simplified; does now work for signed and unsigned - w/o warnings. - - * md.c (md_start_debug): Removed the const from SUFFIX, because - this function is called from the control fucntion which does not - require const. - - Prefixed all (pubkey,digest,cipher}_spec_* globale variables with - _gcry_. - - * ac.c (ac_key_identifiers): Made static. - - * random.c (getfnc_gather_random,getfnc_fast_random_poll): Move - prototypes to .. - * rand-internal.h: .. here - * random.c (getfnc_gather_random): Include rndw32 gatherer. - * rndunix.c, rndw32.c, rndegd.c: Include them here. - * rndlinux.c (_gcry_rndlinux_gather_random): Prepend the _gcry_ - prefix. Changed all callers. - * rndegd.c (_gcry_rndegd_gather_random): Likewise. - (_gcry_rndegd_connect_socket): Likewise. - * rndunix.c (_gcry_rndunix_gather_random): Likewise. - (waitpid): Made static. - * rndw32.c: Removed the old and unused winseed.dll cruft. - (_gcry_rndw32_gather_random_fast): Renamed from - gather_random_fast. - (_gcry_rndw32_gather_random): Renamed from gather_random. Note, - that the changes 2003-04-08 somehow got lost. - - * sha512.c (sha512_init, sha384_init): Made static. - - * cipher.c (do_ctr_decrypt): Removed "return" from this void - function. - -2003-10-24 Moritz Schulte - - * serpent.c: Fix an issue on big-endian systems. - - * rndw32.c: Removed IS_MODULE -cruft. - * rndlinux.c (rndlinux_gather_random): Likewise. - -2003-10-10 Werner Koch - - * primegen.c (gen_prime): Bail out if NBITS is less than 16. - (prime_generate_internal): Initialize prime variable to suppress - compiler warning. Check pbits, initialize qbits when passed as - zero. - - * primegen.c (prime_generate_internal): New arg - ALL_FACTORS. Changed all callers. - (gcry_prime_generate): Make the factors arg optional. Request - all_factors. Make sure PRIME is set to NULL even on error. - (gcry_prime_group_generator): New. - (gcry_prime_release_factors): New. - -2003-10-06 Werner Koch - - * primegen.c (gen_prime): Assert that NBITS is never zero, it - would cause a segv. - -2003-09-28 Moritz Schulte - - * ac.c: Include "cipher.h". - -2003-09-27 Moritz Schulte - - * rndegd.c (do_read): Return nread instead of nbytes; thanks to - Michael Caerwyn. - -2003-09-04 Werner Koch - - * pubkey.c (_gcry_pk_aliased_algo_name): New. - * ac.c (gcry_ac_open): Use it here. - - * Makefile.am (EXTRA_libcipher_la_SOURCES): Add serpent.c - -2003-09-02 Moritz Schulte - - * primegen.c (gcry_prime_check, gcry_prime_generate): New - functions. - (prime_generate_internal): New function, based on - _gcry_generate_elg_prime. - (_gcry_generate_elg_prime): Rewritten as a wrapper for - prime_generate_internal. - -2003-08-28 Werner Koch - - * pubkey.c (gcry_pk_encrypt): Don't include the flags list in the - return value. This does not make sense and breaks any programs - parsing the output strictly (e.g. current gpgsm). - (gcry_pk_encrypt): If aliases for the algorithm name exists, take - the first one instead of the regular name to adhere to SPKI - conventions. - (gcry_pk_genkey): Ditto. - (gcry_pk_sign): Ditto. Removed unused KEY_ALGO_NAME. - -2003-08-19 Moritz Schulte - - * cipher.c: Add support for Serpent - * serpent.c: New file. - -2003-08-10 Moritz Schulte - - * rsa.c (_gcry_rsa_blind, _gcry_rsa_unblind): Declare static. - -2003-08-09 Timo Schulz - - * random.c (getfnc_gather_random): Don't check NAME_OF_DEV_RANDOM - two times, but also the NAME_OF_DEV_URANDOM device. - -2003-08-08 Moritz Schulte - - * pubkey.c (sexp_to_enc): Fixed extraction of S-Expression: do not - fail if no `flags' sub S-Expression is found. - -2003-07-27 Werner Koch - - * md.c (gcry_md_lookup_func_oid): Allow for empty OID lists. - -2003-07-23 Moritz Schulte - - * ac.c (gcry_ac_data_construct): New argument: include_flags, only - include `flags' S-expression, if include_flags is true. Adjust - callers. Thanks for triggering a bug caused by `flags' - sub-S-expression where they are not expected to Ralf Schneider. - -2003-07-21 Moritz Schulte - - * pubkey.c (gcry_pk_lookup_func_name): Use new member name - `aliases' instead of `sexp_names'. - - * ac.c (gcry_ac_key_data_get): New function. - - * cipher.c (gcry_cipher_lookup_func_name): Fix return value. - -2003-07-20 Moritz Schulte - - * blowfish.c: Adjusted for new gcry_cipher_spec_t structure. - * cast5.c: Likewise. - * twofish.c: Likewise. - * arcfour.c: Likewise. - * rijndael.c (rijndael_oids, rijndael192_oids, rijndael256_oids): - New variables, adjust for new gcry_cipher_spec_t structure. - * des.c (oids_tripledes): New variable, adjust for new - gcry_cipher_spec_t structure. - - * md.c (oid_table): Removed. - - * tiger.c (oid_spec_tiger): New variable. - (digest_spec_tiger): Adjusted for new gry_md_spec_t structure. - - * sha512.c (oid_spec_sha512): New variable. - (digest_spec_sha512): Adjusted for new gry_md_spec_t structure. - - * sha512.c (oid_spec_sha384): New variable. - (digest_spec_sha384): Adjusted for new gry_md_spec_t structure. - - * sha256.c (oid_spec_sha256): New variable. - (digest_spec_sha256): Adjusted for new gry_md_spec_t structure. - - * sha1.c (oid_spec_sha1): New variable. - (digest_spec_sha1): Adjusted for new gry_md_spec_t structure. - - * rmd160.c (oid_spec_rmd160): New variable. - (digest_spec_rnd160): Adjusted for new gry_md_spec_t structure. - - * md5.c (oid_spec_md5): New variable. - (digest_spec_md5): Adjusted for new gry_md_spec_t structure. - - * md4.c (oid_spec_md4): New variable. - (digest_spec_md4): Adjusted for new gry_md_spec_t structure. - - * crc.c (digest_spec_crc32, digest_spec_crc32_rfc1510, - digest_spec_crc32_rfc2440): Adjusted for new gry_md_spec_t - structure. - -2003-07-19 Moritz Schulte - - * md.c (gcry_md_lookup_func_oid): New function. - (search_oid): New function, copied from cipher.c. - (gcry_md_map_name): Adjust for new search_oid_interface. - - * cipher.c (oid_table): Removed table. - (gcry_cipher_lookup_func_oid): New function. - (search_oid): Rewritten to use the module functions. - (gcry_cipher_map_name): Adjust for new search_oid interface. - (gcry_cipher_mode_from_oid): Likewise. - -2003-07-18 Werner Koch - - * md.c (gcry_md_hash_buffer): Convert ERR to gpg_error_t in - gpg_strerror. - -2003-07-14 Moritz Schulte - - * cipher.c (gcry_cipher_lookup_func_name): Also check the cipher - name aliases, not just the primary name. - (gcry_cipher_map_name): Remove kludge for aliasing Rijndael to - AES. - - * arcfour.c, blowfish.c, cast5.c, des.c, twofish.c: Adjust cipher - specification structures. - - * rijndael.c (rijndael_names, rijndael192_names, - rijndael256_names): New variables, use them in the cipher - specifications. - - * rmd160test.c: Removed file. - - * ac.c, arcfour.c, blowfish.c, cast5.c, cipher.c, des.c, dsa.c, - elgamal.c, md.c, pubkey.c, random.c, rijndael.c, rsa.c, twofish.c: - Used gcry_err* wrappers for libgpg symbols. - - * primegen.c (gen_prime): Correct the order arguments to - extra_check. - -2003-07-12 Moritz Schulte - - * ac.c: Replaced all public occurences of gpg_error_t with - gcry_error_t. - * cipher.c: Likewise. - * md.c: Likewise. - * pubkey.c: Likewise. - * random.c: Likewise. - - * cipher.c: Added support for TWOFISH128. - -2003-07-08 Moritz Schulte - - * ac.c (gcry_ac_data_copy_internal): New function, based on - gcry_ac_data_copy. - (gcry_ac_data_copy): Made public, use gcry_ac_data_copy_internal. - (gcry_ac_key_init): Use gcry_ac_data_copy_internal. - -2003-07-07 Moritz Schulte - - * ac.c (gcry_ac_data_set): Only release old MPI value if it is - different from the new value. Bug reported by Simon Josefsson - . - - * pubkey.c (gcry_pk_list): New function. - * md.c (gcry_md_list): New function. - - * ac.c (gcry_ac_key_pair_generate): Fix calculation of format - string size. - -2003-07-05 Moritz Schulte - - * md.c: Named struct of digest_table `digest_table_entry'. - (digest_table_entry): New member: algorithm; filled in. - (digest_table_entry): Removed unused member: flags. - (gcry_md_register): New argument: algorithm_id, filled in. - (gcry_md_register_default): Used algorithm ID from module - structure. - (gcry_md_map_name): Likewise. - (md_enable): Likewise. - (md_read): Likewise. - (gcry_md_info): Likewise. - - * pubkey.c: Named truct for pubkey_table `pubkey_table_entry'. - (pubkey_table_entry): New member: algorithm; filled in. - (gcry_pk_register_default): Used algorithm ID from pubkey_table. - (gcry_pk_register): New argument: algorithm_id, filled in. - (gcry_pk_map_name): Used algorithm ID from module structure. - (gcry_pk_decrypt): Likewise. - (gcry_pk_encrypt): Likewise. - (gcry_pk_verify): Likewise. - (gcry_pk_sign): Likewise. - (gcry_pk_testkey): Likewise. - (gcry_pk_genkey): Likewise. - (gcry_pk_get_nbits): Likewise. - (sexp_to_key): Removed unused variable: algo. - (sexp_to_sig): Likewise. - - * cipher.c: Named struct for cipher_table `cipher_table_entry'. - (cipher_table_entry): New member: algorithm; filled in. - (gcry_cipher_register_default): Used algorithm ID from - cipher_table. - (gcry_cipher_register): New argument: algorithm_id, filled in. - (gcry_cipher_map_name): Used algorithm ID from module structure. - - * arcfour.c (cipher_spec_arcfour): Removed algorithm ID. - * blowfish.c (cipher_spec_blowfish): Likewise. - * cast5.c (cipher_spec_cast5): Likewise. - * crc.c (digest_spec_crc32): Likewise. - * crc.c (digest_spec_crc32_rfc1510): Likewise. - * crc.c (digest_spec_crc32_rfc2440): Likewise. - * des.c (cipher_spec_des): Likewise. - * des.c (cipher_spec_tripledes): Likewise. - * dsa.c (pubkey_spec_dsa): Likewise. - * elgamal.c (pubkey_spec_elg): Likewise. - * md4.c (digest_spec_md4): Likewise. - * md5.c (digest_spec_md5): Likewise. - * aes.c (cipher_spec_aes): Likewise. - * aes.c (cipher_spec_aes192): Likewise. - * aes.c (cipher_spec_aes256): Likewise. - * rsa.c (pubkey_spec_rsa): Likewise. - * sha1.c (digest_spec_sha1): Likewise. - * sha256.c (digest_spec_sha256): Likewise. - * sha512.c (digest_spec_sha512): Likewise. - * tiger.c (digest_spec_tiger): Likewise. - * twofish.c (cipher_spec_twofish): Likewise. - * twofish.c (cipher_spec_twofish128): Likewise. - - * Makefile.am (EXTRA_libcipher_la_SOURCES): Fix list of source - files; reported by Simon Josefsson . - - * pubkey.c: Replaced all occurences of `id' with `algorithm', - since `id' is a keyword in obj-c. - * md.c: Likewise. - * cipher.c: Likewise. - - * crc.c, md4.c, md5.c, rmd160.c, sha1.c, sha256.c, tiger.c: - Replaced all occurences of gcry_digest_spec_t with gcry_md_spec_t. - - * dsa.c, rsa.c, elgamal.c: Replaced all occurencens of - gcry_pubkey_spec_t with gcry_pk_spec_t. - - * md.c: Replaced all occurences of gcry_digest_spec_t with - gcry_md_spec_t. - (gcry_digest_register_default): Renamed to ... - (gcry_md_register_default): ... this; adjusted callers. - (gcry_digest_lookup_func_name): Renamed to ... - (gcry_md_lookup_func_name): ... this; adjusted callers. - (gcry_digest_lookup_name): Renamed to ... - (gcry_md_lookup_name): ... this; adjusted callers. - (gcry_digest_register): Renamed to ... - (gcry_md_register): ... this. - (gcry_digest_unregister): Renamed to ... - (gcry_md_unregister): ... this. - - * pubkey.c (gcry_pubkey_register): Renamed to ... - (gcry_pk_register): ... this. - (gcry_pubkey_unregister): Renamed to ... - (gcry_pk_unregister): ... this. - Replaced all occurences of gcry_pubkey_spec_t with gcry_pk_spec_t. - (gcry_pubkey_register_default): Renamed to ... - (gcry_pk_register_default): ... this; adjusted callers. - (gcry_pubkey_lookup_func_name): Renamed to ... - (gcry_pk_lookup_func_name): ... this; adjusted callers. - (gcry_pubkey_lookup_name): Renamed to ... - (gcry_pk_lookup_name): ... this; adjusted callers. - - * md.c (gcry_md_hash_buffer): Fix error checking. Thanks to Simon - Josefsson . - -2003-07-04 Moritz Schulte - - * cipher.c (gcry_cipher_list): New function. - -2003-07-01 Moritz Schulte - - * pubkey.c (sexp_to_sig): Accept a `flags' S-expression to be more - consistent with sexp_to_enc. - -2003-06-30 Moritz Schulte - - * Makefile.am (libcipher_la_SOURCES): Added: ac.c. - - * pubkey.c (_gcry_pk_module_lookup): New function. - (_gcry_pk_module_release): New function. - -2003-06-29 Moritz Schulte - - * ac.c: New file. - -2003-06-26 Werner Koch - - * md.c (gcry_md_hash_buffer): Trigger BUG correcly with new API. - -2003-06-19 Werner Koch - - * md.c (gcry_md_is_enabled): Fixed. - -2003-06-18 Werner Koch - - * cipher.c (gcry_cipher_get_algo_keylen): New. - (gcry_cipher_get_algo_blklen): New. - -2003-06-18 Moritz Schulte - - * arcfour.c, cipher.c, blowfish.c, md.c, cast5.c, pubkey.c, crc.c, - des.c, dsa.c, elgamal.c, md4.c, md5.c, random.c, rijndael.c, - rmd160.c, rsa.c, sha1.c, sha256.c, sha512.c, tiger.c, twofish.c: - Replaced older types GcryDigestSpec, GcryCipherSpec and - GcryPubkeySpec with newer types: gcry_digest_spec_t, - gcry_cipher_spec_t and gcry_pubkey_spec_t. - - * md.c (gcry_digest_id_new): Removed function. - (gcry_digest_register): Removed code for generating a new module - ID. - - * pubkey.c (gcry_pubkey_id_new): Removed function. - (gcry_pubkey_register): Removed code for generating a new module - ID. - - * cipher.c, md.c, pubkey.c: Replace old type GcryModule with newer - one: gcry_module_t. - (gcry_cipher_id_new): Removed function. - (gcry_cipher_register): Removed code for generating a new module - ID. - - * cipher.c (gcry_cipher_register): Adjust call to - _gcry_module_add. - (gcry_cipher_register_default): Likewise. - * pubkey.c (gcry_pubkey_register_default): Likewise. - (gcry_pubkey_register): Likewise. - * md.c (gcry_digest_register_default): Likewise. - (gcry_digest_register): Likewise. - - * md.c (gcry_digest_lookup_func_id): Removed function. - (gcry_digest_lookup_id): Likewise. - (gcry_digest_id_new): Use _gcry_module_lookup_id instead of - gcry_digest_lookup_id. - (digest_algo_to_string): Likewise. - (check_digest_algo): Likewise. - (md_enable): Likewise. - (md_digest_length): Likewise. - (md_asn_oid): Likewise. - - * pubkey.c (gcry_pubkey_lookup_id): Removed function. - (gcry_pubkey_lookup_func_id): Likewise. - (gcry_pubkey_id_new): Use _gcry_module_lookup_id instead of - gcry_pubkey_id_new. - (gcry_pk_algo_name): Likewise. - (disable_pubkey_algo): Likewise. - (check_pubkey_algo): Likewise. - (pubkey_get_npkey): Likewise. - (pubkey_get_nskey): Likewise. - (pubkey_get_nsig): Likewise. - (pubkey_get_nenc): Likewise. - (pubkey_generate): Likewise. - (pubkey_check_secret_key): Likewise. - (pubkey_encrypt): Likewise. - (pubkey_decrypt): Likewise. - (pubkey_sign): Likewise. - (pubkey_verify): Likewise. - (gcry_pk_algo_info): Likewise. - - * cipher.c (gcry_cipher_lookup_func_id): Removed function. - (gcry_cipher_lookup_id): Likewise. - (cipher_algo_to_string): use _gcry_module_lookup_id instead of - gcry_cipher_lookup_id. - (disable_cipher_algo): Likewise. - (check_cipher_algo): Likewise. - (cipher_get_blocksize): Likewise. - (gcry_cipher_open): Likewise. - (gcry_cipher_id_new): Likewise. - -2003-06-17 Moritz Schulte - - * Makefile.am (GCRYPT_MODULES): Set to @GCRYPT_CIPHERS@, - @GCRYPT_PUBKEY_CIPHERS@, @GCRYPT_DIGESTS@ and @GCRYPT_RANDOM@. - (libcipher_la_DEPENDENCIES): Set to $(GCRYPT_MODULES). - (libcipher_la_LIBADD): Likewise. - (AM_CFLAGS): Added: @GPG_ERROR_CFLAGS@. - (EXTRA_libcipher_la_SOURCES): Added all conditional sources. - - * md.c (md_open): Use _gcry_fast_random_poll instead of - fast_random_poll. - * cipher.c (gcry_cipher_open): Likewise. - - * random.h (fast_random_poll): Removed macro. - - * blowfish.c, md4.c, md5.c, rmd160.c, sha1.c, sha256.c, sha512.c, - tiger.c: Use Autoconf's WORDS_BIGENDIAN instead of our own - BIG_ENDIAN_HOST. - -2003-06-16 Moritz Schulte - - * random.c (getfnc_gather_random): Do not special-case - USE_ALL_RANDOM_MODULES, make it the default. - - * dsa.c: Replace last occurences of old type names with newer - names (i.e. replace MPI with gcry_mpi_t). - * elgamal.c: Likewise. - * primegen.c: Likewise. - * pubkey.c: Likewise. - * rsa.c: Likewise. - -2003-06-14 Moritz Schulte - - * des.c (des_setkey): Add selftest check. - (tripledes_set3keys): Likewise. - (do_tripledes_setkey): Remove selftest check. - (do_des_setkey): Likewise. - -2003-06-11 Moritz Schulte - - * md.c (_gcry_md_init): New function. - * cipher.c (_gcry_cipher_init): New function. - * pubkey.c (_gcry_pk_init): New function. - -2003-06-13 Werner Koch - - * md.c (gcry_md_get_algo): Reverted to old API. This is a - convenience function anyway and error checking is not approriate. - (gcry_md_is_secure): New. - (gcry_md_is_enabled): New. - -2003-06-12 Werner Koch - - * cipher.c (gcry_cipher_open): Make sure HANDLE is set to NULL on - error. - -2003-06-11 Werner Koch - - * md.c (gcry_md_open): Make sure H receives either NULL or an - valid handle. - (gcry_md_copy): Swapped arguments so that it is more in lione with - md_open and most other API fucntions like memcpy (destination - comes first). Make sure HANDLE is set to NULL on error. - - * rijndael.c (do_encrypt): Hack to force correct alignment. It - seems not to be not sufficient, though. We should rework this - fucntions and remove all these ugly casts. Let the compiler - optimize or have an assembler implementation. - -2003-06-09 Moritz Schulte - - * Makefile.am: Removed rules serpent, since that is not commited - yet. - -2003-06-08 Moritz Schulte - - * pubkey.c (gcry_pk_encrypt): Improve calculation for size of the - format string. - -2003-06-07 Moritz Schulte - - * arcfour.c, bithelp.h, blowfish.c, cast5.c, cipher.c, crc.c, - des.c, dsa.c, elgamal.c, md4.c, md5.c, md.c, primegen.c, pubkey.c, - rand-internal.h, random.c, random.h, rijndael.c, rmd160.c, - rmd160test.c, rmd.h, rndeged.c, rndlinux.c, rndunix.c, rndw32.c, - rsa.c, sha1.c, sha256.c, sha512.c, tiger.c, twofish.c: Edited all - preprocessor instructions to remove whitespace before the '#'. - This is not required by C89, but there are some compilers out - there that don't like it. Replaced any occurence of the now - deprecated type names with the new ones. - -2003-06-04 Moritz Schulte - - * pubkey.c (gcry_pk_encrypt): Construct an arg_list and use - gcry_sexp_build_array instead of gcry_sexp_build. - (gcry_pk_sign): Likewise. - (gcry_pk_genkey): Likewise. - -2003-06-01 Moritz Schulte - - * dsa.c (_gcry_dsa_generate): Do not check wether the algorithm ID - does indeed belong to DSA. - (_gcry_dsa_sign): Likewise. - (_gcry_dsa_verify): Likewise. - (_gcry_dsa_get_nbits): Likewise. - - * elgamal.c (_gcry_elg_check_secret_key): Do not check wether the - algorithm ID does indeed belong to ElGamal. - (_gcry_elg_encrypt): Likewise. - (_gcry_elg_decrypt): Likewise. - (_gcry_elg_sign): Likewise. - (_gcry_elg_verify): Likewise. - (_gcry_elg_get_nbits): Likewise. - (_gcry_elg_generate): Likewise. - - * rsa.c (_gcry_rsa_generate): Do not check wether the algorithm ID - does indeed belong to RSA. - (_gcry_rsa_encrypt): Likewise. - (_gcry_rsa_decrypt): Likewise. - (_gcry_rsa_sign): Likewise. - (_gcry_rsa_verify): Likewise. - (_gcry_rsa_get_nbits): Likewise. - -2003-05-30 Moritz Schulte - - * md.c (md_get_algo): Return zero in case to algorithm is enabled. - - * md.c (gcry_md_info): Adjusted for new no-errno-API. - (md_final): Likewise. - (gcry_md_get_algo): Likewise. - * pubkey.c (gcry_pk_get_keygrip): Likewise. - (gcry_pk_ctl): Likewise. - (gcry_pk_algo_info): Likewise. - * des.c (selftest): Likewise. - -2003-05-29 Moritz Schulte - - * md.c (md_enable): Do not forget to release module on error. - (gcry_md_open): Adjusted for new no-errno-API. - (md_open): Likewise. - (md_copy): Likewise. - (gcry_md_copy): Likewise. - (gcry_md_setkey): Likewise. - (gcry_md_algo_info): Likewise. - - * cipher.c (gcry_cipher_open): Adjusted for new no-errno-API and - also fixed a locking bug. - (gcry_cipher_encrypt): Adjusted for new no-errno-API. - (gcry_cipher_decrypt): Likewise. - (gcry_cipher_ctl): Likewise. - (gcry_cipher_info): Likewise. - (gcry_cipher_algo_info): Likewise. - -2003-05-28 Moritz Schulte - - * md.c (md_enable): Adjusted for libgpg-error. - (gcry_md_enable): Likewise. - (gcry_digest_register_default): Likewise. - (gcry_digest_register): Likewise. - (check_digest_algo): Likewise. - (prepare_macpads): Likewise. - (gcry_md_setkey): Likewise. - (gcry_md_ctl): Likewise. - (gcry_md_get): Likewise. - (gcry_md_algo_info): Likewise. - (gcry_md_info): Likewise. - * dsa.c (_gcry_dsa_generate): Likewise. - (_gcry_dsa_check_secret_key): Likewise. - (_gcry_dsa_sign): Likewie. - (_gcry_dsa_verify): Likewise. - * twofish.c (do_twofish_setkey): Likewise. - (twofish_setkey): Likewise. - * cipher.c (gcry_cipher_register): Likewise. - -2003-05-25 Moritz Schulte - - * rijndael.c (do_setkey): Adjusted for libgpg-error. - (rijndael_setkey): Likewise. - * random.c (gcry_random_add_bytes): Likewise. - * elgamal.c (_gcry_elg_generate): Likewise. - (_gcry_elg_check_secret_key): Likewise. - (_gcry_elg_encrypt): Likewise. - (_gcry_elg_decrypt): Likewise. - (_gcry_elg_sign): Likewise. - (_gcry_elg_verify): Likewise. - * rsa.c (_gcry_rsa_generate): Likewise. - (_gcry_rsa_check_secret_key): Likewise. - (_gcry_rsa_encrypt): Likewise. - (_gcry_rsa_decrypt): Likewise. - (_gcry_rsa_sign): Likewise. - (_gcry_rsa_verify): Likewise. - * pubkey.c (dummy_generate, dummy_check_secret_key, dummy_encrypt, - dummy_decrypt, dummy_sign, dummy_verify): Likewise. - (gcry_pubkey_register): Likewise. - (check_pubkey_algo): Likewise. - (pubkey_generate): Likewise. - (pubkey_check_secret_key): Likewise. - (pubkey_encrypt): Likewise. - (pubkey_decrypt): Likewise. - (pubkey_sign): Likewise. - (pubkey_verify): Likewise. - (sexp_elements_extract): Likewise. - (sexp_to_key): Likewise. - (sexp_to_sig): Likewise. - (sexp_to_enc): Likewise. - (sexp_data_to_mpi): Likewise. - (gcry_pk_encrypt): Likewise. - (gcry_pk_decrypt): Likewise. - (gcry_pk_sign): Likewise. - (gcry_pk_verify): Likewise. - (gcry_pk_testkey): Likewise. - (gcry_pk_genkey): Likewise. - (gcry_pk_ctl): Likewise. - * cipher.c (dummy_setkey): Likewise. - (check_cipher_algo): Likewise. - (gcry_cipher_open): Likewise. - (cipher_setkey): Likewise. - (gcry_cipher_ctl): Likewise. - (cipher_encrypt): Likewise. - (gcry_cipher_encrypt): Likewise. - (cipher_decrypt): Likewise. - (gcry_cipher_decrypt): Likewise. - (gcry_cipher_info): Likewise. - (gcry_cipher_algo_info): Likewise. - * cast5.c (cast_setkey): Likewise. - (do_cast_setkey): Likewise. - * arcfour.c (arcfour_setkey): Likewise. - (do_arcfour_setkey): Likewise. - * blowfish.c (do_bf_setkey): Likewise. - (bf_setkey): Likewise. - * des.c (do_des_setkey): Likewise. - (do_tripledes_setkey): Likewise. - -2003-05-22 Moritz Schulte - - * tiger.c: Merged code ussing the U64_C macro from GnuPG. - - * sha512.c: Likewise. - -2003-05-17 Moritz Schulte - - * pubkey.c (gcry_pk_genkey): Fix type: acquire a lock, instead of - releasing it. - -2003-05-11 Moritz Schulte - - * pubkey.c (gcry_pk_testkey): Call REGISTER_DEFAULT_CIPHERS. - (gcry_pk_ctl): Likewise. - -2003-04-27 Moritz Schulte - - * pubkey.c (gcry_pk_genkey): Release sexp after extracted data has - been used. - - * md.c (gcry_md_get_algo_dlen): Simplified, simply call - md_digest_length to do the job. - - * des.c (do_des_setkey): Check for selftest failure not only - during initialization. - (do_tripledes_setkey): Include check for selftest failure. - - * pubkey.c (gcry_pubkey_register_default): New macro - `pubkey_use_dummy', use it. - - * elgamal.c (elg_names): New variable. - (pubkey_spec_elg): Include elg_names. - - * dsa.c (dsa_names): New variable. - (pubkey_spec_dsa): Include dsa_names. - - * rsa.c (rsa_names): New variable. - (pubkey_spec_rsa): Include rsa_names. - - * pubkey.c (gcry_pubkey_lookup_func_name): Compare name also with - the names listed in `sexp_names'. - -2003-04-24 Moritz Schulte - - * pubkey.c (sexp_to_key): New variables: module, pubkey. Adjusted - to new module interface. - (sexp_to_key): Changend type of argument `retalgo' from `int *' to - `GcryModule **'. Adjusted all callers. Removed argument: - r_algotblidx. - (sexp_to_sig): Changend type of argument `retalgo' from `int *' to - `GcryModule **'. Adjusted all callers. - (sexp_to_enc): Likewise. - - (pubkey_get_npkey, pubkey_get_nskey, pubkey_get_nsig, - pubkey_get_nenc): Use strlen to find out the number. - - * rsa.c: Adjust pubkey_spec_rsa to new internal interface. - * dsa.c: Likewise. - * elgamal.c: Likewise. - -2003-04-17 Moritz Schulte - - * pubkey.c (sexp_elements_extract): New function. - * pubkey.c (sexp_to_key): Removed variable `idx', added `err', use - sexp_elements_extract. - (sexp_to_sig): Likewise. - (sexp_to_enc): Likewise. - - * pubkey.c: Terminate list correctly. - * md.c: Include sha512/sha384 in digest_table. - -2003-04-16 Moritz Schulte - - * Makefile.am: Include support for sha512.c. - - * sha512.c: New file, merged from GnuPG, with few modifications - for libgcrypt. - - * rand-internal.h: Removed declarations for constructor functions. - - * md.c (md_copy): Call _gcry_module_use for incrementing the usage - counter of the digest modules. - - * rsa.c: Do not include "rsa.h". - * dsa.c: Do not include "dsa.h". - * elgamal.c: Do not include "elgamal.h". - * des.c: Do not include "des.h". - * cast5.c: Do not include "cast5.h". - * blowfish.c: Do not include "blowfish.h". - * arcfour.c: Do not include "arcfour.h". - - * Makefile.am (libcipher_la_DEPENDENCIES): Removed. - (libcipher_la_LIBADD): Removed. - Use Automake conditionals for conditional compilation. - -2003-04-13 Moritz Schulte - - * cipher.c (gcry_cipher_open): Call REGISTER_DEFAULT_CIPHERS. - - * md.c (gcry_md_list): New member: module. - (md_enable): New variable: module, changed use of module and - digest. - (md_enable): Initialize member: module. - (md_close): Call _gcry_module_release. - - * cipher.c (gcry_cipher_open): New variable: module, changed use of - module and cipher. - (struct gcry_cipher_handle): New member: module. - (gcry_cipher_open): Initialize member: module. - (gcry_cipher_close): Call _gcry_module_release. - -2003-04-09 Moritz Schulte - - * cipher.c: Include "ath.h". - * md.c: Likewise. - * pubkey.c: Likewise. - - * cipher.c (ciphers_registered_lock): New variable. - * md.c (digests_registered_lock): New variable. - * pubkey.c (pubkeys_registered_lock): New variable. - - * rndlinux.c (gnupgext_version, func_table): Removed definitions. - (gnupgext_enum_func): Removed function. - (_gcry_rndlinux_constructor): Removed function. - - * rndegd.c (gnupgext_version, func_table): Removed definitions. - (gnupgext_enum_func): Removed function. - (_gcry_rndegd_constructor): Removed function. - - * rndunix.c (gnupgext_version, func_table): Removed definitions. - (gnupgext_enum_func): Removed function. - (_gcry_rndunix_constructor): Removed function. - - * rndw32.c (gnupgext_version, func_table): Removed definitions. - (gnupgext_enum_func): Removed function. - (_gcry_rndw32_constructor): Removed function. - - * rndegd.c (rndegd_connect_socket): Simplify code for creating the - egd socket address. - (rndegd_connect_socket): Call log_fatal use instead of - g10_log_fatal. - (egd_gather_random): Renamed to ... - (rndegd_gather_random): ... here. - -2003-04-08 Moritz Schulte - - * rndlinux.c: Do not include "dynload.h". - * rndunix.c: Likewise. - * rndw32.c: Likewise. - - * rndegd.c (rndegd_connect_socket): Factored out from ... - (egd_gather_random): here; call it. - (egd_socket): New variable. - (egd_gather_random): Initialize fd with egd_socket, do not declare - fd static. - (do_read): Merged few changes from GnuPG. FIXME - not finished? - Do not include "dynload.h". - - * rndw32.c (gather_random): Renamed to rndw32_gather_random, do - not declare static. - (gather_random_fast): Renamed to rndw32_gather_random_fast, do not - declare static. - - * rndunix.c (gather_random): Renamed to rndunix_gather_random, do - not declare static. - * rndegd.c (gather_random): Renamed to rndegd_gather_random, do - not declare static. - * rndlinux.c (gather_random): Renamed to rndlinux_gather_random, - do not declare static. - -2003-04-07 Moritz Schulte - - * Makefile.am (libcipher_la_SOURCES): Removed construct.c. - (libcipher_la_SOURCES): Added sha1.c, sha256.c, rmd160.c, md4.c, - md5.c, tiger.c and crc.c - (EXTRA_PROGRAMS): Removed sha1, sha256, rmd160, md4, md5, tiger - and crc. Removed definitions: EXTRA_md4_SOURCES, - EXTRA_md5_SOURCES, EXTRA_rmd160_SOURCES, EXTRA_sha1_SOURCES, - EXTRA_sha256_SOURCES, EXTRA_tiger_SOURCES and EXTRA_crc_SOURCES, - BUILT_SOURCES, DISTCLEANFILES. - - * pubkey.c: Do not include "elgamal.h", "dsa.h" and "rsa.h". - - * Makefile.am (libcipher_la_SOURCES): Removed rsa.h, elgamal.h, - dsa.h, des.h, cast5.h, arcfour.h and blowfish.h. - - * rsa.h: Removed file. - * elgamal.h: Removed file. - * dsa.h: Removed file. - * des.h: Removed file. - * cast5.h: Removed file. - * arcfour.h: Removed file. - * blowfish.h: Removed file. - - * Makefile.am (libcipher_la_SOURCES): Removed dynload.c and - dynload.h. - - * rsa.c (pubkey_spec_rsa): New variable. - * dsa.c (pubkey_spec_rsa): New variable. - * elgamal.c (pubkey_spec_elg): New variable. - - * rsa.c (_gcry_rsa_get_info): Removed function. - * elgamal.c (_gcry_elg_get_info): Removed function. - * dsa.c (_gcry_dsa_get_info): Removed function. - - * tiger.c (tiger_get_info): Removed function. - (gnupgext_version, func_table): Removed definitions. - (gnupgext_enum_func): Removed function. - (_gcry_tiger_constructor): Removed function. - - * sha1.c (sha1_get_info): Removed function. - (gnupgext_version, func_table): Removed definitions. - (gnupgext_enum_func): Removed function. - (_gcry_sha1_constructor): Removed function. - - * sha256.c (sha256_get_info): Removed function. - (gnupgext_version, func_table): Removed definitions. - (gnupgext_enum_func): Removed function. - (_gcry_sha256_constructor): Removed function. - - * rmd160.c (rmd160_get_info): Removed function. - (gnupgext_version, func_table): Removed definitions. - (gnupgext_enum_func): Removed function. - (_gcry_rmd160_constructor): Removed function. - - * md5.c (md5_get_info): Removed function. - (gnupgext_version, func_table): Removed definitions. - (gnupgext_enum_func): Removed function. - (_gcry_md5_constructor): Removed function. - - * md4.c (md4_get_info): Removed function. - (gnupgext_version, func_table): Removed definitions. - (gnupgext_enum_func): Removed function. - (_gcry_md4_constructor): Removed function. - - * crc.c (crc_get_info): Removed function. - - * arcfour.c (do_arcfour_setkey): Changed type of context argument - to `void *', added local variable for cast, adjusted callers. - (arcfour_setkey): Likewise. - (encrypt_stream): Likewise. - * cast5.c (cast_setkey): Likewise. - (encrypt_block): Likewise. - * rijndael.c (rijndael_setkey): Likewise. - (rijndael_encrypt): Likewise. - (rijndael_decrypt): Likewise. - * twofish.c (twofish_setkey): Likewise. - (twofish_encrypt): Likewise. - (twofish_decrypt): Likewise. - * des.c (do_des_setkey): Likewise. - (do_des_encrypt): Likewise. - (do_des_encrypt): Likewise. - (do_tripledes_encrypt): Likewise. - (do_tripledes_encrypt): Likewise. - * blowfish.c (bf_setkey: Likewise. - (encrypt_block): Likewise. - (decrypt_block): Likewise. - - * arcfour.c (encrypt_stream): Likewise. - - * rijndael.c (gnupgext_version, func_table): Removed definitions. - (gnupgext_enum_func) Removed function. - - * twofish.c (gnupgext_version, func_table): Removed definitions. - (gnupgext_enum_func) Removed function. - - * cast5.c (CIPHER_ALGO_CAST5): Removed. - - * blowfish.c (FNCCAST_SETKEY, FNCCAST_CRYPT): Removed macros. - (CIPHER_ALGO_BLOWFISH): Removed symbol. - * cast5.c (FNCCAST_SETKEY, FNCCAST_CRYPT): Likewise. - * des.c (selftest_failed): Removed. - (initialized): New variable. - (do_des_setkey): Run selftest, if not yet done. - (FNCCAST_SETKEY, FNCCAST_CRYPT): Removed macros. - - * arcfour.c (_gcry_arcfour_get_info): Removed function. - * blowfish.c (_gcry_blowfish_get_info): Removed function. - * cast5.c (_gcry_cast5_get_info): Removed function. - * des.c (_gcry_des_get_info): Removed function. - * rijndael.c (_gcry_rijndael_get_info): Removed function. - * twofish.c (_gcry_twofish_get_info): Removed function. - - * arcfour.c (cipher_spec_arcfour): New variable. - * twofish.c (cipher_spec_twofish, cipher_spec_twofish128): New - variables. - * rijndael.c (cipher_spec_aes, cipher_spec_aes192, - cipher_spec256): New variables. - * des.c (cipher_spec_des, cipher_spec_tripledes): New variables. - * cast5.c (cipher_spec_cast5): New variable. - * blowfish.c (cipher_spec_blowfish): Likewise. - - * twofish.c: Do not include "dynload.h". - * rijndael.c: Likewise. - * des.c: Likewise. - * cast5.c: Likewise. - * blowfish.c: Likewise. - * cipher.c: Likewise. - * crc.c: Likewise. - * md4.c: Likewise. - * md5.c: Likewise. - * md.c: Likewise. - * pubkey.c: Likewise. - * rijndael.c: Likewise. - * sha1.c: Likewise. - * sha256.c: Likewise. - - * arcfour.c: Include "cipher.h". - * twofish.c: Likewise. - * rijndael.c: Likewise. - * des.c: Likewise. - * cast5.c: Likewise. - * blowfish.c: Likewise. - - * twofish.c (twofish_setkey): Declared argument `key' const. - (twofish_encrypt): Declared argument `inbuf' const. - (twofish_decrypt): Likewise. - - * rijndael.c (rijndael_setkey): Declared argument `key' const. - (rijndael_encrypt): Declared argument `inbuf' const. - (rijndael_decrypt): Likewise. - - * des.c (do_des_setkey): Declared argument `key' const. - (do_tripledes_setkey): Likewise. - (do_des_encrypt): Declared argument `inbuf' const. - (do_des_decrypt): Likewise. - (do_tripledes_encrypt): Likewise. - (do_tripledes_decrypt): Likewise. - - * cast5.c (encrypt_block): Declared argument `inbuf' const. - (decrypt_block): Likewise. - (cast_setkey): Declared argument `key' const. - - * blowfish.c (do_bf_setkey): Declared argument `key' const. - (encrypt_block): Declared argument `inbuf' const. - (encrypt_block): Likewise. - - - - * cipher.c: Remove CIPHER_ALGO_DUMMY related code. - Removed struct cipher_table_s. - Changed definition of cipher_table. - Removed definition of disabled_algos. - (ciphers_registered, default_ciphers_registered): New variables. - (REGISTER_DEFAULT_CIPHERS): New macro. - (dummy_setkey): Declared argument `key' const. - (dummy_encrypt_block): Declared argument `inbuf' const. - (dummy_encrypt_block): Likewise. - (dummy_encrypt_stream): Likewise. - (dummy_encrypt_stream): Likewise. - (dummy_setkey): Use `unsigned char' instead of `byte'. - (dummy_encrypt_block): Likewise. - (dummy_decrypt_block): Likewise. - (dummy_encrypt_stream): Likewise. - (dummy_decrypt_stream): Likewise. - (gcry_cipher_register_default): New function. - (gcry_cipher_lookup_func_id): New function. - (gcry_cipher_lookup_func_name): New function. - (gcry_cipher_lookup_id): New function. - (gcry_cipher_lookup_name): New function. - (gcry_cipher_id_new): New function. - (gcry_cipher_register): New function. - (gcry_cipher_unregister): New function. - (setup_cipher_table): Removed function. - (load_cipher_modules): Removed function. - (gcry_cipher_map_name): Adjusted to use new module management. - (cipher_algo_to_string): Likewise. - (disable_cipher_algo): Likewise. - (check_cipher_algo): Likewise. - (cipher_get_keylen): Likewise. - (cipher_get_blocksize): Likewise. - (gcry_cipher_open): Likewise. - (struct gcry_cipher_handle): Replaced members algo, algo_index, - blocksize, setkey, encrypt, decrypt, stencrypt, stdecrypt with one - member: cipher. - (gcry_cipher_open): Adjusted code for new handle structure. - (cipher_setkey): Likewise. - (cipher_setiv): Likewise. - (cipher_reset): Likewise. - (do_ecb_encrypt): Likewise. - (do_ecb_decrypt): Likewise. - (do_cbc_encrypt): Likewise. - (do_cbc_decrypt): Likewise. - (do_cfb_encrypt): Likewise. - (do_cfb_decrypt): Likewise. - (do_ctr_encrypt): Likewise. - (cipher_encrypt): Likewise. - (gcry_cipher_encrypt): Likewise. - (cipher_decrypt): Likewise. - (gcry_cipher_decrypt): Likewise. - (cipher_sync): Likewise. - (gcry_cipher_ctl): Likewise. - - * pubkey.c: Removed struct pubkey_table_s. - Changed definition of pubkey_table. - Removed definition of disabled_algos. - (pubkeys_registered, default_pubkeys_registered): New variables. - (REGISTER_DEFAULT_PUBKEYS): New macro. - (setup_pubkey_table): Removed function. - (load_pubkey_modules): Removed function. - (gcry_pubkey_register_default): New function. - (gcry_pubkey_lookup_func_id): New function. - (gcry_pubkey_lookup_func_name): New function. - (gcry_pubkey_lookup_id): New function. - (gcry_pubkey_lookup_name): New function. - (gcry_pubkey_id_new): New function. - (gcry_pubkey_register): New function. - (gcry_pubkey_unregister): New function. - (gcry_pk_map_name): Adjusted to use new module management. - (gcry_pk_algo_name): Likewise. - (disable_pubkey_algo): Likewise. - (check_pubkey_algo): Likewise. - (pubkey_get_npkey): Likewise. - (pubkey_get_nskey): Likewise. - (pubkey_get_nsig): Likewise. - (pubkey_get_nenc): Likewise. - (pubkey_generate): Likewise. - (pubkey_check_secret_key): Likewise. - (pubkey_encrypt): Likewise. - (pubkey_decrypt): Likewise. - (pubkey_sign): Likewise. - (pubkey_verify): Likewise. - (gcry_pk_get_nbits): Likewise. - (gcry_pk_algo_info): Likewise. - - * md.c: Removed struct md_digest_list_s. - (digest_list): Changed definition. - (digests_registered, default_digests_registered): New variables. - (REGISTER_DEFAULT_DIGESTS): New macro. - (new_list_item): Removed function. - (setup_md_table): Removed function. - (load_digest_module): Removed function. - (gcry_digest_register_default): New function. - (gcry_digest_lookup_func_id): New function. - (gcry_digest_lookup_func_name): New function. - (gcry_digest_lookup_id): New function. - (gcry_digest_lookup_name): New function. - (gcry_digest_id_new): New function. - (gcry_digest_register): New function. - (gcry_digest_unregister): New function. - (GcryDigestEntry): New type. - (struct gcry_md_context): Adjusted type of `list'. - (gcry_md_map_name): Adjusted to use new module management. - (digest_algo_to_string): Likewise. - (check_digest_algo): Likewise. - (md_enable): Likewise. - (md_digest_length): Likewise. - (md_asn_oid): Likewise. - -2003-04-07 Moritz Schulte - - * pubkey.c: Replaced PUBKEY_ALGO_DSA with GCRY_PK_DSA, - PUBKEY_ALGO_RSA with GCRY_PK_RSA and PUBKEY_ALGO_ELGAMAL with - GCRY_PK_ELG. - - * dsa.c: Replaced PUBKEY_ALGO_DSA with GCRY_PK_DSA. - -2003-04-01 Moritz Schulte - - * des.c: Removed checks for GCRY_CIPHER_3DES and GCRY_CIPHER_DES. - -2003-03-31 Moritz Schulte - - * tiger.c (tiger_get_info): Do not declare static. - * sha256.c (sha256_get_info): Likewise. - * sha1.c (sha1_get_info): Likewise. - * rmd160.c (rmd160_get_info): Likewise. - * md5.c (md5_get_info): Likewise. - * md4.c (md4_get_info): Likewise. - * crc.c (crc_get_info): Likewise. - - * md.c (load_digest_module): Call setup_md_table during - initialization. - (new_list_item): Link new element into digest_list. - - * cipher.c (do_ctr_decrypt): Made do_ctr_encrypt act as a wrapper - for do_ctr_encrypt, since these functions are identical. - -2003-03-30 Simon Josefsson - - * cipher.c (struct gcry_cipher_handle): Add counter field. - (gcry_cipher_open): Add CTR. - (cipher_reset): Clear counter field. - (do_ctr_encrypt, do_ctr_decrypt): New functions. - (cipher_encrypt, cipher_decrypt): Call CTR functions. - (gcry_cipher_ctl): Add SET_CTR to set counter. - -2003-03-30 Moritz Schulte - - * rsa.c (_gcry_rsa_blind): New function. - (_gcry_rsa_unblind): New function. - (_gcry_rsa_decrypt): Use _gcry_rsa_blind and _gcry_rsa_decrypt. - -2003-03-26 Moritz Schulte - - * dynload.c (_gcry_enum_gnupgext_pubkeys): Adjust `encrypt' and - `decrypt' function arguments. - (_gcry_enum_gnupgext_pubkeys): Likewise. - * dynload.h: Likewise. - - * pubkey.c (dummy_decrypt): Add argument: int flags. - (dummy_encrypt): Likewise. - - * elgamal.c (_gcry_elg_encrypt): Add argument: int flags. - (_gcry_elg_decrypt): Likewise. - - * rsa.c (_gcry_rsa_encrypt): Add argument: int flags. - (_gcry_rsa_decrypt): Likewise. - - * pubkey.c: Add `flags' argument to members `encrypt' and - `decrypt' of struct `pubkey_table_s'. - - * rsa.h: Add `flags' argument to function declarations. - * elgamal.h: Likewise. - - * pubkey.c (sexp_data_to_mpi): New variable: int parsed_flags. - (sexp_data_to_mpi): Set `parsed_flags'. - (sexp_data_to_mpi): New argument: int *flags. - (gcry_pk_encrypt): New variable: int flags. - (gcry_pk_encrypt): Pass `flags' to pubkey_encrypt. - (pubkey_encrypt): New variable: int flags. - (pubkey_encrypt): Pass `flags' to pubkey encrypt function. - (pubkey_decrypt): Likewise. - (pubkey_decrypt): Pass `flags' to pubkey encrypt function. - (gcry_pk_encrypt): Include `flags' s-exp in return list. - (sexp_to_enc): New argument: int *flags. - (gcry_pk_decrypt): New variable: int flags. - (gcry_pk_decrypt): Pass `flags' to pubkey_decrypt. - (sexp_to_enc): New variable: int parsed_flags. - (sexp_to_enc): Set `parsed_flags'. - -2003-03-22 Simon Josefsson - - * cipher.c (gcry_cipher_open, do_cbc_encrypt) - (gcry_cipher_encrypt): Support GCRY_CIPHER_CBC_MAC. - (gcry_cipher_ctl): Support GCRYCTL_SET_CBC_MAC. - -2003-03-19 Werner Koch - - * primegen.c (gen_prime): New args EXTRA_CHECK and EXTRA_CHECK_ARG - to allow for a user callback. Changed all callers. - (_gcry_generate_secret_prime) - (_gcry_generate_public_prime): Ditto, pass them to gen_prime. - * rsa.c (check_exponent): New. - (generate): Use a callback to ensure that a given exponent is - actually generated. - -2003-03-12 Moritz Schulte - - * primegen.c: Initialize `no_of_small_prime_numbers' statically. - (gen_prime): Remove calculation of `no_of_small_prime_numbers'. - -2003-03-03 Moritz Schulte - - * md.c (gcry_md_ctl): Rewritten to use same style like the other - functions dispatchers. - -2003-03-02 Moritz Schulte - - * cipher.c (struct gcry_cipher_handle): New member: algo_index. - (gcry_cipher_open): Allocate memory for two cipher contexts. - Initialize algo_index. - (cipher_setkey): Duplicate context into reserved memory. - (cipher_reset): New function, which resets the context and clear - the IV. - (gcry_cipher_ctl): Call cipher_reset. - -2003-02-23 Moritz Schulte - - * cipher.c: Remove (bogus) `digitp' macro definition. - * md.c: Likewise. - - * blowfish.c (burn_stack): Removed. - * arcfour.c (burn_stack): Likewise. - * cast5.c (burn_stack): Likewise. - * des.c (burn_stack): Likewise. - * md4.c (burn_stack): Likewise. - * md5.c (burn_stack): Likewise. - * random.c (burn_stack): Likewise. - * rijndael.c (burn_stack): Likewise. - * rmd160.c (burn_stack): Likewise. - * sha1.c (burn_stack): Likewise. - * sha256.c (burn_stack): Likewise. - * tiger.c (burn_stack): Likewise. - * twofish.c (burn_stack): Likewise. - - * blowfish.c: Changed all occurences of burn_stack to - _gcry_burn_stack. - * arcfour.c: Likewise. - * cast5.c: Likewise. - * des.c: Likewise. - * md4.c: Likewise. - * md5.c: Likewise. - * random.c: Likewise. - * rijndael.c: Likewise. - * rmd160.c: Likewise. - * sha1.c: Likewise. - * sha256.c: Likewise. - * tiger.c: Likewise. - * twofish.c: Likewise. - - * arcfour.c (_gcry_arcfour_get_info): Use GCRY_CIPHER_ARCFOUR - instead of hard-coded value `301'. - -2003-01-24 Werner Koch - - * random.c (_gcry_register_random_progress): New. - (_gcry_random_progress): New. - - * rndlinux.c (gather_random): Call the random progress function. - -2003-01-23 Werner Koch - - * rsa.c (generate): New arg USE_E to request a specific public - exponent. - (_gcry_rsa_generate): Ditto. - * elgamal.c (_gcry_elg_generate): Must add an dummy argument - instead of USE_E. - * dsa.c (_gcry_dsa_generate): Ditto. - * pubkey.c (dummy_generate): Ditto. - (pubkey_generate): Add USE_E arg and pass it down. - (gcry_pk_genkey): Detect "rsa-use-e" parameter and pass it to generate. - - * pubkey.c (sexp_to_enc): New arg RET_MODERN. - (gcry_pk_decrypt): Make use of it to return a real S-expression. - Return better error codes. - (gcry_pk_verify): Return better error codes. - -2003-01-21 Werner Koch - - * random.c (gcry_random_add_bytes): Add QUALITY argument, let - function return an error code and disable its core for now. - -2003-01-21 Timo Schulz - - * random.c (gcry_random_add_bytes): New. Function to add external - random to the pool. - -2003-01-20 Simon Josefsson - - * crc.c: New. - * Makefile.am (EXTRA_PROGRAMS, EXTRA_crc_SOURCES): Add crc.c. - * md.c (gcry_md_get_algo_dlen): Add values for CRC. - -2003-01-20 Werner Koch - - * sha256.c: New. - * bithelp.h (ror): New. - * Makfile.am: Add sha256.c. - * md.c (oid_table): Add values for SHA256 et al. - (gcry_md_get_algo_dlen): Likewise - -2003-01-20 Werner Koch - - * pubkey.c (gcry_pk_get_keygrip): Implemented keygrips for DSA - and ElGamal. - -2003-01-17 Werner Koch - - * cipher.c (gcry_cipher_encrypt): Reworked so that the output will - never contain the plaintext even if the caller did not checked the - return value. - - * md.c (gcry_md_get_algo): Changed error code to GCRYERR_GENERAL - because we don't have an invalid md algo but no algorithm enabled. - - * pubkey.c (gcry_pk_genkey): Changed error code for bounds check - of table parameters to GCRYERR_INTERNAL. - - * md.c (gcry_md_open): Partly reverted Timo's change from - 2002-10-10 by removing the check for the algorithm. An algorithm - of 0 is allowed and anyway we should not double check it or check - it using a different function. Also fixed the flags check. - - * pubkey.c (gcry_pk_encrypt): Make sure that R_CIPH points to NULL - on error. - (gcry_pk_decrypt): Ditto for R_PLAIN. - (gcry_pk_sign): Ditto for R_SIG. - (gcry_pk_genkey): Ditto for R_KEY. - -2003-01-16 Werner Koch - - * md.c (gcry_md_write): Changed 2nd argument type to void*. - (gcry_md_hash_buffer): Changed type of boths buffers to void*. - (gcry_md_setkey): Changed 2nd argument type to void*. - -2003-01-15 Werner Koch - - * pubkey.c (sexp_data_to_mpi): New. This handles pkcs1 padding. - (gcry_pk_sign, gcry_pk_verify): Use it here. - (gcry_pk_encrypt): And here. - (pubkey_verify): Add debug code. - (sexp_to_enc): Handle flags in the input and return the pkcs1 flag - in a new parameter. - (gcry_pk_decrypt): Prepare for future pkcs1 handling. - -2002-12-19 Werner Koch - - * random.c (_gcry_random_initialize): New. - -2002-12-16 Werner Koch - - * cipher.c: Added a Teletrust specific OID for 3DES. - -2002-12-12 Werner Koch - - * md.c: Added another oddball OIW OID (sha-1WithRSAEncryption). - -2002-11-23 Werner Koch - - * md.c (load_digest_module): Enlarged checked_algos bitmap. - * md4.c (func_table): Fixed entry for md4. - Both by Simon Josephson. - (transform): Copy data to get the alignment straight. Tested only - on i386. - -2002-11-10 Simon Josefsson - - * cipher.c (gcry_cipher_open): Don't reject CTS flag. - (do_cbc_encrypt, do_cbc_decrypt, cipher_encrypt) - (gcry_cipher_encrypt, cipher_decrypt) - (gcry_cipher_decrypt): Support CTS flag. - (gcry_cipher_ctl): Toggle CTS flag. - -2002-11-10 Werner Koch - - * md4.c: New. By Simon Josefsson. - * Makefile.am (EXTRA_PROGRAMS): Add md4.c. - * md.c (oid_table,gcry_md_get_algo_dlen): MD4 support. - -2002-10-14 Werner Koch - - * arcfour.c (do_encrypt_stream): Don't use increment op when - assigning to the same variable. - -2002-10-10 Timo Schulz - - * pubkey.c (gcry_pk_genkey): Check boundaries. - - * md.c (gcry_md_open): Check that algo is available and only - valid flag values are used. - (gcry_md_get_algo): Add error handling. - -2002-09-26 Werner Koch - - * md.c: Include an OID for TIGER. - * tiger.c (tiger_get_info): Use a regular OID. - -2002-09-17 Werner Koch - - * random.c: Replaced mutex.h by the new ath.h. Changed all calls. - -2002-09-16 Werner Koch - - * arcfour.c (do_encrypt_stream): Use register modifier and modulo. - According to Nikos Mavroyanopoulos this increases perfromace on - i386 system noticable. And I always tought gcc is clever enough. - * md5.c (transform): Use register modifier. - * rmd160.c (transform): Ditto. - * sha1.c (transform): Ditto. We hope that there are 6 free registers. - * random.c (gcry_randomize): Rewrote to avoid malloc calls. - - * rndlinux.c (gather_random): Replaced remaining fprintfs by log_*. - * arcfour.c (do_arcfour_setkey): Ditto. - * twofish.c (do_twofish_setkey): Ditto. - * rndegd.c (gather_random): Ditto. - * rijndael.c (do_setkey): Ditto. - * random.c (_gcry_random_dump_stats): Ditto. - * primegen.c (_gcry_generate_elg_prime): Ditto. - * des.c (_gcry_des_get_info): Ditto. - * cast5.c (do_cast_setkey): Ditto. - * blowfish.c (do_bf_setkey): Ditto. - -2002-08-26 Werner Koch - - * des.c (weak_keys): Fixed one entry in the table and compared - all entries against the literature. - (selftest): Checksum the weak key table. - -2002-08-21 Werner Koch - - * pubkey.c: Enable keygrip calculation for "openpgp-rsa". - -2002-08-17 Werner Koch - - * cipher.c (setup_cipher_table): Don't overwrite the DES entry - with the entry for DUMMY. - -2002-08-14 Werner Koch - - * des.c (do_des_setkey,do_des_encrypt, do_des_decrypt): New. - (_gcry_des_get_info): Support plain old DES. - * cipher.c (setup_cipher_table): Put DES into the table. - -2002-07-25 Werner Koch - - * rndunix.c (_gcry_rndunix_constructor): Prefixed with _gcry_. - Noted by Stephan Austermuehle. - -2002-07-08 Timo Schulz - - * rndw32.c: Replaced the m_ memory functions with the real - gcry_ functions. Renamed all g10_ prefixed functions to log_. - -2002-06-12 Werner Koch - - * rsa.c (generate): Use e = 65537 for now. - -2002-06-11 Werner Koch - - * pubkey.c (gcry_pk_get_keygrip): Allow a "protected-private-key". - -2002-06-05 Timo Schulz - - * cipher.c (gcry_cipher_encrypt, gcry_cipher_decrypt): - Check that the input size is a multiple of the blocksize. - -2002-05-23 Werner Koch - - * md.c (oid_table): Add an rsadsi OID for MD5. - -2002-05-21 Werner Koch - - * primegen.c, elgamal.c, dsa.c (progress): Do not print anything - by default. Pass an extra identifying string to the callback and - reserved 2 argumenst for current and total counters. Changed the - register function prototype. - -2002-05-17 Werner Koch - - * rndegd.c (rndegd_constructor): Fixed name of register function - and prefixed the function name with _gcry_. - * rndw32.c (rndw32_constructor): Ditto. - * tiger.c (tiger_constructor): Ditto. - - * Makefile.am: Removed all dynamic loading stuff. - * dynload.c: Ditto. Now only used for the constructor system. - -2002-05-15 Werner Koch - - * random.c (gcry_random_bytes,gcry_random_bytes_secure) - (gcry_randomize): Make sure we are initialized. - -2002-05-14 Werner Koch - - Changed license of most files to the LGPL. - -2002-05-02 Werner Koch - - * random.c (_gcry_fast_random_poll): Initialize the module so the - mutex can be used. - - * primegen.c (small_prime_numbers): Moved table from smallprime.c - * smallprime.c: File removed. - - * des.c (leftkey_swap, rightkey_swap, working_memcmp): Made static. - - * cipher.c (gcry_cipher_map_name): Map "RIJNDAEL" to "AES". - * rijndael.c (rijndael_get_info): We do only support a 128 bit - blocksize so it makes sense to change the algorithm strings to - AES. - - * tiger.c (tiger_final): Removed superfluous token pasting operators. - * md5.c (md5_final): Ditto. - -2002-04-30 Werner Koch - - * cipher.c: Fixed list of copyright years. - -2002-03-18 Werner Koch - - * random.c (initialize): Initialize the new pool lock mutex. - (_gcry_fast_random_poll): Add locking and moved main - code out to... - (do_fast_random_poll): new function. - (read_pool): Use the new function here. - (get_random_bytes): Add locking. - (_gcry_update_random_seed_file): Ditto. - -2002-03-11 Werner Koch - - * md.c: Add rsaSignatureWithripemd160 to OID table. - -2002-02-20 Werner Koch - - * sha1.c: Removed a left over comment note. The code has been - rewritten from scratch in 1998. Thanks to Niels Möller for - reporting this misleading comment. - -2002-02-18 Werner Koch - - * rndunix.c (rndunix_constructor): Use the the new prefixed - function name. Reported by Jordi Mallach. - -2002-02-10 Werner Koch - - * random.c (mix_pool): Carry an extra failsafe_digest buffer - around to make the function more robust. - -2002-02-08 Werner Koch - - * random.c (add_randomness): Xor new data into the pool and not - just copy it. This avoids any choosen input attacks which are not - serious in our setting because an outsider won't be able to mix - data in and even then we keep going with a PRNG. Thanks to Stefan - Keller for pointing this out. - -2002-01-04 Werner Koch - - * pubkey.c (gcry_pk_genkey): Do not release skey - it is static. - - * primegen.c (gen_prime): Of course we should use set_bit - and not set_highbit to set the second high bit. - -2001-12-18 Werner Koch - - * rsa.c (generate): Loop until we find the exact modulus size. - Changed the exponent to 41. - (rsa_get_info): s/usage/r_usage/ to avoid shadow warnings. - * primegen.c (gen_prime): Set 2 high order bits for secret primes. - - * Makefile.am (DISTCLEANFILES): Include construct.c. - -2001-12-17 Werner Koch - - * pubkey.c (gcry_pk_get_keygrip): New - experimental. - -2001-12-11 Werner Koch - - * cipher.c: Added OIDs for AES. - (gcry_cipher_mode_from_oid): New. - (gcry_cipher_map_name): Moved OID search code to .. - (search_oid): .. new function. - -2001-12-10 Werner Koch - - * pubkey.c (gcry_pk_encrypt): Find the signature algorithm by name - and not by number. - - * pubkey.c (gcry_pk_encrypt,gcry_pk_decrypt,gcry_pk_sign) - (gcry_pk_verify,gcry_pk_testkey, gcry_pk_genkey) - (gcry_pk_get_nbits): Release the arrays. Noted by Nikos - Mavroyanopoulos. - -2001-12-06 Werner Koch - - * cipher.c (gcry_cipher_map_name): Look also for OIDs prefixed - with "oid." or "OID.". - -2001-12-05 Werner Koch - - * pubkey.c (algo_info_table): Fixed entry for openpgp-rsa. - -2001-11-24 Werner Koch - - * pubkey.c: Added the rsaEncryption OID to the tables. - (sexp_to_key): Add an arg to return the index of the algorithm, - changed all callers. - (gcry_pk_sign): Find the signature algorithm by name and not by - number. - (gcry_pk_get_nbits): Fixed so that we can now really pass a secret - key to get the result. - - * md.c (gcry_md_map_name): Look also for OIDs prefixed with "oid." - or "OID." so that an OID string can be used as an S-Exp token. - -2001-11-20 Werner Koch - - * md.c (gcry_md_map_name): Lookup by OID if the the name begins - with a digit. - (oid_table): New. - -2001-11-16 Werner Koch - - * md.c (gcry_md_info): New operator GCRYCTL_IS_ALGO_ENABLED. - -2001-11-07 Werner Koch - - * md.c (gcry_md_hash_buffer): Close the handle which was left open - for algorithms other than rmd160. - -2001-08-08 Werner Koch - - * rndw32.c (gather_random): Use toolhelp in addition to the NT - gatherer for Windows2000. Suggested by Sami Tolvanen. - - * random.c (read_pool): Fixed length check, this used to be one - byte to strict. Made an assert out of it because the caller has - already made sure that only poolsize bytes are requested. - Reported by Marcus Brinkmann. - -2001-08-03 Werner Koch - - * cipher.c (cipher_encrypt, cipher_decrypt): Prepare to return - errors. We have to change the interface to all ciphers to make - this really work but we should do so to prepare for hardware - encryption modules. - (gcry_cipher_encrypt, gcry_cipher_decrypt): Return the error and - set lasterr. - (gcry_cipher_ctl): Make sure that errors from setkey are returned. - -2001-08-02 Werner Koch - - * rndlinux.c (gather_random): casted a size_t arg to int so that - the format string is correct. Casting is okay here and avoids - translation changes. - - * random.c (fast_random_poll): Do not check the return code of - getrusage. - - * rndunix.c: Add a signal.h header to avoid warnings on Solaris 7 - and 8. - - * tiger.c (print_abc,print_data): Removed. - - * rijndael.c, des.c, blowfish.c, twofish.c, cast5.c, arcfour.c - (burn_stack): New. Add wrappers for most functions to be able to - call burn_stack after the function invocation. This methods seems - to be the most portable way to zeroise the stack used. It does - only work on stack frame based machines but it is highly portable - and has no side effects. Just setting the automatic variables at - the end of a function to zero does not work well because the - compiler will optimize them away - marking them as volatile would - be bad for performance. - * md5.c, sha1.c, rmd160.c, tiger.c (burn_stack): Likewise. - * random.c (burn_stack): New. - (mix_pool): Use it here to burn the stack of the mixblock function. - - * primegen.c (_gcry_generate_elg_prime): Freed q at 3 places. - Thanks to Tommi Komulainen. - - * arcfour.c (arcfour_setkey): Check the minimim keylength against - bytes and not bits. - (selftest): Must reset the key before decryption. - -2001-05-31 Werner Koch - - * sha1.c (sha1_init): Made static. - - Changed all g10_ prefixed function names as well as some mpi_ - function names to cope with the introduced naming changes. - - * md.c (prepare_macpads): Made key const. - -2001-05-28 Werner Koch - - * rndegd.c (gather_random): Removed the use of tty_printf. - -2001-03-29 Werner Koch - - * md5.c (md5_final): Fixed calculation of hashed length. Thanks - to disastry@saiknes.lv for pointing out that it was horrible wrong - for more than 512MB of input. - * sha1.c (sha1_final): Ditto. - * rmd160.c (rmd160_final): Ditto. - * tiger.c (tiger_final): Ditto. - - * blowfish.c (encrypt,do_encrypt): Changed name to do_encrypt to - avoid name clashes with an encrypt function in stdlib.h of - Dynix/PIX. Thanks to Gene Carter. - * elgamal.c (encrypt,do_encrypt): Ditto. - - * twofish.c (gnupgext_enum_func): Use only when when compiled as a - module. - * rijndael.c (gnupgext_enum_func): Ditto. - - * tiger.c (tiger_get_info): Return "TIGER192" and not just - "TIGER". By Edwin Woudt. - - * random.c: Always include time.h - standard requirement. Thanks - to James Troup. - - * rndw32.c: Fixes to the macros. - -2001-01-11 Werner Koch - - * cipher.c (cipher_encrypt,gcry_cipher_encrypt): Use blocksize and - not 8. - -2000-12-19 Werner Koch - - Major change: - Removed all GnuPG stuff and renamed this piece of software - to gcrypt. - -2000-11-14 Werner Koch - - * dsa.c (test_keys): Replaced mpi_alloc by gcry_mpi_new and - mpi_free by gcry_mpi_release. - * elgamal.c (test_keys,generate): Ditto, also for mpi_alloc_secure. - * rsa.c (test_keys,generate,rsa_verify): Ditto. - * primegen.c (generate_elg_prime): Ditto. - (gen_prime): Ditto and removed nlimbs. - - * rsa.c (generate): Allocate 2 more vars in secure memory. - - * Makefile.am (OMIT_DEPENDENCIES): Hack to work around dependency - problems. - -2000-10-09 Werner Koch - - * arcfour.c, arcfour.h: New. - * cipher.c (cipher_encrypt, cipher_decrypt): Add stream mode. - (setup_cipher_table): Add Arcfour. - (gcry_cipher_open): Kludge to allow stream mode. - -Wed Oct 4 13:16:18 CEST 2000 Werner Koch - - * sha1.c (transform): Use rol() macro. Actually this is not needed - for a newer gcc but there are still aoter compilers. - - * rsa.c (test_keys): Use new random function. - - * md.c (gcry_md_setkey): New function to overcome problems with - const conflics. - (gcry_md_ctl): Pass set key to the new functions. - - * rijndael.c: New. - * cipher.c: Add Rijndael support. - -Mon Sep 18 16:35:45 CEST 2000 Werner Koch - - * rndlinux.c (open_device): Loose random device checking. - By Nils Ellmenreich. - - * random.c (fast_random_poll): Check ENOSYS for getrusage. - * rndunix.c: Add 2 sources for QNX. By Sam Roberts. - - * pubkey.c (gcry_pk_algo_info): Add GCRYCTL_GET_ALGO_USAGE. - - * rsa.c: Changed the comment about the patent. - (secret): Speed up by using the CRT. For a 2k keys this - is about 3 times faster. - (stronger_key_check): New but unused code to check the secret key. - * Makefile.am: Included rsa.[ch]. - * pubkey.c: Enabled RSA support. - (pubkey_get_npkey): Removed RSA workaround. - -Mon Jul 31 10:04:47 CEST 2000 Werner Koch - - * pubkey.c: Replaced all gcry_sexp_{car,cdr}_{data,mpi} by the new - gcry_sexp_nth_{data,mpi} functions. - -Tue Jul 25 17:44:15 CEST 2000 Werner Koch - - * pubkey.c (exp_to_key,sexp_to_sig,sexp_to_enc,gcry_pk_encrypt, - gcry_pk_decrypt,gcry_pk_sign,gcry_pk_genkey): Changed to work with - the new S-Exp interface. - -Mon Jul 17 16:35:47 CEST 2000 Werner Koch - - * random.c (gather_faked): Replaced make_timestamp by time(2) again. - -Fri Jul 14 19:38:23 CEST 2000 Werner Koch - - * md.c (gcry_md_ctl): Support GCRYCTL_{START,STOP}_DUMP. - - * Makefile.am: Never compile mingw32 as module. - - * Makefile.am: Tweaked module build and removed libtool - - * Makefile.am: Replaced -O1 by -O. Suggested by Alec Habig. - - * elgamal.c (sign): Removed inactive code. - - * rsa.c, rsa.h: New based on the old module version (only in CVS for now). - * pubkey.c (setup_pubkey_table): Added commented support for RSA. - - * rndunix.c (waitpid): New. For UTS 2.1. All by Dave Dykstra. - (my_popen): Do the FD_CLOEXEC only if it is available - (start_gatherer): Cope with missing _SC_OPEN_MAX - - * rndunix.c: Add some more headers for QNX. By Sam Roberts. - - * rndegd.c (gather_random): Shortcut level 0. - * rndunix.c (gather_random): Ditto. - * rndw32.c (gather_random): Ditto. - - * rndw32.c: Replaced with code from Cryptlib and commented the old stuff. - * rndw32.c: Add some debuging code enabled by an environment variable. - - * random.c (read_seed_file): Binary open for DOSish system - (update_random_seed_file): Ditto. - * random.c [MINGW32]: Include process.h for getpid. - * random.c (fast_random_poll): Add clock_gettime() as fallback for - system which support this POSIX.4 fucntion. By Sam Roberts. - - * random.c (read_seed_file): Removed the S_ISLNK test becuase it - is already covered by !S_ISREG and is not defined in Unixware. - Reported by Dave Dykstra. - (update_random_seed_file): Silently ignore update request when pool - is not filled. - - * random.c (read_seed_file): New. - (set_random_seed_file): New. - (read_pool): Try to read the seeding file. - (update_random_seed_file): New. - - (read_pool): Do an initial extra seeding when level 2 quality random - is requested the first time. This requestes at least POOLSIZE/2 bytes - of entropy. Compined with the seeding file this should make normal - random bytes cheaper and increase the quality of the random bytes - used for key generation. - - * random.c (read_pool): Print a more friendly error message in - cases when too much random is requested in one call. - - * random.c (fast_random_poll): Check whether RUSAGE_SELF is defined; - this is not the case for some ESIX and Unixware, although they have - getrusage(). - - * primegen.c (generate_elg_prime): All primes are now generated with - the lowest random quality level. Because they are public anyway we - don't need stronger random and by this we do not drain the systems - entropy so much. - - * primegen.c (register_primegen_progress): New. - * dsa.c (register_pk_dsa_progress): New. - * elgamal.c (register_pk_elg_progress): New. - - * elgamal.c (wiener_map): New. - (gen_k): Use a much smaller k. - (generate): Calculate the qbits using the wiener map and - choose an x at a size comparable to the one choosen in gen_k - - * rmd160.c (rmd160_get_info): Moved casting to the left side due to a - problem with UTS4.3. Suggested by Dave Dykstra. - * sha1.c (sha1_get_info): Ditto. - * tiger.c (tiger_get_info): Ditto. - * md5.c (md5_get_info): Ditto - * des.c (des_get_info): Ditto. - * blowfish.c (blowfish_get_info): Ditto. - * cast5.c (cast5_get_info): Ditto. - * twofish.c (twofish_get_info): Ditto. - -Fri Mar 24 11:25:45 CET 2000 Werner Koch - - * md.c (md_open): Add hmac arg and allocate space for the pads. - (md_finalize): Add HMAC support. - (md_copy): Ditto. - (md_close): Ditto. - (gcry_md_reset): Ditto. - (gcry_md_ctl): Ditto. - (prepare_macpdas): New. - -Mon Mar 13 19:22:46 CET 2000 Werner Koch - - * md.c (gcry_md_hash_buffer): Add support for the other algorithms. - -Mon Jan 31 16:37:34 CET 2000 Werner Koch - - * genprime.c (generate_elg_prime): Fixed returned factors which never - worked for non-DSA keys. - -Thu Jan 27 18:00:44 CET 2000 Werner Koch - - * pubkey.c (sexp_to_key): Fixed mem leaks in case of errors. - -Mon Jan 24 22:24:38 CET 2000 Werner Koch - - * pubkey.c (gcry_pk_decrypt): Implemented. - (gcry_pk_encrypt): Implemented. - (gcry_pk_testkey): New. - (gcry_pk_genkey): New. - (pubkey_decrypt): Made static. - (pubkey_encrypt): Ditto. - (pubkey_check_secret_key): Ditto. - (pubkey_generate): Ditto. - -Mon Jan 24 13:04:28 CET 2000 Werner Koch - - * pubkey.c (pubkey_nbits): Removed and replaced by ... - (gcry_pk_get_nbits): this new one. - -Wed Dec 8 21:58:32 CET 1999 Werner Koch - - * dsa.c: s/mpi_powm/gcry_mpi_powm/g - * elgamal.c: Ditto. - * primegen.c: Ditto. - - * : Replaced g10_opt_verbose by g10_log_verbosity(). - - * Makefile.am (INCLUDES): removed intl, add ../gcrypt - -Fri Nov 19 17:15:20 CET 1999 Werner Koch - - * dynload.c (cmp_filenames): New to replaced compare_filename() in - module. - (register_cipher_extension): Removed the tilde expansion stuff. - * rndeg.c (my_make_filename): New. - - * : Replaced header util.h by g10lib.h - - * random.c (gather_faked): Replaced make_timestamp by time(2). - Disabled wrning printed with tty_printf. - * rndlinux.c (gather_random): Always use fprintf instead of tty_xxx; - this should be replaced by a callback function. - - * primegen.c (gen_prime): Use gcry_mpi_randomize. - (is_prime): Ditto. - * elgamal.c (test_keys): Ditto. - * dsa.c (test_keys): Ditto. - - * cipher.c (gcry_cipher_close): Die on invalid handle. - -Mon Nov 15 21:36:02 CET 1999 Werner Koch - - * elgamal.c (gen_k): Use the new random API. - (generate): Ditto. - * dsa.c (gen_k): Ditto. - (generate): Ditto. - -Sat Nov 13 17:44:23 CET 1999 Werner Koch - - * pubkey.c (disable_pubkey_algo): Made static. - (gcry_pk_ctl): New. - - * random.c (get_random_bits): Renamed to ... - (get_random_bytes): ... this and made static. - (gcry_random_bytes): New. - (gcry_random_bytes_secure): New. - (randomize_buffer): Renamed to ... - (gcry_randomize): ...this. - - * md.c (gcry_md_hash_buffer): New. - - * pubkey.c (gcry_pk_algo_info): 4 new commands. - (pubkey_get_npkey): Made static. - (pubkey_get_nskey): Made static. - (pubkey_get_nsig): Made static. - (pubkey_get_nenc): Made static. - - * pubkey.c: Removed all G10ERR_xxx. - * cipher.c: Changed all GCRYERR_INV_ALGO to GCRYERR_INV_CIPHER_ALGO. - * md.c: Changed all GCRYERR_INV_ALGO to GCRYERR_INV_MD_ALGO. - * cast5.c (cast_setkey): Changed errocodes to GCRYERR_xxx. - * blowfish.c: Ditto. - * des.c: Ditto. - * twofish.c: Ditto. - * dsa.c: Ditto. - * elgamal.c: Ditto. - - * g10c.c: Removed - - * cipher.c (gcry_cipher_open): Replaced alloc functions and return NULL - if we are out of core. - * dynload.c: Replaced all memory allocation functions. - * md.c: Ditto. - * primegen.c: Ditto. - * pubkey.c: Ditto. - * random.c: Ditto. - * rndw32.c: Ditto. - * elgamal.c: Ditto. - * dsa.c: Ditto. - -Tue Oct 26 14:10:21 CEST 1999 Werner Koch - - * elgamal.c (sign): Hugh found strange code here. Replaced by BUG(). - - * cipher.c: Merged with gcrypt/symapi.c. - - * pubkey.c (string_to_pubkey_algo): Renamed function to ... - (gcry_pk_map_name): ... this. - (pubkey_algo_to_string): Renamed function to ... - (gcry_pk_algo_name): ... this. - (gcry_pk_algo_info): New. - * pubkey.c: Merged with gcrypt/pkapi.c. - - * md.c (md_reset): Clear finalized; thanks to Ulf Moeller for - fixing this bug. - - * md.c: Merged with gcrypt/mdapi.c - -Wed Sep 15 14:39:59 CEST 1999 Michael Roth - - * des.c: Various speed improvements: One bit pre rotation - trick after initial permutation (Richard Outerbridge). - Finished test of SSLeay Tripple-DES patterns. - -Wed Sep 15 16:22:17 CEST 1999 Werner Koch - - * rndw32.c: New. - -Mon Sep 13 10:51:29 CEST 1999 Werner Koch - - * bithelp.h: New. - * rmd160.h, sha1.h, md5.h: Use the rol macro from bithelp.h - -Tue Sep 7 16:23:36 CEST 1999 Werner Koch - - * Makefile.am: Fixed seds for latest egcc. By Ollivier Robert. - -Mon Sep 6 19:59:08 CEST 1999 Werner Koch - - * des.c (selftest): Add some testpattern - -Mon Aug 30 20:38:33 CEST 1999 Werner Koch - - * cipher.c (do_cbc_encrypt): Fixed serious bug occuring when not using - in place encryption. Pointed out by Frank Stajano. - -Mon Jul 26 09:34:46 CEST 1999 Werner Koch - - * md5.c (md5_final): Fix for a SCO cpp bug. - -Thu Jul 15 10:15:35 CEST 1999 Werner Koch - - * elgamal.c (elg_check_secret_key,elg_encrypt - elg_decrypt,elg_sign,elg_verify): Sanity check on the args. - * dsa.c (dsa_check_secret_key,dsa_sign,dsa_verify): Ditto. - - * pubkey.c (disable_pubkey_algo): New. - (check_pubkey_algo2): Look at disabled algo table. - * cipher.c (disable_cipher_algo): New. - (check_cipher_algo): Look at disabled algo table. - -Wed Jul 7 13:08:40 CEST 1999 Werner Koch - - * Makefile.am: Support for libtool. - -Fri Jul 2 11:45:54 CEST 1999 Werner Koch - - * dsa.c (gen_k): Changed algorithm to consume less random bytes - * elgamal.c (gen_k): Ditto. - - * random.c (random_dump_stats): New. - -Thu Jul 1 12:47:31 CEST 1999 Werner Koch - - * primegen.c, elgamal.c, dsa.c (progess): New and replaced all - fputc with a call to this function. - -Sat Jun 26 12:15:59 CEST 1999 Werner Koch - - * rndegd.c (do_write): s/ssize_t/int/ due to SunOS 4.1 probs. - - * cipher.c (do_cbc_encrypt, do_cbc_decrypt): New. - - * dynload.c (HAVE_DL_SHL_LOAD): Map hpux API to dlopen (Dave Dykstra). - * Makefile.am (install-exec-hook): Removed. - -Sun May 23 14:20:22 CEST 1999 Werner Koch - - * cipher.c (setup_cipher_table): Enable Twofish - - * random.c (fast_random_poll): Disable use of times() for mingw32. - -Mon May 17 21:54:43 CEST 1999 Werner Koch - - * dynload.c (register_internal_cipher_extension): Minor init fix. - -Tue May 4 15:47:53 CEST 1999 Werner Koch - - * primegen.c (gen_prime): Readded the Fermat test. Fixed the bug - that we didn't correct for step when passing the prime to the - Rabin-Miller test which led to bad performance (Stefan Keller). - (check_prime): Add a first Fermat test. - -Sun Apr 18 10:11:28 CEST 1999 Werner Koch - - * cipher.c (cipher_setiv): Add ivlen arg, changed all callers. - - * random.c (randomize_buffer): alway use secure memory because - we can't use m_is_secure() on a statically allocated buffer. - - * twofish.c: Replaced some macros by a loop to reduce text size. - * Makefile.am (twofish): No more need for sed editing. - -Fri Apr 9 12:26:25 CEST 1999 Werner Koch - - * cipher.c (cipher_open): Reversed the changes for AUTO_CFB. - - * blowfish.c: Dropped the Blowfish 160 mode. - * cipher.c (cipher_open): Ditto. - (setup_cipher_table): Ditto. And removed support of twofish128 - -Wed Apr 7 20:51:39 CEST 1999 Werner Koch - - * random.c (get_random_bits): Can now handle requests > POOLSIZE - - * cipher.c (cipher_open): Now uses standard CFB for automode if - the blocksize is gt 8 (according to rfc2440). - - * twofish.c: Applied Matthew Skala's patches for 256 bit key. - -Tue Apr 6 19:58:12 CEST 1999 Werner Koch - - * random.c (get_random_bits): Can now handle requests > POOLSIZE - - * cipher.c (cipher_open): Now uses standard CFB for automode if - the blocksize is gt 8 (according to rfc2440). - -Sat Mar 20 11:44:21 CET 1999 Werner Koch - - * rndlinux.c (tty_printf) [IS_MODULE]: Removed. - - * rndegd.c (gather_random): Some fixes. - -Wed Mar 17 13:09:03 CET 1999 Werner Koch - - * rndegd.c (do_read): New. - (gather_random): Changed the implementation. - -Mon Mar 8 20:47:17 CET 1999 Werner Koch - - * dynload.c (DLSYM_NEEDS_UNDERSCORE): Renamed. - -Fri Feb 26 17:55:41 CET 1999 Werner Koch - - * md.c: Nearly a total rewrote. - -Wed Feb 24 11:07:27 CET 1999 Werner Koch - - * cipher.c (context): Fixed alignment - * md.c: Ditto. - - * rndegd.c: New - -Mon Feb 22 20:04:00 CET 1999 Werner Koch - - * rndegd.c: New. - -Wed Feb 10 17:15:39 CET 1999 Werner Koch - - * Makefile.am: Modules are now figured out by configure - * construct.c: New. Generated by configure. Changed all modules - to work with that. - * sha1.h: Removed. - * md5.h: Removed. - - * twofish.c: Changed interface to allow Twofish/256 - - * rndunix.c (start_gatherer): Die on SIGPIPE. - -Wed Jan 20 18:59:49 CET 1999 Werner Koch - - * rndunix.c (gather_random): Fix to avoid infinite loop. - -Sun Jan 17 11:04:33 CET 1999 Werner Koch - - * des.c (is_weak_key): Replace system memcmp due to bugs - in SunOS's memcmp. - (des_get_info): Return error on failed selftest. - * twofish.c (twofish_setkey): Return error on failed selftest or - invalid keylength. - * cast5.c (cast_setkey): Ditto. - * blowfish.c (bf_setkey): Return error on failed selftest. - -Tue Jan 12 11:17:18 CET 1999 Werner Koch - - * random.c (random_is_faked): New. - - * tiger.c: Only compile if we have the u64 type - -Sat Jan 9 16:02:23 CET 1999 Werner Koch - - * rndunix.c (gather_random): check for setuid. - - * Makefile.am: Add a way to staically link random modules - -Thu Jan 7 18:00:58 CET 1999 Werner Koch - - * md.c (md_stop_debug): Do a flush first. - (md_open): size of buffer now depends on the secure parameter - -Sun Jan 3 15:28:44 CET 1999 Werner Koch - - * rndunix.c (start_gatherer): Fixed stupid ==/= bug - -1998-12-31 Geoff Keating - - * des.c (is_weak_key): Rewrite loop end condition. - -Tue Dec 29 14:41:47 CET 1998 Werner Koch - - * random.c: add unistd.h for getpid(). - (RAND_MAX): Fallback value for Sun. - -Wed Dec 23 17:12:24 CET 1998 Werner Koch - - * md.c (md_copy): Reset debug. - -Mon Dec 14 21:18:49 CET 1998 Werner Koch - - * random.c (read_random_source): Changed the interface to the - random gathering function. - (gather_faked): Use new interface. - * dynload.c (dynload_getfnc_fast_random_poll): Ditto. - (dynload_getfnc_gather_random): Ditto. - * rndlinux.c (gather_random): Ditto. - * rndunix.c (gather_random): Ditto. - -Sat Dec 12 18:40:32 CET 1998 Werner Koch - - * dynload.c (SYMBOL_VERSION): New to cope with system which needs - underscores. - - * rndunix.c: Rewrote large parts - -Thu Dec 10 20:15:36 CET 1998 Werner Koch - - * dynload.c (load_extension): increased needed verbosity level. - - * random.c (fast_random_poll): Fallback to a default fast random - poll function. - (read_random_source): Always use the faked entroy gatherer if no - gather module is available. - * rndlinux.c (fast_poll): Removed. - * rndunix.c (fast_poll): Removed. - - -Wed Nov 25 12:33:41 1998 Werner Koch (wk@isil.d.shuttle.de) - - * rand-*.c: Removed. - * rndlinux.c : New. - * rndunix.c : New. - * random.c : Restructured the interface to the gather modules. - (intialize): Call constructor functions - (read_radnom_source): Moved to here. - * dynload.c (dynload_getfnc_gather_random): New. - (dynload_getfnc_fast_random_poll): New. - (register_internal_cipher_extension): New. - (register_cipher_extension): Support of internal modules. - -Sun Nov 8 17:44:36 1998 Werner Koch (wk@isil.d.shuttle.de) - - * rand-unix.c (read_random_source): Removed the assert. - -Mon Oct 19 18:34:30 1998 me,,, (wk@tobold) - - * pubkey.c: Hack to allow us to give some info about RSA keys back. - -Thu Oct 15 11:47:57 1998 Werner Koch (wk@isil.d.shuttle.de) - - * dynload.c: Support for DLD - -Wed Oct 14 12:13:07 1998 Werner Koch (wk@isil.d.shuttle.de) - - * rand-unix.c: Now uses names from configure for /dev/random. - -1998-10-10 SL Baur - - * Makefile.am: fix sed -O substitutions to catch -O6, etc. - -Tue Oct 6 10:06:32 1998 Werner Koch (wk@isil.d.shuttle.de) - - * rand-unix.c (HAVE_GETTIMEOFDAY): Fixed (was ..GETTIMEOFTIME :-) - * rand-dummy.c (HAVE_GETTIMEOFDAY): Ditto. - -Mon Sep 28 13:23:09 1998 Werner Koch (wk@isil.d.shuttle.de) - - * md.c (md_digest): New. - (md_reset): New. - -Wed Sep 23 12:27:02 1998 Werner Koch (wk@isil.d.shuttle.de) - - * tiger.c (TIGER_CONTEXT): moved "buf", so that it is 64 bit aligned. - -Mon Sep 21 06:22:53 1998 Werner Koch (wk@(none)) - - * des.c: Some patches from Michael. - -Thu Sep 17 19:00:06 1998 Werner Koch (wk@(none)) - - * des.c : New file from Michael Roth - -Mon Sep 14 11:10:55 1998 Werner Koch (wk@(none)) - - * blowfish.c (bf_setkey): Niklas Hernaeus patch to detect weak keys. - -Mon Sep 14 09:19:25 1998 Werner Koch (wk@(none)) - - * dynload.c (RTLD_NOW): Now defined to 1 if it is undefined. - -Mon Sep 7 17:04:33 1998 Werner Koch (wk@(none)) - - * Makefile.am: Fixes to allow a different build directory - -Thu Aug 6 17:25:38 1998 Werner Koch,mobil,,, (wk@tobold) - - * random.c (get_random_byte): Removed and changed all callers - to use get_random_bits() - -Mon Jul 27 10:30:22 1998 Werner Koch (wk@(none)) - - * cipher.c : Support for other blocksizes - (cipher_get_blocksize): New. - * twofish.c: New. - * Makefile.am: Add twofish module. - -Mon Jul 13 21:30:52 1998 Werner Koch (wk@isil.d.shuttle.de) - - * random.c (read_pool): Simple alloc if secure_alloc is not set. - (get_random_bits): Ditto. - -Thu Jul 9 13:01:14 1998 Werner Koch (wk@isil.d.shuttle.de) - - * dynload.c (load_extension): Function now nbails out if - the program is run setuid. - -Wed Jul 8 18:58:23 1998 Werner Koch (wk@isil.d.shuttle.de) - - * rmd160.c (rmd160_hash_buffer): New. - -Thu Jul 2 10:50:30 1998 Werner Koch (wk@isil.d.shuttle.de) - - * cipher.c (cipher_open): algos >=100 use standard CFB - -Thu Jun 25 11:18:25 1998 Werner Koch (wk@isil.d.shuttle.de) - - * Makefile.am: Support for extensions - -Thu Jun 18 12:09:38 1998 Werner Koch (wk@isil.d.shuttle.de) - - * random.c (mix_pool): simpler handling for level 0 - -Mon Jun 15 14:40:48 1998 Werner Koch (wk@isil.d.shuttle.de) - - * tiger.c: Removed from dist, will reappear as dynload module - -Sat Jun 13 14:16:57 1998 Werner Koch (wk@isil.d.shuttle.de) - - * pubkey.c: Major changes to allow extensions. Changed the inteface - of all public key ciphers and added the ability to load extensions - on demand. - - * misc.c: Removed. - -Wed Jun 10 07:52:08 1998 Werner Koch,mobil,,, (wk@tobold) - - * dynload.c: New. - * cipher.c: Major changes to allow extensions. - -Mon Jun 8 22:43:00 1998 Werner Koch (wk@isil.d.shuttle.de) - - * cipher.c: Major internal chnages to support extensions. - * blowfish.c (blowfish_get_info): New and made all internal - functions static, changed heder. - * cast5.c (cast5_get_info): Likewise. - -Mon Jun 8 12:27:52 1998 Werner Koch (wk@isil.d.shuttle.de) - - * tiger.c (transform): Fix for big endian - - * cipher.c (do_cfb_decrypt): Big endian fix. - -Fri May 22 07:30:39 1998 Werner Koch (wk@isil.d.shuttle.de) - - * md.c (md_get_oid): Add a new one for TIGER. - -Thu May 21 13:24:52 1998 Werner Koch (wk@isil.d.shuttle.de) - - * cipher.c: Add support for a dummy cipher - -Thu May 14 15:40:36 1998 Werner Koch (wk@isil.d.shuttle.de) - - * rmd160.c (transform): fixed sigbus - I should better - add Christian von Roques's new implemenation of rmd160_write. - -Fri May 8 18:07:44 1998 Werner Koch (wk@isil.d.shuttle.de) - - * rand-internal.h, rand-unix.c, rand-w32.c, rand_dummy.c: New - * random.c: Moved system specific functions to rand-****.c - -Fri May 8 14:01:17 1998 Werner Koch (wk@isil.d.shuttle.de) - - * random.c (fast_random_poll): add call to gethrtime. - -Tue May 5 21:28:55 1998 Werner Koch (wk@isil.d.shuttle.de) - - * elgamal.c (elg_generate): choosing x was not correct, could - yield 6 bytes which are not from the random pool, tsss, tsss.. - -Tue May 5 14:09:06 1998 Werner Koch (wk@isil.d.shuttle.de) - - * primegen.c (generate_elg_prime): Add arg mode, changed all - callers and implemented mode 1. - -Mon Apr 27 14:41:58 1998 Werner Koch (wk@isil.d.shuttle.de) - - * cipher.c (cipher_get_keylen): New. - -Sun Apr 26 14:44:52 1998 Werner Koch (wk@isil.d.shuttle.de) - - * tiger.c, tiger.h: New. - -Wed Apr 8 14:57:11 1998 Werner Koch (wk@isil.d.shuttle.de) - - * misc.c (check_pubkey_algo2): New. - -Tue Apr 7 18:46:49 1998 Werner Koch (wk@isil.d.shuttle.de) - - * cipher.c: New - * misc.c (check_cipher_algo): Moved to cipher.c - * cast5.c: Moved many functions to cipher.c - * blowfish.c: Likewise. - -Sat Apr 4 19:52:08 1998 Werner Koch (wk@isil.d.shuttle.de) - - * cast5.c: Implemented and tested. - -Wed Apr 1 16:38:27 1998 Werner Koch (wk@isil.d.shuttle.de) - - * elgamal.c (elg_generate): Faster generation of x in some cases. - -Thu Mar 19 13:54:48 1998 Werner Koch (wk@isil.d.shuttle.de) - - * blowfish.c (blowfish_decode_cfb): changed XOR operation - (blowfish_encode_cfb): Ditto. - -Thu Mar 12 14:04:05 1998 Werner Koch (wk@isil.d.shuttle.de) - - * sha1.c (transform): Rewrote - - * blowfish.c (encrypt): Unrolled for rounds == 16 - (decrypt): Ditto. - -Tue Mar 10 16:32:08 1998 Werner Koch (wk@isil.d.shuttle.de) - - * rmd160.c (transform): Unrolled the loop. - -Tue Mar 10 13:05:14 1998 Werner Koch (wk@isil.d.shuttle.de) - - * random.c (read_pool): Add pool_balance stuff. - (get_random_bits): New. - - * elgamal.c (elg_generate): Now uses get_random_bits to generate x. - - -Tue Mar 10 11:33:51 1998 Werner Koch (wk@isil.d.shuttle.de) - - * md.c (md_digest_length): New. - -Tue Mar 10 11:27:41 1998 Werner Koch (wk@isil.d.shuttle.de) - - * dsa.c (dsa_verify): Works. - -Mon Mar 9 12:59:08 1998 Werner Koch (wk@isil.d.shuttle.de) - - * dsa.c, dsa.h: Removed some unused code. - -Wed Mar 4 10:39:22 1998 Werner Koch (wk@isil.d.shuttle.de) - - * md.c (md_open): Add call to fast_random_poll. - blowfish.c (blowfish_setkey): Ditto. - -Tue Mar 3 13:32:54 1998 Werner Koch (wk@isil.d.shuttle.de) - - * rmd160.c (rmd160_mixblock): New. - * random.c: Restructured to start with a new RNG implementation. - * random.h: New. - -Mon Mar 2 19:21:46 1998 Werner Koch (wk@isil.d.shuttle.de) - - * gost.c, gost.h: Removed because they did only contain trash. - -Sun Mar 1 16:42:29 1998 Werner Koch (wk@isil.d.shuttle.de) - - * random.c (fill_buffer): removed error message if n == -1. - -Fri Feb 27 16:39:34 1998 Werner Koch (wk@isil.d.shuttle.de) - - * md.c (md_enable): No init if called twice. - -Thu Feb 26 07:57:02 1998 Werner Koch (wk@isil.d.shuttle.de) - - * primegen.c (generate_elg_prime): Changed the progress printing. - (gen_prime): Ditto. - -Tue Feb 24 12:28:42 1998 Werner Koch (wk@isil.d.shuttle.de) - - * md5.c, md.5 : Replaced by a modified version of md5.c from - GNU textutils 1.22. - -Wed Feb 18 14:08:30 1998 Werner Koch (wk@isil.d.shuttle.de) - - * md.c, md.h : New debugging support - -Mon Feb 16 10:08:47 1998 Werner Koch (wk@isil.d.shuttle.de) - - * misc.c (cipher_algo_to_string): New - (pubkey_algo_to_string): New. - (digest_algo_to_string): New. - - - Copyright 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 - 2007, 2008, 2009, 2010 Free Software Foundation, Inc. - - This file is free software; as a special exception the author gives - unlimited permission to copy and/or distribute it, with or without - modifications, as long as this notice is preserved. - - This file is distributed in the hope that it will be useful, but - WITHOUT ANY WARRANTY, to the extent permitted by law; without even the - implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. diff --git a/thirdparty/grub-2.04/grub-core/lib/libgcrypt/cipher/ChangeLog-2011 b/thirdparty/grub-2.04/grub-core/lib/libgcrypt/cipher/ChangeLog-2011 deleted file mode 100644 index 05516c99e..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/libgcrypt/cipher/ChangeLog-2011 +++ /dev/null @@ -1,4247 +0,0 @@ -2011-12-01 Werner Koch - - NB: ChangeLog files are no longer manually maintained. Starting - on December 1st, 2011 we put change information only in the GIT - commit log, and generate a top-level ChangeLog file from logs at - "make dist". See doc/HACKING for details. - -2011-06-29 Werner Koch - - * cipher.c (cipher_get_keylen): Return zero for an invalid algorithm. - (cipher_get_blocksize): Ditto. - -2011-06-13 Werner Koch - - * dsa.c (selftest_sign_1024): Use the raw and not the pkcs1 flag. - - * pubkey.c (gcry_pk_sign): Special case output generation for PKCS1. - (sexp_data_to_mpi): Parse "random-override" for pkcs1 encryption. - (pkcs1_encode_for_encryption): Add args RANDOM_OVERRIDE and - RANDOM_OVERRIDE_LEN. - (gcry_pk_encrypt): Special case output generation for PKCS1. - (sexp_data_to_mpi): Use GCRYMPI_FMT_USG for raw encoding. - -2011-06-10 Werner Koch - - * pubkey.c (gcry_pk_sign): Use format specifier '%M' to avoid - leading zeroes. Special case output generation for PSS. - (gcry_pk_encrypt): Special case output generation for OAEP. - (sexp_data_to_mpi): Use GCRYMPI_FMT_USG for PSS verify. - -2011-06-09 Werner Koch - - * pubkey.c (oaep_decode): Make use of octet_string_from_mpi. - (sexp_to_enc): Skip "random-override". - - * pubkey.c (oaep_encode, pss_encode): Add args RANDOM_OVERRIDE and - RANDOM_OVERRIDE_LEN. - (sexp_data_to_mpi): Extract new random-override parameter. - - * pubkey.c (pss_encode, pss_verify): Use VALUE verbatim for MHASH. - (octet_string_from_mpi): Add arg SPACE. - -2011-06-08 Werner Koch - - * pubkey.c (pss_encode, pss_verify): Restructure and comment code - to match rfc-3447. Replace secure allocs by plain allocs and - wipememory. Use gcry_md_hash_buffer. - (octet_string_from_mpi): New. - -2011-06-03 Werner Koch - - * pubkey.c (oaep_decode): Add more comments and restructure to - match the description in RFC-3447. - (oaep_encode): Check for mgf1 error. s/dlen/hlen/. - -2011-05-31 Werner Koch - - * pubkey.c (mgf1): Optimize by using gcry_md_reset. Re-implement - for easier readability. - (oaep_encode): Add more comments and restructure to match the - description in RFC-3447. - - * pubkey.c (pkcs1_encode_for_signature, oaep_decode): Change - return value from one MPI to a buffer. - (gcry_pk_decrypt): Adjust for this change. - -2011-05-30 Werner Koch - - * pubkey.c (pkcs1_decode_for_encryption): Change handling of - leading zero byte. - -2011-05-27 Daiki Ueno - - * pubkey.c (gcry_pk_decrypt): Fix double-free when un-padding - invalid data. Thanks to Tom Ritter. - -2011-05-24 Daiki Ueno - - * rsa.c (rsa_verify): Use CMP if given, to check the decrypted - sig. - - * pubkey.c (sexp_to_enc, sexp_data_to_mpi): Factor out - CTX initialization to ... - (init_encoding_ctx): .. new. - (gcry_pk_verify): Pass verify func and the arg to pubkey_verify. - (pss_encode, pss_verify, pss_verify_cmp): New. - -2011-05-23 Daiki Ueno - - * pubkey.c (pkcs1_decode_for_encryption, oaep_decode): Fix memleak - when gcry_mpi_print fails. - -2011-05-18 Daiki Ueno - - * pubkey.c (sexp_data_to_mpi): Factor some code out to ... - (pkcs1_encode_for_encryption): .. new, - (pkcs1_encode_for_signature): .. new. - (pkcs1_decode_for_encryption): New. - (gcry_pk_decrypt): Do un-padding for PKCS#1 as well as OAEP. - (sexp_to_enc): Abolish "unpad" flag, which is not necessary since - we can do un-padding implicitly when "pkcs1" or "oaep" is given. - -2011-05-11 Werner Koch - - * pubkey.c (sexp_to_enc, sexp_data_to_mpi): Set LABEL to NULL - after free. - (sexp_to_enc, sexp_data_to_mpi): Do not allow multiple encoding - flags. - (oaep_encode, oaep_decode, sexp_to_key, sexp_to_sig) - (sexp_to_enc, sexp_data_to_mpi, gcry_pk_encrypt, gcry_pk_sign) - (gcry_pk_genkey, _gcry_pk_get_elements): Replace access to ERRNO - by gpg_err_code_from_syserror. - -2011-05-11 Daiki Ueno - - * pubkey.c (sexp_data_to_mpi): Factor some code out to ... - (get_hash_algo): .. new. - (mgf1, oaep_encode, oaep_decode): New. - (sexp_to_enc): Add arg CTX. Remove arg RET_WANT_PKCS1. Support - OAEP. - (sexp_data_to_mpi): Add arg CTX. Support OAEP. - (gcry_pk_encrypt): Pass a CTX to sexp_data_to_mpi. - (gcry_pk_decrypt): Pass a CTX tp sexp_to_enc and replace - WANT_PKCS1. Implement unpadding for OAEP. - (gcry_pk_sign): Pass NULL for CTX arg of sexp_data_to_mpi. - (gcry_pk_verify): Ditto. - -2011-04-19 Werner Koch - - * cipher.c (gcry_cipher_open): Replace gpg_err_code_from_errno by - gpg_err_code_from_syserror. - -2011-04-11 Werner Koch - - * pubkey.c (gcry_pk_get_keygrip): Avoid double free of L2. - - * cipher.c (_gcry_cipher_setctr): Clear unused lastiv info. - (gcry_cipher_ctl) : Implement by calling - _gcry_cipher_setctr. - (do_ctr_encrypt): Save last counter and reuse it. - - * cipher.c (do_ctr_encrypt): Allow arbitrary length inputs to - match the 1.4 behaviour. - -2011-04-04 Werner Koch - - * ecc.c (compute_keygrip): Release L1 while parsing "curve". - - * pubkey.c (gcry_pk_get_keygrip): Always release NAME and L2. - Reported by Ben Kibbey. - -2011-03-28 Werner Koch - - * primegen.c (_gcry_generate_elg_prime): Make sure that PRIME is - NULL if the called func ever returns an error. - - * pubkey.c (gcry_pk_decrypt): Remove unused var PUBKEY. - -2011-03-09 Werner Koch - - * kdf.c: New. - -2011-02-22 Werner Koch - - * rijndael.c (aesni_cleanup_2_4): New. - (aesenc_xmm1_xmm0, do_aesni_ctr_4): New. - (_gcry_aes_ctr_enc): New. - * cipher.c (struct gcry_cipher_handle): Add CTR_ENC. Move field - CTR into an u_ctr union and adjust all users. - (gcry_cipher_open): Use _gcry_aes_ctr_enc. - (do_ctr_encrypt): Use bulk mode. - -2011-02-18 Werner Koch - - * rijndael.c (u32_a_t): New. - (do_encrypt_aligned, do_encrypt_aligned): Use the new type to - avoid problems with strict aliasing rules. - -2011-02-16 Werner Koch - - * rijndael.c (do_aesni_cfb) [USE_AESNI]: New. - (_gcry_aes_cfb_enc, _gcry_aes_cfb_dec) [USE_AESNI]: Use new fucntion. - -2011-02-15 Werner Koch - - * rijndael.c (do_aesni_enc_aligned, do_aesni_dec_aligned): Use - movdqa for the key but keep using movdqu for the data. - (do_aesni): Remove alignment detection. Don't burn the stack. - (aesni_prepare, aesni_cleanup): New macros. - (rijndael_encrypt, _gcry_aes_cfb_enc, _gcry_aes_cbc_enc) - (rijndael_decrypt, _gcry_aes_cfb_dec, _gcry_aes_cbc_dec): Use - these macros. Don't burn the stack in the USE_AESNI case. - (do_setkey): Add disabled code to use aeskeygenassist. - -2011-02-14 Werner Koch - - * rijndael.c (ATTR_ALIGNED_16): New - (do_aesni): Do not copy if already aligned. - (do_encrypt, do_decrypt): Ditto. - (rijndael_decrypt, rijndael_encrypt): Increase stack burning amount. - - * rijndael.c (RIJNDAEL_context): Reorder fields. Change fieldname - ROUNDS to rounds. Move padlock_key into u1. - (keySched, keySched2): Rename macros to keyscherr and keyschdec - and change all users. - (padlockkey): New macro. Change all users of padlock_key. - * cipher.c (NEED_16BYTE_ALIGNED_CONTEXT): Always define if using gcc. - (struct gcry_cipher_handle): Align U_IV to at least 16 byte. - -2011-02-13 Werner Koch - - * rijndael.c (USE_AESNI): New. Define for ia32 and gcc >= 4. - (m128i_t) [USE_AESNI]: New. - (RIJNDAEL_context) [USE_AESNI]: Add field use_aesni. - (do_setkey): Set USE_AESNI for all key lengths. - (prepare_decryption) [USE_AESNI]: Use aesimc instn if requested. - (do_aesni_enc_aligned, do_aesni_dec_aligned) - (do_aesni) [USE_AESNI]: New. - (rijndael_encrypt, _gcry_aes_cfb_enc, _gcry_aes_cbc_enc) - (rijndael_decrypt, _gcry_aes_cfb_dec) - (_gcry_aes_cbc_dec) [USE_AESNI]: Use do_aesni. - -2011-02-01 Werner Koch - - * pubkey.c (gcry_pk_get_curve): New. - (sexp_to_key): Add arg OVERRIDE_ELEMS. - (sexp_elements_extract_ecc): Allow for params only. - (gcry_pk_get_param): New. - * ecc.c (ecc_get_curve): New. - (ecc_get_param_sexp): New. - -2011-01-28 Werner Koch - - * pubkey.c (gcry_pk_genkey): Hack to insert the used curve name. - -2011-01-27 Werner Koch - - * ecc.c (fill_in_curve): Remove. - (generate_curve): Rename to .. - (fill_in_curve): this. Remove setting of NAME_OID. - (ecc_encrypt_raw): Change name of arg DATA to K for better - readability. Use ECC_public_key instead of ECC_secret_key. - Require a caller to pass a complete pkey array. - (ecc_decrypt_raw): Require a caller to pass a complete skey array. - (elliptic_curve_t): Add field NAME. - (fill_in_curve): Set field. - (generate_key): Add arg R_USED_CURVE. - (ecc_generate_ext): Return used curve name. - -2011-01-13 Andrey Jivsov (wk) - - * ecc.c (ec2os): Do not free passed parameters X and Y. Adjust - callers. - (ecc_encrypt_raw, ecc_decrypt_raw): New. - (ecdh_names, _gcry_pubkey_spec_ecdh): New. - * pubkey.c (pubkey_table): Support ECDH. - -2010-08-19 Werner Koch - - * cipher.c (gcry_cipher_open): Remove double release of the module. - Fixes bug#1263. - -2010-06-10 Jeff Johnson (wk) - - * ecc.c (ecc_generate_ext): Parse transient-key flag. - (generate_key): Add arg TRANSIENT_KEY and use it to set the random - level. - -2010-04-12 Brad Hards (wk) - - Spelling fixes. - -2010-03-26 Werner Koch - - * tiger.c (asn): Unfetter the old TIGER from an OID. - (TIGER_CONTEXT): Add field VARIANT. - (tiger_init): Factor code out to ... - (do_init): New. - (tiger1_init, tiger2_init): New. - (_gcry_digest_spec_tiger1, _gcry_digest_spec_tiger2): New. - * md.c (digest_table): Add TIGER1 and TIGER2 variants. - -2009-12-11 Werner Koch - - * sha256.c (Cho, Maj, Sum0, Sum1): Turn macros into inline - functions. - (transform): Partly unroll to interweave the chain variables - - * sha512.c (ROTR, Ch, Maj, Sum0, Sum1): Turn macros into inline - functions. - (transform): Partly unroll to interweave the chain variables. - Suggested by Christian Grothoff. - -2009-12-10 Werner Koch - - * Makefile.am (o_flag_munging): New. - (tiger.o, tiger.lo): Use it. - - * cipher.c (do_ctr_encrypt): Add arg OUTBUFLEN. Check for - suitable value. Add check for valid inputlen. Wipe temporary - memory. - (do_ctr_decrypt): Likewise. - (do_cbc_encrypt, do_cbc_decrypt): Add arg OUTBUFLEN. Check for - suitable value. Move check for valid inputlen to here; change - returned error from INV_ARG to INV_LENGTH. - (do_ecb_encrypt, do_ecb_decrypt): Ditto. - (do_cfb_encrypt, do_cfb_decrypt): Ditto. - (do_ofb_encrypt, do_ofb_decrypt): Ditto. - (cipher_encrypt, cipher_encrypt): Adjust for above changes. - (gcry_cipher_encrypt, gcry_cipher_decrypt): Simplify. - -2009-12-09 Werner Koch - - * cipher.c (gcry_cipher_open): Allow for GCRY_CIPHER_MODE_AESWRAP. - (cipher_encrypt, cipher_decrypt): Ditto. - (do_aeswrap_encrypt, do_aeswrap_decrypt): New. - (struct gcry_cipher_handle): Add field marks. - (cipher_setkey, cipher_setiv): Update marks flags. - (cipher_reset): Reset marks. - (cipher_encrypt, cipher_decrypt): Add new arg OUTBUFLEN. - (gcry_cipher_encrypt, gcry_cipher_decrypt): Pass outbuflen to - cipher_encrypt. Replace GPG_ERR_TOO_SHORT by - GPG_ERR_BUFFER_TOO_SHORT. - -2009-08-21 Werner Koch - - * dsa.c (dsa_generate_ext): Release retfactors array before - setting it to NULL. Reported by Daiko Ueno. - -2009-07-02 Werner Koch - - * md.c (md_read): Fix incomplete check for NULL. - Reported by Fabian Kail. - -2009-03-31 Werner Koch - - * rsa.c (rsa_check_secret_key): Return GPG_ERR_BAD_SECKEY and not - GPG_ERR_PUBKEY_ALGO. - -2009-02-16 Werner Koch - - * rsa.c (generate_x931): Do not initialize TBL with automatic - variables. - * whirlpool.c, tiger.c, sha256.c, sha1.c, rmd160.c, md5.c - * md4.c, crc.c: Remove memory.h. This is garbage from gnupg. - Reported by Dan Fandrich. - -2009-01-22 Werner Koch - - * ecc.c (compute_keygrip): Remove superfluous const. - -2009-01-06 Werner Koch - - * rmd160.c (oid_spec_rmd160): Add TeleTrust identifier. - -2008-12-10 Werner Koch - - * dsa.c (generate): Add arg DOMAIN and use it if specified. - (generate_fips186): Ditto. - (dsa_generate_ext): Parse and check the optional "domain" - parameter and pass them to the generate functions. - - * rijndael.c (rijndael_names): Add "AES128" and "AES-128". - (rijndael192_names): Add "AES-192". - (rijndael256_names): Add "AES-256". - -2008-12-05 Werner Koch - - * dsa.c (generate): Add arg TRANSIENT_KEY and use it to detrmine - the RNG quality needed. - (dsa_generate_ext): Parse the transient-key flag und pass it to - generate. - -2008-11-28 Werner Koch - - * dsa.c (generate_fips186): Add arg DERIVEPARMS and use the seed - value if available. - - * primegen.c (_gcry_generate_fips186_2_prime): Fix inner p loop. - -2008-11-26 Werner Koch - - * primegen.c (_gcry_generate_fips186_3_prime): New. - * dsa.c (generate_fips186): Add arg USE_FIPS186_2. - (dsa_generate_ext): Parse new flag use-fips183-2. - -2008-11-25 Werner Koch - - * dsa.c (generate_fips186): New. - (dsa_generate_ext): Use new function if derive-parms are given or - if in FIPS mode. - * primegen.c (_gcry_generate_fips186_2_prime): New. - -2008-11-24 Werner Koch - - * pubkey.c (gcry_pk_genkey): Insert code to output extrainfo. - (pubkey_generate): Add arg R_EXTRAINFO and pass it to the extended - key generation function. - * rsa.c (gen_x931_parm_xp, gen_x931_parm_xi): New. - (generate_x931): Generate params if not given. - (rsa_generate_ext): Parse use-x931 flag. Return p-q-swapped - indicator. - * dsa.c (dsa_generate_ext): Put RETFACTORS into R_EXTRAINFO if - possible. - - * pubkey.c (gcry_pk_genkey): Remove parsing of almost all - parameters and pass the parameter S-expression to pubkey_generate. - (pubkey_generate): Simplify by requitring modules to parse the - parameters. Remove the special cases for Elgamal and ECC. - (sexp_elements_extract_ecc): Add arg EXTRASPEC and use it. Fix - small memory leak. - (sexp_to_key): Pass EXTRASPEC to sexp_elements_extract_ecc. - (pubkey_table) [USE_ELGAMAL]: Add real extraspec. - * rsa.c (rsa_generate_ext): Adjust for new calling convention. - * dsa.c (dsa_generate_ext): Ditto. - * elgamal.c (_gcry_elg_generate): Ditto. Rename to elg_generate_ext. - (elg_generate): New. - (_gcry_elg_generate_using_x): Remove after merging code with - elg_generate_ext. - (_gcry_pubkey_extraspec_elg): New. - (_gcry_elg_check_secret_key, _gcry_elg_encrypt, _gcry_elg_sign) - (_gcry_elg_verify, _gcry_elg_get_nbits): Make static and remove - _gcry_ prefix. - * ecc.c (_gcry_ecc_generate): Rename to ecc_generate_ext and - adjust for new calling convention. - (_gcry_ecc_get_param): Rename to ecc_get_param and make static. - (_gcry_pubkey_extraspec_ecdsa): Add ecc_generate_ext and - ecc_get_param. - -2008-11-20 Werner Koch - - * pubkey.c (pubkey_generate): Add arg DERIVEPARMS. - (gcry_pk_genkey): Parse derive-parms and pass it to above. - * rsa.c (generate_x931): New. - (rsa_generate_ext): Add arg DERIVEPARMS and call new function in - fips mode or if DERIVEPARMS is given. - * primegen.c (_gcry_derive_x931_prime, find_x931_prime): New. - -2008-11-19 Werner Koch - - * rsa.c (rsa_decrypt): Use gcry_create_nonce for blinding. - (generate): Rename to generate_std. - -2008-11-05 Werner Koch - - * md.c (md_open): Use a switch to set the Bsize. - (prepare_macpads): Fix long key case for SHA384 and SHA512. - - * cipher.c (gcry_cipher_handle): Add field EXTRASPEC. - (gcry_cipher_open): Set it. - (gcry_cipher_ctl): Add private control code to disable weak key - detection and to return the current input block. - * des.c (_tripledes_ctx): Add field FLAGS. - (do_tripledes_set_extra_info): New. - (_gcry_cipher_extraspec_tripledes): Add new function. - (do_tripledes_setkey): Disable weak key detection. - -2008-10-24 Werner Koch - - * md.c (digest_table): Allow MD5 in fips mode. - (md_register_default): Take special action for MD5. - (md_enable, gcry_md_hash_buffer): Ditto. - -2008-09-30 Werner Koch - - * rijndael.c (do_setkey): Properly align "t" and "tk". - (prepare_decryption): Properly align "w". Fixes bug #936. - -2008-09-18 Werner Koch - - * pubkey.c (gcry_pk_genkey): Parse domain parameter. - (pubkey_generate): Add new arg DOMAIN and remove special case for - DSA with qbits. - * rsa.c (rsa_generate): Add dummy args QBITS, NAME and DOMAIN and - rename to rsa_generate_ext. Change caller. - (_gcry_rsa_generate, _gcry_rsa_check_secret_key) - (_gcry_rsa_encrypt, _gcry_rsa_decrypt, _gcry_rsa_sign) - (_gcry_rsa_verify, _gcry_rsa_get_nbits): Make static and remove - _gcry_ prefix. - (_gcry_pubkey_spec_rsa, _gcry_pubkey_extraspec_rsa): Adjust names. - * dsa.c (dsa_generate_ext): New. - (_gcry_dsa_generate): Replace code by a call to dsa_generate. - (_gcry_dsa_check_secret_key, _gcry_dsa_sign, _gcry_dsa_verify) - (_gcry_dsa_get_nbits): Make static and remove _gcry prefix. - (_gcry_dsa_generate2): Remove. - (_gcry_pubkey_spec_dsa): Adjust to name changes. - (_gcry_pubkey_extraspec_rsa): Add dsa_generate_ext. - -2008-09-16 Werner Koch - - * ecc.c (run_selftests): Add arg EXTENDED. - -2008-09-12 Werner Koch - - * rsa.c (test_keys): Do a bad case signature check. - * dsa.c (test_keys): Do a bad case check. - - * cipher.c (_gcry_cipher_selftest): Add arg EXTENDED and pass it - to the called tests. - * md.c (_gcry_md_selftest): Ditto. - * pubkey.c (_gcry_pk_selftest): Ditto. - * rijndael.c (run_selftests): Add arg EXTENDED and pass it to the - called tests. - (selftest_fips_128): Add arg EXTENDED and run only one test - non-extended mode. - (selftest_fips_192): Add dummy arg EXTENDED. - (selftest_fips_256): Ditto. - * hmac-tests.c (_gcry_hmac_selftest): Ditto. - (run_selftests): Ditto. - (selftests_sha1): Add arg EXTENDED and run only one test - non-extended mode. - (selftests_sha224, selftests_sha256): Ditto. - (selftests_sha384, selftests_sha512): Ditto. - * sha1.c (run_selftests): Add arg EXTENDED and pass it to the - called test. - (selftests_sha1): Add arg EXTENDED and run only one test - non-extended mode. - * sha256.c (run_selftests): Add arg EXTENDED and pass it to the - called tests. - (selftests_sha224): Add arg EXTENDED and run only one test - non-extended mode. - (selftests_sha256): Ditto. - * sha512.c (run_selftests): Add arg EXTENDED and pass it to the - called tests. - (selftests_sha384): Add arg EXTENDED and run only one test - non-extended mode. - (selftests_sha512): Ditto. - * des.c (run_selftests): Add arg EXTENDED and pass it to the - called test. - (selftest_fips): Add dummy arg EXTENDED. - * rsa.c (run_selftests): Add dummy arg EXTENDED. - - * dsa.c (run_selftests): Add dummy arg EXTENDED. - - * rsa.c (extract_a_from_sexp): New. - (selftest_encr_1024): Check that the ciphertext does not match the - plaintext. - (test_keys): Improve tests and return an error status. - (generate): Return an error if test_keys fails. - * dsa.c (test_keys): Add comments and return an error status. - (generate): Return an error if test_keys failed. - -2008-09-11 Werner Koch - - * rsa.c (_gcry_rsa_decrypt): Return an error instead of calling - BUG in case of a practically impossible condition. - (sample_secret_key, sample_public_key): New. - (selftest_sign_1024, selftest_encr_1024): New. - (selftests_rsa): Implement tests. - * dsa.c (sample_secret_key, sample_public_key): New. - (selftest_sign_1024): New. - (selftests_dsa): Implement tests. - -2008-09-09 Werner Koch - - * hmac-tests.c (selftests_sha1): Add tests. - (selftests_sha224, selftests_sha384, selftests_sha512): Make up tests. - - * hash-common.c, hash-common.h: New. - * sha1.c (selftests_sha1): Add 3 tests. - * sha256.c (selftests_sha256, selftests_sha224): Ditto. - * sha512.c (selftests_sha512, selftests_sha384): Ditto. - -2008-08-29 Werner Koch - - * pubkey.c (gcry_pk_get_keygrip): Remove the special case for RSA - and check whether a custom computation function has been setup. - * rsa.c (compute_keygrip): New. - (_gcry_pubkey_extraspec_rsa): Setup this function. - * ecc.c (compute_keygrip): New. - (_gcry_pubkey_extraspec_ecdsa): Setup this function. - -2008-08-28 Werner Koch - - * cipher.c (cipher_decrypt, cipher_encrypt): Return an error if - mode NONE is used. - (gcry_cipher_open): Allow mode NONE only with a debug flag set and - if not in FIPS mode. - -2008-08-26 Werner Koch - - * pubkey.c (pubkey_generate): Add arg KEYGEN_FLAGS. - (gcry_pk_genkey): Implement new parameter "transient-key" and - pass it as flags to pubkey_generate. - (pubkey_generate): Make use of an ext_generate function. - * rsa.c (generate): Add new arg transient_key and pass appropriate - args to the prime generator. - (_gcry_rsa_generate): Factor all code out to ... - (rsa_generate): .. new func with extra arg KEYGEN_FLAGS. - (_gcry_pubkey_extraspec_ecdsa): Setup rsa_generate. - * primegen.c (_gcry_generate_secret_prime) - (_gcry_generate_public_prime): Add new arg RANDOM_LEVEL. - -2008-08-21 Werner Koch - - * primegen.c (_gcry_generate_secret_prime) - (_gcry_generate_public_prime): Use a constant macro for the random - level. - -2008-08-19 Werner Koch - - * pubkey.c (sexp_elements_extract_ecc) [!USE_ECC]: Do not allow - allow "curve" parameter. - -2008-08-15 Werner Koch - - * pubkey.c (_gcry_pk_selftest): New. - * dsa.c (selftests_dsa, run_selftests): New. - * rsa.c (selftests_rsa, run_selftests): New. - * ecc.c (selftests_ecdsa, run_selftests): New. - - * md.c (_gcry_md_selftest): New. - * sha1.c (run_selftests, selftests_sha1): New. - * sha256.c (selftests_sha224, selftests_sha256, run_selftests): New. - * sha512.c (selftests_sha384, selftests_sha512, run_selftests): New. - - * des.c (selftest): Remove static variable form selftest. - (des_setkey): No on-the-fly self test in fips mode. - (tripledes_set3keys): Ditto. - - * cipher.c (_gcry_cipher_setkey, _gcry_cipher_setiv): - - * dsa.c (generate): Bail out in fips mode if NBITS is less than 1024. - * rsa.c (generate): Return an error code if the the requested size - is less than 1024 and we are in fpis mode. - (_gcry_rsa_generate): Take care of that error code. - - * ecc.c (generate_curve): In fips mode enable only NIST curves. - - * cipher.c (_gcry_cipher_selftest): New. - - * sha512.c (_gcry_digest_extraspec_sha384) - (_gcry_digest_extraspec_sha512): New. - * sha256.c (_gcry_digest_extraspec_sha224) - (_gcry_digest_extraspec_sha256): New. - * sha1.c (_gcry_digest_extraspec_sha1): New. - * ecc.c (_gcry_pubkey_extraspec_ecdsa): New. - * dsa.c (_gcry_pubkey_extraspec_dsa): New. - * rsa.c (_gcry_pubkey_extraspec_rsa): New. - * rijndael.c (_gcry_cipher_extraspec_aes) - (_gcry_cipher_extraspec_aes192, _gcry_cipher_extraspec_aes256): New. - * des.c (_gcry_cipher_extraspec_tripledes): New. - - * cipher.c (gcry_cipher_register): Rename to _gcry_cipher_register. - Add arg EXTRASPEC. - (dummy_extra_spec): New. - (cipher_table_entry): Add extraspec field. - * md.c (_gcry_md_register): Rename to _gcry_md_register. Add - arg EXTRASPEC. - (dummy_extra_spec): New. - (digest_table_entry): Add extraspec field. - * pubkey.c (gcry_pk_register): Rename to _gcry_pk_register. Add - arg EXTRASPEC. - (dummy_extra_spec): New. - (pubkey_table_entry): Add extraspec field. - - * ac.c: Let most public functions return GPG_ERR_UNSUPPORTED in - fips mode. - - * pubkey.c (pubkey_table_entry): Add field FIPS_ALLOWED and mark - appropriate algorithms. - (dummy_generate, dummy_check_secret_key, dummy_encrypt) - (dummy_decrypt, dummy_sign, dummy_verify, dummy_get_nbits): Signal - a fips error when used. - (gcry_pk_register): In fips mode do not allow to register new - algorithms. - - * md.c (digest_table): Add field FIPS_ALLOWED and mark appropriate - algorithms. - (md_register_default): In fips mode register only fips algorithms. - (gcry_md_register): In fips mode do not allow to register new - algorithms. - (gcry_md_get): Signal a fips error if called. - (gcry_md_hash_buffer): Do not allow rmd160 when not in fips mode. - (md_start_debug): Disable in fips_mode. - - * md.c (gcry_md_register_default): Rename to .. - (md_register_default): .. this. - (md_digest): Remove this commented fucntion. - * pubkey.c (gcry_pk_register_default): Rename to .. - (pk_register_default): .. this. - - * cipher.c (cipher_table_entry): Add field FIPS_ALLOWED. - (gcry_cipher_register_default): Register only fips approved - algorithms. - (gcry_cipher_register): Do not allow to register new ciphers. - (cipher_setiv): Signal fips error. - - * cipher (gcry_cipher_register_default): Rename to .. - (cipher_register_default): .. this. - (REGISTER_DEFAULT_CIPHERS): Adjust for that change. - -2008-07-05 Werner Koch - - * random-daemon.c, random.h, rndhw.c, rndunix.c, rand-internal.h - * random.c, rndegd.c, rndlinux.c, rndw32.c: Move to ../cipher. - * Makefile.am: Remove random stuff. - -2008-06-24 Szakats Istvan (wk) - - * ac.c (_gcry_ac_key_destroy, _gcry_ac_key_pair_generate): Relase - some more memory. - -2008-04-22 Werner Koch - - * rijndael.c (_gcry_aes_cfb_enc, _gcry_aes_cbc_enc) - (_gcry_aes_cfb_dec, _gcry_aes_cbc_dec): Use Padlock if possible. - -2008-04-18 Werner Koch - - * sha1.c (transform_aligned): Remove. That is will obviosuly not - work because we need a scratch working area and our internal API - does not allow to modify the buffers. - - * rijndael.c: Factor tables out to .. - * rijndael-tables.h: .. new. - - * ac.c (ac_data_extract): Make static. - - * camellia.h [HAVE_CONFIG_H]: Include config.h. - - * rndw32.c (registry_poll): Only print the performance data - problem warning once. Suggested by Simon Josefsson. - -2008-03-19 Werner Koch - - * cipher.c (gcry_cipher_open) [USE_AES]: Init bulk encryption only - if requested. Suggested by Dirk Stoecker. - -2008-03-18 Werner Koch - - * sha1.c: Include stdint.h. - (transform): Add arg NBLOCKS so that we can work on more than one - block and avoid updates of the chaining variables. Changed all - callers to use 1. - (sha1_write): Replace loop around transform. - (transform_aligned) [WORDS_BIGENDIAN]: New. - (TRANSFORM): New macro to replace all direct calls of transform. - -2008-03-17 Werner Koch - - * rijndael.c (_gcry_aes_cfb_dec): New. - (do_encrypt): Factor code out to .. - (do_encrypt_aligned): .. New. - (_gcry_aes_cfb_enc, _gcry_aes_cfb_dec): Use new function. - (do_decrypt): Factor code out to .. - (do_decrypt_aligned): .. new. - (_gcry_aes_cbc_enc, _gcry_aes_cbc_dec): New. - * cipher.c (struct gcry_cipher_handle): Put field IV into new - union U_IV to enforce proper alignment. Change all users. - (do_cfb_decrypt): Optimize. - (do_cbc_encrypt, do_cbc_decrypt): Optimize. - -2008-03-15 Werner Koch - - * rijndael.c (_gcry_aes_cfb_enc): New. - * cipher.c (struct gcry_cipher_handle): Add field ALGO and BULK. - (gcry_cipher_open): Set ALGO and BULK. - (do_cfb_encrypt): Optimize. - -2008-02-18 Werner Koch - - * rsa.c (_gcry_rsa_verify) [IS_DEVELOPMENT_VERSION]: Print - intermediate results. - -2008-01-08 Werner Koch - - * random.c (add_randomness): Do not just increment - POOL_FILLED_COUNTER but update it by the actual amount of data. - -2007-12-13 Werner Koch - - * pubkey.c (sexp_data_to_mpi): Support SHA-224. - -2007-12-05 Werner Koch - - * rijndael.c (USE_PADLOCK): Depend on ENABLE_PADLOCK_SUPPORT. - * rndhw.c (USE_PADLOCK): Ditto - - * rsa.c (secret): Fixed condition test for using CRT. Reported by - Dean Scarff. Fixes bug#864. - (_gcry_rsa_check_secret_key): Return an erro if the optional - parameters are missing. - * pubkey.c (sexp_elements_extract): Add arg ALGO_NAME. Changed all - callers to pass NULL. Add hack to allow for optional RSA - parameters. - (sexp_to_key): Pass algo name to sexp_elements_extract. - -2007-12-03 Werner Koch - - * random.c (gcry_random_add_bytes): Implement it. - * rand-internal.h (RANDOM_ORIGIN_EXTERNAL): New. - -2007-11-30 Werner Koch - - * rndhw.c: New. - * rndlinux.c (_gcry_rndlinux_gather_random): Try to read 50% - directly from the hwrng. - * random.c (do_fast_random_poll): Also run the hw rng fast poll. - (_gcry_random_dump_stats): Tell whether the hw rng failed. - -2007-11-29 Werner Koch - - * rijndael.c (USE_PADLOCK): Define new macro used for ia32. - (RIJNDAEL_context) [USE_PADLOCK]: Add fields USE_PADLOCK and - PADLOCK_KEY. - (do_setkey) [USE_PADLOCK]: Enable padlock if available for 128 bit - AES. - (do_padlock) [USE_PADLOCK]: New. - (rijndael_encrypt, rijndael_decrypt) [USE_PADLOCK]: Divert to - do_padlock. - * cipher.c (cipher_context_alignment_t): New. Use it in this - module in place of PROPERLY_ALIGNED_TYPE. - (NEED_16BYTE_ALIGNED_CONTEXT): Define macro for ia32. - (struct gcry_cipher_handle): Add field HANDLE_OFFSET. - (gcry_cipher_open): Take care of increased alignment requirements. - (gcry_cipher_close): Ditto. - -2007-11-28 Werner Koch - - * sha256.c (asn224): Fixed wrong template. It happened due to a - bug in RFC4880. SHA-224 is not in the stable version of libgcrypt - so the consequences are limited to users of this devel version. - -2007-10-31 Werner Koch - - * ac.c (gcry_ac_data_new): Remove due to the visibility wrapper. - (gcry_ac_data_destroy, gcry_ac_data_copy, gcry_ac_data_length) - (gcry_ac_data_set, gcry_ac_data_get_name, gcry_ac_data_get_index) - (gcry_ac_data_to_sexp, gcry_ac_data_from_sexp) - (gcry_ac_data_clear, gcry_ac_io_init, gcry_ac_open) - (gcry_ac_close, gcry_ac_key_init, gcry_ac_key_pair_generate) - (gcry_ac_key_pair_extract, gcry_ac_key_destroy) - (gcry_ac_key_pair_destroy, gcry_ac_key_data_get) - (gcry_ac_key_test, gcry_ac_key_get_nbits, gcry_ac_key_get_grip) - (gcry_ac_data_encrypt, gcry_ac_data_decrypt, gcry_ac_data_sign) - (gcry_ac_data_verify, gcry_ac_data_encode, gcry_ac_data_decode) - (gcry_ac_mpi_to_os, gcry_ac_mpi_to_os_alloc, gcry_ac_os_to_mpi) - (gcry_ac_data_encrypt_scheme, gcry_ac_data_decrypt_scheme) - (gcry_ac_data_sign_scheme, gcry_ac_data_verify_scheme) - (gcry_ac_io_init_va): Ditto. - (gcry_ac_id_to_name, gcry_ac_name_to_id): Remove as these - deprecated functions are now implemented by visibility.c. - -2007-10-26 Werner Koch - - * rndw32.c: Disable debug flag. - -2007-10-25 Werner Koch - - * rndw32.c: Updated from current cryptlib snapshot and modified - for our use. Removed support from pre NT systems. - (slow_gatherer_windows95): Remove. - (_gcry_rndw32_gather_random): Require an NT platform. - (init_system_rng, read_system_rng, read_mbm_data): New. - (slow_gatherer_windowsNT): Rename to ... - (slow_gatherer): .. this. Read system RNG and MBM. - (registry_poll): New with code factored out from slow_gatherer. - -2007-08-23 Werner Koch - - * random.c (pool_filled_counter): New. - (add_randomness): Use it. - -2007-08-22 Werner Koch - - * rndw32.c, rndunix.c: Switched to LGPL. - -2007-05-30 Werner Koch - - * camellia.h, camellia.c: Replace by new LGPL version and adjusted - camellia.h. - -2007-05-09 Marcus Brinkmann - - * ac.c (_gcry_ac_io_init_va, _gcry_ac_io_write, _gcry_ac_io_read): - Adjust users of gcry_ac_io_t because union is not anonymous - anymore. - -2007-05-02 Werner Koch - - * camellia-glue.c (camellia_setkey, camellia_encrypt) - (camellia_decrypt): Recalculated used stack size in called - functions. - * camellia.h: Redefine external symbols. - -2007-05-02 David Shaw - - * Makefile.am, cipher.c: Add Camellia. - - * camellia-glue.c: New. The necessary glue to interface libgcrypt - to the stock NTT Camellia distribution. - - * camellia.h, camellia.c: The stock NTT Camellia distribution - (GPL). - -2007-04-30 David Shaw - - * cipher.c: Use #if instead of #ifdef as configure defines the - USE_cipher defines as 0 for disabled. - -2007-04-30 Werner Koch - - * rndegd.c (_gcry_rndegd_set_socket_name): New. - -2007-04-30 Marcus Brinkmann - - * ecc.c (ec2os): Fix relocation of short numbers. - - * ecc.c (generate_key): Do not allocate D, which will be allocated - by GEN_K. Remove G. Fix test if g_x, g_y resp. q_x, q_y are - requested. - (_gcry_ecc_generate): Release unneeded members of SK. - * pubkey.c (sexp_to_key): Release NAME. - -2007-04-28 Marcus Brinkmann - - * ac.c (gcry_ac_mpi): Remove member NAME_PROVIDED. - (ac_data_mpi_copy, _gcry_ac_data_set, _gcry_ac_data_get_name) - (_gcry_ac_data_get_index, ac_data_construct): Adjust handling of - NAME accordingly. - -2007-04-20 Werner Koch - - * ecc.c (domain_parms): Add standard brainpool curves. - -2007-04-18 Werner Koch - - * ecc.c (generate_curve): Implement alias mechanism. - - * pubkey.c (sexp_elements_extract_ecc): New. - (sexp_to_key): Add special case for ecc. - (sexp_to_key, sexp_to_sig, sexp_to_enc, gcry_pk_genkey): Replace - name_terminated stuff by a call to _gcry_sexp_nth_string. - (gcry_pk_get_keygrip): Ditto. - -2007-04-16 Werner Koch - - * ecc.c (_gcry_ecc_generate): Renamed DUMMY to CURVE and use it. - -2007-04-13 Marcus Brinkmann - - * ac.c (ac_data_construct): Cast const away to suppress compiler - warning. - - * ecc.c (ecc_generate): Avoid compiler warning for unused argument - DUMMY. - (ecc_verify): Avoid compiler warning for unused arguments CMP and - OPAQUEV. - -2007-04-06 Werner Koch - - * sha1.c (oid_spec_sha1): Add another oid from X9.62. - -2007-03-28 Werner Koch - - * pubkey.c (gcry_pk_genkey): Do not issue misc-key-info if it is - empty. - (gcry_pk_genkey): New parameter "curve". - - * ecc.c: Entirely rewritten with only a few traces of the old - code left. - (_gcry_ecc_generate): New. - (generate_key) New arg NAME. - (generate_curve): Ditto. Return actual number of NBITS. - -2007-03-26 Werner Koch - - * pubkey.c (gcry_pk_genkey): Increase size of SKEY array and add a - runtime bounds check. - -2007-03-23 Werner Koch - - * ecc.c (ecc_ctx_init, ecc_ctx_free, ecc_mod, ecc_mulm): New. - (duplicate_point, sum_points, escalar_mult): Don't use a - copy of base->p. Replaced all mpi_mulm by ecc_mulm so that we can - experiment with different algorithms. - (generate_key, check_secret_key, sign, verify): Initialize a - computation context for use by ecc_mulm. - -2007-03-22 Werner Koch - - * pubkey.c (pubkey_table): Initialize ECC. - * Makefile.am (EXTRA_libcipher_la_SOURCES): Add ecc.c. - * ecc.c: New. Heavily reformatted and changed for use in libgcrypt. - (point_init): New. - (escalar_mult): Make arg R the first arg to be similar to the mpi - functions. - (duplicate_point): Ditto - (sum_points): Ditto - (sign, verify): Remove unneeded copy operations. - (sum_points): Removed memory leaks and optimized some compares. - (verify): Simplified input check. - -2007-03-14 Werner Koch - - * random.c (MASK_LEVEL): Removed macro as it was used only at one - place. Open coded it there. - (gcry_randomize, _gcry_update_random_seed_file) - (_gcry_fast_random_poll): Factor lock code out to .. - (lock_pool, unlock_pool): .. new. - (initialize): Look the pool while allocating. - (read_random_source, do_fast_random_poll): Moved intialization to ... - (initialize): .. here. - (_gcry_enable_quick_random_gen): No more need for initialization. - (is_initialized): Moved this global flag to .. - (initialize): .. here and changed all users to unconditionally call - initialize. - (add_randomness): Remove initalization here. It simply can't - happen. - - * random.c (enum random_origins): Moved to .. - * rand-internal.h: .. here. - * rndunix.c (_gcry_rndunix_gather_random): Use enum in prototype - for ORIGIN and renamed REQUESTOR to ORIGIN. - * rndegd.c (_gcry_rndegd_gather_random): Ditto. - * rndlinux.c (_gcry_rndlinux_gather_random): Ditto. - * rndw32.c (_gcry_rndw32_gather_random): Ditto. - (_gcry_rndw32_gather_random_fast): Ditto. - -2007-03-13 Werner Koch - - * random.c (enum random_origins): New. - (add_randomness): Renamed arg SOURCE to ORIGIN. - (read_random_source): Renamed arg REQUESTOR to ORIGIN. - (getfnc_gather_random): Removed static variable because this - function is only called one and thus we don't need this - optimization. - (_gcry_quick_random_gen): Removed and replaced by.. - (_gcry_enable_quick_random_gen): .. this. It is onlyu used to - enable it and it does not make sense to disable it later. Changed - the only one caller too. - (get_random_bytes): Removed. - (gcry_random_bytes, gcry_random_bytes_secure): Implement in terms - of gcry_randomize. - * random-daemon.c (_gcry_daemon_get_random_bytes): Removed. - -2007-02-23 Werner Koch - - * elgamal.c (generate): Removed unused variable TEMP. - (test_keys): New arg NODIE. - (generate_using_x, _gcry_elg_generate_using_x): New. - * pubkey.c (pubkey_generate): New arg XVALUE and direct call to - the new elgamal generate fucntion. - (gcry_pk_genkey): Parse the new "xvalue" tag. - -2007-02-22 Werner Koch - - * pubkey.c (sexp_data_to_mpi): Handle dynamically allocated - algorithms. Suggested by Neil Dunbar. Fixes bug#596. - - * rndw32.c (_gcry_rndw32_gather_random_fast): Make it return void. - - * cipher.c (gcry_cipher_algo_name): Simplified. - - * random.c: Use the daemon only if compiled with USE_RANDOM_DAEMON. - - * Makefile.am (libcipher_la_SOURCES): Build random-daemon support - only if requested. - -2007-02-21 Werner Koch - - * random.c (rndpool, keypool): Make unsigned. - (mix_pool): Change char* variables to unsigned char*. - (gcry_randomize): Make arg BUFFER a void*. - (gcry_create_nonce): Ditto. - - * rmd160.c (gcry_rmd160_mixblock): Make BUFFER a void*. - (_gcry_rmd160_hash_buffer): Make OUTBUF and BUFFER void*. - * sha1.c (_gcry_sha1_hash_buffer): Ditto. - - * cipher.c (gcry_cipher_encrypt, cry_cipher_decrypt): Change - buffer args to void*. - (gcry_cipher_register): Make ALGORITHM_ID a int *. - - * md.c (md_start_debug): Make SUFFIX a const char*. Use snprintf. - (gcry_md_debug): New. - (gcry_md_ctl): Changed arg BUFFER from unsigned char*. - - * md.c (md_write): Make INBUF a const void*. - (gcry_md_write): Remove needless cast. - * crc.c (crc32_write): Make INBUF a const void* - (update_crc32, crc24rfc2440_write): Ditto. - * sha512.c (sha512_write, transform): Ditto. - * sha256.c (sha256_write, transform): Ditto. - * rmd160.c (rmd160_write, transform): Ditto. - * md5.c (md5_write, transform): Ditto. - * md4.c (md4_write, transform): Ditto. - * sha1.c (sha1_write, transform): Ditto. - - * tiger.c (tiger_write, transform): Ditto. - * whirlpool.c (whirlpool_write, whirlpool_add, transform): Ditto. - - * elgamal.c (elg_names): Change to a const*. - * dsa.c (dsa_names): Ditto. - * rsa.c (rsa_names): Ditto. - * pubkey.c (gcry_pk_lookup_func_name): Make ALIASES a const. - -2007-02-20 Werner Koch - - * rndlinux.c (open_device): Remove unsused arg MINOR. - -2007-01-30 Werner Koch - - * sha256.c (oid_spec_sha256): Add alias from pkcs#1. - * sha512.c (oid_spec_sha512): Ditto. - (oid_spec_sha384): Ditto. - -2006-12-18 Werner Koch - - * rndlinux.c (set_cloexec_flag): New. - (open_device): Set close-on-exit flags. Suggested by Max - Kellermann. Fixes Debian#403613. - - * Makefile.am (AM_CPPFLAGS, AM_CFLAGS): Splitted and merged - Moritz' changes. - (INCLUDES): Removed. - -2006-11-30 Werner Koch - - * serpent.c (byte_swap_32): Remove trailing semicolon. - -2006-11-15 Werner Koch - - * Makefile.am (INCLUDES): Include ../src/ - -2006-11-03 Werner Koch - - * random.c [HAVE_GETTIMEOFDAY]: Included sys/time.h and not - sys/times.h. Reported by Rafaël Carré. - -2006-11-05 Moritz Schulte - - * Makefile.am (AM_CFLAGS): Added -I$(top_builddir)/src so that the - new gcrypt.h is used, not the one installed in the system. - -2006-10-25 Werner Koch - - * primegen.c (prime_generate_internal): Tweaked use of secure - memory and entropy use. Safe unused primes from the pool. Allocate - at least a pool of 30. - (save_pool_prime, get_pool_prime): New. - -2006-10-23 Werner Koch - - * ac.c (_gcry_ac_data_from_sexp): Reset sexp_tmp for failsafe - means. Release sexp_cur if needed. Reported by Dirk Stoecker. - - * pubkey.c (pubkeys_registered_lock): Intialized it. It is not - realy needed because this is a mere initialization to 0 anyway. - Noted by Victor Stinner. - -2006-10-17 Werner Koch - - * dsa.c (_gcry_dsa_generate2): New. - (generate): New arg QBITS. Add sanity checks for reasonable qbits - and nbits. - * pubkey.c (gcry_pk_genkey): Parse an qbits element. - (pubkey_generate): New arg QBITS. Pass it to the DSA generation. - -2006-10-05 Werner Koch - - * md.c (gcry_md_algo_info) : Check that the algo is - available. - -2006-10-04 David Shaw (wk) - - * tiger.c (round): Rename to tiger_round as gcc 4 has a built-in - round function that this conflicts with. - -2006-09-11 Werner Koch - - * rndw32.c (slow_gatherer_windowsNT): While adding data use the - size of the diskPerformance and not its address. Has been fixed in - GnuPG more than a year ago. Noted by Lee Fisher. - -2006-08-30 Werner Koch - - * pubkey.c (sexp_data_to_mpi): Need to allow "ripemd160" here as - this is the canonical name. - -2006-08-29 Hye-Shik Chang (wk) - - * seed.c: New. - -2006-08-03 Werner Koch - - * random-daemon.c (_gcry_daemon_initialize_basics): Don't - initialize the socket. Remove arg SOCKETNAME. - (connect_to_socket): Make sure that daemon is set to -1 on error. - (call_daemon): Initialize the socket on the first call. - (_gcry_daemon_randomize, _gcry_daemon_get_random_bytes) - (_gcry_daemon_create_nonce): New arg SOCKETNAME. - * random.c (initialize): Call new daemon initializator. - (get_random_bytes, gcry_randomize, gcry_create_nonce): Pass socket - name to daemon call and reset allow_daemon on failure. - -2006-07-26 Werner Koch - - * rmd160.c (_gcry_rmd160_mixblock): Add cast to transform call. - - * blowfish.c (selftest): Cast string to usnigned char*. - - * primegen.c (prime_generate_internal): Cast unsigned/char* - mismatch in calling m_out_of_n. - (is_prime): Changed COUNT to unsigned int *. - - * ac.c (_gcry_ac_data_copy): Initialize DATA_MPIS. - - * random.c (gcry_create_nonce): Update the pid after a fork. - Reported by Uoti Urpala. - -2006-07-04 Marcus Brinkmann - - * sha512.c: Fix typo in copyright notice. - -2006-06-21 Werner Koch - - * rsa.c (_gcry_rsa_generate): Replace xcalloc by calloc. - * pubkey.c (gcry_pk_encrypt, gcry_pk_sign): Ditto. - (sexp_to_key, sexp_to_sig, sexp_to_enc, gcry_pk_encrypt) - (gcry_pk_sign, gcry_pk_genkey, gcry_pk_get_keygrip): Ditto. - * md.c (md_copy): Ditto. - -2006-04-22 Moritz Schulte - - * random-daemon.c (_gcry_daemon_initialize_basics): New argument: - SOCKETNAME. Passing on to connect_to_socket() if non-NULL. - (connect_to_socket, writen, readn, call_daemon): New functions. - (_gcry_daemon_randomize, _gcry_daemon_get_random_bytes) - (_gcry_daemon_create_nonce): Call call_daemon(). - (RANDOM_DAEMON_SOCKET): New symbol. - (daemon_socket): New static variable. - - * random.h (_gcry_daemon_initialize_basics): New parameter: - SOCKETNAME. - (_gcry_set_random_daemon_socket): New declaration. - - * random.c (initialize_basics): Pass DAEMON_SOCKET_NAME to - _gcry_daemon_initialize_basics. - (_gcry_set_random_daemon_socket): New function, setting - DAEMON_SOCKET_NAME. - -2006-04-01 Moritz Schulte - - * ac.c (eme_pkcs_v1_5_encode): Use KEY_SIZE directly, no need to - call gcry_ac_key_get_nbits. - (eme_pkcs_v1_5_decode): Likewise. - (ac_es_dencode_prepare_pkcs_v1_5): Fill options_em structure with - key_size. - (_gcry_ac_data_dump, gcry_ac_data_dump): New functions. - (_gcry_ac_data_to_sexp, _gcry_ac_data_from_sexp): More or less - rewritten; changed S-Expression format so that it matches the one - used in pubkey.c. - -2006-03-15 Werner Koch - - * random-daemon.c: New. - * random.c (_gcry_use_random_daemon): New. - (get_random_bytes, gcry_randomize, gcry_create_nonce): Try - diverting to the daemon functions. - -2006-03-14 Werner Koch - - * random.c (lock_seed_file): New. - (read_seed_file, _gcry_update_random_seed_file): Use it. - - * random.c (gcry_create_nonce): Detect a fork and re-seed. - (read_pool): Fixed the fork detection; it used to work only for - multi-threaded processes. - -2006-03-12 Brad Hards (wk) - - * md.c (md_open): Use new variable macpads_Bsize instead of - hardwiring the block size. Changed at all places. - -2006-03-10 Brad Hards (wk, patch 2005-04-22) - - * md.c, sha256.c: Add support for SHA-224. - (sha224_init): New. - -2006-01-18 Brad Hards (wk 2006-03-07) - - * cipher.c (cipher_encrypt, cipher_decrypt, do_ofb_encrypt) - (do_ofb_decrypt, gcry_cipher_open): Implement Output Feedback Mode. - -2005-11-02 Moritz Schulte - - * pubkey.c (gcry_pk_algo_name): Return "?" instead of NULL for - unknown algorithm IDs. - * cipher.c (cipher_algo_to_string): Likewise. - -2005-11-01 Moritz Schulte - - * pubkey.c (gcry_pk_algo_info): Don't forget to break after switch - case. - -2005-09-19 Werner Koch - - * dsa.c (generate): Add preliminary support for 2 and 4 keys. - Return an error code if the key size is not supported. - (_gcry_dsa_generate): Return an error. - -2005-08-22 Werner Koch - - * primegen.c (check_prime): New arg RM_ROUNDS. - (prime_generate_internal): Call it here with 5 rounds as used - before. - (gcry_prime_check): But here with 64 rounds. - (is_prime): Make sure never to use less than 5 rounds. - -2005-04-16 Moritz Schulte - - * ac.c (_gcry_ac_init): New function. - -2005-04-12 Moritz Schulte - - * ac.c (_gcry_ac_io_write, _gcry_ac_io_read): Initialize err to - make the compiler happy. - Always use errno, now that gcry_malloc() is guaranteed to set - errno on failure. - (_gcry_ac_data_to_sexp): Don't forget to goto out after error in - loop. - (_gcry_ac_data_to_sexp): Remove unused variable: mpi_list; - (_gcry_ac_data_to_sexp): Always deallocate sexp_buffer. - (_gcry_ac_data_from_sexp): Don't forget to initialize data_set_new. - (_gcry_ac_data_from_sexp): Handle special case, which is - necessary, since gcry_sexp_nth() does not distinguish between - "element does not exist" and "element is the empty list". - (_gcry_ac_io_init_va): Use assert to make sure that mode and type - are correct. - Use gcry_error_t types where gcry_err_code_t types have been used - before. - -2005-04-11 Moritz Schulte - - * ac.c (_gcry_ac_data_sign_scheme): Don't forget to initialize - buffer. - - * whirlpool.c: New file. - * md.c (digest_table): Add whirlpool. - * Makefile.am (EXTRA_libcipher_la_SOURCES): Added: whirlpool.c. - -2005-03-30 Moritz Schulte - - * ac.c (_gcry_ac_data_from_sexp): Use length of SEXP_CUR, not - length of SEXP; do not forget to set SEXP_TMP to NULL after it has - been released. - - (struct gcry_ac_mpi): New member: name_provided. - (_gcry_ac_data_set): Rename variable `name_final' to `name_cp'; - remove const qualifier; change code to not cast away const - qualifiers; use name_provided member as well. - (_gcry_ac_data_set, _gcry_ac_data_get_name): Use name_provided - member of named mpi structure. - - (gcry_ac_name_to_id): Do not forget to initialize err. - (_gcry_ac_data_get_index): Do not forget to initialize mpi_return; - use gcry_free() instead of free(); remove unnecessary cast; rename - mpi_return and name_return to mpi_cp and name_cp; adjust code. - (ac_data_mpi_copy): Do not cast away const qualifier. - (ac_data_values_destroy): Likewise. - (ac_data_construct): Likewise. - - (ac_data_mpi_copy): Initialize flags to GCRY_AC_FLAG_DEALLOC. - (ac_data_extract): Use GCRY_AC_FLAG_DEALLOC instead of - GCRY_AC_FLAG_COPY. - - (_gcry_ac_io_init_va, _gcry_ac_io_init, gcry_ac_io_init) - (gcry_ac_io_init_va, _gcry_ac_io_write, _gcry_ac_io_read) - (_gcry_ac_io_read_all, _gcry_ac_io_process): New functions. - (gry_ac_em_dencode_t): Use gcry_ac_io_t in prototype instead of - memroy strings directly; adjust encode/decode functions to use io - objects. - (emsa_pkcs_v1_5_encode_data_cb): New function ... - (emsa_pkcs_v1_5_encode): ... use it here. - (ac_data_dencode): Use io objects. - (_gcry_ac_data_encode, _gcry_ac_data_decode, gcry_ac_data_encode) - (gcry_ac_data_decode): Likewise. - (_gcry_ac_data_encrypt_scheme, gcry_ac_data_encrypt_scheme) - (_gcry_ac_data_decrypt_scheme, gcry_ac_data_decrypt_scheme) - (_gcry_ac_data_sign_scheme, gcry_ac_data_sign_scheme) - (_gcry_ac_data_verify_scheme, gcry_ac_data_verify_scheme): - Likewise. - -2005-03-23 Werner Koch - - * rndw32.c (_gcry_rndw32_gather_random_fast): While adding data - use the size of the object and not the one of its address. Bug - reported by Sascha Kiefer. - -2005-03-19 Moritz Schulte - - * cipher.c (do_cbc_encrypt): Be careful to not overwrite data, - which is to be used later on. This happend, in case CTS is - enabled and OUTBUF is equal to INBUF. - -2005-02-25 Werner Koch - - * pubkey.c (gcry_pk_get_keygrip): Allow for shadowed-private-key. - -2005-02-13 Moritz Schulte - - * serpent.c: Updated from 1.2 branch: - - s/u32_t/u32/ and s/byte_t/byte/. Too match what we have always - used and are using in all other files too - (serpent_test): Moved prototype out of a fucntion. - -2005-02-07 Moritz Schulte - - * ac.c: Major parts rewritten. - * pubkey.c (_gcry_pk_get_elements): New function. - -2004-12-09 Werner Koch - - * serpent.c (serpent_setkey): Moved prototype of serpent_test to - outer scope. - -2004-09-11 Moritz Schulte - - * pubkey.c (pubkey_table): Added an alias entry for GCRY_PK_ELG_E. - -2004-08-23 Moritz Schulte - - * ac.c: Do not include . - * rndegd.c: Likewise. - * sha1.c: Likewise. - * rndunix.c: Likewise. - * rndlinux.c: Likewise. - * rmd160.c: Likewise. - * md5.c: Likewise. - * md4.c: Likewise. - * cipher.c: Likewise. - * crc.c: Likewise. - * blowfish.c: Likewise. - - * pubkey.c (dummy_generate, dummy_check_secret_key) - (dummy_encrypt, dummy_decrypt, dummy_sign, dummy_verify): Return - err code GPG_ERR_NOT_IMPLEMENTED instead of aborting through - log_bug(). - (dummy_get_nbits): Return 0 instead of aborting though log_bug(). - -2004-08-19 Werner Koch - - * pubkey.c (sexp_data_to_mpi): Changed the zero random byte - substituting code to actually do clever things. Thanks to - Matthias Urlichs for noting the implementation problem. - -2004-08-09 Moritz Schulte - - * pubkey.c (gcry_pk_sign): Fixed memory leak; fix provided by - Modestas Vainius. - -2004-07-16 Werner Koch - - * rijndael.c (do_encrypt): Fix alignment problem. Bugs found by - Matthias Urlichs. - (do_decrypt): Ditto. - (keySched, keySched2): Use 2 macros along with unions in the key - schedule context. - -2004-07-14 Moritz Schulte - - * rsa.c (_gcry_rsa_decrypt): Don't forget to free "a". Thanks to - Nikos Mavroyanopoulos. - -2004-05-09 Werner Koch - - * random.c (read_pool): Mix the PID in to better protect after a - fork. - -2004-07-04 Moritz Schulte - - * serpent.c: Use "u32_t" instead of "unsigned long", do not - declare S-Box variables as "register". Fixes failure on - OpenBSD/sparc64, reported by Nikolay Sturm. - -2004-05-07 Werner Koch - - * random.c (initialize): Factored out some code to .. - (initialize_basics): .. new function. - (_gcry_random_initialize): Just call initialize_basics unless the - new arg FULL is set to TRUE. - (_gcry_fast_random_poll): Don't do anything unless the random - system has been really initialized. - -2004-05-07 Moritz Schulte - - * ac.c (gcry_ac_open): Do not dereference NULL pointer. Reported - by Umberto Salsi. - -2004-02-20 Werner Koch - - * primegen.c (check_prime): New args CB_FUNC and CB_ARG; call them - at different stages. Pass these arguments through all callers. - -2004-02-06 Werner Koch - - * des.c: Add a new OID as used by pkcs#12. - - * rfc2268.c: New. Taken from libgcrypt. - * cipher.c: Setup the rfc2268 algorithm. - -2004-01-25 Moritz Schulte - - * primegen.c (prime_generate_internal): Do not forget to free - `q_factor'; fixed by Brieuc Jeunhomme. - (prime_generate_internal): Do not forget to free `prime'. - -2004-01-14 Moritz Schulte - - * ac.c (gcry_ac_data_set): New argument: flags; slightly - rewritten. - (gcry_ac_data_get_name, gcry_ac_data_get_index): Likewise. - (gcry_ac_key_pair_generate): New argument: misc_data; modified - order of arguments. - (gcry_ac_key_test): New argument: handle. - (gcry_ac_key_get_nbits, gcry_ac_key_get_grip): Likewise. - Use GCRY_AC_FLAG_NO_BLINDING instead of - GCRY_AC_DATA_FLAG_NO_BLINDING. - (gcry_ac_mpi): New member: flags. - (gcry_ac_data_search, gcry_ac_data_add): Removed functions. - -2003-12-22 Werner Koch - - * primegen.c (is_prime): Release A2. - -2003-12-19 Werner Koch - - * md.c: Moved a couple of functions down below the data structure - definitions. - (struct gcry_md_context): New field ACTUAL_HANDLE_SIZE. - (md_open): Set it here. - (strcut gcry_md_list): New field ACTUAL_STRUCT_SIZE. - (md_enable): Set it here. - (md_close): Wipe the context memory. - secure memory. - * cipher.c (struct gcry_cipher_handle): New field ACTUAL_HANDLE_SIZE. - (gcry_cipher_open): Set it here. - (gcry_cipher_close): Use it to always wipe out the handle data. - - * ac.c (gcry_ac_open): Make sure HANDLE gets initialized even when - the function is not successful. - (gcry_ac_close): Allow a NULL handle. - (gcry_ac_key_destroy, gcry_ac_key_pair_destroy): Ditto. - (gcry_ac_key_get_grip): Return INV_OBJ on error. - - * primegen.c (prime_generate_internal): Fixed error code for - failed malloc. Replaced the !err if chain by gotos. - (gcry_prime_group_generator): Remove the extra sanity check. - - * md.c: Minor code and comment cleanups. - -2003-12-16 Werner Koch - - * primegen.c (gen_prime): Doc fix. Thanks to Newton Hammet. - -2003-12-11 Werner Koch - - * rndunix.c (slow_poll): Don't use #warning but #error. - - * rndegd.c: Changed indentation. - (my_make_filename): Removd the var_arg cruft becuase we - don't need it here. Changed caller. - - * rndlinux.c: Changed indentation. - (open_device): Remove the superfluous stat call and clarify - comment. - - * rsa.c: Changed indentation. - (secret): Use the standard algorithm if p, q and u are not - available. - (rsa_blind, rsa_unblind): Renamed from _gcry_rsa_blind, - _gcry_rsa_unblind and moved more to the top. - - * md4.c: Changed indentation. Removed unnecessary casts. - * md5.c, rmd160.c, sha1.c, tiger.c: Ditto. - * rijndael.c, twofish.c: Ditto. - * serpent.c: Removed unnecessary casts. - * sha256.c, sha512.c: Ditto. - -2003-12-09 Werner Koch - - * dsa.c: Unified indentation style. - * elgamal.c: Ditto. - * des.c (des_key_schedule): Code beautifications. - * blowfish.c: Changed indentation style. - * cast5.c (do_cast_setkey): Ditto. - - * pubkey.c (gcry_pk_encrypt): Replaced the chain of if(!err) tests - by straightforward gotos. Other cleanups. - (gcry_pk_decrypt): Ditto. - (gcry_pk_sign): Ditto. - (gcry_pk_verify): Ditto. - (gcry_pk_genkey): Ditto. Use strtoul instead of strtol. - (gcry_pk_ctl): Use GPG_ERR_INV_ARG to indicate bad arguments. - -2003-12-07 Werner Koch - - * pubkey.c (gcry_pk_register_default): Undef the helper macro. - (gcry_pk_map_name): Allow NULL for string. - (sexp_to_key): Use memcpy and not strncpy. Use gcry_free and not - free. - (sexp_to_sig): Ditto. - (sexp_to_enc): Ditto. Replaced the chain of if(!err) tests by - straightforward gotos. - -2003-12-05 Werner Koch - - * cipher.c: Documentation cleanups. - (gcry_cipher_mode_from_oid): Allow NULL for STRING. - -2003-12-03 Werner Koch - - * elgamal.c (sign, do_encrypt, gen_k): Make sure that a small K is - only used for encryption. - -2003-11-18 Werner Koch - - * random.h (rndw32_set_dll_name): Removed unused prototype. - - * Makefile.am (EXTRA_DIST): Added Manifest. - -2003-11-11 Werner Koch - - * Manifest: New. - -2003-11-04 Werner Koch - - * md.c (gcry_md_hash_buffer): Use shortcut for SHA1 - * sha1.c (_gcry_sha1_hash_buffer): New. - - * random.c: Reformatted most functions. - (mix_pool): Moved the failsafe_digest from global - scope to here. - (do_fast_random_poll): Use the generic fucntions even if a fast - gathering function has been used. - (read_pool): Detect a fork and retry. - (gcry_randomize, get_random_bytes): Don't distinguish anymore - between weak and strong random. - (gcry_create_nonce): New. - -2003-10-31 Werner Koch - - * rndw32.c (slow_gatherer_windowsNT): Use a plain buffer for the - disk performance values and not the W32 API structure. - - * dsa.c (verify): s/exp/ex/ due to shadowing of a builtin. - * elgamal.c (verify): Ditto. - - * ac.c (gcry_ac_data_get_index): s/index/idx/ - (gcry_ac_data_copy_internal): Remove the cast in _gcry_malloc. - (gcry_ac_data_add): Must use gcry_realloc instead of realloc. - * pubkey.c (sexp_elements_extract): s/index/idx/ as tribute to the - forehackers. - (gcry_pk_encrypt): Removed shadowed definition of I. Reordered - arguments to malloc for clarity. - (gcry_pk_sign, gcry_pk_genkey): Ditto. - * primegen.c (prime_generate_internal): s/random/randomlevel/. - -2003-10-27 Moritz Schulte - - * pubkey.c (gcry_pk_encrypt): Don't forget to deallocate pkey. - -2003-10-27 Werner Koch - - * random.c (gcry_random_add_bytes): Return if buflen is zero to - avoid gcc warning about unsed parameter. - (MASK_LEVEL): Simplified; does now work for signed and unsigned - w/o warnings. - - * md.c (md_start_debug): Removed the const from SUFFIX, because - this function is called from the control fucntion which does not - require const. - - Prefixed all (pubkey,digest,cipher}_spec_* globale variables with - _gcry_. - - * ac.c (ac_key_identifiers): Made static. - - * random.c (getfnc_gather_random,getfnc_fast_random_poll): Move - prototypes to .. - * rand-internal.h: .. here - * random.c (getfnc_gather_random): Include rndw32 gatherer. - * rndunix.c, rndw32.c, rndegd.c: Include them here. - * rndlinux.c (_gcry_rndlinux_gather_random): Prepend the _gcry_ - prefix. Changed all callers. - * rndegd.c (_gcry_rndegd_gather_random): Likewise. - (_gcry_rndegd_connect_socket): Likewise. - * rndunix.c (_gcry_rndunix_gather_random): Likewise. - (waitpid): Made static. - * rndw32.c: Removed the old and unused winseed.dll cruft. - (_gcry_rndw32_gather_random_fast): Renamed from - gather_random_fast. - (_gcry_rndw32_gather_random): Renamed from gather_random. Note, - that the changes 2003-04-08 somehow got lost. - - * sha512.c (sha512_init, sha384_init): Made static. - - * cipher.c (do_ctr_decrypt): Removed "return" from this void - function. - -2003-10-24 Moritz Schulte - - * serpent.c: Fix an issue on big-endian systems. - - * rndw32.c: Removed IS_MODULE -cruft. - * rndlinux.c (rndlinux_gather_random): Likewise. - -2003-10-10 Werner Koch - - * primegen.c (gen_prime): Bail out if NBITS is less than 16. - (prime_generate_internal): Initialize prime variable to suppress - compiler warning. Check pbits, initialize qbits when passed as - zero. - - * primegen.c (prime_generate_internal): New arg - ALL_FACTORS. Changed all callers. - (gcry_prime_generate): Make the factors arg optional. Request - all_factors. Make sure PRIME is set to NULL even on error. - (gcry_prime_group_generator): New. - (gcry_prime_release_factors): New. - -2003-10-06 Werner Koch - - * primegen.c (gen_prime): Assert that NBITS is never zero, it - would cause a segv. - -2003-09-28 Moritz Schulte - - * ac.c: Include "cipher.h". - -2003-09-27 Moritz Schulte - - * rndegd.c (do_read): Return nread instead of nbytes; thanks to - Michael Caerwyn. - -2003-09-04 Werner Koch - - * pubkey.c (_gcry_pk_aliased_algo_name): New. - * ac.c (gcry_ac_open): Use it here. - - * Makefile.am (EXTRA_libcipher_la_SOURCES): Add serpent.c - -2003-09-02 Moritz Schulte - - * primegen.c (gcry_prime_check, gcry_prime_generate): New - functions. - (prime_generate_internal): New function, based on - _gcry_generate_elg_prime. - (_gcry_generate_elg_prime): Rewritten as a wrapper for - prime_generate_internal. - -2003-08-28 Werner Koch - - * pubkey.c (gcry_pk_encrypt): Don't include the flags list in the - return value. This does not make sense and breaks any programs - parsing the output strictly (e.g. current gpgsm). - (gcry_pk_encrypt): If aliases for the algorithm name exists, take - the first one instead of the regular name to adhere to SPKI - conventions. - (gcry_pk_genkey): Ditto. - (gcry_pk_sign): Ditto. Removed unused KEY_ALGO_NAME. - -2003-08-19 Moritz Schulte - - * cipher.c: Add support for Serpent - * serpent.c: New file. - -2003-08-10 Moritz Schulte - - * rsa.c (_gcry_rsa_blind, _gcry_rsa_unblind): Declare static. - -2003-08-09 Timo Schulz - - * random.c (getfnc_gather_random): Don't check NAME_OF_DEV_RANDOM - two times, but also the NAME_OF_DEV_URANDOM device. - -2003-08-08 Moritz Schulte - - * pubkey.c (sexp_to_enc): Fixed extraction of S-Expression: do not - fail if no `flags' sub S-Expression is found. - -2003-07-27 Werner Koch - - * md.c (gcry_md_lookup_func_oid): Allow for empty OID lists. - -2003-07-23 Moritz Schulte - - * ac.c (gcry_ac_data_construct): New argument: include_flags, only - include `flags' S-expression, if include_flags is true. Adjust - callers. Thanks for triggering a bug caused by `flags' - sub-S-expression where they are not expected to Ralf Schneider. - -2003-07-21 Moritz Schulte - - * pubkey.c (gcry_pk_lookup_func_name): Use new member name - `aliases' instead of `sexp_names'. - - * ac.c (gcry_ac_key_data_get): New function. - - * cipher.c (gcry_cipher_lookup_func_name): Fix return value. - -2003-07-20 Moritz Schulte - - * blowfish.c: Adjusted for new gcry_cipher_spec_t structure. - * cast5.c: Likewise. - * twofish.c: Likewise. - * arcfour.c: Likewise. - * rijndael.c (rijndael_oids, rijndael192_oids, rijndael256_oids): - New variables, adjust for new gcry_cipher_spec_t structure. - * des.c (oids_tripledes): New variable, adjust for new - gcry_cipher_spec_t structure. - - * md.c (oid_table): Removed. - - * tiger.c (oid_spec_tiger): New variable. - (digest_spec_tiger): Adjusted for new gry_md_spec_t structure. - - * sha512.c (oid_spec_sha512): New variable. - (digest_spec_sha512): Adjusted for new gry_md_spec_t structure. - - * sha512.c (oid_spec_sha384): New variable. - (digest_spec_sha384): Adjusted for new gry_md_spec_t structure. - - * sha256.c (oid_spec_sha256): New variable. - (digest_spec_sha256): Adjusted for new gry_md_spec_t structure. - - * sha1.c (oid_spec_sha1): New variable. - (digest_spec_sha1): Adjusted for new gry_md_spec_t structure. - - * rmd160.c (oid_spec_rmd160): New variable. - (digest_spec_rnd160): Adjusted for new gry_md_spec_t structure. - - * md5.c (oid_spec_md5): New variable. - (digest_spec_md5): Adjusted for new gry_md_spec_t structure. - - * md4.c (oid_spec_md4): New variable. - (digest_spec_md4): Adjusted for new gry_md_spec_t structure. - - * crc.c (digest_spec_crc32, digest_spec_crc32_rfc1510, - digest_spec_crc32_rfc2440): Adjusted for new gry_md_spec_t - structure. - -2003-07-19 Moritz Schulte - - * md.c (gcry_md_lookup_func_oid): New function. - (search_oid): New function, copied from cipher.c. - (gcry_md_map_name): Adjust for new search_oid_interface. - - * cipher.c (oid_table): Removed table. - (gcry_cipher_lookup_func_oid): New function. - (search_oid): Rewritten to use the module functions. - (gcry_cipher_map_name): Adjust for new search_oid interface. - (gcry_cipher_mode_from_oid): Likewise. - -2003-07-18 Werner Koch - - * md.c (gcry_md_hash_buffer): Convert ERR to gpg_error_t in - gpg_strerror. - -2003-07-14 Moritz Schulte - - * cipher.c (gcry_cipher_lookup_func_name): Also check the cipher - name aliases, not just the primary name. - (gcry_cipher_map_name): Remove kludge for aliasing Rijndael to - AES. - - * arcfour.c, blowfish.c, cast5.c, des.c, twofish.c: Adjust cipher - specification structures. - - * rijndael.c (rijndael_names, rijndael192_names, - rijndael256_names): New variables, use them in the cipher - specifications. - - * rmd160test.c: Removed file. - - * ac.c, arcfour.c, blowfish.c, cast5.c, cipher.c, des.c, dsa.c, - elgamal.c, md.c, pubkey.c, random.c, rijndael.c, rsa.c, twofish.c: - Used gcry_err* wrappers for libgpg symbols. - - * primegen.c (gen_prime): Correct the order arguments to - extra_check. - -2003-07-12 Moritz Schulte - - * ac.c: Replaced all public occurences of gpg_error_t with - gcry_error_t. - * cipher.c: Likewise. - * md.c: Likewise. - * pubkey.c: Likewise. - * random.c: Likewise. - - * cipher.c: Added support for TWOFISH128. - -2003-07-08 Moritz Schulte - - * ac.c (gcry_ac_data_copy_internal): New function, based on - gcry_ac_data_copy. - (gcry_ac_data_copy): Made public, use gcry_ac_data_copy_internal. - (gcry_ac_key_init): Use gcry_ac_data_copy_internal. - -2003-07-07 Moritz Schulte - - * ac.c (gcry_ac_data_set): Only release old MPI value if it is - different from the new value. Bug reported by Simon Josefsson - . - - * pubkey.c (gcry_pk_list): New function. - * md.c (gcry_md_list): New function. - - * ac.c (gcry_ac_key_pair_generate): Fix calculation of format - string size. - -2003-07-05 Moritz Schulte - - * md.c: Named struct of digest_table `digest_table_entry'. - (digest_table_entry): New member: algorithm; filled in. - (digest_table_entry): Removed unused member: flags. - (gcry_md_register): New argument: algorithm_id, filled in. - (gcry_md_register_default): Used algorithm ID from module - structure. - (gcry_md_map_name): Likewise. - (md_enable): Likewise. - (md_read): Likewise. - (gcry_md_info): Likewise. - - * pubkey.c: Named truct for pubkey_table `pubkey_table_entry'. - (pubkey_table_entry): New member: algorithm; filled in. - (gcry_pk_register_default): Used algorithm ID from pubkey_table. - (gcry_pk_register): New argument: algorithm_id, filled in. - (gcry_pk_map_name): Used algorithm ID from module structure. - (gcry_pk_decrypt): Likewise. - (gcry_pk_encrypt): Likewise. - (gcry_pk_verify): Likewise. - (gcry_pk_sign): Likewise. - (gcry_pk_testkey): Likewise. - (gcry_pk_genkey): Likewise. - (gcry_pk_get_nbits): Likewise. - (sexp_to_key): Removed unused variable: algo. - (sexp_to_sig): Likewise. - - * cipher.c: Named struct for cipher_table `cipher_table_entry'. - (cipher_table_entry): New member: algorithm; filled in. - (gcry_cipher_register_default): Used algorithm ID from - cipher_table. - (gcry_cipher_register): New argument: algorithm_id, filled in. - (gcry_cipher_map_name): Used algorithm ID from module structure. - - * arcfour.c (cipher_spec_arcfour): Removed algorithm ID. - * blowfish.c (cipher_spec_blowfish): Likewise. - * cast5.c (cipher_spec_cast5): Likewise. - * crc.c (digest_spec_crc32): Likewise. - * crc.c (digest_spec_crc32_rfc1510): Likewise. - * crc.c (digest_spec_crc32_rfc2440): Likewise. - * des.c (cipher_spec_des): Likewise. - * des.c (cipher_spec_tripledes): Likewise. - * dsa.c (pubkey_spec_dsa): Likewise. - * elgamal.c (pubkey_spec_elg): Likewise. - * md4.c (digest_spec_md4): Likewise. - * md5.c (digest_spec_md5): Likewise. - * aes.c (cipher_spec_aes): Likewise. - * aes.c (cipher_spec_aes192): Likewise. - * aes.c (cipher_spec_aes256): Likewise. - * rsa.c (pubkey_spec_rsa): Likewise. - * sha1.c (digest_spec_sha1): Likewise. - * sha256.c (digest_spec_sha256): Likewise. - * sha512.c (digest_spec_sha512): Likewise. - * tiger.c (digest_spec_tiger): Likewise. - * twofish.c (cipher_spec_twofish): Likewise. - * twofish.c (cipher_spec_twofish128): Likewise. - - * Makefile.am (EXTRA_libcipher_la_SOURCES): Fix list of source - files; reported by Simon Josefsson . - - * pubkey.c: Replaced all occurences of `id' with `algorithm', - since `id' is a keyword in obj-c. - * md.c: Likewise. - * cipher.c: Likewise. - - * crc.c, md4.c, md5.c, rmd160.c, sha1.c, sha256.c, tiger.c: - Replaced all occurences of gcry_digest_spec_t with gcry_md_spec_t. - - * dsa.c, rsa.c, elgamal.c: Replaced all occurencens of - gcry_pubkey_spec_t with gcry_pk_spec_t. - - * md.c: Replaced all occurences of gcry_digest_spec_t with - gcry_md_spec_t. - (gcry_digest_register_default): Renamed to ... - (gcry_md_register_default): ... this; adjusted callers. - (gcry_digest_lookup_func_name): Renamed to ... - (gcry_md_lookup_func_name): ... this; adjusted callers. - (gcry_digest_lookup_name): Renamed to ... - (gcry_md_lookup_name): ... this; adjusted callers. - (gcry_digest_register): Renamed to ... - (gcry_md_register): ... this. - (gcry_digest_unregister): Renamed to ... - (gcry_md_unregister): ... this. - - * pubkey.c (gcry_pubkey_register): Renamed to ... - (gcry_pk_register): ... this. - (gcry_pubkey_unregister): Renamed to ... - (gcry_pk_unregister): ... this. - Replaced all occurences of gcry_pubkey_spec_t with gcry_pk_spec_t. - (gcry_pubkey_register_default): Renamed to ... - (gcry_pk_register_default): ... this; adjusted callers. - (gcry_pubkey_lookup_func_name): Renamed to ... - (gcry_pk_lookup_func_name): ... this; adjusted callers. - (gcry_pubkey_lookup_name): Renamed to ... - (gcry_pk_lookup_name): ... this; adjusted callers. - - * md.c (gcry_md_hash_buffer): Fix error checking. Thanks to Simon - Josefsson . - -2003-07-04 Moritz Schulte - - * cipher.c (gcry_cipher_list): New function. - -2003-07-01 Moritz Schulte - - * pubkey.c (sexp_to_sig): Accept a `flags' S-expression to be more - consistent with sexp_to_enc. - -2003-06-30 Moritz Schulte - - * Makefile.am (libcipher_la_SOURCES): Added: ac.c. - - * pubkey.c (_gcry_pk_module_lookup): New function. - (_gcry_pk_module_release): New function. - -2003-06-29 Moritz Schulte - - * ac.c: New file. - -2003-06-26 Werner Koch - - * md.c (gcry_md_hash_buffer): Trigger BUG correcly with new API. - -2003-06-19 Werner Koch - - * md.c (gcry_md_is_enabled): Fixed. - -2003-06-18 Werner Koch - - * cipher.c (gcry_cipher_get_algo_keylen): New. - (gcry_cipher_get_algo_blklen): New. - -2003-06-18 Moritz Schulte - - * arcfour.c, cipher.c, blowfish.c, md.c, cast5.c, pubkey.c, crc.c, - des.c, dsa.c, elgamal.c, md4.c, md5.c, random.c, rijndael.c, - rmd160.c, rsa.c, sha1.c, sha256.c, sha512.c, tiger.c, twofish.c: - Replaced older types GcryDigestSpec, GcryCipherSpec and - GcryPubkeySpec with newer types: gcry_digest_spec_t, - gcry_cipher_spec_t and gcry_pubkey_spec_t. - - * md.c (gcry_digest_id_new): Removed function. - (gcry_digest_register): Removed code for generating a new module - ID. - - * pubkey.c (gcry_pubkey_id_new): Removed function. - (gcry_pubkey_register): Removed code for generating a new module - ID. - - * cipher.c, md.c, pubkey.c: Replace old type GcryModule with newer - one: gcry_module_t. - (gcry_cipher_id_new): Removed function. - (gcry_cipher_register): Removed code for generating a new module - ID. - - * cipher.c (gcry_cipher_register): Adjust call to - _gcry_module_add. - (gcry_cipher_register_default): Likewise. - * pubkey.c (gcry_pubkey_register_default): Likewise. - (gcry_pubkey_register): Likewise. - * md.c (gcry_digest_register_default): Likewise. - (gcry_digest_register): Likewise. - - * md.c (gcry_digest_lookup_func_id): Removed function. - (gcry_digest_lookup_id): Likewise. - (gcry_digest_id_new): Use _gcry_module_lookup_id instead of - gcry_digest_lookup_id. - (digest_algo_to_string): Likewise. - (check_digest_algo): Likewise. - (md_enable): Likewise. - (md_digest_length): Likewise. - (md_asn_oid): Likewise. - - * pubkey.c (gcry_pubkey_lookup_id): Removed function. - (gcry_pubkey_lookup_func_id): Likewise. - (gcry_pubkey_id_new): Use _gcry_module_lookup_id instead of - gcry_pubkey_id_new. - (gcry_pk_algo_name): Likewise. - (disable_pubkey_algo): Likewise. - (check_pubkey_algo): Likewise. - (pubkey_get_npkey): Likewise. - (pubkey_get_nskey): Likewise. - (pubkey_get_nsig): Likewise. - (pubkey_get_nenc): Likewise. - (pubkey_generate): Likewise. - (pubkey_check_secret_key): Likewise. - (pubkey_encrypt): Likewise. - (pubkey_decrypt): Likewise. - (pubkey_sign): Likewise. - (pubkey_verify): Likewise. - (gcry_pk_algo_info): Likewise. - - * cipher.c (gcry_cipher_lookup_func_id): Removed function. - (gcry_cipher_lookup_id): Likewise. - (cipher_algo_to_string): use _gcry_module_lookup_id instead of - gcry_cipher_lookup_id. - (disable_cipher_algo): Likewise. - (check_cipher_algo): Likewise. - (cipher_get_blocksize): Likewise. - (gcry_cipher_open): Likewise. - (gcry_cipher_id_new): Likewise. - -2003-06-17 Moritz Schulte - - * Makefile.am (GCRYPT_MODULES): Set to @GCRYPT_CIPHERS@, - @GCRYPT_PUBKEY_CIPHERS@, @GCRYPT_DIGESTS@ and @GCRYPT_RANDOM@. - (libcipher_la_DEPENDENCIES): Set to $(GCRYPT_MODULES). - (libcipher_la_LIBADD): Likewise. - (AM_CFLAGS): Added: @GPG_ERROR_CFLAGS@. - (EXTRA_libcipher_la_SOURCES): Added all conditional sources. - - * md.c (md_open): Use _gcry_fast_random_poll instead of - fast_random_poll. - * cipher.c (gcry_cipher_open): Likewise. - - * random.h (fast_random_poll): Removed macro. - - * blowfish.c, md4.c, md5.c, rmd160.c, sha1.c, sha256.c, sha512.c, - tiger.c: Use Autoconf's WORDS_BIGENDIAN instead of our own - BIG_ENDIAN_HOST. - -2003-06-16 Moritz Schulte - - * random.c (getfnc_gather_random): Do not special-case - USE_ALL_RANDOM_MODULES, make it the default. - - * dsa.c: Replace last occurences of old type names with newer - names (i.e. replace MPI with gcry_mpi_t). - * elgamal.c: Likewise. - * primegen.c: Likewise. - * pubkey.c: Likewise. - * rsa.c: Likewise. - -2003-06-14 Moritz Schulte - - * des.c (des_setkey): Add selftest check. - (tripledes_set3keys): Likewise. - (do_tripledes_setkey): Remove selftest check. - (do_des_setkey): Likewise. - -2003-06-11 Moritz Schulte - - * md.c (_gcry_md_init): New function. - * cipher.c (_gcry_cipher_init): New function. - * pubkey.c (_gcry_pk_init): New function. - -2003-06-13 Werner Koch - - * md.c (gcry_md_get_algo): Reverted to old API. This is a - convenience function anyway and error checking is not approriate. - (gcry_md_is_secure): New. - (gcry_md_is_enabled): New. - -2003-06-12 Werner Koch - - * cipher.c (gcry_cipher_open): Make sure HANDLE is set to NULL on - error. - -2003-06-11 Werner Koch - - * md.c (gcry_md_open): Make sure H receives either NULL or an - valid handle. - (gcry_md_copy): Swapped arguments so that it is more in lione with - md_open and most other API fucntions like memcpy (destination - comes first). Make sure HANDLE is set to NULL on error. - - * rijndael.c (do_encrypt): Hack to force correct alignment. It - seems not to be not sufficient, though. We should rework this - fucntions and remove all these ugly casts. Let the compiler - optimize or have an assembler implementation. - -2003-06-09 Moritz Schulte - - * Makefile.am: Removed rules serpent, since that is not commited - yet. - -2003-06-08 Moritz Schulte - - * pubkey.c (gcry_pk_encrypt): Improve calculation for size of the - format string. - -2003-06-07 Moritz Schulte - - * arcfour.c, bithelp.h, blowfish.c, cast5.c, cipher.c, crc.c, - des.c, dsa.c, elgamal.c, md4.c, md5.c, md.c, primegen.c, pubkey.c, - rand-internal.h, random.c, random.h, rijndael.c, rmd160.c, - rmd160test.c, rmd.h, rndeged.c, rndlinux.c, rndunix.c, rndw32.c, - rsa.c, sha1.c, sha256.c, sha512.c, tiger.c, twofish.c: Edited all - preprocessor instructions to remove whitespace before the '#'. - This is not required by C89, but there are some compilers out - there that don't like it. Replaced any occurence of the now - deprecated type names with the new ones. - -2003-06-04 Moritz Schulte - - * pubkey.c (gcry_pk_encrypt): Construct an arg_list and use - gcry_sexp_build_array instead of gcry_sexp_build. - (gcry_pk_sign): Likewise. - (gcry_pk_genkey): Likewise. - -2003-06-01 Moritz Schulte - - * dsa.c (_gcry_dsa_generate): Do not check wether the algorithm ID - does indeed belong to DSA. - (_gcry_dsa_sign): Likewise. - (_gcry_dsa_verify): Likewise. - (_gcry_dsa_get_nbits): Likewise. - - * elgamal.c (_gcry_elg_check_secret_key): Do not check wether the - algorithm ID does indeed belong to ElGamal. - (_gcry_elg_encrypt): Likewise. - (_gcry_elg_decrypt): Likewise. - (_gcry_elg_sign): Likewise. - (_gcry_elg_verify): Likewise. - (_gcry_elg_get_nbits): Likewise. - (_gcry_elg_generate): Likewise. - - * rsa.c (_gcry_rsa_generate): Do not check wether the algorithm ID - does indeed belong to RSA. - (_gcry_rsa_encrypt): Likewise. - (_gcry_rsa_decrypt): Likewise. - (_gcry_rsa_sign): Likewise. - (_gcry_rsa_verify): Likewise. - (_gcry_rsa_get_nbits): Likewise. - -2003-05-30 Moritz Schulte - - * md.c (md_get_algo): Return zero in case to algorithm is enabled. - - * md.c (gcry_md_info): Adjusted for new no-errno-API. - (md_final): Likewise. - (gcry_md_get_algo): Likewise. - * pubkey.c (gcry_pk_get_keygrip): Likewise. - (gcry_pk_ctl): Likewise. - (gcry_pk_algo_info): Likewise. - * des.c (selftest): Likewise. - -2003-05-29 Moritz Schulte - - * md.c (md_enable): Do not forget to release module on error. - (gcry_md_open): Adjusted for new no-errno-API. - (md_open): Likewise. - (md_copy): Likewise. - (gcry_md_copy): Likewise. - (gcry_md_setkey): Likewise. - (gcry_md_algo_info): Likewise. - - * cipher.c (gcry_cipher_open): Adjusted for new no-errno-API and - also fixed a locking bug. - (gcry_cipher_encrypt): Adjusted for new no-errno-API. - (gcry_cipher_decrypt): Likewise. - (gcry_cipher_ctl): Likewise. - (gcry_cipher_info): Likewise. - (gcry_cipher_algo_info): Likewise. - -2003-05-28 Moritz Schulte - - * md.c (md_enable): Adjusted for libgpg-error. - (gcry_md_enable): Likewise. - (gcry_digest_register_default): Likewise. - (gcry_digest_register): Likewise. - (check_digest_algo): Likewise. - (prepare_macpads): Likewise. - (gcry_md_setkey): Likewise. - (gcry_md_ctl): Likewise. - (gcry_md_get): Likewise. - (gcry_md_algo_info): Likewise. - (gcry_md_info): Likewise. - * dsa.c (_gcry_dsa_generate): Likewise. - (_gcry_dsa_check_secret_key): Likewise. - (_gcry_dsa_sign): Likewie. - (_gcry_dsa_verify): Likewise. - * twofish.c (do_twofish_setkey): Likewise. - (twofish_setkey): Likewise. - * cipher.c (gcry_cipher_register): Likewise. - -2003-05-25 Moritz Schulte - - * rijndael.c (do_setkey): Adjusted for libgpg-error. - (rijndael_setkey): Likewise. - * random.c (gcry_random_add_bytes): Likewise. - * elgamal.c (_gcry_elg_generate): Likewise. - (_gcry_elg_check_secret_key): Likewise. - (_gcry_elg_encrypt): Likewise. - (_gcry_elg_decrypt): Likewise. - (_gcry_elg_sign): Likewise. - (_gcry_elg_verify): Likewise. - * rsa.c (_gcry_rsa_generate): Likewise. - (_gcry_rsa_check_secret_key): Likewise. - (_gcry_rsa_encrypt): Likewise. - (_gcry_rsa_decrypt): Likewise. - (_gcry_rsa_sign): Likewise. - (_gcry_rsa_verify): Likewise. - * pubkey.c (dummy_generate, dummy_check_secret_key, dummy_encrypt, - dummy_decrypt, dummy_sign, dummy_verify): Likewise. - (gcry_pubkey_register): Likewise. - (check_pubkey_algo): Likewise. - (pubkey_generate): Likewise. - (pubkey_check_secret_key): Likewise. - (pubkey_encrypt): Likewise. - (pubkey_decrypt): Likewise. - (pubkey_sign): Likewise. - (pubkey_verify): Likewise. - (sexp_elements_extract): Likewise. - (sexp_to_key): Likewise. - (sexp_to_sig): Likewise. - (sexp_to_enc): Likewise. - (sexp_data_to_mpi): Likewise. - (gcry_pk_encrypt): Likewise. - (gcry_pk_decrypt): Likewise. - (gcry_pk_sign): Likewise. - (gcry_pk_verify): Likewise. - (gcry_pk_testkey): Likewise. - (gcry_pk_genkey): Likewise. - (gcry_pk_ctl): Likewise. - * cipher.c (dummy_setkey): Likewise. - (check_cipher_algo): Likewise. - (gcry_cipher_open): Likewise. - (cipher_setkey): Likewise. - (gcry_cipher_ctl): Likewise. - (cipher_encrypt): Likewise. - (gcry_cipher_encrypt): Likewise. - (cipher_decrypt): Likewise. - (gcry_cipher_decrypt): Likewise. - (gcry_cipher_info): Likewise. - (gcry_cipher_algo_info): Likewise. - * cast5.c (cast_setkey): Likewise. - (do_cast_setkey): Likewise. - * arcfour.c (arcfour_setkey): Likewise. - (do_arcfour_setkey): Likewise. - * blowfish.c (do_bf_setkey): Likewise. - (bf_setkey): Likewise. - * des.c (do_des_setkey): Likewise. - (do_tripledes_setkey): Likewise. - -2003-05-22 Moritz Schulte - - * tiger.c: Merged code ussing the U64_C macro from GnuPG. - - * sha512.c: Likewise. - -2003-05-17 Moritz Schulte - - * pubkey.c (gcry_pk_genkey): Fix type: acquire a lock, instead of - releasing it. - -2003-05-11 Moritz Schulte - - * pubkey.c (gcry_pk_testkey): Call REGISTER_DEFAULT_CIPHERS. - (gcry_pk_ctl): Likewise. - -2003-04-27 Moritz Schulte - - * pubkey.c (gcry_pk_genkey): Release sexp after extracted data has - been used. - - * md.c (gcry_md_get_algo_dlen): Simplified, simply call - md_digest_length to do the job. - - * des.c (do_des_setkey): Check for selftest failure not only - during initialization. - (do_tripledes_setkey): Include check for selftest failure. - - * pubkey.c (gcry_pubkey_register_default): New macro - `pubkey_use_dummy', use it. - - * elgamal.c (elg_names): New variable. - (pubkey_spec_elg): Include elg_names. - - * dsa.c (dsa_names): New variable. - (pubkey_spec_dsa): Include dsa_names. - - * rsa.c (rsa_names): New variable. - (pubkey_spec_rsa): Include rsa_names. - - * pubkey.c (gcry_pubkey_lookup_func_name): Compare name also with - the names listed in `sexp_names'. - -2003-04-24 Moritz Schulte - - * pubkey.c (sexp_to_key): New variables: module, pubkey. Adjusted - to new module interface. - (sexp_to_key): Changend type of argument `retalgo' from `int *' to - `GcryModule **'. Adjusted all callers. Removed argument: - r_algotblidx. - (sexp_to_sig): Changend type of argument `retalgo' from `int *' to - `GcryModule **'. Adjusted all callers. - (sexp_to_enc): Likewise. - - (pubkey_get_npkey, pubkey_get_nskey, pubkey_get_nsig, - pubkey_get_nenc): Use strlen to find out the number. - - * rsa.c: Adjust pubkey_spec_rsa to new internal interface. - * dsa.c: Likewise. - * elgamal.c: Likewise. - -2003-04-17 Moritz Schulte - - * pubkey.c (sexp_elements_extract): New function. - * pubkey.c (sexp_to_key): Removed variable `idx', added `err', use - sexp_elements_extract. - (sexp_to_sig): Likewise. - (sexp_to_enc): Likewise. - - * pubkey.c: Terminate list correctly. - * md.c: Include sha512/sha384 in digest_table. - -2003-04-16 Moritz Schulte - - * Makefile.am: Include support for sha512.c. - - * sha512.c: New file, merged from GnuPG, with few modifications - for libgcrypt. - - * rand-internal.h: Removed declarations for constructor functions. - - * md.c (md_copy): Call _gcry_module_use for incrementing the usage - counter of the digest modules. - - * rsa.c: Do not include "rsa.h". - * dsa.c: Do not include "dsa.h". - * elgamal.c: Do not include "elgamal.h". - * des.c: Do not include "des.h". - * cast5.c: Do not include "cast5.h". - * blowfish.c: Do not include "blowfish.h". - * arcfour.c: Do not include "arcfour.h". - - * Makefile.am (libcipher_la_DEPENDENCIES): Removed. - (libcipher_la_LIBADD): Removed. - Use Automake conditionals for conditional compilation. - -2003-04-13 Moritz Schulte - - * cipher.c (gcry_cipher_open): Call REGISTER_DEFAULT_CIPHERS. - - * md.c (gcry_md_list): New member: module. - (md_enable): New variable: module, changed use of module and - digest. - (md_enable): Initialize member: module. - (md_close): Call _gcry_module_release. - - * cipher.c (gcry_cipher_open): New variable: module, changed use of - module and cipher. - (struct gcry_cipher_handle): New member: module. - (gcry_cipher_open): Initialize member: module. - (gcry_cipher_close): Call _gcry_module_release. - -2003-04-09 Moritz Schulte - - * cipher.c: Include "ath.h". - * md.c: Likewise. - * pubkey.c: Likewise. - - * cipher.c (ciphers_registered_lock): New variable. - * md.c (digests_registered_lock): New variable. - * pubkey.c (pubkeys_registered_lock): New variable. - - * rndlinux.c (gnupgext_version, func_table): Removed definitions. - (gnupgext_enum_func): Removed function. - (_gcry_rndlinux_constructor): Removed function. - - * rndegd.c (gnupgext_version, func_table): Removed definitions. - (gnupgext_enum_func): Removed function. - (_gcry_rndegd_constructor): Removed function. - - * rndunix.c (gnupgext_version, func_table): Removed definitions. - (gnupgext_enum_func): Removed function. - (_gcry_rndunix_constructor): Removed function. - - * rndw32.c (gnupgext_version, func_table): Removed definitions. - (gnupgext_enum_func): Removed function. - (_gcry_rndw32_constructor): Removed function. - - * rndegd.c (rndegd_connect_socket): Simplify code for creating the - egd socket address. - (rndegd_connect_socket): Call log_fatal use instead of - g10_log_fatal. - (egd_gather_random): Renamed to ... - (rndegd_gather_random): ... here. - -2003-04-08 Moritz Schulte - - * rndlinux.c: Do not include "dynload.h". - * rndunix.c: Likewise. - * rndw32.c: Likewise. - - * rndegd.c (rndegd_connect_socket): Factored out from ... - (egd_gather_random): here; call it. - (egd_socket): New variable. - (egd_gather_random): Initialize fd with egd_socket, do not declare - fd static. - (do_read): Merged few changes from GnuPG. FIXME - not finished? - Do not include "dynload.h". - - * rndw32.c (gather_random): Renamed to rndw32_gather_random, do - not declare static. - (gather_random_fast): Renamed to rndw32_gather_random_fast, do not - declare static. - - * rndunix.c (gather_random): Renamed to rndunix_gather_random, do - not declare static. - * rndegd.c (gather_random): Renamed to rndegd_gather_random, do - not declare static. - * rndlinux.c (gather_random): Renamed to rndlinux_gather_random, - do not declare static. - -2003-04-07 Moritz Schulte - - * Makefile.am (libcipher_la_SOURCES): Removed construct.c. - (libcipher_la_SOURCES): Added sha1.c, sha256.c, rmd160.c, md4.c, - md5.c, tiger.c and crc.c - (EXTRA_PROGRAMS): Removed sha1, sha256, rmd160, md4, md5, tiger - and crc. Removed definitions: EXTRA_md4_SOURCES, - EXTRA_md5_SOURCES, EXTRA_rmd160_SOURCES, EXTRA_sha1_SOURCES, - EXTRA_sha256_SOURCES, EXTRA_tiger_SOURCES and EXTRA_crc_SOURCES, - BUILT_SOURCES, DISTCLEANFILES. - - * pubkey.c: Do not include "elgamal.h", "dsa.h" and "rsa.h". - - * Makefile.am (libcipher_la_SOURCES): Removed rsa.h, elgamal.h, - dsa.h, des.h, cast5.h, arcfour.h and blowfish.h. - - * rsa.h: Removed file. - * elgamal.h: Removed file. - * dsa.h: Removed file. - * des.h: Removed file. - * cast5.h: Removed file. - * arcfour.h: Removed file. - * blowfish.h: Removed file. - - * Makefile.am (libcipher_la_SOURCES): Removed dynload.c and - dynload.h. - - * rsa.c (pubkey_spec_rsa): New variable. - * dsa.c (pubkey_spec_rsa): New variable. - * elgamal.c (pubkey_spec_elg): New variable. - - * rsa.c (_gcry_rsa_get_info): Removed function. - * elgamal.c (_gcry_elg_get_info): Removed function. - * dsa.c (_gcry_dsa_get_info): Removed function. - - * tiger.c (tiger_get_info): Removed function. - (gnupgext_version, func_table): Removed definitions. - (gnupgext_enum_func): Removed function. - (_gcry_tiger_constructor): Removed function. - - * sha1.c (sha1_get_info): Removed function. - (gnupgext_version, func_table): Removed definitions. - (gnupgext_enum_func): Removed function. - (_gcry_sha1_constructor): Removed function. - - * sha256.c (sha256_get_info): Removed function. - (gnupgext_version, func_table): Removed definitions. - (gnupgext_enum_func): Removed function. - (_gcry_sha256_constructor): Removed function. - - * rmd160.c (rmd160_get_info): Removed function. - (gnupgext_version, func_table): Removed definitions. - (gnupgext_enum_func): Removed function. - (_gcry_rmd160_constructor): Removed function. - - * md5.c (md5_get_info): Removed function. - (gnupgext_version, func_table): Removed definitions. - (gnupgext_enum_func): Removed function. - (_gcry_md5_constructor): Removed function. - - * md4.c (md4_get_info): Removed function. - (gnupgext_version, func_table): Removed definitions. - (gnupgext_enum_func): Removed function. - (_gcry_md4_constructor): Removed function. - - * crc.c (crc_get_info): Removed function. - - * arcfour.c (do_arcfour_setkey): Changed type of context argument - to `void *', added local variable for cast, adjusted callers. - (arcfour_setkey): Likewise. - (encrypt_stream): Likewise. - * cast5.c (cast_setkey): Likewise. - (encrypt_block): Likewise. - * rijndael.c (rijndael_setkey): Likewise. - (rijndael_encrypt): Likewise. - (rijndael_decrypt): Likewise. - * twofish.c (twofish_setkey): Likewise. - (twofish_encrypt): Likewise. - (twofish_decrypt): Likewise. - * des.c (do_des_setkey): Likewise. - (do_des_encrypt): Likewise. - (do_des_encrypt): Likewise. - (do_tripledes_encrypt): Likewise. - (do_tripledes_encrypt): Likewise. - * blowfish.c (bf_setkey: Likewise. - (encrypt_block): Likewise. - (decrypt_block): Likewise. - - * arcfour.c (encrypt_stream): Likewise. - - * rijndael.c (gnupgext_version, func_table): Removed definitions. - (gnupgext_enum_func) Removed function. - - * twofish.c (gnupgext_version, func_table): Removed definitions. - (gnupgext_enum_func) Removed function. - - * cast5.c (CIPHER_ALGO_CAST5): Removed. - - * blowfish.c (FNCCAST_SETKEY, FNCCAST_CRYPT): Removed macros. - (CIPHER_ALGO_BLOWFISH): Removed symbol. - * cast5.c (FNCCAST_SETKEY, FNCCAST_CRYPT): Likewise. - * des.c (selftest_failed): Removed. - (initialized): New variable. - (do_des_setkey): Run selftest, if not yet done. - (FNCCAST_SETKEY, FNCCAST_CRYPT): Removed macros. - - * arcfour.c (_gcry_arcfour_get_info): Removed function. - * blowfish.c (_gcry_blowfish_get_info): Removed function. - * cast5.c (_gcry_cast5_get_info): Removed function. - * des.c (_gcry_des_get_info): Removed function. - * rijndael.c (_gcry_rijndael_get_info): Removed function. - * twofish.c (_gcry_twofish_get_info): Removed function. - - * arcfour.c (cipher_spec_arcfour): New variable. - * twofish.c (cipher_spec_twofish, cipher_spec_twofish128): New - variables. - * rijndael.c (cipher_spec_aes, cipher_spec_aes192, - cipher_spec256): New variables. - * des.c (cipher_spec_des, cipher_spec_tripledes): New variables. - * cast5.c (cipher_spec_cast5): New variable. - * blowfish.c (cipher_spec_blowfish): Likewise. - - * twofish.c: Do not include "dynload.h". - * rijndael.c: Likewise. - * des.c: Likewise. - * cast5.c: Likewise. - * blowfish.c: Likewise. - * cipher.c: Likewise. - * crc.c: Likewise. - * md4.c: Likewise. - * md5.c: Likewise. - * md.c: Likewise. - * pubkey.c: Likewise. - * rijndael.c: Likewise. - * sha1.c: Likewise. - * sha256.c: Likewise. - - * arcfour.c: Include "cipher.h". - * twofish.c: Likewise. - * rijndael.c: Likewise. - * des.c: Likewise. - * cast5.c: Likewise. - * blowfish.c: Likewise. - - * twofish.c (twofish_setkey): Declared argument `key' const. - (twofish_encrypt): Declared argument `inbuf' const. - (twofish_decrypt): Likewise. - - * rijndael.c (rijndael_setkey): Declared argument `key' const. - (rijndael_encrypt): Declared argument `inbuf' const. - (rijndael_decrypt): Likewise. - - * des.c (do_des_setkey): Declared argument `key' const. - (do_tripledes_setkey): Likewise. - (do_des_encrypt): Declared argument `inbuf' const. - (do_des_decrypt): Likewise. - (do_tripledes_encrypt): Likewise. - (do_tripledes_decrypt): Likewise. - - * cast5.c (encrypt_block): Declared argument `inbuf' const. - (decrypt_block): Likewise. - (cast_setkey): Declared argument `key' const. - - * blowfish.c (do_bf_setkey): Declared argument `key' const. - (encrypt_block): Declared argument `inbuf' const. - (encrypt_block): Likewise. - - - - * cipher.c: Remove CIPHER_ALGO_DUMMY related code. - Removed struct cipher_table_s. - Changed definition of cipher_table. - Removed definition of disabled_algos. - (ciphers_registered, default_ciphers_registered): New variables. - (REGISTER_DEFAULT_CIPHERS): New macro. - (dummy_setkey): Declared argument `key' const. - (dummy_encrypt_block): Declared argument `inbuf' const. - (dummy_encrypt_block): Likewise. - (dummy_encrypt_stream): Likewise. - (dummy_encrypt_stream): Likewise. - (dummy_setkey): Use `unsigned char' instead of `byte'. - (dummy_encrypt_block): Likewise. - (dummy_decrypt_block): Likewise. - (dummy_encrypt_stream): Likewise. - (dummy_decrypt_stream): Likewise. - (gcry_cipher_register_default): New function. - (gcry_cipher_lookup_func_id): New function. - (gcry_cipher_lookup_func_name): New function. - (gcry_cipher_lookup_id): New function. - (gcry_cipher_lookup_name): New function. - (gcry_cipher_id_new): New function. - (gcry_cipher_register): New function. - (gcry_cipher_unregister): New function. - (setup_cipher_table): Removed function. - (load_cipher_modules): Removed function. - (gcry_cipher_map_name): Adjusted to use new module management. - (cipher_algo_to_string): Likewise. - (disable_cipher_algo): Likewise. - (check_cipher_algo): Likewise. - (cipher_get_keylen): Likewise. - (cipher_get_blocksize): Likewise. - (gcry_cipher_open): Likewise. - (struct gcry_cipher_handle): Replaced members algo, algo_index, - blocksize, setkey, encrypt, decrypt, stencrypt, stdecrypt with one - member: cipher. - (gcry_cipher_open): Adjusted code for new handle structure. - (cipher_setkey): Likewise. - (cipher_setiv): Likewise. - (cipher_reset): Likewise. - (do_ecb_encrypt): Likewise. - (do_ecb_decrypt): Likewise. - (do_cbc_encrypt): Likewise. - (do_cbc_decrypt): Likewise. - (do_cfb_encrypt): Likewise. - (do_cfb_decrypt): Likewise. - (do_ctr_encrypt): Likewise. - (cipher_encrypt): Likewise. - (gcry_cipher_encrypt): Likewise. - (cipher_decrypt): Likewise. - (gcry_cipher_decrypt): Likewise. - (cipher_sync): Likewise. - (gcry_cipher_ctl): Likewise. - - * pubkey.c: Removed struct pubkey_table_s. - Changed definition of pubkey_table. - Removed definition of disabled_algos. - (pubkeys_registered, default_pubkeys_registered): New variables. - (REGISTER_DEFAULT_PUBKEYS): New macro. - (setup_pubkey_table): Removed function. - (load_pubkey_modules): Removed function. - (gcry_pubkey_register_default): New function. - (gcry_pubkey_lookup_func_id): New function. - (gcry_pubkey_lookup_func_name): New function. - (gcry_pubkey_lookup_id): New function. - (gcry_pubkey_lookup_name): New function. - (gcry_pubkey_id_new): New function. - (gcry_pubkey_register): New function. - (gcry_pubkey_unregister): New function. - (gcry_pk_map_name): Adjusted to use new module management. - (gcry_pk_algo_name): Likewise. - (disable_pubkey_algo): Likewise. - (check_pubkey_algo): Likewise. - (pubkey_get_npkey): Likewise. - (pubkey_get_nskey): Likewise. - (pubkey_get_nsig): Likewise. - (pubkey_get_nenc): Likewise. - (pubkey_generate): Likewise. - (pubkey_check_secret_key): Likewise. - (pubkey_encrypt): Likewise. - (pubkey_decrypt): Likewise. - (pubkey_sign): Likewise. - (pubkey_verify): Likewise. - (gcry_pk_get_nbits): Likewise. - (gcry_pk_algo_info): Likewise. - - * md.c: Removed struct md_digest_list_s. - (digest_list): Changed definition. - (digests_registered, default_digests_registered): New variables. - (REGISTER_DEFAULT_DIGESTS): New macro. - (new_list_item): Removed function. - (setup_md_table): Removed function. - (load_digest_module): Removed function. - (gcry_digest_register_default): New function. - (gcry_digest_lookup_func_id): New function. - (gcry_digest_lookup_func_name): New function. - (gcry_digest_lookup_id): New function. - (gcry_digest_lookup_name): New function. - (gcry_digest_id_new): New function. - (gcry_digest_register): New function. - (gcry_digest_unregister): New function. - (GcryDigestEntry): New type. - (struct gcry_md_context): Adjusted type of `list'. - (gcry_md_map_name): Adjusted to use new module management. - (digest_algo_to_string): Likewise. - (check_digest_algo): Likewise. - (md_enable): Likewise. - (md_digest_length): Likewise. - (md_asn_oid): Likewise. - -2003-04-07 Moritz Schulte - - * pubkey.c: Replaced PUBKEY_ALGO_DSA with GCRY_PK_DSA, - PUBKEY_ALGO_RSA with GCRY_PK_RSA and PUBKEY_ALGO_ELGAMAL with - GCRY_PK_ELG. - - * dsa.c: Replaced PUBKEY_ALGO_DSA with GCRY_PK_DSA. - -2003-04-01 Moritz Schulte - - * des.c: Removed checks for GCRY_CIPHER_3DES and GCRY_CIPHER_DES. - -2003-03-31 Moritz Schulte - - * tiger.c (tiger_get_info): Do not declare static. - * sha256.c (sha256_get_info): Likewise. - * sha1.c (sha1_get_info): Likewise. - * rmd160.c (rmd160_get_info): Likewise. - * md5.c (md5_get_info): Likewise. - * md4.c (md4_get_info): Likewise. - * crc.c (crc_get_info): Likewise. - - * md.c (load_digest_module): Call setup_md_table during - initialization. - (new_list_item): Link new element into digest_list. - - * cipher.c (do_ctr_decrypt): Made do_ctr_encrypt act as a wrapper - for do_ctr_encrypt, since these functions are identical. - -2003-03-30 Simon Josefsson - - * cipher.c (struct gcry_cipher_handle): Add counter field. - (gcry_cipher_open): Add CTR. - (cipher_reset): Clear counter field. - (do_ctr_encrypt, do_ctr_decrypt): New functions. - (cipher_encrypt, cipher_decrypt): Call CTR functions. - (gcry_cipher_ctl): Add SET_CTR to set counter. - -2003-03-30 Moritz Schulte - - * rsa.c (_gcry_rsa_blind): New function. - (_gcry_rsa_unblind): New function. - (_gcry_rsa_decrypt): Use _gcry_rsa_blind and _gcry_rsa_decrypt. - -2003-03-26 Moritz Schulte - - * dynload.c (_gcry_enum_gnupgext_pubkeys): Adjust `encrypt' and - `decrypt' function arguments. - (_gcry_enum_gnupgext_pubkeys): Likewise. - * dynload.h: Likewise. - - * pubkey.c (dummy_decrypt): Add argument: int flags. - (dummy_encrypt): Likewise. - - * elgamal.c (_gcry_elg_encrypt): Add argument: int flags. - (_gcry_elg_decrypt): Likewise. - - * rsa.c (_gcry_rsa_encrypt): Add argument: int flags. - (_gcry_rsa_decrypt): Likewise. - - * pubkey.c: Add `flags' argument to members `encrypt' and - `decrypt' of struct `pubkey_table_s'. - - * rsa.h: Add `flags' argument to function declarations. - * elgamal.h: Likewise. - - * pubkey.c (sexp_data_to_mpi): New variable: int parsed_flags. - (sexp_data_to_mpi): Set `parsed_flags'. - (sexp_data_to_mpi): New argument: int *flags. - (gcry_pk_encrypt): New variable: int flags. - (gcry_pk_encrypt): Pass `flags' to pubkey_encrypt. - (pubkey_encrypt): New variable: int flags. - (pubkey_encrypt): Pass `flags' to pubkey encrypt function. - (pubkey_decrypt): Likewise. - (pubkey_decrypt): Pass `flags' to pubkey encrypt function. - (gcry_pk_encrypt): Include `flags' s-exp in return list. - (sexp_to_enc): New argument: int *flags. - (gcry_pk_decrypt): New variable: int flags. - (gcry_pk_decrypt): Pass `flags' to pubkey_decrypt. - (sexp_to_enc): New variable: int parsed_flags. - (sexp_to_enc): Set `parsed_flags'. - -2003-03-22 Simon Josefsson - - * cipher.c (gcry_cipher_open, do_cbc_encrypt) - (gcry_cipher_encrypt): Support GCRY_CIPHER_CBC_MAC. - (gcry_cipher_ctl): Support GCRYCTL_SET_CBC_MAC. - -2003-03-19 Werner Koch - - * primegen.c (gen_prime): New args EXTRA_CHECK and EXTRA_CHECK_ARG - to allow for a user callback. Changed all callers. - (_gcry_generate_secret_prime) - (_gcry_generate_public_prime): Ditto, pass them to gen_prime. - * rsa.c (check_exponent): New. - (generate): Use a callback to ensure that a given exponent is - actually generated. - -2003-03-12 Moritz Schulte - - * primegen.c: Initialize `no_of_small_prime_numbers' statically. - (gen_prime): Remove calculation of `no_of_small_prime_numbers'. - -2003-03-03 Moritz Schulte - - * md.c (gcry_md_ctl): Rewritten to use same style like the other - functions dispatchers. - -2003-03-02 Moritz Schulte - - * cipher.c (struct gcry_cipher_handle): New member: algo_index. - (gcry_cipher_open): Allocate memory for two cipher contexts. - Initialize algo_index. - (cipher_setkey): Duplicate context into reserved memory. - (cipher_reset): New function, which resets the context and clear - the IV. - (gcry_cipher_ctl): Call cipher_reset. - -2003-02-23 Moritz Schulte - - * cipher.c: Remove (bogus) `digitp' macro definition. - * md.c: Likewise. - - * blowfish.c (burn_stack): Removed. - * arcfour.c (burn_stack): Likewise. - * cast5.c (burn_stack): Likewise. - * des.c (burn_stack): Likewise. - * md4.c (burn_stack): Likewise. - * md5.c (burn_stack): Likewise. - * random.c (burn_stack): Likewise. - * rijndael.c (burn_stack): Likewise. - * rmd160.c (burn_stack): Likewise. - * sha1.c (burn_stack): Likewise. - * sha256.c (burn_stack): Likewise. - * tiger.c (burn_stack): Likewise. - * twofish.c (burn_stack): Likewise. - - * blowfish.c: Changed all occurences of burn_stack to - _gcry_burn_stack. - * arcfour.c: Likewise. - * cast5.c: Likewise. - * des.c: Likewise. - * md4.c: Likewise. - * md5.c: Likewise. - * random.c: Likewise. - * rijndael.c: Likewise. - * rmd160.c: Likewise. - * sha1.c: Likewise. - * sha256.c: Likewise. - * tiger.c: Likewise. - * twofish.c: Likewise. - - * arcfour.c (_gcry_arcfour_get_info): Use GCRY_CIPHER_ARCFOUR - instead of hard-coded value `301'. - -2003-01-24 Werner Koch - - * random.c (_gcry_register_random_progress): New. - (_gcry_random_progress): New. - - * rndlinux.c (gather_random): Call the random progress function. - -2003-01-23 Werner Koch - - * rsa.c (generate): New arg USE_E to request a specific public - exponent. - (_gcry_rsa_generate): Ditto. - * elgamal.c (_gcry_elg_generate): Must add an dummy argument - instead of USE_E. - * dsa.c (_gcry_dsa_generate): Ditto. - * pubkey.c (dummy_generate): Ditto. - (pubkey_generate): Add USE_E arg and pass it down. - (gcry_pk_genkey): Detect "rsa-use-e" parameter and pass it to generate. - - * pubkey.c (sexp_to_enc): New arg RET_MODERN. - (gcry_pk_decrypt): Make use of it to return a real S-expression. - Return better error codes. - (gcry_pk_verify): Return better error codes. - -2003-01-21 Werner Koch - - * random.c (gcry_random_add_bytes): Add QUALITY argument, let - function return an error code and disable its core for now. - -2003-01-21 Timo Schulz - - * random.c (gcry_random_add_bytes): New. Function to add external - random to the pool. - -2003-01-20 Simon Josefsson - - * crc.c: New. - * Makefile.am (EXTRA_PROGRAMS, EXTRA_crc_SOURCES): Add crc.c. - * md.c (gcry_md_get_algo_dlen): Add values for CRC. - -2003-01-20 Werner Koch - - * sha256.c: New. - * bithelp.h (ror): New. - * Makfile.am: Add sha256.c. - * md.c (oid_table): Add values for SHA256 et al. - (gcry_md_get_algo_dlen): Likewise - -2003-01-20 Werner Koch - - * pubkey.c (gcry_pk_get_keygrip): Implemented keygrips for DSA - and ElGamal. - -2003-01-17 Werner Koch - - * cipher.c (gcry_cipher_encrypt): Reworked so that the output will - never contain the plaintext even if the caller did not checked the - return value. - - * md.c (gcry_md_get_algo): Changed error code to GCRYERR_GENERAL - because we don't have an invalid md algo but no algorithm enabled. - - * pubkey.c (gcry_pk_genkey): Changed error code for bounds check - of table parameters to GCRYERR_INTERNAL. - - * md.c (gcry_md_open): Partly reverted Timo's change from - 2002-10-10 by removing the check for the algorithm. An algorithm - of 0 is allowed and anyway we should not double check it or check - it using a different function. Also fixed the flags check. - - * pubkey.c (gcry_pk_encrypt): Make sure that R_CIPH points to NULL - on error. - (gcry_pk_decrypt): Ditto for R_PLAIN. - (gcry_pk_sign): Ditto for R_SIG. - (gcry_pk_genkey): Ditto for R_KEY. - -2003-01-16 Werner Koch - - * md.c (gcry_md_write): Changed 2nd argument type to void*. - (gcry_md_hash_buffer): Changed type of boths buffers to void*. - (gcry_md_setkey): Changed 2nd argument type to void*. - -2003-01-15 Werner Koch - - * pubkey.c (sexp_data_to_mpi): New. This handles pkcs1 padding. - (gcry_pk_sign, gcry_pk_verify): Use it here. - (gcry_pk_encrypt): And here. - (pubkey_verify): Add debug code. - (sexp_to_enc): Handle flags in the input and return the pkcs1 flag - in a new parameter. - (gcry_pk_decrypt): Prepare for future pkcs1 handling. - -2002-12-19 Werner Koch - - * random.c (_gcry_random_initialize): New. - -2002-12-16 Werner Koch - - * cipher.c: Added a Teletrust specific OID for 3DES. - -2002-12-12 Werner Koch - - * md.c: Added another oddball OIW OID (sha-1WithRSAEncryption). - -2002-11-23 Werner Koch - - * md.c (load_digest_module): Enlarged checked_algos bitmap. - * md4.c (func_table): Fixed entry for md4. - Both by Simon Josephson. - (transform): Copy data to get the alignment straight. Tested only - on i386. - -2002-11-10 Simon Josefsson - - * cipher.c (gcry_cipher_open): Don't reject CTS flag. - (do_cbc_encrypt, do_cbc_decrypt, cipher_encrypt) - (gcry_cipher_encrypt, cipher_decrypt) - (gcry_cipher_decrypt): Support CTS flag. - (gcry_cipher_ctl): Toggle CTS flag. - -2002-11-10 Werner Koch - - * md4.c: New. By Simon Josefsson. - * Makefile.am (EXTRA_PROGRAMS): Add md4.c. - * md.c (oid_table,gcry_md_get_algo_dlen): MD4 support. - -2002-10-14 Werner Koch - - * arcfour.c (do_encrypt_stream): Don't use increment op when - assigning to the same variable. - -2002-10-10 Timo Schulz - - * pubkey.c (gcry_pk_genkey): Check boundaries. - - * md.c (gcry_md_open): Check that algo is available and only - valid flag values are used. - (gcry_md_get_algo): Add error handling. - -2002-09-26 Werner Koch - - * md.c: Include an OID for TIGER. - * tiger.c (tiger_get_info): Use a regular OID. - -2002-09-17 Werner Koch - - * random.c: Replaced mutex.h by the new ath.h. Changed all calls. - -2002-09-16 Werner Koch - - * arcfour.c (do_encrypt_stream): Use register modifier and modulo. - According to Nikos Mavroyanopoulos this increases perfromace on - i386 system noticable. And I always tought gcc is clever enough. - * md5.c (transform): Use register modifier. - * rmd160.c (transform): Ditto. - * sha1.c (transform): Ditto. We hope that there are 6 free registers. - * random.c (gcry_randomize): Rewrote to avoid malloc calls. - - * rndlinux.c (gather_random): Replaced remaining fprintfs by log_*. - * arcfour.c (do_arcfour_setkey): Ditto. - * twofish.c (do_twofish_setkey): Ditto. - * rndegd.c (gather_random): Ditto. - * rijndael.c (do_setkey): Ditto. - * random.c (_gcry_random_dump_stats): Ditto. - * primegen.c (_gcry_generate_elg_prime): Ditto. - * des.c (_gcry_des_get_info): Ditto. - * cast5.c (do_cast_setkey): Ditto. - * blowfish.c (do_bf_setkey): Ditto. - -2002-08-26 Werner Koch - - * des.c (weak_keys): Fixed one entry in the table and compared - all entries against the literature. - (selftest): Checksum the weak key table. - -2002-08-21 Werner Koch - - * pubkey.c: Enable keygrip calculation for "openpgp-rsa". - -2002-08-17 Werner Koch - - * cipher.c (setup_cipher_table): Don't overwrite the DES entry - with the entry for DUMMY. - -2002-08-14 Werner Koch - - * des.c (do_des_setkey,do_des_encrypt, do_des_decrypt): New. - (_gcry_des_get_info): Support plain old DES. - * cipher.c (setup_cipher_table): Put DES into the table. - -2002-07-25 Werner Koch - - * rndunix.c (_gcry_rndunix_constructor): Prefixed with _gcry_. - Noted by Stephan Austermuehle. - -2002-07-08 Timo Schulz - - * rndw32.c: Replaced the m_ memory functions with the real - gcry_ functions. Renamed all g10_ prefixed functions to log_. - -2002-06-12 Werner Koch - - * rsa.c (generate): Use e = 65537 for now. - -2002-06-11 Werner Koch - - * pubkey.c (gcry_pk_get_keygrip): Allow a "protected-private-key". - -2002-06-05 Timo Schulz - - * cipher.c (gcry_cipher_encrypt, gcry_cipher_decrypt): - Check that the input size is a multiple of the blocksize. - -2002-05-23 Werner Koch - - * md.c (oid_table): Add an rsadsi OID for MD5. - -2002-05-21 Werner Koch - - * primegen.c, elgamal.c, dsa.c (progress): Do not print anything - by default. Pass an extra identifying string to the callback and - reserved 2 argumenst for current and total counters. Changed the - register function prototype. - -2002-05-17 Werner Koch - - * rndegd.c (rndegd_constructor): Fixed name of register function - and prefixed the function name with _gcry_. - * rndw32.c (rndw32_constructor): Ditto. - * tiger.c (tiger_constructor): Ditto. - - * Makefile.am: Removed all dynamic loading stuff. - * dynload.c: Ditto. Now only used for the constructor system. - -2002-05-15 Werner Koch - - * random.c (gcry_random_bytes,gcry_random_bytes_secure) - (gcry_randomize): Make sure we are initialized. - -2002-05-14 Werner Koch - - Changed license of most files to the LGPL. - -2002-05-02 Werner Koch - - * random.c (_gcry_fast_random_poll): Initialize the module so the - mutex can be used. - - * primegen.c (small_prime_numbers): Moved table from smallprime.c - * smallprime.c: File removed. - - * des.c (leftkey_swap, rightkey_swap, working_memcmp): Made static. - - * cipher.c (gcry_cipher_map_name): Map "RIJNDAEL" to "AES". - * rijndael.c (rijndael_get_info): We do only support a 128 bit - blocksize so it makes sense to change the algorithm strings to - AES. - - * tiger.c (tiger_final): Removed superfluous token pasting operators. - * md5.c (md5_final): Ditto. - -2002-04-30 Werner Koch - - * cipher.c: Fixed list of copyright years. - -2002-03-18 Werner Koch - - * random.c (initialize): Initialize the new pool lock mutex. - (_gcry_fast_random_poll): Add locking and moved main - code out to... - (do_fast_random_poll): new function. - (read_pool): Use the new function here. - (get_random_bytes): Add locking. - (_gcry_update_random_seed_file): Ditto. - -2002-03-11 Werner Koch - - * md.c: Add rsaSignatureWithripemd160 to OID table. - -2002-02-20 Werner Koch - - * sha1.c: Removed a left over comment note. The code has been - rewritten from scratch in 1998. Thanks to Niels Möller for - reporting this misleading comment. - -2002-02-18 Werner Koch - - * rndunix.c (rndunix_constructor): Use the the new prefixed - function name. Reported by Jordi Mallach. - -2002-02-10 Werner Koch - - * random.c (mix_pool): Carry an extra failsafe_digest buffer - around to make the function more robust. - -2002-02-08 Werner Koch - - * random.c (add_randomness): Xor new data into the pool and not - just copy it. This avoids any choosen input attacks which are not - serious in our setting because an outsider won't be able to mix - data in and even then we keep going with a PRNG. Thanks to Stefan - Keller for pointing this out. - -2002-01-04 Werner Koch - - * pubkey.c (gcry_pk_genkey): Do not release skey - it is static. - - * primegen.c (gen_prime): Of course we should use set_bit - and not set_highbit to set the second high bit. - -2001-12-18 Werner Koch - - * rsa.c (generate): Loop until we find the exact modulus size. - Changed the exponent to 41. - (rsa_get_info): s/usage/r_usage/ to avoid shadow warnings. - * primegen.c (gen_prime): Set 2 high order bits for secret primes. - - * Makefile.am (DISTCLEANFILES): Include construct.c. - -2001-12-17 Werner Koch - - * pubkey.c (gcry_pk_get_keygrip): New - experimental. - -2001-12-11 Werner Koch - - * cipher.c: Added OIDs for AES. - (gcry_cipher_mode_from_oid): New. - (gcry_cipher_map_name): Moved OID search code to .. - (search_oid): .. new function. - -2001-12-10 Werner Koch - - * pubkey.c (gcry_pk_encrypt): Find the signature algorithm by name - and not by number. - - * pubkey.c (gcry_pk_encrypt,gcry_pk_decrypt,gcry_pk_sign) - (gcry_pk_verify,gcry_pk_testkey, gcry_pk_genkey) - (gcry_pk_get_nbits): Release the arrays. Noted by Nikos - Mavroyanopoulos. - -2001-12-06 Werner Koch - - * cipher.c (gcry_cipher_map_name): Look also for OIDs prefixed - with "oid." or "OID.". - -2001-12-05 Werner Koch - - * pubkey.c (algo_info_table): Fixed entry for openpgp-rsa. - -2001-11-24 Werner Koch - - * pubkey.c: Added the rsaEncryption OID to the tables. - (sexp_to_key): Add an arg to return the index of the algorithm, - changed all callers. - (gcry_pk_sign): Find the signature algorithm by name and not by - number. - (gcry_pk_get_nbits): Fixed so that we can now really pass a secret - key to get the result. - - * md.c (gcry_md_map_name): Look also for OIDs prefixed with "oid." - or "OID." so that an OID string can be used as an S-Exp token. - -2001-11-20 Werner Koch - - * md.c (gcry_md_map_name): Lookup by OID if the the name begins - with a digit. - (oid_table): New. - -2001-11-16 Werner Koch - - * md.c (gcry_md_info): New operator GCRYCTL_IS_ALGO_ENABLED. - -2001-11-07 Werner Koch - - * md.c (gcry_md_hash_buffer): Close the handle which was left open - for algorithms other than rmd160. - -2001-08-08 Werner Koch - - * rndw32.c (gather_random): Use toolhelp in addition to the NT - gatherer for Windows2000. Suggested by Sami Tolvanen. - - * random.c (read_pool): Fixed length check, this used to be one - byte to strict. Made an assert out of it because the caller has - already made sure that only poolsize bytes are requested. - Reported by Marcus Brinkmann. - -2001-08-03 Werner Koch - - * cipher.c (cipher_encrypt, cipher_decrypt): Prepare to return - errors. We have to change the interface to all ciphers to make - this really work but we should do so to prepare for hardware - encryption modules. - (gcry_cipher_encrypt, gcry_cipher_decrypt): Return the error and - set lasterr. - (gcry_cipher_ctl): Make sure that errors from setkey are returned. - -2001-08-02 Werner Koch - - * rndlinux.c (gather_random): casted a size_t arg to int so that - the format string is correct. Casting is okay here and avoids - translation changes. - - * random.c (fast_random_poll): Do not check the return code of - getrusage. - - * rndunix.c: Add a signal.h header to avoid warnings on Solaris 7 - and 8. - - * tiger.c (print_abc,print_data): Removed. - - * rijndael.c, des.c, blowfish.c, twofish.c, cast5.c, arcfour.c - (burn_stack): New. Add wrappers for most functions to be able to - call burn_stack after the function invocation. This methods seems - to be the most portable way to zeroise the stack used. It does - only work on stack frame based machines but it is highly portable - and has no side effects. Just setting the automatic variables at - the end of a function to zero does not work well because the - compiler will optimize them away - marking them as volatile would - be bad for performance. - * md5.c, sha1.c, rmd160.c, tiger.c (burn_stack): Likewise. - * random.c (burn_stack): New. - (mix_pool): Use it here to burn the stack of the mixblock function. - - * primegen.c (_gcry_generate_elg_prime): Freed q at 3 places. - Thanks to Tommi Komulainen. - - * arcfour.c (arcfour_setkey): Check the minimim keylength against - bytes and not bits. - (selftest): Must reset the key before decryption. - -2001-05-31 Werner Koch - - * sha1.c (sha1_init): Made static. - - Changed all g10_ prefixed function names as well as some mpi_ - function names to cope with the introduced naming changes. - - * md.c (prepare_macpads): Made key const. - -2001-05-28 Werner Koch - - * rndegd.c (gather_random): Removed the use of tty_printf. - -2001-03-29 Werner Koch - - * md5.c (md5_final): Fixed calculation of hashed length. Thanks - to disastry@saiknes.lv for pointing out that it was horrible wrong - for more than 512MB of input. - * sha1.c (sha1_final): Ditto. - * rmd160.c (rmd160_final): Ditto. - * tiger.c (tiger_final): Ditto. - - * blowfish.c (encrypt,do_encrypt): Changed name to do_encrypt to - avoid name clashes with an encrypt function in stdlib.h of - Dynix/PIX. Thanks to Gene Carter. - * elgamal.c (encrypt,do_encrypt): Ditto. - - * twofish.c (gnupgext_enum_func): Use only when when compiled as a - module. - * rijndael.c (gnupgext_enum_func): Ditto. - - * tiger.c (tiger_get_info): Return "TIGER192" and not just - "TIGER". By Edwin Woudt. - - * random.c: Always include time.h - standard requirement. Thanks - to James Troup. - - * rndw32.c: Fixes to the macros. - -2001-01-11 Werner Koch - - * cipher.c (cipher_encrypt,gcry_cipher_encrypt): Use blocksize and - not 8. - -2000-12-19 Werner Koch - - Major change: - Removed all GnuPG stuff and renamed this piece of software - to gcrypt. - -2000-11-14 Werner Koch - - * dsa.c (test_keys): Replaced mpi_alloc by gcry_mpi_new and - mpi_free by gcry_mpi_release. - * elgamal.c (test_keys,generate): Ditto, also for mpi_alloc_secure. - * rsa.c (test_keys,generate,rsa_verify): Ditto. - * primegen.c (generate_elg_prime): Ditto. - (gen_prime): Ditto and removed nlimbs. - - * rsa.c (generate): Allocate 2 more vars in secure memory. - - * Makefile.am (OMIT_DEPENDENCIES): Hack to work around dependency - problems. - -2000-10-09 Werner Koch - - * arcfour.c, arcfour.h: New. - * cipher.c (cipher_encrypt, cipher_decrypt): Add stream mode. - (setup_cipher_table): Add Arcfour. - (gcry_cipher_open): Kludge to allow stream mode. - -Wed Oct 4 13:16:18 CEST 2000 Werner Koch - - * sha1.c (transform): Use rol() macro. Actually this is not needed - for a newer gcc but there are still aoter compilers. - - * rsa.c (test_keys): Use new random function. - - * md.c (gcry_md_setkey): New function to overcome problems with - const conflics. - (gcry_md_ctl): Pass set key to the new functions. - - * rijndael.c: New. - * cipher.c: Add Rijndael support. - -Mon Sep 18 16:35:45 CEST 2000 Werner Koch - - * rndlinux.c (open_device): Loose random device checking. - By Nils Ellmenreich. - - * random.c (fast_random_poll): Check ENOSYS for getrusage. - * rndunix.c: Add 2 sources for QNX. By Sam Roberts. - - * pubkey.c (gcry_pk_algo_info): Add GCRYCTL_GET_ALGO_USAGE. - - * rsa.c: Changed the comment about the patent. - (secret): Speed up by using the CRT. For a 2k keys this - is about 3 times faster. - (stronger_key_check): New but unused code to check the secret key. - * Makefile.am: Included rsa.[ch]. - * pubkey.c: Enabled RSA support. - (pubkey_get_npkey): Removed RSA workaround. - -Mon Jul 31 10:04:47 CEST 2000 Werner Koch - - * pubkey.c: Replaced all gcry_sexp_{car,cdr}_{data,mpi} by the new - gcry_sexp_nth_{data,mpi} functions. - -Tue Jul 25 17:44:15 CEST 2000 Werner Koch - - * pubkey.c (exp_to_key,sexp_to_sig,sexp_to_enc,gcry_pk_encrypt, - gcry_pk_decrypt,gcry_pk_sign,gcry_pk_genkey): Changed to work with - the new S-Exp interface. - -Mon Jul 17 16:35:47 CEST 2000 Werner Koch - - * random.c (gather_faked): Replaced make_timestamp by time(2) again. - -Fri Jul 14 19:38:23 CEST 2000 Werner Koch - - * md.c (gcry_md_ctl): Support GCRYCTL_{START,STOP}_DUMP. - - * Makefile.am: Never compile mingw32 as module. - - * Makefile.am: Tweaked module build and removed libtool - - * Makefile.am: Replaced -O1 by -O. Suggested by Alec Habig. - - * elgamal.c (sign): Removed inactive code. - - * rsa.c, rsa.h: New based on the old module version (only in CVS for now). - * pubkey.c (setup_pubkey_table): Added commented support for RSA. - - * rndunix.c (waitpid): New. For UTS 2.1. All by Dave Dykstra. - (my_popen): Do the FD_CLOEXEC only if it is available - (start_gatherer): Cope with missing _SC_OPEN_MAX - - * rndunix.c: Add some more headers for QNX. By Sam Roberts. - - * rndegd.c (gather_random): Shortcut level 0. - * rndunix.c (gather_random): Ditto. - * rndw32.c (gather_random): Ditto. - - * rndw32.c: Replaced with code from Cryptlib and commented the old stuff. - * rndw32.c: Add some debuging code enabled by an environment variable. - - * random.c (read_seed_file): Binary open for DOSish system - (update_random_seed_file): Ditto. - * random.c [MINGW32]: Include process.h for getpid. - * random.c (fast_random_poll): Add clock_gettime() as fallback for - system which support this POSIX.4 fucntion. By Sam Roberts. - - * random.c (read_seed_file): Removed the S_ISLNK test becuase it - is already covered by !S_ISREG and is not defined in Unixware. - Reported by Dave Dykstra. - (update_random_seed_file): Silently ignore update request when pool - is not filled. - - * random.c (read_seed_file): New. - (set_random_seed_file): New. - (read_pool): Try to read the seeding file. - (update_random_seed_file): New. - - (read_pool): Do an initial extra seeding when level 2 quality random - is requested the first time. This requestes at least POOLSIZE/2 bytes - of entropy. Compined with the seeding file this should make normal - random bytes cheaper and increase the quality of the random bytes - used for key generation. - - * random.c (read_pool): Print a more friendly error message in - cases when too much random is requested in one call. - - * random.c (fast_random_poll): Check whether RUSAGE_SELF is defined; - this is not the case for some ESIX and Unixware, although they have - getrusage(). - - * primegen.c (generate_elg_prime): All primes are now generated with - the lowest random quality level. Because they are public anyway we - don't need stronger random and by this we do not drain the systems - entropy so much. - - * primegen.c (register_primegen_progress): New. - * dsa.c (register_pk_dsa_progress): New. - * elgamal.c (register_pk_elg_progress): New. - - * elgamal.c (wiener_map): New. - (gen_k): Use a much smaller k. - (generate): Calculate the qbits using the wiener map and - choose an x at a size comparable to the one choosen in gen_k - - * rmd160.c (rmd160_get_info): Moved casting to the left side due to a - problem with UTS4.3. Suggested by Dave Dykstra. - * sha1.c (sha1_get_info): Ditto. - * tiger.c (tiger_get_info): Ditto. - * md5.c (md5_get_info): Ditto - * des.c (des_get_info): Ditto. - * blowfish.c (blowfish_get_info): Ditto. - * cast5.c (cast5_get_info): Ditto. - * twofish.c (twofish_get_info): Ditto. - -Fri Mar 24 11:25:45 CET 2000 Werner Koch - - * md.c (md_open): Add hmac arg and allocate space for the pads. - (md_finalize): Add HMAC support. - (md_copy): Ditto. - (md_close): Ditto. - (gcry_md_reset): Ditto. - (gcry_md_ctl): Ditto. - (prepare_macpdas): New. - -Mon Mar 13 19:22:46 CET 2000 Werner Koch - - * md.c (gcry_md_hash_buffer): Add support for the other algorithms. - -Mon Jan 31 16:37:34 CET 2000 Werner Koch - - * genprime.c (generate_elg_prime): Fixed returned factors which never - worked for non-DSA keys. - -Thu Jan 27 18:00:44 CET 2000 Werner Koch - - * pubkey.c (sexp_to_key): Fixed mem leaks in case of errors. - -Mon Jan 24 22:24:38 CET 2000 Werner Koch - - * pubkey.c (gcry_pk_decrypt): Implemented. - (gcry_pk_encrypt): Implemented. - (gcry_pk_testkey): New. - (gcry_pk_genkey): New. - (pubkey_decrypt): Made static. - (pubkey_encrypt): Ditto. - (pubkey_check_secret_key): Ditto. - (pubkey_generate): Ditto. - -Mon Jan 24 13:04:28 CET 2000 Werner Koch - - * pubkey.c (pubkey_nbits): Removed and replaced by ... - (gcry_pk_get_nbits): this new one. - -Wed Dec 8 21:58:32 CET 1999 Werner Koch - - * dsa.c: s/mpi_powm/gcry_mpi_powm/g - * elgamal.c: Ditto. - * primegen.c: Ditto. - - * : Replaced g10_opt_verbose by g10_log_verbosity(). - - * Makefile.am (INCLUDES): removed intl, add ../gcrypt - -Fri Nov 19 17:15:20 CET 1999 Werner Koch - - * dynload.c (cmp_filenames): New to replaced compare_filename() in - module. - (register_cipher_extension): Removed the tilde expansion stuff. - * rndeg.c (my_make_filename): New. - - * : Replaced header util.h by g10lib.h - - * random.c (gather_faked): Replaced make_timestamp by time(2). - Disabled wrning printed with tty_printf. - * rndlinux.c (gather_random): Always use fprintf instead of tty_xxx; - this should be replaced by a callback function. - - * primegen.c (gen_prime): Use gcry_mpi_randomize. - (is_prime): Ditto. - * elgamal.c (test_keys): Ditto. - * dsa.c (test_keys): Ditto. - - * cipher.c (gcry_cipher_close): Die on invalid handle. - -Mon Nov 15 21:36:02 CET 1999 Werner Koch - - * elgamal.c (gen_k): Use the new random API. - (generate): Ditto. - * dsa.c (gen_k): Ditto. - (generate): Ditto. - -Sat Nov 13 17:44:23 CET 1999 Werner Koch - - * pubkey.c (disable_pubkey_algo): Made static. - (gcry_pk_ctl): New. - - * random.c (get_random_bits): Renamed to ... - (get_random_bytes): ... this and made static. - (gcry_random_bytes): New. - (gcry_random_bytes_secure): New. - (randomize_buffer): Renamed to ... - (gcry_randomize): ...this. - - * md.c (gcry_md_hash_buffer): New. - - * pubkey.c (gcry_pk_algo_info): 4 new commands. - (pubkey_get_npkey): Made static. - (pubkey_get_nskey): Made static. - (pubkey_get_nsig): Made static. - (pubkey_get_nenc): Made static. - - * pubkey.c: Removed all G10ERR_xxx. - * cipher.c: Changed all GCRYERR_INV_ALGO to GCRYERR_INV_CIPHER_ALGO. - * md.c: Changed all GCRYERR_INV_ALGO to GCRYERR_INV_MD_ALGO. - * cast5.c (cast_setkey): Changed errocodes to GCRYERR_xxx. - * blowfish.c: Ditto. - * des.c: Ditto. - * twofish.c: Ditto. - * dsa.c: Ditto. - * elgamal.c: Ditto. - - * g10c.c: Removed - - * cipher.c (gcry_cipher_open): Replaced alloc functions and return NULL - if we are out of core. - * dynload.c: Replaced all memory allocation functions. - * md.c: Ditto. - * primegen.c: Ditto. - * pubkey.c: Ditto. - * random.c: Ditto. - * rndw32.c: Ditto. - * elgamal.c: Ditto. - * dsa.c: Ditto. - -Tue Oct 26 14:10:21 CEST 1999 Werner Koch - - * elgamal.c (sign): Hugh found strange code here. Replaced by BUG(). - - * cipher.c: Merged with gcrypt/symapi.c. - - * pubkey.c (string_to_pubkey_algo): Renamed function to ... - (gcry_pk_map_name): ... this. - (pubkey_algo_to_string): Renamed function to ... - (gcry_pk_algo_name): ... this. - (gcry_pk_algo_info): New. - * pubkey.c: Merged with gcrypt/pkapi.c. - - * md.c (md_reset): Clear finalized; thanks to Ulf Moeller for - fixing this bug. - - * md.c: Merged with gcrypt/mdapi.c - -Wed Sep 15 14:39:59 CEST 1999 Michael Roth - - * des.c: Various speed improvements: One bit pre rotation - trick after initial permutation (Richard Outerbridge). - Finished test of SSLeay Tripple-DES patterns. - -Wed Sep 15 16:22:17 CEST 1999 Werner Koch - - * rndw32.c: New. - -Mon Sep 13 10:51:29 CEST 1999 Werner Koch - - * bithelp.h: New. - * rmd160.h, sha1.h, md5.h: Use the rol macro from bithelp.h - -Tue Sep 7 16:23:36 CEST 1999 Werner Koch - - * Makefile.am: Fixed seds for latest egcc. By Ollivier Robert. - -Mon Sep 6 19:59:08 CEST 1999 Werner Koch - - * des.c (selftest): Add some testpattern - -Mon Aug 30 20:38:33 CEST 1999 Werner Koch - - * cipher.c (do_cbc_encrypt): Fixed serious bug occuring when not using - in place encryption. Pointed out by Frank Stajano. - -Mon Jul 26 09:34:46 CEST 1999 Werner Koch - - * md5.c (md5_final): Fix for a SCO cpp bug. - -Thu Jul 15 10:15:35 CEST 1999 Werner Koch - - * elgamal.c (elg_check_secret_key,elg_encrypt - elg_decrypt,elg_sign,elg_verify): Sanity check on the args. - * dsa.c (dsa_check_secret_key,dsa_sign,dsa_verify): Ditto. - - * pubkey.c (disable_pubkey_algo): New. - (check_pubkey_algo2): Look at disabled algo table. - * cipher.c (disable_cipher_algo): New. - (check_cipher_algo): Look at disabled algo table. - -Wed Jul 7 13:08:40 CEST 1999 Werner Koch - - * Makefile.am: Support for libtool. - -Fri Jul 2 11:45:54 CEST 1999 Werner Koch - - * dsa.c (gen_k): Changed algorithm to consume less random bytes - * elgamal.c (gen_k): Ditto. - - * random.c (random_dump_stats): New. - -Thu Jul 1 12:47:31 CEST 1999 Werner Koch - - * primegen.c, elgamal.c, dsa.c (progess): New and replaced all - fputc with a call to this function. - -Sat Jun 26 12:15:59 CEST 1999 Werner Koch - - * rndegd.c (do_write): s/ssize_t/int/ due to SunOS 4.1 probs. - - * cipher.c (do_cbc_encrypt, do_cbc_decrypt): New. - - * dynload.c (HAVE_DL_SHL_LOAD): Map hpux API to dlopen (Dave Dykstra). - * Makefile.am (install-exec-hook): Removed. - -Sun May 23 14:20:22 CEST 1999 Werner Koch - - * cipher.c (setup_cipher_table): Enable Twofish - - * random.c (fast_random_poll): Disable use of times() for mingw32. - -Mon May 17 21:54:43 CEST 1999 Werner Koch - - * dynload.c (register_internal_cipher_extension): Minor init fix. - -Tue May 4 15:47:53 CEST 1999 Werner Koch - - * primegen.c (gen_prime): Readded the Fermat test. Fixed the bug - that we didn't correct for step when passing the prime to the - Rabin-Miller test which led to bad performance (Stefan Keller). - (check_prime): Add a first Fermat test. - -Sun Apr 18 10:11:28 CEST 1999 Werner Koch - - * cipher.c (cipher_setiv): Add ivlen arg, changed all callers. - - * random.c (randomize_buffer): alway use secure memory because - we can't use m_is_secure() on a statically allocated buffer. - - * twofish.c: Replaced some macros by a loop to reduce text size. - * Makefile.am (twofish): No more need for sed editing. - -Fri Apr 9 12:26:25 CEST 1999 Werner Koch - - * cipher.c (cipher_open): Reversed the changes for AUTO_CFB. - - * blowfish.c: Dropped the Blowfish 160 mode. - * cipher.c (cipher_open): Ditto. - (setup_cipher_table): Ditto. And removed support of twofish128 - -Wed Apr 7 20:51:39 CEST 1999 Werner Koch - - * random.c (get_random_bits): Can now handle requests > POOLSIZE - - * cipher.c (cipher_open): Now uses standard CFB for automode if - the blocksize is gt 8 (according to rfc2440). - - * twofish.c: Applied Matthew Skala's patches for 256 bit key. - -Tue Apr 6 19:58:12 CEST 1999 Werner Koch - - * random.c (get_random_bits): Can now handle requests > POOLSIZE - - * cipher.c (cipher_open): Now uses standard CFB for automode if - the blocksize is gt 8 (according to rfc2440). - -Sat Mar 20 11:44:21 CET 1999 Werner Koch - - * rndlinux.c (tty_printf) [IS_MODULE]: Removed. - - * rndegd.c (gather_random): Some fixes. - -Wed Mar 17 13:09:03 CET 1999 Werner Koch - - * rndegd.c (do_read): New. - (gather_random): Changed the implementation. - -Mon Mar 8 20:47:17 CET 1999 Werner Koch - - * dynload.c (DLSYM_NEEDS_UNDERSCORE): Renamed. - -Fri Feb 26 17:55:41 CET 1999 Werner Koch - - * md.c: Nearly a total rewrote. - -Wed Feb 24 11:07:27 CET 1999 Werner Koch - - * cipher.c (context): Fixed alignment - * md.c: Ditto. - - * rndegd.c: New - -Mon Feb 22 20:04:00 CET 1999 Werner Koch - - * rndegd.c: New. - -Wed Feb 10 17:15:39 CET 1999 Werner Koch - - * Makefile.am: Modules are now figured out by configure - * construct.c: New. Generated by configure. Changed all modules - to work with that. - * sha1.h: Removed. - * md5.h: Removed. - - * twofish.c: Changed interface to allow Twofish/256 - - * rndunix.c (start_gatherer): Die on SIGPIPE. - -Wed Jan 20 18:59:49 CET 1999 Werner Koch - - * rndunix.c (gather_random): Fix to avoid infinite loop. - -Sun Jan 17 11:04:33 CET 1999 Werner Koch - - * des.c (is_weak_key): Replace system memcmp due to bugs - in SunOS's memcmp. - (des_get_info): Return error on failed selftest. - * twofish.c (twofish_setkey): Return error on failed selftest or - invalid keylength. - * cast5.c (cast_setkey): Ditto. - * blowfish.c (bf_setkey): Return error on failed selftest. - -Tue Jan 12 11:17:18 CET 1999 Werner Koch - - * random.c (random_is_faked): New. - - * tiger.c: Only compile if we have the u64 type - -Sat Jan 9 16:02:23 CET 1999 Werner Koch - - * rndunix.c (gather_random): check for setuid. - - * Makefile.am: Add a way to staically link random modules - -Thu Jan 7 18:00:58 CET 1999 Werner Koch - - * md.c (md_stop_debug): Do a flush first. - (md_open): size of buffer now depends on the secure parameter - -Sun Jan 3 15:28:44 CET 1999 Werner Koch - - * rndunix.c (start_gatherer): Fixed stupid ==/= bug - -1998-12-31 Geoff Keating - - * des.c (is_weak_key): Rewrite loop end condition. - -Tue Dec 29 14:41:47 CET 1998 Werner Koch - - * random.c: add unistd.h for getpid(). - (RAND_MAX): Fallback value for Sun. - -Wed Dec 23 17:12:24 CET 1998 Werner Koch - - * md.c (md_copy): Reset debug. - -Mon Dec 14 21:18:49 CET 1998 Werner Koch - - * random.c (read_random_source): Changed the interface to the - random gathering function. - (gather_faked): Use new interface. - * dynload.c (dynload_getfnc_fast_random_poll): Ditto. - (dynload_getfnc_gather_random): Ditto. - * rndlinux.c (gather_random): Ditto. - * rndunix.c (gather_random): Ditto. - -Sat Dec 12 18:40:32 CET 1998 Werner Koch - - * dynload.c (SYMBOL_VERSION): New to cope with system which needs - underscores. - - * rndunix.c: Rewrote large parts - -Thu Dec 10 20:15:36 CET 1998 Werner Koch - - * dynload.c (load_extension): increased needed verbosity level. - - * random.c (fast_random_poll): Fallback to a default fast random - poll function. - (read_random_source): Always use the faked entroy gatherer if no - gather module is available. - * rndlinux.c (fast_poll): Removed. - * rndunix.c (fast_poll): Removed. - - -Wed Nov 25 12:33:41 1998 Werner Koch (wk@isil.d.shuttle.de) - - * rand-*.c: Removed. - * rndlinux.c : New. - * rndunix.c : New. - * random.c : Restructured the interface to the gather modules. - (intialize): Call constructor functions - (read_radnom_source): Moved to here. - * dynload.c (dynload_getfnc_gather_random): New. - (dynload_getfnc_fast_random_poll): New. - (register_internal_cipher_extension): New. - (register_cipher_extension): Support of internal modules. - -Sun Nov 8 17:44:36 1998 Werner Koch (wk@isil.d.shuttle.de) - - * rand-unix.c (read_random_source): Removed the assert. - -Mon Oct 19 18:34:30 1998 me,,, (wk@tobold) - - * pubkey.c: Hack to allow us to give some info about RSA keys back. - -Thu Oct 15 11:47:57 1998 Werner Koch (wk@isil.d.shuttle.de) - - * dynload.c: Support for DLD - -Wed Oct 14 12:13:07 1998 Werner Koch (wk@isil.d.shuttle.de) - - * rand-unix.c: Now uses names from configure for /dev/random. - -1998-10-10 SL Baur - - * Makefile.am: fix sed -O substitutions to catch -O6, etc. - -Tue Oct 6 10:06:32 1998 Werner Koch (wk@isil.d.shuttle.de) - - * rand-unix.c (HAVE_GETTIMEOFDAY): Fixed (was ..GETTIMEOFTIME :-) - * rand-dummy.c (HAVE_GETTIMEOFDAY): Ditto. - -Mon Sep 28 13:23:09 1998 Werner Koch (wk@isil.d.shuttle.de) - - * md.c (md_digest): New. - (md_reset): New. - -Wed Sep 23 12:27:02 1998 Werner Koch (wk@isil.d.shuttle.de) - - * tiger.c (TIGER_CONTEXT): moved "buf", so that it is 64 bit aligned. - -Mon Sep 21 06:22:53 1998 Werner Koch (wk@(none)) - - * des.c: Some patches from Michael. - -Thu Sep 17 19:00:06 1998 Werner Koch (wk@(none)) - - * des.c : New file from Michael Roth - -Mon Sep 14 11:10:55 1998 Werner Koch (wk@(none)) - - * blowfish.c (bf_setkey): Niklas Hernaeus patch to detect weak keys. - -Mon Sep 14 09:19:25 1998 Werner Koch (wk@(none)) - - * dynload.c (RTLD_NOW): Now defined to 1 if it is undefined. - -Mon Sep 7 17:04:33 1998 Werner Koch (wk@(none)) - - * Makefile.am: Fixes to allow a different build directory - -Thu Aug 6 17:25:38 1998 Werner Koch,mobil,,, (wk@tobold) - - * random.c (get_random_byte): Removed and changed all callers - to use get_random_bits() - -Mon Jul 27 10:30:22 1998 Werner Koch (wk@(none)) - - * cipher.c : Support for other blocksizes - (cipher_get_blocksize): New. - * twofish.c: New. - * Makefile.am: Add twofish module. - -Mon Jul 13 21:30:52 1998 Werner Koch (wk@isil.d.shuttle.de) - - * random.c (read_pool): Simple alloc if secure_alloc is not set. - (get_random_bits): Ditto. - -Thu Jul 9 13:01:14 1998 Werner Koch (wk@isil.d.shuttle.de) - - * dynload.c (load_extension): Function now nbails out if - the program is run setuid. - -Wed Jul 8 18:58:23 1998 Werner Koch (wk@isil.d.shuttle.de) - - * rmd160.c (rmd160_hash_buffer): New. - -Thu Jul 2 10:50:30 1998 Werner Koch (wk@isil.d.shuttle.de) - - * cipher.c (cipher_open): algos >=100 use standard CFB - -Thu Jun 25 11:18:25 1998 Werner Koch (wk@isil.d.shuttle.de) - - * Makefile.am: Support for extensions - -Thu Jun 18 12:09:38 1998 Werner Koch (wk@isil.d.shuttle.de) - - * random.c (mix_pool): simpler handling for level 0 - -Mon Jun 15 14:40:48 1998 Werner Koch (wk@isil.d.shuttle.de) - - * tiger.c: Removed from dist, will reappear as dynload module - -Sat Jun 13 14:16:57 1998 Werner Koch (wk@isil.d.shuttle.de) - - * pubkey.c: Major changes to allow extensions. Changed the inteface - of all public key ciphers and added the ability to load extensions - on demand. - - * misc.c: Removed. - -Wed Jun 10 07:52:08 1998 Werner Koch,mobil,,, (wk@tobold) - - * dynload.c: New. - * cipher.c: Major changes to allow extensions. - -Mon Jun 8 22:43:00 1998 Werner Koch (wk@isil.d.shuttle.de) - - * cipher.c: Major internal chnages to support extensions. - * blowfish.c (blowfish_get_info): New and made all internal - functions static, changed heder. - * cast5.c (cast5_get_info): Likewise. - -Mon Jun 8 12:27:52 1998 Werner Koch (wk@isil.d.shuttle.de) - - * tiger.c (transform): Fix for big endian - - * cipher.c (do_cfb_decrypt): Big endian fix. - -Fri May 22 07:30:39 1998 Werner Koch (wk@isil.d.shuttle.de) - - * md.c (md_get_oid): Add a new one for TIGER. - -Thu May 21 13:24:52 1998 Werner Koch (wk@isil.d.shuttle.de) - - * cipher.c: Add support for a dummy cipher - -Thu May 14 15:40:36 1998 Werner Koch (wk@isil.d.shuttle.de) - - * rmd160.c (transform): fixed sigbus - I should better - add Christian von Roques's new implemenation of rmd160_write. - -Fri May 8 18:07:44 1998 Werner Koch (wk@isil.d.shuttle.de) - - * rand-internal.h, rand-unix.c, rand-w32.c, rand_dummy.c: New - * random.c: Moved system specific functions to rand-****.c - -Fri May 8 14:01:17 1998 Werner Koch (wk@isil.d.shuttle.de) - - * random.c (fast_random_poll): add call to gethrtime. - -Tue May 5 21:28:55 1998 Werner Koch (wk@isil.d.shuttle.de) - - * elgamal.c (elg_generate): choosing x was not correct, could - yield 6 bytes which are not from the random pool, tsss, tsss.. - -Tue May 5 14:09:06 1998 Werner Koch (wk@isil.d.shuttle.de) - - * primegen.c (generate_elg_prime): Add arg mode, changed all - callers and implemented mode 1. - -Mon Apr 27 14:41:58 1998 Werner Koch (wk@isil.d.shuttle.de) - - * cipher.c (cipher_get_keylen): New. - -Sun Apr 26 14:44:52 1998 Werner Koch (wk@isil.d.shuttle.de) - - * tiger.c, tiger.h: New. - -Wed Apr 8 14:57:11 1998 Werner Koch (wk@isil.d.shuttle.de) - - * misc.c (check_pubkey_algo2): New. - -Tue Apr 7 18:46:49 1998 Werner Koch (wk@isil.d.shuttle.de) - - * cipher.c: New - * misc.c (check_cipher_algo): Moved to cipher.c - * cast5.c: Moved many functions to cipher.c - * blowfish.c: Likewise. - -Sat Apr 4 19:52:08 1998 Werner Koch (wk@isil.d.shuttle.de) - - * cast5.c: Implemented and tested. - -Wed Apr 1 16:38:27 1998 Werner Koch (wk@isil.d.shuttle.de) - - * elgamal.c (elg_generate): Faster generation of x in some cases. - -Thu Mar 19 13:54:48 1998 Werner Koch (wk@isil.d.shuttle.de) - - * blowfish.c (blowfish_decode_cfb): changed XOR operation - (blowfish_encode_cfb): Ditto. - -Thu Mar 12 14:04:05 1998 Werner Koch (wk@isil.d.shuttle.de) - - * sha1.c (transform): Rewrote - - * blowfish.c (encrypt): Unrolled for rounds == 16 - (decrypt): Ditto. - -Tue Mar 10 16:32:08 1998 Werner Koch (wk@isil.d.shuttle.de) - - * rmd160.c (transform): Unrolled the loop. - -Tue Mar 10 13:05:14 1998 Werner Koch (wk@isil.d.shuttle.de) - - * random.c (read_pool): Add pool_balance stuff. - (get_random_bits): New. - - * elgamal.c (elg_generate): Now uses get_random_bits to generate x. - - -Tue Mar 10 11:33:51 1998 Werner Koch (wk@isil.d.shuttle.de) - - * md.c (md_digest_length): New. - -Tue Mar 10 11:27:41 1998 Werner Koch (wk@isil.d.shuttle.de) - - * dsa.c (dsa_verify): Works. - -Mon Mar 9 12:59:08 1998 Werner Koch (wk@isil.d.shuttle.de) - - * dsa.c, dsa.h: Removed some unused code. - -Wed Mar 4 10:39:22 1998 Werner Koch (wk@isil.d.shuttle.de) - - * md.c (md_open): Add call to fast_random_poll. - blowfish.c (blowfish_setkey): Ditto. - -Tue Mar 3 13:32:54 1998 Werner Koch (wk@isil.d.shuttle.de) - - * rmd160.c (rmd160_mixblock): New. - * random.c: Restructured to start with a new RNG implementation. - * random.h: New. - -Mon Mar 2 19:21:46 1998 Werner Koch (wk@isil.d.shuttle.de) - - * gost.c, gost.h: Removed because they did only contain trash. - -Sun Mar 1 16:42:29 1998 Werner Koch (wk@isil.d.shuttle.de) - - * random.c (fill_buffer): removed error message if n == -1. - -Fri Feb 27 16:39:34 1998 Werner Koch (wk@isil.d.shuttle.de) - - * md.c (md_enable): No init if called twice. - -Thu Feb 26 07:57:02 1998 Werner Koch (wk@isil.d.shuttle.de) - - * primegen.c (generate_elg_prime): Changed the progress printing. - (gen_prime): Ditto. - -Tue Feb 24 12:28:42 1998 Werner Koch (wk@isil.d.shuttle.de) - - * md5.c, md.5 : Replaced by a modified version of md5.c from - GNU textutils 1.22. - -Wed Feb 18 14:08:30 1998 Werner Koch (wk@isil.d.shuttle.de) - - * md.c, md.h : New debugging support - -Mon Feb 16 10:08:47 1998 Werner Koch (wk@isil.d.shuttle.de) - - * misc.c (cipher_algo_to_string): New - (pubkey_algo_to_string): New. - (digest_algo_to_string): New. - - - Copyright 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 - 2007, 2008, 2009, 2010, 2011 Free Software Foundation, Inc. - - This file is free software; as a special exception the author gives - unlimited permission to copy and/or distribute it, with or without - modifications, as long as this notice is preserved. - - This file is distributed in the hope that it will be useful, but - WITHOUT ANY WARRANTY, to the extent permitted by law; without even the - implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. diff --git a/thirdparty/grub-2.04/grub-core/lib/libgcrypt/cipher/Makefile.am b/thirdparty/grub-2.04/grub-core/lib/libgcrypt/cipher/Makefile.am deleted file mode 100644 index 76cdc96ad..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/libgcrypt/cipher/Makefile.am +++ /dev/null @@ -1,83 +0,0 @@ -# Makefile for cipher modules -# Copyright (C) 1998, 1999, 2000, 2001, 2002, -# 2003, 2009 Free Software Foundation, Inc. -# -# This file is part of Libgcrypt. -# -# Libgcrypt is free software; you can redistribute it and/or modify -# it under the terms of the GNU Lesser General Public License as -# published by the Free Software Foundation; either version 2.1 of -# the License, or (at your option) any later version. -# -# Libgcrypt is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU Lesser General Public License for more details. -# -# You should have received a copy of the GNU Lesser General Public -# License along with this program; if not, see . - -# Process this file with automake to produce Makefile.in - -EXTRA_DIST = Manifest - -# Need to include ../src in addition to top_srcdir because gcrypt.h is -# a built header. -AM_CPPFLAGS = -I../src -I$(top_srcdir)/src -AM_CFLAGS = $(GPG_ERROR_CFLAGS) - - -noinst_LTLIBRARIES = libcipher.la - -GCRYPT_MODULES = @GCRYPT_CIPHERS@ @GCRYPT_PUBKEY_CIPHERS@ @GCRYPT_DIGESTS@ - -libcipher_la_DEPENDENCIES = $(GCRYPT_MODULES) -libcipher_la_LIBADD = $(GCRYPT_MODULES) - -libcipher_la_SOURCES = \ -cipher.c pubkey.c ac.c md.c kdf.c \ -hmac-tests.c \ -bithelp.h \ -primegen.c \ -hash-common.c hash-common.h \ -rmd.h - -EXTRA_libcipher_la_SOURCES = \ -arcfour.c \ -blowfish.c \ -cast5.c \ -crc.c \ -des.c \ -dsa.c \ -elgamal.c \ -ecc.c \ -idea.c \ -md4.c \ -md5.c \ -rijndael.c rijndael-tables.h \ -rmd160.c \ -rsa.c \ -seed.c \ -serpent.c \ -sha1.c \ -sha256.c \ -sha512.c \ -tiger.c \ -whirlpool.c \ -twofish.c \ -rfc2268.c \ -camellia.c camellia.h camellia-glue.c - -if ENABLE_O_FLAG_MUNGING -o_flag_munging = sed -e 's/-O\([2-9s][2-9s]*\)/-O1/' -e 's/-Ofast/-O1/g' -else -o_flag_munging = cat -endif - - -# We need to lower the optimization for this module. -tiger.o: $(srcdir)/tiger.c - `echo $(COMPILE) -c $(srcdir)/tiger.c | $(o_flag_munging) ` - -tiger.lo: $(srcdir)/tiger.c - `echo $(LTCOMPILE) -c $(srcdir)/tiger.c | $(o_flag_munging) ` diff --git a/thirdparty/grub-2.04/grub-core/lib/libgcrypt/cipher/Manifest b/thirdparty/grub-2.04/grub-core/lib/libgcrypt/cipher/Manifest deleted file mode 100644 index 0cd64f71f..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/libgcrypt/cipher/Manifest +++ /dev/null @@ -1,73 +0,0 @@ -# Manifest - checksums of the cipher directory -# Copyright 2003 Free Software Foundation, Inc. -# -# This file is part of Libgcrypt. -# -# Libgcrypt is free software; you can redistribute it and/or modify -# it under the terms of the GNU Lesser general Public License as -# published by the Free Software Foundation; either version 2.1 of -# the License, or (at your option) any later version. -# -# Libgcrypt is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU Lesser General Public License for more details. -# -# You should have received a copy of the GNU Lesser General Public -# License along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA - -# Checksums for all source files in this directory. Format is -# filename, blanks, base-64 part of an OpenPGP detached signature -# without the header lines. Blank lines and lines beginning with a -# hash mark are ignored. A tool to process this file is available by -# cvs -d :pserver:anoncvs@cvs.gnupg.org:/cvs/wk co misc-scripts/manifest-tool -# -# The special entry "$names$" holds a signature over all sorted -# filenames excluding itself. - - -# Algorithm API -cipher.c iQCVAwUAQDzrVjEAnp832S/7AQIPDgP+OVJ/YNWY5m7c09EBbPAzL/WsGoj6wrBNMmkRlMOqTHeh+OOtjuFHt1f9uhfM2Nzl7sJ5+h4ryZKLEZmQPRMTZTnAqkvGdsrJWJnigUA9QwYdV0ONqC9C63gpuG465gO9TZVOqlQu/FTxSRuTQYUulkaBNG71n8nZEOusBVwV2YA==58xH -pubkey.c iQCVAwUAP9XQ3jEAnp832S/7AQJ5UgQAyHfEBvPVJ8wTRg8c7ixS2GiVmIgwIo5tvQaiQJTPWASevvYrB+2Z2qa9cATyu50ACjLzbaquGBgPzjJV3dU/qttT1gCqRuN/LCNvXFe5qnIZezejc3RAadFNTw/pOTHq0wxD1Keg66ruei9R36Nba59pEQIWIBXTfubRft2hMYk==E09t -ac.c iQCVAwUAQDzsOzEAnp832S/7AQJCBQP/WI6EV/dsR4rmha6RVhvkjZo17kQ8z6pIl5J3cXOvqEkIFeD2HYu3HHrWST5l7yXlffhpDkVHkfMih4ruK76q6Fm0dxZ98pO4C/dVtgimlvvcy/wOQjpzsE0fYAe1BYdg81LJ09X33vW5x6C29lunfKROO2tPlV5i8ffeoFvmMF8==j26g -md.c iQCVAwUAP+NFGjEAnp832S/7AQJs8wP/Qdk0EAKsyr3O1/pmOSN8AG4rPKbd6KDTzvoBPAN4upFwKYY4hWwvy12Q3YU9DmECrzZkRCXHR7mljVQKs6B7CRZJKjFKmOELpcJDtKvu40vTs1bOH4k9iJYZpGgRA83nkQ+ELAcphAbCA+KIpVr2K4mCJAB0FhpC2uOQ50JHAko==BeF6 -primegen.c iQCVAwUAQDzsoDEAnp832S/7AQKYRwP/TqAQBm1rHTnF0HYE05PqXfWlOqa6EosqVpaOcs/OIW6PaqX0xH1UlrukK7jNOjK3xC4o1qNQ1UKzz2dvQaq1bMvNNizeavxAh10SJZc0hIc/ofc83IbjLh8SZVWQ67JxjsUd3DOXmSmhPZ+Pqd7cUIiw8fDoF+I9EZqy3COu1wY==1ebT - -# Algorithm implementations -arcfour.c iQCVAwUAP9XR/TEAnp832S/7AQJcRwP6AlvYEx++fpT4mIYo0xRDqKEQeqMQvbaRhIg2eV74JxItpHa3q5YsYIl+n1yUz5g35JRWWXSWmAZBwO5wLKsHii4kRUhgrKWnSoQZoPpl49L5+N3R58ON3S0ru5lsBiEJEze3xplf2vqwrH9v1QHVD+gU7UTlfNqrIJoOUXN+1O4==Tq+x -blowfish.c iQCVAwUAP9XTETEAnp832S/7AQJaEgQAgiqqfuO+zQtscgTB0rvOzVymIKjRKjYhFuLjVuc79G4z1RCAffvIn/YM2d7kt+Z/QF7zjcTAOgETCQL1XokpX2zz9HPAMi2tlDY5zsDufTNqj0n4WBL9nM7w6XAvsiwP1B3bqCTv9SjJV4KbxJ58vw1yQE+sqW74R/QIHFvC7mU==wZnX -cast5.c iQCVAwUAP9XT6DEAnp832S/7AQJ3xgP/ehLjEN3GELGudbqeo91Xd+PqitHrkuBbtRIYX7Udd/fyXLN+h8rMJVyIQX2m+mpxbBxudVU3x8/DNT8B0ZHAwK6qqJmEBLLhEYPgIuF76i9LMrP1KqUPhAwRZ2OppjIIugBQ+rP74aD4eLyd/aKQHNuXML8QGWR6KwQShohXM5I==/BRh -crc.c iQCVAwUAP7ouejEAnp832S/7AQIgwQQApg5Nm63tH5DQkbN+zPzMO9Ygoj3ukxfFTyTBPYSXYKMiTjEbESegaU40uN8jnz2vprcIQWcgZfzO4+opEJMcI35aPwzEk0vKOp0S/PrBLUY2rJfnDVkX5XgJFZa2Q7LLe826UEBzTVYW924utiCCe8oOaOEWVNpg1mqdknu3M9o==kz5D -des.c iQCVAwUAQCN2oDEAnp832S/7AQL/jwP6Auoq6nZCDBjpgc9tDzuIRwa9DqyuM3gX94uvgEpUwdHszb2bG43dz03kVmcYxtj1MzXbyCeCZOwox0b2SKmLgxIbrNP6yGbzVdTj6592gDYuf/ZXmc1ZNJ1DDldcPQ0n9fXUipUPwyPaNWo3mSZaNcMKSWWzdK0J6ciG6nk7SWI==9k/t -dsa.c iQCVAwUAP9XZHDEAnp832S/7AQLBRgP/XrBzTEYx5ccMj1MMb6sg37liEHdIyyy49zjvt6jUqxj4RuwVEN8S6v3u4q/QyJkHAi1E0EkREgENlyHW6PKWhYbcrd0vPIAN15yjnl2yqtrCrJImexUCoqJJewK0E4JOicGbabTil8MZjk+mbhEPnjJBqOkyP1w0i31pEDgE/8M==pC8s -elgamal.c iQCVAwUAP9XbYzEAnp832S/7AQLXagQA3HrvspZfbTGgmUH0IqLQTJ0exUPxJv5DET2TvoIy62trDmMN6lTAj5P+a7jQ8udcu0w+mR2vXUHcxUpNA2PxLaMwGzNSY4zRDNe9r3SFTDrFm6m4y9Ko2e8XtEA+WF6P/XLpck4Jn7vMEDmVGPwkNd22kXFFE8dBGwG6i5Hk1Mk==oBUs -md4.c iQCVAwUAP9h50DEAnp832S/7AQJhHgQAzNA/B6MWFDlCtPkIVaW8RpP1Eg0ZNMsy0s7SJkopOCBlu6CwXUOKe+8ppcSxhjYKh4i4uQr/QtfipYlBjzKJGnrafoF/NugXNCOHSTGT11TvK7mCiBuUMVgvZGAlOJImk6eTTfUjRrMfaXM/SWl8bdJ4ZpzdjEyVh89r7I5JrGk==x2UD -md5.c iQCVAwUAP9h7LzEAnp832S/7AQJUGQP/c0cbf6WZXCzmjufHxiE9FAQBzTsA0WtaNqdFcHl7fhmikGtknlaED8n5a7eYd/C481UQW6Wgq/oZdsvgoPWPhG3fOCy2CFP9cZVXITuMSf0ucyZTFUJNO15fnZ+nDfsUv+JPdv1aSeRinAUtfAcSKfkSyR9BCPZvkx+tgU6cphU==Zv+h -rijndael.c iQCVAwUAP9h9cTEAnp832S/7AQKF1AP+P2L/tPqDJRDg+/fwbOk8Ts0MNxnvvYEm3gE73TKuLt1S+B2+jkrZcKNvM5VGPnVMJbnS0lmIK04nmedHCOftGTOwhGulZAHHIaKGystT3Jql4iPws/JMgAjE7Fyxh5WZMtB9yEljKBpJ5XNqhrMvvxcHpnyP3+YzIXNwzk34V+c==dJ5k -rmd160.c iQCVAwUAP9h+bTEAnp832S/7AQK1OgP+PNKF6Nzi6X93easVlksdLqKEsArCAw2QjGWDGyxTnbiJM55qAl9JxR1mn3V+oOL7izLLwTt6EYK9evhzfcxY5N5Mni85RAcsLPsuAfQDEzjI6GUWHtQUKPbM+BaorzfhQjYFSZyvum/dZYJ/WfiwwwhqqIKyVU2ZFSqA38YGC/c==9jdA -rsa.c iQCVAwUAP9iHIzEAnp832S/7AQKAYwQAuWtnMte54QHN+Hij9t4sGuypXogajOb1vQQwGgS0fKsaBZsuSP2amze4o5diIvsQTsFQ4CzjvqoCVuBDoHM3xkSD8wGDizgvtCamAxkdbF7wmzldKFn8SpJqlVwWQMP6kk1IjXHEuYb4IDWGTbVMhfEu+eOlU8+PSK4IhZqNvt4==/3hp -serpent.c iQCVAwUAP9h/VzEAnp832S/7AQLyCwP/d1zbmb7l/PriZNa9/Z7mo01XFe5MnAqCfIwhl9GjeaMszcoS37jECNq5nLvrTTFIIJpm3rvBePwiCG4Wwx1I18HCxaP198pcSaR+BLOJ3Aj52EZPrxtqlDKuFr38ZOP5giyUqUYVYGVdrz4kRMNWAZQK53GeJnGhXCnhxojLEgA==ck46 -sha1.c iQCVAwUAP9iATTEAnp832S/7AQKcSwQAwAs/HnNqho3lU1ZUgCPNt5P2/Brm6W21+wWWGKJkSrra/c4NYVKJGDDwlsFE0b9ln1uZt7bHReFkKXK3JnrKTmNVcx/Cy64iCMRNMhaM72Mqy7wWx5yHBAmMBxzFGnNQKbmeY52zeGih5HsNLSibc2pPuOViWo2JPJ5Ci/wIwl8==/wtO -sha256.c iQCVAwUAP9iAtzEAnp832S/7AQJD2QP/UqvL0hhjG1wEFbGrdkV9tba1sMDXdnnK6X7HdLuRpVAgNiQiFf8JDmntd/dZ2Q71p4Uae2ctqve4WoEijPUZPjACnpuZfx0SEQL0lQBkwxzJp7lz9ujVtwQ2cM/aYexJkXcWgGcloJNLM3JbWPGIJnuYbr/IwJ6RQF9vgj0357o==UWO1 -sha512.c iQCVAwUAP9iBTDEAnp832S/7AQIPBAQA28CJSUQLiW0s2x9u8/OH2eKnxPjA4sZmb50WP7920Lem66P31C3BrOqwfBot4RLhjL+zh/+Uc4s3HPwApZuj9E4BxNMlqLv+Tqk++DAbdaOeYT4jeUt+mlhQQ6mH/RDsy32rZsNsGQ2bUGxazZmfG++PL3JyhawqCy00SUDr/o0==H+0X -tiger.c iQCVAwUAP9iCfjEAnp832S/7AQKufwP/fryv3MqSOYY+90325DH7X3/CtekxeooN0scGsHX0fxBakWSMecTNrj33KPddLS46gU/S89zIc2N/Bw/7EVIAXVFA3/3Ip+OrFOuIMO4Py1sCdB8o2Y+5ygv8iXLcsXIq1O0av79i9g774V3uaXa2qN9ZnXe0AEhcy8FHJ2i/wro==5XVB -twofish.c iQCVAwUAP9iD6TEAnp832S/7AQKUnQP/Rq8FaYeHTG7HbZuqAs9pbPitzjDbkdZddmInWR7NmevBkKvhsJALjVooc0KGQfo2lAAmy3Xi/4QQN8VPn51DVjDIgf7x+DQh/9TFJHMccxI9asUgi4+TNnmMqLU1k3N8S2PjyZ1sjeC8B79fKPpwCzj72WkqPkzZw3l2jArr+dU==NdJT -rfc2268.c iQCVAwUAQCN+3jEAnp832S/7AQLv1gQA1hJh29hAjKi4uLSGxXvJ6cyYmPdmevdKrbLnuHZWtHe4xvCgy/nTdEojEpxgLp/hL/ogasuWRC1W16Wiz9ryxf7YR0uhZWayO/bQNagpfU5MIkJTLuKqqgpwYumCSQfOugXVAqcgEzj+13eeyJaFVrzwrNa67sh84nmbjOjNjvE==0zBq - -# Random number related -random.c iQCVAwUAP7nsITEAnp832S/7AQK4SAQAtvfUgrtGOQ2PlxGMla0qJLPHjJacMwgq0ecusiI79elPdDsFfCCk6dK1Ug2kFbNm22nCGHNcUquqbX7noi7ZVQnmPBQXzyLNZd7GmrawRZfdlRerTUDBpSnR8V8ui/5+YYp627E7kKGC0hPSgqXFql6oBMIfno0LZwFJTjIevRY==L419 -random.h iQCVAwUAP7ovKDEAnp832S/7AQJ3bQQAjnPebnyTC7sphAv2I7uIz+yPgw1ZfbVhLv+OiWDlO9ish+fRyyMpy+HELBOgZjJdgRegqhlZC6qyns5arM/VglYi+PzvdLO3hIqHE/YFfpIFPz8wBrcmlqrYyd3CsGqcYsfjocXNttCBLeSWmoJ09ltKQH8yzJf3oAgN6X1yuc4==eNoU -rand-internal.h iQCVAwUAP7ouvDEAnp832S/7AQLYnAQAhdI7ERoJVCkV8GiV7MjaUxv1WIL7iZ+jIOvVhv4fNyhCGCGoEtTjkyput/lj7Nsh3FXEqRhypGGrCLf47x/gua5n+BwffogxVyUDqiOyyGhNTPpe3fQcNBvbPCtco8yMK4GJO5G3BqzlPyN+BMeogLymyV6Sm1mvh5LZDyAFbfQ==tZSE -rndlinux.c iQCVAwUAP9iPYTEAnp832S/7AQL6/AP/ZDrbOkVuB9qJ7sKeX1MImZEsz3mi0xPovJzaBtBU7a0idcUKrWYOvQFWRlLUeq0iCT6+h2l5bniP7q7hepzlKa+VPY9VWaQthqeJm2l5LN6QQ5PyMfBq04QuBncw9BJnCGmEyTLt3RxIXBAPdxmiVxtcRIFUqCBtQvoUXGLvemw==t37k -rndegd.c iQCVAwUAP9iPRDEAnp832S/7AQImBQP/WHKg+hKXcm1pQvilzML0jZpwK5PAMM4uBnnPJNIXWOYBO6I/Xg9d/tPLg8NlmmtyQCo2Eu0ybDSt+8mu+dWveAys+0LTi0MIqeP9BMzCKz8dnWH6+S8huLXwTF3m0IrqM0JLb6b71GK9SOq6sWQ22yW5vf61hXP8kH9dhIaoMZs==FaHV -rndunix.c iQCVAwUAP9iQlzEAnp832S/7AQL/KgQA29GnvcD4Xb5qjDMBgW9THEE4+4lfex/6k+Fh0IT61OLJsWVLJ7bJpRntburw4uQm4Tf7CO8vaiDFDYhKKrzXeOF1fmdpcL8hA+fNp9I/MUOc4e9kN9+YJ9wikVa0SZj1OBfhzgcFLd1xOtulkr3ii52HLF9vhrxzkgVwvD10Bi8==2cML -rndw32.c iQCVAwUAP9iRKDEAnp832S/7AQIuaAQA3AJr3WqnxNDsWCIdvehf8Suotthj+laX8nJsvDfFhXPKcXDpsg0wTTXSnnKgyED53+uYiMDnVRsxeWAyhKwvx1MjjlaSMMjzbH6isWTH8FaWpLgrxEkXoPeNqYf5FXpdUkcUxGX2RkQeuX/cIfiHLNE9CV0usaF2jysjBX2iERY==EEnO - -# Helper -bithelp.h iQCVAwUAP7ouPTEAnp832S/7AQKXggQAqjcgvihIF3WclOgw1JV2rbARw4ISIDRMFqdaNCqBRx6BwEz3UGsEIlz6+iR1sS/reqN61WvtjLb+D0+tujAkGrgQJhFLG85WtG2tB5UVoI3am1fpkwiRm+bR4rv0rGk0BYk81bC7+l4KrK9o5lVp4lCsrorlUKsd48lNmBHyAXM==mDDN -rmd.h iQCVAwUAP7oumjEAnp832S/7AQJiJQP/V4bJwjZaYndJzV+KRnIDbl1koHuw+ZK5heMYVu8Qk4ylqv//BGyeRa3jZCcfPHI35q6HilCs2VBm8hiBMjHSqY/VPn2ZQ0yg/lt6qEvl7YjsLmyMICvjG+ncszHoq9pRvnF3vTnM18sPIioXLk8fskuM0XOCNBs0ARBAQjY9UGI==olUN - -# Configuration -Makefile.am iQCVAwUAQCN33TEAnp832S/7AQKFJAQAz7BDkC814q+QiuE/jnutJHR5qlgbrm3ikGbQwdRzYUscst4bCCWy3uKL/sIPGLg+JQXtF5FnsQy3s4D9BOYhp72cA9ktYK65hhi4pNm/JQ0lXkZMNfk8Go5lNzKezlWwHvkMwRXR0Fep0wPdyeaKW5BfaW2ABvgep6Bp+hHEbyg==zSyi -$names$ iQCVAwUAQCN3EDEAnp832S/7AQJXLAP8DvHTpm5DkTF35EmzeKpi9ie59AZcZanD19ir/e/7+PaQxr2riuLHDGwFKTju+dcvvBsqrygXOC378GXVWzIF2OZwS4EdDcJ+pgojo9UpsqpKsJHouY4Ugx5cQialxba462kUn8hcihSBnMyc4LzbJ5WQ4puQuqy544d2x94+2ms==G4Ls diff --git a/thirdparty/grub-2.04/grub-core/lib/libgcrypt/cipher/ac.c b/thirdparty/grub-2.04/grub-core/lib/libgcrypt/cipher/ac.c deleted file mode 100644 index f5e946a2d..000000000 --- a/thirdparty/grub-2.04/grub-core/lib/libgcrypt/cipher/ac.c +++ /dev/null @@ -1,3301 +0,0 @@ -/* ac.c - Alternative interface for asymmetric cryptography. - Copyright (C) 2003, 2004, 2005, 2006 - 2007, 2008 Free Software Foundation, Inc. - - This file is part of Libgcrypt. - - Libgcrypt is free software; you can redistribute it and/or modify - it under the terms of the GNU Lesser general Public License as - published by the Free Software Foundation; either version 2.1 of - the License, or (at your option) any later version. - - Libgcrypt is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with this program; if not, see . - */ - -#include -#include -#include -#include -#include -#include - -#include "g10lib.h" -#include "cipher.h" -#include "mpi.h" - - - -/* At the moment the ac interface is a wrapper around the pk - interface, but this might change somewhen in the future, depending - on how many people prefer the ac interface. */ - -/* Mapping of flag numbers to the according strings as it is expected - for S-expressions. */ -static struct number_string -{ - int number; - const char *string; -} ac_flags[] = - { - { GCRY_AC_FLAG_NO_BLINDING, "no-blinding" }, - }; - -/* The positions in this list correspond to the values contained in - the gcry_ac_key_type_t enumeration list. */ -static const char *ac_key_identifiers[] = - { - "private-key", - "public-key" - }; - -/* These specifications are needed for key-pair generation; the caller - is allowed to pass additional, algorithm-specific `specs' to - gcry_ac_key_pair_generate. This list is used for decoding the - provided values according to the selected algorithm. */ -struct gcry_ac_key_generate_spec -{ - int algorithm; /* Algorithm for which this flag is - relevant. */ - const char *name; /* Name of this flag. */ - size_t offset; /* Offset in the cipher-specific spec - structure at which the MPI value - associated with this flag is to be - found. */ -} ac_key_generate_specs[] = - { - { GCRY_AC_RSA, "rsa-use-e", offsetof (gcry_ac_key_spec_rsa_t, e) }, - { 0 } - }; - -/* Handle structure. */ -struct gcry_ac_handle -{ - int algorithm; /* Algorithm ID associated with this - handle. */ - const char *algorithm_name; /* Name of the algorithm. */ - unsigned int flags; /* Flags, not used yet. */ - gcry_module_t module; /* Reference to the algorithm - module. */ -}; - -/* A named MPI value. */ -typedef struct gcry_ac_mpi -{ - char *name; /* Self-maintained copy of name. */ - gcry_mpi_t mpi; /* MPI value. */ - unsigned int flags; /* Flags. */ -} gcry_ac_mpi_t; - -/* A data set, that is simply a list of named MPI values. */ -struct gcry_ac_data -{ - gcry_ac_mpi_t *data; /* List of named values. */ - unsigned int data_n; /* Number of values in DATA. */ -}; - -/* A single key. */ -struct gcry_ac_key -{ - gcry_ac_data_t data; /* Data in native ac structure. */ - gcry_ac_key_type_t type; /* Type of the key. */ -}; - -/* A key pair. */ -struct gcry_ac_key_pair -{ - gcry_ac_key_t public; - gcry_ac_key_t secret; -}; - - - -/* - * Functions for working with data sets. - */ - -/* Creates a new, empty data set and store it in DATA. */ -gcry_error_t -_gcry_ac_data_new (gcry_ac_data_t *data) -{ - gcry_ac_data_t data_new; - gcry_error_t err; - - if (fips_mode ()) - return gpg_error (GPG_ERR_NOT_SUPPORTED); - - data_new = gcry_malloc (sizeof (*data_new)); - if (! data_new) - { - err = gcry_error_from_errno (errno); - goto out; - } - - data_new->data = NULL; - data_new->data_n = 0; - *data = data_new; - err = 0; - - out: - - return err; -} - -/* Destroys all the entries in DATA, but not DATA itself. */ -static void -ac_data_values_destroy (gcry_ac_data_t data) -{ - unsigned int i; - - for (i = 0; i < data->data_n; i++) - if (data->data[i].flags & GCRY_AC_FLAG_DEALLOC) - { - gcry_mpi_release (data->data[i].mpi); - gcry_free (data->data[i].name); - } -} - -/* Destroys the data set DATA. */ -void -_gcry_ac_data_destroy (gcry_ac_data_t data) -{ - if (data) - { - ac_data_values_destroy (data); - gcry_free (data->data); - gcry_free (data); - } -} - -/* This function creates a copy of the array of named MPIs DATA_MPIS, - which is of length DATA_MPIS_N; the copy is stored in - DATA_MPIS_CP. */ -static gcry_error_t -ac_data_mpi_copy (gcry_ac_mpi_t *data_mpis, unsigned int data_mpis_n, - gcry_ac_mpi_t **data_mpis_cp) -{ - gcry_ac_mpi_t *data_mpis_new; - gcry_error_t err; - unsigned int i; - gcry_mpi_t mpi; - char *label; - - data_mpis_new = gcry_malloc (sizeof (*data_mpis_new) * data_mpis_n); - if (! data_mpis_new) - { - err = gcry_error_from_errno (errno); - goto out; - } - memset (data_mpis_new, 0, sizeof (*data_mpis_new) * data_mpis_n); - - err = 0; - for (i = 0; i < data_mpis_n; i++) - { - /* Copy values. */ - - label = gcry_strdup (data_mpis[i].name); - mpi = gcry_mpi_copy (data_mpis[i].mpi); - if (! (label && mpi)) - { - err = gcry_error_from_errno (errno); - gcry_mpi_release (mpi); - gcry_free (label); - break; - } - - data_mpis_new[i].flags = GCRY_AC_FLAG_DEALLOC; - data_mpis_new[i].name = label; - data_mpis_new[i].mpi = mpi; - } - if (err) - goto out; - - *data_mpis_cp = data_mpis_new; - err = 0; - - out: - - if (err) - if (data_mpis_new) - { - for (i = 0; i < data_mpis_n; i++) - { - gcry_mpi_release (data_mpis_new[i].mpi); - gcry_free (data_mpis_new[i].name); - } - gcry_free (data_mpis_new); - } - - return err; -} - -/* Create a copy of the data set DATA and store it in DATA_CP. */ -gcry_error_t -_gcry_ac_data_copy (gcry_ac_data_t *data_cp, gcry_ac_data_t data) -{ - gcry_ac_mpi_t *data_mpis = NULL; - gcry_ac_data_t data_new; - gcry_error_t err; - - if (fips_mode ()) - return gpg_error (GPG_ERR_NOT_SUPPORTED); - - /* Allocate data set. */ - data_new = gcry_malloc (sizeof (*data_new)); - if (! data_new) - { - err = gcry_error_from_errno (errno); - goto out; - } - - err = ac_data_mpi_copy (data->data, data->data_n, &data_mpis); - if (err) - goto out; - - data_new->data_n = data->data_n; - data_new->data = data_mpis; - *data_cp = data_new; - - out: - - if (err) - gcry_free (data_new); - - return err; -} - -/* Returns the number of named MPI values inside of the data set - DATA. */ -unsigned int -_gcry_ac_data_length (gcry_ac_data_t data) -{ - return data->data_n; -} - - -/* Add the value MPI to DATA with the label NAME. If FLAGS contains - GCRY_AC_FLAG_COPY, the data set will contain copies of NAME - and MPI. If FLAGS contains GCRY_AC_FLAG_DEALLOC or - GCRY_AC_FLAG_COPY, the values contained in the data set will - be deallocated when they are to be removed from the data set. */ -gcry_error_t -_gcry_ac_data_set (gcry_ac_data_t data, unsigned int flags, - const char *name, gcry_mpi_t mpi) -{ - gcry_error_t err; - gcry_mpi_t mpi_cp; - char *name_cp; - unsigned int i; - - name_cp = NULL; - mpi_cp = NULL; - - if (fips_mode ()) - return gpg_error (GPG_ERR_NOT_SUPPORTED); - - if (flags & ~(GCRY_AC_FLAG_DEALLOC | GCRY_AC_FLAG_COPY)) - { - err = gcry_error (GPG_ERR_INV_ARG); - goto out; - } - - if (flags & GCRY_AC_FLAG_COPY) - { - /* Create copies. */ - - flags |= GCRY_AC_FLAG_DEALLOC; - name_cp = gcry_strdup (name); - mpi_cp = gcry_mpi_copy (mpi); - if (! (name_cp && mpi_cp)) - { - err = gcry_error_from_errno (errno); - goto out; - } - } - - /* Search for existing entry. */ - for (i = 0; i < data->data_n; i++) - if (! strcmp (name, data->data[i].name)) - break; - if (i < data->data_n) - { - /* An entry for NAME does already exist. */ - if (data->data[i].flags & GCRY_AC_FLAG_DEALLOC) - { - gcry_mpi_release (data->data[i].mpi); - gcry_free (data->data[i].name); - } - } - else - { - /* Create a new entry. */ - - gcry_ac_mpi_t *ac_mpis; - - ac_mpis = gcry_realloc (data->data, - sizeof (*data->data) * (data->data_n + 1)); - if (! ac_mpis) - { - err = gcry_error_from_errno (errno); - goto out; - } - - if (data->data != ac_mpis) - data->data = ac_mpis; - data->data_n++; - } - - data->data[i].name = name_cp ? name_cp : ((char *) name); - data->data[i].mpi = mpi_cp ? mpi_cp : mpi; - data->data[i].flags = flags; - err = 0; - - out: - - if (err) - { - gcry_mpi_release (mpi_cp); - gcry_free (name_cp); - } - - return err; -} - -/* Stores the value labelled with NAME found in the data set DATA in - MPI. The returned MPI value will be released in case - gcry_ac_data_set is used to associate the label NAME with a - different MPI value. */ -gcry_error_t -_gcry_ac_data_get_name (gcry_ac_data_t data, unsigned int flags, - const char *name, gcry_mpi_t *mpi) -{ - gcry_mpi_t mpi_return; - gcry_error_t err; - unsigned int i; - - if (fips_mode ()) - return gpg_error (GPG_ERR_NOT_SUPPORTED); - - if (flags & ~(GCRY_AC_FLAG_COPY)) - { - err = gcry_error (GPG_ERR_INV_ARG); - goto out; - } - - for (i = 0; i < data->data_n; i++) - if (! strcmp (name, data->data[i].name)) - break; - if (i == data->data_n) - { - err = gcry_error (GPG_ERR_NOT_FOUND); - goto out; - } - - if (flags & GCRY_AC_FLAG_COPY) - { - mpi_return = gcry_mpi_copy (data->data[i].mpi); - if (! mpi_return) - { - err = gcry_error_from_errno (errno); /* FIXME? */ - goto out; - } - } - else - mpi_return = data->data[i].mpi; - - *mpi = mpi_return; - err = 0; - - out: - - return err; -} - -/* Stores in NAME and MPI the named MPI value contained in the data - set DATA with the index IDX. NAME or MPI may be NULL. The - returned MPI value will be released in case gcry_ac_data_set is - used to associate the label NAME with a different MPI value. */ -gcry_error_t -_gcry_ac_data_get_index (gcry_ac_data_t data, unsigned int flags, - unsigned int idx, - const char **name, gcry_mpi_t *mpi) -{ - gcry_error_t err; - gcry_mpi_t mpi_cp; - char *name_cp; - - name_cp = NULL; - mpi_cp = NULL; - - if (fips_mode ()) - return gpg_error (GPG_ERR_NOT_SUPPORTED); - - if (flags & ~(GCRY_AC_FLAG_COPY)) - { - err = gcry_error (GPG_ERR_INV_ARG); - goto out; - } - - if (idx >= data->data_n) - { - err = gcry_error (GPG_ERR_INV_ARG); - goto out; - } - - if (flags & GCRY_AC_FLAG_COPY) - { - /* Return copies to the user. */ - if (name) - { - name_cp = gcry_strdup (data->data[idx].name); - if (! name_cp) - { - err = gcry_error_from_errno (errno); - goto out; - } - } - if (mpi) - { - mpi_cp = gcry_mpi_copy (data->data[idx].mpi); - if (! mpi_cp) - { - err = gcry_error_from_errno (errno); - goto out; - } - } - } - - if (name) - *name = name_cp ? name_cp : data->data[idx].name; - if (mpi) - *mpi = mpi_cp ? mpi_cp : data->data[idx].mpi; - err = 0; - - out: - - if (err) - { - gcry_mpi_release (mpi_cp); - gcry_free (name_cp); - } - - return err; -} - -/* Convert the data set DATA into a new S-Expression, which is to be - stored in SEXP, according to the identifiers contained in - IDENTIFIERS. */ -gcry_error_t -_gcry_ac_data_to_sexp (gcry_ac_data_t data, gcry_sexp_t *sexp, - const char **identifiers) -{ - gcry_sexp_t sexp_new; - gcry_error_t err; - char *sexp_buffer; - size_t sexp_buffer_n; - size_t identifiers_n; - const char *label; - gcry_mpi_t mpi; - void **arg_list; - size_t data_n; - unsigned int i; - - sexp_buffer_n = 1; - sexp_buffer = NULL; - arg_list = NULL; - err = 0; - - if (fips_mode ()) - return gpg_error (GPG_ERR_NOT_SUPPORTED); - - /* Calculate size of S-expression representation. */ - - i = 0; - if (identifiers) - while (identifiers[i]) - { - /* For each identifier, we add "()". */ - sexp_buffer_n += 1 + strlen (identifiers[i]) + 1; - i++; - } - identifiers_n = i; - - if (! identifiers_n) - /* If there are NO identifiers, we still add surrounding braces so - that we have a list of named MPI value lists. Otherwise it - wouldn't be too much fun to process these lists. */ - sexp_buffer_n += 2; - - data_n = _gcry_ac_data_length (data); - for (i = 0; i < data_n; i++) - { - err = gcry_ac_data_get_index (data, 0, i, &label, NULL); - if (err) - break; - /* For each MPI we add "(

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, 2009. -# Àngel Mompó , 2010, 2011, 2012, 2014, 2017 -# -msgid "" -msgstr "" -"Project-Id-Version: grub-2.02-pre3\n" -"Report-Msgid-Bugs-To: bug-grub@gnu.org\n" -"POT-Creation-Date: 2019-07-04 16:09+0200\n" -"PO-Revision-Date: 2017-02-04 15:26+0100\n" -"Last-Translator: Angel Mompo \n" -"Language-Team: Catalan \n" -"Language: ca\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Bugs: Report translation errors to the Language-Team address.\n" -"Plural-Forms: nplurals=2; plural=(n!=1);\n" -"X-Generator: Poedit 1.8.4\n" - -#: grub-core/bus/usb/serial/ftdi.c:145 grub-core/bus/usb/serial/pl2303.c:158 -#: grub-core/term/ieee1275/escc.c:169 grub-core/term/ns8250.c:202 -msgid "unsupported serial port speed" -msgstr "no és compatible amb la velocitat del port sèrie" - -#: grub-core/bus/usb/serial/ftdi.c:151 grub-core/bus/usb/serial/pl2303.c:164 -#: grub-core/term/efi/serial.c:116 grub-core/term/ieee1275/escc.c:175 -#: grub-core/term/ns8250.c:208 grub-core/term/serial.c:227 -#: grub-core/term/serial.c:243 -msgid "unsupported serial port parity" -msgstr "no és compatible amb la paritat del port sèrie" - -#: grub-core/bus/usb/serial/ftdi.c:157 grub-core/bus/usb/serial/pl2303.c:170 -#: grub-core/term/efi/serial.c:122 grub-core/term/ieee1275/escc.c:181 -#: grub-core/term/ns8250.c:213 grub-core/term/serial.c:267 -msgid "unsupported serial port stop bits number" -msgstr "no és compatible amb el nombre de bits d'aturada" - -#: grub-core/bus/usb/serial/ftdi.c:161 grub-core/bus/usb/serial/pl2303.c:174 -#: grub-core/term/efi/serial.c:126 grub-core/term/ieee1275/escc.c:185 -#: grub-core/term/ns8250.c:217 -msgid "unsupported serial port word length" -msgstr "no és compatible amb la longitud de paraula del port sèrie" - -#: grub-core/commands/acpi.c:42 -msgid "Don't load host tables specified by comma-separated list." -msgstr "" -"No carreguis les taules d'amfitrions especificades en llistes separades per " -"comes." - -#: grub-core/commands/acpi.c:45 -msgid "Load only tables specified by comma-separated list." -msgstr "Carrega només les taules especificades en llistes separades per comes." - -#: grub-core/commands/acpi.c:46 -msgid "Export version 1 tables to the OS." -msgstr "Exporta les taules de la versió 1 al SO." - -#: grub-core/commands/acpi.c:47 -msgid "Export version 2 and version 3 tables to the OS." -msgstr "Exporta les taules de la versió 2 i de la versió 3 al SO." - -#: grub-core/commands/acpi.c:48 -msgid "Set OEMID of RSDP, XSDT and RSDT." -msgstr "Aplica l'OEMID de l'RSDP, XSDT i l'RSDT." - -#: grub-core/commands/acpi.c:50 -msgid "Set OEMTABLE ID of RSDP, XSDT and RSDT." -msgstr "Aplica l'identificador de l'OEMTABLE de l'RSDP, XSDT i l'RSDT." - -#: grub-core/commands/acpi.c:52 -msgid "Set OEMTABLE revision of RSDP, XSDT and RSDT." -msgstr "Aplica la revisió de l'OEMTABLE de l'RSDP, XSDT i l'RSDT." - -#: grub-core/commands/acpi.c:54 -msgid "Set creator field of RSDP, XSDT and RSDT." -msgstr "Aplica el camp creador de l'RSDP, XSDT i l'RSDT." - -#: grub-core/commands/acpi.c:56 -msgid "Set creator revision of RSDP, XSDT and RSDT." -msgstr "Aplica la revisió del creador de l'RSDP, XSDT i l'RSDT." - -#. TRANSLATORS: "hangs" here is a noun, not a verb. -#: grub-core/commands/acpi.c:58 -msgid "" -"Don't update EBDA. May fix failures or hangs on some BIOSes but makes it " -"ineffective with OS not receiving RSDP from GRUB." -msgstr "" -"No actualitzis l'EBDA. Pot corregir defectes o penjades a algunes BIOS, però " -"el fa ineficaç amb SO que no rebin el RSDP del GRUB." - -#: grub-core/commands/acpi.c:650 grub-core/commands/acpi.c:667 -#: grub-core/commands/i386/pc/play.c:105 grub-core/commands/keylayouts.c:230 -#: grub-core/commands/keylayouts.c:245 grub-core/commands/keylayouts.c:263 -#: grub-core/commands/verifiers.c:156 grub-core/efiemu/loadcore.c:350 -#: grub-core/kern/elf.c:117 grub-core/kern/elfXX.c:29 -#: grub-core/kern/elfXX.c:156 grub-core/loader/arm/linux.c:319 -#: grub-core/loader/arm64/linux.c:330 grub-core/loader/arm64/xen_boot.c:356 -#: grub-core/loader/efi/chainloader.c:276 -#: grub-core/loader/efi/chainloader.c:297 -#: grub-core/loader/efi/chainloader.c:329 grub-core/loader/efi/fdt.c:138 -#: grub-core/loader/i386/bsd.c:1276 grub-core/loader/i386/bsd.c:2116 -#: grub-core/loader/i386/bsdXX.c:20 grub-core/loader/i386/bsdXX.c:36 -#: grub-core/loader/i386/bsdXX.c:63 grub-core/loader/i386/bsdXX.c:357 -#: grub-core/loader/i386/bsdXX.c:376 grub-core/loader/i386/bsdXX.c:519 -#: grub-core/loader/i386/bsdXX.c:535 grub-core/loader/i386/bsdXX.c:615 -#: grub-core/loader/i386/bsdXX.c:638 -#: grub-core/loader/i386/coreboot/chainloader.c:112 -#: grub-core/loader/i386/coreboot/chainloader.c:148 -#: grub-core/loader/i386/coreboot/chainloader.c:170 -#: grub-core/loader/i386/linux.c:667 grub-core/loader/i386/linux.c:788 -#: grub-core/loader/i386/linux.c:1005 grub-core/loader/i386/multiboot_mbi.c:171 -#: grub-core/loader/i386/pc/chainloader.c:202 -#: grub-core/loader/i386/pc/linux.c:149 grub-core/loader/i386/pc/linux.c:320 -#: grub-core/loader/i386/pc/linux.c:362 grub-core/loader/i386/pc/plan9.c:457 -#: grub-core/loader/i386/pc/plan9.c:550 grub-core/loader/i386/pc/plan9.c:566 -#: grub-core/loader/i386/xen.c:934 grub-core/loader/i386/xen_file.c:72 -#: grub-core/loader/i386/xen_fileXX.c:43 grub-core/loader/i386/xen_fileXX.c:186 -#: grub-core/loader/i386/xen_fileXX.c:339 grub-core/loader/ia64/efi/linux.c:423 -#: grub-core/loader/ia64/efi/linux.c:471 grub-core/loader/linux.c:286 -#: grub-core/loader/macho.c:84 grub-core/loader/macho.c:109 -#: grub-core/loader/machoXX.c:33 grub-core/loader/machoXX.c:46 -#: grub-core/loader/machoXX.c:76 grub-core/loader/machoXX.c:116 -#: grub-core/loader/machoXX.c:131 grub-core/loader/machoXX.c:147 -#: grub-core/loader/machoXX.c:196 grub-core/loader/machoXX.c:317 -#: grub-core/loader/multiboot.c:434 grub-core/loader/multiboot_elfxx.c:171 -#: grub-core/loader/multiboot_elfxx.c:234 -#: grub-core/loader/multiboot_elfxx.c:278 grub-core/loader/multiboot_mbi2.c:129 -#: grub-core/loader/xnu.c:737 grub-core/loader/xnu.c:795 -#: grub-core/loader/xnu.c:816 grub-core/loader/xnu.c:871 -#: grub-core/loader/xnu.c:914 grub-core/loader/xnu.c:952 -#: grub-core/loader/xnu_resume.c:68 grub-core/loader/xnu_resume.c:153 -#: grub-core/loader/xnu_resume.c:165 util/grub-mkimagexx.c:2288 -#, c-format -msgid "premature end of file %s" -msgstr "final del fitxer %s prematur" - -#: grub-core/commands/acpi.c:779 -msgid "" -"[-1|-2] [--exclude=TABLE1,TABLE2|--load-only=TABLE1,TABLE2] FILE1 [FILE2] " -"[...]" -msgstr "" -"[-1|-2] [--exclude=TAULA1,TAULA2|--load-only=TAULA1,TAULA2] FITXER1 " -"[FITXER2] [...]" - -#: grub-core/commands/acpi.c:782 -msgid "Load host ACPI tables and tables specified by arguments." -msgstr "" -"Carrega les taules d'amfitrions ACPI i les taules especificades per " -"arguments." - -#: grub-core/commands/acpihalt.c:368 grub-core/kern/err.c:110 -#, c-format -msgid "error: %s.\n" -msgstr "error: %s.\n" - -#: grub-core/commands/acpihalt.c:368 grub-core/kern/emu/misc.c:95 -#: grub-core/kern/emu/misc.c:105 grub-core/kern/emu/misc.c:134 -#: grub-core/kern/emu/mm.c:34 grub-core/kern/emu/mm.c:62 -#: grub-core/kern/mm.c:374 grub-core/lib/relocator.c:1282 -#: grub-core/lib/relocator.c:1439 grub-core/lib/relocator.c:1538 -#: grub-core/loader/arm/linux.c:259 grub-core/loader/arm64/linux.c:265 -#: grub-core/loader/arm64/linux.c:321 grub-core/loader/arm64/linux.c:340 -#: grub-core/loader/arm64/xen_boot.c:344 grub-core/loader/arm64/xen_boot.c:367 -#: grub-core/loader/efi/chainloader.c:289 grub-core/osdep/unix/dl.c:48 -#: grub-core/osdep/windows/dl.c:46 grub-core/script/lexer.c:156 -#: grub-core/script/lexer.c:182 -msgid "out of memory" -msgstr "s'ha acabat la memòria" - -#: grub-core/commands/acpihalt.c:374 grub-core/disk/cryptodisk.c:587 -#: grub-core/disk/cryptodisk.c:632 grub-core/kern/emu/hostdisk.c:307 -#: grub-core/kern/emu/hostfs.c:149 grub-core/kern/emu/misc.c:200 -#: grub-core/osdep/linux/ofpath.c:195 grub-core/osdep/linux/ofpath.c:521 -#: grub-core/osdep/linux/ofpath.c:534 util/glue-efi.c:80 util/glue-efi.c:94 -#: util/grub-editenv.c:155 util/grub-fstest.c:577 -#: util/grub-install-common.c:943 util/grub-mkrescue.c:634 -#: util/grub-mkrescue.c:888 util/grub-mount.c:506 util/grub-render-label.c:176 -#: util/misc.c:95 util/setup.c:814 util/setup.c:833 -#, c-format -msgid "cannot read `%s': %s" -msgstr "no es pot llegir «%s» : %s" - -#. TRANSLATORS: It's computer shutdown using ACPI, not disabling ACPI. -#: grub-core/commands/acpihalt.c:452 -msgid "ACPI shutdown failed" -msgstr "Ha fallat l'ordre d'apagar per l'ACPI" - -#: grub-core/commands/arc/lsdev.c:51 -msgid "List devices." -msgstr "Llista els dispositius." - -#: grub-core/commands/blocklist.c:122 grub-core/commands/cat.c:57 -#: grub-core/commands/configfile.c:35 grub-core/commands/efi/loadbios.c:168 -#: grub-core/commands/file.c:159 grub-core/commands/hexdump.c:47 -#: grub-core/commands/legacycfg.c:209 grub-core/commands/legacycfg.c:315 -#: grub-core/commands/minicmd.c:44 grub-core/commands/syslinuxcfg.c:146 -#: grub-core/commands/testload.c:58 grub-core/commands/testspeed.c:52 -#: grub-core/disk/loopback.c:93 grub-core/efiemu/main.c:293 -#: grub-core/font/font_cmd.c:32 grub-core/kern/emu/hostdisk.c:519 -#: grub-core/loader/arm/linux.c:364 grub-core/loader/arm/linux.c:409 -#: grub-core/loader/arm/linux.c:472 grub-core/loader/arm64/linux.c:243 -#: grub-core/loader/arm64/linux.c:297 grub-core/loader/arm64/xen_boot.c:398 -#: grub-core/loader/arm64/xen_boot.c:411 grub-core/loader/arm64/xen_boot.c:462 -#: grub-core/loader/efi/chainloader.c:216 grub-core/loader/i386/bsd.c:1462 -#: grub-core/loader/i386/bsd.c:1807 grub-core/loader/i386/bsd.c:2085 -#: grub-core/loader/i386/coreboot/chainloader.c:438 -#: grub-core/loader/i386/linux.c:656 grub-core/loader/i386/linux.c:1041 -#: grub-core/loader/i386/pc/chainloader.c:290 -#: grub-core/loader/i386/pc/freedos.c:105 grub-core/loader/i386/pc/linux.c:138 -#: grub-core/loader/i386/pc/linux.c:400 grub-core/loader/i386/pc/ntldr.c:85 -#: grub-core/loader/i386/pc/plan9.c:409 -#: grub-core/loader/i386/pc/pxechainloader.c:94 -#: grub-core/loader/i386/pc/truecrypt.c:96 grub-core/loader/i386/xen.c:641 -#: grub-core/loader/i386/xen.c:768 grub-core/loader/i386/xen.c:844 -#: grub-core/loader/i386/xen.c:854 grub-core/loader/i386/xnu.c:488 -#: grub-core/loader/ia64/efi/linux.c:459 grub-core/loader/ia64/efi/linux.c:539 -#: grub-core/loader/mips/linux.c:238 grub-core/loader/mips/linux.c:429 -#: grub-core/loader/multiboot.c:322 grub-core/loader/multiboot.c:374 -#: grub-core/loader/multiboot.c:384 -#: grub-core/loader/powerpc/ieee1275/linux.c:269 -#: grub-core/loader/powerpc/ieee1275/linux.c:341 -#: grub-core/loader/sparc64/ieee1275/linux.c:305 -#: grub-core/loader/sparc64/ieee1275/linux.c:381 grub-core/loader/xnu.c:351 -#: grub-core/loader/xnu.c:460 grub-core/loader/xnu.c:778 -#: grub-core/loader/xnu.c:892 grub-core/loader/xnu.c:1277 -#: grub-core/loader/xnu.c:1427 grub-core/loader/xnu.c:1453 -#: grub-core/video/readers/jpeg.c:812 grub-core/video/readers/png.c:1123 -msgid "filename expected" -msgstr "s'esperava un nom de fitxer" - -#. TRANSLATORS: "embed" is a verb (command description). " -#: grub-core/commands/blocklist.c:154 grub-core/commands/cat.c:163 -#: grub-core/commands/configfile.c:65 grub-core/commands/configfile.c:68 -#: grub-core/commands/configfile.c:74 grub-core/commands/configfile.c:80 -#: grub-core/commands/configfile.c:86 grub-core/commands/hashsum.c:34 -#: grub-core/commands/legacycfg.c:834 grub-core/commands/legacycfg.c:841 -#: grub-core/commands/legacycfg.c:846 grub-core/commands/legacycfg.c:851 -#: grub-core/commands/macbless.c:222 grub-core/commands/minicmd.c:198 -#: grub-core/commands/syslinuxcfg.c:186 grub-core/commands/syslinuxcfg.c:194 -#: grub-core/commands/syslinuxcfg.c:200 grub-core/commands/syslinuxcfg.c:206 -#: grub-core/commands/testload.c:163 grub-core/efiemu/main.c:312 -#: grub-core/kern/emu/main.c:100 grub-core/kern/emu/main.c:103 -#: grub-core/loader/i386/bsd.c:2137 grub-core/loader/i386/bsd.c:2140 -#: grub-core/loader/i386/bsd.c:2143 -#: grub-core/loader/i386/coreboot/chainloader.c:505 -#: grub-core/loader/ia64/efi/linux.c:594 include/grub/util/install.h:32 -#: include/grub/util/install.h:64 util/grub-glue-efi.c:52 -#: util/grub-glue-efi.c:54 util/grub-glue-efi.c:56 util/grub-install.c:254 -#: util/grub-install.c:301 util/grub-mkfont.c:936 util/grub-mkimage.c:68 -#: util/grub-mkimage.c:74 util/grub-mkimage.c:76 util/grub-mkimage.c:78 -#: util/grub-mkimage.c:81 util/grub-mklayout.c:52 util/grub-mklayout.c:54 -#: util/grub-mkrescue.c:97 util/grub-mkrescue.c:101 util/grub-mkrescue.c:104 -#: util/grub-mkrescue.c:105 util/grub-mkrescue.c:106 -#: util/grub-mkstandalone.c:47 util/grub-mkstandalone.c:49 -#: util/grub-probe.c:732 util/grub-render-label.c:59 -#: util/grub-render-label.c:70 util/grub-render-label.c:72 util/grub-setup.c:78 -#: util/grub-setup.c:80 util/grub-setup.c:84 util/grub-syslinux2cfg.c:74 -#: util/grub-syslinux2cfg.c:147 -msgid "FILE" -msgstr "FITXER" - -#: grub-core/commands/blocklist.c:154 -msgid "Print a block list." -msgstr "Mostra una llista de blocs." - -#: grub-core/commands/boot.c:147 grub-core/commands/legacycfg.c:533 -#: grub-core/commands/legacycfg.c:574 grub-core/loader/arm64/linux.c:250 -#: grub-core/loader/i386/bsd.c:1799 grub-core/loader/i386/bsd.c:1900 -#: grub-core/loader/i386/bsd.c:2007 grub-core/loader/i386/bsd.c:2040 -#: grub-core/loader/i386/bsd.c:2089 grub-core/loader/i386/linux.c:1047 -#: grub-core/loader/i386/pc/linux.c:406 grub-core/loader/i386/xen.c:775 -#: grub-core/loader/i386/xen.c:859 grub-core/loader/ia64/efi/linux.c:545 -#: grub-core/loader/mips/linux.c:432 grub-core/loader/multiboot.c:388 -#: grub-core/loader/powerpc/ieee1275/linux.c:347 -#: grub-core/loader/sparc64/ieee1275/linux.c:387 grub-core/loader/xnu.c:572 -#: grub-core/loader/xnu.c:665 grub-core/loader/xnu.c:781 -#: grub-core/loader/xnu.c:895 grub-core/loader/xnu.c:1091 -#: grub-core/loader/xnu.c:1258 grub-core/loader/xnu.c:1289 -#: grub-core/loader/xnu.c:1430 -msgid "you need to load the kernel first" -msgstr "primer heu de carregar el nucli" - -#: grub-core/commands/boot.c:189 -msgid "Boot an operating system." -msgstr "Arrenca un sistema operatiu." - -#: grub-core/commands/boottime.c:36 -#: grub-core/commands/i386/coreboot/cb_timestamps.c:108 -msgid "No boot time statistics is available\n" -msgstr "No hi ha disponible cap estadística del temps d'arrancada\n" - -#: grub-core/commands/boottime.c:59 -msgid "Show boot time statistics." -msgstr "Mostra l'estadística del temps d'arrancada." - -#: grub-core/commands/cacheinfo.c:40 -#, c-format -msgid "Disk cache statistics: hits = %lu (%lu.%02lu%%), misses = %lu\n" -msgstr "" -"Estadístiques de la memòria cau del disc: encerts = %lu (%lu.%02lu%%), " -"errors = %lu\n" - -#: grub-core/commands/cacheinfo.c:45 -msgid "No disk cache statistics available\n" -msgstr "No hi ha disponible cap estadística de la memòria cau del disc\n" - -#: grub-core/commands/cacheinfo.c:56 -msgid "Get disk cache info." -msgstr "Recupera la informació de la memòria cau del disc." - -#: grub-core/commands/cat.c:33 -msgid "Accept DOS-style CR/NL line endings." -msgstr "Accepta finals de línia CR/NL d'estil DOS." - -#: grub-core/commands/cat.c:163 grub-core/commands/minicmd.c:198 -msgid "Show the contents of a file." -msgstr "Mostra el contingut d'un fitxer." - -#: grub-core/commands/cmp.c:43 grub-core/commands/i386/pc/drivemap.c:239 -#: grub-core/commands/i386/wrmsr.c:60 grub-core/commands/iorw.c:85 -#: grub-core/commands/memrw.c:84 grub-core/commands/password.c:75 -#: grub-core/commands/password_pbkdf2.c:94 grub-core/commands/pgp.c:826 -#: grub-core/commands/regexp.c:113 grub-core/mmap/mmap.c:517 -#: grub-core/net/dns.c:639 -msgid "two arguments expected" -msgstr "s'esperaven dos arguments" - -#: grub-core/commands/cmp.c:45 -#, c-format -msgid "Compare file `%s' with `%s':\n" -msgstr "Compara el fitxer «%s» amb el «%s»:\n" - -#: grub-core/commands/cmp.c:54 -#, c-format -msgid "Files differ in size: %llu [%s], %llu [%s]\n" -msgstr "Els fitxers tenen mides diferents: %llu [%s], %llu [%s]\n" - -#: grub-core/commands/cmp.c:81 -#, c-format -msgid "Files differ at the offset %llu: 0x%x [%s], 0x%x [%s]\n" -msgstr "Els fitxers són diferents a l'òfset %llu: 0x%x [%s], 0x%x [%s]\n" - -#. TRANSLATORS: it's always exactly 2 files. -#: grub-core/commands/cmp.c:93 -msgid "The files are identical.\n" -msgstr "Els fitxers són idèntics.\n" - -#: grub-core/commands/cmp.c:113 -msgid "FILE1 FILE2" -msgstr "FITXER1 FITXER2" - -#: grub-core/commands/cmp.c:113 -msgid "Compare two files." -msgstr "Compara dos fitxers." - -#: grub-core/commands/configfile.c:65 -msgid "Load another config file." -msgstr "Carrega un altre fitxer de configuració." - -#: grub-core/commands/configfile.c:69 grub-core/commands/configfile.c:87 -msgid "Load another config file without changing context." -msgstr "Carrega un altre fitxer de configuració sense canviar el context." - -#: grub-core/commands/configfile.c:75 -msgid "" -"Load another config file without changing context but take only menu entries." -msgstr "" -"Carrega un altre fitxer de configuració agafant només les entrades del menú " -"però sense canviar el context." - -#: grub-core/commands/configfile.c:81 -msgid "Load another config file but take only menu entries." -msgstr "" -"Carrega un altre fitxer de configuració però agafa només les entrades del " -"menú." - -#: grub-core/commands/date.c:141 -msgid "[[year-]month-day] [hour:minute[:second]]" -msgstr "[[any-]mes-dia] [hora:minut[:segon]]" - -#: grub-core/commands/date.c:142 -msgid "Display/set current datetime." -msgstr "Mostra/modifica el dia i l'hora actuals." - -#: grub-core/commands/echo.c:30 -msgid "Do not output the trailing newline." -msgstr "No mostris els salts de línia." - -#: grub-core/commands/echo.c:31 -msgid "Enable interpretation of backslash escapes." -msgstr "Habilita la interpretació dels caràcters amb contrabarra." - -#: grub-core/commands/echo.c:134 -msgid "[-e|-n] STRING" -msgstr "[-e|-n] CADENA" - -#: grub-core/commands/echo.c:134 -msgid "Display a line of text." -msgstr "Mostra una línia de text." - -#: grub-core/commands/efi/efifwsetup.c:82 -msgid "Reboot into firmware setup menu." -msgstr "Torna a engegar i vés al menú de configuració del microprogramari." - -#: grub-core/commands/efi/fixvideo.c:107 -msgid "Fix video problem." -msgstr "Corregeix un problema de vídeo." - -#: grub-core/commands/efi/loadbios.c:52 -msgid "ROM image is present." -msgstr "Hi ha una imatge ROM." - -#: grub-core/commands/efi/loadbios.c:70 -msgid "Can't enable ROM area." -msgstr "No es pot habilitar l'àrea ROM." - -#: grub-core/commands/efi/loadbios.c:209 -msgid "" -"Create BIOS-like structures for backward compatibility with existing OS." -msgstr "" -"Crea estructures semblants a una BIOS per mantenir la compatibilitat amb els " -"SO existents." - -#: grub-core/commands/efi/loadbios.c:214 -msgid "BIOS_DUMP [INT10_DUMP]" -msgstr "BIOS_DUMP [INT10_DUMP]" - -#: grub-core/commands/efi/loadbios.c:215 -msgid "Load BIOS dump." -msgstr "Carrega l'abocament de memòria de la BIOS." - -#: grub-core/commands/efi/shim_lock.c:76 -#, c-format -msgid "module cannot be loaded in UEFI secure boot mode: %s" -msgstr "" - -#: grub-core/commands/efi/shim_lock.c:98 -#, c-format -msgid "cannot boot due to dangerous module in memory: %s" -msgstr "" - -#: grub-core/commands/efi/shim_lock.c:116 -#, fuzzy -msgid "bad shim signature" -msgstr "signatura errònia" - -#: grub-core/commands/efi/tpm.c:149 grub-core/commands/efi/tpm.c:189 -#: grub-core/commands/efi/tpm.c:256 grub-core/commands/efi/tpm.c:306 -#, fuzzy -msgid "Command failed" -msgstr "ha fallat la ubicació de memòria" - -#: grub-core/commands/efi/tpm.c:151 grub-core/commands/efi/tpm.c:191 -#: grub-core/commands/efi/tpm.c:258 grub-core/commands/efi/tpm.c:308 -#, fuzzy -msgid "Invalid parameter" -msgstr "el paràmetre %s no és vàlid" - -#: grub-core/commands/efi/tpm.c:154 grub-core/commands/efi/tpm.c:194 -#: grub-core/commands/efi/tpm.c:261 grub-core/commands/efi/tpm.c:311 -msgid "Output buffer too small" -msgstr "" - -#: grub-core/commands/efi/tpm.c:156 grub-core/commands/efi/tpm.c:196 -#: grub-core/commands/efi/tpm.c:263 grub-core/commands/efi/tpm.c:313 -#, fuzzy -msgid "TPM unavailable" -msgstr "Camí: no disponible" - -#: grub-core/commands/efi/tpm.c:158 grub-core/commands/efi/tpm.c:198 -#: grub-core/commands/efi/tpm.c:265 grub-core/commands/efi/tpm.c:315 -#, fuzzy -msgid "Unknown TPM error" -msgstr "Error de sistema desconegut" - -#: grub-core/commands/efi/tpm.c:240 grub-core/commands/efi/tpm.c:288 -msgid "cannot allocate TPM event buffer" -msgstr "" - -#: grub-core/commands/eval.c:63 -msgid "STRING ..." -msgstr "CADENA ..." - -#: grub-core/commands/eval.c:64 -msgid "Evaluate arguments as GRUB commands" -msgstr "Analitza els arguments com a comandes del GRUB." - -#: grub-core/commands/file.c:41 -msgid "Check if FILE can be booted as i386 PAE Xen unprivileged guest kernel" -msgstr "" -"Comprova si el FITXER pot engegar-se com un nucli i386 client sense " -"privilegis PAE del Xen" - -#: grub-core/commands/file.c:44 -msgid "Check if FILE can be booted as x86_64 Xen unprivileged guest kernel" -msgstr "" -"Comprova si el FITXER pot engegar-se com un nucli X86_64 client sense " -"privilegis del Xen" - -#: grub-core/commands/file.c:46 -msgid "Check if FILE can be used as Xen x86 privileged guest kernel" -msgstr "" -"Comprova si el FITXER es pot fer servir com un nucli x86 amb privilegis del " -"Xen" - -#: grub-core/commands/file.c:48 -msgid "Check if FILE can be used as x86 multiboot kernel" -msgstr "" -"Comprova si el FITXER es pot fer servir com un nucli x86 multiarrencada." - -#: grub-core/commands/file.c:50 -msgid "Check if FILE can be used as x86 multiboot2 kernel" -msgstr "" -"Comprova si el FITXER es pot fer servir com un nucli x86 multiarrencada 2." - -#: grub-core/commands/file.c:52 -msgid "Check if FILE is ARM Linux" -msgstr "Comprova si el FITXER és un Linux ARM" - -#: grub-core/commands/file.c:54 -msgid "Check if FILE is ARM64 Linux" -msgstr "Comprova si el FITXER és un Linux ARM64" - -#: grub-core/commands/file.c:56 -msgid "Check if FILE is IA64 Linux" -msgstr "Comprova si el FITXER és un Linux IA64" - -#: grub-core/commands/file.c:58 -msgid "Check if FILE is MIPS Linux" -msgstr "Comprova si el FITXER és un Linux MIPS" - -#: grub-core/commands/file.c:60 -msgid "Check if FILE is MIPSEL Linux" -msgstr "Comprova si el FITXER és un Linux MIPSEL" - -#: grub-core/commands/file.c:62 -msgid "Check if FILE is SPARC64 Linux" -msgstr "Comprova si el FITXER és un Linux SPARC64" - -#: grub-core/commands/file.c:64 -msgid "Check if FILE is POWERPC Linux" -msgstr "Comprova si el FITXER és un Linux POWERPC" - -#: grub-core/commands/file.c:66 -msgid "Check if FILE is x86 Linux" -msgstr "Comprova si el FITXER és un Linux x86" - -#: grub-core/commands/file.c:68 -msgid "Check if FILE is x86 Linux supporting 32-bit protocol" -msgstr "" -"Comprova si el FITXER és un Linux x86 amb suport per protocol de 32 bits" - -#: grub-core/commands/file.c:70 -msgid "Check if FILE is x86 kFreeBSD" -msgstr "Comprova si el FITXER és un kFreeBSD x86" - -#: grub-core/commands/file.c:72 -msgid "Check if FILE is i386 kFreeBSD" -msgstr "Comprova si el FITXER és un kFreeBSD i386" - -#: grub-core/commands/file.c:74 -msgid "Check if FILE is x86_64 kFreeBSD" -msgstr "Comprova si el FITXER és un kFreeBSD x86_64" - -#: grub-core/commands/file.c:77 -msgid "Check if FILE is x86 kNetBSD" -msgstr "Comprova si el FITXER és un kNetBSD x86" - -#: grub-core/commands/file.c:79 -msgid "Check if FILE is i386 kNetBSD" -msgstr "Comprova si el FITXER és un kNetBSD i386" - -#: grub-core/commands/file.c:81 -msgid "Check if FILE is x86_64 kNetBSD" -msgstr "Comprova si el FITXER és un kNetBSD x86_64" - -#: grub-core/commands/file.c:84 -msgid "Check if FILE is i386 EFI file" -msgstr "Comprova si el FITXER és un EFI i386" - -#: grub-core/commands/file.c:86 -msgid "Check if FILE is x86_64 EFI file" -msgstr "Comprova si el FITXER és un EFI x86_64" - -#: grub-core/commands/file.c:88 -msgid "Check if FILE is IA64 EFI file" -msgstr "Comprova si el FITXER és un EFI iA64" - -#: grub-core/commands/file.c:90 -msgid "Check if FILE is ARM64 EFI file" -msgstr "Comprova si el FITXER és un EFI ARM64" - -#: grub-core/commands/file.c:92 -msgid "Check if FILE is ARM EFI file" -msgstr "Comprova si el FITXER és un EFI ARM" - -#: grub-core/commands/file.c:94 -#, fuzzy -msgid "Check if FILE is RISC-V 32bit EFI file" -msgstr "Comprova si el FITXER és un EFI ARM" - -#: grub-core/commands/file.c:96 -#, fuzzy -msgid "Check if FILE is RISC-V 64bit EFI file" -msgstr "Comprova si el FITXER és un EFI iA64" - -#: grub-core/commands/file.c:98 -msgid "Check if FILE is hiberfil.sys in hibernated state" -msgstr "Comprova si el FITXER és un hiberfil.sys en hibernació" - -#: grub-core/commands/file.c:100 -msgid "Check if FILE is x86_64 XNU (Mac OS X kernel)" -msgstr "Comprova si el FITXER és un XNU x86_64 (nucli de Mac OS X)" - -#: grub-core/commands/file.c:102 -msgid "Check if FILE is i386 XNU (Mac OS X kernel)" -msgstr "Comprova si el FITXER és un XNU i386 (nucli de Mac OS X)" - -#: grub-core/commands/file.c:104 -msgid "Check if FILE is XNU (Mac OS X kernel) hibernated image" -msgstr "" -"Comprova si el FITXER és una imatge hibernada de XNU (nucli de Mac OS X)" - -#: grub-core/commands/file.c:106 -msgid "Check if FILE is BIOS bootsector" -msgstr "Comprova si el FITXER és un sector d'arrencada de BIOS" - -#. TRANSLATORS: it's a standalone boolean value, -#. opposite of "true". -#: grub-core/commands/file.c:675 grub-core/commands/i386/cmostest.c:63 -#: grub-core/commands/i386/cpuid.c:71 grub-core/commands/keystatus.c:83 -#: grub-core/commands/keystatus.c:87 grub-core/commands/keystatus.c:96 -#: grub-core/commands/test.c:436 grub-core/commands/true.c:39 -#: grub-core/script/execute.c:247 grub-core/script/execute.c:1039 -msgid "false" -msgstr "fals" - -#: grub-core/commands/file.c:684 -msgid "OPTIONS FILE" -msgstr "OPCIONS FITXER" - -#: grub-core/commands/file.c:685 -msgid "Check if FILE is of specified type." -msgstr "Comprova si el FITXER és del tipus especificat." - -#. TRANSLATORS: It means that the specified partition e.g. -#. hd0,msdos1=/dev/sda1 doesn't exist. -#: grub-core/commands/gptsync.c:140 grub-core/kern/disk.c:258 -msgid "no such partition" -msgstr "no s'ha trobat la partició" - -#: grub-core/commands/gptsync.c:240 -#, c-format -msgid "New MBR is written to `%s'\n" -msgstr "El nou MBR està escrit a «%s»\n" - -#: grub-core/commands/gptsync.c:252 -msgid "DEVICE [PARTITION[+/-[TYPE]]] ..." -msgstr "DISPOSITIU [PARTICIÓ[+/-[TIPUS]]] ..." - -#. TRANSLATORS: MBR type is one-byte partition -#. type id. -#: grub-core/commands/gptsync.c:255 -msgid "" -"Fill hybrid MBR of GPT drive DEVICE. Specified partitions will be a part of " -"hybrid MBR. Up to 3 partitions are allowed. TYPE is an MBR type. + means " -"that partition is active. Only one partition can be active." -msgstr "" -"Omple l'MBR híbrid del DISPOSITIU unitat GPT. Les particions especificades " -"seran una part de l'MBR híbrid. Es permeten fins a 3 particions. TIPUS és un " -"tipus de MBR. + significa que la partició és activa. Només es pot activar " -"una partició." - -#: grub-core/commands/halt.c:40 -msgid "" -"Halts the computer. This command does not work on all firmware " -"implementations." -msgstr "" -"Atura l'ordinador. Aquesta ordre no funciona en totes les implementacions de " -"microprogramari." - -#: grub-core/commands/hashsum.c:32 -msgid "Specify hash to use." -msgstr "Especifica el hash que cal utilitzar." - -#: grub-core/commands/hashsum.c:32 -msgid "HASH" -msgstr "HASH" - -#: grub-core/commands/hashsum.c:33 -msgid "Check hashes of files with hash list FILE." -msgstr "Comprova el hash dels fitxers amb el FITXER de llista de hash." - -#: grub-core/commands/hashsum.c:35 -msgid "Base directory for hash list." -msgstr "Directori base per la llista de hash." - -#. TRANSLATORS: platform here isn't identifier. It can be translated. -#: grub-core/commands/hashsum.c:35 grub-core/commands/ls.c:150 -#: grub-core/commands/macbless.c:226 grub-core/commands/syslinuxcfg.c:51 -#: grub-core/commands/syslinuxcfg.c:54 grub-core/kern/emu/main.c:106 -#: include/grub/util/install.h:50 include/grub/util/install.h:53 -#: include/grub/util/install.h:56 include/grub/util/install.h:59 -#: util/grub-install.c:250 util/grub-install.c:252 util/grub-install.c:297 -#: util/grub-install.c:299 util/grub-mkimage.c:64 util/grub-mkimage.c:67 -#: util/grub-mknetdir.c:46 util/grub-mknetdir.c:48 util/grub-mkrescue.c:99 -#: util/grub-setup.c:82 util/grub-syslinux2cfg.c:63 util/grub-syslinux2cfg.c:65 -#: util/grub-syslinux2cfg.c:67 util/grub-syslinux2cfg.c:71 -msgid "DIR" -msgstr "DIR" - -#: grub-core/commands/hashsum.c:37 -msgid "Don't stop after first error." -msgstr "No s'atura després del primer error." - -#: grub-core/commands/hashsum.c:38 -msgid "Uncompress file before checksumming." -msgstr "Descomprimeix el fitxer abans de fer la suma de verificació." - -#: grub-core/commands/hashsum.c:163 -#, c-format -msgid "%s: READ ERROR\n" -msgstr "%s: ERROR DE LECTURA\n" - -#: grub-core/commands/hashsum.c:177 -#, c-format -msgid "%s: HASH MISMATCH\n" -msgstr "%s: EL HASH NO CONCORDA\n" - -#: grub-core/commands/hashsum.c:188 -#, c-format -msgid "%s: OK\n" -msgstr "%s: CORRECTE\n" - -#: grub-core/commands/hashsum.c:282 -msgid "-h HASH [-c FILE [-p PREFIX]] [FILE1 [FILE2 ...]]" -msgstr "-h HASH [-c FITXER [-p PREFIX]] [FITXER1 [FITXER2 ...]]" - -#. TRANSLATORS: "hash checksum" is just to -#. be a bit more precise, you can treat it as -#. just "hash". -#: grub-core/commands/hashsum.c:287 grub-core/commands/hashsum.c:292 -#: grub-core/commands/hashsum.c:297 grub-core/commands/hashsum.c:302 -#: grub-core/commands/hashsum.c:307 grub-core/commands/hashsum.c:313 -msgid "Compute or check hash checksum." -msgstr "Calcula o comprova la suma de comprovació del hash." - -#: grub-core/commands/hashsum.c:290 grub-core/commands/hashsum.c:295 -#: grub-core/commands/hashsum.c:300 grub-core/commands/hashsum.c:305 -#: grub-core/commands/hashsum.c:311 -msgid "[-c FILE [-p PREFIX]] [FILE1 [FILE2 ...]]" -msgstr "[-c FITXER [-p PREFIX]] [FITXER1 [FITXER2 ...]]" - -#: grub-core/commands/hdparm.c:33 -msgid "" -"Set Advanced Power Management\n" -"(1=low, ..., 254=high, 255=off)." -msgstr "" -"Configura el gestor avançat de consum\n" -"(1=baix, ..., 254=alt, 255=apagat)." - -#: grub-core/commands/hdparm.c:36 -msgid "Display power mode." -msgstr "Mostra el mode d'alimentació." - -#: grub-core/commands/hdparm.c:37 -msgid "Freeze ATA security settings until reset." -msgstr "Congela la configuració de seguretat ATA fins que es reiniciï." - -#: grub-core/commands/hdparm.c:39 -msgid "Display SMART health status." -msgstr "Mostra l'estat de salut SMART." - -#: grub-core/commands/hdparm.c:40 -msgid "" -"Set Automatic Acoustic Management\n" -"(0=off, 128=quiet, ..., 254=fast)." -msgstr "" -"Configura el gestor acústic automàtic\n" -"(0=apagat, 128=silenciós, ..., 254 ràpid)." - -#: grub-core/commands/hdparm.c:43 -msgid "" -"Set standby timeout\n" -"(0=off, 1=5s, 2=10s, ..., 240=20m, 241=30m, ...)." -msgstr "" -"Configura el temps màxim d'espera\n" -"(0=apagat, 1=5s, 2=10s, ..., 240=20m, 241=30m, ...)." - -#: grub-core/commands/hdparm.c:46 -msgid "Set drive to standby mode." -msgstr "Posa la unitat en mode d'espera." - -#: grub-core/commands/hdparm.c:47 -msgid "Set drive to sleep mode." -msgstr "Posa la unitat en mode descans." - -#: grub-core/commands/hdparm.c:48 -msgid "Print drive identity and settings." -msgstr "Mostra la identificació i la configuració de la unitat." - -#: grub-core/commands/hdparm.c:50 -msgid "Show raw contents of ATA IDENTIFY sector." -msgstr "Mostra el contingut cru del sector IDENTIFY ATA." - -#: grub-core/commands/hdparm.c:52 -msgid "Disable/enable SMART (0/1)." -msgstr "Habilita/deshabilita l'SMART (1/0)." - -#: grub-core/commands/hdparm.c:53 -msgid "Do not print messages." -msgstr "No mostris missatges." - -#: grub-core/commands/hdparm.c:286 grub-core/commands/i386/rdmsr.c:68 -#: grub-core/commands/iorw.c:47 grub-core/commands/legacycfg.c:760 -#: grub-core/commands/legacycfg.c:812 grub-core/commands/macbless.c:190 -#: grub-core/commands/memrw.c:47 grub-core/commands/pgp.c:738 -#: grub-core/commands/pgp.c:792 grub-core/commands/search.c:304 -#: grub-core/commands/search_wrap.c:179 grub-core/commands/setpci.c:243 -#: grub-core/commands/sleep.c:71 grub-core/fs/zfs/zfsinfo.c:279 -#: grub-core/fs/zfs/zfsinfo.c:358 grub-core/gettext/gettext.c:492 -#: grub-core/kern/corecmd.c:65 grub-core/kern/corecmd.c:79 -#: grub-core/mmap/mmap.c:430 grub-core/net/dns.c:713 grub-core/net/dns.c:745 -#: grub-core/net/net.c:694 grub-core/net/net.c:1052 -#: grub-core/normal/context.c:194 grub-core/script/execute.c:131 -#: grub-core/term/gfxterm_background.c:136 -msgid "one argument expected" -msgstr "s'esperava un argument" - -#: grub-core/commands/hdparm.c:440 -msgid "[OPTIONS] DISK" -msgstr "[OPCIONS] DISC" - -#: grub-core/commands/hdparm.c:441 -msgid "Get/set ATA disk parameters." -msgstr "Llegeix/escriu els paràmetres del disc ATA." - -#: grub-core/commands/help.c:132 grub-core/lib/arg.c:109 -#: grub-core/lib/gnulib/argp-help.c:1616 -msgid "Usage:" -msgstr "Forma d'ús:" - -#: grub-core/commands/help.c:146 -msgid "[PATTERN ...]" -msgstr "[PATRÓ...]" - -#: grub-core/commands/help.c:147 -msgid "Show a help message." -msgstr "Mostra un missatge de text." - -#: grub-core/commands/hexdump.c:31 -msgid "Skip offset bytes from the beginning of file." -msgstr "Salta els bytes d'òfset des del principi del fitxer." - -#: grub-core/commands/hexdump.c:33 -msgid "Read only LENGTH bytes." -msgstr "Llegeix només LONGITUD bytes." - -#: grub-core/commands/hexdump.c:125 -msgid "[OPTIONS] FILE_OR_DEVICE" -msgstr "[OPCIONS] FITXER_O_DISPOSITIU" - -#: grub-core/commands/hexdump.c:126 -msgid "Show raw contents of a file or memory." -msgstr "Mostra el contingut cru d'un fitxer o de la memòria." - -#: grub-core/commands/i386/cmosdump.c:58 -msgid "Show raw dump of the CMOS contents." -msgstr "Mostra el bolcat cru dels continguts del CMOS." - -#: grub-core/commands/i386/cmostest.c:108 -#: grub-core/commands/i386/cmostest.c:111 -#: grub-core/commands/i386/cmostest.c:114 -msgid "BYTE:BIT" -msgstr "BYTE:BIT" - -#: grub-core/commands/i386/cmostest.c:109 -msgid "Test bit at BYTE:BIT in CMOS." -msgstr "Comprova el bit a BYTE:BIT a CMOS." - -#: grub-core/commands/i386/cmostest.c:112 -msgid "Clear bit at BYTE:BIT in CMOS." -msgstr "Posa a 0 el bit BYTE:BIT del CMOS." - -#. TRANSLATORS: A bit may be either set (1) or clear (0). -#: grub-core/commands/i386/cmostest.c:116 -msgid "Set bit at BYTE:BIT in CMOS." -msgstr "Posa a 1 el bit BYTE:BIT del CMOS." - -#: grub-core/commands/i386/coreboot/cb_timestamps.c:120 -msgid "Show coreboot boot time statistics." -msgstr "Obté l'estadística del temps d'arrancada del coreboot." - -#: grub-core/commands/i386/coreboot/cbls.c:137 -msgid "List coreboot tables." -msgstr "Llista les taules del coreboot." - -#. TRANSLATORS: "(default)" at the end means that this option is used if -#. no argument is specified. -#: grub-core/commands/i386/cpuid.c:36 -msgid "Check if CPU supports 64-bit (long) mode (default)." -msgstr "" -"Comprova si la CPU és compatible amb el mode de 64 bits (llarg) (per " -"defecte)." - -#: grub-core/commands/i386/cpuid.c:37 -msgid "Check if CPU supports Physical Address Extension." -msgstr "Comprova si la CPU és compatible amb l'Extensió d'Adreça Física(PAE)." - -#: grub-core/commands/i386/cpuid.c:119 -msgid "Check for CPU features." -msgstr "Es comprova les característiques de la CPU." - -#. TRANSLATORS: In this file "mapping" refers to a change GRUB makes so if -#. your language doesn't have an equivalent of "mapping" you can -#. use the word like "rerouting". -#. -#: grub-core/commands/i386/pc/drivemap.c:43 -msgid "Show the current mappings." -msgstr "Mostra els mapatges actuals." - -#: grub-core/commands/i386/pc/drivemap.c:44 -msgid "Reset all mappings to the default values." -msgstr "Es reinicien tots els mapatges als valors per defecte." - -#: grub-core/commands/i386/pc/drivemap.c:45 -msgid "Perform both direct and reverse mappings." -msgstr "Realitza ambdós mapatges, el directe i l'invers." - -#: grub-core/commands/i386/pc/drivemap.c:184 -msgid "No drives have been remapped" -msgstr "No s'ha canviat el mapa de cap unitat" - -#. TRANSLATORS: This is the header of mapping list. -#. On the left is how OS will see the disks and -#. on the right current GRUB vision. -#: grub-core/commands/i386/pc/drivemap.c:191 -msgid "OS disk #num ------> GRUB/BIOS device" -msgstr "Disk d'SO #num ------> dispositiu de GRUB/BIOS" - -#: grub-core/commands/i386/pc/drivemap.c:413 -msgid "-l | -r | [-s] grubdev osdisk." -msgstr "-l | -r | [-s] grubdev osdisk." - -#: grub-core/commands/i386/pc/drivemap.c:414 -msgid "Manage the BIOS drive mappings." -msgstr "Gestiona els mapatges d'unitats de la BIOS." - -#: grub-core/commands/i386/pc/halt.c:31 -msgid "Do not use APM to halt the computer." -msgstr "No utilitzis l'APM per aturar l'ordinador." - -#: grub-core/commands/i386/pc/halt.c:119 -msgid "Halt the system, if possible using APM." -msgstr "Atura el sistema, si pots, fent servir l'APM." - -#: grub-core/commands/i386/pc/lsapm.c:75 -msgid "no APM found" -msgstr "no s'ha trobat l'APM" - -#: grub-core/commands/i386/pc/lsapm.c:77 -#, c-format -msgid "" -"Version %u.%u\n" -"32-bit CS = 0x%x, len = 0x%x, offset = 0x%x\n" -"16-bit CS = 0x%x, len = 0x%x\n" -"DS = 0x%x, len = 0x%x\n" -msgstr "" -"versió %u.%u\n" -"CS de 32 bits = 0x%x, long = 0x%x, òfset = 0x%x\n" -"CS de 16 bits = 0x%x, long = 0x%x\n" -"DS = 0x%x, long = 0x%x\n" - -#: grub-core/commands/i386/pc/lsapm.c:86 -msgid "16-bit protected interface supported\n" -msgstr "és compatible amb la interfície protegida de 16 bits\n" - -#: grub-core/commands/i386/pc/lsapm.c:87 -msgid "16-bit protected interface unsupported\n" -msgstr "no és compatible amb la interfície protegida de 16 bits\n" - -#: grub-core/commands/i386/pc/lsapm.c:89 -msgid "32-bit protected interface supported\n" -msgstr "és compatible amb la interfície protegida de 32 bits\n" - -#: grub-core/commands/i386/pc/lsapm.c:90 -msgid "32-bit protected interface unsupported\n" -msgstr "no és compatible amb la interfície protegida de 32 bits\n" - -#: grub-core/commands/i386/pc/lsapm.c:92 -msgid "CPU Idle slows down processor\n" -msgstr "La inactivitat de la CPU fa disminuir la velocitat del processador\n" - -#: grub-core/commands/i386/pc/lsapm.c:93 -msgid "CPU Idle doesn't slow down processor\n" -msgstr "" -"La inactivitat de la CPU no fa disminuir la velocitat del processador\n" - -#: grub-core/commands/i386/pc/lsapm.c:95 -msgid "APM disabled\n" -msgstr "L'APM està deshabilitat\n" - -#: grub-core/commands/i386/pc/lsapm.c:95 -msgid "APM enabled\n" -msgstr "L'APM està habilitat\n" - -#: grub-core/commands/i386/pc/lsapm.c:97 -msgid "APM disengaged\n" -msgstr "L'APM està desocupat\n" - -#: grub-core/commands/i386/pc/lsapm.c:97 -msgid "APM engaged\n" -msgstr "L'APM està ocupat\n" - -#: grub-core/commands/i386/pc/lsapm.c:107 -msgid "Show APM information." -msgstr "Mostra la informació de l'APM." - -#. TRANSLATORS: It's musical notes, not the notes -#. you take. Play command expects arguments which can -#. be either a filename or tempo+notes. -#. This error happens if none is specified. -#: grub-core/commands/i386/pc/play.c:88 -msgid "filename or tempo and notes expected" -msgstr "s'esperava un nom de fitxer o un tempo i notes" - -#: grub-core/commands/i386/pc/play.c:113 grub-core/commands/i386/pc/play.c:144 -#, c-format -msgid "Invalid tempo in %s" -msgstr "El tempo no és vàlid a %s" - -#: grub-core/commands/i386/pc/play.c:151 grub-core/commands/macbless.c:172 -#: grub-core/fs/archelp.c:260 grub-core/fs/bfs.c:621 grub-core/fs/bfs.c:704 -#: grub-core/fs/btrfs.c:1726 grub-core/fs/btrfs.c:1755 -#: grub-core/fs/btrfs.c:1799 grub-core/fs/btrfs.c:1882 -#: grub-core/fs/btrfs.c:1906 grub-core/fs/fshelp.c:257 grub-core/fs/jfs.c:696 -#: grub-core/fs/minix.c:426 grub-core/fs/ufs.c:544 grub-core/fs/zfs/zfs.c:2083 -#: grub-core/fs/zfs/zfs.c:2095 grub-core/fs/zfs/zfs.c:2301 -#: grub-core/net/http.c:120 -#, c-format -msgid "file `%s' not found" -msgstr "el fitxer «%s» no s'ha trobat" - -#: grub-core/commands/i386/pc/play.c:162 grub-core/commands/i386/pc/play.c:171 -#: grub-core/kern/misc.c:419 grub-core/script/execute.c:138 -#: grub-core/script/execute.c:244 -msgid "unrecognized number" -msgstr "número no reconegut" - -#: grub-core/commands/i386/pc/play.c:190 -msgid "FILE | TEMPO [PITCH1 DURATION1] [PITCH2 DURATION2] ... " -msgstr "FITXER | INTERVAL [TO1 DURADA1] [TO2 DURADA2] ..." - -#: grub-core/commands/i386/pc/play.c:191 -msgid "Play a tune." -msgstr "Reprodueix una melodia." - -#: grub-core/commands/i386/pc/sendkey.c:39 -msgid "set numlock mode" -msgstr "estableix el mode de la tecla de bloqueig del bloc numèric" - -#: grub-core/commands/i386/pc/sendkey.c:40 -msgid "set capslock mode" -msgstr "estableix el mode de la tecla de fixació de majúscules." - -#: grub-core/commands/i386/pc/sendkey.c:41 -msgid "set scrolllock mode" -msgstr "estableix el mode de la tecla de fixació de desplaçament" - -#: grub-core/commands/i386/pc/sendkey.c:42 -msgid "set insert mode" -msgstr "estableix el mode de la tecla d'inserció." - -#: grub-core/commands/i386/pc/sendkey.c:43 -msgid "set pause mode" -msgstr "estableix el mode de la tecla de pausa." - -#: grub-core/commands/i386/pc/sendkey.c:44 -msgid "press left shift" -msgstr "premeu la tecla de majúscules esquerra" - -#: grub-core/commands/i386/pc/sendkey.c:45 -msgid "press right shift" -msgstr "premeu la tecla de majúscules de la dreta" - -#: grub-core/commands/i386/pc/sendkey.c:46 -msgid "press SysRq" -msgstr "premeu la tecla de petició de sistema (Pet Sis)" - -#: grub-core/commands/i386/pc/sendkey.c:47 -msgid "press NumLock key" -msgstr "premeu la tecla de bloqueig del bloc numèric" - -#: grub-core/commands/i386/pc/sendkey.c:48 -msgid "press CapsLock key" -msgstr "premeu la tecla de bloqueig de majúscules" - -#: grub-core/commands/i386/pc/sendkey.c:49 -msgid "press ScrollLock key" -msgstr "premeu la tecla de bloqueig de desplaçament" - -#: grub-core/commands/i386/pc/sendkey.c:50 -msgid "press Insert key" -msgstr "premeu la tecla d'inserció" - -#: grub-core/commands/i386/pc/sendkey.c:51 -msgid "press left alt" -msgstr "premeu la tecla d'alternativa de l'esquerra" - -#: grub-core/commands/i386/pc/sendkey.c:52 -msgid "press right alt" -msgstr "premeu la tecla d'alternativa de la dreta" - -#: grub-core/commands/i386/pc/sendkey.c:53 -msgid "press left ctrl" -msgstr "premeu la tecla de control de l'esquerra" - -#: grub-core/commands/i386/pc/sendkey.c:54 -msgid "press right ctrl" -msgstr "premeu la tecla de control de la dreta" - -#: grub-core/commands/i386/pc/sendkey.c:55 -msgid "don't update LED state" -msgstr "no actualitza l'estat dels LEDs" - -#: grub-core/commands/i386/pc/sendkey.c:372 -msgid "[KEYSTROKE1] [KEYSTROKE2] ..." -msgstr "[PULSACIÓ1] [PULSACIÓ2] ..." - -#. TRANSLATORS: It can emulate multiple -#. keypresses. -#: grub-core/commands/i386/pc/sendkey.c:375 -msgid "Emulate a keystroke sequence" -msgstr "Emula una seqüència de pulsació de tecles" - -#: grub-core/commands/i386/rdmsr.c:37 grub-core/commands/iorw.c:34 -#: grub-core/commands/memrw.c:33 grub-core/commands/setpci.c:73 -msgid "Save read value into variable VARNAME." -msgstr "Desa el valor llegit a la variable NOMVARIABLE." - -#: grub-core/commands/i386/rdmsr.c:38 grub-core/commands/iorw.c:35 -#: grub-core/commands/memrw.c:34 grub-core/commands/probe.c:40 -#: grub-core/commands/search_wrap.c:40 grub-core/commands/setpci.c:74 -#: grub-core/commands/tr.c:32 -msgid "VARNAME" -msgstr "NOMVARIABLE" - -#: grub-core/commands/i386/rdmsr.c:55 grub-core/commands/i386/rdmsr.c:60 -#: grub-core/commands/i386/rdmsr.c:65 grub-core/commands/i386/wrmsr.c:47 -#: grub-core/commands/i386/wrmsr.c:52 grub-core/commands/i386/wrmsr.c:57 -#, fuzzy -msgid "unsupported instruction" -msgstr "no és compatible amb aquest format de gzip" - -#: grub-core/commands/i386/rdmsr.c:77 grub-core/commands/i386/wrmsr.c:69 -#: grub-core/commands/i386/wrmsr.c:77 grub-core/net/dns.c:727 -msgid "invalid argument" -msgstr "el paràmetre no és vàlid" - -#: grub-core/commands/i386/rdmsr.c:94 grub-core/commands/memrw.c:125 -#: grub-core/commands/memrw.c:129 grub-core/commands/memrw.c:133 -msgid "ADDR" -msgstr "ADDR" - -#: grub-core/commands/i386/rdmsr.c:95 -msgid "Read a CPU model specific register." -msgstr "" - -#: grub-core/commands/i386/wrmsr.c:86 -#, fuzzy -msgid "ADDR VALUE" -msgstr "ADDR VALOR [MÀSCARA]" - -#: grub-core/commands/i386/wrmsr.c:87 -msgid "Write a value to a CPU model specific register." -msgstr "" - -#: grub-core/commands/ieee1275/suspend.c:34 -msgid "Run `go' to resume GRUB." -msgstr "Executeu «go» per tornar al GRUB." - -#: grub-core/commands/ieee1275/suspend.c:45 -msgid "Return to IEEE1275 prompt." -msgstr "Torna a l'indicador IEEE1275." - -#: grub-core/commands/iorw.c:123 grub-core/commands/iorw.c:127 -#: grub-core/commands/iorw.c:131 grub-core/gdb/gdb.c:79 -msgid "PORT" -msgstr "PORT" - -#: grub-core/commands/iorw.c:123 -msgid "Read 8-bit value from PORT." -msgstr "Llegeix un valor de 8 bits del PORT." - -#: grub-core/commands/iorw.c:127 -msgid "Read 16-bit value from PORT." -msgstr "Llegeix un valor de 16 bits del PORT." - -#: grub-core/commands/iorw.c:131 -msgid "Read 32-bit value from PORT." -msgstr "Llegeix un valor de 32 bits del PORT." - -#: grub-core/commands/iorw.c:135 grub-core/commands/iorw.c:139 -msgid "PORT VALUE [MASK]" -msgstr "PORT VALOR [MÀSCARA]" - -#: grub-core/commands/iorw.c:136 -msgid "Write 8-bit VALUE to PORT." -msgstr "Escriu un VALOR de 8 bits al PORT." - -#: grub-core/commands/iorw.c:140 -msgid "Write 16-bit VALUE to PORT." -msgstr "Escriu un VALOR de 16 bits al PORT." - -#: grub-core/commands/iorw.c:143 grub-core/commands/memrw.c:137 -#: grub-core/commands/memrw.c:141 grub-core/commands/memrw.c:145 -msgid "ADDR VALUE [MASK]" -msgstr "ADDR VALOR [MÀSCARA]" - -#: grub-core/commands/iorw.c:144 -msgid "Write 32-bit VALUE to PORT." -msgstr "Escriu un VALOR de 32 bits al PORT." - -#: grub-core/commands/keylayouts.c:215 grub-core/commands/loadenv.c:61 -#: grub-core/commands/nativedisk.c:189 grub-core/efiemu/main.c:235 -#: grub-core/font/font.c:428 grub-core/gfxmenu/gfxmenu.c:63 -#: grub-core/kern/device.c:42 grub-core/kern/dl.c:740 -#, c-format -msgid "variable `%s' isn't set" -msgstr "la variable «%s» no està establerta" - -#: grub-core/commands/keylayouts.c:301 -msgid "Load a keyboard layout." -msgstr "Carrega una disposició de teclat." - -#. TRANSLATORS: "Check" in a sense that if this key is pressed then -#. "true" is returned, otherwise "false". -#: grub-core/commands/keystatus.c:32 -msgid "Check Shift key." -msgstr "Comprova la tecla de majúscules." - -#: grub-core/commands/keystatus.c:33 -msgid "Check Control key." -msgstr "Comprova la tecla de control." - -#: grub-core/commands/keystatus.c:34 -msgid "Check Alt key." -msgstr "Comprova la tecla d'alternativa." - -#. TRANSLATORS: there are 3 modifiers. -#: grub-core/commands/keystatus.c:106 -msgid "Check key modifier status." -msgstr "Comprova l'estat de la tecla modificadora." - -#: grub-core/commands/legacycfg.c:512 grub-core/commands/legacycfg.c:526 -#: grub-core/commands/legacycfg.c:546 grub-core/commands/legacycfg.c:559 -#: grub-core/commands/time.c:43 grub-core/script/function.c:109 -#: util/grub-file.c:100 util/grub-fstest.c:57 util/grub-mount.c:69 -#, c-format -msgid "can't find command `%s'" -msgstr "no s'ha pogut trobar l'ordre %s" - -#: grub-core/commands/legacycfg.c:813 grub-core/normal/auth.c:225 -#: util/grub-mkpasswd-pbkdf2.c:139 -msgid "Enter password: " -msgstr "Introdueix la contrasenya: " - -#. TRANSLATORS: "legacy config" means -#. "config as used by grub-legacy". -#: grub-core/commands/legacycfg.c:837 -msgid "Parse legacy config in same context" -msgstr "Analitza la configuració anterior en l'antic context" - -#: grub-core/commands/legacycfg.c:842 -msgid "Parse legacy config in new context" -msgstr "Analitza la configuració anterior en el nou context" - -#: grub-core/commands/legacycfg.c:847 -msgid "Parse legacy config in same context taking only menu entries" -msgstr "" -"Analitza la configuració antiga en el mateix context agafant només les " -"entrades del menú" - -#: grub-core/commands/legacycfg.c:852 -msgid "Parse legacy config in new context taking only menu entries" -msgstr "" -"Analitza la configuració antiga en el nou context agafant només les entrades " -"del menú" - -#: grub-core/commands/legacycfg.c:856 -msgid "[--no-mem-option] [--type=TYPE] FILE [ARG ...]" -msgstr "[--no-mem-option] [--type=TIPUS] FITXER [ARG ...]" - -#: grub-core/commands/legacycfg.c:857 -msgid "Simulate grub-legacy `kernel' command" -msgstr "Simula una ordre «kernel» de la versió antiga del grub" - -#: grub-core/commands/legacycfg.c:861 grub-core/commands/legacycfg.c:865 -msgid "FILE [ARG ...]" -msgstr "FITXER [ARG...]" - -#: grub-core/commands/legacycfg.c:862 -msgid "Simulate grub-legacy `initrd' command" -msgstr "Simula una ordre «initrd» de la versió antiga del grub" - -#: grub-core/commands/legacycfg.c:866 -msgid "Simulate grub-legacy `modulenounzip' command" -msgstr "Simula una ordre «modulenounzip» de la versió antiga del grub" - -#: grub-core/commands/legacycfg.c:870 grub-core/commands/legacycfg.c:875 -msgid "[--md5] PASSWD [FILE]" -msgstr "[--md5] CONTRASENYA [FITXER]" - -#: grub-core/commands/legacycfg.c:871 -msgid "Simulate grub-legacy `password' command" -msgstr "Simula una ordre «password» de la versió antiga del grub" - -#: grub-core/commands/legacycfg.c:876 -msgid "Simulate grub-legacy `password' command in menu entry mode" -msgstr "" -"Simula una ordre «password» de la versió antiga del grub al mode menú " -"d'entrada" - -#. TRANSLATORS: This option is used to override default filename -#. for loading and storing environment. -#: grub-core/commands/loadenv.c:37 -msgid "Specify filename." -msgstr "Especifica el nom del fitxer." - -#: grub-core/commands/loadenv.c:39 -msgid "Skip signature-checking of the environment file." -msgstr "No comprova la signatura del fitxer d'entorn." - -#: grub-core/commands/loadenv.c:451 -msgid "[-f FILE] [-s|--skip-sig] [variable_name_to_whitelist] [...]" -msgstr "[-f FITXER] [-s|--skip-sig] [nom_de_variable_a_llista_blanca] [...]" - -#: grub-core/commands/loadenv.c:452 -msgid "Load variables from environment block file." -msgstr "Carrega les variables del bloc del fitxer d'entorn." - -#: grub-core/commands/loadenv.c:455 -msgid "[-f FILE]" -msgstr "[-f FITXER]" - -#: grub-core/commands/loadenv.c:456 -msgid "List variables from environment block file." -msgstr "Llista les variables del bloc del fitxer d'entorn." - -#: grub-core/commands/loadenv.c:460 -msgid "[-f FILE] variable_name [...]" -msgstr "[-f FITXER] nom_de_variable [...]" - -#: grub-core/commands/loadenv.c:461 -msgid "Save variables to environment block file." -msgstr "Desa les variables al bloc del fitxer d'entorn." - -#: grub-core/commands/ls.c:40 -msgid "Show a long list with more detailed information." -msgstr "Mostra una llista llarga amb informació més detallada." - -#: grub-core/commands/ls.c:41 -msgid "Print sizes in a human readable format." -msgstr "Mostra les mides en un format llegible pels humans." - -#: grub-core/commands/ls.c:42 -msgid "List all files." -msgstr "Llista tots els fitxers." - -#: grub-core/commands/ls.c:73 -msgid "Network protocols:" -msgstr "Protocols de xarxa:" - -#: grub-core/commands/ls.c:295 -msgid "[-l|-h|-a] [FILE ...]" -msgstr "[-l|-h|-a] [FITXER...]" - -#: grub-core/commands/ls.c:296 -msgid "List devices and files." -msgstr "Llista dispositius i fitxers." - -#: grub-core/commands/lsacpi.c:255 -msgid "Show version 1 tables only." -msgstr "Mostra només les taules de la versió 1." - -#: grub-core/commands/lsacpi.c:256 -msgid "Show version 2 and version 3 tables only." -msgstr "Mostra només les taules de les versions 2 i 3." - -#: grub-core/commands/lsacpi.c:306 -msgid "Show ACPI information." -msgstr "Mostra la informació del ACPI." - -#: grub-core/commands/lsmmap.c:31 -msgid "available RAM" -msgstr "RAM disponible" - -#: grub-core/commands/lsmmap.c:32 -msgid "reserved RAM" -msgstr "RAM reservada" - -#. TRANSLATORS: this refers to memory where ACPI tables are stored -#. and which can be used by OS once it loads ACPI tables. -#: grub-core/commands/lsmmap.c:35 -msgid "ACPI reclaimable RAM" -msgstr "RAM que pot reclamar l'ACPI" - -#. TRANSLATORS: this refers to memory which ACPI-compliant OS -#. is required to save accross hibernations. -#: grub-core/commands/lsmmap.c:38 -msgid "ACPI non-volatile storage RAM" -msgstr "RAM d'emmagatzemament no volàtil de l'ACPI" - -#: grub-core/commands/lsmmap.c:39 -msgid "faulty RAM (BadRAM)" -msgstr "RAM defectuosa (BadRAM)" - -#: grub-core/commands/lsmmap.c:40 -msgid "persistent RAM" -msgstr "RAM persistent" - -#: grub-core/commands/lsmmap.c:41 -msgid "persistent RAM (legacy)" -msgstr "RAM persistent (antic)" - -#: grub-core/commands/lsmmap.c:42 -msgid "RAM holding coreboot tables" -msgstr "Taules del coreboot que suporten la RAM" - -#: grub-core/commands/lsmmap.c:43 -msgid "RAM holding firmware code" -msgstr "codi del microprogramari que suporta la RAM" - -#: grub-core/commands/lsmmap.c:52 -#, c-format -msgid "base_addr = 0x%llx, length = 0x%llx, %s\n" -msgstr "base_addr = 0x%llx, long = 0x%llx, %s\n" - -#: grub-core/commands/lsmmap.c:55 -#, c-format -msgid "base_addr = 0x%llx, length = 0x%llx, type = 0x%x\n" -msgstr "base_addr = 0x%llx, long = 0x%llx, tipus = 0x%x\n" - -#: grub-core/commands/lsmmap.c:79 -msgid "List memory map provided by firmware." -msgstr "Llista el mapa de memòria proveït pel microprogramari." - -#: grub-core/commands/lspci.c:232 -msgid "List PCI devices." -msgstr "Llista els dispositius PCI." - -#: grub-core/commands/macbless.c:224 -msgid "Bless FILE of HFS or HFS+ partition for intel macs." -msgstr "" -"Fes arrencable (BLESS) el FITXER de HFS o la partició HFS+ per macs intel." - -#: grub-core/commands/macbless.c:228 -msgid "Bless DIR of HFS or HFS+ partition for PPC macs." -msgstr "" -"Fes arrencable (Bless) el FITXER de HFS o la partició HFS+ per macs intel." - -#: grub-core/commands/memrw.c:125 -msgid "Read 8-bit value from ADDR." -msgstr "Llegeix un valor de 8 bits de ADDR." - -#: grub-core/commands/memrw.c:129 -msgid "Read 16-bit value from ADDR." -msgstr "Llegeix un valor de 16 bits de ADDR." - -#: grub-core/commands/memrw.c:133 -msgid "Read 32-bit value from ADDR." -msgstr "Llegeix un valor de 32 bits de ADDR." - -#: grub-core/commands/memrw.c:138 -msgid "Write 8-bit VALUE to ADDR." -msgstr "Escriu un VALOR de 8 bits a ADDR." - -#: grub-core/commands/memrw.c:142 -msgid "Write 16-bit VALUE to ADDR." -msgstr "Escriu un VALOR de 16 bits a ADDR." - -#: grub-core/commands/memrw.c:146 -msgid "Write 32-bit VALUE to ADDR." -msgstr "Escriu un VALOR de 32 bits a ADDR." - -#: grub-core/commands/menuentry.c:31 -msgid "Menu entry type." -msgstr "Tipus de menú d'entrada." - -#: grub-core/commands/menuentry.c:31 grub-core/commands/menuentry.c:38 -#: grub-core/commands/menuentry.c:39 grub-core/gettext/gettext.c:520 -#: util/grub-fstest.c:520 util/grub-install.c:291 util/grub-install.c:304 -#: util/grub-mknetdir.c:51 util/grub-mkrescue.c:109 util/grub-mkrescue.c:110 -#: util/grub-mount.c:453 util/grub-render-label.c:65 -msgid "STRING" -msgstr "CADENA" - -#: grub-core/commands/menuentry.c:33 -msgid "List of users allowed to boot this entry." -msgstr "Llista d'usuaris que poden engegar aquesta entrada." - -#: grub-core/commands/menuentry.c:33 -msgid "USERNAME[,USERNAME]" -msgstr "NOMUSUARI[,NOMUSUARI]" - -#: grub-core/commands/menuentry.c:36 -msgid "Keyboard key to quickly boot this entry." -msgstr "Tecla per arrencar ràpid aquesta entrada." - -#: grub-core/commands/menuentry.c:36 -msgid "KEYBOARD_KEY" -msgstr "TECLAT_TECLA" - -#: grub-core/commands/menuentry.c:38 -msgid "Use STRING as menu entry body." -msgstr "utilitza STRING com a cos del menú d'entrada." - -#: grub-core/commands/menuentry.c:39 -msgid "Menu entry identifier." -msgstr "Identificador del menú d'entrada." - -#. TRANSLATORS: menu entry can either be bootable by anyone or only by -#. handful of users. By default when security is active only superusers can -#. boot a given menu entry. With --unrestricted (this option) -#. anyone can boot it. -#: grub-core/commands/menuentry.c:44 -msgid "This entry can be booted by any user." -msgstr "Qualsevol usuari pot arrencar aquesta entrada." - -#: grub-core/commands/menuentry.c:323 grub-core/commands/menuentry.c:328 -#: grub-core/tests/test_blockarg.c:46 -msgid "BLOCK" -msgstr "BLOC" - -#: grub-core/commands/menuentry.c:323 -msgid "Define a menu entry." -msgstr "Defineix una entrada del menú." - -#: grub-core/commands/menuentry.c:328 -msgid "Define a submenu." -msgstr "Defineix un submenú." - -#. TRANSLATORS: this is module list header. Name -#. is module name, Ref Count is a reference counter -#. (how many modules or open descriptors use it). -#. Dependencies are the other modules it uses. -#. -#: grub-core/commands/minicmd.c:162 -msgid "Name\tRef Count\tDependencies\n" -msgstr "Nom\tCont ref\tDependències\n" - -#: grub-core/commands/minicmd.c:201 -msgid "Show this message." -msgstr "Mostra aquest missatge." - -#: grub-core/commands/minicmd.c:204 -msgid "ADDR [SIZE]" -msgstr "ADR [MIDA]" - -#: grub-core/commands/minicmd.c:204 -msgid "Show memory contents." -msgstr "Mostra el contingut de la memòria." - -#: grub-core/commands/minicmd.c:207 grub-core/kern/corecmd.c:188 -#: util/grub-install.c:275 -msgid "MODULE" -msgstr "MÃ’DUL" - -#: grub-core/commands/minicmd.c:207 -msgid "Remove a module." -msgstr "Treu un mòdul." - -#: grub-core/commands/minicmd.c:210 -msgid "Show loaded modules." -msgstr "Mostra els mòduls carregats." - -#: grub-core/commands/minicmd.c:213 -msgid "Exit from GRUB." -msgstr "Surt del GRUB." - -#: grub-core/commands/mips/loongson/lsspd.c:42 -msgid "No CS5536 found" -msgstr "No s'ha trobat cap CS5536" - -#: grub-core/commands/mips/loongson/lsspd.c:45 -#, c-format -msgid "CS5536 at %d:%d.%d\n" -msgstr "CS5536 a %d:%d.%d\n" - -#. TRANSLATORS: System management bus is often used to access components like -#. RAM (info only, not data) or batteries. I/O space is where in memory -#. its ports are. -#: grub-core/commands/mips/loongson/lsspd.c:55 -#, c-format -msgid "System management bus controller I/O space is at 0x%x\n" -msgstr "L'espai I/O del controlador de bus de gestió del sistema és a 0x%x\n" - -#. TRANSLATORS: it's shown in a report in a way -#. like number 1: ... number 2: ... -#. -#: grub-core/commands/mips/loongson/lsspd.c:66 -#, c-format -msgid "RAM slot number %d\n" -msgstr "ranura de RAM número %d\n" - -#: grub-core/commands/mips/loongson/lsspd.c:73 -#, c-format -msgid "Written SPD bytes: %d B.\n" -msgstr "Bytes SPD escrits: %d B.\n" - -#: grub-core/commands/mips/loongson/lsspd.c:74 -#, c-format -msgid "Total flash size: %d B.\n" -msgstr "Mida total de la flash: %d B.\n" - -#: grub-core/commands/mips/loongson/lsspd.c:79 -msgid "Memory type: DDR2." -msgstr "Tipus de memòria: DDR2." - -#: grub-core/commands/mips/loongson/lsspd.c:83 -#, c-format -msgid "Part no: %s.\n" -msgstr "Nº de part: %s.\n" - -#: grub-core/commands/mips/loongson/lsspd.c:86 -msgid "Memory type: Unknown." -msgstr "Tipus de memòria: desconeguda." - -#: grub-core/commands/mips/loongson/lsspd.c:97 -msgid "Print Memory information." -msgstr "Mostra la informació de la memòria." - -#: grub-core/commands/nativedisk.c:118 grub-core/commands/probe.c:118 -#: grub-core/commands/probe.c:124 util/grub-probe.c:450 -#, c-format -msgid "%s does not support UUIDs" -msgstr "%s és compatible amb els UUIDs" - -#: grub-core/commands/nativedisk.c:325 -msgid "[MODULE1 MODULE2 ...]" -msgstr "[MÃ’DUL1 MÃ’DUL2 ...]" - -#: grub-core/commands/nativedisk.c:326 -msgid "" -"Switch to native disk drivers. If no modules are specified default set (pata," -"ahci,usbms,ohci,uhci,ehci) is used" -msgstr "" -"Canvia al controlador de discs nadiu. Si no s'especifica cap mòdul es fa " -"servir el conjunt per defecte (pata,ahci,usbms,ohci,uhci,ehci)" - -#: grub-core/commands/parttool.c:40 -msgid "" -"Perform COMMANDS on partition.\n" -"Use `parttool PARTITION help' for the list of available commands." -msgstr "" -"Executa ORDRES a la partició.\n" -"Utilitzeu «parttool PARTICIÓ help» per obtenir la llista d'ordres " -"disponibles." - -#: grub-core/commands/parttool.c:123 -msgid "=VAL" -msgstr "=VAL" - -#: grub-core/commands/parttool.c:136 -#, c-format -msgid "Sorry, no parttool is available for %s\n" -msgstr "No hi ha cap parttool disponible per %s\n" - -#: grub-core/commands/parttool.c:288 grub-core/lib/arg.c:285 -#: grub-core/lib/arg.c:351 -#, c-format -msgid "unknown argument `%s'" -msgstr "argument «%s» desconegut." - -#: grub-core/commands/parttool.c:344 -msgid "PARTITION COMMANDS" -msgstr "ORDRES DE PARTICIONAT" - -#: grub-core/commands/password.c:85 -msgid "USER PASSWORD" -msgstr "CONTRASENYA D'USUARI" - -#: grub-core/commands/password.c:86 -msgid "Set user password (plaintext). Unrecommended and insecure." -msgstr "Estableix una contrasenya d'usuari (text pla). No recomanat i insegur." - -#. TRANSLATORS: it means that the string which -#. was supposed to be a password hash doesn't -#. have a correct format, not to password -#. mismatch. -#: grub-core/commands/password_pbkdf2.c:98 -#: grub-core/commands/password_pbkdf2.c:115 -#: grub-core/commands/password_pbkdf2.c:123 -#: grub-core/commands/password_pbkdf2.c:150 -#: grub-core/commands/password_pbkdf2.c:179 -msgid "invalid PBKDF2 password" -msgstr "la contrasenya PBKDF2 no és vàlida" - -#: grub-core/commands/password_pbkdf2.c:202 -msgid "USER PBKDF2_PASSWORD" -msgstr "CONTRASENYA_PBKDF2 D'USUARI" - -#: grub-core/commands/password_pbkdf2.c:203 -msgid "Set user password (PBKDF2). " -msgstr "Estableix una contrasenya d'usuari (PBKDF2). " - -#: grub-core/commands/pcidump.c:39 grub-core/commands/setpci.c:69 -msgid "Select device by vendor and device IDs." -msgstr "Selecciona el dispositiu per proveïdor i IDs dels dispositius." - -#: grub-core/commands/pcidump.c:40 grub-core/commands/setpci.c:70 -msgid "[vendor]:[device]" -msgstr "[proveïdor]:[dispositiu]" - -#: grub-core/commands/pcidump.c:41 grub-core/commands/setpci.c:71 -msgid "Select device by its position on the bus." -msgstr "Selecciona el dispositiu per la seva posició al bus." - -#: grub-core/commands/pcidump.c:42 grub-core/commands/setpci.c:72 -msgid "[bus]:[slot][.func]" -msgstr "[bus]:[ranura]:[.func]" - -#: grub-core/commands/pcidump.c:109 grub-core/commands/pcidump.c:138 -#: grub-core/commands/setpci.c:183 grub-core/commands/setpci.c:214 -#: grub-core/fs/zfs/zfs.c:3794 grub-core/kern/emu/hostdisk.c:458 -#: grub-core/kern/emu/hostdisk.c:473 grub-core/kern/file.c:44 -#, c-format -msgid "missing `%c' symbol" -msgstr "falta el símbol «%c»" - -#: grub-core/commands/pcidump.c:168 -msgid "[-s POSITION] [-d DEVICE]" -msgstr "[-s POSICIÓ]... [-d DISPOSITIU]" - -#: grub-core/commands/pcidump.c:169 -msgid "Show raw dump of the PCI configuration space." -msgstr "Mostra el bolcat cru de l'espai de configuració del PCI." - -#: grub-core/commands/pgp.c:45 -msgid "Skip signature-checking of the public key file." -msgstr "No comprovis la signatura del fitxer de clau publica." - -#. TRANSLATORS: it's about GNUPG signatures. -#: grub-core/commands/pgp.c:71 grub-core/commands/pgp.c:81 -#: grub-core/commands/pgp.c:86 grub-core/commands/pgp.c:96 -#: grub-core/commands/pgp.c:103 grub-core/commands/pgp.c:107 -#: grub-core/commands/pgp.c:114 grub-core/commands/pgp.c:119 -#: grub-core/commands/pgp.c:124 grub-core/commands/pgp.c:128 -#: grub-core/commands/pgp.c:268 grub-core/commands/pgp.c:276 -#: grub-core/commands/pgp.c:281 grub-core/commands/pgp.c:289 -#: grub-core/commands/pgp.c:320 grub-core/commands/pgp.c:327 -#: grub-core/commands/pgp.c:332 grub-core/commands/pgp.c:342 -#: grub-core/commands/pgp.c:468 grub-core/commands/pgp.c:471 -#: grub-core/commands/pgp.c:474 grub-core/commands/pgp.c:477 -#: grub-core/commands/pgp.c:484 grub-core/commands/pgp.c:490 -#: grub-core/commands/pgp.c:665 -msgid "bad signature" -msgstr "signatura errònia" - -#. TRANSLATORS: %08x is 32-bit key id. -#: grub-core/commands/pgp.c:636 grub-core/commands/pgp.c:812 -#, c-format -msgid "public key %08x not found" -msgstr "no s'ha trobat la clau pública %08x" - -#: grub-core/commands/pgp.c:651 grub-core/disk/diskfilter.c:772 -#: grub-core/disk/diskfilter.c:782 grub-core/fs/ntfs.c:404 -#: grub-core/fs/zfs/zfs.c:1933 grub-core/normal/menu.c:428 -#, c-format -msgid "module `%s' isn't loaded" -msgstr "el mòdul «%s» no està carregat" - -#: grub-core/commands/pgp.c:994 -msgid "[-s|--skip-sig] FILE SIGNATURE_FILE [PUBKEY_FILE]" -msgstr "[-s|--skip-sig] FITXER FITXER_SIGNATURA [FITXER_CLAUPUB]" - -#: grub-core/commands/pgp.c:995 -msgid "Verify detached signature." -msgstr "Comprova la signatura separada." - -#: grub-core/commands/pgp.c:998 -msgid "[-s|--skip-sig] PUBKEY_FILE" -msgstr "[-s|--skip-sig] FITXER_CLAUPUB" - -#: grub-core/commands/pgp.c:999 -msgid "Add PUBKEY_FILE to trusted keys." -msgstr "Afegeix FITXER_CLAUPUB a les claus de confiança." - -#: grub-core/commands/pgp.c:1003 -msgid "Show the list of trusted keys." -msgstr "Mostra la llista de les claus de confiança." - -#: grub-core/commands/pgp.c:1005 -msgid "PUBKEY_ID" -msgstr "ID_CLAUPUB" - -#: grub-core/commands/pgp.c:1006 -msgid "Remove PUBKEY_ID from trusted keys." -msgstr "Elimina ID_CLAUPUB de les claus de confiança." - -#: grub-core/commands/probe.c:40 grub-core/commands/tr.c:32 -msgid "Set a variable to return value." -msgstr "Estableix una variable per retornar un valor." - -#. TRANSLATORS: It's a driver that is currently in use to access -#. the diven disk. -#: grub-core/commands/probe.c:43 -msgid "Determine driver." -msgstr "Determina el controlador." - -#: grub-core/commands/probe.c:44 -msgid "Determine partition map type." -msgstr "Determina el tipus de mapa de particions." - -#: grub-core/commands/probe.c:45 -msgid "Determine filesystem type." -msgstr "Determina el tipus de sistema de fitxers." - -#: grub-core/commands/probe.c:46 -msgid "Determine filesystem UUID." -msgstr "Determina l'UUID del sistema de fitxers." - -#: grub-core/commands/probe.c:47 -msgid "Determine filesystem label." -msgstr "Determina l'etiqueta del sistema de fitxers." - -#: grub-core/commands/probe.c:139 grub-core/commands/probe.c:146 -#: util/grub-probe.c:462 -#, c-format -msgid "filesystem `%s' does not support labels" -msgstr "el sistema de fitxers «%s» no permet l'ús d'etiquetes" - -#: grub-core/commands/probe.c:165 grub-core/fs/zfs/zfsinfo.c:430 -#: grub-core/loader/i386/bsd.c:169 util/grub-setup.c:223 -msgid "DEVICE" -msgstr "DISPOSITIU" - -#: grub-core/commands/probe.c:166 -msgid "Retrieve device info." -msgstr "Recupera la informació del dispositiu." - -#: grub-core/commands/read.c:85 -msgid "[ENVVAR]" -msgstr "[VARENTORN]" - -#: grub-core/commands/read.c:86 -msgid "Set variable with user input." -msgstr "Estableix la variable amb una entrada d'usuari." - -#: grub-core/commands/reboot.c:40 -msgid "Reboot the computer." -msgstr "Reinicia l'ordinador." - -#. TRANSLATORS: in regexp you can mark some -#. groups with parentheses. These groups are -#. then numbered and you can save some of -#. them in variables. In other programs -#. those components aree often referenced with -#. back slash, e.g. \1. Compare -#. sed -e 's,\([a-z][a-z]*\),lowercase=\1,g' -#. The whole matching component is saved in VARNAME, not its number. -#. -#: grub-core/commands/regexp.c:44 -msgid "Store matched component NUMBER in VARNAME." -msgstr "Desa el component coincident NÚMERO a NOMVARIABLE." - -#: grub-core/commands/regexp.c:45 -msgid "[NUMBER:]VARNAME" -msgstr "[NÚMERO:]NOMDEVARIABLE" - -#. TRANSLATORS: This are two arguments. So it's -#. two separate units to translate and pay -#. attention not to reverse them. -#: grub-core/commands/regexp.c:157 -msgid "REGEXP STRING" -msgstr "EXPREG CADENA" - -#: grub-core/commands/regexp.c:158 -msgid "Test if REGEXP matches STRING." -msgstr "Comprova si l'EXPREG coincideix amb la CADENA." - -#: grub-core/commands/search.c:324 -msgid "NAME [VARIABLE] [HINTS]" -msgstr "NOM [VARIABLE] [PISTES]" - -#: grub-core/commands/search_file.c:4 -msgid "" -"Search devices by file. If VARIABLE is specified, the first device found is " -"set to a variable." -msgstr "" -"Cerca dispositius pel fitxer. Si s'especifica VARIABLE, el nom del primer " -"dispositiu trobat s'escriu a la variable." - -#: grub-core/commands/search_label.c:4 -msgid "" -"Search devices by label. If VARIABLE is specified, the first device found is " -"set to a variable." -msgstr "" -"Cerca dispositius per l'etiqueta. Si s'especifica VARIABLE, el nom del " -"primer dispositiu trobat s'escriu a la variable." - -#: grub-core/commands/search_uuid.c:4 -msgid "" -"Search devices by UUID. If VARIABLE is specified, the first device found is " -"set to a variable." -msgstr "" -"Cerca dispositius per l'UUID. Si s'especifica VARIABLE, el nom del primer " -"dispositiu trobat s'escriu a la variable." - -#: grub-core/commands/search_wrap.c:34 -msgid "Search devices by a file." -msgstr "Cerca dispositius per un fitxer." - -#: grub-core/commands/search_wrap.c:35 -msgid "Search devices by a filesystem label." -msgstr "Cerca dispositius per una etiqueta del sistema de fitxers." - -#: grub-core/commands/search_wrap.c:37 -msgid "Search devices by a filesystem UUID." -msgstr "Cerca dispositius per un UUID del sistema de fitxers" - -#: grub-core/commands/search_wrap.c:40 -msgid "Set a variable to the first device found." -msgstr "Estableix una variable pel primer dispositiu trobat." - -#: grub-core/commands/search_wrap.c:42 -msgid "Do not probe any floppy drive." -msgstr "No provis cap disquetera." - -#: grub-core/commands/search_wrap.c:44 -msgid "" -"First try the device HINT. If HINT ends in comma, also try subpartitions" -msgstr "" -"Primer prova el dispositiu PISTA. Si PISTA acaba en coma, també prova les " -"particions inferiors" - -#: grub-core/commands/search_wrap.c:45 grub-core/commands/search_wrap.c:49 -#: grub-core/commands/search_wrap.c:53 grub-core/commands/search_wrap.c:57 -#: grub-core/commands/search_wrap.c:61 grub-core/commands/search_wrap.c:65 -msgid "HINT" -msgstr "PISTA" - -#: grub-core/commands/search_wrap.c:47 -msgid "" -"First try the device HINT if currently running on IEEE1275. If HINT ends in " -"comma, also try subpartitions" -msgstr "" -"Primer prova el dispositiu PISTA si s'executa sobre un IEEE1275. Si PISTA " -"acaba en coma, prova també les particions inferiors" - -#: grub-core/commands/search_wrap.c:51 -msgid "" -"First try the device HINT if currently running on BIOS. If HINT ends in " -"comma, also try subpartitions" -msgstr "" -"Primer prova el dispositiu PISTA si s'executa sobre una BIOS. Si PISTA acaba " -"en coma, també prova les particions inferiors" - -#: grub-core/commands/search_wrap.c:55 -msgid "" -"First try the device HINT if direct hardware access is supported. If HINT " -"ends in comma, also try subpartitions" -msgstr "" -"Primer prova el dispositiu PISTA si és compatible amb l'accés directe al " -"maquinari. Si PISTA acaba en coma, també prova les particions inferiors" - -#: grub-core/commands/search_wrap.c:59 -msgid "" -"First try the device HINT if currently running on EFI. If HINT ends in " -"comma, also try subpartitions" -msgstr "" -"Primer prova el dispositiu PISTA si s'executa sobre un EFI. Si PISTA acaba " -"en coma, també prova les particions inferiors" - -#: grub-core/commands/search_wrap.c:63 -msgid "" -"First try the device HINT if currently running on ARC. If HINT ends in " -"comma, also try subpartitions" -msgstr "" -"Primer prova el dispositiu PISTA si s'executa sobre l'ARC. Si PISTA acaba en " -"coma, també prova les particions inferiors" - -#: grub-core/commands/search_wrap.c:207 -msgid "[-f|-l|-u|-s|-n] [--hint HINT [--hint HINT] ...] NAME" -msgstr "[-f|-l|-u|-s|-n] [--hint PISTA [--hint PISTA] ...] NOM" - -#: grub-core/commands/search_wrap.c:209 -msgid "" -"Search devices by file, filesystem label or filesystem UUID. If --set is " -"specified, the first device found is set to a variable. If no variable name " -"is specified, `root' is used." -msgstr "" -"Cerca dispositius per fitxer o per etiqueta o UUID de sistema de fitxers. Si " -"s'especifica --set, el primer dispositiu trobat s'escriu a una variable. Si " -"no s'especifica cap nom de variable s'utilitza «root»." - -#: grub-core/commands/setpci.c:132 -#, c-format -msgid "Register %x of %x:%02x.%x is %x\n" -msgstr "El registre %x de %x:%02x.%x és %x\n" - -#: grub-core/commands/setpci.c:333 -msgid "[-s POSITION] [-d DEVICE] [-v VAR] REGISTER[=VALUE[:MASK]]" -msgstr "[-s POSICIÓ] [-d DISPOSITIU] [-v VAR] REGISTRE[=VALOR[:MÀSCARA]]" - -#: grub-core/commands/setpci.c:335 -msgid "Manipulate PCI devices." -msgstr "Manipula els dispositius PCI." - -#: grub-core/commands/sleep.c:32 -msgid "Verbose countdown." -msgstr "Compte enrere detallat." - -#: grub-core/commands/sleep.c:33 -msgid "Allow to interrupt with ESC." -msgstr "Permet interrompre amb ESC." - -#: grub-core/commands/sleep.c:109 -msgid "NUMBER_OF_SECONDS" -msgstr "NOMBRE_DE_SEGONS" - -#: grub-core/commands/sleep.c:110 -msgid "Wait for a specified number of seconds." -msgstr "Espera un nombre especificat de segons." - -#: grub-core/commands/syslinuxcfg.c:50 util/grub-syslinux2cfg.c:66 -msgid "root directory of the syslinux disk [default=/]." -msgstr "directori arrel del disc syslinux [per defecte=/]." - -#: grub-core/commands/syslinuxcfg.c:53 util/grub-syslinux2cfg.c:72 -msgid "" -"current directory of syslinux [default is parent directory of input file]." -msgstr "" -"el directori actual de syslinux [per defecte és el directori superior del " -"fitxer d'entrada]." - -#: grub-core/commands/syslinuxcfg.c:55 util/grub-syslinux2cfg.c:75 -msgid "assume input is an isolinux configuration file." -msgstr "suposa que l'entrada és un fitxer de configuració isolinux." - -#: grub-core/commands/syslinuxcfg.c:56 util/grub-syslinux2cfg.c:76 -msgid "assume input is a pxelinux configuration file." -msgstr "suposa que l'entrada és un fitxer de configuració pxelinux." - -#: grub-core/commands/syslinuxcfg.c:57 util/grub-syslinux2cfg.c:77 -msgid "assume input is a syslinux configuration file." -msgstr "S'assumeix que l'entrada és un fitxer de configuració de syslinux." - -#. TRANSLATORS: "syslinux config" means -#. "config as used by syslinux". -#: grub-core/commands/syslinuxcfg.c:189 -msgid "Execute syslinux config in same context" -msgstr "Executa la configuració de syslinux en el mateix context" - -#: grub-core/commands/syslinuxcfg.c:195 -msgid "Execute syslinux config in new context" -msgstr "Executa la configuració de syslinux en el nou context" - -#: grub-core/commands/syslinuxcfg.c:201 -msgid "Execute syslinux config in same context taking only menu entries" -msgstr "" -"Executa la configuració de syslinux en el mateix context agafant només les " -"entrades del menú" - -#: grub-core/commands/syslinuxcfg.c:207 -msgid "Execute syslinux config in new context taking only menu entries" -msgstr "" -"Executa la configuració de syslinux en el nou context agafant només les " -"entrades del menú" - -#: grub-core/commands/terminal.c:90 -msgid "no terminal specified" -msgstr "no s'ha especificat cap terminal" - -#: grub-core/commands/terminal.c:112 grub-core/commands/terminal.c:139 -#, c-format -msgid "terminal `%s' isn't found" -msgstr "no s'ha trobat el terminal «%s»" - -#: grub-core/commands/terminal.c:244 -msgid "Active input terminals:" -msgstr "Terminals d'entrada actius:" - -#: grub-core/commands/terminal.c:245 -msgid "Available input terminals:" -msgstr "Terminals d'entrada disponibles:" - -#: grub-core/commands/terminal.c:261 -msgid "Active output terminals:" -msgstr "Terminals de sortida actius:" - -#: grub-core/commands/terminal.c:262 -msgid "Available output terminals:" -msgstr "Terminals de sortida disponibles:" - -#: grub-core/commands/terminal.c:271 grub-core/commands/terminal.c:276 -msgid "[--append|--remove] [TERMINAL1] [TERMINAL2] ..." -msgstr "[--append|--remove] [TERMINAL1] [TERMINAL2] ..." - -#: grub-core/commands/terminal.c:273 -msgid "List or select an input terminal." -msgstr "Llista o selecciona un terminal d'entrada" - -#: grub-core/commands/terminal.c:278 -msgid "List or select an output terminal." -msgstr "Llista o selecciona un terminal de sortida." - -#: grub-core/commands/test.c:444 -msgid "EXPRESSION ]" -msgstr "EXPRESSIÓ ]" - -#: grub-core/commands/test.c:444 grub-core/commands/test.c:447 -msgid "Evaluate an expression." -msgstr "Avalua una expressió." - -#: grub-core/commands/test.c:447 -msgid "EXPRESSION" -msgstr "EXPRESSIÓ" - -#: grub-core/commands/testload.c:164 -msgid "Load the same file in multiple ways." -msgstr "Carrega el mateix fitxer de diferents maneres." - -#: grub-core/commands/testspeed.c:35 -msgid "Specify size for each read operation" -msgstr "Especifica la mida per cada operació de lectura" - -#: grub-core/commands/testspeed.c:58 -msgid "invalid block size" -msgstr "la mida del bloc no és vàlida" - -#: grub-core/commands/testspeed.c:80 -#, c-format -msgid "File size: %s\n" -msgstr "Mida del fitxer: %s\n" - -#: grub-core/commands/testspeed.c:83 -#, c-format -msgid "Elapsed time: %d.%03d s \n" -msgstr "Temps transcorregut: %d.%03d s \n" - -#: grub-core/commands/testspeed.c:92 -#, c-format -msgid "Speed: %s \n" -msgstr "Velocitat: %s\n" - -#: grub-core/commands/testspeed.c:107 -msgid "[-s SIZE] FILENAME" -msgstr "[-s MIDA] NOMFITXER" - -#: grub-core/commands/testspeed.c:108 -msgid "Test file read speed." -msgstr "Prova la velocitat de lectura del fitxer." - -#: grub-core/commands/time.c:38 grub-core/script/execute.c:974 -msgid "no command is specified" -msgstr "No heu especificat cap ordre" - -#: grub-core/commands/time.c:50 -#, c-format -msgid "Elapsed time: %d.%03d seconds \n" -msgstr "Temps transcorregut: %d.%03d segons \n" - -#: grub-core/commands/time.c:61 -msgid "COMMAND [ARGS]" -msgstr "ORDRE [ARGS]" - -#: grub-core/commands/time.c:62 -msgid "Measure time used by COMMAND" -msgstr "Mesura el temps que ha utilitzat l'ORDRE" - -#: grub-core/commands/tr.c:33 -msgid "Translate to upper case." -msgstr "Tradueix a majúscules." - -#: grub-core/commands/tr.c:34 -msgid "Translate to lower case." -msgstr "Tradueix a minúscules." - -#: grub-core/commands/tr.c:119 -msgid "[OPTIONS] [SET1] [SET2] [STRING]" -msgstr "[OPCIONS] [GRUP1] [GRUP2] [CADENA]" - -#: grub-core/commands/tr.c:120 -msgid "Translate SET1 characters to SET2 in STRING." -msgstr "Tradueix els caràcters del GRUP1 en els del GRUP2 a la CADENA." - -#. TRANSLATORS: it's a command description. -#: grub-core/commands/true.c:50 -msgid "Do nothing, successfully." -msgstr "No facis res, amb èxit." - -#. TRANSLATORS: it's a command description. -#: grub-core/commands/true.c:54 -msgid "Do nothing, unsuccessfully." -msgstr "No facis res, sense èxit." - -#: grub-core/commands/usbtest.c:221 -msgid "Test USB support." -msgstr "Prova la compatibilitat amb USB." - -#: grub-core/commands/verifiers.c:120 -#, c-format -msgid "verification requested but nobody cares: %s" -msgstr "" - -#: grub-core/commands/verifiers.c:140 -#, fuzzy -msgid "big file signature isn't implemented yet" -msgstr "la recolocació 0x%x encara no està implementada" - -#: grub-core/commands/videoinfo.c:61 -msgid "Text-only " -msgstr "Només text " - -#. TRANSLATORS: "Direct color" is a mode when the color components -#. are written dirrectly into memory. -#: grub-core/commands/videoinfo.c:66 -#, c-format -msgid "Direct color, mask: %d/%d/%d/%d pos: %d/%d/%d/%d" -msgstr "Color directe, màscara: %d/%d/%d/%d posició: %d/%d/%d/%d" - -#. TRANSLATORS: In "paletted color" mode you write the index of the color -#. in the palette. Synonyms include "packed pixel". -#: grub-core/commands/videoinfo.c:78 -msgid "Paletted " -msgstr "Amb paleta" - -#: grub-core/commands/videoinfo.c:80 -msgid "YUV " -msgstr "YUV " - -#. TRANSLATORS: "Planar" is the video memory where you have to write -#. in several different banks "plans" to control the different color -#. components of the same pixel. -#: grub-core/commands/videoinfo.c:85 -msgid "Planar " -msgstr "Planar " - -#: grub-core/commands/videoinfo.c:87 -msgid "Hercules " -msgstr "Hercules " - -#: grub-core/commands/videoinfo.c:89 -msgid "CGA " -msgstr "CGA" - -#. TRANSLATORS: Non-chain 4 is a 256-color planar -#. (unchained) video memory mode. -#: grub-core/commands/videoinfo.c:93 -msgid "Non-chain 4 " -msgstr "Non-chain 4 " - -#: grub-core/commands/videoinfo.c:95 -msgid "Monochrome " -msgstr "Monocrom" - -#: grub-core/commands/videoinfo.c:97 -msgid "Unknown video mode " -msgstr "Mode de vídeo desconegut " - -#: grub-core/commands/videoinfo.c:111 -msgid " EDID checksum invalid" -msgstr " La suma de verificació de l'EDID no és vàlida" - -#: grub-core/commands/videoinfo.c:116 -#, c-format -msgid " EDID version: %u.%u\n" -msgstr " Versió de l'EDID: %u.%u\n" - -#: grub-core/commands/videoinfo.c:120 -#, c-format -msgid " Preferred mode: %ux%u\n" -msgstr " Mode preferit: %ux%u\n" - -#: grub-core/commands/videoinfo.c:123 -msgid " No preferred mode available\n" -msgstr " No hi ha cap mode preferit disponible\n" - -#: grub-core/commands/videoinfo.c:146 grub-core/video/video.c:490 -#: grub-core/video/video.c:498 grub-core/video/video.c:509 -#: grub-core/video/video.c:520 grub-core/video/video.c:528 -#, c-format -msgid "invalid video mode specification `%s'" -msgstr "l'especificació «%s» del mode de vídeo no és vàlida" - -#: grub-core/commands/videoinfo.c:168 -msgid "List of supported video modes:" -msgstr "Llista dels modes de vídeo compatibles:" - -#: grub-core/commands/videoinfo.c:169 -msgid "Legend: mask/position=red/green/blue/reserved" -msgstr "Llegenda: màscara/posició=roig/verd/blau/reservat" - -#: grub-core/commands/videoinfo.c:176 -#, c-format -msgid "Adapter `%s':\n" -msgstr "Adaptador «%s»:\n" - -#: grub-core/commands/videoinfo.c:180 -msgid " No info available" -msgstr " No hi ha cap info disponible" - -#: grub-core/commands/videoinfo.c:198 -msgid " Failed to initialize video adapter" -msgstr " No s'ha pogut inicialitzar l'adaptador" - -#. TRANSLATORS: "x" has to be entered in, -#. like an identifier, so please don't -#. use better Unicode codepoints. -#: grub-core/commands/videoinfo.c:239 grub-core/commands/videoinfo.c:248 -msgid "[WxH[xD]]" -msgstr "[AmpladaxAlçada[xProfunditat]]" - -#: grub-core/commands/videoinfo.c:240 grub-core/commands/videoinfo.c:249 -msgid "" -"List available video modes. If resolution is given show only modes matching " -"it." -msgstr "" -"Llista els modes de vídeo disponibles. Si es dóna una resolució, mostra " -"només els modes que hi coincideixin." - -#. TRANSLATORS: "x" has to be entered in, -#. like an identifier, so please don't -#. use better Unicode codepoints. -#: grub-core/commands/videotest.c:225 -msgid "[WxH]" -msgstr "[AmpladaxAlçada]" - -#. TRANSLATORS: Here, on the other hand, it's -#. nicer to use unicode cross instead of x. -#: grub-core/commands/videotest.c:228 -msgid "Test video subsystem in mode WxH." -msgstr "Prova els subsistema de vídeo en mode Ample x Alt." - -#: grub-core/commands/videotest.c:231 -msgid "Test video subsystem." -msgstr "Prova el subsistema de vídeo." - -#: grub-core/commands/xen/lsxen.c:80 grub-core/commands/xen/lsxen.c:82 -msgid "[DIR]" -msgstr "[DIR]" - -#: grub-core/commands/xen/lsxen.c:81 grub-core/commands/xen/lsxen.c:83 -msgid "List Xen storage." -msgstr "Llista la capacitat d'emmagatzematge de Xen." - -#. TRANSLATORS: GRUBUUID stands for "filesystem -#. UUID as used in GRUB". -#: grub-core/commands/xnu_uuid.c:110 -msgid "[-l] GRUBUUID [VARNAME]" -msgstr "[-l] GRUBUUID [NOMVARIABLE]" - -#: grub-core/commands/xnu_uuid.c:111 -msgid "" -"Transform 64-bit UUID to format suitable for XNU. If -l is given keep it " -"lowercase as done by blkid." -msgstr "" -"Transforma un UUID de 64 bits a un format adient per XNU. Amb l'opció -l el " -"manté en minúscules tal i com fa blkid." - -#: grub-core/disk/arc/arcdisk.c:248 grub-core/disk/efi/efidisk.c:603 -#: grub-core/disk/i386/pc/biosdisk.c:498 grub-core/disk/i386/pc/biosdisk.c:543 -#: grub-core/disk/ieee1275/nand.c:198 grub-core/disk/ieee1275/obdisk.c:527 -#: grub-core/disk/ieee1275/ofdisk.c:586 -#, c-format -msgid "failure reading sector 0x%llx from `%s'" -msgstr "no s'ha pogut llegir el sector 0x%llx de «%s»" - -#: grub-core/disk/arc/arcdisk.c:284 grub-core/disk/efi/efidisk.c:626 -#: grub-core/disk/i386/pc/biosdisk.c:548 grub-core/disk/ieee1275/ofdisk.c:606 -#, c-format -msgid "failure writing sector 0x%llx to `%s'" -msgstr "no s'ha pogut escriure el sector 0x%llx a «%s»" - -#: grub-core/disk/cryptodisk.c:40 -msgid "Mount by UUID." -msgstr "Munta per UUID." - -#. TRANSLATORS: It's still restricted to cryptodisks only. -#: grub-core/disk/cryptodisk.c:42 -msgid "Mount all." -msgstr "Munta-ho tot." - -#: grub-core/disk/cryptodisk.c:43 -msgid "Mount all volumes with `boot' flag set." -msgstr "Munta tots els volums amb el senyal «boot» activat." - -#. TRANSLATORS: The first %s is the file being looked at, the second %s is -#. the error message. -#: grub-core/disk/cryptodisk.c:526 grub-core/kern/emu/hostdisk.c:152 -#: grub-core/kern/emu/hostdisk.c:262 grub-core/kern/emu/hostdisk.c:434 -#: grub-core/kern/emu/misc.c:168 grub-core/kern/emu/misc.c:174 -#: grub-core/kern/emu/misc.c:196 grub-core/osdep/bsd/getroot.c:92 -#: grub-core/osdep/bsd/getroot.c:168 grub-core/osdep/hurd/getroot.c:68 -#: grub-core/osdep/linux/blocklist.c:65 grub-core/osdep/linux/getroot.c:150 -#: grub-core/osdep/linux/hostdisk.c:194 grub-core/osdep/linux/hostdisk.c:421 -#: grub-core/osdep/linux/ofpath.c:417 grub-core/osdep/linux/ofpath.c:422 -#: grub-core/osdep/linux/ofpath.c:517 grub-core/osdep/linux/ofpath.c:530 -#: grub-core/osdep/sun/getroot.c:110 grub-core/osdep/windows/blocklist.c:98 -#: grub-core/tests/video_checksum.c:279 util/editenv.c:46 util/glue-efi.c:115 -#: util/glue-efi.c:120 util/glue-efi.c:130 util/grub-editenv.c:138 -#: util/grub-editenv.c:192 util/grub-file.c:83 util/grub-fstest.c:128 -#: util/grub-fstest.c:568 util/grub-install-common.c:92 -#: util/grub-install-common.c:94 util/grub-install-common.c:101 -#: util/grub-install-common.c:529 util/grub-menulst2cfg.c:53 -#: util/grub-menulst2cfg.c:68 util/grub-mkimage.c:292 util/grub-mklayout.c:504 -#: util/grub-mklayout.c:516 util/grub-mknetdir.c:133 util/grub-mknetdir.c:151 -#: util/grub-mkrescue.c:627 util/grub-mkrescue.c:631 util/grub-mkrescue.c:879 -#: util/grub-mkrescue.c:883 util/grub-mkstandalone.c:253 util/grub-mount.c:498 -#: util/grub-render-label.c:169 util/grub-script-check.c:175 -#: util/grub-syslinux2cfg.c:181 util/grub-syslinux2cfg.c:191 -#: util/grub-syslinux2cfg.c:212 util/grub-syslinux2cfg.c:228 util/misc.c:91 -#: util/render-label.c:76 util/render-label.c:163 util/render-label.c:174 -#: util/resolve.c:246 util/setup.c:783 -#, c-format -msgid "cannot open `%s': %s" -msgstr "no es pot obrir «%s»: %s" - -#: grub-core/disk/cryptodisk.c:583 grub-core/disk/cryptodisk.c:628 -#: grub-core/kern/emu/hostdisk.c:270 grub-core/kern/emu/hostfs.c:142 -#: grub-core/osdep/linux/hostdisk.c:456 util/grub-editenv.c:143 -#: util/grub-editenv.c:149 util/grub-fstest.c:320 util/misc.c:111 -#, c-format -msgid "cannot seek `%s': %s" -msgstr "no es pot executar «seek» sobre «%s»: %s" - -#: grub-core/disk/cryptodisk.c:1144 -msgid "SOURCE|-u UUID|-a|-b" -msgstr "FONT|-u UUID|-a|-b" - -#: grub-core/disk/cryptodisk.c:1145 -msgid "Mount a crypto device." -msgstr "Munta un dispositiu xifrat." - -#. TRANSLATORS: This message kicks in during the detection of -#. which modules needs to be included in core image. This happens -#. in the case of degraded RAID and means that autodetection may -#. fail to include some of modules. It's an installation time -#. message, not runtime message. -#: grub-core/disk/diskfilter.c:343 grub-core/disk/diskfilter.c:376 -#, c-format -msgid "" -"Couldn't find physical volume `%s'. Some modules may be missing from core " -"image." -msgstr "" -"No s'ha pogut trobar el volum físic «%s». Deuen faltar alguns mòduls a la " -"imatge del nucli." - -#: grub-core/disk/diskfilter.c:480 -#, c-format -msgid "physical volume %s not found" -msgstr "no s'ha trobat el volum físic %s" - -#: grub-core/disk/efi/efidisk.c:600 grub-core/disk/efi/efidisk.c:623 -#, c-format -msgid "no media in `%s'" -msgstr "no hi ha cap mitjà a «%s»" - -#: grub-core/disk/geli.c:75 -msgid "Couldn't load sha256" -msgstr "No s'ha pogut carregar el sha256" - -#: grub-core/disk/geli.c:85 -msgid "Couldn't load sha512" -msgstr "No s'ha pogut carregar el sha512" - -#: grub-core/disk/geli.c:216 grub-core/disk/geli.c:220 -msgid "couldn't read ELI metadata" -msgstr "no s'han pogut llegir les metadades ELI" - -#: grub-core/disk/geli.c:231 -msgid "wrong ELI magic or version" -msgstr "la versió o el màgic de les ELI són incorrectes" - -#: grub-core/disk/geli.c:435 grub-core/disk/luks.c:329 -msgid "Attempting to decrypt master key..." -msgstr "S'està intentant desxifrar la clau mestra..." - -#: grub-core/disk/geli.c:441 grub-core/disk/luks.c:347 -#, c-format -msgid "Enter passphrase for %s%s%s (%s): " -msgstr "Introduïu la contrasenya de %s%s%s (%s): " - -#. TRANSLATORS: It's a cryptographic key slot: one element of an array -#. where each element is either empty or holds a key. -#: grub-core/disk/geli.c:530 grub-core/disk/luks.c:451 -#, c-format -msgid "Slot %d opened\n" -msgstr "La ranura %d està oberta\n" - -#: grub-core/disk/i386/pc/biosdisk.c:470 grub-core/disk/i386/pc/biosdisk.c:524 -#: grub-core/disk/i386/pc/biosdisk.c:534 grub-core/kern/disk_common.c:47 -#, c-format -msgid "attempt to read or write outside of disk `%s'" -msgstr "s'ha intentat llegir o escriure fora del disc «%s»" - -#: grub-core/disk/i386/pc/biosdisk.c:491 grub-core/disk/i386/pc/biosdisk.c:611 -#: grub-core/disk/scsi.c:726 -msgid "cannot write to CD-ROM" -msgstr "no es pot escriure al CD-ROM" - -#: grub-core/disk/i386/pc/biosdisk.c:662 -msgid "" -"Native disk drivers are in use. Refusing to use firmware disk interface." -msgstr "" -"Els controladors de disc nadius s'estan utilitzant. Es rebutja la " -"utilització del microprogramari de la interfície." - -#. TRANSLATORS: it's a partition for embedding, -#. not a partition embed into something. GRUB -#. install tools put core.img into a place -#. usable for bootloaders (called generically -#. "embedding zone") and this operation is -#. called "embedding". -#: grub-core/disk/ldm.c:1015 -msgid "your LDM Embedding Partition is too small; embedding won't be possible" -msgstr "" -"la vostra partició LDM per incrustar és massa petita; no es podrà incrustar" - -#. TRANSLATORS: it's a partition for embedding, -#. not a partition embed into something. -#: grub-core/disk/ldm.c:1033 -msgid "this LDM has no Embedding Partition; embedding won't be possible" -msgstr "Aquest LDM no té cap partició per incrustar; no es podrà incrustar" - -#. TRANSLATORS: The disk is simply removed from the list of available ones, -#. not wiped, avoid to scare user. -#: grub-core/disk/loopback.c:45 -msgid "Delete the specified loopback drive." -msgstr "Esborra el dispositiu de retrobucle especificat." - -#: grub-core/disk/loopback.c:237 -msgid "[-d] DEVICENAME FILE." -msgstr "[-d] NOMDISPOSITIU FITXER." - -#. TRANSLATORS: The file itself is not destroyed -#. or transformed into drive. -#: grub-core/disk/loopback.c:240 -msgid "Make a virtual drive from a file." -msgstr "Fes una unitat virtual des d'un fitxer." - -#: grub-core/efiemu/i386/loadcore32.c:111 -#: grub-core/efiemu/i386/loadcore64.c:125 grub-core/kern/arm/dl.c:256 -#: grub-core/kern/arm64/dl.c:187 grub-core/kern/i386/dl.c:75 -#: grub-core/kern/ia64/dl.c:140 grub-core/kern/mips/dl.c:258 -#: grub-core/kern/powerpc/dl.c:163 grub-core/kern/riscv/dl.c:334 -#: grub-core/kern/sparc64/dl.c:180 grub-core/kern/x86_64/dl.c:110 -#: util/grub-mkimagexx.c:756 util/grub-mkimagexx.c:881 -#: util/grub-mkimagexx.c:945 util/grub-mkimagexx.c:1026 -#: util/grub-mkimagexx.c:1120 util/grub-mkimagexx.c:1222 -#: util/grub-mkimagexx.c:1413 util/grub-mkimagexx.c:1628 -#: util/grub-mkimagexx.c:1665 util/grub-mkimagexx.c:1697 -#: util/grub-mkimagexx.c:1767 util/grub-mkimagexx.c:1797 -#, c-format -msgid "relocation 0x%x is not implemented yet" -msgstr "la recolocació 0x%x encara no està implementada" - -#: grub-core/efiemu/loadcore.c:200 grub-core/efiemu/loadcore.c:237 -#: grub-core/loader/i386/bsdXX.c:317 util/grub-mkimagexx.c:2360 -msgid "no symbol table" -msgstr "no hi ha cap taula de símbols" - -#: grub-core/efiemu/loadcore.c:346 grub-core/kern/dl.c:609 -#: grub-core/loader/ia64/efi/linux.c:345 grub-core/loader/mips/linux.c:248 -#: grub-core/loader/multiboot_elfxx.c:76 -#: grub-core/loader/powerpc/ieee1275/linux.c:280 -#: grub-core/loader/sparc64/ieee1275/linux.c:320 -msgid "this ELF file is not of the right type" -msgstr "aquest tipus de fitxer ELF no és correcte" - -#: grub-core/efiemu/main.c:313 -msgid "Load and initialize EFI emulator." -msgstr "Carrega i inicia l'emulador EFI." - -#: grub-core/efiemu/main.c:317 -msgid "Finalize loading of EFI emulator." -msgstr "S'ha carregat l'emulador EFI." - -#: grub-core/efiemu/main.c:320 -msgid "Unload EFI emulator." -msgstr "Descarrega l'emulador EFI." - -#: grub-core/efiemu/symbols.c:92 grub-core/kern/dl.c:376 -#, c-format -msgid "symbol `%s' not found" -msgstr "no s'ha trobat el símbol «%s»" - -#: grub-core/font/font_cmd.c:52 -msgid "Loaded fonts:" -msgstr "Fonts carregades:" - -#: grub-core/font/font_cmd.c:74 -msgid "FILE..." -msgstr "FITXER..." - -#: grub-core/font/font_cmd.c:75 -msgid "Specify one or more font files to load." -msgstr "Especifiqueu un o més fitxers de fonts que vulgueu carregar." - -#: grub-core/font/font_cmd.c:78 -msgid "List the loaded fonts." -msgstr "Llista les fonts carregades." - -#: grub-core/fs/archelp.c:216 grub-core/fs/archelp.c:278 -#: grub-core/fs/btrfs.c:1815 grub-core/fs/fshelp.c:227 grub-core/fs/jfs.c:736 -#: grub-core/fs/minix.c:369 grub-core/fs/ufs.c:454 -msgid "too deep nesting of symlinks" -msgstr "la profunditat dels enllaços simbòlics és excessiva" - -#: grub-core/fs/bfs.c:228 grub-core/fs/fshelp.c:368 grub-core/fs/minix.c:270 -#: grub-core/kern/file.c:156 -msgid "attempt to read past the end of file" -msgstr "s'ha intentat llegir més enllà del final del fitxer" - -#: grub-core/fs/btrfs.c:1698 grub-core/fs/btrfs.c:1957 -#: grub-core/fs/fshelp.c:189 grub-core/fs/fshelp.c:309 grub-core/fs/jfs.c:431 -#: grub-core/fs/minix.c:414 grub-core/fs/minix.c:562 -#: grub-core/fs/reiserfs.c:732 grub-core/fs/ufs.c:531 grub-core/fs/ufs.c:671 -#: grub-core/fs/zfs/zfs.c:2831 grub-core/fs/zfs/zfs.c:4247 -msgid "not a directory" -msgstr "no és un directori" - -#: grub-core/fs/btrfs.c:2063 grub-core/fs/fshelp.c:307 grub-core/fs/jfs.c:835 -#: grub-core/fs/zfs/zfs.c:3801 -msgid "not a regular file" -msgstr "no és un fitxer regular" - -#: grub-core/fs/btrfs.c:2157 grub-core/fs/zfs/zfs.c:4333 -#: grub-core/partmap/msdos.c:400 -msgid "your core.img is unusually large. It won't fit in the embedding area" -msgstr "el vostre core.img és massa gran. No cabrà a l'àrea d'incrustació." - -#: grub-core/fs/fshelp.c:281 grub-core/fs/minix.c:630 grub-core/fs/ufs.c:661 -#: grub-core/fs/ufs.c:757 grub-core/kern/fs.c:168 grub-core/kern/fs.c:180 -#, c-format -msgid "invalid file name `%s'" -msgstr "el nom del fitxer «%s» no és vàlid" - -#: grub-core/fs/zfs/zfs.c:453 -msgid "checksum verification failed" -msgstr "ha fallat la comprovació del valor de la suma de verificació" - -#: grub-core/fs/zfs/zfs.c:1465 -msgid "couldn't find a necessary member device of multi-device filesystem" -msgstr "" -"no s'ha pogut trobar el membre de dispositius necessari del sistema de " -"fitxers de dispositius múltiples" - -#: grub-core/fs/zfs/zfscrypt.c:292 -msgid "no decryption key available" -msgstr "no hi ha disponible cap clau de xifrat" - -#: grub-core/fs/zfs/zfscrypt.c:304 -msgid "MAC verification failed" -msgstr "ha fallat la verificació de la MAC" - -#: grub-core/fs/zfs/zfscrypt.c:413 -msgid "Assume input is raw." -msgstr "S'assumeix que l'entrada és crua." - -#: grub-core/fs/zfs/zfscrypt.c:414 -msgid "Assume input is hex." -msgstr "S'assumeix que l'entrada és hexadecimal." - -#: grub-core/fs/zfs/zfscrypt.c:415 -msgid "Assume input is passphrase." -msgstr "S'assumeix que l'entrada és una contrasenya." - -#: grub-core/fs/zfs/zfscrypt.c:437 util/grub-fstest.c:553 util/grub-mount.c:483 -msgid "Enter ZFS password: " -msgstr "Introduïu la contrasenya ZFS: " - -#: grub-core/fs/zfs/zfscrypt.c:476 -msgid "[-h|-p|-r] [FILE]" -msgstr "[-h|-p|-r] [FITXER]" - -#: grub-core/fs/zfs/zfscrypt.c:477 -msgid "Import ZFS wrapping key stored in FILE." -msgstr "Importa la clau d'encapsulat ZFS desada al FITXER." - -#: grub-core/fs/zfs/zfsinfo.c:51 -msgid "Virtual device is removed" -msgstr "S'ha tret el dispositiu virtual" - -#: grub-core/fs/zfs/zfsinfo.c:57 -msgid "Virtual device is faulted" -msgstr "Ha fallat el dispositiu virtual" - -#: grub-core/fs/zfs/zfsinfo.c:63 -msgid "Virtual device is offline" -msgstr "El dispositiu virtual està desconnectat" - -#. TRANSLATORS: degraded doesn't mean broken but that some of -#. component are missing but virtual device as whole is still usable. -#: grub-core/fs/zfs/zfsinfo.c:70 -msgid "Virtual device is degraded" -msgstr "El dispositiu virtual està degradat" - -#: grub-core/fs/zfs/zfsinfo.c:73 -msgid "Virtual device is online" -msgstr "El dispositiu virtual està connectat" - -#: grub-core/fs/zfs/zfsinfo.c:89 -msgid "Incorrect virtual device: no type available" -msgstr "Dispositiu virtual incorrecte: no hi ha cap tipus disponible" - -#. TRANSLATORS: The virtual devices form a tree (in graph-theoretical -#. sense). The nodes like mirror or raidz have children: member devices. -#. The "real" devices which actually store data are called "leafs" -#. (again borrowed from graph theory) and can be either disks -#. (or partitions) or files. -#: grub-core/fs/zfs/zfsinfo.c:105 -msgid "Leaf virtual device (file or disk)" -msgstr "Dispositiu leaf virtual (fitxer o disc)" - -#: grub-core/fs/zfs/zfsinfo.c:113 -msgid "Bootpath: unavailable\n" -msgstr "Camí del directori d'arrencada: no disponible\n" - -#: grub-core/fs/zfs/zfsinfo.c:115 -#, c-format -msgid "Bootpath: %s\n" -msgstr "Camí del directori d'arrencada: %s\n" - -#: grub-core/fs/zfs/zfsinfo.c:120 -msgid "Path: unavailable" -msgstr "Camí: no disponible" - -#: grub-core/fs/zfs/zfsinfo.c:122 -#, c-format -msgid "Path: %s\n" -msgstr "Camí: %s\n" - -#: grub-core/fs/zfs/zfsinfo.c:127 -msgid "Devid: unavailable" -msgstr "Devid: no disponible" - -#: grub-core/fs/zfs/zfsinfo.c:129 -#, c-format -msgid "Devid: %s\n" -msgstr "Devid: %s\n" - -#: grub-core/fs/zfs/zfsinfo.c:148 -msgid "This VDEV is a mirror" -msgstr "Aquest VDEV és un mirall" - -#: grub-core/fs/zfs/zfsinfo.c:153 -#, c-format -msgid "This VDEV is a RAIDZ%llu\n" -msgstr "Aquest VDEV és un RAIDZ%llu\n" - -#: grub-core/fs/zfs/zfsinfo.c:158 -msgid "Incorrect VDEV" -msgstr "L'VEDV no és correcte" - -#: grub-core/fs/zfs/zfsinfo.c:161 -#, c-format -msgid "VDEV with %d children\n" -msgstr "VDEV amb %d fills\n" - -#. TRANSLATORS: it's the element carying the number %d, not -#. total element number. And the number itself is fine, -#. only the element isn't. -#. -#: grub-core/fs/zfs/zfsinfo.c:177 -#, c-format -msgid "VDEV element number %d isn't correct\n" -msgstr "El nombre d'elements %d de l'VDEV no és correcte\n" - -#. TRANSLATORS: it's the element carying the number %d, not -#. total element number. This is used in enumeration -#. "Element number 1", "Element number 2", ... -#: grub-core/fs/zfs/zfsinfo.c:184 -#, c-format -msgid "VDEV element number %d:\n" -msgstr "Nombre d'element %d de l'VDEV:\n" - -#: grub-core/fs/zfs/zfsinfo.c:193 -#, c-format -msgid "Unknown virtual device type: %s\n" -msgstr "El tipus de dispositiu virtual és desconegut: %s\n" - -#. TRANSLATORS: Here we speak about ZFS pools it's semi-marketing, -#. semi-technical term by Sun/Oracle and should be translated in sync with -#. other ZFS-related software and documentation. -#: grub-core/fs/zfs/zfsinfo.c:254 -msgid "Pool state: active" -msgstr "Estat del conjunt: actiu" - -#: grub-core/fs/zfs/zfsinfo.c:255 -msgid "Pool state: exported" -msgstr "Estat del conjunt: exportat" - -#: grub-core/fs/zfs/zfsinfo.c:256 -msgid "Pool state: destroyed" -msgstr "Estat del conjunt: destruït" - -#: grub-core/fs/zfs/zfsinfo.c:257 -msgid "Pool state: reserved for hot spare" -msgstr "Estat del conjunt: reservat com a disc de recanvi" - -#: grub-core/fs/zfs/zfsinfo.c:258 -msgid "Pool state: level 2 ARC device" -msgstr "Estat del conjunt: dispositiu de nivell 2 d'ARC" - -#: grub-core/fs/zfs/zfsinfo.c:259 -msgid "Pool state: uninitialized" -msgstr "Estat del conjunt: sense inicialitzar" - -#: grub-core/fs/zfs/zfsinfo.c:260 -msgid "Pool state: unavailable" -msgstr "Estat del conjunt: no disponible" - -#: grub-core/fs/zfs/zfsinfo.c:261 -msgid "Pool state: potentially active" -msgstr "Estat del conjunt: potencialment actiu" - -#: grub-core/fs/zfs/zfsinfo.c:306 -msgid "Pool name: unavailable" -msgstr "Nom del conjunt: no disponible" - -#: grub-core/fs/zfs/zfsinfo.c:308 -#, c-format -msgid "Pool name: %s\n" -msgstr "Nom del conjunt: %s\n" - -#: grub-core/fs/zfs/zfsinfo.c:313 -msgid "Pool GUID: unavailable" -msgstr "GUID del conjunt: no disponible" - -#: grub-core/fs/zfs/zfsinfo.c:315 -#, c-format -msgid "Pool GUID: %016llx\n" -msgstr "GUID del conjunt: %016llx\n" - -#: grub-core/fs/zfs/zfsinfo.c:320 -msgid "Unable to retrieve pool state" -msgstr "No es pot obtenir l'estat del conjunt" - -#: grub-core/fs/zfs/zfsinfo.c:322 -msgid "Unrecognized pool state" -msgstr "L'estat del conjunt no es reconeix" - -#. TRANSLATORS: There are undetermined number of virtual devices -#. in a device tree, not just one. -#. -#: grub-core/fs/zfs/zfsinfo.c:332 -msgid "No virtual device tree available" -msgstr "No hi ha cap arbre de dispositius virtuals disponible" - -#: grub-core/fs/zfs/zfsinfo.c:431 -msgid "Print ZFS info about DEVICE." -msgstr "Mostra la informació ZFS sobre el DISPOSITIUS" - -#: grub-core/fs/zfs/zfsinfo.c:433 -msgid "FILESYSTEM [VARIABLE]" -msgstr "SISTEMAFITXERS [VARIABLE]" - -#: grub-core/fs/zfs/zfsinfo.c:434 -msgid "Print ZFS-BOOTFSOBJ or store it into VARIABLE" -msgstr "Mostra el ZFS-BOOTFSOBJ o l'emmagatzema a la VARIABLE" - -#. TRANSLATORS: at this position GRUB waits for the user to do an action -#. in remote debugger, namely to tell it to establish connection. -#: grub-core/gdb/gdb.c:48 -msgid "Now connect the remote debugger, please." -msgstr "Ara connecteu el depurador remot." - -#. TRANSLATORS: GDB stub is a small part of -#. GDB functionality running on local host -#. which allows remote debugger to -#. connect to it. -#: grub-core/gdb/gdb.c:84 -msgid "Start GDB stub on given port" -msgstr "Inicia l'estub del GDB al port indicat" - -#. TRANSLATORS: this refers to triggering -#. a breakpoint so that the user will land -#. into GDB. -#: grub-core/gdb/gdb.c:89 -msgid "Break into GDB" -msgstr "Entra al GDB" - -#: grub-core/gdb/gdb.c:91 -msgid "Stop GDB stub" -msgstr "Atura l'estub del GDB" - -#: grub-core/gettext/gettext.c:85 -msgid "premature end of file" -msgstr "Final del fitxer prematur" - -#. TRANSLATORS: It refers to passing the string through gettext. -#. So it's "translate" in the same meaning as in what you're -#. doing now. -#. -#: grub-core/gettext/gettext.c:525 -msgid "Translates the string with the current settings." -msgstr "Tradueix la cadena amb la configuració actual." - -#: grub-core/gfxmenu/gui_label.c:186 grub-core/normal/menu_text.c:184 -msgid "" -"Press enter to boot the selected OS, `e' to edit the commands before booting " -"or `c' for a command-line. ESC to return previous menu." -msgstr "" -"Premeu enter per arrencar el SO seleccionat, «e» per editar les ordres abans " -"d'arrencar o «c» per una línia d'ordres. Premeu ESC per tornar al menú " -"anterior." - -#: grub-core/gfxmenu/gui_label.c:190 grub-core/normal/menu_text.c:192 -msgid "" -"Press enter to boot the selected OS, `e' to edit the commands before booting " -"or `c' for a command-line." -msgstr "" -"Premeu enter per arrencar el SO seleccionat, «e» per editar les ordres abans " -"d'arrencar o «c» per una línia d'ordres." - -#: grub-core/gfxmenu/gui_label.c:194 -msgid "enter: boot, `e': options, `c': cmd-line" -msgstr "introduïu: boot, «e»: opcions, «c»: línia de comandes" - -#: grub-core/gfxmenu/gui_progress_bar.c:339 grub-core/normal/menu_text.c:446 -#, c-format -msgid "The highlighted entry will be executed automatically in %ds." -msgstr "L'entrada realçada s'executarà automàticament d'aquí %d s." - -#. TRANSLATORS: 's' stands for seconds. -#. It's a standalone timeout notification. -#. Please use the short form in your language. -#: grub-core/gfxmenu/gui_progress_bar.c:344 -#, c-format -msgid "%ds remaining." -msgstr "Falten %d s." - -#. TRANSLATORS: 's' stands for seconds. -#. It's a standalone timeout notification. -#. Please use the shortest form available in you language. -#: grub-core/gfxmenu/gui_progress_bar.c:349 grub-core/normal/menu_text.c:444 -#: grub-core/normal/menu_text.c:462 -#, c-format -msgid "%ds" -msgstr "%d s" - -#: grub-core/gfxmenu/view.c:103 -msgid "GRUB Boot Menu" -msgstr "Menú d'arrencada del GRUB" - -#: grub-core/hello/hello.c:36 -msgid "Hello World" -msgstr "Hola món" - -#: grub-core/hello/hello.c:45 -msgid "Say `Hello World'." -msgstr "Diu «Hola món»." - -#: grub-core/io/gzio.c:409 grub-core/kern/file.c:210 -msgid "attempt to seek outside of the file" -msgstr "s'ha intentat buscar fora del fitxer" - -#. TRANSLATORS: It's about given file having some strange format, not -#. complete lack of gzip support. -#: grub-core/io/gzio.c:1228 grub-core/io/gzio.c:1237 grub-core/io/gzio.c:1244 -msgid "unsupported gzip format" -msgstr "no és compatible amb aquest format de gzip" - -#: grub-core/io/lzopio.c:511 -msgid "lzop file corrupted" -msgstr "el fitxer lzop és corrupte" - -#: grub-core/io/xzio.c:278 -msgid "xz file corrupted or unsupported block options" -msgstr "el fitxer xz és corrupte o no és compatible amb les opcions del bloc" - -#: grub-core/kern/arm/dl.c:277 grub-core/kern/arm64/dl.c:44 -#: grub-core/kern/i386/dl.c:36 grub-core/kern/ia64/dl.c:41 -#: grub-core/kern/mips/dl.c:48 grub-core/kern/powerpc/dl.c:36 -#: grub-core/kern/riscv/dl.c:47 grub-core/kern/sparc64/dl.c:36 -#: grub-core/kern/x86_64/dl.c:36 grub-core/loader/i386/bsd.c:1445 -#: grub-core/loader/i386/bsdXX.c:49 grub-core/loader/ia64/efi/linux.c:341 -#: grub-core/loader/mips/linux.c:298 grub-core/loader/multiboot.c:232 -#: grub-core/loader/multiboot_elfxx.c:73 -#: grub-core/loader/powerpc/ieee1275/linux.c:294 -#: grub-core/loader/sparc64/ieee1275/linux.c:331 -msgid "invalid arch-dependent ELF magic" -msgstr "el màgic de l'ELF no és vàlid segons quina sigui l'arquitectura" - -#: grub-core/kern/corecmd.c:178 -msgid "[ENVVAR=VALUE]" -msgstr "[VARENTORN=VALOR]" - -#: grub-core/kern/corecmd.c:179 -msgid "Set an environment variable." -msgstr "Assigna una variable d'entorn." - -#: grub-core/kern/corecmd.c:183 -msgid "ENVVAR" -msgstr "VARENTORN" - -#: grub-core/kern/corecmd.c:184 -msgid "Remove an environment variable." -msgstr "Esborra una variable d'entorn." - -#: grub-core/kern/corecmd.c:186 -msgid "[ARG]" -msgstr "[ARG]" - -#: grub-core/kern/corecmd.c:186 -msgid "List devices or files." -msgstr "Llista dispositius o fitxers." - -#: grub-core/kern/corecmd.c:188 -msgid "Insert a module." -msgstr "Insereix un mòdul." - -#: grub-core/kern/disk.c:236 grub-core/net/net.c:1390 -#, c-format -msgid "disk `%s' not found" -msgstr "no s'ha trobat el disc «%s»" - -#: grub-core/kern/disk_common.c:27 -msgid "attempt to read or write outside of partition" -msgstr "s'ha intentat llegir o escriure fora de la partició" - -#: grub-core/kern/dl.c:212 grub-core/kern/elf.c:61 grub-core/kern/elf.c:79 -#: grub-core/loader/i386/bsdXX.c:46 grub-core/loader/ia64/efi/linux.c:335 -#: grub-core/loader/multiboot_elfxx.c:69 -msgid "invalid arch-independent ELF magic" -msgstr "el màgic de l'ELF no és vàlid sigui quina sigui l'arquitectura" - -#. TRANSLATORS: it refers to the lack of free slots. -#: grub-core/kern/emu/hostdisk.c:208 grub-core/kern/emu/hostdisk.c:466 -msgid "device count exceeds limit" -msgstr "el recompte de dispositius ha excedit el límit" - -#: grub-core/kern/emu/hostdisk.c:342 util/editenv.c:54 util/grub-editenv.c:197 -#: util/grub-fstest.c:191 util/grub-mkfont.c:796 util/misc.c:114 -#: util/misc.c:129 util/setup.c:788 -#, c-format -msgid "cannot write to `%s': %s" -msgstr "no es pot escriure a «%s»: %s" - -#. TRANSLATORS: Only one entry is ignored. However the suggestion -#. is to correct/delete the whole file. -#. device.map is a file indicating which -#. devices are available at boot time. Fedora populated it with -#. entries like (hd0,1) /dev/sda1 which would mean that every -#. partition is a separate disk for BIOS. Such entries were -#. inactive in GRUB due to its bug which is now gone. Without -#. this additional check these entries would be harmful now. -#. -#: grub-core/kern/emu/hostdisk.c:503 -#, c-format -msgid "" -"the device.map entry `%s' is invalid. Ignoring it. Please correct or delete " -"your device.map" -msgstr "" -"L'entrada «%s» de device.map no és vàlida. S'ignora. Corregiu o esborreu el " -"device.map." - -#. TRANSLATORS: device.map is a filename. Not to be translated. -#. device.map specifies disk correspondance overrides. Previously -#. one could create any kind of device name with this. Due to -#. some problems we decided to limit it to just a handful -#. possibilities. -#: grub-core/kern/emu/hostdisk.c:555 -#, c-format -msgid "" -"the drive name `%s' in device.map is incorrect. Using %s instead. Please use " -"the form [hfc]d[0-9]* (E.g. `hd0' or `cd')" -msgstr "" -"El nom de la unitat «%s» dins device.map no és correcte. Se substitueix per " -"%s. Utilitzeu la forma [hfc]d[0-9]* (ex. «hd0» o «cd»)" - -#: grub-core/kern/emu/hostfs.c:76 grub-core/kern/emu/hostfs.c:109 -#, c-format -msgid "can't open `%s': %s" -msgstr "no es pot obrir «%s»: %s" - -#: grub-core/kern/emu/main.c:99 util/grub-fstest.c:516 util/grub-mount.c:452 -msgid "DEVICE_NAME" -msgstr "NOM_DISPOSITIU" - -#: grub-core/kern/emu/main.c:99 grub-core/loader/i386/bsd.c:136 -#: grub-core/loader/i386/bsd.c:169 util/grub-fstest.c:516 util/grub-mount.c:452 -msgid "Set root device." -msgstr "Indica el dispositiu arrel." - -#. TRANSLATORS: There are many devices in device map. -#: grub-core/kern/emu/main.c:102 util/grub-probe.c:733 util/grub-setup.c:85 -#, c-format -msgid "use FILE as the device map [default=%s]" -msgstr "utilitza el FITXER com un mapa de dispositius [per defecte=%s]" - -#. TRANSLATORS: There are many devices in device map. -#: grub-core/kern/emu/main.c:105 -msgid "use FILE as memdisk" -msgstr "fes servir el FITXER com a memdisk" - -#: grub-core/kern/emu/main.c:107 util/grub-setup.c:83 -#, c-format -msgid "use GRUB files in the directory DIR [default=%s]" -msgstr "utilitza els fitxers de GRUB del directori DIR [per defecte=%s]" - -#: grub-core/kern/emu/main.c:108 include/grub/util/install.h:67 -#: util/grub-editenv.c:58 util/grub-fstest.c:525 util/grub-glue-efi.c:58 -#: util/grub-macbless.c:104 util/grub-mkfont.c:962 util/grub-mkimage.c:84 -#: util/grub-mklayout.c:56 util/grub-mount.c:458 util/grub-probe.c:735 -#: util/grub-render-label.c:74 util/grub-script-check.c:52 util/grub-setup.c:90 -#: util/grub-syslinux2cfg.c:78 -msgid "print verbose messages." -msgstr "mostra els missatges detallats." - -#: grub-core/kern/emu/main.c:109 grub-core/lib/gnulib/argp-parse.c:85 -msgid "SECS" -msgstr "SEGONS" - -#: grub-core/kern/emu/main.c:109 -msgid "wait until a debugger will attach" -msgstr "espera fins que es connecti un depurador" - -#: grub-core/kern/emu/main.c:171 util/grub-macbless.c:143 -#: util/grub-mkrelpath.c:61 util/grub-probe.c:874 util/grub-script-check.c:75 -#: util/grub-setup.c:203 -#, c-format -msgid "Unknown extra argument `%s'." -msgstr "Argument extra «%s» desconegut." - -#: grub-core/kern/emu/main.c:185 -msgid "GRUB emulator." -msgstr "Emulador del GRUB." - -#: grub-core/kern/emu/main.c:213 util/grub-editenv.c:262 -#: util/grub-glue-efi.c:110 util/grub-macbless.c:173 util/grub-mkfont.c:1177 -#: util/grub-mkimage.c:266 util/grub-mklayout.c:494 -#: util/grub-mkpasswd-pbkdf2.c:132 util/grub-mkrelpath.c:96 -#: util/grub-probe.c:863 util/grub-render-label.c:152 -#: util/grub-script-check.c:160 util/grub-setup.c:262 -#: util/grub-syslinux2cfg.c:163 -msgid "Error in parsing command line arguments\n" -msgstr "" -"S'ha produït un error quan s'analitzava els arguments de la línia de " -"comandes\n" - -#. TRANSLATORS: In this case GRUB tells user what he has to do. -#: grub-core/kern/emu/main.c:248 -#, c-format -msgid "Run `gdb %s %d', and set ARGS.HOLD to zero.\n" -msgstr "Executa «gdb %s %d», i posa ARGS.HOLD a zero.\n" - -#: grub-core/kern/emu/misc.c:48 -#, c-format -msgid "%s: warning:" -msgstr "%s: avís:" - -#: grub-core/kern/emu/misc.c:64 -#, c-format -msgid "%s: info:" -msgstr "%s: info:" - -#: grub-core/kern/emu/misc.c:79 util/grub-fstest.c:567 util/grub-fstest.c:576 -#: util/grub-mount.c:497 util/grub-mount.c:505 -#, c-format -msgid "%s: error:" -msgstr "%s: error:" - -#: grub-core/kern/emu/misc.c:176 -#, c-format -msgid "file `%s' is too big" -msgstr "el fitxer «%s» és massa gran" - -#: grub-core/kern/fs.c:120 -msgid "unknown filesystem" -msgstr "sistema de fitxers desconegut" - -#: grub-core/kern/mips/arc/init.c:273 grub-core/kern/mips/loongson/init.c:301 -msgid "Shutdown failed" -msgstr "No s'ha pogut apagar" - -#: grub-core/kern/mips/arc/init.c:285 -msgid "Exit failed" -msgstr "No s'ha pogut sortir" - -#: grub-core/kern/misc.c:351 grub-core/kern/misc.c:408 include/grub/misc.h:269 -#: include/grub/misc.h:278 -msgid "overflow is detected" -msgstr "s'ha detectat un desbordament" - -#: grub-core/kern/partition.c:51 grub-core/partmap/bsdlabel.c:108 -#, c-format -msgid "Discarding improperly nested partition (%s,%s,%s%d)" -msgstr "Es descarten les particions mal imbricades (%s, %s %s%d)" - -#: grub-core/kern/rescue_parser.c:73 util/grub-editenv.c:292 -#, c-format -msgid "Unknown command `%s'.\n" -msgstr "L'ordre «%s» és desconeguda.\n" - -#: grub-core/lib/arg.c:31 -msgid "Display this help and exit." -msgstr "Mostra aquesta ajuda i surt." - -#: grub-core/lib/arg.c:33 -msgid "Display the usage of this command and exit." -msgstr "Mostra l'ús d'aquesta ordre i surt." - -#: grub-core/lib/arg.c:362 -#, c-format -msgid "missing mandatory option for `%s'" -msgstr "falta una opció obligatòria per «%s»" - -#: grub-core/lib/arg.c:384 -#, c-format -msgid "the argument `%s' requires an integer" -msgstr "l'argument «%s» necessita un enter" - -#: grub-core/lib/arg.c:407 -#, c-format -msgid "" -"a value was assigned to the argument `%s' while it doesn't require an " -"argument" -msgstr "s'ha assignat un valor a l'argument «%s» que no en necessita cap" - -#: grub-core/lib/backtrace.c:64 -msgid "Print backtrace." -msgstr "Mostra la traça de la pila." - -#: grub-core/lib/gnulib/argp-help.c:149 -#, c-format -msgid "ARGP_HELP_FMT: %s value is less than or equal to %s" -msgstr "ARGP_HELP_FMT: el valor de %s és menor o igual que %s" - -#: grub-core/lib/gnulib/argp-help.c:225 -#, c-format -msgid "%.*s: ARGP_HELP_FMT parameter requires a value" -msgstr "%.*s: el paràmetre ARGP_HELP_FMT necessita un valor" - -#: grub-core/lib/gnulib/argp-help.c:235 -#, c-format -msgid "%.*s: Unknown ARGP_HELP_FMT parameter" -msgstr "%.*s: el paràmetre ARGP_HELP_FMT és desconegut" - -#: grub-core/lib/gnulib/argp-help.c:248 -#, c-format -msgid "Garbage in ARGP_HELP_FMT: %s" -msgstr "Hi ha brossa a ARGP_HELP_FMT: %s" - -#: grub-core/lib/gnulib/argp-help.c:1229 -msgid "" -"Mandatory or optional arguments to long options are also mandatory or " -"optional for any corresponding short options." -msgstr "" -"Els arguments opcionals o obligatoris per les opcions llargues també ho són " -"per les opcions curtes corresponents." - -#: grub-core/lib/gnulib/argp-help.c:1620 -msgid " or: " -msgstr " o: " - -#: grub-core/lib/gnulib/argp-help.c:1632 -msgid " [OPTION...]" -msgstr " [OPCIONS...]" - -#: grub-core/lib/gnulib/argp-help.c:1659 -#, c-format -msgid "Try '%s --help' or '%s --usage' for more information.\n" -msgstr "Proveu «%s --help» o «%s --usage» per a obtenir més informació.\n" - -#: grub-core/lib/gnulib/argp-help.c:1687 -#, c-format -msgid "Report bugs to %s.\n" -msgstr "Informeu de les fallades a %s.\n" - -#: grub-core/lib/gnulib/argp-help.c:1888 grub-core/lib/gnulib/error.c:195 -msgid "Unknown system error" -msgstr "Error de sistema desconegut" - -#: grub-core/lib/gnulib/argp-parse.c:81 -msgid "give this help list" -msgstr "mostra aquesta llista d'ajuda" - -#: grub-core/lib/gnulib/argp-parse.c:82 -msgid "give a short usage message" -msgstr "Mostra un missatge d'ús curt" - -#: grub-core/lib/gnulib/argp-parse.c:83 util/grub-mkfont.c:946 -msgid "NAME" -msgstr "NOM" - -#: grub-core/lib/gnulib/argp-parse.c:84 -msgid "set the program name" -msgstr "Estableix el nom del programa" - -#: grub-core/lib/gnulib/argp-parse.c:86 -msgid "hang for SECS seconds (default 3600)" -msgstr "atura durant SEGONS segons (per defecte 3600)" - -#: grub-core/lib/gnulib/argp-parse.c:143 -msgid "print program version" -msgstr "mostra la versió del programa" - -#: grub-core/lib/gnulib/argp-parse.c:160 -msgid "(PROGRAM ERROR) No version known!?" -msgstr "(ERROR DEL PROGRAMA) Versió desconeguda!?" - -#: grub-core/lib/gnulib/argp-parse.c:613 -#, c-format -msgid "%s: Too many arguments\n" -msgstr "%s: Massa arguments\n" - -#: grub-core/lib/gnulib/argp-parse.c:759 -msgid "(PROGRAM ERROR) Option should have been recognized!?" -msgstr "(ERROR DEL PROGRAMA) S'hauria de reconèixer les opcions!?" - -#: grub-core/lib/gnulib/getopt.c:278 -#, fuzzy, c-format -msgid "%s: option '%s%s' is ambiguous\n" -msgstr "%s: l'opció «-W %s» és ambigua\n" - -#: grub-core/lib/gnulib/getopt.c:284 -#, fuzzy, c-format -msgid "%s: option '%s%s' is ambiguous; possibilities:" -msgstr "%s: l'opció «%s» és ambigua; les possibilitats són:" - -#: grub-core/lib/gnulib/getopt.c:319 -#, fuzzy, c-format -msgid "%s: unrecognized option '%s%s'\n" -msgstr "%s: l'opció «%c%s» no és coneguda\n" - -#: grub-core/lib/gnulib/getopt.c:345 -#, fuzzy, c-format -msgid "%s: option '%s%s' doesn't allow an argument\n" -msgstr "%s: l'opció «%c%s» no permet un argument\n" - -#: grub-core/lib/gnulib/getopt.c:360 -#, fuzzy, c-format -msgid "%s: option '%s%s' requires an argument\n" -msgstr "%s: l'opció «--%s» necessita un argument\n" - -#: grub-core/lib/gnulib/getopt.c:621 -#, c-format -msgid "%s: invalid option -- '%c'\n" -msgstr "%s: l'opció -- «%c» no és vàlida\n" - -#: grub-core/lib/gnulib/getopt.c:636 grub-core/lib/gnulib/getopt.c:682 -#, c-format -msgid "%s: option requires an argument -- '%c'\n" -msgstr "%s: l'opció -- «%c» necessita un argument\n" - -#: grub-core/lib/gnulib/openat-die.c:38 -#, fuzzy, c-format -msgid "unable to record current working directory" -msgstr "no es pot restaurar el directori original" - -#: grub-core/lib/gnulib/openat-die.c:57 -#, c-format -msgid "failed to return to initial working directory" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:135 grub-core/osdep/aros/hostdisk.c:523 -msgid "Success" -msgstr "Èxit" - -#: grub-core/lib/gnulib/regcomp.c:138 -msgid "No match" -msgstr "No s'ha trobat cap concordança" - -#: grub-core/lib/gnulib/regcomp.c:141 -msgid "Invalid regular expression" -msgstr "L'expressió regular no és vàlida" - -#: grub-core/lib/gnulib/regcomp.c:144 -msgid "Invalid collation character" -msgstr "El caràcter de paginació no és vàlid" - -#: grub-core/lib/gnulib/regcomp.c:147 -msgid "Invalid character class name" -msgstr "El nom de tipus de caràcter no és vàlid" - -#: grub-core/lib/gnulib/regcomp.c:150 -msgid "Trailing backslash" -msgstr "Contrabarra final" - -#: grub-core/lib/gnulib/regcomp.c:153 -msgid "Invalid back reference" -msgstr "La referència anterior no és vàlida" - -#: grub-core/lib/gnulib/regcomp.c:156 -#, fuzzy -msgid "Unmatched [, [^, [:, [., or [=" -msgstr "Falta el tancament d'un [ o d'un [^" - -#: grub-core/lib/gnulib/regcomp.c:159 -msgid "Unmatched ( or \\(" -msgstr "Falta el tancament d'un ( o d'un \\(" - -#: grub-core/lib/gnulib/regcomp.c:162 -msgid "Unmatched \\{" -msgstr "Falta el tancament d'un \\{" - -#: grub-core/lib/gnulib/regcomp.c:165 -msgid "Invalid content of \\{\\}" -msgstr "El contingut de \\{\\} no és vàlid" - -#: grub-core/lib/gnulib/regcomp.c:168 -msgid "Invalid range end" -msgstr "El rang no és vàlid" - -#: grub-core/lib/gnulib/regcomp.c:171 -msgid "Memory exhausted" -msgstr "S'ha esgotat la memòria" - -#: grub-core/lib/gnulib/regcomp.c:174 -msgid "Invalid preceding regular expression" -msgstr "L'expressió regular precedent no és vàlida" - -#: grub-core/lib/gnulib/regcomp.c:177 -msgid "Premature end of regular expression" -msgstr "Final prematur de l'expressió regular" - -#: grub-core/lib/gnulib/regcomp.c:180 -msgid "Regular expression too big" -msgstr "L'expressió regular és massa gran" - -#: grub-core/lib/gnulib/regcomp.c:183 -msgid "Unmatched ) or \\)" -msgstr "Falta l'obertura d'un ) o d'un \\)" - -#: grub-core/lib/gnulib/regcomp.c:531 -msgid "unknown regexp error" -msgstr "error d'expressió regular desconegut" - -#: grub-core/lib/gnulib/regcomp.c:676 -msgid "No previous regular expression" -msgstr "No hi cap expressió regular prèvia" - -#: grub-core/lib/i386/halt.c:77 -msgid "GRUB doesn't know how to halt this machine yet!" -msgstr "El GRUB encara no sap com parar aquesta màquina!" - -#: grub-core/lib/legacy_parse.c:75 -msgid "Default server is ${net_default_server}" -msgstr "El servidor per defecte és ${net_default_server}" - -#: grub-core/lib/legacy_parse.c:844 grub-core/video/colors.c:296 -#: grub-core/video/colors.c:305 grub-core/video/colors.c:311 -#: grub-core/video/colors.c:327 util/render-label.c:84 util/render-label.c:98 -#, c-format -msgid "invalid color specification `%s'" -msgstr "l'especificació «%s» del color no és vàlida" - -#: grub-core/lib/mips/arc/reboot.c:32 grub-core/lib/mips/loongson/reboot.c:61 -msgid "Reboot failed" -msgstr "No s'ha pogut arrencar de nou" - -#: grub-core/lib/random.c:113 -msgid "[LENGTH]" -msgstr "[LONGITUD]" - -#: grub-core/lib/random.c:114 -msgid "Hexdump random data." -msgstr "Bolcat hexadecimal de dades aleatòries." - -#: grub-core/loader/arm/linux.c:242 -msgid "device tree must be supplied (see `devicetree' command)" -msgstr "" -"Cal proporcionar un arbre de dispositius (vegeu la comanda «devicetree»)" - -#: grub-core/loader/arm/linux.c:334 -msgid "invalid zImage" -msgstr "la zImage no és vàlid" - -#: grub-core/loader/arm/linux.c:450 grub-core/loader/efi/fdt.c:144 -msgid "invalid device tree" -msgstr "l'arbre de dispositius no és vàlid" - -#: grub-core/loader/arm/linux.c:493 grub-core/loader/arm64/linux.c:383 -#: grub-core/loader/i386/linux.c:1125 grub-core/loader/i386/pc/linux.c:479 -#: grub-core/loader/i386/xen.c:962 grub-core/loader/i386/xen.c:964 -#: grub-core/loader/ia64/efi/linux.c:591 grub-core/loader/mips/linux.c:501 -#: grub-core/loader/powerpc/ieee1275/linux.c:383 -#: grub-core/loader/riscv/linux.c:50 -#: grub-core/loader/sparc64/ieee1275/linux.c:511 -msgid "Load Linux." -msgstr "Carrega el Linux." - -#: grub-core/loader/arm/linux.c:495 grub-core/loader/arm64/linux.c:385 -#: grub-core/loader/i386/linux.c:1127 grub-core/loader/i386/pc/linux.c:482 -#: grub-core/loader/i386/xen.c:966 grub-core/loader/ia64/efi/linux.c:594 -#: grub-core/loader/mips/linux.c:503 -#: grub-core/loader/powerpc/ieee1275/linux.c:385 -#: grub-core/loader/riscv/linux.c:52 -#: grub-core/loader/sparc64/ieee1275/linux.c:513 -msgid "Load initrd." -msgstr "Carrega l'initrd." - -#. TRANSLATORS: DTB stands for device tree blob. -#: grub-core/loader/arm/linux.c:498 grub-core/loader/efi/fdt.c:169 -msgid "Load DTB file." -msgstr "Carrega el fitxer DTB." - -#: grub-core/loader/arm64/linux.c:59 -msgid "" -"plain image kernel not supported - rebuild with CONFIG_(U)EFI_STUB enabled" -msgstr "" -"No es permeten els nuclis l'ús de les imatges simples del nucli. Torneu-la " -"a muntar (build) amb CONFIG_(U)EFI_STUB habilitat" - -#: grub-core/loader/arm64/xen_boot.c:156 -msgid "failed to get FDT" -msgstr "No s'ha pogut obtenir l'FDT" - -#: grub-core/loader/arm64/xen_boot.c:418 -msgid "you need to load the Xen Hypervisor first" -msgstr "primer heu de carregar l'hipervisor de XEN" - -#: grub-core/loader/arm64/xen_boot.c:516 -msgid "Load a xen hypervisor." -msgstr "Carrega un hipervisor de xen." - -#: grub-core/loader/arm64/xen_boot.c:519 -msgid "Load a xen module." -msgstr "Carrega un mòdul de xen." - -#: grub-core/loader/efi/appleloader.c:231 -msgid "[OPTS]" -msgstr "[OPCIONS]" - -#. TRANSLATORS: This command is used on EFI to -#. switch to BIOS mode and boot the OS requiring -#. BIOS. -#: grub-core/loader/efi/appleloader.c:235 -msgid "Boot BIOS-based system." -msgstr "Arrenca el sistema basat en BIOS." - -#: grub-core/loader/efi/chainloader.c:421 -#: grub-core/loader/i386/pc/chainloader.c:303 -msgid "Load another boot loader." -msgstr "Carrega un altre gestor d'arrencada." - -#: grub-core/loader/i386/bsd.c:103 -msgid "Display output on all consoles." -msgstr "Mostra la sortida a totes les consoles." - -#: grub-core/loader/i386/bsd.c:104 grub-core/loader/i386/bsd.c:138 -#: grub-core/loader/i386/bsd.c:171 -msgid "Use serial console." -msgstr "Utilitza una consola sèrie." - -#: grub-core/loader/i386/bsd.c:105 grub-core/loader/i386/bsd.c:131 -#: grub-core/loader/i386/bsd.c:159 -msgid "Ask for file name to reboot from." -msgstr "Demana el nom del fitxer des d'on arrencar de nou." - -#: grub-core/loader/i386/bsd.c:106 -msgid "Use CD-ROM as root." -msgstr "Utilitza el CDROM com arrel." - -#: grub-core/loader/i386/bsd.c:107 -msgid "Invoke user configuration routing." -msgstr "Invoca el camí de la configuració d'usuari." - -#: grub-core/loader/i386/bsd.c:108 grub-core/loader/i386/bsd.c:135 -#: grub-core/loader/i386/bsd.c:162 -msgid "Enter in KDB on boot." -msgstr "Entra en KDB a l'arrencar." - -#: grub-core/loader/i386/bsd.c:109 -msgid "Use GDB remote debugger instead of DDB." -msgstr "Utilitza el depurador remot GDB en comptes del DDB." - -#: grub-core/loader/i386/bsd.c:110 -msgid "Disable all boot output." -msgstr "Deshabilita totes les sortides d'arrencada." - -#: grub-core/loader/i386/bsd.c:112 -msgid "Wait for keypress after every line of output." -msgstr "Espera que es premi una tecla després de cada línia de sortida." - -#: grub-core/loader/i386/bsd.c:114 -msgid "Use compiled-in root device." -msgstr "Utilitza el dispositiu root compilat internament." - -#: grub-core/loader/i386/bsd.c:115 grub-core/loader/i386/bsd.c:134 -#: grub-core/loader/i386/bsd.c:165 -msgid "Boot into single mode." -msgstr "Arrenca en mode simple." - -#: grub-core/loader/i386/bsd.c:116 grub-core/loader/i386/bsd.c:166 -msgid "Boot with verbose messages." -msgstr "Arrenca amb missatges detallats." - -#: grub-core/loader/i386/bsd.c:132 grub-core/loader/i386/bsd.c:160 -msgid "Don't reboot, just halt." -msgstr "No reiniciïs, només apaga." - -#: grub-core/loader/i386/bsd.c:133 grub-core/loader/i386/bsd.c:161 -msgid "Change configured devices." -msgstr "Canvia els dispositius configurats." - -#. TRANSLATORS: "com" is static and not to be translated. It refers to -#. serial ports e.g. com1. -#. -#: grub-core/loader/i386/bsd.c:142 -msgid "comUNIT[,SPEED]" -msgstr "comUNITAT[,VELOCITAT]" - -#: grub-core/loader/i386/bsd.c:157 -msgid "Disable SMP." -msgstr "Deshabilita el SMP." - -#: grub-core/loader/i386/bsd.c:158 -msgid "Disable ACPI." -msgstr "Deshabilita l'ACPI." - -#: grub-core/loader/i386/bsd.c:164 -msgid "Don't display boot diagnostic messages." -msgstr "No mostris els missatges de diagnòstics de l'arrencada." - -#: grub-core/loader/i386/bsd.c:167 -msgid "Boot with debug messages." -msgstr "Arrenca amb missatges de depuració." - -#: grub-core/loader/i386/bsd.c:168 -msgid "Suppress normal output (warnings remain)." -msgstr "Suprimeix la sortida normal (conserva els avisos)." - -#. TRANSLATORS: "com" is static and not to be translated. It refers to -#. serial ports e.g. com1. -#. -#: grub-core/loader/i386/bsd.c:175 -msgid "[ADDR|comUNIT][,SPEED]" -msgstr "[ADREÇA|comUNITAT][,VELOCITAT]" - -#: grub-core/loader/i386/bsd.c:489 grub-core/loader/i386/bsd.c:555 -msgid "name" -msgstr "nom" - -#: grub-core/loader/i386/bsd.c:489 grub-core/loader/i386/bsd.c:555 -msgid "type" -msgstr "tipus" - -#: grub-core/loader/i386/bsd.c:489 grub-core/loader/i386/bsd.c:555 -msgid "addr" -msgstr "adreça" - -#: grub-core/loader/i386/bsd.c:490 grub-core/loader/i386/bsd.c:556 -msgid "size" -msgstr "mida" - -#: grub-core/loader/i386/bsd.c:1147 grub-core/loader/i386/linux.c:466 -#: grub-core/loader/i386/xnu.c:1030 -msgid "Booting in blind mode" -msgstr "S'arrenca en mode cec." - -#: grub-core/loader/i386/bsd.c:2137 -msgid "Load kernel of FreeBSD." -msgstr "Carrega el nucli del FreeBSD." - -#: grub-core/loader/i386/bsd.c:2140 -msgid "Load kernel of OpenBSD." -msgstr "Carrega el nucli del OpenBSD." - -#: grub-core/loader/i386/bsd.c:2143 -msgid "Load kernel of NetBSD." -msgstr "Carrega el nucli del NetBSD." - -#: grub-core/loader/i386/bsd.c:2147 -msgid "Load FreeBSD env." -msgstr "Carrega l'entorn del FreeBSD." - -#: grub-core/loader/i386/bsd.c:2150 -msgid "Load FreeBSD kernel module." -msgstr "Carrega el mòdul del nucli del FreeBSD." - -#: grub-core/loader/i386/bsd.c:2153 -msgid "Load NetBSD kernel module." -msgstr "Càrrega un mòdul del nucli NetBSD." - -#: grub-core/loader/i386/bsd.c:2156 -msgid "Load NetBSD kernel module (ELF)." -msgstr "Càrrega un mòdul del nucli NetBSD (ELF)." - -#: grub-core/loader/i386/bsd.c:2159 -msgid "Load FreeBSD kernel module (ELF)." -msgstr "Carrega el mòdul del nucli del FreeBSD (ELF)." - -#. TRANSLATORS: ramdisk isn't identifier, -#. it can be translated. -#: grub-core/loader/i386/bsd.c:2165 -msgid "Load kOpenBSD ramdisk." -msgstr "Carrega disc de ram kOpenBSD." - -#. TRANSLATORS: "payload" is a term used -#. by coreboot and must be translated in -#. sync with coreboot. If unsure, -#. let it untranslated. -#: grub-core/loader/i386/coreboot/chainloader.c:510 -msgid "Load another coreboot payload" -msgstr "Carrega unes altres dades fonamentals de «coreboot»." - -#: grub-core/loader/i386/linux.c:876 -msgid "Legacy `ask' parameter no longer supported." -msgstr "no es permet l'ús de l'antic paràmetre «ask»." - -#: grub-core/loader/i386/linux.c:892 grub-core/loader/i386/linux.c:902 -#: grub-core/loader/i386/linux.c:932 -#, c-format -msgid "%s is deprecated. Use set gfxpayload=%s before linux command instead.\n" -msgstr "" -"ja no és permet l'ús de %s. En canvi, utilitzeu set gfxpayload=%s abans de " -"l'ordre de linux.\n" - -#. TRANSLATORS: "x" has to be entered in, like an identifier, -#. so please don't use better Unicode codepoints. -#: grub-core/loader/i386/linux.c:915 -#, c-format -msgid "" -"%s is deprecated. VGA mode %d isn't recognized. Use set " -"gfxpayload=WIDTHxHEIGHT[xDEPTH] before linux command instead.\n" -msgstr "" -"ja no es permet l'ús de %s. No es reconeix el mode VGA %d. En canvi, " -"utilitzeu set gfxpayload=AMPLADAxALÇADA[xPROFUNDITAT] abans de l'ordre de " -"linux.\n" - -#: grub-core/loader/i386/pc/chainloader.c:302 -msgid "[--force|--bpb] FILE" -msgstr "[--force|--bpb] FITXER" - -#: grub-core/loader/i386/pc/freedos.c:148 util/setup.c:293 -#, c-format -msgid "the size of `%s' is too large" -msgstr "la mida de «%s» és massa gran" - -#: grub-core/loader/i386/pc/freedos.c:183 -msgid "Load FreeDOS kernel.sys." -msgstr "Carrega el kernel.sys de FreeDOS." - -#: grub-core/loader/i386/pc/ntldr.c:155 -msgid "Load NTLDR or BootMGR." -msgstr "Carrega el NTLDR o el BootMGR." - -#. TRANSLATORS: it's about guessing which GRUB disk -#. is which Plan9 disk. If your language has no -#. word "mapping" you can use another word which -#. means that the GRUBDEVICE and PLAN9DEVICE are -#. actually the same device, just named differently -#. in OS and GRUB. -#: grub-core/loader/i386/pc/plan9.c:59 -msgid "Override guessed mapping of Plan9 devices." -msgstr "Sobreescriu el mapa de dispositius Plan9 suposats." - -#: grub-core/loader/i386/pc/plan9.c:60 -msgid "GRUBDEVICE=PLAN9DEVICE" -msgstr "DISPOSITIUGRUB=DISPOSITIUPLAN9" - -#: grub-core/loader/i386/pc/plan9.c:599 -msgid "KERNEL ARGS" -msgstr "ARGUMENTS KERNEL" - -#: grub-core/loader/i386/pc/plan9.c:599 -msgid "Load Plan9 kernel." -msgstr "Carrega el nucli Plan9." - -#: grub-core/loader/i386/pc/pxechainloader.c:161 -msgid "Load a PXE image." -msgstr "Carrega una imatge PXE." - -#: grub-core/loader/i386/pc/truecrypt.c:226 -msgid "Load Truecrypt ISO." -msgstr "Carrega l'ISO truecrypt." - -#: grub-core/loader/i386/xen.c:781 grub-core/loader/i386/xen.c:865 -msgid "initrd already loaded" -msgstr "l'initrd ja està carregat" - -#: grub-core/loader/i386/xen.c:968 -msgid "Load module." -msgstr "Carrega un mòdul." - -#: grub-core/loader/i386/xnu.c:1003 -msgid "Press any key to launch xnu" -msgstr "Premeu una tecla per arrencar xnu" - -#. TRANSLATORS: `device-properties' -#. is a variable name, -#. not a program. -#: grub-core/loader/i386/xnu.c:1159 -msgid "Load `device-properties' dump." -msgstr "Carrega el bolcat de «device-properties»." - -#: grub-core/loader/ia64/efi/linux.c:124 -msgid "Could not locate FPSWA driver" -msgstr "No es pot trobar el controlador FPSWA" - -#: grub-core/loader/ia64/efi/linux.c:132 -msgid "FPSWA protocol wasn't able to find the interface" -msgstr "el protocol FPSWA no ha pogut trobar la interfície" - -#: grub-core/loader/ia64/efi/linux.c:580 -msgid "No FPSWA found" -msgstr "No s'ha trobat cap FPSWA" - -#: grub-core/loader/ia64/efi/linux.c:582 -#, c-format -msgid "FPSWA revision: %x\n" -msgstr "Revisió del FPSWA: %x\n" - -#: grub-core/loader/ia64/efi/linux.c:591 -msgid "FILE [ARGS...]" -msgstr "FITXER [ARGUMENTS...]" - -#: grub-core/loader/ia64/efi/linux.c:597 -msgid "Display FPSWA version." -msgstr "Mostra la versió del FPSWA." - -#: grub-core/loader/multiboot.c:248 -msgid "WARNING: no console will be available to OS" -msgstr "AVÃS: el SO no tindrà cap consola disponible" - -#: grub-core/loader/multiboot.c:450 -msgid "Load a multiboot 2 kernel." -msgstr "Carrega un nucli multiarrencada 2." - -#: grub-core/loader/multiboot.c:453 -msgid "Load a multiboot 2 module." -msgstr "Carrega un mòdul multiarrencada 2." - -#: grub-core/loader/multiboot.c:456 -msgid "Load a multiboot kernel." -msgstr "Carrega un nucli multiarrencada." - -#: grub-core/loader/multiboot.c:459 -msgid "Load a multiboot module." -msgstr "Carrega un mòdul multiarrencada." - -#: grub-core/loader/riscv/linux.c:30 grub-core/loader/riscv/linux.c:40 -#, fuzzy -msgid "Linux not supported yet" -msgstr "l'intèrpret no és compatible" - -#: grub-core/loader/xnu.c:1416 grub-core/term/gfxterm_background.c:45 -msgid "Background image mode." -msgstr "Mode d'imatge de fons." - -#. TRANSLATORS: This refers to background image mode (stretched or -#. in left-top corner). Note that GRUB will accept only original -#. keywords stretch and normal, not the translated ones. -#. So please put both in translation -#. e.g. stretch(=%STRETCH%)|normal(=%NORMAL%). -#. The percents mark the translated version. Since many people -#. may not know the word stretch or normal I recommend -#. putting the translation either here or in "Background image mode." -#. string. -#: grub-core/loader/xnu.c:1416 grub-core/term/gfxterm_background.c:55 -msgid "stretch|normal" -msgstr "ampliat|normal" - -#: grub-core/loader/xnu.c:1482 -msgid "Load XNU image." -msgstr "Carrega una imatge del XNU." - -#: grub-core/loader/xnu.c:1484 -msgid "Load 64-bit XNU image." -msgstr "Carrega una imatge del XNU de 64 bits." - -#: grub-core/loader/xnu.c:1486 -msgid "Load XNU extension package." -msgstr "Carrega un paquet d'extensió del XNU." - -#: grub-core/loader/xnu.c:1488 -msgid "Load XNU extension." -msgstr "Carrega una extensió del XNU." - -#. TRANSLATORS: OSBundleRequired is a -#. variable name in xnu extensions -#. manifests. It behaves mostly like -#. GNU/Linux runlevels. -#. -#: grub-core/loader/xnu.c:1495 -msgid "DIRECTORY [OSBundleRequired]" -msgstr "DIRECTORI [NecessitaOSBundle]" - -#. TRANSLATORS: There are many extensions -#. in extension directory. -#: grub-core/loader/xnu.c:1498 -msgid "Load XNU extension directory." -msgstr "Carrega el directori de les extensions del XNU." - -#. TRANSLATORS: ramdisk here isn't identifier. It can be translated. -#: grub-core/loader/xnu.c:1501 -msgid "Load XNU ramdisk. It will be available in OS as md0." -msgstr "Carrega un disc ram XNU. Estarà disponible al SO com a md0." - -#: grub-core/loader/xnu.c:1505 -msgid "Load a splash image for XNU." -msgstr "Carrega una imatge de presentació pel XNU." - -#: grub-core/loader/xnu.c:1510 -msgid "Load an image of hibernated XNU." -msgstr "Carrega una imatge de XNU hibernada." - -#: grub-core/mmap/mmap.c:538 -msgid "ADDR1,MASK1[,ADDR2,MASK2[,...]]" -msgstr "ADR1, MÀSC1, [,ADR2,MÀSC2[,...]]" - -#: grub-core/mmap/mmap.c:539 -msgid "Declare memory regions as faulty (badram)." -msgstr "Declara regions de memòria com a memòria defectuosa (badram)." - -#: grub-core/mmap/mmap.c:541 -msgid "FROM[K|M|G] TO[K|M|G]" -msgstr "DES DE[K|M|G] A[K|M|G]" - -#: grub-core/mmap/mmap.c:542 -msgid "Remove any memory regions in specified range." -msgstr "Esborra totes les regions de memòria del rang especificat." - -#: grub-core/net/bootp.c:653 -msgid "four arguments expected" -msgstr "s'esperaven quatre arguments" - -#: grub-core/net/bootp.c:661 grub-core/net/net.c:1155 -#, c-format -msgid "unrecognised network interface `%s'" -msgstr "no es reconeix la interfície de xarxa «%s»" - -#: grub-core/net/bootp.c:664 -msgid "no DHCP info found" -msgstr "no s'ha trobat cap informació DHCP" - -#: grub-core/net/bootp.c:674 -msgid "no DHCP options found" -msgstr "no s'ha trobat cap opció DHCP" - -#: grub-core/net/bootp.c:682 -#, fuzzy -msgid "invalid DHCP option code" -msgstr "no s'ha trobat cap opció DHCP" - -#: grub-core/net/bootp.c:686 -#, fuzzy, c-format -msgid "no DHCP option %u found" -msgstr "no s'ha trobat cap opció DHCP %d" - -#: grub-core/net/bootp.c:743 -#, c-format -msgid "unrecognised DHCP option format specification `%s'" -msgstr "no es reconeix l'especificació del format de l'opció DHCP «%s»" - -#: grub-core/net/bootp.c:767 -msgid "no network card found" -msgstr "no s'ha trobat cap tarja de xarxa" - -#: grub-core/net/bootp.c:859 grub-core/net/net.c:389 -#, c-format -msgid "couldn't autoconfigure %s" -msgstr "no s'ha pogut configurar automàticament %s" - -#: grub-core/net/bootp.c:873 grub-core/net/bootp.c:876 -msgid "[CARD]" -msgstr "[TARGETA]" - -#: grub-core/net/bootp.c:874 -msgid "perform a bootp autoconfiguration" -msgstr "executa la configuració automàtica de bootp" - -#: grub-core/net/bootp.c:877 -#, fuzzy -msgid "perform a DHCP autoconfiguration" -msgstr "executa la configuració automàtica de bootp" - -#: grub-core/net/bootp.c:879 -msgid "VAR INTERFACE NUMBER DESCRIPTION" -msgstr "VAR INTERFÃCIE NÚMERO DESCRIPCIÓ" - -#: grub-core/net/bootp.c:880 -msgid "" -"retrieve DHCP option and save it into VAR. If VAR is - then print the value." -msgstr "recupera l'opció DHCP i desa-la a VAR. Si VAR és - mostra el valor." - -#: grub-core/net/dns.c:459 -msgid "no DNS servers configured" -msgstr "no hi ha cap servidor DNS configurat" - -#: grub-core/net/dns.c:522 -msgid "domain name component is too long" -msgstr "el component del nom de domini és massa llarg" - -#: grub-core/net/dns.c:618 grub-core/net/dns.c:666 -msgid "no DNS record found" -msgstr "no s'ha trobat cap registre de DNS" - -#: grub-core/net/dns.c:626 -msgid "no DNS reply received" -msgstr "no s'ha rebut cap resposta de DNS" - -#: grub-core/net/dns.c:682 -msgid "only ipv4" -msgstr "només ipv4" - -#: grub-core/net/dns.c:686 -msgid "only ipv6" -msgstr "només ipv6" - -#: grub-core/net/dns.c:690 -msgid "prefer ipv4" -msgstr "preferentment ipv4" - -#: grub-core/net/dns.c:694 -msgid "prefer ipv6" -msgstr "preferentment ipv6" - -#: grub-core/net/dns.c:759 -msgid "ADDRESS DNSSERVER" -msgstr "ADREÇA SERVIDORDNS" - -#: grub-core/net/dns.c:760 -msgid "Perform a DNS lookup" -msgstr "executa una cerca de DNS" - -#: grub-core/net/dns.c:762 grub-core/net/dns.c:765 -msgid "DNSSERVER" -msgstr "SERVIDORDNS" - -#: grub-core/net/dns.c:763 -msgid "Add a DNS server" -msgstr "Afegeix un servidor DNS" - -#: grub-core/net/dns.c:766 -msgid "Remove a DNS server" -msgstr "Esborra un servidor DNS" - -#: grub-core/net/dns.c:768 -msgid "List DNS servers" -msgstr "Llista els servidors de DNS" - -#: grub-core/net/drivers/efi/efinet.c:49 grub-core/net/drivers/efi/efinet.c:65 -#: grub-core/net/drivers/efi/efinet.c:77 grub-core/net/drivers/emu/emunet.c:62 -#: grub-core/net/drivers/i386/pc/pxe.c:273 -#: grub-core/net/drivers/ieee1275/ofnet.c:75 -#: grub-core/net/drivers/uboot/ubootnet.c:62 -msgid "couldn't send network packet" -msgstr "no s'ha pogut enviar un paquet de xarxa" - -#: grub-core/net/drivers/ieee1275/ofnet.c:326 -#: grub-core/net/drivers/ieee1275/ofnet.c:359 -msgid "interpret is not supported" -msgstr "l'intèrpret no és compatible" - -#: grub-core/net/drivers/ieee1275/ofnet.c:336 -msgid "alloc-mem failed" -msgstr "ha fallat la ubicació de memòria" - -#: grub-core/net/drivers/ieee1275/ofnet.c:370 -msgid "free-mem failed" -msgstr "ha fallat l'alliberament de memòria" - -#: grub-core/net/http.c:105 -msgid "unsupported HTTP response" -msgstr "no és compatible amb la resposta de l'HTTP" - -#. TRANSLATORS: GRUB HTTP code is pretty young. So even perfectly -#. valid answers like 403 will trigger this very generic message. -#: grub-core/net/http.c:126 -#, c-format -msgid "unsupported HTTP error %d: %s" -msgstr "no és compatible amb l'error %d de l'HTTP :%s" - -#: grub-core/net/http.c:429 grub-core/net/tftp.c:420 -#, c-format -msgid "time out opening `%s'" -msgstr "S'ha excedit el temps quan s'obria «%s»" - -#: grub-core/net/net.c:179 -msgid "timeout: could not resolve hardware address" -msgstr "temps excedit: no s'ha pogut resoldre l'adreça de maquinari" - -#: grub-core/net/net.c:548 -#, c-format -msgid "unresolvable address %s" -msgstr "l'adreça %s no es pot resoldre" - -#: grub-core/net/net.c:594 -#, c-format -msgid "unrecognised network address `%s'" -msgstr "no es reconeix l'adreça de xarxa «%s»" - -#: grub-core/net/net.c:661 -msgid "destination unreachable" -msgstr "no s'ha pogut accedir al destí" - -#. TRANSLATORS: route loop is a condition when e.g. -#. to contact server A you need to go through B -#. and to contact B you need to go through A. -#: grub-core/net/net.c:684 -msgid "route loop detected" -msgstr "s'ha detectat un bucle de ruta" - -#: grub-core/net/net.c:700 -msgid "address not found" -msgstr "no s'ha trobat l'adreça" - -#: grub-core/net/net.c:704 -msgid "you can't delete this address" -msgstr "no podeu esborrar aquesta adreça" - -#: grub-core/net/net.c:776 grub-core/net/net.c:792 -#, c-format -msgid "Unsupported hw address type %d\n" -msgstr "No és compatible amb l'ús del tipus de maquinari %d\n" - -#: grub-core/net/net.c:813 -#, c-format -msgid "Unsupported address type %d\n" -msgstr "No es permet el tipus d'adreça %d\n" - -#: grub-core/net/net.c:1017 grub-core/net/net.c:1131 -msgid "three arguments expected" -msgstr "s'esperaven tres arguments" - -#: grub-core/net/net.c:1023 -msgid "card not found" -msgstr "no s'ha trobat la targeta" - -#. TRANSLATORS: it refers to the network address. -#: grub-core/net/net.c:1167 -msgid "temporary" -msgstr "temporal" - -#: grub-core/net/net.c:1190 -#, c-format -msgid "Unknown address type %d\n" -msgstr "el tipus d'adreça %d és desconegut\n" - -#: grub-core/net/net.c:1298 -msgid "no server is specified" -msgstr "no s'ha especificat cap servidor" - -#: grub-core/net/net.c:1637 -#, c-format -msgid "timeout reading `%s'" -msgstr "s'ha excedit el temps de lectura de «%s»" - -#. TRANSLATORS: HWADDRESS stands for -#. "hardware address". -#: grub-core/net/net.c:1762 -msgid "SHORTNAME CARD ADDRESS [HWADDRESS]" -msgstr "NOMCURT TARGETA ADREÇA [ADREÇAFÃSICA]" - -#: grub-core/net/net.c:1763 -msgid "Add a network address." -msgstr "Afegeix una adreça de xarxa." - -#: grub-core/net/net.c:1766 -msgid "[CARD [HWADDRESS]]" -msgstr "[TARGETA [ADREÇAFÃSICA]]" - -#: grub-core/net/net.c:1767 -msgid "Perform an IPV6 autoconfiguration" -msgstr "Executa la configuració automàtica de l'IPV6" - -#: grub-core/net/net.c:1770 grub-core/net/net.c:1777 -msgid "SHORTNAME" -msgstr "NOMCURT" - -#: grub-core/net/net.c:1771 -msgid "Delete a network address." -msgstr "Esborra una adreça de xarxa." - -#. TRANSLATORS: "gw" is a keyword. -#: grub-core/net/net.c:1774 -msgid "SHORTNAME NET [INTERFACE| gw GATEWAY]" -msgstr "NOMCURT XARXA [INTERFÃCIE] gw PASSARELA]" - -#: grub-core/net/net.c:1775 -msgid "Add a network route." -msgstr "Afegeix una ruta de xarxa." - -#: grub-core/net/net.c:1778 -msgid "Delete a network route." -msgstr "Esborra una ruta de xarxa." - -#: grub-core/net/net.c:1780 -msgid "list network routes" -msgstr "llista les rutes de xarxa" - -#: grub-core/net/net.c:1782 -msgid "list network cards" -msgstr "llista les targetes de xarxa" - -#: grub-core/net/net.c:1784 -msgid "list network addresses" -msgstr "llista les adreces de xarxa" - -#: grub-core/net/tcp.c:681 -msgid "connection refused" -msgstr "s'ha refusat la connexió" - -#: grub-core/net/tcp.c:684 -msgid "connection timeout" -msgstr "s'ha esgotat el temps de connexió" - -#: grub-core/normal/auth.c:220 -msgid "Enter username: " -msgstr "Introdueix el nom d'usuari: " - -#: grub-core/normal/auth.c:269 -msgid "[USERLIST]" -msgstr "[LLISTAUSUARIS]" - -#: grub-core/normal/auth.c:270 -msgid "Check whether user is in USERLIST." -msgstr "Comprova si l'usuari és a LLISTAUSUARIS." - -#: grub-core/normal/cmdline.c:174 grub-core/normal/menu_entry.c:1068 -msgid "Possible commands are:" -msgstr "Les ordres possibles són:" - -#: grub-core/normal/cmdline.c:177 grub-core/normal/menu_entry.c:1072 -msgid "Possible devices are:" -msgstr "Els dispositius possibles són:" - -#: grub-core/normal/cmdline.c:180 grub-core/normal/menu_entry.c:1076 -msgid "Possible files are:" -msgstr "Els fitxers possibles són:" - -#: grub-core/normal/cmdline.c:183 grub-core/normal/menu_entry.c:1080 -msgid "Possible partitions are:" -msgstr "Les particions possibles són:" - -#: grub-core/normal/cmdline.c:186 grub-core/normal/menu_entry.c:1084 -msgid "Possible arguments are:" -msgstr "Els arguments possibles són:" - -#. TRANSLATORS: this message is used if none of above matches. -#. This shouldn't happen but please use the general term for -#. "thing" or "object". -#: grub-core/normal/cmdline.c:192 grub-core/normal/menu_entry.c:1088 -msgid "Possible things are:" -msgstr "Les possibilitats són:" - -#: grub-core/normal/color.c:81 -#, c-format -msgid "Warning: syntax error (missing slash) in `%s'\n" -msgstr "Avís: error de sintaxi (falta una barra) a «%s»\n" - -#: grub-core/normal/color.c:90 -#, c-format -msgid "Warning: invalid foreground color `%s'\n" -msgstr "Avís: color de primer pla no vàlid «%s»\n" - -#: grub-core/normal/color.c:96 -#, c-format -msgid "Warning: invalid background color `%s'\n" -msgstr "Avís: color de fons no vàlid «%s»\n" - -#: grub-core/normal/context.c:206 -msgid "ENVVAR [ENVVAR] ..." -msgstr "VARENTORN [VARENTORN] ..." - -#: grub-core/normal/context.c:207 -msgid "Export variables." -msgstr "Exporta les variables." - -#: grub-core/normal/datetime.c:25 -msgid "Sunday" -msgstr "Diumenge" - -#: grub-core/normal/datetime.c:26 -msgid "Monday" -msgstr "Dilluns" - -#: grub-core/normal/datetime.c:27 -msgid "Tuesday" -msgstr "Dimarts" - -#: grub-core/normal/datetime.c:28 -msgid "Wednesday" -msgstr "Dimecres" - -#: grub-core/normal/datetime.c:29 -msgid "Thursday" -msgstr "Dijous" - -#: grub-core/normal/datetime.c:30 -msgid "Friday" -msgstr "Divendres" - -#: grub-core/normal/datetime.c:31 -msgid "Saturday" -msgstr "Dissabte" - -#: grub-core/normal/dyncmd.c:187 -msgid "module isn't loaded" -msgstr "no s'ha carregat el mòdul" - -#: grub-core/normal/main.c:211 -#, c-format -msgid "GNU GRUB version %s" -msgstr "Versió %s del GNU GRUB" - -#: grub-core/normal/main.c:360 -msgid "ESC at any time exits." -msgstr "En qualsevol moment ESC surt." - -#: grub-core/normal/main.c:363 -#, c-format -msgid "" -"Minimal BASH-like line editing is supported. For the first word, TAB lists " -"possible command completions. Anywhere else TAB lists possible device or " -"file completions. %s" -msgstr "" -"Es permet l'ús d'una línia d'edició mínima tipus BASH. Per la primera " -"paraula, TAB mostra les opcions per completar possibles. A qualsevol altre " -"lloc, TAB mostra completats de dispositius o fitxers possibles. %s" - -#. TRANSLATORS: it's command line prompt. -#: grub-core/normal/main.c:395 -msgid ">" -msgstr ">" - -#. TRANSLATORS: it's command line prompt. -#: grub-core/normal/main.c:398 -msgid "grub>" -msgstr "grub>" - -#: grub-core/normal/main.c:518 -msgid "Clear the screen." -msgstr "Neteja la pantalla." - -#: grub-core/normal/main.c:527 -msgid "Enter normal mode." -msgstr "Entra al mode normal." - -#: grub-core/normal/main.c:529 -msgid "Exit from normal mode." -msgstr "Surt del mode normal." - -#: grub-core/normal/menu.c:66 grub-core/normal/menu_entry.c:1449 -msgid "Press any key to continue..." -msgstr "Premeu una tecla per continuar..." - -#: grub-core/normal/menu.c:815 -#, c-format -msgid "Booting `%s'" -msgstr "S'arrenca «%s»" - -#: grub-core/normal/menu.c:827 -#, c-format -msgid "Falling back to `%s'" -msgstr "S'arrenca alternativament «%s»" - -#: grub-core/normal/menu.c:843 -msgid "Failed to boot both default and fallback entries.\n" -msgstr "No ha pogut arrencar ni l'entrada per defecte ni l'alternativa.\n" - -#: grub-core/normal/menu_entry.c:1171 -msgid "Booting a command list" -msgstr "S'està arrencant una llista d'ordres" - -#: grub-core/normal/menu_text.c:160 -msgid "" -"Minimum Emacs-like screen editing is supported. TAB lists completions. Press " -"Ctrl-x or F10 to boot, Ctrl-c or F2 for a command-line or ESC to discard " -"edits and return to the GRUB menu." -msgstr "" -"Es permet l'ús d'una pantalla d'edició mínima semblant a l'Emacs. TAB llista " -"els completats. Premeu Ctrl+x o F10 per arrencar, Ctrl+c o F2 per una línia " -"d'ordres o ESC per descartar els canvis i tornar al menú del GRUB." - -#: grub-core/normal/menu_text.c:170 -#, c-format -msgid "Use the %C and %C keys to select which entry is highlighted." -msgstr "" -"Utilitzeu les tecles %C i %C per seleccionar quina entrada voleu realçar." - -#. TRANSLATORS: that's the list of binary unit prefixes. -#: grub-core/normal/misc.c:38 -msgid "B" -msgstr "B" - -#: grub-core/normal/misc.c:38 -msgid "KiB" -msgstr "KiB" - -#: grub-core/normal/misc.c:38 -msgid "MiB" -msgstr "MiB" - -#: grub-core/normal/misc.c:38 -msgid "GiB" -msgstr "GiB" - -#: grub-core/normal/misc.c:38 -msgid "TiB" -msgstr "TiB" - -#: grub-core/normal/misc.c:38 -msgid "PiB" -msgstr "PiB" - -#. TRANSLATORS: that's the list of binary unit prefixes. -#: grub-core/normal/misc.c:40 -msgid "K" -msgstr "K" - -#: grub-core/normal/misc.c:40 -msgid "M" -msgstr "M" - -#: grub-core/normal/misc.c:40 -msgid "G" -msgstr "G" - -#: grub-core/normal/misc.c:40 -msgid "T" -msgstr "T" - -#: grub-core/normal/misc.c:40 -msgid "P" -msgstr "P" - -#. TRANSLATORS: that's the list of binary unit prefixes. -#: grub-core/normal/misc.c:42 -msgid "B/s" -msgstr "B/s" - -#: grub-core/normal/misc.c:42 -msgid "KiB/s" -msgstr "KiB/s" - -#: grub-core/normal/misc.c:42 -msgid "MiB/s" -msgstr "MiB/s" - -#: grub-core/normal/misc.c:42 -msgid "GiB/s" -msgstr "GiB/s" - -#: grub-core/normal/misc.c:42 -msgid "TiB/s" -msgstr "TiB/s" - -#: grub-core/normal/misc.c:42 -msgid "PiB/s" -msgstr "PiB/s" - -#: grub-core/normal/misc.c:96 -#, c-format -msgid "Partition %s:" -msgstr "Partició %s:" - -#: grub-core/normal/misc.c:101 -#, c-format -msgid "Device %s:" -msgstr "Dispositiu %s:" - -#: grub-core/normal/misc.c:107 -msgid "Filesystem cannot be accessed" -msgstr "No es pot accedir al sistema de fitxers." - -#: grub-core/normal/misc.c:121 -#, c-format -msgid "Filesystem type %s" -msgstr "Tipus de sistema de fitxers %s" - -#: grub-core/normal/misc.c:131 -#, c-format -msgid "- Label `%s'" -msgstr "- Etiqueta «%s»" - -#. TRANSLATORS: Arguments are year, month, day, hour, minute, -#. second, day of the week (translated). -#: grub-core/normal/misc.c:148 -#, c-format -msgid "- Last modification time %d-%02d-%02d %02d:%02d:%02d %s" -msgstr "- Hora de la darrera modificació %d-%02d-%02d %02d:%02d:%02d %s" - -#: grub-core/normal/misc.c:171 -msgid "No known filesystem detected" -msgstr "No s'ha detectat cap sistema de fitxers conegut" - -#: grub-core/normal/misc.c:174 -#, c-format -msgid " - Partition start at %llu%sKiB" -msgstr " - La partició comença a %llu%sKiB" - -#: grub-core/normal/misc.c:178 -#, c-format -msgid " - Sector size %uB" -msgstr "- Mida del sector %uB" - -#: grub-core/normal/misc.c:180 -msgid " - Total size unknown" -msgstr " - Mida total desconeguda" - -#: grub-core/normal/misc.c:182 -#, c-format -msgid " - Total size %llu%sKiB" -msgstr " - Mida total %llu%sKiB sectors" - -#. TRANSLATORS: Replace dot with appropriate decimal separator for -#. your language. -#: grub-core/normal/misc.c:186 -msgid ".5" -msgstr ".5" - -#. TRANSLATORS: This has to fit on one line. It's ok to include few -#. words but don't write poems. -#: grub-core/normal/term.c:82 -msgid "--MORE--" -msgstr "--MÉS--" - -#: grub-core/osdep/aros/config.c:92 grub-core/osdep/unix/config.c:137 -#: grub-core/osdep/windows/config.c:55 -#, c-format -msgid "cannot open configuration file `%s': %s" -msgstr "no es pot obrir el fitxer de configuració «%s»: %s" - -#: grub-core/osdep/basic/compress.c:8 grub-core/osdep/basic/compress.c:14 -#: grub-core/osdep/basic/compress.c:20 -msgid "no compression is available for your platform" -msgstr "No es pot comprimir en la vostra plataforma" - -#: grub-core/osdep/basic/no_platform.c:30 -#: grub-core/osdep/windows/platform.c:418 -msgid "no IEEE1275 routines are available for your platform" -msgstr "la vostra plataforma no disposa de rutines IEEE1275" - -#: grub-core/osdep/basic/no_platform.c:38 -msgid "no EFI routines are available for your platform" -msgstr "la vostra plataforma no disposa de rutines EFI" - -#: grub-core/osdep/basic/no_platform.c:45 -#: grub-core/osdep/windows/platform.c:425 -msgid "no SGI routines are available for your platform" -msgstr "la vostra plataforma no disposa de rutines SGI" - -#. TRANSLATORS: The OS itself may very well have a random -#. number generator but GRUB doesn't know how to access it. -#: grub-core/osdep/basic/random.c:42 -msgid "no random number generator is available for your OS" -msgstr "el vostre SO no disposa de generador de números aleatoris" - -#: grub-core/osdep/devmapper/getroot.c:81 -msgid "Failed to create `device-mapper' tree" -msgstr "No s'ha pogut crear l'arbre «device-mapper»" - -#: grub-core/osdep/devmapper/getroot.c:197 -#: grub-core/osdep/freebsd/getroot.c:202 -#, c-format -msgid "can't mount encrypted volume `%s': %s" -msgstr "no s'ha pogut muntar el volum xifrat «%s»: %s" - -#. TRANSLATORS: geom is the name of (k)FreeBSD device framework. -#. Usually left untranslated. -#. -#: grub-core/osdep/freebsd/getroot.c:82 grub-core/osdep/freebsd/getroot.c:164 -#: grub-core/osdep/freebsd/getroot.c:258 grub-core/osdep/freebsd/getroot.c:316 -msgid "couldn't open geom" -msgstr "no s'ha pogut obrir geom" - -#: grub-core/osdep/freebsd/getroot.c:182 grub-core/osdep/freebsd/getroot.c:277 -msgid "couldn't find geli consumer" -msgstr "no s'ha pogut trobar el consumidor de geli" - -#: grub-core/osdep/freebsd/getroot.c:282 -msgid "couldn't retrieve geli UUID" -msgstr "no s'ha pogut obtenir l'UUID del geli" - -#. TRANSLATORS: geom is the name of (k)FreeBSD device framework. -#. Usually left untranslated. "part" is the identifier of one of its -#. classes. -#: grub-core/osdep/freebsd/getroot.c:325 -msgid "couldn't find geom `part' class" -msgstr "no s'ha trobat la classe «part» de geom" - -#: grub-core/osdep/freebsd/hostdisk.c:72 grub-core/osdep/linux/hostdisk.c:93 -msgid "unaligned device size" -msgstr "la mida del dispositiu no està alineada" - -#: grub-core/osdep/generic/blocklist.c:56 -#, c-format -msgid "attempting to read the core image `%s' from GRUB" -msgstr "s'està intentant llegir la imatge del nucli «%s» des del GRUB" - -#: grub-core/osdep/generic/blocklist.c:57 -#, c-format -msgid "attempting to read the core image `%s' from GRUB again" -msgstr "" -"sestà intentant llegir la imatge del nucli «%s» des del GRUB un altre cop" - -#: grub-core/osdep/generic/blocklist.c:115 -#, c-format -msgid "cannot read `%s' correctly" -msgstr "no es pot llegir «%s» correctament" - -#: grub-core/osdep/generic/blocklist.c:126 -msgid "failed to read the sectors of the core image" -msgstr "no s'ha pogut llegir els sectors de la imatge del nucli" - -#. TRANSLATORS: On GNU/Hurd, a "translator" is similar to a filesystem -#. mount, but handled by a userland daemon, whose invocation command line -#. is being fetched here. First %s is the file being looked at (for which -#. we are fetching the "translator" command line), second %s is the error -#. message. -#. -#: grub-core/osdep/hurd/getroot.c:79 -#, c-format -msgid "cannot get translator command line for path `%s': %s" -msgstr "" -"no es pot obtenir una línia de comandes del traductor amb el camí «%s»: %s" - -#: grub-core/osdep/hurd/getroot.c:82 -#, c-format -msgid "translator command line is empty for path `%s'" -msgstr "la línia de comandes del traductor pel camí «%s» està buida" - -#. TRANSLATORS: we expect to get something like -#. /hurd/foobar --option1 --option2=baz /dev/something -#. -#: grub-core/osdep/hurd/getroot.c:98 -#, c-format -msgid "" -"translator `%s' for path `%s' has several non-option words, at least `%s' " -"and `%s'" -msgstr "" -"el traductor «%s» pel camí «%s» conté diverses paraules que no són opcions, " -"com a mínim «%s» i «%s»" - -#. TRANSLATORS: we expect to get something like -#. /hurd/foobar --option1 --option2=baz /dev/something -#. -#: grub-core/osdep/hurd/getroot.c:109 -#, c-format -msgid "" -"translator `%s' for path `%s' is given only options, cannot find device part" -msgstr "" -"el traductor «%s» pel camí «%s» només te opcions. No es pot trobar la part " -"del dispositiu" - -#: grub-core/osdep/hurd/hostdisk.c:73 -#, c-format -msgid "Storage information for `%s' does not include type" -msgstr "La informació d'emmagatzemament de «%s» no inclou el tipus" - -#: grub-core/osdep/hurd/hostdisk.c:75 -#, c-format -msgid "`%s' is not a local disk" -msgstr "«%s» no és un disc local" - -#: grub-core/osdep/hurd/hostdisk.c:78 -#, c-format -msgid "" -"Storage information for `%s' indicates neither a plain partition nor a plain " -"disk" -msgstr "" -"La informació d'emmagatzemament de «%s» no indica ni una partició senzilla " -"ni un disc senzill" - -#: grub-core/osdep/linux/blocklist.c:81 grub-core/osdep/linux/blocklist.c:96 -#: grub-core/osdep/linux/blocklist.c:122 -#, c-format -msgid "can't retrieve blocklists: %s" -msgstr "no es poden recuperar les llistes de blocs: %s" - -#: grub-core/osdep/linux/blocklist.c:84 -msgid "blocksize is not divisible by 512" -msgstr "la mida del bloc no és divisible per 512" - -#: grub-core/osdep/linux/blocklist.c:86 -msgid "invalid zero blocksize" -msgstr "la mida del bloc zero no és vàlida" - -#: grub-core/osdep/linux/blocklist.c:90 util/setup.c:744 -msgid "can't retrieve blocklists" -msgstr "no es poden recuperar les llistes de blocs" - -#: grub-core/osdep/linux/getroot.c:154 -#, c-format -msgid "ioctl RAID_VERSION error: %s" -msgstr "error del ioctl RAID_VERSION: %s" - -#: grub-core/osdep/linux/getroot.c:160 grub-core/osdep/linux/getroot.c:164 -#, c-format -msgid "unsupported RAID version: %d.%d" -msgstr "no és compatible amb la versió del RAID: %d.%d" - -#: grub-core/osdep/linux/getroot.c:169 -#, c-format -msgid "ioctl GET_ARRAY_INFO error: %s" -msgstr "error del ioctl GET_ARRAY_INFO: %s" - -#: grub-core/osdep/linux/getroot.c:178 -#, c-format -msgid "ioctl GET_DISK_INFO error: %s" -msgstr "error del ioctl GET_DISK_INFO: %s" - -#: grub-core/osdep/linux/getroot.c:608 grub-core/osdep/linux/getroot.c:678 -#: grub-core/osdep/linux/hostdisk.c:126 grub-core/osdep/unix/getroot.c:253 -#: grub-core/osdep/unix/getroot.c:642 grub-core/osdep/unix/platform.c:92 -#: grub-core/osdep/unix/platform.c:100 -#, c-format -msgid "Unable to open stream from %s: %s" -msgstr "No es pot obrir el flux de dades de %s: %s" - -#: grub-core/osdep/linux/getroot.c:1033 -#, c-format -msgid "unknown kind of RAID device `%s'" -msgstr "el tipus de dispositiu RAID «%s» és desconegut" - -#: grub-core/osdep/linux/ofpath.c:181 -#, c-format -msgid "`obppath' not found in parent dirs of `%s', no IEEE1275 name discovery" -msgstr "" -"no s'ha trobat «obppath» al directori de nivell superior de «%s», no s'ha " -"trobat un nom IEEE1275" - -#: grub-core/osdep/linux/ofpath.c:222 grub-core/osdep/unix/getroot.c:505 -#: grub-core/osdep/unix/getroot.c:529 grub-core/osdep/unix/relpath.c:49 -#: util/grub-install.c:984 util/grub-install.c:1331 util/grub-probe.c:323 -#, c-format -msgid "failed to get canonical path of `%s'" -msgstr "no s'ha pogut aconseguir el camí canònic de «%s»" - -#: grub-core/osdep/linux/ofpath.c:740 -#, c-format -msgid "unknown device type %s" -msgstr "el tipus de dispositiu %s és desconegut" - -#: grub-core/osdep/linux/ofpath.c:758 util/ieee1275/grub-ofpathname.c:39 -#, c-format -msgid "Usage: %s DEVICE\n" -msgstr "Ús: %s DISPOSITIU\n" - -#: grub-core/osdep/unix/exec.c:86 grub-core/osdep/unix/exec.c:172 -#: grub-core/osdep/unix/exec.c:217 -#, c-format -msgid "Unable to fork: %s" -msgstr "No s'ha pogut bifurcar: %s" - -#: grub-core/osdep/unix/exec.c:166 grub-core/osdep/unix/exec.c:211 -#, c-format -msgid "Unable to create pipe: %s" -msgstr "No s'ha pogut crear el conducte: %s" - -#: grub-core/osdep/unix/getroot.c:370 -#, fuzzy -msgid "cannot save the original directory" -msgstr "no es pot restaurar el directori original" - -#: grub-core/osdep/unix/getroot.c:423 grub-core/osdep/unix/getroot.c:480 -#: grub-core/osdep/unix/getroot.c:489 -msgid "cannot restore the original directory" -msgstr "no es pot restaurar el directori original" - -#. TRANSLATORS: "stat" comes from the name of POSIX function. -#: grub-core/osdep/unix/getroot.c:551 grub-core/osdep/unix/hostdisk.c:61 -#: grub-core/osdep/unix/relpath.c:73 grub-core/osdep/unix/relpath.c:97 -#: util/getroot.c:160 util/getroot.c:162 util/grub-install.c:774 -#: util/grub-macbless.c:70 -#, c-format -msgid "cannot stat `%s': %s" -msgstr "no es pot executar «stat» sobre «%s»: %s" - -#: grub-core/osdep/unix/hostdisk.c:293 -#, c-format -msgid "cannot make temporary file: %s" -msgstr "no es pot crear el fitxer temporal: %s" - -#: grub-core/osdep/unix/hostdisk.c:311 -#, c-format -msgid "cannot make temporary directory: %s" -msgstr "no es pot crear el directori temporal: %s" - -#: grub-core/osdep/unix/platform.c:77 -#, c-format -msgid "" -"couldn't find IEEE1275 device path for %s.\n" -"You will have to set `boot-device' variable manually" -msgstr "" -"No s'ha pogut trobar el camí de dispositius IEEE1275 de %s.\n" -" Heu d'establir manualment la variable «boot-device»" - -#. TRANSLATORS: This message is shown when required executable `%s' -#. isn't found. -#: grub-core/osdep/unix/platform.c:149 grub-core/osdep/unix/platform.c:189 -#, c-format -msgid "%s: not found" -msgstr "%s: No s'ha trobat" - -#: grub-core/osdep/unix/platform.c:225 -#, c-format -msgid "" -"`nvsetenv' failed. \n" -"You will have to set `boot-device' variable manually. At the IEEE1275 " -"prompt, type:\n" -" %s\n" -msgstr "" -"«nvsetenv» ha fallat.\n" -"Heu d'establir manualment la variable «boot-device». A l'indicador de " -"IEEE1275, escriviu:\n" -" %s\n" - -#: grub-core/osdep/unix/platform.c:240 -msgid "You will have to set `SystemPartition' and `OSLoader' manually." -msgstr "" -"Heu d'establir manualment les variables «SystemPartition» i «OSLoader»." - -#. TRANSLATORS: canonical pathname is the -#. complete one e.g. /etc/fstab. It has -#. to contain `/' normally, if it doesn't -#. we're in trouble and throw this error. -#: grub-core/osdep/unix/relpath.c:90 -msgid "no `/' in canonical filename" -msgstr "no hi ha cap «/» al nom de fitxer canònic" - -#: grub-core/osdep/windows/hostdisk.c:151 -msgid "cygwin_conv_path() failed" -msgstr "ha fallat cygwin_conv_path()" - -#: grub-core/osdep/windows/hostdisk.c:501 util/grub-install.c:570 -msgid "couldn't retrieve random data" -msgstr "no s'ha pogut obtenir dades aleatòries" - -#: grub-core/osdep/windows/platform.c:97 -msgid "Insufficient privileges to access firmware, assuming BIOS" -msgstr "" -"No es disposa de prou permisos per accedir al microprogramari, es fa servir " -"la BIOS" - -#: grub-core/osdep/windows/platform.c:225 -msgid "no EFI routines are available when running in BIOS mode" -msgstr "quan es fa servir el mode BIOS no es disposa de rutines EFI" - -#: grub-core/osdep/windows/platform.c:240 -msgid "unexpected EFI error" -msgstr "final de l'EFI inesperat" - -#: grub-core/osdep/windows/platform.c:315 -msgid "Couldn't find a free BootNNNN slot" -msgstr "No s'ha pogut trobar una ranura BootNNNN lliure" - -#: grub-core/partmap/gpt.c:191 -msgid "" -"this GPT partition label contains no BIOS Boot Partition; embedding won't be " -"possible" -msgstr "" -"aquesta etiqueta de partició GPT no té cap partició d'arrencada per a la " -"BIOS; no es podrà incrustar" - -#: grub-core/partmap/gpt.c:196 -msgid "your BIOS Boot Partition is too small; embedding won't be possible" -msgstr "" -"Aquesta etiqueta de partició GPT és massa petita; no es podrà incrustar!" - -#. TRANSLATORS: MBR gap and boot track is the same thing and is the space -#. between MBR and first partitition. If your language translates well only -#. "boot track", you can just use it everywhere. Next two messages are about -#. RAID controllers/software bugs which GRUB has to live with. Please spread -#. the message that these are bugs in other software and not merely -#. suboptimal behaviour. -#: grub-core/partmap/msdos.c:51 -#, c-format -msgid "" -"Sector %llu is already in use by raid controller `%s'; avoiding it. Please " -"ask the manufacturer not to store data in MBR gap" -msgstr "" -"El sector %llu ja l'està utilitzant el controlador de raid «%s»; eviteu-lo. " -"Demaneu al fabricant que no desi dades a l'espai del MRB" - -#: grub-core/partmap/msdos.c:54 -#, c-format -msgid "" -"Sector %llu is already in use by the program `%s'; avoiding it. This " -"software may cause boot or other problems in future. Please ask its authors " -"not to store data in the boot track" -msgstr "" -"El sector %llu ja l'està utilitzant el programa «%s»; eviteu-lo. Aquest " -"programa pot causar problemes d'arrencada o d'altres en un futur. Demaneu " -"als autors que no desin dades al sector d'arrencada" - -#: grub-core/partmap/msdos.c:384 -msgid "" -"other software is using the embedding area, and there is not enough room for " -"core.img. Such software is often trying to store data in a way that avoids " -"detection. We recommend you investigate" -msgstr "" -"algun altre programa està fent servir l'àrea incrustada, i no hi ha prou " -"espai per al core.img. Aquests programes sovint proven d'emmagatzemar dades " -"de manera que no permeten la detecció. Us recomanem que ho investigueu" - -#: grub-core/partmap/msdos.c:395 -msgid "" -"this msdos-style partition label has no post-MBR gap; embedding won't be " -"possible" -msgstr "" -"aquesta etiqueta de partició d'estil msdos no té espai després del MBR; no " -"es podrà incrustar" - -#: grub-core/partmap/msdos.c:404 -msgid "your embedding area is unusually small. core.img won't fit in it." -msgstr "" -"la vostra àrea d'incrustació és petita. El fitxer core.img no hi cabrà." - -#: grub-core/parttool/msdospart.c:39 -msgid "Make partition active" -msgstr "activa la partició" - -#: grub-core/parttool/msdospart.c:51 -msgid "not a primary partition" -msgstr "no és una clau primària" - -#: grub-core/parttool/msdospart.c:69 -#, c-format -msgid "Partition %d is active now. \n" -msgstr "la partició %d està activa. \n" - -#: grub-core/parttool/msdospart.c:74 -#, c-format -msgid "Cleared active flag on %d. \n" -msgstr "S'ha netejat l'indicador d'actiu a %d. \n" - -#: grub-core/parttool/msdospart.c:87 -msgid "Change partition type" -msgstr "Canvia el tipus de partició" - -#: grub-core/parttool/msdospart.c:88 -msgid "Set `hidden' flag in partition type" -msgstr "Activa l'indicador «oculta» al tipus de partició" - -#: grub-core/parttool/msdospart.c:130 -#, c-format -msgid "the partition type 0x%x isn't valid" -msgstr "el tipus de partició 0x%x no és vàlid" - -#. TRANSLATORS: In this case we're actually writing to the disk and actively -#. modifying partition type rather than just defining it. -#: grub-core/parttool/msdospart.c:137 -#, c-format -msgid "Setting partition type to 0x%x\n" -msgstr "S'estableix el tipus de partició a 0x%x\n" - -#. TRANSLATORS: 0 is a quantifier. "break" (similar to bash) -#. can be used e.g. to break 3 loops at once. -#. But asking it to break 0 loops makes no sense. -#: grub-core/script/execute.c:143 -msgid "can't break 0 loops" -msgstr "no es pot sortir de 0 bucles" - -#. TRANSLATORS: It's about not being -#. inside a function. "return" can be used only -#. in a function and this error occurs if it's used -#. anywhere else. -#: grub-core/script/execute.c:227 -msgid "not in function body" -msgstr "no és el cos d'una funció" - -#: grub-core/script/execute.c:371 -#, c-format -msgid "invalid variable name `%s'" -msgstr "el nom de la variable «%s» no és vàlid" - -#: grub-core/script/execute.c:953 -msgid "cannot allocate command buffer" -msgstr "" - -#: grub-core/script/lexer.c:144 util/grub-fstest.c:330 -msgid "unexpected end of file" -msgstr "final del fitxer inesperat" - -#: grub-core/script/main.c:55 grub-core/script/main.c:57 -#: grub-core/script/main.c:59 grub-core/script/main.c:67 -msgid "[NUM]" -msgstr "[NÚMERO]" - -#: grub-core/script/main.c:55 -msgid "Exit from loops" -msgstr "Surt dels bucles" - -#: grub-core/script/main.c:57 -msgid "Continue loops" -msgstr "Continua els bucles" - -#. TRANSLATORS: Positional arguments are -#. arguments $0, $1, $2, ... -#: grub-core/script/main.c:62 -msgid "Shift positional parameters." -msgstr "Desplaça els paràmetres de posició." - -#: grub-core/script/main.c:64 -msgid "[VALUE]..." -msgstr "[VALOR]..." - -#: grub-core/script/main.c:65 -msgid "Set positional parameters." -msgstr "Estableix els paràmetres de posició." - -#. TRANSLATORS: It's a command description -#. and "Return" is a verb, not a noun. The -#. command in question is "return" and -#. has exactly the same semanics as bash -#. equivalent. -#: grub-core/script/main.c:73 -msgid "Return from a function." -msgstr "Torna d'una funció." - -#: grub-core/term/gfxterm_background.c:176 -msgid "[-m (stretch|normal)] FILE" -msgstr "[-m (amplia|normal)] FITXER" - -#: grub-core/term/gfxterm_background.c:177 -msgid "Load background image for active terminal." -msgstr "Carrega una imatge de fons al terminal actiu." - -#: grub-core/term/gfxterm_background.c:182 util/grub-install.c:302 -#: util/grub-install.c:303 util/grub-mkrescue.c:107 util/grub-mkrescue.c:108 -#: util/grub-render-label.c:61 util/grub-render-label.c:63 -msgid "COLOR" -msgstr "COLOR" - -#: grub-core/term/gfxterm_background.c:183 -msgid "Set background color for active terminal." -msgstr "Estableix el color de fons per al terminal actiu" - -#: grub-core/term/i386/coreboot/cbmemc.c:139 -msgid "Show CBMEM console content." -msgstr "Mostra el contingut del terminal CBMEM." - -#: grub-core/term/serial.c:57 -msgid "Set the serial unit." -msgstr "Indica la unitat sèrie." - -#: grub-core/term/serial.c:58 -msgid "Set the serial port address." -msgstr "Indica l'adreça del port sèrie." - -#: grub-core/term/serial.c:59 -msgid "Set the serial port speed." -msgstr "Indica la velocitat del port sèrie." - -#: grub-core/term/serial.c:60 -msgid "Set the serial port word length." -msgstr "Indica la longitud de paraula del port sèrie." - -#: grub-core/term/serial.c:61 -msgid "Set the serial port parity." -msgstr "Indica la paritat del port sèrie." - -#: grub-core/term/serial.c:62 -msgid "Set the serial port stop bits." -msgstr "Indica el nombre de bits d'aturada del port sèrie." - -#: grub-core/term/serial.c:63 -msgid "Set the base frequency." -msgstr "Indica la freqüència base." - -#: grub-core/term/serial.c:64 -msgid "Enable/disable RTS/CTS." -msgstr "Habilita/deshabilita RTS/CTS." - -#: grub-core/term/serial.c:218 -#, c-format -msgid "serial port `%s' isn't found" -msgstr "no s'ha trobat el port sèrie «%s»" - -#: grub-core/term/serial.c:254 -msgid "unsupported serial port flow control" -msgstr "el control de flux del port sèrie no està implementat" - -#: grub-core/term/serial.c:429 -msgid "[OPTIONS...]" -msgstr "[OPCIONS]" - -#: grub-core/term/serial.c:430 -msgid "Configure serial port." -msgstr "Configura el port sèrie." - -#: grub-core/term/terminfo.c:184 -#, c-format -msgid "unknown terminfo type `%s'" -msgstr "el tipus de terminfo «%s» és desconegut" - -#: grub-core/term/terminfo.c:668 -msgid "ASCII" -msgstr "ASCII" - -#: grub-core/term/terminfo.c:671 -msgid "UTF-8" -msgstr "UTF-8" - -#. TRANSLATORS: visually ordered UTF-8 is a non-compliant encoding -#. based on UTF-8 with right-to-left languages written in reverse. -#. Used on some terminals. Normal UTF-8 is refered as -#. "logically-ordered UTF-8" by opposition. -#: grub-core/term/terminfo.c:677 -msgid "visually-ordered UTF-8" -msgstr "ordenat visualment en UTF-8." - -#: grub-core/term/terminfo.c:680 -msgid "Unknown encoding" -msgstr "Codificació desconeguda" - -#: grub-core/term/terminfo.c:684 -msgid "Current terminfo types:" -msgstr "tipus de terminfo actuals:" - -#: grub-core/term/terminfo.c:699 -msgid "Terminal is ASCII-only [default]." -msgstr "El terminal és només ASCII [per defecte]." - -#: grub-core/term/terminfo.c:700 -msgid "Terminal is logical-ordered UTF-8." -msgstr "El terminal està ordenat lògicament en UTF-8." - -#: grub-core/term/terminfo.c:701 -msgid "Terminal is visually-ordered UTF-8." -msgstr "El Terminal està ordenat visualment en UTF-8." - -#: grub-core/term/terminfo.c:703 -msgid "Terminal has specified geometry." -msgstr "El terminal té una geometria específica." - -#. TRANSLATORS: "x" has to be entered in, like an identifier, so please don't -#. use better Unicode codepoints. -#: grub-core/term/terminfo.c:706 -msgid "WIDTHxHEIGHT." -msgstr "AMPLADAxALÇADA" - -#: grub-core/term/terminfo.c:746 -msgid "incorrect terminal dimensions specification" -msgstr "l'especificació de les dimensions del terminal no són correctes" - -#: grub-core/term/terminfo.c:776 -#, c-format -msgid "terminal %s isn't found or it's not handled by terminfo" -msgstr "no s'ha trobat el terminal %s o no és gestionat per terminfo" - -#: grub-core/term/terminfo.c:785 -msgid "[[-a|-u|-v] [-g WxH] TERM [TYPE]]" -msgstr "[[-a|-u|-v] [-g AMPLExALT] TERM [TIPUS]]" - -#: grub-core/term/terminfo.c:786 -msgid "Set terminfo type of TERM to TYPE.\n" -msgstr "Assigna el tipus de terminfo de TERM a TIPUS.\n" - -#. TRANSLATORS: this is the BLOCK-argument, not -#. environment block. -#: grub-core/tests/test_blockarg.c:49 -msgid "Print and execute block argument." -msgstr "Mostra i executa el bloc d'arguments." - -#. TRANSLATORS: We're speaking about bitmap images like -#. JPEG or PNG. -#: grub-core/video/bitmap.c:209 -#, c-format -msgid "bitmap file `%s' is of unsupported format" -msgstr "el fitxer de mapa de bits «%s» té un format que no és permès" - -#: grub-core/video/i386/pc/vbe.c:1191 -#, c-format -msgid " VBE info: version: %d.%d OEM software rev: %d.%d\n" -msgstr " informació de la VBE: versió: %d.%d rev del programa OEM: %d.%d\n" - -#: grub-core/video/i386/pc/vbe.c:1198 -#, c-format -msgid " total memory: %d KiB\n" -msgstr " memòria toal: %d KiB\n" - -#: grub-core/video/video.c:596 grub-core/video/video.c:762 -msgid "no suitable video mode found" -msgstr "no s'ha trobat cap mode de vídeo disponible" - -#: include/grub/crypto.h:403 -msgid "access denied" -msgstr "s'ha denegat l'accés" - -#: include/grub/util/install.h:30 include/grub/util/install.h:35 -msgid "MODULES" -msgstr "MÃ’DULS" - -#: include/grub/util/install.h:31 -msgid "pre-load specified modules MODULES" -msgstr "pre-carrega els MÃ’DULS especificats" - -#: include/grub/util/install.h:33 -msgid "embed a specific DTB" -msgstr "" - -#: include/grub/util/install.h:36 -msgid "install only MODULES and their dependencies [default=all]" -msgstr "només instal·la els MÃ’DULS i les seves dependències [per defecte=tot]" - -#: include/grub/util/install.h:37 -msgid "THEMES" -msgstr "THEMES" - -#: include/grub/util/install.h:38 -#, c-format -msgid "install THEMES [default=%s]" -msgstr "instal·la els TEMES [per defecte=%s]" - -#: include/grub/util/install.h:39 -msgid "FONTS" -msgstr "FONTS" - -#: include/grub/util/install.h:40 -#, c-format -msgid "install FONTS [default=%s]" -msgstr "instal·la les FONTS [per defecte=%s]" - -#: include/grub/util/install.h:41 -msgid "LOCALES" -msgstr "LOCALES" - -#: include/grub/util/install.h:42 -msgid "install only LOCALES [default=all]" -msgstr "només instal·la la configuració LOCAL [per defecte=tot]" - -#: include/grub/util/install.h:45 -msgid "compress GRUB files [optional]" -msgstr "comprimeix els fitxers del GRUB [opcional]" - -#: include/grub/util/install.h:48 util/grub-mkimage.c:83 -msgid "choose the compression to use for core image" -msgstr "escolliu la compressió que s'ha de fer servir com a imatge del núcli" - -#. TRANSLATORS: platform here isn't identifier. It can be translated. -#: include/grub/util/install.h:51 include/grub/util/install.h:54 -#: util/grub-mkimage.c:66 -#, c-format -msgid "use images and modules under DIR [default=%s/]" -msgstr "" -"utilitza les imatges i els mòduls que hi han a DIR [per defecte=%s/" -"]" - -#: include/grub/util/install.h:57 -#, c-format -msgid "use translations under DIR [default=%s]" -msgstr "fa servir les traduccions que hi han a DIR [per defecte=%s]" - -#: include/grub/util/install.h:60 -#, c-format -msgid "use themes under DIR [default=%s]" -msgstr "fa servir els temes que hi han a DIR [per defecte=%s]" - -#: include/grub/util/install.h:65 util/grub-mkimage.c:78 -msgid "embed FILE as public key for signature checking" -msgstr "incrusta el FITXER com a clau públic per la comprovació de signatures" - -#: util/editenv.c:59 util/grub-editenv.c:201 util/grub-install-common.c:535 -#: util/grub-mkimage.c:315 util/setup.c:791 -#, fuzzy, c-format -msgid "cannot sync `%s': %s" -msgstr "no es pot executar «seek» sobre «%s»: %s" - -#: util/editenv.c:64 -#, c-format -msgid "cannot rename the file %s to %s" -msgstr "no es pot canviar el nom del fitxer %s per %s" - -#: util/getroot.c:402 -#, c-format -msgid "disk does not exist, so falling back to partition device %s" -msgstr "el disc no existeix, per tant es torna a la partició %s del dispositiu" - -#: util/grub-editenv.c:45 util/grub-fstest.c:506 -msgid "Commands:" -msgstr "Comandes:" - -#: util/grub-editenv.c:47 -msgid "Create a blank environment block file." -msgstr "Crea un fitxer de blocs d'entorn buit." - -#: util/grub-editenv.c:49 -msgid "List the current variables." -msgstr "Llista les variables actuals." - -#. TRANSLATORS: "set" is a keyword. It's a summary of "set" subcommand. -#: util/grub-editenv.c:51 -msgid "set [NAME=VALUE ...]" -msgstr "set [NOM=VALOR...]" - -#: util/grub-editenv.c:52 -msgid "Set variables." -msgstr "Estableix les variables." - -#. TRANSLATORS: "unset" is a keyword. It's a summary of "unset" subcommand. -#: util/grub-editenv.c:54 -msgid "unset [NAME ...]" -msgstr "unset [NOM ...]" - -#: util/grub-editenv.c:55 -msgid "Delete variables." -msgstr "Esborra les variables." - -#: util/grub-editenv.c:57 -msgid "Options:" -msgstr "Opcions:" - -#: util/grub-editenv.c:84 -msgid "You need to specify at least one command.\n" -msgstr "Heu d'especificar com a mínim una ordre.\n" - -#: util/grub-editenv.c:113 -msgid "FILENAME COMMAND" -msgstr "NOMFITXER ORDRE" - -#: util/grub-editenv.c:114 -msgid "Tool to edit environment block." -msgstr "Eina per editar el bloc d'entorn." - -#: util/grub-editenv.c:116 -#, c-format -msgid "" -"If FILENAME is `-', the default value %s is used.\n" -"\n" -"There is no `delete' command; if you want to delete the whole environment\n" -"block, use `rm %s'." -msgstr "" -"Si NOMFITXER és «-», es farà servir el valor per defecte %s.\n" -"\n" -"No hi ha comanda «delete»; si voleu esborrar el bloc d'entorn sencer,\n" -"feu servir «rm %s»." - -#: util/grub-editenv.c:162 -msgid "invalid environment block" -msgstr "el bloc d'entorn no és vàlid" - -#: util/grub-editenv.c:217 -#, c-format -msgid "invalid parameter %s" -msgstr "el paràmetre %s no és vàlid" - -#: util/grub-editenv.c:222 -msgid "environment block too small" -msgstr "el bloc de l'entorn és massa petit" - -#: util/grub-fstest.c:107 -#, c-format -msgid "disk read fails at offset %lld, length %lld" -msgstr "ha fallat la lectura del disc a l'òfset %lld, longitud %lld" - -#: util/grub-fstest.c:138 -#, c-format -msgid "invalid skip value %lld" -msgstr "valor %lld d'escapada no vàlid" - -#: util/grub-fstest.c:160 util/grub-fstest.c:246 -#, c-format -msgid "read error at offset %llu: %s" -msgstr "error de lectura a l'òfset %llu: %s" - -#: util/grub-fstest.c:210 -#, c-format -msgid "cannot open OS file `%s': %s" -msgstr "no es pot obrir el fitxer de SO «%s»: %s" - -#: util/grub-fstest.c:225 util/misc.c:126 -#, c-format -msgid "cannot write to the stdout: %s" -msgstr "no es pot escriure al stdout: %s" - -#: util/grub-fstest.c:259 -#, c-format -msgid "compare fail at offset %llu" -msgstr "ha fallat la comparació l'òfset %llu" - -#: util/grub-fstest.c:280 util/grub-fstest.c:314 -#, c-format -msgid "OS file %s open error: %s" -msgstr "s'ha produït un error en obrir el fitxer %s del SO: %s" - -#: util/grub-fstest.c:402 util/grub-mount.c:392 -#, c-format -msgid "`loopback' command fails: %s" -msgstr "ha fallat l'ordre «loopback»: %s" - -#: util/grub-fstest.c:413 util/grub-mount.c:402 -#, c-format -msgid "`cryptomount' command fails: %s" -msgstr "ha fallat l'ordre «cryptomount»: %s" - -#: util/grub-fstest.c:474 util/grub-fstest.c:478 -msgid "couldn't retrieve UUID" -msgstr "no s'ha pogut obtenir el UUID" - -#: util/grub-fstest.c:507 -msgid "ls PATH" -msgstr "ls CAMÃ" - -#: util/grub-fstest.c:507 -msgid "List files in PATH." -msgstr "Llista els fitxers a CAMÃ." - -#: util/grub-fstest.c:508 -msgid "cp FILE LOCAL" -msgstr "cp FITXER LOCAL" - -#: util/grub-fstest.c:508 -msgid "Copy FILE to local file LOCAL." -msgstr "Copia el FITXER al fitxer local LOCAL." - -#: util/grub-fstest.c:509 -msgid "cat FILE" -msgstr "cat FITXER" - -#: util/grub-fstest.c:509 -msgid "Copy FILE to standard output." -msgstr "copia el FITXER a la sortida estàndard." - -#: util/grub-fstest.c:510 -msgid "cmp FILE LOCAL" -msgstr "cmp FITXER LOCAL" - -#: util/grub-fstest.c:510 -msgid "Compare FILE with local file LOCAL." -msgstr "Compara el FITXER amb el fitxer local LOCAL." - -#: util/grub-fstest.c:511 -msgid "hex FILE" -msgstr "hex FITXER" - -#: util/grub-fstest.c:511 -msgid "Show contents of FILE in hex." -msgstr "Mostra el contingut de FITXER en hexadecimal." - -#: util/grub-fstest.c:512 -msgid "crc FILE" -msgstr "crc FITXER" - -#: util/grub-fstest.c:512 -msgid "Get crc32 checksum of FILE." -msgstr "Calcula la suma de verificació crc32 del FITXER." - -#: util/grub-fstest.c:513 -msgid "blocklist FILE" -msgstr "blocklist FITXER" - -#: util/grub-fstest.c:513 -msgid "Display blocklist of FILE." -msgstr "Mostra la llista de blocs del FITXER." - -#: util/grub-fstest.c:514 -msgid "xnu_uuid DEVICE" -msgstr "xnu_uuid DISPOSITIU" - -#: util/grub-fstest.c:514 -msgid "Compute XNU UUID of the device." -msgstr "Calcula el UUID de XNU del dispositiu." - -#. TRANSLATORS: bitmaps are images like e.g. in JPEG. -#: util/grub-fstest.c:517 util/grub-fstest.c:518 util/grub-fstest.c:519 -#: util/grub-mkfont.c:938 util/grub-mkfont.c:951 util/grub-mkfont.c:952 -#: util/grub-mkpasswd-pbkdf2.c:46 util/grub-mkpasswd-pbkdf2.c:47 -#: util/grub-mkpasswd-pbkdf2.c:48 -msgid "NUM" -msgstr "NÚMERO" - -#: util/grub-fstest.c:517 -msgid "Skip N bytes from output file." -msgstr "Salta N bytes del fitxer de sortida." - -#: util/grub-fstest.c:518 -msgid "Handle N bytes in output file." -msgstr "Tracta N bytes del fitxer de sortida." - -#: util/grub-fstest.c:519 -msgid "Specify the number of input files." -msgstr "Especifica el nombre de fitxers d'entrada." - -#: util/grub-fstest.c:520 util/grub-mount.c:453 -msgid "Set debug environment variable." -msgstr "Estableix la variable d'entorn de depuració." - -#: util/grub-fstest.c:521 util/grub-mount.c:454 -msgid "Mount crypto devices." -msgstr "Munta dispositius xifrats." - -#. TRANSLATORS: "prompt" is a keyword. -#: util/grub-fstest.c:524 util/grub-mount.c:457 -msgid "FILE|prompt" -msgstr "FITXER|prompt" - -#: util/grub-fstest.c:524 util/grub-mount.c:457 -msgid "Load zfs crypto key." -msgstr "Carrega la clau de xifrat zfs." - -#: util/grub-fstest.c:526 -msgid "Uncompress data." -msgstr "Descomprimeix les dades." - -#: util/grub-fstest.c:605 -msgid "Invalid disk count.\n" -msgstr "Compte de discs no vàlid.\n" - -#. TRANSLATORS: disk count is optional but if it's there it must -#. be before disk list. So please don't imply disk count as mandatory. -#. -#: util/grub-fstest.c:613 -msgid "Disk count must precede disks list.\n" -msgstr "El compte de discs ha de precedir al llistat de discs.\n" - -#: util/grub-fstest.c:633 -msgid "No command is specified.\n" -msgstr "No heu especificat cap ordre.\n" - -#: util/grub-fstest.c:638 -msgid "Not enough parameters to command.\n" -msgstr "A l'ordre li falten paràmetres.\n" - -#: util/grub-fstest.c:711 -#, c-format -msgid "Invalid command %s.\n" -msgstr "L'ordre %s no és vàlida.\n" - -#: util/grub-fstest.c:724 -msgid "IMAGE_PATH COMMANDS" -msgstr "CAMÃ_IMATGE COMANDES" - -#: util/grub-fstest.c:725 util/grub-mount.c:553 -msgid "Debug tool for filesystem driver." -msgstr "Eina de depuració pel controlador de sistemes de fitxers." - -#: util/grub-glue-efi.c:53 -msgid "set input filename for 32-bit part." -msgstr "estableix el nom del fitxer per la part de 32 bits." - -#: util/grub-glue-efi.c:55 -msgid "set input filename for 64-bit part." -msgstr "estableix el nom del fitxer per la part de 64 bits." - -#: util/grub-glue-efi.c:57 util/grub-mklayout.c:55 util/grub-render-label.c:71 -msgid "set output filename. Default is STDOUT" -msgstr "estableix el fitxer de sortida. Per defecte és STDOUT" - -#: util/grub-glue-efi.c:94 util/grub-mklayout.c:476 -#: util/grub-mkpasswd-pbkdf2.c:86 util/grub-render-label.c:131 -msgid "[OPTIONS]" -msgstr "[OPCIONS]" - -#: util/grub-glue-efi.c:95 -msgid "Glue 32-bit and 64-bit binary into Apple universal one." -msgstr "Uneix els binaris de 32 i 64 bits en un d'universal Apple." - -#: util/grub-glue-efi.c:116 -msgid "Missing input file\n" -msgstr "No s'ha trobat el fitxer d'entrada\n" - -#: util/grub-install-common.c:127 util/grub-install-common.c:151 -#, c-format -msgid "cannot copy `%s' to `%s': %s" -msgstr "no es pot copiar «%s» a «%s»: %s" - -#: util/grub-install-common.c:147 -#, c-format -msgid "can't compress `%s' to `%s'" -msgstr "no es pot comprimir «%s» a «%s»" - -#: util/grub-install-common.c:196 util/grub-install-common.c:552 -#: util/grub-install-common.c:579 util/grub-install-common.c:621 -#, c-format -msgid "cannot open directory `%s': %s" -msgstr "no es pot obrir el directori «%s»: %s" - -#: util/grub-install-common.c:212 -#, c-format -msgid "cannot delete `%s': %s" -msgstr "no es pot esborrar «%s»: %s" - -#: util/grub-install-common.c:324 util/grub-mkimage.c:209 -msgid "grub-mkimage is compiled without XZ support" -msgstr "el grub-mkimage no porta compilat la compatibilitat amb XZ" - -#: util/grub-install-common.c:332 util/grub-mkimage.c:217 -#, c-format -msgid "Unknown compression format %s" -msgstr "El format de compressió %s és desconegut" - -#: util/grub-install-common.c:400 -#, c-format -msgid "Unrecognized compression `%s'" -msgstr "No es reconeix la compressió «%s»" - -#: util/grub-install-common.c:509 -#, c-format -msgid "unknown target format %s" -msgstr "el format «%s» de l'objectiu és desconegut." - -#: util/grub-install-common.c:700 -#, c-format -msgid "cannot find locale `%s'" -msgstr "no s'ha pogut trobar la configuració local «%s»" - -#: util/grub-install-common.c:939 -#, c-format -msgid "%s doesn't exist. Please specify --target or --directory" -msgstr "No existeix %s. Especifiqueu --target o --directory" - -#: util/grub-install-common.c:948 util/grub-install-common.c:951 -#, c-format -msgid "invalid modinfo file `%s'" -msgstr "el fitxer modinfo «%s» no és vàlid" - -#: util/grub-install-common.c:966 -#, c-format -msgid "Unknown platform `%s-%s'" -msgstr "La plataforma «%s-%s» és desconeguda" - -#: util/grub-install.c:238 -msgid "More than one install device?" -msgstr "Hi ha més d'un dispositiu d'instal·lació?" - -#: util/grub-install.c:251 -#, c-format -msgid "" -"install GRUB images under the directory DIR/%s instead of the %s directory" -msgstr "" -"instal·la imatges de GRUB al directori DIR/%s en comptes del directori %s" - -#: util/grub-install.c:256 util/grub-probe.c:734 -msgid "TARGET" -msgstr "OBJECTIU" - -#. TRANSLATORS: "TARGET" as in "target platform". -#: util/grub-install.c:258 -#, c-format -msgid "install GRUB for TARGET platform [default=%s]; available targets: %s" -msgstr "" -"instal·la GRUB per la plataforma OBJECTIU [per defecte=%s]; objectius " -"vàlids: %s" - -#. TRANSLATORS: "may break" doesn't just mean that option wouldn't have any -#. effect but that it will make the resulting install unbootable from HDD. -#. TRANSLATORS: The potential breakage isn't limited to floppies but it's -#. likely to make the install unbootable from HDD. -#: util/grub-install.c:267 util/grub-setup.c:94 -msgid "" -"make the drive also bootable as floppy (default for fdX devices). May break " -"on some BIOSes." -msgstr "" -"fa que la unitat es pugui arrencar també com un disquet (per defecte per " -"dispositius fdX). Pot fallar en algunes BIOS." - -#: util/grub-install.c:270 -msgid "delete device map if it already exists" -msgstr "esborra el mapa de dispositius si existeix" - -#: util/grub-install.c:272 util/grub-setup.c:87 -msgid "install even if problems are detected" -msgstr "Instal·la encara que s'hagin detectat problemes" - -#: util/grub-install.c:274 -msgid "use identifier file even if UUID is available" -msgstr "" -"utilitza l'identificador de fitxers encara que estigui disponible l'UUID" - -#: util/grub-install.c:276 -msgid "" -"disk module to use (biosdisk or native). This option is only available on " -"BIOS target." -msgstr "" -"mòdul de disc que cal utilitzar (biodisk o nadiu). Aquesta opció només està " -"disponible per a BIOS." - -#: util/grub-install.c:279 -msgid "" -"don't update the `boot-device'/`Boot*' NVRAM variables. This option is only " -"available on EFI and IEEE1275 targets." -msgstr "" -"no actualitza les variables «boot-device»/«Boot» del NVRAM. Aquesta opció " -"només està disponible per a EFI i IEEE1275." - -#: util/grub-install.c:282 util/grub-setup.c:89 -msgid "do not probe for filesystems in DEVICE" -msgstr "no comprovis el sistema de fitxers del DISPOSITIU" - -#: util/grub-install.c:284 -msgid "do not install bootsector" -msgstr "no instal·la el sector d'arrancada" - -#: util/grub-install.c:286 util/grub-setup.c:96 -msgid "" -"Do not apply any reed-solomon codes when embedding core.img. This option is " -"only available on x86 BIOS targets." -msgstr "" -"No aplica cap codi reed-solomon quan incrusta el core-img. Aquesta opció " -"només està disponible per a BIOS x86." - -#: util/grub-install.c:293 -msgid "" -"the installation device is removable. This option is only available on EFI." -msgstr "" -"el dispositiu d'instal·lació és extraïble. Aquesta opció només està " -"disponible per a EFI." - -#: util/grub-install.c:295 -msgid "ID" -msgstr "ID" - -#: util/grub-install.c:296 -msgid "the ID of bootloader. This option is only available on EFI and Macs." -msgstr "" -"l'ID del carregador d'arrencada. Aquesta opció només està disponible per a " -"EFI i Macs." - -#: util/grub-install.c:298 -msgid "use DIR as the EFI System Partition root." -msgstr "utilitza el DIRECTORI com a partició arrel del sistema EFI." - -#: util/grub-install.c:300 -msgid "use DIR for PPC MAC install." -msgstr "fa servir el DIRECTORI com a instal·lador PPC MAC." - -#: util/grub-install.c:301 util/grub-mkrescue.c:106 -msgid "use FILE as font for label" -msgstr "utilitza el FITXER com a font per l'etiqueta" - -#: util/grub-install.c:302 util/grub-mkrescue.c:107 -msgid "use COLOR for label" -msgstr "fa servir el COLOR per les etiquetes" - -#: util/grub-install.c:303 util/grub-mkrescue.c:108 -msgid "use COLOR for label background" -msgstr "fa servir el COLOR com a fons de les etiquetes" - -#: util/grub-install.c:304 util/grub-mkrescue.c:110 -msgid "use STRING as product version" -msgstr "utilitza STRING com a versió del producte" - -#: util/grub-install.c:361 -msgid "[OPTION] [INSTALL_DEVICE]" -msgstr "[OPCIÓ] [DISPOSITIU_INSTAL·LACIÓ]" - -#: util/grub-install.c:362 -msgid "Install GRUB on your drive." -msgstr "Instal·la GRUB a la vostra unitat." - -#: util/grub-install.c:363 -#, c-format -msgid "" -"INSTALL_DEVICE must be system device filename.\n" -"%s copies GRUB images into %s. On some platforms, it may also install GRUB " -"into the boot sector." -msgstr "" -"DISPOSITIU_INSTAL·LACIÓ ha de ser el nom del fitxer d'un dispositiu de " -"sistema.\n" -"%s copia les imatges del GRUB a %s. A algunes plataformes, també instal·la " -"el GRUB al sector arrencada." - -#: util/grub-install.c:672 -#, c-format -msgid "the drive %s is defined multiple times in the device map %s" -msgstr "la unitat %s està definida més d'un cop al mapa de dispositius %s" - -#: util/grub-install.c:878 -msgid "Unable to determine your platform. Use --target." -msgstr "No s'ha pogut determinar la vostra plataforma. Utilitzeu --target." - -#: util/grub-install.c:891 -#, c-format -msgid "Installing for %s platform.\n" -msgstr "S'està instal·lant per la plataforma %s.\n" - -#: util/grub-install.c:939 -msgid "install device isn't specified" -msgstr "no s'ha especificat el dispositiu d'instal·lació" - -#: util/grub-install.c:1057 -msgid "cannot find EFI directory" -msgstr "no s'ha trobat el directori EFI" - -#: util/grub-install.c:1060 util/grub-install.c:1209 util/grub-install.c:1254 -#: util/grub-macbless.c:76 util/grub-probe.c:329 util/setup.c:316 -#, c-format -msgid "cannot find a device for %s (is /dev mounted?)" -msgstr "no s'ha pogut trobar cap dispositiu anomenat %s (/dev està muntat?)" - -#: util/grub-install.c:1069 util/grub-install.c:1217 util/grub-install.c:1270 -#: util/grub-install.c:1365 util/grub-macbless.c:80 util/grub-probe.c:372 -#, c-format -msgid "cannot find a GRUB drive for %s. Check your device.map" -msgstr "" -"no s'ha pogut trobar cap unitat de disc anomenada %s. Comproveu el mapa de " -"dispositius" - -#: util/grub-install.c:1087 -#, c-format -msgid "%s doesn't look like an EFI partition" -msgstr "%s no sembla una partició EFI" - -#: util/grub-install.c:1129 util/grub-install.c:1614 -msgid "You've found a bug" -msgstr "Heu trobat una errada" - -#: util/grub-install.c:1231 -#, c-format -msgid "filesystem on %s is neither HFS nor HFS+" -msgstr "el sistema de fitxers de %s no és ni HFS ni HFS+" - -#: util/grub-install.c:1299 -#, c-format -msgid "" -"attempt to install to encrypted disk without cryptodisk enabled. Set `%s' in " -"file `%s'" -msgstr "" -"S'intenta instal·lar en un disc xifrat sense el cryptodisk habilitat. " -"Indiqueu «%s» al fitxer «%s»" - -#: util/grub-install.c:1410 util/grub-install.c:1772 util/grub-install.c:1872 -#, c-format -msgid "Can't create file: %s" -msgstr "No es pot crear el fitxer: %s" - -#: util/grub-install.c:1491 -msgid "no hints available for your platform. Expect reduced performance" -msgstr "" -"no hi ha pistes disponibles per la vostra plataforma. És d'esperar un " -"rendiment reduït." - -#. TRANSLATORS: This is a prefix in the log to indicate that usually -#. a command would be executed but due to an option was skipped. -#: util/grub-install.c:1702 -msgid "NOT RUNNING: " -msgstr "NO S'EXECUTA:" - -#: util/grub-install.c:1806 -msgid "the chosen partition is not a PReP partition" -msgstr "la partició escollida no és una partició PReP" - -#: util/grub-install.c:1811 -msgid "failed to copy Grub to the PReP partition" -msgstr "ha fallat al copiar Grub a la partició PRep" - -#: util/grub-install.c:1816 -#, c-format -msgid "" -"the PReP partition is not empty. If you are sure you want to use it, run dd " -"to clear it: `%s'" -msgstr "" -"la partició PReP no està buida. Si esteu segur que la voleu utilitzar, " -"executeu dd per esborrar-la: «%s»" - -#: util/grub-install.c:1888 util/grub-install.c:1932 -#, c-format -msgid "efibootmgr failed to register the boot entry: %s" -msgstr "" - -#: util/grub-install.c:1916 -msgid "EFI bootloader id isn't specified." -msgstr "no s'ha especificat l'id del carregador d'arrencada EFI." - -#: util/grub-install.c:1950 -msgid "WARNING: no platform-specific install was performed" -msgstr "AVÃS: no s'ha realitzat cap instal·lació per una plataforma específica" - -#: util/grub-install.c:1957 -msgid "Installation finished. No error reported." -msgstr "Ha acabat la instal·lació. No s'ha reportat cap error." - -#: util/grub-macbless.c:101 -msgid "bless for x86-based macs" -msgstr "fa arrencable (bless) per macs basats en x86" - -#: util/grub-macbless.c:103 -msgid "bless for ppc-based macs" -msgstr "fa arrencable (bless) per macs basats en ppc" - -#: util/grub-macbless.c:136 util/grub-probe.c:823 -msgid "No path or device is specified.\n" -msgstr "No s'ha especificat cap camí ni cap dispositiu.\n" - -#: util/grub-macbless.c:157 -msgid "--ppc PATH|--x86 FILE" -msgstr "--ppc CAMÃ|--x86 FITXER" - -#: util/grub-macbless.c:158 -msgid "Mac-style bless on HFS or HFS+" -msgstr "fa servir el bless estil MAC en HFS o HFS+" - -#: util/grub-menulst2cfg.c:44 -#, c-format -msgid "Usage: %s [INFILE [OUTFILE]]\n" -msgstr "Ús: %s [FITXERENTRADA [FITXERSORTIDA]]\n" - -#: util/grub-mkfont.c:157 -#, c-format -msgid "Freetype Error %d loading glyph 0x%x for U+0x%x%s" -msgstr "" -"s'ha produït l'error %d del Freetype mentre es carregava 0x%x per U+0x%x%s" - -#. TRANSLATORS: These qualifiers are used for cursive typography, -#. mainly Arabic. Note that the terms refer to the visual position -#. and not logical order and if used in left-to-right script then -#. leftmost is initial but with right-to-left script like Arabic -#. rightmost is the initial. -#: util/grub-mkfont.c:165 -msgid " (medial)" -msgstr " (centrat)" - -#: util/grub-mkfont.c:166 -msgid " (leftmost)" -msgstr " (d'esquerra a dreta)" - -#: util/grub-mkfont.c:167 -msgid " (rightmost)" -msgstr " (de dreta a esquerra)" - -#: util/grub-mkfont.c:481 -#, c-format -msgid "Out of range substitution (%d, %d)\n" -msgstr "Substitució fora de rang (%d, %d)\n" - -#. TRANSLATORS: "lookup" is taken directly from font specifications -#. which are formulated as "Under condition X replace LOOKUP with -#. SUBSTITUITION". " -#: util/grub-mkfont.c:506 -#, c-format -msgid "Out of range lookup: %d\n" -msgstr "Cerca fora de rang: %d\n" - -#: util/grub-mkfont.c:514 -#, c-format -msgid "Unsupported substitution type: %d\n" -msgstr "No és compatible amb la substitució de tipus: %d\n" - -#: util/grub-mkfont.c:550 -#, c-format -msgid "Unsupported substitution specification: %d\n" -msgstr "No és compatible amb l'especificació de la substitució: %d\n" - -#: util/grub-mkfont.c:582 -#, c-format -msgid "Unsupported coverage specification: %d\n" -msgstr "No és compatible amb l'especificació de la cobertura: %d\n" - -#: util/grub-mkfont.c:622 -#, c-format -msgid "WARNING: unsupported font feature parameters: %x\n" -msgstr "AVÃS: no és compatible amb la característica de la font: %x\n" - -#: util/grub-mkfont.c:936 util/grub-mkrescue.c:98 util/grub-mkstandalone.c:48 -msgid "save output in FILE [required]" -msgstr "desa la sortida al FITXER [necessari]" - -#. TRANSLATORS: some font files may have multiple faces (fonts). -#. This option is used to chose among them, the first face being '0'. -#. Rarely used. -#: util/grub-mkfont.c:942 -msgid "select face index" -msgstr "selecciona l'índex de l'aspecte" - -#: util/grub-mkfont.c:943 -msgid "FROM-TO[,FROM-TO]" -msgstr "DESDE-FINS[,DESDE-FINS]" - -#. TRANSLATORS: It refers to the range of characters in font. -#: util/grub-mkfont.c:945 -msgid "set font range" -msgstr "estableix el rang de la font" - -#. TRANSLATORS: "family name" for font is just a generic name without suffix -#. like "Bold". -#: util/grub-mkfont.c:949 -msgid "set font family name" -msgstr "estableix la família de la font" - -#: util/grub-mkfont.c:950 -msgid "SIZE" -msgstr "MIDA" - -#: util/grub-mkfont.c:950 -msgid "set font size" -msgstr "estableix la mida de la font" - -#: util/grub-mkfont.c:951 -msgid "set font descent" -msgstr "estableix els descendents de la font." - -#: util/grub-mkfont.c:952 -msgid "set font ascent" -msgstr "estableix els ascendents de la font" - -#: util/grub-mkfont.c:953 -msgid "convert to bold font" -msgstr "converteix la font en negreta" - -#: util/grub-mkfont.c:954 -msgid "force autohint" -msgstr "força l'autohint" - -#: util/grub-mkfont.c:955 -msgid "disable hinting" -msgstr "deshabilita l'autohint" - -#. TRANSLATORS: some fonts contain bitmap rendering for -#. some sizes. This option forces rerendering even if -#. pre-rendered bitmap is available. -#. -#: util/grub-mkfont.c:961 -msgid "ignore bitmap strikes when loading" -msgstr "ignora els mapes de bits preformats quan carreguis" - -#. TRANSLATORS: It refers to the range of characters in font. -#: util/grub-mkfont.c:1059 util/grub-mkfont.c:1075 -msgid "invalid font range" -msgstr "el rang de la font no és vàlid" - -#: util/grub-mkfont.c:1151 -msgid "[OPTIONS] FONT_FILES" -msgstr "[OPCIONS] FITXERS_FONT" - -#: util/grub-mkfont.c:1152 -msgid "Convert common font file formats into PF2" -msgstr "Converteix els fitxers de fonts comunes al format PF2" - -#: util/grub-mkfont.c:1182 util/grub-mkrescue.c:483 -#: util/grub-mkstandalone.c:306 -msgid "output file must be specified" -msgstr "heu d'especificar un fitxer de sortida" - -#: util/grub-mkfont.c:1185 -msgid "FT_Init_FreeType fails" -msgstr "Ha fallat l'FT_Init_FreeType" - -#: util/grub-mkfont.c:1199 -#, c-format -msgid "can't open file %s, index %d: error %d" -msgstr "no s'ha pogut obrir el fitxer %s, índex %d: error %d" - -#: util/grub-mkfont.c:1229 -#, c-format -msgid "can't set %dx%d font size: Freetype error %d: %s" -msgstr "no es pot establir la font a la mida %dx%d: error %d del Freetype: %s" - -#: util/grub-mkimage.c:67 -msgid "set prefix directory" -msgstr "estableix el directori prefix" - -#. TRANSLATORS: "memdisk" here isn't an identifier, it can be translated. -#. "embed" is a verb (command description). " -#: util/grub-mkimage.c:71 -msgid "" -"embed FILE as a memdisk image\n" -"Implies `-p (memdisk)/boot/grub' and overrides any prefix supplied " -"previously, but the prefix itself can be overridden by later options" -msgstr "" -"incrusta el FITXER com una imatge memdisk\n" -"implica «-p (memdisk)/boot/grub» i sobreescriu qualsevol prefix que s'hagi " -"indicat abans, però aquest prefix pot ser sobreescrit per opcions posteriors." - -#: util/grub-mkimage.c:74 -#, fuzzy -msgid "embed FILE as a device tree (DTB)\n" -msgstr "incrusta el FITXER com una configuració prèvia" - -#: util/grub-mkimage.c:76 -msgid "embed FILE as an early config" -msgstr "incrusta el FITXER com una configuració prèvia" - -#. TRANSLATORS: NOTE is a name of segment. -#: util/grub-mkimage.c:80 -msgid "add NOTE segment for CHRP IEEE1275" -msgstr "afegeix el segment NOTA al CHRP IEEE1275" - -#: util/grub-mkimage.c:81 -msgid "output a generated image to FILE [default=stdout]" -msgstr "desa la imatge generada al FITXER [per defecte=stdout]" - -#: util/grub-mkimage.c:82 -msgid "FORMAT" -msgstr "FORMAT" - -#: util/grub-mkimage.c:100 util/grub-mkstandalone.c:62 -msgid "generate an image in FORMAT" -msgstr "genereu una imatge al FORMAT" - -#: util/grub-mkimage.c:101 util/grub-mkstandalone.c:63 -msgid "available formats:" -msgstr "formats disponibles:" - -#: util/grub-mkimage.c:152 util/grub-mkstandalone.c:96 -#, c-format -msgid "unknown target format %s\n" -msgstr "el format «%s» de l'objectiu és desconegut.\n" - -#: util/grub-mkimage.c:242 -msgid "[OPTION]... [MODULES]" -msgstr "[OPCIONS]...[MODULS]" - -#: util/grub-mkimage.c:243 -msgid "Make a bootable image of GRUB." -msgstr "Crea una imatge de GRUB que pot arrencar." - -#: util/grub-mkimage.c:273 util/grub-mkstandalone.c:309 -msgid "Target format not specified (use the -O option)." -msgstr "No s'ha especificat el format de l'objectiu (utilitzeu l'opció -O)." - -#: util/grub-mkimage.c:282 -msgid "Prefix not specified (use the -p option)." -msgstr "No s'ha especificat el prefix (utilitzeu l'opció -p)." - -#: util/grub-mkimage.c:318 util/setup.c:793 -#, fuzzy, c-format -msgid "cannot close `%s': %s" -msgstr "no es pot obrir «%s»: %s" - -#: util/grub-mkimagexx.c:2191 -#, c-format -msgid "" -"`%s' is miscompiled: its start address is 0x%llx instead of 0x%llx: ld.gold " -"bug?" -msgstr "" -"«%s» no està ben compilat: l'adreça inicial és 0x%llx en comptes de 0x%llx: " -"un error del ld.gold?" - -#: util/grub-mklayout.c:53 -msgid "set input filename. Default is STDIN" -msgstr "estableix el nom del fitxer d'entrada. Per defecte és STDIN" - -#. TRANSLATORS: scan identifier is keyboard key symbolic name. -#: util/grub-mklayout.c:307 -#, c-format -msgid "Unknown keyboard scan identifier %s\n" -msgstr "El símbol identificador de la tecla %s és desconegut\n" - -#. TRANSLATORS: scan code is keyboard key numeric identifier. -#: util/grub-mklayout.c:390 util/grub-mklayout.c:418 -#, c-format -msgid "Unknown keyboard scan code 0x%02x\n" -msgstr "El número identificador de la tecla 0x%02x és desconegut\n" - -#. TRANSLATORS: this error is triggered when input doesn't contain any -#. key descriptions. -#: util/grub-mklayout.c:438 -msgid "ERROR: no valid keyboard layout found. Check the input.\n" -msgstr "" -"ERROR: no s'ha trobat cap distribució de teclat vàlida. Comproveu " -"l'entrada.\n" - -#. TRANSLATORS: "one" is a shortcut for "keyboard layout". -#: util/grub-mklayout.c:478 -msgid "Generate GRUB keyboard layout from Linux console one." -msgstr "" -"Genera una distribució de teclat pel GRUB des de la de la consola de Linux" - -#: util/grub-mknetdir.c:47 -msgid "root directory of TFTP server" -msgstr "directori arrel o servidor TFTP" - -#: util/grub-mknetdir.c:49 -msgid "relative subdirectory on network server" -msgstr "subdirectori relatiu del servidor de xarxa" - -#: util/grub-mknetdir.c:88 -msgid "" -"Prepares GRUB network boot images at net_directory/subdir assuming " -"net_directory being TFTP root." -msgstr "" -"Prepara les imatges arrencables per xarxa al net_directory/subdir tenint en " -"compte que net_directory és l'arrel del TFTP." - -#: util/grub-mknetdir.c:146 -#, c-format -msgid "unsupported platform %s" -msgstr "no és compatible amb la plataforma %s" - -#. TRANSLATORS: First %s is replaced by platform name. Second one by filename. -#: util/grub-mknetdir.c:165 -#, c-format -msgid "" -"Netboot directory for %s created. Configure your DHCP server to point to %s\n" -msgstr "" -"s'ha creat el directori Netboot per %s. Configureu el vostre servidor de " -"DHCP de manera que apunti a %s\n" - -#: util/grub-mkpasswd-pbkdf2.c:46 -msgid "Number of PBKDF2 iterations" -msgstr "Nombre d'iteracions de la PBKDF2" - -#: util/grub-mkpasswd-pbkdf2.c:47 -msgid "Length of generated hash" -msgstr "Longitud del hash generat" - -#: util/grub-mkpasswd-pbkdf2.c:48 -msgid "Length of salt" -msgstr "Longitud de sal" - -#: util/grub-mkpasswd-pbkdf2.c:87 -msgid "Generate PBKDF2 password hash." -msgstr "Genera el hash PBKDF2 de la contrasenya." - -#: util/grub-mkpasswd-pbkdf2.c:144 util/grub-mkpasswd-pbkdf2.c:151 -msgid "failure to read password" -msgstr "no s'ha pogut llegir la contrasenya" - -#: util/grub-mkpasswd-pbkdf2.c:146 -msgid "Reenter password: " -msgstr "Torna a introduir la contrasenya: " - -#: util/grub-mkpasswd-pbkdf2.c:160 -msgid "passwords don't match" -msgstr "la contrasenya no coincideix" - -#: util/grub-mkpasswd-pbkdf2.c:169 -msgid "couldn't retrieve random data for salt" -msgstr "no s'ha pogut obtenir dades aleatòries de sal" - -#: util/grub-mkpasswd-pbkdf2.c:184 -#, c-format -msgid "cryptographic error number %d" -msgstr "error de xifrat número %d" - -#: util/grub-mkpasswd-pbkdf2.c:203 -#, c-format -msgid "PBKDF2 hash of your password is %s\n" -msgstr "el hash PBKDF2 de la vostra contrasenya és %s\n" - -#: util/grub-mkrelpath.c:67 -msgid "No path is specified.\n" -msgstr "No heu especificat cap camí.\n" - -#: util/grub-mkrelpath.c:78 -msgid "PATH" -msgstr "CAMÃ" - -#: util/grub-mkrelpath.c:79 -msgid "Transform a system filename into GRUB one." -msgstr "Transforma un nom de fitxer del sistema en un del GRUB." - -#: util/grub-mkrescue.c:100 -msgid "save ROM images in DIR [optional]" -msgstr "Desa les imatges de ROM al DIRECTORI [opcional]" - -#. TRANSLATORS: xorriso is a program for creating ISOs and burning CDs. -#: util/grub-mkrescue.c:103 -msgid "use FILE as xorriso [optional]" -msgstr "utilitza el FITXER com a xorriso [opcional]" - -#: util/grub-mkrescue.c:109 -msgid "use STRING as product name" -msgstr "fes servir la CADENA com un nom de producte" - -#: util/grub-mkrescue.c:111 -msgid "" -"enable sparc boot. Disables HFS+, APM, ARCS and boot as disk image for i386-" -"pc" -msgstr "" -"habilita l'arranc sparc. Deshabilita l'HFS+, l'APM, l'ARCS i arranca com una " -"imatge de disc per PC I386." - -#: util/grub-mkrescue.c:112 -msgid "" -"enable ARCS (big-endian mips machines, mostly SGI) boot. Disables HFS+, APM, " -"sparc64 and boot as disk image for i386-pc" -msgstr "" -"habilita l'arranc ARCS (màquines mips big-endian, sobretot SGI). Deshabilita " -"l'HFS+, l'APN i l'sparc64 i arranca com una imatge de disc per PC i386" - -#. TRANSLATORS: it generates one single image which is bootable through any method. -#: util/grub-mkrescue.c:125 -msgid "Make GRUB CD-ROM, disk, pendrive and floppy bootable image." -msgstr "" -"Fa una imatge de GRUB que pot arrencar des de CD-ROM. disc, llapis USB i " -"disquet." - -#: util/grub-mkrescue.c:130 -#, c-format -msgid "" -"Generates a bootable CD/USB/floppy image. Arguments other than options to " -"this program are passed to xorriso, and indicate source files, source " -"directories, or any of the mkisofs options listed by the output of `%s'." -msgstr "" -"Genera una imatge arrencable des de CD/USB/disquet. Els arguments que no són " -"opcions d'aquest programa es passen al xorriso i indiquen fitxers font, " -"directoris font o qualsevol de les opcions del mkisofs llistades amb la " -"sortida de «%s»." - -#: util/grub-mkrescue.c:134 -msgid "Option -- switches to native xorriso command mode." -msgstr "Opció --canvia al mode de comandes nadiu de xorriso." - -#: util/grub-mkrescue.c:135 -msgid "Mail xorriso support requests to ." -msgstr "" -"Envieu les peticions de compatibilitat amb el xorriso a «bug-xorriso@gnu." -"org»." - -#: util/grub-mkrescue.c:221 util/grub-mkstandalone.c:114 -msgid "[OPTION] SOURCE..." -msgstr "[OPCIÓ] FONT..." - -#: util/grub-mkrescue.c:257 util/grub-mkrescue.c:300 util/grub-mkrescue.c:588 -#, c-format -msgid "enabling %s support ..." -msgstr "S'habilita la compatibilitat amb %s..." - -#: util/grub-mkrescue.c:486 -#, fuzzy -msgid "xorriso not found" -msgstr "%s: No s'ha trobat" - -#: util/grub-mkrescue.c:623 -msgid "" -"Your xorriso doesn't support `--grub2-boot-info'. Some features are " -"disabled. Please use xorriso 1.2.9 or later." -msgstr "" -"El vostre xorriso no permet l'us de «--grub2-boot-info». S'han deshabilitat " -"algunes característiques. Feu servir xorriso 1.2.9 o posterior." - -#: util/grub-mkrescue.c:650 -msgid "" -"Your xorriso doesn't support `--grub2-boot-info'. Your core image is too " -"big. Boot as disk is disabled. Please use xorriso 1.2.9 or later." -msgstr "" -"El vostre xorriso no permet l'us de «--grub2-boot-info». la vostra imatge " -"del nucli és massa gran. S'ha deshabilitat l'arranc com a disc. Feu servir " -"xorriso 1.2.9 o posterior." - -#: util/grub-mkstandalone.c:115 -msgid "" -"Generate a standalone image (containing all modules) in the selected format" -msgstr "" -"Genera una imatge independent (que conté tots els mòduls) amb el format " -"seleccionat" - -#: util/grub-mkstandalone.c:115 -msgid "Graft point syntax (E.g. /boot/grub/grub.cfg=./grub.cfg) is accepted" -msgstr "" -"Podeu fer servir la sintaxi Graft point (p. ex. /boot/grub/grub.cfg=./grub." -"cfg)" - -#: util/grub-mount.c:552 -msgid "IMAGE1 [IMAGE2 ...] MOUNTPOINT" -msgstr "IMATGE1 [IMATGE2 ...] PUNTMUNTATGE" - -#: util/grub-mount.c:575 -msgid "need an image and mountpoint" -msgstr "necessita una imatge i un punt de muntatge" - -#: util/grub-probe.c:731 -msgid "given argument is a system device, not a path" -msgstr "l'argument que s'ha donat és un dispositiu de sistema, no un camí" - -#: util/grub-probe.c:736 -msgid "separate items in output using ASCII NUL characters" -msgstr "separa els elements a la sortida emprant caràcters ASCII NUL" - -#: util/grub-probe.c:754 -#, c-format -msgid "[default=%s]" -msgstr "[per defecte=%s]" - -#: util/grub-probe.c:756 -msgid "print TARGET" -msgstr "imprimeix OBJECTIU" - -#: util/grub-probe.c:757 -msgid "available targets:" -msgstr "objectius disponibles:" - -#: util/grub-probe.c:839 -msgid "[OPTION]... [PATH|DEVICE]" -msgstr "[OPCIONS]... [CAMÃ|DISPOSITIU]" - -#: util/grub-probe.c:840 -msgid "" -"Probe device information for a given path (or device, if the -d option is " -"given)." -msgstr "" -"Cerca informació del dispositiu en un camí especificat (o per un dispositiu, " -"si es dona l'opció -d)." - -#: util/grub-render-label.c:60 -msgid "read text from FILE." -msgstr "llegeix el text del FITXER." - -#: util/grub-render-label.c:62 -msgid "use COLOR for text" -msgstr "fa servir el COLOR pel text" - -#: util/grub-render-label.c:64 -msgid "use COLOR for background" -msgstr "fa servir el COLOR pel fons" - -#. TRANSLATORS: The result is always stored to file and -#. never shown directly, so don't use "show" as synonym for render. Use "create" if -#. "render" doesn't translate directly. -#: util/grub-render-label.c:69 -msgid "set the label to render" -msgstr "estableix l'etiqueta que cal renderitzar" - -#: util/grub-render-label.c:73 -msgid "use FILE as font (PF2)." -msgstr "fa servir el FITXER com a font (PF2)." - -#. TRANSLATORS: This file takes a text and creates a graphical representation of it, -#. putting the result into .disk_label file. The result is always stored to file and -#. never shown directly, so don't use "show" as synonym for render. Use "create" if -#. "render" doesn't translate directly. -#: util/grub-render-label.c:136 -msgid "Render Apple .disk_label." -msgstr "Renderitza el .disk_label d'Apple." - -#: util/grub-render-label.c:158 util/grub-syslinux2cfg.c:169 -msgid "Missing arguments\n" -msgstr "Falten arguments\n" - -#: util/grub-script-check.c:87 -msgid "[PATH]" -msgstr "[CAMÃ]" - -#: util/grub-script-check.c:88 -msgid "Checks GRUB script configuration file for syntax errors." -msgstr "" -"Comprova els errors de sintaxi del fitxer d'script de configuració del GRUB." - -#: util/grub-script-check.c:207 -#, c-format -msgid "Syntax error at line %u\n" -msgstr "Hi ha un error de sintaxi a la línia %u\n" - -#: util/grub-script-check.c:212 -#, c-format -msgid "Script `%s' contains no commands and will do nothing\n" -msgstr "L'script «%s» no conté comandes i no farà res\n" - -#: util/grub-setup.c:79 -#, c-format -msgid "use FILE as the boot image [default=%s]" -msgstr "utilitza el FITXER com a imatge d'arrencada [per defecte=%s]" - -#: util/grub-setup.c:81 -#, c-format -msgid "use FILE as the core image [default=%s]" -msgstr "utilitza el FITXER com a imatge del nucli [per defecte=%s]" - -#: util/grub-setup.c:210 -msgid "No device is specified.\n" -msgstr "No s'ha especificat cap dispositiu.\n" - -#: util/grub-setup.c:224 -msgid "" -"Set up images to boot from DEVICE.\n" -"\n" -"You should not normally run this program directly. Use grub-install instead." -msgstr "" -"Configura les imatges per arrencar des del DISPOSITIU\n" -"\n" -"Normalment no hauríeu de fer servir aquest programa directament. Utilitzeu " -"grub-install." - -#: util/grub-setup.c:228 -msgid "DEVICE must be an OS device (e.g. /dev/sda)." -msgstr "El DISPOSITIU ha de ser un dispositiu del SO (p. ex. /dev/sda)." - -#: util/grub-setup.c:297 -#, c-format -msgid "Invalid device `%s'.\n" -msgstr "El dispositiu «%s» no és vàlid.\n" - -#: util/grub-syslinux2cfg.c:64 -msgid "root directory as it will be seen on runtime [default=/]." -msgstr "el directori arrel com es veurà en temps d'execució [per defecte=/]." - -#: util/grub-syslinux2cfg.c:69 -msgid "" -"current directory of syslinux as it will be seen on runtime [default is " -"parent directory of input file]." -msgstr "" -"el directori actual de syslinux com es veurà en temps d'execució [per " -"defecte és el directori superior del fitxer d'entrada]." - -#: util/grub-syslinux2cfg.c:74 -msgid "write output to FILE [default=stdout]." -msgstr "escriu la sortida al FITXER [per defecte=stdout]." - -#: util/grub-syslinux2cfg.c:148 -msgid "Transform syslinux config into GRUB one." -msgstr "Transforma la configuració de syslinux en una de GRUB." - -#: util/mkimage.c:688 util/mkimage.c:717 util/mkimage.c:734 -msgid "cannot compress the kernel image" -msgstr "no es pot comprimir la imatge del nucli" - -#: util/mkimage.c:766 util/mkimage.c:1077 -#, c-format -msgid "unknown compression %d" -msgstr "la compressió %d no és coneguda" - -#: util/mkimage.c:1088 -msgid "Decompressor is too big" -msgstr "El descompressor és massa gran" - -#: util/mkimage.c:1133 -#, c-format -msgid "core image is too big (0x%x > 0x%x)" -msgstr "la imatge del nucli és massa gran (0x%x > 0x%x)" - -#: util/mkimage.c:1140 -#, c-format -msgid "kernel image is too big (0x%x > 0x%x)" -msgstr "la imatge del nucli és massa gran (0x%x > 0x%x)" - -#: util/mkimage.c:1220 util/mkimage.c:1501 -#, c-format -msgid "diskboot.img size must be %u bytes" -msgstr "la mida de diskboot.img ha de ser de %u bytes" - -#: util/mkimage.c:1571 -msgid "" -"fwstart.img doesn't match the known good version. proceed at your own risk" -msgstr "" -"fwstart.img no té la versió bona coneguda. Assumiu el risc de continuar" - -#: util/mkimage.c:1575 util/mkimage.c:1601 -msgid "firmware image is too big" -msgstr "la imatge del microprogramari és massa gran" - -#: util/resolve.c:93 -#, c-format -msgid "invalid line format: %s" -msgstr "el format de la línia no és vàlid: %s" - -#: util/setup.c:167 -msgid "the first sector of the core file is not sector-aligned" -msgstr "el primer sector del fitxer del nucli no està alineat amb el sector" - -#: util/setup.c:177 -msgid "non-sector-aligned data is found in the core file" -msgstr "s'han trobat dades no alineades amb el sector al fitxer del nucli" - -#: util/setup.c:199 -msgid "the sectors of the core file are too fragmented" -msgstr "els sectors del fitxer del nucli estan massa fragmentats" - -#: util/setup.c:280 -#, c-format -msgid "the size of `%s' is not %u" -msgstr "la mida de «%s» no és %u" - -#: util/setup.c:290 -#, c-format -msgid "the size of `%s' is too small" -msgstr "la mida de «%s» és massa petita" - -#: util/setup.c:428 -msgid "" -"Attempting to install GRUB to a disk with multiple partition labels or both " -"partition label and filesystem. This is not supported yet." -msgstr "" -"Esteu intentant instal·lar el GRUB amb múltiples etiquetes de particions o " -"ambdues etiquetes de partició i de sistema de fitxers. Encara no se'n permet " -"l'ús." - -#: util/setup.c:441 -#, c-format -msgid "unable to identify a filesystem in %s; safety check can't be performed" -msgstr "" -"No s'ha pogut identificar el sistema de fitxers de %s; no es pot comprovar " -"la seguretat" - -#. TRANSLATORS: Filesystem may reserve the space just GRUB isn't sure about it. -#: util/setup.c:445 -#, c-format -msgid "" -"%s appears to contain a %s filesystem which isn't known to reserve space for " -"DOS-style boot. Installing GRUB there could result in FILESYSTEM " -"DESTRUCTION if valuable data is overwritten by grub-setup (--skip-fs-probe " -"disables this check, use at your own risk)" -msgstr "" -"%s sembla contenir un sistema de fitxers %s que no sé si pot reservar espai " -"pel sistema d'arrencada de l'estil del DOS. Instal·lar el GRUB pot DESTRUIR " -"EL SISTEMA DE FITXERS si el grub-setup sobreescriu dades importants (--skip-" -"fs-probe deshabilita la comprovació. Utilitzeu-la sota la vostra " -"responsabilitat)" - -#. TRANSLATORS: Partition map may reserve the space just GRUB isn't sure about it. -#: util/setup.c:458 -#, c-format -msgid "" -"%s appears to contain a %s partition map which isn't known to reserve space " -"for DOS-style boot. Installing GRUB there could result in FILESYSTEM " -"DESTRUCTION if valuable data is overwritten by grub-setup (--skip-fs-probe " -"disables this check, use at your own risk)" -msgstr "" -"%s sembla contenir un mapa de particions %s que és sabut que no reserva " -"espai pel sistema d'arrencada de l'estil del DOS. Instal·lar-hi el GRUB pot " -"DESTRUIR EL SISTEMA DE FITXERS si el grub-setup sobreescriu dades importants " -"(--skip-fs-probe deshabilita la comprovació. Utilitzeu-la sota la vostra " -"responsabilitat)" - -#: util/setup.c:465 -#, c-format -msgid "" -"%s appears to contain a %s partition map and LDM which isn't known to be a " -"safe combination. Installing GRUB there could result in FILESYSTEM " -"DESTRUCTION if valuable data is overwritten by grub-setup (--skip-fs-probe " -"disables this check, use at your own risk)" -msgstr "" -"%s sembla contenir un LDM i un mapa de particions %s que no és una " -"combinació segura coneguda. Instal·lar-hi el GRUB pot DESTRUIR EL SISTEMA DE " -"FITXERS si el grub-setup sobreescriu dades importants (--skip-fs-probe " -"deshabilita la comprovació. Utilitzeu-la sota la vostra responsabilitat)" - -#: util/setup.c:478 -msgid "" -"Attempting to install GRUB to a partitionless disk or to a partition. This " -"is a BAD idea." -msgstr "" -"Esteu intentant instal·lar el GRUB a un disc sense particions o a una " -"partició. És una MALA idea." - -#: util/setup.c:483 -msgid "" -"Attempting to install GRUB to a disk with multiple partition labels. This " -"is not supported yet." -msgstr "" -"Esteu intentant instal·lar el GRUB en un disc amb múltiples etiquetes de " -"particions. Encara no se'n permet l'ús." - -#: util/setup.c:489 -#, c-format -msgid "Partition style `%s' doesn't support embedding" -msgstr "L'estil de partició «%s» no és compatible amb la incrustació" - -#: util/setup.c:496 -#, c-format -msgid "File system `%s' doesn't support embedding" -msgstr "El sistema de fitxers «%s» no és compatible amb la incrustació" - -#: util/setup.c:537 -msgid "Your embedding area is unusually small. core.img won't fit in it." -msgstr "" -"La vostra àrea d'incrustació és petita. El fitxer core.img no hi cabrà." - -#: util/setup.c:559 util/setup.c:725 util/setup.c:844 -msgid "no terminator in the core image" -msgstr "no hi ha terminació a la imatge del nucli" - -#: util/setup.c:622 -msgid "core.img version mismatch" -msgstr "la versió del core.img no es correspon" - -#: util/setup.c:675 -msgid "" -"embedding is not possible, but this is required for RAID and LVM install" -msgstr "" -"no s'ha pogut incrustar, però és necessari quan s'instal·la un RAID i un LVM" - -#: util/setup.c:682 -#, c-format -msgid "can't determine filesystem on %s" -msgstr "no es pot determinar el sistema de fitxers a %s" - -#: util/setup.c:685 -#, c-format -msgid "filesystem `%s' doesn't support blocklists" -msgstr "el sistema de fitxers «%s» no és compatible amb les llistes de blocs" - -#. TRANSLATORS: cross-disk refers to /boot being on one disk -#. but MBR on another. -#: util/setup.c:694 -msgid "embedding is not possible, but this is required for cross-disk install" -msgstr "" -"+No s'ha pogut incrustar, però es requereix quan grub s'instal·la en un disc " -"diferent del de la imatge" - -#: util/setup.c:700 -msgid "" -"Embedding is not possible. GRUB can only be installed in this setup by " -"using blocklists. However, blocklists are UNRELIABLE and their use is " -"discouraged." -msgstr "" -"No s'ha pogut incrustar. El GRUB només es pot instal·lar d'aquesta manera " -"fent servir llistes de blocs. De tota manera, les llistes de blocs NO SÓN " -"FIABLES i es desaconsella la seva utilització." - -#. TRANSLATORS: Here GRUB refuses to continue with blocklist install. -#: util/setup.c:705 -msgid "will not proceed with blocklists" -msgstr "no continuarà amb la llista de blocs" - -#: util/setup.c:817 util/setup.c:837 -msgid "blocklists are invalid" -msgstr "les llistes de blocs no són vàlides" - -#: util/setup.c:847 -msgid "blocklists are incomplete" -msgstr "les llistes de blocs no estan complertes" - -#~ msgid "%.*s: ARGP_HELP_FMT parameter must be positive" -#~ msgstr "%.*s: el paràmetre ARGP_HELP_FMT ha de ser positiu" - -#~ msgid "%s: option '--%s' doesn't allow an argument\n" -#~ msgstr "%s: l'opció «--%s» no permet un argument\n" - -#~ msgid "%s: unrecognized option '--%s'\n" -#~ msgstr "%s: l'opció «--%s» no és coneguda\n" - -#~ msgid "%s: option '-W %s' doesn't allow an argument\n" -#~ msgstr "%s: l'opció «-W %s» no permet un argument\n" - -#~ msgid "%s: option '-W %s' requires an argument\n" -#~ msgstr "%s: l'opció «-W %s» necessita un argument\n" - -#~ msgid "Usage: %s -o OUTPUT CKBMAP_ARGUMENTS...\\n" -#~ msgstr "Ús: %s -0 SORTIDA CKBMAP_ARGUMENTS...\\n" - -#~ msgid "Make GRUB keyboard layout file." -#~ msgstr "Fa un fitxer de distribució de teclat pel GRUB." - -#~ msgid "print this message and exit" -#~ msgstr "mostra aquest missatge i surt" - -#~ msgid "print the version information and exit" -#~ msgstr "mostra informació sobre la versió i surt" - -#~ msgid "%s generates a keyboard layout for GRUB using ckbcomp\\n" -#~ msgstr "%s genera una distribució de teclat pel GRUB fent servir ckbcomp\\n" - -#~ msgid "Report bugs to ." -#~ msgstr "Informeu dels errors a ." - -#~ msgid "%s: option requires an argument -- `%s'\\n" -#~ msgstr "%s: l'opció necessita un argument -- «%s»\\n" - -#~ msgid "Usage: %s [OPTION]\\n" -#~ msgstr "Ús: %s [OPCIÓ]\\n" - -#~ msgid "Generate a grub config file" -#~ msgstr "Genera un fitxer de configuració del GRUB" - -#~ msgid "output generated config to FILE [default=stdout]" -#~ msgstr "envia la configuració generada al FITXER [per defecte=stdout] " - -#~ msgid "Unrecognized option `%s'\\n" -#~ msgstr "No es reconeix l'opció «%s»\\n" - -#~ msgid "%s: You must run this as root\\n" -#~ msgstr "%s: Heu d'executar-ho com a root\\n" - -#~ msgid "%s: Not found.\\n" -#~ msgstr "%s: No s'ha trobat.\\n" - -#~ msgid "Generating grub configuration file ..." -#~ msgstr "Es genera un fitxer de configuració..." - -#~ msgid "" -#~ "Syntax errors are detected in generated GRUB config file.\n" -#~ "Ensure that there are no errors in /etc/default/grub\n" -#~ "and /etc/grub.d/* files or please file a bug report with\n" -#~ "%s file attached." -#~ msgstr "" -#~ "S'han detectat errors de sintaxi al fitxer de configuració del GRUB " -#~ "generat.\n" -#~ "Assegureu-vos que no hi ha errors a /etc/default/grub o als fitxers\n" -#~ " /etc/grub.d/* o bé envieu un informe d'error adjuntant el fitxer %s " - -#~ msgid "done" -#~ msgstr "fet" - -#~ msgid "Warning:" -#~ msgstr "Avís:" - -#~ msgid "Usage: %s [OPTION] MENU_ENTRY\\n" -#~ msgstr "Ús: %s [OPCIÓ] ENTRADA_MENÚ\\n" - -#~ msgid "Set the default boot menu entry for GRUB, for the next boot only." -#~ msgstr "" -#~ "Estableix l'entrada del menú d'arrencada per defecte del GRUB, només per " -#~ "la propera arrencada." - -#~ msgid "" -#~ "expect GRUB images under the directory DIR/%s instead of the %s directory" -#~ msgstr "" -#~ "s'esperaven imatges del GRUB al directori DIRECTORI/%s en comptes del " -#~ "directori %s" - -#~ msgid "" -#~ "MENU_ENTRY is a number, a menu item title or a menu item identifier. " -#~ "Please note that menu items in\n" -#~ "submenus or sub-submenus require specifying the submenu components and " -#~ "then the\n" -#~ "menu item component. The titles should be separated using the greater-" -#~ "than\n" -#~ "character (>) with no extra spaces. Depending on your shell some " -#~ "characters including > may need escaping. More information about this is " -#~ "available\n" -#~ "in the GRUB Manual in the section about the 'default' command. " -#~ msgstr "" -#~ "MENU_ENTRY és un número, un títol d'objecte del menú o un identificador " -#~ "d'aquest objecte. Tingueu en compte\n" -#~ "que cal especificar els components del submenú i després el component de " -#~ "l'objecte del menú en els objectes de \n" -#~ "submenús o sub-submenús . Els títols s'han de separar fent servir el " -#~ "caràcter «més gran que» (>) sense cap espai més.\n" -#~ "En funció del vostre intèrpret d'ordre alguns caràcters com ara (>) poden " -#~ "haver de ser escapats. Podeu trobar més \n" -#~ "informació al manual de GRUB a la secció sobre la comanda «per defecte»." - -#~ msgid "More than one menu entry?" -#~ msgstr "Més d'una entrada del menú?" - -#~ msgid "Menu entry not specified." -#~ msgstr "No s'ha especificat cap entrada del menú." - -#~ msgid "Set the default boot menu entry for GRUB." -#~ msgstr "Estableix l'entrada del menú d'arrencada per defecte del GRUB." - -#~ msgid "This requires setting GRUB_DEFAULT=saved in %s/default/grub.\\n" -#~ msgstr "Necessita configurar GRUB_DEFAULT=saved a %s/default/grub.\\n" - -#~ msgid "MENU_ENTRY is a number, a menu item title or a menu item identifier." -#~ msgstr "" -#~ "ENTRADA_MENÚ és un número, el títol d'un element del menú o el seu " -#~ "identificador." - -#~ msgid "" -#~ "Requested serial terminal but GRUB_SERIAL_COMMAND is unspecified. Default " -#~ "parameters will be used." -#~ msgstr "" -#~ "S'ha demanat un terminal sèrie, però no s'ha especificat el " -#~ "GRUB_SERIAL_COMMAND. S'utilitzen els paràmetres per defecte." - -#~ msgid "Found theme: %s\\n" -#~ msgstr "S'ha trobat el tema :%s\\n" - -#~ msgid "Found background: %s\\n" -#~ msgstr "S'ha trobat el fons: %s\\n" - -#~ msgid "Unsupported image format" -#~ msgstr "No és compatible amb el format de la imatge" - -#~ msgid "" -#~ "Setting GRUB_TIMEOUT to a non-zero value when GRUB_HIDDEN_TIMEOUT is set " -#~ "is no longer supported." -#~ msgstr "" -#~ "Ja no es permet establir GRUB_TIMEOUT a un valor diferent de zero quan " -#~ "s'indica GRUB_HIDDEN_TIMEOUT." - -#~ msgid "Found GNU Mach: %s" -#~ msgstr "S'ha trobat un GNU Mach: %s" - -#~ msgid "Found Hurd module: %s" -#~ msgstr "S'ha trobat el mòdul del Hurd: %s" - -#~ msgid "Some Hurd stuff found, but not enough to boot." -#~ msgstr "" -#~ "S'ha trobat alguna cosa del Hurd, però no és suficient per arrencar." - -#~ msgid "%s, with Hurd %s (recovery mode)" -#~ msgstr "%s, amb el Hurd %s (mode de restabliment)" - -#~ msgid "%s, with Hurd %s" -#~ msgstr "%s, amb el Hurd %s" - -#~ msgid "" -#~ "Please don't use old title `%s' for GRUB_DEFAULT, use `%s' (for versions " -#~ "before 2.00) or `%s' (for 2.00 or later)" -#~ msgstr "" -#~ "No utilitzeu l'antic títol «%s» per al GRUB_DEFAULT. Feu servir «%s» (per " -#~ "versions anterior a la 2.00) o «%s» (per versions 2.00 o posteriors)" - -#~ msgid "Loading GNU Mach ..." -#~ msgstr "S'està carregant el GNU Mach ..." - -#~ msgid "Loading the Hurd ..." -#~ msgstr "S'està carregant el Hurd ..." - -#~ msgid "Advanced options for %s" -#~ msgstr "Opcions avançades de %s" - -#~ msgid "Loading kernel of Illumos ..." -#~ msgstr "S'està carregant el nucli de Illumos ..." - -#~ msgid "%s, with kFreeBSD %s (recovery mode)" -#~ msgstr "%s, amb el kFreeBSD %s (mode de restabliment)" - -#~ msgid "%s, with kFreeBSD %s" -#~ msgstr "%s, amb el kFreeBSD %s" - -#~ msgid "Loading kernel of FreeBSD %s ..." -#~ msgstr "S'està carregant el nucli de FreeBSD %s ..." - -#~ msgid "Found kernel of FreeBSD: %s\\n" -#~ msgstr "S'ha trobat un nucli de FreeBSD: %s\\n" - -#~ msgid "Found kernel module directory: %s\\n" -#~ msgstr "S'ha trobat el directori de mòduls del nucli: %s\\n" - -#~ msgid "%s, with Linux %s (recovery mode)" -#~ msgstr "%s, amb el Linux %s (mode de restabliment)" - -#~ msgid "%s, with Linux %s" -#~ msgstr "%s, amb el Linux %s" - -#~ msgid "Loading Linux %s ..." -#~ msgstr "S'està carregant el Linux %s ..." - -#~ msgid "Loading initial ramdisk ..." -#~ msgstr "S'està carregant la ramdisk inicial ..." - -#~ msgid "Found linux image: %s\\n" -#~ msgstr "S'ha trobat una imatge de linux: %s\\n" - -#~ msgid "Found initrd image: %s\\n" -#~ msgstr "S'ha trobat una imatge de initrd: %s\\n" - -#~ msgid "%s, with kernel %s (via %s, recovery mode)" -#~ msgstr "%s, amb nucli %s (a través de %s, mode de restabliment)" - -#~ msgid "%s, with kernel %s (via %s)" -#~ msgstr "%s, amb nucli %s (a través de %s)" - -#~ msgid "Found NetBSD kernel: %s\\n" -#~ msgstr "S'ha trobat un nucli de NetBSD: %s\\n" - -#~ msgid "Windows Vista/7 (loader)" -#~ msgstr "Windows Vista/7 (carregador)" - -#~ msgid "Windows NT/2000/XP (loader)" -#~ msgstr "Windows NT/2000/XP (carregador)" - -#~ msgid "Found %s on %s (%s)\\n" -#~ msgstr "S'ha trobat %s a %s (%s)\\n" - -#~ msgid "(32-bit)" -#~ msgstr "(32 bits)" - -#~ msgid "(64-bit)" -#~ msgstr "(64 bits)" - -#~ msgid "(on %s)" -#~ msgstr "(a %s)" - -#~ msgid "%s, with Xen %s and Linux %s (recovery mode)" -#~ msgstr "%s, amb Xen %s i Linux %s (mode de restabliment)" - -#~ msgid "%s, with Xen %s and Linux %s" -#~ msgstr "%s, amb Xen %s i Linux %s" - -#~ msgid "%s, with Xen hypervisor" -#~ msgstr "%s, amb el Xen hypervisor" - -#~ msgid "Loading Xen %s ..." -#~ msgstr "S'està carregant el Xen %s ..." - -#~ msgid "Xen hypervisor, version %s" -#~ msgstr "Hipervisor de Xen, versió %s" - -#~ msgid "Advanced options for %s (with Xen hypervisor)" -#~ msgstr "Opcions avançades de %s (amb hypervisor de Xen)" - -#~ msgid "Found %s on %s\\n" -#~ msgstr "S'ha trobat %s a %s\\n" - -#~ msgid "%s is not yet supported by grub-mkconfig.\\n" -#~ msgstr "el grub-mkconfig encara no és compatible amb el %s.\\n" - -#~ msgid "Unsupported substitution flag: 0x%x\n" -#~ msgstr "No és compatible amb la substitució del senyal: 0x%x\n" - -#~ msgid "Unknown gsub font feature 0x%x (%s)\n" -#~ msgstr "La característica gsub 0x%x (%s) de la font no és coneguda\n" - -#~ msgid "Address range not associated with RAM" -#~ msgstr "El rang d'adreces no està associat amb la RAM" - -#~ msgid "grub_memalign is not supported on your system" -#~ msgstr "el vostre sistema no és compatible amb grub_memalign" - -#~ msgid "If FILENAME is `-', the default value %s is used." -#~ msgstr "Si NOMFITXER és «-» s'utilitza el valor per defecte %s." - -#~ msgid "save only the ASCII bitmaps" -#~ msgstr "desa només els mapes de bits ASCII" - -#~ msgid "create width summary file" -#~ msgstr "crea un fitxer de resum ample" - -#~ msgid "Option --ascii-bitmaps doesn't accept ranges (it always uses ASCII)." -#~ msgstr "L'opció --ascii-bitmaps no accepta rangs (sempre utilitza ASCII)." - -#~ msgid "WARNING: your random generator isn't known to be secure\n" -#~ msgstr "AVÃS: no és segur que el vostre generador aleatori sigui segur\n" - -#~ msgid "" -#~ "print filesystem module, GRUB drive, system device, partition map module, " -#~ "abstraction module or cryptographic container UUID [default=fs]" -#~ msgstr "" -#~ "mostra el mòdul del sistema de fitxers, la unitat de disc del GRUB, el " -#~ "dispositiu de sistema, el mòdul del mapa de particions, el mòdul " -#~ "d'abstracció o l'UUID del contenidor de xifrat [per defecte=fs]" - -#~ msgid "failed to read the first sector of the core image" -#~ msgstr "no s'ha pogut llegir el primer sector de la imatge del nucli" - -#~ msgid "use FILE as grub-setup" -#~ msgstr "utilitza el FITXER com a grub-setup" - -#~ msgid "use FILE as grub-mkrelpath" -#~ msgstr "utilitza el FITXER com a grub-mkrelpath" - -#~ msgid "use FILE as grub-probe" -#~ msgstr "utilitza el FITXER com a grub-probe" - -#~ msgid "INSTALL_DEVICE must be system device filename." -#~ msgstr "" -#~ "DISPOSITIU_INSTAL·LACIÓ ha de ser un nom de dispositu d'instal·lació." - -#~ msgid "" -#~ "Path `%s' is not readable by GRUB on boot. Installation is impossible. " -#~ "Aborting.\\n" -#~ msgstr "" -#~ "El GRUB no pot llegir el camí «%s» en arrencar. La instal·lació no és " -#~ "possible. S'interromp.\\n" - -#~ msgid "Auto-detection of a filesystem of %s failed.\\n" -#~ msgstr "Ha fallat la detecció automàtica d'un sistema de fitxers de %s.\\n" - -#~ msgid "Try with --recheck." -#~ msgstr "Intenteu-ho amb --recheck." - -#~ msgid "" -#~ "If the problem persists please report this together with the output of %s " -#~ "to <%s>" -#~ msgstr "" -#~ "Si el problema persisteix, informeu-ne juntament amb la sortida de %s a <" -#~ "%s>" - -#~ msgid "`%s' failed.\\n" -#~ msgstr "Ha fallat «%s».\\n" - -#~ msgid "" -#~ "Can't find GRUB drive for %s; unable to create EFI Boot Manager entry.\\n" -#~ msgstr "" -#~ "No s'ha pogut trobar la unitat GRUB de %s; no es pot crear l'entrada al " -#~ "gestor d'arrencada de l'EFI.\\n" - -#~ msgid "Generating grub.cfg ..." -#~ msgstr "Es genera grub.cfg ..." - -#~ msgid "" -#~ "%s copies GRUB images into net_directory/subdir/target_cpu-platform\\n" -#~ msgstr "" -#~ "%s copia imatges de GRUB a net_directory/subdir/target_cpu-platform\\n" - -#~ msgid "use FILE as grub-glue-efi" -#~ msgstr "utilitza el FITXER com a grub-glue-efi" - -#~ msgid "use FILE as grub-render-label" -#~ msgstr "utilitza el FITXER com a grub-render-label" - -#~ msgid "Packed pixel " -#~ msgstr "Paquet de píxels" - -#~ msgid "use GRUB images from DIR. Takes precedence over target" -#~ msgstr "" -#~ "utilitza les imatges de GRUB del DIR. Pren preferència sobre l'objectiu" - -#~ msgid "Storage info for `%s' does not include name" -#~ msgstr "La informació d'emmagatzemament de «%s» no inclou el nom" - -#~ msgid "Bogus name length for storage info for `%s'" -#~ msgstr "Longitud del nom falsa a la informació de l'emmagatzemament de «%s»" - -#~ msgid "Storage name for `%s' not NUL-terminated" -#~ msgstr "El nom d'emmagatzemament de «%s» no acaba amb NUL" - -#~ msgid "Couldn't find physical volume `%s'. Check your device.map" -#~ msgstr "" -#~ "No s'ha pogut trobar el volum físic «%s». Comproveu el mapa de dispositius" - -#~ msgid "Expose v1 tables." -#~ msgstr "Exposa les taules v1." - -#~ msgid "Fake BIOS." -#~ msgstr "Falsa BIOS." - -#~ msgid "Check hash list file." -#~ msgstr "Comprova el hash de la llista de fitxers" - -#~ msgid "DIRECTORY" -#~ msgstr "DRECTORI" - -#~ msgid "Unload PXE environment." -#~ msgstr "Treu l'entorn PXE." - -#~ msgid "Read word from PORT." -#~ msgstr "Llegeix una paraula del PORT," - -#~ msgid "Read dword from PORT." -#~ msgstr "Llegeix una paraula doble del PORT." - -#~ msgid "Write word VALUE to PORT." -#~ msgstr "Escriu paraula VALOR al PORT." - -#~ msgid "Write dword VALUE to PORT." -#~ msgstr "Escriu una paraula doble VALOR al PORT." - -#~ msgid "[--shift] [--ctrl] [--alt]" -#~ msgstr "[--shift] [--ctrl] [--alt]" - -#~ msgid "[-1|-2]" -#~ msgstr "[-1|-2]" - -#~ msgid "Read word from ADDR." -#~ msgstr "Llegeix una paraula de ADDR." - -#~ msgid "Read dword from ADDR." -#~ msgstr "Llegeix una paraula doble de ADDR." - -#~ msgid "Write word VALUE to ADDR." -#~ msgstr "Escriu una paraula VALOR a ADDR." - -#~ msgid "Write dword VALUE to ADDR." -#~ msgstr "Escriu una paraula doble VALOR a ADDR" - -#~ msgid "Menu entry definition as a string." -#~ msgstr "Cadena de definició de l'entrada del menú." - -#~ msgid "[DEVICE]" -#~ msgstr "[DISPOSITIU]" - -#~ msgid "Variable names to update with matches." -#~ msgstr "Noms de les variables que cal actualitzar amb les concordances." - -#~ msgid "Load XNU hibernate image." -#~ msgstr "Carrega una imatge hibernada del XNU." - -#~ msgid "Authenticate users" -#~ msgstr "Autentica usuaris" - -#~ msgid "[n]" -#~ msgstr "[n]" - -#~ msgid "UTF-8 visual" -#~ msgstr "UTF-8 visual" - -#~ msgid "write error" -#~ msgstr "error d'escriptura" - -#~ msgid "open error" -#~ msgstr "error en obrir" - -#~ msgid "seek error" -#~ msgstr "error en la cerca" - -#~ msgid "Hex dump FILE." -#~ msgstr "Fa el bolcat hexadecimal del fitxer." - -#~ msgid "Must use absolute path.\n" -#~ msgstr "Heu de fer servir un camí absolut.\n" - -#~ msgid "the core image is too small" -#~ msgstr "la imatge del nucli és massa petita" - -#~ msgid "prefix is too long" -#~ msgstr "el prefix és massa llarg" - -#~ msgid "" -#~ "Usage: %s [OPTION]... [MODULES]\n" -#~ "\n" -#~ "Make a bootable image of GRUB.\n" -#~ "\n" -#~ " -d, --directory=DIR use images and modules under DIR [default=%s/" -#~ "@platform@]\n" -#~ " -p, --prefix=DIR set grub_prefix directory [default=%s]\n" -#~ " -m, --memdisk=FILE embed FILE as a memdisk image\n" -#~ " -c, --config=FILE embed FILE as boot config\n" -#~ " -n, --note add NOTE segment for CHRP Open Firmware\n" -#~ " -o, --output=FILE output a generated image to FILE " -#~ "[default=stdout]\n" -#~ " -O, --format=FORMAT generate an image in format\n" -#~ " available formats: %s\n" -#~ " -C, --compression=(xz|none|auto) choose the compression to use\n" -#~ " -h, --help display this message and exit\n" -#~ " -V, --version print version information and exit\n" -#~ " -v, --verbose print verbose messages\n" -#~ "\n" -#~ "Report bugs to <%s>.\n" -#~ msgstr "" -#~ "Forma d'ús: %s [OPCIÓ]... [MÃ’DULS]\n" -#~ "\n" -#~ "Fa una imatge del GRUB que pot arrencar\n" -#~ "\n" -#~ " -d, --directory=DIR utilitza les imatges i els mòduls de DIR [per " -#~ "defecte=%s/@platform@]\n" -#~ " -p, --prefix=DIR utilitza el directori grub_prefix [per defecte=" -#~ "%s]\n" -#~ " -m, --memdisk=FITXER incrusta el FITXER com una imatge memdisk\n" -#~ " -c, --config=FITXER incrusta el FITXER com a configuració " -#~ "d'arrencada\n" -#~ " -n, --note afegeix un segment NOTA pel CHRP " -#~ "microprogramari obert\n" -#~ " -o, --outut=FITXER posa una imatge generada al FITXER [per " -#~ "defecte=stdout]\n" -#~ " -O, --format=FORMAT genera una imatge amb el format \n" -#~ " formats disponibles: %s\n" -#~ " -C, --compression=(xz|none|auto) escull la compressió que cal fer " -#~ "servir\n" -#~ " -h, --help mostra aquest missatge i surt\n" -#~ " -V, --version mostra la informació de la versió i surt\n" -#~ " -v, --verbose mostra els missatges detallats\n" -#~ "\n" -#~ "Informeu dels errors a <%s>.\n" - -#~ msgid "cannot open %s" -#~ msgstr "no es pot obrir %s" - -#~ msgid "" -#~ "embedding is not possible, but this is required when the root device is " -#~ "on a RAID array or LVM volume" -#~ msgstr "" -#~ "No s'ha pogut incrustar, però es requereix quan el dispositiu arrel és a " -#~ "una matriu RAID o a un volum LVM." - -#~ msgid "DEV" -#~ msgstr "DISPOSITIU" - -#~ msgid "Use DEV as the root device [default=guessed]" -#~ msgstr "" -#~ "Fes servir el DISPOSITIU com a dispositiu del root [per defecte=deduït]" - -#~ msgid "cannot guess the root device. Specify the option `--root-device'" -#~ msgstr "" -#~ "No es pot deduir el dispositiu arrel. Especifiqueu l'opció «--root-device»" - -#~ msgid "[class [handler]]" -#~ msgstr "[classe [gestor]]" - -#~ msgid "List compatible VESA BIOS extension video modes." -#~ msgstr "Llista les extensions de vídeo compatibles de VESA BIOS." - -#~ msgid "Test VESA BIOS Extension 2.0+ support." -#~ msgstr "Prova el suport per l'extensió 2.0+ de VESA BIOS." - -#~ msgid "Set the root device." -#~ msgstr "Estableix el dispositiu arrel." - -#~ msgid "Simulate a hard drive with partitions." -#~ msgstr "Simula un disc dur amb particions." - -#~ msgid "" -#~ "Attempting to install GRUB to a partition instead of the MBR. This is a " -#~ "BAD idea." -#~ msgstr "" -#~ "Esteu intentant instal·lar el GRUB a una partició en lloc de al MBR. És " -#~ "una MALA idea." - -#~ msgid "No DOS-style partitions found" -#~ msgstr "No s'ha trobat cap partició d'estil DOS" - -#~ msgid "if you really want blocklists, use --force" -#~ msgstr "Si realment voleu fer servir llistes de blocs, empreu --force." - -#~ msgid "" -#~ "Usage: %s [OPTION]... DEVICE\n" -#~ "\n" -#~ "Set up images to boot from DEVICE.\n" -#~ "DEVICE must be a GRUB device (e.g. `(hd0,1)').\n" -#~ "\n" -#~ " -b, --boot-image=FILE use FILE as the boot image [default=%s]\n" -#~ " -c, --core-image=FILE use FILE as the core image [default=%s]\n" -#~ " -d, --directory=DIR use GRUB files in the directory DIR [default=" -#~ "%s]\n" -#~ " -m, --device-map=FILE use FILE as the device map [default=%s]\n" -#~ " -r, --root-device=DEV use DEV as the root device [default=guessed]\n" -#~ " -f, --force install even if problems are detected\n" -#~ " -s, --skip-fs-probe do not probe for filesystems in DEVICE\n" -#~ " -h, --help display this message and exit\n" -#~ " -V, --version print version information and exit\n" -#~ " -v, --verbose print verbose messages\n" -#~ "\n" -#~ "Report bugs to <%s>.\n" -#~ msgstr "" -#~ "Forma d'ús: %s [OPCIÓ]... DISPOSITIU\n" -#~ "\n" -#~ "Configura imatges per arrencar des del DISPOSITIU.\n" -#~ "DISPOSITIU ha de ser un dispositiu del GRUB (p.e. «(hd0,1)»).\n" -#~ "\n" -#~ " -b, --boot-image=FITXER usa FITXER com a imatge d'arrencada [per " -#~ "defecte=%s]\n" -#~ " -c, --core-image=FITXER usa FITXER com a imatge del nucli [per defecte=" -#~ "%s]\n" -#~ " -d, --directory=DIR usa els fitxers del GRUB del directori DIR [def=" -#~ "%s]\n" -#~ " -m, --device-map=FITXER usa el FITXER com a mapa del dispositiu [def=" -#~ "%s]\n" -#~ " -r, --root-device=DISP usa DISP com a dispositiu arrel [per " -#~ "defecte=dedueix]\n" -#~ " -f, --force instal·la encara que es detectin problemes\n" -#~ " -s, --skip-fs-probe no comprovis els sistemes de fitxers a " -#~ "DISPOSITIU\n" -#~ " -h, --help mostra aquest missatge i surt\n" -#~ " -V, --version mostra informació sobre la versió i surt\n" -#~ " -v, --verbose mostra els missatges detallats\n" -#~ "\n" -#~ "Informeu dels errors a <%s>.\n" diff --git a/thirdparty/grub-2.04/po/da.gmo b/thirdparty/grub-2.04/po/da.gmo deleted file mode 100644 index c6ec7f4992f087e786b2249524010eb02b3e7844..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 115974 zcmdp?_$T^ z3wAwLtk`=wD)ugV6uW-UZ>=?xiGcUq@4NS(Zyz_$UcJ5RU3GHa>Dm4)AJ69YKHpyO zg26uDg&p}WlC95oYS8D~2c8B!csuM1UxmBFZ((oP`4FFPU+BSIVJ;j84}?VLI~8_? z=fKWz9qa~gfc@b;uqS*ID&DVPFW8~h`r8v`U`~Una6W7YSHkXaHEf?kI*w=6`Fx!) zpI`6u^}+qJkk2;(-Uk)_2RI$>8TR>>!E&hd-+-OqmvCqJJyd?$H~4&A;9gMq9}M?| zBjHZ40H(o3P~|!r4uq${F>t-J{|t`DyanzEGY+-o91llgE`WQ(Bj673BB=ac3TYbO zZuv-0Z)Z$musL0?}9zx8&LA{IaK~qVpi^Y!vUB_L)p)T zs^3GL`B*49Tnmqb55T2xMx)QS5MB)>m+fdwh1(mdJ|;oQ$rRWd9srf^`B3%0*x6S> z)!Rxq0tU-%GIeSZv9&flT(+4mTmpHZ+s<^rhxR1YOztD)k(0V;n_LR7x*6SxnY zf2@snIaIry4wc?5Q1$UDRQSzM_0|pLG!c%0d%zG>yvIShith?I5PHYkcFTs!&nzhU zI~b}Q=RnodjZpP)H&l9$L6ze@xEA_Ou;sk~syuf?mHQ*8_WK=5Z}j|!t>-kT^e02< zhl3r%Fb(r6sPNZ7mH#0)2z~^o!EPtoa^}MWFvnn5csta1@sQ&SQ03SJB|kqwrQ2nV z)vxKWJ?4X<`bULh1dhkN8g_zr!>;flsQf+yRi1a8{r9i~X5UG+K0Cq@7ybhAMAdzoySasLoqi%wdVy;a(fSa9zFxrpDsFu zG~k0U08>x3<`ZEM^JXadT6mi6&rd0l~@JN^fPk_qbiLg7o1P+Hc zIrF*{yUsu_2NJ%xm^Hf!zTC!d<05vFFe!6dpA_LXJI?|1ysF$1Jxcsz#N!< zmTk9)V-p;V{R&tNFNaF+2dH-2?QE-WJh&U?{ooF88kD~*xGVHSs>avo*zp`2?>SKA zeE_QdpM^c(FHrgKdakXn!BF|11J(aRus6Kg**^f~|81yz`~-K0JDq3cA{EMhGF1OA zhLW2`D1CMuR6Z|*lH)s|+T{(Xa=rz-!B3$2(f3gG*zbH>j{~6Oc`#J?;ZWr%f$8vY zxCgu*s=OPZ%K0)>K0b2%5$=q+Go8N(_JO@%5UM;!K$ZI(xD&h)D&O}($@%k8^}Yp4 z&U#&7<#rlWzWi`ccr;Wzmq6w7PG|lAD*a!e^4aA=o4-C#@;?+Rd;wH>f>8ByBvgDS zLl0g7`@+XyPq+yxpWnlNaL0>mJcFR@v!K$Q2gkrFxHnu2RX_JYm472tydOIL36+n& z7h8^odtuIp%1;m~{Z-I|XF!!>J?sNtg-UNTEP$z(SiKR2a=#KPzYjv`i+A7z*!fZ` z4_Q#@6hY;$%9#&$=Ch#W<_0(#-UB6nUqjXVu9sQ4oCejNWiSPnL&aAKr6*QE$=6YE zZ+Idc53hxj;rq^h?{&6(Q=#N$3G5FWVHBPP6>sOuZ9NTulEeL>>Zu4STsc&^nw|S8 zupQ=0p!CM&@M?H1ybG3IVZ(R3(za)RsC!9TAMyT}f zhwb4@Q2Biws(v;@<>L=1x!B<zh#WwFN4jj$~f_r598? zPll4Cxo{sCf|8@t9dCj=V%`Xq|5u;~zl3U!ovyLwVNmT|00+W_Fb%GR%Ey(?{b8u| zpMy&O2RI7ue639<3o1Xeq4HA+_k+hn$;WL_<+~lKo}Pg6_lz@t3spZ`U}w1Fb(TG$ z^0gO~+)RTCw;WD^7em$a+feQGxijy0y%(vWd<_nPKf`u# zpBt>)42GRBr^9Y=EHwQes$SuYfA&8BlU@B~&{1LDl;Uj+>#%weyWuUPeLH z>nvxkgo=L!R6J)urF#ujJ>L%%@2gPx{sO9Adfi0X;6x~SSPRvTcfo4-GCUeix!I=o z5R|{SU^@H>DxE>M*m{`+dtg2YD!=t`Fgz8`fpt-yo>)2f&?R88rP9DxGG> zvm9@Ad=4s}FCBNh&DP7lQ1MKG9-IYL?poLru5$KgKR=)pr$?zg1B6cqUYS{|VKPUxteJOE?U6y4}|Q7$`X|fRe8gsQNhws-GO;+^>MU zVZIi2gb%7Ou zE`hU9ax3Ar5U;+pyKVgMLbYG#d+d5;B+S9w0M!p}hjM=ns-FIYs?YR$ZT-!G%IBfb z$d@zU<;?Fp^Pf=lHRL`UZXT4}E`xpHDUR1dwa*5a3txpQ-(L6I`p<-WVLlM<370{I zKOL$+-2gqf5vrcQf``H#{%OO-;3Uka!G7`wyTi|+#+jd?;_vf-?Qi2?FU$o{=~Y0* zdjuQ-&xA^U15|wPLDkP6Q2qu!Xv2?(s;2^|_HBalcM(**J`9!aW~lgfddQY14N9(O zK&8JBDxPIb*X z1xBFCakR5P52`&Lf&<~luq*8RsLg*bxD)14a1=ZM&Vf<5AKU;t!Oc+e{}WVs{)AyT zWP_E9^WZqlx55ft`{RH$;Shiae4pxX08sQUN? z4uE|gxAv2v`r{m^{&f(X0+%`SZBXH#fvNBVsD9h|2|G^ogdH&VhW+7QP;x#6svYOT zN>~F`AJ4!v_!CsS4S3S}FLbPiD(5Pw`nUylf}cXw^Jb{_`2$LC?fR4(r=aqm4i$a| zRQk92Q=Yc+-xtc?NGN|rP;$Bys-9Oug}VeQ+yhm)=6n1{brau;T#Jm71-X&1+ z914~GDNy0pLACeOQ1O25+&evM+jmdsVZQ*Xep{g0cQsVGu7bVcgHZMO8dN|19M;1Q z&slR6s@_j_yc#O}!_NE`RQ`W}qv3$(?Yep{+zIn>Q29Lzro;Q4`3uKgU$FC-$*?o- zhd}9tnB%FA*E>D|mCp|y|Afk4-xuw8H3sg7c_N$!D`8J~In080!Up&Y{0FRk$?A(O zQ0+YEW!G??d_f6iQxxb@n^FX7jZp+!6cTq4MK7 z^Zroj&wxGPVyO5+up5j)wZm$t@|_6P-si*J;BC-@Pe7&r8C3p%gNnEJ>()FBDqqtb z3!vno40eI#j`dLKHACg&NT~jNJXC#O3nlk2L*?&NsQUZ?7Q;?&*!(Sk>Q9G4^@r17 z2;K;%!+vkFhY2g8@^Kqfe}4$JhaW=4`x#Wd{0cK*x3`>p!r_I0uy?Fpsy9c4lzZUKRH#oin)h<86KCt6E zRxUiKdK(W_UkAcHVLkNV32=9KEtDR37|P$La1i_rD!zT*wem6*D*ub12iL&8;0>@h zd+ClnH$&F{lBpCKOU++mcp)Z1snp8hw7iV!hPYRQ0@2`91MGZY1@B)n2LEm>;P9n zmGda5_B+R!uZN27L8$m%go@`!xF78QmCesAsPadl+(3EUm}q4L=RC6{MI$<-#<6}JDyvIkT?_JV4cQBe7u z4ST?Yp~@YGN_RC>__LwXy9}zFw?O%S$eCYs=J%n({~M}ZJN#j{<5G}s3o09C$) zQ0X*7_4|{c^xN%F;opY&@H03Oj{D7qYk(s#pA01@4?xw+OHlIs15`eC``xzdAh;Li zg;41=LAkGiD$hkw<+;(hKLAzUm!aC_1Go?T*0I+gR&Pv%3V$$E_z+b7kAMn)B~*I1 zL*?@+sCszE*>8dEF?apb`tJeNKK-HOWGoyHr$N`4{CfWgo^JhsQ9jf zz2Sq-{xxU*%CUXN6eGubLJxl#P~nQ8@>dB}e=DKNc@7)}Z-tVZkD%(K6PKsdPD7#E zX&O|!&WEa(8mM@Vh5g|rQ2ritd>!tKc{AJ__S(^g8w1lYmq4Yn94cQIL#1~Yl>d!T z{qYN^@%9g>`b+C<)5(R(|6-_c%~1VjjpKU9x1r)|-zCNLlYOAVl|hvw45b%Of)n7q zQ1$RVRD8X=+Vu8^s`q(N?)A`vr$EWY%~0{a2GtL~gKF0uy4iF_LY1QkDtrsff@`7L z`5l-GQ+KlVwa~W%{Sd02Zra((^-Ivh?CW9ce*jdzCPT@8iL-BplQ5qS)qkFW^7ooE ze+?y9KS2+6-^G@5I8=SjaIAvr_s78D@C>MSeFREQKXvY3!SQ7ISGYGEy({s;lHF|i zqrFm$-Z~9RUY>@UhkXH;!!f|y0+Ae0^*2UY%RNcH=Ug~Q+pa3s9LnLl;rUVUsm z%zzZvmk-t73!(CTnB$qS9p)RMVHS5{O$skpZ(xy zm;=>r&CdQtD1T2t>6uMX?fWxSdj0y_`k4ylo(GklAF7_4;hyjWsCu~qDj(~i>hW%8 z{{S3=`B^A=Z-)>|e~yMqe&7S@FZ0D-=NChKh^p#g0hc7tw+v=D%V3W6K-u)Taig_Vay`Brzk8g)c=MgCR{{Si<-#`!cOmpo66>cV!o(({a z3#UM}|2nApTn|0?8I=DnL#!Sd3?<*WZ~?4?>K7Xv--CIWe}$5x-2JS(A4+~!Ko1@X zRd4HH7x)rv2j78;?|mpe_B)iG=rq*oqtQ_1s)HJLPJxo6JE7$Gc_?}M#F>t^+fyUYiM(-Xf@cH#)9?9_DpW?eZv;zI`34K06P$?Uo9cVJ>p!$Drcd3^iVN z8DaH&8dQIq;~0c0-)cA!UI|qX??Hw86`lwCjI`tZZBX^F2`c_Cpu%++W#gF!J7TVc z(o?li@x|Z(cnVZ}w?OHG*`rf@2f#z1^z3y|@je6ZD$AE3sg$z!eFsDY~ITcFzO38;2`-PwNv75^Vl?YrwZ+h1ou$>j-9 z{p=*z4X%X;z^kFk{~1(0ZHDSczd*&;b-a~t52{}dh4Mchro;WA%25Y3uC0Qqm(!uz z?P{q0_#jj{e{lBwCRjNd3p22v38fdB-~@O(RDFI8m7mTNQ+#j1zAz1Lfh%DDNh#($ z_5vt#-^nSy)$km64D2%{#q6723^g8afsK8z9$m6+`6oj4tJzTcE(oP3&V!loZYaI-D^$65%dzb~5-PnsDEB2$_15fo5*&p2 zGN^id5-Q&xLe>8t&b?=@ZI_8qaxfXHUh<*z(;TS!IU06=$3ykwlcD6~95@+12*<+T zpwbyN-R3VJsy~%O*+-z-c@0#)*TO^KdZ_-_e}>fq;Po=N%*9{+P?)Ja`6FyM6B52NhWVv!L{19h?Tw zgKEDwpxW;>VG2wsvh~vrO1?bU z2@Z1h8E_)z*--6#4D{eesQABvs`nnnww+Spk(hI#^y3py{@#OX?{;%+`n{p#D;;Xw znGU6o0#Nea1eKrV@CmpY{sd>0*!IgVwf^VBj@SpG^g{#m;9*eduZ5bQ+y*s1ybIO- zUqRJFN}26%dqA~cKPZ2rq4JRlRj;{F`7DDAU=)_ZjZopdxwbsxpyDrrDsKfG2bVeb z8=(9@1}DI`p$B`-v+Xbrs=Z60@>c;R|A#>jo)6XU?uF84AHV@{GnBsRIp5}EBGhj;94M5A$-Ua&Ca?SFb?T`?qj3{1YmFqZitGoB|s#7eVFcLFmC( zUmf9e;BHq??Bb(4=@dODYxd)Q2u8^)oTS*evg5} z;X0^xdI_qYK7nelAK^&Yqr&DR3(9^8lzlT)yIl(v|HE(}_%A4Zno^l!`tfb3_WKa3{&o)7`W_CaV$Os?cmz~Ceg@^g zTb0#EU?Jw);au4M5GyYWq5Q3a zW8n2r?YqgbW3BC1L!s(v2~@i@LFu(ipvwOMlstV2r4RP3v+-m>nX943k&|I}cr{!K z?{w~a)LS{41|`RHp~5YPO7Ajf|1?y6dH^3bD3RL^_4O@Ab0zJ(6 zP~qyKtO5dh5+VbuU zOEB*b749@BxxX8Bf)7H~#}jZ3{0*x9PgrL6dDg)c%pb${@KdPpUqO}gd#L&!)MVu% z7pk1K&U`9Ve0M+?`@`ZZL3J2u;TOM_~!64(U>ojC?aU_KG5{_k`4uS3=EH&Er+ ztHt*JeWB(TX;5;R0hP{tsC>4-7I-dHd-Xib&ex_uwMR2le%C?ioBQEd_&S^kyDzut z&4(HXmO%NBK$U9^RQi`grFSiq+&u~9?Cu&Wl;5YHGcnw+OyLt zt6z79%GW5U_MZ(sSPfO5$HV3DGUvYcYFmGkpu)|8s+U8Y`A8@|x)x4@&%;dE<49Y- zB~bP4hbs3GPVXxm>p zzTk%gwjQR!bj&)=ZrXP4vb z_~^kYn1?{+uL?>J90{d|?trSd$DzW%3sv9WL*>8w@wVR#hVoYd)lZf~wc{;Na_|b2 zd~Al2yDd=l*7*c$-vi3NH`Kg#2vj|eg`Ht3R5=$zP3#;PFuY&Vnl6#ZdXY z(eVkWar%9zbUOUQ%Jm*l{cJo`c?zN8sfLRGP^kEtp!DgnQ29F(%HJhW{;q|R>zkqK z`$eew`V}f%j}xtVZ#Wu!uIrh7qY~{Ae@p`Cv#U`ls+UXQ4S0kb1+YeRWXG68`RZ!_Y z;Ot+5Loj~`N5Sr=TKUO@(*KQ)=R?)Q15k4P3{<^;4i!G-G}|6Sq3UrKRQNh)e;Q23 zd^1!&-hs;Z7N~X}c)FFBDewTy3!%ovwNUkXFI4-!16A)oLiPKeXV`p~Ko9dVa1y){ zDqowR^3nB7>plW1{W(zS2chzN7F7Sa)49I{J|KivL!q`gsOQe|-YguezUO zISfWH&w|t8{ZR3=KiBH(eWBzkA1YkAGp~Y*|7@u8-vT9fFF_OjJlik#g(}BLsB%t( z8b9a3gW<(c<^BU^z<%f3{N_WYR|VA`M?;nC0jT`E2&K0^g<+Vw*6mwC#j_DAf4@T2 zU+)WSJ|{uh9|U8t3Em06gc_eNztGD4Mkqa;a*@3^Q3#K~dk?c4BcbGK0aSWNLJwXGr8l02(kI_TtZ$Qao$IGnV7ziZ?Bcbv$8kz1XH$b)Pxlr7T)z7|i_8l*`{c$MF#=Z_pK5mBUm(N4R_ix8Nudw@Q*--L& zBvihxfy3dWP;&M?R6V3#>GU^LyoFHuDFh`iM?%TVSy1J?4k~|-JH7{1A3sCMVfU+S zdg)O4nh7GiwX=5I7qK5}74xBx1DOQ8B)6w3d{ zP#<9RQv})>4&47`6OE2@C2xGJPFkvZ$riNBUJs3xZZ}(h3anyLAB2+XMZ}B zp11}|UY~}l*Po&C-}wd`&pwV5pz>1ycZ8LW_3#eN%b@a+exsGonNaO|I8?mnIP+Cd z={^WGe!dS?Ki@*hOXr*He(ew_IbH?j?+VBDQ0Y7ZB@gdFrPJ|do4@{0@r{G>R|pk8 z2vsl5Q0;pXRC(4xwf{ZN{aNS!0n|L^XQ+Dac#CbnK2Z6e03{a-p~5#q>5(;1iUe#hHweEp&FHvy_%=0WM9 zAXK_xDET=Kc7>P11K0nQ1!eJE{4azS?~j>bTaO-j{%c1J`cBuM(8meC3bLJnR{B^tE z=A)nE6e$0Tpu#sm)$g%T<-P<;UpxaHp2ac((Oxi5#x*L_fO@gh`yH$(M<4iDONMnc73=FCwj ze`iC*dmWU1dj%T33*~>{Lsma!Ldj1U%Kk(+23`v%!*`*|zvsg?-KkLJ3PPoGG?e>! z(9A!fhxr{SJ@O~)4hKJC;~fW8o?58#o&c5Ztx)~>1t>Y_`)G>!{Z17u#C#`AfvBae zp3WLL+;bk^lIQrd0dt5jL)tNR@%`}*jM;Di9qnE7ss)DAIQ76i|Zu5&&O>P<`%wR=lzm5fVlyC)J)>( z#`k36)AJnP|HQq-xzED>ZOn5>SI z2L8XseKldqlJYPO^B1`H!>!1Lufe^7?}^U57V|LP@9BalDD4kF1UwXobopc`(5zYfc@{7 zKjC{Z{1E%w;P05H^S;Ep3UfQ`cf#-Sn3+Nu-P{EA>;&_1-^lm#_-W)jkMCVbPde== z-ivtkT#4IXpC_?cgWp`-?uJWTKHtJ#I!Dib*u6yDr@A!vhvS^Tec?4O-r4X_{C{df z(TCyB*rntD0w|rf1Mz%GmRMVe%`=M z&xM#7MvOks#&2idJl+qn9{``gEepR5_&tnoJ>wkpozJ_1x0ZLRvwzjGh&YD1ba3{4 zhWR+$PUqbPdxmA-<=FLtZ{i-n&d+-f?;7l9U>|>ebRT=+rY9md@>hVr8+hNq_`bfK zdq>>zd6(etAH1`iz5W(z@-q;_Qv40$eHMS0^S;D)D*kRJjK-}mvHJw`S8zwnvvALV zck$}E3j6r;7$2RT`8b!R+|J@VKpZ1^$6=n0pEYveVL9Nt#Q7~E?)VeI?sneK38QB* zZWA$gaek&?cOkFlb_-mZTi|f~#GvLBm%x$EEr)paA?!EUAM4^A0DJMKU|$GF@jj3L zD={zP{WozPh~17ZjyLE&gkJ~=@dy4O) zoF94l!};rh+pYM~b2z*a-jCnk@w+SRgL`jS&U+i~tKn4mIsW!lAom=CzXHM>?$Vfx zKRuaAY2J&uhWBD;*PZWLzK@1wa5Fp+zRmjz@eRj(7ipaUeZ+T#=$&^Ud&7XHMsP9sX1BdyES|34ZFnPs4sL ze!64+nXvtMm-4*;wucWB&p^Kag}=+;D(rT}e;MyVyn4beEq(8c`#DMG-QxMcKKc2T zxE?3YOsHoQ?s@nf>--&p{YSXJ?%XR~JVm$%v9Ey32zRuzf0*wKzCY%@jxZy6FTqaF zp)St1aJ!0k1#UgD`w%8S9)`PcFT`zk-YDOvIS(uNjynI>VfU(wa{(N{dlPPZ@(#hR zfc)*m_h;}p7iOhnql>Q&H$7hyub#_bt@9&uH_T6B{)q1!;y>4=m*xB%iTMirJdgWy z*w@APChjrkx4-kdqch)&`D)&!_&))D$}F5Z7)J`3|j zyuT6dbo{=H-SwF7aq*O5_X~EJgqecb+E{xp&B)%p1eGJw*`zdfFZoT0W_y$~{`0&$>_d4Fu*k!pi&c-R1ct7FQvjVsH za|j>h_|Jj2;C?e+?_w-a#Rhxa_p|Acy;A)KBccrV6Y>rFjla37BO zU~4qz9QQlFce=1$aevy`^(C!Bm)=j<9fY48%%AanF#H()!^PDHw`W`&vTAnraa0lS zwS=kQZRT5R%lPv(AKzoI=UU=q>%ez5)N?ePgxfT0O#HhHKa()!yEKnTKj3={>_a>Y`F@t~h4|}+`>xn!^R30_0ldR;-vi@X-t+MH5N17_aGQbOWB5KA z>bV^EQ+YS?p6KjezdbS zbiq6i`#Klq4!(DE-*4ilEAD^5_ldg(`ytNlMHknxm`~+>2|snb?VbIu_}>k)_6uI& zt;RkDv!2Ub9Qyv1_eI_#c;`9$UVQ7R;H@QGD&f}RHUV=1Je0T(;(eF*ZQM8G{s8ZT zN%1QD`M4jCT@XK)z#E~SWAPh*>haU$!mYynT+H8K{tzDLJoV@MN!+GjUk}f5_S&n} z^9Sz#BF>{>^5e%pTP414;b`1f^ZgzkcIEqd-rjtlgxl-bACFnjkC^Y|Js9&G?AO49 zFpuE-Ox|BHze^ta;kOj_=beE2_qb)?b|3HSyhE_p^CI7R_QPGzOw1ebUyS)B%vZuH z%z8SyFuTBI*p0=m5ciEP?8`2$e$HPJ?)CWl1^2z3+fRy!XD`{oudzQD|3jVoVi(uX zxZQ%?74}^Li;k}%<*p>5CzQ^)?M^bzbV2)z0bYb4Xd;$KR zCY}IxE8!EE56AupzNhnj9p8H1bG(r7C%ZV0bn#5W?caRA0#A1S-XY9*zQe?$=TN>c zb^fglvV^%E_WAg^$%XTX`zY*3IKS)Q!7h&5@Uy>5dp`Cvi0EoI?d;a2?o3*L`?iyV0#!EGph%5mG*#r=Sb)A~U7^O1qw7~Tls zE`uLqcLU!S@ZEuMce^wngy&*^J9aPNwj1yJm~X{?lZ$XA-)CS~jrkFHAAU}T@A3wD z^*qP>u=_R^?w=p9+s}Pxlg2kL&$9Axd&=eGd(3YV?|Cqc-AB$|{*J}IFYJNc%d+74 z0lVa<4{kdUU#5${0rPVF%*Q;E@BQEtNom($_bu*+VfPLk#`_@OxkNgOcuvNA9=sc# zf&CGDZ|2q0$?;(9m-EJ-U$B1&|M6!(($LcZyA$}H%R3tXC&9eBd)?|odL+px=Y-$IV_qwf&m&LqAN?~%^_CcfX|`xe}L z;J$B?e}$Rr%GeQqdScG3??d_i9{WMgZJf(z%yD#*-$$Jvg*y}bdS^ZvbAP@+Cf&oZ zzm)F}cn{;fD=9BuySR3T{~}Bi?v13gn(u{t?~VOZzS}#0eENPQd^Ts;54UsMh} z&*ATsB){`;djfMgZr}19e_nK9-^QXlaXp8doY%)az}YUIPx!uo?`vK8pGby6=l%6>gL9 z_b72*%d6)z-n)qJL{~0j$vK7Ny@%cIxLxJUU*Y~X<{Og2>hluP+Zp@kU>ac#=Q|twBYD3eOi!4H z-Ho`V@x6}kPP}2h^@On3a}D7ayFAFe20sU3eu(#Z{G5Wjo)GVSe4mB8o(*sS?+pBX z!h3|`aek*`o{8HDyjKv%EE~jkKKASIa|`bWxa|&~mYdh+iG^eSI9{fVom-?z>5TyscbkXd*R3=&*!Dp1*&58 z;b?3K-}Qk?($!ZaSX~phPWOuakr-JDhrDQvPtPCoQtRp(Q=`<9&rA180~N7w#EUA& zsg1^}%v7kgN%op#-x#V5g_}Y?Z&6WkSzb|LMn=YBUuwpF(Meur$&BJ9GjsEcmrO4x z^BVjSe|>-opah3D1|xx}=l7`1#(?ua*T%HHV7}DKs9u8C`>EVeb%rmMI2sxP{zz0c zUJ(w(a3Nakt7wO4OEea!_nK;g6*XQk8X6q)OlIYo^aGJ)0WaF%uLyWm6g;P>G(8$? zsS9}J;czU&^YTJeR9zh@c{57pW_hui0QFxHZmg?R@W#3rE#^(n%g-%6u(XUe%E>J) zE18?EYVd+prf`xluhJj$lfDL)VFVa#1G;GzX&y zcyV38k3>Zq0u{lk7B4*=wNM?1p;P#-q=!l$v?K?t3x{jHx?nA`67q7V=c!X$0h2ET zwK9O3t?jR-!)Y>z?ppZ>aDfsx888f_a zgHgWe>E7VfiorI3nyD(>7^*a3oR3!hh%R#p&>~5}7zm^QC;8HfONwTcWER-W4bjNr z1`n(0229(^OOee+w8rSM8b3O)Jb*%KtyKc0d-?wIK%KWVH9FWBqA@i>uqsI7Y6yu1 z>lq~~(^E%`vj2Gcnw0p*OO5){(+i49a?{iKXlSVLiZjb*u1HUBo-oenOkaA9t@1_b z6~@9_l-}SKmmpRP7BBV|Nw1Ey80BeHS?o)%^HzB25&l_}9$jqoXJufS7mlJWYcqTq zV|^pXrI!a|jP>Cd(#t>`3^C$VNyWR~5MbE+8()o~B!8nv{U@>gjjuMbO`VsS&#ERf zyEu>T8A@LkuA?p)9-?$Je|5m49jz-(QRffVo3SHd8LerIRZ8nunJI=ZGbg9S{NoYt z++1%_L1yXf#nxs~Y2LzI`#o})>_;vdCjX<1Vbr2wwmxN*TUzSn6qc6emdwi~zT$%T z&_g{rQy^4L_MABoQnnI?xJ&X-&-5f}M|P7(BB#MnLu1UNLF*Zx>Y|h4_Tk3ZUmfgR%gFB} z3Q}3=70=C@oqOOCiIp-Ci!`EhD!tl3ixR+tU-f{-Vpb4w7NJ0_DIBR~>Q>2spYRvA zj*xJGz;$)uCdFxlEz(GFnu4(!FSj%s$7rpYU1&byg_r@^$%m#GUR5MqFCWY-Nk(T17``g&`(h`$L-W)<~xZ6+(^q%u$uX(1o=ehL{;A!+fy_>t0OdgJCc z%tqDnwKnVZOm2b=v>5}7x`X^Ks`s5gIWxsp=wds*mzCh>mq9-p&sLmCrKTMJ~CFKc+zmz7skx+G_A zL9w?eudr<72=l$zmz7_XJ=>RcU|H^@th_Q`mcOF58rjmoSTDt(1xp6j45*1=*$7pQ zKUzaqVKDb)nWE(6m3ZMQZ|3w;H53@yS|AgmxHuc3s6do$0Mi}*HiU$lMU@RBsZ}A; z%gIcoXD8UiC42SohCl?Jh77iGA&M~TicmEI<;tP}rjt|#${VX$vqhtnRM|?n&<)GO z6uGUNA~&OwJj&ot%pz0~CcLbfnU|wP>}t>0Huz&TQcYcwOpT$$8Vu`5z+bCQ9QJ19 zWcjk0c=)o5@{3CNx1b=iFvnZOlBRUAFS~fImsd$);uET<6o66Aj64;TB^>F}>PxPg ze4)FOolD1#9X-yh!WcL0dM?|q=~)H&h_NO?V<^8qYikv+S5j2Kq(G9GjZQ^4SoKr| zs~fejWiSkqdcr9o=3cC&AwU3Dv0f(27U=_L%x2LP3D+fCmDU8S+W67xNM)`fUnFD_ zP*f7X04kx%uC{E0CS=kK>hWY)4k-pVxJJEkW6aQ+Ru>Lc53%#Rw8}u0AH6eVdtr)e zTB6K9>O8cy)UlV_%t}fN@T3q%pev9?7Bo__REr-yG@4mQab~W!fSFEXs38(uM(r}F zdDV>p<~Fr~NGMR}s)W35I~JxcOU8})zlnpDo5_cg*97Rlm4SF*1vH9T<@(z!Z!^TG zZ3jU`XO=L5WHv8}`%4`-*L+Rax9LQE{B2O&w-Z=;#57UVEHt)`JumZbBR9_5iMt@L zxO98z$}Km4d#=Sr^K(m3lG};6v^cXQd;4WtP&n61EAUr%6m5a4?;&1IupIf)s>mwz zt&3`WQ2iO`O{uP=5De0>ZM2G!=V(TYfr8D3od z+hv)0uo>s0E$oFgduBnZxLN8mabs!3{!x6Qp}4aPib~_or0WqYi$P~2on>dSbb^6^SZD!w8;mvn#_Ena(;}RhHg7f=!>a&+?9#89Yt&a zCf1&sKzkP&V3apIytTSBDw&NjGY%#8XyxukL`~+|3iY%LVyu}kG_v;)4mU8WhC|FS zRDt#Nl&p$z&}N&_uHGM0%`*`wo<0hn4K22WSZu3&NzOE8sL~&)^z0N+scO4WlVF9U zRMU$~=VyAAj6f_ijH|}{Dos`VtOx=DPcxfB9*>Db>@Qv#;$tAIN39xEiy2;Nm``R_ zjoLA+_qS;9s}DvsjRH_b{T?Na7b-`GRZCK(?|=vzUF?1xoBr zb>(7T>k>J~Oju)K=1iIwDd%pV*|sSWYxz!n+k*%;R;rnzuv5*ZwB|Q0URt@olFe}C zfvv21w#+nRRBtC*dTBNG#;aS6%4Of>tU8ytDbf`S}6NTE7VB6#v)AY5|+`% za@otKj-7YB#aFJ01?^TYZcXd#jY=^4gHrG6IBIh%y@_a-`RQfatd@;!J36Zo@MN2$ zno_Ucj+0qtZpY0IFRf{`&TqB79e33nm}xU&!*saP&iLJD(sbXKV>UPu-MVmOm=?;l zc&!{B|Ib5fumc!3VowOOC+}$oha5UnX+d$TLF;KVJBxRJ=WDo|y|cMkQs$+N7(P;s zABl!(<-s3|+e zCTU}B%TN>W*Rc%{AH3p@e!FucjU8x4>Bj9%H&^^p=9*o%I=RI%I#{*Gcoq#?S#s$$ zgqs)&?Yc1@o#e7nD@Hpu&_ATcwUw+F-IJ8GIYFrj)Y$`&Hg3bUKV9Lp4yQB$ZEKRV zuu<3?Ezus@=0z)4rjxC(Mv4kn<53P#n92w0%LA3B0i|Fwg7s(^v+v<{a>-XXq&Ql4 z2JHOb%zf>4yLydHFTQI)*RlaBh&p7 zF*BL)w3)~FRYS9x(Nv0uQ8p6yR6}yZn1!()7mZdm*40Uqn2cE$?Pa!g(->0e8p#Mf z=Z@7OP9cL8ZE~0xYie-wVn$UYO&U1~GmXbl7(#Dm$#zR4C#;Z>fZ`tJ9U^&E?v*V$ zux(0{R%w5$Dj31hOm^a~jSXr~FE=YEGs7!DnyZ4%X6sZ7SZ$7I^{nRMWR<~F4T60+ z`-}DdTE3VnQSVh%tWC7_Xy!HyCK|}qXIMYdIwhq!#dd(z0bzzuvr6SwgQ%u&%=gWK zOJatMm%@4TGD{r1Mb>CXFLS^!i6pdnN?2xzk^;`o$&xUs_2XVcnn<#BW_Isv=+VK&0=#WHQTScywfHschL+4AX zPCAOI!noFxj!2vpvBQ>K=;S&ZJ2-kH<7y2JtDdPz?_a!(GV<$2Q*ZP(0%%zDnVl!?GnzB6 zR%5A-Y^-sG$7O@!A|}FloK%kVa^{v~YC1fUQ!`^VDq%IsXco_e(*#+ukM#8KDD$n! zujh6*jfK0(um~MxI-N~&1>*~c3%=<^g=MAuTf!Ns&rT0;iD{AUHTjLIGku0yFbf*1 zr06y}fpY=4zY=tpW}3VBrn8@!URJbdnEN0-Y!=O4QLtjhVh;!V<(po%B##R4)y%O!7uF zr#5?wQlpE9wSJOUEiU50=zlJ4LO8z)Y(AY|n;EpQl(S|8X2cFu+L)}X=E=;DWmV_Z zw3J5}Y6`N#6cmWO8i!V@n#0#46jHNsW57;)zxkD+C2({Tc?7$ zy`Q$4G|4t&BeEjdH!sO(CKasrL+}x3)#*h6UP01d5 zF=LBVnk#TtswEtW!}|ZR^#1!1HM{$LnuFH`IM9`jGM&s0*Qr`KTY;>uYiX#l9b9_{ zbBC(it1A)$xy>xgWXggZY8M6Fp!2OL#}(WXVA6?&;tp2&Te##ugUvBBZYM5$5Rb9Q zVhZ9FubZ|yCL&FX=v#rc_q6YaNehCfoS zl^6P`%?&>(Mc<4-NJoGHo42iIunZ%1Cs@O~)_LmD8Lgp;vu5W^A4M0p6D*oMT9f3= z4K=gB#;FnMo3qh0%@gc>K(l^yyI@0TvgfDygKYPha+6h3!@`gjhtxGhE*YcUX*Vht96^j&?re?*&&ji|xANJM*el_^0 zmUMJjF?v*DD^&4ltha7VXyaQ4x}0Pz%>r0rXB<&t%)A(`nFY__QYi0mnv^S=@hy23 z#~t12jv%_v?2=}(Qf5IO(w=6NDX(qR2#YgT2wJeZ?dY^zvj?ZKdbn;sntw7Xs;Z}E zBtB_5+Q!@pVcgQCET5FGZ)SYqYIoa)NoB{EA8tXx5;w#6(>P)-GTIfcyNnQ@EGI6= znY$e*dF?x}gseBpC0I{cn5o(|0yQy{LQ}dz>OH1~A?pTP^J+(&0}O25{BWd>+y){Q zW)GIH=E}zU1}{QjWL`HwGx)#p@Z}X`&d{|cLwm2uD=3;E*y0D(82sa>2whJ0zcAMF$T4)uy6)$@^G4%!0=2nPlTver+UD0*+d5tt>oQQ(Pv8~m~g zV~Oo{*-10`_6#ya0V45T7v~l~k_iPlCTHSP7`9s!=yK&(i&p1T8PB8;sk#zytH5il;a=owuiQZ$-N5Yp}-nAxkj*=|q^K`RsXZhB>uQ>$;Qg|q{i6ouV}RQA~{ zXBp2$vBaV^5g%QNQHMELtIhU3>oSxsWKpH^uFU{*qDE%TZ3$aKZFZAt27dr%c5X=_ zr^346!S{h#MVTczOZf23j_<-qqL5DRu2dO!K zxdq-vw!AcH4e5DR#1Onx`zuDXE^dp=_i@J>fxw9bD4iC z5{~ZV&~A7+-EO$%3EW_-#CNEg4O&`-P-aZ7G{b3<1FAaa%h#rC>&-WEFN@;rJl7l0 zfW}5w7u-!nXJgf-*{d}^61~Muh_vy6#z9?>DUPd*P@w~=877EJa}m2OU^Y}abJJ9W zeFmmECO++{+FCYShR)WCm6i{cb|n3aJymN4*tXWrWLzW`QnAj?9nBgh@bdW&@J?VQv&}zl1lt|B<9q+nmAW>rl`Q@j8HYhla-5>{@GBBNy_PQV^#t_EU<%zPWRhKSUCR&JKw5$>q|0({&7C+(K#Hjxw(sgIN4Q8BT6OxR z-;l7C5n~d-rbKId`Mu%=EWPVnb7D42lQ)@NM2vH~0cs>Tes5@-PIkJz4JX^6+i>_x z2%Rah`)V>}#y|?52-S?9sA0Pz!j_TN@22+ro~+wOLr+qvr0tTf&Ll-;rs0VnWNDwi zb)92lWyeI5d{g8)q+2H=ZCvcoVFccs6R@+XVM$Q-(H|Pc<)bw?LRNn48xwB6FN$uCu!{9jWAP9q+_{ z#1QYl`e|H**^jB-+M`9xNeP%Om)8|ab&~m5ApHN8u9o>2u3p#T-JB*5P+JX_ssOm|+0$)L9wwCm* zKecdM*9Ap6bJ-uZDD@TiE8@RaV+1w_SxL8kac0lJtwQ4i7sD{eAv#!LaGJuk+jQsQ zfNCxYgd^4aXAlmdHroi%YtI3!VL-s-V_kOv zPVF5uZ`*lo%~zY4ikV_Yz3f<|F1=ZDFn#2R_!MlIwXQJMqs$nSxHC?I>?Gk|N2mx2 z!>z7ln6&K_lf%Ns2wO?^T*vebse9G6y zvzerAEVq!f^)wAv-OeC~`T>U)!y3^^&RR1Gus6T73(xd^sXF0cPW`!`XEq2E{^CIp zKzrTBy0nRw-eaymnWcQ|nUA+fJ1$&wFDxqaO6C?8<`vH1^s#Vmf!?g#k|jmcmz3sa z7Zv7|`U?H^fzBlX?sqGPopSnASd zm~E{1WX(ikMj1^+=zQ^G6&Arn=laMt99sA6l44FQv}|DMLw+`t^h-W-lvSyi?eCo> zii!Oq`^z{vnkAP$^wWrKWXo97IkuZU*6quJ;YR%?d#hzT(I!;A-J{aMTI*F9(ha3E z6+#roAY1HN2SVY-YV*q?L`u7mYB*PErk>2E=hC+E^&EKc(cSnNd0;cd|^5_0wraw)o&1Z*^uO$gvHAz!fp)BZqcVL%*wSY|ved zE^Qq+Swfg%cIlj!ieBat7=Dmy4gvz^*9#hD+-PXZY*sI}$>`t3zQlFO_&`*ORoP6R zs~q!t4RT_7O=9C6QB+SUE-EQA|Fr#)q5CaeUXHKW&q$z6X}%(KV187g{R}r(rfrk2 z4E)z#G!52pyVbOMd(kIf0r*e+{A~g;_FZ&}fv}NP_sjWI(_!5Vm@^bzfKGCyDO*kU z&j(0r{LNW#apHGK_AB{PVlhYM?8zotii&7G@66~jml|H$K-SFl)7FO7?KTDhx~e)x zoi=c2(S(|acOr>{OThlv(aK$`Wys4bp2u&J8l@JKHp&t{>;b#IIjPw`{hxlyNkw8d zR?HNHcX-sNWi&f^B74hTtWhUD#kw~;gX^Ev^N5k->gu=ykYv}UF632PlWG#@%Nn=x zCEbWO+ekJ(XT=T_SAkmC4>PGaTXq-C25cM4I?7V#jna{?(|B#18&EdPyx8BNH0DgY zjdOh8&9p)d+KfLe5ec;Mvb}6`Zj$(0APDph@Xtdz35hqPPkAqHH|Fl&`SKR9o^lt<&!`2 zH&yI3B&pb@v-;hJw3+RsC8j&(fYHc0LTv|n21T=XjnM0FE^s!Lxch6x#_UtKaZ5~S zb!*tT=tmtM6An#LG~Sow&fub^$6t!g<~bvc~Aq;+1yR#5{^04Pvg@R79}P8y2AX%o%>Uad8y6%8x+kMm^6i9biu=4 zPL$}$_E#1q%pjSmC1x{rH=^xd25^4b{BeMUU3_;bZo%X*>8CC6T_Kg-BqRk?Zx{GX zn6-YE)V8WuGZ~a`7Elq-9;#<(hPuT4Dx$<39I{`CmZryaERr zEMtF3KzHCMaC|;*ZUJDc1+Eb&He%3=Rv|ch;)>tt(eVhk0EwtEE{l=U1o`V)E9kCyCy5DUmsU+GN5)T}`hUtTsxZ$`HDw<#9Q zoG&rwb8)L@uQ0dF{DeNYWO`E%Ax$1KbbhDtSXX??$6xUVlxkBRGpx6`wP}Oo2Dd6rL#}*ss+V*( zfMe=X`-?p@J=EyL(#IT#Ck7K$quJ-LOx(Ng;w$Bsdkj_a;XS^b*Rfh$SKgw^j8& z*R1A`xtaT+l*wNw+170xv(17K@dFe6ZjYmD&im0elFG>}8Nxv`rf~@C#s5GQXVXTX zFtj$Z8>6XS#7qnkB|8Ps^%ljg9h7Q+1C{q*q%QS@HZeD+wv}?3u2v=f)gzUp2;v9r zT8bI}`mOF(J~`2@Bwy;muG8^1x8yIzUn^MV=Qjxa1sd~1rUJ8_%^(-+k~VTGcVdT0 z6Akl5jU6+!hCkS+ud!3P9Ly}k1ZOd(Nm_-M$&Ve(k86^n7$L92ypf|OOyy=mfFH^v zVyohhzqm;F3xf7{wED%$FmFL=PMOIoMkWbL1|Mv#=I46{j3Yc`TWq$K#=YICrJ9C}EA>jM9$xp&>F zD>>72=ik;<%+}r-DV4R*!G~>Q%WfnjjgFFOg85gJLeaxj*F!k6Sd7PbTktb&V>wfm(pS=Mj+$5#t04`$ZY zDPwNhaPsuAow!oH=)#YQN}PWB?CDF=X~LcCA}lUtHOOzEG3cF{dkfJ9vp&mf#vY;q?;0BJk@9#?} z7fCUkEipCQ%gmgG`fjA;q-sS{J3~!RY`1^_LAAPviVM(*(CIH3J*=ncOm_7I8M%)U z@eiT*F|sfcl^!%#38-P)cSc>EXt5aK(ij6aoK2aGVUUumU5Sa|;3$ZhLKsdi(_hZ? zSkWVo!YW~LOFul_JHEoWBPROkS8`+l;_V1)Fyxz%EYbf;&Vv1vr@|84q7Zu-tRi&> zvj)5urd@5dPTh@&?`DI*V=2kRwV}dGn091q+HiMMI#QVdPv~62fbC)856K#4J6o~< zTZv-jlUEjnE`fUGO21&<%JZ2l=A+EInAIb0rAX{<}>4Y_r+K6L^6iUoX7GlXnxG zlJNwdXx*n9a0iO7cA)rXk|^bJTYcQY2oC^z3zrIX>r9vfV`f|F^S5W3y2kO@fij;B zkWcWn7`CrA7YD!WSHVRN7xv@#({->05#5pO1=e}}8B8LqG;~g~aC(ryC3kl zJ-s4Y3%`?)q*kvk$RhK;*~Hw%e-FmZrp#4rc-shSf@xHUSDZ^7M-99kQyk~8eX7sP zxgMmUI2K)xPRH78*%Mbth#F5DaC~(bo>%;>G)X>DWXI)$g7zFqNkENJ$mPY}4#GCu za471?XY3vy9coESCxlhSie)Mb5uh_WyEv4mt4c-ARvi>RUD09q8w;C{x(EW3U>-dd zc?tY24ZxLY!y`q@7d3Zxxd562U7IMNJvIfVJuxW@eEK^JB9IPAt6F`y1D@HFXBzvtScwt>>5V0BY-p*QNIJn-pHmMx0{ptk78#7X2F{V9J?=y|eYC=N!9jb7#17C>b+R<1k#J(3E%eZPqHWm?WK>x10 zewEH;j%n#C<;hm_1JJM1K{^cf^C%C4beW!2&+4!tPlje*T}a%R2tIywdXjkVUCAha zzDu?IVbRXJ1yK>t*T+_jDbBJS!6`i_G49 zfS0qY_vZUgx6|`c`Al2Ay5Z#L?v%=Bwt3|r%wW=`naJ{lgt-dhA~zSOi(j_4Rf>LN zH&v0humkIv>b7`I70TVL{} z8meF;i5VFvr6rkSM1<}uAx;WzyVYD@i)4E)FuA;gU7+YiV)kNirWk+aSf1uz>r*Ps;B}0g0kp$%1)p-COh5wZPc2yKpkz z!p26x#^4#(6gg?ywIvKhGT}AvAa-3}pdF+@s^2sBc7Q}=P0Jlt8f8Ez3JYYOz`MF` zrZ0nhCcFm`PLwJGhiZHJ)a_T<;vtfVswv-Yh2C*GA#?Q&2Q$s@cVP4q1YqMuith9l zKm=v)sp_#YgYZZ4B)Ras4~dz>5i-4M#}xw%8Y~uD!4!TfD#TbO>oF1*h@B+eg4}AR z-c`LiGbNYRBrjUaJr3GV&5nj7LK6@EJwV?m8^0sfJ#!tV@9WFL4jpA_dtUqAWLf=Q z7`Lx|ZK9}q3y`YaSep-nx9F(FyFb4ArfmcXo+3y~hKof)nnXOqT^v^}#InRUVVSCG z+13u7s*mFF?S=)kHFRZr?tEn;^X=+}Vic6LM79~py)%0MD{Prz^TP?_>OhZ(sKnzS za+RTP`8t}b)2mP!+A*%;$Doh`x0J;UA8-+reKr=fPq?R>$S#dJr9k2lL;w#2uy9)f zqB7KS|Lm)o$Vr(qMq9^22b6;ZzPfAn)U+uoxA|!1@yxHp1ts?(VgL9J{f54vbD&6u z{uu{{Sp=3pE!6i%4P|RE0NDaV<@Smo3MASQvc0r2x2&W)`S-}S(@>v7us5Rm?)mO^ z_?q(YWcc&#kS56_ZXTwpr)L8Iyg|5_&=^u5djAurwe+jbIxdiXo9d4~4CsYQqjv@g zp4e#f=)QkErbh`L)~Na=F^YVj1}&uazVzyit-)|Rab+>06i~f2;3H4B6C-7KftYHb z={JTtW>mi12p&Sm8FPLuIOp}{*=rah8RmgtyHVwrdv(j0_dg7dvFv|P%XH3U;J0=e zDO&13ocn0IHRIeGy!kLV|1h|qexCZ{ZL2uet>pY3!uysQr}9p!nP>i_y(=Lb)Z|0J zANR`2j@z}>4QC|PXo!n+zEaJ?4JFii+tTB<^l38tF060qc92&KTeB~9i$}cbOFTT& z=@a@hX>n*{>G{gs=BxFExY%N=y5+)+^ya=QY_>!}KR|X~tt@SBZ{6QmTUeOq6<`nk zwF^e&dXXOSgDk218)@re%;ishAz&JzYW2l}jz#$+pNnt^qFMwoJ!<1;q(Nx50)U#` z&cco!P&v75$A(RRbdTAUOB*jrtyq)StLrIULS3-Bvgujcs2*-fPi3sqP4&ZGSfzD# zw*5%xJHJDvenN(>GPSsc#bH`FtE6#n`{|nQzA4*+k5C0Yj2~=(m9)>KMJm}d1>O;Q zzu5vp;VL8T3x4C@EjhGs0^Ty5!GRDKl4Z%(meS!;<2{ZYgY6UKh&KcHC>04lyqHCg zBe~nwY={MF5kPEvc1vz)+gmg8|KV9ep}4S#Kf<<6ov>_gH)7GEqA>3)BhT7aj%ukS z2`N24HIN8#@vVjLcrx1_4`&YWpA&!jU1?C}GMRFeLfTm6w-K&#BEhtv=8^kLnpX2| zPDy)h;ptm=Cr}J}zU@G`Zo?$5;jZRe@pWHyMzO+ENd*(8#0gI*oKPUuv$tA?a;y3F zZ1-F~gkKpSOg=Y8Vg);5>$8DJb7$PUv}I=$zSjEK`$pz&<@p+`wX0FomBypdQQfaLL|sQv7~kx18V&12A%B>$ zAz^yC(Jy|X-8lf(Z#rd1mr`|qv4_Ah2!!Y!rPQ{w4VkVxGZBA{N3XTPLP3NySY1?} z3af~IptJNv6?OQMrpX(Jm)IY>r4xN(68k!p#@Qf(V#3hI=T@?Gk&S{6s{*q6_X}`j zwkcCQmwM^X1XUY2Q%alZ601(}*d`|iB^oy*eXR4Q3XWB#b&xFN?OoRHsC@_lRD$|= zCIV}e&TGi}dZ$HMhaPGlB-jds4Z;`|oP;r{7WIp!r`74GlF6H_#@hxK)!pPXpAS+} zbJT{TcPKiuDY4C+Vd}Ubj@?|{Tv9bJUFXj59jcQR;K0e1Bf@KKM9$sC7iucY{AkOk zEE4w4P=8T@bjbDOy0)Nj<{{g%llrsR8&Xyn9E(f2O|X zL^0h?h;yNgUFDnVFP^BQ6|RfD6>=b4y(Kh>Q~RVm1bL{O3cPKueYp&2YV4+FUcH2F z9ly_WREp|>f@jIMGt)*^Ml`Y8E*vE$E-IXHKdw?nb~BQjHmRK)sc`eD@dY=ai@+gs z1Lg5#Bc(ti90RspU8dpVd8By@ZVMJ0YGa1quT2TC_vTC&WCgMB;9*8{#bfPRRM}j&AC3xMyBVwm)qKvJHH)DYcDmlP~7%qOdC@3H8*^E)K!@zsNGpE8tx z`Kn#{M)7AE9Ygr|>~u+(kzJ~g!X%;3G{%L4Gf3kU0rM(Zh`L2;MfQx6JaS2SD!TVT zGvb7ufkVrXsBm;%$3p^Ep~%s)-T2!{0*>+ba;76bE7idfcXUkVWfWHCGc|*%DzVr& zaB`>_PmU5t?;Ty1!l6RIm?*8C&)8GNbcMw$+}fgk#5sgOj_0c7@jOD7ivJ~jTDcR^>|uPr1xHxsS`L>_PGJRA%ln1@Wt$>BLD3+EjR72@^@ z_h<0Y8_$>S+3$F!osaW6Zgth?eckcFQRLw5apjnnTMO0U-cFIFZ_$l!gY&&6wBLB+ z6D@jNU)r3sN~ErA8xVX2B_3VOx&w#O&gNz1uRXMjy_2C6u~3ne5xt9{bYN_qXe|6o zR>DRSaE>SlsZQUw&oMse4;`4b_0d}A{Z`eK=)5?;Iq`(8cXsMaB`p-dP9(8al}uGE zteKHmsSJTDOD?XA*Q7OXeSOf1jD1<{E{&=lBXz6U9ketc;c&VEs;AeoY-*)NPd`!FhxmAn?Ur)jg~<(02O{eiNvSo9OOY7m?;ftHlb z-QeMHHEy;4y-`Y&{|ua2ob>hyhm?b}GXeoa+?a-C1>ZxMVInEvnRWN1wZRhJAGzx$_nl&%#fqZ*1mkx*qxc| z&_2-A6^~(Q6+IX!=Kk=fJn63c+eRtpOvV&-sU7MYUG8RQ%b)(@;lq0kUhbiF06I!A zPne3_taK%guRM}{Ns<9hswtOlcraOw0#cNO&glF3gg0jKkLuM{)EZpha!baY*iof@Htnw~Ry~z^6aUDUaU6jtF*C34h6M5I^ES@X$6zL;UI$gFT?t~rTirTLr80b?~ z!i}rEV=`bL$nq#W1$w(Ch+ZB@nq7&j<)tZZQA$h@P3T0gy2o;=Kvg;D+K}&u&IJ^} zdU);+8C7=d)-ClKfxAX1RqU~tC)qa>Zf_woH5P{zP)v2} z`IF?@9G>l6l1^n|^Yz^N`rIF1<0G|NFrw)8`YH|rPKIO=% zDOG~r$%9a43S-=6?SlxNs{(3zb~FmgVq zVXs@#TJ$>;BDR+3SSsi})81?B@KIQU_^NR}ry^@`Cen>;0r&8S^OePxv%Muh3LQvz zwX86Dy0U@zz)VRj?LE_Nb(C;7855Xl;-)4(mIP&_50^+Ah}_qZbrGVDg6ezC<+A&d zTKYtNGX)f5UzmcV=xNje@AUJ{+NlsfS7C`c0WGshCrc)L( zkRdIBR${h=gIxRl!$|(C$~aGTwe^h>K0evNOuJxdi?tbEDGoTfekmwe4V>UH?&xW6 zGalpvp+*uvpiR9$z$Ciq%(@-p6y1pVO>`FOe%|hw_Rlm7e2>M5L7} z7lz+!G(8n8&1y`D$Ozel@GF{afHRp*nu4Y@GI!H^Me9dDl6E>4oTQ%%7&$0g!4^_I zT+W>2qrA!xaw-e-j^X=8PF7hu>?B(=)5G((Kck$}!*9Q6BDTB)pEJaiq7Z7-ccO~K z7knxwh-w;Q%3+7QD27s|B7>LM2R1b8b+c#OUC2ybyqC<6lpn}+%!`uQkYJX1MCx=@ zz8oJVEwBk`?DtYPw7CVXabB4~k^o*F9^gII$i^w;(WyrCm%_qGb5rubhu}z;281)3 z^(64Tm+b`%kap^MgX*Fr_;A+H@7uTB^IN`82MLNos5e8 zKij(zvUjhUy!IIBOtT$Z6iUT%$2TRurNScRv;*d9_X=-U%f}>F!$|V+LDyby zY`%KRvWc+_8>A$AP<7`;AuPVqBZ*w9qD#EIX}aHkq33+G^t;-Ad+pN}>68Mjkk7b@ zaamcCAS>z7QrtArJy^LqnW#b{5t24cK72o3|DUOi;}JKnD7k<1;y?GujavUbR>*F8 zfFa~f{X+a*y%7)cEAqBV@lof_43z_#lgdP^s={BpvQH$v2N%=|nYr`umyum8*3b%Z z*!Ozi9ap0rd6pp~{pPiUjOGMNC3V?#^*o>Qm^SGjeTT>< z2?}1njyxC3b5jHd$ajd#!TcpMTz(ZK9iW2SmOw7yeGZMxz;);9Lb&*u%M5A2b_! zgIX_whd&^l9fU@>7SJfkYdr?cxme0N*(Q%-XJT}&915{q4B$5k3Qu!Gi&jY)wLlz+ z7Ru$5Jgzfl!;B~6lV$y`v1r>mmlug@m^fLFlJ;H}Fp~*=SW?S13dppd_+6ir7!lKA zOOuDnUN69rg4{Gb^%K}j8Kx#xjd9ja@LSy9+a7K`9Q$V>2t^f}bFpSNU!FWXJAiHcMj0auCJNLBQb zxW5=eA4ayIrQId$cAuCmx#l5_XbNnh;(PM)>RjEqy0*y1CAQk=#?nC24Lu6ValdJ5 z(v$_Gm$wa#P^23{yUz;B0Cre%ms#C=Dn_&hF?4LguPZ4z;s~(qWCKgIx;#(zMED@e z#6k&6_%RKfjE86AbpOHR@KVF{csWQ3sXjL(nMv~*t#EG}dm*^?aM4!PA~eaNfh`i3 zI@S-dWymMN!YKm9*)h^WcWq_(#Wq@}p#pR<>KN~5?jfB(QAeC1*iiEB@sf+(*fin4 z98Io(9pF~!R7o;X-Wu#fNKO$^;<^%7Vr-vml0}Y~VQWAMZn!UX+9Vv7o=>?Zx*lKF zt&O443|DTEp|dyO21)GNnbig(A1((>Br`>5qFH-SCL036#+~u65xMqp{|e)shQ)Ex zhAQz>G?P`zFo>ITlWjQJI3f(w!QIuvT1dY-4cI?#fta@Zw1x`q3>kG)PPD>~Y0$p> zSZ6B6UmlT3BQiw+wdJ|=!sK_*UKwnlZ{@9kvP}Y6*Q$rff?M4yiD3r$NnNBUQDq6Q zg;|kS+D&R*l8>if$+C0;_wvkCjpiESWWMKlqRwCFI6w==8D}CuyyPYBFO!^Q2`^;3 z+H3RcO>+G9JpZOjX%!PY#<99Yz-G4LphR%Xz1FT%3J*xwl4iH}JmX$5?)srrDXSW>&1b92tLr|5UBKQ%fvNa) z&#D-|iDKXQuI8m1K)A)31PX3M-he{70q&HHIoA{|SX+D6>Q0-)Xrs_dgkW5W>vz`{ zACoggFZG`5?QX2OC^;eYs%tnB022sMlpcjI)Xl1%g@OPJK3T64ZEmcWgV!o&ICWRK z$w9-^X%W0bxvIk}^gcMaFA^2^~AD^3RBM>`o;8N#L;P_h~uEs(?hZYh*I%B0r{?jC<<6F3yyj zJ-Gz0^?i1AgsF~5A6nHH|7T-X*DlV!0~H!94F}(ZEq}JP<^1u?!^Z3`_soidC31!{dqvynz`~Oo>RtnUxk3iH7RZWKW+&jK7;J=M?%bT zqme++a#?HCS;8Xhyd=0oUL76rJ46RB5$Ghp9DMvc<%pP3c@d>@vKq}@y;HiWwq2NC znjc(#H#)+Tmyd6+4&IX`{vekmx}q0m;)NI3&LHG;+iJZJKK_6rXfq7nyVyeUW98)- zVm%rdD$q#Ve)Dv}A=k5Qo2gb3ckU~x>mXYkavIW9sIiWe`Ij8(;OzQFg&#p|aa0hl zbC1V1O&#mEy26`}KYZu%L8tVM?Nr0Nq`tsq{LWan;ev>6jE*q+j4$~ra9B9jovU~r zD^eHqUYjb`RI)O|%Z3=orDb9xpW|A#-Q1b^7t-DIE}|bGc_kD5(Z$EVGvz=e?c0xk zzZf2-`mfy7O|La~)FD!rj_vg1HLiljnw6DVymZ z+DlXO19FM1^MBO@S?m<0U^W?^PL$-^uSOTzU5db9b{PFJ`6%bUf-yufYkFQLR*4lkYoC2|~ z-VMZMU>;{M;alpc-_SSD=LQ`3;4e@bc#o*jD1XBzJ9@glFh9TW?(2_#{nz;gLc;&} zbbev`6MfINuU7HySykf(RatQepUP@eoH*g>;t6pfQfEz-`TqzZ+O8l#xrexk8gLSLYpBLIn!6~#T^o- zBmdCd-L>`A=h%lez&Hpm0EOrXVa_%=jg54cdiE zoEtA0@Ax)6#;GrZ#>~d>O07VpXVU@AOC%E>BYu2arxAV#2k?bVY?xd--mW^!9Qe> z*fvQ<8*L*@Vy3zO^Co3d+8vFL-g7GWB=#u?2-B*lnD$3h_A$EEB>UEvHUA?j zr{-nGYku3vhZ)DLNDXcNfomp=O&eygfBas|5JVI9d(p2eg3cPg)yZ#^Sb8u%zB;l8 z624u>?|Gl&)XdGV>%aD!kN>_tzeH*VQfrW%Pmf6S@bRzf>pBj8@aVn^A8p;I^l|+0 zc^xN-ld4SU3}nl7o=;nC+&`+}_^k{8D85+4_T(W%`} z0xmTH8UZv);sI|VQ_M7T=GhWj#P1=Ybi%ED7qhwKYPujKPag`>hAkrSwX2JZq@`ZQ zabo4;U!N~SEtkDoyGX-l%y)bG@rMJNooP6G5X0}pshKi_3CTM3Qy@cq^3iyQj~zSX zWA{oayueuP#@N$HCc78!(V>wb^60 z3c|`FF%MWR4wCq0$%l$>kkhX(*%=-{|Hizj@m=@s)$S-6E2#j%9P|A&2}>T1j+}OY zm3)JEHH?{2Bt)-TLc}DxS+LWpF=w{h>m&D>O@Qvql3+QaR4m~A#Lsp={*8H`tk9m} z>76A~1dn;W)29jAU}Tdv&-^Ei>7Ue5_c6yGe~=3{dU2ctW~LOD&X{lQvXB3poGH&i z!#@6pcT7>)P^_l6J^Qn&FunVqHp=HJEamn5tCwrOXz0;H|GwQkU0!|Bbm9<56c=&xJA&bl(_2DB^%>4(AZ;VG6iyB{1bo$O*ix2`x4FQUJO~Js7pawD%<!6&Ld#AoB!X<7J)div#X0D9^J4Yo%ej^L zRcF-N)~#@g+GR#7+6}+qs{|8p_D(F1v|3zq24^Q1I_Wdb$A5=CNa=D^JtJg}N2jFm*8E0cIV0Rf zijD0>C}_uG7<0#$gG+!X#M0h#-)gn6?V!u!PS^K zRptZvO}j%yUTjfi$w&P+q2`+KT7^Giqu@Cl*B4rl+5v=w2{jTsIfTzP zgnam#IK3}zCKPOqr#Bqo#mZOmB_rvY&>ME?&}V*n_&2=tcyQxutn?hYsH9M_?$^yr z)EF#FUAnoP$@y#>xLJLwl^}n7ef=fO@)x zLW3s`n07a-=)>^oMRFBJ^rfS4aO#ngzC7KSzhR_NXJvGGa}}^GMG`|e4&Q=Qi5gye z*7*n>hEGj-DGzD@XEUNHQ7pLv3Lv{YJ36~*v#W*Ae3Gkt@{6b;dhzMmPL+Pde8(GK zFg!XR99=U)sPHA1Dlp-FwOOnNzOV`YB_Ta&cp0y0pRT`p9=YxoqLMH@>Pdj-f6fzo zgtg&2G(ro=0~{6)&o7Vaq%vb|*Jd4#uL}(XKWEvDm!5I=O%#rg&^Pd^LIVG8bb&t` zz=qT!)J)V%U|6$fUG4oMV>jqW8=%NSlI-+q=5>4~&4NB##K1XN7gcf{p0eL0-ngoM zL3gSuU;|Mdi9#?ETGb-iQY#J_e4G)!frl%D}G-$anuzr-Cuj|A{n1D|A@ndFlL6 zUFwvphpF$LtdKeJ;EJ0CDwBp+yIow{`2E}Gr zbLFX?X}=+ZumKyq^aHf=&j80IVwg<@Aw+%ZjgHyCu)*u&H#?7i{)@WLx=0ziRwb#0 zG;NfgcVq>M%Mdk1mfv~B>Hb|dG&d_wYu>X8SHqpKH^$I1kLTH zgFhB)1;Cm-;OuwaD11fe60z8{e{sYVvw4f{ZOrzz$Y^S+^Nk|?@$Uq~FhO@o7>DtO zfz6LJnZ*0Bxsk}NEaO|i8tb$uRz_-!#lJupRP_J;8}PyF_^Hs6e=6_6T;9^HQ?uLGH8-E%S1`-9&bU z5Gi1DK=fpQF=gU=a zZ{xwCZ#TMC|JhTsnt3+Gku;Yb&>d1!V6C=Q^}(HC{O`VeK4okyPnd2KUF#yCcAEe4 zVB_Ul?{CO#vV)DUhC!_A@(0z6oCV@iA3S2yEOI@D*^cIigKt~i@d$GzG(H0YqIL|XyYZHqMJ&HTOG=x3R{g5Hsi5? zKCLb4hHg~X3!)oIm*Px7tmAQ>Ftau6hqlwlmaU1|$Cf4l>zIyR81 zLzZoPVa*V(6hLFV5T$Rv!$87KW4*EmoG^2y(~6#fte;C=R9*15GoflqEgPEf=^1z( z#w@N|V5Dc{t;LKYQ9wLh#F#~7t7-zWZ^=v>&=%ieg94S0bj4zY1_Wo9Xk|qJlPN^@ zmG{%z=r_IyofzWdDYnwfAv`cEwq-PGLd-ibi8OeClQ(TXINr*Tj~I z2s3hKi8~6uV@g-gSy7#9*I0NuKPSdq*{BV2P&J7)NMMMAxS{dQ>^Npc>+_YMO-Qg# zj24@2Mw~qfYGS7&p}QEY@r~**D}9TQ6hu$pUEa`Lv?jR1RA-u{$lfENInxvECUJd> znSMFV%1rZeY58A2{*`#H?lY}GmpP#Z*kX3Ig z8nJ*nI=32ag>-QEJ0|K1`44-hA!h*{Ix`&T z<~hu?+&yYvt$qC8%UodzAiHqiXPvDMsnW~vK_gl0@CDF^#FE)c$Fej++C;mhv4&|v z)@aX8L`P)mqjmYNz|l4^&$R2C8xNjsZs-I)pl@~q z)##)B(<06mf$)pU-~;oV>Z}w8;{~_J=yTI{(P5+rcY9>yV_Nb#?wYC%1!f_4#`=FT znR~RGd+hg?pK4anM=)GaRbrKUp7>^;RLsdHPuWx|d+Y*a@5+;iqvTNY#=PcdT}8`T zTJFv;janeegY-b7wpiDRI{Dc5cI^Ced(UpT_eJT$3JeybmbExLUK%9_ZnNdF|g zVvVYX(mRg_Ix0yTXn*>-7GU*_bTg&v510A;mz|>Y#|IL^zgz?B-dtT-2!DY`idbEG zjvnD#E6Vf7<#}Z4XDcE~%pgw5GR;4a^_z5rHbdxo5S~S?u1;8*d%Ca;ty)_C01`qR zNVD-`eQ9x1w^*z9ff*^$7Riopp(WNf?9(P{S6*vee6zSdH^BL8>wfx$9@po# zUVM1@;W_#5DTrU2#m(1CaobL8OLSnPHgQJL5XnBm8(A(CrD3ZbMxBr_^e!e4XNl~l98;mun(z2EPCb!UP+6o*tbz;{<;!uPI? z7w_a>t5F&cH}haWA3$Qe53pKshwJEu`}jGwZ{F{c2+(0yj8)NNR)F|S>zTAR*!e=MR#s_3L;;(0jp)FX^L1^g1)RY&$K@wQs@%1v8}RQ zm-0#t{AZ?Rb=!~sQP~##u`wL$7@Pt`C~QCS%oK}|>|mbAFeO%u;ABb}GlOmD;}0l% z)Pu!X;~ozdmll)forZDPq9~6rZXvQ7k+OH9XIBtvh7F-!z6mv86C#xSM z>)h?19q4!OnC_D<{?X3Wg=DY)bGUv}kG7**G|UzaMl+q~O(06b^d_ z(t-SiY{sp(n{$KkPcu z;7joE6Auf~F!?&*0ZX8yba9Kf!Yq{j%L3haH2&|=N_U>ssOi>|wdJ{$Uj+iUaYXQ? z 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 bless -# boot -> start, boot - afhænger af om læseren kan gennemskue at 'start' refererer til boot -# boot sector -> bootsektor -# boot loader -> opstartsindlæser -# core file -> kernefil (se kernel nedenfor) -# core image -> kerneaftryk -# entry (oftest i opstartsmenu) -> (menu)punkt -# kernel -> kerne (pas på hvis det i nogen sammenhæng kan forveksles med core) -# -# Ask Hjorth Larsen , 2010-12, 2016, 2017. -# Fuld korrekturlæsning af scootergrisen, 2017. -msgid "" -msgstr "" -"Project-Id-Version: grub-2.02-pre3\n" -"Report-Msgid-Bugs-To: bug-grub@gnu.org\n" -"POT-Creation-Date: 2019-07-04 16:09+0200\n" -"PO-Revision-Date: 2017-02-16 21:11+0100\n" -"Last-Translator: Ask Hjorth Larsen \n" -"Language-Team: Danish \n" -"Language: da\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Bugs: Report translation errors to the Language-Team address.\n" -"X-Launchpad-Export-Date: 2010-12-18 15:32+0000\n" -"X-Generator: Launchpad (build Unknown)\n" - -#: grub-core/bus/usb/serial/ftdi.c:145 grub-core/bus/usb/serial/pl2303.c:158 -#: grub-core/term/ieee1275/escc.c:169 grub-core/term/ns8250.c:202 -msgid "unsupported serial port speed" -msgstr "uunderstøttet hastighed af serielport" - -#: grub-core/bus/usb/serial/ftdi.c:151 grub-core/bus/usb/serial/pl2303.c:164 -#: grub-core/term/efi/serial.c:116 grub-core/term/ieee1275/escc.c:175 -#: grub-core/term/ns8250.c:208 grub-core/term/serial.c:227 -#: grub-core/term/serial.c:243 -msgid "unsupported serial port parity" -msgstr "uunderstøttet paritet af serielport" - -#: grub-core/bus/usb/serial/ftdi.c:157 grub-core/bus/usb/serial/pl2303.c:170 -#: grub-core/term/efi/serial.c:122 grub-core/term/ieee1275/escc.c:181 -#: grub-core/term/ns8250.c:213 grub-core/term/serial.c:267 -msgid "unsupported serial port stop bits number" -msgstr "uunderstøttet stop-bittal for serielport" - -#: grub-core/bus/usb/serial/ftdi.c:161 grub-core/bus/usb/serial/pl2303.c:174 -#: grub-core/term/efi/serial.c:126 grub-core/term/ieee1275/escc.c:185 -#: grub-core/term/ns8250.c:217 -msgid "unsupported serial port word length" -msgstr "uunderstøttet ordlængde for serielport" - -#: grub-core/commands/acpi.c:42 -msgid "Don't load host tables specified by comma-separated list." -msgstr "Indlæs ikke værtstabeller angivet i kommaadskilt liste." - -#: grub-core/commands/acpi.c:45 -msgid "Load only tables specified by comma-separated list." -msgstr "Indlæs kun tabeller angivet i kommaadskilt liste." - -#: grub-core/commands/acpi.c:46 -msgid "Export version 1 tables to the OS." -msgstr "Eksportér version 1-tabeller til operativsystemet." - -#: grub-core/commands/acpi.c:47 -msgid "Export version 2 and version 3 tables to the OS." -msgstr "Eksportér version 2- og version 3-tabeller til operativsystemet." - -#: grub-core/commands/acpi.c:48 -msgid "Set OEMID of RSDP, XSDT and RSDT." -msgstr "Indstil OEMID for RSDP, XSDT og RSDT." - -#: grub-core/commands/acpi.c:50 -msgid "Set OEMTABLE ID of RSDP, XSDT and RSDT." -msgstr "Indstil OEMTABLE ID for RSDP, XSDT og RSDT." - -#: grub-core/commands/acpi.c:52 -msgid "Set OEMTABLE revision of RSDP, XSDT and RSDT." -msgstr "Indstil revision af OEMTABLE for RSDP, XSDT og RSDT." - -#: grub-core/commands/acpi.c:54 -msgid "Set creator field of RSDP, XSDT and RSDT." -msgstr "Indstil skaberfeltet for RSDP, XSDT og RSDT." - -#: grub-core/commands/acpi.c:56 -msgid "Set creator revision of RSDP, XSDT and RSDT." -msgstr "Indstil skaberrevision for RSDP, XSDT og RSDT." - -#. TRANSLATORS: "hangs" here is a noun, not a verb. -#: grub-core/commands/acpi.c:58 -msgid "" -"Don't update EBDA. May fix failures or hangs on some BIOSes but makes it " -"ineffective with OS not receiving RSDP from GRUB." -msgstr "" -"Opdatér ikke EBDA. Vil måske rette fejl eller nedbrud med visse BIOS'er, men " -"forringer effektiviteten, da operativsystemet ikke modtager RSDP fra GRUB." - -#: grub-core/commands/acpi.c:650 grub-core/commands/acpi.c:667 -#: grub-core/commands/i386/pc/play.c:105 grub-core/commands/keylayouts.c:230 -#: grub-core/commands/keylayouts.c:245 grub-core/commands/keylayouts.c:263 -#: grub-core/commands/verifiers.c:156 grub-core/efiemu/loadcore.c:350 -#: grub-core/kern/elf.c:117 grub-core/kern/elfXX.c:29 -#: grub-core/kern/elfXX.c:156 grub-core/loader/arm/linux.c:319 -#: grub-core/loader/arm64/linux.c:330 grub-core/loader/arm64/xen_boot.c:356 -#: grub-core/loader/efi/chainloader.c:276 -#: grub-core/loader/efi/chainloader.c:297 -#: grub-core/loader/efi/chainloader.c:329 grub-core/loader/efi/fdt.c:138 -#: grub-core/loader/i386/bsd.c:1276 grub-core/loader/i386/bsd.c:2116 -#: grub-core/loader/i386/bsdXX.c:20 grub-core/loader/i386/bsdXX.c:36 -#: grub-core/loader/i386/bsdXX.c:63 grub-core/loader/i386/bsdXX.c:357 -#: grub-core/loader/i386/bsdXX.c:376 grub-core/loader/i386/bsdXX.c:519 -#: grub-core/loader/i386/bsdXX.c:535 grub-core/loader/i386/bsdXX.c:615 -#: grub-core/loader/i386/bsdXX.c:638 -#: grub-core/loader/i386/coreboot/chainloader.c:112 -#: grub-core/loader/i386/coreboot/chainloader.c:148 -#: grub-core/loader/i386/coreboot/chainloader.c:170 -#: grub-core/loader/i386/linux.c:667 grub-core/loader/i386/linux.c:788 -#: grub-core/loader/i386/linux.c:1005 grub-core/loader/i386/multiboot_mbi.c:171 -#: grub-core/loader/i386/pc/chainloader.c:202 -#: grub-core/loader/i386/pc/linux.c:149 grub-core/loader/i386/pc/linux.c:320 -#: grub-core/loader/i386/pc/linux.c:362 grub-core/loader/i386/pc/plan9.c:457 -#: grub-core/loader/i386/pc/plan9.c:550 grub-core/loader/i386/pc/plan9.c:566 -#: grub-core/loader/i386/xen.c:934 grub-core/loader/i386/xen_file.c:72 -#: grub-core/loader/i386/xen_fileXX.c:43 grub-core/loader/i386/xen_fileXX.c:186 -#: grub-core/loader/i386/xen_fileXX.c:339 grub-core/loader/ia64/efi/linux.c:423 -#: grub-core/loader/ia64/efi/linux.c:471 grub-core/loader/linux.c:286 -#: grub-core/loader/macho.c:84 grub-core/loader/macho.c:109 -#: grub-core/loader/machoXX.c:33 grub-core/loader/machoXX.c:46 -#: grub-core/loader/machoXX.c:76 grub-core/loader/machoXX.c:116 -#: grub-core/loader/machoXX.c:131 grub-core/loader/machoXX.c:147 -#: grub-core/loader/machoXX.c:196 grub-core/loader/machoXX.c:317 -#: grub-core/loader/multiboot.c:434 grub-core/loader/multiboot_elfxx.c:171 -#: grub-core/loader/multiboot_elfxx.c:234 -#: grub-core/loader/multiboot_elfxx.c:278 grub-core/loader/multiboot_mbi2.c:129 -#: grub-core/loader/xnu.c:737 grub-core/loader/xnu.c:795 -#: grub-core/loader/xnu.c:816 grub-core/loader/xnu.c:871 -#: grub-core/loader/xnu.c:914 grub-core/loader/xnu.c:952 -#: grub-core/loader/xnu_resume.c:68 grub-core/loader/xnu_resume.c:153 -#: grub-core/loader/xnu_resume.c:165 util/grub-mkimagexx.c:2288 -#, c-format -msgid "premature end of file %s" -msgstr "filafslutning tidligere end ventet i %s" - -#: grub-core/commands/acpi.c:779 -msgid "" -"[-1|-2] [--exclude=TABLE1,TABLE2|--load-only=TABLE1,TABLE2] FILE1 [FILE2] " -"[...]" -msgstr "" -"[-1|-2] [--exclude=TABEL1,TABEL2|--load-only=TABEL1,TABEL2] FIL1 [FIL2] [...]" - -#: grub-core/commands/acpi.c:782 -msgid "Load host ACPI tables and tables specified by arguments." -msgstr "Indlæs ACPI-værtstabeller og tabeller angivet ved argumenter." - -#: grub-core/commands/acpihalt.c:368 grub-core/kern/err.c:110 -#, c-format -msgid "error: %s.\n" -msgstr "fejl: %s.\n" - -#: grub-core/commands/acpihalt.c:368 grub-core/kern/emu/misc.c:95 -#: grub-core/kern/emu/misc.c:105 grub-core/kern/emu/misc.c:134 -#: grub-core/kern/emu/mm.c:34 grub-core/kern/emu/mm.c:62 -#: grub-core/kern/mm.c:374 grub-core/lib/relocator.c:1282 -#: grub-core/lib/relocator.c:1439 grub-core/lib/relocator.c:1538 -#: grub-core/loader/arm/linux.c:259 grub-core/loader/arm64/linux.c:265 -#: grub-core/loader/arm64/linux.c:321 grub-core/loader/arm64/linux.c:340 -#: grub-core/loader/arm64/xen_boot.c:344 grub-core/loader/arm64/xen_boot.c:367 -#: grub-core/loader/efi/chainloader.c:289 grub-core/osdep/unix/dl.c:48 -#: grub-core/osdep/windows/dl.c:46 grub-core/script/lexer.c:156 -#: grub-core/script/lexer.c:182 -msgid "out of memory" -msgstr "løbet tør for hukommelse" - -#: grub-core/commands/acpihalt.c:374 grub-core/disk/cryptodisk.c:587 -#: grub-core/disk/cryptodisk.c:632 grub-core/kern/emu/hostdisk.c:307 -#: grub-core/kern/emu/hostfs.c:149 grub-core/kern/emu/misc.c:200 -#: grub-core/osdep/linux/ofpath.c:195 grub-core/osdep/linux/ofpath.c:521 -#: grub-core/osdep/linux/ofpath.c:534 util/glue-efi.c:80 util/glue-efi.c:94 -#: util/grub-editenv.c:155 util/grub-fstest.c:577 -#: util/grub-install-common.c:943 util/grub-mkrescue.c:634 -#: util/grub-mkrescue.c:888 util/grub-mount.c:506 util/grub-render-label.c:176 -#: util/misc.c:95 util/setup.c:814 util/setup.c:833 -#, c-format -msgid "cannot read `%s': %s" -msgstr "kan ikke læse \"%s\": %s" - -#. TRANSLATORS: It's computer shutdown using ACPI, not disabling ACPI. -#: grub-core/commands/acpihalt.c:452 -msgid "ACPI shutdown failed" -msgstr "ACPI-slukning mislykkedes" - -#: grub-core/commands/arc/lsdev.c:51 -msgid "List devices." -msgstr "Vis liste af enheder." - -#: grub-core/commands/blocklist.c:122 grub-core/commands/cat.c:57 -#: grub-core/commands/configfile.c:35 grub-core/commands/efi/loadbios.c:168 -#: grub-core/commands/file.c:159 grub-core/commands/hexdump.c:47 -#: grub-core/commands/legacycfg.c:209 grub-core/commands/legacycfg.c:315 -#: grub-core/commands/minicmd.c:44 grub-core/commands/syslinuxcfg.c:146 -#: grub-core/commands/testload.c:58 grub-core/commands/testspeed.c:52 -#: grub-core/disk/loopback.c:93 grub-core/efiemu/main.c:293 -#: grub-core/font/font_cmd.c:32 grub-core/kern/emu/hostdisk.c:519 -#: grub-core/loader/arm/linux.c:364 grub-core/loader/arm/linux.c:409 -#: grub-core/loader/arm/linux.c:472 grub-core/loader/arm64/linux.c:243 -#: grub-core/loader/arm64/linux.c:297 grub-core/loader/arm64/xen_boot.c:398 -#: grub-core/loader/arm64/xen_boot.c:411 grub-core/loader/arm64/xen_boot.c:462 -#: grub-core/loader/efi/chainloader.c:216 grub-core/loader/i386/bsd.c:1462 -#: grub-core/loader/i386/bsd.c:1807 grub-core/loader/i386/bsd.c:2085 -#: grub-core/loader/i386/coreboot/chainloader.c:438 -#: grub-core/loader/i386/linux.c:656 grub-core/loader/i386/linux.c:1041 -#: grub-core/loader/i386/pc/chainloader.c:290 -#: grub-core/loader/i386/pc/freedos.c:105 grub-core/loader/i386/pc/linux.c:138 -#: grub-core/loader/i386/pc/linux.c:400 grub-core/loader/i386/pc/ntldr.c:85 -#: grub-core/loader/i386/pc/plan9.c:409 -#: grub-core/loader/i386/pc/pxechainloader.c:94 -#: grub-core/loader/i386/pc/truecrypt.c:96 grub-core/loader/i386/xen.c:641 -#: grub-core/loader/i386/xen.c:768 grub-core/loader/i386/xen.c:844 -#: grub-core/loader/i386/xen.c:854 grub-core/loader/i386/xnu.c:488 -#: grub-core/loader/ia64/efi/linux.c:459 grub-core/loader/ia64/efi/linux.c:539 -#: grub-core/loader/mips/linux.c:238 grub-core/loader/mips/linux.c:429 -#: grub-core/loader/multiboot.c:322 grub-core/loader/multiboot.c:374 -#: grub-core/loader/multiboot.c:384 -#: grub-core/loader/powerpc/ieee1275/linux.c:269 -#: grub-core/loader/powerpc/ieee1275/linux.c:341 -#: grub-core/loader/sparc64/ieee1275/linux.c:305 -#: grub-core/loader/sparc64/ieee1275/linux.c:381 grub-core/loader/xnu.c:351 -#: grub-core/loader/xnu.c:460 grub-core/loader/xnu.c:778 -#: grub-core/loader/xnu.c:892 grub-core/loader/xnu.c:1277 -#: grub-core/loader/xnu.c:1427 grub-core/loader/xnu.c:1453 -#: grub-core/video/readers/jpeg.c:812 grub-core/video/readers/png.c:1123 -msgid "filename expected" -msgstr "filnavn forventet" - -#. TRANSLATORS: "embed" is a verb (command description). " -#: grub-core/commands/blocklist.c:154 grub-core/commands/cat.c:163 -#: grub-core/commands/configfile.c:65 grub-core/commands/configfile.c:68 -#: grub-core/commands/configfile.c:74 grub-core/commands/configfile.c:80 -#: grub-core/commands/configfile.c:86 grub-core/commands/hashsum.c:34 -#: grub-core/commands/legacycfg.c:834 grub-core/commands/legacycfg.c:841 -#: grub-core/commands/legacycfg.c:846 grub-core/commands/legacycfg.c:851 -#: grub-core/commands/macbless.c:222 grub-core/commands/minicmd.c:198 -#: grub-core/commands/syslinuxcfg.c:186 grub-core/commands/syslinuxcfg.c:194 -#: grub-core/commands/syslinuxcfg.c:200 grub-core/commands/syslinuxcfg.c:206 -#: grub-core/commands/testload.c:163 grub-core/efiemu/main.c:312 -#: grub-core/kern/emu/main.c:100 grub-core/kern/emu/main.c:103 -#: grub-core/loader/i386/bsd.c:2137 grub-core/loader/i386/bsd.c:2140 -#: grub-core/loader/i386/bsd.c:2143 -#: grub-core/loader/i386/coreboot/chainloader.c:505 -#: grub-core/loader/ia64/efi/linux.c:594 include/grub/util/install.h:32 -#: include/grub/util/install.h:64 util/grub-glue-efi.c:52 -#: util/grub-glue-efi.c:54 util/grub-glue-efi.c:56 util/grub-install.c:254 -#: util/grub-install.c:301 util/grub-mkfont.c:936 util/grub-mkimage.c:68 -#: util/grub-mkimage.c:74 util/grub-mkimage.c:76 util/grub-mkimage.c:78 -#: util/grub-mkimage.c:81 util/grub-mklayout.c:52 util/grub-mklayout.c:54 -#: util/grub-mkrescue.c:97 util/grub-mkrescue.c:101 util/grub-mkrescue.c:104 -#: util/grub-mkrescue.c:105 util/grub-mkrescue.c:106 -#: util/grub-mkstandalone.c:47 util/grub-mkstandalone.c:49 -#: util/grub-probe.c:732 util/grub-render-label.c:59 -#: util/grub-render-label.c:70 util/grub-render-label.c:72 util/grub-setup.c:78 -#: util/grub-setup.c:80 util/grub-setup.c:84 util/grub-syslinux2cfg.c:74 -#: util/grub-syslinux2cfg.c:147 -msgid "FILE" -msgstr "FIL" - -#: grub-core/commands/blocklist.c:154 -msgid "Print a block list." -msgstr "Udskriv en blokliste." - -#: grub-core/commands/boot.c:147 grub-core/commands/legacycfg.c:533 -#: grub-core/commands/legacycfg.c:574 grub-core/loader/arm64/linux.c:250 -#: grub-core/loader/i386/bsd.c:1799 grub-core/loader/i386/bsd.c:1900 -#: grub-core/loader/i386/bsd.c:2007 grub-core/loader/i386/bsd.c:2040 -#: grub-core/loader/i386/bsd.c:2089 grub-core/loader/i386/linux.c:1047 -#: grub-core/loader/i386/pc/linux.c:406 grub-core/loader/i386/xen.c:775 -#: grub-core/loader/i386/xen.c:859 grub-core/loader/ia64/efi/linux.c:545 -#: grub-core/loader/mips/linux.c:432 grub-core/loader/multiboot.c:388 -#: grub-core/loader/powerpc/ieee1275/linux.c:347 -#: grub-core/loader/sparc64/ieee1275/linux.c:387 grub-core/loader/xnu.c:572 -#: grub-core/loader/xnu.c:665 grub-core/loader/xnu.c:781 -#: grub-core/loader/xnu.c:895 grub-core/loader/xnu.c:1091 -#: grub-core/loader/xnu.c:1258 grub-core/loader/xnu.c:1289 -#: grub-core/loader/xnu.c:1430 -msgid "you need to load the kernel first" -msgstr "du skal først indlæse kernen" - -#: grub-core/commands/boot.c:189 -msgid "Boot an operating system." -msgstr "Start et operativsystem." - -#: grub-core/commands/boottime.c:36 -#: grub-core/commands/i386/coreboot/cb_timestamps.c:108 -msgid "No boot time statistics is available\n" -msgstr "Der er ingen tilgængelig statistik for opstartstider\n" - -#: grub-core/commands/boottime.c:59 -msgid "Show boot time statistics." -msgstr "Vis statistik for opstartstid." - -#: grub-core/commands/cacheinfo.c:40 -#, c-format -msgid "Disk cache statistics: hits = %lu (%lu.%02lu%%), misses = %lu\n" -msgstr "" -"Statistik for diskmellemlager: træffere = %lu (%lu.%02lu%%), forbiere = %lu\n" - -#: grub-core/commands/cacheinfo.c:45 -msgid "No disk cache statistics available\n" -msgstr "Der er ingen tilgængelig statistik for diskmellemlager\n" - -#: grub-core/commands/cacheinfo.c:56 -msgid "Get disk cache info." -msgstr "Hent oplysninger om diskmellemlager." - -#: grub-core/commands/cat.c:33 -msgid "Accept DOS-style CR/NL line endings." -msgstr "Acceptér CR/NL-linjeafslutninger i stil med DOS." - -#: grub-core/commands/cat.c:163 grub-core/commands/minicmd.c:198 -msgid "Show the contents of a file." -msgstr "Vis indholdet af en fil." - -#: grub-core/commands/cmp.c:43 grub-core/commands/i386/pc/drivemap.c:239 -#: grub-core/commands/i386/wrmsr.c:60 grub-core/commands/iorw.c:85 -#: grub-core/commands/memrw.c:84 grub-core/commands/password.c:75 -#: grub-core/commands/password_pbkdf2.c:94 grub-core/commands/pgp.c:826 -#: grub-core/commands/regexp.c:113 grub-core/mmap/mmap.c:517 -#: grub-core/net/dns.c:639 -msgid "two arguments expected" -msgstr "to argumenter forventet" - -#: grub-core/commands/cmp.c:45 -#, c-format -msgid "Compare file `%s' with `%s':\n" -msgstr "Sammenlign filen \"%s\" med \"%s\":\n" - -#: grub-core/commands/cmp.c:54 -#, c-format -msgid "Files differ in size: %llu [%s], %llu [%s]\n" -msgstr "Filerne har forskellig størrelse: %llu [%s], %llu [%s]\n" - -#: grub-core/commands/cmp.c:81 -#, c-format -msgid "Files differ at the offset %llu: 0x%x [%s], 0x%x [%s]\n" -msgstr "Filer er forskellige fra position %llu: 0x%x [%s], 0x%x [%s]\n" - -#. TRANSLATORS: it's always exactly 2 files. -#: grub-core/commands/cmp.c:93 -msgid "The files are identical.\n" -msgstr "Filerne er identiske.\n" - -#: grub-core/commands/cmp.c:113 -msgid "FILE1 FILE2" -msgstr "FIL1 FIL2" - -#: grub-core/commands/cmp.c:113 -msgid "Compare two files." -msgstr "Sammenlign to filer." - -#: grub-core/commands/configfile.c:65 -msgid "Load another config file." -msgstr "Indlæs endnu en konfigurationsfil." - -#: grub-core/commands/configfile.c:69 grub-core/commands/configfile.c:87 -msgid "Load another config file without changing context." -msgstr "Indlæs endnu en konfigurationsfil uden at ændre kontekst." - -#: grub-core/commands/configfile.c:75 -msgid "" -"Load another config file without changing context but take only menu entries." -msgstr "" -"Indlæs endnu en konfigurationsfil uden at ændre kontekst, men hent kun " -"menuindgange." - -#: grub-core/commands/configfile.c:81 -msgid "Load another config file but take only menu entries." -msgstr "Indlæs endnu en konfigurationsfil, men hent kun menuindgange." - -#: grub-core/commands/date.c:141 -msgid "[[year-]month-day] [hour:minute[:second]]" -msgstr "[[år-]måned-dag] [time:minut[:sekund]]" - -#: grub-core/commands/date.c:142 -msgid "Display/set current datetime." -msgstr "Vis/indstil nuværende tidspunkt og dato." - -#: grub-core/commands/echo.c:30 -msgid "Do not output the trailing newline." -msgstr "Udskriv ikke afsluttende linjeskiftstegn." - -#: grub-core/commands/echo.c:31 -msgid "Enable interpretation of backslash escapes." -msgstr "Aktivér fortolkning af undvigesekvenser med omvendt skråstreg." - -#: grub-core/commands/echo.c:134 -msgid "[-e|-n] STRING" -msgstr "[-e|-n] STRENG" - -#: grub-core/commands/echo.c:134 -msgid "Display a line of text." -msgstr "Vis en linje af tekst." - -#: grub-core/commands/efi/efifwsetup.c:82 -msgid "Reboot into firmware setup menu." -msgstr "Genstart og vis firmwareopsætningsmenu." - -#: grub-core/commands/efi/fixvideo.c:107 -msgid "Fix video problem." -msgstr "Fiks videoproblem." - -#: grub-core/commands/efi/loadbios.c:52 -msgid "ROM image is present." -msgstr "ROM-aftryk er til stede." - -#: grub-core/commands/efi/loadbios.c:70 -msgid "Can't enable ROM area." -msgstr "Kan ikke aktivere ROM-område." - -#: grub-core/commands/efi/loadbios.c:209 -msgid "" -"Create BIOS-like structures for backward compatibility with existing OS." -msgstr "" -"Opret BIOS-agtige strukturer til bagudkompatibilitet med eksisterende OS." - -#: grub-core/commands/efi/loadbios.c:214 -msgid "BIOS_DUMP [INT10_DUMP]" -msgstr "BIOS_DUMP [INT10_DUMP]" - -#: grub-core/commands/efi/loadbios.c:215 -msgid "Load BIOS dump." -msgstr "Indlæs BIOS-dump." - -#: grub-core/commands/efi/shim_lock.c:76 -#, c-format -msgid "module cannot be loaded in UEFI secure boot mode: %s" -msgstr "" - -#: grub-core/commands/efi/shim_lock.c:98 -#, c-format -msgid "cannot boot due to dangerous module in memory: %s" -msgstr "" - -#: grub-core/commands/efi/shim_lock.c:116 -#, fuzzy -msgid "bad shim signature" -msgstr "ugyldig signatur" - -#: grub-core/commands/efi/tpm.c:149 grub-core/commands/efi/tpm.c:189 -#: grub-core/commands/efi/tpm.c:256 grub-core/commands/efi/tpm.c:306 -#, fuzzy -msgid "Command failed" -msgstr "alloc-mem mislykkedes" - -#: grub-core/commands/efi/tpm.c:151 grub-core/commands/efi/tpm.c:191 -#: grub-core/commands/efi/tpm.c:258 grub-core/commands/efi/tpm.c:308 -#, fuzzy -msgid "Invalid parameter" -msgstr "ugyldig parameter %s" - -#: grub-core/commands/efi/tpm.c:154 grub-core/commands/efi/tpm.c:194 -#: grub-core/commands/efi/tpm.c:261 grub-core/commands/efi/tpm.c:311 -msgid "Output buffer too small" -msgstr "" - -#: grub-core/commands/efi/tpm.c:156 grub-core/commands/efi/tpm.c:196 -#: grub-core/commands/efi/tpm.c:263 grub-core/commands/efi/tpm.c:313 -#, fuzzy -msgid "TPM unavailable" -msgstr "Sti: utilgængelig" - -#: grub-core/commands/efi/tpm.c:158 grub-core/commands/efi/tpm.c:198 -#: grub-core/commands/efi/tpm.c:265 grub-core/commands/efi/tpm.c:315 -#, fuzzy -msgid "Unknown TPM error" -msgstr "Ukendt systemfejl" - -#: grub-core/commands/efi/tpm.c:240 grub-core/commands/efi/tpm.c:288 -msgid "cannot allocate TPM event buffer" -msgstr "" - -#: grub-core/commands/eval.c:63 -msgid "STRING ..." -msgstr "STRENG ..." - -#: grub-core/commands/eval.c:64 -msgid "Evaluate arguments as GRUB commands" -msgstr "Evaluér argumenter som GRUB-kommandoer" - -#: grub-core/commands/file.c:41 -msgid "Check if FILE can be booted as i386 PAE Xen unprivileged guest kernel" -msgstr "Kontrollér om FIL kan bootes som upriviligeret i386 PAE Xen-gæstekerne" - -#: grub-core/commands/file.c:44 -msgid "Check if FILE can be booted as x86_64 Xen unprivileged guest kernel" -msgstr "Kontrollér om FIL kan bootes som upriviligeret x86_64 Xen-gæstekerne" - -#: grub-core/commands/file.c:46 -msgid "Check if FILE can be used as Xen x86 privileged guest kernel" -msgstr "Kontrollér om FIL kan bruges som priviligeret Xen x86-gæstekerne" - -#: grub-core/commands/file.c:48 -msgid "Check if FILE can be used as x86 multiboot kernel" -msgstr "Kontrollér om FIL kan bruges som x86-multibootkerne" - -#: grub-core/commands/file.c:50 -msgid "Check if FILE can be used as x86 multiboot2 kernel" -msgstr "Kontrollér om FIL kan bruges som x86-multiboot2-kerne" - -#: grub-core/commands/file.c:52 -msgid "Check if FILE is ARM Linux" -msgstr "Kontrollér om FIL er ARM-Linux" - -#: grub-core/commands/file.c:54 -msgid "Check if FILE is ARM64 Linux" -msgstr "Kontrollér om FIL er ARM64-Linux" - -#: grub-core/commands/file.c:56 -msgid "Check if FILE is IA64 Linux" -msgstr "Kontrollér om FIL er IA64-Linux" - -#: grub-core/commands/file.c:58 -msgid "Check if FILE is MIPS Linux" -msgstr "Kontrollér om FIL er MIPS-Linux" - -#: grub-core/commands/file.c:60 -msgid "Check if FILE is MIPSEL Linux" -msgstr "Kontrollér om FIL er MIPSEL-Linux" - -#: grub-core/commands/file.c:62 -msgid "Check if FILE is SPARC64 Linux" -msgstr "Kontrollér om FIL er SPARC64-Linux" - -#: grub-core/commands/file.c:64 -msgid "Check if FILE is POWERPC Linux" -msgstr "Kontrollér om FIL er POWERPC-Linux" - -#: grub-core/commands/file.c:66 -msgid "Check if FILE is x86 Linux" -msgstr "Kontrollér om FIL er x86-Linux" - -#: grub-core/commands/file.c:68 -msgid "Check if FILE is x86 Linux supporting 32-bit protocol" -msgstr "Kontrollér om FIL er x86-Linux som understøtter 32-bit-protokol" - -#: grub-core/commands/file.c:70 -msgid "Check if FILE is x86 kFreeBSD" -msgstr "Kontrollér om FIL er x86-kFreeBSD" - -#: grub-core/commands/file.c:72 -msgid "Check if FILE is i386 kFreeBSD" -msgstr "Kontrollér om FIL er i386-kFreeBSD" - -#: grub-core/commands/file.c:74 -msgid "Check if FILE is x86_64 kFreeBSD" -msgstr "Kontrollér om FIL er x86_64-kFreeBSD" - -#: grub-core/commands/file.c:77 -msgid "Check if FILE is x86 kNetBSD" -msgstr "Kontrollér om FIL er x86-kNetBSD" - -#: grub-core/commands/file.c:79 -msgid "Check if FILE is i386 kNetBSD" -msgstr "Kontrollér om FIL er i386-kNetBSD" - -#: grub-core/commands/file.c:81 -msgid "Check if FILE is x86_64 kNetBSD" -msgstr "Kontrollér om FIL er x86_64-kNetBSD" - -#: grub-core/commands/file.c:84 -msgid "Check if FILE is i386 EFI file" -msgstr "Kontrollér om FIL er i386 EFI-fil" - -#: grub-core/commands/file.c:86 -msgid "Check if FILE is x86_64 EFI file" -msgstr "Kontrollér om FIL er x86_64 EFI-fil" - -#: grub-core/commands/file.c:88 -msgid "Check if FILE is IA64 EFI file" -msgstr "Kontrollér om FIL er IA64 EFI-fil" - -#: grub-core/commands/file.c:90 -msgid "Check if FILE is ARM64 EFI file" -msgstr "Kontrollér om FIL er ARM64 EFI-fil" - -#: grub-core/commands/file.c:92 -msgid "Check if FILE is ARM EFI file" -msgstr "Kontrollér om FIL er ARM EFI-fil" - -#: grub-core/commands/file.c:94 -#, fuzzy -msgid "Check if FILE is RISC-V 32bit EFI file" -msgstr "Kontrollér om FIL er ARM EFI-fil" - -#: grub-core/commands/file.c:96 -#, fuzzy -msgid "Check if FILE is RISC-V 64bit EFI file" -msgstr "Kontrollér om FIL er IA64 EFI-fil" - -#: grub-core/commands/file.c:98 -msgid "Check if FILE is hiberfil.sys in hibernated state" -msgstr "Kontrollér om FIL er hiberfil.sys i dvaletilstand" - -#: grub-core/commands/file.c:100 -msgid "Check if FILE is x86_64 XNU (Mac OS X kernel)" -msgstr "Kontrollér om FIL er x86_64 XNU (Mac OS X-kerne)" - -#: grub-core/commands/file.c:102 -msgid "Check if FILE is i386 XNU (Mac OS X kernel)" -msgstr "Kontrollér om FIL er i386 XNU (Mac OS X-kerne)" - -#: grub-core/commands/file.c:104 -msgid "Check if FILE is XNU (Mac OS X kernel) hibernated image" -msgstr "Kontrollér om FIL er XNU-dvaleaftryk (Mac OS X-kerne)" - -#: grub-core/commands/file.c:106 -msgid "Check if FILE is BIOS bootsector" -msgstr "Kontrollér om FIL er BIOS-bootsektor" - -#. TRANSLATORS: it's a standalone boolean value, -#. opposite of "true". -#: grub-core/commands/file.c:675 grub-core/commands/i386/cmostest.c:63 -#: grub-core/commands/i386/cpuid.c:71 grub-core/commands/keystatus.c:83 -#: grub-core/commands/keystatus.c:87 grub-core/commands/keystatus.c:96 -#: grub-core/commands/test.c:436 grub-core/commands/true.c:39 -#: grub-core/script/execute.c:247 grub-core/script/execute.c:1039 -msgid "false" -msgstr "falsk" - -#: grub-core/commands/file.c:684 -msgid "OPTIONS FILE" -msgstr "TILVALGSFIL" - -#: grub-core/commands/file.c:685 -msgid "Check if FILE is of specified type." -msgstr "Kontrollér om FIL er af den angivne type." - -#. TRANSLATORS: It means that the specified partition e.g. -#. hd0,msdos1=/dev/sda1 doesn't exist. -#: grub-core/commands/gptsync.c:140 grub-core/kern/disk.c:258 -msgid "no such partition" -msgstr "ingen sådan partition" - -#: grub-core/commands/gptsync.c:240 -#, c-format -msgid "New MBR is written to `%s'\n" -msgstr "Ny MBR skrives til \"%s\"\n" - -#: grub-core/commands/gptsync.c:252 -msgid "DEVICE [PARTITION[+/-[TYPE]]] ..." -msgstr "ENHED [PARTITION[+/-[TYPE]]] ..." - -#. TRANSLATORS: MBR type is one-byte partition -#. type id. -#: grub-core/commands/gptsync.c:255 -msgid "" -"Fill hybrid MBR of GPT drive DEVICE. Specified partitions will be a part of " -"hybrid MBR. Up to 3 partitions are allowed. TYPE is an MBR type. + means " -"that partition is active. Only one partition can be active." -msgstr "" -"Udfyld hybrid-MBR for GPT-drevet ENHED. Angivne partitioner vil være en del " -"af hybrid-MBR. Der tillades op til tre partitioner. TYPE er en MBR-type. + " -"betyder at partitionen er aktiv. Kun én partition kan være aktiv." - -#: grub-core/commands/halt.c:40 -msgid "" -"Halts the computer. This command does not work on all firmware " -"implementations." -msgstr "" -"Standser computeren. Denne kommando fungerer ikke på alle " -"firmwareimplementationer." - -#: grub-core/commands/hashsum.c:32 -msgid "Specify hash to use." -msgstr "Angiv den hash, der skal bruges." - -#: grub-core/commands/hashsum.c:32 -msgid "HASH" -msgstr "HASH" - -#: grub-core/commands/hashsum.c:33 -msgid "Check hashes of files with hash list FILE." -msgstr "Kontrollér hashværdier for filer med hashliste fra FIL." - -#: grub-core/commands/hashsum.c:35 -msgid "Base directory for hash list." -msgstr "Rodkatalog for hashliste." - -#. TRANSLATORS: platform here isn't identifier. It can be translated. -#: grub-core/commands/hashsum.c:35 grub-core/commands/ls.c:150 -#: grub-core/commands/macbless.c:226 grub-core/commands/syslinuxcfg.c:51 -#: grub-core/commands/syslinuxcfg.c:54 grub-core/kern/emu/main.c:106 -#: include/grub/util/install.h:50 include/grub/util/install.h:53 -#: include/grub/util/install.h:56 include/grub/util/install.h:59 -#: util/grub-install.c:250 util/grub-install.c:252 util/grub-install.c:297 -#: util/grub-install.c:299 util/grub-mkimage.c:64 util/grub-mkimage.c:67 -#: util/grub-mknetdir.c:46 util/grub-mknetdir.c:48 util/grub-mkrescue.c:99 -#: util/grub-setup.c:82 util/grub-syslinux2cfg.c:63 util/grub-syslinux2cfg.c:65 -#: util/grub-syslinux2cfg.c:67 util/grub-syslinux2cfg.c:71 -msgid "DIR" -msgstr "KAT" - -#: grub-core/commands/hashsum.c:37 -msgid "Don't stop after first error." -msgstr "Stop ikke efter første fejl." - -#: grub-core/commands/hashsum.c:38 -msgid "Uncompress file before checksumming." -msgstr "Udpak fil før tjeksumsberegning." - -#: grub-core/commands/hashsum.c:163 -#, c-format -msgid "%s: READ ERROR\n" -msgstr "%s: LÆSEFEJL\n" - -#: grub-core/commands/hashsum.c:177 -#, c-format -msgid "%s: HASH MISMATCH\n" -msgstr "%s: UOVERENSSTEMMELSE I HASH\n" - -#: grub-core/commands/hashsum.c:188 -#, c-format -msgid "%s: OK\n" -msgstr "%s: OK\n" - -#: grub-core/commands/hashsum.c:282 -msgid "-h HASH [-c FILE [-p PREFIX]] [FILE1 [FILE2 ...]]" -msgstr "-h HASH [-c FIL [-p PRÆFIKS]] [FIL1 [FIL2 ...]]" - -#. TRANSLATORS: "hash checksum" is just to -#. be a bit more precise, you can treat it as -#. just "hash". -#: grub-core/commands/hashsum.c:287 grub-core/commands/hashsum.c:292 -#: grub-core/commands/hashsum.c:297 grub-core/commands/hashsum.c:302 -#: grub-core/commands/hashsum.c:307 grub-core/commands/hashsum.c:313 -msgid "Compute or check hash checksum." -msgstr "Udregn eller kontrollér hash-tjeksummen." - -#: grub-core/commands/hashsum.c:290 grub-core/commands/hashsum.c:295 -#: grub-core/commands/hashsum.c:300 grub-core/commands/hashsum.c:305 -#: grub-core/commands/hashsum.c:311 -msgid "[-c FILE [-p PREFIX]] [FILE1 [FILE2 ...]]" -msgstr "[-c FIL [-p PRÆFIKS]] [FIL1 [FIL2 ...]]" - -#: grub-core/commands/hdparm.c:33 -msgid "" -"Set Advanced Power Management\n" -"(1=low, ..., 254=high, 255=off)." -msgstr "" -"Indstil avanceret strømstyring (APM)\n" -"(1=lav, ..., 254=høj, 255=deaktiveret)." - -#: grub-core/commands/hdparm.c:36 -msgid "Display power mode." -msgstr "Vis strømtilstand." - -#: grub-core/commands/hdparm.c:37 -msgid "Freeze ATA security settings until reset." -msgstr "Fastlås ATA-sikkerhedsindstillinger indtil nulstilling." - -#: grub-core/commands/hdparm.c:39 -msgid "Display SMART health status." -msgstr "Vis SMART-helbredsstatus." - -#: grub-core/commands/hdparm.c:40 -msgid "" -"Set Automatic Acoustic Management\n" -"(0=off, 128=quiet, ..., 254=fast)." -msgstr "" -"Indstil automatisk akustikstyring (AAM)\n" -"(0=deaktiveret, 128=stille, ..., 254=hurtig)." - -# fixmig: ved ikke hvilken 'standby' de taler om eller hvad oversættelsen bør være -#: grub-core/commands/hdparm.c:43 -msgid "" -"Set standby timeout\n" -"(0=off, 1=5s, 2=10s, ..., 240=20m, 241=30m, ...)." -msgstr "" -"Indstil tidsudløb for hvile (standby)\n" -"(0=deaktiveret, 1=5s, 2=10s, ..., 240=20m, 241=30m, ...)." - -#: grub-core/commands/hdparm.c:46 -msgid "Set drive to standby mode." -msgstr "Sæt drevet i hviletilstand (standby)." - -#: grub-core/commands/hdparm.c:47 -msgid "Set drive to sleep mode." -msgstr "Sæt drevet i hviletilstand (sleep)." - -#: grub-core/commands/hdparm.c:48 -msgid "Print drive identity and settings." -msgstr "Udskriv drevidentitet og indstillinger." - -#: grub-core/commands/hdparm.c:50 -msgid "Show raw contents of ATA IDENTIFY sector." -msgstr "Vis ubehandlet indhold af ATA IDENTIFY-sektor." - -#: grub-core/commands/hdparm.c:52 -msgid "Disable/enable SMART (0/1)." -msgstr "Deaktivér/aktivér SMART (0/1)." - -#: grub-core/commands/hdparm.c:53 -msgid "Do not print messages." -msgstr "Udskriv ikke meddelelser." - -#: grub-core/commands/hdparm.c:286 grub-core/commands/i386/rdmsr.c:68 -#: grub-core/commands/iorw.c:47 grub-core/commands/legacycfg.c:760 -#: grub-core/commands/legacycfg.c:812 grub-core/commands/macbless.c:190 -#: grub-core/commands/memrw.c:47 grub-core/commands/pgp.c:738 -#: grub-core/commands/pgp.c:792 grub-core/commands/search.c:304 -#: grub-core/commands/search_wrap.c:179 grub-core/commands/setpci.c:243 -#: grub-core/commands/sleep.c:71 grub-core/fs/zfs/zfsinfo.c:279 -#: grub-core/fs/zfs/zfsinfo.c:358 grub-core/gettext/gettext.c:492 -#: grub-core/kern/corecmd.c:65 grub-core/kern/corecmd.c:79 -#: grub-core/mmap/mmap.c:430 grub-core/net/dns.c:713 grub-core/net/dns.c:745 -#: grub-core/net/net.c:694 grub-core/net/net.c:1052 -#: grub-core/normal/context.c:194 grub-core/script/execute.c:131 -#: grub-core/term/gfxterm_background.c:136 -msgid "one argument expected" -msgstr "ét argument forventet" - -#: grub-core/commands/hdparm.c:440 -msgid "[OPTIONS] DISK" -msgstr "[TILVALG] DISK" - -#: grub-core/commands/hdparm.c:441 -msgid "Get/set ATA disk parameters." -msgstr "Vis/angiv ATA-diskparametre." - -#: grub-core/commands/help.c:132 grub-core/lib/arg.c:109 -#: grub-core/lib/gnulib/argp-help.c:1616 -msgid "Usage:" -msgstr "Brug:" - -#: grub-core/commands/help.c:146 -msgid "[PATTERN ...]" -msgstr "[MØNSTER ...]" - -#: grub-core/commands/help.c:147 -msgid "Show a help message." -msgstr "Vis en hjælpebesked." - -# jf. man-siden for hexdump, dog omskrevet til noget mere indirekte så der ikke kan opstå misforståelser -#: grub-core/commands/hexdump.c:31 -msgid "Skip offset bytes from the beginning of file." -msgstr "Spring et antal byte over fra filens begyndelse." - -#: grub-core/commands/hexdump.c:33 -msgid "Read only LENGTH bytes." -msgstr "Læs kun LÆNGDE byte." - -#: grub-core/commands/hexdump.c:125 -msgid "[OPTIONS] FILE_OR_DEVICE" -msgstr "[TILVALG] FIL_ELLER_ENHED" - -#: grub-core/commands/hexdump.c:126 -msgid "Show raw contents of a file or memory." -msgstr "Vis ubehandlet indhold af en fil eller hukommelsen." - -#: grub-core/commands/i386/cmosdump.c:58 -msgid "Show raw dump of the CMOS contents." -msgstr "Vis rå dump af CMOS-indholdet." - -#: grub-core/commands/i386/cmostest.c:108 -#: grub-core/commands/i386/cmostest.c:111 -#: grub-core/commands/i386/cmostest.c:114 -msgid "BYTE:BIT" -msgstr "BYTE:BIT" - -#: grub-core/commands/i386/cmostest.c:109 -msgid "Test bit at BYTE:BIT in CMOS." -msgstr "Test bit ved BYTE:BIT i CMOS." - -#: grub-core/commands/i386/cmostest.c:112 -msgid "Clear bit at BYTE:BIT in CMOS." -msgstr "Ryd bit ved BYTE:BIT i CMOS." - -#. TRANSLATORS: A bit may be either set (1) or clear (0). -#: grub-core/commands/i386/cmostest.c:116 -msgid "Set bit at BYTE:BIT in CMOS." -msgstr "Angiv bit ved BYTE:BIT i CMOS." - -#: grub-core/commands/i386/coreboot/cb_timestamps.c:120 -msgid "Show coreboot boot time statistics." -msgstr "Vis statistik for coreboot-opstartstid." - -#: grub-core/commands/i386/coreboot/cbls.c:137 -msgid "List coreboot tables." -msgstr "Vis coreboot-tabeller." - -#. TRANSLATORS: "(default)" at the end means that this option is used if -#. no argument is specified. -#: grub-core/commands/i386/cpuid.c:36 -msgid "Check if CPU supports 64-bit (long) mode (default)." -msgstr "Kontrollér om CPU understøtter (lang) 64-bit-tilstand (standard)." - -#: grub-core/commands/i386/cpuid.c:37 -msgid "Check if CPU supports Physical Address Extension." -msgstr "Kontrollér om CPU understøtter fysisk adresseudvidelse." - -#: grub-core/commands/i386/cpuid.c:119 -msgid "Check for CPU features." -msgstr "Kontrollér for CPU-funktioner." - -#. TRANSLATORS: In this file "mapping" refers to a change GRUB makes so if -#. your language doesn't have an equivalent of "mapping" you can -#. use the word like "rerouting". -#. -#: grub-core/commands/i386/pc/drivemap.c:43 -msgid "Show the current mappings." -msgstr "Vis de aktuelle afbildninger." - -#: grub-core/commands/i386/pc/drivemap.c:44 -msgid "Reset all mappings to the default values." -msgstr "Nulstil alle afbildninger til standardværdierne." - -#: grub-core/commands/i386/pc/drivemap.c:45 -msgid "Perform both direct and reverse mappings." -msgstr "Udfør både direkte og omvendte afbildninger." - -#: grub-core/commands/i386/pc/drivemap.c:184 -msgid "No drives have been remapped" -msgstr "Intet drev er blevet genafbildet" - -#. TRANSLATORS: This is the header of mapping list. -#. On the left is how OS will see the disks and -#. on the right current GRUB vision. -#: grub-core/commands/i386/pc/drivemap.c:191 -msgid "OS disk #num ------> GRUB/BIOS device" -msgstr "OS-disk #num ------> GRUB/BIOS-enhed" - -#: grub-core/commands/i386/pc/drivemap.c:413 -msgid "-l | -r | [-s] grubdev osdisk." -msgstr "-l | -r | [-s] grubdev osdisk." - -#: grub-core/commands/i386/pc/drivemap.c:414 -msgid "Manage the BIOS drive mappings." -msgstr "Håndtér BIOS-drevafbildinger." - -#: grub-core/commands/i386/pc/halt.c:31 -msgid "Do not use APM to halt the computer." -msgstr "Brug ikke APM til at standse computeren." - -#: grub-core/commands/i386/pc/halt.c:119 -msgid "Halt the system, if possible using APM." -msgstr "Stands systemet, med APM hvis muligt." - -#: grub-core/commands/i386/pc/lsapm.c:75 -msgid "no APM found" -msgstr "ingen APM fundet" - -#: grub-core/commands/i386/pc/lsapm.c:77 -#, c-format -msgid "" -"Version %u.%u\n" -"32-bit CS = 0x%x, len = 0x%x, offset = 0x%x\n" -"16-bit CS = 0x%x, len = 0x%x\n" -"DS = 0x%x, len = 0x%x\n" -msgstr "" -"Version %u.%u\n" -"32-bit CS = 0x%x, længde = 0x%x, position = 0x%x\n" -"16-bit CS = 0x%x, længde = 0x%x\n" -"DS = 0x%x, længde = 0x%x\n" - -#: grub-core/commands/i386/pc/lsapm.c:86 -msgid "16-bit protected interface supported\n" -msgstr "16-bit beskyttet grænseflade understøttes\n" - -#: grub-core/commands/i386/pc/lsapm.c:87 -msgid "16-bit protected interface unsupported\n" -msgstr "16-bit beskyttet grænseflade understøttes ikke\n" - -#: grub-core/commands/i386/pc/lsapm.c:89 -msgid "32-bit protected interface supported\n" -msgstr "32-bit beskyttet grænseflade understøttes\n" - -#: grub-core/commands/i386/pc/lsapm.c:90 -msgid "32-bit protected interface unsupported\n" -msgstr "32-bit beskyttet grænseflade understøttes ikke\n" - -#: grub-core/commands/i386/pc/lsapm.c:92 -msgid "CPU Idle slows down processor\n" -msgstr "Processor kører langsommere når CPU er ledig\n" - -#: grub-core/commands/i386/pc/lsapm.c:93 -msgid "CPU Idle doesn't slow down processor\n" -msgstr "Processor kører ikke langsommere når CPU er ledig\n" - -#: grub-core/commands/i386/pc/lsapm.c:95 -msgid "APM disabled\n" -msgstr "APM slået fra\n" - -#: grub-core/commands/i386/pc/lsapm.c:95 -msgid "APM enabled\n" -msgstr "APM slået til\n" - -#: grub-core/commands/i386/pc/lsapm.c:97 -msgid "APM disengaged\n" -msgstr "APM kører ikke\n" - -#: grub-core/commands/i386/pc/lsapm.c:97 -msgid "APM engaged\n" -msgstr "APM kører\n" - -#: grub-core/commands/i386/pc/lsapm.c:107 -msgid "Show APM information." -msgstr "Vis APM-oplysninger." - -#. TRANSLATORS: It's musical notes, not the notes -#. you take. Play command expects arguments which can -#. be either a filename or tempo+notes. -#. This error happens if none is specified. -#: grub-core/commands/i386/pc/play.c:88 -msgid "filename or tempo and notes expected" -msgstr "filnavn eller tempo samt noder forventet" - -#: grub-core/commands/i386/pc/play.c:113 grub-core/commands/i386/pc/play.c:144 -#, c-format -msgid "Invalid tempo in %s" -msgstr "Ugyldigt tempo i %s" - -#: grub-core/commands/i386/pc/play.c:151 grub-core/commands/macbless.c:172 -#: grub-core/fs/archelp.c:260 grub-core/fs/bfs.c:621 grub-core/fs/bfs.c:704 -#: grub-core/fs/btrfs.c:1726 grub-core/fs/btrfs.c:1755 -#: grub-core/fs/btrfs.c:1799 grub-core/fs/btrfs.c:1882 -#: grub-core/fs/btrfs.c:1906 grub-core/fs/fshelp.c:257 grub-core/fs/jfs.c:696 -#: grub-core/fs/minix.c:426 grub-core/fs/ufs.c:544 grub-core/fs/zfs/zfs.c:2083 -#: grub-core/fs/zfs/zfs.c:2095 grub-core/fs/zfs/zfs.c:2301 -#: grub-core/net/http.c:120 -#, c-format -msgid "file `%s' not found" -msgstr "fil \"%s\" ikke fundet" - -#: grub-core/commands/i386/pc/play.c:162 grub-core/commands/i386/pc/play.c:171 -#: grub-core/kern/misc.c:419 grub-core/script/execute.c:138 -#: grub-core/script/execute.c:244 -msgid "unrecognized number" -msgstr "ukendt tal" - -#: grub-core/commands/i386/pc/play.c:190 -msgid "FILE | TEMPO [PITCH1 DURATION1] [PITCH2 DURATION2] ... " -msgstr "FIL | TEMPO [TONEHØJDE1 VARIGHED1] [TONEHØJDE2 VARIGHED2] ... " - -#: grub-core/commands/i386/pc/play.c:191 -msgid "Play a tune." -msgstr "Afspil en melodi." - -#: grub-core/commands/i386/pc/sendkey.c:39 -msgid "set numlock mode" -msgstr "sæt numlock-tilstand" - -#: grub-core/commands/i386/pc/sendkey.c:40 -msgid "set capslock mode" -msgstr "sæt capslock-tilstand" - -#: grub-core/commands/i386/pc/sendkey.c:41 -msgid "set scrolllock mode" -msgstr "sæt scrolllock-tilstand" - -#: grub-core/commands/i386/pc/sendkey.c:42 -msgid "set insert mode" -msgstr "sæt insert-tilstand" - -#: grub-core/commands/i386/pc/sendkey.c:43 -msgid "set pause mode" -msgstr "sæt pause-tilstand" - -#: grub-core/commands/i386/pc/sendkey.c:44 -msgid "press left shift" -msgstr "tryk på venstre skift" - -#: grub-core/commands/i386/pc/sendkey.c:45 -msgid "press right shift" -msgstr "tryk på højre skift" - -#: grub-core/commands/i386/pc/sendkey.c:46 -msgid "press SysRq" -msgstr "tryk på SysRq" - -#: grub-core/commands/i386/pc/sendkey.c:47 -msgid "press NumLock key" -msgstr "tryk på NumLock-tasten" - -#: grub-core/commands/i386/pc/sendkey.c:48 -msgid "press CapsLock key" -msgstr "tryk på CapsLock-tasten" - -#: grub-core/commands/i386/pc/sendkey.c:49 -msgid "press ScrollLock key" -msgstr "tryk på ScrollLock-tasten" - -#: grub-core/commands/i386/pc/sendkey.c:50 -msgid "press Insert key" -msgstr "tryk på Insert-tasten" - -#: grub-core/commands/i386/pc/sendkey.c:51 -msgid "press left alt" -msgstr "tryk på venstre alt" - -#: grub-core/commands/i386/pc/sendkey.c:52 -msgid "press right alt" -msgstr "tryk på højre alt" - -#: grub-core/commands/i386/pc/sendkey.c:53 -msgid "press left ctrl" -msgstr "tryk på venstre ctrl" - -#: grub-core/commands/i386/pc/sendkey.c:54 -msgid "press right ctrl" -msgstr "tryk på højre ctrl" - -#: grub-core/commands/i386/pc/sendkey.c:55 -msgid "don't update LED state" -msgstr "opdatér ikke LED-tilstand" - -#: grub-core/commands/i386/pc/sendkey.c:372 -msgid "[KEYSTROKE1] [KEYSTROKE2] ..." -msgstr "[TASTETRYK1] [TASTETRYK2] ..." - -#. TRANSLATORS: It can emulate multiple -#. keypresses. -#: grub-core/commands/i386/pc/sendkey.c:375 -msgid "Emulate a keystroke sequence" -msgstr "Emulér en følge af tastetryk" - -#: grub-core/commands/i386/rdmsr.c:37 grub-core/commands/iorw.c:34 -#: grub-core/commands/memrw.c:33 grub-core/commands/setpci.c:73 -msgid "Save read value into variable VARNAME." -msgstr "Gem den læste værdi i variablen VARNAVN." - -#: grub-core/commands/i386/rdmsr.c:38 grub-core/commands/iorw.c:35 -#: grub-core/commands/memrw.c:34 grub-core/commands/probe.c:40 -#: grub-core/commands/search_wrap.c:40 grub-core/commands/setpci.c:74 -#: grub-core/commands/tr.c:32 -msgid "VARNAME" -msgstr "VARNAVN" - -#: grub-core/commands/i386/rdmsr.c:55 grub-core/commands/i386/rdmsr.c:60 -#: grub-core/commands/i386/rdmsr.c:65 grub-core/commands/i386/wrmsr.c:47 -#: grub-core/commands/i386/wrmsr.c:52 grub-core/commands/i386/wrmsr.c:57 -#, fuzzy -msgid "unsupported instruction" -msgstr "uunderstøttet gzip-format" - -#: grub-core/commands/i386/rdmsr.c:77 grub-core/commands/i386/wrmsr.c:69 -#: grub-core/commands/i386/wrmsr.c:77 grub-core/net/dns.c:727 -msgid "invalid argument" -msgstr "ugyldigt argument" - -#: grub-core/commands/i386/rdmsr.c:94 grub-core/commands/memrw.c:125 -#: grub-core/commands/memrw.c:129 grub-core/commands/memrw.c:133 -msgid "ADDR" -msgstr "ADR" - -#: grub-core/commands/i386/rdmsr.c:95 -msgid "Read a CPU model specific register." -msgstr "" - -#: grub-core/commands/i386/wrmsr.c:86 -#, fuzzy -msgid "ADDR VALUE" -msgstr "ADR VÆRDI [MASKE]" - -#: grub-core/commands/i386/wrmsr.c:87 -msgid "Write a value to a CPU model specific register." -msgstr "" - -#: grub-core/commands/ieee1275/suspend.c:34 -msgid "Run `go' to resume GRUB." -msgstr "Kør \"go\" for at genoptage GRUB." - -#: grub-core/commands/ieee1275/suspend.c:45 -msgid "Return to IEEE1275 prompt." -msgstr "Vend tilbage til IEEE1275-prompten." - -#: grub-core/commands/iorw.c:123 grub-core/commands/iorw.c:127 -#: grub-core/commands/iorw.c:131 grub-core/gdb/gdb.c:79 -msgid "PORT" -msgstr "PORT" - -#: grub-core/commands/iorw.c:123 -msgid "Read 8-bit value from PORT." -msgstr "Læs 8-bit-værdi fra PORT." - -#: grub-core/commands/iorw.c:127 -msgid "Read 16-bit value from PORT." -msgstr "Læs 16-bit-værdi fra PORT." - -#: grub-core/commands/iorw.c:131 -msgid "Read 32-bit value from PORT." -msgstr "Læs 32-bit-værdi fra PORT." - -#: grub-core/commands/iorw.c:135 grub-core/commands/iorw.c:139 -msgid "PORT VALUE [MASK]" -msgstr "PORT VÆRDI [MASKE]" - -#: grub-core/commands/iorw.c:136 -msgid "Write 8-bit VALUE to PORT." -msgstr "Skriv 8-bit-VÆRDI til PORT." - -#: grub-core/commands/iorw.c:140 -msgid "Write 16-bit VALUE to PORT." -msgstr "Skriv 16-bit-VÆRDI til PORT." - -#: grub-core/commands/iorw.c:143 grub-core/commands/memrw.c:137 -#: grub-core/commands/memrw.c:141 grub-core/commands/memrw.c:145 -msgid "ADDR VALUE [MASK]" -msgstr "ADR VÆRDI [MASKE]" - -#: grub-core/commands/iorw.c:144 -msgid "Write 32-bit VALUE to PORT." -msgstr "Skriv 32-bit-VÆRDI til PORT." - -#: grub-core/commands/keylayouts.c:215 grub-core/commands/loadenv.c:61 -#: grub-core/commands/nativedisk.c:189 grub-core/efiemu/main.c:235 -#: grub-core/font/font.c:428 grub-core/gfxmenu/gfxmenu.c:63 -#: grub-core/kern/device.c:42 grub-core/kern/dl.c:740 -#, c-format -msgid "variable `%s' isn't set" -msgstr "variablen \"%s\" er ikke sat" - -#: grub-core/commands/keylayouts.c:301 -msgid "Load a keyboard layout." -msgstr "Indlæs et tastaturlayout." - -#. TRANSLATORS: "Check" in a sense that if this key is pressed then -#. "true" is returned, otherwise "false". -#: grub-core/commands/keystatus.c:32 -msgid "Check Shift key." -msgstr "Kontrollér skift-tasten." - -#: grub-core/commands/keystatus.c:33 -msgid "Check Control key." -msgstr "Kontrollér Ctrl-tasten." - -#: grub-core/commands/keystatus.c:34 -msgid "Check Alt key." -msgstr "Kontrollér Alt-tasten." - -#. TRANSLATORS: there are 3 modifiers. -#: grub-core/commands/keystatus.c:106 -msgid "Check key modifier status." -msgstr "Kontrollér status af modifikationstaster." - -#: grub-core/commands/legacycfg.c:512 grub-core/commands/legacycfg.c:526 -#: grub-core/commands/legacycfg.c:546 grub-core/commands/legacycfg.c:559 -#: grub-core/commands/time.c:43 grub-core/script/function.c:109 -#: util/grub-file.c:100 util/grub-fstest.c:57 util/grub-mount.c:69 -#, c-format -msgid "can't find command `%s'" -msgstr "kan ikke finde kommandoen \"%s\"" - -#: grub-core/commands/legacycfg.c:813 grub-core/normal/auth.c:225 -#: util/grub-mkpasswd-pbkdf2.c:139 -msgid "Enter password: " -msgstr "Indtast adgangskode: " - -#. TRANSLATORS: "legacy config" means -#. "config as used by grub-legacy". -#: grub-core/commands/legacycfg.c:837 -msgid "Parse legacy config in same context" -msgstr "Fortolk ældre konfiguration i samme kontekst" - -#: grub-core/commands/legacycfg.c:842 -msgid "Parse legacy config in new context" -msgstr "Fortolk ældre konfiguration i ny kontekst" - -#: grub-core/commands/legacycfg.c:847 -msgid "Parse legacy config in same context taking only menu entries" -msgstr "" -"Fortolk ældre konfiguration i samme kontekst, og medtag kun menuindgange" - -#: grub-core/commands/legacycfg.c:852 -msgid "Parse legacy config in new context taking only menu entries" -msgstr "Fortolk ældre konfiguration i ny kontekst, og medtag kun menuindgange" - -#: grub-core/commands/legacycfg.c:856 -msgid "[--no-mem-option] [--type=TYPE] FILE [ARG ...]" -msgstr "[--no-mem-option] [--type=TYPE] FIL [ARG ...]" - -#: grub-core/commands/legacycfg.c:857 -msgid "Simulate grub-legacy `kernel' command" -msgstr "Simulér \"kerne\"-kommando til ældre grub" - -#: grub-core/commands/legacycfg.c:861 grub-core/commands/legacycfg.c:865 -msgid "FILE [ARG ...]" -msgstr "FIL [ARG ...]" - -#: grub-core/commands/legacycfg.c:862 -msgid "Simulate grub-legacy `initrd' command" -msgstr "Simulér \"initrd\"-kommando til ældre grub" - -#: grub-core/commands/legacycfg.c:866 -msgid "Simulate grub-legacy `modulenounzip' command" -msgstr "Simulér \"modulenounzip\"-kommando til ældre grub" - -#: grub-core/commands/legacycfg.c:870 grub-core/commands/legacycfg.c:875 -msgid "[--md5] PASSWD [FILE]" -msgstr "[--md5] ADGANGSKODE [FIL]" - -#: grub-core/commands/legacycfg.c:871 -msgid "Simulate grub-legacy `password' command" -msgstr "Simulér \"password\"-kommando til ældre grub" - -#: grub-core/commands/legacycfg.c:876 -msgid "Simulate grub-legacy `password' command in menu entry mode" -msgstr "Simulér \"password\"-kommando til ældre grub i menuindgangsstilstand" - -#. TRANSLATORS: This option is used to override default filename -#. for loading and storing environment. -#: grub-core/commands/loadenv.c:37 -msgid "Specify filename." -msgstr "Angiv filnavn." - -#: grub-core/commands/loadenv.c:39 -msgid "Skip signature-checking of the environment file." -msgstr "Spring signaturkontrol over for miljøfil." - -#: grub-core/commands/loadenv.c:451 -msgid "[-f FILE] [-s|--skip-sig] [variable_name_to_whitelist] [...]" -msgstr "[-f FIL] [-s|--skip-sig] [variabelnavn_som_hvidlistes] [...]" - -#: grub-core/commands/loadenv.c:452 -msgid "Load variables from environment block file." -msgstr "Indlæs variable fra miljøblokfil." - -#: grub-core/commands/loadenv.c:455 -msgid "[-f FILE]" -msgstr "[-f FIL]" - -#: grub-core/commands/loadenv.c:456 -msgid "List variables from environment block file." -msgstr "Vis variable fra miljøblokfil." - -#: grub-core/commands/loadenv.c:460 -msgid "[-f FILE] variable_name [...]" -msgstr "[-f FIL] variabelnavn [...]" - -#: grub-core/commands/loadenv.c:461 -msgid "Save variables to environment block file." -msgstr "Gem variable til miljøblokfil." - -#: grub-core/commands/ls.c:40 -msgid "Show a long list with more detailed information." -msgstr "Vis en lang liste med mere detaljeret information." - -#: grub-core/commands/ls.c:41 -msgid "Print sizes in a human readable format." -msgstr "Udskriv størrelser i læsevenligt format." - -#: grub-core/commands/ls.c:42 -msgid "List all files." -msgstr "Vis liste af alle filer." - -#: grub-core/commands/ls.c:73 -msgid "Network protocols:" -msgstr "Netværksprotokoller:" - -#: grub-core/commands/ls.c:295 -msgid "[-l|-h|-a] [FILE ...]" -msgstr "[-l|-h|-a] [FIL ...]" - -#: grub-core/commands/ls.c:296 -msgid "List devices and files." -msgstr "Vis liste af enheder og filer." - -#: grub-core/commands/lsacpi.c:255 -msgid "Show version 1 tables only." -msgstr "Vis kun version 1-tabeller." - -#: grub-core/commands/lsacpi.c:256 -msgid "Show version 2 and version 3 tables only." -msgstr "Vis kun version 2- og version 3-tabeller." - -#: grub-core/commands/lsacpi.c:306 -msgid "Show ACPI information." -msgstr "Vis ACPI-oplysninger." - -#: grub-core/commands/lsmmap.c:31 -msgid "available RAM" -msgstr "tilgængelig RAM" - -#: grub-core/commands/lsmmap.c:32 -msgid "reserved RAM" -msgstr "reserveret RAM" - -#. TRANSLATORS: this refers to memory where ACPI tables are stored -#. and which can be used by OS once it loads ACPI tables. -#: grub-core/commands/lsmmap.c:35 -msgid "ACPI reclaimable RAM" -msgstr "RAM som ACPI kan genvinde" - -#. TRANSLATORS: this refers to memory which ACPI-compliant OS -#. is required to save accross hibernations. -#: grub-core/commands/lsmmap.c:38 -msgid "ACPI non-volatile storage RAM" -msgstr "RAM som ACPI bruger til ikke-flygtigt lager" - -#: grub-core/commands/lsmmap.c:39 -msgid "faulty RAM (BadRAM)" -msgstr "fejlbehæftet RAM (BadRAM)" - -#: grub-core/commands/lsmmap.c:40 -msgid "persistent RAM" -msgstr "persistent RAM" - -#: grub-core/commands/lsmmap.c:41 -msgid "persistent RAM (legacy)" -msgstr "persistent RAM (ældre)" - -#: grub-core/commands/lsmmap.c:42 -msgid "RAM holding coreboot tables" -msgstr "RAM som indeholder coreboot-tabeller" - -#: grub-core/commands/lsmmap.c:43 -msgid "RAM holding firmware code" -msgstr "RAM som indeholder firmwarekode" - -#: grub-core/commands/lsmmap.c:52 -#, c-format -msgid "base_addr = 0x%llx, length = 0x%llx, %s\n" -msgstr "base_addr = 0x%llx, længde = 0x%llx, %s\n" - -#: grub-core/commands/lsmmap.c:55 -#, c-format -msgid "base_addr = 0x%llx, length = 0x%llx, type = 0x%x\n" -msgstr "base_addr = 0x%llx, længde = 0x%llx, type = 0x%x\n" - -#: grub-core/commands/lsmmap.c:79 -msgid "List memory map provided by firmware." -msgstr "Vis hukommelsesafbildningen tilgængelig via firmware." - -#: grub-core/commands/lspci.c:232 -msgid "List PCI devices." -msgstr "Vis liste af PCI-enheder." - -# ? -#: grub-core/commands/macbless.c:224 -msgid "Bless FILE of HFS or HFS+ partition for intel macs." -msgstr "Bless FIL for HFS eller HFS+-partition for intel-mac." - -# ? -#: grub-core/commands/macbless.c:228 -msgid "Bless DIR of HFS or HFS+ partition for PPC macs." -msgstr "Bless KAT for HFS eller HFS+-partition for PPC-mac." - -#: grub-core/commands/memrw.c:125 -msgid "Read 8-bit value from ADDR." -msgstr "Læs 8-bit-værdi fra ADR." - -#: grub-core/commands/memrw.c:129 -msgid "Read 16-bit value from ADDR." -msgstr "Læs 16-bit-værdi fra ADR." - -#: grub-core/commands/memrw.c:133 -msgid "Read 32-bit value from ADDR." -msgstr "Læs 32-bit-værdi fra ADR." - -#: grub-core/commands/memrw.c:138 -msgid "Write 8-bit VALUE to ADDR." -msgstr "Skriv 8-bit-VÆRDI til ADR." - -#: grub-core/commands/memrw.c:142 -msgid "Write 16-bit VALUE to ADDR." -msgstr "Skriv 16-bit-VÆRDI til ADR." - -#: grub-core/commands/memrw.c:146 -msgid "Write 32-bit VALUE to ADDR." -msgstr "Skriv 32-bit-VÆRDI til ADR." - -#: grub-core/commands/menuentry.c:31 -msgid "Menu entry type." -msgstr "Menuindgangstype." - -#: grub-core/commands/menuentry.c:31 grub-core/commands/menuentry.c:38 -#: grub-core/commands/menuentry.c:39 grub-core/gettext/gettext.c:520 -#: util/grub-fstest.c:520 util/grub-install.c:291 util/grub-install.c:304 -#: util/grub-mknetdir.c:51 util/grub-mkrescue.c:109 util/grub-mkrescue.c:110 -#: util/grub-mount.c:453 util/grub-render-label.c:65 -msgid "STRING" -msgstr "STRENG" - -#: grub-core/commands/menuentry.c:33 -msgid "List of users allowed to boot this entry." -msgstr "Liste af brugere, der har tilladelse til at starte op med dette punkt." - -#: grub-core/commands/menuentry.c:33 -msgid "USERNAME[,USERNAME]" -msgstr "BRUGERNAVN[,BRUGERNAVN]" - -#: grub-core/commands/menuentry.c:36 -msgid "Keyboard key to quickly boot this entry." -msgstr "Tastegenvej til hurtigt at starte med dette punkt." - -#: grub-core/commands/menuentry.c:36 -msgid "KEYBOARD_KEY" -msgstr "TAST" - -#: grub-core/commands/menuentry.c:38 -msgid "Use STRING as menu entry body." -msgstr "Brug STRENG som menuindgangskrop." - -#: grub-core/commands/menuentry.c:39 -msgid "Menu entry identifier." -msgstr "Identifikator for menuindgang." - -#. TRANSLATORS: menu entry can either be bootable by anyone or only by -#. handful of users. By default when security is active only superusers can -#. boot a given menu entry. With --unrestricted (this option) -#. anyone can boot it. -#: grub-core/commands/menuentry.c:44 -msgid "This entry can be booted by any user." -msgstr "Dette punkt kan startes op af enhver bruger." - -#: grub-core/commands/menuentry.c:323 grub-core/commands/menuentry.c:328 -#: grub-core/tests/test_blockarg.c:46 -msgid "BLOCK" -msgstr "BLOK" - -#: grub-core/commands/menuentry.c:323 -msgid "Define a menu entry." -msgstr "Definér en menuindgang." - -#: grub-core/commands/menuentry.c:328 -msgid "Define a submenu." -msgstr "Definér en undermenu." - -#. TRANSLATORS: this is module list header. Name -#. is module name, Ref Count is a reference counter -#. (how many modules or open descriptors use it). -#. Dependencies are the other modules it uses. -#. -#: grub-core/commands/minicmd.c:162 -msgid "Name\tRef Count\tDependencies\n" -msgstr "Navn\tAntal ref\tAfhængigheder\n" - -#: grub-core/commands/minicmd.c:201 -msgid "Show this message." -msgstr "Vis denne meddelelse." - -#: grub-core/commands/minicmd.c:204 -msgid "ADDR [SIZE]" -msgstr "ADR [STØRRELSE]" - -#: grub-core/commands/minicmd.c:204 -msgid "Show memory contents." -msgstr "Vis indholdet af hukommelsen." - -#: grub-core/commands/minicmd.c:207 grub-core/kern/corecmd.c:188 -#: util/grub-install.c:275 -msgid "MODULE" -msgstr "MODUL" - -#: grub-core/commands/minicmd.c:207 -msgid "Remove a module." -msgstr "Fjern et modul." - -#: grub-core/commands/minicmd.c:210 -msgid "Show loaded modules." -msgstr "Vis indlæste moduler." - -#: grub-core/commands/minicmd.c:213 -msgid "Exit from GRUB." -msgstr "Gå ud af GRUB." - -#: grub-core/commands/mips/loongson/lsspd.c:42 -msgid "No CS5536 found" -msgstr "Ingen CS5536 fundet" - -#: grub-core/commands/mips/loongson/lsspd.c:45 -#, c-format -msgid "CS5536 at %d:%d.%d\n" -msgstr "CS5536 på %d:%d.%d\n" - -#. TRANSLATORS: System management bus is often used to access components like -#. RAM (info only, not data) or batteries. I/O space is where in memory -#. its ports are. -#: grub-core/commands/mips/loongson/lsspd.c:55 -#, c-format -msgid "System management bus controller I/O space is at 0x%x\n" -msgstr "I/O-pladsen for controlleren til systemhåndteringsbussen er 0x%x\n" - -#. TRANSLATORS: it's shown in a report in a way -#. like number 1: ... number 2: ... -#. -#: grub-core/commands/mips/loongson/lsspd.c:66 -#, c-format -msgid "RAM slot number %d\n" -msgstr "RAM-sokkel nummer %d\n" - -#: grub-core/commands/mips/loongson/lsspd.c:73 -#, c-format -msgid "Written SPD bytes: %d B.\n" -msgstr "SPD-byte skrevet: %d B.\n" - -#: grub-core/commands/mips/loongson/lsspd.c:74 -#, c-format -msgid "Total flash size: %d B.\n" -msgstr "Størrelse af flash i alt: %d B.\n" - -#: grub-core/commands/mips/loongson/lsspd.c:79 -msgid "Memory type: DDR2." -msgstr "Hukommelsestype: DDR2." - -#: grub-core/commands/mips/loongson/lsspd.c:83 -#, c-format -msgid "Part no: %s.\n" -msgstr "Delnummer: %s.\n" - -#: grub-core/commands/mips/loongson/lsspd.c:86 -msgid "Memory type: Unknown." -msgstr "Hukommelsestype: Ukendt." - -#: grub-core/commands/mips/loongson/lsspd.c:97 -msgid "Print Memory information." -msgstr "Udskriv hukommelsesoplysninger." - -#: grub-core/commands/nativedisk.c:118 grub-core/commands/probe.c:118 -#: grub-core/commands/probe.c:124 util/grub-probe.c:450 -#, c-format -msgid "%s does not support UUIDs" -msgstr "%s understøtter ikke UUID'er" - -#: grub-core/commands/nativedisk.c:325 -msgid "[MODULE1 MODULE2 ...]" -msgstr "[MODUL1 MODUL2 ...]" - -#: grub-core/commands/nativedisk.c:326 -msgid "" -"Switch to native disk drivers. If no modules are specified default set (pata," -"ahci,usbms,ohci,uhci,ehci) is used" -msgstr "" -"Skift til platformsspecifikke diskdrivere. Hvis der ikke er angivet nogen " -"moduler, bruges standardmodulerne (pata,ahci,usbms,ohci,uhci,ehci)" - -#: grub-core/commands/parttool.c:40 -msgid "" -"Perform COMMANDS on partition.\n" -"Use `parttool PARTITION help' for the list of available commands." -msgstr "" -"Udfør KOMMANDOER på partition.\n" -"Kør \"parttool PARTITION help\" for at få en liste af tilgængelige " -"kommandoer." - -#: grub-core/commands/parttool.c:123 -msgid "=VAL" -msgstr "=VAL" - -#: grub-core/commands/parttool.c:136 -#, c-format -msgid "Sorry, no parttool is available for %s\n" -msgstr "Beklager, men der er ikke nogen parttool tilgængelig for %s\n" - -#: grub-core/commands/parttool.c:288 grub-core/lib/arg.c:285 -#: grub-core/lib/arg.c:351 -#, c-format -msgid "unknown argument `%s'" -msgstr "ukendt argument \"%s\"" - -# Så vidt jeg kan se er det to forskellige værdier, der angives på kommandolinjen, og derfor to ord -#: grub-core/commands/parttool.c:344 -msgid "PARTITION COMMANDS" -msgstr "PARTITION KOMMANDOER" - -# Så vidt jeg kan se er det to forskellige værdier, der angives på kommandolinjen, og derfor to ord -#: grub-core/commands/password.c:85 -msgid "USER PASSWORD" -msgstr "BRUGER ADGANGSKODE" - -#: grub-core/commands/password.c:86 -msgid "Set user password (plaintext). Unrecommended and insecure." -msgstr "Angiv brugeradgangskode (klartekst). Dette er usikkert og frarådes." - -#. TRANSLATORS: it means that the string which -#. was supposed to be a password hash doesn't -#. have a correct format, not to password -#. mismatch. -#: grub-core/commands/password_pbkdf2.c:98 -#: grub-core/commands/password_pbkdf2.c:115 -#: grub-core/commands/password_pbkdf2.c:123 -#: grub-core/commands/password_pbkdf2.c:150 -#: grub-core/commands/password_pbkdf2.c:179 -msgid "invalid PBKDF2 password" -msgstr "ugyldig PBKDF2-adgangskode" - -#: grub-core/commands/password_pbkdf2.c:202 -msgid "USER PBKDF2_PASSWORD" -msgstr "BRUGER PBKDF2-ADGANGSKODE" - -#: grub-core/commands/password_pbkdf2.c:203 -msgid "Set user password (PBKDF2). " -msgstr "Angiv adgangskode for bruger (PBKDF2). " - -#: grub-core/commands/pcidump.c:39 grub-core/commands/setpci.c:69 -msgid "Select device by vendor and device IDs." -msgstr "Vælg enhed efter forhandler og enheds-id'er." - -#: grub-core/commands/pcidump.c:40 grub-core/commands/setpci.c:70 -msgid "[vendor]:[device]" -msgstr "[forhandler]:[enhed]" - -#: grub-core/commands/pcidump.c:41 grub-core/commands/setpci.c:71 -msgid "Select device by its position on the bus." -msgstr "Vælg enhed efter dens position på bussen." - -#: grub-core/commands/pcidump.c:42 grub-core/commands/setpci.c:72 -msgid "[bus]:[slot][.func]" -msgstr "[bus]:[plads][.funk]" - -#: grub-core/commands/pcidump.c:109 grub-core/commands/pcidump.c:138 -#: grub-core/commands/setpci.c:183 grub-core/commands/setpci.c:214 -#: grub-core/fs/zfs/zfs.c:3794 grub-core/kern/emu/hostdisk.c:458 -#: grub-core/kern/emu/hostdisk.c:473 grub-core/kern/file.c:44 -#, c-format -msgid "missing `%c' symbol" -msgstr "manglende \"%c\"-symbol" - -#: grub-core/commands/pcidump.c:168 -msgid "[-s POSITION] [-d DEVICE]" -msgstr "[-s POSITION] [-d ENHED]" - -#: grub-core/commands/pcidump.c:169 -msgid "Show raw dump of the PCI configuration space." -msgstr "Vis rå dump af PCI-konfigurationsrummet." - -#: grub-core/commands/pgp.c:45 -msgid "Skip signature-checking of the public key file." -msgstr "Spring signaturkontrol over i offentlig nøglefil." - -#. TRANSLATORS: it's about GNUPG signatures. -#: grub-core/commands/pgp.c:71 grub-core/commands/pgp.c:81 -#: grub-core/commands/pgp.c:86 grub-core/commands/pgp.c:96 -#: grub-core/commands/pgp.c:103 grub-core/commands/pgp.c:107 -#: grub-core/commands/pgp.c:114 grub-core/commands/pgp.c:119 -#: grub-core/commands/pgp.c:124 grub-core/commands/pgp.c:128 -#: grub-core/commands/pgp.c:268 grub-core/commands/pgp.c:276 -#: grub-core/commands/pgp.c:281 grub-core/commands/pgp.c:289 -#: grub-core/commands/pgp.c:320 grub-core/commands/pgp.c:327 -#: grub-core/commands/pgp.c:332 grub-core/commands/pgp.c:342 -#: grub-core/commands/pgp.c:468 grub-core/commands/pgp.c:471 -#: grub-core/commands/pgp.c:474 grub-core/commands/pgp.c:477 -#: grub-core/commands/pgp.c:484 grub-core/commands/pgp.c:490 -#: grub-core/commands/pgp.c:665 -msgid "bad signature" -msgstr "ugyldig signatur" - -#. TRANSLATORS: %08x is 32-bit key id. -#: grub-core/commands/pgp.c:636 grub-core/commands/pgp.c:812 -#, c-format -msgid "public key %08x not found" -msgstr "offentlig nøgle %08x ikke fundet" - -#: grub-core/commands/pgp.c:651 grub-core/disk/diskfilter.c:772 -#: grub-core/disk/diskfilter.c:782 grub-core/fs/ntfs.c:404 -#: grub-core/fs/zfs/zfs.c:1933 grub-core/normal/menu.c:428 -#, c-format -msgid "module `%s' isn't loaded" -msgstr "modulet \"%s\" er ikke indlæst" - -#: grub-core/commands/pgp.c:994 -msgid "[-s|--skip-sig] FILE SIGNATURE_FILE [PUBKEY_FILE]" -msgstr "[-s|--skip-sig] FIL SIGNATURFIL [OFFENTLIG_NØGLEFIL]" - -#: grub-core/commands/pgp.c:995 -msgid "Verify detached signature." -msgstr "Verificér løs signatur." - -#: grub-core/commands/pgp.c:998 -msgid "[-s|--skip-sig] PUBKEY_FILE" -msgstr "[-s|--skip-sig] OFFENTLIG_NØGLEFIL" - -#: grub-core/commands/pgp.c:999 -msgid "Add PUBKEY_FILE to trusted keys." -msgstr "Føj OFFENTLIG_NØGLEFIL til betroede nøgler." - -#: grub-core/commands/pgp.c:1003 -msgid "Show the list of trusted keys." -msgstr "Vis listen af betroede nøgler." - -#: grub-core/commands/pgp.c:1005 -msgid "PUBKEY_ID" -msgstr "OFFENTLIG_NØGLE_ID" - -#: grub-core/commands/pgp.c:1006 -msgid "Remove PUBKEY_ID from trusted keys." -msgstr "Fjern OFFENTLIG_NØGLE_ID fra betroede nøgler." - -#: grub-core/commands/probe.c:40 grub-core/commands/tr.c:32 -msgid "Set a variable to return value." -msgstr "Sæt en variabel til en returværdi." - -#. TRANSLATORS: It's a driver that is currently in use to access -#. the diven disk. -#: grub-core/commands/probe.c:43 -msgid "Determine driver." -msgstr "Bestem driver." - -#: grub-core/commands/probe.c:44 -msgid "Determine partition map type." -msgstr "Bestem type af partitionsafbildning." - -#: grub-core/commands/probe.c:45 -msgid "Determine filesystem type." -msgstr "Bestem type af filsystem." - -#: grub-core/commands/probe.c:46 -msgid "Determine filesystem UUID." -msgstr "Bestem UUID for filsystem." - -#: grub-core/commands/probe.c:47 -msgid "Determine filesystem label." -msgstr "Bestem etiket for filsystem." - -#: grub-core/commands/probe.c:139 grub-core/commands/probe.c:146 -#: util/grub-probe.c:462 -#, c-format -msgid "filesystem `%s' does not support labels" -msgstr "filsystemet \"%s\" understøtter ikke mærkater" - -#: grub-core/commands/probe.c:165 grub-core/fs/zfs/zfsinfo.c:430 -#: grub-core/loader/i386/bsd.c:169 util/grub-setup.c:223 -msgid "DEVICE" -msgstr "ENHED" - -#: grub-core/commands/probe.c:166 -msgid "Retrieve device info." -msgstr "Hent enhedsinformation." - -#: grub-core/commands/read.c:85 -msgid "[ENVVAR]" -msgstr "[MILJØVAR]" - -#: grub-core/commands/read.c:86 -msgid "Set variable with user input." -msgstr "Sæt variablen med brugerinddata." - -#: grub-core/commands/reboot.c:40 -msgid "Reboot the computer." -msgstr "Genstart computeren." - -#. TRANSLATORS: in regexp you can mark some -#. groups with parentheses. These groups are -#. then numbered and you can save some of -#. them in variables. In other programs -#. those components aree often referenced with -#. back slash, e.g. \1. Compare -#. sed -e 's,\([a-z][a-z]*\),lowercase=\1,g' -#. The whole matching component is saved in VARNAME, not its number. -#. -#: grub-core/commands/regexp.c:44 -msgid "Store matched component NUMBER in VARNAME." -msgstr "Gem matchet komponent NUMMER i VARNAVN." - -#: grub-core/commands/regexp.c:45 -msgid "[NUMBER:]VARNAME" -msgstr "[NUMMER:]VARNAVN" - -#. TRANSLATORS: This are two arguments. So it's -#. two separate units to translate and pay -#. attention not to reverse them. -#: grub-core/commands/regexp.c:157 -msgid "REGEXP STRING" -msgstr "REGUDTRYK STRENG" - -#: grub-core/commands/regexp.c:158 -msgid "Test if REGEXP matches STRING." -msgstr "Tjek om REGUDTRYK matcher STRENG." - -#: grub-core/commands/search.c:324 -msgid "NAME [VARIABLE] [HINTS]" -msgstr "NAVN [VARIABEL] [FIF]" - -#: grub-core/commands/search_file.c:4 -msgid "" -"Search devices by file. If VARIABLE is specified, the first device found is " -"set to a variable." -msgstr "" -"Søg i enheder efter fil. Hvis VARIABEL er angivet, vil variablen blive sat " -"til den først fundne enhed." - -#: grub-core/commands/search_label.c:4 -msgid "" -"Search devices by label. If VARIABLE is specified, the first device found is " -"set to a variable." -msgstr "" -"Søg i enheder efter etiket. Hvis VARIABEL er angivet, vil variablen blive " -"sat til den først fundne enhed." - -#: grub-core/commands/search_uuid.c:4 -msgid "" -"Search devices by UUID. If VARIABLE is specified, the first device found is " -"set to a variable." -msgstr "" -"Søg i enheder efter UUID. Hvis VARIABEL er angivet, vil variablen blive sat " -"til den først fundne enhed." - -#: grub-core/commands/search_wrap.c:34 -msgid "Search devices by a file." -msgstr "Søg efter enheder ud fra filnavn." - -#: grub-core/commands/search_wrap.c:35 -msgid "Search devices by a filesystem label." -msgstr "Søg efter enheder ud fra filsystemsetiket." - -#: grub-core/commands/search_wrap.c:37 -msgid "Search devices by a filesystem UUID." -msgstr "Søg efter enheder ud fra filsystems-UUID." - -#: grub-core/commands/search_wrap.c:40 -msgid "Set a variable to the first device found." -msgstr "Sæt en variabel til den første enhed, der findes." - -#: grub-core/commands/search_wrap.c:42 -msgid "Do not probe any floppy drive." -msgstr "Undersøg ingen diskettedrev." - -#: grub-core/commands/search_wrap.c:44 -msgid "" -"First try the device HINT. If HINT ends in comma, also try subpartitions" -msgstr "" -"Prøv først enheden FIF. Hvis FIF slutter på komma, så prøv også " -"underpartitioner" - -#: grub-core/commands/search_wrap.c:45 grub-core/commands/search_wrap.c:49 -#: grub-core/commands/search_wrap.c:53 grub-core/commands/search_wrap.c:57 -#: grub-core/commands/search_wrap.c:61 grub-core/commands/search_wrap.c:65 -msgid "HINT" -msgstr "FIF" - -#: grub-core/commands/search_wrap.c:47 -msgid "" -"First try the device HINT if currently running on IEEE1275. If HINT ends in " -"comma, also try subpartitions" -msgstr "" -"Prøv først enheds-FIF, hvis der i øjeblikket køres med IEEE1275. Hvis FIF " -"slutter med komma, så prøv også underpartitioner" - -#: grub-core/commands/search_wrap.c:51 -msgid "" -"First try the device HINT if currently running on BIOS. If HINT ends in " -"comma, also try subpartitions" -msgstr "" -"Prøv først enheds-FIF, hvis der i øjeblikket køres med BIOS. Hvis FIF " -"slutter med komma, så prøv også underpartitioner" - -#: grub-core/commands/search_wrap.c:55 -msgid "" -"First try the device HINT if direct hardware access is supported. If HINT " -"ends in comma, also try subpartitions" -msgstr "" -"Prøv først enheden FIF, hvis der understøttes direkte hardwareadgang. Hvis " -"FIF slutter med komma, så prøv også underpartitioner" - -#: grub-core/commands/search_wrap.c:59 -msgid "" -"First try the device HINT if currently running on EFI. If HINT ends in " -"comma, also try subpartitions" -msgstr "" -"Prøv først enheds-FIF, hvis der i øjeblikket køres med EFI. Hvis FIF slutter " -"med komma, så prøv også underpartitioner" - -#: grub-core/commands/search_wrap.c:63 -msgid "" -"First try the device HINT if currently running on ARC. If HINT ends in " -"comma, also try subpartitions" -msgstr "" -"Prøv først enheds-FIF, hvis der i øjeblikket køres på ARC. Hvis FIF slutter " -"med komma, så prøv også underpartitioner" - -#: grub-core/commands/search_wrap.c:207 -msgid "[-f|-l|-u|-s|-n] [--hint HINT [--hint HINT] ...] NAME" -msgstr "[-f|-l|-u|-s|-n] [--hint FIF [--hint FIF] ...] NAVN" - -#: grub-core/commands/search_wrap.c:209 -msgid "" -"Search devices by file, filesystem label or filesystem UUID. If --set is " -"specified, the first device found is set to a variable. If no variable name " -"is specified, `root' is used." -msgstr "" -"Søg efter enheder ud fra filnavn, filsystemsetiket eller filsystems-UUID. " -"Hvis --set er givet, vil den først fundne enhed blive sat til en variabel. " -"Hvis intet variabelnavn er givet, bruges \"root\"." - -# Sandsynligvis substantiv -#: grub-core/commands/setpci.c:132 -#, c-format -msgid "Register %x of %x:%02x.%x is %x\n" -msgstr "Register %x for %x:%02x.%x er %x\n" - -#: grub-core/commands/setpci.c:333 -msgid "[-s POSITION] [-d DEVICE] [-v VAR] REGISTER[=VALUE[:MASK]]" -msgstr "[-s POSITION] [-d ENHED] [-v VAR] REGISTER[=VÆRDI[:MASKE]]" - -#: grub-core/commands/setpci.c:335 -msgid "Manipulate PCI devices." -msgstr "Manipulér PCI-enheder." - -#: grub-core/commands/sleep.c:32 -msgid "Verbose countdown." -msgstr "Ekstra udskrift ved nedtælling." - -#: grub-core/commands/sleep.c:33 -msgid "Allow to interrupt with ESC." -msgstr "Tillad afbrydelse med ESC." - -#: grub-core/commands/sleep.c:109 -msgid "NUMBER_OF_SECONDS" -msgstr "ANTAL_SEKUNDER" - -#: grub-core/commands/sleep.c:110 -msgid "Wait for a specified number of seconds." -msgstr "Vent et givet antal sekunder." - -#: grub-core/commands/syslinuxcfg.c:50 util/grub-syslinux2cfg.c:66 -msgid "root directory of the syslinux disk [default=/]." -msgstr "rodkatalog for syslinux-disk [standard=/]." - -#: grub-core/commands/syslinuxcfg.c:53 util/grub-syslinux2cfg.c:72 -msgid "" -"current directory of syslinux [default is parent directory of input file]." -msgstr "" -"nuværende katalog for syslinux [standard er inputfilens ophavskatalog]." - -#: grub-core/commands/syslinuxcfg.c:55 util/grub-syslinux2cfg.c:75 -msgid "assume input is an isolinux configuration file." -msgstr "antag at input er en isolinux-konfigurationsfil." - -#: grub-core/commands/syslinuxcfg.c:56 util/grub-syslinux2cfg.c:76 -msgid "assume input is a pxelinux configuration file." -msgstr "antag at input er en pxelinux-konfigurationsfil." - -#: grub-core/commands/syslinuxcfg.c:57 util/grub-syslinux2cfg.c:77 -msgid "assume input is a syslinux configuration file." -msgstr "antag at input er en syslinux-konfigurationsfil." - -#. TRANSLATORS: "syslinux config" means -#. "config as used by syslinux". -#: grub-core/commands/syslinuxcfg.c:189 -msgid "Execute syslinux config in same context" -msgstr "Kør syslinux-konfiguration i samme kontekst" - -#: grub-core/commands/syslinuxcfg.c:195 -msgid "Execute syslinux config in new context" -msgstr "Kør syslinux-konfiguration i ny kontekst" - -#: grub-core/commands/syslinuxcfg.c:201 -msgid "Execute syslinux config in same context taking only menu entries" -msgstr "" -"Kør syslinux-konfiguration i samme kontekst, og medtag kun menuindgange" - -#: grub-core/commands/syslinuxcfg.c:207 -msgid "Execute syslinux config in new context taking only menu entries" -msgstr "Kør syslinux-konfiguration i ny kontekst, og medtag kun menuindgange" - -#: grub-core/commands/terminal.c:90 -msgid "no terminal specified" -msgstr "ingen terminal angivet" - -#: grub-core/commands/terminal.c:112 grub-core/commands/terminal.c:139 -#, c-format -msgid "terminal `%s' isn't found" -msgstr "terminalen \"%s\" ikke fundet" - -#: grub-core/commands/terminal.c:244 -msgid "Active input terminals:" -msgstr "Aktive inddataterminaler:" - -#: grub-core/commands/terminal.c:245 -msgid "Available input terminals:" -msgstr "Tilgængelige inddataterminaler:" - -#: grub-core/commands/terminal.c:261 -msgid "Active output terminals:" -msgstr "Aktive uddataterminaler:" - -#: grub-core/commands/terminal.c:262 -msgid "Available output terminals:" -msgstr "Tilgængelige uddataterminaler:" - -#: grub-core/commands/terminal.c:271 grub-core/commands/terminal.c:276 -msgid "[--append|--remove] [TERMINAL1] [TERMINAL2] ..." -msgstr "[--append|--remove] [TERMINAL1] [TERMINAL2] ..." - -#: grub-core/commands/terminal.c:273 -msgid "List or select an input terminal." -msgstr "Opskriv eller vælg en inputterminal." - -#: grub-core/commands/terminal.c:278 -msgid "List or select an output terminal." -msgstr "Opskriv eller vælg en outputterminal." - -#: grub-core/commands/test.c:444 -msgid "EXPRESSION ]" -msgstr "UDTRYK ]" - -#: grub-core/commands/test.c:444 grub-core/commands/test.c:447 -msgid "Evaluate an expression." -msgstr "Evaluér et udtryk." - -#: grub-core/commands/test.c:447 -msgid "EXPRESSION" -msgstr "UDTRYK" - -#: grub-core/commands/testload.c:164 -msgid "Load the same file in multiple ways." -msgstr "Indlæs same fil på flere måder." - -#: grub-core/commands/testspeed.c:35 -msgid "Specify size for each read operation" -msgstr "Angiv størrelse af hver læseoperation" - -#: grub-core/commands/testspeed.c:58 -msgid "invalid block size" -msgstr "ugyldig blokstørrelse" - -#: grub-core/commands/testspeed.c:80 -#, c-format -msgid "File size: %s\n" -msgstr "Filstørrelse: %s\n" - -#: grub-core/commands/testspeed.c:83 -#, c-format -msgid "Elapsed time: %d.%03d s \n" -msgstr "Forløbet tid: %d.%03d s \n" - -#: grub-core/commands/testspeed.c:92 -#, c-format -msgid "Speed: %s \n" -msgstr "Hastighed: %s \n" - -#: grub-core/commands/testspeed.c:107 -msgid "[-s SIZE] FILENAME" -msgstr "[-s STØRRELSE] FILNAVN" - -#: grub-core/commands/testspeed.c:108 -msgid "Test file read speed." -msgstr "Test fillæsehastighed." - -#: grub-core/commands/time.c:38 grub-core/script/execute.c:974 -msgid "no command is specified" -msgstr "ingen kommando angivet" - -#: grub-core/commands/time.c:50 -#, c-format -msgid "Elapsed time: %d.%03d seconds \n" -msgstr "Forløbet tid: %d.%03d sekunder \n" - -#: grub-core/commands/time.c:61 -msgid "COMMAND [ARGS]" -msgstr "KOMMANDO [ARG]" - -#: grub-core/commands/time.c:62 -msgid "Measure time used by COMMAND" -msgstr "Mål tiden, der bruges af KOMMANDO" - -#: grub-core/commands/tr.c:33 -msgid "Translate to upper case." -msgstr "Skift til store bogstaver." - -#: grub-core/commands/tr.c:34 -msgid "Translate to lower case." -msgstr "Skift til små bogstaver." - -#: grub-core/commands/tr.c:119 -msgid "[OPTIONS] [SET1] [SET2] [STRING]" -msgstr "[TILVALG] [SÆT1] [SÆT2] [STRENG]" - -#: grub-core/commands/tr.c:120 -msgid "Translate SET1 characters to SET2 in STRING." -msgstr "Erstat SÆT1-tegn med SÆT2-tegn i STRENG." - -#. TRANSLATORS: it's a command description. -#: grub-core/commands/true.c:50 -msgid "Do nothing, successfully." -msgstr "Gør intet, med succes." - -#. TRANSLATORS: it's a command description. -#: grub-core/commands/true.c:54 -msgid "Do nothing, unsuccessfully." -msgstr "Gør intet, fejlagtigt." - -#: grub-core/commands/usbtest.c:221 -msgid "Test USB support." -msgstr "Test USB-understøttelse." - -#: grub-core/commands/verifiers.c:120 -#, c-format -msgid "verification requested but nobody cares: %s" -msgstr "" - -#: grub-core/commands/verifiers.c:140 -#, fuzzy -msgid "big file signature isn't implemented yet" -msgstr "relokering 0x%x er endnu ikke implementeret" - -#: grub-core/commands/videoinfo.c:61 -msgid "Text-only " -msgstr "Kun tekst " - -#. TRANSLATORS: "Direct color" is a mode when the color components -#. are written dirrectly into memory. -#: grub-core/commands/videoinfo.c:66 -#, c-format -msgid "Direct color, mask: %d/%d/%d/%d pos: %d/%d/%d/%d" -msgstr "Direkte farve, maske: %d/%d/%d/%d, pos: %d/%d/%d/%d" - -# Det ville have været smart om de også havde skrevet hvordan ordet ville indgå i en sætning -#. TRANSLATORS: In "paletted color" mode you write the index of the color -#. in the palette. Synonyms include "packed pixel". -#: grub-core/commands/videoinfo.c:78 -msgid "Paletted " -msgstr "Palet " - -#: grub-core/commands/videoinfo.c:80 -msgid "YUV " -msgstr "YUV " - -#. TRANSLATORS: "Planar" is the video memory where you have to write -#. in several different banks "plans" to control the different color -#. components of the same pixel. -#: grub-core/commands/videoinfo.c:85 -msgid "Planar " -msgstr "Plan " - -#: grub-core/commands/videoinfo.c:87 -msgid "Hercules " -msgstr "Hercules " - -#: grub-core/commands/videoinfo.c:89 -msgid "CGA " -msgstr "CGA " - -# ? -#. TRANSLATORS: Non-chain 4 is a 256-color planar -#. (unchained) video memory mode. -#: grub-core/commands/videoinfo.c:93 -msgid "Non-chain 4 " -msgstr "Non-chain 4 " - -#: grub-core/commands/videoinfo.c:95 -msgid "Monochrome " -msgstr "Monokrom " - -#: grub-core/commands/videoinfo.c:97 -msgid "Unknown video mode " -msgstr "Ukendt videotilstand " - -#: grub-core/commands/videoinfo.c:111 -msgid " EDID checksum invalid" -msgstr " EDID-tjeksum er ugyldig" - -#: grub-core/commands/videoinfo.c:116 -#, c-format -msgid " EDID version: %u.%u\n" -msgstr " EDID-version: %u.%u\n" - -#: grub-core/commands/videoinfo.c:120 -#, c-format -msgid " Preferred mode: %ux%u\n" -msgstr " Foretrukken tilstand: %ux%u\n" - -#: grub-core/commands/videoinfo.c:123 -msgid " No preferred mode available\n" -msgstr " Ingen foretrukken tilstand tilgængelig\n" - -#: grub-core/commands/videoinfo.c:146 grub-core/video/video.c:490 -#: grub-core/video/video.c:498 grub-core/video/video.c:509 -#: grub-core/video/video.c:520 grub-core/video/video.c:528 -#, c-format -msgid "invalid video mode specification `%s'" -msgstr "ugyldig angivelse af videotilstand \"%s\"" - -#: grub-core/commands/videoinfo.c:168 -msgid "List of supported video modes:" -msgstr "Liste af understøttede videotilstande:" - -#: grub-core/commands/videoinfo.c:169 -msgid "Legend: mask/position=red/green/blue/reserved" -msgstr "Forklaring: maske/position=rød/grøn/blå/reserveret" - -#: grub-core/commands/videoinfo.c:176 -#, c-format -msgid "Adapter `%s':\n" -msgstr "Adapter \"%s\":\n" - -#: grub-core/commands/videoinfo.c:180 -msgid " No info available" -msgstr " Ingen tilgængelig info" - -#: grub-core/commands/videoinfo.c:198 -msgid " Failed to initialize video adapter" -msgstr " Kunne ikke klargøre videoadapteren" - -#. TRANSLATORS: "x" has to be entered in, -#. like an identifier, so please don't -#. use better Unicode codepoints. -#: grub-core/commands/videoinfo.c:239 grub-core/commands/videoinfo.c:248 -msgid "[WxH[xD]]" -msgstr "[BxH[xD]]" - -#: grub-core/commands/videoinfo.c:240 grub-core/commands/videoinfo.c:249 -msgid "" -"List available video modes. If resolution is given show only modes matching " -"it." -msgstr "" -"Vis de tilgængelige videotilstande. Hvis der er givet en opløsning, vises " -"kun dertil svarende tilstande." - -#. TRANSLATORS: "x" has to be entered in, -#. like an identifier, so please don't -#. use better Unicode codepoints. -#: grub-core/commands/videotest.c:225 -msgid "[WxH]" -msgstr "[BxH]" - -# WxH = width x height, metavariabel er oversat andetsteds -#. TRANSLATORS: Here, on the other hand, it's -#. nicer to use unicode cross instead of x. -#: grub-core/commands/videotest.c:228 -msgid "Test video subsystem in mode WxH." -msgstr "Test videoundersystemet i tilstanden BxH." - -#: grub-core/commands/videotest.c:231 -msgid "Test video subsystem." -msgstr "Test videoundersystem." - -#: grub-core/commands/xen/lsxen.c:80 grub-core/commands/xen/lsxen.c:82 -msgid "[DIR]" -msgstr "[KAT]" - -#: grub-core/commands/xen/lsxen.c:81 grub-core/commands/xen/lsxen.c:83 -msgid "List Xen storage." -msgstr "Vis Xen-lager." - -#. TRANSLATORS: GRUBUUID stands for "filesystem -#. UUID as used in GRUB". -#: grub-core/commands/xnu_uuid.c:110 -msgid "[-l] GRUBUUID [VARNAME]" -msgstr "[-l] GRUBUUID [VARNAVN]" - -#: grub-core/commands/xnu_uuid.c:111 -msgid "" -"Transform 64-bit UUID to format suitable for XNU. If -l is given keep it " -"lowercase as done by blkid." -msgstr "" -"Konvertér 64-bit-UUID til format, der passer til XNU. Hvis -l er givet, så " -"behold det i små bogstaver jævnfør blkid." - -#: grub-core/disk/arc/arcdisk.c:248 grub-core/disk/efi/efidisk.c:603 -#: grub-core/disk/i386/pc/biosdisk.c:498 grub-core/disk/i386/pc/biosdisk.c:543 -#: grub-core/disk/ieee1275/nand.c:198 grub-core/disk/ieee1275/obdisk.c:527 -#: grub-core/disk/ieee1275/ofdisk.c:586 -#, c-format -msgid "failure reading sector 0x%llx from `%s'" -msgstr "kunne ikke læse sektor 0x%llx fra \"%s\"" - -#: grub-core/disk/arc/arcdisk.c:284 grub-core/disk/efi/efidisk.c:626 -#: grub-core/disk/i386/pc/biosdisk.c:548 grub-core/disk/ieee1275/ofdisk.c:606 -#, c-format -msgid "failure writing sector 0x%llx to `%s'" -msgstr "kunne ikke skrive sektor 0x%llx til \"%s\"" - -#: grub-core/disk/cryptodisk.c:40 -msgid "Mount by UUID." -msgstr "Montér efter UUID." - -#. TRANSLATORS: It's still restricted to cryptodisks only. -#: grub-core/disk/cryptodisk.c:42 -msgid "Mount all." -msgstr "Montér alle." - -#: grub-core/disk/cryptodisk.c:43 -msgid "Mount all volumes with `boot' flag set." -msgstr "Montér alle diskenheder med \"boot\"-flaget." - -#. TRANSLATORS: The first %s is the file being looked at, the second %s is -#. the error message. -#: grub-core/disk/cryptodisk.c:526 grub-core/kern/emu/hostdisk.c:152 -#: grub-core/kern/emu/hostdisk.c:262 grub-core/kern/emu/hostdisk.c:434 -#: grub-core/kern/emu/misc.c:168 grub-core/kern/emu/misc.c:174 -#: grub-core/kern/emu/misc.c:196 grub-core/osdep/bsd/getroot.c:92 -#: grub-core/osdep/bsd/getroot.c:168 grub-core/osdep/hurd/getroot.c:68 -#: grub-core/osdep/linux/blocklist.c:65 grub-core/osdep/linux/getroot.c:150 -#: grub-core/osdep/linux/hostdisk.c:194 grub-core/osdep/linux/hostdisk.c:421 -#: grub-core/osdep/linux/ofpath.c:417 grub-core/osdep/linux/ofpath.c:422 -#: grub-core/osdep/linux/ofpath.c:517 grub-core/osdep/linux/ofpath.c:530 -#: grub-core/osdep/sun/getroot.c:110 grub-core/osdep/windows/blocklist.c:98 -#: grub-core/tests/video_checksum.c:279 util/editenv.c:46 util/glue-efi.c:115 -#: util/glue-efi.c:120 util/glue-efi.c:130 util/grub-editenv.c:138 -#: util/grub-editenv.c:192 util/grub-file.c:83 util/grub-fstest.c:128 -#: util/grub-fstest.c:568 util/grub-install-common.c:92 -#: util/grub-install-common.c:94 util/grub-install-common.c:101 -#: util/grub-install-common.c:529 util/grub-menulst2cfg.c:53 -#: util/grub-menulst2cfg.c:68 util/grub-mkimage.c:292 util/grub-mklayout.c:504 -#: util/grub-mklayout.c:516 util/grub-mknetdir.c:133 util/grub-mknetdir.c:151 -#: util/grub-mkrescue.c:627 util/grub-mkrescue.c:631 util/grub-mkrescue.c:879 -#: util/grub-mkrescue.c:883 util/grub-mkstandalone.c:253 util/grub-mount.c:498 -#: util/grub-render-label.c:169 util/grub-script-check.c:175 -#: util/grub-syslinux2cfg.c:181 util/grub-syslinux2cfg.c:191 -#: util/grub-syslinux2cfg.c:212 util/grub-syslinux2cfg.c:228 util/misc.c:91 -#: util/render-label.c:76 util/render-label.c:163 util/render-label.c:174 -#: util/resolve.c:246 util/setup.c:783 -#, c-format -msgid "cannot open `%s': %s" -msgstr "kan ikke åbne \"%s\": %s" - -#: grub-core/disk/cryptodisk.c:583 grub-core/disk/cryptodisk.c:628 -#: grub-core/kern/emu/hostdisk.c:270 grub-core/kern/emu/hostfs.c:142 -#: grub-core/osdep/linux/hostdisk.c:456 util/grub-editenv.c:143 -#: util/grub-editenv.c:149 util/grub-fstest.c:320 util/misc.c:111 -#, c-format -msgid "cannot seek `%s': %s" -msgstr "kan ikke søge i \"%s\": %s" - -#: grub-core/disk/cryptodisk.c:1144 -msgid "SOURCE|-u UUID|-a|-b" -msgstr "KILDE|-u UUID|-a|-b" - -#: grub-core/disk/cryptodisk.c:1145 -msgid "Mount a crypto device." -msgstr "Montér en kryptoenhed." - -#. TRANSLATORS: This message kicks in during the detection of -#. which modules needs to be included in core image. This happens -#. in the case of degraded RAID and means that autodetection may -#. fail to include some of modules. It's an installation time -#. message, not runtime message. -#: grub-core/disk/diskfilter.c:343 grub-core/disk/diskfilter.c:376 -#, c-format -msgid "" -"Couldn't find physical volume `%s'. Some modules may be missing from core " -"image." -msgstr "" -"Kunne ikke finde fysisk diskenhed \"%s\". Visse moduler mangler måske fra " -"kerneaftrykket." - -#: grub-core/disk/diskfilter.c:480 -#, c-format -msgid "physical volume %s not found" -msgstr "fysisk diskenhed %s ikke fundet" - -#: grub-core/disk/efi/efidisk.c:600 grub-core/disk/efi/efidisk.c:623 -#, c-format -msgid "no media in `%s'" -msgstr "intet medie i \"%s\"" - -#: grub-core/disk/geli.c:75 -msgid "Couldn't load sha256" -msgstr "Kunne ikke indlæse sha256" - -#: grub-core/disk/geli.c:85 -msgid "Couldn't load sha512" -msgstr "Kunne ikke indlæse sha512" - -#: grub-core/disk/geli.c:216 grub-core/disk/geli.c:220 -msgid "couldn't read ELI metadata" -msgstr "kunne ikke læse ELI-metadata" - -#: grub-core/disk/geli.c:231 -msgid "wrong ELI magic or version" -msgstr "forkert magisk tal eller version af ELI" - -#: grub-core/disk/geli.c:435 grub-core/disk/luks.c:329 -msgid "Attempting to decrypt master key..." -msgstr "Forsøger at dekryptere hovednøgle..." - -#: grub-core/disk/geli.c:441 grub-core/disk/luks.c:347 -#, c-format -msgid "Enter passphrase for %s%s%s (%s): " -msgstr "Indtast adgangsfrase for %s%s%s (%s): " - -#. TRANSLATORS: It's a cryptographic key slot: one element of an array -#. where each element is either empty or holds a key. -#: grub-core/disk/geli.c:530 grub-core/disk/luks.c:451 -#, c-format -msgid "Slot %d opened\n" -msgstr "Plads %d åbnet\n" - -#: grub-core/disk/i386/pc/biosdisk.c:470 grub-core/disk/i386/pc/biosdisk.c:524 -#: grub-core/disk/i386/pc/biosdisk.c:534 grub-core/kern/disk_common.c:47 -#, c-format -msgid "attempt to read or write outside of disk `%s'" -msgstr "forsøg på at læse eller skrive uden for disk \"%s\"" - -#: grub-core/disk/i386/pc/biosdisk.c:491 grub-core/disk/i386/pc/biosdisk.c:611 -#: grub-core/disk/scsi.c:726 -msgid "cannot write to CD-ROM" -msgstr "kan ikke skrive til CD-ROM" - -#: grub-core/disk/i386/pc/biosdisk.c:662 -msgid "" -"Native disk drivers are in use. Refusing to use firmware disk interface." -msgstr "" -"Der er platformspecifikke diskdrivere i brug. Nægter at bruge " -"firmwarediskgrænseflade." - -#. TRANSLATORS: it's a partition for embedding, -#. not a partition embed into something. GRUB -#. install tools put core.img into a place -#. usable for bootloaders (called generically -#. "embedding zone") and this operation is -#. called "embedding". -#: grub-core/disk/ldm.c:1015 -msgid "your LDM Embedding Partition is too small; embedding won't be possible" -msgstr "" -"din LDM-indlejringspartition er for lille; indlejring vil ikke være muligt" - -#. TRANSLATORS: it's a partition for embedding, -#. not a partition embed into something. -#: grub-core/disk/ldm.c:1033 -msgid "this LDM has no Embedding Partition; embedding won't be possible" -msgstr "" -"denne LDM har ingen indlejringspartition; indlejring vil ikke være muligt" - -#. TRANSLATORS: The disk is simply removed from the list of available ones, -#. not wiped, avoid to scare user. -#: grub-core/disk/loopback.c:45 -msgid "Delete the specified loopback drive." -msgstr "Fjern det angivne loopback-drev fra listen." - -#: grub-core/disk/loopback.c:237 -msgid "[-d] DEVICENAME FILE." -msgstr "[-d] ENHEDSNAVN FIL." - -#. TRANSLATORS: The file itself is not destroyed -#. or transformed into drive. -#: grub-core/disk/loopback.c:240 -msgid "Make a virtual drive from a file." -msgstr "Opret et virtuelt drev fra en fil." - -#: grub-core/efiemu/i386/loadcore32.c:111 -#: grub-core/efiemu/i386/loadcore64.c:125 grub-core/kern/arm/dl.c:256 -#: grub-core/kern/arm64/dl.c:187 grub-core/kern/i386/dl.c:75 -#: grub-core/kern/ia64/dl.c:140 grub-core/kern/mips/dl.c:258 -#: grub-core/kern/powerpc/dl.c:163 grub-core/kern/riscv/dl.c:334 -#: grub-core/kern/sparc64/dl.c:180 grub-core/kern/x86_64/dl.c:110 -#: util/grub-mkimagexx.c:756 util/grub-mkimagexx.c:881 -#: util/grub-mkimagexx.c:945 util/grub-mkimagexx.c:1026 -#: util/grub-mkimagexx.c:1120 util/grub-mkimagexx.c:1222 -#: util/grub-mkimagexx.c:1413 util/grub-mkimagexx.c:1628 -#: util/grub-mkimagexx.c:1665 util/grub-mkimagexx.c:1697 -#: util/grub-mkimagexx.c:1767 util/grub-mkimagexx.c:1797 -#, c-format -msgid "relocation 0x%x is not implemented yet" -msgstr "relokering 0x%x er endnu ikke implementeret" - -#: grub-core/efiemu/loadcore.c:200 grub-core/efiemu/loadcore.c:237 -#: grub-core/loader/i386/bsdXX.c:317 util/grub-mkimagexx.c:2360 -msgid "no symbol table" -msgstr "ingen symboltabel" - -#: grub-core/efiemu/loadcore.c:346 grub-core/kern/dl.c:609 -#: grub-core/loader/ia64/efi/linux.c:345 grub-core/loader/mips/linux.c:248 -#: grub-core/loader/multiboot_elfxx.c:76 -#: grub-core/loader/powerpc/ieee1275/linux.c:280 -#: grub-core/loader/sparc64/ieee1275/linux.c:320 -msgid "this ELF file is not of the right type" -msgstr "denne ELF-fil er ikke af den korrekte type" - -#: grub-core/efiemu/main.c:313 -msgid "Load and initialize EFI emulator." -msgstr "Indlæs og klargør EFI-emulator." - -#: grub-core/efiemu/main.c:317 -msgid "Finalize loading of EFI emulator." -msgstr "Færdiggør indlæsning af EFI-emulator." - -#: grub-core/efiemu/main.c:320 -msgid "Unload EFI emulator." -msgstr "Afindlæs EFI-emulator." - -#: grub-core/efiemu/symbols.c:92 grub-core/kern/dl.c:376 -#, c-format -msgid "symbol `%s' not found" -msgstr "symbolet \"%s\" ikke fundet" - -#: grub-core/font/font_cmd.c:52 -msgid "Loaded fonts:" -msgstr "Indlæste skrifttyper:" - -#: grub-core/font/font_cmd.c:74 -msgid "FILE..." -msgstr "FIL..." - -#: grub-core/font/font_cmd.c:75 -msgid "Specify one or more font files to load." -msgstr "Angiv en eller flere skrifttypefiler der skal indlæses." - -#: grub-core/font/font_cmd.c:78 -msgid "List the loaded fonts." -msgstr "Vis de indlæste skrifttyper." - -#: grub-core/fs/archelp.c:216 grub-core/fs/archelp.c:278 -#: grub-core/fs/btrfs.c:1815 grub-core/fs/fshelp.c:227 grub-core/fs/jfs.c:736 -#: grub-core/fs/minix.c:369 grub-core/fs/ufs.c:454 -msgid "too deep nesting of symlinks" -msgstr "indlejring af symlænker er for dyb" - -#: grub-core/fs/bfs.c:228 grub-core/fs/fshelp.c:368 grub-core/fs/minix.c:270 -#: grub-core/kern/file.c:156 -msgid "attempt to read past the end of file" -msgstr "forsøg på at læse forbi filens slutpunkt" - -#: grub-core/fs/btrfs.c:1698 grub-core/fs/btrfs.c:1957 -#: grub-core/fs/fshelp.c:189 grub-core/fs/fshelp.c:309 grub-core/fs/jfs.c:431 -#: grub-core/fs/minix.c:414 grub-core/fs/minix.c:562 -#: grub-core/fs/reiserfs.c:732 grub-core/fs/ufs.c:531 grub-core/fs/ufs.c:671 -#: grub-core/fs/zfs/zfs.c:2831 grub-core/fs/zfs/zfs.c:4247 -msgid "not a directory" -msgstr "ikke et katalog" - -#: grub-core/fs/btrfs.c:2063 grub-core/fs/fshelp.c:307 grub-core/fs/jfs.c:835 -#: grub-core/fs/zfs/zfs.c:3801 -msgid "not a regular file" -msgstr "ikke en regulær fil" - -#: grub-core/fs/btrfs.c:2157 grub-core/fs/zfs/zfs.c:4333 -#: grub-core/partmap/msdos.c:400 -msgid "your core.img is unusually large. It won't fit in the embedding area" -msgstr "" -"din core.img er usædvanligt stor. Den vil ikke passe ind i " -"indlejringsområdet" - -#: grub-core/fs/fshelp.c:281 grub-core/fs/minix.c:630 grub-core/fs/ufs.c:661 -#: grub-core/fs/ufs.c:757 grub-core/kern/fs.c:168 grub-core/kern/fs.c:180 -#, c-format -msgid "invalid file name `%s'" -msgstr "ugyldigt filnavn \"%s\"" - -#: grub-core/fs/zfs/zfs.c:453 -msgid "checksum verification failed" -msgstr "verifikation af tjeksum mislykkedes" - -#: grub-core/fs/zfs/zfs.c:1465 -msgid "couldn't find a necessary member device of multi-device filesystem" -msgstr "kunne ikke finde en nødvendig medlemsenhed fra et flerenhedsfilsystem" - -#: grub-core/fs/zfs/zfscrypt.c:292 -msgid "no decryption key available" -msgstr "ingen dekrypteringsnøgle tilgængelig" - -#: grub-core/fs/zfs/zfscrypt.c:304 -msgid "MAC verification failed" -msgstr "MAC-verifikation mislykkedes" - -#: grub-core/fs/zfs/zfscrypt.c:413 -msgid "Assume input is raw." -msgstr "Antag at inddata er ubehandlede." - -#: grub-core/fs/zfs/zfscrypt.c:414 -msgid "Assume input is hex." -msgstr "Antag at inddata er heks." - -#: grub-core/fs/zfs/zfscrypt.c:415 -msgid "Assume input is passphrase." -msgstr "Antag at inddata er adgangsfrase." - -#: grub-core/fs/zfs/zfscrypt.c:437 util/grub-fstest.c:553 util/grub-mount.c:483 -msgid "Enter ZFS password: " -msgstr "Indtast ZFS-adgangskode: " - -#: grub-core/fs/zfs/zfscrypt.c:476 -msgid "[-h|-p|-r] [FILE]" -msgstr "[-h|-p|-r] [FIL]" - -#: grub-core/fs/zfs/zfscrypt.c:477 -msgid "Import ZFS wrapping key stored in FILE." -msgstr "Importér ZFS-omslagsnøgle gemt i FIL." - -#: grub-core/fs/zfs/zfsinfo.c:51 -msgid "Virtual device is removed" -msgstr "Virtuel enhed er fjernet" - -#: grub-core/fs/zfs/zfsinfo.c:57 -msgid "Virtual device is faulted" -msgstr "Fejl på virtuel enhed" - -#: grub-core/fs/zfs/zfsinfo.c:63 -msgid "Virtual device is offline" -msgstr "Virtuel enhed er offline" - -#. TRANSLATORS: degraded doesn't mean broken but that some of -#. component are missing but virtual device as whole is still usable. -#: grub-core/fs/zfs/zfsinfo.c:70 -msgid "Virtual device is degraded" -msgstr "Virtuel enhed er degraderet" - -#: grub-core/fs/zfs/zfsinfo.c:73 -msgid "Virtual device is online" -msgstr "Virtuel enhed er online" - -#: grub-core/fs/zfs/zfsinfo.c:89 -msgid "Incorrect virtual device: no type available" -msgstr "Forkert virtuel enhed: ingen type tilgængelig" - -#. TRANSLATORS: The virtual devices form a tree (in graph-theoretical -#. sense). The nodes like mirror or raidz have children: member devices. -#. The "real" devices which actually store data are called "leafs" -#. (again borrowed from graph theory) and can be either disks -#. (or partitions) or files. -#: grub-core/fs/zfs/zfsinfo.c:105 -msgid "Leaf virtual device (file or disk)" -msgstr "Virtuel bladknude-enhed (fil eller disk)" - -#: grub-core/fs/zfs/zfsinfo.c:113 -msgid "Bootpath: unavailable\n" -msgstr "Opstartssti: utilgængelig\n" - -#: grub-core/fs/zfs/zfsinfo.c:115 -#, c-format -msgid "Bootpath: %s\n" -msgstr "Opstartssti: %s\n" - -#: grub-core/fs/zfs/zfsinfo.c:120 -msgid "Path: unavailable" -msgstr "Sti: utilgængelig" - -#: grub-core/fs/zfs/zfsinfo.c:122 -#, c-format -msgid "Path: %s\n" -msgstr "Sti: %s\n" - -#: grub-core/fs/zfs/zfsinfo.c:127 -msgid "Devid: unavailable" -msgstr "Enheds-id: utilgængelig" - -#: grub-core/fs/zfs/zfsinfo.c:129 -#, c-format -msgid "Devid: %s\n" -msgstr "Enheds-id: %s\n" - -#: grub-core/fs/zfs/zfsinfo.c:148 -msgid "This VDEV is a mirror" -msgstr "Denne VDEV er et spejl" - -#: grub-core/fs/zfs/zfsinfo.c:153 -#, c-format -msgid "This VDEV is a RAIDZ%llu\n" -msgstr "Denne VDEV er en RAIDZ%llu\n" - -#: grub-core/fs/zfs/zfsinfo.c:158 -msgid "Incorrect VDEV" -msgstr "Forkert VDEV" - -#: grub-core/fs/zfs/zfsinfo.c:161 -#, c-format -msgid "VDEV with %d children\n" -msgstr "VDEV med %d underelementer\n" - -#. TRANSLATORS: it's the element carying the number %d, not -#. total element number. And the number itself is fine, -#. only the element isn't. -#. -#: grub-core/fs/zfs/zfsinfo.c:177 -#, c-format -msgid "VDEV element number %d isn't correct\n" -msgstr "VDEV-element nummer %d er forkert\n" - -#. TRANSLATORS: it's the element carying the number %d, not -#. total element number. This is used in enumeration -#. "Element number 1", "Element number 2", ... -#: grub-core/fs/zfs/zfsinfo.c:184 -#, c-format -msgid "VDEV element number %d:\n" -msgstr "VDEV-element nummer %d:\n" - -#: grub-core/fs/zfs/zfsinfo.c:193 -#, c-format -msgid "Unknown virtual device type: %s\n" -msgstr "Ukendt type af virtuel enhed: %s\n" - -#. TRANSLATORS: Here we speak about ZFS pools it's semi-marketing, -#. semi-technical term by Sun/Oracle and should be translated in sync with -#. other ZFS-related software and documentation. -#: grub-core/fs/zfs/zfsinfo.c:254 -msgid "Pool state: active" -msgstr "Pool-tilstand: aktiv" - -#: grub-core/fs/zfs/zfsinfo.c:255 -msgid "Pool state: exported" -msgstr "Pool-tilstand: eksporteret" - -#: grub-core/fs/zfs/zfsinfo.c:256 -msgid "Pool state: destroyed" -msgstr "Pool-tilstand: ødelagt" - -#: grub-core/fs/zfs/zfsinfo.c:257 -msgid "Pool state: reserved for hot spare" -msgstr "Pool-tilstand: reserveret som \"hot spare\"" - -#: grub-core/fs/zfs/zfsinfo.c:258 -msgid "Pool state: level 2 ARC device" -msgstr "Pool-tilstand: ARC-enhed niveau 2" - -#: grub-core/fs/zfs/zfsinfo.c:259 -msgid "Pool state: uninitialized" -msgstr "Pool-tilstand: ikke klargjort" - -#: grub-core/fs/zfs/zfsinfo.c:260 -msgid "Pool state: unavailable" -msgstr "Pool-tilstand: utilgængelig" - -#: grub-core/fs/zfs/zfsinfo.c:261 -msgid "Pool state: potentially active" -msgstr "Pool-tilstand: potentielt aktiv" - -#: grub-core/fs/zfs/zfsinfo.c:306 -msgid "Pool name: unavailable" -msgstr "Pool-navn: utilgængelig" - -#: grub-core/fs/zfs/zfsinfo.c:308 -#, c-format -msgid "Pool name: %s\n" -msgstr "Pool-navn: %s\n" - -#: grub-core/fs/zfs/zfsinfo.c:313 -msgid "Pool GUID: unavailable" -msgstr "Pool-GUID: utilgængelig" - -#: grub-core/fs/zfs/zfsinfo.c:315 -#, c-format -msgid "Pool GUID: %016llx\n" -msgstr "Pool-GUID: %016llx\n" - -#: grub-core/fs/zfs/zfsinfo.c:320 -msgid "Unable to retrieve pool state" -msgstr "Kan ikke hente pool-tilstand" - -#: grub-core/fs/zfs/zfsinfo.c:322 -msgid "Unrecognized pool state" -msgstr "Ukendt pool-tilstand" - -#. TRANSLATORS: There are undetermined number of virtual devices -#. in a device tree, not just one. -#. -#: grub-core/fs/zfs/zfsinfo.c:332 -msgid "No virtual device tree available" -msgstr "Intet virtuelt enhedstræ tilgængeligt" - -#: grub-core/fs/zfs/zfsinfo.c:431 -msgid "Print ZFS info about DEVICE." -msgstr "Udskriv ZFS-info om ENHED." - -#: grub-core/fs/zfs/zfsinfo.c:433 -msgid "FILESYSTEM [VARIABLE]" -msgstr "FILSYSTEM [VARIABEL]" - -#: grub-core/fs/zfs/zfsinfo.c:434 -msgid "Print ZFS-BOOTFSOBJ or store it into VARIABLE" -msgstr "Udskriv ZFS-BOOTFSOBJ eller gem det i VARIABEL" - -#. TRANSLATORS: at this position GRUB waits for the user to do an action -#. in remote debugger, namely to tell it to establish connection. -#: grub-core/gdb/gdb.c:48 -msgid "Now connect the remote debugger, please." -msgstr "Forbind nu venligst fjernfejlsøgeren." - -#. TRANSLATORS: GDB stub is a small part of -#. GDB functionality running on local host -#. which allows remote debugger to -#. connect to it. -#: grub-core/gdb/gdb.c:84 -msgid "Start GDB stub on given port" -msgstr "Start GDB-stub på den givne port" - -#. TRANSLATORS: this refers to triggering -#. a breakpoint so that the user will land -#. into GDB. -#: grub-core/gdb/gdb.c:89 -msgid "Break into GDB" -msgstr "Bryd ind i GDB" - -#: grub-core/gdb/gdb.c:91 -msgid "Stop GDB stub" -msgstr "Stop GDB-stub" - -#: grub-core/gettext/gettext.c:85 -msgid "premature end of file" -msgstr "for tidlig slutning af fil" - -#. TRANSLATORS: It refers to passing the string through gettext. -#. So it's "translate" in the same meaning as in what you're -#. doing now. -#. -#: grub-core/gettext/gettext.c:525 -msgid "Translates the string with the current settings." -msgstr "Oversætter strengen med de nuværende indstillinger." - -#: grub-core/gfxmenu/gui_label.c:186 grub-core/normal/menu_text.c:184 -msgid "" -"Press enter to boot the selected OS, `e' to edit the commands before booting " -"or `c' for a command-line. ESC to return previous menu." -msgstr "" -"Tryk på enter for at starte det valgte operativsystem, \"e\" for at redigere " -"kommandoerne inden opstart, eller \"c\" for at få en kommandolinje. ESC for " -"at vende tilbage til den forrige menu." - -#: grub-core/gfxmenu/gui_label.c:190 grub-core/normal/menu_text.c:192 -msgid "" -"Press enter to boot the selected OS, `e' to edit the commands before booting " -"or `c' for a command-line." -msgstr "" -"Tryk på enter for at starte det valgte operativsystem, \"e\" for at redigere " -"kommandoerne inden opstart, eller \"c\" for at få en kommandolinje." - -#: grub-core/gfxmenu/gui_label.c:194 -msgid "enter: boot, `e': options, `c': cmd-line" -msgstr "enter: start op, \"e\": tilvalg, \"c\": kommandolinje" - -#: grub-core/gfxmenu/gui_progress_bar.c:339 grub-core/normal/menu_text.c:446 -#, c-format -msgid "The highlighted entry will be executed automatically in %ds." -msgstr "Det fremhævede punkt køres automatisk om %d s." - -#. TRANSLATORS: 's' stands for seconds. -#. It's a standalone timeout notification. -#. Please use the short form in your language. -#: grub-core/gfxmenu/gui_progress_bar.c:344 -#, c-format -msgid "%ds remaining." -msgstr "%d s tilbage." - -#. TRANSLATORS: 's' stands for seconds. -#. It's a standalone timeout notification. -#. Please use the shortest form available in you language. -#: grub-core/gfxmenu/gui_progress_bar.c:349 grub-core/normal/menu_text.c:444 -#: grub-core/normal/menu_text.c:462 -#, c-format -msgid "%ds" -msgstr "%d s" - -#: grub-core/gfxmenu/view.c:103 -msgid "GRUB Boot Menu" -msgstr "GRUB-opstartsmenu" - -#: grub-core/hello/hello.c:36 -msgid "Hello World" -msgstr "Hej verden" - -#: grub-core/hello/hello.c:45 -msgid "Say `Hello World'." -msgstr "Sig \"Hej verden\"." - -#: grub-core/io/gzio.c:409 grub-core/kern/file.c:210 -msgid "attempt to seek outside of the file" -msgstr "forsøg på at søge uden for filen" - -#. TRANSLATORS: It's about given file having some strange format, not -#. complete lack of gzip support. -#: grub-core/io/gzio.c:1228 grub-core/io/gzio.c:1237 grub-core/io/gzio.c:1244 -msgid "unsupported gzip format" -msgstr "uunderstøttet gzip-format" - -#: grub-core/io/lzopio.c:511 -msgid "lzop file corrupted" -msgstr "lzop-fil beskadiget" - -#: grub-core/io/xzio.c:278 -msgid "xz file corrupted or unsupported block options" -msgstr "xz-fil beskadiget, eller uunderstøttede bloktilvalg" - -#: grub-core/kern/arm/dl.c:277 grub-core/kern/arm64/dl.c:44 -#: grub-core/kern/i386/dl.c:36 grub-core/kern/ia64/dl.c:41 -#: grub-core/kern/mips/dl.c:48 grub-core/kern/powerpc/dl.c:36 -#: grub-core/kern/riscv/dl.c:47 grub-core/kern/sparc64/dl.c:36 -#: grub-core/kern/x86_64/dl.c:36 grub-core/loader/i386/bsd.c:1445 -#: grub-core/loader/i386/bsdXX.c:49 grub-core/loader/ia64/efi/linux.c:341 -#: grub-core/loader/mips/linux.c:298 grub-core/loader/multiboot.c:232 -#: grub-core/loader/multiboot_elfxx.c:73 -#: grub-core/loader/powerpc/ieee1275/linux.c:294 -#: grub-core/loader/sparc64/ieee1275/linux.c:331 -msgid "invalid arch-dependent ELF magic" -msgstr "ugyldigt magisk tal for arkitekturafhængig ELF" - -#: grub-core/kern/corecmd.c:178 -msgid "[ENVVAR=VALUE]" -msgstr "[MILJØVAR=VÆRDI]" - -#: grub-core/kern/corecmd.c:179 -msgid "Set an environment variable." -msgstr "Sæt en miljøvariabel." - -#: grub-core/kern/corecmd.c:183 -msgid "ENVVAR" -msgstr "MILJØVAR" - -#: grub-core/kern/corecmd.c:184 -msgid "Remove an environment variable." -msgstr "Fjern en miljøvariabel." - -#: grub-core/kern/corecmd.c:186 -msgid "[ARG]" -msgstr "[ARG]" - -#: grub-core/kern/corecmd.c:186 -msgid "List devices or files." -msgstr "Vis enheder eller filer." - -#: grub-core/kern/corecmd.c:188 -msgid "Insert a module." -msgstr "Indsæt et modul." - -#: grub-core/kern/disk.c:236 grub-core/net/net.c:1390 -#, c-format -msgid "disk `%s' not found" -msgstr "disk \"%s\" ikke fundet" - -#: grub-core/kern/disk_common.c:27 -msgid "attempt to read or write outside of partition" -msgstr "forsøg på at læse eller skrive uden for partition" - -#: grub-core/kern/dl.c:212 grub-core/kern/elf.c:61 grub-core/kern/elf.c:79 -#: grub-core/loader/i386/bsdXX.c:46 grub-core/loader/ia64/efi/linux.c:335 -#: grub-core/loader/multiboot_elfxx.c:69 -msgid "invalid arch-independent ELF magic" -msgstr "ugyldigt magisk tal for arkitekturuafhængig ELF" - -#. TRANSLATORS: it refers to the lack of free slots. -#: grub-core/kern/emu/hostdisk.c:208 grub-core/kern/emu/hostdisk.c:466 -msgid "device count exceeds limit" -msgstr "enhedstal overstiger grænsen" - -#: grub-core/kern/emu/hostdisk.c:342 util/editenv.c:54 util/grub-editenv.c:197 -#: util/grub-fstest.c:191 util/grub-mkfont.c:796 util/misc.c:114 -#: util/misc.c:129 util/setup.c:788 -#, c-format -msgid "cannot write to `%s': %s" -msgstr "kan ikke skrive til \"%s\": %s" - -#. TRANSLATORS: Only one entry is ignored. However the suggestion -#. is to correct/delete the whole file. -#. device.map is a file indicating which -#. devices are available at boot time. Fedora populated it with -#. entries like (hd0,1) /dev/sda1 which would mean that every -#. partition is a separate disk for BIOS. Such entries were -#. inactive in GRUB due to its bug which is now gone. Without -#. this additional check these entries would be harmful now. -#. -#: grub-core/kern/emu/hostdisk.c:503 -#, c-format -msgid "" -"the device.map entry `%s' is invalid. Ignoring it. Please correct or delete " -"your device.map" -msgstr "" -"device.map-enhedsindgangen \"%s\" er ugyldig. Ignorerer den. Ret eller slet " -"venligst din device.map" - -#. TRANSLATORS: device.map is a filename. Not to be translated. -#. device.map specifies disk correspondance overrides. Previously -#. one could create any kind of device name with this. Due to -#. some problems we decided to limit it to just a handful -#. possibilities. -#: grub-core/kern/emu/hostdisk.c:555 -#, c-format -msgid "" -"the drive name `%s' in device.map is incorrect. Using %s instead. Please use " -"the form [hfc]d[0-9]* (E.g. `hd0' or `cd')" -msgstr "" -"drevnavnet \"%s\" i device.map er forkert. Bruger %s i stedet. Brug venligst " -"formen [hfc]d[0-9]* (f.eks. \"hd0\" eller \"cd\")" - -#: grub-core/kern/emu/hostfs.c:76 grub-core/kern/emu/hostfs.c:109 -#, c-format -msgid "can't open `%s': %s" -msgstr "kan ikke åbne \"%s\": %s" - -#: grub-core/kern/emu/main.c:99 util/grub-fstest.c:516 util/grub-mount.c:452 -msgid "DEVICE_NAME" -msgstr "ENHEDSNAVN" - -#: grub-core/kern/emu/main.c:99 grub-core/loader/i386/bsd.c:136 -#: grub-core/loader/i386/bsd.c:169 util/grub-fstest.c:516 util/grub-mount.c:452 -msgid "Set root device." -msgstr "Sæt rodenhed." - -#. TRANSLATORS: There are many devices in device map. -#: grub-core/kern/emu/main.c:102 util/grub-probe.c:733 util/grub-setup.c:85 -#, c-format -msgid "use FILE as the device map [default=%s]" -msgstr "brug FIL som enhedskort [standard=%s]" - -#. TRANSLATORS: There are many devices in device map. -#: grub-core/kern/emu/main.c:105 -msgid "use FILE as memdisk" -msgstr "brug FIL som memdisk" - -#: grub-core/kern/emu/main.c:107 util/grub-setup.c:83 -#, c-format -msgid "use GRUB files in the directory DIR [default=%s]" -msgstr "brug GRUB-filer i kataloget KAT [standard=%s]" - -#: grub-core/kern/emu/main.c:108 include/grub/util/install.h:67 -#: util/grub-editenv.c:58 util/grub-fstest.c:525 util/grub-glue-efi.c:58 -#: util/grub-macbless.c:104 util/grub-mkfont.c:962 util/grub-mkimage.c:84 -#: util/grub-mklayout.c:56 util/grub-mount.c:458 util/grub-probe.c:735 -#: util/grub-render-label.c:74 util/grub-script-check.c:52 util/grub-setup.c:90 -#: util/grub-syslinux2cfg.c:78 -msgid "print verbose messages." -msgstr "udskriv uddybende meddelelser." - -#: grub-core/kern/emu/main.c:109 grub-core/lib/gnulib/argp-parse.c:85 -msgid "SECS" -msgstr "SEK" - -#: grub-core/kern/emu/main.c:109 -msgid "wait until a debugger will attach" -msgstr "vent til en fejlsøger tilsluttes" - -#: grub-core/kern/emu/main.c:171 util/grub-macbless.c:143 -#: util/grub-mkrelpath.c:61 util/grub-probe.c:874 util/grub-script-check.c:75 -#: util/grub-setup.c:203 -#, c-format -msgid "Unknown extra argument `%s'." -msgstr "Ukendt ekstra argument \"%s\"." - -#: grub-core/kern/emu/main.c:185 -msgid "GRUB emulator." -msgstr "GRUB-emulator." - -#: grub-core/kern/emu/main.c:213 util/grub-editenv.c:262 -#: util/grub-glue-efi.c:110 util/grub-macbless.c:173 util/grub-mkfont.c:1177 -#: util/grub-mkimage.c:266 util/grub-mklayout.c:494 -#: util/grub-mkpasswd-pbkdf2.c:132 util/grub-mkrelpath.c:96 -#: util/grub-probe.c:863 util/grub-render-label.c:152 -#: util/grub-script-check.c:160 util/grub-setup.c:262 -#: util/grub-syslinux2cfg.c:163 -msgid "Error in parsing command line arguments\n" -msgstr "Fejl ved fortolkning af kommandolinjeargumenter\n" - -#. TRANSLATORS: In this case GRUB tells user what he has to do. -#: grub-core/kern/emu/main.c:248 -#, c-format -msgid "Run `gdb %s %d', and set ARGS.HOLD to zero.\n" -msgstr "Kør \"gdb %s %d\" og sæt ARGS.HOLD til nul.\n" - -#: grub-core/kern/emu/misc.c:48 -#, c-format -msgid "%s: warning:" -msgstr "%s: advarsel:" - -#: grub-core/kern/emu/misc.c:64 -#, c-format -msgid "%s: info:" -msgstr "%s: info:" - -#: grub-core/kern/emu/misc.c:79 util/grub-fstest.c:567 util/grub-fstest.c:576 -#: util/grub-mount.c:497 util/grub-mount.c:505 -#, c-format -msgid "%s: error:" -msgstr "%s: fejl:" - -#: grub-core/kern/emu/misc.c:176 -#, c-format -msgid "file `%s' is too big" -msgstr "filen \"%s\" er for stor" - -#: grub-core/kern/fs.c:120 -msgid "unknown filesystem" -msgstr "ukendt filsystem" - -#: grub-core/kern/mips/arc/init.c:273 grub-core/kern/mips/loongson/init.c:301 -msgid "Shutdown failed" -msgstr "Slukning mislykkedes" - -#: grub-core/kern/mips/arc/init.c:285 -msgid "Exit failed" -msgstr "Afslutning mislykkedes" - -#: grub-core/kern/misc.c:351 grub-core/kern/misc.c:408 include/grub/misc.h:269 -#: include/grub/misc.h:278 -msgid "overflow is detected" -msgstr "overløb fundet" - -#: grub-core/kern/partition.c:51 grub-core/partmap/bsdlabel.c:108 -#, c-format -msgid "Discarding improperly nested partition (%s,%s,%s%d)" -msgstr "Forkaster forkert indlejret partition (%s,%s,%s%d)" - -#: grub-core/kern/rescue_parser.c:73 util/grub-editenv.c:292 -#, c-format -msgid "Unknown command `%s'.\n" -msgstr "Ukendt kommando \"%s\".\n" - -#: grub-core/lib/arg.c:31 -msgid "Display this help and exit." -msgstr "Vis denne hjælp og afslut." - -#: grub-core/lib/arg.c:33 -msgid "Display the usage of this command and exit." -msgstr "Vis brugsanvisning for denne kommando og afslut." - -#: grub-core/lib/arg.c:362 -#, c-format -msgid "missing mandatory option for `%s'" -msgstr "mangler obligatorisk tilvalg til \"%s\"" - -#: grub-core/lib/arg.c:384 -#, c-format -msgid "the argument `%s' requires an integer" -msgstr "argumentet \"%s\" kræver et heltal" - -#: grub-core/lib/arg.c:407 -#, c-format -msgid "" -"a value was assigned to the argument `%s' while it doesn't require an " -"argument" -msgstr "" -"der blev tildelt en værdi til argumentet \"%s\", men dette kræver ikke noget " -"argument" - -#: grub-core/lib/backtrace.c:64 -msgid "Print backtrace." -msgstr "Udskriv stakspor." - -#: grub-core/lib/gnulib/argp-help.c:149 -#, c-format -msgid "ARGP_HELP_FMT: %s value is less than or equal to %s" -msgstr "ARGP_HELP_FMT: %s-værdi er mindre end eller lig med %s" - -#: grub-core/lib/gnulib/argp-help.c:225 -#, c-format -msgid "%.*s: ARGP_HELP_FMT parameter requires a value" -msgstr "%.*s: ARGP_HELP_FMT-parameter kræver en værdi" - -#: grub-core/lib/gnulib/argp-help.c:235 -#, c-format -msgid "%.*s: Unknown ARGP_HELP_FMT parameter" -msgstr "%.*s: Ukendt ARGP_HELP_FMT-parameter" - -#: grub-core/lib/gnulib/argp-help.c:248 -#, c-format -msgid "Garbage in ARGP_HELP_FMT: %s" -msgstr "Skrald i ARGP_HELP_FMT: %s" - -#: grub-core/lib/gnulib/argp-help.c:1229 -msgid "" -"Mandatory or optional arguments to long options are also mandatory or " -"optional for any corresponding short options." -msgstr "" -"Obligatoriske eller valgfri argumenter til lange tilvalg er også " -"obligatoriske henholdsvis valgfri for tilsvarende korte tilvalg." - -#: grub-core/lib/gnulib/argp-help.c:1620 -msgid " or: " -msgstr " eller: " - -#: grub-core/lib/gnulib/argp-help.c:1632 -msgid " [OPTION...]" -msgstr " [TILVALG...]" - -#: grub-core/lib/gnulib/argp-help.c:1659 -#, c-format -msgid "Try '%s --help' or '%s --usage' for more information.\n" -msgstr "" -"Prøv \"%s --help\" eller \"%s --usage\" for at få yderligere information.\n" - -#: grub-core/lib/gnulib/argp-help.c:1687 -#, c-format -msgid "Report bugs to %s.\n" -msgstr "Rapportér fejl til %s.\n" - -#: grub-core/lib/gnulib/argp-help.c:1888 grub-core/lib/gnulib/error.c:195 -msgid "Unknown system error" -msgstr "Ukendt systemfejl" - -#: grub-core/lib/gnulib/argp-parse.c:81 -msgid "give this help list" -msgstr "vis denne hjælpeliste" - -#: grub-core/lib/gnulib/argp-parse.c:82 -msgid "give a short usage message" -msgstr "vis en kort brugsanvisning" - -#: grub-core/lib/gnulib/argp-parse.c:83 util/grub-mkfont.c:946 -msgid "NAME" -msgstr "NAVN" - -#: grub-core/lib/gnulib/argp-parse.c:84 -msgid "set the program name" -msgstr "sæt programnavnet" - -#: grub-core/lib/gnulib/argp-parse.c:86 -msgid "hang for SECS seconds (default 3600)" -msgstr "hæng i SEK sekunder (standard er 3600)" - -#: grub-core/lib/gnulib/argp-parse.c:143 -msgid "print program version" -msgstr "vis programversion" - -#: grub-core/lib/gnulib/argp-parse.c:160 -msgid "(PROGRAM ERROR) No version known!?" -msgstr "(PROGRAMFEJL) Ingen kendt version!?" - -#: grub-core/lib/gnulib/argp-parse.c:613 -#, c-format -msgid "%s: Too many arguments\n" -msgstr "%s: For mange argumenter\n" - -#: grub-core/lib/gnulib/argp-parse.c:759 -msgid "(PROGRAM ERROR) Option should have been recognized!?" -msgstr "(PROGRAMFEJL) Tilvalget skulle have været genkendt!?" - -#: grub-core/lib/gnulib/getopt.c:278 -#, fuzzy, c-format -msgid "%s: option '%s%s' is ambiguous\n" -msgstr "%s: tilvalget \"-W %s\" er flertydigt\n" - -#: grub-core/lib/gnulib/getopt.c:284 -#, fuzzy, c-format -msgid "%s: option '%s%s' is ambiguous; possibilities:" -msgstr "%s: tilvalget \"%s\" er flertydigt; muligheder:" - -#: grub-core/lib/gnulib/getopt.c:319 -#, fuzzy, c-format -msgid "%s: unrecognized option '%s%s'\n" -msgstr "%s: ukendt tilvalg \"%c%s\"\n" - -#: grub-core/lib/gnulib/getopt.c:345 -#, fuzzy, c-format -msgid "%s: option '%s%s' doesn't allow an argument\n" -msgstr "%s: tilvalget \"%c%s\" tillader ikke noget argument\n" - -#: grub-core/lib/gnulib/getopt.c:360 -#, fuzzy, c-format -msgid "%s: option '%s%s' requires an argument\n" -msgstr "%s: tilvalget \"--%s\" kræver et argument\n" - -#: grub-core/lib/gnulib/getopt.c:621 -#, c-format -msgid "%s: invalid option -- '%c'\n" -msgstr "%s: ugyldigt tilvalg -- \"%c\"\n" - -#: grub-core/lib/gnulib/getopt.c:636 grub-core/lib/gnulib/getopt.c:682 -#, c-format -msgid "%s: option requires an argument -- '%c'\n" -msgstr "%s: tilvalg kræver et argument -- \"%c\"\n" - -#: grub-core/lib/gnulib/openat-die.c:38 -#, fuzzy, c-format -msgid "unable to record current working directory" -msgstr "kan ikke gendanne oprindeligt katalog" - -#: grub-core/lib/gnulib/openat-die.c:57 -#, c-format -msgid "failed to return to initial working directory" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:135 grub-core/osdep/aros/hostdisk.c:523 -msgid "Success" -msgstr "Succes" - -#: grub-core/lib/gnulib/regcomp.c:138 -msgid "No match" -msgstr "Ingen træffere" - -#: grub-core/lib/gnulib/regcomp.c:141 -msgid "Invalid regular expression" -msgstr "Ugyldigt regulært udtryk" - -#: grub-core/lib/gnulib/regcomp.c:144 -msgid "Invalid collation character" -msgstr "Ugyldigt sorteringstegn" - -#: grub-core/lib/gnulib/regcomp.c:147 -msgid "Invalid character class name" -msgstr "Ugyldigt navn på tegnklasse" - -#: grub-core/lib/gnulib/regcomp.c:150 -msgid "Trailing backslash" -msgstr "Afsluttende omvendt skråstreg" - -#: grub-core/lib/gnulib/regcomp.c:153 -msgid "Invalid back reference" -msgstr "Ugyldig tilbagereference" - -#: grub-core/lib/gnulib/regcomp.c:156 -#, fuzzy -msgid "Unmatched [, [^, [:, [., or [=" -msgstr "Uparret [ eller [^" - -#: grub-core/lib/gnulib/regcomp.c:159 -msgid "Unmatched ( or \\(" -msgstr "Uparret ( eller \\(" - -#: grub-core/lib/gnulib/regcomp.c:162 -msgid "Unmatched \\{" -msgstr "Uparret \\{" - -#: grub-core/lib/gnulib/regcomp.c:165 -msgid "Invalid content of \\{\\}" -msgstr "Ugyldigt indhold af \\{\\}" - -#: grub-core/lib/gnulib/regcomp.c:168 -msgid "Invalid range end" -msgstr "Ugyldig intervalafslutning" - -#: grub-core/lib/gnulib/regcomp.c:171 -msgid "Memory exhausted" -msgstr "Hukommelse opbrugt" - -#: grub-core/lib/gnulib/regcomp.c:174 -msgid "Invalid preceding regular expression" -msgstr "Ugyldigt forudgående regulært udtryk" - -#: grub-core/lib/gnulib/regcomp.c:177 -msgid "Premature end of regular expression" -msgstr "Uventet slutning af regulært udtryk" - -#: grub-core/lib/gnulib/regcomp.c:180 -msgid "Regular expression too big" -msgstr "Regulært udtryk er for stort" - -#: grub-core/lib/gnulib/regcomp.c:183 -msgid "Unmatched ) or \\)" -msgstr "Uparret ) eller \\)" - -#: grub-core/lib/gnulib/regcomp.c:531 -msgid "unknown regexp error" -msgstr "ukendt fejl i regulært udtryk" - -#: grub-core/lib/gnulib/regcomp.c:676 -msgid "No previous regular expression" -msgstr "Intet tidligere regulært udtryk" - -#: grub-core/lib/i386/halt.c:77 -msgid "GRUB doesn't know how to halt this machine yet!" -msgstr "GRUB ved endnu ikke hvordan denne maskine standses!" - -#: grub-core/lib/legacy_parse.c:75 -msgid "Default server is ${net_default_server}" -msgstr "Standardserver er ${net_default_server}" - -#: grub-core/lib/legacy_parse.c:844 grub-core/video/colors.c:296 -#: grub-core/video/colors.c:305 grub-core/video/colors.c:311 -#: grub-core/video/colors.c:327 util/render-label.c:84 util/render-label.c:98 -#, c-format -msgid "invalid color specification `%s'" -msgstr "ugyldig farvespecifikation \"%s\"" - -#: grub-core/lib/mips/arc/reboot.c:32 grub-core/lib/mips/loongson/reboot.c:61 -msgid "Reboot failed" -msgstr "Genstart mislykkedes" - -#: grub-core/lib/random.c:113 -msgid "[LENGTH]" -msgstr "[LÆNGDE]" - -# hexdump skal nok forstås som imperativ -#: grub-core/lib/random.c:114 -msgid "Hexdump random data." -msgstr "Hexdump tilfældige data." - -#: grub-core/loader/arm/linux.c:242 -msgid "device tree must be supplied (see `devicetree' command)" -msgstr "enhedstræ skal være angivet (se kommandoen \"devicetree\")" - -#: grub-core/loader/arm/linux.c:334 -msgid "invalid zImage" -msgstr "ugyldigt zImage" - -#: grub-core/loader/arm/linux.c:450 grub-core/loader/efi/fdt.c:144 -msgid "invalid device tree" -msgstr "ugyldigt enhedstræ" - -#: grub-core/loader/arm/linux.c:493 grub-core/loader/arm64/linux.c:383 -#: grub-core/loader/i386/linux.c:1125 grub-core/loader/i386/pc/linux.c:479 -#: grub-core/loader/i386/xen.c:962 grub-core/loader/i386/xen.c:964 -#: grub-core/loader/ia64/efi/linux.c:591 grub-core/loader/mips/linux.c:501 -#: grub-core/loader/powerpc/ieee1275/linux.c:383 -#: grub-core/loader/riscv/linux.c:50 -#: grub-core/loader/sparc64/ieee1275/linux.c:511 -msgid "Load Linux." -msgstr "Indlæs Linux." - -#: grub-core/loader/arm/linux.c:495 grub-core/loader/arm64/linux.c:385 -#: grub-core/loader/i386/linux.c:1127 grub-core/loader/i386/pc/linux.c:482 -#: grub-core/loader/i386/xen.c:966 grub-core/loader/ia64/efi/linux.c:594 -#: grub-core/loader/mips/linux.c:503 -#: grub-core/loader/powerpc/ieee1275/linux.c:385 -#: grub-core/loader/riscv/linux.c:52 -#: grub-core/loader/sparc64/ieee1275/linux.c:513 -msgid "Load initrd." -msgstr "Indlæs initrd." - -#. TRANSLATORS: DTB stands for device tree blob. -#: grub-core/loader/arm/linux.c:498 grub-core/loader/efi/fdt.c:169 -msgid "Load DTB file." -msgstr "Indlæs DTB-fil." - -#: grub-core/loader/arm64/linux.c:59 -msgid "" -"plain image kernel not supported - rebuild with CONFIG_(U)EFI_STUB enabled" -msgstr "" -"simpelt kerneaftryk understøttes ikke - genkompilér med CONFIG_(U)EFI_STUB " -"aktiveret" - -# ? -#: grub-core/loader/arm64/xen_boot.c:156 -msgid "failed to get FDT" -msgstr "kunne ikke hente FDT" - -#: grub-core/loader/arm64/xen_boot.c:418 -msgid "you need to load the Xen Hypervisor first" -msgstr "du skal først indlæse Xen-Hypervisoren" - -#: grub-core/loader/arm64/xen_boot.c:516 -msgid "Load a xen hypervisor." -msgstr "Indlæs en xen-hypervisor." - -#: grub-core/loader/arm64/xen_boot.c:519 -msgid "Load a xen module." -msgstr "Indlæs et xen-modul." - -#: grub-core/loader/efi/appleloader.c:231 -msgid "[OPTS]" -msgstr "[TILVALG]" - -# Denne relaterer vist til nedenstående strenge; man kan vist køre en opstartsindlæser for et andet ('legacy') system, der ligger på computeren -#. TRANSLATORS: This command is used on EFI to -#. switch to BIOS mode and boot the OS requiring -#. BIOS. -#: grub-core/loader/efi/appleloader.c:235 -msgid "Boot BIOS-based system." -msgstr "Boot BIOS-baseret system." - -#: grub-core/loader/efi/chainloader.c:421 -#: grub-core/loader/i386/pc/chainloader.c:303 -msgid "Load another boot loader." -msgstr "Indlæs en anden opstartsindlæser." - -#: grub-core/loader/i386/bsd.c:103 -msgid "Display output on all consoles." -msgstr "Vis udskrift på alle konsoller." - -#: grub-core/loader/i386/bsd.c:104 grub-core/loader/i386/bsd.c:138 -#: grub-core/loader/i386/bsd.c:171 -msgid "Use serial console." -msgstr "Brug seriel konsol." - -#: grub-core/loader/i386/bsd.c:105 grub-core/loader/i386/bsd.c:131 -#: grub-core/loader/i386/bsd.c:159 -msgid "Ask for file name to reboot from." -msgstr "Spørg om et filnavn, der skal genstartes fra." - -#: grub-core/loader/i386/bsd.c:106 -msgid "Use CD-ROM as root." -msgstr "Brug cd-rom som root." - -# ??? -#: grub-core/loader/i386/bsd.c:107 -msgid "Invoke user configuration routing." -msgstr "Aktivér brugerkonfigurations-routing." - -#: grub-core/loader/i386/bsd.c:108 grub-core/loader/i386/bsd.c:135 -#: grub-core/loader/i386/bsd.c:162 -msgid "Enter in KDB on boot." -msgstr "Gå ind i KDB ved opstart." - -#: grub-core/loader/i386/bsd.c:109 -msgid "Use GDB remote debugger instead of DDB." -msgstr "Brug GDBs fjernfejlfinder frem for DDB." - -#: grub-core/loader/i386/bsd.c:110 -msgid "Disable all boot output." -msgstr "Deaktivér al opstartsudskrift." - -#: grub-core/loader/i386/bsd.c:112 -msgid "Wait for keypress after every line of output." -msgstr "Vent på tastetryk efter hver udskrevet linje." - -#: grub-core/loader/i386/bsd.c:114 -msgid "Use compiled-in root device." -msgstr "Brug indkompileret rodenhed." - -#: grub-core/loader/i386/bsd.c:115 grub-core/loader/i386/bsd.c:134 -#: grub-core/loader/i386/bsd.c:165 -msgid "Boot into single mode." -msgstr "Boot i single-tilstand." - -#: grub-core/loader/i386/bsd.c:116 grub-core/loader/i386/bsd.c:166 -msgid "Boot with verbose messages." -msgstr "Boot med uddybende meddelelser." - -#: grub-core/loader/i386/bsd.c:132 grub-core/loader/i386/bsd.c:160 -msgid "Don't reboot, just halt." -msgstr "Stands kun, genstart ikke." - -#: grub-core/loader/i386/bsd.c:133 grub-core/loader/i386/bsd.c:161 -msgid "Change configured devices." -msgstr "Ændr konfigurerede enheder." - -#. TRANSLATORS: "com" is static and not to be translated. It refers to -#. serial ports e.g. com1. -#. -#: grub-core/loader/i386/bsd.c:142 -msgid "comUNIT[,SPEED]" -msgstr "comENHED[,HASTIGHED]" - -#: grub-core/loader/i386/bsd.c:157 -msgid "Disable SMP." -msgstr "Deaktivér SMP." - -#: grub-core/loader/i386/bsd.c:158 -msgid "Disable ACPI." -msgstr "Deaktivér ACPI." - -#: grub-core/loader/i386/bsd.c:164 -msgid "Don't display boot diagnostic messages." -msgstr "Vis ikke boot-diagnostikmeddelelser." - -#: grub-core/loader/i386/bsd.c:167 -msgid "Boot with debug messages." -msgstr "Start op med fejlsøgningsbeskeder." - -#: grub-core/loader/i386/bsd.c:168 -msgid "Suppress normal output (warnings remain)." -msgstr "Undertryk normal udskrift (advarsler vises stadig)." - -#. TRANSLATORS: "com" is static and not to be translated. It refers to -#. serial ports e.g. com1. -#. -#: grub-core/loader/i386/bsd.c:175 -msgid "[ADDR|comUNIT][,SPEED]" -msgstr "[ADR|comENHED][,HASTIGHED]" - -#: grub-core/loader/i386/bsd.c:489 grub-core/loader/i386/bsd.c:555 -msgid "name" -msgstr "navn" - -#: grub-core/loader/i386/bsd.c:489 grub-core/loader/i386/bsd.c:555 -msgid "type" -msgstr "type" - -#: grub-core/loader/i386/bsd.c:489 grub-core/loader/i386/bsd.c:555 -msgid "addr" -msgstr "adr" - -#: grub-core/loader/i386/bsd.c:490 grub-core/loader/i386/bsd.c:556 -msgid "size" -msgstr "stør" - -#: grub-core/loader/i386/bsd.c:1147 grub-core/loader/i386/linux.c:466 -#: grub-core/loader/i386/xnu.c:1030 -msgid "Booting in blind mode" -msgstr "Booter i blindtilstand" - -#: grub-core/loader/i386/bsd.c:2137 -msgid "Load kernel of FreeBSD." -msgstr "Indlæs FreeBSD-kerne." - -#: grub-core/loader/i386/bsd.c:2140 -msgid "Load kernel of OpenBSD." -msgstr "Indlæs OpenBSD-kerne." - -#: grub-core/loader/i386/bsd.c:2143 -msgid "Load kernel of NetBSD." -msgstr "Indlæs NetBSD-kerne." - -#: grub-core/loader/i386/bsd.c:2147 -msgid "Load FreeBSD env." -msgstr "Indlæs FreeBSD-miljø." - -#: grub-core/loader/i386/bsd.c:2150 -msgid "Load FreeBSD kernel module." -msgstr "Indlæs FreeBSD-kernemodul." - -#: grub-core/loader/i386/bsd.c:2153 -msgid "Load NetBSD kernel module." -msgstr "Indlæs NetBSD-kernemodul." - -#: grub-core/loader/i386/bsd.c:2156 -msgid "Load NetBSD kernel module (ELF)." -msgstr "Indlæs NetBSD-kernemodul (ELF)." - -#: grub-core/loader/i386/bsd.c:2159 -msgid "Load FreeBSD kernel module (ELF)." -msgstr "Indlæs FreeBSD-kernemodul (ELF)." - -#. TRANSLATORS: ramdisk isn't identifier, -#. it can be translated. -#: grub-core/loader/i386/bsd.c:2165 -msgid "Load kOpenBSD ramdisk." -msgstr "Indlæs kOpenBSD-ramdisk." - -#. TRANSLATORS: "payload" is a term used -#. by coreboot and must be translated in -#. sync with coreboot. If unsure, -#. let it untranslated. -#: grub-core/loader/i386/coreboot/chainloader.c:510 -msgid "Load another coreboot payload" -msgstr "Indlæs en anden coreboot-payload" - -#: grub-core/loader/i386/linux.c:876 -msgid "Legacy `ask' parameter no longer supported." -msgstr "Den forældede parameter \"ask\" understøttes ikke længere." - -#: grub-core/loader/i386/linux.c:892 grub-core/loader/i386/linux.c:902 -#: grub-core/loader/i386/linux.c:932 -#, c-format -msgid "%s is deprecated. Use set gfxpayload=%s before linux command instead.\n" -msgstr "" -"%s er forældet. Brug i stedet set gfxpayload=%s før linux-kommandoen.\n" - -#. TRANSLATORS: "x" has to be entered in, like an identifier, -#. so please don't use better Unicode codepoints. -#: grub-core/loader/i386/linux.c:915 -#, c-format -msgid "" -"%s is deprecated. VGA mode %d isn't recognized. Use set " -"gfxpayload=WIDTHxHEIGHT[xDEPTH] before linux command instead.\n" -msgstr "" -"%s er forældet. VGA-tilstand %d genkendes ikke. Brug i stedet set " -"gfxpayload=BREDDExHØJDE[xDYBDE] før linux-kommandoen.\n" - -#: grub-core/loader/i386/pc/chainloader.c:302 -msgid "[--force|--bpb] FILE" -msgstr "[--force|--bpb] FIL" - -#: grub-core/loader/i386/pc/freedos.c:148 util/setup.c:293 -#, c-format -msgid "the size of `%s' is too large" -msgstr "størrelsen af \"%s\" er for stor" - -#: grub-core/loader/i386/pc/freedos.c:183 -msgid "Load FreeDOS kernel.sys." -msgstr "Indlæs kernel.sys fra FreeDOS." - -#: grub-core/loader/i386/pc/ntldr.c:155 -msgid "Load NTLDR or BootMGR." -msgstr "Indlæs NTLDR eller BootMGR." - -#. TRANSLATORS: it's about guessing which GRUB disk -#. is which Plan9 disk. If your language has no -#. word "mapping" you can use another word which -#. means that the GRUBDEVICE and PLAN9DEVICE are -#. actually the same device, just named differently -#. in OS and GRUB. -#: grub-core/loader/i386/pc/plan9.c:59 -msgid "Override guessed mapping of Plan9 devices." -msgstr "Tilsidesæt gættet afbildning af Plan9-enheder." - -#: grub-core/loader/i386/pc/plan9.c:60 -msgid "GRUBDEVICE=PLAN9DEVICE" -msgstr "GRUBENHED=PLAN9ENHED" - -# er velsagtens to forskellige symboler i en kommandoskabelon -#: grub-core/loader/i386/pc/plan9.c:599 -msgid "KERNEL ARGS" -msgstr "KERNE ARGUMENTER" - -#: grub-core/loader/i386/pc/plan9.c:599 -msgid "Load Plan9 kernel." -msgstr "Indlæs Plan9-kerne." - -#: grub-core/loader/i386/pc/pxechainloader.c:161 -msgid "Load a PXE image." -msgstr "Indlæs et PXE-aftryk." - -#: grub-core/loader/i386/pc/truecrypt.c:226 -msgid "Load Truecrypt ISO." -msgstr "Indlæs Truecrypt-ISO." - -#: grub-core/loader/i386/xen.c:781 grub-core/loader/i386/xen.c:865 -msgid "initrd already loaded" -msgstr "initrd allerede indlæst" - -#: grub-core/loader/i386/xen.c:968 -msgid "Load module." -msgstr "Indlæs modul." - -#: grub-core/loader/i386/xnu.c:1003 -msgid "Press any key to launch xnu" -msgstr "Tryk på en tast for at starte xnu" - -#. TRANSLATORS: `device-properties' -#. is a variable name, -#. not a program. -#: grub-core/loader/i386/xnu.c:1159 -msgid "Load `device-properties' dump." -msgstr "Indlæs dump af \"device-properties\"." - -#: grub-core/loader/ia64/efi/linux.c:124 -msgid "Could not locate FPSWA driver" -msgstr "Kunne ikke finde FPSWA-driver" - -#: grub-core/loader/ia64/efi/linux.c:132 -msgid "FPSWA protocol wasn't able to find the interface" -msgstr "FPSWA-protokol kunne ikke finde grænsefladen" - -#: grub-core/loader/ia64/efi/linux.c:580 -msgid "No FPSWA found" -msgstr "Ingen FPSWA fundet" - -#: grub-core/loader/ia64/efi/linux.c:582 -#, c-format -msgid "FPSWA revision: %x\n" -msgstr "FPSWA-revision: %x\n" - -#: grub-core/loader/ia64/efi/linux.c:591 -msgid "FILE [ARGS...]" -msgstr "FIL [ARG...]" - -#: grub-core/loader/ia64/efi/linux.c:597 -msgid "Display FPSWA version." -msgstr "Vis FPSWA-version." - -#: grub-core/loader/multiboot.c:248 -msgid "WARNING: no console will be available to OS" -msgstr "ADVARSEL: ingen konsol vil være tilgængelig for OS" - -#: grub-core/loader/multiboot.c:450 -msgid "Load a multiboot 2 kernel." -msgstr "Indlæs en multiboot 2-kerne." - -#: grub-core/loader/multiboot.c:453 -msgid "Load a multiboot 2 module." -msgstr "Indlæs et multiboot 2-modul." - -#: grub-core/loader/multiboot.c:456 -msgid "Load a multiboot kernel." -msgstr "Indlæs en multiboot-kerne." - -#: grub-core/loader/multiboot.c:459 -msgid "Load a multiboot module." -msgstr "Indlæs et multiboot-modul." - -#: grub-core/loader/riscv/linux.c:30 grub-core/loader/riscv/linux.c:40 -#, fuzzy -msgid "Linux not supported yet" -msgstr "fortolk (interpret) understøttes ikke" - -# Se udviklerkommentaren nedenfor for "stretch|normal" -#: grub-core/loader/xnu.c:1416 grub-core/term/gfxterm_background.c:45 -msgid "Background image mode." -msgstr "Baggrundsbilledtilstand." - -#. TRANSLATORS: This refers to background image mode (stretched or -#. in left-top corner). Note that GRUB will accept only original -#. keywords stretch and normal, not the translated ones. -#. So please put both in translation -#. e.g. stretch(=%STRETCH%)|normal(=%NORMAL%). -#. The percents mark the translated version. Since many people -#. may not know the word stretch or normal I recommend -#. putting the translation either here or in "Background image mode." -#. string. -#: grub-core/loader/xnu.c:1416 grub-core/term/gfxterm_background.c:55 -msgid "stretch|normal" -msgstr "stretch(=stræk)|normal" - -#: grub-core/loader/xnu.c:1482 -msgid "Load XNU image." -msgstr "Indlæs XNU-aftryk." - -#: grub-core/loader/xnu.c:1484 -msgid "Load 64-bit XNU image." -msgstr "Indlæs 64-bit XNU-aftryk." - -#: grub-core/loader/xnu.c:1486 -msgid "Load XNU extension package." -msgstr "Indlæs XNU-udvidelsespakke." - -#: grub-core/loader/xnu.c:1488 -msgid "Load XNU extension." -msgstr "Indlæs XNU-udvidelse." - -# ? -#. TRANSLATORS: OSBundleRequired is a -#. variable name in xnu extensions -#. manifests. It behaves mostly like -#. GNU/Linux runlevels. -#. -#: grub-core/loader/xnu.c:1495 -msgid "DIRECTORY [OSBundleRequired]" -msgstr "KATALOG [OSBundleRequired]" - -#. TRANSLATORS: There are many extensions -#. in extension directory. -#: grub-core/loader/xnu.c:1498 -msgid "Load XNU extension directory." -msgstr "Indlæs XNU-udvidelseskatalog." - -#. TRANSLATORS: ramdisk here isn't identifier. It can be translated. -#: grub-core/loader/xnu.c:1501 -msgid "Load XNU ramdisk. It will be available in OS as md0." -msgstr "Indlæs XNU-ramdisk. Den vil kunne ses som md0 i OS." - -# ??? splash image lige pludselig? Det er vel så et billede og ikke et aftryk. Så vidt jeg kan se i koden er dette eneste forekomst af dén slags. -Ask -#: grub-core/loader/xnu.c:1505 -msgid "Load a splash image for XNU." -msgstr "Indlæs et startbillede for XNU." - -#: grub-core/loader/xnu.c:1510 -msgid "Load an image of hibernated XNU." -msgstr "Indlæs et aftryk af XNU i dvaletilstand." - -#: grub-core/mmap/mmap.c:538 -msgid "ADDR1,MASK1[,ADDR2,MASK2[,...]]" -msgstr "ADR1,MASKE1[,ADR2,MASKE2[,...]]" - -#: grub-core/mmap/mmap.c:539 -msgid "Declare memory regions as faulty (badram)." -msgstr "Erklær hukommelsesregioner som fejlbehæftede (badram)." - -#: grub-core/mmap/mmap.c:541 -msgid "FROM[K|M|G] TO[K|M|G]" -msgstr "FRA[K|M|G] TIL[K|M|G]" - -#: grub-core/mmap/mmap.c:542 -msgid "Remove any memory regions in specified range." -msgstr "Fjern hukommelsesregioner i det angivne interval." - -#: grub-core/net/bootp.c:653 -msgid "four arguments expected" -msgstr "fire argumenter forventet" - -#: grub-core/net/bootp.c:661 grub-core/net/net.c:1155 -#, c-format -msgid "unrecognised network interface `%s'" -msgstr "ukendt netværksgrænseflade \"%s\"" - -#: grub-core/net/bootp.c:664 -msgid "no DHCP info found" -msgstr "ingen DHCP-info fundet" - -#: grub-core/net/bootp.c:674 -msgid "no DHCP options found" -msgstr "ingen DHCP-tilvalg fundet" - -#: grub-core/net/bootp.c:682 -#, fuzzy -msgid "invalid DHCP option code" -msgstr "ingen DHCP-tilvalg fundet" - -#: grub-core/net/bootp.c:686 -#, fuzzy, c-format -msgid "no DHCP option %u found" -msgstr "intet DHCP-tilvalg %d fundet" - -#: grub-core/net/bootp.c:743 -#, c-format -msgid "unrecognised DHCP option format specification `%s'" -msgstr "ukendt formatangivelse \"%s\" for DHCP-tilvalg" - -#: grub-core/net/bootp.c:767 -msgid "no network card found" -msgstr "intet netværkskort fundet" - -#: grub-core/net/bootp.c:859 grub-core/net/net.c:389 -#, c-format -msgid "couldn't autoconfigure %s" -msgstr "kunne ikke autokonfigurere %s" - -#: grub-core/net/bootp.c:873 grub-core/net/bootp.c:876 -msgid "[CARD]" -msgstr "[KORT]" - -#: grub-core/net/bootp.c:874 -msgid "perform a bootp autoconfiguration" -msgstr "udfør en bootp-autokonfiguration" - -#: grub-core/net/bootp.c:877 -#, fuzzy -msgid "perform a DHCP autoconfiguration" -msgstr "udfør en bootp-autokonfiguration" - -#: grub-core/net/bootp.c:879 -msgid "VAR INTERFACE NUMBER DESCRIPTION" -msgstr "VAR GRÆNSEFLADE NUMMER BESKRIVELSE" - -#: grub-core/net/bootp.c:880 -msgid "" -"retrieve DHCP option and save it into VAR. If VAR is - then print the value." -msgstr "hent DHCP-tilvalg og gem det i VAR. Hvis VAR er -, så udskriv værdien." - -#: grub-core/net/dns.c:459 -msgid "no DNS servers configured" -msgstr "ingen DNS-servere konfigureret" - -#: grub-core/net/dns.c:522 -msgid "domain name component is too long" -msgstr "domænenavnskomponent er for lang" - -#: grub-core/net/dns.c:618 grub-core/net/dns.c:666 -msgid "no DNS record found" -msgstr "ingen DNS-fortegnelse fundet" - -#: grub-core/net/dns.c:626 -msgid "no DNS reply received" -msgstr "intet DNS-svar modtaget" - -#: grub-core/net/dns.c:682 -msgid "only ipv4" -msgstr "kun ipv4" - -#: grub-core/net/dns.c:686 -msgid "only ipv6" -msgstr "kun ipv6" - -#: grub-core/net/dns.c:690 -msgid "prefer ipv4" -msgstr "foretræk ipv4" - -#: grub-core/net/dns.c:694 -msgid "prefer ipv6" -msgstr "foretræk ipv6" - -#: grub-core/net/dns.c:759 -msgid "ADDRESS DNSSERVER" -msgstr "ADRESSE DNSSERVER" - -#: grub-core/net/dns.c:760 -msgid "Perform a DNS lookup" -msgstr "Udfør et DNS-opslag" - -#: grub-core/net/dns.c:762 grub-core/net/dns.c:765 -msgid "DNSSERVER" -msgstr "DNSSERVER" - -#: grub-core/net/dns.c:763 -msgid "Add a DNS server" -msgstr "Tilføj en DNS-server" - -#: grub-core/net/dns.c:766 -msgid "Remove a DNS server" -msgstr "Fjern en DNS-server" - -#: grub-core/net/dns.c:768 -msgid "List DNS servers" -msgstr "Vis DNS-servere" - -#: grub-core/net/drivers/efi/efinet.c:49 grub-core/net/drivers/efi/efinet.c:65 -#: grub-core/net/drivers/efi/efinet.c:77 grub-core/net/drivers/emu/emunet.c:62 -#: grub-core/net/drivers/i386/pc/pxe.c:273 -#: grub-core/net/drivers/ieee1275/ofnet.c:75 -#: grub-core/net/drivers/uboot/ubootnet.c:62 -msgid "couldn't send network packet" -msgstr "kunne ikke sende netværkspakke" - -#: grub-core/net/drivers/ieee1275/ofnet.c:326 -#: grub-core/net/drivers/ieee1275/ofnet.c:359 -msgid "interpret is not supported" -msgstr "fortolk (interpret) understøttes ikke" - -#: grub-core/net/drivers/ieee1275/ofnet.c:336 -msgid "alloc-mem failed" -msgstr "alloc-mem mislykkedes" - -#: grub-core/net/drivers/ieee1275/ofnet.c:370 -msgid "free-mem failed" -msgstr "free-mem mislykkedes" - -#: grub-core/net/http.c:105 -msgid "unsupported HTTP response" -msgstr "uunderstøttet HTTP-svar" - -#. TRANSLATORS: GRUB HTTP code is pretty young. So even perfectly -#. valid answers like 403 will trigger this very generic message. -#: grub-core/net/http.c:126 -#, c-format -msgid "unsupported HTTP error %d: %s" -msgstr "uunderstøttet HTTP-fejl %d: %s" - -#: grub-core/net/http.c:429 grub-core/net/tftp.c:420 -#, c-format -msgid "time out opening `%s'" -msgstr "tidsudløb ved åbning af \"%s\"" - -#: grub-core/net/net.c:179 -msgid "timeout: could not resolve hardware address" -msgstr "tidsudløb: kunne ikke slå hardwareadresse op" - -#: grub-core/net/net.c:548 -#, c-format -msgid "unresolvable address %s" -msgstr "adresse %s kan ikke slås op" - -#: grub-core/net/net.c:594 -#, c-format -msgid "unrecognised network address `%s'" -msgstr "ukendt netværksadresse \"%s\"" - -#: grub-core/net/net.c:661 -msgid "destination unreachable" -msgstr "destination kan ikke nås" - -#. TRANSLATORS: route loop is a condition when e.g. -#. to contact server A you need to go through B -#. and to contact B you need to go through A. -#: grub-core/net/net.c:684 -msgid "route loop detected" -msgstr "cyklisk rute fundet" - -#: grub-core/net/net.c:700 -msgid "address not found" -msgstr "adresse ikke fundet" - -#: grub-core/net/net.c:704 -msgid "you can't delete this address" -msgstr "kan ikke slette denne adresse" - -#: grub-core/net/net.c:776 grub-core/net/net.c:792 -#, c-format -msgid "Unsupported hw address type %d\n" -msgstr "Uunderstøttet hw-adressetype %d\n" - -#: grub-core/net/net.c:813 -#, c-format -msgid "Unsupported address type %d\n" -msgstr "Uunderstøttet adressetype %d\n" - -#: grub-core/net/net.c:1017 grub-core/net/net.c:1131 -msgid "three arguments expected" -msgstr "tre argumenter forventet" - -#: grub-core/net/net.c:1023 -msgid "card not found" -msgstr "kort ikke fundet" - -#. TRANSLATORS: it refers to the network address. -#: grub-core/net/net.c:1167 -msgid "temporary" -msgstr "midlertidig" - -#: grub-core/net/net.c:1190 -#, c-format -msgid "Unknown address type %d\n" -msgstr "Ukendt adressetype %d\n" - -#: grub-core/net/net.c:1298 -msgid "no server is specified" -msgstr "ingen server angivet" - -#: grub-core/net/net.c:1637 -#, c-format -msgid "timeout reading `%s'" -msgstr "tidsudløb ved læsning af \"%s\"" - -#. TRANSLATORS: HWADDRESS stands for -#. "hardware address". -#: grub-core/net/net.c:1762 -msgid "SHORTNAME CARD ADDRESS [HWADDRESS]" -msgstr "KORTNAVN KORT ADRESSE [HWADRESSE]" - -#: grub-core/net/net.c:1763 -msgid "Add a network address." -msgstr "Tilføj en netværksadresse." - -#: grub-core/net/net.c:1766 -msgid "[CARD [HWADDRESS]]" -msgstr "[KORT [HWADRESSE]]" - -#: grub-core/net/net.c:1767 -msgid "Perform an IPV6 autoconfiguration" -msgstr "Udfør en IPV6-autokonfiguration" - -#: grub-core/net/net.c:1770 grub-core/net/net.c:1777 -msgid "SHORTNAME" -msgstr "KORTNAVN" - -#: grub-core/net/net.c:1771 -msgid "Delete a network address." -msgstr "Slet en netværksadresse." - -#. TRANSLATORS: "gw" is a keyword. -#: grub-core/net/net.c:1774 -msgid "SHORTNAME NET [INTERFACE| gw GATEWAY]" -msgstr "KORTNAVN NET [GRÆNSEFLADE| gw ADGANGSPUNKT]" - -#: grub-core/net/net.c:1775 -msgid "Add a network route." -msgstr "Tilføj en netværksrute." - -#: grub-core/net/net.c:1778 -msgid "Delete a network route." -msgstr "Slet en netværksrute." - -#: grub-core/net/net.c:1780 -msgid "list network routes" -msgstr "vis netværksruter" - -#: grub-core/net/net.c:1782 -msgid "list network cards" -msgstr "vis netværkskort" - -#: grub-core/net/net.c:1784 -msgid "list network addresses" -msgstr "vis netværksadresser" - -#: grub-core/net/tcp.c:681 -msgid "connection refused" -msgstr "forbindelse afvist" - -#: grub-core/net/tcp.c:684 -msgid "connection timeout" -msgstr "tidsudløb for forbindelse" - -#: grub-core/normal/auth.c:220 -msgid "Enter username: " -msgstr "Indtast brugernavn: " - -#: grub-core/normal/auth.c:269 -msgid "[USERLIST]" -msgstr "[BRUGERLISTE]" - -#: grub-core/normal/auth.c:270 -msgid "Check whether user is in USERLIST." -msgstr "Tjek om bruger findes i BRUGERLISTE." - -#: grub-core/normal/cmdline.c:174 grub-core/normal/menu_entry.c:1068 -msgid "Possible commands are:" -msgstr "Mulige kommandoer er:" - -#: grub-core/normal/cmdline.c:177 grub-core/normal/menu_entry.c:1072 -msgid "Possible devices are:" -msgstr "Mulige enheder er:" - -#: grub-core/normal/cmdline.c:180 grub-core/normal/menu_entry.c:1076 -msgid "Possible files are:" -msgstr "Mulige filer er:" - -#: grub-core/normal/cmdline.c:183 grub-core/normal/menu_entry.c:1080 -msgid "Possible partitions are:" -msgstr "Mulige partitioner er:" - -#: grub-core/normal/cmdline.c:186 grub-core/normal/menu_entry.c:1084 -msgid "Possible arguments are:" -msgstr "Mulige argumenter er:" - -#. TRANSLATORS: this message is used if none of above matches. -#. This shouldn't happen but please use the general term for -#. "thing" or "object". -#: grub-core/normal/cmdline.c:192 grub-core/normal/menu_entry.c:1088 -msgid "Possible things are:" -msgstr "Mulige ting er:" - -#: grub-core/normal/color.c:81 -#, c-format -msgid "Warning: syntax error (missing slash) in `%s'\n" -msgstr "Advarsel: syntaksfejl (manglende skråstreg) i \"%s\"\n" - -#: grub-core/normal/color.c:90 -#, c-format -msgid "Warning: invalid foreground color `%s'\n" -msgstr "Advarsel: ugyldig forgrundsfarve \"%s\"\n" - -#: grub-core/normal/color.c:96 -#, c-format -msgid "Warning: invalid background color `%s'\n" -msgstr "Advarsel: ugyldig baggrundsfarve \"%s\"\n" - -#: grub-core/normal/context.c:206 -msgid "ENVVAR [ENVVAR] ..." -msgstr "MILJØVAR [MILJØVAR] ..." - -#: grub-core/normal/context.c:207 -msgid "Export variables." -msgstr "Eksportér variable." - -#: grub-core/normal/datetime.c:25 -msgid "Sunday" -msgstr "Søndag" - -#: grub-core/normal/datetime.c:26 -msgid "Monday" -msgstr "Mandag" - -#: grub-core/normal/datetime.c:27 -msgid "Tuesday" -msgstr "Tirsdag" - -#: grub-core/normal/datetime.c:28 -msgid "Wednesday" -msgstr "Onsdag" - -#: grub-core/normal/datetime.c:29 -msgid "Thursday" -msgstr "Torsdag" - -#: grub-core/normal/datetime.c:30 -msgid "Friday" -msgstr "Fredag" - -#: grub-core/normal/datetime.c:31 -msgid "Saturday" -msgstr "Lørdag" - -#: grub-core/normal/dyncmd.c:187 -msgid "module isn't loaded" -msgstr "modul er ikke indlæst" - -#: grub-core/normal/main.c:211 -#, c-format -msgid "GNU GRUB version %s" -msgstr "GNU GRUB version %s" - -#: grub-core/normal/main.c:360 -msgid "ESC at any time exits." -msgstr "ESC på ethvert tidspunkt afslutter." - -#: grub-core/normal/main.c:363 -#, c-format -msgid "" -"Minimal BASH-like line editing is supported. For the first word, TAB lists " -"possible command completions. Anywhere else TAB lists possible device or " -"file completions. %s" -msgstr "" -"Minimal BASH-agtig linjeredigering understøttes. For det første ord vil TAB " -"vise de mulige kommandofuldførelser. Alle andre steder vil TAB vise de " -"mulige fuldførelser af enheds- eller filnavne. %s" - -#. TRANSLATORS: it's command line prompt. -#: grub-core/normal/main.c:395 -msgid ">" -msgstr ">" - -#. TRANSLATORS: it's command line prompt. -#: grub-core/normal/main.c:398 -msgid "grub>" -msgstr "grub>" - -#: grub-core/normal/main.c:518 -msgid "Clear the screen." -msgstr "Ryd skærmen." - -# scootergrisen: måske "normaltilstand" eller "normal-tilstand" -#: grub-core/normal/main.c:527 -msgid "Enter normal mode." -msgstr "Gå i normaltilstand." - -# scootergrisen: måske "normaltilstand" eller "normal-tilstand" -#: grub-core/normal/main.c:529 -msgid "Exit from normal mode." -msgstr "Afslut normaltilstand." - -#: grub-core/normal/menu.c:66 grub-core/normal/menu_entry.c:1449 -msgid "Press any key to continue..." -msgstr "Tryk på en tast for at fortsætte..." - -#: grub-core/normal/menu.c:815 -#, c-format -msgid "Booting `%s'" -msgstr "Booter \"%s\"" - -#: grub-core/normal/menu.c:827 -#, c-format -msgid "Falling back to `%s'" -msgstr "Falder tilbage på \"%s\"" - -#: grub-core/normal/menu.c:843 -msgid "Failed to boot both default and fallback entries.\n" -msgstr "Kunne hverken boote standard- eller reservepunktet.\n" - -# ??? -#: grub-core/normal/menu_entry.c:1171 -msgid "Booting a command list" -msgstr "Booter en kommandoliste" - -#: grub-core/normal/menu_text.c:160 -msgid "" -"Minimum Emacs-like screen editing is supported. TAB lists completions. Press " -"Ctrl-x or F10 to boot, Ctrl-c or F2 for a command-line or ESC to discard " -"edits and return to the GRUB menu." -msgstr "" -"Der understøttes minimal Emacs-agtig skærmredigering. TAB viser " -"fuldførelser. Tryk på Ctrl-x eller F10 for at begynde opstart, Ctrl-c eller " -"F2 for at få en kommandolinje, eller ESC for at forkaste ændringerne og " -"vende tilbage til GRUB-menuen." - -#: grub-core/normal/menu_text.c:170 -#, c-format -msgid "Use the %C and %C keys to select which entry is highlighted." -msgstr "Brug tasterne %C og %C til at fremhæve et punkt." - -#. TRANSLATORS: that's the list of binary unit prefixes. -#: grub-core/normal/misc.c:38 -msgid "B" -msgstr "B" - -#: grub-core/normal/misc.c:38 -msgid "KiB" -msgstr "KiB" - -#: grub-core/normal/misc.c:38 -msgid "MiB" -msgstr "MiB" - -#: grub-core/normal/misc.c:38 -msgid "GiB" -msgstr "GiB" - -#: grub-core/normal/misc.c:38 -msgid "TiB" -msgstr "TiB" - -#: grub-core/normal/misc.c:38 -msgid "PiB" -msgstr "PiB" - -#. TRANSLATORS: that's the list of binary unit prefixes. -#: grub-core/normal/misc.c:40 -msgid "K" -msgstr "K" - -#: grub-core/normal/misc.c:40 -msgid "M" -msgstr "M" - -#: grub-core/normal/misc.c:40 -msgid "G" -msgstr "G" - -#: grub-core/normal/misc.c:40 -msgid "T" -msgstr "T" - -#: grub-core/normal/misc.c:40 -msgid "P" -msgstr "P" - -#. TRANSLATORS: that's the list of binary unit prefixes. -#: grub-core/normal/misc.c:42 -msgid "B/s" -msgstr "B/s" - -#: grub-core/normal/misc.c:42 -msgid "KiB/s" -msgstr "KiB/s" - -#: grub-core/normal/misc.c:42 -msgid "MiB/s" -msgstr "MiB/s" - -#: grub-core/normal/misc.c:42 -msgid "GiB/s" -msgstr "GiB/s" - -#: grub-core/normal/misc.c:42 -msgid "TiB/s" -msgstr "TiB/s" - -#: grub-core/normal/misc.c:42 -msgid "PiB/s" -msgstr "PiB/s" - -#: grub-core/normal/misc.c:96 -#, c-format -msgid "Partition %s:" -msgstr "Partition %s:" - -#: grub-core/normal/misc.c:101 -#, c-format -msgid "Device %s:" -msgstr "Enhed %s:" - -#: grub-core/normal/misc.c:107 -msgid "Filesystem cannot be accessed" -msgstr "Filsystem kan ikke tilgås" - -#: grub-core/normal/misc.c:121 -#, c-format -msgid "Filesystem type %s" -msgstr "Filsystemtype %s" - -#: grub-core/normal/misc.c:131 -#, c-format -msgid "- Label `%s'" -msgstr "- Etiket \"%s\"" - -#. TRANSLATORS: Arguments are year, month, day, hour, minute, -#. second, day of the week (translated). -#: grub-core/normal/misc.c:148 -#, c-format -msgid "- Last modification time %d-%02d-%02d %02d:%02d:%02d %s" -msgstr "- Sidste modifikationstid %d-%02d-%02d %02d:%02d:%02d %s" - -#: grub-core/normal/misc.c:171 -msgid "No known filesystem detected" -msgstr "Intet kendt filsystem fundet" - -#: grub-core/normal/misc.c:174 -#, c-format -msgid " - Partition start at %llu%sKiB" -msgstr " - Partitionsstart ved %llu%sKiB" - -#: grub-core/normal/misc.c:178 -#, c-format -msgid " - Sector size %uB" -msgstr " - Sektorstørrelse %uB" - -#: grub-core/normal/misc.c:180 -msgid " - Total size unknown" -msgstr " - Samlet størrelse er ukendt" - -#: grub-core/normal/misc.c:182 -#, c-format -msgid " - Total size %llu%sKiB" -msgstr " - Samlet størrelse %llu%sKiB" - -#. TRANSLATORS: Replace dot with appropriate decimal separator for -#. your language. -#: grub-core/normal/misc.c:186 -msgid ".5" -msgstr ",5" - -#. TRANSLATORS: This has to fit on one line. It's ok to include few -#. words but don't write poems. -#: grub-core/normal/term.c:82 -msgid "--MORE--" -msgstr "--MERE--" - -#: grub-core/osdep/aros/config.c:92 grub-core/osdep/unix/config.c:137 -#: grub-core/osdep/windows/config.c:55 -#, c-format -msgid "cannot open configuration file `%s': %s" -msgstr "kan ikke åbne konfigurationsfilen \"%s\": %s" - -#: grub-core/osdep/basic/compress.c:8 grub-core/osdep/basic/compress.c:14 -#: grub-core/osdep/basic/compress.c:20 -msgid "no compression is available for your platform" -msgstr "ingen komprimering er tilgængelige til din platform" - -#: grub-core/osdep/basic/no_platform.c:30 -#: grub-core/osdep/windows/platform.c:418 -msgid "no IEEE1275 routines are available for your platform" -msgstr "ingen IEEE1275-rutiner er tilgængelige til din platform" - -#: grub-core/osdep/basic/no_platform.c:38 -msgid "no EFI routines are available for your platform" -msgstr "ingen EFI-rutiner er tilgængelige til din platform" - -#: grub-core/osdep/basic/no_platform.c:45 -#: grub-core/osdep/windows/platform.c:425 -msgid "no SGI routines are available for your platform" -msgstr "ingen SGI-rutiner er tilgængelige til din platform" - -#. TRANSLATORS: The OS itself may very well have a random -#. number generator but GRUB doesn't know how to access it. -#: grub-core/osdep/basic/random.c:42 -msgid "no random number generator is available for your OS" -msgstr "ingen tilfældig talgenerator er tilgængelig til dit OS" - -#: grub-core/osdep/devmapper/getroot.c:81 -msgid "Failed to create `device-mapper' tree" -msgstr "Kunne ikke oprette \"device-mapper\"-træ" - -#: grub-core/osdep/devmapper/getroot.c:197 -#: grub-core/osdep/freebsd/getroot.c:202 -#, c-format -msgid "can't mount encrypted volume `%s': %s" -msgstr "kan ikke montere krypteret diskenhed \"%s\": %s" - -#. TRANSLATORS: geom is the name of (k)FreeBSD device framework. -#. Usually left untranslated. -#. -#: grub-core/osdep/freebsd/getroot.c:82 grub-core/osdep/freebsd/getroot.c:164 -#: grub-core/osdep/freebsd/getroot.c:258 grub-core/osdep/freebsd/getroot.c:316 -msgid "couldn't open geom" -msgstr "kunne ikke åbne geom" - -#: grub-core/osdep/freebsd/getroot.c:182 grub-core/osdep/freebsd/getroot.c:277 -msgid "couldn't find geli consumer" -msgstr "kunne ikke finde geli-forbruger" - -#: grub-core/osdep/freebsd/getroot.c:282 -msgid "couldn't retrieve geli UUID" -msgstr "kunne ikke hente geli-UUID" - -#. TRANSLATORS: geom is the name of (k)FreeBSD device framework. -#. Usually left untranslated. "part" is the identifier of one of its -#. classes. -#: grub-core/osdep/freebsd/getroot.c:325 -msgid "couldn't find geom `part' class" -msgstr "kunne ikke finde \"part\"-klasse for geom" - -#: grub-core/osdep/freebsd/hostdisk.c:72 grub-core/osdep/linux/hostdisk.c:93 -msgid "unaligned device size" -msgstr "enhedsstørrelse uden justering" - -#: grub-core/osdep/generic/blocklist.c:56 -#, c-format -msgid "attempting to read the core image `%s' from GRUB" -msgstr "forsøger at læse kerneaftrykket \"%s\" fra GRUB" - -#: grub-core/osdep/generic/blocklist.c:57 -#, c-format -msgid "attempting to read the core image `%s' from GRUB again" -msgstr "forsøger at læse kerneaftrykket \"%s\" fra GRUB igen" - -#: grub-core/osdep/generic/blocklist.c:115 -#, c-format -msgid "cannot read `%s' correctly" -msgstr "kan ikke læse \"%s\" korrekt" - -#: grub-core/osdep/generic/blocklist.c:126 -msgid "failed to read the sectors of the core image" -msgstr "kunne ikke læse kerneaftrykkets sektorer" - -#. TRANSLATORS: On GNU/Hurd, a "translator" is similar to a filesystem -#. mount, but handled by a userland daemon, whose invocation command line -#. is being fetched here. First %s is the file being looked at (for which -#. we are fetching the "translator" command line), second %s is the error -#. message. -#. -#: grub-core/osdep/hurd/getroot.c:79 -#, c-format -msgid "cannot get translator command line for path `%s': %s" -msgstr "kan ikke hente translatørkommandolinje for stien \"%s\": %s" - -#: grub-core/osdep/hurd/getroot.c:82 -#, c-format -msgid "translator command line is empty for path `%s'" -msgstr "translatørkommandolinje er tom for stien \"%s\"" - -#. TRANSLATORS: we expect to get something like -#. /hurd/foobar --option1 --option2=baz /dev/something -#. -#: grub-core/osdep/hurd/getroot.c:98 -#, c-format -msgid "" -"translator `%s' for path `%s' has several non-option words, at least `%s' " -"and `%s'" -msgstr "" -"translatøren \"%s\" for stien \"%s\" har adskillige ord som ikke er tilvalg, " -"i hvert fald \"%s\" og \"%s\"" - -#. TRANSLATORS: we expect to get something like -#. /hurd/foobar --option1 --option2=baz /dev/something -#. -#: grub-core/osdep/hurd/getroot.c:109 -#, c-format -msgid "" -"translator `%s' for path `%s' is given only options, cannot find device part" -msgstr "" -"translatøren \"%s\" for stien \"%s\" har kun tilvalg, kan ikke finde " -"enhedsdel" - -#: grub-core/osdep/hurd/hostdisk.c:73 -#, c-format -msgid "Storage information for `%s' does not include type" -msgstr "Lagerinformation for \"%s\" inkluderer ikke type" - -#: grub-core/osdep/hurd/hostdisk.c:75 -#, c-format -msgid "`%s' is not a local disk" -msgstr "\"%s\" er ikke en lokal disk" - -#: grub-core/osdep/hurd/hostdisk.c:78 -#, c-format -msgid "" -"Storage information for `%s' indicates neither a plain partition nor a plain " -"disk" -msgstr "" -"Lageroplysninger for \"%s\" angiver hverken en simpel partition eller en " -"simpel disk" - -#: grub-core/osdep/linux/blocklist.c:81 grub-core/osdep/linux/blocklist.c:96 -#: grub-core/osdep/linux/blocklist.c:122 -#, c-format -msgid "can't retrieve blocklists: %s" -msgstr "kan ikke hente bloklister: %s" - -#: grub-core/osdep/linux/blocklist.c:84 -msgid "blocksize is not divisible by 512" -msgstr "blokstørrelse kan ikke divideres med 512" - -#: grub-core/osdep/linux/blocklist.c:86 -msgid "invalid zero blocksize" -msgstr "ugyldig blokstørrelse på nul" - -#: grub-core/osdep/linux/blocklist.c:90 util/setup.c:744 -msgid "can't retrieve blocklists" -msgstr "kan ikke hente bloklister" - -#: grub-core/osdep/linux/getroot.c:154 -#, c-format -msgid "ioctl RAID_VERSION error: %s" -msgstr "ioctl RAID_VERSION-fejl: %s" - -#: grub-core/osdep/linux/getroot.c:160 grub-core/osdep/linux/getroot.c:164 -#, c-format -msgid "unsupported RAID version: %d.%d" -msgstr "uunderstøttet RAID-version: %d.%d" - -#: grub-core/osdep/linux/getroot.c:169 -#, c-format -msgid "ioctl GET_ARRAY_INFO error: %s" -msgstr "ioctl GET_ARRAY_INFO-fejl: %s" - -#: grub-core/osdep/linux/getroot.c:178 -#, c-format -msgid "ioctl GET_DISK_INFO error: %s" -msgstr "ioctl GET_DISK_INFO-fejl: %s" - -#: grub-core/osdep/linux/getroot.c:608 grub-core/osdep/linux/getroot.c:678 -#: grub-core/osdep/linux/hostdisk.c:126 grub-core/osdep/unix/getroot.c:253 -#: grub-core/osdep/unix/getroot.c:642 grub-core/osdep/unix/platform.c:92 -#: grub-core/osdep/unix/platform.c:100 -#, c-format -msgid "Unable to open stream from %s: %s" -msgstr "Kan ikke åbne strøm fra %s: %s" - -#: grub-core/osdep/linux/getroot.c:1033 -#, c-format -msgid "unknown kind of RAID device `%s'" -msgstr "ukendt type af RAID-enhed \"%s\"" - -#: grub-core/osdep/linux/ofpath.c:181 -#, c-format -msgid "`obppath' not found in parent dirs of `%s', no IEEE1275 name discovery" -msgstr "" -"\"obppath\" ikke fundet i overkataloger af \"%s\"; ingen IEEE1275-" -"navnedetektering" - -#: grub-core/osdep/linux/ofpath.c:222 grub-core/osdep/unix/getroot.c:505 -#: grub-core/osdep/unix/getroot.c:529 grub-core/osdep/unix/relpath.c:49 -#: util/grub-install.c:984 util/grub-install.c:1331 util/grub-probe.c:323 -#, c-format -msgid "failed to get canonical path of `%s'" -msgstr "kunne ikke finde kanonisk sti for \"%s\"" - -#: grub-core/osdep/linux/ofpath.c:740 -#, c-format -msgid "unknown device type %s" -msgstr "ukendt enhedstype %s" - -#: grub-core/osdep/linux/ofpath.c:758 util/ieee1275/grub-ofpathname.c:39 -#, c-format -msgid "Usage: %s DEVICE\n" -msgstr "Brug: %s ENHED\n" - -#: grub-core/osdep/unix/exec.c:86 grub-core/osdep/unix/exec.c:172 -#: grub-core/osdep/unix/exec.c:217 -#, c-format -msgid "Unable to fork: %s" -msgstr "Kan ikke udføre fork: %s" - -#: grub-core/osdep/unix/exec.c:166 grub-core/osdep/unix/exec.c:211 -#, c-format -msgid "Unable to create pipe: %s" -msgstr "Kan ikke oprette datakanal: %s" - -#: grub-core/osdep/unix/getroot.c:370 -#, fuzzy -msgid "cannot save the original directory" -msgstr "kan ikke gendanne oprindeligt katalog" - -#: grub-core/osdep/unix/getroot.c:423 grub-core/osdep/unix/getroot.c:480 -#: grub-core/osdep/unix/getroot.c:489 -msgid "cannot restore the original directory" -msgstr "kan ikke gendanne oprindeligt katalog" - -#. TRANSLATORS: "stat" comes from the name of POSIX function. -#: grub-core/osdep/unix/getroot.c:551 grub-core/osdep/unix/hostdisk.c:61 -#: grub-core/osdep/unix/relpath.c:73 grub-core/osdep/unix/relpath.c:97 -#: util/getroot.c:160 util/getroot.c:162 util/grub-install.c:774 -#: util/grub-macbless.c:70 -#, c-format -msgid "cannot stat `%s': %s" -msgstr "kan ikke køre stat på \"%s\": %s" - -#: grub-core/osdep/unix/hostdisk.c:293 -#, c-format -msgid "cannot make temporary file: %s" -msgstr "kan ikke oprette midlertidig fil: %s" - -#: grub-core/osdep/unix/hostdisk.c:311 -#, c-format -msgid "cannot make temporary directory: %s" -msgstr "kan ikke oprette midlertidigt katalog: %s" - -#: grub-core/osdep/unix/platform.c:77 -#, c-format -msgid "" -"couldn't find IEEE1275 device path for %s.\n" -"You will have to set `boot-device' variable manually" -msgstr "" -"kunne ikke finde IEEE1275-enheds-træ-sti for %s.\n" -"Du vil være nødt til at angive variablen \"boot-device\" manuelt" - -#. TRANSLATORS: This message is shown when required executable `%s' -#. isn't found. -#: grub-core/osdep/unix/platform.c:149 grub-core/osdep/unix/platform.c:189 -#, c-format -msgid "%s: not found" -msgstr "%s: ikke fundet" - -#: grub-core/osdep/unix/platform.c:225 -#, c-format -msgid "" -"`nvsetenv' failed. \n" -"You will have to set `boot-device' variable manually. At the IEEE1275 " -"prompt, type:\n" -" %s\n" -msgstr "" -"\"nvsetenv\" mislykkedes.\n" -"Det vil være nødvendigt at angive variablen \"boot-device\" manuelt. Skriv " -"følgende i IEEE1275-prompten:\n" -" %s\n" - -#: grub-core/osdep/unix/platform.c:240 -msgid "You will have to set `SystemPartition' and `OSLoader' manually." -msgstr "" -"Det vil være nødvendigt at angive \"SystemPartition\" og \"OSLoader\" " -"manuelt." - -#. TRANSLATORS: canonical pathname is the -#. complete one e.g. /etc/fstab. It has -#. to contain `/' normally, if it doesn't -#. we're in trouble and throw this error. -#: grub-core/osdep/unix/relpath.c:90 -msgid "no `/' in canonical filename" -msgstr "ingen \"/\" i kanonisk filnavn" - -#: grub-core/osdep/windows/hostdisk.c:151 -msgid "cygwin_conv_path() failed" -msgstr "cygwin_conv_path() mislykkedes" - -#: grub-core/osdep/windows/hostdisk.c:501 util/grub-install.c:570 -msgid "couldn't retrieve random data" -msgstr "kunne ikke hente tilfældige data" - -#: grub-core/osdep/windows/platform.c:97 -msgid "Insufficient privileges to access firmware, assuming BIOS" -msgstr "Utilstrækkelige privilegier til at tilgå firmware; antager BIOS" - -#: grub-core/osdep/windows/platform.c:225 -msgid "no EFI routines are available when running in BIOS mode" -msgstr "ingen EFI-rutiner er tilgængelige ved kørsel i BIOS-tilstand" - -#: grub-core/osdep/windows/platform.c:240 -msgid "unexpected EFI error" -msgstr "uventet EFI-fejl" - -#: grub-core/osdep/windows/platform.c:315 -msgid "Couldn't find a free BootNNNN slot" -msgstr "Kunne ikke finde en fri BootNNNN-plads" - -#: grub-core/partmap/gpt.c:191 -msgid "" -"this GPT partition label contains no BIOS Boot Partition; embedding won't be " -"possible" -msgstr "" -"denne GPT-partitionsetiket har ingen BIOS-opstartspartition; indlejring vil " -"ikke være muligt" - -#: grub-core/partmap/gpt.c:196 -msgid "your BIOS Boot Partition is too small; embedding won't be possible" -msgstr "" -"din BIOS-opstartspatition er for lille; indlejring vil ikke være muligt" - -#. TRANSLATORS: MBR gap and boot track is the same thing and is the space -#. between MBR and first partitition. If your language translates well only -#. "boot track", you can just use it everywhere. Next two messages are about -#. RAID controllers/software bugs which GRUB has to live with. Please spread -#. the message that these are bugs in other software and not merely -#. suboptimal behaviour. -#: grub-core/partmap/msdos.c:51 -#, c-format -msgid "" -"Sector %llu is already in use by raid controller `%s'; avoiding it. Please " -"ask the manufacturer not to store data in MBR gap" -msgstr "" -"Sektor %llu er allerede i brug af raid-controller \"%s\"; undgår den. Bed " -"venligst producenten om ikke at gemme data i MBR-pladsen" - -#: grub-core/partmap/msdos.c:54 -#, c-format -msgid "" -"Sector %llu is already in use by the program `%s'; avoiding it. This " -"software may cause boot or other problems in future. Please ask its authors " -"not to store data in the boot track" -msgstr "" -"Sektoren %llu er allerede i brug af programmet \"%s\"; undgår den. Dette " -"program kan forårsage problemer med opstart med mere i fremtiden. Bed " -"venligst programmets forfattere om ikke at lagre data i opstartssporet" - -#: grub-core/partmap/msdos.c:384 -msgid "" -"other software is using the embedding area, and there is not enough room for " -"core.img. Such software is often trying to store data in a way that avoids " -"detection. We recommend you investigate" -msgstr "" -"et andet program bruger indlejringsområdet, og der er ikke plads til core." -"img. Sådanne programmer forsøger ofte at skjule data i hemmelighed. Vi " -"anbefaler at du undersøger dette" - -#: grub-core/partmap/msdos.c:395 -msgid "" -"this msdos-style partition label has no post-MBR gap; embedding won't be " -"possible" -msgstr "" -"denne msdos-agtige partitionsetiket har intet post-MBR-mellerum; indlejring " -"vil ikke være muligt" - -#: grub-core/partmap/msdos.c:404 -msgid "your embedding area is unusually small. core.img won't fit in it." -msgstr "" -"dit indlejringsområde er usædvanligt lille. Der er ikke plads til core.img." - -#: grub-core/parttool/msdospart.c:39 -msgid "Make partition active" -msgstr "Gør partition aktiv" - -#: grub-core/parttool/msdospart.c:51 -msgid "not a primary partition" -msgstr "ikke en primær partition" - -#: grub-core/parttool/msdospart.c:69 -#, c-format -msgid "Partition %d is active now. \n" -msgstr "Partition %d er nu aktiv. \n" - -#: grub-core/parttool/msdospart.c:74 -#, c-format -msgid "Cleared active flag on %d. \n" -msgstr "Fjernede aktiv-flaget på %d. \n" - -#: grub-core/parttool/msdospart.c:87 -msgid "Change partition type" -msgstr "Ændr partitionstype" - -#: grub-core/parttool/msdospart.c:88 -msgid "Set `hidden' flag in partition type" -msgstr "Angiv \"skjult\"-flag i partitionstype" - -#: grub-core/parttool/msdospart.c:130 -#, c-format -msgid "the partition type 0x%x isn't valid" -msgstr "partitionstypen 0x%x er ugyldig" - -#. TRANSLATORS: In this case we're actually writing to the disk and actively -#. modifying partition type rather than just defining it. -#: grub-core/parttool/msdospart.c:137 -#, c-format -msgid "Setting partition type to 0x%x\n" -msgstr "Sætter partitionstype til 0x%x\n" - -#. TRANSLATORS: 0 is a quantifier. "break" (similar to bash) -#. can be used e.g. to break 3 loops at once. -#. But asking it to break 0 loops makes no sense. -#: grub-core/script/execute.c:143 -msgid "can't break 0 loops" -msgstr "kan ikke bryde ud af 0 løkker" - -#. TRANSLATORS: It's about not being -#. inside a function. "return" can be used only -#. in a function and this error occurs if it's used -#. anywhere else. -#: grub-core/script/execute.c:227 -msgid "not in function body" -msgstr "ikke i funktionskrop" - -#: grub-core/script/execute.c:371 -#, c-format -msgid "invalid variable name `%s'" -msgstr "ugyldigt variabelnavn \"%s\"" - -#: grub-core/script/execute.c:953 -msgid "cannot allocate command buffer" -msgstr "" - -#: grub-core/script/lexer.c:144 util/grub-fstest.c:330 -msgid "unexpected end of file" -msgstr "uventet filafslutning" - -#: grub-core/script/main.c:55 grub-core/script/main.c:57 -#: grub-core/script/main.c:59 grub-core/script/main.c:67 -msgid "[NUM]" -msgstr "[NUM]" - -#: grub-core/script/main.c:55 -msgid "Exit from loops" -msgstr "Afslut løkker" - -#: grub-core/script/main.c:57 -msgid "Continue loops" -msgstr "Fortsæt løkker" - -#. TRANSLATORS: Positional arguments are -#. arguments $0, $1, $2, ... -#: grub-core/script/main.c:62 -msgid "Shift positional parameters." -msgstr "Skift positionsparametre." - -#: grub-core/script/main.c:64 -msgid "[VALUE]..." -msgstr "[VÆRDI]..." - -#: grub-core/script/main.c:65 -msgid "Set positional parameters." -msgstr "Angiv positionsparametre." - -#. TRANSLATORS: It's a command description -#. and "Return" is a verb, not a noun. The -#. command in question is "return" and -#. has exactly the same semanics as bash -#. equivalent. -#: grub-core/script/main.c:73 -msgid "Return from a function." -msgstr "Returnér fra en funktion." - -#: grub-core/term/gfxterm_background.c:176 -msgid "[-m (stretch|normal)] FILE" -msgstr "[-m (stretch|normal)] FIL" - -#: grub-core/term/gfxterm_background.c:177 -msgid "Load background image for active terminal." -msgstr "Indlæs baggrundsbillede til aktiv terminal." - -#: grub-core/term/gfxterm_background.c:182 util/grub-install.c:302 -#: util/grub-install.c:303 util/grub-mkrescue.c:107 util/grub-mkrescue.c:108 -#: util/grub-render-label.c:61 util/grub-render-label.c:63 -msgid "COLOR" -msgstr "FARVE" - -#: grub-core/term/gfxterm_background.c:183 -msgid "Set background color for active terminal." -msgstr "Angiv baggrundsfarve for aktiv terminal." - -#: grub-core/term/i386/coreboot/cbmemc.c:139 -msgid "Show CBMEM console content." -msgstr "Vis CBMEM-konsolindhold." - -#: grub-core/term/serial.c:57 -msgid "Set the serial unit." -msgstr "Angiv den serielle enhed." - -#: grub-core/term/serial.c:58 -msgid "Set the serial port address." -msgstr "Angiv adressen for den serielle port." - -#: grub-core/term/serial.c:59 -msgid "Set the serial port speed." -msgstr "Angiv hastigheden for den serielle port." - -#: grub-core/term/serial.c:60 -msgid "Set the serial port word length." -msgstr "Angiv word-længden for den serielle port." - -#: grub-core/term/serial.c:61 -msgid "Set the serial port parity." -msgstr "Angiv pariteten for den serielle port." - -#: grub-core/term/serial.c:62 -msgid "Set the serial port stop bits." -msgstr "Angiv stop-bit for den serielle port." - -#: grub-core/term/serial.c:63 -msgid "Set the base frequency." -msgstr "Sæt basisfrekvensen." - -#: grub-core/term/serial.c:64 -msgid "Enable/disable RTS/CTS." -msgstr "Slå RTS/CTS til/fra." - -#: grub-core/term/serial.c:218 -#, c-format -msgid "serial port `%s' isn't found" -msgstr "serielport \"%s\" ikke fundet" - -#: grub-core/term/serial.c:254 -msgid "unsupported serial port flow control" -msgstr "uunderstøttet flowkontrol for serielport" - -#: grub-core/term/serial.c:429 -msgid "[OPTIONS...]" -msgstr "[TILVALG...]" - -#: grub-core/term/serial.c:430 -msgid "Configure serial port." -msgstr "Indstil serielport." - -#: grub-core/term/terminfo.c:184 -#, c-format -msgid "unknown terminfo type `%s'" -msgstr "ukendt terminfo-type \"%s\"" - -#: grub-core/term/terminfo.c:668 -msgid "ASCII" -msgstr "ASCII" - -#: grub-core/term/terminfo.c:671 -msgid "UTF-8" -msgstr "UTF-8" - -#. TRANSLATORS: visually ordered UTF-8 is a non-compliant encoding -#. based on UTF-8 with right-to-left languages written in reverse. -#. Used on some terminals. Normal UTF-8 is refered as -#. "logically-ordered UTF-8" by opposition. -#: grub-core/term/terminfo.c:677 -msgid "visually-ordered UTF-8" -msgstr "visuelt ordnet UTF-8" - -#: grub-core/term/terminfo.c:680 -msgid "Unknown encoding" -msgstr "Ukendt kodning" - -#: grub-core/term/terminfo.c:684 -msgid "Current terminfo types:" -msgstr "Nuværende terminfo-typer:" - -#: grub-core/term/terminfo.c:699 -msgid "Terminal is ASCII-only [default]." -msgstr "Terminal bruger kun ASCII [standard]." - -#: grub-core/term/terminfo.c:700 -msgid "Terminal is logical-ordered UTF-8." -msgstr "Terminal bruger logisk ordnet UTF-8." - -#: grub-core/term/terminfo.c:701 -msgid "Terminal is visually-ordered UTF-8." -msgstr "Terminal bruger visuelt ordnet UTF-8." - -#: grub-core/term/terminfo.c:703 -msgid "Terminal has specified geometry." -msgstr "Terminal har angivet geometri." - -#. TRANSLATORS: "x" has to be entered in, like an identifier, so please don't -#. use better Unicode codepoints. -#: grub-core/term/terminfo.c:706 -msgid "WIDTHxHEIGHT." -msgstr "BREDDExHØJDE." - -#: grub-core/term/terminfo.c:746 -msgid "incorrect terminal dimensions specification" -msgstr "ugyldig angivelse af terminalstørrelse" - -#: grub-core/term/terminfo.c:776 -#, c-format -msgid "terminal %s isn't found or it's not handled by terminfo" -msgstr "terminalen %s kan ikke findes, eller håndteres ikke af terminfo" - -# WxH = bredde x højde -#: grub-core/term/terminfo.c:785 -msgid "[[-a|-u|-v] [-g WxH] TERM [TYPE]]" -msgstr "[[-a|-u|-v] [-g BxH] TERM [TYPE]]" - -#: grub-core/term/terminfo.c:786 -msgid "Set terminfo type of TERM to TYPE.\n" -msgstr "Sæt terminfo-type for TERM til TYPE.\n" - -#. TRANSLATORS: this is the BLOCK-argument, not -#. environment block. -#: grub-core/tests/test_blockarg.c:49 -msgid "Print and execute block argument." -msgstr "Udskriv og kør blokargument." - -#. TRANSLATORS: We're speaking about bitmap images like -#. JPEG or PNG. -#: grub-core/video/bitmap.c:209 -#, c-format -msgid "bitmap file `%s' is of unsupported format" -msgstr "bitmap-filen \"%s\" er ikke i et understøttet format" - -#: grub-core/video/i386/pc/vbe.c:1191 -#, c-format -msgid " VBE info: version: %d.%d OEM software rev: %d.%d\n" -msgstr " VBE-info: version: %d.%d, OEM-softwarerevision: %d.%d\n" - -#: grub-core/video/i386/pc/vbe.c:1198 -#, c-format -msgid " total memory: %d KiB\n" -msgstr " samlet hukommelse: %d KiB\n" - -#: grub-core/video/video.c:596 grub-core/video/video.c:762 -msgid "no suitable video mode found" -msgstr "ingen passende videotilstand fundet" - -#: include/grub/crypto.h:403 -msgid "access denied" -msgstr "adgang nægtet" - -#: include/grub/util/install.h:30 include/grub/util/install.h:35 -msgid "MODULES" -msgstr "MODULER" - -#: include/grub/util/install.h:31 -msgid "pre-load specified modules MODULES" -msgstr "forudindlæs angivne moduler MODULER" - -#: include/grub/util/install.h:33 -msgid "embed a specific DTB" -msgstr "" - -#: include/grub/util/install.h:36 -msgid "install only MODULES and their dependencies [default=all]" -msgstr "installér kun MODULER og deres afhængigheder [standard=alle]" - -#: include/grub/util/install.h:37 -msgid "THEMES" -msgstr "TEMAER" - -#: include/grub/util/install.h:38 -#, c-format -msgid "install THEMES [default=%s]" -msgstr "installér TEMAER [standard=%s]" - -#: include/grub/util/install.h:39 -msgid "FONTS" -msgstr "SKRIFTTYPER" - -#: include/grub/util/install.h:40 -#, c-format -msgid "install FONTS [default=%s]" -msgstr "installér SKRIFTTYPER [standard=%s]" - -#: include/grub/util/install.h:41 -msgid "LOCALES" -msgstr "REGIONER" - -#: include/grub/util/install.h:42 -msgid "install only LOCALES [default=all]" -msgstr "installér kun REGIONER [standard=alle]" - -#: include/grub/util/install.h:45 -msgid "compress GRUB files [optional]" -msgstr "komprimér GRUB-filer [valgfri]" - -#: include/grub/util/install.h:48 util/grub-mkimage.c:83 -msgid "choose the compression to use for core image" -msgstr "vælg komprimeringen, der skal bruges til kerneaftryk" - -#. TRANSLATORS: platform here isn't identifier. It can be translated. -#: include/grub/util/install.h:51 include/grub/util/install.h:54 -#: util/grub-mkimage.c:66 -#, c-format -msgid "use images and modules under DIR [default=%s/]" -msgstr "brug billeder og moduler under KAT [standard=%s/]" - -#: include/grub/util/install.h:57 -#, c-format -msgid "use translations under DIR [default=%s]" -msgstr "brug oversættelser under KAT [standard=%s]" - -#: include/grub/util/install.h:60 -#, c-format -msgid "use themes under DIR [default=%s]" -msgstr "brug tema under KAT [standard=%s]" - -#: include/grub/util/install.h:65 util/grub-mkimage.c:78 -msgid "embed FILE as public key for signature checking" -msgstr "indlejr FIL som offentlig nøgle for signaturkontrol" - -#: util/editenv.c:59 util/grub-editenv.c:201 util/grub-install-common.c:535 -#: util/grub-mkimage.c:315 util/setup.c:791 -#, fuzzy, c-format -msgid "cannot sync `%s': %s" -msgstr "kan ikke søge i \"%s\": %s" - -#: util/editenv.c:64 -#, c-format -msgid "cannot rename the file %s to %s" -msgstr "kan ikke omdøbe filen %s til %s" - -#: util/getroot.c:402 -#, c-format -msgid "disk does not exist, so falling back to partition device %s" -msgstr "disken findes ikke, så bruger i stedet partitionsenheden %s" - -#: util/grub-editenv.c:45 util/grub-fstest.c:506 -msgid "Commands:" -msgstr "Kommandoer:" - -#: util/grub-editenv.c:47 -msgid "Create a blank environment block file." -msgstr "Opret en tom miljøblokfil." - -#: util/grub-editenv.c:49 -msgid "List the current variables." -msgstr "Vis de nuværende variable." - -#. TRANSLATORS: "set" is a keyword. It's a summary of "set" subcommand. -#: util/grub-editenv.c:51 -msgid "set [NAME=VALUE ...]" -msgstr "set [NAVN=VÆRDI ...]" - -#: util/grub-editenv.c:52 -msgid "Set variables." -msgstr "Angiv variable." - -#. TRANSLATORS: "unset" is a keyword. It's a summary of "unset" subcommand. -#: util/grub-editenv.c:54 -msgid "unset [NAME ...]" -msgstr "unset [NAVN ...]" - -#: util/grub-editenv.c:55 -msgid "Delete variables." -msgstr "Slet variable." - -#: util/grub-editenv.c:57 -msgid "Options:" -msgstr "Tilvalg:" - -#: util/grub-editenv.c:84 -msgid "You need to specify at least one command.\n" -msgstr "Du skal angive mindst én kommando.\n" - -#: util/grub-editenv.c:113 -msgid "FILENAME COMMAND" -msgstr "FILNAVN KOMMANDO" - -#: util/grub-editenv.c:114 -msgid "Tool to edit environment block." -msgstr "Værktøj til at redigere miljøblokken." - -#: util/grub-editenv.c:116 -#, c-format -msgid "" -"If FILENAME is `-', the default value %s is used.\n" -"\n" -"There is no `delete' command; if you want to delete the whole environment\n" -"block, use `rm %s'." -msgstr "" -"Hvis FILNAVN er \"-\", bruges standardværdien %s.\n" -"\n" -"Der er ingen \"slet\"-kommando; hvis du vil slette hele miljøet, så\n" -"brug \"rm %s\"." - -#: util/grub-editenv.c:162 -msgid "invalid environment block" -msgstr "ugyldig miljøblok" - -#: util/grub-editenv.c:217 -#, c-format -msgid "invalid parameter %s" -msgstr "ugyldig parameter %s" - -#: util/grub-editenv.c:222 -msgid "environment block too small" -msgstr "miljøblok er for lille" - -#: util/grub-fstest.c:107 -#, c-format -msgid "disk read fails at offset %lld, length %lld" -msgstr "disklæsning mislykkedes ved afsæt %lld, længde %lld" - -#: util/grub-fstest.c:138 -#, c-format -msgid "invalid skip value %lld" -msgstr "ugyldig overspringsværdi %lld" - -#: util/grub-fstest.c:160 util/grub-fstest.c:246 -#, c-format -msgid "read error at offset %llu: %s" -msgstr "læsefejl ved afsæt %llu: %s" - -#: util/grub-fstest.c:210 -#, c-format -msgid "cannot open OS file `%s': %s" -msgstr "kan ikke åbne OS-filen \"%s\": %s" - -#: util/grub-fstest.c:225 util/misc.c:126 -#, c-format -msgid "cannot write to the stdout: %s" -msgstr "kan ikke skrive til stdout: %s" - -#: util/grub-fstest.c:259 -#, c-format -msgid "compare fail at offset %llu" -msgstr "fejl i sammenligning ved afsæt %llu" - -#: util/grub-fstest.c:280 util/grub-fstest.c:314 -#, c-format -msgid "OS file %s open error: %s" -msgstr "OS-fejl ved åbning af fil %s: %s" - -#: util/grub-fstest.c:402 util/grub-mount.c:392 -#, c-format -msgid "`loopback' command fails: %s" -msgstr "\"loopback\"-kommando slår fejl: %s" - -#: util/grub-fstest.c:413 util/grub-mount.c:402 -#, c-format -msgid "`cryptomount' command fails: %s" -msgstr "\"cryptomount\"-kommando slår fejl: %s" - -#: util/grub-fstest.c:474 util/grub-fstest.c:478 -msgid "couldn't retrieve UUID" -msgstr "kunne ikke hente UUID" - -#: util/grub-fstest.c:507 -msgid "ls PATH" -msgstr "ls STI" - -#: util/grub-fstest.c:507 -msgid "List files in PATH." -msgstr "Vis filer i STI." - -#: util/grub-fstest.c:508 -msgid "cp FILE LOCAL" -msgstr "cp FIL LOKAL" - -#: util/grub-fstest.c:508 -msgid "Copy FILE to local file LOCAL." -msgstr "Kopiér FIL til lokal fil LOKAL." - -#: util/grub-fstest.c:509 -msgid "cat FILE" -msgstr "cat FIL" - -#: util/grub-fstest.c:509 -msgid "Copy FILE to standard output." -msgstr "Kopiér FIL til standard-ud." - -#: util/grub-fstest.c:510 -msgid "cmp FILE LOCAL" -msgstr "cmp FIL LOKAL" - -#: util/grub-fstest.c:510 -msgid "Compare FILE with local file LOCAL." -msgstr "Samenlign FIL med lokal fil LOKAL." - -#: util/grub-fstest.c:511 -msgid "hex FILE" -msgstr "hex FIL" - -#: util/grub-fstest.c:511 -msgid "Show contents of FILE in hex." -msgstr "Vis indholdet af FIL i heks." - -#: util/grub-fstest.c:512 -msgid "crc FILE" -msgstr "crc FIL" - -#: util/grub-fstest.c:512 -msgid "Get crc32 checksum of FILE." -msgstr "Beregn crc32-tjeksummen for FIL." - -#: util/grub-fstest.c:513 -msgid "blocklist FILE" -msgstr "blocklist FIL" - -#: util/grub-fstest.c:513 -msgid "Display blocklist of FILE." -msgstr "Vis blokliste for FIL." - -#: util/grub-fstest.c:514 -msgid "xnu_uuid DEVICE" -msgstr "xnu_uuid ENHED" - -#: util/grub-fstest.c:514 -msgid "Compute XNU UUID of the device." -msgstr "Beregn XNU UUID for enheden." - -#. TRANSLATORS: bitmaps are images like e.g. in JPEG. -#: util/grub-fstest.c:517 util/grub-fstest.c:518 util/grub-fstest.c:519 -#: util/grub-mkfont.c:938 util/grub-mkfont.c:951 util/grub-mkfont.c:952 -#: util/grub-mkpasswd-pbkdf2.c:46 util/grub-mkpasswd-pbkdf2.c:47 -#: util/grub-mkpasswd-pbkdf2.c:48 -msgid "NUM" -msgstr "NUM" - -#: util/grub-fstest.c:517 -msgid "Skip N bytes from output file." -msgstr "Spring N byte over fra udskriftsfil." - -#: util/grub-fstest.c:518 -msgid "Handle N bytes in output file." -msgstr "Håndtér N byte i udskriftsfil." - -#: util/grub-fstest.c:519 -msgid "Specify the number of input files." -msgstr "Angiv antallet af inddatafiler." - -#: util/grub-fstest.c:520 util/grub-mount.c:453 -msgid "Set debug environment variable." -msgstr "Angiv miljøvariabel til fejlsøgning." - -#: util/grub-fstest.c:521 util/grub-mount.c:454 -msgid "Mount crypto devices." -msgstr "Montér kryptoenheder." - -#. TRANSLATORS: "prompt" is a keyword. -#: util/grub-fstest.c:524 util/grub-mount.c:457 -msgid "FILE|prompt" -msgstr "FIL|prompt" - -#: util/grub-fstest.c:524 util/grub-mount.c:457 -msgid "Load zfs crypto key." -msgstr "Indlæs zfs-kryptonøgle." - -#: util/grub-fstest.c:526 -msgid "Uncompress data." -msgstr "Udpak komprimerede data." - -#: util/grub-fstest.c:605 -msgid "Invalid disk count.\n" -msgstr "Ugyldigt diskantal.\n" - -#. TRANSLATORS: disk count is optional but if it's there it must -#. be before disk list. So please don't imply disk count as mandatory. -#. -#: util/grub-fstest.c:613 -msgid "Disk count must precede disks list.\n" -msgstr "Diskantal skal stå foran diskliste.\n" - -#: util/grub-fstest.c:633 -msgid "No command is specified.\n" -msgstr "Ingen kommando angivet.\n" - -#: util/grub-fstest.c:638 -msgid "Not enough parameters to command.\n" -msgstr "Ikke nok parametre til kommando.\n" - -#: util/grub-fstest.c:711 -#, c-format -msgid "Invalid command %s.\n" -msgstr "Ugyldig kommando %s.\n" - -#: util/grub-fstest.c:724 -msgid "IMAGE_PATH COMMANDS" -msgstr "AFTRYKSSTI KOMMANDOER" - -#: util/grub-fstest.c:725 util/grub-mount.c:553 -msgid "Debug tool for filesystem driver." -msgstr "Fejlsøgningsværktøj til filsystemdriver." - -#: util/grub-glue-efi.c:53 -msgid "set input filename for 32-bit part." -msgstr "angiv inddatafilnavnet for 32-bit-delen." - -#: util/grub-glue-efi.c:55 -msgid "set input filename for 64-bit part." -msgstr "angiv inddatafilnavnet for 64-bit-delen." - -#: util/grub-glue-efi.c:57 util/grub-mklayout.c:55 util/grub-render-label.c:71 -msgid "set output filename. Default is STDOUT" -msgstr "angiv uddatafilnavnet. Standard er STDOUT" - -#: util/grub-glue-efi.c:94 util/grub-mklayout.c:476 -#: util/grub-mkpasswd-pbkdf2.c:86 util/grub-render-label.c:131 -msgid "[OPTIONS]" -msgstr "[TILVALG]" - -#: util/grub-glue-efi.c:95 -msgid "Glue 32-bit and 64-bit binary into Apple universal one." -msgstr "Lim 32-bit- og 64-bit-binærfil sammen til en universal Apple-binærfil." - -#: util/grub-glue-efi.c:116 -msgid "Missing input file\n" -msgstr "Mangler inputfil\n" - -#: util/grub-install-common.c:127 util/grub-install-common.c:151 -#, c-format -msgid "cannot copy `%s' to `%s': %s" -msgstr "kan ikke kopiere \"%s\" til \"%s\": %s" - -#: util/grub-install-common.c:147 -#, c-format -msgid "can't compress `%s' to `%s'" -msgstr "kan ikke komprimere \"%s\" til \"%s\"" - -#: util/grub-install-common.c:196 util/grub-install-common.c:552 -#: util/grub-install-common.c:579 util/grub-install-common.c:621 -#, c-format -msgid "cannot open directory `%s': %s" -msgstr "kan ikke åbne kataloget \"%s\": %s" - -#: util/grub-install-common.c:212 -#, c-format -msgid "cannot delete `%s': %s" -msgstr "kan ikke slette \"%s\": %s" - -#: util/grub-install-common.c:324 util/grub-mkimage.c:209 -msgid "grub-mkimage is compiled without XZ support" -msgstr "grub-mkimage er kompileret uden understøttelse af XZ" - -#: util/grub-install-common.c:332 util/grub-mkimage.c:217 -#, c-format -msgid "Unknown compression format %s" -msgstr "Ukendt komprimeringsformat %s" - -#: util/grub-install-common.c:400 -#, c-format -msgid "Unrecognized compression `%s'" -msgstr "Ukendt komprimering \"%s\"" - -#: util/grub-install-common.c:509 -#, c-format -msgid "unknown target format %s" -msgstr "ukendt målformat %s" - -#: util/grub-install-common.c:700 -#, c-format -msgid "cannot find locale `%s'" -msgstr "kan ikke finde regionaldata \"%s\"" - -#: util/grub-install-common.c:939 -#, c-format -msgid "%s doesn't exist. Please specify --target or --directory" -msgstr "%s findes ikke. Angiv venligst --target eller --directory" - -#: util/grub-install-common.c:948 util/grub-install-common.c:951 -#, c-format -msgid "invalid modinfo file `%s'" -msgstr "ugyldig modinfo-fil \"%s\"" - -#: util/grub-install-common.c:966 -#, c-format -msgid "Unknown platform `%s-%s'" -msgstr "Ukendt platform \"%s-%s\"" - -#: util/grub-install.c:238 -msgid "More than one install device?" -msgstr "Mere end én installationsenhed?" - -#: util/grub-install.c:251 -#, c-format -msgid "" -"install GRUB images under the directory DIR/%s instead of the %s directory" -msgstr "installér GRUB-aftryk under kataloget KAT/%s frem for kataloget %s" - -#: util/grub-install.c:256 util/grub-probe.c:734 -msgid "TARGET" -msgstr "MÅL" - -#. TRANSLATORS: "TARGET" as in "target platform". -#: util/grub-install.c:258 -#, c-format -msgid "install GRUB for TARGET platform [default=%s]; available targets: %s" -msgstr "installér GRUB til MÅL-platform [standard=%s]; mulige mål: %s" - -#. TRANSLATORS: "may break" doesn't just mean that option wouldn't have any -#. effect but that it will make the resulting install unbootable from HDD. -#. TRANSLATORS: The potential breakage isn't limited to floppies but it's -#. likely to make the install unbootable from HDD. -#: util/grub-install.c:267 util/grub-setup.c:94 -msgid "" -"make the drive also bootable as floppy (default for fdX devices). May break " -"on some BIOSes." -msgstr "" -"gør at drevet kan bootes som diskettedrev (standard for fdX-enheder). Kan " -"ødelægge opstarten med visse BIOS'er." - -#: util/grub-install.c:270 -msgid "delete device map if it already exists" -msgstr "slet enhedsafbildning hvis den allerede findes" - -#: util/grub-install.c:272 util/grub-setup.c:87 -msgid "install even if problems are detected" -msgstr "installér selvom der opdages problemer" - -#: util/grub-install.c:274 -msgid "use identifier file even if UUID is available" -msgstr "brug identifikatorfil selv hvis UUID er tilgængelig" - -#: util/grub-install.c:276 -msgid "" -"disk module to use (biosdisk or native). This option is only available on " -"BIOS target." -msgstr "" -"diskmodul der skal bruges (biosdisk eller platformsspecifik). Dette tilvalg " -"er kun tilgængeligt på BIOS-mål." - -#: util/grub-install.c:279 -msgid "" -"don't update the `boot-device'/`Boot*' NVRAM variables. This option is only " -"available on EFI and IEEE1275 targets." -msgstr "" -"opdatér ikke NVRAM-variablerne \"boot-device\"/\"Boot*\". Dette tilvalg er " -"kun tilgængeligt på EFI- og IEEE1275-mål." - -#: util/grub-install.c:282 util/grub-setup.c:89 -msgid "do not probe for filesystems in DEVICE" -msgstr "søg ikke efter filsystemer i ENHED" - -#: util/grub-install.c:284 -msgid "do not install bootsector" -msgstr "installér ikke bootsektor" - -#: util/grub-install.c:286 util/grub-setup.c:96 -msgid "" -"Do not apply any reed-solomon codes when embedding core.img. This option is " -"only available on x86 BIOS targets." -msgstr "" -"Anvend ikke nogen reed-solomon-koder ved indlejring af core.img. Dette " -"tilvalg er kun tilgængeligt på x86-BIOS-mål." - -#: util/grub-install.c:293 -msgid "" -"the installation device is removable. This option is only available on EFI." -msgstr "" -"installationsenheden er flytbar. Dette tilvalg er kun tilgængeligt på EFI." - -#: util/grub-install.c:295 -msgid "ID" -msgstr "Id" - -#: util/grub-install.c:296 -msgid "the ID of bootloader. This option is only available on EFI and Macs." -msgstr "" -"id for opstartsindlæseren. Dette tilvalg er kun tilgængeligt på EFI og Mac." - -#: util/grub-install.c:298 -msgid "use DIR as the EFI System Partition root." -msgstr "brug KAT som rod på EFI-systempartitionen." - -#: util/grub-install.c:300 -msgid "use DIR for PPC MAC install." -msgstr "brug KAT til PPC MAC-installation." - -#: util/grub-install.c:301 util/grub-mkrescue.c:106 -msgid "use FILE as font for label" -msgstr "brug FIL som skrifttype for etiket" - -#: util/grub-install.c:302 util/grub-mkrescue.c:107 -msgid "use COLOR for label" -msgstr "brug FARVE til etiket" - -#: util/grub-install.c:303 util/grub-mkrescue.c:108 -msgid "use COLOR for label background" -msgstr "brug FARVE til etiketbaggrund" - -#: util/grub-install.c:304 util/grub-mkrescue.c:110 -msgid "use STRING as product version" -msgstr "brug STRENG som produktversion" - -#: util/grub-install.c:361 -msgid "[OPTION] [INSTALL_DEVICE]" -msgstr "[TILVALG] [INSTALLATIONSENHED]" - -#: util/grub-install.c:362 -msgid "Install GRUB on your drive." -msgstr "Installér GRUB på dit drev." - -#: util/grub-install.c:363 -#, c-format -msgid "" -"INSTALL_DEVICE must be system device filename.\n" -"%s copies GRUB images into %s. On some platforms, it may also install GRUB " -"into the boot sector." -msgstr "" -"INSTALLATIONSENHED skal være filnavnet på en systemenhed.\n" -"%s kopierer GRUB-aftryk ind i %s. På visse platforme installeres GRUB også " -"i bootsektoren." - -#: util/grub-install.c:672 -#, c-format -msgid "the drive %s is defined multiple times in the device map %s" -msgstr "drevet %s er defineret flere gange i enhedsafbildningen %s" - -#: util/grub-install.c:878 -msgid "Unable to determine your platform. Use --target." -msgstr "Kan ikke bestemme din platform. Brug --target." - -#: util/grub-install.c:891 -#, c-format -msgid "Installing for %s platform.\n" -msgstr "Installerer til %s-platformen.\n" - -#: util/grub-install.c:939 -msgid "install device isn't specified" -msgstr "installationsenhed er ikke angivet" - -#: util/grub-install.c:1057 -msgid "cannot find EFI directory" -msgstr "kan ikke finde EFI-katalog" - -#: util/grub-install.c:1060 util/grub-install.c:1209 util/grub-install.c:1254 -#: util/grub-macbless.c:76 util/grub-probe.c:329 util/setup.c:316 -#, c-format -msgid "cannot find a device for %s (is /dev mounted?)" -msgstr "kan ikke finde en enhed for %s (er /dev monteret?)" - -#: util/grub-install.c:1069 util/grub-install.c:1217 util/grub-install.c:1270 -#: util/grub-install.c:1365 util/grub-macbless.c:80 util/grub-probe.c:372 -#, c-format -msgid "cannot find a GRUB drive for %s. Check your device.map" -msgstr "kan ikke finde et GRUB-drev til %s. Kontrollér din device.map" - -#: util/grub-install.c:1087 -#, c-format -msgid "%s doesn't look like an EFI partition" -msgstr "%s ligner ikke en EFI-partition" - -#: util/grub-install.c:1129 util/grub-install.c:1614 -msgid "You've found a bug" -msgstr "Du har fundet en programfejl" - -#: util/grub-install.c:1231 -#, c-format -msgid "filesystem on %s is neither HFS nor HFS+" -msgstr "filsystemet på %s er hverken HFS eller HFS+" - -#: util/grub-install.c:1299 -#, c-format -msgid "" -"attempt to install to encrypted disk without cryptodisk enabled. Set `%s' in " -"file `%s'" -msgstr "" -"forsøg at installere på krypteret disk uden at cryptodisk er slået til. " -"Angiv \"%s\" i filen \"%s\"" - -#: util/grub-install.c:1410 util/grub-install.c:1772 util/grub-install.c:1872 -#, c-format -msgid "Can't create file: %s" -msgstr "Kan ikke oprette fil: %s" - -#: util/grub-install.c:1491 -msgid "no hints available for your platform. Expect reduced performance" -msgstr "ingen tilgængelige fif til din platform. Forvent nedsat ydelse" - -#. TRANSLATORS: This is a prefix in the log to indicate that usually -#. a command would be executed but due to an option was skipped. -#: util/grub-install.c:1702 -msgid "NOT RUNNING: " -msgstr "KØRER IKKE: " - -#: util/grub-install.c:1806 -msgid "the chosen partition is not a PReP partition" -msgstr "den valgte partition er ikke en PReP-partition" - -#: util/grub-install.c:1811 -msgid "failed to copy Grub to the PReP partition" -msgstr "kunne ikke kopiere Grub til PReP-partition" - -#: util/grub-install.c:1816 -#, c-format -msgid "" -"the PReP partition is not empty. If you are sure you want to use it, run dd " -"to clear it: `%s'" -msgstr "" -"PReP-partitionen er ikke tom. Hvis du er sikker på at du vil bruge den, så " -"kør dd for at rydde den: \"%s\"" - -#: util/grub-install.c:1888 util/grub-install.c:1932 -#, c-format -msgid "efibootmgr failed to register the boot entry: %s" -msgstr "" - -#: util/grub-install.c:1916 -msgid "EFI bootloader id isn't specified." -msgstr "Id for EFI-opstartsindlæser er ikke angivet." - -#: util/grub-install.c:1950 -msgid "WARNING: no platform-specific install was performed" -msgstr "ADVARSEL: ingen platformsspecifik installation blev gennemført" - -#: util/grub-install.c:1957 -msgid "Installation finished. No error reported." -msgstr "Installation fuldført. Ingen fejl rapporteret." - -#: util/grub-macbless.c:101 -msgid "bless for x86-based macs" -msgstr "bless til x86-baserede mac-computere" - -#: util/grub-macbless.c:103 -msgid "bless for ppc-based macs" -msgstr "bless til ppc-baserede mac-computere" - -#: util/grub-macbless.c:136 util/grub-probe.c:823 -msgid "No path or device is specified.\n" -msgstr "Ingen sti eller enhed angivet.\n" - -#: util/grub-macbless.c:157 -msgid "--ppc PATH|--x86 FILE" -msgstr "--ppc STI|--x86 FIL" - -#: util/grub-macbless.c:158 -msgid "Mac-style bless on HFS or HFS+" -msgstr "Mac-bless på HFS eller HFS+" - -#: util/grub-menulst2cfg.c:44 -#, c-format -msgid "Usage: %s [INFILE [OUTFILE]]\n" -msgstr "Brug: %s [INDFIL [UDFIL]]\n" - -#: util/grub-mkfont.c:157 -#, c-format -msgid "Freetype Error %d loading glyph 0x%x for U+0x%x%s" -msgstr "Freetype-fejl %d ved indlæsning af glyf 0x%x for U+0x%x%s" - -# "eksisterer" vist som fremmedord på dansk men egt. ikke i RO -#. TRANSLATORS: These qualifiers are used for cursive typography, -#. mainly Arabic. Note that the terms refer to the visual position -#. and not logical order and if used in left-to-right script then -#. leftmost is initial but with right-to-left script like Arabic -#. rightmost is the initial. -#: util/grub-mkfont.c:165 -msgid " (medial)" -msgstr " (medial)" - -#: util/grub-mkfont.c:166 -msgid " (leftmost)" -msgstr " (længst til venstre)" - -#: util/grub-mkfont.c:167 -msgid " (rightmost)" -msgstr " (længst til højre)" - -#: util/grub-mkfont.c:481 -#, c-format -msgid "Out of range substitution (%d, %d)\n" -msgstr "Erstatning uden for interval (%d, %d)\n" - -#. TRANSLATORS: "lookup" is taken directly from font specifications -#. which are formulated as "Under condition X replace LOOKUP with -#. SUBSTITUITION". " -#: util/grub-mkfont.c:506 -#, c-format -msgid "Out of range lookup: %d\n" -msgstr "Opslag uden for interval: %d\n" - -#: util/grub-mkfont.c:514 -#, c-format -msgid "Unsupported substitution type: %d\n" -msgstr "Erstatningstype understøttes ikke: %d\n" - -#: util/grub-mkfont.c:550 -#, c-format -msgid "Unsupported substitution specification: %d\n" -msgstr "Erstatningsspecifikation understøttes ikke: %d\n" - -#: util/grub-mkfont.c:582 -#, c-format -msgid "Unsupported coverage specification: %d\n" -msgstr "Dækningsspecifikation understøttes ikke: %d\n" - -#: util/grub-mkfont.c:622 -#, c-format -msgid "WARNING: unsupported font feature parameters: %x\n" -msgstr "ADVARSEL: uunderstøttede parametre til skrifttypefunktioner: %x\n" - -#: util/grub-mkfont.c:936 util/grub-mkrescue.c:98 util/grub-mkstandalone.c:48 -msgid "save output in FILE [required]" -msgstr "gem uddata i FIL [påkrævet]" - -#. TRANSLATORS: some font files may have multiple faces (fonts). -#. This option is used to chose among them, the first face being '0'. -#. Rarely used. -#: util/grub-mkfont.c:942 -msgid "select face index" -msgstr "vælg skrifttypeindeks" - -#: util/grub-mkfont.c:943 -msgid "FROM-TO[,FROM-TO]" -msgstr "FRA-TIL[,FRA-TIL]" - -#. TRANSLATORS: It refers to the range of characters in font. -#: util/grub-mkfont.c:945 -msgid "set font range" -msgstr "angiv skrifttypeinterval" - -#. TRANSLATORS: "family name" for font is just a generic name without suffix -#. like "Bold". -#: util/grub-mkfont.c:949 -msgid "set font family name" -msgstr "angiv skriftfamilienavn" - -#: util/grub-mkfont.c:950 -msgid "SIZE" -msgstr "STØRRELSE" - -#: util/grub-mkfont.c:950 -msgid "set font size" -msgstr "angiv skriftstørrelse" - -#: util/grub-mkfont.c:951 -msgid "set font descent" -msgstr "angiv underlængde for skrifttype" - -#: util/grub-mkfont.c:952 -msgid "set font ascent" -msgstr "angiv overlængde for skrifttype" - -#: util/grub-mkfont.c:953 -msgid "convert to bold font" -msgstr "konvertér til fed skrift" - -#: util/grub-mkfont.c:954 -msgid "force autohint" -msgstr "tving autohint" - -#: util/grub-mkfont.c:955 -msgid "disable hinting" -msgstr "deaktivér hinting" - -#. TRANSLATORS: some fonts contain bitmap rendering for -#. some sizes. This option forces rerendering even if -#. pre-rendered bitmap is available. -#. -#: util/grub-mkfont.c:961 -msgid "ignore bitmap strikes when loading" -msgstr "ignorér bitmap-dele ved indlæsning" - -#. TRANSLATORS: It refers to the range of characters in font. -#: util/grub-mkfont.c:1059 util/grub-mkfont.c:1075 -msgid "invalid font range" -msgstr "ugyldigt skrifttypeinterval" - -#: util/grub-mkfont.c:1151 -msgid "[OPTIONS] FONT_FILES" -msgstr "[TILVALG] SKRIFTTYPEFILER" - -#: util/grub-mkfont.c:1152 -msgid "Convert common font file formats into PF2" -msgstr "Konvertér almindelige skrifttypefilformater til PF2" - -#: util/grub-mkfont.c:1182 util/grub-mkrescue.c:483 -#: util/grub-mkstandalone.c:306 -msgid "output file must be specified" -msgstr "udfil skal være angivet" - -#: util/grub-mkfont.c:1185 -msgid "FT_Init_FreeType fails" -msgstr "FT_Init_FreeType fejler" - -#: util/grub-mkfont.c:1199 -#, c-format -msgid "can't open file %s, index %d: error %d" -msgstr "kan ikke åbne filen %s, indeks %d: fejl %d" - -#: util/grub-mkfont.c:1229 -#, c-format -msgid "can't set %dx%d font size: Freetype error %d: %s" -msgstr "kan ikke sætte skriftstørrelse til %dx%d: Freetype-fejl %d: %s" - -#: util/grub-mkimage.c:67 -msgid "set prefix directory" -msgstr "angiv præfiks-katalog" - -#. TRANSLATORS: "memdisk" here isn't an identifier, it can be translated. -#. "embed" is a verb (command description). " -#: util/grub-mkimage.c:71 -msgid "" -"embed FILE as a memdisk image\n" -"Implies `-p (memdisk)/boot/grub' and overrides any prefix supplied " -"previously, but the prefix itself can be overridden by later options" -msgstr "" -"indlejr FIL som memdisk-aftryk\n" -"Medfører \"-p (memdisk)/boot/grub\" og tilsidesætter ethvert præfiks som " -"tidligere blev givet, men præfikset selv kan tilsidesættes af senere tilvalg" - -#: util/grub-mkimage.c:74 -#, fuzzy -msgid "embed FILE as a device tree (DTB)\n" -msgstr "indlejr FIL som en tidlig konfiguration" - -#: util/grub-mkimage.c:76 -msgid "embed FILE as an early config" -msgstr "indlejr FIL som en tidlig konfiguration" - -#. TRANSLATORS: NOTE is a name of segment. -#: util/grub-mkimage.c:80 -msgid "add NOTE segment for CHRP IEEE1275" -msgstr "tilføj NOTE-segment for CHRP IEEE1275" - -#: util/grub-mkimage.c:81 -msgid "output a generated image to FILE [default=stdout]" -msgstr "udskriv et genereret aftryk til FIL [standard=stdout]" - -#: util/grub-mkimage.c:82 -msgid "FORMAT" -msgstr "FORMAT" - -#: util/grub-mkimage.c:100 util/grub-mkstandalone.c:62 -msgid "generate an image in FORMAT" -msgstr "generér et aftryk i FORMAT" - -#: util/grub-mkimage.c:101 util/grub-mkstandalone.c:63 -msgid "available formats:" -msgstr "tilgængelige formater:" - -#: util/grub-mkimage.c:152 util/grub-mkstandalone.c:96 -#, c-format -msgid "unknown target format %s\n" -msgstr "ukendt målformat %s\n" - -#: util/grub-mkimage.c:242 -msgid "[OPTION]... [MODULES]" -msgstr "[TILVALG]... [MODULER]" - -#: util/grub-mkimage.c:243 -msgid "Make a bootable image of GRUB." -msgstr "Opret et opstartsaftryk af GRUB." - -#: util/grub-mkimage.c:273 util/grub-mkstandalone.c:309 -msgid "Target format not specified (use the -O option)." -msgstr "Målformatet er ikke angivet (brug tilvalget -O)." - -#: util/grub-mkimage.c:282 -msgid "Prefix not specified (use the -p option)." -msgstr "Præfiks ikke angivet (brug tilvalget -p)." - -#: util/grub-mkimage.c:318 util/setup.c:793 -#, fuzzy, c-format -msgid "cannot close `%s': %s" -msgstr "kan ikke åbne \"%s\": %s" - -#: util/grub-mkimagexx.c:2191 -#, c-format -msgid "" -"`%s' is miscompiled: its start address is 0x%llx instead of 0x%llx: ld.gold " -"bug?" -msgstr "" -"\"%s\" er forkert kompileret: startadresse er 0x%llx i stedet for 0x%llx: " -"fejl i ld.gold?" - -#: util/grub-mklayout.c:53 -msgid "set input filename. Default is STDIN" -msgstr "angiv inddatafilnavnet. Standard er STDIN" - -#. TRANSLATORS: scan identifier is keyboard key symbolic name. -#: util/grub-mklayout.c:307 -#, c-format -msgid "Unknown keyboard scan identifier %s\n" -msgstr "Ukendt tastatur-skan-identifikation %s\n" - -#. TRANSLATORS: scan code is keyboard key numeric identifier. -#: util/grub-mklayout.c:390 util/grub-mklayout.c:418 -#, c-format -msgid "Unknown keyboard scan code 0x%02x\n" -msgstr "Ukendt tastatur-skan-kode 0x%02x\n" - -#. TRANSLATORS: this error is triggered when input doesn't contain any -#. key descriptions. -#: util/grub-mklayout.c:438 -msgid "ERROR: no valid keyboard layout found. Check the input.\n" -msgstr "FEJL: intet gyldigt tastaturlayout fundet. Tjek inddata.\n" - -#. TRANSLATORS: "one" is a shortcut for "keyboard layout". -#: util/grub-mklayout.c:478 -msgid "Generate GRUB keyboard layout from Linux console one." -msgstr "Generér GRUB-tastaturlayout fra et Linux-konsol-tastaturlayout." - -#: util/grub-mknetdir.c:47 -msgid "root directory of TFTP server" -msgstr "rodkatalog for TFTP-server" - -#: util/grub-mknetdir.c:49 -msgid "relative subdirectory on network server" -msgstr "relativt underkatalog på netværksserver" - -#: util/grub-mknetdir.c:88 -msgid "" -"Prepares GRUB network boot images at net_directory/subdir assuming " -"net_directory being TFTP root." -msgstr "" -"Forbereder GRUB-netværksbootaftryk i netkatalog/underkatalog idet netkatalog " -"antages at være TFTP-rod." - -#: util/grub-mknetdir.c:146 -#, c-format -msgid "unsupported platform %s" -msgstr "platform %s ikke understøttet" - -#. TRANSLATORS: First %s is replaced by platform name. Second one by filename. -#: util/grub-mknetdir.c:165 -#, c-format -msgid "" -"Netboot directory for %s created. Configure your DHCP server to point to %s\n" -msgstr "" -"Netboot-katalog for %s oprettet. Konfigurér din DHCP-server, så den peger på " -"%s\n" - -#: util/grub-mkpasswd-pbkdf2.c:46 -msgid "Number of PBKDF2 iterations" -msgstr "Antal PBKDF2-iterationer" - -#: util/grub-mkpasswd-pbkdf2.c:47 -msgid "Length of generated hash" -msgstr "Længde af genereret hash" - -#: util/grub-mkpasswd-pbkdf2.c:48 -msgid "Length of salt" -msgstr "Længde af saltnummer" - -#: util/grub-mkpasswd-pbkdf2.c:87 -msgid "Generate PBKDF2 password hash." -msgstr "Generér PBKDF2-adgangskodehash." - -#: util/grub-mkpasswd-pbkdf2.c:144 util/grub-mkpasswd-pbkdf2.c:151 -msgid "failure to read password" -msgstr "fejl ved læsning af adgangskode" - -#: util/grub-mkpasswd-pbkdf2.c:146 -msgid "Reenter password: " -msgstr "Indtast adgangskode igen: " - -#: util/grub-mkpasswd-pbkdf2.c:160 -msgid "passwords don't match" -msgstr "adgangskoder er ikke ens" - -#: util/grub-mkpasswd-pbkdf2.c:169 -msgid "couldn't retrieve random data for salt" -msgstr "kunne ikke hente tilfældige data til saltnummer" - -#: util/grub-mkpasswd-pbkdf2.c:184 -#, c-format -msgid "cryptographic error number %d" -msgstr "kryptografisk fejl nummer %d" - -#: util/grub-mkpasswd-pbkdf2.c:203 -#, c-format -msgid "PBKDF2 hash of your password is %s\n" -msgstr "PBKDF2-hash af din adgangskode er %s\n" - -#: util/grub-mkrelpath.c:67 -msgid "No path is specified.\n" -msgstr "Ingen sti er angivet.\n" - -#: util/grub-mkrelpath.c:78 -msgid "PATH" -msgstr "STI" - -#: util/grub-mkrelpath.c:79 -msgid "Transform a system filename into GRUB one." -msgstr "Lav et systemfilnavn til et GRUB-filnavn." - -#: util/grub-mkrescue.c:100 -msgid "save ROM images in DIR [optional]" -msgstr "gem ROM-aftryk i KAT [valgfri]" - -#. TRANSLATORS: xorriso is a program for creating ISOs and burning CDs. -#: util/grub-mkrescue.c:103 -msgid "use FILE as xorriso [optional]" -msgstr "brug FIL som xorriso [valgfri]" - -#: util/grub-mkrescue.c:109 -msgid "use STRING as product name" -msgstr "brug STRENG som produktnavn" - -#: util/grub-mkrescue.c:111 -msgid "" -"enable sparc boot. Disables HFS+, APM, ARCS and boot as disk image for i386-" -"pc" -msgstr "" -"aktivér sparc-boot. Deaktiverer HFS+, APM og ARCS samt boot som diskaftryk " -"for i386-pc" - -#: util/grub-mkrescue.c:112 -msgid "" -"enable ARCS (big-endian mips machines, mostly SGI) boot. Disables HFS+, APM, " -"sparc64 and boot as disk image for i386-pc" -msgstr "" -"så ARCS-boot til (big-endian mips-maskiner, oftest SGI). Deaktiverer HFS+, " -"APM og sparc64 samt boot som diskaftryk for i386-pc" - -#. TRANSLATORS: it generates one single image which is bootable through any method. -#: util/grub-mkrescue.c:125 -msgid "Make GRUB CD-ROM, disk, pendrive and floppy bootable image." -msgstr "Opret GRUB-opstartsaftryk til cd-rom, disk, USB-nøgle eller diskette." - -#: util/grub-mkrescue.c:130 -#, c-format -msgid "" -"Generates a bootable CD/USB/floppy image. Arguments other than options to " -"this program are passed to xorriso, and indicate source files, source " -"directories, or any of the mkisofs options listed by the output of `%s'." -msgstr "" -"Genererer et cd-/USB-/disketteopstartsaftryk. Argumenter som ikke er " -"tilvalg til dette program videregives til xorriso, og angiver kildefiler, " -"kildekataloger eller tilvalg til mkisofs vist i udskriften fra \"%s\"." - -#: util/grub-mkrescue.c:134 -msgid "Option -- switches to native xorriso command mode." -msgstr "Tilvalget -- skifter til systemspecifik xorriso-kommandotilstand." - -#: util/grub-mkrescue.c:135 -msgid "Mail xorriso support requests to ." -msgstr "Send forespørgsler om xorriso til ." - -#: util/grub-mkrescue.c:221 util/grub-mkstandalone.c:114 -msgid "[OPTION] SOURCE..." -msgstr "[TILVALG] KILDE..." - -#: util/grub-mkrescue.c:257 util/grub-mkrescue.c:300 util/grub-mkrescue.c:588 -#, c-format -msgid "enabling %s support ..." -msgstr "aktiverer understøttelse af %s ..." - -#: util/grub-mkrescue.c:486 -#, fuzzy -msgid "xorriso not found" -msgstr "%s: ikke fundet" - -#: util/grub-mkrescue.c:623 -msgid "" -"Your xorriso doesn't support `--grub2-boot-info'. Some features are " -"disabled. Please use xorriso 1.2.9 or later." -msgstr "" -"Din xorriso understøtter ikke \"--grub2-boot-info\". Nogle funktioner er " -"deaktiveret. Brug venligst xorriso 1.2.9 eller nyere." - -#: util/grub-mkrescue.c:650 -msgid "" -"Your xorriso doesn't support `--grub2-boot-info'. Your core image is too " -"big. Boot as disk is disabled. Please use xorriso 1.2.9 or later." -msgstr "" -"Din xorriso understøtter ikke \"--grub2-boot-info\". Dit kerneaftryk er for " -"stort. Boot som disk er slået fra. Brug venligst xorriso 1.2.9 eller nyere." - -#: util/grub-mkstandalone.c:115 -msgid "" -"Generate a standalone image (containing all modules) in the selected format" -msgstr "" -"Opret et selvstændigt aftryk (som indeholder alle moduler) i det valgte " -"format" - -# ? -#: util/grub-mkstandalone.c:115 -msgid "Graft point syntax (E.g. /boot/grub/grub.cfg=./grub.cfg) is accepted" -msgstr "" -"\"Graft point\"-syntaks (f.eks. /boot/grub/grub.cfg=./grub.cfg) godtages" - -#: util/grub-mount.c:552 -msgid "IMAGE1 [IMAGE2 ...] MOUNTPOINT" -msgstr "AFTRYK1 [AFTRYK2 ...] MONTERINGSPUNKT" - -#: util/grub-mount.c:575 -msgid "need an image and mountpoint" -msgstr "kræver et aftryk samt monteringspunkt" - -#: util/grub-probe.c:731 -msgid "given argument is a system device, not a path" -msgstr "det givne argument er en systemenhed, ikke en sti" - -#: util/grub-probe.c:736 -msgid "separate items in output using ASCII NUL characters" -msgstr "adskil elementer i udskrift med NUL-ASCII-tegn" - -#: util/grub-probe.c:754 -#, c-format -msgid "[default=%s]" -msgstr "[standard=%s]" - -#: util/grub-probe.c:756 -msgid "print TARGET" -msgstr "udskriv MÅL" - -#: util/grub-probe.c:757 -msgid "available targets:" -msgstr "tilgængelige mål:" - -#: util/grub-probe.c:839 -msgid "[OPTION]... [PATH|DEVICE]" -msgstr "[TILVALG]... [STI|ENHED]" - -#: util/grub-probe.c:840 -msgid "" -"Probe device information for a given path (or device, if the -d option is " -"given)." -msgstr "" -"Forespørg om enhedsoplysninger for en given sti (eller enhed, hvis tilvalget " -"-d er givet)." - -#: util/grub-render-label.c:60 -msgid "read text from FILE." -msgstr "læs tekst fra FIL." - -#: util/grub-render-label.c:62 -msgid "use COLOR for text" -msgstr "brug FARVE til tekst" - -#: util/grub-render-label.c:64 -msgid "use COLOR for background" -msgstr "brug FARVE til baggrund" - -#. TRANSLATORS: The result is always stored to file and -#. never shown directly, so don't use "show" as synonym for render. Use "create" if -#. "render" doesn't translate directly. -#: util/grub-render-label.c:69 -msgid "set the label to render" -msgstr "sæt etiket som skal oprettes" - -#: util/grub-render-label.c:73 -msgid "use FILE as font (PF2)." -msgstr "brug FIL som skrifttype (PF2)." - -#. TRANSLATORS: This file takes a text and creates a graphical representation of it, -#. putting the result into .disk_label file. The result is always stored to file and -#. never shown directly, so don't use "show" as synonym for render. Use "create" if -#. "render" doesn't translate directly. -#: util/grub-render-label.c:136 -msgid "Render Apple .disk_label." -msgstr "Opret .disk_label til Apple." - -#: util/grub-render-label.c:158 util/grub-syslinux2cfg.c:169 -msgid "Missing arguments\n" -msgstr "Mangler argumenter\n" - -#: util/grub-script-check.c:87 -msgid "[PATH]" -msgstr "[STI]" - -#: util/grub-script-check.c:88 -msgid "Checks GRUB script configuration file for syntax errors." -msgstr "Tjekker om der er syntaksfejl i GRUB-scriptkonfigurationsfil." - -#: util/grub-script-check.c:207 -#, c-format -msgid "Syntax error at line %u\n" -msgstr "Syntaksfejl på linje %u\n" - -#: util/grub-script-check.c:212 -#, c-format -msgid "Script `%s' contains no commands and will do nothing\n" -msgstr "Scriptet \"%s\" indeholder ingen kommandoer og vil intet gøre\n" - -#: util/grub-setup.c:79 -#, c-format -msgid "use FILE as the boot image [default=%s]" -msgstr "brug FIL som opstartsaftryk [standard=%s]" - -#: util/grub-setup.c:81 -#, c-format -msgid "use FILE as the core image [default=%s]" -msgstr "brug FIL som kerneaftryk [standard=%s]" - -#: util/grub-setup.c:210 -msgid "No device is specified.\n" -msgstr "Ingen enhed angivet.\n" - -#: util/grub-setup.c:224 -msgid "" -"Set up images to boot from DEVICE.\n" -"\n" -"You should not normally run this program directly. Use grub-install instead." -msgstr "" -"Opsæt aftryk til at starte fra ENHED.\n" -"\n" -"Du bør normalt ikke køre dette program direkte. Brug i stedet grub-install." - -#: util/grub-setup.c:228 -msgid "DEVICE must be an OS device (e.g. /dev/sda)." -msgstr "ENHED skal være en OS-enhed (f.eks. /dev/sda)." - -#: util/grub-setup.c:297 -#, c-format -msgid "Invalid device `%s'.\n" -msgstr "Ugyldig enhed \"%s\".\n" - -#: util/grub-syslinux2cfg.c:64 -msgid "root directory as it will be seen on runtime [default=/]." -msgstr "rodkataloget, som det vil ses ved kørsel [standard=/]." - -#: util/grub-syslinux2cfg.c:69 -msgid "" -"current directory of syslinux as it will be seen on runtime [default is " -"parent directory of input file]." -msgstr "" -"syslinux' nuværende katalog, som det ses ved kørsel [standard er inputfilens " -"ophavskatalog]." - -#: util/grub-syslinux2cfg.c:74 -msgid "write output to FILE [default=stdout]." -msgstr "skriv til FIL [standard=stdout]." - -#: util/grub-syslinux2cfg.c:148 -msgid "Transform syslinux config into GRUB one." -msgstr "Transformér syslinux-konfiguration til GRUB-konfiguration." - -#: util/mkimage.c:688 util/mkimage.c:717 util/mkimage.c:734 -msgid "cannot compress the kernel image" -msgstr "kan ikke komprimere kerneaftryk" - -#: util/mkimage.c:766 util/mkimage.c:1077 -#, c-format -msgid "unknown compression %d" -msgstr "ukendt komprimering %d" - -#: util/mkimage.c:1088 -msgid "Decompressor is too big" -msgstr "Dekomprimeringsinstans er for stor" - -#: util/mkimage.c:1133 -#, c-format -msgid "core image is too big (0x%x > 0x%x)" -msgstr "kerneaftryk er for stort (0x%x > 0x%x)" - -#: util/mkimage.c:1140 -#, c-format -msgid "kernel image is too big (0x%x > 0x%x)" -msgstr "kerneaftryk er for stort (0x%x > 0x%x)" - -# bemærk: omkringstående linjer har småt begyndelsesbogstav -#: util/mkimage.c:1220 util/mkimage.c:1501 -#, c-format -msgid "diskboot.img size must be %u bytes" -msgstr "størrelsen af diskboot.img skal være %u byte" - -#: util/mkimage.c:1571 -msgid "" -"fwstart.img doesn't match the known good version. proceed at your own risk" -msgstr "" -"fwstart.img svarer ikke til den acceptable kendte version. Fortsæt på eget " -"ansvar" - -#: util/mkimage.c:1575 util/mkimage.c:1601 -msgid "firmware image is too big" -msgstr "firmwareaftryk er for stort" - -#: util/resolve.c:93 -#, c-format -msgid "invalid line format: %s" -msgstr "ugyldigt linjeformat: %s" - -#: util/setup.c:167 -msgid "the first sector of the core file is not sector-aligned" -msgstr "første sektor af kernefilen er ikke sektorjusteret" - -#: util/setup.c:177 -msgid "non-sector-aligned data is found in the core file" -msgstr "ikke-sektorjusterede data fundet i kernefilen" - -#: util/setup.c:199 -msgid "the sectors of the core file are too fragmented" -msgstr "sektorerne i kernefilen er for fragmenterede" - -#: util/setup.c:280 -#, c-format -msgid "the size of `%s' is not %u" -msgstr "størrelsen af \"%s\" er ikke %u" - -#: util/setup.c:290 -#, c-format -msgid "the size of `%s' is too small" -msgstr "størrelsen af \"%s\" er for lille" - -#: util/setup.c:428 -msgid "" -"Attempting to install GRUB to a disk with multiple partition labels or both " -"partition label and filesystem. This is not supported yet." -msgstr "" -"Forsøger at installere GRUB til en disk med flere partitionsetiketter, eller " -"både partitionsetiket og filsystem. Dette understøttes endnu ikke." - -#: util/setup.c:441 -#, c-format -msgid "unable to identify a filesystem in %s; safety check can't be performed" -msgstr "" -"kan ikke identificere noget filsystem i %s; sikkerhedstjek kan ikke udføres" - -#. TRANSLATORS: Filesystem may reserve the space just GRUB isn't sure about it. -#: util/setup.c:445 -#, c-format -msgid "" -"%s appears to contain a %s filesystem which isn't known to reserve space for " -"DOS-style boot. Installing GRUB there could result in FILESYSTEM " -"DESTRUCTION if valuable data is overwritten by grub-setup (--skip-fs-probe " -"disables this check, use at your own risk)" -msgstr "" -"%s synes at indeholde et %s-filsystem, for hvilket det ikke vides om der er " -"reserveret plads til DOS-agtig opstart. Installation af GRUB der vil måske " -"resultere i ØDELÆGGELSE AF FILSYSTEMET, hvis værdifulde data overskrives af " -"grub-setup (--skip-fs-probe deaktiverer denne kontrol - bruges på eget " -"ansvar)" - -#. TRANSLATORS: Partition map may reserve the space just GRUB isn't sure about it. -#: util/setup.c:458 -#, c-format -msgid "" -"%s appears to contain a %s partition map which isn't known to reserve space " -"for DOS-style boot. Installing GRUB there could result in FILESYSTEM " -"DESTRUCTION if valuable data is overwritten by grub-setup (--skip-fs-probe " -"disables this check, use at your own risk)" -msgstr "" -"%s synes at indeholde et %s-partitionskort, hvilket vides ikke at reservere " -"plads til DOS-agtig opstart. Installation af GRUB dér kan resulterer i " -"DESTRUKTION AF FILSYSTEMET, hvis værdifulde data overskrives af grub-setup " -"(--skip-fs-probe deaktiverer dette tjek. Brug på eget ansvar)" - -#: util/setup.c:465 -#, c-format -msgid "" -"%s appears to contain a %s partition map and LDM which isn't known to be a " -"safe combination. Installing GRUB there could result in FILESYSTEM " -"DESTRUCTION if valuable data is overwritten by grub-setup (--skip-fs-probe " -"disables this check, use at your own risk)" -msgstr "" -"%s synes at indeholde et %s-partitionskort samt LDM, hvilket ikke vides at " -"være en sikker kombination. Installation af GRUB dér kan resultere i " -"DESTRUKTION AF FILSYSTEMET, hvis værdifulde data overskrives af grub-setup " -"(--skip-fs-probe deaktiverer dette tjek. Brug på eget ansvar)" - -#: util/setup.c:478 -msgid "" -"Attempting to install GRUB to a partitionless disk or to a partition. This " -"is a BAD idea." -msgstr "" -"Forsøger at installere GRUB til en partitionsløs disk eller en partition. " -"Dette er en DÅRLIG idé." - -#: util/setup.c:483 -msgid "" -"Attempting to install GRUB to a disk with multiple partition labels. This " -"is not supported yet." -msgstr "" -"Forsøger at installere GRUB til en disk med flere partitionsetiketter. " -"Dette understøttes endnu ikke." - -#: util/setup.c:489 -#, c-format -msgid "Partition style `%s' doesn't support embedding" -msgstr "Partitionsstilen \"%s\" understøtter ikke indlejring" - -#: util/setup.c:496 -#, c-format -msgid "File system `%s' doesn't support embedding" -msgstr "Filsystemet \"%s\" understøtter ikke indlejring" - -#: util/setup.c:537 -msgid "Your embedding area is unusually small. core.img won't fit in it." -msgstr "" -"Dit indlejringsområde er usædvanligt lille. Der er ikke plads til core.img." - -#: util/setup.c:559 util/setup.c:725 util/setup.c:844 -msgid "no terminator in the core image" -msgstr "ingen terminator i kerneaftrykket" - -#: util/setup.c:622 -msgid "core.img version mismatch" -msgstr "core.img-version stemmer ikke" - -#: util/setup.c:675 -msgid "" -"embedding is not possible, but this is required for RAID and LVM install" -msgstr "" -"indlejring er ikke muligt, men dette kræves til RAID- og LVM-installationer" - -#: util/setup.c:682 -#, c-format -msgid "can't determine filesystem on %s" -msgstr "kan ikke bestemme filsystemet på %s" - -#: util/setup.c:685 -#, c-format -msgid "filesystem `%s' doesn't support blocklists" -msgstr "filsystemet \"%s\" understøtter ikke bloklister" - -#. TRANSLATORS: cross-disk refers to /boot being on one disk -#. but MBR on another. -#: util/setup.c:694 -msgid "embedding is not possible, but this is required for cross-disk install" -msgstr "" -"indlejring er ikke muligt, men dette kræves til installation på tværs af " -"diske" - -#: util/setup.c:700 -msgid "" -"Embedding is not possible. GRUB can only be installed in this setup by " -"using blocklists. However, blocklists are UNRELIABLE and their use is " -"discouraged." -msgstr "" -"Indlejring er ikke muligt. GRUB kan kun installeres med denne opsætning ved " -"brug af bloklister. Dog er bloklister UPÅLIDELIGE, og deres brug frarådes." - -#. TRANSLATORS: Here GRUB refuses to continue with blocklist install. -#: util/setup.c:705 -msgid "will not proceed with blocklists" -msgstr "vil ikke fortsætte med bloklister" - -#: util/setup.c:817 util/setup.c:837 -msgid "blocklists are invalid" -msgstr "bloklister er ugyldige" - -#: util/setup.c:847 -msgid "blocklists are incomplete" -msgstr "bloklister er ufuldstændige" - -#~ msgid "%.*s: ARGP_HELP_FMT parameter must be positive" -#~ msgstr "%.*s: ARGP_HELP_FMT-parameter skal være positiv" - -#~ msgid "%s: option '--%s' doesn't allow an argument\n" -#~ msgstr "%s: tilvalget \"--%s\" tillader ikke noget argument\n" - -#~ msgid "%s: unrecognized option '--%s'\n" -#~ msgstr "%s: ukendt tilvalg \"--%s\"\n" - -#~ msgid "%s: option '-W %s' doesn't allow an argument\n" -#~ msgstr "%s: tilvalget \"-W %s\" tillader ikke noget argument\n" - -#~ msgid "%s: option '-W %s' requires an argument\n" -#~ msgstr "%s: tilvalget \"-W %s\" kræver et argument\n" - -#~ msgid "Usage: %s -o OUTPUT CKBMAP_ARGUMENTS...\\n" -#~ msgstr "Brug: %s -o UDDATA CKBMAP_ARGUMENTER...\\n" - -#~ msgid "Make GRUB keyboard layout file." -#~ msgstr "Opret en GRUB-tastaturlayoutfil." - -#~ msgid "print this message and exit" -#~ msgstr "vis denne hjælp og afslut" - -#~ msgid "print the version information and exit" -#~ msgstr "vis versionsoplysninger og afslut" - -#~ msgid "%s generates a keyboard layout for GRUB using ckbcomp\\n" -#~ msgstr "%s genererer et tastaturlayout til GRUB ved brug af ckbcomp\\n" - -#~ msgid "Report bugs to ." -#~ msgstr "Rapportér fejl til ." - -#~ msgid "%s: option requires an argument -- `%s'\\n" -#~ msgstr "%s: tilvalg kræver et argument -- \"%s\"\\n" - -#~ msgid "Usage: %s [OPTION]\\n" -#~ msgstr "Brug: %s [TILVALG]\\n" - -#~ msgid "Generate a grub config file" -#~ msgstr "Generér en grub-konfigurationsfil" - -#~ msgid "output generated config to FILE [default=stdout]" -#~ msgstr "udskriv genereret konfigurationsfil til FIL [standard=stdout]" - -#~ msgid "Unrecognized option `%s'\\n" -#~ msgstr "Ukendt tilvalg \"%s\"\\n" - -#~ msgid "%s: You must run this as root\\n" -#~ msgstr "%s: Du skal køre dette som root\\n" - -#~ msgid "%s: Not found.\\n" -#~ msgstr "%s: Ikke fundet.\\n" - -#~ msgid "Generating grub configuration file ..." -#~ msgstr "Genererer en grub-konfigurationsfil ..." - -#~ msgid "" -#~ "Syntax errors are detected in generated GRUB config file.\n" -#~ "Ensure that there are no errors in /etc/default/grub\n" -#~ "and /etc/grub.d/* files or please file a bug report with\n" -#~ "%s file attached." -#~ msgstr "" -#~ "Der blev fundet syntaksfejl i den genererede GRUB-\n" -#~ "konfigurationsfil. Sikr dig at der ikke er nogen fejl\n" -#~ "i filerne /etc/default/grub eller /etc/grub.d/*, eller\n" -#~ "indsend venligst en fejlrapport med filen %s vedhæftet." - -#~ msgid "done" -#~ msgstr "færdig" - -#~ msgid "Warning:" -#~ msgstr "Advarsel:" - -#~ msgid "Usage: %s [OPTION] MENU_ENTRY\\n" -#~ msgstr "Brug: %s [TILVALG] MENUINDGANG\\n" - -#~ msgid "Set the default boot menu entry for GRUB, for the next boot only." -#~ msgstr "Angiv standardmenuindgangen i GRUB, kun for næste opstart." - -#~ msgid "" -#~ "expect GRUB images under the directory DIR/%s instead of the %s directory" -#~ msgstr "forvent GRUB-aftryk under kataloget KAT/%s frem for kataloget %s" - -#~ msgid "" -#~ "MENU_ENTRY is a number, a menu item title or a menu item identifier. " -#~ "Please note that menu items in\n" -#~ "submenus or sub-submenus require specifying the submenu components and " -#~ "then the\n" -#~ "menu item component. The titles should be separated using the greater-" -#~ "than\n" -#~ "character (>) with no extra spaces. Depending on your shell some " -#~ "characters including > may need escaping. More information about this is " -#~ "available\n" -#~ "in the GRUB Manual in the section about the 'default' command. " -#~ msgstr "" -#~ "MENUINDGANG er et tal, titlen på et menupunkt eller identifikator for et " -#~ "menupunkt. Bemærk venligst\n" -#~ "at menupunkter i undermenuer eller under-undermenuer kræver at der " -#~ "angives undermenukomponenter,\n" -#~ "og dernæst menupunktskomponent. Titlerne skal adskilles med større end-" -#~ "tegn (>) uden ekstra mellemrum.\n" -#~ "Afhængigt af din skal, skal visse tegn inklusive > måske have " -#~ "undvigesekvens. Yderligere oplysninger\n" -#~ "om dette kan findes i GRUB-manualen i afsnittet om \"default\"-kommandoen." - -#~ msgid "More than one menu entry?" -#~ msgstr "Mere end én menuindgang?" - -#~ msgid "Menu entry not specified." -#~ msgstr "Menuindgang ikke angivet." - -#~ msgid "Set the default boot menu entry for GRUB." -#~ msgstr "Sæt standardmenuindgangen for opstart i GRUB." - -#~ msgid "This requires setting GRUB_DEFAULT=saved in %s/default/grub.\\n" -#~ msgstr "Dette kræver at GRUB_DEFAULT=saved angives i %s/default/grub.\\n" - -#~ msgid "MENU_ENTRY is a number, a menu item title or a menu item identifier." -#~ msgstr "" -#~ "MENUINDGANG er et tal, titlen på et menupunkt eller identifikator for et " -#~ "menupunkt." - -#~ msgid "" -#~ "Requested serial terminal but GRUB_SERIAL_COMMAND is unspecified. Default " -#~ "parameters will be used." -#~ msgstr "" -#~ "Bad om seriel terminal, men GRUB_SERIAL_COMMAND er ikke angivet. Der vil " -#~ "blive brugt standardparametre." - -#~ msgid "Found theme: %s\\n" -#~ msgstr "Fandt tema: %s\\n" - -#~ msgid "Found background: %s\\n" -#~ msgstr "Fandt baggrund: %s\\n" - -#~ msgid "Unsupported image format" -#~ msgstr "Uunderstøttet billedformat" - -#~ msgid "" -#~ "Setting GRUB_TIMEOUT to a non-zero value when GRUB_HIDDEN_TIMEOUT is set " -#~ "is no longer supported." -#~ msgstr "" -#~ "Angivelse af GRUB_TIMEOUT til en værdi som ikke er nul, når " -#~ "GRUB_HIDDEN_TIMEOUT er angivet, understøttes ikke længere." - -#~ msgid "Found GNU Mach: %s" -#~ msgstr "Fandt GNU Mach: %s" - -#~ msgid "Found Hurd module: %s" -#~ msgstr "Fandt Hurd-modul: %s" - -#~ msgid "Some Hurd stuff found, but not enough to boot." -#~ msgstr "Noget Hurd-halløj fundet, men ikke nok til at starte op." - -#~ msgid "%s, with Hurd %s (recovery mode)" -#~ msgstr "%s, med Hurd %s (genoprettelsestilstand)" - -#~ msgid "%s, with Hurd %s" -#~ msgstr "%s, med Hurd %s" - -#~ msgid "" -#~ "Please don't use old title `%s' for GRUB_DEFAULT, use `%s' (for versions " -#~ "before 2.00) or `%s' (for 2.00 or later)" -#~ msgstr "" -#~ "Brug venligst ikke den gamle titel \"%s\" til GRUB_DEFAULT; brug \"%s" -#~ "\" (for versioner før 2.00) eller \"%s\" (for 2.00 eller nyere)" - -#~ msgid "Loading GNU Mach ..." -#~ msgstr "Indlæser GNU Mach ..." - -#~ msgid "Loading the Hurd ..." -#~ msgstr "Indlæser Hurd ..." - -#~ msgid "Advanced options for %s" -#~ msgstr "Avancerede indstillinger for %s" - -#~ msgid "Loading kernel of Illumos ..." -#~ msgstr "Indlæser Illumos-kerne ..." - -#~ msgid "%s, with kFreeBSD %s (recovery mode)" -#~ msgstr "%s, med kFreeBSD %s (genoprettelsestilstand)" - -#~ msgid "%s, with kFreeBSD %s" -#~ msgstr "%s, med kFreeBSD %s" - -#~ msgid "Loading kernel of FreeBSD %s ..." -#~ msgstr "Indlæser FreeBSD-kerne %s ..." - -#~ msgid "Found kernel of FreeBSD: %s\\n" -#~ msgstr "Fandt FreeBSD-kerne: %s\\n" - -#~ msgid "Found kernel module directory: %s\\n" -#~ msgstr "Fandt kernemodulkatalog: %s\\n" - -#~ msgid "%s, with Linux %s (recovery mode)" -#~ msgstr "%s, med Linux %s (genoprettelsestilstand)" - -#~ msgid "%s, with Linux %s" -#~ msgstr "%s, med Linux %s" - -#~ msgid "Loading Linux %s ..." -#~ msgstr "Indlæser Linux %s ..." - -#~ msgid "Loading initial ramdisk ..." -#~ msgstr "Indlæser start-ramdisk ..." - -#~ msgid "Found linux image: %s\\n" -#~ msgstr "Fandt linux-aftryk: %s\\n" - -#~ msgid "Found initrd image: %s\\n" -#~ msgstr "Fandt initrd-aftryk: %s\\n" - -#~ msgid "%s, with kernel %s (via %s, recovery mode)" -#~ msgstr "%s, med kerne %s (via %s, genoprettelsestilstand)" - -#~ msgid "%s, with kernel %s (via %s)" -#~ msgstr "%s, med kerne %s (via %s)" - -#~ msgid "Found NetBSD kernel: %s\\n" -#~ msgstr "Fandt NetBSD-kerne: %s\\n" - -#~ msgid "Windows Vista/7 (loader)" -#~ msgstr "Windows Vista/7 (indlæser)" - -#~ msgid "Windows NT/2000/XP (loader)" -#~ msgstr "Windows NT/2000/XP (indlæser)" - -#~ msgid "Found %s on %s (%s)\\n" -#~ msgstr "Fandt %s på %s (%s)\\n" - -#~ msgid "(32-bit)" -#~ msgstr "(32-bit)" - -#~ msgid "(64-bit)" -#~ msgstr "(64-bit)" - -#~ msgid "(on %s)" -#~ msgstr "(på %s)" - -#~ msgid "%s, with Xen %s and Linux %s (recovery mode)" -#~ msgstr "%s, med Xen %s og Linux %s (genoprettelsestilstand)" - -#~ msgid "%s, with Xen %s and Linux %s" -#~ msgstr "%s, med Xen %s og Linux %s" - -#~ msgid "%s, with Xen hypervisor" -#~ msgstr "%s, med Xen hypervisor" - -#~ msgid "Loading Xen %s ..." -#~ msgstr "Indlæser Xen %s ..." - -#~ msgid "Xen hypervisor, version %s" -#~ msgstr "Xen hypervisor, version %s" - -#~ msgid "Advanced options for %s (with Xen hypervisor)" -#~ msgstr "Avancerede indstillinger for %s (med Xen hypervisor)" - -#~ msgid "Found %s on %s\\n" -#~ msgstr "Fandt %s på %s\\n" - -#~ msgid "%s is not yet supported by grub-mkconfig.\\n" -#~ msgstr "%s understøttes endnu ikke af grub-mkconfig.\\n" - -#~ msgid "Unsupported substitution flag: 0x%x\n" -#~ msgstr "Erstatningsflag understøttes ikke: 0x%x\n" - -#~ msgid "Unknown gsub font feature 0x%x (%s)\n" -#~ msgstr "Ukendt gsub-funktion for skrifttype 0x%x (%s)\n" - -#~ msgid "Address range not associated with RAM" -#~ msgstr "Adresseinterval ikke tilknyttet RAM" - -#~ msgid "Packed pixel " -#~ msgstr "Paletfarve " - -#~ msgid "grub_memalign is not supported on your system" -#~ msgstr "grub_memalign er ikke understøttet på dit system" - -#~ msgid "If FILENAME is `-', the default value %s is used." -#~ msgstr "Hvis FILNAVN er \"-\", vil standardværdien %s blive brugt." - -#~ msgid "save only the ASCII bitmaps" -#~ msgstr "gem kun ASCII-bitmapfilerne" - -#~ msgid "create width summary file" -#~ msgstr "opret breddeinformationsfil" - -#~ msgid "Option --ascii-bitmaps doesn't accept ranges (it always uses ASCII)." -#~ msgstr "" -#~ "Tilvalget --ascii-bitmaps accepterer ikke intervaller (bruger altid " -#~ "ASCII)." - -#~ msgid "WARNING: your random generator isn't known to be secure\n" -#~ msgstr "ADVARSEL: din tilfældige talgenerator vides ikke at være sikker\n" - -#~ msgid "" -#~ "print filesystem module, GRUB drive, system device, partition map module, " -#~ "abstraction module or cryptographic container UUID [default=fs]" -#~ msgstr "" -#~ "udskriv filsystemmodul, GRUB-drev, systemenhed, " -#~ "partitionsafbildningsmodul, abstraktionsmodul eller UUID for " -#~ "kryptografisk beholder [standard=fs]" - -#~ msgid "failed to read the first sector of the core image" -#~ msgstr "kunne ikke læse første sektor af kerneaftrykket" - -#~ msgid "use GRUB images from DIR. Takes precedence over target" -#~ msgstr "brug GRUB-aftryk fra KAT. Tilsidesætter mål" - -#~ msgid "use FILE as grub-mkimage" -#~ msgstr "brug FIL som grub-mkimage" - -#~ msgid "use FILE as grub-mkrelpath" -#~ msgstr "brug FIL som grub-mkrelpath" - -#~ msgid "use FILE as grub-probe" -#~ msgstr "brug FIL som grub-probe" - -#~ msgid "INSTALL_DEVICE must be system device filename." -#~ msgstr "INSTALLATIONSENHED skal være systemenhedsfilnavn." - -#~ msgid "" -#~ "%s copies GRUB images into %s, and uses grub-setup\n" -#~ "to install grub into the boot sector.\\n" -#~ msgstr "" -#~ "%s kopierer GRUB-aftryk ind i %s, og bruger grub-setup\n" -#~ "til at installere grub i første opstartssektor.\\n" - -#~ msgid "" -#~ "Path `%s' is not readable by GRUB on boot. Installation is impossible. " -#~ "Aborting.\\n" -#~ msgstr "" -#~ "Stien \"%s\" er ikke læselig af GRUB ved opstart. Installation er umulig. " -#~ "Afbryder.\\n" - -#~ msgid "Auto-detection of a filesystem of %s failed.\\n" -#~ msgstr "Autodetektering af et filsystem på %s mislykkedes.\\n" - -#~ msgid "Try with --recheck." -#~ msgstr "Prøv med --recheck." - -#~ msgid "" -#~ "If the problem persists please report this together with the output of %s " -#~ "to <%s>" -#~ msgstr "" -#~ "Hvis problemet varer ved, så rapportér venligst dette sammen med " -#~ "udskriften af %s til <%s>" - -#~ msgid "`%s' failed.\\n" -#~ msgstr "\"%s\" fejlede.\\n" - -#~ msgid "" -#~ "Can't find GRUB drive for %s; unable to create EFI Boot Manager entry.\\n" -#~ msgstr "" -#~ "Kan ikke finde GRUB-drev for %s; kan ikke oprette indgang til EFI-" -#~ "opstartshåndtering.\\n" - -#~ msgid "Generating grub.cfg ..." -#~ msgstr "Genererer grub.cfg ..." - -#~ msgid "" -#~ "%s copies GRUB images into net_directory/subdir/target_cpu-platform\\n" -#~ msgstr "" -#~ "%s kopierer GRUB-aftryk ind i netkatalog/undermappe/mål-cpu-platform\\n" diff --git a/thirdparty/grub-2.04/po/de.gmo b/thirdparty/grub-2.04/po/de.gmo deleted file mode 100644 index 750bcd5092550eacf23f447893c9d6ce3e9eb7a1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 125389 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

2WAYM;40169rN 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, 2010-2013, 2017, 2019. -msgid "" -msgstr "" -"Project-Id-Version: grub-2.04-pre1\n" -"Report-Msgid-Bugs-To: bug-grub@gnu.org\n" -"POT-Creation-Date: 2019-07-04 16:09+0200\n" -"PO-Revision-Date: 2019-04-09 19:23+0200\n" -"Last-Translator: Mario Blättermann \n" -"Language-Team: German \n" -"Language: de_CH\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Bugs: Report translation errors to the Language-Team address.\n" -"Plural-Forms: nplurals=2; plural=(n != 1);\n" -"X-Generator: Lokalize 18.12.3\n" - -#: grub-core/bus/usb/serial/ftdi.c:145 grub-core/bus/usb/serial/pl2303.c:158 -#: grub-core/term/ieee1275/escc.c:169 grub-core/term/ns8250.c:202 -msgid "unsupported serial port speed" -msgstr "Geschwindigkeit des seriellen Ports wird nicht unterstützt" - -#: grub-core/bus/usb/serial/ftdi.c:151 grub-core/bus/usb/serial/pl2303.c:164 -#: grub-core/term/efi/serial.c:116 grub-core/term/ieee1275/escc.c:175 -#: grub-core/term/ns8250.c:208 grub-core/term/serial.c:227 -#: grub-core/term/serial.c:243 -msgid "unsupported serial port parity" -msgstr "Parität des seriellen Ports wird nicht unterstützt" - -#: grub-core/bus/usb/serial/ftdi.c:157 grub-core/bus/usb/serial/pl2303.c:170 -#: grub-core/term/efi/serial.c:122 grub-core/term/ieee1275/escc.c:181 -#: grub-core/term/ns8250.c:213 grub-core/term/serial.c:267 -msgid "unsupported serial port stop bits number" -msgstr "Anzahl der Stop-Bits des seriellen Ports wird nicht unterstützt" - -#: grub-core/bus/usb/serial/ftdi.c:161 grub-core/bus/usb/serial/pl2303.c:174 -#: grub-core/term/efi/serial.c:126 grub-core/term/ieee1275/escc.c:185 -#: grub-core/term/ns8250.c:217 -msgid "unsupported serial port word length" -msgstr "Wortlänge des seriellen Ports wird nicht unterstützt" - -#: grub-core/commands/acpi.c:42 -msgid "Don't load host tables specified by comma-separated list." -msgstr "Keine Host-Tabellen spezifiziert durch kommagetrennte Liste laden." - -#: grub-core/commands/acpi.c:45 -msgid "Load only tables specified by comma-separated list." -msgstr "Nur Tabellen spezifiziert durch kommagetrennte Liste laden." - -#: grub-core/commands/acpi.c:46 -msgid "Export version 1 tables to the OS." -msgstr "Version-1-Tabellen zum Betriebssystem exportieren." - -#: grub-core/commands/acpi.c:47 -msgid "Export version 2 and version 3 tables to the OS." -msgstr "Version-2- und Version-3-Tabellen zum Betriebssystem exportieren." - -#: grub-core/commands/acpi.c:48 -msgid "Set OEMID of RSDP, XSDT and RSDT." -msgstr "OEMID von RSDP, XSDT und RSDT festlegen." - -#: grub-core/commands/acpi.c:50 -msgid "Set OEMTABLE ID of RSDP, XSDT and RSDT." -msgstr "OEMTABLE-ID von RSDP, XSDT and RSDT festlegen." - -#: grub-core/commands/acpi.c:52 -msgid "Set OEMTABLE revision of RSDP, XSDT and RSDT." -msgstr "OEMTABLE-Revision von RSDP, XSDT und RSDT festlegen." - -#: grub-core/commands/acpi.c:54 -msgid "Set creator field of RSDP, XSDT and RSDT." -msgstr "Ersteller-Feld von RSDP, XSDT und RSDT festlegen." - -#: grub-core/commands/acpi.c:56 -msgid "Set creator revision of RSDP, XSDT and RSDT." -msgstr "Ersteller-Revision von RSDP, XSDT und RSDT festlegen." - -#. TRANSLATORS: "hangs" here is a noun, not a verb. -#: grub-core/commands/acpi.c:58 -msgid "" -"Don't update EBDA. May fix failures or hangs on some BIOSes but makes it " -"ineffective with OS not receiving RSDP from GRUB." -msgstr "" -"EBDA nicht aktualisieren. Könnte Fehler oder Hänger in manchen BIOS-" -"Versionen beseitigen, ist aber nicht effektiv bei Betriebssystemen, die kein " -"RSDP von GRUB empfangen. " - -#: grub-core/commands/acpi.c:650 grub-core/commands/acpi.c:667 -#: grub-core/commands/i386/pc/play.c:105 grub-core/commands/keylayouts.c:230 -#: grub-core/commands/keylayouts.c:245 grub-core/commands/keylayouts.c:263 -#: grub-core/commands/verifiers.c:156 grub-core/efiemu/loadcore.c:350 -#: grub-core/kern/elf.c:117 grub-core/kern/elfXX.c:29 -#: grub-core/kern/elfXX.c:156 grub-core/loader/arm/linux.c:319 -#: grub-core/loader/arm64/linux.c:330 grub-core/loader/arm64/xen_boot.c:356 -#: grub-core/loader/efi/chainloader.c:276 -#: grub-core/loader/efi/chainloader.c:297 -#: grub-core/loader/efi/chainloader.c:329 grub-core/loader/efi/fdt.c:138 -#: grub-core/loader/i386/bsd.c:1276 grub-core/loader/i386/bsd.c:2116 -#: grub-core/loader/i386/bsdXX.c:20 grub-core/loader/i386/bsdXX.c:36 -#: grub-core/loader/i386/bsdXX.c:63 grub-core/loader/i386/bsdXX.c:357 -#: grub-core/loader/i386/bsdXX.c:376 grub-core/loader/i386/bsdXX.c:519 -#: grub-core/loader/i386/bsdXX.c:535 grub-core/loader/i386/bsdXX.c:615 -#: grub-core/loader/i386/bsdXX.c:638 -#: grub-core/loader/i386/coreboot/chainloader.c:112 -#: grub-core/loader/i386/coreboot/chainloader.c:148 -#: grub-core/loader/i386/coreboot/chainloader.c:170 -#: grub-core/loader/i386/linux.c:667 grub-core/loader/i386/linux.c:788 -#: grub-core/loader/i386/linux.c:1005 grub-core/loader/i386/multiboot_mbi.c:171 -#: grub-core/loader/i386/pc/chainloader.c:202 -#: grub-core/loader/i386/pc/linux.c:149 grub-core/loader/i386/pc/linux.c:320 -#: grub-core/loader/i386/pc/linux.c:362 grub-core/loader/i386/pc/plan9.c:457 -#: grub-core/loader/i386/pc/plan9.c:550 grub-core/loader/i386/pc/plan9.c:566 -#: grub-core/loader/i386/xen.c:934 grub-core/loader/i386/xen_file.c:72 -#: grub-core/loader/i386/xen_fileXX.c:43 grub-core/loader/i386/xen_fileXX.c:186 -#: grub-core/loader/i386/xen_fileXX.c:339 grub-core/loader/ia64/efi/linux.c:423 -#: grub-core/loader/ia64/efi/linux.c:471 grub-core/loader/linux.c:286 -#: grub-core/loader/macho.c:84 grub-core/loader/macho.c:109 -#: grub-core/loader/machoXX.c:33 grub-core/loader/machoXX.c:46 -#: grub-core/loader/machoXX.c:76 grub-core/loader/machoXX.c:116 -#: grub-core/loader/machoXX.c:131 grub-core/loader/machoXX.c:147 -#: grub-core/loader/machoXX.c:196 grub-core/loader/machoXX.c:317 -#: grub-core/loader/multiboot.c:434 grub-core/loader/multiboot_elfxx.c:171 -#: grub-core/loader/multiboot_elfxx.c:234 -#: grub-core/loader/multiboot_elfxx.c:278 grub-core/loader/multiboot_mbi2.c:129 -#: grub-core/loader/xnu.c:737 grub-core/loader/xnu.c:795 -#: grub-core/loader/xnu.c:816 grub-core/loader/xnu.c:871 -#: grub-core/loader/xnu.c:914 grub-core/loader/xnu.c:952 -#: grub-core/loader/xnu_resume.c:68 grub-core/loader/xnu_resume.c:153 -#: grub-core/loader/xnu_resume.c:165 util/grub-mkimagexx.c:2288 -#, c-format -msgid "premature end of file %s" -msgstr "Unerwartetes Ende der Datei %s" - -#: grub-core/commands/acpi.c:779 -msgid "" -"[-1|-2] [--exclude=TABLE1,TABLE2|--load-only=TABLE1,TABLE2] FILE1 [FILE2] " -"[...]" -msgstr "" -"[-1|-2] [--exclude=TABELLE1,TABELLE2|--load-only=TABELLE1,TABELLE2] DATEI1 " -"[DATEI2] [...]" - -#: grub-core/commands/acpi.c:782 -msgid "Load host ACPI tables and tables specified by arguments." -msgstr "Host-ACPI-Tabellen und durch Argumente angegebene Tabellen laden." - -#: grub-core/commands/acpihalt.c:368 grub-core/kern/err.c:110 -#, c-format -msgid "error: %s.\n" -msgstr "Fehler: %s.\n" - -#: grub-core/commands/acpihalt.c:368 grub-core/kern/emu/misc.c:95 -#: grub-core/kern/emu/misc.c:105 grub-core/kern/emu/misc.c:134 -#: grub-core/kern/emu/mm.c:34 grub-core/kern/emu/mm.c:62 -#: grub-core/kern/mm.c:374 grub-core/lib/relocator.c:1282 -#: grub-core/lib/relocator.c:1439 grub-core/lib/relocator.c:1538 -#: grub-core/loader/arm/linux.c:259 grub-core/loader/arm64/linux.c:265 -#: grub-core/loader/arm64/linux.c:321 grub-core/loader/arm64/linux.c:340 -#: grub-core/loader/arm64/xen_boot.c:344 grub-core/loader/arm64/xen_boot.c:367 -#: grub-core/loader/efi/chainloader.c:289 grub-core/osdep/unix/dl.c:48 -#: grub-core/osdep/windows/dl.c:46 grub-core/script/lexer.c:156 -#: grub-core/script/lexer.c:182 -msgid "out of memory" -msgstr "Hauptspeicher erschöpft" - -#: grub-core/commands/acpihalt.c:374 grub-core/disk/cryptodisk.c:587 -#: grub-core/disk/cryptodisk.c:632 grub-core/kern/emu/hostdisk.c:307 -#: grub-core/kern/emu/hostfs.c:149 grub-core/kern/emu/misc.c:200 -#: grub-core/osdep/linux/ofpath.c:195 grub-core/osdep/linux/ofpath.c:521 -#: grub-core/osdep/linux/ofpath.c:534 util/glue-efi.c:80 util/glue-efi.c:94 -#: util/grub-editenv.c:155 util/grub-fstest.c:577 -#: util/grub-install-common.c:943 util/grub-mkrescue.c:634 -#: util/grub-mkrescue.c:888 util/grub-mount.c:506 util/grub-render-label.c:176 -#: util/misc.c:95 util/setup.c:814 util/setup.c:833 -#, c-format -msgid "cannot read `%s': %s" -msgstr "«%s» ist nicht lesbar: %s" - -#. TRANSLATORS: It's computer shutdown using ACPI, not disabling ACPI. -#: grub-core/commands/acpihalt.c:452 -msgid "ACPI shutdown failed" -msgstr "ACPI-Herunterfahren ist gescheitert" - -#: grub-core/commands/arc/lsdev.c:51 -msgid "List devices." -msgstr "Geräte auflisten." - -#: grub-core/commands/blocklist.c:122 grub-core/commands/cat.c:57 -#: grub-core/commands/configfile.c:35 grub-core/commands/efi/loadbios.c:168 -#: grub-core/commands/file.c:159 grub-core/commands/hexdump.c:47 -#: grub-core/commands/legacycfg.c:209 grub-core/commands/legacycfg.c:315 -#: grub-core/commands/minicmd.c:44 grub-core/commands/syslinuxcfg.c:146 -#: grub-core/commands/testload.c:58 grub-core/commands/testspeed.c:52 -#: grub-core/disk/loopback.c:93 grub-core/efiemu/main.c:293 -#: grub-core/font/font_cmd.c:32 grub-core/kern/emu/hostdisk.c:519 -#: grub-core/loader/arm/linux.c:364 grub-core/loader/arm/linux.c:409 -#: grub-core/loader/arm/linux.c:472 grub-core/loader/arm64/linux.c:243 -#: grub-core/loader/arm64/linux.c:297 grub-core/loader/arm64/xen_boot.c:398 -#: grub-core/loader/arm64/xen_boot.c:411 grub-core/loader/arm64/xen_boot.c:462 -#: grub-core/loader/efi/chainloader.c:216 grub-core/loader/i386/bsd.c:1462 -#: grub-core/loader/i386/bsd.c:1807 grub-core/loader/i386/bsd.c:2085 -#: grub-core/loader/i386/coreboot/chainloader.c:438 -#: grub-core/loader/i386/linux.c:656 grub-core/loader/i386/linux.c:1041 -#: grub-core/loader/i386/pc/chainloader.c:290 -#: grub-core/loader/i386/pc/freedos.c:105 grub-core/loader/i386/pc/linux.c:138 -#: grub-core/loader/i386/pc/linux.c:400 grub-core/loader/i386/pc/ntldr.c:85 -#: grub-core/loader/i386/pc/plan9.c:409 -#: grub-core/loader/i386/pc/pxechainloader.c:94 -#: grub-core/loader/i386/pc/truecrypt.c:96 grub-core/loader/i386/xen.c:641 -#: grub-core/loader/i386/xen.c:768 grub-core/loader/i386/xen.c:844 -#: grub-core/loader/i386/xen.c:854 grub-core/loader/i386/xnu.c:488 -#: grub-core/loader/ia64/efi/linux.c:459 grub-core/loader/ia64/efi/linux.c:539 -#: grub-core/loader/mips/linux.c:238 grub-core/loader/mips/linux.c:429 -#: grub-core/loader/multiboot.c:322 grub-core/loader/multiboot.c:374 -#: grub-core/loader/multiboot.c:384 -#: grub-core/loader/powerpc/ieee1275/linux.c:269 -#: grub-core/loader/powerpc/ieee1275/linux.c:341 -#: grub-core/loader/sparc64/ieee1275/linux.c:305 -#: grub-core/loader/sparc64/ieee1275/linux.c:381 grub-core/loader/xnu.c:351 -#: grub-core/loader/xnu.c:460 grub-core/loader/xnu.c:778 -#: grub-core/loader/xnu.c:892 grub-core/loader/xnu.c:1277 -#: grub-core/loader/xnu.c:1427 grub-core/loader/xnu.c:1453 -#: grub-core/video/readers/jpeg.c:812 grub-core/video/readers/png.c:1123 -msgid "filename expected" -msgstr "Dateiname wurde erwartet" - -#. TRANSLATORS: "embed" is a verb (command description). " -#: grub-core/commands/blocklist.c:154 grub-core/commands/cat.c:163 -#: grub-core/commands/configfile.c:65 grub-core/commands/configfile.c:68 -#: grub-core/commands/configfile.c:74 grub-core/commands/configfile.c:80 -#: grub-core/commands/configfile.c:86 grub-core/commands/hashsum.c:34 -#: grub-core/commands/legacycfg.c:834 grub-core/commands/legacycfg.c:841 -#: grub-core/commands/legacycfg.c:846 grub-core/commands/legacycfg.c:851 -#: grub-core/commands/macbless.c:222 grub-core/commands/minicmd.c:198 -#: grub-core/commands/syslinuxcfg.c:186 grub-core/commands/syslinuxcfg.c:194 -#: grub-core/commands/syslinuxcfg.c:200 grub-core/commands/syslinuxcfg.c:206 -#: grub-core/commands/testload.c:163 grub-core/efiemu/main.c:312 -#: grub-core/kern/emu/main.c:100 grub-core/kern/emu/main.c:103 -#: grub-core/loader/i386/bsd.c:2137 grub-core/loader/i386/bsd.c:2140 -#: grub-core/loader/i386/bsd.c:2143 -#: grub-core/loader/i386/coreboot/chainloader.c:505 -#: grub-core/loader/ia64/efi/linux.c:594 include/grub/util/install.h:32 -#: include/grub/util/install.h:64 util/grub-glue-efi.c:52 -#: util/grub-glue-efi.c:54 util/grub-glue-efi.c:56 util/grub-install.c:254 -#: util/grub-install.c:301 util/grub-mkfont.c:936 util/grub-mkimage.c:68 -#: util/grub-mkimage.c:74 util/grub-mkimage.c:76 util/grub-mkimage.c:78 -#: util/grub-mkimage.c:81 util/grub-mklayout.c:52 util/grub-mklayout.c:54 -#: util/grub-mkrescue.c:97 util/grub-mkrescue.c:101 util/grub-mkrescue.c:104 -#: util/grub-mkrescue.c:105 util/grub-mkrescue.c:106 -#: util/grub-mkstandalone.c:47 util/grub-mkstandalone.c:49 -#: util/grub-probe.c:732 util/grub-render-label.c:59 -#: util/grub-render-label.c:70 util/grub-render-label.c:72 util/grub-setup.c:78 -#: util/grub-setup.c:80 util/grub-setup.c:84 util/grub-syslinux2cfg.c:74 -#: util/grub-syslinux2cfg.c:147 -msgid "FILE" -msgstr "DATEI" - -#: grub-core/commands/blocklist.c:154 -msgid "Print a block list." -msgstr "Eine Blockliste ausgeben." - -#: grub-core/commands/boot.c:147 grub-core/commands/legacycfg.c:533 -#: grub-core/commands/legacycfg.c:574 grub-core/loader/arm64/linux.c:250 -#: grub-core/loader/i386/bsd.c:1799 grub-core/loader/i386/bsd.c:1900 -#: grub-core/loader/i386/bsd.c:2007 grub-core/loader/i386/bsd.c:2040 -#: grub-core/loader/i386/bsd.c:2089 grub-core/loader/i386/linux.c:1047 -#: grub-core/loader/i386/pc/linux.c:406 grub-core/loader/i386/xen.c:775 -#: grub-core/loader/i386/xen.c:859 grub-core/loader/ia64/efi/linux.c:545 -#: grub-core/loader/mips/linux.c:432 grub-core/loader/multiboot.c:388 -#: grub-core/loader/powerpc/ieee1275/linux.c:347 -#: grub-core/loader/sparc64/ieee1275/linux.c:387 grub-core/loader/xnu.c:572 -#: grub-core/loader/xnu.c:665 grub-core/loader/xnu.c:781 -#: grub-core/loader/xnu.c:895 grub-core/loader/xnu.c:1091 -#: grub-core/loader/xnu.c:1258 grub-core/loader/xnu.c:1289 -#: grub-core/loader/xnu.c:1430 -msgid "you need to load the kernel first" -msgstr "Sie müssen zuerst den Kernel laden" - -#: grub-core/commands/boot.c:189 -msgid "Boot an operating system." -msgstr "Ein Betriebssystem starten." - -#: grub-core/commands/boottime.c:36 -#: grub-core/commands/i386/coreboot/cb_timestamps.c:108 -msgid "No boot time statistics is available\n" -msgstr "Keine Statistiken für Boot-Zeiten verfügbar\n" - -#: grub-core/commands/boottime.c:59 -msgid "Show boot time statistics." -msgstr "Statistiken für Boot-Zeiten erstellen." - -#: grub-core/commands/cacheinfo.c:40 -#, c-format -msgid "Disk cache statistics: hits = %lu (%lu.%02lu%%), misses = %lu\n" -msgstr "" -"Statistiken des Plattenzwischenspeichers: Hits = %lu (%lu.%02lu%%), Misses = " -"%lu\n" - -#: grub-core/commands/cacheinfo.c:45 -msgid "No disk cache statistics available\n" -msgstr "Keine Statistiken zum Paket-Zwischenspeicher verfügbar\n" - -#: grub-core/commands/cacheinfo.c:56 -msgid "Get disk cache info." -msgstr "Informationen zum Platten-Zwischenspeicher holen." - -#: grub-core/commands/cat.c:33 -msgid "Accept DOS-style CR/NL line endings." -msgstr "CR/NL-Zeilenenden im DOS-Stil akzeptieren." - -#: grub-core/commands/cat.c:163 grub-core/commands/minicmd.c:198 -msgid "Show the contents of a file." -msgstr "Inhalt einer Datei anzeigen." - -#: grub-core/commands/cmp.c:43 grub-core/commands/i386/pc/drivemap.c:239 -#: grub-core/commands/i386/wrmsr.c:60 grub-core/commands/iorw.c:85 -#: grub-core/commands/memrw.c:84 grub-core/commands/password.c:75 -#: grub-core/commands/password_pbkdf2.c:94 grub-core/commands/pgp.c:826 -#: grub-core/commands/regexp.c:113 grub-core/mmap/mmap.c:517 -#: grub-core/net/dns.c:639 -msgid "two arguments expected" -msgstr "Zwei Argumente wurden erwartet" - -#: grub-core/commands/cmp.c:45 -#, c-format -msgid "Compare file `%s' with `%s':\n" -msgstr "Datei «%s» mit «%s» vergleichen:\n" - -#: grub-core/commands/cmp.c:54 -#, c-format -msgid "Files differ in size: %llu [%s], %llu [%s]\n" -msgstr "Dateigrössen sind unterschiedlich: %llu [%s], %llu [%s]\n" - -#: grub-core/commands/cmp.c:81 -#, c-format -msgid "Files differ at the offset %llu: 0x%x [%s], 0x%x [%s]\n" -msgstr "Dateien unterscheiden sich an Position %llu: 0x%x [%s], 0x%x [%s]\n" - -#. TRANSLATORS: it's always exactly 2 files. -#: grub-core/commands/cmp.c:93 -msgid "The files are identical.\n" -msgstr "Die Dateien sind identisch.\n" - -#: grub-core/commands/cmp.c:113 -msgid "FILE1 FILE2" -msgstr "DATEI1 DATEI2" - -#: grub-core/commands/cmp.c:113 -msgid "Compare two files." -msgstr "Zwei Dateien vergleichen." - -#: grub-core/commands/configfile.c:65 -msgid "Load another config file." -msgstr "Eine andere Konfigurationsdatei laden." - -#: grub-core/commands/configfile.c:69 grub-core/commands/configfile.c:87 -msgid "Load another config file without changing context." -msgstr "Eine andere Konfigurationsdatei laden, ohne den Kontext zu ändern." - -#: grub-core/commands/configfile.c:75 -msgid "" -"Load another config file without changing context but take only menu entries." -msgstr "" -"Eine andere Konfigurationsdatei laden, ohne den Kontext zu ändern. Es werden " -"nur Menüeinträge geladen." - -#: grub-core/commands/configfile.c:81 -msgid "Load another config file but take only menu entries." -msgstr "Eine andere Konfigurationsdatei laden, aber nur deren Menüeinträge." - -#: grub-core/commands/date.c:141 -msgid "[[year-]month-day] [hour:minute[:second]]" -msgstr "[[Jahr-]Monat-Tag] [Stunde:Minute[:Sekunde]]" - -#: grub-core/commands/date.c:142 -msgid "Display/set current datetime." -msgstr "Anzeigen/Festlegen des/der aktuellen Datums/Zeit." - -#: grub-core/commands/echo.c:30 -msgid "Do not output the trailing newline." -msgstr "Angehängte Zeilenumbrüche nicht ausgeben." - -#: grub-core/commands/echo.c:31 -msgid "Enable interpretation of backslash escapes." -msgstr "Auswertung der Backslash-Maskierungen ermöglichen." - -#: grub-core/commands/echo.c:134 -msgid "[-e|-n] STRING" -msgstr "[-e|-n] ZEICHENKETTE" - -#: grub-core/commands/echo.c:134 -msgid "Display a line of text." -msgstr "Eine Textzeile anzeigen." - -#: grub-core/commands/efi/efifwsetup.c:82 -msgid "Reboot into firmware setup menu." -msgstr "In das Firmware-Konfigurationsmenü neu starten." - -#: grub-core/commands/efi/fixvideo.c:107 -msgid "Fix video problem." -msgstr "Ein Videoproblem beheben." - -#: grub-core/commands/efi/loadbios.c:52 -msgid "ROM image is present." -msgstr "ROM-Abbild ist vorhanden." - -#: grub-core/commands/efi/loadbios.c:70 -msgid "Can't enable ROM area." -msgstr "ROM-Bereich kann nicht aktiviert werden." - -#: grub-core/commands/efi/loadbios.c:209 -msgid "" -"Create BIOS-like structures for backward compatibility with existing OS." -msgstr "" -"BIOS-Strukturen für Abwärtskompatibilität mit dem vorhandenen Betriebssystem " -"erstellen." - -#: grub-core/commands/efi/loadbios.c:214 -msgid "BIOS_DUMP [INT10_DUMP]" -msgstr "BIOS_SICHERUNG [INT10_SICHERUNG]" - -#: grub-core/commands/efi/loadbios.c:215 -msgid "Load BIOS dump." -msgstr "BIOS-Sicherung laden." - -#: grub-core/commands/efi/shim_lock.c:76 -#, c-format -msgid "module cannot be loaded in UEFI secure boot mode: %s" -msgstr "Modul kann im sicheren UEFI-Bootmodus nicht geladen werden: %s" - -#: grub-core/commands/efi/shim_lock.c:98 -#, c-format -msgid "cannot boot due to dangerous module in memory: %s" -msgstr "" -"Wegen eines gefährlichen Moduls im Speicher kann nicht gebootet werden: %s" - -#: grub-core/commands/efi/shim_lock.c:116 -msgid "bad shim signature" -msgstr "Falsche Shim-Signatur" - -#: grub-core/commands/efi/tpm.c:149 grub-core/commands/efi/tpm.c:189 -#: grub-core/commands/efi/tpm.c:256 grub-core/commands/efi/tpm.c:306 -msgid "Command failed" -msgstr "Befehlsausführung fehlgeschlagen" - -#: grub-core/commands/efi/tpm.c:151 grub-core/commands/efi/tpm.c:191 -#: grub-core/commands/efi/tpm.c:258 grub-core/commands/efi/tpm.c:308 -msgid "Invalid parameter" -msgstr "Ungültiger Parameter" - -#: grub-core/commands/efi/tpm.c:154 grub-core/commands/efi/tpm.c:194 -#: grub-core/commands/efi/tpm.c:261 grub-core/commands/efi/tpm.c:311 -msgid "Output buffer too small" -msgstr "Ausgabepuffer ist zu klein" - -#: grub-core/commands/efi/tpm.c:156 grub-core/commands/efi/tpm.c:196 -#: grub-core/commands/efi/tpm.c:263 grub-core/commands/efi/tpm.c:313 -msgid "TPM unavailable" -msgstr "TPM ist nicht verfügbar" - -#: grub-core/commands/efi/tpm.c:158 grub-core/commands/efi/tpm.c:198 -#: grub-core/commands/efi/tpm.c:265 grub-core/commands/efi/tpm.c:315 -msgid "Unknown TPM error" -msgstr "Unbekannter TPM-Fehler" - -#: grub-core/commands/efi/tpm.c:240 grub-core/commands/efi/tpm.c:288 -msgid "cannot allocate TPM event buffer" -msgstr "TPM-Ereignispuffer kann nicht belegt werden" - -#: grub-core/commands/eval.c:63 -msgid "STRING ..." -msgstr "ZEICHENKETTE ..." - -#: grub-core/commands/eval.c:64 -msgid "Evaluate arguments as GRUB commands" -msgstr "Argumente als GRUB-Befehle auffassen" - -#: grub-core/commands/file.c:41 -msgid "Check if FILE can be booted as i386 PAE Xen unprivileged guest kernel" -msgstr "" -"Überprüfen, ob DATEI als unprivilegierter i386-PAE-Xen-Gast-Kernel gebootet " -"werden kann" - -#: grub-core/commands/file.c:44 -msgid "Check if FILE can be booted as x86_64 Xen unprivileged guest kernel" -msgstr "" -"Überprüfen, ob DATEI als unprivilegierter x86_64-Xen-Gast-Kernel gebootet " -"werden kann" - -#: grub-core/commands/file.c:46 -msgid "Check if FILE can be used as Xen x86 privileged guest kernel" -msgstr "" -"Überprüfen, ob DATEI als unprivilegierter x86-Xen-Gast-Kernel gebootet " -"werden kann" - -#: grub-core/commands/file.c:48 -msgid "Check if FILE can be used as x86 multiboot kernel" -msgstr "Überprüfen, ob DATEI als x86-Multiboot-Kernel gebootet werden kann" - -#: grub-core/commands/file.c:50 -msgid "Check if FILE can be used as x86 multiboot2 kernel" -msgstr "Überprüfen, ob DATEI als x86-Multiboot2-Kernel gebootet werden kann" - -#: grub-core/commands/file.c:52 -msgid "Check if FILE is ARM Linux" -msgstr "Überpüfen, ob DATEI ARM-Linux ist" - -#: grub-core/commands/file.c:54 -msgid "Check if FILE is ARM64 Linux" -msgstr "Überpüfen, ob DATEI ARM64-Linux ist" - -#: grub-core/commands/file.c:56 -msgid "Check if FILE is IA64 Linux" -msgstr "Überpüfen, ob DATEI IA64-Linux ist" - -#: grub-core/commands/file.c:58 -msgid "Check if FILE is MIPS Linux" -msgstr "Überpüfen, ob DATEI MIPS-Linux ist" - -#: grub-core/commands/file.c:60 -msgid "Check if FILE is MIPSEL Linux" -msgstr "Überpüfen, ob DATEI MIPSEL-Linux ist" - -#: grub-core/commands/file.c:62 -msgid "Check if FILE is SPARC64 Linux" -msgstr "Überpüfen, ob DATEI SPARC64-Linux ist" - -#: grub-core/commands/file.c:64 -msgid "Check if FILE is POWERPC Linux" -msgstr "Überpüfen, ob DATEI POWERPC-Linux ist" - -#: grub-core/commands/file.c:66 -msgid "Check if FILE is x86 Linux" -msgstr "Überpüfen, ob DATEI x86-Linux ist" - -#: grub-core/commands/file.c:68 -msgid "Check if FILE is x86 Linux supporting 32-bit protocol" -msgstr "Überpüfen, ob DATEI x86-Linux mit 32-Bit-Protokollunterstützung ist" - -#: grub-core/commands/file.c:70 -msgid "Check if FILE is x86 kFreeBSD" -msgstr "Überpüfen, ob DATEI x86-kFreeBSD ist" - -#: grub-core/commands/file.c:72 -msgid "Check if FILE is i386 kFreeBSD" -msgstr "Überpüfen, ob DATEI i386-kFreeBSD ist" - -#: grub-core/commands/file.c:74 -msgid "Check if FILE is x86_64 kFreeBSD" -msgstr "Überpüfen, ob DATEI x86_64-kFreeBSD ist" - -#: grub-core/commands/file.c:77 -msgid "Check if FILE is x86 kNetBSD" -msgstr "Überpüfen, ob DATEI x86-kNetBSD ist" - -#: grub-core/commands/file.c:79 -msgid "Check if FILE is i386 kNetBSD" -msgstr "Überpüfen, ob DATEI i386-kNetBSD ist" - -#: grub-core/commands/file.c:81 -msgid "Check if FILE is x86_64 kNetBSD" -msgstr "Überpüfen, ob DATEI x86_64-kNetBSD ist" - -#: grub-core/commands/file.c:84 -msgid "Check if FILE is i386 EFI file" -msgstr "Überpüfen, ob DATEI eine i386-EFI-Datei ist" - -#: grub-core/commands/file.c:86 -msgid "Check if FILE is x86_64 EFI file" -msgstr "Überpüfen, ob DATEI eine i386-EFI-Datei ist" - -#: grub-core/commands/file.c:88 -msgid "Check if FILE is IA64 EFI file" -msgstr "Überpüfen, ob DATEI eine IA64-EFI-Datei ist" - -#: grub-core/commands/file.c:90 -msgid "Check if FILE is ARM64 EFI file" -msgstr "Überpüfen, ob DATEI eine ARM64-EFI-Datei ist" - -#: grub-core/commands/file.c:92 -msgid "Check if FILE is ARM EFI file" -msgstr "Überpüfen, ob DATEI eine ARM-EFI-Datei ist" - -#: grub-core/commands/file.c:94 -msgid "Check if FILE is RISC-V 32bit EFI file" -msgstr "Überprüfen, ob DATEI eine 32-Bit-RISC-V-EFI-Datei ist" - -#: grub-core/commands/file.c:96 -msgid "Check if FILE is RISC-V 64bit EFI file" -msgstr "Überprüfen, ob DATEI eine 64-Bit-RISC-V-EFI-Datei ist" - -#: grub-core/commands/file.c:98 -msgid "Check if FILE is hiberfil.sys in hibernated state" -msgstr "Überpüfen, ob DATEI hiberfil.sys im Ruhezustand ist (hibernated)" - -#: grub-core/commands/file.c:100 -msgid "Check if FILE is x86_64 XNU (Mac OS X kernel)" -msgstr "Überpüfen, ob DATEI x86_64-XNU ist (Mac-OSX-Kernel)" - -#: grub-core/commands/file.c:102 -msgid "Check if FILE is i386 XNU (Mac OS X kernel)" -msgstr "Überpüfen, ob DATEI XNU ist (Mac-OSX-Kernel)" - -#: grub-core/commands/file.c:104 -msgid "Check if FILE is XNU (Mac OS X kernel) hibernated image" -msgstr "Überpüfen, ob DATEI ein XNU-Ruhezustand-Abbild ist (Mac-OSX-Kernel)" - -#: grub-core/commands/file.c:106 -msgid "Check if FILE is BIOS bootsector" -msgstr "Überpüfen, ob DATEI ein BIOS-Bootsektor ist" - -#. TRANSLATORS: it's a standalone boolean value, -#. opposite of "true". -#: grub-core/commands/file.c:675 grub-core/commands/i386/cmostest.c:63 -#: grub-core/commands/i386/cpuid.c:71 grub-core/commands/keystatus.c:83 -#: grub-core/commands/keystatus.c:87 grub-core/commands/keystatus.c:96 -#: grub-core/commands/test.c:436 grub-core/commands/true.c:39 -#: grub-core/script/execute.c:247 grub-core/script/execute.c:1039 -msgid "false" -msgstr "Falsch" - -#: grub-core/commands/file.c:684 -msgid "OPTIONS FILE" -msgstr "OPTIONEN DATEI" - -#: grub-core/commands/file.c:685 -msgid "Check if FILE is of specified type." -msgstr "Überprüfen, ob DATEI den angegebenen Typ hat." - -#. TRANSLATORS: It means that the specified partition e.g. -#. hd0,msdos1=/dev/sda1 doesn't exist. -#: grub-core/commands/gptsync.c:140 grub-core/kern/disk.c:258 -msgid "no such partition" -msgstr "Keine solche Partition" - -#: grub-core/commands/gptsync.c:240 -#, c-format -msgid "New MBR is written to `%s'\n" -msgstr "Neuer MBR wurde nach «%s» geschrieben\n" - -#: grub-core/commands/gptsync.c:252 -msgid "DEVICE [PARTITION[+/-[TYPE]]] ..." -msgstr "GERÄT [PARTITION[+/-[TYP]]] ..." - -#. TRANSLATORS: MBR type is one-byte partition -#. type id. -#: grub-core/commands/gptsync.c:255 -msgid "" -"Fill hybrid MBR of GPT drive DEVICE. Specified partitions will be a part of " -"hybrid MBR. Up to 3 partitions are allowed. TYPE is an MBR type. + means " -"that partition is active. Only one partition can be active." -msgstr "" -"Hybrid-MBR des GPT-Gerätes GERÄT füllen. Angegebene Partitionen werden Teil " -"des Hybrid-MBR. Bis zu 3 Partitionen sind zulässig. TYP ist ein MBR-Typ. + " -"bedeutet, dass die Partition aktiv ist. Nur eine Partition kann aktiv sein." - -#: grub-core/commands/halt.c:40 -msgid "" -"Halts the computer. This command does not work on all firmware " -"implementations." -msgstr "" -"Diesen Computer anhalten. Dieser Befehl funktioniert nicht in allen Firmware-" -"Implementationen." - -#: grub-core/commands/hashsum.c:32 -msgid "Specify hash to use." -msgstr "Zu verwendenden Hash angeben." - -#: grub-core/commands/hashsum.c:32 -msgid "HASH" -msgstr "HASH" - -#: grub-core/commands/hashsum.c:33 -msgid "Check hashes of files with hash list FILE." -msgstr "Prüfsummen der Dateien mit Liste in DATEI vergleichen." - -#: grub-core/commands/hashsum.c:35 -msgid "Base directory for hash list." -msgstr "Basisverzeichnis für Hash-Liste." - -#. TRANSLATORS: platform here isn't identifier. It can be translated. -#: grub-core/commands/hashsum.c:35 grub-core/commands/ls.c:150 -#: grub-core/commands/macbless.c:226 grub-core/commands/syslinuxcfg.c:51 -#: grub-core/commands/syslinuxcfg.c:54 grub-core/kern/emu/main.c:106 -#: include/grub/util/install.h:50 include/grub/util/install.h:53 -#: include/grub/util/install.h:56 include/grub/util/install.h:59 -#: util/grub-install.c:250 util/grub-install.c:252 util/grub-install.c:297 -#: util/grub-install.c:299 util/grub-mkimage.c:64 util/grub-mkimage.c:67 -#: util/grub-mknetdir.c:46 util/grub-mknetdir.c:48 util/grub-mkrescue.c:99 -#: util/grub-setup.c:82 util/grub-syslinux2cfg.c:63 util/grub-syslinux2cfg.c:65 -#: util/grub-syslinux2cfg.c:67 util/grub-syslinux2cfg.c:71 -msgid "DIR" -msgstr "VERZ" - -#: grub-core/commands/hashsum.c:37 -msgid "Don't stop after first error." -msgstr "Nach dem ersten Fehler nicht stoppen." - -#: grub-core/commands/hashsum.c:38 -msgid "Uncompress file before checksumming." -msgstr "Datei entpacken, bevor Prüfsumme ermittelt wird." - -#: grub-core/commands/hashsum.c:163 -#, c-format -msgid "%s: READ ERROR\n" -msgstr "%s: LESEFEHLER\n" - -#: grub-core/commands/hashsum.c:177 -#, c-format -msgid "%s: HASH MISMATCH\n" -msgstr "%s: HASH-FEHLER\n" - -#: grub-core/commands/hashsum.c:188 -#, c-format -msgid "%s: OK\n" -msgstr "%s: OK\n" - -#: grub-core/commands/hashsum.c:282 -msgid "-h HASH [-c FILE [-p PREFIX]] [FILE1 [FILE2 ...]]" -msgstr "-h HASH [-c DATEI [-p PRÄFIX]] [DATEI1 [DATEI2 ...]]" - -#. TRANSLATORS: "hash checksum" is just to -#. be a bit more precise, you can treat it as -#. just "hash". -#: grub-core/commands/hashsum.c:287 grub-core/commands/hashsum.c:292 -#: grub-core/commands/hashsum.c:297 grub-core/commands/hashsum.c:302 -#: grub-core/commands/hashsum.c:307 grub-core/commands/hashsum.c:313 -msgid "Compute or check hash checksum." -msgstr "Hash-Prüfsumme berechnen oder prüfen." - -#: grub-core/commands/hashsum.c:290 grub-core/commands/hashsum.c:295 -#: grub-core/commands/hashsum.c:300 grub-core/commands/hashsum.c:305 -#: grub-core/commands/hashsum.c:311 -msgid "[-c FILE [-p PREFIX]] [FILE1 [FILE2 ...]]" -msgstr "[-c DATEI [-p PRÄFIX]] [DATEI1 [DATEI2 ...]]" - -#: grub-core/commands/hdparm.c:33 -msgid "" -"Set Advanced Power Management\n" -"(1=low, ..., 254=high, 255=off)." -msgstr "" -"Erweiterte Energieverwaltung setzen\n" -"(1=niedrig, ..., 254=hoch, 255=aus)." - -#: grub-core/commands/hdparm.c:36 -msgid "Display power mode." -msgstr "Energiemodus anzeigen." - -#: grub-core/commands/hdparm.c:37 -msgid "Freeze ATA security settings until reset." -msgstr "ATA-Sicherheitseinstellungen bis zum Zurücksetzen einfrieren." - -#: grub-core/commands/hdparm.c:39 -msgid "Display SMART health status." -msgstr "Laufwerksstatus mit SMART anzeigen." - -#: grub-core/commands/hdparm.c:40 -msgid "" -"Set Automatic Acoustic Management\n" -"(0=off, 128=quiet, ..., 254=fast)." -msgstr "" -"Automatische Klangverwaltung festlegen\n" -"(0=aus, 128=leise, ..., 254=schnell)." - -#: grub-core/commands/hdparm.c:43 -msgid "" -"Set standby timeout\n" -"(0=off, 1=5s, 2=10s, ..., 240=20m, 241=30m, ...)." -msgstr "" -"Wartezeit bis Standby festlegen\n" -"(0=off, 1=5s, 2=10s, ..., 240=20m, 241=30m, ...)." - -#: grub-core/commands/hdparm.c:46 -msgid "Set drive to standby mode." -msgstr "Laufwerk in den Standby-Modus versetzen." - -#: grub-core/commands/hdparm.c:47 -msgid "Set drive to sleep mode." -msgstr "Laufwerk in den Schlafmodus versetzen." - -#: grub-core/commands/hdparm.c:48 -msgid "Print drive identity and settings." -msgstr "Identität und Einstellungen des Laufwerks ausgeben." - -#: grub-core/commands/hdparm.c:50 -msgid "Show raw contents of ATA IDENTIFY sector." -msgstr "Roh-Inhalt des ATA IDENTIFY-Sektors anzeigen." - -#: grub-core/commands/hdparm.c:52 -msgid "Disable/enable SMART (0/1)." -msgstr "SMART aktivieren/deaktivieren (0/1)." - -#: grub-core/commands/hdparm.c:53 -msgid "Do not print messages." -msgstr "Keine Meldungen ausgeben." - -#: grub-core/commands/hdparm.c:286 grub-core/commands/i386/rdmsr.c:68 -#: grub-core/commands/iorw.c:47 grub-core/commands/legacycfg.c:760 -#: grub-core/commands/legacycfg.c:812 grub-core/commands/macbless.c:190 -#: grub-core/commands/memrw.c:47 grub-core/commands/pgp.c:738 -#: grub-core/commands/pgp.c:792 grub-core/commands/search.c:304 -#: grub-core/commands/search_wrap.c:179 grub-core/commands/setpci.c:243 -#: grub-core/commands/sleep.c:71 grub-core/fs/zfs/zfsinfo.c:279 -#: grub-core/fs/zfs/zfsinfo.c:358 grub-core/gettext/gettext.c:492 -#: grub-core/kern/corecmd.c:65 grub-core/kern/corecmd.c:79 -#: grub-core/mmap/mmap.c:430 grub-core/net/dns.c:713 grub-core/net/dns.c:745 -#: grub-core/net/net.c:694 grub-core/net/net.c:1052 -#: grub-core/normal/context.c:194 grub-core/script/execute.c:131 -#: grub-core/term/gfxterm_background.c:136 -msgid "one argument expected" -msgstr "Ein Argument wurde erwartet" - -#: grub-core/commands/hdparm.c:440 -msgid "[OPTIONS] DISK" -msgstr "[OPTIONEN] DATENTRÄGER" - -#: grub-core/commands/hdparm.c:441 -msgid "Get/set ATA disk parameters." -msgstr "ATA-Datenträgerparameter ermitteln/festlegen." - -#: grub-core/commands/help.c:132 grub-core/lib/arg.c:109 -#: grub-core/lib/gnulib/argp-help.c:1616 -msgid "Usage:" -msgstr "Aufruf:" - -#: grub-core/commands/help.c:146 -msgid "[PATTERN ...]" -msgstr "[MUSTER ...]" - -#: grub-core/commands/help.c:147 -msgid "Show a help message." -msgstr "Eine Hilfemeldung anzeigen." - -#: grub-core/commands/hexdump.c:31 -msgid "Skip offset bytes from the beginning of file." -msgstr "Offset-Bytes am Beginn der Datei überspringen." - -#: grub-core/commands/hexdump.c:33 -msgid "Read only LENGTH bytes." -msgstr "Nur Bytes der Länge LENGTH lesen." - -#: grub-core/commands/hexdump.c:125 -msgid "[OPTIONS] FILE_OR_DEVICE" -msgstr "[OPTIONEN] DATEI_ODER_GERÄT" - -#: grub-core/commands/hexdump.c:126 -msgid "Show raw contents of a file or memory." -msgstr "Roh-Inhalt einer Datei oder des Speichers anzeigen." - -#: grub-core/commands/i386/cmosdump.c:58 -msgid "Show raw dump of the CMOS contents." -msgstr "Roh-Inhalt des CMOS anzeigen." - -#: grub-core/commands/i386/cmostest.c:108 -#: grub-core/commands/i386/cmostest.c:111 -#: grub-core/commands/i386/cmostest.c:114 -msgid "BYTE:BIT" -msgstr "BYTE:BIT" - -#: grub-core/commands/i386/cmostest.c:109 -msgid "Test bit at BYTE:BIT in CMOS." -msgstr "Bit bei BYTE:BIT im CMOS testen." - -#: grub-core/commands/i386/cmostest.c:112 -msgid "Clear bit at BYTE:BIT in CMOS." -msgstr "Bit bei BYTE:BIT im CMOS leeren." - -#. TRANSLATORS: A bit may be either set (1) or clear (0). -#: grub-core/commands/i386/cmostest.c:116 -msgid "Set bit at BYTE:BIT in CMOS." -msgstr "Bit bei BYTE:BIT im CMOS setzen." - -#: grub-core/commands/i386/coreboot/cb_timestamps.c:120 -msgid "Show coreboot boot time statistics." -msgstr "Bootzeit-Statistiken für Coreboot anzeigen." - -#: grub-core/commands/i386/coreboot/cbls.c:137 -msgid "List coreboot tables." -msgstr "Coreboot-Tabellen auflisten." - -#. TRANSLATORS: "(default)" at the end means that this option is used if -#. no argument is specified. -#: grub-core/commands/i386/cpuid.c:36 -msgid "Check if CPU supports 64-bit (long) mode (default)." -msgstr "" -"Überprüfen, ob der Prozessor den 64-Bit-(Lang-)Modus unterstützt (Vorgabe)." - -#: grub-core/commands/i386/cpuid.c:37 -msgid "Check if CPU supports Physical Address Extension." -msgstr "" -"Überprüfen, ob der Prozessor die physikalische Adresserweiterung unterstützt." - -#: grub-core/commands/i386/cpuid.c:119 -msgid "Check for CPU features." -msgstr "Fähigkeiten der CPU überprüfen." - -#. TRANSLATORS: In this file "mapping" refers to a change GRUB makes so if -#. your language doesn't have an equivalent of "mapping" you can -#. use the word like "rerouting". -#. -#: grub-core/commands/i386/pc/drivemap.c:43 -msgid "Show the current mappings." -msgstr "Alle aktuellen Zuordnungen anzeigen." - -#: grub-core/commands/i386/pc/drivemap.c:44 -msgid "Reset all mappings to the default values." -msgstr "Alle Zuordnungen auf Standardwerte zurücksetzen." - -#: grub-core/commands/i386/pc/drivemap.c:45 -msgid "Perform both direct and reverse mappings." -msgstr "Sowohl direkte als auch umgekehrte Zuordnungen ausführen." - -#: grub-core/commands/i386/pc/drivemap.c:184 -msgid "No drives have been remapped" -msgstr "Es wurden keine Laufwerke neu zugeordnet" - -#. TRANSLATORS: This is the header of mapping list. -#. On the left is how OS will see the disks and -#. on the right current GRUB vision. -#: grub-core/commands/i386/pc/drivemap.c:191 -msgid "OS disk #num ------> GRUB/BIOS device" -msgstr "OS Laufwerk #Num ------> GRUB/BIOS-Gerät" - -#: grub-core/commands/i386/pc/drivemap.c:413 -msgid "-l | -r | [-s] grubdev osdisk." -msgstr "-l | -r | [-s] grubdev osdisk." - -#: grub-core/commands/i386/pc/drivemap.c:414 -msgid "Manage the BIOS drive mappings." -msgstr "BIOS-Laufwerkszuordnungen verwalten." - -#: grub-core/commands/i386/pc/halt.c:31 -msgid "Do not use APM to halt the computer." -msgstr "Zum Abschalten des Rechners kein APM verwenden." - -#: grub-core/commands/i386/pc/halt.c:119 -msgid "Halt the system, if possible using APM." -msgstr "Das System anhalten, wenn möglich, mit APM." - -#: grub-core/commands/i386/pc/lsapm.c:75 -msgid "no APM found" -msgstr "Kein APM gefunden" - -#: grub-core/commands/i386/pc/lsapm.c:77 -#, c-format -msgid "" -"Version %u.%u\n" -"32-bit CS = 0x%x, len = 0x%x, offset = 0x%x\n" -"16-bit CS = 0x%x, len = 0x%x\n" -"DS = 0x%x, len = 0x%x\n" -msgstr "" -"Version %u.%u\n" -"32-bit CS = 0x%x, len = 0x%x, offset = 0x%x\n" -"16-bit CS = 0x%x, len = 0x%x\n" -"DS = 0x%x, len = 0x%x\n" - -#: grub-core/commands/i386/pc/lsapm.c:86 -msgid "16-bit protected interface supported\n" -msgstr "Geschütze 16-bit-Schnittstelle unterstützt\n" - -#: grub-core/commands/i386/pc/lsapm.c:87 -msgid "16-bit protected interface unsupported\n" -msgstr "Geschütze 16-bit-Schnittstelle nicht unterstützt\n" - -#: grub-core/commands/i386/pc/lsapm.c:89 -msgid "32-bit protected interface supported\n" -msgstr "Geschütze 32-bit-Schnittstelle unterstützt\n" - -#: grub-core/commands/i386/pc/lsapm.c:90 -msgid "32-bit protected interface unsupported\n" -msgstr "Geschütze 32-bit-Schnittstelle nicht unterstützt\n" - -#: grub-core/commands/i386/pc/lsapm.c:92 -msgid "CPU Idle slows down processor\n" -msgstr "CPU-Leerlauf verlangsamt den Prozessor\n" - -#: grub-core/commands/i386/pc/lsapm.c:93 -msgid "CPU Idle doesn't slow down processor\n" -msgstr "CPU-Leerlauf verlangsamt den Prozessor nicht\n" - -#: grub-core/commands/i386/pc/lsapm.c:95 -msgid "APM disabled\n" -msgstr "APM deaktiviert\n" - -#: grub-core/commands/i386/pc/lsapm.c:95 -msgid "APM enabled\n" -msgstr "APM aktiviert\n" - -#: grub-core/commands/i386/pc/lsapm.c:97 -msgid "APM disengaged\n" -msgstr "APM deaktiviert\n" - -#: grub-core/commands/i386/pc/lsapm.c:97 -msgid "APM engaged\n" -msgstr "APM aktiviert\n" - -#: grub-core/commands/i386/pc/lsapm.c:107 -msgid "Show APM information." -msgstr "APM-Informationen anzeigen." - -#. TRANSLATORS: It's musical notes, not the notes -#. you take. Play command expects arguments which can -#. be either a filename or tempo+notes. -#. This error happens if none is specified. -#: grub-core/commands/i386/pc/play.c:88 -msgid "filename or tempo and notes expected" -msgstr "Dateiname oder Tempo und Noten erwartet" - -#: grub-core/commands/i386/pc/play.c:113 grub-core/commands/i386/pc/play.c:144 -#, c-format -msgid "Invalid tempo in %s" -msgstr "Ungültiges Tempo in %s" - -#: grub-core/commands/i386/pc/play.c:151 grub-core/commands/macbless.c:172 -#: grub-core/fs/archelp.c:260 grub-core/fs/bfs.c:621 grub-core/fs/bfs.c:704 -#: grub-core/fs/btrfs.c:1726 grub-core/fs/btrfs.c:1755 -#: grub-core/fs/btrfs.c:1799 grub-core/fs/btrfs.c:1882 -#: grub-core/fs/btrfs.c:1906 grub-core/fs/fshelp.c:257 grub-core/fs/jfs.c:696 -#: grub-core/fs/minix.c:426 grub-core/fs/ufs.c:544 grub-core/fs/zfs/zfs.c:2083 -#: grub-core/fs/zfs/zfs.c:2095 grub-core/fs/zfs/zfs.c:2301 -#: grub-core/net/http.c:120 -#, c-format -msgid "file `%s' not found" -msgstr "Datei «%s» nicht gefunden" - -#: grub-core/commands/i386/pc/play.c:162 grub-core/commands/i386/pc/play.c:171 -#: grub-core/kern/misc.c:419 grub-core/script/execute.c:138 -#: grub-core/script/execute.c:244 -msgid "unrecognized number" -msgstr "Zahl nicht erkannt" - -#: grub-core/commands/i386/pc/play.c:190 -msgid "FILE | TEMPO [PITCH1 DURATION1] [PITCH2 DURATION2] ... " -msgstr "DATEI | TEMPO [TONHÖHE1 DAUER1] [TONHÖHE2 DAUER2] ... " - -#: grub-core/commands/i386/pc/play.c:191 -msgid "Play a tune." -msgstr "Einen Klang abspielen." - -#: grub-core/commands/i386/pc/sendkey.c:39 -msgid "set numlock mode" -msgstr "Numlock-Modus festlegen" - -#: grub-core/commands/i386/pc/sendkey.c:40 -msgid "set capslock mode" -msgstr "Feststelltasten-Modus festlegen" - -#: grub-core/commands/i386/pc/sendkey.c:41 -msgid "set scrolllock mode" -msgstr "Scrolllock-Modus festlegen" - -#: grub-core/commands/i386/pc/sendkey.c:42 -msgid "set insert mode" -msgstr "Einfügen-Modus festlegen" - -#: grub-core/commands/i386/pc/sendkey.c:43 -msgid "set pause mode" -msgstr "Pause-Modus festlegen" - -#: grub-core/commands/i386/pc/sendkey.c:44 -msgid "press left shift" -msgstr "Linke Umschalttaste drücken" - -#: grub-core/commands/i386/pc/sendkey.c:45 -msgid "press right shift" -msgstr "Rechte Umschalttaste drücken" - -#: grub-core/commands/i386/pc/sendkey.c:46 -msgid "press SysRq" -msgstr "SysRq-Taste drücken" - -#: grub-core/commands/i386/pc/sendkey.c:47 -msgid "press NumLock key" -msgstr "NumLock-Taste drücken" - -#: grub-core/commands/i386/pc/sendkey.c:48 -msgid "press CapsLock key" -msgstr "CapsLock-Taste drücken" - -#: grub-core/commands/i386/pc/sendkey.c:49 -msgid "press ScrollLock key" -msgstr "ScrollLock-Taste drücken" - -#: grub-core/commands/i386/pc/sendkey.c:50 -msgid "press Insert key" -msgstr "Insert-Taste drücken" - -#: grub-core/commands/i386/pc/sendkey.c:51 -msgid "press left alt" -msgstr "Linke Alt-Taste drücken" - -#: grub-core/commands/i386/pc/sendkey.c:52 -msgid "press right alt" -msgstr "Rechte Alt-Taste drücken" - -#: grub-core/commands/i386/pc/sendkey.c:53 -msgid "press left ctrl" -msgstr "Linke Ctrl-Taste drücken" - -#: grub-core/commands/i386/pc/sendkey.c:54 -msgid "press right ctrl" -msgstr "Rechte Ctrl-Taste drücken" - -#: grub-core/commands/i386/pc/sendkey.c:55 -msgid "don't update LED state" -msgstr "LED-Status nicht aktualisieren" - -#: grub-core/commands/i386/pc/sendkey.c:372 -msgid "[KEYSTROKE1] [KEYSTROKE2] ..." -msgstr "[KÜRZEL1] [KÜRZEL2] ..." - -#. TRANSLATORS: It can emulate multiple -#. keypresses. -#: grub-core/commands/i386/pc/sendkey.c:375 -msgid "Emulate a keystroke sequence" -msgstr "Eine Tastatursequenz emulieren" - -#: grub-core/commands/i386/rdmsr.c:37 grub-core/commands/iorw.c:34 -#: grub-core/commands/memrw.c:33 grub-core/commands/setpci.c:73 -msgid "Save read value into variable VARNAME." -msgstr "Gelesenen Wert in Variable VARNAME speichern." - -#: grub-core/commands/i386/rdmsr.c:38 grub-core/commands/iorw.c:35 -#: grub-core/commands/memrw.c:34 grub-core/commands/probe.c:40 -#: grub-core/commands/search_wrap.c:40 grub-core/commands/setpci.c:74 -#: grub-core/commands/tr.c:32 -msgid "VARNAME" -msgstr "VARNAME" - -#: grub-core/commands/i386/rdmsr.c:55 grub-core/commands/i386/rdmsr.c:60 -#: grub-core/commands/i386/rdmsr.c:65 grub-core/commands/i386/wrmsr.c:47 -#: grub-core/commands/i386/wrmsr.c:52 grub-core/commands/i386/wrmsr.c:57 -msgid "unsupported instruction" -msgstr "Nicht unterstützte Anweisung" - -#: grub-core/commands/i386/rdmsr.c:77 grub-core/commands/i386/wrmsr.c:69 -#: grub-core/commands/i386/wrmsr.c:77 grub-core/net/dns.c:727 -msgid "invalid argument" -msgstr "Ungültiger Parameter" - -#: grub-core/commands/i386/rdmsr.c:94 grub-core/commands/memrw.c:125 -#: grub-core/commands/memrw.c:129 grub-core/commands/memrw.c:133 -msgid "ADDR" -msgstr "ADDR" - -#: grub-core/commands/i386/rdmsr.c:95 -msgid "Read a CPU model specific register." -msgstr "Ein für das CPU-Modell spezifisches Register lesen." - -#: grub-core/commands/i386/wrmsr.c:86 -msgid "ADDR VALUE" -msgstr "ADR WERT" - -#: grub-core/commands/i386/wrmsr.c:87 -msgid "Write a value to a CPU model specific register." -msgstr "Einen Wert in das für das CPU-Modell spezifische Register schreiben." - -#: grub-core/commands/ieee1275/suspend.c:34 -msgid "Run `go' to resume GRUB." -msgstr "Geben Sie «go» ein, um GRUB fortzusetzen." - -#: grub-core/commands/ieee1275/suspend.c:45 -msgid "Return to IEEE1275 prompt." -msgstr "Zum IEEE1275-Prompt zurückkehren." - -#: grub-core/commands/iorw.c:123 grub-core/commands/iorw.c:127 -#: grub-core/commands/iorw.c:131 grub-core/gdb/gdb.c:79 -msgid "PORT" -msgstr "PORT" - -#: grub-core/commands/iorw.c:123 -msgid "Read 8-bit value from PORT." -msgstr "8-bit-Wert von PORT lesen." - -#: grub-core/commands/iorw.c:127 -msgid "Read 16-bit value from PORT." -msgstr "16-bit-Wert von PORT lesen." - -#: grub-core/commands/iorw.c:131 -msgid "Read 32-bit value from PORT." -msgstr "32-bit-Wert von PORT lesen." - -#: grub-core/commands/iorw.c:135 grub-core/commands/iorw.c:139 -msgid "PORT VALUE [MASK]" -msgstr "PORT WERT [MASKE]" - -#: grub-core/commands/iorw.c:136 -msgid "Write 8-bit VALUE to PORT." -msgstr "8-bit-Wert nach PORT schreiben." - -#: grub-core/commands/iorw.c:140 -msgid "Write 16-bit VALUE to PORT." -msgstr "16-bit-Wert nach PORT schreiben." - -#: grub-core/commands/iorw.c:143 grub-core/commands/memrw.c:137 -#: grub-core/commands/memrw.c:141 grub-core/commands/memrw.c:145 -msgid "ADDR VALUE [MASK]" -msgstr "ADR WERT [MASKE]" - -#: grub-core/commands/iorw.c:144 -msgid "Write 32-bit VALUE to PORT." -msgstr "32-bit-Wert nach PORT schreiben." - -#: grub-core/commands/keylayouts.c:215 grub-core/commands/loadenv.c:61 -#: grub-core/commands/nativedisk.c:189 grub-core/efiemu/main.c:235 -#: grub-core/font/font.c:428 grub-core/gfxmenu/gfxmenu.c:63 -#: grub-core/kern/device.c:42 grub-core/kern/dl.c:740 -#, c-format -msgid "variable `%s' isn't set" -msgstr "Variable «%s» ist nicht gesetzt" - -#: grub-core/commands/keylayouts.c:301 -msgid "Load a keyboard layout." -msgstr "Eine Tastaturbelegung laden." - -#. TRANSLATORS: "Check" in a sense that if this key is pressed then -#. "true" is returned, otherwise "false". -#: grub-core/commands/keystatus.c:32 -msgid "Check Shift key." -msgstr "Umschalttaste überprüfen." - -#: grub-core/commands/keystatus.c:33 -msgid "Check Control key." -msgstr "Ctrl-Taste überprüfen." - -#: grub-core/commands/keystatus.c:34 -msgid "Check Alt key." -msgstr "Alt-Taste überprüfen." - -#. TRANSLATORS: there are 3 modifiers. -#: grub-core/commands/keystatus.c:106 -msgid "Check key modifier status." -msgstr "Status der Umschalttasten überprüfen." - -#: grub-core/commands/legacycfg.c:512 grub-core/commands/legacycfg.c:526 -#: grub-core/commands/legacycfg.c:546 grub-core/commands/legacycfg.c:559 -#: grub-core/commands/time.c:43 grub-core/script/function.c:109 -#: util/grub-file.c:100 util/grub-fstest.c:57 util/grub-mount.c:69 -#, c-format -msgid "can't find command `%s'" -msgstr "Befehl «%s» konnte nicht gefunden werden" - -#: grub-core/commands/legacycfg.c:813 grub-core/normal/auth.c:225 -#: util/grub-mkpasswd-pbkdf2.c:139 -msgid "Enter password: " -msgstr "Passwort eingeben:" - -#. TRANSLATORS: "legacy config" means -#. "config as used by grub-legacy". -#: grub-core/commands/legacycfg.c:837 -msgid "Parse legacy config in same context" -msgstr "Alte Konfiguration im gleichen Kontext laden" - -#: grub-core/commands/legacycfg.c:842 -msgid "Parse legacy config in new context" -msgstr "Alte Konfiguration im neuen Kontext laden" - -#: grub-core/commands/legacycfg.c:847 -msgid "Parse legacy config in same context taking only menu entries" -msgstr "Alte Konfiguration im gleichen Kontext laden, nur Menüeinträge" - -#: grub-core/commands/legacycfg.c:852 -msgid "Parse legacy config in new context taking only menu entries" -msgstr "Alte Konfiguration im neuen Kontext laden, nur Menüeinträge" - -#: grub-core/commands/legacycfg.c:856 -msgid "[--no-mem-option] [--type=TYPE] FILE [ARG ...]" -msgstr "[--no-mem-option] [--type=TYP] DATEI [ARG ...]" - -#: grub-core/commands/legacycfg.c:857 -msgid "Simulate grub-legacy `kernel' command" -msgstr "«kernel»-Befehl wie in grub-legacy simulieren" - -#: grub-core/commands/legacycfg.c:861 grub-core/commands/legacycfg.c:865 -msgid "FILE [ARG ...]" -msgstr "DATEI [ARG ...]" - -#: grub-core/commands/legacycfg.c:862 -msgid "Simulate grub-legacy `initrd' command" -msgstr "«initrd»-Befehl wie in grub-legacy simulieren" - -#: grub-core/commands/legacycfg.c:866 -msgid "Simulate grub-legacy `modulenounzip' command" -msgstr "«modulenounzip»-Befehl wie in grub-legacy simulieren" - -#: grub-core/commands/legacycfg.c:870 grub-core/commands/legacycfg.c:875 -msgid "[--md5] PASSWD [FILE]" -msgstr "[--md5] PASSWORT [DATEI]" - -#: grub-core/commands/legacycfg.c:871 -msgid "Simulate grub-legacy `password' command" -msgstr "«password»-Befehl wie in grub-legacy simulieren" - -#: grub-core/commands/legacycfg.c:876 -msgid "Simulate grub-legacy `password' command in menu entry mode" -msgstr "«password»-Befehl von grub-legacy im Menüeintragsmodus simulieren" - -#. TRANSLATORS: This option is used to override default filename -#. for loading and storing environment. -#: grub-core/commands/loadenv.c:37 -msgid "Specify filename." -msgstr "Dateiname angeben." - -#: grub-core/commands/loadenv.c:39 -msgid "Skip signature-checking of the environment file." -msgstr "Die Signaturüberprüfung der Umgebungsdatei überspringen." - -#: grub-core/commands/loadenv.c:451 -msgid "[-f FILE] [-s|--skip-sig] [variable_name_to_whitelist] [...]" -msgstr "[-f DATEI] [-s|--skip-sig] [Zu_überspringender_Variablenname] [...]" - -#: grub-core/commands/loadenv.c:452 -msgid "Load variables from environment block file." -msgstr "Variablen aus Blockdatei der Umgebung laden." - -#: grub-core/commands/loadenv.c:455 -msgid "[-f FILE]" -msgstr "[-f DATEI]" - -#: grub-core/commands/loadenv.c:456 -msgid "List variables from environment block file." -msgstr "Variablen aus Blockdatei der Umgebung auflisten." - -#: grub-core/commands/loadenv.c:460 -msgid "[-f FILE] variable_name [...]" -msgstr "[-f DATEI] Variablenname [...]" - -#: grub-core/commands/loadenv.c:461 -msgid "Save variables to environment block file." -msgstr "Variablen in die Blockdatei speichern." - -#: grub-core/commands/ls.c:40 -msgid "Show a long list with more detailed information." -msgstr "Lange Liste mit ausführlicheren Informationen anzeigen." - -#: grub-core/commands/ls.c:41 -msgid "Print sizes in a human readable format." -msgstr "Grössenwerte in menschenlesbarem Format ausgeben." - -#: grub-core/commands/ls.c:42 -msgid "List all files." -msgstr "Alle Dateien auflisten." - -#: grub-core/commands/ls.c:73 -msgid "Network protocols:" -msgstr "Netzwerkprotokolle:" - -#: grub-core/commands/ls.c:295 -msgid "[-l|-h|-a] [FILE ...]" -msgstr "[-l|-h|-a] [DATEI …]" - -#: grub-core/commands/ls.c:296 -msgid "List devices and files." -msgstr "Geräte und Dateien auflisten." - -#: grub-core/commands/lsacpi.c:255 -msgid "Show version 1 tables only." -msgstr "Nur Version-1-Tabellen darstellen." - -#: grub-core/commands/lsacpi.c:256 -msgid "Show version 2 and version 3 tables only." -msgstr "Nur Version-2- und Version-3-Tabellen anzeigen." - -#: grub-core/commands/lsacpi.c:306 -msgid "Show ACPI information." -msgstr "ACPI-Informationen anzeigen." - -#: grub-core/commands/lsmmap.c:31 -msgid "available RAM" -msgstr "verfügbarer RAM" - -#: grub-core/commands/lsmmap.c:32 -msgid "reserved RAM" -msgstr "reservierter RAM" - -#. TRANSLATORS: this refers to memory where ACPI tables are stored -#. and which can be used by OS once it loads ACPI tables. -#: grub-core/commands/lsmmap.c:35 -msgid "ACPI reclaimable RAM" -msgstr "Durch ACPI wiederverwendbarer Speicher" - -#. TRANSLATORS: this refers to memory which ACPI-compliant OS -#. is required to save accross hibernations. -#: grub-core/commands/lsmmap.c:38 -msgid "ACPI non-volatile storage RAM" -msgstr "Durch ACPI beanspruchter Speicherbereich (für Energiesparmodi)" - -#: grub-core/commands/lsmmap.c:39 -msgid "faulty RAM (BadRAM)" -msgstr "Fehlerhafter RAM (BadRAM)" - -#: grub-core/commands/lsmmap.c:40 -msgid "persistent RAM" -msgstr "Persistenter RAM" - -#: grub-core/commands/lsmmap.c:41 -msgid "persistent RAM (legacy)" -msgstr "Persistenter RAM (veraltet)" - -#: grub-core/commands/lsmmap.c:42 -msgid "RAM holding coreboot tables" -msgstr "RAM enthält Coreboot-Tabellen" - -#: grub-core/commands/lsmmap.c:43 -msgid "RAM holding firmware code" -msgstr "RAM enthält Firmware-Code" - -#: grub-core/commands/lsmmap.c:52 -#, c-format -msgid "base_addr = 0x%llx, length = 0x%llx, %s\n" -msgstr "base_addr = 0x%llx, Länge = 0x%llx, %s\n" - -#: grub-core/commands/lsmmap.c:55 -#, c-format -msgid "base_addr = 0x%llx, length = 0x%llx, type = 0x%x\n" -msgstr "base_addr = 0x%llx, Länge = 0x%llx, Typ = 0x%x\n" - -#: grub-core/commands/lsmmap.c:79 -msgid "List memory map provided by firmware." -msgstr "Von Firmware bereitgestellte Speicherzuordnung auflisten." - -#: grub-core/commands/lspci.c:232 -msgid "List PCI devices." -msgstr "PCI-Geräte auflisten." - -#: grub-core/commands/macbless.c:224 -msgid "Bless FILE of HFS or HFS+ partition for intel macs." -msgstr "" - -#: grub-core/commands/macbless.c:228 -msgid "Bless DIR of HFS or HFS+ partition for PPC macs." -msgstr "" - -#: grub-core/commands/memrw.c:125 -msgid "Read 8-bit value from ADDR." -msgstr "8-bit-Wert aus ADDR lesen." - -#: grub-core/commands/memrw.c:129 -msgid "Read 16-bit value from ADDR." -msgstr "16-bit-Wert aus ADDR lesen." - -#: grub-core/commands/memrw.c:133 -msgid "Read 32-bit value from ADDR." -msgstr "32-bit-Wert aus ADDR lesen." - -#: grub-core/commands/memrw.c:138 -msgid "Write 8-bit VALUE to ADDR." -msgstr "8-bit-Wert nach ADDR schreiben." - -#: grub-core/commands/memrw.c:142 -msgid "Write 16-bit VALUE to ADDR." -msgstr "16-bit-Wert nach ADDR schreiben." - -#: grub-core/commands/memrw.c:146 -msgid "Write 32-bit VALUE to ADDR." -msgstr "32-bit-Wert nach ADDR schreiben." - -#: grub-core/commands/menuentry.c:31 -msgid "Menu entry type." -msgstr "Typ des Menüeintrags." - -#: grub-core/commands/menuentry.c:31 grub-core/commands/menuentry.c:38 -#: grub-core/commands/menuentry.c:39 grub-core/gettext/gettext.c:520 -#: util/grub-fstest.c:520 util/grub-install.c:291 util/grub-install.c:304 -#: util/grub-mknetdir.c:51 util/grub-mkrescue.c:109 util/grub-mkrescue.c:110 -#: util/grub-mount.c:453 util/grub-render-label.c:65 -msgid "STRING" -msgstr "ZEICHENKETTE" - -#: grub-core/commands/menuentry.c:33 -msgid "List of users allowed to boot this entry." -msgstr "Liste der Benutzer, die diesen Eintrag booten dürfen." - -#: grub-core/commands/menuentry.c:33 -msgid "USERNAME[,USERNAME]" -msgstr "BENUTZERNAME[,BENUTZERNAME]" - -#: grub-core/commands/menuentry.c:36 -msgid "Keyboard key to quickly boot this entry." -msgstr "Tastenzuordnung für den Schnellstart dieses Eintrags." - -#: grub-core/commands/menuentry.c:36 -msgid "KEYBOARD_KEY" -msgstr "TASTE" - -#: grub-core/commands/menuentry.c:38 -msgid "Use STRING as menu entry body." -msgstr "ZEICHENKETTE als Inhalt des Menüeintrags verwenden." - -#: grub-core/commands/menuentry.c:39 -msgid "Menu entry identifier." -msgstr "Bezeichner des Menüeintrags." - -#. TRANSLATORS: menu entry can either be bootable by anyone or only by -#. handful of users. By default when security is active only superusers can -#. boot a given menu entry. With --unrestricted (this option) -#. anyone can boot it. -#: grub-core/commands/menuentry.c:44 -msgid "This entry can be booted by any user." -msgstr "Dieser Eintrag kann von jedem Benutzer gebootet werden." - -#: grub-core/commands/menuentry.c:323 grub-core/commands/menuentry.c:328 -#: grub-core/tests/test_blockarg.c:46 -msgid "BLOCK" -msgstr "BLOCK" - -#: grub-core/commands/menuentry.c:323 -msgid "Define a menu entry." -msgstr "Einen Menüeintrag definieren." - -#: grub-core/commands/menuentry.c:328 -msgid "Define a submenu." -msgstr "Ein Untermenü definieren." - -#. TRANSLATORS: this is module list header. Name -#. is module name, Ref Count is a reference counter -#. (how many modules or open descriptors use it). -#. Dependencies are the other modules it uses. -#. -#: grub-core/commands/minicmd.c:162 -msgid "Name\tRef Count\tDependencies\n" -msgstr "Name\tReferenzzähler\tAbhängigkeiten\n" - -#: grub-core/commands/minicmd.c:201 -msgid "Show this message." -msgstr "Diese Meldung anzeigen." - -#: grub-core/commands/minicmd.c:204 -msgid "ADDR [SIZE]" -msgstr "ADRESSE [GRÖssE]" - -#: grub-core/commands/minicmd.c:204 -msgid "Show memory contents." -msgstr "Inhalt des Speichers anzeigen." - -#: grub-core/commands/minicmd.c:207 grub-core/kern/corecmd.c:188 -#: util/grub-install.c:275 -msgid "MODULE" -msgstr "MODUL" - -#: grub-core/commands/minicmd.c:207 -msgid "Remove a module." -msgstr "Ein Modul entfernen." - -#: grub-core/commands/minicmd.c:210 -msgid "Show loaded modules." -msgstr "Geladene Module anzeigen." - -#: grub-core/commands/minicmd.c:213 -msgid "Exit from GRUB." -msgstr "GRUB beenden." - -#: grub-core/commands/mips/loongson/lsspd.c:42 -msgid "No CS5536 found" -msgstr "Kein CS5536 gefunden" - -#: grub-core/commands/mips/loongson/lsspd.c:45 -#, c-format -msgid "CS5536 at %d:%d.%d\n" -msgstr "CS5536 in %d:%d.%d\n" - -#. TRANSLATORS: System management bus is often used to access components like -#. RAM (info only, not data) or batteries. I/O space is where in memory -#. its ports are. -#: grub-core/commands/mips/loongson/lsspd.c:55 -#, c-format -msgid "System management bus controller I/O space is at 0x%x\n" -msgstr "" -"Ein-/Ausgabebereich des Systemverwaltungsbus-Controllers ist bei 0x%x\n" - -#. TRANSLATORS: it's shown in a report in a way -#. like number 1: ... number 2: ... -#. -#: grub-core/commands/mips/loongson/lsspd.c:66 -#, c-format -msgid "RAM slot number %d\n" -msgstr "RAM-Slotnummer %d\n" - -#: grub-core/commands/mips/loongson/lsspd.c:73 -#, c-format -msgid "Written SPD bytes: %d B.\n" -msgstr "Geschriebene SPD-Bytes: %d B.\n" - -#: grub-core/commands/mips/loongson/lsspd.c:74 -#, c-format -msgid "Total flash size: %d B.\n" -msgstr "Flash-Gesamtgrösse: %d B.\n" - -#: grub-core/commands/mips/loongson/lsspd.c:79 -msgid "Memory type: DDR2." -msgstr "Speichertyp: DDR2." - -#: grub-core/commands/mips/loongson/lsspd.c:83 -#, c-format -msgid "Part no: %s.\n" -msgstr "Teil-Nummer: %s.\n" - -#: grub-core/commands/mips/loongson/lsspd.c:86 -msgid "Memory type: Unknown." -msgstr "Speichertyp: Unbekannt." - -#: grub-core/commands/mips/loongson/lsspd.c:97 -msgid "Print Memory information." -msgstr "Speicher-Informationen anzeigen." - -#: grub-core/commands/nativedisk.c:118 grub-core/commands/probe.c:118 -#: grub-core/commands/probe.c:124 util/grub-probe.c:450 -#, c-format -msgid "%s does not support UUIDs" -msgstr "%s unterstützt keine UUIDs" - -#: grub-core/commands/nativedisk.c:325 -msgid "[MODULE1 MODULE2 ...]" -msgstr "[MODUL1 MODUL2 …]" - -#: grub-core/commands/nativedisk.c:326 -msgid "" -"Switch to native disk drivers. If no modules are specified default set (pata," -"ahci,usbms,ohci,uhci,ehci) is used" -msgstr "" -"Zu nativen Festplattentreibern wechseln. Falls keine Module angegeben " -"werden, wird die Vorgabe verwendet (pata,ahci,usbms,ohci,uhci,ehci)." - -#: grub-core/commands/parttool.c:40 -msgid "" -"Perform COMMANDS on partition.\n" -"Use `parttool PARTITION help' for the list of available commands." -msgstr "" -"BEFEHLE auf Partition ausführen.\n" -"Rufen Sie «parttool PARTITION help» auf, um eine\n" -"Liste der verfügbaren Befehle zu erhalten." - -#: grub-core/commands/parttool.c:123 -msgid "=VAL" -msgstr "=WERT" - -#: grub-core/commands/parttool.c:136 -#, c-format -msgid "Sorry, no parttool is available for %s\n" -msgstr "Für %s ist leider kein Partitionierungswerkzeug verfügbar\n" - -#: grub-core/commands/parttool.c:288 grub-core/lib/arg.c:285 -#: grub-core/lib/arg.c:351 -#, c-format -msgid "unknown argument `%s'" -msgstr "Unbekanntes Argument «%s»" - -#: grub-core/commands/parttool.c:344 -msgid "PARTITION COMMANDS" -msgstr "PARTITION BEFEHLE" - -#: grub-core/commands/password.c:85 -msgid "USER PASSWORD" -msgstr "BENUTZERPASSWORT" - -#: grub-core/commands/password.c:86 -msgid "Set user password (plaintext). Unrecommended and insecure." -msgstr "Benutzerpasswort (Klartext) festlegen. Nicht empfohlen, da unsicher." - -#. TRANSLATORS: it means that the string which -#. was supposed to be a password hash doesn't -#. have a correct format, not to password -#. mismatch. -#: grub-core/commands/password_pbkdf2.c:98 -#: grub-core/commands/password_pbkdf2.c:115 -#: grub-core/commands/password_pbkdf2.c:123 -#: grub-core/commands/password_pbkdf2.c:150 -#: grub-core/commands/password_pbkdf2.c:179 -msgid "invalid PBKDF2 password" -msgstr "Ungültiges PBKDF2-Passwort" - -#: grub-core/commands/password_pbkdf2.c:202 -msgid "USER PBKDF2_PASSWORD" -msgstr "BENUTZER PBKDF2_PASSWORT" - -#: grub-core/commands/password_pbkdf2.c:203 -msgid "Set user password (PBKDF2). " -msgstr "Benutzerpasswort festlegen (PBKDF2). " - -#: grub-core/commands/pcidump.c:39 grub-core/commands/setpci.c:69 -msgid "Select device by vendor and device IDs." -msgstr "Gerät nach Anbieter und Gerätekennungen auswählen." - -#: grub-core/commands/pcidump.c:40 grub-core/commands/setpci.c:70 -msgid "[vendor]:[device]" -msgstr "[Anbieter]:[Gerät]" - -#: grub-core/commands/pcidump.c:41 grub-core/commands/setpci.c:71 -msgid "Select device by its position on the bus." -msgstr "Gerät nach dessen Position auf dem Bus auswählen." - -#: grub-core/commands/pcidump.c:42 grub-core/commands/setpci.c:72 -msgid "[bus]:[slot][.func]" -msgstr "[bus]:[slot][.func]" - -#: grub-core/commands/pcidump.c:109 grub-core/commands/pcidump.c:138 -#: grub-core/commands/setpci.c:183 grub-core/commands/setpci.c:214 -#: grub-core/fs/zfs/zfs.c:3794 grub-core/kern/emu/hostdisk.c:458 -#: grub-core/kern/emu/hostdisk.c:473 grub-core/kern/file.c:44 -#, c-format -msgid "missing `%c' symbol" -msgstr "Symbol «%c» fehlt" - -#: grub-core/commands/pcidump.c:168 -msgid "[-s POSITION] [-d DEVICE]" -msgstr "[-s POSITION] [-d GERÄT]" - -#: grub-core/commands/pcidump.c:169 -msgid "Show raw dump of the PCI configuration space." -msgstr "Roh-Ausgabe des PCI-Konfigurationsraums anzeigen." - -#: grub-core/commands/pgp.c:45 -msgid "Skip signature-checking of the public key file." -msgstr "Die Signaturüberprüfung der öffentlichen Schlüsseldatei überspringen." - -#. TRANSLATORS: it's about GNUPG signatures. -#: grub-core/commands/pgp.c:71 grub-core/commands/pgp.c:81 -#: grub-core/commands/pgp.c:86 grub-core/commands/pgp.c:96 -#: grub-core/commands/pgp.c:103 grub-core/commands/pgp.c:107 -#: grub-core/commands/pgp.c:114 grub-core/commands/pgp.c:119 -#: grub-core/commands/pgp.c:124 grub-core/commands/pgp.c:128 -#: grub-core/commands/pgp.c:268 grub-core/commands/pgp.c:276 -#: grub-core/commands/pgp.c:281 grub-core/commands/pgp.c:289 -#: grub-core/commands/pgp.c:320 grub-core/commands/pgp.c:327 -#: grub-core/commands/pgp.c:332 grub-core/commands/pgp.c:342 -#: grub-core/commands/pgp.c:468 grub-core/commands/pgp.c:471 -#: grub-core/commands/pgp.c:474 grub-core/commands/pgp.c:477 -#: grub-core/commands/pgp.c:484 grub-core/commands/pgp.c:490 -#: grub-core/commands/pgp.c:665 -msgid "bad signature" -msgstr "Falsche Signatur" - -#. TRANSLATORS: %08x is 32-bit key id. -#: grub-core/commands/pgp.c:636 grub-core/commands/pgp.c:812 -#, c-format -msgid "public key %08x not found" -msgstr "Öffentlicher Schlüssel %08x wurde nicht gefunden" - -#: grub-core/commands/pgp.c:651 grub-core/disk/diskfilter.c:772 -#: grub-core/disk/diskfilter.c:782 grub-core/fs/ntfs.c:404 -#: grub-core/fs/zfs/zfs.c:1933 grub-core/normal/menu.c:428 -#, c-format -msgid "module `%s' isn't loaded" -msgstr "Modul «%s» ist nicht geladen" - -#: grub-core/commands/pgp.c:994 -msgid "[-s|--skip-sig] FILE SIGNATURE_FILE [PUBKEY_FILE]" -msgstr "[-s|--skip-sig] DATEI SIGNATURDATEI [SCHLÜSSELDATEI]" - -#: grub-core/commands/pgp.c:995 -msgid "Verify detached signature." -msgstr "Angehängte Signatur überprüfen." - -#: grub-core/commands/pgp.c:998 -msgid "[-s|--skip-sig] PUBKEY_FILE" -msgstr "[-s|--skip-sig] SCHLÜSSEL_DATEI" - -#: grub-core/commands/pgp.c:999 -msgid "Add PUBKEY_FILE to trusted keys." -msgstr "SCHLÜSSEL_DATEI zu vertrauenswürdigen Schlüsseln hinzufügen." - -#: grub-core/commands/pgp.c:1003 -msgid "Show the list of trusted keys." -msgstr "Vertrauenswürdige Schlüssel auflisten." - -#: grub-core/commands/pgp.c:1005 -msgid "PUBKEY_ID" -msgstr "SCHLÜSSEL_ID" - -#: grub-core/commands/pgp.c:1006 -msgid "Remove PUBKEY_ID from trusted keys." -msgstr "SCHLÜSSEL_ID aus den vertrauenswürdigen Schlüsseln entfernen." - -#: grub-core/commands/probe.c:40 grub-core/commands/tr.c:32 -msgid "Set a variable to return value." -msgstr "Eine Variable auf den Rückgabewert setzen." - -#. TRANSLATORS: It's a driver that is currently in use to access -#. the diven disk. -#: grub-core/commands/probe.c:43 -msgid "Determine driver." -msgstr "Treiber ermitteln." - -#: grub-core/commands/probe.c:44 -msgid "Determine partition map type." -msgstr "Typ der Partitionszuordnung bestimmen." - -#: grub-core/commands/probe.c:45 -msgid "Determine filesystem type." -msgstr "Dateisystemtyp ermitteln." - -#: grub-core/commands/probe.c:46 -msgid "Determine filesystem UUID." -msgstr "Dateisystem-UUID ermitteln." - -#: grub-core/commands/probe.c:47 -msgid "Determine filesystem label." -msgstr "Dateisystembezeichnung ermitteln." - -#: grub-core/commands/probe.c:139 grub-core/commands/probe.c:146 -#: util/grub-probe.c:462 -#, c-format -msgid "filesystem `%s' does not support labels" -msgstr "Dateisystem «%s» unterstützt keine Labels" - -#: grub-core/commands/probe.c:165 grub-core/fs/zfs/zfsinfo.c:430 -#: grub-core/loader/i386/bsd.c:169 util/grub-setup.c:223 -msgid "DEVICE" -msgstr "GERÄT" - -#: grub-core/commands/probe.c:166 -msgid "Retrieve device info." -msgstr "Info zum Gerät holen." - -#: grub-core/commands/read.c:85 -msgid "[ENVVAR]" -msgstr "[ENVVAR]" - -#: grub-core/commands/read.c:86 -msgid "Set variable with user input." -msgstr "Variable durch Benutzereingabe setzen." - -#: grub-core/commands/reboot.c:40 -msgid "Reboot the computer." -msgstr "Den Computer neu starten." - -#. TRANSLATORS: in regexp you can mark some -#. groups with parentheses. These groups are -#. then numbered and you can save some of -#. them in variables. In other programs -#. those components aree often referenced with -#. back slash, e.g. \1. Compare -#. sed -e 's,\([a-z][a-z]*\),lowercase=\1,g' -#. The whole matching component is saved in VARNAME, not its number. -#. -#: grub-core/commands/regexp.c:44 -msgid "Store matched component NUMBER in VARNAME." -msgstr "Entsprechende Komponenten-NUMMER in VARNAME speichern." - -#: grub-core/commands/regexp.c:45 -msgid "[NUMBER:]VARNAME" -msgstr "[ZAHL:]VARNAME" - -#. TRANSLATORS: This are two arguments. So it's -#. two separate units to translate and pay -#. attention not to reverse them. -#: grub-core/commands/regexp.c:157 -msgid "REGEXP STRING" -msgstr "REGEXP ZEICHENKETTE" - -#: grub-core/commands/regexp.c:158 -msgid "Test if REGEXP matches STRING." -msgstr "Prüfen, ob REGEXP auf ZEICHENKETTE passt." - -#: grub-core/commands/search.c:324 -msgid "NAME [VARIABLE] [HINTS]" -msgstr "NAME [VARIABLE] [HINTWEISE]" - -#: grub-core/commands/search_file.c:4 -msgid "" -"Search devices by file. If VARIABLE is specified, the first device found is " -"set to a variable." -msgstr "" -"Anhand von Dateien nach Geräten suchen. Falls VARIABLE angegeben wird, dann " -"wird das erste gefundene Gerät zum Setzen der Variable verwendet." - -#: grub-core/commands/search_label.c:4 -msgid "" -"Search devices by label. If VARIABLE is specified, the first device found is " -"set to a variable." -msgstr "" -"Anhand von Bezeichnungen nach Geräten suchen. Falls VARIABLE angegeben wird, " -"dann wird das erste gefundene Gerät zum Setzen der Variable verwendet." - -#: grub-core/commands/search_uuid.c:4 -msgid "" -"Search devices by UUID. If VARIABLE is specified, the first device found is " -"set to a variable." -msgstr "" -"Anhand von UUIDs nach Geräten suchen. Falls VARIABLE angegeben wird, dann " -"wird das erste gefundene Gerät zum Setzen der Variable verwendet." - -#: grub-core/commands/search_wrap.c:34 -msgid "Search devices by a file." -msgstr "Geräte nach Datei durchsuchen." - -#: grub-core/commands/search_wrap.c:35 -msgid "Search devices by a filesystem label." -msgstr "Geräte nach Dateisystembezeichnung durchsuchen." - -#: grub-core/commands/search_wrap.c:37 -msgid "Search devices by a filesystem UUID." -msgstr "Geräte nach Dateisystem-UUID durchsuchen." - -#: grub-core/commands/search_wrap.c:40 -msgid "Set a variable to the first device found." -msgstr "Eine Variable auf das erste gefundene Gerät setzen." - -#: grub-core/commands/search_wrap.c:42 -msgid "Do not probe any floppy drive." -msgstr "Kein Diskettenlaufwerk überprüfen." - -#: grub-core/commands/search_wrap.c:44 -msgid "" -"First try the device HINT. If HINT ends in comma, also try subpartitions" -msgstr "" -"Zuerst das Gerät HINWEIS versuchen. Falls HINWEIS mit Komma endet, auch " -"Unterpartitionen versuchen" - -#: grub-core/commands/search_wrap.c:45 grub-core/commands/search_wrap.c:49 -#: grub-core/commands/search_wrap.c:53 grub-core/commands/search_wrap.c:57 -#: grub-core/commands/search_wrap.c:61 grub-core/commands/search_wrap.c:65 -msgid "HINT" -msgstr "HINWEIS" - -#: grub-core/commands/search_wrap.c:47 -msgid "" -"First try the device HINT if currently running on IEEE1275. If HINT ends in " -"comma, also try subpartitions" -msgstr "" -"Zuerst das Gerät HINWEIS versuchen (bei IEEE1275). Falls HINWEIS mit Komma " -"endet, auch Unterpartitionen versuchen" - -#: grub-core/commands/search_wrap.c:51 -msgid "" -"First try the device HINT if currently running on BIOS. If HINT ends in " -"comma, also try subpartitions" -msgstr "" -"Zuerst das Gerät HINWEIS versuchen (für aktuell laufendes BIOS). Falls " -"HINWEIS mit Komma endet, auch Unterpartitionen versuchen" - -#: grub-core/commands/search_wrap.c:55 -msgid "" -"First try the device HINT if direct hardware access is supported. If HINT " -"ends in comma, also try subpartitions" -msgstr "" -"Zuerst das Gerät HINWEIS versuchen, falls direkter Hardwarezugriff " -"unterstützt wird. Falls HINWEIS mit Komma endet, auch Unterpartitionen " -"versuchen" - -#: grub-core/commands/search_wrap.c:59 -msgid "" -"First try the device HINT if currently running on EFI. If HINT ends in " -"comma, also try subpartitions" -msgstr "" -"Zuerst das Gerät HINWEIS versuchen (für aktuell laufendes EFI). Falls " -"HINWEIS mit Komma endet, auch Unterpartitionen versuchen" - -#: grub-core/commands/search_wrap.c:63 -msgid "" -"First try the device HINT if currently running on ARC. If HINT ends in " -"comma, also try subpartitions" -msgstr "" -"Zuerst das Gerät HINWEIS versuchen, falls aktuell laufende ARC. Falls " -"HINWEIS mit Komma endet, auch Unterpartitionen versuchen" - -#: grub-core/commands/search_wrap.c:207 -msgid "[-f|-l|-u|-s|-n] [--hint HINT [--hint HINT] ...] NAME" -msgstr "[-f|-l|-u|-s|-n] [--hint HINWEIS [--hint HINT] ...] NAME" - -#: grub-core/commands/search_wrap.c:209 -msgid "" -"Search devices by file, filesystem label or filesystem UUID. If --set is " -"specified, the first device found is set to a variable. If no variable name " -"is specified, `root' is used." -msgstr "" -"Anhand von Dateien, Dateisystembezeichnungen oder Dateisystem-UUIDs nach " -"Geräten suchen. Falls --set angegeben wird, dann wird das erste gefundene " -"Gerät zum Setzen der Variable verwendet. Falls keine Variable angegeben " -"wird, dann wird «root» verwendet" - -#: grub-core/commands/setpci.c:132 -#, c-format -msgid "Register %x of %x:%02x.%x is %x\n" -msgstr "Register %x von %x:%02x.%x ist %x\n" - -#: grub-core/commands/setpci.c:333 -msgid "[-s POSITION] [-d DEVICE] [-v VAR] REGISTER[=VALUE[:MASK]]" -msgstr "[-s POSITION] [-d GERÄT] [-v VAR] REGISTER[=WERT[:MASKE]]" - -#: grub-core/commands/setpci.c:335 -msgid "Manipulate PCI devices." -msgstr "PCI-Geräte bearbeiten." - -#: grub-core/commands/sleep.c:32 -msgid "Verbose countdown." -msgstr "Ausführlicher Countdown." - -#: grub-core/commands/sleep.c:33 -msgid "Allow to interrupt with ESC." -msgstr "Unterbrechung mit ESC erlauben." - -#: grub-core/commands/sleep.c:109 -msgid "NUMBER_OF_SECONDS" -msgstr "ANZAHL_DER_SEKUNDEN" - -#: grub-core/commands/sleep.c:110 -msgid "Wait for a specified number of seconds." -msgstr "Die angegebene Anzahl an Sekunden warten." - -#: grub-core/commands/syslinuxcfg.c:50 util/grub-syslinux2cfg.c:66 -msgid "root directory of the syslinux disk [default=/]." -msgstr "Wurzelverzeichnis der Syslinux-Disk [Vorgabe=/]." - -#: grub-core/commands/syslinuxcfg.c:53 util/grub-syslinux2cfg.c:72 -msgid "" -"current directory of syslinux [default is parent directory of input file]." -msgstr "" -"Aktuelles Verzeichnis für Syslinux [Vorgabe ist das übergeordnete " -"Verzeichnis der Eingabedatei]." - -#: grub-core/commands/syslinuxcfg.c:55 util/grub-syslinux2cfg.c:75 -msgid "assume input is an isolinux configuration file." -msgstr "Eingabe als Isolinux-Konfigurationsdatei auffassen." - -#: grub-core/commands/syslinuxcfg.c:56 util/grub-syslinux2cfg.c:76 -msgid "assume input is a pxelinux configuration file." -msgstr "Eingabe als Pxelinux-Konfigurationsdatei auffassen." - -#: grub-core/commands/syslinuxcfg.c:57 util/grub-syslinux2cfg.c:77 -msgid "assume input is a syslinux configuration file." -msgstr "Eingabe als Syslinux-Konfigurationsdatei auffassen." - -#. TRANSLATORS: "syslinux config" means -#. "config as used by syslinux". -#: grub-core/commands/syslinuxcfg.c:189 -msgid "Execute syslinux config in same context" -msgstr "Syslinux-Konfiguration im gleichen Kontext laden" - -#: grub-core/commands/syslinuxcfg.c:195 -msgid "Execute syslinux config in new context" -msgstr "Syslinux-Konfiguration im neuen Kontext laden" - -#: grub-core/commands/syslinuxcfg.c:201 -msgid "Execute syslinux config in same context taking only menu entries" -msgstr "Syslinux-Konfiguration im gleichen Kontext laden, nur Menüeinträge" - -#: grub-core/commands/syslinuxcfg.c:207 -msgid "Execute syslinux config in new context taking only menu entries" -msgstr "Syslinux-Konfiguration im neuen Kontext laden, nur Menüeinträge" - -#: grub-core/commands/terminal.c:90 -msgid "no terminal specified" -msgstr "Kein Terminal angegeben" - -#: grub-core/commands/terminal.c:112 grub-core/commands/terminal.c:139 -#, c-format -msgid "terminal `%s' isn't found" -msgstr "Terminal «%s» wurde nicht gefunden" - -#: grub-core/commands/terminal.c:244 -msgid "Active input terminals:" -msgstr "Aktive Eingabeterminals:" - -#: grub-core/commands/terminal.c:245 -msgid "Available input terminals:" -msgstr "Verfügbare Eingabeterminals:" - -#: grub-core/commands/terminal.c:261 -msgid "Active output terminals:" -msgstr "Aktive Ausgabeterminals:" - -#: grub-core/commands/terminal.c:262 -msgid "Available output terminals:" -msgstr "Verfügbare Ausgabeterminals:" - -#: grub-core/commands/terminal.c:271 grub-core/commands/terminal.c:276 -msgid "[--append|--remove] [TERMINAL1] [TERMINAL2] ..." -msgstr "[--append|--remove] [TERMINAL1] [TERMINAL2] ..." - -#: grub-core/commands/terminal.c:273 -msgid "List or select an input terminal." -msgstr "Eingabeterminal listen oder wählen." - -#: grub-core/commands/terminal.c:278 -msgid "List or select an output terminal." -msgstr "Ausgabeterminal listen oder wählen." - -#: grub-core/commands/test.c:444 -msgid "EXPRESSION ]" -msgstr "AUSDRUCK ]" - -#: grub-core/commands/test.c:444 grub-core/commands/test.c:447 -msgid "Evaluate an expression." -msgstr "Einen Ausdruck auswerten." - -#: grub-core/commands/test.c:447 -msgid "EXPRESSION" -msgstr "AUSDRUCK" - -#: grub-core/commands/testload.c:164 -msgid "Load the same file in multiple ways." -msgstr "Gleiche Datei mehrfach laden." - -#: grub-core/commands/testspeed.c:35 -msgid "Specify size for each read operation" -msgstr "Grösse für jeden Lesevorgang angeben" - -#: grub-core/commands/testspeed.c:58 -msgid "invalid block size" -msgstr "Ungültige Blockgrösse" - -#: grub-core/commands/testspeed.c:80 -#, c-format -msgid "File size: %s\n" -msgstr "Dateigrösse: %s\n" - -#: grub-core/commands/testspeed.c:83 -#, c-format -msgid "Elapsed time: %d.%03d s \n" -msgstr "Verstrichene Zeit: %d.%03d s \n" - -#: grub-core/commands/testspeed.c:92 -#, c-format -msgid "Speed: %s \n" -msgstr "Geschwindigkeit: %s \n" - -#: grub-core/commands/testspeed.c:107 -msgid "[-s SIZE] FILENAME" -msgstr "[-s GRÖssE] DATEINAME" - -#: grub-core/commands/testspeed.c:108 -msgid "Test file read speed." -msgstr "Dateilesegeschwindigkeit testen." - -#: grub-core/commands/time.c:38 grub-core/script/execute.c:974 -msgid "no command is specified" -msgstr "Kein Befehl angegeben" - -#: grub-core/commands/time.c:50 -#, c-format -msgid "Elapsed time: %d.%03d seconds \n" -msgstr "Verstrichene Zeit: %d.%03d Sekunden \n" - -#: grub-core/commands/time.c:61 -msgid "COMMAND [ARGS]" -msgstr "BEFEHL [ARGUMENTE]" - -#: grub-core/commands/time.c:62 -msgid "Measure time used by COMMAND" -msgstr "Von BEFEHL benötigte Zeit messen" - -#: grub-core/commands/tr.c:33 -msgid "Translate to upper case." -msgstr "In Grossschreibung umwandeln." - -#: grub-core/commands/tr.c:34 -msgid "Translate to lower case." -msgstr "In Kleinschreibung umwandeln." - -#: grub-core/commands/tr.c:119 -msgid "[OPTIONS] [SET1] [SET2] [STRING]" -msgstr "[OPTIONEN] [MENGE1] [MENGE2] [ZEICHENKETTE]" - -#: grub-core/commands/tr.c:120 -msgid "Translate SET1 characters to SET2 in STRING." -msgstr "Zeichen der MENGE1 in Zeichen der MENGE2 in ZEICHENKETTE übersetzen." - -#. TRANSLATORS: it's a command description. -#: grub-core/commands/true.c:50 -msgid "Do nothing, successfully." -msgstr "Nichts tun, erfolgreich." - -#. TRANSLATORS: it's a command description. -#: grub-core/commands/true.c:54 -msgid "Do nothing, unsuccessfully." -msgstr "Nichts tun, nicht erfolgreich." - -#: grub-core/commands/usbtest.c:221 -msgid "Test USB support." -msgstr "USB-Unterstützung überprüfen." - -#: grub-core/commands/verifiers.c:120 -#, c-format -msgid "verification requested but nobody cares: %s" -msgstr "Verifizierung ist erforderlich, aber niemand nimmt Notiz davon: %s" - -#: grub-core/commands/verifiers.c:140 -msgid "big file signature isn't implemented yet" -msgstr "Grosse Dateisignatur ist noch nicht implementiert" - -#: grub-core/commands/videoinfo.c:61 -msgid "Text-only " -msgstr "Nur Text" - -#. TRANSLATORS: "Direct color" is a mode when the color components -#. are written dirrectly into memory. -#: grub-core/commands/videoinfo.c:66 -#, c-format -msgid "Direct color, mask: %d/%d/%d/%d pos: %d/%d/%d/%d" -msgstr "Direkte Farbe, Maske: %d/%d/%d/%d Pos.: %d/%d/%d/%d" - -#. TRANSLATORS: In "paletted color" mode you write the index of the color -#. in the palette. Synonyms include "packed pixel". -#: grub-core/commands/videoinfo.c:78 -msgid "Paletted " -msgstr "Palettiert " - -#: grub-core/commands/videoinfo.c:80 -msgid "YUV " -msgstr "YUV " - -#. TRANSLATORS: "Planar" is the video memory where you have to write -#. in several different banks "plans" to control the different color -#. components of the same pixel. -#: grub-core/commands/videoinfo.c:85 -msgid "Planar " -msgstr "Planar " - -#: grub-core/commands/videoinfo.c:87 -msgid "Hercules " -msgstr "Hercules " - -#: grub-core/commands/videoinfo.c:89 -msgid "CGA " -msgstr "CGA " - -#. TRANSLATORS: Non-chain 4 is a 256-color planar -#. (unchained) video memory mode. -#: grub-core/commands/videoinfo.c:93 -msgid "Non-chain 4 " -msgstr "Non-chain 4 " - -#: grub-core/commands/videoinfo.c:95 -msgid "Monochrome " -msgstr "Schwarzweiss " - -#: grub-core/commands/videoinfo.c:97 -msgid "Unknown video mode " -msgstr "Unbekannter Videomodus" - -#: grub-core/commands/videoinfo.c:111 -msgid " EDID checksum invalid" -msgstr " EDID-Prüfsumme ist ungültig" - -#: grub-core/commands/videoinfo.c:116 -#, c-format -msgid " EDID version: %u.%u\n" -msgstr " EDID-Version: %u.%u\n" - -#: grub-core/commands/videoinfo.c:120 -#, c-format -msgid " Preferred mode: %ux%u\n" -msgstr " Bevorzugter Modus: %ux%u\n" - -#: grub-core/commands/videoinfo.c:123 -msgid " No preferred mode available\n" -msgstr " Kein bevorzugter Modus verfügbar\n" - -#: grub-core/commands/videoinfo.c:146 grub-core/video/video.c:490 -#: grub-core/video/video.c:498 grub-core/video/video.c:509 -#: grub-core/video/video.c:520 grub-core/video/video.c:528 -#, c-format -msgid "invalid video mode specification `%s'" -msgstr "Ungültige Angabe «%s» des Grafikmodus" - -#: grub-core/commands/videoinfo.c:168 -msgid "List of supported video modes:" -msgstr "Liste der unterstützten Videomodi:" - -#: grub-core/commands/videoinfo.c:169 -msgid "Legend: mask/position=red/green/blue/reserved" -msgstr "Legende: Maske/Position=Rot/Grün/Blau/Reserviert" - -#: grub-core/commands/videoinfo.c:176 -#, c-format -msgid "Adapter `%s':\n" -msgstr "Adapter «%s»:\n" - -#: grub-core/commands/videoinfo.c:180 -msgid " No info available" -msgstr " Keine Informationen verfügbar" - -#: grub-core/commands/videoinfo.c:198 -msgid " Failed to initialize video adapter" -msgstr " Grafikadapter konnte nicht initialisiert werden" - -#. TRANSLATORS: "x" has to be entered in, -#. like an identifier, so please don't -#. use better Unicode codepoints. -#: grub-core/commands/videoinfo.c:239 grub-core/commands/videoinfo.c:248 -msgid "[WxH[xD]]" -msgstr "[BxH[xT]]" - -#: grub-core/commands/videoinfo.c:240 grub-core/commands/videoinfo.c:249 -msgid "" -"List available video modes. If resolution is given show only modes matching " -"it." -msgstr "" -"Verfügbare Grafikmodi auflisten. Falls Auflösung angegeben ist, nur Modi " -"dieser Auflösung anzeigen." - -#. TRANSLATORS: "x" has to be entered in, -#. like an identifier, so please don't -#. use better Unicode codepoints. -#: grub-core/commands/videotest.c:225 -msgid "[WxH]" -msgstr "[BxH]" - -#. TRANSLATORS: Here, on the other hand, it's -#. nicer to use unicode cross instead of x. -#: grub-core/commands/videotest.c:228 -msgid "Test video subsystem in mode WxH." -msgstr "Das Video-Subsystem im Modus BxH überprüfen." - -#: grub-core/commands/videotest.c:231 -msgid "Test video subsystem." -msgstr "Das Video-Subsystem überprüfen." - -#: grub-core/commands/xen/lsxen.c:80 grub-core/commands/xen/lsxen.c:82 -msgid "[DIR]" -msgstr "[VERZ]" - -#: grub-core/commands/xen/lsxen.c:81 grub-core/commands/xen/lsxen.c:83 -msgid "List Xen storage." -msgstr "Xen-Speicherung auflisten." - -#. TRANSLATORS: GRUBUUID stands for "filesystem -#. UUID as used in GRUB". -#: grub-core/commands/xnu_uuid.c:110 -msgid "[-l] GRUBUUID [VARNAME]" -msgstr "[-l] GRUBUUID [VARNAME]" - -#: grub-core/commands/xnu_uuid.c:111 -msgid "" -"Transform 64-bit UUID to format suitable for XNU. If -l is given keep it " -"lowercase as done by blkid." -msgstr "" -"64-bit-UUID in ein von XNU verarbeitbares Format umwandeln. Falls -l " -"angegeben ist, bitte Kleinschreibung beibehalten (wie von blkid)" - -#: grub-core/disk/arc/arcdisk.c:248 grub-core/disk/efi/efidisk.c:603 -#: grub-core/disk/i386/pc/biosdisk.c:498 grub-core/disk/i386/pc/biosdisk.c:543 -#: grub-core/disk/ieee1275/nand.c:198 grub-core/disk/ieee1275/obdisk.c:527 -#: grub-core/disk/ieee1275/ofdisk.c:586 -#, c-format -msgid "failure reading sector 0x%llx from `%s'" -msgstr "Lesen des Sektors 0x%llx von «%s» ist fehlgeschlagen" - -#: grub-core/disk/arc/arcdisk.c:284 grub-core/disk/efi/efidisk.c:626 -#: grub-core/disk/i386/pc/biosdisk.c:548 grub-core/disk/ieee1275/ofdisk.c:606 -#, c-format -msgid "failure writing sector 0x%llx to `%s'" -msgstr "Schreiben des Sektors 0x%llx nach «%s» ist fehlgeschlagen" - -#: grub-core/disk/cryptodisk.c:40 -msgid "Mount by UUID." -msgstr "Nach UUID einhängen." - -#. TRANSLATORS: It's still restricted to cryptodisks only. -#: grub-core/disk/cryptodisk.c:42 -msgid "Mount all." -msgstr "Alles einhängen." - -#: grub-core/disk/cryptodisk.c:43 -msgid "Mount all volumes with `boot' flag set." -msgstr "Alle Datenträger einhängen, für die das «boot»-Flag gesetzt ist." - -#. TRANSLATORS: The first %s is the file being looked at, the second %s is -#. the error message. -#: grub-core/disk/cryptodisk.c:526 grub-core/kern/emu/hostdisk.c:152 -#: grub-core/kern/emu/hostdisk.c:262 grub-core/kern/emu/hostdisk.c:434 -#: grub-core/kern/emu/misc.c:168 grub-core/kern/emu/misc.c:174 -#: grub-core/kern/emu/misc.c:196 grub-core/osdep/bsd/getroot.c:92 -#: grub-core/osdep/bsd/getroot.c:168 grub-core/osdep/hurd/getroot.c:68 -#: grub-core/osdep/linux/blocklist.c:65 grub-core/osdep/linux/getroot.c:150 -#: grub-core/osdep/linux/hostdisk.c:194 grub-core/osdep/linux/hostdisk.c:421 -#: grub-core/osdep/linux/ofpath.c:417 grub-core/osdep/linux/ofpath.c:422 -#: grub-core/osdep/linux/ofpath.c:517 grub-core/osdep/linux/ofpath.c:530 -#: grub-core/osdep/sun/getroot.c:110 grub-core/osdep/windows/blocklist.c:98 -#: grub-core/tests/video_checksum.c:279 util/editenv.c:46 util/glue-efi.c:115 -#: util/glue-efi.c:120 util/glue-efi.c:130 util/grub-editenv.c:138 -#: util/grub-editenv.c:192 util/grub-file.c:83 util/grub-fstest.c:128 -#: util/grub-fstest.c:568 util/grub-install-common.c:92 -#: util/grub-install-common.c:94 util/grub-install-common.c:101 -#: util/grub-install-common.c:529 util/grub-menulst2cfg.c:53 -#: util/grub-menulst2cfg.c:68 util/grub-mkimage.c:292 util/grub-mklayout.c:504 -#: util/grub-mklayout.c:516 util/grub-mknetdir.c:133 util/grub-mknetdir.c:151 -#: util/grub-mkrescue.c:627 util/grub-mkrescue.c:631 util/grub-mkrescue.c:879 -#: util/grub-mkrescue.c:883 util/grub-mkstandalone.c:253 util/grub-mount.c:498 -#: util/grub-render-label.c:169 util/grub-script-check.c:175 -#: util/grub-syslinux2cfg.c:181 util/grub-syslinux2cfg.c:191 -#: util/grub-syslinux2cfg.c:212 util/grub-syslinux2cfg.c:228 util/misc.c:91 -#: util/render-label.c:76 util/render-label.c:163 util/render-label.c:174 -#: util/resolve.c:246 util/setup.c:783 -#, c-format -msgid "cannot open `%s': %s" -msgstr "«%s» kann nicht geöffnet werden: %s" - -#: grub-core/disk/cryptodisk.c:583 grub-core/disk/cryptodisk.c:628 -#: grub-core/kern/emu/hostdisk.c:270 grub-core/kern/emu/hostfs.c:142 -#: grub-core/osdep/linux/hostdisk.c:456 util/grub-editenv.c:143 -#: util/grub-editenv.c:149 util/grub-fstest.c:320 util/misc.c:111 -#, c-format -msgid "cannot seek `%s': %s" -msgstr "«%s» kann nicht durchsucht werden: %s" - -#: grub-core/disk/cryptodisk.c:1144 -msgid "SOURCE|-u UUID|-a|-b" -msgstr "QUELLE|-u UUID|-a|-b" - -#: grub-core/disk/cryptodisk.c:1145 -msgid "Mount a crypto device." -msgstr "Ein verschlüsseltes Gerät einhängen." - -#. TRANSLATORS: This message kicks in during the detection of -#. which modules needs to be included in core image. This happens -#. in the case of degraded RAID and means that autodetection may -#. fail to include some of modules. It's an installation time -#. message, not runtime message. -#: grub-core/disk/diskfilter.c:343 grub-core/disk/diskfilter.c:376 -#, c-format -msgid "" -"Couldn't find physical volume `%s'. Some modules may be missing from core " -"image." -msgstr "" -"Physischer Datenträger «%s» konnte nicht gefunden werden. Einige Module " -"könnten im Core-Abbild fehlen." - -#: grub-core/disk/diskfilter.c:480 -#, c-format -msgid "physical volume %s not found" -msgstr "Physischer Datenträger %s wurde nicht gefunden" - -#: grub-core/disk/efi/efidisk.c:600 grub-core/disk/efi/efidisk.c:623 -#, c-format -msgid "no media in `%s'" -msgstr "Kein Medium in «%s»" - -#: grub-core/disk/geli.c:75 -msgid "Couldn't load sha256" -msgstr "sha256 konnte nicht geladen werden" - -#: grub-core/disk/geli.c:85 -msgid "Couldn't load sha512" -msgstr "sha512 konnte nicht geladen werden" - -#: grub-core/disk/geli.c:216 grub-core/disk/geli.c:220 -msgid "couldn't read ELI metadata" -msgstr "ELI-Metadaten konnten nicht gelesen werden" - -#: grub-core/disk/geli.c:231 -msgid "wrong ELI magic or version" -msgstr "Falsches ELI-Magic oder -Version" - -#: grub-core/disk/geli.c:435 grub-core/disk/luks.c:329 -msgid "Attempting to decrypt master key..." -msgstr "Es wird versucht, den Master-Schlüssel zu entschlüsseln …" - -#: grub-core/disk/geli.c:441 grub-core/disk/luks.c:347 -#, c-format -msgid "Enter passphrase for %s%s%s (%s): " -msgstr "Kennwort für %s%s%s angeben (%s): " - -#. TRANSLATORS: It's a cryptographic key slot: one element of an array -#. where each element is either empty or holds a key. -#: grub-core/disk/geli.c:530 grub-core/disk/luks.c:451 -#, c-format -msgid "Slot %d opened\n" -msgstr "Slot %d geöffnet\n" - -#: grub-core/disk/i386/pc/biosdisk.c:470 grub-core/disk/i386/pc/biosdisk.c:524 -#: grub-core/disk/i386/pc/biosdisk.c:534 grub-core/kern/disk_common.c:47 -#, c-format -msgid "attempt to read or write outside of disk `%s'" -msgstr "Versuch, ausserhalb der Platte «%s» zu lesen und zu schreiben" - -#: grub-core/disk/i386/pc/biosdisk.c:491 grub-core/disk/i386/pc/biosdisk.c:611 -#: grub-core/disk/scsi.c:726 -msgid "cannot write to CD-ROM" -msgstr "Auf CD-ROM kann nicht geschrieben werden" - -#: grub-core/disk/i386/pc/biosdisk.c:662 -msgid "" -"Native disk drivers are in use. Refusing to use firmware disk interface." -msgstr "" -"Native Festplattentreiber werden verwendet. Nutzung der Firmware-" -"Schnittstelle wird verweigert." - -#. TRANSLATORS: it's a partition for embedding, -#. not a partition embed into something. GRUB -#. install tools put core.img into a place -#. usable for bootloaders (called generically -#. "embedding zone") and this operation is -#. called "embedding". -#: grub-core/disk/ldm.c:1015 -msgid "your LDM Embedding Partition is too small; embedding won't be possible" -msgstr "" -"Die LDM-Einbettungspartition ist zu klein, Einbettung würde unmöglich sein" - -#. TRANSLATORS: it's a partition for embedding, -#. not a partition embed into something. -#: grub-core/disk/ldm.c:1033 -msgid "this LDM has no Embedding Partition; embedding won't be possible" -msgstr "" -"Dieses LDM hat keine Einbettungspartition, Einbettung würde unmöglich sein" - -#. TRANSLATORS: The disk is simply removed from the list of available ones, -#. not wiped, avoid to scare user. -#: grub-core/disk/loopback.c:45 -msgid "Delete the specified loopback drive." -msgstr "Das angegebene Loopback-Gerät löschen." - -#: grub-core/disk/loopback.c:237 -msgid "[-d] DEVICENAME FILE." -msgstr "[-d] GERÄTENAME DATEI." - -#. TRANSLATORS: The file itself is not destroyed -#. or transformed into drive. -#: grub-core/disk/loopback.c:240 -msgid "Make a virtual drive from a file." -msgstr "Ein virtuelles Gerät aus einer Datei erstellen." - -#: grub-core/efiemu/i386/loadcore32.c:111 -#: grub-core/efiemu/i386/loadcore64.c:125 grub-core/kern/arm/dl.c:256 -#: grub-core/kern/arm64/dl.c:187 grub-core/kern/i386/dl.c:75 -#: grub-core/kern/ia64/dl.c:140 grub-core/kern/mips/dl.c:258 -#: grub-core/kern/powerpc/dl.c:163 grub-core/kern/riscv/dl.c:334 -#: grub-core/kern/sparc64/dl.c:180 grub-core/kern/x86_64/dl.c:110 -#: util/grub-mkimagexx.c:756 util/grub-mkimagexx.c:881 -#: util/grub-mkimagexx.c:945 util/grub-mkimagexx.c:1026 -#: util/grub-mkimagexx.c:1120 util/grub-mkimagexx.c:1222 -#: util/grub-mkimagexx.c:1413 util/grub-mkimagexx.c:1628 -#: util/grub-mkimagexx.c:1665 util/grub-mkimagexx.c:1697 -#: util/grub-mkimagexx.c:1767 util/grub-mkimagexx.c:1797 -#, c-format -msgid "relocation 0x%x is not implemented yet" -msgstr "Neuzuweisung 0x%x ist noch nicht implementiert" - -#: grub-core/efiemu/loadcore.c:200 grub-core/efiemu/loadcore.c:237 -#: grub-core/loader/i386/bsdXX.c:317 util/grub-mkimagexx.c:2360 -msgid "no symbol table" -msgstr "Keine Symboltabelle" - -#: grub-core/efiemu/loadcore.c:346 grub-core/kern/dl.c:609 -#: grub-core/loader/ia64/efi/linux.c:345 grub-core/loader/mips/linux.c:248 -#: grub-core/loader/multiboot_elfxx.c:76 -#: grub-core/loader/powerpc/ieee1275/linux.c:280 -#: grub-core/loader/sparc64/ieee1275/linux.c:320 -msgid "this ELF file is not of the right type" -msgstr "Diese ELF-Datei ist vom falschen Typ" - -#: grub-core/efiemu/main.c:313 -msgid "Load and initialize EFI emulator." -msgstr "EFI-Emulator laden und initialisieren." - -#: grub-core/efiemu/main.c:317 -msgid "Finalize loading of EFI emulator." -msgstr "Laden des EFI-Emulators finalisieren." - -#: grub-core/efiemu/main.c:320 -msgid "Unload EFI emulator." -msgstr "EFI-Umgebung entladen." - -#: grub-core/efiemu/symbols.c:92 grub-core/kern/dl.c:376 -#, c-format -msgid "symbol `%s' not found" -msgstr "Symbol «%s» nicht gefunden" - -#: grub-core/font/font_cmd.c:52 -msgid "Loaded fonts:" -msgstr "Geladene Schriften" - -#: grub-core/font/font_cmd.c:74 -msgid "FILE..." -msgstr "DATEI…" - -#: grub-core/font/font_cmd.c:75 -msgid "Specify one or more font files to load." -msgstr "Eine oder mehrere zu ladende Schriftdateien angeben." - -#: grub-core/font/font_cmd.c:78 -msgid "List the loaded fonts." -msgstr "Die geladenen Schriften auflisten." - -#: grub-core/fs/archelp.c:216 grub-core/fs/archelp.c:278 -#: grub-core/fs/btrfs.c:1815 grub-core/fs/fshelp.c:227 grub-core/fs/jfs.c:736 -#: grub-core/fs/minix.c:369 grub-core/fs/ufs.c:454 -msgid "too deep nesting of symlinks" -msgstr "Zu tief verschachtelte symbolische Verknüpfungen" - -#: grub-core/fs/bfs.c:228 grub-core/fs/fshelp.c:368 grub-core/fs/minix.c:270 -#: grub-core/kern/file.c:156 -msgid "attempt to read past the end of file" -msgstr "Versuch, hinter dem Ende der Datei zu lesen" - -#: grub-core/fs/btrfs.c:1698 grub-core/fs/btrfs.c:1957 -#: grub-core/fs/fshelp.c:189 grub-core/fs/fshelp.c:309 grub-core/fs/jfs.c:431 -#: grub-core/fs/minix.c:414 grub-core/fs/minix.c:562 -#: grub-core/fs/reiserfs.c:732 grub-core/fs/ufs.c:531 grub-core/fs/ufs.c:671 -#: grub-core/fs/zfs/zfs.c:2831 grub-core/fs/zfs/zfs.c:4247 -msgid "not a directory" -msgstr "Ist kein Verzeichnis" - -#: grub-core/fs/btrfs.c:2063 grub-core/fs/fshelp.c:307 grub-core/fs/jfs.c:835 -#: grub-core/fs/zfs/zfs.c:3801 -msgid "not a regular file" -msgstr "Keine reguläre Datei" - -#: grub-core/fs/btrfs.c:2157 grub-core/fs/zfs/zfs.c:4333 -#: grub-core/partmap/msdos.c:400 -msgid "your core.img is unusually large. It won't fit in the embedding area" -msgstr "" -"Ihre Datei core.img ist ungewöhnlich gross. Sie würde nicht in den " -"Einbettungsbereich passen." - -#: grub-core/fs/fshelp.c:281 grub-core/fs/minix.c:630 grub-core/fs/ufs.c:661 -#: grub-core/fs/ufs.c:757 grub-core/kern/fs.c:168 grub-core/kern/fs.c:180 -#, c-format -msgid "invalid file name `%s'" -msgstr "Ungültiger Dateiname «%s»" - -#: grub-core/fs/zfs/zfs.c:453 -msgid "checksum verification failed" -msgstr "Prüfsummenvergleich ist gescheitert" - -#: grub-core/fs/zfs/zfs.c:1465 -msgid "couldn't find a necessary member device of multi-device filesystem" -msgstr "" -"Teilgerät eines über mehrere Geräte verteilten Dateisystems konnte nicht " -"gefunden werden" - -#: grub-core/fs/zfs/zfscrypt.c:292 -msgid "no decryption key available" -msgstr "Kein Schlüssel verfügbar" - -#: grub-core/fs/zfs/zfscrypt.c:304 -msgid "MAC verification failed" -msgstr "MAC-Überprüfung ist gescheitert" - -#: grub-core/fs/zfs/zfscrypt.c:413 -msgid "Assume input is raw." -msgstr "Eingabe wird als Raw angenommen." - -#: grub-core/fs/zfs/zfscrypt.c:414 -msgid "Assume input is hex." -msgstr "Eingabe wird als hexadezimal angenommen." - -#: grub-core/fs/zfs/zfscrypt.c:415 -msgid "Assume input is passphrase." -msgstr "Eingabe wird als Kennwort angenommen." - -#: grub-core/fs/zfs/zfscrypt.c:437 util/grub-fstest.c:553 util/grub-mount.c:483 -msgid "Enter ZFS password: " -msgstr "ZFS-Passwort eingeben:" - -#: grub-core/fs/zfs/zfscrypt.c:476 -msgid "[-h|-p|-r] [FILE]" -msgstr "[-h|-p|-r] [DATEI]" - -#: grub-core/fs/zfs/zfscrypt.c:477 -msgid "Import ZFS wrapping key stored in FILE." -msgstr "In DATEI gespeicherten ZFS-Wrapping-Schlüssel importieren" - -#: grub-core/fs/zfs/zfsinfo.c:51 -msgid "Virtual device is removed" -msgstr "Virtuelles Gerät wurde entfernt" - -#: grub-core/fs/zfs/zfsinfo.c:57 -msgid "Virtual device is faulted" -msgstr "Virtuelles Gerät ist gescheitert" - -#: grub-core/fs/zfs/zfsinfo.c:63 -msgid "Virtual device is offline" -msgstr "Virtuelles Gerät ist offline" - -#. TRANSLATORS: degraded doesn't mean broken but that some of -#. component are missing but virtual device as whole is still usable. -#: grub-core/fs/zfs/zfsinfo.c:70 -msgid "Virtual device is degraded" -msgstr "Virtuelles Gerät ist nicht verfügbar" - -#: grub-core/fs/zfs/zfsinfo.c:73 -msgid "Virtual device is online" -msgstr "Virtuelles Gerät ist online" - -#: grub-core/fs/zfs/zfsinfo.c:89 -msgid "Incorrect virtual device: no type available" -msgstr "Inkorrektes virtuelles Gerät: kein Typ verfügbar" - -#. TRANSLATORS: The virtual devices form a tree (in graph-theoretical -#. sense). The nodes like mirror or raidz have children: member devices. -#. The "real" devices which actually store data are called "leafs" -#. (again borrowed from graph theory) and can be either disks -#. (or partitions) or files. -#: grub-core/fs/zfs/zfsinfo.c:105 -msgid "Leaf virtual device (file or disk)" -msgstr "Virtuelles Gerät durchsuchen (Datei oder Laufwerk)" - -#: grub-core/fs/zfs/zfsinfo.c:113 -msgid "Bootpath: unavailable\n" -msgstr "Boot-Pfad: nicht verfügbar\n" - -#: grub-core/fs/zfs/zfsinfo.c:115 -#, c-format -msgid "Bootpath: %s\n" -msgstr "Boot-Pfad: %s\n" - -#: grub-core/fs/zfs/zfsinfo.c:120 -msgid "Path: unavailable" -msgstr "Pfad: nicht verfügbar" - -#: grub-core/fs/zfs/zfsinfo.c:122 -#, c-format -msgid "Path: %s\n" -msgstr "Pfad: %s\n" - -#: grub-core/fs/zfs/zfsinfo.c:127 -msgid "Devid: unavailable" -msgstr "Gerätekennung: nicht verfügbar" - -#: grub-core/fs/zfs/zfsinfo.c:129 -#, c-format -msgid "Devid: %s\n" -msgstr "Gerätekennung: %s\n" - -#: grub-core/fs/zfs/zfsinfo.c:148 -msgid "This VDEV is a mirror" -msgstr "Dieses VDEV ist ein Spiegel" - -#: grub-core/fs/zfs/zfsinfo.c:153 -#, c-format -msgid "This VDEV is a RAIDZ%llu\n" -msgstr "Dieses VDEV ist ein RAIDZ%llu\n" - -#: grub-core/fs/zfs/zfsinfo.c:158 -msgid "Incorrect VDEV" -msgstr "Ungültiges VDEV" - -#: grub-core/fs/zfs/zfsinfo.c:161 -#, c-format -msgid "VDEV with %d children\n" -msgstr "VDEV mit %d Kindelementen\n" - -#. TRANSLATORS: it's the element carying the number %d, not -#. total element number. And the number itself is fine, -#. only the element isn't. -#. -#: grub-core/fs/zfs/zfsinfo.c:177 -#, c-format -msgid "VDEV element number %d isn't correct\n" -msgstr "VDEV-Elementnummer %d ist nicht korrekt\n" - -#. TRANSLATORS: it's the element carying the number %d, not -#. total element number. This is used in enumeration -#. "Element number 1", "Element number 2", ... -#: grub-core/fs/zfs/zfsinfo.c:184 -#, c-format -msgid "VDEV element number %d:\n" -msgstr "VDEV-Elementnummer %d:\n" - -#: grub-core/fs/zfs/zfsinfo.c:193 -#, c-format -msgid "Unknown virtual device type: %s\n" -msgstr "Typ des virtuellen Gerätes ist unbekannt: %s\n" - -#. TRANSLATORS: Here we speak about ZFS pools it's semi-marketing, -#. semi-technical term by Sun/Oracle and should be translated in sync with -#. other ZFS-related software and documentation. -#: grub-core/fs/zfs/zfsinfo.c:254 -msgid "Pool state: active" -msgstr "Pool-Status: aktiv" - -#: grub-core/fs/zfs/zfsinfo.c:255 -msgid "Pool state: exported" -msgstr "Pool-Status: exportiert" - -#: grub-core/fs/zfs/zfsinfo.c:256 -msgid "Pool state: destroyed" -msgstr "Pool-Status: zerstört" - -#: grub-core/fs/zfs/zfsinfo.c:257 -msgid "Pool state: reserved for hot spare" -msgstr "Pool-Status: für Hotspare reserviert" - -#: grub-core/fs/zfs/zfsinfo.c:258 -msgid "Pool state: level 2 ARC device" -msgstr "Pool-Status: ARC-Gerät, Level 2" - -#: grub-core/fs/zfs/zfsinfo.c:259 -msgid "Pool state: uninitialized" -msgstr "Pool-Status: nicht initialisiert" - -#: grub-core/fs/zfs/zfsinfo.c:260 -msgid "Pool state: unavailable" -msgstr "Pool-Status: nicht verfügbar" - -#: grub-core/fs/zfs/zfsinfo.c:261 -msgid "Pool state: potentially active" -msgstr "Pool-Status: potenziell aktiv" - -#: grub-core/fs/zfs/zfsinfo.c:306 -msgid "Pool name: unavailable" -msgstr "Pool-Name: nicht verfügbar" - -#: grub-core/fs/zfs/zfsinfo.c:308 -#, c-format -msgid "Pool name: %s\n" -msgstr "Pool-Name: %s\n" - -#: grub-core/fs/zfs/zfsinfo.c:313 -msgid "Pool GUID: unavailable" -msgstr "Pool-GUID: nicht verfügbar" - -#: grub-core/fs/zfs/zfsinfo.c:315 -#, c-format -msgid "Pool GUID: %016llx\n" -msgstr "Pool-GUID: %016llx\n" - -#: grub-core/fs/zfs/zfsinfo.c:320 -msgid "Unable to retrieve pool state" -msgstr "Pool-Status konnte nicht ermittelt werden" - -#: grub-core/fs/zfs/zfsinfo.c:322 -msgid "Unrecognized pool state" -msgstr "Pool-Status nicht erkannt" - -#. TRANSLATORS: There are undetermined number of virtual devices -#. in a device tree, not just one. -#. -#: grub-core/fs/zfs/zfsinfo.c:332 -msgid "No virtual device tree available" -msgstr "Kein Baum virtueller Geräte verfügbar" - -#: grub-core/fs/zfs/zfsinfo.c:431 -msgid "Print ZFS info about DEVICE." -msgstr "ZFS-Info zu GERÄT ausgeben." - -#: grub-core/fs/zfs/zfsinfo.c:433 -msgid "FILESYSTEM [VARIABLE]" -msgstr "DATEISYSTEM [VARIABLE]" - -#: grub-core/fs/zfs/zfsinfo.c:434 -msgid "Print ZFS-BOOTFSOBJ or store it into VARIABLE" -msgstr "ZFS-BOOTFSOBJ ausgeben oder als VARIABLE setzen" - -#. TRANSLATORS: at this position GRUB waits for the user to do an action -#. in remote debugger, namely to tell it to establish connection. -#: grub-core/gdb/gdb.c:48 -msgid "Now connect the remote debugger, please." -msgstr "Bitte verbinden Sie nun einen entfernten Debugger." - -#. TRANSLATORS: GDB stub is a small part of -#. GDB functionality running on local host -#. which allows remote debugger to -#. connect to it. -#: grub-core/gdb/gdb.c:84 -msgid "Start GDB stub on given port" -msgstr "GDB-Stub auf dem angegebenen Port starten" - -#. TRANSLATORS: this refers to triggering -#. a breakpoint so that the user will land -#. into GDB. -#: grub-core/gdb/gdb.c:89 -msgid "Break into GDB" -msgstr "Haltepunkt für GDB auslösen" - -#: grub-core/gdb/gdb.c:91 -msgid "Stop GDB stub" -msgstr "GDB-Stub stoppen" - -#: grub-core/gettext/gettext.c:85 -msgid "premature end of file" -msgstr "Vorzeitiges Ende der Datei" - -#. TRANSLATORS: It refers to passing the string through gettext. -#. So it's "translate" in the same meaning as in what you're -#. doing now. -#. -#: grub-core/gettext/gettext.c:525 -msgid "Translates the string with the current settings." -msgstr "Übersetzt die Zeichenkette anhand den aktuellen Einstellungen." - -#: grub-core/gfxmenu/gui_label.c:186 grub-core/normal/menu_text.c:184 -msgid "" -"Press enter to boot the selected OS, `e' to edit the commands before booting " -"or `c' for a command-line. ESC to return previous menu." -msgstr "" -"«Enter» zum Booten des markierten Betriebssystems, «e» zum Bearbeiten der " -"Befehle vor dem Booten oder «c» für eine Befehlszeile. Mit «ESC» kehren Sie " -"zum vorherigen Menü zurück." - -#: grub-core/gfxmenu/gui_label.c:190 grub-core/normal/menu_text.c:192 -msgid "" -"Press enter to boot the selected OS, `e' to edit the commands before booting " -"or `c' for a command-line." -msgstr "" -"«Enter» zum Booten des markierten Betriebssystems, «e» zum Bearbeiten der " -"Befehle vor dem Booten oder «c» für eine Befehlszeile." - -#: grub-core/gfxmenu/gui_label.c:194 -msgid "enter: boot, `e': options, `c': cmd-line" -msgstr "Enter: Booten, «e»: Optionen, «c»: Befehlszeile" - -#: grub-core/gfxmenu/gui_progress_bar.c:339 grub-core/normal/menu_text.c:446 -#, c-format -msgid "The highlighted entry will be executed automatically in %ds." -msgstr "Der hervorgehobene Eintrag wird automatisch in %ds ausgeführt." - -#. TRANSLATORS: 's' stands for seconds. -#. It's a standalone timeout notification. -#. Please use the short form in your language. -#: grub-core/gfxmenu/gui_progress_bar.c:344 -#, c-format -msgid "%ds remaining." -msgstr "%ds verbleibend." - -#. TRANSLATORS: 's' stands for seconds. -#. It's a standalone timeout notification. -#. Please use the shortest form available in you language. -#: grub-core/gfxmenu/gui_progress_bar.c:349 grub-core/normal/menu_text.c:444 -#: grub-core/normal/menu_text.c:462 -#, c-format -msgid "%ds" -msgstr "%ds" - -#: grub-core/gfxmenu/view.c:103 -msgid "GRUB Boot Menu" -msgstr "GRUB-Bootmenü" - -#: grub-core/hello/hello.c:36 -msgid "Hello World" -msgstr "Hallo Welt" - -#: grub-core/hello/hello.c:45 -msgid "Say `Hello World'." -msgstr "«Hallo Welt» ausgeben." - -#: grub-core/io/gzio.c:409 grub-core/kern/file.c:210 -msgid "attempt to seek outside of the file" -msgstr "Versuch, ausserhalb der Datei zu suchen" - -#. TRANSLATORS: It's about given file having some strange format, not -#. complete lack of gzip support. -#: grub-core/io/gzio.c:1228 grub-core/io/gzio.c:1237 grub-core/io/gzio.c:1244 -msgid "unsupported gzip format" -msgstr "Nicht unterstütztes gzip-Format" - -#: grub-core/io/lzopio.c:511 -msgid "lzop file corrupted" -msgstr "lzop-Datei ist beschädigt" - -#: grub-core/io/xzio.c:278 -msgid "xz file corrupted or unsupported block options" -msgstr "xz-Datei ist beschädigt oder Blockoptionen werden nicht unterstützt" - -#: grub-core/kern/arm/dl.c:277 grub-core/kern/arm64/dl.c:44 -#: grub-core/kern/i386/dl.c:36 grub-core/kern/ia64/dl.c:41 -#: grub-core/kern/mips/dl.c:48 grub-core/kern/powerpc/dl.c:36 -#: grub-core/kern/riscv/dl.c:47 grub-core/kern/sparc64/dl.c:36 -#: grub-core/kern/x86_64/dl.c:36 grub-core/loader/i386/bsd.c:1445 -#: grub-core/loader/i386/bsdXX.c:49 grub-core/loader/ia64/efi/linux.c:341 -#: grub-core/loader/mips/linux.c:298 grub-core/loader/multiboot.c:232 -#: grub-core/loader/multiboot_elfxx.c:73 -#: grub-core/loader/powerpc/ieee1275/linux.c:294 -#: grub-core/loader/sparc64/ieee1275/linux.c:331 -msgid "invalid arch-dependent ELF magic" -msgstr "Ungültiges ELF-Magic (architekturabhängig)" - -#: grub-core/kern/corecmd.c:178 -msgid "[ENVVAR=VALUE]" -msgstr "[UMGVAR=WERT]" - -#: grub-core/kern/corecmd.c:179 -msgid "Set an environment variable." -msgstr "Eine Umgebungsvariable festlegen." - -#: grub-core/kern/corecmd.c:183 -msgid "ENVVAR" -msgstr "UMGVAR" - -#: grub-core/kern/corecmd.c:184 -msgid "Remove an environment variable." -msgstr "Eine Umgebungsvariable löschen." - -#: grub-core/kern/corecmd.c:186 -msgid "[ARG]" -msgstr "[ARG]" - -#: grub-core/kern/corecmd.c:186 -msgid "List devices or files." -msgstr "Geräte oder Dateien auflisten." - -#: grub-core/kern/corecmd.c:188 -msgid "Insert a module." -msgstr "Ein Modul einfügen." - -#: grub-core/kern/disk.c:236 grub-core/net/net.c:1390 -#, c-format -msgid "disk `%s' not found" -msgstr "Laufwerk «%s» wurde nicht gefunden." - -#: grub-core/kern/disk_common.c:27 -msgid "attempt to read or write outside of partition" -msgstr "Versuch, ausserhalb der Partition zu lesen oder zu schreiben" - -#: grub-core/kern/dl.c:212 grub-core/kern/elf.c:61 grub-core/kern/elf.c:79 -#: grub-core/loader/i386/bsdXX.c:46 grub-core/loader/ia64/efi/linux.c:335 -#: grub-core/loader/multiboot_elfxx.c:69 -msgid "invalid arch-independent ELF magic" -msgstr "Ungültiges ELF-Magic (architekturunabhängig)" - -#. TRANSLATORS: it refers to the lack of free slots. -#: grub-core/kern/emu/hostdisk.c:208 grub-core/kern/emu/hostdisk.c:466 -msgid "device count exceeds limit" -msgstr "Geräteanzahl übersteigt die Grenzen" - -#: grub-core/kern/emu/hostdisk.c:342 util/editenv.c:54 util/grub-editenv.c:197 -#: util/grub-fstest.c:191 util/grub-mkfont.c:796 util/misc.c:114 -#: util/misc.c:129 util/setup.c:788 -#, c-format -msgid "cannot write to `%s': %s" -msgstr "Auf «%s» kann nicht geschrieben werden: %s" - -#. TRANSLATORS: Only one entry is ignored. However the suggestion -#. is to correct/delete the whole file. -#. device.map is a file indicating which -#. devices are available at boot time. Fedora populated it with -#. entries like (hd0,1) /dev/sda1 which would mean that every -#. partition is a separate disk for BIOS. Such entries were -#. inactive in GRUB due to its bug which is now gone. Without -#. this additional check these entries would be harmful now. -#. -#: grub-core/kern/emu/hostdisk.c:503 -#, c-format -msgid "" -"the device.map entry `%s' is invalid. Ignoring it. Please correct or delete " -"your device.map" -msgstr "" -"Der device.map-Eintrag «%s» ist ungültig, wird ignoriert. Bitte korrigieren " -"oder löschen Sie Ihre device.map" - -#. TRANSLATORS: device.map is a filename. Not to be translated. -#. device.map specifies disk correspondance overrides. Previously -#. one could create any kind of device name with this. Due to -#. some problems we decided to limit it to just a handful -#. possibilities. -#: grub-core/kern/emu/hostdisk.c:555 -#, c-format -msgid "" -"the drive name `%s' in device.map is incorrect. Using %s instead. Please use " -"the form [hfc]d[0-9]* (E.g. `hd0' or `cd')" -msgstr "" -"Der Laufwerksname «%s» in device.map ist inkorrekt. %s wird stattdessen " -"verwendet. Bitte verwenden Sie die Form [hfc]d[0-9]* (z.B. «hd0» oder «cd»)" - -#: grub-core/kern/emu/hostfs.c:76 grub-core/kern/emu/hostfs.c:109 -#, c-format -msgid "can't open `%s': %s" -msgstr "«%s» kann nicht geöffnet werden: %s" - -#: grub-core/kern/emu/main.c:99 util/grub-fstest.c:516 util/grub-mount.c:452 -msgid "DEVICE_NAME" -msgstr "GERÄTENAME" - -#: grub-core/kern/emu/main.c:99 grub-core/loader/i386/bsd.c:136 -#: grub-core/loader/i386/bsd.c:169 util/grub-fstest.c:516 util/grub-mount.c:452 -msgid "Set root device." -msgstr "Root-Gerät festlegen." - -#. TRANSLATORS: There are many devices in device map. -#: grub-core/kern/emu/main.c:102 util/grub-probe.c:733 util/grub-setup.c:85 -#, c-format -msgid "use FILE as the device map [default=%s]" -msgstr "DATEI als Gerätezuordnung verwenden [Vorgabe=%s]" - -#. TRANSLATORS: There are many devices in device map. -#: grub-core/kern/emu/main.c:105 -msgid "use FILE as memdisk" -msgstr "DATEI als Memdisk-Abbild verwenden" - -#: grub-core/kern/emu/main.c:107 util/grub-setup.c:83 -#, c-format -msgid "use GRUB files in the directory DIR [default=%s]" -msgstr "GRUB-Dateien im Verzeichnis VERZ verwenden [Vorgabe=%s]" - -#: grub-core/kern/emu/main.c:108 include/grub/util/install.h:67 -#: util/grub-editenv.c:58 util/grub-fstest.c:525 util/grub-glue-efi.c:58 -#: util/grub-macbless.c:104 util/grub-mkfont.c:962 util/grub-mkimage.c:84 -#: util/grub-mklayout.c:56 util/grub-mount.c:458 util/grub-probe.c:735 -#: util/grub-render-label.c:74 util/grub-script-check.c:52 util/grub-setup.c:90 -#: util/grub-syslinux2cfg.c:78 -msgid "print verbose messages." -msgstr "Ausführliche Meldungen ausgeben." - -#: grub-core/kern/emu/main.c:109 grub-core/lib/gnulib/argp-parse.c:85 -msgid "SECS" -msgstr "SEK" - -#: grub-core/kern/emu/main.c:109 -msgid "wait until a debugger will attach" -msgstr "Warten, bis ein Debugger einklinkt" - -#: grub-core/kern/emu/main.c:171 util/grub-macbless.c:143 -#: util/grub-mkrelpath.c:61 util/grub-probe.c:874 util/grub-script-check.c:75 -#: util/grub-setup.c:203 -#, c-format -msgid "Unknown extra argument `%s'." -msgstr "Unbekanntes zusätzliches Argument «%s»." - -#: grub-core/kern/emu/main.c:185 -msgid "GRUB emulator." -msgstr "GRUB-Emulator." - -#: grub-core/kern/emu/main.c:213 util/grub-editenv.c:262 -#: util/grub-glue-efi.c:110 util/grub-macbless.c:173 util/grub-mkfont.c:1177 -#: util/grub-mkimage.c:266 util/grub-mklayout.c:494 -#: util/grub-mkpasswd-pbkdf2.c:132 util/grub-mkrelpath.c:96 -#: util/grub-probe.c:863 util/grub-render-label.c:152 -#: util/grub-script-check.c:160 util/grub-setup.c:262 -#: util/grub-syslinux2cfg.c:163 -msgid "Error in parsing command line arguments\n" -msgstr "Fehler beim Einlesen der Befehlszeilenargumente\n" - -#. TRANSLATORS: In this case GRUB tells user what he has to do. -#: grub-core/kern/emu/main.c:248 -#, c-format -msgid "Run `gdb %s %d', and set ARGS.HOLD to zero.\n" -msgstr "Rufen Sie «gdb %s %d» auf und setzen Sie ARGS.HOLD auf Null.\n" - -#: grub-core/kern/emu/misc.c:48 -#, c-format -msgid "%s: warning:" -msgstr "%s: Warnung:" - -#: grub-core/kern/emu/misc.c:64 -#, c-format -msgid "%s: info:" -msgstr "%s: Info:" - -#: grub-core/kern/emu/misc.c:79 util/grub-fstest.c:567 util/grub-fstest.c:576 -#: util/grub-mount.c:497 util/grub-mount.c:505 -#, c-format -msgid "%s: error:" -msgstr "%s: Fehler:" - -#: grub-core/kern/emu/misc.c:176 -#, c-format -msgid "file `%s' is too big" -msgstr "Datei «%s» ist zu gross" - -#: grub-core/kern/fs.c:120 -msgid "unknown filesystem" -msgstr "Unbekanntes Dateisystem" - -#: grub-core/kern/mips/arc/init.c:273 grub-core/kern/mips/loongson/init.c:301 -msgid "Shutdown failed" -msgstr "Herunterfahren ist gescheitert" - -#: grub-core/kern/mips/arc/init.c:285 -msgid "Exit failed" -msgstr "Beenden ist gescheitert" - -#: grub-core/kern/misc.c:351 grub-core/kern/misc.c:408 include/grub/misc.h:269 -#: include/grub/misc.h:278 -msgid "overflow is detected" -msgstr "Überlauf wurde erkannt" - -#: grub-core/kern/partition.c:51 grub-core/partmap/bsdlabel.c:108 -#, c-format -msgid "Discarding improperly nested partition (%s,%s,%s%d)" -msgstr "Unsauber eingebettete Partition wird verworfen (%s,%s,%s%d)" - -#: grub-core/kern/rescue_parser.c:73 util/grub-editenv.c:292 -#, c-format -msgid "Unknown command `%s'.\n" -msgstr "Unbekannter Befehl «%s».\n" - -#: grub-core/lib/arg.c:31 -msgid "Display this help and exit." -msgstr "Diese Hilfe anzeigen und beenden." - -#: grub-core/lib/arg.c:33 -msgid "Display the usage of this command and exit." -msgstr "Benutzung dieses Befehls anzeigen und beenden." - -#: grub-core/lib/arg.c:362 -#, c-format -msgid "missing mandatory option for `%s'" -msgstr "Obligatorische Option für «%s» fehlt" - -#: grub-core/lib/arg.c:384 -#, c-format -msgid "the argument `%s' requires an integer" -msgstr "Das Argument «%s» benötigt eine Ganzzahl" - -#: grub-core/lib/arg.c:407 -#, c-format -msgid "" -"a value was assigned to the argument `%s' while it doesn't require an " -"argument" -msgstr "Ein Argument wurde «%s» zugeordnet, obwohl es kein Argument erwartet" - -#: grub-core/lib/backtrace.c:64 -msgid "Print backtrace." -msgstr "Backtrace ausgeben." - -#: grub-core/lib/gnulib/argp-help.c:149 -#, c-format -msgid "ARGP_HELP_FMT: %s value is less than or equal to %s" -msgstr "ARGP_HELP_FMT: Wert %s ist kleiner oder gleich %s" - -#: grub-core/lib/gnulib/argp-help.c:225 -#, c-format -msgid "%.*s: ARGP_HELP_FMT parameter requires a value" -msgstr "%.*s: Parameter für ARGP_HELP_FMT benötigt einen Wert" - -#: grub-core/lib/gnulib/argp-help.c:235 -#, c-format -msgid "%.*s: Unknown ARGP_HELP_FMT parameter" -msgstr "%.*s: Unbekannter Parameter für ARGP_HELP_FMT" - -#: grub-core/lib/gnulib/argp-help.c:248 -#, c-format -msgid "Garbage in ARGP_HELP_FMT: %s" -msgstr "Unsinn in ARGP_HELP_FMT: %s" - -#: grub-core/lib/gnulib/argp-help.c:1229 -msgid "" -"Mandatory or optional arguments to long options are also mandatory or " -"optional for any corresponding short options." -msgstr "" -"Erforderliche oder optionale Argumente für lange Optionen sind ebenso " -"erforderlich bzw. optional für die entsprechenden Kurzoptionen." - -#: grub-core/lib/gnulib/argp-help.c:1620 -msgid " or: " -msgstr " oder: " - -#: grub-core/lib/gnulib/argp-help.c:1632 -msgid " [OPTION...]" -msgstr " [OPTIONEN …]" - -#: grub-core/lib/gnulib/argp-help.c:1659 -#, c-format -msgid "Try '%s --help' or '%s --usage' for more information.\n" -msgstr "" -"Rufen Sie «%s --help» oder «%s --usage» auf, um weitere Informationen zu " -"erhalten.\n" - -#: grub-core/lib/gnulib/argp-help.c:1687 -#, c-format -msgid "Report bugs to %s.\n" -msgstr "Berichten Sie Fehler an %s.\n" - -#: grub-core/lib/gnulib/argp-help.c:1888 grub-core/lib/gnulib/error.c:195 -msgid "Unknown system error" -msgstr "Unbekannter Systemfehler" - -#: grub-core/lib/gnulib/argp-parse.c:81 -msgid "give this help list" -msgstr "Diese Hilfe anzeigen" - -#: grub-core/lib/gnulib/argp-parse.c:82 -msgid "give a short usage message" -msgstr "Eine kurze Hilfemeldung ausgeben" - -#: grub-core/lib/gnulib/argp-parse.c:83 util/grub-mkfont.c:946 -msgid "NAME" -msgstr "NAME" - -#: grub-core/lib/gnulib/argp-parse.c:84 -msgid "set the program name" -msgstr "Programmname festlegen" - -#: grub-core/lib/gnulib/argp-parse.c:86 -msgid "hang for SECS seconds (default 3600)" -msgstr "für SEK Sekunden hängenbleiben (Voreinst.: 3600)" - -#: grub-core/lib/gnulib/argp-parse.c:143 -msgid "print program version" -msgstr "Programmversion ausgeben" - -#: grub-core/lib/gnulib/argp-parse.c:160 -msgid "(PROGRAM ERROR) No version known!?" -msgstr "(PROGRAMMFEHLER) Keine Version bekannt!?" - -#: grub-core/lib/gnulib/argp-parse.c:613 -#, c-format -msgid "%s: Too many arguments\n" -msgstr "%s: Zu viele Argumente\n" - -#: grub-core/lib/gnulib/argp-parse.c:759 -msgid "(PROGRAM ERROR) Option should have been recognized!?" -msgstr "(PROGRAMMFEHLER) Option hätte erkannt werden müssen!?" - -#: grub-core/lib/gnulib/getopt.c:278 -#, c-format -msgid "%s: option '%s%s' is ambiguous\n" -msgstr "%s: Option «%s%s» ist nicht eindeutig\n" - -#: grub-core/lib/gnulib/getopt.c:284 -#, c-format -msgid "%s: option '%s%s' is ambiguous; possibilities:" -msgstr "%s: Option «%s%s» ist mehrdeutig; Möglichkeiten:" - -#: grub-core/lib/gnulib/getopt.c:319 -#, c-format -msgid "%s: unrecognized option '%s%s'\n" -msgstr "%s: Unbekannte Option «%s%s»\n" - -#: grub-core/lib/gnulib/getopt.c:345 -#, c-format -msgid "%s: option '%s%s' doesn't allow an argument\n" -msgstr "%s: Option «%s%s» erlaubt kein Argument\n" - -#: grub-core/lib/gnulib/getopt.c:360 -#, c-format -msgid "%s: option '%s%s' requires an argument\n" -msgstr "%s: Option «%s%s» erwartet ein Argument\n" - -#: grub-core/lib/gnulib/getopt.c:621 -#, c-format -msgid "%s: invalid option -- '%c'\n" -msgstr "%s: Ungültige Option -- «%c»\n" - -#: grub-core/lib/gnulib/getopt.c:636 grub-core/lib/gnulib/getopt.c:682 -#, c-format -msgid "%s: option requires an argument -- '%c'\n" -msgstr "%s: Option erfordert ein Argument -- «%c»\n" - -#: grub-core/lib/gnulib/openat-die.c:38 -#, c-format -msgid "unable to record current working directory" -msgstr "" - -#: grub-core/lib/gnulib/openat-die.c:57 -#, c-format -msgid "failed to return to initial working directory" -msgstr "Rückkehr zum initialen Arbeitsverzeichnis ist fehlgeschlagen" - -#: grub-core/lib/gnulib/regcomp.c:135 grub-core/osdep/aros/hostdisk.c:523 -msgid "Success" -msgstr "Erfolg" - -#: grub-core/lib/gnulib/regcomp.c:138 -msgid "No match" -msgstr "Keine Übereinstimmung" - -#: grub-core/lib/gnulib/regcomp.c:141 -msgid "Invalid regular expression" -msgstr "Ungültiger regulärer Ausdruck" - -#: grub-core/lib/gnulib/regcomp.c:144 -msgid "Invalid collation character" -msgstr "Ungültiges Sortierzeichen" - -#: grub-core/lib/gnulib/regcomp.c:147 -msgid "Invalid character class name" -msgstr "Ungültiger Zeichenklassenname" - -#: grub-core/lib/gnulib/regcomp.c:150 -msgid "Trailing backslash" -msgstr "Angehängter Backslash" - -#: grub-core/lib/gnulib/regcomp.c:153 -msgid "Invalid back reference" -msgstr "Ungültige Rückreferenz" - -#: grub-core/lib/gnulib/regcomp.c:156 -msgid "Unmatched [, [^, [:, [., or [=" -msgstr "Kein Gegenstück für [, [^, [:, [. oder [=" - -#: grub-core/lib/gnulib/regcomp.c:159 -msgid "Unmatched ( or \\(" -msgstr "Kein Gegenstück für ( oder \\(" - -#: grub-core/lib/gnulib/regcomp.c:162 -msgid "Unmatched \\{" -msgstr "Kein Gegenstück für \\{" - -#: grub-core/lib/gnulib/regcomp.c:165 -msgid "Invalid content of \\{\\}" -msgstr "Ungültiger Inhalt von \\{\\}" - -#: grub-core/lib/gnulib/regcomp.c:168 -msgid "Invalid range end" -msgstr "Ungültiges Bereichsende" - -#: grub-core/lib/gnulib/regcomp.c:171 -msgid "Memory exhausted" -msgstr "Speicher ausgeschöpft" - -#: grub-core/lib/gnulib/regcomp.c:174 -msgid "Invalid preceding regular expression" -msgstr "Ungültiger vorhergehender regulärer Ausdruck" - -#: grub-core/lib/gnulib/regcomp.c:177 -msgid "Premature end of regular expression" -msgstr "Vorzeitiges Ende des regulären Ausdrucks" - -#: grub-core/lib/gnulib/regcomp.c:180 -msgid "Regular expression too big" -msgstr "Regulärer Ausdruck ist zu gross" - -#: grub-core/lib/gnulib/regcomp.c:183 -msgid "Unmatched ) or \\)" -msgstr "Nicht übereinstimmende ) oder \\)" - -#: grub-core/lib/gnulib/regcomp.c:531 -msgid "unknown regexp error" -msgstr "Unbekannter regexp-Fehler" - -#: grub-core/lib/gnulib/regcomp.c:676 -msgid "No previous regular expression" -msgstr "Kein vorhergehender regulärer Ausdruck" - -#: grub-core/lib/i386/halt.c:77 -msgid "GRUB doesn't know how to halt this machine yet!" -msgstr "GRUB weiss nicht, wie man diese Maschine stoppen kann!" - -#: grub-core/lib/legacy_parse.c:75 -msgid "Default server is ${net_default_server}" -msgstr "Vorgegebener Server ist ${net_default_server}" - -#: grub-core/lib/legacy_parse.c:844 grub-core/video/colors.c:296 -#: grub-core/video/colors.c:305 grub-core/video/colors.c:311 -#: grub-core/video/colors.c:327 util/render-label.c:84 util/render-label.c:98 -#, c-format -msgid "invalid color specification `%s'" -msgstr "Ungültige Angabe der Farbe «%s»" - -#: grub-core/lib/mips/arc/reboot.c:32 grub-core/lib/mips/loongson/reboot.c:61 -msgid "Reboot failed" -msgstr "Neu starten ist gescheitert" - -#: grub-core/lib/random.c:113 -msgid "[LENGTH]" -msgstr "[LÄNGE]" - -#: grub-core/lib/random.c:114 -msgid "Hexdump random data." -msgstr "Hexdump-Zufallsdaten." - -#: grub-core/loader/arm/linux.c:242 -msgid "device tree must be supplied (see `devicetree' command)" -msgstr "Gerätebaum muss angegeben werden (siehe Befehl «devicetree»)" - -#: grub-core/loader/arm/linux.c:334 -msgid "invalid zImage" -msgstr "Ungültiges zImage" - -#: grub-core/loader/arm/linux.c:450 grub-core/loader/efi/fdt.c:144 -msgid "invalid device tree" -msgstr "Ungültiger Gerätebaum" - -#: grub-core/loader/arm/linux.c:493 grub-core/loader/arm64/linux.c:383 -#: grub-core/loader/i386/linux.c:1125 grub-core/loader/i386/pc/linux.c:479 -#: grub-core/loader/i386/xen.c:962 grub-core/loader/i386/xen.c:964 -#: grub-core/loader/ia64/efi/linux.c:591 grub-core/loader/mips/linux.c:501 -#: grub-core/loader/powerpc/ieee1275/linux.c:383 -#: grub-core/loader/riscv/linux.c:50 -#: grub-core/loader/sparc64/ieee1275/linux.c:511 -msgid "Load Linux." -msgstr "Linux laden." - -#: grub-core/loader/arm/linux.c:495 grub-core/loader/arm64/linux.c:385 -#: grub-core/loader/i386/linux.c:1127 grub-core/loader/i386/pc/linux.c:482 -#: grub-core/loader/i386/xen.c:966 grub-core/loader/ia64/efi/linux.c:594 -#: grub-core/loader/mips/linux.c:503 -#: grub-core/loader/powerpc/ieee1275/linux.c:385 -#: grub-core/loader/riscv/linux.c:52 -#: grub-core/loader/sparc64/ieee1275/linux.c:513 -msgid "Load initrd." -msgstr "initrd laden." - -#. TRANSLATORS: DTB stands for device tree blob. -#: grub-core/loader/arm/linux.c:498 grub-core/loader/efi/fdt.c:169 -msgid "Load DTB file." -msgstr "DTB-Datei laden." - -#: grub-core/loader/arm64/linux.c:59 -msgid "" -"plain image kernel not supported - rebuild with CONFIG_(U)EFI_STUB enabled" -msgstr "" -"Einfaches Kernel-Abbild wird nicht unterstützt – erstellen Sie es mit " -"aktiviertem CONFIG_(U)EFI_STUB neu" - -#: grub-core/loader/arm64/xen_boot.c:156 -msgid "failed to get FDT" -msgstr "Beziehen des FDT fehlgeschlagen" - -#: grub-core/loader/arm64/xen_boot.c:418 -msgid "you need to load the Xen Hypervisor first" -msgstr "Sie müssen zuerst den Xen-Hypervisor laden" - -#: grub-core/loader/arm64/xen_boot.c:516 -msgid "Load a xen hypervisor." -msgstr "Einen Xen-Hypervisor laden." - -#: grub-core/loader/arm64/xen_boot.c:519 -msgid "Load a xen module." -msgstr "Ein Xen-Modul laden." - -#: grub-core/loader/efi/appleloader.c:231 -msgid "[OPTS]" -msgstr "[OPTIONEN]" - -#. TRANSLATORS: This command is used on EFI to -#. switch to BIOS mode and boot the OS requiring -#. BIOS. -#: grub-core/loader/efi/appleloader.c:235 -msgid "Boot BIOS-based system." -msgstr "BIOS-basiertes System booten." - -#: grub-core/loader/efi/chainloader.c:421 -#: grub-core/loader/i386/pc/chainloader.c:303 -msgid "Load another boot loader." -msgstr "Einen anderen Bootloader laden." - -#: grub-core/loader/i386/bsd.c:103 -msgid "Display output on all consoles." -msgstr "Ausgabe auf allen Konsolen anzeigen." - -#: grub-core/loader/i386/bsd.c:104 grub-core/loader/i386/bsd.c:138 -#: grub-core/loader/i386/bsd.c:171 -msgid "Use serial console." -msgstr "Serielle Konsole verwenden." - -#: grub-core/loader/i386/bsd.c:105 grub-core/loader/i386/bsd.c:131 -#: grub-core/loader/i386/bsd.c:159 -msgid "Ask for file name to reboot from." -msgstr "Nach dem Dateinamen für den Neustart fragen." - -#: grub-core/loader/i386/bsd.c:106 -msgid "Use CD-ROM as root." -msgstr "CDROM als Root-Gerät verwenden." - -#: grub-core/loader/i386/bsd.c:107 -msgid "Invoke user configuration routing." -msgstr "Routing der Benutzerkonfiguration aufrufen." - -#: grub-core/loader/i386/bsd.c:108 grub-core/loader/i386/bsd.c:135 -#: grub-core/loader/i386/bsd.c:162 -msgid "Enter in KDB on boot." -msgstr "KDB beim Booten verwenden." - -#: grub-core/loader/i386/bsd.c:109 -msgid "Use GDB remote debugger instead of DDB." -msgstr "Entfernte GDB-Fehlerdiagnose anstatt DDB verwenden." - -#: grub-core/loader/i386/bsd.c:110 -msgid "Disable all boot output." -msgstr "Alle Boot-Ausgaben deaktivieren." - -#: grub-core/loader/i386/bsd.c:112 -msgid "Wait for keypress after every line of output." -msgstr "Nach jeder ausgegebenen Zeile auf Tastendruck warten." - -#: grub-core/loader/i386/bsd.c:114 -msgid "Use compiled-in root device." -msgstr "Einkompiliertes Root-Gerät verwenden." - -#: grub-core/loader/i386/bsd.c:115 grub-core/loader/i386/bsd.c:134 -#: grub-core/loader/i386/bsd.c:165 -msgid "Boot into single mode." -msgstr "In den Single-User-Modus booten." - -#: grub-core/loader/i386/bsd.c:116 grub-core/loader/i386/bsd.c:166 -msgid "Boot with verbose messages." -msgstr "Mit ausführlichen Meldungen booten." - -#: grub-core/loader/i386/bsd.c:132 grub-core/loader/i386/bsd.c:160 -msgid "Don't reboot, just halt." -msgstr "Nicht neu starten, nur herunterfahren." - -#: grub-core/loader/i386/bsd.c:133 grub-core/loader/i386/bsd.c:161 -msgid "Change configured devices." -msgstr "Konfigurierte Geräte bearbeiten." - -#. TRANSLATORS: "com" is static and not to be translated. It refers to -#. serial ports e.g. com1. -#. -#: grub-core/loader/i386/bsd.c:142 -msgid "comUNIT[,SPEED]" -msgstr "comUNIT[,GESCHW]" - -#: grub-core/loader/i386/bsd.c:157 -msgid "Disable SMP." -msgstr "SMP deaktivieren." - -#: grub-core/loader/i386/bsd.c:158 -msgid "Disable ACPI." -msgstr "ACPI deaktivieren." - -#: grub-core/loader/i386/bsd.c:164 -msgid "Don't display boot diagnostic messages." -msgstr "Keine Fehlerdiagnosemeldungen beim Booten anzeigen." - -#: grub-core/loader/i386/bsd.c:167 -msgid "Boot with debug messages." -msgstr "Mit Fehlerdiagnosemeldungen booten." - -#: grub-core/loader/i386/bsd.c:168 -msgid "Suppress normal output (warnings remain)." -msgstr "Normale Ausgaben unterdrücken (Warnungen verbleiben)" - -#. TRANSLATORS: "com" is static and not to be translated. It refers to -#. serial ports e.g. com1. -#. -#: grub-core/loader/i386/bsd.c:175 -msgid "[ADDR|comUNIT][,SPEED]" -msgstr "[ADR|comUNIT][,GESCHW]" - -#: grub-core/loader/i386/bsd.c:489 grub-core/loader/i386/bsd.c:555 -msgid "name" -msgstr "Name" - -#: grub-core/loader/i386/bsd.c:489 grub-core/loader/i386/bsd.c:555 -msgid "type" -msgstr "Typ" - -#: grub-core/loader/i386/bsd.c:489 grub-core/loader/i386/bsd.c:555 -msgid "addr" -msgstr "Adresse" - -#: grub-core/loader/i386/bsd.c:490 grub-core/loader/i386/bsd.c:556 -msgid "size" -msgstr "Grösse" - -#: grub-core/loader/i386/bsd.c:1147 grub-core/loader/i386/linux.c:466 -#: grub-core/loader/i386/xnu.c:1030 -msgid "Booting in blind mode" -msgstr "Im Blindmodus booten" - -#: grub-core/loader/i386/bsd.c:2137 -msgid "Load kernel of FreeBSD." -msgstr "Kernel von FreeBSD laden." - -#: grub-core/loader/i386/bsd.c:2140 -msgid "Load kernel of OpenBSD." -msgstr "Kernel von OpenBSD laden." - -#: grub-core/loader/i386/bsd.c:2143 -msgid "Load kernel of NetBSD." -msgstr "Kernel von NetBSD laden." - -#: grub-core/loader/i386/bsd.c:2147 -msgid "Load FreeBSD env." -msgstr "FreeBSD-Umgebung laden." - -#: grub-core/loader/i386/bsd.c:2150 -msgid "Load FreeBSD kernel module." -msgstr "FreeBSD-Kernelmodul laden." - -#: grub-core/loader/i386/bsd.c:2153 -msgid "Load NetBSD kernel module." -msgstr "NetBSD-Kernelmodul laden." - -#: grub-core/loader/i386/bsd.c:2156 -msgid "Load NetBSD kernel module (ELF)." -msgstr "NetBSD-Kernelmodul laden (ELF)." - -#: grub-core/loader/i386/bsd.c:2159 -msgid "Load FreeBSD kernel module (ELF)." -msgstr "FreeBSD-Kernelmodul laden (ELF)." - -#. TRANSLATORS: ramdisk isn't identifier, -#. it can be translated. -#: grub-core/loader/i386/bsd.c:2165 -msgid "Load kOpenBSD ramdisk." -msgstr "Ramdisk von kOpenBSD laden." - -#. TRANSLATORS: "payload" is a term used -#. by coreboot and must be translated in -#. sync with coreboot. If unsure, -#. let it untranslated. -#: grub-core/loader/i386/coreboot/chainloader.c:510 -msgid "Load another coreboot payload" -msgstr "Weiteres Coreboot-Payload laden" - -#: grub-core/loader/i386/linux.c:876 -msgid "Legacy `ask' parameter no longer supported." -msgstr "Veralteter Parameter «%s» wird nicht mehr unterstützt." - -#: grub-core/loader/i386/linux.c:892 grub-core/loader/i386/linux.c:902 -#: grub-core/loader/i386/linux.c:932 -#, c-format -msgid "%s is deprecated. Use set gfxpayload=%s before linux command instead.\n" -msgstr "" -"%s ist veraltet. Verwenden Sie stattdessen gfxpayload=%s vor dem Linux-" -"Befehl.\n" - -#. TRANSLATORS: "x" has to be entered in, like an identifier, -#. so please don't use better Unicode codepoints. -#: grub-core/loader/i386/linux.c:915 -#, c-format -msgid "" -"%s is deprecated. VGA mode %d isn't recognized. Use set " -"gfxpayload=WIDTHxHEIGHT[xDEPTH] before linux command instead.\n" -msgstr "" -"%s ist veraltet. VGA-Modus %d wurde nicht erkannt. Verwenden Sie stattdessen " -"gfxpayload=BREITExHÖHE[xTIEFE] vor dem Linux-Befehl.\n" - -#: grub-core/loader/i386/pc/chainloader.c:302 -msgid "[--force|--bpb] FILE" -msgstr "[--force|--bpb] GERÄT" - -#: grub-core/loader/i386/pc/freedos.c:148 util/setup.c:293 -#, c-format -msgid "the size of `%s' is too large" -msgstr "«%s» ist zu gross" - -#: grub-core/loader/i386/pc/freedos.c:183 -msgid "Load FreeDOS kernel.sys." -msgstr "FreeDOS-kernel.sys laden." - -#: grub-core/loader/i386/pc/ntldr.c:155 -msgid "Load NTLDR or BootMGR." -msgstr "NTLDR oder BootMGR laden." - -#. TRANSLATORS: it's about guessing which GRUB disk -#. is which Plan9 disk. If your language has no -#. word "mapping" you can use another word which -#. means that the GRUBDEVICE and PLAN9DEVICE are -#. actually the same device, just named differently -#. in OS and GRUB. -#: grub-core/loader/i386/pc/plan9.c:59 -msgid "Override guessed mapping of Plan9 devices." -msgstr "Die geschätzte Zuordnung von Plan9-Geräten überschreiben." - -#: grub-core/loader/i386/pc/plan9.c:60 -msgid "GRUBDEVICE=PLAN9DEVICE" -msgstr "GRUB-GERÄT=PLAN9-GERÄT" - -#: grub-core/loader/i386/pc/plan9.c:599 -msgid "KERNEL ARGS" -msgstr "KERNEL ARGUMENTE" - -#: grub-core/loader/i386/pc/plan9.c:599 -msgid "Load Plan9 kernel." -msgstr "Plan9-Kernel laden." - -#: grub-core/loader/i386/pc/pxechainloader.c:161 -msgid "Load a PXE image." -msgstr "Ein PXE-Abbild laden." - -#: grub-core/loader/i386/pc/truecrypt.c:226 -msgid "Load Truecrypt ISO." -msgstr "Truecrypt-ISO laden." - -#: grub-core/loader/i386/xen.c:781 grub-core/loader/i386/xen.c:865 -msgid "initrd already loaded" -msgstr "initrd ist bereits geladen" - -#: grub-core/loader/i386/xen.c:968 -msgid "Load module." -msgstr "Modul laden." - -#: grub-core/loader/i386/xnu.c:1003 -msgid "Press any key to launch xnu" -msgstr "Drücken Sie eine beliebige Taste, um xnu zu starten" - -#. TRANSLATORS: `device-properties' -#. is a variable name, -#. not a program. -#: grub-core/loader/i386/xnu.c:1159 -msgid "Load `device-properties' dump." -msgstr "Inhalt von «device-properties» laden" - -#: grub-core/loader/ia64/efi/linux.c:124 -msgid "Could not locate FPSWA driver" -msgstr "FPSWA-Treiber konnte nicht gefunden werden" - -#: grub-core/loader/ia64/efi/linux.c:132 -msgid "FPSWA protocol wasn't able to find the interface" -msgstr "Das FPSWA-Protokoll war nicht imstande, die Schnittstelle zu finden" - -#: grub-core/loader/ia64/efi/linux.c:580 -msgid "No FPSWA found" -msgstr "Kein FPSWA gefunden" - -#: grub-core/loader/ia64/efi/linux.c:582 -#, c-format -msgid "FPSWA revision: %x\n" -msgstr "FPSWA-Revision: %x\n" - -#: grub-core/loader/ia64/efi/linux.c:591 -msgid "FILE [ARGS...]" -msgstr "DATEI [ARGUMENTE …]" - -#: grub-core/loader/ia64/efi/linux.c:597 -msgid "Display FPSWA version." -msgstr "FPSWA-Version anzeigen." - -#: grub-core/loader/multiboot.c:248 -msgid "WARNING: no console will be available to OS" -msgstr "WARNUNG: Im Betriebssystem wird keine Konsole verfügbar sein" - -#: grub-core/loader/multiboot.c:450 -msgid "Load a multiboot 2 kernel." -msgstr "Einen Multiboot2-Kernel laden." - -#: grub-core/loader/multiboot.c:453 -msgid "Load a multiboot 2 module." -msgstr "Ein Multiboot2-Modul laden." - -#: grub-core/loader/multiboot.c:456 -msgid "Load a multiboot kernel." -msgstr "Einen Multiboot-Kernel laden." - -#: grub-core/loader/multiboot.c:459 -msgid "Load a multiboot module." -msgstr "Ein Multiboot-Modul laden." - -#: grub-core/loader/riscv/linux.c:30 grub-core/loader/riscv/linux.c:40 -msgid "Linux not supported yet" -msgstr "Linux wird noch nicht unterstützt" - -#: grub-core/loader/xnu.c:1416 grub-core/term/gfxterm_background.c:45 -msgid "Background image mode." -msgstr "Modus des Hintergrundbildes." - -#. TRANSLATORS: This refers to background image mode (stretched or -#. in left-top corner). Note that GRUB will accept only original -#. keywords stretch and normal, not the translated ones. -#. So please put both in translation -#. e.g. stretch(=%STRETCH%)|normal(=%NORMAL%). -#. The percents mark the translated version. Since many people -#. may not know the word stretch or normal I recommend -#. putting the translation either here or in "Background image mode." -#. string. -#: grub-core/loader/xnu.c:1416 grub-core/term/gfxterm_background.c:55 -msgid "stretch|normal" -msgstr "stretch(=ZOOM)|normal(=NORMAL)" - -#: grub-core/loader/xnu.c:1482 -msgid "Load XNU image." -msgstr "XNU-Abbild laden." - -#: grub-core/loader/xnu.c:1484 -msgid "Load 64-bit XNU image." -msgstr "64-bit XNU-Abbild laden." - -#: grub-core/loader/xnu.c:1486 -msgid "Load XNU extension package." -msgstr "XNU-Erweiterungspaket laden." - -#: grub-core/loader/xnu.c:1488 -msgid "Load XNU extension." -msgstr "XNU-Erweiterung laden." - -#. TRANSLATORS: OSBundleRequired is a -#. variable name in xnu extensions -#. manifests. It behaves mostly like -#. GNU/Linux runlevels. -#. -#: grub-core/loader/xnu.c:1495 -msgid "DIRECTORY [OSBundleRequired]" -msgstr "VERZEICHNIS [OSBundleRequired]" - -#. TRANSLATORS: There are many extensions -#. in extension directory. -#: grub-core/loader/xnu.c:1498 -msgid "Load XNU extension directory." -msgstr "XNU-Erweiterungsverzeichnis laden." - -#. TRANSLATORS: ramdisk here isn't identifier. It can be translated. -#: grub-core/loader/xnu.c:1501 -msgid "Load XNU ramdisk. It will be available in OS as md0." -msgstr "XNU-Ramdisk laden. Wird im Betriebssystem als md0 angezeigt." - -#: grub-core/loader/xnu.c:1505 -msgid "Load a splash image for XNU." -msgstr "Begrüssungsbildschirm für XNU laden." - -#: grub-core/loader/xnu.c:1510 -msgid "Load an image of hibernated XNU." -msgstr "Ein gespeichertes XNU-Abbild laden." - -#: grub-core/mmap/mmap.c:538 -msgid "ADDR1,MASK1[,ADDR2,MASK2[,...]]" -msgstr "ADR1,MASKE1[,ADR2,MASKE2[,...]]" - -#: grub-core/mmap/mmap.c:539 -msgid "Declare memory regions as faulty (badram)." -msgstr "Speicherbereiche als «badram» deklarieren." - -#: grub-core/mmap/mmap.c:541 -msgid "FROM[K|M|G] TO[K|M|G]" -msgstr "VON[K|M|G] BIS[K|M|G]" - -#: grub-core/mmap/mmap.c:542 -msgid "Remove any memory regions in specified range." -msgstr "Alle Speichersegmente im angegebenen Bereich löschen." - -#: grub-core/net/bootp.c:653 -msgid "four arguments expected" -msgstr "Vier Argumente werden erwartet" - -#: grub-core/net/bootp.c:661 grub-core/net/net.c:1155 -#, c-format -msgid "unrecognised network interface `%s'" -msgstr "Netzwerk-Schnittstelle «%s» wurde nicht erkannt" - -#: grub-core/net/bootp.c:664 -msgid "no DHCP info found" -msgstr "Keine DHCP-Informationen gefunden" - -#: grub-core/net/bootp.c:674 -msgid "no DHCP options found" -msgstr "Keine DHCP-Optionen gefunden" - -#: grub-core/net/bootp.c:682 -msgid "invalid DHCP option code" -msgstr "Ungültiger DHCP-Optionscode" - -#: grub-core/net/bootp.c:686 -#, c-format -msgid "no DHCP option %u found" -msgstr "Keine DHCP-Option %u gefunden" - -#: grub-core/net/bootp.c:743 -#, c-format -msgid "unrecognised DHCP option format specification `%s'" -msgstr "Nicht erkannte Formatspezifikation für DHCP-Option «%s»" - -#: grub-core/net/bootp.c:767 -msgid "no network card found" -msgstr "Keine Netzwerkkarte gefunden" - -#: grub-core/net/bootp.c:859 grub-core/net/net.c:389 -#, c-format -msgid "couldn't autoconfigure %s" -msgstr "%s konnte nicht automatisch konfiguriert werden" - -#: grub-core/net/bootp.c:873 grub-core/net/bootp.c:876 -msgid "[CARD]" -msgstr "[KARTE]" - -#: grub-core/net/bootp.c:874 -msgid "perform a bootp autoconfiguration" -msgstr "Eine bootp-Autokonfiguration ausführen" - -#: grub-core/net/bootp.c:877 -msgid "perform a DHCP autoconfiguration" -msgstr "Eine DHCP-Autokonfiguration ausführen" - -#: grub-core/net/bootp.c:879 -msgid "VAR INTERFACE NUMBER DESCRIPTION" -msgstr "VARIABLE SCHNITTSTELLE ZAHL BESCHREIBUNG" - -#: grub-core/net/bootp.c:880 -msgid "" -"retrieve DHCP option and save it into VAR. If VAR is - then print the value." -msgstr "" -"DHCP-Option holen und in VARIABLE speichern. Falls VARIABLE «-» ist, den " -"Wert ausgeben." - -#: grub-core/net/dns.c:459 -msgid "no DNS servers configured" -msgstr "Es wurden keine DNS-Server konfiguriert" - -#: grub-core/net/dns.c:522 -msgid "domain name component is too long" -msgstr "Domainname-Komponente ist zu lang" - -#: grub-core/net/dns.c:618 grub-core/net/dns.c:666 -msgid "no DNS record found" -msgstr "Keine DNS-Angabe gefunden" - -#: grub-core/net/dns.c:626 -msgid "no DNS reply received" -msgstr "Kein DNS-Antwort empfangen" - -#: grub-core/net/dns.c:682 -msgid "only ipv4" -msgstr "nur ipv4" - -#: grub-core/net/dns.c:686 -msgid "only ipv6" -msgstr "nur ipv6" - -#: grub-core/net/dns.c:690 -msgid "prefer ipv4" -msgstr "ipv4 bevorzugen" - -#: grub-core/net/dns.c:694 -msgid "prefer ipv6" -msgstr "ipv6 bevorzugen" - -#: grub-core/net/dns.c:759 -msgid "ADDRESS DNSSERVER" -msgstr "ADDRESSE DNS_SERVER" - -#: grub-core/net/dns.c:760 -msgid "Perform a DNS lookup" -msgstr "Eine DNS-Suche ausführen" - -#: grub-core/net/dns.c:762 grub-core/net/dns.c:765 -msgid "DNSSERVER" -msgstr "DNSSERVER" - -#: grub-core/net/dns.c:763 -msgid "Add a DNS server" -msgstr "Einen DNS-Server hinzufügen" - -#: grub-core/net/dns.c:766 -msgid "Remove a DNS server" -msgstr "Einen DNS-Server entfernen" - -#: grub-core/net/dns.c:768 -msgid "List DNS servers" -msgstr "DNS-Server auflisten" - -#: grub-core/net/drivers/efi/efinet.c:49 grub-core/net/drivers/efi/efinet.c:65 -#: grub-core/net/drivers/efi/efinet.c:77 grub-core/net/drivers/emu/emunet.c:62 -#: grub-core/net/drivers/i386/pc/pxe.c:273 -#: grub-core/net/drivers/ieee1275/ofnet.c:75 -#: grub-core/net/drivers/uboot/ubootnet.c:62 -msgid "couldn't send network packet" -msgstr "Netzwerkpaket konnte nicht gesendet werden" - -#: grub-core/net/drivers/ieee1275/ofnet.c:326 -#: grub-core/net/drivers/ieee1275/ofnet.c:359 -msgid "interpret is not supported" -msgstr "Interpretierung wird nicht unterstützt" - -#: grub-core/net/drivers/ieee1275/ofnet.c:336 -msgid "alloc-mem failed" -msgstr "Speicherzuweisung (alloc-mem) ist gescheitert" - -#: grub-core/net/drivers/ieee1275/ofnet.c:370 -msgid "free-mem failed" -msgstr "free-mem ist gescheitert" - -#: grub-core/net/http.c:105 -msgid "unsupported HTTP response" -msgstr "Nicht unterstützte HTTP-Antwort" - -#. TRANSLATORS: GRUB HTTP code is pretty young. So even perfectly -#. valid answers like 403 will trigger this very generic message. -#: grub-core/net/http.c:126 -#, c-format -msgid "unsupported HTTP error %d: %s" -msgstr "Nicht unterstützter HTTP-Fehler %d: %s" - -#: grub-core/net/http.c:429 grub-core/net/tftp.c:420 -#, c-format -msgid "time out opening `%s'" -msgstr "Zeitüberschreitung beim Öffnen von «%s»" - -#: grub-core/net/net.c:179 -msgid "timeout: could not resolve hardware address" -msgstr "Zeitüberschreitung: Hardware-Adresse konnte nicht aufgelöst werden" - -#: grub-core/net/net.c:548 -#, c-format -msgid "unresolvable address %s" -msgstr "Nicht auflösbare Adresse %s" - -#: grub-core/net/net.c:594 -#, c-format -msgid "unrecognised network address `%s'" -msgstr "Nicht erkannte Netzwerkadresse «%s»" - -#: grub-core/net/net.c:661 -msgid "destination unreachable" -msgstr "Ziel ist nicht erreichbar" - -#. TRANSLATORS: route loop is a condition when e.g. -#. to contact server A you need to go through B -#. and to contact B you need to go through A. -#: grub-core/net/net.c:684 -msgid "route loop detected" -msgstr "Routenschleife entdeckt" - -#: grub-core/net/net.c:700 -msgid "address not found" -msgstr "Adresse nicht gefunden" - -#: grub-core/net/net.c:704 -msgid "you can't delete this address" -msgstr "Sie können diese Adresse nicht löschen" - -#: grub-core/net/net.c:776 grub-core/net/net.c:792 -#, c-format -msgid "Unsupported hw address type %d\n" -msgstr "Nicht unterstützter Hardware-Adresstyp %d\n" - -#: grub-core/net/net.c:813 -#, c-format -msgid "Unsupported address type %d\n" -msgstr "Nicht unterstützter Adresstyp %d\n" - -#: grub-core/net/net.c:1017 grub-core/net/net.c:1131 -msgid "three arguments expected" -msgstr "Drei Argumente erwartet" - -#: grub-core/net/net.c:1023 -msgid "card not found" -msgstr "Karte nicht gefunden" - -#. TRANSLATORS: it refers to the network address. -#: grub-core/net/net.c:1167 -msgid "temporary" -msgstr "temporär" - -#: grub-core/net/net.c:1190 -#, c-format -msgid "Unknown address type %d\n" -msgstr "Unbekannter Adresstyp %d\n" - -#: grub-core/net/net.c:1298 -msgid "no server is specified" -msgstr "Kein Server angegeben" - -#: grub-core/net/net.c:1637 -#, c-format -msgid "timeout reading `%s'" -msgstr "Zeitüberschreitung beim Lesen von «%s»" - -#. TRANSLATORS: HWADDRESS stands for -#. "hardware address". -#: grub-core/net/net.c:1762 -msgid "SHORTNAME CARD ADDRESS [HWADDRESS]" -msgstr "KURZNAME KARDE ADRESSE [HW-ADRESSE]" - -#: grub-core/net/net.c:1763 -msgid "Add a network address." -msgstr "Eine Netzwerkadresse hinzufügen." - -#: grub-core/net/net.c:1766 -msgid "[CARD [HWADDRESS]]" -msgstr "KARTE [HW-ADRESSE]" - -#: grub-core/net/net.c:1767 -msgid "Perform an IPV6 autoconfiguration" -msgstr "Eine IPV6-Autokonfiguration ausführen" - -#: grub-core/net/net.c:1770 grub-core/net/net.c:1777 -msgid "SHORTNAME" -msgstr "KURZNAME" - -#: grub-core/net/net.c:1771 -msgid "Delete a network address." -msgstr "Eine Netzwerkadresse löschen." - -#. TRANSLATORS: "gw" is a keyword. -#: grub-core/net/net.c:1774 -msgid "SHORTNAME NET [INTERFACE| gw GATEWAY]" -msgstr "KURZNAME NETZ [SCHNITTSTELLE| gw GATEWAY]" - -#: grub-core/net/net.c:1775 -msgid "Add a network route." -msgstr "Eine Netzwerkroute hinzufügen." - -#: grub-core/net/net.c:1778 -msgid "Delete a network route." -msgstr "Eine Netzwerkroute entfernen." - -#: grub-core/net/net.c:1780 -msgid "list network routes" -msgstr "Netzwerkrouten auflisten" - -#: grub-core/net/net.c:1782 -msgid "list network cards" -msgstr "Netzwerkkarten auflisten" - -#: grub-core/net/net.c:1784 -msgid "list network addresses" -msgstr "Netzwerkadressen auflisten" - -#: grub-core/net/tcp.c:681 -msgid "connection refused" -msgstr "Verbindung verweigert" - -#: grub-core/net/tcp.c:684 -msgid "connection timeout" -msgstr "Verbindungsabbruch wegen Zeitüberschreitung" - -#: grub-core/normal/auth.c:220 -msgid "Enter username: " -msgstr "Benutzername eingeben:" - -#: grub-core/normal/auth.c:269 -msgid "[USERLIST]" -msgstr "[BENUTZERLISTE]" - -#: grub-core/normal/auth.c:270 -msgid "Check whether user is in USERLIST." -msgstr "Überprüfen Sie, ob der Benutzer in der BENUTZERLISTE aufgeführt ist." - -#: grub-core/normal/cmdline.c:174 grub-core/normal/menu_entry.c:1068 -msgid "Possible commands are:" -msgstr "Mögliche Befehle sind:" - -#: grub-core/normal/cmdline.c:177 grub-core/normal/menu_entry.c:1072 -msgid "Possible devices are:" -msgstr "Mögliche Geräte sind:" - -#: grub-core/normal/cmdline.c:180 grub-core/normal/menu_entry.c:1076 -msgid "Possible files are:" -msgstr "Mögliche Dateien sind:" - -#: grub-core/normal/cmdline.c:183 grub-core/normal/menu_entry.c:1080 -msgid "Possible partitions are:" -msgstr "Mögliche Partitionen sind:" - -#: grub-core/normal/cmdline.c:186 grub-core/normal/menu_entry.c:1084 -msgid "Possible arguments are:" -msgstr "Mögliche Argumente sind:" - -#. TRANSLATORS: this message is used if none of above matches. -#. This shouldn't happen but please use the general term for -#. "thing" or "object". -#: grub-core/normal/cmdline.c:192 grub-core/normal/menu_entry.c:1088 -msgid "Possible things are:" -msgstr "Mögliche Dinge sind:" - -#: grub-core/normal/color.c:81 -#, c-format -msgid "Warning: syntax error (missing slash) in `%s'\n" -msgstr "Warnung: Syntaxfehler (fehlender /) in «%s»\n" - -#: grub-core/normal/color.c:90 -#, c-format -msgid "Warning: invalid foreground color `%s'\n" -msgstr "Warnung: ungültige Vordergrundfarbe «%s»\n" - -#: grub-core/normal/color.c:96 -#, c-format -msgid "Warning: invalid background color `%s'\n" -msgstr "Warnung: ungültige Hintergrundfarbe «%s»\n" - -#: grub-core/normal/context.c:206 -msgid "ENVVAR [ENVVAR] ..." -msgstr "UMGVAR [UMGVAR] ..." - -#: grub-core/normal/context.c:207 -msgid "Export variables." -msgstr "Variablen exportieren." - -#: grub-core/normal/datetime.c:25 -msgid "Sunday" -msgstr "Sonntag" - -#: grub-core/normal/datetime.c:26 -msgid "Monday" -msgstr "Montag" - -#: grub-core/normal/datetime.c:27 -msgid "Tuesday" -msgstr "Dienstag" - -#: grub-core/normal/datetime.c:28 -msgid "Wednesday" -msgstr "Mittwoch" - -#: grub-core/normal/datetime.c:29 -msgid "Thursday" -msgstr "Donnerstag" - -#: grub-core/normal/datetime.c:30 -msgid "Friday" -msgstr "Freitag" - -#: grub-core/normal/datetime.c:31 -msgid "Saturday" -msgstr "Samstag" - -#: grub-core/normal/dyncmd.c:187 -msgid "module isn't loaded" -msgstr "Modul ist nicht geladen" - -#: grub-core/normal/main.c:211 -#, c-format -msgid "GNU GRUB version %s" -msgstr "GNU GRUB Version %s" - -#: grub-core/normal/main.c:360 -msgid "ESC at any time exits." -msgstr "Beenden ist jederzeit mit ESC möglich." - -#: grub-core/normal/main.c:363 -#, c-format -msgid "" -"Minimal BASH-like line editing is supported. For the first word, TAB lists " -"possible command completions. Anywhere else TAB lists possible device or " -"file completions. %s" -msgstr "" -"Minimale BASH-ähnliche Zeilenbearbeitung wird unterstützt. Für das erste " -"Wort listet TAB die möglichen Befehlsvervollständigungen auf. Ansonsten " -"werden mit TAB die möglichen Geräte-oder Dateivervollständigungen angezeigt. " -"%s" - -#. TRANSLATORS: it's command line prompt. -#: grub-core/normal/main.c:395 -msgid ">" -msgstr ">" - -#. TRANSLATORS: it's command line prompt. -#: grub-core/normal/main.c:398 -msgid "grub>" -msgstr "grub>" - -#: grub-core/normal/main.c:518 -msgid "Clear the screen." -msgstr "Den Bildschirm leeren." - -#: grub-core/normal/main.c:527 -msgid "Enter normal mode." -msgstr "In Normalmodus wechseln." - -#: grub-core/normal/main.c:529 -msgid "Exit from normal mode." -msgstr "Normalmodus abbrechen." - -#: grub-core/normal/menu.c:66 grub-core/normal/menu_entry.c:1449 -msgid "Press any key to continue..." -msgstr "Beliebige Taste drücken, um fortzusetzen …" - -#: grub-core/normal/menu.c:815 -#, c-format -msgid "Booting `%s'" -msgstr "«%s» wird gebootet" - -#: grub-core/normal/menu.c:827 -#, c-format -msgid "Falling back to `%s'" -msgstr "Alternative «%s» wird verwendet" - -#: grub-core/normal/menu.c:843 -msgid "Failed to boot both default and fallback entries.\n" -msgstr "" -"Sowohl Vorgabe- als auch Alternativeinträge konnten nicht gebootet werden.\n" - -#: grub-core/normal/menu_entry.c:1171 -msgid "Booting a command list" -msgstr "Eine Befehlsliste booten" - -#: grub-core/normal/menu_text.c:160 -msgid "" -"Minimum Emacs-like screen editing is supported. TAB lists completions. Press " -"Ctrl-x or F10 to boot, Ctrl-c or F2 for a command-line or ESC to discard " -"edits and return to the GRUB menu." -msgstr "" -"Minimale Emacs-ähnliche Bildschirmbearbeitung wird unterstützt. TAB listet " -"Vervollständigungen auf. Drücken Sie Ctrl-X oder F10 zum Booten, Ctrl-C oder " -"F2 für eine Befehlszeile oder ESC, um abzubrechen und zum GRUB-Menü " -"zurückzukehren." - -#: grub-core/normal/menu_text.c:170 -#, c-format -msgid "Use the %C and %C keys to select which entry is highlighted." -msgstr "Verwenden Sie die Tasten %C und %C zum Markieren eines Eintrags." - -#. TRANSLATORS: that's the list of binary unit prefixes. -#: grub-core/normal/misc.c:38 -msgid "B" -msgstr "B" - -#: grub-core/normal/misc.c:38 -msgid "KiB" -msgstr "KiB" - -#: grub-core/normal/misc.c:38 -msgid "MiB" -msgstr "MiB" - -#: grub-core/normal/misc.c:38 -msgid "GiB" -msgstr "GiB" - -#: grub-core/normal/misc.c:38 -msgid "TiB" -msgstr "TiB" - -#: grub-core/normal/misc.c:38 -msgid "PiB" -msgstr "PiB" - -#. TRANSLATORS: that's the list of binary unit prefixes. -#: grub-core/normal/misc.c:40 -msgid "K" -msgstr "K" - -#: grub-core/normal/misc.c:40 -msgid "M" -msgstr "M" - -#: grub-core/normal/misc.c:40 -msgid "G" -msgstr "G" - -#: grub-core/normal/misc.c:40 -msgid "T" -msgstr "T" - -#: grub-core/normal/misc.c:40 -msgid "P" -msgstr "P" - -#. TRANSLATORS: that's the list of binary unit prefixes. -#: grub-core/normal/misc.c:42 -msgid "B/s" -msgstr "B/s" - -#: grub-core/normal/misc.c:42 -msgid "KiB/s" -msgstr "KiB/s" - -#: grub-core/normal/misc.c:42 -msgid "MiB/s" -msgstr "MiB/s" - -#: grub-core/normal/misc.c:42 -msgid "GiB/s" -msgstr "GiB/s" - -#: grub-core/normal/misc.c:42 -msgid "TiB/s" -msgstr "TiB/s" - -#: grub-core/normal/misc.c:42 -msgid "PiB/s" -msgstr "PiB/s" - -#: grub-core/normal/misc.c:96 -#, c-format -msgid "Partition %s:" -msgstr "Partition %s:" - -#: grub-core/normal/misc.c:101 -#, c-format -msgid "Device %s:" -msgstr "Gerät %s:" - -#: grub-core/normal/misc.c:107 -msgid "Filesystem cannot be accessed" -msgstr "Zugriff auf Dateisystem nicht möglich" - -#: grub-core/normal/misc.c:121 -#, c-format -msgid "Filesystem type %s" -msgstr "Dateisystemtyp %s" - -#: grub-core/normal/misc.c:131 -#, c-format -msgid "- Label `%s'" -msgstr "- Bezeichnung «%s»" - -#. TRANSLATORS: Arguments are year, month, day, hour, minute, -#. second, day of the week (translated). -#: grub-core/normal/misc.c:148 -#, c-format -msgid "- Last modification time %d-%02d-%02d %02d:%02d:%02d %s" -msgstr "- Letzte Änderungszeit %d-%02d-%02d %02d:%02d:%02d %s" - -#: grub-core/normal/misc.c:171 -msgid "No known filesystem detected" -msgstr "Kein bekanntes Dateisystem erkannt" - -#: grub-core/normal/misc.c:174 -#, c-format -msgid " - Partition start at %llu%sKiB" -msgstr " - Partitionsbeginn bei %llu%sKiB" - -#: grub-core/normal/misc.c:178 -#, c-format -msgid " - Sector size %uB" -msgstr " - Sektorgrösse %uB" - -#: grub-core/normal/misc.c:180 -msgid " - Total size unknown" -msgstr " - Gesamtgrösse unbekannt" - -#: grub-core/normal/misc.c:182 -#, c-format -msgid " - Total size %llu%sKiB" -msgstr " - Gesamtgrösse %llu%sKiB" - -#. TRANSLATORS: Replace dot with appropriate decimal separator for -#. your language. -#: grub-core/normal/misc.c:186 -msgid ".5" -msgstr ".5" - -#. TRANSLATORS: This has to fit on one line. It's ok to include few -#. words but don't write poems. -#: grub-core/normal/term.c:82 -msgid "--MORE--" -msgstr "--MEHR--" - -#: grub-core/osdep/aros/config.c:92 grub-core/osdep/unix/config.c:137 -#: grub-core/osdep/windows/config.c:55 -#, c-format -msgid "cannot open configuration file `%s': %s" -msgstr "Konfigurationsdatei «%s» kann nicht geöffnet werden: %s" - -#: grub-core/osdep/basic/compress.c:8 grub-core/osdep/basic/compress.c:14 -#: grub-core/osdep/basic/compress.c:20 -msgid "no compression is available for your platform" -msgstr "Auf Ihrer Plattform ist keine Kompression verfügbar" - -#: grub-core/osdep/basic/no_platform.c:30 -#: grub-core/osdep/windows/platform.c:418 -msgid "no IEEE1275 routines are available for your platform" -msgstr "Für Ihre Plattform sind keine IEEE1275-Routinen verfügbar" - -#: grub-core/osdep/basic/no_platform.c:38 -msgid "no EFI routines are available for your platform" -msgstr "Für Ihre Plattform sind keine EFI-Routinen verfügbar" - -#: grub-core/osdep/basic/no_platform.c:45 -#: grub-core/osdep/windows/platform.c:425 -msgid "no SGI routines are available for your platform" -msgstr "Für Ihre Plattform sind keine SGI-Routinen verfügbar" - -#. TRANSLATORS: The OS itself may very well have a random -#. number generator but GRUB doesn't know how to access it. -#: grub-core/osdep/basic/random.c:42 -msgid "no random number generator is available for your OS" -msgstr "Für Ihr Betriebssystem ist kein Zufallszahlengenerator verfügbar" - -#: grub-core/osdep/devmapper/getroot.c:81 -msgid "Failed to create `device-mapper' tree" -msgstr "Baum für «device-mapper» konnte nicht erstellt werden" - -#: grub-core/osdep/devmapper/getroot.c:197 -#: grub-core/osdep/freebsd/getroot.c:202 -#, c-format -msgid "can't mount encrypted volume `%s': %s" -msgstr "Verschlüsselter Datenträger «%s» konnte nicht eingebunden werden: %s" - -#. TRANSLATORS: geom is the name of (k)FreeBSD device framework. -#. Usually left untranslated. -#. -#: grub-core/osdep/freebsd/getroot.c:82 grub-core/osdep/freebsd/getroot.c:164 -#: grub-core/osdep/freebsd/getroot.c:258 grub-core/osdep/freebsd/getroot.c:316 -msgid "couldn't open geom" -msgstr "«geom» konnte nicht geöffnet werden!" - -#: grub-core/osdep/freebsd/getroot.c:182 grub-core/osdep/freebsd/getroot.c:277 -msgid "couldn't find geli consumer" -msgstr "Geli-Nutzer konnte nicht gefunden werden" - -#: grub-core/osdep/freebsd/getroot.c:282 -msgid "couldn't retrieve geli UUID" -msgstr "Geli-UUID konnte nicht ermittelt werden" - -#. TRANSLATORS: geom is the name of (k)FreeBSD device framework. -#. Usually left untranslated. "part" is the identifier of one of its -#. classes. -#: grub-core/osdep/freebsd/getroot.c:325 -msgid "couldn't find geom `part' class" -msgstr "«part»-Teil von «geom» konnte nicht geöffnet werden" - -#: grub-core/osdep/freebsd/hostdisk.c:72 grub-core/osdep/linux/hostdisk.c:93 -msgid "unaligned device size" -msgstr "Gerätegrösse ist unausgerichtet" - -#: grub-core/osdep/generic/blocklist.c:56 -#, c-format -msgid "attempting to read the core image `%s' from GRUB" -msgstr "Es wird versucht, das Core-Abbild «%s» aus GRUB zu lesen" - -#: grub-core/osdep/generic/blocklist.c:57 -#, c-format -msgid "attempting to read the core image `%s' from GRUB again" -msgstr "Es wird versucht, das Core-Abbild «%s» erneut aus GRUB zu lesen" - -#: grub-core/osdep/generic/blocklist.c:115 -#, c-format -msgid "cannot read `%s' correctly" -msgstr "«%s» kann nicht korrekt gelesen werden" - -#: grub-core/osdep/generic/blocklist.c:126 -msgid "failed to read the sectors of the core image" -msgstr "Lesen der Sektoren des Core-Abbildes ist gescheitert" - -#. TRANSLATORS: On GNU/Hurd, a "translator" is similar to a filesystem -#. mount, but handled by a userland daemon, whose invocation command line -#. is being fetched here. First %s is the file being looked at (for which -#. we are fetching the "translator" command line), second %s is the error -#. message. -#. -#: grub-core/osdep/hurd/getroot.c:79 -#, c-format -msgid "cannot get translator command line for path `%s': %s" -msgstr "" -"Übersetzer-Befehlszeilenpfad für Pfad «%s» konnte nicht ermittelt werden: %s" - -#: grub-core/osdep/hurd/getroot.c:82 -#, c-format -msgid "translator command line is empty for path `%s'" -msgstr "Übersetzer-Befehlszeilenpfad für Pfad «%s» ist leer" - -#. TRANSLATORS: we expect to get something like -#. /hurd/foobar --option1 --option2=baz /dev/something -#. -#: grub-core/osdep/hurd/getroot.c:98 -#, c-format -msgid "" -"translator `%s' for path `%s' has several non-option words, at least `%s' " -"and `%s'" -msgstr "" -"Übersetzer «%s» für Pfad «%s» hat verschiedene Wörter, die keine Optionen " -"sind, mindestens «%s» und «%s»" - -#. TRANSLATORS: we expect to get something like -#. /hurd/foobar --option1 --option2=baz /dev/something -#. -#: grub-core/osdep/hurd/getroot.c:109 -#, c-format -msgid "" -"translator `%s' for path `%s' is given only options, cannot find device part" -msgstr "" -"Übersetzer «%s» für Pfad «%s» wurde nur Optionen übergeben, device-Teil " -"konnte nicht gefunden werden" - -#: grub-core/osdep/hurd/hostdisk.c:73 -#, c-format -msgid "Storage information for `%s' does not include type" -msgstr "Speicherinfo für «%s» enthält keinen Typ" - -#: grub-core/osdep/hurd/hostdisk.c:75 -#, c-format -msgid "`%s' is not a local disk" -msgstr "«%s» ist keine lokale Festplatte" - -#: grub-core/osdep/hurd/hostdisk.c:78 -#, c-format -msgid "" -"Storage information for `%s' indicates neither a plain partition nor a plain " -"disk" -msgstr "" -"Speicherinformation für «%s» weist weder auf eine Partition noch einen " -"Datenträger hin" - -#: grub-core/osdep/linux/blocklist.c:81 grub-core/osdep/linux/blocklist.c:96 -#: grub-core/osdep/linux/blocklist.c:122 -#, c-format -msgid "can't retrieve blocklists: %s" -msgstr "Blocklisten konnten nicht ermittelt werden: %s" - -#: grub-core/osdep/linux/blocklist.c:84 -msgid "blocksize is not divisible by 512" -msgstr "Blockgrösse ist nicht durch 512 teilbar" - -#: grub-core/osdep/linux/blocklist.c:86 -msgid "invalid zero blocksize" -msgstr "Ungültige Blockgrösse Null" - -#: grub-core/osdep/linux/blocklist.c:90 util/setup.c:744 -msgid "can't retrieve blocklists" -msgstr "Blocklisten konnten nicht ermittelt werden" - -#: grub-core/osdep/linux/getroot.c:154 -#, c-format -msgid "ioctl RAID_VERSION error: %s" -msgstr "RAID_VERSION-Fehler (ioctl): %s" - -#: grub-core/osdep/linux/getroot.c:160 grub-core/osdep/linux/getroot.c:164 -#, c-format -msgid "unsupported RAID version: %d.%d" -msgstr "Nicht unterstützte RAID-Version: %d.%d" - -#: grub-core/osdep/linux/getroot.c:169 -#, c-format -msgid "ioctl GET_ARRAY_INFO error: %s" -msgstr "GET_ARRAY_INFO-Fehler (ioctl): %s" - -#: grub-core/osdep/linux/getroot.c:178 -#, c-format -msgid "ioctl GET_DISK_INFO error: %s" -msgstr "GET_DISK_INFO-Fehler (ioctl): %s" - -#: grub-core/osdep/linux/getroot.c:608 grub-core/osdep/linux/getroot.c:678 -#: grub-core/osdep/linux/hostdisk.c:126 grub-core/osdep/unix/getroot.c:253 -#: grub-core/osdep/unix/getroot.c:642 grub-core/osdep/unix/platform.c:92 -#: grub-core/osdep/unix/platform.c:100 -#, c-format -msgid "Unable to open stream from %s: %s" -msgstr "Datenstrom von %s konnte nicht geöffnet werden: %s" - -#: grub-core/osdep/linux/getroot.c:1033 -#, c-format -msgid "unknown kind of RAID device `%s'" -msgstr "Ungültiger Typ eines RAID-Geräts «%s»" - -#: grub-core/osdep/linux/ofpath.c:181 -#, c-format -msgid "`obppath' not found in parent dirs of `%s', no IEEE1275 name discovery" -msgstr "" -"«obppath» wurde in den übergeordneten Verzeichnissen von «%s» nicht " -"gefunden, keine IEEE1275-Namensermittlung" - -#: grub-core/osdep/linux/ofpath.c:222 grub-core/osdep/unix/getroot.c:505 -#: grub-core/osdep/unix/getroot.c:529 grub-core/osdep/unix/relpath.c:49 -#: util/grub-install.c:984 util/grub-install.c:1331 util/grub-probe.c:323 -#, c-format -msgid "failed to get canonical path of `%s'" -msgstr "Kanonischer Pfad von «%s» konnte nicht ermittelt werden" - -#: grub-core/osdep/linux/ofpath.c:740 -#, c-format -msgid "unknown device type %s" -msgstr "Unbekannter Gerätetyp %s" - -#: grub-core/osdep/linux/ofpath.c:758 util/ieee1275/grub-ofpathname.c:39 -#, c-format -msgid "Usage: %s DEVICE\n" -msgstr "Aufruf: %s GERÄT\n" - -#: grub-core/osdep/unix/exec.c:86 grub-core/osdep/unix/exec.c:172 -#: grub-core/osdep/unix/exec.c:217 -#, c-format -msgid "Unable to fork: %s" -msgstr "Fork konnte nicht angelegt werden: %s" - -#: grub-core/osdep/unix/exec.c:166 grub-core/osdep/unix/exec.c:211 -#, c-format -msgid "Unable to create pipe: %s" -msgstr "Weiterleitung konnte nicht angelegt werden: %s" - -#: grub-core/osdep/unix/getroot.c:370 -msgid "cannot save the original directory" -msgstr "Originalverzeichnis kann nicht gespeichert werden" - -#: grub-core/osdep/unix/getroot.c:423 grub-core/osdep/unix/getroot.c:480 -#: grub-core/osdep/unix/getroot.c:489 -msgid "cannot restore the original directory" -msgstr "Originalverzeichnis kann nicht wiederhergestellt werden" - -#. TRANSLATORS: "stat" comes from the name of POSIX function. -#: grub-core/osdep/unix/getroot.c:551 grub-core/osdep/unix/hostdisk.c:61 -#: grub-core/osdep/unix/relpath.c:73 grub-core/osdep/unix/relpath.c:97 -#: util/getroot.c:160 util/getroot.c:162 util/grub-install.c:774 -#: util/grub-macbless.c:70 -#, c-format -msgid "cannot stat `%s': %s" -msgstr "Aufruf von stat für «%s» nicht möglich: %s" - -#: grub-core/osdep/unix/hostdisk.c:293 -#, c-format -msgid "cannot make temporary file: %s" -msgstr "Temporäre Datei kann nicht angelegt werden: %s" - -#: grub-core/osdep/unix/hostdisk.c:311 -#, c-format -msgid "cannot make temporary directory: %s" -msgstr "Temporäres Verzeichnis konnte nicht erstellt werden: %s" - -#: grub-core/osdep/unix/platform.c:77 -#, c-format -msgid "" -"couldn't find IEEE1275 device path for %s.\n" -"You will have to set `boot-device' variable manually" -msgstr "" -"IEEE1275-Gerätepfad für %s konnte nicht gefunden werden.\n" -"Sie müssen die Variable «boot-device» manuell setzen." - -#. TRANSLATORS: This message is shown when required executable `%s' -#. isn't found. -#: grub-core/osdep/unix/platform.c:149 grub-core/osdep/unix/platform.c:189 -#, c-format -msgid "%s: not found" -msgstr "%s: Nicht gefunden" - -#: grub-core/osdep/unix/platform.c:225 -#, c-format -msgid "" -"`nvsetenv' failed. \n" -"You will have to set `boot-device' variable manually. At the IEEE1275 " -"prompt, type:\n" -" %s\n" -msgstr "" -"«nvsetenv» ist fehlgeschlagen. \n" -"Sie müssen die Variable «boot-device» manuell setzen. Geben Sie am IEEE1275-" -"Prompt Folgendes ein:\n" -" %s\n" - -#: grub-core/osdep/unix/platform.c:240 -msgid "You will have to set `SystemPartition' and `OSLoader' manually." -msgstr "«SystemPartition» und «OSLoader» müssen manuell eingerichtet werden." - -#. TRANSLATORS: canonical pathname is the -#. complete one e.g. /etc/fstab. It has -#. to contain `/' normally, if it doesn't -#. we're in trouble and throw this error. -#: grub-core/osdep/unix/relpath.c:90 -msgid "no `/' in canonical filename" -msgstr "Kanonischer Pfadname enthält keinen «/»" - -#: grub-core/osdep/windows/hostdisk.c:151 -msgid "cygwin_conv_path() failed" -msgstr "cygwin_conv_path() gescheitert" - -#: grub-core/osdep/windows/hostdisk.c:501 util/grub-install.c:570 -msgid "couldn't retrieve random data" -msgstr "Zufallsdaten konnten nicht geholt werden" - -#: grub-core/osdep/windows/platform.c:97 -msgid "Insufficient privileges to access firmware, assuming BIOS" -msgstr "Unzureichende Zugriffsrechte für Firmware, BIOS wird angenommen" - -#: grub-core/osdep/windows/platform.c:225 -msgid "no EFI routines are available when running in BIOS mode" -msgstr "Im BIOS-Modus sind keine EFI-Routinen verfügbar" - -#: grub-core/osdep/windows/platform.c:240 -msgid "unexpected EFI error" -msgstr "Unerwarteter EFI-Fehler" - -#: grub-core/osdep/windows/platform.c:315 -msgid "Couldn't find a free BootNNNN slot" -msgstr "Es konnte keine freier BootNNNN-Slot ist" - -#: grub-core/partmap/gpt.c:191 -msgid "" -"this GPT partition label contains no BIOS Boot Partition; embedding won't be " -"possible" -msgstr "" -"Diese GPT-Partitionsbezeichnung hat keine BIOS-Boot-Partition, Einbettung " -"würde unmöglich sein" - -#: grub-core/partmap/gpt.c:196 -msgid "your BIOS Boot Partition is too small; embedding won't be possible" -msgstr "Ihre BIOS-Boot-Partition ist zu klein, Einbettung würde unmöglich sein" - -#. TRANSLATORS: MBR gap and boot track is the same thing and is the space -#. between MBR and first partitition. If your language translates well only -#. "boot track", you can just use it everywhere. Next two messages are about -#. RAID controllers/software bugs which GRUB has to live with. Please spread -#. the message that these are bugs in other software and not merely -#. suboptimal behaviour. -#: grub-core/partmap/msdos.c:51 -#, c-format -msgid "" -"Sector %llu is already in use by raid controller `%s'; avoiding it. Please " -"ask the manufacturer not to store data in MBR gap" -msgstr "" -"Der Sektor %llu wird bereits vom Raid-Controller «%s» verwendet und wird " -"daher übergangen. Bitte fragen Sie den Hersteller, ob es möglich ist, keine " -"Daten in der MBR-Lücke zu speichern." - -#: grub-core/partmap/msdos.c:54 -#, c-format -msgid "" -"Sector %llu is already in use by the program `%s'; avoiding it. This " -"software may cause boot or other problems in future. Please ask its authors " -"not to store data in the boot track" -msgstr "" -"Der Sektor %llu wird bereits vom Programm «%s» verwendet und wird daher " -"übergangen. Diese Software kann in Zukunft Start- oder andere Probleme " -"hervorrufen. Bitte fragen Sie dessen Autoren, ob es möglich ist, keine Daten " -"im Boot-Bereich zu speichern." - -#: grub-core/partmap/msdos.c:384 -msgid "" -"other software is using the embedding area, and there is not enough room for " -"core.img. Such software is often trying to store data in a way that avoids " -"detection. We recommend you investigate" -msgstr "" -"Andere Software nutzt den Einbettungsbereich, wodurch nicht genug Platz für " -"core.img ist. Solche Software versucht häufig, Daten zu speichern, um sie " -"unauffindbar zu machen. Wir empfehlen Ihnen, dies zu untersuchen" - -#: grub-core/partmap/msdos.c:395 -msgid "" -"this msdos-style partition label has no post-MBR gap; embedding won't be " -"possible" -msgstr "" -"Die MSDOS-Partitionsbezeichnung hat keinen Freiraum nach dem MBR, Einbettung " -"würde unmöglich sein" - -#: grub-core/partmap/msdos.c:404 -msgid "your embedding area is unusually small. core.img won't fit in it." -msgstr "" -"Ihr Einbettungsbereich ist ungewöhnlich klein. core.img würde nicht " -"hineinpassen." - -#: grub-core/parttool/msdospart.c:39 -msgid "Make partition active" -msgstr "Partition als aktiv markieren" - -#: grub-core/parttool/msdospart.c:51 -msgid "not a primary partition" -msgstr "Keine primäre Partition" - -#: grub-core/parttool/msdospart.c:69 -#, c-format -msgid "Partition %d is active now. \n" -msgstr "Partition %d ist nun aktiv. \n" - -#: grub-core/parttool/msdospart.c:74 -#, c-format -msgid "Cleared active flag on %d. \n" -msgstr "«active»-Flag auf %d wurde gelöscht. \n" - -#: grub-core/parttool/msdospart.c:87 -msgid "Change partition type" -msgstr "Partitionstyp ändern" - -#: grub-core/parttool/msdospart.c:88 -msgid "Set `hidden' flag in partition type" -msgstr "«hidden»-Flag im Partitionstyp setzen" - -#: grub-core/parttool/msdospart.c:130 -#, c-format -msgid "the partition type 0x%x isn't valid" -msgstr "Der Partitionstyp 0x%x ist ungültig" - -#. TRANSLATORS: In this case we're actually writing to the disk and actively -#. modifying partition type rather than just defining it. -#: grub-core/parttool/msdospart.c:137 -#, c-format -msgid "Setting partition type to 0x%x\n" -msgstr "Partitionstyp wird auf 0x%x gesetzt\n" - -#. TRANSLATORS: 0 is a quantifier. "break" (similar to bash) -#. can be used e.g. to break 3 loops at once. -#. But asking it to break 0 loops makes no sense. -#: grub-core/script/execute.c:143 -msgid "can't break 0 loops" -msgstr "0 Schleifen können nicht unterbrochen werden" - -#. TRANSLATORS: It's about not being -#. inside a function. "return" can be used only -#. in a function and this error occurs if it's used -#. anywhere else. -#: grub-core/script/execute.c:227 -msgid "not in function body" -msgstr "ausserhalb des Bereichs der Funktion" - -#: grub-core/script/execute.c:371 -#, c-format -msgid "invalid variable name `%s'" -msgstr "Ungültiger Variablenname «%s»" - -#: grub-core/script/execute.c:953 -msgid "cannot allocate command buffer" -msgstr "Befehlspuffer kann nicht belegt werden" - -#: grub-core/script/lexer.c:144 util/grub-fstest.c:330 -msgid "unexpected end of file" -msgstr "Unerwartetes Dateiende" - -#: grub-core/script/main.c:55 grub-core/script/main.c:57 -#: grub-core/script/main.c:59 grub-core/script/main.c:67 -msgid "[NUM]" -msgstr "[ZAHL]" - -#: grub-core/script/main.c:55 -msgid "Exit from loops" -msgstr "Schleifendurchlauf beenden" - -#: grub-core/script/main.c:57 -msgid "Continue loops" -msgstr "Schleifen fortsetzen" - -#. TRANSLATORS: Positional arguments are -#. arguments $0, $1, $2, ... -#: grub-core/script/main.c:62 -msgid "Shift positional parameters." -msgstr "Positionsparameter anpassen." - -#: grub-core/script/main.c:64 -msgid "[VALUE]..." -msgstr "[WERT]..." - -#: grub-core/script/main.c:65 -msgid "Set positional parameters." -msgstr "Positionsparameter festlegen." - -#. TRANSLATORS: It's a command description -#. and "Return" is a verb, not a noun. The -#. command in question is "return" and -#. has exactly the same semanics as bash -#. equivalent. -#: grub-core/script/main.c:73 -msgid "Return from a function." -msgstr "Aus einer Funktion zurückkehren." - -#: grub-core/term/gfxterm_background.c:176 -msgid "[-m (stretch|normal)] FILE" -msgstr "[-m (stretch|normal)] DATEI" - -#: grub-core/term/gfxterm_background.c:177 -msgid "Load background image for active terminal." -msgstr "Hintergrundbild für aktives Terminal laden." - -#: grub-core/term/gfxterm_background.c:182 util/grub-install.c:302 -#: util/grub-install.c:303 util/grub-mkrescue.c:107 util/grub-mkrescue.c:108 -#: util/grub-render-label.c:61 util/grub-render-label.c:63 -msgid "COLOR" -msgstr "FARBE" - -#: grub-core/term/gfxterm_background.c:183 -msgid "Set background color for active terminal." -msgstr "Hintergrundfarbe für aktives Terminal festlegen." - -#: grub-core/term/i386/coreboot/cbmemc.c:139 -msgid "Show CBMEM console content." -msgstr "Inhalt der CBMEM-Konsole anzeigen." - -#: grub-core/term/serial.c:57 -msgid "Set the serial unit." -msgstr "Einheit des seriellen Ports festlegen." - -#: grub-core/term/serial.c:58 -msgid "Set the serial port address." -msgstr "Adresse des seriellen Ports festlegen." - -#: grub-core/term/serial.c:59 -msgid "Set the serial port speed." -msgstr "Geschwindigkeit des seriellen Ports festlegen." - -#: grub-core/term/serial.c:60 -msgid "Set the serial port word length." -msgstr "Wortlänge des seriellen Ports festlegen." - -#: grub-core/term/serial.c:61 -msgid "Set the serial port parity." -msgstr "Parität des seriellen Ports festlegen." - -#: grub-core/term/serial.c:62 -msgid "Set the serial port stop bits." -msgstr "Stop-Bits des seriellen Ports festlegen." - -#: grub-core/term/serial.c:63 -msgid "Set the base frequency." -msgstr "Basisfrequenz festlegen." - -#: grub-core/term/serial.c:64 -msgid "Enable/disable RTS/CTS." -msgstr "RTS/CTS aktivieren/deaktivieren." - -#: grub-core/term/serial.c:218 -#, c-format -msgid "serial port `%s' isn't found" -msgstr "Serieller Port «%s» wurde nicht gefunden" - -#: grub-core/term/serial.c:254 -msgid "unsupported serial port flow control" -msgstr "Flusskontrolle des seriellen Ports wird nicht unterstützt" - -#: grub-core/term/serial.c:429 -msgid "[OPTIONS...]" -msgstr "[OPTIONEN…]" - -#: grub-core/term/serial.c:430 -msgid "Configure serial port." -msgstr "Serielle Schnittstelle konfigurieren." - -#: grub-core/term/terminfo.c:184 -#, c-format -msgid "unknown terminfo type `%s'" -msgstr "Unbekannter Terminfo-Typ «%s»" - -#: grub-core/term/terminfo.c:668 -msgid "ASCII" -msgstr "ASCII" - -#: grub-core/term/terminfo.c:671 -msgid "UTF-8" -msgstr "UTF-8" - -#. TRANSLATORS: visually ordered UTF-8 is a non-compliant encoding -#. based on UTF-8 with right-to-left languages written in reverse. -#. Used on some terminals. Normal UTF-8 is refered as -#. "logically-ordered UTF-8" by opposition. -#: grub-core/term/terminfo.c:677 -msgid "visually-ordered UTF-8" -msgstr "Visuelles UTF-8" - -#: grub-core/term/terminfo.c:680 -msgid "Unknown encoding" -msgstr "Unbekannte Kodierung" - -#: grub-core/term/terminfo.c:684 -msgid "Current terminfo types:" -msgstr "Aktuelle Terminfo-Typen:" - -#: grub-core/term/terminfo.c:699 -msgid "Terminal is ASCII-only [default]." -msgstr "Terminal ist nur ASCII [Vorgabe]." - -#: grub-core/term/terminfo.c:700 -msgid "Terminal is logical-ordered UTF-8." -msgstr "Terminal ist logisches UTF-8." - -#: grub-core/term/terminfo.c:701 -msgid "Terminal is visually-ordered UTF-8." -msgstr "Terminal ist visuelles UTF-8." - -#: grub-core/term/terminfo.c:703 -msgid "Terminal has specified geometry." -msgstr "Terminalgeometrie wurde festgelegt." - -#. TRANSLATORS: "x" has to be entered in, like an identifier, so please don't -#. use better Unicode codepoints. -#: grub-core/term/terminfo.c:706 -msgid "WIDTHxHEIGHT." -msgstr "BREITExHÖHE." - -#: grub-core/term/terminfo.c:746 -msgid "incorrect terminal dimensions specification" -msgstr "Ungültige Angabe der Terminalgeometrie" - -#: grub-core/term/terminfo.c:776 -#, c-format -msgid "terminal %s isn't found or it's not handled by terminfo" -msgstr "" -"Terminal %s wurde nicht gefunden oder wird von terminfo nicht berücksichtigt" - -#: grub-core/term/terminfo.c:785 -msgid "[[-a|-u|-v] [-g WxH] TERM [TYPE]]" -msgstr "[[-a|-u|-v] [-g BxH] TERM [TYP]]" - -#: grub-core/term/terminfo.c:786 -msgid "Set terminfo type of TERM to TYPE.\n" -msgstr "terminfo-Typ von TERM auf TYP setzen.\n" - -#. TRANSLATORS: this is the BLOCK-argument, not -#. environment block. -#: grub-core/tests/test_blockarg.c:49 -msgid "Print and execute block argument." -msgstr "Blockargument ausgeben und ausführen." - -#. TRANSLATORS: We're speaking about bitmap images like -#. JPEG or PNG. -#: grub-core/video/bitmap.c:209 -#, c-format -msgid "bitmap file `%s' is of unsupported format" -msgstr "Bitmap-Datei «%s» besitzt ein nicht unterstütztes Format" - -#: grub-core/video/i386/pc/vbe.c:1191 -#, c-format -msgid " VBE info: version: %d.%d OEM software rev: %d.%d\n" -msgstr " VBE-Info: Version: %d.%d OEM-Softwarerevision: %d.%d\n" - -#: grub-core/video/i386/pc/vbe.c:1198 -#, c-format -msgid " total memory: %d KiB\n" -msgstr " Gesamtspeicher: %d KiB\n" - -#: grub-core/video/video.c:596 grub-core/video/video.c:762 -msgid "no suitable video mode found" -msgstr "Kein passender Videomodus gefunden" - -#: include/grub/crypto.h:403 -msgid "access denied" -msgstr "Zugriff verweigert" - -#: include/grub/util/install.h:30 include/grub/util/install.h:35 -msgid "MODULES" -msgstr "MODULE" - -#: include/grub/util/install.h:31 -msgid "pre-load specified modules MODULES" -msgstr "In MODULE angegebene Module vorladen" - -#: include/grub/util/install.h:33 -msgid "embed a specific DTB" -msgstr "Eine spezifische DTB einbetten" - -#: include/grub/util/install.h:36 -msgid "install only MODULES and their dependencies [default=all]" -msgstr "Nur MODULE und deren Abhängigkeiten installieren [Vorgabe=alle]" - -#: include/grub/util/install.h:37 -msgid "THEMES" -msgstr "THEMEN" - -#: include/grub/util/install.h:38 -#, c-format -msgid "install THEMES [default=%s]" -msgstr "THEMEN installieren [Vorgabe=%s]" - -#: include/grub/util/install.h:39 -msgid "FONTS" -msgstr "SCHRIFTEN" - -#: include/grub/util/install.h:40 -#, c-format -msgid "install FONTS [default=%s]" -msgstr "SCHRIFTEN installieren [Vorgabe=%s]" - -#: include/grub/util/install.h:41 -msgid "LOCALES" -msgstr "SPRACHEN" - -#: include/grub/util/install.h:42 -msgid "install only LOCALES [default=all]" -msgstr "Nur SPRACHEN installieren [Vorgabe=alle]" - -#: include/grub/util/install.h:45 -msgid "compress GRUB files [optional]" -msgstr "GRUB-Dateien komprimieren [optional]" - -#: include/grub/util/install.h:48 util/grub-mkimage.c:83 -msgid "choose the compression to use for core image" -msgstr "Zu verwendende Kompression für Kernel-Abbild auswählen" - -#. TRANSLATORS: platform here isn't identifier. It can be translated. -#: include/grub/util/install.h:51 include/grub/util/install.h:54 -#: util/grub-mkimage.c:66 -#, c-format -msgid "use images and modules under DIR [default=%s/]" -msgstr "Abbilder und Module in VERZEICHNIS verwenden [Vorgabe=%s/]" - -#: include/grub/util/install.h:57 -#, c-format -msgid "use translations under DIR [default=%s]" -msgstr "Übersetzungen im Verzeichnis VERZ verwenden [Vorgabe=%s]" - -#: include/grub/util/install.h:60 -#, c-format -msgid "use themes under DIR [default=%s]" -msgstr "GRUB-Dateien im Verzeichnis VERZ verwenden [Vorgabe=%s]" - -#: include/grub/util/install.h:65 util/grub-mkimage.c:78 -msgid "embed FILE as public key for signature checking" -msgstr "DATEI als öffentlichen Schlüssel zur Signaturüberprüfung einbetten" - -#: util/editenv.c:59 util/grub-editenv.c:201 util/grub-install-common.c:535 -#: util/grub-mkimage.c:315 util/setup.c:791 -#, c-format -msgid "cannot sync `%s': %s" -msgstr "«%s» kann nicht synchronisiert werden: %s" - -#: util/editenv.c:64 -#, c-format -msgid "cannot rename the file %s to %s" -msgstr "Datei %s kann nicht in %s umbenannt werden" - -#: util/getroot.c:402 -#, c-format -msgid "disk does not exist, so falling back to partition device %s" -msgstr "" -"Platte existiert nicht, ersatzweise wird Partition des Geräts %s verwendet" - -#: util/grub-editenv.c:45 util/grub-fstest.c:506 -msgid "Commands:" -msgstr "Befehle:" - -#: util/grub-editenv.c:47 -msgid "Create a blank environment block file." -msgstr "Eine leere Umgebungs-Blockdatei erstellen." - -#: util/grub-editenv.c:49 -msgid "List the current variables." -msgstr "Aktuelle Variablen auflisten." - -#. TRANSLATORS: "set" is a keyword. It's a summary of "set" subcommand. -#: util/grub-editenv.c:51 -msgid "set [NAME=VALUE ...]" -msgstr "set [NAME=WERT ...]" - -#: util/grub-editenv.c:52 -msgid "Set variables." -msgstr "Variablen setzen." - -#. TRANSLATORS: "unset" is a keyword. It's a summary of "unset" subcommand. -#: util/grub-editenv.c:54 -msgid "unset [NAME ...]" -msgstr "unset [NAME ...]" - -#: util/grub-editenv.c:55 -msgid "Delete variables." -msgstr "Variablen löschen." - -#: util/grub-editenv.c:57 -msgid "Options:" -msgstr "Optionen:" - -#: util/grub-editenv.c:84 -msgid "You need to specify at least one command.\n" -msgstr "Sie müssen mindestens einen Befehl angeben.\n" - -#: util/grub-editenv.c:113 -msgid "FILENAME COMMAND" -msgstr "DATEINAME BEFEHL" - -#: util/grub-editenv.c:114 -msgid "Tool to edit environment block." -msgstr "Werkzeug zum Bearbeiten einer Umgebungs-Blockdatei." - -#: util/grub-editenv.c:116 -#, c-format -msgid "" -"If FILENAME is `-', the default value %s is used.\n" -"\n" -"There is no `delete' command; if you want to delete the whole environment\n" -"block, use `rm %s'." -msgstr "" -"Falls DATEINAME als «-» angegeben ist, wird er Vorgabewert %s verwendet.\n" -"\n" -"Es gibt keinen «delete»-Befehl. Falls Sie den gesamten Umgebungsblock " -"löschen wollen,\n" -"verwenden Sie «rm %s»." - -#: util/grub-editenv.c:162 -msgid "invalid environment block" -msgstr "Ungültiger Environment-Block" - -#: util/grub-editenv.c:217 -#, c-format -msgid "invalid parameter %s" -msgstr "Ungültiger Parameter %s" - -#: util/grub-editenv.c:222 -msgid "environment block too small" -msgstr "Environment-Block ist zu klein" - -#: util/grub-fstest.c:107 -#, c-format -msgid "disk read fails at offset %lld, length %lld" -msgstr "Lesen von Platte scheiterte bei %lld, Länge %lld" - -#: util/grub-fstest.c:138 -#, c-format -msgid "invalid skip value %lld" -msgstr "Ungültiger Sprungwert %lld" - -#: util/grub-fstest.c:160 util/grub-fstest.c:246 -#, c-format -msgid "read error at offset %llu: %s" -msgstr "Lesefehler bei %llu: %s" - -#: util/grub-fstest.c:210 -#, c-format -msgid "cannot open OS file `%s': %s" -msgstr "OS-Datei «%s» kann nicht geöffnet werden: %s" - -#: util/grub-fstest.c:225 util/misc.c:126 -#, c-format -msgid "cannot write to the stdout: %s" -msgstr "Schreiben in die Standardausgabe fehlgeschlagen: %s" - -#: util/grub-fstest.c:259 -#, c-format -msgid "compare fail at offset %llu" -msgstr "Vergleichsfehler bei %llu" - -#: util/grub-fstest.c:280 util/grub-fstest.c:314 -#, c-format -msgid "OS file %s open error: %s" -msgstr "Fehler beim Öffnen der OS-Datei %s: %s" - -#: util/grub-fstest.c:402 util/grub-mount.c:392 -#, c-format -msgid "`loopback' command fails: %s" -msgstr "«loopback»-Befehl ist fehlgeschlagen: %s" - -#: util/grub-fstest.c:413 util/grub-mount.c:402 -#, c-format -msgid "`cryptomount' command fails: %s" -msgstr "«cryptomount»-Befehl ist fehlgeschlagen: %s" - -#: util/grub-fstest.c:474 util/grub-fstest.c:478 -msgid "couldn't retrieve UUID" -msgstr "UUID konnte nicht ermittelt werden" - -#: util/grub-fstest.c:507 -msgid "ls PATH" -msgstr "ls PFAD" - -#: util/grub-fstest.c:507 -msgid "List files in PATH." -msgstr "Dateien in PFAD auflisten." - -#: util/grub-fstest.c:508 -msgid "cp FILE LOCAL" -msgstr "cp DATEI LOKAL" - -#: util/grub-fstest.c:508 -msgid "Copy FILE to local file LOCAL." -msgstr "DATEI in lokale Datei LOKAL kopieren." - -#: util/grub-fstest.c:509 -msgid "cat FILE" -msgstr "cat DATEI" - -#: util/grub-fstest.c:509 -msgid "Copy FILE to standard output." -msgstr "DATEI in die Standardausgabe kopieren." - -#: util/grub-fstest.c:510 -msgid "cmp FILE LOCAL" -msgstr "cmp DATEI LOKAL" - -#: util/grub-fstest.c:510 -msgid "Compare FILE with local file LOCAL." -msgstr "DATEI mit lokaler Datei LOKAL vergleichen." - -#: util/grub-fstest.c:511 -msgid "hex FILE" -msgstr "hex DATEI" - -#: util/grub-fstest.c:511 -msgid "Show contents of FILE in hex." -msgstr "Den Inhalt der DATEI hexadezimal anzeigen." - -#: util/grub-fstest.c:512 -msgid "crc FILE" -msgstr "crc DATEI" - -#: util/grub-fstest.c:512 -msgid "Get crc32 checksum of FILE." -msgstr "crc32-Prüfsumme von DATEI berechnen." - -#: util/grub-fstest.c:513 -msgid "blocklist FILE" -msgstr "blocklist DATEI" - -#: util/grub-fstest.c:513 -msgid "Display blocklist of FILE." -msgstr "Blockliste von DATEI anzeigen." - -#: util/grub-fstest.c:514 -msgid "xnu_uuid DEVICE" -msgstr "xnu_uuid GERÄT" - -#: util/grub-fstest.c:514 -msgid "Compute XNU UUID of the device." -msgstr "XNU-UUID des Geräts berechnen." - -#. TRANSLATORS: bitmaps are images like e.g. in JPEG. -#: util/grub-fstest.c:517 util/grub-fstest.c:518 util/grub-fstest.c:519 -#: util/grub-mkfont.c:938 util/grub-mkfont.c:951 util/grub-mkfont.c:952 -#: util/grub-mkpasswd-pbkdf2.c:46 util/grub-mkpasswd-pbkdf2.c:47 -#: util/grub-mkpasswd-pbkdf2.c:48 -msgid "NUM" -msgstr "ZAHL" - -#: util/grub-fstest.c:517 -msgid "Skip N bytes from output file." -msgstr "N Bytes der Ausgabedatei überspringen." - -#: util/grub-fstest.c:518 -msgid "Handle N bytes in output file." -msgstr "N Bytes in Ausgabedatei verarbeiten" - -#: util/grub-fstest.c:519 -msgid "Specify the number of input files." -msgstr "Die Anzahl der Eingabedateien angeben." - -#: util/grub-fstest.c:520 util/grub-mount.c:453 -msgid "Set debug environment variable." -msgstr "Debug-Umgebungsvariable setzen." - -#: util/grub-fstest.c:521 util/grub-mount.c:454 -msgid "Mount crypto devices." -msgstr "Verschlüsselte Geräte einhängen." - -#. TRANSLATORS: "prompt" is a keyword. -#: util/grub-fstest.c:524 util/grub-mount.c:457 -msgid "FILE|prompt" -msgstr "DATEI|prompt" - -#: util/grub-fstest.c:524 util/grub-mount.c:457 -msgid "Load zfs crypto key." -msgstr "ZFS-Schlüssel laden." - -#: util/grub-fstest.c:526 -msgid "Uncompress data." -msgstr "Daten entpacken." - -#: util/grub-fstest.c:605 -msgid "Invalid disk count.\n" -msgstr "Ungültige Plattenanzahl.\n" - -#. TRANSLATORS: disk count is optional but if it's there it must -#. be before disk list. So please don't imply disk count as mandatory. -#. -#: util/grub-fstest.c:613 -msgid "Disk count must precede disks list.\n" -msgstr "Plattenanzahl muss Plattenliste vorangestellt sein.\n" - -#: util/grub-fstest.c:633 -msgid "No command is specified.\n" -msgstr "Kein Befehl angegeben.\n" - -#: util/grub-fstest.c:638 -msgid "Not enough parameters to command.\n" -msgstr "Zu wenige Parameter für den Befehl.\n" - -#: util/grub-fstest.c:711 -#, c-format -msgid "Invalid command %s.\n" -msgstr "Ungültiger Befehl %s.\n" - -#: util/grub-fstest.c:724 -msgid "IMAGE_PATH COMMANDS" -msgstr "ABBILDPFAD BEFEHLE" - -#: util/grub-fstest.c:725 util/grub-mount.c:553 -msgid "Debug tool for filesystem driver." -msgstr "Diagnosewerkzeug für Dateisystemtreiber." - -#: util/grub-glue-efi.c:53 -msgid "set input filename for 32-bit part." -msgstr "Name der Eingabedatei für 32-bit festlegen." - -#: util/grub-glue-efi.c:55 -msgid "set input filename for 64-bit part." -msgstr "Name der Eingabedatei für 64-bit festlegen." - -#: util/grub-glue-efi.c:57 util/grub-mklayout.c:55 util/grub-render-label.c:71 -msgid "set output filename. Default is STDOUT" -msgstr "Name der Ausgabedatei festlegen. Vorgabe ist STDOUT" - -#: util/grub-glue-efi.c:94 util/grub-mklayout.c:476 -#: util/grub-mkpasswd-pbkdf2.c:86 util/grub-render-label.c:131 -msgid "[OPTIONS]" -msgstr "[OPTIONEN]" - -#: util/grub-glue-efi.c:95 -msgid "Glue 32-bit and 64-bit binary into Apple universal one." -msgstr "32-Bit- und 64-Bit-Binary zu Apple-Universal-Binary zusammenfügen." - -#: util/grub-glue-efi.c:116 -msgid "Missing input file\n" -msgstr "Eingabedatei fehlt\n" - -#: util/grub-install-common.c:127 util/grub-install-common.c:151 -#, c-format -msgid "cannot copy `%s' to `%s': %s" -msgstr "«%s» kann nicht nach «%s» kopiert werden: %s" - -#: util/grub-install-common.c:147 -#, c-format -msgid "can't compress `%s' to `%s'" -msgstr "Komprimieren von %s nach %s nicht möglich" - -#: util/grub-install-common.c:196 util/grub-install-common.c:552 -#: util/grub-install-common.c:579 util/grub-install-common.c:621 -#, c-format -msgid "cannot open directory `%s': %s" -msgstr "Verzeichnis «%s» kann nicht geöffnet werden: %s" - -#: util/grub-install-common.c:212 -#, c-format -msgid "cannot delete `%s': %s" -msgstr "«%s» kann nicht gelöscht werden: %s" - -#: util/grub-install-common.c:324 util/grub-mkimage.c:209 -msgid "grub-mkimage is compiled without XZ support" -msgstr "grub-mkimage wurde ohne XZ-unterstützung kompiliert" - -#: util/grub-install-common.c:332 util/grub-mkimage.c:217 -#, c-format -msgid "Unknown compression format %s" -msgstr "Unbekanntes Kompressionsformat %s" - -#: util/grub-install-common.c:400 -#, c-format -msgid "Unrecognized compression `%s'" -msgstr "Unbekannte Kompression «%s»" - -#: util/grub-install-common.c:509 -#, c-format -msgid "unknown target format %s" -msgstr "Unbekanntes Zielformat %s" - -#: util/grub-install-common.c:700 -#, c-format -msgid "cannot find locale `%s'" -msgstr "Sprache «%s» kann nicht gefunden werden" - -#: util/grub-install-common.c:939 -#, c-format -msgid "%s doesn't exist. Please specify --target or --directory" -msgstr "%s existiert nicht. Bitte geben Sie --target oder --directory an" - -#: util/grub-install-common.c:948 util/grub-install-common.c:951 -#, c-format -msgid "invalid modinfo file `%s'" -msgstr "Ungültige modinfo-Datei «%s»" - -#: util/grub-install-common.c:966 -#, c-format -msgid "Unknown platform `%s-%s'" -msgstr "Unbekannte Plattform «%s-%s»" - -#: util/grub-install.c:238 -msgid "More than one install device?" -msgstr "Mehr als ein Installationsgerät?" - -#: util/grub-install.c:251 -#, c-format -msgid "" -"install GRUB images under the directory DIR/%s instead of the %s directory" -msgstr "GRUB-Abbilder in VERZEICHNIS/%s anstelle von %s installieren" - -#: util/grub-install.c:256 util/grub-probe.c:734 -msgid "TARGET" -msgstr "ZIEL" - -#. TRANSLATORS: "TARGET" as in "target platform". -#: util/grub-install.c:258 -#, c-format -msgid "install GRUB for TARGET platform [default=%s]; available targets: %s" -msgstr "" -"GRUB für ZIEL-Plattform installieren [Vorgabe=%s]; verfügbare Ziele: %s" - -#. TRANSLATORS: "may break" doesn't just mean that option wouldn't have any -#. effect but that it will make the resulting install unbootable from HDD. -#. TRANSLATORS: The potential breakage isn't limited to floppies but it's -#. likely to make the install unbootable from HDD. -#: util/grub-install.c:267 util/grub-setup.c:94 -msgid "" -"make the drive also bootable as floppy (default for fdX devices). May break " -"on some BIOSes." -msgstr "" -"Das Laufwerk auch als Diskette bootfähig machen (Vorgabe für fdX-Geräte). " -"Kann mit einigen BIOS-Varianten scheitern." - -#: util/grub-install.c:270 -msgid "delete device map if it already exists" -msgstr "Gerätezuordnung löschen, falls bereits vorhanden" - -#: util/grub-install.c:272 util/grub-setup.c:87 -msgid "install even if problems are detected" -msgstr "Trotzdem installieren, auch wenn Probleme auftreten" - -#: util/grub-install.c:274 -msgid "use identifier file even if UUID is available" -msgstr "ID-Datei auch dann verwenden, wenn eine UUID verfügbar ist" - -#: util/grub-install.c:276 -msgid "" -"disk module to use (biosdisk or native). This option is only available on " -"BIOS target." -msgstr "" -"Zu verwendendes Platten-Modul (biosdisk oder native). Diese Option ist nur " -"für BIOS-Ziele verfügbar." - -#: util/grub-install.c:279 -msgid "" -"don't update the `boot-device'/`Boot*' NVRAM variables. This option is only " -"available on EFI and IEEE1275 targets." -msgstr "" -"Die NVRAM-Variable «boot-device»/«Boot*» nicht aktualisieren. Diese Option " -"ist nur für EFI- und IEEE1275-Ziele verfügbar." - -#: util/grub-install.c:282 util/grub-setup.c:89 -msgid "do not probe for filesystems in DEVICE" -msgstr "GERÄT nicht auf Dateisysteme überprüfen" - -#: util/grub-install.c:284 -msgid "do not install bootsector" -msgstr "Keinen Bootsektor installieren" - -#: util/grub-install.c:286 util/grub-setup.c:96 -msgid "" -"Do not apply any reed-solomon codes when embedding core.img. This option is " -"only available on x86 BIOS targets." -msgstr "" -"Keine Reed-Solomon-Codes beim Einbetten von core.img verwenden. Diese Option " -"ist nur für x86-BIOS-Ziele verfügbar." - -#: util/grub-install.c:293 -msgid "" -"the installation device is removable. This option is only available on EFI." -msgstr "" -"Das Installationsgerät ist ein Wechseldatenträger. Diese Option ist nur bei " -"EFI verfügbar." - -#: util/grub-install.c:295 -msgid "ID" -msgstr "KENNUNG" - -#: util/grub-install.c:296 -msgid "the ID of bootloader. This option is only available on EFI and Macs." -msgstr "" -"Die Kennung des Bootloaders. Diese Option ist nur auf EFI-Systemen und Macs " -"verfügbar." - -#: util/grub-install.c:298 -msgid "use DIR as the EFI System Partition root." -msgstr "VERZEICHNIS als Wurzel der EFI-Systempartition verwenden." - -#: util/grub-install.c:300 -msgid "use DIR for PPC MAC install." -msgstr "VERZ für PPC-MAC-Installation verwenden." - -#: util/grub-install.c:301 util/grub-mkrescue.c:106 -msgid "use FILE as font for label" -msgstr "DATEI als Schriftart für Beschriftung verwenden" - -#: util/grub-install.c:302 util/grub-mkrescue.c:107 -msgid "use COLOR for label" -msgstr "FARBE für Beschriftung verwenden." - -#: util/grub-install.c:303 util/grub-mkrescue.c:108 -msgid "use COLOR for label background" -msgstr "FARBE für Beschriftungshintergrund verwenden." - -#: util/grub-install.c:304 util/grub-mkrescue.c:110 -msgid "use STRING as product version" -msgstr "ZEICHENKETTE als Produktversion verwenden" - -#: util/grub-install.c:361 -msgid "[OPTION] [INSTALL_DEVICE]" -msgstr "[OPTION] [INSTALLATIONSGERÄT]" - -#: util/grub-install.c:362 -msgid "Install GRUB on your drive." -msgstr "GRUB auf Ihrem Laufwerk installieren." - -#: util/grub-install.c:363 -#, c-format -msgid "" -"INSTALL_DEVICE must be system device filename.\n" -"%s copies GRUB images into %s. On some platforms, it may also install GRUB " -"into the boot sector." -msgstr "" -"INSTALLATIONSGERÄT muss der Name des Geräts sein.\n" -"%s kopiert GRUB-Abbilder nach %s. Auf einigen Systemen\n" -"kann es auch GRUB in den Bootsektor installieren." - -#: util/grub-install.c:672 -#, c-format -msgid "the drive %s is defined multiple times in the device map %s" -msgstr "Das Laufwerk %s wurde in der Gerätetabelle mehrfach %s definiert" - -#: util/grub-install.c:878 -msgid "Unable to determine your platform. Use --target." -msgstr "Ihre Plattform konnte nicht erkannt werden. Verwenden Sie --target." - -#: util/grub-install.c:891 -#, c-format -msgid "Installing for %s platform.\n" -msgstr "%s wird für Ihre Plattform installiert.\n" - -#: util/grub-install.c:939 -msgid "install device isn't specified" -msgstr "Kein Installationsgerät angegeben" - -#: util/grub-install.c:1057 -msgid "cannot find EFI directory" -msgstr "EFI-Verzeichnis kann nicht gefunden werden" - -#: util/grub-install.c:1060 util/grub-install.c:1209 util/grub-install.c:1254 -#: util/grub-macbless.c:76 util/grub-probe.c:329 util/setup.c:316 -#, c-format -msgid "cannot find a device for %s (is /dev mounted?)" -msgstr "Gerät für %s konnte nicht gefunden werden (ist /dev eingehängt?)" - -#: util/grub-install.c:1069 util/grub-install.c:1217 util/grub-install.c:1270 -#: util/grub-install.c:1365 util/grub-macbless.c:80 util/grub-probe.c:372 -#, c-format -msgid "cannot find a GRUB drive for %s. Check your device.map" -msgstr "" -"Für %s konnte kein GRUB-Laufwerk gefunden werden. Überprüfen Sie Ihre device." -"map" - -#: util/grub-install.c:1087 -#, c-format -msgid "%s doesn't look like an EFI partition" -msgstr "%s scheint keine EFI-Partition zu sein" - -#: util/grub-install.c:1129 util/grub-install.c:1614 -msgid "You've found a bug" -msgstr "Einen entdeckten Fehler berichten" - -#: util/grub-install.c:1231 -#, c-format -msgid "filesystem on %s is neither HFS nor HFS+" -msgstr "Dateisystem auf %s ist weder HFS noch HFS+" - -#: util/grub-install.c:1299 -#, c-format -msgid "" -"attempt to install to encrypted disk without cryptodisk enabled. Set `%s' in " -"file `%s'" -msgstr "" -"Versuch, einen verschlüsselten Datenträger ohne aktiviertes Cryptodisk zu " -"installieren. Setzen Sie «%s» in Datei «%s»" - -#: util/grub-install.c:1410 util/grub-install.c:1772 util/grub-install.c:1872 -#, c-format -msgid "Can't create file: %s" -msgstr "Datei «%s» kann nicht angelegt werden." - -#: util/grub-install.c:1491 -msgid "no hints available for your platform. Expect reduced performance" -msgstr "" -"Keine Hinweise für Ihr Betriebssystem verfügbar. Verringerte Leistung ist zu " -"erwarten." - -#. TRANSLATORS: This is a prefix in the log to indicate that usually -#. a command would be executed but due to an option was skipped. -#: util/grub-install.c:1702 -msgid "NOT RUNNING: " -msgstr "NICHT GESTARTET:" - -#: util/grub-install.c:1806 -msgid "the chosen partition is not a PReP partition" -msgstr "Die gewählte Partition ist keine PReP-Partition" - -#: util/grub-install.c:1811 -msgid "failed to copy Grub to the PReP partition" -msgstr "GRUB konnte nicht in die PReP-Partition kopiert werden" - -#: util/grub-install.c:1816 -#, c-format -msgid "" -"the PReP partition is not empty. If you are sure you want to use it, run dd " -"to clear it: `%s'" -msgstr "" -"Die PReP-Partition ist nicht leer. Falls Sie sicher sind, dass Sie sie " -"verwenden wollen, führen Sie dd aus, um sie zu leeren: «%s»" - -#: util/grub-install.c:1888 util/grub-install.c:1932 -#, c-format -msgid "efibootmgr failed to register the boot entry: %s" -msgstr "efibootmgr schlug beim Registrieren des Boot-Eintrags fehl: %s" - -#: util/grub-install.c:1916 -msgid "EFI bootloader id isn't specified." -msgstr "Kennung des EFI-Bootloaders ist nicht angegeben." - -#: util/grub-install.c:1950 -msgid "WARNING: no platform-specific install was performed" -msgstr "WARNUNG: Es wurde keine plattformspezifische Installation durchgeführt" - -#: util/grub-install.c:1957 -msgid "Installation finished. No error reported." -msgstr "installation beendet. Keine Fehler aufgetreten." - -#: util/grub-macbless.c:101 -msgid "bless for x86-based macs" -msgstr "" - -#: util/grub-macbless.c:103 -msgid "bless for ppc-based macs" -msgstr "" - -#: util/grub-macbless.c:136 util/grub-probe.c:823 -msgid "No path or device is specified.\n" -msgstr "Kein Pfad oder Gerät wurde angegeben.\n" - -#: util/grub-macbless.c:157 -msgid "--ppc PATH|--x86 FILE" -msgstr "--ppc PFAD|--x86 DATEI" - -#: util/grub-macbless.c:158 -msgid "Mac-style bless on HFS or HFS+" -msgstr "" - -#: util/grub-menulst2cfg.c:44 -#, c-format -msgid "Usage: %s [INFILE [OUTFILE]]\n" -msgstr "Aufruf: %s [EINGABEDATEI [AUSGABEDATEI]]\n" - -#: util/grub-mkfont.c:157 -#, c-format -msgid "Freetype Error %d loading glyph 0x%x for U+0x%x%s" -msgstr "Freetype-Fehler %d beim Laden des Glyphs 0x%x für U+0x%x%s" - -#. TRANSLATORS: These qualifiers are used for cursive typography, -#. mainly Arabic. Note that the terms refer to the visual position -#. and not logical order and if used in left-to-right script then -#. leftmost is initial but with right-to-left script like Arabic -#. rightmost is the initial. -#: util/grub-mkfont.c:165 -msgid " (medial)" -msgstr " (mittig)" - -#: util/grub-mkfont.c:166 -msgid " (leftmost)" -msgstr " (ganz links)" - -#: util/grub-mkfont.c:167 -msgid " (rightmost)" -msgstr " (ganz rechts)" - -#: util/grub-mkfont.c:481 -#, c-format -msgid "Out of range substitution (%d, %d)\n" -msgstr "Ersetzung ausserhalb des Bereichs (%d, %d)\n" - -#. TRANSLATORS: "lookup" is taken directly from font specifications -#. which are formulated as "Under condition X replace LOOKUP with -#. SUBSTITUITION". " -#: util/grub-mkfont.c:506 -#, c-format -msgid "Out of range lookup: %d\n" -msgstr "Suche ausserhalb des Bereichs: %d\n" - -#: util/grub-mkfont.c:514 -#, c-format -msgid "Unsupported substitution type: %d\n" -msgstr "Nicht unterstützter Ersetzungstyp: %d\n" - -#: util/grub-mkfont.c:550 -#, c-format -msgid "Unsupported substitution specification: %d\n" -msgstr "Nicht unterstützte Ersetzungsangabe: %d\n" - -#: util/grub-mkfont.c:582 -#, c-format -msgid "Unsupported coverage specification: %d\n" -msgstr "Nicht unterstützte Coverage-Spezifikation: %d\n" - -#: util/grub-mkfont.c:622 -#, c-format -msgid "WARNING: unsupported font feature parameters: %x\n" -msgstr "WARNUNG: Nicht unterstützte Parameter für Schrifteigenschaften: %x\n" - -#: util/grub-mkfont.c:936 util/grub-mkrescue.c:98 util/grub-mkstandalone.c:48 -msgid "save output in FILE [required]" -msgstr "Ausgabe in DATEI speichern [erforderlich]" - -#. TRANSLATORS: some font files may have multiple faces (fonts). -#. This option is used to chose among them, the first face being '0'. -#. Rarely used. -#: util/grub-mkfont.c:942 -msgid "select face index" -msgstr "Schriftart-Index setzen" - -#: util/grub-mkfont.c:943 -msgid "FROM-TO[,FROM-TO]" -msgstr "VON-BIS[,VON-BIS]" - -#. TRANSLATORS: It refers to the range of characters in font. -#: util/grub-mkfont.c:945 -msgid "set font range" -msgstr "Schriftbereich festlegen" - -#. TRANSLATORS: "family name" for font is just a generic name without suffix -#. like "Bold". -#: util/grub-mkfont.c:949 -msgid "set font family name" -msgstr "Schriftfamilie festlegen" - -#: util/grub-mkfont.c:950 -msgid "SIZE" -msgstr "GRÖssE" - -#: util/grub-mkfont.c:950 -msgid "set font size" -msgstr "Schriftgrösse festlegen" - -#: util/grub-mkfont.c:951 -msgid "set font descent" -msgstr "Schriftauffüllung unten einstellen" - -#: util/grub-mkfont.c:952 -msgid "set font ascent" -msgstr "Schriftauffüllung oben einstellen" - -#: util/grub-mkfont.c:953 -msgid "convert to bold font" -msgstr "In fette Schrift umwandeln" - -#: util/grub-mkfont.c:954 -msgid "force autohint" -msgstr "Automatisches Hinting erzwingen" - -#: util/grub-mkfont.c:955 -msgid "disable hinting" -msgstr "Hinting deaktivieren" - -#. TRANSLATORS: some fonts contain bitmap rendering for -#. some sizes. This option forces rerendering even if -#. pre-rendered bitmap is available. -#. -#: util/grub-mkfont.c:961 -msgid "ignore bitmap strikes when loading" -msgstr "Bitmap-Strikes beim Laden ignorieren" - -#. TRANSLATORS: It refers to the range of characters in font. -#: util/grub-mkfont.c:1059 util/grub-mkfont.c:1075 -msgid "invalid font range" -msgstr "Ungültiger Schriftbereich" - -#: util/grub-mkfont.c:1151 -msgid "[OPTIONS] FONT_FILES" -msgstr "[OPTIONEN] SCHRIFTDATEIEN" - -#: util/grub-mkfont.c:1152 -msgid "Convert common font file formats into PF2" -msgstr "Übliche Schriftdateiformate in PF2 umwandeln" - -#: util/grub-mkfont.c:1182 util/grub-mkrescue.c:483 -#: util/grub-mkstandalone.c:306 -msgid "output file must be specified" -msgstr "Ausgabedatei muss angegeben werden" - -#: util/grub-mkfont.c:1185 -msgid "FT_Init_FreeType fails" -msgstr "FT_Init_FreeType ist gescheitert" - -#: util/grub-mkfont.c:1199 -#, c-format -msgid "can't open file %s, index %d: error %d" -msgstr "%s kann nicht geöffnet werden, Index %d: Fehler %d" - -#: util/grub-mkfont.c:1229 -#, c-format -msgid "can't set %dx%d font size: Freetype error %d: %s" -msgstr "Schriftgrösse %dx%d kann nicht gesetzt werden: Freetype-Fehler %d: %s" - -#: util/grub-mkimage.c:67 -msgid "set prefix directory" -msgstr "Präfix-Verzeichnis festlegen" - -#. TRANSLATORS: "memdisk" here isn't an identifier, it can be translated. -#. "embed" is a verb (command description). " -#: util/grub-mkimage.c:71 -msgid "" -"embed FILE as a memdisk image\n" -"Implies `-p (memdisk)/boot/grub' and overrides any prefix supplied " -"previously, but the prefix itself can be overridden by later options" -msgstr "" -"DATEI als Memdisk-Abbild einbetten\n" -"Impliziert «-p (memdisk)/boot/grub» und setzt jedes vorher angegebene Präfix " -"ausser Kraft, aber das Präfix selbst kann durch später angegebene Optionen " -"wiederum ausser Kraft gesetzt werden" - -#: util/grub-mkimage.c:74 -msgid "embed FILE as a device tree (DTB)\n" -msgstr "DATEI als Gerätebaum (DTB) einbetten\n" - -#: util/grub-mkimage.c:76 -msgid "embed FILE as an early config" -msgstr "DATEI als Anfangskonfiguration einbetten" - -#. TRANSLATORS: NOTE is a name of segment. -#: util/grub-mkimage.c:80 -msgid "add NOTE segment for CHRP IEEE1275" -msgstr "NOTE-Segment für CHRP IEEE1275 hinzufügen" - -#: util/grub-mkimage.c:81 -msgid "output a generated image to FILE [default=stdout]" -msgstr "Ein erzeugtes Abbild in DATEI ausgeben [Vorgabe=stdout]" - -#: util/grub-mkimage.c:82 -msgid "FORMAT" -msgstr "FORMAT" - -#: util/grub-mkimage.c:100 util/grub-mkstandalone.c:62 -msgid "generate an image in FORMAT" -msgstr "Ein Abbild im FORMAT erzeugen" - -#: util/grub-mkimage.c:101 util/grub-mkstandalone.c:63 -msgid "available formats:" -msgstr "Verfügbare Formate:" - -#: util/grub-mkimage.c:152 util/grub-mkstandalone.c:96 -#, c-format -msgid "unknown target format %s\n" -msgstr "Unbekanntes Zielformat %s\n" - -#: util/grub-mkimage.c:242 -msgid "[OPTION]... [MODULES]" -msgstr "[OPTION]… [MODULE]" - -#: util/grub-mkimage.c:243 -msgid "Make a bootable image of GRUB." -msgstr "Ein bootfähiges GRUB-Abbild erstellen" - -#: util/grub-mkimage.c:273 util/grub-mkstandalone.c:309 -msgid "Target format not specified (use the -O option)." -msgstr "Zielformat wurde nicht angegeben (verwenden Sie die Option -0)." - -#: util/grub-mkimage.c:282 -msgid "Prefix not specified (use the -p option)." -msgstr "Präfix wurde nicht angegeben (verwenden Sie die Option -p)" - -#: util/grub-mkimage.c:318 util/setup.c:793 -#, c-format -msgid "cannot close `%s': %s" -msgstr "«%s» kann nicht geschlossen werden: %s" - -#: util/grub-mkimagexx.c:2191 -#, c-format -msgid "" -"`%s' is miscompiled: its start address is 0x%llx instead of 0x%llx: ld.gold " -"bug?" -msgstr "" -"«%s» ist fehlerhaft kompiliert: Dessen Startadresse ist 0x%llx anstelle von " -"0x%llx: Fehler in ld.gold?" - -#: util/grub-mklayout.c:53 -msgid "set input filename. Default is STDIN" -msgstr "Name der Eingabedatei festlegen. Vorgabe ist STDIN" - -#. TRANSLATORS: scan identifier is keyboard key symbolic name. -#: util/grub-mklayout.c:307 -#, c-format -msgid "Unknown keyboard scan identifier %s\n" -msgstr "Ungültiger Bezeichner für Tastaturscan %s\n" - -#. TRANSLATORS: scan code is keyboard key numeric identifier. -#: util/grub-mklayout.c:390 util/grub-mklayout.c:418 -#, c-format -msgid "Unknown keyboard scan code 0x%02x\n" -msgstr "Ungültiger Code für Tastaturscan 0x%02x\n" - -#. TRANSLATORS: this error is triggered when input doesn't contain any -#. key descriptions. -#: util/grub-mklayout.c:438 -msgid "ERROR: no valid keyboard layout found. Check the input.\n" -msgstr "" -"FEHLER: Keine gültige Tastaturbelegung gefunden. Überprüfen Sie die " -"Eingabe.\n" - -#. TRANSLATORS: "one" is a shortcut for "keyboard layout". -#: util/grub-mklayout.c:478 -msgid "Generate GRUB keyboard layout from Linux console one." -msgstr "GRUB-Tastaturbelegung aus dem der Linux-Konsole erstellen." - -#: util/grub-mknetdir.c:47 -msgid "root directory of TFTP server" -msgstr "Wurzelverzeichnis auf dem TFTP-Server" - -#: util/grub-mknetdir.c:49 -msgid "relative subdirectory on network server" -msgstr "Relativer Pfad zum Unterverzeichnis auf dem Netzwerkserver" - -#: util/grub-mknetdir.c:88 -msgid "" -"Prepares GRUB network boot images at net_directory/subdir assuming " -"net_directory being TFTP root." -msgstr "" -"Bereitet GRUB-Netzwerk-Bootabbilder in net_directory/subdir vor, wobei " -"angenommen wird, dass net_directory das TFTP-Wurzelverzeichnis ist." - -#: util/grub-mknetdir.c:146 -#, c-format -msgid "unsupported platform %s" -msgstr "Nicht unterstützte Plattform %s" - -#. TRANSLATORS: First %s is replaced by platform name. Second one by filename. -#: util/grub-mknetdir.c:165 -#, c-format -msgid "" -"Netboot directory for %s created. Configure your DHCP server to point to %s\n" -msgstr "" -"Netboot-Verzeichnis für %s wurde erstellt. Richten Sie Ihren DHCP-Server so " -"ein, dass er auf %s verweist\n" - -#: util/grub-mkpasswd-pbkdf2.c:46 -msgid "Number of PBKDF2 iterations" -msgstr "Anzahl vor PBKDF2-Durchläufe" - -#: util/grub-mkpasswd-pbkdf2.c:47 -msgid "Length of generated hash" -msgstr "Länge der erzeugten Prüfsumme" - -#: util/grub-mkpasswd-pbkdf2.c:48 -msgid "Length of salt" -msgstr "Länge von Salt" - -#: util/grub-mkpasswd-pbkdf2.c:87 -msgid "Generate PBKDF2 password hash." -msgstr "PBKDF2-Passwort-Prüfsumme erzeugen. " - -#: util/grub-mkpasswd-pbkdf2.c:144 util/grub-mkpasswd-pbkdf2.c:151 -msgid "failure to read password" -msgstr "Passwort konnte nicht gelesen werden" - -#: util/grub-mkpasswd-pbkdf2.c:146 -msgid "Reenter password: " -msgstr "Passwort erneut eingeben:" - -#: util/grub-mkpasswd-pbkdf2.c:160 -msgid "passwords don't match" -msgstr "Die Passwörter stimmen nicht überein" - -#: util/grub-mkpasswd-pbkdf2.c:169 -msgid "couldn't retrieve random data for salt" -msgstr "Zufallsdaten für Salt konnten nicht geholt werden" - -#: util/grub-mkpasswd-pbkdf2.c:184 -#, c-format -msgid "cryptographic error number %d" -msgstr "Krytografiefehler Nummer %d" - -#: util/grub-mkpasswd-pbkdf2.c:203 -#, c-format -msgid "PBKDF2 hash of your password is %s\n" -msgstr "PBKDF2-Prüfsumme Ihres Passworts ist %s\n" - -#: util/grub-mkrelpath.c:67 -msgid "No path is specified.\n" -msgstr "Kein Pfad angegeben.\n" - -#: util/grub-mkrelpath.c:78 -msgid "PATH" -msgstr "PFAD" - -#: util/grub-mkrelpath.c:79 -msgid "Transform a system filename into GRUB one." -msgstr "Einen Systemdateinamen in einen für GRUB umwandeln." - -#: util/grub-mkrescue.c:100 -msgid "save ROM images in DIR [optional]" -msgstr "ROM-Abbilder in VERZEICHNIS speichern [optional]" - -#. TRANSLATORS: xorriso is a program for creating ISOs and burning CDs. -#: util/grub-mkrescue.c:103 -msgid "use FILE as xorriso [optional]" -msgstr "DATEI als xorriso benutzen [optional]" - -#: util/grub-mkrescue.c:109 -msgid "use STRING as product name" -msgstr "ZEICHENKETTE als Produktname verwenden" - -#: util/grub-mkrescue.c:111 -msgid "" -"enable sparc boot. Disables HFS+, APM, ARCS and boot as disk image for i386-" -"pc" -msgstr "" -"Sparc-Bootvorgang aktivieren. Die deaktiviert HFS+, APM, ARCS und Booten als " -"Festplattenabbild für i386-pc" - -#: util/grub-mkrescue.c:112 -msgid "" -"enable ARCS (big-endian mips machines, mostly SGI) boot. Disables HFS+, APM, " -"sparc64 and boot as disk image for i386-pc" -msgstr "" -"Aktiviert ARCS-Boot (MIPS-Computer mit Big-Endian-Bytereihenfolge, meist " -"SGI). HFS+, APM, sparc64 und Booten als Disk-Abbild für i386-pc werden " -"deaktiviert" - -#. TRANSLATORS: it generates one single image which is bootable through any method. -#: util/grub-mkrescue.c:125 -msgid "Make GRUB CD-ROM, disk, pendrive and floppy bootable image." -msgstr "" -"Bootfähiges GRUB-Abbild für CD-ROM, Festplatte, USB-Stick und Diskette " -"erstellen." - -#: util/grub-mkrescue.c:130 -#, c-format -msgid "" -"Generates a bootable CD/USB/floppy image. Arguments other than options to " -"this program are passed to xorriso, and indicate source files, source " -"directories, or any of the mkisofs options listed by the output of `%s'." -msgstr "" -"Erzeugt ein bootfähiges CD/USB/Diskettenabbild. Argumente, die nicht zu den " -"Optionen dieses Programms gehören, werden an Xorriso übergeben und " -"indizieren Quelldateien, Quellverzeichnisse oder eine beliebige mkisofs-" -"Option, die von «%s» ausgegeben wird." - -#: util/grub-mkrescue.c:134 -msgid "Option -- switches to native xorriso command mode." -msgstr "Option -- wechselt in den nativen xorriso-Befehlsmodus." - -#: util/grub-mkrescue.c:135 -msgid "Mail xorriso support requests to ." -msgstr "Richten Sie Supportanfragen zu Xorriso an ." - -#: util/grub-mkrescue.c:221 util/grub-mkstandalone.c:114 -msgid "[OPTION] SOURCE..." -msgstr "[OPTION] QUELLE …" - -#: util/grub-mkrescue.c:257 util/grub-mkrescue.c:300 util/grub-mkrescue.c:588 -#, c-format -msgid "enabling %s support ..." -msgstr "Unterstützung für %s wird aktiviert …" - -#: util/grub-mkrescue.c:486 -msgid "xorriso not found" -msgstr "Xorriso wurde nicht gefunden" - -#: util/grub-mkrescue.c:623 -msgid "" -"Your xorriso doesn't support `--grub2-boot-info'. Some features are " -"disabled. Please use xorriso 1.2.9 or later." -msgstr "" -"Ihr Xorriso unterstützt «--grub2-boot-info» nicht. Einige Funktionen sind " -"deaktiviert. Bitte verwenden Sie Xorriso in Version 1.2.9 oder neuer." - -#: util/grub-mkrescue.c:650 -msgid "" -"Your xorriso doesn't support `--grub2-boot-info'. Your core image is too " -"big. Boot as disk is disabled. Please use xorriso 1.2.9 or later." -msgstr "" -"Ihr Xorriso unterstützt «--grub2-boot-info» nicht. Ihr Core-Abbild ist zu " -"gross. Booten als Festplatte ist deaktiviert. Bitte verwenden Sie Xorriso in " -"Version 1.2.9 oder neuer." - -#: util/grub-mkstandalone.c:115 -msgid "" -"Generate a standalone image (containing all modules) in the selected format" -msgstr "" -"Ein lauffähiges Abbild einschliesslich aller Module im gewählten Format " -"erstellen" - -#: util/grub-mkstandalone.c:115 -msgid "Graft point syntax (E.g. /boot/grub/grub.cfg=./grub.cfg) is accepted" -msgstr "" -"Graftpoint-Syntax (z.B. /boot/grub/grub.cfg=./grub.cfg) wird akzeptiert" - -#: util/grub-mount.c:552 -msgid "IMAGE1 [IMAGE2 ...] MOUNTPOINT" -msgstr "ABBILD1 [ABBILD2 ...] EINHÄNGEPUNKT" - -#: util/grub-mount.c:575 -msgid "need an image and mountpoint" -msgstr "Abbild und Einhängepunkt werden benötigt" - -#: util/grub-probe.c:731 -msgid "given argument is a system device, not a path" -msgstr "Das angegebene Argument ist ein Systemgerät, kein Pfad" - -#: util/grub-probe.c:736 -msgid "separate items in output using ASCII NUL characters" -msgstr "Einträge in der Ausgabe durch ASCII-NUL-Zeichen trennen" - -#: util/grub-probe.c:754 -#, c-format -msgid "[default=%s]" -msgstr "[Vorgabe=%s]" - -#: util/grub-probe.c:756 -msgid "print TARGET" -msgstr "ZIEL ausgeben" - -#: util/grub-probe.c:757 -msgid "available targets:" -msgstr "Verfügbare Ziele:" - -#: util/grub-probe.c:839 -msgid "[OPTION]... [PATH|DEVICE]" -msgstr "[OPTIONEN]… [PFAD|GERÄT]" - -#: util/grub-probe.c:840 -msgid "" -"Probe device information for a given path (or device, if the -d option is " -"given)." -msgstr "" -"Geräteinformationen für einen angegebenen Pfad ermitteln (oder Gerät, falls " -"die Option -d angegeben ist)." - -#: util/grub-render-label.c:60 -msgid "read text from FILE." -msgstr "Text aus DATEI lesen." - -#: util/grub-render-label.c:62 -msgid "use COLOR for text" -msgstr "FARBE für Text verwenden" - -#: util/grub-render-label.c:64 -msgid "use COLOR for background" -msgstr "FARBE für Hintergrund verwenden" - -#. TRANSLATORS: The result is always stored to file and -#. never shown directly, so don't use "show" as synonym for render. Use "create" if -#. "render" doesn't translate directly. -#: util/grub-render-label.c:69 -msgid "set the label to render" -msgstr "Anzuzeigende Beschriftung festlegen" - -#: util/grub-render-label.c:73 -msgid "use FILE as font (PF2)." -msgstr "DATEI als Schrift verwenden (PF2)." - -#. TRANSLATORS: This file takes a text and creates a graphical representation of it, -#. putting the result into .disk_label file. The result is always stored to file and -#. never shown directly, so don't use "show" as synonym for render. Use "create" if -#. "render" doesn't translate directly. -#: util/grub-render-label.c:136 -msgid "Render Apple .disk_label." -msgstr "Apples .disk_label darstellen." - -#: util/grub-render-label.c:158 util/grub-syslinux2cfg.c:169 -msgid "Missing arguments\n" -msgstr "Argumente fehlen\n" - -#: util/grub-script-check.c:87 -msgid "[PATH]" -msgstr "[PFAD]" - -#: util/grub-script-check.c:88 -msgid "Checks GRUB script configuration file for syntax errors." -msgstr "Überprüft die GRUB-Skriptkonfiguration auf Syntaxfehler" - -#: util/grub-script-check.c:207 -#, c-format -msgid "Syntax error at line %u\n" -msgstr "Syntaxfehler in Zeile %u\n" - -#: util/grub-script-check.c:212 -#, c-format -msgid "Script `%s' contains no commands and will do nothing\n" -msgstr "Skript «%s» enthält nichts, es wird nichts ausgeführt\n" - -#: util/grub-setup.c:79 -#, c-format -msgid "use FILE as the boot image [default=%s]" -msgstr "DATEI als Boot-Abbild verwenden [Vorgabe=%s]" - -#: util/grub-setup.c:81 -#, c-format -msgid "use FILE as the core image [default=%s]" -msgstr "DATEI als Kern-Abbild verwenden [Vorgabe=%s]" - -#: util/grub-setup.c:210 -msgid "No device is specified.\n" -msgstr "Kein Gerät angegeben.\n" - -#: util/grub-setup.c:224 -msgid "" -"Set up images to boot from DEVICE.\n" -"\n" -"You should not normally run this program directly. Use grub-install instead." -msgstr "" -"Abbilder zum Booten von GERÄT einrichten.\n" -"\n" -"Sie sollten dieses Programm normalerweise nicht direkt ausführen.\n" -"Verwenden Sie stattdessen grub-install." - -#: util/grub-setup.c:228 -msgid "DEVICE must be an OS device (e.g. /dev/sda)." -msgstr "GERÄT muss ein OS-Gerät sein (z.B. /dev/sda)." - -#: util/grub-setup.c:297 -#, c-format -msgid "Invalid device `%s'.\n" -msgstr "Ungültiges Gerät «%s».\n" - -#: util/grub-syslinux2cfg.c:64 -msgid "root directory as it will be seen on runtime [default=/]." -msgstr "Wurzelverzeichnis, wie es zur Laufzeit angezeigt wird [Vorgabe=/]." - -#: util/grub-syslinux2cfg.c:69 -msgid "" -"current directory of syslinux as it will be seen on runtime [default is " -"parent directory of input file]." -msgstr "" -"Aktuelles Syslinux-Verzeichnis, wie es zur Laufzeit angezeigt wird [Vorgabe " -"ist das übergeordnete Verzeichnis der Eingabedatei]." - -#: util/grub-syslinux2cfg.c:74 -msgid "write output to FILE [default=stdout]." -msgstr "Ausgabe in DATEI schreiben [Vorgabe=stdout]" - -#: util/grub-syslinux2cfg.c:148 -msgid "Transform syslinux config into GRUB one." -msgstr "Syslinux-Konfigurationsdatei in eine für GRUB umwandeln." - -#: util/mkimage.c:688 util/mkimage.c:717 util/mkimage.c:734 -msgid "cannot compress the kernel image" -msgstr "Kernel-Abbild kann nicht komprimiert werden" - -#: util/mkimage.c:766 util/mkimage.c:1077 -#, c-format -msgid "unknown compression %d" -msgstr "Unbekannte Kompression %d" - -#: util/mkimage.c:1088 -msgid "Decompressor is too big" -msgstr "Dekompressor ist zu gross" - -#: util/mkimage.c:1133 -#, c-format -msgid "core image is too big (0x%x > 0x%x)" -msgstr "Core-Abbild ist zu gross (0x%x > 0x%x)" - -#: util/mkimage.c:1140 -#, c-format -msgid "kernel image is too big (0x%x > 0x%x)" -msgstr "Kernel-Abbild ist zu gross (0x%x > 0x%x)" - -#: util/mkimage.c:1220 util/mkimage.c:1501 -#, c-format -msgid "diskboot.img size must be %u bytes" -msgstr "Die Grösse von diskboot.img muss %u Bytes betragen" - -#: util/mkimage.c:1571 -msgid "" -"fwstart.img doesn't match the known good version. proceed at your own risk" -msgstr "" -"fwstart.img entspricht nicht der bekanntermassen funktionierenden Version. " -"Verwenden Sie dies auf eigene Gefahr" - -#: util/mkimage.c:1575 util/mkimage.c:1601 -msgid "firmware image is too big" -msgstr "Firmware-Abbild ist zu gross" - -#: util/resolve.c:93 -#, c-format -msgid "invalid line format: %s" -msgstr "Ungültiges Zeilenformat: %s" - -#: util/setup.c:167 -msgid "the first sector of the core file is not sector-aligned" -msgstr "Der erste Sektor der Core-Datei ist nicht sektor-ausgerichtet" - -#: util/setup.c:177 -msgid "non-sector-aligned data is found in the core file" -msgstr "" -"Nicht an Sektoren ausgerichtete Daten wurden in der Core-Datei gefunden" - -#: util/setup.c:199 -msgid "the sectors of the core file are too fragmented" -msgstr "Die Sektoren der Core-Datei sind zu stark fragmentiert" - -#: util/setup.c:280 -#, c-format -msgid "the size of `%s' is not %u" -msgstr "Die Grösse von «%s» ist nicht %u" - -#: util/setup.c:290 -#, c-format -msgid "the size of `%s' is too small" -msgstr "«%s» ist zu klein" - -#: util/setup.c:428 -msgid "" -"Attempting to install GRUB to a disk with multiple partition labels or both " -"partition label and filesystem. This is not supported yet." -msgstr "" -"Es wird versucht, GRUB auf einer Platte mit mehreren Partitionsbezeichnungen " -"oder sowohl Partitionsbezeichnungen als auch Dateisystemen zu installieren. " -"Dies wird derzeit noch nicht unterstützt." - -#: util/setup.c:441 -#, c-format -msgid "unable to identify a filesystem in %s; safety check can't be performed" -msgstr "" -"Es kann kein Dateisystem in %s erkannt werden. Sicherheitsüberprüfung kann " -"nicht ausgeführt werden" - -#. TRANSLATORS: Filesystem may reserve the space just GRUB isn't sure about it. -#: util/setup.c:445 -#, c-format -msgid "" -"%s appears to contain a %s filesystem which isn't known to reserve space for " -"DOS-style boot. Installing GRUB there could result in FILESYSTEM " -"DESTRUCTION if valuable data is overwritten by grub-setup (--skip-fs-probe " -"disables this check, use at your own risk)" -msgstr "" -"%s enthält ein %s-Dateisystem, welches bekanntermassen keinen Platz für " -"einen DOS-Betriebssystemstart bereithält. Die Installation von GRUB könnte " -"die ZERSTÖRUNG DES DATEISYSTEMS nach sich ziehen, sofern Daten durch grub-" -"setup überschrieben werden. Die Option --skip-fs-probe deaktiviert diese " -"Überprüfung, verwenden Sie dies auf eigene Gefahr." - -#. TRANSLATORS: Partition map may reserve the space just GRUB isn't sure about it. -#: util/setup.c:458 -#, c-format -msgid "" -"%s appears to contain a %s partition map which isn't known to reserve space " -"for DOS-style boot. Installing GRUB there could result in FILESYSTEM " -"DESTRUCTION if valuable data is overwritten by grub-setup (--skip-fs-probe " -"disables this check, use at your own risk)" -msgstr "" -"%s scheint eine %s-Partitionstabelle zu enthalten, welche bekanntermassen " -"keinen Platz für einen DOS-Betriebssystemstart bereithält. Die Installation " -"von GRUB könnte die ZERSTÖRUNG DES DATEISYSTEMS nach sich ziehen, sofern " -"Daten durch grub-setup überschrieben werden. Die Option --skip-fs-probe " -"deaktiviert diese Überprüfung, verwenden Sie dies auf eigene Gefahr." - -#: util/setup.c:465 -#, c-format -msgid "" -"%s appears to contain a %s partition map and LDM which isn't known to be a " -"safe combination. Installing GRUB there could result in FILESYSTEM " -"DESTRUCTION if valuable data is overwritten by grub-setup (--skip-fs-probe " -"disables this check, use at your own risk)" -msgstr "" -"%s scheint eine %s-Partitionstabelle und LDM zu enthalten, welches " -"bekanntermassen keine sichere Kombination ist. Die Installation von GRUB " -"könnte die ZERSTÖRUNG DES DATEISYSTEMS nach sich ziehen, sofern Daten durch " -"grub-setup überschrieben werden. Die Option --skip-fs-probe deaktiviert " -"diese Überprüfung, verwenden Sie dies auf eigene Gefahr." - -#: util/setup.c:478 -msgid "" -"Attempting to install GRUB to a partitionless disk or to a partition. This " -"is a BAD idea." -msgstr "" -"Es wird versucht, GRUB auf einer nicht partitionierten Platte oder in eine " -"Partition zu installieren. Das ist eine SCHLECHTE Idee." - -#: util/setup.c:483 -msgid "" -"Attempting to install GRUB to a disk with multiple partition labels. This " -"is not supported yet." -msgstr "" -"Es wird versucht, GRUB auf einer Platte mit mehreren Partitionsbezeichnungen " -"zu installieren. Dies wird derzeit noch nicht unterstützt." - -#: util/setup.c:489 -#, c-format -msgid "Partition style `%s' doesn't support embedding" -msgstr "Partitionstyp «%s» unterstützt keine Einbettungen" - -#: util/setup.c:496 -#, c-format -msgid "File system `%s' doesn't support embedding" -msgstr "Dateisystem «%s» unterstützt keine Einbettungen" - -#: util/setup.c:537 -msgid "Your embedding area is unusually small. core.img won't fit in it." -msgstr "" -"Ihr Einbettungsbereich ist ungewöhnlich klein. core.img würde nicht " -"hineinpassen." - -#: util/setup.c:559 util/setup.c:725 util/setup.c:844 -msgid "no terminator in the core image" -msgstr "Kein Terminator im Core-Abbild" - -#: util/setup.c:622 -msgid "core.img version mismatch" -msgstr "Version von core.img passt nicht" - -#: util/setup.c:675 -msgid "" -"embedding is not possible, but this is required for RAID and LVM install" -msgstr "" -"Einbettung ist nicht möglich, jedoch für die Installation mit RAID und LVM " -"erforderlich" - -#: util/setup.c:682 -#, c-format -msgid "can't determine filesystem on %s" -msgstr "Dateisystemtyp auf %s konnte nicht ermittelt werden" - -#: util/setup.c:685 -#, c-format -msgid "filesystem `%s' doesn't support blocklists" -msgstr "Dateisystem «%s» unterstützt keine Blocklisten" - -#. TRANSLATORS: cross-disk refers to /boot being on one disk -#. but MBR on another. -#: util/setup.c:694 -msgid "embedding is not possible, but this is required for cross-disk install" -msgstr "" -"Einbettung ist nicht möglich, jedoch für die Installation auf mehreren " -"Laufwerken erforderlich" - -#: util/setup.c:700 -msgid "" -"Embedding is not possible. GRUB can only be installed in this setup by " -"using blocklists. However, blocklists are UNRELIABLE and their use is " -"discouraged." -msgstr "" -"Einbettung ist nicht möglich. GRUB kann in dieser Konfiguration nur mittels " -"Blocklisten installiert werden. Blocklisten sind allerdings UNZUVERLÄSSIG " -"und deren Verwendung wird daher nicht empfohlen." - -#. TRANSLATORS: Here GRUB refuses to continue with blocklist install. -#: util/setup.c:705 -msgid "will not proceed with blocklists" -msgstr "mit Blocklisten wird nicht fortgesetzt" - -#: util/setup.c:817 util/setup.c:837 -msgid "blocklists are invalid" -msgstr "Blocklisten sind ungültig" - -#: util/setup.c:847 -msgid "blocklists are incomplete" -msgstr "Blocklisten sind unvollständig" diff --git a/thirdparty/grub-2.04/po/en@arabic.gmo b/thirdparty/grub-2.04/po/en@arabic.gmo deleted file mode 100644 index d811c8a971dba5600399ce333b98e808ee6021f1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 156178 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 GKKn1(CWc7> diff --git a/thirdparty/grub-2.04/po/en@arabic.po b/thirdparty/grub-2.04/po/en@arabic.po deleted file mode 100644 index 8203a19de..000000000 --- a/thirdparty/grub-2.04/po/en@arabic.po +++ /dev/null @@ -1,6579 +0,0 @@ -# English translations for grub package. -# Copyright (C) 2019 Free Software Foundation, Inc. -# This file is distributed under the same license as the grub package. -# Automatically generated, 2019. -# -msgid "" -msgstr "" -"Project-Id-Version: grub 2.04\n" -"Report-Msgid-Bugs-To: bug-grub@gnu.org\n" -"POT-Creation-Date: 2019-07-04 16:09+0200\n" -"PO-Revision-Date: 2019-07-04 16:09+0200\n" -"Last-Translator: Automatically generated\n" -"Language-Team: none\n" -"Language: en@arabic\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=2; plural=(n != 1);\n" - -#: grub-core/bus/usb/serial/ftdi.c:145 grub-core/bus/usb/serial/pl2303.c:158 -#: grub-core/term/ieee1275/escc.c:169 grub-core/term/ns8250.c:202 -msgid "unsupported serial port speed" -msgstr "ونسوپ‎پ‎ورتعد سعرִيال پ‎ورت سپ‎ععد" - -#: grub-core/bus/usb/serial/ftdi.c:151 grub-core/bus/usb/serial/pl2303.c:164 -#: grub-core/term/efi/serial.c:116 grub-core/term/ieee1275/escc.c:175 -#: grub-core/term/ns8250.c:208 grub-core/term/serial.c:227 -#: grub-core/term/serial.c:243 -msgid "unsupported serial port parity" -msgstr "ونسوپ‎پ‎ورتعد سعرִيال پ‎ورت پ‎ارִيتي" - -#: grub-core/bus/usb/serial/ftdi.c:157 grub-core/bus/usb/serial/pl2303.c:170 -#: grub-core/term/efi/serial.c:122 grub-core/term/ieee1275/escc.c:181 -#: grub-core/term/ns8250.c:213 grub-core/term/serial.c:267 -msgid "unsupported serial port stop bits number" -msgstr "ونسوپ‎پ‎ورتعد سعرִيال پ‎ورت ستوپ‎ بִيتس نومبعر" - -#: grub-core/bus/usb/serial/ftdi.c:161 grub-core/bus/usb/serial/pl2303.c:174 -#: grub-core/term/efi/serial.c:126 grub-core/term/ieee1275/escc.c:185 -#: grub-core/term/ns8250.c:217 -msgid "unsupported serial port word length" -msgstr "ونسوپ‎پ‎ورتعد سعرִيال پ‎ورت وورد لعنغته" - -#: grub-core/commands/acpi.c:42 -msgid "Don't load host tables specified by comma-separated list." -msgstr "دون'ت لواد هوست تابلعس سپ‎عصִيÙִيعد بي صومما-سعپ‎اراتعد لִيست." - -#: grub-core/commands/acpi.c:45 -msgid "Load only tables specified by comma-separated list." -msgstr "لواد ونلي تابلعس سپ‎عصִيÙִيعد بي صومما-سعپ‎اراتعد لִيست." - -#: grub-core/commands/acpi.c:46 -msgid "Export version 1 tables to the OS." -msgstr "عكسپ‎ورت وعرسִيون 1 تابلعس تو تهع وس." - -#: grub-core/commands/acpi.c:47 -msgid "Export version 2 and version 3 tables to the OS." -msgstr "عكسپ‎ورت وعرسִيون 2 اند وعرسִيون 3 تابلعس تو تهع وس." - -#: grub-core/commands/acpi.c:48 -msgid "Set OEMID of RSDP, XSDT and RSDT." -msgstr "سعت وعمִيد و٠رسدپ‎, كسسدت اند رسدت." - -#: grub-core/commands/acpi.c:50 -msgid "Set OEMTABLE ID of RSDP, XSDT and RSDT." -msgstr "سعت وعمتابلع ִيد و٠رسدپ‎, كسسدت اند رسدت." - -#: grub-core/commands/acpi.c:52 -msgid "Set OEMTABLE revision of RSDP, XSDT and RSDT." -msgstr "سعت وعمتابلع رعوִيسִيون و٠رسدپ‎, كسسدت اند رسدت." - -#: grub-core/commands/acpi.c:54 -msgid "Set creator field of RSDP, XSDT and RSDT." -msgstr "سعت صرعاتور Ùִيعلد و٠رسدپ‎, كسسدت اند رسدت." - -#: grub-core/commands/acpi.c:56 -msgid "Set creator revision of RSDP, XSDT and RSDT." -msgstr "سعت صرعاتور رعوִيسִيون و٠رسدپ‎, كسسدت اند رسدت." - -#. TRANSLATORS: "hangs" here is a noun, not a verb. -#: grub-core/commands/acpi.c:58 -msgid "" -"Don't update EBDA. May fix failures or hangs on some BIOSes but makes it " -"ineffective with OS not receiving RSDP from GRUB." -msgstr "" -"دون'ت وپ‎داتع عبدا. ماي Ùִيكس ÙØ§Ö´ÙŠÙ„ورعس ور هانغس ون سومع بִيوسعس بوت ماكعس ִيت Ö´" -"ينعÙÙØ¹ØµØªÖ´ÙŠÙˆØ¹ وִيته وس نوت رعصعִيوִينغ رسدپ‎ ÙØ±ÙˆÙ… غروب." - -#: grub-core/commands/acpi.c:650 grub-core/commands/acpi.c:667 -#: grub-core/commands/i386/pc/play.c:105 grub-core/commands/keylayouts.c:230 -#: grub-core/commands/keylayouts.c:245 grub-core/commands/keylayouts.c:263 -#: grub-core/commands/verifiers.c:156 grub-core/efiemu/loadcore.c:350 -#: grub-core/kern/elf.c:117 grub-core/kern/elfXX.c:29 -#: grub-core/kern/elfXX.c:156 grub-core/loader/arm/linux.c:319 -#: grub-core/loader/arm64/linux.c:330 grub-core/loader/arm64/xen_boot.c:356 -#: grub-core/loader/efi/chainloader.c:276 -#: grub-core/loader/efi/chainloader.c:297 -#: grub-core/loader/efi/chainloader.c:329 grub-core/loader/efi/fdt.c:138 -#: grub-core/loader/i386/bsd.c:1276 grub-core/loader/i386/bsd.c:2116 -#: grub-core/loader/i386/bsdXX.c:20 grub-core/loader/i386/bsdXX.c:36 -#: grub-core/loader/i386/bsdXX.c:63 grub-core/loader/i386/bsdXX.c:357 -#: grub-core/loader/i386/bsdXX.c:376 grub-core/loader/i386/bsdXX.c:519 -#: grub-core/loader/i386/bsdXX.c:535 grub-core/loader/i386/bsdXX.c:615 -#: grub-core/loader/i386/bsdXX.c:638 -#: grub-core/loader/i386/coreboot/chainloader.c:112 -#: grub-core/loader/i386/coreboot/chainloader.c:148 -#: grub-core/loader/i386/coreboot/chainloader.c:170 -#: grub-core/loader/i386/linux.c:667 grub-core/loader/i386/linux.c:788 -#: grub-core/loader/i386/linux.c:1005 grub-core/loader/i386/multiboot_mbi.c:171 -#: grub-core/loader/i386/pc/chainloader.c:202 -#: grub-core/loader/i386/pc/linux.c:149 grub-core/loader/i386/pc/linux.c:320 -#: grub-core/loader/i386/pc/linux.c:362 grub-core/loader/i386/pc/plan9.c:457 -#: grub-core/loader/i386/pc/plan9.c:550 grub-core/loader/i386/pc/plan9.c:566 -#: grub-core/loader/i386/xen.c:934 grub-core/loader/i386/xen_file.c:72 -#: grub-core/loader/i386/xen_fileXX.c:43 grub-core/loader/i386/xen_fileXX.c:186 -#: grub-core/loader/i386/xen_fileXX.c:339 grub-core/loader/ia64/efi/linux.c:423 -#: grub-core/loader/ia64/efi/linux.c:471 grub-core/loader/linux.c:286 -#: grub-core/loader/macho.c:84 grub-core/loader/macho.c:109 -#: grub-core/loader/machoXX.c:33 grub-core/loader/machoXX.c:46 -#: grub-core/loader/machoXX.c:76 grub-core/loader/machoXX.c:116 -#: grub-core/loader/machoXX.c:131 grub-core/loader/machoXX.c:147 -#: grub-core/loader/machoXX.c:196 grub-core/loader/machoXX.c:317 -#: grub-core/loader/multiboot.c:434 grub-core/loader/multiboot_elfxx.c:171 -#: grub-core/loader/multiboot_elfxx.c:234 -#: grub-core/loader/multiboot_elfxx.c:278 grub-core/loader/multiboot_mbi2.c:129 -#: grub-core/loader/xnu.c:737 grub-core/loader/xnu.c:795 -#: grub-core/loader/xnu.c:816 grub-core/loader/xnu.c:871 -#: grub-core/loader/xnu.c:914 grub-core/loader/xnu.c:952 -#: grub-core/loader/xnu_resume.c:68 grub-core/loader/xnu_resume.c:153 -#: grub-core/loader/xnu_resume.c:165 util/grub-mkimagexx.c:2288 -#, c-format -msgid "premature end of file %s" -msgstr "پ‎رعماتورع عند ÙˆÙ Ùִيلع %s" - -#: grub-core/commands/acpi.c:779 -msgid "" -"[-1|-2] [--exclude=TABLE1,TABLE2|--load-only=TABLE1,TABLE2] FILE1 [FILE2] " -"[...]" -msgstr "" -"[-1|-2] [--عكسصلودع=تابلع1,تابلع2|--لواد-ونلي=تابلع1,تابلع2] Ùִيلع1 [Ùִيلع2] " -"[...]" - -#: grub-core/commands/acpi.c:782 -msgid "Load host ACPI tables and tables specified by arguments." -msgstr "لواد هوست اصپ‎ִي تابلعس اند تابلعس سپ‎عصִيÙִيعد بي ارغومعنتس." - -#: grub-core/commands/acpihalt.c:368 grub-core/kern/err.c:110 -#, c-format -msgid "error: %s.\n" -msgstr "عررور: %s.\n" - -#: grub-core/commands/acpihalt.c:368 grub-core/kern/emu/misc.c:95 -#: grub-core/kern/emu/misc.c:105 grub-core/kern/emu/misc.c:134 -#: grub-core/kern/emu/mm.c:34 grub-core/kern/emu/mm.c:62 -#: grub-core/kern/mm.c:374 grub-core/lib/relocator.c:1282 -#: grub-core/lib/relocator.c:1439 grub-core/lib/relocator.c:1538 -#: grub-core/loader/arm/linux.c:259 grub-core/loader/arm64/linux.c:265 -#: grub-core/loader/arm64/linux.c:321 grub-core/loader/arm64/linux.c:340 -#: grub-core/loader/arm64/xen_boot.c:344 grub-core/loader/arm64/xen_boot.c:367 -#: grub-core/loader/efi/chainloader.c:289 grub-core/osdep/unix/dl.c:48 -#: grub-core/osdep/windows/dl.c:46 grub-core/script/lexer.c:156 -#: grub-core/script/lexer.c:182 -msgid "out of memory" -msgstr "ووت و٠معموري" - -#: grub-core/commands/acpihalt.c:374 grub-core/disk/cryptodisk.c:587 -#: grub-core/disk/cryptodisk.c:632 grub-core/kern/emu/hostdisk.c:307 -#: grub-core/kern/emu/hostfs.c:149 grub-core/kern/emu/misc.c:200 -#: grub-core/osdep/linux/ofpath.c:195 grub-core/osdep/linux/ofpath.c:521 -#: grub-core/osdep/linux/ofpath.c:534 util/glue-efi.c:80 util/glue-efi.c:94 -#: util/grub-editenv.c:155 util/grub-fstest.c:577 -#: util/grub-install-common.c:943 util/grub-mkrescue.c:634 -#: util/grub-mkrescue.c:888 util/grub-mount.c:506 util/grub-render-label.c:176 -#: util/misc.c:95 util/setup.c:814 util/setup.c:833 -#, c-format -msgid "cannot read `%s': %s" -msgstr "صاننوت رعاد `%s': %s" - -#. TRANSLATORS: It's computer shutdown using ACPI, not disabling ACPI. -#: grub-core/commands/acpihalt.c:452 -msgid "ACPI shutdown failed" -msgstr "اصپ‎ִي سهوتدوون ÙØ§Ö´ÙŠÙ„عد" - -#: grub-core/commands/arc/lsdev.c:51 -msgid "List devices." -msgstr "لִيست دعوִيصعس." - -#: grub-core/commands/blocklist.c:122 grub-core/commands/cat.c:57 -#: grub-core/commands/configfile.c:35 grub-core/commands/efi/loadbios.c:168 -#: grub-core/commands/file.c:159 grub-core/commands/hexdump.c:47 -#: grub-core/commands/legacycfg.c:209 grub-core/commands/legacycfg.c:315 -#: grub-core/commands/minicmd.c:44 grub-core/commands/syslinuxcfg.c:146 -#: grub-core/commands/testload.c:58 grub-core/commands/testspeed.c:52 -#: grub-core/disk/loopback.c:93 grub-core/efiemu/main.c:293 -#: grub-core/font/font_cmd.c:32 grub-core/kern/emu/hostdisk.c:519 -#: grub-core/loader/arm/linux.c:364 grub-core/loader/arm/linux.c:409 -#: grub-core/loader/arm/linux.c:472 grub-core/loader/arm64/linux.c:243 -#: grub-core/loader/arm64/linux.c:297 grub-core/loader/arm64/xen_boot.c:398 -#: grub-core/loader/arm64/xen_boot.c:411 grub-core/loader/arm64/xen_boot.c:462 -#: grub-core/loader/efi/chainloader.c:216 grub-core/loader/i386/bsd.c:1462 -#: grub-core/loader/i386/bsd.c:1807 grub-core/loader/i386/bsd.c:2085 -#: grub-core/loader/i386/coreboot/chainloader.c:438 -#: grub-core/loader/i386/linux.c:656 grub-core/loader/i386/linux.c:1041 -#: grub-core/loader/i386/pc/chainloader.c:290 -#: grub-core/loader/i386/pc/freedos.c:105 grub-core/loader/i386/pc/linux.c:138 -#: grub-core/loader/i386/pc/linux.c:400 grub-core/loader/i386/pc/ntldr.c:85 -#: grub-core/loader/i386/pc/plan9.c:409 -#: grub-core/loader/i386/pc/pxechainloader.c:94 -#: grub-core/loader/i386/pc/truecrypt.c:96 grub-core/loader/i386/xen.c:641 -#: grub-core/loader/i386/xen.c:768 grub-core/loader/i386/xen.c:844 -#: grub-core/loader/i386/xen.c:854 grub-core/loader/i386/xnu.c:488 -#: grub-core/loader/ia64/efi/linux.c:459 grub-core/loader/ia64/efi/linux.c:539 -#: grub-core/loader/mips/linux.c:238 grub-core/loader/mips/linux.c:429 -#: grub-core/loader/multiboot.c:322 grub-core/loader/multiboot.c:374 -#: grub-core/loader/multiboot.c:384 -#: grub-core/loader/powerpc/ieee1275/linux.c:269 -#: grub-core/loader/powerpc/ieee1275/linux.c:341 -#: grub-core/loader/sparc64/ieee1275/linux.c:305 -#: grub-core/loader/sparc64/ieee1275/linux.c:381 grub-core/loader/xnu.c:351 -#: grub-core/loader/xnu.c:460 grub-core/loader/xnu.c:778 -#: grub-core/loader/xnu.c:892 grub-core/loader/xnu.c:1277 -#: grub-core/loader/xnu.c:1427 grub-core/loader/xnu.c:1453 -#: grub-core/video/readers/jpeg.c:812 grub-core/video/readers/png.c:1123 -msgid "filename expected" -msgstr "Ùִيلعنامع عكسپ‎عصتعد" - -#. TRANSLATORS: "embed" is a verb (command description). " -#: grub-core/commands/blocklist.c:154 grub-core/commands/cat.c:163 -#: grub-core/commands/configfile.c:65 grub-core/commands/configfile.c:68 -#: grub-core/commands/configfile.c:74 grub-core/commands/configfile.c:80 -#: grub-core/commands/configfile.c:86 grub-core/commands/hashsum.c:34 -#: grub-core/commands/legacycfg.c:834 grub-core/commands/legacycfg.c:841 -#: grub-core/commands/legacycfg.c:846 grub-core/commands/legacycfg.c:851 -#: grub-core/commands/macbless.c:222 grub-core/commands/minicmd.c:198 -#: grub-core/commands/syslinuxcfg.c:186 grub-core/commands/syslinuxcfg.c:194 -#: grub-core/commands/syslinuxcfg.c:200 grub-core/commands/syslinuxcfg.c:206 -#: grub-core/commands/testload.c:163 grub-core/efiemu/main.c:312 -#: grub-core/kern/emu/main.c:100 grub-core/kern/emu/main.c:103 -#: grub-core/loader/i386/bsd.c:2137 grub-core/loader/i386/bsd.c:2140 -#: grub-core/loader/i386/bsd.c:2143 -#: grub-core/loader/i386/coreboot/chainloader.c:505 -#: grub-core/loader/ia64/efi/linux.c:594 include/grub/util/install.h:32 -#: include/grub/util/install.h:64 util/grub-glue-efi.c:52 -#: util/grub-glue-efi.c:54 util/grub-glue-efi.c:56 util/grub-install.c:254 -#: util/grub-install.c:301 util/grub-mkfont.c:936 util/grub-mkimage.c:68 -#: util/grub-mkimage.c:74 util/grub-mkimage.c:76 util/grub-mkimage.c:78 -#: util/grub-mkimage.c:81 util/grub-mklayout.c:52 util/grub-mklayout.c:54 -#: util/grub-mkrescue.c:97 util/grub-mkrescue.c:101 util/grub-mkrescue.c:104 -#: util/grub-mkrescue.c:105 util/grub-mkrescue.c:106 -#: util/grub-mkstandalone.c:47 util/grub-mkstandalone.c:49 -#: util/grub-probe.c:732 util/grub-render-label.c:59 -#: util/grub-render-label.c:70 util/grub-render-label.c:72 util/grub-setup.c:78 -#: util/grub-setup.c:80 util/grub-setup.c:84 util/grub-syslinux2cfg.c:74 -#: util/grub-syslinux2cfg.c:147 -msgid "FILE" -msgstr "Ùִيلع" - -#: grub-core/commands/blocklist.c:154 -msgid "Print a block list." -msgstr "پ‎رִينت ا بلوصك لִيست." - -#: grub-core/commands/boot.c:147 grub-core/commands/legacycfg.c:533 -#: grub-core/commands/legacycfg.c:574 grub-core/loader/arm64/linux.c:250 -#: grub-core/loader/i386/bsd.c:1799 grub-core/loader/i386/bsd.c:1900 -#: grub-core/loader/i386/bsd.c:2007 grub-core/loader/i386/bsd.c:2040 -#: grub-core/loader/i386/bsd.c:2089 grub-core/loader/i386/linux.c:1047 -#: grub-core/loader/i386/pc/linux.c:406 grub-core/loader/i386/xen.c:775 -#: grub-core/loader/i386/xen.c:859 grub-core/loader/ia64/efi/linux.c:545 -#: grub-core/loader/mips/linux.c:432 grub-core/loader/multiboot.c:388 -#: grub-core/loader/powerpc/ieee1275/linux.c:347 -#: grub-core/loader/sparc64/ieee1275/linux.c:387 grub-core/loader/xnu.c:572 -#: grub-core/loader/xnu.c:665 grub-core/loader/xnu.c:781 -#: grub-core/loader/xnu.c:895 grub-core/loader/xnu.c:1091 -#: grub-core/loader/xnu.c:1258 grub-core/loader/xnu.c:1289 -#: grub-core/loader/xnu.c:1430 -msgid "you need to load the kernel first" -msgstr "يوو نععد تو لواد تهع كعرنعل Ùִيرست" - -#: grub-core/commands/boot.c:189 -msgid "Boot an operating system." -msgstr "بووت ان وپ‎عراتִينغ سيستعم." - -#: grub-core/commands/boottime.c:36 -#: grub-core/commands/i386/coreboot/cb_timestamps.c:108 -msgid "No boot time statistics is available\n" -msgstr "نو بووت تִيمع ستاتִيستִيصس ִيس اواִيلابلع\n" - -#: grub-core/commands/boottime.c:59 -msgid "Show boot time statistics." -msgstr "سهوو بووت تִيمع ستاتִيستִيصس." - -#: grub-core/commands/cacheinfo.c:40 -#, c-format -msgid "Disk cache statistics: hits = %lu (%lu.%02lu%%), misses = %lu\n" -msgstr "دִيسك صاصهع ستاتִيستִيصس: هִيتس = %lu (%lu.%02lu%%), مִيسسعس = %lu\n" - -#: grub-core/commands/cacheinfo.c:45 -msgid "No disk cache statistics available\n" -msgstr "نو دִيسك صاصهع ستاتִيستִيصس اواִيلابلع\n" - -#: grub-core/commands/cacheinfo.c:56 -msgid "Get disk cache info." -msgstr "غعت دִيسك صاصهع ִينÙÙˆ." - -#: grub-core/commands/cat.c:33 -msgid "Accept DOS-style CR/NL line endings." -msgstr "اصصعپ‎ت دوس-ستيلع صر/نل لִينع عندִينغس." - -#: grub-core/commands/cat.c:163 grub-core/commands/minicmd.c:198 -msgid "Show the contents of a file." -msgstr "سهوو تهع صونتعنتس و٠ا Ùִيلع." - -#: grub-core/commands/cmp.c:43 grub-core/commands/i386/pc/drivemap.c:239 -#: grub-core/commands/i386/wrmsr.c:60 grub-core/commands/iorw.c:85 -#: grub-core/commands/memrw.c:84 grub-core/commands/password.c:75 -#: grub-core/commands/password_pbkdf2.c:94 grub-core/commands/pgp.c:826 -#: grub-core/commands/regexp.c:113 grub-core/mmap/mmap.c:517 -#: grub-core/net/dns.c:639 -msgid "two arguments expected" -msgstr "توو ارغومعنتس عكسپ‎عصتعد" - -#: grub-core/commands/cmp.c:45 -#, c-format -msgid "Compare file `%s' with `%s':\n" -msgstr "صومپ‎ارع Ùִيلع `%s' وִيته `%s':\n" - -#: grub-core/commands/cmp.c:54 -#, c-format -msgid "Files differ in size: %llu [%s], %llu [%s]\n" -msgstr "Ùִيلعس دִيÙÙØ¹Ø± ִين سִيزع: %llu [%s], %llu [%s]\n" - -#: grub-core/commands/cmp.c:81 -#, c-format -msgid "Files differ at the offset %llu: 0x%x [%s], 0x%x [%s]\n" -msgstr "Ùִيلعس دִيÙÙØ¹Ø± ات تهع ÙˆÙÙØ³Ø¹Øª %llu: 0كس%x [%s], 0كس%x [%s]\n" - -#. TRANSLATORS: it's always exactly 2 files. -#: grub-core/commands/cmp.c:93 -msgid "The files are identical.\n" -msgstr "تهع Ùִيلعس ارع ִيدعنتִيصال.\n" - -#: grub-core/commands/cmp.c:113 -msgid "FILE1 FILE2" -msgstr "Ùִيلع1 Ùִيلع2" - -#: grub-core/commands/cmp.c:113 -msgid "Compare two files." -msgstr "صومپ‎ارع توو Ùִيلعس." - -#: grub-core/commands/configfile.c:65 -msgid "Load another config file." -msgstr "لواد انوتهعر صونÙִيغ Ùִيلع." - -#: grub-core/commands/configfile.c:69 grub-core/commands/configfile.c:87 -msgid "Load another config file without changing context." -msgstr "لواد انوتهعر صونÙִيغ Ùִيلع وִيتهووت صهانغִينغ صونتعكست." - -#: grub-core/commands/configfile.c:75 -msgid "" -"Load another config file without changing context but take only menu entries." -msgstr "" -"لواد انوتهعر صونÙִيغ Ùִيلع وִيتهووت صهانغִينغ صونتعكست بوت تاكع ونلي معنو " -"عنترִيعس." - -#: grub-core/commands/configfile.c:81 -msgid "Load another config file but take only menu entries." -msgstr "لواد انوتهعر صونÙִيغ Ùִيلع بوت تاكع ونلي معنو عنترִيعس." - -#: grub-core/commands/date.c:141 -msgid "[[year-]month-day] [hour:minute[:second]]" -msgstr "[[يعار-]مونته-داي] [هوور:مִينوتع[:سعصوند]]" - -#: grub-core/commands/date.c:142 -msgid "Display/set current datetime." -msgstr "دִيسپ‎لاي/سعت صوررعنت داتعتִيمع." - -#: grub-core/commands/echo.c:30 -msgid "Do not output the trailing newline." -msgstr "دو نوت ووتپ‎وت تهع تراִيلִينغ نعولִينع." - -#: grub-core/commands/echo.c:31 -msgid "Enable interpretation of backslash escapes." -msgstr "عنابلع ִينتعرپ‎رعتاتִيون و٠باصكسلاسه عسصاپ‎عس." - -#: grub-core/commands/echo.c:134 -msgid "[-e|-n] STRING" -msgstr "[-ع|-Ù†] سترִينغ" - -#: grub-core/commands/echo.c:134 -msgid "Display a line of text." -msgstr "دִيسپ‎لاي ا لִينع و٠تعكست." - -#: grub-core/commands/efi/efifwsetup.c:82 -msgid "Reboot into firmware setup menu." -msgstr "رعبووت ִينتو Ùִيرموارع سعتوپ‎ معنو." - -#: grub-core/commands/efi/fixvideo.c:107 -msgid "Fix video problem." -msgstr "Ùִيكس وִيدعو پ‎روبلعم." - -#: grub-core/commands/efi/loadbios.c:52 -msgid "ROM image is present." -msgstr "روم ִيماغع ִيس پ‎رعسعنت." - -#: grub-core/commands/efi/loadbios.c:70 -msgid "Can't enable ROM area." -msgstr "صان'ت عنابلع روم ارعا." - -#: grub-core/commands/efi/loadbios.c:209 -msgid "" -"Create BIOS-like structures for backward compatibility with existing OS." -msgstr "" -"صرعاتع بִيوس-لִيكع ستروصتورعس Ùور باصكوارد صومپ‎اتִيبִيلִيتي وִيته عكسִيستִينغ وس." - -#: grub-core/commands/efi/loadbios.c:214 -msgid "BIOS_DUMP [INT10_DUMP]" -msgstr "بִيوس_دومپ‎ [ִينت10_دومپ‎]" - -#: grub-core/commands/efi/loadbios.c:215 -msgid "Load BIOS dump." -msgstr "لواد بִيوس دومپ‎." - -#: grub-core/commands/efi/shim_lock.c:76 -#, c-format -msgid "module cannot be loaded in UEFI secure boot mode: %s" -msgstr "مودولع صاننوت بع لوادعد ִين وعÙÖ´ÙŠ سعصورع بووت مودع: %s" - -#: grub-core/commands/efi/shim_lock.c:98 -#, c-format -msgid "cannot boot due to dangerous module in memory: %s" -msgstr "صاننوت بووت دوع تو دانغعرووس مودولع ִين معموري: %s" - -#: grub-core/commands/efi/shim_lock.c:116 -msgid "bad shim signature" -msgstr "باد سهִيم سִيغناتورع" - -#: grub-core/commands/efi/tpm.c:149 grub-core/commands/efi/tpm.c:189 -#: grub-core/commands/efi/tpm.c:256 grub-core/commands/efi/tpm.c:306 -msgid "Command failed" -msgstr "صومماند ÙØ§Ö´ÙŠÙ„عد" - -#: grub-core/commands/efi/tpm.c:151 grub-core/commands/efi/tpm.c:191 -#: grub-core/commands/efi/tpm.c:258 grub-core/commands/efi/tpm.c:308 -msgid "Invalid parameter" -msgstr "ִينوالִيد پ‎ارامعتعر" - -#: grub-core/commands/efi/tpm.c:154 grub-core/commands/efi/tpm.c:194 -#: grub-core/commands/efi/tpm.c:261 grub-core/commands/efi/tpm.c:311 -msgid "Output buffer too small" -msgstr "ووتپ‎وت بوÙÙØ¹Ø± توو سمالل" - -#: grub-core/commands/efi/tpm.c:156 grub-core/commands/efi/tpm.c:196 -#: grub-core/commands/efi/tpm.c:263 grub-core/commands/efi/tpm.c:313 -msgid "TPM unavailable" -msgstr "تپ‎م وناواִيلابلع" - -#: grub-core/commands/efi/tpm.c:158 grub-core/commands/efi/tpm.c:198 -#: grub-core/commands/efi/tpm.c:265 grub-core/commands/efi/tpm.c:315 -msgid "Unknown TPM error" -msgstr "ونكنوون تپ‎م عررور" - -#: grub-core/commands/efi/tpm.c:240 grub-core/commands/efi/tpm.c:288 -msgid "cannot allocate TPM event buffer" -msgstr "صاننوت اللوصاتع تپ‎م عوعنت بوÙÙØ¹Ø±" - -#: grub-core/commands/eval.c:63 -msgid "STRING ..." -msgstr "سترִينغ ..." - -#: grub-core/commands/eval.c:64 -msgid "Evaluate arguments as GRUB commands" -msgstr "عوالواتع ارغومعنتس اس غروب صومماندس" - -#: grub-core/commands/file.c:41 -msgid "Check if FILE can be booted as i386 PAE Xen unprivileged guest kernel" -msgstr "صهعصك Ö´ÙŠÙ Ùִيلع صان بع بووتعد اس Ö´ÙŠ386 پ‎اع كسعن ونپ‎رִيوִيلعغعد غوعست كعرنعل" - -#: grub-core/commands/file.c:44 -msgid "Check if FILE can be booted as x86_64 Xen unprivileged guest kernel" -msgstr "صهعصك Ö´ÙŠÙ Ùִيلع صان بع بووتعد اس كس86_64 كسعن ونپ‎رִيوִيلعغعد غوعست كعرنعل" - -#: grub-core/commands/file.c:46 -msgid "Check if FILE can be used as Xen x86 privileged guest kernel" -msgstr "صهعصك Ö´ÙŠÙ Ùִيلع صان بع وسعد اس كسعن كس86 پ‎رִيوִيلعغعد غوعست كعرنعل" - -#: grub-core/commands/file.c:48 -msgid "Check if FILE can be used as x86 multiboot kernel" -msgstr "صهعصك Ö´ÙŠÙ Ùִيلع صان بع وسعد اس كس86 مولتִيبووت كعرنعل" - -#: grub-core/commands/file.c:50 -msgid "Check if FILE can be used as x86 multiboot2 kernel" -msgstr "صهعصك Ö´ÙŠÙ Ùִيلع صان بع وسعد اس كس86 مولتִيبووت2 كعرنعل" - -#: grub-core/commands/file.c:52 -msgid "Check if FILE is ARM Linux" -msgstr "صهعصك Ö´ÙŠÙ Ùִيلع ִيس ارم لִينوكس" - -#: grub-core/commands/file.c:54 -msgid "Check if FILE is ARM64 Linux" -msgstr "صهعصك Ö´ÙŠÙ Ùִيلع ִيس ارم64 لִينوكس" - -#: grub-core/commands/file.c:56 -msgid "Check if FILE is IA64 Linux" -msgstr "صهعصك Ö´ÙŠÙ Ùִيلع ִيس ִيا64 لִينوكس" - -#: grub-core/commands/file.c:58 -msgid "Check if FILE is MIPS Linux" -msgstr "صهعصك Ö´ÙŠÙ Ùִيلع ִيس مִيپ‎س لִينوكس" - -#: grub-core/commands/file.c:60 -msgid "Check if FILE is MIPSEL Linux" -msgstr "صهعصك Ö´ÙŠÙ Ùִيلع ִيس مִيپ‎سعل لִينوكس" - -#: grub-core/commands/file.c:62 -msgid "Check if FILE is SPARC64 Linux" -msgstr "صهعصك Ö´ÙŠÙ Ùִيلع ִيس سپ‎ارص64 لִينوكس" - -#: grub-core/commands/file.c:64 -msgid "Check if FILE is POWERPC Linux" -msgstr "صهعصك Ö´ÙŠÙ Ùִيلع ִيس پ‎ووعرپ‎ص لִينوكس" - -#: grub-core/commands/file.c:66 -msgid "Check if FILE is x86 Linux" -msgstr "صهعصك Ö´ÙŠÙ Ùִيلع ִيس كس86 لִينوكس" - -#: grub-core/commands/file.c:68 -msgid "Check if FILE is x86 Linux supporting 32-bit protocol" -msgstr "صهعصك Ö´ÙŠÙ Ùִيلع ִيس كس86 لִينوكس سوپ‎پ‎ورتִينغ 32-بִيت پ‎روتوصول" - -#: grub-core/commands/file.c:70 -msgid "Check if FILE is x86 kFreeBSD" -msgstr "صهعصك Ö´ÙŠÙ Ùִيلع ִيس كس86 ÙƒÙØ±Ø¹Ø¹Ø¨Ø³Ø¯" - -#: grub-core/commands/file.c:72 -msgid "Check if FILE is i386 kFreeBSD" -msgstr "صهعصك Ö´ÙŠÙ Ùִيلع ִيس Ö´ÙŠ386 ÙƒÙØ±Ø¹Ø¹Ø¨Ø³Ø¯" - -#: grub-core/commands/file.c:74 -msgid "Check if FILE is x86_64 kFreeBSD" -msgstr "صهعصك Ö´ÙŠÙ Ùִيلع ִيس كس86_64 ÙƒÙØ±Ø¹Ø¹Ø¨Ø³Ø¯" - -#: grub-core/commands/file.c:77 -msgid "Check if FILE is x86 kNetBSD" -msgstr "صهعصك Ö´ÙŠÙ Ùִيلع ִيس كس86 كنعتبسد" - -#: grub-core/commands/file.c:79 -msgid "Check if FILE is i386 kNetBSD" -msgstr "صهعصك Ö´ÙŠÙ Ùִيلع ִيس Ö´ÙŠ386 كنعتبسد" - -#: grub-core/commands/file.c:81 -msgid "Check if FILE is x86_64 kNetBSD" -msgstr "صهعصك Ö´ÙŠÙ Ùִيلع ִيس كس86_64 كنعتبسد" - -#: grub-core/commands/file.c:84 -msgid "Check if FILE is i386 EFI file" -msgstr "صهعصك Ö´ÙŠÙ Ùִيلع ִيس Ö´ÙŠ386 عÙÖ´ÙŠ Ùִيلع" - -#: grub-core/commands/file.c:86 -msgid "Check if FILE is x86_64 EFI file" -msgstr "صهعصك Ö´ÙŠÙ Ùִيلع ִيس كس86_64 عÙÖ´ÙŠ Ùִيلع" - -#: grub-core/commands/file.c:88 -msgid "Check if FILE is IA64 EFI file" -msgstr "صهعصك Ö´ÙŠÙ Ùִيلع ִيس ִيا64 عÙÖ´ÙŠ Ùִيلع" - -#: grub-core/commands/file.c:90 -msgid "Check if FILE is ARM64 EFI file" -msgstr "صهعصك Ö´ÙŠÙ Ùִيلع ִيس ارم64 عÙÖ´ÙŠ Ùִيلع" - -#: grub-core/commands/file.c:92 -msgid "Check if FILE is ARM EFI file" -msgstr "صهعصك Ö´ÙŠÙ Ùִيلع ִيس ارم عÙÖ´ÙŠ Ùִيلع" - -#: grub-core/commands/file.c:94 -msgid "Check if FILE is RISC-V 32bit EFI file" -msgstr "صهعصك Ö´ÙŠÙ Ùִيلع ִيس رִيسص-Ùˆ 32بִيت عÙÖ´ÙŠ Ùִيلع" - -#: grub-core/commands/file.c:96 -msgid "Check if FILE is RISC-V 64bit EFI file" -msgstr "صهعصك Ö´ÙŠÙ Ùִيلع ִيس رִيسص-Ùˆ 64بִيت عÙÖ´ÙŠ Ùִيلع" - -#: grub-core/commands/file.c:98 -msgid "Check if FILE is hiberfil.sys in hibernated state" -msgstr "صهعصك Ö´ÙŠÙ Ùִيلع ִيس هִيبعرÙִيل.سيس ִين هִيبعرناتعد ستاتع" - -#: grub-core/commands/file.c:100 -msgid "Check if FILE is x86_64 XNU (Mac OS X kernel)" -msgstr "صهعصك Ö´ÙŠÙ Ùִيلع ִيس كس86_64 كسنو (ماص وس كس كعرنعل)" - -#: grub-core/commands/file.c:102 -msgid "Check if FILE is i386 XNU (Mac OS X kernel)" -msgstr "صهعصك Ö´ÙŠÙ Ùִيلع ִيس Ö´ÙŠ386 كسنو (ماص وس كس كعرنعل)" - -#: grub-core/commands/file.c:104 -msgid "Check if FILE is XNU (Mac OS X kernel) hibernated image" -msgstr "صهعصك Ö´ÙŠÙ Ùִيلع ִيس كسنو (ماص وس كس كعرنعل) هִيبعرناتعد ִيماغع" - -#: grub-core/commands/file.c:106 -msgid "Check if FILE is BIOS bootsector" -msgstr "صهعصك Ö´ÙŠÙ Ùִيلع ִيس بִيوس بووتسعصتور" - -#. TRANSLATORS: it's a standalone boolean value, -#. opposite of "true". -#: grub-core/commands/file.c:675 grub-core/commands/i386/cmostest.c:63 -#: grub-core/commands/i386/cpuid.c:71 grub-core/commands/keystatus.c:83 -#: grub-core/commands/keystatus.c:87 grub-core/commands/keystatus.c:96 -#: grub-core/commands/test.c:436 grub-core/commands/true.c:39 -#: grub-core/script/execute.c:247 grub-core/script/execute.c:1039 -msgid "false" -msgstr "ÙØ§Ù„سع" - -#: grub-core/commands/file.c:684 -msgid "OPTIONS FILE" -msgstr "وپ‎تִيونس Ùִيلع" - -#: grub-core/commands/file.c:685 -msgid "Check if FILE is of specified type." -msgstr "صهعصك Ö´ÙŠÙ Ùִيلع ִيس و٠سپ‎عصִيÙִيعد تيپ‎ع." - -#. TRANSLATORS: It means that the specified partition e.g. -#. hd0,msdos1=/dev/sda1 doesn't exist. -#: grub-core/commands/gptsync.c:140 grub-core/kern/disk.c:258 -msgid "no such partition" -msgstr "نو سوصه پ‎ارتִيتִيون" - -#: grub-core/commands/gptsync.c:240 -#, c-format -msgid "New MBR is written to `%s'\n" -msgstr "نعو مبر ִيس ورִيتتعن تو `%s'\n" - -#: grub-core/commands/gptsync.c:252 -msgid "DEVICE [PARTITION[+/-[TYPE]]] ..." -msgstr "دعوִيصع [پ‎ارتִيتִيون[+/-[تيپ‎ع]]] ..." - -#. TRANSLATORS: MBR type is one-byte partition -#. type id. -#: grub-core/commands/gptsync.c:255 -msgid "" -"Fill hybrid MBR of GPT drive DEVICE. Specified partitions will be a part of " -"hybrid MBR. Up to 3 partitions are allowed. TYPE is an MBR type. + means " -"that partition is active. Only one partition can be active." -msgstr "" -"Ùִيلل هيبرִيد مبر و٠غپ‎ت درִيوع دعوִيصع. سپ‎عصִيÙִيعد پ‎ارتִيتִيونس وִيلل بع ا پ‎ارت ÙˆÙ " -"هيبرִيد مبر. وپ‎ تو 3 پ‎ارتִيتִيونس ارع اللووعد. تيپ‎ع ִيس ان مبر تيپ‎ع. + معانس " -"تهات پ‎ارتִيتִيون ִيس اصتִيوع. ونلي ونع پ‎ارتִيتִيون صان بع اصتִيوع." - -#: grub-core/commands/halt.c:40 -msgid "" -"Halts the computer. This command does not work on all firmware " -"implementations." -msgstr "" -"هالتس تهع صومپ‎وتعر. تهִيس صومماند دوعس نوت وورك ون الل Ùִيرموارع Ö´" -"يمپ‎لعمعنتاتִيونس." - -#: grub-core/commands/hashsum.c:32 -msgid "Specify hash to use." -msgstr "سپ‎عصִيÙÙŠ هاسه تو وسع." - -#: grub-core/commands/hashsum.c:32 -msgid "HASH" -msgstr "هاسه" - -#: grub-core/commands/hashsum.c:33 -msgid "Check hashes of files with hash list FILE." -msgstr "صهعصك هاسهعس ÙˆÙ Ùִيلعس وִيته هاسه لִيست Ùִيلع." - -#: grub-core/commands/hashsum.c:35 -msgid "Base directory for hash list." -msgstr "باسع دִيرعصتوري Ùور هاسه لִيست." - -#. TRANSLATORS: platform here isn't identifier. It can be translated. -#: grub-core/commands/hashsum.c:35 grub-core/commands/ls.c:150 -#: grub-core/commands/macbless.c:226 grub-core/commands/syslinuxcfg.c:51 -#: grub-core/commands/syslinuxcfg.c:54 grub-core/kern/emu/main.c:106 -#: include/grub/util/install.h:50 include/grub/util/install.h:53 -#: include/grub/util/install.h:56 include/grub/util/install.h:59 -#: util/grub-install.c:250 util/grub-install.c:252 util/grub-install.c:297 -#: util/grub-install.c:299 util/grub-mkimage.c:64 util/grub-mkimage.c:67 -#: util/grub-mknetdir.c:46 util/grub-mknetdir.c:48 util/grub-mkrescue.c:99 -#: util/grub-setup.c:82 util/grub-syslinux2cfg.c:63 util/grub-syslinux2cfg.c:65 -#: util/grub-syslinux2cfg.c:67 util/grub-syslinux2cfg.c:71 -msgid "DIR" -msgstr "دִير" - -#: grub-core/commands/hashsum.c:37 -msgid "Don't stop after first error." -msgstr "دون'ت ستوپ‎ Ø§ÙØªØ¹Ø± Ùִيرست عررور." - -#: grub-core/commands/hashsum.c:38 -msgid "Uncompress file before checksumming." -msgstr "ونصومپ‎رعسس Ùִيلع بعÙورع صهعصكسوممִينغ." - -#: grub-core/commands/hashsum.c:163 -#, c-format -msgid "%s: READ ERROR\n" -msgstr "%s: رعاد عررور\n" - -#: grub-core/commands/hashsum.c:177 -#, c-format -msgid "%s: HASH MISMATCH\n" -msgstr "%s: هاسه مִيسماتصه\n" - -#: grub-core/commands/hashsum.c:188 -#, c-format -msgid "%s: OK\n" -msgstr "%s: وك\n" - -#: grub-core/commands/hashsum.c:282 -msgid "-h HASH [-c FILE [-p PREFIX]] [FILE1 [FILE2 ...]]" -msgstr "-Ù‡ هاسه [-ص Ùִيلع [-پ‎ پ‎رعÙִيكس]] [Ùִيلع1 [Ùִيلع2 ...]]" - -#. TRANSLATORS: "hash checksum" is just to -#. be a bit more precise, you can treat it as -#. just "hash". -#: grub-core/commands/hashsum.c:287 grub-core/commands/hashsum.c:292 -#: grub-core/commands/hashsum.c:297 grub-core/commands/hashsum.c:302 -#: grub-core/commands/hashsum.c:307 grub-core/commands/hashsum.c:313 -msgid "Compute or check hash checksum." -msgstr "صومپ‎وتع ور صهعصك هاسه صهعصكسوم." - -#: grub-core/commands/hashsum.c:290 grub-core/commands/hashsum.c:295 -#: grub-core/commands/hashsum.c:300 grub-core/commands/hashsum.c:305 -#: grub-core/commands/hashsum.c:311 -msgid "[-c FILE [-p PREFIX]] [FILE1 [FILE2 ...]]" -msgstr "[-ص Ùִيلع [-پ‎ پ‎رعÙִيكس]] [Ùִيلع1 [Ùִيلع2 ...]]" - -#: grub-core/commands/hdparm.c:33 -msgid "" -"Set Advanced Power Management\n" -"(1=low, ..., 254=high, 255=off)." -msgstr "" -"سعت ادوانصعد پ‎ووعر ماناغعمعنت\n" -"(1=لوو, ..., 254=هִيغه, 255=ÙˆÙÙ)." - -#: grub-core/commands/hdparm.c:36 -msgid "Display power mode." -msgstr "دִيسپ‎لاي پ‎ووعر مودع." - -#: grub-core/commands/hdparm.c:37 -msgid "Freeze ATA security settings until reset." -msgstr "ÙØ±Ø¹Ø¹Ø²Ø¹ اتا سعصورִيتي سعتتִينغس ونتִيل رعسعت." - -#: grub-core/commands/hdparm.c:39 -msgid "Display SMART health status." -msgstr "دִيسپ‎لاي سمارت هعالته ستاتوس." - -#: grub-core/commands/hdparm.c:40 -msgid "" -"Set Automatic Acoustic Management\n" -"(0=off, 128=quiet, ..., 254=fast)." -msgstr "" -"سعت اوتوماتִيص اصووستִيص ماناغعمعنت\n" -"(0=ÙˆÙÙ, 128=قوִيعت, ..., 254=ÙØ§Ø³Øª)." - -#: grub-core/commands/hdparm.c:43 -msgid "" -"Set standby timeout\n" -"(0=off, 1=5s, 2=10s, ..., 240=20m, 241=30m, ...)." -msgstr "" -"سعت ستاندبي تִيمعووت\n" -"(0=ÙˆÙÙ, 1=5س, 2=10س, ..., 240=20Ù…, 241=30Ù…, ...)." - -#: grub-core/commands/hdparm.c:46 -msgid "Set drive to standby mode." -msgstr "سعت درִيوع تو ستاندبي مودع." - -#: grub-core/commands/hdparm.c:47 -msgid "Set drive to sleep mode." -msgstr "سعت درִيوع تو سلععپ‎ مودع." - -#: grub-core/commands/hdparm.c:48 -msgid "Print drive identity and settings." -msgstr "پ‎رִينت درִيوع ִيدعنتִيتي اند سعتتִينغس." - -#: grub-core/commands/hdparm.c:50 -msgid "Show raw contents of ATA IDENTIFY sector." -msgstr "سهوو راو صونتعنتس و٠اتا ִيدعنتִيÙÙŠ سعصتور." - -#: grub-core/commands/hdparm.c:52 -msgid "Disable/enable SMART (0/1)." -msgstr "دִيسابلع/عنابلع سمارت (0/1)." - -#: grub-core/commands/hdparm.c:53 -msgid "Do not print messages." -msgstr "دو نوت پ‎رִينت معسساغعس." - -#: grub-core/commands/hdparm.c:286 grub-core/commands/i386/rdmsr.c:68 -#: grub-core/commands/iorw.c:47 grub-core/commands/legacycfg.c:760 -#: grub-core/commands/legacycfg.c:812 grub-core/commands/macbless.c:190 -#: grub-core/commands/memrw.c:47 grub-core/commands/pgp.c:738 -#: grub-core/commands/pgp.c:792 grub-core/commands/search.c:304 -#: grub-core/commands/search_wrap.c:179 grub-core/commands/setpci.c:243 -#: grub-core/commands/sleep.c:71 grub-core/fs/zfs/zfsinfo.c:279 -#: grub-core/fs/zfs/zfsinfo.c:358 grub-core/gettext/gettext.c:492 -#: grub-core/kern/corecmd.c:65 grub-core/kern/corecmd.c:79 -#: grub-core/mmap/mmap.c:430 grub-core/net/dns.c:713 grub-core/net/dns.c:745 -#: grub-core/net/net.c:694 grub-core/net/net.c:1052 -#: grub-core/normal/context.c:194 grub-core/script/execute.c:131 -#: grub-core/term/gfxterm_background.c:136 -msgid "one argument expected" -msgstr "ونع ارغومعنت عكسپ‎عصتعد" - -#: grub-core/commands/hdparm.c:440 -msgid "[OPTIONS] DISK" -msgstr "[وپ‎تִيونس] دִيسك" - -#: grub-core/commands/hdparm.c:441 -msgid "Get/set ATA disk parameters." -msgstr "غعت/سعت اتا دִيسك پ‎ارامعتعرس." - -#: grub-core/commands/help.c:132 grub-core/lib/arg.c:109 -#: grub-core/lib/gnulib/argp-help.c:1616 -msgid "Usage:" -msgstr "وساغع:" - -#: grub-core/commands/help.c:146 -msgid "[PATTERN ...]" -msgstr "[پ‎اتتعرن ...]" - -#: grub-core/commands/help.c:147 -msgid "Show a help message." -msgstr "سهوو ا هعلپ‎ معسساغع." - -#: grub-core/commands/hexdump.c:31 -msgid "Skip offset bytes from the beginning of file." -msgstr "سكִيپ‎ ÙˆÙÙØ³Ø¹Øª بيتعس ÙØ±ÙˆÙ… تهع بعغִيننִينغ ÙˆÙ Ùִيلع." - -#: grub-core/commands/hexdump.c:33 -msgid "Read only LENGTH bytes." -msgstr "رعاد ونلي لعنغته بيتعس." - -#: grub-core/commands/hexdump.c:125 -msgid "[OPTIONS] FILE_OR_DEVICE" -msgstr "[وپ‎تִيونس] Ùִيلع_ور_دعوִيصع" - -#: grub-core/commands/hexdump.c:126 -msgid "Show raw contents of a file or memory." -msgstr "سهوو راو صونتعنتس و٠ا Ùִيلع ور معموري." - -#: grub-core/commands/i386/cmosdump.c:58 -msgid "Show raw dump of the CMOS contents." -msgstr "سهوو راو دومپ‎ و٠تهع صموس صونتعنتس." - -#: grub-core/commands/i386/cmostest.c:108 -#: grub-core/commands/i386/cmostest.c:111 -#: grub-core/commands/i386/cmostest.c:114 -msgid "BYTE:BIT" -msgstr "بيتع:بִيت" - -#: grub-core/commands/i386/cmostest.c:109 -msgid "Test bit at BYTE:BIT in CMOS." -msgstr "تعست بִيت ات بيتع:بִيت ִين صموس." - -#: grub-core/commands/i386/cmostest.c:112 -msgid "Clear bit at BYTE:BIT in CMOS." -msgstr "صلعار بִيت ات بيتع:بִيت ִين صموس." - -#. TRANSLATORS: A bit may be either set (1) or clear (0). -#: grub-core/commands/i386/cmostest.c:116 -msgid "Set bit at BYTE:BIT in CMOS." -msgstr "سعت بִيت ات بيتع:بִيت ִين صموس." - -#: grub-core/commands/i386/coreboot/cb_timestamps.c:120 -msgid "Show coreboot boot time statistics." -msgstr "سهوو صورعبووت بووت تִيمع ستاتִيستִيصس." - -#: grub-core/commands/i386/coreboot/cbls.c:137 -msgid "List coreboot tables." -msgstr "لִيست صورعبووت تابلعس." - -#. TRANSLATORS: "(default)" at the end means that this option is used if -#. no argument is specified. -#: grub-core/commands/i386/cpuid.c:36 -msgid "Check if CPU supports 64-bit (long) mode (default)." -msgstr "صهعصك ִي٠صپ‎و سوپ‎پ‎ورتس 64-بִيت (لونغ) مودع (Ø¯Ø¹ÙØ§ÙˆÙ„ت)." - -#: grub-core/commands/i386/cpuid.c:37 -msgid "Check if CPU supports Physical Address Extension." -msgstr "صهعصك ִي٠صپ‎و سوپ‎پ‎ورتس پ‎هيسִيصال اددرعسس عكستعنسִيون." - -#: grub-core/commands/i386/cpuid.c:119 -msgid "Check for CPU features." -msgstr "صهعصك Ùور صپ‎و ÙØ¹Ø§ØªÙˆØ±Ø¹Ø³." - -#. TRANSLATORS: In this file "mapping" refers to a change GRUB makes so if -#. your language doesn't have an equivalent of "mapping" you can -#. use the word like "rerouting". -#. -#: grub-core/commands/i386/pc/drivemap.c:43 -msgid "Show the current mappings." -msgstr "سهوو تهع صوررعنت ماپ‎پ‎ִينغس." - -#: grub-core/commands/i386/pc/drivemap.c:44 -msgid "Reset all mappings to the default values." -msgstr "رعسعت الل ماپ‎پ‎ִينغس تو تهع Ø¯Ø¹ÙØ§ÙˆÙ„ت والوعس." - -#: grub-core/commands/i386/pc/drivemap.c:45 -msgid "Perform both direct and reverse mappings." -msgstr "پ‎عرÙورم بوته دִيرعصت اند رعوعرسع ماپ‎پ‎ִينغس." - -#: grub-core/commands/i386/pc/drivemap.c:184 -msgid "No drives have been remapped" -msgstr "نو درִيوعس هاوع بععن رعماپ‎پ‎عد" - -#. TRANSLATORS: This is the header of mapping list. -#. On the left is how OS will see the disks and -#. on the right current GRUB vision. -#: grub-core/commands/i386/pc/drivemap.c:191 -msgid "OS disk #num ------> GRUB/BIOS device" -msgstr "وس دִيسك #نوم ------> غروب/بִيوس دعوִيصع" - -#: grub-core/commands/i386/pc/drivemap.c:413 -msgid "-l | -r | [-s] grubdev osdisk." -msgstr "-Ù„ | -ر | [-س] غروبدعو وسدִيسك." - -#: grub-core/commands/i386/pc/drivemap.c:414 -msgid "Manage the BIOS drive mappings." -msgstr "ماناغع تهع بִيوس درִيوع ماپ‎پ‎ִينغس." - -#: grub-core/commands/i386/pc/halt.c:31 -msgid "Do not use APM to halt the computer." -msgstr "دو نوت وسع اپ‎م تو هالت تهع صومپ‎وتعر." - -#: grub-core/commands/i386/pc/halt.c:119 -msgid "Halt the system, if possible using APM." -msgstr "هالت تهع سيستعم, ִي٠پ‎وسسִيبلع وسִينغ اپ‎م." - -#: grub-core/commands/i386/pc/lsapm.c:75 -msgid "no APM found" -msgstr "نو اپ‎م Ùووند" - -#: grub-core/commands/i386/pc/lsapm.c:77 -#, c-format -msgid "" -"Version %u.%u\n" -"32-bit CS = 0x%x, len = 0x%x, offset = 0x%x\n" -"16-bit CS = 0x%x, len = 0x%x\n" -"DS = 0x%x, len = 0x%x\n" -msgstr "" -"وعرسִيون %u.%u\n" -"32-بִيت صس = 0كس%x, لعن = 0كس%x, ÙˆÙÙØ³Ø¹Øª = 0كس%x\n" -"16-بִيت صس = 0كس%x, لعن = 0كس%x\n" -"دس = 0كس%x, لعن = 0كس%x\n" - -#: grub-core/commands/i386/pc/lsapm.c:86 -msgid "16-bit protected interface supported\n" -msgstr "16-بִيت پ‎روتعصتعد Ö´ÙŠÙ†ØªØ¹Ø±ÙØ§ØµØ¹ سوپ‎پ‎ورتعد\n" - -#: grub-core/commands/i386/pc/lsapm.c:87 -msgid "16-bit protected interface unsupported\n" -msgstr "16-بִيت پ‎روتعصتعد Ö´ÙŠÙ†ØªØ¹Ø±ÙØ§ØµØ¹ ونسوپ‎پ‎ورتعد\n" - -#: grub-core/commands/i386/pc/lsapm.c:89 -msgid "32-bit protected interface supported\n" -msgstr "32-بִيت پ‎روتعصتعد Ö´ÙŠÙ†ØªØ¹Ø±ÙØ§ØµØ¹ سوپ‎پ‎ورتعد\n" - -#: grub-core/commands/i386/pc/lsapm.c:90 -msgid "32-bit protected interface unsupported\n" -msgstr "32-بִيت پ‎روتعصتعد Ö´ÙŠÙ†ØªØ¹Ø±ÙØ§ØµØ¹ ونسوپ‎پ‎ورتعد\n" - -#: grub-core/commands/i386/pc/lsapm.c:92 -msgid "CPU Idle slows down processor\n" -msgstr "صپ‎و ִيدلع سلووس دوون پ‎روصعسسور\n" - -#: grub-core/commands/i386/pc/lsapm.c:93 -msgid "CPU Idle doesn't slow down processor\n" -msgstr "صپ‎و ִيدلع دوعسن'ت سلوو دوون پ‎روصعسسور\n" - -#: grub-core/commands/i386/pc/lsapm.c:95 -msgid "APM disabled\n" -msgstr "اپ‎م دִيسابلعد\n" - -#: grub-core/commands/i386/pc/lsapm.c:95 -msgid "APM enabled\n" -msgstr "اپ‎م عنابلعد\n" - -#: grub-core/commands/i386/pc/lsapm.c:97 -msgid "APM disengaged\n" -msgstr "اپ‎م دִيسعنغاغعد\n" - -#: grub-core/commands/i386/pc/lsapm.c:97 -msgid "APM engaged\n" -msgstr "اپ‎م عنغاغعد\n" - -#: grub-core/commands/i386/pc/lsapm.c:107 -msgid "Show APM information." -msgstr "سهوو اپ‎م ִينÙورماتִيون." - -#. TRANSLATORS: It's musical notes, not the notes -#. you take. Play command expects arguments which can -#. be either a filename or tempo+notes. -#. This error happens if none is specified. -#: grub-core/commands/i386/pc/play.c:88 -msgid "filename or tempo and notes expected" -msgstr "Ùִيلعنامع ور تعمپ‎و اند نوتعس عكسپ‎عصتعد" - -#: grub-core/commands/i386/pc/play.c:113 grub-core/commands/i386/pc/play.c:144 -#, c-format -msgid "Invalid tempo in %s" -msgstr "ִينوالִيد تعمپ‎و ִين %s" - -#: grub-core/commands/i386/pc/play.c:151 grub-core/commands/macbless.c:172 -#: grub-core/fs/archelp.c:260 grub-core/fs/bfs.c:621 grub-core/fs/bfs.c:704 -#: grub-core/fs/btrfs.c:1726 grub-core/fs/btrfs.c:1755 -#: grub-core/fs/btrfs.c:1799 grub-core/fs/btrfs.c:1882 -#: grub-core/fs/btrfs.c:1906 grub-core/fs/fshelp.c:257 grub-core/fs/jfs.c:696 -#: grub-core/fs/minix.c:426 grub-core/fs/ufs.c:544 grub-core/fs/zfs/zfs.c:2083 -#: grub-core/fs/zfs/zfs.c:2095 grub-core/fs/zfs/zfs.c:2301 -#: grub-core/net/http.c:120 -#, c-format -msgid "file `%s' not found" -msgstr "Ùִيلع `%s' نوت Ùووند" - -#: grub-core/commands/i386/pc/play.c:162 grub-core/commands/i386/pc/play.c:171 -#: grub-core/kern/misc.c:419 grub-core/script/execute.c:138 -#: grub-core/script/execute.c:244 -msgid "unrecognized number" -msgstr "ونرعصوغنִيزعد نومبعر" - -#: grub-core/commands/i386/pc/play.c:190 -msgid "FILE | TEMPO [PITCH1 DURATION1] [PITCH2 DURATION2] ... " -msgstr "Ùִيلع | تعمپ‎و [پ‎ִيتصه1 دوراتִيون1] [پ‎ִيتصه2 دوراتִيون2] ... " - -#: grub-core/commands/i386/pc/play.c:191 -msgid "Play a tune." -msgstr "پ‎لاي ا تونع." - -#: grub-core/commands/i386/pc/sendkey.c:39 -msgid "set numlock mode" -msgstr "سعت نوملوصك مودع" - -#: grub-core/commands/i386/pc/sendkey.c:40 -msgid "set capslock mode" -msgstr "سعت صاپ‎سلوصك مودع" - -#: grub-core/commands/i386/pc/sendkey.c:41 -msgid "set scrolllock mode" -msgstr "سعت سصرولللوصك مودع" - -#: grub-core/commands/i386/pc/sendkey.c:42 -msgid "set insert mode" -msgstr "سعت ִينسعرت مودع" - -#: grub-core/commands/i386/pc/sendkey.c:43 -msgid "set pause mode" -msgstr "سعت پ‎اوسع مودع" - -#: grub-core/commands/i386/pc/sendkey.c:44 -msgid "press left shift" -msgstr "پ‎رعسس Ù„Ø¹ÙØª Ø³Ù‡Ö´ÙŠÙØª" - -#: grub-core/commands/i386/pc/sendkey.c:45 -msgid "press right shift" -msgstr "پ‎رعسس رִيغهت Ø³Ù‡Ö´ÙŠÙØª" - -#: grub-core/commands/i386/pc/sendkey.c:46 -msgid "press SysRq" -msgstr "پ‎رعسس سيسرق" - -#: grub-core/commands/i386/pc/sendkey.c:47 -msgid "press NumLock key" -msgstr "پ‎رعسس نوملوصك كعي" - -#: grub-core/commands/i386/pc/sendkey.c:48 -msgid "press CapsLock key" -msgstr "پ‎رعسس صاپ‎سلوصك كعي" - -#: grub-core/commands/i386/pc/sendkey.c:49 -msgid "press ScrollLock key" -msgstr "پ‎رعسس سصرولللوصك كعي" - -#: grub-core/commands/i386/pc/sendkey.c:50 -msgid "press Insert key" -msgstr "پ‎رعسس ִينسعرت كعي" - -#: grub-core/commands/i386/pc/sendkey.c:51 -msgid "press left alt" -msgstr "پ‎رعسس Ù„Ø¹ÙØª الت" - -#: grub-core/commands/i386/pc/sendkey.c:52 -msgid "press right alt" -msgstr "پ‎رعسس رִيغهت الت" - -#: grub-core/commands/i386/pc/sendkey.c:53 -msgid "press left ctrl" -msgstr "پ‎رعسس Ù„Ø¹ÙØª صترل" - -#: grub-core/commands/i386/pc/sendkey.c:54 -msgid "press right ctrl" -msgstr "پ‎رعسس رִيغهت صترل" - -#: grub-core/commands/i386/pc/sendkey.c:55 -msgid "don't update LED state" -msgstr "دون'ت وپ‎داتع لعد ستاتع" - -#: grub-core/commands/i386/pc/sendkey.c:372 -msgid "[KEYSTROKE1] [KEYSTROKE2] ..." -msgstr "[كعيستروكع1] [كعيستروكع2] ..." - -#. TRANSLATORS: It can emulate multiple -#. keypresses. -#: grub-core/commands/i386/pc/sendkey.c:375 -msgid "Emulate a keystroke sequence" -msgstr "عمولاتع ا كعيستروكع سعقوعنصع" - -#: grub-core/commands/i386/rdmsr.c:37 grub-core/commands/iorw.c:34 -#: grub-core/commands/memrw.c:33 grub-core/commands/setpci.c:73 -msgid "Save read value into variable VARNAME." -msgstr "ساوع رعاد والوع ִينتو وارִيابلع وارنامع." - -#: grub-core/commands/i386/rdmsr.c:38 grub-core/commands/iorw.c:35 -#: grub-core/commands/memrw.c:34 grub-core/commands/probe.c:40 -#: grub-core/commands/search_wrap.c:40 grub-core/commands/setpci.c:74 -#: grub-core/commands/tr.c:32 -msgid "VARNAME" -msgstr "وارنامع" - -#: grub-core/commands/i386/rdmsr.c:55 grub-core/commands/i386/rdmsr.c:60 -#: grub-core/commands/i386/rdmsr.c:65 grub-core/commands/i386/wrmsr.c:47 -#: grub-core/commands/i386/wrmsr.c:52 grub-core/commands/i386/wrmsr.c:57 -msgid "unsupported instruction" -msgstr "ونسوپ‎پ‎ورتعد ִينستروصتִيون" - -#: grub-core/commands/i386/rdmsr.c:77 grub-core/commands/i386/wrmsr.c:69 -#: grub-core/commands/i386/wrmsr.c:77 grub-core/net/dns.c:727 -msgid "invalid argument" -msgstr "ִينوالִيد ارغومعنت" - -#: grub-core/commands/i386/rdmsr.c:94 grub-core/commands/memrw.c:125 -#: grub-core/commands/memrw.c:129 grub-core/commands/memrw.c:133 -msgid "ADDR" -msgstr "اددر" - -#: grub-core/commands/i386/rdmsr.c:95 -msgid "Read a CPU model specific register." -msgstr "رعاد ا صپ‎و مودعل سپ‎عصִيÙִيص رعغִيستعر." - -#: grub-core/commands/i386/wrmsr.c:86 -msgid "ADDR VALUE" -msgstr "اددر والوع" - -#: grub-core/commands/i386/wrmsr.c:87 -msgid "Write a value to a CPU model specific register." -msgstr "ورִيتع ا والوع تو ا صپ‎و مودعل سپ‎عصִيÙִيص رعغִيستعر." - -#: grub-core/commands/ieee1275/suspend.c:34 -msgid "Run `go' to resume GRUB." -msgstr "رون `غو' تو رعسومع غروب." - -#: grub-core/commands/ieee1275/suspend.c:45 -msgid "Return to IEEE1275 prompt." -msgstr "رعتورن تو ִيععع1275 پ‎رومپ‎ت." - -#: grub-core/commands/iorw.c:123 grub-core/commands/iorw.c:127 -#: grub-core/commands/iorw.c:131 grub-core/gdb/gdb.c:79 -msgid "PORT" -msgstr "پ‎ورت" - -#: grub-core/commands/iorw.c:123 -msgid "Read 8-bit value from PORT." -msgstr "رعاد 8-بִيت والوع ÙØ±ÙˆÙ… پ‎ورت." - -#: grub-core/commands/iorw.c:127 -msgid "Read 16-bit value from PORT." -msgstr "رعاد 16-بִيت والوع ÙØ±ÙˆÙ… پ‎ورت." - -#: grub-core/commands/iorw.c:131 -msgid "Read 32-bit value from PORT." -msgstr "رعاد 32-بִيت والوع ÙØ±ÙˆÙ… پ‎ورت." - -#: grub-core/commands/iorw.c:135 grub-core/commands/iorw.c:139 -msgid "PORT VALUE [MASK]" -msgstr "پ‎ورت والوع [ماسك]" - -#: grub-core/commands/iorw.c:136 -msgid "Write 8-bit VALUE to PORT." -msgstr "ورִيتع 8-بִيت والوع تو پ‎ورت." - -#: grub-core/commands/iorw.c:140 -msgid "Write 16-bit VALUE to PORT." -msgstr "ورִيتع 16-بִيت والوع تو پ‎ورت." - -#: grub-core/commands/iorw.c:143 grub-core/commands/memrw.c:137 -#: grub-core/commands/memrw.c:141 grub-core/commands/memrw.c:145 -msgid "ADDR VALUE [MASK]" -msgstr "اددر والوع [ماسك]" - -#: grub-core/commands/iorw.c:144 -msgid "Write 32-bit VALUE to PORT." -msgstr "ورִيتع 32-بִيت والوع تو پ‎ورت." - -#: grub-core/commands/keylayouts.c:215 grub-core/commands/loadenv.c:61 -#: grub-core/commands/nativedisk.c:189 grub-core/efiemu/main.c:235 -#: grub-core/font/font.c:428 grub-core/gfxmenu/gfxmenu.c:63 -#: grub-core/kern/device.c:42 grub-core/kern/dl.c:740 -#, c-format -msgid "variable `%s' isn't set" -msgstr "وارִيابلع `%s' ִيسن'ت سعت" - -#: grub-core/commands/keylayouts.c:301 -msgid "Load a keyboard layout." -msgstr "لواد ا كعيبوارد لايووت." - -#. TRANSLATORS: "Check" in a sense that if this key is pressed then -#. "true" is returned, otherwise "false". -#: grub-core/commands/keystatus.c:32 -msgid "Check Shift key." -msgstr "صهعصك Ø³Ù‡Ö´ÙŠÙØª كعي." - -#: grub-core/commands/keystatus.c:33 -msgid "Check Control key." -msgstr "صهعصك صونترول كعي." - -#: grub-core/commands/keystatus.c:34 -msgid "Check Alt key." -msgstr "صهعصك الت كعي." - -#. TRANSLATORS: there are 3 modifiers. -#: grub-core/commands/keystatus.c:106 -msgid "Check key modifier status." -msgstr "صهعصك كعي مودִيÙִيعر ستاتوس." - -#: grub-core/commands/legacycfg.c:512 grub-core/commands/legacycfg.c:526 -#: grub-core/commands/legacycfg.c:546 grub-core/commands/legacycfg.c:559 -#: grub-core/commands/time.c:43 grub-core/script/function.c:109 -#: util/grub-file.c:100 util/grub-fstest.c:57 util/grub-mount.c:69 -#, c-format -msgid "can't find command `%s'" -msgstr "صان'ت Ùִيند صومماند `%s'" - -#: grub-core/commands/legacycfg.c:813 grub-core/normal/auth.c:225 -#: util/grub-mkpasswd-pbkdf2.c:139 -msgid "Enter password: " -msgstr "عنتعر پ‎اسسوورد: " - -#. TRANSLATORS: "legacy config" means -#. "config as used by grub-legacy". -#: grub-core/commands/legacycfg.c:837 -msgid "Parse legacy config in same context" -msgstr "پ‎ارسع لعغاصي صونÙִيغ ִين سامع صونتعكست" - -#: grub-core/commands/legacycfg.c:842 -msgid "Parse legacy config in new context" -msgstr "پ‎ارسع لعغاصي صونÙִيغ ִين نعو صونتعكست" - -#: grub-core/commands/legacycfg.c:847 -msgid "Parse legacy config in same context taking only menu entries" -msgstr "پ‎ارسع لعغاصي صونÙִيغ ִين سامع صونتعكست تاكִينغ ونلي معنو عنترִيعس" - -#: grub-core/commands/legacycfg.c:852 -msgid "Parse legacy config in new context taking only menu entries" -msgstr "پ‎ارسع لعغاصي صونÙִيغ ִين نعو صونتعكست تاكִينغ ونلي معنو عنترִيعس" - -#: grub-core/commands/legacycfg.c:856 -msgid "[--no-mem-option] [--type=TYPE] FILE [ARG ...]" -msgstr "[--نو-معم-وپ‎تִيون] [--تيپ‎ع=تيپ‎ع] Ùִيلع [ارغ ...]" - -#: grub-core/commands/legacycfg.c:857 -msgid "Simulate grub-legacy `kernel' command" -msgstr "سִيمولاتع غروب-لعغاصي `كعرنعل' صومماند" - -#: grub-core/commands/legacycfg.c:861 grub-core/commands/legacycfg.c:865 -msgid "FILE [ARG ...]" -msgstr "Ùִيلع [ارغ ...]" - -#: grub-core/commands/legacycfg.c:862 -msgid "Simulate grub-legacy `initrd' command" -msgstr "سִيمولاتع غروب-لعغاصي `ִينִيترد' صومماند" - -#: grub-core/commands/legacycfg.c:866 -msgid "Simulate grub-legacy `modulenounzip' command" -msgstr "سִيمولاتع غروب-لعغاصي `مودولعنوونزִيپ‎' صومماند" - -#: grub-core/commands/legacycfg.c:870 grub-core/commands/legacycfg.c:875 -msgid "[--md5] PASSWD [FILE]" -msgstr "[--مد5] پ‎اسسود [Ùִيلع]" - -#: grub-core/commands/legacycfg.c:871 -msgid "Simulate grub-legacy `password' command" -msgstr "سִيمولاتع غروب-لعغاصي `پ‎اسسوورد' صومماند" - -#: grub-core/commands/legacycfg.c:876 -msgid "Simulate grub-legacy `password' command in menu entry mode" -msgstr "سִيمولاتع غروب-لعغاصي `پ‎اسسوورد' صومماند ִين معنو عنتري مودع" - -#. TRANSLATORS: This option is used to override default filename -#. for loading and storing environment. -#: grub-core/commands/loadenv.c:37 -msgid "Specify filename." -msgstr "سپ‎عصִيÙÙŠ Ùִيلعنامع." - -#: grub-core/commands/loadenv.c:39 -msgid "Skip signature-checking of the environment file." -msgstr "سكִيپ‎ سִيغناتورع-صهعصكִينغ و٠تهع عنوִيرونمعنت Ùִيلع." - -#: grub-core/commands/loadenv.c:451 -msgid "[-f FILE] [-s|--skip-sig] [variable_name_to_whitelist] [...]" -msgstr "[-Ù Ùִيلع] [-س|--سكִيپ‎-سִيغ] [وارִيابلع_نامع_تو_وهִيتعلִيست] [...]" - -#: grub-core/commands/loadenv.c:452 -msgid "Load variables from environment block file." -msgstr "لواد وارִيابلعس ÙØ±ÙˆÙ… عنوִيرونمعنت بلوصك Ùִيلع." - -#: grub-core/commands/loadenv.c:455 -msgid "[-f FILE]" -msgstr "[-Ù Ùִيلع]" - -#: grub-core/commands/loadenv.c:456 -msgid "List variables from environment block file." -msgstr "لִيست وارִيابلعس ÙØ±ÙˆÙ… عنوִيرونمعنت بلوصك Ùִيلع." - -#: grub-core/commands/loadenv.c:460 -msgid "[-f FILE] variable_name [...]" -msgstr "[-Ù Ùִيلع] وارִيابلع_نامع [...]" - -#: grub-core/commands/loadenv.c:461 -msgid "Save variables to environment block file." -msgstr "ساوع وارִيابلعس تو عنوִيرونمعنت بلوصك Ùִيلع." - -#: grub-core/commands/ls.c:40 -msgid "Show a long list with more detailed information." -msgstr "سهوو ا لونغ لִيست وִيته مورع دعتاִيلعد ִينÙورماتִيون." - -#: grub-core/commands/ls.c:41 -msgid "Print sizes in a human readable format." -msgstr "پ‎رִينت سִيزعس ִين ا هومان رعادابلع Ùورمات." - -#: grub-core/commands/ls.c:42 -msgid "List all files." -msgstr "لִيست الل Ùִيلعس." - -#: grub-core/commands/ls.c:73 -msgid "Network protocols:" -msgstr "نعتوورك پ‎روتوصولس:" - -#: grub-core/commands/ls.c:295 -msgid "[-l|-h|-a] [FILE ...]" -msgstr "[-Ù„|-Ù‡|-ا] [Ùִيلع ...]" - -#: grub-core/commands/ls.c:296 -msgid "List devices and files." -msgstr "لִيست دعوִيصعس اند Ùִيلعس." - -#: grub-core/commands/lsacpi.c:255 -msgid "Show version 1 tables only." -msgstr "سهوو وعرسִيون 1 تابلعس ونلي." - -#: grub-core/commands/lsacpi.c:256 -msgid "Show version 2 and version 3 tables only." -msgstr "سهوو وعرسִيون 2 اند وعرسִيون 3 تابلعس ونلي." - -#: grub-core/commands/lsacpi.c:306 -msgid "Show ACPI information." -msgstr "سهوو اصپ‎ִي ִينÙورماتִيون." - -#: grub-core/commands/lsmmap.c:31 -msgid "available RAM" -msgstr "اواִيلابلع رام" - -#: grub-core/commands/lsmmap.c:32 -msgid "reserved RAM" -msgstr "رعسعروعد رام" - -#. TRANSLATORS: this refers to memory where ACPI tables are stored -#. and which can be used by OS once it loads ACPI tables. -#: grub-core/commands/lsmmap.c:35 -msgid "ACPI reclaimable RAM" -msgstr "اصپ‎ִي رعصلاִيمابلع رام" - -#. TRANSLATORS: this refers to memory which ACPI-compliant OS -#. is required to save accross hibernations. -#: grub-core/commands/lsmmap.c:38 -msgid "ACPI non-volatile storage RAM" -msgstr "اصپ‎ִي نون-وولاتִيلع ستوراغع رام" - -#: grub-core/commands/lsmmap.c:39 -msgid "faulty RAM (BadRAM)" -msgstr "ÙØ§ÙˆÙ„تي رام (بادرام)" - -#: grub-core/commands/lsmmap.c:40 -msgid "persistent RAM" -msgstr "پ‎عرسִيستعنت رام" - -#: grub-core/commands/lsmmap.c:41 -msgid "persistent RAM (legacy)" -msgstr "پ‎عرسִيستعنت رام (لعغاصي)" - -#: grub-core/commands/lsmmap.c:42 -msgid "RAM holding coreboot tables" -msgstr "رام هولدִينغ صورعبووت تابلعس" - -#: grub-core/commands/lsmmap.c:43 -msgid "RAM holding firmware code" -msgstr "رام هولدִينغ Ùִيرموارع صودع" - -#: grub-core/commands/lsmmap.c:52 -#, c-format -msgid "base_addr = 0x%llx, length = 0x%llx, %s\n" -msgstr "باسع_اددر = 0كس%llx, لعنغته = 0كس%llx, %s\n" - -#: grub-core/commands/lsmmap.c:55 -#, c-format -msgid "base_addr = 0x%llx, length = 0x%llx, type = 0x%x\n" -msgstr "باسع_اددر = 0كس%llx, لعنغته = 0كس%llx, تيپ‎ع = 0كس%x\n" - -#: grub-core/commands/lsmmap.c:79 -msgid "List memory map provided by firmware." -msgstr "لִيست معموري ماپ‎ پ‎رووִيدعد بي Ùִيرموارع." - -#: grub-core/commands/lspci.c:232 -msgid "List PCI devices." -msgstr "لִيست پ‎صִي دعوִيصعس." - -#: grub-core/commands/macbless.c:224 -msgid "Bless FILE of HFS or HFS+ partition for intel macs." -msgstr "بلعسس Ùִيلع ÙˆÙ Ù‡ÙØ³ ور Ù‡ÙØ³+ پ‎ارتִيتִيون Ùور ִينتعل ماصس." - -#: grub-core/commands/macbless.c:228 -msgid "Bless DIR of HFS or HFS+ partition for PPC macs." -msgstr "بلعسس دִير ÙˆÙ Ù‡ÙØ³ ور Ù‡ÙØ³+ پ‎ارتִيتִيون Ùور پ‎پ‎ص ماصس." - -#: grub-core/commands/memrw.c:125 -msgid "Read 8-bit value from ADDR." -msgstr "رعاد 8-بִيت والوع ÙØ±ÙˆÙ… اددر." - -#: grub-core/commands/memrw.c:129 -msgid "Read 16-bit value from ADDR." -msgstr "رعاد 16-بִيت والوع ÙØ±ÙˆÙ… اددر." - -#: grub-core/commands/memrw.c:133 -msgid "Read 32-bit value from ADDR." -msgstr "رعاد 32-بִيت والوع ÙØ±ÙˆÙ… اددر." - -#: grub-core/commands/memrw.c:138 -msgid "Write 8-bit VALUE to ADDR." -msgstr "ورִيتع 8-بִيت والوع تو اددر." - -#: grub-core/commands/memrw.c:142 -msgid "Write 16-bit VALUE to ADDR." -msgstr "ورִيتع 16-بִيت والوع تو اددر." - -#: grub-core/commands/memrw.c:146 -msgid "Write 32-bit VALUE to ADDR." -msgstr "ورִيتع 32-بִيت والوع تو اددر." - -#: grub-core/commands/menuentry.c:31 -msgid "Menu entry type." -msgstr "معنو عنتري تيپ‎ع." - -#: grub-core/commands/menuentry.c:31 grub-core/commands/menuentry.c:38 -#: grub-core/commands/menuentry.c:39 grub-core/gettext/gettext.c:520 -#: util/grub-fstest.c:520 util/grub-install.c:291 util/grub-install.c:304 -#: util/grub-mknetdir.c:51 util/grub-mkrescue.c:109 util/grub-mkrescue.c:110 -#: util/grub-mount.c:453 util/grub-render-label.c:65 -msgid "STRING" -msgstr "سترִينغ" - -#: grub-core/commands/menuentry.c:33 -msgid "List of users allowed to boot this entry." -msgstr "لִيست و٠وسعرس اللووعد تو بووت تهִيس عنتري." - -#: grub-core/commands/menuentry.c:33 -msgid "USERNAME[,USERNAME]" -msgstr "وسعرنامع[,وسعرنامع]" - -#: grub-core/commands/menuentry.c:36 -msgid "Keyboard key to quickly boot this entry." -msgstr "كعيبوارد كعي تو قوִيصكلي بووت تهִيس عنتري." - -#: grub-core/commands/menuentry.c:36 -msgid "KEYBOARD_KEY" -msgstr "كعيبوارد_كعي" - -#: grub-core/commands/menuentry.c:38 -msgid "Use STRING as menu entry body." -msgstr "وسع سترִينغ اس معنو عنتري بودي." - -#: grub-core/commands/menuentry.c:39 -msgid "Menu entry identifier." -msgstr "معنو عنتري ִيدعنتִيÙִيعر." - -#. TRANSLATORS: menu entry can either be bootable by anyone or only by -#. handful of users. By default when security is active only superusers can -#. boot a given menu entry. With --unrestricted (this option) -#. anyone can boot it. -#: grub-core/commands/menuentry.c:44 -msgid "This entry can be booted by any user." -msgstr "تهִيس عنتري صان بع بووتعد بي اني وسعر." - -#: grub-core/commands/menuentry.c:323 grub-core/commands/menuentry.c:328 -#: grub-core/tests/test_blockarg.c:46 -msgid "BLOCK" -msgstr "بلوصك" - -#: grub-core/commands/menuentry.c:323 -msgid "Define a menu entry." -msgstr "دعÙִينع ا معنو عنتري." - -#: grub-core/commands/menuentry.c:328 -msgid "Define a submenu." -msgstr "دعÙִينع ا سوبمعنو." - -#. TRANSLATORS: this is module list header. Name -#. is module name, Ref Count is a reference counter -#. (how many modules or open descriptors use it). -#. Dependencies are the other modules it uses. -#. -#: grub-core/commands/minicmd.c:162 -msgid "Name\tRef Count\tDependencies\n" -msgstr "نامع\tرع٠صوونت\tدعپ‎عندعنصִيعس\n" - -#: grub-core/commands/minicmd.c:201 -msgid "Show this message." -msgstr "سهوو تهִيس معسساغع." - -#: grub-core/commands/minicmd.c:204 -msgid "ADDR [SIZE]" -msgstr "اددر [سִيزع]" - -#: grub-core/commands/minicmd.c:204 -msgid "Show memory contents." -msgstr "سهوو معموري صونتعنتس." - -#: grub-core/commands/minicmd.c:207 grub-core/kern/corecmd.c:188 -#: util/grub-install.c:275 -msgid "MODULE" -msgstr "مودولع" - -#: grub-core/commands/minicmd.c:207 -msgid "Remove a module." -msgstr "رعمووع ا مودولع." - -#: grub-core/commands/minicmd.c:210 -msgid "Show loaded modules." -msgstr "سهوو لوادعد مودولعس." - -#: grub-core/commands/minicmd.c:213 -msgid "Exit from GRUB." -msgstr "عكسִيت ÙØ±ÙˆÙ… غروب." - -#: grub-core/commands/mips/loongson/lsspd.c:42 -msgid "No CS5536 found" -msgstr "نو صس5536 Ùووند" - -#: grub-core/commands/mips/loongson/lsspd.c:45 -#, c-format -msgid "CS5536 at %d:%d.%d\n" -msgstr "صس5536 ات %d:%d.%d\n" - -#. TRANSLATORS: System management bus is often used to access components like -#. RAM (info only, not data) or batteries. I/O space is where in memory -#. its ports are. -#: grub-core/commands/mips/loongson/lsspd.c:55 -#, c-format -msgid "System management bus controller I/O space is at 0x%x\n" -msgstr "سيستعم ماناغعمعنت بوس صونتروللعر Ö´ÙŠ/Ùˆ سپ‎اصع ִيس ات 0كس%x\n" - -#. TRANSLATORS: it's shown in a report in a way -#. like number 1: ... number 2: ... -#. -#: grub-core/commands/mips/loongson/lsspd.c:66 -#, c-format -msgid "RAM slot number %d\n" -msgstr "رام سلوت نومبعر %d\n" - -#: grub-core/commands/mips/loongson/lsspd.c:73 -#, c-format -msgid "Written SPD bytes: %d B.\n" -msgstr "ورִيتتعن سپ‎د بيتعس: %d ب.\n" - -#: grub-core/commands/mips/loongson/lsspd.c:74 -#, c-format -msgid "Total flash size: %d B.\n" -msgstr "توتال Ùلاسه سִيزع: %d ب.\n" - -#: grub-core/commands/mips/loongson/lsspd.c:79 -msgid "Memory type: DDR2." -msgstr "معموري تيپ‎ع: ددر2." - -#: grub-core/commands/mips/loongson/lsspd.c:83 -#, c-format -msgid "Part no: %s.\n" -msgstr "پ‎ارت نو: %s.\n" - -#: grub-core/commands/mips/loongson/lsspd.c:86 -msgid "Memory type: Unknown." -msgstr "معموري تيپ‎ع: ونكنوون." - -#: grub-core/commands/mips/loongson/lsspd.c:97 -msgid "Print Memory information." -msgstr "پ‎رִينت معموري ִينÙورماتִيون." - -#: grub-core/commands/nativedisk.c:118 grub-core/commands/probe.c:118 -#: grub-core/commands/probe.c:124 util/grub-probe.c:450 -#, c-format -msgid "%s does not support UUIDs" -msgstr "%s دوعس نوت سوپ‎پ‎ورت ووִيدس" - -#: grub-core/commands/nativedisk.c:325 -msgid "[MODULE1 MODULE2 ...]" -msgstr "[مودولع1 مودولع2 ...]" - -#: grub-core/commands/nativedisk.c:326 -msgid "" -"Switch to native disk drivers. If no modules are specified default set (pata," -"ahci,usbms,ohci,uhci,ehci) is used" -msgstr "" -"سوִيتصه تو ناتִيوع دִيسك درִيوعرس. ִي٠نو مودولعس ارع سپ‎عصִيÙִيعد Ø¯Ø¹ÙØ§ÙˆÙ„ت سعت (پ‎اتا," -"اهصִي,وسبمس,وهصִي,وهصִي,عهصִي) ִيس وسعد" - -#: grub-core/commands/parttool.c:40 -msgid "" -"Perform COMMANDS on partition.\n" -"Use `parttool PARTITION help' for the list of available commands." -msgstr "" -"پ‎عرÙورم صومماندس ون پ‎ارتִيتִيون.\n" -"وسع `پ‎ارتتوول پ‎ارتִيتִيون هعلپ‎' Ùور تهع لִيست و٠اواִيلابلع صومماندس." - -#: grub-core/commands/parttool.c:123 -msgid "=VAL" -msgstr "=وال" - -#: grub-core/commands/parttool.c:136 -#, c-format -msgid "Sorry, no parttool is available for %s\n" -msgstr "سورري, نو پ‎ارتتوول ִيس اواִيلابلع Ùور %s\n" - -#: grub-core/commands/parttool.c:288 grub-core/lib/arg.c:285 -#: grub-core/lib/arg.c:351 -#, c-format -msgid "unknown argument `%s'" -msgstr "ونكنوون ارغومعنت `%s'" - -#: grub-core/commands/parttool.c:344 -msgid "PARTITION COMMANDS" -msgstr "پ‎ارتִيتִيون صومماندس" - -#: grub-core/commands/password.c:85 -msgid "USER PASSWORD" -msgstr "وسعر پ‎اسسوورد" - -#: grub-core/commands/password.c:86 -msgid "Set user password (plaintext). Unrecommended and insecure." -msgstr "سعت وسعر پ‎اسسوورد (پ‎لاִينتعكست). ونرعصوممعندعد اند ִينسعصورع." - -#. TRANSLATORS: it means that the string which -#. was supposed to be a password hash doesn't -#. have a correct format, not to password -#. mismatch. -#: grub-core/commands/password_pbkdf2.c:98 -#: grub-core/commands/password_pbkdf2.c:115 -#: grub-core/commands/password_pbkdf2.c:123 -#: grub-core/commands/password_pbkdf2.c:150 -#: grub-core/commands/password_pbkdf2.c:179 -msgid "invalid PBKDF2 password" -msgstr "ִينوالִيد پ‎بكدÙ2 پ‎اسسوورد" - -#: grub-core/commands/password_pbkdf2.c:202 -msgid "USER PBKDF2_PASSWORD" -msgstr "وسعر پ‎بكدÙ2_پ‎اسسوورد" - -#: grub-core/commands/password_pbkdf2.c:203 -msgid "Set user password (PBKDF2). " -msgstr "سعت وسعر پ‎اسسوورد (پ‎بكدÙ2). " - -#: grub-core/commands/pcidump.c:39 grub-core/commands/setpci.c:69 -msgid "Select device by vendor and device IDs." -msgstr "سعلعصت دعوִيصع بي وعندور اند دعوִيصع ִيدس." - -#: grub-core/commands/pcidump.c:40 grub-core/commands/setpci.c:70 -msgid "[vendor]:[device]" -msgstr "[وعندور]:[دعوִيصع]" - -#: grub-core/commands/pcidump.c:41 grub-core/commands/setpci.c:71 -msgid "Select device by its position on the bus." -msgstr "سعلعصت دعوִيصع بي ִيتس پ‎وسִيتִيون ون تهع بوس." - -#: grub-core/commands/pcidump.c:42 grub-core/commands/setpci.c:72 -msgid "[bus]:[slot][.func]" -msgstr "[بوس]:[سلوت][.Ùونص]" - -#: grub-core/commands/pcidump.c:109 grub-core/commands/pcidump.c:138 -#: grub-core/commands/setpci.c:183 grub-core/commands/setpci.c:214 -#: grub-core/fs/zfs/zfs.c:3794 grub-core/kern/emu/hostdisk.c:458 -#: grub-core/kern/emu/hostdisk.c:473 grub-core/kern/file.c:44 -#, c-format -msgid "missing `%c' symbol" -msgstr "مִيسسִينغ `%c' سيمبول" - -#: grub-core/commands/pcidump.c:168 -msgid "[-s POSITION] [-d DEVICE]" -msgstr "[-س پ‎وسִيتִيون] [-د دعوִيصع]" - -#: grub-core/commands/pcidump.c:169 -msgid "Show raw dump of the PCI configuration space." -msgstr "سهوو راو دومپ‎ و٠تهع پ‎صִي صونÙִيغوراتִيون سپ‎اصع." - -#: grub-core/commands/pgp.c:45 -msgid "Skip signature-checking of the public key file." -msgstr "سكִيپ‎ سִيغناتورع-صهعصكִينغ و٠تهع پ‎وبلִيص كعي Ùִيلع." - -#. TRANSLATORS: it's about GNUPG signatures. -#: grub-core/commands/pgp.c:71 grub-core/commands/pgp.c:81 -#: grub-core/commands/pgp.c:86 grub-core/commands/pgp.c:96 -#: grub-core/commands/pgp.c:103 grub-core/commands/pgp.c:107 -#: grub-core/commands/pgp.c:114 grub-core/commands/pgp.c:119 -#: grub-core/commands/pgp.c:124 grub-core/commands/pgp.c:128 -#: grub-core/commands/pgp.c:268 grub-core/commands/pgp.c:276 -#: grub-core/commands/pgp.c:281 grub-core/commands/pgp.c:289 -#: grub-core/commands/pgp.c:320 grub-core/commands/pgp.c:327 -#: grub-core/commands/pgp.c:332 grub-core/commands/pgp.c:342 -#: grub-core/commands/pgp.c:468 grub-core/commands/pgp.c:471 -#: grub-core/commands/pgp.c:474 grub-core/commands/pgp.c:477 -#: grub-core/commands/pgp.c:484 grub-core/commands/pgp.c:490 -#: grub-core/commands/pgp.c:665 -msgid "bad signature" -msgstr "باد سִيغناتورع" - -#. TRANSLATORS: %08x is 32-bit key id. -#: grub-core/commands/pgp.c:636 grub-core/commands/pgp.c:812 -#, c-format -msgid "public key %08x not found" -msgstr "پ‎وبلִيص كعي %08x نوت Ùووند" - -#: grub-core/commands/pgp.c:651 grub-core/disk/diskfilter.c:772 -#: grub-core/disk/diskfilter.c:782 grub-core/fs/ntfs.c:404 -#: grub-core/fs/zfs/zfs.c:1933 grub-core/normal/menu.c:428 -#, c-format -msgid "module `%s' isn't loaded" -msgstr "مودولع `%s' ִيسن'ت لوادعد" - -#: grub-core/commands/pgp.c:994 -msgid "[-s|--skip-sig] FILE SIGNATURE_FILE [PUBKEY_FILE]" -msgstr "[-س|--سكִيپ‎-سִيغ] Ùִيلع سִيغناتورع_Ùִيلع [پ‎وبكعي_Ùִيلع]" - -#: grub-core/commands/pgp.c:995 -msgid "Verify detached signature." -msgstr "وعرִيÙÙŠ دعتاصهعد سִيغناتورع." - -#: grub-core/commands/pgp.c:998 -msgid "[-s|--skip-sig] PUBKEY_FILE" -msgstr "[-س|--سكִيپ‎-سִيغ] پ‎وبكعي_Ùִيلع" - -#: grub-core/commands/pgp.c:999 -msgid "Add PUBKEY_FILE to trusted keys." -msgstr "ادد پ‎وبكعي_Ùִيلع تو تروستعد كعيس." - -#: grub-core/commands/pgp.c:1003 -msgid "Show the list of trusted keys." -msgstr "سهوو تهع لִيست و٠تروستعد كعيس." - -#: grub-core/commands/pgp.c:1005 -msgid "PUBKEY_ID" -msgstr "پ‎وبكعي_ִيد" - -#: grub-core/commands/pgp.c:1006 -msgid "Remove PUBKEY_ID from trusted keys." -msgstr "رعمووع پ‎وبكعي_ִيد ÙØ±ÙˆÙ… تروستعد كعيس." - -#: grub-core/commands/probe.c:40 grub-core/commands/tr.c:32 -msgid "Set a variable to return value." -msgstr "سعت ا وارִيابلع تو رعتورن والوع." - -#. TRANSLATORS: It's a driver that is currently in use to access -#. the diven disk. -#: grub-core/commands/probe.c:43 -msgid "Determine driver." -msgstr "دعتعرمִينع درִيوعر." - -#: grub-core/commands/probe.c:44 -msgid "Determine partition map type." -msgstr "دعتعرمִينع پ‎ارتִيتִيون ماپ‎ تيپ‎ع." - -#: grub-core/commands/probe.c:45 -msgid "Determine filesystem type." -msgstr "دعتعرمִينع Ùִيلعسيستعم تيپ‎ع." - -#: grub-core/commands/probe.c:46 -msgid "Determine filesystem UUID." -msgstr "دعتعرمִينع Ùִيلعسيستعم ووִيد." - -#: grub-core/commands/probe.c:47 -msgid "Determine filesystem label." -msgstr "دعتعرمִينع Ùִيلعسيستعم لابعل." - -#: grub-core/commands/probe.c:139 grub-core/commands/probe.c:146 -#: util/grub-probe.c:462 -#, c-format -msgid "filesystem `%s' does not support labels" -msgstr "Ùִيلعسيستعم `%s' دوعس نوت سوپ‎پ‎ورت لابعلس" - -#: grub-core/commands/probe.c:165 grub-core/fs/zfs/zfsinfo.c:430 -#: grub-core/loader/i386/bsd.c:169 util/grub-setup.c:223 -msgid "DEVICE" -msgstr "دعوִيصع" - -#: grub-core/commands/probe.c:166 -msgid "Retrieve device info." -msgstr "رعترִيعوع دعوִيصع ִينÙÙˆ." - -#: grub-core/commands/read.c:85 -msgid "[ENVVAR]" -msgstr "[عنووار]" - -#: grub-core/commands/read.c:86 -msgid "Set variable with user input." -msgstr "سعت وارִيابلع وִيته وسعر ִينپ‎وت." - -#: grub-core/commands/reboot.c:40 -msgid "Reboot the computer." -msgstr "رعبووت تهع صومپ‎وتعر." - -#. TRANSLATORS: in regexp you can mark some -#. groups with parentheses. These groups are -#. then numbered and you can save some of -#. them in variables. In other programs -#. those components aree often referenced with -#. back slash, e.g. \1. Compare -#. sed -e 's,\([a-z][a-z]*\),lowercase=\1,g' -#. The whole matching component is saved in VARNAME, not its number. -#. -#: grub-core/commands/regexp.c:44 -msgid "Store matched component NUMBER in VARNAME." -msgstr "ستورع ماتصهعد صومپ‎ونعنت نومبعر ִين وارنامع." - -#: grub-core/commands/regexp.c:45 -msgid "[NUMBER:]VARNAME" -msgstr "[نومبعر:]وارنامع" - -#. TRANSLATORS: This are two arguments. So it's -#. two separate units to translate and pay -#. attention not to reverse them. -#: grub-core/commands/regexp.c:157 -msgid "REGEXP STRING" -msgstr "رعغعكسپ‎ سترִينغ" - -#: grub-core/commands/regexp.c:158 -msgid "Test if REGEXP matches STRING." -msgstr "تعست ִي٠رعغعكسپ‎ ماتصهعس سترִينغ." - -#: grub-core/commands/search.c:324 -msgid "NAME [VARIABLE] [HINTS]" -msgstr "نامع [وارִيابلع] [هִينتس]" - -#: grub-core/commands/search_file.c:4 -msgid "" -"Search devices by file. If VARIABLE is specified, the first device found is " -"set to a variable." -msgstr "" -"سعارصه دعوִيصعس بي Ùִيلع. ִي٠وارִيابلع ִيس سپ‎عصִيÙִيعد, تهع Ùִيرست دعوִيصع Ùووند ִيس " -"سعت تو ا وارִيابلع." - -#: grub-core/commands/search_label.c:4 -msgid "" -"Search devices by label. If VARIABLE is specified, the first device found is " -"set to a variable." -msgstr "" -"سعارصه دعوִيصعس بي لابعل. ִي٠وارִيابلع ִيس سپ‎عصִيÙִيعد, تهع Ùִيرست دعوִيصع Ùووند ִيس " -"سعت تو ا وارִيابلع." - -#: grub-core/commands/search_uuid.c:4 -msgid "" -"Search devices by UUID. If VARIABLE is specified, the first device found is " -"set to a variable." -msgstr "" -"سعارصه دعوִيصعس بي ووִيد. ִي٠وارִيابلع ִيس سپ‎عصִيÙִيعد, تهع Ùִيرست دعوִيصع Ùووند ִيس " -"سعت تو ا وارִيابلع." - -#: grub-core/commands/search_wrap.c:34 -msgid "Search devices by a file." -msgstr "سعارصه دعوִيصعس بي ا Ùִيلع." - -#: grub-core/commands/search_wrap.c:35 -msgid "Search devices by a filesystem label." -msgstr "سعارصه دعوִيصعس بي ا Ùִيلعسيستعم لابعل." - -#: grub-core/commands/search_wrap.c:37 -msgid "Search devices by a filesystem UUID." -msgstr "سعارصه دعوִيصعس بي ا Ùִيلعسيستعم ووִيد." - -#: grub-core/commands/search_wrap.c:40 -msgid "Set a variable to the first device found." -msgstr "سعت ا وارִيابلع تو تهع Ùִيرست دعوִيصع Ùووند." - -#: grub-core/commands/search_wrap.c:42 -msgid "Do not probe any floppy drive." -msgstr "دو نوت پ‎روبع اني Ùلوپ‎پ‎ي درִيوع." - -#: grub-core/commands/search_wrap.c:44 -msgid "" -"First try the device HINT. If HINT ends in comma, also try subpartitions" -msgstr "" -"Ùִيرست تري تهع دعوִيصع هִينت. ִي٠هִينت عندس ִين صومما, السو تري سوبپ‎ارتִيتִيونس" - -#: grub-core/commands/search_wrap.c:45 grub-core/commands/search_wrap.c:49 -#: grub-core/commands/search_wrap.c:53 grub-core/commands/search_wrap.c:57 -#: grub-core/commands/search_wrap.c:61 grub-core/commands/search_wrap.c:65 -msgid "HINT" -msgstr "هִينت" - -#: grub-core/commands/search_wrap.c:47 -msgid "" -"First try the device HINT if currently running on IEEE1275. If HINT ends in " -"comma, also try subpartitions" -msgstr "" -"Ùִيرست تري تهع دعوִيصع هִينت ִي٠صوررعنتلي روننִينغ ون ִيععع1275. ִي٠هִينت عندس ִين " -"صومما, السو تري سوبپ‎ارتִيتִيونس" - -#: grub-core/commands/search_wrap.c:51 -msgid "" -"First try the device HINT if currently running on BIOS. If HINT ends in " -"comma, also try subpartitions" -msgstr "" -"Ùִيرست تري تهع دعوִيصع هִينت ִي٠صوررعنتلي روننִينغ ون بִيوس. ִي٠هִينت عندس ִين " -"صومما, السو تري سوبپ‎ارتִيتִيونس" - -#: grub-core/commands/search_wrap.c:55 -msgid "" -"First try the device HINT if direct hardware access is supported. If HINT " -"ends in comma, also try subpartitions" -msgstr "" -"Ùִيرست تري تهع دعوִيصع هִينت ִي٠دִيرعصت هاردوارع اصصعسس ִيس سوپ‎پ‎ورتعد. ִي٠هִينت " -"عندس ִين صومما, السو تري سوبپ‎ارتִيتִيونس" - -#: grub-core/commands/search_wrap.c:59 -msgid "" -"First try the device HINT if currently running on EFI. If HINT ends in " -"comma, also try subpartitions" -msgstr "" -"Ùִيرست تري تهع دعوִيصع هִينت ִي٠صوررعنتلي روننִينغ ون عÙÖ´ÙŠ. ִي٠هִينت عندس ִين " -"صومما, السو تري سوبپ‎ارتִيتִيونس" - -#: grub-core/commands/search_wrap.c:63 -msgid "" -"First try the device HINT if currently running on ARC. If HINT ends in " -"comma, also try subpartitions" -msgstr "" -"Ùִيرست تري تهع دعوִيصع هִينت ִي٠صوررعنتلي روننִينغ ون ارص. ִي٠هִينت عندس ִين " -"صومما, السو تري سوبپ‎ارتִيتִيونس" - -#: grub-core/commands/search_wrap.c:207 -msgid "[-f|-l|-u|-s|-n] [--hint HINT [--hint HINT] ...] NAME" -msgstr "[-Ù|-Ù„|-Ùˆ|-س|-Ù†] [--هִينت هִينت [--هִينت هִينت] ...] نامع" - -#: grub-core/commands/search_wrap.c:209 -msgid "" -"Search devices by file, filesystem label or filesystem UUID. If --set is " -"specified, the first device found is set to a variable. If no variable name " -"is specified, `root' is used." -msgstr "" -"سعارصه دعوִيصعس بي Ùִيلع, Ùִيلعسيستعم لابعل ور Ùִيلعسيستعم ووִيد. Ö´ÙŠÙ --سعت ִيس " -"سپ‎عصִيÙִيعد, تهع Ùִيرست دعوִيصع Ùووند ִيس سعت تو ا وارִيابلع. ִي٠نو وارִيابلع نامع Ö´" -"يس سپ‎عصִيÙִيعد, `رووت' ִيس وسعد." - -#: grub-core/commands/setpci.c:132 -#, c-format -msgid "Register %x of %x:%02x.%x is %x\n" -msgstr "رعغִيستعر %x ÙˆÙ %x:%02x.%x ִيس %x\n" - -#: grub-core/commands/setpci.c:333 -msgid "[-s POSITION] [-d DEVICE] [-v VAR] REGISTER[=VALUE[:MASK]]" -msgstr "[-س پ‎وسִيتִيون] [-د دعوִيصع] [-Ùˆ وار] رعغִيستعر[=والوع[:ماسك]]" - -#: grub-core/commands/setpci.c:335 -msgid "Manipulate PCI devices." -msgstr "مانִيپ‎ولاتع پ‎صִي دعوִيصعس." - -#: grub-core/commands/sleep.c:32 -msgid "Verbose countdown." -msgstr "وعربوسع صوونتدوون." - -#: grub-core/commands/sleep.c:33 -msgid "Allow to interrupt with ESC." -msgstr "اللوو تو ִينتعرروپ‎ت وִيته عسص." - -#: grub-core/commands/sleep.c:109 -msgid "NUMBER_OF_SECONDS" -msgstr "نومبعر_ÙˆÙ_سعصوندس" - -#: grub-core/commands/sleep.c:110 -msgid "Wait for a specified number of seconds." -msgstr "واִيت Ùور ا سپ‎عصִيÙִيعد نومبعر و٠سعصوندس." - -#: grub-core/commands/syslinuxcfg.c:50 util/grub-syslinux2cfg.c:66 -msgid "root directory of the syslinux disk [default=/]." -msgstr "رووت دִيرعصتوري و٠تهع سيسلִينوكس دִيسك [Ø¯Ø¹ÙØ§ÙˆÙ„ت=/]." - -#: grub-core/commands/syslinuxcfg.c:53 util/grub-syslinux2cfg.c:72 -msgid "" -"current directory of syslinux [default is parent directory of input file]." -msgstr "" -"صوررعنت دִيرعصتوري و٠سيسلִينوكس [Ø¯Ø¹ÙØ§ÙˆÙ„ت ִيس پ‎ارعنت دִيرعصتوري و٠ִينپ‎وت Ùִيلع]." - -#: grub-core/commands/syslinuxcfg.c:55 util/grub-syslinux2cfg.c:75 -msgid "assume input is an isolinux configuration file." -msgstr "اسسومع ִينپ‎وت ִيس ان ִيسولִينوكس صونÙִيغوراتִيون Ùִيلع." - -#: grub-core/commands/syslinuxcfg.c:56 util/grub-syslinux2cfg.c:76 -msgid "assume input is a pxelinux configuration file." -msgstr "اسسومع ִينپ‎وت ִيس ا پ‎كسعلִينوكس صونÙִيغوراتִيون Ùִيلع." - -#: grub-core/commands/syslinuxcfg.c:57 util/grub-syslinux2cfg.c:77 -msgid "assume input is a syslinux configuration file." -msgstr "اسسومع ִينپ‎وت ִيس ا سيسلִينوكس صونÙִيغوراتִيون Ùִيلع." - -#. TRANSLATORS: "syslinux config" means -#. "config as used by syslinux". -#: grub-core/commands/syslinuxcfg.c:189 -msgid "Execute syslinux config in same context" -msgstr "عكسعصوتع سيسلִينوكس صونÙִيغ ִين سامع صونتعكست" - -#: grub-core/commands/syslinuxcfg.c:195 -msgid "Execute syslinux config in new context" -msgstr "عكسعصوتع سيسلִينوكس صونÙִيغ ִين نعو صونتعكست" - -#: grub-core/commands/syslinuxcfg.c:201 -msgid "Execute syslinux config in same context taking only menu entries" -msgstr "عكسعصوتع سيسلִينوكس صونÙִيغ ִين سامع صونتعكست تاكִينغ ونلي معنو عنترִيعس" - -#: grub-core/commands/syslinuxcfg.c:207 -msgid "Execute syslinux config in new context taking only menu entries" -msgstr "عكسعصوتع سيسلִينوكس صونÙִيغ ִين نعو صونتعكست تاكִينغ ونلي معنو عنترִيعس" - -#: grub-core/commands/terminal.c:90 -msgid "no terminal specified" -msgstr "نو تعرمִينال سپ‎عصִيÙִيعد" - -#: grub-core/commands/terminal.c:112 grub-core/commands/terminal.c:139 -#, c-format -msgid "terminal `%s' isn't found" -msgstr "تعرمִينال `%s' ִيسن'ت Ùووند" - -#: grub-core/commands/terminal.c:244 -msgid "Active input terminals:" -msgstr "اصتִيوع ִينپ‎وت تعرمִينالس:" - -#: grub-core/commands/terminal.c:245 -msgid "Available input terminals:" -msgstr "اواִيلابلع ִينپ‎وت تعرمִينالس:" - -#: grub-core/commands/terminal.c:261 -msgid "Active output terminals:" -msgstr "اصتִيوع ووتپ‎وت تعرمִينالس:" - -#: grub-core/commands/terminal.c:262 -msgid "Available output terminals:" -msgstr "اواִيلابلع ووتپ‎وت تعرمִينالس:" - -#: grub-core/commands/terminal.c:271 grub-core/commands/terminal.c:276 -msgid "[--append|--remove] [TERMINAL1] [TERMINAL2] ..." -msgstr "[--اپ‎پ‎عند|--رعمووع] [تعرمִينال1] [تعرمִينال2] ..." - -#: grub-core/commands/terminal.c:273 -msgid "List or select an input terminal." -msgstr "لִيست ور سعلعصت ان ִينپ‎وت تعرمִينال." - -#: grub-core/commands/terminal.c:278 -msgid "List or select an output terminal." -msgstr "لִيست ور سعلعصت ان ووتپ‎وت تعرمִينال." - -#: grub-core/commands/test.c:444 -msgid "EXPRESSION ]" -msgstr "عكسپ‎رعسسִيون ]" - -#: grub-core/commands/test.c:444 grub-core/commands/test.c:447 -msgid "Evaluate an expression." -msgstr "عوالواتع ان عكسپ‎رعسسִيون." - -#: grub-core/commands/test.c:447 -msgid "EXPRESSION" -msgstr "عكسپ‎رعسسִيون" - -#: grub-core/commands/testload.c:164 -msgid "Load the same file in multiple ways." -msgstr "لواد تهع سامع Ùִيلع ִين مولتִيپ‎لع وايس." - -#: grub-core/commands/testspeed.c:35 -msgid "Specify size for each read operation" -msgstr "سپ‎عصִيÙÙŠ سִيزع Ùور عاصه رعاد وپ‎عراتִيون" - -#: grub-core/commands/testspeed.c:58 -msgid "invalid block size" -msgstr "ִينوالִيد بلوصك سִيزع" - -#: grub-core/commands/testspeed.c:80 -#, c-format -msgid "File size: %s\n" -msgstr "Ùִيلع سִيزع: %s\n" - -#: grub-core/commands/testspeed.c:83 -#, c-format -msgid "Elapsed time: %d.%03d s \n" -msgstr "علاپ‎سعد تִيمع: %d.%03d س \n" - -#: grub-core/commands/testspeed.c:92 -#, c-format -msgid "Speed: %s \n" -msgstr "سپ‎ععد: %s \n" - -#: grub-core/commands/testspeed.c:107 -msgid "[-s SIZE] FILENAME" -msgstr "[-س سִيزع] Ùִيلعنامع" - -#: grub-core/commands/testspeed.c:108 -msgid "Test file read speed." -msgstr "تعست Ùִيلع رعاد سپ‎ععد." - -#: grub-core/commands/time.c:38 grub-core/script/execute.c:974 -msgid "no command is specified" -msgstr "نو صومماند ִيس سپ‎عصִيÙִيعد" - -#: grub-core/commands/time.c:50 -#, c-format -msgid "Elapsed time: %d.%03d seconds \n" -msgstr "علاپ‎سعد تִيمع: %d.%03d سعصوندس \n" - -#: grub-core/commands/time.c:61 -msgid "COMMAND [ARGS]" -msgstr "صومماند [ارغس]" - -#: grub-core/commands/time.c:62 -msgid "Measure time used by COMMAND" -msgstr "معاسورع تִيمع وسعد بي صومماند" - -#: grub-core/commands/tr.c:33 -msgid "Translate to upper case." -msgstr "ترانسلاتع تو وپ‎پ‎عر صاسع." - -#: grub-core/commands/tr.c:34 -msgid "Translate to lower case." -msgstr "ترانسلاتع تو لووعر صاسع." - -#: grub-core/commands/tr.c:119 -msgid "[OPTIONS] [SET1] [SET2] [STRING]" -msgstr "[وپ‎تִيونس] [سعت1] [سعت2] [سترִينغ]" - -#: grub-core/commands/tr.c:120 -msgid "Translate SET1 characters to SET2 in STRING." -msgstr "ترانسلاتع سعت1 صهاراصتعرس تو سعت2 ִين سترִينغ." - -#. TRANSLATORS: it's a command description. -#: grub-core/commands/true.c:50 -msgid "Do nothing, successfully." -msgstr "دو نوتهִينغ, سوصصعسسÙوللي." - -#. TRANSLATORS: it's a command description. -#: grub-core/commands/true.c:54 -msgid "Do nothing, unsuccessfully." -msgstr "دو نوتهִينغ, ونسوصصعسسÙوللي." - -#: grub-core/commands/usbtest.c:221 -msgid "Test USB support." -msgstr "تعست وسب سوپ‎پ‎ورت." - -#: grub-core/commands/verifiers.c:120 -#, c-format -msgid "verification requested but nobody cares: %s" -msgstr "وعرִيÙִيصاتִيون رعقوعستعد بوت نوبودي صارعس: %s" - -#: grub-core/commands/verifiers.c:140 -msgid "big file signature isn't implemented yet" -msgstr "بִيغ Ùִيلع سִيغناتورع ִيسن'ت ִيمپ‎لعمعنتعد يعت" - -#: grub-core/commands/videoinfo.c:61 -msgid "Text-only " -msgstr "تعكست-ونلي " - -#. TRANSLATORS: "Direct color" is a mode when the color components -#. are written dirrectly into memory. -#: grub-core/commands/videoinfo.c:66 -#, c-format -msgid "Direct color, mask: %d/%d/%d/%d pos: %d/%d/%d/%d" -msgstr "دִيرعصت صولور, ماسك: %d/%d/%d/%d پ‎وس: %d/%d/%d/%d" - -#. TRANSLATORS: In "paletted color" mode you write the index of the color -#. in the palette. Synonyms include "packed pixel". -#: grub-core/commands/videoinfo.c:78 -msgid "Paletted " -msgstr "پ‎العتتعد " - -#: grub-core/commands/videoinfo.c:80 -msgid "YUV " -msgstr "يوو " - -#. TRANSLATORS: "Planar" is the video memory where you have to write -#. in several different banks "plans" to control the different color -#. components of the same pixel. -#: grub-core/commands/videoinfo.c:85 -msgid "Planar " -msgstr "پ‎لانار " - -#: grub-core/commands/videoinfo.c:87 -msgid "Hercules " -msgstr "هعرصولعس " - -#: grub-core/commands/videoinfo.c:89 -msgid "CGA " -msgstr "صغا " - -#. TRANSLATORS: Non-chain 4 is a 256-color planar -#. (unchained) video memory mode. -#: grub-core/commands/videoinfo.c:93 -msgid "Non-chain 4 " -msgstr "نون-صهاִين 4 " - -#: grub-core/commands/videoinfo.c:95 -msgid "Monochrome " -msgstr "مونوصهرومع " - -#: grub-core/commands/videoinfo.c:97 -msgid "Unknown video mode " -msgstr "ونكنوون وִيدعو مودع " - -#: grub-core/commands/videoinfo.c:111 -msgid " EDID checksum invalid" -msgstr " عدִيد صهعصكسوم ִينوالִيد" - -#: grub-core/commands/videoinfo.c:116 -#, c-format -msgid " EDID version: %u.%u\n" -msgstr " عدִيد وعرسִيون: %u.%u\n" - -#: grub-core/commands/videoinfo.c:120 -#, c-format -msgid " Preferred mode: %ux%u\n" -msgstr " Ù¾â€ŽØ±Ø¹ÙØ¹Ø±Ø±Ø¹Ø¯ مودع: %uكس%u\n" - -#: grub-core/commands/videoinfo.c:123 -msgid " No preferred mode available\n" -msgstr " نو Ù¾â€ŽØ±Ø¹ÙØ¹Ø±Ø±Ø¹Ø¯ مودع اواִيلابلع\n" - -#: grub-core/commands/videoinfo.c:146 grub-core/video/video.c:490 -#: grub-core/video/video.c:498 grub-core/video/video.c:509 -#: grub-core/video/video.c:520 grub-core/video/video.c:528 -#, c-format -msgid "invalid video mode specification `%s'" -msgstr "ִينوالִيد وִيدعو مودع سپ‎عصִيÙִيصاتִيون `%s'" - -#: grub-core/commands/videoinfo.c:168 -msgid "List of supported video modes:" -msgstr "لִيست و٠سوپ‎پ‎ورتعد وִيدعو مودعس:" - -#: grub-core/commands/videoinfo.c:169 -msgid "Legend: mask/position=red/green/blue/reserved" -msgstr "لعغعند: ماسك/پ‎وسִيتִيون=رعد/غرععن/بلوع/رعسعروعد" - -#: grub-core/commands/videoinfo.c:176 -#, c-format -msgid "Adapter `%s':\n" -msgstr "اداپ‎تعر `%s':\n" - -#: grub-core/commands/videoinfo.c:180 -msgid " No info available" -msgstr " نو ִينÙÙˆ اواִيلابلع" - -#: grub-core/commands/videoinfo.c:198 -msgid " Failed to initialize video adapter" -msgstr " ÙØ§Ö´ÙŠÙ„عد تو ִينִيتִيالִيزع وִيدعو اداپ‎تعر" - -#. TRANSLATORS: "x" has to be entered in, -#. like an identifier, so please don't -#. use better Unicode codepoints. -#: grub-core/commands/videoinfo.c:239 grub-core/commands/videoinfo.c:248 -msgid "[WxH[xD]]" -msgstr "[وكسه[كسد]]" - -#: grub-core/commands/videoinfo.c:240 grub-core/commands/videoinfo.c:249 -msgid "" -"List available video modes. If resolution is given show only modes matching " -"it." -msgstr "" -"لִيست اواִيلابلع وִيدعو مودعس. ִي٠رعسولوتִيون ִيس غִيوعن سهوو ونلي مودعس ماتصهִينغ Ö´" -"يت." - -#. TRANSLATORS: "x" has to be entered in, -#. like an identifier, so please don't -#. use better Unicode codepoints. -#: grub-core/commands/videotest.c:225 -msgid "[WxH]" -msgstr "[وكسه]" - -#. TRANSLATORS: Here, on the other hand, it's -#. nicer to use unicode cross instead of x. -#: grub-core/commands/videotest.c:228 -msgid "Test video subsystem in mode WxH." -msgstr "تعست وִيدعو سوبسيستعم ִين مودع وكسه." - -#: grub-core/commands/videotest.c:231 -msgid "Test video subsystem." -msgstr "تعست وִيدعو سوبسيستعم." - -#: grub-core/commands/xen/lsxen.c:80 grub-core/commands/xen/lsxen.c:82 -msgid "[DIR]" -msgstr "[دִير]" - -#: grub-core/commands/xen/lsxen.c:81 grub-core/commands/xen/lsxen.c:83 -msgid "List Xen storage." -msgstr "لִيست كسعن ستوراغع." - -#. TRANSLATORS: GRUBUUID stands for "filesystem -#. UUID as used in GRUB". -#: grub-core/commands/xnu_uuid.c:110 -msgid "[-l] GRUBUUID [VARNAME]" -msgstr "[-Ù„] غروبووִيد [وارنامع]" - -#: grub-core/commands/xnu_uuid.c:111 -msgid "" -"Transform 64-bit UUID to format suitable for XNU. If -l is given keep it " -"lowercase as done by blkid." -msgstr "" -"ترانسÙورم 64-بִيت ووִيد تو Ùورمات سوִيتابلع Ùور كسنو. Ö´ÙŠÙ -Ù„ ִيس غִيوعن كععپ‎ ִيت " -"لووعرصاسع اس دونع بي بلكִيد." - -#: grub-core/disk/arc/arcdisk.c:248 grub-core/disk/efi/efidisk.c:603 -#: grub-core/disk/i386/pc/biosdisk.c:498 grub-core/disk/i386/pc/biosdisk.c:543 -#: grub-core/disk/ieee1275/nand.c:198 grub-core/disk/ieee1275/obdisk.c:527 -#: grub-core/disk/ieee1275/ofdisk.c:586 -#, c-format -msgid "failure reading sector 0x%llx from `%s'" -msgstr "ÙØ§Ö´ÙŠÙ„ورع رعادִينغ سعصتور 0كس%llx ÙØ±ÙˆÙ… `%s'" - -#: grub-core/disk/arc/arcdisk.c:284 grub-core/disk/efi/efidisk.c:626 -#: grub-core/disk/i386/pc/biosdisk.c:548 grub-core/disk/ieee1275/ofdisk.c:606 -#, c-format -msgid "failure writing sector 0x%llx to `%s'" -msgstr "ÙØ§Ö´ÙŠÙ„ورع ورִيتִينغ سعصتور 0كس%llx تو `%s'" - -#: grub-core/disk/cryptodisk.c:40 -msgid "Mount by UUID." -msgstr "موونت بي ووִيد." - -#. TRANSLATORS: It's still restricted to cryptodisks only. -#: grub-core/disk/cryptodisk.c:42 -msgid "Mount all." -msgstr "موونت الل." - -#: grub-core/disk/cryptodisk.c:43 -msgid "Mount all volumes with `boot' flag set." -msgstr "موونت الل وولومعس وִيته `بووت' Ùلاغ سعت." - -#. TRANSLATORS: The first %s is the file being looked at, the second %s is -#. the error message. -#: grub-core/disk/cryptodisk.c:526 grub-core/kern/emu/hostdisk.c:152 -#: grub-core/kern/emu/hostdisk.c:262 grub-core/kern/emu/hostdisk.c:434 -#: grub-core/kern/emu/misc.c:168 grub-core/kern/emu/misc.c:174 -#: grub-core/kern/emu/misc.c:196 grub-core/osdep/bsd/getroot.c:92 -#: grub-core/osdep/bsd/getroot.c:168 grub-core/osdep/hurd/getroot.c:68 -#: grub-core/osdep/linux/blocklist.c:65 grub-core/osdep/linux/getroot.c:150 -#: grub-core/osdep/linux/hostdisk.c:194 grub-core/osdep/linux/hostdisk.c:421 -#: grub-core/osdep/linux/ofpath.c:417 grub-core/osdep/linux/ofpath.c:422 -#: grub-core/osdep/linux/ofpath.c:517 grub-core/osdep/linux/ofpath.c:530 -#: grub-core/osdep/sun/getroot.c:110 grub-core/osdep/windows/blocklist.c:98 -#: grub-core/tests/video_checksum.c:279 util/editenv.c:46 util/glue-efi.c:115 -#: util/glue-efi.c:120 util/glue-efi.c:130 util/grub-editenv.c:138 -#: util/grub-editenv.c:192 util/grub-file.c:83 util/grub-fstest.c:128 -#: util/grub-fstest.c:568 util/grub-install-common.c:92 -#: util/grub-install-common.c:94 util/grub-install-common.c:101 -#: util/grub-install-common.c:529 util/grub-menulst2cfg.c:53 -#: util/grub-menulst2cfg.c:68 util/grub-mkimage.c:292 util/grub-mklayout.c:504 -#: util/grub-mklayout.c:516 util/grub-mknetdir.c:133 util/grub-mknetdir.c:151 -#: util/grub-mkrescue.c:627 util/grub-mkrescue.c:631 util/grub-mkrescue.c:879 -#: util/grub-mkrescue.c:883 util/grub-mkstandalone.c:253 util/grub-mount.c:498 -#: util/grub-render-label.c:169 util/grub-script-check.c:175 -#: util/grub-syslinux2cfg.c:181 util/grub-syslinux2cfg.c:191 -#: util/grub-syslinux2cfg.c:212 util/grub-syslinux2cfg.c:228 util/misc.c:91 -#: util/render-label.c:76 util/render-label.c:163 util/render-label.c:174 -#: util/resolve.c:246 util/setup.c:783 -#, c-format -msgid "cannot open `%s': %s" -msgstr "صاننوت وپ‎عن `%s': %s" - -#: grub-core/disk/cryptodisk.c:583 grub-core/disk/cryptodisk.c:628 -#: grub-core/kern/emu/hostdisk.c:270 grub-core/kern/emu/hostfs.c:142 -#: grub-core/osdep/linux/hostdisk.c:456 util/grub-editenv.c:143 -#: util/grub-editenv.c:149 util/grub-fstest.c:320 util/misc.c:111 -#, c-format -msgid "cannot seek `%s': %s" -msgstr "صاننوت سععك `%s': %s" - -#: grub-core/disk/cryptodisk.c:1144 -msgid "SOURCE|-u UUID|-a|-b" -msgstr "سوورصع|-Ùˆ ووִيد|-ا|-ب" - -#: grub-core/disk/cryptodisk.c:1145 -msgid "Mount a crypto device." -msgstr "موونت ا صريپ‎تو دعوִيصع." - -#. TRANSLATORS: This message kicks in during the detection of -#. which modules needs to be included in core image. This happens -#. in the case of degraded RAID and means that autodetection may -#. fail to include some of modules. It's an installation time -#. message, not runtime message. -#: grub-core/disk/diskfilter.c:343 grub-core/disk/diskfilter.c:376 -#, c-format -msgid "" -"Couldn't find physical volume `%s'. Some modules may be missing from core " -"image." -msgstr "" -"صوولدن'ت Ùִيند پ‎هيسִيصال وولومع `%s'. سومع مودولعس ماي بع مִيسسִينغ ÙØ±ÙˆÙ… صورع Ö´" -"يماغع." - -#: grub-core/disk/diskfilter.c:480 -#, c-format -msgid "physical volume %s not found" -msgstr "پ‎هيسִيصال وولومع %s نوت Ùووند" - -#: grub-core/disk/efi/efidisk.c:600 grub-core/disk/efi/efidisk.c:623 -#, c-format -msgid "no media in `%s'" -msgstr "نو معدִيا ִين `%s'" - -#: grub-core/disk/geli.c:75 -msgid "Couldn't load sha256" -msgstr "صوولدن'ت لواد سها256" - -#: grub-core/disk/geli.c:85 -msgid "Couldn't load sha512" -msgstr "صوولدن'ت لواد سها512" - -#: grub-core/disk/geli.c:216 grub-core/disk/geli.c:220 -msgid "couldn't read ELI metadata" -msgstr "صوولدن'ت رعاد علִي معتاداتا" - -#: grub-core/disk/geli.c:231 -msgid "wrong ELI magic or version" -msgstr "ورونغ علִي ماغִيص ور وعرسִيون" - -#: grub-core/disk/geli.c:435 grub-core/disk/luks.c:329 -msgid "Attempting to decrypt master key..." -msgstr "اتتعمپ‎تִينغ تو دعصريپ‎ت ماستعر كعي..." - -#: grub-core/disk/geli.c:441 grub-core/disk/luks.c:347 -#, c-format -msgid "Enter passphrase for %s%s%s (%s): " -msgstr "عنتعر پ‎اسسپ‎هراسع Ùور %s%s%s (%s): " - -#. TRANSLATORS: It's a cryptographic key slot: one element of an array -#. where each element is either empty or holds a key. -#: grub-core/disk/geli.c:530 grub-core/disk/luks.c:451 -#, c-format -msgid "Slot %d opened\n" -msgstr "سلوت %d وپ‎عنعد\n" - -#: grub-core/disk/i386/pc/biosdisk.c:470 grub-core/disk/i386/pc/biosdisk.c:524 -#: grub-core/disk/i386/pc/biosdisk.c:534 grub-core/kern/disk_common.c:47 -#, c-format -msgid "attempt to read or write outside of disk `%s'" -msgstr "اتتعمپ‎ت تو رعاد ور ورִيتع ووتسִيدع و٠دִيسك `%s'" - -#: grub-core/disk/i386/pc/biosdisk.c:491 grub-core/disk/i386/pc/biosdisk.c:611 -#: grub-core/disk/scsi.c:726 -msgid "cannot write to CD-ROM" -msgstr "صاننوت ورִيتع تو صد-روم" - -#: grub-core/disk/i386/pc/biosdisk.c:662 -msgid "" -"Native disk drivers are in use. Refusing to use firmware disk interface." -msgstr "" -"ناتִيوع دִيسك درִيوعرس ارع ִين وسع. رعÙوسִينغ تو وسع Ùִيرموارع دִيسك Ö´ÙŠÙ†ØªØ¹Ø±ÙØ§ØµØ¹." - -#. TRANSLATORS: it's a partition for embedding, -#. not a partition embed into something. GRUB -#. install tools put core.img into a place -#. usable for bootloaders (called generically -#. "embedding zone") and this operation is -#. called "embedding". -#: grub-core/disk/ldm.c:1015 -msgid "your LDM Embedding Partition is too small; embedding won't be possible" -msgstr "يوور لدم عمبعددִينغ پ‎ارتִيتִيون ִيس توو سمالل; عمبعددִينغ وون'ت بع پ‎وسسִيبلع" - -#. TRANSLATORS: it's a partition for embedding, -#. not a partition embed into something. -#: grub-core/disk/ldm.c:1033 -msgid "this LDM has no Embedding Partition; embedding won't be possible" -msgstr "تهִيس لدم هاس نو عمبعددִينغ پ‎ارتִيتִيون; عمبعددִينغ وون'ت بع پ‎وسسִيبلع" - -#. TRANSLATORS: The disk is simply removed from the list of available ones, -#. not wiped, avoid to scare user. -#: grub-core/disk/loopback.c:45 -msgid "Delete the specified loopback drive." -msgstr "دعلعتع تهع سپ‎عصִيÙִيعد لووپ‎باصك درִيوع." - -#: grub-core/disk/loopback.c:237 -msgid "[-d] DEVICENAME FILE." -msgstr "[-د] دعوִيصعنامع Ùִيلع." - -#. TRANSLATORS: The file itself is not destroyed -#. or transformed into drive. -#: grub-core/disk/loopback.c:240 -msgid "Make a virtual drive from a file." -msgstr "ماكع ا وִيرتوال درִيوع ÙØ±ÙˆÙ… ا Ùִيلع." - -#: grub-core/efiemu/i386/loadcore32.c:111 -#: grub-core/efiemu/i386/loadcore64.c:125 grub-core/kern/arm/dl.c:256 -#: grub-core/kern/arm64/dl.c:187 grub-core/kern/i386/dl.c:75 -#: grub-core/kern/ia64/dl.c:140 grub-core/kern/mips/dl.c:258 -#: grub-core/kern/powerpc/dl.c:163 grub-core/kern/riscv/dl.c:334 -#: grub-core/kern/sparc64/dl.c:180 grub-core/kern/x86_64/dl.c:110 -#: util/grub-mkimagexx.c:756 util/grub-mkimagexx.c:881 -#: util/grub-mkimagexx.c:945 util/grub-mkimagexx.c:1026 -#: util/grub-mkimagexx.c:1120 util/grub-mkimagexx.c:1222 -#: util/grub-mkimagexx.c:1413 util/grub-mkimagexx.c:1628 -#: util/grub-mkimagexx.c:1665 util/grub-mkimagexx.c:1697 -#: util/grub-mkimagexx.c:1767 util/grub-mkimagexx.c:1797 -#, c-format -msgid "relocation 0x%x is not implemented yet" -msgstr "رعلوصاتִيون 0كس%x ִيس نوت ִيمپ‎لعمعنتعد يعت" - -#: grub-core/efiemu/loadcore.c:200 grub-core/efiemu/loadcore.c:237 -#: grub-core/loader/i386/bsdXX.c:317 util/grub-mkimagexx.c:2360 -msgid "no symbol table" -msgstr "نو سيمبول تابلع" - -#: grub-core/efiemu/loadcore.c:346 grub-core/kern/dl.c:609 -#: grub-core/loader/ia64/efi/linux.c:345 grub-core/loader/mips/linux.c:248 -#: grub-core/loader/multiboot_elfxx.c:76 -#: grub-core/loader/powerpc/ieee1275/linux.c:280 -#: grub-core/loader/sparc64/ieee1275/linux.c:320 -msgid "this ELF file is not of the right type" -msgstr "تهִيس عل٠Ùִيلع ִيس نوت و٠تهع رִيغهت تيپ‎ع" - -#: grub-core/efiemu/main.c:313 -msgid "Load and initialize EFI emulator." -msgstr "لواد اند ִينִيتִيالִيزع عÙÖ´ÙŠ عمولاتور." - -#: grub-core/efiemu/main.c:317 -msgid "Finalize loading of EFI emulator." -msgstr "Ùִينالִيزع لوادִينغ و٠عÙÖ´ÙŠ عمولاتور." - -#: grub-core/efiemu/main.c:320 -msgid "Unload EFI emulator." -msgstr "ونلواد عÙÖ´ÙŠ عمولاتور." - -#: grub-core/efiemu/symbols.c:92 grub-core/kern/dl.c:376 -#, c-format -msgid "symbol `%s' not found" -msgstr "سيمبول `%s' نوت Ùووند" - -#: grub-core/font/font_cmd.c:52 -msgid "Loaded fonts:" -msgstr "لوادعد Ùونتس:" - -#: grub-core/font/font_cmd.c:74 -msgid "FILE..." -msgstr "Ùִيلع..." - -#: grub-core/font/font_cmd.c:75 -msgid "Specify one or more font files to load." -msgstr "سپ‎عصִيÙÙŠ ونع ور مورع Ùونت Ùִيلعس تو لواد." - -#: grub-core/font/font_cmd.c:78 -msgid "List the loaded fonts." -msgstr "لִيست تهع لوادعد Ùونتس." - -#: grub-core/fs/archelp.c:216 grub-core/fs/archelp.c:278 -#: grub-core/fs/btrfs.c:1815 grub-core/fs/fshelp.c:227 grub-core/fs/jfs.c:736 -#: grub-core/fs/minix.c:369 grub-core/fs/ufs.c:454 -msgid "too deep nesting of symlinks" -msgstr "توو دععپ‎ نعستִينغ و٠سيملִينكس" - -#: grub-core/fs/bfs.c:228 grub-core/fs/fshelp.c:368 grub-core/fs/minix.c:270 -#: grub-core/kern/file.c:156 -msgid "attempt to read past the end of file" -msgstr "اتتعمپ‎ت تو رعاد پ‎است تهع عند ÙˆÙ Ùִيلع" - -#: grub-core/fs/btrfs.c:1698 grub-core/fs/btrfs.c:1957 -#: grub-core/fs/fshelp.c:189 grub-core/fs/fshelp.c:309 grub-core/fs/jfs.c:431 -#: grub-core/fs/minix.c:414 grub-core/fs/minix.c:562 -#: grub-core/fs/reiserfs.c:732 grub-core/fs/ufs.c:531 grub-core/fs/ufs.c:671 -#: grub-core/fs/zfs/zfs.c:2831 grub-core/fs/zfs/zfs.c:4247 -msgid "not a directory" -msgstr "نوت ا دִيرعصتوري" - -#: grub-core/fs/btrfs.c:2063 grub-core/fs/fshelp.c:307 grub-core/fs/jfs.c:835 -#: grub-core/fs/zfs/zfs.c:3801 -msgid "not a regular file" -msgstr "نوت ا رعغولار Ùִيلع" - -#: grub-core/fs/btrfs.c:2157 grub-core/fs/zfs/zfs.c:4333 -#: grub-core/partmap/msdos.c:400 -msgid "your core.img is unusually large. It won't fit in the embedding area" -msgstr "يوور صورع.ִيمغ ִيس ونوسواللي لارغع. ִيت وون'ت Ùִيت ִين تهع عمبعددִينغ ارعا" - -#: grub-core/fs/fshelp.c:281 grub-core/fs/minix.c:630 grub-core/fs/ufs.c:661 -#: grub-core/fs/ufs.c:757 grub-core/kern/fs.c:168 grub-core/kern/fs.c:180 -#, c-format -msgid "invalid file name `%s'" -msgstr "ִينوالִيد Ùִيلع نامع `%s'" - -#: grub-core/fs/zfs/zfs.c:453 -msgid "checksum verification failed" -msgstr "صهعصكسوم وعرִيÙִيصاتִيون ÙØ§Ö´ÙŠÙ„عد" - -#: grub-core/fs/zfs/zfs.c:1465 -msgid "couldn't find a necessary member device of multi-device filesystem" -msgstr "صوولدن'ت Ùִيند ا نعصعسساري معمبعر دعوִيصع و٠مولتִي-دعوִيصع Ùִيلعسيستعم" - -#: grub-core/fs/zfs/zfscrypt.c:292 -msgid "no decryption key available" -msgstr "نو دعصريپ‎تִيون كعي اواִيلابلع" - -#: grub-core/fs/zfs/zfscrypt.c:304 -msgid "MAC verification failed" -msgstr "ماص وعرִيÙִيصاتִيون ÙØ§Ö´ÙŠÙ„عد" - -#: grub-core/fs/zfs/zfscrypt.c:413 -msgid "Assume input is raw." -msgstr "اسسومع ִينپ‎وت ִيس راو." - -#: grub-core/fs/zfs/zfscrypt.c:414 -msgid "Assume input is hex." -msgstr "اسسومع ִينپ‎وت ִيس هعكس." - -#: grub-core/fs/zfs/zfscrypt.c:415 -msgid "Assume input is passphrase." -msgstr "اسسومع ִينپ‎وت ִيس پ‎اسسپ‎هراسع." - -#: grub-core/fs/zfs/zfscrypt.c:437 util/grub-fstest.c:553 util/grub-mount.c:483 -msgid "Enter ZFS password: " -msgstr "عنتعر Ø²ÙØ³ پ‎اسسوورد: " - -#: grub-core/fs/zfs/zfscrypt.c:476 -msgid "[-h|-p|-r] [FILE]" -msgstr "[-Ù‡|-پ‎|-ر] [Ùִيلع]" - -#: grub-core/fs/zfs/zfscrypt.c:477 -msgid "Import ZFS wrapping key stored in FILE." -msgstr "ִيمپ‎ورت Ø²ÙØ³ وراپ‎پ‎ִينغ كعي ستورعد ִين Ùִيلع." - -#: grub-core/fs/zfs/zfsinfo.c:51 -msgid "Virtual device is removed" -msgstr "وִيرتوال دعوִيصع ִيس رعمووعد" - -#: grub-core/fs/zfs/zfsinfo.c:57 -msgid "Virtual device is faulted" -msgstr "وִيرتوال دعوִيصع ִيس ÙØ§ÙˆÙ„تعد" - -#: grub-core/fs/zfs/zfsinfo.c:63 -msgid "Virtual device is offline" -msgstr "وִيرتوال دعوִيصع ִيس ÙˆÙÙلִينع" - -#. TRANSLATORS: degraded doesn't mean broken but that some of -#. component are missing but virtual device as whole is still usable. -#: grub-core/fs/zfs/zfsinfo.c:70 -msgid "Virtual device is degraded" -msgstr "وִيرتوال دعوִيصع ִيس دعغرادعد" - -#: grub-core/fs/zfs/zfsinfo.c:73 -msgid "Virtual device is online" -msgstr "وִيرتوال دعوִيصع ִيس ونلִينع" - -#: grub-core/fs/zfs/zfsinfo.c:89 -msgid "Incorrect virtual device: no type available" -msgstr "ִينصوررعصت وִيرتوال دعوִيصع: نو تيپ‎ع اواִيلابلع" - -#. TRANSLATORS: The virtual devices form a tree (in graph-theoretical -#. sense). The nodes like mirror or raidz have children: member devices. -#. The "real" devices which actually store data are called "leafs" -#. (again borrowed from graph theory) and can be either disks -#. (or partitions) or files. -#: grub-core/fs/zfs/zfsinfo.c:105 -msgid "Leaf virtual device (file or disk)" -msgstr "لعا٠وִيرتوال دعوִيصع (Ùִيلع ور دִيسك)" - -#: grub-core/fs/zfs/zfsinfo.c:113 -msgid "Bootpath: unavailable\n" -msgstr "بووتپ‎اته: وناواִيلابلع\n" - -#: grub-core/fs/zfs/zfsinfo.c:115 -#, c-format -msgid "Bootpath: %s\n" -msgstr "بووتپ‎اته: %s\n" - -#: grub-core/fs/zfs/zfsinfo.c:120 -msgid "Path: unavailable" -msgstr "پ‎اته: وناواִيلابلع" - -#: grub-core/fs/zfs/zfsinfo.c:122 -#, c-format -msgid "Path: %s\n" -msgstr "پ‎اته: %s\n" - -#: grub-core/fs/zfs/zfsinfo.c:127 -msgid "Devid: unavailable" -msgstr "دعوִيد: وناواִيلابلع" - -#: grub-core/fs/zfs/zfsinfo.c:129 -#, c-format -msgid "Devid: %s\n" -msgstr "دعوִيد: %s\n" - -#: grub-core/fs/zfs/zfsinfo.c:148 -msgid "This VDEV is a mirror" -msgstr "تهִيس ودعو ִيس ا مִيررور" - -#: grub-core/fs/zfs/zfsinfo.c:153 -#, c-format -msgid "This VDEV is a RAIDZ%llu\n" -msgstr "تهִيس ودعو ִيس ا راִيدز%llu\n" - -#: grub-core/fs/zfs/zfsinfo.c:158 -msgid "Incorrect VDEV" -msgstr "ִينصوررعصت ودعو" - -#: grub-core/fs/zfs/zfsinfo.c:161 -#, c-format -msgid "VDEV with %d children\n" -msgstr "ودعو وִيته %d صهִيلدرعن\n" - -#. TRANSLATORS: it's the element carying the number %d, not -#. total element number. And the number itself is fine, -#. only the element isn't. -#. -#: grub-core/fs/zfs/zfsinfo.c:177 -#, c-format -msgid "VDEV element number %d isn't correct\n" -msgstr "ودعو علعمعنت نومبعر %d ִيسن'ت صوررعصت\n" - -#. TRANSLATORS: it's the element carying the number %d, not -#. total element number. This is used in enumeration -#. "Element number 1", "Element number 2", ... -#: grub-core/fs/zfs/zfsinfo.c:184 -#, c-format -msgid "VDEV element number %d:\n" -msgstr "ودعو علعمعنت نومبعر %d:\n" - -#: grub-core/fs/zfs/zfsinfo.c:193 -#, c-format -msgid "Unknown virtual device type: %s\n" -msgstr "ونكنوون وִيرتوال دعوִيصع تيپ‎ع: %s\n" - -#. TRANSLATORS: Here we speak about ZFS pools it's semi-marketing, -#. semi-technical term by Sun/Oracle and should be translated in sync with -#. other ZFS-related software and documentation. -#: grub-core/fs/zfs/zfsinfo.c:254 -msgid "Pool state: active" -msgstr "پ‎وول ستاتع: اصتִيوع" - -#: grub-core/fs/zfs/zfsinfo.c:255 -msgid "Pool state: exported" -msgstr "پ‎وول ستاتع: عكسپ‎ورتعد" - -#: grub-core/fs/zfs/zfsinfo.c:256 -msgid "Pool state: destroyed" -msgstr "پ‎وول ستاتع: دعسترويعد" - -#: grub-core/fs/zfs/zfsinfo.c:257 -msgid "Pool state: reserved for hot spare" -msgstr "پ‎وول ستاتع: رعسعروعد Ùور هوت سپ‎ارع" - -#: grub-core/fs/zfs/zfsinfo.c:258 -msgid "Pool state: level 2 ARC device" -msgstr "پ‎وول ستاتع: لعوعل 2 ارص دعوִيصع" - -#: grub-core/fs/zfs/zfsinfo.c:259 -msgid "Pool state: uninitialized" -msgstr "پ‎وول ستاتع: ونִينִيتִيالִيزعد" - -#: grub-core/fs/zfs/zfsinfo.c:260 -msgid "Pool state: unavailable" -msgstr "پ‎وول ستاتع: وناواִيلابلع" - -#: grub-core/fs/zfs/zfsinfo.c:261 -msgid "Pool state: potentially active" -msgstr "پ‎وول ستاتع: پ‎وتعنتִياللي اصتִيوع" - -#: grub-core/fs/zfs/zfsinfo.c:306 -msgid "Pool name: unavailable" -msgstr "پ‎وول نامع: وناواִيلابلع" - -#: grub-core/fs/zfs/zfsinfo.c:308 -#, c-format -msgid "Pool name: %s\n" -msgstr "پ‎وول نامع: %s\n" - -#: grub-core/fs/zfs/zfsinfo.c:313 -msgid "Pool GUID: unavailable" -msgstr "پ‎وول غوִيد: وناواִيلابلع" - -#: grub-core/fs/zfs/zfsinfo.c:315 -#, c-format -msgid "Pool GUID: %016llx\n" -msgstr "پ‎وول غوִيد: %016llx\n" - -#: grub-core/fs/zfs/zfsinfo.c:320 -msgid "Unable to retrieve pool state" -msgstr "ونابلع تو رعترִيعوع پ‎وول ستاتع" - -#: grub-core/fs/zfs/zfsinfo.c:322 -msgid "Unrecognized pool state" -msgstr "ونرعصوغنִيزعد پ‎وول ستاتع" - -#. TRANSLATORS: There are undetermined number of virtual devices -#. in a device tree, not just one. -#. -#: grub-core/fs/zfs/zfsinfo.c:332 -msgid "No virtual device tree available" -msgstr "نو وִيرتوال دعوִيصع ترعع اواִيلابلع" - -#: grub-core/fs/zfs/zfsinfo.c:431 -msgid "Print ZFS info about DEVICE." -msgstr "پ‎رִينت Ø²ÙØ³ ִينÙÙˆ ابووت دعوִيصع." - -#: grub-core/fs/zfs/zfsinfo.c:433 -msgid "FILESYSTEM [VARIABLE]" -msgstr "Ùִيلعسيستعم [وارִيابلع]" - -#: grub-core/fs/zfs/zfsinfo.c:434 -msgid "Print ZFS-BOOTFSOBJ or store it into VARIABLE" -msgstr "پ‎رִينت Ø²ÙØ³-Ø¨ÙˆÙˆØªÙØ³ÙˆØ¨ÙŠÙ ور ستورع ִيت ִينتو وارִيابلع" - -#. TRANSLATORS: at this position GRUB waits for the user to do an action -#. in remote debugger, namely to tell it to establish connection. -#: grub-core/gdb/gdb.c:48 -msgid "Now connect the remote debugger, please." -msgstr "نوو صوننعصت تهع رعموتع دعبوغغعر, پ‎لعاسع." - -#. TRANSLATORS: GDB stub is a small part of -#. GDB functionality running on local host -#. which allows remote debugger to -#. connect to it. -#: grub-core/gdb/gdb.c:84 -msgid "Start GDB stub on given port" -msgstr "ستارت غدب ستوب ون غִيوعن پ‎ورت" - -#. TRANSLATORS: this refers to triggering -#. a breakpoint so that the user will land -#. into GDB. -#: grub-core/gdb/gdb.c:89 -msgid "Break into GDB" -msgstr "برعاك ִينتو غدب" - -#: grub-core/gdb/gdb.c:91 -msgid "Stop GDB stub" -msgstr "ستوپ‎ غدب ستوب" - -#: grub-core/gettext/gettext.c:85 -msgid "premature end of file" -msgstr "پ‎رعماتورع عند ÙˆÙ Ùִيلع" - -#. TRANSLATORS: It refers to passing the string through gettext. -#. So it's "translate" in the same meaning as in what you're -#. doing now. -#. -#: grub-core/gettext/gettext.c:525 -msgid "Translates the string with the current settings." -msgstr "ترانسلاتعس تهع سترִينغ وִيته تهع صوررعنت سعتتִينغس." - -#: grub-core/gfxmenu/gui_label.c:186 grub-core/normal/menu_text.c:184 -msgid "" -"Press enter to boot the selected OS, `e' to edit the commands before booting " -"or `c' for a command-line. ESC to return previous menu." -msgstr "" -"پ‎رعسس عنتعر تو بووت تهع سعلعصتعد وس, `ع' تو عدִيت تهع صومماندس بعÙورع بووتִينغ " -"ور `ص' Ùور ا صومماند-لִينع. عسص تو رعتورن پ‎رعوִيووس معنو." - -#: grub-core/gfxmenu/gui_label.c:190 grub-core/normal/menu_text.c:192 -msgid "" -"Press enter to boot the selected OS, `e' to edit the commands before booting " -"or `c' for a command-line." -msgstr "" -"پ‎رعسس عنتعر تو بووت تهع سعلعصتعد وس, `ع' تو عدִيت تهع صومماندس بعÙورع بووتִينغ " -"ور `ص' Ùور ا صومماند-لִينع." - -#: grub-core/gfxmenu/gui_label.c:194 -msgid "enter: boot, `e': options, `c': cmd-line" -msgstr "عنتعر: بووت, `ع': وپ‎تִيونس, `ص': صمد-لִينع" - -#: grub-core/gfxmenu/gui_progress_bar.c:339 grub-core/normal/menu_text.c:446 -#, c-format -msgid "The highlighted entry will be executed automatically in %ds." -msgstr "تهع هִيغهلִيغهتعد عنتري وִيلل بع عكسعصوتعد اوتوماتִيصاللي ִين %dس." - -#. TRANSLATORS: 's' stands for seconds. -#. It's a standalone timeout notification. -#. Please use the short form in your language. -#: grub-core/gfxmenu/gui_progress_bar.c:344 -#, c-format -msgid "%ds remaining." -msgstr "%dس رعماִينִينغ." - -#. TRANSLATORS: 's' stands for seconds. -#. It's a standalone timeout notification. -#. Please use the shortest form available in you language. -#: grub-core/gfxmenu/gui_progress_bar.c:349 grub-core/normal/menu_text.c:444 -#: grub-core/normal/menu_text.c:462 -#, c-format -msgid "%ds" -msgstr "%dس" - -#: grub-core/gfxmenu/view.c:103 -msgid "GRUB Boot Menu" -msgstr "غروب بووت معنو" - -#: grub-core/hello/hello.c:36 -msgid "Hello World" -msgstr "هعللو وورلد" - -#: grub-core/hello/hello.c:45 -msgid "Say `Hello World'." -msgstr "ساي `هعللو وورلد'." - -#: grub-core/io/gzio.c:409 grub-core/kern/file.c:210 -msgid "attempt to seek outside of the file" -msgstr "اتتعمپ‎ت تو سععك ووتسִيدع و٠تهع Ùִيلع" - -#. TRANSLATORS: It's about given file having some strange format, not -#. complete lack of gzip support. -#: grub-core/io/gzio.c:1228 grub-core/io/gzio.c:1237 grub-core/io/gzio.c:1244 -msgid "unsupported gzip format" -msgstr "ونسوپ‎پ‎ورتعد غزִيپ‎ Ùورمات" - -#: grub-core/io/lzopio.c:511 -msgid "lzop file corrupted" -msgstr "لزوپ‎ Ùִيلع صورروپ‎تعد" - -#: grub-core/io/xzio.c:278 -msgid "xz file corrupted or unsupported block options" -msgstr "كسز Ùִيلع صورروپ‎تعد ور ونسوپ‎پ‎ورتعد بلوصك وپ‎تִيونس" - -#: grub-core/kern/arm/dl.c:277 grub-core/kern/arm64/dl.c:44 -#: grub-core/kern/i386/dl.c:36 grub-core/kern/ia64/dl.c:41 -#: grub-core/kern/mips/dl.c:48 grub-core/kern/powerpc/dl.c:36 -#: grub-core/kern/riscv/dl.c:47 grub-core/kern/sparc64/dl.c:36 -#: grub-core/kern/x86_64/dl.c:36 grub-core/loader/i386/bsd.c:1445 -#: grub-core/loader/i386/bsdXX.c:49 grub-core/loader/ia64/efi/linux.c:341 -#: grub-core/loader/mips/linux.c:298 grub-core/loader/multiboot.c:232 -#: grub-core/loader/multiboot_elfxx.c:73 -#: grub-core/loader/powerpc/ieee1275/linux.c:294 -#: grub-core/loader/sparc64/ieee1275/linux.c:331 -msgid "invalid arch-dependent ELF magic" -msgstr "ִينوالִيد ارصه-دعپ‎عندعنت عل٠ماغִيص" - -#: grub-core/kern/corecmd.c:178 -msgid "[ENVVAR=VALUE]" -msgstr "[عنووار=والوع]" - -#: grub-core/kern/corecmd.c:179 -msgid "Set an environment variable." -msgstr "سعت ان عنوִيرونمعنت وارִيابلع." - -#: grub-core/kern/corecmd.c:183 -msgid "ENVVAR" -msgstr "عنووار" - -#: grub-core/kern/corecmd.c:184 -msgid "Remove an environment variable." -msgstr "رعمووع ان عنوִيرونمعنت وارִيابلع." - -#: grub-core/kern/corecmd.c:186 -msgid "[ARG]" -msgstr "[ارغ]" - -#: grub-core/kern/corecmd.c:186 -msgid "List devices or files." -msgstr "لִيست دعوִيصعس ور Ùִيلعس." - -#: grub-core/kern/corecmd.c:188 -msgid "Insert a module." -msgstr "ִينسعرت ا مودولع." - -#: grub-core/kern/disk.c:236 grub-core/net/net.c:1390 -#, c-format -msgid "disk `%s' not found" -msgstr "دִيسك `%s' نوت Ùووند" - -#: grub-core/kern/disk_common.c:27 -msgid "attempt to read or write outside of partition" -msgstr "اتتعمپ‎ت تو رعاد ور ورִيتع ووتسִيدع و٠پ‎ارتִيتִيون" - -#: grub-core/kern/dl.c:212 grub-core/kern/elf.c:61 grub-core/kern/elf.c:79 -#: grub-core/loader/i386/bsdXX.c:46 grub-core/loader/ia64/efi/linux.c:335 -#: grub-core/loader/multiboot_elfxx.c:69 -msgid "invalid arch-independent ELF magic" -msgstr "ִينوالִيد ارصه-ִيندعپ‎عندعنت عل٠ماغִيص" - -#. TRANSLATORS: it refers to the lack of free slots. -#: grub-core/kern/emu/hostdisk.c:208 grub-core/kern/emu/hostdisk.c:466 -msgid "device count exceeds limit" -msgstr "دعوִيصع صوونت عكسصععدس لִيمִيت" - -#: grub-core/kern/emu/hostdisk.c:342 util/editenv.c:54 util/grub-editenv.c:197 -#: util/grub-fstest.c:191 util/grub-mkfont.c:796 util/misc.c:114 -#: util/misc.c:129 util/setup.c:788 -#, c-format -msgid "cannot write to `%s': %s" -msgstr "صاننوت ورִيتع تو `%s': %s" - -#. TRANSLATORS: Only one entry is ignored. However the suggestion -#. is to correct/delete the whole file. -#. device.map is a file indicating which -#. devices are available at boot time. Fedora populated it with -#. entries like (hd0,1) /dev/sda1 which would mean that every -#. partition is a separate disk for BIOS. Such entries were -#. inactive in GRUB due to its bug which is now gone. Without -#. this additional check these entries would be harmful now. -#. -#: grub-core/kern/emu/hostdisk.c:503 -#, c-format -msgid "" -"the device.map entry `%s' is invalid. Ignoring it. Please correct or delete " -"your device.map" -msgstr "" -"تهع دعوִيصع.ماپ‎ عنتري `%s' ִيس ִينوالִيد. ִيغنورִينغ ִيت. پ‎لعاسع صوررعصت ور دعلعتع " -"يوور دعوִيصع.ماپ‎" - -#. TRANSLATORS: device.map is a filename. Not to be translated. -#. device.map specifies disk correspondance overrides. Previously -#. one could create any kind of device name with this. Due to -#. some problems we decided to limit it to just a handful -#. possibilities. -#: grub-core/kern/emu/hostdisk.c:555 -#, c-format -msgid "" -"the drive name `%s' in device.map is incorrect. Using %s instead. Please use " -"the form [hfc]d[0-9]* (E.g. `hd0' or `cd')" -msgstr "" -"تهع درִيوع نامع `%s' ִين دعوִيصع.ماپ‎ ִيس ִينصوررعصت. وسִينغ %s ִينستعاد. پ‎لعاسع وسع " -"تهع Ùورم [Ù‡ÙØµ]د[0-9]* (ع.غ. `هد0' ور `صد')" - -#: grub-core/kern/emu/hostfs.c:76 grub-core/kern/emu/hostfs.c:109 -#, c-format -msgid "can't open `%s': %s" -msgstr "صان'ت وپ‎عن `%s': %s" - -#: grub-core/kern/emu/main.c:99 util/grub-fstest.c:516 util/grub-mount.c:452 -msgid "DEVICE_NAME" -msgstr "دعوִيصع_نامع" - -#: grub-core/kern/emu/main.c:99 grub-core/loader/i386/bsd.c:136 -#: grub-core/loader/i386/bsd.c:169 util/grub-fstest.c:516 util/grub-mount.c:452 -msgid "Set root device." -msgstr "سعت رووت دعوִيصع." - -#. TRANSLATORS: There are many devices in device map. -#: grub-core/kern/emu/main.c:102 util/grub-probe.c:733 util/grub-setup.c:85 -#, c-format -msgid "use FILE as the device map [default=%s]" -msgstr "وسع Ùִيلع اس تهع دعوִيصع ماپ‎ [Ø¯Ø¹ÙØ§ÙˆÙ„ت=%s]" - -#. TRANSLATORS: There are many devices in device map. -#: grub-core/kern/emu/main.c:105 -msgid "use FILE as memdisk" -msgstr "وسع Ùִيلع اس معمدִيسك" - -#: grub-core/kern/emu/main.c:107 util/grub-setup.c:83 -#, c-format -msgid "use GRUB files in the directory DIR [default=%s]" -msgstr "وسع غروب Ùִيلعس ִين تهع دִيرعصتوري دִير [Ø¯Ø¹ÙØ§ÙˆÙ„ت=%s]" - -#: grub-core/kern/emu/main.c:108 include/grub/util/install.h:67 -#: util/grub-editenv.c:58 util/grub-fstest.c:525 util/grub-glue-efi.c:58 -#: util/grub-macbless.c:104 util/grub-mkfont.c:962 util/grub-mkimage.c:84 -#: util/grub-mklayout.c:56 util/grub-mount.c:458 util/grub-probe.c:735 -#: util/grub-render-label.c:74 util/grub-script-check.c:52 util/grub-setup.c:90 -#: util/grub-syslinux2cfg.c:78 -msgid "print verbose messages." -msgstr "پ‎رִينت وعربوسع معسساغعس." - -#: grub-core/kern/emu/main.c:109 grub-core/lib/gnulib/argp-parse.c:85 -msgid "SECS" -msgstr "سعصس" - -#: grub-core/kern/emu/main.c:109 -msgid "wait until a debugger will attach" -msgstr "واִيت ونتִيل ا دعبوغغعر وִيلل اتتاصه" - -#: grub-core/kern/emu/main.c:171 util/grub-macbless.c:143 -#: util/grub-mkrelpath.c:61 util/grub-probe.c:874 util/grub-script-check.c:75 -#: util/grub-setup.c:203 -#, c-format -msgid "Unknown extra argument `%s'." -msgstr "ونكنوون عكسترا ارغومعنت `%s'." - -#: grub-core/kern/emu/main.c:185 -msgid "GRUB emulator." -msgstr "غروب عمولاتور." - -#: grub-core/kern/emu/main.c:213 util/grub-editenv.c:262 -#: util/grub-glue-efi.c:110 util/grub-macbless.c:173 util/grub-mkfont.c:1177 -#: util/grub-mkimage.c:266 util/grub-mklayout.c:494 -#: util/grub-mkpasswd-pbkdf2.c:132 util/grub-mkrelpath.c:96 -#: util/grub-probe.c:863 util/grub-render-label.c:152 -#: util/grub-script-check.c:160 util/grub-setup.c:262 -#: util/grub-syslinux2cfg.c:163 -msgid "Error in parsing command line arguments\n" -msgstr "عررور ִين پ‎ارسִينغ صومماند لִينع ارغومعنتس\n" - -#. TRANSLATORS: In this case GRUB tells user what he has to do. -#: grub-core/kern/emu/main.c:248 -#, c-format -msgid "Run `gdb %s %d', and set ARGS.HOLD to zero.\n" -msgstr "رون `غدب %s %d', اند سعت ارغس.هولد تو زعرو.\n" - -#: grub-core/kern/emu/misc.c:48 -#, c-format -msgid "%s: warning:" -msgstr "%s: وارنִينغ:" - -#: grub-core/kern/emu/misc.c:64 -#, c-format -msgid "%s: info:" -msgstr "%s: ִينÙÙˆ:" - -#: grub-core/kern/emu/misc.c:79 util/grub-fstest.c:567 util/grub-fstest.c:576 -#: util/grub-mount.c:497 util/grub-mount.c:505 -#, c-format -msgid "%s: error:" -msgstr "%s: عررور:" - -#: grub-core/kern/emu/misc.c:176 -#, c-format -msgid "file `%s' is too big" -msgstr "Ùִيلع `%s' ִيس توو بִيغ" - -#: grub-core/kern/fs.c:120 -msgid "unknown filesystem" -msgstr "ونكنوون Ùִيلعسيستعم" - -#: grub-core/kern/mips/arc/init.c:273 grub-core/kern/mips/loongson/init.c:301 -msgid "Shutdown failed" -msgstr "سهوتدوون ÙØ§Ö´ÙŠÙ„عد" - -#: grub-core/kern/mips/arc/init.c:285 -msgid "Exit failed" -msgstr "عكسִيت ÙØ§Ö´ÙŠÙ„عد" - -#: grub-core/kern/misc.c:351 grub-core/kern/misc.c:408 include/grub/misc.h:269 -#: include/grub/misc.h:278 -msgid "overflow is detected" -msgstr "ووعرÙلوو ִيس دعتعصتعد" - -#: grub-core/kern/partition.c:51 grub-core/partmap/bsdlabel.c:108 -#, c-format -msgid "Discarding improperly nested partition (%s,%s,%s%d)" -msgstr "دִيسصاردִينغ ִيمپ‎روپ‎عرلي نعستعد پ‎ارتִيتִيون (%s,%s,%s%d)" - -#: grub-core/kern/rescue_parser.c:73 util/grub-editenv.c:292 -#, c-format -msgid "Unknown command `%s'.\n" -msgstr "ونكنوون صومماند `%s'.\n" - -#: grub-core/lib/arg.c:31 -msgid "Display this help and exit." -msgstr "دִيسپ‎لاي تهִيس هعلپ‎ اند عكسִيت." - -#: grub-core/lib/arg.c:33 -msgid "Display the usage of this command and exit." -msgstr "دִيسپ‎لاي تهع وساغع و٠تهִيس صومماند اند عكسִيت." - -#: grub-core/lib/arg.c:362 -#, c-format -msgid "missing mandatory option for `%s'" -msgstr "مִيسسִينغ مانداتوري وپ‎تִيون Ùور `%s'" - -#: grub-core/lib/arg.c:384 -#, c-format -msgid "the argument `%s' requires an integer" -msgstr "تهع ارغومعنت `%s' رعقوִيرعس ان ִينتعغعر" - -#: grub-core/lib/arg.c:407 -#, c-format -msgid "" -"a value was assigned to the argument `%s' while it doesn't require an " -"argument" -msgstr "" -"ا والوع واس اسسִيغنعد تو تهع ارغومعنت `%s' وهִيلع ִيت دوعسن'ت رعقوִيرع ان " -"ارغومعنت" - -#: grub-core/lib/backtrace.c:64 -msgid "Print backtrace." -msgstr "پ‎رִينت باصكتراصع." - -#: grub-core/lib/gnulib/argp-help.c:149 -#, c-format -msgid "ARGP_HELP_FMT: %s value is less than or equal to %s" -msgstr "ارغپ‎_هعلپ‎_Ùمت: %s والوع ִيس لعسس تهان ور عقوال تو %s" - -#: grub-core/lib/gnulib/argp-help.c:225 -#, c-format -msgid "%.*s: ARGP_HELP_FMT parameter requires a value" -msgstr "%.*s: ارغپ‎_هعلپ‎_Ùمت پ‎ارامعتعر رعقوִيرعس ا والوع" - -#: grub-core/lib/gnulib/argp-help.c:235 -#, c-format -msgid "%.*s: Unknown ARGP_HELP_FMT parameter" -msgstr "%.*s: ونكنوون ارغپ‎_هعلپ‎_Ùمت پ‎ارامعتعر" - -#: grub-core/lib/gnulib/argp-help.c:248 -#, c-format -msgid "Garbage in ARGP_HELP_FMT: %s" -msgstr "غارباغع ִين ارغپ‎_هعلپ‎_Ùمت: %s" - -#: grub-core/lib/gnulib/argp-help.c:1229 -msgid "" -"Mandatory or optional arguments to long options are also mandatory or " -"optional for any corresponding short options." -msgstr "" -"مانداتوري ور وپ‎تִيونال ارغومعنتس تو لونغ وپ‎تִيونس ارع السو مانداتوري ور " -"وپ‎تִيونال Ùور اني صوررعسپ‎وندִينغ سهورت وپ‎تִيونس." - -#: grub-core/lib/gnulib/argp-help.c:1620 -msgid " or: " -msgstr " ور: " - -#: grub-core/lib/gnulib/argp-help.c:1632 -msgid " [OPTION...]" -msgstr " [وپ‎تִيون...]" - -#: grub-core/lib/gnulib/argp-help.c:1659 -#, c-format -msgid "Try '%s --help' or '%s --usage' for more information.\n" -msgstr "تري '%s --هعلپ‎' ور '%s --وساغع' Ùور مورع ִينÙورماتִيون.\n" - -#: grub-core/lib/gnulib/argp-help.c:1687 -#, c-format -msgid "Report bugs to %s.\n" -msgstr "رعپ‎ورت بوغس تو %s.\n" - -#: grub-core/lib/gnulib/argp-help.c:1888 grub-core/lib/gnulib/error.c:195 -msgid "Unknown system error" -msgstr "ونكنوون سيستعم عررور" - -#: grub-core/lib/gnulib/argp-parse.c:81 -msgid "give this help list" -msgstr "غִيوع تهִيس هعلپ‎ لִيست" - -#: grub-core/lib/gnulib/argp-parse.c:82 -msgid "give a short usage message" -msgstr "غִيوع ا سهورت وساغع معسساغع" - -#: grub-core/lib/gnulib/argp-parse.c:83 util/grub-mkfont.c:946 -msgid "NAME" -msgstr "نامع" - -#: grub-core/lib/gnulib/argp-parse.c:84 -msgid "set the program name" -msgstr "سعت تهع پ‎روغرام نامع" - -#: grub-core/lib/gnulib/argp-parse.c:86 -msgid "hang for SECS seconds (default 3600)" -msgstr "هانغ Ùور سعصس سعصوندس (Ø¯Ø¹ÙØ§ÙˆÙ„ت 3600)" - -#: grub-core/lib/gnulib/argp-parse.c:143 -msgid "print program version" -msgstr "پ‎رִينت پ‎روغرام وعرسִيون" - -#: grub-core/lib/gnulib/argp-parse.c:160 -msgid "(PROGRAM ERROR) No version known!?" -msgstr "(پ‎روغرام عررور) نو وعرسִيون كنوون!?" - -#: grub-core/lib/gnulib/argp-parse.c:613 -#, c-format -msgid "%s: Too many arguments\n" -msgstr "%s: توو ماني ارغومعنتس\n" - -#: grub-core/lib/gnulib/argp-parse.c:759 -msgid "(PROGRAM ERROR) Option should have been recognized!?" -msgstr "(پ‎روغرام عررور) وپ‎تִيون سهوولد هاوع بععن رعصوغنִيزعد!?" - -#: grub-core/lib/gnulib/getopt.c:278 -#, c-format -msgid "%s: option '%s%s' is ambiguous\n" -msgstr "%s: وپ‎تִيون '%s%s' ִيس امبִيغوووس\n" - -#: grub-core/lib/gnulib/getopt.c:284 -#, c-format -msgid "%s: option '%s%s' is ambiguous; possibilities:" -msgstr "%s: وپ‎تִيون '%s%s' ִيس امبִيغوووس; پ‎وسسִيبִيلִيتִيعس:" - -#: grub-core/lib/gnulib/getopt.c:319 -#, c-format -msgid "%s: unrecognized option '%s%s'\n" -msgstr "%s: ونرعصوغنִيزعد وپ‎تִيون '%s%s'\n" - -#: grub-core/lib/gnulib/getopt.c:345 -#, c-format -msgid "%s: option '%s%s' doesn't allow an argument\n" -msgstr "%s: وپ‎تִيون '%s%s' دوعسن'ت اللوو ان ارغومعنت\n" - -#: grub-core/lib/gnulib/getopt.c:360 -#, c-format -msgid "%s: option '%s%s' requires an argument\n" -msgstr "%s: وپ‎تִيون '%s%s' رعقوִيرعس ان ارغومعنت\n" - -#: grub-core/lib/gnulib/getopt.c:621 -#, c-format -msgid "%s: invalid option -- '%c'\n" -msgstr "%s: ִينوالִيد وپ‎تִيون -- '%c'\n" - -#: grub-core/lib/gnulib/getopt.c:636 grub-core/lib/gnulib/getopt.c:682 -#, c-format -msgid "%s: option requires an argument -- '%c'\n" -msgstr "%s: وپ‎تִيون رعقوִيرعس ان ارغومعنت -- '%c'\n" - -#: grub-core/lib/gnulib/openat-die.c:38 -#, c-format -msgid "unable to record current working directory" -msgstr "ونابلع تو رعصورد صوررعنت ووركִينغ دִيرعصتوري" - -#: grub-core/lib/gnulib/openat-die.c:57 -#, c-format -msgid "failed to return to initial working directory" -msgstr "ÙØ§Ö´ÙŠÙ„عد تو رعتورن تو ִينִيتִيال ووركִينغ دִيرعصتوري" - -#: grub-core/lib/gnulib/regcomp.c:135 grub-core/osdep/aros/hostdisk.c:523 -msgid "Success" -msgstr "سوصصعسس" - -#: grub-core/lib/gnulib/regcomp.c:138 -msgid "No match" -msgstr "نو ماتصه" - -#: grub-core/lib/gnulib/regcomp.c:141 -msgid "Invalid regular expression" -msgstr "ִينوالִيد رعغولار عكسپ‎رعسسִيون" - -#: grub-core/lib/gnulib/regcomp.c:144 -msgid "Invalid collation character" -msgstr "ִينوالִيد صوللاتִيون صهاراصتعر" - -#: grub-core/lib/gnulib/regcomp.c:147 -msgid "Invalid character class name" -msgstr "ִينوالִيد صهاراصتعر صلاسس نامع" - -#: grub-core/lib/gnulib/regcomp.c:150 -msgid "Trailing backslash" -msgstr "تراִيلִينغ باصكسلاسه" - -#: grub-core/lib/gnulib/regcomp.c:153 -msgid "Invalid back reference" -msgstr "ִينوالִيد باصك Ø±Ø¹ÙØ¹Ø±Ø¹Ù†ØµØ¹" - -#: grub-core/lib/gnulib/regcomp.c:156 -msgid "Unmatched [, [^, [:, [., or [=" -msgstr "ونماتصهعد [, [^, [:, [., ور [=" - -#: grub-core/lib/gnulib/regcomp.c:159 -msgid "Unmatched ( or \\(" -msgstr "ونماتصهعد ( ور \\(" - -#: grub-core/lib/gnulib/regcomp.c:162 -msgid "Unmatched \\{" -msgstr "ونماتصهعد \\{" - -#: grub-core/lib/gnulib/regcomp.c:165 -msgid "Invalid content of \\{\\}" -msgstr "ִينوالִيد صونتعنت ÙˆÙ \\{\\}" - -#: grub-core/lib/gnulib/regcomp.c:168 -msgid "Invalid range end" -msgstr "ִينوالִيد رانغع عند" - -#: grub-core/lib/gnulib/regcomp.c:171 -msgid "Memory exhausted" -msgstr "معموري عكسهاوستعد" - -#: grub-core/lib/gnulib/regcomp.c:174 -msgid "Invalid preceding regular expression" -msgstr "ִينوالִيد پ‎رعصعدִينغ رعغولار عكسپ‎رعسسִيون" - -#: grub-core/lib/gnulib/regcomp.c:177 -msgid "Premature end of regular expression" -msgstr "پ‎رعماتورع عند و٠رعغولار عكسپ‎رعسسִيون" - -#: grub-core/lib/gnulib/regcomp.c:180 -msgid "Regular expression too big" -msgstr "رعغولار عكسپ‎رعسسִيون توو بִيغ" - -#: grub-core/lib/gnulib/regcomp.c:183 -msgid "Unmatched ) or \\)" -msgstr "ونماتصهعد ) ور \\)" - -#: grub-core/lib/gnulib/regcomp.c:531 -msgid "unknown regexp error" -msgstr "ونكنوون رعغعكسپ‎ عررور" - -#: grub-core/lib/gnulib/regcomp.c:676 -msgid "No previous regular expression" -msgstr "نو پ‎رعوִيووس رعغولار عكسپ‎رعسسִيون" - -#: grub-core/lib/i386/halt.c:77 -msgid "GRUB doesn't know how to halt this machine yet!" -msgstr "غروب دوعسن'ت كنوو هوو تو هالت تهִيس ماصهִينع يعت!" - -#: grub-core/lib/legacy_parse.c:75 -msgid "Default server is ${net_default_server}" -msgstr "Ø¯Ø¹ÙØ§ÙˆÙ„ت سعروعر ִيس ${نعت_Ø¯Ø¹ÙØ§ÙˆÙ„ت_سعروعر}" - -#: grub-core/lib/legacy_parse.c:844 grub-core/video/colors.c:296 -#: grub-core/video/colors.c:305 grub-core/video/colors.c:311 -#: grub-core/video/colors.c:327 util/render-label.c:84 util/render-label.c:98 -#, c-format -msgid "invalid color specification `%s'" -msgstr "ִينوالִيد صولور سپ‎عصִيÙִيصاتִيون `%s'" - -#: grub-core/lib/mips/arc/reboot.c:32 grub-core/lib/mips/loongson/reboot.c:61 -msgid "Reboot failed" -msgstr "رعبووت ÙØ§Ö´ÙŠÙ„عد" - -#: grub-core/lib/random.c:113 -msgid "[LENGTH]" -msgstr "[لعنغته]" - -#: grub-core/lib/random.c:114 -msgid "Hexdump random data." -msgstr "هعكسدومپ‎ راندوم داتا." - -#: grub-core/loader/arm/linux.c:242 -msgid "device tree must be supplied (see `devicetree' command)" -msgstr "دعوִيصع ترعع موست بع سوپ‎پ‎لִيعد (سعع `دعوִيصعترعع' صومماند)" - -#: grub-core/loader/arm/linux.c:334 -msgid "invalid zImage" -msgstr "ִينوالִيد زִيماغع" - -#: grub-core/loader/arm/linux.c:450 grub-core/loader/efi/fdt.c:144 -msgid "invalid device tree" -msgstr "ִينوالִيد دعوִيصع ترعع" - -#: grub-core/loader/arm/linux.c:493 grub-core/loader/arm64/linux.c:383 -#: grub-core/loader/i386/linux.c:1125 grub-core/loader/i386/pc/linux.c:479 -#: grub-core/loader/i386/xen.c:962 grub-core/loader/i386/xen.c:964 -#: grub-core/loader/ia64/efi/linux.c:591 grub-core/loader/mips/linux.c:501 -#: grub-core/loader/powerpc/ieee1275/linux.c:383 -#: grub-core/loader/riscv/linux.c:50 -#: grub-core/loader/sparc64/ieee1275/linux.c:511 -msgid "Load Linux." -msgstr "لواد لִينوكس." - -#: grub-core/loader/arm/linux.c:495 grub-core/loader/arm64/linux.c:385 -#: grub-core/loader/i386/linux.c:1127 grub-core/loader/i386/pc/linux.c:482 -#: grub-core/loader/i386/xen.c:966 grub-core/loader/ia64/efi/linux.c:594 -#: grub-core/loader/mips/linux.c:503 -#: grub-core/loader/powerpc/ieee1275/linux.c:385 -#: grub-core/loader/riscv/linux.c:52 -#: grub-core/loader/sparc64/ieee1275/linux.c:513 -msgid "Load initrd." -msgstr "لواد ִينִيترد." - -#. TRANSLATORS: DTB stands for device tree blob. -#: grub-core/loader/arm/linux.c:498 grub-core/loader/efi/fdt.c:169 -msgid "Load DTB file." -msgstr "لواد دتب Ùִيلع." - -#: grub-core/loader/arm64/linux.c:59 -msgid "" -"plain image kernel not supported - rebuild with CONFIG_(U)EFI_STUB enabled" -msgstr "" -"پ‎لاִين ִيماغع كعرنعل نوت سوپ‎پ‎ورتعد - رعبوִيلد وִيته صونÙִيغ_(Ùˆ)عÙÖ´ÙŠ_ستوب عنابلعد" - -#: grub-core/loader/arm64/xen_boot.c:156 -msgid "failed to get FDT" -msgstr "ÙØ§Ö´ÙŠÙ„عد تو غعت ÙØ¯Øª" - -#: grub-core/loader/arm64/xen_boot.c:418 -msgid "you need to load the Xen Hypervisor first" -msgstr "يوو نععد تو لواد تهع كسعن هيپ‎عروִيسور Ùִيرست" - -#: grub-core/loader/arm64/xen_boot.c:516 -msgid "Load a xen hypervisor." -msgstr "لواد ا كسعن هيپ‎عروִيسور." - -#: grub-core/loader/arm64/xen_boot.c:519 -msgid "Load a xen module." -msgstr "لواد ا كسعن مودولع." - -#: grub-core/loader/efi/appleloader.c:231 -msgid "[OPTS]" -msgstr "[وپ‎تس]" - -#. TRANSLATORS: This command is used on EFI to -#. switch to BIOS mode and boot the OS requiring -#. BIOS. -#: grub-core/loader/efi/appleloader.c:235 -msgid "Boot BIOS-based system." -msgstr "بووت بִيوس-باسعد سيستعم." - -#: grub-core/loader/efi/chainloader.c:421 -#: grub-core/loader/i386/pc/chainloader.c:303 -msgid "Load another boot loader." -msgstr "لواد انوتهعر بووت لوادعر." - -#: grub-core/loader/i386/bsd.c:103 -msgid "Display output on all consoles." -msgstr "دִيسپ‎لاي ووتپ‎وت ون الل صونسولعس." - -#: grub-core/loader/i386/bsd.c:104 grub-core/loader/i386/bsd.c:138 -#: grub-core/loader/i386/bsd.c:171 -msgid "Use serial console." -msgstr "وسع سعرִيال صونسولع." - -#: grub-core/loader/i386/bsd.c:105 grub-core/loader/i386/bsd.c:131 -#: grub-core/loader/i386/bsd.c:159 -msgid "Ask for file name to reboot from." -msgstr "اسك Ùور Ùִيلع نامع تو رعبووت ÙØ±ÙˆÙ…." - -#: grub-core/loader/i386/bsd.c:106 -msgid "Use CD-ROM as root." -msgstr "وسع صد-روم اس رووت." - -#: grub-core/loader/i386/bsd.c:107 -msgid "Invoke user configuration routing." -msgstr "ִينووكع وسعر صونÙִيغوراتִيون رووتִينغ." - -#: grub-core/loader/i386/bsd.c:108 grub-core/loader/i386/bsd.c:135 -#: grub-core/loader/i386/bsd.c:162 -msgid "Enter in KDB on boot." -msgstr "عنتعر ִين كدب ون بووت." - -#: grub-core/loader/i386/bsd.c:109 -msgid "Use GDB remote debugger instead of DDB." -msgstr "وسع غدب رعموتع دعبوغغعر ִينستعاد و٠ددب." - -#: grub-core/loader/i386/bsd.c:110 -msgid "Disable all boot output." -msgstr "دִيسابلع الل بووت ووتپ‎وت." - -#: grub-core/loader/i386/bsd.c:112 -msgid "Wait for keypress after every line of output." -msgstr "واִيت Ùور كعيپ‎رعسس Ø§ÙØªØ¹Ø± عوعري لִينع و٠ووتپ‎وت." - -#: grub-core/loader/i386/bsd.c:114 -msgid "Use compiled-in root device." -msgstr "وسع صومپ‎ִيلعد-ִين رووت دعوִيصع." - -#: grub-core/loader/i386/bsd.c:115 grub-core/loader/i386/bsd.c:134 -#: grub-core/loader/i386/bsd.c:165 -msgid "Boot into single mode." -msgstr "بووت ִينتو سִينغلع مودع." - -#: grub-core/loader/i386/bsd.c:116 grub-core/loader/i386/bsd.c:166 -msgid "Boot with verbose messages." -msgstr "بووت وִيته وعربوسع معسساغعس." - -#: grub-core/loader/i386/bsd.c:132 grub-core/loader/i386/bsd.c:160 -msgid "Don't reboot, just halt." -msgstr "دون'ت رعبووت, ÙŠÙوست هالت." - -#: grub-core/loader/i386/bsd.c:133 grub-core/loader/i386/bsd.c:161 -msgid "Change configured devices." -msgstr "صهانغع صونÙִيغورعد دعوִيصعس." - -#. TRANSLATORS: "com" is static and not to be translated. It refers to -#. serial ports e.g. com1. -#. -#: grub-core/loader/i386/bsd.c:142 -msgid "comUNIT[,SPEED]" -msgstr "صومونִيت[,سپ‎ععد]" - -#: grub-core/loader/i386/bsd.c:157 -msgid "Disable SMP." -msgstr "دִيسابلع سمپ‎." - -#: grub-core/loader/i386/bsd.c:158 -msgid "Disable ACPI." -msgstr "دִيسابلع اصپ‎ִي." - -#: grub-core/loader/i386/bsd.c:164 -msgid "Don't display boot diagnostic messages." -msgstr "دون'ت دִيسپ‎لاي بووت دִياغنوستִيص معسساغعس." - -#: grub-core/loader/i386/bsd.c:167 -msgid "Boot with debug messages." -msgstr "بووت وִيته دعبوغ معسساغعس." - -#: grub-core/loader/i386/bsd.c:168 -msgid "Suppress normal output (warnings remain)." -msgstr "سوپ‎پ‎رعسس نورمال ووتپ‎وت (وارنִينغس رعماִين)." - -#. TRANSLATORS: "com" is static and not to be translated. It refers to -#. serial ports e.g. com1. -#. -#: grub-core/loader/i386/bsd.c:175 -msgid "[ADDR|comUNIT][,SPEED]" -msgstr "[اددر|صومونִيت][,سپ‎ععد]" - -#: grub-core/loader/i386/bsd.c:489 grub-core/loader/i386/bsd.c:555 -msgid "name" -msgstr "نامع" - -#: grub-core/loader/i386/bsd.c:489 grub-core/loader/i386/bsd.c:555 -msgid "type" -msgstr "تيپ‎ع" - -#: grub-core/loader/i386/bsd.c:489 grub-core/loader/i386/bsd.c:555 -msgid "addr" -msgstr "اددر" - -#: grub-core/loader/i386/bsd.c:490 grub-core/loader/i386/bsd.c:556 -msgid "size" -msgstr "سִيزع" - -#: grub-core/loader/i386/bsd.c:1147 grub-core/loader/i386/linux.c:466 -#: grub-core/loader/i386/xnu.c:1030 -msgid "Booting in blind mode" -msgstr "بووتִينغ ִين بلִيند مودع" - -#: grub-core/loader/i386/bsd.c:2137 -msgid "Load kernel of FreeBSD." -msgstr "لواد كعرنعل ÙˆÙ ÙØ±Ø¹Ø¹Ø¨Ø³Ø¯." - -#: grub-core/loader/i386/bsd.c:2140 -msgid "Load kernel of OpenBSD." -msgstr "لواد كعرنعل و٠وپ‎عنبسد." - -#: grub-core/loader/i386/bsd.c:2143 -msgid "Load kernel of NetBSD." -msgstr "لواد كعرنعل و٠نعتبسد." - -#: grub-core/loader/i386/bsd.c:2147 -msgid "Load FreeBSD env." -msgstr "لواد ÙØ±Ø¹Ø¹Ø¨Ø³Ø¯ عنو." - -#: grub-core/loader/i386/bsd.c:2150 -msgid "Load FreeBSD kernel module." -msgstr "لواد ÙØ±Ø¹Ø¹Ø¨Ø³Ø¯ كعرنعل مودولع." - -#: grub-core/loader/i386/bsd.c:2153 -msgid "Load NetBSD kernel module." -msgstr "لواد نعتبسد كعرنعل مودولع." - -#: grub-core/loader/i386/bsd.c:2156 -msgid "Load NetBSD kernel module (ELF)." -msgstr "لواد نعتبسد كعرنعل مودولع (علÙ)." - -#: grub-core/loader/i386/bsd.c:2159 -msgid "Load FreeBSD kernel module (ELF)." -msgstr "لواد ÙØ±Ø¹Ø¹Ø¨Ø³Ø¯ كعرنعل مودولع (علÙ)." - -#. TRANSLATORS: ramdisk isn't identifier, -#. it can be translated. -#: grub-core/loader/i386/bsd.c:2165 -msgid "Load kOpenBSD ramdisk." -msgstr "لواد كوپ‎عنبسد رامدִيسك." - -#. TRANSLATORS: "payload" is a term used -#. by coreboot and must be translated in -#. sync with coreboot. If unsure, -#. let it untranslated. -#: grub-core/loader/i386/coreboot/chainloader.c:510 -msgid "Load another coreboot payload" -msgstr "لواد انوتهعر صورعبووت پ‎ايلواد" - -#: grub-core/loader/i386/linux.c:876 -msgid "Legacy `ask' parameter no longer supported." -msgstr "لعغاصي `اسك' پ‎ارامعتعر نو لونغعر سوپ‎پ‎ورتعد." - -#: grub-core/loader/i386/linux.c:892 grub-core/loader/i386/linux.c:902 -#: grub-core/loader/i386/linux.c:932 -#, c-format -msgid "%s is deprecated. Use set gfxpayload=%s before linux command instead.\n" -msgstr "" -"%s ִيس دعپ‎رعصاتعد. وسع سعت غÙكسپ‎ايلواد=%s بعÙورع لִينوكس صومماند ִينستعاد.\n" - -#. TRANSLATORS: "x" has to be entered in, like an identifier, -#. so please don't use better Unicode codepoints. -#: grub-core/loader/i386/linux.c:915 -#, c-format -msgid "" -"%s is deprecated. VGA mode %d isn't recognized. Use set " -"gfxpayload=WIDTHxHEIGHT[xDEPTH] before linux command instead.\n" -msgstr "" -"%s ִيس دعپ‎رعصاتعد. وغا مودع %d ִيسن'ت رعصوغنִيزعد. وسع سعت " -"غÙكسپ‎ايلواد=وִيدتهكسهعִيغهت[كسدعپ‎ته] بعÙورع لִينوكس صومماند ִينستعاد.\n" - -#: grub-core/loader/i386/pc/chainloader.c:302 -msgid "[--force|--bpb] FILE" -msgstr "[--Ùورصع|--بپ‎ب] Ùִيلع" - -#: grub-core/loader/i386/pc/freedos.c:148 util/setup.c:293 -#, c-format -msgid "the size of `%s' is too large" -msgstr "تهع سִيزع ÙˆÙ `%s' ִيس توو لارغع" - -#: grub-core/loader/i386/pc/freedos.c:183 -msgid "Load FreeDOS kernel.sys." -msgstr "لواد ÙØ±Ø¹Ø¹Ø¯ÙˆØ³ كعرنعل.سيس." - -#: grub-core/loader/i386/pc/ntldr.c:155 -msgid "Load NTLDR or BootMGR." -msgstr "لواد نتلدر ور بووتمغر." - -#. TRANSLATORS: it's about guessing which GRUB disk -#. is which Plan9 disk. If your language has no -#. word "mapping" you can use another word which -#. means that the GRUBDEVICE and PLAN9DEVICE are -#. actually the same device, just named differently -#. in OS and GRUB. -#: grub-core/loader/i386/pc/plan9.c:59 -msgid "Override guessed mapping of Plan9 devices." -msgstr "ووعررִيدع غوعسسعد ماپ‎پ‎ִينغ و٠پ‎لان9 دعوִيصعس." - -#: grub-core/loader/i386/pc/plan9.c:60 -msgid "GRUBDEVICE=PLAN9DEVICE" -msgstr "غروبدعوִيصع=پ‎لان9دعوִيصع" - -#: grub-core/loader/i386/pc/plan9.c:599 -msgid "KERNEL ARGS" -msgstr "كعرنعل ارغس" - -#: grub-core/loader/i386/pc/plan9.c:599 -msgid "Load Plan9 kernel." -msgstr "لواد پ‎لان9 كعرنعل." - -#: grub-core/loader/i386/pc/pxechainloader.c:161 -msgid "Load a PXE image." -msgstr "لواد ا پ‎كسع ִيماغع." - -#: grub-core/loader/i386/pc/truecrypt.c:226 -msgid "Load Truecrypt ISO." -msgstr "لواد تروعصريپ‎ت ִيسو." - -#: grub-core/loader/i386/xen.c:781 grub-core/loader/i386/xen.c:865 -msgid "initrd already loaded" -msgstr "ִينִيترد الرعادي لوادعد" - -#: grub-core/loader/i386/xen.c:968 -msgid "Load module." -msgstr "لواد مودولع." - -#: grub-core/loader/i386/xnu.c:1003 -msgid "Press any key to launch xnu" -msgstr "پ‎رعسس اني كعي تو لاونصه كسنو" - -#. TRANSLATORS: `device-properties' -#. is a variable name, -#. not a program. -#: grub-core/loader/i386/xnu.c:1159 -msgid "Load `device-properties' dump." -msgstr "لواد `دعوִيصع-پ‎روپ‎عرتִيعس' دومپ‎." - -#: grub-core/loader/ia64/efi/linux.c:124 -msgid "Could not locate FPSWA driver" -msgstr "صوولد نوت لوصاتع Ùپ‎سوا درִيوعر" - -#: grub-core/loader/ia64/efi/linux.c:132 -msgid "FPSWA protocol wasn't able to find the interface" -msgstr "Ùپ‎سوا پ‎روتوصول واسن'ت ابلع تو Ùִيند تهع Ö´ÙŠÙ†ØªØ¹Ø±ÙØ§ØµØ¹" - -#: grub-core/loader/ia64/efi/linux.c:580 -msgid "No FPSWA found" -msgstr "نو Ùپ‎سوا Ùووند" - -#: grub-core/loader/ia64/efi/linux.c:582 -#, c-format -msgid "FPSWA revision: %x\n" -msgstr "Ùپ‎سوا رعوִيسִيون: %x\n" - -#: grub-core/loader/ia64/efi/linux.c:591 -msgid "FILE [ARGS...]" -msgstr "Ùִيلع [ارغس...]" - -#: grub-core/loader/ia64/efi/linux.c:597 -msgid "Display FPSWA version." -msgstr "دִيسپ‎لاي Ùپ‎سوا وعرسִيون." - -#: grub-core/loader/multiboot.c:248 -msgid "WARNING: no console will be available to OS" -msgstr "وارنִينغ: نو صونسولع وִيلل بع اواִيلابلع تو وس" - -#: grub-core/loader/multiboot.c:450 -msgid "Load a multiboot 2 kernel." -msgstr "لواد ا مولتִيبووت 2 كعرنعل." - -#: grub-core/loader/multiboot.c:453 -msgid "Load a multiboot 2 module." -msgstr "لواد ا مولتִيبووت 2 مودولع." - -#: grub-core/loader/multiboot.c:456 -msgid "Load a multiboot kernel." -msgstr "لواد ا مولتִيبووت كعرنعل." - -#: grub-core/loader/multiboot.c:459 -msgid "Load a multiboot module." -msgstr "لواد ا مولتִيبووت مودولع." - -#: grub-core/loader/riscv/linux.c:30 grub-core/loader/riscv/linux.c:40 -msgid "Linux not supported yet" -msgstr "لִينوكس نوت سوپ‎پ‎ورتعد يعت" - -#: grub-core/loader/xnu.c:1416 grub-core/term/gfxterm_background.c:45 -msgid "Background image mode." -msgstr "باصكغرووند ִيماغع مودع." - -#. TRANSLATORS: This refers to background image mode (stretched or -#. in left-top corner). Note that GRUB will accept only original -#. keywords stretch and normal, not the translated ones. -#. So please put both in translation -#. e.g. stretch(=%STRETCH%)|normal(=%NORMAL%). -#. The percents mark the translated version. Since many people -#. may not know the word stretch or normal I recommend -#. putting the translation either here or in "Background image mode." -#. string. -#: grub-core/loader/xnu.c:1416 grub-core/term/gfxterm_background.c:55 -msgid "stretch|normal" -msgstr "سترعتصه|نورمال" - -#: grub-core/loader/xnu.c:1482 -msgid "Load XNU image." -msgstr "لواد كسنو ִيماغع." - -#: grub-core/loader/xnu.c:1484 -msgid "Load 64-bit XNU image." -msgstr "لواد 64-بִيت كسنو ִيماغع." - -#: grub-core/loader/xnu.c:1486 -msgid "Load XNU extension package." -msgstr "لواد كسنو عكستعنسִيون پ‎اصكاغع." - -#: grub-core/loader/xnu.c:1488 -msgid "Load XNU extension." -msgstr "لواد كسنو عكستعنسִيون." - -#. TRANSLATORS: OSBundleRequired is a -#. variable name in xnu extensions -#. manifests. It behaves mostly like -#. GNU/Linux runlevels. -#. -#: grub-core/loader/xnu.c:1495 -msgid "DIRECTORY [OSBundleRequired]" -msgstr "دִيرعصتوري [وسبوندلعرعقوִيرعد]" - -#. TRANSLATORS: There are many extensions -#. in extension directory. -#: grub-core/loader/xnu.c:1498 -msgid "Load XNU extension directory." -msgstr "لواد كسنو عكستعنسִيون دִيرعصتوري." - -#. TRANSLATORS: ramdisk here isn't identifier. It can be translated. -#: grub-core/loader/xnu.c:1501 -msgid "Load XNU ramdisk. It will be available in OS as md0." -msgstr "لواد كسنو رامدִيسك. ִيت وִيلل بع اواִيلابلع ִين وس اس مد0." - -#: grub-core/loader/xnu.c:1505 -msgid "Load a splash image for XNU." -msgstr "لواد ا سپ‎لاسه ִيماغع Ùور كسنو." - -#: grub-core/loader/xnu.c:1510 -msgid "Load an image of hibernated XNU." -msgstr "لواد ان ִيماغع و٠هִيبعرناتعد كسنو." - -#: grub-core/mmap/mmap.c:538 -msgid "ADDR1,MASK1[,ADDR2,MASK2[,...]]" -msgstr "اددر1,ماسك1[,اددر2,ماسك2[,...]]" - -#: grub-core/mmap/mmap.c:539 -msgid "Declare memory regions as faulty (badram)." -msgstr "دعصلارع معموري رعغִيونس اس ÙØ§ÙˆÙ„تي (بادرام)." - -#: grub-core/mmap/mmap.c:541 -msgid "FROM[K|M|G] TO[K|M|G]" -msgstr "ÙØ±ÙˆÙ…[Ùƒ|Ù…|غ] تو[Ùƒ|Ù…|غ]" - -#: grub-core/mmap/mmap.c:542 -msgid "Remove any memory regions in specified range." -msgstr "رعمووع اني معموري رعغִيونس ִين سپ‎عصִيÙִيعد رانغع." - -#: grub-core/net/bootp.c:653 -msgid "four arguments expected" -msgstr "Ùوور ارغومعنتس عكسپ‎عصتعد" - -#: grub-core/net/bootp.c:661 grub-core/net/net.c:1155 -#, c-format -msgid "unrecognised network interface `%s'" -msgstr "ونرعصوغنִيسعد نعتوورك Ö´ÙŠÙ†ØªØ¹Ø±ÙØ§ØµØ¹ `%s'" - -#: grub-core/net/bootp.c:664 -msgid "no DHCP info found" -msgstr "نو دهصپ‎ ִينÙÙˆ Ùووند" - -#: grub-core/net/bootp.c:674 -msgid "no DHCP options found" -msgstr "نو دهصپ‎ وپ‎تִيونس Ùووند" - -#: grub-core/net/bootp.c:682 -msgid "invalid DHCP option code" -msgstr "ִينوالִيد دهصپ‎ وپ‎تִيون صودع" - -#: grub-core/net/bootp.c:686 -#, c-format -msgid "no DHCP option %u found" -msgstr "نو دهصپ‎ وپ‎تִيون %u Ùووند" - -#: grub-core/net/bootp.c:743 -#, c-format -msgid "unrecognised DHCP option format specification `%s'" -msgstr "ونرعصوغنִيسعد دهصپ‎ وپ‎تִيون Ùورمات سپ‎عصִيÙִيصاتִيون `%s'" - -#: grub-core/net/bootp.c:767 -msgid "no network card found" -msgstr "نو نعتوورك صارد Ùووند" - -#: grub-core/net/bootp.c:859 grub-core/net/net.c:389 -#, c-format -msgid "couldn't autoconfigure %s" -msgstr "صوولدن'ت اوتوصونÙִيغورع %s" - -#: grub-core/net/bootp.c:873 grub-core/net/bootp.c:876 -msgid "[CARD]" -msgstr "[صارد]" - -#: grub-core/net/bootp.c:874 -msgid "perform a bootp autoconfiguration" -msgstr "پ‎عرÙورم ا بووتپ‎ اوتوصونÙִيغوراتִيون" - -#: grub-core/net/bootp.c:877 -msgid "perform a DHCP autoconfiguration" -msgstr "پ‎عرÙورم ا دهصپ‎ اوتوصونÙִيغوراتִيون" - -#: grub-core/net/bootp.c:879 -msgid "VAR INTERFACE NUMBER DESCRIPTION" -msgstr "وار Ö´ÙŠÙ†ØªØ¹Ø±ÙØ§ØµØ¹ نومبعر دعسصرִيپ‎تִيون" - -#: grub-core/net/bootp.c:880 -msgid "" -"retrieve DHCP option and save it into VAR. If VAR is - then print the value." -msgstr "" -"رعترִيعوع دهصپ‎ وپ‎تִيون اند ساوع ִيت ִينتو وار. ִي٠وار ִيس - تهعن پ‎رִينت تهع والوع." - -#: grub-core/net/dns.c:459 -msgid "no DNS servers configured" -msgstr "نو دنس سعروعرس صونÙִيغورعد" - -#: grub-core/net/dns.c:522 -msgid "domain name component is too long" -msgstr "دوماִين نامع صومپ‎ونعنت ִيس توو لونغ" - -#: grub-core/net/dns.c:618 grub-core/net/dns.c:666 -msgid "no DNS record found" -msgstr "نو دنس رعصورد Ùووند" - -#: grub-core/net/dns.c:626 -msgid "no DNS reply received" -msgstr "نو دنس رعپ‎لي رعصعִيوعد" - -#: grub-core/net/dns.c:682 -msgid "only ipv4" -msgstr "ونلي ִيپ‎و4" - -#: grub-core/net/dns.c:686 -msgid "only ipv6" -msgstr "ونلي ִيپ‎و6" - -#: grub-core/net/dns.c:690 -msgid "prefer ipv4" -msgstr "Ù¾â€ŽØ±Ø¹ÙØ¹Ø± ִيپ‎و4" - -#: grub-core/net/dns.c:694 -msgid "prefer ipv6" -msgstr "Ù¾â€ŽØ±Ø¹ÙØ¹Ø± ִيپ‎و6" - -#: grub-core/net/dns.c:759 -msgid "ADDRESS DNSSERVER" -msgstr "اددرعسس دنسسعروعر" - -#: grub-core/net/dns.c:760 -msgid "Perform a DNS lookup" -msgstr "پ‎عرÙورم ا دنس لووكوپ‎" - -#: grub-core/net/dns.c:762 grub-core/net/dns.c:765 -msgid "DNSSERVER" -msgstr "دنسسعروعر" - -#: grub-core/net/dns.c:763 -msgid "Add a DNS server" -msgstr "ادد ا دنس سعروعر" - -#: grub-core/net/dns.c:766 -msgid "Remove a DNS server" -msgstr "رعمووع ا دنس سعروعر" - -#: grub-core/net/dns.c:768 -msgid "List DNS servers" -msgstr "لִيست دنس سعروعرس" - -#: grub-core/net/drivers/efi/efinet.c:49 grub-core/net/drivers/efi/efinet.c:65 -#: grub-core/net/drivers/efi/efinet.c:77 grub-core/net/drivers/emu/emunet.c:62 -#: grub-core/net/drivers/i386/pc/pxe.c:273 -#: grub-core/net/drivers/ieee1275/ofnet.c:75 -#: grub-core/net/drivers/uboot/ubootnet.c:62 -msgid "couldn't send network packet" -msgstr "صوولدن'ت سعند نعتوورك پ‎اصكعت" - -#: grub-core/net/drivers/ieee1275/ofnet.c:326 -#: grub-core/net/drivers/ieee1275/ofnet.c:359 -msgid "interpret is not supported" -msgstr "ִينتعرپ‎رعت ִيس نوت سوپ‎پ‎ورتعد" - -#: grub-core/net/drivers/ieee1275/ofnet.c:336 -msgid "alloc-mem failed" -msgstr "اللوص-معم ÙØ§Ö´ÙŠÙ„عد" - -#: grub-core/net/drivers/ieee1275/ofnet.c:370 -msgid "free-mem failed" -msgstr "ÙØ±Ø¹Ø¹-معم ÙØ§Ö´ÙŠÙ„عد" - -#: grub-core/net/http.c:105 -msgid "unsupported HTTP response" -msgstr "ونسوپ‎پ‎ورتعد هتتپ‎ رعسپ‎ونسع" - -#. TRANSLATORS: GRUB HTTP code is pretty young. So even perfectly -#. valid answers like 403 will trigger this very generic message. -#: grub-core/net/http.c:126 -#, c-format -msgid "unsupported HTTP error %d: %s" -msgstr "ونسوپ‎پ‎ورتعد هتتپ‎ عررور %d: %s" - -#: grub-core/net/http.c:429 grub-core/net/tftp.c:420 -#, c-format -msgid "time out opening `%s'" -msgstr "تִيمع ووت وپ‎عنִينغ `%s'" - -#: grub-core/net/net.c:179 -msgid "timeout: could not resolve hardware address" -msgstr "تִيمعووت: صوولد نوت رعسولوع هاردوارع اددرعسس" - -#: grub-core/net/net.c:548 -#, c-format -msgid "unresolvable address %s" -msgstr "ونرعسولوابلع اددرعسس %s" - -#: grub-core/net/net.c:594 -#, c-format -msgid "unrecognised network address `%s'" -msgstr "ونرعصوغنִيسعد نعتوورك اددرعسس `%s'" - -#: grub-core/net/net.c:661 -msgid "destination unreachable" -msgstr "دعستִيناتִيون ونرعاصهابلع" - -#. TRANSLATORS: route loop is a condition when e.g. -#. to contact server A you need to go through B -#. and to contact B you need to go through A. -#: grub-core/net/net.c:684 -msgid "route loop detected" -msgstr "رووتع لووپ‎ دعتعصتعد" - -#: grub-core/net/net.c:700 -msgid "address not found" -msgstr "اددرعسس نوت Ùووند" - -#: grub-core/net/net.c:704 -msgid "you can't delete this address" -msgstr "يوو صان'ت دعلعتع تهִيس اددرعسس" - -#: grub-core/net/net.c:776 grub-core/net/net.c:792 -#, c-format -msgid "Unsupported hw address type %d\n" -msgstr "ونسوپ‎پ‎ورتعد هو اددرعسس تيپ‎ع %d\n" - -#: grub-core/net/net.c:813 -#, c-format -msgid "Unsupported address type %d\n" -msgstr "ونسوپ‎پ‎ورتعد اددرعسس تيپ‎ع %d\n" - -#: grub-core/net/net.c:1017 grub-core/net/net.c:1131 -msgid "three arguments expected" -msgstr "تهرعع ارغومعنتس عكسپ‎عصتعد" - -#: grub-core/net/net.c:1023 -msgid "card not found" -msgstr "صارد نوت Ùووند" - -#. TRANSLATORS: it refers to the network address. -#: grub-core/net/net.c:1167 -msgid "temporary" -msgstr "تعمپ‎وراري" - -#: grub-core/net/net.c:1190 -#, c-format -msgid "Unknown address type %d\n" -msgstr "ونكنوون اددرعسس تيپ‎ع %d\n" - -#: grub-core/net/net.c:1298 -msgid "no server is specified" -msgstr "نو سعروعر ִيس سپ‎عصִيÙִيعد" - -#: grub-core/net/net.c:1637 -#, c-format -msgid "timeout reading `%s'" -msgstr "تִيمعووت رعادִينغ `%s'" - -#. TRANSLATORS: HWADDRESS stands for -#. "hardware address". -#: grub-core/net/net.c:1762 -msgid "SHORTNAME CARD ADDRESS [HWADDRESS]" -msgstr "سهورتنامع صارد اددرعسس [هواددرعسس]" - -#: grub-core/net/net.c:1763 -msgid "Add a network address." -msgstr "ادد ا نعتوورك اددرعسس." - -#: grub-core/net/net.c:1766 -msgid "[CARD [HWADDRESS]]" -msgstr "[صارد [هواددرعسس]]" - -#: grub-core/net/net.c:1767 -msgid "Perform an IPV6 autoconfiguration" -msgstr "پ‎عرÙورم ان ִيپ‎و6 اوتوصونÙִيغوراتִيون" - -#: grub-core/net/net.c:1770 grub-core/net/net.c:1777 -msgid "SHORTNAME" -msgstr "سهورتنامع" - -#: grub-core/net/net.c:1771 -msgid "Delete a network address." -msgstr "دعلعتع ا نعتوورك اددرعسس." - -#. TRANSLATORS: "gw" is a keyword. -#: grub-core/net/net.c:1774 -msgid "SHORTNAME NET [INTERFACE| gw GATEWAY]" -msgstr "سهورتنامع نعت [Ö´ÙŠÙ†ØªØ¹Ø±ÙØ§ØµØ¹| غو غاتعواي]" - -#: grub-core/net/net.c:1775 -msgid "Add a network route." -msgstr "ادد ا نعتوورك رووتع." - -#: grub-core/net/net.c:1778 -msgid "Delete a network route." -msgstr "دعلعتع ا نعتوورك رووتع." - -#: grub-core/net/net.c:1780 -msgid "list network routes" -msgstr "لִيست نعتوورك رووتعس" - -#: grub-core/net/net.c:1782 -msgid "list network cards" -msgstr "لִيست نعتوورك صاردس" - -#: grub-core/net/net.c:1784 -msgid "list network addresses" -msgstr "لִيست نعتوورك اددرعسسعس" - -#: grub-core/net/tcp.c:681 -msgid "connection refused" -msgstr "صوننعصتִيون رعÙوسعد" - -#: grub-core/net/tcp.c:684 -msgid "connection timeout" -msgstr "صوننعصتִيون تִيمعووت" - -#: grub-core/normal/auth.c:220 -msgid "Enter username: " -msgstr "عنتعر وسعرنامع: " - -#: grub-core/normal/auth.c:269 -msgid "[USERLIST]" -msgstr "[وسعرلִيست]" - -#: grub-core/normal/auth.c:270 -msgid "Check whether user is in USERLIST." -msgstr "صهعصك وهعتهعر وسعر ִيس ִين وسعرلִيست." - -#: grub-core/normal/cmdline.c:174 grub-core/normal/menu_entry.c:1068 -msgid "Possible commands are:" -msgstr "پ‎وسسִيبلع صومماندس ارع:" - -#: grub-core/normal/cmdline.c:177 grub-core/normal/menu_entry.c:1072 -msgid "Possible devices are:" -msgstr "پ‎وسسִيبلع دعوִيصعس ارع:" - -#: grub-core/normal/cmdline.c:180 grub-core/normal/menu_entry.c:1076 -msgid "Possible files are:" -msgstr "پ‎وسسִيبلع Ùִيلعس ارع:" - -#: grub-core/normal/cmdline.c:183 grub-core/normal/menu_entry.c:1080 -msgid "Possible partitions are:" -msgstr "پ‎وسسִيبلع پ‎ارتִيتִيونس ارع:" - -#: grub-core/normal/cmdline.c:186 grub-core/normal/menu_entry.c:1084 -msgid "Possible arguments are:" -msgstr "پ‎وسسִيبلع ارغومعنتس ارع:" - -#. TRANSLATORS: this message is used if none of above matches. -#. This shouldn't happen but please use the general term for -#. "thing" or "object". -#: grub-core/normal/cmdline.c:192 grub-core/normal/menu_entry.c:1088 -msgid "Possible things are:" -msgstr "پ‎وسسִيبلع تهִينغس ارع:" - -#: grub-core/normal/color.c:81 -#, c-format -msgid "Warning: syntax error (missing slash) in `%s'\n" -msgstr "وارنִينغ: سينتاكس عررور (مִيسسִينغ سلاسه) ִين `%s'\n" - -#: grub-core/normal/color.c:90 -#, c-format -msgid "Warning: invalid foreground color `%s'\n" -msgstr "وارنִينغ: ִينوالִيد Ùورعغرووند صولور `%s'\n" - -#: grub-core/normal/color.c:96 -#, c-format -msgid "Warning: invalid background color `%s'\n" -msgstr "وارنִينغ: ִينوالִيد باصكغرووند صولور `%s'\n" - -#: grub-core/normal/context.c:206 -msgid "ENVVAR [ENVVAR] ..." -msgstr "عنووار [عنووار] ..." - -#: grub-core/normal/context.c:207 -msgid "Export variables." -msgstr "عكسپ‎ورت وارִيابلعس." - -#: grub-core/normal/datetime.c:25 -msgid "Sunday" -msgstr "سونداي" - -#: grub-core/normal/datetime.c:26 -msgid "Monday" -msgstr "مونداي" - -#: grub-core/normal/datetime.c:27 -msgid "Tuesday" -msgstr "توعسداي" - -#: grub-core/normal/datetime.c:28 -msgid "Wednesday" -msgstr "وعدنعسداي" - -#: grub-core/normal/datetime.c:29 -msgid "Thursday" -msgstr "تهورسداي" - -#: grub-core/normal/datetime.c:30 -msgid "Friday" -msgstr "ÙØ±Ö´ÙŠØ¯Ø§ÙŠ" - -#: grub-core/normal/datetime.c:31 -msgid "Saturday" -msgstr "ساتورداي" - -#: grub-core/normal/dyncmd.c:187 -msgid "module isn't loaded" -msgstr "مودولع ִيسن'ت لوادعد" - -#: grub-core/normal/main.c:211 -#, c-format -msgid "GNU GRUB version %s" -msgstr "غنو غروب وعرسִيون %s" - -#: grub-core/normal/main.c:360 -msgid "ESC at any time exits." -msgstr "عسص ات اني تִيمع عكسִيتس." - -#: grub-core/normal/main.c:363 -#, c-format -msgid "" -"Minimal BASH-like line editing is supported. For the first word, TAB lists " -"possible command completions. Anywhere else TAB lists possible device or " -"file completions. %s" -msgstr "" -"مִينִيمال باسه-لִيكع لִينع عدִيتִينغ ִيس سوپ‎پ‎ورتعد. Ùور تهع Ùִيرست وورد, تاب لִيستس " -"پ‎وسسִيبلع صومماند صومپ‎لعتִيونس. انيوهعرع علسع تاب لִيستس پ‎وسسִيبلع دعوִيصع ور " -"Ùִيلع صومپ‎لعتִيونس. %s" - -#. TRANSLATORS: it's command line prompt. -#: grub-core/normal/main.c:395 -msgid ">" -msgstr ">" - -#. TRANSLATORS: it's command line prompt. -#: grub-core/normal/main.c:398 -msgid "grub>" -msgstr "غروب>" - -#: grub-core/normal/main.c:518 -msgid "Clear the screen." -msgstr "صلعار تهع سصرععن." - -#: grub-core/normal/main.c:527 -msgid "Enter normal mode." -msgstr "عنتعر نورمال مودع." - -#: grub-core/normal/main.c:529 -msgid "Exit from normal mode." -msgstr "عكسִيت ÙØ±ÙˆÙ… نورمال مودع." - -#: grub-core/normal/menu.c:66 grub-core/normal/menu_entry.c:1449 -msgid "Press any key to continue..." -msgstr "پ‎رعسس اني كعي تو صونتִينوع..." - -#: grub-core/normal/menu.c:815 -#, c-format -msgid "Booting `%s'" -msgstr "بووتִينغ `%s'" - -#: grub-core/normal/menu.c:827 -#, c-format -msgid "Falling back to `%s'" -msgstr "ÙØ§Ù„لִينغ باصك تو `%s'" - -#: grub-core/normal/menu.c:843 -msgid "Failed to boot both default and fallback entries.\n" -msgstr "ÙØ§Ö´ÙŠÙ„عد تو بووت بوته Ø¯Ø¹ÙØ§ÙˆÙ„ت اند ÙØ§Ù„لباصك عنترִيعس.\n" - -#: grub-core/normal/menu_entry.c:1171 -msgid "Booting a command list" -msgstr "بووتִينغ ا صومماند لִيست" - -#: grub-core/normal/menu_text.c:160 -msgid "" -"Minimum Emacs-like screen editing is supported. TAB lists completions. Press " -"Ctrl-x or F10 to boot, Ctrl-c or F2 for a command-line or ESC to discard " -"edits and return to the GRUB menu." -msgstr "" -"مִينִيموم عماصس-لִيكع سصرععن عدִيتִينغ ִيس سوپ‎پ‎ورتعد. تاب لִيستس صومپ‎لعتִيونس. پ‎رعسس " -"صترل-كس ور Ù10 تو بووت, صترل-ص ور Ù2 Ùور ا صومماند-لִينع ور عسص تو دִيسصارد " -"عدִيتس اند رعتورن تو تهع غروب معنو." - -#: grub-core/normal/menu_text.c:170 -#, c-format -msgid "Use the %C and %C keys to select which entry is highlighted." -msgstr "وسع تهع %C اند %C كعيس تو سعلعصت وهִيصه عنتري ִيس هִيغهلִيغهتعد." - -#. TRANSLATORS: that's the list of binary unit prefixes. -#: grub-core/normal/misc.c:38 -msgid "B" -msgstr "ب" - -#: grub-core/normal/misc.c:38 -msgid "KiB" -msgstr "كִيب" - -#: grub-core/normal/misc.c:38 -msgid "MiB" -msgstr "مִيب" - -#: grub-core/normal/misc.c:38 -msgid "GiB" -msgstr "غִيب" - -#: grub-core/normal/misc.c:38 -msgid "TiB" -msgstr "تִيب" - -#: grub-core/normal/misc.c:38 -msgid "PiB" -msgstr "پ‎ִيب" - -#. TRANSLATORS: that's the list of binary unit prefixes. -#: grub-core/normal/misc.c:40 -msgid "K" -msgstr "Ùƒ" - -#: grub-core/normal/misc.c:40 -msgid "M" -msgstr "Ù…" - -#: grub-core/normal/misc.c:40 -msgid "G" -msgstr "غ" - -#: grub-core/normal/misc.c:40 -msgid "T" -msgstr "ت" - -#: grub-core/normal/misc.c:40 -msgid "P" -msgstr "پ‎" - -#. TRANSLATORS: that's the list of binary unit prefixes. -#: grub-core/normal/misc.c:42 -msgid "B/s" -msgstr "ب/س" - -#: grub-core/normal/misc.c:42 -msgid "KiB/s" -msgstr "كִيب/س" - -#: grub-core/normal/misc.c:42 -msgid "MiB/s" -msgstr "مִيب/س" - -#: grub-core/normal/misc.c:42 -msgid "GiB/s" -msgstr "غִيب/س" - -#: grub-core/normal/misc.c:42 -msgid "TiB/s" -msgstr "تִيب/س" - -#: grub-core/normal/misc.c:42 -msgid "PiB/s" -msgstr "پ‎ִيب/س" - -#: grub-core/normal/misc.c:96 -#, c-format -msgid "Partition %s:" -msgstr "پ‎ارتִيتִيون %s:" - -#: grub-core/normal/misc.c:101 -#, c-format -msgid "Device %s:" -msgstr "دعوִيصع %s:" - -#: grub-core/normal/misc.c:107 -msgid "Filesystem cannot be accessed" -msgstr "Ùִيلعسيستعم صاننوت بع اصصعسسعد" - -#: grub-core/normal/misc.c:121 -#, c-format -msgid "Filesystem type %s" -msgstr "Ùִيلعسيستعم تيپ‎ع %s" - -#: grub-core/normal/misc.c:131 -#, c-format -msgid "- Label `%s'" -msgstr "- لابعل `%s'" - -#. TRANSLATORS: Arguments are year, month, day, hour, minute, -#. second, day of the week (translated). -#: grub-core/normal/misc.c:148 -#, c-format -msgid "- Last modification time %d-%02d-%02d %02d:%02d:%02d %s" -msgstr "- لاست مودִيÙִيصاتִيون تִيمع %d-%02d-%02d %02d:%02d:%02d %s" - -#: grub-core/normal/misc.c:171 -msgid "No known filesystem detected" -msgstr "نو كنوون Ùִيلعسيستعم دعتعصتعد" - -#: grub-core/normal/misc.c:174 -#, c-format -msgid " - Partition start at %llu%sKiB" -msgstr " - پ‎ارتִيتִيون ستارت ات %llu%sكִيب" - -#: grub-core/normal/misc.c:178 -#, c-format -msgid " - Sector size %uB" -msgstr " - سعصتور سִيزع %uب" - -#: grub-core/normal/misc.c:180 -msgid " - Total size unknown" -msgstr " - توتال سִيزع ونكنوون" - -#: grub-core/normal/misc.c:182 -#, c-format -msgid " - Total size %llu%sKiB" -msgstr " - توتال سִيزع %llu%sكִيب" - -#. TRANSLATORS: Replace dot with appropriate decimal separator for -#. your language. -#: grub-core/normal/misc.c:186 -msgid ".5" -msgstr ".5" - -#. TRANSLATORS: This has to fit on one line. It's ok to include few -#. words but don't write poems. -#: grub-core/normal/term.c:82 -msgid "--MORE--" -msgstr "--مورع--" - -#: grub-core/osdep/aros/config.c:92 grub-core/osdep/unix/config.c:137 -#: grub-core/osdep/windows/config.c:55 -#, c-format -msgid "cannot open configuration file `%s': %s" -msgstr "صاننوت وپ‎عن صونÙִيغوراتִيون Ùִيلع `%s': %s" - -#: grub-core/osdep/basic/compress.c:8 grub-core/osdep/basic/compress.c:14 -#: grub-core/osdep/basic/compress.c:20 -msgid "no compression is available for your platform" -msgstr "نو صومپ‎رعسسִيون ִيس اواִيلابلع Ùور يوور پ‎لاتÙورم" - -#: grub-core/osdep/basic/no_platform.c:30 -#: grub-core/osdep/windows/platform.c:418 -msgid "no IEEE1275 routines are available for your platform" -msgstr "نو ִيععع1275 رووتִينعس ارع اواִيلابلع Ùور يوور پ‎لاتÙورم" - -#: grub-core/osdep/basic/no_platform.c:38 -msgid "no EFI routines are available for your platform" -msgstr "نو عÙÖ´ÙŠ رووتִينعس ارع اواִيلابلع Ùور يوور پ‎لاتÙورم" - -#: grub-core/osdep/basic/no_platform.c:45 -#: grub-core/osdep/windows/platform.c:425 -msgid "no SGI routines are available for your platform" -msgstr "نو سغִي رووتִينعس ارع اواִيلابلع Ùور يوور پ‎لاتÙورم" - -#. TRANSLATORS: The OS itself may very well have a random -#. number generator but GRUB doesn't know how to access it. -#: grub-core/osdep/basic/random.c:42 -msgid "no random number generator is available for your OS" -msgstr "نو راندوم نومبعر غعنعراتور ִيس اواִيلابلع Ùور يوور وس" - -#: grub-core/osdep/devmapper/getroot.c:81 -msgid "Failed to create `device-mapper' tree" -msgstr "ÙØ§Ö´ÙŠÙ„عد تو صرعاتع `دعوִيصع-ماپ‎پ‎عر' ترعع" - -#: grub-core/osdep/devmapper/getroot.c:197 -#: grub-core/osdep/freebsd/getroot.c:202 -#, c-format -msgid "can't mount encrypted volume `%s': %s" -msgstr "صان'ت موونت عنصريپ‎تعد وولومع `%s': %s" - -#. TRANSLATORS: geom is the name of (k)FreeBSD device framework. -#. Usually left untranslated. -#. -#: grub-core/osdep/freebsd/getroot.c:82 grub-core/osdep/freebsd/getroot.c:164 -#: grub-core/osdep/freebsd/getroot.c:258 grub-core/osdep/freebsd/getroot.c:316 -msgid "couldn't open geom" -msgstr "صوولدن'ت وپ‎عن غعوم" - -#: grub-core/osdep/freebsd/getroot.c:182 grub-core/osdep/freebsd/getroot.c:277 -msgid "couldn't find geli consumer" -msgstr "صوولدن'ت Ùִيند غعلִي صونسومعر" - -#: grub-core/osdep/freebsd/getroot.c:282 -msgid "couldn't retrieve geli UUID" -msgstr "صوولدن'ت رعترִيعوع غعلִي ووִيد" - -#. TRANSLATORS: geom is the name of (k)FreeBSD device framework. -#. Usually left untranslated. "part" is the identifier of one of its -#. classes. -#: grub-core/osdep/freebsd/getroot.c:325 -msgid "couldn't find geom `part' class" -msgstr "صوولدن'ت Ùִيند غعوم `پ‎ارت' صلاسس" - -#: grub-core/osdep/freebsd/hostdisk.c:72 grub-core/osdep/linux/hostdisk.c:93 -msgid "unaligned device size" -msgstr "ونالִيغنعد دعوִيصع سִيزع" - -#: grub-core/osdep/generic/blocklist.c:56 -#, c-format -msgid "attempting to read the core image `%s' from GRUB" -msgstr "اتتعمپ‎تִينغ تو رعاد تهع صورع ִيماغع `%s' ÙØ±ÙˆÙ… غروب" - -#: grub-core/osdep/generic/blocklist.c:57 -#, c-format -msgid "attempting to read the core image `%s' from GRUB again" -msgstr "اتتعمپ‎تִينغ تو رعاد تهع صورع ִيماغع `%s' ÙØ±ÙˆÙ… غروب اغاִين" - -#: grub-core/osdep/generic/blocklist.c:115 -#, c-format -msgid "cannot read `%s' correctly" -msgstr "صاننوت رعاد `%s' صوررعصتلي" - -#: grub-core/osdep/generic/blocklist.c:126 -msgid "failed to read the sectors of the core image" -msgstr "ÙØ§Ö´ÙŠÙ„عد تو رعاد تهع سعصتورس و٠تهع صورع ִيماغع" - -#. TRANSLATORS: On GNU/Hurd, a "translator" is similar to a filesystem -#. mount, but handled by a userland daemon, whose invocation command line -#. is being fetched here. First %s is the file being looked at (for which -#. we are fetching the "translator" command line), second %s is the error -#. message. -#. -#: grub-core/osdep/hurd/getroot.c:79 -#, c-format -msgid "cannot get translator command line for path `%s': %s" -msgstr "صاننوت غعت ترانسلاتور صومماند لִينع Ùور پ‎اته `%s': %s" - -#: grub-core/osdep/hurd/getroot.c:82 -#, c-format -msgid "translator command line is empty for path `%s'" -msgstr "ترانسلاتور صومماند لִينع ִيس عمپ‎تي Ùور پ‎اته `%s'" - -#. TRANSLATORS: we expect to get something like -#. /hurd/foobar --option1 --option2=baz /dev/something -#. -#: grub-core/osdep/hurd/getroot.c:98 -#, c-format -msgid "" -"translator `%s' for path `%s' has several non-option words, at least `%s' " -"and `%s'" -msgstr "" -"ترانسلاتور `%s' Ùور پ‎اته `%s' هاس سعوعرال نون-وپ‎تִيون ووردس, ات لعاست `%s' " -"اند `%s'" - -#. TRANSLATORS: we expect to get something like -#. /hurd/foobar --option1 --option2=baz /dev/something -#. -#: grub-core/osdep/hurd/getroot.c:109 -#, c-format -msgid "" -"translator `%s' for path `%s' is given only options, cannot find device part" -msgstr "" -"ترانسلاتور `%s' Ùور پ‎اته `%s' ִيس غִيوعن ونلي وپ‎تִيونس, صاننوت Ùִيند دعوִيصع پ‎ارت" - -#: grub-core/osdep/hurd/hostdisk.c:73 -#, c-format -msgid "Storage information for `%s' does not include type" -msgstr "ستوراغع ִينÙورماتִيون Ùور `%s' دوعس نوت ִينصلودع تيپ‎ع" - -#: grub-core/osdep/hurd/hostdisk.c:75 -#, c-format -msgid "`%s' is not a local disk" -msgstr "`%s' ִيس نوت ا لوصال دִيسك" - -#: grub-core/osdep/hurd/hostdisk.c:78 -#, c-format -msgid "" -"Storage information for `%s' indicates neither a plain partition nor a plain " -"disk" -msgstr "" -"ستوراغع ִينÙورماتִيون Ùور `%s' ִيندִيصاتعس نعִيتهعر ا پ‎لاִين پ‎ارتִيتִيون نور ا پ‎لاִين " -"دִيسك" - -#: grub-core/osdep/linux/blocklist.c:81 grub-core/osdep/linux/blocklist.c:96 -#: grub-core/osdep/linux/blocklist.c:122 -#, c-format -msgid "can't retrieve blocklists: %s" -msgstr "صان'ت رعترִيعوع بلوصكلִيستس: %s" - -#: grub-core/osdep/linux/blocklist.c:84 -msgid "blocksize is not divisible by 512" -msgstr "بلوصكسִيزع ִيس نوت دִيوִيسִيبلع بي 512" - -#: grub-core/osdep/linux/blocklist.c:86 -msgid "invalid zero blocksize" -msgstr "ִينوالִيد زعرو بلوصكسִيزع" - -#: grub-core/osdep/linux/blocklist.c:90 util/setup.c:744 -msgid "can't retrieve blocklists" -msgstr "صان'ت رعترִيعوع بلوصكلִيستس" - -#: grub-core/osdep/linux/getroot.c:154 -#, c-format -msgid "ioctl RAID_VERSION error: %s" -msgstr "ִيوصتل راִيد_وعرسִيون عررور: %s" - -#: grub-core/osdep/linux/getroot.c:160 grub-core/osdep/linux/getroot.c:164 -#, c-format -msgid "unsupported RAID version: %d.%d" -msgstr "ونسوپ‎پ‎ورتعد راִيد وعرسִيون: %d.%d" - -#: grub-core/osdep/linux/getroot.c:169 -#, c-format -msgid "ioctl GET_ARRAY_INFO error: %s" -msgstr "ִيوصتل غعت_ارراي_ִينÙÙˆ عررور: %s" - -#: grub-core/osdep/linux/getroot.c:178 -#, c-format -msgid "ioctl GET_DISK_INFO error: %s" -msgstr "ִيوصتل غعت_دִيسك_ִينÙÙˆ عررور: %s" - -#: grub-core/osdep/linux/getroot.c:608 grub-core/osdep/linux/getroot.c:678 -#: grub-core/osdep/linux/hostdisk.c:126 grub-core/osdep/unix/getroot.c:253 -#: grub-core/osdep/unix/getroot.c:642 grub-core/osdep/unix/platform.c:92 -#: grub-core/osdep/unix/platform.c:100 -#, c-format -msgid "Unable to open stream from %s: %s" -msgstr "ونابلع تو وپ‎عن سترعام ÙØ±ÙˆÙ… %s: %s" - -#: grub-core/osdep/linux/getroot.c:1033 -#, c-format -msgid "unknown kind of RAID device `%s'" -msgstr "ونكنوون كִيند و٠راִيد دعوִيصع `%s'" - -#: grub-core/osdep/linux/ofpath.c:181 -#, c-format -msgid "`obppath' not found in parent dirs of `%s', no IEEE1275 name discovery" -msgstr "`وبپ‎پ‎اته' نوت Ùووند ִين پ‎ارعنت دִيرس ÙˆÙ `%s', نو ִيععع1275 نامع دִيسصووعري" - -#: grub-core/osdep/linux/ofpath.c:222 grub-core/osdep/unix/getroot.c:505 -#: grub-core/osdep/unix/getroot.c:529 grub-core/osdep/unix/relpath.c:49 -#: util/grub-install.c:984 util/grub-install.c:1331 util/grub-probe.c:323 -#, c-format -msgid "failed to get canonical path of `%s'" -msgstr "ÙØ§Ö´ÙŠÙ„عد تو غعت صانونִيصال پ‎اته ÙˆÙ `%s'" - -#: grub-core/osdep/linux/ofpath.c:740 -#, c-format -msgid "unknown device type %s" -msgstr "ونكنوون دعوִيصع تيپ‎ع %s" - -#: grub-core/osdep/linux/ofpath.c:758 util/ieee1275/grub-ofpathname.c:39 -#, c-format -msgid "Usage: %s DEVICE\n" -msgstr "وساغع: %s دعوִيصع\n" - -#: grub-core/osdep/unix/exec.c:86 grub-core/osdep/unix/exec.c:172 -#: grub-core/osdep/unix/exec.c:217 -#, c-format -msgid "Unable to fork: %s" -msgstr "ونابلع تو Ùورك: %s" - -#: grub-core/osdep/unix/exec.c:166 grub-core/osdep/unix/exec.c:211 -#, c-format -msgid "Unable to create pipe: %s" -msgstr "ونابلع تو صرعاتع پ‎ִيپ‎ع: %s" - -#: grub-core/osdep/unix/getroot.c:370 -msgid "cannot save the original directory" -msgstr "صاننوت ساوع تهع ورִيغִينال دִيرعصتوري" - -#: grub-core/osdep/unix/getroot.c:423 grub-core/osdep/unix/getroot.c:480 -#: grub-core/osdep/unix/getroot.c:489 -msgid "cannot restore the original directory" -msgstr "صاننوت رعستورع تهع ورִيغִينال دִيرعصتوري" - -#. TRANSLATORS: "stat" comes from the name of POSIX function. -#: grub-core/osdep/unix/getroot.c:551 grub-core/osdep/unix/hostdisk.c:61 -#: grub-core/osdep/unix/relpath.c:73 grub-core/osdep/unix/relpath.c:97 -#: util/getroot.c:160 util/getroot.c:162 util/grub-install.c:774 -#: util/grub-macbless.c:70 -#, c-format -msgid "cannot stat `%s': %s" -msgstr "صاننوت ستات `%s': %s" - -#: grub-core/osdep/unix/hostdisk.c:293 -#, c-format -msgid "cannot make temporary file: %s" -msgstr "صاننوت ماكع تعمپ‎وراري Ùִيلع: %s" - -#: grub-core/osdep/unix/hostdisk.c:311 -#, c-format -msgid "cannot make temporary directory: %s" -msgstr "صاننوت ماكع تعمپ‎وراري دִيرعصتوري: %s" - -#: grub-core/osdep/unix/platform.c:77 -#, c-format -msgid "" -"couldn't find IEEE1275 device path for %s.\n" -"You will have to set `boot-device' variable manually" -msgstr "" -"صوولدن'ت Ùִيند ִيععع1275 دعوִيصع پ‎اته Ùور %s.\n" -"يوو وִيلل هاوع تو سعت `بووت-دعوִيصع' وارִيابلع مانواللي" - -#. TRANSLATORS: This message is shown when required executable `%s' -#. isn't found. -#: grub-core/osdep/unix/platform.c:149 grub-core/osdep/unix/platform.c:189 -#, c-format -msgid "%s: not found" -msgstr "%s: نوت Ùووند" - -#: grub-core/osdep/unix/platform.c:225 -#, c-format -msgid "" -"`nvsetenv' failed. \n" -"You will have to set `boot-device' variable manually. At the IEEE1275 " -"prompt, type:\n" -" %s\n" -msgstr "" -"`نوسعتعنو' ÙØ§Ö´ÙŠÙ„عد. \n" -"يوو وִيلل هاوع تو سعت `بووت-دعوִيصع' وارִيابلع مانواللي. ات تهع ִيععع1275 " -"پ‎رومپ‎ت, تيپ‎ع:\n" -" %s\n" - -#: grub-core/osdep/unix/platform.c:240 -msgid "You will have to set `SystemPartition' and `OSLoader' manually." -msgstr "يوو وִيلل هاوع تو سعت `سيستعمپ‎ارتִيتִيون' اند `وسلوادعر' مانواللي." - -#. TRANSLATORS: canonical pathname is the -#. complete one e.g. /etc/fstab. It has -#. to contain `/' normally, if it doesn't -#. we're in trouble and throw this error. -#: grub-core/osdep/unix/relpath.c:90 -msgid "no `/' in canonical filename" -msgstr "نو `/' ִين صانونִيصال Ùִيلعنامع" - -#: grub-core/osdep/windows/hostdisk.c:151 -msgid "cygwin_conv_path() failed" -msgstr "صيغوִين_صونو_پ‎اته() ÙØ§Ö´ÙŠÙ„عد" - -#: grub-core/osdep/windows/hostdisk.c:501 util/grub-install.c:570 -msgid "couldn't retrieve random data" -msgstr "صوولدن'ت رعترִيعوع راندوم داتا" - -#: grub-core/osdep/windows/platform.c:97 -msgid "Insufficient privileges to access firmware, assuming BIOS" -msgstr "ִينسوÙÙִيصִيعنت پ‎رִيوִيلعغعس تو اصصعسس Ùִيرموارع, اسسومִينغ بִيوس" - -#: grub-core/osdep/windows/platform.c:225 -msgid "no EFI routines are available when running in BIOS mode" -msgstr "نو عÙÖ´ÙŠ رووتִينعس ارع اواִيلابلع وهعن روننִينغ ִين بִيوس مودع" - -#: grub-core/osdep/windows/platform.c:240 -msgid "unexpected EFI error" -msgstr "ونعكسپ‎عصتعد عÙÖ´ÙŠ عررور" - -#: grub-core/osdep/windows/platform.c:315 -msgid "Couldn't find a free BootNNNN slot" -msgstr "صوولدن'ت Ùִيند ا ÙØ±Ø¹Ø¹ بووتنننن سلوت" - -#: grub-core/partmap/gpt.c:191 -msgid "" -"this GPT partition label contains no BIOS Boot Partition; embedding won't be " -"possible" -msgstr "" -"تهִيس غپ‎ت پ‎ارتִيتִيون لابعل صونتاִينس نو بִيوس بووت پ‎ارتִيتִيون; عمبعددִينغ وون'ت بع " -"پ‎وسسִيبلع" - -#: grub-core/partmap/gpt.c:196 -msgid "your BIOS Boot Partition is too small; embedding won't be possible" -msgstr "يوور بִيوس بووت پ‎ارتִيتִيون ִيس توو سمالل; عمبعددִينغ وون'ت بع پ‎وسسִيبلع" - -#. TRANSLATORS: MBR gap and boot track is the same thing and is the space -#. between MBR and first partitition. If your language translates well only -#. "boot track", you can just use it everywhere. Next two messages are about -#. RAID controllers/software bugs which GRUB has to live with. Please spread -#. the message that these are bugs in other software and not merely -#. suboptimal behaviour. -#: grub-core/partmap/msdos.c:51 -#, c-format -msgid "" -"Sector %llu is already in use by raid controller `%s'; avoiding it. Please " -"ask the manufacturer not to store data in MBR gap" -msgstr "" -"سعصتور %llu ִيس الرعادي ִين وسع بي راִيد صونتروللعر `%s'; اووִيدִينغ ִيت. پ‎لعاسع " -"اسك تهع Ù…Ø§Ù†ÙˆÙØ§ØµØªÙˆØ±Ø¹Ø± نوت تو ستورع داتا ִين مبر غاپ‎" - -#: grub-core/partmap/msdos.c:54 -#, c-format -msgid "" -"Sector %llu is already in use by the program `%s'; avoiding it. This " -"software may cause boot or other problems in future. Please ask its authors " -"not to store data in the boot track" -msgstr "" -"سعصتور %llu ִيس الرعادي ִين وسع بي تهع پ‎روغرام `%s'; اووִيدִينغ ִيت. تهִيس " -"Ø³ÙˆÙØªÙˆØ§Ø±Ø¹ ماي صاوسع بووت ور وتهعر پ‎روبلعمس ִين Ùوتورع. پ‎لعاسع اسك ִيتس اوتهورس " -"نوت تو ستورع داتا ִين تهع بووت تراصك" - -#: grub-core/partmap/msdos.c:384 -msgid "" -"other software is using the embedding area, and there is not enough room for " -"core.img. Such software is often trying to store data in a way that avoids " -"detection. We recommend you investigate" -msgstr "" -"وتهعر Ø³ÙˆÙØªÙˆØ§Ø±Ø¹ ִيس وسִينغ تهع عمبعددִينغ ارعا, اند تهعرع ִيس نوت عنووغه رووم Ùور " -"صورع.ִيمغ. سوصه Ø³ÙˆÙØªÙˆØ§Ø±Ø¹ ִيس ÙˆÙØªØ¹Ù† تريִينغ تو ستورع داتا ִين ا واي تهات اووִيدس " -"دعتعصتִيون. وع رعصوممعند يوو ִينوعستִيغاتع" - -#: grub-core/partmap/msdos.c:395 -msgid "" -"this msdos-style partition label has no post-MBR gap; embedding won't be " -"possible" -msgstr "" -"تهִيس مسدوس-ستيلع پ‎ارتִيتִيون لابعل هاس نو پ‎وست-مبر غاپ‎; عمبعددִينغ وون'ت بع " -"پ‎وسسִيبلع" - -#: grub-core/partmap/msdos.c:404 -msgid "your embedding area is unusually small. core.img won't fit in it." -msgstr "يوور عمبعددִينغ ارعا ִيس ونوسواللي سمالل. صورع.ִيمغ وون'ت Ùִيت ִين ִيت." - -#: grub-core/parttool/msdospart.c:39 -msgid "Make partition active" -msgstr "ماكع پ‎ارتִيتִيون اصتִيوع" - -#: grub-core/parttool/msdospart.c:51 -msgid "not a primary partition" -msgstr "نوت ا پ‎رִيماري پ‎ارتִيتִيون" - -#: grub-core/parttool/msdospart.c:69 -#, c-format -msgid "Partition %d is active now. \n" -msgstr "پ‎ارتִيتִيون %d ִيس اصتִيوع نوو. \n" - -#: grub-core/parttool/msdospart.c:74 -#, c-format -msgid "Cleared active flag on %d. \n" -msgstr "صلعارعد اصتִيوع Ùلاغ ون %d. \n" - -#: grub-core/parttool/msdospart.c:87 -msgid "Change partition type" -msgstr "صهانغع پ‎ارتִيتִيون تيپ‎ع" - -#: grub-core/parttool/msdospart.c:88 -msgid "Set `hidden' flag in partition type" -msgstr "سعت `هִيددعن' Ùلاغ ִين پ‎ارتִيتִيون تيپ‎ع" - -#: grub-core/parttool/msdospart.c:130 -#, c-format -msgid "the partition type 0x%x isn't valid" -msgstr "تهع پ‎ارتִيتִيون تيپ‎ع 0كس%x ִيسن'ت والִيد" - -#. TRANSLATORS: In this case we're actually writing to the disk and actively -#. modifying partition type rather than just defining it. -#: grub-core/parttool/msdospart.c:137 -#, c-format -msgid "Setting partition type to 0x%x\n" -msgstr "سعتتִينغ پ‎ارتִيتִيون تيپ‎ع تو 0كس%x\n" - -#. TRANSLATORS: 0 is a quantifier. "break" (similar to bash) -#. can be used e.g. to break 3 loops at once. -#. But asking it to break 0 loops makes no sense. -#: grub-core/script/execute.c:143 -msgid "can't break 0 loops" -msgstr "صان'ت برعاك 0 لووپ‎س" - -#. TRANSLATORS: It's about not being -#. inside a function. "return" can be used only -#. in a function and this error occurs if it's used -#. anywhere else. -#: grub-core/script/execute.c:227 -msgid "not in function body" -msgstr "نوت ִين Ùونصتִيون بودي" - -#: grub-core/script/execute.c:371 -#, c-format -msgid "invalid variable name `%s'" -msgstr "ִينوالִيد وارִيابلع نامع `%s'" - -#: grub-core/script/execute.c:953 -msgid "cannot allocate command buffer" -msgstr "صاننوت اللوصاتع صومماند بوÙÙØ¹Ø±" - -#: grub-core/script/lexer.c:144 util/grub-fstest.c:330 -msgid "unexpected end of file" -msgstr "ونعكسپ‎عصتعد عند ÙˆÙ Ùִيلع" - -#: grub-core/script/main.c:55 grub-core/script/main.c:57 -#: grub-core/script/main.c:59 grub-core/script/main.c:67 -msgid "[NUM]" -msgstr "[نوم]" - -#: grub-core/script/main.c:55 -msgid "Exit from loops" -msgstr "عكسִيت ÙØ±ÙˆÙ… لووپ‎س" - -#: grub-core/script/main.c:57 -msgid "Continue loops" -msgstr "صونتִينوع لووپ‎س" - -#. TRANSLATORS: Positional arguments are -#. arguments $0, $1, $2, ... -#: grub-core/script/main.c:62 -msgid "Shift positional parameters." -msgstr "Ø³Ù‡Ö´ÙŠÙØª پ‎وسִيتִيونال پ‎ارامعتعرس." - -#: grub-core/script/main.c:64 -msgid "[VALUE]..." -msgstr "[والوع]..." - -#: grub-core/script/main.c:65 -msgid "Set positional parameters." -msgstr "سعت پ‎وسִيتִيونال پ‎ارامعتعرس." - -#. TRANSLATORS: It's a command description -#. and "Return" is a verb, not a noun. The -#. command in question is "return" and -#. has exactly the same semanics as bash -#. equivalent. -#: grub-core/script/main.c:73 -msgid "Return from a function." -msgstr "رعتورن ÙØ±ÙˆÙ… ا Ùونصتִيون." - -#: grub-core/term/gfxterm_background.c:176 -msgid "[-m (stretch|normal)] FILE" -msgstr "[-Ù… (سترعتصه|نورمال)] Ùִيلع" - -#: grub-core/term/gfxterm_background.c:177 -msgid "Load background image for active terminal." -msgstr "لواد باصكغرووند ִيماغع Ùور اصتִيوع تعرمִينال." - -#: grub-core/term/gfxterm_background.c:182 util/grub-install.c:302 -#: util/grub-install.c:303 util/grub-mkrescue.c:107 util/grub-mkrescue.c:108 -#: util/grub-render-label.c:61 util/grub-render-label.c:63 -msgid "COLOR" -msgstr "صولور" - -#: grub-core/term/gfxterm_background.c:183 -msgid "Set background color for active terminal." -msgstr "سعت باصكغرووند صولور Ùور اصتִيوع تعرمִينال." - -#: grub-core/term/i386/coreboot/cbmemc.c:139 -msgid "Show CBMEM console content." -msgstr "سهوو صبمعم صونسولع صونتعنت." - -#: grub-core/term/serial.c:57 -msgid "Set the serial unit." -msgstr "سعت تهع سعرִيال ونִيت." - -#: grub-core/term/serial.c:58 -msgid "Set the serial port address." -msgstr "سعت تهع سعرִيال پ‎ورت اددرعسس." - -#: grub-core/term/serial.c:59 -msgid "Set the serial port speed." -msgstr "سعت تهع سعرִيال پ‎ورت سپ‎ععد." - -#: grub-core/term/serial.c:60 -msgid "Set the serial port word length." -msgstr "سعت تهع سعرִيال پ‎ورت وورد لعنغته." - -#: grub-core/term/serial.c:61 -msgid "Set the serial port parity." -msgstr "سعت تهع سعرִيال پ‎ورت پ‎ارִيتي." - -#: grub-core/term/serial.c:62 -msgid "Set the serial port stop bits." -msgstr "سعت تهع سعرִيال پ‎ورت ستوپ‎ بִيتس." - -#: grub-core/term/serial.c:63 -msgid "Set the base frequency." -msgstr "سعت تهع باسع ÙØ±Ø¹Ù‚وعنصي." - -#: grub-core/term/serial.c:64 -msgid "Enable/disable RTS/CTS." -msgstr "عنابلع/دִيسابلع رتس/صتس." - -#: grub-core/term/serial.c:218 -#, c-format -msgid "serial port `%s' isn't found" -msgstr "سعرִيال پ‎ورت `%s' ִيسن'ت Ùووند" - -#: grub-core/term/serial.c:254 -msgid "unsupported serial port flow control" -msgstr "ونسوپ‎پ‎ورتعد سعرִيال پ‎ورت Ùلوو صونترول" - -#: grub-core/term/serial.c:429 -msgid "[OPTIONS...]" -msgstr "[وپ‎تִيونس...]" - -#: grub-core/term/serial.c:430 -msgid "Configure serial port." -msgstr "صونÙִيغورع سعرִيال پ‎ورت." - -#: grub-core/term/terminfo.c:184 -#, c-format -msgid "unknown terminfo type `%s'" -msgstr "ونكنوون تعرمִينÙÙˆ تيپ‎ع `%s'" - -#: grub-core/term/terminfo.c:668 -msgid "ASCII" -msgstr "اسصִيִي" - -#: grub-core/term/terminfo.c:671 -msgid "UTF-8" -msgstr "وتÙ-8" - -#. TRANSLATORS: visually ordered UTF-8 is a non-compliant encoding -#. based on UTF-8 with right-to-left languages written in reverse. -#. Used on some terminals. Normal UTF-8 is refered as -#. "logically-ordered UTF-8" by opposition. -#: grub-core/term/terminfo.c:677 -msgid "visually-ordered UTF-8" -msgstr "وִيسواللي-وردعرعد وتÙ-8" - -#: grub-core/term/terminfo.c:680 -msgid "Unknown encoding" -msgstr "ونكنوون عنصودִينغ" - -#: grub-core/term/terminfo.c:684 -msgid "Current terminfo types:" -msgstr "صوررعنت تعرمִينÙÙˆ تيپ‎عس:" - -#: grub-core/term/terminfo.c:699 -msgid "Terminal is ASCII-only [default]." -msgstr "تعرمִينال ִيس اسصִيִي-ونلي [Ø¯Ø¹ÙØ§ÙˆÙ„ت]." - -#: grub-core/term/terminfo.c:700 -msgid "Terminal is logical-ordered UTF-8." -msgstr "تعرمִينال ִيس لوغִيصال-وردعرعد وتÙ-8." - -#: grub-core/term/terminfo.c:701 -msgid "Terminal is visually-ordered UTF-8." -msgstr "تعرمִينال ִيس وִيسواللي-وردعرعد وتÙ-8." - -#: grub-core/term/terminfo.c:703 -msgid "Terminal has specified geometry." -msgstr "تعرمִينال هاس سپ‎عصִيÙִيعد غعومعتري." - -#. TRANSLATORS: "x" has to be entered in, like an identifier, so please don't -#. use better Unicode codepoints. -#: grub-core/term/terminfo.c:706 -msgid "WIDTHxHEIGHT." -msgstr "وִيدتهكسهعִيغهت." - -#: grub-core/term/terminfo.c:746 -msgid "incorrect terminal dimensions specification" -msgstr "ִينصوررعصت تعرمִينال دִيمعنسִيونس سپ‎عصִيÙִيصاتִيون" - -#: grub-core/term/terminfo.c:776 -#, c-format -msgid "terminal %s isn't found or it's not handled by terminfo" -msgstr "تعرمִينال %s ִيسن'ت Ùووند ور ִيت'س نوت هاندلعد بي تعرمִينÙÙˆ" - -#: grub-core/term/terminfo.c:785 -msgid "[[-a|-u|-v] [-g WxH] TERM [TYPE]]" -msgstr "[[-ا|-Ùˆ|-Ùˆ] [-غ وكسه] تعرم [تيپ‎ع]]" - -#: grub-core/term/terminfo.c:786 -msgid "Set terminfo type of TERM to TYPE.\n" -msgstr "سعت تعرمִينÙÙˆ تيپ‎ع و٠تعرم تو تيپ‎ع.\n" - -#. TRANSLATORS: this is the BLOCK-argument, not -#. environment block. -#: grub-core/tests/test_blockarg.c:49 -msgid "Print and execute block argument." -msgstr "پ‎رִينت اند عكسعصوتع بلوصك ارغومعنت." - -#. TRANSLATORS: We're speaking about bitmap images like -#. JPEG or PNG. -#: grub-core/video/bitmap.c:209 -#, c-format -msgid "bitmap file `%s' is of unsupported format" -msgstr "بִيتماپ‎ Ùִيلع `%s' ִيس و٠ونسوپ‎پ‎ورتعد Ùورمات" - -#: grub-core/video/i386/pc/vbe.c:1191 -#, c-format -msgid " VBE info: version: %d.%d OEM software rev: %d.%d\n" -msgstr " وبع ִينÙÙˆ: وعرسִيون: %d.%d وعم Ø³ÙˆÙØªÙˆØ§Ø±Ø¹ رعو: %d.%d\n" - -#: grub-core/video/i386/pc/vbe.c:1198 -#, c-format -msgid " total memory: %d KiB\n" -msgstr " توتال معموري: %d كִيب\n" - -#: grub-core/video/video.c:596 grub-core/video/video.c:762 -msgid "no suitable video mode found" -msgstr "نو سوִيتابلع وִيدعو مودع Ùووند" - -#: include/grub/crypto.h:403 -msgid "access denied" -msgstr "اصصعسس دعنִيعد" - -#: include/grub/util/install.h:30 include/grub/util/install.h:35 -msgid "MODULES" -msgstr "مودولعس" - -#: include/grub/util/install.h:31 -msgid "pre-load specified modules MODULES" -msgstr "پ‎رع-لواد سپ‎عصִيÙִيعد مودولعس مودولعس" - -#: include/grub/util/install.h:33 -msgid "embed a specific DTB" -msgstr "عمبعد ا سپ‎عصִيÙִيص دتب" - -#: include/grub/util/install.h:36 -msgid "install only MODULES and their dependencies [default=all]" -msgstr "ִينستالل ونلي مودولعس اند تهعִير دعپ‎عندعنصִيعس [Ø¯Ø¹ÙØ§ÙˆÙ„ت=الل]" - -#: include/grub/util/install.h:37 -msgid "THEMES" -msgstr "تهعمعس" - -#: include/grub/util/install.h:38 -#, c-format -msgid "install THEMES [default=%s]" -msgstr "ִينستالل تهعمعس [Ø¯Ø¹ÙØ§ÙˆÙ„ت=%s]" - -#: include/grub/util/install.h:39 -msgid "FONTS" -msgstr "Ùونتس" - -#: include/grub/util/install.h:40 -#, c-format -msgid "install FONTS [default=%s]" -msgstr "ִينستالل Ùونتس [Ø¯Ø¹ÙØ§ÙˆÙ„ت=%s]" - -#: include/grub/util/install.h:41 -msgid "LOCALES" -msgstr "لوصالعس" - -#: include/grub/util/install.h:42 -msgid "install only LOCALES [default=all]" -msgstr "ִينستالل ونلي لوصالعس [Ø¯Ø¹ÙØ§ÙˆÙ„ت=الل]" - -#: include/grub/util/install.h:45 -msgid "compress GRUB files [optional]" -msgstr "صومپ‎رعسس غروب Ùִيلعس [وپ‎تִيونال]" - -#: include/grub/util/install.h:48 util/grub-mkimage.c:83 -msgid "choose the compression to use for core image" -msgstr "صهووسع تهع صومپ‎رعسسִيون تو وسع Ùور صورع ִيماغع" - -#. TRANSLATORS: platform here isn't identifier. It can be translated. -#: include/grub/util/install.h:51 include/grub/util/install.h:54 -#: util/grub-mkimage.c:66 -#, c-format -msgid "use images and modules under DIR [default=%s/]" -msgstr "وسع ִيماغعس اند مودولعس وندعر دִير [Ø¯Ø¹ÙØ§ÙˆÙ„ت=%s/<پ‎لاتÙورم>]" - -#: include/grub/util/install.h:57 -#, c-format -msgid "use translations under DIR [default=%s]" -msgstr "وسع ترانسلاتִيونس وندعر دִير [Ø¯Ø¹ÙØ§ÙˆÙ„ت=%s]" - -#: include/grub/util/install.h:60 -#, c-format -msgid "use themes under DIR [default=%s]" -msgstr "وسع تهعمعس وندعر دִير [Ø¯Ø¹ÙØ§ÙˆÙ„ت=%s]" - -#: include/grub/util/install.h:65 util/grub-mkimage.c:78 -msgid "embed FILE as public key for signature checking" -msgstr "عمبعد Ùִيلع اس پ‎وبلִيص كعي Ùور سִيغناتورع صهعصكִينغ" - -#: util/editenv.c:59 util/grub-editenv.c:201 util/grub-install-common.c:535 -#: util/grub-mkimage.c:315 util/setup.c:791 -#, c-format -msgid "cannot sync `%s': %s" -msgstr "صاننوت سينص `%s': %s" - -#: util/editenv.c:64 -#, c-format -msgid "cannot rename the file %s to %s" -msgstr "صاننوت رعنامع تهع Ùִيلع %s تو %s" - -#: util/getroot.c:402 -#, c-format -msgid "disk does not exist, so falling back to partition device %s" -msgstr "دִيسك دوعس نوت عكسִيست, سو ÙØ§Ù„لִينغ باصك تو پ‎ارتִيتִيون دعوִيصع %s" - -#: util/grub-editenv.c:45 util/grub-fstest.c:506 -msgid "Commands:" -msgstr "صومماندس:" - -#: util/grub-editenv.c:47 -msgid "Create a blank environment block file." -msgstr "صرعاتع ا بلانك عنوִيرونمعنت بلوصك Ùִيلع." - -#: util/grub-editenv.c:49 -msgid "List the current variables." -msgstr "لִيست تهع صوررعنت وارִيابلعس." - -#. TRANSLATORS: "set" is a keyword. It's a summary of "set" subcommand. -#: util/grub-editenv.c:51 -msgid "set [NAME=VALUE ...]" -msgstr "سعت [نامع=والوع ...]" - -#: util/grub-editenv.c:52 -msgid "Set variables." -msgstr "سعت وارִيابلعس." - -#. TRANSLATORS: "unset" is a keyword. It's a summary of "unset" subcommand. -#: util/grub-editenv.c:54 -msgid "unset [NAME ...]" -msgstr "ونسعت [نامع ...]" - -#: util/grub-editenv.c:55 -msgid "Delete variables." -msgstr "دعلعتع وارִيابلعس." - -#: util/grub-editenv.c:57 -msgid "Options:" -msgstr "وپ‎تִيونس:" - -#: util/grub-editenv.c:84 -msgid "You need to specify at least one command.\n" -msgstr "يوو نععد تو سپ‎عصִيÙÙŠ ات لعاست ونع صومماند.\n" - -#: util/grub-editenv.c:113 -msgid "FILENAME COMMAND" -msgstr "Ùִيلعنامع صومماند" - -#: util/grub-editenv.c:114 -msgid "Tool to edit environment block." -msgstr "توول تو عدִيت عنوִيرونمعنت بلوصك." - -#: util/grub-editenv.c:116 -#, c-format -msgid "" -"If FILENAME is `-', the default value %s is used.\n" -"\n" -"There is no `delete' command; if you want to delete the whole environment\n" -"block, use `rm %s'." -msgstr "" -"Ö´ÙŠÙ Ùִيلعنامع ִيس `-', تهع Ø¯Ø¹ÙØ§ÙˆÙ„ت والوع %s ִيس وسعد.\n" -"\n" -"تهعرع ִيس نو `دعلعتع' صومماند; ִي٠يوو وانت تو دعلعتع تهع وهولع عنوִيرونمعنت\n" -"بلوصك, وسع `رم %s'." - -#: util/grub-editenv.c:162 -msgid "invalid environment block" -msgstr "ִينوالִيد عنوִيرونمعنت بلوصك" - -#: util/grub-editenv.c:217 -#, c-format -msgid "invalid parameter %s" -msgstr "ִينوالִيد پ‎ارامعتعر %s" - -#: util/grub-editenv.c:222 -msgid "environment block too small" -msgstr "عنوִيرونمعنت بلوصك توو سمالل" - -#: util/grub-fstest.c:107 -#, c-format -msgid "disk read fails at offset %lld, length %lld" -msgstr "دִيسك رعاد ÙØ§Ö´ÙŠÙ„س ات ÙˆÙÙØ³Ø¹Øª %lld, لعنغته %lld" - -#: util/grub-fstest.c:138 -#, c-format -msgid "invalid skip value %lld" -msgstr "ִينوالִيد سكִيپ‎ والوع %lld" - -#: util/grub-fstest.c:160 util/grub-fstest.c:246 -#, c-format -msgid "read error at offset %llu: %s" -msgstr "رعاد عررور ات ÙˆÙÙØ³Ø¹Øª %llu: %s" - -#: util/grub-fstest.c:210 -#, c-format -msgid "cannot open OS file `%s': %s" -msgstr "صاننوت وپ‎عن وس Ùִيلع `%s': %s" - -#: util/grub-fstest.c:225 util/misc.c:126 -#, c-format -msgid "cannot write to the stdout: %s" -msgstr "صاننوت ورִيتع تو تهع ستدووت: %s" - -#: util/grub-fstest.c:259 -#, c-format -msgid "compare fail at offset %llu" -msgstr "صومپ‎ارع ÙØ§Ö´ÙŠÙ„ ات ÙˆÙÙØ³Ø¹Øª %llu" - -#: util/grub-fstest.c:280 util/grub-fstest.c:314 -#, c-format -msgid "OS file %s open error: %s" -msgstr "وس Ùִيلع %s وپ‎عن عررور: %s" - -#: util/grub-fstest.c:402 util/grub-mount.c:392 -#, c-format -msgid "`loopback' command fails: %s" -msgstr "`لووپ‎باصك' صومماند ÙØ§Ö´ÙŠÙ„س: %s" - -#: util/grub-fstest.c:413 util/grub-mount.c:402 -#, c-format -msgid "`cryptomount' command fails: %s" -msgstr "`صريپ‎توموونت' صومماند ÙØ§Ö´ÙŠÙ„س: %s" - -#: util/grub-fstest.c:474 util/grub-fstest.c:478 -msgid "couldn't retrieve UUID" -msgstr "صوولدن'ت رعترִيعوع ووִيد" - -#: util/grub-fstest.c:507 -msgid "ls PATH" -msgstr "لس پ‎اته" - -#: util/grub-fstest.c:507 -msgid "List files in PATH." -msgstr "لִيست Ùִيلعس ִين پ‎اته." - -#: util/grub-fstest.c:508 -msgid "cp FILE LOCAL" -msgstr "صپ‎ Ùִيلع لوصال" - -#: util/grub-fstest.c:508 -msgid "Copy FILE to local file LOCAL." -msgstr "صوپ‎ي Ùִيلع تو لوصال Ùִيلع لوصال." - -#: util/grub-fstest.c:509 -msgid "cat FILE" -msgstr "صات Ùִيلع" - -#: util/grub-fstest.c:509 -msgid "Copy FILE to standard output." -msgstr "صوپ‎ي Ùִيلع تو ستاندارد ووتپ‎وت." - -#: util/grub-fstest.c:510 -msgid "cmp FILE LOCAL" -msgstr "صمپ‎ Ùִيلع لوصال" - -#: util/grub-fstest.c:510 -msgid "Compare FILE with local file LOCAL." -msgstr "صومپ‎ارع Ùִيلع وִيته لوصال Ùִيلع لوصال." - -#: util/grub-fstest.c:511 -msgid "hex FILE" -msgstr "هعكس Ùִيلع" - -#: util/grub-fstest.c:511 -msgid "Show contents of FILE in hex." -msgstr "سهوو صونتعنتس ÙˆÙ Ùִيلع ִين هعكس." - -#: util/grub-fstest.c:512 -msgid "crc FILE" -msgstr "صرص Ùִيلع" - -#: util/grub-fstest.c:512 -msgid "Get crc32 checksum of FILE." -msgstr "غعت صرص32 صهعصكسوم ÙˆÙ Ùִيلع." - -#: util/grub-fstest.c:513 -msgid "blocklist FILE" -msgstr "بلوصكلִيست Ùִيلع" - -#: util/grub-fstest.c:513 -msgid "Display blocklist of FILE." -msgstr "دִيسپ‎لاي بلوصكلִيست ÙˆÙ Ùִيلع." - -#: util/grub-fstest.c:514 -msgid "xnu_uuid DEVICE" -msgstr "كسنو_ووִيد دعوִيصع" - -#: util/grub-fstest.c:514 -msgid "Compute XNU UUID of the device." -msgstr "صومپ‎وتع كسنو ووִيد و٠تهع دعوִيصع." - -#. TRANSLATORS: bitmaps are images like e.g. in JPEG. -#: util/grub-fstest.c:517 util/grub-fstest.c:518 util/grub-fstest.c:519 -#: util/grub-mkfont.c:938 util/grub-mkfont.c:951 util/grub-mkfont.c:952 -#: util/grub-mkpasswd-pbkdf2.c:46 util/grub-mkpasswd-pbkdf2.c:47 -#: util/grub-mkpasswd-pbkdf2.c:48 -msgid "NUM" -msgstr "نوم" - -#: util/grub-fstest.c:517 -msgid "Skip N bytes from output file." -msgstr "سكִيپ‎ Ù† بيتعس ÙØ±ÙˆÙ… ووتپ‎وت Ùִيلع." - -#: util/grub-fstest.c:518 -msgid "Handle N bytes in output file." -msgstr "هاندلع Ù† بيتعس ִين ووتپ‎وت Ùִيلع." - -#: util/grub-fstest.c:519 -msgid "Specify the number of input files." -msgstr "سپ‎عصִيÙÙŠ تهع نومبعر و٠ִينپ‎وت Ùִيلعس." - -#: util/grub-fstest.c:520 util/grub-mount.c:453 -msgid "Set debug environment variable." -msgstr "سعت دعبوغ عنوִيرونمعنت وارִيابلع." - -#: util/grub-fstest.c:521 util/grub-mount.c:454 -msgid "Mount crypto devices." -msgstr "موونت صريپ‎تو دعوִيصعس." - -#. TRANSLATORS: "prompt" is a keyword. -#: util/grub-fstest.c:524 util/grub-mount.c:457 -msgid "FILE|prompt" -msgstr "Ùִيلع|پ‎رومپ‎ت" - -#: util/grub-fstest.c:524 util/grub-mount.c:457 -msgid "Load zfs crypto key." -msgstr "لواد Ø²ÙØ³ صريپ‎تو كعي." - -#: util/grub-fstest.c:526 -msgid "Uncompress data." -msgstr "ونصومپ‎رعسس داتا." - -#: util/grub-fstest.c:605 -msgid "Invalid disk count.\n" -msgstr "ִينوالִيد دִيسك صوونت.\n" - -#. TRANSLATORS: disk count is optional but if it's there it must -#. be before disk list. So please don't imply disk count as mandatory. -#. -#: util/grub-fstest.c:613 -msgid "Disk count must precede disks list.\n" -msgstr "دִيسك صوونت موست پ‎رعصعدع دִيسكس لִيست.\n" - -#: util/grub-fstest.c:633 -msgid "No command is specified.\n" -msgstr "نو صومماند ִيس سپ‎عصִيÙִيعد.\n" - -#: util/grub-fstest.c:638 -msgid "Not enough parameters to command.\n" -msgstr "نوت عنووغه پ‎ارامعتعرس تو صومماند.\n" - -#: util/grub-fstest.c:711 -#, c-format -msgid "Invalid command %s.\n" -msgstr "ִينوالִيد صومماند %s.\n" - -#: util/grub-fstest.c:724 -msgid "IMAGE_PATH COMMANDS" -msgstr "ִيماغع_پ‎اته صومماندس" - -#: util/grub-fstest.c:725 util/grub-mount.c:553 -msgid "Debug tool for filesystem driver." -msgstr "دعبوغ توول Ùور Ùִيلعسيستعم درִيوعر." - -#: util/grub-glue-efi.c:53 -msgid "set input filename for 32-bit part." -msgstr "سعت ִينپ‎وت Ùִيلعنامع Ùور 32-بִيت پ‎ارت." - -#: util/grub-glue-efi.c:55 -msgid "set input filename for 64-bit part." -msgstr "سعت ִينپ‎وت Ùִيلعنامع Ùور 64-بִيت پ‎ارت." - -#: util/grub-glue-efi.c:57 util/grub-mklayout.c:55 util/grub-render-label.c:71 -msgid "set output filename. Default is STDOUT" -msgstr "سعت ووتپ‎وت Ùִيلعنامع. Ø¯Ø¹ÙØ§ÙˆÙ„ت ִيس ستدووت" - -#: util/grub-glue-efi.c:94 util/grub-mklayout.c:476 -#: util/grub-mkpasswd-pbkdf2.c:86 util/grub-render-label.c:131 -msgid "[OPTIONS]" -msgstr "[وپ‎تִيونس]" - -#: util/grub-glue-efi.c:95 -msgid "Glue 32-bit and 64-bit binary into Apple universal one." -msgstr "غلوع 32-بִيت اند 64-بִيت بִيناري ִينتو اپ‎پ‎لع ونִيوعرسال ونع." - -#: util/grub-glue-efi.c:116 -msgid "Missing input file\n" -msgstr "مִيسسִينغ ִينپ‎وت Ùִيلع\n" - -#: util/grub-install-common.c:127 util/grub-install-common.c:151 -#, c-format -msgid "cannot copy `%s' to `%s': %s" -msgstr "صاننوت صوپ‎ي `%s' تو `%s': %s" - -#: util/grub-install-common.c:147 -#, c-format -msgid "can't compress `%s' to `%s'" -msgstr "صان'ت صومپ‎رعسس `%s' تو `%s'" - -#: util/grub-install-common.c:196 util/grub-install-common.c:552 -#: util/grub-install-common.c:579 util/grub-install-common.c:621 -#, c-format -msgid "cannot open directory `%s': %s" -msgstr "صاننوت وپ‎عن دִيرعصتوري `%s': %s" - -#: util/grub-install-common.c:212 -#, c-format -msgid "cannot delete `%s': %s" -msgstr "صاننوت دعلعتع `%s': %s" - -#: util/grub-install-common.c:324 util/grub-mkimage.c:209 -msgid "grub-mkimage is compiled without XZ support" -msgstr "غروب-مكִيماغع ִيس صومپ‎ִيلعد وִيتهووت كسز سوپ‎پ‎ورت" - -#: util/grub-install-common.c:332 util/grub-mkimage.c:217 -#, c-format -msgid "Unknown compression format %s" -msgstr "ونكنوون صومپ‎رعسسִيون Ùورمات %s" - -#: util/grub-install-common.c:400 -#, c-format -msgid "Unrecognized compression `%s'" -msgstr "ونرعصوغنִيزعد صومپ‎رعسسִيون `%s'" - -#: util/grub-install-common.c:509 -#, c-format -msgid "unknown target format %s" -msgstr "ونكنوون تارغعت Ùورمات %s" - -#: util/grub-install-common.c:700 -#, c-format -msgid "cannot find locale `%s'" -msgstr "صاننوت Ùִيند لوصالع `%s'" - -#: util/grub-install-common.c:939 -#, c-format -msgid "%s doesn't exist. Please specify --target or --directory" -msgstr "%s دوعسن'ت عكسִيست. پ‎لعاسع سپ‎عصִيÙÙŠ --تارغعت ور --دִيرعصتوري" - -#: util/grub-install-common.c:948 util/grub-install-common.c:951 -#, c-format -msgid "invalid modinfo file `%s'" -msgstr "ִينوالִيد مودִينÙÙˆ Ùִيلع `%s'" - -#: util/grub-install-common.c:966 -#, c-format -msgid "Unknown platform `%s-%s'" -msgstr "ونكنوون پ‎لاتÙورم `%s-%s'" - -#: util/grub-install.c:238 -msgid "More than one install device?" -msgstr "مورع تهان ونع ִينستالل دعوִيصع?" - -#: util/grub-install.c:251 -#, c-format -msgid "" -"install GRUB images under the directory DIR/%s instead of the %s directory" -msgstr "" -"ִينستالل غروب ִيماغعس وندعر تهع دִيرعصتوري دִير/%s ִينستعاد و٠تهع %s دִيرعصتوري" - -#: util/grub-install.c:256 util/grub-probe.c:734 -msgid "TARGET" -msgstr "تارغعت" - -#. TRANSLATORS: "TARGET" as in "target platform". -#: util/grub-install.c:258 -#, c-format -msgid "install GRUB for TARGET platform [default=%s]; available targets: %s" -msgstr "ִينستالل غروب Ùور تارغعت پ‎لاتÙورم [Ø¯Ø¹ÙØ§ÙˆÙ„ت=%s]; اواִيلابلع تارغعتس: %s" - -#. TRANSLATORS: "may break" doesn't just mean that option wouldn't have any -#. effect but that it will make the resulting install unbootable from HDD. -#. TRANSLATORS: The potential breakage isn't limited to floppies but it's -#. likely to make the install unbootable from HDD. -#: util/grub-install.c:267 util/grub-setup.c:94 -msgid "" -"make the drive also bootable as floppy (default for fdX devices). May break " -"on some BIOSes." -msgstr "" -"ماكع تهع درִيوع السو بووتابلع اس Ùلوپ‎پ‎ي (Ø¯Ø¹ÙØ§ÙˆÙ„ت Ùور ÙØ¯ÙƒØ³ دعوִيصعس). ماي برعاك " -"ون سومع بִيوسعس." - -#: util/grub-install.c:270 -msgid "delete device map if it already exists" -msgstr "دعلعتع دعوִيصع ماپ‎ ִي٠ִيت الرعادي عكسִيستس" - -#: util/grub-install.c:272 util/grub-setup.c:87 -msgid "install even if problems are detected" -msgstr "ִينستالل عوعن ִي٠پ‎روبلعمس ارع دعتعصتعد" - -#: util/grub-install.c:274 -msgid "use identifier file even if UUID is available" -msgstr "وسع ִيدعنتִيÙִيعر Ùִيلع عوعن ִي٠ووִيد ִيس اواִيلابلع" - -#: util/grub-install.c:276 -msgid "" -"disk module to use (biosdisk or native). This option is only available on " -"BIOS target." -msgstr "" -"دִيسك مودولع تو وسع (بִيوسدִيسك ور ناتִيوع). تهִيس وپ‎تִيون ִيس ونلي اواִيلابلع ون " -"بִيوس تارغعت." - -#: util/grub-install.c:279 -msgid "" -"don't update the `boot-device'/`Boot*' NVRAM variables. This option is only " -"available on EFI and IEEE1275 targets." -msgstr "" -"دون'ت وپ‎داتع تهع `بووت-دعوִيصع'/`بووت*' نورام وارִيابلعس. تهִيس وپ‎تִيون ִيس ونلي " -"اواִيلابلع ون عÙÖ´ÙŠ اند ִيععع1275 تارغعتس." - -#: util/grub-install.c:282 util/grub-setup.c:89 -msgid "do not probe for filesystems in DEVICE" -msgstr "دو نوت پ‎روبع Ùور Ùִيلعسيستعمس ִين دعوִيصع" - -#: util/grub-install.c:284 -msgid "do not install bootsector" -msgstr "دو نوت ִينستالل بووتسعصتور" - -#: util/grub-install.c:286 util/grub-setup.c:96 -msgid "" -"Do not apply any reed-solomon codes when embedding core.img. This option is " -"only available on x86 BIOS targets." -msgstr "" -"دو نوت اپ‎پ‎لي اني رععد-سولومون صودعس وهعن عمبعددִينغ صورع.ִيمغ. تهִيس وپ‎تִيون ִيس " -"ونلي اواִيلابلع ون كس86 بִيوس تارغعتس." - -#: util/grub-install.c:293 -msgid "" -"the installation device is removable. This option is only available on EFI." -msgstr "" -"تهع ִينستاللاتִيون دعوִيصع ִيس رعمووابلع. تهִيس وپ‎تִيون ִيس ونلي اواִيلابلع ون عÙÖ´ÙŠ." - -#: util/grub-install.c:295 -msgid "ID" -msgstr "ִيد" - -#: util/grub-install.c:296 -msgid "the ID of bootloader. This option is only available on EFI and Macs." -msgstr "تهع ִيد و٠بووتلوادعر. تهִيس وپ‎تִيون ִيس ونلي اواִيلابلع ون عÙÖ´ÙŠ اند ماصس." - -#: util/grub-install.c:298 -msgid "use DIR as the EFI System Partition root." -msgstr "وسع دִير اس تهع عÙÖ´ÙŠ سيستعم پ‎ارتִيتִيون رووت." - -#: util/grub-install.c:300 -msgid "use DIR for PPC MAC install." -msgstr "وسع دִير Ùور پ‎پ‎ص ماص ִينستالل." - -#: util/grub-install.c:301 util/grub-mkrescue.c:106 -msgid "use FILE as font for label" -msgstr "وسع Ùִيلع اس Ùونت Ùور لابعل" - -#: util/grub-install.c:302 util/grub-mkrescue.c:107 -msgid "use COLOR for label" -msgstr "وسع صولور Ùور لابعل" - -#: util/grub-install.c:303 util/grub-mkrescue.c:108 -msgid "use COLOR for label background" -msgstr "وسع صولور Ùور لابعل باصكغرووند" - -#: util/grub-install.c:304 util/grub-mkrescue.c:110 -msgid "use STRING as product version" -msgstr "وسع سترִينغ اس پ‎رودوصت وعرسִيون" - -#: util/grub-install.c:361 -msgid "[OPTION] [INSTALL_DEVICE]" -msgstr "[وپ‎تִيون] [ִينستالل_دعوִيصع]" - -#: util/grub-install.c:362 -msgid "Install GRUB on your drive." -msgstr "ִينستالل غروب ون يوور درִيوع." - -#: util/grub-install.c:363 -#, c-format -msgid "" -"INSTALL_DEVICE must be system device filename.\n" -"%s copies GRUB images into %s. On some platforms, it may also install GRUB " -"into the boot sector." -msgstr "" -"ִينستالل_دعوִيصع موست بع سيستعم دعوִيصع Ùִيلعنامع.\n" -"%s صوپ‎ִيعس غروب ִيماغعس ִينتو %s. ون سومع پ‎لاتÙورمس, ִيت ماي السو ִينستالل غروب Ö´" -"ينتو تهع بووت سعصتور." - -#: util/grub-install.c:672 -#, c-format -msgid "the drive %s is defined multiple times in the device map %s" -msgstr "تهع درִيوع %s ִيس دعÙִينعد مولتִيپ‎لع تִيمعس ִين تهع دعوִيصع ماپ‎ %s" - -#: util/grub-install.c:878 -msgid "Unable to determine your platform. Use --target." -msgstr "ونابلع تو دعتعرمִينع يوور پ‎لاتÙورم. وسع --تارغعت." - -#: util/grub-install.c:891 -#, c-format -msgid "Installing for %s platform.\n" -msgstr "ִينستاللִينغ Ùور %s پ‎لاتÙورم.\n" - -#: util/grub-install.c:939 -msgid "install device isn't specified" -msgstr "ִينستالل دعوִيصع ִيسن'ت سپ‎عصִيÙִيعد" - -#: util/grub-install.c:1057 -msgid "cannot find EFI directory" -msgstr "صاننوت Ùִيند عÙÖ´ÙŠ دִيرعصتوري" - -#: util/grub-install.c:1060 util/grub-install.c:1209 util/grub-install.c:1254 -#: util/grub-macbless.c:76 util/grub-probe.c:329 util/setup.c:316 -#, c-format -msgid "cannot find a device for %s (is /dev mounted?)" -msgstr "صاننوت Ùִيند ا دعوִيصع Ùور %s (ִيس /دعو موونتعد?)" - -#: util/grub-install.c:1069 util/grub-install.c:1217 util/grub-install.c:1270 -#: util/grub-install.c:1365 util/grub-macbless.c:80 util/grub-probe.c:372 -#, c-format -msgid "cannot find a GRUB drive for %s. Check your device.map" -msgstr "صاننوت Ùִيند ا غروب درִيوع Ùور %s. صهعصك يوور دعوִيصع.ماپ‎" - -#: util/grub-install.c:1087 -#, c-format -msgid "%s doesn't look like an EFI partition" -msgstr "%s دوعسن'ت لووك لִيكع ان عÙÖ´ÙŠ پ‎ارتִيتִيون" - -#: util/grub-install.c:1129 util/grub-install.c:1614 -msgid "You've found a bug" -msgstr "يوو'وع Ùووند ا بوغ" - -#: util/grub-install.c:1231 -#, c-format -msgid "filesystem on %s is neither HFS nor HFS+" -msgstr "Ùִيلعسيستعم ون %s ִيس نعִيتهعر Ù‡ÙØ³ نور Ù‡ÙØ³+" - -#: util/grub-install.c:1299 -#, c-format -msgid "" -"attempt to install to encrypted disk without cryptodisk enabled. Set `%s' in " -"file `%s'" -msgstr "" -"اتتعمپ‎ت تو ִينستالل تو عنصريپ‎تعد دִيسك وִيتهووت صريپ‎تودִيسك عنابلعد. سعت `%s' ִين " -"Ùִيلع `%s'" - -#: util/grub-install.c:1410 util/grub-install.c:1772 util/grub-install.c:1872 -#, c-format -msgid "Can't create file: %s" -msgstr "صان'ت صرعاتع Ùִيلع: %s" - -#: util/grub-install.c:1491 -msgid "no hints available for your platform. Expect reduced performance" -msgstr "نو هִينتس اواִيلابلع Ùور يوور پ‎لاتÙورم. عكسپ‎عصت رعدوصعد پ‎عرÙورمانصع" - -#. TRANSLATORS: This is a prefix in the log to indicate that usually -#. a command would be executed but due to an option was skipped. -#: util/grub-install.c:1702 -msgid "NOT RUNNING: " -msgstr "نوت روننִينغ: " - -#: util/grub-install.c:1806 -msgid "the chosen partition is not a PReP partition" -msgstr "تهع صهوسعن پ‎ارتִيتִيون ִيس نوت ا پ‎رعپ‎ پ‎ارتִيتִيون" - -#: util/grub-install.c:1811 -msgid "failed to copy Grub to the PReP partition" -msgstr "ÙØ§Ö´ÙŠÙ„عد تو صوپ‎ي غروب تو تهع پ‎رعپ‎ پ‎ارتִيتִيون" - -#: util/grub-install.c:1816 -#, c-format -msgid "" -"the PReP partition is not empty. If you are sure you want to use it, run dd " -"to clear it: `%s'" -msgstr "" -"تهع پ‎رعپ‎ پ‎ارتִيتִيون ִيس نوت عمپ‎تي. ִي٠يوو ارع سورع يوو وانت تو وسع ִيت, رون دد " -"تو صلعار ִيت: `%s'" - -#: util/grub-install.c:1888 util/grub-install.c:1932 -#, c-format -msgid "efibootmgr failed to register the boot entry: %s" -msgstr "عÙִيبووتمغر ÙØ§Ö´ÙŠÙ„عد تو رعغִيستعر تهع بووت عنتري: %s" - -#: util/grub-install.c:1916 -msgid "EFI bootloader id isn't specified." -msgstr "عÙÖ´ÙŠ بووتلوادعر ִيد ִيسن'ت سپ‎عصִيÙִيعد." - -#: util/grub-install.c:1950 -msgid "WARNING: no platform-specific install was performed" -msgstr "وارنִينغ: نو پ‎لاتÙورم-سپ‎عصִيÙִيص ִينستالل واس پ‎عرÙورمعد" - -#: util/grub-install.c:1957 -msgid "Installation finished. No error reported." -msgstr "ִينستاللاتִيون Ùִينִيسهعد. نو عررور رعپ‎ورتعد." - -#: util/grub-macbless.c:101 -msgid "bless for x86-based macs" -msgstr "بلعسس Ùور كس86-باسعد ماصس" - -#: util/grub-macbless.c:103 -msgid "bless for ppc-based macs" -msgstr "بلعسس Ùور پ‎پ‎ص-باسعد ماصس" - -#: util/grub-macbless.c:136 util/grub-probe.c:823 -msgid "No path or device is specified.\n" -msgstr "نو پ‎اته ور دعوִيصع ִيس سپ‎عصִيÙִيعد.\n" - -#: util/grub-macbless.c:157 -msgid "--ppc PATH|--x86 FILE" -msgstr "--پ‎پ‎ص پ‎اته|--كس86 Ùִيلع" - -#: util/grub-macbless.c:158 -msgid "Mac-style bless on HFS or HFS+" -msgstr "ماص-ستيلع بلعسس ون Ù‡ÙØ³ ور Ù‡ÙØ³+" - -#: util/grub-menulst2cfg.c:44 -#, c-format -msgid "Usage: %s [INFILE [OUTFILE]]\n" -msgstr "وساغع: %s [ִينÙִيلع [ووتÙִيلع]]\n" - -#: util/grub-mkfont.c:157 -#, c-format -msgid "Freetype Error %d loading glyph 0x%x for U+0x%x%s" -msgstr "ÙØ±Ø¹Ø¹ØªÙŠÙ¾â€ŽØ¹ عررور %d لوادִينغ غليپ‎ه 0كس%x Ùور Ùˆ+0كس%x%s" - -#. TRANSLATORS: These qualifiers are used for cursive typography, -#. mainly Arabic. Note that the terms refer to the visual position -#. and not logical order and if used in left-to-right script then -#. leftmost is initial but with right-to-left script like Arabic -#. rightmost is the initial. -#: util/grub-mkfont.c:165 -msgid " (medial)" -msgstr " (معدִيال)" - -#: util/grub-mkfont.c:166 -msgid " (leftmost)" -msgstr " (Ù„Ø¹ÙØªÙ…وست)" - -#: util/grub-mkfont.c:167 -msgid " (rightmost)" -msgstr " (رִيغهتموست)" - -#: util/grub-mkfont.c:481 -#, c-format -msgid "Out of range substitution (%d, %d)\n" -msgstr "ووت و٠رانغع سوبستִيتوتִيون (%d, %d)\n" - -#. TRANSLATORS: "lookup" is taken directly from font specifications -#. which are formulated as "Under condition X replace LOOKUP with -#. SUBSTITUITION". " -#: util/grub-mkfont.c:506 -#, c-format -msgid "Out of range lookup: %d\n" -msgstr "ووت و٠رانغع لووكوپ‎: %d\n" - -#: util/grub-mkfont.c:514 -#, c-format -msgid "Unsupported substitution type: %d\n" -msgstr "ونسوپ‎پ‎ورتعد سوبستִيتوتִيون تيپ‎ع: %d\n" - -#: util/grub-mkfont.c:550 -#, c-format -msgid "Unsupported substitution specification: %d\n" -msgstr "ونسوپ‎پ‎ورتعد سوبستִيتوتִيون سپ‎عصִيÙִيصاتִيون: %d\n" - -#: util/grub-mkfont.c:582 -#, c-format -msgid "Unsupported coverage specification: %d\n" -msgstr "ونسوپ‎پ‎ورتعد صووعراغع سپ‎عصִيÙִيصاتִيون: %d\n" - -#: util/grub-mkfont.c:622 -#, c-format -msgid "WARNING: unsupported font feature parameters: %x\n" -msgstr "وارنִينغ: ونسوپ‎پ‎ورتعد Ùونت ÙØ¹Ø§ØªÙˆØ±Ø¹ پ‎ارامعتعرس: %x\n" - -#: util/grub-mkfont.c:936 util/grub-mkrescue.c:98 util/grub-mkstandalone.c:48 -msgid "save output in FILE [required]" -msgstr "ساوع ووتپ‎وت ִين Ùִيلع [رعقوִيرعد]" - -#. TRANSLATORS: some font files may have multiple faces (fonts). -#. This option is used to chose among them, the first face being '0'. -#. Rarely used. -#: util/grub-mkfont.c:942 -msgid "select face index" -msgstr "سعلعصت ÙØ§ØµØ¹ ִيندعكس" - -#: util/grub-mkfont.c:943 -msgid "FROM-TO[,FROM-TO]" -msgstr "ÙØ±ÙˆÙ…-تو[,ÙØ±ÙˆÙ…-تو]" - -#. TRANSLATORS: It refers to the range of characters in font. -#: util/grub-mkfont.c:945 -msgid "set font range" -msgstr "سعت Ùونت رانغع" - -#. TRANSLATORS: "family name" for font is just a generic name without suffix -#. like "Bold". -#: util/grub-mkfont.c:949 -msgid "set font family name" -msgstr "سعت Ùونت ÙØ§Ù…ִيلي نامع" - -#: util/grub-mkfont.c:950 -msgid "SIZE" -msgstr "سִيزع" - -#: util/grub-mkfont.c:950 -msgid "set font size" -msgstr "سعت Ùونت سִيزع" - -#: util/grub-mkfont.c:951 -msgid "set font descent" -msgstr "سعت Ùونت دعسصعنت" - -#: util/grub-mkfont.c:952 -msgid "set font ascent" -msgstr "سعت Ùونت اسصعنت" - -#: util/grub-mkfont.c:953 -msgid "convert to bold font" -msgstr "صونوعرت تو بولد Ùونت" - -#: util/grub-mkfont.c:954 -msgid "force autohint" -msgstr "Ùورصع اوتوهִينت" - -#: util/grub-mkfont.c:955 -msgid "disable hinting" -msgstr "دִيسابلع هִينتִينغ" - -#. TRANSLATORS: some fonts contain bitmap rendering for -#. some sizes. This option forces rerendering even if -#. pre-rendered bitmap is available. -#. -#: util/grub-mkfont.c:961 -msgid "ignore bitmap strikes when loading" -msgstr "ִيغنورع بִيتماپ‎ سترִيكعس وهعن لوادִينغ" - -#. TRANSLATORS: It refers to the range of characters in font. -#: util/grub-mkfont.c:1059 util/grub-mkfont.c:1075 -msgid "invalid font range" -msgstr "ִينوالִيد Ùونت رانغع" - -#: util/grub-mkfont.c:1151 -msgid "[OPTIONS] FONT_FILES" -msgstr "[وپ‎تִيونس] Ùونت_Ùִيلعس" - -#: util/grub-mkfont.c:1152 -msgid "Convert common font file formats into PF2" -msgstr "صونوعرت صوممون Ùونت Ùִيلع Ùورماتس ִينتو پ‎Ù2" - -#: util/grub-mkfont.c:1182 util/grub-mkrescue.c:483 -#: util/grub-mkstandalone.c:306 -msgid "output file must be specified" -msgstr "ووتپ‎وت Ùִيلع موست بع سپ‎عصִيÙִيعد" - -#: util/grub-mkfont.c:1185 -msgid "FT_Init_FreeType fails" -msgstr "ÙØª_ִينִيت_ÙØ±Ø¹Ø¹ØªÙŠÙ¾â€ŽØ¹ ÙØ§Ö´ÙŠÙ„س" - -#: util/grub-mkfont.c:1199 -#, c-format -msgid "can't open file %s, index %d: error %d" -msgstr "صان'ت وپ‎عن Ùִيلع %s, ִيندعكس %d: عررور %d" - -#: util/grub-mkfont.c:1229 -#, c-format -msgid "can't set %dx%d font size: Freetype error %d: %s" -msgstr "صان'ت سعت %dكس%d Ùونت سִيزع: ÙØ±Ø¹Ø¹ØªÙŠÙ¾â€ŽØ¹ عررور %d: %s" - -#: util/grub-mkimage.c:67 -msgid "set prefix directory" -msgstr "سعت پ‎رعÙִيكس دִيرعصتوري" - -#. TRANSLATORS: "memdisk" here isn't an identifier, it can be translated. -#. "embed" is a verb (command description). " -#: util/grub-mkimage.c:71 -msgid "" -"embed FILE as a memdisk image\n" -"Implies `-p (memdisk)/boot/grub' and overrides any prefix supplied " -"previously, but the prefix itself can be overridden by later options" -msgstr "" -"عمبعد Ùִيلع اس ا معمدִيسك ִيماغع\n" -"ִيمپ‎لִيعس `-پ‎ (معمدִيسك)/بووت/غروب' اند ووعررִيدعس اني پ‎رعÙִيكس سوپ‎پ‎لִيعد " -"پ‎رعوִيووسلي, بوت تهع پ‎رعÙִيكس ִيتسعل٠صان بع ووعررִيددعن بي لاتعر وپ‎تִيونس" - -#: util/grub-mkimage.c:74 -msgid "embed FILE as a device tree (DTB)\n" -msgstr "عمبعد Ùִيلع اس ا دعوִيصع ترعع (دتب)\n" - -#: util/grub-mkimage.c:76 -msgid "embed FILE as an early config" -msgstr "عمبعد Ùִيلع اس ان عارلي صونÙִيغ" - -#. TRANSLATORS: NOTE is a name of segment. -#: util/grub-mkimage.c:80 -msgid "add NOTE segment for CHRP IEEE1275" -msgstr "ادد نوتع سعغمعنت Ùور صهرپ‎ ִيععع1275" - -#: util/grub-mkimage.c:81 -msgid "output a generated image to FILE [default=stdout]" -msgstr "ووتپ‎وت ا غعنعراتعد ִيماغع تو Ùִيلع [Ø¯Ø¹ÙØ§ÙˆÙ„ت=ستدووت]" - -#: util/grub-mkimage.c:82 -msgid "FORMAT" -msgstr "Ùورمات" - -#: util/grub-mkimage.c:100 util/grub-mkstandalone.c:62 -msgid "generate an image in FORMAT" -msgstr "غعنعراتع ان ִيماغع ִين Ùورمات" - -#: util/grub-mkimage.c:101 util/grub-mkstandalone.c:63 -msgid "available formats:" -msgstr "اواִيلابلع Ùورماتس:" - -#: util/grub-mkimage.c:152 util/grub-mkstandalone.c:96 -#, c-format -msgid "unknown target format %s\n" -msgstr "ونكنوون تارغعت Ùورمات %s\n" - -#: util/grub-mkimage.c:242 -msgid "[OPTION]... [MODULES]" -msgstr "[وپ‎تִيون]... [مودولعس]" - -#: util/grub-mkimage.c:243 -msgid "Make a bootable image of GRUB." -msgstr "ماكع ا بووتابلع ִيماغع و٠غروب." - -#: util/grub-mkimage.c:273 util/grub-mkstandalone.c:309 -msgid "Target format not specified (use the -O option)." -msgstr "تارغعت Ùورمات نوت سپ‎عصִيÙִيعد (وسع تهع -Ùˆ وپ‎تִيون)." - -#: util/grub-mkimage.c:282 -msgid "Prefix not specified (use the -p option)." -msgstr "پ‎رعÙִيكس نوت سپ‎عصִيÙִيعد (وسع تهع -پ‎ وپ‎تִيون)." - -#: util/grub-mkimage.c:318 util/setup.c:793 -#, c-format -msgid "cannot close `%s': %s" -msgstr "صاننوت صلوسع `%s': %s" - -#: util/grub-mkimagexx.c:2191 -#, c-format -msgid "" -"`%s' is miscompiled: its start address is 0x%llx instead of 0x%llx: ld.gold " -"bug?" -msgstr "" -"`%s' ִيس مִيسصومپ‎ִيلعد: ִيتس ستارت اددرعسس ִيس 0كس%llx ִينستعاد ÙˆÙ 0كس%llx: لد." -"غولد بوغ?" - -#: util/grub-mklayout.c:53 -msgid "set input filename. Default is STDIN" -msgstr "سعت ִينپ‎وت Ùִيلعنامع. Ø¯Ø¹ÙØ§ÙˆÙ„ت ִيس ستدִين" - -#. TRANSLATORS: scan identifier is keyboard key symbolic name. -#: util/grub-mklayout.c:307 -#, c-format -msgid "Unknown keyboard scan identifier %s\n" -msgstr "ونكنوون كعيبوارد سصان ִيدعنتִيÙִيعر %s\n" - -#. TRANSLATORS: scan code is keyboard key numeric identifier. -#: util/grub-mklayout.c:390 util/grub-mklayout.c:418 -#, c-format -msgid "Unknown keyboard scan code 0x%02x\n" -msgstr "ونكنوون كعيبوارد سصان صودع 0كس%02x\n" - -#. TRANSLATORS: this error is triggered when input doesn't contain any -#. key descriptions. -#: util/grub-mklayout.c:438 -msgid "ERROR: no valid keyboard layout found. Check the input.\n" -msgstr "عررور: نو والִيد كعيبوارد لايووت Ùووند. صهعصك تهع ִينپ‎وت.\n" - -#. TRANSLATORS: "one" is a shortcut for "keyboard layout". -#: util/grub-mklayout.c:478 -msgid "Generate GRUB keyboard layout from Linux console one." -msgstr "غعنعراتع غروب كعيبوارد لايووت ÙØ±ÙˆÙ… لִينوكس صونسولع ونع." - -#: util/grub-mknetdir.c:47 -msgid "root directory of TFTP server" -msgstr "رووت دִيرعصتوري ÙˆÙ ØªÙØªÙ¾â€Ž سعروعر" - -#: util/grub-mknetdir.c:49 -msgid "relative subdirectory on network server" -msgstr "رعلاتִيوع سوبدִيرعصتوري ون نعتوورك سعروعر" - -#: util/grub-mknetdir.c:88 -msgid "" -"Prepares GRUB network boot images at net_directory/subdir assuming " -"net_directory being TFTP root." -msgstr "" -"پ‎رعپ‎ارعس غروب نعتوورك بووت ִيماغعس ات نعت_دִيرعصتوري/سوبدִير اسسومִينغ " -"نعت_دִيرعصتوري بعִينغ ØªÙØªÙ¾â€Ž رووت." - -#: util/grub-mknetdir.c:146 -#, c-format -msgid "unsupported platform %s" -msgstr "ونسوپ‎پ‎ورتعد پ‎لاتÙورم %s" - -#. TRANSLATORS: First %s is replaced by platform name. Second one by filename. -#: util/grub-mknetdir.c:165 -#, c-format -msgid "" -"Netboot directory for %s created. Configure your DHCP server to point to %s\n" -msgstr "" -"نعتبووت دִيرعصتوري Ùور %s صرعاتعد. صونÙִيغورع يوور دهصپ‎ سعروعر تو پ‎وִينت تو %s\n" - -#: util/grub-mkpasswd-pbkdf2.c:46 -msgid "Number of PBKDF2 iterations" -msgstr "نومبعر و٠پ‎بكدÙ2 ִيتعراتִيونس" - -#: util/grub-mkpasswd-pbkdf2.c:47 -msgid "Length of generated hash" -msgstr "لعنغته و٠غعنعراتعد هاسه" - -#: util/grub-mkpasswd-pbkdf2.c:48 -msgid "Length of salt" -msgstr "لعنغته و٠سالت" - -#: util/grub-mkpasswd-pbkdf2.c:87 -msgid "Generate PBKDF2 password hash." -msgstr "غعنعراتع پ‎بكدÙ2 پ‎اسسوورد هاسه." - -#: util/grub-mkpasswd-pbkdf2.c:144 util/grub-mkpasswd-pbkdf2.c:151 -msgid "failure to read password" -msgstr "ÙØ§Ö´ÙŠÙ„ورع تو رعاد پ‎اسسوورد" - -#: util/grub-mkpasswd-pbkdf2.c:146 -msgid "Reenter password: " -msgstr "رععنتعر پ‎اسسوورد: " - -#: util/grub-mkpasswd-pbkdf2.c:160 -msgid "passwords don't match" -msgstr "پ‎اسسووردس دون'ت ماتصه" - -#: util/grub-mkpasswd-pbkdf2.c:169 -msgid "couldn't retrieve random data for salt" -msgstr "صوولدن'ت رعترִيعوع راندوم داتا Ùور سالت" - -#: util/grub-mkpasswd-pbkdf2.c:184 -#, c-format -msgid "cryptographic error number %d" -msgstr "صريپ‎توغراپ‎هִيص عررور نومبعر %d" - -#: util/grub-mkpasswd-pbkdf2.c:203 -#, c-format -msgid "PBKDF2 hash of your password is %s\n" -msgstr "پ‎بكدÙ2 هاسه و٠يوور پ‎اسسوورد ִيس %s\n" - -#: util/grub-mkrelpath.c:67 -msgid "No path is specified.\n" -msgstr "نو پ‎اته ִيس سپ‎عصִيÙִيعد.\n" - -#: util/grub-mkrelpath.c:78 -msgid "PATH" -msgstr "پ‎اته" - -#: util/grub-mkrelpath.c:79 -msgid "Transform a system filename into GRUB one." -msgstr "ترانسÙورم ا سيستعم Ùִيلعنامع ִينتو غروب ونع." - -#: util/grub-mkrescue.c:100 -msgid "save ROM images in DIR [optional]" -msgstr "ساوع روم ִيماغعس ִين دִير [وپ‎تִيونال]" - -#. TRANSLATORS: xorriso is a program for creating ISOs and burning CDs. -#: util/grub-mkrescue.c:103 -msgid "use FILE as xorriso [optional]" -msgstr "وسع Ùִيلع اس كسوررִيسو [وپ‎تִيونال]" - -#: util/grub-mkrescue.c:109 -msgid "use STRING as product name" -msgstr "وسع سترִينغ اس پ‎رودوصت نامع" - -#: util/grub-mkrescue.c:111 -msgid "" -"enable sparc boot. Disables HFS+, APM, ARCS and boot as disk image for i386-" -"pc" -msgstr "" -"عنابلع سپ‎ارص بووت. دִيسابلعس Ù‡ÙØ³+, اپ‎م, ارصس اند بووت اس دִيسك ִيماغع Ùور Ö´ÙŠ386-" -"پ‎ص" - -#: util/grub-mkrescue.c:112 -msgid "" -"enable ARCS (big-endian mips machines, mostly SGI) boot. Disables HFS+, APM, " -"sparc64 and boot as disk image for i386-pc" -msgstr "" -"عنابلع ارصس (بִيغ-عندִيان مִيپ‎س ماصهִينعس, موستلي سغִي) بووت. دִيسابلعس Ù‡ÙØ³+, اپ‎م, " -"سپ‎ارص64 اند بووت اس دִيسك ִيماغع Ùور Ö´ÙŠ386-پ‎ص" - -#. TRANSLATORS: it generates one single image which is bootable through any method. -#: util/grub-mkrescue.c:125 -msgid "Make GRUB CD-ROM, disk, pendrive and floppy bootable image." -msgstr "ماكع غروب صد-روم, دִيسك, پ‎عندرִيوع اند Ùلوپ‎پ‎ي بووتابلع ִيماغع." - -#: util/grub-mkrescue.c:130 -#, c-format -msgid "" -"Generates a bootable CD/USB/floppy image. Arguments other than options to " -"this program are passed to xorriso, and indicate source files, source " -"directories, or any of the mkisofs options listed by the output of `%s'." -msgstr "" -"غعنعراتعس ا بووتابلع صد/وسب/Ùلوپ‎پ‎ي ִيماغع. ارغومعنتس وتهعر تهان وپ‎تִيونس تو " -"تهִيس پ‎روغرام ارع پ‎اسسعد تو كسوررִيسو, اند ִيندִيصاتع سوورصع Ùִيلعس, سوورصع " -"دִيرعصتورִيعس, ور اني و٠تهع Ù…ÙƒÖ´ÙŠØ³ÙˆÙØ³ وپ‎تִيونس لִيستعد بي تهع ووتپ‎وت ÙˆÙ `%s'." - -#: util/grub-mkrescue.c:134 -msgid "Option -- switches to native xorriso command mode." -msgstr "وپ‎تִيون -- سوִيتصهعس تو ناتִيوع كسوررִيسو صومماند مودع." - -#: util/grub-mkrescue.c:135 -msgid "Mail xorriso support requests to ." -msgstr "ماִيل كسوررִيسو سوپ‎پ‎ورت رعقوعستس تو <بوغ-كسوررִيسو@غنو.ورغ>." - -#: util/grub-mkrescue.c:221 util/grub-mkstandalone.c:114 -msgid "[OPTION] SOURCE..." -msgstr "[وپ‎تִيون] سوورصع..." - -#: util/grub-mkrescue.c:257 util/grub-mkrescue.c:300 util/grub-mkrescue.c:588 -#, c-format -msgid "enabling %s support ..." -msgstr "عنابلִينغ %s سوپ‎پ‎ورت ..." - -#: util/grub-mkrescue.c:486 -msgid "xorriso not found" -msgstr "كسوررִيسو نوت Ùووند" - -#: util/grub-mkrescue.c:623 -msgid "" -"Your xorriso doesn't support `--grub2-boot-info'. Some features are " -"disabled. Please use xorriso 1.2.9 or later." -msgstr "" -"يوور كسوررִيسو دوعسن'ت سوپ‎پ‎ورت `--غروب2-بووت-ִينÙÙˆ'. سومع ÙØ¹Ø§ØªÙˆØ±Ø¹Ø³ ارع " -"دִيسابلعد. پ‎لعاسع وسع كسوررִيسو 1.2.9 ور لاتعر." - -#: util/grub-mkrescue.c:650 -msgid "" -"Your xorriso doesn't support `--grub2-boot-info'. Your core image is too " -"big. Boot as disk is disabled. Please use xorriso 1.2.9 or later." -msgstr "" -"يوور كسوررִيسو دوعسن'ت سوپ‎پ‎ورت `--غروب2-بووت-ִينÙÙˆ'. يوور صورع ִيماغع ִيس توو " -"بִيغ. بووت اس دִيسك ִيس دִيسابلعد. پ‎لعاسع وسع كسوررִيسو 1.2.9 ور لاتعر." - -#: util/grub-mkstandalone.c:115 -msgid "" -"Generate a standalone image (containing all modules) in the selected format" -msgstr "" -"غعنعراتع ا ستاندالونع ִيماغع (صونتاִينִينغ الل مودولعس) ִين تهع سعلعصتعد Ùورمات" - -#: util/grub-mkstandalone.c:115 -msgid "Graft point syntax (E.g. /boot/grub/grub.cfg=./grub.cfg) is accepted" -msgstr "ØºØ±Ø§ÙØª پ‎وִينت سينتاكس (ع.غ. /بووت/غروب/غروب.ØµÙØº=./غروب.ØµÙØº) ִيس اصصعپ‎تعد" - -#: util/grub-mount.c:552 -msgid "IMAGE1 [IMAGE2 ...] MOUNTPOINT" -msgstr "ִيماغع1 [ִيماغع2 ...] موونتپ‎وִينت" - -#: util/grub-mount.c:575 -msgid "need an image and mountpoint" -msgstr "نععد ان ִيماغع اند موونتپ‎وִينت" - -#: util/grub-probe.c:731 -msgid "given argument is a system device, not a path" -msgstr "غִيوعن ارغومعنت ִيس ا سيستعم دعوִيصع, نوت ا پ‎اته" - -#: util/grub-probe.c:736 -msgid "separate items in output using ASCII NUL characters" -msgstr "سعپ‎اراتع ִيتعمس ִين ووتپ‎وت وسִينغ اسصִيִي نول صهاراصتعرس" - -#: util/grub-probe.c:754 -#, c-format -msgid "[default=%s]" -msgstr "[Ø¯Ø¹ÙØ§ÙˆÙ„ت=%s]" - -#: util/grub-probe.c:756 -msgid "print TARGET" -msgstr "پ‎رִينت تارغعت" - -#: util/grub-probe.c:757 -msgid "available targets:" -msgstr "اواִيلابلع تارغعتس:" - -#: util/grub-probe.c:839 -msgid "[OPTION]... [PATH|DEVICE]" -msgstr "[وپ‎تִيون]... [پ‎اته|دعوִيصع]" - -#: util/grub-probe.c:840 -msgid "" -"Probe device information for a given path (or device, if the -d option is " -"given)." -msgstr "" -"پ‎روبع دعوִيصع ִينÙورماتִيون Ùور ا غִيوعن پ‎اته (ور دعوִيصع, ִي٠تهع -د وپ‎تִيون ִيس " -"غִيوعن)." - -#: util/grub-render-label.c:60 -msgid "read text from FILE." -msgstr "رعاد تعكست ÙØ±ÙˆÙ… Ùִيلع." - -#: util/grub-render-label.c:62 -msgid "use COLOR for text" -msgstr "وسع صولور Ùور تعكست" - -#: util/grub-render-label.c:64 -msgid "use COLOR for background" -msgstr "وسع صولور Ùور باصكغرووند" - -#. TRANSLATORS: The result is always stored to file and -#. never shown directly, so don't use "show" as synonym for render. Use "create" if -#. "render" doesn't translate directly. -#: util/grub-render-label.c:69 -msgid "set the label to render" -msgstr "سعت تهع لابعل تو رعندعر" - -#: util/grub-render-label.c:73 -msgid "use FILE as font (PF2)." -msgstr "وسع Ùִيلع اس Ùونت (پ‎Ù2)." - -#. TRANSLATORS: This file takes a text and creates a graphical representation of it, -#. putting the result into .disk_label file. The result is always stored to file and -#. never shown directly, so don't use "show" as synonym for render. Use "create" if -#. "render" doesn't translate directly. -#: util/grub-render-label.c:136 -msgid "Render Apple .disk_label." -msgstr "رعندعر اپ‎پ‎لع .دִيسك_لابعل." - -#: util/grub-render-label.c:158 util/grub-syslinux2cfg.c:169 -msgid "Missing arguments\n" -msgstr "مִيسسִينغ ارغومعنتس\n" - -#: util/grub-script-check.c:87 -msgid "[PATH]" -msgstr "[پ‎اته]" - -#: util/grub-script-check.c:88 -msgid "Checks GRUB script configuration file for syntax errors." -msgstr "صهعصكس غروب سصرִيپ‎ت صونÙִيغوراتִيون Ùִيلع Ùور سينتاكس عررورس." - -#: util/grub-script-check.c:207 -#, c-format -msgid "Syntax error at line %u\n" -msgstr "سينتاكس عررور ات لִينع %u\n" - -#: util/grub-script-check.c:212 -#, c-format -msgid "Script `%s' contains no commands and will do nothing\n" -msgstr "سصرִيپ‎ت `%s' صونتاִينس نو صومماندس اند وִيلل دو نوتهִينغ\n" - -#: util/grub-setup.c:79 -#, c-format -msgid "use FILE as the boot image [default=%s]" -msgstr "وسع Ùִيلع اس تهع بووت ִيماغع [Ø¯Ø¹ÙØ§ÙˆÙ„ت=%s]" - -#: util/grub-setup.c:81 -#, c-format -msgid "use FILE as the core image [default=%s]" -msgstr "وسع Ùִيلع اس تهع صورع ִيماغع [Ø¯Ø¹ÙØ§ÙˆÙ„ت=%s]" - -#: util/grub-setup.c:210 -msgid "No device is specified.\n" -msgstr "نو دعوִيصع ִيس سپ‎عصִيÙִيعد.\n" - -#: util/grub-setup.c:224 -msgid "" -"Set up images to boot from DEVICE.\n" -"\n" -"You should not normally run this program directly. Use grub-install instead." -msgstr "" -"سعت وپ‎ ִيماغعس تو بووت ÙØ±ÙˆÙ… دعوִيصع.\n" -"\n" -"يوو سهوولد نوت نورماللي رون تهִيس پ‎روغرام دִيرعصتلي. وسع غروب-ִينستالل ִينستعاد." - -#: util/grub-setup.c:228 -msgid "DEVICE must be an OS device (e.g. /dev/sda)." -msgstr "دعوִيصع موست بع ان وس دعوִيصع (ع.غ. /دعو/سدا)." - -#: util/grub-setup.c:297 -#, c-format -msgid "Invalid device `%s'.\n" -msgstr "ִينوالִيد دعوִيصع `%s'.\n" - -#: util/grub-syslinux2cfg.c:64 -msgid "root directory as it will be seen on runtime [default=/]." -msgstr "رووت دִيرعصتوري اس ִيت وִيلل بع سععن ون رونتִيمع [Ø¯Ø¹ÙØ§ÙˆÙ„ت=/]." - -#: util/grub-syslinux2cfg.c:69 -msgid "" -"current directory of syslinux as it will be seen on runtime [default is " -"parent directory of input file]." -msgstr "" -"صوررعنت دִيرعصتوري و٠سيسلִينوكس اس ִيت وִيلل بع سععن ون رونتִيمع [Ø¯Ø¹ÙØ§ÙˆÙ„ت ִيس " -"پ‎ارعنت دִيرعصتوري و٠ִينپ‎وت Ùִيلع]." - -#: util/grub-syslinux2cfg.c:74 -msgid "write output to FILE [default=stdout]." -msgstr "ورִيتع ووتپ‎وت تو Ùִيلع [Ø¯Ø¹ÙØ§ÙˆÙ„ت=ستدووت]." - -#: util/grub-syslinux2cfg.c:148 -msgid "Transform syslinux config into GRUB one." -msgstr "ترانسÙورم سيسلִينوكس صونÙִيغ ִينتو غروب ونع." - -#: util/mkimage.c:688 util/mkimage.c:717 util/mkimage.c:734 -msgid "cannot compress the kernel image" -msgstr "صاننوت صومپ‎رعسس تهع كعرنعل ִيماغع" - -#: util/mkimage.c:766 util/mkimage.c:1077 -#, c-format -msgid "unknown compression %d" -msgstr "ونكنوون صومپ‎رعسسִيون %d" - -#: util/mkimage.c:1088 -msgid "Decompressor is too big" -msgstr "دعصومپ‎رعسسور ִيس توو بִيغ" - -#: util/mkimage.c:1133 -#, c-format -msgid "core image is too big (0x%x > 0x%x)" -msgstr "صورع ִيماغع ִيس توو بִيغ (0كس%x > 0كس%x)" - -#: util/mkimage.c:1140 -#, c-format -msgid "kernel image is too big (0x%x > 0x%x)" -msgstr "كعرنعل ִيماغع ִيس توو بִيغ (0كس%x > 0كس%x)" - -#: util/mkimage.c:1220 util/mkimage.c:1501 -#, c-format -msgid "diskboot.img size must be %u bytes" -msgstr "دִيسكبووت.ִيمغ سִيزع موست بع %u بيتعس" - -#: util/mkimage.c:1571 -msgid "" -"fwstart.img doesn't match the known good version. proceed at your own risk" -msgstr "" -"Ùوستارت.ִيمغ دوعسن'ت ماتصه تهع كنوون غوود وعرسִيون. پ‎روصععد ات يوور وون رִيسك" - -#: util/mkimage.c:1575 util/mkimage.c:1601 -msgid "firmware image is too big" -msgstr "Ùִيرموارع ִيماغع ִيس توو بִيغ" - -#: util/resolve.c:93 -#, c-format -msgid "invalid line format: %s" -msgstr "ִينوالִيد لִينع Ùورمات: %s" - -#: util/setup.c:167 -msgid "the first sector of the core file is not sector-aligned" -msgstr "تهع Ùִيرست سعصتور و٠تهع صورع Ùִيلع ִيس نوت سعصتور-الִيغنعد" - -#: util/setup.c:177 -msgid "non-sector-aligned data is found in the core file" -msgstr "نون-سعصتور-الִيغنعد داتا ִيس Ùووند ִين تهع صورع Ùִيلع" - -#: util/setup.c:199 -msgid "the sectors of the core file are too fragmented" -msgstr "تهع سعصتورس و٠تهع صورع Ùִيلع ارع توو ÙØ±Ø§ØºÙ…عنتعد" - -#: util/setup.c:280 -#, c-format -msgid "the size of `%s' is not %u" -msgstr "تهع سִيزع ÙˆÙ `%s' ִيس نوت %u" - -#: util/setup.c:290 -#, c-format -msgid "the size of `%s' is too small" -msgstr "تهع سִيزع ÙˆÙ `%s' ִيس توو سمالل" - -#: util/setup.c:428 -msgid "" -"Attempting to install GRUB to a disk with multiple partition labels or both " -"partition label and filesystem. This is not supported yet." -msgstr "" -"اتتعمپ‎تִينغ تو ִينستالل غروب تو ا دִيسك وִيته مولتִيپ‎لع پ‎ارتִيتִيون لابعلس ور بوته " -"پ‎ارتִيتִيون لابعل اند Ùִيلعسيستعم. تهִيس ִيس نوت سوپ‎پ‎ورتعد يعت." - -#: util/setup.c:441 -#, c-format -msgid "unable to identify a filesystem in %s; safety check can't be performed" -msgstr "ونابلع تو ִيدعنتִيÙÙŠ ا Ùִيلعسيستعم ִين %s; Ø³Ø§ÙØ¹ØªÙŠ ØµÙ‡Ø¹ØµÙƒ صان'ت بع پ‎عرÙورمعد" - -#. TRANSLATORS: Filesystem may reserve the space just GRUB isn't sure about it. -#: util/setup.c:445 -#, c-format -msgid "" -"%s appears to contain a %s filesystem which isn't known to reserve space for " -"DOS-style boot. Installing GRUB there could result in FILESYSTEM " -"DESTRUCTION if valuable data is overwritten by grub-setup (--skip-fs-probe " -"disables this check, use at your own risk)" -msgstr "" -"%s اپ‎پ‎عارس تو صونتاִين ا %s Ùִيلعسيستعم وهִيصه ִيسن'ت كنوون تو رعسعروع سپ‎اصع Ùور " -"دوس-ستيلع بووت. ִينستاللִينغ غروب تهعرع صوولد رعسولت ִين Ùִيلعسيستعم دعستروصتִيون" -" ִي٠والوابلع داتا ִيس ووعرورִيتتعن بي غروب-سعتوپ‎ (--سكִيپ‎-ÙØ³-پ‎روبع دִيسابلعس " -"تهִيس صهعصك, وسع ات يوور وون رִيسك)" - -#. TRANSLATORS: Partition map may reserve the space just GRUB isn't sure about it. -#: util/setup.c:458 -#, c-format -msgid "" -"%s appears to contain a %s partition map which isn't known to reserve space " -"for DOS-style boot. Installing GRUB there could result in FILESYSTEM " -"DESTRUCTION if valuable data is overwritten by grub-setup (--skip-fs-probe " -"disables this check, use at your own risk)" -msgstr "" -"%s اپ‎پ‎عارس تو صونتاִين ا %s پ‎ارتִيتִيون ماپ‎ وهִيصه ִيسن'ت كنوون تو رعسعروع سپ‎اصع " -"Ùور دوس-ستيلع بووت. ִينستاللִينغ غروب تهعرع صوولد رعسولت ִين Ùִيلعسيستعم " -"دعستروصتִيون ִي٠والوابلع داتا ִيس ووعرورִيتتعن بي غروب-سعتوپ‎ (--سكִيپ‎-ÙØ³-پ‎روبع " -"دִيسابلعس تهִيس صهعصك, وسع ات يوور وون رִيسك)" - -#: util/setup.c:465 -#, c-format -msgid "" -"%s appears to contain a %s partition map and LDM which isn't known to be a " -"safe combination. Installing GRUB there could result in FILESYSTEM " -"DESTRUCTION if valuable data is overwritten by grub-setup (--skip-fs-probe " -"disables this check, use at your own risk)" -msgstr "" -"%s اپ‎پ‎عارس تو صونتاִين ا %s پ‎ارتִيتִيون ماپ‎ اند لدم وهִيصه ִيسن'ت كنوون تو بع ا " -"Ø³Ø§ÙØ¹ صومبִيناتִيون. ִينستاللִينغ غروب تهعرع صوولد رعسولت ִين Ùִيلعسيستعم " -"دعستروصتִيون ִي٠والوابلع داتا ִيس ووعرورִيتتعن بي غروب-سعتوپ‎ (--سكִيپ‎-ÙØ³-پ‎روبع " -"دִيسابلعس تهִيس صهعصك, وسع ات يوور وون رִيسك)" - -#: util/setup.c:478 -msgid "" -"Attempting to install GRUB to a partitionless disk or to a partition. This " -"is a BAD idea." -msgstr "" -"اتتعمپ‎تִينغ تو ִينستالل غروب تو ا پ‎ارتִيتִيونلعسس دִيسك ور تو ا پ‎ارتִيتִيون. تهִيس Ö´" -"يس ا باد ִيدعا." - -#: util/setup.c:483 -msgid "" -"Attempting to install GRUB to a disk with multiple partition labels. This " -"is not supported yet." -msgstr "" -"اتتعمپ‎تִينغ تو ִينستالل غروب تو ا دִيسك وִيته مولتִيپ‎لع پ‎ارتִيتִيون لابعلس. تهִيس Ö´" -"يس نوت سوپ‎پ‎ورتعد يعت." - -#: util/setup.c:489 -#, c-format -msgid "Partition style `%s' doesn't support embedding" -msgstr "پ‎ارتִيتִيون ستيلع `%s' دوعسن'ت سوپ‎پ‎ورت عمبعددִينغ" - -#: util/setup.c:496 -#, c-format -msgid "File system `%s' doesn't support embedding" -msgstr "Ùִيلع سيستعم `%s' دوعسن'ت سوپ‎پ‎ورت عمبعددִينغ" - -#: util/setup.c:537 -msgid "Your embedding area is unusually small. core.img won't fit in it." -msgstr "يوور عمبعددִينغ ارعا ִيس ونوسواللي سمالل. صورع.ִيمغ وون'ت Ùִيت ִين ִيت." - -#: util/setup.c:559 util/setup.c:725 util/setup.c:844 -msgid "no terminator in the core image" -msgstr "نو تعرمִيناتور ִين تهع صورع ִيماغع" - -#: util/setup.c:622 -msgid "core.img version mismatch" -msgstr "صورع.ִيمغ وعرسִيون مִيسماتصه" - -#: util/setup.c:675 -msgid "" -"embedding is not possible, but this is required for RAID and LVM install" -msgstr "" -"عمبعددִينغ ִيس نوت پ‎وسسִيبلع, بوت تهִيس ִيس رعقوִيرعد Ùور راִيد اند لوم ִينستالل" - -#: util/setup.c:682 -#, c-format -msgid "can't determine filesystem on %s" -msgstr "صان'ت دعتعرمִينع Ùִيلعسيستعم ون %s" - -#: util/setup.c:685 -#, c-format -msgid "filesystem `%s' doesn't support blocklists" -msgstr "Ùִيلعسيستعم `%s' دوعسن'ت سوپ‎پ‎ورت بلوصكلִيستس" - -#. TRANSLATORS: cross-disk refers to /boot being on one disk -#. but MBR on another. -#: util/setup.c:694 -msgid "embedding is not possible, but this is required for cross-disk install" -msgstr "عمبعددִينغ ִيس نوت پ‎وسسִيبلع, بوت تهִيس ִيس رعقوִيرعد Ùور صروسس-دִيسك ִينستالل" - -#: util/setup.c:700 -msgid "" -"Embedding is not possible. GRUB can only be installed in this setup by " -"using blocklists. However, blocklists are UNRELIABLE and their use is " -"discouraged." -msgstr "" -"عمبعددִينغ ִيس نوت پ‎وسسִيبلع. غروب صان ونلي بع ִينستاللعد ִين تهִيس سعتوپ‎ بي " -"وسִينغ بلوصكلִيستس. هووعوعر, بلوصكلִيستس ارع ونرعلִيابلع اند تهعִير وسع ִيس " -"دִيسصووراغعد." - -#. TRANSLATORS: Here GRUB refuses to continue with blocklist install. -#: util/setup.c:705 -msgid "will not proceed with blocklists" -msgstr "وִيلل نوت پ‎روصععد وִيته بلوصكلִيستس" - -#: util/setup.c:817 util/setup.c:837 -msgid "blocklists are invalid" -msgstr "بلوصكلִيستس ارع ִينوالִيد" - -#: util/setup.c:847 -msgid "blocklists are incomplete" -msgstr "بلوصكلִيستس ارع ִينصومپ‎لعتع" diff --git a/thirdparty/grub-2.04/po/en@boldquot.header b/thirdparty/grub-2.04/po/en@boldquot.header deleted file mode 100644 index fedb6a06d..000000000 --- a/thirdparty/grub-2.04/po/en@boldquot.header +++ /dev/null @@ -1,25 +0,0 @@ -# All this catalog "translates" are quotation characters. -# The msgids must be ASCII and therefore cannot contain real quotation -# characters, only substitutes like grave accent (0x60), apostrophe (0x27) -# and double quote (0x22). These substitutes look strange; see -# http://www.cl.cam.ac.uk/~mgk25/ucs/quotes.html -# -# This catalog translates grave accent (0x60) and apostrophe (0x27) to -# left single quotation mark (U+2018) and right single quotation mark (U+2019). -# It also translates pairs of apostrophe (0x27) to -# left single quotation mark (U+2018) and right single quotation mark (U+2019) -# and pairs of quotation mark (0x22) to -# left double quotation mark (U+201C) and right double quotation mark (U+201D). -# -# When output to an UTF-8 terminal, the quotation characters appear perfectly. -# When output to an ISO-8859-1 terminal, the single quotation marks are -# transliterated to apostrophes (by iconv in glibc 2.2 or newer) or to -# grave/acute accent (by libiconv), and the double quotation marks are -# transliterated to 0x22. -# When output to an ASCII terminal, the single quotation marks are -# transliterated to apostrophes, and the double quotation marks are -# transliterated to 0x22. -# -# This catalog furthermore displays the text between the quotation marks in -# bold face, assuming the VT100/XTerm escape sequences. -# diff --git a/thirdparty/grub-2.04/po/en@cyrillic.gmo b/thirdparty/grub-2.04/po/en@cyrillic.gmo deleted file mode 100644 index 8bf99815438b11784d86f0e3adfcd306c595d59c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 147274 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 diff --git a/thirdparty/grub-2.04/po/en@cyrillic.po b/thirdparty/grub-2.04/po/en@cyrillic.po deleted file mode 100644 index 88b095de8..000000000 --- a/thirdparty/grub-2.04/po/en@cyrillic.po +++ /dev/null @@ -1,6578 +0,0 @@ -# English translations for grub package. -# Copyright (C) 2019 Free Software Foundation, Inc. -# This file is distributed under the same license as the grub package. -# Automatically generated, 2019. -# -msgid "" -msgstr "" -"Project-Id-Version: grub 2.04\n" -"Report-Msgid-Bugs-To: bug-grub@gnu.org\n" -"POT-Creation-Date: 2019-07-04 16:09+0200\n" -"PO-Revision-Date: 2019-07-04 16:09+0200\n" -"Last-Translator: Automatically generated\n" -"Language-Team: none\n" -"Language: en@cyrillic\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=2; plural=(n != 1);\n" - -#: grub-core/bus/usb/serial/ftdi.c:145 grub-core/bus/usb/serial/pl2303.c:158 -#: grub-core/term/ieee1275/escc.c:169 grub-core/term/ns8250.c:202 -msgid "unsupported serial port speed" -msgstr "унÑуппортед Ñериал порт Ñпеед" - -#: grub-core/bus/usb/serial/ftdi.c:151 grub-core/bus/usb/serial/pl2303.c:164 -#: grub-core/term/efi/serial.c:116 grub-core/term/ieee1275/escc.c:175 -#: grub-core/term/ns8250.c:208 grub-core/term/serial.c:227 -#: grub-core/term/serial.c:243 -msgid "unsupported serial port parity" -msgstr "унÑуппортед Ñериал порт паритÑ" - -#: grub-core/bus/usb/serial/ftdi.c:157 grub-core/bus/usb/serial/pl2303.c:170 -#: grub-core/term/efi/serial.c:122 grub-core/term/ieee1275/escc.c:181 -#: grub-core/term/ns8250.c:213 grub-core/term/serial.c:267 -msgid "unsupported serial port stop bits number" -msgstr "унÑуппортед Ñериал порт Ñтоп Ð±Ð¸Ñ‚Ñ Ð½ÑƒÐ¼Ð±ÐµÑ€" - -#: grub-core/bus/usb/serial/ftdi.c:161 grub-core/bus/usb/serial/pl2303.c:174 -#: grub-core/term/efi/serial.c:126 grub-core/term/ieee1275/escc.c:185 -#: grub-core/term/ns8250.c:217 -msgid "unsupported serial port word length" -msgstr "унÑуппортед Ñериал порт ўорд ленгтх" - -#: grub-core/commands/acpi.c:42 -msgid "Don't load host tables specified by comma-separated list." -msgstr "Дон'Ñ‚ лоад хоÑÑ‚ Ñ‚Ð°Ð±Ð»ÐµÑ Ñпецифиед Ð±Ñ Ñ†Ð¾Ð¼Ð¼Ð°-Ñепаратед лиÑÑ‚." - -#: grub-core/commands/acpi.c:45 -msgid "Load only tables specified by comma-separated list." -msgstr "Лоад Ð¾Ð½Ð»Ñ Ñ‚Ð°Ð±Ð»ÐµÑ Ñпецифиед Ð±Ñ Ñ†Ð¾Ð¼Ð¼Ð°-Ñепаратед лиÑÑ‚." - -#: grub-core/commands/acpi.c:46 -msgid "Export version 1 tables to the OS." -msgstr "Еѯпорт верÑион 1 Ñ‚Ð°Ð±Ð»ÐµÑ Ñ‚Ð¾ тхе ОС." - -#: grub-core/commands/acpi.c:47 -msgid "Export version 2 and version 3 tables to the OS." -msgstr "Еѯпорт верÑион 2 анд верÑион 3 Ñ‚Ð°Ð±Ð»ÐµÑ Ñ‚Ð¾ тхе ОС." - -#: grub-core/commands/acpi.c:48 -msgid "Set OEMID of RSDP, XSDT and RSDT." -msgstr "Сет ОЕМИД оф РСДП, ѮСДТ анд РСДТ." - -#: grub-core/commands/acpi.c:50 -msgid "Set OEMTABLE ID of RSDP, XSDT and RSDT." -msgstr "Сет ОЕМТÐБЛЕ ИД оф РСДП, ѮСДТ анд РСДТ." - -#: grub-core/commands/acpi.c:52 -msgid "Set OEMTABLE revision of RSDP, XSDT and RSDT." -msgstr "Сет ОЕМТÐБЛЕ ревиÑион оф РСДП, ѮСДТ анд РСДТ." - -#: grub-core/commands/acpi.c:54 -msgid "Set creator field of RSDP, XSDT and RSDT." -msgstr "Сет цреатор фиелд оф РСДП, ѮСДТ анд РСДТ." - -#: grub-core/commands/acpi.c:56 -msgid "Set creator revision of RSDP, XSDT and RSDT." -msgstr "Сет цреатор ревиÑион оф РСДП, ѮСДТ анд РСДТ." - -#. TRANSLATORS: "hangs" here is a noun, not a verb. -#: grub-core/commands/acpi.c:58 -msgid "" -"Don't update EBDA. May fix failures or hangs on some BIOSes but makes it " -"ineffective with OS not receiving RSDP from GRUB." -msgstr "" -"Дон'Ñ‚ упдате ЕБДÐ. ÐœÐ°Ñ Ñ„Ð¸Ñ¯ Ñ„Ð°Ð¸Ð»ÑƒÑ€ÐµÑ Ð¾Ñ€ Ñ…Ð°Ð½Ð³Ñ Ð¾Ð½ Ñоме Ð‘Ð˜ÐžÐ¡ÐµÑ Ð±ÑƒÑ‚ Ð¼Ð°ÐºÐµÑ Ð¸Ñ‚ " -"инеффецтиве ўитх ОС нот рецеивинг РСДП фром ГРУБ." - -#: grub-core/commands/acpi.c:650 grub-core/commands/acpi.c:667 -#: grub-core/commands/i386/pc/play.c:105 grub-core/commands/keylayouts.c:230 -#: grub-core/commands/keylayouts.c:245 grub-core/commands/keylayouts.c:263 -#: grub-core/commands/verifiers.c:156 grub-core/efiemu/loadcore.c:350 -#: grub-core/kern/elf.c:117 grub-core/kern/elfXX.c:29 -#: grub-core/kern/elfXX.c:156 grub-core/loader/arm/linux.c:319 -#: grub-core/loader/arm64/linux.c:330 grub-core/loader/arm64/xen_boot.c:356 -#: grub-core/loader/efi/chainloader.c:276 -#: grub-core/loader/efi/chainloader.c:297 -#: grub-core/loader/efi/chainloader.c:329 grub-core/loader/efi/fdt.c:138 -#: grub-core/loader/i386/bsd.c:1276 grub-core/loader/i386/bsd.c:2116 -#: grub-core/loader/i386/bsdXX.c:20 grub-core/loader/i386/bsdXX.c:36 -#: grub-core/loader/i386/bsdXX.c:63 grub-core/loader/i386/bsdXX.c:357 -#: grub-core/loader/i386/bsdXX.c:376 grub-core/loader/i386/bsdXX.c:519 -#: grub-core/loader/i386/bsdXX.c:535 grub-core/loader/i386/bsdXX.c:615 -#: grub-core/loader/i386/bsdXX.c:638 -#: grub-core/loader/i386/coreboot/chainloader.c:112 -#: grub-core/loader/i386/coreboot/chainloader.c:148 -#: grub-core/loader/i386/coreboot/chainloader.c:170 -#: grub-core/loader/i386/linux.c:667 grub-core/loader/i386/linux.c:788 -#: grub-core/loader/i386/linux.c:1005 grub-core/loader/i386/multiboot_mbi.c:171 -#: grub-core/loader/i386/pc/chainloader.c:202 -#: grub-core/loader/i386/pc/linux.c:149 grub-core/loader/i386/pc/linux.c:320 -#: grub-core/loader/i386/pc/linux.c:362 grub-core/loader/i386/pc/plan9.c:457 -#: grub-core/loader/i386/pc/plan9.c:550 grub-core/loader/i386/pc/plan9.c:566 -#: grub-core/loader/i386/xen.c:934 grub-core/loader/i386/xen_file.c:72 -#: grub-core/loader/i386/xen_fileXX.c:43 grub-core/loader/i386/xen_fileXX.c:186 -#: grub-core/loader/i386/xen_fileXX.c:339 grub-core/loader/ia64/efi/linux.c:423 -#: grub-core/loader/ia64/efi/linux.c:471 grub-core/loader/linux.c:286 -#: grub-core/loader/macho.c:84 grub-core/loader/macho.c:109 -#: grub-core/loader/machoXX.c:33 grub-core/loader/machoXX.c:46 -#: grub-core/loader/machoXX.c:76 grub-core/loader/machoXX.c:116 -#: grub-core/loader/machoXX.c:131 grub-core/loader/machoXX.c:147 -#: grub-core/loader/machoXX.c:196 grub-core/loader/machoXX.c:317 -#: grub-core/loader/multiboot.c:434 grub-core/loader/multiboot_elfxx.c:171 -#: grub-core/loader/multiboot_elfxx.c:234 -#: grub-core/loader/multiboot_elfxx.c:278 grub-core/loader/multiboot_mbi2.c:129 -#: grub-core/loader/xnu.c:737 grub-core/loader/xnu.c:795 -#: grub-core/loader/xnu.c:816 grub-core/loader/xnu.c:871 -#: grub-core/loader/xnu.c:914 grub-core/loader/xnu.c:952 -#: grub-core/loader/xnu_resume.c:68 grub-core/loader/xnu_resume.c:153 -#: grub-core/loader/xnu_resume.c:165 util/grub-mkimagexx.c:2288 -#, c-format -msgid "premature end of file %s" -msgstr "прематуре енд оф филе %s" - -#: grub-core/commands/acpi.c:779 -msgid "" -"[-1|-2] [--exclude=TABLE1,TABLE2|--load-only=TABLE1,TABLE2] FILE1 [FILE2] " -"[...]" -msgstr "" -"[-1|-2] [--еѯцлуде=ТÐБЛЕ1,ТÐБЛЕ2|--лоад-онлÑ=ТÐБЛЕ1,ТÐБЛЕ2] ФИЛЕ1 [ФИЛЕ2] " -"[...]" - -#: grub-core/commands/acpi.c:782 -msgid "Load host ACPI tables and tables specified by arguments." -msgstr "Лоад хоÑÑ‚ ÐЦПИ Ñ‚Ð°Ð±Ð»ÐµÑ Ð°Ð½Ð´ Ñ‚Ð°Ð±Ð»ÐµÑ Ñпецифиед Ð±Ñ Ð°Ñ€Ð³ÑƒÐ¼ÐµÐ½Ñ‚Ñ." - -#: grub-core/commands/acpihalt.c:368 grub-core/kern/err.c:110 -#, c-format -msgid "error: %s.\n" -msgstr "еррор: %s.\n" - -#: grub-core/commands/acpihalt.c:368 grub-core/kern/emu/misc.c:95 -#: grub-core/kern/emu/misc.c:105 grub-core/kern/emu/misc.c:134 -#: grub-core/kern/emu/mm.c:34 grub-core/kern/emu/mm.c:62 -#: grub-core/kern/mm.c:374 grub-core/lib/relocator.c:1282 -#: grub-core/lib/relocator.c:1439 grub-core/lib/relocator.c:1538 -#: grub-core/loader/arm/linux.c:259 grub-core/loader/arm64/linux.c:265 -#: grub-core/loader/arm64/linux.c:321 grub-core/loader/arm64/linux.c:340 -#: grub-core/loader/arm64/xen_boot.c:344 grub-core/loader/arm64/xen_boot.c:367 -#: grub-core/loader/efi/chainloader.c:289 grub-core/osdep/unix/dl.c:48 -#: grub-core/osdep/windows/dl.c:46 grub-core/script/lexer.c:156 -#: grub-core/script/lexer.c:182 -msgid "out of memory" -msgstr "оут оф меморÑ" - -#: grub-core/commands/acpihalt.c:374 grub-core/disk/cryptodisk.c:587 -#: grub-core/disk/cryptodisk.c:632 grub-core/kern/emu/hostdisk.c:307 -#: grub-core/kern/emu/hostfs.c:149 grub-core/kern/emu/misc.c:200 -#: grub-core/osdep/linux/ofpath.c:195 grub-core/osdep/linux/ofpath.c:521 -#: grub-core/osdep/linux/ofpath.c:534 util/glue-efi.c:80 util/glue-efi.c:94 -#: util/grub-editenv.c:155 util/grub-fstest.c:577 -#: util/grub-install-common.c:943 util/grub-mkrescue.c:634 -#: util/grub-mkrescue.c:888 util/grub-mount.c:506 util/grub-render-label.c:176 -#: util/misc.c:95 util/setup.c:814 util/setup.c:833 -#, c-format -msgid "cannot read `%s': %s" -msgstr "цаннот реад `%s': %s" - -#. TRANSLATORS: It's computer shutdown using ACPI, not disabling ACPI. -#: grub-core/commands/acpihalt.c:452 -msgid "ACPI shutdown failed" -msgstr "ÐЦПИ Ñхутдоўн фаилед" - -#: grub-core/commands/arc/lsdev.c:51 -msgid "List devices." -msgstr "ЛиÑÑ‚ девицеÑ." - -#: grub-core/commands/blocklist.c:122 grub-core/commands/cat.c:57 -#: grub-core/commands/configfile.c:35 grub-core/commands/efi/loadbios.c:168 -#: grub-core/commands/file.c:159 grub-core/commands/hexdump.c:47 -#: grub-core/commands/legacycfg.c:209 grub-core/commands/legacycfg.c:315 -#: grub-core/commands/minicmd.c:44 grub-core/commands/syslinuxcfg.c:146 -#: grub-core/commands/testload.c:58 grub-core/commands/testspeed.c:52 -#: grub-core/disk/loopback.c:93 grub-core/efiemu/main.c:293 -#: grub-core/font/font_cmd.c:32 grub-core/kern/emu/hostdisk.c:519 -#: grub-core/loader/arm/linux.c:364 grub-core/loader/arm/linux.c:409 -#: grub-core/loader/arm/linux.c:472 grub-core/loader/arm64/linux.c:243 -#: grub-core/loader/arm64/linux.c:297 grub-core/loader/arm64/xen_boot.c:398 -#: grub-core/loader/arm64/xen_boot.c:411 grub-core/loader/arm64/xen_boot.c:462 -#: grub-core/loader/efi/chainloader.c:216 grub-core/loader/i386/bsd.c:1462 -#: grub-core/loader/i386/bsd.c:1807 grub-core/loader/i386/bsd.c:2085 -#: grub-core/loader/i386/coreboot/chainloader.c:438 -#: grub-core/loader/i386/linux.c:656 grub-core/loader/i386/linux.c:1041 -#: grub-core/loader/i386/pc/chainloader.c:290 -#: grub-core/loader/i386/pc/freedos.c:105 grub-core/loader/i386/pc/linux.c:138 -#: grub-core/loader/i386/pc/linux.c:400 grub-core/loader/i386/pc/ntldr.c:85 -#: grub-core/loader/i386/pc/plan9.c:409 -#: grub-core/loader/i386/pc/pxechainloader.c:94 -#: grub-core/loader/i386/pc/truecrypt.c:96 grub-core/loader/i386/xen.c:641 -#: grub-core/loader/i386/xen.c:768 grub-core/loader/i386/xen.c:844 -#: grub-core/loader/i386/xen.c:854 grub-core/loader/i386/xnu.c:488 -#: grub-core/loader/ia64/efi/linux.c:459 grub-core/loader/ia64/efi/linux.c:539 -#: grub-core/loader/mips/linux.c:238 grub-core/loader/mips/linux.c:429 -#: grub-core/loader/multiboot.c:322 grub-core/loader/multiboot.c:374 -#: grub-core/loader/multiboot.c:384 -#: grub-core/loader/powerpc/ieee1275/linux.c:269 -#: grub-core/loader/powerpc/ieee1275/linux.c:341 -#: grub-core/loader/sparc64/ieee1275/linux.c:305 -#: grub-core/loader/sparc64/ieee1275/linux.c:381 grub-core/loader/xnu.c:351 -#: grub-core/loader/xnu.c:460 grub-core/loader/xnu.c:778 -#: grub-core/loader/xnu.c:892 grub-core/loader/xnu.c:1277 -#: grub-core/loader/xnu.c:1427 grub-core/loader/xnu.c:1453 -#: grub-core/video/readers/jpeg.c:812 grub-core/video/readers/png.c:1123 -msgid "filename expected" -msgstr "филенаме еѯпецтед" - -#. TRANSLATORS: "embed" is a verb (command description). " -#: grub-core/commands/blocklist.c:154 grub-core/commands/cat.c:163 -#: grub-core/commands/configfile.c:65 grub-core/commands/configfile.c:68 -#: grub-core/commands/configfile.c:74 grub-core/commands/configfile.c:80 -#: grub-core/commands/configfile.c:86 grub-core/commands/hashsum.c:34 -#: grub-core/commands/legacycfg.c:834 grub-core/commands/legacycfg.c:841 -#: grub-core/commands/legacycfg.c:846 grub-core/commands/legacycfg.c:851 -#: grub-core/commands/macbless.c:222 grub-core/commands/minicmd.c:198 -#: grub-core/commands/syslinuxcfg.c:186 grub-core/commands/syslinuxcfg.c:194 -#: grub-core/commands/syslinuxcfg.c:200 grub-core/commands/syslinuxcfg.c:206 -#: grub-core/commands/testload.c:163 grub-core/efiemu/main.c:312 -#: grub-core/kern/emu/main.c:100 grub-core/kern/emu/main.c:103 -#: grub-core/loader/i386/bsd.c:2137 grub-core/loader/i386/bsd.c:2140 -#: grub-core/loader/i386/bsd.c:2143 -#: grub-core/loader/i386/coreboot/chainloader.c:505 -#: grub-core/loader/ia64/efi/linux.c:594 include/grub/util/install.h:32 -#: include/grub/util/install.h:64 util/grub-glue-efi.c:52 -#: util/grub-glue-efi.c:54 util/grub-glue-efi.c:56 util/grub-install.c:254 -#: util/grub-install.c:301 util/grub-mkfont.c:936 util/grub-mkimage.c:68 -#: util/grub-mkimage.c:74 util/grub-mkimage.c:76 util/grub-mkimage.c:78 -#: util/grub-mkimage.c:81 util/grub-mklayout.c:52 util/grub-mklayout.c:54 -#: util/grub-mkrescue.c:97 util/grub-mkrescue.c:101 util/grub-mkrescue.c:104 -#: util/grub-mkrescue.c:105 util/grub-mkrescue.c:106 -#: util/grub-mkstandalone.c:47 util/grub-mkstandalone.c:49 -#: util/grub-probe.c:732 util/grub-render-label.c:59 -#: util/grub-render-label.c:70 util/grub-render-label.c:72 util/grub-setup.c:78 -#: util/grub-setup.c:80 util/grub-setup.c:84 util/grub-syslinux2cfg.c:74 -#: util/grub-syslinux2cfg.c:147 -msgid "FILE" -msgstr "ФИЛЕ" - -#: grub-core/commands/blocklist.c:154 -msgid "Print a block list." -msgstr "Принт а блоцк лиÑÑ‚." - -#: grub-core/commands/boot.c:147 grub-core/commands/legacycfg.c:533 -#: grub-core/commands/legacycfg.c:574 grub-core/loader/arm64/linux.c:250 -#: grub-core/loader/i386/bsd.c:1799 grub-core/loader/i386/bsd.c:1900 -#: grub-core/loader/i386/bsd.c:2007 grub-core/loader/i386/bsd.c:2040 -#: grub-core/loader/i386/bsd.c:2089 grub-core/loader/i386/linux.c:1047 -#: grub-core/loader/i386/pc/linux.c:406 grub-core/loader/i386/xen.c:775 -#: grub-core/loader/i386/xen.c:859 grub-core/loader/ia64/efi/linux.c:545 -#: grub-core/loader/mips/linux.c:432 grub-core/loader/multiboot.c:388 -#: grub-core/loader/powerpc/ieee1275/linux.c:347 -#: grub-core/loader/sparc64/ieee1275/linux.c:387 grub-core/loader/xnu.c:572 -#: grub-core/loader/xnu.c:665 grub-core/loader/xnu.c:781 -#: grub-core/loader/xnu.c:895 grub-core/loader/xnu.c:1091 -#: grub-core/loader/xnu.c:1258 grub-core/loader/xnu.c:1289 -#: grub-core/loader/xnu.c:1430 -msgid "you need to load the kernel first" -msgstr "Ñоу неед то лоад тхе кернел фирÑÑ‚" - -#: grub-core/commands/boot.c:189 -msgid "Boot an operating system." -msgstr "Боот ан оператинг ÑÑÑтем." - -#: grub-core/commands/boottime.c:36 -#: grub-core/commands/i386/coreboot/cb_timestamps.c:108 -msgid "No boot time statistics is available\n" -msgstr "Ðо боот тиме ÑтатиÑÑ‚Ð¸Ñ†Ñ Ð¸Ñ Ð°Ð²Ð°Ð¸Ð»Ð°Ð±Ð»Ðµ\n" - -#: grub-core/commands/boottime.c:59 -msgid "Show boot time statistics." -msgstr "Схоў боот тиме ÑтатиÑтицÑ." - -#: grub-core/commands/cacheinfo.c:40 -#, c-format -msgid "Disk cache statistics: hits = %lu (%lu.%02lu%%), misses = %lu\n" -msgstr "ДиÑк цацхе ÑтатиÑтицÑ: Ñ…Ð¸Ñ‚Ñ = %lu (%lu.%02lu%%), миÑÑÐµÑ = %lu\n" - -#: grub-core/commands/cacheinfo.c:45 -msgid "No disk cache statistics available\n" -msgstr "Ðо диÑк цацхе ÑтатиÑÑ‚Ð¸Ñ†Ñ Ð°Ð²Ð°Ð¸Ð»Ð°Ð±Ð»Ðµ\n" - -#: grub-core/commands/cacheinfo.c:56 -msgid "Get disk cache info." -msgstr "Гет диÑк цацхе инфо." - -#: grub-core/commands/cat.c:33 -msgid "Accept DOS-style CR/NL line endings." -msgstr "Ðццепт ДОС-ÑÑ‚Ñле ЦР/ÐЛ лине ендингÑ." - -#: grub-core/commands/cat.c:163 grub-core/commands/minicmd.c:198 -msgid "Show the contents of a file." -msgstr "Схоў тхе Ñ†Ð¾Ð½Ñ‚ÐµÐ½Ñ‚Ñ Ð¾Ñ„ а филе." - -#: grub-core/commands/cmp.c:43 grub-core/commands/i386/pc/drivemap.c:239 -#: grub-core/commands/i386/wrmsr.c:60 grub-core/commands/iorw.c:85 -#: grub-core/commands/memrw.c:84 grub-core/commands/password.c:75 -#: grub-core/commands/password_pbkdf2.c:94 grub-core/commands/pgp.c:826 -#: grub-core/commands/regexp.c:113 grub-core/mmap/mmap.c:517 -#: grub-core/net/dns.c:639 -msgid "two arguments expected" -msgstr "тўо Ð°Ñ€Ð³ÑƒÐ¼ÐµÐ½Ñ‚Ñ ÐµÑ¯Ð¿ÐµÑ†Ñ‚ÐµÐ´" - -#: grub-core/commands/cmp.c:45 -#, c-format -msgid "Compare file `%s' with `%s':\n" -msgstr "Цомпаре филе `%s' ўитх `%s':\n" - -#: grub-core/commands/cmp.c:54 -#, c-format -msgid "Files differ in size: %llu [%s], %llu [%s]\n" -msgstr "Ð¤Ð¸Ð»ÐµÑ Ð´Ð¸Ñ„Ñ„ÐµÑ€ ин Ñизе: %llu [%s], %llu [%s]\n" - -#: grub-core/commands/cmp.c:81 -#, c-format -msgid "Files differ at the offset %llu: 0x%x [%s], 0x%x [%s]\n" -msgstr "Ð¤Ð¸Ð»ÐµÑ Ð´Ð¸Ñ„Ñ„ÐµÑ€ ат тхе оффÑет %llu: 0ѯ%x [%s], 0ѯ%x [%s]\n" - -#. TRANSLATORS: it's always exactly 2 files. -#: grub-core/commands/cmp.c:93 -msgid "The files are identical.\n" -msgstr "Тхе Ñ„Ð¸Ð»ÐµÑ Ð°Ñ€Ðµ идентицал.\n" - -#: grub-core/commands/cmp.c:113 -msgid "FILE1 FILE2" -msgstr "ФИЛЕ1 ФИЛЕ2" - -#: grub-core/commands/cmp.c:113 -msgid "Compare two files." -msgstr "Цомпаре тўо филеÑ." - -#: grub-core/commands/configfile.c:65 -msgid "Load another config file." -msgstr "Лоад анотхер цонфиг филе." - -#: grub-core/commands/configfile.c:69 grub-core/commands/configfile.c:87 -msgid "Load another config file without changing context." -msgstr "Лоад анотхер цонфиг филе ўитхоут цхангинг цонтеѯт." - -#: grub-core/commands/configfile.c:75 -msgid "" -"Load another config file without changing context but take only menu entries." -msgstr "" -"Лоад анотхер цонфиг филе ўитхоут цхангинг цонтеѯт бут таке Ð¾Ð½Ð»Ñ Ð¼ÐµÐ½Ñƒ ентриеÑ." - -#: grub-core/commands/configfile.c:81 -msgid "Load another config file but take only menu entries." -msgstr "Лоад анотхер цонфиг филе бут таке Ð¾Ð½Ð»Ñ Ð¼ÐµÐ½Ñƒ ентриеÑ." - -#: grub-core/commands/date.c:141 -msgid "[[year-]month-day] [hour:minute[:second]]" -msgstr "[[Ñеар-]монтх-даÑ] [хоур:минуте[:Ñецонд]]" - -#: grub-core/commands/date.c:142 -msgid "Display/set current datetime." -msgstr "ДиÑплаÑ/Ñет цуррент датетиме." - -#: grub-core/commands/echo.c:30 -msgid "Do not output the trailing newline." -msgstr "До нот оутпут тхе траилинг неўлине." - -#: grub-core/commands/echo.c:31 -msgid "Enable interpretation of backslash escapes." -msgstr "Енабле интерпретатион оф бацкÑлаÑÑ… еÑцапеÑ." - -#: grub-core/commands/echo.c:134 -msgid "[-e|-n] STRING" -msgstr "[-е|-н] СТРИÐГ" - -#: grub-core/commands/echo.c:134 -msgid "Display a line of text." -msgstr "ДиÑÐ¿Ð»Ð°Ñ Ð° лине оф теѯт." - -#: grub-core/commands/efi/efifwsetup.c:82 -msgid "Reboot into firmware setup menu." -msgstr "Ребоот инто фирмўаре Ñетуп мену." - -#: grub-core/commands/efi/fixvideo.c:107 -msgid "Fix video problem." -msgstr "Фиѯ видео проблем." - -#: grub-core/commands/efi/loadbios.c:52 -msgid "ROM image is present." -msgstr "РОМ имаге Ð¸Ñ Ð¿Ñ€ÐµÑент." - -#: grub-core/commands/efi/loadbios.c:70 -msgid "Can't enable ROM area." -msgstr "Цан'Ñ‚ енабле РОМ ареа." - -#: grub-core/commands/efi/loadbios.c:209 -msgid "" -"Create BIOS-like structures for backward compatibility with existing OS." -msgstr "" -"Цреате БИОС-лике ÑÑ‚Ñ€ÑƒÑ†Ñ‚ÑƒÑ€ÐµÑ Ñ„Ð¾Ñ€ бацкўард Ñ†Ð¾Ð¼Ð¿Ð°Ñ‚Ð¸Ð±Ð¸Ð»Ð¸Ñ‚Ñ ÑžÐ¸Ñ‚Ñ… еѯиÑтинг ОС." - -#: grub-core/commands/efi/loadbios.c:214 -msgid "BIOS_DUMP [INT10_DUMP]" -msgstr "БИОС_ДУМП [ИÐТ10_ДУМП]" - -#: grub-core/commands/efi/loadbios.c:215 -msgid "Load BIOS dump." -msgstr "Лоад БИОС думп." - -#: grub-core/commands/efi/shim_lock.c:76 -#, c-format -msgid "module cannot be loaded in UEFI secure boot mode: %s" -msgstr "модуле цаннот бе лоадед ин УЕФИ Ñецуре боот моде: %s" - -#: grub-core/commands/efi/shim_lock.c:98 -#, c-format -msgid "cannot boot due to dangerous module in memory: %s" -msgstr "цаннот боот дуе то Ð´Ð°Ð½Ð³ÐµÑ€Ð¾ÑƒÑ Ð¼Ð¾Ð´ÑƒÐ»Ðµ ин меморÑ: %s" - -#: grub-core/commands/efi/shim_lock.c:116 -msgid "bad shim signature" -msgstr "бад Ñхим Ñигнатуре" - -#: grub-core/commands/efi/tpm.c:149 grub-core/commands/efi/tpm.c:189 -#: grub-core/commands/efi/tpm.c:256 grub-core/commands/efi/tpm.c:306 -msgid "Command failed" -msgstr "Цомманд фаилед" - -#: grub-core/commands/efi/tpm.c:151 grub-core/commands/efi/tpm.c:191 -#: grub-core/commands/efi/tpm.c:258 grub-core/commands/efi/tpm.c:308 -msgid "Invalid parameter" -msgstr "Инвалид параметер" - -#: grub-core/commands/efi/tpm.c:154 grub-core/commands/efi/tpm.c:194 -#: grub-core/commands/efi/tpm.c:261 grub-core/commands/efi/tpm.c:311 -msgid "Output buffer too small" -msgstr "Оутпут буффер тоо Ñмалл" - -#: grub-core/commands/efi/tpm.c:156 grub-core/commands/efi/tpm.c:196 -#: grub-core/commands/efi/tpm.c:263 grub-core/commands/efi/tpm.c:313 -msgid "TPM unavailable" -msgstr "ТПМ унаваилабле" - -#: grub-core/commands/efi/tpm.c:158 grub-core/commands/efi/tpm.c:198 -#: grub-core/commands/efi/tpm.c:265 grub-core/commands/efi/tpm.c:315 -msgid "Unknown TPM error" -msgstr "Ункноўн ТПМ еррор" - -#: grub-core/commands/efi/tpm.c:240 grub-core/commands/efi/tpm.c:288 -msgid "cannot allocate TPM event buffer" -msgstr "цаннот аллоцате ТПМ евент буффер" - -#: grub-core/commands/eval.c:63 -msgid "STRING ..." -msgstr "СТРИÐГ ..." - -#: grub-core/commands/eval.c:64 -msgid "Evaluate arguments as GRUB commands" -msgstr "Евалуате Ð°Ñ€Ð³ÑƒÐ¼ÐµÐ½Ñ‚Ñ Ð°Ñ Ð“Ð Ð£Ð‘ цоммандÑ" - -#: grub-core/commands/file.c:41 -msgid "Check if FILE can be booted as i386 PAE Xen unprivileged guest kernel" -msgstr "Цхецк иф ФИЛЕ цан бе боотед Ð°Ñ Ð¸386 ПÐЕ Ѯен унпривилегед гуеÑÑ‚ кернел" - -#: grub-core/commands/file.c:44 -msgid "Check if FILE can be booted as x86_64 Xen unprivileged guest kernel" -msgstr "Цхецк иф ФИЛЕ цан бе боотед Ð°Ñ Ñ¯86_64 Ѯен унпривилегед гуеÑÑ‚ кернел" - -#: grub-core/commands/file.c:46 -msgid "Check if FILE can be used as Xen x86 privileged guest kernel" -msgstr "Цхецк иф ФИЛЕ цан бе уÑед Ð°Ñ Ñ®ÐµÐ½ ѯ86 привилегед гуеÑÑ‚ кернел" - -#: grub-core/commands/file.c:48 -msgid "Check if FILE can be used as x86 multiboot kernel" -msgstr "Цхецк иф ФИЛЕ цан бе уÑед Ð°Ñ Ñ¯86 мултибоот кернел" - -#: grub-core/commands/file.c:50 -msgid "Check if FILE can be used as x86 multiboot2 kernel" -msgstr "Цхецк иф ФИЛЕ цан бе уÑед Ð°Ñ Ñ¯86 мултибоот2 кернел" - -#: grub-core/commands/file.c:52 -msgid "Check if FILE is ARM Linux" -msgstr "Цхецк иф ФИЛЕ Ð¸Ñ ÐРМ Линуѯ" - -#: grub-core/commands/file.c:54 -msgid "Check if FILE is ARM64 Linux" -msgstr "Цхецк иф ФИЛЕ Ð¸Ñ ÐРМ64 Линуѯ" - -#: grub-core/commands/file.c:56 -msgid "Check if FILE is IA64 Linux" -msgstr "Цхецк иф ФИЛЕ Ð¸Ñ Ð˜Ð64 Линуѯ" - -#: grub-core/commands/file.c:58 -msgid "Check if FILE is MIPS Linux" -msgstr "Цхецк иф ФИЛЕ Ð¸Ñ ÐœÐ˜ÐŸÐ¡ Линуѯ" - -#: grub-core/commands/file.c:60 -msgid "Check if FILE is MIPSEL Linux" -msgstr "Цхецк иф ФИЛЕ Ð¸Ñ ÐœÐ˜ÐŸÐ¡Ð•Ð› Линуѯ" - -#: grub-core/commands/file.c:62 -msgid "Check if FILE is SPARC64 Linux" -msgstr "Цхецк иф ФИЛЕ Ð¸Ñ Ð¡ÐŸÐРЦ64 Линуѯ" - -#: grub-core/commands/file.c:64 -msgid "Check if FILE is POWERPC Linux" -msgstr "Цхецк иф ФИЛЕ Ð¸Ñ ÐŸÐžÐŽÐ•Ð ÐŸÐ¦ Линуѯ" - -#: grub-core/commands/file.c:66 -msgid "Check if FILE is x86 Linux" -msgstr "Цхецк иф ФИЛЕ Ð¸Ñ Ñ¯86 Линуѯ" - -#: grub-core/commands/file.c:68 -msgid "Check if FILE is x86 Linux supporting 32-bit protocol" -msgstr "Цхецк иф ФИЛЕ Ð¸Ñ Ñ¯86 Линуѯ Ñуппортинг 32-бит протоцол" - -#: grub-core/commands/file.c:70 -msgid "Check if FILE is x86 kFreeBSD" -msgstr "Цхецк иф ФИЛЕ Ð¸Ñ Ñ¯86 кФрееБСД" - -#: grub-core/commands/file.c:72 -msgid "Check if FILE is i386 kFreeBSD" -msgstr "Цхецк иф ФИЛЕ Ð¸Ñ Ð¸386 кФрееБСД" - -#: grub-core/commands/file.c:74 -msgid "Check if FILE is x86_64 kFreeBSD" -msgstr "Цхецк иф ФИЛЕ Ð¸Ñ Ñ¯86_64 кФрееБСД" - -#: grub-core/commands/file.c:77 -msgid "Check if FILE is x86 kNetBSD" -msgstr "Цхецк иф ФИЛЕ Ð¸Ñ Ñ¯86 кÐетБСД" - -#: grub-core/commands/file.c:79 -msgid "Check if FILE is i386 kNetBSD" -msgstr "Цхецк иф ФИЛЕ Ð¸Ñ Ð¸386 кÐетБСД" - -#: grub-core/commands/file.c:81 -msgid "Check if FILE is x86_64 kNetBSD" -msgstr "Цхецк иф ФИЛЕ Ð¸Ñ Ñ¯86_64 кÐетБСД" - -#: grub-core/commands/file.c:84 -msgid "Check if FILE is i386 EFI file" -msgstr "Цхецк иф ФИЛЕ Ð¸Ñ Ð¸386 ЕФИ филе" - -#: grub-core/commands/file.c:86 -msgid "Check if FILE is x86_64 EFI file" -msgstr "Цхецк иф ФИЛЕ Ð¸Ñ Ñ¯86_64 ЕФИ филе" - -#: grub-core/commands/file.c:88 -msgid "Check if FILE is IA64 EFI file" -msgstr "Цхецк иф ФИЛЕ Ð¸Ñ Ð˜Ð64 ЕФИ филе" - -#: grub-core/commands/file.c:90 -msgid "Check if FILE is ARM64 EFI file" -msgstr "Цхецк иф ФИЛЕ Ð¸Ñ ÐРМ64 ЕФИ филе" - -#: grub-core/commands/file.c:92 -msgid "Check if FILE is ARM EFI file" -msgstr "Цхецк иф ФИЛЕ Ð¸Ñ ÐРМ ЕФИ филе" - -#: grub-core/commands/file.c:94 -msgid "Check if FILE is RISC-V 32bit EFI file" -msgstr "Цхецк иф ФИЛЕ Ð¸Ñ Ð Ð˜Ð¡Ð¦-Ð’ 32бит ЕФИ филе" - -#: grub-core/commands/file.c:96 -msgid "Check if FILE is RISC-V 64bit EFI file" -msgstr "Цхецк иф ФИЛЕ Ð¸Ñ Ð Ð˜Ð¡Ð¦-Ð’ 64бит ЕФИ филе" - -#: grub-core/commands/file.c:98 -msgid "Check if FILE is hiberfil.sys in hibernated state" -msgstr "Цхецк иф ФИЛЕ Ð¸Ñ Ñ…Ð¸Ð±ÐµÑ€Ñ„Ð¸Ð».ÑÑÑ Ð¸Ð½ хибернатед Ñтате" - -#: grub-core/commands/file.c:100 -msgid "Check if FILE is x86_64 XNU (Mac OS X kernel)" -msgstr "Цхецк иф ФИЛЕ Ð¸Ñ Ñ¯86_64 Ñ®ÐУ (Мац ОС Ñ® кернел)" - -#: grub-core/commands/file.c:102 -msgid "Check if FILE is i386 XNU (Mac OS X kernel)" -msgstr "Цхецк иф ФИЛЕ Ð¸Ñ Ð¸386 Ñ®ÐУ (Мац ОС Ñ® кернел)" - -#: grub-core/commands/file.c:104 -msgid "Check if FILE is XNU (Mac OS X kernel) hibernated image" -msgstr "Цхецк иф ФИЛЕ Ð¸Ñ Ñ®ÐУ (Мац ОС Ñ® кернел) хибернатед имаге" - -#: grub-core/commands/file.c:106 -msgid "Check if FILE is BIOS bootsector" -msgstr "Цхецк иф ФИЛЕ Ð¸Ñ Ð‘Ð˜ÐžÐ¡ боотÑецтор" - -#. TRANSLATORS: it's a standalone boolean value, -#. opposite of "true". -#: grub-core/commands/file.c:675 grub-core/commands/i386/cmostest.c:63 -#: grub-core/commands/i386/cpuid.c:71 grub-core/commands/keystatus.c:83 -#: grub-core/commands/keystatus.c:87 grub-core/commands/keystatus.c:96 -#: grub-core/commands/test.c:436 grub-core/commands/true.c:39 -#: grub-core/script/execute.c:247 grub-core/script/execute.c:1039 -msgid "false" -msgstr "фалÑе" - -#: grub-core/commands/file.c:684 -msgid "OPTIONS FILE" -msgstr "ОПТИОÐС ФИЛЕ" - -#: grub-core/commands/file.c:685 -msgid "Check if FILE is of specified type." -msgstr "Цхецк иф ФИЛЕ Ð¸Ñ Ð¾Ñ„ Ñпецифиед Ñ‚Ñпе." - -#. TRANSLATORS: It means that the specified partition e.g. -#. hd0,msdos1=/dev/sda1 doesn't exist. -#: grub-core/commands/gptsync.c:140 grub-core/kern/disk.c:258 -msgid "no such partition" -msgstr "но Ñуцх партитион" - -#: grub-core/commands/gptsync.c:240 -#, c-format -msgid "New MBR is written to `%s'\n" -msgstr "Ðеў МБР Ð¸Ñ ÑžÑ€Ð¸Ñ‚Ñ‚ÐµÐ½ то `%s'\n" - -#: grub-core/commands/gptsync.c:252 -msgid "DEVICE [PARTITION[+/-[TYPE]]] ..." -msgstr "ДЕВИЦЕ [ПÐРТИТИОÐ[+/-[ТÐПЕ]]] ..." - -#. TRANSLATORS: MBR type is one-byte partition -#. type id. -#: grub-core/commands/gptsync.c:255 -msgid "" -"Fill hybrid MBR of GPT drive DEVICE. Specified partitions will be a part of " -"hybrid MBR. Up to 3 partitions are allowed. TYPE is an MBR type. + means " -"that partition is active. Only one partition can be active." -msgstr "" -"Филл Ñ…Ñбрид МБР оф ГПТ дриве ДЕВИЦЕ. Специфиед Ð¿Ð°Ñ€Ñ‚Ð¸Ñ‚Ð¸Ð¾Ð½Ñ ÑžÐ¸Ð»Ð» бе а парт оф " -"Ñ…Ñбрид МБР. Уп то 3 Ð¿Ð°Ñ€Ñ‚Ð¸Ñ‚Ð¸Ð¾Ð½Ñ Ð°Ñ€Ðµ аллоўед. ТÐПЕ Ð¸Ñ Ð°Ð½ МБР Ñ‚Ñпе. + Ð¼ÐµÐ°Ð½Ñ " -"тхат партитион Ð¸Ñ Ð°Ñ†Ñ‚Ð¸Ð²Ðµ. ÐžÐ½Ð»Ñ Ð¾Ð½Ðµ партитион цан бе ацтиве." - -#: grub-core/commands/halt.c:40 -msgid "" -"Halts the computer. This command does not work on all firmware " -"implementations." -msgstr "" -"Ð¥Ð°Ð»Ñ‚Ñ Ñ‚Ñ…Ðµ цомпутер. Ð¢Ñ…Ð¸Ñ Ñ†Ð¾Ð¼Ð¼Ð°Ð½Ð´ Ð´Ð¾ÐµÑ Ð½Ð¾Ñ‚ ўорк он алл фирмўаре " -"имплементатионÑ." - -#: grub-core/commands/hashsum.c:32 -msgid "Specify hash to use." -msgstr "Ð¡Ð¿ÐµÑ†Ð¸Ñ„Ñ Ñ…Ð°ÑÑ… то уÑе." - -#: grub-core/commands/hashsum.c:32 -msgid "HASH" -msgstr "Ð¥ÐСХ" - -#: grub-core/commands/hashsum.c:33 -msgid "Check hashes of files with hash list FILE." -msgstr "Цхецк хаÑÑ…ÐµÑ Ð¾Ñ„ Ñ„Ð¸Ð»ÐµÑ ÑžÐ¸Ñ‚Ñ… хаÑÑ… лиÑÑ‚ ФИЛЕ." - -#: grub-core/commands/hashsum.c:35 -msgid "Base directory for hash list." -msgstr "БаÑе Ð´Ð¸Ñ€ÐµÑ†Ñ‚Ð¾Ñ€Ñ Ñ„Ð¾Ñ€ хаÑÑ… лиÑÑ‚." - -#. TRANSLATORS: platform here isn't identifier. It can be translated. -#: grub-core/commands/hashsum.c:35 grub-core/commands/ls.c:150 -#: grub-core/commands/macbless.c:226 grub-core/commands/syslinuxcfg.c:51 -#: grub-core/commands/syslinuxcfg.c:54 grub-core/kern/emu/main.c:106 -#: include/grub/util/install.h:50 include/grub/util/install.h:53 -#: include/grub/util/install.h:56 include/grub/util/install.h:59 -#: util/grub-install.c:250 util/grub-install.c:252 util/grub-install.c:297 -#: util/grub-install.c:299 util/grub-mkimage.c:64 util/grub-mkimage.c:67 -#: util/grub-mknetdir.c:46 util/grub-mknetdir.c:48 util/grub-mkrescue.c:99 -#: util/grub-setup.c:82 util/grub-syslinux2cfg.c:63 util/grub-syslinux2cfg.c:65 -#: util/grub-syslinux2cfg.c:67 util/grub-syslinux2cfg.c:71 -msgid "DIR" -msgstr "ДИР" - -#: grub-core/commands/hashsum.c:37 -msgid "Don't stop after first error." -msgstr "Дон'Ñ‚ Ñтоп афтер фирÑÑ‚ еррор." - -#: grub-core/commands/hashsum.c:38 -msgid "Uncompress file before checksumming." -msgstr "УнцомпреÑÑ Ñ„Ð¸Ð»Ðµ бефоре цхецкÑумминг." - -#: grub-core/commands/hashsum.c:163 -#, c-format -msgid "%s: READ ERROR\n" -msgstr "%s: РЕÐД ЕРРОР\n" - -#: grub-core/commands/hashsum.c:177 -#, c-format -msgid "%s: HASH MISMATCH\n" -msgstr "%s: Ð¥ÐСХ МИСМÐТЦХ\n" - -#: grub-core/commands/hashsum.c:188 -#, c-format -msgid "%s: OK\n" -msgstr "%s: ОК\n" - -#: grub-core/commands/hashsum.c:282 -msgid "-h HASH [-c FILE [-p PREFIX]] [FILE1 [FILE2 ...]]" -msgstr "-Ñ… Ð¥ÐСХ [-ц ФИЛЕ [-п ПРЕФИѮ]] [ФИЛЕ1 [ФИЛЕ2 ...]]" - -#. TRANSLATORS: "hash checksum" is just to -#. be a bit more precise, you can treat it as -#. just "hash". -#: grub-core/commands/hashsum.c:287 grub-core/commands/hashsum.c:292 -#: grub-core/commands/hashsum.c:297 grub-core/commands/hashsum.c:302 -#: grub-core/commands/hashsum.c:307 grub-core/commands/hashsum.c:313 -msgid "Compute or check hash checksum." -msgstr "Цомпуте ор цхецк хаÑÑ… цхецкÑум." - -#: grub-core/commands/hashsum.c:290 grub-core/commands/hashsum.c:295 -#: grub-core/commands/hashsum.c:300 grub-core/commands/hashsum.c:305 -#: grub-core/commands/hashsum.c:311 -msgid "[-c FILE [-p PREFIX]] [FILE1 [FILE2 ...]]" -msgstr "[-ц ФИЛЕ [-п ПРЕФИѮ]] [ФИЛЕ1 [ФИЛЕ2 ...]]" - -#: grub-core/commands/hdparm.c:33 -msgid "" -"Set Advanced Power Management\n" -"(1=low, ..., 254=high, 255=off)." -msgstr "" -"Сет Ðдванцед Поўер Манагемент\n" -"(1=лоў, ..., 254=хигх, 255=офф)." - -#: grub-core/commands/hdparm.c:36 -msgid "Display power mode." -msgstr "ДиÑÐ¿Ð»Ð°Ñ Ð¿Ð¾ÑžÐµÑ€ моде." - -#: grub-core/commands/hdparm.c:37 -msgid "Freeze ATA security settings until reset." -msgstr "Фреезе ÐТРÑÐµÑ†ÑƒÑ€Ð¸Ñ‚Ñ ÑÐµÑ‚Ñ‚Ð¸Ð½Ð³Ñ ÑƒÐ½Ñ‚Ð¸Ð» реÑет." - -#: grub-core/commands/hdparm.c:39 -msgid "Display SMART health status." -msgstr "ДиÑÐ¿Ð»Ð°Ñ Ð¡ÐœÐРТ хеалтх ÑтатуÑ." - -#: grub-core/commands/hdparm.c:40 -msgid "" -"Set Automatic Acoustic Management\n" -"(0=off, 128=quiet, ..., 254=fast)." -msgstr "" -"Сет Ðутоматиц ÐцоуÑтиц Манагемент\n" -"(0=офф, 128=ќуиет, ..., 254=фаÑÑ‚)." - -#: grub-core/commands/hdparm.c:43 -msgid "" -"Set standby timeout\n" -"(0=off, 1=5s, 2=10s, ..., 240=20m, 241=30m, ...)." -msgstr "" -"Сет ÑÑ‚Ð°Ð½Ð´Ð±Ñ Ñ‚Ð¸Ð¼ÐµÐ¾ÑƒÑ‚\n" -"(0=офф, 1=5Ñ, 2=10Ñ, ..., 240=20м, 241=30м, ...)." - -#: grub-core/commands/hdparm.c:46 -msgid "Set drive to standby mode." -msgstr "Сет дриве то ÑÑ‚Ð°Ð½Ð´Ð±Ñ Ð¼Ð¾Ð´Ðµ." - -#: grub-core/commands/hdparm.c:47 -msgid "Set drive to sleep mode." -msgstr "Сет дриве то Ñлееп моде." - -#: grub-core/commands/hdparm.c:48 -msgid "Print drive identity and settings." -msgstr "Принт дриве Ð¸Ð´ÐµÐ½Ñ‚Ð¸Ñ‚Ñ Ð°Ð½Ð´ ÑеттингÑ." - -#: grub-core/commands/hdparm.c:50 -msgid "Show raw contents of ATA IDENTIFY sector." -msgstr "Схоў раў Ñ†Ð¾Ð½Ñ‚ÐµÐ½Ñ‚Ñ Ð¾Ñ„ ÐТРИДЕÐТИФРÑецтор." - -#: grub-core/commands/hdparm.c:52 -msgid "Disable/enable SMART (0/1)." -msgstr "ДиÑабле/енабле СМÐРТ (0/1)." - -#: grub-core/commands/hdparm.c:53 -msgid "Do not print messages." -msgstr "До нот принт меÑÑагеÑ." - -#: grub-core/commands/hdparm.c:286 grub-core/commands/i386/rdmsr.c:68 -#: grub-core/commands/iorw.c:47 grub-core/commands/legacycfg.c:760 -#: grub-core/commands/legacycfg.c:812 grub-core/commands/macbless.c:190 -#: grub-core/commands/memrw.c:47 grub-core/commands/pgp.c:738 -#: grub-core/commands/pgp.c:792 grub-core/commands/search.c:304 -#: grub-core/commands/search_wrap.c:179 grub-core/commands/setpci.c:243 -#: grub-core/commands/sleep.c:71 grub-core/fs/zfs/zfsinfo.c:279 -#: grub-core/fs/zfs/zfsinfo.c:358 grub-core/gettext/gettext.c:492 -#: grub-core/kern/corecmd.c:65 grub-core/kern/corecmd.c:79 -#: grub-core/mmap/mmap.c:430 grub-core/net/dns.c:713 grub-core/net/dns.c:745 -#: grub-core/net/net.c:694 grub-core/net/net.c:1052 -#: grub-core/normal/context.c:194 grub-core/script/execute.c:131 -#: grub-core/term/gfxterm_background.c:136 -msgid "one argument expected" -msgstr "оне аргумент еѯпецтед" - -#: grub-core/commands/hdparm.c:440 -msgid "[OPTIONS] DISK" -msgstr "[ОПТИОÐС] ДИСК" - -#: grub-core/commands/hdparm.c:441 -msgid "Get/set ATA disk parameters." -msgstr "Гет/Ñет ÐТРдиÑк параметерÑ." - -#: grub-core/commands/help.c:132 grub-core/lib/arg.c:109 -#: grub-core/lib/gnulib/argp-help.c:1616 -msgid "Usage:" -msgstr "УÑаге:" - -#: grub-core/commands/help.c:146 -msgid "[PATTERN ...]" -msgstr "[ПÐТТЕРР...]" - -#: grub-core/commands/help.c:147 -msgid "Show a help message." -msgstr "Схоў а хелп меÑÑаге." - -#: grub-core/commands/hexdump.c:31 -msgid "Skip offset bytes from the beginning of file." -msgstr "Скип оффÑет бÑÑ‚ÐµÑ Ñ„Ñ€Ð¾Ð¼ тхе бегиннинг оф филе." - -#: grub-core/commands/hexdump.c:33 -msgid "Read only LENGTH bytes." -msgstr "Реад Ð¾Ð½Ð»Ñ Ð›Ð•ÐГТХ бÑтеÑ." - -#: grub-core/commands/hexdump.c:125 -msgid "[OPTIONS] FILE_OR_DEVICE" -msgstr "[ОПТИОÐС] ФИЛЕ_ОР_ДЕВИЦЕ" - -#: grub-core/commands/hexdump.c:126 -msgid "Show raw contents of a file or memory." -msgstr "Схоў раў Ñ†Ð¾Ð½Ñ‚ÐµÐ½Ñ‚Ñ Ð¾Ñ„ а филе ор меморÑ." - -#: grub-core/commands/i386/cmosdump.c:58 -msgid "Show raw dump of the CMOS contents." -msgstr "Схоў раў думп оф тхе ЦМОС цонтентÑ." - -#: grub-core/commands/i386/cmostest.c:108 -#: grub-core/commands/i386/cmostest.c:111 -#: grub-core/commands/i386/cmostest.c:114 -msgid "BYTE:BIT" -msgstr "БÐТЕ:БИТ" - -#: grub-core/commands/i386/cmostest.c:109 -msgid "Test bit at BYTE:BIT in CMOS." -msgstr "ТеÑÑ‚ бит ат БÐТЕ:БИТ ин ЦМОС." - -#: grub-core/commands/i386/cmostest.c:112 -msgid "Clear bit at BYTE:BIT in CMOS." -msgstr "Цлеар бит ат БÐТЕ:БИТ ин ЦМОС." - -#. TRANSLATORS: A bit may be either set (1) or clear (0). -#: grub-core/commands/i386/cmostest.c:116 -msgid "Set bit at BYTE:BIT in CMOS." -msgstr "Сет бит ат БÐТЕ:БИТ ин ЦМОС." - -#: grub-core/commands/i386/coreboot/cb_timestamps.c:120 -msgid "Show coreboot boot time statistics." -msgstr "Схоў цоребоот боот тиме ÑтатиÑтицÑ." - -#: grub-core/commands/i386/coreboot/cbls.c:137 -msgid "List coreboot tables." -msgstr "ЛиÑÑ‚ цоребоот таблеÑ." - -#. TRANSLATORS: "(default)" at the end means that this option is used if -#. no argument is specified. -#: grub-core/commands/i386/cpuid.c:36 -msgid "Check if CPU supports 64-bit (long) mode (default)." -msgstr "Цхецк иф ЦПУ ÑÑƒÐ¿Ð¿Ð¾Ñ€Ñ‚Ñ 64-бит (лонг) моде (дефаулт)." - -#: grub-core/commands/i386/cpuid.c:37 -msgid "Check if CPU supports Physical Address Extension." -msgstr "Цхецк иф ЦПУ ÑÑƒÐ¿Ð¿Ð¾Ñ€Ñ‚Ñ ÐŸÑ…ÑÑицал ÐддреÑÑ Ð•Ñ¯Ñ‚ÐµÐ½Ñион." - -#: grub-core/commands/i386/cpuid.c:119 -msgid "Check for CPU features." -msgstr "Цхецк фор ЦПУ феатуреÑ." - -#. TRANSLATORS: In this file "mapping" refers to a change GRUB makes so if -#. your language doesn't have an equivalent of "mapping" you can -#. use the word like "rerouting". -#. -#: grub-core/commands/i386/pc/drivemap.c:43 -msgid "Show the current mappings." -msgstr "Схоў тхе цуррент маппингÑ." - -#: grub-core/commands/i386/pc/drivemap.c:44 -msgid "Reset all mappings to the default values." -msgstr "РеÑет алл Ð¼Ð°Ð¿Ð¿Ð¸Ð½Ð³Ñ Ñ‚Ð¾ тхе дефаулт валуеÑ." - -#: grub-core/commands/i386/pc/drivemap.c:45 -msgid "Perform both direct and reverse mappings." -msgstr "Перформ ботх дирецт анд реверÑе маппингÑ." - -#: grub-core/commands/i386/pc/drivemap.c:184 -msgid "No drives have been remapped" -msgstr "Ðо Ð´Ñ€Ð¸Ð²ÐµÑ Ñ…Ð°Ð²Ðµ беен ремаппед" - -#. TRANSLATORS: This is the header of mapping list. -#. On the left is how OS will see the disks and -#. on the right current GRUB vision. -#: grub-core/commands/i386/pc/drivemap.c:191 -msgid "OS disk #num ------> GRUB/BIOS device" -msgstr "ОС диÑк #нум ------> ГРУБ/БИОС девице" - -#: grub-core/commands/i386/pc/drivemap.c:413 -msgid "-l | -r | [-s] grubdev osdisk." -msgstr "-л | -Ñ€ | [-Ñ] грубдев оÑдиÑк." - -#: grub-core/commands/i386/pc/drivemap.c:414 -msgid "Manage the BIOS drive mappings." -msgstr "Манаге тхе БИОС дриве маппингÑ." - -#: grub-core/commands/i386/pc/halt.c:31 -msgid "Do not use APM to halt the computer." -msgstr "До нот уÑе ÐПМ то халт тхе цомпутер." - -#: grub-core/commands/i386/pc/halt.c:119 -msgid "Halt the system, if possible using APM." -msgstr "Халт тхе ÑÑÑтем, иф поÑÑибле уÑинг ÐПМ." - -#: grub-core/commands/i386/pc/lsapm.c:75 -msgid "no APM found" -msgstr "но ÐПМ фоунд" - -#: grub-core/commands/i386/pc/lsapm.c:77 -#, c-format -msgid "" -"Version %u.%u\n" -"32-bit CS = 0x%x, len = 0x%x, offset = 0x%x\n" -"16-bit CS = 0x%x, len = 0x%x\n" -"DS = 0x%x, len = 0x%x\n" -msgstr "" -"ВерÑион %u.%u\n" -"32-бит ЦС = 0ѯ%x, лен = 0ѯ%x, оффÑет = 0ѯ%x\n" -"16-бит ЦС = 0ѯ%x, лен = 0ѯ%x\n" -"ДС = 0ѯ%x, лен = 0ѯ%x\n" - -#: grub-core/commands/i386/pc/lsapm.c:86 -msgid "16-bit protected interface supported\n" -msgstr "16-бит протецтед интерфаце Ñуппортед\n" - -#: grub-core/commands/i386/pc/lsapm.c:87 -msgid "16-bit protected interface unsupported\n" -msgstr "16-бит протецтед интерфаце унÑуппортед\n" - -#: grub-core/commands/i386/pc/lsapm.c:89 -msgid "32-bit protected interface supported\n" -msgstr "32-бит протецтед интерфаце Ñуппортед\n" - -#: grub-core/commands/i386/pc/lsapm.c:90 -msgid "32-bit protected interface unsupported\n" -msgstr "32-бит протецтед интерфаце унÑуппортед\n" - -#: grub-core/commands/i386/pc/lsapm.c:92 -msgid "CPU Idle slows down processor\n" -msgstr "ЦПУ Идле ÑÐ»Ð¾ÑžÑ Ð´Ð¾ÑžÐ½ процеÑÑор\n" - -#: grub-core/commands/i386/pc/lsapm.c:93 -msgid "CPU Idle doesn't slow down processor\n" -msgstr "ЦПУ Идле доеÑн'Ñ‚ Ñлоў доўн процеÑÑор\n" - -#: grub-core/commands/i386/pc/lsapm.c:95 -msgid "APM disabled\n" -msgstr "ÐПМ диÑаблед\n" - -#: grub-core/commands/i386/pc/lsapm.c:95 -msgid "APM enabled\n" -msgstr "ÐПМ енаблед\n" - -#: grub-core/commands/i386/pc/lsapm.c:97 -msgid "APM disengaged\n" -msgstr "ÐПМ диÑенгагед\n" - -#: grub-core/commands/i386/pc/lsapm.c:97 -msgid "APM engaged\n" -msgstr "ÐПМ енгагед\n" - -#: grub-core/commands/i386/pc/lsapm.c:107 -msgid "Show APM information." -msgstr "Схоў ÐПМ информатион." - -#. TRANSLATORS: It's musical notes, not the notes -#. you take. Play command expects arguments which can -#. be either a filename or tempo+notes. -#. This error happens if none is specified. -#: grub-core/commands/i386/pc/play.c:88 -msgid "filename or tempo and notes expected" -msgstr "филенаме ор темпо анд Ð½Ð¾Ñ‚ÐµÑ ÐµÑ¯Ð¿ÐµÑ†Ñ‚ÐµÐ´" - -#: grub-core/commands/i386/pc/play.c:113 grub-core/commands/i386/pc/play.c:144 -#, c-format -msgid "Invalid tempo in %s" -msgstr "Инвалид темпо ин %s" - -#: grub-core/commands/i386/pc/play.c:151 grub-core/commands/macbless.c:172 -#: grub-core/fs/archelp.c:260 grub-core/fs/bfs.c:621 grub-core/fs/bfs.c:704 -#: grub-core/fs/btrfs.c:1726 grub-core/fs/btrfs.c:1755 -#: grub-core/fs/btrfs.c:1799 grub-core/fs/btrfs.c:1882 -#: grub-core/fs/btrfs.c:1906 grub-core/fs/fshelp.c:257 grub-core/fs/jfs.c:696 -#: grub-core/fs/minix.c:426 grub-core/fs/ufs.c:544 grub-core/fs/zfs/zfs.c:2083 -#: grub-core/fs/zfs/zfs.c:2095 grub-core/fs/zfs/zfs.c:2301 -#: grub-core/net/http.c:120 -#, c-format -msgid "file `%s' not found" -msgstr "филе `%s' нот фоунд" - -#: grub-core/commands/i386/pc/play.c:162 grub-core/commands/i386/pc/play.c:171 -#: grub-core/kern/misc.c:419 grub-core/script/execute.c:138 -#: grub-core/script/execute.c:244 -msgid "unrecognized number" -msgstr "унрецогнизед нумбер" - -#: grub-core/commands/i386/pc/play.c:190 -msgid "FILE | TEMPO [PITCH1 DURATION1] [PITCH2 DURATION2] ... " -msgstr "ФИЛЕ | ТЕМПО [ПИТЦХ1 ДУРÐТИОÐ1] [ПИТЦХ2 ДУРÐТИОÐ2] ... " - -#: grub-core/commands/i386/pc/play.c:191 -msgid "Play a tune." -msgstr "ÐŸÐ»Ð°Ñ Ð° туне." - -#: grub-core/commands/i386/pc/sendkey.c:39 -msgid "set numlock mode" -msgstr "Ñет нумлоцк моде" - -#: grub-core/commands/i386/pc/sendkey.c:40 -msgid "set capslock mode" -msgstr "Ñет цапÑлоцк моде" - -#: grub-core/commands/i386/pc/sendkey.c:41 -msgid "set scrolllock mode" -msgstr "Ñет Ñцролллоцк моде" - -#: grub-core/commands/i386/pc/sendkey.c:42 -msgid "set insert mode" -msgstr "Ñет инÑерт моде" - -#: grub-core/commands/i386/pc/sendkey.c:43 -msgid "set pause mode" -msgstr "Ñет пауÑе моде" - -#: grub-core/commands/i386/pc/sendkey.c:44 -msgid "press left shift" -msgstr "преÑÑ Ð»ÐµÑ„Ñ‚ Ñхифт" - -#: grub-core/commands/i386/pc/sendkey.c:45 -msgid "press right shift" -msgstr "преÑÑ Ñ€Ð¸Ð³Ñ…Ñ‚ Ñхифт" - -#: grub-core/commands/i386/pc/sendkey.c:46 -msgid "press SysRq" -msgstr "преÑÑ Ð¡ÑÑРќ" - -#: grub-core/commands/i386/pc/sendkey.c:47 -msgid "press NumLock key" -msgstr "преÑÑ ÐумЛоцк кеÑ" - -#: grub-core/commands/i386/pc/sendkey.c:48 -msgid "press CapsLock key" -msgstr "преÑÑ Ð¦Ð°Ð¿ÑЛоцк кеÑ" - -#: grub-core/commands/i386/pc/sendkey.c:49 -msgid "press ScrollLock key" -msgstr "преÑÑ Ð¡Ñ†Ñ€Ð¾Ð»Ð»Ð›Ð¾Ñ†Ðº кеÑ" - -#: grub-core/commands/i386/pc/sendkey.c:50 -msgid "press Insert key" -msgstr "преÑÑ Ð˜Ð½Ñерт кеÑ" - -#: grub-core/commands/i386/pc/sendkey.c:51 -msgid "press left alt" -msgstr "преÑÑ Ð»ÐµÑ„Ñ‚ алт" - -#: grub-core/commands/i386/pc/sendkey.c:52 -msgid "press right alt" -msgstr "преÑÑ Ñ€Ð¸Ð³Ñ…Ñ‚ алт" - -#: grub-core/commands/i386/pc/sendkey.c:53 -msgid "press left ctrl" -msgstr "преÑÑ Ð»ÐµÑ„Ñ‚ цтрл" - -#: grub-core/commands/i386/pc/sendkey.c:54 -msgid "press right ctrl" -msgstr "преÑÑ Ñ€Ð¸Ð³Ñ…Ñ‚ цтрл" - -#: grub-core/commands/i386/pc/sendkey.c:55 -msgid "don't update LED state" -msgstr "дон'Ñ‚ упдате ЛЕД Ñтате" - -#: grub-core/commands/i386/pc/sendkey.c:372 -msgid "[KEYSTROKE1] [KEYSTROKE2] ..." -msgstr "[КЕÐСТРОКЕ1] [КЕÐСТРОКЕ2] ..." - -#. TRANSLATORS: It can emulate multiple -#. keypresses. -#: grub-core/commands/i386/pc/sendkey.c:375 -msgid "Emulate a keystroke sequence" -msgstr "Емулате а кеÑÑтроке Ñеќуенце" - -#: grub-core/commands/i386/rdmsr.c:37 grub-core/commands/iorw.c:34 -#: grub-core/commands/memrw.c:33 grub-core/commands/setpci.c:73 -msgid "Save read value into variable VARNAME." -msgstr "Саве реад валуе инто вариабле Ð’ÐРÐÐМЕ." - -#: grub-core/commands/i386/rdmsr.c:38 grub-core/commands/iorw.c:35 -#: grub-core/commands/memrw.c:34 grub-core/commands/probe.c:40 -#: grub-core/commands/search_wrap.c:40 grub-core/commands/setpci.c:74 -#: grub-core/commands/tr.c:32 -msgid "VARNAME" -msgstr "Ð’ÐРÐÐМЕ" - -#: grub-core/commands/i386/rdmsr.c:55 grub-core/commands/i386/rdmsr.c:60 -#: grub-core/commands/i386/rdmsr.c:65 grub-core/commands/i386/wrmsr.c:47 -#: grub-core/commands/i386/wrmsr.c:52 grub-core/commands/i386/wrmsr.c:57 -msgid "unsupported instruction" -msgstr "унÑуппортед инÑтруцтион" - -#: grub-core/commands/i386/rdmsr.c:77 grub-core/commands/i386/wrmsr.c:69 -#: grub-core/commands/i386/wrmsr.c:77 grub-core/net/dns.c:727 -msgid "invalid argument" -msgstr "инвалид аргумент" - -#: grub-core/commands/i386/rdmsr.c:94 grub-core/commands/memrw.c:125 -#: grub-core/commands/memrw.c:129 grub-core/commands/memrw.c:133 -msgid "ADDR" -msgstr "ÐДДР" - -#: grub-core/commands/i386/rdmsr.c:95 -msgid "Read a CPU model specific register." -msgstr "Реад а ЦПУ модел Ñпецифиц региÑтер." - -#: grub-core/commands/i386/wrmsr.c:86 -msgid "ADDR VALUE" -msgstr "ÐДДР Ð’ÐЛУЕ" - -#: grub-core/commands/i386/wrmsr.c:87 -msgid "Write a value to a CPU model specific register." -msgstr "Ўрите а валуе то а ЦПУ модел Ñпецифиц региÑтер." - -#: grub-core/commands/ieee1275/suspend.c:34 -msgid "Run `go' to resume GRUB." -msgstr "Рун `го' то реÑуме ГРУБ." - -#: grub-core/commands/ieee1275/suspend.c:45 -msgid "Return to IEEE1275 prompt." -msgstr "Ретурн то ИЕЕЕ1275 промпт." - -#: grub-core/commands/iorw.c:123 grub-core/commands/iorw.c:127 -#: grub-core/commands/iorw.c:131 grub-core/gdb/gdb.c:79 -msgid "PORT" -msgstr "ПОРТ" - -#: grub-core/commands/iorw.c:123 -msgid "Read 8-bit value from PORT." -msgstr "Реад 8-бит валуе фром ПОРТ." - -#: grub-core/commands/iorw.c:127 -msgid "Read 16-bit value from PORT." -msgstr "Реад 16-бит валуе фром ПОРТ." - -#: grub-core/commands/iorw.c:131 -msgid "Read 32-bit value from PORT." -msgstr "Реад 32-бит валуе фром ПОРТ." - -#: grub-core/commands/iorw.c:135 grub-core/commands/iorw.c:139 -msgid "PORT VALUE [MASK]" -msgstr "ПОРТ Ð’ÐЛУЕ [МÐСК]" - -#: grub-core/commands/iorw.c:136 -msgid "Write 8-bit VALUE to PORT." -msgstr "Ўрите 8-бит Ð’ÐЛУЕ то ПОРТ." - -#: grub-core/commands/iorw.c:140 -msgid "Write 16-bit VALUE to PORT." -msgstr "Ўрите 16-бит Ð’ÐЛУЕ то ПОРТ." - -#: grub-core/commands/iorw.c:143 grub-core/commands/memrw.c:137 -#: grub-core/commands/memrw.c:141 grub-core/commands/memrw.c:145 -msgid "ADDR VALUE [MASK]" -msgstr "ÐДДР Ð’ÐЛУЕ [МÐСК]" - -#: grub-core/commands/iorw.c:144 -msgid "Write 32-bit VALUE to PORT." -msgstr "Ўрите 32-бит Ð’ÐЛУЕ то ПОРТ." - -#: grub-core/commands/keylayouts.c:215 grub-core/commands/loadenv.c:61 -#: grub-core/commands/nativedisk.c:189 grub-core/efiemu/main.c:235 -#: grub-core/font/font.c:428 grub-core/gfxmenu/gfxmenu.c:63 -#: grub-core/kern/device.c:42 grub-core/kern/dl.c:740 -#, c-format -msgid "variable `%s' isn't set" -msgstr "вариабле `%s' иÑн'Ñ‚ Ñет" - -#: grub-core/commands/keylayouts.c:301 -msgid "Load a keyboard layout." -msgstr "Лоад а кеÑбоард лаÑоут." - -#. TRANSLATORS: "Check" in a sense that if this key is pressed then -#. "true" is returned, otherwise "false". -#: grub-core/commands/keystatus.c:32 -msgid "Check Shift key." -msgstr "Цхецк Схифт кеÑ." - -#: grub-core/commands/keystatus.c:33 -msgid "Check Control key." -msgstr "Цхецк Цонтрол кеÑ." - -#: grub-core/commands/keystatus.c:34 -msgid "Check Alt key." -msgstr "Цхецк Ðлт кеÑ." - -#. TRANSLATORS: there are 3 modifiers. -#: grub-core/commands/keystatus.c:106 -msgid "Check key modifier status." -msgstr "Цхецк ÐºÐµÑ Ð¼Ð¾Ð´Ð¸Ñ„Ð¸ÐµÑ€ ÑтатуÑ." - -#: grub-core/commands/legacycfg.c:512 grub-core/commands/legacycfg.c:526 -#: grub-core/commands/legacycfg.c:546 grub-core/commands/legacycfg.c:559 -#: grub-core/commands/time.c:43 grub-core/script/function.c:109 -#: util/grub-file.c:100 util/grub-fstest.c:57 util/grub-mount.c:69 -#, c-format -msgid "can't find command `%s'" -msgstr "цан'Ñ‚ финд цомманд `%s'" - -#: grub-core/commands/legacycfg.c:813 grub-core/normal/auth.c:225 -#: util/grub-mkpasswd-pbkdf2.c:139 -msgid "Enter password: " -msgstr "Ентер паÑÑўорд: " - -#. TRANSLATORS: "legacy config" means -#. "config as used by grub-legacy". -#: grub-core/commands/legacycfg.c:837 -msgid "Parse legacy config in same context" -msgstr "ПарÑе Ð»ÐµÐ³Ð°Ñ†Ñ Ñ†Ð¾Ð½Ñ„Ð¸Ð³ ин Ñаме цонтеѯт" - -#: grub-core/commands/legacycfg.c:842 -msgid "Parse legacy config in new context" -msgstr "ПарÑе Ð»ÐµÐ³Ð°Ñ†Ñ Ñ†Ð¾Ð½Ñ„Ð¸Ð³ ин неў цонтеѯт" - -#: grub-core/commands/legacycfg.c:847 -msgid "Parse legacy config in same context taking only menu entries" -msgstr "ПарÑе Ð»ÐµÐ³Ð°Ñ†Ñ Ñ†Ð¾Ð½Ñ„Ð¸Ð³ ин Ñаме цонтеѯт такинг Ð¾Ð½Ð»Ñ Ð¼ÐµÐ½Ñƒ ентриеÑ" - -#: grub-core/commands/legacycfg.c:852 -msgid "Parse legacy config in new context taking only menu entries" -msgstr "ПарÑе Ð»ÐµÐ³Ð°Ñ†Ñ Ñ†Ð¾Ð½Ñ„Ð¸Ð³ ин неў цонтеѯт такинг Ð¾Ð½Ð»Ñ Ð¼ÐµÐ½Ñƒ ентриеÑ" - -#: grub-core/commands/legacycfg.c:856 -msgid "[--no-mem-option] [--type=TYPE] FILE [ARG ...]" -msgstr "[--но-мем-оптион] [--Ñ‚Ñпе=ТÐПЕ] ФИЛЕ [ÐРГ ...]" - -#: grub-core/commands/legacycfg.c:857 -msgid "Simulate grub-legacy `kernel' command" -msgstr "Симулате груб-Ð»ÐµÐ³Ð°Ñ†Ñ `кернел' цомманд" - -#: grub-core/commands/legacycfg.c:861 grub-core/commands/legacycfg.c:865 -msgid "FILE [ARG ...]" -msgstr "ФИЛЕ [ÐРГ ...]" - -#: grub-core/commands/legacycfg.c:862 -msgid "Simulate grub-legacy `initrd' command" -msgstr "Симулате груб-Ð»ÐµÐ³Ð°Ñ†Ñ `инитрд' цомманд" - -#: grub-core/commands/legacycfg.c:866 -msgid "Simulate grub-legacy `modulenounzip' command" -msgstr "Симулате груб-Ð»ÐµÐ³Ð°Ñ†Ñ `модуленоунзип' цомманд" - -#: grub-core/commands/legacycfg.c:870 grub-core/commands/legacycfg.c:875 -msgid "[--md5] PASSWD [FILE]" -msgstr "[--мд5] ПÐССЎД [ФИЛЕ]" - -#: grub-core/commands/legacycfg.c:871 -msgid "Simulate grub-legacy `password' command" -msgstr "Симулате груб-Ð»ÐµÐ³Ð°Ñ†Ñ `паÑÑўорд' цомманд" - -#: grub-core/commands/legacycfg.c:876 -msgid "Simulate grub-legacy `password' command in menu entry mode" -msgstr "Симулате груб-Ð»ÐµÐ³Ð°Ñ†Ñ `паÑÑўорд' цомманд ин мену ÐµÐ½Ñ‚Ñ€Ñ Ð¼Ð¾Ð´Ðµ" - -#. TRANSLATORS: This option is used to override default filename -#. for loading and storing environment. -#: grub-core/commands/loadenv.c:37 -msgid "Specify filename." -msgstr "Ð¡Ð¿ÐµÑ†Ð¸Ñ„Ñ Ñ„Ð¸Ð»ÐµÐ½Ð°Ð¼Ðµ." - -#: grub-core/commands/loadenv.c:39 -msgid "Skip signature-checking of the environment file." -msgstr "Скип Ñигнатуре-цхецкинг оф тхе енвиронмент филе." - -#: grub-core/commands/loadenv.c:451 -msgid "[-f FILE] [-s|--skip-sig] [variable_name_to_whitelist] [...]" -msgstr "[-Ñ„ ФИЛЕ] [-Ñ|--Ñкип-Ñиг] [вариабле_наме_то_ўхителиÑÑ‚] [...]" - -#: grub-core/commands/loadenv.c:452 -msgid "Load variables from environment block file." -msgstr "Лоад Ð²Ð°Ñ€Ð¸Ð°Ð±Ð»ÐµÑ Ñ„Ñ€Ð¾Ð¼ енвиронмент блоцк филе." - -#: grub-core/commands/loadenv.c:455 -msgid "[-f FILE]" -msgstr "[-Ñ„ ФИЛЕ]" - -#: grub-core/commands/loadenv.c:456 -msgid "List variables from environment block file." -msgstr "ЛиÑÑ‚ Ð²Ð°Ñ€Ð¸Ð°Ð±Ð»ÐµÑ Ñ„Ñ€Ð¾Ð¼ енвиронмент блоцк филе." - -#: grub-core/commands/loadenv.c:460 -msgid "[-f FILE] variable_name [...]" -msgstr "[-Ñ„ ФИЛЕ] вариабле_наме [...]" - -#: grub-core/commands/loadenv.c:461 -msgid "Save variables to environment block file." -msgstr "Саве Ð²Ð°Ñ€Ð¸Ð°Ð±Ð»ÐµÑ Ñ‚Ð¾ енвиронмент блоцк филе." - -#: grub-core/commands/ls.c:40 -msgid "Show a long list with more detailed information." -msgstr "Схоў а лонг лиÑÑ‚ ўитх море детаилед информатион." - -#: grub-core/commands/ls.c:41 -msgid "Print sizes in a human readable format." -msgstr "Принт ÑÐ¸Ð·ÐµÑ Ð¸Ð½ а хуман реадабле формат." - -#: grub-core/commands/ls.c:42 -msgid "List all files." -msgstr "ЛиÑÑ‚ алл филеÑ." - -#: grub-core/commands/ls.c:73 -msgid "Network protocols:" -msgstr "Ðетўорк протоцолÑ:" - -#: grub-core/commands/ls.c:295 -msgid "[-l|-h|-a] [FILE ...]" -msgstr "[-л|-Ñ…|-а] [ФИЛЕ ...]" - -#: grub-core/commands/ls.c:296 -msgid "List devices and files." -msgstr "ЛиÑÑ‚ Ð´ÐµÐ²Ð¸Ñ†ÐµÑ Ð°Ð½Ð´ филеÑ." - -#: grub-core/commands/lsacpi.c:255 -msgid "Show version 1 tables only." -msgstr "Схоў верÑион 1 Ñ‚Ð°Ð±Ð»ÐµÑ Ð¾Ð½Ð»Ñ." - -#: grub-core/commands/lsacpi.c:256 -msgid "Show version 2 and version 3 tables only." -msgstr "Схоў верÑион 2 анд верÑион 3 Ñ‚Ð°Ð±Ð»ÐµÑ Ð¾Ð½Ð»Ñ." - -#: grub-core/commands/lsacpi.c:306 -msgid "Show ACPI information." -msgstr "Схоў ÐЦПИ информатион." - -#: grub-core/commands/lsmmap.c:31 -msgid "available RAM" -msgstr "аваилабле РÐМ" - -#: grub-core/commands/lsmmap.c:32 -msgid "reserved RAM" -msgstr "реÑервед РÐМ" - -#. TRANSLATORS: this refers to memory where ACPI tables are stored -#. and which can be used by OS once it loads ACPI tables. -#: grub-core/commands/lsmmap.c:35 -msgid "ACPI reclaimable RAM" -msgstr "ÐЦПИ рецлаимабле РÐМ" - -#. TRANSLATORS: this refers to memory which ACPI-compliant OS -#. is required to save accross hibernations. -#: grub-core/commands/lsmmap.c:38 -msgid "ACPI non-volatile storage RAM" -msgstr "ÐЦПИ нон-волатиле Ñтораге РÐМ" - -#: grub-core/commands/lsmmap.c:39 -msgid "faulty RAM (BadRAM)" -msgstr "Ñ„Ð°ÑƒÐ»Ñ‚Ñ Ð ÐМ (БадРÐМ)" - -#: grub-core/commands/lsmmap.c:40 -msgid "persistent RAM" -msgstr "перÑиÑтент РÐМ" - -#: grub-core/commands/lsmmap.c:41 -msgid "persistent RAM (legacy)" -msgstr "перÑиÑтент РÐМ (легацÑ)" - -#: grub-core/commands/lsmmap.c:42 -msgid "RAM holding coreboot tables" -msgstr "РÐМ холдинг цоребоот таблеÑ" - -#: grub-core/commands/lsmmap.c:43 -msgid "RAM holding firmware code" -msgstr "РÐМ холдинг фирмўаре цоде" - -#: grub-core/commands/lsmmap.c:52 -#, c-format -msgid "base_addr = 0x%llx, length = 0x%llx, %s\n" -msgstr "баÑе_аддр = 0ѯ%llx, ленгтх = 0ѯ%llx, %s\n" - -#: grub-core/commands/lsmmap.c:55 -#, c-format -msgid "base_addr = 0x%llx, length = 0x%llx, type = 0x%x\n" -msgstr "баÑе_аддр = 0ѯ%llx, ленгтх = 0ѯ%llx, Ñ‚Ñпе = 0ѯ%x\n" - -#: grub-core/commands/lsmmap.c:79 -msgid "List memory map provided by firmware." -msgstr "ЛиÑÑ‚ Ð¼ÐµÐ¼Ð¾Ñ€Ñ Ð¼Ð°Ð¿ провидед Ð±Ñ Ñ„Ð¸Ñ€Ð¼ÑžÐ°Ñ€Ðµ." - -#: grub-core/commands/lspci.c:232 -msgid "List PCI devices." -msgstr "ЛиÑÑ‚ ПЦИ девицеÑ." - -#: grub-core/commands/macbless.c:224 -msgid "Bless FILE of HFS or HFS+ partition for intel macs." -msgstr "БлеÑÑ Ð¤Ð˜Ð›Ð• оф ХФС ор ХФС+ партитион фор интел мацÑ." - -#: grub-core/commands/macbless.c:228 -msgid "Bless DIR of HFS or HFS+ partition for PPC macs." -msgstr "БлеÑÑ Ð”Ð˜Ð  оф ХФС ор ХФС+ партитион фор ППЦ мацÑ." - -#: grub-core/commands/memrw.c:125 -msgid "Read 8-bit value from ADDR." -msgstr "Реад 8-бит валуе фром ÐДДР." - -#: grub-core/commands/memrw.c:129 -msgid "Read 16-bit value from ADDR." -msgstr "Реад 16-бит валуе фром ÐДДР." - -#: grub-core/commands/memrw.c:133 -msgid "Read 32-bit value from ADDR." -msgstr "Реад 32-бит валуе фром ÐДДР." - -#: grub-core/commands/memrw.c:138 -msgid "Write 8-bit VALUE to ADDR." -msgstr "Ўрите 8-бит Ð’ÐЛУЕ то ÐДДР." - -#: grub-core/commands/memrw.c:142 -msgid "Write 16-bit VALUE to ADDR." -msgstr "Ўрите 16-бит Ð’ÐЛУЕ то ÐДДР." - -#: grub-core/commands/memrw.c:146 -msgid "Write 32-bit VALUE to ADDR." -msgstr "Ўрите 32-бит Ð’ÐЛУЕ то ÐДДР." - -#: grub-core/commands/menuentry.c:31 -msgid "Menu entry type." -msgstr "Мену ÐµÐ½Ñ‚Ñ€Ñ Ñ‚Ñпе." - -#: grub-core/commands/menuentry.c:31 grub-core/commands/menuentry.c:38 -#: grub-core/commands/menuentry.c:39 grub-core/gettext/gettext.c:520 -#: util/grub-fstest.c:520 util/grub-install.c:291 util/grub-install.c:304 -#: util/grub-mknetdir.c:51 util/grub-mkrescue.c:109 util/grub-mkrescue.c:110 -#: util/grub-mount.c:453 util/grub-render-label.c:65 -msgid "STRING" -msgstr "СТРИÐГ" - -#: grub-core/commands/menuentry.c:33 -msgid "List of users allowed to boot this entry." -msgstr "ЛиÑÑ‚ оф уÑÐµÑ€Ñ Ð°Ð»Ð»Ð¾ÑžÐµÐ´ то боот Ñ‚Ñ…Ð¸Ñ ÐµÐ½Ñ‚Ñ€Ñ." - -#: grub-core/commands/menuentry.c:33 -msgid "USERNAME[,USERNAME]" -msgstr "УСЕРÐÐМЕ[,УСЕРÐÐМЕ]" - -#: grub-core/commands/menuentry.c:36 -msgid "Keyboard key to quickly boot this entry." -msgstr "КеÑбоард ÐºÐµÑ Ñ‚Ð¾ ÑœÑƒÐ¸Ñ†ÐºÐ»Ñ Ð±Ð¾Ð¾Ñ‚ Ñ‚Ñ…Ð¸Ñ ÐµÐ½Ñ‚Ñ€Ñ." - -#: grub-core/commands/menuentry.c:36 -msgid "KEYBOARD_KEY" -msgstr "КЕÐБОÐРД_КЕÐ" - -#: grub-core/commands/menuentry.c:38 -msgid "Use STRING as menu entry body." -msgstr "УÑе СТРИÐГ Ð°Ñ Ð¼ÐµÐ½Ñƒ ÐµÐ½Ñ‚Ñ€Ñ Ð±Ð¾Ð´Ñ." - -#: grub-core/commands/menuentry.c:39 -msgid "Menu entry identifier." -msgstr "Мену ÐµÐ½Ñ‚Ñ€Ñ Ð¸Ð´ÐµÐ½Ñ‚Ð¸Ñ„Ð¸ÐµÑ€." - -#. TRANSLATORS: menu entry can either be bootable by anyone or only by -#. handful of users. By default when security is active only superusers can -#. boot a given menu entry. With --unrestricted (this option) -#. anyone can boot it. -#: grub-core/commands/menuentry.c:44 -msgid "This entry can be booted by any user." -msgstr "Ð¢Ñ…Ð¸Ñ ÐµÐ½Ñ‚Ñ€Ñ Ñ†Ð°Ð½ бе боотед Ð±Ñ Ð°Ð½Ñ ÑƒÑер." - -#: grub-core/commands/menuentry.c:323 grub-core/commands/menuentry.c:328 -#: grub-core/tests/test_blockarg.c:46 -msgid "BLOCK" -msgstr "БЛОЦК" - -#: grub-core/commands/menuentry.c:323 -msgid "Define a menu entry." -msgstr "Дефине а мену ентрÑ." - -#: grub-core/commands/menuentry.c:328 -msgid "Define a submenu." -msgstr "Дефине а Ñубмену." - -#. TRANSLATORS: this is module list header. Name -#. is module name, Ref Count is a reference counter -#. (how many modules or open descriptors use it). -#. Dependencies are the other modules it uses. -#. -#: grub-core/commands/minicmd.c:162 -msgid "Name\tRef Count\tDependencies\n" -msgstr "Ðаме\tРеф Цоунт\tДепенденциеÑ\n" - -#: grub-core/commands/minicmd.c:201 -msgid "Show this message." -msgstr "Схоў Ñ‚Ñ…Ð¸Ñ Ð¼ÐµÑÑаге." - -#: grub-core/commands/minicmd.c:204 -msgid "ADDR [SIZE]" -msgstr "ÐДДР [СИЗЕ]" - -#: grub-core/commands/minicmd.c:204 -msgid "Show memory contents." -msgstr "Схоў Ð¼ÐµÐ¼Ð¾Ñ€Ñ Ñ†Ð¾Ð½Ñ‚ÐµÐ½Ñ‚Ñ." - -#: grub-core/commands/minicmd.c:207 grub-core/kern/corecmd.c:188 -#: util/grub-install.c:275 -msgid "MODULE" -msgstr "МОДУЛЕ" - -#: grub-core/commands/minicmd.c:207 -msgid "Remove a module." -msgstr "Ремове а модуле." - -#: grub-core/commands/minicmd.c:210 -msgid "Show loaded modules." -msgstr "Схоў лоадед модулеÑ." - -#: grub-core/commands/minicmd.c:213 -msgid "Exit from GRUB." -msgstr "Еѯит фром ГРУБ." - -#: grub-core/commands/mips/loongson/lsspd.c:42 -msgid "No CS5536 found" -msgstr "Ðо ЦС5536 фоунд" - -#: grub-core/commands/mips/loongson/lsspd.c:45 -#, c-format -msgid "CS5536 at %d:%d.%d\n" -msgstr "ЦС5536 ат %d:%d.%d\n" - -#. TRANSLATORS: System management bus is often used to access components like -#. RAM (info only, not data) or batteries. I/O space is where in memory -#. its ports are. -#: grub-core/commands/mips/loongson/lsspd.c:55 -#, c-format -msgid "System management bus controller I/O space is at 0x%x\n" -msgstr "СÑÑтем манагемент Ð±ÑƒÑ Ñ†Ð¾Ð½Ñ‚Ñ€Ð¾Ð»Ð»ÐµÑ€ И/О Ñпаце Ð¸Ñ Ð°Ñ‚ 0ѯ%x\n" - -#. TRANSLATORS: it's shown in a report in a way -#. like number 1: ... number 2: ... -#. -#: grub-core/commands/mips/loongson/lsspd.c:66 -#, c-format -msgid "RAM slot number %d\n" -msgstr "РÐМ Ñлот нумбер %d\n" - -#: grub-core/commands/mips/loongson/lsspd.c:73 -#, c-format -msgid "Written SPD bytes: %d B.\n" -msgstr "Ўриттен СПД бÑтеÑ: %d Б.\n" - -#: grub-core/commands/mips/loongson/lsspd.c:74 -#, c-format -msgid "Total flash size: %d B.\n" -msgstr "Тотал флаÑÑ… Ñизе: %d Б.\n" - -#: grub-core/commands/mips/loongson/lsspd.c:79 -msgid "Memory type: DDR2." -msgstr "ÐœÐµÐ¼Ð¾Ñ€Ñ Ñ‚Ñпе: ДДР2." - -#: grub-core/commands/mips/loongson/lsspd.c:83 -#, c-format -msgid "Part no: %s.\n" -msgstr "Парт но: %s.\n" - -#: grub-core/commands/mips/loongson/lsspd.c:86 -msgid "Memory type: Unknown." -msgstr "ÐœÐµÐ¼Ð¾Ñ€Ñ Ñ‚Ñпе: Ункноўн." - -#: grub-core/commands/mips/loongson/lsspd.c:97 -msgid "Print Memory information." -msgstr "Принт ÐœÐµÐ¼Ð¾Ñ€Ñ Ð¸Ð½Ñ„Ð¾Ñ€Ð¼Ð°Ñ‚Ð¸Ð¾Ð½." - -#: grub-core/commands/nativedisk.c:118 grub-core/commands/probe.c:118 -#: grub-core/commands/probe.c:124 util/grub-probe.c:450 -#, c-format -msgid "%s does not support UUIDs" -msgstr "%s Ð´Ð¾ÐµÑ Ð½Ð¾Ñ‚ Ñуппорт УУИДÑ" - -#: grub-core/commands/nativedisk.c:325 -msgid "[MODULE1 MODULE2 ...]" -msgstr "[МОДУЛЕ1 МОДУЛЕ2 ...]" - -#: grub-core/commands/nativedisk.c:326 -msgid "" -"Switch to native disk drivers. If no modules are specified default set (pata," -"ahci,usbms,ohci,uhci,ehci) is used" -msgstr "" -"Сўитцх то нативе диÑк дриверÑ. Иф но Ð¼Ð¾Ð´ÑƒÐ»ÐµÑ Ð°Ñ€Ðµ Ñпецифиед дефаулт Ñет (пата," -"ахци,уÑбмÑ,охци,ухци,ехци) Ð¸Ñ ÑƒÑед" - -#: grub-core/commands/parttool.c:40 -msgid "" -"Perform COMMANDS on partition.\n" -"Use `parttool PARTITION help' for the list of available commands." -msgstr "" -"Перформ ЦОММÐÐДС он партитион.\n" -"УÑе `парттоол ПÐРТИТИОРхелп' фор тхе лиÑÑ‚ оф аваилабле цоммандÑ." - -#: grub-core/commands/parttool.c:123 -msgid "=VAL" -msgstr "=Ð’ÐЛ" - -#: grub-core/commands/parttool.c:136 -#, c-format -msgid "Sorry, no parttool is available for %s\n" -msgstr "СоррÑ, но парттоол Ð¸Ñ Ð°Ð²Ð°Ð¸Ð»Ð°Ð±Ð»Ðµ фор %s\n" - -#: grub-core/commands/parttool.c:288 grub-core/lib/arg.c:285 -#: grub-core/lib/arg.c:351 -#, c-format -msgid "unknown argument `%s'" -msgstr "ункноўн аргумент `%s'" - -#: grub-core/commands/parttool.c:344 -msgid "PARTITION COMMANDS" -msgstr "ПÐРТИТИОРЦОММÐÐДС" - -#: grub-core/commands/password.c:85 -msgid "USER PASSWORD" -msgstr "УСЕР ПÐССЎОРД" - -#: grub-core/commands/password.c:86 -msgid "Set user password (plaintext). Unrecommended and insecure." -msgstr "Сет уÑер паÑÑўорд (плаинтеѯт). Унрецоммендед анд инÑецуре." - -#. TRANSLATORS: it means that the string which -#. was supposed to be a password hash doesn't -#. have a correct format, not to password -#. mismatch. -#: grub-core/commands/password_pbkdf2.c:98 -#: grub-core/commands/password_pbkdf2.c:115 -#: grub-core/commands/password_pbkdf2.c:123 -#: grub-core/commands/password_pbkdf2.c:150 -#: grub-core/commands/password_pbkdf2.c:179 -msgid "invalid PBKDF2 password" -msgstr "инвалид ПБКДФ2 паÑÑўорд" - -#: grub-core/commands/password_pbkdf2.c:202 -msgid "USER PBKDF2_PASSWORD" -msgstr "УСЕР ПБКДФ2_ПÐССЎОРД" - -#: grub-core/commands/password_pbkdf2.c:203 -msgid "Set user password (PBKDF2). " -msgstr "Сет уÑер паÑÑўорд (ПБКДФ2). " - -#: grub-core/commands/pcidump.c:39 grub-core/commands/setpci.c:69 -msgid "Select device by vendor and device IDs." -msgstr "Селецт девице Ð±Ñ Ð²ÐµÐ½Ð´Ð¾Ñ€ анд девице ИДÑ." - -#: grub-core/commands/pcidump.c:40 grub-core/commands/setpci.c:70 -msgid "[vendor]:[device]" -msgstr "[вендор]:[девице]" - -#: grub-core/commands/pcidump.c:41 grub-core/commands/setpci.c:71 -msgid "Select device by its position on the bus." -msgstr "Селецт девице Ð±Ñ Ð¸Ñ‚Ñ Ð¿Ð¾Ñитион он тхе буÑ." - -#: grub-core/commands/pcidump.c:42 grub-core/commands/setpci.c:72 -msgid "[bus]:[slot][.func]" -msgstr "[буÑ]:[Ñлот][.фунц]" - -#: grub-core/commands/pcidump.c:109 grub-core/commands/pcidump.c:138 -#: grub-core/commands/setpci.c:183 grub-core/commands/setpci.c:214 -#: grub-core/fs/zfs/zfs.c:3794 grub-core/kern/emu/hostdisk.c:458 -#: grub-core/kern/emu/hostdisk.c:473 grub-core/kern/file.c:44 -#, c-format -msgid "missing `%c' symbol" -msgstr "миÑÑинг `%c' ÑÑмбол" - -#: grub-core/commands/pcidump.c:168 -msgid "[-s POSITION] [-d DEVICE]" -msgstr "[-Ñ ÐŸÐžÐ¡Ð˜Ð¢Ð˜ÐžÐ] [-д ДЕВИЦЕ]" - -#: grub-core/commands/pcidump.c:169 -msgid "Show raw dump of the PCI configuration space." -msgstr "Схоў раў думп оф тхе ПЦИ цонфигуратион Ñпаце." - -#: grub-core/commands/pgp.c:45 -msgid "Skip signature-checking of the public key file." -msgstr "Скип Ñигнатуре-цхецкинг оф тхе публиц ÐºÐµÑ Ñ„Ð¸Ð»Ðµ." - -#. TRANSLATORS: it's about GNUPG signatures. -#: grub-core/commands/pgp.c:71 grub-core/commands/pgp.c:81 -#: grub-core/commands/pgp.c:86 grub-core/commands/pgp.c:96 -#: grub-core/commands/pgp.c:103 grub-core/commands/pgp.c:107 -#: grub-core/commands/pgp.c:114 grub-core/commands/pgp.c:119 -#: grub-core/commands/pgp.c:124 grub-core/commands/pgp.c:128 -#: grub-core/commands/pgp.c:268 grub-core/commands/pgp.c:276 -#: grub-core/commands/pgp.c:281 grub-core/commands/pgp.c:289 -#: grub-core/commands/pgp.c:320 grub-core/commands/pgp.c:327 -#: grub-core/commands/pgp.c:332 grub-core/commands/pgp.c:342 -#: grub-core/commands/pgp.c:468 grub-core/commands/pgp.c:471 -#: grub-core/commands/pgp.c:474 grub-core/commands/pgp.c:477 -#: grub-core/commands/pgp.c:484 grub-core/commands/pgp.c:490 -#: grub-core/commands/pgp.c:665 -msgid "bad signature" -msgstr "бад Ñигнатуре" - -#. TRANSLATORS: %08x is 32-bit key id. -#: grub-core/commands/pgp.c:636 grub-core/commands/pgp.c:812 -#, c-format -msgid "public key %08x not found" -msgstr "публиц ÐºÐµÑ %08x нот фоунд" - -#: grub-core/commands/pgp.c:651 grub-core/disk/diskfilter.c:772 -#: grub-core/disk/diskfilter.c:782 grub-core/fs/ntfs.c:404 -#: grub-core/fs/zfs/zfs.c:1933 grub-core/normal/menu.c:428 -#, c-format -msgid "module `%s' isn't loaded" -msgstr "модуле `%s' иÑн'Ñ‚ лоадед" - -#: grub-core/commands/pgp.c:994 -msgid "[-s|--skip-sig] FILE SIGNATURE_FILE [PUBKEY_FILE]" -msgstr "[-Ñ|--Ñкип-Ñиг] ФИЛЕ СИГÐÐТУРЕ_ФИЛЕ [ПУБКЕÐ_ФИЛЕ]" - -#: grub-core/commands/pgp.c:995 -msgid "Verify detached signature." -msgstr "Ð’ÐµÑ€Ð¸Ñ„Ñ Ð´ÐµÑ‚Ð°Ñ†Ñ…ÐµÐ´ Ñигнатуре." - -#: grub-core/commands/pgp.c:998 -msgid "[-s|--skip-sig] PUBKEY_FILE" -msgstr "[-Ñ|--Ñкип-Ñиг] ПУБКЕÐ_ФИЛЕ" - -#: grub-core/commands/pgp.c:999 -msgid "Add PUBKEY_FILE to trusted keys." -msgstr "Ðдд ПУБКЕÐ_ФИЛЕ то труÑтед кеÑÑ." - -#: grub-core/commands/pgp.c:1003 -msgid "Show the list of trusted keys." -msgstr "Схоў тхе лиÑÑ‚ оф труÑтед кеÑÑ." - -#: grub-core/commands/pgp.c:1005 -msgid "PUBKEY_ID" -msgstr "ПУБКЕÐ_ИД" - -#: grub-core/commands/pgp.c:1006 -msgid "Remove PUBKEY_ID from trusted keys." -msgstr "Ремове ПУБКЕÐ_ИД фром труÑтед кеÑÑ." - -#: grub-core/commands/probe.c:40 grub-core/commands/tr.c:32 -msgid "Set a variable to return value." -msgstr "Сет а вариабле то ретурн валуе." - -#. TRANSLATORS: It's a driver that is currently in use to access -#. the diven disk. -#: grub-core/commands/probe.c:43 -msgid "Determine driver." -msgstr "Детермине дривер." - -#: grub-core/commands/probe.c:44 -msgid "Determine partition map type." -msgstr "Детермине партитион мап Ñ‚Ñпе." - -#: grub-core/commands/probe.c:45 -msgid "Determine filesystem type." -msgstr "Детермине филеÑÑÑтем Ñ‚Ñпе." - -#: grub-core/commands/probe.c:46 -msgid "Determine filesystem UUID." -msgstr "Детермине филеÑÑÑтем УУИД." - -#: grub-core/commands/probe.c:47 -msgid "Determine filesystem label." -msgstr "Детермине филеÑÑÑтем лабел." - -#: grub-core/commands/probe.c:139 grub-core/commands/probe.c:146 -#: util/grub-probe.c:462 -#, c-format -msgid "filesystem `%s' does not support labels" -msgstr "филеÑÑÑтем `%s' Ð´Ð¾ÐµÑ Ð½Ð¾Ñ‚ Ñуппорт лабелÑ" - -#: grub-core/commands/probe.c:165 grub-core/fs/zfs/zfsinfo.c:430 -#: grub-core/loader/i386/bsd.c:169 util/grub-setup.c:223 -msgid "DEVICE" -msgstr "ДЕВИЦЕ" - -#: grub-core/commands/probe.c:166 -msgid "Retrieve device info." -msgstr "Ретриеве девице инфо." - -#: grub-core/commands/read.c:85 -msgid "[ENVVAR]" -msgstr "[ЕÐÐ’Ð’ÐР]" - -#: grub-core/commands/read.c:86 -msgid "Set variable with user input." -msgstr "Сет вариабле ўитх уÑер инпут." - -#: grub-core/commands/reboot.c:40 -msgid "Reboot the computer." -msgstr "Ребоот тхе цомпутер." - -#. TRANSLATORS: in regexp you can mark some -#. groups with parentheses. These groups are -#. then numbered and you can save some of -#. them in variables. In other programs -#. those components aree often referenced with -#. back slash, e.g. \1. Compare -#. sed -e 's,\([a-z][a-z]*\),lowercase=\1,g' -#. The whole matching component is saved in VARNAME, not its number. -#. -#: grub-core/commands/regexp.c:44 -msgid "Store matched component NUMBER in VARNAME." -msgstr "Сторе матцхед цомпонент ÐУМБЕР ин Ð’ÐРÐÐМЕ." - -#: grub-core/commands/regexp.c:45 -msgid "[NUMBER:]VARNAME" -msgstr "[ÐУМБЕР:]Ð’ÐРÐÐМЕ" - -#. TRANSLATORS: This are two arguments. So it's -#. two separate units to translate and pay -#. attention not to reverse them. -#: grub-core/commands/regexp.c:157 -msgid "REGEXP STRING" -msgstr "РЕГЕѮП СТРИÐГ" - -#: grub-core/commands/regexp.c:158 -msgid "Test if REGEXP matches STRING." -msgstr "ТеÑÑ‚ иф РЕГЕѮП Ð¼Ð°Ñ‚Ñ†Ñ…ÐµÑ Ð¡Ð¢Ð Ð˜ÐГ." - -#: grub-core/commands/search.c:324 -msgid "NAME [VARIABLE] [HINTS]" -msgstr "ÐÐМЕ [Ð’ÐРИÐБЛЕ] [ХИÐТС]" - -#: grub-core/commands/search_file.c:4 -msgid "" -"Search devices by file. If VARIABLE is specified, the first device found is " -"set to a variable." -msgstr "" -"Сеарцх Ð´ÐµÐ²Ð¸Ñ†ÐµÑ Ð±Ñ Ñ„Ð¸Ð»Ðµ. Иф Ð’ÐРИÐБЛЕ Ð¸Ñ Ñпецифиед, тхе фирÑÑ‚ девице фоунд Ð¸Ñ " -"Ñет то а вариабле." - -#: grub-core/commands/search_label.c:4 -msgid "" -"Search devices by label. If VARIABLE is specified, the first device found is " -"set to a variable." -msgstr "" -"Сеарцх Ð´ÐµÐ²Ð¸Ñ†ÐµÑ Ð±Ñ Ð»Ð°Ð±ÐµÐ». Иф Ð’ÐРИÐБЛЕ Ð¸Ñ Ñпецифиед, тхе фирÑÑ‚ девице фоунд Ð¸Ñ " -"Ñет то а вариабле." - -#: grub-core/commands/search_uuid.c:4 -msgid "" -"Search devices by UUID. If VARIABLE is specified, the first device found is " -"set to a variable." -msgstr "" -"Сеарцх Ð´ÐµÐ²Ð¸Ñ†ÐµÑ Ð±Ñ Ð£Ð£Ð˜Ð”. Иф Ð’ÐРИÐБЛЕ Ð¸Ñ Ñпецифиед, тхе фирÑÑ‚ девице фоунд Ð¸Ñ " -"Ñет то а вариабле." - -#: grub-core/commands/search_wrap.c:34 -msgid "Search devices by a file." -msgstr "Сеарцх Ð´ÐµÐ²Ð¸Ñ†ÐµÑ Ð±Ñ Ð° филе." - -#: grub-core/commands/search_wrap.c:35 -msgid "Search devices by a filesystem label." -msgstr "Сеарцх Ð´ÐµÐ²Ð¸Ñ†ÐµÑ Ð±Ñ Ð° филеÑÑÑтем лабел." - -#: grub-core/commands/search_wrap.c:37 -msgid "Search devices by a filesystem UUID." -msgstr "Сеарцх Ð´ÐµÐ²Ð¸Ñ†ÐµÑ Ð±Ñ Ð° филеÑÑÑтем УУИД." - -#: grub-core/commands/search_wrap.c:40 -msgid "Set a variable to the first device found." -msgstr "Сет а вариабле то тхе фирÑÑ‚ девице фоунд." - -#: grub-core/commands/search_wrap.c:42 -msgid "Do not probe any floppy drive." -msgstr "До нот пробе Ð°Ð½Ñ Ñ„Ð»Ð¾Ð¿Ð¿Ñ Ð´Ñ€Ð¸Ð²Ðµ." - -#: grub-core/commands/search_wrap.c:44 -msgid "" -"First try the device HINT. If HINT ends in comma, also try subpartitions" -msgstr "" -"ФирÑÑ‚ Ñ‚Ñ€Ñ Ñ‚Ñ…Ðµ девице ХИÐТ. Иф ХИÐТ ÐµÐ½Ð´Ñ Ð¸Ð½ цомма, алÑо Ñ‚Ñ€Ñ ÑубпартитионÑ" - -#: grub-core/commands/search_wrap.c:45 grub-core/commands/search_wrap.c:49 -#: grub-core/commands/search_wrap.c:53 grub-core/commands/search_wrap.c:57 -#: grub-core/commands/search_wrap.c:61 grub-core/commands/search_wrap.c:65 -msgid "HINT" -msgstr "ХИÐТ" - -#: grub-core/commands/search_wrap.c:47 -msgid "" -"First try the device HINT if currently running on IEEE1275. If HINT ends in " -"comma, also try subpartitions" -msgstr "" -"ФирÑÑ‚ Ñ‚Ñ€Ñ Ñ‚Ñ…Ðµ девице ХИÐТ иф Ñ†ÑƒÑ€Ñ€ÐµÐ½Ñ‚Ð»Ñ Ñ€ÑƒÐ½Ð½Ð¸Ð½Ð³ он ИЕЕЕ1275. Иф ХИÐТ ÐµÐ½Ð´Ñ Ð¸Ð½ " -"цомма, алÑо Ñ‚Ñ€Ñ ÑубпартитионÑ" - -#: grub-core/commands/search_wrap.c:51 -msgid "" -"First try the device HINT if currently running on BIOS. If HINT ends in " -"comma, also try subpartitions" -msgstr "" -"ФирÑÑ‚ Ñ‚Ñ€Ñ Ñ‚Ñ…Ðµ девице ХИÐТ иф Ñ†ÑƒÑ€Ñ€ÐµÐ½Ñ‚Ð»Ñ Ñ€ÑƒÐ½Ð½Ð¸Ð½Ð³ он БИОС. Иф ХИÐТ ÐµÐ½Ð´Ñ Ð¸Ð½ " -"цомма, алÑо Ñ‚Ñ€Ñ ÑубпартитионÑ" - -#: grub-core/commands/search_wrap.c:55 -msgid "" -"First try the device HINT if direct hardware access is supported. If HINT " -"ends in comma, also try subpartitions" -msgstr "" -"ФирÑÑ‚ Ñ‚Ñ€Ñ Ñ‚Ñ…Ðµ девице ХИÐТ иф дирецт хардўаре аццеÑÑ Ð¸Ñ Ñуппортед. Иф ХИÐТ " -"ÐµÐ½Ð´Ñ Ð¸Ð½ цомма, алÑо Ñ‚Ñ€Ñ ÑубпартитионÑ" - -#: grub-core/commands/search_wrap.c:59 -msgid "" -"First try the device HINT if currently running on EFI. If HINT ends in " -"comma, also try subpartitions" -msgstr "" -"ФирÑÑ‚ Ñ‚Ñ€Ñ Ñ‚Ñ…Ðµ девице ХИÐТ иф Ñ†ÑƒÑ€Ñ€ÐµÐ½Ñ‚Ð»Ñ Ñ€ÑƒÐ½Ð½Ð¸Ð½Ð³ он ЕФИ. Иф ХИÐТ ÐµÐ½Ð´Ñ Ð¸Ð½ " -"цомма, алÑо Ñ‚Ñ€Ñ ÑубпартитионÑ" - -#: grub-core/commands/search_wrap.c:63 -msgid "" -"First try the device HINT if currently running on ARC. If HINT ends in " -"comma, also try subpartitions" -msgstr "" -"ФирÑÑ‚ Ñ‚Ñ€Ñ Ñ‚Ñ…Ðµ девице ХИÐТ иф Ñ†ÑƒÑ€Ñ€ÐµÐ½Ñ‚Ð»Ñ Ñ€ÑƒÐ½Ð½Ð¸Ð½Ð³ он ÐРЦ. Иф ХИÐТ ÐµÐ½Ð´Ñ Ð¸Ð½ " -"цомма, алÑо Ñ‚Ñ€Ñ ÑубпартитионÑ" - -#: grub-core/commands/search_wrap.c:207 -msgid "[-f|-l|-u|-s|-n] [--hint HINT [--hint HINT] ...] NAME" -msgstr "[-Ñ„|-л|-у|-Ñ|-н] [--хинт ХИÐТ [--хинт ХИÐТ] ...] ÐÐМЕ" - -#: grub-core/commands/search_wrap.c:209 -msgid "" -"Search devices by file, filesystem label or filesystem UUID. If --set is " -"specified, the first device found is set to a variable. If no variable name " -"is specified, `root' is used." -msgstr "" -"Сеарцх Ð´ÐµÐ²Ð¸Ñ†ÐµÑ Ð±Ñ Ñ„Ð¸Ð»Ðµ, филеÑÑÑтем лабел ор филеÑÑÑтем УУИД. Иф --Ñет Ð¸Ñ " -"Ñпецифиед, тхе фирÑÑ‚ девице фоунд Ð¸Ñ Ñет то а вариабле. Иф но вариабле наме " -"Ð¸Ñ Ñпецифиед, `роот' Ð¸Ñ ÑƒÑед." - -#: grub-core/commands/setpci.c:132 -#, c-format -msgid "Register %x of %x:%02x.%x is %x\n" -msgstr "РегиÑтер %x оф %x:%02x.%x Ð¸Ñ %x\n" - -#: grub-core/commands/setpci.c:333 -msgid "[-s POSITION] [-d DEVICE] [-v VAR] REGISTER[=VALUE[:MASK]]" -msgstr "[-Ñ ÐŸÐžÐ¡Ð˜Ð¢Ð˜ÐžÐ] [-д ДЕВИЦЕ] [-в Ð’ÐР] РЕГИСТЕР[=Ð’ÐЛУЕ[:МÐСК]]" - -#: grub-core/commands/setpci.c:335 -msgid "Manipulate PCI devices." -msgstr "Манипулате ПЦИ девицеÑ." - -#: grub-core/commands/sleep.c:32 -msgid "Verbose countdown." -msgstr "ВербоÑе цоунтдоўн." - -#: grub-core/commands/sleep.c:33 -msgid "Allow to interrupt with ESC." -msgstr "Ðллоў то интеррупт ўитх ЕСЦ." - -#: grub-core/commands/sleep.c:109 -msgid "NUMBER_OF_SECONDS" -msgstr "ÐУМБЕР_ОФ_СЕЦОÐДС" - -#: grub-core/commands/sleep.c:110 -msgid "Wait for a specified number of seconds." -msgstr "Ўаит фор а Ñпецифиед нумбер оф ÑецондÑ." - -#: grub-core/commands/syslinuxcfg.c:50 util/grub-syslinux2cfg.c:66 -msgid "root directory of the syslinux disk [default=/]." -msgstr "роот Ð´Ð¸Ñ€ÐµÑ†Ñ‚Ð¾Ñ€Ñ Ð¾Ñ„ тхе ÑÑÑлинуѯ диÑк [дефаулт=/]." - -#: grub-core/commands/syslinuxcfg.c:53 util/grub-syslinux2cfg.c:72 -msgid "" -"current directory of syslinux [default is parent directory of input file]." -msgstr "" -"цуррент Ð´Ð¸Ñ€ÐµÑ†Ñ‚Ð¾Ñ€Ñ Ð¾Ñ„ ÑÑÑлинуѯ [дефаулт Ð¸Ñ Ð¿Ð°Ñ€ÐµÐ½Ñ‚ Ð´Ð¸Ñ€ÐµÑ†Ñ‚Ð¾Ñ€Ñ Ð¾Ñ„ инпут филе]." - -#: grub-core/commands/syslinuxcfg.c:55 util/grub-syslinux2cfg.c:75 -msgid "assume input is an isolinux configuration file." -msgstr "аÑÑуме инпут Ð¸Ñ Ð°Ð½ иÑолинуѯ цонфигуратион филе." - -#: grub-core/commands/syslinuxcfg.c:56 util/grub-syslinux2cfg.c:76 -msgid "assume input is a pxelinux configuration file." -msgstr "аÑÑуме инпут Ð¸Ñ Ð° пѯелинуѯ цонфигуратион филе." - -#: grub-core/commands/syslinuxcfg.c:57 util/grub-syslinux2cfg.c:77 -msgid "assume input is a syslinux configuration file." -msgstr "аÑÑуме инпут Ð¸Ñ Ð° ÑÑÑлинуѯ цонфигуратион филе." - -#. TRANSLATORS: "syslinux config" means -#. "config as used by syslinux". -#: grub-core/commands/syslinuxcfg.c:189 -msgid "Execute syslinux config in same context" -msgstr "Еѯецуте ÑÑÑлинуѯ цонфиг ин Ñаме цонтеѯт" - -#: grub-core/commands/syslinuxcfg.c:195 -msgid "Execute syslinux config in new context" -msgstr "Еѯецуте ÑÑÑлинуѯ цонфиг ин неў цонтеѯт" - -#: grub-core/commands/syslinuxcfg.c:201 -msgid "Execute syslinux config in same context taking only menu entries" -msgstr "Еѯецуте ÑÑÑлинуѯ цонфиг ин Ñаме цонтеѯт такинг Ð¾Ð½Ð»Ñ Ð¼ÐµÐ½Ñƒ ентриеÑ" - -#: grub-core/commands/syslinuxcfg.c:207 -msgid "Execute syslinux config in new context taking only menu entries" -msgstr "Еѯецуте ÑÑÑлинуѯ цонфиг ин неў цонтеѯт такинг Ð¾Ð½Ð»Ñ Ð¼ÐµÐ½Ñƒ ентриеÑ" - -#: grub-core/commands/terminal.c:90 -msgid "no terminal specified" -msgstr "но терминал Ñпецифиед" - -#: grub-core/commands/terminal.c:112 grub-core/commands/terminal.c:139 -#, c-format -msgid "terminal `%s' isn't found" -msgstr "терминал `%s' иÑн'Ñ‚ фоунд" - -#: grub-core/commands/terminal.c:244 -msgid "Active input terminals:" -msgstr "Ðцтиве инпут терминалÑ:" - -#: grub-core/commands/terminal.c:245 -msgid "Available input terminals:" -msgstr "Ðваилабле инпут терминалÑ:" - -#: grub-core/commands/terminal.c:261 -msgid "Active output terminals:" -msgstr "Ðцтиве оутпут терминалÑ:" - -#: grub-core/commands/terminal.c:262 -msgid "Available output terminals:" -msgstr "Ðваилабле оутпут терминалÑ:" - -#: grub-core/commands/terminal.c:271 grub-core/commands/terminal.c:276 -msgid "[--append|--remove] [TERMINAL1] [TERMINAL2] ..." -msgstr "[--аппенд|--ремове] [ТЕРМИÐÐЛ1] [ТЕРМИÐÐЛ2] ..." - -#: grub-core/commands/terminal.c:273 -msgid "List or select an input terminal." -msgstr "ЛиÑÑ‚ ор Ñелецт ан инпут терминал." - -#: grub-core/commands/terminal.c:278 -msgid "List or select an output terminal." -msgstr "ЛиÑÑ‚ ор Ñелецт ан оутпут терминал." - -#: grub-core/commands/test.c:444 -msgid "EXPRESSION ]" -msgstr "ЕѮПРЕССИОР]" - -#: grub-core/commands/test.c:444 grub-core/commands/test.c:447 -msgid "Evaluate an expression." -msgstr "Евалуате ан еѯпреÑÑион." - -#: grub-core/commands/test.c:447 -msgid "EXPRESSION" -msgstr "ЕѮПРЕССИОÐ" - -#: grub-core/commands/testload.c:164 -msgid "Load the same file in multiple ways." -msgstr "Лоад тхе Ñаме филе ин мултипле ўаÑÑ." - -#: grub-core/commands/testspeed.c:35 -msgid "Specify size for each read operation" -msgstr "Ð¡Ð¿ÐµÑ†Ð¸Ñ„Ñ Ñизе фор еацх реад оператион" - -#: grub-core/commands/testspeed.c:58 -msgid "invalid block size" -msgstr "инвалид блоцк Ñизе" - -#: grub-core/commands/testspeed.c:80 -#, c-format -msgid "File size: %s\n" -msgstr "Филе Ñизе: %s\n" - -#: grub-core/commands/testspeed.c:83 -#, c-format -msgid "Elapsed time: %d.%03d s \n" -msgstr "ЕлапÑед тиме: %d.%03d Ñ \n" - -#: grub-core/commands/testspeed.c:92 -#, c-format -msgid "Speed: %s \n" -msgstr "Спеед: %s \n" - -#: grub-core/commands/testspeed.c:107 -msgid "[-s SIZE] FILENAME" -msgstr "[-Ñ Ð¡Ð˜Ð—Ð•] ФИЛЕÐÐМЕ" - -#: grub-core/commands/testspeed.c:108 -msgid "Test file read speed." -msgstr "ТеÑÑ‚ филе реад Ñпеед." - -#: grub-core/commands/time.c:38 grub-core/script/execute.c:974 -msgid "no command is specified" -msgstr "но цомманд Ð¸Ñ Ñпецифиед" - -#: grub-core/commands/time.c:50 -#, c-format -msgid "Elapsed time: %d.%03d seconds \n" -msgstr "ЕлапÑед тиме: %d.%03d ÑÐµÑ†Ð¾Ð½Ð´Ñ \n" - -#: grub-core/commands/time.c:61 -msgid "COMMAND [ARGS]" -msgstr "ЦОММÐÐД [ÐРГС]" - -#: grub-core/commands/time.c:62 -msgid "Measure time used by COMMAND" -msgstr "МеаÑуре тиме уÑед Ð±Ñ Ð¦ÐžÐœÐœÐÐД" - -#: grub-core/commands/tr.c:33 -msgid "Translate to upper case." -msgstr "ТранÑлате то уппер цаÑе." - -#: grub-core/commands/tr.c:34 -msgid "Translate to lower case." -msgstr "ТранÑлате то лоўер цаÑе." - -#: grub-core/commands/tr.c:119 -msgid "[OPTIONS] [SET1] [SET2] [STRING]" -msgstr "[ОПТИОÐС] [СЕТ1] [СЕТ2] [СТРИÐГ]" - -#: grub-core/commands/tr.c:120 -msgid "Translate SET1 characters to SET2 in STRING." -msgstr "ТранÑлате СЕТ1 Ñ†Ñ…Ð°Ñ€Ð°Ñ†Ñ‚ÐµÑ€Ñ Ñ‚Ð¾ СЕТ2 ин СТРИÐГ." - -#. TRANSLATORS: it's a command description. -#: grub-core/commands/true.c:50 -msgid "Do nothing, successfully." -msgstr "До нотхинг, ÑуццеÑÑфуллÑ." - -#. TRANSLATORS: it's a command description. -#: grub-core/commands/true.c:54 -msgid "Do nothing, unsuccessfully." -msgstr "До нотхинг, унÑуццеÑÑфуллÑ." - -#: grub-core/commands/usbtest.c:221 -msgid "Test USB support." -msgstr "ТеÑÑ‚ УСБ Ñуппорт." - -#: grub-core/commands/verifiers.c:120 -#, c-format -msgid "verification requested but nobody cares: %s" -msgstr "верифицатион реќуеÑтед бут Ð½Ð¾Ð±Ð¾Ð´Ñ Ñ†Ð°Ñ€ÐµÑ: %s" - -#: grub-core/commands/verifiers.c:140 -msgid "big file signature isn't implemented yet" -msgstr "биг филе Ñигнатуре иÑн'Ñ‚ имплементед Ñет" - -#: grub-core/commands/videoinfo.c:61 -msgid "Text-only " -msgstr "Теѯт-Ð¾Ð½Ð»Ñ " - -#. TRANSLATORS: "Direct color" is a mode when the color components -#. are written dirrectly into memory. -#: grub-core/commands/videoinfo.c:66 -#, c-format -msgid "Direct color, mask: %d/%d/%d/%d pos: %d/%d/%d/%d" -msgstr "Дирецт цолор, маÑк: %d/%d/%d/%d поÑ: %d/%d/%d/%d" - -#. TRANSLATORS: In "paletted color" mode you write the index of the color -#. in the palette. Synonyms include "packed pixel". -#: grub-core/commands/videoinfo.c:78 -msgid "Paletted " -msgstr "Палеттед " - -#: grub-core/commands/videoinfo.c:80 -msgid "YUV " -msgstr "ÐУВ " - -#. TRANSLATORS: "Planar" is the video memory where you have to write -#. in several different banks "plans" to control the different color -#. components of the same pixel. -#: grub-core/commands/videoinfo.c:85 -msgid "Planar " -msgstr "Планар " - -#: grub-core/commands/videoinfo.c:87 -msgid "Hercules " -msgstr "Ð¥ÐµÑ€Ñ†ÑƒÐ»ÐµÑ " - -#: grub-core/commands/videoinfo.c:89 -msgid "CGA " -msgstr "ЦГР" - -#. TRANSLATORS: Non-chain 4 is a 256-color planar -#. (unchained) video memory mode. -#: grub-core/commands/videoinfo.c:93 -msgid "Non-chain 4 " -msgstr "Ðон-цхаин 4 " - -#: grub-core/commands/videoinfo.c:95 -msgid "Monochrome " -msgstr "Моноцхроме " - -#: grub-core/commands/videoinfo.c:97 -msgid "Unknown video mode " -msgstr "Ункноўн видео моде " - -#: grub-core/commands/videoinfo.c:111 -msgid " EDID checksum invalid" -msgstr " ЕДИД цхецкÑум инвалид" - -#: grub-core/commands/videoinfo.c:116 -#, c-format -msgid " EDID version: %u.%u\n" -msgstr " ЕДИД верÑион: %u.%u\n" - -#: grub-core/commands/videoinfo.c:120 -#, c-format -msgid " Preferred mode: %ux%u\n" -msgstr " Преферред моде: %uѯ%u\n" - -#: grub-core/commands/videoinfo.c:123 -msgid " No preferred mode available\n" -msgstr " Ðо преферред моде аваилабле\n" - -#: grub-core/commands/videoinfo.c:146 grub-core/video/video.c:490 -#: grub-core/video/video.c:498 grub-core/video/video.c:509 -#: grub-core/video/video.c:520 grub-core/video/video.c:528 -#, c-format -msgid "invalid video mode specification `%s'" -msgstr "инвалид видео моде Ñпецифицатион `%s'" - -#: grub-core/commands/videoinfo.c:168 -msgid "List of supported video modes:" -msgstr "ЛиÑÑ‚ оф Ñуппортед видео модеÑ:" - -#: grub-core/commands/videoinfo.c:169 -msgid "Legend: mask/position=red/green/blue/reserved" -msgstr "Легенд: маÑк/поÑитион=ред/греен/блуе/реÑервед" - -#: grub-core/commands/videoinfo.c:176 -#, c-format -msgid "Adapter `%s':\n" -msgstr "Ðдаптер `%s':\n" - -#: grub-core/commands/videoinfo.c:180 -msgid " No info available" -msgstr " Ðо инфо аваилабле" - -#: grub-core/commands/videoinfo.c:198 -msgid " Failed to initialize video adapter" -msgstr " Фаилед то инитиализе видео адаптер" - -#. TRANSLATORS: "x" has to be entered in, -#. like an identifier, so please don't -#. use better Unicode codepoints. -#: grub-core/commands/videoinfo.c:239 grub-core/commands/videoinfo.c:248 -msgid "[WxH[xD]]" -msgstr "[ЎѯХ[ѯД]]" - -#: grub-core/commands/videoinfo.c:240 grub-core/commands/videoinfo.c:249 -msgid "" -"List available video modes. If resolution is given show only modes matching " -"it." -msgstr "" -"ЛиÑÑ‚ аваилабле видео модеÑ. Иф реÑолутион Ð¸Ñ Ð³Ð¸Ð²ÐµÐ½ Ñхоў Ð¾Ð½Ð»Ñ Ð¼Ð¾Ð´ÐµÑ Ð¼Ð°Ñ‚Ñ†Ñ…Ð¸Ð½Ð³ " -"ит." - -#. TRANSLATORS: "x" has to be entered in, -#. like an identifier, so please don't -#. use better Unicode codepoints. -#: grub-core/commands/videotest.c:225 -msgid "[WxH]" -msgstr "[ЎѯХ]" - -#. TRANSLATORS: Here, on the other hand, it's -#. nicer to use unicode cross instead of x. -#: grub-core/commands/videotest.c:228 -msgid "Test video subsystem in mode WxH." -msgstr "ТеÑÑ‚ видео ÑубÑÑÑтем ин моде ЎѯХ." - -#: grub-core/commands/videotest.c:231 -msgid "Test video subsystem." -msgstr "ТеÑÑ‚ видео ÑубÑÑÑтем." - -#: grub-core/commands/xen/lsxen.c:80 grub-core/commands/xen/lsxen.c:82 -msgid "[DIR]" -msgstr "[ДИР]" - -#: grub-core/commands/xen/lsxen.c:81 grub-core/commands/xen/lsxen.c:83 -msgid "List Xen storage." -msgstr "ЛиÑÑ‚ Ѯен Ñтораге." - -#. TRANSLATORS: GRUBUUID stands for "filesystem -#. UUID as used in GRUB". -#: grub-core/commands/xnu_uuid.c:110 -msgid "[-l] GRUBUUID [VARNAME]" -msgstr "[-л] ГРУБУУИД [Ð’ÐРÐÐМЕ]" - -#: grub-core/commands/xnu_uuid.c:111 -msgid "" -"Transform 64-bit UUID to format suitable for XNU. If -l is given keep it " -"lowercase as done by blkid." -msgstr "" -"ТранÑформ 64-бит УУИД то формат Ñуитабле фор Ñ®ÐУ. Иф -л Ð¸Ñ Ð³Ð¸Ð²ÐµÐ½ кееп ит " -"лоўерцаÑе Ð°Ñ Ð´Ð¾Ð½Ðµ Ð±Ñ Ð±Ð»ÐºÐ¸Ð´." - -#: grub-core/disk/arc/arcdisk.c:248 grub-core/disk/efi/efidisk.c:603 -#: grub-core/disk/i386/pc/biosdisk.c:498 grub-core/disk/i386/pc/biosdisk.c:543 -#: grub-core/disk/ieee1275/nand.c:198 grub-core/disk/ieee1275/obdisk.c:527 -#: grub-core/disk/ieee1275/ofdisk.c:586 -#, c-format -msgid "failure reading sector 0x%llx from `%s'" -msgstr "фаилуре реадинг Ñецтор 0ѯ%llx фром `%s'" - -#: grub-core/disk/arc/arcdisk.c:284 grub-core/disk/efi/efidisk.c:626 -#: grub-core/disk/i386/pc/biosdisk.c:548 grub-core/disk/ieee1275/ofdisk.c:606 -#, c-format -msgid "failure writing sector 0x%llx to `%s'" -msgstr "фаилуре ўритинг Ñецтор 0ѯ%llx то `%s'" - -#: grub-core/disk/cryptodisk.c:40 -msgid "Mount by UUID." -msgstr "Моунт Ð±Ñ Ð£Ð£Ð˜Ð”." - -#. TRANSLATORS: It's still restricted to cryptodisks only. -#: grub-core/disk/cryptodisk.c:42 -msgid "Mount all." -msgstr "Моунт алл." - -#: grub-core/disk/cryptodisk.c:43 -msgid "Mount all volumes with `boot' flag set." -msgstr "Моунт алл Ð²Ð¾Ð»ÑƒÐ¼ÐµÑ ÑžÐ¸Ñ‚Ñ… `боот' флаг Ñет." - -#. TRANSLATORS: The first %s is the file being looked at, the second %s is -#. the error message. -#: grub-core/disk/cryptodisk.c:526 grub-core/kern/emu/hostdisk.c:152 -#: grub-core/kern/emu/hostdisk.c:262 grub-core/kern/emu/hostdisk.c:434 -#: grub-core/kern/emu/misc.c:168 grub-core/kern/emu/misc.c:174 -#: grub-core/kern/emu/misc.c:196 grub-core/osdep/bsd/getroot.c:92 -#: grub-core/osdep/bsd/getroot.c:168 grub-core/osdep/hurd/getroot.c:68 -#: grub-core/osdep/linux/blocklist.c:65 grub-core/osdep/linux/getroot.c:150 -#: grub-core/osdep/linux/hostdisk.c:194 grub-core/osdep/linux/hostdisk.c:421 -#: grub-core/osdep/linux/ofpath.c:417 grub-core/osdep/linux/ofpath.c:422 -#: grub-core/osdep/linux/ofpath.c:517 grub-core/osdep/linux/ofpath.c:530 -#: grub-core/osdep/sun/getroot.c:110 grub-core/osdep/windows/blocklist.c:98 -#: grub-core/tests/video_checksum.c:279 util/editenv.c:46 util/glue-efi.c:115 -#: util/glue-efi.c:120 util/glue-efi.c:130 util/grub-editenv.c:138 -#: util/grub-editenv.c:192 util/grub-file.c:83 util/grub-fstest.c:128 -#: util/grub-fstest.c:568 util/grub-install-common.c:92 -#: util/grub-install-common.c:94 util/grub-install-common.c:101 -#: util/grub-install-common.c:529 util/grub-menulst2cfg.c:53 -#: util/grub-menulst2cfg.c:68 util/grub-mkimage.c:292 util/grub-mklayout.c:504 -#: util/grub-mklayout.c:516 util/grub-mknetdir.c:133 util/grub-mknetdir.c:151 -#: util/grub-mkrescue.c:627 util/grub-mkrescue.c:631 util/grub-mkrescue.c:879 -#: util/grub-mkrescue.c:883 util/grub-mkstandalone.c:253 util/grub-mount.c:498 -#: util/grub-render-label.c:169 util/grub-script-check.c:175 -#: util/grub-syslinux2cfg.c:181 util/grub-syslinux2cfg.c:191 -#: util/grub-syslinux2cfg.c:212 util/grub-syslinux2cfg.c:228 util/misc.c:91 -#: util/render-label.c:76 util/render-label.c:163 util/render-label.c:174 -#: util/resolve.c:246 util/setup.c:783 -#, c-format -msgid "cannot open `%s': %s" -msgstr "цаннот опен `%s': %s" - -#: grub-core/disk/cryptodisk.c:583 grub-core/disk/cryptodisk.c:628 -#: grub-core/kern/emu/hostdisk.c:270 grub-core/kern/emu/hostfs.c:142 -#: grub-core/osdep/linux/hostdisk.c:456 util/grub-editenv.c:143 -#: util/grub-editenv.c:149 util/grub-fstest.c:320 util/misc.c:111 -#, c-format -msgid "cannot seek `%s': %s" -msgstr "цаннот Ñеек `%s': %s" - -#: grub-core/disk/cryptodisk.c:1144 -msgid "SOURCE|-u UUID|-a|-b" -msgstr "СОУРЦЕ|-у УУИД|-а|-б" - -#: grub-core/disk/cryptodisk.c:1145 -msgid "Mount a crypto device." -msgstr "Моунт а црÑпто девице." - -#. TRANSLATORS: This message kicks in during the detection of -#. which modules needs to be included in core image. This happens -#. in the case of degraded RAID and means that autodetection may -#. fail to include some of modules. It's an installation time -#. message, not runtime message. -#: grub-core/disk/diskfilter.c:343 grub-core/disk/diskfilter.c:376 -#, c-format -msgid "" -"Couldn't find physical volume `%s'. Some modules may be missing from core " -"image." -msgstr "" -"Цоулдн'Ñ‚ финд пхÑÑицал волуме `%s'. Соме Ð¼Ð¾Ð´ÑƒÐ»ÐµÑ Ð¼Ð°Ñ Ð±Ðµ миÑÑинг фром цоре " -"имаге." - -#: grub-core/disk/diskfilter.c:480 -#, c-format -msgid "physical volume %s not found" -msgstr "пхÑÑицал волуме %s нот фоунд" - -#: grub-core/disk/efi/efidisk.c:600 grub-core/disk/efi/efidisk.c:623 -#, c-format -msgid "no media in `%s'" -msgstr "но медиа ин `%s'" - -#: grub-core/disk/geli.c:75 -msgid "Couldn't load sha256" -msgstr "Цоулдн'Ñ‚ лоад Ñха256" - -#: grub-core/disk/geli.c:85 -msgid "Couldn't load sha512" -msgstr "Цоулдн'Ñ‚ лоад Ñха512" - -#: grub-core/disk/geli.c:216 grub-core/disk/geli.c:220 -msgid "couldn't read ELI metadata" -msgstr "цоулдн'Ñ‚ реад ЕЛИ метадата" - -#: grub-core/disk/geli.c:231 -msgid "wrong ELI magic or version" -msgstr "ўронг ЕЛИ магиц ор верÑион" - -#: grub-core/disk/geli.c:435 grub-core/disk/luks.c:329 -msgid "Attempting to decrypt master key..." -msgstr "Ðттемптинг то децрÑпт маÑтер кеÑ..." - -#: grub-core/disk/geli.c:441 grub-core/disk/luks.c:347 -#, c-format -msgid "Enter passphrase for %s%s%s (%s): " -msgstr "Ентер паÑÑпхраÑе фор %s%s%s (%s): " - -#. TRANSLATORS: It's a cryptographic key slot: one element of an array -#. where each element is either empty or holds a key. -#: grub-core/disk/geli.c:530 grub-core/disk/luks.c:451 -#, c-format -msgid "Slot %d opened\n" -msgstr "Слот %d опенед\n" - -#: grub-core/disk/i386/pc/biosdisk.c:470 grub-core/disk/i386/pc/biosdisk.c:524 -#: grub-core/disk/i386/pc/biosdisk.c:534 grub-core/kern/disk_common.c:47 -#, c-format -msgid "attempt to read or write outside of disk `%s'" -msgstr "аттемпт то реад ор ўрите оутÑиде оф диÑк `%s'" - -#: grub-core/disk/i386/pc/biosdisk.c:491 grub-core/disk/i386/pc/biosdisk.c:611 -#: grub-core/disk/scsi.c:726 -msgid "cannot write to CD-ROM" -msgstr "цаннот ўрите то ЦД-РОМ" - -#: grub-core/disk/i386/pc/biosdisk.c:662 -msgid "" -"Native disk drivers are in use. Refusing to use firmware disk interface." -msgstr "" -"Ðативе диÑк Ð´Ñ€Ð¸Ð²ÐµÑ€Ñ Ð°Ñ€Ðµ ин уÑе. РефуÑинг то уÑе фирмўаре диÑк интерфаце." - -#. TRANSLATORS: it's a partition for embedding, -#. not a partition embed into something. GRUB -#. install tools put core.img into a place -#. usable for bootloaders (called generically -#. "embedding zone") and this operation is -#. called "embedding". -#: grub-core/disk/ldm.c:1015 -msgid "your LDM Embedding Partition is too small; embedding won't be possible" -msgstr "Ñоур ЛДМ Ембеддинг Партитион Ð¸Ñ Ñ‚Ð¾Ð¾ Ñмалл; ембеддинг ўон'Ñ‚ бе поÑÑибле" - -#. TRANSLATORS: it's a partition for embedding, -#. not a partition embed into something. -#: grub-core/disk/ldm.c:1033 -msgid "this LDM has no Embedding Partition; embedding won't be possible" -msgstr "Ñ‚Ñ…Ð¸Ñ Ð›Ð”Ðœ Ñ…Ð°Ñ Ð½Ð¾ Ембеддинг Партитион; ембеддинг ўон'Ñ‚ бе поÑÑибле" - -#. TRANSLATORS: The disk is simply removed from the list of available ones, -#. not wiped, avoid to scare user. -#: grub-core/disk/loopback.c:45 -msgid "Delete the specified loopback drive." -msgstr "Делете тхе Ñпецифиед лоопбацк дриве." - -#: grub-core/disk/loopback.c:237 -msgid "[-d] DEVICENAME FILE." -msgstr "[-д] ДЕВИЦЕÐÐМЕ ФИЛЕ." - -#. TRANSLATORS: The file itself is not destroyed -#. or transformed into drive. -#: grub-core/disk/loopback.c:240 -msgid "Make a virtual drive from a file." -msgstr "Маке а виртуал дриве фром а филе." - -#: grub-core/efiemu/i386/loadcore32.c:111 -#: grub-core/efiemu/i386/loadcore64.c:125 grub-core/kern/arm/dl.c:256 -#: grub-core/kern/arm64/dl.c:187 grub-core/kern/i386/dl.c:75 -#: grub-core/kern/ia64/dl.c:140 grub-core/kern/mips/dl.c:258 -#: grub-core/kern/powerpc/dl.c:163 grub-core/kern/riscv/dl.c:334 -#: grub-core/kern/sparc64/dl.c:180 grub-core/kern/x86_64/dl.c:110 -#: util/grub-mkimagexx.c:756 util/grub-mkimagexx.c:881 -#: util/grub-mkimagexx.c:945 util/grub-mkimagexx.c:1026 -#: util/grub-mkimagexx.c:1120 util/grub-mkimagexx.c:1222 -#: util/grub-mkimagexx.c:1413 util/grub-mkimagexx.c:1628 -#: util/grub-mkimagexx.c:1665 util/grub-mkimagexx.c:1697 -#: util/grub-mkimagexx.c:1767 util/grub-mkimagexx.c:1797 -#, c-format -msgid "relocation 0x%x is not implemented yet" -msgstr "релоцатион 0ѯ%x Ð¸Ñ Ð½Ð¾Ñ‚ имплементед Ñет" - -#: grub-core/efiemu/loadcore.c:200 grub-core/efiemu/loadcore.c:237 -#: grub-core/loader/i386/bsdXX.c:317 util/grub-mkimagexx.c:2360 -msgid "no symbol table" -msgstr "но ÑÑмбол табле" - -#: grub-core/efiemu/loadcore.c:346 grub-core/kern/dl.c:609 -#: grub-core/loader/ia64/efi/linux.c:345 grub-core/loader/mips/linux.c:248 -#: grub-core/loader/multiboot_elfxx.c:76 -#: grub-core/loader/powerpc/ieee1275/linux.c:280 -#: grub-core/loader/sparc64/ieee1275/linux.c:320 -msgid "this ELF file is not of the right type" -msgstr "Ñ‚Ñ…Ð¸Ñ Ð•Ð›Ð¤ филе Ð¸Ñ Ð½Ð¾Ñ‚ оф тхе ригхт Ñ‚Ñпе" - -#: grub-core/efiemu/main.c:313 -msgid "Load and initialize EFI emulator." -msgstr "Лоад анд инитиализе ЕФИ емулатор." - -#: grub-core/efiemu/main.c:317 -msgid "Finalize loading of EFI emulator." -msgstr "Финализе лоадинг оф ЕФИ емулатор." - -#: grub-core/efiemu/main.c:320 -msgid "Unload EFI emulator." -msgstr "Унлоад ЕФИ емулатор." - -#: grub-core/efiemu/symbols.c:92 grub-core/kern/dl.c:376 -#, c-format -msgid "symbol `%s' not found" -msgstr "ÑÑмбол `%s' нот фоунд" - -#: grub-core/font/font_cmd.c:52 -msgid "Loaded fonts:" -msgstr "Лоадед фонтÑ:" - -#: grub-core/font/font_cmd.c:74 -msgid "FILE..." -msgstr "ФИЛЕ..." - -#: grub-core/font/font_cmd.c:75 -msgid "Specify one or more font files to load." -msgstr "Ð¡Ð¿ÐµÑ†Ð¸Ñ„Ñ Ð¾Ð½Ðµ ор море фонт Ñ„Ð¸Ð»ÐµÑ Ñ‚Ð¾ лоад." - -#: grub-core/font/font_cmd.c:78 -msgid "List the loaded fonts." -msgstr "ЛиÑÑ‚ тхе лоадед фонтÑ." - -#: grub-core/fs/archelp.c:216 grub-core/fs/archelp.c:278 -#: grub-core/fs/btrfs.c:1815 grub-core/fs/fshelp.c:227 grub-core/fs/jfs.c:736 -#: grub-core/fs/minix.c:369 grub-core/fs/ufs.c:454 -msgid "too deep nesting of symlinks" -msgstr "тоо дееп неÑтинг оф ÑÑмлинкÑ" - -#: grub-core/fs/bfs.c:228 grub-core/fs/fshelp.c:368 grub-core/fs/minix.c:270 -#: grub-core/kern/file.c:156 -msgid "attempt to read past the end of file" -msgstr "аттемпт то реад паÑÑ‚ тхе енд оф филе" - -#: grub-core/fs/btrfs.c:1698 grub-core/fs/btrfs.c:1957 -#: grub-core/fs/fshelp.c:189 grub-core/fs/fshelp.c:309 grub-core/fs/jfs.c:431 -#: grub-core/fs/minix.c:414 grub-core/fs/minix.c:562 -#: grub-core/fs/reiserfs.c:732 grub-core/fs/ufs.c:531 grub-core/fs/ufs.c:671 -#: grub-core/fs/zfs/zfs.c:2831 grub-core/fs/zfs/zfs.c:4247 -msgid "not a directory" -msgstr "нот а дирецторÑ" - -#: grub-core/fs/btrfs.c:2063 grub-core/fs/fshelp.c:307 grub-core/fs/jfs.c:835 -#: grub-core/fs/zfs/zfs.c:3801 -msgid "not a regular file" -msgstr "нот а регулар филе" - -#: grub-core/fs/btrfs.c:2157 grub-core/fs/zfs/zfs.c:4333 -#: grub-core/partmap/msdos.c:400 -msgid "your core.img is unusually large. It won't fit in the embedding area" -msgstr "Ñоур цоре.имг Ð¸Ñ ÑƒÐ½ÑƒÑÑƒÐ°Ð»Ð»Ñ Ð»Ð°Ñ€Ð³Ðµ. Ит ўон'Ñ‚ фит ин тхе ембеддинг ареа" - -#: grub-core/fs/fshelp.c:281 grub-core/fs/minix.c:630 grub-core/fs/ufs.c:661 -#: grub-core/fs/ufs.c:757 grub-core/kern/fs.c:168 grub-core/kern/fs.c:180 -#, c-format -msgid "invalid file name `%s'" -msgstr "инвалид филе наме `%s'" - -#: grub-core/fs/zfs/zfs.c:453 -msgid "checksum verification failed" -msgstr "цхецкÑум верифицатион фаилед" - -#: grub-core/fs/zfs/zfs.c:1465 -msgid "couldn't find a necessary member device of multi-device filesystem" -msgstr "цоулдн'Ñ‚ финд а нецеÑÑÐ°Ñ€Ñ Ð¼ÐµÐ¼Ð±ÐµÑ€ девице оф мулти-девице филеÑÑÑтем" - -#: grub-core/fs/zfs/zfscrypt.c:292 -msgid "no decryption key available" -msgstr "но децрÑптион ÐºÐµÑ Ð°Ð²Ð°Ð¸Ð»Ð°Ð±Ð»Ðµ" - -#: grub-core/fs/zfs/zfscrypt.c:304 -msgid "MAC verification failed" -msgstr "МÐЦ верифицатион фаилед" - -#: grub-core/fs/zfs/zfscrypt.c:413 -msgid "Assume input is raw." -msgstr "ÐÑÑуме инпут Ð¸Ñ Ñ€Ð°Ñž." - -#: grub-core/fs/zfs/zfscrypt.c:414 -msgid "Assume input is hex." -msgstr "ÐÑÑуме инпут Ð¸Ñ Ñ…ÐµÑ¯." - -#: grub-core/fs/zfs/zfscrypt.c:415 -msgid "Assume input is passphrase." -msgstr "ÐÑÑуме инпут Ð¸Ñ Ð¿Ð°ÑÑпхраÑе." - -#: grub-core/fs/zfs/zfscrypt.c:437 util/grub-fstest.c:553 util/grub-mount.c:483 -msgid "Enter ZFS password: " -msgstr "Ентер ЗФС паÑÑўорд: " - -#: grub-core/fs/zfs/zfscrypt.c:476 -msgid "[-h|-p|-r] [FILE]" -msgstr "[-Ñ…|-п|-Ñ€] [ФИЛЕ]" - -#: grub-core/fs/zfs/zfscrypt.c:477 -msgid "Import ZFS wrapping key stored in FILE." -msgstr "Импорт ЗФС ўраппинг ÐºÐµÑ Ñторед ин ФИЛЕ." - -#: grub-core/fs/zfs/zfsinfo.c:51 -msgid "Virtual device is removed" -msgstr "Виртуал девице Ð¸Ñ Ñ€ÐµÐ¼Ð¾Ð²ÐµÐ´" - -#: grub-core/fs/zfs/zfsinfo.c:57 -msgid "Virtual device is faulted" -msgstr "Виртуал девице Ð¸Ñ Ñ„Ð°ÑƒÐ»Ñ‚ÐµÐ´" - -#: grub-core/fs/zfs/zfsinfo.c:63 -msgid "Virtual device is offline" -msgstr "Виртуал девице Ð¸Ñ Ð¾Ñ„Ñ„Ð»Ð¸Ð½Ðµ" - -#. TRANSLATORS: degraded doesn't mean broken but that some of -#. component are missing but virtual device as whole is still usable. -#: grub-core/fs/zfs/zfsinfo.c:70 -msgid "Virtual device is degraded" -msgstr "Виртуал девице Ð¸Ñ Ð´ÐµÐ³Ñ€Ð°Ð´ÐµÐ´" - -#: grub-core/fs/zfs/zfsinfo.c:73 -msgid "Virtual device is online" -msgstr "Виртуал девице Ð¸Ñ Ð¾Ð½Ð»Ð¸Ð½Ðµ" - -#: grub-core/fs/zfs/zfsinfo.c:89 -msgid "Incorrect virtual device: no type available" -msgstr "Инцоррецт виртуал девице: но Ñ‚Ñпе аваилабле" - -#. TRANSLATORS: The virtual devices form a tree (in graph-theoretical -#. sense). The nodes like mirror or raidz have children: member devices. -#. The "real" devices which actually store data are called "leafs" -#. (again borrowed from graph theory) and can be either disks -#. (or partitions) or files. -#: grub-core/fs/zfs/zfsinfo.c:105 -msgid "Leaf virtual device (file or disk)" -msgstr "Леаф виртуал девице (филе ор диÑк)" - -#: grub-core/fs/zfs/zfsinfo.c:113 -msgid "Bootpath: unavailable\n" -msgstr "Боотпатх: унаваилабле\n" - -#: grub-core/fs/zfs/zfsinfo.c:115 -#, c-format -msgid "Bootpath: %s\n" -msgstr "Боотпатх: %s\n" - -#: grub-core/fs/zfs/zfsinfo.c:120 -msgid "Path: unavailable" -msgstr "Патх: унаваилабле" - -#: grub-core/fs/zfs/zfsinfo.c:122 -#, c-format -msgid "Path: %s\n" -msgstr "Патх: %s\n" - -#: grub-core/fs/zfs/zfsinfo.c:127 -msgid "Devid: unavailable" -msgstr "Девид: унаваилабле" - -#: grub-core/fs/zfs/zfsinfo.c:129 -#, c-format -msgid "Devid: %s\n" -msgstr "Девид: %s\n" - -#: grub-core/fs/zfs/zfsinfo.c:148 -msgid "This VDEV is a mirror" -msgstr "Ð¢Ñ…Ð¸Ñ Ð’Ð”Ð•Ð’ Ð¸Ñ Ð° миррор" - -#: grub-core/fs/zfs/zfsinfo.c:153 -#, c-format -msgid "This VDEV is a RAIDZ%llu\n" -msgstr "Ð¢Ñ…Ð¸Ñ Ð’Ð”Ð•Ð’ Ð¸Ñ Ð° РÐИДЗ%llu\n" - -#: grub-core/fs/zfs/zfsinfo.c:158 -msgid "Incorrect VDEV" -msgstr "Инцоррецт ВДЕВ" - -#: grub-core/fs/zfs/zfsinfo.c:161 -#, c-format -msgid "VDEV with %d children\n" -msgstr "ВДЕВ ўитх %d цхилдрен\n" - -#. TRANSLATORS: it's the element carying the number %d, not -#. total element number. And the number itself is fine, -#. only the element isn't. -#. -#: grub-core/fs/zfs/zfsinfo.c:177 -#, c-format -msgid "VDEV element number %d isn't correct\n" -msgstr "ВДЕВ елемент нумбер %d иÑн'Ñ‚ цоррецт\n" - -#. TRANSLATORS: it's the element carying the number %d, not -#. total element number. This is used in enumeration -#. "Element number 1", "Element number 2", ... -#: grub-core/fs/zfs/zfsinfo.c:184 -#, c-format -msgid "VDEV element number %d:\n" -msgstr "ВДЕВ елемент нумбер %d:\n" - -#: grub-core/fs/zfs/zfsinfo.c:193 -#, c-format -msgid "Unknown virtual device type: %s\n" -msgstr "Ункноўн виртуал девице Ñ‚Ñпе: %s\n" - -#. TRANSLATORS: Here we speak about ZFS pools it's semi-marketing, -#. semi-technical term by Sun/Oracle and should be translated in sync with -#. other ZFS-related software and documentation. -#: grub-core/fs/zfs/zfsinfo.c:254 -msgid "Pool state: active" -msgstr "Поол Ñтате: ацтиве" - -#: grub-core/fs/zfs/zfsinfo.c:255 -msgid "Pool state: exported" -msgstr "Поол Ñтате: еѯпортед" - -#: grub-core/fs/zfs/zfsinfo.c:256 -msgid "Pool state: destroyed" -msgstr "Поол Ñтате: деÑтроÑед" - -#: grub-core/fs/zfs/zfsinfo.c:257 -msgid "Pool state: reserved for hot spare" -msgstr "Поол Ñтате: реÑервед фор хот Ñпаре" - -#: grub-core/fs/zfs/zfsinfo.c:258 -msgid "Pool state: level 2 ARC device" -msgstr "Поол Ñтате: левел 2 ÐРЦ девице" - -#: grub-core/fs/zfs/zfsinfo.c:259 -msgid "Pool state: uninitialized" -msgstr "Поол Ñтате: унинитиализед" - -#: grub-core/fs/zfs/zfsinfo.c:260 -msgid "Pool state: unavailable" -msgstr "Поол Ñтате: унаваилабле" - -#: grub-core/fs/zfs/zfsinfo.c:261 -msgid "Pool state: potentially active" -msgstr "Поол Ñтате: Ð¿Ð¾Ñ‚ÐµÐ½Ñ‚Ð¸Ð°Ð»Ð»Ñ Ð°Ñ†Ñ‚Ð¸Ð²Ðµ" - -#: grub-core/fs/zfs/zfsinfo.c:306 -msgid "Pool name: unavailable" -msgstr "Поол наме: унаваилабле" - -#: grub-core/fs/zfs/zfsinfo.c:308 -#, c-format -msgid "Pool name: %s\n" -msgstr "Поол наме: %s\n" - -#: grub-core/fs/zfs/zfsinfo.c:313 -msgid "Pool GUID: unavailable" -msgstr "Поол ГУИД: унаваилабле" - -#: grub-core/fs/zfs/zfsinfo.c:315 -#, c-format -msgid "Pool GUID: %016llx\n" -msgstr "Поол ГУИД: %016llx\n" - -#: grub-core/fs/zfs/zfsinfo.c:320 -msgid "Unable to retrieve pool state" -msgstr "Унабле то ретриеве поол Ñтате" - -#: grub-core/fs/zfs/zfsinfo.c:322 -msgid "Unrecognized pool state" -msgstr "Унрецогнизед поол Ñтате" - -#. TRANSLATORS: There are undetermined number of virtual devices -#. in a device tree, not just one. -#. -#: grub-core/fs/zfs/zfsinfo.c:332 -msgid "No virtual device tree available" -msgstr "Ðо виртуал девице трее аваилабле" - -#: grub-core/fs/zfs/zfsinfo.c:431 -msgid "Print ZFS info about DEVICE." -msgstr "Принт ЗФС инфо абоут ДЕВИЦЕ." - -#: grub-core/fs/zfs/zfsinfo.c:433 -msgid "FILESYSTEM [VARIABLE]" -msgstr "ФИЛЕСÐСТЕМ [Ð’ÐРИÐБЛЕ]" - -#: grub-core/fs/zfs/zfsinfo.c:434 -msgid "Print ZFS-BOOTFSOBJ or store it into VARIABLE" -msgstr "Принт ЗФС-БООТФСОБЙ ор Ñторе ит инто Ð’ÐРИÐБЛЕ" - -#. TRANSLATORS: at this position GRUB waits for the user to do an action -#. in remote debugger, namely to tell it to establish connection. -#: grub-core/gdb/gdb.c:48 -msgid "Now connect the remote debugger, please." -msgstr "Ðоў цоннецт тхе ремоте дебуггер, плеаÑе." - -#. TRANSLATORS: GDB stub is a small part of -#. GDB functionality running on local host -#. which allows remote debugger to -#. connect to it. -#: grub-core/gdb/gdb.c:84 -msgid "Start GDB stub on given port" -msgstr "Старт ГДБ Ñтуб он гивен порт" - -#. TRANSLATORS: this refers to triggering -#. a breakpoint so that the user will land -#. into GDB. -#: grub-core/gdb/gdb.c:89 -msgid "Break into GDB" -msgstr "Бреак инто ГДБ" - -#: grub-core/gdb/gdb.c:91 -msgid "Stop GDB stub" -msgstr "Стоп ГДБ Ñтуб" - -#: grub-core/gettext/gettext.c:85 -msgid "premature end of file" -msgstr "прематуре енд оф филе" - -#. TRANSLATORS: It refers to passing the string through gettext. -#. So it's "translate" in the same meaning as in what you're -#. doing now. -#. -#: grub-core/gettext/gettext.c:525 -msgid "Translates the string with the current settings." -msgstr "ТранÑÐ»Ð°Ñ‚ÐµÑ Ñ‚Ñ…Ðµ Ñтринг ўитх тхе цуррент ÑеттингÑ." - -#: grub-core/gfxmenu/gui_label.c:186 grub-core/normal/menu_text.c:184 -msgid "" -"Press enter to boot the selected OS, `e' to edit the commands before booting " -"or `c' for a command-line. ESC to return previous menu." -msgstr "" -"ПреÑÑ ÐµÐ½Ñ‚ÐµÑ€ то боот тхе Ñелецтед ОС, `е' то едит тхе Ñ†Ð¾Ð¼Ð¼Ð°Ð½Ð´Ñ Ð±ÐµÑ„Ð¾Ñ€Ðµ боотинг " -"ор `ц' фор а цомманд-лине. ЕСЦ то ретурн Ð¿Ñ€ÐµÐ²Ð¸Ð¾ÑƒÑ Ð¼ÐµÐ½Ñƒ." - -#: grub-core/gfxmenu/gui_label.c:190 grub-core/normal/menu_text.c:192 -msgid "" -"Press enter to boot the selected OS, `e' to edit the commands before booting " -"or `c' for a command-line." -msgstr "" -"ПреÑÑ ÐµÐ½Ñ‚ÐµÑ€ то боот тхе Ñелецтед ОС, `е' то едит тхе Ñ†Ð¾Ð¼Ð¼Ð°Ð½Ð´Ñ Ð±ÐµÑ„Ð¾Ñ€Ðµ боотинг " -"ор `ц' фор а цомманд-лине." - -#: grub-core/gfxmenu/gui_label.c:194 -msgid "enter: boot, `e': options, `c': cmd-line" -msgstr "ентер: боот, `е': оптионÑ, `ц': цмд-лине" - -#: grub-core/gfxmenu/gui_progress_bar.c:339 grub-core/normal/menu_text.c:446 -#, c-format -msgid "The highlighted entry will be executed automatically in %ds." -msgstr "Тхе хигхлигхтед ÐµÐ½Ñ‚Ñ€Ñ ÑžÐ¸Ð»Ð» бе еѯецутед Ð°ÑƒÑ‚Ð¾Ð¼Ð°Ñ‚Ð¸Ñ†Ð°Ð»Ð»Ñ Ð¸Ð½ %dÑ." - -#. TRANSLATORS: 's' stands for seconds. -#. It's a standalone timeout notification. -#. Please use the short form in your language. -#: grub-core/gfxmenu/gui_progress_bar.c:344 -#, c-format -msgid "%ds remaining." -msgstr "%dÑ Ñ€ÐµÐ¼Ð°Ð¸Ð½Ð¸Ð½Ð³." - -#. TRANSLATORS: 's' stands for seconds. -#. It's a standalone timeout notification. -#. Please use the shortest form available in you language. -#: grub-core/gfxmenu/gui_progress_bar.c:349 grub-core/normal/menu_text.c:444 -#: grub-core/normal/menu_text.c:462 -#, c-format -msgid "%ds" -msgstr "%dÑ" - -#: grub-core/gfxmenu/view.c:103 -msgid "GRUB Boot Menu" -msgstr "ГРУБ Боот Мену" - -#: grub-core/hello/hello.c:36 -msgid "Hello World" -msgstr "Хелло Ўорлд" - -#: grub-core/hello/hello.c:45 -msgid "Say `Hello World'." -msgstr "Ð¡Ð°Ñ `Хелло Ўорлд'." - -#: grub-core/io/gzio.c:409 grub-core/kern/file.c:210 -msgid "attempt to seek outside of the file" -msgstr "аттемпт то Ñеек оутÑиде оф тхе филе" - -#. TRANSLATORS: It's about given file having some strange format, not -#. complete lack of gzip support. -#: grub-core/io/gzio.c:1228 grub-core/io/gzio.c:1237 grub-core/io/gzio.c:1244 -msgid "unsupported gzip format" -msgstr "унÑуппортед гзип формат" - -#: grub-core/io/lzopio.c:511 -msgid "lzop file corrupted" -msgstr "лзоп филе цорруптед" - -#: grub-core/io/xzio.c:278 -msgid "xz file corrupted or unsupported block options" -msgstr "ѯз филе цорруптед ор унÑуппортед блоцк оптионÑ" - -#: grub-core/kern/arm/dl.c:277 grub-core/kern/arm64/dl.c:44 -#: grub-core/kern/i386/dl.c:36 grub-core/kern/ia64/dl.c:41 -#: grub-core/kern/mips/dl.c:48 grub-core/kern/powerpc/dl.c:36 -#: grub-core/kern/riscv/dl.c:47 grub-core/kern/sparc64/dl.c:36 -#: grub-core/kern/x86_64/dl.c:36 grub-core/loader/i386/bsd.c:1445 -#: grub-core/loader/i386/bsdXX.c:49 grub-core/loader/ia64/efi/linux.c:341 -#: grub-core/loader/mips/linux.c:298 grub-core/loader/multiboot.c:232 -#: grub-core/loader/multiboot_elfxx.c:73 -#: grub-core/loader/powerpc/ieee1275/linux.c:294 -#: grub-core/loader/sparc64/ieee1275/linux.c:331 -msgid "invalid arch-dependent ELF magic" -msgstr "инвалид арцх-депендент ЕЛФ магиц" - -#: grub-core/kern/corecmd.c:178 -msgid "[ENVVAR=VALUE]" -msgstr "[ЕÐÐ’Ð’ÐР=Ð’ÐЛУЕ]" - -#: grub-core/kern/corecmd.c:179 -msgid "Set an environment variable." -msgstr "Сет ан енвиронмент вариабле." - -#: grub-core/kern/corecmd.c:183 -msgid "ENVVAR" -msgstr "ЕÐÐ’Ð’ÐР" - -#: grub-core/kern/corecmd.c:184 -msgid "Remove an environment variable." -msgstr "Ремове ан енвиронмент вариабле." - -#: grub-core/kern/corecmd.c:186 -msgid "[ARG]" -msgstr "[ÐРГ]" - -#: grub-core/kern/corecmd.c:186 -msgid "List devices or files." -msgstr "ЛиÑÑ‚ Ð´ÐµÐ²Ð¸Ñ†ÐµÑ Ð¾Ñ€ филеÑ." - -#: grub-core/kern/corecmd.c:188 -msgid "Insert a module." -msgstr "ИнÑерт а модуле." - -#: grub-core/kern/disk.c:236 grub-core/net/net.c:1390 -#, c-format -msgid "disk `%s' not found" -msgstr "диÑк `%s' нот фоунд" - -#: grub-core/kern/disk_common.c:27 -msgid "attempt to read or write outside of partition" -msgstr "аттемпт то реад ор ўрите оутÑиде оф партитион" - -#: grub-core/kern/dl.c:212 grub-core/kern/elf.c:61 grub-core/kern/elf.c:79 -#: grub-core/loader/i386/bsdXX.c:46 grub-core/loader/ia64/efi/linux.c:335 -#: grub-core/loader/multiboot_elfxx.c:69 -msgid "invalid arch-independent ELF magic" -msgstr "инвалид арцх-индепендент ЕЛФ магиц" - -#. TRANSLATORS: it refers to the lack of free slots. -#: grub-core/kern/emu/hostdisk.c:208 grub-core/kern/emu/hostdisk.c:466 -msgid "device count exceeds limit" -msgstr "девице цоунт ÐµÑ¯Ñ†ÐµÐµÐ´Ñ Ð»Ð¸Ð¼Ð¸Ñ‚" - -#: grub-core/kern/emu/hostdisk.c:342 util/editenv.c:54 util/grub-editenv.c:197 -#: util/grub-fstest.c:191 util/grub-mkfont.c:796 util/misc.c:114 -#: util/misc.c:129 util/setup.c:788 -#, c-format -msgid "cannot write to `%s': %s" -msgstr "цаннот ўрите то `%s': %s" - -#. TRANSLATORS: Only one entry is ignored. However the suggestion -#. is to correct/delete the whole file. -#. device.map is a file indicating which -#. devices are available at boot time. Fedora populated it with -#. entries like (hd0,1) /dev/sda1 which would mean that every -#. partition is a separate disk for BIOS. Such entries were -#. inactive in GRUB due to its bug which is now gone. Without -#. this additional check these entries would be harmful now. -#. -#: grub-core/kern/emu/hostdisk.c:503 -#, c-format -msgid "" -"the device.map entry `%s' is invalid. Ignoring it. Please correct or delete " -"your device.map" -msgstr "" -"тхе девице.мап ÐµÐ½Ñ‚Ñ€Ñ `%s' Ð¸Ñ Ð¸Ð½Ð²Ð°Ð»Ð¸Ð´. Игноринг ит. ПлеаÑе цоррецт ор делете " -"Ñоур девице.мап" - -#. TRANSLATORS: device.map is a filename. Not to be translated. -#. device.map specifies disk correspondance overrides. Previously -#. one could create any kind of device name with this. Due to -#. some problems we decided to limit it to just a handful -#. possibilities. -#: grub-core/kern/emu/hostdisk.c:555 -#, c-format -msgid "" -"the drive name `%s' in device.map is incorrect. Using %s instead. Please use " -"the form [hfc]d[0-9]* (E.g. `hd0' or `cd')" -msgstr "" -"тхе дриве наме `%s' ин девице.мап Ð¸Ñ Ð¸Ð½Ñ†Ð¾Ñ€Ñ€ÐµÑ†Ñ‚. УÑинг %s инÑтеад. ПлеаÑе уÑе " -"тхе форм [хфц]д[0-9]* (Е.г. `хд0' ор `цд')" - -#: grub-core/kern/emu/hostfs.c:76 grub-core/kern/emu/hostfs.c:109 -#, c-format -msgid "can't open `%s': %s" -msgstr "цан'Ñ‚ опен `%s': %s" - -#: grub-core/kern/emu/main.c:99 util/grub-fstest.c:516 util/grub-mount.c:452 -msgid "DEVICE_NAME" -msgstr "ДЕВИЦЕ_ÐÐМЕ" - -#: grub-core/kern/emu/main.c:99 grub-core/loader/i386/bsd.c:136 -#: grub-core/loader/i386/bsd.c:169 util/grub-fstest.c:516 util/grub-mount.c:452 -msgid "Set root device." -msgstr "Сет роот девице." - -#. TRANSLATORS: There are many devices in device map. -#: grub-core/kern/emu/main.c:102 util/grub-probe.c:733 util/grub-setup.c:85 -#, c-format -msgid "use FILE as the device map [default=%s]" -msgstr "уÑе ФИЛЕ Ð°Ñ Ñ‚Ñ…Ðµ девице мап [дефаулт=%s]" - -#. TRANSLATORS: There are many devices in device map. -#: grub-core/kern/emu/main.c:105 -msgid "use FILE as memdisk" -msgstr "уÑе ФИЛЕ Ð°Ñ Ð¼ÐµÐ¼Ð´Ð¸Ñк" - -#: grub-core/kern/emu/main.c:107 util/grub-setup.c:83 -#, c-format -msgid "use GRUB files in the directory DIR [default=%s]" -msgstr "уÑе ГРУБ Ñ„Ð¸Ð»ÐµÑ Ð¸Ð½ тхе Ð´Ð¸Ñ€ÐµÑ†Ñ‚Ð¾Ñ€Ñ Ð”Ð˜Ð  [дефаулт=%s]" - -#: grub-core/kern/emu/main.c:108 include/grub/util/install.h:67 -#: util/grub-editenv.c:58 util/grub-fstest.c:525 util/grub-glue-efi.c:58 -#: util/grub-macbless.c:104 util/grub-mkfont.c:962 util/grub-mkimage.c:84 -#: util/grub-mklayout.c:56 util/grub-mount.c:458 util/grub-probe.c:735 -#: util/grub-render-label.c:74 util/grub-script-check.c:52 util/grub-setup.c:90 -#: util/grub-syslinux2cfg.c:78 -msgid "print verbose messages." -msgstr "принт вербоÑе меÑÑагеÑ." - -#: grub-core/kern/emu/main.c:109 grub-core/lib/gnulib/argp-parse.c:85 -msgid "SECS" -msgstr "СЕЦС" - -#: grub-core/kern/emu/main.c:109 -msgid "wait until a debugger will attach" -msgstr "ўаит унтил а дебуггер ўилл аттацх" - -#: grub-core/kern/emu/main.c:171 util/grub-macbless.c:143 -#: util/grub-mkrelpath.c:61 util/grub-probe.c:874 util/grub-script-check.c:75 -#: util/grub-setup.c:203 -#, c-format -msgid "Unknown extra argument `%s'." -msgstr "Ункноўн еѯтра аргумент `%s'." - -#: grub-core/kern/emu/main.c:185 -msgid "GRUB emulator." -msgstr "ГРУБ емулатор." - -#: grub-core/kern/emu/main.c:213 util/grub-editenv.c:262 -#: util/grub-glue-efi.c:110 util/grub-macbless.c:173 util/grub-mkfont.c:1177 -#: util/grub-mkimage.c:266 util/grub-mklayout.c:494 -#: util/grub-mkpasswd-pbkdf2.c:132 util/grub-mkrelpath.c:96 -#: util/grub-probe.c:863 util/grub-render-label.c:152 -#: util/grub-script-check.c:160 util/grub-setup.c:262 -#: util/grub-syslinux2cfg.c:163 -msgid "Error in parsing command line arguments\n" -msgstr "Еррор ин парÑинг цомманд лине аргументÑ\n" - -#. TRANSLATORS: In this case GRUB tells user what he has to do. -#: grub-core/kern/emu/main.c:248 -#, c-format -msgid "Run `gdb %s %d', and set ARGS.HOLD to zero.\n" -msgstr "Рун `гдб %s %d', анд Ñет ÐРГС.ХОЛД то зеро.\n" - -#: grub-core/kern/emu/misc.c:48 -#, c-format -msgid "%s: warning:" -msgstr "%s: ўарнинг:" - -#: grub-core/kern/emu/misc.c:64 -#, c-format -msgid "%s: info:" -msgstr "%s: инфо:" - -#: grub-core/kern/emu/misc.c:79 util/grub-fstest.c:567 util/grub-fstest.c:576 -#: util/grub-mount.c:497 util/grub-mount.c:505 -#, c-format -msgid "%s: error:" -msgstr "%s: еррор:" - -#: grub-core/kern/emu/misc.c:176 -#, c-format -msgid "file `%s' is too big" -msgstr "филе `%s' Ð¸Ñ Ñ‚Ð¾Ð¾ биг" - -#: grub-core/kern/fs.c:120 -msgid "unknown filesystem" -msgstr "ункноўн филеÑÑÑтем" - -#: grub-core/kern/mips/arc/init.c:273 grub-core/kern/mips/loongson/init.c:301 -msgid "Shutdown failed" -msgstr "Схутдоўн фаилед" - -#: grub-core/kern/mips/arc/init.c:285 -msgid "Exit failed" -msgstr "Еѯит фаилед" - -#: grub-core/kern/misc.c:351 grub-core/kern/misc.c:408 include/grub/misc.h:269 -#: include/grub/misc.h:278 -msgid "overflow is detected" -msgstr "оверфлоў Ð¸Ñ Ð´ÐµÑ‚ÐµÑ†Ñ‚ÐµÐ´" - -#: grub-core/kern/partition.c:51 grub-core/partmap/bsdlabel.c:108 -#, c-format -msgid "Discarding improperly nested partition (%s,%s,%s%d)" -msgstr "ДиÑцардинг Ð¸Ð¼Ð¿Ñ€Ð¾Ð¿ÐµÑ€Ð»Ñ Ð½ÐµÑтед партитион (%s,%s,%s%d)" - -#: grub-core/kern/rescue_parser.c:73 util/grub-editenv.c:292 -#, c-format -msgid "Unknown command `%s'.\n" -msgstr "Ункноўн цомманд `%s'.\n" - -#: grub-core/lib/arg.c:31 -msgid "Display this help and exit." -msgstr "ДиÑÐ¿Ð»Ð°Ñ Ñ‚Ñ…Ð¸Ñ Ñ…ÐµÐ»Ð¿ анд еѯит." - -#: grub-core/lib/arg.c:33 -msgid "Display the usage of this command and exit." -msgstr "ДиÑÐ¿Ð»Ð°Ñ Ñ‚Ñ…Ðµ уÑаге оф Ñ‚Ñ…Ð¸Ñ Ñ†Ð¾Ð¼Ð¼Ð°Ð½Ð´ анд еѯит." - -#: grub-core/lib/arg.c:362 -#, c-format -msgid "missing mandatory option for `%s'" -msgstr "миÑÑинг Ð¼Ð°Ð½Ð´Ð°Ñ‚Ð¾Ñ€Ñ Ð¾Ð¿Ñ‚Ð¸Ð¾Ð½ фор `%s'" - -#: grub-core/lib/arg.c:384 -#, c-format -msgid "the argument `%s' requires an integer" -msgstr "тхе аргумент `%s' Ñ€ÐµÑœÑƒÐ¸Ñ€ÐµÑ Ð°Ð½ интегер" - -#: grub-core/lib/arg.c:407 -#, c-format -msgid "" -"a value was assigned to the argument `%s' while it doesn't require an " -"argument" -msgstr "" -"а валуе ÑžÐ°Ñ Ð°ÑÑигнед то тхе аргумент `%s' ўхиле ит доеÑн'Ñ‚ реќуире ан " -"аргумент" - -#: grub-core/lib/backtrace.c:64 -msgid "Print backtrace." -msgstr "Принт бацктраце." - -#: grub-core/lib/gnulib/argp-help.c:149 -#, c-format -msgid "ARGP_HELP_FMT: %s value is less than or equal to %s" -msgstr "ÐРГП_ХЕЛП_ФМТ: %s валуе Ð¸Ñ Ð»ÐµÑÑ Ñ‚Ñ…Ð°Ð½ ор еќуал то %s" - -#: grub-core/lib/gnulib/argp-help.c:225 -#, c-format -msgid "%.*s: ARGP_HELP_FMT parameter requires a value" -msgstr "%.*s: ÐРГП_ХЕЛП_ФМТ параметер Ñ€ÐµÑœÑƒÐ¸Ñ€ÐµÑ Ð° валуе" - -#: grub-core/lib/gnulib/argp-help.c:235 -#, c-format -msgid "%.*s: Unknown ARGP_HELP_FMT parameter" -msgstr "%.*s: Ункноўн ÐРГП_ХЕЛП_ФМТ параметер" - -#: grub-core/lib/gnulib/argp-help.c:248 -#, c-format -msgid "Garbage in ARGP_HELP_FMT: %s" -msgstr "Гарбаге ин ÐРГП_ХЕЛП_ФМТ: %s" - -#: grub-core/lib/gnulib/argp-help.c:1229 -msgid "" -"Mandatory or optional arguments to long options are also mandatory or " -"optional for any corresponding short options." -msgstr "" -"ÐœÐ°Ð½Ð´Ð°Ñ‚Ð¾Ñ€Ñ Ð¾Ñ€ оптионал Ð°Ñ€Ð³ÑƒÐ¼ÐµÐ½Ñ‚Ñ Ñ‚Ð¾ лонг Ð¾Ð¿Ñ‚Ð¸Ð¾Ð½Ñ Ð°Ñ€Ðµ алÑо Ð¼Ð°Ð½Ð´Ð°Ñ‚Ð¾Ñ€Ñ Ð¾Ñ€ " -"оптионал фор Ð°Ð½Ñ Ñ†Ð¾Ñ€Ñ€ÐµÑпондинг Ñхорт оптионÑ." - -#: grub-core/lib/gnulib/argp-help.c:1620 -msgid " or: " -msgstr " ор: " - -#: grub-core/lib/gnulib/argp-help.c:1632 -msgid " [OPTION...]" -msgstr " [ОПТИОÐ...]" - -#: grub-core/lib/gnulib/argp-help.c:1659 -#, c-format -msgid "Try '%s --help' or '%s --usage' for more information.\n" -msgstr "Ð¢Ñ€Ñ '%s --хелп' ор '%s --уÑаге' фор море информатион.\n" - -#: grub-core/lib/gnulib/argp-help.c:1687 -#, c-format -msgid "Report bugs to %s.\n" -msgstr "Репорт Ð±ÑƒÐ³Ñ Ñ‚Ð¾ %s.\n" - -#: grub-core/lib/gnulib/argp-help.c:1888 grub-core/lib/gnulib/error.c:195 -msgid "Unknown system error" -msgstr "Ункноўн ÑÑÑтем еррор" - -#: grub-core/lib/gnulib/argp-parse.c:81 -msgid "give this help list" -msgstr "гиве Ñ‚Ñ…Ð¸Ñ Ñ…ÐµÐ»Ð¿ лиÑÑ‚" - -#: grub-core/lib/gnulib/argp-parse.c:82 -msgid "give a short usage message" -msgstr "гиве а Ñхорт уÑаге меÑÑаге" - -#: grub-core/lib/gnulib/argp-parse.c:83 util/grub-mkfont.c:946 -msgid "NAME" -msgstr "ÐÐМЕ" - -#: grub-core/lib/gnulib/argp-parse.c:84 -msgid "set the program name" -msgstr "Ñет тхе програм наме" - -#: grub-core/lib/gnulib/argp-parse.c:86 -msgid "hang for SECS seconds (default 3600)" -msgstr "ханг фор СЕЦС ÑÐµÑ†Ð¾Ð½Ð´Ñ (дефаулт 3600)" - -#: grub-core/lib/gnulib/argp-parse.c:143 -msgid "print program version" -msgstr "принт програм верÑион" - -#: grub-core/lib/gnulib/argp-parse.c:160 -msgid "(PROGRAM ERROR) No version known!?" -msgstr "(ПРОГРÐМ ЕРРОР) Ðо верÑион кноўн!?" - -#: grub-core/lib/gnulib/argp-parse.c:613 -#, c-format -msgid "%s: Too many arguments\n" -msgstr "%s: Тоо Ð¼Ð°Ð½Ñ Ð°Ñ€Ð³ÑƒÐ¼ÐµÐ½Ñ‚Ñ\n" - -#: grub-core/lib/gnulib/argp-parse.c:759 -msgid "(PROGRAM ERROR) Option should have been recognized!?" -msgstr "(ПРОГРÐМ ЕРРОР) Оптион Ñхоулд хаве беен рецогнизед!?" - -#: grub-core/lib/gnulib/getopt.c:278 -#, c-format -msgid "%s: option '%s%s' is ambiguous\n" -msgstr "%s: оптион '%s%s' Ð¸Ñ Ð°Ð¼Ð±Ð¸Ð³ÑƒÐ¾ÑƒÑ\n" - -#: grub-core/lib/gnulib/getopt.c:284 -#, c-format -msgid "%s: option '%s%s' is ambiguous; possibilities:" -msgstr "%s: оптион '%s%s' Ð¸Ñ Ð°Ð¼Ð±Ð¸Ð³ÑƒÐ¾ÑƒÑ; поÑÑибилитиеÑ:" - -#: grub-core/lib/gnulib/getopt.c:319 -#, c-format -msgid "%s: unrecognized option '%s%s'\n" -msgstr "%s: унрецогнизед оптион '%s%s'\n" - -#: grub-core/lib/gnulib/getopt.c:345 -#, c-format -msgid "%s: option '%s%s' doesn't allow an argument\n" -msgstr "%s: оптион '%s%s' доеÑн'Ñ‚ аллоў ан аргумент\n" - -#: grub-core/lib/gnulib/getopt.c:360 -#, c-format -msgid "%s: option '%s%s' requires an argument\n" -msgstr "%s: оптион '%s%s' Ñ€ÐµÑœÑƒÐ¸Ñ€ÐµÑ Ð°Ð½ аргумент\n" - -#: grub-core/lib/gnulib/getopt.c:621 -#, c-format -msgid "%s: invalid option -- '%c'\n" -msgstr "%s: инвалид оптион -- '%c'\n" - -#: grub-core/lib/gnulib/getopt.c:636 grub-core/lib/gnulib/getopt.c:682 -#, c-format -msgid "%s: option requires an argument -- '%c'\n" -msgstr "%s: оптион Ñ€ÐµÑœÑƒÐ¸Ñ€ÐµÑ Ð°Ð½ аргумент -- '%c'\n" - -#: grub-core/lib/gnulib/openat-die.c:38 -#, c-format -msgid "unable to record current working directory" -msgstr "унабле то рецорд цуррент ўоркинг дирецторÑ" - -#: grub-core/lib/gnulib/openat-die.c:57 -#, c-format -msgid "failed to return to initial working directory" -msgstr "фаилед то ретурн то инитиал ўоркинг дирецторÑ" - -#: grub-core/lib/gnulib/regcomp.c:135 grub-core/osdep/aros/hostdisk.c:523 -msgid "Success" -msgstr "СуццеÑÑ" - -#: grub-core/lib/gnulib/regcomp.c:138 -msgid "No match" -msgstr "Ðо матцх" - -#: grub-core/lib/gnulib/regcomp.c:141 -msgid "Invalid regular expression" -msgstr "Инвалид регулар еѯпреÑÑион" - -#: grub-core/lib/gnulib/regcomp.c:144 -msgid "Invalid collation character" -msgstr "Инвалид цоллатион цхарацтер" - -#: grub-core/lib/gnulib/regcomp.c:147 -msgid "Invalid character class name" -msgstr "Инвалид цхарацтер цлаÑÑ Ð½Ð°Ð¼Ðµ" - -#: grub-core/lib/gnulib/regcomp.c:150 -msgid "Trailing backslash" -msgstr "Траилинг бацкÑлаÑÑ…" - -#: grub-core/lib/gnulib/regcomp.c:153 -msgid "Invalid back reference" -msgstr "Инвалид бацк референце" - -#: grub-core/lib/gnulib/regcomp.c:156 -msgid "Unmatched [, [^, [:, [., or [=" -msgstr "Унматцхед [, [^, [:, [., ор [=" - -#: grub-core/lib/gnulib/regcomp.c:159 -msgid "Unmatched ( or \\(" -msgstr "Унматцхед ( ор \\(" - -#: grub-core/lib/gnulib/regcomp.c:162 -msgid "Unmatched \\{" -msgstr "Унматцхед \\{" - -#: grub-core/lib/gnulib/regcomp.c:165 -msgid "Invalid content of \\{\\}" -msgstr "Инвалид цонтент оф \\{\\}" - -#: grub-core/lib/gnulib/regcomp.c:168 -msgid "Invalid range end" -msgstr "Инвалид ранге енд" - -#: grub-core/lib/gnulib/regcomp.c:171 -msgid "Memory exhausted" -msgstr "ÐœÐµÐ¼Ð¾Ñ€Ñ ÐµÑ¯Ñ…Ð°ÑƒÑтед" - -#: grub-core/lib/gnulib/regcomp.c:174 -msgid "Invalid preceding regular expression" -msgstr "Инвалид прецединг регулар еѯпреÑÑион" - -#: grub-core/lib/gnulib/regcomp.c:177 -msgid "Premature end of regular expression" -msgstr "Прематуре енд оф регулар еѯпреÑÑион" - -#: grub-core/lib/gnulib/regcomp.c:180 -msgid "Regular expression too big" -msgstr "Регулар еѯпреÑÑион тоо биг" - -#: grub-core/lib/gnulib/regcomp.c:183 -msgid "Unmatched ) or \\)" -msgstr "Унматцхед ) ор \\)" - -#: grub-core/lib/gnulib/regcomp.c:531 -msgid "unknown regexp error" -msgstr "ункноўн регеѯп еррор" - -#: grub-core/lib/gnulib/regcomp.c:676 -msgid "No previous regular expression" -msgstr "Ðо Ð¿Ñ€ÐµÐ²Ð¸Ð¾ÑƒÑ Ñ€ÐµÐ³ÑƒÐ»Ð°Ñ€ еѯпреÑÑион" - -#: grub-core/lib/i386/halt.c:77 -msgid "GRUB doesn't know how to halt this machine yet!" -msgstr "ГРУБ доеÑн'Ñ‚ кноў хоў то халт Ñ‚Ñ…Ð¸Ñ Ð¼Ð°Ñ†Ñ…Ð¸Ð½Ðµ Ñет!" - -#: grub-core/lib/legacy_parse.c:75 -msgid "Default server is ${net_default_server}" -msgstr "Дефаулт Ñервер Ð¸Ñ ${нет_дефаулт_Ñервер}" - -#: grub-core/lib/legacy_parse.c:844 grub-core/video/colors.c:296 -#: grub-core/video/colors.c:305 grub-core/video/colors.c:311 -#: grub-core/video/colors.c:327 util/render-label.c:84 util/render-label.c:98 -#, c-format -msgid "invalid color specification `%s'" -msgstr "инвалид цолор Ñпецифицатион `%s'" - -#: grub-core/lib/mips/arc/reboot.c:32 grub-core/lib/mips/loongson/reboot.c:61 -msgid "Reboot failed" -msgstr "Ребоот фаилед" - -#: grub-core/lib/random.c:113 -msgid "[LENGTH]" -msgstr "[ЛЕÐГТХ]" - -#: grub-core/lib/random.c:114 -msgid "Hexdump random data." -msgstr "Хеѯдумп рандом дата." - -#: grub-core/loader/arm/linux.c:242 -msgid "device tree must be supplied (see `devicetree' command)" -msgstr "девице трее муÑÑ‚ бе Ñупплиед (Ñее `девицетрее' цомманд)" - -#: grub-core/loader/arm/linux.c:334 -msgid "invalid zImage" -msgstr "инвалид зИмаге" - -#: grub-core/loader/arm/linux.c:450 grub-core/loader/efi/fdt.c:144 -msgid "invalid device tree" -msgstr "инвалид девице трее" - -#: grub-core/loader/arm/linux.c:493 grub-core/loader/arm64/linux.c:383 -#: grub-core/loader/i386/linux.c:1125 grub-core/loader/i386/pc/linux.c:479 -#: grub-core/loader/i386/xen.c:962 grub-core/loader/i386/xen.c:964 -#: grub-core/loader/ia64/efi/linux.c:591 grub-core/loader/mips/linux.c:501 -#: grub-core/loader/powerpc/ieee1275/linux.c:383 -#: grub-core/loader/riscv/linux.c:50 -#: grub-core/loader/sparc64/ieee1275/linux.c:511 -msgid "Load Linux." -msgstr "Лоад Линуѯ." - -#: grub-core/loader/arm/linux.c:495 grub-core/loader/arm64/linux.c:385 -#: grub-core/loader/i386/linux.c:1127 grub-core/loader/i386/pc/linux.c:482 -#: grub-core/loader/i386/xen.c:966 grub-core/loader/ia64/efi/linux.c:594 -#: grub-core/loader/mips/linux.c:503 -#: grub-core/loader/powerpc/ieee1275/linux.c:385 -#: grub-core/loader/riscv/linux.c:52 -#: grub-core/loader/sparc64/ieee1275/linux.c:513 -msgid "Load initrd." -msgstr "Лоад инитрд." - -#. TRANSLATORS: DTB stands for device tree blob. -#: grub-core/loader/arm/linux.c:498 grub-core/loader/efi/fdt.c:169 -msgid "Load DTB file." -msgstr "Лоад ДТБ филе." - -#: grub-core/loader/arm64/linux.c:59 -msgid "" -"plain image kernel not supported - rebuild with CONFIG_(U)EFI_STUB enabled" -msgstr "" -"плаин имаге кернел нот Ñуппортед - ребуилд ўитх ЦОÐФИГ_(У)ЕФИ_СТУБ енаблед" - -#: grub-core/loader/arm64/xen_boot.c:156 -msgid "failed to get FDT" -msgstr "фаилед то гет ФДТ" - -#: grub-core/loader/arm64/xen_boot.c:418 -msgid "you need to load the Xen Hypervisor first" -msgstr "Ñоу неед то лоад тхе Ѯен Ð¥ÑпервиÑор фирÑÑ‚" - -#: grub-core/loader/arm64/xen_boot.c:516 -msgid "Load a xen hypervisor." -msgstr "Лоад а ѯен Ñ…ÑпервиÑор." - -#: grub-core/loader/arm64/xen_boot.c:519 -msgid "Load a xen module." -msgstr "Лоад а ѯен модуле." - -#: grub-core/loader/efi/appleloader.c:231 -msgid "[OPTS]" -msgstr "[ОПТС]" - -#. TRANSLATORS: This command is used on EFI to -#. switch to BIOS mode and boot the OS requiring -#. BIOS. -#: grub-core/loader/efi/appleloader.c:235 -msgid "Boot BIOS-based system." -msgstr "Боот БИОС-баÑед ÑÑÑтем." - -#: grub-core/loader/efi/chainloader.c:421 -#: grub-core/loader/i386/pc/chainloader.c:303 -msgid "Load another boot loader." -msgstr "Лоад анотхер боот лоадер." - -#: grub-core/loader/i386/bsd.c:103 -msgid "Display output on all consoles." -msgstr "ДиÑÐ¿Ð»Ð°Ñ Ð¾ÑƒÑ‚Ð¿ÑƒÑ‚ он алл цонÑолеÑ." - -#: grub-core/loader/i386/bsd.c:104 grub-core/loader/i386/bsd.c:138 -#: grub-core/loader/i386/bsd.c:171 -msgid "Use serial console." -msgstr "УÑе Ñериал цонÑоле." - -#: grub-core/loader/i386/bsd.c:105 grub-core/loader/i386/bsd.c:131 -#: grub-core/loader/i386/bsd.c:159 -msgid "Ask for file name to reboot from." -msgstr "ÐÑк фор филе наме то ребоот фром." - -#: grub-core/loader/i386/bsd.c:106 -msgid "Use CD-ROM as root." -msgstr "УÑе ЦД-РОМ Ð°Ñ Ñ€Ð¾Ð¾Ñ‚." - -#: grub-core/loader/i386/bsd.c:107 -msgid "Invoke user configuration routing." -msgstr "Инвоке уÑер цонфигуратион роутинг." - -#: grub-core/loader/i386/bsd.c:108 grub-core/loader/i386/bsd.c:135 -#: grub-core/loader/i386/bsd.c:162 -msgid "Enter in KDB on boot." -msgstr "Ентер ин КДБ он боот." - -#: grub-core/loader/i386/bsd.c:109 -msgid "Use GDB remote debugger instead of DDB." -msgstr "УÑе ГДБ ремоте дебуггер инÑтеад оф ДДБ." - -#: grub-core/loader/i386/bsd.c:110 -msgid "Disable all boot output." -msgstr "ДиÑабле алл боот оутпут." - -#: grub-core/loader/i386/bsd.c:112 -msgid "Wait for keypress after every line of output." -msgstr "Ўаит фор кеÑпреÑÑ Ð°Ñ„Ñ‚ÐµÑ€ ÐµÐ²ÐµÑ€Ñ Ð»Ð¸Ð½Ðµ оф оутпут." - -#: grub-core/loader/i386/bsd.c:114 -msgid "Use compiled-in root device." -msgstr "УÑе цомпилед-ин роот девице." - -#: grub-core/loader/i386/bsd.c:115 grub-core/loader/i386/bsd.c:134 -#: grub-core/loader/i386/bsd.c:165 -msgid "Boot into single mode." -msgstr "Боот инто Ñингле моде." - -#: grub-core/loader/i386/bsd.c:116 grub-core/loader/i386/bsd.c:166 -msgid "Boot with verbose messages." -msgstr "Боот ўитх вербоÑе меÑÑагеÑ." - -#: grub-core/loader/i386/bsd.c:132 grub-core/loader/i386/bsd.c:160 -msgid "Don't reboot, just halt." -msgstr "Дон'Ñ‚ ребоот, йуÑÑ‚ халт." - -#: grub-core/loader/i386/bsd.c:133 grub-core/loader/i386/bsd.c:161 -msgid "Change configured devices." -msgstr "Цханге цонфигуред девицеÑ." - -#. TRANSLATORS: "com" is static and not to be translated. It refers to -#. serial ports e.g. com1. -#. -#: grub-core/loader/i386/bsd.c:142 -msgid "comUNIT[,SPEED]" -msgstr "цомУÐИТ[,СПЕЕД]" - -#: grub-core/loader/i386/bsd.c:157 -msgid "Disable SMP." -msgstr "ДиÑабле СМП." - -#: grub-core/loader/i386/bsd.c:158 -msgid "Disable ACPI." -msgstr "ДиÑабле ÐЦПИ." - -#: grub-core/loader/i386/bsd.c:164 -msgid "Don't display boot diagnostic messages." -msgstr "Дон'Ñ‚ диÑÐ¿Ð»Ð°Ñ Ð±Ð¾Ð¾Ñ‚ диагноÑтиц меÑÑагеÑ." - -#: grub-core/loader/i386/bsd.c:167 -msgid "Boot with debug messages." -msgstr "Боот ўитх дебуг меÑÑагеÑ." - -#: grub-core/loader/i386/bsd.c:168 -msgid "Suppress normal output (warnings remain)." -msgstr "СуппреÑÑ Ð½Ð¾Ñ€Ð¼Ð°Ð» оутпут (ÑžÐ°Ñ€Ð½Ð¸Ð½Ð³Ñ Ñ€ÐµÐ¼Ð°Ð¸Ð½)." - -#. TRANSLATORS: "com" is static and not to be translated. It refers to -#. serial ports e.g. com1. -#. -#: grub-core/loader/i386/bsd.c:175 -msgid "[ADDR|comUNIT][,SPEED]" -msgstr "[ÐДДР|цомУÐИТ][,СПЕЕД]" - -#: grub-core/loader/i386/bsd.c:489 grub-core/loader/i386/bsd.c:555 -msgid "name" -msgstr "наме" - -#: grub-core/loader/i386/bsd.c:489 grub-core/loader/i386/bsd.c:555 -msgid "type" -msgstr "Ñ‚Ñпе" - -#: grub-core/loader/i386/bsd.c:489 grub-core/loader/i386/bsd.c:555 -msgid "addr" -msgstr "аддр" - -#: grub-core/loader/i386/bsd.c:490 grub-core/loader/i386/bsd.c:556 -msgid "size" -msgstr "Ñизе" - -#: grub-core/loader/i386/bsd.c:1147 grub-core/loader/i386/linux.c:466 -#: grub-core/loader/i386/xnu.c:1030 -msgid "Booting in blind mode" -msgstr "Боотинг ин блинд моде" - -#: grub-core/loader/i386/bsd.c:2137 -msgid "Load kernel of FreeBSD." -msgstr "Лоад кернел оф ФрееБСД." - -#: grub-core/loader/i386/bsd.c:2140 -msgid "Load kernel of OpenBSD." -msgstr "Лоад кернел оф ОпенБСД." - -#: grub-core/loader/i386/bsd.c:2143 -msgid "Load kernel of NetBSD." -msgstr "Лоад кернел оф ÐетБСД." - -#: grub-core/loader/i386/bsd.c:2147 -msgid "Load FreeBSD env." -msgstr "Лоад ФрееБСД енв." - -#: grub-core/loader/i386/bsd.c:2150 -msgid "Load FreeBSD kernel module." -msgstr "Лоад ФрееБСД кернел модуле." - -#: grub-core/loader/i386/bsd.c:2153 -msgid "Load NetBSD kernel module." -msgstr "Лоад ÐетБСД кернел модуле." - -#: grub-core/loader/i386/bsd.c:2156 -msgid "Load NetBSD kernel module (ELF)." -msgstr "Лоад ÐетБСД кернел модуле (ЕЛФ)." - -#: grub-core/loader/i386/bsd.c:2159 -msgid "Load FreeBSD kernel module (ELF)." -msgstr "Лоад ФрееБСД кернел модуле (ЕЛФ)." - -#. TRANSLATORS: ramdisk isn't identifier, -#. it can be translated. -#: grub-core/loader/i386/bsd.c:2165 -msgid "Load kOpenBSD ramdisk." -msgstr "Лоад кОпенБСД рамдиÑк." - -#. TRANSLATORS: "payload" is a term used -#. by coreboot and must be translated in -#. sync with coreboot. If unsure, -#. let it untranslated. -#: grub-core/loader/i386/coreboot/chainloader.c:510 -msgid "Load another coreboot payload" -msgstr "Лоад анотхер цоребоот паÑлоад" - -#: grub-core/loader/i386/linux.c:876 -msgid "Legacy `ask' parameter no longer supported." -msgstr "Ð›ÐµÐ³Ð°Ñ†Ñ `аÑк' параметер но лонгер Ñуппортед." - -#: grub-core/loader/i386/linux.c:892 grub-core/loader/i386/linux.c:902 -#: grub-core/loader/i386/linux.c:932 -#, c-format -msgid "%s is deprecated. Use set gfxpayload=%s before linux command instead.\n" -msgstr "" -"%s Ð¸Ñ Ð´ÐµÐ¿Ñ€ÐµÑ†Ð°Ñ‚ÐµÐ´. УÑе Ñет гфѯпаÑлоад=%s бефоре линуѯ цомманд инÑтеад.\n" - -#. TRANSLATORS: "x" has to be entered in, like an identifier, -#. so please don't use better Unicode codepoints. -#: grub-core/loader/i386/linux.c:915 -#, c-format -msgid "" -"%s is deprecated. VGA mode %d isn't recognized. Use set " -"gfxpayload=WIDTHxHEIGHT[xDEPTH] before linux command instead.\n" -msgstr "" -"%s Ð¸Ñ Ð´ÐµÐ¿Ñ€ÐµÑ†Ð°Ñ‚ÐµÐ´. ВГРмоде %d иÑн'Ñ‚ рецогнизед. УÑе Ñет " -"гфѯпаÑлоад=ЎИДТХѯХЕИГХТ[ѯДЕПТХ] бефоре линуѯ цомманд инÑтеад.\n" - -#: grub-core/loader/i386/pc/chainloader.c:302 -msgid "[--force|--bpb] FILE" -msgstr "[--форце|--бпб] ФИЛЕ" - -#: grub-core/loader/i386/pc/freedos.c:148 util/setup.c:293 -#, c-format -msgid "the size of `%s' is too large" -msgstr "тхе Ñизе оф `%s' Ð¸Ñ Ñ‚Ð¾Ð¾ ларге" - -#: grub-core/loader/i386/pc/freedos.c:183 -msgid "Load FreeDOS kernel.sys." -msgstr "Лоад ФрееДОС кернел.ÑÑÑ." - -#: grub-core/loader/i386/pc/ntldr.c:155 -msgid "Load NTLDR or BootMGR." -msgstr "Лоад ÐТЛДР ор БоотМГР." - -#. TRANSLATORS: it's about guessing which GRUB disk -#. is which Plan9 disk. If your language has no -#. word "mapping" you can use another word which -#. means that the GRUBDEVICE and PLAN9DEVICE are -#. actually the same device, just named differently -#. in OS and GRUB. -#: grub-core/loader/i386/pc/plan9.c:59 -msgid "Override guessed mapping of Plan9 devices." -msgstr "Оверриде гуеÑÑед маппинг оф План9 девицеÑ." - -#: grub-core/loader/i386/pc/plan9.c:60 -msgid "GRUBDEVICE=PLAN9DEVICE" -msgstr "ГРУБДЕВИЦЕ=ПЛÐÐ9ДЕВИЦЕ" - -#: grub-core/loader/i386/pc/plan9.c:599 -msgid "KERNEL ARGS" -msgstr "КЕРÐЕЛ ÐРГС" - -#: grub-core/loader/i386/pc/plan9.c:599 -msgid "Load Plan9 kernel." -msgstr "Лоад План9 кернел." - -#: grub-core/loader/i386/pc/pxechainloader.c:161 -msgid "Load a PXE image." -msgstr "Лоад а ПѮЕ имаге." - -#: grub-core/loader/i386/pc/truecrypt.c:226 -msgid "Load Truecrypt ISO." -msgstr "Лоад ТруецрÑпт ИСО." - -#: grub-core/loader/i386/xen.c:781 grub-core/loader/i386/xen.c:865 -msgid "initrd already loaded" -msgstr "инитрд Ð°Ð»Ñ€ÐµÐ°Ð´Ñ Ð»Ð¾Ð°Ð´ÐµÐ´" - -#: grub-core/loader/i386/xen.c:968 -msgid "Load module." -msgstr "Лоад модуле." - -#: grub-core/loader/i386/xnu.c:1003 -msgid "Press any key to launch xnu" -msgstr "ПреÑÑ Ð°Ð½Ñ ÐºÐµÑ Ñ‚Ð¾ лаунцх ѯну" - -#. TRANSLATORS: `device-properties' -#. is a variable name, -#. not a program. -#: grub-core/loader/i386/xnu.c:1159 -msgid "Load `device-properties' dump." -msgstr "Лоад `девице-пропертиеÑ' думп." - -#: grub-core/loader/ia64/efi/linux.c:124 -msgid "Could not locate FPSWA driver" -msgstr "Цоулд нот лоцате ФПСЎРдривер" - -#: grub-core/loader/ia64/efi/linux.c:132 -msgid "FPSWA protocol wasn't able to find the interface" -msgstr "ФПСЎРпротоцол ўаÑн'Ñ‚ абле то финд тхе интерфаце" - -#: grub-core/loader/ia64/efi/linux.c:580 -msgid "No FPSWA found" -msgstr "Ðо ФПСЎРфоунд" - -#: grub-core/loader/ia64/efi/linux.c:582 -#, c-format -msgid "FPSWA revision: %x\n" -msgstr "ФПСЎРревиÑион: %x\n" - -#: grub-core/loader/ia64/efi/linux.c:591 -msgid "FILE [ARGS...]" -msgstr "ФИЛЕ [ÐРГС...]" - -#: grub-core/loader/ia64/efi/linux.c:597 -msgid "Display FPSWA version." -msgstr "ДиÑÐ¿Ð»Ð°Ñ Ð¤ÐŸÐ¡ÐŽÐ Ð²ÐµÑ€Ñион." - -#: grub-core/loader/multiboot.c:248 -msgid "WARNING: no console will be available to OS" -msgstr "ÐŽÐРÐИÐГ: но цонÑоле ўилл бе аваилабле то ОС" - -#: grub-core/loader/multiboot.c:450 -msgid "Load a multiboot 2 kernel." -msgstr "Лоад а мултибоот 2 кернел." - -#: grub-core/loader/multiboot.c:453 -msgid "Load a multiboot 2 module." -msgstr "Лоад а мултибоот 2 модуле." - -#: grub-core/loader/multiboot.c:456 -msgid "Load a multiboot kernel." -msgstr "Лоад а мултибоот кернел." - -#: grub-core/loader/multiboot.c:459 -msgid "Load a multiboot module." -msgstr "Лоад а мултибоот модуле." - -#: grub-core/loader/riscv/linux.c:30 grub-core/loader/riscv/linux.c:40 -msgid "Linux not supported yet" -msgstr "Линуѯ нот Ñуппортед Ñет" - -#: grub-core/loader/xnu.c:1416 grub-core/term/gfxterm_background.c:45 -msgid "Background image mode." -msgstr "Бацкгроунд имаге моде." - -#. TRANSLATORS: This refers to background image mode (stretched or -#. in left-top corner). Note that GRUB will accept only original -#. keywords stretch and normal, not the translated ones. -#. So please put both in translation -#. e.g. stretch(=%STRETCH%)|normal(=%NORMAL%). -#. The percents mark the translated version. Since many people -#. may not know the word stretch or normal I recommend -#. putting the translation either here or in "Background image mode." -#. string. -#: grub-core/loader/xnu.c:1416 grub-core/term/gfxterm_background.c:55 -msgid "stretch|normal" -msgstr "Ñтретцх|нормал" - -#: grub-core/loader/xnu.c:1482 -msgid "Load XNU image." -msgstr "Лоад Ñ®ÐУ имаге." - -#: grub-core/loader/xnu.c:1484 -msgid "Load 64-bit XNU image." -msgstr "Лоад 64-бит Ñ®ÐУ имаге." - -#: grub-core/loader/xnu.c:1486 -msgid "Load XNU extension package." -msgstr "Лоад Ñ®ÐУ еѯтенÑион пацкаге." - -#: grub-core/loader/xnu.c:1488 -msgid "Load XNU extension." -msgstr "Лоад Ñ®ÐУ еѯтенÑион." - -#. TRANSLATORS: OSBundleRequired is a -#. variable name in xnu extensions -#. manifests. It behaves mostly like -#. GNU/Linux runlevels. -#. -#: grub-core/loader/xnu.c:1495 -msgid "DIRECTORY [OSBundleRequired]" -msgstr "ДИРЕЦТОРР[ОСБундлеРеќуиред]" - -#. TRANSLATORS: There are many extensions -#. in extension directory. -#: grub-core/loader/xnu.c:1498 -msgid "Load XNU extension directory." -msgstr "Лоад Ñ®ÐУ еѯтенÑион дирецторÑ." - -#. TRANSLATORS: ramdisk here isn't identifier. It can be translated. -#: grub-core/loader/xnu.c:1501 -msgid "Load XNU ramdisk. It will be available in OS as md0." -msgstr "Лоад Ñ®ÐУ рамдиÑк. Ит ўилл бе аваилабле ин ОС Ð°Ñ Ð¼Ð´0." - -#: grub-core/loader/xnu.c:1505 -msgid "Load a splash image for XNU." -msgstr "Лоад а ÑплаÑÑ… имаге фор Ñ®ÐУ." - -#: grub-core/loader/xnu.c:1510 -msgid "Load an image of hibernated XNU." -msgstr "Лоад ан имаге оф хибернатед Ñ®ÐУ." - -#: grub-core/mmap/mmap.c:538 -msgid "ADDR1,MASK1[,ADDR2,MASK2[,...]]" -msgstr "ÐДДР1,МÐСК1[,ÐДДР2,МÐСК2[,...]]" - -#: grub-core/mmap/mmap.c:539 -msgid "Declare memory regions as faulty (badram)." -msgstr "Децларе Ð¼ÐµÐ¼Ð¾Ñ€Ñ Ñ€ÐµÐ³Ð¸Ð¾Ð½Ñ Ð°Ñ Ñ„Ð°ÑƒÐ»Ñ‚Ñ (бадрам)." - -#: grub-core/mmap/mmap.c:541 -msgid "FROM[K|M|G] TO[K|M|G]" -msgstr "ФРОМ[К|М|Г] ТО[К|М|Г]" - -#: grub-core/mmap/mmap.c:542 -msgid "Remove any memory regions in specified range." -msgstr "Ремове Ð°Ð½Ñ Ð¼ÐµÐ¼Ð¾Ñ€Ñ Ñ€ÐµÐ³Ð¸Ð¾Ð½Ñ Ð¸Ð½ Ñпецифиед ранге." - -#: grub-core/net/bootp.c:653 -msgid "four arguments expected" -msgstr "фоур Ð°Ñ€Ð³ÑƒÐ¼ÐµÐ½Ñ‚Ñ ÐµÑ¯Ð¿ÐµÑ†Ñ‚ÐµÐ´" - -#: grub-core/net/bootp.c:661 grub-core/net/net.c:1155 -#, c-format -msgid "unrecognised network interface `%s'" -msgstr "унрецогниÑед нетўорк интерфаце `%s'" - -#: grub-core/net/bootp.c:664 -msgid "no DHCP info found" -msgstr "но ДХЦП инфо фоунд" - -#: grub-core/net/bootp.c:674 -msgid "no DHCP options found" -msgstr "но ДХЦП Ð¾Ð¿Ñ‚Ð¸Ð¾Ð½Ñ Ñ„Ð¾ÑƒÐ½Ð´" - -#: grub-core/net/bootp.c:682 -msgid "invalid DHCP option code" -msgstr "инвалид ДХЦП оптион цоде" - -#: grub-core/net/bootp.c:686 -#, c-format -msgid "no DHCP option %u found" -msgstr "но ДХЦП оптион %u фоунд" - -#: grub-core/net/bootp.c:743 -#, c-format -msgid "unrecognised DHCP option format specification `%s'" -msgstr "унрецогниÑед ДХЦП оптион формат Ñпецифицатион `%s'" - -#: grub-core/net/bootp.c:767 -msgid "no network card found" -msgstr "но нетўорк цард фоунд" - -#: grub-core/net/bootp.c:859 grub-core/net/net.c:389 -#, c-format -msgid "couldn't autoconfigure %s" -msgstr "цоулдн'Ñ‚ аутоцонфигуре %s" - -#: grub-core/net/bootp.c:873 grub-core/net/bootp.c:876 -msgid "[CARD]" -msgstr "[ЦÐРД]" - -#: grub-core/net/bootp.c:874 -msgid "perform a bootp autoconfiguration" -msgstr "перформ а боотп аутоцонфигуратион" - -#: grub-core/net/bootp.c:877 -msgid "perform a DHCP autoconfiguration" -msgstr "перформ а ДХЦП аутоцонфигуратион" - -#: grub-core/net/bootp.c:879 -msgid "VAR INTERFACE NUMBER DESCRIPTION" -msgstr "Ð’ÐР ИÐТЕРФÐЦЕ ÐУМБЕР ДЕСЦРИПТИОÐ" - -#: grub-core/net/bootp.c:880 -msgid "" -"retrieve DHCP option and save it into VAR. If VAR is - then print the value." -msgstr "" -"ретриеве ДХЦП оптион анд Ñаве ит инто Ð’ÐР. Иф Ð’ÐР Ð¸Ñ - тхен принт тхе валуе." - -#: grub-core/net/dns.c:459 -msgid "no DNS servers configured" -msgstr "но ДÐС ÑÐµÑ€Ð²ÐµÑ€Ñ Ñ†Ð¾Ð½Ñ„Ð¸Ð³ÑƒÑ€ÐµÐ´" - -#: grub-core/net/dns.c:522 -msgid "domain name component is too long" -msgstr "домаин наме цомпонент Ð¸Ñ Ñ‚Ð¾Ð¾ лонг" - -#: grub-core/net/dns.c:618 grub-core/net/dns.c:666 -msgid "no DNS record found" -msgstr "но ДÐС рецорд фоунд" - -#: grub-core/net/dns.c:626 -msgid "no DNS reply received" -msgstr "но ДÐС Ñ€ÐµÐ¿Ð»Ñ Ñ€ÐµÑ†ÐµÐ¸Ð²ÐµÐ´" - -#: grub-core/net/dns.c:682 -msgid "only ipv4" -msgstr "Ð¾Ð½Ð»Ñ Ð¸Ð¿Ð²4" - -#: grub-core/net/dns.c:686 -msgid "only ipv6" -msgstr "Ð¾Ð½Ð»Ñ Ð¸Ð¿Ð²6" - -#: grub-core/net/dns.c:690 -msgid "prefer ipv4" -msgstr "префер ипв4" - -#: grub-core/net/dns.c:694 -msgid "prefer ipv6" -msgstr "префер ипв6" - -#: grub-core/net/dns.c:759 -msgid "ADDRESS DNSSERVER" -msgstr "ÐДДРЕСС ДÐССЕРВЕР" - -#: grub-core/net/dns.c:760 -msgid "Perform a DNS lookup" -msgstr "Перформ а ДÐС лоокуп" - -#: grub-core/net/dns.c:762 grub-core/net/dns.c:765 -msgid "DNSSERVER" -msgstr "ДÐССЕРВЕР" - -#: grub-core/net/dns.c:763 -msgid "Add a DNS server" -msgstr "Ðдд а ДÐС Ñервер" - -#: grub-core/net/dns.c:766 -msgid "Remove a DNS server" -msgstr "Ремове а ДÐС Ñервер" - -#: grub-core/net/dns.c:768 -msgid "List DNS servers" -msgstr "ЛиÑÑ‚ ДÐС ÑерверÑ" - -#: grub-core/net/drivers/efi/efinet.c:49 grub-core/net/drivers/efi/efinet.c:65 -#: grub-core/net/drivers/efi/efinet.c:77 grub-core/net/drivers/emu/emunet.c:62 -#: grub-core/net/drivers/i386/pc/pxe.c:273 -#: grub-core/net/drivers/ieee1275/ofnet.c:75 -#: grub-core/net/drivers/uboot/ubootnet.c:62 -msgid "couldn't send network packet" -msgstr "цоулдн'Ñ‚ Ñенд нетўорк пацкет" - -#: grub-core/net/drivers/ieee1275/ofnet.c:326 -#: grub-core/net/drivers/ieee1275/ofnet.c:359 -msgid "interpret is not supported" -msgstr "интерпрет Ð¸Ñ Ð½Ð¾Ñ‚ Ñуппортед" - -#: grub-core/net/drivers/ieee1275/ofnet.c:336 -msgid "alloc-mem failed" -msgstr "аллоц-мем фаилед" - -#: grub-core/net/drivers/ieee1275/ofnet.c:370 -msgid "free-mem failed" -msgstr "фрее-мем фаилед" - -#: grub-core/net/http.c:105 -msgid "unsupported HTTP response" -msgstr "унÑуппортед ХТТП реÑпонÑе" - -#. TRANSLATORS: GRUB HTTP code is pretty young. So even perfectly -#. valid answers like 403 will trigger this very generic message. -#: grub-core/net/http.c:126 -#, c-format -msgid "unsupported HTTP error %d: %s" -msgstr "унÑуппортед ХТТП еррор %d: %s" - -#: grub-core/net/http.c:429 grub-core/net/tftp.c:420 -#, c-format -msgid "time out opening `%s'" -msgstr "тиме оут опенинг `%s'" - -#: grub-core/net/net.c:179 -msgid "timeout: could not resolve hardware address" -msgstr "тимеоут: цоулд нот реÑолве хардўаре аддреÑÑ" - -#: grub-core/net/net.c:548 -#, c-format -msgid "unresolvable address %s" -msgstr "унреÑолвабле аддреÑÑ %s" - -#: grub-core/net/net.c:594 -#, c-format -msgid "unrecognised network address `%s'" -msgstr "унрецогниÑед нетўорк аддреÑÑ `%s'" - -#: grub-core/net/net.c:661 -msgid "destination unreachable" -msgstr "деÑтинатион унреацхабле" - -#. TRANSLATORS: route loop is a condition when e.g. -#. to contact server A you need to go through B -#. and to contact B you need to go through A. -#: grub-core/net/net.c:684 -msgid "route loop detected" -msgstr "роуте лооп детецтед" - -#: grub-core/net/net.c:700 -msgid "address not found" -msgstr "аддреÑÑ Ð½Ð¾Ñ‚ фоунд" - -#: grub-core/net/net.c:704 -msgid "you can't delete this address" -msgstr "Ñоу цан'Ñ‚ делете Ñ‚Ñ…Ð¸Ñ Ð°Ð´Ð´Ñ€ÐµÑÑ" - -#: grub-core/net/net.c:776 grub-core/net/net.c:792 -#, c-format -msgid "Unsupported hw address type %d\n" -msgstr "УнÑуппортед Ñ…Ñž аддреÑÑ Ñ‚Ñпе %d\n" - -#: grub-core/net/net.c:813 -#, c-format -msgid "Unsupported address type %d\n" -msgstr "УнÑуппортед аддреÑÑ Ñ‚Ñпе %d\n" - -#: grub-core/net/net.c:1017 grub-core/net/net.c:1131 -msgid "three arguments expected" -msgstr "тхрее Ð°Ñ€Ð³ÑƒÐ¼ÐµÐ½Ñ‚Ñ ÐµÑ¯Ð¿ÐµÑ†Ñ‚ÐµÐ´" - -#: grub-core/net/net.c:1023 -msgid "card not found" -msgstr "цард нот фоунд" - -#. TRANSLATORS: it refers to the network address. -#: grub-core/net/net.c:1167 -msgid "temporary" -msgstr "темпорарÑ" - -#: grub-core/net/net.c:1190 -#, c-format -msgid "Unknown address type %d\n" -msgstr "Ункноўн аддреÑÑ Ñ‚Ñпе %d\n" - -#: grub-core/net/net.c:1298 -msgid "no server is specified" -msgstr "но Ñервер Ð¸Ñ Ñпецифиед" - -#: grub-core/net/net.c:1637 -#, c-format -msgid "timeout reading `%s'" -msgstr "тимеоут реадинг `%s'" - -#. TRANSLATORS: HWADDRESS stands for -#. "hardware address". -#: grub-core/net/net.c:1762 -msgid "SHORTNAME CARD ADDRESS [HWADDRESS]" -msgstr "СХОРТÐÐМЕ ЦÐРД ÐДДРЕСС [ХЎÐДДРЕСС]" - -#: grub-core/net/net.c:1763 -msgid "Add a network address." -msgstr "Ðдд а нетўорк аддреÑÑ." - -#: grub-core/net/net.c:1766 -msgid "[CARD [HWADDRESS]]" -msgstr "[ЦÐРД [ХЎÐДДРЕСС]]" - -#: grub-core/net/net.c:1767 -msgid "Perform an IPV6 autoconfiguration" -msgstr "Перформ ан ИПВ6 аутоцонфигуратион" - -#: grub-core/net/net.c:1770 grub-core/net/net.c:1777 -msgid "SHORTNAME" -msgstr "СХОРТÐÐМЕ" - -#: grub-core/net/net.c:1771 -msgid "Delete a network address." -msgstr "Делете а нетўорк аддреÑÑ." - -#. TRANSLATORS: "gw" is a keyword. -#: grub-core/net/net.c:1774 -msgid "SHORTNAME NET [INTERFACE| gw GATEWAY]" -msgstr "СХОРТÐÐМЕ ÐЕТ [ИÐТЕРФÐЦЕ| гў ГÐТЕЎÐÐ]" - -#: grub-core/net/net.c:1775 -msgid "Add a network route." -msgstr "Ðдд а нетўорк роуте." - -#: grub-core/net/net.c:1778 -msgid "Delete a network route." -msgstr "Делете а нетўорк роуте." - -#: grub-core/net/net.c:1780 -msgid "list network routes" -msgstr "лиÑÑ‚ нетўорк роутеÑ" - -#: grub-core/net/net.c:1782 -msgid "list network cards" -msgstr "лиÑÑ‚ нетўорк цардÑ" - -#: grub-core/net/net.c:1784 -msgid "list network addresses" -msgstr "лиÑÑ‚ нетўорк аддреÑÑеÑ" - -#: grub-core/net/tcp.c:681 -msgid "connection refused" -msgstr "цоннецтион рефуÑед" - -#: grub-core/net/tcp.c:684 -msgid "connection timeout" -msgstr "цоннецтион тимеоут" - -#: grub-core/normal/auth.c:220 -msgid "Enter username: " -msgstr "Ентер уÑернаме: " - -#: grub-core/normal/auth.c:269 -msgid "[USERLIST]" -msgstr "[УСЕРЛИСТ]" - -#: grub-core/normal/auth.c:270 -msgid "Check whether user is in USERLIST." -msgstr "Цхецк ўхетхер уÑер Ð¸Ñ Ð¸Ð½ УСЕРЛИСТ." - -#: grub-core/normal/cmdline.c:174 grub-core/normal/menu_entry.c:1068 -msgid "Possible commands are:" -msgstr "ПоÑÑибле Ñ†Ð¾Ð¼Ð¼Ð°Ð½Ð´Ñ Ð°Ñ€Ðµ:" - -#: grub-core/normal/cmdline.c:177 grub-core/normal/menu_entry.c:1072 -msgid "Possible devices are:" -msgstr "ПоÑÑибле Ð´ÐµÐ²Ð¸Ñ†ÐµÑ Ð°Ñ€Ðµ:" - -#: grub-core/normal/cmdline.c:180 grub-core/normal/menu_entry.c:1076 -msgid "Possible files are:" -msgstr "ПоÑÑибле Ñ„Ð¸Ð»ÐµÑ Ð°Ñ€Ðµ:" - -#: grub-core/normal/cmdline.c:183 grub-core/normal/menu_entry.c:1080 -msgid "Possible partitions are:" -msgstr "ПоÑÑибле Ð¿Ð°Ñ€Ñ‚Ð¸Ñ‚Ð¸Ð¾Ð½Ñ Ð°Ñ€Ðµ:" - -#: grub-core/normal/cmdline.c:186 grub-core/normal/menu_entry.c:1084 -msgid "Possible arguments are:" -msgstr "ПоÑÑибле Ð°Ñ€Ð³ÑƒÐ¼ÐµÐ½Ñ‚Ñ Ð°Ñ€Ðµ:" - -#. TRANSLATORS: this message is used if none of above matches. -#. This shouldn't happen but please use the general term for -#. "thing" or "object". -#: grub-core/normal/cmdline.c:192 grub-core/normal/menu_entry.c:1088 -msgid "Possible things are:" -msgstr "ПоÑÑибле Ñ‚Ñ…Ð¸Ð½Ð³Ñ Ð°Ñ€Ðµ:" - -#: grub-core/normal/color.c:81 -#, c-format -msgid "Warning: syntax error (missing slash) in `%s'\n" -msgstr "Ўарнинг: ÑÑнтаѯ еррор (миÑÑинг ÑлаÑÑ…) ин `%s'\n" - -#: grub-core/normal/color.c:90 -#, c-format -msgid "Warning: invalid foreground color `%s'\n" -msgstr "Ўарнинг: инвалид форегроунд цолор `%s'\n" - -#: grub-core/normal/color.c:96 -#, c-format -msgid "Warning: invalid background color `%s'\n" -msgstr "Ўарнинг: инвалид бацкгроунд цолор `%s'\n" - -#: grub-core/normal/context.c:206 -msgid "ENVVAR [ENVVAR] ..." -msgstr "ЕÐÐ’Ð’ÐР [ЕÐÐ’Ð’ÐР] ..." - -#: grub-core/normal/context.c:207 -msgid "Export variables." -msgstr "Еѯпорт вариаблеÑ." - -#: grub-core/normal/datetime.c:25 -msgid "Sunday" -msgstr "СундаÑ" - -#: grub-core/normal/datetime.c:26 -msgid "Monday" -msgstr "МондаÑ" - -#: grub-core/normal/datetime.c:27 -msgid "Tuesday" -msgstr "ТуеÑдаÑ" - -#: grub-core/normal/datetime.c:28 -msgid "Wednesday" -msgstr "ЎеднеÑдаÑ" - -#: grub-core/normal/datetime.c:29 -msgid "Thursday" -msgstr "ТхурÑдаÑ" - -#: grub-core/normal/datetime.c:30 -msgid "Friday" -msgstr "ФридаÑ" - -#: grub-core/normal/datetime.c:31 -msgid "Saturday" -msgstr "СатурдаÑ" - -#: grub-core/normal/dyncmd.c:187 -msgid "module isn't loaded" -msgstr "модуле иÑн'Ñ‚ лоадед" - -#: grub-core/normal/main.c:211 -#, c-format -msgid "GNU GRUB version %s" -msgstr "ГÐУ ГРУБ верÑион %s" - -#: grub-core/normal/main.c:360 -msgid "ESC at any time exits." -msgstr "ЕСЦ ат Ð°Ð½Ñ Ñ‚Ð¸Ð¼Ðµ еѯитÑ." - -#: grub-core/normal/main.c:363 -#, c-format -msgid "" -"Minimal BASH-like line editing is supported. For the first word, TAB lists " -"possible command completions. Anywhere else TAB lists possible device or " -"file completions. %s" -msgstr "" -"Минимал БÐСХ-лике лине едитинг Ð¸Ñ Ñуппортед. Фор тхе фирÑÑ‚ ўорд, ТÐБ лиÑÑ‚Ñ " -"поÑÑибле цомманд цомплетионÑ. ÐнÑўхере елÑе ТÐБ лиÑÑ‚Ñ Ð¿Ð¾ÑÑибле девице ор " -"филе цомплетионÑ. %s" - -#. TRANSLATORS: it's command line prompt. -#: grub-core/normal/main.c:395 -msgid ">" -msgstr ">" - -#. TRANSLATORS: it's command line prompt. -#: grub-core/normal/main.c:398 -msgid "grub>" -msgstr "груб>" - -#: grub-core/normal/main.c:518 -msgid "Clear the screen." -msgstr "Цлеар тхе Ñцреен." - -#: grub-core/normal/main.c:527 -msgid "Enter normal mode." -msgstr "Ентер нормал моде." - -#: grub-core/normal/main.c:529 -msgid "Exit from normal mode." -msgstr "Еѯит фром нормал моде." - -#: grub-core/normal/menu.c:66 grub-core/normal/menu_entry.c:1449 -msgid "Press any key to continue..." -msgstr "ПреÑÑ Ð°Ð½Ñ ÐºÐµÑ Ñ‚Ð¾ цонтинуе..." - -#: grub-core/normal/menu.c:815 -#, c-format -msgid "Booting `%s'" -msgstr "Боотинг `%s'" - -#: grub-core/normal/menu.c:827 -#, c-format -msgid "Falling back to `%s'" -msgstr "Фаллинг бацк то `%s'" - -#: grub-core/normal/menu.c:843 -msgid "Failed to boot both default and fallback entries.\n" -msgstr "Фаилед то боот ботх дефаулт анд фаллбацк ентриеÑ.\n" - -#: grub-core/normal/menu_entry.c:1171 -msgid "Booting a command list" -msgstr "Боотинг а цомманд лиÑÑ‚" - -#: grub-core/normal/menu_text.c:160 -msgid "" -"Minimum Emacs-like screen editing is supported. TAB lists completions. Press " -"Ctrl-x or F10 to boot, Ctrl-c or F2 for a command-line or ESC to discard " -"edits and return to the GRUB menu." -msgstr "" -"Минимум ЕмацÑ-лике Ñцреен едитинг Ð¸Ñ Ñуппортед. ТÐБ лиÑÑ‚Ñ Ñ†Ð¾Ð¼Ð¿Ð»ÐµÑ‚Ð¸Ð¾Ð½Ñ. ПреÑÑ " -"Цтрл-ѯ ор Ф10 то боот, Цтрл-ц ор Ф2 фор а цомманд-лине ор ЕСЦ то диÑцард " -"ÐµÐ´Ð¸Ñ‚Ñ Ð°Ð½Ð´ ретурн то тхе ГРУБ мену." - -#: grub-core/normal/menu_text.c:170 -#, c-format -msgid "Use the %C and %C keys to select which entry is highlighted." -msgstr "УÑе тхе %C анд %C кеÑÑ Ñ‚Ð¾ Ñелецт ўхицх ÐµÐ½Ñ‚Ñ€Ñ Ð¸Ñ Ñ…Ð¸Ð³Ñ…Ð»Ð¸Ð³Ñ…Ñ‚ÐµÐ´." - -#. TRANSLATORS: that's the list of binary unit prefixes. -#: grub-core/normal/misc.c:38 -msgid "B" -msgstr "Б" - -#: grub-core/normal/misc.c:38 -msgid "KiB" -msgstr "КиБ" - -#: grub-core/normal/misc.c:38 -msgid "MiB" -msgstr "МиБ" - -#: grub-core/normal/misc.c:38 -msgid "GiB" -msgstr "ГиБ" - -#: grub-core/normal/misc.c:38 -msgid "TiB" -msgstr "ТиБ" - -#: grub-core/normal/misc.c:38 -msgid "PiB" -msgstr "ПиБ" - -#. TRANSLATORS: that's the list of binary unit prefixes. -#: grub-core/normal/misc.c:40 -msgid "K" -msgstr "К" - -#: grub-core/normal/misc.c:40 -msgid "M" -msgstr "М" - -#: grub-core/normal/misc.c:40 -msgid "G" -msgstr "Г" - -#: grub-core/normal/misc.c:40 -msgid "T" -msgstr "Т" - -#: grub-core/normal/misc.c:40 -msgid "P" -msgstr "П" - -#. TRANSLATORS: that's the list of binary unit prefixes. -#: grub-core/normal/misc.c:42 -msgid "B/s" -msgstr "Б/Ñ" - -#: grub-core/normal/misc.c:42 -msgid "KiB/s" -msgstr "КиБ/Ñ" - -#: grub-core/normal/misc.c:42 -msgid "MiB/s" -msgstr "МиБ/Ñ" - -#: grub-core/normal/misc.c:42 -msgid "GiB/s" -msgstr "ГиБ/Ñ" - -#: grub-core/normal/misc.c:42 -msgid "TiB/s" -msgstr "ТиБ/Ñ" - -#: grub-core/normal/misc.c:42 -msgid "PiB/s" -msgstr "ПиБ/Ñ" - -#: grub-core/normal/misc.c:96 -#, c-format -msgid "Partition %s:" -msgstr "Партитион %s:" - -#: grub-core/normal/misc.c:101 -#, c-format -msgid "Device %s:" -msgstr "Девице %s:" - -#: grub-core/normal/misc.c:107 -msgid "Filesystem cannot be accessed" -msgstr "ФилеÑÑÑтем цаннот бе аццеÑÑед" - -#: grub-core/normal/misc.c:121 -#, c-format -msgid "Filesystem type %s" -msgstr "ФилеÑÑÑтем Ñ‚Ñпе %s" - -#: grub-core/normal/misc.c:131 -#, c-format -msgid "- Label `%s'" -msgstr "- Лабел `%s'" - -#. TRANSLATORS: Arguments are year, month, day, hour, minute, -#. second, day of the week (translated). -#: grub-core/normal/misc.c:148 -#, c-format -msgid "- Last modification time %d-%02d-%02d %02d:%02d:%02d %s" -msgstr "- ЛаÑÑ‚ модифицатион тиме %d-%02d-%02d %02d:%02d:%02d %s" - -#: grub-core/normal/misc.c:171 -msgid "No known filesystem detected" -msgstr "Ðо кноўн филеÑÑÑтем детецтед" - -#: grub-core/normal/misc.c:174 -#, c-format -msgid " - Partition start at %llu%sKiB" -msgstr " - Партитион Ñтарт ат %llu%sКиБ" - -#: grub-core/normal/misc.c:178 -#, c-format -msgid " - Sector size %uB" -msgstr " - Сецтор Ñизе %uБ" - -#: grub-core/normal/misc.c:180 -msgid " - Total size unknown" -msgstr " - Тотал Ñизе ункноўн" - -#: grub-core/normal/misc.c:182 -#, c-format -msgid " - Total size %llu%sKiB" -msgstr " - Тотал Ñизе %llu%sКиБ" - -#. TRANSLATORS: Replace dot with appropriate decimal separator for -#. your language. -#: grub-core/normal/misc.c:186 -msgid ".5" -msgstr ".5" - -#. TRANSLATORS: This has to fit on one line. It's ok to include few -#. words but don't write poems. -#: grub-core/normal/term.c:82 -msgid "--MORE--" -msgstr "--МОРЕ--" - -#: grub-core/osdep/aros/config.c:92 grub-core/osdep/unix/config.c:137 -#: grub-core/osdep/windows/config.c:55 -#, c-format -msgid "cannot open configuration file `%s': %s" -msgstr "цаннот опен цонфигуратион филе `%s': %s" - -#: grub-core/osdep/basic/compress.c:8 grub-core/osdep/basic/compress.c:14 -#: grub-core/osdep/basic/compress.c:20 -msgid "no compression is available for your platform" -msgstr "но цомпреÑÑион Ð¸Ñ Ð°Ð²Ð°Ð¸Ð»Ð°Ð±Ð»Ðµ фор Ñоур платформ" - -#: grub-core/osdep/basic/no_platform.c:30 -#: grub-core/osdep/windows/platform.c:418 -msgid "no IEEE1275 routines are available for your platform" -msgstr "но ИЕЕЕ1275 Ñ€Ð¾ÑƒÑ‚Ð¸Ð½ÐµÑ Ð°Ñ€Ðµ аваилабле фор Ñоур платформ" - -#: grub-core/osdep/basic/no_platform.c:38 -msgid "no EFI routines are available for your platform" -msgstr "но ЕФИ Ñ€Ð¾ÑƒÑ‚Ð¸Ð½ÐµÑ Ð°Ñ€Ðµ аваилабле фор Ñоур платформ" - -#: grub-core/osdep/basic/no_platform.c:45 -#: grub-core/osdep/windows/platform.c:425 -msgid "no SGI routines are available for your platform" -msgstr "но СГИ Ñ€Ð¾ÑƒÑ‚Ð¸Ð½ÐµÑ Ð°Ñ€Ðµ аваилабле фор Ñоур платформ" - -#. TRANSLATORS: The OS itself may very well have a random -#. number generator but GRUB doesn't know how to access it. -#: grub-core/osdep/basic/random.c:42 -msgid "no random number generator is available for your OS" -msgstr "но рандом нумбер генератор Ð¸Ñ Ð°Ð²Ð°Ð¸Ð»Ð°Ð±Ð»Ðµ фор Ñоур ОС" - -#: grub-core/osdep/devmapper/getroot.c:81 -msgid "Failed to create `device-mapper' tree" -msgstr "Фаилед то цреате `девице-маппер' трее" - -#: grub-core/osdep/devmapper/getroot.c:197 -#: grub-core/osdep/freebsd/getroot.c:202 -#, c-format -msgid "can't mount encrypted volume `%s': %s" -msgstr "цан'Ñ‚ моунт енцрÑптед волуме `%s': %s" - -#. TRANSLATORS: geom is the name of (k)FreeBSD device framework. -#. Usually left untranslated. -#. -#: grub-core/osdep/freebsd/getroot.c:82 grub-core/osdep/freebsd/getroot.c:164 -#: grub-core/osdep/freebsd/getroot.c:258 grub-core/osdep/freebsd/getroot.c:316 -msgid "couldn't open geom" -msgstr "цоулдн'Ñ‚ опен геом" - -#: grub-core/osdep/freebsd/getroot.c:182 grub-core/osdep/freebsd/getroot.c:277 -msgid "couldn't find geli consumer" -msgstr "цоулдн'Ñ‚ финд гели цонÑумер" - -#: grub-core/osdep/freebsd/getroot.c:282 -msgid "couldn't retrieve geli UUID" -msgstr "цоулдн'Ñ‚ ретриеве гели УУИД" - -#. TRANSLATORS: geom is the name of (k)FreeBSD device framework. -#. Usually left untranslated. "part" is the identifier of one of its -#. classes. -#: grub-core/osdep/freebsd/getroot.c:325 -msgid "couldn't find geom `part' class" -msgstr "цоулдн'Ñ‚ финд геом `парт' цлаÑÑ" - -#: grub-core/osdep/freebsd/hostdisk.c:72 grub-core/osdep/linux/hostdisk.c:93 -msgid "unaligned device size" -msgstr "уналигнед девице Ñизе" - -#: grub-core/osdep/generic/blocklist.c:56 -#, c-format -msgid "attempting to read the core image `%s' from GRUB" -msgstr "аттемптинг то реад тхе цоре имаге `%s' фром ГРУБ" - -#: grub-core/osdep/generic/blocklist.c:57 -#, c-format -msgid "attempting to read the core image `%s' from GRUB again" -msgstr "аттемптинг то реад тхе цоре имаге `%s' фром ГРУБ агаин" - -#: grub-core/osdep/generic/blocklist.c:115 -#, c-format -msgid "cannot read `%s' correctly" -msgstr "цаннот реад `%s' цоррецтлÑ" - -#: grub-core/osdep/generic/blocklist.c:126 -msgid "failed to read the sectors of the core image" -msgstr "фаилед то реад тхе ÑÐµÑ†Ñ‚Ð¾Ñ€Ñ Ð¾Ñ„ тхе цоре имаге" - -#. TRANSLATORS: On GNU/Hurd, a "translator" is similar to a filesystem -#. mount, but handled by a userland daemon, whose invocation command line -#. is being fetched here. First %s is the file being looked at (for which -#. we are fetching the "translator" command line), second %s is the error -#. message. -#. -#: grub-core/osdep/hurd/getroot.c:79 -#, c-format -msgid "cannot get translator command line for path `%s': %s" -msgstr "цаннот гет транÑлатор цомманд лине фор патх `%s': %s" - -#: grub-core/osdep/hurd/getroot.c:82 -#, c-format -msgid "translator command line is empty for path `%s'" -msgstr "транÑлатор цомманд лине Ð¸Ñ ÐµÐ¼Ð¿Ñ‚Ñ Ñ„Ð¾Ñ€ патх `%s'" - -#. TRANSLATORS: we expect to get something like -#. /hurd/foobar --option1 --option2=baz /dev/something -#. -#: grub-core/osdep/hurd/getroot.c:98 -#, c-format -msgid "" -"translator `%s' for path `%s' has several non-option words, at least `%s' " -"and `%s'" -msgstr "" -"транÑлатор `%s' фор патх `%s' Ñ…Ð°Ñ Ñеверал нон-оптион ўордÑ, ат леаÑÑ‚ `%s' " -"анд `%s'" - -#. TRANSLATORS: we expect to get something like -#. /hurd/foobar --option1 --option2=baz /dev/something -#. -#: grub-core/osdep/hurd/getroot.c:109 -#, c-format -msgid "" -"translator `%s' for path `%s' is given only options, cannot find device part" -msgstr "" -"транÑлатор `%s' фор патх `%s' Ð¸Ñ Ð³Ð¸Ð²ÐµÐ½ Ð¾Ð½Ð»Ñ Ð¾Ð¿Ñ‚Ð¸Ð¾Ð½Ñ, цаннот финд девице парт" - -#: grub-core/osdep/hurd/hostdisk.c:73 -#, c-format -msgid "Storage information for `%s' does not include type" -msgstr "Стораге информатион фор `%s' Ð´Ð¾ÐµÑ Ð½Ð¾Ñ‚ инцлуде Ñ‚Ñпе" - -#: grub-core/osdep/hurd/hostdisk.c:75 -#, c-format -msgid "`%s' is not a local disk" -msgstr "`%s' Ð¸Ñ Ð½Ð¾Ñ‚ а лоцал диÑк" - -#: grub-core/osdep/hurd/hostdisk.c:78 -#, c-format -msgid "" -"Storage information for `%s' indicates neither a plain partition nor a plain " -"disk" -msgstr "" -"Стораге информатион фор `%s' Ð¸Ð½Ð´Ð¸Ñ†Ð°Ñ‚ÐµÑ Ð½ÐµÐ¸Ñ‚Ñ…ÐµÑ€ а плаин партитион нор а плаин " -"диÑк" - -#: grub-core/osdep/linux/blocklist.c:81 grub-core/osdep/linux/blocklist.c:96 -#: grub-core/osdep/linux/blocklist.c:122 -#, c-format -msgid "can't retrieve blocklists: %s" -msgstr "цан'Ñ‚ ретриеве блоцклиÑÑ‚Ñ: %s" - -#: grub-core/osdep/linux/blocklist.c:84 -msgid "blocksize is not divisible by 512" -msgstr "блоцкÑизе Ð¸Ñ Ð½Ð¾Ñ‚ дивиÑибле Ð±Ñ 512" - -#: grub-core/osdep/linux/blocklist.c:86 -msgid "invalid zero blocksize" -msgstr "инвалид зеро блоцкÑизе" - -#: grub-core/osdep/linux/blocklist.c:90 util/setup.c:744 -msgid "can't retrieve blocklists" -msgstr "цан'Ñ‚ ретриеве блоцклиÑÑ‚Ñ" - -#: grub-core/osdep/linux/getroot.c:154 -#, c-format -msgid "ioctl RAID_VERSION error: %s" -msgstr "иоцтл РÐИД_ВЕРСИОРеррор: %s" - -#: grub-core/osdep/linux/getroot.c:160 grub-core/osdep/linux/getroot.c:164 -#, c-format -msgid "unsupported RAID version: %d.%d" -msgstr "унÑуппортед РÐИД верÑион: %d.%d" - -#: grub-core/osdep/linux/getroot.c:169 -#, c-format -msgid "ioctl GET_ARRAY_INFO error: %s" -msgstr "иоцтл ГЕТ_ÐРРÐÐ_ИÐФО еррор: %s" - -#: grub-core/osdep/linux/getroot.c:178 -#, c-format -msgid "ioctl GET_DISK_INFO error: %s" -msgstr "иоцтл ГЕТ_ДИСК_ИÐФО еррор: %s" - -#: grub-core/osdep/linux/getroot.c:608 grub-core/osdep/linux/getroot.c:678 -#: grub-core/osdep/linux/hostdisk.c:126 grub-core/osdep/unix/getroot.c:253 -#: grub-core/osdep/unix/getroot.c:642 grub-core/osdep/unix/platform.c:92 -#: grub-core/osdep/unix/platform.c:100 -#, c-format -msgid "Unable to open stream from %s: %s" -msgstr "Унабле то опен Ñтреам фром %s: %s" - -#: grub-core/osdep/linux/getroot.c:1033 -#, c-format -msgid "unknown kind of RAID device `%s'" -msgstr "ункноўн кинд оф РÐИД девице `%s'" - -#: grub-core/osdep/linux/ofpath.c:181 -#, c-format -msgid "`obppath' not found in parent dirs of `%s', no IEEE1275 name discovery" -msgstr "`обппатх' нот фоунд ин парент Ð´Ð¸Ñ€Ñ Ð¾Ñ„ `%s', но ИЕЕЕ1275 наме диÑцоверÑ" - -#: grub-core/osdep/linux/ofpath.c:222 grub-core/osdep/unix/getroot.c:505 -#: grub-core/osdep/unix/getroot.c:529 grub-core/osdep/unix/relpath.c:49 -#: util/grub-install.c:984 util/grub-install.c:1331 util/grub-probe.c:323 -#, c-format -msgid "failed to get canonical path of `%s'" -msgstr "фаилед то гет цаноницал патх оф `%s'" - -#: grub-core/osdep/linux/ofpath.c:740 -#, c-format -msgid "unknown device type %s" -msgstr "ункноўн девице Ñ‚Ñпе %s" - -#: grub-core/osdep/linux/ofpath.c:758 util/ieee1275/grub-ofpathname.c:39 -#, c-format -msgid "Usage: %s DEVICE\n" -msgstr "УÑаге: %s ДЕВИЦЕ\n" - -#: grub-core/osdep/unix/exec.c:86 grub-core/osdep/unix/exec.c:172 -#: grub-core/osdep/unix/exec.c:217 -#, c-format -msgid "Unable to fork: %s" -msgstr "Унабле то форк: %s" - -#: grub-core/osdep/unix/exec.c:166 grub-core/osdep/unix/exec.c:211 -#, c-format -msgid "Unable to create pipe: %s" -msgstr "Унабле то цреате пипе: %s" - -#: grub-core/osdep/unix/getroot.c:370 -msgid "cannot save the original directory" -msgstr "цаннот Ñаве тхе оригинал дирецторÑ" - -#: grub-core/osdep/unix/getroot.c:423 grub-core/osdep/unix/getroot.c:480 -#: grub-core/osdep/unix/getroot.c:489 -msgid "cannot restore the original directory" -msgstr "цаннот реÑторе тхе оригинал дирецторÑ" - -#. TRANSLATORS: "stat" comes from the name of POSIX function. -#: grub-core/osdep/unix/getroot.c:551 grub-core/osdep/unix/hostdisk.c:61 -#: grub-core/osdep/unix/relpath.c:73 grub-core/osdep/unix/relpath.c:97 -#: util/getroot.c:160 util/getroot.c:162 util/grub-install.c:774 -#: util/grub-macbless.c:70 -#, c-format -msgid "cannot stat `%s': %s" -msgstr "цаннот Ñтат `%s': %s" - -#: grub-core/osdep/unix/hostdisk.c:293 -#, c-format -msgid "cannot make temporary file: %s" -msgstr "цаннот маке Ñ‚ÐµÐ¼Ð¿Ð¾Ñ€Ð°Ñ€Ñ Ñ„Ð¸Ð»Ðµ: %s" - -#: grub-core/osdep/unix/hostdisk.c:311 -#, c-format -msgid "cannot make temporary directory: %s" -msgstr "цаннот маке Ñ‚ÐµÐ¼Ð¿Ð¾Ñ€Ð°Ñ€Ñ Ð´Ð¸Ñ€ÐµÑ†Ñ‚Ð¾Ñ€Ñ: %s" - -#: grub-core/osdep/unix/platform.c:77 -#, c-format -msgid "" -"couldn't find IEEE1275 device path for %s.\n" -"You will have to set `boot-device' variable manually" -msgstr "" -"цоулдн'Ñ‚ финд ИЕЕЕ1275 девице патх фор %s.\n" -"Ðоу ўилл хаве то Ñет `боот-девице' вариабле мануаллÑ" - -#. TRANSLATORS: This message is shown when required executable `%s' -#. isn't found. -#: grub-core/osdep/unix/platform.c:149 grub-core/osdep/unix/platform.c:189 -#, c-format -msgid "%s: not found" -msgstr "%s: нот фоунд" - -#: grub-core/osdep/unix/platform.c:225 -#, c-format -msgid "" -"`nvsetenv' failed. \n" -"You will have to set `boot-device' variable manually. At the IEEE1275 " -"prompt, type:\n" -" %s\n" -msgstr "" -"`нвÑетенв' фаилед. \n" -"Ðоу ўилл хаве то Ñет `боот-девице' вариабле мануаллÑ. ÐÑ‚ тхе ИЕЕЕ1275 " -"промпт, Ñ‚Ñпе:\n" -" %s\n" - -#: grub-core/osdep/unix/platform.c:240 -msgid "You will have to set `SystemPartition' and `OSLoader' manually." -msgstr "Ðоу ўилл хаве то Ñет `СÑÑтемПартитион' анд `ОСЛоадер' мануаллÑ." - -#. TRANSLATORS: canonical pathname is the -#. complete one e.g. /etc/fstab. It has -#. to contain `/' normally, if it doesn't -#. we're in trouble and throw this error. -#: grub-core/osdep/unix/relpath.c:90 -msgid "no `/' in canonical filename" -msgstr "но `/' ин цаноницал филенаме" - -#: grub-core/osdep/windows/hostdisk.c:151 -msgid "cygwin_conv_path() failed" -msgstr "цÑгўин_цонв_патх() фаилед" - -#: grub-core/osdep/windows/hostdisk.c:501 util/grub-install.c:570 -msgid "couldn't retrieve random data" -msgstr "цоулдн'Ñ‚ ретриеве рандом дата" - -#: grub-core/osdep/windows/platform.c:97 -msgid "Insufficient privileges to access firmware, assuming BIOS" -msgstr "ИнÑуффициент Ð¿Ñ€Ð¸Ð²Ð¸Ð»ÐµÐ³ÐµÑ Ñ‚Ð¾ аццеÑÑ Ñ„Ð¸Ñ€Ð¼ÑžÐ°Ñ€Ðµ, аÑÑуминг БИОС" - -#: grub-core/osdep/windows/platform.c:225 -msgid "no EFI routines are available when running in BIOS mode" -msgstr "но ЕФИ Ñ€Ð¾ÑƒÑ‚Ð¸Ð½ÐµÑ Ð°Ñ€Ðµ аваилабле ўхен руннинг ин БИОС моде" - -#: grub-core/osdep/windows/platform.c:240 -msgid "unexpected EFI error" -msgstr "унеѯпецтед ЕФИ еррор" - -#: grub-core/osdep/windows/platform.c:315 -msgid "Couldn't find a free BootNNNN slot" -msgstr "Цоулдн'Ñ‚ финд а фрее БоотÐÐÐÐ Ñлот" - -#: grub-core/partmap/gpt.c:191 -msgid "" -"this GPT partition label contains no BIOS Boot Partition; embedding won't be " -"possible" -msgstr "" -"Ñ‚Ñ…Ð¸Ñ Ð“ÐŸÐ¢ партитион лабел Ñ†Ð¾Ð½Ñ‚Ð°Ð¸Ð½Ñ Ð½Ð¾ БИОС Боот Партитион; ембеддинг ўон'Ñ‚ бе " -"поÑÑибле" - -#: grub-core/partmap/gpt.c:196 -msgid "your BIOS Boot Partition is too small; embedding won't be possible" -msgstr "Ñоур БИОС Боот Партитион Ð¸Ñ Ñ‚Ð¾Ð¾ Ñмалл; ембеддинг ўон'Ñ‚ бе поÑÑибле" - -#. TRANSLATORS: MBR gap and boot track is the same thing and is the space -#. between MBR and first partitition. If your language translates well only -#. "boot track", you can just use it everywhere. Next two messages are about -#. RAID controllers/software bugs which GRUB has to live with. Please spread -#. the message that these are bugs in other software and not merely -#. suboptimal behaviour. -#: grub-core/partmap/msdos.c:51 -#, c-format -msgid "" -"Sector %llu is already in use by raid controller `%s'; avoiding it. Please " -"ask the manufacturer not to store data in MBR gap" -msgstr "" -"Сецтор %llu Ð¸Ñ Ð°Ð»Ñ€ÐµÐ°Ð´Ñ Ð¸Ð½ уÑе Ð±Ñ Ñ€Ð°Ð¸Ð´ цонтроллер `%s'; авоидинг ит. ПлеаÑе " -"аÑк тхе мануфацтурер нот то Ñторе дата ин МБР гап" - -#: grub-core/partmap/msdos.c:54 -#, c-format -msgid "" -"Sector %llu is already in use by the program `%s'; avoiding it. This " -"software may cause boot or other problems in future. Please ask its authors " -"not to store data in the boot track" -msgstr "" -"Сецтор %llu Ð¸Ñ Ð°Ð»Ñ€ÐµÐ°Ð´Ñ Ð¸Ð½ уÑе Ð±Ñ Ñ‚Ñ…Ðµ програм `%s'; авоидинг ит. Ð¢Ñ…Ð¸Ñ " -"Ñофтўаре Ð¼Ð°Ñ Ñ†Ð°ÑƒÑе боот ор отхер Ð¿Ñ€Ð¾Ð±Ð»ÐµÐ¼Ñ Ð¸Ð½ футуре. ПлеаÑе аÑк Ð¸Ñ‚Ñ Ð°ÑƒÑ‚Ñ…Ð¾Ñ€Ñ " -"нот то Ñторе дата ин тхе боот трацк" - -#: grub-core/partmap/msdos.c:384 -msgid "" -"other software is using the embedding area, and there is not enough room for " -"core.img. Such software is often trying to store data in a way that avoids " -"detection. We recommend you investigate" -msgstr "" -"отхер Ñофтўаре Ð¸Ñ ÑƒÑинг тхе ембеддинг ареа, анд тхере Ð¸Ñ Ð½Ð¾Ñ‚ еноугх роом фор " -"цоре.имг. Суцх Ñофтўаре Ð¸Ñ Ð¾Ñ„Ñ‚ÐµÐ½ трÑинг то Ñторе дата ин а ÑžÐ°Ñ Ñ‚Ñ…Ð°Ñ‚ Ð°Ð²Ð¾Ð¸Ð´Ñ " -"детецтион. Ўе рецомменд Ñоу инвеÑтигате" - -#: grub-core/partmap/msdos.c:395 -msgid "" -"this msdos-style partition label has no post-MBR gap; embedding won't be " -"possible" -msgstr "" -"Ñ‚Ñ…Ð¸Ñ Ð¼ÑдоÑ-ÑÑ‚Ñле партитион лабел Ñ…Ð°Ñ Ð½Ð¾ поÑÑ‚-МБР гап; ембеддинг ўон'Ñ‚ бе " -"поÑÑибле" - -#: grub-core/partmap/msdos.c:404 -msgid "your embedding area is unusually small. core.img won't fit in it." -msgstr "Ñоур ембеддинг ареа Ð¸Ñ ÑƒÐ½ÑƒÑÑƒÐ°Ð»Ð»Ñ Ñмалл. цоре.имг ўон'Ñ‚ фит ин ит." - -#: grub-core/parttool/msdospart.c:39 -msgid "Make partition active" -msgstr "Маке партитион ацтиве" - -#: grub-core/parttool/msdospart.c:51 -msgid "not a primary partition" -msgstr "нот а Ð¿Ñ€Ð¸Ð¼Ð°Ñ€Ñ Ð¿Ð°Ñ€Ñ‚Ð¸Ñ‚Ð¸Ð¾Ð½" - -#: grub-core/parttool/msdospart.c:69 -#, c-format -msgid "Partition %d is active now. \n" -msgstr "Партитион %d Ð¸Ñ Ð°Ñ†Ñ‚Ð¸Ð²Ðµ ноў. \n" - -#: grub-core/parttool/msdospart.c:74 -#, c-format -msgid "Cleared active flag on %d. \n" -msgstr "Цлеаред ацтиве флаг он %d. \n" - -#: grub-core/parttool/msdospart.c:87 -msgid "Change partition type" -msgstr "Цханге партитион Ñ‚Ñпе" - -#: grub-core/parttool/msdospart.c:88 -msgid "Set `hidden' flag in partition type" -msgstr "Сет `хидден' флаг ин партитион Ñ‚Ñпе" - -#: grub-core/parttool/msdospart.c:130 -#, c-format -msgid "the partition type 0x%x isn't valid" -msgstr "тхе партитион Ñ‚Ñпе 0ѯ%x иÑн'Ñ‚ валид" - -#. TRANSLATORS: In this case we're actually writing to the disk and actively -#. modifying partition type rather than just defining it. -#: grub-core/parttool/msdospart.c:137 -#, c-format -msgid "Setting partition type to 0x%x\n" -msgstr "Сеттинг партитион Ñ‚Ñпе то 0ѯ%x\n" - -#. TRANSLATORS: 0 is a quantifier. "break" (similar to bash) -#. can be used e.g. to break 3 loops at once. -#. But asking it to break 0 loops makes no sense. -#: grub-core/script/execute.c:143 -msgid "can't break 0 loops" -msgstr "цан'Ñ‚ бреак 0 лоопÑ" - -#. TRANSLATORS: It's about not being -#. inside a function. "return" can be used only -#. in a function and this error occurs if it's used -#. anywhere else. -#: grub-core/script/execute.c:227 -msgid "not in function body" -msgstr "нот ин фунцтион бодÑ" - -#: grub-core/script/execute.c:371 -#, c-format -msgid "invalid variable name `%s'" -msgstr "инвалид вариабле наме `%s'" - -#: grub-core/script/execute.c:953 -msgid "cannot allocate command buffer" -msgstr "цаннот аллоцате цомманд буффер" - -#: grub-core/script/lexer.c:144 util/grub-fstest.c:330 -msgid "unexpected end of file" -msgstr "унеѯпецтед енд оф филе" - -#: grub-core/script/main.c:55 grub-core/script/main.c:57 -#: grub-core/script/main.c:59 grub-core/script/main.c:67 -msgid "[NUM]" -msgstr "[ÐУМ]" - -#: grub-core/script/main.c:55 -msgid "Exit from loops" -msgstr "Еѯит фром лоопÑ" - -#: grub-core/script/main.c:57 -msgid "Continue loops" -msgstr "Цонтинуе лоопÑ" - -#. TRANSLATORS: Positional arguments are -#. arguments $0, $1, $2, ... -#: grub-core/script/main.c:62 -msgid "Shift positional parameters." -msgstr "Схифт поÑитионал параметерÑ." - -#: grub-core/script/main.c:64 -msgid "[VALUE]..." -msgstr "[Ð’ÐЛУЕ]..." - -#: grub-core/script/main.c:65 -msgid "Set positional parameters." -msgstr "Сет поÑитионал параметерÑ." - -#. TRANSLATORS: It's a command description -#. and "Return" is a verb, not a noun. The -#. command in question is "return" and -#. has exactly the same semanics as bash -#. equivalent. -#: grub-core/script/main.c:73 -msgid "Return from a function." -msgstr "Ретурн фром а фунцтион." - -#: grub-core/term/gfxterm_background.c:176 -msgid "[-m (stretch|normal)] FILE" -msgstr "[-м (Ñтретцх|нормал)] ФИЛЕ" - -#: grub-core/term/gfxterm_background.c:177 -msgid "Load background image for active terminal." -msgstr "Лоад бацкгроунд имаге фор ацтиве терминал." - -#: grub-core/term/gfxterm_background.c:182 util/grub-install.c:302 -#: util/grub-install.c:303 util/grub-mkrescue.c:107 util/grub-mkrescue.c:108 -#: util/grub-render-label.c:61 util/grub-render-label.c:63 -msgid "COLOR" -msgstr "ЦОЛОР" - -#: grub-core/term/gfxterm_background.c:183 -msgid "Set background color for active terminal." -msgstr "Сет бацкгроунд цолор фор ацтиве терминал." - -#: grub-core/term/i386/coreboot/cbmemc.c:139 -msgid "Show CBMEM console content." -msgstr "Схоў ЦБМЕМ цонÑоле цонтент." - -#: grub-core/term/serial.c:57 -msgid "Set the serial unit." -msgstr "Сет тхе Ñериал унит." - -#: grub-core/term/serial.c:58 -msgid "Set the serial port address." -msgstr "Сет тхе Ñериал порт аддреÑÑ." - -#: grub-core/term/serial.c:59 -msgid "Set the serial port speed." -msgstr "Сет тхе Ñериал порт Ñпеед." - -#: grub-core/term/serial.c:60 -msgid "Set the serial port word length." -msgstr "Сет тхе Ñериал порт ўорд ленгтх." - -#: grub-core/term/serial.c:61 -msgid "Set the serial port parity." -msgstr "Сет тхе Ñериал порт паритÑ." - -#: grub-core/term/serial.c:62 -msgid "Set the serial port stop bits." -msgstr "Сет тхе Ñериал порт Ñтоп битÑ." - -#: grub-core/term/serial.c:63 -msgid "Set the base frequency." -msgstr "Сет тхе баÑе фреќуенцÑ." - -#: grub-core/term/serial.c:64 -msgid "Enable/disable RTS/CTS." -msgstr "Енабле/диÑабле РТС/ЦТС." - -#: grub-core/term/serial.c:218 -#, c-format -msgid "serial port `%s' isn't found" -msgstr "Ñериал порт `%s' иÑн'Ñ‚ фоунд" - -#: grub-core/term/serial.c:254 -msgid "unsupported serial port flow control" -msgstr "унÑуппортед Ñериал порт флоў цонтрол" - -#: grub-core/term/serial.c:429 -msgid "[OPTIONS...]" -msgstr "[ОПТИОÐС...]" - -#: grub-core/term/serial.c:430 -msgid "Configure serial port." -msgstr "Цонфигуре Ñериал порт." - -#: grub-core/term/terminfo.c:184 -#, c-format -msgid "unknown terminfo type `%s'" -msgstr "ункноўн терминфо Ñ‚Ñпе `%s'" - -#: grub-core/term/terminfo.c:668 -msgid "ASCII" -msgstr "ÐСЦИИ" - -#: grub-core/term/terminfo.c:671 -msgid "UTF-8" -msgstr "УТФ-8" - -#. TRANSLATORS: visually ordered UTF-8 is a non-compliant encoding -#. based on UTF-8 with right-to-left languages written in reverse. -#. Used on some terminals. Normal UTF-8 is refered as -#. "logically-ordered UTF-8" by opposition. -#: grub-core/term/terminfo.c:677 -msgid "visually-ordered UTF-8" -msgstr "виÑуаллÑ-ордеред УТФ-8" - -#: grub-core/term/terminfo.c:680 -msgid "Unknown encoding" -msgstr "Ункноўн енцодинг" - -#: grub-core/term/terminfo.c:684 -msgid "Current terminfo types:" -msgstr "Цуррент терминфо Ñ‚ÑпеÑ:" - -#: grub-core/term/terminfo.c:699 -msgid "Terminal is ASCII-only [default]." -msgstr "Терминал Ð¸Ñ ÐСЦИИ-Ð¾Ð½Ð»Ñ [дефаулт]." - -#: grub-core/term/terminfo.c:700 -msgid "Terminal is logical-ordered UTF-8." -msgstr "Терминал Ð¸Ñ Ð»Ð¾Ð³Ð¸Ñ†Ð°Ð»-ордеред УТФ-8." - -#: grub-core/term/terminfo.c:701 -msgid "Terminal is visually-ordered UTF-8." -msgstr "Терминал Ð¸Ñ Ð²Ð¸ÑуаллÑ-ордеред УТФ-8." - -#: grub-core/term/terminfo.c:703 -msgid "Terminal has specified geometry." -msgstr "Терминал Ñ…Ð°Ñ Ñпецифиед геометрÑ." - -#. TRANSLATORS: "x" has to be entered in, like an identifier, so please don't -#. use better Unicode codepoints. -#: grub-core/term/terminfo.c:706 -msgid "WIDTHxHEIGHT." -msgstr "ЎИДТХѯХЕИГХТ." - -#: grub-core/term/terminfo.c:746 -msgid "incorrect terminal dimensions specification" -msgstr "инцоррецт терминал дименÑÐ¸Ð¾Ð½Ñ Ñпецифицатион" - -#: grub-core/term/terminfo.c:776 -#, c-format -msgid "terminal %s isn't found or it's not handled by terminfo" -msgstr "терминал %s иÑн'Ñ‚ фоунд ор ит'Ñ Ð½Ð¾Ñ‚ хандлед Ð±Ñ Ñ‚ÐµÑ€Ð¼Ð¸Ð½Ñ„Ð¾" - -#: grub-core/term/terminfo.c:785 -msgid "[[-a|-u|-v] [-g WxH] TERM [TYPE]]" -msgstr "[[-а|-у|-в] [-г ЎѯХ] ТЕРМ [ТÐПЕ]]" - -#: grub-core/term/terminfo.c:786 -msgid "Set terminfo type of TERM to TYPE.\n" -msgstr "Сет терминфо Ñ‚Ñпе оф ТЕРМ то ТÐПЕ.\n" - -#. TRANSLATORS: this is the BLOCK-argument, not -#. environment block. -#: grub-core/tests/test_blockarg.c:49 -msgid "Print and execute block argument." -msgstr "Принт анд еѯецуте блоцк аргумент." - -#. TRANSLATORS: We're speaking about bitmap images like -#. JPEG or PNG. -#: grub-core/video/bitmap.c:209 -#, c-format -msgid "bitmap file `%s' is of unsupported format" -msgstr "битмап филе `%s' Ð¸Ñ Ð¾Ñ„ унÑуппортед формат" - -#: grub-core/video/i386/pc/vbe.c:1191 -#, c-format -msgid " VBE info: version: %d.%d OEM software rev: %d.%d\n" -msgstr " ВБЕ инфо: верÑион: %d.%d ОЕМ Ñофтўаре рев: %d.%d\n" - -#: grub-core/video/i386/pc/vbe.c:1198 -#, c-format -msgid " total memory: %d KiB\n" -msgstr " тотал меморÑ: %d КиБ\n" - -#: grub-core/video/video.c:596 grub-core/video/video.c:762 -msgid "no suitable video mode found" -msgstr "но Ñуитабле видео моде фоунд" - -#: include/grub/crypto.h:403 -msgid "access denied" -msgstr "аццеÑÑ Ð´ÐµÐ½Ð¸ÐµÐ´" - -#: include/grub/util/install.h:30 include/grub/util/install.h:35 -msgid "MODULES" -msgstr "МОДУЛЕС" - -#: include/grub/util/install.h:31 -msgid "pre-load specified modules MODULES" -msgstr "пре-лоад Ñпецифиед Ð¼Ð¾Ð´ÑƒÐ»ÐµÑ ÐœÐžÐ”Ð£Ð›Ð•Ð¡" - -#: include/grub/util/install.h:33 -msgid "embed a specific DTB" -msgstr "ембед а Ñпецифиц ДТБ" - -#: include/grub/util/install.h:36 -msgid "install only MODULES and their dependencies [default=all]" -msgstr "инÑталл Ð¾Ð½Ð»Ñ ÐœÐžÐ”Ð£Ð›Ð•Ð¡ анд тхеир Ð´ÐµÐ¿ÐµÐ½Ð´ÐµÐ½Ñ†Ð¸ÐµÑ [дефаулт=алл]" - -#: include/grub/util/install.h:37 -msgid "THEMES" -msgstr "ТХЕМЕС" - -#: include/grub/util/install.h:38 -#, c-format -msgid "install THEMES [default=%s]" -msgstr "инÑталл ТХЕМЕС [дефаулт=%s]" - -#: include/grub/util/install.h:39 -msgid "FONTS" -msgstr "ФОÐТС" - -#: include/grub/util/install.h:40 -#, c-format -msgid "install FONTS [default=%s]" -msgstr "инÑталл ФОÐТС [дефаулт=%s]" - -#: include/grub/util/install.h:41 -msgid "LOCALES" -msgstr "ЛОЦÐЛЕС" - -#: include/grub/util/install.h:42 -msgid "install only LOCALES [default=all]" -msgstr "инÑталл Ð¾Ð½Ð»Ñ Ð›ÐžÐ¦ÐЛЕС [дефаулт=алл]" - -#: include/grub/util/install.h:45 -msgid "compress GRUB files [optional]" -msgstr "цомпреÑÑ Ð“Ð Ð£Ð‘ Ñ„Ð¸Ð»ÐµÑ [оптионал]" - -#: include/grub/util/install.h:48 util/grub-mkimage.c:83 -msgid "choose the compression to use for core image" -msgstr "цхооÑе тхе цомпреÑÑион то уÑе фор цоре имаге" - -#. TRANSLATORS: platform here isn't identifier. It can be translated. -#: include/grub/util/install.h:51 include/grub/util/install.h:54 -#: util/grub-mkimage.c:66 -#, c-format -msgid "use images and modules under DIR [default=%s/]" -msgstr "уÑе Ð¸Ð¼Ð°Ð³ÐµÑ Ð°Ð½Ð´ Ð¼Ð¾Ð´ÑƒÐ»ÐµÑ ÑƒÐ½Ð´ÐµÑ€ ДИР [дефаулт=%s/<платформ>]" - -#: include/grub/util/install.h:57 -#, c-format -msgid "use translations under DIR [default=%s]" -msgstr "уÑе транÑÐ»Ð°Ñ‚Ð¸Ð¾Ð½Ñ ÑƒÐ½Ð´ÐµÑ€ ДИР [дефаулт=%s]" - -#: include/grub/util/install.h:60 -#, c-format -msgid "use themes under DIR [default=%s]" -msgstr "уÑе Ñ‚Ñ…ÐµÐ¼ÐµÑ ÑƒÐ½Ð´ÐµÑ€ ДИР [дефаулт=%s]" - -#: include/grub/util/install.h:65 util/grub-mkimage.c:78 -msgid "embed FILE as public key for signature checking" -msgstr "ембед ФИЛЕ Ð°Ñ Ð¿ÑƒÐ±Ð»Ð¸Ñ† ÐºÐµÑ Ñ„Ð¾Ñ€ Ñигнатуре цхецкинг" - -#: util/editenv.c:59 util/grub-editenv.c:201 util/grub-install-common.c:535 -#: util/grub-mkimage.c:315 util/setup.c:791 -#, c-format -msgid "cannot sync `%s': %s" -msgstr "цаннот ÑÑнц `%s': %s" - -#: util/editenv.c:64 -#, c-format -msgid "cannot rename the file %s to %s" -msgstr "цаннот ренаме тхе филе %s то %s" - -#: util/getroot.c:402 -#, c-format -msgid "disk does not exist, so falling back to partition device %s" -msgstr "диÑк Ð´Ð¾ÐµÑ Ð½Ð¾Ñ‚ еѯиÑÑ‚, Ñо фаллинг бацк то партитион девице %s" - -#: util/grub-editenv.c:45 util/grub-fstest.c:506 -msgid "Commands:" -msgstr "ЦоммандÑ:" - -#: util/grub-editenv.c:47 -msgid "Create a blank environment block file." -msgstr "Цреате а бланк енвиронмент блоцк филе." - -#: util/grub-editenv.c:49 -msgid "List the current variables." -msgstr "ЛиÑÑ‚ тхе цуррент вариаблеÑ." - -#. TRANSLATORS: "set" is a keyword. It's a summary of "set" subcommand. -#: util/grub-editenv.c:51 -msgid "set [NAME=VALUE ...]" -msgstr "Ñет [ÐÐМЕ=Ð’ÐЛУЕ ...]" - -#: util/grub-editenv.c:52 -msgid "Set variables." -msgstr "Сет вариаблеÑ." - -#. TRANSLATORS: "unset" is a keyword. It's a summary of "unset" subcommand. -#: util/grub-editenv.c:54 -msgid "unset [NAME ...]" -msgstr "унÑет [ÐÐМЕ ...]" - -#: util/grub-editenv.c:55 -msgid "Delete variables." -msgstr "Делете вариаблеÑ." - -#: util/grub-editenv.c:57 -msgid "Options:" -msgstr "ОптионÑ:" - -#: util/grub-editenv.c:84 -msgid "You need to specify at least one command.\n" -msgstr "Ðоу неед то ÑÐ¿ÐµÑ†Ð¸Ñ„Ñ Ð°Ñ‚ леаÑÑ‚ оне цомманд.\n" - -#: util/grub-editenv.c:113 -msgid "FILENAME COMMAND" -msgstr "ФИЛЕÐÐМЕ ЦОММÐÐД" - -#: util/grub-editenv.c:114 -msgid "Tool to edit environment block." -msgstr "Тоол то едит енвиронмент блоцк." - -#: util/grub-editenv.c:116 -#, c-format -msgid "" -"If FILENAME is `-', the default value %s is used.\n" -"\n" -"There is no `delete' command; if you want to delete the whole environment\n" -"block, use `rm %s'." -msgstr "" -"Иф ФИЛЕÐÐМЕ Ð¸Ñ `-', тхе дефаулт валуе %s Ð¸Ñ ÑƒÑед.\n" -"\n" -"Тхере Ð¸Ñ Ð½Ð¾ `делете' цомманд; иф Ñоу ўант то делете тхе ўхоле енвиронмент\n" -"блоцк, уÑе `рм %s'." - -#: util/grub-editenv.c:162 -msgid "invalid environment block" -msgstr "инвалид енвиронмент блоцк" - -#: util/grub-editenv.c:217 -#, c-format -msgid "invalid parameter %s" -msgstr "инвалид параметер %s" - -#: util/grub-editenv.c:222 -msgid "environment block too small" -msgstr "енвиронмент блоцк тоо Ñмалл" - -#: util/grub-fstest.c:107 -#, c-format -msgid "disk read fails at offset %lld, length %lld" -msgstr "диÑк реад Ñ„Ð°Ð¸Ð»Ñ Ð°Ñ‚ оффÑет %lld, ленгтх %lld" - -#: util/grub-fstest.c:138 -#, c-format -msgid "invalid skip value %lld" -msgstr "инвалид Ñкип валуе %lld" - -#: util/grub-fstest.c:160 util/grub-fstest.c:246 -#, c-format -msgid "read error at offset %llu: %s" -msgstr "реад еррор ат оффÑет %llu: %s" - -#: util/grub-fstest.c:210 -#, c-format -msgid "cannot open OS file `%s': %s" -msgstr "цаннот опен ОС филе `%s': %s" - -#: util/grub-fstest.c:225 util/misc.c:126 -#, c-format -msgid "cannot write to the stdout: %s" -msgstr "цаннот ўрите то тхе Ñтдоут: %s" - -#: util/grub-fstest.c:259 -#, c-format -msgid "compare fail at offset %llu" -msgstr "цомпаре фаил ат оффÑет %llu" - -#: util/grub-fstest.c:280 util/grub-fstest.c:314 -#, c-format -msgid "OS file %s open error: %s" -msgstr "ОС филе %s опен еррор: %s" - -#: util/grub-fstest.c:402 util/grub-mount.c:392 -#, c-format -msgid "`loopback' command fails: %s" -msgstr "`лоопбацк' цомманд фаилÑ: %s" - -#: util/grub-fstest.c:413 util/grub-mount.c:402 -#, c-format -msgid "`cryptomount' command fails: %s" -msgstr "`црÑптомоунт' цомманд фаилÑ: %s" - -#: util/grub-fstest.c:474 util/grub-fstest.c:478 -msgid "couldn't retrieve UUID" -msgstr "цоулдн'Ñ‚ ретриеве УУИД" - -#: util/grub-fstest.c:507 -msgid "ls PATH" -msgstr "Ð»Ñ ÐŸÐТХ" - -#: util/grub-fstest.c:507 -msgid "List files in PATH." -msgstr "ЛиÑÑ‚ Ñ„Ð¸Ð»ÐµÑ Ð¸Ð½ ПÐТХ." - -#: util/grub-fstest.c:508 -msgid "cp FILE LOCAL" -msgstr "цп ФИЛЕ ЛОЦÐЛ" - -#: util/grub-fstest.c:508 -msgid "Copy FILE to local file LOCAL." -msgstr "Ð¦Ð¾Ð¿Ñ Ð¤Ð˜Ð›Ð• то лоцал филе ЛОЦÐЛ." - -#: util/grub-fstest.c:509 -msgid "cat FILE" -msgstr "цат ФИЛЕ" - -#: util/grub-fstest.c:509 -msgid "Copy FILE to standard output." -msgstr "Ð¦Ð¾Ð¿Ñ Ð¤Ð˜Ð›Ð• то Ñтандард оутпут." - -#: util/grub-fstest.c:510 -msgid "cmp FILE LOCAL" -msgstr "цмп ФИЛЕ ЛОЦÐЛ" - -#: util/grub-fstest.c:510 -msgid "Compare FILE with local file LOCAL." -msgstr "Цомпаре ФИЛЕ ўитх лоцал филе ЛОЦÐЛ." - -#: util/grub-fstest.c:511 -msgid "hex FILE" -msgstr "хеѯ ФИЛЕ" - -#: util/grub-fstest.c:511 -msgid "Show contents of FILE in hex." -msgstr "Схоў Ñ†Ð¾Ð½Ñ‚ÐµÐ½Ñ‚Ñ Ð¾Ñ„ ФИЛЕ ин хеѯ." - -#: util/grub-fstest.c:512 -msgid "crc FILE" -msgstr "црц ФИЛЕ" - -#: util/grub-fstest.c:512 -msgid "Get crc32 checksum of FILE." -msgstr "Гет црц32 цхецкÑум оф ФИЛЕ." - -#: util/grub-fstest.c:513 -msgid "blocklist FILE" -msgstr "блоцклиÑÑ‚ ФИЛЕ" - -#: util/grub-fstest.c:513 -msgid "Display blocklist of FILE." -msgstr "ДиÑÐ¿Ð»Ð°Ñ Ð±Ð»Ð¾Ñ†ÐºÐ»Ð¸ÑÑ‚ оф ФИЛЕ." - -#: util/grub-fstest.c:514 -msgid "xnu_uuid DEVICE" -msgstr "ѯну_ууид ДЕВИЦЕ" - -#: util/grub-fstest.c:514 -msgid "Compute XNU UUID of the device." -msgstr "Цомпуте Ñ®ÐУ УУИД оф тхе девице." - -#. TRANSLATORS: bitmaps are images like e.g. in JPEG. -#: util/grub-fstest.c:517 util/grub-fstest.c:518 util/grub-fstest.c:519 -#: util/grub-mkfont.c:938 util/grub-mkfont.c:951 util/grub-mkfont.c:952 -#: util/grub-mkpasswd-pbkdf2.c:46 util/grub-mkpasswd-pbkdf2.c:47 -#: util/grub-mkpasswd-pbkdf2.c:48 -msgid "NUM" -msgstr "ÐУМ" - -#: util/grub-fstest.c:517 -msgid "Skip N bytes from output file." -msgstr "Скип РбÑÑ‚ÐµÑ Ñ„Ñ€Ð¾Ð¼ оутпут филе." - -#: util/grub-fstest.c:518 -msgid "Handle N bytes in output file." -msgstr "Хандле РбÑÑ‚ÐµÑ Ð¸Ð½ оутпут филе." - -#: util/grub-fstest.c:519 -msgid "Specify the number of input files." -msgstr "Ð¡Ð¿ÐµÑ†Ð¸Ñ„Ñ Ñ‚Ñ…Ðµ нумбер оф инпут филеÑ." - -#: util/grub-fstest.c:520 util/grub-mount.c:453 -msgid "Set debug environment variable." -msgstr "Сет дебуг енвиронмент вариабле." - -#: util/grub-fstest.c:521 util/grub-mount.c:454 -msgid "Mount crypto devices." -msgstr "Моунт црÑпто девицеÑ." - -#. TRANSLATORS: "prompt" is a keyword. -#: util/grub-fstest.c:524 util/grub-mount.c:457 -msgid "FILE|prompt" -msgstr "ФИЛЕ|промпт" - -#: util/grub-fstest.c:524 util/grub-mount.c:457 -msgid "Load zfs crypto key." -msgstr "Лоад Ð·Ñ„Ñ Ñ†Ñ€Ñпто кеÑ." - -#: util/grub-fstest.c:526 -msgid "Uncompress data." -msgstr "УнцомпреÑÑ Ð´Ð°Ñ‚Ð°." - -#: util/grub-fstest.c:605 -msgid "Invalid disk count.\n" -msgstr "Инвалид диÑк цоунт.\n" - -#. TRANSLATORS: disk count is optional but if it's there it must -#. be before disk list. So please don't imply disk count as mandatory. -#. -#: util/grub-fstest.c:613 -msgid "Disk count must precede disks list.\n" -msgstr "ДиÑк цоунт муÑÑ‚ прецеде диÑÐºÑ Ð»Ð¸ÑÑ‚.\n" - -#: util/grub-fstest.c:633 -msgid "No command is specified.\n" -msgstr "Ðо цомманд Ð¸Ñ Ñпецифиед.\n" - -#: util/grub-fstest.c:638 -msgid "Not enough parameters to command.\n" -msgstr "Ðот еноугх Ð¿Ð°Ñ€Ð°Ð¼ÐµÑ‚ÐµÑ€Ñ Ñ‚Ð¾ цомманд.\n" - -#: util/grub-fstest.c:711 -#, c-format -msgid "Invalid command %s.\n" -msgstr "Инвалид цомманд %s.\n" - -#: util/grub-fstest.c:724 -msgid "IMAGE_PATH COMMANDS" -msgstr "ИМÐГЕ_ПÐТХ ЦОММÐÐДС" - -#: util/grub-fstest.c:725 util/grub-mount.c:553 -msgid "Debug tool for filesystem driver." -msgstr "Дебуг тоол фор филеÑÑÑтем дривер." - -#: util/grub-glue-efi.c:53 -msgid "set input filename for 32-bit part." -msgstr "Ñет инпут филенаме фор 32-бит парт." - -#: util/grub-glue-efi.c:55 -msgid "set input filename for 64-bit part." -msgstr "Ñет инпут филенаме фор 64-бит парт." - -#: util/grub-glue-efi.c:57 util/grub-mklayout.c:55 util/grub-render-label.c:71 -msgid "set output filename. Default is STDOUT" -msgstr "Ñет оутпут филенаме. Дефаулт Ð¸Ñ Ð¡Ð¢Ð”ÐžÐ£Ð¢" - -#: util/grub-glue-efi.c:94 util/grub-mklayout.c:476 -#: util/grub-mkpasswd-pbkdf2.c:86 util/grub-render-label.c:131 -msgid "[OPTIONS]" -msgstr "[ОПТИОÐС]" - -#: util/grub-glue-efi.c:95 -msgid "Glue 32-bit and 64-bit binary into Apple universal one." -msgstr "Глуе 32-бит анд 64-бит Ð±Ð¸Ð½Ð°Ñ€Ñ Ð¸Ð½Ñ‚Ð¾ Ðппле универÑал оне." - -#: util/grub-glue-efi.c:116 -msgid "Missing input file\n" -msgstr "МиÑÑинг инпут филе\n" - -#: util/grub-install-common.c:127 util/grub-install-common.c:151 -#, c-format -msgid "cannot copy `%s' to `%s': %s" -msgstr "цаннот Ñ†Ð¾Ð¿Ñ `%s' то `%s': %s" - -#: util/grub-install-common.c:147 -#, c-format -msgid "can't compress `%s' to `%s'" -msgstr "цан'Ñ‚ цомпреÑÑ `%s' то `%s'" - -#: util/grub-install-common.c:196 util/grub-install-common.c:552 -#: util/grub-install-common.c:579 util/grub-install-common.c:621 -#, c-format -msgid "cannot open directory `%s': %s" -msgstr "цаннот опен Ð´Ð¸Ñ€ÐµÑ†Ñ‚Ð¾Ñ€Ñ `%s': %s" - -#: util/grub-install-common.c:212 -#, c-format -msgid "cannot delete `%s': %s" -msgstr "цаннот делете `%s': %s" - -#: util/grub-install-common.c:324 util/grub-mkimage.c:209 -msgid "grub-mkimage is compiled without XZ support" -msgstr "груб-мкимаге Ð¸Ñ Ñ†Ð¾Ð¼Ð¿Ð¸Ð»ÐµÐ´ ўитхоут ѮЗ Ñуппорт" - -#: util/grub-install-common.c:332 util/grub-mkimage.c:217 -#, c-format -msgid "Unknown compression format %s" -msgstr "Ункноўн цомпреÑÑион формат %s" - -#: util/grub-install-common.c:400 -#, c-format -msgid "Unrecognized compression `%s'" -msgstr "Унрецогнизед цомпреÑÑион `%s'" - -#: util/grub-install-common.c:509 -#, c-format -msgid "unknown target format %s" -msgstr "ункноўн таргет формат %s" - -#: util/grub-install-common.c:700 -#, c-format -msgid "cannot find locale `%s'" -msgstr "цаннот финд лоцале `%s'" - -#: util/grub-install-common.c:939 -#, c-format -msgid "%s doesn't exist. Please specify --target or --directory" -msgstr "%s доеÑн'Ñ‚ еѯиÑÑ‚. ПлеаÑе ÑÐ¿ÐµÑ†Ð¸Ñ„Ñ --таргет ор --дирецторÑ" - -#: util/grub-install-common.c:948 util/grub-install-common.c:951 -#, c-format -msgid "invalid modinfo file `%s'" -msgstr "инвалид модинфо филе `%s'" - -#: util/grub-install-common.c:966 -#, c-format -msgid "Unknown platform `%s-%s'" -msgstr "Ункноўн платформ `%s-%s'" - -#: util/grub-install.c:238 -msgid "More than one install device?" -msgstr "Море тхан оне инÑталл девице?" - -#: util/grub-install.c:251 -#, c-format -msgid "" -"install GRUB images under the directory DIR/%s instead of the %s directory" -msgstr "" -"инÑталл ГРУБ Ð¸Ð¼Ð°Ð³ÐµÑ ÑƒÐ½Ð´ÐµÑ€ тхе Ð´Ð¸Ñ€ÐµÑ†Ñ‚Ð¾Ñ€Ñ Ð”Ð˜Ð /%s инÑтеад оф тхе %s дирецторÑ" - -#: util/grub-install.c:256 util/grub-probe.c:734 -msgid "TARGET" -msgstr "ТÐРГЕТ" - -#. TRANSLATORS: "TARGET" as in "target platform". -#: util/grub-install.c:258 -#, c-format -msgid "install GRUB for TARGET platform [default=%s]; available targets: %s" -msgstr "инÑталл ГРУБ фор ТÐРГЕТ платформ [дефаулт=%s]; аваилабле таргетÑ: %s" - -#. TRANSLATORS: "may break" doesn't just mean that option wouldn't have any -#. effect but that it will make the resulting install unbootable from HDD. -#. TRANSLATORS: The potential breakage isn't limited to floppies but it's -#. likely to make the install unbootable from HDD. -#: util/grub-install.c:267 util/grub-setup.c:94 -msgid "" -"make the drive also bootable as floppy (default for fdX devices). May break " -"on some BIOSes." -msgstr "" -"маке тхе дриве алÑо боотабле Ð°Ñ Ñ„Ð»Ð¾Ð¿Ð¿Ñ (дефаулт фор фдѮ девицеÑ). ÐœÐ°Ñ Ð±Ñ€ÐµÐ°Ðº " -"он Ñоме БИОСеÑ." - -#: util/grub-install.c:270 -msgid "delete device map if it already exists" -msgstr "делете девице мап иф ит Ð°Ð»Ñ€ÐµÐ°Ð´Ñ ÐµÑ¯Ð¸ÑÑ‚Ñ" - -#: util/grub-install.c:272 util/grub-setup.c:87 -msgid "install even if problems are detected" -msgstr "инÑталл евен иф Ð¿Ñ€Ð¾Ð±Ð»ÐµÐ¼Ñ Ð°Ñ€Ðµ детецтед" - -#: util/grub-install.c:274 -msgid "use identifier file even if UUID is available" -msgstr "уÑе идентифиер филе евен иф УУИД Ð¸Ñ Ð°Ð²Ð°Ð¸Ð»Ð°Ð±Ð»Ðµ" - -#: util/grub-install.c:276 -msgid "" -"disk module to use (biosdisk or native). This option is only available on " -"BIOS target." -msgstr "" -"диÑк модуле то уÑе (биоÑдиÑк ор нативе). Ð¢Ñ…Ð¸Ñ Ð¾Ð¿Ñ‚Ð¸Ð¾Ð½ Ð¸Ñ Ð¾Ð½Ð»Ñ Ð°Ð²Ð°Ð¸Ð»Ð°Ð±Ð»Ðµ он " -"БИОС таргет." - -#: util/grub-install.c:279 -msgid "" -"don't update the `boot-device'/`Boot*' NVRAM variables. This option is only " -"available on EFI and IEEE1275 targets." -msgstr "" -"дон'Ñ‚ упдате тхе `боот-девице'/`Боот*' ÐВРÐМ вариаблеÑ. Ð¢Ñ…Ð¸Ñ Ð¾Ð¿Ñ‚Ð¸Ð¾Ð½ Ð¸Ñ Ð¾Ð½Ð»Ñ " -"аваилабле он ЕФИ анд ИЕЕЕ1275 таргетÑ." - -#: util/grub-install.c:282 util/grub-setup.c:89 -msgid "do not probe for filesystems in DEVICE" -msgstr "до нот пробе фор филеÑÑÑÑ‚ÐµÐ¼Ñ Ð¸Ð½ ДЕВИЦЕ" - -#: util/grub-install.c:284 -msgid "do not install bootsector" -msgstr "до нот инÑталл боотÑецтор" - -#: util/grub-install.c:286 util/grub-setup.c:96 -msgid "" -"Do not apply any reed-solomon codes when embedding core.img. This option is " -"only available on x86 BIOS targets." -msgstr "" -"До нот Ð°Ð¿Ð¿Ð»Ñ Ð°Ð½Ñ Ñ€ÐµÐµÐ´-Ñоломон Ñ†Ð¾Ð´ÐµÑ ÑžÑ…ÐµÐ½ ембеддинг цоре.имг. Ð¢Ñ…Ð¸Ñ Ð¾Ð¿Ñ‚Ð¸Ð¾Ð½ Ð¸Ñ " -"Ð¾Ð½Ð»Ñ Ð°Ð²Ð°Ð¸Ð»Ð°Ð±Ð»Ðµ он ѯ86 БИОС таргетÑ." - -#: util/grub-install.c:293 -msgid "" -"the installation device is removable. This option is only available on EFI." -msgstr "" -"тхе инÑталлатион девице Ð¸Ñ Ñ€ÐµÐ¼Ð¾Ð²Ð°Ð±Ð»Ðµ. Ð¢Ñ…Ð¸Ñ Ð¾Ð¿Ñ‚Ð¸Ð¾Ð½ Ð¸Ñ Ð¾Ð½Ð»Ñ Ð°Ð²Ð°Ð¸Ð»Ð°Ð±Ð»Ðµ он ЕФИ." - -#: util/grub-install.c:295 -msgid "ID" -msgstr "ИД" - -#: util/grub-install.c:296 -msgid "the ID of bootloader. This option is only available on EFI and Macs." -msgstr "тхе ИД оф боотлоадер. Ð¢Ñ…Ð¸Ñ Ð¾Ð¿Ñ‚Ð¸Ð¾Ð½ Ð¸Ñ Ð¾Ð½Ð»Ñ Ð°Ð²Ð°Ð¸Ð»Ð°Ð±Ð»Ðµ он ЕФИ анд МацÑ." - -#: util/grub-install.c:298 -msgid "use DIR as the EFI System Partition root." -msgstr "уÑе ДИР Ð°Ñ Ñ‚Ñ…Ðµ ЕФИ СÑÑтем Партитион роот." - -#: util/grub-install.c:300 -msgid "use DIR for PPC MAC install." -msgstr "уÑе ДИР фор ППЦ МÐЦ инÑталл." - -#: util/grub-install.c:301 util/grub-mkrescue.c:106 -msgid "use FILE as font for label" -msgstr "уÑе ФИЛЕ Ð°Ñ Ñ„Ð¾Ð½Ñ‚ фор лабел" - -#: util/grub-install.c:302 util/grub-mkrescue.c:107 -msgid "use COLOR for label" -msgstr "уÑе ЦОЛОР фор лабел" - -#: util/grub-install.c:303 util/grub-mkrescue.c:108 -msgid "use COLOR for label background" -msgstr "уÑе ЦОЛОР фор лабел бацкгроунд" - -#: util/grub-install.c:304 util/grub-mkrescue.c:110 -msgid "use STRING as product version" -msgstr "уÑе СТРИÐГ Ð°Ñ Ð¿Ñ€Ð¾Ð´ÑƒÑ†Ñ‚ верÑион" - -#: util/grub-install.c:361 -msgid "[OPTION] [INSTALL_DEVICE]" -msgstr "[ОПТИОÐ] [ИÐСТÐЛЛ_ДЕВИЦЕ]" - -#: util/grub-install.c:362 -msgid "Install GRUB on your drive." -msgstr "ИнÑталл ГРУБ он Ñоур дриве." - -#: util/grub-install.c:363 -#, c-format -msgid "" -"INSTALL_DEVICE must be system device filename.\n" -"%s copies GRUB images into %s. On some platforms, it may also install GRUB " -"into the boot sector." -msgstr "" -"ИÐСТÐЛЛ_ДЕВИЦЕ муÑÑ‚ бе ÑÑÑтем девице филенаме.\n" -"%s Ñ†Ð¾Ð¿Ð¸ÐµÑ Ð“Ð Ð£Ð‘ Ð¸Ð¼Ð°Ð³ÐµÑ Ð¸Ð½Ñ‚Ð¾ %s. Он Ñоме платформÑ, ит Ð¼Ð°Ñ Ð°Ð»Ñо инÑталл ГРУБ " -"инто тхе боот Ñецтор." - -#: util/grub-install.c:672 -#, c-format -msgid "the drive %s is defined multiple times in the device map %s" -msgstr "тхе дриве %s Ð¸Ñ Ð´ÐµÑ„Ð¸Ð½ÐµÐ´ мултипле Ñ‚Ð¸Ð¼ÐµÑ Ð¸Ð½ тхе девице мап %s" - -#: util/grub-install.c:878 -msgid "Unable to determine your platform. Use --target." -msgstr "Унабле то детермине Ñоур платформ. УÑе --таргет." - -#: util/grub-install.c:891 -#, c-format -msgid "Installing for %s platform.\n" -msgstr "ИнÑталлинг фор %s платформ.\n" - -#: util/grub-install.c:939 -msgid "install device isn't specified" -msgstr "инÑталл девице иÑн'Ñ‚ Ñпецифиед" - -#: util/grub-install.c:1057 -msgid "cannot find EFI directory" -msgstr "цаннот финд ЕФИ дирецторÑ" - -#: util/grub-install.c:1060 util/grub-install.c:1209 util/grub-install.c:1254 -#: util/grub-macbless.c:76 util/grub-probe.c:329 util/setup.c:316 -#, c-format -msgid "cannot find a device for %s (is /dev mounted?)" -msgstr "цаннот финд а девице фор %s (Ð¸Ñ /дев моунтед?)" - -#: util/grub-install.c:1069 util/grub-install.c:1217 util/grub-install.c:1270 -#: util/grub-install.c:1365 util/grub-macbless.c:80 util/grub-probe.c:372 -#, c-format -msgid "cannot find a GRUB drive for %s. Check your device.map" -msgstr "цаннот финд а ГРУБ дриве фор %s. Цхецк Ñоур девице.мап" - -#: util/grub-install.c:1087 -#, c-format -msgid "%s doesn't look like an EFI partition" -msgstr "%s доеÑн'Ñ‚ лоок лике ан ЕФИ партитион" - -#: util/grub-install.c:1129 util/grub-install.c:1614 -msgid "You've found a bug" -msgstr "Ðоу'ве фоунд а буг" - -#: util/grub-install.c:1231 -#, c-format -msgid "filesystem on %s is neither HFS nor HFS+" -msgstr "филеÑÑÑтем он %s Ð¸Ñ Ð½ÐµÐ¸Ñ‚Ñ…ÐµÑ€ ХФС нор ХФС+" - -#: util/grub-install.c:1299 -#, c-format -msgid "" -"attempt to install to encrypted disk without cryptodisk enabled. Set `%s' in " -"file `%s'" -msgstr "" -"аттемпт то инÑталл то енцрÑптед диÑк ўитхоут црÑптодиÑк енаблед. Сет `%s' ин " -"филе `%s'" - -#: util/grub-install.c:1410 util/grub-install.c:1772 util/grub-install.c:1872 -#, c-format -msgid "Can't create file: %s" -msgstr "Цан'Ñ‚ цреате филе: %s" - -#: util/grub-install.c:1491 -msgid "no hints available for your platform. Expect reduced performance" -msgstr "но Ñ…Ð¸Ð½Ñ‚Ñ Ð°Ð²Ð°Ð¸Ð»Ð°Ð±Ð»Ðµ фор Ñоур платформ. Еѯпецт редуцед перформанце" - -#. TRANSLATORS: This is a prefix in the log to indicate that usually -#. a command would be executed but due to an option was skipped. -#: util/grub-install.c:1702 -msgid "NOT RUNNING: " -msgstr "ÐОТ РУÐÐИÐГ: " - -#: util/grub-install.c:1806 -msgid "the chosen partition is not a PReP partition" -msgstr "тхе цхоÑен партитион Ð¸Ñ Ð½Ð¾Ñ‚ а ПРеП партитион" - -#: util/grub-install.c:1811 -msgid "failed to copy Grub to the PReP partition" -msgstr "фаилед то Ñ†Ð¾Ð¿Ñ Ð“Ñ€ÑƒÐ± то тхе ПРеП партитион" - -#: util/grub-install.c:1816 -#, c-format -msgid "" -"the PReP partition is not empty. If you are sure you want to use it, run dd " -"to clear it: `%s'" -msgstr "" -"тхе ПРеП партитион Ð¸Ñ Ð½Ð¾Ñ‚ емптÑ. Иф Ñоу аре Ñуре Ñоу ўант то уÑе ит, рун дд " -"то цлеар ит: `%s'" - -#: util/grub-install.c:1888 util/grub-install.c:1932 -#, c-format -msgid "efibootmgr failed to register the boot entry: %s" -msgstr "ефибоотмгр фаилед то региÑтер тхе боот ентрÑ: %s" - -#: util/grub-install.c:1916 -msgid "EFI bootloader id isn't specified." -msgstr "ЕФИ боотлоадер ид иÑн'Ñ‚ Ñпецифиед." - -#: util/grub-install.c:1950 -msgid "WARNING: no platform-specific install was performed" -msgstr "ÐŽÐРÐИÐГ: но платформ-Ñпецифиц инÑталл ÑžÐ°Ñ Ð¿ÐµÑ€Ñ„Ð¾Ñ€Ð¼ÐµÐ´" - -#: util/grub-install.c:1957 -msgid "Installation finished. No error reported." -msgstr "ИнÑталлатион финиÑхед. Ðо еррор репортед." - -#: util/grub-macbless.c:101 -msgid "bless for x86-based macs" -msgstr "блеÑÑ Ñ„Ð¾Ñ€ ѯ86-баÑед мацÑ" - -#: util/grub-macbless.c:103 -msgid "bless for ppc-based macs" -msgstr "блеÑÑ Ñ„Ð¾Ñ€ ппц-баÑед мацÑ" - -#: util/grub-macbless.c:136 util/grub-probe.c:823 -msgid "No path or device is specified.\n" -msgstr "Ðо патх ор девице Ð¸Ñ Ñпецифиед.\n" - -#: util/grub-macbless.c:157 -msgid "--ppc PATH|--x86 FILE" -msgstr "--ппц ПÐТХ|--ѯ86 ФИЛЕ" - -#: util/grub-macbless.c:158 -msgid "Mac-style bless on HFS or HFS+" -msgstr "Мац-ÑÑ‚Ñле блеÑÑ Ð¾Ð½ ХФС ор ХФС+" - -#: util/grub-menulst2cfg.c:44 -#, c-format -msgid "Usage: %s [INFILE [OUTFILE]]\n" -msgstr "УÑаге: %s [ИÐФИЛЕ [ОУТФИЛЕ]]\n" - -#: util/grub-mkfont.c:157 -#, c-format -msgid "Freetype Error %d loading glyph 0x%x for U+0x%x%s" -msgstr "ФреетÑпе Еррор %d лоадинг глÑпх 0ѯ%x фор У+0ѯ%x%s" - -#. TRANSLATORS: These qualifiers are used for cursive typography, -#. mainly Arabic. Note that the terms refer to the visual position -#. and not logical order and if used in left-to-right script then -#. leftmost is initial but with right-to-left script like Arabic -#. rightmost is the initial. -#: util/grub-mkfont.c:165 -msgid " (medial)" -msgstr " (медиал)" - -#: util/grub-mkfont.c:166 -msgid " (leftmost)" -msgstr " (лефтмоÑÑ‚)" - -#: util/grub-mkfont.c:167 -msgid " (rightmost)" -msgstr " (ригхтмоÑÑ‚)" - -#: util/grub-mkfont.c:481 -#, c-format -msgid "Out of range substitution (%d, %d)\n" -msgstr "Оут оф ранге ÑубÑтитутион (%d, %d)\n" - -#. TRANSLATORS: "lookup" is taken directly from font specifications -#. which are formulated as "Under condition X replace LOOKUP with -#. SUBSTITUITION". " -#: util/grub-mkfont.c:506 -#, c-format -msgid "Out of range lookup: %d\n" -msgstr "Оут оф ранге лоокуп: %d\n" - -#: util/grub-mkfont.c:514 -#, c-format -msgid "Unsupported substitution type: %d\n" -msgstr "УнÑуппортед ÑубÑтитутион Ñ‚Ñпе: %d\n" - -#: util/grub-mkfont.c:550 -#, c-format -msgid "Unsupported substitution specification: %d\n" -msgstr "УнÑуппортед ÑубÑтитутион Ñпецифицатион: %d\n" - -#: util/grub-mkfont.c:582 -#, c-format -msgid "Unsupported coverage specification: %d\n" -msgstr "УнÑуппортед цовераге Ñпецифицатион: %d\n" - -#: util/grub-mkfont.c:622 -#, c-format -msgid "WARNING: unsupported font feature parameters: %x\n" -msgstr "ÐŽÐРÐИÐГ: унÑуппортед фонт феатуре параметерÑ: %x\n" - -#: util/grub-mkfont.c:936 util/grub-mkrescue.c:98 util/grub-mkstandalone.c:48 -msgid "save output in FILE [required]" -msgstr "Ñаве оутпут ин ФИЛЕ [реќуиред]" - -#. TRANSLATORS: some font files may have multiple faces (fonts). -#. This option is used to chose among them, the first face being '0'. -#. Rarely used. -#: util/grub-mkfont.c:942 -msgid "select face index" -msgstr "Ñелецт фаце индеѯ" - -#: util/grub-mkfont.c:943 -msgid "FROM-TO[,FROM-TO]" -msgstr "ФРОМ-ТО[,ФРОМ-ТО]" - -#. TRANSLATORS: It refers to the range of characters in font. -#: util/grub-mkfont.c:945 -msgid "set font range" -msgstr "Ñет фонт ранге" - -#. TRANSLATORS: "family name" for font is just a generic name without suffix -#. like "Bold". -#: util/grub-mkfont.c:949 -msgid "set font family name" -msgstr "Ñет фонт Ñ„Ð°Ð¼Ð¸Ð»Ñ Ð½Ð°Ð¼Ðµ" - -#: util/grub-mkfont.c:950 -msgid "SIZE" -msgstr "СИЗЕ" - -#: util/grub-mkfont.c:950 -msgid "set font size" -msgstr "Ñет фонт Ñизе" - -#: util/grub-mkfont.c:951 -msgid "set font descent" -msgstr "Ñет фонт деÑцент" - -#: util/grub-mkfont.c:952 -msgid "set font ascent" -msgstr "Ñет фонт аÑцент" - -#: util/grub-mkfont.c:953 -msgid "convert to bold font" -msgstr "цонверт то болд фонт" - -#: util/grub-mkfont.c:954 -msgid "force autohint" -msgstr "форце аутохинт" - -#: util/grub-mkfont.c:955 -msgid "disable hinting" -msgstr "диÑабле хинтинг" - -#. TRANSLATORS: some fonts contain bitmap rendering for -#. some sizes. This option forces rerendering even if -#. pre-rendered bitmap is available. -#. -#: util/grub-mkfont.c:961 -msgid "ignore bitmap strikes when loading" -msgstr "игноре битмап ÑÑ‚Ñ€Ð¸ÐºÐµÑ ÑžÑ…ÐµÐ½ лоадинг" - -#. TRANSLATORS: It refers to the range of characters in font. -#: util/grub-mkfont.c:1059 util/grub-mkfont.c:1075 -msgid "invalid font range" -msgstr "инвалид фонт ранге" - -#: util/grub-mkfont.c:1151 -msgid "[OPTIONS] FONT_FILES" -msgstr "[ОПТИОÐС] ФОÐТ_ФИЛЕС" - -#: util/grub-mkfont.c:1152 -msgid "Convert common font file formats into PF2" -msgstr "Цонверт цоммон фонт филе Ñ„Ð¾Ñ€Ð¼Ð°Ñ‚Ñ Ð¸Ð½Ñ‚Ð¾ ПФ2" - -#: util/grub-mkfont.c:1182 util/grub-mkrescue.c:483 -#: util/grub-mkstandalone.c:306 -msgid "output file must be specified" -msgstr "оутпут филе муÑÑ‚ бе Ñпецифиед" - -#: util/grub-mkfont.c:1185 -msgid "FT_Init_FreeType fails" -msgstr "ФТ_Инит_ФрееТÑпе фаилÑ" - -#: util/grub-mkfont.c:1199 -#, c-format -msgid "can't open file %s, index %d: error %d" -msgstr "цан'Ñ‚ опен филе %s, индеѯ %d: еррор %d" - -#: util/grub-mkfont.c:1229 -#, c-format -msgid "can't set %dx%d font size: Freetype error %d: %s" -msgstr "цан'Ñ‚ Ñет %dѯ%d фонт Ñизе: ФреетÑпе еррор %d: %s" - -#: util/grub-mkimage.c:67 -msgid "set prefix directory" -msgstr "Ñет префиѯ дирецторÑ" - -#. TRANSLATORS: "memdisk" here isn't an identifier, it can be translated. -#. "embed" is a verb (command description). " -#: util/grub-mkimage.c:71 -msgid "" -"embed FILE as a memdisk image\n" -"Implies `-p (memdisk)/boot/grub' and overrides any prefix supplied " -"previously, but the prefix itself can be overridden by later options" -msgstr "" -"ембед ФИЛЕ Ð°Ñ Ð° мемдиÑк имаге\n" -"Ð˜Ð¼Ð¿Ð»Ð¸ÐµÑ `-п (мемдиÑк)/боот/груб' анд Ð¾Ð²ÐµÑ€Ñ€Ð¸Ð´ÐµÑ Ð°Ð½Ñ Ð¿Ñ€ÐµÑ„Ð¸Ñ¯ Ñупплиед " -"превиоуÑлÑ, бут тхе префиѯ итÑелф цан бе оверридден Ð±Ñ Ð»Ð°Ñ‚ÐµÑ€ оптионÑ" - -#: util/grub-mkimage.c:74 -msgid "embed FILE as a device tree (DTB)\n" -msgstr "ембед ФИЛЕ Ð°Ñ Ð° девице трее (ДТБ)\n" - -#: util/grub-mkimage.c:76 -msgid "embed FILE as an early config" -msgstr "ембед ФИЛЕ Ð°Ñ Ð°Ð½ ÐµÐ°Ñ€Ð»Ñ Ñ†Ð¾Ð½Ñ„Ð¸Ð³" - -#. TRANSLATORS: NOTE is a name of segment. -#: util/grub-mkimage.c:80 -msgid "add NOTE segment for CHRP IEEE1275" -msgstr "адд ÐОТЕ Ñегмент фор ЦХРП ИЕЕЕ1275" - -#: util/grub-mkimage.c:81 -msgid "output a generated image to FILE [default=stdout]" -msgstr "оутпут а генератед имаге то ФИЛЕ [дефаулт=Ñтдоут]" - -#: util/grub-mkimage.c:82 -msgid "FORMAT" -msgstr "ФОРМÐТ" - -#: util/grub-mkimage.c:100 util/grub-mkstandalone.c:62 -msgid "generate an image in FORMAT" -msgstr "генерате ан имаге ин ФОРМÐТ" - -#: util/grub-mkimage.c:101 util/grub-mkstandalone.c:63 -msgid "available formats:" -msgstr "аваилабле форматÑ:" - -#: util/grub-mkimage.c:152 util/grub-mkstandalone.c:96 -#, c-format -msgid "unknown target format %s\n" -msgstr "ункноўн таргет формат %s\n" - -#: util/grub-mkimage.c:242 -msgid "[OPTION]... [MODULES]" -msgstr "[ОПТИОÐ]... [МОДУЛЕС]" - -#: util/grub-mkimage.c:243 -msgid "Make a bootable image of GRUB." -msgstr "Маке а боотабле имаге оф ГРУБ." - -#: util/grub-mkimage.c:273 util/grub-mkstandalone.c:309 -msgid "Target format not specified (use the -O option)." -msgstr "Таргет формат нот Ñпецифиед (уÑе тхе -О оптион)." - -#: util/grub-mkimage.c:282 -msgid "Prefix not specified (use the -p option)." -msgstr "Префиѯ нот Ñпецифиед (уÑе тхе -п оптион)." - -#: util/grub-mkimage.c:318 util/setup.c:793 -#, c-format -msgid "cannot close `%s': %s" -msgstr "цаннот цлоÑе `%s': %s" - -#: util/grub-mkimagexx.c:2191 -#, c-format -msgid "" -"`%s' is miscompiled: its start address is 0x%llx instead of 0x%llx: ld.gold " -"bug?" -msgstr "" -"`%s' Ð¸Ñ Ð¼Ð¸Ñцомпилед: Ð¸Ñ‚Ñ Ñтарт аддреÑÑ Ð¸Ñ 0ѯ%llx инÑтеад оф 0ѯ%llx: лд.голд " -"буг?" - -#: util/grub-mklayout.c:53 -msgid "set input filename. Default is STDIN" -msgstr "Ñет инпут филенаме. Дефаулт Ð¸Ñ Ð¡Ð¢Ð”Ð˜Ð" - -#. TRANSLATORS: scan identifier is keyboard key symbolic name. -#: util/grub-mklayout.c:307 -#, c-format -msgid "Unknown keyboard scan identifier %s\n" -msgstr "Ункноўн кеÑбоард Ñцан идентифиер %s\n" - -#. TRANSLATORS: scan code is keyboard key numeric identifier. -#: util/grub-mklayout.c:390 util/grub-mklayout.c:418 -#, c-format -msgid "Unknown keyboard scan code 0x%02x\n" -msgstr "Ункноўн кеÑбоард Ñцан цоде 0ѯ%02x\n" - -#. TRANSLATORS: this error is triggered when input doesn't contain any -#. key descriptions. -#: util/grub-mklayout.c:438 -msgid "ERROR: no valid keyboard layout found. Check the input.\n" -msgstr "ЕРРОР: но валид кеÑбоард лаÑоут фоунд. Цхецк тхе инпут.\n" - -#. TRANSLATORS: "one" is a shortcut for "keyboard layout". -#: util/grub-mklayout.c:478 -msgid "Generate GRUB keyboard layout from Linux console one." -msgstr "Генерате ГРУБ кеÑбоард лаÑоут фром Линуѯ цонÑоле оне." - -#: util/grub-mknetdir.c:47 -msgid "root directory of TFTP server" -msgstr "роот Ð´Ð¸Ñ€ÐµÑ†Ñ‚Ð¾Ñ€Ñ Ð¾Ñ„ ТФТП Ñервер" - -#: util/grub-mknetdir.c:49 -msgid "relative subdirectory on network server" -msgstr "релативе ÑÑƒÐ±Ð´Ð¸Ñ€ÐµÑ†Ñ‚Ð¾Ñ€Ñ Ð¾Ð½ нетўорк Ñервер" - -#: util/grub-mknetdir.c:88 -msgid "" -"Prepares GRUB network boot images at net_directory/subdir assuming " -"net_directory being TFTP root." -msgstr "" -"ÐŸÑ€ÐµÐ¿Ð°Ñ€ÐµÑ Ð“Ð Ð£Ð‘ нетўорк боот Ð¸Ð¼Ð°Ð³ÐµÑ Ð°Ñ‚ нет_дирецторÑ/Ñубдир аÑÑуминг " -"нет_Ð´Ð¸Ñ€ÐµÑ†Ñ‚Ð¾Ñ€Ñ Ð±ÐµÐ¸Ð½Ð³ ТФТП роот." - -#: util/grub-mknetdir.c:146 -#, c-format -msgid "unsupported platform %s" -msgstr "унÑуппортед платформ %s" - -#. TRANSLATORS: First %s is replaced by platform name. Second one by filename. -#: util/grub-mknetdir.c:165 -#, c-format -msgid "" -"Netboot directory for %s created. Configure your DHCP server to point to %s\n" -msgstr "" -"Ðетбоот Ð´Ð¸Ñ€ÐµÑ†Ñ‚Ð¾Ñ€Ñ Ñ„Ð¾Ñ€ %s цреатед. Цонфигуре Ñоур ДХЦП Ñервер то поинт то %s\n" - -#: util/grub-mkpasswd-pbkdf2.c:46 -msgid "Number of PBKDF2 iterations" -msgstr "Ðумбер оф ПБКДФ2 итератионÑ" - -#: util/grub-mkpasswd-pbkdf2.c:47 -msgid "Length of generated hash" -msgstr "Ленгтх оф генератед хаÑÑ…" - -#: util/grub-mkpasswd-pbkdf2.c:48 -msgid "Length of salt" -msgstr "Ленгтх оф Ñалт" - -#: util/grub-mkpasswd-pbkdf2.c:87 -msgid "Generate PBKDF2 password hash." -msgstr "Генерате ПБКДФ2 паÑÑўорд хаÑÑ…." - -#: util/grub-mkpasswd-pbkdf2.c:144 util/grub-mkpasswd-pbkdf2.c:151 -msgid "failure to read password" -msgstr "фаилуре то реад паÑÑўорд" - -#: util/grub-mkpasswd-pbkdf2.c:146 -msgid "Reenter password: " -msgstr "Реентер паÑÑўорд: " - -#: util/grub-mkpasswd-pbkdf2.c:160 -msgid "passwords don't match" -msgstr "паÑÑÑžÐ¾Ñ€Ð´Ñ Ð´Ð¾Ð½'Ñ‚ матцх" - -#: util/grub-mkpasswd-pbkdf2.c:169 -msgid "couldn't retrieve random data for salt" -msgstr "цоулдн'Ñ‚ ретриеве рандом дата фор Ñалт" - -#: util/grub-mkpasswd-pbkdf2.c:184 -#, c-format -msgid "cryptographic error number %d" -msgstr "црÑптограпхиц еррор нумбер %d" - -#: util/grub-mkpasswd-pbkdf2.c:203 -#, c-format -msgid "PBKDF2 hash of your password is %s\n" -msgstr "ПБКДФ2 хаÑÑ… оф Ñоур паÑÑўорд Ð¸Ñ %s\n" - -#: util/grub-mkrelpath.c:67 -msgid "No path is specified.\n" -msgstr "Ðо патх Ð¸Ñ Ñпецифиед.\n" - -#: util/grub-mkrelpath.c:78 -msgid "PATH" -msgstr "ПÐТХ" - -#: util/grub-mkrelpath.c:79 -msgid "Transform a system filename into GRUB one." -msgstr "ТранÑформ а ÑÑÑтем филенаме инто ГРУБ оне." - -#: util/grub-mkrescue.c:100 -msgid "save ROM images in DIR [optional]" -msgstr "Ñаве РОМ Ð¸Ð¼Ð°Ð³ÐµÑ Ð¸Ð½ ДИР [оптионал]" - -#. TRANSLATORS: xorriso is a program for creating ISOs and burning CDs. -#: util/grub-mkrescue.c:103 -msgid "use FILE as xorriso [optional]" -msgstr "уÑе ФИЛЕ Ð°Ñ Ñ¯Ð¾Ñ€Ñ€Ð¸Ñо [оптионал]" - -#: util/grub-mkrescue.c:109 -msgid "use STRING as product name" -msgstr "уÑе СТРИÐГ Ð°Ñ Ð¿Ñ€Ð¾Ð´ÑƒÑ†Ñ‚ наме" - -#: util/grub-mkrescue.c:111 -msgid "" -"enable sparc boot. Disables HFS+, APM, ARCS and boot as disk image for i386-" -"pc" -msgstr "" -"енабле Ñпарц боот. ДиÑÐ°Ð±Ð»ÐµÑ Ð¥Ð¤Ð¡+, ÐПМ, ÐРЦС анд боот Ð°Ñ Ð´Ð¸Ñк имаге фор и386-" -"пц" - -#: util/grub-mkrescue.c:112 -msgid "" -"enable ARCS (big-endian mips machines, mostly SGI) boot. Disables HFS+, APM, " -"sparc64 and boot as disk image for i386-pc" -msgstr "" -"енабле ÐРЦС (биг-ендиан Ð¼Ð¸Ð¿Ñ Ð¼Ð°Ñ†Ñ…Ð¸Ð½ÐµÑ, моÑÑ‚Ð»Ñ Ð¡Ð“Ð˜) боот. ДиÑÐ°Ð±Ð»ÐµÑ Ð¥Ð¤Ð¡+, ÐПМ, " -"Ñпарц64 анд боот Ð°Ñ Ð´Ð¸Ñк имаге фор и386-пц" - -#. TRANSLATORS: it generates one single image which is bootable through any method. -#: util/grub-mkrescue.c:125 -msgid "Make GRUB CD-ROM, disk, pendrive and floppy bootable image." -msgstr "Маке ГРУБ ЦД-РОМ, диÑк, пендриве анд Ñ„Ð»Ð¾Ð¿Ð¿Ñ Ð±Ð¾Ð¾Ñ‚Ð°Ð±Ð»Ðµ имаге." - -#: util/grub-mkrescue.c:130 -#, c-format -msgid "" -"Generates a bootable CD/USB/floppy image. Arguments other than options to " -"this program are passed to xorriso, and indicate source files, source " -"directories, or any of the mkisofs options listed by the output of `%s'." -msgstr "" -"Ð“ÐµÐ½ÐµÑ€Ð°Ñ‚ÐµÑ Ð° боотабле ЦД/УСБ/Ñ„Ð»Ð¾Ð¿Ð¿Ñ Ð¸Ð¼Ð°Ð³Ðµ. ÐÑ€Ð³ÑƒÐ¼ÐµÐ½Ñ‚Ñ Ð¾Ñ‚Ñ…ÐµÑ€ тхан Ð¾Ð¿Ñ‚Ð¸Ð¾Ð½Ñ Ñ‚Ð¾ " -"Ñ‚Ñ…Ð¸Ñ Ð¿Ñ€Ð¾Ð³Ñ€Ð°Ð¼ аре паÑÑед то ѯорриÑо, анд индицате Ñоурце филеÑ, Ñоурце " -"дирецториеÑ, ор Ð°Ð½Ñ Ð¾Ñ„ тхе мкиÑÐ¾Ñ„Ñ Ð¾Ð¿Ñ‚Ð¸Ð¾Ð½Ñ Ð»Ð¸Ñтед Ð±Ñ Ñ‚Ñ…Ðµ оутпут оф `%s'." - -#: util/grub-mkrescue.c:134 -msgid "Option -- switches to native xorriso command mode." -msgstr "Оптион -- ÑÑžÐ¸Ñ‚Ñ†Ñ…ÐµÑ Ñ‚Ð¾ нативе ѯорриÑо цомманд моде." - -#: util/grub-mkrescue.c:135 -msgid "Mail xorriso support requests to ." -msgstr "Маил ѯорриÑо Ñуппорт реќуеÑÑ‚Ñ Ñ‚Ð¾ <буг-ѯорриÑо@гну.орг>." - -#: util/grub-mkrescue.c:221 util/grub-mkstandalone.c:114 -msgid "[OPTION] SOURCE..." -msgstr "[ОПТИОÐ] СОУРЦЕ..." - -#: util/grub-mkrescue.c:257 util/grub-mkrescue.c:300 util/grub-mkrescue.c:588 -#, c-format -msgid "enabling %s support ..." -msgstr "енаблинг %s Ñуппорт ..." - -#: util/grub-mkrescue.c:486 -msgid "xorriso not found" -msgstr "ѯорриÑо нот фоунд" - -#: util/grub-mkrescue.c:623 -msgid "" -"Your xorriso doesn't support `--grub2-boot-info'. Some features are " -"disabled. Please use xorriso 1.2.9 or later." -msgstr "" -"Ðоур ѯорриÑо доеÑн'Ñ‚ Ñуппорт `--груб2-боот-инфо'. Соме Ñ„ÐµÐ°Ñ‚ÑƒÑ€ÐµÑ Ð°Ñ€Ðµ " -"диÑаблед. ПлеаÑе уÑе ѯорриÑо 1.2.9 ор латер." - -#: util/grub-mkrescue.c:650 -msgid "" -"Your xorriso doesn't support `--grub2-boot-info'. Your core image is too " -"big. Boot as disk is disabled. Please use xorriso 1.2.9 or later." -msgstr "" -"Ðоур ѯорриÑо доеÑн'Ñ‚ Ñуппорт `--груб2-боот-инфо'. Ðоур цоре имаге Ð¸Ñ Ñ‚Ð¾Ð¾ " -"биг. Боот Ð°Ñ Ð´Ð¸Ñк Ð¸Ñ Ð´Ð¸Ñаблед. ПлеаÑе уÑе ѯорриÑо 1.2.9 ор латер." - -#: util/grub-mkstandalone.c:115 -msgid "" -"Generate a standalone image (containing all modules) in the selected format" -msgstr "" -"Генерате а Ñтандалоне имаге (цонтаининг алл модулеÑ) ин тхе Ñелецтед формат" - -#: util/grub-mkstandalone.c:115 -msgid "Graft point syntax (E.g. /boot/grub/grub.cfg=./grub.cfg) is accepted" -msgstr "Графт поинт ÑÑнтаѯ (Е.г. /боот/груб/груб.цфг=./груб.цфг) Ð¸Ñ Ð°Ñ†Ñ†ÐµÐ¿Ñ‚ÐµÐ´" - -#: util/grub-mount.c:552 -msgid "IMAGE1 [IMAGE2 ...] MOUNTPOINT" -msgstr "ИМÐГЕ1 [ИМÐГЕ2 ...] МОУÐТПОИÐТ" - -#: util/grub-mount.c:575 -msgid "need an image and mountpoint" -msgstr "неед ан имаге анд моунтпоинт" - -#: util/grub-probe.c:731 -msgid "given argument is a system device, not a path" -msgstr "гивен аргумент Ð¸Ñ Ð° ÑÑÑтем девице, нот а патх" - -#: util/grub-probe.c:736 -msgid "separate items in output using ASCII NUL characters" -msgstr "Ñепарате Ð¸Ñ‚ÐµÐ¼Ñ Ð¸Ð½ оутпут уÑинг ÐСЦИИ ÐУЛ цхарацтерÑ" - -#: util/grub-probe.c:754 -#, c-format -msgid "[default=%s]" -msgstr "[дефаулт=%s]" - -#: util/grub-probe.c:756 -msgid "print TARGET" -msgstr "принт ТÐРГЕТ" - -#: util/grub-probe.c:757 -msgid "available targets:" -msgstr "аваилабле таргетÑ:" - -#: util/grub-probe.c:839 -msgid "[OPTION]... [PATH|DEVICE]" -msgstr "[ОПТИОÐ]... [ПÐТХ|ДЕВИЦЕ]" - -#: util/grub-probe.c:840 -msgid "" -"Probe device information for a given path (or device, if the -d option is " -"given)." -msgstr "" -"Пробе девице информатион фор а гивен патх (ор девице, иф тхе -д оптион Ð¸Ñ " -"гивен)." - -#: util/grub-render-label.c:60 -msgid "read text from FILE." -msgstr "реад теѯт фром ФИЛЕ." - -#: util/grub-render-label.c:62 -msgid "use COLOR for text" -msgstr "уÑе ЦОЛОР фор теѯт" - -#: util/grub-render-label.c:64 -msgid "use COLOR for background" -msgstr "уÑе ЦОЛОР фор бацкгроунд" - -#. TRANSLATORS: The result is always stored to file and -#. never shown directly, so don't use "show" as synonym for render. Use "create" if -#. "render" doesn't translate directly. -#: util/grub-render-label.c:69 -msgid "set the label to render" -msgstr "Ñет тхе лабел то рендер" - -#: util/grub-render-label.c:73 -msgid "use FILE as font (PF2)." -msgstr "уÑе ФИЛЕ Ð°Ñ Ñ„Ð¾Ð½Ñ‚ (ПФ2)." - -#. TRANSLATORS: This file takes a text and creates a graphical representation of it, -#. putting the result into .disk_label file. The result is always stored to file and -#. never shown directly, so don't use "show" as synonym for render. Use "create" if -#. "render" doesn't translate directly. -#: util/grub-render-label.c:136 -msgid "Render Apple .disk_label." -msgstr "Рендер Ðппле .диÑк_лабел." - -#: util/grub-render-label.c:158 util/grub-syslinux2cfg.c:169 -msgid "Missing arguments\n" -msgstr "МиÑÑинг аргументÑ\n" - -#: util/grub-script-check.c:87 -msgid "[PATH]" -msgstr "[ПÐТХ]" - -#: util/grub-script-check.c:88 -msgid "Checks GRUB script configuration file for syntax errors." -msgstr "Ð¦Ñ…ÐµÑ†ÐºÑ Ð“Ð Ð£Ð‘ Ñцрипт цонфигуратион филе фор ÑÑнтаѯ еррорÑ." - -#: util/grub-script-check.c:207 -#, c-format -msgid "Syntax error at line %u\n" -msgstr "СÑнтаѯ еррор ат лине %u\n" - -#: util/grub-script-check.c:212 -#, c-format -msgid "Script `%s' contains no commands and will do nothing\n" -msgstr "Сцрипт `%s' Ñ†Ð¾Ð½Ñ‚Ð°Ð¸Ð½Ñ Ð½Ð¾ Ñ†Ð¾Ð¼Ð¼Ð°Ð½Ð´Ñ Ð°Ð½Ð´ ўилл до нотхинг\n" - -#: util/grub-setup.c:79 -#, c-format -msgid "use FILE as the boot image [default=%s]" -msgstr "уÑе ФИЛЕ Ð°Ñ Ñ‚Ñ…Ðµ боот имаге [дефаулт=%s]" - -#: util/grub-setup.c:81 -#, c-format -msgid "use FILE as the core image [default=%s]" -msgstr "уÑе ФИЛЕ Ð°Ñ Ñ‚Ñ…Ðµ цоре имаге [дефаулт=%s]" - -#: util/grub-setup.c:210 -msgid "No device is specified.\n" -msgstr "Ðо девице Ð¸Ñ Ñпецифиед.\n" - -#: util/grub-setup.c:224 -msgid "" -"Set up images to boot from DEVICE.\n" -"\n" -"You should not normally run this program directly. Use grub-install instead." -msgstr "" -"Сет уп Ð¸Ð¼Ð°Ð³ÐµÑ Ñ‚Ð¾ боот фром ДЕВИЦЕ.\n" -"\n" -"Ðоу Ñхоулд нот Ð½Ð¾Ñ€Ð¼Ð°Ð»Ð»Ñ Ñ€ÑƒÐ½ Ñ‚Ñ…Ð¸Ñ Ð¿Ñ€Ð¾Ð³Ñ€Ð°Ð¼ дирецтлÑ. УÑе груб-инÑталл инÑтеад." - -#: util/grub-setup.c:228 -msgid "DEVICE must be an OS device (e.g. /dev/sda)." -msgstr "ДЕВИЦЕ муÑÑ‚ бе ан ОС девице (е.г. /дев/Ñда)." - -#: util/grub-setup.c:297 -#, c-format -msgid "Invalid device `%s'.\n" -msgstr "Инвалид девице `%s'.\n" - -#: util/grub-syslinux2cfg.c:64 -msgid "root directory as it will be seen on runtime [default=/]." -msgstr "роот Ð´Ð¸Ñ€ÐµÑ†Ñ‚Ð¾Ñ€Ñ Ð°Ñ Ð¸Ñ‚ ўилл бе Ñеен он рунтиме [дефаулт=/]." - -#: util/grub-syslinux2cfg.c:69 -msgid "" -"current directory of syslinux as it will be seen on runtime [default is " -"parent directory of input file]." -msgstr "" -"цуррент Ð´Ð¸Ñ€ÐµÑ†Ñ‚Ð¾Ñ€Ñ Ð¾Ñ„ ÑÑÑлинуѯ Ð°Ñ Ð¸Ñ‚ ўилл бе Ñеен он рунтиме [дефаулт Ð¸Ñ " -"парент Ð´Ð¸Ñ€ÐµÑ†Ñ‚Ð¾Ñ€Ñ Ð¾Ñ„ инпут филе]." - -#: util/grub-syslinux2cfg.c:74 -msgid "write output to FILE [default=stdout]." -msgstr "ўрите оутпут то ФИЛЕ [дефаулт=Ñтдоут]." - -#: util/grub-syslinux2cfg.c:148 -msgid "Transform syslinux config into GRUB one." -msgstr "ТранÑформ ÑÑÑлинуѯ цонфиг инто ГРУБ оне." - -#: util/mkimage.c:688 util/mkimage.c:717 util/mkimage.c:734 -msgid "cannot compress the kernel image" -msgstr "цаннот цомпреÑÑ Ñ‚Ñ…Ðµ кернел имаге" - -#: util/mkimage.c:766 util/mkimage.c:1077 -#, c-format -msgid "unknown compression %d" -msgstr "ункноўн цомпреÑÑион %d" - -#: util/mkimage.c:1088 -msgid "Decompressor is too big" -msgstr "ДецомпреÑÑор Ð¸Ñ Ñ‚Ð¾Ð¾ биг" - -#: util/mkimage.c:1133 -#, c-format -msgid "core image is too big (0x%x > 0x%x)" -msgstr "цоре имаге Ð¸Ñ Ñ‚Ð¾Ð¾ биг (0ѯ%x > 0ѯ%x)" - -#: util/mkimage.c:1140 -#, c-format -msgid "kernel image is too big (0x%x > 0x%x)" -msgstr "кернел имаге Ð¸Ñ Ñ‚Ð¾Ð¾ биг (0ѯ%x > 0ѯ%x)" - -#: util/mkimage.c:1220 util/mkimage.c:1501 -#, c-format -msgid "diskboot.img size must be %u bytes" -msgstr "диÑкбоот.имг Ñизе муÑÑ‚ бе %u бÑтеÑ" - -#: util/mkimage.c:1571 -msgid "" -"fwstart.img doesn't match the known good version. proceed at your own risk" -msgstr "" -"фўÑтарт.имг доеÑн'Ñ‚ матцх тхе кноўн гоод верÑион. процеед ат Ñоур оўн риÑк" - -#: util/mkimage.c:1575 util/mkimage.c:1601 -msgid "firmware image is too big" -msgstr "фирмўаре имаге Ð¸Ñ Ñ‚Ð¾Ð¾ биг" - -#: util/resolve.c:93 -#, c-format -msgid "invalid line format: %s" -msgstr "инвалид лине формат: %s" - -#: util/setup.c:167 -msgid "the first sector of the core file is not sector-aligned" -msgstr "тхе фирÑÑ‚ Ñецтор оф тхе цоре филе Ð¸Ñ Ð½Ð¾Ñ‚ Ñецтор-алигнед" - -#: util/setup.c:177 -msgid "non-sector-aligned data is found in the core file" -msgstr "нон-Ñецтор-алигнед дата Ð¸Ñ Ñ„Ð¾ÑƒÐ½Ð´ ин тхе цоре филе" - -#: util/setup.c:199 -msgid "the sectors of the core file are too fragmented" -msgstr "тхе ÑÐµÑ†Ñ‚Ð¾Ñ€Ñ Ð¾Ñ„ тхе цоре филе аре тоо фрагментед" - -#: util/setup.c:280 -#, c-format -msgid "the size of `%s' is not %u" -msgstr "тхе Ñизе оф `%s' Ð¸Ñ Ð½Ð¾Ñ‚ %u" - -#: util/setup.c:290 -#, c-format -msgid "the size of `%s' is too small" -msgstr "тхе Ñизе оф `%s' Ð¸Ñ Ñ‚Ð¾Ð¾ Ñмалл" - -#: util/setup.c:428 -msgid "" -"Attempting to install GRUB to a disk with multiple partition labels or both " -"partition label and filesystem. This is not supported yet." -msgstr "" -"Ðттемптинг то инÑталл ГРУБ то а диÑк ўитх мултипле партитион Ð»Ð°Ð±ÐµÐ»Ñ Ð¾Ñ€ ботх " -"партитион лабел анд филеÑÑÑтем. Ð¢Ñ…Ð¸Ñ Ð¸Ñ Ð½Ð¾Ñ‚ Ñуппортед Ñет." - -#: util/setup.c:441 -#, c-format -msgid "unable to identify a filesystem in %s; safety check can't be performed" -msgstr "унабле то Ð¸Ð´ÐµÐ½Ñ‚Ð¸Ñ„Ñ Ð° филеÑÑÑтем ин %s; ÑÐ°Ñ„ÐµÑ‚Ñ Ñ†Ñ…ÐµÑ†Ðº цан'Ñ‚ бе перформед" - -#. TRANSLATORS: Filesystem may reserve the space just GRUB isn't sure about it. -#: util/setup.c:445 -#, c-format -msgid "" -"%s appears to contain a %s filesystem which isn't known to reserve space for " -"DOS-style boot. Installing GRUB there could result in FILESYSTEM " -"DESTRUCTION if valuable data is overwritten by grub-setup (--skip-fs-probe " -"disables this check, use at your own risk)" -msgstr "" -"%s Ð°Ð¿Ð¿ÐµÐ°Ñ€Ñ Ñ‚Ð¾ цонтаин а %s филеÑÑÑтем ўхицх иÑн'Ñ‚ кноўн то реÑерве Ñпаце фор " -"ДОС-ÑÑ‚Ñле боот. ИнÑталлинг ГРУБ тхере цоулд реÑулт ин ФИЛЕСÐСТЕМ " -"ДЕСТРУЦТИОРиф валуабле дата Ð¸Ñ Ð¾Ð²ÐµÑ€ÑžÑ€Ð¸Ñ‚Ñ‚ÐµÐ½ Ð±Ñ Ð³Ñ€ÑƒÐ±-Ñетуп (--Ñкип-Ñ„Ñ-пробе " -"диÑÐ°Ð±Ð»ÐµÑ Ñ‚Ñ…Ð¸Ñ Ñ†Ñ…ÐµÑ†Ðº, уÑе ат Ñоур оўн риÑк)" - -#. TRANSLATORS: Partition map may reserve the space just GRUB isn't sure about it. -#: util/setup.c:458 -#, c-format -msgid "" -"%s appears to contain a %s partition map which isn't known to reserve space " -"for DOS-style boot. Installing GRUB there could result in FILESYSTEM " -"DESTRUCTION if valuable data is overwritten by grub-setup (--skip-fs-probe " -"disables this check, use at your own risk)" -msgstr "" -"%s Ð°Ð¿Ð¿ÐµÐ°Ñ€Ñ Ñ‚Ð¾ цонтаин а %s партитион мап ўхицх иÑн'Ñ‚ кноўн то реÑерве Ñпаце " -"фор ДОС-ÑÑ‚Ñле боот. ИнÑталлинг ГРУБ тхере цоулд реÑулт ин ФИЛЕСÐСТЕМ " -"ДЕСТРУЦТИОРиф валуабле дата Ð¸Ñ Ð¾Ð²ÐµÑ€ÑžÑ€Ð¸Ñ‚Ñ‚ÐµÐ½ Ð±Ñ Ð³Ñ€ÑƒÐ±-Ñетуп (--Ñкип-Ñ„Ñ-пробе " -"диÑÐ°Ð±Ð»ÐµÑ Ñ‚Ñ…Ð¸Ñ Ñ†Ñ…ÐµÑ†Ðº, уÑе ат Ñоур оўн риÑк)" - -#: util/setup.c:465 -#, c-format -msgid "" -"%s appears to contain a %s partition map and LDM which isn't known to be a " -"safe combination. Installing GRUB there could result in FILESYSTEM " -"DESTRUCTION if valuable data is overwritten by grub-setup (--skip-fs-probe " -"disables this check, use at your own risk)" -msgstr "" -"%s Ð°Ð¿Ð¿ÐµÐ°Ñ€Ñ Ñ‚Ð¾ цонтаин а %s партитион мап анд ЛДМ ўхицх иÑн'Ñ‚ кноўн то бе а " -"Ñафе цомбинатион. ИнÑталлинг ГРУБ тхере цоулд реÑулт ин ФИЛЕСÐСТЕМ " -"ДЕСТРУЦТИОРиф валуабле дата Ð¸Ñ Ð¾Ð²ÐµÑ€ÑžÑ€Ð¸Ñ‚Ñ‚ÐµÐ½ Ð±Ñ Ð³Ñ€ÑƒÐ±-Ñетуп (--Ñкип-Ñ„Ñ-пробе " -"диÑÐ°Ð±Ð»ÐµÑ Ñ‚Ñ…Ð¸Ñ Ñ†Ñ…ÐµÑ†Ðº, уÑе ат Ñоур оўн риÑк)" - -#: util/setup.c:478 -msgid "" -"Attempting to install GRUB to a partitionless disk or to a partition. This " -"is a BAD idea." -msgstr "" -"Ðттемптинг то инÑталл ГРУБ то а партитионлеÑÑ Ð´Ð¸Ñк ор то а партитион. Ð¢Ñ…Ð¸Ñ " -"Ð¸Ñ Ð° БÐД идеа." - -#: util/setup.c:483 -msgid "" -"Attempting to install GRUB to a disk with multiple partition labels. This " -"is not supported yet." -msgstr "" -"Ðттемптинг то инÑталл ГРУБ то а диÑк ўитх мултипле партитион лабелÑ. Ð¢Ñ…Ð¸Ñ " -"Ð¸Ñ Ð½Ð¾Ñ‚ Ñуппортед Ñет." - -#: util/setup.c:489 -#, c-format -msgid "Partition style `%s' doesn't support embedding" -msgstr "Партитион ÑÑ‚Ñле `%s' доеÑн'Ñ‚ Ñуппорт ембеддинг" - -#: util/setup.c:496 -#, c-format -msgid "File system `%s' doesn't support embedding" -msgstr "Филе ÑÑÑтем `%s' доеÑн'Ñ‚ Ñуппорт ембеддинг" - -#: util/setup.c:537 -msgid "Your embedding area is unusually small. core.img won't fit in it." -msgstr "Ðоур ембеддинг ареа Ð¸Ñ ÑƒÐ½ÑƒÑÑƒÐ°Ð»Ð»Ñ Ñмалл. цоре.имг ўон'Ñ‚ фит ин ит." - -#: util/setup.c:559 util/setup.c:725 util/setup.c:844 -msgid "no terminator in the core image" -msgstr "но терминатор ин тхе цоре имаге" - -#: util/setup.c:622 -msgid "core.img version mismatch" -msgstr "цоре.имг верÑион миÑматцх" - -#: util/setup.c:675 -msgid "" -"embedding is not possible, but this is required for RAID and LVM install" -msgstr "" -"ембеддинг Ð¸Ñ Ð½Ð¾Ñ‚ поÑÑибле, бут Ñ‚Ñ…Ð¸Ñ Ð¸Ñ Ñ€ÐµÑœÑƒÐ¸Ñ€ÐµÐ´ фор РÐИД анд ЛВМ инÑталл" - -#: util/setup.c:682 -#, c-format -msgid "can't determine filesystem on %s" -msgstr "цан'Ñ‚ детермине филеÑÑÑтем он %s" - -#: util/setup.c:685 -#, c-format -msgid "filesystem `%s' doesn't support blocklists" -msgstr "филеÑÑÑтем `%s' доеÑн'Ñ‚ Ñуппорт блоцклиÑÑ‚Ñ" - -#. TRANSLATORS: cross-disk refers to /boot being on one disk -#. but MBR on another. -#: util/setup.c:694 -msgid "embedding is not possible, but this is required for cross-disk install" -msgstr "ембеддинг Ð¸Ñ Ð½Ð¾Ñ‚ поÑÑибле, бут Ñ‚Ñ…Ð¸Ñ Ð¸Ñ Ñ€ÐµÑœÑƒÐ¸Ñ€ÐµÐ´ фор цроÑÑ-диÑк инÑталл" - -#: util/setup.c:700 -msgid "" -"Embedding is not possible. GRUB can only be installed in this setup by " -"using blocklists. However, blocklists are UNRELIABLE and their use is " -"discouraged." -msgstr "" -"Ембеддинг Ð¸Ñ Ð½Ð¾Ñ‚ поÑÑибле. ГРУБ цан Ð¾Ð½Ð»Ñ Ð±Ðµ инÑталлед ин Ñ‚Ñ…Ð¸Ñ Ñетуп Ð±Ñ " -"уÑинг блоцклиÑÑ‚Ñ. Хоўевер, блоцклиÑÑ‚Ñ Ð°Ñ€Ðµ УÐРЕЛИÐБЛЕ анд тхеир уÑе Ð¸Ñ " -"диÑцоурагед." - -#. TRANSLATORS: Here GRUB refuses to continue with blocklist install. -#: util/setup.c:705 -msgid "will not proceed with blocklists" -msgstr "ўилл нот процеед ўитх блоцклиÑÑ‚Ñ" - -#: util/setup.c:817 util/setup.c:837 -msgid "blocklists are invalid" -msgstr "блоцклиÑÑ‚Ñ Ð°Ñ€Ðµ инвалид" - -#: util/setup.c:847 -msgid "blocklists are incomplete" -msgstr "блоцклиÑÑ‚Ñ Ð°Ñ€Ðµ инцомплете" diff --git a/thirdparty/grub-2.04/po/en@greek.gmo b/thirdparty/grub-2.04/po/en@greek.gmo deleted file mode 100644 index 6697d277a54cdd1aa151f638bb15a369f1ee1b2b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 147271 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 fqx(4&Se|ctVrA#PRcqP& GRUB/BIOS device" -msgstr "ΟΣ δισκ #νυμ ------> ΓΡΥϬ/ϬΙΟΣ δεβιϲε" - -#: grub-core/commands/i386/pc/drivemap.c:413 -msgid "-l | -r | [-s] grubdev osdisk." -msgstr "-λ | -Ï | [-σ] γÏυϭδεβ οσδισκ." - -#: grub-core/commands/i386/pc/drivemap.c:414 -msgid "Manage the BIOS drive mappings." -msgstr "Μαναγε τχε ϬΙΟΣ δÏιβε μαππινγσ." - -#: grub-core/commands/i386/pc/halt.c:31 -msgid "Do not use APM to halt the computer." -msgstr "Δο νοτ υσε ΑΠΜ το χαλτ τχε ϲομπυτεÏ." - -#: grub-core/commands/i386/pc/halt.c:119 -msgid "Halt the system, if possible using APM." -msgstr "Χαλτ τχε σϋστεμ, ιφ ποσσιϭλε υσινγ ΑΠΜ." - -#: grub-core/commands/i386/pc/lsapm.c:75 -msgid "no APM found" -msgstr "νο ΑΠΜ φουνδ" - -#: grub-core/commands/i386/pc/lsapm.c:77 -#, c-format -msgid "" -"Version %u.%u\n" -"32-bit CS = 0x%x, len = 0x%x, offset = 0x%x\n" -"16-bit CS = 0x%x, len = 0x%x\n" -"DS = 0x%x, len = 0x%x\n" -msgstr "" -"ΒεÏσιον %u.%u\n" -"32-ϭιτ ϲΣ = 0ξ%x, λεν = 0ξ%x, οφφσετ = 0ξ%x\n" -"16-ϭιτ ϲΣ = 0ξ%x, λεν = 0ξ%x\n" -"ΔΣ = 0ξ%x, λεν = 0ξ%x\n" - -#: grub-core/commands/i386/pc/lsapm.c:86 -msgid "16-bit protected interface supported\n" -msgstr "16-ϭιτ Ï€Ïοτεϲτεδ ιντεÏφαϲε συπποÏτεδ\n" - -#: grub-core/commands/i386/pc/lsapm.c:87 -msgid "16-bit protected interface unsupported\n" -msgstr "16-ϭιτ Ï€Ïοτεϲτεδ ιντεÏφαϲε υνσυπποÏτεδ\n" - -#: grub-core/commands/i386/pc/lsapm.c:89 -msgid "32-bit protected interface supported\n" -msgstr "32-ϭιτ Ï€Ïοτεϲτεδ ιντεÏφαϲε συπποÏτεδ\n" - -#: grub-core/commands/i386/pc/lsapm.c:90 -msgid "32-bit protected interface unsupported\n" -msgstr "32-ϭιτ Ï€Ïοτεϲτεδ ιντεÏφαϲε υνσυπποÏτεδ\n" - -#: grub-core/commands/i386/pc/lsapm.c:92 -msgid "CPU Idle slows down processor\n" -msgstr "ϲΠΥ Ιδλε σλοωσ δοων Ï€ÏοϲεσσοÏ\n" - -#: grub-core/commands/i386/pc/lsapm.c:93 -msgid "CPU Idle doesn't slow down processor\n" -msgstr "ϲΠΥ Ιδλε δοεσν'Ï„ σλοω δοων Ï€ÏοϲεσσοÏ\n" - -#: grub-core/commands/i386/pc/lsapm.c:95 -msgid "APM disabled\n" -msgstr "ΑΠΜ δισαϭλεδ\n" - -#: grub-core/commands/i386/pc/lsapm.c:95 -msgid "APM enabled\n" -msgstr "ΑΠΜ εναϭλεδ\n" - -#: grub-core/commands/i386/pc/lsapm.c:97 -msgid "APM disengaged\n" -msgstr "ΑΠΜ δισενγαγεδ\n" - -#: grub-core/commands/i386/pc/lsapm.c:97 -msgid "APM engaged\n" -msgstr "ΑΠΜ ενγαγεδ\n" - -#: grub-core/commands/i386/pc/lsapm.c:107 -msgid "Show APM information." -msgstr "Σχοω ΑΠΜ ινφοÏματιον." - -#. TRANSLATORS: It's musical notes, not the notes -#. you take. Play command expects arguments which can -#. be either a filename or tempo+notes. -#. This error happens if none is specified. -#: grub-core/commands/i386/pc/play.c:88 -msgid "filename or tempo and notes expected" -msgstr "φιλεναμε Î¿Ï Ï„ÎµÎ¼Ï€Î¿ ανδ νοτεσ εξπεϲτεδ" - -#: grub-core/commands/i386/pc/play.c:113 grub-core/commands/i386/pc/play.c:144 -#, c-format -msgid "Invalid tempo in %s" -msgstr "Ινβαλιδ τεμπο ιν %s" - -#: grub-core/commands/i386/pc/play.c:151 grub-core/commands/macbless.c:172 -#: grub-core/fs/archelp.c:260 grub-core/fs/bfs.c:621 grub-core/fs/bfs.c:704 -#: grub-core/fs/btrfs.c:1726 grub-core/fs/btrfs.c:1755 -#: grub-core/fs/btrfs.c:1799 grub-core/fs/btrfs.c:1882 -#: grub-core/fs/btrfs.c:1906 grub-core/fs/fshelp.c:257 grub-core/fs/jfs.c:696 -#: grub-core/fs/minix.c:426 grub-core/fs/ufs.c:544 grub-core/fs/zfs/zfs.c:2083 -#: grub-core/fs/zfs/zfs.c:2095 grub-core/fs/zfs/zfs.c:2301 -#: grub-core/net/http.c:120 -#, c-format -msgid "file `%s' not found" -msgstr "φιλε `%s' νοτ φουνδ" - -#: grub-core/commands/i386/pc/play.c:162 grub-core/commands/i386/pc/play.c:171 -#: grub-core/kern/misc.c:419 grub-core/script/execute.c:138 -#: grub-core/script/execute.c:244 -msgid "unrecognized number" -msgstr "υνÏεϲογνιζεδ νυμϭεÏ" - -#: grub-core/commands/i386/pc/play.c:190 -msgid "FILE | TEMPO [PITCH1 DURATION1] [PITCH2 DURATION2] ... " -msgstr "ΦΙΛΕ | ΤΕΜΠΟ [ΠΙΤϲΧ1 ΔΥΡΑΤΙΟÎ1] [ΠΙΤϲΧ2 ΔΥΡΑΤΙΟÎ2] ... " - -#: grub-core/commands/i386/pc/play.c:191 -msgid "Play a tune." -msgstr "Πλαϋ α τυνε." - -#: grub-core/commands/i386/pc/sendkey.c:39 -msgid "set numlock mode" -msgstr "σετ νυμλοϲκ μοδε" - -#: grub-core/commands/i386/pc/sendkey.c:40 -msgid "set capslock mode" -msgstr "σετ ϲαπσλοϲκ μοδε" - -#: grub-core/commands/i386/pc/sendkey.c:41 -msgid "set scrolllock mode" -msgstr "σετ σϲÏολλλοϲκ μοδε" - -#: grub-core/commands/i386/pc/sendkey.c:42 -msgid "set insert mode" -msgstr "σετ ινσεÏÏ„ μοδε" - -#: grub-core/commands/i386/pc/sendkey.c:43 -msgid "set pause mode" -msgstr "σετ παυσε μοδε" - -#: grub-core/commands/i386/pc/sendkey.c:44 -msgid "press left shift" -msgstr "Ï€Ïεσσ λεφτ σχιφτ" - -#: grub-core/commands/i386/pc/sendkey.c:45 -msgid "press right shift" -msgstr "Ï€Ïεσσ Ïιγχτ σχιφτ" - -#: grub-core/commands/i386/pc/sendkey.c:46 -msgid "press SysRq" -msgstr "Ï€Ïεσσ ΣϋσΡϗ" - -#: grub-core/commands/i386/pc/sendkey.c:47 -msgid "press NumLock key" -msgstr "Ï€Ïεσσ ÎυμΛοϲκ κεϋ" - -#: grub-core/commands/i386/pc/sendkey.c:48 -msgid "press CapsLock key" -msgstr "Ï€Ïεσσ ϲαπσΛοϲκ κεϋ" - -#: grub-core/commands/i386/pc/sendkey.c:49 -msgid "press ScrollLock key" -msgstr "Ï€Ïεσσ ΣϲÏολλΛοϲκ κεϋ" - -#: grub-core/commands/i386/pc/sendkey.c:50 -msgid "press Insert key" -msgstr "Ï€Ïεσσ ΙνσεÏÏ„ κεϋ" - -#: grub-core/commands/i386/pc/sendkey.c:51 -msgid "press left alt" -msgstr "Ï€Ïεσσ λεφτ αλτ" - -#: grub-core/commands/i386/pc/sendkey.c:52 -msgid "press right alt" -msgstr "Ï€Ïεσσ Ïιγχτ αλτ" - -#: grub-core/commands/i386/pc/sendkey.c:53 -msgid "press left ctrl" -msgstr "Ï€Ïεσσ λεφτ ϲτÏλ" - -#: grub-core/commands/i386/pc/sendkey.c:54 -msgid "press right ctrl" -msgstr "Ï€Ïεσσ Ïιγχτ ϲτÏλ" - -#: grub-core/commands/i386/pc/sendkey.c:55 -msgid "don't update LED state" -msgstr "δον'Ï„ υπδατε ΛΕΔ στατε" - -#: grub-core/commands/i386/pc/sendkey.c:372 -msgid "[KEYSTROKE1] [KEYSTROKE2] ..." -msgstr "[ΚΕΫΣΤΡΟΚΕ1] [ΚΕΫΣΤΡΟΚΕ2] ..." - -#. TRANSLATORS: It can emulate multiple -#. keypresses. -#: grub-core/commands/i386/pc/sendkey.c:375 -msgid "Emulate a keystroke sequence" -msgstr "Εμυλατε α κεϋστÏοκε σεϗυενϲε" - -#: grub-core/commands/i386/rdmsr.c:37 grub-core/commands/iorw.c:34 -#: grub-core/commands/memrw.c:33 grub-core/commands/setpci.c:73 -msgid "Save read value into variable VARNAME." -msgstr "Σαβε Ïεαδ βαλυε ιντο βαÏιαϭλε ΒΑΡÎΑΜΕ." - -#: grub-core/commands/i386/rdmsr.c:38 grub-core/commands/iorw.c:35 -#: grub-core/commands/memrw.c:34 grub-core/commands/probe.c:40 -#: grub-core/commands/search_wrap.c:40 grub-core/commands/setpci.c:74 -#: grub-core/commands/tr.c:32 -msgid "VARNAME" -msgstr "ΒΑΡÎΑΜΕ" - -#: grub-core/commands/i386/rdmsr.c:55 grub-core/commands/i386/rdmsr.c:60 -#: grub-core/commands/i386/rdmsr.c:65 grub-core/commands/i386/wrmsr.c:47 -#: grub-core/commands/i386/wrmsr.c:52 grub-core/commands/i386/wrmsr.c:57 -msgid "unsupported instruction" -msgstr "υνσυπποÏτεδ ινστÏυϲτιον" - -#: grub-core/commands/i386/rdmsr.c:77 grub-core/commands/i386/wrmsr.c:69 -#: grub-core/commands/i386/wrmsr.c:77 grub-core/net/dns.c:727 -msgid "invalid argument" -msgstr "ινβαλιδ αÏγυμεντ" - -#: grub-core/commands/i386/rdmsr.c:94 grub-core/commands/memrw.c:125 -#: grub-core/commands/memrw.c:129 grub-core/commands/memrw.c:133 -msgid "ADDR" -msgstr "ΑΔΔΡ" - -#: grub-core/commands/i386/rdmsr.c:95 -msgid "Read a CPU model specific register." -msgstr "Ρεαδ α ϲΠΥ μοδελ σπεϲιφιϲ ÏεγιστεÏ." - -#: grub-core/commands/i386/wrmsr.c:86 -msgid "ADDR VALUE" -msgstr "ΑΔΔΡ ΒΑΛΥΕ" - -#: grub-core/commands/i386/wrmsr.c:87 -msgid "Write a value to a CPU model specific register." -msgstr "ΩÏιτε α βαλυε το α ϲΠΥ μοδελ σπεϲιφιϲ ÏεγιστεÏ." - -#: grub-core/commands/ieee1275/suspend.c:34 -msgid "Run `go' to resume GRUB." -msgstr "Ρυν `γο' το Ïεσυμε ΓΡΥϬ." - -#: grub-core/commands/ieee1275/suspend.c:45 -msgid "Return to IEEE1275 prompt." -msgstr "ΡετυÏν το ΙΕΕΕ1275 Ï€Ïομπτ." - -#: grub-core/commands/iorw.c:123 grub-core/commands/iorw.c:127 -#: grub-core/commands/iorw.c:131 grub-core/gdb/gdb.c:79 -msgid "PORT" -msgstr "ΠΟΡΤ" - -#: grub-core/commands/iorw.c:123 -msgid "Read 8-bit value from PORT." -msgstr "Ρεαδ 8-ϭιτ βαλυε φÏομ ΠΟΡΤ." - -#: grub-core/commands/iorw.c:127 -msgid "Read 16-bit value from PORT." -msgstr "Ρεαδ 16-ϭιτ βαλυε φÏομ ΠΟΡΤ." - -#: grub-core/commands/iorw.c:131 -msgid "Read 32-bit value from PORT." -msgstr "Ρεαδ 32-ϭιτ βαλυε φÏομ ΠΟΡΤ." - -#: grub-core/commands/iorw.c:135 grub-core/commands/iorw.c:139 -msgid "PORT VALUE [MASK]" -msgstr "ΠΟΡΤ ΒΑΛΥΕ [ΜΑΣΚ]" - -#: grub-core/commands/iorw.c:136 -msgid "Write 8-bit VALUE to PORT." -msgstr "ΩÏιτε 8-ϭιτ ΒΑΛΥΕ το ΠΟΡΤ." - -#: grub-core/commands/iorw.c:140 -msgid "Write 16-bit VALUE to PORT." -msgstr "ΩÏιτε 16-ϭιτ ΒΑΛΥΕ το ΠΟΡΤ." - -#: grub-core/commands/iorw.c:143 grub-core/commands/memrw.c:137 -#: grub-core/commands/memrw.c:141 grub-core/commands/memrw.c:145 -msgid "ADDR VALUE [MASK]" -msgstr "ΑΔΔΡ ΒΑΛΥΕ [ΜΑΣΚ]" - -#: grub-core/commands/iorw.c:144 -msgid "Write 32-bit VALUE to PORT." -msgstr "ΩÏιτε 32-ϭιτ ΒΑΛΥΕ το ΠΟΡΤ." - -#: grub-core/commands/keylayouts.c:215 grub-core/commands/loadenv.c:61 -#: grub-core/commands/nativedisk.c:189 grub-core/efiemu/main.c:235 -#: grub-core/font/font.c:428 grub-core/gfxmenu/gfxmenu.c:63 -#: grub-core/kern/device.c:42 grub-core/kern/dl.c:740 -#, c-format -msgid "variable `%s' isn't set" -msgstr "βαÏιαϭλε `%s' ισν'Ï„ σετ" - -#: grub-core/commands/keylayouts.c:301 -msgid "Load a keyboard layout." -msgstr "Λοαδ α κεϋϭοαÏδ λαϋουτ." - -#. TRANSLATORS: "Check" in a sense that if this key is pressed then -#. "true" is returned, otherwise "false". -#: grub-core/commands/keystatus.c:32 -msgid "Check Shift key." -msgstr "ϲχεϲκ Σχιφτ κεϋ." - -#: grub-core/commands/keystatus.c:33 -msgid "Check Control key." -msgstr "ϲχεϲκ ϲοντÏολ κεϋ." - -#: grub-core/commands/keystatus.c:34 -msgid "Check Alt key." -msgstr "ϲχεϲκ Αλτ κεϋ." - -#. TRANSLATORS: there are 3 modifiers. -#: grub-core/commands/keystatus.c:106 -msgid "Check key modifier status." -msgstr "ϲχεϲκ κεϋ Î¼Î¿Î´Î¹Ï†Î¹ÎµÏ ÏƒÏ„Î±Ï„Ï…Ïƒ." - -#: grub-core/commands/legacycfg.c:512 grub-core/commands/legacycfg.c:526 -#: grub-core/commands/legacycfg.c:546 grub-core/commands/legacycfg.c:559 -#: grub-core/commands/time.c:43 grub-core/script/function.c:109 -#: util/grub-file.c:100 util/grub-fstest.c:57 util/grub-mount.c:69 -#, c-format -msgid "can't find command `%s'" -msgstr "ϲαν'Ï„ φινδ ϲομμανδ `%s'" - -#: grub-core/commands/legacycfg.c:813 grub-core/normal/auth.c:225 -#: util/grub-mkpasswd-pbkdf2.c:139 -msgid "Enter password: " -msgstr "Î•Î½Ï„ÎµÏ Ï€Î±ÏƒÏƒÏ‰Î¿Ïδ: " - -#. TRANSLATORS: "legacy config" means -#. "config as used by grub-legacy". -#: grub-core/commands/legacycfg.c:837 -msgid "Parse legacy config in same context" -msgstr "ΠαÏσε λεγαϲϋ ϲονφιγ ιν σαμε ϲοντεξτ" - -#: grub-core/commands/legacycfg.c:842 -msgid "Parse legacy config in new context" -msgstr "ΠαÏσε λεγαϲϋ ϲονφιγ ιν νεω ϲοντεξτ" - -#: grub-core/commands/legacycfg.c:847 -msgid "Parse legacy config in same context taking only menu entries" -msgstr "ΠαÏσε λεγαϲϋ ϲονφιγ ιν σαμε ϲοντεξτ τακινγ ονλϋ μενυ εντÏιεσ" - -#: grub-core/commands/legacycfg.c:852 -msgid "Parse legacy config in new context taking only menu entries" -msgstr "ΠαÏσε λεγαϲϋ ϲονφιγ ιν νεω ϲοντεξτ τακινγ ονλϋ μενυ εντÏιεσ" - -#: grub-core/commands/legacycfg.c:856 -msgid "[--no-mem-option] [--type=TYPE] FILE [ARG ...]" -msgstr "[--νο-μεμ-οπτιον] [--τϋπε=ΤΫΠΕ] ΦΙΛΕ [ΑΡΓ ...]" - -#: grub-core/commands/legacycfg.c:857 -msgid "Simulate grub-legacy `kernel' command" -msgstr "Σιμυλατε γÏÏ…Ï­-λεγαϲϋ `κεÏνελ' ϲομμανδ" - -#: grub-core/commands/legacycfg.c:861 grub-core/commands/legacycfg.c:865 -msgid "FILE [ARG ...]" -msgstr "ΦΙΛΕ [ΑΡΓ ...]" - -#: grub-core/commands/legacycfg.c:862 -msgid "Simulate grub-legacy `initrd' command" -msgstr "Σιμυλατε γÏÏ…Ï­-λεγαϲϋ `ινιτÏδ' ϲομμανδ" - -#: grub-core/commands/legacycfg.c:866 -msgid "Simulate grub-legacy `modulenounzip' command" -msgstr "Σιμυλατε γÏÏ…Ï­-λεγαϲϋ `μοδυλενουνζιπ' ϲομμανδ" - -#: grub-core/commands/legacycfg.c:870 grub-core/commands/legacycfg.c:875 -msgid "[--md5] PASSWD [FILE]" -msgstr "[--μδ5] ΠΑΣΣΩΔ [ΦΙΛΕ]" - -#: grub-core/commands/legacycfg.c:871 -msgid "Simulate grub-legacy `password' command" -msgstr "Σιμυλατε γÏÏ…Ï­-λεγαϲϋ `πασσωοÏδ' ϲομμανδ" - -#: grub-core/commands/legacycfg.c:876 -msgid "Simulate grub-legacy `password' command in menu entry mode" -msgstr "Σιμυλατε γÏÏ…Ï­-λεγαϲϋ `πασσωοÏδ' ϲομμανδ ιν μενυ εντÏÏ‹ μοδε" - -#. TRANSLATORS: This option is used to override default filename -#. for loading and storing environment. -#: grub-core/commands/loadenv.c:37 -msgid "Specify filename." -msgstr "Σπεϲιφϋ φιλεναμε." - -#: grub-core/commands/loadenv.c:39 -msgid "Skip signature-checking of the environment file." -msgstr "Σκιπ σιγνατυÏε-ϲχεϲκινγ οφ τχε ενβιÏονμεντ φιλε." - -#: grub-core/commands/loadenv.c:451 -msgid "[-f FILE] [-s|--skip-sig] [variable_name_to_whitelist] [...]" -msgstr "[-φ ΦΙΛΕ] [-σ|--σκιπ-σιγ] [βαÏιαϭλε_ναμε_το_ωχιτελιστ] [...]" - -#: grub-core/commands/loadenv.c:452 -msgid "Load variables from environment block file." -msgstr "Λοαδ βαÏιαϭλεσ φÏομ ενβιÏονμεντ ϭλοϲκ φιλε." - -#: grub-core/commands/loadenv.c:455 -msgid "[-f FILE]" -msgstr "[-φ ΦΙΛΕ]" - -#: grub-core/commands/loadenv.c:456 -msgid "List variables from environment block file." -msgstr "Λιστ βαÏιαϭλεσ φÏομ ενβιÏονμεντ ϭλοϲκ φιλε." - -#: grub-core/commands/loadenv.c:460 -msgid "[-f FILE] variable_name [...]" -msgstr "[-φ ΦΙΛΕ] βαÏιαϭλε_ναμε [...]" - -#: grub-core/commands/loadenv.c:461 -msgid "Save variables to environment block file." -msgstr "Σαβε βαÏιαϭλεσ το ενβιÏονμεντ ϭλοϲκ φιλε." - -#: grub-core/commands/ls.c:40 -msgid "Show a long list with more detailed information." -msgstr "Σχοω α λονγ λιστ ωιτχ μοÏε δεταιλεδ ινφοÏματιον." - -#: grub-core/commands/ls.c:41 -msgid "Print sizes in a human readable format." -msgstr "ΠÏιντ σιζεσ ιν α χυμαν Ïεαδαϭλε φοÏματ." - -#: grub-core/commands/ls.c:42 -msgid "List all files." -msgstr "Λιστ αλλ φιλεσ." - -#: grub-core/commands/ls.c:73 -msgid "Network protocols:" -msgstr "ÎετωοÏκ Ï€Ïοτοϲολσ:" - -#: grub-core/commands/ls.c:295 -msgid "[-l|-h|-a] [FILE ...]" -msgstr "[-λ|-χ|-α] [ΦΙΛΕ ...]" - -#: grub-core/commands/ls.c:296 -msgid "List devices and files." -msgstr "Λιστ δεβιϲεσ ανδ φιλεσ." - -#: grub-core/commands/lsacpi.c:255 -msgid "Show version 1 tables only." -msgstr "Σχοω βεÏσιον 1 ταϭλεσ ονλϋ." - -#: grub-core/commands/lsacpi.c:256 -msgid "Show version 2 and version 3 tables only." -msgstr "Σχοω βεÏσιον 2 ανδ βεÏσιον 3 ταϭλεσ ονλϋ." - -#: grub-core/commands/lsacpi.c:306 -msgid "Show ACPI information." -msgstr "Σχοω ΑϲΠΙ ινφοÏματιον." - -#: grub-core/commands/lsmmap.c:31 -msgid "available RAM" -msgstr "αβαιλαϭλε ΡΑΜ" - -#: grub-core/commands/lsmmap.c:32 -msgid "reserved RAM" -msgstr "ÏεσεÏβεδ ΡΑΜ" - -#. TRANSLATORS: this refers to memory where ACPI tables are stored -#. and which can be used by OS once it loads ACPI tables. -#: grub-core/commands/lsmmap.c:35 -msgid "ACPI reclaimable RAM" -msgstr "ΑϲΠΙ Ïεϲλαιμαϭλε ΡΑΜ" - -#. TRANSLATORS: this refers to memory which ACPI-compliant OS -#. is required to save accross hibernations. -#: grub-core/commands/lsmmap.c:38 -msgid "ACPI non-volatile storage RAM" -msgstr "ΑϲΠΙ νον-βολατιλε στοÏαγε ΡΑΜ" - -#: grub-core/commands/lsmmap.c:39 -msgid "faulty RAM (BadRAM)" -msgstr "φαυλτϋ ΡΑΜ (ϬαδΡΑΜ)" - -#: grub-core/commands/lsmmap.c:40 -msgid "persistent RAM" -msgstr "πεÏσιστεντ ΡΑΜ" - -#: grub-core/commands/lsmmap.c:41 -msgid "persistent RAM (legacy)" -msgstr "πεÏσιστεντ ΡΑΜ (λεγαϲϋ)" - -#: grub-core/commands/lsmmap.c:42 -msgid "RAM holding coreboot tables" -msgstr "ΡΑΜ χολδινγ ϲοÏεϭοοτ ταϭλεσ" - -#: grub-core/commands/lsmmap.c:43 -msgid "RAM holding firmware code" -msgstr "ΡΑΜ χολδινγ φιÏμωαÏε ϲοδε" - -#: grub-core/commands/lsmmap.c:52 -#, c-format -msgid "base_addr = 0x%llx, length = 0x%llx, %s\n" -msgstr "ϭασε_Î±Î´Î´Ï = 0ξ%llx, λενγτχ = 0ξ%llx, %s\n" - -#: grub-core/commands/lsmmap.c:55 -#, c-format -msgid "base_addr = 0x%llx, length = 0x%llx, type = 0x%x\n" -msgstr "ϭασε_Î±Î´Î´Ï = 0ξ%llx, λενγτχ = 0ξ%llx, τϋπε = 0ξ%x\n" - -#: grub-core/commands/lsmmap.c:79 -msgid "List memory map provided by firmware." -msgstr "Λιστ μεμοÏÏ‹ μαπ Ï€Ïοβιδεδ Ï­Ï‹ φιÏμωαÏε." - -#: grub-core/commands/lspci.c:232 -msgid "List PCI devices." -msgstr "Λιστ ΠϲΙ δεβιϲεσ." - -#: grub-core/commands/macbless.c:224 -msgid "Bless FILE of HFS or HFS+ partition for intel macs." -msgstr "Ϭλεσσ ΦΙΛΕ οφ ΧΦΣ Î¿Ï Î§Î¦Î£+ παÏτιτιον Ï†Î¿Ï Î¹Î½Ï„ÎµÎ» μαϲσ." - -#: grub-core/commands/macbless.c:228 -msgid "Bless DIR of HFS or HFS+ partition for PPC macs." -msgstr "Ϭλεσσ ΔΙΡ οφ ΧΦΣ Î¿Ï Î§Î¦Î£+ παÏτιτιον Ï†Î¿Ï Î Î Ï² μαϲσ." - -#: grub-core/commands/memrw.c:125 -msgid "Read 8-bit value from ADDR." -msgstr "Ρεαδ 8-ϭιτ βαλυε φÏομ ΑΔΔΡ." - -#: grub-core/commands/memrw.c:129 -msgid "Read 16-bit value from ADDR." -msgstr "Ρεαδ 16-ϭιτ βαλυε φÏομ ΑΔΔΡ." - -#: grub-core/commands/memrw.c:133 -msgid "Read 32-bit value from ADDR." -msgstr "Ρεαδ 32-ϭιτ βαλυε φÏομ ΑΔΔΡ." - -#: grub-core/commands/memrw.c:138 -msgid "Write 8-bit VALUE to ADDR." -msgstr "ΩÏιτε 8-ϭιτ ΒΑΛΥΕ το ΑΔΔΡ." - -#: grub-core/commands/memrw.c:142 -msgid "Write 16-bit VALUE to ADDR." -msgstr "ΩÏιτε 16-ϭιτ ΒΑΛΥΕ το ΑΔΔΡ." - -#: grub-core/commands/memrw.c:146 -msgid "Write 32-bit VALUE to ADDR." -msgstr "ΩÏιτε 32-ϭιτ ΒΑΛΥΕ το ΑΔΔΡ." - -#: grub-core/commands/menuentry.c:31 -msgid "Menu entry type." -msgstr "Μενυ εντÏÏ‹ τϋπε." - -#: grub-core/commands/menuentry.c:31 grub-core/commands/menuentry.c:38 -#: grub-core/commands/menuentry.c:39 grub-core/gettext/gettext.c:520 -#: util/grub-fstest.c:520 util/grub-install.c:291 util/grub-install.c:304 -#: util/grub-mknetdir.c:51 util/grub-mkrescue.c:109 util/grub-mkrescue.c:110 -#: util/grub-mount.c:453 util/grub-render-label.c:65 -msgid "STRING" -msgstr "ΣΤΡΙÎΓ" - -#: grub-core/commands/menuentry.c:33 -msgid "List of users allowed to boot this entry." -msgstr "Λιστ οφ υσεÏσ αλλοωεδ το ϭοοτ τχισ εντÏÏ‹." - -#: grub-core/commands/menuentry.c:33 -msgid "USERNAME[,USERNAME]" -msgstr "ΥΣΕΡÎΑΜΕ[,ΥΣΕΡÎΑΜΕ]" - -#: grub-core/commands/menuentry.c:36 -msgid "Keyboard key to quickly boot this entry." -msgstr "ΚεϋϭοαÏδ κεϋ το ϗυιϲκλϋ ϭοοτ τχισ εντÏÏ‹." - -#: grub-core/commands/menuentry.c:36 -msgid "KEYBOARD_KEY" -msgstr "ΚΕΫϬΟΑΡΔ_ΚΕΫ" - -#: grub-core/commands/menuentry.c:38 -msgid "Use STRING as menu entry body." -msgstr "Υσε ΣΤΡΙÎΓ ασ μενυ εντÏÏ‹ ϭοδϋ." - -#: grub-core/commands/menuentry.c:39 -msgid "Menu entry identifier." -msgstr "Μενυ εντÏÏ‹ ιδεντιφιεÏ." - -#. TRANSLATORS: menu entry can either be bootable by anyone or only by -#. handful of users. By default when security is active only superusers can -#. boot a given menu entry. With --unrestricted (this option) -#. anyone can boot it. -#: grub-core/commands/menuentry.c:44 -msgid "This entry can be booted by any user." -msgstr "Τχισ εντÏÏ‹ ϲαν ϭε ϭοοτεδ Ï­Ï‹ ανϋ υσεÏ." - -#: grub-core/commands/menuentry.c:323 grub-core/commands/menuentry.c:328 -#: grub-core/tests/test_blockarg.c:46 -msgid "BLOCK" -msgstr "ϬΛΟϲΚ" - -#: grub-core/commands/menuentry.c:323 -msgid "Define a menu entry." -msgstr "Δεφινε α μενυ εντÏÏ‹." - -#: grub-core/commands/menuentry.c:328 -msgid "Define a submenu." -msgstr "Δεφινε α συϭμενυ." - -#. TRANSLATORS: this is module list header. Name -#. is module name, Ref Count is a reference counter -#. (how many modules or open descriptors use it). -#. Dependencies are the other modules it uses. -#. -#: grub-core/commands/minicmd.c:162 -msgid "Name\tRef Count\tDependencies\n" -msgstr "Îαμε\tΡεφ ϲουντ\tΔεπενδενϲιεσ\n" - -#: grub-core/commands/minicmd.c:201 -msgid "Show this message." -msgstr "Σχοω τχισ μεσσαγε." - -#: grub-core/commands/minicmd.c:204 -msgid "ADDR [SIZE]" -msgstr "ΑΔΔΡ [ΣΙΖΕ]" - -#: grub-core/commands/minicmd.c:204 -msgid "Show memory contents." -msgstr "Σχοω μεμοÏÏ‹ ϲοντεντσ." - -#: grub-core/commands/minicmd.c:207 grub-core/kern/corecmd.c:188 -#: util/grub-install.c:275 -msgid "MODULE" -msgstr "ΜΟΔΥΛΕ" - -#: grub-core/commands/minicmd.c:207 -msgid "Remove a module." -msgstr "Ρεμοβε α μοδυλε." - -#: grub-core/commands/minicmd.c:210 -msgid "Show loaded modules." -msgstr "Σχοω λοαδεδ μοδυλεσ." - -#: grub-core/commands/minicmd.c:213 -msgid "Exit from GRUB." -msgstr "Εξιτ φÏομ ΓΡΥϬ." - -#: grub-core/commands/mips/loongson/lsspd.c:42 -msgid "No CS5536 found" -msgstr "Îο ϲΣ5536 φουνδ" - -#: grub-core/commands/mips/loongson/lsspd.c:45 -#, c-format -msgid "CS5536 at %d:%d.%d\n" -msgstr "ϲΣ5536 ατ %d:%d.%d\n" - -#. TRANSLATORS: System management bus is often used to access components like -#. RAM (info only, not data) or batteries. I/O space is where in memory -#. its ports are. -#: grub-core/commands/mips/loongson/lsspd.c:55 -#, c-format -msgid "System management bus controller I/O space is at 0x%x\n" -msgstr "Σϋστεμ μαναγεμεντ ϭυσ ϲοντÏÎ¿Î»Î»ÎµÏ Î™/Ο σπαϲε ισ ατ 0ξ%x\n" - -#. TRANSLATORS: it's shown in a report in a way -#. like number 1: ... number 2: ... -#. -#: grub-core/commands/mips/loongson/lsspd.c:66 -#, c-format -msgid "RAM slot number %d\n" -msgstr "ΡΑΜ σλοτ Î½Ï…Î¼Ï­ÎµÏ %d\n" - -#: grub-core/commands/mips/loongson/lsspd.c:73 -#, c-format -msgid "Written SPD bytes: %d B.\n" -msgstr "ΩÏιττεν ΣΠΔ ϭϋτεσ: %d Ϭ.\n" - -#: grub-core/commands/mips/loongson/lsspd.c:74 -#, c-format -msgid "Total flash size: %d B.\n" -msgstr "Τοταλ φλασχ σιζε: %d Ϭ.\n" - -#: grub-core/commands/mips/loongson/lsspd.c:79 -msgid "Memory type: DDR2." -msgstr "ΜεμοÏÏ‹ τϋπε: ΔΔΡ2." - -#: grub-core/commands/mips/loongson/lsspd.c:83 -#, c-format -msgid "Part no: %s.\n" -msgstr "ΠαÏÏ„ νο: %s.\n" - -#: grub-core/commands/mips/loongson/lsspd.c:86 -msgid "Memory type: Unknown." -msgstr "ΜεμοÏÏ‹ τϋπε: Υνκνοων." - -#: grub-core/commands/mips/loongson/lsspd.c:97 -msgid "Print Memory information." -msgstr "ΠÏιντ ΜεμοÏÏ‹ ινφοÏματιον." - -#: grub-core/commands/nativedisk.c:118 grub-core/commands/probe.c:118 -#: grub-core/commands/probe.c:124 util/grub-probe.c:450 -#, c-format -msgid "%s does not support UUIDs" -msgstr "%s δοεσ νοτ συπποÏÏ„ ΥΥΙΔσ" - -#: grub-core/commands/nativedisk.c:325 -msgid "[MODULE1 MODULE2 ...]" -msgstr "[ΜΟΔΥΛΕ1 ΜΟΔΥΛΕ2 ...]" - -#: grub-core/commands/nativedisk.c:326 -msgid "" -"Switch to native disk drivers. If no modules are specified default set (pata," -"ahci,usbms,ohci,uhci,ehci) is used" -msgstr "" -"Σωιτϲχ το νατιβε δισκ δÏιβεÏσ. Ιφ νο μοδυλεσ αÏε σπεϲιφιεδ δεφαυλτ σετ (πατα," -"αχϲι,υσϭμσ,οχϲι,υχϲι,εχϲι) ισ υσεδ" - -#: grub-core/commands/parttool.c:40 -msgid "" -"Perform COMMANDS on partition.\n" -"Use `parttool PARTITION help' for the list of available commands." -msgstr "" -"ΠεÏφοÏμ ϲΟΜΜΑÎΔΣ ον παÏτιτιον.\n" -"Υσε `παÏττοολ ΠΑΡΤΙΤΙΟΠχελπ' Ï†Î¿Ï Ï„Ï‡Îµ λιστ οφ αβαιλαϭλε ϲομμανδσ." - -#: grub-core/commands/parttool.c:123 -msgid "=VAL" -msgstr "=ΒΑΛ" - -#: grub-core/commands/parttool.c:136 -#, c-format -msgid "Sorry, no parttool is available for %s\n" -msgstr "ΣοÏÏÏ‹, νο παÏττοολ ισ αβαιλαϭλε Ï†Î¿Ï %s\n" - -#: grub-core/commands/parttool.c:288 grub-core/lib/arg.c:285 -#: grub-core/lib/arg.c:351 -#, c-format -msgid "unknown argument `%s'" -msgstr "υνκνοων αÏγυμεντ `%s'" - -#: grub-core/commands/parttool.c:344 -msgid "PARTITION COMMANDS" -msgstr "ΠΑΡΤΙΤΙΟΠϲΟΜΜΑÎΔΣ" - -#: grub-core/commands/password.c:85 -msgid "USER PASSWORD" -msgstr "ΥΣΕΡ ΠΑΣΣΩΟΡΔ" - -#: grub-core/commands/password.c:86 -msgid "Set user password (plaintext). Unrecommended and insecure." -msgstr "Σετ Ï…ÏƒÎµÏ Ï€Î±ÏƒÏƒÏ‰Î¿Ïδ (πλαιντεξτ). ΥνÏεϲομμενδεδ ανδ ινσεϲυÏε." - -#. TRANSLATORS: it means that the string which -#. was supposed to be a password hash doesn't -#. have a correct format, not to password -#. mismatch. -#: grub-core/commands/password_pbkdf2.c:98 -#: grub-core/commands/password_pbkdf2.c:115 -#: grub-core/commands/password_pbkdf2.c:123 -#: grub-core/commands/password_pbkdf2.c:150 -#: grub-core/commands/password_pbkdf2.c:179 -msgid "invalid PBKDF2 password" -msgstr "ινβαλιδ ΠϬΚΔΦ2 πασσωοÏδ" - -#: grub-core/commands/password_pbkdf2.c:202 -msgid "USER PBKDF2_PASSWORD" -msgstr "ΥΣΕΡ ΠϬΚΔΦ2_ΠΑΣΣΩΟΡΔ" - -#: grub-core/commands/password_pbkdf2.c:203 -msgid "Set user password (PBKDF2). " -msgstr "Σετ Ï…ÏƒÎµÏ Ï€Î±ÏƒÏƒÏ‰Î¿Ïδ (ΠϬΚΔΦ2). " - -#: grub-core/commands/pcidump.c:39 grub-core/commands/setpci.c:69 -msgid "Select device by vendor and device IDs." -msgstr "Σελεϲτ δεβιϲε Ï­Ï‹ Î²ÎµÎ½Î´Î¿Ï Î±Î½Î´ δεβιϲε ΙΔσ." - -#: grub-core/commands/pcidump.c:40 grub-core/commands/setpci.c:70 -msgid "[vendor]:[device]" -msgstr "[βενδοÏ]:[δεβιϲε]" - -#: grub-core/commands/pcidump.c:41 grub-core/commands/setpci.c:71 -msgid "Select device by its position on the bus." -msgstr "Σελεϲτ δεβιϲε Ï­Ï‹ ιτσ ποσιτιον ον τχε ϭυσ." - -#: grub-core/commands/pcidump.c:42 grub-core/commands/setpci.c:72 -msgid "[bus]:[slot][.func]" -msgstr "[ϭυσ]:[σλοτ][.φυνϲ]" - -#: grub-core/commands/pcidump.c:109 grub-core/commands/pcidump.c:138 -#: grub-core/commands/setpci.c:183 grub-core/commands/setpci.c:214 -#: grub-core/fs/zfs/zfs.c:3794 grub-core/kern/emu/hostdisk.c:458 -#: grub-core/kern/emu/hostdisk.c:473 grub-core/kern/file.c:44 -#, c-format -msgid "missing `%c' symbol" -msgstr "μισσινγ `%c' σϋμϭολ" - -#: grub-core/commands/pcidump.c:168 -msgid "[-s POSITION] [-d DEVICE]" -msgstr "[-σ ΠΟΣΙΤΙΟÎ] [-δ ΔΕΒΙϲΕ]" - -#: grub-core/commands/pcidump.c:169 -msgid "Show raw dump of the PCI configuration space." -msgstr "Σχοω Ïαω δυμπ οφ τχε ΠϲΙ ϲονφιγυÏατιον σπαϲε." - -#: grub-core/commands/pgp.c:45 -msgid "Skip signature-checking of the public key file." -msgstr "Σκιπ σιγνατυÏε-ϲχεϲκινγ οφ τχε πυϭλιϲ κεϋ φιλε." - -#. TRANSLATORS: it's about GNUPG signatures. -#: grub-core/commands/pgp.c:71 grub-core/commands/pgp.c:81 -#: grub-core/commands/pgp.c:86 grub-core/commands/pgp.c:96 -#: grub-core/commands/pgp.c:103 grub-core/commands/pgp.c:107 -#: grub-core/commands/pgp.c:114 grub-core/commands/pgp.c:119 -#: grub-core/commands/pgp.c:124 grub-core/commands/pgp.c:128 -#: grub-core/commands/pgp.c:268 grub-core/commands/pgp.c:276 -#: grub-core/commands/pgp.c:281 grub-core/commands/pgp.c:289 -#: grub-core/commands/pgp.c:320 grub-core/commands/pgp.c:327 -#: grub-core/commands/pgp.c:332 grub-core/commands/pgp.c:342 -#: grub-core/commands/pgp.c:468 grub-core/commands/pgp.c:471 -#: grub-core/commands/pgp.c:474 grub-core/commands/pgp.c:477 -#: grub-core/commands/pgp.c:484 grub-core/commands/pgp.c:490 -#: grub-core/commands/pgp.c:665 -msgid "bad signature" -msgstr "ϭαδ σιγνατυÏε" - -#. TRANSLATORS: %08x is 32-bit key id. -#: grub-core/commands/pgp.c:636 grub-core/commands/pgp.c:812 -#, c-format -msgid "public key %08x not found" -msgstr "πυϭλιϲ κεϋ %08x νοτ φουνδ" - -#: grub-core/commands/pgp.c:651 grub-core/disk/diskfilter.c:772 -#: grub-core/disk/diskfilter.c:782 grub-core/fs/ntfs.c:404 -#: grub-core/fs/zfs/zfs.c:1933 grub-core/normal/menu.c:428 -#, c-format -msgid "module `%s' isn't loaded" -msgstr "μοδυλε `%s' ισν'Ï„ λοαδεδ" - -#: grub-core/commands/pgp.c:994 -msgid "[-s|--skip-sig] FILE SIGNATURE_FILE [PUBKEY_FILE]" -msgstr "[-σ|--σκιπ-σιγ] ΦΙΛΕ ΣΙΓÎΑΤΥΡΕ_ΦΙΛΕ [ΠΥϬΚΕΫ_ΦΙΛΕ]" - -#: grub-core/commands/pgp.c:995 -msgid "Verify detached signature." -msgstr "ΒεÏιφϋ δεταϲχεδ σιγνατυÏε." - -#: grub-core/commands/pgp.c:998 -msgid "[-s|--skip-sig] PUBKEY_FILE" -msgstr "[-σ|--σκιπ-σιγ] ΠΥϬΚΕΫ_ΦΙΛΕ" - -#: grub-core/commands/pgp.c:999 -msgid "Add PUBKEY_FILE to trusted keys." -msgstr "Αδδ ΠΥϬΚΕΫ_ΦΙΛΕ το Ï„Ïυστεδ κεϋσ." - -#: grub-core/commands/pgp.c:1003 -msgid "Show the list of trusted keys." -msgstr "Σχοω τχε λιστ οφ Ï„Ïυστεδ κεϋσ." - -#: grub-core/commands/pgp.c:1005 -msgid "PUBKEY_ID" -msgstr "ΠΥϬΚΕΫ_ΙΔ" - -#: grub-core/commands/pgp.c:1006 -msgid "Remove PUBKEY_ID from trusted keys." -msgstr "Ρεμοβε ΠΥϬΚΕΫ_ΙΔ φÏομ Ï„Ïυστεδ κεϋσ." - -#: grub-core/commands/probe.c:40 grub-core/commands/tr.c:32 -msgid "Set a variable to return value." -msgstr "Σετ α βαÏιαϭλε το ÏετυÏν βαλυε." - -#. TRANSLATORS: It's a driver that is currently in use to access -#. the diven disk. -#: grub-core/commands/probe.c:43 -msgid "Determine driver." -msgstr "ΔετεÏμινε δÏιβεÏ." - -#: grub-core/commands/probe.c:44 -msgid "Determine partition map type." -msgstr "ΔετεÏμινε παÏτιτιον μαπ τϋπε." - -#: grub-core/commands/probe.c:45 -msgid "Determine filesystem type." -msgstr "ΔετεÏμινε φιλεσϋστεμ τϋπε." - -#: grub-core/commands/probe.c:46 -msgid "Determine filesystem UUID." -msgstr "ΔετεÏμινε φιλεσϋστεμ ΥΥΙΔ." - -#: grub-core/commands/probe.c:47 -msgid "Determine filesystem label." -msgstr "ΔετεÏμινε φιλεσϋστεμ λαϭελ." - -#: grub-core/commands/probe.c:139 grub-core/commands/probe.c:146 -#: util/grub-probe.c:462 -#, c-format -msgid "filesystem `%s' does not support labels" -msgstr "φιλεσϋστεμ `%s' δοεσ νοτ συπποÏÏ„ λαϭελσ" - -#: grub-core/commands/probe.c:165 grub-core/fs/zfs/zfsinfo.c:430 -#: grub-core/loader/i386/bsd.c:169 util/grub-setup.c:223 -msgid "DEVICE" -msgstr "ΔΕΒΙϲΕ" - -#: grub-core/commands/probe.c:166 -msgid "Retrieve device info." -msgstr "ΡετÏιεβε δεβιϲε ινφο." - -#: grub-core/commands/read.c:85 -msgid "[ENVVAR]" -msgstr "[ΕÎΒΒΑΡ]" - -#: grub-core/commands/read.c:86 -msgid "Set variable with user input." -msgstr "Σετ βαÏιαϭλε ωιτχ Ï…ÏƒÎµÏ Î¹Î½Ï€Ï…Ï„." - -#: grub-core/commands/reboot.c:40 -msgid "Reboot the computer." -msgstr "Ρεϭοοτ τχε ϲομπυτεÏ." - -#. TRANSLATORS: in regexp you can mark some -#. groups with parentheses. These groups are -#. then numbered and you can save some of -#. them in variables. In other programs -#. those components aree often referenced with -#. back slash, e.g. \1. Compare -#. sed -e 's,\([a-z][a-z]*\),lowercase=\1,g' -#. The whole matching component is saved in VARNAME, not its number. -#. -#: grub-core/commands/regexp.c:44 -msgid "Store matched component NUMBER in VARNAME." -msgstr "ΣτοÏε ματϲχεδ ϲομπονεντ ÎΥΜϬΕΡ ιν ΒΑΡÎΑΜΕ." - -#: grub-core/commands/regexp.c:45 -msgid "[NUMBER:]VARNAME" -msgstr "[ÎΥΜϬΕΡ:]ΒΑΡÎΑΜΕ" - -#. TRANSLATORS: This are two arguments. So it's -#. two separate units to translate and pay -#. attention not to reverse them. -#: grub-core/commands/regexp.c:157 -msgid "REGEXP STRING" -msgstr "ΡΕΓΕΞΠ ΣΤΡΙÎΓ" - -#: grub-core/commands/regexp.c:158 -msgid "Test if REGEXP matches STRING." -msgstr "Τεστ ιφ ΡΕΓΕΞΠ ματϲχεσ ΣΤΡΙÎΓ." - -#: grub-core/commands/search.c:324 -msgid "NAME [VARIABLE] [HINTS]" -msgstr "ÎΑΜΕ [ΒΑΡΙΑϬΛΕ] [ΧΙÎΤΣ]" - -#: grub-core/commands/search_file.c:4 -msgid "" -"Search devices by file. If VARIABLE is specified, the first device found is " -"set to a variable." -msgstr "" -"ΣεαÏϲχ δεβιϲεσ Ï­Ï‹ φιλε. Ιφ ΒΑΡΙΑϬΛΕ ισ σπεϲιφιεδ, τχε φιÏστ δεβιϲε φουνδ ισ " -"σετ το α βαÏιαϭλε." - -#: grub-core/commands/search_label.c:4 -msgid "" -"Search devices by label. If VARIABLE is specified, the first device found is " -"set to a variable." -msgstr "" -"ΣεαÏϲχ δεβιϲεσ Ï­Ï‹ λαϭελ. Ιφ ΒΑΡΙΑϬΛΕ ισ σπεϲιφιεδ, τχε φιÏστ δεβιϲε φουνδ ισ " -"σετ το α βαÏιαϭλε." - -#: grub-core/commands/search_uuid.c:4 -msgid "" -"Search devices by UUID. If VARIABLE is specified, the first device found is " -"set to a variable." -msgstr "" -"ΣεαÏϲχ δεβιϲεσ Ï­Ï‹ ΥΥΙΔ. Ιφ ΒΑΡΙΑϬΛΕ ισ σπεϲιφιεδ, τχε φιÏστ δεβιϲε φουνδ ισ " -"σετ το α βαÏιαϭλε." - -#: grub-core/commands/search_wrap.c:34 -msgid "Search devices by a file." -msgstr "ΣεαÏϲχ δεβιϲεσ Ï­Ï‹ α φιλε." - -#: grub-core/commands/search_wrap.c:35 -msgid "Search devices by a filesystem label." -msgstr "ΣεαÏϲχ δεβιϲεσ Ï­Ï‹ α φιλεσϋστεμ λαϭελ." - -#: grub-core/commands/search_wrap.c:37 -msgid "Search devices by a filesystem UUID." -msgstr "ΣεαÏϲχ δεβιϲεσ Ï­Ï‹ α φιλεσϋστεμ ΥΥΙΔ." - -#: grub-core/commands/search_wrap.c:40 -msgid "Set a variable to the first device found." -msgstr "Σετ α βαÏιαϭλε το τχε φιÏστ δεβιϲε φουνδ." - -#: grub-core/commands/search_wrap.c:42 -msgid "Do not probe any floppy drive." -msgstr "Δο νοτ Ï€Ïοϭε ανϋ φλοππϋ δÏιβε." - -#: grub-core/commands/search_wrap.c:44 -msgid "" -"First try the device HINT. If HINT ends in comma, also try subpartitions" -msgstr "" -"ΦιÏστ Ï„ÏÏ‹ τχε δεβιϲε ΧΙÎΤ. Ιφ ΧΙÎΤ ενδσ ιν ϲομμα, αλσο Ï„ÏÏ‹ συϭπαÏτιτιονσ" - -#: grub-core/commands/search_wrap.c:45 grub-core/commands/search_wrap.c:49 -#: grub-core/commands/search_wrap.c:53 grub-core/commands/search_wrap.c:57 -#: grub-core/commands/search_wrap.c:61 grub-core/commands/search_wrap.c:65 -msgid "HINT" -msgstr "ΧΙÎΤ" - -#: grub-core/commands/search_wrap.c:47 -msgid "" -"First try the device HINT if currently running on IEEE1275. If HINT ends in " -"comma, also try subpartitions" -msgstr "" -"ΦιÏστ Ï„ÏÏ‹ τχε δεβιϲε ΧΙÎΤ ιφ ϲυÏÏεντλϋ Ïυννινγ ον ΙΕΕΕ1275. Ιφ ΧΙÎΤ ενδσ ιν " -"ϲομμα, αλσο Ï„ÏÏ‹ συϭπαÏτιτιονσ" - -#: grub-core/commands/search_wrap.c:51 -msgid "" -"First try the device HINT if currently running on BIOS. If HINT ends in " -"comma, also try subpartitions" -msgstr "" -"ΦιÏστ Ï„ÏÏ‹ τχε δεβιϲε ΧΙÎΤ ιφ ϲυÏÏεντλϋ Ïυννινγ ον ϬΙΟΣ. Ιφ ΧΙÎΤ ενδσ ιν " -"ϲομμα, αλσο Ï„ÏÏ‹ συϭπαÏτιτιονσ" - -#: grub-core/commands/search_wrap.c:55 -msgid "" -"First try the device HINT if direct hardware access is supported. If HINT " -"ends in comma, also try subpartitions" -msgstr "" -"ΦιÏστ Ï„ÏÏ‹ τχε δεβιϲε ΧΙÎΤ ιφ διÏεϲτ χαÏδωαÏε αϲϲεσσ ισ συπποÏτεδ. Ιφ ΧΙÎΤ " -"ενδσ ιν ϲομμα, αλσο Ï„ÏÏ‹ συϭπαÏτιτιονσ" - -#: grub-core/commands/search_wrap.c:59 -msgid "" -"First try the device HINT if currently running on EFI. If HINT ends in " -"comma, also try subpartitions" -msgstr "" -"ΦιÏστ Ï„ÏÏ‹ τχε δεβιϲε ΧΙÎΤ ιφ ϲυÏÏεντλϋ Ïυννινγ ον ΕΦΙ. Ιφ ΧΙÎΤ ενδσ ιν " -"ϲομμα, αλσο Ï„ÏÏ‹ συϭπαÏτιτιονσ" - -#: grub-core/commands/search_wrap.c:63 -msgid "" -"First try the device HINT if currently running on ARC. If HINT ends in " -"comma, also try subpartitions" -msgstr "" -"ΦιÏστ Ï„ÏÏ‹ τχε δεβιϲε ΧΙÎΤ ιφ ϲυÏÏεντλϋ Ïυννινγ ον ΑΡϲ. Ιφ ΧΙÎΤ ενδσ ιν " -"ϲομμα, αλσο Ï„ÏÏ‹ συϭπαÏτιτιονσ" - -#: grub-core/commands/search_wrap.c:207 -msgid "[-f|-l|-u|-s|-n] [--hint HINT [--hint HINT] ...] NAME" -msgstr "[-φ|-λ|-Ï…|-σ|-ν] [--χιντ ΧΙÎΤ [--χιντ ΧΙÎΤ] ...] ÎΑΜΕ" - -#: grub-core/commands/search_wrap.c:209 -msgid "" -"Search devices by file, filesystem label or filesystem UUID. If --set is " -"specified, the first device found is set to a variable. If no variable name " -"is specified, `root' is used." -msgstr "" -"ΣεαÏϲχ δεβιϲεσ Ï­Ï‹ φιλε, φιλεσϋστεμ λαϭελ Î¿Ï Ï†Î¹Î»ÎµÏƒÏ‹ÏƒÏ„ÎµÎ¼ ΥΥΙΔ. Ιφ --σετ ισ " -"σπεϲιφιεδ, τχε φιÏστ δεβιϲε φουνδ ισ σετ το α βαÏιαϭλε. Ιφ νο βαÏιαϭλε ναμε " -"ισ σπεϲιφιεδ, `Ïοοτ' ισ υσεδ." - -#: grub-core/commands/setpci.c:132 -#, c-format -msgid "Register %x of %x:%02x.%x is %x\n" -msgstr "Î¡ÎµÎ³Î¹ÏƒÏ„ÎµÏ %x οφ %x:%02x.%x ισ %x\n" - -#: grub-core/commands/setpci.c:333 -msgid "[-s POSITION] [-d DEVICE] [-v VAR] REGISTER[=VALUE[:MASK]]" -msgstr "[-σ ΠΟΣΙΤΙΟÎ] [-δ ΔΕΒΙϲΕ] [-β ΒΑΡ] ΡΕΓΙΣΤΕΡ[=ΒΑΛΥΕ[:ΜΑΣΚ]]" - -#: grub-core/commands/setpci.c:335 -msgid "Manipulate PCI devices." -msgstr "Μανιπυλατε ΠϲΙ δεβιϲεσ." - -#: grub-core/commands/sleep.c:32 -msgid "Verbose countdown." -msgstr "ΒεÏϭοσε ϲουντδοων." - -#: grub-core/commands/sleep.c:33 -msgid "Allow to interrupt with ESC." -msgstr "Αλλοω το ιντεÏÏυπτ ωιτχ ΕΣϲ." - -#: grub-core/commands/sleep.c:109 -msgid "NUMBER_OF_SECONDS" -msgstr "ÎΥΜϬΕΡ_ΟΦ_ΣΕϲΟÎΔΣ" - -#: grub-core/commands/sleep.c:110 -msgid "Wait for a specified number of seconds." -msgstr "Ωαιτ Ï†Î¿Ï Î± σπεϲιφιεδ Î½Ï…Î¼Ï­ÎµÏ Î¿Ï† σεϲονδσ." - -#: grub-core/commands/syslinuxcfg.c:50 util/grub-syslinux2cfg.c:66 -msgid "root directory of the syslinux disk [default=/]." -msgstr "Ïοοτ διÏεϲτοÏÏ‹ οφ τχε σϋσλινυξ δισκ [δεφαυλτ=/]." - -#: grub-core/commands/syslinuxcfg.c:53 util/grub-syslinux2cfg.c:72 -msgid "" -"current directory of syslinux [default is parent directory of input file]." -msgstr "" -"ϲυÏÏεντ διÏεϲτοÏÏ‹ οφ σϋσλινυξ [δεφαυλτ ισ παÏεντ διÏεϲτοÏÏ‹ οφ ινπυτ φιλε]." - -#: grub-core/commands/syslinuxcfg.c:55 util/grub-syslinux2cfg.c:75 -msgid "assume input is an isolinux configuration file." -msgstr "ασσυμε ινπυτ ισ αν ισολινυξ ϲονφιγυÏατιον φιλε." - -#: grub-core/commands/syslinuxcfg.c:56 util/grub-syslinux2cfg.c:76 -msgid "assume input is a pxelinux configuration file." -msgstr "ασσυμε ινπυτ ισ α πξελινυξ ϲονφιγυÏατιον φιλε." - -#: grub-core/commands/syslinuxcfg.c:57 util/grub-syslinux2cfg.c:77 -msgid "assume input is a syslinux configuration file." -msgstr "ασσυμε ινπυτ ισ α σϋσλινυξ ϲονφιγυÏατιον φιλε." - -#. TRANSLATORS: "syslinux config" means -#. "config as used by syslinux". -#: grub-core/commands/syslinuxcfg.c:189 -msgid "Execute syslinux config in same context" -msgstr "Εξεϲυτε σϋσλινυξ ϲονφιγ ιν σαμε ϲοντεξτ" - -#: grub-core/commands/syslinuxcfg.c:195 -msgid "Execute syslinux config in new context" -msgstr "Εξεϲυτε σϋσλινυξ ϲονφιγ ιν νεω ϲοντεξτ" - -#: grub-core/commands/syslinuxcfg.c:201 -msgid "Execute syslinux config in same context taking only menu entries" -msgstr "Εξεϲυτε σϋσλινυξ ϲονφιγ ιν σαμε ϲοντεξτ τακινγ ονλϋ μενυ εντÏιεσ" - -#: grub-core/commands/syslinuxcfg.c:207 -msgid "Execute syslinux config in new context taking only menu entries" -msgstr "Εξεϲυτε σϋσλινυξ ϲονφιγ ιν νεω ϲοντεξτ τακινγ ονλϋ μενυ εντÏιεσ" - -#: grub-core/commands/terminal.c:90 -msgid "no terminal specified" -msgstr "νο τεÏμιναλ σπεϲιφιεδ" - -#: grub-core/commands/terminal.c:112 grub-core/commands/terminal.c:139 -#, c-format -msgid "terminal `%s' isn't found" -msgstr "τεÏμιναλ `%s' ισν'Ï„ φουνδ" - -#: grub-core/commands/terminal.c:244 -msgid "Active input terminals:" -msgstr "Αϲτιβε ινπυτ τεÏμιναλσ:" - -#: grub-core/commands/terminal.c:245 -msgid "Available input terminals:" -msgstr "Αβαιλαϭλε ινπυτ τεÏμιναλσ:" - -#: grub-core/commands/terminal.c:261 -msgid "Active output terminals:" -msgstr "Αϲτιβε ουτπυτ τεÏμιναλσ:" - -#: grub-core/commands/terminal.c:262 -msgid "Available output terminals:" -msgstr "Αβαιλαϭλε ουτπυτ τεÏμιναλσ:" - -#: grub-core/commands/terminal.c:271 grub-core/commands/terminal.c:276 -msgid "[--append|--remove] [TERMINAL1] [TERMINAL2] ..." -msgstr "[--αππενδ|--Ïεμοβε] [ΤΕΡΜΙÎΑΛ1] [ΤΕΡΜΙÎΑΛ2] ..." - -#: grub-core/commands/terminal.c:273 -msgid "List or select an input terminal." -msgstr "Λιστ Î¿Ï ÏƒÎµÎ»ÎµÏ²Ï„ αν ινπυτ τεÏμιναλ." - -#: grub-core/commands/terminal.c:278 -msgid "List or select an output terminal." -msgstr "Λιστ Î¿Ï ÏƒÎµÎ»ÎµÏ²Ï„ αν ουτπυτ τεÏμιναλ." - -#: grub-core/commands/test.c:444 -msgid "EXPRESSION ]" -msgstr "ΕΞΠΡΕΣΣΙΟΠ]" - -#: grub-core/commands/test.c:444 grub-core/commands/test.c:447 -msgid "Evaluate an expression." -msgstr "Εβαλυατε αν εξπÏεσσιον." - -#: grub-core/commands/test.c:447 -msgid "EXPRESSION" -msgstr "ΕΞΠΡΕΣΣΙΟÎ" - -#: grub-core/commands/testload.c:164 -msgid "Load the same file in multiple ways." -msgstr "Λοαδ τχε σαμε φιλε ιν μυλτιπλε ωαϋσ." - -#: grub-core/commands/testspeed.c:35 -msgid "Specify size for each read operation" -msgstr "Σπεϲιφϋ σιζε Ï†Î¿Ï ÎµÎ±Ï²Ï‡ Ïεαδ οπεÏατιον" - -#: grub-core/commands/testspeed.c:58 -msgid "invalid block size" -msgstr "ινβαλιδ ϭλοϲκ σιζε" - -#: grub-core/commands/testspeed.c:80 -#, c-format -msgid "File size: %s\n" -msgstr "Φιλε σιζε: %s\n" - -#: grub-core/commands/testspeed.c:83 -#, c-format -msgid "Elapsed time: %d.%03d s \n" -msgstr "Ελαπσεδ τιμε: %d.%03d σ \n" - -#: grub-core/commands/testspeed.c:92 -#, c-format -msgid "Speed: %s \n" -msgstr "Σπεεδ: %s \n" - -#: grub-core/commands/testspeed.c:107 -msgid "[-s SIZE] FILENAME" -msgstr "[-σ ΣΙΖΕ] ΦΙΛΕÎΑΜΕ" - -#: grub-core/commands/testspeed.c:108 -msgid "Test file read speed." -msgstr "Τεστ φιλε Ïεαδ σπεεδ." - -#: grub-core/commands/time.c:38 grub-core/script/execute.c:974 -msgid "no command is specified" -msgstr "νο ϲομμανδ ισ σπεϲιφιεδ" - -#: grub-core/commands/time.c:50 -#, c-format -msgid "Elapsed time: %d.%03d seconds \n" -msgstr "Ελαπσεδ τιμε: %d.%03d σεϲονδσ \n" - -#: grub-core/commands/time.c:61 -msgid "COMMAND [ARGS]" -msgstr "ϲΟΜΜΑÎΔ [ΑΡΓΣ]" - -#: grub-core/commands/time.c:62 -msgid "Measure time used by COMMAND" -msgstr "ΜεασυÏε τιμε υσεδ Ï­Ï‹ ϲΟΜΜΑÎΔ" - -#: grub-core/commands/tr.c:33 -msgid "Translate to upper case." -msgstr "ΤÏανσλατε το Ï…Ï€Ï€ÎµÏ Ï²Î±ÏƒÎµ." - -#: grub-core/commands/tr.c:34 -msgid "Translate to lower case." -msgstr "ΤÏανσλατε το Î»Î¿Ï‰ÎµÏ Ï²Î±ÏƒÎµ." - -#: grub-core/commands/tr.c:119 -msgid "[OPTIONS] [SET1] [SET2] [STRING]" -msgstr "[ΟΠΤΙΟÎΣ] [ΣΕΤ1] [ΣΕΤ2] [ΣΤΡΙÎΓ]" - -#: grub-core/commands/tr.c:120 -msgid "Translate SET1 characters to SET2 in STRING." -msgstr "ΤÏανσλατε ΣΕΤ1 ϲχαÏαϲτεÏσ το ΣΕΤ2 ιν ΣΤΡΙÎΓ." - -#. TRANSLATORS: it's a command description. -#: grub-core/commands/true.c:50 -msgid "Do nothing, successfully." -msgstr "Δο νοτχινγ, συϲϲεσσφυλλϋ." - -#. TRANSLATORS: it's a command description. -#: grub-core/commands/true.c:54 -msgid "Do nothing, unsuccessfully." -msgstr "Δο νοτχινγ, υνσυϲϲεσσφυλλϋ." - -#: grub-core/commands/usbtest.c:221 -msgid "Test USB support." -msgstr "Τεστ ΥΣϬ συπποÏÏ„." - -#: grub-core/commands/verifiers.c:120 -#, c-format -msgid "verification requested but nobody cares: %s" -msgstr "βεÏιφιϲατιον Ïεϗυεστεδ Ï­Ï…Ï„ νοϭοδϋ ϲαÏεσ: %s" - -#: grub-core/commands/verifiers.c:140 -msgid "big file signature isn't implemented yet" -msgstr "ϭιγ φιλε σιγνατυÏε ισν'Ï„ ιμπλεμεντεδ ϋετ" - -#: grub-core/commands/videoinfo.c:61 -msgid "Text-only " -msgstr "Τεξτ-ονλϋ " - -#. TRANSLATORS: "Direct color" is a mode when the color components -#. are written dirrectly into memory. -#: grub-core/commands/videoinfo.c:66 -#, c-format -msgid "Direct color, mask: %d/%d/%d/%d pos: %d/%d/%d/%d" -msgstr "ΔιÏεϲτ ϲολοÏ, μασκ: %d/%d/%d/%d ποσ: %d/%d/%d/%d" - -#. TRANSLATORS: In "paletted color" mode you write the index of the color -#. in the palette. Synonyms include "packed pixel". -#: grub-core/commands/videoinfo.c:78 -msgid "Paletted " -msgstr "Παλεττεδ " - -#: grub-core/commands/videoinfo.c:80 -msgid "YUV " -msgstr "ΫΥΒ " - -#. TRANSLATORS: "Planar" is the video memory where you have to write -#. in several different banks "plans" to control the different color -#. components of the same pixel. -#: grub-core/commands/videoinfo.c:85 -msgid "Planar " -msgstr "Î Î»Î±Î½Î±Ï " - -#: grub-core/commands/videoinfo.c:87 -msgid "Hercules " -msgstr "ΧεÏϲυλεσ " - -#: grub-core/commands/videoinfo.c:89 -msgid "CGA " -msgstr "ϲΓΑ " - -#. TRANSLATORS: Non-chain 4 is a 256-color planar -#. (unchained) video memory mode. -#: grub-core/commands/videoinfo.c:93 -msgid "Non-chain 4 " -msgstr "Îον-ϲχαιν 4 " - -#: grub-core/commands/videoinfo.c:95 -msgid "Monochrome " -msgstr "ΜονοϲχÏομε " - -#: grub-core/commands/videoinfo.c:97 -msgid "Unknown video mode " -msgstr "Υνκνοων βιδεο μοδε " - -#: grub-core/commands/videoinfo.c:111 -msgid " EDID checksum invalid" -msgstr " ΕΔΙΔ ϲχεϲκσυμ ινβαλιδ" - -#: grub-core/commands/videoinfo.c:116 -#, c-format -msgid " EDID version: %u.%u\n" -msgstr " ΕΔΙΔ βεÏσιον: %u.%u\n" - -#: grub-core/commands/videoinfo.c:120 -#, c-format -msgid " Preferred mode: %ux%u\n" -msgstr " ΠÏεφεÏÏεδ μοδε: %uξ%u\n" - -#: grub-core/commands/videoinfo.c:123 -msgid " No preferred mode available\n" -msgstr " Îο Ï€ÏεφεÏÏεδ μοδε αβαιλαϭλε\n" - -#: grub-core/commands/videoinfo.c:146 grub-core/video/video.c:490 -#: grub-core/video/video.c:498 grub-core/video/video.c:509 -#: grub-core/video/video.c:520 grub-core/video/video.c:528 -#, c-format -msgid "invalid video mode specification `%s'" -msgstr "ινβαλιδ βιδεο μοδε σπεϲιφιϲατιον `%s'" - -#: grub-core/commands/videoinfo.c:168 -msgid "List of supported video modes:" -msgstr "Λιστ οφ συπποÏτεδ βιδεο μοδεσ:" - -#: grub-core/commands/videoinfo.c:169 -msgid "Legend: mask/position=red/green/blue/reserved" -msgstr "Λεγενδ: μασκ/ποσιτιον=Ïεδ/γÏεεν/ϭλυε/ÏεσεÏβεδ" - -#: grub-core/commands/videoinfo.c:176 -#, c-format -msgid "Adapter `%s':\n" -msgstr "Î‘Î´Î±Ï€Ï„ÎµÏ `%s':\n" - -#: grub-core/commands/videoinfo.c:180 -msgid " No info available" -msgstr " Îο ινφο αβαιλαϭλε" - -#: grub-core/commands/videoinfo.c:198 -msgid " Failed to initialize video adapter" -msgstr " Φαιλεδ το ινιτιαλιζε βιδεο αδαπτεÏ" - -#. TRANSLATORS: "x" has to be entered in, -#. like an identifier, so please don't -#. use better Unicode codepoints. -#: grub-core/commands/videoinfo.c:239 grub-core/commands/videoinfo.c:248 -msgid "[WxH[xD]]" -msgstr "[ΩξΧ[ξΔ]]" - -#: grub-core/commands/videoinfo.c:240 grub-core/commands/videoinfo.c:249 -msgid "" -"List available video modes. If resolution is given show only modes matching " -"it." -msgstr "" -"Λιστ αβαιλαϭλε βιδεο μοδεσ. Ιφ Ïεσολυτιον ισ γιβεν σχοω ονλϋ μοδεσ ματϲχινγ " -"ιτ." - -#. TRANSLATORS: "x" has to be entered in, -#. like an identifier, so please don't -#. use better Unicode codepoints. -#: grub-core/commands/videotest.c:225 -msgid "[WxH]" -msgstr "[ΩξΧ]" - -#. TRANSLATORS: Here, on the other hand, it's -#. nicer to use unicode cross instead of x. -#: grub-core/commands/videotest.c:228 -msgid "Test video subsystem in mode WxH." -msgstr "Τεστ βιδεο συϭσϋστεμ ιν μοδε ΩξΧ." - -#: grub-core/commands/videotest.c:231 -msgid "Test video subsystem." -msgstr "Τεστ βιδεο συϭσϋστεμ." - -#: grub-core/commands/xen/lsxen.c:80 grub-core/commands/xen/lsxen.c:82 -msgid "[DIR]" -msgstr "[ΔΙΡ]" - -#: grub-core/commands/xen/lsxen.c:81 grub-core/commands/xen/lsxen.c:83 -msgid "List Xen storage." -msgstr "Λιστ Ξεν στοÏαγε." - -#. TRANSLATORS: GRUBUUID stands for "filesystem -#. UUID as used in GRUB". -#: grub-core/commands/xnu_uuid.c:110 -msgid "[-l] GRUBUUID [VARNAME]" -msgstr "[-λ] ΓΡΥϬΥΥΙΔ [ΒΑΡÎΑΜΕ]" - -#: grub-core/commands/xnu_uuid.c:111 -msgid "" -"Transform 64-bit UUID to format suitable for XNU. If -l is given keep it " -"lowercase as done by blkid." -msgstr "" -"ΤÏανσφοÏμ 64-ϭιτ ΥΥΙΔ το φοÏματ συιταϭλε Ï†Î¿Ï ÎžÎÎ¥. Ιφ -λ ισ γιβεν κεεπ ιτ " -"λοωεÏϲασε ασ δονε Ï­Ï‹ ϭλκιδ." - -#: grub-core/disk/arc/arcdisk.c:248 grub-core/disk/efi/efidisk.c:603 -#: grub-core/disk/i386/pc/biosdisk.c:498 grub-core/disk/i386/pc/biosdisk.c:543 -#: grub-core/disk/ieee1275/nand.c:198 grub-core/disk/ieee1275/obdisk.c:527 -#: grub-core/disk/ieee1275/ofdisk.c:586 -#, c-format -msgid "failure reading sector 0x%llx from `%s'" -msgstr "φαιλυÏε Ïεαδινγ ÏƒÎµÏ²Ï„Î¿Ï 0ξ%llx φÏομ `%s'" - -#: grub-core/disk/arc/arcdisk.c:284 grub-core/disk/efi/efidisk.c:626 -#: grub-core/disk/i386/pc/biosdisk.c:548 grub-core/disk/ieee1275/ofdisk.c:606 -#, c-format -msgid "failure writing sector 0x%llx to `%s'" -msgstr "φαιλυÏε ωÏιτινγ ÏƒÎµÏ²Ï„Î¿Ï 0ξ%llx το `%s'" - -#: grub-core/disk/cryptodisk.c:40 -msgid "Mount by UUID." -msgstr "Μουντ Ï­Ï‹ ΥΥΙΔ." - -#. TRANSLATORS: It's still restricted to cryptodisks only. -#: grub-core/disk/cryptodisk.c:42 -msgid "Mount all." -msgstr "Μουντ αλλ." - -#: grub-core/disk/cryptodisk.c:43 -msgid "Mount all volumes with `boot' flag set." -msgstr "Μουντ αλλ βολυμεσ ωιτχ `ϭοοτ' φλαγ σετ." - -#. TRANSLATORS: The first %s is the file being looked at, the second %s is -#. the error message. -#: grub-core/disk/cryptodisk.c:526 grub-core/kern/emu/hostdisk.c:152 -#: grub-core/kern/emu/hostdisk.c:262 grub-core/kern/emu/hostdisk.c:434 -#: grub-core/kern/emu/misc.c:168 grub-core/kern/emu/misc.c:174 -#: grub-core/kern/emu/misc.c:196 grub-core/osdep/bsd/getroot.c:92 -#: grub-core/osdep/bsd/getroot.c:168 grub-core/osdep/hurd/getroot.c:68 -#: grub-core/osdep/linux/blocklist.c:65 grub-core/osdep/linux/getroot.c:150 -#: grub-core/osdep/linux/hostdisk.c:194 grub-core/osdep/linux/hostdisk.c:421 -#: grub-core/osdep/linux/ofpath.c:417 grub-core/osdep/linux/ofpath.c:422 -#: grub-core/osdep/linux/ofpath.c:517 grub-core/osdep/linux/ofpath.c:530 -#: grub-core/osdep/sun/getroot.c:110 grub-core/osdep/windows/blocklist.c:98 -#: grub-core/tests/video_checksum.c:279 util/editenv.c:46 util/glue-efi.c:115 -#: util/glue-efi.c:120 util/glue-efi.c:130 util/grub-editenv.c:138 -#: util/grub-editenv.c:192 util/grub-file.c:83 util/grub-fstest.c:128 -#: util/grub-fstest.c:568 util/grub-install-common.c:92 -#: util/grub-install-common.c:94 util/grub-install-common.c:101 -#: util/grub-install-common.c:529 util/grub-menulst2cfg.c:53 -#: util/grub-menulst2cfg.c:68 util/grub-mkimage.c:292 util/grub-mklayout.c:504 -#: util/grub-mklayout.c:516 util/grub-mknetdir.c:133 util/grub-mknetdir.c:151 -#: util/grub-mkrescue.c:627 util/grub-mkrescue.c:631 util/grub-mkrescue.c:879 -#: util/grub-mkrescue.c:883 util/grub-mkstandalone.c:253 util/grub-mount.c:498 -#: util/grub-render-label.c:169 util/grub-script-check.c:175 -#: util/grub-syslinux2cfg.c:181 util/grub-syslinux2cfg.c:191 -#: util/grub-syslinux2cfg.c:212 util/grub-syslinux2cfg.c:228 util/misc.c:91 -#: util/render-label.c:76 util/render-label.c:163 util/render-label.c:174 -#: util/resolve.c:246 util/setup.c:783 -#, c-format -msgid "cannot open `%s': %s" -msgstr "ϲαννοτ οπεν `%s': %s" - -#: grub-core/disk/cryptodisk.c:583 grub-core/disk/cryptodisk.c:628 -#: grub-core/kern/emu/hostdisk.c:270 grub-core/kern/emu/hostfs.c:142 -#: grub-core/osdep/linux/hostdisk.c:456 util/grub-editenv.c:143 -#: util/grub-editenv.c:149 util/grub-fstest.c:320 util/misc.c:111 -#, c-format -msgid "cannot seek `%s': %s" -msgstr "ϲαννοτ σεεκ `%s': %s" - -#: grub-core/disk/cryptodisk.c:1144 -msgid "SOURCE|-u UUID|-a|-b" -msgstr "ΣΟΥΡϲΕ|-Ï… ΥΥΙΔ|-α|-Ï­" - -#: grub-core/disk/cryptodisk.c:1145 -msgid "Mount a crypto device." -msgstr "Μουντ α ϲÏϋπτο δεβιϲε." - -#. TRANSLATORS: This message kicks in during the detection of -#. which modules needs to be included in core image. This happens -#. in the case of degraded RAID and means that autodetection may -#. fail to include some of modules. It's an installation time -#. message, not runtime message. -#: grub-core/disk/diskfilter.c:343 grub-core/disk/diskfilter.c:376 -#, c-format -msgid "" -"Couldn't find physical volume `%s'. Some modules may be missing from core " -"image." -msgstr "" -"ϲουλδν'Ï„ φινδ πχϋσιϲαλ βολυμε `%s'. Σομε μοδυλεσ μαϋ ϭε μισσινγ φÏομ ϲοÏε " -"ιμαγε." - -#: grub-core/disk/diskfilter.c:480 -#, c-format -msgid "physical volume %s not found" -msgstr "πχϋσιϲαλ βολυμε %s νοτ φουνδ" - -#: grub-core/disk/efi/efidisk.c:600 grub-core/disk/efi/efidisk.c:623 -#, c-format -msgid "no media in `%s'" -msgstr "νο μεδια ιν `%s'" - -#: grub-core/disk/geli.c:75 -msgid "Couldn't load sha256" -msgstr "ϲουλδν'Ï„ λοαδ σχα256" - -#: grub-core/disk/geli.c:85 -msgid "Couldn't load sha512" -msgstr "ϲουλδν'Ï„ λοαδ σχα512" - -#: grub-core/disk/geli.c:216 grub-core/disk/geli.c:220 -msgid "couldn't read ELI metadata" -msgstr "ϲουλδν'Ï„ Ïεαδ ΕΛΙ μεταδατα" - -#: grub-core/disk/geli.c:231 -msgid "wrong ELI magic or version" -msgstr "ωÏονγ ΕΛΙ μαγιϲ Î¿Ï Î²ÎµÏσιον" - -#: grub-core/disk/geli.c:435 grub-core/disk/luks.c:329 -msgid "Attempting to decrypt master key..." -msgstr "Αττεμπτινγ το δεϲÏϋπτ Î¼Î±ÏƒÏ„ÎµÏ ÎºÎµÏ‹..." - -#: grub-core/disk/geli.c:441 grub-core/disk/luks.c:347 -#, c-format -msgid "Enter passphrase for %s%s%s (%s): " -msgstr "Î•Î½Ï„ÎµÏ Ï€Î±ÏƒÏƒÏ€Ï‡Ïασε Ï†Î¿Ï %s%s%s (%s): " - -#. TRANSLATORS: It's a cryptographic key slot: one element of an array -#. where each element is either empty or holds a key. -#: grub-core/disk/geli.c:530 grub-core/disk/luks.c:451 -#, c-format -msgid "Slot %d opened\n" -msgstr "Σλοτ %d οπενεδ\n" - -#: grub-core/disk/i386/pc/biosdisk.c:470 grub-core/disk/i386/pc/biosdisk.c:524 -#: grub-core/disk/i386/pc/biosdisk.c:534 grub-core/kern/disk_common.c:47 -#, c-format -msgid "attempt to read or write outside of disk `%s'" -msgstr "αττεμπτ το Ïεαδ Î¿Ï Ï‰Ïιτε ουτσιδε οφ δισκ `%s'" - -#: grub-core/disk/i386/pc/biosdisk.c:491 grub-core/disk/i386/pc/biosdisk.c:611 -#: grub-core/disk/scsi.c:726 -msgid "cannot write to CD-ROM" -msgstr "ϲαννοτ ωÏιτε το ϲΔ-ΡΟΜ" - -#: grub-core/disk/i386/pc/biosdisk.c:662 -msgid "" -"Native disk drivers are in use. Refusing to use firmware disk interface." -msgstr "" -"Îατιβε δισκ δÏιβεÏσ αÏε ιν υσε. Ρεφυσινγ το υσε φιÏμωαÏε δισκ ιντεÏφαϲε." - -#. TRANSLATORS: it's a partition for embedding, -#. not a partition embed into something. GRUB -#. install tools put core.img into a place -#. usable for bootloaders (called generically -#. "embedding zone") and this operation is -#. called "embedding". -#: grub-core/disk/ldm.c:1015 -msgid "your LDM Embedding Partition is too small; embedding won't be possible" -msgstr "Ï‹Î¿Ï…Ï Î›Î”Îœ Εμϭεδδινγ ΠαÏτιτιον ισ τοο σμαλλ; εμϭεδδινγ ωον'Ï„ ϭε ποσσιϭλε" - -#. TRANSLATORS: it's a partition for embedding, -#. not a partition embed into something. -#: grub-core/disk/ldm.c:1033 -msgid "this LDM has no Embedding Partition; embedding won't be possible" -msgstr "τχισ ΛΔΜ χασ νο Εμϭεδδινγ ΠαÏτιτιον; εμϭεδδινγ ωον'Ï„ ϭε ποσσιϭλε" - -#. TRANSLATORS: The disk is simply removed from the list of available ones, -#. not wiped, avoid to scare user. -#: grub-core/disk/loopback.c:45 -msgid "Delete the specified loopback drive." -msgstr "Δελετε τχε σπεϲιφιεδ λοοπϭαϲκ δÏιβε." - -#: grub-core/disk/loopback.c:237 -msgid "[-d] DEVICENAME FILE." -msgstr "[-δ] ΔΕΒΙϲΕÎΑΜΕ ΦΙΛΕ." - -#. TRANSLATORS: The file itself is not destroyed -#. or transformed into drive. -#: grub-core/disk/loopback.c:240 -msgid "Make a virtual drive from a file." -msgstr "Μακε α βιÏτυαλ δÏιβε φÏομ α φιλε." - -#: grub-core/efiemu/i386/loadcore32.c:111 -#: grub-core/efiemu/i386/loadcore64.c:125 grub-core/kern/arm/dl.c:256 -#: grub-core/kern/arm64/dl.c:187 grub-core/kern/i386/dl.c:75 -#: grub-core/kern/ia64/dl.c:140 grub-core/kern/mips/dl.c:258 -#: grub-core/kern/powerpc/dl.c:163 grub-core/kern/riscv/dl.c:334 -#: grub-core/kern/sparc64/dl.c:180 grub-core/kern/x86_64/dl.c:110 -#: util/grub-mkimagexx.c:756 util/grub-mkimagexx.c:881 -#: util/grub-mkimagexx.c:945 util/grub-mkimagexx.c:1026 -#: util/grub-mkimagexx.c:1120 util/grub-mkimagexx.c:1222 -#: util/grub-mkimagexx.c:1413 util/grub-mkimagexx.c:1628 -#: util/grub-mkimagexx.c:1665 util/grub-mkimagexx.c:1697 -#: util/grub-mkimagexx.c:1767 util/grub-mkimagexx.c:1797 -#, c-format -msgid "relocation 0x%x is not implemented yet" -msgstr "Ïελοϲατιον 0ξ%x ισ νοτ ιμπλεμεντεδ ϋετ" - -#: grub-core/efiemu/loadcore.c:200 grub-core/efiemu/loadcore.c:237 -#: grub-core/loader/i386/bsdXX.c:317 util/grub-mkimagexx.c:2360 -msgid "no symbol table" -msgstr "νο σϋμϭολ ταϭλε" - -#: grub-core/efiemu/loadcore.c:346 grub-core/kern/dl.c:609 -#: grub-core/loader/ia64/efi/linux.c:345 grub-core/loader/mips/linux.c:248 -#: grub-core/loader/multiboot_elfxx.c:76 -#: grub-core/loader/powerpc/ieee1275/linux.c:280 -#: grub-core/loader/sparc64/ieee1275/linux.c:320 -msgid "this ELF file is not of the right type" -msgstr "τχισ ΕΛΦ φιλε ισ νοτ οφ τχε Ïιγχτ τϋπε" - -#: grub-core/efiemu/main.c:313 -msgid "Load and initialize EFI emulator." -msgstr "Λοαδ ανδ ινιτιαλιζε ΕΦΙ εμυλατοÏ." - -#: grub-core/efiemu/main.c:317 -msgid "Finalize loading of EFI emulator." -msgstr "Φιναλιζε λοαδινγ οφ ΕΦΙ εμυλατοÏ." - -#: grub-core/efiemu/main.c:320 -msgid "Unload EFI emulator." -msgstr "Υνλοαδ ΕΦΙ εμυλατοÏ." - -#: grub-core/efiemu/symbols.c:92 grub-core/kern/dl.c:376 -#, c-format -msgid "symbol `%s' not found" -msgstr "σϋμϭολ `%s' νοτ φουνδ" - -#: grub-core/font/font_cmd.c:52 -msgid "Loaded fonts:" -msgstr "Λοαδεδ φοντσ:" - -#: grub-core/font/font_cmd.c:74 -msgid "FILE..." -msgstr "ΦΙΛΕ..." - -#: grub-core/font/font_cmd.c:75 -msgid "Specify one or more font files to load." -msgstr "Σπεϲιφϋ ονε Î¿Ï Î¼Î¿Ïε φοντ φιλεσ το λοαδ." - -#: grub-core/font/font_cmd.c:78 -msgid "List the loaded fonts." -msgstr "Λιστ τχε λοαδεδ φοντσ." - -#: grub-core/fs/archelp.c:216 grub-core/fs/archelp.c:278 -#: grub-core/fs/btrfs.c:1815 grub-core/fs/fshelp.c:227 grub-core/fs/jfs.c:736 -#: grub-core/fs/minix.c:369 grub-core/fs/ufs.c:454 -msgid "too deep nesting of symlinks" -msgstr "τοο δεεπ νεστινγ οφ σϋμλινκσ" - -#: grub-core/fs/bfs.c:228 grub-core/fs/fshelp.c:368 grub-core/fs/minix.c:270 -#: grub-core/kern/file.c:156 -msgid "attempt to read past the end of file" -msgstr "αττεμπτ το Ïεαδ παστ τχε ενδ οφ φιλε" - -#: grub-core/fs/btrfs.c:1698 grub-core/fs/btrfs.c:1957 -#: grub-core/fs/fshelp.c:189 grub-core/fs/fshelp.c:309 grub-core/fs/jfs.c:431 -#: grub-core/fs/minix.c:414 grub-core/fs/minix.c:562 -#: grub-core/fs/reiserfs.c:732 grub-core/fs/ufs.c:531 grub-core/fs/ufs.c:671 -#: grub-core/fs/zfs/zfs.c:2831 grub-core/fs/zfs/zfs.c:4247 -msgid "not a directory" -msgstr "νοτ α διÏεϲτοÏÏ‹" - -#: grub-core/fs/btrfs.c:2063 grub-core/fs/fshelp.c:307 grub-core/fs/jfs.c:835 -#: grub-core/fs/zfs/zfs.c:3801 -msgid "not a regular file" -msgstr "νοτ α ÏÎµÎ³Ï…Î»Î±Ï Ï†Î¹Î»Îµ" - -#: grub-core/fs/btrfs.c:2157 grub-core/fs/zfs/zfs.c:4333 -#: grub-core/partmap/msdos.c:400 -msgid "your core.img is unusually large. It won't fit in the embedding area" -msgstr "Ï‹Î¿Ï…Ï Ï²Î¿Ïε.ιμγ ισ υνυσυαλλϋ λαÏγε. Ιτ ωον'Ï„ φιτ ιν τχε εμϭεδδινγ αÏεα" - -#: grub-core/fs/fshelp.c:281 grub-core/fs/minix.c:630 grub-core/fs/ufs.c:661 -#: grub-core/fs/ufs.c:757 grub-core/kern/fs.c:168 grub-core/kern/fs.c:180 -#, c-format -msgid "invalid file name `%s'" -msgstr "ινβαλιδ φιλε ναμε `%s'" - -#: grub-core/fs/zfs/zfs.c:453 -msgid "checksum verification failed" -msgstr "ϲχεϲκσυμ βεÏιφιϲατιον φαιλεδ" - -#: grub-core/fs/zfs/zfs.c:1465 -msgid "couldn't find a necessary member device of multi-device filesystem" -msgstr "ϲουλδν'Ï„ φινδ α νεϲεσσαÏÏ‹ Î¼ÎµÎ¼Ï­ÎµÏ Î´ÎµÎ²Î¹Ï²Îµ οφ μυλτι-δεβιϲε φιλεσϋστεμ" - -#: grub-core/fs/zfs/zfscrypt.c:292 -msgid "no decryption key available" -msgstr "νο δεϲÏϋπτιον κεϋ αβαιλαϭλε" - -#: grub-core/fs/zfs/zfscrypt.c:304 -msgid "MAC verification failed" -msgstr "ΜΑϲ βεÏιφιϲατιον φαιλεδ" - -#: grub-core/fs/zfs/zfscrypt.c:413 -msgid "Assume input is raw." -msgstr "Ασσυμε ινπυτ ισ Ïαω." - -#: grub-core/fs/zfs/zfscrypt.c:414 -msgid "Assume input is hex." -msgstr "Ασσυμε ινπυτ ισ χεξ." - -#: grub-core/fs/zfs/zfscrypt.c:415 -msgid "Assume input is passphrase." -msgstr "Ασσυμε ινπυτ ισ πασσπχÏασε." - -#: grub-core/fs/zfs/zfscrypt.c:437 util/grub-fstest.c:553 util/grub-mount.c:483 -msgid "Enter ZFS password: " -msgstr "Î•Î½Ï„ÎµÏ Î–Î¦Î£ πασσωοÏδ: " - -#: grub-core/fs/zfs/zfscrypt.c:476 -msgid "[-h|-p|-r] [FILE]" -msgstr "[-χ|-Ï€|-Ï] [ΦΙΛΕ]" - -#: grub-core/fs/zfs/zfscrypt.c:477 -msgid "Import ZFS wrapping key stored in FILE." -msgstr "ΙμποÏÏ„ ΖΦΣ ωÏαππινγ κεϋ στοÏεδ ιν ΦΙΛΕ." - -#: grub-core/fs/zfs/zfsinfo.c:51 -msgid "Virtual device is removed" -msgstr "ΒιÏτυαλ δεβιϲε ισ Ïεμοβεδ" - -#: grub-core/fs/zfs/zfsinfo.c:57 -msgid "Virtual device is faulted" -msgstr "ΒιÏτυαλ δεβιϲε ισ φαυλτεδ" - -#: grub-core/fs/zfs/zfsinfo.c:63 -msgid "Virtual device is offline" -msgstr "ΒιÏτυαλ δεβιϲε ισ οφφλινε" - -#. TRANSLATORS: degraded doesn't mean broken but that some of -#. component are missing but virtual device as whole is still usable. -#: grub-core/fs/zfs/zfsinfo.c:70 -msgid "Virtual device is degraded" -msgstr "ΒιÏτυαλ δεβιϲε ισ δεγÏαδεδ" - -#: grub-core/fs/zfs/zfsinfo.c:73 -msgid "Virtual device is online" -msgstr "ΒιÏτυαλ δεβιϲε ισ ονλινε" - -#: grub-core/fs/zfs/zfsinfo.c:89 -msgid "Incorrect virtual device: no type available" -msgstr "ΙνϲοÏÏεϲτ βιÏτυαλ δεβιϲε: νο τϋπε αβαιλαϭλε" - -#. TRANSLATORS: The virtual devices form a tree (in graph-theoretical -#. sense). The nodes like mirror or raidz have children: member devices. -#. The "real" devices which actually store data are called "leafs" -#. (again borrowed from graph theory) and can be either disks -#. (or partitions) or files. -#: grub-core/fs/zfs/zfsinfo.c:105 -msgid "Leaf virtual device (file or disk)" -msgstr "Λεαφ βιÏτυαλ δεβιϲε (φιλε Î¿Ï Î´Î¹ÏƒÎº)" - -#: grub-core/fs/zfs/zfsinfo.c:113 -msgid "Bootpath: unavailable\n" -msgstr "Ϭοοτπατχ: υναβαιλαϭλε\n" - -#: grub-core/fs/zfs/zfsinfo.c:115 -#, c-format -msgid "Bootpath: %s\n" -msgstr "Ϭοοτπατχ: %s\n" - -#: grub-core/fs/zfs/zfsinfo.c:120 -msgid "Path: unavailable" -msgstr "Πατχ: υναβαιλαϭλε" - -#: grub-core/fs/zfs/zfsinfo.c:122 -#, c-format -msgid "Path: %s\n" -msgstr "Πατχ: %s\n" - -#: grub-core/fs/zfs/zfsinfo.c:127 -msgid "Devid: unavailable" -msgstr "Δεβιδ: υναβαιλαϭλε" - -#: grub-core/fs/zfs/zfsinfo.c:129 -#, c-format -msgid "Devid: %s\n" -msgstr "Δεβιδ: %s\n" - -#: grub-core/fs/zfs/zfsinfo.c:148 -msgid "This VDEV is a mirror" -msgstr "Τχισ ΒΔΕΒ ισ α μιÏÏοÏ" - -#: grub-core/fs/zfs/zfsinfo.c:153 -#, c-format -msgid "This VDEV is a RAIDZ%llu\n" -msgstr "Τχισ ΒΔΕΒ ισ α ΡΑΙΔΖ%llu\n" - -#: grub-core/fs/zfs/zfsinfo.c:158 -msgid "Incorrect VDEV" -msgstr "ΙνϲοÏÏεϲτ ΒΔΕΒ" - -#: grub-core/fs/zfs/zfsinfo.c:161 -#, c-format -msgid "VDEV with %d children\n" -msgstr "ΒΔΕΒ ωιτχ %d ϲχιλδÏεν\n" - -#. TRANSLATORS: it's the element carying the number %d, not -#. total element number. And the number itself is fine, -#. only the element isn't. -#. -#: grub-core/fs/zfs/zfsinfo.c:177 -#, c-format -msgid "VDEV element number %d isn't correct\n" -msgstr "ΒΔΕΒ ελεμεντ Î½Ï…Î¼Ï­ÎµÏ %d ισν'Ï„ ϲοÏÏεϲτ\n" - -#. TRANSLATORS: it's the element carying the number %d, not -#. total element number. This is used in enumeration -#. "Element number 1", "Element number 2", ... -#: grub-core/fs/zfs/zfsinfo.c:184 -#, c-format -msgid "VDEV element number %d:\n" -msgstr "ΒΔΕΒ ελεμεντ Î½Ï…Î¼Ï­ÎµÏ %d:\n" - -#: grub-core/fs/zfs/zfsinfo.c:193 -#, c-format -msgid "Unknown virtual device type: %s\n" -msgstr "Υνκνοων βιÏτυαλ δεβιϲε τϋπε: %s\n" - -#. TRANSLATORS: Here we speak about ZFS pools it's semi-marketing, -#. semi-technical term by Sun/Oracle and should be translated in sync with -#. other ZFS-related software and documentation. -#: grub-core/fs/zfs/zfsinfo.c:254 -msgid "Pool state: active" -msgstr "Ποολ στατε: αϲτιβε" - -#: grub-core/fs/zfs/zfsinfo.c:255 -msgid "Pool state: exported" -msgstr "Ποολ στατε: εξποÏτεδ" - -#: grub-core/fs/zfs/zfsinfo.c:256 -msgid "Pool state: destroyed" -msgstr "Ποολ στατε: δεστÏοϋεδ" - -#: grub-core/fs/zfs/zfsinfo.c:257 -msgid "Pool state: reserved for hot spare" -msgstr "Ποολ στατε: ÏεσεÏβεδ Ï†Î¿Ï Ï‡Î¿Ï„ σπαÏε" - -#: grub-core/fs/zfs/zfsinfo.c:258 -msgid "Pool state: level 2 ARC device" -msgstr "Ποολ στατε: λεβελ 2 ΑΡϲ δεβιϲε" - -#: grub-core/fs/zfs/zfsinfo.c:259 -msgid "Pool state: uninitialized" -msgstr "Ποολ στατε: υνινιτιαλιζεδ" - -#: grub-core/fs/zfs/zfsinfo.c:260 -msgid "Pool state: unavailable" -msgstr "Ποολ στατε: υναβαιλαϭλε" - -#: grub-core/fs/zfs/zfsinfo.c:261 -msgid "Pool state: potentially active" -msgstr "Ποολ στατε: ποτεντιαλλϋ αϲτιβε" - -#: grub-core/fs/zfs/zfsinfo.c:306 -msgid "Pool name: unavailable" -msgstr "Ποολ ναμε: υναβαιλαϭλε" - -#: grub-core/fs/zfs/zfsinfo.c:308 -#, c-format -msgid "Pool name: %s\n" -msgstr "Ποολ ναμε: %s\n" - -#: grub-core/fs/zfs/zfsinfo.c:313 -msgid "Pool GUID: unavailable" -msgstr "Ποολ ΓΥΙΔ: υναβαιλαϭλε" - -#: grub-core/fs/zfs/zfsinfo.c:315 -#, c-format -msgid "Pool GUID: %016llx\n" -msgstr "Ποολ ΓΥΙΔ: %016llx\n" - -#: grub-core/fs/zfs/zfsinfo.c:320 -msgid "Unable to retrieve pool state" -msgstr "Υναϭλε το ÏετÏιεβε ποολ στατε" - -#: grub-core/fs/zfs/zfsinfo.c:322 -msgid "Unrecognized pool state" -msgstr "ΥνÏεϲογνιζεδ ποολ στατε" - -#. TRANSLATORS: There are undetermined number of virtual devices -#. in a device tree, not just one. -#. -#: grub-core/fs/zfs/zfsinfo.c:332 -msgid "No virtual device tree available" -msgstr "Îο βιÏτυαλ δεβιϲε Ï„Ïεε αβαιλαϭλε" - -#: grub-core/fs/zfs/zfsinfo.c:431 -msgid "Print ZFS info about DEVICE." -msgstr "ΠÏιντ ΖΦΣ ινφο αϭουτ ΔΕΒΙϲΕ." - -#: grub-core/fs/zfs/zfsinfo.c:433 -msgid "FILESYSTEM [VARIABLE]" -msgstr "ΦΙΛΕΣΫΣΤΕΜ [ΒΑΡΙΑϬΛΕ]" - -#: grub-core/fs/zfs/zfsinfo.c:434 -msgid "Print ZFS-BOOTFSOBJ or store it into VARIABLE" -msgstr "ΠÏιντ ΖΦΣ-ϬΟΟΤΦΣΟϬΪ Î¿Ï ÏƒÏ„Î¿Ïε ιτ ιντο ΒΑΡΙΑϬΛΕ" - -#. TRANSLATORS: at this position GRUB waits for the user to do an action -#. in remote debugger, namely to tell it to establish connection. -#: grub-core/gdb/gdb.c:48 -msgid "Now connect the remote debugger, please." -msgstr "Îοω ϲοννεϲτ τχε Ïεμοτε δεϭυγγεÏ, πλεασε." - -#. TRANSLATORS: GDB stub is a small part of -#. GDB functionality running on local host -#. which allows remote debugger to -#. connect to it. -#: grub-core/gdb/gdb.c:84 -msgid "Start GDB stub on given port" -msgstr "ΣταÏÏ„ ΓΔϬ στυϭ ον γιβεν ποÏÏ„" - -#. TRANSLATORS: this refers to triggering -#. a breakpoint so that the user will land -#. into GDB. -#: grub-core/gdb/gdb.c:89 -msgid "Break into GDB" -msgstr "ϬÏεακ ιντο ΓΔϬ" - -#: grub-core/gdb/gdb.c:91 -msgid "Stop GDB stub" -msgstr "Στοπ ΓΔϬ στυϭ" - -#: grub-core/gettext/gettext.c:85 -msgid "premature end of file" -msgstr "Ï€ÏεματυÏε ενδ οφ φιλε" - -#. TRANSLATORS: It refers to passing the string through gettext. -#. So it's "translate" in the same meaning as in what you're -#. doing now. -#. -#: grub-core/gettext/gettext.c:525 -msgid "Translates the string with the current settings." -msgstr "ΤÏανσλατεσ τχε στÏινγ ωιτχ τχε ϲυÏÏεντ σεττινγσ." - -#: grub-core/gfxmenu/gui_label.c:186 grub-core/normal/menu_text.c:184 -msgid "" -"Press enter to boot the selected OS, `e' to edit the commands before booting " -"or `c' for a command-line. ESC to return previous menu." -msgstr "" -"ΠÏεσσ ÎµÎ½Ï„ÎµÏ Ï„Î¿ ϭοοτ τχε σελεϲτεδ ΟΣ, `ε' το εδιτ τχε ϲομμανδσ ϭεφοÏε ϭοοτινγ " -"Î¿Ï `ϲ' Ï†Î¿Ï Î± ϲομμανδ-λινε. ΕΣϲ το ÏετυÏν Ï€Ïεβιουσ μενυ." - -#: grub-core/gfxmenu/gui_label.c:190 grub-core/normal/menu_text.c:192 -msgid "" -"Press enter to boot the selected OS, `e' to edit the commands before booting " -"or `c' for a command-line." -msgstr "" -"ΠÏεσσ ÎµÎ½Ï„ÎµÏ Ï„Î¿ ϭοοτ τχε σελεϲτεδ ΟΣ, `ε' το εδιτ τχε ϲομμανδσ ϭεφοÏε ϭοοτινγ " -"Î¿Ï `ϲ' Ï†Î¿Ï Î± ϲομμανδ-λινε." - -#: grub-core/gfxmenu/gui_label.c:194 -msgid "enter: boot, `e': options, `c': cmd-line" -msgstr "εντεÏ: ϭοοτ, `ε': οπτιονσ, `ϲ': ϲμδ-λινε" - -#: grub-core/gfxmenu/gui_progress_bar.c:339 grub-core/normal/menu_text.c:446 -#, c-format -msgid "The highlighted entry will be executed automatically in %ds." -msgstr "Τχε χιγχλιγχτεδ εντÏÏ‹ ωιλλ ϭε εξεϲυτεδ αυτοματιϲαλλϋ ιν %dσ." - -#. TRANSLATORS: 's' stands for seconds. -#. It's a standalone timeout notification. -#. Please use the short form in your language. -#: grub-core/gfxmenu/gui_progress_bar.c:344 -#, c-format -msgid "%ds remaining." -msgstr "%dσ Ïεμαινινγ." - -#. TRANSLATORS: 's' stands for seconds. -#. It's a standalone timeout notification. -#. Please use the shortest form available in you language. -#: grub-core/gfxmenu/gui_progress_bar.c:349 grub-core/normal/menu_text.c:444 -#: grub-core/normal/menu_text.c:462 -#, c-format -msgid "%ds" -msgstr "%dσ" - -#: grub-core/gfxmenu/view.c:103 -msgid "GRUB Boot Menu" -msgstr "ΓΡΥϬ Ϭοοτ Μενυ" - -#: grub-core/hello/hello.c:36 -msgid "Hello World" -msgstr "Χελλο ΩοÏλδ" - -#: grub-core/hello/hello.c:45 -msgid "Say `Hello World'." -msgstr "Σαϋ `Χελλο ΩοÏλδ'." - -#: grub-core/io/gzio.c:409 grub-core/kern/file.c:210 -msgid "attempt to seek outside of the file" -msgstr "αττεμπτ το σεεκ ουτσιδε οφ τχε φιλε" - -#. TRANSLATORS: It's about given file having some strange format, not -#. complete lack of gzip support. -#: grub-core/io/gzio.c:1228 grub-core/io/gzio.c:1237 grub-core/io/gzio.c:1244 -msgid "unsupported gzip format" -msgstr "υνσυπποÏτεδ γζιπ φοÏματ" - -#: grub-core/io/lzopio.c:511 -msgid "lzop file corrupted" -msgstr "λζοπ φιλε ϲοÏÏυπτεδ" - -#: grub-core/io/xzio.c:278 -msgid "xz file corrupted or unsupported block options" -msgstr "ξζ φιλε ϲοÏÏυπτεδ Î¿Ï Ï…Î½ÏƒÏ…Ï€Ï€Î¿Ïτεδ ϭλοϲκ οπτιονσ" - -#: grub-core/kern/arm/dl.c:277 grub-core/kern/arm64/dl.c:44 -#: grub-core/kern/i386/dl.c:36 grub-core/kern/ia64/dl.c:41 -#: grub-core/kern/mips/dl.c:48 grub-core/kern/powerpc/dl.c:36 -#: grub-core/kern/riscv/dl.c:47 grub-core/kern/sparc64/dl.c:36 -#: grub-core/kern/x86_64/dl.c:36 grub-core/loader/i386/bsd.c:1445 -#: grub-core/loader/i386/bsdXX.c:49 grub-core/loader/ia64/efi/linux.c:341 -#: grub-core/loader/mips/linux.c:298 grub-core/loader/multiboot.c:232 -#: grub-core/loader/multiboot_elfxx.c:73 -#: grub-core/loader/powerpc/ieee1275/linux.c:294 -#: grub-core/loader/sparc64/ieee1275/linux.c:331 -msgid "invalid arch-dependent ELF magic" -msgstr "ινβαλιδ αÏϲχ-δεπενδεντ ΕΛΦ μαγιϲ" - -#: grub-core/kern/corecmd.c:178 -msgid "[ENVVAR=VALUE]" -msgstr "[ΕÎΒΒΑΡ=ΒΑΛΥΕ]" - -#: grub-core/kern/corecmd.c:179 -msgid "Set an environment variable." -msgstr "Σετ αν ενβιÏονμεντ βαÏιαϭλε." - -#: grub-core/kern/corecmd.c:183 -msgid "ENVVAR" -msgstr "ΕÎΒΒΑΡ" - -#: grub-core/kern/corecmd.c:184 -msgid "Remove an environment variable." -msgstr "Ρεμοβε αν ενβιÏονμεντ βαÏιαϭλε." - -#: grub-core/kern/corecmd.c:186 -msgid "[ARG]" -msgstr "[ΑΡΓ]" - -#: grub-core/kern/corecmd.c:186 -msgid "List devices or files." -msgstr "Λιστ δεβιϲεσ Î¿Ï Ï†Î¹Î»ÎµÏƒ." - -#: grub-core/kern/corecmd.c:188 -msgid "Insert a module." -msgstr "ΙνσεÏÏ„ α μοδυλε." - -#: grub-core/kern/disk.c:236 grub-core/net/net.c:1390 -#, c-format -msgid "disk `%s' not found" -msgstr "δισκ `%s' νοτ φουνδ" - -#: grub-core/kern/disk_common.c:27 -msgid "attempt to read or write outside of partition" -msgstr "αττεμπτ το Ïεαδ Î¿Ï Ï‰Ïιτε ουτσιδε οφ παÏτιτιον" - -#: grub-core/kern/dl.c:212 grub-core/kern/elf.c:61 grub-core/kern/elf.c:79 -#: grub-core/loader/i386/bsdXX.c:46 grub-core/loader/ia64/efi/linux.c:335 -#: grub-core/loader/multiboot_elfxx.c:69 -msgid "invalid arch-independent ELF magic" -msgstr "ινβαλιδ αÏϲχ-ινδεπενδεντ ΕΛΦ μαγιϲ" - -#. TRANSLATORS: it refers to the lack of free slots. -#: grub-core/kern/emu/hostdisk.c:208 grub-core/kern/emu/hostdisk.c:466 -msgid "device count exceeds limit" -msgstr "δεβιϲε ϲουντ εξϲεεδσ λιμιτ" - -#: grub-core/kern/emu/hostdisk.c:342 util/editenv.c:54 util/grub-editenv.c:197 -#: util/grub-fstest.c:191 util/grub-mkfont.c:796 util/misc.c:114 -#: util/misc.c:129 util/setup.c:788 -#, c-format -msgid "cannot write to `%s': %s" -msgstr "ϲαννοτ ωÏιτε το `%s': %s" - -#. TRANSLATORS: Only one entry is ignored. However the suggestion -#. is to correct/delete the whole file. -#. device.map is a file indicating which -#. devices are available at boot time. Fedora populated it with -#. entries like (hd0,1) /dev/sda1 which would mean that every -#. partition is a separate disk for BIOS. Such entries were -#. inactive in GRUB due to its bug which is now gone. Without -#. this additional check these entries would be harmful now. -#. -#: grub-core/kern/emu/hostdisk.c:503 -#, c-format -msgid "" -"the device.map entry `%s' is invalid. Ignoring it. Please correct or delete " -"your device.map" -msgstr "" -"τχε δεβιϲε.μαπ εντÏÏ‹ `%s' ισ ινβαλιδ. ΙγνοÏινγ ιτ. Πλεασε ϲοÏÏεϲτ Î¿Ï Î´ÎµÎ»ÎµÏ„Îµ " -"Ï‹Î¿Ï…Ï Î´ÎµÎ²Î¹Ï²Îµ.μαπ" - -#. TRANSLATORS: device.map is a filename. Not to be translated. -#. device.map specifies disk correspondance overrides. Previously -#. one could create any kind of device name with this. Due to -#. some problems we decided to limit it to just a handful -#. possibilities. -#: grub-core/kern/emu/hostdisk.c:555 -#, c-format -msgid "" -"the drive name `%s' in device.map is incorrect. Using %s instead. Please use " -"the form [hfc]d[0-9]* (E.g. `hd0' or `cd')" -msgstr "" -"τχε δÏιβε ναμε `%s' ιν δεβιϲε.μαπ ισ ινϲοÏÏεϲτ. Υσινγ %s ινστεαδ. Πλεασε υσε " -"τχε φοÏμ [χφϲ]δ[0-9]* (Ε.γ. `χδ0' Î¿Ï `ϲδ')" - -#: grub-core/kern/emu/hostfs.c:76 grub-core/kern/emu/hostfs.c:109 -#, c-format -msgid "can't open `%s': %s" -msgstr "ϲαν'Ï„ οπεν `%s': %s" - -#: grub-core/kern/emu/main.c:99 util/grub-fstest.c:516 util/grub-mount.c:452 -msgid "DEVICE_NAME" -msgstr "ΔΕΒΙϲΕ_ÎΑΜΕ" - -#: grub-core/kern/emu/main.c:99 grub-core/loader/i386/bsd.c:136 -#: grub-core/loader/i386/bsd.c:169 util/grub-fstest.c:516 util/grub-mount.c:452 -msgid "Set root device." -msgstr "Σετ Ïοοτ δεβιϲε." - -#. TRANSLATORS: There are many devices in device map. -#: grub-core/kern/emu/main.c:102 util/grub-probe.c:733 util/grub-setup.c:85 -#, c-format -msgid "use FILE as the device map [default=%s]" -msgstr "υσε ΦΙΛΕ ασ τχε δεβιϲε μαπ [δεφαυλτ=%s]" - -#. TRANSLATORS: There are many devices in device map. -#: grub-core/kern/emu/main.c:105 -msgid "use FILE as memdisk" -msgstr "υσε ΦΙΛΕ ασ μεμδισκ" - -#: grub-core/kern/emu/main.c:107 util/grub-setup.c:83 -#, c-format -msgid "use GRUB files in the directory DIR [default=%s]" -msgstr "υσε ΓΡΥϬ φιλεσ ιν τχε διÏεϲτοÏÏ‹ ΔΙΡ [δεφαυλτ=%s]" - -#: grub-core/kern/emu/main.c:108 include/grub/util/install.h:67 -#: util/grub-editenv.c:58 util/grub-fstest.c:525 util/grub-glue-efi.c:58 -#: util/grub-macbless.c:104 util/grub-mkfont.c:962 util/grub-mkimage.c:84 -#: util/grub-mklayout.c:56 util/grub-mount.c:458 util/grub-probe.c:735 -#: util/grub-render-label.c:74 util/grub-script-check.c:52 util/grub-setup.c:90 -#: util/grub-syslinux2cfg.c:78 -msgid "print verbose messages." -msgstr "Ï€Ïιντ βεÏϭοσε μεσσαγεσ." - -#: grub-core/kern/emu/main.c:109 grub-core/lib/gnulib/argp-parse.c:85 -msgid "SECS" -msgstr "ΣΕϲΣ" - -#: grub-core/kern/emu/main.c:109 -msgid "wait until a debugger will attach" -msgstr "ωαιτ υντιλ α Î´ÎµÏ­Ï…Î³Î³ÎµÏ Ï‰Î¹Î»Î» ατταϲχ" - -#: grub-core/kern/emu/main.c:171 util/grub-macbless.c:143 -#: util/grub-mkrelpath.c:61 util/grub-probe.c:874 util/grub-script-check.c:75 -#: util/grub-setup.c:203 -#, c-format -msgid "Unknown extra argument `%s'." -msgstr "Υνκνοων εξτÏα αÏγυμεντ `%s'." - -#: grub-core/kern/emu/main.c:185 -msgid "GRUB emulator." -msgstr "ΓΡΥϬ εμυλατοÏ." - -#: grub-core/kern/emu/main.c:213 util/grub-editenv.c:262 -#: util/grub-glue-efi.c:110 util/grub-macbless.c:173 util/grub-mkfont.c:1177 -#: util/grub-mkimage.c:266 util/grub-mklayout.c:494 -#: util/grub-mkpasswd-pbkdf2.c:132 util/grub-mkrelpath.c:96 -#: util/grub-probe.c:863 util/grub-render-label.c:152 -#: util/grub-script-check.c:160 util/grub-setup.c:262 -#: util/grub-syslinux2cfg.c:163 -msgid "Error in parsing command line arguments\n" -msgstr "ΕÏÏÎ¿Ï Î¹Î½ παÏσινγ ϲομμανδ λινε αÏγυμεντσ\n" - -#. TRANSLATORS: In this case GRUB tells user what he has to do. -#: grub-core/kern/emu/main.c:248 -#, c-format -msgid "Run `gdb %s %d', and set ARGS.HOLD to zero.\n" -msgstr "Ρυν `γδϭ %s %d', ανδ σετ ΑΡΓΣ.ΧΟΛΔ το ζεÏο.\n" - -#: grub-core/kern/emu/misc.c:48 -#, c-format -msgid "%s: warning:" -msgstr "%s: ωαÏνινγ:" - -#: grub-core/kern/emu/misc.c:64 -#, c-format -msgid "%s: info:" -msgstr "%s: ινφο:" - -#: grub-core/kern/emu/misc.c:79 util/grub-fstest.c:567 util/grub-fstest.c:576 -#: util/grub-mount.c:497 util/grub-mount.c:505 -#, c-format -msgid "%s: error:" -msgstr "%s: εÏÏοÏ:" - -#: grub-core/kern/emu/misc.c:176 -#, c-format -msgid "file `%s' is too big" -msgstr "φιλε `%s' ισ τοο ϭιγ" - -#: grub-core/kern/fs.c:120 -msgid "unknown filesystem" -msgstr "υνκνοων φιλεσϋστεμ" - -#: grub-core/kern/mips/arc/init.c:273 grub-core/kern/mips/loongson/init.c:301 -msgid "Shutdown failed" -msgstr "Σχυτδοων φαιλεδ" - -#: grub-core/kern/mips/arc/init.c:285 -msgid "Exit failed" -msgstr "Εξιτ φαιλεδ" - -#: grub-core/kern/misc.c:351 grub-core/kern/misc.c:408 include/grub/misc.h:269 -#: include/grub/misc.h:278 -msgid "overflow is detected" -msgstr "οβεÏφλοω ισ δετεϲτεδ" - -#: grub-core/kern/partition.c:51 grub-core/partmap/bsdlabel.c:108 -#, c-format -msgid "Discarding improperly nested partition (%s,%s,%s%d)" -msgstr "ΔισϲαÏδινγ ιμπÏοπεÏλϋ νεστεδ παÏτιτιον (%s,%s,%s%d)" - -#: grub-core/kern/rescue_parser.c:73 util/grub-editenv.c:292 -#, c-format -msgid "Unknown command `%s'.\n" -msgstr "Υνκνοων ϲομμανδ `%s'.\n" - -#: grub-core/lib/arg.c:31 -msgid "Display this help and exit." -msgstr "Δισπλαϋ τχισ χελπ ανδ εξιτ." - -#: grub-core/lib/arg.c:33 -msgid "Display the usage of this command and exit." -msgstr "Δισπλαϋ τχε υσαγε οφ τχισ ϲομμανδ ανδ εξιτ." - -#: grub-core/lib/arg.c:362 -#, c-format -msgid "missing mandatory option for `%s'" -msgstr "μισσινγ μανδατοÏÏ‹ οπτιον Ï†Î¿Ï `%s'" - -#: grub-core/lib/arg.c:384 -#, c-format -msgid "the argument `%s' requires an integer" -msgstr "τχε αÏγυμεντ `%s' ÏεϗυιÏεσ αν ιντεγεÏ" - -#: grub-core/lib/arg.c:407 -#, c-format -msgid "" -"a value was assigned to the argument `%s' while it doesn't require an " -"argument" -msgstr "" -"α βαλυε ωασ ασσιγνεδ το τχε αÏγυμεντ `%s' ωχιλε ιτ δοεσν'Ï„ ÏεϗυιÏε αν " -"αÏγυμεντ" - -#: grub-core/lib/backtrace.c:64 -msgid "Print backtrace." -msgstr "ΠÏιντ ϭαϲκτÏαϲε." - -#: grub-core/lib/gnulib/argp-help.c:149 -#, c-format -msgid "ARGP_HELP_FMT: %s value is less than or equal to %s" -msgstr "ΑΡΓΠ_ΧΕΛΠ_ΦΜΤ: %s βαλυε ισ λεσσ τχαν Î¿Ï ÎµÏ—Ï…Î±Î» το %s" - -#: grub-core/lib/gnulib/argp-help.c:225 -#, c-format -msgid "%.*s: ARGP_HELP_FMT parameter requires a value" -msgstr "%.*s: ΑΡΓΠ_ΧΕΛΠ_ΦΜΤ παÏÎ±Î¼ÎµÏ„ÎµÏ ÏεϗυιÏεσ α βαλυε" - -#: grub-core/lib/gnulib/argp-help.c:235 -#, c-format -msgid "%.*s: Unknown ARGP_HELP_FMT parameter" -msgstr "%.*s: Υνκνοων ΑΡΓΠ_ΧΕΛΠ_ΦΜΤ παÏαμετεÏ" - -#: grub-core/lib/gnulib/argp-help.c:248 -#, c-format -msgid "Garbage in ARGP_HELP_FMT: %s" -msgstr "ΓαÏϭαγε ιν ΑΡΓΠ_ΧΕΛΠ_ΦΜΤ: %s" - -#: grub-core/lib/gnulib/argp-help.c:1229 -msgid "" -"Mandatory or optional arguments to long options are also mandatory or " -"optional for any corresponding short options." -msgstr "" -"ΜανδατοÏÏ‹ Î¿Ï Î¿Ï€Ï„Î¹Î¿Î½Î±Î» αÏγυμεντσ το λονγ οπτιονσ αÏε αλσο μανδατοÏÏ‹ Î¿Ï " -"οπτιοναλ Ï†Î¿Ï Î±Î½Ï‹ ϲοÏÏεσπονδινγ σχοÏÏ„ οπτιονσ." - -#: grub-core/lib/gnulib/argp-help.c:1620 -msgid " or: " -msgstr " οÏ: " - -#: grub-core/lib/gnulib/argp-help.c:1632 -msgid " [OPTION...]" -msgstr " [ΟΠΤΙΟÎ...]" - -#: grub-core/lib/gnulib/argp-help.c:1659 -#, c-format -msgid "Try '%s --help' or '%s --usage' for more information.\n" -msgstr "ΤÏÏ‹ '%s --χελπ' Î¿Ï '%s --υσαγε' Ï†Î¿Ï Î¼Î¿Ïε ινφοÏματιον.\n" - -#: grub-core/lib/gnulib/argp-help.c:1687 -#, c-format -msgid "Report bugs to %s.\n" -msgstr "ΡεποÏÏ„ ϭυγσ το %s.\n" - -#: grub-core/lib/gnulib/argp-help.c:1888 grub-core/lib/gnulib/error.c:195 -msgid "Unknown system error" -msgstr "Υνκνοων σϋστεμ εÏÏοÏ" - -#: grub-core/lib/gnulib/argp-parse.c:81 -msgid "give this help list" -msgstr "γιβε τχισ χελπ λιστ" - -#: grub-core/lib/gnulib/argp-parse.c:82 -msgid "give a short usage message" -msgstr "γιβε α σχοÏÏ„ υσαγε μεσσαγε" - -#: grub-core/lib/gnulib/argp-parse.c:83 util/grub-mkfont.c:946 -msgid "NAME" -msgstr "ÎΑΜΕ" - -#: grub-core/lib/gnulib/argp-parse.c:84 -msgid "set the program name" -msgstr "σετ τχε Ï€ÏογÏαμ ναμε" - -#: grub-core/lib/gnulib/argp-parse.c:86 -msgid "hang for SECS seconds (default 3600)" -msgstr "χανγ Ï†Î¿Ï Î£Î•Ï²Î£ σεϲονδσ (δεφαυλτ 3600)" - -#: grub-core/lib/gnulib/argp-parse.c:143 -msgid "print program version" -msgstr "Ï€Ïιντ Ï€ÏογÏαμ βεÏσιον" - -#: grub-core/lib/gnulib/argp-parse.c:160 -msgid "(PROGRAM ERROR) No version known!?" -msgstr "(ΠΡΟΓΡΑΜ ΕΡΡΟΡ) Îο βεÏσιον κνοων!?" - -#: grub-core/lib/gnulib/argp-parse.c:613 -#, c-format -msgid "%s: Too many arguments\n" -msgstr "%s: Τοο μανϋ αÏγυμεντσ\n" - -#: grub-core/lib/gnulib/argp-parse.c:759 -msgid "(PROGRAM ERROR) Option should have been recognized!?" -msgstr "(ΠΡΟΓΡΑΜ ΕΡΡΟΡ) Οπτιον σχουλδ χαβε ϭεεν Ïεϲογνιζεδ!?" - -#: grub-core/lib/gnulib/getopt.c:278 -#, c-format -msgid "%s: option '%s%s' is ambiguous\n" -msgstr "%s: οπτιον '%s%s' ισ αμϭιγυουσ\n" - -#: grub-core/lib/gnulib/getopt.c:284 -#, c-format -msgid "%s: option '%s%s' is ambiguous; possibilities:" -msgstr "%s: οπτιον '%s%s' ισ αμϭιγυουσ; ποσσιϭιλιτιεσ:" - -#: grub-core/lib/gnulib/getopt.c:319 -#, c-format -msgid "%s: unrecognized option '%s%s'\n" -msgstr "%s: υνÏεϲογνιζεδ οπτιον '%s%s'\n" - -#: grub-core/lib/gnulib/getopt.c:345 -#, c-format -msgid "%s: option '%s%s' doesn't allow an argument\n" -msgstr "%s: οπτιον '%s%s' δοεσν'Ï„ αλλοω αν αÏγυμεντ\n" - -#: grub-core/lib/gnulib/getopt.c:360 -#, c-format -msgid "%s: option '%s%s' requires an argument\n" -msgstr "%s: οπτιον '%s%s' ÏεϗυιÏεσ αν αÏγυμεντ\n" - -#: grub-core/lib/gnulib/getopt.c:621 -#, c-format -msgid "%s: invalid option -- '%c'\n" -msgstr "%s: ινβαλιδ οπτιον -- '%c'\n" - -#: grub-core/lib/gnulib/getopt.c:636 grub-core/lib/gnulib/getopt.c:682 -#, c-format -msgid "%s: option requires an argument -- '%c'\n" -msgstr "%s: οπτιον ÏεϗυιÏεσ αν αÏγυμεντ -- '%c'\n" - -#: grub-core/lib/gnulib/openat-die.c:38 -#, c-format -msgid "unable to record current working directory" -msgstr "υναϭλε το ÏεϲοÏδ ϲυÏÏεντ ωοÏκινγ διÏεϲτοÏÏ‹" - -#: grub-core/lib/gnulib/openat-die.c:57 -#, c-format -msgid "failed to return to initial working directory" -msgstr "φαιλεδ το ÏετυÏν το ινιτιαλ ωοÏκινγ διÏεϲτοÏÏ‹" - -#: grub-core/lib/gnulib/regcomp.c:135 grub-core/osdep/aros/hostdisk.c:523 -msgid "Success" -msgstr "Συϲϲεσσ" - -#: grub-core/lib/gnulib/regcomp.c:138 -msgid "No match" -msgstr "Îο ματϲχ" - -#: grub-core/lib/gnulib/regcomp.c:141 -msgid "Invalid regular expression" -msgstr "Ινβαλιδ ÏÎµÎ³Ï…Î»Î±Ï ÎµÎ¾Ï€Ïεσσιον" - -#: grub-core/lib/gnulib/regcomp.c:144 -msgid "Invalid collation character" -msgstr "Ινβαλιδ ϲολλατιον ϲχαÏαϲτεÏ" - -#: grub-core/lib/gnulib/regcomp.c:147 -msgid "Invalid character class name" -msgstr "Ινβαλιδ ϲχαÏÎ±Ï²Ï„ÎµÏ Ï²Î»Î±ÏƒÏƒ ναμε" - -#: grub-core/lib/gnulib/regcomp.c:150 -msgid "Trailing backslash" -msgstr "ΤÏαιλινγ ϭαϲκσλασχ" - -#: grub-core/lib/gnulib/regcomp.c:153 -msgid "Invalid back reference" -msgstr "Ινβαλιδ ϭαϲκ ÏεφεÏενϲε" - -#: grub-core/lib/gnulib/regcomp.c:156 -msgid "Unmatched [, [^, [:, [., or [=" -msgstr "Υνματϲχεδ [, [^, [:, [., Î¿Ï [=" - -#: grub-core/lib/gnulib/regcomp.c:159 -msgid "Unmatched ( or \\(" -msgstr "Υνματϲχεδ ( Î¿Ï \\(" - -#: grub-core/lib/gnulib/regcomp.c:162 -msgid "Unmatched \\{" -msgstr "Υνματϲχεδ \\{" - -#: grub-core/lib/gnulib/regcomp.c:165 -msgid "Invalid content of \\{\\}" -msgstr "Ινβαλιδ ϲοντεντ οφ \\{\\}" - -#: grub-core/lib/gnulib/regcomp.c:168 -msgid "Invalid range end" -msgstr "Ινβαλιδ Ïανγε ενδ" - -#: grub-core/lib/gnulib/regcomp.c:171 -msgid "Memory exhausted" -msgstr "ΜεμοÏÏ‹ εξχαυστεδ" - -#: grub-core/lib/gnulib/regcomp.c:174 -msgid "Invalid preceding regular expression" -msgstr "Ινβαλιδ Ï€Ïεϲεδινγ ÏÎµÎ³Ï…Î»Î±Ï ÎµÎ¾Ï€Ïεσσιον" - -#: grub-core/lib/gnulib/regcomp.c:177 -msgid "Premature end of regular expression" -msgstr "ΠÏεματυÏε ενδ οφ ÏÎµÎ³Ï…Î»Î±Ï ÎµÎ¾Ï€Ïεσσιον" - -#: grub-core/lib/gnulib/regcomp.c:180 -msgid "Regular expression too big" -msgstr "Î¡ÎµÎ³Ï…Î»Î±Ï ÎµÎ¾Ï€Ïεσσιον τοο ϭιγ" - -#: grub-core/lib/gnulib/regcomp.c:183 -msgid "Unmatched ) or \\)" -msgstr "Υνματϲχεδ ) Î¿Ï \\)" - -#: grub-core/lib/gnulib/regcomp.c:531 -msgid "unknown regexp error" -msgstr "υνκνοων Ïεγεξπ εÏÏοÏ" - -#: grub-core/lib/gnulib/regcomp.c:676 -msgid "No previous regular expression" -msgstr "Îο Ï€Ïεβιουσ ÏÎµÎ³Ï…Î»Î±Ï ÎµÎ¾Ï€Ïεσσιον" - -#: grub-core/lib/i386/halt.c:77 -msgid "GRUB doesn't know how to halt this machine yet!" -msgstr "ΓΡΥϬ δοεσν'Ï„ κνοω χοω το χαλτ τχισ μαϲχινε ϋετ!" - -#: grub-core/lib/legacy_parse.c:75 -msgid "Default server is ${net_default_server}" -msgstr "Δεφαυλτ σεÏÎ²ÎµÏ Î¹Ïƒ ${νετ_δεφαυλτ_σεÏβεÏ}" - -#: grub-core/lib/legacy_parse.c:844 grub-core/video/colors.c:296 -#: grub-core/video/colors.c:305 grub-core/video/colors.c:311 -#: grub-core/video/colors.c:327 util/render-label.c:84 util/render-label.c:98 -#, c-format -msgid "invalid color specification `%s'" -msgstr "ινβαλιδ Ï²Î¿Î»Î¿Ï ÏƒÏ€ÎµÏ²Î¹Ï†Î¹Ï²Î±Ï„Î¹Î¿Î½ `%s'" - -#: grub-core/lib/mips/arc/reboot.c:32 grub-core/lib/mips/loongson/reboot.c:61 -msgid "Reboot failed" -msgstr "Ρεϭοοτ φαιλεδ" - -#: grub-core/lib/random.c:113 -msgid "[LENGTH]" -msgstr "[ΛΕÎΓΤΧ]" - -#: grub-core/lib/random.c:114 -msgid "Hexdump random data." -msgstr "Χεξδυμπ Ïανδομ δατα." - -#: grub-core/loader/arm/linux.c:242 -msgid "device tree must be supplied (see `devicetree' command)" -msgstr "δεβιϲε Ï„Ïεε μυστ ϭε συππλιεδ (σεε `δεβιϲετÏεε' ϲομμανδ)" - -#: grub-core/loader/arm/linux.c:334 -msgid "invalid zImage" -msgstr "ινβαλιδ ζΙμαγε" - -#: grub-core/loader/arm/linux.c:450 grub-core/loader/efi/fdt.c:144 -msgid "invalid device tree" -msgstr "ινβαλιδ δεβιϲε Ï„Ïεε" - -#: grub-core/loader/arm/linux.c:493 grub-core/loader/arm64/linux.c:383 -#: grub-core/loader/i386/linux.c:1125 grub-core/loader/i386/pc/linux.c:479 -#: grub-core/loader/i386/xen.c:962 grub-core/loader/i386/xen.c:964 -#: grub-core/loader/ia64/efi/linux.c:591 grub-core/loader/mips/linux.c:501 -#: grub-core/loader/powerpc/ieee1275/linux.c:383 -#: grub-core/loader/riscv/linux.c:50 -#: grub-core/loader/sparc64/ieee1275/linux.c:511 -msgid "Load Linux." -msgstr "Λοαδ Λινυξ." - -#: grub-core/loader/arm/linux.c:495 grub-core/loader/arm64/linux.c:385 -#: grub-core/loader/i386/linux.c:1127 grub-core/loader/i386/pc/linux.c:482 -#: grub-core/loader/i386/xen.c:966 grub-core/loader/ia64/efi/linux.c:594 -#: grub-core/loader/mips/linux.c:503 -#: grub-core/loader/powerpc/ieee1275/linux.c:385 -#: grub-core/loader/riscv/linux.c:52 -#: grub-core/loader/sparc64/ieee1275/linux.c:513 -msgid "Load initrd." -msgstr "Λοαδ ινιτÏδ." - -#. TRANSLATORS: DTB stands for device tree blob. -#: grub-core/loader/arm/linux.c:498 grub-core/loader/efi/fdt.c:169 -msgid "Load DTB file." -msgstr "Λοαδ ΔΤϬ φιλε." - -#: grub-core/loader/arm64/linux.c:59 -msgid "" -"plain image kernel not supported - rebuild with CONFIG_(U)EFI_STUB enabled" -msgstr "" -"πλαιν ιμαγε κεÏνελ νοτ συπποÏτεδ - Ïεϭυιλδ ωιτχ ϲΟÎΦΙΓ_(Î¥)ΕΦΙ_ΣΤΥϬ εναϭλεδ" - -#: grub-core/loader/arm64/xen_boot.c:156 -msgid "failed to get FDT" -msgstr "φαιλεδ το γετ ΦΔΤ" - -#: grub-core/loader/arm64/xen_boot.c:418 -msgid "you need to load the Xen Hypervisor first" -msgstr "ϋου νεεδ το λοαδ τχε Ξεν ΧϋπεÏÎ²Î¹ÏƒÎ¿Ï Ï†Î¹Ïστ" - -#: grub-core/loader/arm64/xen_boot.c:516 -msgid "Load a xen hypervisor." -msgstr "Λοαδ α ξεν χϋπεÏβισοÏ." - -#: grub-core/loader/arm64/xen_boot.c:519 -msgid "Load a xen module." -msgstr "Λοαδ α ξεν μοδυλε." - -#: grub-core/loader/efi/appleloader.c:231 -msgid "[OPTS]" -msgstr "[ΟΠΤΣ]" - -#. TRANSLATORS: This command is used on EFI to -#. switch to BIOS mode and boot the OS requiring -#. BIOS. -#: grub-core/loader/efi/appleloader.c:235 -msgid "Boot BIOS-based system." -msgstr "Ϭοοτ ϬΙΟΣ-ϭασεδ σϋστεμ." - -#: grub-core/loader/efi/chainloader.c:421 -#: grub-core/loader/i386/pc/chainloader.c:303 -msgid "Load another boot loader." -msgstr "Λοαδ Î±Î½Î¿Ï„Ï‡ÎµÏ Ï­Î¿Î¿Ï„ λοαδεÏ." - -#: grub-core/loader/i386/bsd.c:103 -msgid "Display output on all consoles." -msgstr "Δισπλαϋ ουτπυτ ον αλλ ϲονσολεσ." - -#: grub-core/loader/i386/bsd.c:104 grub-core/loader/i386/bsd.c:138 -#: grub-core/loader/i386/bsd.c:171 -msgid "Use serial console." -msgstr "Υσε σεÏιαλ ϲονσολε." - -#: grub-core/loader/i386/bsd.c:105 grub-core/loader/i386/bsd.c:131 -#: grub-core/loader/i386/bsd.c:159 -msgid "Ask for file name to reboot from." -msgstr "Ασκ Ï†Î¿Ï Ï†Î¹Î»Îµ ναμε το Ïεϭοοτ φÏομ." - -#: grub-core/loader/i386/bsd.c:106 -msgid "Use CD-ROM as root." -msgstr "Υσε ϲΔ-ΡΟΜ ασ Ïοοτ." - -#: grub-core/loader/i386/bsd.c:107 -msgid "Invoke user configuration routing." -msgstr "Ινβοκε Ï…ÏƒÎµÏ Ï²Î¿Î½Ï†Î¹Î³Ï…Ïατιον Ïουτινγ." - -#: grub-core/loader/i386/bsd.c:108 grub-core/loader/i386/bsd.c:135 -#: grub-core/loader/i386/bsd.c:162 -msgid "Enter in KDB on boot." -msgstr "Î•Î½Ï„ÎµÏ Î¹Î½ ΚΔϬ ον ϭοοτ." - -#: grub-core/loader/i386/bsd.c:109 -msgid "Use GDB remote debugger instead of DDB." -msgstr "Υσε ΓΔϬ Ïεμοτε Î´ÎµÏ­Ï…Î³Î³ÎµÏ Î¹Î½ÏƒÏ„ÎµÎ±Î´ οφ ΔΔϬ." - -#: grub-core/loader/i386/bsd.c:110 -msgid "Disable all boot output." -msgstr "Δισαϭλε αλλ ϭοοτ ουτπυτ." - -#: grub-core/loader/i386/bsd.c:112 -msgid "Wait for keypress after every line of output." -msgstr "Ωαιτ Ï†Î¿Ï ÎºÎµÏ‹Ï€Ïεσσ Î±Ï†Ï„ÎµÏ ÎµÎ²ÎµÏÏ‹ λινε οφ ουτπυτ." - -#: grub-core/loader/i386/bsd.c:114 -msgid "Use compiled-in root device." -msgstr "Υσε ϲομπιλεδ-ιν Ïοοτ δεβιϲε." - -#: grub-core/loader/i386/bsd.c:115 grub-core/loader/i386/bsd.c:134 -#: grub-core/loader/i386/bsd.c:165 -msgid "Boot into single mode." -msgstr "Ϭοοτ ιντο σινγλε μοδε." - -#: grub-core/loader/i386/bsd.c:116 grub-core/loader/i386/bsd.c:166 -msgid "Boot with verbose messages." -msgstr "Ϭοοτ ωιτχ βεÏϭοσε μεσσαγεσ." - -#: grub-core/loader/i386/bsd.c:132 grub-core/loader/i386/bsd.c:160 -msgid "Don't reboot, just halt." -msgstr "Δον'Ï„ Ïεϭοοτ, ϊυστ χαλτ." - -#: grub-core/loader/i386/bsd.c:133 grub-core/loader/i386/bsd.c:161 -msgid "Change configured devices." -msgstr "ϲχανγε ϲονφιγυÏεδ δεβιϲεσ." - -#. TRANSLATORS: "com" is static and not to be translated. It refers to -#. serial ports e.g. com1. -#. -#: grub-core/loader/i386/bsd.c:142 -msgid "comUNIT[,SPEED]" -msgstr "ϲομΥÎΙΤ[,ΣΠΕΕΔ]" - -#: grub-core/loader/i386/bsd.c:157 -msgid "Disable SMP." -msgstr "Δισαϭλε ΣΜΠ." - -#: grub-core/loader/i386/bsd.c:158 -msgid "Disable ACPI." -msgstr "Δισαϭλε ΑϲΠΙ." - -#: grub-core/loader/i386/bsd.c:164 -msgid "Don't display boot diagnostic messages." -msgstr "Δον'Ï„ δισπλαϋ ϭοοτ διαγνοστιϲ μεσσαγεσ." - -#: grub-core/loader/i386/bsd.c:167 -msgid "Boot with debug messages." -msgstr "Ϭοοτ ωιτχ δεϭυγ μεσσαγεσ." - -#: grub-core/loader/i386/bsd.c:168 -msgid "Suppress normal output (warnings remain)." -msgstr "ΣυππÏεσσ νοÏμαλ ουτπυτ (ωαÏνινγσ Ïεμαιν)." - -#. TRANSLATORS: "com" is static and not to be translated. It refers to -#. serial ports e.g. com1. -#. -#: grub-core/loader/i386/bsd.c:175 -msgid "[ADDR|comUNIT][,SPEED]" -msgstr "[ΑΔΔΡ|ϲομΥÎΙΤ][,ΣΠΕΕΔ]" - -#: grub-core/loader/i386/bsd.c:489 grub-core/loader/i386/bsd.c:555 -msgid "name" -msgstr "ναμε" - -#: grub-core/loader/i386/bsd.c:489 grub-core/loader/i386/bsd.c:555 -msgid "type" -msgstr "τϋπε" - -#: grub-core/loader/i386/bsd.c:489 grub-core/loader/i386/bsd.c:555 -msgid "addr" -msgstr "αδδÏ" - -#: grub-core/loader/i386/bsd.c:490 grub-core/loader/i386/bsd.c:556 -msgid "size" -msgstr "σιζε" - -#: grub-core/loader/i386/bsd.c:1147 grub-core/loader/i386/linux.c:466 -#: grub-core/loader/i386/xnu.c:1030 -msgid "Booting in blind mode" -msgstr "Ϭοοτινγ ιν ϭλινδ μοδε" - -#: grub-core/loader/i386/bsd.c:2137 -msgid "Load kernel of FreeBSD." -msgstr "Λοαδ κεÏνελ οφ ΦÏεεϬΣΔ." - -#: grub-core/loader/i386/bsd.c:2140 -msgid "Load kernel of OpenBSD." -msgstr "Λοαδ κεÏνελ οφ ΟπενϬΣΔ." - -#: grub-core/loader/i386/bsd.c:2143 -msgid "Load kernel of NetBSD." -msgstr "Λοαδ κεÏνελ οφ ÎετϬΣΔ." - -#: grub-core/loader/i386/bsd.c:2147 -msgid "Load FreeBSD env." -msgstr "Λοαδ ΦÏεεϬΣΔ ενβ." - -#: grub-core/loader/i386/bsd.c:2150 -msgid "Load FreeBSD kernel module." -msgstr "Λοαδ ΦÏεεϬΣΔ κεÏνελ μοδυλε." - -#: grub-core/loader/i386/bsd.c:2153 -msgid "Load NetBSD kernel module." -msgstr "Λοαδ ÎετϬΣΔ κεÏνελ μοδυλε." - -#: grub-core/loader/i386/bsd.c:2156 -msgid "Load NetBSD kernel module (ELF)." -msgstr "Λοαδ ÎετϬΣΔ κεÏνελ μοδυλε (ΕΛΦ)." - -#: grub-core/loader/i386/bsd.c:2159 -msgid "Load FreeBSD kernel module (ELF)." -msgstr "Λοαδ ΦÏεεϬΣΔ κεÏνελ μοδυλε (ΕΛΦ)." - -#. TRANSLATORS: ramdisk isn't identifier, -#. it can be translated. -#: grub-core/loader/i386/bsd.c:2165 -msgid "Load kOpenBSD ramdisk." -msgstr "Λοαδ κΟπενϬΣΔ Ïαμδισκ." - -#. TRANSLATORS: "payload" is a term used -#. by coreboot and must be translated in -#. sync with coreboot. If unsure, -#. let it untranslated. -#: grub-core/loader/i386/coreboot/chainloader.c:510 -msgid "Load another coreboot payload" -msgstr "Λοαδ Î±Î½Î¿Ï„Ï‡ÎµÏ Ï²Î¿Ïεϭοοτ παϋλοαδ" - -#: grub-core/loader/i386/linux.c:876 -msgid "Legacy `ask' parameter no longer supported." -msgstr "Λεγαϲϋ `ασκ' παÏÎ±Î¼ÎµÏ„ÎµÏ Î½Î¿ Î»Î¿Î½Î³ÎµÏ ÏƒÏ…Ï€Ï€Î¿Ïτεδ." - -#: grub-core/loader/i386/linux.c:892 grub-core/loader/i386/linux.c:902 -#: grub-core/loader/i386/linux.c:932 -#, c-format -msgid "%s is deprecated. Use set gfxpayload=%s before linux command instead.\n" -msgstr "" -"%s ισ δεπÏεϲατεδ. Υσε σετ γφξπαϋλοαδ=%s ϭεφοÏε λινυξ ϲομμανδ ινστεαδ.\n" - -#. TRANSLATORS: "x" has to be entered in, like an identifier, -#. so please don't use better Unicode codepoints. -#: grub-core/loader/i386/linux.c:915 -#, c-format -msgid "" -"%s is deprecated. VGA mode %d isn't recognized. Use set " -"gfxpayload=WIDTHxHEIGHT[xDEPTH] before linux command instead.\n" -msgstr "" -"%s ισ δεπÏεϲατεδ. ΒΓΑ μοδε %d ισν'Ï„ Ïεϲογνιζεδ. Υσε σετ " -"γφξπαϋλοαδ=ΩΙΔΤΧξΧΕΙΓΧΤ[ξΔΕΠΤΧ] ϭεφοÏε λινυξ ϲομμανδ ινστεαδ.\n" - -#: grub-core/loader/i386/pc/chainloader.c:302 -msgid "[--force|--bpb] FILE" -msgstr "[--φοÏϲε|--ϭπϭ] ΦΙΛΕ" - -#: grub-core/loader/i386/pc/freedos.c:148 util/setup.c:293 -#, c-format -msgid "the size of `%s' is too large" -msgstr "τχε σιζε οφ `%s' ισ τοο λαÏγε" - -#: grub-core/loader/i386/pc/freedos.c:183 -msgid "Load FreeDOS kernel.sys." -msgstr "Λοαδ ΦÏεεΔΟΣ κεÏνελ.σϋσ." - -#: grub-core/loader/i386/pc/ntldr.c:155 -msgid "Load NTLDR or BootMGR." -msgstr "Λοαδ ÎΤΛΔΡ Î¿Ï Ï¬Î¿Î¿Ï„ÎœÎ“Î¡." - -#. TRANSLATORS: it's about guessing which GRUB disk -#. is which Plan9 disk. If your language has no -#. word "mapping" you can use another word which -#. means that the GRUBDEVICE and PLAN9DEVICE are -#. actually the same device, just named differently -#. in OS and GRUB. -#: grub-core/loader/i386/pc/plan9.c:59 -msgid "Override guessed mapping of Plan9 devices." -msgstr "ΟβεÏÏιδε γυεσσεδ μαππινγ οφ Πλαν9 δεβιϲεσ." - -#: grub-core/loader/i386/pc/plan9.c:60 -msgid "GRUBDEVICE=PLAN9DEVICE" -msgstr "ΓΡΥϬΔΕΒΙϲΕ=ΠΛΑÎ9ΔΕΒΙϲΕ" - -#: grub-core/loader/i386/pc/plan9.c:599 -msgid "KERNEL ARGS" -msgstr "ΚΕΡÎΕΛ ΑΡΓΣ" - -#: grub-core/loader/i386/pc/plan9.c:599 -msgid "Load Plan9 kernel." -msgstr "Λοαδ Πλαν9 κεÏνελ." - -#: grub-core/loader/i386/pc/pxechainloader.c:161 -msgid "Load a PXE image." -msgstr "Λοαδ α ΠΞΕ ιμαγε." - -#: grub-core/loader/i386/pc/truecrypt.c:226 -msgid "Load Truecrypt ISO." -msgstr "Λοαδ ΤÏυεϲÏϋπτ ΙΣΟ." - -#: grub-core/loader/i386/xen.c:781 grub-core/loader/i386/xen.c:865 -msgid "initrd already loaded" -msgstr "ινιτÏδ αλÏεαδϋ λοαδεδ" - -#: grub-core/loader/i386/xen.c:968 -msgid "Load module." -msgstr "Λοαδ μοδυλε." - -#: grub-core/loader/i386/xnu.c:1003 -msgid "Press any key to launch xnu" -msgstr "ΠÏεσσ ανϋ κεϋ το λαυνϲχ ξνυ" - -#. TRANSLATORS: `device-properties' -#. is a variable name, -#. not a program. -#: grub-core/loader/i386/xnu.c:1159 -msgid "Load `device-properties' dump." -msgstr "Λοαδ `δεβιϲε-Ï€ÏοπεÏτιεσ' δυμπ." - -#: grub-core/loader/ia64/efi/linux.c:124 -msgid "Could not locate FPSWA driver" -msgstr "ϲουλδ νοτ λοϲατε ΦΠΣΩΑ δÏιβεÏ" - -#: grub-core/loader/ia64/efi/linux.c:132 -msgid "FPSWA protocol wasn't able to find the interface" -msgstr "ΦΠΣΩΑ Ï€Ïοτοϲολ ωασν'Ï„ αϭλε το φινδ τχε ιντεÏφαϲε" - -#: grub-core/loader/ia64/efi/linux.c:580 -msgid "No FPSWA found" -msgstr "Îο ΦΠΣΩΑ φουνδ" - -#: grub-core/loader/ia64/efi/linux.c:582 -#, c-format -msgid "FPSWA revision: %x\n" -msgstr "ΦΠΣΩΑ Ïεβισιον: %x\n" - -#: grub-core/loader/ia64/efi/linux.c:591 -msgid "FILE [ARGS...]" -msgstr "ΦΙΛΕ [ΑΡΓΣ...]" - -#: grub-core/loader/ia64/efi/linux.c:597 -msgid "Display FPSWA version." -msgstr "Δισπλαϋ ΦΠΣΩΑ βεÏσιον." - -#: grub-core/loader/multiboot.c:248 -msgid "WARNING: no console will be available to OS" -msgstr "ΩΑΡÎΙÎΓ: νο ϲονσολε ωιλλ ϭε αβαιλαϭλε το ΟΣ" - -#: grub-core/loader/multiboot.c:450 -msgid "Load a multiboot 2 kernel." -msgstr "Λοαδ α μυλτιϭοοτ 2 κεÏνελ." - -#: grub-core/loader/multiboot.c:453 -msgid "Load a multiboot 2 module." -msgstr "Λοαδ α μυλτιϭοοτ 2 μοδυλε." - -#: grub-core/loader/multiboot.c:456 -msgid "Load a multiboot kernel." -msgstr "Λοαδ α μυλτιϭοοτ κεÏνελ." - -#: grub-core/loader/multiboot.c:459 -msgid "Load a multiboot module." -msgstr "Λοαδ α μυλτιϭοοτ μοδυλε." - -#: grub-core/loader/riscv/linux.c:30 grub-core/loader/riscv/linux.c:40 -msgid "Linux not supported yet" -msgstr "Λινυξ νοτ συπποÏτεδ ϋετ" - -#: grub-core/loader/xnu.c:1416 grub-core/term/gfxterm_background.c:45 -msgid "Background image mode." -msgstr "ϬαϲκγÏουνδ ιμαγε μοδε." - -#. TRANSLATORS: This refers to background image mode (stretched or -#. in left-top corner). Note that GRUB will accept only original -#. keywords stretch and normal, not the translated ones. -#. So please put both in translation -#. e.g. stretch(=%STRETCH%)|normal(=%NORMAL%). -#. The percents mark the translated version. Since many people -#. may not know the word stretch or normal I recommend -#. putting the translation either here or in "Background image mode." -#. string. -#: grub-core/loader/xnu.c:1416 grub-core/term/gfxterm_background.c:55 -msgid "stretch|normal" -msgstr "στÏετϲχ|νοÏμαλ" - -#: grub-core/loader/xnu.c:1482 -msgid "Load XNU image." -msgstr "Λοαδ ΞÎÎ¥ ιμαγε." - -#: grub-core/loader/xnu.c:1484 -msgid "Load 64-bit XNU image." -msgstr "Λοαδ 64-ϭιτ ΞÎÎ¥ ιμαγε." - -#: grub-core/loader/xnu.c:1486 -msgid "Load XNU extension package." -msgstr "Λοαδ ΞÎÎ¥ εξτενσιον παϲκαγε." - -#: grub-core/loader/xnu.c:1488 -msgid "Load XNU extension." -msgstr "Λοαδ ΞÎÎ¥ εξτενσιον." - -#. TRANSLATORS: OSBundleRequired is a -#. variable name in xnu extensions -#. manifests. It behaves mostly like -#. GNU/Linux runlevels. -#. -#: grub-core/loader/xnu.c:1495 -msgid "DIRECTORY [OSBundleRequired]" -msgstr "ΔΙΡΕϲΤΟΡΫ [ΟΣϬυνδλεΡεϗυιÏεδ]" - -#. TRANSLATORS: There are many extensions -#. in extension directory. -#: grub-core/loader/xnu.c:1498 -msgid "Load XNU extension directory." -msgstr "Λοαδ ΞÎÎ¥ εξτενσιον διÏεϲτοÏÏ‹." - -#. TRANSLATORS: ramdisk here isn't identifier. It can be translated. -#: grub-core/loader/xnu.c:1501 -msgid "Load XNU ramdisk. It will be available in OS as md0." -msgstr "Λοαδ ΞÎÎ¥ Ïαμδισκ. Ιτ ωιλλ ϭε αβαιλαϭλε ιν ΟΣ ασ μδ0." - -#: grub-core/loader/xnu.c:1505 -msgid "Load a splash image for XNU." -msgstr "Λοαδ α σπλασχ ιμαγε Ï†Î¿Ï ÎžÎÎ¥." - -#: grub-core/loader/xnu.c:1510 -msgid "Load an image of hibernated XNU." -msgstr "Λοαδ αν ιμαγε οφ χιϭεÏνατεδ ΞÎÎ¥." - -#: grub-core/mmap/mmap.c:538 -msgid "ADDR1,MASK1[,ADDR2,MASK2[,...]]" -msgstr "ΑΔΔΡ1,ΜΑΣΚ1[,ΑΔΔΡ2,ΜΑΣΚ2[,...]]" - -#: grub-core/mmap/mmap.c:539 -msgid "Declare memory regions as faulty (badram)." -msgstr "ΔεϲλαÏε μεμοÏÏ‹ Ïεγιονσ ασ φαυλτϋ (ϭαδÏαμ)." - -#: grub-core/mmap/mmap.c:541 -msgid "FROM[K|M|G] TO[K|M|G]" -msgstr "ΦΡΟΜ[Κ|Μ|Γ] ΤΟ[Κ|Μ|Γ]" - -#: grub-core/mmap/mmap.c:542 -msgid "Remove any memory regions in specified range." -msgstr "Ρεμοβε ανϋ μεμοÏÏ‹ Ïεγιονσ ιν σπεϲιφιεδ Ïανγε." - -#: grub-core/net/bootp.c:653 -msgid "four arguments expected" -msgstr "Ï†Î¿Ï…Ï Î±Ïγυμεντσ εξπεϲτεδ" - -#: grub-core/net/bootp.c:661 grub-core/net/net.c:1155 -#, c-format -msgid "unrecognised network interface `%s'" -msgstr "υνÏεϲογνισεδ νετωοÏκ ιντεÏφαϲε `%s'" - -#: grub-core/net/bootp.c:664 -msgid "no DHCP info found" -msgstr "νο ΔΧϲΠ ινφο φουνδ" - -#: grub-core/net/bootp.c:674 -msgid "no DHCP options found" -msgstr "νο ΔΧϲΠ οπτιονσ φουνδ" - -#: grub-core/net/bootp.c:682 -msgid "invalid DHCP option code" -msgstr "ινβαλιδ ΔΧϲΠ οπτιον ϲοδε" - -#: grub-core/net/bootp.c:686 -#, c-format -msgid "no DHCP option %u found" -msgstr "νο ΔΧϲΠ οπτιον %u φουνδ" - -#: grub-core/net/bootp.c:743 -#, c-format -msgid "unrecognised DHCP option format specification `%s'" -msgstr "υνÏεϲογνισεδ ΔΧϲΠ οπτιον φοÏματ σπεϲιφιϲατιον `%s'" - -#: grub-core/net/bootp.c:767 -msgid "no network card found" -msgstr "νο νετωοÏκ ϲαÏδ φουνδ" - -#: grub-core/net/bootp.c:859 grub-core/net/net.c:389 -#, c-format -msgid "couldn't autoconfigure %s" -msgstr "ϲουλδν'Ï„ αυτοϲονφιγυÏε %s" - -#: grub-core/net/bootp.c:873 grub-core/net/bootp.c:876 -msgid "[CARD]" -msgstr "[ϲΑΡΔ]" - -#: grub-core/net/bootp.c:874 -msgid "perform a bootp autoconfiguration" -msgstr "πεÏφοÏμ α ϭοοτπ αυτοϲονφιγυÏατιον" - -#: grub-core/net/bootp.c:877 -msgid "perform a DHCP autoconfiguration" -msgstr "πεÏφοÏμ α ΔΧϲΠ αυτοϲονφιγυÏατιον" - -#: grub-core/net/bootp.c:879 -msgid "VAR INTERFACE NUMBER DESCRIPTION" -msgstr "ΒΑΡ ΙÎΤΕΡΦΑϲΕ ÎΥΜϬΕΡ ΔΕΣϲΡΙΠΤΙΟÎ" - -#: grub-core/net/bootp.c:880 -msgid "" -"retrieve DHCP option and save it into VAR. If VAR is - then print the value." -msgstr "" -"ÏετÏιεβε ΔΧϲΠ οπτιον ανδ σαβε ιτ ιντο ΒΑΡ. Ιφ ΒΑΡ ισ - τχεν Ï€Ïιντ τχε βαλυε." - -#: grub-core/net/dns.c:459 -msgid "no DNS servers configured" -msgstr "νο ΔÎΣ σεÏβεÏσ ϲονφιγυÏεδ" - -#: grub-core/net/dns.c:522 -msgid "domain name component is too long" -msgstr "δομαιν ναμε ϲομπονεντ ισ τοο λονγ" - -#: grub-core/net/dns.c:618 grub-core/net/dns.c:666 -msgid "no DNS record found" -msgstr "νο ΔÎΣ ÏεϲοÏδ φουνδ" - -#: grub-core/net/dns.c:626 -msgid "no DNS reply received" -msgstr "νο ΔÎΣ Ïεπλϋ Ïεϲειβεδ" - -#: grub-core/net/dns.c:682 -msgid "only ipv4" -msgstr "ονλϋ ιπβ4" - -#: grub-core/net/dns.c:686 -msgid "only ipv6" -msgstr "ονλϋ ιπβ6" - -#: grub-core/net/dns.c:690 -msgid "prefer ipv4" -msgstr "Ï€ÏÎµÏ†ÎµÏ Î¹Ï€Î²4" - -#: grub-core/net/dns.c:694 -msgid "prefer ipv6" -msgstr "Ï€ÏÎµÏ†ÎµÏ Î¹Ï€Î²6" - -#: grub-core/net/dns.c:759 -msgid "ADDRESS DNSSERVER" -msgstr "ΑΔΔΡΕΣΣ ΔÎΣΣΕΡΒΕΡ" - -#: grub-core/net/dns.c:760 -msgid "Perform a DNS lookup" -msgstr "ΠεÏφοÏμ α ΔÎΣ λοοκυπ" - -#: grub-core/net/dns.c:762 grub-core/net/dns.c:765 -msgid "DNSSERVER" -msgstr "ΔÎΣΣΕΡΒΕΡ" - -#: grub-core/net/dns.c:763 -msgid "Add a DNS server" -msgstr "Αδδ α ΔÎΣ σεÏβεÏ" - -#: grub-core/net/dns.c:766 -msgid "Remove a DNS server" -msgstr "Ρεμοβε α ΔÎΣ σεÏβεÏ" - -#: grub-core/net/dns.c:768 -msgid "List DNS servers" -msgstr "Λιστ ΔÎΣ σεÏβεÏσ" - -#: grub-core/net/drivers/efi/efinet.c:49 grub-core/net/drivers/efi/efinet.c:65 -#: grub-core/net/drivers/efi/efinet.c:77 grub-core/net/drivers/emu/emunet.c:62 -#: grub-core/net/drivers/i386/pc/pxe.c:273 -#: grub-core/net/drivers/ieee1275/ofnet.c:75 -#: grub-core/net/drivers/uboot/ubootnet.c:62 -msgid "couldn't send network packet" -msgstr "ϲουλδν'Ï„ σενδ νετωοÏκ παϲκετ" - -#: grub-core/net/drivers/ieee1275/ofnet.c:326 -#: grub-core/net/drivers/ieee1275/ofnet.c:359 -msgid "interpret is not supported" -msgstr "ιντεÏÏ€Ïετ ισ νοτ συπποÏτεδ" - -#: grub-core/net/drivers/ieee1275/ofnet.c:336 -msgid "alloc-mem failed" -msgstr "αλλοϲ-μεμ φαιλεδ" - -#: grub-core/net/drivers/ieee1275/ofnet.c:370 -msgid "free-mem failed" -msgstr "φÏεε-μεμ φαιλεδ" - -#: grub-core/net/http.c:105 -msgid "unsupported HTTP response" -msgstr "υνσυπποÏτεδ ΧΤΤΠ Ïεσπονσε" - -#. TRANSLATORS: GRUB HTTP code is pretty young. So even perfectly -#. valid answers like 403 will trigger this very generic message. -#: grub-core/net/http.c:126 -#, c-format -msgid "unsupported HTTP error %d: %s" -msgstr "υνσυπποÏτεδ ΧΤΤΠ εÏÏÎ¿Ï %d: %s" - -#: grub-core/net/http.c:429 grub-core/net/tftp.c:420 -#, c-format -msgid "time out opening `%s'" -msgstr "τιμε ουτ οπενινγ `%s'" - -#: grub-core/net/net.c:179 -msgid "timeout: could not resolve hardware address" -msgstr "τιμεουτ: ϲουλδ νοτ Ïεσολβε χαÏδωαÏε αδδÏεσσ" - -#: grub-core/net/net.c:548 -#, c-format -msgid "unresolvable address %s" -msgstr "υνÏεσολβαϭλε αδδÏεσσ %s" - -#: grub-core/net/net.c:594 -#, c-format -msgid "unrecognised network address `%s'" -msgstr "υνÏεϲογνισεδ νετωοÏκ αδδÏεσσ `%s'" - -#: grub-core/net/net.c:661 -msgid "destination unreachable" -msgstr "δεστινατιον υνÏεαϲχαϭλε" - -#. TRANSLATORS: route loop is a condition when e.g. -#. to contact server A you need to go through B -#. and to contact B you need to go through A. -#: grub-core/net/net.c:684 -msgid "route loop detected" -msgstr "Ïουτε λοοπ δετεϲτεδ" - -#: grub-core/net/net.c:700 -msgid "address not found" -msgstr "αδδÏεσσ νοτ φουνδ" - -#: grub-core/net/net.c:704 -msgid "you can't delete this address" -msgstr "ϋου ϲαν'Ï„ δελετε τχισ αδδÏεσσ" - -#: grub-core/net/net.c:776 grub-core/net/net.c:792 -#, c-format -msgid "Unsupported hw address type %d\n" -msgstr "ΥνσυπποÏτεδ χω αδδÏεσσ τϋπε %d\n" - -#: grub-core/net/net.c:813 -#, c-format -msgid "Unsupported address type %d\n" -msgstr "ΥνσυπποÏτεδ αδδÏεσσ τϋπε %d\n" - -#: grub-core/net/net.c:1017 grub-core/net/net.c:1131 -msgid "three arguments expected" -msgstr "τχÏεε αÏγυμεντσ εξπεϲτεδ" - -#: grub-core/net/net.c:1023 -msgid "card not found" -msgstr "ϲαÏδ νοτ φουνδ" - -#. TRANSLATORS: it refers to the network address. -#: grub-core/net/net.c:1167 -msgid "temporary" -msgstr "τεμποÏαÏÏ‹" - -#: grub-core/net/net.c:1190 -#, c-format -msgid "Unknown address type %d\n" -msgstr "Υνκνοων αδδÏεσσ τϋπε %d\n" - -#: grub-core/net/net.c:1298 -msgid "no server is specified" -msgstr "νο σεÏÎ²ÎµÏ Î¹Ïƒ σπεϲιφιεδ" - -#: grub-core/net/net.c:1637 -#, c-format -msgid "timeout reading `%s'" -msgstr "τιμεουτ Ïεαδινγ `%s'" - -#. TRANSLATORS: HWADDRESS stands for -#. "hardware address". -#: grub-core/net/net.c:1762 -msgid "SHORTNAME CARD ADDRESS [HWADDRESS]" -msgstr "ΣΧΟΡΤÎΑΜΕ ϲΑΡΔ ΑΔΔΡΕΣΣ [ΧΩΑΔΔΡΕΣΣ]" - -#: grub-core/net/net.c:1763 -msgid "Add a network address." -msgstr "Αδδ α νετωοÏκ αδδÏεσσ." - -#: grub-core/net/net.c:1766 -msgid "[CARD [HWADDRESS]]" -msgstr "[ϲΑΡΔ [ΧΩΑΔΔΡΕΣΣ]]" - -#: grub-core/net/net.c:1767 -msgid "Perform an IPV6 autoconfiguration" -msgstr "ΠεÏφοÏμ αν ΙΠΒ6 αυτοϲονφιγυÏατιον" - -#: grub-core/net/net.c:1770 grub-core/net/net.c:1777 -msgid "SHORTNAME" -msgstr "ΣΧΟΡΤÎΑΜΕ" - -#: grub-core/net/net.c:1771 -msgid "Delete a network address." -msgstr "Δελετε α νετωοÏκ αδδÏεσσ." - -#. TRANSLATORS: "gw" is a keyword. -#: grub-core/net/net.c:1774 -msgid "SHORTNAME NET [INTERFACE| gw GATEWAY]" -msgstr "ΣΧΟΡΤÎΑΜΕ ÎΕΤ [ΙÎΤΕΡΦΑϲΕ| γω ΓΑΤΕΩΑΫ]" - -#: grub-core/net/net.c:1775 -msgid "Add a network route." -msgstr "Αδδ α νετωοÏκ Ïουτε." - -#: grub-core/net/net.c:1778 -msgid "Delete a network route." -msgstr "Δελετε α νετωοÏκ Ïουτε." - -#: grub-core/net/net.c:1780 -msgid "list network routes" -msgstr "λιστ νετωοÏκ Ïουτεσ" - -#: grub-core/net/net.c:1782 -msgid "list network cards" -msgstr "λιστ νετωοÏκ ϲαÏδσ" - -#: grub-core/net/net.c:1784 -msgid "list network addresses" -msgstr "λιστ νετωοÏκ αδδÏεσσεσ" - -#: grub-core/net/tcp.c:681 -msgid "connection refused" -msgstr "ϲοννεϲτιον Ïεφυσεδ" - -#: grub-core/net/tcp.c:684 -msgid "connection timeout" -msgstr "ϲοννεϲτιον τιμεουτ" - -#: grub-core/normal/auth.c:220 -msgid "Enter username: " -msgstr "Î•Î½Ï„ÎµÏ Ï…ÏƒÎµÏναμε: " - -#: grub-core/normal/auth.c:269 -msgid "[USERLIST]" -msgstr "[ΥΣΕΡΛΙΣΤ]" - -#: grub-core/normal/auth.c:270 -msgid "Check whether user is in USERLIST." -msgstr "ϲχεϲκ Ï‰Ï‡ÎµÏ„Ï‡ÎµÏ Ï…ÏƒÎµÏ Î¹Ïƒ ιν ΥΣΕΡΛΙΣΤ." - -#: grub-core/normal/cmdline.c:174 grub-core/normal/menu_entry.c:1068 -msgid "Possible commands are:" -msgstr "Ποσσιϭλε ϲομμανδσ αÏε:" - -#: grub-core/normal/cmdline.c:177 grub-core/normal/menu_entry.c:1072 -msgid "Possible devices are:" -msgstr "Ποσσιϭλε δεβιϲεσ αÏε:" - -#: grub-core/normal/cmdline.c:180 grub-core/normal/menu_entry.c:1076 -msgid "Possible files are:" -msgstr "Ποσσιϭλε φιλεσ αÏε:" - -#: grub-core/normal/cmdline.c:183 grub-core/normal/menu_entry.c:1080 -msgid "Possible partitions are:" -msgstr "Ποσσιϭλε παÏτιτιονσ αÏε:" - -#: grub-core/normal/cmdline.c:186 grub-core/normal/menu_entry.c:1084 -msgid "Possible arguments are:" -msgstr "Ποσσιϭλε αÏγυμεντσ αÏε:" - -#. TRANSLATORS: this message is used if none of above matches. -#. This shouldn't happen but please use the general term for -#. "thing" or "object". -#: grub-core/normal/cmdline.c:192 grub-core/normal/menu_entry.c:1088 -msgid "Possible things are:" -msgstr "Ποσσιϭλε τχινγσ αÏε:" - -#: grub-core/normal/color.c:81 -#, c-format -msgid "Warning: syntax error (missing slash) in `%s'\n" -msgstr "ΩαÏνινγ: σϋνταξ εÏÏÎ¿Ï (μισσινγ σλασχ) ιν `%s'\n" - -#: grub-core/normal/color.c:90 -#, c-format -msgid "Warning: invalid foreground color `%s'\n" -msgstr "ΩαÏνινγ: ινβαλιδ φοÏεγÏουνδ Ï²Î¿Î»Î¿Ï `%s'\n" - -#: grub-core/normal/color.c:96 -#, c-format -msgid "Warning: invalid background color `%s'\n" -msgstr "ΩαÏνινγ: ινβαλιδ ϭαϲκγÏουνδ Ï²Î¿Î»Î¿Ï `%s'\n" - -#: grub-core/normal/context.c:206 -msgid "ENVVAR [ENVVAR] ..." -msgstr "ΕÎΒΒΑΡ [ΕÎΒΒΑΡ] ..." - -#: grub-core/normal/context.c:207 -msgid "Export variables." -msgstr "ΕξποÏÏ„ βαÏιαϭλεσ." - -#: grub-core/normal/datetime.c:25 -msgid "Sunday" -msgstr "Συνδαϋ" - -#: grub-core/normal/datetime.c:26 -msgid "Monday" -msgstr "Μονδαϋ" - -#: grub-core/normal/datetime.c:27 -msgid "Tuesday" -msgstr "Τυεσδαϋ" - -#: grub-core/normal/datetime.c:28 -msgid "Wednesday" -msgstr "Ωεδνεσδαϋ" - -#: grub-core/normal/datetime.c:29 -msgid "Thursday" -msgstr "ΤχυÏσδαϋ" - -#: grub-core/normal/datetime.c:30 -msgid "Friday" -msgstr "ΦÏιδαϋ" - -#: grub-core/normal/datetime.c:31 -msgid "Saturday" -msgstr "ΣατυÏδαϋ" - -#: grub-core/normal/dyncmd.c:187 -msgid "module isn't loaded" -msgstr "μοδυλε ισν'Ï„ λοαδεδ" - -#: grub-core/normal/main.c:211 -#, c-format -msgid "GNU GRUB version %s" -msgstr "ΓÎÎ¥ ΓΡΥϬ βεÏσιον %s" - -#: grub-core/normal/main.c:360 -msgid "ESC at any time exits." -msgstr "ΕΣϲ ατ ανϋ τιμε εξιτσ." - -#: grub-core/normal/main.c:363 -#, c-format -msgid "" -"Minimal BASH-like line editing is supported. For the first word, TAB lists " -"possible command completions. Anywhere else TAB lists possible device or " -"file completions. %s" -msgstr "" -"Μινιμαλ ϬΑΣΧ-λικε λινε εδιτινγ ισ συπποÏτεδ. Î¦Î¿Ï Ï„Ï‡Îµ φιÏστ ωοÏδ, ΤΑϬ λιστσ " -"ποσσιϭλε ϲομμανδ ϲομπλετιονσ. ΑνϋωχεÏε ελσε ΤΑϬ λιστσ ποσσιϭλε δεβιϲε Î¿Ï " -"φιλε ϲομπλετιονσ. %s" - -#. TRANSLATORS: it's command line prompt. -#: grub-core/normal/main.c:395 -msgid ">" -msgstr ">" - -#. TRANSLATORS: it's command line prompt. -#: grub-core/normal/main.c:398 -msgid "grub>" -msgstr "γÏÏ…Ï­>" - -#: grub-core/normal/main.c:518 -msgid "Clear the screen." -msgstr "Ï²Î»ÎµÎ±Ï Ï„Ï‡Îµ σϲÏεεν." - -#: grub-core/normal/main.c:527 -msgid "Enter normal mode." -msgstr "Î•Î½Ï„ÎµÏ Î½Î¿Ïμαλ μοδε." - -#: grub-core/normal/main.c:529 -msgid "Exit from normal mode." -msgstr "Εξιτ φÏομ νοÏμαλ μοδε." - -#: grub-core/normal/menu.c:66 grub-core/normal/menu_entry.c:1449 -msgid "Press any key to continue..." -msgstr "ΠÏεσσ ανϋ κεϋ το ϲοντινυε..." - -#: grub-core/normal/menu.c:815 -#, c-format -msgid "Booting `%s'" -msgstr "Ϭοοτινγ `%s'" - -#: grub-core/normal/menu.c:827 -#, c-format -msgid "Falling back to `%s'" -msgstr "Φαλλινγ ϭαϲκ το `%s'" - -#: grub-core/normal/menu.c:843 -msgid "Failed to boot both default and fallback entries.\n" -msgstr "Φαιλεδ το ϭοοτ ϭοτχ δεφαυλτ ανδ φαλλϭαϲκ εντÏιεσ.\n" - -#: grub-core/normal/menu_entry.c:1171 -msgid "Booting a command list" -msgstr "Ϭοοτινγ α ϲομμανδ λιστ" - -#: grub-core/normal/menu_text.c:160 -msgid "" -"Minimum Emacs-like screen editing is supported. TAB lists completions. Press " -"Ctrl-x or F10 to boot, Ctrl-c or F2 for a command-line or ESC to discard " -"edits and return to the GRUB menu." -msgstr "" -"Μινιμυμ Εμαϲσ-λικε σϲÏεεν εδιτινγ ισ συπποÏτεδ. ΤΑϬ λιστσ ϲομπλετιονσ. ΠÏεσσ " -"ϲτÏλ-ξ Î¿Ï Î¦10 το ϭοοτ, ϲτÏλ-ϲ Î¿Ï Î¦2 Ï†Î¿Ï Î± ϲομμανδ-λινε Î¿Ï Î•Î£Ï² το δισϲαÏδ " -"εδιτσ ανδ ÏετυÏν το τχε ΓΡΥϬ μενυ." - -#: grub-core/normal/menu_text.c:170 -#, c-format -msgid "Use the %C and %C keys to select which entry is highlighted." -msgstr "Υσε τχε %C ανδ %C κεϋσ το σελεϲτ ωχιϲχ εντÏÏ‹ ισ χιγχλιγχτεδ." - -#. TRANSLATORS: that's the list of binary unit prefixes. -#: grub-core/normal/misc.c:38 -msgid "B" -msgstr "Ϭ" - -#: grub-core/normal/misc.c:38 -msgid "KiB" -msgstr "ΚιϬ" - -#: grub-core/normal/misc.c:38 -msgid "MiB" -msgstr "ΜιϬ" - -#: grub-core/normal/misc.c:38 -msgid "GiB" -msgstr "ΓιϬ" - -#: grub-core/normal/misc.c:38 -msgid "TiB" -msgstr "ΤιϬ" - -#: grub-core/normal/misc.c:38 -msgid "PiB" -msgstr "ΠιϬ" - -#. TRANSLATORS: that's the list of binary unit prefixes. -#: grub-core/normal/misc.c:40 -msgid "K" -msgstr "Κ" - -#: grub-core/normal/misc.c:40 -msgid "M" -msgstr "Μ" - -#: grub-core/normal/misc.c:40 -msgid "G" -msgstr "Γ" - -#: grub-core/normal/misc.c:40 -msgid "T" -msgstr "Τ" - -#: grub-core/normal/misc.c:40 -msgid "P" -msgstr "Π" - -#. TRANSLATORS: that's the list of binary unit prefixes. -#: grub-core/normal/misc.c:42 -msgid "B/s" -msgstr "Ϭ/σ" - -#: grub-core/normal/misc.c:42 -msgid "KiB/s" -msgstr "ΚιϬ/σ" - -#: grub-core/normal/misc.c:42 -msgid "MiB/s" -msgstr "ΜιϬ/σ" - -#: grub-core/normal/misc.c:42 -msgid "GiB/s" -msgstr "ΓιϬ/σ" - -#: grub-core/normal/misc.c:42 -msgid "TiB/s" -msgstr "ΤιϬ/σ" - -#: grub-core/normal/misc.c:42 -msgid "PiB/s" -msgstr "ΠιϬ/σ" - -#: grub-core/normal/misc.c:96 -#, c-format -msgid "Partition %s:" -msgstr "ΠαÏτιτιον %s:" - -#: grub-core/normal/misc.c:101 -#, c-format -msgid "Device %s:" -msgstr "Δεβιϲε %s:" - -#: grub-core/normal/misc.c:107 -msgid "Filesystem cannot be accessed" -msgstr "Φιλεσϋστεμ ϲαννοτ ϭε αϲϲεσσεδ" - -#: grub-core/normal/misc.c:121 -#, c-format -msgid "Filesystem type %s" -msgstr "Φιλεσϋστεμ τϋπε %s" - -#: grub-core/normal/misc.c:131 -#, c-format -msgid "- Label `%s'" -msgstr "- Λαϭελ `%s'" - -#. TRANSLATORS: Arguments are year, month, day, hour, minute, -#. second, day of the week (translated). -#: grub-core/normal/misc.c:148 -#, c-format -msgid "- Last modification time %d-%02d-%02d %02d:%02d:%02d %s" -msgstr "- Λαστ μοδιφιϲατιον τιμε %d-%02d-%02d %02d:%02d:%02d %s" - -#: grub-core/normal/misc.c:171 -msgid "No known filesystem detected" -msgstr "Îο κνοων φιλεσϋστεμ δετεϲτεδ" - -#: grub-core/normal/misc.c:174 -#, c-format -msgid " - Partition start at %llu%sKiB" -msgstr " - ΠαÏτιτιον σταÏÏ„ ατ %llu%sΚιϬ" - -#: grub-core/normal/misc.c:178 -#, c-format -msgid " - Sector size %uB" -msgstr " - Î£ÎµÏ²Ï„Î¿Ï ÏƒÎ¹Î¶Îµ %uϬ" - -#: grub-core/normal/misc.c:180 -msgid " - Total size unknown" -msgstr " - Τοταλ σιζε υνκνοων" - -#: grub-core/normal/misc.c:182 -#, c-format -msgid " - Total size %llu%sKiB" -msgstr " - Τοταλ σιζε %llu%sΚιϬ" - -#. TRANSLATORS: Replace dot with appropriate decimal separator for -#. your language. -#: grub-core/normal/misc.c:186 -msgid ".5" -msgstr ".5" - -#. TRANSLATORS: This has to fit on one line. It's ok to include few -#. words but don't write poems. -#: grub-core/normal/term.c:82 -msgid "--MORE--" -msgstr "--ΜΟΡΕ--" - -#: grub-core/osdep/aros/config.c:92 grub-core/osdep/unix/config.c:137 -#: grub-core/osdep/windows/config.c:55 -#, c-format -msgid "cannot open configuration file `%s': %s" -msgstr "ϲαννοτ οπεν ϲονφιγυÏατιον φιλε `%s': %s" - -#: grub-core/osdep/basic/compress.c:8 grub-core/osdep/basic/compress.c:14 -#: grub-core/osdep/basic/compress.c:20 -msgid "no compression is available for your platform" -msgstr "νο ϲομπÏεσσιον ισ αβαιλαϭλε Ï†Î¿Ï Ï‹Î¿Ï…Ï Ï€Î»Î±Ï„Ï†Î¿Ïμ" - -#: grub-core/osdep/basic/no_platform.c:30 -#: grub-core/osdep/windows/platform.c:418 -msgid "no IEEE1275 routines are available for your platform" -msgstr "νο ΙΕΕΕ1275 Ïουτινεσ αÏε αβαιλαϭλε Ï†Î¿Ï Ï‹Î¿Ï…Ï Ï€Î»Î±Ï„Ï†Î¿Ïμ" - -#: grub-core/osdep/basic/no_platform.c:38 -msgid "no EFI routines are available for your platform" -msgstr "νο ΕΦΙ Ïουτινεσ αÏε αβαιλαϭλε Ï†Î¿Ï Ï‹Î¿Ï…Ï Ï€Î»Î±Ï„Ï†Î¿Ïμ" - -#: grub-core/osdep/basic/no_platform.c:45 -#: grub-core/osdep/windows/platform.c:425 -msgid "no SGI routines are available for your platform" -msgstr "νο ΣΓΙ Ïουτινεσ αÏε αβαιλαϭλε Ï†Î¿Ï Ï‹Î¿Ï…Ï Ï€Î»Î±Ï„Ï†Î¿Ïμ" - -#. TRANSLATORS: The OS itself may very well have a random -#. number generator but GRUB doesn't know how to access it. -#: grub-core/osdep/basic/random.c:42 -msgid "no random number generator is available for your OS" -msgstr "νο Ïανδομ Î½Ï…Î¼Ï­ÎµÏ Î³ÎµÎ½ÎµÏÎ±Ï„Î¿Ï Î¹Ïƒ αβαιλαϭλε Ï†Î¿Ï Ï‹Î¿Ï…Ï ÎŸÎ£" - -#: grub-core/osdep/devmapper/getroot.c:81 -msgid "Failed to create `device-mapper' tree" -msgstr "Φαιλεδ το ϲÏεατε `δεβιϲε-μαππεÏ' Ï„Ïεε" - -#: grub-core/osdep/devmapper/getroot.c:197 -#: grub-core/osdep/freebsd/getroot.c:202 -#, c-format -msgid "can't mount encrypted volume `%s': %s" -msgstr "ϲαν'Ï„ μουντ ενϲÏϋπτεδ βολυμε `%s': %s" - -#. TRANSLATORS: geom is the name of (k)FreeBSD device framework. -#. Usually left untranslated. -#. -#: grub-core/osdep/freebsd/getroot.c:82 grub-core/osdep/freebsd/getroot.c:164 -#: grub-core/osdep/freebsd/getroot.c:258 grub-core/osdep/freebsd/getroot.c:316 -msgid "couldn't open geom" -msgstr "ϲουλδν'Ï„ οπεν γεομ" - -#: grub-core/osdep/freebsd/getroot.c:182 grub-core/osdep/freebsd/getroot.c:277 -msgid "couldn't find geli consumer" -msgstr "ϲουλδν'Ï„ φινδ γελι ϲονσυμεÏ" - -#: grub-core/osdep/freebsd/getroot.c:282 -msgid "couldn't retrieve geli UUID" -msgstr "ϲουλδν'Ï„ ÏετÏιεβε γελι ΥΥΙΔ" - -#. TRANSLATORS: geom is the name of (k)FreeBSD device framework. -#. Usually left untranslated. "part" is the identifier of one of its -#. classes. -#: grub-core/osdep/freebsd/getroot.c:325 -msgid "couldn't find geom `part' class" -msgstr "ϲουλδν'Ï„ φινδ γεομ `παÏÏ„' ϲλασσ" - -#: grub-core/osdep/freebsd/hostdisk.c:72 grub-core/osdep/linux/hostdisk.c:93 -msgid "unaligned device size" -msgstr "υναλιγνεδ δεβιϲε σιζε" - -#: grub-core/osdep/generic/blocklist.c:56 -#, c-format -msgid "attempting to read the core image `%s' from GRUB" -msgstr "αττεμπτινγ το Ïεαδ τχε ϲοÏε ιμαγε `%s' φÏομ ΓΡΥϬ" - -#: grub-core/osdep/generic/blocklist.c:57 -#, c-format -msgid "attempting to read the core image `%s' from GRUB again" -msgstr "αττεμπτινγ το Ïεαδ τχε ϲοÏε ιμαγε `%s' φÏομ ΓΡΥϬ αγαιν" - -#: grub-core/osdep/generic/blocklist.c:115 -#, c-format -msgid "cannot read `%s' correctly" -msgstr "ϲαννοτ Ïεαδ `%s' ϲοÏÏεϲτλϋ" - -#: grub-core/osdep/generic/blocklist.c:126 -msgid "failed to read the sectors of the core image" -msgstr "φαιλεδ το Ïεαδ τχε σεϲτοÏσ οφ τχε ϲοÏε ιμαγε" - -#. TRANSLATORS: On GNU/Hurd, a "translator" is similar to a filesystem -#. mount, but handled by a userland daemon, whose invocation command line -#. is being fetched here. First %s is the file being looked at (for which -#. we are fetching the "translator" command line), second %s is the error -#. message. -#. -#: grub-core/osdep/hurd/getroot.c:79 -#, c-format -msgid "cannot get translator command line for path `%s': %s" -msgstr "ϲαννοτ γετ Ï„ÏÎ±Î½ÏƒÎ»Î±Ï„Î¿Ï Ï²Î¿Î¼Î¼Î±Î½Î´ λινε Ï†Î¿Ï Ï€Î±Ï„Ï‡ `%s': %s" - -#: grub-core/osdep/hurd/getroot.c:82 -#, c-format -msgid "translator command line is empty for path `%s'" -msgstr "Ï„ÏÎ±Î½ÏƒÎ»Î±Ï„Î¿Ï Ï²Î¿Î¼Î¼Î±Î½Î´ λινε ισ εμπτϋ Ï†Î¿Ï Ï€Î±Ï„Ï‡ `%s'" - -#. TRANSLATORS: we expect to get something like -#. /hurd/foobar --option1 --option2=baz /dev/something -#. -#: grub-core/osdep/hurd/getroot.c:98 -#, c-format -msgid "" -"translator `%s' for path `%s' has several non-option words, at least `%s' " -"and `%s'" -msgstr "" -"Ï„ÏÎ±Î½ÏƒÎ»Î±Ï„Î¿Ï `%s' Ï†Î¿Ï Ï€Î±Ï„Ï‡ `%s' χασ σεβεÏαλ νον-οπτιον ωοÏδσ, ατ λεαστ `%s' " -"ανδ `%s'" - -#. TRANSLATORS: we expect to get something like -#. /hurd/foobar --option1 --option2=baz /dev/something -#. -#: grub-core/osdep/hurd/getroot.c:109 -#, c-format -msgid "" -"translator `%s' for path `%s' is given only options, cannot find device part" -msgstr "" -"Ï„ÏÎ±Î½ÏƒÎ»Î±Ï„Î¿Ï `%s' Ï†Î¿Ï Ï€Î±Ï„Ï‡ `%s' ισ γιβεν ονλϋ οπτιονσ, ϲαννοτ φινδ δεβιϲε παÏÏ„" - -#: grub-core/osdep/hurd/hostdisk.c:73 -#, c-format -msgid "Storage information for `%s' does not include type" -msgstr "ΣτοÏαγε ινφοÏματιον Ï†Î¿Ï `%s' δοεσ νοτ ινϲλυδε τϋπε" - -#: grub-core/osdep/hurd/hostdisk.c:75 -#, c-format -msgid "`%s' is not a local disk" -msgstr "`%s' ισ νοτ α λοϲαλ δισκ" - -#: grub-core/osdep/hurd/hostdisk.c:78 -#, c-format -msgid "" -"Storage information for `%s' indicates neither a plain partition nor a plain " -"disk" -msgstr "" -"ΣτοÏαγε ινφοÏματιον Ï†Î¿Ï `%s' ινδιϲατεσ Î½ÎµÎ¹Ï„Ï‡ÎµÏ Î± πλαιν παÏτιτιον Î½Î¿Ï Î± πλαιν " -"δισκ" - -#: grub-core/osdep/linux/blocklist.c:81 grub-core/osdep/linux/blocklist.c:96 -#: grub-core/osdep/linux/blocklist.c:122 -#, c-format -msgid "can't retrieve blocklists: %s" -msgstr "ϲαν'Ï„ ÏετÏιεβε ϭλοϲκλιστσ: %s" - -#: grub-core/osdep/linux/blocklist.c:84 -msgid "blocksize is not divisible by 512" -msgstr "ϭλοϲκσιζε ισ νοτ διβισιϭλε Ï­Ï‹ 512" - -#: grub-core/osdep/linux/blocklist.c:86 -msgid "invalid zero blocksize" -msgstr "ινβαλιδ ζεÏο ϭλοϲκσιζε" - -#: grub-core/osdep/linux/blocklist.c:90 util/setup.c:744 -msgid "can't retrieve blocklists" -msgstr "ϲαν'Ï„ ÏετÏιεβε ϭλοϲκλιστσ" - -#: grub-core/osdep/linux/getroot.c:154 -#, c-format -msgid "ioctl RAID_VERSION error: %s" -msgstr "ιοϲτλ ΡΑΙΔ_ΒΕΡΣΙΟΠεÏÏοÏ: %s" - -#: grub-core/osdep/linux/getroot.c:160 grub-core/osdep/linux/getroot.c:164 -#, c-format -msgid "unsupported RAID version: %d.%d" -msgstr "υνσυπποÏτεδ ΡΑΙΔ βεÏσιον: %d.%d" - -#: grub-core/osdep/linux/getroot.c:169 -#, c-format -msgid "ioctl GET_ARRAY_INFO error: %s" -msgstr "ιοϲτλ ΓΕΤ_ΑΡΡΑΫ_ΙÎΦΟ εÏÏοÏ: %s" - -#: grub-core/osdep/linux/getroot.c:178 -#, c-format -msgid "ioctl GET_DISK_INFO error: %s" -msgstr "ιοϲτλ ΓΕΤ_ΔΙΣΚ_ΙÎΦΟ εÏÏοÏ: %s" - -#: grub-core/osdep/linux/getroot.c:608 grub-core/osdep/linux/getroot.c:678 -#: grub-core/osdep/linux/hostdisk.c:126 grub-core/osdep/unix/getroot.c:253 -#: grub-core/osdep/unix/getroot.c:642 grub-core/osdep/unix/platform.c:92 -#: grub-core/osdep/unix/platform.c:100 -#, c-format -msgid "Unable to open stream from %s: %s" -msgstr "Υναϭλε το οπεν στÏεαμ φÏομ %s: %s" - -#: grub-core/osdep/linux/getroot.c:1033 -#, c-format -msgid "unknown kind of RAID device `%s'" -msgstr "υνκνοων κινδ οφ ΡΑΙΔ δεβιϲε `%s'" - -#: grub-core/osdep/linux/ofpath.c:181 -#, c-format -msgid "`obppath' not found in parent dirs of `%s', no IEEE1275 name discovery" -msgstr "`οϭππατχ' νοτ φουνδ ιν παÏεντ διÏσ οφ `%s', νο ΙΕΕΕ1275 ναμε δισϲοβεÏÏ‹" - -#: grub-core/osdep/linux/ofpath.c:222 grub-core/osdep/unix/getroot.c:505 -#: grub-core/osdep/unix/getroot.c:529 grub-core/osdep/unix/relpath.c:49 -#: util/grub-install.c:984 util/grub-install.c:1331 util/grub-probe.c:323 -#, c-format -msgid "failed to get canonical path of `%s'" -msgstr "φαιλεδ το γετ ϲανονιϲαλ πατχ οφ `%s'" - -#: grub-core/osdep/linux/ofpath.c:740 -#, c-format -msgid "unknown device type %s" -msgstr "υνκνοων δεβιϲε τϋπε %s" - -#: grub-core/osdep/linux/ofpath.c:758 util/ieee1275/grub-ofpathname.c:39 -#, c-format -msgid "Usage: %s DEVICE\n" -msgstr "Υσαγε: %s ΔΕΒΙϲΕ\n" - -#: grub-core/osdep/unix/exec.c:86 grub-core/osdep/unix/exec.c:172 -#: grub-core/osdep/unix/exec.c:217 -#, c-format -msgid "Unable to fork: %s" -msgstr "Υναϭλε το φοÏκ: %s" - -#: grub-core/osdep/unix/exec.c:166 grub-core/osdep/unix/exec.c:211 -#, c-format -msgid "Unable to create pipe: %s" -msgstr "Υναϭλε το ϲÏεατε πιπε: %s" - -#: grub-core/osdep/unix/getroot.c:370 -msgid "cannot save the original directory" -msgstr "ϲαννοτ σαβε τχε οÏιγιναλ διÏεϲτοÏÏ‹" - -#: grub-core/osdep/unix/getroot.c:423 grub-core/osdep/unix/getroot.c:480 -#: grub-core/osdep/unix/getroot.c:489 -msgid "cannot restore the original directory" -msgstr "ϲαννοτ ÏεστοÏε τχε οÏιγιναλ διÏεϲτοÏÏ‹" - -#. TRANSLATORS: "stat" comes from the name of POSIX function. -#: grub-core/osdep/unix/getroot.c:551 grub-core/osdep/unix/hostdisk.c:61 -#: grub-core/osdep/unix/relpath.c:73 grub-core/osdep/unix/relpath.c:97 -#: util/getroot.c:160 util/getroot.c:162 util/grub-install.c:774 -#: util/grub-macbless.c:70 -#, c-format -msgid "cannot stat `%s': %s" -msgstr "ϲαννοτ στατ `%s': %s" - -#: grub-core/osdep/unix/hostdisk.c:293 -#, c-format -msgid "cannot make temporary file: %s" -msgstr "ϲαννοτ μακε τεμποÏαÏÏ‹ φιλε: %s" - -#: grub-core/osdep/unix/hostdisk.c:311 -#, c-format -msgid "cannot make temporary directory: %s" -msgstr "ϲαννοτ μακε τεμποÏαÏÏ‹ διÏεϲτοÏÏ‹: %s" - -#: grub-core/osdep/unix/platform.c:77 -#, c-format -msgid "" -"couldn't find IEEE1275 device path for %s.\n" -"You will have to set `boot-device' variable manually" -msgstr "" -"ϲουλδν'Ï„ φινδ ΙΕΕΕ1275 δεβιϲε πατχ Ï†Î¿Ï %s.\n" -"Ϋου ωιλλ χαβε το σετ `ϭοοτ-δεβιϲε' βαÏιαϭλε μανυαλλϋ" - -#. TRANSLATORS: This message is shown when required executable `%s' -#. isn't found. -#: grub-core/osdep/unix/platform.c:149 grub-core/osdep/unix/platform.c:189 -#, c-format -msgid "%s: not found" -msgstr "%s: νοτ φουνδ" - -#: grub-core/osdep/unix/platform.c:225 -#, c-format -msgid "" -"`nvsetenv' failed. \n" -"You will have to set `boot-device' variable manually. At the IEEE1275 " -"prompt, type:\n" -" %s\n" -msgstr "" -"`νβσετενβ' φαιλεδ. \n" -"Ϋου ωιλλ χαβε το σετ `ϭοοτ-δεβιϲε' βαÏιαϭλε μανυαλλϋ. Ατ τχε ΙΕΕΕ1275 " -"Ï€Ïομπτ, τϋπε:\n" -" %s\n" - -#: grub-core/osdep/unix/platform.c:240 -msgid "You will have to set `SystemPartition' and `OSLoader' manually." -msgstr "Ϋου ωιλλ χαβε το σετ `ΣϋστεμΠαÏτιτιον' ανδ `ΟΣΛοαδεÏ' μανυαλλϋ." - -#. TRANSLATORS: canonical pathname is the -#. complete one e.g. /etc/fstab. It has -#. to contain `/' normally, if it doesn't -#. we're in trouble and throw this error. -#: grub-core/osdep/unix/relpath.c:90 -msgid "no `/' in canonical filename" -msgstr "νο `/' ιν ϲανονιϲαλ φιλεναμε" - -#: grub-core/osdep/windows/hostdisk.c:151 -msgid "cygwin_conv_path() failed" -msgstr "ϲϋγωιν_ϲονβ_πατχ() φαιλεδ" - -#: grub-core/osdep/windows/hostdisk.c:501 util/grub-install.c:570 -msgid "couldn't retrieve random data" -msgstr "ϲουλδν'Ï„ ÏετÏιεβε Ïανδομ δατα" - -#: grub-core/osdep/windows/platform.c:97 -msgid "Insufficient privileges to access firmware, assuming BIOS" -msgstr "Ινσυφφιϲιεντ Ï€Ïιβιλεγεσ το αϲϲεσσ φιÏμωαÏε, ασσυμινγ ϬΙΟΣ" - -#: grub-core/osdep/windows/platform.c:225 -msgid "no EFI routines are available when running in BIOS mode" -msgstr "νο ΕΦΙ Ïουτινεσ αÏε αβαιλαϭλε ωχεν Ïυννινγ ιν ϬΙΟΣ μοδε" - -#: grub-core/osdep/windows/platform.c:240 -msgid "unexpected EFI error" -msgstr "υνεξπεϲτεδ ΕΦΙ εÏÏοÏ" - -#: grub-core/osdep/windows/platform.c:315 -msgid "Couldn't find a free BootNNNN slot" -msgstr "ϲουλδν'Ï„ φινδ α φÏεε ϬοοτÎÎÎΠσλοτ" - -#: grub-core/partmap/gpt.c:191 -msgid "" -"this GPT partition label contains no BIOS Boot Partition; embedding won't be " -"possible" -msgstr "" -"τχισ ΓΠΤ παÏτιτιον λαϭελ ϲονταινσ νο ϬΙΟΣ Ϭοοτ ΠαÏτιτιον; εμϭεδδινγ ωον'Ï„ ϭε " -"ποσσιϭλε" - -#: grub-core/partmap/gpt.c:196 -msgid "your BIOS Boot Partition is too small; embedding won't be possible" -msgstr "Ï‹Î¿Ï…Ï Ï¬Î™ÎŸÎ£ Ϭοοτ ΠαÏτιτιον ισ τοο σμαλλ; εμϭεδδινγ ωον'Ï„ ϭε ποσσιϭλε" - -#. TRANSLATORS: MBR gap and boot track is the same thing and is the space -#. between MBR and first partitition. If your language translates well only -#. "boot track", you can just use it everywhere. Next two messages are about -#. RAID controllers/software bugs which GRUB has to live with. Please spread -#. the message that these are bugs in other software and not merely -#. suboptimal behaviour. -#: grub-core/partmap/msdos.c:51 -#, c-format -msgid "" -"Sector %llu is already in use by raid controller `%s'; avoiding it. Please " -"ask the manufacturer not to store data in MBR gap" -msgstr "" -"Î£ÎµÏ²Ï„Î¿Ï %llu ισ αλÏεαδϋ ιν υσε Ï­Ï‹ Ïαιδ ϲοντÏÎ¿Î»Î»ÎµÏ `%s'; αβοιδινγ ιτ. Πλεασε " -"ασκ τχε μανυφαϲτυÏÎµÏ Î½Î¿Ï„ το στοÏε δατα ιν ΜϬΡ γαπ" - -#: grub-core/partmap/msdos.c:54 -#, c-format -msgid "" -"Sector %llu is already in use by the program `%s'; avoiding it. This " -"software may cause boot or other problems in future. Please ask its authors " -"not to store data in the boot track" -msgstr "" -"Î£ÎµÏ²Ï„Î¿Ï %llu ισ αλÏεαδϋ ιν υσε Ï­Ï‹ τχε Ï€ÏογÏαμ `%s'; αβοιδινγ ιτ. Τχισ " -"σοφτωαÏε μαϋ ϲαυσε ϭοοτ Î¿Ï Î¿Ï„Ï‡ÎµÏ Ï€Ïοϭλεμσ ιν φυτυÏε. Πλεασε ασκ ιτσ αυτχοÏσ " -"νοτ το στοÏε δατα ιν τχε ϭοοτ Ï„Ïαϲκ" - -#: grub-core/partmap/msdos.c:384 -msgid "" -"other software is using the embedding area, and there is not enough room for " -"core.img. Such software is often trying to store data in a way that avoids " -"detection. We recommend you investigate" -msgstr "" -"Î¿Ï„Ï‡ÎµÏ ÏƒÎ¿Ï†Ï„Ï‰Î±Ïε ισ υσινγ τχε εμϭεδδινγ αÏεα, ανδ τχεÏε ισ νοτ ενουγχ Ïοομ Ï†Î¿Ï " -"ϲοÏε.ιμγ. Συϲχ σοφτωαÏε ισ οφτεν Ï„Ïϋινγ το στοÏε δατα ιν α ωαϋ τχατ αβοιδσ " -"δετεϲτιον. Ωε Ïεϲομμενδ ϋου ινβεστιγατε" - -#: grub-core/partmap/msdos.c:395 -msgid "" -"this msdos-style partition label has no post-MBR gap; embedding won't be " -"possible" -msgstr "" -"τχισ μσδοσ-στϋλε παÏτιτιον λαϭελ χασ νο ποστ-ΜϬΡ γαπ; εμϭεδδινγ ωον'Ï„ ϭε " -"ποσσιϭλε" - -#: grub-core/partmap/msdos.c:404 -msgid "your embedding area is unusually small. core.img won't fit in it." -msgstr "Ï‹Î¿Ï…Ï ÎµÎ¼Ï­ÎµÎ´Î´Î¹Î½Î³ αÏεα ισ υνυσυαλλϋ σμαλλ. ϲοÏε.ιμγ ωον'Ï„ φιτ ιν ιτ." - -#: grub-core/parttool/msdospart.c:39 -msgid "Make partition active" -msgstr "Μακε παÏτιτιον αϲτιβε" - -#: grub-core/parttool/msdospart.c:51 -msgid "not a primary partition" -msgstr "νοτ α Ï€ÏιμαÏÏ‹ παÏτιτιον" - -#: grub-core/parttool/msdospart.c:69 -#, c-format -msgid "Partition %d is active now. \n" -msgstr "ΠαÏτιτιον %d ισ αϲτιβε νοω. \n" - -#: grub-core/parttool/msdospart.c:74 -#, c-format -msgid "Cleared active flag on %d. \n" -msgstr "ϲλεαÏεδ αϲτιβε φλαγ ον %d. \n" - -#: grub-core/parttool/msdospart.c:87 -msgid "Change partition type" -msgstr "ϲχανγε παÏτιτιον τϋπε" - -#: grub-core/parttool/msdospart.c:88 -msgid "Set `hidden' flag in partition type" -msgstr "Σετ `χιδδεν' φλαγ ιν παÏτιτιον τϋπε" - -#: grub-core/parttool/msdospart.c:130 -#, c-format -msgid "the partition type 0x%x isn't valid" -msgstr "τχε παÏτιτιον τϋπε 0ξ%x ισν'Ï„ βαλιδ" - -#. TRANSLATORS: In this case we're actually writing to the disk and actively -#. modifying partition type rather than just defining it. -#: grub-core/parttool/msdospart.c:137 -#, c-format -msgid "Setting partition type to 0x%x\n" -msgstr "Σεττινγ παÏτιτιον τϋπε το 0ξ%x\n" - -#. TRANSLATORS: 0 is a quantifier. "break" (similar to bash) -#. can be used e.g. to break 3 loops at once. -#. But asking it to break 0 loops makes no sense. -#: grub-core/script/execute.c:143 -msgid "can't break 0 loops" -msgstr "ϲαν'Ï„ Ï­Ïεακ 0 λοοπσ" - -#. TRANSLATORS: It's about not being -#. inside a function. "return" can be used only -#. in a function and this error occurs if it's used -#. anywhere else. -#: grub-core/script/execute.c:227 -msgid "not in function body" -msgstr "νοτ ιν φυνϲτιον ϭοδϋ" - -#: grub-core/script/execute.c:371 -#, c-format -msgid "invalid variable name `%s'" -msgstr "ινβαλιδ βαÏιαϭλε ναμε `%s'" - -#: grub-core/script/execute.c:953 -msgid "cannot allocate command buffer" -msgstr "ϲαννοτ αλλοϲατε ϲομμανδ ϭυφφεÏ" - -#: grub-core/script/lexer.c:144 util/grub-fstest.c:330 -msgid "unexpected end of file" -msgstr "υνεξπεϲτεδ ενδ οφ φιλε" - -#: grub-core/script/main.c:55 grub-core/script/main.c:57 -#: grub-core/script/main.c:59 grub-core/script/main.c:67 -msgid "[NUM]" -msgstr "[ÎΥΜ]" - -#: grub-core/script/main.c:55 -msgid "Exit from loops" -msgstr "Εξιτ φÏομ λοοπσ" - -#: grub-core/script/main.c:57 -msgid "Continue loops" -msgstr "ϲοντινυε λοοπσ" - -#. TRANSLATORS: Positional arguments are -#. arguments $0, $1, $2, ... -#: grub-core/script/main.c:62 -msgid "Shift positional parameters." -msgstr "Σχιφτ ποσιτιοναλ παÏαμετεÏσ." - -#: grub-core/script/main.c:64 -msgid "[VALUE]..." -msgstr "[ΒΑΛΥΕ]..." - -#: grub-core/script/main.c:65 -msgid "Set positional parameters." -msgstr "Σετ ποσιτιοναλ παÏαμετεÏσ." - -#. TRANSLATORS: It's a command description -#. and "Return" is a verb, not a noun. The -#. command in question is "return" and -#. has exactly the same semanics as bash -#. equivalent. -#: grub-core/script/main.c:73 -msgid "Return from a function." -msgstr "ΡετυÏν φÏομ α φυνϲτιον." - -#: grub-core/term/gfxterm_background.c:176 -msgid "[-m (stretch|normal)] FILE" -msgstr "[-μ (στÏετϲχ|νοÏμαλ)] ΦΙΛΕ" - -#: grub-core/term/gfxterm_background.c:177 -msgid "Load background image for active terminal." -msgstr "Λοαδ ϭαϲκγÏουνδ ιμαγε Ï†Î¿Ï Î±Ï²Ï„Î¹Î²Îµ τεÏμιναλ." - -#: grub-core/term/gfxterm_background.c:182 util/grub-install.c:302 -#: util/grub-install.c:303 util/grub-mkrescue.c:107 util/grub-mkrescue.c:108 -#: util/grub-render-label.c:61 util/grub-render-label.c:63 -msgid "COLOR" -msgstr "ϲΟΛΟΡ" - -#: grub-core/term/gfxterm_background.c:183 -msgid "Set background color for active terminal." -msgstr "Σετ ϭαϲκγÏουνδ Ï²Î¿Î»Î¿Ï Ï†Î¿Ï Î±Ï²Ï„Î¹Î²Îµ τεÏμιναλ." - -#: grub-core/term/i386/coreboot/cbmemc.c:139 -msgid "Show CBMEM console content." -msgstr "Σχοω ϲϬΜΕΜ ϲονσολε ϲοντεντ." - -#: grub-core/term/serial.c:57 -msgid "Set the serial unit." -msgstr "Σετ τχε σεÏιαλ υνιτ." - -#: grub-core/term/serial.c:58 -msgid "Set the serial port address." -msgstr "Σετ τχε σεÏιαλ ποÏÏ„ αδδÏεσσ." - -#: grub-core/term/serial.c:59 -msgid "Set the serial port speed." -msgstr "Σετ τχε σεÏιαλ ποÏÏ„ σπεεδ." - -#: grub-core/term/serial.c:60 -msgid "Set the serial port word length." -msgstr "Σετ τχε σεÏιαλ ποÏÏ„ ωοÏδ λενγτχ." - -#: grub-core/term/serial.c:61 -msgid "Set the serial port parity." -msgstr "Σετ τχε σεÏιαλ ποÏÏ„ παÏιτϋ." - -#: grub-core/term/serial.c:62 -msgid "Set the serial port stop bits." -msgstr "Σετ τχε σεÏιαλ ποÏÏ„ στοπ ϭιτσ." - -#: grub-core/term/serial.c:63 -msgid "Set the base frequency." -msgstr "Σετ τχε ϭασε φÏεϗυενϲϋ." - -#: grub-core/term/serial.c:64 -msgid "Enable/disable RTS/CTS." -msgstr "Εναϭλε/δισαϭλε ΡΤΣ/ϲΤΣ." - -#: grub-core/term/serial.c:218 -#, c-format -msgid "serial port `%s' isn't found" -msgstr "σεÏιαλ ποÏÏ„ `%s' ισν'Ï„ φουνδ" - -#: grub-core/term/serial.c:254 -msgid "unsupported serial port flow control" -msgstr "υνσυπποÏτεδ σεÏιαλ ποÏÏ„ φλοω ϲοντÏολ" - -#: grub-core/term/serial.c:429 -msgid "[OPTIONS...]" -msgstr "[ΟΠΤΙΟÎΣ...]" - -#: grub-core/term/serial.c:430 -msgid "Configure serial port." -msgstr "ϲονφιγυÏε σεÏιαλ ποÏÏ„." - -#: grub-core/term/terminfo.c:184 -#, c-format -msgid "unknown terminfo type `%s'" -msgstr "υνκνοων τεÏμινφο τϋπε `%s'" - -#: grub-core/term/terminfo.c:668 -msgid "ASCII" -msgstr "ΑΣϲΙΙ" - -#: grub-core/term/terminfo.c:671 -msgid "UTF-8" -msgstr "ΥΤΦ-8" - -#. TRANSLATORS: visually ordered UTF-8 is a non-compliant encoding -#. based on UTF-8 with right-to-left languages written in reverse. -#. Used on some terminals. Normal UTF-8 is refered as -#. "logically-ordered UTF-8" by opposition. -#: grub-core/term/terminfo.c:677 -msgid "visually-ordered UTF-8" -msgstr "βισυαλλϋ-οÏδεÏεδ ΥΤΦ-8" - -#: grub-core/term/terminfo.c:680 -msgid "Unknown encoding" -msgstr "Υνκνοων ενϲοδινγ" - -#: grub-core/term/terminfo.c:684 -msgid "Current terminfo types:" -msgstr "ϲυÏÏεντ τεÏμινφο τϋπεσ:" - -#: grub-core/term/terminfo.c:699 -msgid "Terminal is ASCII-only [default]." -msgstr "ΤεÏμιναλ ισ ΑΣϲΙΙ-ονλϋ [δεφαυλτ]." - -#: grub-core/term/terminfo.c:700 -msgid "Terminal is logical-ordered UTF-8." -msgstr "ΤεÏμιναλ ισ λογιϲαλ-οÏδεÏεδ ΥΤΦ-8." - -#: grub-core/term/terminfo.c:701 -msgid "Terminal is visually-ordered UTF-8." -msgstr "ΤεÏμιναλ ισ βισυαλλϋ-οÏδεÏεδ ΥΤΦ-8." - -#: grub-core/term/terminfo.c:703 -msgid "Terminal has specified geometry." -msgstr "ΤεÏμιναλ χασ σπεϲιφιεδ γεομετÏÏ‹." - -#. TRANSLATORS: "x" has to be entered in, like an identifier, so please don't -#. use better Unicode codepoints. -#: grub-core/term/terminfo.c:706 -msgid "WIDTHxHEIGHT." -msgstr "ΩΙΔΤΧξΧΕΙΓΧΤ." - -#: grub-core/term/terminfo.c:746 -msgid "incorrect terminal dimensions specification" -msgstr "ινϲοÏÏεϲτ τεÏμιναλ διμενσιονσ σπεϲιφιϲατιον" - -#: grub-core/term/terminfo.c:776 -#, c-format -msgid "terminal %s isn't found or it's not handled by terminfo" -msgstr "τεÏμιναλ %s ισν'Ï„ φουνδ Î¿Ï Î¹Ï„'σ νοτ χανδλεδ Ï­Ï‹ τεÏμινφο" - -#: grub-core/term/terminfo.c:785 -msgid "[[-a|-u|-v] [-g WxH] TERM [TYPE]]" -msgstr "[[-α|-Ï…|-β] [-γ ΩξΧ] ΤΕΡΜ [ΤΫΠΕ]]" - -#: grub-core/term/terminfo.c:786 -msgid "Set terminfo type of TERM to TYPE.\n" -msgstr "Σετ τεÏμινφο τϋπε οφ ΤΕΡΜ το ΤΫΠΕ.\n" - -#. TRANSLATORS: this is the BLOCK-argument, not -#. environment block. -#: grub-core/tests/test_blockarg.c:49 -msgid "Print and execute block argument." -msgstr "ΠÏιντ ανδ εξεϲυτε ϭλοϲκ αÏγυμεντ." - -#. TRANSLATORS: We're speaking about bitmap images like -#. JPEG or PNG. -#: grub-core/video/bitmap.c:209 -#, c-format -msgid "bitmap file `%s' is of unsupported format" -msgstr "ϭιτμαπ φιλε `%s' ισ οφ υνσυπποÏτεδ φοÏματ" - -#: grub-core/video/i386/pc/vbe.c:1191 -#, c-format -msgid " VBE info: version: %d.%d OEM software rev: %d.%d\n" -msgstr " ΒϬΕ ινφο: βεÏσιον: %d.%d ΟΕΜ σοφτωαÏε Ïεβ: %d.%d\n" - -#: grub-core/video/i386/pc/vbe.c:1198 -#, c-format -msgid " total memory: %d KiB\n" -msgstr " τοταλ μεμοÏÏ‹: %d ΚιϬ\n" - -#: grub-core/video/video.c:596 grub-core/video/video.c:762 -msgid "no suitable video mode found" -msgstr "νο συιταϭλε βιδεο μοδε φουνδ" - -#: include/grub/crypto.h:403 -msgid "access denied" -msgstr "αϲϲεσσ δενιεδ" - -#: include/grub/util/install.h:30 include/grub/util/install.h:35 -msgid "MODULES" -msgstr "ΜΟΔΥΛΕΣ" - -#: include/grub/util/install.h:31 -msgid "pre-load specified modules MODULES" -msgstr "Ï€Ïε-λοαδ σπεϲιφιεδ μοδυλεσ ΜΟΔΥΛΕΣ" - -#: include/grub/util/install.h:33 -msgid "embed a specific DTB" -msgstr "εμϭεδ α σπεϲιφιϲ ΔΤϬ" - -#: include/grub/util/install.h:36 -msgid "install only MODULES and their dependencies [default=all]" -msgstr "ινσταλλ ονλϋ ΜΟΔΥΛΕΣ ανδ Ï„Ï‡ÎµÎ¹Ï Î´ÎµÏ€ÎµÎ½Î´ÎµÎ½Ï²Î¹ÎµÏƒ [δεφαυλτ=αλλ]" - -#: include/grub/util/install.h:37 -msgid "THEMES" -msgstr "ΤΧΕΜΕΣ" - -#: include/grub/util/install.h:38 -#, c-format -msgid "install THEMES [default=%s]" -msgstr "ινσταλλ ΤΧΕΜΕΣ [δεφαυλτ=%s]" - -#: include/grub/util/install.h:39 -msgid "FONTS" -msgstr "ΦΟÎΤΣ" - -#: include/grub/util/install.h:40 -#, c-format -msgid "install FONTS [default=%s]" -msgstr "ινσταλλ ΦΟÎΤΣ [δεφαυλτ=%s]" - -#: include/grub/util/install.h:41 -msgid "LOCALES" -msgstr "ΛΟϲΑΛΕΣ" - -#: include/grub/util/install.h:42 -msgid "install only LOCALES [default=all]" -msgstr "ινσταλλ ονλϋ ΛΟϲΑΛΕΣ [δεφαυλτ=αλλ]" - -#: include/grub/util/install.h:45 -msgid "compress GRUB files [optional]" -msgstr "ϲομπÏεσσ ΓΡΥϬ φιλεσ [οπτιοναλ]" - -#: include/grub/util/install.h:48 util/grub-mkimage.c:83 -msgid "choose the compression to use for core image" -msgstr "ϲχοοσε τχε ϲομπÏεσσιον το υσε Ï†Î¿Ï Ï²Î¿Ïε ιμαγε" - -#. TRANSLATORS: platform here isn't identifier. It can be translated. -#: include/grub/util/install.h:51 include/grub/util/install.h:54 -#: util/grub-mkimage.c:66 -#, c-format -msgid "use images and modules under DIR [default=%s/]" -msgstr "υσε ιμαγεσ ανδ μοδυλεσ Ï…Î½Î´ÎµÏ Î”Î™Î¡ [δεφαυλτ=%s/<πλατφοÏμ>]" - -#: include/grub/util/install.h:57 -#, c-format -msgid "use translations under DIR [default=%s]" -msgstr "υσε Ï„Ïανσλατιονσ Ï…Î½Î´ÎµÏ Î”Î™Î¡ [δεφαυλτ=%s]" - -#: include/grub/util/install.h:60 -#, c-format -msgid "use themes under DIR [default=%s]" -msgstr "υσε τχεμεσ Ï…Î½Î´ÎµÏ Î”Î™Î¡ [δεφαυλτ=%s]" - -#: include/grub/util/install.h:65 util/grub-mkimage.c:78 -msgid "embed FILE as public key for signature checking" -msgstr "εμϭεδ ΦΙΛΕ ασ πυϭλιϲ κεϋ Ï†Î¿Ï ÏƒÎ¹Î³Î½Î±Ï„Ï…Ïε ϲχεϲκινγ" - -#: util/editenv.c:59 util/grub-editenv.c:201 util/grub-install-common.c:535 -#: util/grub-mkimage.c:315 util/setup.c:791 -#, c-format -msgid "cannot sync `%s': %s" -msgstr "ϲαννοτ σϋνϲ `%s': %s" - -#: util/editenv.c:64 -#, c-format -msgid "cannot rename the file %s to %s" -msgstr "ϲαννοτ Ïεναμε τχε φιλε %s το %s" - -#: util/getroot.c:402 -#, c-format -msgid "disk does not exist, so falling back to partition device %s" -msgstr "δισκ δοεσ νοτ εξιστ, σο φαλλινγ ϭαϲκ το παÏτιτιον δεβιϲε %s" - -#: util/grub-editenv.c:45 util/grub-fstest.c:506 -msgid "Commands:" -msgstr "ϲομμανδσ:" - -#: util/grub-editenv.c:47 -msgid "Create a blank environment block file." -msgstr "ϲÏεατε α ϭλανκ ενβιÏονμεντ ϭλοϲκ φιλε." - -#: util/grub-editenv.c:49 -msgid "List the current variables." -msgstr "Λιστ τχε ϲυÏÏεντ βαÏιαϭλεσ." - -#. TRANSLATORS: "set" is a keyword. It's a summary of "set" subcommand. -#: util/grub-editenv.c:51 -msgid "set [NAME=VALUE ...]" -msgstr "σετ [ÎΑΜΕ=ΒΑΛΥΕ ...]" - -#: util/grub-editenv.c:52 -msgid "Set variables." -msgstr "Σετ βαÏιαϭλεσ." - -#. TRANSLATORS: "unset" is a keyword. It's a summary of "unset" subcommand. -#: util/grub-editenv.c:54 -msgid "unset [NAME ...]" -msgstr "υνσετ [ÎΑΜΕ ...]" - -#: util/grub-editenv.c:55 -msgid "Delete variables." -msgstr "Δελετε βαÏιαϭλεσ." - -#: util/grub-editenv.c:57 -msgid "Options:" -msgstr "Οπτιονσ:" - -#: util/grub-editenv.c:84 -msgid "You need to specify at least one command.\n" -msgstr "Ϋου νεεδ το σπεϲιφϋ ατ λεαστ ονε ϲομμανδ.\n" - -#: util/grub-editenv.c:113 -msgid "FILENAME COMMAND" -msgstr "ΦΙΛΕÎΑΜΕ ϲΟΜΜΑÎΔ" - -#: util/grub-editenv.c:114 -msgid "Tool to edit environment block." -msgstr "Τοολ το εδιτ ενβιÏονμεντ ϭλοϲκ." - -#: util/grub-editenv.c:116 -#, c-format -msgid "" -"If FILENAME is `-', the default value %s is used.\n" -"\n" -"There is no `delete' command; if you want to delete the whole environment\n" -"block, use `rm %s'." -msgstr "" -"Ιφ ΦΙΛΕÎΑΜΕ ισ `-', τχε δεφαυλτ βαλυε %s ισ υσεδ.\n" -"\n" -"ΤχεÏε ισ νο `δελετε' ϲομμανδ; ιφ ϋου ωαντ το δελετε τχε ωχολε ενβιÏονμεντ\n" -"ϭλοϲκ, υσε `Ïμ %s'." - -#: util/grub-editenv.c:162 -msgid "invalid environment block" -msgstr "ινβαλιδ ενβιÏονμεντ ϭλοϲκ" - -#: util/grub-editenv.c:217 -#, c-format -msgid "invalid parameter %s" -msgstr "ινβαλιδ παÏÎ±Î¼ÎµÏ„ÎµÏ %s" - -#: util/grub-editenv.c:222 -msgid "environment block too small" -msgstr "ενβιÏονμεντ ϭλοϲκ τοο σμαλλ" - -#: util/grub-fstest.c:107 -#, c-format -msgid "disk read fails at offset %lld, length %lld" -msgstr "δισκ Ïεαδ φαιλσ ατ οφφσετ %lld, λενγτχ %lld" - -#: util/grub-fstest.c:138 -#, c-format -msgid "invalid skip value %lld" -msgstr "ινβαλιδ σκιπ βαλυε %lld" - -#: util/grub-fstest.c:160 util/grub-fstest.c:246 -#, c-format -msgid "read error at offset %llu: %s" -msgstr "Ïεαδ εÏÏÎ¿Ï Î±Ï„ οφφσετ %llu: %s" - -#: util/grub-fstest.c:210 -#, c-format -msgid "cannot open OS file `%s': %s" -msgstr "ϲαννοτ οπεν ΟΣ φιλε `%s': %s" - -#: util/grub-fstest.c:225 util/misc.c:126 -#, c-format -msgid "cannot write to the stdout: %s" -msgstr "ϲαννοτ ωÏιτε το τχε στδουτ: %s" - -#: util/grub-fstest.c:259 -#, c-format -msgid "compare fail at offset %llu" -msgstr "ϲομπαÏε φαιλ ατ οφφσετ %llu" - -#: util/grub-fstest.c:280 util/grub-fstest.c:314 -#, c-format -msgid "OS file %s open error: %s" -msgstr "ΟΣ φιλε %s οπεν εÏÏοÏ: %s" - -#: util/grub-fstest.c:402 util/grub-mount.c:392 -#, c-format -msgid "`loopback' command fails: %s" -msgstr "`λοοπϭαϲκ' ϲομμανδ φαιλσ: %s" - -#: util/grub-fstest.c:413 util/grub-mount.c:402 -#, c-format -msgid "`cryptomount' command fails: %s" -msgstr "`ϲÏϋπτομουντ' ϲομμανδ φαιλσ: %s" - -#: util/grub-fstest.c:474 util/grub-fstest.c:478 -msgid "couldn't retrieve UUID" -msgstr "ϲουλδν'Ï„ ÏετÏιεβε ΥΥΙΔ" - -#: util/grub-fstest.c:507 -msgid "ls PATH" -msgstr "λσ ΠΑΤΧ" - -#: util/grub-fstest.c:507 -msgid "List files in PATH." -msgstr "Λιστ φιλεσ ιν ΠΑΤΧ." - -#: util/grub-fstest.c:508 -msgid "cp FILE LOCAL" -msgstr "ϲπ ΦΙΛΕ ΛΟϲΑΛ" - -#: util/grub-fstest.c:508 -msgid "Copy FILE to local file LOCAL." -msgstr "ϲοπϋ ΦΙΛΕ το λοϲαλ φιλε ΛΟϲΑΛ." - -#: util/grub-fstest.c:509 -msgid "cat FILE" -msgstr "ϲατ ΦΙΛΕ" - -#: util/grub-fstest.c:509 -msgid "Copy FILE to standard output." -msgstr "ϲοπϋ ΦΙΛΕ το στανδαÏδ ουτπυτ." - -#: util/grub-fstest.c:510 -msgid "cmp FILE LOCAL" -msgstr "ϲμπ ΦΙΛΕ ΛΟϲΑΛ" - -#: util/grub-fstest.c:510 -msgid "Compare FILE with local file LOCAL." -msgstr "ϲομπαÏε ΦΙΛΕ ωιτχ λοϲαλ φιλε ΛΟϲΑΛ." - -#: util/grub-fstest.c:511 -msgid "hex FILE" -msgstr "χεξ ΦΙΛΕ" - -#: util/grub-fstest.c:511 -msgid "Show contents of FILE in hex." -msgstr "Σχοω ϲοντεντσ οφ ΦΙΛΕ ιν χεξ." - -#: util/grub-fstest.c:512 -msgid "crc FILE" -msgstr "ϲÏϲ ΦΙΛΕ" - -#: util/grub-fstest.c:512 -msgid "Get crc32 checksum of FILE." -msgstr "Γετ ϲÏϲ32 ϲχεϲκσυμ οφ ΦΙΛΕ." - -#: util/grub-fstest.c:513 -msgid "blocklist FILE" -msgstr "ϭλοϲκλιστ ΦΙΛΕ" - -#: util/grub-fstest.c:513 -msgid "Display blocklist of FILE." -msgstr "Δισπλαϋ ϭλοϲκλιστ οφ ΦΙΛΕ." - -#: util/grub-fstest.c:514 -msgid "xnu_uuid DEVICE" -msgstr "ξνυ_υυιδ ΔΕΒΙϲΕ" - -#: util/grub-fstest.c:514 -msgid "Compute XNU UUID of the device." -msgstr "ϲομπυτε ΞÎÎ¥ ΥΥΙΔ οφ τχε δεβιϲε." - -#. TRANSLATORS: bitmaps are images like e.g. in JPEG. -#: util/grub-fstest.c:517 util/grub-fstest.c:518 util/grub-fstest.c:519 -#: util/grub-mkfont.c:938 util/grub-mkfont.c:951 util/grub-mkfont.c:952 -#: util/grub-mkpasswd-pbkdf2.c:46 util/grub-mkpasswd-pbkdf2.c:47 -#: util/grub-mkpasswd-pbkdf2.c:48 -msgid "NUM" -msgstr "ÎΥΜ" - -#: util/grub-fstest.c:517 -msgid "Skip N bytes from output file." -msgstr "Σκιπ Πϭϋτεσ φÏομ ουτπυτ φιλε." - -#: util/grub-fstest.c:518 -msgid "Handle N bytes in output file." -msgstr "Χανδλε Πϭϋτεσ ιν ουτπυτ φιλε." - -#: util/grub-fstest.c:519 -msgid "Specify the number of input files." -msgstr "Σπεϲιφϋ τχε Î½Ï…Î¼Ï­ÎµÏ Î¿Ï† ινπυτ φιλεσ." - -#: util/grub-fstest.c:520 util/grub-mount.c:453 -msgid "Set debug environment variable." -msgstr "Σετ δεϭυγ ενβιÏονμεντ βαÏιαϭλε." - -#: util/grub-fstest.c:521 util/grub-mount.c:454 -msgid "Mount crypto devices." -msgstr "Μουντ ϲÏϋπτο δεβιϲεσ." - -#. TRANSLATORS: "prompt" is a keyword. -#: util/grub-fstest.c:524 util/grub-mount.c:457 -msgid "FILE|prompt" -msgstr "ΦΙΛΕ|Ï€Ïομπτ" - -#: util/grub-fstest.c:524 util/grub-mount.c:457 -msgid "Load zfs crypto key." -msgstr "Λοαδ ζφσ ϲÏϋπτο κεϋ." - -#: util/grub-fstest.c:526 -msgid "Uncompress data." -msgstr "ΥνϲομπÏεσσ δατα." - -#: util/grub-fstest.c:605 -msgid "Invalid disk count.\n" -msgstr "Ινβαλιδ δισκ ϲουντ.\n" - -#. TRANSLATORS: disk count is optional but if it's there it must -#. be before disk list. So please don't imply disk count as mandatory. -#. -#: util/grub-fstest.c:613 -msgid "Disk count must precede disks list.\n" -msgstr "Δισκ ϲουντ μυστ Ï€Ïεϲεδε δισκσ λιστ.\n" - -#: util/grub-fstest.c:633 -msgid "No command is specified.\n" -msgstr "Îο ϲομμανδ ισ σπεϲιφιεδ.\n" - -#: util/grub-fstest.c:638 -msgid "Not enough parameters to command.\n" -msgstr "Îοτ ενουγχ παÏαμετεÏσ το ϲομμανδ.\n" - -#: util/grub-fstest.c:711 -#, c-format -msgid "Invalid command %s.\n" -msgstr "Ινβαλιδ ϲομμανδ %s.\n" - -#: util/grub-fstest.c:724 -msgid "IMAGE_PATH COMMANDS" -msgstr "ΙΜΑΓΕ_ΠΑΤΧ ϲΟΜΜΑÎΔΣ" - -#: util/grub-fstest.c:725 util/grub-mount.c:553 -msgid "Debug tool for filesystem driver." -msgstr "Δεϭυγ τοολ Ï†Î¿Ï Ï†Î¹Î»ÎµÏƒÏ‹ÏƒÏ„ÎµÎ¼ δÏιβεÏ." - -#: util/grub-glue-efi.c:53 -msgid "set input filename for 32-bit part." -msgstr "σετ ινπυτ φιλεναμε Ï†Î¿Ï 32-ϭιτ παÏÏ„." - -#: util/grub-glue-efi.c:55 -msgid "set input filename for 64-bit part." -msgstr "σετ ινπυτ φιλεναμε Ï†Î¿Ï 64-ϭιτ παÏÏ„." - -#: util/grub-glue-efi.c:57 util/grub-mklayout.c:55 util/grub-render-label.c:71 -msgid "set output filename. Default is STDOUT" -msgstr "σετ ουτπυτ φιλεναμε. Δεφαυλτ ισ ΣΤΔΟΥΤ" - -#: util/grub-glue-efi.c:94 util/grub-mklayout.c:476 -#: util/grub-mkpasswd-pbkdf2.c:86 util/grub-render-label.c:131 -msgid "[OPTIONS]" -msgstr "[ΟΠΤΙΟÎΣ]" - -#: util/grub-glue-efi.c:95 -msgid "Glue 32-bit and 64-bit binary into Apple universal one." -msgstr "Γλυε 32-ϭιτ ανδ 64-ϭιτ ϭιναÏÏ‹ ιντο Αππλε υνιβεÏσαλ ονε." - -#: util/grub-glue-efi.c:116 -msgid "Missing input file\n" -msgstr "Μισσινγ ινπυτ φιλε\n" - -#: util/grub-install-common.c:127 util/grub-install-common.c:151 -#, c-format -msgid "cannot copy `%s' to `%s': %s" -msgstr "ϲαννοτ ϲοπϋ `%s' το `%s': %s" - -#: util/grub-install-common.c:147 -#, c-format -msgid "can't compress `%s' to `%s'" -msgstr "ϲαν'Ï„ ϲομπÏεσσ `%s' το `%s'" - -#: util/grub-install-common.c:196 util/grub-install-common.c:552 -#: util/grub-install-common.c:579 util/grub-install-common.c:621 -#, c-format -msgid "cannot open directory `%s': %s" -msgstr "ϲαννοτ οπεν διÏεϲτοÏÏ‹ `%s': %s" - -#: util/grub-install-common.c:212 -#, c-format -msgid "cannot delete `%s': %s" -msgstr "ϲαννοτ δελετε `%s': %s" - -#: util/grub-install-common.c:324 util/grub-mkimage.c:209 -msgid "grub-mkimage is compiled without XZ support" -msgstr "γÏÏ…Ï­-μκιμαγε ισ ϲομπιλεδ ωιτχουτ ΞΖ συπποÏÏ„" - -#: util/grub-install-common.c:332 util/grub-mkimage.c:217 -#, c-format -msgid "Unknown compression format %s" -msgstr "Υνκνοων ϲομπÏεσσιον φοÏματ %s" - -#: util/grub-install-common.c:400 -#, c-format -msgid "Unrecognized compression `%s'" -msgstr "ΥνÏεϲογνιζεδ ϲομπÏεσσιον `%s'" - -#: util/grub-install-common.c:509 -#, c-format -msgid "unknown target format %s" -msgstr "υνκνοων ταÏγετ φοÏματ %s" - -#: util/grub-install-common.c:700 -#, c-format -msgid "cannot find locale `%s'" -msgstr "ϲαννοτ φινδ λοϲαλε `%s'" - -#: util/grub-install-common.c:939 -#, c-format -msgid "%s doesn't exist. Please specify --target or --directory" -msgstr "%s δοεσν'Ï„ εξιστ. Πλεασε σπεϲιφϋ --ταÏγετ Î¿Ï --διÏεϲτοÏÏ‹" - -#: util/grub-install-common.c:948 util/grub-install-common.c:951 -#, c-format -msgid "invalid modinfo file `%s'" -msgstr "ινβαλιδ μοδινφο φιλε `%s'" - -#: util/grub-install-common.c:966 -#, c-format -msgid "Unknown platform `%s-%s'" -msgstr "Υνκνοων πλατφοÏμ `%s-%s'" - -#: util/grub-install.c:238 -msgid "More than one install device?" -msgstr "ΜοÏε τχαν ονε ινσταλλ δεβιϲε?" - -#: util/grub-install.c:251 -#, c-format -msgid "" -"install GRUB images under the directory DIR/%s instead of the %s directory" -msgstr "" -"ινσταλλ ΓΡΥϬ ιμαγεσ Ï…Î½Î´ÎµÏ Ï„Ï‡Îµ διÏεϲτοÏÏ‹ ΔΙΡ/%s ινστεαδ οφ τχε %s διÏεϲτοÏÏ‹" - -#: util/grub-install.c:256 util/grub-probe.c:734 -msgid "TARGET" -msgstr "ΤΑΡΓΕΤ" - -#. TRANSLATORS: "TARGET" as in "target platform". -#: util/grub-install.c:258 -#, c-format -msgid "install GRUB for TARGET platform [default=%s]; available targets: %s" -msgstr "ινσταλλ ΓΡΥϬ Ï†Î¿Ï Î¤Î‘Î¡Î“Î•Î¤ πλατφοÏμ [δεφαυλτ=%s]; αβαιλαϭλε ταÏγετσ: %s" - -#. TRANSLATORS: "may break" doesn't just mean that option wouldn't have any -#. effect but that it will make the resulting install unbootable from HDD. -#. TRANSLATORS: The potential breakage isn't limited to floppies but it's -#. likely to make the install unbootable from HDD. -#: util/grub-install.c:267 util/grub-setup.c:94 -msgid "" -"make the drive also bootable as floppy (default for fdX devices). May break " -"on some BIOSes." -msgstr "" -"μακε τχε δÏιβε αλσο ϭοοταϭλε ασ φλοππϋ (δεφαυλτ Ï†Î¿Ï Ï†Î´Îž δεβιϲεσ). Μαϋ Ï­Ïεακ " -"ον σομε ϬΙΟΣεσ." - -#: util/grub-install.c:270 -msgid "delete device map if it already exists" -msgstr "δελετε δεβιϲε μαπ ιφ ιτ αλÏεαδϋ εξιστσ" - -#: util/grub-install.c:272 util/grub-setup.c:87 -msgid "install even if problems are detected" -msgstr "ινσταλλ εβεν ιφ Ï€Ïοϭλεμσ αÏε δετεϲτεδ" - -#: util/grub-install.c:274 -msgid "use identifier file even if UUID is available" -msgstr "υσε Î¹Î´ÎµÎ½Ï„Î¹Ï†Î¹ÎµÏ Ï†Î¹Î»Îµ εβεν ιφ ΥΥΙΔ ισ αβαιλαϭλε" - -#: util/grub-install.c:276 -msgid "" -"disk module to use (biosdisk or native). This option is only available on " -"BIOS target." -msgstr "" -"δισκ μοδυλε το υσε (ϭιοσδισκ Î¿Ï Î½Î±Ï„Î¹Î²Îµ). Τχισ οπτιον ισ ονλϋ αβαιλαϭλε ον " -"ϬΙΟΣ ταÏγετ." - -#: util/grub-install.c:279 -msgid "" -"don't update the `boot-device'/`Boot*' NVRAM variables. This option is only " -"available on EFI and IEEE1275 targets." -msgstr "" -"δον'Ï„ υπδατε τχε `ϭοοτ-δεβιϲε'/`Ϭοοτ*' ÎΒΡΑΜ βαÏιαϭλεσ. Τχισ οπτιον ισ ονλϋ " -"αβαιλαϭλε ον ΕΦΙ ανδ ΙΕΕΕ1275 ταÏγετσ." - -#: util/grub-install.c:282 util/grub-setup.c:89 -msgid "do not probe for filesystems in DEVICE" -msgstr "δο νοτ Ï€Ïοϭε Ï†Î¿Ï Ï†Î¹Î»ÎµÏƒÏ‹ÏƒÏ„ÎµÎ¼Ïƒ ιν ΔΕΒΙϲΕ" - -#: util/grub-install.c:284 -msgid "do not install bootsector" -msgstr "δο νοτ ινσταλλ ϭοοτσεϲτοÏ" - -#: util/grub-install.c:286 util/grub-setup.c:96 -msgid "" -"Do not apply any reed-solomon codes when embedding core.img. This option is " -"only available on x86 BIOS targets." -msgstr "" -"Δο νοτ αππλϋ ανϋ Ïεεδ-σολομον ϲοδεσ ωχεν εμϭεδδινγ ϲοÏε.ιμγ. Τχισ οπτιον ισ " -"ονλϋ αβαιλαϭλε ον ξ86 ϬΙΟΣ ταÏγετσ." - -#: util/grub-install.c:293 -msgid "" -"the installation device is removable. This option is only available on EFI." -msgstr "" -"τχε ινσταλλατιον δεβιϲε ισ Ïεμοβαϭλε. Τχισ οπτιον ισ ονλϋ αβαιλαϭλε ον ΕΦΙ." - -#: util/grub-install.c:295 -msgid "ID" -msgstr "ΙΔ" - -#: util/grub-install.c:296 -msgid "the ID of bootloader. This option is only available on EFI and Macs." -msgstr "τχε ΙΔ οφ ϭοοτλοαδεÏ. Τχισ οπτιον ισ ονλϋ αβαιλαϭλε ον ΕΦΙ ανδ Μαϲσ." - -#: util/grub-install.c:298 -msgid "use DIR as the EFI System Partition root." -msgstr "υσε ΔΙΡ ασ τχε ΕΦΙ Σϋστεμ ΠαÏτιτιον Ïοοτ." - -#: util/grub-install.c:300 -msgid "use DIR for PPC MAC install." -msgstr "υσε ΔΙΡ Ï†Î¿Ï Î Î Ï² ΜΑϲ ινσταλλ." - -#: util/grub-install.c:301 util/grub-mkrescue.c:106 -msgid "use FILE as font for label" -msgstr "υσε ΦΙΛΕ ασ φοντ Ï†Î¿Ï Î»Î±Ï­ÎµÎ»" - -#: util/grub-install.c:302 util/grub-mkrescue.c:107 -msgid "use COLOR for label" -msgstr "υσε ϲΟΛΟΡ Ï†Î¿Ï Î»Î±Ï­ÎµÎ»" - -#: util/grub-install.c:303 util/grub-mkrescue.c:108 -msgid "use COLOR for label background" -msgstr "υσε ϲΟΛΟΡ Ï†Î¿Ï Î»Î±Ï­ÎµÎ» ϭαϲκγÏουνδ" - -#: util/grub-install.c:304 util/grub-mkrescue.c:110 -msgid "use STRING as product version" -msgstr "υσε ΣΤΡΙÎΓ ασ Ï€Ïοδυϲτ βεÏσιον" - -#: util/grub-install.c:361 -msgid "[OPTION] [INSTALL_DEVICE]" -msgstr "[ΟΠΤΙΟÎ] [ΙÎΣΤΑΛΛ_ΔΕΒΙϲΕ]" - -#: util/grub-install.c:362 -msgid "Install GRUB on your drive." -msgstr "Ινσταλλ ΓΡΥϬ ον Ï‹Î¿Ï…Ï Î´Ïιβε." - -#: util/grub-install.c:363 -#, c-format -msgid "" -"INSTALL_DEVICE must be system device filename.\n" -"%s copies GRUB images into %s. On some platforms, it may also install GRUB " -"into the boot sector." -msgstr "" -"ΙÎΣΤΑΛΛ_ΔΕΒΙϲΕ μυστ ϭε σϋστεμ δεβιϲε φιλεναμε.\n" -"%s ϲοπιεσ ΓΡΥϬ ιμαγεσ ιντο %s. Ον σομε πλατφοÏμσ, ιτ μαϋ αλσο ινσταλλ ΓΡΥϬ " -"ιντο τχε ϭοοτ σεϲτοÏ." - -#: util/grub-install.c:672 -#, c-format -msgid "the drive %s is defined multiple times in the device map %s" -msgstr "τχε δÏιβε %s ισ δεφινεδ μυλτιπλε τιμεσ ιν τχε δεβιϲε μαπ %s" - -#: util/grub-install.c:878 -msgid "Unable to determine your platform. Use --target." -msgstr "Υναϭλε το δετεÏμινε Ï‹Î¿Ï…Ï Ï€Î»Î±Ï„Ï†Î¿Ïμ. Υσε --ταÏγετ." - -#: util/grub-install.c:891 -#, c-format -msgid "Installing for %s platform.\n" -msgstr "Ινσταλλινγ Ï†Î¿Ï %s πλατφοÏμ.\n" - -#: util/grub-install.c:939 -msgid "install device isn't specified" -msgstr "ινσταλλ δεβιϲε ισν'Ï„ σπεϲιφιεδ" - -#: util/grub-install.c:1057 -msgid "cannot find EFI directory" -msgstr "ϲαννοτ φινδ ΕΦΙ διÏεϲτοÏÏ‹" - -#: util/grub-install.c:1060 util/grub-install.c:1209 util/grub-install.c:1254 -#: util/grub-macbless.c:76 util/grub-probe.c:329 util/setup.c:316 -#, c-format -msgid "cannot find a device for %s (is /dev mounted?)" -msgstr "ϲαννοτ φινδ α δεβιϲε Ï†Î¿Ï %s (ισ /δεβ μουντεδ?)" - -#: util/grub-install.c:1069 util/grub-install.c:1217 util/grub-install.c:1270 -#: util/grub-install.c:1365 util/grub-macbless.c:80 util/grub-probe.c:372 -#, c-format -msgid "cannot find a GRUB drive for %s. Check your device.map" -msgstr "ϲαννοτ φινδ α ΓΡΥϬ δÏιβε Ï†Î¿Ï %s. ϲχεϲκ Ï‹Î¿Ï…Ï Î´ÎµÎ²Î¹Ï²Îµ.μαπ" - -#: util/grub-install.c:1087 -#, c-format -msgid "%s doesn't look like an EFI partition" -msgstr "%s δοεσν'Ï„ λοοκ λικε αν ΕΦΙ παÏτιτιον" - -#: util/grub-install.c:1129 util/grub-install.c:1614 -msgid "You've found a bug" -msgstr "Ϋου'βε φουνδ α ϭυγ" - -#: util/grub-install.c:1231 -#, c-format -msgid "filesystem on %s is neither HFS nor HFS+" -msgstr "φιλεσϋστεμ ον %s ισ Î½ÎµÎ¹Ï„Ï‡ÎµÏ Î§Î¦Î£ Î½Î¿Ï Î§Î¦Î£+" - -#: util/grub-install.c:1299 -#, c-format -msgid "" -"attempt to install to encrypted disk without cryptodisk enabled. Set `%s' in " -"file `%s'" -msgstr "" -"αττεμπτ το ινσταλλ το ενϲÏϋπτεδ δισκ ωιτχουτ ϲÏϋπτοδισκ εναϭλεδ. Σετ `%s' ιν " -"φιλε `%s'" - -#: util/grub-install.c:1410 util/grub-install.c:1772 util/grub-install.c:1872 -#, c-format -msgid "Can't create file: %s" -msgstr "ϲαν'Ï„ ϲÏεατε φιλε: %s" - -#: util/grub-install.c:1491 -msgid "no hints available for your platform. Expect reduced performance" -msgstr "νο χιντσ αβαιλαϭλε Ï†Î¿Ï Ï‹Î¿Ï…Ï Ï€Î»Î±Ï„Ï†Î¿Ïμ. Εξπεϲτ Ïεδυϲεδ πεÏφοÏμανϲε" - -#. TRANSLATORS: This is a prefix in the log to indicate that usually -#. a command would be executed but due to an option was skipped. -#: util/grub-install.c:1702 -msgid "NOT RUNNING: " -msgstr "ÎΟΤ ΡΥÎÎΙÎΓ: " - -#: util/grub-install.c:1806 -msgid "the chosen partition is not a PReP partition" -msgstr "τχε ϲχοσεν παÏτιτιον ισ νοτ α ΠΡεΠ παÏτιτιον" - -#: util/grub-install.c:1811 -msgid "failed to copy Grub to the PReP partition" -msgstr "φαιλεδ το ϲοπϋ ΓÏÏ…Ï­ το τχε ΠΡεΠ παÏτιτιον" - -#: util/grub-install.c:1816 -#, c-format -msgid "" -"the PReP partition is not empty. If you are sure you want to use it, run dd " -"to clear it: `%s'" -msgstr "" -"τχε ΠΡεΠ παÏτιτιον ισ νοτ εμπτϋ. Ιφ ϋου αÏε συÏε ϋου ωαντ το υσε ιτ, Ïυν δδ " -"το Ï²Î»ÎµÎ±Ï Î¹Ï„: `%s'" - -#: util/grub-install.c:1888 util/grub-install.c:1932 -#, c-format -msgid "efibootmgr failed to register the boot entry: %s" -msgstr "ÎµÏ†Î¹Ï­Î¿Î¿Ï„Î¼Î³Ï Ï†Î±Î¹Î»ÎµÎ´ το ÏÎµÎ³Î¹ÏƒÏ„ÎµÏ Ï„Ï‡Îµ ϭοοτ εντÏÏ‹: %s" - -#: util/grub-install.c:1916 -msgid "EFI bootloader id isn't specified." -msgstr "ΕΦΙ Ï­Î¿Î¿Ï„Î»Î¿Î±Î´ÎµÏ Î¹Î´ ισν'Ï„ σπεϲιφιεδ." - -#: util/grub-install.c:1950 -msgid "WARNING: no platform-specific install was performed" -msgstr "ΩΑΡÎΙÎΓ: νο πλατφοÏμ-σπεϲιφιϲ ινσταλλ ωασ πεÏφοÏμεδ" - -#: util/grub-install.c:1957 -msgid "Installation finished. No error reported." -msgstr "Ινσταλλατιον φινισχεδ. Îο εÏÏÎ¿Ï ÏεποÏτεδ." - -#: util/grub-macbless.c:101 -msgid "bless for x86-based macs" -msgstr "ϭλεσσ Ï†Î¿Ï Î¾86-ϭασεδ μαϲσ" - -#: util/grub-macbless.c:103 -msgid "bless for ppc-based macs" -msgstr "ϭλεσσ Ï†Î¿Ï Ï€Ï€Ï²-ϭασεδ μαϲσ" - -#: util/grub-macbless.c:136 util/grub-probe.c:823 -msgid "No path or device is specified.\n" -msgstr "Îο πατχ Î¿Ï Î´ÎµÎ²Î¹Ï²Îµ ισ σπεϲιφιεδ.\n" - -#: util/grub-macbless.c:157 -msgid "--ppc PATH|--x86 FILE" -msgstr "--ππϲ ΠΑΤΧ|--ξ86 ΦΙΛΕ" - -#: util/grub-macbless.c:158 -msgid "Mac-style bless on HFS or HFS+" -msgstr "Μαϲ-στϋλε ϭλεσσ ον ΧΦΣ Î¿Ï Î§Î¦Î£+" - -#: util/grub-menulst2cfg.c:44 -#, c-format -msgid "Usage: %s [INFILE [OUTFILE]]\n" -msgstr "Υσαγε: %s [ΙÎΦΙΛΕ [ΟΥΤΦΙΛΕ]]\n" - -#: util/grub-mkfont.c:157 -#, c-format -msgid "Freetype Error %d loading glyph 0x%x for U+0x%x%s" -msgstr "ΦÏεετϋπε ΕÏÏÎ¿Ï %d λοαδινγ γλϋπχ 0ξ%x Ï†Î¿Ï Î¥+0ξ%x%s" - -#. TRANSLATORS: These qualifiers are used for cursive typography, -#. mainly Arabic. Note that the terms refer to the visual position -#. and not logical order and if used in left-to-right script then -#. leftmost is initial but with right-to-left script like Arabic -#. rightmost is the initial. -#: util/grub-mkfont.c:165 -msgid " (medial)" -msgstr " (μεδιαλ)" - -#: util/grub-mkfont.c:166 -msgid " (leftmost)" -msgstr " (λεφτμοστ)" - -#: util/grub-mkfont.c:167 -msgid " (rightmost)" -msgstr " (Ïιγχτμοστ)" - -#: util/grub-mkfont.c:481 -#, c-format -msgid "Out of range substitution (%d, %d)\n" -msgstr "Ουτ οφ Ïανγε συϭστιτυτιον (%d, %d)\n" - -#. TRANSLATORS: "lookup" is taken directly from font specifications -#. which are formulated as "Under condition X replace LOOKUP with -#. SUBSTITUITION". " -#: util/grub-mkfont.c:506 -#, c-format -msgid "Out of range lookup: %d\n" -msgstr "Ουτ οφ Ïανγε λοοκυπ: %d\n" - -#: util/grub-mkfont.c:514 -#, c-format -msgid "Unsupported substitution type: %d\n" -msgstr "ΥνσυπποÏτεδ συϭστιτυτιον τϋπε: %d\n" - -#: util/grub-mkfont.c:550 -#, c-format -msgid "Unsupported substitution specification: %d\n" -msgstr "ΥνσυπποÏτεδ συϭστιτυτιον σπεϲιφιϲατιον: %d\n" - -#: util/grub-mkfont.c:582 -#, c-format -msgid "Unsupported coverage specification: %d\n" -msgstr "ΥνσυπποÏτεδ ϲοβεÏαγε σπεϲιφιϲατιον: %d\n" - -#: util/grub-mkfont.c:622 -#, c-format -msgid "WARNING: unsupported font feature parameters: %x\n" -msgstr "ΩΑΡÎΙÎΓ: υνσυπποÏτεδ φοντ φεατυÏε παÏαμετεÏσ: %x\n" - -#: util/grub-mkfont.c:936 util/grub-mkrescue.c:98 util/grub-mkstandalone.c:48 -msgid "save output in FILE [required]" -msgstr "σαβε ουτπυτ ιν ΦΙΛΕ [ÏεϗυιÏεδ]" - -#. TRANSLATORS: some font files may have multiple faces (fonts). -#. This option is used to chose among them, the first face being '0'. -#. Rarely used. -#: util/grub-mkfont.c:942 -msgid "select face index" -msgstr "σελεϲτ φαϲε ινδεξ" - -#: util/grub-mkfont.c:943 -msgid "FROM-TO[,FROM-TO]" -msgstr "ΦΡΟΜ-ΤΟ[,ΦΡΟΜ-ΤΟ]" - -#. TRANSLATORS: It refers to the range of characters in font. -#: util/grub-mkfont.c:945 -msgid "set font range" -msgstr "σετ φοντ Ïανγε" - -#. TRANSLATORS: "family name" for font is just a generic name without suffix -#. like "Bold". -#: util/grub-mkfont.c:949 -msgid "set font family name" -msgstr "σετ φοντ φαμιλϋ ναμε" - -#: util/grub-mkfont.c:950 -msgid "SIZE" -msgstr "ΣΙΖΕ" - -#: util/grub-mkfont.c:950 -msgid "set font size" -msgstr "σετ φοντ σιζε" - -#: util/grub-mkfont.c:951 -msgid "set font descent" -msgstr "σετ φοντ δεσϲεντ" - -#: util/grub-mkfont.c:952 -msgid "set font ascent" -msgstr "σετ φοντ ασϲεντ" - -#: util/grub-mkfont.c:953 -msgid "convert to bold font" -msgstr "ϲονβεÏÏ„ το ϭολδ φοντ" - -#: util/grub-mkfont.c:954 -msgid "force autohint" -msgstr "φοÏϲε αυτοχιντ" - -#: util/grub-mkfont.c:955 -msgid "disable hinting" -msgstr "δισαϭλε χιντινγ" - -#. TRANSLATORS: some fonts contain bitmap rendering for -#. some sizes. This option forces rerendering even if -#. pre-rendered bitmap is available. -#. -#: util/grub-mkfont.c:961 -msgid "ignore bitmap strikes when loading" -msgstr "ιγνοÏε ϭιτμαπ στÏικεσ ωχεν λοαδινγ" - -#. TRANSLATORS: It refers to the range of characters in font. -#: util/grub-mkfont.c:1059 util/grub-mkfont.c:1075 -msgid "invalid font range" -msgstr "ινβαλιδ φοντ Ïανγε" - -#: util/grub-mkfont.c:1151 -msgid "[OPTIONS] FONT_FILES" -msgstr "[ΟΠΤΙΟÎΣ] ΦΟÎΤ_ΦΙΛΕΣ" - -#: util/grub-mkfont.c:1152 -msgid "Convert common font file formats into PF2" -msgstr "ϲονβεÏÏ„ ϲομμον φοντ φιλε φοÏματσ ιντο ΠΦ2" - -#: util/grub-mkfont.c:1182 util/grub-mkrescue.c:483 -#: util/grub-mkstandalone.c:306 -msgid "output file must be specified" -msgstr "ουτπυτ φιλε μυστ ϭε σπεϲιφιεδ" - -#: util/grub-mkfont.c:1185 -msgid "FT_Init_FreeType fails" -msgstr "ΦΤ_Ινιτ_ΦÏεεΤϋπε φαιλσ" - -#: util/grub-mkfont.c:1199 -#, c-format -msgid "can't open file %s, index %d: error %d" -msgstr "ϲαν'Ï„ οπεν φιλε %s, ινδεξ %d: εÏÏÎ¿Ï %d" - -#: util/grub-mkfont.c:1229 -#, c-format -msgid "can't set %dx%d font size: Freetype error %d: %s" -msgstr "ϲαν'Ï„ σετ %dξ%d φοντ σιζε: ΦÏεετϋπε εÏÏÎ¿Ï %d: %s" - -#: util/grub-mkimage.c:67 -msgid "set prefix directory" -msgstr "σετ Ï€Ïεφιξ διÏεϲτοÏÏ‹" - -#. TRANSLATORS: "memdisk" here isn't an identifier, it can be translated. -#. "embed" is a verb (command description). " -#: util/grub-mkimage.c:71 -msgid "" -"embed FILE as a memdisk image\n" -"Implies `-p (memdisk)/boot/grub' and overrides any prefix supplied " -"previously, but the prefix itself can be overridden by later options" -msgstr "" -"εμϭεδ ΦΙΛΕ ασ α μεμδισκ ιμαγε\n" -"Ιμπλιεσ `-Ï€ (μεμδισκ)/ϭοοτ/γÏÏ…Ï­' ανδ οβεÏÏιδεσ ανϋ Ï€Ïεφιξ συππλιεδ " -"Ï€Ïεβιουσλϋ, Ï­Ï…Ï„ τχε Ï€Ïεφιξ ιτσελφ ϲαν ϭε οβεÏÏιδδεν Ï­Ï‹ Î»Î±Ï„ÎµÏ Î¿Ï€Ï„Î¹Î¿Î½Ïƒ" - -#: util/grub-mkimage.c:74 -msgid "embed FILE as a device tree (DTB)\n" -msgstr "εμϭεδ ΦΙΛΕ ασ α δεβιϲε Ï„Ïεε (ΔΤϬ)\n" - -#: util/grub-mkimage.c:76 -msgid "embed FILE as an early config" -msgstr "εμϭεδ ΦΙΛΕ ασ αν εαÏλϋ ϲονφιγ" - -#. TRANSLATORS: NOTE is a name of segment. -#: util/grub-mkimage.c:80 -msgid "add NOTE segment for CHRP IEEE1275" -msgstr "αδδ ÎΟΤΕ σεγμεντ Ï†Î¿Ï Ï²Î§Î¡Î  ΙΕΕΕ1275" - -#: util/grub-mkimage.c:81 -msgid "output a generated image to FILE [default=stdout]" -msgstr "ουτπυτ α γενεÏατεδ ιμαγε το ΦΙΛΕ [δεφαυλτ=στδουτ]" - -#: util/grub-mkimage.c:82 -msgid "FORMAT" -msgstr "ΦΟΡΜΑΤ" - -#: util/grub-mkimage.c:100 util/grub-mkstandalone.c:62 -msgid "generate an image in FORMAT" -msgstr "γενεÏατε αν ιμαγε ιν ΦΟΡΜΑΤ" - -#: util/grub-mkimage.c:101 util/grub-mkstandalone.c:63 -msgid "available formats:" -msgstr "αβαιλαϭλε φοÏματσ:" - -#: util/grub-mkimage.c:152 util/grub-mkstandalone.c:96 -#, c-format -msgid "unknown target format %s\n" -msgstr "υνκνοων ταÏγετ φοÏματ %s\n" - -#: util/grub-mkimage.c:242 -msgid "[OPTION]... [MODULES]" -msgstr "[ΟΠΤΙΟÎ]... [ΜΟΔΥΛΕΣ]" - -#: util/grub-mkimage.c:243 -msgid "Make a bootable image of GRUB." -msgstr "Μακε α ϭοοταϭλε ιμαγε οφ ΓΡΥϬ." - -#: util/grub-mkimage.c:273 util/grub-mkstandalone.c:309 -msgid "Target format not specified (use the -O option)." -msgstr "ΤαÏγετ φοÏματ νοτ σπεϲιφιεδ (υσε τχε -Ο οπτιον)." - -#: util/grub-mkimage.c:282 -msgid "Prefix not specified (use the -p option)." -msgstr "ΠÏεφιξ νοτ σπεϲιφιεδ (υσε τχε -Ï€ οπτιον)." - -#: util/grub-mkimage.c:318 util/setup.c:793 -#, c-format -msgid "cannot close `%s': %s" -msgstr "ϲαννοτ ϲλοσε `%s': %s" - -#: util/grub-mkimagexx.c:2191 -#, c-format -msgid "" -"`%s' is miscompiled: its start address is 0x%llx instead of 0x%llx: ld.gold " -"bug?" -msgstr "" -"`%s' ισ μισϲομπιλεδ: ιτσ σταÏÏ„ αδδÏεσσ ισ 0ξ%llx ινστεαδ οφ 0ξ%llx: λδ.γολδ " -"ϭυγ?" - -#: util/grub-mklayout.c:53 -msgid "set input filename. Default is STDIN" -msgstr "σετ ινπυτ φιλεναμε. Δεφαυλτ ισ ΣΤΔΙÎ" - -#. TRANSLATORS: scan identifier is keyboard key symbolic name. -#: util/grub-mklayout.c:307 -#, c-format -msgid "Unknown keyboard scan identifier %s\n" -msgstr "Υνκνοων κεϋϭοαÏδ σϲαν Î¹Î´ÎµÎ½Ï„Î¹Ï†Î¹ÎµÏ %s\n" - -#. TRANSLATORS: scan code is keyboard key numeric identifier. -#: util/grub-mklayout.c:390 util/grub-mklayout.c:418 -#, c-format -msgid "Unknown keyboard scan code 0x%02x\n" -msgstr "Υνκνοων κεϋϭοαÏδ σϲαν ϲοδε 0ξ%02x\n" - -#. TRANSLATORS: this error is triggered when input doesn't contain any -#. key descriptions. -#: util/grub-mklayout.c:438 -msgid "ERROR: no valid keyboard layout found. Check the input.\n" -msgstr "ΕΡΡΟΡ: νο βαλιδ κεϋϭοαÏδ λαϋουτ φουνδ. ϲχεϲκ τχε ινπυτ.\n" - -#. TRANSLATORS: "one" is a shortcut for "keyboard layout". -#: util/grub-mklayout.c:478 -msgid "Generate GRUB keyboard layout from Linux console one." -msgstr "ΓενεÏατε ΓΡΥϬ κεϋϭοαÏδ λαϋουτ φÏομ Λινυξ ϲονσολε ονε." - -#: util/grub-mknetdir.c:47 -msgid "root directory of TFTP server" -msgstr "Ïοοτ διÏεϲτοÏÏ‹ οφ ΤΦΤΠ σεÏβεÏ" - -#: util/grub-mknetdir.c:49 -msgid "relative subdirectory on network server" -msgstr "Ïελατιβε συϭδιÏεϲτοÏÏ‹ ον νετωοÏκ σεÏβεÏ" - -#: util/grub-mknetdir.c:88 -msgid "" -"Prepares GRUB network boot images at net_directory/subdir assuming " -"net_directory being TFTP root." -msgstr "" -"ΠÏεπαÏεσ ΓΡΥϬ νετωοÏκ ϭοοτ ιμαγεσ ατ νετ_διÏεϲτοÏÏ‹/ÏƒÏ…Ï­Î´Î¹Ï Î±ÏƒÏƒÏ…Î¼Î¹Î½Î³ " -"νετ_διÏεϲτοÏÏ‹ ϭεινγ ΤΦΤΠ Ïοοτ." - -#: util/grub-mknetdir.c:146 -#, c-format -msgid "unsupported platform %s" -msgstr "υνσυπποÏτεδ πλατφοÏμ %s" - -#. TRANSLATORS: First %s is replaced by platform name. Second one by filename. -#: util/grub-mknetdir.c:165 -#, c-format -msgid "" -"Netboot directory for %s created. Configure your DHCP server to point to %s\n" -msgstr "" -"Îετϭοοτ διÏεϲτοÏÏ‹ Ï†Î¿Ï %s ϲÏεατεδ. ϲονφιγυÏε Ï‹Î¿Ï…Ï Î”Î§Ï²Î  σεÏÎ²ÎµÏ Ï„Î¿ ποιντ το %s\n" - -#: util/grub-mkpasswd-pbkdf2.c:46 -msgid "Number of PBKDF2 iterations" -msgstr "ÎÏ…Î¼Ï­ÎµÏ Î¿Ï† ΠϬΚΔΦ2 ιτεÏατιονσ" - -#: util/grub-mkpasswd-pbkdf2.c:47 -msgid "Length of generated hash" -msgstr "Λενγτχ οφ γενεÏατεδ χασχ" - -#: util/grub-mkpasswd-pbkdf2.c:48 -msgid "Length of salt" -msgstr "Λενγτχ οφ σαλτ" - -#: util/grub-mkpasswd-pbkdf2.c:87 -msgid "Generate PBKDF2 password hash." -msgstr "ΓενεÏατε ΠϬΚΔΦ2 πασσωοÏδ χασχ." - -#: util/grub-mkpasswd-pbkdf2.c:144 util/grub-mkpasswd-pbkdf2.c:151 -msgid "failure to read password" -msgstr "φαιλυÏε το Ïεαδ πασσωοÏδ" - -#: util/grub-mkpasswd-pbkdf2.c:146 -msgid "Reenter password: " -msgstr "Î¡ÎµÎµÎ½Ï„ÎµÏ Ï€Î±ÏƒÏƒÏ‰Î¿Ïδ: " - -#: util/grub-mkpasswd-pbkdf2.c:160 -msgid "passwords don't match" -msgstr "πασσωοÏδσ δον'Ï„ ματϲχ" - -#: util/grub-mkpasswd-pbkdf2.c:169 -msgid "couldn't retrieve random data for salt" -msgstr "ϲουλδν'Ï„ ÏετÏιεβε Ïανδομ δατα Ï†Î¿Ï ÏƒÎ±Î»Ï„" - -#: util/grub-mkpasswd-pbkdf2.c:184 -#, c-format -msgid "cryptographic error number %d" -msgstr "ϲÏϋπτογÏαπχιϲ εÏÏÎ¿Ï Î½Ï…Î¼Ï­ÎµÏ %d" - -#: util/grub-mkpasswd-pbkdf2.c:203 -#, c-format -msgid "PBKDF2 hash of your password is %s\n" -msgstr "ΠϬΚΔΦ2 χασχ οφ Ï‹Î¿Ï…Ï Ï€Î±ÏƒÏƒÏ‰Î¿Ïδ ισ %s\n" - -#: util/grub-mkrelpath.c:67 -msgid "No path is specified.\n" -msgstr "Îο πατχ ισ σπεϲιφιεδ.\n" - -#: util/grub-mkrelpath.c:78 -msgid "PATH" -msgstr "ΠΑΤΧ" - -#: util/grub-mkrelpath.c:79 -msgid "Transform a system filename into GRUB one." -msgstr "ΤÏανσφοÏμ α σϋστεμ φιλεναμε ιντο ΓΡΥϬ ονε." - -#: util/grub-mkrescue.c:100 -msgid "save ROM images in DIR [optional]" -msgstr "σαβε ΡΟΜ ιμαγεσ ιν ΔΙΡ [οπτιοναλ]" - -#. TRANSLATORS: xorriso is a program for creating ISOs and burning CDs. -#: util/grub-mkrescue.c:103 -msgid "use FILE as xorriso [optional]" -msgstr "υσε ΦΙΛΕ ασ ξοÏÏισο [οπτιοναλ]" - -#: util/grub-mkrescue.c:109 -msgid "use STRING as product name" -msgstr "υσε ΣΤΡΙÎΓ ασ Ï€Ïοδυϲτ ναμε" - -#: util/grub-mkrescue.c:111 -msgid "" -"enable sparc boot. Disables HFS+, APM, ARCS and boot as disk image for i386-" -"pc" -msgstr "" -"εναϭλε σπαÏϲ ϭοοτ. Δισαϭλεσ ΧΦΣ+, ΑΠΜ, ΑΡϲΣ ανδ ϭοοτ ασ δισκ ιμαγε Ï†Î¿Ï Î¹386-" -"πϲ" - -#: util/grub-mkrescue.c:112 -msgid "" -"enable ARCS (big-endian mips machines, mostly SGI) boot. Disables HFS+, APM, " -"sparc64 and boot as disk image for i386-pc" -msgstr "" -"εναϭλε ΑΡϲΣ (ϭιγ-ενδιαν μιπσ μαϲχινεσ, μοστλϋ ΣΓΙ) ϭοοτ. Δισαϭλεσ ΧΦΣ+, ΑΠΜ, " -"σπαÏϲ64 ανδ ϭοοτ ασ δισκ ιμαγε Ï†Î¿Ï Î¹386-πϲ" - -#. TRANSLATORS: it generates one single image which is bootable through any method. -#: util/grub-mkrescue.c:125 -msgid "Make GRUB CD-ROM, disk, pendrive and floppy bootable image." -msgstr "Μακε ΓΡΥϬ ϲΔ-ΡΟΜ, δισκ, πενδÏιβε ανδ φλοππϋ ϭοοταϭλε ιμαγε." - -#: util/grub-mkrescue.c:130 -#, c-format -msgid "" -"Generates a bootable CD/USB/floppy image. Arguments other than options to " -"this program are passed to xorriso, and indicate source files, source " -"directories, or any of the mkisofs options listed by the output of `%s'." -msgstr "" -"ΓενεÏατεσ α ϭοοταϭλε ϲΔ/ΥΣϬ/φλοππϋ ιμαγε. ΑÏγυμεντσ Î¿Ï„Ï‡ÎµÏ Ï„Ï‡Î±Î½ οπτιονσ το " -"τχισ Ï€ÏογÏαμ αÏε πασσεδ το ξοÏÏισο, ανδ ινδιϲατε σουÏϲε φιλεσ, σουÏϲε " -"διÏεϲτοÏιεσ, Î¿Ï Î±Î½Ï‹ οφ τχε μκισοφσ οπτιονσ λιστεδ Ï­Ï‹ τχε ουτπυτ οφ `%s'." - -#: util/grub-mkrescue.c:134 -msgid "Option -- switches to native xorriso command mode." -msgstr "Οπτιον -- σωιτϲχεσ το νατιβε ξοÏÏισο ϲομμανδ μοδε." - -#: util/grub-mkrescue.c:135 -msgid "Mail xorriso support requests to ." -msgstr "Μαιλ ξοÏÏισο συπποÏÏ„ Ïεϗυεστσ το <ϭυγ-ξοÏÏισο@γνυ.οÏγ>." - -#: util/grub-mkrescue.c:221 util/grub-mkstandalone.c:114 -msgid "[OPTION] SOURCE..." -msgstr "[ΟΠΤΙΟÎ] ΣΟΥΡϲΕ..." - -#: util/grub-mkrescue.c:257 util/grub-mkrescue.c:300 util/grub-mkrescue.c:588 -#, c-format -msgid "enabling %s support ..." -msgstr "εναϭλινγ %s συπποÏÏ„ ..." - -#: util/grub-mkrescue.c:486 -msgid "xorriso not found" -msgstr "ξοÏÏισο νοτ φουνδ" - -#: util/grub-mkrescue.c:623 -msgid "" -"Your xorriso doesn't support `--grub2-boot-info'. Some features are " -"disabled. Please use xorriso 1.2.9 or later." -msgstr "" -"Î«Î¿Ï…Ï Î¾Î¿ÏÏισο δοεσν'Ï„ συπποÏÏ„ `--γÏÏ…Ï­2-ϭοοτ-ινφο'. Σομε φεατυÏεσ αÏε " -"δισαϭλεδ. Πλεασε υσε ξοÏÏισο 1.2.9 Î¿Ï Î»Î±Ï„ÎµÏ." - -#: util/grub-mkrescue.c:650 -msgid "" -"Your xorriso doesn't support `--grub2-boot-info'. Your core image is too " -"big. Boot as disk is disabled. Please use xorriso 1.2.9 or later." -msgstr "" -"Î«Î¿Ï…Ï Î¾Î¿ÏÏισο δοεσν'Ï„ συπποÏÏ„ `--γÏÏ…Ï­2-ϭοοτ-ινφο'. Î«Î¿Ï…Ï Ï²Î¿Ïε ιμαγε ισ τοο " -"ϭιγ. Ϭοοτ ασ δισκ ισ δισαϭλεδ. Πλεασε υσε ξοÏÏισο 1.2.9 Î¿Ï Î»Î±Ï„ÎµÏ." - -#: util/grub-mkstandalone.c:115 -msgid "" -"Generate a standalone image (containing all modules) in the selected format" -msgstr "" -"ΓενεÏατε α στανδαλονε ιμαγε (ϲονταινινγ αλλ μοδυλεσ) ιν τχε σελεϲτεδ φοÏματ" - -#: util/grub-mkstandalone.c:115 -msgid "Graft point syntax (E.g. /boot/grub/grub.cfg=./grub.cfg) is accepted" -msgstr "ΓÏαφτ ποιντ σϋνταξ (Ε.γ. /ϭοοτ/γÏÏ…Ï­/γÏÏ…Ï­.ϲφγ=./γÏÏ…Ï­.ϲφγ) ισ αϲϲεπτεδ" - -#: util/grub-mount.c:552 -msgid "IMAGE1 [IMAGE2 ...] MOUNTPOINT" -msgstr "ΙΜΑΓΕ1 [ΙΜΑΓΕ2 ...] ΜΟΥÎΤΠΟΙÎΤ" - -#: util/grub-mount.c:575 -msgid "need an image and mountpoint" -msgstr "νεεδ αν ιμαγε ανδ μουντποιντ" - -#: util/grub-probe.c:731 -msgid "given argument is a system device, not a path" -msgstr "γιβεν αÏγυμεντ ισ α σϋστεμ δεβιϲε, νοτ α πατχ" - -#: util/grub-probe.c:736 -msgid "separate items in output using ASCII NUL characters" -msgstr "σεπαÏατε ιτεμσ ιν ουτπυτ υσινγ ΑΣϲΙΙ ÎΥΛ ϲχαÏαϲτεÏσ" - -#: util/grub-probe.c:754 -#, c-format -msgid "[default=%s]" -msgstr "[δεφαυλτ=%s]" - -#: util/grub-probe.c:756 -msgid "print TARGET" -msgstr "Ï€Ïιντ ΤΑΡΓΕΤ" - -#: util/grub-probe.c:757 -msgid "available targets:" -msgstr "αβαιλαϭλε ταÏγετσ:" - -#: util/grub-probe.c:839 -msgid "[OPTION]... [PATH|DEVICE]" -msgstr "[ΟΠΤΙΟÎ]... [ΠΑΤΧ|ΔΕΒΙϲΕ]" - -#: util/grub-probe.c:840 -msgid "" -"Probe device information for a given path (or device, if the -d option is " -"given)." -msgstr "" -"ΠÏοϭε δεβιϲε ινφοÏματιον Ï†Î¿Ï Î± γιβεν πατχ (Î¿Ï Î´ÎµÎ²Î¹Ï²Îµ, ιφ τχε -δ οπτιον ισ " -"γιβεν)." - -#: util/grub-render-label.c:60 -msgid "read text from FILE." -msgstr "Ïεαδ τεξτ φÏομ ΦΙΛΕ." - -#: util/grub-render-label.c:62 -msgid "use COLOR for text" -msgstr "υσε ϲΟΛΟΡ Ï†Î¿Ï Ï„ÎµÎ¾Ï„" - -#: util/grub-render-label.c:64 -msgid "use COLOR for background" -msgstr "υσε ϲΟΛΟΡ Ï†Î¿Ï Ï­Î±Ï²ÎºÎ³Ïουνδ" - -#. TRANSLATORS: The result is always stored to file and -#. never shown directly, so don't use "show" as synonym for render. Use "create" if -#. "render" doesn't translate directly. -#: util/grub-render-label.c:69 -msgid "set the label to render" -msgstr "σετ τχε λαϭελ το ÏενδεÏ" - -#: util/grub-render-label.c:73 -msgid "use FILE as font (PF2)." -msgstr "υσε ΦΙΛΕ ασ φοντ (ΠΦ2)." - -#. TRANSLATORS: This file takes a text and creates a graphical representation of it, -#. putting the result into .disk_label file. The result is always stored to file and -#. never shown directly, so don't use "show" as synonym for render. Use "create" if -#. "render" doesn't translate directly. -#: util/grub-render-label.c:136 -msgid "Render Apple .disk_label." -msgstr "Î¡ÎµÎ½Î´ÎµÏ Î‘Ï€Ï€Î»Îµ .δισκ_λαϭελ." - -#: util/grub-render-label.c:158 util/grub-syslinux2cfg.c:169 -msgid "Missing arguments\n" -msgstr "Μισσινγ αÏγυμεντσ\n" - -#: util/grub-script-check.c:87 -msgid "[PATH]" -msgstr "[ΠΑΤΧ]" - -#: util/grub-script-check.c:88 -msgid "Checks GRUB script configuration file for syntax errors." -msgstr "ϲχεϲκσ ΓΡΥϬ σϲÏιπτ ϲονφιγυÏατιον φιλε Ï†Î¿Ï ÏƒÏ‹Î½Ï„Î±Î¾ εÏÏοÏσ." - -#: util/grub-script-check.c:207 -#, c-format -msgid "Syntax error at line %u\n" -msgstr "Σϋνταξ εÏÏÎ¿Ï Î±Ï„ λινε %u\n" - -#: util/grub-script-check.c:212 -#, c-format -msgid "Script `%s' contains no commands and will do nothing\n" -msgstr "ΣϲÏιπτ `%s' ϲονταινσ νο ϲομμανδσ ανδ ωιλλ δο νοτχινγ\n" - -#: util/grub-setup.c:79 -#, c-format -msgid "use FILE as the boot image [default=%s]" -msgstr "υσε ΦΙΛΕ ασ τχε ϭοοτ ιμαγε [δεφαυλτ=%s]" - -#: util/grub-setup.c:81 -#, c-format -msgid "use FILE as the core image [default=%s]" -msgstr "υσε ΦΙΛΕ ασ τχε ϲοÏε ιμαγε [δεφαυλτ=%s]" - -#: util/grub-setup.c:210 -msgid "No device is specified.\n" -msgstr "Îο δεβιϲε ισ σπεϲιφιεδ.\n" - -#: util/grub-setup.c:224 -msgid "" -"Set up images to boot from DEVICE.\n" -"\n" -"You should not normally run this program directly. Use grub-install instead." -msgstr "" -"Σετ Ï…Ï€ ιμαγεσ το ϭοοτ φÏομ ΔΕΒΙϲΕ.\n" -"\n" -"Ϋου σχουλδ νοτ νοÏμαλλϋ Ïυν τχισ Ï€ÏογÏαμ διÏεϲτλϋ. Υσε γÏÏ…Ï­-ινσταλλ ινστεαδ." - -#: util/grub-setup.c:228 -msgid "DEVICE must be an OS device (e.g. /dev/sda)." -msgstr "ΔΕΒΙϲΕ μυστ ϭε αν ΟΣ δεβιϲε (ε.γ. /δεβ/σδα)." - -#: util/grub-setup.c:297 -#, c-format -msgid "Invalid device `%s'.\n" -msgstr "Ινβαλιδ δεβιϲε `%s'.\n" - -#: util/grub-syslinux2cfg.c:64 -msgid "root directory as it will be seen on runtime [default=/]." -msgstr "Ïοοτ διÏεϲτοÏÏ‹ ασ ιτ ωιλλ ϭε σεεν ον Ïυντιμε [δεφαυλτ=/]." - -#: util/grub-syslinux2cfg.c:69 -msgid "" -"current directory of syslinux as it will be seen on runtime [default is " -"parent directory of input file]." -msgstr "" -"ϲυÏÏεντ διÏεϲτοÏÏ‹ οφ σϋσλινυξ ασ ιτ ωιλλ ϭε σεεν ον Ïυντιμε [δεφαυλτ ισ " -"παÏεντ διÏεϲτοÏÏ‹ οφ ινπυτ φιλε]." - -#: util/grub-syslinux2cfg.c:74 -msgid "write output to FILE [default=stdout]." -msgstr "ωÏιτε ουτπυτ το ΦΙΛΕ [δεφαυλτ=στδουτ]." - -#: util/grub-syslinux2cfg.c:148 -msgid "Transform syslinux config into GRUB one." -msgstr "ΤÏανσφοÏμ σϋσλινυξ ϲονφιγ ιντο ΓΡΥϬ ονε." - -#: util/mkimage.c:688 util/mkimage.c:717 util/mkimage.c:734 -msgid "cannot compress the kernel image" -msgstr "ϲαννοτ ϲομπÏεσσ τχε κεÏνελ ιμαγε" - -#: util/mkimage.c:766 util/mkimage.c:1077 -#, c-format -msgid "unknown compression %d" -msgstr "υνκνοων ϲομπÏεσσιον %d" - -#: util/mkimage.c:1088 -msgid "Decompressor is too big" -msgstr "ΔεϲομπÏÎµÏƒÏƒÎ¿Ï Î¹Ïƒ τοο ϭιγ" - -#: util/mkimage.c:1133 -#, c-format -msgid "core image is too big (0x%x > 0x%x)" -msgstr "ϲοÏε ιμαγε ισ τοο ϭιγ (0ξ%x > 0ξ%x)" - -#: util/mkimage.c:1140 -#, c-format -msgid "kernel image is too big (0x%x > 0x%x)" -msgstr "κεÏνελ ιμαγε ισ τοο ϭιγ (0ξ%x > 0ξ%x)" - -#: util/mkimage.c:1220 util/mkimage.c:1501 -#, c-format -msgid "diskboot.img size must be %u bytes" -msgstr "δισκϭοοτ.ιμγ σιζε μυστ ϭε %u ϭϋτεσ" - -#: util/mkimage.c:1571 -msgid "" -"fwstart.img doesn't match the known good version. proceed at your own risk" -msgstr "" -"φωσταÏÏ„.ιμγ δοεσν'Ï„ ματϲχ τχε κνοων γοοδ βεÏσιον. Ï€Ïοϲεεδ ατ Ï‹Î¿Ï…Ï Î¿Ï‰Î½ Ïισκ" - -#: util/mkimage.c:1575 util/mkimage.c:1601 -msgid "firmware image is too big" -msgstr "φιÏμωαÏε ιμαγε ισ τοο ϭιγ" - -#: util/resolve.c:93 -#, c-format -msgid "invalid line format: %s" -msgstr "ινβαλιδ λινε φοÏματ: %s" - -#: util/setup.c:167 -msgid "the first sector of the core file is not sector-aligned" -msgstr "τχε φιÏστ ÏƒÎµÏ²Ï„Î¿Ï Î¿Ï† τχε ϲοÏε φιλε ισ νοτ σεϲτοÏ-αλιγνεδ" - -#: util/setup.c:177 -msgid "non-sector-aligned data is found in the core file" -msgstr "νον-σεϲτοÏ-αλιγνεδ δατα ισ φουνδ ιν τχε ϲοÏε φιλε" - -#: util/setup.c:199 -msgid "the sectors of the core file are too fragmented" -msgstr "τχε σεϲτοÏσ οφ τχε ϲοÏε φιλε αÏε τοο φÏαγμεντεδ" - -#: util/setup.c:280 -#, c-format -msgid "the size of `%s' is not %u" -msgstr "τχε σιζε οφ `%s' ισ νοτ %u" - -#: util/setup.c:290 -#, c-format -msgid "the size of `%s' is too small" -msgstr "τχε σιζε οφ `%s' ισ τοο σμαλλ" - -#: util/setup.c:428 -msgid "" -"Attempting to install GRUB to a disk with multiple partition labels or both " -"partition label and filesystem. This is not supported yet." -msgstr "" -"Αττεμπτινγ το ινσταλλ ΓΡΥϬ το α δισκ ωιτχ μυλτιπλε παÏτιτιον λαϭελσ Î¿Ï Ï­Î¿Ï„Ï‡ " -"παÏτιτιον λαϭελ ανδ φιλεσϋστεμ. Τχισ ισ νοτ συπποÏτεδ ϋετ." - -#: util/setup.c:441 -#, c-format -msgid "unable to identify a filesystem in %s; safety check can't be performed" -msgstr "υναϭλε το ιδεντιφϋ α φιλεσϋστεμ ιν %s; σαφετϋ ϲχεϲκ ϲαν'Ï„ ϭε πεÏφοÏμεδ" - -#. TRANSLATORS: Filesystem may reserve the space just GRUB isn't sure about it. -#: util/setup.c:445 -#, c-format -msgid "" -"%s appears to contain a %s filesystem which isn't known to reserve space for " -"DOS-style boot. Installing GRUB there could result in FILESYSTEM " -"DESTRUCTION if valuable data is overwritten by grub-setup (--skip-fs-probe " -"disables this check, use at your own risk)" -msgstr "" -"%s αππεαÏσ το ϲονταιν α %s φιλεσϋστεμ ωχιϲχ ισν'Ï„ κνοων το ÏεσεÏβε σπαϲε Ï†Î¿Ï " -"ΔΟΣ-στϋλε ϭοοτ. Ινσταλλινγ ΓΡΥϬ τχεÏε ϲουλδ Ïεσυλτ ιν ΦΙΛΕΣΫΣΤΕΜ " -"ΔΕΣΤΡΥϲΤΙΟΠιφ βαλυαϭλε δατα ισ οβεÏωÏιττεν Ï­Ï‹ γÏÏ…Ï­-σετυπ (--σκιπ-φσ-Ï€Ïοϭε " -"δισαϭλεσ τχισ ϲχεϲκ, υσε ατ Ï‹Î¿Ï…Ï Î¿Ï‰Î½ Ïισκ)" - -#. TRANSLATORS: Partition map may reserve the space just GRUB isn't sure about it. -#: util/setup.c:458 -#, c-format -msgid "" -"%s appears to contain a %s partition map which isn't known to reserve space " -"for DOS-style boot. Installing GRUB there could result in FILESYSTEM " -"DESTRUCTION if valuable data is overwritten by grub-setup (--skip-fs-probe " -"disables this check, use at your own risk)" -msgstr "" -"%s αππεαÏσ το ϲονταιν α %s παÏτιτιον μαπ ωχιϲχ ισν'Ï„ κνοων το ÏεσεÏβε σπαϲε " -"Ï†Î¿Ï Î”ÎŸÎ£-στϋλε ϭοοτ. Ινσταλλινγ ΓΡΥϬ τχεÏε ϲουλδ Ïεσυλτ ιν ΦΙΛΕΣΫΣΤΕΜ " -"ΔΕΣΤΡΥϲΤΙΟΠιφ βαλυαϭλε δατα ισ οβεÏωÏιττεν Ï­Ï‹ γÏÏ…Ï­-σετυπ (--σκιπ-φσ-Ï€Ïοϭε " -"δισαϭλεσ τχισ ϲχεϲκ, υσε ατ Ï‹Î¿Ï…Ï Î¿Ï‰Î½ Ïισκ)" - -#: util/setup.c:465 -#, c-format -msgid "" -"%s appears to contain a %s partition map and LDM which isn't known to be a " -"safe combination. Installing GRUB there could result in FILESYSTEM " -"DESTRUCTION if valuable data is overwritten by grub-setup (--skip-fs-probe " -"disables this check, use at your own risk)" -msgstr "" -"%s αππεαÏσ το ϲονταιν α %s παÏτιτιον μαπ ανδ ΛΔΜ ωχιϲχ ισν'Ï„ κνοων το ϭε α " -"σαφε ϲομϭινατιον. Ινσταλλινγ ΓΡΥϬ τχεÏε ϲουλδ Ïεσυλτ ιν ΦΙΛΕΣΫΣΤΕΜ " -"ΔΕΣΤΡΥϲΤΙΟΠιφ βαλυαϭλε δατα ισ οβεÏωÏιττεν Ï­Ï‹ γÏÏ…Ï­-σετυπ (--σκιπ-φσ-Ï€Ïοϭε " -"δισαϭλεσ τχισ ϲχεϲκ, υσε ατ Ï‹Î¿Ï…Ï Î¿Ï‰Î½ Ïισκ)" - -#: util/setup.c:478 -msgid "" -"Attempting to install GRUB to a partitionless disk or to a partition. This " -"is a BAD idea." -msgstr "" -"Αττεμπτινγ το ινσταλλ ΓΡΥϬ το α παÏτιτιονλεσσ δισκ Î¿Ï Ï„Î¿ α παÏτιτιον. Τχισ " -"ισ α ϬΑΔ ιδεα." - -#: util/setup.c:483 -msgid "" -"Attempting to install GRUB to a disk with multiple partition labels. This " -"is not supported yet." -msgstr "" -"Αττεμπτινγ το ινσταλλ ΓΡΥϬ το α δισκ ωιτχ μυλτιπλε παÏτιτιον λαϭελσ. Τχισ " -"ισ νοτ συπποÏτεδ ϋετ." - -#: util/setup.c:489 -#, c-format -msgid "Partition style `%s' doesn't support embedding" -msgstr "ΠαÏτιτιον στϋλε `%s' δοεσν'Ï„ συπποÏÏ„ εμϭεδδινγ" - -#: util/setup.c:496 -#, c-format -msgid "File system `%s' doesn't support embedding" -msgstr "Φιλε σϋστεμ `%s' δοεσν'Ï„ συπποÏÏ„ εμϭεδδινγ" - -#: util/setup.c:537 -msgid "Your embedding area is unusually small. core.img won't fit in it." -msgstr "Î«Î¿Ï…Ï ÎµÎ¼Ï­ÎµÎ´Î´Î¹Î½Î³ αÏεα ισ υνυσυαλλϋ σμαλλ. ϲοÏε.ιμγ ωον'Ï„ φιτ ιν ιτ." - -#: util/setup.c:559 util/setup.c:725 util/setup.c:844 -msgid "no terminator in the core image" -msgstr "νο τεÏÎ¼Î¹Î½Î±Ï„Î¿Ï Î¹Î½ τχε ϲοÏε ιμαγε" - -#: util/setup.c:622 -msgid "core.img version mismatch" -msgstr "ϲοÏε.ιμγ βεÏσιον μισματϲχ" - -#: util/setup.c:675 -msgid "" -"embedding is not possible, but this is required for RAID and LVM install" -msgstr "" -"εμϭεδδινγ ισ νοτ ποσσιϭλε, Ï­Ï…Ï„ τχισ ισ ÏεϗυιÏεδ Ï†Î¿Ï Î¡Î‘Î™Î” ανδ ΛΒΜ ινσταλλ" - -#: util/setup.c:682 -#, c-format -msgid "can't determine filesystem on %s" -msgstr "ϲαν'Ï„ δετεÏμινε φιλεσϋστεμ ον %s" - -#: util/setup.c:685 -#, c-format -msgid "filesystem `%s' doesn't support blocklists" -msgstr "φιλεσϋστεμ `%s' δοεσν'Ï„ συπποÏÏ„ ϭλοϲκλιστσ" - -#. TRANSLATORS: cross-disk refers to /boot being on one disk -#. but MBR on another. -#: util/setup.c:694 -msgid "embedding is not possible, but this is required for cross-disk install" -msgstr "εμϭεδδινγ ισ νοτ ποσσιϭλε, Ï­Ï…Ï„ τχισ ισ ÏεϗυιÏεδ Ï†Î¿Ï Ï²Ïοσσ-δισκ ινσταλλ" - -#: util/setup.c:700 -msgid "" -"Embedding is not possible. GRUB can only be installed in this setup by " -"using blocklists. However, blocklists are UNRELIABLE and their use is " -"discouraged." -msgstr "" -"Εμϭεδδινγ ισ νοτ ποσσιϭλε. ΓΡΥϬ ϲαν ονλϋ ϭε ινσταλλεδ ιν τχισ σετυπ Ï­Ï‹ " -"υσινγ ϭλοϲκλιστσ. ΧοωεβεÏ, ϭλοϲκλιστσ αÏε Î¥ÎΡΕΛΙΑϬΛΕ ανδ Ï„Ï‡ÎµÎ¹Ï Ï…ÏƒÎµ ισ " -"δισϲουÏαγεδ." - -#. TRANSLATORS: Here GRUB refuses to continue with blocklist install. -#: util/setup.c:705 -msgid "will not proceed with blocklists" -msgstr "ωιλλ νοτ Ï€Ïοϲεεδ ωιτχ ϭλοϲκλιστσ" - -#: util/setup.c:817 util/setup.c:837 -msgid "blocklists are invalid" -msgstr "ϭλοϲκλιστσ αÏε ινβαλιδ" - -#: util/setup.c:847 -msgid "blocklists are incomplete" -msgstr "ϭλοϲκλιστσ αÏε ινϲομπλετε" diff --git a/thirdparty/grub-2.04/po/en@hebrew.gmo b/thirdparty/grub-2.04/po/en@hebrew.gmo deleted file mode 100644 index 722eee606c64875666084b53be4db38b74cb316d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 169046 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 F{{UWSZx{do diff --git a/thirdparty/grub-2.04/po/en@hebrew.po b/thirdparty/grub-2.04/po/en@hebrew.po deleted file mode 100644 index 4cbdfa787..000000000 --- a/thirdparty/grub-2.04/po/en@hebrew.po +++ /dev/null @@ -1,6579 +0,0 @@ -# English translations for grub package. -# Copyright (C) 2019 Free Software Foundation, Inc. -# This file is distributed under the same license as the grub package. -# Automatically generated, 2019. -# -msgid "" -msgstr "" -"Project-Id-Version: grub 2.04\n" -"Report-Msgid-Bugs-To: bug-grub@gnu.org\n" -"POT-Creation-Date: 2019-07-04 16:09+0200\n" -"PO-Revision-Date: 2019-07-04 16:09+0200\n" -"Last-Translator: Automatically generated\n" -"Language-Team: none\n" -"Language: en@hebrew\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=2; plural=(n != 1);\n" - -#: grub-core/bus/usb/serial/ftdi.c:145 grub-core/bus/usb/serial/pl2303.c:158 -#: grub-core/term/ieee1275/escc.c:169 grub-core/term/ns8250.c:202 -msgid "unsupported serial port speed" -msgstr "וּנשוּפּפּוֹרתעד שערִי×ל פּוֹרת שפּעעד" - -#: grub-core/bus/usb/serial/ftdi.c:151 grub-core/bus/usb/serial/pl2303.c:164 -#: grub-core/term/efi/serial.c:116 grub-core/term/ieee1275/escc.c:175 -#: grub-core/term/ns8250.c:208 grub-core/term/serial.c:227 -#: grub-core/term/serial.c:243 -msgid "unsupported serial port parity" -msgstr "וּנשוּפּפּוֹרתעד שערִי×ל פּוֹרת פּ×רִיתיִ" - -#: grub-core/bus/usb/serial/ftdi.c:157 grub-core/bus/usb/serial/pl2303.c:170 -#: grub-core/term/efi/serial.c:122 grub-core/term/ieee1275/escc.c:181 -#: grub-core/term/ns8250.c:213 grub-core/term/serial.c:267 -msgid "unsupported serial port stop bits number" -msgstr "וּנשוּפּפּוֹרתעד שערִי×ל פּוֹרת שתוֹפּ בִּיתש נוּמבּער" - -#: grub-core/bus/usb/serial/ftdi.c:161 grub-core/bus/usb/serial/pl2303.c:174 -#: grub-core/term/efi/serial.c:126 grub-core/term/ieee1275/escc.c:185 -#: grub-core/term/ns8250.c:217 -msgid "unsupported serial port word length" -msgstr "וּנשוּפּפּוֹרתעד שערִי×ל פּוֹרת ווֹרד לענגתה" - -#: grub-core/commands/acpi.c:42 -msgid "Don't load host tables specified by comma-separated list." -msgstr "דוֹנ'ת לוֹ×ד הוֹשת ת×בּלעש שפּעצִיפִֿיעד בּיִ צוֹממ×-שעפּ×ר×תעד לִישת." - -#: grub-core/commands/acpi.c:45 -msgid "Load only tables specified by comma-separated list." -msgstr "לוֹ×ד וֹנליִ ת×בּלעש שפּעצִיפִֿיעד בּיִ צוֹממ×-שעפּ×ר×תעד לִישת." - -#: grub-core/commands/acpi.c:46 -msgid "Export version 1 tables to the OS." -msgstr "עכּספּוֹרת בֿערשִיוֹנ 1 ת×בּלעש תוֹ תהע וֹש." - -#: grub-core/commands/acpi.c:47 -msgid "Export version 2 and version 3 tables to the OS." -msgstr "עכּספּוֹרת בֿערשִיוֹנ 2 ×נד בֿערשִיוֹנ 3 ת×בּלעש תוֹ תהע וֹש." - -#: grub-core/commands/acpi.c:48 -msgid "Set OEMID of RSDP, XSDT and RSDT." -msgstr "שעת וֹעמִיד וֹפֿ רשדפּ, כּסשדת ×נד רשדת." - -#: grub-core/commands/acpi.c:50 -msgid "Set OEMTABLE ID of RSDP, XSDT and RSDT." -msgstr "שעת וֹעמת×בּלע ִיד וֹפֿ רשדפּ, כּסשדת ×נד רשדת." - -#: grub-core/commands/acpi.c:52 -msgid "Set OEMTABLE revision of RSDP, XSDT and RSDT." -msgstr "שעת וֹעמת×בּלע רעבִֿישִיוֹנ וֹפֿ רשדפּ, כּסשדת ×נד רשדת." - -#: grub-core/commands/acpi.c:54 -msgid "Set creator field of RSDP, XSDT and RSDT." -msgstr "שעת צרע×תוֹר פִֿיעלד וֹפֿ רשדפּ, כּסשדת ×נד רשדת." - -#: grub-core/commands/acpi.c:56 -msgid "Set creator revision of RSDP, XSDT and RSDT." -msgstr "שעת צרע×תוֹר רעבִֿישִיוֹנ וֹפֿ רשדפּ, כּסשדת ×נד רשדת." - -#. TRANSLATORS: "hangs" here is a noun, not a verb. -#: grub-core/commands/acpi.c:58 -msgid "" -"Don't update EBDA. May fix failures or hangs on some BIOSes but makes it " -"ineffective with OS not receiving RSDP from GRUB." -msgstr "" -"דוֹנ'ת וּפּד×תע עבּד×. מ××™Ö´ פִֿיכּס פֿ×ִילוּרעש וֹר ×”×נגש וֹנ שוֹמע בִּיוֹשעש בּוּת מ×כּעש ִית Ö´" -"ינעפֿפֿעצתִיבֿע וִיתה וֹש נוֹת רעצעִיבִֿינג רשדפּ פֿרוֹמ גרוּבּ." - -#: grub-core/commands/acpi.c:650 grub-core/commands/acpi.c:667 -#: grub-core/commands/i386/pc/play.c:105 grub-core/commands/keylayouts.c:230 -#: grub-core/commands/keylayouts.c:245 grub-core/commands/keylayouts.c:263 -#: grub-core/commands/verifiers.c:156 grub-core/efiemu/loadcore.c:350 -#: grub-core/kern/elf.c:117 grub-core/kern/elfXX.c:29 -#: grub-core/kern/elfXX.c:156 grub-core/loader/arm/linux.c:319 -#: grub-core/loader/arm64/linux.c:330 grub-core/loader/arm64/xen_boot.c:356 -#: grub-core/loader/efi/chainloader.c:276 -#: grub-core/loader/efi/chainloader.c:297 -#: grub-core/loader/efi/chainloader.c:329 grub-core/loader/efi/fdt.c:138 -#: grub-core/loader/i386/bsd.c:1276 grub-core/loader/i386/bsd.c:2116 -#: grub-core/loader/i386/bsdXX.c:20 grub-core/loader/i386/bsdXX.c:36 -#: grub-core/loader/i386/bsdXX.c:63 grub-core/loader/i386/bsdXX.c:357 -#: grub-core/loader/i386/bsdXX.c:376 grub-core/loader/i386/bsdXX.c:519 -#: grub-core/loader/i386/bsdXX.c:535 grub-core/loader/i386/bsdXX.c:615 -#: grub-core/loader/i386/bsdXX.c:638 -#: grub-core/loader/i386/coreboot/chainloader.c:112 -#: grub-core/loader/i386/coreboot/chainloader.c:148 -#: grub-core/loader/i386/coreboot/chainloader.c:170 -#: grub-core/loader/i386/linux.c:667 grub-core/loader/i386/linux.c:788 -#: grub-core/loader/i386/linux.c:1005 grub-core/loader/i386/multiboot_mbi.c:171 -#: grub-core/loader/i386/pc/chainloader.c:202 -#: grub-core/loader/i386/pc/linux.c:149 grub-core/loader/i386/pc/linux.c:320 -#: grub-core/loader/i386/pc/linux.c:362 grub-core/loader/i386/pc/plan9.c:457 -#: grub-core/loader/i386/pc/plan9.c:550 grub-core/loader/i386/pc/plan9.c:566 -#: grub-core/loader/i386/xen.c:934 grub-core/loader/i386/xen_file.c:72 -#: grub-core/loader/i386/xen_fileXX.c:43 grub-core/loader/i386/xen_fileXX.c:186 -#: grub-core/loader/i386/xen_fileXX.c:339 grub-core/loader/ia64/efi/linux.c:423 -#: grub-core/loader/ia64/efi/linux.c:471 grub-core/loader/linux.c:286 -#: grub-core/loader/macho.c:84 grub-core/loader/macho.c:109 -#: grub-core/loader/machoXX.c:33 grub-core/loader/machoXX.c:46 -#: grub-core/loader/machoXX.c:76 grub-core/loader/machoXX.c:116 -#: grub-core/loader/machoXX.c:131 grub-core/loader/machoXX.c:147 -#: grub-core/loader/machoXX.c:196 grub-core/loader/machoXX.c:317 -#: grub-core/loader/multiboot.c:434 grub-core/loader/multiboot_elfxx.c:171 -#: grub-core/loader/multiboot_elfxx.c:234 -#: grub-core/loader/multiboot_elfxx.c:278 grub-core/loader/multiboot_mbi2.c:129 -#: grub-core/loader/xnu.c:737 grub-core/loader/xnu.c:795 -#: grub-core/loader/xnu.c:816 grub-core/loader/xnu.c:871 -#: grub-core/loader/xnu.c:914 grub-core/loader/xnu.c:952 -#: grub-core/loader/xnu_resume.c:68 grub-core/loader/xnu_resume.c:153 -#: grub-core/loader/xnu_resume.c:165 util/grub-mkimagexx.c:2288 -#, c-format -msgid "premature end of file %s" -msgstr "פּרעמ×תוּרע ענד וֹפֿ פִֿילע %s" - -#: grub-core/commands/acpi.c:779 -msgid "" -"[-1|-2] [--exclude=TABLE1,TABLE2|--load-only=TABLE1,TABLE2] FILE1 [FILE2] " -"[...]" -msgstr "" -"[-1|-2] [--עכּסצלוּדע=ת×בּלע1,ת×בּלע2|--לוֹ×ד-וֹנליִ=ת×בּלע1,ת×בּלע2] פִֿילע1 [פִֿילע2] " -"[...]" - -#: grub-core/commands/acpi.c:782 -msgid "Load host ACPI tables and tables specified by arguments." -msgstr "לוֹ×ד הוֹשת ×צפִּי ת×בּלעש ×נד ת×בּלעש שפּעצִיפִֿיעד בּיִ ×רגוּמענתש." - -#: grub-core/commands/acpihalt.c:368 grub-core/kern/err.c:110 -#, c-format -msgid "error: %s.\n" -msgstr "עררוֹר: %s.\n" - -#: grub-core/commands/acpihalt.c:368 grub-core/kern/emu/misc.c:95 -#: grub-core/kern/emu/misc.c:105 grub-core/kern/emu/misc.c:134 -#: grub-core/kern/emu/mm.c:34 grub-core/kern/emu/mm.c:62 -#: grub-core/kern/mm.c:374 grub-core/lib/relocator.c:1282 -#: grub-core/lib/relocator.c:1439 grub-core/lib/relocator.c:1538 -#: grub-core/loader/arm/linux.c:259 grub-core/loader/arm64/linux.c:265 -#: grub-core/loader/arm64/linux.c:321 grub-core/loader/arm64/linux.c:340 -#: grub-core/loader/arm64/xen_boot.c:344 grub-core/loader/arm64/xen_boot.c:367 -#: grub-core/loader/efi/chainloader.c:289 grub-core/osdep/unix/dl.c:48 -#: grub-core/osdep/windows/dl.c:46 grub-core/script/lexer.c:156 -#: grub-core/script/lexer.c:182 -msgid "out of memory" -msgstr "וֹוּת וֹפֿ מעמוֹריִ" - -#: grub-core/commands/acpihalt.c:374 grub-core/disk/cryptodisk.c:587 -#: grub-core/disk/cryptodisk.c:632 grub-core/kern/emu/hostdisk.c:307 -#: grub-core/kern/emu/hostfs.c:149 grub-core/kern/emu/misc.c:200 -#: grub-core/osdep/linux/ofpath.c:195 grub-core/osdep/linux/ofpath.c:521 -#: grub-core/osdep/linux/ofpath.c:534 util/glue-efi.c:80 util/glue-efi.c:94 -#: util/grub-editenv.c:155 util/grub-fstest.c:577 -#: util/grub-install-common.c:943 util/grub-mkrescue.c:634 -#: util/grub-mkrescue.c:888 util/grub-mount.c:506 util/grub-render-label.c:176 -#: util/misc.c:95 util/setup.c:814 util/setup.c:833 -#, c-format -msgid "cannot read `%s': %s" -msgstr "צ×ננוֹת רע×ד `%s': %s" - -#. TRANSLATORS: It's computer shutdown using ACPI, not disabling ACPI. -#: grub-core/commands/acpihalt.c:452 -msgid "ACPI shutdown failed" -msgstr "×צפִּי שהוּתדוֹונ פֿ×ִילעד" - -#: grub-core/commands/arc/lsdev.c:51 -msgid "List devices." -msgstr "לִישת דעבִֿיצעש." - -#: grub-core/commands/blocklist.c:122 grub-core/commands/cat.c:57 -#: grub-core/commands/configfile.c:35 grub-core/commands/efi/loadbios.c:168 -#: grub-core/commands/file.c:159 grub-core/commands/hexdump.c:47 -#: grub-core/commands/legacycfg.c:209 grub-core/commands/legacycfg.c:315 -#: grub-core/commands/minicmd.c:44 grub-core/commands/syslinuxcfg.c:146 -#: grub-core/commands/testload.c:58 grub-core/commands/testspeed.c:52 -#: grub-core/disk/loopback.c:93 grub-core/efiemu/main.c:293 -#: grub-core/font/font_cmd.c:32 grub-core/kern/emu/hostdisk.c:519 -#: grub-core/loader/arm/linux.c:364 grub-core/loader/arm/linux.c:409 -#: grub-core/loader/arm/linux.c:472 grub-core/loader/arm64/linux.c:243 -#: grub-core/loader/arm64/linux.c:297 grub-core/loader/arm64/xen_boot.c:398 -#: grub-core/loader/arm64/xen_boot.c:411 grub-core/loader/arm64/xen_boot.c:462 -#: grub-core/loader/efi/chainloader.c:216 grub-core/loader/i386/bsd.c:1462 -#: grub-core/loader/i386/bsd.c:1807 grub-core/loader/i386/bsd.c:2085 -#: grub-core/loader/i386/coreboot/chainloader.c:438 -#: grub-core/loader/i386/linux.c:656 grub-core/loader/i386/linux.c:1041 -#: grub-core/loader/i386/pc/chainloader.c:290 -#: grub-core/loader/i386/pc/freedos.c:105 grub-core/loader/i386/pc/linux.c:138 -#: grub-core/loader/i386/pc/linux.c:400 grub-core/loader/i386/pc/ntldr.c:85 -#: grub-core/loader/i386/pc/plan9.c:409 -#: grub-core/loader/i386/pc/pxechainloader.c:94 -#: grub-core/loader/i386/pc/truecrypt.c:96 grub-core/loader/i386/xen.c:641 -#: grub-core/loader/i386/xen.c:768 grub-core/loader/i386/xen.c:844 -#: grub-core/loader/i386/xen.c:854 grub-core/loader/i386/xnu.c:488 -#: grub-core/loader/ia64/efi/linux.c:459 grub-core/loader/ia64/efi/linux.c:539 -#: grub-core/loader/mips/linux.c:238 grub-core/loader/mips/linux.c:429 -#: grub-core/loader/multiboot.c:322 grub-core/loader/multiboot.c:374 -#: grub-core/loader/multiboot.c:384 -#: grub-core/loader/powerpc/ieee1275/linux.c:269 -#: grub-core/loader/powerpc/ieee1275/linux.c:341 -#: grub-core/loader/sparc64/ieee1275/linux.c:305 -#: grub-core/loader/sparc64/ieee1275/linux.c:381 grub-core/loader/xnu.c:351 -#: grub-core/loader/xnu.c:460 grub-core/loader/xnu.c:778 -#: grub-core/loader/xnu.c:892 grub-core/loader/xnu.c:1277 -#: grub-core/loader/xnu.c:1427 grub-core/loader/xnu.c:1453 -#: grub-core/video/readers/jpeg.c:812 grub-core/video/readers/png.c:1123 -msgid "filename expected" -msgstr "פִֿילענ×מע עכּספּעצתעד" - -#. TRANSLATORS: "embed" is a verb (command description). " -#: grub-core/commands/blocklist.c:154 grub-core/commands/cat.c:163 -#: grub-core/commands/configfile.c:65 grub-core/commands/configfile.c:68 -#: grub-core/commands/configfile.c:74 grub-core/commands/configfile.c:80 -#: grub-core/commands/configfile.c:86 grub-core/commands/hashsum.c:34 -#: grub-core/commands/legacycfg.c:834 grub-core/commands/legacycfg.c:841 -#: grub-core/commands/legacycfg.c:846 grub-core/commands/legacycfg.c:851 -#: grub-core/commands/macbless.c:222 grub-core/commands/minicmd.c:198 -#: grub-core/commands/syslinuxcfg.c:186 grub-core/commands/syslinuxcfg.c:194 -#: grub-core/commands/syslinuxcfg.c:200 grub-core/commands/syslinuxcfg.c:206 -#: grub-core/commands/testload.c:163 grub-core/efiemu/main.c:312 -#: grub-core/kern/emu/main.c:100 grub-core/kern/emu/main.c:103 -#: grub-core/loader/i386/bsd.c:2137 grub-core/loader/i386/bsd.c:2140 -#: grub-core/loader/i386/bsd.c:2143 -#: grub-core/loader/i386/coreboot/chainloader.c:505 -#: grub-core/loader/ia64/efi/linux.c:594 include/grub/util/install.h:32 -#: include/grub/util/install.h:64 util/grub-glue-efi.c:52 -#: util/grub-glue-efi.c:54 util/grub-glue-efi.c:56 util/grub-install.c:254 -#: util/grub-install.c:301 util/grub-mkfont.c:936 util/grub-mkimage.c:68 -#: util/grub-mkimage.c:74 util/grub-mkimage.c:76 util/grub-mkimage.c:78 -#: util/grub-mkimage.c:81 util/grub-mklayout.c:52 util/grub-mklayout.c:54 -#: util/grub-mkrescue.c:97 util/grub-mkrescue.c:101 util/grub-mkrescue.c:104 -#: util/grub-mkrescue.c:105 util/grub-mkrescue.c:106 -#: util/grub-mkstandalone.c:47 util/grub-mkstandalone.c:49 -#: util/grub-probe.c:732 util/grub-render-label.c:59 -#: util/grub-render-label.c:70 util/grub-render-label.c:72 util/grub-setup.c:78 -#: util/grub-setup.c:80 util/grub-setup.c:84 util/grub-syslinux2cfg.c:74 -#: util/grub-syslinux2cfg.c:147 -msgid "FILE" -msgstr "פִֿילע" - -#: grub-core/commands/blocklist.c:154 -msgid "Print a block list." -msgstr "פּרִינת × ×‘Ö¼×œ×•Ö¹×¦×›Ö¼ לִישת." - -#: grub-core/commands/boot.c:147 grub-core/commands/legacycfg.c:533 -#: grub-core/commands/legacycfg.c:574 grub-core/loader/arm64/linux.c:250 -#: grub-core/loader/i386/bsd.c:1799 grub-core/loader/i386/bsd.c:1900 -#: grub-core/loader/i386/bsd.c:2007 grub-core/loader/i386/bsd.c:2040 -#: grub-core/loader/i386/bsd.c:2089 grub-core/loader/i386/linux.c:1047 -#: grub-core/loader/i386/pc/linux.c:406 grub-core/loader/i386/xen.c:775 -#: grub-core/loader/i386/xen.c:859 grub-core/loader/ia64/efi/linux.c:545 -#: grub-core/loader/mips/linux.c:432 grub-core/loader/multiboot.c:388 -#: grub-core/loader/powerpc/ieee1275/linux.c:347 -#: grub-core/loader/sparc64/ieee1275/linux.c:387 grub-core/loader/xnu.c:572 -#: grub-core/loader/xnu.c:665 grub-core/loader/xnu.c:781 -#: grub-core/loader/xnu.c:895 grub-core/loader/xnu.c:1091 -#: grub-core/loader/xnu.c:1258 grub-core/loader/xnu.c:1289 -#: grub-core/loader/xnu.c:1430 -msgid "you need to load the kernel first" -msgstr "יִוֹוּ נעעד תוֹ לוֹ×ד תהע כּערנעל פִֿירשת" - -#: grub-core/commands/boot.c:189 -msgid "Boot an operating system." -msgstr "בּוֹוֹת ××  וֹפּער×תִינג שיִשתעמ." - -#: grub-core/commands/boottime.c:36 -#: grub-core/commands/i386/coreboot/cb_timestamps.c:108 -msgid "No boot time statistics is available\n" -msgstr "נוֹ בּוֹוֹת תִימע שת×תִישתִיצש ִיש ×בֿ×ִיל×בּלע\n" - -#: grub-core/commands/boottime.c:59 -msgid "Show boot time statistics." -msgstr "שהוֹו בּוֹוֹת תִימע שת×תִישתִיצש." - -#: grub-core/commands/cacheinfo.c:40 -#, c-format -msgid "Disk cache statistics: hits = %lu (%lu.%02lu%%), misses = %lu\n" -msgstr "דִישכּ צ×צהע שת×תִישתִיצש: הִיתש = %lu (%lu.%02lu%%), מִיששעש = %lu\n" - -#: grub-core/commands/cacheinfo.c:45 -msgid "No disk cache statistics available\n" -msgstr "נוֹ דִישכּ צ×צהע שת×תִישתִיצש ×בֿ×ִיל×בּלע\n" - -#: grub-core/commands/cacheinfo.c:56 -msgid "Get disk cache info." -msgstr "געת דִישכּ צ×צהע ִינפֿוֹ." - -#: grub-core/commands/cat.c:33 -msgid "Accept DOS-style CR/NL line endings." -msgstr "×צצעפּת דוֹש-שתיִלע צר/נל לִינע ענדִינגש." - -#: grub-core/commands/cat.c:163 grub-core/commands/minicmd.c:198 -msgid "Show the contents of a file." -msgstr "שהוֹו תהע צוֹנתענתש וֹפֿ × ×¤Ö¿Ö´×™×œ×¢." - -#: grub-core/commands/cmp.c:43 grub-core/commands/i386/pc/drivemap.c:239 -#: grub-core/commands/i386/wrmsr.c:60 grub-core/commands/iorw.c:85 -#: grub-core/commands/memrw.c:84 grub-core/commands/password.c:75 -#: grub-core/commands/password_pbkdf2.c:94 grub-core/commands/pgp.c:826 -#: grub-core/commands/regexp.c:113 grub-core/mmap/mmap.c:517 -#: grub-core/net/dns.c:639 -msgid "two arguments expected" -msgstr "תווֹ ×רגוּמענתש עכּספּעצתעד" - -#: grub-core/commands/cmp.c:45 -#, c-format -msgid "Compare file `%s' with `%s':\n" -msgstr "צוֹמפּ×רע פִֿילע `%s' וִיתה `%s':\n" - -#: grub-core/commands/cmp.c:54 -#, c-format -msgid "Files differ in size: %llu [%s], %llu [%s]\n" -msgstr "פִֿילעש דִיפֿפֿער Ö´×™×  שִיזע: %llu [%s], %llu [%s]\n" - -#: grub-core/commands/cmp.c:81 -#, c-format -msgid "Files differ at the offset %llu: 0x%x [%s], 0x%x [%s]\n" -msgstr "פִֿילעש דִיפֿפֿער ×ת תהע וֹפֿפֿשעת %llu: 0כּס%x [%s], 0כּס%x [%s]\n" - -#. TRANSLATORS: it's always exactly 2 files. -#: grub-core/commands/cmp.c:93 -msgid "The files are identical.\n" -msgstr "תהע פִֿילעש ×רע ִידענתִיצ×ל.\n" - -#: grub-core/commands/cmp.c:113 -msgid "FILE1 FILE2" -msgstr "פִֿילע1 פִֿילע2" - -#: grub-core/commands/cmp.c:113 -msgid "Compare two files." -msgstr "צוֹמפּ×רע תווֹ פִֿילעש." - -#: grub-core/commands/configfile.c:65 -msgid "Load another config file." -msgstr "לוֹ×ד ×נוֹתהער צוֹנפִֿיג פִֿילע." - -#: grub-core/commands/configfile.c:69 grub-core/commands/configfile.c:87 -msgid "Load another config file without changing context." -msgstr "לוֹ×ד ×נוֹתהער צוֹנפִֿיג פִֿילע וִיתהוֹוּת צה×× ×’Ö´×™× ×’ צוֹנתעכּסת." - -#: grub-core/commands/configfile.c:75 -msgid "" -"Load another config file without changing context but take only menu entries." -msgstr "" -"לוֹ×ד ×נוֹתהער צוֹנפִֿיג פִֿילע וִיתהוֹוּת צה×× ×’Ö´×™× ×’ צוֹנתעכּסת בּוּת ת××›Ö¼×¢ וֹנליִ מענוּ " -"ענתרִיעש." - -#: grub-core/commands/configfile.c:81 -msgid "Load another config file but take only menu entries." -msgstr "לוֹ×ד ×נוֹתהער צוֹנפִֿיג פִֿילע בּוּת ת××›Ö¼×¢ וֹנליִ מענוּ ענתרִיעש." - -#: grub-core/commands/date.c:141 -msgid "[[year-]month-day] [hour:minute[:second]]" -msgstr "[[×™Ö´×¢×ר-]מוֹנתה-ד××™Ö´] [הוֹוּר:מִינוּתע[:שעצוֹנד]]" - -#: grub-core/commands/date.c:142 -msgid "Display/set current datetime." -msgstr "דִישפּל××™Ö´/שעת צוּררענת ד×תעתִימע." - -#: grub-core/commands/echo.c:30 -msgid "Do not output the trailing newline." -msgstr "דוֹ נוֹת וֹוּתפּוּת תהע תר×ִילִינג נעולִינע." - -#: grub-core/commands/echo.c:31 -msgid "Enable interpretation of backslash escapes." -msgstr "×¢× ×בּלע ִינתערפּרעת×תִיוֹנ וֹפֿ בּ×צכּשל×שה עשצ×פּעש." - -#: grub-core/commands/echo.c:134 -msgid "[-e|-n] STRING" -msgstr "[-×¢|-× ] שתרִינג" - -#: grub-core/commands/echo.c:134 -msgid "Display a line of text." -msgstr "דִישפּל××™Ö´ × ×œÖ´×™× ×¢ וֹפֿ תעכּסת." - -#: grub-core/commands/efi/efifwsetup.c:82 -msgid "Reboot into firmware setup menu." -msgstr "רעבּוֹוֹת ִינתוֹ פִֿירמו×רע שעתוּפּ מענוּ." - -#: grub-core/commands/efi/fixvideo.c:107 -msgid "Fix video problem." -msgstr "פִֿיכּס בִֿידעוֹ פּרוֹבּלעמ." - -#: grub-core/commands/efi/loadbios.c:52 -msgid "ROM image is present." -msgstr "רוֹמ ִימ××’×¢ ִיש פּרעשענת." - -#: grub-core/commands/efi/loadbios.c:70 -msgid "Can't enable ROM area." -msgstr "צ×× 'ת ×¢× ×בּלע רוֹמ ×רע×." - -#: grub-core/commands/efi/loadbios.c:209 -msgid "" -"Create BIOS-like structures for backward compatibility with existing OS." -msgstr "" -"צרע×תע בִּיוֹש-לִיכּע שתרוּצתוּרעש פֿוֹר בּ×צכּו×רד צוֹמפּ×תִיבִּילִיתיִ וִיתה עכּסִישתִינג וֹש." - -#: grub-core/commands/efi/loadbios.c:214 -msgid "BIOS_DUMP [INT10_DUMP]" -msgstr "בִּיוֹש_דוּמפּ [ִינת10_דוּמפּ]" - -#: grub-core/commands/efi/loadbios.c:215 -msgid "Load BIOS dump." -msgstr "לוֹ×ד בִּיוֹש דוּמפּ." - -#: grub-core/commands/efi/shim_lock.c:76 -#, c-format -msgid "module cannot be loaded in UEFI secure boot mode: %s" -msgstr "מוֹדוּלע צ×ננוֹת בּע לוֹ×דעד Ö´×™×  וּעפִֿי שעצוּרע בּוֹוֹת מוֹדע: %s" - -#: grub-core/commands/efi/shim_lock.c:98 -#, c-format -msgid "cannot boot due to dangerous module in memory: %s" -msgstr "צ×ננוֹת בּוֹוֹת דוּע תוֹ ד×נגערוֹוּש מוֹדוּלע Ö´×™×  מעמוֹריִ: %s" - -#: grub-core/commands/efi/shim_lock.c:116 -msgid "bad shim signature" -msgstr "בּ×ד שהִימ שִיגנ×תוּרע" - -#: grub-core/commands/efi/tpm.c:149 grub-core/commands/efi/tpm.c:189 -#: grub-core/commands/efi/tpm.c:256 grub-core/commands/efi/tpm.c:306 -msgid "Command failed" -msgstr "צוֹממ×נד פֿ×ִילעד" - -#: grub-core/commands/efi/tpm.c:151 grub-core/commands/efi/tpm.c:191 -#: grub-core/commands/efi/tpm.c:258 grub-core/commands/efi/tpm.c:308 -msgid "Invalid parameter" -msgstr "ִינבֿ×לִיד פּ×ר×מעתער" - -#: grub-core/commands/efi/tpm.c:154 grub-core/commands/efi/tpm.c:194 -#: grub-core/commands/efi/tpm.c:261 grub-core/commands/efi/tpm.c:311 -msgid "Output buffer too small" -msgstr "וֹוּתפּוּת בּוּפֿפֿער תוֹוֹ שמ×לל" - -#: grub-core/commands/efi/tpm.c:156 grub-core/commands/efi/tpm.c:196 -#: grub-core/commands/efi/tpm.c:263 grub-core/commands/efi/tpm.c:313 -msgid "TPM unavailable" -msgstr "תפּמ וּנ×בֿ×ִיל×בּלע" - -#: grub-core/commands/efi/tpm.c:158 grub-core/commands/efi/tpm.c:198 -#: grub-core/commands/efi/tpm.c:265 grub-core/commands/efi/tpm.c:315 -msgid "Unknown TPM error" -msgstr "וּנכּנוֹונ תפּמ עררוֹר" - -#: grub-core/commands/efi/tpm.c:240 grub-core/commands/efi/tpm.c:288 -msgid "cannot allocate TPM event buffer" -msgstr "צ×ננוֹת ×ללוֹצ×תע תפּמ עבֿענת בּוּפֿפֿער" - -#: grub-core/commands/eval.c:63 -msgid "STRING ..." -msgstr "שתרִינג ..." - -#: grub-core/commands/eval.c:64 -msgid "Evaluate arguments as GRUB commands" -msgstr "עבֿ×לוּ×תע ×רגוּמענתש ×ש גרוּבּ צוֹממ×נדש" - -#: grub-core/commands/file.c:41 -msgid "Check if FILE can be booted as i386 PAE Xen unprivileged guest kernel" -msgstr "צהעצכּ ִיפֿ פִֿילע צ××  בּע בּוֹוֹתעד ×ש Ö´×™386 פּ××¢ כּסענ וּנפּרִיבִֿילעגעד גוּעשת כּערנעל" - -#: grub-core/commands/file.c:44 -msgid "Check if FILE can be booted as x86_64 Xen unprivileged guest kernel" -msgstr "צהעצכּ ִיפֿ פִֿילע צ××  בּע בּוֹוֹתעד ×ש כּס86_64 כּסענ וּנפּרִיבִֿילעגעד גוּעשת כּערנעל" - -#: grub-core/commands/file.c:46 -msgid "Check if FILE can be used as Xen x86 privileged guest kernel" -msgstr "צהעצכּ ִיפֿ פִֿילע צ××  בּע וּשעד ×ש כּסענ כּס86 פּרִיבִֿילעגעד גוּעשת כּערנעל" - -#: grub-core/commands/file.c:48 -msgid "Check if FILE can be used as x86 multiboot kernel" -msgstr "צהעצכּ ִיפֿ פִֿילע צ××  בּע וּשעד ×ש כּס86 מוּלתִיבּוֹוֹת כּערנעל" - -#: grub-core/commands/file.c:50 -msgid "Check if FILE can be used as x86 multiboot2 kernel" -msgstr "צהעצכּ ִיפֿ פִֿילע צ××  בּע וּשעד ×ש כּס86 מוּלתִיבּוֹוֹת2 כּערנעל" - -#: grub-core/commands/file.c:52 -msgid "Check if FILE is ARM Linux" -msgstr "צהעצכּ ִיפֿ פִֿילע ִיש ×רמ לִינוּכּס" - -#: grub-core/commands/file.c:54 -msgid "Check if FILE is ARM64 Linux" -msgstr "צהעצכּ ִיפֿ פִֿילע ִיש ×רמ64 לִינוּכּס" - -#: grub-core/commands/file.c:56 -msgid "Check if FILE is IA64 Linux" -msgstr "צהעצכּ ִיפֿ פִֿילע ִיש Ö´×™×64 לִינוּכּס" - -#: grub-core/commands/file.c:58 -msgid "Check if FILE is MIPS Linux" -msgstr "צהעצכּ ִיפֿ פִֿילע ִיש מִיפּש לִינוּכּס" - -#: grub-core/commands/file.c:60 -msgid "Check if FILE is MIPSEL Linux" -msgstr "צהעצכּ ִיפֿ פִֿילע ִיש מִיפּשעל לִינוּכּס" - -#: grub-core/commands/file.c:62 -msgid "Check if FILE is SPARC64 Linux" -msgstr "צהעצכּ ִיפֿ פִֿילע ִיש שפּ×רצ64 לִינוּכּס" - -#: grub-core/commands/file.c:64 -msgid "Check if FILE is POWERPC Linux" -msgstr "צהעצכּ ִיפֿ פִֿילע ִיש פּוֹוערפּצ לִינוּכּס" - -#: grub-core/commands/file.c:66 -msgid "Check if FILE is x86 Linux" -msgstr "צהעצכּ ִיפֿ פִֿילע ִיש כּס86 לִינוּכּס" - -#: grub-core/commands/file.c:68 -msgid "Check if FILE is x86 Linux supporting 32-bit protocol" -msgstr "צהעצכּ ִיפֿ פִֿילע ִיש כּס86 לִינוּכּס שוּפּפּוֹרתִינג 32-בִּית פּרוֹתוֹצוֹל" - -#: grub-core/commands/file.c:70 -msgid "Check if FILE is x86 kFreeBSD" -msgstr "צהעצכּ ִיפֿ פִֿילע ִיש כּס86 כּפֿרעעבּשד" - -#: grub-core/commands/file.c:72 -msgid "Check if FILE is i386 kFreeBSD" -msgstr "צהעצכּ ִיפֿ פִֿילע ִיש Ö´×™386 כּפֿרעעבּשד" - -#: grub-core/commands/file.c:74 -msgid "Check if FILE is x86_64 kFreeBSD" -msgstr "צהעצכּ ִיפֿ פִֿילע ִיש כּס86_64 כּפֿרעעבּשד" - -#: grub-core/commands/file.c:77 -msgid "Check if FILE is x86 kNetBSD" -msgstr "צהעצכּ ִיפֿ פִֿילע ִיש כּס86 כּנעתבּשד" - -#: grub-core/commands/file.c:79 -msgid "Check if FILE is i386 kNetBSD" -msgstr "צהעצכּ ִיפֿ פִֿילע ִיש Ö´×™386 כּנעתבּשד" - -#: grub-core/commands/file.c:81 -msgid "Check if FILE is x86_64 kNetBSD" -msgstr "צהעצכּ ִיפֿ פִֿילע ִיש כּס86_64 כּנעתבּשד" - -#: grub-core/commands/file.c:84 -msgid "Check if FILE is i386 EFI file" -msgstr "צהעצכּ ִיפֿ פִֿילע ִיש Ö´×™386 עפִֿי פִֿילע" - -#: grub-core/commands/file.c:86 -msgid "Check if FILE is x86_64 EFI file" -msgstr "צהעצכּ ִיפֿ פִֿילע ִיש כּס86_64 עפִֿי פִֿילע" - -#: grub-core/commands/file.c:88 -msgid "Check if FILE is IA64 EFI file" -msgstr "צהעצכּ ִיפֿ פִֿילע ִיש Ö´×™×64 עפִֿי פִֿילע" - -#: grub-core/commands/file.c:90 -msgid "Check if FILE is ARM64 EFI file" -msgstr "צהעצכּ ִיפֿ פִֿילע ִיש ×רמ64 עפִֿי פִֿילע" - -#: grub-core/commands/file.c:92 -msgid "Check if FILE is ARM EFI file" -msgstr "צהעצכּ ִיפֿ פִֿילע ִיש ×רמ עפִֿי פִֿילע" - -#: grub-core/commands/file.c:94 -msgid "Check if FILE is RISC-V 32bit EFI file" -msgstr "צהעצכּ ִיפֿ פִֿילע ִיש רִישצ-בֿ 32בִּית עפִֿי פִֿילע" - -#: grub-core/commands/file.c:96 -msgid "Check if FILE is RISC-V 64bit EFI file" -msgstr "צהעצכּ ִיפֿ פִֿילע ִיש רִישצ-בֿ 64בִּית עפִֿי פִֿילע" - -#: grub-core/commands/file.c:98 -msgid "Check if FILE is hiberfil.sys in hibernated state" -msgstr "צהעצכּ ִיפֿ פִֿילע ִיש הִיבּערפִֿיל.שיִש Ö´×™×  הִיבּערנ×תעד שת×תע" - -#: grub-core/commands/file.c:100 -msgid "Check if FILE is x86_64 XNU (Mac OS X kernel)" -msgstr "צהעצכּ ִיפֿ פִֿילע ִיש כּס86_64 כּסנוּ (מ×צ וֹש כּס כּערנעל)" - -#: grub-core/commands/file.c:102 -msgid "Check if FILE is i386 XNU (Mac OS X kernel)" -msgstr "צהעצכּ ִיפֿ פִֿילע ִיש Ö´×™386 כּסנוּ (מ×צ וֹש כּס כּערנעל)" - -#: grub-core/commands/file.c:104 -msgid "Check if FILE is XNU (Mac OS X kernel) hibernated image" -msgstr "צהעצכּ ִיפֿ פִֿילע ִיש כּסנוּ (מ×צ וֹש כּס כּערנעל) הִיבּערנ×תעד ִימ××’×¢" - -#: grub-core/commands/file.c:106 -msgid "Check if FILE is BIOS bootsector" -msgstr "צהעצכּ ִיפֿ פִֿילע ִיש בִּיוֹש בּוֹוֹתשעצתוֹר" - -#. TRANSLATORS: it's a standalone boolean value, -#. opposite of "true". -#: grub-core/commands/file.c:675 grub-core/commands/i386/cmostest.c:63 -#: grub-core/commands/i386/cpuid.c:71 grub-core/commands/keystatus.c:83 -#: grub-core/commands/keystatus.c:87 grub-core/commands/keystatus.c:96 -#: grub-core/commands/test.c:436 grub-core/commands/true.c:39 -#: grub-core/script/execute.c:247 grub-core/script/execute.c:1039 -msgid "false" -msgstr "פֿ×לשע" - -#: grub-core/commands/file.c:684 -msgid "OPTIONS FILE" -msgstr "וֹפּתִיוֹנש פִֿילע" - -#: grub-core/commands/file.c:685 -msgid "Check if FILE is of specified type." -msgstr "צהעצכּ ִיפֿ פִֿילע ִיש וֹפֿ שפּעצִיפִֿיעד תיִפּע." - -#. TRANSLATORS: It means that the specified partition e.g. -#. hd0,msdos1=/dev/sda1 doesn't exist. -#: grub-core/commands/gptsync.c:140 grub-core/kern/disk.c:258 -msgid "no such partition" -msgstr "נוֹ שוּצה פּ×רתִיתִיוֹנ" - -#: grub-core/commands/gptsync.c:240 -#, c-format -msgid "New MBR is written to `%s'\n" -msgstr "נעו מבּר ִיש ורִיתתענ תוֹ `%s'\n" - -#: grub-core/commands/gptsync.c:252 -msgid "DEVICE [PARTITION[+/-[TYPE]]] ..." -msgstr "דעבִֿיצע [פּ×רתִיתִיוֹנ[+/-[תיִפּע]]] ..." - -#. TRANSLATORS: MBR type is one-byte partition -#. type id. -#: grub-core/commands/gptsync.c:255 -msgid "" -"Fill hybrid MBR of GPT drive DEVICE. Specified partitions will be a part of " -"hybrid MBR. Up to 3 partitions are allowed. TYPE is an MBR type. + means " -"that partition is active. Only one partition can be active." -msgstr "" -"פִֿילל היִבּרִיד מבּר וֹפֿ גפּת דרִיבֿע דעבִֿיצע. שפּעצִיפִֿיעד פּ×רתִיתִיוֹנש וִילל בּע × ×¤Ö¼×רת וֹפֿ " -"היִבּרִיד מבּר. וּפּ תוֹ 3 פּ×רתִיתִיוֹנש ×רע ×ללוֹועד. תיִפּע ִיש ××  מבּר תיִפּע. + מע×נש " -"תה×ת פּ×רתִיתִיוֹנ ִיש ×צתִיבֿע. וֹנליִ וֹנע פּ×רתִיתִיוֹנ צ××  בּע ×צתִיבֿע." - -#: grub-core/commands/halt.c:40 -msgid "" -"Halts the computer. This command does not work on all firmware " -"implementations." -msgstr "" -"×”×לתש תהע צוֹמפּוּתער. תהִיש צוֹממ×נד דוֹעש נוֹת ווֹרכּ וֹנ ×לל פִֿירמו×רע Ö´" -"ימפּלעמענת×תִיוֹנש." - -#: grub-core/commands/hashsum.c:32 -msgid "Specify hash to use." -msgstr "שפּעצִיפֿיִ ×”×שה תוֹ וּשע." - -#: grub-core/commands/hashsum.c:32 -msgid "HASH" -msgstr "×”×שה" - -#: grub-core/commands/hashsum.c:33 -msgid "Check hashes of files with hash list FILE." -msgstr "צהעצכּ ×”×שהעש וֹפֿ פִֿילעש וִיתה ×”×שה לִישת פִֿילע." - -#: grub-core/commands/hashsum.c:35 -msgid "Base directory for hash list." -msgstr "בּ×שע דִירעצתוֹריִ פֿוֹר ×”×שה לִישת." - -#. TRANSLATORS: platform here isn't identifier. It can be translated. -#: grub-core/commands/hashsum.c:35 grub-core/commands/ls.c:150 -#: grub-core/commands/macbless.c:226 grub-core/commands/syslinuxcfg.c:51 -#: grub-core/commands/syslinuxcfg.c:54 grub-core/kern/emu/main.c:106 -#: include/grub/util/install.h:50 include/grub/util/install.h:53 -#: include/grub/util/install.h:56 include/grub/util/install.h:59 -#: util/grub-install.c:250 util/grub-install.c:252 util/grub-install.c:297 -#: util/grub-install.c:299 util/grub-mkimage.c:64 util/grub-mkimage.c:67 -#: util/grub-mknetdir.c:46 util/grub-mknetdir.c:48 util/grub-mkrescue.c:99 -#: util/grub-setup.c:82 util/grub-syslinux2cfg.c:63 util/grub-syslinux2cfg.c:65 -#: util/grub-syslinux2cfg.c:67 util/grub-syslinux2cfg.c:71 -msgid "DIR" -msgstr "דִיר" - -#: grub-core/commands/hashsum.c:37 -msgid "Don't stop after first error." -msgstr "דוֹנ'ת שתוֹפּ ×פֿתער פִֿירשת עררוֹר." - -#: grub-core/commands/hashsum.c:38 -msgid "Uncompress file before checksumming." -msgstr "וּנצוֹמפּרעשש פִֿילע בּעפֿוֹרע צהעצכּשוּממִינג." - -#: grub-core/commands/hashsum.c:163 -#, c-format -msgid "%s: READ ERROR\n" -msgstr "%s: רע×ד עררוֹר\n" - -#: grub-core/commands/hashsum.c:177 -#, c-format -msgid "%s: HASH MISMATCH\n" -msgstr "%s: ×”×שה מִישמ×תצה\n" - -#: grub-core/commands/hashsum.c:188 -#, c-format -msgid "%s: OK\n" -msgstr "%s: וֹכּ\n" - -#: grub-core/commands/hashsum.c:282 -msgid "-h HASH [-c FILE [-p PREFIX]] [FILE1 [FILE2 ...]]" -msgstr "-×” ×”×שה [-צ פִֿילע [-פּ פּרעפִֿיכּס]] [פִֿילע1 [פִֿילע2 ...]]" - -#. TRANSLATORS: "hash checksum" is just to -#. be a bit more precise, you can treat it as -#. just "hash". -#: grub-core/commands/hashsum.c:287 grub-core/commands/hashsum.c:292 -#: grub-core/commands/hashsum.c:297 grub-core/commands/hashsum.c:302 -#: grub-core/commands/hashsum.c:307 grub-core/commands/hashsum.c:313 -msgid "Compute or check hash checksum." -msgstr "צוֹמפּוּתע וֹר צהעצכּ ×”×שה צהעצכּשוּמ." - -#: grub-core/commands/hashsum.c:290 grub-core/commands/hashsum.c:295 -#: grub-core/commands/hashsum.c:300 grub-core/commands/hashsum.c:305 -#: grub-core/commands/hashsum.c:311 -msgid "[-c FILE [-p PREFIX]] [FILE1 [FILE2 ...]]" -msgstr "[-צ פִֿילע [-פּ פּרעפִֿיכּס]] [פִֿילע1 [פִֿילע2 ...]]" - -#: grub-core/commands/hdparm.c:33 -msgid "" -"Set Advanced Power Management\n" -"(1=low, ..., 254=high, 255=off)." -msgstr "" -"שעת ×דבֿ×נצעד פּוֹוער מ×× ×געמענת\n" -"(1=לוֹו, ..., 254=×”Ö´×™×’×”, 255=וֹפֿפֿ)." - -#: grub-core/commands/hdparm.c:36 -msgid "Display power mode." -msgstr "דִישפּל××™Ö´ פּוֹוער מוֹדע." - -#: grub-core/commands/hdparm.c:37 -msgid "Freeze ATA security settings until reset." -msgstr "פֿרעעזע ××ª× ×©×¢×¦×•Ö¼×¨Ö´×™×ª×™Ö´ שעתתִינגש וּנתִיל רעשעת." - -#: grub-core/commands/hdparm.c:39 -msgid "Display SMART health status." -msgstr "דִישפּל××™Ö´ שמ×רת ×”×¢×לתה שת×תוּש." - -#: grub-core/commands/hdparm.c:40 -msgid "" -"Set Automatic Acoustic Management\n" -"(0=off, 128=quiet, ..., 254=fast)." -msgstr "" -"שעת ×וּתוֹמ×תִיצ ×צוֹוּשתִיצ מ×× ×געמענת\n" -"(0=וֹפֿפֿ, 128=קוִּיעת, ..., 254=פֿ×שת)." - -#: grub-core/commands/hdparm.c:43 -msgid "" -"Set standby timeout\n" -"(0=off, 1=5s, 2=10s, ..., 240=20m, 241=30m, ...)." -msgstr "" -"שעת שת×נדבּיִ תִימעוֹוּת\n" -"(0=וֹפֿפֿ, 1=5ש, 2=10ש, ..., 240=20מ, 241=30מ, ...)." - -#: grub-core/commands/hdparm.c:46 -msgid "Set drive to standby mode." -msgstr "שעת דרִיבֿע תוֹ שת×נדבּיִ מוֹדע." - -#: grub-core/commands/hdparm.c:47 -msgid "Set drive to sleep mode." -msgstr "שעת דרִיבֿע תוֹ שלעעפּ מוֹדע." - -#: grub-core/commands/hdparm.c:48 -msgid "Print drive identity and settings." -msgstr "פּרִינת דרִיבֿע ִידענתִיתיִ ×נד שעתתִינגש." - -#: grub-core/commands/hdparm.c:50 -msgid "Show raw contents of ATA IDENTIFY sector." -msgstr "שהוֹו ר×ו צוֹנתענתש וֹפֿ ××ª× Ö´×™×“×¢× ×ªÖ´×™×¤Ö¿×™Ö´ שעצתוֹר." - -#: grub-core/commands/hdparm.c:52 -msgid "Disable/enable SMART (0/1)." -msgstr "דִיש×בּלע/×¢× ×בּלע שמ×רת (0/1)." - -#: grub-core/commands/hdparm.c:53 -msgid "Do not print messages." -msgstr "דוֹ נוֹת פּרִינת מעשש×געש." - -#: grub-core/commands/hdparm.c:286 grub-core/commands/i386/rdmsr.c:68 -#: grub-core/commands/iorw.c:47 grub-core/commands/legacycfg.c:760 -#: grub-core/commands/legacycfg.c:812 grub-core/commands/macbless.c:190 -#: grub-core/commands/memrw.c:47 grub-core/commands/pgp.c:738 -#: grub-core/commands/pgp.c:792 grub-core/commands/search.c:304 -#: grub-core/commands/search_wrap.c:179 grub-core/commands/setpci.c:243 -#: grub-core/commands/sleep.c:71 grub-core/fs/zfs/zfsinfo.c:279 -#: grub-core/fs/zfs/zfsinfo.c:358 grub-core/gettext/gettext.c:492 -#: grub-core/kern/corecmd.c:65 grub-core/kern/corecmd.c:79 -#: grub-core/mmap/mmap.c:430 grub-core/net/dns.c:713 grub-core/net/dns.c:745 -#: grub-core/net/net.c:694 grub-core/net/net.c:1052 -#: grub-core/normal/context.c:194 grub-core/script/execute.c:131 -#: grub-core/term/gfxterm_background.c:136 -msgid "one argument expected" -msgstr "וֹנע ×רגוּמענת עכּספּעצתעד" - -#: grub-core/commands/hdparm.c:440 -msgid "[OPTIONS] DISK" -msgstr "[וֹפּתִיוֹנש] דִישכּ" - -#: grub-core/commands/hdparm.c:441 -msgid "Get/set ATA disk parameters." -msgstr "געת/שעת ××ª× ×“Ö´×™×©×›Ö¼ פּ×ר×מעתערש." - -#: grub-core/commands/help.c:132 grub-core/lib/arg.c:109 -#: grub-core/lib/gnulib/argp-help.c:1616 -msgid "Usage:" -msgstr "וּש××’×¢:" - -#: grub-core/commands/help.c:146 -msgid "[PATTERN ...]" -msgstr "[פּ×תתערנ ...]" - -#: grub-core/commands/help.c:147 -msgid "Show a help message." -msgstr "שהוֹו × ×”×¢×œ×¤Ö¼ מעשש××’×¢." - -#: grub-core/commands/hexdump.c:31 -msgid "Skip offset bytes from the beginning of file." -msgstr "שכִּיפּ וֹפֿפֿשעת בּיִתעש פֿרוֹמ תהע בּעגִיננִינג וֹפֿ פִֿילע." - -#: grub-core/commands/hexdump.c:33 -msgid "Read only LENGTH bytes." -msgstr "רע×ד וֹנליִ לענגתה בּיִתעש." - -#: grub-core/commands/hexdump.c:125 -msgid "[OPTIONS] FILE_OR_DEVICE" -msgstr "[וֹפּתִיוֹנש] פִֿילע_וֹר_דעבִֿיצע" - -#: grub-core/commands/hexdump.c:126 -msgid "Show raw contents of a file or memory." -msgstr "שהוֹו ר×ו צוֹנתענתש וֹפֿ × ×¤Ö¿Ö´×™×œ×¢ וֹר מעמוֹריִ." - -#: grub-core/commands/i386/cmosdump.c:58 -msgid "Show raw dump of the CMOS contents." -msgstr "שהוֹו ר×ו דוּמפּ וֹפֿ תהע צמוֹש צוֹנתענתש." - -#: grub-core/commands/i386/cmostest.c:108 -#: grub-core/commands/i386/cmostest.c:111 -#: grub-core/commands/i386/cmostest.c:114 -msgid "BYTE:BIT" -msgstr "בּיִתע:בִּית" - -#: grub-core/commands/i386/cmostest.c:109 -msgid "Test bit at BYTE:BIT in CMOS." -msgstr "תעשת בִּית ×ת בּיִתע:בִּית Ö´×™×  צמוֹש." - -#: grub-core/commands/i386/cmostest.c:112 -msgid "Clear bit at BYTE:BIT in CMOS." -msgstr "צלע×ר בִּית ×ת בּיִתע:בִּית Ö´×™×  צמוֹש." - -#. TRANSLATORS: A bit may be either set (1) or clear (0). -#: grub-core/commands/i386/cmostest.c:116 -msgid "Set bit at BYTE:BIT in CMOS." -msgstr "שעת בִּית ×ת בּיִתע:בִּית Ö´×™×  צמוֹש." - -#: grub-core/commands/i386/coreboot/cb_timestamps.c:120 -msgid "Show coreboot boot time statistics." -msgstr "שהוֹו צוֹרעבּוֹוֹת בּוֹוֹת תִימע שת×תִישתִיצש." - -#: grub-core/commands/i386/coreboot/cbls.c:137 -msgid "List coreboot tables." -msgstr "לִישת צוֹרעבּוֹוֹת ת×בּלעש." - -#. TRANSLATORS: "(default)" at the end means that this option is used if -#. no argument is specified. -#: grub-core/commands/i386/cpuid.c:36 -msgid "Check if CPU supports 64-bit (long) mode (default)." -msgstr "צהעצכּ ִיפֿ צפּוּ שוּפּפּוֹרתש 64-בִּית (לוֹנג) מוֹדע (דעפֿ×וּלת)." - -#: grub-core/commands/i386/cpuid.c:37 -msgid "Check if CPU supports Physical Address Extension." -msgstr "צהעצכּ ִיפֿ צפּוּ שוּפּפּוֹרתש פּהיִשִיצ×ל ×דדרעשש עכּסתענשִיוֹנ." - -#: grub-core/commands/i386/cpuid.c:119 -msgid "Check for CPU features." -msgstr "צהעצכּ פֿוֹר צפּוּ פֿע×תוּרעש." - -#. TRANSLATORS: In this file "mapping" refers to a change GRUB makes so if -#. your language doesn't have an equivalent of "mapping" you can -#. use the word like "rerouting". -#. -#: grub-core/commands/i386/pc/drivemap.c:43 -msgid "Show the current mappings." -msgstr "שהוֹו תהע צוּררענת מ×פּפִּינגש." - -#: grub-core/commands/i386/pc/drivemap.c:44 -msgid "Reset all mappings to the default values." -msgstr "רעשעת ×לל מ×פּפִּינגש תוֹ תהע דעפֿ×וּלת בֿ×לוּעש." - -#: grub-core/commands/i386/pc/drivemap.c:45 -msgid "Perform both direct and reverse mappings." -msgstr "פּערפֿוֹרמ בּוֹתה דִירעצת ×נד רעבֿערשע מ×פּפִּינגש." - -#: grub-core/commands/i386/pc/drivemap.c:184 -msgid "No drives have been remapped" -msgstr "נוֹ דרִיבֿעש ×”×בֿע בּעענ רעמ×פּפּעד" - -#. TRANSLATORS: This is the header of mapping list. -#. On the left is how OS will see the disks and -#. on the right current GRUB vision. -#: grub-core/commands/i386/pc/drivemap.c:191 -msgid "OS disk #num ------> GRUB/BIOS device" -msgstr "וֹש דִישכּ #נוּמ ------> גרוּבּ/בִּיוֹש דעבִֿיצע" - -#: grub-core/commands/i386/pc/drivemap.c:413 -msgid "-l | -r | [-s] grubdev osdisk." -msgstr "-ל | -ר | [-ש] גרוּבּדעבֿ וֹשדִישכּ." - -#: grub-core/commands/i386/pc/drivemap.c:414 -msgid "Manage the BIOS drive mappings." -msgstr "מ×× ××’×¢ תהע בִּיוֹש דרִיבֿע מ×פּפִּינגש." - -#: grub-core/commands/i386/pc/halt.c:31 -msgid "Do not use APM to halt the computer." -msgstr "דוֹ נוֹת וּשע ×פּמ תוֹ ×”×לת תהע צוֹמפּוּתער." - -#: grub-core/commands/i386/pc/halt.c:119 -msgid "Halt the system, if possible using APM." -msgstr "×”×לת תהע שיִשתעמ, ִיפֿ פּוֹששִיבּלע וּשִינג ×פּמ." - -#: grub-core/commands/i386/pc/lsapm.c:75 -msgid "no APM found" -msgstr "נוֹ ×פּמ פֿוֹוּנד" - -#: grub-core/commands/i386/pc/lsapm.c:77 -#, c-format -msgid "" -"Version %u.%u\n" -"32-bit CS = 0x%x, len = 0x%x, offset = 0x%x\n" -"16-bit CS = 0x%x, len = 0x%x\n" -"DS = 0x%x, len = 0x%x\n" -msgstr "" -"בֿערשִיוֹנ %u.%u\n" -"32-בִּית צש = 0כּס%x, לענ = 0כּס%x, וֹפֿפֿשעת = 0כּס%x\n" -"16-בִּית צש = 0כּס%x, לענ = 0כּס%x\n" -"דש = 0כּס%x, לענ = 0כּס%x\n" - -#: grub-core/commands/i386/pc/lsapm.c:86 -msgid "16-bit protected interface supported\n" -msgstr "16-בִּית פּרוֹתעצתעד ִינתערפֿ×צע שוּפּפּוֹרתעד\n" - -#: grub-core/commands/i386/pc/lsapm.c:87 -msgid "16-bit protected interface unsupported\n" -msgstr "16-בִּית פּרוֹתעצתעד ִינתערפֿ×צע וּנשוּפּפּוֹרתעד\n" - -#: grub-core/commands/i386/pc/lsapm.c:89 -msgid "32-bit protected interface supported\n" -msgstr "32-בִּית פּרוֹתעצתעד ִינתערפֿ×צע שוּפּפּוֹרתעד\n" - -#: grub-core/commands/i386/pc/lsapm.c:90 -msgid "32-bit protected interface unsupported\n" -msgstr "32-בִּית פּרוֹתעצתעד ִינתערפֿ×צע וּנשוּפּפּוֹרתעד\n" - -#: grub-core/commands/i386/pc/lsapm.c:92 -msgid "CPU Idle slows down processor\n" -msgstr "צפּוּ ִידלע שלוֹוש דוֹונ פּרוֹצעששוֹר\n" - -#: grub-core/commands/i386/pc/lsapm.c:93 -msgid "CPU Idle doesn't slow down processor\n" -msgstr "צפּוּ ִידלע דוֹעשנ'ת שלוֹו דוֹונ פּרוֹצעששוֹר\n" - -#: grub-core/commands/i386/pc/lsapm.c:95 -msgid "APM disabled\n" -msgstr "×פּמ דִיש×בּלעד\n" - -#: grub-core/commands/i386/pc/lsapm.c:95 -msgid "APM enabled\n" -msgstr "×פּמ ×¢× ×בּלעד\n" - -#: grub-core/commands/i386/pc/lsapm.c:97 -msgid "APM disengaged\n" -msgstr "×פּמ דִישענג×געד\n" - -#: grub-core/commands/i386/pc/lsapm.c:97 -msgid "APM engaged\n" -msgstr "×פּמ ×¢× ×’×געד\n" - -#: grub-core/commands/i386/pc/lsapm.c:107 -msgid "Show APM information." -msgstr "שהוֹו ×פּמ ִינפֿוֹרמ×תִיוֹנ." - -#. TRANSLATORS: It's musical notes, not the notes -#. you take. Play command expects arguments which can -#. be either a filename or tempo+notes. -#. This error happens if none is specified. -#: grub-core/commands/i386/pc/play.c:88 -msgid "filename or tempo and notes expected" -msgstr "פִֿילענ×מע וֹר תעמפּוֹ ×נד נוֹתעש עכּספּעצתעד" - -#: grub-core/commands/i386/pc/play.c:113 grub-core/commands/i386/pc/play.c:144 -#, c-format -msgid "Invalid tempo in %s" -msgstr "ִינבֿ×לִיד תעמפּוֹ Ö´×™×  %s" - -#: grub-core/commands/i386/pc/play.c:151 grub-core/commands/macbless.c:172 -#: grub-core/fs/archelp.c:260 grub-core/fs/bfs.c:621 grub-core/fs/bfs.c:704 -#: grub-core/fs/btrfs.c:1726 grub-core/fs/btrfs.c:1755 -#: grub-core/fs/btrfs.c:1799 grub-core/fs/btrfs.c:1882 -#: grub-core/fs/btrfs.c:1906 grub-core/fs/fshelp.c:257 grub-core/fs/jfs.c:696 -#: grub-core/fs/minix.c:426 grub-core/fs/ufs.c:544 grub-core/fs/zfs/zfs.c:2083 -#: grub-core/fs/zfs/zfs.c:2095 grub-core/fs/zfs/zfs.c:2301 -#: grub-core/net/http.c:120 -#, c-format -msgid "file `%s' not found" -msgstr "פִֿילע `%s' נוֹת פֿוֹוּנד" - -#: grub-core/commands/i386/pc/play.c:162 grub-core/commands/i386/pc/play.c:171 -#: grub-core/kern/misc.c:419 grub-core/script/execute.c:138 -#: grub-core/script/execute.c:244 -msgid "unrecognized number" -msgstr "וּנרעצוֹגנִיזעד נוּמבּער" - -#: grub-core/commands/i386/pc/play.c:190 -msgid "FILE | TEMPO [PITCH1 DURATION1] [PITCH2 DURATION2] ... " -msgstr "פִֿילע | תעמפּוֹ [פִּיתצה1 דוּר×תִיוֹנ1] [פִּיתצה2 דוּר×תִיוֹנ2] ... " - -#: grub-core/commands/i386/pc/play.c:191 -msgid "Play a tune." -msgstr "פּל××™Ö´ × ×ª×•Ö¼× ×¢." - -#: grub-core/commands/i386/pc/sendkey.c:39 -msgid "set numlock mode" -msgstr "שעת נוּמלוֹצכּ מוֹדע" - -#: grub-core/commands/i386/pc/sendkey.c:40 -msgid "set capslock mode" -msgstr "שעת צ×פּשלוֹצכּ מוֹדע" - -#: grub-core/commands/i386/pc/sendkey.c:41 -msgid "set scrolllock mode" -msgstr "שעת שצרוֹלללוֹצכּ מוֹדע" - -#: grub-core/commands/i386/pc/sendkey.c:42 -msgid "set insert mode" -msgstr "שעת ִינשערת מוֹדע" - -#: grub-core/commands/i386/pc/sendkey.c:43 -msgid "set pause mode" -msgstr "שעת פּ×וּשע מוֹדע" - -#: grub-core/commands/i386/pc/sendkey.c:44 -msgid "press left shift" -msgstr "פּרעשש לעפֿת שהִיפֿת" - -#: grub-core/commands/i386/pc/sendkey.c:45 -msgid "press right shift" -msgstr "פּרעשש רִיגהת שהִיפֿת" - -#: grub-core/commands/i386/pc/sendkey.c:46 -msgid "press SysRq" -msgstr "פּרעשש שיִשרק" - -#: grub-core/commands/i386/pc/sendkey.c:47 -msgid "press NumLock key" -msgstr "פּרעשש נוּמלוֹצכּ ×›Ö¼×¢×™Ö´" - -#: grub-core/commands/i386/pc/sendkey.c:48 -msgid "press CapsLock key" -msgstr "פּרעשש צ×פּשלוֹצכּ ×›Ö¼×¢×™Ö´" - -#: grub-core/commands/i386/pc/sendkey.c:49 -msgid "press ScrollLock key" -msgstr "פּרעשש שצרוֹלללוֹצכּ ×›Ö¼×¢×™Ö´" - -#: grub-core/commands/i386/pc/sendkey.c:50 -msgid "press Insert key" -msgstr "פּרעשש ִינשערת ×›Ö¼×¢×™Ö´" - -#: grub-core/commands/i386/pc/sendkey.c:51 -msgid "press left alt" -msgstr "פּרעשש לעפֿת ×לת" - -#: grub-core/commands/i386/pc/sendkey.c:52 -msgid "press right alt" -msgstr "פּרעשש רִיגהת ×לת" - -#: grub-core/commands/i386/pc/sendkey.c:53 -msgid "press left ctrl" -msgstr "פּרעשש לעפֿת צתרל" - -#: grub-core/commands/i386/pc/sendkey.c:54 -msgid "press right ctrl" -msgstr "פּרעשש רִיגהת צתרל" - -#: grub-core/commands/i386/pc/sendkey.c:55 -msgid "don't update LED state" -msgstr "דוֹנ'ת וּפּד×תע לעד שת×תע" - -#: grub-core/commands/i386/pc/sendkey.c:372 -msgid "[KEYSTROKE1] [KEYSTROKE2] ..." -msgstr "[כּעיִשתרוֹכּע1] [כּעיִשתרוֹכּע2] ..." - -#. TRANSLATORS: It can emulate multiple -#. keypresses. -#: grub-core/commands/i386/pc/sendkey.c:375 -msgid "Emulate a keystroke sequence" -msgstr "עמוּל×תע × ×›Ö¼×¢×™Ö´×©×ª×¨×•Ö¹×›Ö¼×¢ שעקוּענצע" - -#: grub-core/commands/i386/rdmsr.c:37 grub-core/commands/iorw.c:34 -#: grub-core/commands/memrw.c:33 grub-core/commands/setpci.c:73 -msgid "Save read value into variable VARNAME." -msgstr "ש×בֿע רע×ד בֿ×לוּע ִינתוֹ בֿ×רִי×בּלע בֿ×רנ×מע." - -#: grub-core/commands/i386/rdmsr.c:38 grub-core/commands/iorw.c:35 -#: grub-core/commands/memrw.c:34 grub-core/commands/probe.c:40 -#: grub-core/commands/search_wrap.c:40 grub-core/commands/setpci.c:74 -#: grub-core/commands/tr.c:32 -msgid "VARNAME" -msgstr "בֿ×רנ×מע" - -#: grub-core/commands/i386/rdmsr.c:55 grub-core/commands/i386/rdmsr.c:60 -#: grub-core/commands/i386/rdmsr.c:65 grub-core/commands/i386/wrmsr.c:47 -#: grub-core/commands/i386/wrmsr.c:52 grub-core/commands/i386/wrmsr.c:57 -msgid "unsupported instruction" -msgstr "וּנשוּפּפּוֹרתעד ִינשתרוּצתִיוֹנ" - -#: grub-core/commands/i386/rdmsr.c:77 grub-core/commands/i386/wrmsr.c:69 -#: grub-core/commands/i386/wrmsr.c:77 grub-core/net/dns.c:727 -msgid "invalid argument" -msgstr "ִינבֿ×לִיד ×רגוּמענת" - -#: grub-core/commands/i386/rdmsr.c:94 grub-core/commands/memrw.c:125 -#: grub-core/commands/memrw.c:129 grub-core/commands/memrw.c:133 -msgid "ADDR" -msgstr "×דדר" - -#: grub-core/commands/i386/rdmsr.c:95 -msgid "Read a CPU model specific register." -msgstr "רע×ד × ×¦×¤Ö¼×•Ö¼ מוֹדעל שפּעצִיפִֿיצ רעגִישתער." - -#: grub-core/commands/i386/wrmsr.c:86 -msgid "ADDR VALUE" -msgstr "×דדר בֿ×לוּע" - -#: grub-core/commands/i386/wrmsr.c:87 -msgid "Write a value to a CPU model specific register." -msgstr "ורִיתע × ×‘Ö¿×לוּע תוֹ × ×¦×¤Ö¼×•Ö¼ מוֹדעל שפּעצִיפִֿיצ רעגִישתער." - -#: grub-core/commands/ieee1275/suspend.c:34 -msgid "Run `go' to resume GRUB." -msgstr "רוּנ `גוֹ' תוֹ רעשוּמע גרוּבּ." - -#: grub-core/commands/ieee1275/suspend.c:45 -msgid "Return to IEEE1275 prompt." -msgstr "רעתוּרנ תוֹ Ö´×™×¢×¢×¢1275 פּרוֹמפּת." - -#: grub-core/commands/iorw.c:123 grub-core/commands/iorw.c:127 -#: grub-core/commands/iorw.c:131 grub-core/gdb/gdb.c:79 -msgid "PORT" -msgstr "פּוֹרת" - -#: grub-core/commands/iorw.c:123 -msgid "Read 8-bit value from PORT." -msgstr "רע×ד 8-בִּית בֿ×לוּע פֿרוֹמ פּוֹרת." - -#: grub-core/commands/iorw.c:127 -msgid "Read 16-bit value from PORT." -msgstr "רע×ד 16-בִּית בֿ×לוּע פֿרוֹמ פּוֹרת." - -#: grub-core/commands/iorw.c:131 -msgid "Read 32-bit value from PORT." -msgstr "רע×ד 32-בִּית בֿ×לוּע פֿרוֹמ פּוֹרת." - -#: grub-core/commands/iorw.c:135 grub-core/commands/iorw.c:139 -msgid "PORT VALUE [MASK]" -msgstr "פּוֹרת בֿ×לוּע [מ×שכּ]" - -#: grub-core/commands/iorw.c:136 -msgid "Write 8-bit VALUE to PORT." -msgstr "ורִיתע 8-בִּית בֿ×לוּע תוֹ פּוֹרת." - -#: grub-core/commands/iorw.c:140 -msgid "Write 16-bit VALUE to PORT." -msgstr "ורִיתע 16-בִּית בֿ×לוּע תוֹ פּוֹרת." - -#: grub-core/commands/iorw.c:143 grub-core/commands/memrw.c:137 -#: grub-core/commands/memrw.c:141 grub-core/commands/memrw.c:145 -msgid "ADDR VALUE [MASK]" -msgstr "×דדר בֿ×לוּע [מ×שכּ]" - -#: grub-core/commands/iorw.c:144 -msgid "Write 32-bit VALUE to PORT." -msgstr "ורִיתע 32-בִּית בֿ×לוּע תוֹ פּוֹרת." - -#: grub-core/commands/keylayouts.c:215 grub-core/commands/loadenv.c:61 -#: grub-core/commands/nativedisk.c:189 grub-core/efiemu/main.c:235 -#: grub-core/font/font.c:428 grub-core/gfxmenu/gfxmenu.c:63 -#: grub-core/kern/device.c:42 grub-core/kern/dl.c:740 -#, c-format -msgid "variable `%s' isn't set" -msgstr "בֿ×רִי×בּלע `%s' ִישנ'ת שעת" - -#: grub-core/commands/keylayouts.c:301 -msgid "Load a keyboard layout." -msgstr "לוֹ×ד × ×›Ö¼×¢×™Ö´×‘Ö¼×•Ö¹×רד ל×יִוֹוּת." - -#. TRANSLATORS: "Check" in a sense that if this key is pressed then -#. "true" is returned, otherwise "false". -#: grub-core/commands/keystatus.c:32 -msgid "Check Shift key." -msgstr "צהעצכּ שהִיפֿת ×›Ö¼×¢×™Ö´." - -#: grub-core/commands/keystatus.c:33 -msgid "Check Control key." -msgstr "צהעצכּ צוֹנתרוֹל ×›Ö¼×¢×™Ö´." - -#: grub-core/commands/keystatus.c:34 -msgid "Check Alt key." -msgstr "צהעצכּ ×לת ×›Ö¼×¢×™Ö´." - -#. TRANSLATORS: there are 3 modifiers. -#: grub-core/commands/keystatus.c:106 -msgid "Check key modifier status." -msgstr "צהעצכּ ×›Ö¼×¢×™Ö´ מוֹדִיפִֿיער שת×תוּש." - -#: grub-core/commands/legacycfg.c:512 grub-core/commands/legacycfg.c:526 -#: grub-core/commands/legacycfg.c:546 grub-core/commands/legacycfg.c:559 -#: grub-core/commands/time.c:43 grub-core/script/function.c:109 -#: util/grub-file.c:100 util/grub-fstest.c:57 util/grub-mount.c:69 -#, c-format -msgid "can't find command `%s'" -msgstr "צ×× 'ת פִֿינד צוֹממ×נד `%s'" - -#: grub-core/commands/legacycfg.c:813 grub-core/normal/auth.c:225 -#: util/grub-mkpasswd-pbkdf2.c:139 -msgid "Enter password: " -msgstr "ענתער פּ×ששווֹרד: " - -#. TRANSLATORS: "legacy config" means -#. "config as used by grub-legacy". -#: grub-core/commands/legacycfg.c:837 -msgid "Parse legacy config in same context" -msgstr "פּ×רשע לעג×ציִ צוֹנפִֿיג Ö´×™×  ש×מע צוֹנתעכּסת" - -#: grub-core/commands/legacycfg.c:842 -msgid "Parse legacy config in new context" -msgstr "פּ×רשע לעג×ציִ צוֹנפִֿיג Ö´×™×  נעו צוֹנתעכּסת" - -#: grub-core/commands/legacycfg.c:847 -msgid "Parse legacy config in same context taking only menu entries" -msgstr "פּ×רשע לעג×ציִ צוֹנפִֿיג Ö´×™×  ש×מע צוֹנתעכּסת ת××›Ö¼Ö´×™× ×’ וֹנליִ מענוּ ענתרִיעש" - -#: grub-core/commands/legacycfg.c:852 -msgid "Parse legacy config in new context taking only menu entries" -msgstr "פּ×רשע לעג×ציִ צוֹנפִֿיג Ö´×™×  נעו צוֹנתעכּסת ת××›Ö¼Ö´×™× ×’ וֹנליִ מענוּ ענתרִיעש" - -#: grub-core/commands/legacycfg.c:856 -msgid "[--no-mem-option] [--type=TYPE] FILE [ARG ...]" -msgstr "[--נוֹ-מעמ-וֹפּתִיוֹנ] [--תיִפּע=תיִפּע] פִֿילע [×רג ...]" - -#: grub-core/commands/legacycfg.c:857 -msgid "Simulate grub-legacy `kernel' command" -msgstr "שִימוּל×תע גרוּבּ-לעג×ציִ `כּערנעל' צוֹממ×נד" - -#: grub-core/commands/legacycfg.c:861 grub-core/commands/legacycfg.c:865 -msgid "FILE [ARG ...]" -msgstr "פִֿילע [×רג ...]" - -#: grub-core/commands/legacycfg.c:862 -msgid "Simulate grub-legacy `initrd' command" -msgstr "שִימוּל×תע גרוּבּ-לעג×ציִ `ִינִיתרד' צוֹממ×נד" - -#: grub-core/commands/legacycfg.c:866 -msgid "Simulate grub-legacy `modulenounzip' command" -msgstr "שִימוּל×תע גרוּבּ-לעג×ציִ `מוֹדוּלענוֹוּנזִיפּ' צוֹממ×נד" - -#: grub-core/commands/legacycfg.c:870 grub-core/commands/legacycfg.c:875 -msgid "[--md5] PASSWD [FILE]" -msgstr "[--מד5] פּ×ששוד [פִֿילע]" - -#: grub-core/commands/legacycfg.c:871 -msgid "Simulate grub-legacy `password' command" -msgstr "שִימוּל×תע גרוּבּ-לעג×ציִ `פּ×ששווֹרד' צוֹממ×נד" - -#: grub-core/commands/legacycfg.c:876 -msgid "Simulate grub-legacy `password' command in menu entry mode" -msgstr "שִימוּל×תע גרוּבּ-לעג×ציִ `פּ×ששווֹרד' צוֹממ×נד Ö´×™×  מענוּ ענתריִ מוֹדע" - -#. TRANSLATORS: This option is used to override default filename -#. for loading and storing environment. -#: grub-core/commands/loadenv.c:37 -msgid "Specify filename." -msgstr "שפּעצִיפֿיִ פִֿילענ×מע." - -#: grub-core/commands/loadenv.c:39 -msgid "Skip signature-checking of the environment file." -msgstr "שכִּיפּ שִיגנ×תוּרע-צהעצכִּינג וֹפֿ תהע ענבִֿירוֹנמענת פִֿילע." - -#: grub-core/commands/loadenv.c:451 -msgid "[-f FILE] [-s|--skip-sig] [variable_name_to_whitelist] [...]" -msgstr "[-פֿ פִֿילע] [-ש|--שכִּיפּ-שִיג] [בֿ×רִי×בּלע_× ×מע_תוֹ_והִיתעלִישת] [...]" - -#: grub-core/commands/loadenv.c:452 -msgid "Load variables from environment block file." -msgstr "לוֹ×ד בֿ×רִי×בּלעש פֿרוֹמ ענבִֿירוֹנמענת בּלוֹצכּ פִֿילע." - -#: grub-core/commands/loadenv.c:455 -msgid "[-f FILE]" -msgstr "[-פֿ פִֿילע]" - -#: grub-core/commands/loadenv.c:456 -msgid "List variables from environment block file." -msgstr "לִישת בֿ×רִי×בּלעש פֿרוֹמ ענבִֿירוֹנמענת בּלוֹצכּ פִֿילע." - -#: grub-core/commands/loadenv.c:460 -msgid "[-f FILE] variable_name [...]" -msgstr "[-פֿ פִֿילע] בֿ×רִי×בּלע_× ×מע [...]" - -#: grub-core/commands/loadenv.c:461 -msgid "Save variables to environment block file." -msgstr "ש×בֿע בֿ×רִי×בּלעש תוֹ ענבִֿירוֹנמענת בּלוֹצכּ פִֿילע." - -#: grub-core/commands/ls.c:40 -msgid "Show a long list with more detailed information." -msgstr "שהוֹו × ×œ×•Ö¹× ×’ לִישת וִיתה מוֹרע דעת×ִילעד ִינפֿוֹרמ×תִיוֹנ." - -#: grub-core/commands/ls.c:41 -msgid "Print sizes in a human readable format." -msgstr "פּרִינת שִיזעש Ö´×™×  × ×”×•Ö¼×ž××  רע×ד×בּלע פֿוֹרמ×ת." - -#: grub-core/commands/ls.c:42 -msgid "List all files." -msgstr "לִישת ×לל פִֿילעש." - -#: grub-core/commands/ls.c:73 -msgid "Network protocols:" -msgstr "נעתווֹרכּ פּרוֹתוֹצוֹלש:" - -#: grub-core/commands/ls.c:295 -msgid "[-l|-h|-a] [FILE ...]" -msgstr "[-ל|-×”|-×] [פִֿילע ...]" - -#: grub-core/commands/ls.c:296 -msgid "List devices and files." -msgstr "לִישת דעבִֿיצעש ×נד פִֿילעש." - -#: grub-core/commands/lsacpi.c:255 -msgid "Show version 1 tables only." -msgstr "שהוֹו בֿערשִיוֹנ 1 ת×בּלעש וֹנליִ." - -#: grub-core/commands/lsacpi.c:256 -msgid "Show version 2 and version 3 tables only." -msgstr "שהוֹו בֿערשִיוֹנ 2 ×נד בֿערשִיוֹנ 3 ת×בּלעש וֹנליִ." - -#: grub-core/commands/lsacpi.c:306 -msgid "Show ACPI information." -msgstr "שהוֹו ×צפִּי ִינפֿוֹרמ×תִיוֹנ." - -#: grub-core/commands/lsmmap.c:31 -msgid "available RAM" -msgstr "×בֿ×ִיל×בּלע ר×מ" - -#: grub-core/commands/lsmmap.c:32 -msgid "reserved RAM" -msgstr "רעשערבֿעד ר×מ" - -#. TRANSLATORS: this refers to memory where ACPI tables are stored -#. and which can be used by OS once it loads ACPI tables. -#: grub-core/commands/lsmmap.c:35 -msgid "ACPI reclaimable RAM" -msgstr "×צפִּי רעצל×ִימ×בּלע ר×מ" - -#. TRANSLATORS: this refers to memory which ACPI-compliant OS -#. is required to save accross hibernations. -#: grub-core/commands/lsmmap.c:38 -msgid "ACPI non-volatile storage RAM" -msgstr "×צפִּי נוֹנ-בֿוֹל×תִילע שתוֹר××’×¢ ר×מ" - -#: grub-core/commands/lsmmap.c:39 -msgid "faulty RAM (BadRAM)" -msgstr "פֿ×וּלתיִ ר×מ (בּ×דר×מ)" - -#: grub-core/commands/lsmmap.c:40 -msgid "persistent RAM" -msgstr "פּערשִישתענת ר×מ" - -#: grub-core/commands/lsmmap.c:41 -msgid "persistent RAM (legacy)" -msgstr "פּערשִישתענת ר×מ (לעג×ציִ)" - -#: grub-core/commands/lsmmap.c:42 -msgid "RAM holding coreboot tables" -msgstr "ר×מ הוֹלדִינג צוֹרעבּוֹוֹת ת×בּלעש" - -#: grub-core/commands/lsmmap.c:43 -msgid "RAM holding firmware code" -msgstr "ר×מ הוֹלדִינג פִֿירמו×רע צוֹדע" - -#: grub-core/commands/lsmmap.c:52 -#, c-format -msgid "base_addr = 0x%llx, length = 0x%llx, %s\n" -msgstr "בּ×שע_×דדר = 0כּס%llx, לענגתה = 0כּס%llx, %s\n" - -#: grub-core/commands/lsmmap.c:55 -#, c-format -msgid "base_addr = 0x%llx, length = 0x%llx, type = 0x%x\n" -msgstr "בּ×שע_×דדר = 0כּס%llx, לענגתה = 0כּס%llx, תיִפּע = 0כּס%x\n" - -#: grub-core/commands/lsmmap.c:79 -msgid "List memory map provided by firmware." -msgstr "לִישת מעמוֹריִ מ×פּ פּרוֹבִֿידעד בּיִ פִֿירמו×רע." - -#: grub-core/commands/lspci.c:232 -msgid "List PCI devices." -msgstr "לִישת פּצִי דעבִֿיצעש." - -#: grub-core/commands/macbless.c:224 -msgid "Bless FILE of HFS or HFS+ partition for intel macs." -msgstr "בּלעשש פִֿילע וֹפֿ הפֿש וֹר הפֿש+ פּ×רתִיתִיוֹנ פֿוֹר ִינתעל מ×צש." - -#: grub-core/commands/macbless.c:228 -msgid "Bless DIR of HFS or HFS+ partition for PPC macs." -msgstr "בּלעשש דִיר וֹפֿ הפֿש וֹר הפֿש+ פּ×רתִיתִיוֹנ פֿוֹר פּפּצ מ×צש." - -#: grub-core/commands/memrw.c:125 -msgid "Read 8-bit value from ADDR." -msgstr "רע×ד 8-בִּית בֿ×לוּע פֿרוֹמ ×דדר." - -#: grub-core/commands/memrw.c:129 -msgid "Read 16-bit value from ADDR." -msgstr "רע×ד 16-בִּית בֿ×לוּע פֿרוֹמ ×דדר." - -#: grub-core/commands/memrw.c:133 -msgid "Read 32-bit value from ADDR." -msgstr "רע×ד 32-בִּית בֿ×לוּע פֿרוֹמ ×דדר." - -#: grub-core/commands/memrw.c:138 -msgid "Write 8-bit VALUE to ADDR." -msgstr "ורִיתע 8-בִּית בֿ×לוּע תוֹ ×דדר." - -#: grub-core/commands/memrw.c:142 -msgid "Write 16-bit VALUE to ADDR." -msgstr "ורִיתע 16-בִּית בֿ×לוּע תוֹ ×דדר." - -#: grub-core/commands/memrw.c:146 -msgid "Write 32-bit VALUE to ADDR." -msgstr "ורִיתע 32-בִּית בֿ×לוּע תוֹ ×דדר." - -#: grub-core/commands/menuentry.c:31 -msgid "Menu entry type." -msgstr "מענוּ ענתריִ תיִפּע." - -#: grub-core/commands/menuentry.c:31 grub-core/commands/menuentry.c:38 -#: grub-core/commands/menuentry.c:39 grub-core/gettext/gettext.c:520 -#: util/grub-fstest.c:520 util/grub-install.c:291 util/grub-install.c:304 -#: util/grub-mknetdir.c:51 util/grub-mkrescue.c:109 util/grub-mkrescue.c:110 -#: util/grub-mount.c:453 util/grub-render-label.c:65 -msgid "STRING" -msgstr "שתרִינג" - -#: grub-core/commands/menuentry.c:33 -msgid "List of users allowed to boot this entry." -msgstr "לִישת וֹפֿ וּשערש ×ללוֹועד תוֹ בּוֹוֹת תהִיש ענתריִ." - -#: grub-core/commands/menuentry.c:33 -msgid "USERNAME[,USERNAME]" -msgstr "וּשערנ×מע[,וּשערנ×מע]" - -#: grub-core/commands/menuentry.c:36 -msgid "Keyboard key to quickly boot this entry." -msgstr "כּעיִבּוֹ×רד ×›Ö¼×¢×™Ö´ תוֹ קוִּיצכּליִ בּוֹוֹת תהִיש ענתריִ." - -#: grub-core/commands/menuentry.c:36 -msgid "KEYBOARD_KEY" -msgstr "כּעיִבּוֹ×רד_×›Ö¼×¢×™Ö´" - -#: grub-core/commands/menuentry.c:38 -msgid "Use STRING as menu entry body." -msgstr "וּשע שתרִינג ×ש מענוּ ענתריִ בּוֹדיִ." - -#: grub-core/commands/menuentry.c:39 -msgid "Menu entry identifier." -msgstr "מענוּ ענתריִ ִידענתִיפִֿיער." - -#. TRANSLATORS: menu entry can either be bootable by anyone or only by -#. handful of users. By default when security is active only superusers can -#. boot a given menu entry. With --unrestricted (this option) -#. anyone can boot it. -#: grub-core/commands/menuentry.c:44 -msgid "This entry can be booted by any user." -msgstr "תהִיש ענתריִ צ××  בּע בּוֹוֹתעד בּיִ ×× ×™Ö´ וּשער." - -#: grub-core/commands/menuentry.c:323 grub-core/commands/menuentry.c:328 -#: grub-core/tests/test_blockarg.c:46 -msgid "BLOCK" -msgstr "בּלוֹצכּ" - -#: grub-core/commands/menuentry.c:323 -msgid "Define a menu entry." -msgstr "דעפִֿינע × ×ž×¢× ×•Ö¼ ענתריִ." - -#: grub-core/commands/menuentry.c:328 -msgid "Define a submenu." -msgstr "דעפִֿינע × ×©×•Ö¼×‘Ö¼×ž×¢× ×•Ö¼." - -#. TRANSLATORS: this is module list header. Name -#. is module name, Ref Count is a reference counter -#. (how many modules or open descriptors use it). -#. Dependencies are the other modules it uses. -#. -#: grub-core/commands/minicmd.c:162 -msgid "Name\tRef Count\tDependencies\n" -msgstr "× ×מע\tרעפֿ צוֹוּנת\tדעפּענדענצִיעש\n" - -#: grub-core/commands/minicmd.c:201 -msgid "Show this message." -msgstr "שהוֹו תהִיש מעשש××’×¢." - -#: grub-core/commands/minicmd.c:204 -msgid "ADDR [SIZE]" -msgstr "×דדר [שִיזע]" - -#: grub-core/commands/minicmd.c:204 -msgid "Show memory contents." -msgstr "שהוֹו מעמוֹריִ צוֹנתענתש." - -#: grub-core/commands/minicmd.c:207 grub-core/kern/corecmd.c:188 -#: util/grub-install.c:275 -msgid "MODULE" -msgstr "מוֹדוּלע" - -#: grub-core/commands/minicmd.c:207 -msgid "Remove a module." -msgstr "רעמוֹבֿע × ×ž×•Ö¹×“×•Ö¼×œ×¢." - -#: grub-core/commands/minicmd.c:210 -msgid "Show loaded modules." -msgstr "שהוֹו לוֹ×דעד מוֹדוּלעש." - -#: grub-core/commands/minicmd.c:213 -msgid "Exit from GRUB." -msgstr "עכּסִית פֿרוֹמ גרוּבּ." - -#: grub-core/commands/mips/loongson/lsspd.c:42 -msgid "No CS5536 found" -msgstr "נוֹ צש5536 פֿוֹוּנד" - -#: grub-core/commands/mips/loongson/lsspd.c:45 -#, c-format -msgid "CS5536 at %d:%d.%d\n" -msgstr "צש5536 ×ת %d:%d.%d\n" - -#. TRANSLATORS: System management bus is often used to access components like -#. RAM (info only, not data) or batteries. I/O space is where in memory -#. its ports are. -#: grub-core/commands/mips/loongson/lsspd.c:55 -#, c-format -msgid "System management bus controller I/O space is at 0x%x\n" -msgstr "שיִשתעמ מ×× ×געמענת בּוּש צוֹנתרוֹללער Ö´×™/וֹ שפּ×צע ִיש ×ת 0כּס%x\n" - -#. TRANSLATORS: it's shown in a report in a way -#. like number 1: ... number 2: ... -#. -#: grub-core/commands/mips/loongson/lsspd.c:66 -#, c-format -msgid "RAM slot number %d\n" -msgstr "ר×מ שלוֹת נוּמבּער %d\n" - -#: grub-core/commands/mips/loongson/lsspd.c:73 -#, c-format -msgid "Written SPD bytes: %d B.\n" -msgstr "ורִיתתענ שפּד בּיִתעש: %d בּ.\n" - -#: grub-core/commands/mips/loongson/lsspd.c:74 -#, c-format -msgid "Total flash size: %d B.\n" -msgstr "תוֹת×ל פֿל×שה שִיזע: %d בּ.\n" - -#: grub-core/commands/mips/loongson/lsspd.c:79 -msgid "Memory type: DDR2." -msgstr "מעמוֹריִ תיִפּע: דדר2." - -#: grub-core/commands/mips/loongson/lsspd.c:83 -#, c-format -msgid "Part no: %s.\n" -msgstr "פּ×רת נוֹ: %s.\n" - -#: grub-core/commands/mips/loongson/lsspd.c:86 -msgid "Memory type: Unknown." -msgstr "מעמוֹריִ תיִפּע: וּנכּנוֹונ." - -#: grub-core/commands/mips/loongson/lsspd.c:97 -msgid "Print Memory information." -msgstr "פּרִינת מעמוֹריִ ִינפֿוֹרמ×תִיוֹנ." - -#: grub-core/commands/nativedisk.c:118 grub-core/commands/probe.c:118 -#: grub-core/commands/probe.c:124 util/grub-probe.c:450 -#, c-format -msgid "%s does not support UUIDs" -msgstr "%s דוֹעש נוֹת שוּפּפּוֹרת וּוִּידש" - -#: grub-core/commands/nativedisk.c:325 -msgid "[MODULE1 MODULE2 ...]" -msgstr "[מוֹדוּלע1 מוֹדוּלע2 ...]" - -#: grub-core/commands/nativedisk.c:326 -msgid "" -"Switch to native disk drivers. If no modules are specified default set (pata," -"ahci,usbms,ohci,uhci,ehci) is used" -msgstr "" -"שוִיתצה תוֹ × ×תִיבֿע דִישכּ דרִיבֿערש. ִיפֿ נוֹ מוֹדוּלעש ×רע שפּעצִיפִֿיעד דעפֿ×וּלת שעת (פּ×ת×," -"×הצִי,וּשבּמש,וֹהצִי,וּהצִי,עהצִי) ִיש וּשעד" - -#: grub-core/commands/parttool.c:40 -msgid "" -"Perform COMMANDS on partition.\n" -"Use `parttool PARTITION help' for the list of available commands." -msgstr "" -"פּערפֿוֹרמ צוֹממ×נדש וֹנ פּ×רתִיתִיוֹנ.\n" -"וּשע `פּ×רתתוֹוֹל פּ×רתִיתִיוֹנ העלפּ' פֿוֹר תהע לִישת וֹפֿ ×בֿ×ִיל×בּלע צוֹממ×נדש." - -#: grub-core/commands/parttool.c:123 -msgid "=VAL" -msgstr "=בֿ×ל" - -#: grub-core/commands/parttool.c:136 -#, c-format -msgid "Sorry, no parttool is available for %s\n" -msgstr "שוֹרריִ, נוֹ פּ×רתתוֹוֹל ִיש ×בֿ×ִיל×בּלע פֿוֹר %s\n" - -#: grub-core/commands/parttool.c:288 grub-core/lib/arg.c:285 -#: grub-core/lib/arg.c:351 -#, c-format -msgid "unknown argument `%s'" -msgstr "וּנכּנוֹונ ×רגוּמענת `%s'" - -#: grub-core/commands/parttool.c:344 -msgid "PARTITION COMMANDS" -msgstr "פּ×רתִיתִיוֹנ צוֹממ×נדש" - -#: grub-core/commands/password.c:85 -msgid "USER PASSWORD" -msgstr "וּשער פּ×ששווֹרד" - -#: grub-core/commands/password.c:86 -msgid "Set user password (plaintext). Unrecommended and insecure." -msgstr "שעת וּשער פּ×ששווֹרד (פּל×ִינתעכּסת). וּנרעצוֹממענדעד ×נד ִינשעצוּרע." - -#. TRANSLATORS: it means that the string which -#. was supposed to be a password hash doesn't -#. have a correct format, not to password -#. mismatch. -#: grub-core/commands/password_pbkdf2.c:98 -#: grub-core/commands/password_pbkdf2.c:115 -#: grub-core/commands/password_pbkdf2.c:123 -#: grub-core/commands/password_pbkdf2.c:150 -#: grub-core/commands/password_pbkdf2.c:179 -msgid "invalid PBKDF2 password" -msgstr "ִינבֿ×לִיד פּבּכּדפֿ2 פּ×ששווֹרד" - -#: grub-core/commands/password_pbkdf2.c:202 -msgid "USER PBKDF2_PASSWORD" -msgstr "וּשער פּבּכּדפֿ2_פּ×ששווֹרד" - -#: grub-core/commands/password_pbkdf2.c:203 -msgid "Set user password (PBKDF2). " -msgstr "שעת וּשער פּ×ששווֹרד (פּבּכּדפֿ2). " - -#: grub-core/commands/pcidump.c:39 grub-core/commands/setpci.c:69 -msgid "Select device by vendor and device IDs." -msgstr "שעלעצת דעבִֿיצע בּיִ בֿענדוֹר ×נד דעבִֿיצע ִידש." - -#: grub-core/commands/pcidump.c:40 grub-core/commands/setpci.c:70 -msgid "[vendor]:[device]" -msgstr "[בֿענדוֹר]:[דעבִֿיצע]" - -#: grub-core/commands/pcidump.c:41 grub-core/commands/setpci.c:71 -msgid "Select device by its position on the bus." -msgstr "שעלעצת דעבִֿיצע בּיִ ִיתש פּוֹשִיתִיוֹנ וֹנ תהע בּוּש." - -#: grub-core/commands/pcidump.c:42 grub-core/commands/setpci.c:72 -msgid "[bus]:[slot][.func]" -msgstr "[בּוּש]:[שלוֹת][.פֿוּנצ]" - -#: grub-core/commands/pcidump.c:109 grub-core/commands/pcidump.c:138 -#: grub-core/commands/setpci.c:183 grub-core/commands/setpci.c:214 -#: grub-core/fs/zfs/zfs.c:3794 grub-core/kern/emu/hostdisk.c:458 -#: grub-core/kern/emu/hostdisk.c:473 grub-core/kern/file.c:44 -#, c-format -msgid "missing `%c' symbol" -msgstr "מִיששִינג `%c' שיִמבּוֹל" - -#: grub-core/commands/pcidump.c:168 -msgid "[-s POSITION] [-d DEVICE]" -msgstr "[-ש פּוֹשִיתִיוֹנ] [-ד דעבִֿיצע]" - -#: grub-core/commands/pcidump.c:169 -msgid "Show raw dump of the PCI configuration space." -msgstr "שהוֹו ר×ו דוּמפּ וֹפֿ תהע פּצִי צוֹנפִֿיגוּר×תִיוֹנ שפּ×צע." - -#: grub-core/commands/pgp.c:45 -msgid "Skip signature-checking of the public key file." -msgstr "שכִּיפּ שִיגנ×תוּרע-צהעצכִּינג וֹפֿ תהע פּוּבּלִיצ ×›Ö¼×¢×™Ö´ פִֿילע." - -#. TRANSLATORS: it's about GNUPG signatures. -#: grub-core/commands/pgp.c:71 grub-core/commands/pgp.c:81 -#: grub-core/commands/pgp.c:86 grub-core/commands/pgp.c:96 -#: grub-core/commands/pgp.c:103 grub-core/commands/pgp.c:107 -#: grub-core/commands/pgp.c:114 grub-core/commands/pgp.c:119 -#: grub-core/commands/pgp.c:124 grub-core/commands/pgp.c:128 -#: grub-core/commands/pgp.c:268 grub-core/commands/pgp.c:276 -#: grub-core/commands/pgp.c:281 grub-core/commands/pgp.c:289 -#: grub-core/commands/pgp.c:320 grub-core/commands/pgp.c:327 -#: grub-core/commands/pgp.c:332 grub-core/commands/pgp.c:342 -#: grub-core/commands/pgp.c:468 grub-core/commands/pgp.c:471 -#: grub-core/commands/pgp.c:474 grub-core/commands/pgp.c:477 -#: grub-core/commands/pgp.c:484 grub-core/commands/pgp.c:490 -#: grub-core/commands/pgp.c:665 -msgid "bad signature" -msgstr "בּ×ד שִיגנ×תוּרע" - -#. TRANSLATORS: %08x is 32-bit key id. -#: grub-core/commands/pgp.c:636 grub-core/commands/pgp.c:812 -#, c-format -msgid "public key %08x not found" -msgstr "פּוּבּלִיצ ×›Ö¼×¢×™Ö´ %08x נוֹת פֿוֹוּנד" - -#: grub-core/commands/pgp.c:651 grub-core/disk/diskfilter.c:772 -#: grub-core/disk/diskfilter.c:782 grub-core/fs/ntfs.c:404 -#: grub-core/fs/zfs/zfs.c:1933 grub-core/normal/menu.c:428 -#, c-format -msgid "module `%s' isn't loaded" -msgstr "מוֹדוּלע `%s' ִישנ'ת לוֹ×דעד" - -#: grub-core/commands/pgp.c:994 -msgid "[-s|--skip-sig] FILE SIGNATURE_FILE [PUBKEY_FILE]" -msgstr "[-ש|--שכִּיפּ-שִיג] פִֿילע שִיגנ×תוּרע_פִֿילע [פּוּבּכּעיִ_פִֿילע]" - -#: grub-core/commands/pgp.c:995 -msgid "Verify detached signature." -msgstr "בֿערִיפֿיִ דעת×צהעד שִיגנ×תוּרע." - -#: grub-core/commands/pgp.c:998 -msgid "[-s|--skip-sig] PUBKEY_FILE" -msgstr "[-ש|--שכִּיפּ-שִיג] פּוּבּכּעיִ_פִֿילע" - -#: grub-core/commands/pgp.c:999 -msgid "Add PUBKEY_FILE to trusted keys." -msgstr "×דד פּוּבּכּעיִ_פִֿילע תוֹ תרוּשתעד כּעיִש." - -#: grub-core/commands/pgp.c:1003 -msgid "Show the list of trusted keys." -msgstr "שהוֹו תהע לִישת וֹפֿ תרוּשתעד כּעיִש." - -#: grub-core/commands/pgp.c:1005 -msgid "PUBKEY_ID" -msgstr "פּוּבּכּעיִ_ִיד" - -#: grub-core/commands/pgp.c:1006 -msgid "Remove PUBKEY_ID from trusted keys." -msgstr "רעמוֹבֿע פּוּבּכּעיִ_ִיד פֿרוֹמ תרוּשתעד כּעיִש." - -#: grub-core/commands/probe.c:40 grub-core/commands/tr.c:32 -msgid "Set a variable to return value." -msgstr "שעת × ×‘Ö¿×רִי×בּלע תוֹ רעתוּרנ בֿ×לוּע." - -#. TRANSLATORS: It's a driver that is currently in use to access -#. the diven disk. -#: grub-core/commands/probe.c:43 -msgid "Determine driver." -msgstr "דעתערמִינע דרִיבֿער." - -#: grub-core/commands/probe.c:44 -msgid "Determine partition map type." -msgstr "דעתערמִינע פּ×רתִיתִיוֹנ מ×פּ תיִפּע." - -#: grub-core/commands/probe.c:45 -msgid "Determine filesystem type." -msgstr "דעתערמִינע פִֿילעשיִשתעמ תיִפּע." - -#: grub-core/commands/probe.c:46 -msgid "Determine filesystem UUID." -msgstr "דעתערמִינע פִֿילעשיִשתעמ וּוִּיד." - -#: grub-core/commands/probe.c:47 -msgid "Determine filesystem label." -msgstr "דעתערמִינע פִֿילעשיִשתעמ ל×בּעל." - -#: grub-core/commands/probe.c:139 grub-core/commands/probe.c:146 -#: util/grub-probe.c:462 -#, c-format -msgid "filesystem `%s' does not support labels" -msgstr "פִֿילעשיִשתעמ `%s' דוֹעש נוֹת שוּפּפּוֹרת ל×בּעלש" - -#: grub-core/commands/probe.c:165 grub-core/fs/zfs/zfsinfo.c:430 -#: grub-core/loader/i386/bsd.c:169 util/grub-setup.c:223 -msgid "DEVICE" -msgstr "דעבִֿיצע" - -#: grub-core/commands/probe.c:166 -msgid "Retrieve device info." -msgstr "רעתרִיעבֿע דעבִֿיצע ִינפֿוֹ." - -#: grub-core/commands/read.c:85 -msgid "[ENVVAR]" -msgstr "[ענבֿבֿ×ר]" - -#: grub-core/commands/read.c:86 -msgid "Set variable with user input." -msgstr "שעת בֿ×רִי×בּלע וִיתה וּשער ִינפּוּת." - -#: grub-core/commands/reboot.c:40 -msgid "Reboot the computer." -msgstr "רעבּוֹוֹת תהע צוֹמפּוּתער." - -#. TRANSLATORS: in regexp you can mark some -#. groups with parentheses. These groups are -#. then numbered and you can save some of -#. them in variables. In other programs -#. those components aree often referenced with -#. back slash, e.g. \1. Compare -#. sed -e 's,\([a-z][a-z]*\),lowercase=\1,g' -#. The whole matching component is saved in VARNAME, not its number. -#. -#: grub-core/commands/regexp.c:44 -msgid "Store matched component NUMBER in VARNAME." -msgstr "שתוֹרע מ×תצהעד צוֹמפּוֹנענת נוּמבּער Ö´×™×  בֿ×רנ×מע." - -#: grub-core/commands/regexp.c:45 -msgid "[NUMBER:]VARNAME" -msgstr "[נוּמבּער:]בֿ×רנ×מע" - -#. TRANSLATORS: This are two arguments. So it's -#. two separate units to translate and pay -#. attention not to reverse them. -#: grub-core/commands/regexp.c:157 -msgid "REGEXP STRING" -msgstr "רעגעכּספּ שתרִינג" - -#: grub-core/commands/regexp.c:158 -msgid "Test if REGEXP matches STRING." -msgstr "תעשת ִיפֿ רעגעכּספּ מ×תצהעש שתרִינג." - -#: grub-core/commands/search.c:324 -msgid "NAME [VARIABLE] [HINTS]" -msgstr "× ×מע [בֿ×רִי×בּלע] [הִינתש]" - -#: grub-core/commands/search_file.c:4 -msgid "" -"Search devices by file. If VARIABLE is specified, the first device found is " -"set to a variable." -msgstr "" -"שע×רצה דעבִֿיצעש בּיִ פִֿילע. ִיפֿ בֿ×רִי×בּלע ִיש שפּעצִיפִֿיעד, תהע פִֿירשת דעבִֿיצע פֿוֹוּנד ִיש " -"שעת תוֹ × ×‘Ö¿×רִי×בּלע." - -#: grub-core/commands/search_label.c:4 -msgid "" -"Search devices by label. If VARIABLE is specified, the first device found is " -"set to a variable." -msgstr "" -"שע×רצה דעבִֿיצעש בּיִ ל×בּעל. ִיפֿ בֿ×רִי×בּלע ִיש שפּעצִיפִֿיעד, תהע פִֿירשת דעבִֿיצע פֿוֹוּנד ִיש " -"שעת תוֹ × ×‘Ö¿×רִי×בּלע." - -#: grub-core/commands/search_uuid.c:4 -msgid "" -"Search devices by UUID. If VARIABLE is specified, the first device found is " -"set to a variable." -msgstr "" -"שע×רצה דעבִֿיצעש בּיִ וּוִּיד. ִיפֿ בֿ×רִי×בּלע ִיש שפּעצִיפִֿיעד, תהע פִֿירשת דעבִֿיצע פֿוֹוּנד ִיש " -"שעת תוֹ × ×‘Ö¿×רִי×בּלע." - -#: grub-core/commands/search_wrap.c:34 -msgid "Search devices by a file." -msgstr "שע×רצה דעבִֿיצעש בּיִ × ×¤Ö¿Ö´×™×œ×¢." - -#: grub-core/commands/search_wrap.c:35 -msgid "Search devices by a filesystem label." -msgstr "שע×רצה דעבִֿיצעש בּיִ × ×¤Ö¿Ö´×™×œ×¢×©×™Ö´×©×ª×¢×ž ל×בּעל." - -#: grub-core/commands/search_wrap.c:37 -msgid "Search devices by a filesystem UUID." -msgstr "שע×רצה דעבִֿיצעש בּיִ × ×¤Ö¿Ö´×™×œ×¢×©×™Ö´×©×ª×¢×ž וּוִּיד." - -#: grub-core/commands/search_wrap.c:40 -msgid "Set a variable to the first device found." -msgstr "שעת × ×‘Ö¿×רִי×בּלע תוֹ תהע פִֿירשת דעבִֿיצע פֿוֹוּנד." - -#: grub-core/commands/search_wrap.c:42 -msgid "Do not probe any floppy drive." -msgstr "דוֹ נוֹת פּרוֹבּע ×× ×™Ö´ פֿלוֹפּפּיִ דרִיבֿע." - -#: grub-core/commands/search_wrap.c:44 -msgid "" -"First try the device HINT. If HINT ends in comma, also try subpartitions" -msgstr "" -"פִֿירשת תריִ תהע דעבִֿיצע הִינת. ִיפֿ הִינת ענדש Ö´×™×  צוֹממ×, ×לשוֹ תריִ שוּבּפּ×רתִיתִיוֹנש" - -#: grub-core/commands/search_wrap.c:45 grub-core/commands/search_wrap.c:49 -#: grub-core/commands/search_wrap.c:53 grub-core/commands/search_wrap.c:57 -#: grub-core/commands/search_wrap.c:61 grub-core/commands/search_wrap.c:65 -msgid "HINT" -msgstr "הִינת" - -#: grub-core/commands/search_wrap.c:47 -msgid "" -"First try the device HINT if currently running on IEEE1275. If HINT ends in " -"comma, also try subpartitions" -msgstr "" -"פִֿירשת תריִ תהע דעבִֿיצע הִינת ִיפֿ צוּררענתליִ רוּננִינג וֹנ Ö´×™×¢×¢×¢1275. ִיפֿ הִינת ענדש Ö´×™×  " -"צוֹממ×, ×לשוֹ תריִ שוּבּפּ×רתִיתִיוֹנש" - -#: grub-core/commands/search_wrap.c:51 -msgid "" -"First try the device HINT if currently running on BIOS. If HINT ends in " -"comma, also try subpartitions" -msgstr "" -"פִֿירשת תריִ תהע דעבִֿיצע הִינת ִיפֿ צוּררענתליִ רוּננִינג וֹנ בִּיוֹש. ִיפֿ הִינת ענדש Ö´×™×  " -"צוֹממ×, ×לשוֹ תריִ שוּבּפּ×רתִיתִיוֹנש" - -#: grub-core/commands/search_wrap.c:55 -msgid "" -"First try the device HINT if direct hardware access is supported. If HINT " -"ends in comma, also try subpartitions" -msgstr "" -"פִֿירשת תריִ תהע דעבִֿיצע הִינת ִיפֿ דִירעצת ×”×רדו×רע ×צצעשש ִיש שוּפּפּוֹרתעד. ִיפֿ הִינת " -"ענדש Ö´×™×  צוֹממ×, ×לשוֹ תריִ שוּבּפּ×רתִיתִיוֹנש" - -#: grub-core/commands/search_wrap.c:59 -msgid "" -"First try the device HINT if currently running on EFI. If HINT ends in " -"comma, also try subpartitions" -msgstr "" -"פִֿירשת תריִ תהע דעבִֿיצע הִינת ִיפֿ צוּררענתליִ רוּננִינג וֹנ עפִֿי. ִיפֿ הִינת ענדש Ö´×™×  " -"צוֹממ×, ×לשוֹ תריִ שוּבּפּ×רתִיתִיוֹנש" - -#: grub-core/commands/search_wrap.c:63 -msgid "" -"First try the device HINT if currently running on ARC. If HINT ends in " -"comma, also try subpartitions" -msgstr "" -"פִֿירשת תריִ תהע דעבִֿיצע הִינת ִיפֿ צוּררענתליִ רוּננִינג וֹנ ×רצ. ִיפֿ הִינת ענדש Ö´×™×  " -"צוֹממ×, ×לשוֹ תריִ שוּבּפּ×רתִיתִיוֹנש" - -#: grub-core/commands/search_wrap.c:207 -msgid "[-f|-l|-u|-s|-n] [--hint HINT [--hint HINT] ...] NAME" -msgstr "[-פֿ|-ל|-וּ|-ש|-× ] [--הִינת הִינת [--הִינת הִינת] ...] × ×מע" - -#: grub-core/commands/search_wrap.c:209 -msgid "" -"Search devices by file, filesystem label or filesystem UUID. If --set is " -"specified, the first device found is set to a variable. If no variable name " -"is specified, `root' is used." -msgstr "" -"שע×רצה דעבִֿיצעש בּיִ פִֿילע, פִֿילעשיִשתעמ ל×בּעל וֹר פִֿילעשיִשתעמ וּוִּיד. ִיפֿ --שעת ִיש " -"שפּעצִיפִֿיעד, תהע פִֿירשת דעבִֿיצע פֿוֹוּנד ִיש שעת תוֹ × ×‘Ö¿×רִי×בּלע. ִיפֿ נוֹ בֿ×רִי×בּלע × ×מע Ö´" -"יש שפּעצִיפִֿיעד, `רוֹוֹת' ִיש וּשעד." - -#: grub-core/commands/setpci.c:132 -#, c-format -msgid "Register %x of %x:%02x.%x is %x\n" -msgstr "רעגִישתער %x וֹפֿ %x:%02x.%x ִיש %x\n" - -#: grub-core/commands/setpci.c:333 -msgid "[-s POSITION] [-d DEVICE] [-v VAR] REGISTER[=VALUE[:MASK]]" -msgstr "[-ש פּוֹשִיתִיוֹנ] [-ד דעבִֿיצע] [-בֿ בֿ×ר] רעגִישתער[=בֿ×לוּע[:מ×שכּ]]" - -#: grub-core/commands/setpci.c:335 -msgid "Manipulate PCI devices." -msgstr "מ×נִיפּוּל×תע פּצִי דעבִֿיצעש." - -#: grub-core/commands/sleep.c:32 -msgid "Verbose countdown." -msgstr "בֿערבּוֹשע צוֹוּנתדוֹונ." - -#: grub-core/commands/sleep.c:33 -msgid "Allow to interrupt with ESC." -msgstr "×ללוֹו תוֹ ִינתעררוּפּת וִיתה עשצ." - -#: grub-core/commands/sleep.c:109 -msgid "NUMBER_OF_SECONDS" -msgstr "נוּמבּער_וֹפֿ_שעצוֹנדש" - -#: grub-core/commands/sleep.c:110 -msgid "Wait for a specified number of seconds." -msgstr "ו×ִית פֿוֹר × ×©×¤Ö¼×¢×¦Ö´×™×¤Ö¿Ö´×™×¢×“ נוּמבּער וֹפֿ שעצוֹנדש." - -#: grub-core/commands/syslinuxcfg.c:50 util/grub-syslinux2cfg.c:66 -msgid "root directory of the syslinux disk [default=/]." -msgstr "רוֹוֹת דִירעצתוֹריִ וֹפֿ תהע שיִשלִינוּכּס דִישכּ [דעפֿ×וּלת=/]." - -#: grub-core/commands/syslinuxcfg.c:53 util/grub-syslinux2cfg.c:72 -msgid "" -"current directory of syslinux [default is parent directory of input file]." -msgstr "" -"צוּררענת דִירעצתוֹריִ וֹפֿ שיִשלִינוּכּס [דעפֿ×וּלת ִיש פּ×רענת דִירעצתוֹריִ וֹפֿ ִינפּוּת פִֿילע]." - -#: grub-core/commands/syslinuxcfg.c:55 util/grub-syslinux2cfg.c:75 -msgid "assume input is an isolinux configuration file." -msgstr "×ששוּמע ִינפּוּת ִיש ××  ִישוֹלִינוּכּס צוֹנפִֿיגוּר×תִיוֹנ פִֿילע." - -#: grub-core/commands/syslinuxcfg.c:56 util/grub-syslinux2cfg.c:76 -msgid "assume input is a pxelinux configuration file." -msgstr "×ששוּמע ִינפּוּת ִיש × ×¤Ö¼×›Ö¼×¡×¢×œÖ´×™× ×•Ö¼×›Ö¼×¡ צוֹנפִֿיגוּר×תִיוֹנ פִֿילע." - -#: grub-core/commands/syslinuxcfg.c:57 util/grub-syslinux2cfg.c:77 -msgid "assume input is a syslinux configuration file." -msgstr "×ששוּמע ִינפּוּת ִיש × ×©×™Ö´×©×œÖ´×™× ×•Ö¼×›Ö¼×¡ צוֹנפִֿיגוּר×תִיוֹנ פִֿילע." - -#. TRANSLATORS: "syslinux config" means -#. "config as used by syslinux". -#: grub-core/commands/syslinuxcfg.c:189 -msgid "Execute syslinux config in same context" -msgstr "עכּסעצוּתע שיִשלִינוּכּס צוֹנפִֿיג Ö´×™×  ש×מע צוֹנתעכּסת" - -#: grub-core/commands/syslinuxcfg.c:195 -msgid "Execute syslinux config in new context" -msgstr "עכּסעצוּתע שיִשלִינוּכּס צוֹנפִֿיג Ö´×™×  נעו צוֹנתעכּסת" - -#: grub-core/commands/syslinuxcfg.c:201 -msgid "Execute syslinux config in same context taking only menu entries" -msgstr "עכּסעצוּתע שיִשלִינוּכּס צוֹנפִֿיג Ö´×™×  ש×מע צוֹנתעכּסת ת××›Ö¼Ö´×™× ×’ וֹנליִ מענוּ ענתרִיעש" - -#: grub-core/commands/syslinuxcfg.c:207 -msgid "Execute syslinux config in new context taking only menu entries" -msgstr "עכּסעצוּתע שיִשלִינוּכּס צוֹנפִֿיג Ö´×™×  נעו צוֹנתעכּסת ת××›Ö¼Ö´×™× ×’ וֹנליִ מענוּ ענתרִיעש" - -#: grub-core/commands/terminal.c:90 -msgid "no terminal specified" -msgstr "נוֹ תערמִינ×ל שפּעצִיפִֿיעד" - -#: grub-core/commands/terminal.c:112 grub-core/commands/terminal.c:139 -#, c-format -msgid "terminal `%s' isn't found" -msgstr "תערמִינ×ל `%s' ִישנ'ת פֿוֹוּנד" - -#: grub-core/commands/terminal.c:244 -msgid "Active input terminals:" -msgstr "×צתִיבֿע ִינפּוּת תערמִינ×לש:" - -#: grub-core/commands/terminal.c:245 -msgid "Available input terminals:" -msgstr "×בֿ×ִיל×בּלע ִינפּוּת תערמִינ×לש:" - -#: grub-core/commands/terminal.c:261 -msgid "Active output terminals:" -msgstr "×צתִיבֿע וֹוּתפּוּת תערמִינ×לש:" - -#: grub-core/commands/terminal.c:262 -msgid "Available output terminals:" -msgstr "×בֿ×ִיל×בּלע וֹוּתפּוּת תערמִינ×לש:" - -#: grub-core/commands/terminal.c:271 grub-core/commands/terminal.c:276 -msgid "[--append|--remove] [TERMINAL1] [TERMINAL2] ..." -msgstr "[--×פּפּענד|--רעמוֹבֿע] [תערמִינ×ל1] [תערמִינ×ל2] ..." - -#: grub-core/commands/terminal.c:273 -msgid "List or select an input terminal." -msgstr "לִישת וֹר שעלעצת ××  ִינפּוּת תערמִינ×ל." - -#: grub-core/commands/terminal.c:278 -msgid "List or select an output terminal." -msgstr "לִישת וֹר שעלעצת ××  וֹוּתפּוּת תערמִינ×ל." - -#: grub-core/commands/test.c:444 -msgid "EXPRESSION ]" -msgstr "עכּספּרעששִיוֹנ ]" - -#: grub-core/commands/test.c:444 grub-core/commands/test.c:447 -msgid "Evaluate an expression." -msgstr "עבֿ×לוּ×תע ××  עכּספּרעששִיוֹנ." - -#: grub-core/commands/test.c:447 -msgid "EXPRESSION" -msgstr "עכּספּרעששִיוֹנ" - -#: grub-core/commands/testload.c:164 -msgid "Load the same file in multiple ways." -msgstr "לוֹ×ד תהע ש×מע פִֿילע Ö´×™×  מוּלתִיפּלע ו×יִש." - -#: grub-core/commands/testspeed.c:35 -msgid "Specify size for each read operation" -msgstr "שפּעצִיפֿיִ שִיזע פֿוֹר ×¢×צה רע×ד וֹפּער×תִיוֹנ" - -#: grub-core/commands/testspeed.c:58 -msgid "invalid block size" -msgstr "ִינבֿ×לִיד בּלוֹצכּ שִיזע" - -#: grub-core/commands/testspeed.c:80 -#, c-format -msgid "File size: %s\n" -msgstr "פִֿילע שִיזע: %s\n" - -#: grub-core/commands/testspeed.c:83 -#, c-format -msgid "Elapsed time: %d.%03d s \n" -msgstr "על×פּשעד תִימע: %d.%03d ש \n" - -#: grub-core/commands/testspeed.c:92 -#, c-format -msgid "Speed: %s \n" -msgstr "שפּעעד: %s \n" - -#: grub-core/commands/testspeed.c:107 -msgid "[-s SIZE] FILENAME" -msgstr "[-ש שִיזע] פִֿילענ×מע" - -#: grub-core/commands/testspeed.c:108 -msgid "Test file read speed." -msgstr "תעשת פִֿילע רע×ד שפּעעד." - -#: grub-core/commands/time.c:38 grub-core/script/execute.c:974 -msgid "no command is specified" -msgstr "נוֹ צוֹממ×נד ִיש שפּעצִיפִֿיעד" - -#: grub-core/commands/time.c:50 -#, c-format -msgid "Elapsed time: %d.%03d seconds \n" -msgstr "על×פּשעד תִימע: %d.%03d שעצוֹנדש \n" - -#: grub-core/commands/time.c:61 -msgid "COMMAND [ARGS]" -msgstr "צוֹממ×נד [×רגש]" - -#: grub-core/commands/time.c:62 -msgid "Measure time used by COMMAND" -msgstr "מע×שוּרע תִימע וּשעד בּיִ צוֹממ×נד" - -#: grub-core/commands/tr.c:33 -msgid "Translate to upper case." -msgstr "תר×נשל×תע תוֹ וּפּפּער צ×שע." - -#: grub-core/commands/tr.c:34 -msgid "Translate to lower case." -msgstr "תר×נשל×תע תוֹ לוֹוער צ×שע." - -#: grub-core/commands/tr.c:119 -msgid "[OPTIONS] [SET1] [SET2] [STRING]" -msgstr "[וֹפּתִיוֹנש] [שעת1] [שעת2] [שתרִינג]" - -#: grub-core/commands/tr.c:120 -msgid "Translate SET1 characters to SET2 in STRING." -msgstr "תר×נשל×תע שעת1 צה×ר×צתערש תוֹ שעת2 Ö´×™×  שתרִינג." - -#. TRANSLATORS: it's a command description. -#: grub-core/commands/true.c:50 -msgid "Do nothing, successfully." -msgstr "דוֹ נוֹתהִינג, שוּצצעששפֿוּלליִ." - -#. TRANSLATORS: it's a command description. -#: grub-core/commands/true.c:54 -msgid "Do nothing, unsuccessfully." -msgstr "דוֹ נוֹתהִינג, וּנשוּצצעששפֿוּלליִ." - -#: grub-core/commands/usbtest.c:221 -msgid "Test USB support." -msgstr "תעשת וּשבּ שוּפּפּוֹרת." - -#: grub-core/commands/verifiers.c:120 -#, c-format -msgid "verification requested but nobody cares: %s" -msgstr "בֿערִיפִֿיצ×תִיוֹנ רעקוּעשתעד בּוּת נוֹבּוֹדיִ צ×רעש: %s" - -#: grub-core/commands/verifiers.c:140 -msgid "big file signature isn't implemented yet" -msgstr "בִּיג פִֿילע שִיגנ×תוּרע ִישנ'ת ִימפּלעמענתעד יִעת" - -#: grub-core/commands/videoinfo.c:61 -msgid "Text-only " -msgstr "תעכּסת-וֹנליִ " - -#. TRANSLATORS: "Direct color" is a mode when the color components -#. are written dirrectly into memory. -#: grub-core/commands/videoinfo.c:66 -#, c-format -msgid "Direct color, mask: %d/%d/%d/%d pos: %d/%d/%d/%d" -msgstr "דִירעצת צוֹלוֹר, מ×שכּ: %d/%d/%d/%d פּוֹש: %d/%d/%d/%d" - -#. TRANSLATORS: In "paletted color" mode you write the index of the color -#. in the palette. Synonyms include "packed pixel". -#: grub-core/commands/videoinfo.c:78 -msgid "Paletted " -msgstr "פּ×לעתתעד " - -#: grub-core/commands/videoinfo.c:80 -msgid "YUV " -msgstr "יִוּבֿ " - -#. TRANSLATORS: "Planar" is the video memory where you have to write -#. in several different banks "plans" to control the different color -#. components of the same pixel. -#: grub-core/commands/videoinfo.c:85 -msgid "Planar " -msgstr "פּל×× ×ר " - -#: grub-core/commands/videoinfo.c:87 -msgid "Hercules " -msgstr "הערצוּלעש " - -#: grub-core/commands/videoinfo.c:89 -msgid "CGA " -msgstr "×¦×’× " - -#. TRANSLATORS: Non-chain 4 is a 256-color planar -#. (unchained) video memory mode. -#: grub-core/commands/videoinfo.c:93 -msgid "Non-chain 4 " -msgstr "נוֹנ-צה×Ö´×™×  4 " - -#: grub-core/commands/videoinfo.c:95 -msgid "Monochrome " -msgstr "מוֹנוֹצהרוֹמע " - -#: grub-core/commands/videoinfo.c:97 -msgid "Unknown video mode " -msgstr "וּנכּנוֹונ בִֿידעוֹ מוֹדע " - -#: grub-core/commands/videoinfo.c:111 -msgid " EDID checksum invalid" -msgstr " עדִיד צהעצכּשוּמ ִינבֿ×לִיד" - -#: grub-core/commands/videoinfo.c:116 -#, c-format -msgid " EDID version: %u.%u\n" -msgstr " עדִיד בֿערשִיוֹנ: %u.%u\n" - -#: grub-core/commands/videoinfo.c:120 -#, c-format -msgid " Preferred mode: %ux%u\n" -msgstr " פּרעפֿעררעד מוֹדע: %uכּס%u\n" - -#: grub-core/commands/videoinfo.c:123 -msgid " No preferred mode available\n" -msgstr " נוֹ פּרעפֿעררעד מוֹדע ×בֿ×ִיל×בּלע\n" - -#: grub-core/commands/videoinfo.c:146 grub-core/video/video.c:490 -#: grub-core/video/video.c:498 grub-core/video/video.c:509 -#: grub-core/video/video.c:520 grub-core/video/video.c:528 -#, c-format -msgid "invalid video mode specification `%s'" -msgstr "ִינבֿ×לִיד בִֿידעוֹ מוֹדע שפּעצִיפִֿיצ×תִיוֹנ `%s'" - -#: grub-core/commands/videoinfo.c:168 -msgid "List of supported video modes:" -msgstr "לִישת וֹפֿ שוּפּפּוֹרתעד בִֿידעוֹ מוֹדעש:" - -#: grub-core/commands/videoinfo.c:169 -msgid "Legend: mask/position=red/green/blue/reserved" -msgstr "לעגענד: מ×שכּ/פּוֹשִיתִיוֹנ=רעד/גרעענ/בּלוּע/רעשערבֿעד" - -#: grub-core/commands/videoinfo.c:176 -#, c-format -msgid "Adapter `%s':\n" -msgstr "×ד×פּתער `%s':\n" - -#: grub-core/commands/videoinfo.c:180 -msgid " No info available" -msgstr " נוֹ ִינפֿוֹ ×בֿ×ִיל×בּלע" - -#: grub-core/commands/videoinfo.c:198 -msgid " Failed to initialize video adapter" -msgstr " פֿ×ִילעד תוֹ ִינִיתִי×לִיזע בִֿידעוֹ ×ד×פּתער" - -#. TRANSLATORS: "x" has to be entered in, -#. like an identifier, so please don't -#. use better Unicode codepoints. -#: grub-core/commands/videoinfo.c:239 grub-core/commands/videoinfo.c:248 -msgid "[WxH[xD]]" -msgstr "[וכּסה[כּסד]]" - -#: grub-core/commands/videoinfo.c:240 grub-core/commands/videoinfo.c:249 -msgid "" -"List available video modes. If resolution is given show only modes matching " -"it." -msgstr "" -"לִישת ×בֿ×ִיל×בּלע בִֿידעוֹ מוֹדעש. ִיפֿ רעשוֹלוּתִיוֹנ ִיש גִיבֿענ שהוֹו וֹנליִ מוֹדעש מ×תצהִינג Ö´" -"ית." - -#. TRANSLATORS: "x" has to be entered in, -#. like an identifier, so please don't -#. use better Unicode codepoints. -#: grub-core/commands/videotest.c:225 -msgid "[WxH]" -msgstr "[וכּסה]" - -#. TRANSLATORS: Here, on the other hand, it's -#. nicer to use unicode cross instead of x. -#: grub-core/commands/videotest.c:228 -msgid "Test video subsystem in mode WxH." -msgstr "תעשת בִֿידעוֹ שוּבּשיִשתעמ Ö´×™×  מוֹדע וכּסה." - -#: grub-core/commands/videotest.c:231 -msgid "Test video subsystem." -msgstr "תעשת בִֿידעוֹ שוּבּשיִשתעמ." - -#: grub-core/commands/xen/lsxen.c:80 grub-core/commands/xen/lsxen.c:82 -msgid "[DIR]" -msgstr "[דִיר]" - -#: grub-core/commands/xen/lsxen.c:81 grub-core/commands/xen/lsxen.c:83 -msgid "List Xen storage." -msgstr "לִישת כּסענ שתוֹר××’×¢." - -#. TRANSLATORS: GRUBUUID stands for "filesystem -#. UUID as used in GRUB". -#: grub-core/commands/xnu_uuid.c:110 -msgid "[-l] GRUBUUID [VARNAME]" -msgstr "[-ל] גרוּבּוּוִּיד [בֿ×רנ×מע]" - -#: grub-core/commands/xnu_uuid.c:111 -msgid "" -"Transform 64-bit UUID to format suitable for XNU. If -l is given keep it " -"lowercase as done by blkid." -msgstr "" -"תר×נשפֿוֹרמ 64-בִּית וּוִּיד תוֹ פֿוֹרמ×ת שוִּית×בּלע פֿוֹר כּסנוּ. ִיפֿ -ל ִיש גִיבֿענ כּעעפּ ִית " -"לוֹוערצ×שע ×ש דוֹנע בּיִ בּלכִּיד." - -#: grub-core/disk/arc/arcdisk.c:248 grub-core/disk/efi/efidisk.c:603 -#: grub-core/disk/i386/pc/biosdisk.c:498 grub-core/disk/i386/pc/biosdisk.c:543 -#: grub-core/disk/ieee1275/nand.c:198 grub-core/disk/ieee1275/obdisk.c:527 -#: grub-core/disk/ieee1275/ofdisk.c:586 -#, c-format -msgid "failure reading sector 0x%llx from `%s'" -msgstr "פֿ×ִילוּרע רע×דִינג שעצתוֹר 0כּס%llx פֿרוֹמ `%s'" - -#: grub-core/disk/arc/arcdisk.c:284 grub-core/disk/efi/efidisk.c:626 -#: grub-core/disk/i386/pc/biosdisk.c:548 grub-core/disk/ieee1275/ofdisk.c:606 -#, c-format -msgid "failure writing sector 0x%llx to `%s'" -msgstr "פֿ×ִילוּרע ורִיתִינג שעצתוֹר 0כּס%llx תוֹ `%s'" - -#: grub-core/disk/cryptodisk.c:40 -msgid "Mount by UUID." -msgstr "מוֹוּנת בּיִ וּוִּיד." - -#. TRANSLATORS: It's still restricted to cryptodisks only. -#: grub-core/disk/cryptodisk.c:42 -msgid "Mount all." -msgstr "מוֹוּנת ×לל." - -#: grub-core/disk/cryptodisk.c:43 -msgid "Mount all volumes with `boot' flag set." -msgstr "מוֹוּנת ×לל בֿוֹלוּמעש וִיתה `בּוֹוֹת' פֿל××’ שעת." - -#. TRANSLATORS: The first %s is the file being looked at, the second %s is -#. the error message. -#: grub-core/disk/cryptodisk.c:526 grub-core/kern/emu/hostdisk.c:152 -#: grub-core/kern/emu/hostdisk.c:262 grub-core/kern/emu/hostdisk.c:434 -#: grub-core/kern/emu/misc.c:168 grub-core/kern/emu/misc.c:174 -#: grub-core/kern/emu/misc.c:196 grub-core/osdep/bsd/getroot.c:92 -#: grub-core/osdep/bsd/getroot.c:168 grub-core/osdep/hurd/getroot.c:68 -#: grub-core/osdep/linux/blocklist.c:65 grub-core/osdep/linux/getroot.c:150 -#: grub-core/osdep/linux/hostdisk.c:194 grub-core/osdep/linux/hostdisk.c:421 -#: grub-core/osdep/linux/ofpath.c:417 grub-core/osdep/linux/ofpath.c:422 -#: grub-core/osdep/linux/ofpath.c:517 grub-core/osdep/linux/ofpath.c:530 -#: grub-core/osdep/sun/getroot.c:110 grub-core/osdep/windows/blocklist.c:98 -#: grub-core/tests/video_checksum.c:279 util/editenv.c:46 util/glue-efi.c:115 -#: util/glue-efi.c:120 util/glue-efi.c:130 util/grub-editenv.c:138 -#: util/grub-editenv.c:192 util/grub-file.c:83 util/grub-fstest.c:128 -#: util/grub-fstest.c:568 util/grub-install-common.c:92 -#: util/grub-install-common.c:94 util/grub-install-common.c:101 -#: util/grub-install-common.c:529 util/grub-menulst2cfg.c:53 -#: util/grub-menulst2cfg.c:68 util/grub-mkimage.c:292 util/grub-mklayout.c:504 -#: util/grub-mklayout.c:516 util/grub-mknetdir.c:133 util/grub-mknetdir.c:151 -#: util/grub-mkrescue.c:627 util/grub-mkrescue.c:631 util/grub-mkrescue.c:879 -#: util/grub-mkrescue.c:883 util/grub-mkstandalone.c:253 util/grub-mount.c:498 -#: util/grub-render-label.c:169 util/grub-script-check.c:175 -#: util/grub-syslinux2cfg.c:181 util/grub-syslinux2cfg.c:191 -#: util/grub-syslinux2cfg.c:212 util/grub-syslinux2cfg.c:228 util/misc.c:91 -#: util/render-label.c:76 util/render-label.c:163 util/render-label.c:174 -#: util/resolve.c:246 util/setup.c:783 -#, c-format -msgid "cannot open `%s': %s" -msgstr "צ×ננוֹת וֹפּענ `%s': %s" - -#: grub-core/disk/cryptodisk.c:583 grub-core/disk/cryptodisk.c:628 -#: grub-core/kern/emu/hostdisk.c:270 grub-core/kern/emu/hostfs.c:142 -#: grub-core/osdep/linux/hostdisk.c:456 util/grub-editenv.c:143 -#: util/grub-editenv.c:149 util/grub-fstest.c:320 util/misc.c:111 -#, c-format -msgid "cannot seek `%s': %s" -msgstr "צ×ננוֹת שעעכּ `%s': %s" - -#: grub-core/disk/cryptodisk.c:1144 -msgid "SOURCE|-u UUID|-a|-b" -msgstr "שוֹוּרצע|-וּ וּוִּיד|-×|-בּ" - -#: grub-core/disk/cryptodisk.c:1145 -msgid "Mount a crypto device." -msgstr "מוֹוּנת × ×¦×¨×™Ö´×¤Ö¼×ª×•Ö¹ דעבִֿיצע." - -#. TRANSLATORS: This message kicks in during the detection of -#. which modules needs to be included in core image. This happens -#. in the case of degraded RAID and means that autodetection may -#. fail to include some of modules. It's an installation time -#. message, not runtime message. -#: grub-core/disk/diskfilter.c:343 grub-core/disk/diskfilter.c:376 -#, c-format -msgid "" -"Couldn't find physical volume `%s'. Some modules may be missing from core " -"image." -msgstr "" -"צוֹוּלדנ'ת פִֿינד פּהיִשִיצ×ל בֿוֹלוּמע `%s'. שוֹמע מוֹדוּלעש מ××™Ö´ בּע מִיששִינג פֿרוֹמ צוֹרע Ö´" -"ימ××’×¢." - -#: grub-core/disk/diskfilter.c:480 -#, c-format -msgid "physical volume %s not found" -msgstr "פּהיִשִיצ×ל בֿוֹלוּמע %s נוֹת פֿוֹוּנד" - -#: grub-core/disk/efi/efidisk.c:600 grub-core/disk/efi/efidisk.c:623 -#, c-format -msgid "no media in `%s'" -msgstr "נוֹ ×ž×¢×“Ö´×™× Ö´×™×  `%s'" - -#: grub-core/disk/geli.c:75 -msgid "Couldn't load sha256" -msgstr "צוֹוּלדנ'ת לוֹ×ד שה×256" - -#: grub-core/disk/geli.c:85 -msgid "Couldn't load sha512" -msgstr "צוֹוּלדנ'ת לוֹ×ד שה×512" - -#: grub-core/disk/geli.c:216 grub-core/disk/geli.c:220 -msgid "couldn't read ELI metadata" -msgstr "צוֹוּלדנ'ת רע×ד עלִי מעת×ד×ת×" - -#: grub-core/disk/geli.c:231 -msgid "wrong ELI magic or version" -msgstr "ורוֹנג עלִי מ×גִיצ וֹר בֿערשִיוֹנ" - -#: grub-core/disk/geli.c:435 grub-core/disk/luks.c:329 -msgid "Attempting to decrypt master key..." -msgstr "×תתעמפּתִינג תוֹ דעצריִפּת מ×שתער ×›Ö¼×¢×™Ö´..." - -#: grub-core/disk/geli.c:441 grub-core/disk/luks.c:347 -#, c-format -msgid "Enter passphrase for %s%s%s (%s): " -msgstr "ענתער פּ×ששפּהר×שע פֿוֹר %s%s%s (%s): " - -#. TRANSLATORS: It's a cryptographic key slot: one element of an array -#. where each element is either empty or holds a key. -#: grub-core/disk/geli.c:530 grub-core/disk/luks.c:451 -#, c-format -msgid "Slot %d opened\n" -msgstr "שלוֹת %d וֹפּענעד\n" - -#: grub-core/disk/i386/pc/biosdisk.c:470 grub-core/disk/i386/pc/biosdisk.c:524 -#: grub-core/disk/i386/pc/biosdisk.c:534 grub-core/kern/disk_common.c:47 -#, c-format -msgid "attempt to read or write outside of disk `%s'" -msgstr "×תתעמפּת תוֹ רע×ד וֹר ורִיתע וֹוּתשִידע וֹפֿ דִישכּ `%s'" - -#: grub-core/disk/i386/pc/biosdisk.c:491 grub-core/disk/i386/pc/biosdisk.c:611 -#: grub-core/disk/scsi.c:726 -msgid "cannot write to CD-ROM" -msgstr "צ×ננוֹת ורִיתע תוֹ צד-רוֹמ" - -#: grub-core/disk/i386/pc/biosdisk.c:662 -msgid "" -"Native disk drivers are in use. Refusing to use firmware disk interface." -msgstr "" -"× ×תִיבֿע דִישכּ דרִיבֿערש ×רע Ö´×™×  וּשע. רעפֿוּשִינג תוֹ וּשע פִֿירמו×רע דִישכּ ִינתערפֿ×צע." - -#. TRANSLATORS: it's a partition for embedding, -#. not a partition embed into something. GRUB -#. install tools put core.img into a place -#. usable for bootloaders (called generically -#. "embedding zone") and this operation is -#. called "embedding". -#: grub-core/disk/ldm.c:1015 -msgid "your LDM Embedding Partition is too small; embedding won't be possible" -msgstr "יִוֹוּר לדמ עמבּעדדִינג פּ×רתִיתִיוֹנ ִיש תוֹוֹ שמ×לל; עמבּעדדִינג ווֹנ'ת בּע פּוֹששִיבּלע" - -#. TRANSLATORS: it's a partition for embedding, -#. not a partition embed into something. -#: grub-core/disk/ldm.c:1033 -msgid "this LDM has no Embedding Partition; embedding won't be possible" -msgstr "תהִיש לדמ ×”×ש נוֹ עמבּעדדִינג פּ×רתִיתִיוֹנ; עמבּעדדִינג ווֹנ'ת בּע פּוֹששִיבּלע" - -#. TRANSLATORS: The disk is simply removed from the list of available ones, -#. not wiped, avoid to scare user. -#: grub-core/disk/loopback.c:45 -msgid "Delete the specified loopback drive." -msgstr "דעלעתע תהע שפּעצִיפִֿיעד לוֹוֹפּבּ×צכּ דרִיבֿע." - -#: grub-core/disk/loopback.c:237 -msgid "[-d] DEVICENAME FILE." -msgstr "[-ד] דעבִֿיצענ×מע פִֿילע." - -#. TRANSLATORS: The file itself is not destroyed -#. or transformed into drive. -#: grub-core/disk/loopback.c:240 -msgid "Make a virtual drive from a file." -msgstr "מ××›Ö¼×¢ × ×‘Ö¿Ö´×™×¨×ª×•Ö¼×ל דרִיבֿע פֿרוֹמ × ×¤Ö¿Ö´×™×œ×¢." - -#: grub-core/efiemu/i386/loadcore32.c:111 -#: grub-core/efiemu/i386/loadcore64.c:125 grub-core/kern/arm/dl.c:256 -#: grub-core/kern/arm64/dl.c:187 grub-core/kern/i386/dl.c:75 -#: grub-core/kern/ia64/dl.c:140 grub-core/kern/mips/dl.c:258 -#: grub-core/kern/powerpc/dl.c:163 grub-core/kern/riscv/dl.c:334 -#: grub-core/kern/sparc64/dl.c:180 grub-core/kern/x86_64/dl.c:110 -#: util/grub-mkimagexx.c:756 util/grub-mkimagexx.c:881 -#: util/grub-mkimagexx.c:945 util/grub-mkimagexx.c:1026 -#: util/grub-mkimagexx.c:1120 util/grub-mkimagexx.c:1222 -#: util/grub-mkimagexx.c:1413 util/grub-mkimagexx.c:1628 -#: util/grub-mkimagexx.c:1665 util/grub-mkimagexx.c:1697 -#: util/grub-mkimagexx.c:1767 util/grub-mkimagexx.c:1797 -#, c-format -msgid "relocation 0x%x is not implemented yet" -msgstr "רעלוֹצ×תִיוֹנ 0כּס%x ִיש נוֹת ִימפּלעמענתעד יִעת" - -#: grub-core/efiemu/loadcore.c:200 grub-core/efiemu/loadcore.c:237 -#: grub-core/loader/i386/bsdXX.c:317 util/grub-mkimagexx.c:2360 -msgid "no symbol table" -msgstr "נוֹ שיִמבּוֹל ת×בּלע" - -#: grub-core/efiemu/loadcore.c:346 grub-core/kern/dl.c:609 -#: grub-core/loader/ia64/efi/linux.c:345 grub-core/loader/mips/linux.c:248 -#: grub-core/loader/multiboot_elfxx.c:76 -#: grub-core/loader/powerpc/ieee1275/linux.c:280 -#: grub-core/loader/sparc64/ieee1275/linux.c:320 -msgid "this ELF file is not of the right type" -msgstr "תהִיש עלפֿ פִֿילע ִיש נוֹת וֹפֿ תהע רִיגהת תיִפּע" - -#: grub-core/efiemu/main.c:313 -msgid "Load and initialize EFI emulator." -msgstr "לוֹ×ד ×נד ִינִיתִי×לִיזע עפִֿי עמוּל×תוֹר." - -#: grub-core/efiemu/main.c:317 -msgid "Finalize loading of EFI emulator." -msgstr "פִֿינ×לִיזע לוֹ×דִינג וֹפֿ עפִֿי עמוּל×תוֹר." - -#: grub-core/efiemu/main.c:320 -msgid "Unload EFI emulator." -msgstr "וּנלוֹ×ד עפִֿי עמוּל×תוֹר." - -#: grub-core/efiemu/symbols.c:92 grub-core/kern/dl.c:376 -#, c-format -msgid "symbol `%s' not found" -msgstr "שיִמבּוֹל `%s' נוֹת פֿוֹוּנד" - -#: grub-core/font/font_cmd.c:52 -msgid "Loaded fonts:" -msgstr "לוֹ×דעד פֿוֹנתש:" - -#: grub-core/font/font_cmd.c:74 -msgid "FILE..." -msgstr "פִֿילע..." - -#: grub-core/font/font_cmd.c:75 -msgid "Specify one or more font files to load." -msgstr "שפּעצִיפֿיִ וֹנע וֹר מוֹרע פֿוֹנת פִֿילעש תוֹ לוֹ×ד." - -#: grub-core/font/font_cmd.c:78 -msgid "List the loaded fonts." -msgstr "לִישת תהע לוֹ×דעד פֿוֹנתש." - -#: grub-core/fs/archelp.c:216 grub-core/fs/archelp.c:278 -#: grub-core/fs/btrfs.c:1815 grub-core/fs/fshelp.c:227 grub-core/fs/jfs.c:736 -#: grub-core/fs/minix.c:369 grub-core/fs/ufs.c:454 -msgid "too deep nesting of symlinks" -msgstr "תוֹוֹ דעעפּ נעשתִינג וֹפֿ שיִמלִינכּש" - -#: grub-core/fs/bfs.c:228 grub-core/fs/fshelp.c:368 grub-core/fs/minix.c:270 -#: grub-core/kern/file.c:156 -msgid "attempt to read past the end of file" -msgstr "×תתעמפּת תוֹ רע×ד פּ×שת תהע ענד וֹפֿ פִֿילע" - -#: grub-core/fs/btrfs.c:1698 grub-core/fs/btrfs.c:1957 -#: grub-core/fs/fshelp.c:189 grub-core/fs/fshelp.c:309 grub-core/fs/jfs.c:431 -#: grub-core/fs/minix.c:414 grub-core/fs/minix.c:562 -#: grub-core/fs/reiserfs.c:732 grub-core/fs/ufs.c:531 grub-core/fs/ufs.c:671 -#: grub-core/fs/zfs/zfs.c:2831 grub-core/fs/zfs/zfs.c:4247 -msgid "not a directory" -msgstr "נוֹת × ×“Ö´×™×¨×¢×¦×ª×•Ö¹×¨×™Ö´" - -#: grub-core/fs/btrfs.c:2063 grub-core/fs/fshelp.c:307 grub-core/fs/jfs.c:835 -#: grub-core/fs/zfs/zfs.c:3801 -msgid "not a regular file" -msgstr "נוֹת × ×¨×¢×’×•Ö¼×œ×ר פִֿילע" - -#: grub-core/fs/btrfs.c:2157 grub-core/fs/zfs/zfs.c:4333 -#: grub-core/partmap/msdos.c:400 -msgid "your core.img is unusually large. It won't fit in the embedding area" -msgstr "יִוֹוּר צוֹרע.ִימג ִיש וּנוּשוּ×לליִ ל×רגע. ִית ווֹנ'ת פִֿית Ö´×™×  תהע עמבּעדדִינג ×רע×" - -#: grub-core/fs/fshelp.c:281 grub-core/fs/minix.c:630 grub-core/fs/ufs.c:661 -#: grub-core/fs/ufs.c:757 grub-core/kern/fs.c:168 grub-core/kern/fs.c:180 -#, c-format -msgid "invalid file name `%s'" -msgstr "ִינבֿ×לִיד פִֿילע × ×מע `%s'" - -#: grub-core/fs/zfs/zfs.c:453 -msgid "checksum verification failed" -msgstr "צהעצכּשוּמ בֿערִיפִֿיצ×תִיוֹנ פֿ×ִילעד" - -#: grub-core/fs/zfs/zfs.c:1465 -msgid "couldn't find a necessary member device of multi-device filesystem" -msgstr "צוֹוּלדנ'ת פִֿינד × × ×¢×¦×¢×©×©×ריִ מעמבּער דעבִֿיצע וֹפֿ מוּלתִי-דעבִֿיצע פִֿילעשיִשתעמ" - -#: grub-core/fs/zfs/zfscrypt.c:292 -msgid "no decryption key available" -msgstr "נוֹ דעצריִפּתִיוֹנ ×›Ö¼×¢×™Ö´ ×בֿ×ִיל×בּלע" - -#: grub-core/fs/zfs/zfscrypt.c:304 -msgid "MAC verification failed" -msgstr "מ×צ בֿערִיפִֿיצ×תִיוֹנ פֿ×ִילעד" - -#: grub-core/fs/zfs/zfscrypt.c:413 -msgid "Assume input is raw." -msgstr "×ששוּמע ִינפּוּת ִיש ר×ו." - -#: grub-core/fs/zfs/zfscrypt.c:414 -msgid "Assume input is hex." -msgstr "×ששוּמע ִינפּוּת ִיש העכּס." - -#: grub-core/fs/zfs/zfscrypt.c:415 -msgid "Assume input is passphrase." -msgstr "×ששוּמע ִינפּוּת ִיש פּ×ששפּהר×שע." - -#: grub-core/fs/zfs/zfscrypt.c:437 util/grub-fstest.c:553 util/grub-mount.c:483 -msgid "Enter ZFS password: " -msgstr "ענתער זפֿש פּ×ששווֹרד: " - -#: grub-core/fs/zfs/zfscrypt.c:476 -msgid "[-h|-p|-r] [FILE]" -msgstr "[-×”|-פּ|-ר] [פִֿילע]" - -#: grub-core/fs/zfs/zfscrypt.c:477 -msgid "Import ZFS wrapping key stored in FILE." -msgstr "ִימפּוֹרת זפֿש ור×פּפִּינג ×›Ö¼×¢×™Ö´ שתוֹרעד Ö´×™×  פִֿילע." - -#: grub-core/fs/zfs/zfsinfo.c:51 -msgid "Virtual device is removed" -msgstr "בִֿירתוּ×ל דעבִֿיצע ִיש רעמוֹבֿעד" - -#: grub-core/fs/zfs/zfsinfo.c:57 -msgid "Virtual device is faulted" -msgstr "בִֿירתוּ×ל דעבִֿיצע ִיש פֿ×וּלתעד" - -#: grub-core/fs/zfs/zfsinfo.c:63 -msgid "Virtual device is offline" -msgstr "בִֿירתוּ×ל דעבִֿיצע ִיש וֹפֿפֿלִינע" - -#. TRANSLATORS: degraded doesn't mean broken but that some of -#. component are missing but virtual device as whole is still usable. -#: grub-core/fs/zfs/zfsinfo.c:70 -msgid "Virtual device is degraded" -msgstr "בִֿירתוּ×ל דעבִֿיצע ִיש דעגר×דעד" - -#: grub-core/fs/zfs/zfsinfo.c:73 -msgid "Virtual device is online" -msgstr "בִֿירתוּ×ל דעבִֿיצע ִיש וֹנלִינע" - -#: grub-core/fs/zfs/zfsinfo.c:89 -msgid "Incorrect virtual device: no type available" -msgstr "ִינצוֹררעצת בִֿירתוּ×ל דעבִֿיצע: נוֹ תיִפּע ×בֿ×ִיל×בּלע" - -#. TRANSLATORS: The virtual devices form a tree (in graph-theoretical -#. sense). The nodes like mirror or raidz have children: member devices. -#. The "real" devices which actually store data are called "leafs" -#. (again borrowed from graph theory) and can be either disks -#. (or partitions) or files. -#: grub-core/fs/zfs/zfsinfo.c:105 -msgid "Leaf virtual device (file or disk)" -msgstr "לע×פֿ בִֿירתוּ×ל דעבִֿיצע (פִֿילע וֹר דִישכּ)" - -#: grub-core/fs/zfs/zfsinfo.c:113 -msgid "Bootpath: unavailable\n" -msgstr "בּוֹוֹתפּ×תה: וּנ×בֿ×ִיל×בּלע\n" - -#: grub-core/fs/zfs/zfsinfo.c:115 -#, c-format -msgid "Bootpath: %s\n" -msgstr "בּוֹוֹתפּ×תה: %s\n" - -#: grub-core/fs/zfs/zfsinfo.c:120 -msgid "Path: unavailable" -msgstr "פּ×תה: וּנ×בֿ×ִיל×בּלע" - -#: grub-core/fs/zfs/zfsinfo.c:122 -#, c-format -msgid "Path: %s\n" -msgstr "פּ×תה: %s\n" - -#: grub-core/fs/zfs/zfsinfo.c:127 -msgid "Devid: unavailable" -msgstr "דעבִֿיד: וּנ×בֿ×ִיל×בּלע" - -#: grub-core/fs/zfs/zfsinfo.c:129 -#, c-format -msgid "Devid: %s\n" -msgstr "דעבִֿיד: %s\n" - -#: grub-core/fs/zfs/zfsinfo.c:148 -msgid "This VDEV is a mirror" -msgstr "תהִיש בֿדעבֿ ִיש × ×žÖ´×™×¨×¨×•Ö¹×¨" - -#: grub-core/fs/zfs/zfsinfo.c:153 -#, c-format -msgid "This VDEV is a RAIDZ%llu\n" -msgstr "תהִיש בֿדעבֿ ִיש × ×¨×ִידז%llu\n" - -#: grub-core/fs/zfs/zfsinfo.c:158 -msgid "Incorrect VDEV" -msgstr "ִינצוֹררעצת בֿדעבֿ" - -#: grub-core/fs/zfs/zfsinfo.c:161 -#, c-format -msgid "VDEV with %d children\n" -msgstr "בֿדעבֿ וִיתה %d צהִילדרענ\n" - -#. TRANSLATORS: it's the element carying the number %d, not -#. total element number. And the number itself is fine, -#. only the element isn't. -#. -#: grub-core/fs/zfs/zfsinfo.c:177 -#, c-format -msgid "VDEV element number %d isn't correct\n" -msgstr "בֿדעבֿ עלעמענת נוּמבּער %d ִישנ'ת צוֹררעצת\n" - -#. TRANSLATORS: it's the element carying the number %d, not -#. total element number. This is used in enumeration -#. "Element number 1", "Element number 2", ... -#: grub-core/fs/zfs/zfsinfo.c:184 -#, c-format -msgid "VDEV element number %d:\n" -msgstr "בֿדעבֿ עלעמענת נוּמבּער %d:\n" - -#: grub-core/fs/zfs/zfsinfo.c:193 -#, c-format -msgid "Unknown virtual device type: %s\n" -msgstr "וּנכּנוֹונ בִֿירתוּ×ל דעבִֿיצע תיִפּע: %s\n" - -#. TRANSLATORS: Here we speak about ZFS pools it's semi-marketing, -#. semi-technical term by Sun/Oracle and should be translated in sync with -#. other ZFS-related software and documentation. -#: grub-core/fs/zfs/zfsinfo.c:254 -msgid "Pool state: active" -msgstr "פּוֹוֹל שת×תע: ×צתִיבֿע" - -#: grub-core/fs/zfs/zfsinfo.c:255 -msgid "Pool state: exported" -msgstr "פּוֹוֹל שת×תע: עכּספּוֹרתעד" - -#: grub-core/fs/zfs/zfsinfo.c:256 -msgid "Pool state: destroyed" -msgstr "פּוֹוֹל שת×תע: דעשתרוֹיִעד" - -#: grub-core/fs/zfs/zfsinfo.c:257 -msgid "Pool state: reserved for hot spare" -msgstr "פּוֹוֹל שת×תע: רעשערבֿעד פֿוֹר הוֹת שפּ×רע" - -#: grub-core/fs/zfs/zfsinfo.c:258 -msgid "Pool state: level 2 ARC device" -msgstr "פּוֹוֹל שת×תע: לעבֿעל 2 ×רצ דעבִֿיצע" - -#: grub-core/fs/zfs/zfsinfo.c:259 -msgid "Pool state: uninitialized" -msgstr "פּוֹוֹל שת×תע: וּנִינִיתִי×לִיזעד" - -#: grub-core/fs/zfs/zfsinfo.c:260 -msgid "Pool state: unavailable" -msgstr "פּוֹוֹל שת×תע: וּנ×בֿ×ִיל×בּלע" - -#: grub-core/fs/zfs/zfsinfo.c:261 -msgid "Pool state: potentially active" -msgstr "פּוֹוֹל שת×תע: פּוֹתענתִי×לליִ ×צתִיבֿע" - -#: grub-core/fs/zfs/zfsinfo.c:306 -msgid "Pool name: unavailable" -msgstr "פּוֹוֹל × ×מע: וּנ×בֿ×ִיל×בּלע" - -#: grub-core/fs/zfs/zfsinfo.c:308 -#, c-format -msgid "Pool name: %s\n" -msgstr "פּוֹוֹל × ×מע: %s\n" - -#: grub-core/fs/zfs/zfsinfo.c:313 -msgid "Pool GUID: unavailable" -msgstr "פּוֹוֹל גוִּיד: וּנ×בֿ×ִיל×בּלע" - -#: grub-core/fs/zfs/zfsinfo.c:315 -#, c-format -msgid "Pool GUID: %016llx\n" -msgstr "פּוֹוֹל גוִּיד: %016llx\n" - -#: grub-core/fs/zfs/zfsinfo.c:320 -msgid "Unable to retrieve pool state" -msgstr "וּנ×בּלע תוֹ רעתרִיעבֿע פּוֹוֹל שת×תע" - -#: grub-core/fs/zfs/zfsinfo.c:322 -msgid "Unrecognized pool state" -msgstr "וּנרעצוֹגנִיזעד פּוֹוֹל שת×תע" - -#. TRANSLATORS: There are undetermined number of virtual devices -#. in a device tree, not just one. -#. -#: grub-core/fs/zfs/zfsinfo.c:332 -msgid "No virtual device tree available" -msgstr "נוֹ בִֿירתוּ×ל דעבִֿיצע תרעע ×בֿ×ִיל×בּלע" - -#: grub-core/fs/zfs/zfsinfo.c:431 -msgid "Print ZFS info about DEVICE." -msgstr "פּרִינת זפֿש ִינפֿוֹ ×בּוֹוּת דעבִֿיצע." - -#: grub-core/fs/zfs/zfsinfo.c:433 -msgid "FILESYSTEM [VARIABLE]" -msgstr "פִֿילעשיִשתעמ [בֿ×רִי×בּלע]" - -#: grub-core/fs/zfs/zfsinfo.c:434 -msgid "Print ZFS-BOOTFSOBJ or store it into VARIABLE" -msgstr "פּרִינת זפֿש-בּוֹוֹתפֿשוֹבּי וֹר שתוֹרע ִית ִינתוֹ בֿ×רִי×בּלע" - -#. TRANSLATORS: at this position GRUB waits for the user to do an action -#. in remote debugger, namely to tell it to establish connection. -#: grub-core/gdb/gdb.c:48 -msgid "Now connect the remote debugger, please." -msgstr "נוֹו צוֹננעצת תהע רעמוֹתע דעבּוּגגער, פּלע×שע." - -#. TRANSLATORS: GDB stub is a small part of -#. GDB functionality running on local host -#. which allows remote debugger to -#. connect to it. -#: grub-core/gdb/gdb.c:84 -msgid "Start GDB stub on given port" -msgstr "שת×רת גדבּ שתוּבּ וֹנ גִיבֿענ פּוֹרת" - -#. TRANSLATORS: this refers to triggering -#. a breakpoint so that the user will land -#. into GDB. -#: grub-core/gdb/gdb.c:89 -msgid "Break into GDB" -msgstr "בּרע××›Ö¼ ִינתוֹ גדבּ" - -#: grub-core/gdb/gdb.c:91 -msgid "Stop GDB stub" -msgstr "שתוֹפּ גדבּ שתוּבּ" - -#: grub-core/gettext/gettext.c:85 -msgid "premature end of file" -msgstr "פּרעמ×תוּרע ענד וֹפֿ פִֿילע" - -#. TRANSLATORS: It refers to passing the string through gettext. -#. So it's "translate" in the same meaning as in what you're -#. doing now. -#. -#: grub-core/gettext/gettext.c:525 -msgid "Translates the string with the current settings." -msgstr "תר×נשל×תעש תהע שתרִינג וִיתה תהע צוּררענת שעתתִינגש." - -#: grub-core/gfxmenu/gui_label.c:186 grub-core/normal/menu_text.c:184 -msgid "" -"Press enter to boot the selected OS, `e' to edit the commands before booting " -"or `c' for a command-line. ESC to return previous menu." -msgstr "" -"פּרעשש ענתער תוֹ בּוֹוֹת תהע שעלעצתעד וֹש, `×¢' תוֹ עדִית תהע צוֹממ×נדש בּעפֿוֹרע בּוֹוֹתִינג " -"וֹר `צ' פֿוֹר × ×¦×•Ö¹×ž×ž×נד-לִינע. עשצ תוֹ רעתוּרנ פּרעבִֿיוֹוּש מענוּ." - -#: grub-core/gfxmenu/gui_label.c:190 grub-core/normal/menu_text.c:192 -msgid "" -"Press enter to boot the selected OS, `e' to edit the commands before booting " -"or `c' for a command-line." -msgstr "" -"פּרעשש ענתער תוֹ בּוֹוֹת תהע שעלעצתעד וֹש, `×¢' תוֹ עדִית תהע צוֹממ×נדש בּעפֿוֹרע בּוֹוֹתִינג " -"וֹר `צ' פֿוֹר × ×¦×•Ö¹×ž×ž×נד-לִינע." - -#: grub-core/gfxmenu/gui_label.c:194 -msgid "enter: boot, `e': options, `c': cmd-line" -msgstr "ענתער: בּוֹוֹת, `×¢': וֹפּתִיוֹנש, `צ': צמד-לִינע" - -#: grub-core/gfxmenu/gui_progress_bar.c:339 grub-core/normal/menu_text.c:446 -#, c-format -msgid "The highlighted entry will be executed automatically in %ds." -msgstr "תהע הִיגהלִיגהתעד ענתריִ וִילל בּע עכּסעצוּתעד ×וּתוֹמ×תִיצ×לליִ Ö´×™×  %dש." - -#. TRANSLATORS: 's' stands for seconds. -#. It's a standalone timeout notification. -#. Please use the short form in your language. -#: grub-core/gfxmenu/gui_progress_bar.c:344 -#, c-format -msgid "%ds remaining." -msgstr "%dש רעמ×Ö´×™× Ö´×™× ×’." - -#. TRANSLATORS: 's' stands for seconds. -#. It's a standalone timeout notification. -#. Please use the shortest form available in you language. -#: grub-core/gfxmenu/gui_progress_bar.c:349 grub-core/normal/menu_text.c:444 -#: grub-core/normal/menu_text.c:462 -#, c-format -msgid "%ds" -msgstr "%dש" - -#: grub-core/gfxmenu/view.c:103 -msgid "GRUB Boot Menu" -msgstr "גרוּבּ בּוֹוֹת מענוּ" - -#: grub-core/hello/hello.c:36 -msgid "Hello World" -msgstr "העללוֹ ווֹרלד" - -#: grub-core/hello/hello.c:45 -msgid "Say `Hello World'." -msgstr "ש××™Ö´ `העללוֹ ווֹרלד'." - -#: grub-core/io/gzio.c:409 grub-core/kern/file.c:210 -msgid "attempt to seek outside of the file" -msgstr "×תתעמפּת תוֹ שעעכּ וֹוּתשִידע וֹפֿ תהע פִֿילע" - -#. TRANSLATORS: It's about given file having some strange format, not -#. complete lack of gzip support. -#: grub-core/io/gzio.c:1228 grub-core/io/gzio.c:1237 grub-core/io/gzio.c:1244 -msgid "unsupported gzip format" -msgstr "וּנשוּפּפּוֹרתעד גזִיפּ פֿוֹרמ×ת" - -#: grub-core/io/lzopio.c:511 -msgid "lzop file corrupted" -msgstr "לזוֹפּ פִֿילע צוֹררוּפּתעד" - -#: grub-core/io/xzio.c:278 -msgid "xz file corrupted or unsupported block options" -msgstr "כּסז פִֿילע צוֹררוּפּתעד וֹר וּנשוּפּפּוֹרתעד בּלוֹצכּ וֹפּתִיוֹנש" - -#: grub-core/kern/arm/dl.c:277 grub-core/kern/arm64/dl.c:44 -#: grub-core/kern/i386/dl.c:36 grub-core/kern/ia64/dl.c:41 -#: grub-core/kern/mips/dl.c:48 grub-core/kern/powerpc/dl.c:36 -#: grub-core/kern/riscv/dl.c:47 grub-core/kern/sparc64/dl.c:36 -#: grub-core/kern/x86_64/dl.c:36 grub-core/loader/i386/bsd.c:1445 -#: grub-core/loader/i386/bsdXX.c:49 grub-core/loader/ia64/efi/linux.c:341 -#: grub-core/loader/mips/linux.c:298 grub-core/loader/multiboot.c:232 -#: grub-core/loader/multiboot_elfxx.c:73 -#: grub-core/loader/powerpc/ieee1275/linux.c:294 -#: grub-core/loader/sparc64/ieee1275/linux.c:331 -msgid "invalid arch-dependent ELF magic" -msgstr "ִינבֿ×לִיד ×רצה-דעפּענדענת עלפֿ מ×גִיצ" - -#: grub-core/kern/corecmd.c:178 -msgid "[ENVVAR=VALUE]" -msgstr "[ענבֿבֿ×ר=בֿ×לוּע]" - -#: grub-core/kern/corecmd.c:179 -msgid "Set an environment variable." -msgstr "שעת ××  ענבִֿירוֹנמענת בֿ×רִי×בּלע." - -#: grub-core/kern/corecmd.c:183 -msgid "ENVVAR" -msgstr "ענבֿבֿ×ר" - -#: grub-core/kern/corecmd.c:184 -msgid "Remove an environment variable." -msgstr "רעמוֹבֿע ××  ענבִֿירוֹנמענת בֿ×רִי×בּלע." - -#: grub-core/kern/corecmd.c:186 -msgid "[ARG]" -msgstr "[×רג]" - -#: grub-core/kern/corecmd.c:186 -msgid "List devices or files." -msgstr "לִישת דעבִֿיצעש וֹר פִֿילעש." - -#: grub-core/kern/corecmd.c:188 -msgid "Insert a module." -msgstr "ִינשערת × ×ž×•Ö¹×“×•Ö¼×œ×¢." - -#: grub-core/kern/disk.c:236 grub-core/net/net.c:1390 -#, c-format -msgid "disk `%s' not found" -msgstr "דִישכּ `%s' נוֹת פֿוֹוּנד" - -#: grub-core/kern/disk_common.c:27 -msgid "attempt to read or write outside of partition" -msgstr "×תתעמפּת תוֹ רע×ד וֹר ורִיתע וֹוּתשִידע וֹפֿ פּ×רתִיתִיוֹנ" - -#: grub-core/kern/dl.c:212 grub-core/kern/elf.c:61 grub-core/kern/elf.c:79 -#: grub-core/loader/i386/bsdXX.c:46 grub-core/loader/ia64/efi/linux.c:335 -#: grub-core/loader/multiboot_elfxx.c:69 -msgid "invalid arch-independent ELF magic" -msgstr "ִינבֿ×לִיד ×רצה-ִינדעפּענדענת עלפֿ מ×גִיצ" - -#. TRANSLATORS: it refers to the lack of free slots. -#: grub-core/kern/emu/hostdisk.c:208 grub-core/kern/emu/hostdisk.c:466 -msgid "device count exceeds limit" -msgstr "דעבִֿיצע צוֹוּנת עכּסצעעדש לִימִית" - -#: grub-core/kern/emu/hostdisk.c:342 util/editenv.c:54 util/grub-editenv.c:197 -#: util/grub-fstest.c:191 util/grub-mkfont.c:796 util/misc.c:114 -#: util/misc.c:129 util/setup.c:788 -#, c-format -msgid "cannot write to `%s': %s" -msgstr "צ×ננוֹת ורִיתע תוֹ `%s': %s" - -#. TRANSLATORS: Only one entry is ignored. However the suggestion -#. is to correct/delete the whole file. -#. device.map is a file indicating which -#. devices are available at boot time. Fedora populated it with -#. entries like (hd0,1) /dev/sda1 which would mean that every -#. partition is a separate disk for BIOS. Such entries were -#. inactive in GRUB due to its bug which is now gone. Without -#. this additional check these entries would be harmful now. -#. -#: grub-core/kern/emu/hostdisk.c:503 -#, c-format -msgid "" -"the device.map entry `%s' is invalid. Ignoring it. Please correct or delete " -"your device.map" -msgstr "" -"תהע דעבִֿיצע.מ×פּ ענתריִ `%s' ִיש ִינבֿ×לִיד. ִיגנוֹרִינג ִית. פּלע×שע צוֹררעצת וֹר דעלעתע " -"יִוֹוּר דעבִֿיצע.מ×פּ" - -#. TRANSLATORS: device.map is a filename. Not to be translated. -#. device.map specifies disk correspondance overrides. Previously -#. one could create any kind of device name with this. Due to -#. some problems we decided to limit it to just a handful -#. possibilities. -#: grub-core/kern/emu/hostdisk.c:555 -#, c-format -msgid "" -"the drive name `%s' in device.map is incorrect. Using %s instead. Please use " -"the form [hfc]d[0-9]* (E.g. `hd0' or `cd')" -msgstr "" -"תהע דרִיבֿע × ×מע `%s' Ö´×™×  דעבִֿיצע.מ×פּ ִיש ִינצוֹררעצת. וּשִינג %s ִינשתע×ד. פּלע×שע וּשע " -"תהע פֿוֹרמ [הפֿצ]ד[0-9]* (×¢.×’. `הד0' וֹר `צד')" - -#: grub-core/kern/emu/hostfs.c:76 grub-core/kern/emu/hostfs.c:109 -#, c-format -msgid "can't open `%s': %s" -msgstr "צ×× 'ת וֹפּענ `%s': %s" - -#: grub-core/kern/emu/main.c:99 util/grub-fstest.c:516 util/grub-mount.c:452 -msgid "DEVICE_NAME" -msgstr "דעבִֿיצע_× ×מע" - -#: grub-core/kern/emu/main.c:99 grub-core/loader/i386/bsd.c:136 -#: grub-core/loader/i386/bsd.c:169 util/grub-fstest.c:516 util/grub-mount.c:452 -msgid "Set root device." -msgstr "שעת רוֹוֹת דעבִֿיצע." - -#. TRANSLATORS: There are many devices in device map. -#: grub-core/kern/emu/main.c:102 util/grub-probe.c:733 util/grub-setup.c:85 -#, c-format -msgid "use FILE as the device map [default=%s]" -msgstr "וּשע פִֿילע ×ש תהע דעבִֿיצע מ×פּ [דעפֿ×וּלת=%s]" - -#. TRANSLATORS: There are many devices in device map. -#: grub-core/kern/emu/main.c:105 -msgid "use FILE as memdisk" -msgstr "וּשע פִֿילע ×ש מעמדִישכּ" - -#: grub-core/kern/emu/main.c:107 util/grub-setup.c:83 -#, c-format -msgid "use GRUB files in the directory DIR [default=%s]" -msgstr "וּשע גרוּבּ פִֿילעש Ö´×™×  תהע דִירעצתוֹריִ דִיר [דעפֿ×וּלת=%s]" - -#: grub-core/kern/emu/main.c:108 include/grub/util/install.h:67 -#: util/grub-editenv.c:58 util/grub-fstest.c:525 util/grub-glue-efi.c:58 -#: util/grub-macbless.c:104 util/grub-mkfont.c:962 util/grub-mkimage.c:84 -#: util/grub-mklayout.c:56 util/grub-mount.c:458 util/grub-probe.c:735 -#: util/grub-render-label.c:74 util/grub-script-check.c:52 util/grub-setup.c:90 -#: util/grub-syslinux2cfg.c:78 -msgid "print verbose messages." -msgstr "פּרִינת בֿערבּוֹשע מעשש×געש." - -#: grub-core/kern/emu/main.c:109 grub-core/lib/gnulib/argp-parse.c:85 -msgid "SECS" -msgstr "שעצש" - -#: grub-core/kern/emu/main.c:109 -msgid "wait until a debugger will attach" -msgstr "ו×ִית וּנתִיל × ×“×¢×‘Ö¼×•Ö¼×’×’×¢×¨ וִילל ×תת×צה" - -#: grub-core/kern/emu/main.c:171 util/grub-macbless.c:143 -#: util/grub-mkrelpath.c:61 util/grub-probe.c:874 util/grub-script-check.c:75 -#: util/grub-setup.c:203 -#, c-format -msgid "Unknown extra argument `%s'." -msgstr "וּנכּנוֹונ ×¢×›Ö¼×¡×ª×¨× ×רגוּמענת `%s'." - -#: grub-core/kern/emu/main.c:185 -msgid "GRUB emulator." -msgstr "גרוּבּ עמוּל×תוֹר." - -#: grub-core/kern/emu/main.c:213 util/grub-editenv.c:262 -#: util/grub-glue-efi.c:110 util/grub-macbless.c:173 util/grub-mkfont.c:1177 -#: util/grub-mkimage.c:266 util/grub-mklayout.c:494 -#: util/grub-mkpasswd-pbkdf2.c:132 util/grub-mkrelpath.c:96 -#: util/grub-probe.c:863 util/grub-render-label.c:152 -#: util/grub-script-check.c:160 util/grub-setup.c:262 -#: util/grub-syslinux2cfg.c:163 -msgid "Error in parsing command line arguments\n" -msgstr "עררוֹר Ö´×™×  פּ×רשִינג צוֹממ×נד לִינע ×רגוּמענתש\n" - -#. TRANSLATORS: In this case GRUB tells user what he has to do. -#: grub-core/kern/emu/main.c:248 -#, c-format -msgid "Run `gdb %s %d', and set ARGS.HOLD to zero.\n" -msgstr "רוּנ `גדבּ %s %d', ×נד שעת ×רגש.הוֹלד תוֹ זערוֹ.\n" - -#: grub-core/kern/emu/misc.c:48 -#, c-format -msgid "%s: warning:" -msgstr "%s: ו×רנִינג:" - -#: grub-core/kern/emu/misc.c:64 -#, c-format -msgid "%s: info:" -msgstr "%s: ִינפֿוֹ:" - -#: grub-core/kern/emu/misc.c:79 util/grub-fstest.c:567 util/grub-fstest.c:576 -#: util/grub-mount.c:497 util/grub-mount.c:505 -#, c-format -msgid "%s: error:" -msgstr "%s: עררוֹר:" - -#: grub-core/kern/emu/misc.c:176 -#, c-format -msgid "file `%s' is too big" -msgstr "פִֿילע `%s' ִיש תוֹוֹ בִּיג" - -#: grub-core/kern/fs.c:120 -msgid "unknown filesystem" -msgstr "וּנכּנוֹונ פִֿילעשיִשתעמ" - -#: grub-core/kern/mips/arc/init.c:273 grub-core/kern/mips/loongson/init.c:301 -msgid "Shutdown failed" -msgstr "שהוּתדוֹונ פֿ×ִילעד" - -#: grub-core/kern/mips/arc/init.c:285 -msgid "Exit failed" -msgstr "עכּסִית פֿ×ִילעד" - -#: grub-core/kern/misc.c:351 grub-core/kern/misc.c:408 include/grub/misc.h:269 -#: include/grub/misc.h:278 -msgid "overflow is detected" -msgstr "וֹבֿערפֿלוֹו ִיש דעתעצתעד" - -#: grub-core/kern/partition.c:51 grub-core/partmap/bsdlabel.c:108 -#, c-format -msgid "Discarding improperly nested partition (%s,%s,%s%d)" -msgstr "דִישצ×רדִינג ִימפּרוֹפּערליִ נעשתעד פּ×רתִיתִיוֹנ (%s,%s,%s%d)" - -#: grub-core/kern/rescue_parser.c:73 util/grub-editenv.c:292 -#, c-format -msgid "Unknown command `%s'.\n" -msgstr "וּנכּנוֹונ צוֹממ×נד `%s'.\n" - -#: grub-core/lib/arg.c:31 -msgid "Display this help and exit." -msgstr "דִישפּל××™Ö´ תהִיש העלפּ ×נד עכּסִית." - -#: grub-core/lib/arg.c:33 -msgid "Display the usage of this command and exit." -msgstr "דִישפּל××™Ö´ תהע וּש××’×¢ וֹפֿ תהִיש צוֹממ×נד ×נד עכּסִית." - -#: grub-core/lib/arg.c:362 -#, c-format -msgid "missing mandatory option for `%s'" -msgstr "מִיששִינג מ×נד×תוֹריִ וֹפּתִיוֹנ פֿוֹר `%s'" - -#: grub-core/lib/arg.c:384 -#, c-format -msgid "the argument `%s' requires an integer" -msgstr "תהע ×רגוּמענת `%s' רעקוִּירעש ××  ִינתעגער" - -#: grub-core/lib/arg.c:407 -#, c-format -msgid "" -"a value was assigned to the argument `%s' while it doesn't require an " -"argument" -msgstr "" -"× ×‘Ö¿×לוּע ו×ש ×ששִיגנעד תוֹ תהע ×רגוּמענת `%s' והִילע ִית דוֹעשנ'ת רעקוִּירע ××  " -"×רגוּמענת" - -#: grub-core/lib/backtrace.c:64 -msgid "Print backtrace." -msgstr "פּרִינת בּ×צכּתר×צע." - -#: grub-core/lib/gnulib/argp-help.c:149 -#, c-format -msgid "ARGP_HELP_FMT: %s value is less than or equal to %s" -msgstr "×רגפּ_העלפּ_פֿמת: %s בֿ×לוּע ִיש לעשש תה××  וֹר עקוּ×ל תוֹ %s" - -#: grub-core/lib/gnulib/argp-help.c:225 -#, c-format -msgid "%.*s: ARGP_HELP_FMT parameter requires a value" -msgstr "%.*s: ×רגפּ_העלפּ_פֿמת פּ×ר×מעתער רעקוִּירעש × ×‘Ö¿×לוּע" - -#: grub-core/lib/gnulib/argp-help.c:235 -#, c-format -msgid "%.*s: Unknown ARGP_HELP_FMT parameter" -msgstr "%.*s: וּנכּנוֹונ ×רגפּ_העלפּ_פֿמת פּ×ר×מעתער" - -#: grub-core/lib/gnulib/argp-help.c:248 -#, c-format -msgid "Garbage in ARGP_HELP_FMT: %s" -msgstr "×’×רבּ××’×¢ Ö´×™×  ×רגפּ_העלפּ_פֿמת: %s" - -#: grub-core/lib/gnulib/argp-help.c:1229 -msgid "" -"Mandatory or optional arguments to long options are also mandatory or " -"optional for any corresponding short options." -msgstr "" -"מ×נד×תוֹריִ וֹר וֹפּתִיוֹנ×ל ×רגוּמענתש תוֹ לוֹנג וֹפּתִיוֹנש ×רע ×לשוֹ מ×נד×תוֹריִ וֹר " -"וֹפּתִיוֹנ×ל פֿוֹר ×× ×™Ö´ צוֹררעשפּוֹנדִינג שהוֹרת וֹפּתִיוֹנש." - -#: grub-core/lib/gnulib/argp-help.c:1620 -msgid " or: " -msgstr " וֹר: " - -#: grub-core/lib/gnulib/argp-help.c:1632 -msgid " [OPTION...]" -msgstr " [וֹפּתִיוֹנ...]" - -#: grub-core/lib/gnulib/argp-help.c:1659 -#, c-format -msgid "Try '%s --help' or '%s --usage' for more information.\n" -msgstr "תריִ '%s --העלפּ' וֹר '%s --וּש××’×¢' פֿוֹר מוֹרע ִינפֿוֹרמ×תִיוֹנ.\n" - -#: grub-core/lib/gnulib/argp-help.c:1687 -#, c-format -msgid "Report bugs to %s.\n" -msgstr "רעפּוֹרת בּוּגש תוֹ %s.\n" - -#: grub-core/lib/gnulib/argp-help.c:1888 grub-core/lib/gnulib/error.c:195 -msgid "Unknown system error" -msgstr "וּנכּנוֹונ שיִשתעמ עררוֹר" - -#: grub-core/lib/gnulib/argp-parse.c:81 -msgid "give this help list" -msgstr "גִיבֿע תהִיש העלפּ לִישת" - -#: grub-core/lib/gnulib/argp-parse.c:82 -msgid "give a short usage message" -msgstr "גִיבֿע × ×©×”×•Ö¹×¨×ª וּש××’×¢ מעשש××’×¢" - -#: grub-core/lib/gnulib/argp-parse.c:83 util/grub-mkfont.c:946 -msgid "NAME" -msgstr "× ×מע" - -#: grub-core/lib/gnulib/argp-parse.c:84 -msgid "set the program name" -msgstr "שעת תהע פּרוֹגר×מ × ×מע" - -#: grub-core/lib/gnulib/argp-parse.c:86 -msgid "hang for SECS seconds (default 3600)" -msgstr "×”×× ×’ פֿוֹר שעצש שעצוֹנדש (דעפֿ×וּלת 3600)" - -#: grub-core/lib/gnulib/argp-parse.c:143 -msgid "print program version" -msgstr "פּרִינת פּרוֹגר×מ בֿערשִיוֹנ" - -#: grub-core/lib/gnulib/argp-parse.c:160 -msgid "(PROGRAM ERROR) No version known!?" -msgstr "(פּרוֹגר×מ עררוֹר) נוֹ בֿערשִיוֹנ כּנוֹונ!?" - -#: grub-core/lib/gnulib/argp-parse.c:613 -#, c-format -msgid "%s: Too many arguments\n" -msgstr "%s: תוֹוֹ מ×× ×™Ö´ ×רגוּמענתש\n" - -#: grub-core/lib/gnulib/argp-parse.c:759 -msgid "(PROGRAM ERROR) Option should have been recognized!?" -msgstr "(פּרוֹגר×מ עררוֹר) וֹפּתִיוֹנ שהוֹוּלד ×”×בֿע בּעענ רעצוֹגנִיזעד!?" - -#: grub-core/lib/gnulib/getopt.c:278 -#, c-format -msgid "%s: option '%s%s' is ambiguous\n" -msgstr "%s: וֹפּתִיוֹנ '%s%s' ִיש ×מבִּיגוּוֹוּש\n" - -#: grub-core/lib/gnulib/getopt.c:284 -#, c-format -msgid "%s: option '%s%s' is ambiguous; possibilities:" -msgstr "%s: וֹפּתִיוֹנ '%s%s' ִיש ×מבִּיגוּוֹוּש; פּוֹששִיבִּילִיתִיעש:" - -#: grub-core/lib/gnulib/getopt.c:319 -#, c-format -msgid "%s: unrecognized option '%s%s'\n" -msgstr "%s: וּנרעצוֹגנִיזעד וֹפּתִיוֹנ '%s%s'\n" - -#: grub-core/lib/gnulib/getopt.c:345 -#, c-format -msgid "%s: option '%s%s' doesn't allow an argument\n" -msgstr "%s: וֹפּתִיוֹנ '%s%s' דוֹעשנ'ת ×ללוֹו ××  ×רגוּמענת\n" - -#: grub-core/lib/gnulib/getopt.c:360 -#, c-format -msgid "%s: option '%s%s' requires an argument\n" -msgstr "%s: וֹפּתִיוֹנ '%s%s' רעקוִּירעש ××  ×רגוּמענת\n" - -#: grub-core/lib/gnulib/getopt.c:621 -#, c-format -msgid "%s: invalid option -- '%c'\n" -msgstr "%s: ִינבֿ×לִיד וֹפּתִיוֹנ -- '%c'\n" - -#: grub-core/lib/gnulib/getopt.c:636 grub-core/lib/gnulib/getopt.c:682 -#, c-format -msgid "%s: option requires an argument -- '%c'\n" -msgstr "%s: וֹפּתִיוֹנ רעקוִּירעש ××  ×רגוּמענת -- '%c'\n" - -#: grub-core/lib/gnulib/openat-die.c:38 -#, c-format -msgid "unable to record current working directory" -msgstr "וּנ×בּלע תוֹ רעצוֹרד צוּררענת ווֹרכִּינג דִירעצתוֹריִ" - -#: grub-core/lib/gnulib/openat-die.c:57 -#, c-format -msgid "failed to return to initial working directory" -msgstr "פֿ×ִילעד תוֹ רעתוּרנ תוֹ ִינִיתִי×ל ווֹרכִּינג דִירעצתוֹריִ" - -#: grub-core/lib/gnulib/regcomp.c:135 grub-core/osdep/aros/hostdisk.c:523 -msgid "Success" -msgstr "שוּצצעשש" - -#: grub-core/lib/gnulib/regcomp.c:138 -msgid "No match" -msgstr "נוֹ מ×תצה" - -#: grub-core/lib/gnulib/regcomp.c:141 -msgid "Invalid regular expression" -msgstr "ִינבֿ×לִיד רעגוּל×ר עכּספּרעששִיוֹנ" - -#: grub-core/lib/gnulib/regcomp.c:144 -msgid "Invalid collation character" -msgstr "ִינבֿ×לִיד צוֹלל×תִיוֹנ צה×ר×צתער" - -#: grub-core/lib/gnulib/regcomp.c:147 -msgid "Invalid character class name" -msgstr "ִינבֿ×לִיד צה×ר×צתער צל×שש × ×מע" - -#: grub-core/lib/gnulib/regcomp.c:150 -msgid "Trailing backslash" -msgstr "תר×ִילִינג בּ×צכּשל×שה" - -#: grub-core/lib/gnulib/regcomp.c:153 -msgid "Invalid back reference" -msgstr "ִינבֿ×לִיד בּ×צכּ רעפֿערענצע" - -#: grub-core/lib/gnulib/regcomp.c:156 -msgid "Unmatched [, [^, [:, [., or [=" -msgstr "וּנמ×תצהעד [, [^, [:, [., וֹר [=" - -#: grub-core/lib/gnulib/regcomp.c:159 -msgid "Unmatched ( or \\(" -msgstr "וּנמ×תצהעד ( וֹר \\(" - -#: grub-core/lib/gnulib/regcomp.c:162 -msgid "Unmatched \\{" -msgstr "וּנמ×תצהעד \\{" - -#: grub-core/lib/gnulib/regcomp.c:165 -msgid "Invalid content of \\{\\}" -msgstr "ִינבֿ×לִיד צוֹנתענת וֹפֿ \\{\\}" - -#: grub-core/lib/gnulib/regcomp.c:168 -msgid "Invalid range end" -msgstr "ִינבֿ×לִיד ר×× ×’×¢ ענד" - -#: grub-core/lib/gnulib/regcomp.c:171 -msgid "Memory exhausted" -msgstr "מעמוֹריִ עכּסה×וּשתעד" - -#: grub-core/lib/gnulib/regcomp.c:174 -msgid "Invalid preceding regular expression" -msgstr "ִינבֿ×לִיד פּרעצעדִינג רעגוּל×ר עכּספּרעששִיוֹנ" - -#: grub-core/lib/gnulib/regcomp.c:177 -msgid "Premature end of regular expression" -msgstr "פּרעמ×תוּרע ענד וֹפֿ רעגוּל×ר עכּספּרעששִיוֹנ" - -#: grub-core/lib/gnulib/regcomp.c:180 -msgid "Regular expression too big" -msgstr "רעגוּל×ר עכּספּרעששִיוֹנ תוֹוֹ בִּיג" - -#: grub-core/lib/gnulib/regcomp.c:183 -msgid "Unmatched ) or \\)" -msgstr "וּנמ×תצהעד ) וֹר \\)" - -#: grub-core/lib/gnulib/regcomp.c:531 -msgid "unknown regexp error" -msgstr "וּנכּנוֹונ רעגעכּספּ עררוֹר" - -#: grub-core/lib/gnulib/regcomp.c:676 -msgid "No previous regular expression" -msgstr "נוֹ פּרעבִֿיוֹוּש רעגוּל×ר עכּספּרעששִיוֹנ" - -#: grub-core/lib/i386/halt.c:77 -msgid "GRUB doesn't know how to halt this machine yet!" -msgstr "גרוּבּ דוֹעשנ'ת כּנוֹו הוֹו תוֹ ×”×לת תהִיש מ×צהִינע יִעת!" - -#: grub-core/lib/legacy_parse.c:75 -msgid "Default server is ${net_default_server}" -msgstr "דעפֿ×וּלת שערבֿער ִיש ${נעת_דעפֿ×וּלת_שערבֿער}" - -#: grub-core/lib/legacy_parse.c:844 grub-core/video/colors.c:296 -#: grub-core/video/colors.c:305 grub-core/video/colors.c:311 -#: grub-core/video/colors.c:327 util/render-label.c:84 util/render-label.c:98 -#, c-format -msgid "invalid color specification `%s'" -msgstr "ִינבֿ×לִיד צוֹלוֹר שפּעצִיפִֿיצ×תִיוֹנ `%s'" - -#: grub-core/lib/mips/arc/reboot.c:32 grub-core/lib/mips/loongson/reboot.c:61 -msgid "Reboot failed" -msgstr "רעבּוֹוֹת פֿ×ִילעד" - -#: grub-core/lib/random.c:113 -msgid "[LENGTH]" -msgstr "[לענגתה]" - -#: grub-core/lib/random.c:114 -msgid "Hexdump random data." -msgstr "העכּסדוּמפּ ר×נדוֹמ ד×ת×." - -#: grub-core/loader/arm/linux.c:242 -msgid "device tree must be supplied (see `devicetree' command)" -msgstr "דעבִֿיצע תרעע מוּשת בּע שוּפּפּלִיעד (שעע `דעבִֿיצעתרעע' צוֹממ×נד)" - -#: grub-core/loader/arm/linux.c:334 -msgid "invalid zImage" -msgstr "ִינבֿ×לִיד זִימ××’×¢" - -#: grub-core/loader/arm/linux.c:450 grub-core/loader/efi/fdt.c:144 -msgid "invalid device tree" -msgstr "ִינבֿ×לִיד דעבִֿיצע תרעע" - -#: grub-core/loader/arm/linux.c:493 grub-core/loader/arm64/linux.c:383 -#: grub-core/loader/i386/linux.c:1125 grub-core/loader/i386/pc/linux.c:479 -#: grub-core/loader/i386/xen.c:962 grub-core/loader/i386/xen.c:964 -#: grub-core/loader/ia64/efi/linux.c:591 grub-core/loader/mips/linux.c:501 -#: grub-core/loader/powerpc/ieee1275/linux.c:383 -#: grub-core/loader/riscv/linux.c:50 -#: grub-core/loader/sparc64/ieee1275/linux.c:511 -msgid "Load Linux." -msgstr "לוֹ×ד לִינוּכּס." - -#: grub-core/loader/arm/linux.c:495 grub-core/loader/arm64/linux.c:385 -#: grub-core/loader/i386/linux.c:1127 grub-core/loader/i386/pc/linux.c:482 -#: grub-core/loader/i386/xen.c:966 grub-core/loader/ia64/efi/linux.c:594 -#: grub-core/loader/mips/linux.c:503 -#: grub-core/loader/powerpc/ieee1275/linux.c:385 -#: grub-core/loader/riscv/linux.c:52 -#: grub-core/loader/sparc64/ieee1275/linux.c:513 -msgid "Load initrd." -msgstr "לוֹ×ד ִינִיתרד." - -#. TRANSLATORS: DTB stands for device tree blob. -#: grub-core/loader/arm/linux.c:498 grub-core/loader/efi/fdt.c:169 -msgid "Load DTB file." -msgstr "לוֹ×ד דתבּ פִֿילע." - -#: grub-core/loader/arm64/linux.c:59 -msgid "" -"plain image kernel not supported - rebuild with CONFIG_(U)EFI_STUB enabled" -msgstr "" -"פּל×Ö´×™×  ִימ××’×¢ כּערנעל נוֹת שוּפּפּוֹרתעד - רעבּוִּילד וִיתה צוֹנפִֿיג_(וּ)עפִֿי_שתוּבּ ×¢× ×בּלעד" - -#: grub-core/loader/arm64/xen_boot.c:156 -msgid "failed to get FDT" -msgstr "פֿ×ִילעד תוֹ געת פֿדת" - -#: grub-core/loader/arm64/xen_boot.c:418 -msgid "you need to load the Xen Hypervisor first" -msgstr "יִוֹוּ נעעד תוֹ לוֹ×ד תהע כּסענ היִפּערבִֿישוֹר פִֿירשת" - -#: grub-core/loader/arm64/xen_boot.c:516 -msgid "Load a xen hypervisor." -msgstr "לוֹ×ד × ×›Ö¼×¡×¢×  היִפּערבִֿישוֹר." - -#: grub-core/loader/arm64/xen_boot.c:519 -msgid "Load a xen module." -msgstr "לוֹ×ד × ×›Ö¼×¡×¢×  מוֹדוּלע." - -#: grub-core/loader/efi/appleloader.c:231 -msgid "[OPTS]" -msgstr "[וֹפּתש]" - -#. TRANSLATORS: This command is used on EFI to -#. switch to BIOS mode and boot the OS requiring -#. BIOS. -#: grub-core/loader/efi/appleloader.c:235 -msgid "Boot BIOS-based system." -msgstr "בּוֹוֹת בִּיוֹש-בּ×שעד שיִשתעמ." - -#: grub-core/loader/efi/chainloader.c:421 -#: grub-core/loader/i386/pc/chainloader.c:303 -msgid "Load another boot loader." -msgstr "לוֹ×ד ×נוֹתהער בּוֹוֹת לוֹ×דער." - -#: grub-core/loader/i386/bsd.c:103 -msgid "Display output on all consoles." -msgstr "דִישפּל××™Ö´ וֹוּתפּוּת וֹנ ×לל צוֹנשוֹלעש." - -#: grub-core/loader/i386/bsd.c:104 grub-core/loader/i386/bsd.c:138 -#: grub-core/loader/i386/bsd.c:171 -msgid "Use serial console." -msgstr "וּשע שערִי×ל צוֹנשוֹלע." - -#: grub-core/loader/i386/bsd.c:105 grub-core/loader/i386/bsd.c:131 -#: grub-core/loader/i386/bsd.c:159 -msgid "Ask for file name to reboot from." -msgstr "×שכּ פֿוֹר פִֿילע × ×מע תוֹ רעבּוֹוֹת פֿרוֹמ." - -#: grub-core/loader/i386/bsd.c:106 -msgid "Use CD-ROM as root." -msgstr "וּשע צד-רוֹמ ×ש רוֹוֹת." - -#: grub-core/loader/i386/bsd.c:107 -msgid "Invoke user configuration routing." -msgstr "ִינבֿוֹכּע וּשער צוֹנפִֿיגוּר×תִיוֹנ רוֹוּתִינג." - -#: grub-core/loader/i386/bsd.c:108 grub-core/loader/i386/bsd.c:135 -#: grub-core/loader/i386/bsd.c:162 -msgid "Enter in KDB on boot." -msgstr "ענתער Ö´×™×  כּדבּ וֹנ בּוֹוֹת." - -#: grub-core/loader/i386/bsd.c:109 -msgid "Use GDB remote debugger instead of DDB." -msgstr "וּשע גדבּ רעמוֹתע דעבּוּגגער ִינשתע×ד וֹפֿ דדבּ." - -#: grub-core/loader/i386/bsd.c:110 -msgid "Disable all boot output." -msgstr "דִיש×בּלע ×לל בּוֹוֹת וֹוּתפּוּת." - -#: grub-core/loader/i386/bsd.c:112 -msgid "Wait for keypress after every line of output." -msgstr "ו×ִית פֿוֹר כּעיִפּרעשש ×פֿתער עבֿעריִ לִינע וֹפֿ וֹוּתפּוּת." - -#: grub-core/loader/i386/bsd.c:114 -msgid "Use compiled-in root device." -msgstr "וּשע צוֹמפִּילעד-Ö´×™×  רוֹוֹת דעבִֿיצע." - -#: grub-core/loader/i386/bsd.c:115 grub-core/loader/i386/bsd.c:134 -#: grub-core/loader/i386/bsd.c:165 -msgid "Boot into single mode." -msgstr "בּוֹוֹת ִינתוֹ שִינגלע מוֹדע." - -#: grub-core/loader/i386/bsd.c:116 grub-core/loader/i386/bsd.c:166 -msgid "Boot with verbose messages." -msgstr "בּוֹוֹת וִיתה בֿערבּוֹשע מעשש×געש." - -#: grub-core/loader/i386/bsd.c:132 grub-core/loader/i386/bsd.c:160 -msgid "Don't reboot, just halt." -msgstr "דוֹנ'ת רעבּוֹוֹת, יוּשת ×”×לת." - -#: grub-core/loader/i386/bsd.c:133 grub-core/loader/i386/bsd.c:161 -msgid "Change configured devices." -msgstr "צה×× ×’×¢ צוֹנפִֿיגוּרעד דעבִֿיצעש." - -#. TRANSLATORS: "com" is static and not to be translated. It refers to -#. serial ports e.g. com1. -#. -#: grub-core/loader/i386/bsd.c:142 -msgid "comUNIT[,SPEED]" -msgstr "צוֹמוּנִית[,שפּעעד]" - -#: grub-core/loader/i386/bsd.c:157 -msgid "Disable SMP." -msgstr "דִיש×בּלע שמפּ." - -#: grub-core/loader/i386/bsd.c:158 -msgid "Disable ACPI." -msgstr "דִיש×בּלע ×צפִּי." - -#: grub-core/loader/i386/bsd.c:164 -msgid "Don't display boot diagnostic messages." -msgstr "דוֹנ'ת דִישפּל××™Ö´ בּוֹוֹת דִי×גנוֹשתִיצ מעשש×געש." - -#: grub-core/loader/i386/bsd.c:167 -msgid "Boot with debug messages." -msgstr "בּוֹוֹת וִיתה דעבּוּג מעשש×געש." - -#: grub-core/loader/i386/bsd.c:168 -msgid "Suppress normal output (warnings remain)." -msgstr "שוּפּפּרעשש נוֹרמ×ל וֹוּתפּוּת (ו×רנִינגש רעמ×Ö´×™× )." - -#. TRANSLATORS: "com" is static and not to be translated. It refers to -#. serial ports e.g. com1. -#. -#: grub-core/loader/i386/bsd.c:175 -msgid "[ADDR|comUNIT][,SPEED]" -msgstr "[×דדר|צוֹמוּנִית][,שפּעעד]" - -#: grub-core/loader/i386/bsd.c:489 grub-core/loader/i386/bsd.c:555 -msgid "name" -msgstr "× ×מע" - -#: grub-core/loader/i386/bsd.c:489 grub-core/loader/i386/bsd.c:555 -msgid "type" -msgstr "תיִפּע" - -#: grub-core/loader/i386/bsd.c:489 grub-core/loader/i386/bsd.c:555 -msgid "addr" -msgstr "×דדר" - -#: grub-core/loader/i386/bsd.c:490 grub-core/loader/i386/bsd.c:556 -msgid "size" -msgstr "שִיזע" - -#: grub-core/loader/i386/bsd.c:1147 grub-core/loader/i386/linux.c:466 -#: grub-core/loader/i386/xnu.c:1030 -msgid "Booting in blind mode" -msgstr "בּוֹוֹתִינג Ö´×™×  בּלִינד מוֹדע" - -#: grub-core/loader/i386/bsd.c:2137 -msgid "Load kernel of FreeBSD." -msgstr "לוֹ×ד כּערנעל וֹפֿ פֿרעעבּשד." - -#: grub-core/loader/i386/bsd.c:2140 -msgid "Load kernel of OpenBSD." -msgstr "לוֹ×ד כּערנעל וֹפֿ וֹפּענבּשד." - -#: grub-core/loader/i386/bsd.c:2143 -msgid "Load kernel of NetBSD." -msgstr "לוֹ×ד כּערנעל וֹפֿ נעתבּשד." - -#: grub-core/loader/i386/bsd.c:2147 -msgid "Load FreeBSD env." -msgstr "לוֹ×ד פֿרעעבּשד ענבֿ." - -#: grub-core/loader/i386/bsd.c:2150 -msgid "Load FreeBSD kernel module." -msgstr "לוֹ×ד פֿרעעבּשד כּערנעל מוֹדוּלע." - -#: grub-core/loader/i386/bsd.c:2153 -msgid "Load NetBSD kernel module." -msgstr "לוֹ×ד נעתבּשד כּערנעל מוֹדוּלע." - -#: grub-core/loader/i386/bsd.c:2156 -msgid "Load NetBSD kernel module (ELF)." -msgstr "לוֹ×ד נעתבּשד כּערנעל מוֹדוּלע (עלפֿ)." - -#: grub-core/loader/i386/bsd.c:2159 -msgid "Load FreeBSD kernel module (ELF)." -msgstr "לוֹ×ד פֿרעעבּשד כּערנעל מוֹדוּלע (עלפֿ)." - -#. TRANSLATORS: ramdisk isn't identifier, -#. it can be translated. -#: grub-core/loader/i386/bsd.c:2165 -msgid "Load kOpenBSD ramdisk." -msgstr "לוֹ×ד כּוֹפּענבּשד ר×מדִישכּ." - -#. TRANSLATORS: "payload" is a term used -#. by coreboot and must be translated in -#. sync with coreboot. If unsure, -#. let it untranslated. -#: grub-core/loader/i386/coreboot/chainloader.c:510 -msgid "Load another coreboot payload" -msgstr "לוֹ×ד ×נוֹתהער צוֹרעבּוֹוֹת פּ×יִלוֹ×ד" - -#: grub-core/loader/i386/linux.c:876 -msgid "Legacy `ask' parameter no longer supported." -msgstr "לעג×ציִ `×שכּ' פּ×ר×מעתער נוֹ לוֹנגער שוּפּפּוֹרתעד." - -#: grub-core/loader/i386/linux.c:892 grub-core/loader/i386/linux.c:902 -#: grub-core/loader/i386/linux.c:932 -#, c-format -msgid "%s is deprecated. Use set gfxpayload=%s before linux command instead.\n" -msgstr "" -"%s ִיש דעפּרעצ×תעד. וּשע שעת גפֿכּספּ×יִלוֹ×ד=%s בּעפֿוֹרע לִינוּכּס צוֹממ×נד ִינשתע×ד.\n" - -#. TRANSLATORS: "x" has to be entered in, like an identifier, -#. so please don't use better Unicode codepoints. -#: grub-core/loader/i386/linux.c:915 -#, c-format -msgid "" -"%s is deprecated. VGA mode %d isn't recognized. Use set " -"gfxpayload=WIDTHxHEIGHT[xDEPTH] before linux command instead.\n" -msgstr "" -"%s ִיש דעפּרעצ×תעד. ×‘Ö¿×’× ×ž×•Ö¹×“×¢ %d ִישנ'ת רעצוֹגנִיזעד. וּשע שעת " -"גפֿכּספּ×יִלוֹ×ד=וִידתהכּסהעִיגהת[כּסדעפּתה] בּעפֿוֹרע לִינוּכּס צוֹממ×נד ִינשתע×ד.\n" - -#: grub-core/loader/i386/pc/chainloader.c:302 -msgid "[--force|--bpb] FILE" -msgstr "[--פֿוֹרצע|--בּפּבּ] פִֿילע" - -#: grub-core/loader/i386/pc/freedos.c:148 util/setup.c:293 -#, c-format -msgid "the size of `%s' is too large" -msgstr "תהע שִיזע וֹפֿ `%s' ִיש תוֹוֹ ל×רגע" - -#: grub-core/loader/i386/pc/freedos.c:183 -msgid "Load FreeDOS kernel.sys." -msgstr "לוֹ×ד פֿרעעדוֹש כּערנעל.שיִש." - -#: grub-core/loader/i386/pc/ntldr.c:155 -msgid "Load NTLDR or BootMGR." -msgstr "לוֹ×ד נתלדר וֹר בּוֹוֹתמגר." - -#. TRANSLATORS: it's about guessing which GRUB disk -#. is which Plan9 disk. If your language has no -#. word "mapping" you can use another word which -#. means that the GRUBDEVICE and PLAN9DEVICE are -#. actually the same device, just named differently -#. in OS and GRUB. -#: grub-core/loader/i386/pc/plan9.c:59 -msgid "Override guessed mapping of Plan9 devices." -msgstr "וֹבֿעררִידע גוּעששעד מ×פּפִּינג וֹפֿ פּל×× 9 דעבִֿיצעש." - -#: grub-core/loader/i386/pc/plan9.c:60 -msgid "GRUBDEVICE=PLAN9DEVICE" -msgstr "גרוּבּדעבִֿיצע=פּל×× 9דעבִֿיצע" - -#: grub-core/loader/i386/pc/plan9.c:599 -msgid "KERNEL ARGS" -msgstr "כּערנעל ×רגש" - -#: grub-core/loader/i386/pc/plan9.c:599 -msgid "Load Plan9 kernel." -msgstr "לוֹ×ד פּל×× 9 כּערנעל." - -#: grub-core/loader/i386/pc/pxechainloader.c:161 -msgid "Load a PXE image." -msgstr "לוֹ×ד × ×¤Ö¼×›Ö¼×¡×¢ ִימ××’×¢." - -#: grub-core/loader/i386/pc/truecrypt.c:226 -msgid "Load Truecrypt ISO." -msgstr "לוֹ×ד תרוּעצריִפּת ִישוֹ." - -#: grub-core/loader/i386/xen.c:781 grub-core/loader/i386/xen.c:865 -msgid "initrd already loaded" -msgstr "ִינִיתרד ×לרע×דיִ לוֹ×דעד" - -#: grub-core/loader/i386/xen.c:968 -msgid "Load module." -msgstr "לוֹ×ד מוֹדוּלע." - -#: grub-core/loader/i386/xnu.c:1003 -msgid "Press any key to launch xnu" -msgstr "פּרעשש ×× ×™Ö´ ×›Ö¼×¢×™Ö´ תוֹ ל×וּנצה כּסנוּ" - -#. TRANSLATORS: `device-properties' -#. is a variable name, -#. not a program. -#: grub-core/loader/i386/xnu.c:1159 -msgid "Load `device-properties' dump." -msgstr "לוֹ×ד `דעבִֿיצע-פּרוֹפּערתִיעש' דוּמפּ." - -#: grub-core/loader/ia64/efi/linux.c:124 -msgid "Could not locate FPSWA driver" -msgstr "צוֹוּלד נוֹת לוֹצ×תע ×¤Ö¿×¤Ö¼×©×•× ×“×¨Ö´×™×‘Ö¿×¢×¨" - -#: grub-core/loader/ia64/efi/linux.c:132 -msgid "FPSWA protocol wasn't able to find the interface" -msgstr "×¤Ö¿×¤Ö¼×©×•× ×¤Ö¼×¨×•Ö¹×ª×•Ö¹×¦×•Ö¹×œ ו×שנ'ת ×בּלע תוֹ פִֿינד תהע ִינתערפֿ×צע" - -#: grub-core/loader/ia64/efi/linux.c:580 -msgid "No FPSWA found" -msgstr "נוֹ ×¤Ö¿×¤Ö¼×©×•× ×¤Ö¿×•Ö¹×•Ö¼× ×“" - -#: grub-core/loader/ia64/efi/linux.c:582 -#, c-format -msgid "FPSWA revision: %x\n" -msgstr "×¤Ö¿×¤Ö¼×©×•× ×¨×¢×‘Ö¿Ö´×™×©Ö´×™×•Ö¹× : %x\n" - -#: grub-core/loader/ia64/efi/linux.c:591 -msgid "FILE [ARGS...]" -msgstr "פִֿילע [×רגש...]" - -#: grub-core/loader/ia64/efi/linux.c:597 -msgid "Display FPSWA version." -msgstr "דִישפּל××™Ö´ ×¤Ö¿×¤Ö¼×©×•× ×‘Ö¿×¢×¨×©Ö´×™×•Ö¹× ." - -#: grub-core/loader/multiboot.c:248 -msgid "WARNING: no console will be available to OS" -msgstr "ו×רנִינג: נוֹ צוֹנשוֹלע וִילל בּע ×בֿ×ִיל×בּלע תוֹ וֹש" - -#: grub-core/loader/multiboot.c:450 -msgid "Load a multiboot 2 kernel." -msgstr "לוֹ×ד × ×ž×•Ö¼×œ×ªÖ´×™×‘Ö¼×•Ö¹×•Ö¹×ª 2 כּערנעל." - -#: grub-core/loader/multiboot.c:453 -msgid "Load a multiboot 2 module." -msgstr "לוֹ×ד × ×ž×•Ö¼×œ×ªÖ´×™×‘Ö¼×•Ö¹×•Ö¹×ª 2 מוֹדוּלע." - -#: grub-core/loader/multiboot.c:456 -msgid "Load a multiboot kernel." -msgstr "לוֹ×ד × ×ž×•Ö¼×œ×ªÖ´×™×‘Ö¼×•Ö¹×•Ö¹×ª כּערנעל." - -#: grub-core/loader/multiboot.c:459 -msgid "Load a multiboot module." -msgstr "לוֹ×ד × ×ž×•Ö¼×œ×ªÖ´×™×‘Ö¼×•Ö¹×•Ö¹×ª מוֹדוּלע." - -#: grub-core/loader/riscv/linux.c:30 grub-core/loader/riscv/linux.c:40 -msgid "Linux not supported yet" -msgstr "לִינוּכּס נוֹת שוּפּפּוֹרתעד יִעת" - -#: grub-core/loader/xnu.c:1416 grub-core/term/gfxterm_background.c:45 -msgid "Background image mode." -msgstr "בּ×צכּגרוֹוּנד ִימ××’×¢ מוֹדע." - -#. TRANSLATORS: This refers to background image mode (stretched or -#. in left-top corner). Note that GRUB will accept only original -#. keywords stretch and normal, not the translated ones. -#. So please put both in translation -#. e.g. stretch(=%STRETCH%)|normal(=%NORMAL%). -#. The percents mark the translated version. Since many people -#. may not know the word stretch or normal I recommend -#. putting the translation either here or in "Background image mode." -#. string. -#: grub-core/loader/xnu.c:1416 grub-core/term/gfxterm_background.c:55 -msgid "stretch|normal" -msgstr "שתרעתצה|נוֹרמ×ל" - -#: grub-core/loader/xnu.c:1482 -msgid "Load XNU image." -msgstr "לוֹ×ד כּסנוּ ִימ××’×¢." - -#: grub-core/loader/xnu.c:1484 -msgid "Load 64-bit XNU image." -msgstr "לוֹ×ד 64-בִּית כּסנוּ ִימ××’×¢." - -#: grub-core/loader/xnu.c:1486 -msgid "Load XNU extension package." -msgstr "לוֹ×ד כּסנוּ עכּסתענשִיוֹנ פּ×צכּ××’×¢." - -#: grub-core/loader/xnu.c:1488 -msgid "Load XNU extension." -msgstr "לוֹ×ד כּסנוּ עכּסתענשִיוֹנ." - -#. TRANSLATORS: OSBundleRequired is a -#. variable name in xnu extensions -#. manifests. It behaves mostly like -#. GNU/Linux runlevels. -#. -#: grub-core/loader/xnu.c:1495 -msgid "DIRECTORY [OSBundleRequired]" -msgstr "דִירעצתוֹריִ [וֹשבּוּנדלערעקוִּירעד]" - -#. TRANSLATORS: There are many extensions -#. in extension directory. -#: grub-core/loader/xnu.c:1498 -msgid "Load XNU extension directory." -msgstr "לוֹ×ד כּסנוּ עכּסתענשִיוֹנ דִירעצתוֹריִ." - -#. TRANSLATORS: ramdisk here isn't identifier. It can be translated. -#: grub-core/loader/xnu.c:1501 -msgid "Load XNU ramdisk. It will be available in OS as md0." -msgstr "לוֹ×ד כּסנוּ ר×מדִישכּ. ִית וִילל בּע ×בֿ×ִיל×בּלע Ö´×™×  וֹש ×ש מד0." - -#: grub-core/loader/xnu.c:1505 -msgid "Load a splash image for XNU." -msgstr "לוֹ×ד × ×©×¤Ö¼×œ×שה ִימ××’×¢ פֿוֹר כּסנוּ." - -#: grub-core/loader/xnu.c:1510 -msgid "Load an image of hibernated XNU." -msgstr "לוֹ×ד ××  ִימ××’×¢ וֹפֿ הִיבּערנ×תעד כּסנוּ." - -#: grub-core/mmap/mmap.c:538 -msgid "ADDR1,MASK1[,ADDR2,MASK2[,...]]" -msgstr "×דדר1,מ×שכּ1[,×דדר2,מ×שכּ2[,...]]" - -#: grub-core/mmap/mmap.c:539 -msgid "Declare memory regions as faulty (badram)." -msgstr "דעצל×רע מעמוֹריִ רעגִיוֹנש ×ש פֿ×וּלתיִ (בּ×דר×מ)." - -#: grub-core/mmap/mmap.c:541 -msgid "FROM[K|M|G] TO[K|M|G]" -msgstr "פֿרוֹמ[×›Ö¼|מ|×’] תוֹ[×›Ö¼|מ|×’]" - -#: grub-core/mmap/mmap.c:542 -msgid "Remove any memory regions in specified range." -msgstr "רעמוֹבֿע ×× ×™Ö´ מעמוֹריִ רעגִיוֹנש Ö´×™×  שפּעצִיפִֿיעד ר×× ×’×¢." - -#: grub-core/net/bootp.c:653 -msgid "four arguments expected" -msgstr "פֿוֹוּר ×רגוּמענתש עכּספּעצתעד" - -#: grub-core/net/bootp.c:661 grub-core/net/net.c:1155 -#, c-format -msgid "unrecognised network interface `%s'" -msgstr "וּנרעצוֹגנִישעד נעתווֹרכּ ִינתערפֿ×צע `%s'" - -#: grub-core/net/bootp.c:664 -msgid "no DHCP info found" -msgstr "נוֹ דהצפּ ִינפֿוֹ פֿוֹוּנד" - -#: grub-core/net/bootp.c:674 -msgid "no DHCP options found" -msgstr "נוֹ דהצפּ וֹפּתִיוֹנש פֿוֹוּנד" - -#: grub-core/net/bootp.c:682 -msgid "invalid DHCP option code" -msgstr "ִינבֿ×לִיד דהצפּ וֹפּתִיוֹנ צוֹדע" - -#: grub-core/net/bootp.c:686 -#, c-format -msgid "no DHCP option %u found" -msgstr "נוֹ דהצפּ וֹפּתִיוֹנ %u פֿוֹוּנד" - -#: grub-core/net/bootp.c:743 -#, c-format -msgid "unrecognised DHCP option format specification `%s'" -msgstr "וּנרעצוֹגנִישעד דהצפּ וֹפּתִיוֹנ פֿוֹרמ×ת שפּעצִיפִֿיצ×תִיוֹנ `%s'" - -#: grub-core/net/bootp.c:767 -msgid "no network card found" -msgstr "נוֹ נעתווֹרכּ צ×רד פֿוֹוּנד" - -#: grub-core/net/bootp.c:859 grub-core/net/net.c:389 -#, c-format -msgid "couldn't autoconfigure %s" -msgstr "צוֹוּלדנ'ת ×וּתוֹצוֹנפִֿיגוּרע %s" - -#: grub-core/net/bootp.c:873 grub-core/net/bootp.c:876 -msgid "[CARD]" -msgstr "[צ×רד]" - -#: grub-core/net/bootp.c:874 -msgid "perform a bootp autoconfiguration" -msgstr "פּערפֿוֹרמ × ×‘Ö¼×•Ö¹×•Ö¹×ª×¤Ö¼ ×וּתוֹצוֹנפִֿיגוּר×תִיוֹנ" - -#: grub-core/net/bootp.c:877 -msgid "perform a DHCP autoconfiguration" -msgstr "פּערפֿוֹרמ × ×“×”×¦×¤Ö¼ ×וּתוֹצוֹנפִֿיגוּר×תִיוֹנ" - -#: grub-core/net/bootp.c:879 -msgid "VAR INTERFACE NUMBER DESCRIPTION" -msgstr "בֿ×ר ִינתערפֿ×צע נוּמבּער דעשצרִיפּתִיוֹנ" - -#: grub-core/net/bootp.c:880 -msgid "" -"retrieve DHCP option and save it into VAR. If VAR is - then print the value." -msgstr "" -"רעתרִיעבֿע דהצפּ וֹפּתִיוֹנ ×נד ש×בֿע ִית ִינתוֹ בֿ×ר. ִיפֿ בֿ×ר ִיש - תהענ פּרִינת תהע בֿ×לוּע." - -#: grub-core/net/dns.c:459 -msgid "no DNS servers configured" -msgstr "נוֹ דנש שערבֿערש צוֹנפִֿיגוּרעד" - -#: grub-core/net/dns.c:522 -msgid "domain name component is too long" -msgstr "דוֹמ×Ö´×™×  × ×מע צוֹמפּוֹנענת ִיש תוֹוֹ לוֹנג" - -#: grub-core/net/dns.c:618 grub-core/net/dns.c:666 -msgid "no DNS record found" -msgstr "נוֹ דנש רעצוֹרד פֿוֹוּנד" - -#: grub-core/net/dns.c:626 -msgid "no DNS reply received" -msgstr "נוֹ דנש רעפּליִ רעצעִיבֿעד" - -#: grub-core/net/dns.c:682 -msgid "only ipv4" -msgstr "וֹנליִ ִיפּבֿ4" - -#: grub-core/net/dns.c:686 -msgid "only ipv6" -msgstr "וֹנליִ ִיפּבֿ6" - -#: grub-core/net/dns.c:690 -msgid "prefer ipv4" -msgstr "פּרעפֿער ִיפּבֿ4" - -#: grub-core/net/dns.c:694 -msgid "prefer ipv6" -msgstr "פּרעפֿער ִיפּבֿ6" - -#: grub-core/net/dns.c:759 -msgid "ADDRESS DNSSERVER" -msgstr "×דדרעשש דנששערבֿער" - -#: grub-core/net/dns.c:760 -msgid "Perform a DNS lookup" -msgstr "פּערפֿוֹרמ × ×“× ×© לוֹוֹכּוּפּ" - -#: grub-core/net/dns.c:762 grub-core/net/dns.c:765 -msgid "DNSSERVER" -msgstr "דנששערבֿער" - -#: grub-core/net/dns.c:763 -msgid "Add a DNS server" -msgstr "×דד × ×“× ×© שערבֿער" - -#: grub-core/net/dns.c:766 -msgid "Remove a DNS server" -msgstr "רעמוֹבֿע × ×“× ×© שערבֿער" - -#: grub-core/net/dns.c:768 -msgid "List DNS servers" -msgstr "לִישת דנש שערבֿערש" - -#: grub-core/net/drivers/efi/efinet.c:49 grub-core/net/drivers/efi/efinet.c:65 -#: grub-core/net/drivers/efi/efinet.c:77 grub-core/net/drivers/emu/emunet.c:62 -#: grub-core/net/drivers/i386/pc/pxe.c:273 -#: grub-core/net/drivers/ieee1275/ofnet.c:75 -#: grub-core/net/drivers/uboot/ubootnet.c:62 -msgid "couldn't send network packet" -msgstr "צוֹוּלדנ'ת שענד נעתווֹרכּ פּ×צכּעת" - -#: grub-core/net/drivers/ieee1275/ofnet.c:326 -#: grub-core/net/drivers/ieee1275/ofnet.c:359 -msgid "interpret is not supported" -msgstr "ִינתערפּרעת ִיש נוֹת שוּפּפּוֹרתעד" - -#: grub-core/net/drivers/ieee1275/ofnet.c:336 -msgid "alloc-mem failed" -msgstr "×ללוֹצ-מעמ פֿ×ִילעד" - -#: grub-core/net/drivers/ieee1275/ofnet.c:370 -msgid "free-mem failed" -msgstr "פֿרעע-מעמ פֿ×ִילעד" - -#: grub-core/net/http.c:105 -msgid "unsupported HTTP response" -msgstr "וּנשוּפּפּוֹרתעד התתפּ רעשפּוֹנשע" - -#. TRANSLATORS: GRUB HTTP code is pretty young. So even perfectly -#. valid answers like 403 will trigger this very generic message. -#: grub-core/net/http.c:126 -#, c-format -msgid "unsupported HTTP error %d: %s" -msgstr "וּנשוּפּפּוֹרתעד התתפּ עררוֹר %d: %s" - -#: grub-core/net/http.c:429 grub-core/net/tftp.c:420 -#, c-format -msgid "time out opening `%s'" -msgstr "תִימע וֹוּת וֹפּענִינג `%s'" - -#: grub-core/net/net.c:179 -msgid "timeout: could not resolve hardware address" -msgstr "תִימעוֹוּת: צוֹוּלד נוֹת רעשוֹלבֿע ×”×רדו×רע ×דדרעשש" - -#: grub-core/net/net.c:548 -#, c-format -msgid "unresolvable address %s" -msgstr "וּנרעשוֹלבֿ×בּלע ×דדרעשש %s" - -#: grub-core/net/net.c:594 -#, c-format -msgid "unrecognised network address `%s'" -msgstr "וּנרעצוֹגנִישעד נעתווֹרכּ ×דדרעשש `%s'" - -#: grub-core/net/net.c:661 -msgid "destination unreachable" -msgstr "דעשתִינ×תִיוֹנ וּנרע×צה×בּלע" - -#. TRANSLATORS: route loop is a condition when e.g. -#. to contact server A you need to go through B -#. and to contact B you need to go through A. -#: grub-core/net/net.c:684 -msgid "route loop detected" -msgstr "רוֹוּתע לוֹוֹפּ דעתעצתעד" - -#: grub-core/net/net.c:700 -msgid "address not found" -msgstr "×דדרעשש נוֹת פֿוֹוּנד" - -#: grub-core/net/net.c:704 -msgid "you can't delete this address" -msgstr "יִוֹוּ צ×× 'ת דעלעתע תהִיש ×דדרעשש" - -#: grub-core/net/net.c:776 grub-core/net/net.c:792 -#, c-format -msgid "Unsupported hw address type %d\n" -msgstr "וּנשוּפּפּוֹרתעד הו ×דדרעשש תיִפּע %d\n" - -#: grub-core/net/net.c:813 -#, c-format -msgid "Unsupported address type %d\n" -msgstr "וּנשוּפּפּוֹרתעד ×דדרעשש תיִפּע %d\n" - -#: grub-core/net/net.c:1017 grub-core/net/net.c:1131 -msgid "three arguments expected" -msgstr "תהרעע ×רגוּמענתש עכּספּעצתעד" - -#: grub-core/net/net.c:1023 -msgid "card not found" -msgstr "צ×רד נוֹת פֿוֹוּנד" - -#. TRANSLATORS: it refers to the network address. -#: grub-core/net/net.c:1167 -msgid "temporary" -msgstr "תעמפּוֹר×ריִ" - -#: grub-core/net/net.c:1190 -#, c-format -msgid "Unknown address type %d\n" -msgstr "וּנכּנוֹונ ×דדרעשש תיִפּע %d\n" - -#: grub-core/net/net.c:1298 -msgid "no server is specified" -msgstr "נוֹ שערבֿער ִיש שפּעצִיפִֿיעד" - -#: grub-core/net/net.c:1637 -#, c-format -msgid "timeout reading `%s'" -msgstr "תִימעוֹוּת רע×דִינג `%s'" - -#. TRANSLATORS: HWADDRESS stands for -#. "hardware address". -#: grub-core/net/net.c:1762 -msgid "SHORTNAME CARD ADDRESS [HWADDRESS]" -msgstr "שהוֹרתנ×מע צ×רד ×דדרעשש [הו×דדרעשש]" - -#: grub-core/net/net.c:1763 -msgid "Add a network address." -msgstr "×דד × × ×¢×ª×•×•Ö¹×¨×›Ö¼ ×דדרעשש." - -#: grub-core/net/net.c:1766 -msgid "[CARD [HWADDRESS]]" -msgstr "[צ×רד [הו×דדרעשש]]" - -#: grub-core/net/net.c:1767 -msgid "Perform an IPV6 autoconfiguration" -msgstr "פּערפֿוֹרמ ××  ִיפּבֿ6 ×וּתוֹצוֹנפִֿיגוּר×תִיוֹנ" - -#: grub-core/net/net.c:1770 grub-core/net/net.c:1777 -msgid "SHORTNAME" -msgstr "שהוֹרתנ×מע" - -#: grub-core/net/net.c:1771 -msgid "Delete a network address." -msgstr "דעלעתע × × ×¢×ª×•×•Ö¹×¨×›Ö¼ ×דדרעשש." - -#. TRANSLATORS: "gw" is a keyword. -#: grub-core/net/net.c:1774 -msgid "SHORTNAME NET [INTERFACE| gw GATEWAY]" -msgstr "שהוֹרתנ×מע נעת [ִינתערפֿ×צע| גו ×’×תעו××™Ö´]" - -#: grub-core/net/net.c:1775 -msgid "Add a network route." -msgstr "×דד × × ×¢×ª×•×•Ö¹×¨×›Ö¼ רוֹוּתע." - -#: grub-core/net/net.c:1778 -msgid "Delete a network route." -msgstr "דעלעתע × × ×¢×ª×•×•Ö¹×¨×›Ö¼ רוֹוּתע." - -#: grub-core/net/net.c:1780 -msgid "list network routes" -msgstr "לִישת נעתווֹרכּ רוֹוּתעש" - -#: grub-core/net/net.c:1782 -msgid "list network cards" -msgstr "לִישת נעתווֹרכּ צ×רדש" - -#: grub-core/net/net.c:1784 -msgid "list network addresses" -msgstr "לִישת נעתווֹרכּ ×דדרעששעש" - -#: grub-core/net/tcp.c:681 -msgid "connection refused" -msgstr "צוֹננעצתִיוֹנ רעפֿוּשעד" - -#: grub-core/net/tcp.c:684 -msgid "connection timeout" -msgstr "צוֹננעצתִיוֹנ תִימעוֹוּת" - -#: grub-core/normal/auth.c:220 -msgid "Enter username: " -msgstr "ענתער וּשערנ×מע: " - -#: grub-core/normal/auth.c:269 -msgid "[USERLIST]" -msgstr "[וּשערלִישת]" - -#: grub-core/normal/auth.c:270 -msgid "Check whether user is in USERLIST." -msgstr "צהעצכּ והעתהער וּשער ִיש Ö´×™×  וּשערלִישת." - -#: grub-core/normal/cmdline.c:174 grub-core/normal/menu_entry.c:1068 -msgid "Possible commands are:" -msgstr "פּוֹששִיבּלע צוֹממ×נדש ×רע:" - -#: grub-core/normal/cmdline.c:177 grub-core/normal/menu_entry.c:1072 -msgid "Possible devices are:" -msgstr "פּוֹששִיבּלע דעבִֿיצעש ×רע:" - -#: grub-core/normal/cmdline.c:180 grub-core/normal/menu_entry.c:1076 -msgid "Possible files are:" -msgstr "פּוֹששִיבּלע פִֿילעש ×רע:" - -#: grub-core/normal/cmdline.c:183 grub-core/normal/menu_entry.c:1080 -msgid "Possible partitions are:" -msgstr "פּוֹששִיבּלע פּ×רתִיתִיוֹנש ×רע:" - -#: grub-core/normal/cmdline.c:186 grub-core/normal/menu_entry.c:1084 -msgid "Possible arguments are:" -msgstr "פּוֹששִיבּלע ×רגוּמענתש ×רע:" - -#. TRANSLATORS: this message is used if none of above matches. -#. This shouldn't happen but please use the general term for -#. "thing" or "object". -#: grub-core/normal/cmdline.c:192 grub-core/normal/menu_entry.c:1088 -msgid "Possible things are:" -msgstr "פּוֹששִיבּלע תהִינגש ×רע:" - -#: grub-core/normal/color.c:81 -#, c-format -msgid "Warning: syntax error (missing slash) in `%s'\n" -msgstr "ו×רנִינג: שיִנת×כּס עררוֹר (מִיששִינג של×שה) Ö´×™×  `%s'\n" - -#: grub-core/normal/color.c:90 -#, c-format -msgid "Warning: invalid foreground color `%s'\n" -msgstr "ו×רנִינג: ִינבֿ×לִיד פֿוֹרעגרוֹוּנד צוֹלוֹר `%s'\n" - -#: grub-core/normal/color.c:96 -#, c-format -msgid "Warning: invalid background color `%s'\n" -msgstr "ו×רנִינג: ִינבֿ×לִיד בּ×צכּגרוֹוּנד צוֹלוֹר `%s'\n" - -#: grub-core/normal/context.c:206 -msgid "ENVVAR [ENVVAR] ..." -msgstr "ענבֿבֿ×ר [ענבֿבֿ×ר] ..." - -#: grub-core/normal/context.c:207 -msgid "Export variables." -msgstr "עכּספּוֹרת בֿ×רִי×בּלעש." - -#: grub-core/normal/datetime.c:25 -msgid "Sunday" -msgstr "שוּנד××™Ö´" - -#: grub-core/normal/datetime.c:26 -msgid "Monday" -msgstr "מוֹנד××™Ö´" - -#: grub-core/normal/datetime.c:27 -msgid "Tuesday" -msgstr "תוּעשד××™Ö´" - -#: grub-core/normal/datetime.c:28 -msgid "Wednesday" -msgstr "ועדנעשד××™Ö´" - -#: grub-core/normal/datetime.c:29 -msgid "Thursday" -msgstr "תהוּרשד××™Ö´" - -#: grub-core/normal/datetime.c:30 -msgid "Friday" -msgstr "פֿרִיד××™Ö´" - -#: grub-core/normal/datetime.c:31 -msgid "Saturday" -msgstr "ש×תוּרד××™Ö´" - -#: grub-core/normal/dyncmd.c:187 -msgid "module isn't loaded" -msgstr "מוֹדוּלע ִישנ'ת לוֹ×דעד" - -#: grub-core/normal/main.c:211 -#, c-format -msgid "GNU GRUB version %s" -msgstr "גנוּ גרוּבּ בֿערשִיוֹנ %s" - -#: grub-core/normal/main.c:360 -msgid "ESC at any time exits." -msgstr "עשצ ×ת ×× ×™Ö´ תִימע עכּסִיתש." - -#: grub-core/normal/main.c:363 -#, c-format -msgid "" -"Minimal BASH-like line editing is supported. For the first word, TAB lists " -"possible command completions. Anywhere else TAB lists possible device or " -"file completions. %s" -msgstr "" -"מִינִימ×ל בּ×שה-לִיכּע לִינע עדִיתִינג ִיש שוּפּפּוֹרתעד. פֿוֹר תהע פִֿירשת ווֹרד, ת×בּ לִישתש " -"פּוֹששִיבּלע צוֹממ×נד צוֹמפּלעתִיוֹנש. ×ניִוהערע עלשע ת×בּ לִישתש פּוֹששִיבּלע דעבִֿיצע וֹר " -"פִֿילע צוֹמפּלעתִיוֹנש. %s" - -#. TRANSLATORS: it's command line prompt. -#: grub-core/normal/main.c:395 -msgid ">" -msgstr ">" - -#. TRANSLATORS: it's command line prompt. -#: grub-core/normal/main.c:398 -msgid "grub>" -msgstr "גרוּבּ>" - -#: grub-core/normal/main.c:518 -msgid "Clear the screen." -msgstr "צלע×ר תהע שצרעענ." - -#: grub-core/normal/main.c:527 -msgid "Enter normal mode." -msgstr "ענתער נוֹרמ×ל מוֹדע." - -#: grub-core/normal/main.c:529 -msgid "Exit from normal mode." -msgstr "עכּסִית פֿרוֹמ נוֹרמ×ל מוֹדע." - -#: grub-core/normal/menu.c:66 grub-core/normal/menu_entry.c:1449 -msgid "Press any key to continue..." -msgstr "פּרעשש ×× ×™Ö´ ×›Ö¼×¢×™Ö´ תוֹ צוֹנתִינוּע..." - -#: grub-core/normal/menu.c:815 -#, c-format -msgid "Booting `%s'" -msgstr "בּוֹוֹתִינג `%s'" - -#: grub-core/normal/menu.c:827 -#, c-format -msgid "Falling back to `%s'" -msgstr "פֿ×ללִינג בּ×צכּ תוֹ `%s'" - -#: grub-core/normal/menu.c:843 -msgid "Failed to boot both default and fallback entries.\n" -msgstr "פֿ×ִילעד תוֹ בּוֹוֹת בּוֹתה דעפֿ×וּלת ×נד פֿ×ללבּ×צכּ ענתרִיעש.\n" - -#: grub-core/normal/menu_entry.c:1171 -msgid "Booting a command list" -msgstr "בּוֹוֹתִינג × ×¦×•Ö¹×ž×ž×נד לִישת" - -#: grub-core/normal/menu_text.c:160 -msgid "" -"Minimum Emacs-like screen editing is supported. TAB lists completions. Press " -"Ctrl-x or F10 to boot, Ctrl-c or F2 for a command-line or ESC to discard " -"edits and return to the GRUB menu." -msgstr "" -"מִינִימוּמ עמ×צש-לִיכּע שצרעענ עדִיתִינג ִיש שוּפּפּוֹרתעד. ת×בּ לִישתש צוֹמפּלעתִיוֹנש. פּרעשש " -"צתרל-כּס וֹר פֿ10 תוֹ בּוֹוֹת, צתרל-צ וֹר פֿ2 פֿוֹר × ×¦×•Ö¹×ž×ž×נד-לִינע וֹר עשצ תוֹ דִישצ×רד " -"עדִיתש ×נד רעתוּרנ תוֹ תהע גרוּבּ מענוּ." - -#: grub-core/normal/menu_text.c:170 -#, c-format -msgid "Use the %C and %C keys to select which entry is highlighted." -msgstr "וּשע תהע %C ×נד %C כּעיִש תוֹ שעלעצת והִיצה ענתריִ ִיש הִיגהלִיגהתעד." - -#. TRANSLATORS: that's the list of binary unit prefixes. -#: grub-core/normal/misc.c:38 -msgid "B" -msgstr "בּ" - -#: grub-core/normal/misc.c:38 -msgid "KiB" -msgstr "כִּיבּ" - -#: grub-core/normal/misc.c:38 -msgid "MiB" -msgstr "מִיבּ" - -#: grub-core/normal/misc.c:38 -msgid "GiB" -msgstr "גִיבּ" - -#: grub-core/normal/misc.c:38 -msgid "TiB" -msgstr "תִיבּ" - -#: grub-core/normal/misc.c:38 -msgid "PiB" -msgstr "פִּיבּ" - -#. TRANSLATORS: that's the list of binary unit prefixes. -#: grub-core/normal/misc.c:40 -msgid "K" -msgstr "×›Ö¼" - -#: grub-core/normal/misc.c:40 -msgid "M" -msgstr "מ" - -#: grub-core/normal/misc.c:40 -msgid "G" -msgstr "×’" - -#: grub-core/normal/misc.c:40 -msgid "T" -msgstr "ת" - -#: grub-core/normal/misc.c:40 -msgid "P" -msgstr "פּ" - -#. TRANSLATORS: that's the list of binary unit prefixes. -#: grub-core/normal/misc.c:42 -msgid "B/s" -msgstr "בּ/ש" - -#: grub-core/normal/misc.c:42 -msgid "KiB/s" -msgstr "כִּיבּ/ש" - -#: grub-core/normal/misc.c:42 -msgid "MiB/s" -msgstr "מִיבּ/ש" - -#: grub-core/normal/misc.c:42 -msgid "GiB/s" -msgstr "גִיבּ/ש" - -#: grub-core/normal/misc.c:42 -msgid "TiB/s" -msgstr "תִיבּ/ש" - -#: grub-core/normal/misc.c:42 -msgid "PiB/s" -msgstr "פִּיבּ/ש" - -#: grub-core/normal/misc.c:96 -#, c-format -msgid "Partition %s:" -msgstr "פּ×רתִיתִיוֹנ %s:" - -#: grub-core/normal/misc.c:101 -#, c-format -msgid "Device %s:" -msgstr "דעבִֿיצע %s:" - -#: grub-core/normal/misc.c:107 -msgid "Filesystem cannot be accessed" -msgstr "פִֿילעשיִשתעמ צ×ננוֹת בּע ×צצעששעד" - -#: grub-core/normal/misc.c:121 -#, c-format -msgid "Filesystem type %s" -msgstr "פִֿילעשיִשתעמ תיִפּע %s" - -#: grub-core/normal/misc.c:131 -#, c-format -msgid "- Label `%s'" -msgstr "- ל×בּעל `%s'" - -#. TRANSLATORS: Arguments are year, month, day, hour, minute, -#. second, day of the week (translated). -#: grub-core/normal/misc.c:148 -#, c-format -msgid "- Last modification time %d-%02d-%02d %02d:%02d:%02d %s" -msgstr "- ל×שת מוֹדִיפִֿיצ×תִיוֹנ תִימע %d-%02d-%02d %02d:%02d:%02d %s" - -#: grub-core/normal/misc.c:171 -msgid "No known filesystem detected" -msgstr "נוֹ כּנוֹונ פִֿילעשיִשתעמ דעתעצתעד" - -#: grub-core/normal/misc.c:174 -#, c-format -msgid " - Partition start at %llu%sKiB" -msgstr " - פּ×רתִיתִיוֹנ שת×רת ×ת %llu%sכִּיבּ" - -#: grub-core/normal/misc.c:178 -#, c-format -msgid " - Sector size %uB" -msgstr " - שעצתוֹר שִיזע %uבּ" - -#: grub-core/normal/misc.c:180 -msgid " - Total size unknown" -msgstr " - תוֹת×ל שִיזע וּנכּנוֹונ" - -#: grub-core/normal/misc.c:182 -#, c-format -msgid " - Total size %llu%sKiB" -msgstr " - תוֹת×ל שִיזע %llu%sכִּיבּ" - -#. TRANSLATORS: Replace dot with appropriate decimal separator for -#. your language. -#: grub-core/normal/misc.c:186 -msgid ".5" -msgstr ".5" - -#. TRANSLATORS: This has to fit on one line. It's ok to include few -#. words but don't write poems. -#: grub-core/normal/term.c:82 -msgid "--MORE--" -msgstr "--מוֹרע--" - -#: grub-core/osdep/aros/config.c:92 grub-core/osdep/unix/config.c:137 -#: grub-core/osdep/windows/config.c:55 -#, c-format -msgid "cannot open configuration file `%s': %s" -msgstr "צ×ננוֹת וֹפּענ צוֹנפִֿיגוּר×תִיוֹנ פִֿילע `%s': %s" - -#: grub-core/osdep/basic/compress.c:8 grub-core/osdep/basic/compress.c:14 -#: grub-core/osdep/basic/compress.c:20 -msgid "no compression is available for your platform" -msgstr "נוֹ צוֹמפּרעששִיוֹנ ִיש ×בֿ×ִיל×בּלע פֿוֹר יִוֹוּר פּל×תפֿוֹרמ" - -#: grub-core/osdep/basic/no_platform.c:30 -#: grub-core/osdep/windows/platform.c:418 -msgid "no IEEE1275 routines are available for your platform" -msgstr "נוֹ Ö´×™×¢×¢×¢1275 רוֹוּתִינעש ×רע ×בֿ×ִיל×בּלע פֿוֹר יִוֹוּר פּל×תפֿוֹרמ" - -#: grub-core/osdep/basic/no_platform.c:38 -msgid "no EFI routines are available for your platform" -msgstr "נוֹ עפִֿי רוֹוּתִינעש ×רע ×בֿ×ִיל×בּלע פֿוֹר יִוֹוּר פּל×תפֿוֹרמ" - -#: grub-core/osdep/basic/no_platform.c:45 -#: grub-core/osdep/windows/platform.c:425 -msgid "no SGI routines are available for your platform" -msgstr "נוֹ שגִי רוֹוּתִינעש ×רע ×בֿ×ִיל×בּלע פֿוֹר יִוֹוּר פּל×תפֿוֹרמ" - -#. TRANSLATORS: The OS itself may very well have a random -#. number generator but GRUB doesn't know how to access it. -#: grub-core/osdep/basic/random.c:42 -msgid "no random number generator is available for your OS" -msgstr "נוֹ ר×נדוֹמ נוּמבּער גענער×תוֹר ִיש ×בֿ×ִיל×בּלע פֿוֹר יִוֹוּר וֹש" - -#: grub-core/osdep/devmapper/getroot.c:81 -msgid "Failed to create `device-mapper' tree" -msgstr "פֿ×ִילעד תוֹ צרע×תע `דעבִֿיצע-מ×פּפּער' תרעע" - -#: grub-core/osdep/devmapper/getroot.c:197 -#: grub-core/osdep/freebsd/getroot.c:202 -#, c-format -msgid "can't mount encrypted volume `%s': %s" -msgstr "צ×× 'ת מוֹוּנת ענצריִפּתעד בֿוֹלוּמע `%s': %s" - -#. TRANSLATORS: geom is the name of (k)FreeBSD device framework. -#. Usually left untranslated. -#. -#: grub-core/osdep/freebsd/getroot.c:82 grub-core/osdep/freebsd/getroot.c:164 -#: grub-core/osdep/freebsd/getroot.c:258 grub-core/osdep/freebsd/getroot.c:316 -msgid "couldn't open geom" -msgstr "צוֹוּלדנ'ת וֹפּענ געוֹמ" - -#: grub-core/osdep/freebsd/getroot.c:182 grub-core/osdep/freebsd/getroot.c:277 -msgid "couldn't find geli consumer" -msgstr "צוֹוּלדנ'ת פִֿינד געלִי צוֹנשוּמער" - -#: grub-core/osdep/freebsd/getroot.c:282 -msgid "couldn't retrieve geli UUID" -msgstr "צוֹוּלדנ'ת רעתרִיעבֿע געלִי וּוִּיד" - -#. TRANSLATORS: geom is the name of (k)FreeBSD device framework. -#. Usually left untranslated. "part" is the identifier of one of its -#. classes. -#: grub-core/osdep/freebsd/getroot.c:325 -msgid "couldn't find geom `part' class" -msgstr "צוֹוּלדנ'ת פִֿינד געוֹמ `פּ×רת' צל×שש" - -#: grub-core/osdep/freebsd/hostdisk.c:72 grub-core/osdep/linux/hostdisk.c:93 -msgid "unaligned device size" -msgstr "וּנ×לִיגנעד דעבִֿיצע שִיזע" - -#: grub-core/osdep/generic/blocklist.c:56 -#, c-format -msgid "attempting to read the core image `%s' from GRUB" -msgstr "×תתעמפּתִינג תוֹ רע×ד תהע צוֹרע ִימ××’×¢ `%s' פֿרוֹמ גרוּבּ" - -#: grub-core/osdep/generic/blocklist.c:57 -#, c-format -msgid "attempting to read the core image `%s' from GRUB again" -msgstr "×תתעמפּתִינג תוֹ רע×ד תהע צוֹרע ִימ××’×¢ `%s' פֿרוֹמ גרוּבּ ××’×Ö´×™× " - -#: grub-core/osdep/generic/blocklist.c:115 -#, c-format -msgid "cannot read `%s' correctly" -msgstr "צ×ננוֹת רע×ד `%s' צוֹררעצתליִ" - -#: grub-core/osdep/generic/blocklist.c:126 -msgid "failed to read the sectors of the core image" -msgstr "פֿ×ִילעד תוֹ רע×ד תהע שעצתוֹרש וֹפֿ תהע צוֹרע ִימ××’×¢" - -#. TRANSLATORS: On GNU/Hurd, a "translator" is similar to a filesystem -#. mount, but handled by a userland daemon, whose invocation command line -#. is being fetched here. First %s is the file being looked at (for which -#. we are fetching the "translator" command line), second %s is the error -#. message. -#. -#: grub-core/osdep/hurd/getroot.c:79 -#, c-format -msgid "cannot get translator command line for path `%s': %s" -msgstr "צ×ננוֹת געת תר×נשל×תוֹר צוֹממ×נד לִינע פֿוֹר פּ×תה `%s': %s" - -#: grub-core/osdep/hurd/getroot.c:82 -#, c-format -msgid "translator command line is empty for path `%s'" -msgstr "תר×נשל×תוֹר צוֹממ×נד לִינע ִיש עמפּתיִ פֿוֹר פּ×תה `%s'" - -#. TRANSLATORS: we expect to get something like -#. /hurd/foobar --option1 --option2=baz /dev/something -#. -#: grub-core/osdep/hurd/getroot.c:98 -#, c-format -msgid "" -"translator `%s' for path `%s' has several non-option words, at least `%s' " -"and `%s'" -msgstr "" -"תר×נשל×תוֹר `%s' פֿוֹר פּ×תה `%s' ×”×ש שעבֿער×ל נוֹנ-וֹפּתִיוֹנ ווֹרדש, ×ת לע×שת `%s' " -"×נד `%s'" - -#. TRANSLATORS: we expect to get something like -#. /hurd/foobar --option1 --option2=baz /dev/something -#. -#: grub-core/osdep/hurd/getroot.c:109 -#, c-format -msgid "" -"translator `%s' for path `%s' is given only options, cannot find device part" -msgstr "" -"תר×נשל×תוֹר `%s' פֿוֹר פּ×תה `%s' ִיש גִיבֿענ וֹנליִ וֹפּתִיוֹנש, צ×ננוֹת פִֿינד דעבִֿיצע פּ×רת" - -#: grub-core/osdep/hurd/hostdisk.c:73 -#, c-format -msgid "Storage information for `%s' does not include type" -msgstr "שתוֹר××’×¢ ִינפֿוֹרמ×תִיוֹנ פֿוֹר `%s' דוֹעש נוֹת ִינצלוּדע תיִפּע" - -#: grub-core/osdep/hurd/hostdisk.c:75 -#, c-format -msgid "`%s' is not a local disk" -msgstr "`%s' ִיש נוֹת × ×œ×•Ö¹×¦×ל דִישכּ" - -#: grub-core/osdep/hurd/hostdisk.c:78 -#, c-format -msgid "" -"Storage information for `%s' indicates neither a plain partition nor a plain " -"disk" -msgstr "" -"שתוֹר××’×¢ ִינפֿוֹרמ×תִיוֹנ פֿוֹר `%s' ִינדִיצ×תעש נעִיתהער × ×¤Ö¼×œ×Ö´×™×  פּ×רתִיתִיוֹנ נוֹר × ×¤Ö¼×œ×Ö´×™×  " -"דִישכּ" - -#: grub-core/osdep/linux/blocklist.c:81 grub-core/osdep/linux/blocklist.c:96 -#: grub-core/osdep/linux/blocklist.c:122 -#, c-format -msgid "can't retrieve blocklists: %s" -msgstr "צ×× 'ת רעתרִיעבֿע בּלוֹצכּלִישתש: %s" - -#: grub-core/osdep/linux/blocklist.c:84 -msgid "blocksize is not divisible by 512" -msgstr "בּלוֹצכּשִיזע ִיש נוֹת דִיבִֿישִיבּלע בּיִ 512" - -#: grub-core/osdep/linux/blocklist.c:86 -msgid "invalid zero blocksize" -msgstr "ִינבֿ×לִיד זערוֹ בּלוֹצכּשִיזע" - -#: grub-core/osdep/linux/blocklist.c:90 util/setup.c:744 -msgid "can't retrieve blocklists" -msgstr "צ×× 'ת רעתרִיעבֿע בּלוֹצכּלִישתש" - -#: grub-core/osdep/linux/getroot.c:154 -#, c-format -msgid "ioctl RAID_VERSION error: %s" -msgstr "ִיוֹצתל ר×ִיד_בֿערשִיוֹנ עררוֹר: %s" - -#: grub-core/osdep/linux/getroot.c:160 grub-core/osdep/linux/getroot.c:164 -#, c-format -msgid "unsupported RAID version: %d.%d" -msgstr "וּנשוּפּפּוֹרתעד ר×ִיד בֿערשִיוֹנ: %d.%d" - -#: grub-core/osdep/linux/getroot.c:169 -#, c-format -msgid "ioctl GET_ARRAY_INFO error: %s" -msgstr "ִיוֹצתל געת_×רר××™Ö´_ִינפֿוֹ עררוֹר: %s" - -#: grub-core/osdep/linux/getroot.c:178 -#, c-format -msgid "ioctl GET_DISK_INFO error: %s" -msgstr "ִיוֹצתל געת_דִישכּ_ִינפֿוֹ עררוֹר: %s" - -#: grub-core/osdep/linux/getroot.c:608 grub-core/osdep/linux/getroot.c:678 -#: grub-core/osdep/linux/hostdisk.c:126 grub-core/osdep/unix/getroot.c:253 -#: grub-core/osdep/unix/getroot.c:642 grub-core/osdep/unix/platform.c:92 -#: grub-core/osdep/unix/platform.c:100 -#, c-format -msgid "Unable to open stream from %s: %s" -msgstr "וּנ×בּלע תוֹ וֹפּענ שתרע×מ פֿרוֹמ %s: %s" - -#: grub-core/osdep/linux/getroot.c:1033 -#, c-format -msgid "unknown kind of RAID device `%s'" -msgstr "וּנכּנוֹונ כִּינד וֹפֿ ר×ִיד דעבִֿיצע `%s'" - -#: grub-core/osdep/linux/ofpath.c:181 -#, c-format -msgid "`obppath' not found in parent dirs of `%s', no IEEE1275 name discovery" -msgstr "`וֹבּפּפּ×תה' נוֹת פֿוֹוּנד Ö´×™×  פּ×רענת דִירש וֹפֿ `%s', נוֹ Ö´×™×¢×¢×¢1275 × ×מע דִישצוֹבֿעריִ" - -#: grub-core/osdep/linux/ofpath.c:222 grub-core/osdep/unix/getroot.c:505 -#: grub-core/osdep/unix/getroot.c:529 grub-core/osdep/unix/relpath.c:49 -#: util/grub-install.c:984 util/grub-install.c:1331 util/grub-probe.c:323 -#, c-format -msgid "failed to get canonical path of `%s'" -msgstr "פֿ×ִילעד תוֹ געת צ×נוֹנִיצ×ל פּ×תה וֹפֿ `%s'" - -#: grub-core/osdep/linux/ofpath.c:740 -#, c-format -msgid "unknown device type %s" -msgstr "וּנכּנוֹונ דעבִֿיצע תיִפּע %s" - -#: grub-core/osdep/linux/ofpath.c:758 util/ieee1275/grub-ofpathname.c:39 -#, c-format -msgid "Usage: %s DEVICE\n" -msgstr "וּש××’×¢: %s דעבִֿיצע\n" - -#: grub-core/osdep/unix/exec.c:86 grub-core/osdep/unix/exec.c:172 -#: grub-core/osdep/unix/exec.c:217 -#, c-format -msgid "Unable to fork: %s" -msgstr "וּנ×בּלע תוֹ פֿוֹרכּ: %s" - -#: grub-core/osdep/unix/exec.c:166 grub-core/osdep/unix/exec.c:211 -#, c-format -msgid "Unable to create pipe: %s" -msgstr "וּנ×בּלע תוֹ צרע×תע פִּיפּע: %s" - -#: grub-core/osdep/unix/getroot.c:370 -msgid "cannot save the original directory" -msgstr "צ×ננוֹת ש×בֿע תהע וֹרִיגִינ×ל דִירעצתוֹריִ" - -#: grub-core/osdep/unix/getroot.c:423 grub-core/osdep/unix/getroot.c:480 -#: grub-core/osdep/unix/getroot.c:489 -msgid "cannot restore the original directory" -msgstr "צ×ננוֹת רעשתוֹרע תהע וֹרִיגִינ×ל דִירעצתוֹריִ" - -#. TRANSLATORS: "stat" comes from the name of POSIX function. -#: grub-core/osdep/unix/getroot.c:551 grub-core/osdep/unix/hostdisk.c:61 -#: grub-core/osdep/unix/relpath.c:73 grub-core/osdep/unix/relpath.c:97 -#: util/getroot.c:160 util/getroot.c:162 util/grub-install.c:774 -#: util/grub-macbless.c:70 -#, c-format -msgid "cannot stat `%s': %s" -msgstr "צ×ננוֹת שת×ת `%s': %s" - -#: grub-core/osdep/unix/hostdisk.c:293 -#, c-format -msgid "cannot make temporary file: %s" -msgstr "צ×ננוֹת מ××›Ö¼×¢ תעמפּוֹר×ריִ פִֿילע: %s" - -#: grub-core/osdep/unix/hostdisk.c:311 -#, c-format -msgid "cannot make temporary directory: %s" -msgstr "צ×ננוֹת מ××›Ö¼×¢ תעמפּוֹר×ריִ דִירעצתוֹריִ: %s" - -#: grub-core/osdep/unix/platform.c:77 -#, c-format -msgid "" -"couldn't find IEEE1275 device path for %s.\n" -"You will have to set `boot-device' variable manually" -msgstr "" -"צוֹוּלדנ'ת פִֿינד Ö´×™×¢×¢×¢1275 דעבִֿיצע פּ×תה פֿוֹר %s.\n" -"יִוֹוּ וִילל ×”×בֿע תוֹ שעת `בּוֹוֹת-דעבִֿיצע' בֿ×רִי×בּלע מ×נוּ×לליִ" - -#. TRANSLATORS: This message is shown when required executable `%s' -#. isn't found. -#: grub-core/osdep/unix/platform.c:149 grub-core/osdep/unix/platform.c:189 -#, c-format -msgid "%s: not found" -msgstr "%s: נוֹת פֿוֹוּנד" - -#: grub-core/osdep/unix/platform.c:225 -#, c-format -msgid "" -"`nvsetenv' failed. \n" -"You will have to set `boot-device' variable manually. At the IEEE1275 " -"prompt, type:\n" -" %s\n" -msgstr "" -"`נבֿשעתענבֿ' פֿ×ִילעד. \n" -"יִוֹוּ וִילל ×”×בֿע תוֹ שעת `בּוֹוֹת-דעבִֿיצע' בֿ×רִי×בּלע מ×נוּ×לליִ. ×ת תהע Ö´×™×¢×¢×¢1275 " -"פּרוֹמפּת, תיִפּע:\n" -" %s\n" - -#: grub-core/osdep/unix/platform.c:240 -msgid "You will have to set `SystemPartition' and `OSLoader' manually." -msgstr "יִוֹוּ וִילל ×”×בֿע תוֹ שעת `שיִשתעמפּ×רתִיתִיוֹנ' ×נד `וֹשלוֹ×דער' מ×נוּ×לליִ." - -#. TRANSLATORS: canonical pathname is the -#. complete one e.g. /etc/fstab. It has -#. to contain `/' normally, if it doesn't -#. we're in trouble and throw this error. -#: grub-core/osdep/unix/relpath.c:90 -msgid "no `/' in canonical filename" -msgstr "נוֹ `/' Ö´×™×  צ×נוֹנִיצ×ל פִֿילענ×מע" - -#: grub-core/osdep/windows/hostdisk.c:151 -msgid "cygwin_conv_path() failed" -msgstr "ציִגוִינ_צוֹנבֿ_פּ×תה() פֿ×ִילעד" - -#: grub-core/osdep/windows/hostdisk.c:501 util/grub-install.c:570 -msgid "couldn't retrieve random data" -msgstr "צוֹוּלדנ'ת רעתרִיעבֿע ר×נדוֹמ ד×ת×" - -#: grub-core/osdep/windows/platform.c:97 -msgid "Insufficient privileges to access firmware, assuming BIOS" -msgstr "ִינשוּפֿפִֿיצִיענת פּרִיבִֿילעגעש תוֹ ×צצעשש פִֿירמו×רע, ×ששוּמִינג בִּיוֹש" - -#: grub-core/osdep/windows/platform.c:225 -msgid "no EFI routines are available when running in BIOS mode" -msgstr "נוֹ עפִֿי רוֹוּתִינעש ×רע ×בֿ×ִיל×בּלע והענ רוּננִינג Ö´×™×  בִּיוֹש מוֹדע" - -#: grub-core/osdep/windows/platform.c:240 -msgid "unexpected EFI error" -msgstr "וּנעכּספּעצתעד עפִֿי עררוֹר" - -#: grub-core/osdep/windows/platform.c:315 -msgid "Couldn't find a free BootNNNN slot" -msgstr "צוֹוּלדנ'ת פִֿינד × ×¤Ö¿×¨×¢×¢ בּוֹוֹתננננ שלוֹת" - -#: grub-core/partmap/gpt.c:191 -msgid "" -"this GPT partition label contains no BIOS Boot Partition; embedding won't be " -"possible" -msgstr "" -"תהִיש גפּת פּ×רתִיתִיוֹנ ל×בּעל צוֹנת×ִינש נוֹ בִּיוֹש בּוֹוֹת פּ×רתִיתִיוֹנ; עמבּעדדִינג ווֹנ'ת בּע " -"פּוֹששִיבּלע" - -#: grub-core/partmap/gpt.c:196 -msgid "your BIOS Boot Partition is too small; embedding won't be possible" -msgstr "יִוֹוּר בִּיוֹש בּוֹוֹת פּ×רתִיתִיוֹנ ִיש תוֹוֹ שמ×לל; עמבּעדדִינג ווֹנ'ת בּע פּוֹששִיבּלע" - -#. TRANSLATORS: MBR gap and boot track is the same thing and is the space -#. between MBR and first partitition. If your language translates well only -#. "boot track", you can just use it everywhere. Next two messages are about -#. RAID controllers/software bugs which GRUB has to live with. Please spread -#. the message that these are bugs in other software and not merely -#. suboptimal behaviour. -#: grub-core/partmap/msdos.c:51 -#, c-format -msgid "" -"Sector %llu is already in use by raid controller `%s'; avoiding it. Please " -"ask the manufacturer not to store data in MBR gap" -msgstr "" -"שעצתוֹר %llu ִיש ×לרע×דיִ Ö´×™×  וּשע בּיִ ר×ִיד צוֹנתרוֹללער `%s'; ×בֿוִֹידִינג ִית. פּלע×שע " -"×שכּ תהע מ×נוּפֿ×צתוּרער נוֹת תוֹ שתוֹרע ד××ª× Ö´×™×  מבּר ×’×פּ" - -#: grub-core/partmap/msdos.c:54 -#, c-format -msgid "" -"Sector %llu is already in use by the program `%s'; avoiding it. This " -"software may cause boot or other problems in future. Please ask its authors " -"not to store data in the boot track" -msgstr "" -"שעצתוֹר %llu ִיש ×לרע×דיִ Ö´×™×  וּשע בּיִ תהע פּרוֹגר×מ `%s'; ×בֿוִֹידִינג ִית. תהִיש " -"שוֹפֿתו×רע מ××™Ö´ צ×וּשע בּוֹוֹת וֹר וֹתהער פּרוֹבּלעמש Ö´×™×  פֿוּתוּרע. פּלע×שע ×שכּ ִיתש ×וּתהוֹרש " -"נוֹת תוֹ שתוֹרע ד××ª× Ö´×™×  תהע בּוֹוֹת תר×צכּ" - -#: grub-core/partmap/msdos.c:384 -msgid "" -"other software is using the embedding area, and there is not enough room for " -"core.img. Such software is often trying to store data in a way that avoids " -"detection. We recommend you investigate" -msgstr "" -"וֹתהער שוֹפֿתו×רע ִיש וּשִינג תהע עמבּעדדִינג ×רע×, ×נד תהערע ִיש נוֹת ענוֹוּגה רוֹוֹמ פֿוֹר " -"צוֹרע.ִימג. שוּצה שוֹפֿתו×רע ִיש וֹפֿתענ תריִִינג תוֹ שתוֹרע ד××ª× Ö´×™×  × ×•××™Ö´ תה×ת ×בֿוִֹידש " -"דעתעצתִיוֹנ. וע רעצוֹממענד יִוֹוּ ִינבֿעשתִיג×תע" - -#: grub-core/partmap/msdos.c:395 -msgid "" -"this msdos-style partition label has no post-MBR gap; embedding won't be " -"possible" -msgstr "" -"תהִיש משדוֹש-שתיִלע פּ×רתִיתִיוֹנ ל×בּעל ×”×ש נוֹ פּוֹשת-מבּר ×’×פּ; עמבּעדדִינג ווֹנ'ת בּע " -"פּוֹששִיבּלע" - -#: grub-core/partmap/msdos.c:404 -msgid "your embedding area is unusually small. core.img won't fit in it." -msgstr "יִוֹוּר עמבּעדדִינג ××¨×¢× Ö´×™×© וּנוּשוּ×לליִ שמ×לל. צוֹרע.ִימג ווֹנ'ת פִֿית Ö´×™×  ִית." - -#: grub-core/parttool/msdospart.c:39 -msgid "Make partition active" -msgstr "מ××›Ö¼×¢ פּ×רתִיתִיוֹנ ×צתִיבֿע" - -#: grub-core/parttool/msdospart.c:51 -msgid "not a primary partition" -msgstr "נוֹת × ×¤Ö¼×¨Ö´×™×ž×ריִ פּ×רתִיתִיוֹנ" - -#: grub-core/parttool/msdospart.c:69 -#, c-format -msgid "Partition %d is active now. \n" -msgstr "פּ×רתִיתִיוֹנ %d ִיש ×צתִיבֿע נוֹו. \n" - -#: grub-core/parttool/msdospart.c:74 -#, c-format -msgid "Cleared active flag on %d. \n" -msgstr "צלע×רעד ×צתִיבֿע פֿל××’ וֹנ %d. \n" - -#: grub-core/parttool/msdospart.c:87 -msgid "Change partition type" -msgstr "צה×× ×’×¢ פּ×רתִיתִיוֹנ תיִפּע" - -#: grub-core/parttool/msdospart.c:88 -msgid "Set `hidden' flag in partition type" -msgstr "שעת `הִידדענ' פֿל××’ Ö´×™×  פּ×רתִיתִיוֹנ תיִפּע" - -#: grub-core/parttool/msdospart.c:130 -#, c-format -msgid "the partition type 0x%x isn't valid" -msgstr "תהע פּ×רתִיתִיוֹנ תיִפּע 0כּס%x ִישנ'ת בֿ×לִיד" - -#. TRANSLATORS: In this case we're actually writing to the disk and actively -#. modifying partition type rather than just defining it. -#: grub-core/parttool/msdospart.c:137 -#, c-format -msgid "Setting partition type to 0x%x\n" -msgstr "שעתתִינג פּ×רתִיתִיוֹנ תיִפּע תוֹ 0כּס%x\n" - -#. TRANSLATORS: 0 is a quantifier. "break" (similar to bash) -#. can be used e.g. to break 3 loops at once. -#. But asking it to break 0 loops makes no sense. -#: grub-core/script/execute.c:143 -msgid "can't break 0 loops" -msgstr "צ×× 'ת בּרע××›Ö¼ 0 לוֹוֹפּש" - -#. TRANSLATORS: It's about not being -#. inside a function. "return" can be used only -#. in a function and this error occurs if it's used -#. anywhere else. -#: grub-core/script/execute.c:227 -msgid "not in function body" -msgstr "נוֹת Ö´×™×  פֿוּנצתִיוֹנ בּוֹדיִ" - -#: grub-core/script/execute.c:371 -#, c-format -msgid "invalid variable name `%s'" -msgstr "ִינבֿ×לִיד בֿ×רִי×בּלע × ×מע `%s'" - -#: grub-core/script/execute.c:953 -msgid "cannot allocate command buffer" -msgstr "צ×ננוֹת ×ללוֹצ×תע צוֹממ×נד בּוּפֿפֿער" - -#: grub-core/script/lexer.c:144 util/grub-fstest.c:330 -msgid "unexpected end of file" -msgstr "וּנעכּספּעצתעד ענד וֹפֿ פִֿילע" - -#: grub-core/script/main.c:55 grub-core/script/main.c:57 -#: grub-core/script/main.c:59 grub-core/script/main.c:67 -msgid "[NUM]" -msgstr "[נוּמ]" - -#: grub-core/script/main.c:55 -msgid "Exit from loops" -msgstr "עכּסִית פֿרוֹמ לוֹוֹפּש" - -#: grub-core/script/main.c:57 -msgid "Continue loops" -msgstr "צוֹנתִינוּע לוֹוֹפּש" - -#. TRANSLATORS: Positional arguments are -#. arguments $0, $1, $2, ... -#: grub-core/script/main.c:62 -msgid "Shift positional parameters." -msgstr "שהִיפֿת פּוֹשִיתִיוֹנ×ל פּ×ר×מעתערש." - -#: grub-core/script/main.c:64 -msgid "[VALUE]..." -msgstr "[בֿ×לוּע]..." - -#: grub-core/script/main.c:65 -msgid "Set positional parameters." -msgstr "שעת פּוֹשִיתִיוֹנ×ל פּ×ר×מעתערש." - -#. TRANSLATORS: It's a command description -#. and "Return" is a verb, not a noun. The -#. command in question is "return" and -#. has exactly the same semanics as bash -#. equivalent. -#: grub-core/script/main.c:73 -msgid "Return from a function." -msgstr "רעתוּרנ פֿרוֹמ × ×¤Ö¿×•Ö¼× ×¦×ªÖ´×™×•Ö¹× ." - -#: grub-core/term/gfxterm_background.c:176 -msgid "[-m (stretch|normal)] FILE" -msgstr "[-מ (שתרעתצה|נוֹרמ×ל)] פִֿילע" - -#: grub-core/term/gfxterm_background.c:177 -msgid "Load background image for active terminal." -msgstr "לוֹ×ד בּ×צכּגרוֹוּנד ִימ××’×¢ פֿוֹר ×צתִיבֿע תערמִינ×ל." - -#: grub-core/term/gfxterm_background.c:182 util/grub-install.c:302 -#: util/grub-install.c:303 util/grub-mkrescue.c:107 util/grub-mkrescue.c:108 -#: util/grub-render-label.c:61 util/grub-render-label.c:63 -msgid "COLOR" -msgstr "צוֹלוֹר" - -#: grub-core/term/gfxterm_background.c:183 -msgid "Set background color for active terminal." -msgstr "שעת בּ×צכּגרוֹוּנד צוֹלוֹר פֿוֹר ×צתִיבֿע תערמִינ×ל." - -#: grub-core/term/i386/coreboot/cbmemc.c:139 -msgid "Show CBMEM console content." -msgstr "שהוֹו צבּמעמ צוֹנשוֹלע צוֹנתענת." - -#: grub-core/term/serial.c:57 -msgid "Set the serial unit." -msgstr "שעת תהע שערִי×ל וּנִית." - -#: grub-core/term/serial.c:58 -msgid "Set the serial port address." -msgstr "שעת תהע שערִי×ל פּוֹרת ×דדרעשש." - -#: grub-core/term/serial.c:59 -msgid "Set the serial port speed." -msgstr "שעת תהע שערִי×ל פּוֹרת שפּעעד." - -#: grub-core/term/serial.c:60 -msgid "Set the serial port word length." -msgstr "שעת תהע שערִי×ל פּוֹרת ווֹרד לענגתה." - -#: grub-core/term/serial.c:61 -msgid "Set the serial port parity." -msgstr "שעת תהע שערִי×ל פּוֹרת פּ×רִיתיִ." - -#: grub-core/term/serial.c:62 -msgid "Set the serial port stop bits." -msgstr "שעת תהע שערִי×ל פּוֹרת שתוֹפּ בִּיתש." - -#: grub-core/term/serial.c:63 -msgid "Set the base frequency." -msgstr "שעת תהע בּ×שע פֿרעקוּענציִ." - -#: grub-core/term/serial.c:64 -msgid "Enable/disable RTS/CTS." -msgstr "×¢× ×בּלע/דִיש×בּלע רתש/צתש." - -#: grub-core/term/serial.c:218 -#, c-format -msgid "serial port `%s' isn't found" -msgstr "שערִי×ל פּוֹרת `%s' ִישנ'ת פֿוֹוּנד" - -#: grub-core/term/serial.c:254 -msgid "unsupported serial port flow control" -msgstr "וּנשוּפּפּוֹרתעד שערִי×ל פּוֹרת פֿלוֹו צוֹנתרוֹל" - -#: grub-core/term/serial.c:429 -msgid "[OPTIONS...]" -msgstr "[וֹפּתִיוֹנש...]" - -#: grub-core/term/serial.c:430 -msgid "Configure serial port." -msgstr "צוֹנפִֿיגוּרע שערִי×ל פּוֹרת." - -#: grub-core/term/terminfo.c:184 -#, c-format -msgid "unknown terminfo type `%s'" -msgstr "וּנכּנוֹונ תערמִינפֿוֹ תיִפּע `%s'" - -#: grub-core/term/terminfo.c:668 -msgid "ASCII" -msgstr "×שצִיִי" - -#: grub-core/term/terminfo.c:671 -msgid "UTF-8" -msgstr "וּתפֿ-8" - -#. TRANSLATORS: visually ordered UTF-8 is a non-compliant encoding -#. based on UTF-8 with right-to-left languages written in reverse. -#. Used on some terminals. Normal UTF-8 is refered as -#. "logically-ordered UTF-8" by opposition. -#: grub-core/term/terminfo.c:677 -msgid "visually-ordered UTF-8" -msgstr "בִֿישוּ×לליִ-וֹרדערעד וּתפֿ-8" - -#: grub-core/term/terminfo.c:680 -msgid "Unknown encoding" -msgstr "וּנכּנוֹונ ענצוֹדִינג" - -#: grub-core/term/terminfo.c:684 -msgid "Current terminfo types:" -msgstr "צוּררענת תערמִינפֿוֹ תיִפּעש:" - -#: grub-core/term/terminfo.c:699 -msgid "Terminal is ASCII-only [default]." -msgstr "תערמִינ×ל ִיש ×שצִיִי-וֹנליִ [דעפֿ×וּלת]." - -#: grub-core/term/terminfo.c:700 -msgid "Terminal is logical-ordered UTF-8." -msgstr "תערמִינ×ל ִיש לוֹגִיצ×ל-וֹרדערעד וּתפֿ-8." - -#: grub-core/term/terminfo.c:701 -msgid "Terminal is visually-ordered UTF-8." -msgstr "תערמִינ×ל ִיש בִֿישוּ×לליִ-וֹרדערעד וּתפֿ-8." - -#: grub-core/term/terminfo.c:703 -msgid "Terminal has specified geometry." -msgstr "תערמִינ×ל ×”×ש שפּעצִיפִֿיעד געוֹמעתריִ." - -#. TRANSLATORS: "x" has to be entered in, like an identifier, so please don't -#. use better Unicode codepoints. -#: grub-core/term/terminfo.c:706 -msgid "WIDTHxHEIGHT." -msgstr "וִידתהכּסהעִיגהת." - -#: grub-core/term/terminfo.c:746 -msgid "incorrect terminal dimensions specification" -msgstr "ִינצוֹררעצת תערמִינ×ל דִימענשִיוֹנש שפּעצִיפִֿיצ×תִיוֹנ" - -#: grub-core/term/terminfo.c:776 -#, c-format -msgid "terminal %s isn't found or it's not handled by terminfo" -msgstr "תערמִינ×ל %s ִישנ'ת פֿוֹוּנד וֹר ִית'ש נוֹת ×”×נדלעד בּיִ תערמִינפֿוֹ" - -#: grub-core/term/terminfo.c:785 -msgid "[[-a|-u|-v] [-g WxH] TERM [TYPE]]" -msgstr "[[-×|-וּ|-בֿ] [-×’ וכּסה] תערמ [תיִפּע]]" - -#: grub-core/term/terminfo.c:786 -msgid "Set terminfo type of TERM to TYPE.\n" -msgstr "שעת תערמִינפֿוֹ תיִפּע וֹפֿ תערמ תוֹ תיִפּע.\n" - -#. TRANSLATORS: this is the BLOCK-argument, not -#. environment block. -#: grub-core/tests/test_blockarg.c:49 -msgid "Print and execute block argument." -msgstr "פּרִינת ×נד עכּסעצוּתע בּלוֹצכּ ×רגוּמענת." - -#. TRANSLATORS: We're speaking about bitmap images like -#. JPEG or PNG. -#: grub-core/video/bitmap.c:209 -#, c-format -msgid "bitmap file `%s' is of unsupported format" -msgstr "בִּיתמ×פּ פִֿילע `%s' ִיש וֹפֿ וּנשוּפּפּוֹרתעד פֿוֹרמ×ת" - -#: grub-core/video/i386/pc/vbe.c:1191 -#, c-format -msgid " VBE info: version: %d.%d OEM software rev: %d.%d\n" -msgstr " בֿבּע ִינפֿוֹ: בֿערשִיוֹנ: %d.%d וֹעמ שוֹפֿתו×רע רעבֿ: %d.%d\n" - -#: grub-core/video/i386/pc/vbe.c:1198 -#, c-format -msgid " total memory: %d KiB\n" -msgstr " תוֹת×ל מעמוֹריִ: %d כִּיבּ\n" - -#: grub-core/video/video.c:596 grub-core/video/video.c:762 -msgid "no suitable video mode found" -msgstr "נוֹ שוִּית×בּלע בִֿידעוֹ מוֹדע פֿוֹוּנד" - -#: include/grub/crypto.h:403 -msgid "access denied" -msgstr "×צצעשש דענִיעד" - -#: include/grub/util/install.h:30 include/grub/util/install.h:35 -msgid "MODULES" -msgstr "מוֹדוּלעש" - -#: include/grub/util/install.h:31 -msgid "pre-load specified modules MODULES" -msgstr "פּרע-לוֹ×ד שפּעצִיפִֿיעד מוֹדוּלעש מוֹדוּלעש" - -#: include/grub/util/install.h:33 -msgid "embed a specific DTB" -msgstr "עמבּעד × ×©×¤Ö¼×¢×¦Ö´×™×¤Ö¿Ö´×™×¦ דתבּ" - -#: include/grub/util/install.h:36 -msgid "install only MODULES and their dependencies [default=all]" -msgstr "ִינשת×לל וֹנליִ מוֹדוּלעש ×נד תהעִיר דעפּענדענצִיעש [דעפֿ×וּלת=×לל]" - -#: include/grub/util/install.h:37 -msgid "THEMES" -msgstr "תהעמעש" - -#: include/grub/util/install.h:38 -#, c-format -msgid "install THEMES [default=%s]" -msgstr "ִינשת×לל תהעמעש [דעפֿ×וּלת=%s]" - -#: include/grub/util/install.h:39 -msgid "FONTS" -msgstr "פֿוֹנתש" - -#: include/grub/util/install.h:40 -#, c-format -msgid "install FONTS [default=%s]" -msgstr "ִינשת×לל פֿוֹנתש [דעפֿ×וּלת=%s]" - -#: include/grub/util/install.h:41 -msgid "LOCALES" -msgstr "לוֹצ×לעש" - -#: include/grub/util/install.h:42 -msgid "install only LOCALES [default=all]" -msgstr "ִינשת×לל וֹנליִ לוֹצ×לעש [דעפֿ×וּלת=×לל]" - -#: include/grub/util/install.h:45 -msgid "compress GRUB files [optional]" -msgstr "צוֹמפּרעשש גרוּבּ פִֿילעש [וֹפּתִיוֹנ×ל]" - -#: include/grub/util/install.h:48 util/grub-mkimage.c:83 -msgid "choose the compression to use for core image" -msgstr "צהוֹוֹשע תהע צוֹמפּרעששִיוֹנ תוֹ וּשע פֿוֹר צוֹרע ִימ××’×¢" - -#. TRANSLATORS: platform here isn't identifier. It can be translated. -#: include/grub/util/install.h:51 include/grub/util/install.h:54 -#: util/grub-mkimage.c:66 -#, c-format -msgid "use images and modules under DIR [default=%s/]" -msgstr "וּשע ִימ×געש ×נד מוֹדוּלעש וּנדער דִיר [דעפֿ×וּלת=%s/<פּל×תפֿוֹרמ>]" - -#: include/grub/util/install.h:57 -#, c-format -msgid "use translations under DIR [default=%s]" -msgstr "וּשע תר×נשל×תִיוֹנש וּנדער דִיר [דעפֿ×וּלת=%s]" - -#: include/grub/util/install.h:60 -#, c-format -msgid "use themes under DIR [default=%s]" -msgstr "וּשע תהעמעש וּנדער דִיר [דעפֿ×וּלת=%s]" - -#: include/grub/util/install.h:65 util/grub-mkimage.c:78 -msgid "embed FILE as public key for signature checking" -msgstr "עמבּעד פִֿילע ×ש פּוּבּלִיצ ×›Ö¼×¢×™Ö´ פֿוֹר שִיגנ×תוּרע צהעצכִּינג" - -#: util/editenv.c:59 util/grub-editenv.c:201 util/grub-install-common.c:535 -#: util/grub-mkimage.c:315 util/setup.c:791 -#, c-format -msgid "cannot sync `%s': %s" -msgstr "צ×ננוֹת שיִנצ `%s': %s" - -#: util/editenv.c:64 -#, c-format -msgid "cannot rename the file %s to %s" -msgstr "צ×ננוֹת רענ×מע תהע פִֿילע %s תוֹ %s" - -#: util/getroot.c:402 -#, c-format -msgid "disk does not exist, so falling back to partition device %s" -msgstr "דִישכּ דוֹעש נוֹת עכּסִישת, שוֹ פֿ×ללִינג בּ×צכּ תוֹ פּ×רתִיתִיוֹנ דעבִֿיצע %s" - -#: util/grub-editenv.c:45 util/grub-fstest.c:506 -msgid "Commands:" -msgstr "צוֹממ×נדש:" - -#: util/grub-editenv.c:47 -msgid "Create a blank environment block file." -msgstr "צרע×תע × ×‘Ö¼×œ×× ×›Ö¼ ענבִֿירוֹנמענת בּלוֹצכּ פִֿילע." - -#: util/grub-editenv.c:49 -msgid "List the current variables." -msgstr "לִישת תהע צוּררענת בֿ×רִי×בּלעש." - -#. TRANSLATORS: "set" is a keyword. It's a summary of "set" subcommand. -#: util/grub-editenv.c:51 -msgid "set [NAME=VALUE ...]" -msgstr "שעת [× ×מע=בֿ×לוּע ...]" - -#: util/grub-editenv.c:52 -msgid "Set variables." -msgstr "שעת בֿ×רִי×בּלעש." - -#. TRANSLATORS: "unset" is a keyword. It's a summary of "unset" subcommand. -#: util/grub-editenv.c:54 -msgid "unset [NAME ...]" -msgstr "וּנשעת [× ×מע ...]" - -#: util/grub-editenv.c:55 -msgid "Delete variables." -msgstr "דעלעתע בֿ×רִי×בּלעש." - -#: util/grub-editenv.c:57 -msgid "Options:" -msgstr "וֹפּתִיוֹנש:" - -#: util/grub-editenv.c:84 -msgid "You need to specify at least one command.\n" -msgstr "יִוֹוּ נעעד תוֹ שפּעצִיפֿיִ ×ת לע×שת וֹנע צוֹממ×נד.\n" - -#: util/grub-editenv.c:113 -msgid "FILENAME COMMAND" -msgstr "פִֿילענ×מע צוֹממ×נד" - -#: util/grub-editenv.c:114 -msgid "Tool to edit environment block." -msgstr "תוֹוֹל תוֹ עדִית ענבִֿירוֹנמענת בּלוֹצכּ." - -#: util/grub-editenv.c:116 -#, c-format -msgid "" -"If FILENAME is `-', the default value %s is used.\n" -"\n" -"There is no `delete' command; if you want to delete the whole environment\n" -"block, use `rm %s'." -msgstr "" -"ִיפֿ פִֿילענ×מע ִיש `-', תהע דעפֿ×וּלת בֿ×לוּע %s ִיש וּשעד.\n" -"\n" -"תהערע ִיש נוֹ `דעלעתע' צוֹממ×נד; ִיפֿ יִוֹוּ ו×נת תוֹ דעלעתע תהע והוֹלע ענבִֿירוֹנמענת\n" -"בּלוֹצכּ, וּשע `רמ %s'." - -#: util/grub-editenv.c:162 -msgid "invalid environment block" -msgstr "ִינבֿ×לִיד ענבִֿירוֹנמענת בּלוֹצכּ" - -#: util/grub-editenv.c:217 -#, c-format -msgid "invalid parameter %s" -msgstr "ִינבֿ×לִיד פּ×ר×מעתער %s" - -#: util/grub-editenv.c:222 -msgid "environment block too small" -msgstr "ענבִֿירוֹנמענת בּלוֹצכּ תוֹוֹ שמ×לל" - -#: util/grub-fstest.c:107 -#, c-format -msgid "disk read fails at offset %lld, length %lld" -msgstr "דִישכּ רע×ד פֿ×ִילש ×ת וֹפֿפֿשעת %lld, לענגתה %lld" - -#: util/grub-fstest.c:138 -#, c-format -msgid "invalid skip value %lld" -msgstr "ִינבֿ×לִיד שכִּיפּ בֿ×לוּע %lld" - -#: util/grub-fstest.c:160 util/grub-fstest.c:246 -#, c-format -msgid "read error at offset %llu: %s" -msgstr "רע×ד עררוֹר ×ת וֹפֿפֿשעת %llu: %s" - -#: util/grub-fstest.c:210 -#, c-format -msgid "cannot open OS file `%s': %s" -msgstr "צ×ננוֹת וֹפּענ וֹש פִֿילע `%s': %s" - -#: util/grub-fstest.c:225 util/misc.c:126 -#, c-format -msgid "cannot write to the stdout: %s" -msgstr "צ×ננוֹת ורִיתע תוֹ תהע שתדוֹוּת: %s" - -#: util/grub-fstest.c:259 -#, c-format -msgid "compare fail at offset %llu" -msgstr "צוֹמפּ×רע פֿ×ִיל ×ת וֹפֿפֿשעת %llu" - -#: util/grub-fstest.c:280 util/grub-fstest.c:314 -#, c-format -msgid "OS file %s open error: %s" -msgstr "וֹש פִֿילע %s וֹפּענ עררוֹר: %s" - -#: util/grub-fstest.c:402 util/grub-mount.c:392 -#, c-format -msgid "`loopback' command fails: %s" -msgstr "`לוֹוֹפּבּ×צכּ' צוֹממ×נד פֿ×ִילש: %s" - -#: util/grub-fstest.c:413 util/grub-mount.c:402 -#, c-format -msgid "`cryptomount' command fails: %s" -msgstr "`צריִפּתוֹמוֹוּנת' צוֹממ×נד פֿ×ִילש: %s" - -#: util/grub-fstest.c:474 util/grub-fstest.c:478 -msgid "couldn't retrieve UUID" -msgstr "צוֹוּלדנ'ת רעתרִיעבֿע וּוִּיד" - -#: util/grub-fstest.c:507 -msgid "ls PATH" -msgstr "לש פּ×תה" - -#: util/grub-fstest.c:507 -msgid "List files in PATH." -msgstr "לִישת פִֿילעש Ö´×™×  פּ×תה." - -#: util/grub-fstest.c:508 -msgid "cp FILE LOCAL" -msgstr "צפּ פִֿילע לוֹצ×ל" - -#: util/grub-fstest.c:508 -msgid "Copy FILE to local file LOCAL." -msgstr "צוֹפּיִ פִֿילע תוֹ לוֹצ×ל פִֿילע לוֹצ×ל." - -#: util/grub-fstest.c:509 -msgid "cat FILE" -msgstr "צ×ת פִֿילע" - -#: util/grub-fstest.c:509 -msgid "Copy FILE to standard output." -msgstr "צוֹפּיִ פִֿילע תוֹ שת×נד×רד וֹוּתפּוּת." - -#: util/grub-fstest.c:510 -msgid "cmp FILE LOCAL" -msgstr "צמפּ פִֿילע לוֹצ×ל" - -#: util/grub-fstest.c:510 -msgid "Compare FILE with local file LOCAL." -msgstr "צוֹמפּ×רע פִֿילע וִיתה לוֹצ×ל פִֿילע לוֹצ×ל." - -#: util/grub-fstest.c:511 -msgid "hex FILE" -msgstr "העכּס פִֿילע" - -#: util/grub-fstest.c:511 -msgid "Show contents of FILE in hex." -msgstr "שהוֹו צוֹנתענתש וֹפֿ פִֿילע Ö´×™×  העכּס." - -#: util/grub-fstest.c:512 -msgid "crc FILE" -msgstr "צרצ פִֿילע" - -#: util/grub-fstest.c:512 -msgid "Get crc32 checksum of FILE." -msgstr "געת צרצ32 צהעצכּשוּמ וֹפֿ פִֿילע." - -#: util/grub-fstest.c:513 -msgid "blocklist FILE" -msgstr "בּלוֹצכּלִישת פִֿילע" - -#: util/grub-fstest.c:513 -msgid "Display blocklist of FILE." -msgstr "דִישפּל××™Ö´ בּלוֹצכּלִישת וֹפֿ פִֿילע." - -#: util/grub-fstest.c:514 -msgid "xnu_uuid DEVICE" -msgstr "כּסנוּ_וּוִּיד דעבִֿיצע" - -#: util/grub-fstest.c:514 -msgid "Compute XNU UUID of the device." -msgstr "צוֹמפּוּתע כּסנוּ וּוִּיד וֹפֿ תהע דעבִֿיצע." - -#. TRANSLATORS: bitmaps are images like e.g. in JPEG. -#: util/grub-fstest.c:517 util/grub-fstest.c:518 util/grub-fstest.c:519 -#: util/grub-mkfont.c:938 util/grub-mkfont.c:951 util/grub-mkfont.c:952 -#: util/grub-mkpasswd-pbkdf2.c:46 util/grub-mkpasswd-pbkdf2.c:47 -#: util/grub-mkpasswd-pbkdf2.c:48 -msgid "NUM" -msgstr "נוּמ" - -#: util/grub-fstest.c:517 -msgid "Skip N bytes from output file." -msgstr "שכִּיפּ ×  בּיִתעש פֿרוֹמ וֹוּתפּוּת פִֿילע." - -#: util/grub-fstest.c:518 -msgid "Handle N bytes in output file." -msgstr "×”×נדלע ×  בּיִתעש Ö´×™×  וֹוּתפּוּת פִֿילע." - -#: util/grub-fstest.c:519 -msgid "Specify the number of input files." -msgstr "שפּעצִיפֿיִ תהע נוּמבּער וֹפֿ ִינפּוּת פִֿילעש." - -#: util/grub-fstest.c:520 util/grub-mount.c:453 -msgid "Set debug environment variable." -msgstr "שעת דעבּוּג ענבִֿירוֹנמענת בֿ×רִי×בּלע." - -#: util/grub-fstest.c:521 util/grub-mount.c:454 -msgid "Mount crypto devices." -msgstr "מוֹוּנת צריִפּתוֹ דעבִֿיצעש." - -#. TRANSLATORS: "prompt" is a keyword. -#: util/grub-fstest.c:524 util/grub-mount.c:457 -msgid "FILE|prompt" -msgstr "פִֿילע|פּרוֹמפּת" - -#: util/grub-fstest.c:524 util/grub-mount.c:457 -msgid "Load zfs crypto key." -msgstr "לוֹ×ד זפֿש צריִפּתוֹ ×›Ö¼×¢×™Ö´." - -#: util/grub-fstest.c:526 -msgid "Uncompress data." -msgstr "וּנצוֹמפּרעשש ד×ת×." - -#: util/grub-fstest.c:605 -msgid "Invalid disk count.\n" -msgstr "ִינבֿ×לִיד דִישכּ צוֹוּנת.\n" - -#. TRANSLATORS: disk count is optional but if it's there it must -#. be before disk list. So please don't imply disk count as mandatory. -#. -#: util/grub-fstest.c:613 -msgid "Disk count must precede disks list.\n" -msgstr "דִישכּ צוֹוּנת מוּשת פּרעצעדע דִישכּש לִישת.\n" - -#: util/grub-fstest.c:633 -msgid "No command is specified.\n" -msgstr "נוֹ צוֹממ×נד ִיש שפּעצִיפִֿיעד.\n" - -#: util/grub-fstest.c:638 -msgid "Not enough parameters to command.\n" -msgstr "נוֹת ענוֹוּגה פּ×ר×מעתערש תוֹ צוֹממ×נד.\n" - -#: util/grub-fstest.c:711 -#, c-format -msgid "Invalid command %s.\n" -msgstr "ִינבֿ×לִיד צוֹממ×נד %s.\n" - -#: util/grub-fstest.c:724 -msgid "IMAGE_PATH COMMANDS" -msgstr "ִימ××’×¢_פּ×תה צוֹממ×נדש" - -#: util/grub-fstest.c:725 util/grub-mount.c:553 -msgid "Debug tool for filesystem driver." -msgstr "דעבּוּג תוֹוֹל פֿוֹר פִֿילעשיִשתעמ דרִיבֿער." - -#: util/grub-glue-efi.c:53 -msgid "set input filename for 32-bit part." -msgstr "שעת ִינפּוּת פִֿילענ×מע פֿוֹר 32-בִּית פּ×רת." - -#: util/grub-glue-efi.c:55 -msgid "set input filename for 64-bit part." -msgstr "שעת ִינפּוּת פִֿילענ×מע פֿוֹר 64-בִּית פּ×רת." - -#: util/grub-glue-efi.c:57 util/grub-mklayout.c:55 util/grub-render-label.c:71 -msgid "set output filename. Default is STDOUT" -msgstr "שעת וֹוּתפּוּת פִֿילענ×מע. דעפֿ×וּלת ִיש שתדוֹוּת" - -#: util/grub-glue-efi.c:94 util/grub-mklayout.c:476 -#: util/grub-mkpasswd-pbkdf2.c:86 util/grub-render-label.c:131 -msgid "[OPTIONS]" -msgstr "[וֹפּתִיוֹנש]" - -#: util/grub-glue-efi.c:95 -msgid "Glue 32-bit and 64-bit binary into Apple universal one." -msgstr "גלוּע 32-בִּית ×נד 64-בִּית בִּינ×ריִ ִינתוֹ ×פּפּלע וּנִיבֿערש×ל וֹנע." - -#: util/grub-glue-efi.c:116 -msgid "Missing input file\n" -msgstr "מִיששִינג ִינפּוּת פִֿילע\n" - -#: util/grub-install-common.c:127 util/grub-install-common.c:151 -#, c-format -msgid "cannot copy `%s' to `%s': %s" -msgstr "צ×ננוֹת צוֹפּיִ `%s' תוֹ `%s': %s" - -#: util/grub-install-common.c:147 -#, c-format -msgid "can't compress `%s' to `%s'" -msgstr "צ×× 'ת צוֹמפּרעשש `%s' תוֹ `%s'" - -#: util/grub-install-common.c:196 util/grub-install-common.c:552 -#: util/grub-install-common.c:579 util/grub-install-common.c:621 -#, c-format -msgid "cannot open directory `%s': %s" -msgstr "צ×ננוֹת וֹפּענ דִירעצתוֹריִ `%s': %s" - -#: util/grub-install-common.c:212 -#, c-format -msgid "cannot delete `%s': %s" -msgstr "צ×ננוֹת דעלעתע `%s': %s" - -#: util/grub-install-common.c:324 util/grub-mkimage.c:209 -msgid "grub-mkimage is compiled without XZ support" -msgstr "גרוּבּ-מכִּימ××’×¢ ִיש צוֹמפִּילעד וִיתהוֹוּת כּסז שוּפּפּוֹרת" - -#: util/grub-install-common.c:332 util/grub-mkimage.c:217 -#, c-format -msgid "Unknown compression format %s" -msgstr "וּנכּנוֹונ צוֹמפּרעששִיוֹנ פֿוֹרמ×ת %s" - -#: util/grub-install-common.c:400 -#, c-format -msgid "Unrecognized compression `%s'" -msgstr "וּנרעצוֹגנִיזעד צוֹמפּרעששִיוֹנ `%s'" - -#: util/grub-install-common.c:509 -#, c-format -msgid "unknown target format %s" -msgstr "וּנכּנוֹונ ת×רגעת פֿוֹרמ×ת %s" - -#: util/grub-install-common.c:700 -#, c-format -msgid "cannot find locale `%s'" -msgstr "צ×ננוֹת פִֿינד לוֹצ×לע `%s'" - -#: util/grub-install-common.c:939 -#, c-format -msgid "%s doesn't exist. Please specify --target or --directory" -msgstr "%s דוֹעשנ'ת עכּסִישת. פּלע×שע שפּעצִיפֿיִ --ת×רגעת וֹר --דִירעצתוֹריִ" - -#: util/grub-install-common.c:948 util/grub-install-common.c:951 -#, c-format -msgid "invalid modinfo file `%s'" -msgstr "ִינבֿ×לִיד מוֹדִינפֿוֹ פִֿילע `%s'" - -#: util/grub-install-common.c:966 -#, c-format -msgid "Unknown platform `%s-%s'" -msgstr "וּנכּנוֹונ פּל×תפֿוֹרמ `%s-%s'" - -#: util/grub-install.c:238 -msgid "More than one install device?" -msgstr "מוֹרע תה××  וֹנע ִינשת×לל דעבִֿיצע?" - -#: util/grub-install.c:251 -#, c-format -msgid "" -"install GRUB images under the directory DIR/%s instead of the %s directory" -msgstr "" -"ִינשת×לל גרוּבּ ִימ×געש וּנדער תהע דִירעצתוֹריִ דִיר/%s ִינשתע×ד וֹפֿ תהע %s דִירעצתוֹריִ" - -#: util/grub-install.c:256 util/grub-probe.c:734 -msgid "TARGET" -msgstr "ת×רגעת" - -#. TRANSLATORS: "TARGET" as in "target platform". -#: util/grub-install.c:258 -#, c-format -msgid "install GRUB for TARGET platform [default=%s]; available targets: %s" -msgstr "ִינשת×לל גרוּבּ פֿוֹר ת×רגעת פּל×תפֿוֹרמ [דעפֿ×וּלת=%s]; ×בֿ×ִיל×בּלע ת×רגעתש: %s" - -#. TRANSLATORS: "may break" doesn't just mean that option wouldn't have any -#. effect but that it will make the resulting install unbootable from HDD. -#. TRANSLATORS: The potential breakage isn't limited to floppies but it's -#. likely to make the install unbootable from HDD. -#: util/grub-install.c:267 util/grub-setup.c:94 -msgid "" -"make the drive also bootable as floppy (default for fdX devices). May break " -"on some BIOSes." -msgstr "" -"מ××›Ö¼×¢ תהע דרִיבֿע ×לשוֹ בּוֹוֹת×בּלע ×ש פֿלוֹפּפּיִ (דעפֿ×וּלת פֿוֹר פֿדכּס דעבִֿיצעש). מ××™Ö´ בּרע××›Ö¼ " -"וֹנ שוֹמע בִּיוֹשעש." - -#: util/grub-install.c:270 -msgid "delete device map if it already exists" -msgstr "דעלעתע דעבִֿיצע מ×פּ ִיפֿ ִית ×לרע×דיִ עכּסִישתש" - -#: util/grub-install.c:272 util/grub-setup.c:87 -msgid "install even if problems are detected" -msgstr "ִינשת×לל עבֿענ ִיפֿ פּרוֹבּלעמש ×רע דעתעצתעד" - -#: util/grub-install.c:274 -msgid "use identifier file even if UUID is available" -msgstr "וּשע ִידענתִיפִֿיער פִֿילע עבֿענ ִיפֿ וּוִּיד ִיש ×בֿ×ִיל×בּלע" - -#: util/grub-install.c:276 -msgid "" -"disk module to use (biosdisk or native). This option is only available on " -"BIOS target." -msgstr "" -"דִישכּ מוֹדוּלע תוֹ וּשע (בִּיוֹשדִישכּ וֹר × ×תִיבֿע). תהִיש וֹפּתִיוֹנ ִיש וֹנליִ ×בֿ×ִיל×בּלע וֹנ " -"בִּיוֹש ת×רגעת." - -#: util/grub-install.c:279 -msgid "" -"don't update the `boot-device'/`Boot*' NVRAM variables. This option is only " -"available on EFI and IEEE1275 targets." -msgstr "" -"דוֹנ'ת וּפּד×תע תהע `בּוֹוֹת-דעבִֿיצע'/`בּוֹוֹת*' נבֿר×מ בֿ×רִי×בּלעש. תהִיש וֹפּתִיוֹנ ִיש וֹנליִ " -"×בֿ×ִיל×בּלע וֹנ עפִֿי ×נד Ö´×™×¢×¢×¢1275 ת×רגעתש." - -#: util/grub-install.c:282 util/grub-setup.c:89 -msgid "do not probe for filesystems in DEVICE" -msgstr "דוֹ נוֹת פּרוֹבּע פֿוֹר פִֿילעשיִשתעמש Ö´×™×  דעבִֿיצע" - -#: util/grub-install.c:284 -msgid "do not install bootsector" -msgstr "דוֹ נוֹת ִינשת×לל בּוֹוֹתשעצתוֹר" - -#: util/grub-install.c:286 util/grub-setup.c:96 -msgid "" -"Do not apply any reed-solomon codes when embedding core.img. This option is " -"only available on x86 BIOS targets." -msgstr "" -"דוֹ נוֹת ×פּפּליִ ×× ×™Ö´ רעעד-שוֹלוֹמוֹנ צוֹדעש והענ עמבּעדדִינג צוֹרע.ִימג. תהִיש וֹפּתִיוֹנ ִיש " -"וֹנליִ ×בֿ×ִיל×בּלע וֹנ כּס86 בִּיוֹש ת×רגעתש." - -#: util/grub-install.c:293 -msgid "" -"the installation device is removable. This option is only available on EFI." -msgstr "" -"תהע ִינשת×לל×תִיוֹנ דעבִֿיצע ִיש רעמוֹבֿ×בּלע. תהִיש וֹפּתִיוֹנ ִיש וֹנליִ ×בֿ×ִיל×בּלע וֹנ עפִֿי." - -#: util/grub-install.c:295 -msgid "ID" -msgstr "ִיד" - -#: util/grub-install.c:296 -msgid "the ID of bootloader. This option is only available on EFI and Macs." -msgstr "תהע ִיד וֹפֿ בּוֹוֹתלוֹ×דער. תהִיש וֹפּתִיוֹנ ִיש וֹנליִ ×בֿ×ִיל×בּלע וֹנ עפִֿי ×נד מ×צש." - -#: util/grub-install.c:298 -msgid "use DIR as the EFI System Partition root." -msgstr "וּשע דִיר ×ש תהע עפִֿי שיִשתעמ פּ×רתִיתִיוֹנ רוֹוֹת." - -#: util/grub-install.c:300 -msgid "use DIR for PPC MAC install." -msgstr "וּשע דִיר פֿוֹר פּפּצ מ×צ ִינשת×לל." - -#: util/grub-install.c:301 util/grub-mkrescue.c:106 -msgid "use FILE as font for label" -msgstr "וּשע פִֿילע ×ש פֿוֹנת פֿוֹר ל×בּעל" - -#: util/grub-install.c:302 util/grub-mkrescue.c:107 -msgid "use COLOR for label" -msgstr "וּשע צוֹלוֹר פֿוֹר ל×בּעל" - -#: util/grub-install.c:303 util/grub-mkrescue.c:108 -msgid "use COLOR for label background" -msgstr "וּשע צוֹלוֹר פֿוֹר ל×בּעל בּ×צכּגרוֹוּנד" - -#: util/grub-install.c:304 util/grub-mkrescue.c:110 -msgid "use STRING as product version" -msgstr "וּשע שתרִינג ×ש פּרוֹדוּצת בֿערשִיוֹנ" - -#: util/grub-install.c:361 -msgid "[OPTION] [INSTALL_DEVICE]" -msgstr "[וֹפּתִיוֹנ] [ִינשת×לל_דעבִֿיצע]" - -#: util/grub-install.c:362 -msgid "Install GRUB on your drive." -msgstr "ִינשת×לל גרוּבּ וֹנ יִוֹוּר דרִיבֿע." - -#: util/grub-install.c:363 -#, c-format -msgid "" -"INSTALL_DEVICE must be system device filename.\n" -"%s copies GRUB images into %s. On some platforms, it may also install GRUB " -"into the boot sector." -msgstr "" -"ִינשת×לל_דעבִֿיצע מוּשת בּע שיִשתעמ דעבִֿיצע פִֿילענ×מע.\n" -"%s צוֹפִּיעש גרוּבּ ִימ×געש ִינתוֹ %s. וֹנ שוֹמע פּל×תפֿוֹרמש, ִית מ××™Ö´ ×לשוֹ ִינשת×לל גרוּבּ Ö´" -"ינתוֹ תהע בּוֹוֹת שעצתוֹר." - -#: util/grub-install.c:672 -#, c-format -msgid "the drive %s is defined multiple times in the device map %s" -msgstr "תהע דרִיבֿע %s ִיש דעפִֿינעד מוּלתִיפּלע תִימעש Ö´×™×  תהע דעבִֿיצע מ×פּ %s" - -#: util/grub-install.c:878 -msgid "Unable to determine your platform. Use --target." -msgstr "וּנ×בּלע תוֹ דעתערמִינע יִוֹוּר פּל×תפֿוֹרמ. וּשע --ת×רגעת." - -#: util/grub-install.c:891 -#, c-format -msgid "Installing for %s platform.\n" -msgstr "ִינשת×ללִינג פֿוֹר %s פּל×תפֿוֹרמ.\n" - -#: util/grub-install.c:939 -msgid "install device isn't specified" -msgstr "ִינשת×לל דעבִֿיצע ִישנ'ת שפּעצִיפִֿיעד" - -#: util/grub-install.c:1057 -msgid "cannot find EFI directory" -msgstr "צ×ננוֹת פִֿינד עפִֿי דִירעצתוֹריִ" - -#: util/grub-install.c:1060 util/grub-install.c:1209 util/grub-install.c:1254 -#: util/grub-macbless.c:76 util/grub-probe.c:329 util/setup.c:316 -#, c-format -msgid "cannot find a device for %s (is /dev mounted?)" -msgstr "צ×ננוֹת פִֿינד × ×“×¢×‘Ö¿Ö´×™×¦×¢ פֿוֹר %s (ִיש /דעבֿ מוֹוּנתעד?)" - -#: util/grub-install.c:1069 util/grub-install.c:1217 util/grub-install.c:1270 -#: util/grub-install.c:1365 util/grub-macbless.c:80 util/grub-probe.c:372 -#, c-format -msgid "cannot find a GRUB drive for %s. Check your device.map" -msgstr "צ×ננוֹת פִֿינד × ×’×¨×•Ö¼×‘Ö¼ דרִיבֿע פֿוֹר %s. צהעצכּ יִוֹוּר דעבִֿיצע.מ×פּ" - -#: util/grub-install.c:1087 -#, c-format -msgid "%s doesn't look like an EFI partition" -msgstr "%s דוֹעשנ'ת לוֹוֹכּ לִיכּע ××  עפִֿי פּ×רתִיתִיוֹנ" - -#: util/grub-install.c:1129 util/grub-install.c:1614 -msgid "You've found a bug" -msgstr "יִוֹוּ'בֿע פֿוֹוּנד × ×‘Ö¼×•Ö¼×’" - -#: util/grub-install.c:1231 -#, c-format -msgid "filesystem on %s is neither HFS nor HFS+" -msgstr "פִֿילעשיִשתעמ וֹנ %s ִיש נעִיתהער הפֿש נוֹר הפֿש+" - -#: util/grub-install.c:1299 -#, c-format -msgid "" -"attempt to install to encrypted disk without cryptodisk enabled. Set `%s' in " -"file `%s'" -msgstr "" -"×תתעמפּת תוֹ ִינשת×לל תוֹ ענצריִפּתעד דִישכּ וִיתהוֹוּת צריִפּתוֹדִישכּ ×¢× ×בּלעד. שעת `%s' Ö´×™×  " -"פִֿילע `%s'" - -#: util/grub-install.c:1410 util/grub-install.c:1772 util/grub-install.c:1872 -#, c-format -msgid "Can't create file: %s" -msgstr "צ×× 'ת צרע×תע פִֿילע: %s" - -#: util/grub-install.c:1491 -msgid "no hints available for your platform. Expect reduced performance" -msgstr "נוֹ הִינתש ×בֿ×ִיל×בּלע פֿוֹר יִוֹוּר פּל×תפֿוֹרמ. עכּספּעצת רעדוּצעד פּערפֿוֹרמ×נצע" - -#. TRANSLATORS: This is a prefix in the log to indicate that usually -#. a command would be executed but due to an option was skipped. -#: util/grub-install.c:1702 -msgid "NOT RUNNING: " -msgstr "נוֹת רוּננִינג: " - -#: util/grub-install.c:1806 -msgid "the chosen partition is not a PReP partition" -msgstr "תהע צהוֹשענ פּ×רתִיתִיוֹנ ִיש נוֹת × ×¤Ö¼×¨×¢×¤Ö¼ פּ×רתִיתִיוֹנ" - -#: util/grub-install.c:1811 -msgid "failed to copy Grub to the PReP partition" -msgstr "פֿ×ִילעד תוֹ צוֹפּיִ גרוּבּ תוֹ תהע פּרעפּ פּ×רתִיתִיוֹנ" - -#: util/grub-install.c:1816 -#, c-format -msgid "" -"the PReP partition is not empty. If you are sure you want to use it, run dd " -"to clear it: `%s'" -msgstr "" -"תהע פּרעפּ פּ×רתִיתִיוֹנ ִיש נוֹת עמפּתיִ. ִיפֿ יִוֹוּ ×רע שוּרע יִוֹוּ ו×נת תוֹ וּשע ִית, רוּנ דד " -"תוֹ צלע×ר ִית: `%s'" - -#: util/grub-install.c:1888 util/grub-install.c:1932 -#, c-format -msgid "efibootmgr failed to register the boot entry: %s" -msgstr "עפִֿיבּוֹוֹתמגר פֿ×ִילעד תוֹ רעגִישתער תהע בּוֹוֹת ענתריִ: %s" - -#: util/grub-install.c:1916 -msgid "EFI bootloader id isn't specified." -msgstr "עפִֿי בּוֹוֹתלוֹ×דער ִיד ִישנ'ת שפּעצִיפִֿיעד." - -#: util/grub-install.c:1950 -msgid "WARNING: no platform-specific install was performed" -msgstr "ו×רנִינג: נוֹ פּל×תפֿוֹרמ-שפּעצִיפִֿיצ ִינשת×לל ו×ש פּערפֿוֹרמעד" - -#: util/grub-install.c:1957 -msgid "Installation finished. No error reported." -msgstr "ִינשת×לל×תִיוֹנ פִֿינִישהעד. נוֹ עררוֹר רעפּוֹרתעד." - -#: util/grub-macbless.c:101 -msgid "bless for x86-based macs" -msgstr "בּלעשש פֿוֹר כּס86-בּ×שעד מ×צש" - -#: util/grub-macbless.c:103 -msgid "bless for ppc-based macs" -msgstr "בּלעשש פֿוֹר פּפּצ-בּ×שעד מ×צש" - -#: util/grub-macbless.c:136 util/grub-probe.c:823 -msgid "No path or device is specified.\n" -msgstr "נוֹ פּ×תה וֹר דעבִֿיצע ִיש שפּעצִיפִֿיעד.\n" - -#: util/grub-macbless.c:157 -msgid "--ppc PATH|--x86 FILE" -msgstr "--פּפּצ פּ×תה|--כּס86 פִֿילע" - -#: util/grub-macbless.c:158 -msgid "Mac-style bless on HFS or HFS+" -msgstr "מ×צ-שתיִלע בּלעשש וֹנ הפֿש וֹר הפֿש+" - -#: util/grub-menulst2cfg.c:44 -#, c-format -msgid "Usage: %s [INFILE [OUTFILE]]\n" -msgstr "וּש××’×¢: %s [ִינפִֿילע [וֹוּתפִֿילע]]\n" - -#: util/grub-mkfont.c:157 -#, c-format -msgid "Freetype Error %d loading glyph 0x%x for U+0x%x%s" -msgstr "פֿרעעתיִפּע עררוֹר %d לוֹ×דִינג גליִפּה 0כּס%x פֿוֹר וּ+0כּס%x%s" - -#. TRANSLATORS: These qualifiers are used for cursive typography, -#. mainly Arabic. Note that the terms refer to the visual position -#. and not logical order and if used in left-to-right script then -#. leftmost is initial but with right-to-left script like Arabic -#. rightmost is the initial. -#: util/grub-mkfont.c:165 -msgid " (medial)" -msgstr " (מעדִי×ל)" - -#: util/grub-mkfont.c:166 -msgid " (leftmost)" -msgstr " (לעפֿתמוֹשת)" - -#: util/grub-mkfont.c:167 -msgid " (rightmost)" -msgstr " (רִיגהתמוֹשת)" - -#: util/grub-mkfont.c:481 -#, c-format -msgid "Out of range substitution (%d, %d)\n" -msgstr "וֹוּת וֹפֿ ר×× ×’×¢ שוּבּשתִיתוּתִיוֹנ (%d, %d)\n" - -#. TRANSLATORS: "lookup" is taken directly from font specifications -#. which are formulated as "Under condition X replace LOOKUP with -#. SUBSTITUITION". " -#: util/grub-mkfont.c:506 -#, c-format -msgid "Out of range lookup: %d\n" -msgstr "וֹוּת וֹפֿ ר×× ×’×¢ לוֹוֹכּוּפּ: %d\n" - -#: util/grub-mkfont.c:514 -#, c-format -msgid "Unsupported substitution type: %d\n" -msgstr "וּנשוּפּפּוֹרתעד שוּבּשתִיתוּתִיוֹנ תיִפּע: %d\n" - -#: util/grub-mkfont.c:550 -#, c-format -msgid "Unsupported substitution specification: %d\n" -msgstr "וּנשוּפּפּוֹרתעד שוּבּשתִיתוּתִיוֹנ שפּעצִיפִֿיצ×תִיוֹנ: %d\n" - -#: util/grub-mkfont.c:582 -#, c-format -msgid "Unsupported coverage specification: %d\n" -msgstr "וּנשוּפּפּוֹרתעד צוֹבֿער××’×¢ שפּעצִיפִֿיצ×תִיוֹנ: %d\n" - -#: util/grub-mkfont.c:622 -#, c-format -msgid "WARNING: unsupported font feature parameters: %x\n" -msgstr "ו×רנִינג: וּנשוּפּפּוֹרתעד פֿוֹנת פֿע×תוּרע פּ×ר×מעתערש: %x\n" - -#: util/grub-mkfont.c:936 util/grub-mkrescue.c:98 util/grub-mkstandalone.c:48 -msgid "save output in FILE [required]" -msgstr "ש×בֿע וֹוּתפּוּת Ö´×™×  פִֿילע [רעקוִּירעד]" - -#. TRANSLATORS: some font files may have multiple faces (fonts). -#. This option is used to chose among them, the first face being '0'. -#. Rarely used. -#: util/grub-mkfont.c:942 -msgid "select face index" -msgstr "שעלעצת פֿ×צע ִינדעכּס" - -#: util/grub-mkfont.c:943 -msgid "FROM-TO[,FROM-TO]" -msgstr "פֿרוֹמ-תוֹ[,פֿרוֹמ-תוֹ]" - -#. TRANSLATORS: It refers to the range of characters in font. -#: util/grub-mkfont.c:945 -msgid "set font range" -msgstr "שעת פֿוֹנת ר×× ×’×¢" - -#. TRANSLATORS: "family name" for font is just a generic name without suffix -#. like "Bold". -#: util/grub-mkfont.c:949 -msgid "set font family name" -msgstr "שעת פֿוֹנת פֿ×מִיליִ × ×מע" - -#: util/grub-mkfont.c:950 -msgid "SIZE" -msgstr "שִיזע" - -#: util/grub-mkfont.c:950 -msgid "set font size" -msgstr "שעת פֿוֹנת שִיזע" - -#: util/grub-mkfont.c:951 -msgid "set font descent" -msgstr "שעת פֿוֹנת דעשצענת" - -#: util/grub-mkfont.c:952 -msgid "set font ascent" -msgstr "שעת פֿוֹנת ×שצענת" - -#: util/grub-mkfont.c:953 -msgid "convert to bold font" -msgstr "צוֹנבֿערת תוֹ בּוֹלד פֿוֹנת" - -#: util/grub-mkfont.c:954 -msgid "force autohint" -msgstr "פֿוֹרצע ×וּתוֹהִינת" - -#: util/grub-mkfont.c:955 -msgid "disable hinting" -msgstr "דִיש×בּלע הִינתִינג" - -#. TRANSLATORS: some fonts contain bitmap rendering for -#. some sizes. This option forces rerendering even if -#. pre-rendered bitmap is available. -#. -#: util/grub-mkfont.c:961 -msgid "ignore bitmap strikes when loading" -msgstr "ִיגנוֹרע בִּיתמ×פּ שתרִיכּעש והענ לוֹ×דִינג" - -#. TRANSLATORS: It refers to the range of characters in font. -#: util/grub-mkfont.c:1059 util/grub-mkfont.c:1075 -msgid "invalid font range" -msgstr "ִינבֿ×לִיד פֿוֹנת ר×× ×’×¢" - -#: util/grub-mkfont.c:1151 -msgid "[OPTIONS] FONT_FILES" -msgstr "[וֹפּתִיוֹנש] פֿוֹנת_פִֿילעש" - -#: util/grub-mkfont.c:1152 -msgid "Convert common font file formats into PF2" -msgstr "צוֹנבֿערת צוֹממוֹנ פֿוֹנת פִֿילע פֿוֹרמ×תש ִינתוֹ פּפֿ2" - -#: util/grub-mkfont.c:1182 util/grub-mkrescue.c:483 -#: util/grub-mkstandalone.c:306 -msgid "output file must be specified" -msgstr "וֹוּתפּוּת פִֿילע מוּשת בּע שפּעצִיפִֿיעד" - -#: util/grub-mkfont.c:1185 -msgid "FT_Init_FreeType fails" -msgstr "פֿת_ִינִית_פֿרעעתיִפּע פֿ×ִילש" - -#: util/grub-mkfont.c:1199 -#, c-format -msgid "can't open file %s, index %d: error %d" -msgstr "צ×× 'ת וֹפּענ פִֿילע %s, ִינדעכּס %d: עררוֹר %d" - -#: util/grub-mkfont.c:1229 -#, c-format -msgid "can't set %dx%d font size: Freetype error %d: %s" -msgstr "צ×× 'ת שעת %dכּס%d פֿוֹנת שִיזע: פֿרעעתיִפּע עררוֹר %d: %s" - -#: util/grub-mkimage.c:67 -msgid "set prefix directory" -msgstr "שעת פּרעפִֿיכּס דִירעצתוֹריִ" - -#. TRANSLATORS: "memdisk" here isn't an identifier, it can be translated. -#. "embed" is a verb (command description). " -#: util/grub-mkimage.c:71 -msgid "" -"embed FILE as a memdisk image\n" -"Implies `-p (memdisk)/boot/grub' and overrides any prefix supplied " -"previously, but the prefix itself can be overridden by later options" -msgstr "" -"עמבּעד פִֿילע ×ש × ×ž×¢×ž×“Ö´×™×©×›Ö¼ ִימ××’×¢\n" -"ִימפּלִיעש `-פּ (מעמדִישכּ)/בּוֹוֹת/גרוּבּ' ×נד וֹבֿעררִידעש ×× ×™Ö´ פּרעפִֿיכּס שוּפּפּלִיעד " -"פּרעבִֿיוֹוּשליִ, בּוּת תהע פּרעפִֿיכּס ִיתשעלפֿ צ××  בּע וֹבֿעררִידדענ בּיִ ל×תער וֹפּתִיוֹנש" - -#: util/grub-mkimage.c:74 -msgid "embed FILE as a device tree (DTB)\n" -msgstr "עמבּעד פִֿילע ×ש × ×“×¢×‘Ö¿Ö´×™×¦×¢ תרעע (דתבּ)\n" - -#: util/grub-mkimage.c:76 -msgid "embed FILE as an early config" -msgstr "עמבּעד פִֿילע ×ש ××  ×¢×רליִ צוֹנפִֿיג" - -#. TRANSLATORS: NOTE is a name of segment. -#: util/grub-mkimage.c:80 -msgid "add NOTE segment for CHRP IEEE1275" -msgstr "×דד נוֹתע שעגמענת פֿוֹר צהרפּ Ö´×™×¢×¢×¢1275" - -#: util/grub-mkimage.c:81 -msgid "output a generated image to FILE [default=stdout]" -msgstr "וֹוּתפּוּת × ×’×¢× ×¢×¨×תעד ִימ××’×¢ תוֹ פִֿילע [דעפֿ×וּלת=שתדוֹוּת]" - -#: util/grub-mkimage.c:82 -msgid "FORMAT" -msgstr "פֿוֹרמ×ת" - -#: util/grub-mkimage.c:100 util/grub-mkstandalone.c:62 -msgid "generate an image in FORMAT" -msgstr "גענער×תע ××  ִימ××’×¢ Ö´×™×  פֿוֹרמ×ת" - -#: util/grub-mkimage.c:101 util/grub-mkstandalone.c:63 -msgid "available formats:" -msgstr "×בֿ×ִיל×בּלע פֿוֹרמ×תש:" - -#: util/grub-mkimage.c:152 util/grub-mkstandalone.c:96 -#, c-format -msgid "unknown target format %s\n" -msgstr "וּנכּנוֹונ ת×רגעת פֿוֹרמ×ת %s\n" - -#: util/grub-mkimage.c:242 -msgid "[OPTION]... [MODULES]" -msgstr "[וֹפּתִיוֹנ]... [מוֹדוּלעש]" - -#: util/grub-mkimage.c:243 -msgid "Make a bootable image of GRUB." -msgstr "מ××›Ö¼×¢ × ×‘Ö¼×•Ö¹×•Ö¹×ª×בּלע ִימ××’×¢ וֹפֿ גרוּבּ." - -#: util/grub-mkimage.c:273 util/grub-mkstandalone.c:309 -msgid "Target format not specified (use the -O option)." -msgstr "ת×רגעת פֿוֹרמ×ת נוֹת שפּעצִיפִֿיעד (וּשע תהע -וֹ וֹפּתִיוֹנ)." - -#: util/grub-mkimage.c:282 -msgid "Prefix not specified (use the -p option)." -msgstr "פּרעפִֿיכּס נוֹת שפּעצִיפִֿיעד (וּשע תהע -פּ וֹפּתִיוֹנ)." - -#: util/grub-mkimage.c:318 util/setup.c:793 -#, c-format -msgid "cannot close `%s': %s" -msgstr "צ×ננוֹת צלוֹשע `%s': %s" - -#: util/grub-mkimagexx.c:2191 -#, c-format -msgid "" -"`%s' is miscompiled: its start address is 0x%llx instead of 0x%llx: ld.gold " -"bug?" -msgstr "" -"`%s' ִיש מִישצוֹמפִּילעד: ִיתש שת×רת ×דדרעשש ִיש 0כּס%llx ִינשתע×ד וֹפֿ 0כּס%llx: לד." -"גוֹלד בּוּג?" - -#: util/grub-mklayout.c:53 -msgid "set input filename. Default is STDIN" -msgstr "שעת ִינפּוּת פִֿילענ×מע. דעפֿ×וּלת ִיש שתדִינ" - -#. TRANSLATORS: scan identifier is keyboard key symbolic name. -#: util/grub-mklayout.c:307 -#, c-format -msgid "Unknown keyboard scan identifier %s\n" -msgstr "וּנכּנוֹונ כּעיִבּוֹ×רד שצ××  ִידענתִיפִֿיער %s\n" - -#. TRANSLATORS: scan code is keyboard key numeric identifier. -#: util/grub-mklayout.c:390 util/grub-mklayout.c:418 -#, c-format -msgid "Unknown keyboard scan code 0x%02x\n" -msgstr "וּנכּנוֹונ כּעיִבּוֹ×רד שצ××  צוֹדע 0כּס%02x\n" - -#. TRANSLATORS: this error is triggered when input doesn't contain any -#. key descriptions. -#: util/grub-mklayout.c:438 -msgid "ERROR: no valid keyboard layout found. Check the input.\n" -msgstr "עררוֹר: נוֹ בֿ×לִיד כּעיִבּוֹ×רד ל×יִוֹוּת פֿוֹוּנד. צהעצכּ תהע ִינפּוּת.\n" - -#. TRANSLATORS: "one" is a shortcut for "keyboard layout". -#: util/grub-mklayout.c:478 -msgid "Generate GRUB keyboard layout from Linux console one." -msgstr "גענער×תע גרוּבּ כּעיִבּוֹ×רד ל×יִוֹוּת פֿרוֹמ לִינוּכּס צוֹנשוֹלע וֹנע." - -#: util/grub-mknetdir.c:47 -msgid "root directory of TFTP server" -msgstr "רוֹוֹת דִירעצתוֹריִ וֹפֿ תפֿתפּ שערבֿער" - -#: util/grub-mknetdir.c:49 -msgid "relative subdirectory on network server" -msgstr "רעל×תִיבֿע שוּבּדִירעצתוֹריִ וֹנ נעתווֹרכּ שערבֿער" - -#: util/grub-mknetdir.c:88 -msgid "" -"Prepares GRUB network boot images at net_directory/subdir assuming " -"net_directory being TFTP root." -msgstr "" -"פּרעפּ×רעש גרוּבּ נעתווֹרכּ בּוֹוֹת ִימ×געש ×ת נעת_דִירעצתוֹריִ/שוּבּדִיר ×ששוּמִינג " -"נעת_דִירעצתוֹריִ בּעִינג תפֿתפּ רוֹוֹת." - -#: util/grub-mknetdir.c:146 -#, c-format -msgid "unsupported platform %s" -msgstr "וּנשוּפּפּוֹרתעד פּל×תפֿוֹרמ %s" - -#. TRANSLATORS: First %s is replaced by platform name. Second one by filename. -#: util/grub-mknetdir.c:165 -#, c-format -msgid "" -"Netboot directory for %s created. Configure your DHCP server to point to %s\n" -msgstr "" -"נעתבּוֹוֹת דִירעצתוֹריִ פֿוֹר %s צרע×תעד. צוֹנפִֿיגוּרע יִוֹוּר דהצפּ שערבֿער תוֹ פּוִֹינת תוֹ %s\n" - -#: util/grub-mkpasswd-pbkdf2.c:46 -msgid "Number of PBKDF2 iterations" -msgstr "נוּמבּער וֹפֿ פּבּכּדפֿ2 ִיתער×תִיוֹנש" - -#: util/grub-mkpasswd-pbkdf2.c:47 -msgid "Length of generated hash" -msgstr "לענגתה וֹפֿ גענער×תעד ×”×שה" - -#: util/grub-mkpasswd-pbkdf2.c:48 -msgid "Length of salt" -msgstr "לענגתה וֹפֿ ש×לת" - -#: util/grub-mkpasswd-pbkdf2.c:87 -msgid "Generate PBKDF2 password hash." -msgstr "גענער×תע פּבּכּדפֿ2 פּ×ששווֹרד ×”×שה." - -#: util/grub-mkpasswd-pbkdf2.c:144 util/grub-mkpasswd-pbkdf2.c:151 -msgid "failure to read password" -msgstr "פֿ×ִילוּרע תוֹ רע×ד פּ×ששווֹרד" - -#: util/grub-mkpasswd-pbkdf2.c:146 -msgid "Reenter password: " -msgstr "רעענתער פּ×ששווֹרד: " - -#: util/grub-mkpasswd-pbkdf2.c:160 -msgid "passwords don't match" -msgstr "פּ×ששווֹרדש דוֹנ'ת מ×תצה" - -#: util/grub-mkpasswd-pbkdf2.c:169 -msgid "couldn't retrieve random data for salt" -msgstr "צוֹוּלדנ'ת רעתרִיעבֿע ר×נדוֹמ ד××ª× ×¤Ö¿×•Ö¹×¨ ש×לת" - -#: util/grub-mkpasswd-pbkdf2.c:184 -#, c-format -msgid "cryptographic error number %d" -msgstr "צריִפּתוֹגר×פּהִיצ עררוֹר נוּמבּער %d" - -#: util/grub-mkpasswd-pbkdf2.c:203 -#, c-format -msgid "PBKDF2 hash of your password is %s\n" -msgstr "פּבּכּדפֿ2 ×”×שה וֹפֿ יִוֹוּר פּ×ששווֹרד ִיש %s\n" - -#: util/grub-mkrelpath.c:67 -msgid "No path is specified.\n" -msgstr "נוֹ פּ×תה ִיש שפּעצִיפִֿיעד.\n" - -#: util/grub-mkrelpath.c:78 -msgid "PATH" -msgstr "פּ×תה" - -#: util/grub-mkrelpath.c:79 -msgid "Transform a system filename into GRUB one." -msgstr "תר×נשפֿוֹרמ × ×©×™Ö´×©×ª×¢×ž פִֿילענ×מע ִינתוֹ גרוּבּ וֹנע." - -#: util/grub-mkrescue.c:100 -msgid "save ROM images in DIR [optional]" -msgstr "ש×בֿע רוֹמ ִימ×געש Ö´×™×  דִיר [וֹפּתִיוֹנ×ל]" - -#. TRANSLATORS: xorriso is a program for creating ISOs and burning CDs. -#: util/grub-mkrescue.c:103 -msgid "use FILE as xorriso [optional]" -msgstr "וּשע פִֿילע ×ש כּסוֹררִישוֹ [וֹפּתִיוֹנ×ל]" - -#: util/grub-mkrescue.c:109 -msgid "use STRING as product name" -msgstr "וּשע שתרִינג ×ש פּרוֹדוּצת × ×מע" - -#: util/grub-mkrescue.c:111 -msgid "" -"enable sparc boot. Disables HFS+, APM, ARCS and boot as disk image for i386-" -"pc" -msgstr "" -"×¢× ×בּלע שפּ×רצ בּוֹוֹת. דִיש×בּלעש הפֿש+, ×פּמ, ×רצש ×נד בּוֹוֹת ×ש דִישכּ ִימ××’×¢ פֿוֹר Ö´×™386-" -"פּצ" - -#: util/grub-mkrescue.c:112 -msgid "" -"enable ARCS (big-endian mips machines, mostly SGI) boot. Disables HFS+, APM, " -"sparc64 and boot as disk image for i386-pc" -msgstr "" -"×¢× ×בּלע ×רצש (בִּיג-ענדִי××  מִיפּש מ×צהִינעש, מוֹשתליִ שגִי) בּוֹוֹת. דִיש×בּלעש הפֿש+, ×פּמ, " -"שפּ×רצ64 ×נד בּוֹוֹת ×ש דִישכּ ִימ××’×¢ פֿוֹר Ö´×™386-פּצ" - -#. TRANSLATORS: it generates one single image which is bootable through any method. -#: util/grub-mkrescue.c:125 -msgid "Make GRUB CD-ROM, disk, pendrive and floppy bootable image." -msgstr "מ××›Ö¼×¢ גרוּבּ צד-רוֹמ, דִישכּ, פּענדרִיבֿע ×נד פֿלוֹפּפּיִ בּוֹוֹת×בּלע ִימ××’×¢." - -#: util/grub-mkrescue.c:130 -#, c-format -msgid "" -"Generates a bootable CD/USB/floppy image. Arguments other than options to " -"this program are passed to xorriso, and indicate source files, source " -"directories, or any of the mkisofs options listed by the output of `%s'." -msgstr "" -"גענער×תעש × ×‘Ö¼×•Ö¹×•Ö¹×ª×בּלע צד/וּשבּ/פֿלוֹפּפּיִ ִימ××’×¢. ×רגוּמענתש וֹתהער תה××  וֹפּתִיוֹנש תוֹ " -"תהִיש פּרוֹגר×מ ×רע פּ×ששעד תוֹ כּסוֹררִישוֹ, ×נד ִינדִיצ×תע שוֹוּרצע פִֿילעש, שוֹוּרצע " -"דִירעצתוֹרִיעש, וֹר ×× ×™Ö´ וֹפֿ תהע מכִּישוֹפֿש וֹפּתִיוֹנש לִישתעד בּיִ תהע וֹוּתפּוּת וֹפֿ `%s'." - -#: util/grub-mkrescue.c:134 -msgid "Option -- switches to native xorriso command mode." -msgstr "וֹפּתִיוֹנ -- שוִיתצהעש תוֹ × ×תִיבֿע כּסוֹררִישוֹ צוֹממ×נד מוֹדע." - -#: util/grub-mkrescue.c:135 -msgid "Mail xorriso support requests to ." -msgstr "מ×ִיל כּסוֹררִישוֹ שוּפּפּוֹרת רעקוּעשתש תוֹ <בּוּג-כּסוֹררִישוֹ@גנוּ.וֹרג>." - -#: util/grub-mkrescue.c:221 util/grub-mkstandalone.c:114 -msgid "[OPTION] SOURCE..." -msgstr "[וֹפּתִיוֹנ] שוֹוּרצע..." - -#: util/grub-mkrescue.c:257 util/grub-mkrescue.c:300 util/grub-mkrescue.c:588 -#, c-format -msgid "enabling %s support ..." -msgstr "×¢× ×בּלִינג %s שוּפּפּוֹרת ..." - -#: util/grub-mkrescue.c:486 -msgid "xorriso not found" -msgstr "כּסוֹררִישוֹ נוֹת פֿוֹוּנד" - -#: util/grub-mkrescue.c:623 -msgid "" -"Your xorriso doesn't support `--grub2-boot-info'. Some features are " -"disabled. Please use xorriso 1.2.9 or later." -msgstr "" -"יִוֹוּר כּסוֹררִישוֹ דוֹעשנ'ת שוּפּפּוֹרת `--גרוּבּ2-בּוֹוֹת-ִינפֿוֹ'. שוֹמע פֿע×תוּרעש ×רע " -"דִיש×בּלעד. פּלע×שע וּשע כּסוֹררִישוֹ 1.2.9 וֹר ל×תער." - -#: util/grub-mkrescue.c:650 -msgid "" -"Your xorriso doesn't support `--grub2-boot-info'. Your core image is too " -"big. Boot as disk is disabled. Please use xorriso 1.2.9 or later." -msgstr "" -"יִוֹוּר כּסוֹררִישוֹ דוֹעשנ'ת שוּפּפּוֹרת `--גרוּבּ2-בּוֹוֹת-ִינפֿוֹ'. יִוֹוּר צוֹרע ִימ××’×¢ ִיש תוֹוֹ " -"בִּיג. בּוֹוֹת ×ש דִישכּ ִיש דִיש×בּלעד. פּלע×שע וּשע כּסוֹררִישוֹ 1.2.9 וֹר ל×תער." - -#: util/grub-mkstandalone.c:115 -msgid "" -"Generate a standalone image (containing all modules) in the selected format" -msgstr "" -"גענער×תע × ×©×ª×נד×לוֹנע ִימ××’×¢ (צוֹנת×Ö´×™× Ö´×™× ×’ ×לל מוֹדוּלעש) Ö´×™×  תהע שעלעצתעד פֿוֹרמ×ת" - -#: util/grub-mkstandalone.c:115 -msgid "Graft point syntax (E.g. /boot/grub/grub.cfg=./grub.cfg) is accepted" -msgstr "גר×פֿת פּוִֹינת שיִנת×כּס (×¢.×’. /בּוֹוֹת/גרוּבּ/גרוּבּ.צפֿג=./גרוּבּ.צפֿג) ִיש ×צצעפּתעד" - -#: util/grub-mount.c:552 -msgid "IMAGE1 [IMAGE2 ...] MOUNTPOINT" -msgstr "ִימ××’×¢1 [ִימ××’×¢2 ...] מוֹוּנתפּוִֹינת" - -#: util/grub-mount.c:575 -msgid "need an image and mountpoint" -msgstr "נעעד ××  ִימ××’×¢ ×נד מוֹוּנתפּוִֹינת" - -#: util/grub-probe.c:731 -msgid "given argument is a system device, not a path" -msgstr "גִיבֿענ ×רגוּמענת ִיש × ×©×™Ö´×©×ª×¢×ž דעבִֿיצע, נוֹת × ×¤Ö¼×תה" - -#: util/grub-probe.c:736 -msgid "separate items in output using ASCII NUL characters" -msgstr "שעפּ×ר×תע ִיתעמש Ö´×™×  וֹוּתפּוּת וּשִינג ×שצִיִי נוּל צה×ר×צתערש" - -#: util/grub-probe.c:754 -#, c-format -msgid "[default=%s]" -msgstr "[דעפֿ×וּלת=%s]" - -#: util/grub-probe.c:756 -msgid "print TARGET" -msgstr "פּרִינת ת×רגעת" - -#: util/grub-probe.c:757 -msgid "available targets:" -msgstr "×בֿ×ִיל×בּלע ת×רגעתש:" - -#: util/grub-probe.c:839 -msgid "[OPTION]... [PATH|DEVICE]" -msgstr "[וֹפּתִיוֹנ]... [פּ×תה|דעבִֿיצע]" - -#: util/grub-probe.c:840 -msgid "" -"Probe device information for a given path (or device, if the -d option is " -"given)." -msgstr "" -"פּרוֹבּע דעבִֿיצע ִינפֿוֹרמ×תִיוֹנ פֿוֹר × ×’Ö´×™×‘Ö¿×¢×  פּ×תה (וֹר דעבִֿיצע, ִיפֿ תהע -ד וֹפּתִיוֹנ ִיש " -"גִיבֿענ)." - -#: util/grub-render-label.c:60 -msgid "read text from FILE." -msgstr "רע×ד תעכּסת פֿרוֹמ פִֿילע." - -#: util/grub-render-label.c:62 -msgid "use COLOR for text" -msgstr "וּשע צוֹלוֹר פֿוֹר תעכּסת" - -#: util/grub-render-label.c:64 -msgid "use COLOR for background" -msgstr "וּשע צוֹלוֹר פֿוֹר בּ×צכּגרוֹוּנד" - -#. TRANSLATORS: The result is always stored to file and -#. never shown directly, so don't use "show" as synonym for render. Use "create" if -#. "render" doesn't translate directly. -#: util/grub-render-label.c:69 -msgid "set the label to render" -msgstr "שעת תהע ל×בּעל תוֹ רענדער" - -#: util/grub-render-label.c:73 -msgid "use FILE as font (PF2)." -msgstr "וּשע פִֿילע ×ש פֿוֹנת (פּפֿ2)." - -#. TRANSLATORS: This file takes a text and creates a graphical representation of it, -#. putting the result into .disk_label file. The result is always stored to file and -#. never shown directly, so don't use "show" as synonym for render. Use "create" if -#. "render" doesn't translate directly. -#: util/grub-render-label.c:136 -msgid "Render Apple .disk_label." -msgstr "רענדער ×פּפּלע .דִישכּ_ל×בּעל." - -#: util/grub-render-label.c:158 util/grub-syslinux2cfg.c:169 -msgid "Missing arguments\n" -msgstr "מִיששִינג ×רגוּמענתש\n" - -#: util/grub-script-check.c:87 -msgid "[PATH]" -msgstr "[פּ×תה]" - -#: util/grub-script-check.c:88 -msgid "Checks GRUB script configuration file for syntax errors." -msgstr "צהעצכּש גרוּבּ שצרִיפּת צוֹנפִֿיגוּר×תִיוֹנ פִֿילע פֿוֹר שיִנת×כּס עררוֹרש." - -#: util/grub-script-check.c:207 -#, c-format -msgid "Syntax error at line %u\n" -msgstr "שיִנת×כּס עררוֹר ×ת לִינע %u\n" - -#: util/grub-script-check.c:212 -#, c-format -msgid "Script `%s' contains no commands and will do nothing\n" -msgstr "שצרִיפּת `%s' צוֹנת×ִינש נוֹ צוֹממ×נדש ×נד וִילל דוֹ נוֹתהִינג\n" - -#: util/grub-setup.c:79 -#, c-format -msgid "use FILE as the boot image [default=%s]" -msgstr "וּשע פִֿילע ×ש תהע בּוֹוֹת ִימ××’×¢ [דעפֿ×וּלת=%s]" - -#: util/grub-setup.c:81 -#, c-format -msgid "use FILE as the core image [default=%s]" -msgstr "וּשע פִֿילע ×ש תהע צוֹרע ִימ××’×¢ [דעפֿ×וּלת=%s]" - -#: util/grub-setup.c:210 -msgid "No device is specified.\n" -msgstr "נוֹ דעבִֿיצע ִיש שפּעצִיפִֿיעד.\n" - -#: util/grub-setup.c:224 -msgid "" -"Set up images to boot from DEVICE.\n" -"\n" -"You should not normally run this program directly. Use grub-install instead." -msgstr "" -"שעת וּפּ ִימ×געש תוֹ בּוֹוֹת פֿרוֹמ דעבִֿיצע.\n" -"\n" -"יִוֹוּ שהוֹוּלד נוֹת נוֹרמ×לליִ רוּנ תהִיש פּרוֹגר×מ דִירעצתליִ. וּשע גרוּבּ-ִינשת×לל ִינשתע×ד." - -#: util/grub-setup.c:228 -msgid "DEVICE must be an OS device (e.g. /dev/sda)." -msgstr "דעבִֿיצע מוּשת בּע ××  וֹש דעבִֿיצע (×¢.×’. /דעבֿ/שד×)." - -#: util/grub-setup.c:297 -#, c-format -msgid "Invalid device `%s'.\n" -msgstr "ִינבֿ×לִיד דעבִֿיצע `%s'.\n" - -#: util/grub-syslinux2cfg.c:64 -msgid "root directory as it will be seen on runtime [default=/]." -msgstr "רוֹוֹת דִירעצתוֹריִ ×ש ִית וִילל בּע שעענ וֹנ רוּנתִימע [דעפֿ×וּלת=/]." - -#: util/grub-syslinux2cfg.c:69 -msgid "" -"current directory of syslinux as it will be seen on runtime [default is " -"parent directory of input file]." -msgstr "" -"צוּררענת דִירעצתוֹריִ וֹפֿ שיִשלִינוּכּס ×ש ִית וִילל בּע שעענ וֹנ רוּנתִימע [דעפֿ×וּלת ִיש " -"פּ×רענת דִירעצתוֹריִ וֹפֿ ִינפּוּת פִֿילע]." - -#: util/grub-syslinux2cfg.c:74 -msgid "write output to FILE [default=stdout]." -msgstr "ורִיתע וֹוּתפּוּת תוֹ פִֿילע [דעפֿ×וּלת=שתדוֹוּת]." - -#: util/grub-syslinux2cfg.c:148 -msgid "Transform syslinux config into GRUB one." -msgstr "תר×נשפֿוֹרמ שיִשלִינוּכּס צוֹנפִֿיג ִינתוֹ גרוּבּ וֹנע." - -#: util/mkimage.c:688 util/mkimage.c:717 util/mkimage.c:734 -msgid "cannot compress the kernel image" -msgstr "צ×ננוֹת צוֹמפּרעשש תהע כּערנעל ִימ××’×¢" - -#: util/mkimage.c:766 util/mkimage.c:1077 -#, c-format -msgid "unknown compression %d" -msgstr "וּנכּנוֹונ צוֹמפּרעששִיוֹנ %d" - -#: util/mkimage.c:1088 -msgid "Decompressor is too big" -msgstr "דעצוֹמפּרעששוֹר ִיש תוֹוֹ בִּיג" - -#: util/mkimage.c:1133 -#, c-format -msgid "core image is too big (0x%x > 0x%x)" -msgstr "צוֹרע ִימ××’×¢ ִיש תוֹוֹ בִּיג (0כּס%x > 0כּס%x)" - -#: util/mkimage.c:1140 -#, c-format -msgid "kernel image is too big (0x%x > 0x%x)" -msgstr "כּערנעל ִימ××’×¢ ִיש תוֹוֹ בִּיג (0כּס%x > 0כּס%x)" - -#: util/mkimage.c:1220 util/mkimage.c:1501 -#, c-format -msgid "diskboot.img size must be %u bytes" -msgstr "דִישכּבּוֹוֹת.ִימג שִיזע מוּשת בּע %u בּיִתעש" - -#: util/mkimage.c:1571 -msgid "" -"fwstart.img doesn't match the known good version. proceed at your own risk" -msgstr "" -"פֿושת×רת.ִימג דוֹעשנ'ת מ×תצה תהע כּנוֹונ גוֹוֹד בֿערשִיוֹנ. פּרוֹצעעד ×ת יִוֹוּר וֹונ רִישכּ" - -#: util/mkimage.c:1575 util/mkimage.c:1601 -msgid "firmware image is too big" -msgstr "פִֿירמו×רע ִימ××’×¢ ִיש תוֹוֹ בִּיג" - -#: util/resolve.c:93 -#, c-format -msgid "invalid line format: %s" -msgstr "ִינבֿ×לִיד לִינע פֿוֹרמ×ת: %s" - -#: util/setup.c:167 -msgid "the first sector of the core file is not sector-aligned" -msgstr "תהע פִֿירשת שעצתוֹר וֹפֿ תהע צוֹרע פִֿילע ִיש נוֹת שעצתוֹר-×לִיגנעד" - -#: util/setup.c:177 -msgid "non-sector-aligned data is found in the core file" -msgstr "נוֹנ-שעצתוֹר-×לִיגנעד ד××ª× Ö´×™×© פֿוֹוּנד Ö´×™×  תהע צוֹרע פִֿילע" - -#: util/setup.c:199 -msgid "the sectors of the core file are too fragmented" -msgstr "תהע שעצתוֹרש וֹפֿ תהע צוֹרע פִֿילע ×רע תוֹוֹ פֿר×גמענתעד" - -#: util/setup.c:280 -#, c-format -msgid "the size of `%s' is not %u" -msgstr "תהע שִיזע וֹפֿ `%s' ִיש נוֹת %u" - -#: util/setup.c:290 -#, c-format -msgid "the size of `%s' is too small" -msgstr "תהע שִיזע וֹפֿ `%s' ִיש תוֹוֹ שמ×לל" - -#: util/setup.c:428 -msgid "" -"Attempting to install GRUB to a disk with multiple partition labels or both " -"partition label and filesystem. This is not supported yet." -msgstr "" -"×תתעמפּתִינג תוֹ ִינשת×לל גרוּבּ תוֹ × ×“Ö´×™×©×›Ö¼ וִיתה מוּלתִיפּלע פּ×רתִיתִיוֹנ ל×בּעלש וֹר בּוֹתה " -"פּ×רתִיתִיוֹנ ל×בּעל ×נד פִֿילעשיִשתעמ. תהִיש ִיש נוֹת שוּפּפּוֹרתעד יִעת." - -#: util/setup.c:441 -#, c-format -msgid "unable to identify a filesystem in %s; safety check can't be performed" -msgstr "וּנ×בּלע תוֹ ִידענתִיפֿיִ × ×¤Ö¿Ö´×™×œ×¢×©×™Ö´×©×ª×¢×ž Ö´×™×  %s; ש×פֿעתיִ צהעצכּ צ×× 'ת בּע פּערפֿוֹרמעד" - -#. TRANSLATORS: Filesystem may reserve the space just GRUB isn't sure about it. -#: util/setup.c:445 -#, c-format -msgid "" -"%s appears to contain a %s filesystem which isn't known to reserve space for " -"DOS-style boot. Installing GRUB there could result in FILESYSTEM " -"DESTRUCTION if valuable data is overwritten by grub-setup (--skip-fs-probe " -"disables this check, use at your own risk)" -msgstr "" -"%s ×פּפּע×רש תוֹ צוֹנת×Ö´×™×  × %s פִֿילעשיִשתעמ והִיצה ִישנ'ת כּנוֹונ תוֹ רעשערבֿע שפּ×צע פֿוֹר " -"דוֹש-שתיִלע בּוֹוֹת. ִינשת×ללִינג גרוּבּ תהערע צוֹוּלד רעשוּלת Ö´×™×  פִֿילעשיִשתעמ דעשתרוּצתִיוֹנ" -" ִיפֿ בֿ×לוּ×בּלע ד××ª× Ö´×™×© וֹבֿערורִיתתענ בּיִ גרוּבּ-שעתוּפּ (--שכִּיפּ-פֿש-פּרוֹבּע דִיש×בּלעש " -"תהִיש צהעצכּ, וּשע ×ת יִוֹוּר וֹונ רִישכּ)" - -#. TRANSLATORS: Partition map may reserve the space just GRUB isn't sure about it. -#: util/setup.c:458 -#, c-format -msgid "" -"%s appears to contain a %s partition map which isn't known to reserve space " -"for DOS-style boot. Installing GRUB there could result in FILESYSTEM " -"DESTRUCTION if valuable data is overwritten by grub-setup (--skip-fs-probe " -"disables this check, use at your own risk)" -msgstr "" -"%s ×פּפּע×רש תוֹ צוֹנת×Ö´×™×  × %s פּ×רתִיתִיוֹנ מ×פּ והִיצה ִישנ'ת כּנוֹונ תוֹ רעשערבֿע שפּ×צע " -"פֿוֹר דוֹש-שתיִלע בּוֹוֹת. ִינשת×ללִינג גרוּבּ תהערע צוֹוּלד רעשוּלת Ö´×™×  פִֿילעשיִשתעמ " -"דעשתרוּצתִיוֹנ ִיפֿ בֿ×לוּ×בּלע ד××ª× Ö´×™×© וֹבֿערורִיתתענ בּיִ גרוּבּ-שעתוּפּ (--שכִּיפּ-פֿש-פּרוֹבּע " -"דִיש×בּלעש תהִיש צהעצכּ, וּשע ×ת יִוֹוּר וֹונ רִישכּ)" - -#: util/setup.c:465 -#, c-format -msgid "" -"%s appears to contain a %s partition map and LDM which isn't known to be a " -"safe combination. Installing GRUB there could result in FILESYSTEM " -"DESTRUCTION if valuable data is overwritten by grub-setup (--skip-fs-probe " -"disables this check, use at your own risk)" -msgstr "" -"%s ×פּפּע×רש תוֹ צוֹנת×Ö´×™×  × %s פּ×רתִיתִיוֹנ מ×פּ ×נד לדמ והִיצה ִישנ'ת כּנוֹונ תוֹ בּע × " -"ש×פֿע צוֹמבִּינ×תִיוֹנ. ִינשת×ללִינג גרוּבּ תהערע צוֹוּלד רעשוּלת Ö´×™×  פִֿילעשיִשתעמ " -"דעשתרוּצתִיוֹנ ִיפֿ בֿ×לוּ×בּלע ד××ª× Ö´×™×© וֹבֿערורִיתתענ בּיִ גרוּבּ-שעתוּפּ (--שכִּיפּ-פֿש-פּרוֹבּע " -"דִיש×בּלעש תהִיש צהעצכּ, וּשע ×ת יִוֹוּר וֹונ רִישכּ)" - -#: util/setup.c:478 -msgid "" -"Attempting to install GRUB to a partitionless disk or to a partition. This " -"is a BAD idea." -msgstr "" -"×תתעמפּתִינג תוֹ ִינשת×לל גרוּבּ תוֹ × ×¤Ö¼×רתִיתִיוֹנלעשש דִישכּ וֹר תוֹ × ×¤Ö¼×רתִיתִיוֹנ. תהִיש Ö´" -"יש × ×‘Ö¼×ד ִידע×." - -#: util/setup.c:483 -msgid "" -"Attempting to install GRUB to a disk with multiple partition labels. This " -"is not supported yet." -msgstr "" -"×תתעמפּתִינג תוֹ ִינשת×לל גרוּבּ תוֹ × ×“Ö´×™×©×›Ö¼ וִיתה מוּלתִיפּלע פּ×רתִיתִיוֹנ ל×בּעלש. תהִיש Ö´" -"יש נוֹת שוּפּפּוֹרתעד יִעת." - -#: util/setup.c:489 -#, c-format -msgid "Partition style `%s' doesn't support embedding" -msgstr "פּ×רתִיתִיוֹנ שתיִלע `%s' דוֹעשנ'ת שוּפּפּוֹרת עמבּעדדִינג" - -#: util/setup.c:496 -#, c-format -msgid "File system `%s' doesn't support embedding" -msgstr "פִֿילע שיִשתעמ `%s' דוֹעשנ'ת שוּפּפּוֹרת עמבּעדדִינג" - -#: util/setup.c:537 -msgid "Your embedding area is unusually small. core.img won't fit in it." -msgstr "יִוֹוּר עמבּעדדִינג ××¨×¢× Ö´×™×© וּנוּשוּ×לליִ שמ×לל. צוֹרע.ִימג ווֹנ'ת פִֿית Ö´×™×  ִית." - -#: util/setup.c:559 util/setup.c:725 util/setup.c:844 -msgid "no terminator in the core image" -msgstr "נוֹ תערמִינ×תוֹר Ö´×™×  תהע צוֹרע ִימ××’×¢" - -#: util/setup.c:622 -msgid "core.img version mismatch" -msgstr "צוֹרע.ִימג בֿערשִיוֹנ מִישמ×תצה" - -#: util/setup.c:675 -msgid "" -"embedding is not possible, but this is required for RAID and LVM install" -msgstr "" -"עמבּעדדִינג ִיש נוֹת פּוֹששִיבּלע, בּוּת תהִיש ִיש רעקוִּירעד פֿוֹר ר×ִיד ×נד לבֿמ ִינשת×לל" - -#: util/setup.c:682 -#, c-format -msgid "can't determine filesystem on %s" -msgstr "צ×× 'ת דעתערמִינע פִֿילעשיִשתעמ וֹנ %s" - -#: util/setup.c:685 -#, c-format -msgid "filesystem `%s' doesn't support blocklists" -msgstr "פִֿילעשיִשתעמ `%s' דוֹעשנ'ת שוּפּפּוֹרת בּלוֹצכּלִישתש" - -#. TRANSLATORS: cross-disk refers to /boot being on one disk -#. but MBR on another. -#: util/setup.c:694 -msgid "embedding is not possible, but this is required for cross-disk install" -msgstr "עמבּעדדִינג ִיש נוֹת פּוֹששִיבּלע, בּוּת תהִיש ִיש רעקוִּירעד פֿוֹר צרוֹשש-דִישכּ ִינשת×לל" - -#: util/setup.c:700 -msgid "" -"Embedding is not possible. GRUB can only be installed in this setup by " -"using blocklists. However, blocklists are UNRELIABLE and their use is " -"discouraged." -msgstr "" -"עמבּעדדִינג ִיש נוֹת פּוֹששִיבּלע. גרוּבּ צ××  וֹנליִ בּע ִינשת×ללעד Ö´×™×  תהִיש שעתוּפּ בּיִ " -"וּשִינג בּלוֹצכּלִישתש. הוֹועבֿער, בּלוֹצכּלִישתש ×רע וּנרעלִי×בּלע ×נד תהעִיר וּשע ִיש " -"דִישצוֹוּר×געד." - -#. TRANSLATORS: Here GRUB refuses to continue with blocklist install. -#: util/setup.c:705 -msgid "will not proceed with blocklists" -msgstr "וִילל נוֹת פּרוֹצעעד וִיתה בּלוֹצכּלִישתש" - -#: util/setup.c:817 util/setup.c:837 -msgid "blocklists are invalid" -msgstr "בּלוֹצכּלִישתש ×רע ִינבֿ×לִיד" - -#: util/setup.c:847 -msgid "blocklists are incomplete" -msgstr "בּלוֹצכּלִישתש ×רע ִינצוֹמפּלעתע" diff --git a/thirdparty/grub-2.04/po/en@piglatin.gmo b/thirdparty/grub-2.04/po/en@piglatin.gmo deleted file mode 100644 index 9c216912e7dd365777faafe2f16c229f23b22a17..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 130402 zcmdp`&({t1fc@bxxG$Uy$G{3ma=z8DExaDK zhU;NF_z*l0J_kF)FQL-i3A@6sK^txeOvXMA#=|n$44w%)z;j^pIP!5^8}j+~#(q;Z zWyAl@BZvz(LB($o_W7p4A#f=SL*>5>?hXHh`@rTATb?ek4faH+@{fhRUrwD&1{Re}I-hRiC&Gc)XTb5W8minkL8bcy zJQ98c)z1sgu>E!{RC!Kgmygacrov(QO!22?#yfm7k_ur2%^ z?gMu^wm;j}qc@a%jDpH{8XN{IU~_mW>;SKFycLec{t(<7{tT7=PS_E)KF8LlCzSgz z*aA+1EnzAg1~Z}B^+?zWu7YZZ)lltw50t*!4CA5iT-#m)pvp554u%KAF|Zb@eb+(t z=bNxI`~|)UTc2mg)7!8F`=2lX{pVZz)35@2;ssW|E`&3%x4h7%lM9DqFM@;M`B3$F z7{97K--)?nW4}SCK@JeTY0`|oI8dQ0|gOcawSK9s=2qlk$pvLQHsPU8vo53Ye z?HPiS>sqMzM?=+XHB5q=p!CKcQ1#yTDqGIJup{;fQ01HHxDaaGg!Iqk1*)CCfQtVU^kCa-Z2KlcjjQQU?K}_mhC!%w&T#HGK;`=&90fN) z)g$g&o4*HD{}E9AcCcdrsvO5TUIO>WekW9Uwm{|o8T8=qun+9H#_HcmQ2EV)+3<8Y z0>0(^+pV?b9RQ_2(&0E5f|83Hpz^sJs(hQA{S#;30TpiF>+C$|!T#6_q2#0dyyY9DD{Uz2{&{xD`sywn4Sa_i!xics;re&VX`X0ad?iq2y*GJP^JEBX9>)x}h6v zJDm(AhijnP>29ca&p_4dedqr(Y=*t%jaKg4K%9IX;eGIasQBTVY(KArD)%K&^06AK z-`7E<`y3nyKZ0#w>zl2-b%DyiA8ZcCLzVX+sP>ryRgMxUxh#k3?<3(1coEEkA3~KU zX`Pj`sZjE@07|YaVLV(8d%&xq?4pzUAbmd)*GzzRx)OR;cvutURq1t;QRJw&w<*tBgm-C<> z-U}rcJ?^soIR=(t&xb4E15o)*x!Z<26eeL`3ipL;pvLEYup@jMs=Qx8jfW2Ru!n$S zpycHgsPxuA#eW#KhcCmf@I$Eb{NlLpz1BX=F&iqK!yQk8s?RlWKll_>dhbIIZiii9 zdj@r9*cZxuG?d<*0~P-WsPbF@RgW8?^vnZL^?e(v+^z1n;rc?g=NPDRFNVs0DO9?v zU?RK`c89M+$@8~Ra`qEcJN*SUZu&f6{ij2fHw#MN_@VSkIn+3czya_msQj;ms@G;X z8h!{5gWWdR^47xs*w2E>=Prn-_}+#JcjkjW-y*mj9u2b|V(kf^gG&GShiyOJ3=hKo z3QUKcAF=&D7pkA@q1x$csP^0f4}?ELrL*s&wjU=$+2=X?3TM9>s=c0viuW5-yLEre zw&!riEU5k|gBh?6s(uecwg1OZ^0Nc>g54jt@khY}u;)S#2BF&dEO-Q50~N2^6O2JP z5=u`5p~meQQ02M|D%=Lx4ZaE0|KCF8*WyW=ZXY-d`xw|0mO-U=0_+D@L*@S@RQ$J~ z+T~lQ{_U~RhMNl2t|d_Uo(q-UZBX@j4yymRLFNA^R65pM z^HBBu5h}gpr)_@OP~~3^hr)GmANVdD2)Dydu*);H9s{7_%7@NcS4o#z~^l{r$W`I6sn)i?!DRW%X-4W*pGz?@FtiDUx5nmd%>~? zR6R#PwM#KnJ6;Og!)u`A?RF?Vw-GA;w_p$W0aX0oq4FQR#nyK+RC_Ff9pTYX{ksaP zz1BmOV@3V)1cbrTG$yr05yI$!z%cNv(I_e_QMg5r$fbG z>+BChmH$mR5;lL$?#IVL_3zMjX#_ycw#T zPdjdfL$U9Kl9!}6+ zp~`zS91hQhz2M`p8+;#Xocs(GZU>Z}>F};~?+QC$?*%o!2Sb%-q_fY0%6}g02&(;Wn5p8{2`Lmd}G$we8Io~m^` z4l2LXp~`UqlwP|Gs=XhA`@+wm%C`fmJzKqR&rf8ufpc=SEzLVgld-#AKLyu&@l%}PL76i;4M&c-TWiV5m0($G1Ppz5)Okm z!ZGk|sC+wZwe5DG;|RwLDE~vC^lB+o|DWaTk3qG^mr(WX^08$SR6k9FYWLYtauR}l z;7L&JcLVGNAA}x!6G|R`htdz7KC$7(!U5Q4LZugmz2O;9^|=Xp@Ev#n{1d92y*{=5 zpAF?-4Al=SpvrSKRC@QpvG8S>4BLEW%P}5~!afW3gC{|ye-l(X&qB%HXHa@&hx70E zxgAHTQ2q5ZG9+I1sTzVAZy({FG9?Dmx{?_?;sng?6Ka;R`ez=PpgumZjfRi5X%=D{KGdZ>1P1uETNpvu+p8!MM%p~`Bv_-WATrKFHZu!amq9 zf!*N-I10Y%{9Es^^Ga{1{QAOna0*mDSy1&_1l14Apz=M_*{_B@u-^+M_bJAXNHSLZ!C>N*-Q;y*!j(|06&%J*cbdR+z8KX*dKdm6Te?>T-BAH)7VY!BD}ZPR-U_Qw7rRQyi9 zI1_&W^srBYYVU=x13VTg-&IiMy$))eJOL$d9pd85I3Mmf8LB*)Q2n(Cs=Rej?Q%L) z{V#{g|5hkH@dQ+UTcGOuK2-Q`oc(WS-)Aoy--GJs5m5O}fhy;0sQ#>is^`g2`K*P~ z3lBi)$E{HDTQ`d{=d9h}cMKUBNuqo4yoU#NPdK=p3{RQsF^mERiY ze?L@xo`JI;SQRDI)G#F_r-2sK|F;Ft=fS4yGcpAHrOGN|&egNpwORDN5b%K0l) zJG5nZ^L(o zav$pK8IB8}!Hf|AXGcP236m0;Rx8KgO#7jQ0=k^s=rQz>aUBS`u8@d z_IVU4o%f;ECBH$1>%NcWFvl5Ca}XuUjsGoJr0%MS5W2Kr=!g`0V@0?sQS!@ znx}(M?Rha&es@FFV>48FzknJ?e>(Q>WbIi{>D54uoAaRJJqcBw51{nrPB;z@>1^Ah z1S-9gpz^yFs$ZXi(w9F#jl0(S+V&m-B`;Y}=|`Z($114tcqLT7-wsW_Q1#jgmCnE} zac13@2_*+-zzq0`bMMhL&KHd1eg!Jt^W7|ehN|Cz``P|D2uklC236l9o&9F0@$)p) z_-fbPj_+=(yE$#W`Hedj{W zA4{S1aW~2_=VT zL&d)qwt*i(_2YJ!0^9Vp>14sZurGz`?|L{K-r($SJA3PXab|x!5z;KaRH$*04%OaO zj;BJcL)JpI`z=u82@A$?PH+oF$c=M4yvCocmB6Q)o%+_yMF`KFMmO`OV1&;|As-8Z!DA^ngZ3H1yJpB z3RHjH302PLVPCindazxhO*aWD-At(Pi=g_m4yycT!HMuTD7pL!rov%Kj58R4hru`C zTsS5<&fM3of|+uMLt&qxwp_EIC1+1U z$^U!MgK-mWd-a8q$61bLQ289~cokIm$Ds7?RwzB(YLaDFsP^s)B_|W0+N%aiZ=DR) zUl%)WfRnJl4`;w$ldas8K(*Heus^&Ls=RMF?tqe`0}rz6k}Nm{dnr`AT?bXZ7vO66 z6O=q&FvYgRQ&8>oDb&2sX{sG>GoZ>>4mH1>4zuAS&b@t#jW-P5hWi4jer}g)=huUv z)=4v97A%4)|81~6d=;u6w?Ys80410Erp5VQhZCUeoziXlje{QcFq9rT52}2(LFMx@ z)HvM^)oirUZrdjT z%6$e@dW)ds^K94>z6zxe-*Nob`8S(k+h;md{b#{0&<|CQrOy3qD80HGYM#0QYTVxe zC0D;dh3}AQ`!@kfPv$^{3&PQGJ(Rp}gOa~i2U|Vb3#MY93)K#nLbdl6sCxYZ2gb2S zooUCz=&U&3S-6)t{^YnKJI;4L?p<=?e3!!;VJV!JYsc3uQ1bW`R6n%Lv-LR$Hp4z0 zYF?cQ)efaF1ulnbzlWUvOHlf8JDdi)&a&lQ00Y=hgs4#8Hs`*7fz=~vP~*T4TfkFc zYj_sSftNr(`~s@q4lcBu1*O*xflJ^yP~&VTRKE?LZS~CrsPa#PO5YFFj%Ch$6?_W& zjqqhyJ;%x8TwA~8a6Im3LFuDsVLaRl)qkxHvE%(9sQJ7INCMdc7*l~w*-**A)e%uE`mG2Vh!Mma4 z{dL$0{sN^ZTP?JDC>}~5%!QNT@lfOR5$FFMlpgJSm~E$NQ2iZ%O7}{ray|?tm#;$g z&o(GI*lUrEKNNb{3!vnp1}gpvD80G{s(oLCivJ^&ytG?v>gnNaP22~_*v3_bV^RKDAw%GEkxgV1;+h0?m+P4U*-_Lw&A+LeC*Sp^u#5w06quR-Umc%{f0sH z(;;vQEQdHQzBHml)@9>MNs+lth4iSD!c;w61WkzuDAJZftt6!gHvITBW-^3pvt!lN)E4c z_6=|>_Ag;A?7Q6Rxr?Fn$b(Sze;=w}euJt{o1<)b21ChfzO&am`_+!mK*`^?Q1$70 zv@Pc}sPxL9!VQhcmqoB`i`;j`$M(gY^Z(tHH;4yqpQkF)YT3QEoP~&j=33gmoI$j0;!u@3^`F`m{8-C7;INy5g@4~&~ z&_65fe1GvtwjW=GIrz6b*`6cMhZ^s9z=`k^I2C%QSpDFKnqM!3(u+?(wZmUf<&Hnq z`Y(Wre=0l(ZiMQe=BL^APJ*gO9`s->R6kw_Ri0a*+T%|s`5AV)m7hE)`KW`6ei-<5@aI7F_gzr>??WiL>~NMHpM#*N`LZ0UJ(oh2Yc-q(?}A6b9Z==2y1?qwwNUbZ8`OMr zA6yN;hHB4M7utTh18Uy*3o86x7g@H2(nnoj8XN>AS5;8@>O!b_Wh2!1`x&Yo2V89X zX9`rks-Vh!I#j&7q4en|Q1gfH65H<`VII~|P;#^qnsE#@zioyZzb!Ad^F}Aw8vA}w z{n!V3FdIs~gYYc45^8*Oz08iASy1*hF!t{T--uT3>0)(GP0;r9;VK2~<5!g=)Xm zQ1yHcsvUoUDtG)Tv;7zugVh4&Okv!~WOUa%R9n?2Dn&zZZBXg-zSh=nGE_eEpa+kDC%|)|^hVb;wjahr*%vtbagNu*$+$lSQ(^P9c3(Cf zsvTB9ji2*j3fu%WZaQ3NnFgm~uY+yj{ZRGY2qmxEoxSt*);`{G5mbAwgc?UTLG{}= zusQ5_gViTp;i1^`pycc(=!Z|ii($fzalXgkV^HmS;!U<4AA}1329*5$2#eu}o2{O? z5XyfOl>B`GrBD8XIk4S2Ti*Fl^WX7Ma=8ggem;Yei{`i3_U#8%{%KHpz8rRkcf%C; z0#ti+yw%1Z12s+xq55y3v)91Au^$bk&sIXU>m^X>uZ0@#PeYaGWhi~L9V%YjZMNT9 z!*7Vd=t7lh2<$DiQyFUz7uQ%XS_^soxyR4ia0hi-`7tDae?za836iVLjgOc;_pyreK zd#wJegv$3psPwlueh!uI-%#ts?)TbxU@+9YI1i427r;qy6I6e+zRxldD&1VDekg*H zuN5#6UJKQ4FGA_N?T+2=x8ph;s=Vb;@veZQ;e$}={QxC@T^_LW@C2xIkAwr^^)MA~ zfs*ge8*Dzqpwjf-dDRM_P~o6l^h_F4v2&WEA;@k^+5Iz435p9EFj zc~Jd*7L-1?A8OtEzH{FJHIK$WZ1v?FDE}3XS35ooJ>1`cD&L<_diB6Z?D&`gC8rCa z{11l*!84uzCa7`p5mY<<4Am~Z9<}2$&2b)7{zt%}a1~T~4?_=r1W$l_Jr-yFeUX(= z>3s+lzUAY#AICts=R@i9I;eKK7%JaKpxWni=f3|FwtQ(&^_UCQUL~*uo(j*0-$3>E ziBDR6xE7lBgwp>z;7oYnMw{LesQx|{YMpTf)VTNtj)#XoWy`$=s-CYx$n(t0|){e7#pycT{SO)idF3wj3kA+HSD~!N1p10-q zZL;xtL)Ci`lpa|DRnGIE^vhb>a!q*2wsR^}zaIhBj>kaB$2zETegswSzu_F%=Vg1&QwP;=??a8hxL0iX z6QSg>2xh}`q1yFBsPHXbwf&O-mEUxzaaar09@jy&_d`(Q{0*piquFb=90xc~g$h>$ z)!#=!<#U;Hf7H3Z4b^_XL#?L{eBHKVJ~aIRrLR^%)#DDR@$xQIKQ?>Ah8qo~hYO(c zt%PmiNzQ&QJO=wZsCFOnrfuKpQ28%~GvMV=ji!Tvgw9_;pxO>Zikh}{p>URS_;_&8L)UEj6o z4~NsR=R(Qbg;4X-Jy7lQ0+jsy3>B~Kd$vCZLe+CNRDWIxJ$N@%xYwb|{{vLLI=*k` z{h^LiVCOjUg-XBZ1AA^;2PNMRLABp!Q0X-L(Dqv&D0#_(n(ykM{7;9f=Z&xwz5vzV zqd&6eghh@KsCuq|lG8O%{rxmly+3sP4N4w6Znfne0#(k5jLq3YG^Gh5CvQ1!@h3_z9VDA)yF0wu4vLY3=r#~-1}+y8SL zf39N?O0TShivIvqep{f*`6X2Sn}1>R82~jt(xCeDV5t6C2sQ4GhN}0eQ1bXTlpc)R z7Uw$yR=_dv7kCg%`ZCUUJgkJX;5YDYIQ1)=&M$BY_UYSgebz(i%}=1(E#Ygc*9sg@ zgcEUJ55w?VcnB=|#`enw=wVO%*48T<_%*D872nzQ(i>3Yqv!Xw z9mc~V>{H=bcr8?V??B1VZ&2;m?FZXV z#=}(Xi=g!MHBfr}MJW04{bbYa0VV%qq4Zof^k4+4U(ScB#|Ef!ybYD_Z&2xV{n@rd z22}VeI2xW0wGMa=s$RcC#q0Hp)o0_N>Q@9O!DFEMX#>=HO1f^TaLq_^yWD*9d3YG(D%D-k8G%UdpVSTxecn^uR_(g%^$X%2SJr< z9#r_1Q1!eYYJ7bN)i1w7joW>8*mCDWm9Gw}{cnf!;QMe99RH`)XO}=fcHd6>JzIxn z?5Xx*{oGuR%r7lii{thYrk!(>`=z{pfZKh99fO&Sy%~0fuWumyhA{J>o^ss!!Yc^Z zh4hBtK9un1VRCR^hriYosATipPdGjI;r}T{&oumQhDQ_kZQR-sM)m6I;@qY{Jm=&7 zy35xbl;IX3OfSsKydRDE&iS7R4<#-2{~F%qJcmDOpXif{eG*|N5`QM<6wFJwh2V3z z9}gcU@H4nIcjZ=G>4xXA-;CJ@^Sc~*l8Dm*a~5uoVgANkL0sv=t4s*{r$6cbLbyMj zo95=buFh$u@A=HkvxX+zDDK59E;lm%;_>V8Q+KGa}Mu6 z<9{t-$K%Hk^96BF!QKb+3-1SDjwMV0Q-zzJ=W!d4y;}abwX)8>eTjc4?zdp{oQN?x z)Yw>i!)=)5_^-#j;M|4xupdbL=9K*e-cf_*nZw_<)fiy_j&Ap;Man%dOkFN zsXOj^W)bE{crS78aq)}?ebJOwA=7J-MtYM0j& z*f-lCW}WsZ_HxWh+#bc$lisT??>gLDyReOsj^$~>e2;%C(*2n9pM+mxvT&ab_s321 zlAfao7k$d{TaVGRA6$pu0C*AM_iYr8>ByIX`?r`Lm}LC*%;SBbE1&Ev?|gUQcP{S7 z$)VA6Bko%;e`DIxA7R2CML0dzkk>QVm+~IL{}apt+@>2}#-yVk_vrH&FA?GoA>IhW z)?&X4egu!e{cXb5V4lV8N!&IOP7g~4-*vcsfzfkqqcjg9-bt7nG1GBRAbrb0vNwouB+a#(yXFExf0}S=jZQO}IkRJf8O#aX-kpkAOenr{{5(&U)Una9alp zaoZtJ!nGpbk4WPJ{I0+-)P*U&q^2nZo<5Uc?Wwd=k^WZ9wA@_ao@siBmO10 zodVBnl!ns!&Ly}2_o?_Fianip=fWiDVJ^Yw8BJPiU@GCRaCsRI{%j@8O_&tt-k4d!ww?(*}jJXr@ z8s{U30<7PsrMf91lChdVKBt9@U&aQTEgjCe=6 zbT_%MR}&`9z02!X!aRSMes;hj-m{k*?||9bo$P$E17 zUAUDly>Yk&o!f=D)nJNn>ww#9@J;L;Nn>BqItF_?Og45sf5PAJzma#25zMn6e?P}< z8XQTS-!a`W{cv04;(d=jm+)u0IJM6GH0&1HJrL~N3=VG>D|AZiw@D1!QxNy< zdC!2~V4mguQ;eQLE}eeZd$}}rz_YMt!BzMVcVQL&6wJ}Mzd$=hv40jedVheh&tdO?d5U!U!D%jjI{9Df-dp1reR}f}Y-E>v z08@n9VZ;f;mN1UE17N%Y@Z3u|9(D1)gR^lv)uk{0%XmK+J}wK-rxxa}!o9{Yp0I~u zJD7AHB#-FxIqp-PWmIoSIXS5G(0Uc~(kv&yCM4sI>T zqci!f;=LvATQHaM9(^X0#!;?3h0gIg+|I-3X+`=UxIE?%w}Pn+^Jz+}So#_0KkFnZ30n=zO3KAJE?@c)*0(dSuS#<{Q=xSxjo zRm>%X)$<;1FB4}O?*+Wy50?^t0&Xi@UJBRv2@&@Rmq&M(_6^vZyEGN{cHS?*yn%ZQ z%yQf!n6F9mSh&uGO?O<4`&yS4-uzykwHNjsxL=38vy&(JO(4BvFnY4^&nMh`%sdx= z9&UQ>$9^U0T;<$X@P0k+mpcFU@J>t~{_S!94nF46jmLcuZeL*Z+=%^Z7{>n)!VQO0 zT-dwuE93nM{7>cmFy0>_uL1Bq-2UP{7jqZ!uEc*QZVzC81^Y+X2V<_r{sLw`eyefU za}DNC{G!iF($kX%XJFz9mxF&c=2+rJpKI{D75m@#-^csan1?WPuzR?_$ot{&4D5-- z?F4&cUxE85?3pC=6K)}RKJL+HEq;2=!yMz@Wq%42hy7jRWMlN~2jfZaG~9Dt*tXc` z^8OUeB;E4}Gnn_k34aIfmGCv}(Wiu$cX03N;?IJAx%3C)_b_3v#;w1La1MSaW8QUk z&!yGN*@dzAA5Y%DxHLCn?}TiK44$KeC`*Sa`|Vb}91_Dk@8hkW+I zT#S7R_OZO@6XrtRuXANc=6y7A-o@ST;wL*M;iqRJrVVbbh_i^a#yIyx+`i?#5_2+P zg038j{;&)474JpFn~wc2m*@3_Ta0}ee#>zCkoT@cn$7!Y{N9HxF{k2o5MlJh5oQT~ z%b}hE{PHk&V80gk4BT$u{bAhp#^^Z(_uFxM9WxWRFJNojCO|z2F5DaN4$S44k1-Ds zrZf5Lsk88v;JyU6h4@9E0lfc?smJ{~{PjFW+84UGN8q;!w+}E|@xKMX1m2(Ky}+e& z4xEE2z;7S=`*}Eu`1=16-RjcWNE|);5pEw?>hgL7|77faT{wlw<^5*Nm%L9UEj_Oj zz8JSB;B=R-+z)pCr@8po;NKnp_u(vzo*K+&&R_Pc@V}CHJ@G#n_itT#uevbDxinYd z{s-^R5N;TLKf~MLNw{srw8ejl%VRO_Un_B*=Pk_L+d%y9By0|5KbQVX&R@6#(;GiM zXA*Wh=6Dyb8|hz)-!Ygx-k*d)8`S*mL%3-mCsh4|NF@6UTG@5|uHgn1hO_V7LI z7vbLcc>wzcOa=ZG_|I_u`x7XE_a3-khWjg|yOj55F?tTgZ!GSOpG0S=#Qii(OYA>m zHW23t!k+}YV$N{k&WD$gZb$qM#66^U+|DL$PNTFJ;-}{-$4eYz&#lW^ml{b%0)c4^+udlKfzMtPJH?pWOJ$Na^+AM+sToNZD=ci{dZ;cvkdlb4aVOQiMlThgd-K9pn@mc;L}KzENVgot*EIW@R0#;X+=pOg}(UY!I24GO8)e`MKdz8@)k|YF7&GX zVSiPC2A~E<)K-K85zp_@nzaEJe6~$#PtknwB@r2-SNUn&U|F&+o;0ef1O9MCEnXZ7 z*5E_3xR=rok@`qYpvqfTUQt}`RYZaVYdlj}1t$MMcxk|kRQrnqUMUq%&n-xb)YMl7 zyrNL3CfV~cgEUlSB{_N1^Jk}eHRS=?zc^G|S)%B*l{NI3H!U+Oqu|hjLi#8@qo6Q< zcAA>Ot0*;b%F8T)IwRH2A#rt2_sbcpuTa$%1~&DS6Q(HSqXX>(=s)vt$-;M zf?5(l%@+G>0wu}bY^6m+JblFAB3TEJhD+-5h) z%$c5IH8z^ij$v{Ll?72#yU%29W_sa_x)~Xn(`OXUuS?I!E1a?Lzs`1oHzTEBhL@dL zkeyPPHbW(u;N{M=%+E+k_cHSHbMvjeFck7Ac)dr1)m8<9H4*F1{DML@QKjIcZ)VQ$ zLe)n3CM9_TyY%Psz3oJV>*nn*go0?lWbVAi1_FBjrXHm;2Gf1pT;W}R$CFfP?3gXPS&K%a70bA zkYT~eY63|~DM-uA^raLR2dZltttHa(hvsBS-37crumpjRBonBn0+Fo zZ6)K-xrb_N{^?40%#1@9Ny1csns6;Dw8UEys8KrEH0FjNpAx$H9;aaM*tfHpe%P2_0GqS`imbAR`f-LCl zT1qP>uQVL0QV15x(aO1S8JuzwkjERw1i<*dCZNlBnMTu(Ww z{8TcmO48&12%|X!Rq2*$EUwk_OKj1rSgTc3Q{vcs<+1h;RI(%sv)ZF_|L`ztrG_OW z>!3od!}zb!#7cA52WtLD%JKh}L9FmbI8C*w7wzV6s8^#L{9Y>48G8~xWshz_b|Z~3 zuU!Q))t5Rn;!DlUEm)L3J3G&tpP5rQe3*G(=u6GYO`GXUJ+v@mLTYBAFV$bXqzu{8 zJYOXpq5W4f&a4k&s|+Jl<^D)HLxr`8FV$2fJu}}6m3lL#6{w@YkcJAG7)a(&$97(MzkyJ!sN<6z?AT7CTgjWZ`s5fM=i4RGH*d_(b5GYp{MKFV; zBv4da#uhXZp{6QU%!grE6r##a{gk+wpcGIRe{4~thA{Ev%toUKC1N+P#FKGyG}ckRwA`%ReEw!?Hz^2?wVHYNS;H+uv0mGrn z#!dz06{StWXtSp}mr^b=G8rf-iC+MfP--`iwnJkwY3BE6Htg<{f}3X}-k4ElmQAP( z1#kuE- zyI^BR{d=&2yp;U3J-5&yIkUZlY=5ywLmlFJZ;)4BQG~Q=%V?*ET^r7Xpfi)v!cv5d zVld^`?52;+_}FuGjQ4I!vuoxi?2>8WKp?dseNWywftua=qDt)Ux`NtCY5j9#Baa#e zd+42*S5(nxCTO%&4;6?0ImlgtdoHljT(YO~;wg===azE;{=>F&q5rio%CBj8(B^KR z#!^omTpQES%gO^fgwsJ-Sc@@)VKz(stjvN!*Rm12{)-fcD_Ac^ClkBhlRhx3hDbdJ zg>|0Utt)NLL0ASd0ytcYE?bm#T6S(h)SG-gQe~IvT%-Z*I=-~hU*@r&WY+VTC*7Hb z+u}GYt9#y|Yy?*Ao_a** zJes{!R6BPz_%r31Lqs#l#m=+k@1|Sr6gW2KXduk;OVcPil5?6+sG2D|6lD3L_N=O+ zqNVuSVl$Oi`D@e>tTOVZjUZ%oy{#b*yQ^O#Z~8V^;t!X2c73T_b+oD#wqjDNX?X>6 zQ@j$UH}){bR||?#t%Lk*Hv$1q%cdM2k5x&{KY~<8Cs=l=+LEXhlf8lvuPobYb-G&R zuh-04Rl#`(V@o?2DoH1qm8vU|^3?H_7b*9T7(J#Tm#E|D;Z)qNa?EPdoRCG>k`2&3l&B3^y4lm0dfUC`JWlx=akB~eS?~FSOV~6ntq6yLI%L8n#4<&)LCI>l z%fQWUAGu7BdO^z4Gv;KbWjJ{A(a43FI*^_}WN6a-!b9^i7IHA5-IEQ-49t2#hrdCo zWh*vbLLj*;*&B*&Xr#o?3dROrl#`N8(wX@(8EJ*N`G<1sUy#buzA}(+PxVU{`Wp7% z>1H)t6JkN8MVCtM&g5;MlCX{mXm5LI!vRhi>mSatIKbE9soqN{@|SRNpfYgmSHU#h;Y$cwGBo<1 zrvt?%F2peR7oJXvD50|zWal+lv{^Sxzv%FHp@zDx0SB@9gf7-|5eVEo#+=0vC%$2^Bxt8t?UT!Cj4p!?iy+uM+mRx?-p=HdBc2gQn zPI6hR?Wmm_7#~vOI(C;q_cY4d+%}a5D(z)a6ThK4%P)3Xha0Vcj!!9B$S7>C;ph(? ziKCTEk|=Oc2MS&92fl{!^6;)^$bEx7@o+(!-s5Bam9qi`9EUfL- zghq|cFM1?F-D<)dCQ2}Zfn~6vOzcY3cd@;=i;DCZeOK?5R)(sXkIe9krOevG(@7!o zS2^8gW>YC1X4!BwP&wHpvMA%QFA^!Ot*n$LF$J?eIx}tRr#Ym=b&?T!?r6(`+}KtW zHz{Fkt|`aQt1+sg(HfFlL(_R&8zS^((QMC4(nE?F4k+zJ?{LYhO0QzcgX3Acv{Z*@ zr4?a3&DtmGTU)LE^fFS@QEZ!z2~tk{bV*yd&9a3VZ3o z-0j&ls&@58;*myocu7VqJIx@p_rmmdty!7GbV7vaGZ^Klnnb%GkN_}aGKtR4$#n`@oXmrz^w-Rg0_+Kq)uh#S2K^LHRv9PnkBBXJ6Xw4n1? zfa|gZRix=GQmHe#0Lqxv1__z4LrGkc>g5*}3{5L6kh?@}9_MyC>E+Owxy3nB!I|l) z5+?P2G-yx@NzUcW(V&gpa7Jtv54seKkD#(6gJNmzlDIYoI+a!k-NmUn87QU+qgqco zB6gR?@mYpGLNKj?lBzQc408t4;2yo?)3U^T3E+~7_%iAO#ae!|sv%i(qp9_@vPBz7 zK})s&hrt-`OEgl9P{bA~+|d17{D{ur|ATxQhx@mT7|U+wlEKJmGGJqNyD4b!Z`yfv z=F+**LMOwy*vZiw9#v~-SdC0AdjAn*gppr2n|dR66G79W&m3#%5YybPHCPLDA7rgZ zd3>0Wm&-yplUv>4Ui$3(6fK8`b3138M#P*(7|r6Dcv>JU_2HiWjxg_9{Ce)_)Ht}W zKIWsN%%HPb9>x5^%?1CKeNJHkfAhId_SxkDJ~i62d&~Sr)tNCvE0_(9RZUe6&c17KQ8zOov8% z4WA~N3CLV~xHYnA?oyT%X2q(dF;a)JY>46xaTnVSLK168R$v2}djph}h>}|qnd)et z<(sC>w!R#)i%M&?-{Z)?;jGzxq!3#kn3&R6%qL-~YBfx#v{cIveXlgZ8&(%z=gp6g zEKF>8rL5XqM58hOT;9ZRVHMfDy0Eq|XkjU5tq9DF9VoFWSzoP_Ss%-((krho3NzJY zr3M~A<>1-P5j)G+;y<<^W$mMwO5NOCNR2im!#5Hv#X|^qqX<&uG$<;b`AZu% zX>XZWPxz&%28i>Y5Fxv zr_>z#1kB73Vx=?9tP|KInGUf1?#@?>y zMpY(Kqlhjk>sd4v#R{c%)neqolZh4||NFVHIQietBr_u;WB7=%qyI;9vNvk1*uo{| zb3rTB5{}qM0smw9{r3~9bKgR04PF`GwpcpK3^F@i$7|zk1+uKNzPj8FaGf2@9-?8d zp-2qmHl;9yB@1#`!65;I{?n3w)fkh_{O1q-OU(b)tr*k-F=Iz*rC8T2h@0d zoXqo5VrwLB(*s;Sn=d5HXF58m!A=9x>t&qfn6;{kt#x(Cs|$tskTHagU^~juo<7f^ zEG$;_VWzY?TPXz^&{Q^CN^(wC|pTt1L0zG z2FqJrNo`fN7bY??udij3eVOUL%BzQ~HM$_jj$ zIR%9&Sy_wh@QWR8Mh_j$g|d+;Z4#2(u%9RnRU=Jy2pVB_huQJkXyv*cFK0P58WTtz zYhoQ5oB6ECCnu(J)s$v+WiJ7#hLtL_cBHQsCk;$A?HyfsY44#GhB{K$oXKt46q?VB zv9q~ly`|I0fp*s)ESadDWP{5J5=mk3Sbvk`vU2H&M(4$C%%;(PHoQ1oMJ`BwW|di< zYiqVF%qmWEw{BeY0T<(i9f-#OH#ETt?%-MY=I1-e}2)uz>jRDm@i&}PwYVWo;^ zZ7E;&RUnKF*U?7xxEU}iwCEXqp`>KAmLR4*K`^UV^D6+e3ywM$Gn2AtLZxv~%_Y4A zCl-gbJd&a9aV%IPKYPfAAgOpZ6SGmHgeaQ@%NHCSb9c)tqnsK-TP>s$$VN%T6i+O& zJ(yI5I6h}%&v$9DZEP$MgNu2HRat|}o&)RKD}Db(BP+O$2h5cl#Wx>k*gEU@n_QFm z8Su=E{2VT!^*ssiholoGmg&X~y3)Al3kvt`q;s(f)|~2^5V3LPmQFe%K{ugTC@dFSM*Pqg zWlSifrB#bPKrlzI+|Fsy!ifY6B9op@Uv2A~!$s$61yCD}5O%yIwTT=6qWdAf-^S^ukor*3PQ+E*}?2vH!!xe&yq|te23HHI0iBlSDL5lMs#k z_^FHg{zBhWI1eMr?mee4E1g|#*xavXPtT7!o9`T4)ZJxlKP+e(z{SnuI&*w9S6j@& zaIO2WGqWJq1yk#AWM)5vVwh_R;#UZ}_2s8KOZ;W5D@>)E#BAi&xUCfiEg|i}5Yjh$ zZg(ELbU=z}91i-bN`|>an1pptreEf8=%G*MIlgG1`d`<)0sK8jw2m?T>U?l+MWxri;q*U?l&*Cwpv^?`36=i829-I zYYX!MxJ$@f{Fo2y-R+N5^6oBzqCW?Tj$i%YFw8p1H1Cq!>OfFxBP#9A*?bsi_BvLr zM1#lN?Fin**(K-Pn}~_&tlbsR>>+l!sWQcrHZ>>GWyd2z z%s1j8RE*OW%s56>Pw-{?vQyHu`EU5~hdboX&P|`qNwP(OFWX-n{S6>9u(|ST^zkv? zoG!TiYINda8s_3eS1?RYllb~K$px5N#^(f~aM?l0#6zgffkRq)5@)uFX8n@r(MRU; z(N4SeHc~^yY_y$5F>xF1zhgsE>A9r&A!T%(q)!R#T*MbLX47R7h@H7PsiR0i4Q+LV zoq$Y4o$E4&5GnlGh@p8k3)oFHi~g9*sj^yQ#rE6w*pfp&-7N1K(a1Zyb+f66RC7nB zp~`B7je^^;J3?afq^l~OjpQ{yVqUf5}uq-}llBtF~x+?P3{+;4sY;d2h!luYpS zD-ja5VXTw;ovB=--+}03cutN=E2N$pIV%DVEKM;(Bm520{FQt^Uoa!deC5NzH>>Ir zbfDH)O%Bf;TQw_Rd#tyml8(8=BanUNuNueP>dV#Nfl zP0Y!z>Qr6a5Fn2BK&ZH!gR+3fyClRMJL$m7Z8>c_O~F^+aZp12jzrsL&FExjomm9f zZ^U$7&$5592H`-y58%T-bCehh7mb1d+7ENAPm^RBJ?29xv*~ZR9rEVuY=-acb8-v4 z{Mk7j&^kZBXXYwl>-2zB1shWqA8qh7 z_v~hSXulnzRjECCl+lsw5zpQlQ&Suyf%d${#4s1Tx@4l5ff_S2$Cg>9A9X5XK0?z4 zdhGkadTrX%XQbuPBKl2{I?o}H1NH}y*zGM@%xa2eF6s5<4ErZO-!TVX(Z!lcBszXH_@WmuY?n#Sjgj4WG@R}= zN;$UCvXP|^`Sntx-xiunuM(wfe?=})jGZjm-|ETJY`OHJUuYPe(6m^_nZdEg;<2A! zTEXu)cekA<*_f)gr&+p!Yxrn}e1l0Wg%E{N$QJw3KrmEWW`5v=Na?&%9p@U&w3E4} z4(g;w+KOM-^D6@i$4tf!nmNk+N*GzG<%0&Mf>O^NJXesIIS7dO>`(s-%+ZmL<+G8q zenAval6ej?liyG~(U@W@l+j!W8>?z=-px;Eb>NU|f83drlrVnm_jEkkQ{jx}W-Gru*{z%n&-(<}J*?<~JWY|8Q$)`n>T+2mf^tEsr&C z?Xuk7Q}T^JBKS|j{A&g^oYUwY1R^8sr^$LjkyCI^PF227<6cIeTV z`iKrLiG$0){ua~9V}oPR%gmd@Po`?6E*l-J#X{ICdi(9Ab^+)G#xHjru~k|gOB2k{ zh)>&VPX0trr@fk5-4*5O%iHOEKuS9g8$PD8lCKCFxix7E1=ZoEy2ORD)?GqLXA;bA zUu=5LiIXWlCaUNB%;e%+IgK<&xJ?`@sY|6dLYKx)6E^X#MhUSZWB5@UbF1CNJ9X+~=!(s~#&7??K)ZHl>Gr=};b|d~Dfz6EY4>t*r zIcxl95}bbO%F<@X!8707nRCSGY~dwn?v{x0n{vBG=6r`G854|F!z>7luG{q(moRD$ zcdHR}^Rk&v&F+Cr8GQOgI(ob^6qSgj;b^>xFW)anO%zTm%=5ymj7%w580z}Xo$G4T ztse~N!x_73Y~)$#uMP4qu+#->ogZCm7Z7%er;4$w$J~NMZ!s4hOj24_oBGH4!2RP9 zie>ax*jrp|M`F{pXS59e>-j`ixNbcgo4M^`HqU&3>NX#`N7Roc%(rFMN0%`69|9`U z35LD2QrUG4h-Xr2Zf@bUg51=DwU{Fl3tfG8 zY<%>y5RZk3mM&Tc=phtB8fL}NL+lwm`Y?=trIN{e|h zzE1z5MqM&CEpwQG2=I?vDn`5gEk{19PgZ%c6^}j1X!?&ExG+ureS?@=^kgdPz{0Z8 z4``w%N~*ibNJ^^89uBCz^wSe0JGPIo3(5b}-rH`)nOu3k`E_&^+3OswLTx2_ah1oG zNA@6rRE#B|1*po^G^0Y0k{AI=lTZ?F&02FAXKrt<1ts<>k&*}?*us)Wj z9TP6HfPD@4D&g3N4kZq_Gmu7pr>){SB-0AMhBS0`H2nG9-WvwMF~`Q7H`f-q#qZai zEo%sW8J|qxwgPx!9Lt$kXjJHu5I#2s8{c!3Ex*>khL17l4R!vNUSsR~AM?-c4tV%t zWz$&zR@R>^Jzn`deD`tqbZK+t$EBZuB7MhTW9`*C1*0L&3=m2 zoN4Z7u^Qj#BYY5g?fFBtCG_8B*<-2xe%tEwdiFwPPCExW+wuvriiSf(7>l9|=w0Xu zY-0bcc|C8+fvYAVlncx*`quPz;gE!#hZf}5XDs^mOylYgTA^3SJE(mlCgQ?)HH@I{ zuq7WDwmi}bdSsE*Kr!A+Tr<1^gfBp14c}v2y1{wr$bu%gQxY!xvO}Z;Npu`8_1vm( zh}`Log?kV2yuB?y>6GlSa0D)Te*~;*`aK&3(RQJ+W ze}2EehaxeRo1Bm;pV+(DJ$KkhxalOwk=c?MS-)Ica1psB5AWUOpEz0H-hFug z?jaw)z4!3f`h(AT%wiqi!hXn;oyFN)Av=b)Rj%bQ0~)a}(GHjSt!-IHyBN^Qca*&) zEWFDbHLs8f;fg!IB19rEc=Xk_3A#E~?0sHM4W%uX*#tG0oN+ERjU*52qp`rFreMp& zf~l4FYzkC2Zv2GDTqcW?h#m1NXcll@XYwGng84!qCY*2R^o7pQSxgD~7nGenGRVsG z4i`eZcWZGN!|4}di85@sN@<5f{GZ; zK+9}~;8vLjtsS#Xg`~XVbK$X+AopSqf%TP=Pimvk_Geq!9h&0srlfYH6?6C1q3Mbi z?0VqjNpd;OW|Q$Rt>;(LkC_THKX)jP-__-n7n`e3e&T3~j9vm6Y??TxXt@Eie=DQc z@qSEJiQ2;@FfxBKuEyEUd1@0{t&~w~O)7tAmvt4U6VqW;6ndppuc#~gGF29H6Z*R- zeWTnPYs{9!$Q(r}yYFLMe*L=mDip|m#=njI3_bMKO8xcE;kr=0TnF=^!ujP(P$2yx&W~ zZs6{Fep^hrP>NOFVpEH)&BR%n;SK926(bBBfvNVOwMu0U$G$TN>qd*jNOz6FV8i*XNqPnLMB(03GtB5#SGY% zCi;+;G~4LXdTb$zosYZ2uCrOtY|;WNl||87OrcK;=(I7xIkp!EEyTg(oszkY;8*b5*c-mud@}lN9|U(h9OnGQ-isnxR+a@U*>HZhU$zdO^xrc7L10NWK>1Zpi2 zRh;b}rw=?QGkSDy_(;<$873sLI09auj;12j-h&xF>AMG~OJ1*w>cUP6+0T9V=KDq(EnOoN)kA2MQo}tqn!L z2OTxHg;?ZDeZ3!-S+Fhmp!tH!xgX`3@`AXSe_o)S^5vGl+-kmT-5zfJSN`{a|Divk!q&s4_@DokANaFp z@_MnRb%B|WCexJmPC^$XF=rRM!d<;EA-B$?eUa##v*z9I;NFu@K9i1GFECr)bCCH$ zTRm8{mfb1i(1XD%|HB@pFwR!iFC-0CtQjf9xQ_g>y{%FNB>Tt;ABM46-^8%N%e1aZ zASw&wl7N<%afKCJS`y^H-*M+}CVL1iD%O%q{v3hidKwoMLN}!9fEAID8x@4KZjvzu zL7jg%qsEgNY7%cr1StZsHxzJj0LM1O-7m}`g_GlfkjLw*ekVl$wz8P=q2@FzR4tVd z3gzv|7`z*U`B3Bpbb;~fO<2eG`v>HbJ>qj_8%9BS?JWAA1B_8Mk@qsODK|iB%CwvCsW|YwbZ*IF2 zwe2^_^TDC;x|wshQU7sWz=G|g6^nx(ci;@fIY9R-8{P>%Xd#qjsDa~P2BnA`Px2Ew z50;zD5ki5W+{RP*d1kgJm=P%Eoo;r&m7=2hu?v!KtgI*i_h6_&!$`bAT@q&h1Y0jgivNYa0rvP%ai3gTz=bs{S_^Ps7NFXUN$*eIhIrH;72VhJfc6 ziO!DBLM91UN7SCurYSia4(mcdZ#jtIN-0|1MDf2YnG%ww5ZFADMu*2H;KjkNZzta@ zMykz{W!pj}LZ`eoa4ddlw^G}_N}Klk-G7aD`DgpNLRwoX@drgmxdw*kNRc|ohW09?25~C>3kZ-GAh4s z1oYHA~ zXhOR+djENJ{CRW&d|CQ~ZOc#=-sGtt(!rJ*2Y4qT%gP@P7sSP*ruiKDmRogar^A

MOG<$HWk`?P64=RKyt2Nf$5mdfY(03cmrtUqA3pI)=M?%YY4&Mj z_34YH%~$Iy@fgTf^D>AV>8*WJIM@=#{S4Z9^$UaF0?`(%z1Z|BZ8RUZBnUHB3BUTsu3@!xPPQFa=)2Sb zsGnz|0|pAOZO4=m=#k^z_SctsI;b8CCLsWQjDI))FY=s8OjSy23Vb3|f3Ss)hS#ig zF8GW8Zpnj&8}JLm8NHJVha6xs?q!x=AkOh58EqfJcf21#cL5|)^5g-6B01}}9t0bq z7SX_MKiHD5-1gR@9FF*wYA)XF;zt&Lg`j_d`k-K)^xb zcib}T@#VqrU~lmqPJNxYWhfN27#RpelD4I=N2CQ z0_{ZCgCfC(C;Z7F5_71l=~m3{o6ZVXX(}0R!ge|1dWF}EM4lT%hH_)@^W@F392>u} z0y3R^tooIn6XT*SN?JQB+G|_(eqpwj-_8ex=MYm#&IybF!8S-3=?U0+$`3UlG`i5^ ze3uK}ph6BZ0R~oow7CPeX82-la|Nd2on;R3nUB9;e_6fC1ajj4gl1W+D7@bQ=3=rd zN>wrhI*|t5`yC^;8ddiv(0HeOBHyIb6G&aLIJgKtqpSJ?IBW=l+2zg0lR@IIipiEg z(Nieoiv`qavL*_C7=@4G!2BuF4a1Ubh|BW1M&Y4#)sMkW*Q~wKSgnudUukBls1P`8 zw{vaiYO=l1Hs+`}WpEm5SEFcwrsMGkvGb*09f%f2x;EzQaa!Hhu|l4hl}}O{mPW5# zVYu@SJHnt7j`XHi_lq-xT7>9~?o(#$eJ~(_H^%qZXSVIGqSwIX&(xz^tEVhK7fURr#b?{c7?kki9vO8bY5`rb zlFy@5gI9mUzJD0r1$ioGe|!^iwhGbv&)M)Pjj~R)sWX%sG?aZH)c|l_$`ni5ipIsw z&1&-N8zo0=YdzK7>^I*nvUGDz_r{+Pk{)EPpPPHxaaD(QYjt@^)4b%Qn|q&bM&NfU z@s$k2hr-H1cNa4>sS!>?+!$J43Yn8RO7UOnuLn@ppF&V1p=LMKw zdIFRos=?g@y#m#)i@%nA(zVUB9d>Cc;~-BJ?yJI1xruF?nFVULQSYC!GSoPa(wa+l z!hR6`N;=SZFAp%w`}zW5{B zmc|pq$9Hb!I;0C@H%3++$=6D0a&TVOs1~&YMTaMc*n;2L8Et!aY`M}bTmVdX=2_W1 zyA>%-Pvt_bHm(2>MVXz9><0%^9C{jyhGqV3!1Q7MGk}YCr`^JyqyY1G0LH zOB~XBYB^lhg%`6?;LDXe5B}Ebxjl(U4zBCPwBp=PblR$_Hs~z>6JE+ zk8@NNJb9o5w|}tim8%4d6*5$}k`|WRCJ0J+E=7pHjUaTo+FIg!UfImNw&GB|Jc?HM zYq;UA=foq-AEKyR33sSao9qb+>ck$Sf-owbnQ7u3Y~zq6QZNFjw@l2<%OW3fnB1NN zn8>c&w^QZaCtoMBpfi$F;*w5x+M+bFN!*|F*@L*G3}jVu6V9pGlzL&E8m!KOs3Hz` ziH^sF48O74KaD4$gc$@|iZc9|H_MYMR-3?}SWi1V!va?xx=3tdU38X1;;_S-vt)Me zGPo{W-4t>MGDWf9!*wcCy}TtIjX(Ulp3dKW+&_A)^Z!~WZ{b!EAChY2*%14M`vUzI z*LYI%lU8M*pi=OgFW4CtGOQQUA@bd?m$1yt6kQm)RXxjbxPMxT(AD5pqqh*y>q}F4 zAa|Ap=A*=lsx62rH{Ke+$2*cu$|Tt~D_`H>CV#7*K^~*>lQOA(7VOI94|AYkZ`V!c zAkoyqoBeqESBlSY&B0C7o)29doE=X()|$O=D1ETli_xqPzR(wJWsARvZV&%iWzXI- zte6&~6f>1&fo`6K+IkSNE>(yUbof1%5_$Otf;BRID0wKJW?@l~hSx%F8@3Zi_6LBQ=_~y>fj~L27elvXWg8~AJW)P<3i_0Y@NH)BR z3R5~+91wS_2_C*9&Lvz^*%-xwDR$1ZMaALKVp3%#dXN%{=Vf<&))vU!Mk0Y(5RjsG z-VEIhGH`MZl?(J3V@VX6X(vsYKR>Tv%UrX9qB*$}zpkhfP@iH)bLx9m;6I9v|IFdga*+S_^` zhC9y<-{ti>ohzRajzhQ2o{Jt293AftLd6g@u4vKYx^8n4-C+xh0Y*APQ2zMjfje*z z^@Fn4{Mtnf+dbTKY90V_gXldfrkferE-WSKq+^KcZiK~;r&xHz!02YaTpz#ed>R`_ z@%B%aH)pvgt`_YPH zQ>CKIG?(kc7A{BcCKG}|g9~0%$c9M1h@FL1y+=$Q@ehNNu$7Bh%zz{{j(0fZdk4;* zI`3FKij@xU0~ejjqJIJ7}Re-2VDEckkXB@PK*hQqjF|#4zD#!g=l#tIDjj{mms`?fK|T0%5A9$j$Ton`uUQ|>DdZUib4$HD1=9D z^@;02D{>KfYIdrq0y$B&eK(RpJ1Ccv*4FEbNoW0z4q)fwBW%Ez3R0U2kKkVKwJdqB znWv>{F^&=(5|X2rxJAi;(u?^TmI<5v%Cy8?H_)Z++K@rg@MDU=XvwFs*W~TGP?If! zXgi8lrzr2E_aOW;oNX()KxZ^4jvF(n{~1M8P+T(HQsfHbLEmRjplbLf_W`7Ky9y*c z_-Y;F2kX-6r|<&l9jCyCWgxliVv1^|3q+@u7*iSp3Xyf6t|7BH|zs^7b_d~Cr zIPJmy1jWw~C-&D%>+4HDy~h7-tx0^<70aGEzf|7QuYXus*Gpwh)mCHJVB;B8f_2bE z5KR-^csl5PR-(R{Pk!c-Z&~qNY&QcjkL)5VM zEu}2|&4P&DC4$R>)I`D~$M+!u%PWZqU}3QX=IDS8{b5$>HKYSOut!fNG@{a0f;utY z0PixrBp5m^e)vAeIkiEpe99}10M-YM?=m*X{3hrZ8}KtMyIAGkH@&_{32*JO8wrU& zqo`$a^i0Ynnqy>chj<9xb$D8fXIfhP+|<$)@FqQI1^fUI>t~@Zt)cTsvV7b3) za6jK+cX24L+@;QCY)nmZr~8msHddhM^Q5s8Nw0Kj?)>*6MYVwOvg@EVN3l3pHn2Ec zF;BhHqM4F(sP6p-H>_mzcrpgThOhe2}i})2|A!jLy<`$#MhE~08cEVen ztklW5BnxDTQ0K?GD76x4kXc7~Tjzg}hpc!K4k3;GD4~W!3}1)w5^n~`mvm(BuwxBm z+?LwaNp18?0f;1Bs;?LXdrFtqh8I=d!%)U=mm0?JMKjdxwe$(#@{gKwWs{1;#3!qD zLOY!&oxY9sS{=1@d4mo>xR&QhFXX`kVk$ihY=F$o{hz~yh#tK)n0@CPCQ;iFXBbq* zd5B3Tl~iG6wuU1X^UWE4(`M7j1&CAn)7J~HZh`n-Z*0DL#J-A*?G0eo>|57ilQi^A z(~D_CAj%!-Q`PVU|tMRl-_u<9a;S2~l zZO9)o`|*6b{x8|a!I-Cp^maw`;-9;u_-%h{M+ZvnDcp*bM@Bw}lHtQYx+ zvP;5VB(^j9K?|-7nUSS7(4*jF{}pz()g`a;ta||a;deoN4y$##<ZEv%~EY}Mc zHV1w2uWrjoXc1Q+PhJ=jPLy7AgjOiWtKib91F z)M+&qSWz|8oE|cj??896J)xQ;P12a;vex)zh{Q6K22LsZyzM~-N+{bfm9h5oMI1Rj z;qe)HVzPE1S_fJZF7d31OruVhgQ8*R;&903za{U;a77FsI(^*b`mnhlbVS|NtipJwOvt23%tei7PFA9RtaMRzj?CZ7Vi3>yG>FQlL85&mP&Jlqzn}6~Zwu0w4^(+q5NMF}k$vv6ZNEEUf4|0iQ6^$hDzG3&4z8x+L))N-LGV_(gTZil=GL!a&zpwC%h%-Xy@V(6S%( z^#<7ojV3g)R03!eplN?`UEh=#5zAsboQKL;ulg&+S890bCsaUnm|9dd#$7waqxJ3X z_TJXr(eJkZktcBUWZuv3_wIfpYueAdd*9r0zmc9OHNc4q#hry1n>fGEqq<%yfPy~c zbbxjQfOvxIou)WMm2Hgx%%nCFOuZ%UFNV<9eVY^0>5>ZhEzx~)+Jqa?64-vne9HFf zUfn#KTV&H4M{Rs*X{i6L0hQv&{pQl-k_DlcFBOeYq$hB@X$59Lg;~?+Ssr{OLi7@3 z=%|(7H*9o7m>_`{t5CH1Y?)-A&_Se)l^U?}H4Pk2_a@VP#$$GP*)Tnxjxsmemxd%G za=D|8`rW2*5UyQ>bX2togLL=ch{P+V?MDnSa%?bj3PUkDfIaEnX$_C*f%a)nvEf*v zY<6JnL7gbRK5&O1L+LZ+Ef=}5J;lGA$UvcAXniGgrCLELlrU<+IYq3IVa2Y**sg4n zO^$GNi%6-DxGj0xC>)YrZn+k^9iQYAbz+Sj&G4ce31xc&9>9ssU0EG4ayxLrgfcS} z7}48jGEEsU8#kxFhvj;Ub05qC=}|N+u9FT_jl}DkNxeyNe7I;Z0P&MdR{z8BqEY(>{j%j8s4-n zxN#(0yR?`cfl9P9X)B{|h_q|nn$90elYng?%KLcj+1k4AaTh&0Q(!_c@7wUwD$0)L z8WJzS{UUBsJZ?nRi;DeG4l4b)1|mqIlb0_a5B0iJ(&{L*93s85IR1r~PwtZeN0oZt zRl6H&DN2uw9=L{Mg>dK*s@$a5n6_ELnXkA8T*Dn*+Fpr_Y`hKCUE_xc8dRs1cMtij zjond&E-D^29YrK5@T9z+UsU9Dl{RS@%nuZMnFHp)>Q#5@wmfTbt~JxzFid+E8oNQ= z`A_8%{2|tlDTr^J3!D&1rV!LGg{#&ZVXTxPKnMdS)V=#9{u;_EAp+WcG?9W3!ok(I zGGTs>p20^2WXt^x=TJ~@yp0kLa>R$=I5M!aoQNVTY`e5$@*CTFxW1-@cA5HZaqtnp zjCWY>aA1_>PJC?H5c220K070BJKe0x>FA`XPk)&)%&2;c0>YM;bbKIDC1_^y`{wEr zMZ2^FEK7LuLDPGs-$S3{?Ld0tZL9f^scfqdyd}wVyAg)l-Dl2_I3Dw!S2JRkMZ_D< zVG1P-eN8h(Gpl-C2sAI}@|fh%??Sf0&$?iJ<*#P^w}w-{JemAA)Ka6>z0nWh)9_#@ z4}#(S#k=3$h`i#X=hJuld!t8W7awi%SPJLPVbFuZ^F z-tR_t|KsTHw?x=Kxcj?b-MxSJE`XzTxElEZTnYD#2&7TT?lZxeXsMU8sj880Ji{(~ zhOKk7Nmd)Z0(~^D--zcp`p?Jv@1%k|y77GV`ARp%dy98(JO(Qx#Edo-I)^0x>GY1( zw7<8~hb#Ng`FT1xU4Hbcqm@iL^I-T}ydZA8JRoB1VDtnQgxh;`?4Q$z_kWK|f=V7P z91Z{B;qczA-`^Mvd;h0QPp7EZttCI)ITv9c?mzm|&UrviUZ{{RvD+M<@HZ+Kz&d<~ zem)=*=w$~)TW6n?>1;S$SzcY1CLiV$&u08qmG9Z&9$(vXdv^cgahxqiT{|N_QP&!1 z_hyOO11(R0Cd_gN^Xo}8<}u5c|;)Y$oc61pmVYG|2Xm+d03bU)Zn?SRMT>U9pO&$BdUkWFXP*JHepU(E^|*uz&-_{2wAp-ZtIU)o5A5k?+%13O6}LUOx%iK?$x&W^ z`jT(2SDwB6o`0S^SJTBkfaf}gkOma7Q*GsrhA0g!OH>qsSR&zh|9aBOX)ibY9gF!AUp|hpbg~E z2?~As1|i)m&vh7AU?pBX-o*QW_VJt%0Lvs!+y_!V_k54}LAXTqxa$HtX9&ZyH(H62 zo|Vu(FN{XGUVh-qTYipkEB0+mZ_8-PW8((t`uH(>_vtfaG|YPF3$9u{JvGdHuU}{^HUirEqSvzW?_? zmjgX<-W(8y?mck~e=9`9Krh3iZs#e^2?(bOflzX)09C?Bqd$c>};v(O@ z{lsCwpAhnj238kI5#4G%G)BTelI2jKX$m(kYkTR3r>YZlS=773kfC-!VZi!bHHg*a z&F?>bzq0!D`^_JB&bL-x@^e{v60ScqsLICoP?O>6#`C4k$KQiJG~x%twLdZX_;Y1x zc^!zA_4T#&`f)Nb^*K5>@+l6owb+UZem!twN!81b!a<~aH(+ey@PGY}|L^AR|N0;Q zGdhj4A}1lpfg1^~U%-N#-kbv4J2r~%|ETgEZ*$RN@g*oIBQ*Jb!6~SHWIftg5Qw%xHe|x{o!8)L6hg7%Z$k#Vg@uyS1bQ zG~-ynohu(TG2ZXQu`(elK^fHDjaReL#nWS0R#lhlt1JcUvi)8`j!5StHUNwW-qQHWLeCc#v1Dw!8<4tey zjR8j5uj$|#;4>XOTzd8c>-L9%((L<89f7<@6UjuuD>?DB*|VkREL{a06Xb{{1&&JV z(l3i->TytL#&=s;eCS}1{|=QzNL|nTCWq9)xfiJaM)!%g8xRvk59-HssG&;p$x!iW4xcXN zOyS21shMI55wZ&A)wGOjzjL6Wn78JD+n<0BgQeZw@v)i4K5P7#rN8q+7YIwH+EYjn znQ5uBNG17@s6E^8^+#rn*1kPx%0sVn5ugfa^~RF3acR$3=G7z8BXQSW=T-8U{f4=@ zZ*on-7&C}~HoM7sdkj(uX;Mv5__c^Z*a?kz%wR4Aqt)S}?Sk^%w=bAHdOhRQ_xgv7 zmC=wdXG#|wJqa1;5Y?aS`Ykyf*vTPAN;N%IFt1xuei;9uRmA}hTyjM@5x&RoPhea? zELVYjjBX-5OG-2`6i3l=;Dj34FZFq@r6fdZ=^}V4jy1Fth}??T8A(6YW@?KrF6_*TM0SlFL#3cIGz)bM!5Zc0z`Z#(XPn<11H zLIgG6nM+yLNNcDyEnwR0nWb>~(()s%&E8nQScl@QtGbt5$`<63dr6xE{&z>02(2W4 zzJB%mK0+k>^oe|iLd82q%k0^EbuO;sj}J2GPOBfJYWpx{Q8>1gcl z@WOIV*AWV_oYdm6)u$W>0`{iUM>-d)>*{)9X`1*dgR4FN{i}A3vK@>b6yu=6S!|jy z<^7s=bmNULOH-IvH1b%J5%bu4!_SEDRaaRa93tWOO7IlQgbOgVZB-QIoB>)XtCMZy zrIIpT3#0@B@5V8q83=m{O1&@xL(3X$<%Ou0pL}#0d4hOOHmxfU%?9?=H(LG}n2Kdg zr%6$p8@=Bchnr(Xi0{saN5XbxlH@0*gQdrkNd_{Ju|I>g=g*g3ENiEfQ%_Wr%;S&2 z_`_A)n0#OwscrHxkjO{LaYKv<)9Hi&ArZ-$N*{yrq4>A}`Iy7=-FLs{RcT{fa_iV) zd1J71#5h7aL_FK|*p0nh~S9D+)I<-zS1vsH@sLPqpahGCI(0$`pJB1u^53(0-+1NZ% z+$f=2k*hp#y*rp}Y*#l_TG4h&+B&;9>;=ELfO&>91E(L7C%RC@ezF3X7|Q@IY2v4m|yI}g1~Dco&QeFV_5XKVg}J@2peV8Rsw$Yu>0*s ziz3;w+?olv?)<;d(ETs0WDxSDb@RljED4Tj{>t~@r3`s?*&el!?8jHOO^s``9;jdE zEWFV;bXN^~b%`VPHDf6it}~RE8_zkn*MnSnc1_r|A6M328Vg^iVG_0@wjod9*Q*y< zuD#}~UCrNo`&BiS27udqz3qDSXK5T3c6K%UHPM)%a6q~1*n-n^@XYt9M1fX=&%=v6#?cFM@4rMUA|EYa5Tb z;T?FG>`)WBTYn$#xgp*IPNl`pJ03IAkaU0H19=)Pcw(_ywlBjL<)>2uWe{24q7^^W)K0^Zw$DvFghWe^?L@LBg$N60E>pftX2&P=DyJF< z%QP|11(aFGn74f$gO^O<=H-)}^ZNsGGd62x^}(epb`cbRDFt0~6fwanUeD)38etE` z3IPQvSv|G%ytL)t(%Q4;CL!m7?0OrJ~&=N?EXZ)_A} zq&iuqle#n6yw_{z=!2!fCQpG+;ck461CARZJ|RawBBm)Vx`heW?k zCx(ZlZ~f}dXp47uH<1KUl}jO2;ZXc(5xu4%UI#U|FES?|KMS1;82QEFo$)Vxxw9j| z3$dfL@tP>@VX8UoMe8+FeD(&NC5c~D zpq#tvE9yBckUo0q)5~D00<{7pK8`07!x3Y0EPq#{O``Hyo3>9P+R*S%xo3QpmNF+% z?)A*qb|Vr$UI8I15&d2PQF)i9>sD?Lr-%wA?5m~1vN_;D?(ui%Na~Nif@ENmvTEqP z7;Yi)2h$I147K*|l>f)2NGsL*HV7kvs;1>+vH7&|oLkg>fGqiv+QFqopS77gVQml; zH_-yc!reRfIF9672W5Z~)EN<sfoC}iM%xg9L(XPn?Ig9=OH}`H)`GczA`e|$j z#?eFYW+v(b?J@L5SH3gVXJ}$pmxO<=7X*| z^{g{g1)Sy1y+BC|sxz17R10&mV?5nV89RQb1M<;N!$*?aPjU@t8_I0ep((S9GI)a? zOrcxJY?N*BOIj>*zd>F+WZP4N(l!&9$a$H(tL}}7n=Cn=L`wv{^d5cM4@%ihCqa3Q zS~V_(yAuuxfyv$C=~#g~EHl(fD;w5xe6`{@kb}=X`W9ouo4_5Imr(F1;5ay`!|EjJ z!J7;!p%uRt**+`zJIiunKT;0}y45b`8U}No;<$Y_f?I6{SlIsG+QowBu?aPhy&`A&|H&&@%ClmdS>eZwMa;A#2`lL;qHUFUv@Pt)D6 zBOqM{?-|R93uD}L`u2?1ij0c0*{&R8Y6qhAgEwQC!Q=RdvsYqmpc=#d9fBEk`}D0h zvsx#)4xqeD!n~q7J!wu&i9Ke-qYP4(b-7%;W(397C2zFT{|1PzSbvaklIR&%NBMn1RR)*@cLoRBa+rD?~B;; zyz!I4!s^s`@dLr{%%}Tnn9s)WG1;GViXl~@(JjxCSoHclrEx}6UBAsx8^xyQzi3FHhpkc8$hI&^ac7hA8Ivh1~B%y$b!&_V@!<|yR zw;PWa2ByN&G|Z#2aBJV|u9e3IjK5*q1pVs8IuQm-kDjgQSHY7!%ct9s7du5?-Xy`5 zIt=)1X}sRn}UTaE)q?_C!6B{uX~L zEd=KbC$BT)6IBgyfY3hi&c#sB18Drmk^wKKY*S4Uslm!8GFwH1`9!des%7LDg}NGl z^qR29pTv&*Rh5Q2O2sMkSC4eZl;h<^Ki6xQMT{YS)o5mGU2iynD63LrC76o~NU;C8 zC=O&j&=XmsMn0-mwjUMi$ zcIm!;D|N>c+O5V?ee4|08K4mr8u;z3{uwFKY|LQo#pVWe2Tty(KZ+l9zg{|Ao4_pLXvh^qY=Ahf3 zF#>N74c2}cJfY(2RkCi<$?Nf0(J#_aOA{xZ(x4ylk<3kclT^XC>^2;>q)X~q){Scg z4eU1}4Tsf|=yHl8VWbcQX+Y)w$M$zRKckWd?1?IbU5GCH$-pi_fri^n=xGpDlwvGq#d{TT~il;Eg;ooU+f0u4P=^B;L zzzMVtm6llMc>cYbA}h&c>3(Z#$7 zKasvcW>OSnj(j{%TD2Q2ZP}dzETuQ)MQ#F*vMWb&o^yvz=ZrZ7UZqGg{3)ef56sFs z8H;#ABlH)=#xle!Nm+N;3w2SnZ^c}rN4UK+fm|5}+D&uTumMs_l)+3jDR(2SJSRx3 zz~g14uU8w7XyHz$5h~Ul9>#2i4=2!6U&Srk5e~jp!F8oF4@HAdC)6y+3R+P~aY5wB zE6h`mD8NA0q3px3rQim`B9L0l9Ey)%^vJmNOL$zu4RQAPZpo`?vy6(9-y;|2^iWc3 zDCB}nNa-tLWzjmhkxsGc>V+keYF&%9D+SlD@d&DB$K(it(=A}>{93fd8PAiYsgBIs zRX{Usb*NJIAJN&s|FzHR+4!jjT3rKjm8zE-H2B1`DE^5{s4~5HXGgLy@Ia9^shmaB zR8MumC(;k{Z?#h|2uY{SDHzf_5y6@NEbhL2$4y%7{p7fLJ%v`49hxTa!&j8lAP6Ds z=BdbfEOB8WQH^_v^NA3R!#M#p(9kmCV|Z{n?P`W8*eb^AIvfUWU$i!8j^`m_!uoIC zk9@;`6C~|F=n|um)f5`N{28&AsWTz2a~xi*@$yCL^sXF1>a&qBV1k{T9PIt53w5$9 zTd6(`#-H}i4v+OGO->HA(B!}6fFchq)74=0`O;G@v|?uR&xo2CuDyD(`Erd_6G|*) zuOmb!C8mwXUe}FHO!Bnxx-g&BlAvLiH72Gz?C82XQc`H}H&AU%j=3{hwM1#gEO9H+ z((T6q*JAo1mxDSKc`t(ldl%wugtH}sb-jT;0tZ@y_YX!*OxQvkhzeod;i8ktNl60R5%oiHVyKMK)56;{W`U}?oJgjXvk23#y@D{yqd z8>{6d2MuTChaW(~gWfl^b;P<@S(3nQ8TJ-C zvbw7M6RPU)pftGH%GChh09}uw)*g;E+cXwrEln4Y;42ix<71;!gSZL|&u#AS?sNA9 zl^&o|TPcFZTQYN5yg5RzvL@o?ku3+WO;a^4GKE;>W{^sf#qO1!Agypgbv$SXV>bUf zl%<6t`=#frOF@!=Qlke_P7s^zxzqtbj+v0Lka5~S|LZ^h_qJxehLxUZDQfi+D-kxq ze$!3Dg0>0@e92m2-El%}AF)UTVZ5eDSfg2f$fpLPmDCYxr3NY^>{0mvCrozlJCkVv897Ec9_F z6AbeOW{jtg)p1&6gHhar&?Z+n3n8kgNf%yoUI@{El~S8+1eq(v=T!%k_*jZ{l2O*+ z;hkMW73=pxLW2YAJ~u%UohX8pRLCZUVP!t#G)#_k#sWQqXowPI!XMMH6_yZG^QorL z%Ut#`GMTB}DS(`V;47M1(^^*NQd!8Ev33BdpueoVHktfpV(Os6wXnLvgzLma+4LiK zOfX^Q8&f+V*N23)o>P&t(iMTz||J!fI+X3z2W$;0GcVfu+7oz zj$c}2aA2EYC|X5p4?Fo9gbh4=)(#ov-P(<~#bm6=qzd;0gDmPQA~187EHSUV{Id>J zk&DY=aM>IMLG8x?ZJ0_IUUC(TeKF0#<*B>S&V{YJ05QJ}G!N$K>s*p`^8)vWG(JK` zm-Az!gM*=(SAMaZz(BcFN#=U-1v7mW9RMWMx@AsX@k8&acgj+r*_S6bP{}4xU?SZO zuK^LOA`+5ZKy{!H!*Qtv^ExfzX93pKFkrVJVCFc*8rrtnd20L{cXW-R&IM_Rt5dgd zKkKP3;jfm7>qcTiW3JWDq$L!&HR*v{=YO#=~X` z=Fm7QDk!5aH=;0B3K9_xuIF1%hD3{=`rKf*UDlRTHCR8E$jJ?ziGPzB<{b2B%E^#lyari967>O9+?XAN4s$3*UO}M%HvqoouCnIV0+qYi$<$+0P>VY zhkfWy1}P@P^qqHGg(=Aq7weSARqobc=Lm|a3B}n+CZ{xqi5Glht{X_66(R~f7E;(K zbe^FCZ0}WalWDQ*G`B@Zn`)iX;GvodENj@*DFzYnc6l z{xJ_Yoq9GG7afMrO1OJxl&NHqpv&6 z6)6Q>Za)fbg5W%aP${;YU=hU)`Kr$rM-wozkLW-CYta+zgpZNNg!U6&ZIs~)>Fikj37}Rvc|t*KZgC#O(FtgtAAYpyN)G3U1WE_uo*JJbRHLZ65VEAyTO2O2 z9eS!tosD_0R{vhwN@06)a}(dpw20KN`JEkVek*uQ3i*^7mawGZ)pMK~L4U~LhL^hB zk9nGimc?kqVPjqH-E9S*+XW_0nC1q|eZWnQ^t)<>N4faXR5}cXGJ};m*#i-H&>?4~ zqp=*;ZXDgr*5`VOVQpZ`D&N%Ro;r_BpixssXNIZlil|xxN)lb0Fl13Qdaws|Fc(W(^$xUve(5zNf`h0pQ z5iEI>)AZuAC0jK#&pdN{y@+ zsN)7|o8gw#iwXcwu%DwHp2!ge{T5W=;}@?E>c|$=q#c8N7V7S3FMMz&M@LBHLX?5W zpo5%h{UrViMP@KUO1=crCD;u&<`bVmtFf!0n#a48`33Sq$Ah((@&nw^7{Yup2(dc% z_5V3LJfdji|NBF7V0V&ZDN`<0LKAC?RHTh9rUl#H*J{E%5+3fecTfp+>)HC^tEb8X zc6h(K`9=$>^kA?S!dYn7ibkA_muH$h{q5oNHxK0O4L9S|I!v+33pe*}1ANQSnd%Co z1`ph6EHSi$12JQRHEkhS;ne-(ai~b3c?sPfrPE?FZ7Uux;NoD zkWCrkG;RfPwuN8T);HB?{8N&~bxGp7*~!CTBoTxeI6~^$ zdL?Ib!Q~O!0pukM-vz2m`tbPDxDzz2J0kRI}opWvcRU;AqVzw&I0o$MolJ{8Q*#UfE#(1Tm z$_eG3WSl`dfoSzxj#}+gOrnAaqfvQxz~+^jz6giTD->&B8R259vq@g1b6hijaa)#I9S0*LflJ)f@&$ZzFls_) z8q5g=7e@<>w8Lhh%qe#Lloq>b{2w{G%+VQ45aD4VthU@|ky4LN%>a(p);6DPtUdZK=r|w>KEIq#ZAffK@%rhcz}i!+cS*4j zAkK&Vrm*8*l;$bSZ+931YxI zc0z3=B$p1*f>!!XLLuIaV@a!!(_7M{k#2{P*vOqy#6n+;DBf?0BZROjjz|$B8vtWC zDKMe+QmbibbL`+3U>boIyE=!yK!g^_oIV%PT<^+LMM?4l!JG#lfQ@8;#ky5w9$qAM zAPyH~XHW1o5pzDB0djt;1*J)oFIG1b`OZ zQ-v*9uZz1z562+fa`h}m%aViB_nV)R*4+H0%;29E`H(UKd`=J`!S#X+_&XUpHKL$x#B+3o!&KPshbbipF~AIs)o;I_~cOuW_|K{V6 zS&ROiMxoT)x*84;jdj{N(7Vm%5nCfc+?k#Ikan>O;v4MDCc44Cp}$8}JJ}aIrn4VT ziafH09yOE-kvu;L^v=;4Rs_(FgK$Bz;<|isVB;cdNWP+FQWvWJonw&hz|K@(Gv;Io za5Rl*o2$pWpE+u}C*UH_8}`%)T?#+LWbvzu4NNgn0K%EMXquZS)5R5tBplM{yq}au z(5{|-&LDaY4xe?9Bv{d!a9;RWI>iSD(c)^G3a)75Ow^hyFuyK@e{v%0SR&Ml=HiJZ zQCW4kM0yfD%0oyekC7D=GQ}%+W2g?kSt9}#PBi@Mw%-v92~hrEdg;n&~aJ)FFi zB3(j%G*@0%)UjD2)rL$iMxVVl?`FN*!+ZCC`|xake2NQn(*y4uu->&*p7LumC`LY) z+rvL^EN^xbDIq2SCO}4JH}3|S&c6_ z=b|?hqr`Q4Lv)hn;)Lp@oxH?5)<3tFtqNcoSNY}gxoZ!95%dw{Z{fkMb6t;_eW3q9Y(4P?Yc4!%=(wN2;iUsY~A|kTa0=j2)RttpzRt}sp z5d!$ikK7-E{c(>A#O;6RQDM^3PL|c^?n?2%D9sn&kQvA#8%j$h+EY~0>}#UJIDQJ# z#?>U>O1R?UOg?UC^@{W5toE-I=VMMiMHZT_sJ!z0vD}=XtX)8J#yV9PW7|x^Cv_Us zQOl4mxHMi-(0;OxWj)}3ET|L8%-dEX>z52M&ro`Vp}(x23bhxR{)jL@&y_beEYr!N zFkWWkiog9h*J8W=``Hcv%|nXkxrUjEUWb8D&d-!-YnJ`YjN|H&RRX1@7m2?o3YM- zHbEne(_-#Sw3er&M8RN(?kSWKHgUtn1BV?DmPEW=n_MZ)Un#^2tMX7`+D2Kh4HslP-6&EnEwFIUnHy-PMv_#V?3Dw-^u-P*S{y*cR6$~b1l7{a<5TT4!nj;lag#J> zb7%;oPSg!asx|X%?lk-3tz~2t+A>AR6gyH=CDyds7UBjMa##AJkMW-7BL{}?j@Z!H z{iYHZDY!$k;l+l61{V0is)Ms|%Sj>Qy3Lft z6lQS7M0{{zY0&r%RzYk+k8n>e7KehFfyc1rk~ZG+wh(7a4p+Nt6`#nwQ;iBTGNp2i z(9kj?|8eY8f&9s=OP<4esTSf9(-`p~gM_-k@XDQPLtE9r8|bvr5G~ie4)OEH!1(VsKQO^od4% zWmA8wpvzV+s=?;V=W4R|9@qdMh4Cq1UT)u|FM0vE^J?Ogz!AcsTHyxs-`-l{AB;CT zN}wKK;ED3c<*1mLw(8Pv&jFvj(=${Y%n@8YPT^))Uu`~NHAcUk1HV5d(ZInu1oV;$ zQ%^lo#B>oFv=jx`m2nd~JOEP*-^npqYE)hAlfEmC5iUyouGhWsL^L1#QL|r!N+Iaa z@W)SV=T+d8ebUV8vJNt(M9*s^qXSq`)=x6vruGh<&jJ5~Rq;;NNP;FBaU5ptkQ#~} zNDHk~86&;9H|1W2RxWZtlw&HGrPbwsTHiUB{!*Ui?)M_pz7mjf3kn2x!lCk95%F&p zQsH{X@z9@0XZm!cbfOmzgelcLj#Ih|{;%DqaP#r0KUGV``Jzuj)ARwOb-H6<4tFG# zF1h;lhL5~*uu)LtP4T*DQ%ZW+0lDhrrQq*ftZ#WEL_OPwK?Lk<-(fmaf76GEBP>dK z;o`V4g^rBJ$KpZ4O@R!0sqpW?-T6saFRLcL(o3+i34Vi-jg%DAU|_TgF1Vj3r@Iaex7H29&NO3+cGA&&`T)eC z6tTAlF?IjRlFR)`JC(VllhFHZ3?Hl0&bQ*+^-Oqi0&e{Wb&AXPGs%g3FyCojC&j@& z8J8i_l$&!m(33pA2^$+fuB|V>Y(5oX{`FG7OqM&UY~5Df{K2b?iTwtzO8()Xf;E5U z{;>jV#GqUN!NQJKFAfTcsM`D{MI$j9nLw~hi?h{9OvFK**Rc3RO>Vq%m@l1#%0#cr z&l`qK$l4MvC1YhAwkFWwE_Ps;ULWa_d8q$2xYX|5`$%WSw9FuD&>xQQUe$1d{uL73 zmUQn97xjcZsGF+Q9lhF3*v(#f$#873J)LY~vbBE_y6}jT4J~b5Q1wYLU73zdV=c^H zZvt&Fw!@>Oc~pl`eLNs~Bf1FNiv?q7J@78IO>{l7ai|?;#TD}wkhV>-l0dcf=EMjD zqpGu@F(@g!raUjj<||%=H&ZEq1<{IC2b4rcQ12r0n>$uo!Kt+g#XaS?3xu(t2CH%ig|k?H~AP9mP)Xh-ZPdE)3* z>Q5HOC$I-@vE{O}+Jl_&^EW^Cg~n&9)IHKL62U#_{$lTHve*VdpYeKlg33xewY3I% ziodtF1!hjWi(rLa6c|LD+s{#t@{pd;2!Wp{?czJ25JelB%9-V55#Um>kdACN+>Bc3 zUF5Jrv&|q6NtoGyA%$!160j-XoAw#>9 zauH5BuMY2>6;>>spHediy!q>wra9dMx3YpToJ3Ne>nnyXNrB=%8l{B* zq{|Y-O&*mwyHP#g6z9c*Gm=~s$t(h2esx-t_;RCq>0Mgs#`0y&!D%{yk_TB#X2DdA z(aNI*XUvzw=v^o$4!azL;p*uUR{RQ>qc4Kk4@?$&Z8K;3N1=ldTFU`sN180mJ!Oj+ zDmxipsNLasR7k=$LNvZp@a{S}`K+zuEu7P`ZQ_i4XUCBvO|YqWfz1e$x!5`cJ$5;; z7u0BVdGq^E->*K2B*jd<@wq9j(vz zMx^Xv7C2g{x;R=mk#ddBdEltaRW{e~SRT|N&R8vtFf=RY6 z2h~cjN0fkf_UyBnlL- zZ9G#N3Z2#{uwH_Lu&9>5@uP*sE6vk(N(hym4BG_s+%i9Ep2FZ655l=6-2yJL(Qhw*ct3)domm;Kd4Y%v`-s1hm-z9qn>n{<{%W~4dp!1Z9(9^j7z;bqGux32K znFfQfBQO(~oWe&W{wr$3pwNH)47QM+kVnlJd`5bdcQ3b@2PZJWufAA%wuv;{`xUQF z45*01gZz-F_J*hUsFTsD6e-u!ciSXp*!WRmBkb0*l_zp1RW*(_9dWKm{FJc~^e`F) zH}^0faLm>e-2PNsf!lzp-}^jb1VE2J6`k@!dDdv0xATwt42hG>78TvnMUXODC583a z)N1y@xvafAoCvPp4*NVRnb2J|4@@It%G<$iO72~*Z7foz!}NK?#Ob#9$!?8=ox6o; zelb6eG_%-0mQ(j=UoREYcW2{%9kFh&bwFN&H4iY)iFxZL(KdIXUY#mXpGPcI`1O8{ zZaq$x7%hvCNMse(n)g2Vg(>zp9>v@m0s2|1^?4KrsGAw>Z{xr$r%ojz(3Yl$uhz}I zyRwi4&6FWlfzdpRyR4U+grC+R+jasIm3(V;y;!jGpU~ccm2#Ce#Vr4>pNm) zvh6qh{Sz@NYkyk#Q(}VdXF&xeC{1vH|2U|r*c(7e}Umst1&|QdoT*2nuvm&)f&$B^$O#E5G5bYMa~&l^@3@RD3#tc}HvKKA3Ci z1J4jk>v>>bTu2Yyt4W1ntjvbaP+QqW5n}$iIO_z!hT3L3H}x8j|KLo%5HgJ=YTnCM zX)s;e9-CF~Tc33HDe^D=-AZSDIq-khdDlh3;t`s9j(zxC)dzH`agJ;GXd5nCNgPHy z@&lq0^q%YbfH1^UIh1TY2sSu+voUD*)kD&Fah4)fqkyr|A4uRz1s(hRFN-!jmqhF4G;nJJmlAuo` zM6kmWT*=5KdsEiUwId&y&=?-jvU9LxxCk#b5u5X3S8k`~=fRDkRb3kWn`54MmLA8W z4_C3sWRj8q3|?fi$Gej?O+821ytKEsy#=*mS9ir<=o}5a$R!FSUo}SZco)X|!nun6 zln7<*ed&YciFDyY?2zDEvGYvxPG3$s_n?Q;o?8zWzPSJLyWFErC z(e4QsC6ttfORb3-b%pl$YA;*t-(tLJ3dY+Gf!*%Lc*0g$zLI;P-**}@LuU#T6fR(A zr_)RUlKv2pU+8aarAST3+WGn8Kro|}sp!xKOPx0(7Vl!c@dux@*%7A=$g?k%LM5Nq zBAh}3Eaa#zn`oJ5iDwHF+25%doX2r!V8@8e0_SP}bP^me+y7*vp>bmWyDc?B-=yWR zO?3az*7!yZR|-0BB2K;xsju_uh3XAdFI8N4%r>8#rQ<8$L+nU(9{M-?H^q*%%0ZBq zCLS_sdCww_Iq%`1xgb9hW6ZnOASz$+IEu6CsWibTIzJLMTI+Ot%$*%EWv>sZ-@xQE zAYh5#{$>^gQ?SGUw-h|)AU{Rx=|h4u4n$QiHE18_LzGncDxP9;i0HbQiRl3k2~78O zdzrEAx8L2nKd{N$3pC#O@J1MzL~?jR!{Ik&X}J(y>dvZAN%_^lN>_K7)<3qSi#Uta zD%k0|K5-R-dUEUuDEGskbJ`R2W;HoB4VEHb`k|E@rGm+L*Kn~EexW#z3{RLtCHKb0 zqBr+Q98#Vry}8$n7IzcHq-v4cE%-9T%;3WJ=jPrgxxS^JSz7*^hpCz|Wc_@d&$J4C zhHi119`Q>G6@BJdVn}mNkt60m5}@uX(`I1lVNp=sHUf6ZG^= zz!xF{+kChE%u9J;`P`bb)bcMnvHkp}3Zs`y3HB?rwA!*e<6pd_9Bccu{qfd?2E@l& z;auk2L5xqu35SCME`L6Y_4cIOS1Q6Ibz5nozicE@^_|jFEWC?kuAocW_hneqxjtCA za+&C?&j-v0oj07!$>{ot6v03II*9E9Qe0!K`lYoc*o(p@d;xkK%*gyv?u5iOzwrEMSN+T{ ztZbQ%MQ2p)M%e?nMjJUDc&1a1ek|sR@%;=JZokf?gU$P4vH_+I+rkoPTXbVE5y~;= zX8tXyRNB|Q8C552GGq01WxEEuhvNNGwWC*2o~g~Ep=lH}Gz=jY>Vkn%OQF{9tcY?r zqoyrL0xNhV-Qu=FY3hC79z?>y9Hnw?W`;)RA zX;jd|1(`pGf3OwwR>BtreisF>55I!CPE3p9jbwQ>PtfKWGri$(_W%-kHnLVVbF)a! z9U0h2*&zO2BJ$iJgg{1ez$y3)ZK%x~^788jlnmX$DHI1uubOHbCS`8Zh@P1&sxt2-4|>Zck#h@*<6*eD|3Q7^^*WXO{YJX#e349ECfq{KL=jai>YIp!QWBWrT|hx@W{b}*T)mFR6>LE$XSYX>NB zv?2>*lR55+8$CUtof-Yytw9?3)VdO=DXkOVl$gHKEhw(8dRjP3X)lh!lVgZzxYRSu zGff$XlYm5ZMdTVyL5D8Db=h4>x)Z=jQx^6oQ|U$Ah}{KBfB->|>3dv_Wqi;w6>s#O zBpz~6CV%a`BD3$r2&t`{M|nuKT19FI(Vj-F^hqpK!SorY((cC1vtrF2WQr86WD_Au z3s6`17be((kl)Lh4Fa!M3D4%)a5^YTaVR312klqt5}}YadZQ&(5&8(J12!$O;5`$Z zm1T%Bvku42c@V)|aFjxXsdydydndj=+ByG6VdJIeFMe28Yu!5#f6Y#%FaavmmbRp? zDoXH5db_VZID8i;BRQ5hKwT!R!stZ+FhZQ&P0S$KI`0l_DoGo1P`N_6@{%q1KuwXA6MmqqK?Y^U`47c+BWx1E z;3FDq{p^S5+Oevy{rmMpwouX5QDT|4i|X%9V$==o!GiT`BPjZQsOK?p>m)%NkT~_H zkSijTKCW&&mHSbg9$hbykLfZce$3=oyw%`nYVvHI*iq~^-y+WXDn*?cZ;Ad(I*O9| zHEJ}e+XkVG)(Eqy>-1VC^|$nyid`hW&SgYaJT9@yv%wi}Kzx1izuH0E>}q-V-Ce-kj#{j@V?IBh%Ptm8fkv8|~An?~bllDUnF zh3J~(F%b!;^6NYoqYuJO*kcpA&=**Dm@y;ZUApDIBN3dEHl8bG z+SSd@KiAfuFUbvJfJ)Lpas1=Spb{T6l+f#p5(O-2OeUP*mvBpo@M>+dL4{1yx;Ttv zFF@)hVJ;0JV^9)_2rK)s_+;a%%e$hVGB@s@|A|@E)00*IfEFnev}!XWH6qs(&d%6j zp}HIlfBl=gcX@M`$BT-R21CygDi5teXS?~p?5zidVGt-@WL$nvxP34>V@Y*Y5yOt; zGj7%PObElErX)aAsHxB7V=3P>N~`G<{}efE;7i!e&98irsS*bSDR@ zsxqd5!-|2fGLvQpFE;CwVon1acKRzD(Kk48XosOY5GvINyZQJSX$JyUiPWDY>3|Bg z(<{-vSIn;pgpHZ4@w{$Z!)y}A+kH=92{J!g8n{s63ysZ;p@>WM#o~4_VZq*Rd#Uhx zWlerNg|isrp>I8*+$J$3!S>SC{MI1h=<#e$$;0hi5C_@fD_s_2+c00Q=>)xqoN7Tz z+#QU~6lKUBykJ|b^owlEC?D;S*fxy!Q?cCc@4{2fgGR0@6||>URp?wPnsFD-A|%7M zhvIuab1^ys*R)bkKu98OGxIr_79z=D%7%sbv=C_=%T%;&NwsvKw*-&m6{)+TaJaWf zpWO96t!>*Vfdx_mOV;l;HC#ArzS9t@yW-9@vk12H20s(JcAe#16znY}ub0->my{*vHStjnp>O%aS>SNS`vPbPA+J}~H+aP62bQPTV#&X9 z1tp$QI|l)RURGTo{y3m*%aDVMr6+sJQgpEZ!ZOzLhJyof7WvA{NP%&QU)sbpN{&@%m)lg;@i)rRKv68BXJO2qZda4m(^MA>;ffddova)eO` zeN|KEZ;3n8<9}{hw<74Pikh#j+zC}P#V_BdJ)Ae#hA{&)1Rs=;C?}BtLWJ1U~8|_AeEM5fK~hwK}N3 zepHs+S;fD0R-8=~ZvQif*-DEb;gn2byqzOLYC*abDFvVndrl^`Wsa^`+<1*URoIbn zsNI+7fTL*_rnV%F88bV!I9##3Bz!yGJ0sDl4~=8l&{`=5KAI%igDf>U{c=&Wtiyb1 z_iWE2mnMua)xHs80S~pRJ@a^%4KyP1d@Sqhd6z8e8UFaR*D3&9uSpRxL$i7puHder z&?anj&aCF|G) z_caJ6^MgiUY1!KL^C9NJkjc6XM2PVz5k>vmOGX10`{@)Igm2+2_`b zeOyK*KmL(Ikg~Hw>K<{~*iM`tPBF2jcU$|uT=6s-fR@rY=iX9ow!~dUW-CzAu-J%J zRJGp$miO97vW2Zdq<4JLLBBnieAN2qZR!M+WaAy**BK;={X8D@5>M%YCXH(i>9()Y zGLg%c1Pdq}iMh4Fh>UwcpLV zzx_0fqf=-{(E=A6{yf(iGo1zSlM)o;66#lS;x?mMCm#=7n&#|RxYCt4IL zNEO`ZWXe`0d%?8masQ$_FmIKV_uKMvw;&~`>tkPj*nI5(uL7(+rG(ZuFo;#$z4y*v0X%xN&x@A-CFU93w1V}y-EMH-A| zJ3=zkI^#NwnhZ&=s&jIMn%9y{7m}ADG5|MQ~*a%!|mc@c7-qtr{GGXbR$!|K%XQ7d6Lpm*e5#hvqz7gU9|1wVi=J+&{2+ zp~z!xouV=6wV$e<_|}E9RNg%K-x{DFZcN-gw|sepnt|+#74)>U%p%(KxDl&_;qj~X zQIKwLea;TGY^GbiWoxN@y+!G~<7L4jZ{i@eb8aBYSm7@hKd84o2h%e7 zb&0})A6kG=abpDL+32{(X1{n7&R(jGImW{b?QqN zLuL~AcE%7>X|g1QyR&gn7zv95z2)Ab&`rDbcek~ z|GGCaws90o6wOodwU)?Xu}{EY8idvKEej$t9fyjrPeX zD;r#H#+TvKT>>FVV@VT9N`CDIwH^tDSB@nbWZkDPH#NadV}KH5?B|1_-T1h5?~oPk zTqgd=8ZURwe~&r75#i0YM%)XT)Os5FbcirEU<22f(nH|>wQ3CC(7Z;bd}{7owvH||DgK8 zqiioe9TyAnt-)*EIL$eu#(Y z2N|O=Rpag;{gq}>x=l7Iz1!>8STcu)1;c2aR;Ry45v}>7v+-ofT4O1&s~irMQX;q5Oc&J# z&^dF@_aCBOr+BOjl-%0cQKQzYDJ4^=9rR1*=_Jm&bfIO5G~K%0O?f|zMXv5$-8!s9 z;ZW43v|YU3_oF@KH48kK9)`80c|(AK2@lO;_-k8Z{Ns?(GZt0~m1Y$4%Jo)em#3=X1>KrO!+4sq$KHo9I*n9R_IE{W54|bWRnL<;*@MeCG5lDtqRK zY813nj(5|UmnUCoNbxYl!kO6O?>GIRcv*9jj9D>q3Dgu{YQ!Zj?+ifM;PQM2jqEM@ z81)kE?H|9B-PA$fa7VMP$YJE<%ulMa0JEi?MJqPH*Yd2;Jo)JC){siF&4Z<98=Hm4 zzV7#&z67V>10k=O`Oh}jd()|AvHW5!Q4a7;2CEN}pEB5M1)lhIlX;HKf*MtOU-5Ju~-dlc=*(G zpsnk9YAF_8KG`|HPjdd!+#HxB5dEpA0w;4p7C-a3&BUA-w^*a9n{HH2%0@G<|E$Or z{i`ZgoEYNDH9ABj*`H370Hm+P%E8UV0k)!1tK^F3s zG`R_xBzHet#*!WG`)6geSknF0^jKEin__;hSp2Idzj~w1nbn>D)FF;P)GZ`iY_RB8 zRjts$s>prMY}wUy8dse{W0+Nyc&y`*lCKRf)%$eVRcz>pu!YGRtbO7TVI{@t8!cb` z1_X}7=7$vZ6**9iP2QZnLpLC{vm|}wUfcg`kRMWeUR_7i)PfF5i6YXC7E75}(oUIa zhPJ9m%X``n0SMCc!AnCI)WvwdT~E|RC7^Bi9qkUq_Ky~$>0 z5HoWKZ}#d4KM3^Xi`cE|cW)zJ+uGDwc`m>)P*GceA;E jF3*smF~zQi%vG;Ko5M5EXir|{ GRUB/BIOS device" -msgstr "OSway iskday #umnay ------> UBGRay/IOSBay eviceday" - -#: grub-core/commands/i386/pc/drivemap.c:413 -msgid "-l | -r | [-s] grubdev osdisk." -msgstr "-lay | -ray | [-say] ubdevgray osdiskway." - -#: grub-core/commands/i386/pc/drivemap.c:414 -msgid "Manage the BIOS drive mappings." -msgstr "anageMay ethay IOSBay ivedray appingsmay." - -#: grub-core/commands/i386/pc/halt.c:31 -msgid "Do not use APM to halt the computer." -msgstr "oDay otnay useway APMway otay althay ethay omputercay." - -#: grub-core/commands/i386/pc/halt.c:119 -msgid "Halt the system, if possible using APM." -msgstr "altHay ethay ystemsay, ifway ossiblepay usingway APMway." - -#: grub-core/commands/i386/pc/lsapm.c:75 -msgid "no APM found" -msgstr "onay APMway oundfay" - -#: grub-core/commands/i386/pc/lsapm.c:77 -#, c-format -msgid "" -"Version %u.%u\n" -"32-bit CS = 0x%x, len = 0x%x, offset = 0x%x\n" -"16-bit CS = 0x%x, len = 0x%x\n" -"DS = 0x%x, len = 0x%x\n" -msgstr "" -"ersionVay %u.%u\n" -"32-itbay CSay = 0x%x, enlay = 0x%x, offsetway = 0x%x\n" -"16-itbay CSay = 0x%x, enlay = 0x%x\n" -"DSay = 0x%x, enlay = 0x%x\n" - -#: grub-core/commands/i386/pc/lsapm.c:86 -msgid "16-bit protected interface supported\n" -msgstr "16-itbay otectedpray interfaceway upportedsay\n" - -#: grub-core/commands/i386/pc/lsapm.c:87 -msgid "16-bit protected interface unsupported\n" -msgstr "16-itbay otectedpray interfaceway unsupportedway\n" - -#: grub-core/commands/i386/pc/lsapm.c:89 -msgid "32-bit protected interface supported\n" -msgstr "32-itbay otectedpray interfaceway upportedsay\n" - -#: grub-core/commands/i386/pc/lsapm.c:90 -msgid "32-bit protected interface unsupported\n" -msgstr "32-itbay otectedpray interfaceway unsupportedway\n" - -#: grub-core/commands/i386/pc/lsapm.c:92 -msgid "CPU Idle slows down processor\n" -msgstr "UCPay Idleway owsslay ownday ocessorpray\n" - -#: grub-core/commands/i386/pc/lsapm.c:93 -msgid "CPU Idle doesn't slow down processor\n" -msgstr "UCPay Idleway oesnday'tay owslay ownday ocessorpray\n" - -#: grub-core/commands/i386/pc/lsapm.c:95 -msgid "APM disabled\n" -msgstr "APMway isabledday\n" - -#: grub-core/commands/i386/pc/lsapm.c:95 -msgid "APM enabled\n" -msgstr "APMway enabledway\n" - -#: grub-core/commands/i386/pc/lsapm.c:97 -msgid "APM disengaged\n" -msgstr "APMway isengagedday\n" - -#: grub-core/commands/i386/pc/lsapm.c:97 -msgid "APM engaged\n" -msgstr "APMway engagedway\n" - -#: grub-core/commands/i386/pc/lsapm.c:107 -msgid "Show APM information." -msgstr "owShay APMway informationway." - -#. TRANSLATORS: It's musical notes, not the notes -#. you take. Play command expects arguments which can -#. be either a filename or tempo+notes. -#. This error happens if none is specified. -#: grub-core/commands/i386/pc/play.c:88 -msgid "filename or tempo and notes expected" -msgstr "ilenamefay orway empotay andway otesnay expectedway" - -#: grub-core/commands/i386/pc/play.c:113 grub-core/commands/i386/pc/play.c:144 -#, c-format -msgid "Invalid tempo in %s" -msgstr "Invalidway empotay inway %s" - -#: grub-core/commands/i386/pc/play.c:151 grub-core/commands/macbless.c:172 -#: grub-core/fs/archelp.c:260 grub-core/fs/bfs.c:621 grub-core/fs/bfs.c:704 -#: grub-core/fs/btrfs.c:1726 grub-core/fs/btrfs.c:1755 -#: grub-core/fs/btrfs.c:1799 grub-core/fs/btrfs.c:1882 -#: grub-core/fs/btrfs.c:1906 grub-core/fs/fshelp.c:257 grub-core/fs/jfs.c:696 -#: grub-core/fs/minix.c:426 grub-core/fs/ufs.c:544 grub-core/fs/zfs/zfs.c:2083 -#: grub-core/fs/zfs/zfs.c:2095 grub-core/fs/zfs/zfs.c:2301 -#: grub-core/net/http.c:120 -#, c-format -msgid "file `%s' not found" -msgstr "ilefay ‘%s’ otnay oundfay" - -#: grub-core/commands/i386/pc/play.c:162 grub-core/commands/i386/pc/play.c:171 -#: grub-core/kern/misc.c:419 grub-core/script/execute.c:138 -#: grub-core/script/execute.c:244 -msgid "unrecognized number" -msgstr "unrecognizedway umbernay" - -#: grub-core/commands/i386/pc/play.c:190 -msgid "FILE | TEMPO [PITCH1 DURATION1] [PITCH2 DURATION2] ... " -msgstr "ILEFay | EMPOTay [ITCHPay1 URATIONDay1] [ITCHPay2 URATIONDay2] ... " - -#: grub-core/commands/i386/pc/play.c:191 -msgid "Play a tune." -msgstr "ayPlay away unetay." - -#: grub-core/commands/i386/pc/sendkey.c:39 -msgid "set numlock mode" -msgstr "etsay umlocknay odemay" - -#: grub-core/commands/i386/pc/sendkey.c:40 -msgid "set capslock mode" -msgstr "etsay apslockcay odemay" - -#: grub-core/commands/i386/pc/sendkey.c:41 -msgid "set scrolllock mode" -msgstr "etsay olllockscray odemay" - -#: grub-core/commands/i386/pc/sendkey.c:42 -msgid "set insert mode" -msgstr "etsay insertway odemay" - -#: grub-core/commands/i386/pc/sendkey.c:43 -msgid "set pause mode" -msgstr "etsay ausepay odemay" - -#: grub-core/commands/i386/pc/sendkey.c:44 -msgid "press left shift" -msgstr "esspray eftlay iftshay" - -#: grub-core/commands/i386/pc/sendkey.c:45 -msgid "press right shift" -msgstr "esspray ightray iftshay" - -#: grub-core/commands/i386/pc/sendkey.c:46 -msgid "press SysRq" -msgstr "esspray ysRqSay" - -#: grub-core/commands/i386/pc/sendkey.c:47 -msgid "press NumLock key" -msgstr "esspray umLockNay eykay" - -#: grub-core/commands/i386/pc/sendkey.c:48 -msgid "press CapsLock key" -msgstr "esspray apsLockCay eykay" - -#: grub-core/commands/i386/pc/sendkey.c:49 -msgid "press ScrollLock key" -msgstr "esspray ollLockScray eykay" - -#: grub-core/commands/i386/pc/sendkey.c:50 -msgid "press Insert key" -msgstr "esspray Insertway eykay" - -#: grub-core/commands/i386/pc/sendkey.c:51 -msgid "press left alt" -msgstr "esspray eftlay altway" - -#: grub-core/commands/i386/pc/sendkey.c:52 -msgid "press right alt" -msgstr "esspray ightray altway" - -#: grub-core/commands/i386/pc/sendkey.c:53 -msgid "press left ctrl" -msgstr "esspray eftlay ctrlay" - -#: grub-core/commands/i386/pc/sendkey.c:54 -msgid "press right ctrl" -msgstr "esspray ightray ctrlay" - -#: grub-core/commands/i386/pc/sendkey.c:55 -msgid "don't update LED state" -msgstr "onday'tay updateway EDLay atestay" - -#: grub-core/commands/i386/pc/sendkey.c:372 -msgid "[KEYSTROKE1] [KEYSTROKE2] ..." -msgstr "[EYSTROKEKay1] [EYSTROKEKay2] ..." - -#. TRANSLATORS: It can emulate multiple -#. keypresses. -#: grub-core/commands/i386/pc/sendkey.c:375 -msgid "Emulate a keystroke sequence" -msgstr "Emulateway away eystrokekay equencesay" - -#: grub-core/commands/i386/rdmsr.c:37 grub-core/commands/iorw.c:34 -#: grub-core/commands/memrw.c:33 grub-core/commands/setpci.c:73 -msgid "Save read value into variable VARNAME." -msgstr "aveSay eadray aluevay intoway ariablevay ARNAMEVay." - -#: grub-core/commands/i386/rdmsr.c:38 grub-core/commands/iorw.c:35 -#: grub-core/commands/memrw.c:34 grub-core/commands/probe.c:40 -#: grub-core/commands/search_wrap.c:40 grub-core/commands/setpci.c:74 -#: grub-core/commands/tr.c:32 -msgid "VARNAME" -msgstr "ARNAMEVay" - -#: grub-core/commands/i386/rdmsr.c:55 grub-core/commands/i386/rdmsr.c:60 -#: grub-core/commands/i386/rdmsr.c:65 grub-core/commands/i386/wrmsr.c:47 -#: grub-core/commands/i386/wrmsr.c:52 grub-core/commands/i386/wrmsr.c:57 -msgid "unsupported instruction" -msgstr "unsupportedway instructionway" - -#: grub-core/commands/i386/rdmsr.c:77 grub-core/commands/i386/wrmsr.c:69 -#: grub-core/commands/i386/wrmsr.c:77 grub-core/net/dns.c:727 -msgid "invalid argument" -msgstr "invalidway argumentway" - -#: grub-core/commands/i386/rdmsr.c:94 grub-core/commands/memrw.c:125 -#: grub-core/commands/memrw.c:129 grub-core/commands/memrw.c:133 -msgid "ADDR" -msgstr "ADDRway" - -#: grub-core/commands/i386/rdmsr.c:95 -msgid "Read a CPU model specific register." -msgstr "eadRay away UCPay odelmay ecificspay egisterray." - -#: grub-core/commands/i386/wrmsr.c:86 -msgid "ADDR VALUE" -msgstr "ADDRway ALUEVay" - -#: grub-core/commands/i386/wrmsr.c:87 -msgid "Write a value to a CPU model specific register." -msgstr "iteWray away aluevay otay away UCPay odelmay ecificspay egisterray." - -#: grub-core/commands/ieee1275/suspend.c:34 -msgid "Run `go' to resume GRUB." -msgstr "unRay ‘ogay’ otay esumeray UBGRay." - -#: grub-core/commands/ieee1275/suspend.c:45 -msgid "Return to IEEE1275 prompt." -msgstr "eturnRay otay IEEEway1275 omptpray." - -#: grub-core/commands/iorw.c:123 grub-core/commands/iorw.c:127 -#: grub-core/commands/iorw.c:131 grub-core/gdb/gdb.c:79 -msgid "PORT" -msgstr "ORTPay" - -#: grub-core/commands/iorw.c:123 -msgid "Read 8-bit value from PORT." -msgstr "eadRay 8-itbay aluevay omfray ORTPay." - -#: grub-core/commands/iorw.c:127 -msgid "Read 16-bit value from PORT." -msgstr "eadRay 16-itbay aluevay omfray ORTPay." - -#: grub-core/commands/iorw.c:131 -msgid "Read 32-bit value from PORT." -msgstr "eadRay 32-itbay aluevay omfray ORTPay." - -#: grub-core/commands/iorw.c:135 grub-core/commands/iorw.c:139 -msgid "PORT VALUE [MASK]" -msgstr "ORTPay ALUEVay [ASKMay]" - -#: grub-core/commands/iorw.c:136 -msgid "Write 8-bit VALUE to PORT." -msgstr "iteWray 8-itbay ALUEVay otay ORTPay." - -#: grub-core/commands/iorw.c:140 -msgid "Write 16-bit VALUE to PORT." -msgstr "iteWray 16-itbay ALUEVay otay ORTPay." - -#: grub-core/commands/iorw.c:143 grub-core/commands/memrw.c:137 -#: grub-core/commands/memrw.c:141 grub-core/commands/memrw.c:145 -msgid "ADDR VALUE [MASK]" -msgstr "ADDRway ALUEVay [ASKMay]" - -#: grub-core/commands/iorw.c:144 -msgid "Write 32-bit VALUE to PORT." -msgstr "iteWray 32-itbay ALUEVay otay ORTPay." - -#: grub-core/commands/keylayouts.c:215 grub-core/commands/loadenv.c:61 -#: grub-core/commands/nativedisk.c:189 grub-core/efiemu/main.c:235 -#: grub-core/font/font.c:428 grub-core/gfxmenu/gfxmenu.c:63 -#: grub-core/kern/device.c:42 grub-core/kern/dl.c:740 -#, c-format -msgid "variable `%s' isn't set" -msgstr "ariablevay ‘%s’ isnway'tay etsay" - -#: grub-core/commands/keylayouts.c:301 -msgid "Load a keyboard layout." -msgstr "oadLay away eyboardkay ayoutlay." - -#. TRANSLATORS: "Check" in a sense that if this key is pressed then -#. "true" is returned, otherwise "false". -#: grub-core/commands/keystatus.c:32 -msgid "Check Shift key." -msgstr "eckChay iftShay eykay." - -#: grub-core/commands/keystatus.c:33 -msgid "Check Control key." -msgstr "eckChay ontrolCay eykay." - -#: grub-core/commands/keystatus.c:34 -msgid "Check Alt key." -msgstr "eckChay Altway eykay." - -#. TRANSLATORS: there are 3 modifiers. -#: grub-core/commands/keystatus.c:106 -msgid "Check key modifier status." -msgstr "eckChay eykay odifiermay atusstay." - -#: grub-core/commands/legacycfg.c:512 grub-core/commands/legacycfg.c:526 -#: grub-core/commands/legacycfg.c:546 grub-core/commands/legacycfg.c:559 -#: grub-core/commands/time.c:43 grub-core/script/function.c:109 -#: util/grub-file.c:100 util/grub-fstest.c:57 util/grub-mount.c:69 -#, c-format -msgid "can't find command `%s'" -msgstr "ancay'tay indfay ommandcay ‘%s’" - -#: grub-core/commands/legacycfg.c:813 grub-core/normal/auth.c:225 -#: util/grub-mkpasswd-pbkdf2.c:139 -msgid "Enter password: " -msgstr "Enterway asswordpay: " - -#. TRANSLATORS: "legacy config" means -#. "config as used by grub-legacy". -#: grub-core/commands/legacycfg.c:837 -msgid "Parse legacy config in same context" -msgstr "arsePay egacylay onfigcay inway amesay ontextcay" - -#: grub-core/commands/legacycfg.c:842 -msgid "Parse legacy config in new context" -msgstr "arsePay egacylay onfigcay inway ewnay ontextcay" - -#: grub-core/commands/legacycfg.c:847 -msgid "Parse legacy config in same context taking only menu entries" -msgstr "" -"arsePay egacylay onfigcay inway amesay ontextcay akingtay onlyway enumay " -"entriesway" - -#: grub-core/commands/legacycfg.c:852 -msgid "Parse legacy config in new context taking only menu entries" -msgstr "" -"arsePay egacylay onfigcay inway ewnay ontextcay akingtay onlyway enumay " -"entriesway" - -#: grub-core/commands/legacycfg.c:856 -msgid "[--no-mem-option] [--type=TYPE] FILE [ARG ...]" -msgstr "[--onay-emmay-optionway] [--ypetay=YPETay] ILEFay [ARGway ...]" - -#: grub-core/commands/legacycfg.c:857 -msgid "Simulate grub-legacy `kernel' command" -msgstr "imulateSay ubgray-egacylay ‘ernelkay’ ommandcay" - -#: grub-core/commands/legacycfg.c:861 grub-core/commands/legacycfg.c:865 -msgid "FILE [ARG ...]" -msgstr "ILEFay [ARGway ...]" - -#: grub-core/commands/legacycfg.c:862 -msgid "Simulate grub-legacy `initrd' command" -msgstr "imulateSay ubgray-egacylay ‘initrdway’ ommandcay" - -#: grub-core/commands/legacycfg.c:866 -msgid "Simulate grub-legacy `modulenounzip' command" -msgstr "imulateSay ubgray-egacylay ‘odulenounzipmay’ ommandcay" - -#: grub-core/commands/legacycfg.c:870 grub-core/commands/legacycfg.c:875 -msgid "[--md5] PASSWD [FILE]" -msgstr "[--mday5] ASSWDPay [ILEFay]" - -#: grub-core/commands/legacycfg.c:871 -msgid "Simulate grub-legacy `password' command" -msgstr "imulateSay ubgray-egacylay ‘asswordpay’ ommandcay" - -#: grub-core/commands/legacycfg.c:876 -msgid "Simulate grub-legacy `password' command in menu entry mode" -msgstr "" -"imulateSay ubgray-egacylay ‘asswordpay’ ommandcay inway enumay entryway " -"odemay" - -#. TRANSLATORS: This option is used to override default filename -#. for loading and storing environment. -#: grub-core/commands/loadenv.c:37 -msgid "Specify filename." -msgstr "ecifySpay ilenamefay." - -#: grub-core/commands/loadenv.c:39 -msgid "Skip signature-checking of the environment file." -msgstr "ipSkay ignaturesay-eckingchay ofway ethay environmentway ilefay." - -#: grub-core/commands/loadenv.c:451 -msgid "[-f FILE] [-s|--skip-sig] [variable_name_to_whitelist] [...]" -msgstr "" -"[-fay ILEFay] [-say|--ipskay-igsay] [ariablevay_amenay_otay_itelistwhay] " -"[...]" - -#: grub-core/commands/loadenv.c:452 -msgid "Load variables from environment block file." -msgstr "oadLay ariablesvay omfray environmentway ockblay ilefay." - -#: grub-core/commands/loadenv.c:455 -msgid "[-f FILE]" -msgstr "[-fay ILEFay]" - -#: grub-core/commands/loadenv.c:456 -msgid "List variables from environment block file." -msgstr "istLay ariablesvay omfray environmentway ockblay ilefay." - -#: grub-core/commands/loadenv.c:460 -msgid "[-f FILE] variable_name [...]" -msgstr "[-fay ILEFay] ariablevay_amenay [...]" - -#: grub-core/commands/loadenv.c:461 -msgid "Save variables to environment block file." -msgstr "aveSay ariablesvay otay environmentway ockblay ilefay." - -#: grub-core/commands/ls.c:40 -msgid "Show a long list with more detailed information." -msgstr "owShay away onglay istlay ithway oremay etailedday informationway." - -#: grub-core/commands/ls.c:41 -msgid "Print sizes in a human readable format." -msgstr "intPray izessay inway away umanhay eadableray ormatfay." - -#: grub-core/commands/ls.c:42 -msgid "List all files." -msgstr "istLay allway ilesfay." - -#: grub-core/commands/ls.c:73 -msgid "Network protocols:" -msgstr "etworkNay otocolspray:" - -#: grub-core/commands/ls.c:295 -msgid "[-l|-h|-a] [FILE ...]" -msgstr "[-lay|-hay|-away] [ILEFay ...]" - -#: grub-core/commands/ls.c:296 -msgid "List devices and files." -msgstr "istLay evicesday andway ilesfay." - -#: grub-core/commands/lsacpi.c:255 -msgid "Show version 1 tables only." -msgstr "owShay ersionvay 1 ablestay onlyway." - -#: grub-core/commands/lsacpi.c:256 -msgid "Show version 2 and version 3 tables only." -msgstr "owShay ersionvay 2 andway ersionvay 3 ablestay onlyway." - -#: grub-core/commands/lsacpi.c:306 -msgid "Show ACPI information." -msgstr "owShay ACPIway informationway." - -#: grub-core/commands/lsmmap.c:31 -msgid "available RAM" -msgstr "availableway AMRay" - -#: grub-core/commands/lsmmap.c:32 -msgid "reserved RAM" -msgstr "eservedray AMRay" - -#. TRANSLATORS: this refers to memory where ACPI tables are stored -#. and which can be used by OS once it loads ACPI tables. -#: grub-core/commands/lsmmap.c:35 -msgid "ACPI reclaimable RAM" -msgstr "ACPIway eclaimableray AMRay" - -#. TRANSLATORS: this refers to memory which ACPI-compliant OS -#. is required to save accross hibernations. -#: grub-core/commands/lsmmap.c:38 -msgid "ACPI non-volatile storage RAM" -msgstr "ACPIway onnay-olatilevay oragestay AMRay" - -#: grub-core/commands/lsmmap.c:39 -msgid "faulty RAM (BadRAM)" -msgstr "aultyfay AMRay (adRAMBay)" - -#: grub-core/commands/lsmmap.c:40 -msgid "persistent RAM" -msgstr "ersistentpay AMRay" - -#: grub-core/commands/lsmmap.c:41 -msgid "persistent RAM (legacy)" -msgstr "ersistentpay AMRay (egacylay)" - -#: grub-core/commands/lsmmap.c:42 -msgid "RAM holding coreboot tables" -msgstr "AMRay oldinghay orebootcay ablestay" - -#: grub-core/commands/lsmmap.c:43 -msgid "RAM holding firmware code" -msgstr "AMRay oldinghay irmwarefay odecay" - -#: grub-core/commands/lsmmap.c:52 -#, c-format -msgid "base_addr = 0x%llx, length = 0x%llx, %s\n" -msgstr "asebay_addrway = 0x%llx, engthlay = 0x%llx, %s\n" - -#: grub-core/commands/lsmmap.c:55 -#, c-format -msgid "base_addr = 0x%llx, length = 0x%llx, type = 0x%x\n" -msgstr "asebay_addrway = 0x%llx, engthlay = 0x%llx, ypetay = 0x%x\n" - -#: grub-core/commands/lsmmap.c:79 -msgid "List memory map provided by firmware." -msgstr "istLay emorymay apmay ovidedpray ybay irmwarefay." - -#: grub-core/commands/lspci.c:232 -msgid "List PCI devices." -msgstr "istLay IPCay evicesday." - -#: grub-core/commands/macbless.c:224 -msgid "Bless FILE of HFS or HFS+ partition for intel macs." -msgstr "" -"essBlay ILEFay ofway HFSay orway HFSay+ artitionpay orfay intelway acsmay." - -#: grub-core/commands/macbless.c:228 -msgid "Bless DIR of HFS or HFS+ partition for PPC macs." -msgstr "essBlay IRDay ofway HFSay orway HFSay+ artitionpay orfay PPCay acsmay." - -#: grub-core/commands/memrw.c:125 -msgid "Read 8-bit value from ADDR." -msgstr "eadRay 8-itbay aluevay omfray ADDRway." - -#: grub-core/commands/memrw.c:129 -msgid "Read 16-bit value from ADDR." -msgstr "eadRay 16-itbay aluevay omfray ADDRway." - -#: grub-core/commands/memrw.c:133 -msgid "Read 32-bit value from ADDR." -msgstr "eadRay 32-itbay aluevay omfray ADDRway." - -#: grub-core/commands/memrw.c:138 -msgid "Write 8-bit VALUE to ADDR." -msgstr "iteWray 8-itbay ALUEVay otay ADDRway." - -#: grub-core/commands/memrw.c:142 -msgid "Write 16-bit VALUE to ADDR." -msgstr "iteWray 16-itbay ALUEVay otay ADDRway." - -#: grub-core/commands/memrw.c:146 -msgid "Write 32-bit VALUE to ADDR." -msgstr "iteWray 32-itbay ALUEVay otay ADDRway." - -#: grub-core/commands/menuentry.c:31 -msgid "Menu entry type." -msgstr "enuMay entryway ypetay." - -#: grub-core/commands/menuentry.c:31 grub-core/commands/menuentry.c:38 -#: grub-core/commands/menuentry.c:39 grub-core/gettext/gettext.c:520 -#: util/grub-fstest.c:520 util/grub-install.c:291 util/grub-install.c:304 -#: util/grub-mknetdir.c:51 util/grub-mkrescue.c:109 util/grub-mkrescue.c:110 -#: util/grub-mount.c:453 util/grub-render-label.c:65 -msgid "STRING" -msgstr "INGSTRay" - -#: grub-core/commands/menuentry.c:33 -msgid "List of users allowed to boot this entry." -msgstr "istLay ofway usersway allowedway otay ootbay isthay entryway." - -#: grub-core/commands/menuentry.c:33 -msgid "USERNAME[,USERNAME]" -msgstr "USERNAMEway[,USERNAMEway]" - -#: grub-core/commands/menuentry.c:36 -msgid "Keyboard key to quickly boot this entry." -msgstr "eyboardKay eykay otay uicklyqay ootbay isthay entryway." - -#: grub-core/commands/menuentry.c:36 -msgid "KEYBOARD_KEY" -msgstr "EYBOARDKay_EYKay" - -#: grub-core/commands/menuentry.c:38 -msgid "Use STRING as menu entry body." -msgstr "Useway INGSTRay asway enumay entryway odybay." - -#: grub-core/commands/menuentry.c:39 -msgid "Menu entry identifier." -msgstr "enuMay entryway identifierway." - -#. TRANSLATORS: menu entry can either be bootable by anyone or only by -#. handful of users. By default when security is active only superusers can -#. boot a given menu entry. With --unrestricted (this option) -#. anyone can boot it. -#: grub-core/commands/menuentry.c:44 -msgid "This entry can be booted by any user." -msgstr "isThay entryway ancay ebay ootedbay ybay anyway userway." - -#: grub-core/commands/menuentry.c:323 grub-core/commands/menuentry.c:328 -#: grub-core/tests/test_blockarg.c:46 -msgid "BLOCK" -msgstr "OCKBLay" - -#: grub-core/commands/menuentry.c:323 -msgid "Define a menu entry." -msgstr "efineDay away enumay entryway." - -#: grub-core/commands/menuentry.c:328 -msgid "Define a submenu." -msgstr "efineDay away ubmenusay." - -#. TRANSLATORS: this is module list header. Name -#. is module name, Ref Count is a reference counter -#. (how many modules or open descriptors use it). -#. Dependencies are the other modules it uses. -#. -#: grub-core/commands/minicmd.c:162 -msgid "Name\tRef Count\tDependencies\n" -msgstr "ameNay\tefRay ountCay\tependenciesDay\n" - -#: grub-core/commands/minicmd.c:201 -msgid "Show this message." -msgstr "owShay isthay essagemay." - -#: grub-core/commands/minicmd.c:204 -msgid "ADDR [SIZE]" -msgstr "ADDRway [IZESay]" - -#: grub-core/commands/minicmd.c:204 -msgid "Show memory contents." -msgstr "owShay emorymay ontentscay." - -#: grub-core/commands/minicmd.c:207 grub-core/kern/corecmd.c:188 -#: util/grub-install.c:275 -msgid "MODULE" -msgstr "ODULEMay" - -#: grub-core/commands/minicmd.c:207 -msgid "Remove a module." -msgstr "emoveRay away odulemay." - -#: grub-core/commands/minicmd.c:210 -msgid "Show loaded modules." -msgstr "owShay oadedlay odulesmay." - -#: grub-core/commands/minicmd.c:213 -msgid "Exit from GRUB." -msgstr "Exitway omfray UBGRay." - -#: grub-core/commands/mips/loongson/lsspd.c:42 -msgid "No CS5536 found" -msgstr "oNay CSay5536 oundfay" - -#: grub-core/commands/mips/loongson/lsspd.c:45 -#, c-format -msgid "CS5536 at %d:%d.%d\n" -msgstr "CSay5536 atway %d:%d.%d\n" - -#. TRANSLATORS: System management bus is often used to access components like -#. RAM (info only, not data) or batteries. I/O space is where in memory -#. its ports are. -#: grub-core/commands/mips/loongson/lsspd.c:55 -#, c-format -msgid "System management bus controller I/O space is at 0x%x\n" -msgstr "" -"ystemSay anagementmay usbay ontrollercay Iway/Oway acespay isway atway 0x%x\n" - -#. TRANSLATORS: it's shown in a report in a way -#. like number 1: ... number 2: ... -#. -#: grub-core/commands/mips/loongson/lsspd.c:66 -#, c-format -msgid "RAM slot number %d\n" -msgstr "AMRay otslay umbernay %d\n" - -#: grub-core/commands/mips/loongson/lsspd.c:73 -#, c-format -msgid "Written SPD bytes: %d B.\n" -msgstr "ittenWray SPDay ytesbay: %d Bay.\n" - -#: grub-core/commands/mips/loongson/lsspd.c:74 -#, c-format -msgid "Total flash size: %d B.\n" -msgstr "otalTay ashflay izesay: %d Bay.\n" - -#: grub-core/commands/mips/loongson/lsspd.c:79 -msgid "Memory type: DDR2." -msgstr "emoryMay ypetay: DDRay2." - -#: grub-core/commands/mips/loongson/lsspd.c:83 -#, c-format -msgid "Part no: %s.\n" -msgstr "artPay onay: %s.\n" - -#: grub-core/commands/mips/loongson/lsspd.c:86 -msgid "Memory type: Unknown." -msgstr "emoryMay ypetay: Unknownway." - -#: grub-core/commands/mips/loongson/lsspd.c:97 -msgid "Print Memory information." -msgstr "intPray emoryMay informationway." - -#: grub-core/commands/nativedisk.c:118 grub-core/commands/probe.c:118 -#: grub-core/commands/probe.c:124 util/grub-probe.c:450 -#, c-format -msgid "%s does not support UUIDs" -msgstr "%s oesday otnay upportsay UUIDsway" - -#: grub-core/commands/nativedisk.c:325 -msgid "[MODULE1 MODULE2 ...]" -msgstr "[ODULEMay1 ODULEMay2 ...]" - -#: grub-core/commands/nativedisk.c:326 -msgid "" -"Switch to native disk drivers. If no modules are specified default set (pata," -"ahci,usbms,ohci,uhci,ehci) is used" -msgstr "" -"itchSway otay ativenay iskday iversdray. Ifway onay odulesmay areway " -"ecifiedspay efaultday etsay (atapay,ahciway,usbmsway,ohciway,uhciway," -"ehciway) isway usedway" - -#: grub-core/commands/parttool.c:40 -msgid "" -"Perform COMMANDS on partition.\n" -"Use `parttool PARTITION help' for the list of available commands." -msgstr "" -"erformPay OMMANDSCay onway artitionpay.\n" -"Useway ‘arttoolpay ARTITIONPay elphay’ orfay ethay istlay ofway availableway " -"ommandscay." - -#: grub-core/commands/parttool.c:123 -msgid "=VAL" -msgstr "=ALVay" - -#: grub-core/commands/parttool.c:136 -#, c-format -msgid "Sorry, no parttool is available for %s\n" -msgstr "orrySay, onay arttoolpay isway availableway orfay %s\n" - -#: grub-core/commands/parttool.c:288 grub-core/lib/arg.c:285 -#: grub-core/lib/arg.c:351 -#, c-format -msgid "unknown argument `%s'" -msgstr "unknownway argumentway ‘%s’" - -#: grub-core/commands/parttool.c:344 -msgid "PARTITION COMMANDS" -msgstr "ARTITIONPay OMMANDSCay" - -#: grub-core/commands/password.c:85 -msgid "USER PASSWORD" -msgstr "USERway ASSWORDPay" - -#: grub-core/commands/password.c:86 -msgid "Set user password (plaintext). Unrecommended and insecure." -msgstr "" -"etSay userway asswordpay (aintextplay). Unrecommendedway andway insecureway." - -#. TRANSLATORS: it means that the string which -#. was supposed to be a password hash doesn't -#. have a correct format, not to password -#. mismatch. -#: grub-core/commands/password_pbkdf2.c:98 -#: grub-core/commands/password_pbkdf2.c:115 -#: grub-core/commands/password_pbkdf2.c:123 -#: grub-core/commands/password_pbkdf2.c:150 -#: grub-core/commands/password_pbkdf2.c:179 -msgid "invalid PBKDF2 password" -msgstr "invalidway PBKDFay2 asswordpay" - -#: grub-core/commands/password_pbkdf2.c:202 -msgid "USER PBKDF2_PASSWORD" -msgstr "USERway PBKDFay2_ASSWORDPay" - -#: grub-core/commands/password_pbkdf2.c:203 -msgid "Set user password (PBKDF2). " -msgstr "etSay userway asswordpay (PBKDFay2). " - -#: grub-core/commands/pcidump.c:39 grub-core/commands/setpci.c:69 -msgid "Select device by vendor and device IDs." -msgstr "electSay eviceday ybay endorvay andway eviceday IDsway." - -#: grub-core/commands/pcidump.c:40 grub-core/commands/setpci.c:70 -msgid "[vendor]:[device]" -msgstr "[endorvay]:[eviceday]" - -#: grub-core/commands/pcidump.c:41 grub-core/commands/setpci.c:71 -msgid "Select device by its position on the bus." -msgstr "electSay eviceday ybay itsway ositionpay onway ethay usbay." - -#: grub-core/commands/pcidump.c:42 grub-core/commands/setpci.c:72 -msgid "[bus]:[slot][.func]" -msgstr "[usbay]:[otslay][.uncfay]" - -#: grub-core/commands/pcidump.c:109 grub-core/commands/pcidump.c:138 -#: grub-core/commands/setpci.c:183 grub-core/commands/setpci.c:214 -#: grub-core/fs/zfs/zfs.c:3794 grub-core/kern/emu/hostdisk.c:458 -#: grub-core/kern/emu/hostdisk.c:473 grub-core/kern/file.c:44 -#, c-format -msgid "missing `%c' symbol" -msgstr "issingmay ‘%c’ ymbolsay" - -#: grub-core/commands/pcidump.c:168 -msgid "[-s POSITION] [-d DEVICE]" -msgstr "[-say OSITIONPay] [-day EVICEDay]" - -#: grub-core/commands/pcidump.c:169 -msgid "Show raw dump of the PCI configuration space." -msgstr "owShay awray umpday ofway ethay IPCay onfigurationcay acespay." - -#: grub-core/commands/pgp.c:45 -msgid "Skip signature-checking of the public key file." -msgstr "ipSkay ignaturesay-eckingchay ofway ethay ublicpay eykay ilefay." - -#. TRANSLATORS: it's about GNUPG signatures. -#: grub-core/commands/pgp.c:71 grub-core/commands/pgp.c:81 -#: grub-core/commands/pgp.c:86 grub-core/commands/pgp.c:96 -#: grub-core/commands/pgp.c:103 grub-core/commands/pgp.c:107 -#: grub-core/commands/pgp.c:114 grub-core/commands/pgp.c:119 -#: grub-core/commands/pgp.c:124 grub-core/commands/pgp.c:128 -#: grub-core/commands/pgp.c:268 grub-core/commands/pgp.c:276 -#: grub-core/commands/pgp.c:281 grub-core/commands/pgp.c:289 -#: grub-core/commands/pgp.c:320 grub-core/commands/pgp.c:327 -#: grub-core/commands/pgp.c:332 grub-core/commands/pgp.c:342 -#: grub-core/commands/pgp.c:468 grub-core/commands/pgp.c:471 -#: grub-core/commands/pgp.c:474 grub-core/commands/pgp.c:477 -#: grub-core/commands/pgp.c:484 grub-core/commands/pgp.c:490 -#: grub-core/commands/pgp.c:665 -msgid "bad signature" -msgstr "adbay ignaturesay" - -#. TRANSLATORS: %08x is 32-bit key id. -#: grub-core/commands/pgp.c:636 grub-core/commands/pgp.c:812 -#, c-format -msgid "public key %08x not found" -msgstr "ublicpay eykay %08x otnay oundfay" - -#: grub-core/commands/pgp.c:651 grub-core/disk/diskfilter.c:772 -#: grub-core/disk/diskfilter.c:782 grub-core/fs/ntfs.c:404 -#: grub-core/fs/zfs/zfs.c:1933 grub-core/normal/menu.c:428 -#, c-format -msgid "module `%s' isn't loaded" -msgstr "odulemay ‘%s’ isnway'tay oadedlay" - -#: grub-core/commands/pgp.c:994 -msgid "[-s|--skip-sig] FILE SIGNATURE_FILE [PUBKEY_FILE]" -msgstr "[-say|--ipskay-igsay] ILEFay IGNATURESay_ILEFay [UBKEYPay_ILEFay]" - -#: grub-core/commands/pgp.c:995 -msgid "Verify detached signature." -msgstr "erifyVay etachedday ignaturesay." - -#: grub-core/commands/pgp.c:998 -msgid "[-s|--skip-sig] PUBKEY_FILE" -msgstr "[-say|--ipskay-igsay] UBKEYPay_ILEFay" - -#: grub-core/commands/pgp.c:999 -msgid "Add PUBKEY_FILE to trusted keys." -msgstr "Addway UBKEYPay_ILEFay otay ustedtray eyskay." - -#: grub-core/commands/pgp.c:1003 -msgid "Show the list of trusted keys." -msgstr "owShay ethay istlay ofway ustedtray eyskay." - -#: grub-core/commands/pgp.c:1005 -msgid "PUBKEY_ID" -msgstr "UBKEYPay_IDway" - -#: grub-core/commands/pgp.c:1006 -msgid "Remove PUBKEY_ID from trusted keys." -msgstr "emoveRay UBKEYPay_IDway omfray ustedtray eyskay." - -#: grub-core/commands/probe.c:40 grub-core/commands/tr.c:32 -msgid "Set a variable to return value." -msgstr "etSay away ariablevay otay eturnray aluevay." - -#. TRANSLATORS: It's a driver that is currently in use to access -#. the diven disk. -#: grub-core/commands/probe.c:43 -msgid "Determine driver." -msgstr "etermineDay iverdray." - -#: grub-core/commands/probe.c:44 -msgid "Determine partition map type." -msgstr "etermineDay artitionpay apmay ypetay." - -#: grub-core/commands/probe.c:45 -msgid "Determine filesystem type." -msgstr "etermineDay ilesystemfay ypetay." - -#: grub-core/commands/probe.c:46 -msgid "Determine filesystem UUID." -msgstr "etermineDay ilesystemfay UUIDway." - -#: grub-core/commands/probe.c:47 -msgid "Determine filesystem label." -msgstr "etermineDay ilesystemfay abellay." - -#: grub-core/commands/probe.c:139 grub-core/commands/probe.c:146 -#: util/grub-probe.c:462 -#, c-format -msgid "filesystem `%s' does not support labels" -msgstr "ilesystemfay ‘%s’ oesday otnay upportsay abelslay" - -#: grub-core/commands/probe.c:165 grub-core/fs/zfs/zfsinfo.c:430 -#: grub-core/loader/i386/bsd.c:169 util/grub-setup.c:223 -msgid "DEVICE" -msgstr "EVICEDay" - -#: grub-core/commands/probe.c:166 -msgid "Retrieve device info." -msgstr "etrieveRay eviceday infoway." - -#: grub-core/commands/read.c:85 -msgid "[ENVVAR]" -msgstr "[ENVVARway]" - -#: grub-core/commands/read.c:86 -msgid "Set variable with user input." -msgstr "etSay ariablevay ithway userway inputway." - -#: grub-core/commands/reboot.c:40 -msgid "Reboot the computer." -msgstr "ebootRay ethay omputercay." - -#. TRANSLATORS: in regexp you can mark some -#. groups with parentheses. These groups are -#. then numbered and you can save some of -#. them in variables. In other programs -#. those components aree often referenced with -#. back slash, e.g. \1. Compare -#. sed -e 's,\([a-z][a-z]*\),lowercase=\1,g' -#. The whole matching component is saved in VARNAME, not its number. -#. -#: grub-core/commands/regexp.c:44 -msgid "Store matched component NUMBER in VARNAME." -msgstr "oreStay atchedmay omponentcay UMBERNay inway ARNAMEVay." - -#: grub-core/commands/regexp.c:45 -msgid "[NUMBER:]VARNAME" -msgstr "[UMBERNay:]ARNAMEVay" - -#. TRANSLATORS: This are two arguments. So it's -#. two separate units to translate and pay -#. attention not to reverse them. -#: grub-core/commands/regexp.c:157 -msgid "REGEXP STRING" -msgstr "EGEXPRay INGSTRay" - -#: grub-core/commands/regexp.c:158 -msgid "Test if REGEXP matches STRING." -msgstr "estTay ifway EGEXPRay atchesmay INGSTRay." - -#: grub-core/commands/search.c:324 -msgid "NAME [VARIABLE] [HINTS]" -msgstr "AMENay [ARIABLEVay] [INTSHay]" - -#: grub-core/commands/search_file.c:4 -msgid "" -"Search devices by file. If VARIABLE is specified, the first device found is " -"set to a variable." -msgstr "" -"earchSay evicesday ybay ilefay. Ifway ARIABLEVay isway ecifiedspay, ethay " -"irstfay eviceday oundfay isway etsay otay away ariablevay." - -#: grub-core/commands/search_label.c:4 -msgid "" -"Search devices by label. If VARIABLE is specified, the first device found is " -"set to a variable." -msgstr "" -"earchSay evicesday ybay abellay. Ifway ARIABLEVay isway ecifiedspay, ethay " -"irstfay eviceday oundfay isway etsay otay away ariablevay." - -#: grub-core/commands/search_uuid.c:4 -msgid "" -"Search devices by UUID. If VARIABLE is specified, the first device found is " -"set to a variable." -msgstr "" -"earchSay evicesday ybay UUIDway. Ifway ARIABLEVay isway ecifiedspay, ethay " -"irstfay eviceday oundfay isway etsay otay away ariablevay." - -#: grub-core/commands/search_wrap.c:34 -msgid "Search devices by a file." -msgstr "earchSay evicesday ybay away ilefay." - -#: grub-core/commands/search_wrap.c:35 -msgid "Search devices by a filesystem label." -msgstr "earchSay evicesday ybay away ilesystemfay abellay." - -#: grub-core/commands/search_wrap.c:37 -msgid "Search devices by a filesystem UUID." -msgstr "earchSay evicesday ybay away ilesystemfay UUIDway." - -#: grub-core/commands/search_wrap.c:40 -msgid "Set a variable to the first device found." -msgstr "etSay away ariablevay otay ethay irstfay eviceday oundfay." - -#: grub-core/commands/search_wrap.c:42 -msgid "Do not probe any floppy drive." -msgstr "oDay otnay obepray anyway oppyflay ivedray." - -#: grub-core/commands/search_wrap.c:44 -msgid "" -"First try the device HINT. If HINT ends in comma, also try subpartitions" -msgstr "" -"irstFay ytray ethay eviceday INTHay. Ifway INTHay endsway inway ommacay, " -"alsoway ytray ubpartitionssay" - -#: grub-core/commands/search_wrap.c:45 grub-core/commands/search_wrap.c:49 -#: grub-core/commands/search_wrap.c:53 grub-core/commands/search_wrap.c:57 -#: grub-core/commands/search_wrap.c:61 grub-core/commands/search_wrap.c:65 -msgid "HINT" -msgstr "INTHay" - -#: grub-core/commands/search_wrap.c:47 -msgid "" -"First try the device HINT if currently running on IEEE1275. If HINT ends in " -"comma, also try subpartitions" -msgstr "" -"irstFay ytray ethay eviceday INTHay ifway urrentlycay unningray onway " -"IEEEway1275. Ifway INTHay endsway inway ommacay, alsoway ytray " -"ubpartitionssay" - -#: grub-core/commands/search_wrap.c:51 -msgid "" -"First try the device HINT if currently running on BIOS. If HINT ends in " -"comma, also try subpartitions" -msgstr "" -"irstFay ytray ethay eviceday INTHay ifway urrentlycay unningray onway " -"IOSBay. Ifway INTHay endsway inway ommacay, alsoway ytray ubpartitionssay" - -#: grub-core/commands/search_wrap.c:55 -msgid "" -"First try the device HINT if direct hardware access is supported. If HINT " -"ends in comma, also try subpartitions" -msgstr "" -"irstFay ytray ethay eviceday INTHay ifway irectday ardwarehay accessway " -"isway upportedsay. Ifway INTHay endsway inway ommacay, alsoway ytray " -"ubpartitionssay" - -#: grub-core/commands/search_wrap.c:59 -msgid "" -"First try the device HINT if currently running on EFI. If HINT ends in " -"comma, also try subpartitions" -msgstr "" -"irstFay ytray ethay eviceday INTHay ifway urrentlycay unningray onway " -"EFIway. Ifway INTHay endsway inway ommacay, alsoway ytray ubpartitionssay" - -#: grub-core/commands/search_wrap.c:63 -msgid "" -"First try the device HINT if currently running on ARC. If HINT ends in " -"comma, also try subpartitions" -msgstr "" -"irstFay ytray ethay eviceday INTHay ifway urrentlycay unningray onway " -"ARCway. Ifway INTHay endsway inway ommacay, alsoway ytray ubpartitionssay" - -#: grub-core/commands/search_wrap.c:207 -msgid "[-f|-l|-u|-s|-n] [--hint HINT [--hint HINT] ...] NAME" -msgstr "" -"[-fay|-lay|-uway|-say|-nay] [--inthay INTHay [--inthay INTHay] ...] AMENay" - -#: grub-core/commands/search_wrap.c:209 -msgid "" -"Search devices by file, filesystem label or filesystem UUID. If --set is " -"specified, the first device found is set to a variable. If no variable name " -"is specified, `root' is used." -msgstr "" -"earchSay evicesday ybay ilefay, ilesystemfay abellay orway ilesystemfay " -"UUIDway. Ifway --etsay isway ecifiedspay, ethay irstfay eviceday oundfay " -"isway etsay otay away ariablevay. Ifway onay ariablevay amenay isway " -"ecifiedspay, ‘ootray’ isway usedway." - -#: grub-core/commands/setpci.c:132 -#, c-format -msgid "Register %x of %x:%02x.%x is %x\n" -msgstr "egisterRay %x ofway %x:%02x.%x isway %x\n" - -#: grub-core/commands/setpci.c:333 -msgid "[-s POSITION] [-d DEVICE] [-v VAR] REGISTER[=VALUE[:MASK]]" -msgstr "" -"[-say OSITIONPay] [-day EVICEDay] [-vay ARVay] EGISTERRay[=ALUEVay[:ASKMay]]" - -#: grub-core/commands/setpci.c:335 -msgid "Manipulate PCI devices." -msgstr "anipulateMay IPCay evicesday." - -#: grub-core/commands/sleep.c:32 -msgid "Verbose countdown." -msgstr "erboseVay ountdowncay." - -#: grub-core/commands/sleep.c:33 -msgid "Allow to interrupt with ESC." -msgstr "Allowway otay interruptway ithway ESCway." - -#: grub-core/commands/sleep.c:109 -msgid "NUMBER_OF_SECONDS" -msgstr "UMBERNay_OFway_ECONDSSay" - -#: grub-core/commands/sleep.c:110 -msgid "Wait for a specified number of seconds." -msgstr "aitWay orfay away ecifiedspay umbernay ofway econdssay." - -#: grub-core/commands/syslinuxcfg.c:50 util/grub-syslinux2cfg.c:66 -msgid "root directory of the syslinux disk [default=/]." -msgstr "ootray irectoryday ofway ethay yslinuxsay iskday [efaultday=/]." - -#: grub-core/commands/syslinuxcfg.c:53 util/grub-syslinux2cfg.c:72 -msgid "" -"current directory of syslinux [default is parent directory of input file]." -msgstr "" -"urrentcay irectoryday ofway yslinuxsay [efaultday isway arentpay irectoryday " -"ofway inputway ilefay]." - -#: grub-core/commands/syslinuxcfg.c:55 util/grub-syslinux2cfg.c:75 -msgid "assume input is an isolinux configuration file." -msgstr "assumeway inputway isway anway isolinuxway onfigurationcay ilefay." - -#: grub-core/commands/syslinuxcfg.c:56 util/grub-syslinux2cfg.c:76 -msgid "assume input is a pxelinux configuration file." -msgstr "assumeway inputway isway away elinuxpxay onfigurationcay ilefay." - -#: grub-core/commands/syslinuxcfg.c:57 util/grub-syslinux2cfg.c:77 -msgid "assume input is a syslinux configuration file." -msgstr "assumeway inputway isway away yslinuxsay onfigurationcay ilefay." - -#. TRANSLATORS: "syslinux config" means -#. "config as used by syslinux". -#: grub-core/commands/syslinuxcfg.c:189 -msgid "Execute syslinux config in same context" -msgstr "Executeway yslinuxsay onfigcay inway amesay ontextcay" - -#: grub-core/commands/syslinuxcfg.c:195 -msgid "Execute syslinux config in new context" -msgstr "Executeway yslinuxsay onfigcay inway ewnay ontextcay" - -#: grub-core/commands/syslinuxcfg.c:201 -msgid "Execute syslinux config in same context taking only menu entries" -msgstr "" -"Executeway yslinuxsay onfigcay inway amesay ontextcay akingtay onlyway " -"enumay entriesway" - -#: grub-core/commands/syslinuxcfg.c:207 -msgid "Execute syslinux config in new context taking only menu entries" -msgstr "" -"Executeway yslinuxsay onfigcay inway ewnay ontextcay akingtay onlyway enumay " -"entriesway" - -#: grub-core/commands/terminal.c:90 -msgid "no terminal specified" -msgstr "onay erminaltay ecifiedspay" - -#: grub-core/commands/terminal.c:112 grub-core/commands/terminal.c:139 -#, c-format -msgid "terminal `%s' isn't found" -msgstr "erminaltay ‘%s’ isnway'tay oundfay" - -#: grub-core/commands/terminal.c:244 -msgid "Active input terminals:" -msgstr "Activeway inputway erminalstay:" - -#: grub-core/commands/terminal.c:245 -msgid "Available input terminals:" -msgstr "Availableway inputway erminalstay:" - -#: grub-core/commands/terminal.c:261 -msgid "Active output terminals:" -msgstr "Activeway outputway erminalstay:" - -#: grub-core/commands/terminal.c:262 -msgid "Available output terminals:" -msgstr "Availableway outputway erminalstay:" - -#: grub-core/commands/terminal.c:271 grub-core/commands/terminal.c:276 -msgid "[--append|--remove] [TERMINAL1] [TERMINAL2] ..." -msgstr "[--appendway|--emoveray] [ERMINALTay1] [ERMINALTay2] ..." - -#: grub-core/commands/terminal.c:273 -msgid "List or select an input terminal." -msgstr "istLay orway electsay anway inputway erminaltay." - -#: grub-core/commands/terminal.c:278 -msgid "List or select an output terminal." -msgstr "istLay orway electsay anway outputway erminaltay." - -#: grub-core/commands/test.c:444 -msgid "EXPRESSION ]" -msgstr "EXPRESSIONway ]" - -#: grub-core/commands/test.c:444 grub-core/commands/test.c:447 -msgid "Evaluate an expression." -msgstr "Evaluateway anway expressionway." - -#: grub-core/commands/test.c:447 -msgid "EXPRESSION" -msgstr "EXPRESSIONway" - -#: grub-core/commands/testload.c:164 -msgid "Load the same file in multiple ways." -msgstr "oadLay ethay amesay ilefay inway ultiplemay aysway." - -#: grub-core/commands/testspeed.c:35 -msgid "Specify size for each read operation" -msgstr "ecifySpay izesay orfay eachway eadray operationway" - -#: grub-core/commands/testspeed.c:58 -msgid "invalid block size" -msgstr "invalidway ockblay izesay" - -#: grub-core/commands/testspeed.c:80 -#, c-format -msgid "File size: %s\n" -msgstr "ileFay izesay: %s\n" - -#: grub-core/commands/testspeed.c:83 -#, c-format -msgid "Elapsed time: %d.%03d s \n" -msgstr "Elapsedway imetay: %d.%03d say \n" - -#: grub-core/commands/testspeed.c:92 -#, c-format -msgid "Speed: %s \n" -msgstr "eedSpay: %s \n" - -#: grub-core/commands/testspeed.c:107 -msgid "[-s SIZE] FILENAME" -msgstr "[-say IZESay] ILENAMEFay" - -#: grub-core/commands/testspeed.c:108 -msgid "Test file read speed." -msgstr "estTay ilefay eadray eedspay." - -#: grub-core/commands/time.c:38 grub-core/script/execute.c:974 -msgid "no command is specified" -msgstr "onay ommandcay isway ecifiedspay" - -#: grub-core/commands/time.c:50 -#, c-format -msgid "Elapsed time: %d.%03d seconds \n" -msgstr "Elapsedway imetay: %d.%03d econdssay \n" - -#: grub-core/commands/time.c:61 -msgid "COMMAND [ARGS]" -msgstr "OMMANDCay [ARGSway]" - -#: grub-core/commands/time.c:62 -msgid "Measure time used by COMMAND" -msgstr "easureMay imetay usedway ybay OMMANDCay" - -#: grub-core/commands/tr.c:33 -msgid "Translate to upper case." -msgstr "anslateTray otay upperway asecay." - -#: grub-core/commands/tr.c:34 -msgid "Translate to lower case." -msgstr "anslateTray otay owerlay asecay." - -#: grub-core/commands/tr.c:119 -msgid "[OPTIONS] [SET1] [SET2] [STRING]" -msgstr "[OPTIONSway] [ETSay1] [ETSay2] [INGSTRay]" - -#: grub-core/commands/tr.c:120 -msgid "Translate SET1 characters to SET2 in STRING." -msgstr "anslateTray ETSay1 aracterschay otay ETSay2 inway INGSTRay." - -#. TRANSLATORS: it's a command description. -#: grub-core/commands/true.c:50 -msgid "Do nothing, successfully." -msgstr "oDay othingnay, uccessfullysay." - -#. TRANSLATORS: it's a command description. -#: grub-core/commands/true.c:54 -msgid "Do nothing, unsuccessfully." -msgstr "oDay othingnay, unsuccessfullyway." - -#: grub-core/commands/usbtest.c:221 -msgid "Test USB support." -msgstr "estTay USBway upportsay." - -#: grub-core/commands/verifiers.c:120 -#, c-format -msgid "verification requested but nobody cares: %s" -msgstr "erificationvay equestedray utbay obodynay arescay: %s" - -#: grub-core/commands/verifiers.c:140 -msgid "big file signature isn't implemented yet" -msgstr "igbay ilefay ignaturesay isnway'tay implementedway yet" - -#: grub-core/commands/videoinfo.c:61 -msgid "Text-only " -msgstr "extTay-onlyway " - -#. TRANSLATORS: "Direct color" is a mode when the color components -#. are written dirrectly into memory. -#: grub-core/commands/videoinfo.c:66 -#, c-format -msgid "Direct color, mask: %d/%d/%d/%d pos: %d/%d/%d/%d" -msgstr "irectDay olorcay, askmay: %d/%d/%d/%d ospay: %d/%d/%d/%d" - -#. TRANSLATORS: In "paletted color" mode you write the index of the color -#. in the palette. Synonyms include "packed pixel". -#: grub-core/commands/videoinfo.c:78 -msgid "Paletted " -msgstr "alettedPay " - -#: grub-core/commands/videoinfo.c:80 -msgid "YUV " -msgstr "YUV " - -#. TRANSLATORS: "Planar" is the video memory where you have to write -#. in several different banks "plans" to control the different color -#. components of the same pixel. -#: grub-core/commands/videoinfo.c:85 -msgid "Planar " -msgstr "anarPlay " - -#: grub-core/commands/videoinfo.c:87 -msgid "Hercules " -msgstr "erculesHay " - -#: grub-core/commands/videoinfo.c:89 -msgid "CGA " -msgstr "ACGay " - -#. TRANSLATORS: Non-chain 4 is a 256-color planar -#. (unchained) video memory mode. -#: grub-core/commands/videoinfo.c:93 -msgid "Non-chain 4 " -msgstr "onNay-ainchay 4 " - -#: grub-core/commands/videoinfo.c:95 -msgid "Monochrome " -msgstr "onochromeMay " - -#: grub-core/commands/videoinfo.c:97 -msgid "Unknown video mode " -msgstr "Unknownway ideovay odemay " - -#: grub-core/commands/videoinfo.c:111 -msgid " EDID checksum invalid" -msgstr " EDIDway ecksumchay invalidway" - -#: grub-core/commands/videoinfo.c:116 -#, c-format -msgid " EDID version: %u.%u\n" -msgstr " EDIDway ersionvay: %u.%u\n" - -#: grub-core/commands/videoinfo.c:120 -#, c-format -msgid " Preferred mode: %ux%u\n" -msgstr " eferredPray odemay: %ux%u\n" - -#: grub-core/commands/videoinfo.c:123 -msgid " No preferred mode available\n" -msgstr " oNay eferredpray odemay availableway\n" - -#: grub-core/commands/videoinfo.c:146 grub-core/video/video.c:490 -#: grub-core/video/video.c:498 grub-core/video/video.c:509 -#: grub-core/video/video.c:520 grub-core/video/video.c:528 -#, c-format -msgid "invalid video mode specification `%s'" -msgstr "invalidway ideovay odemay ecificationspay ‘%s’" - -#: grub-core/commands/videoinfo.c:168 -msgid "List of supported video modes:" -msgstr "istLay ofway upportedsay ideovay odesmay:" - -#: grub-core/commands/videoinfo.c:169 -msgid "Legend: mask/position=red/green/blue/reserved" -msgstr "egendLay: askmay/ositionpay=edray/eengray/ueblay/eservedray" - -#: grub-core/commands/videoinfo.c:176 -#, c-format -msgid "Adapter `%s':\n" -msgstr "Adapterway ‘%s’:\n" - -#: grub-core/commands/videoinfo.c:180 -msgid " No info available" -msgstr " oNay infoway availableway" - -#: grub-core/commands/videoinfo.c:198 -msgid " Failed to initialize video adapter" -msgstr " ailedFay otay initializeway ideovay adapterway" - -#. TRANSLATORS: "x" has to be entered in, -#. like an identifier, so please don't -#. use better Unicode codepoints. -#: grub-core/commands/videoinfo.c:239 grub-core/commands/videoinfo.c:248 -msgid "[WxH[xD]]" -msgstr "[WxHay[xDay]]" - -#: grub-core/commands/videoinfo.c:240 grub-core/commands/videoinfo.c:249 -msgid "" -"List available video modes. If resolution is given show only modes matching " -"it." -msgstr "" -"istLay availableway ideovay odesmay. Ifway esolutionray isway ivengay owshay " -"onlyway odesmay atchingmay itway." - -#. TRANSLATORS: "x" has to be entered in, -#. like an identifier, so please don't -#. use better Unicode codepoints. -#: grub-core/commands/videotest.c:225 -msgid "[WxH]" -msgstr "[WxHay]" - -#. TRANSLATORS: Here, on the other hand, it's -#. nicer to use unicode cross instead of x. -#: grub-core/commands/videotest.c:228 -msgid "Test video subsystem in mode WxH." -msgstr "estTay ideovay ubsystemsay inway odemay WxHay." - -#: grub-core/commands/videotest.c:231 -msgid "Test video subsystem." -msgstr "estTay ideovay ubsystemsay." - -#: grub-core/commands/xen/lsxen.c:80 grub-core/commands/xen/lsxen.c:82 -msgid "[DIR]" -msgstr "[IRDay]" - -#: grub-core/commands/xen/lsxen.c:81 grub-core/commands/xen/lsxen.c:83 -msgid "List Xen storage." -msgstr "istLay enXay oragestay." - -#. TRANSLATORS: GRUBUUID stands for "filesystem -#. UUID as used in GRUB". -#: grub-core/commands/xnu_uuid.c:110 -msgid "[-l] GRUBUUID [VARNAME]" -msgstr "[-lay] UBUUIDGRay [ARNAMEVay]" - -#: grub-core/commands/xnu_uuid.c:111 -msgid "" -"Transform 64-bit UUID to format suitable for XNU. If -l is given keep it " -"lowercase as done by blkid." -msgstr "" -"ansformTray 64-itbay UUIDway otay ormatfay uitablesay orfay UXNay. Ifway -" -"lay isway ivengay eepkay itway owercaselay asway oneday ybay idblkay." - -#: grub-core/disk/arc/arcdisk.c:248 grub-core/disk/efi/efidisk.c:603 -#: grub-core/disk/i386/pc/biosdisk.c:498 grub-core/disk/i386/pc/biosdisk.c:543 -#: grub-core/disk/ieee1275/nand.c:198 grub-core/disk/ieee1275/obdisk.c:527 -#: grub-core/disk/ieee1275/ofdisk.c:586 -#, c-format -msgid "failure reading sector 0x%llx from `%s'" -msgstr "ailurefay eadingray ectorsay 0x%llx omfray ‘%s’" - -#: grub-core/disk/arc/arcdisk.c:284 grub-core/disk/efi/efidisk.c:626 -#: grub-core/disk/i386/pc/biosdisk.c:548 grub-core/disk/ieee1275/ofdisk.c:606 -#, c-format -msgid "failure writing sector 0x%llx to `%s'" -msgstr "ailurefay itingwray ectorsay 0x%llx otay ‘%s’" - -#: grub-core/disk/cryptodisk.c:40 -msgid "Mount by UUID." -msgstr "ountMay ybay UUIDway." - -#. TRANSLATORS: It's still restricted to cryptodisks only. -#: grub-core/disk/cryptodisk.c:42 -msgid "Mount all." -msgstr "ountMay allway." - -#: grub-core/disk/cryptodisk.c:43 -msgid "Mount all volumes with `boot' flag set." -msgstr "ountMay allway olumesvay ithway ‘ootbay’ agflay etsay." - -#. TRANSLATORS: The first %s is the file being looked at, the second %s is -#. the error message. -#: grub-core/disk/cryptodisk.c:526 grub-core/kern/emu/hostdisk.c:152 -#: grub-core/kern/emu/hostdisk.c:262 grub-core/kern/emu/hostdisk.c:434 -#: grub-core/kern/emu/misc.c:168 grub-core/kern/emu/misc.c:174 -#: grub-core/kern/emu/misc.c:196 grub-core/osdep/bsd/getroot.c:92 -#: grub-core/osdep/bsd/getroot.c:168 grub-core/osdep/hurd/getroot.c:68 -#: grub-core/osdep/linux/blocklist.c:65 grub-core/osdep/linux/getroot.c:150 -#: grub-core/osdep/linux/hostdisk.c:194 grub-core/osdep/linux/hostdisk.c:421 -#: grub-core/osdep/linux/ofpath.c:417 grub-core/osdep/linux/ofpath.c:422 -#: grub-core/osdep/linux/ofpath.c:517 grub-core/osdep/linux/ofpath.c:530 -#: grub-core/osdep/sun/getroot.c:110 grub-core/osdep/windows/blocklist.c:98 -#: grub-core/tests/video_checksum.c:279 util/editenv.c:46 util/glue-efi.c:115 -#: util/glue-efi.c:120 util/glue-efi.c:130 util/grub-editenv.c:138 -#: util/grub-editenv.c:192 util/grub-file.c:83 util/grub-fstest.c:128 -#: util/grub-fstest.c:568 util/grub-install-common.c:92 -#: util/grub-install-common.c:94 util/grub-install-common.c:101 -#: util/grub-install-common.c:529 util/grub-menulst2cfg.c:53 -#: util/grub-menulst2cfg.c:68 util/grub-mkimage.c:292 util/grub-mklayout.c:504 -#: util/grub-mklayout.c:516 util/grub-mknetdir.c:133 util/grub-mknetdir.c:151 -#: util/grub-mkrescue.c:627 util/grub-mkrescue.c:631 util/grub-mkrescue.c:879 -#: util/grub-mkrescue.c:883 util/grub-mkstandalone.c:253 util/grub-mount.c:498 -#: util/grub-render-label.c:169 util/grub-script-check.c:175 -#: util/grub-syslinux2cfg.c:181 util/grub-syslinux2cfg.c:191 -#: util/grub-syslinux2cfg.c:212 util/grub-syslinux2cfg.c:228 util/misc.c:91 -#: util/render-label.c:76 util/render-label.c:163 util/render-label.c:174 -#: util/resolve.c:246 util/setup.c:783 -#, c-format -msgid "cannot open `%s': %s" -msgstr "annotcay openway ‘%s’: %s" - -#: grub-core/disk/cryptodisk.c:583 grub-core/disk/cryptodisk.c:628 -#: grub-core/kern/emu/hostdisk.c:270 grub-core/kern/emu/hostfs.c:142 -#: grub-core/osdep/linux/hostdisk.c:456 util/grub-editenv.c:143 -#: util/grub-editenv.c:149 util/grub-fstest.c:320 util/misc.c:111 -#, c-format -msgid "cannot seek `%s': %s" -msgstr "annotcay eeksay ‘%s’: %s" - -#: grub-core/disk/cryptodisk.c:1144 -msgid "SOURCE|-u UUID|-a|-b" -msgstr "OURCESay|-uway UUIDway|-away|-bay" - -#: grub-core/disk/cryptodisk.c:1145 -msgid "Mount a crypto device." -msgstr "ountMay away yptocray eviceday." - -#. TRANSLATORS: This message kicks in during the detection of -#. which modules needs to be included in core image. This happens -#. in the case of degraded RAID and means that autodetection may -#. fail to include some of modules. It's an installation time -#. message, not runtime message. -#: grub-core/disk/diskfilter.c:343 grub-core/disk/diskfilter.c:376 -#, c-format -msgid "" -"Couldn't find physical volume `%s'. Some modules may be missing from core " -"image." -msgstr "" -"ouldnCay'tay indfay ysicalphay olumevay ‘%s’. omeSay odulesmay aymay ebay " -"issingmay omfray orecay imageway." - -#: grub-core/disk/diskfilter.c:480 -#, c-format -msgid "physical volume %s not found" -msgstr "ysicalphay olumevay %s otnay oundfay" - -#: grub-core/disk/efi/efidisk.c:600 grub-core/disk/efi/efidisk.c:623 -#, c-format -msgid "no media in `%s'" -msgstr "onay ediamay inway ‘%s’" - -#: grub-core/disk/geli.c:75 -msgid "Couldn't load sha256" -msgstr "ouldnCay'tay oadlay ashay256" - -#: grub-core/disk/geli.c:85 -msgid "Couldn't load sha512" -msgstr "ouldnCay'tay oadlay ashay512" - -#: grub-core/disk/geli.c:216 grub-core/disk/geli.c:220 -msgid "couldn't read ELI metadata" -msgstr "ouldncay'tay eadray ELIway etadatamay" - -#: grub-core/disk/geli.c:231 -msgid "wrong ELI magic or version" -msgstr "ongwray ELIway agicmay orway ersionvay" - -#: grub-core/disk/geli.c:435 grub-core/disk/luks.c:329 -msgid "Attempting to decrypt master key..." -msgstr "Attemptingway otay ecryptday astermay eykay..." - -#: grub-core/disk/geli.c:441 grub-core/disk/luks.c:347 -#, c-format -msgid "Enter passphrase for %s%s%s (%s): " -msgstr "Enterway assphrasepay orfay %s%s%s (%s): " - -#. TRANSLATORS: It's a cryptographic key slot: one element of an array -#. where each element is either empty or holds a key. -#: grub-core/disk/geli.c:530 grub-core/disk/luks.c:451 -#, c-format -msgid "Slot %d opened\n" -msgstr "otSlay %d openedway\n" - -#: grub-core/disk/i386/pc/biosdisk.c:470 grub-core/disk/i386/pc/biosdisk.c:524 -#: grub-core/disk/i386/pc/biosdisk.c:534 grub-core/kern/disk_common.c:47 -#, c-format -msgid "attempt to read or write outside of disk `%s'" -msgstr "attemptway otay eadray orway itewray outsideway ofway iskday ‘%s’" - -#: grub-core/disk/i386/pc/biosdisk.c:491 grub-core/disk/i386/pc/biosdisk.c:611 -#: grub-core/disk/scsi.c:726 -msgid "cannot write to CD-ROM" -msgstr "annotcay itewray otay CDay-OMRay" - -#: grub-core/disk/i386/pc/biosdisk.c:662 -msgid "" -"Native disk drivers are in use. Refusing to use firmware disk interface." -msgstr "" -"ativeNay iskday iversdray areway inway useway. efusingRay otay useway " -"irmwarefay iskday interfaceway." - -#. TRANSLATORS: it's a partition for embedding, -#. not a partition embed into something. GRUB -#. install tools put core.img into a place -#. usable for bootloaders (called generically -#. "embedding zone") and this operation is -#. called "embedding". -#: grub-core/disk/ldm.c:1015 -msgid "your LDM Embedding Partition is too small; embedding won't be possible" -msgstr "" -"your LDMay Embeddingway artitionPay isway ootay allsmay; embeddingway " -"onway'tay ebay ossiblepay" - -#. TRANSLATORS: it's a partition for embedding, -#. not a partition embed into something. -#: grub-core/disk/ldm.c:1033 -msgid "this LDM has no Embedding Partition; embedding won't be possible" -msgstr "" -"isthay LDMay ashay onay Embeddingway artitionPay; embeddingway onway'tay " -"ebay ossiblepay" - -#. TRANSLATORS: The disk is simply removed from the list of available ones, -#. not wiped, avoid to scare user. -#: grub-core/disk/loopback.c:45 -msgid "Delete the specified loopback drive." -msgstr "eleteDay ethay ecifiedspay oopbacklay ivedray." - -#: grub-core/disk/loopback.c:237 -msgid "[-d] DEVICENAME FILE." -msgstr "[-day] EVICENAMEDay ILEFay." - -#. TRANSLATORS: The file itself is not destroyed -#. or transformed into drive. -#: grub-core/disk/loopback.c:240 -msgid "Make a virtual drive from a file." -msgstr "akeMay away irtualvay ivedray omfray away ilefay." - -#: grub-core/efiemu/i386/loadcore32.c:111 -#: grub-core/efiemu/i386/loadcore64.c:125 grub-core/kern/arm/dl.c:256 -#: grub-core/kern/arm64/dl.c:187 grub-core/kern/i386/dl.c:75 -#: grub-core/kern/ia64/dl.c:140 grub-core/kern/mips/dl.c:258 -#: grub-core/kern/powerpc/dl.c:163 grub-core/kern/riscv/dl.c:334 -#: grub-core/kern/sparc64/dl.c:180 grub-core/kern/x86_64/dl.c:110 -#: util/grub-mkimagexx.c:756 util/grub-mkimagexx.c:881 -#: util/grub-mkimagexx.c:945 util/grub-mkimagexx.c:1026 -#: util/grub-mkimagexx.c:1120 util/grub-mkimagexx.c:1222 -#: util/grub-mkimagexx.c:1413 util/grub-mkimagexx.c:1628 -#: util/grub-mkimagexx.c:1665 util/grub-mkimagexx.c:1697 -#: util/grub-mkimagexx.c:1767 util/grub-mkimagexx.c:1797 -#, c-format -msgid "relocation 0x%x is not implemented yet" -msgstr "elocationray 0x%x isway otnay implementedway yet" - -#: grub-core/efiemu/loadcore.c:200 grub-core/efiemu/loadcore.c:237 -#: grub-core/loader/i386/bsdXX.c:317 util/grub-mkimagexx.c:2360 -msgid "no symbol table" -msgstr "onay ymbolsay abletay" - -#: grub-core/efiemu/loadcore.c:346 grub-core/kern/dl.c:609 -#: grub-core/loader/ia64/efi/linux.c:345 grub-core/loader/mips/linux.c:248 -#: grub-core/loader/multiboot_elfxx.c:76 -#: grub-core/loader/powerpc/ieee1275/linux.c:280 -#: grub-core/loader/sparc64/ieee1275/linux.c:320 -msgid "this ELF file is not of the right type" -msgstr "isthay ELFway ilefay isway otnay ofway ethay ightray ypetay" - -#: grub-core/efiemu/main.c:313 -msgid "Load and initialize EFI emulator." -msgstr "oadLay andway initializeway EFIway emulatorway." - -#: grub-core/efiemu/main.c:317 -msgid "Finalize loading of EFI emulator." -msgstr "inalizeFay oadinglay ofway EFIway emulatorway." - -#: grub-core/efiemu/main.c:320 -msgid "Unload EFI emulator." -msgstr "Unloadway EFIway emulatorway." - -#: grub-core/efiemu/symbols.c:92 grub-core/kern/dl.c:376 -#, c-format -msgid "symbol `%s' not found" -msgstr "ymbolsay ‘%s’ otnay oundfay" - -#: grub-core/font/font_cmd.c:52 -msgid "Loaded fonts:" -msgstr "oadedLay ontsfay:" - -#: grub-core/font/font_cmd.c:74 -msgid "FILE..." -msgstr "ILEFay..." - -#: grub-core/font/font_cmd.c:75 -msgid "Specify one or more font files to load." -msgstr "ecifySpay oneway orway oremay ontfay ilesfay otay oadlay." - -#: grub-core/font/font_cmd.c:78 -msgid "List the loaded fonts." -msgstr "istLay ethay oadedlay ontsfay." - -#: grub-core/fs/archelp.c:216 grub-core/fs/archelp.c:278 -#: grub-core/fs/btrfs.c:1815 grub-core/fs/fshelp.c:227 grub-core/fs/jfs.c:736 -#: grub-core/fs/minix.c:369 grub-core/fs/ufs.c:454 -msgid "too deep nesting of symlinks" -msgstr "ootay eepday estingnay ofway ymlinkssay" - -#: grub-core/fs/bfs.c:228 grub-core/fs/fshelp.c:368 grub-core/fs/minix.c:270 -#: grub-core/kern/file.c:156 -msgid "attempt to read past the end of file" -msgstr "attemptway otay eadray astpay ethay endway ofway ilefay" - -#: grub-core/fs/btrfs.c:1698 grub-core/fs/btrfs.c:1957 -#: grub-core/fs/fshelp.c:189 grub-core/fs/fshelp.c:309 grub-core/fs/jfs.c:431 -#: grub-core/fs/minix.c:414 grub-core/fs/minix.c:562 -#: grub-core/fs/reiserfs.c:732 grub-core/fs/ufs.c:531 grub-core/fs/ufs.c:671 -#: grub-core/fs/zfs/zfs.c:2831 grub-core/fs/zfs/zfs.c:4247 -msgid "not a directory" -msgstr "otnay away irectoryday" - -#: grub-core/fs/btrfs.c:2063 grub-core/fs/fshelp.c:307 grub-core/fs/jfs.c:835 -#: grub-core/fs/zfs/zfs.c:3801 -msgid "not a regular file" -msgstr "otnay away egularray ilefay" - -#: grub-core/fs/btrfs.c:2157 grub-core/fs/zfs/zfs.c:4333 -#: grub-core/partmap/msdos.c:400 -msgid "your core.img is unusually large. It won't fit in the embedding area" -msgstr "" -"your orecay.imgway isway unusuallyway argelay. Itway onway'tay itfay inway " -"ethay embeddingway areaway" - -#: grub-core/fs/fshelp.c:281 grub-core/fs/minix.c:630 grub-core/fs/ufs.c:661 -#: grub-core/fs/ufs.c:757 grub-core/kern/fs.c:168 grub-core/kern/fs.c:180 -#, c-format -msgid "invalid file name `%s'" -msgstr "invalidway ilefay amenay ‘%s’" - -#: grub-core/fs/zfs/zfs.c:453 -msgid "checksum verification failed" -msgstr "ecksumchay erificationvay ailedfay" - -#: grub-core/fs/zfs/zfs.c:1465 -msgid "couldn't find a necessary member device of multi-device filesystem" -msgstr "" -"ouldncay'tay indfay away ecessarynay embermay eviceday ofway ultimay-" -"eviceday ilesystemfay" - -#: grub-core/fs/zfs/zfscrypt.c:292 -msgid "no decryption key available" -msgstr "onay ecryptionday eykay availableway" - -#: grub-core/fs/zfs/zfscrypt.c:304 -msgid "MAC verification failed" -msgstr "ACMay erificationvay ailedfay" - -#: grub-core/fs/zfs/zfscrypt.c:413 -msgid "Assume input is raw." -msgstr "Assumeway inputway isway awray." - -#: grub-core/fs/zfs/zfscrypt.c:414 -msgid "Assume input is hex." -msgstr "Assumeway inputway isway exhay." - -#: grub-core/fs/zfs/zfscrypt.c:415 -msgid "Assume input is passphrase." -msgstr "Assumeway inputway isway assphrasepay." - -#: grub-core/fs/zfs/zfscrypt.c:437 util/grub-fstest.c:553 util/grub-mount.c:483 -msgid "Enter ZFS password: " -msgstr "Enterway ZFSay asswordpay: " - -#: grub-core/fs/zfs/zfscrypt.c:476 -msgid "[-h|-p|-r] [FILE]" -msgstr "[-hay|-pay|-ray] [ILEFay]" - -#: grub-core/fs/zfs/zfscrypt.c:477 -msgid "Import ZFS wrapping key stored in FILE." -msgstr "Importway ZFSay appingwray eykay oredstay inway ILEFay." - -#: grub-core/fs/zfs/zfsinfo.c:51 -msgid "Virtual device is removed" -msgstr "irtualVay eviceday isway emovedray" - -#: grub-core/fs/zfs/zfsinfo.c:57 -msgid "Virtual device is faulted" -msgstr "irtualVay eviceday isway aultedfay" - -#: grub-core/fs/zfs/zfsinfo.c:63 -msgid "Virtual device is offline" -msgstr "irtualVay eviceday isway offlineway" - -#. TRANSLATORS: degraded doesn't mean broken but that some of -#. component are missing but virtual device as whole is still usable. -#: grub-core/fs/zfs/zfsinfo.c:70 -msgid "Virtual device is degraded" -msgstr "irtualVay eviceday isway egradedday" - -#: grub-core/fs/zfs/zfsinfo.c:73 -msgid "Virtual device is online" -msgstr "irtualVay eviceday isway onlineway" - -#: grub-core/fs/zfs/zfsinfo.c:89 -msgid "Incorrect virtual device: no type available" -msgstr "Incorrectway irtualvay eviceday: onay ypetay availableway" - -#. TRANSLATORS: The virtual devices form a tree (in graph-theoretical -#. sense). The nodes like mirror or raidz have children: member devices. -#. The "real" devices which actually store data are called "leafs" -#. (again borrowed from graph theory) and can be either disks -#. (or partitions) or files. -#: grub-core/fs/zfs/zfsinfo.c:105 -msgid "Leaf virtual device (file or disk)" -msgstr "eafLay irtualvay eviceday (ilefay orway iskday)" - -#: grub-core/fs/zfs/zfsinfo.c:113 -msgid "Bootpath: unavailable\n" -msgstr "ootpathBay: unavailableway\n" - -#: grub-core/fs/zfs/zfsinfo.c:115 -#, c-format -msgid "Bootpath: %s\n" -msgstr "ootpathBay: %s\n" - -#: grub-core/fs/zfs/zfsinfo.c:120 -msgid "Path: unavailable" -msgstr "athPay: unavailableway" - -#: grub-core/fs/zfs/zfsinfo.c:122 -#, c-format -msgid "Path: %s\n" -msgstr "athPay: %s\n" - -#: grub-core/fs/zfs/zfsinfo.c:127 -msgid "Devid: unavailable" -msgstr "evidDay: unavailableway" - -#: grub-core/fs/zfs/zfsinfo.c:129 -#, c-format -msgid "Devid: %s\n" -msgstr "evidDay: %s\n" - -#: grub-core/fs/zfs/zfsinfo.c:148 -msgid "This VDEV is a mirror" -msgstr "isThay EVVDay isway away irrormay" - -#: grub-core/fs/zfs/zfsinfo.c:153 -#, c-format -msgid "This VDEV is a RAIDZ%llu\n" -msgstr "isThay EVVDay isway away AIDZRay%llu\n" - -#: grub-core/fs/zfs/zfsinfo.c:158 -msgid "Incorrect VDEV" -msgstr "Incorrectway EVVDay" - -#: grub-core/fs/zfs/zfsinfo.c:161 -#, c-format -msgid "VDEV with %d children\n" -msgstr "EVVDay ithway %d ildrenchay\n" - -#. TRANSLATORS: it's the element carying the number %d, not -#. total element number. And the number itself is fine, -#. only the element isn't. -#. -#: grub-core/fs/zfs/zfsinfo.c:177 -#, c-format -msgid "VDEV element number %d isn't correct\n" -msgstr "EVVDay elementway umbernay %d isnway'tay orrectcay\n" - -#. TRANSLATORS: it's the element carying the number %d, not -#. total element number. This is used in enumeration -#. "Element number 1", "Element number 2", ... -#: grub-core/fs/zfs/zfsinfo.c:184 -#, c-format -msgid "VDEV element number %d:\n" -msgstr "EVVDay elementway umbernay %d:\n" - -#: grub-core/fs/zfs/zfsinfo.c:193 -#, c-format -msgid "Unknown virtual device type: %s\n" -msgstr "Unknownway irtualvay eviceday ypetay: %s\n" - -#. TRANSLATORS: Here we speak about ZFS pools it's semi-marketing, -#. semi-technical term by Sun/Oracle and should be translated in sync with -#. other ZFS-related software and documentation. -#: grub-core/fs/zfs/zfsinfo.c:254 -msgid "Pool state: active" -msgstr "oolPay atestay: activeway" - -#: grub-core/fs/zfs/zfsinfo.c:255 -msgid "Pool state: exported" -msgstr "oolPay atestay: exportedway" - -#: grub-core/fs/zfs/zfsinfo.c:256 -msgid "Pool state: destroyed" -msgstr "oolPay atestay: estroyedday" - -#: grub-core/fs/zfs/zfsinfo.c:257 -msgid "Pool state: reserved for hot spare" -msgstr "oolPay atestay: eservedray orfay othay arespay" - -#: grub-core/fs/zfs/zfsinfo.c:258 -msgid "Pool state: level 2 ARC device" -msgstr "oolPay atestay: evellay 2 ARCway eviceday" - -#: grub-core/fs/zfs/zfsinfo.c:259 -msgid "Pool state: uninitialized" -msgstr "oolPay atestay: uninitializedway" - -#: grub-core/fs/zfs/zfsinfo.c:260 -msgid "Pool state: unavailable" -msgstr "oolPay atestay: unavailableway" - -#: grub-core/fs/zfs/zfsinfo.c:261 -msgid "Pool state: potentially active" -msgstr "oolPay atestay: otentiallypay activeway" - -#: grub-core/fs/zfs/zfsinfo.c:306 -msgid "Pool name: unavailable" -msgstr "oolPay amenay: unavailableway" - -#: grub-core/fs/zfs/zfsinfo.c:308 -#, c-format -msgid "Pool name: %s\n" -msgstr "oolPay amenay: %s\n" - -#: grub-core/fs/zfs/zfsinfo.c:313 -msgid "Pool GUID: unavailable" -msgstr "oolPay UIDGay: unavailableway" - -#: grub-core/fs/zfs/zfsinfo.c:315 -#, c-format -msgid "Pool GUID: %016llx\n" -msgstr "oolPay UIDGay: %016llx\n" - -#: grub-core/fs/zfs/zfsinfo.c:320 -msgid "Unable to retrieve pool state" -msgstr "Unableway otay etrieveray oolpay atestay" - -#: grub-core/fs/zfs/zfsinfo.c:322 -msgid "Unrecognized pool state" -msgstr "Unrecognizedway oolpay atestay" - -#. TRANSLATORS: There are undetermined number of virtual devices -#. in a device tree, not just one. -#. -#: grub-core/fs/zfs/zfsinfo.c:332 -msgid "No virtual device tree available" -msgstr "oNay irtualvay eviceday eetray availableway" - -#: grub-core/fs/zfs/zfsinfo.c:431 -msgid "Print ZFS info about DEVICE." -msgstr "intPray ZFSay infoway aboutway EVICEDay." - -#: grub-core/fs/zfs/zfsinfo.c:433 -msgid "FILESYSTEM [VARIABLE]" -msgstr "ILESYSTEMFay [ARIABLEVay]" - -#: grub-core/fs/zfs/zfsinfo.c:434 -msgid "Print ZFS-BOOTFSOBJ or store it into VARIABLE" -msgstr "intPray ZFSay-OOTFSOBJBay orway orestay itway intoway ARIABLEVay" - -#. TRANSLATORS: at this position GRUB waits for the user to do an action -#. in remote debugger, namely to tell it to establish connection. -#: grub-core/gdb/gdb.c:48 -msgid "Now connect the remote debugger, please." -msgstr "owNay onnectcay ethay emoteray ebuggerday, easeplay." - -#. TRANSLATORS: GDB stub is a small part of -#. GDB functionality running on local host -#. which allows remote debugger to -#. connect to it. -#: grub-core/gdb/gdb.c:84 -msgid "Start GDB stub on given port" -msgstr "artStay GDBay ubstay onway ivengay ortpay" - -#. TRANSLATORS: this refers to triggering -#. a breakpoint so that the user will land -#. into GDB. -#: grub-core/gdb/gdb.c:89 -msgid "Break into GDB" -msgstr "eakBray intoway GDBay" - -#: grub-core/gdb/gdb.c:91 -msgid "Stop GDB stub" -msgstr "opStay GDBay ubstay" - -#: grub-core/gettext/gettext.c:85 -msgid "premature end of file" -msgstr "ematurepray endway ofway ilefay" - -#. TRANSLATORS: It refers to passing the string through gettext. -#. So it's "translate" in the same meaning as in what you're -#. doing now. -#. -#: grub-core/gettext/gettext.c:525 -msgid "Translates the string with the current settings." -msgstr "anslatesTray ethay ingstray ithway ethay urrentcay ettingssay." - -#: grub-core/gfxmenu/gui_label.c:186 grub-core/normal/menu_text.c:184 -msgid "" -"Press enter to boot the selected OS, `e' to edit the commands before booting " -"or `c' for a command-line. ESC to return previous menu." -msgstr "" -"essPray enterway otay ootbay ethay electedsay OSway, ‘eway’ otay editway " -"ethay ommandscay eforebay ootingbay orway ‘cay’ orfay away ommandcay-inelay. " -"ESCway otay eturnray eviouspray enumay." - -#: grub-core/gfxmenu/gui_label.c:190 grub-core/normal/menu_text.c:192 -msgid "" -"Press enter to boot the selected OS, `e' to edit the commands before booting " -"or `c' for a command-line." -msgstr "" -"essPray enterway otay ootbay ethay electedsay OSway, ‘eway’ otay editway " -"ethay ommandscay eforebay ootingbay orway ‘cay’ orfay away ommandcay-inelay." - -#: grub-core/gfxmenu/gui_label.c:194 -msgid "enter: boot, `e': options, `c': cmd-line" -msgstr "enterway: ootbay, ‘eway’: optionsway, ‘cay’: cmday-inelay" - -#: grub-core/gfxmenu/gui_progress_bar.c:339 grub-core/normal/menu_text.c:446 -#, c-format -msgid "The highlighted entry will be executed automatically in %ds." -msgstr "" -"eThay ighlightedhay entryway illway ebay executedway automaticallyway inway " -"%ds." - -#. TRANSLATORS: 's' stands for seconds. -#. It's a standalone timeout notification. -#. Please use the short form in your language. -#: grub-core/gfxmenu/gui_progress_bar.c:344 -#, c-format -msgid "%ds remaining." -msgstr "%ds emainingray." - -#. TRANSLATORS: 's' stands for seconds. -#. It's a standalone timeout notification. -#. Please use the shortest form available in you language. -#: grub-core/gfxmenu/gui_progress_bar.c:349 grub-core/normal/menu_text.c:444 -#: grub-core/normal/menu_text.c:462 -#, c-format -msgid "%ds" -msgstr "%ds" - -#: grub-core/gfxmenu/view.c:103 -msgid "GRUB Boot Menu" -msgstr "UBGRay ootBay enuMay" - -#: grub-core/hello/hello.c:36 -msgid "Hello World" -msgstr "elloHay orldWay" - -#: grub-core/hello/hello.c:45 -msgid "Say `Hello World'." -msgstr "aySay ‘elloHay orldWay’." - -#: grub-core/io/gzio.c:409 grub-core/kern/file.c:210 -msgid "attempt to seek outside of the file" -msgstr "attemptway otay eeksay outsideway ofway ethay ilefay" - -#. TRANSLATORS: It's about given file having some strange format, not -#. complete lack of gzip support. -#: grub-core/io/gzio.c:1228 grub-core/io/gzio.c:1237 grub-core/io/gzio.c:1244 -msgid "unsupported gzip format" -msgstr "unsupportedway ipgzay ormatfay" - -#: grub-core/io/lzopio.c:511 -msgid "lzop file corrupted" -msgstr "oplzay ilefay orruptedcay" - -#: grub-core/io/xzio.c:278 -msgid "xz file corrupted or unsupported block options" -msgstr "xzay ilefay orruptedcay orway unsupportedway ockblay optionsway" - -#: grub-core/kern/arm/dl.c:277 grub-core/kern/arm64/dl.c:44 -#: grub-core/kern/i386/dl.c:36 grub-core/kern/ia64/dl.c:41 -#: grub-core/kern/mips/dl.c:48 grub-core/kern/powerpc/dl.c:36 -#: grub-core/kern/riscv/dl.c:47 grub-core/kern/sparc64/dl.c:36 -#: grub-core/kern/x86_64/dl.c:36 grub-core/loader/i386/bsd.c:1445 -#: grub-core/loader/i386/bsdXX.c:49 grub-core/loader/ia64/efi/linux.c:341 -#: grub-core/loader/mips/linux.c:298 grub-core/loader/multiboot.c:232 -#: grub-core/loader/multiboot_elfxx.c:73 -#: grub-core/loader/powerpc/ieee1275/linux.c:294 -#: grub-core/loader/sparc64/ieee1275/linux.c:331 -msgid "invalid arch-dependent ELF magic" -msgstr "invalidway archway-ependentday ELFway agicmay" - -#: grub-core/kern/corecmd.c:178 -msgid "[ENVVAR=VALUE]" -msgstr "[ENVVARway=ALUEVay]" - -#: grub-core/kern/corecmd.c:179 -msgid "Set an environment variable." -msgstr "etSay anway environmentway ariablevay." - -#: grub-core/kern/corecmd.c:183 -msgid "ENVVAR" -msgstr "ENVVARway" - -#: grub-core/kern/corecmd.c:184 -msgid "Remove an environment variable." -msgstr "emoveRay anway environmentway ariablevay." - -#: grub-core/kern/corecmd.c:186 -msgid "[ARG]" -msgstr "[ARGway]" - -#: grub-core/kern/corecmd.c:186 -msgid "List devices or files." -msgstr "istLay evicesday orway ilesfay." - -#: grub-core/kern/corecmd.c:188 -msgid "Insert a module." -msgstr "Insertway away odulemay." - -#: grub-core/kern/disk.c:236 grub-core/net/net.c:1390 -#, c-format -msgid "disk `%s' not found" -msgstr "iskday ‘%s’ otnay oundfay" - -#: grub-core/kern/disk_common.c:27 -msgid "attempt to read or write outside of partition" -msgstr "attemptway otay eadray orway itewray outsideway ofway artitionpay" - -#: grub-core/kern/dl.c:212 grub-core/kern/elf.c:61 grub-core/kern/elf.c:79 -#: grub-core/loader/i386/bsdXX.c:46 grub-core/loader/ia64/efi/linux.c:335 -#: grub-core/loader/multiboot_elfxx.c:69 -msgid "invalid arch-independent ELF magic" -msgstr "invalidway archway-independentway ELFway agicmay" - -#. TRANSLATORS: it refers to the lack of free slots. -#: grub-core/kern/emu/hostdisk.c:208 grub-core/kern/emu/hostdisk.c:466 -msgid "device count exceeds limit" -msgstr "eviceday ountcay exceedsway imitlay" - -#: grub-core/kern/emu/hostdisk.c:342 util/editenv.c:54 util/grub-editenv.c:197 -#: util/grub-fstest.c:191 util/grub-mkfont.c:796 util/misc.c:114 -#: util/misc.c:129 util/setup.c:788 -#, c-format -msgid "cannot write to `%s': %s" -msgstr "annotcay itewray otay ‘%s’: %s" - -#. TRANSLATORS: Only one entry is ignored. However the suggestion -#. is to correct/delete the whole file. -#. device.map is a file indicating which -#. devices are available at boot time. Fedora populated it with -#. entries like (hd0,1) /dev/sda1 which would mean that every -#. partition is a separate disk for BIOS. Such entries were -#. inactive in GRUB due to its bug which is now gone. Without -#. this additional check these entries would be harmful now. -#. -#: grub-core/kern/emu/hostdisk.c:503 -#, c-format -msgid "" -"the device.map entry `%s' is invalid. Ignoring it. Please correct or delete " -"your device.map" -msgstr "" -"ethay eviceday.apmay entryway ‘%s’ isway invalidway. Ignoringway itway. " -"easePlay orrectcay orway eleteday your eviceday.apmay" - -#. TRANSLATORS: device.map is a filename. Not to be translated. -#. device.map specifies disk correspondance overrides. Previously -#. one could create any kind of device name with this. Due to -#. some problems we decided to limit it to just a handful -#. possibilities. -#: grub-core/kern/emu/hostdisk.c:555 -#, c-format -msgid "" -"the drive name `%s' in device.map is incorrect. Using %s instead. Please use " -"the form [hfc]d[0-9]* (E.g. `hd0' or `cd')" -msgstr "" -"ethay ivedray amenay ‘%s’ inway eviceday.apmay isway incorrectway. Usingway " -"%s insteadway. easePlay useway ethay ormfay [hfcay]day[0-9]* (Eway.gay. " -"‘hday0’ orway ‘cday’)" - -#: grub-core/kern/emu/hostfs.c:76 grub-core/kern/emu/hostfs.c:109 -#, c-format -msgid "can't open `%s': %s" -msgstr "ancay'tay openway ‘%s’: %s" - -#: grub-core/kern/emu/main.c:99 util/grub-fstest.c:516 util/grub-mount.c:452 -msgid "DEVICE_NAME" -msgstr "EVICEDay_AMENay" - -#: grub-core/kern/emu/main.c:99 grub-core/loader/i386/bsd.c:136 -#: grub-core/loader/i386/bsd.c:169 util/grub-fstest.c:516 util/grub-mount.c:452 -msgid "Set root device." -msgstr "etSay ootray eviceday." - -#. TRANSLATORS: There are many devices in device map. -#: grub-core/kern/emu/main.c:102 util/grub-probe.c:733 util/grub-setup.c:85 -#, c-format -msgid "use FILE as the device map [default=%s]" -msgstr "useway ILEFay asway ethay eviceday apmay [efaultday=%s]" - -#. TRANSLATORS: There are many devices in device map. -#: grub-core/kern/emu/main.c:105 -msgid "use FILE as memdisk" -msgstr "useway ILEFay asway emdiskmay" - -#: grub-core/kern/emu/main.c:107 util/grub-setup.c:83 -#, c-format -msgid "use GRUB files in the directory DIR [default=%s]" -msgstr "useway UBGRay ilesfay inway ethay irectoryday IRDay [efaultday=%s]" - -#: grub-core/kern/emu/main.c:108 include/grub/util/install.h:67 -#: util/grub-editenv.c:58 util/grub-fstest.c:525 util/grub-glue-efi.c:58 -#: util/grub-macbless.c:104 util/grub-mkfont.c:962 util/grub-mkimage.c:84 -#: util/grub-mklayout.c:56 util/grub-mount.c:458 util/grub-probe.c:735 -#: util/grub-render-label.c:74 util/grub-script-check.c:52 util/grub-setup.c:90 -#: util/grub-syslinux2cfg.c:78 -msgid "print verbose messages." -msgstr "intpray erbosevay essagesmay." - -#: grub-core/kern/emu/main.c:109 grub-core/lib/gnulib/argp-parse.c:85 -msgid "SECS" -msgstr "ECSSay" - -#: grub-core/kern/emu/main.c:109 -msgid "wait until a debugger will attach" -msgstr "aitway untilway away ebuggerday illway attachway" - -#: grub-core/kern/emu/main.c:171 util/grub-macbless.c:143 -#: util/grub-mkrelpath.c:61 util/grub-probe.c:874 util/grub-script-check.c:75 -#: util/grub-setup.c:203 -#, c-format -msgid "Unknown extra argument `%s'." -msgstr "Unknownway extraway argumentway ‘%s’." - -#: grub-core/kern/emu/main.c:185 -msgid "GRUB emulator." -msgstr "UBGRay emulatorway." - -#: grub-core/kern/emu/main.c:213 util/grub-editenv.c:262 -#: util/grub-glue-efi.c:110 util/grub-macbless.c:173 util/grub-mkfont.c:1177 -#: util/grub-mkimage.c:266 util/grub-mklayout.c:494 -#: util/grub-mkpasswd-pbkdf2.c:132 util/grub-mkrelpath.c:96 -#: util/grub-probe.c:863 util/grub-render-label.c:152 -#: util/grub-script-check.c:160 util/grub-setup.c:262 -#: util/grub-syslinux2cfg.c:163 -msgid "Error in parsing command line arguments\n" -msgstr "Errorway inway arsingpay ommandcay inelay argumentsway\n" - -#. TRANSLATORS: In this case GRUB tells user what he has to do. -#: grub-core/kern/emu/main.c:248 -#, c-format -msgid "Run `gdb %s %d', and set ARGS.HOLD to zero.\n" -msgstr "unRay ‘gdbay %s %d’, andway etsay ARGSway.OLDHay otay erozay.\n" - -#: grub-core/kern/emu/misc.c:48 -#, c-format -msgid "%s: warning:" -msgstr "%s: arningway:" - -#: grub-core/kern/emu/misc.c:64 -#, c-format -msgid "%s: info:" -msgstr "%s: infoway:" - -#: grub-core/kern/emu/misc.c:79 util/grub-fstest.c:567 util/grub-fstest.c:576 -#: util/grub-mount.c:497 util/grub-mount.c:505 -#, c-format -msgid "%s: error:" -msgstr "%s: errorway:" - -#: grub-core/kern/emu/misc.c:176 -#, c-format -msgid "file `%s' is too big" -msgstr "ilefay ‘%s’ isway ootay igbay" - -#: grub-core/kern/fs.c:120 -msgid "unknown filesystem" -msgstr "unknownway ilesystemfay" - -#: grub-core/kern/mips/arc/init.c:273 grub-core/kern/mips/loongson/init.c:301 -msgid "Shutdown failed" -msgstr "utdownShay ailedfay" - -#: grub-core/kern/mips/arc/init.c:285 -msgid "Exit failed" -msgstr "Exitway ailedfay" - -#: grub-core/kern/misc.c:351 grub-core/kern/misc.c:408 include/grub/misc.h:269 -#: include/grub/misc.h:278 -msgid "overflow is detected" -msgstr "overflowway isway etectedday" - -#: grub-core/kern/partition.c:51 grub-core/partmap/bsdlabel.c:108 -#, c-format -msgid "Discarding improperly nested partition (%s,%s,%s%d)" -msgstr "iscardingDay improperlyway estednay artitionpay (%s,%s,%s%d)" - -#: grub-core/kern/rescue_parser.c:73 util/grub-editenv.c:292 -#, c-format -msgid "Unknown command `%s'.\n" -msgstr "Unknownway ommandcay ‘%s’.\n" - -#: grub-core/lib/arg.c:31 -msgid "Display this help and exit." -msgstr "isplayDay isthay elphay andway exitway." - -#: grub-core/lib/arg.c:33 -msgid "Display the usage of this command and exit." -msgstr "isplayDay ethay usageway ofway isthay ommandcay andway exitway." - -#: grub-core/lib/arg.c:362 -#, c-format -msgid "missing mandatory option for `%s'" -msgstr "issingmay andatorymay optionway orfay ‘%s’" - -#: grub-core/lib/arg.c:384 -#, c-format -msgid "the argument `%s' requires an integer" -msgstr "ethay argumentway ‘%s’ equiresray anway integerway" - -#: grub-core/lib/arg.c:407 -#, c-format -msgid "" -"a value was assigned to the argument `%s' while it doesn't require an " -"argument" -msgstr "" -"away aluevay asway assignedway otay ethay argumentway ‘%s’ ilewhay itway " -"oesnday'tay equireray anway argumentway" - -#: grub-core/lib/backtrace.c:64 -msgid "Print backtrace." -msgstr "intPray acktracebay." - -#: grub-core/lib/gnulib/argp-help.c:149 -#, c-format -msgid "ARGP_HELP_FMT: %s value is less than or equal to %s" -msgstr "" -"ARGPway_ELPHay_FMTay: %s aluevay isway esslay anthay orway equalway otay %s" - -#: grub-core/lib/gnulib/argp-help.c:225 -#, c-format -msgid "%.*s: ARGP_HELP_FMT parameter requires a value" -msgstr "%.*say: ARGPway_ELPHay_FMTay arameterpay equiresray away aluevay" - -#: grub-core/lib/gnulib/argp-help.c:235 -#, c-format -msgid "%.*s: Unknown ARGP_HELP_FMT parameter" -msgstr "%.*say: Unknownway ARGPway_ELPHay_FMTay arameterpay" - -#: grub-core/lib/gnulib/argp-help.c:248 -#, c-format -msgid "Garbage in ARGP_HELP_FMT: %s" -msgstr "arbageGay inway ARGPway_ELPHay_FMTay: %s" - -#: grub-core/lib/gnulib/argp-help.c:1229 -msgid "" -"Mandatory or optional arguments to long options are also mandatory or " -"optional for any corresponding short options." -msgstr "" -"andatoryMay orway optionalway argumentsway otay onglay optionsway areway " -"alsoway andatorymay orway optionalway orfay anyway orrespondingcay ortshay " -"optionsway." - -#: grub-core/lib/gnulib/argp-help.c:1620 -msgid " or: " -msgstr " orway: " - -#: grub-core/lib/gnulib/argp-help.c:1632 -msgid " [OPTION...]" -msgstr " [OPTIONway...]" - -#: grub-core/lib/gnulib/argp-help.c:1659 -#, c-format -msgid "Try '%s --help' or '%s --usage' for more information.\n" -msgstr "" -"yTray ‘%s --elphay’ orway ‘%s --usageway’ orfay oremay informationway.\n" - -#: grub-core/lib/gnulib/argp-help.c:1687 -#, c-format -msgid "Report bugs to %s.\n" -msgstr "eportRay ugsbay otay %s.\n" - -#: grub-core/lib/gnulib/argp-help.c:1888 grub-core/lib/gnulib/error.c:195 -msgid "Unknown system error" -msgstr "Unknownway ystemsay errorway" - -#: grub-core/lib/gnulib/argp-parse.c:81 -msgid "give this help list" -msgstr "ivegay isthay elphay istlay" - -#: grub-core/lib/gnulib/argp-parse.c:82 -msgid "give a short usage message" -msgstr "ivegay away ortshay usageway essagemay" - -#: grub-core/lib/gnulib/argp-parse.c:83 util/grub-mkfont.c:946 -msgid "NAME" -msgstr "AMENay" - -#: grub-core/lib/gnulib/argp-parse.c:84 -msgid "set the program name" -msgstr "etsay ethay ogrampray amenay" - -#: grub-core/lib/gnulib/argp-parse.c:86 -msgid "hang for SECS seconds (default 3600)" -msgstr "anghay orfay ECSSay econdssay (efaultday 3600)" - -#: grub-core/lib/gnulib/argp-parse.c:143 -msgid "print program version" -msgstr "intpray ogrampray ersionvay" - -#: grub-core/lib/gnulib/argp-parse.c:160 -msgid "(PROGRAM ERROR) No version known!?" -msgstr "(OGRAMPRay ERRORway) oNay ersionvay ownknay!?" - -#: grub-core/lib/gnulib/argp-parse.c:613 -#, c-format -msgid "%s: Too many arguments\n" -msgstr "%s: ooTay anymay argumentsway\n" - -#: grub-core/lib/gnulib/argp-parse.c:759 -msgid "(PROGRAM ERROR) Option should have been recognized!?" -msgstr "(OGRAMPRay ERRORway) Optionway ouldshay avehay eenbay ecognizedray!?" - -#: grub-core/lib/gnulib/getopt.c:278 -#, c-format -msgid "%s: option '%s%s' is ambiguous\n" -msgstr "%s: optionway ‘%s%s’ isway ambiguousway\n" - -#: grub-core/lib/gnulib/getopt.c:284 -#, c-format -msgid "%s: option '%s%s' is ambiguous; possibilities:" -msgstr "%s: optionway ‘%s%s’ isway ambiguousway; ossibilitiespay:" - -#: grub-core/lib/gnulib/getopt.c:319 -#, c-format -msgid "%s: unrecognized option '%s%s'\n" -msgstr "%s: unrecognizedway optionway ‘%s%s’\n" - -#: grub-core/lib/gnulib/getopt.c:345 -#, c-format -msgid "%s: option '%s%s' doesn't allow an argument\n" -msgstr "%s: optionway ‘%s%s’ oesnday'tay allowway anway argumentway\n" - -#: grub-core/lib/gnulib/getopt.c:360 -#, c-format -msgid "%s: option '%s%s' requires an argument\n" -msgstr "%s: optionway ‘%s%s’ equiresray anway argumentway\n" - -#: grub-core/lib/gnulib/getopt.c:621 -#, c-format -msgid "%s: invalid option -- '%c'\n" -msgstr "%s: invalidway optionway -- ‘%c’\n" - -#: grub-core/lib/gnulib/getopt.c:636 grub-core/lib/gnulib/getopt.c:682 -#, c-format -msgid "%s: option requires an argument -- '%c'\n" -msgstr "%s: optionway equiresray anway argumentway -- ‘%c’\n" - -#: grub-core/lib/gnulib/openat-die.c:38 -#, c-format -msgid "unable to record current working directory" -msgstr "unableway otay ecordray urrentcay orkingway irectoryday" - -#: grub-core/lib/gnulib/openat-die.c:57 -#, c-format -msgid "failed to return to initial working directory" -msgstr "ailedfay otay eturnray otay initialway orkingway irectoryday" - -#: grub-core/lib/gnulib/regcomp.c:135 grub-core/osdep/aros/hostdisk.c:523 -msgid "Success" -msgstr "uccessSay" - -#: grub-core/lib/gnulib/regcomp.c:138 -msgid "No match" -msgstr "oNay atchmay" - -#: grub-core/lib/gnulib/regcomp.c:141 -msgid "Invalid regular expression" -msgstr "Invalidway egularray expressionway" - -#: grub-core/lib/gnulib/regcomp.c:144 -msgid "Invalid collation character" -msgstr "Invalidway ollationcay aracterchay" - -#: grub-core/lib/gnulib/regcomp.c:147 -msgid "Invalid character class name" -msgstr "Invalidway aracterchay assclay amenay" - -#: grub-core/lib/gnulib/regcomp.c:150 -msgid "Trailing backslash" -msgstr "ailingTray ackslashbay" - -#: grub-core/lib/gnulib/regcomp.c:153 -msgid "Invalid back reference" -msgstr "Invalidway ackbay eferenceray" - -#: grub-core/lib/gnulib/regcomp.c:156 -msgid "Unmatched [, [^, [:, [., or [=" -msgstr "Unmatchedway [, [^, [:, [., orway [=" - -#: grub-core/lib/gnulib/regcomp.c:159 -msgid "Unmatched ( or \\(" -msgstr "Unmatchedway ( orway \\(" - -#: grub-core/lib/gnulib/regcomp.c:162 -msgid "Unmatched \\{" -msgstr "Unmatchedway \\{" - -#: grub-core/lib/gnulib/regcomp.c:165 -msgid "Invalid content of \\{\\}" -msgstr "Invalidway ontentcay ofway \\{\\}" - -#: grub-core/lib/gnulib/regcomp.c:168 -msgid "Invalid range end" -msgstr "Invalidway angeray endway" - -#: grub-core/lib/gnulib/regcomp.c:171 -msgid "Memory exhausted" -msgstr "emoryMay exhaustedway" - -#: grub-core/lib/gnulib/regcomp.c:174 -msgid "Invalid preceding regular expression" -msgstr "Invalidway ecedingpray egularray expressionway" - -#: grub-core/lib/gnulib/regcomp.c:177 -msgid "Premature end of regular expression" -msgstr "ematurePray endway ofway egularray expressionway" - -#: grub-core/lib/gnulib/regcomp.c:180 -msgid "Regular expression too big" -msgstr "egularRay expressionway ootay igbay" - -#: grub-core/lib/gnulib/regcomp.c:183 -msgid "Unmatched ) or \\)" -msgstr "Unmatchedway ) orway \\)" - -#: grub-core/lib/gnulib/regcomp.c:531 -msgid "unknown regexp error" -msgstr "unknownway egexpray errorway" - -#: grub-core/lib/gnulib/regcomp.c:676 -msgid "No previous regular expression" -msgstr "oNay eviouspray egularray expressionway" - -#: grub-core/lib/i386/halt.c:77 -msgid "GRUB doesn't know how to halt this machine yet!" -msgstr "UBGRay oesnday'tay owknay owhay otay althay isthay achinemay yet!" - -#: grub-core/lib/legacy_parse.c:75 -msgid "Default server is ${net_default_server}" -msgstr "efaultDay erversay isway ${etnay_efaultday_erversay}" - -#: grub-core/lib/legacy_parse.c:844 grub-core/video/colors.c:296 -#: grub-core/video/colors.c:305 grub-core/video/colors.c:311 -#: grub-core/video/colors.c:327 util/render-label.c:84 util/render-label.c:98 -#, c-format -msgid "invalid color specification `%s'" -msgstr "invalidway olorcay ecificationspay ‘%s’" - -#: grub-core/lib/mips/arc/reboot.c:32 grub-core/lib/mips/loongson/reboot.c:61 -msgid "Reboot failed" -msgstr "ebootRay ailedfay" - -#: grub-core/lib/random.c:113 -msgid "[LENGTH]" -msgstr "[ENGTHLay]" - -#: grub-core/lib/random.c:114 -msgid "Hexdump random data." -msgstr "exdumpHay andomray ataday." - -#: grub-core/loader/arm/linux.c:242 -msgid "device tree must be supplied (see `devicetree' command)" -msgstr "" -"eviceday eetray ustmay ebay uppliedsay (eesay ‘evicetreeday’ ommandcay)" - -#: grub-core/loader/arm/linux.c:334 -msgid "invalid zImage" -msgstr "invalidway Imagezay" - -#: grub-core/loader/arm/linux.c:450 grub-core/loader/efi/fdt.c:144 -msgid "invalid device tree" -msgstr "invalidway eviceday eetray" - -#: grub-core/loader/arm/linux.c:493 grub-core/loader/arm64/linux.c:383 -#: grub-core/loader/i386/linux.c:1125 grub-core/loader/i386/pc/linux.c:479 -#: grub-core/loader/i386/xen.c:962 grub-core/loader/i386/xen.c:964 -#: grub-core/loader/ia64/efi/linux.c:591 grub-core/loader/mips/linux.c:501 -#: grub-core/loader/powerpc/ieee1275/linux.c:383 -#: grub-core/loader/riscv/linux.c:50 -#: grub-core/loader/sparc64/ieee1275/linux.c:511 -msgid "Load Linux." -msgstr "oadLay inuxLay." - -#: grub-core/loader/arm/linux.c:495 grub-core/loader/arm64/linux.c:385 -#: grub-core/loader/i386/linux.c:1127 grub-core/loader/i386/pc/linux.c:482 -#: grub-core/loader/i386/xen.c:966 grub-core/loader/ia64/efi/linux.c:594 -#: grub-core/loader/mips/linux.c:503 -#: grub-core/loader/powerpc/ieee1275/linux.c:385 -#: grub-core/loader/riscv/linux.c:52 -#: grub-core/loader/sparc64/ieee1275/linux.c:513 -msgid "Load initrd." -msgstr "oadLay initrdway." - -#. TRANSLATORS: DTB stands for device tree blob. -#: grub-core/loader/arm/linux.c:498 grub-core/loader/efi/fdt.c:169 -msgid "Load DTB file." -msgstr "oadLay DTBay ilefay." - -#: grub-core/loader/arm64/linux.c:59 -msgid "" -"plain image kernel not supported - rebuild with CONFIG_(U)EFI_STUB enabled" -msgstr "" -"ainplay imageway ernelkay otnay upportedsay - ebuildray ithway " -"ONFIGCay_(Uway)EFIway_UBSTay enabledway" - -#: grub-core/loader/arm64/xen_boot.c:156 -msgid "failed to get FDT" -msgstr "ailedfay otay etgay FDTay" - -#: grub-core/loader/arm64/xen_boot.c:418 -msgid "you need to load the Xen Hypervisor first" -msgstr "you eednay otay oadlay ethay enXay ypervisorHay irstfay" - -#: grub-core/loader/arm64/xen_boot.c:516 -msgid "Load a xen hypervisor." -msgstr "oadLay away enxay ypervisorhay." - -#: grub-core/loader/arm64/xen_boot.c:519 -msgid "Load a xen module." -msgstr "oadLay away enxay odulemay." - -#: grub-core/loader/efi/appleloader.c:231 -msgid "[OPTS]" -msgstr "[OPTSway]" - -#. TRANSLATORS: This command is used on EFI to -#. switch to BIOS mode and boot the OS requiring -#. BIOS. -#: grub-core/loader/efi/appleloader.c:235 -msgid "Boot BIOS-based system." -msgstr "ootBay IOSBay-asedbay ystemsay." - -#: grub-core/loader/efi/chainloader.c:421 -#: grub-core/loader/i386/pc/chainloader.c:303 -msgid "Load another boot loader." -msgstr "oadLay anotherway ootbay oaderlay." - -#: grub-core/loader/i386/bsd.c:103 -msgid "Display output on all consoles." -msgstr "isplayDay outputway onway allway onsolescay." - -#: grub-core/loader/i386/bsd.c:104 grub-core/loader/i386/bsd.c:138 -#: grub-core/loader/i386/bsd.c:171 -msgid "Use serial console." -msgstr "Useway erialsay onsolecay." - -#: grub-core/loader/i386/bsd.c:105 grub-core/loader/i386/bsd.c:131 -#: grub-core/loader/i386/bsd.c:159 -msgid "Ask for file name to reboot from." -msgstr "Askway orfay ilefay amenay otay ebootray omfray." - -#: grub-core/loader/i386/bsd.c:106 -msgid "Use CD-ROM as root." -msgstr "Useway CDay-OMRay asway ootray." - -#: grub-core/loader/i386/bsd.c:107 -msgid "Invoke user configuration routing." -msgstr "Invokeway userway onfigurationcay outingray." - -#: grub-core/loader/i386/bsd.c:108 grub-core/loader/i386/bsd.c:135 -#: grub-core/loader/i386/bsd.c:162 -msgid "Enter in KDB on boot." -msgstr "Enterway inway KDBay onway ootbay." - -#: grub-core/loader/i386/bsd.c:109 -msgid "Use GDB remote debugger instead of DDB." -msgstr "Useway GDBay emoteray ebuggerday insteadway ofway DDBay." - -#: grub-core/loader/i386/bsd.c:110 -msgid "Disable all boot output." -msgstr "isableDay allway ootbay outputway." - -#: grub-core/loader/i386/bsd.c:112 -msgid "Wait for keypress after every line of output." -msgstr "aitWay orfay eypresskay afterway everyway inelay ofway outputway." - -#: grub-core/loader/i386/bsd.c:114 -msgid "Use compiled-in root device." -msgstr "Useway ompiledcay-inway ootray eviceday." - -#: grub-core/loader/i386/bsd.c:115 grub-core/loader/i386/bsd.c:134 -#: grub-core/loader/i386/bsd.c:165 -msgid "Boot into single mode." -msgstr "ootBay intoway inglesay odemay." - -#: grub-core/loader/i386/bsd.c:116 grub-core/loader/i386/bsd.c:166 -msgid "Boot with verbose messages." -msgstr "ootBay ithway erbosevay essagesmay." - -#: grub-core/loader/i386/bsd.c:132 grub-core/loader/i386/bsd.c:160 -msgid "Don't reboot, just halt." -msgstr "onDay'tay ebootray, ustjay althay." - -#: grub-core/loader/i386/bsd.c:133 grub-core/loader/i386/bsd.c:161 -msgid "Change configured devices." -msgstr "angeChay onfiguredcay evicesday." - -#. TRANSLATORS: "com" is static and not to be translated. It refers to -#. serial ports e.g. com1. -#. -#: grub-core/loader/i386/bsd.c:142 -msgid "comUNIT[,SPEED]" -msgstr "omUNITcay[,EEDSPay]" - -#: grub-core/loader/i386/bsd.c:157 -msgid "Disable SMP." -msgstr "isableDay SMPay." - -#: grub-core/loader/i386/bsd.c:158 -msgid "Disable ACPI." -msgstr "isableDay ACPIway." - -#: grub-core/loader/i386/bsd.c:164 -msgid "Don't display boot diagnostic messages." -msgstr "onDay'tay isplayday ootbay iagnosticday essagesmay." - -#: grub-core/loader/i386/bsd.c:167 -msgid "Boot with debug messages." -msgstr "ootBay ithway ebugday essagesmay." - -#: grub-core/loader/i386/bsd.c:168 -msgid "Suppress normal output (warnings remain)." -msgstr "uppressSay ormalnay outputway (arningsway emainray)." - -#. TRANSLATORS: "com" is static and not to be translated. It refers to -#. serial ports e.g. com1. -#. -#: grub-core/loader/i386/bsd.c:175 -msgid "[ADDR|comUNIT][,SPEED]" -msgstr "[ADDRway|omUNITcay][,EEDSPay]" - -#: grub-core/loader/i386/bsd.c:489 grub-core/loader/i386/bsd.c:555 -msgid "name" -msgstr "amenay" - -#: grub-core/loader/i386/bsd.c:489 grub-core/loader/i386/bsd.c:555 -msgid "type" -msgstr "ypetay" - -#: grub-core/loader/i386/bsd.c:489 grub-core/loader/i386/bsd.c:555 -msgid "addr" -msgstr "addrway" - -#: grub-core/loader/i386/bsd.c:490 grub-core/loader/i386/bsd.c:556 -msgid "size" -msgstr "izesay" - -#: grub-core/loader/i386/bsd.c:1147 grub-core/loader/i386/linux.c:466 -#: grub-core/loader/i386/xnu.c:1030 -msgid "Booting in blind mode" -msgstr "ootingBay inway indblay odemay" - -#: grub-core/loader/i386/bsd.c:2137 -msgid "Load kernel of FreeBSD." -msgstr "oadLay ernelkay ofway eeBSDFray." - -#: grub-core/loader/i386/bsd.c:2140 -msgid "Load kernel of OpenBSD." -msgstr "oadLay ernelkay ofway OpenBSDway." - -#: grub-core/loader/i386/bsd.c:2143 -msgid "Load kernel of NetBSD." -msgstr "oadLay ernelkay ofway etBSDNay." - -#: grub-core/loader/i386/bsd.c:2147 -msgid "Load FreeBSD env." -msgstr "oadLay eeBSDFray envway." - -#: grub-core/loader/i386/bsd.c:2150 -msgid "Load FreeBSD kernel module." -msgstr "oadLay eeBSDFray ernelkay odulemay." - -#: grub-core/loader/i386/bsd.c:2153 -msgid "Load NetBSD kernel module." -msgstr "oadLay etBSDNay ernelkay odulemay." - -#: grub-core/loader/i386/bsd.c:2156 -msgid "Load NetBSD kernel module (ELF)." -msgstr "oadLay etBSDNay ernelkay odulemay (ELFway)." - -#: grub-core/loader/i386/bsd.c:2159 -msgid "Load FreeBSD kernel module (ELF)." -msgstr "oadLay eeBSDFray ernelkay odulemay (ELFway)." - -#. TRANSLATORS: ramdisk isn't identifier, -#. it can be translated. -#: grub-core/loader/i386/bsd.c:2165 -msgid "Load kOpenBSD ramdisk." -msgstr "oadLay OpenBSDkay amdiskray." - -#. TRANSLATORS: "payload" is a term used -#. by coreboot and must be translated in -#. sync with coreboot. If unsure, -#. let it untranslated. -#: grub-core/loader/i386/coreboot/chainloader.c:510 -msgid "Load another coreboot payload" -msgstr "oadLay anotherway orebootcay ayloadpay" - -#: grub-core/loader/i386/linux.c:876 -msgid "Legacy `ask' parameter no longer supported." -msgstr "egacyLay ‘askway’ arameterpay onay ongerlay upportedsay." - -#: grub-core/loader/i386/linux.c:892 grub-core/loader/i386/linux.c:902 -#: grub-core/loader/i386/linux.c:932 -#, c-format -msgid "%s is deprecated. Use set gfxpayload=%s before linux command instead.\n" -msgstr "" -"%s isway eprecatedday. Useway etsay ayloadgfxpay=%s eforebay inuxlay " -"ommandcay insteadway.\n" - -#. TRANSLATORS: "x" has to be entered in, like an identifier, -#. so please don't use better Unicode codepoints. -#: grub-core/loader/i386/linux.c:915 -#, c-format -msgid "" -"%s is deprecated. VGA mode %d isn't recognized. Use set " -"gfxpayload=WIDTHxHEIGHT[xDEPTH] before linux command instead.\n" -msgstr "" -"%s isway eprecatedday. AVGay odemay %d isnway'tay ecognizedray. Useway etsay " -"ayloadgfxpay=IDTHxHEIGHTWay[EPTHxDay] eforebay inuxlay ommandcay " -"insteadway.\n" - -#: grub-core/loader/i386/pc/chainloader.c:302 -msgid "[--force|--bpb] FILE" -msgstr "[--orcefay|--bpbay] ILEFay" - -#: grub-core/loader/i386/pc/freedos.c:148 util/setup.c:293 -#, c-format -msgid "the size of `%s' is too large" -msgstr "ethay izesay ofway ‘%s’ isway ootay argelay" - -#: grub-core/loader/i386/pc/freedos.c:183 -msgid "Load FreeDOS kernel.sys." -msgstr "oadLay eeDOSFray ernelkay.yssay." - -#: grub-core/loader/i386/pc/ntldr.c:155 -msgid "Load NTLDR or BootMGR." -msgstr "oadLay NTLDRay orway ootMGRBay." - -#. TRANSLATORS: it's about guessing which GRUB disk -#. is which Plan9 disk. If your language has no -#. word "mapping" you can use another word which -#. means that the GRUBDEVICE and PLAN9DEVICE are -#. actually the same device, just named differently -#. in OS and GRUB. -#: grub-core/loader/i386/pc/plan9.c:59 -msgid "Override guessed mapping of Plan9 devices." -msgstr "Overrideway uessedgay appingmay ofway anPlay9 evicesday." - -#: grub-core/loader/i386/pc/plan9.c:60 -msgid "GRUBDEVICE=PLAN9DEVICE" -msgstr "UBDEVICEGRay=ANPLay9DEVICE" - -#: grub-core/loader/i386/pc/plan9.c:599 -msgid "KERNEL ARGS" -msgstr "ERNELKay ARGSway" - -#: grub-core/loader/i386/pc/plan9.c:599 -msgid "Load Plan9 kernel." -msgstr "oadLay anPlay9 ernelkay." - -#: grub-core/loader/i386/pc/pxechainloader.c:161 -msgid "Load a PXE image." -msgstr "oadLay away EPXay imageway." - -#: grub-core/loader/i386/pc/truecrypt.c:226 -msgid "Load Truecrypt ISO." -msgstr "oadLay uecryptTray ISOway." - -#: grub-core/loader/i386/xen.c:781 grub-core/loader/i386/xen.c:865 -msgid "initrd already loaded" -msgstr "initrdway alreadyway oadedlay" - -#: grub-core/loader/i386/xen.c:968 -msgid "Load module." -msgstr "oadLay odulemay." - -#: grub-core/loader/i386/xnu.c:1003 -msgid "Press any key to launch xnu" -msgstr "essPray anyway eykay otay aunchlay uxnay" - -#. TRANSLATORS: `device-properties' -#. is a variable name, -#. not a program. -#: grub-core/loader/i386/xnu.c:1159 -msgid "Load `device-properties' dump." -msgstr "oadLay ‘eviceday-opertiespray’ umpday." - -#: grub-core/loader/ia64/efi/linux.c:124 -msgid "Could not locate FPSWA driver" -msgstr "ouldCay otnay ocatelay AFPSWay iverdray" - -#: grub-core/loader/ia64/efi/linux.c:132 -msgid "FPSWA protocol wasn't able to find the interface" -msgstr "AFPSWay otocolpray asnway'tay ableway otay indfay ethay interfaceway" - -#: grub-core/loader/ia64/efi/linux.c:580 -msgid "No FPSWA found" -msgstr "oNay AFPSWay oundfay" - -#: grub-core/loader/ia64/efi/linux.c:582 -#, c-format -msgid "FPSWA revision: %x\n" -msgstr "AFPSWay evisionray: %x\n" - -#: grub-core/loader/ia64/efi/linux.c:591 -msgid "FILE [ARGS...]" -msgstr "ILEFay [ARGSway...]" - -#: grub-core/loader/ia64/efi/linux.c:597 -msgid "Display FPSWA version." -msgstr "isplayDay AFPSWay ersionvay." - -#: grub-core/loader/multiboot.c:248 -msgid "WARNING: no console will be available to OS" -msgstr "ARNINGWay: onay onsolecay illway ebay availableway otay OSway" - -#: grub-core/loader/multiboot.c:450 -msgid "Load a multiboot 2 kernel." -msgstr "oadLay away ultibootmay 2 ernelkay." - -#: grub-core/loader/multiboot.c:453 -msgid "Load a multiboot 2 module." -msgstr "oadLay away ultibootmay 2 odulemay." - -#: grub-core/loader/multiboot.c:456 -msgid "Load a multiboot kernel." -msgstr "oadLay away ultibootmay ernelkay." - -#: grub-core/loader/multiboot.c:459 -msgid "Load a multiboot module." -msgstr "oadLay away ultibootmay odulemay." - -#: grub-core/loader/riscv/linux.c:30 grub-core/loader/riscv/linux.c:40 -msgid "Linux not supported yet" -msgstr "inuxLay otnay upportedsay yet" - -#: grub-core/loader/xnu.c:1416 grub-core/term/gfxterm_background.c:45 -msgid "Background image mode." -msgstr "ackgroundBay imageway odemay." - -#. TRANSLATORS: This refers to background image mode (stretched or -#. in left-top corner). Note that GRUB will accept only original -#. keywords stretch and normal, not the translated ones. -#. So please put both in translation -#. e.g. stretch(=%STRETCH%)|normal(=%NORMAL%). -#. The percents mark the translated version. Since many people -#. may not know the word stretch or normal I recommend -#. putting the translation either here or in "Background image mode." -#. string. -#: grub-core/loader/xnu.c:1416 grub-core/term/gfxterm_background.c:55 -msgid "stretch|normal" -msgstr "etchstray|ormalnay" - -#: grub-core/loader/xnu.c:1482 -msgid "Load XNU image." -msgstr "oadLay UXNay imageway." - -#: grub-core/loader/xnu.c:1484 -msgid "Load 64-bit XNU image." -msgstr "oadLay 64-itbay UXNay imageway." - -#: grub-core/loader/xnu.c:1486 -msgid "Load XNU extension package." -msgstr "oadLay UXNay extensionway ackagepay." - -#: grub-core/loader/xnu.c:1488 -msgid "Load XNU extension." -msgstr "oadLay UXNay extensionway." - -#. TRANSLATORS: OSBundleRequired is a -#. variable name in xnu extensions -#. manifests. It behaves mostly like -#. GNU/Linux runlevels. -#. -#: grub-core/loader/xnu.c:1495 -msgid "DIRECTORY [OSBundleRequired]" -msgstr "IRECTORYDay [OSBundleRequiredway]" - -#. TRANSLATORS: There are many extensions -#. in extension directory. -#: grub-core/loader/xnu.c:1498 -msgid "Load XNU extension directory." -msgstr "oadLay UXNay extensionway irectoryday." - -#. TRANSLATORS: ramdisk here isn't identifier. It can be translated. -#: grub-core/loader/xnu.c:1501 -msgid "Load XNU ramdisk. It will be available in OS as md0." -msgstr "" -"oadLay UXNay amdiskray. Itway illway ebay availableway inway OSway asway " -"mday0." - -#: grub-core/loader/xnu.c:1505 -msgid "Load a splash image for XNU." -msgstr "oadLay away ashsplay imageway orfay UXNay." - -#: grub-core/loader/xnu.c:1510 -msgid "Load an image of hibernated XNU." -msgstr "oadLay anway imageway ofway ibernatedhay UXNay." - -#: grub-core/mmap/mmap.c:538 -msgid "ADDR1,MASK1[,ADDR2,MASK2[,...]]" -msgstr "ADDRway1,ASKMay1[,ADDRway2,ASKMay2[,...]]" - -#: grub-core/mmap/mmap.c:539 -msgid "Declare memory regions as faulty (badram)." -msgstr "eclareDay emorymay egionsray asway aultyfay (adrambay)." - -#: grub-core/mmap/mmap.c:541 -msgid "FROM[K|M|G] TO[K|M|G]" -msgstr "OMFRay[Kay|May|Gay] OTay[Kay|May|Gay]" - -#: grub-core/mmap/mmap.c:542 -msgid "Remove any memory regions in specified range." -msgstr "emoveRay anyway emorymay egionsray inway ecifiedspay angeray." - -#: grub-core/net/bootp.c:653 -msgid "four arguments expected" -msgstr "ourfay argumentsway expectedway" - -#: grub-core/net/bootp.c:661 grub-core/net/net.c:1155 -#, c-format -msgid "unrecognised network interface `%s'" -msgstr "unrecognisedway etworknay interfaceway ‘%s’" - -#: grub-core/net/bootp.c:664 -msgid "no DHCP info found" -msgstr "onay DHCPay infoway oundfay" - -#: grub-core/net/bootp.c:674 -msgid "no DHCP options found" -msgstr "onay DHCPay optionsway oundfay" - -#: grub-core/net/bootp.c:682 -msgid "invalid DHCP option code" -msgstr "invalidway DHCPay optionway odecay" - -#: grub-core/net/bootp.c:686 -#, c-format -msgid "no DHCP option %u found" -msgstr "onay DHCPay optionway %u oundfay" - -#: grub-core/net/bootp.c:743 -#, c-format -msgid "unrecognised DHCP option format specification `%s'" -msgstr "unrecognisedway DHCPay optionway ormatfay ecificationspay ‘%s’" - -#: grub-core/net/bootp.c:767 -msgid "no network card found" -msgstr "onay etworknay ardcay oundfay" - -#: grub-core/net/bootp.c:859 grub-core/net/net.c:389 -#, c-format -msgid "couldn't autoconfigure %s" -msgstr "ouldncay'tay autoconfigureway %s" - -#: grub-core/net/bootp.c:873 grub-core/net/bootp.c:876 -msgid "[CARD]" -msgstr "[ARDCay]" - -#: grub-core/net/bootp.c:874 -msgid "perform a bootp autoconfiguration" -msgstr "erformpay away ootpbay autoconfigurationway" - -#: grub-core/net/bootp.c:877 -msgid "perform a DHCP autoconfiguration" -msgstr "erformpay away DHCPay autoconfigurationway" - -#: grub-core/net/bootp.c:879 -msgid "VAR INTERFACE NUMBER DESCRIPTION" -msgstr "ARVay INTERFACEway UMBERNay ESCRIPTIONDay" - -#: grub-core/net/bootp.c:880 -msgid "" -"retrieve DHCP option and save it into VAR. If VAR is - then print the value." -msgstr "" -"etrieveray DHCPay optionway andway avesay itway intoway ARVay. Ifway ARVay " -"isway - enthay intpray ethay aluevay." - -#: grub-core/net/dns.c:459 -msgid "no DNS servers configured" -msgstr "onay DNSay erverssay onfiguredcay" - -#: grub-core/net/dns.c:522 -msgid "domain name component is too long" -msgstr "omainday amenay omponentcay isway ootay onglay" - -#: grub-core/net/dns.c:618 grub-core/net/dns.c:666 -msgid "no DNS record found" -msgstr "onay DNSay ecordray oundfay" - -#: grub-core/net/dns.c:626 -msgid "no DNS reply received" -msgstr "onay DNSay eplyray eceivedray" - -#: grub-core/net/dns.c:682 -msgid "only ipv4" -msgstr "onlyway ipvway4" - -#: grub-core/net/dns.c:686 -msgid "only ipv6" -msgstr "onlyway ipvway6" - -#: grub-core/net/dns.c:690 -msgid "prefer ipv4" -msgstr "eferpray ipvway4" - -#: grub-core/net/dns.c:694 -msgid "prefer ipv6" -msgstr "eferpray ipvway6" - -#: grub-core/net/dns.c:759 -msgid "ADDRESS DNSSERVER" -msgstr "ADDRESSway ERVERDNSSay" - -#: grub-core/net/dns.c:760 -msgid "Perform a DNS lookup" -msgstr "erformPay away DNSay ookuplay" - -#: grub-core/net/dns.c:762 grub-core/net/dns.c:765 -msgid "DNSSERVER" -msgstr "ERVERDNSSay" - -#: grub-core/net/dns.c:763 -msgid "Add a DNS server" -msgstr "Addway away DNSay erversay" - -#: grub-core/net/dns.c:766 -msgid "Remove a DNS server" -msgstr "emoveRay away DNSay erversay" - -#: grub-core/net/dns.c:768 -msgid "List DNS servers" -msgstr "istLay DNSay erverssay" - -#: grub-core/net/drivers/efi/efinet.c:49 grub-core/net/drivers/efi/efinet.c:65 -#: grub-core/net/drivers/efi/efinet.c:77 grub-core/net/drivers/emu/emunet.c:62 -#: grub-core/net/drivers/i386/pc/pxe.c:273 -#: grub-core/net/drivers/ieee1275/ofnet.c:75 -#: grub-core/net/drivers/uboot/ubootnet.c:62 -msgid "couldn't send network packet" -msgstr "ouldncay'tay endsay etworknay acketpay" - -#: grub-core/net/drivers/ieee1275/ofnet.c:326 -#: grub-core/net/drivers/ieee1275/ofnet.c:359 -msgid "interpret is not supported" -msgstr "interpretway isway otnay upportedsay" - -#: grub-core/net/drivers/ieee1275/ofnet.c:336 -msgid "alloc-mem failed" -msgstr "allocway-emmay ailedfay" - -#: grub-core/net/drivers/ieee1275/ofnet.c:370 -msgid "free-mem failed" -msgstr "eefray-emmay ailedfay" - -#: grub-core/net/http.c:105 -msgid "unsupported HTTP response" -msgstr "unsupportedway HTTPay esponseray" - -#. TRANSLATORS: GRUB HTTP code is pretty young. So even perfectly -#. valid answers like 403 will trigger this very generic message. -#: grub-core/net/http.c:126 -#, c-format -msgid "unsupported HTTP error %d: %s" -msgstr "unsupportedway HTTPay errorway %d: %s" - -#: grub-core/net/http.c:429 grub-core/net/tftp.c:420 -#, c-format -msgid "time out opening `%s'" -msgstr "imetay outway openingway ‘%s’" - -#: grub-core/net/net.c:179 -msgid "timeout: could not resolve hardware address" -msgstr "imeouttay: ouldcay otnay esolveray ardwarehay addressway" - -#: grub-core/net/net.c:548 -#, c-format -msgid "unresolvable address %s" -msgstr "unresolvableway addressway %s" - -#: grub-core/net/net.c:594 -#, c-format -msgid "unrecognised network address `%s'" -msgstr "unrecognisedway etworknay addressway ‘%s’" - -#: grub-core/net/net.c:661 -msgid "destination unreachable" -msgstr "estinationday unreachableway" - -#. TRANSLATORS: route loop is a condition when e.g. -#. to contact server A you need to go through B -#. and to contact B you need to go through A. -#: grub-core/net/net.c:684 -msgid "route loop detected" -msgstr "outeray ooplay etectedday" - -#: grub-core/net/net.c:700 -msgid "address not found" -msgstr "addressway otnay oundfay" - -#: grub-core/net/net.c:704 -msgid "you can't delete this address" -msgstr "you ancay'tay eleteday isthay addressway" - -#: grub-core/net/net.c:776 grub-core/net/net.c:792 -#, c-format -msgid "Unsupported hw address type %d\n" -msgstr "Unsupportedway hway addressway ypetay %d\n" - -#: grub-core/net/net.c:813 -#, c-format -msgid "Unsupported address type %d\n" -msgstr "Unsupportedway addressway ypetay %d\n" - -#: grub-core/net/net.c:1017 grub-core/net/net.c:1131 -msgid "three arguments expected" -msgstr "eethray argumentsway expectedway" - -#: grub-core/net/net.c:1023 -msgid "card not found" -msgstr "ardcay otnay oundfay" - -#. TRANSLATORS: it refers to the network address. -#: grub-core/net/net.c:1167 -msgid "temporary" -msgstr "emporarytay" - -#: grub-core/net/net.c:1190 -#, c-format -msgid "Unknown address type %d\n" -msgstr "Unknownway addressway ypetay %d\n" - -#: grub-core/net/net.c:1298 -msgid "no server is specified" -msgstr "onay erversay isway ecifiedspay" - -#: grub-core/net/net.c:1637 -#, c-format -msgid "timeout reading `%s'" -msgstr "imeouttay eadingray ‘%s’" - -#. TRANSLATORS: HWADDRESS stands for -#. "hardware address". -#: grub-core/net/net.c:1762 -msgid "SHORTNAME CARD ADDRESS [HWADDRESS]" -msgstr "ORTNAMESHay ARDCay ADDRESSway [ADDRESSHWay]" - -#: grub-core/net/net.c:1763 -msgid "Add a network address." -msgstr "Addway away etworknay addressway." - -#: grub-core/net/net.c:1766 -msgid "[CARD [HWADDRESS]]" -msgstr "[ARDCay [ADDRESSHWay]]" - -#: grub-core/net/net.c:1767 -msgid "Perform an IPV6 autoconfiguration" -msgstr "erformPay anway IPVway6 autoconfigurationway" - -#: grub-core/net/net.c:1770 grub-core/net/net.c:1777 -msgid "SHORTNAME" -msgstr "ORTNAMESHay" - -#: grub-core/net/net.c:1771 -msgid "Delete a network address." -msgstr "eleteDay away etworknay addressway." - -#. TRANSLATORS: "gw" is a keyword. -#: grub-core/net/net.c:1774 -msgid "SHORTNAME NET [INTERFACE| gw GATEWAY]" -msgstr "ORTNAMESHay ETNay [INTERFACEway| gway ATEWAYGay]" - -#: grub-core/net/net.c:1775 -msgid "Add a network route." -msgstr "Addway away etworknay outeray." - -#: grub-core/net/net.c:1778 -msgid "Delete a network route." -msgstr "eleteDay away etworknay outeray." - -#: grub-core/net/net.c:1780 -msgid "list network routes" -msgstr "istlay etworknay outesray" - -#: grub-core/net/net.c:1782 -msgid "list network cards" -msgstr "istlay etworknay ardscay" - -#: grub-core/net/net.c:1784 -msgid "list network addresses" -msgstr "istlay etworknay addressesway" - -#: grub-core/net/tcp.c:681 -msgid "connection refused" -msgstr "onnectioncay efusedray" - -#: grub-core/net/tcp.c:684 -msgid "connection timeout" -msgstr "onnectioncay imeouttay" - -#: grub-core/normal/auth.c:220 -msgid "Enter username: " -msgstr "Enterway usernameway: " - -#: grub-core/normal/auth.c:269 -msgid "[USERLIST]" -msgstr "[USERLISTway]" - -#: grub-core/normal/auth.c:270 -msgid "Check whether user is in USERLIST." -msgstr "eckChay etherwhay userway isway inway USERLISTway." - -#: grub-core/normal/cmdline.c:174 grub-core/normal/menu_entry.c:1068 -msgid "Possible commands are:" -msgstr "ossiblePay ommandscay areway:" - -#: grub-core/normal/cmdline.c:177 grub-core/normal/menu_entry.c:1072 -msgid "Possible devices are:" -msgstr "ossiblePay evicesday areway:" - -#: grub-core/normal/cmdline.c:180 grub-core/normal/menu_entry.c:1076 -msgid "Possible files are:" -msgstr "ossiblePay ilesfay areway:" - -#: grub-core/normal/cmdline.c:183 grub-core/normal/menu_entry.c:1080 -msgid "Possible partitions are:" -msgstr "ossiblePay artitionspay areway:" - -#: grub-core/normal/cmdline.c:186 grub-core/normal/menu_entry.c:1084 -msgid "Possible arguments are:" -msgstr "ossiblePay argumentsway areway:" - -#. TRANSLATORS: this message is used if none of above matches. -#. This shouldn't happen but please use the general term for -#. "thing" or "object". -#: grub-core/normal/cmdline.c:192 grub-core/normal/menu_entry.c:1088 -msgid "Possible things are:" -msgstr "ossiblePay ingsthay areway:" - -#: grub-core/normal/color.c:81 -#, c-format -msgid "Warning: syntax error (missing slash) in `%s'\n" -msgstr "arningWay: yntaxsay errorway (issingmay ashslay) inway ‘%s’\n" - -#: grub-core/normal/color.c:90 -#, c-format -msgid "Warning: invalid foreground color `%s'\n" -msgstr "arningWay: invalidway oregroundfay olorcay ‘%s’\n" - -#: grub-core/normal/color.c:96 -#, c-format -msgid "Warning: invalid background color `%s'\n" -msgstr "arningWay: invalidway ackgroundbay olorcay ‘%s’\n" - -#: grub-core/normal/context.c:206 -msgid "ENVVAR [ENVVAR] ..." -msgstr "ENVVARway [ENVVARway] ..." - -#: grub-core/normal/context.c:207 -msgid "Export variables." -msgstr "Exportway ariablesvay." - -#: grub-core/normal/datetime.c:25 -msgid "Sunday" -msgstr "undaySay" - -#: grub-core/normal/datetime.c:26 -msgid "Monday" -msgstr "ondayMay" - -#: grub-core/normal/datetime.c:27 -msgid "Tuesday" -msgstr "uesdayTay" - -#: grub-core/normal/datetime.c:28 -msgid "Wednesday" -msgstr "ednesdayWay" - -#: grub-core/normal/datetime.c:29 -msgid "Thursday" -msgstr "ursdayThay" - -#: grub-core/normal/datetime.c:30 -msgid "Friday" -msgstr "idayFray" - -#: grub-core/normal/datetime.c:31 -msgid "Saturday" -msgstr "aturdaySay" - -#: grub-core/normal/dyncmd.c:187 -msgid "module isn't loaded" -msgstr "odulemay isnway'tay oadedlay" - -#: grub-core/normal/main.c:211 -#, c-format -msgid "GNU GRUB version %s" -msgstr "UGNay UBGRay ersionvay %s" - -#: grub-core/normal/main.c:360 -msgid "ESC at any time exits." -msgstr "ESCway atway anyway imetay exitsway." - -#: grub-core/normal/main.c:363 -#, c-format -msgid "" -"Minimal BASH-like line editing is supported. For the first word, TAB lists " -"possible command completions. Anywhere else TAB lists possible device or " -"file completions. %s" -msgstr "" -"inimalMay ASHBay-ikelay inelay editingway isway upportedsay. orFay ethay " -"irstfay ordway, ABTay istslay ossiblepay ommandcay ompletionscay. " -"Anywhereway elseway ABTay istslay ossiblepay eviceday orway ilefay " -"ompletionscay. %s" - -#. TRANSLATORS: it's command line prompt. -#: grub-core/normal/main.c:395 -msgid ">" -msgstr ">" - -#. TRANSLATORS: it's command line prompt. -#: grub-core/normal/main.c:398 -msgid "grub>" -msgstr "ubgray>" - -#: grub-core/normal/main.c:518 -msgid "Clear the screen." -msgstr "earClay ethay eenscray." - -#: grub-core/normal/main.c:527 -msgid "Enter normal mode." -msgstr "Enterway ormalnay odemay." - -#: grub-core/normal/main.c:529 -msgid "Exit from normal mode." -msgstr "Exitway omfray ormalnay odemay." - -#: grub-core/normal/menu.c:66 grub-core/normal/menu_entry.c:1449 -msgid "Press any key to continue..." -msgstr "essPray anyway eykay otay ontinuecay..." - -#: grub-core/normal/menu.c:815 -#, c-format -msgid "Booting `%s'" -msgstr "ootingBay ‘%s’" - -#: grub-core/normal/menu.c:827 -#, c-format -msgid "Falling back to `%s'" -msgstr "allingFay ackbay otay ‘%s’" - -#: grub-core/normal/menu.c:843 -msgid "Failed to boot both default and fallback entries.\n" -msgstr "ailedFay otay ootbay othbay efaultday andway allbackfay entriesway.\n" - -#: grub-core/normal/menu_entry.c:1171 -msgid "Booting a command list" -msgstr "ootingBay away ommandcay istlay" - -#: grub-core/normal/menu_text.c:160 -msgid "" -"Minimum Emacs-like screen editing is supported. TAB lists completions. Press " -"Ctrl-x or F10 to boot, Ctrl-c or F2 for a command-line or ESC to discard " -"edits and return to the GRUB menu." -msgstr "" -"inimumMay Emacsway-ikelay eenscray editingway isway upportedsay. ABTay " -"istslay ompletionscay. essPray Ctrlay-xay orway Fay10 otay ootbay, Ctrlay-" -"cay orway Fay2 orfay away ommandcay-inelay orway ESCway otay iscardday " -"editsway andway eturnray otay ethay UBGRay enumay." - -#: grub-core/normal/menu_text.c:170 -#, c-format -msgid "Use the %C and %C keys to select which entry is highlighted." -msgstr "" -"Useway ethay %C andway %C eyskay otay electsay ichwhay entryway isway " -"ighlightedhay." - -#. TRANSLATORS: that's the list of binary unit prefixes. -#: grub-core/normal/misc.c:38 -msgid "B" -msgstr "Bay" - -#: grub-core/normal/misc.c:38 -msgid "KiB" -msgstr "iBKay" - -#: grub-core/normal/misc.c:38 -msgid "MiB" -msgstr "iBMay" - -#: grub-core/normal/misc.c:38 -msgid "GiB" -msgstr "iBGay" - -#: grub-core/normal/misc.c:38 -msgid "TiB" -msgstr "iBTay" - -#: grub-core/normal/misc.c:38 -msgid "PiB" -msgstr "iBPay" - -#. TRANSLATORS: that's the list of binary unit prefixes. -#: grub-core/normal/misc.c:40 -msgid "K" -msgstr "Kay" - -#: grub-core/normal/misc.c:40 -msgid "M" -msgstr "May" - -#: grub-core/normal/misc.c:40 -msgid "G" -msgstr "Gay" - -#: grub-core/normal/misc.c:40 -msgid "T" -msgstr "Tay" - -#: grub-core/normal/misc.c:40 -msgid "P" -msgstr "Pay" - -#. TRANSLATORS: that's the list of binary unit prefixes. -#: grub-core/normal/misc.c:42 -msgid "B/s" -msgstr "Bay/say" - -#: grub-core/normal/misc.c:42 -msgid "KiB/s" -msgstr "iBKay/say" - -#: grub-core/normal/misc.c:42 -msgid "MiB/s" -msgstr "iBMay/say" - -#: grub-core/normal/misc.c:42 -msgid "GiB/s" -msgstr "iBGay/say" - -#: grub-core/normal/misc.c:42 -msgid "TiB/s" -msgstr "iBTay/say" - -#: grub-core/normal/misc.c:42 -msgid "PiB/s" -msgstr "iBPay/say" - -#: grub-core/normal/misc.c:96 -#, c-format -msgid "Partition %s:" -msgstr "artitionPay %s:" - -#: grub-core/normal/misc.c:101 -#, c-format -msgid "Device %s:" -msgstr "eviceDay %s:" - -#: grub-core/normal/misc.c:107 -msgid "Filesystem cannot be accessed" -msgstr "ilesystemFay annotcay ebay accessedway" - -#: grub-core/normal/misc.c:121 -#, c-format -msgid "Filesystem type %s" -msgstr "ilesystemFay ypetay %s" - -#: grub-core/normal/misc.c:131 -#, c-format -msgid "- Label `%s'" -msgstr "- abelLay ‘%s’" - -#. TRANSLATORS: Arguments are year, month, day, hour, minute, -#. second, day of the week (translated). -#: grub-core/normal/misc.c:148 -#, c-format -msgid "- Last modification time %d-%02d-%02d %02d:%02d:%02d %s" -msgstr "- astLay odificationmay imetay %d-%02d-%02d %02d:%02d:%02d %s" - -#: grub-core/normal/misc.c:171 -msgid "No known filesystem detected" -msgstr "oNay ownknay ilesystemfay etectedday" - -#: grub-core/normal/misc.c:174 -#, c-format -msgid " - Partition start at %llu%sKiB" -msgstr " - artitionPay artstay atway %llu%sKiB" - -#: grub-core/normal/misc.c:178 -#, c-format -msgid " - Sector size %uB" -msgstr " - ectorSay izesay %uB" - -#: grub-core/normal/misc.c:180 -msgid " - Total size unknown" -msgstr " - otalTay izesay unknownway" - -#: grub-core/normal/misc.c:182 -#, c-format -msgid " - Total size %llu%sKiB" -msgstr " - otalTay izesay %llu%sKiB" - -#. TRANSLATORS: Replace dot with appropriate decimal separator for -#. your language. -#: grub-core/normal/misc.c:186 -msgid ".5" -msgstr ".5" - -#. TRANSLATORS: This has to fit on one line. It's ok to include few -#. words but don't write poems. -#: grub-core/normal/term.c:82 -msgid "--MORE--" -msgstr "--OREMay--" - -#: grub-core/osdep/aros/config.c:92 grub-core/osdep/unix/config.c:137 -#: grub-core/osdep/windows/config.c:55 -#, c-format -msgid "cannot open configuration file `%s': %s" -msgstr "annotcay openway onfigurationcay ilefay ‘%s’: %s" - -#: grub-core/osdep/basic/compress.c:8 grub-core/osdep/basic/compress.c:14 -#: grub-core/osdep/basic/compress.c:20 -msgid "no compression is available for your platform" -msgstr "onay ompressioncay isway availableway orfay your atformplay" - -#: grub-core/osdep/basic/no_platform.c:30 -#: grub-core/osdep/windows/platform.c:418 -msgid "no IEEE1275 routines are available for your platform" -msgstr "onay IEEEway1275 outinesray areway availableway orfay your atformplay" - -#: grub-core/osdep/basic/no_platform.c:38 -msgid "no EFI routines are available for your platform" -msgstr "onay EFIway outinesray areway availableway orfay your atformplay" - -#: grub-core/osdep/basic/no_platform.c:45 -#: grub-core/osdep/windows/platform.c:425 -msgid "no SGI routines are available for your platform" -msgstr "onay ISGay outinesray areway availableway orfay your atformplay" - -#. TRANSLATORS: The OS itself may very well have a random -#. number generator but GRUB doesn't know how to access it. -#: grub-core/osdep/basic/random.c:42 -msgid "no random number generator is available for your OS" -msgstr "onay andomray umbernay eneratorgay isway availableway orfay your OSway" - -#: grub-core/osdep/devmapper/getroot.c:81 -msgid "Failed to create `device-mapper' tree" -msgstr "ailedFay otay eatecray ‘eviceday-appermay’ eetray" - -#: grub-core/osdep/devmapper/getroot.c:197 -#: grub-core/osdep/freebsd/getroot.c:202 -#, c-format -msgid "can't mount encrypted volume `%s': %s" -msgstr "ancay'tay ountmay encryptedway olumevay ‘%s’: %s" - -#. TRANSLATORS: geom is the name of (k)FreeBSD device framework. -#. Usually left untranslated. -#. -#: grub-core/osdep/freebsd/getroot.c:82 grub-core/osdep/freebsd/getroot.c:164 -#: grub-core/osdep/freebsd/getroot.c:258 grub-core/osdep/freebsd/getroot.c:316 -msgid "couldn't open geom" -msgstr "ouldncay'tay openway eomgay" - -#: grub-core/osdep/freebsd/getroot.c:182 grub-core/osdep/freebsd/getroot.c:277 -msgid "couldn't find geli consumer" -msgstr "ouldncay'tay indfay eligay onsumercay" - -#: grub-core/osdep/freebsd/getroot.c:282 -msgid "couldn't retrieve geli UUID" -msgstr "ouldncay'tay etrieveray eligay UUIDway" - -#. TRANSLATORS: geom is the name of (k)FreeBSD device framework. -#. Usually left untranslated. "part" is the identifier of one of its -#. classes. -#: grub-core/osdep/freebsd/getroot.c:325 -msgid "couldn't find geom `part' class" -msgstr "ouldncay'tay indfay eomgay ‘artpay’ assclay" - -#: grub-core/osdep/freebsd/hostdisk.c:72 grub-core/osdep/linux/hostdisk.c:93 -msgid "unaligned device size" -msgstr "unalignedway eviceday izesay" - -#: grub-core/osdep/generic/blocklist.c:56 -#, c-format -msgid "attempting to read the core image `%s' from GRUB" -msgstr "attemptingway otay eadray ethay orecay imageway ‘%s’ omfray UBGRay" - -#: grub-core/osdep/generic/blocklist.c:57 -#, c-format -msgid "attempting to read the core image `%s' from GRUB again" -msgstr "" -"attemptingway otay eadray ethay orecay imageway ‘%s’ omfray UBGRay againway" - -#: grub-core/osdep/generic/blocklist.c:115 -#, c-format -msgid "cannot read `%s' correctly" -msgstr "annotcay eadray ‘%s’ orrectlycay" - -#: grub-core/osdep/generic/blocklist.c:126 -msgid "failed to read the sectors of the core image" -msgstr "ailedfay otay eadray ethay ectorssay ofway ethay orecay imageway" - -#. TRANSLATORS: On GNU/Hurd, a "translator" is similar to a filesystem -#. mount, but handled by a userland daemon, whose invocation command line -#. is being fetched here. First %s is the file being looked at (for which -#. we are fetching the "translator" command line), second %s is the error -#. message. -#. -#: grub-core/osdep/hurd/getroot.c:79 -#, c-format -msgid "cannot get translator command line for path `%s': %s" -msgstr "annotcay etgay anslatortray ommandcay inelay orfay athpay ‘%s’: %s" - -#: grub-core/osdep/hurd/getroot.c:82 -#, c-format -msgid "translator command line is empty for path `%s'" -msgstr "anslatortray ommandcay inelay isway emptyway orfay athpay ‘%s’" - -#. TRANSLATORS: we expect to get something like -#. /hurd/foobar --option1 --option2=baz /dev/something -#. -#: grub-core/osdep/hurd/getroot.c:98 -#, c-format -msgid "" -"translator `%s' for path `%s' has several non-option words, at least `%s' " -"and `%s'" -msgstr "" -"anslatortray ‘%s’ orfay athpay ‘%s’ ashay everalsay onnay-optionway ordsway, " -"atway eastlay ‘%s’ andway ‘%s’" - -#. TRANSLATORS: we expect to get something like -#. /hurd/foobar --option1 --option2=baz /dev/something -#. -#: grub-core/osdep/hurd/getroot.c:109 -#, c-format -msgid "" -"translator `%s' for path `%s' is given only options, cannot find device part" -msgstr "" -"anslatortray ‘%s’ orfay athpay ‘%s’ isway ivengay onlyway optionsway, " -"annotcay indfay eviceday artpay" - -#: grub-core/osdep/hurd/hostdisk.c:73 -#, c-format -msgid "Storage information for `%s' does not include type" -msgstr "orageStay informationway orfay ‘%s’ oesday otnay includeway ypetay" - -#: grub-core/osdep/hurd/hostdisk.c:75 -#, c-format -msgid "`%s' is not a local disk" -msgstr "‘%s’ isway otnay away ocallay iskday" - -#: grub-core/osdep/hurd/hostdisk.c:78 -#, c-format -msgid "" -"Storage information for `%s' indicates neither a plain partition nor a plain " -"disk" -msgstr "" -"orageStay informationway orfay ‘%s’ indicatesway eithernay away ainplay " -"artitionpay ornay away ainplay iskday" - -#: grub-core/osdep/linux/blocklist.c:81 grub-core/osdep/linux/blocklist.c:96 -#: grub-core/osdep/linux/blocklist.c:122 -#, c-format -msgid "can't retrieve blocklists: %s" -msgstr "ancay'tay etrieveray ocklistsblay: %s" - -#: grub-core/osdep/linux/blocklist.c:84 -msgid "blocksize is not divisible by 512" -msgstr "ocksizeblay isway otnay ivisibleday ybay 512" - -#: grub-core/osdep/linux/blocklist.c:86 -msgid "invalid zero blocksize" -msgstr "invalidway erozay ocksizeblay" - -#: grub-core/osdep/linux/blocklist.c:90 util/setup.c:744 -msgid "can't retrieve blocklists" -msgstr "ancay'tay etrieveray ocklistsblay" - -#: grub-core/osdep/linux/getroot.c:154 -#, c-format -msgid "ioctl RAID_VERSION error: %s" -msgstr "ioctlway AIDRay_ERSIONVay errorway: %s" - -#: grub-core/osdep/linux/getroot.c:160 grub-core/osdep/linux/getroot.c:164 -#, c-format -msgid "unsupported RAID version: %d.%d" -msgstr "unsupportedway AIDRay ersionvay: %d.%d" - -#: grub-core/osdep/linux/getroot.c:169 -#, c-format -msgid "ioctl GET_ARRAY_INFO error: %s" -msgstr "ioctlway ETGay_ARRAYway_INFOway errorway: %s" - -#: grub-core/osdep/linux/getroot.c:178 -#, c-format -msgid "ioctl GET_DISK_INFO error: %s" -msgstr "ioctlway ETGay_ISKDay_INFOway errorway: %s" - -#: grub-core/osdep/linux/getroot.c:608 grub-core/osdep/linux/getroot.c:678 -#: grub-core/osdep/linux/hostdisk.c:126 grub-core/osdep/unix/getroot.c:253 -#: grub-core/osdep/unix/getroot.c:642 grub-core/osdep/unix/platform.c:92 -#: grub-core/osdep/unix/platform.c:100 -#, c-format -msgid "Unable to open stream from %s: %s" -msgstr "Unableway otay openway eamstray omfray %s: %s" - -#: grub-core/osdep/linux/getroot.c:1033 -#, c-format -msgid "unknown kind of RAID device `%s'" -msgstr "unknownway indkay ofway AIDRay eviceday ‘%s’" - -#: grub-core/osdep/linux/ofpath.c:181 -#, c-format -msgid "`obppath' not found in parent dirs of `%s', no IEEE1275 name discovery" -msgstr "" -"‘obppathway’ otnay oundfay inway arentpay irsday ofway ‘%s’, onay " -"IEEEway1275 amenay iscoveryday" - -#: grub-core/osdep/linux/ofpath.c:222 grub-core/osdep/unix/getroot.c:505 -#: grub-core/osdep/unix/getroot.c:529 grub-core/osdep/unix/relpath.c:49 -#: util/grub-install.c:984 util/grub-install.c:1331 util/grub-probe.c:323 -#, c-format -msgid "failed to get canonical path of `%s'" -msgstr "ailedfay otay etgay anonicalcay athpay ofway ‘%s’" - -#: grub-core/osdep/linux/ofpath.c:740 -#, c-format -msgid "unknown device type %s" -msgstr "unknownway eviceday ypetay %s" - -#: grub-core/osdep/linux/ofpath.c:758 util/ieee1275/grub-ofpathname.c:39 -#, c-format -msgid "Usage: %s DEVICE\n" -msgstr "Usageway: %s EVICEDay\n" - -#: grub-core/osdep/unix/exec.c:86 grub-core/osdep/unix/exec.c:172 -#: grub-core/osdep/unix/exec.c:217 -#, c-format -msgid "Unable to fork: %s" -msgstr "Unableway otay orkfay: %s" - -#: grub-core/osdep/unix/exec.c:166 grub-core/osdep/unix/exec.c:211 -#, c-format -msgid "Unable to create pipe: %s" -msgstr "Unableway otay eatecray ipepay: %s" - -#: grub-core/osdep/unix/getroot.c:370 -msgid "cannot save the original directory" -msgstr "annotcay avesay ethay originalway irectoryday" - -#: grub-core/osdep/unix/getroot.c:423 grub-core/osdep/unix/getroot.c:480 -#: grub-core/osdep/unix/getroot.c:489 -msgid "cannot restore the original directory" -msgstr "annotcay estoreray ethay originalway irectoryday" - -#. TRANSLATORS: "stat" comes from the name of POSIX function. -#: grub-core/osdep/unix/getroot.c:551 grub-core/osdep/unix/hostdisk.c:61 -#: grub-core/osdep/unix/relpath.c:73 grub-core/osdep/unix/relpath.c:97 -#: util/getroot.c:160 util/getroot.c:162 util/grub-install.c:774 -#: util/grub-macbless.c:70 -#, c-format -msgid "cannot stat `%s': %s" -msgstr "annotcay atstay ‘%s’: %s" - -#: grub-core/osdep/unix/hostdisk.c:293 -#, c-format -msgid "cannot make temporary file: %s" -msgstr "annotcay akemay emporarytay ilefay: %s" - -#: grub-core/osdep/unix/hostdisk.c:311 -#, c-format -msgid "cannot make temporary directory: %s" -msgstr "annotcay akemay emporarytay irectoryday: %s" - -#: grub-core/osdep/unix/platform.c:77 -#, c-format -msgid "" -"couldn't find IEEE1275 device path for %s.\n" -"You will have to set `boot-device' variable manually" -msgstr "" -"ouldncay'tay indfay IEEEway1275 eviceday athpay orfay %s.\n" -"You illway avehay otay etsay ‘ootbay-eviceday’ ariablevay anuallymay" - -#. TRANSLATORS: This message is shown when required executable `%s' -#. isn't found. -#: grub-core/osdep/unix/platform.c:149 grub-core/osdep/unix/platform.c:189 -#, c-format -msgid "%s: not found" -msgstr "%s: otnay oundfay" - -#: grub-core/osdep/unix/platform.c:225 -#, c-format -msgid "" -"`nvsetenv' failed. \n" -"You will have to set `boot-device' variable manually. At the IEEE1275 " -"prompt, type:\n" -" %s\n" -msgstr "" -"‘etenvnvsay’ ailedfay. \n" -"You illway avehay otay etsay ‘ootbay-eviceday’ ariablevay anuallymay. Atway " -"ethay IEEEway1275 omptpray, ypetay:\n" -" %s\n" - -#: grub-core/osdep/unix/platform.c:240 -msgid "You will have to set `SystemPartition' and `OSLoader' manually." -msgstr "" -"You illway avehay otay etsay ‘ystemPartitionSay’ andway ‘OSLoaderway’ " -"anuallymay." - -#. TRANSLATORS: canonical pathname is the -#. complete one e.g. /etc/fstab. It has -#. to contain `/' normally, if it doesn't -#. we're in trouble and throw this error. -#: grub-core/osdep/unix/relpath.c:90 -msgid "no `/' in canonical filename" -msgstr "onay ‘/’ inway anonicalcay ilenamefay" - -#: grub-core/osdep/windows/hostdisk.c:151 -msgid "cygwin_conv_path() failed" -msgstr "ygwincay_onvcay_athpay() ailedfay" - -#: grub-core/osdep/windows/hostdisk.c:501 util/grub-install.c:570 -msgid "couldn't retrieve random data" -msgstr "ouldncay'tay etrieveray andomray ataday" - -#: grub-core/osdep/windows/platform.c:97 -msgid "Insufficient privileges to access firmware, assuming BIOS" -msgstr "" -"Insufficientway ivilegespray otay accessway irmwarefay, assumingway IOSBay" - -#: grub-core/osdep/windows/platform.c:225 -msgid "no EFI routines are available when running in BIOS mode" -msgstr "" -"onay EFIway outinesray areway availableway enwhay unningray inway IOSBay " -"odemay" - -#: grub-core/osdep/windows/platform.c:240 -msgid "unexpected EFI error" -msgstr "unexpectedway EFIway errorway" - -#: grub-core/osdep/windows/platform.c:315 -msgid "Couldn't find a free BootNNNN slot" -msgstr "ouldnCay'tay indfay away eefray ootNNNNBay otslay" - -#: grub-core/partmap/gpt.c:191 -msgid "" -"this GPT partition label contains no BIOS Boot Partition; embedding won't be " -"possible" -msgstr "" -"isthay GPTay artitionpay abellay ontainscay onay IOSBay ootBay artitionPay; " -"embeddingway onway'tay ebay ossiblepay" - -#: grub-core/partmap/gpt.c:196 -msgid "your BIOS Boot Partition is too small; embedding won't be possible" -msgstr "" -"your IOSBay ootBay artitionPay isway ootay allsmay; embeddingway onway'tay " -"ebay ossiblepay" - -#. TRANSLATORS: MBR gap and boot track is the same thing and is the space -#. between MBR and first partitition. If your language translates well only -#. "boot track", you can just use it everywhere. Next two messages are about -#. RAID controllers/software bugs which GRUB has to live with. Please spread -#. the message that these are bugs in other software and not merely -#. suboptimal behaviour. -#: grub-core/partmap/msdos.c:51 -#, c-format -msgid "" -"Sector %llu is already in use by raid controller `%s'; avoiding it. Please " -"ask the manufacturer not to store data in MBR gap" -msgstr "" -"ectorSay %llu isway alreadyway inway useway ybay aidray ontrollercay ‘%s’; " -"avoidingway itway. easePlay askway ethay anufacturermay otnay otay orestay " -"ataday inway MBRay apgay" - -#: grub-core/partmap/msdos.c:54 -#, c-format -msgid "" -"Sector %llu is already in use by the program `%s'; avoiding it. This " -"software may cause boot or other problems in future. Please ask its authors " -"not to store data in the boot track" -msgstr "" -"ectorSay %llu isway alreadyway inway useway ybay ethay ogrampray ‘%s’; " -"avoidingway itway. isThay oftwaresay aymay ausecay ootbay orway otherway " -"oblemspray inway uturefay. easePlay askway itsway authorsway otnay otay " -"orestay ataday inway ethay ootbay acktray" - -#: grub-core/partmap/msdos.c:384 -msgid "" -"other software is using the embedding area, and there is not enough room for " -"core.img. Such software is often trying to store data in a way that avoids " -"detection. We recommend you investigate" -msgstr "" -"otherway oftwaresay isway usingway ethay embeddingway areaway, andway " -"erethay isway otnay enoughway oomray orfay orecay.imgway. uchSay oftwaresay " -"isway oftenway yingtray otay orestay ataday inway away ayway atthay " -"avoidsway etectionday. eWay ecommendray you investigateway" - -#: grub-core/partmap/msdos.c:395 -msgid "" -"this msdos-style partition label has no post-MBR gap; embedding won't be " -"possible" -msgstr "" -"isthay osmsday-ylestay artitionpay abellay ashay onay ostpay-MBRay apgay; " -"embeddingway onway'tay ebay ossiblepay" - -#: grub-core/partmap/msdos.c:404 -msgid "your embedding area is unusually small. core.img won't fit in it." -msgstr "" -"your embeddingway areaway isway unusuallyway allsmay. orecay.imgway " -"onway'tay itfay inway itway." - -#: grub-core/parttool/msdospart.c:39 -msgid "Make partition active" -msgstr "akeMay artitionpay activeway" - -#: grub-core/parttool/msdospart.c:51 -msgid "not a primary partition" -msgstr "otnay away imarypray artitionpay" - -#: grub-core/parttool/msdospart.c:69 -#, c-format -msgid "Partition %d is active now. \n" -msgstr "artitionPay %d isway activeway ownay. \n" - -#: grub-core/parttool/msdospart.c:74 -#, c-format -msgid "Cleared active flag on %d. \n" -msgstr "earedClay activeway agflay onway %d. \n" - -#: grub-core/parttool/msdospart.c:87 -msgid "Change partition type" -msgstr "angeChay artitionpay ypetay" - -#: grub-core/parttool/msdospart.c:88 -msgid "Set `hidden' flag in partition type" -msgstr "etSay ‘iddenhay’ agflay inway artitionpay ypetay" - -#: grub-core/parttool/msdospart.c:130 -#, c-format -msgid "the partition type 0x%x isn't valid" -msgstr "ethay artitionpay ypetay 0x%x isnway'tay alidvay" - -#. TRANSLATORS: In this case we're actually writing to the disk and actively -#. modifying partition type rather than just defining it. -#: grub-core/parttool/msdospart.c:137 -#, c-format -msgid "Setting partition type to 0x%x\n" -msgstr "ettingSay artitionpay ypetay otay 0x%x\n" - -#. TRANSLATORS: 0 is a quantifier. "break" (similar to bash) -#. can be used e.g. to break 3 loops at once. -#. But asking it to break 0 loops makes no sense. -#: grub-core/script/execute.c:143 -msgid "can't break 0 loops" -msgstr "ancay'tay eakbray 0 oopslay" - -#. TRANSLATORS: It's about not being -#. inside a function. "return" can be used only -#. in a function and this error occurs if it's used -#. anywhere else. -#: grub-core/script/execute.c:227 -msgid "not in function body" -msgstr "otnay inway unctionfay odybay" - -#: grub-core/script/execute.c:371 -#, c-format -msgid "invalid variable name `%s'" -msgstr "invalidway ariablevay amenay ‘%s’" - -#: grub-core/script/execute.c:953 -msgid "cannot allocate command buffer" -msgstr "annotcay allocateway ommandcay ufferbay" - -#: grub-core/script/lexer.c:144 util/grub-fstest.c:330 -msgid "unexpected end of file" -msgstr "unexpectedway endway ofway ilefay" - -#: grub-core/script/main.c:55 grub-core/script/main.c:57 -#: grub-core/script/main.c:59 grub-core/script/main.c:67 -msgid "[NUM]" -msgstr "[UMNay]" - -#: grub-core/script/main.c:55 -msgid "Exit from loops" -msgstr "Exitway omfray oopslay" - -#: grub-core/script/main.c:57 -msgid "Continue loops" -msgstr "ontinueCay oopslay" - -#. TRANSLATORS: Positional arguments are -#. arguments $0, $1, $2, ... -#: grub-core/script/main.c:62 -msgid "Shift positional parameters." -msgstr "iftShay ositionalpay arameterspay." - -#: grub-core/script/main.c:64 -msgid "[VALUE]..." -msgstr "[ALUEVay]..." - -#: grub-core/script/main.c:65 -msgid "Set positional parameters." -msgstr "etSay ositionalpay arameterspay." - -#. TRANSLATORS: It's a command description -#. and "Return" is a verb, not a noun. The -#. command in question is "return" and -#. has exactly the same semanics as bash -#. equivalent. -#: grub-core/script/main.c:73 -msgid "Return from a function." -msgstr "eturnRay omfray away unctionfay." - -#: grub-core/term/gfxterm_background.c:176 -msgid "[-m (stretch|normal)] FILE" -msgstr "[-may (etchstray|ormalnay)] ILEFay" - -#: grub-core/term/gfxterm_background.c:177 -msgid "Load background image for active terminal." -msgstr "oadLay ackgroundbay imageway orfay activeway erminaltay." - -#: grub-core/term/gfxterm_background.c:182 util/grub-install.c:302 -#: util/grub-install.c:303 util/grub-mkrescue.c:107 util/grub-mkrescue.c:108 -#: util/grub-render-label.c:61 util/grub-render-label.c:63 -msgid "COLOR" -msgstr "OLORCay" - -#: grub-core/term/gfxterm_background.c:183 -msgid "Set background color for active terminal." -msgstr "etSay ackgroundbay olorcay orfay activeway erminaltay." - -#: grub-core/term/i386/coreboot/cbmemc.c:139 -msgid "Show CBMEM console content." -msgstr "owShay EMCBMay onsolecay ontentcay." - -#: grub-core/term/serial.c:57 -msgid "Set the serial unit." -msgstr "etSay ethay erialsay unitway." - -#: grub-core/term/serial.c:58 -msgid "Set the serial port address." -msgstr "etSay ethay erialsay ortpay addressway." - -#: grub-core/term/serial.c:59 -msgid "Set the serial port speed." -msgstr "etSay ethay erialsay ortpay eedspay." - -#: grub-core/term/serial.c:60 -msgid "Set the serial port word length." -msgstr "etSay ethay erialsay ortpay ordway engthlay." - -#: grub-core/term/serial.c:61 -msgid "Set the serial port parity." -msgstr "etSay ethay erialsay ortpay aritypay." - -#: grub-core/term/serial.c:62 -msgid "Set the serial port stop bits." -msgstr "etSay ethay erialsay ortpay opstay itsbay." - -#: grub-core/term/serial.c:63 -msgid "Set the base frequency." -msgstr "etSay ethay asebay equencyfray." - -#: grub-core/term/serial.c:64 -msgid "Enable/disable RTS/CTS." -msgstr "Enableway/isableday RTSay/CTSay." - -#: grub-core/term/serial.c:218 -#, c-format -msgid "serial port `%s' isn't found" -msgstr "erialsay ortpay ‘%s’ isnway'tay oundfay" - -#: grub-core/term/serial.c:254 -msgid "unsupported serial port flow control" -msgstr "unsupportedway erialsay ortpay owflay ontrolcay" - -#: grub-core/term/serial.c:429 -msgid "[OPTIONS...]" -msgstr "[OPTIONSway...]" - -#: grub-core/term/serial.c:430 -msgid "Configure serial port." -msgstr "onfigureCay erialsay ortpay." - -#: grub-core/term/terminfo.c:184 -#, c-format -msgid "unknown terminfo type `%s'" -msgstr "unknownway erminfotay ypetay ‘%s’" - -#: grub-core/term/terminfo.c:668 -msgid "ASCII" -msgstr "ASCIIway" - -#: grub-core/term/terminfo.c:671 -msgid "UTF-8" -msgstr "UTFway-8" - -#. TRANSLATORS: visually ordered UTF-8 is a non-compliant encoding -#. based on UTF-8 with right-to-left languages written in reverse. -#. Used on some terminals. Normal UTF-8 is refered as -#. "logically-ordered UTF-8" by opposition. -#: grub-core/term/terminfo.c:677 -msgid "visually-ordered UTF-8" -msgstr "isuallyvay-orderedway UTFway-8" - -#: grub-core/term/terminfo.c:680 -msgid "Unknown encoding" -msgstr "Unknownway encodingway" - -#: grub-core/term/terminfo.c:684 -msgid "Current terminfo types:" -msgstr "urrentCay erminfotay ypestay:" - -#: grub-core/term/terminfo.c:699 -msgid "Terminal is ASCII-only [default]." -msgstr "erminalTay isway ASCIIway-onlyway [efaultday]." - -#: grub-core/term/terminfo.c:700 -msgid "Terminal is logical-ordered UTF-8." -msgstr "erminalTay isway ogicallay-orderedway UTFway-8." - -#: grub-core/term/terminfo.c:701 -msgid "Terminal is visually-ordered UTF-8." -msgstr "erminalTay isway isuallyvay-orderedway UTFway-8." - -#: grub-core/term/terminfo.c:703 -msgid "Terminal has specified geometry." -msgstr "erminalTay ashay ecifiedspay eometrygay." - -#. TRANSLATORS: "x" has to be entered in, like an identifier, so please don't -#. use better Unicode codepoints. -#: grub-core/term/terminfo.c:706 -msgid "WIDTHxHEIGHT." -msgstr "IDTHxHEIGHTWay." - -#: grub-core/term/terminfo.c:746 -msgid "incorrect terminal dimensions specification" -msgstr "incorrectway erminaltay imensionsday ecificationspay" - -#: grub-core/term/terminfo.c:776 -#, c-format -msgid "terminal %s isn't found or it's not handled by terminfo" -msgstr "" -"erminaltay %s isnway'tay oundfay orway itway'say otnay andledhay ybay " -"erminfotay" - -#: grub-core/term/terminfo.c:785 -msgid "[[-a|-u|-v] [-g WxH] TERM [TYPE]]" -msgstr "[[-away|-uway|-vay] [-gay WxHay] ERMTay [YPETay]]" - -#: grub-core/term/terminfo.c:786 -msgid "Set terminfo type of TERM to TYPE.\n" -msgstr "etSay erminfotay ypetay ofway ERMTay otay YPETay.\n" - -#. TRANSLATORS: this is the BLOCK-argument, not -#. environment block. -#: grub-core/tests/test_blockarg.c:49 -msgid "Print and execute block argument." -msgstr "intPray andway executeway ockblay argumentway." - -#. TRANSLATORS: We're speaking about bitmap images like -#. JPEG or PNG. -#: grub-core/video/bitmap.c:209 -#, c-format -msgid "bitmap file `%s' is of unsupported format" -msgstr "itmapbay ilefay ‘%s’ isway ofway unsupportedway ormatfay" - -#: grub-core/video/i386/pc/vbe.c:1191 -#, c-format -msgid " VBE info: version: %d.%d OEM software rev: %d.%d\n" -msgstr " EVBay infoway: ersionvay: %d.%d OEMway oftwaresay evray: %d.%d\n" - -#: grub-core/video/i386/pc/vbe.c:1198 -#, c-format -msgid " total memory: %d KiB\n" -msgstr " otaltay emorymay: %d iBKay\n" - -#: grub-core/video/video.c:596 grub-core/video/video.c:762 -msgid "no suitable video mode found" -msgstr "onay uitablesay ideovay odemay oundfay" - -#: include/grub/crypto.h:403 -msgid "access denied" -msgstr "accessway eniedday" - -#: include/grub/util/install.h:30 include/grub/util/install.h:35 -msgid "MODULES" -msgstr "ODULESMay" - -#: include/grub/util/install.h:31 -msgid "pre-load specified modules MODULES" -msgstr "epray-oadlay ecifiedspay odulesmay ODULESMay" - -#: include/grub/util/install.h:33 -msgid "embed a specific DTB" -msgstr "embedway away ecificspay DTBay" - -#: include/grub/util/install.h:36 -msgid "install only MODULES and their dependencies [default=all]" -msgstr "" -"installway onlyway ODULESMay andway eirthay ependenciesday [efaultday=allway]" - -#: include/grub/util/install.h:37 -msgid "THEMES" -msgstr "EMESTHay" - -#: include/grub/util/install.h:38 -#, c-format -msgid "install THEMES [default=%s]" -msgstr "installway EMESTHay [efaultday=%s]" - -#: include/grub/util/install.h:39 -msgid "FONTS" -msgstr "ONTSFay" - -#: include/grub/util/install.h:40 -#, c-format -msgid "install FONTS [default=%s]" -msgstr "installway ONTSFay [efaultday=%s]" - -#: include/grub/util/install.h:41 -msgid "LOCALES" -msgstr "OCALESLay" - -#: include/grub/util/install.h:42 -msgid "install only LOCALES [default=all]" -msgstr "installway onlyway OCALESLay [efaultday=allway]" - -#: include/grub/util/install.h:45 -msgid "compress GRUB files [optional]" -msgstr "ompresscay UBGRay ilesfay [optionalway]" - -#: include/grub/util/install.h:48 util/grub-mkimage.c:83 -msgid "choose the compression to use for core image" -msgstr "oosechay ethay ompressioncay otay useway orfay orecay imageway" - -#. TRANSLATORS: platform here isn't identifier. It can be translated. -#: include/grub/util/install.h:51 include/grub/util/install.h:54 -#: util/grub-mkimage.c:66 -#, c-format -msgid "use images and modules under DIR [default=%s/]" -msgstr "" -"useway imagesway andway odulesmay underway IRDay [efaultday=%s/]" - -#: include/grub/util/install.h:57 -#, c-format -msgid "use translations under DIR [default=%s]" -msgstr "useway anslationstray underway IRDay [efaultday=%s]" - -#: include/grub/util/install.h:60 -#, c-format -msgid "use themes under DIR [default=%s]" -msgstr "useway emesthay underway IRDay [efaultday=%s]" - -#: include/grub/util/install.h:65 util/grub-mkimage.c:78 -msgid "embed FILE as public key for signature checking" -msgstr "embedway ILEFay asway ublicpay eykay orfay ignaturesay eckingchay" - -#: util/editenv.c:59 util/grub-editenv.c:201 util/grub-install-common.c:535 -#: util/grub-mkimage.c:315 util/setup.c:791 -#, c-format -msgid "cannot sync `%s': %s" -msgstr "annotcay yncsay ‘%s’: %s" - -#: util/editenv.c:64 -#, c-format -msgid "cannot rename the file %s to %s" -msgstr "annotcay enameray ethay ilefay %s otay %s" - -#: util/getroot.c:402 -#, c-format -msgid "disk does not exist, so falling back to partition device %s" -msgstr "" -"iskday oesday otnay existway, osay allingfay ackbay otay artitionpay " -"eviceday %s" - -#: util/grub-editenv.c:45 util/grub-fstest.c:506 -msgid "Commands:" -msgstr "ommandsCay:" - -#: util/grub-editenv.c:47 -msgid "Create a blank environment block file." -msgstr "eateCray away ankblay environmentway ockblay ilefay." - -#: util/grub-editenv.c:49 -msgid "List the current variables." -msgstr "istLay ethay urrentcay ariablesvay." - -#. TRANSLATORS: "set" is a keyword. It's a summary of "set" subcommand. -#: util/grub-editenv.c:51 -msgid "set [NAME=VALUE ...]" -msgstr "etsay [AMENay=ALUEVay ...]" - -#: util/grub-editenv.c:52 -msgid "Set variables." -msgstr "etSay ariablesvay." - -#. TRANSLATORS: "unset" is a keyword. It's a summary of "unset" subcommand. -#: util/grub-editenv.c:54 -msgid "unset [NAME ...]" -msgstr "unsetway [AMENay ...]" - -#: util/grub-editenv.c:55 -msgid "Delete variables." -msgstr "eleteDay ariablesvay." - -#: util/grub-editenv.c:57 -msgid "Options:" -msgstr "Optionsway:" - -#: util/grub-editenv.c:84 -msgid "You need to specify at least one command.\n" -msgstr "You eednay otay ecifyspay atway eastlay oneway ommandcay.\n" - -#: util/grub-editenv.c:113 -msgid "FILENAME COMMAND" -msgstr "ILENAMEFay OMMANDCay" - -#: util/grub-editenv.c:114 -msgid "Tool to edit environment block." -msgstr "oolTay otay editway environmentway ockblay." - -#: util/grub-editenv.c:116 -#, c-format -msgid "" -"If FILENAME is `-', the default value %s is used.\n" -"\n" -"There is no `delete' command; if you want to delete the whole environment\n" -"block, use `rm %s'." -msgstr "" -"Ifway ILENAMEFay isway ‘-’, ethay efaultday aluevay %s isway usedway.\n" -"\n" -"ereThay isway onay ‘eleteday’ ommandcay; ifway you antway otay eleteday " -"ethay olewhay environmentway\n" -"ockblay, useway ‘rmay %s’." - -#: util/grub-editenv.c:162 -msgid "invalid environment block" -msgstr "invalidway environmentway ockblay" - -#: util/grub-editenv.c:217 -#, c-format -msgid "invalid parameter %s" -msgstr "invalidway arameterpay %s" - -#: util/grub-editenv.c:222 -msgid "environment block too small" -msgstr "environmentway ockblay ootay allsmay" - -#: util/grub-fstest.c:107 -#, c-format -msgid "disk read fails at offset %lld, length %lld" -msgstr "iskday eadray ailsfay atway offsetway %lld, engthlay %lld" - -#: util/grub-fstest.c:138 -#, c-format -msgid "invalid skip value %lld" -msgstr "invalidway ipskay aluevay %lld" - -#: util/grub-fstest.c:160 util/grub-fstest.c:246 -#, c-format -msgid "read error at offset %llu: %s" -msgstr "eadray errorway atway offsetway %llu: %s" - -#: util/grub-fstest.c:210 -#, c-format -msgid "cannot open OS file `%s': %s" -msgstr "annotcay openway OSway ilefay ‘%s’: %s" - -#: util/grub-fstest.c:225 util/misc.c:126 -#, c-format -msgid "cannot write to the stdout: %s" -msgstr "annotcay itewray otay ethay outstday: %s" - -#: util/grub-fstest.c:259 -#, c-format -msgid "compare fail at offset %llu" -msgstr "omparecay ailfay atway offsetway %llu" - -#: util/grub-fstest.c:280 util/grub-fstest.c:314 -#, c-format -msgid "OS file %s open error: %s" -msgstr "OSway ilefay %s openway errorway: %s" - -#: util/grub-fstest.c:402 util/grub-mount.c:392 -#, c-format -msgid "`loopback' command fails: %s" -msgstr "‘oopbacklay’ ommandcay ailsfay: %s" - -#: util/grub-fstest.c:413 util/grub-mount.c:402 -#, c-format -msgid "`cryptomount' command fails: %s" -msgstr "‘yptomountcray’ ommandcay ailsfay: %s" - -#: util/grub-fstest.c:474 util/grub-fstest.c:478 -msgid "couldn't retrieve UUID" -msgstr "ouldncay'tay etrieveray UUIDway" - -#: util/grub-fstest.c:507 -msgid "ls PATH" -msgstr "lsay ATHPay" - -#: util/grub-fstest.c:507 -msgid "List files in PATH." -msgstr "istLay ilesfay inway ATHPay." - -#: util/grub-fstest.c:508 -msgid "cp FILE LOCAL" -msgstr "cpay ILEFay OCALLay" - -#: util/grub-fstest.c:508 -msgid "Copy FILE to local file LOCAL." -msgstr "opyCay ILEFay otay ocallay ilefay OCALLay." - -#: util/grub-fstest.c:509 -msgid "cat FILE" -msgstr "atcay ILEFay" - -#: util/grub-fstest.c:509 -msgid "Copy FILE to standard output." -msgstr "opyCay ILEFay otay andardstay outputway." - -#: util/grub-fstest.c:510 -msgid "cmp FILE LOCAL" -msgstr "cmpay ILEFay OCALLay" - -#: util/grub-fstest.c:510 -msgid "Compare FILE with local file LOCAL." -msgstr "ompareCay ILEFay ithway ocallay ilefay OCALLay." - -#: util/grub-fstest.c:511 -msgid "hex FILE" -msgstr "exhay ILEFay" - -#: util/grub-fstest.c:511 -msgid "Show contents of FILE in hex." -msgstr "owShay ontentscay ofway ILEFay inway exhay." - -#: util/grub-fstest.c:512 -msgid "crc FILE" -msgstr "crcay ILEFay" - -#: util/grub-fstest.c:512 -msgid "Get crc32 checksum of FILE." -msgstr "etGay crcay32 ecksumchay ofway ILEFay." - -#: util/grub-fstest.c:513 -msgid "blocklist FILE" -msgstr "ocklistblay ILEFay" - -#: util/grub-fstest.c:513 -msgid "Display blocklist of FILE." -msgstr "isplayDay ocklistblay ofway ILEFay." - -#: util/grub-fstest.c:514 -msgid "xnu_uuid DEVICE" -msgstr "uxnay_uuidway EVICEDay" - -#: util/grub-fstest.c:514 -msgid "Compute XNU UUID of the device." -msgstr "omputeCay UXNay UUIDway ofway ethay eviceday." - -#. TRANSLATORS: bitmaps are images like e.g. in JPEG. -#: util/grub-fstest.c:517 util/grub-fstest.c:518 util/grub-fstest.c:519 -#: util/grub-mkfont.c:938 util/grub-mkfont.c:951 util/grub-mkfont.c:952 -#: util/grub-mkpasswd-pbkdf2.c:46 util/grub-mkpasswd-pbkdf2.c:47 -#: util/grub-mkpasswd-pbkdf2.c:48 -msgid "NUM" -msgstr "UMNay" - -#: util/grub-fstest.c:517 -msgid "Skip N bytes from output file." -msgstr "ipSkay Nay ytesbay omfray outputway ilefay." - -#: util/grub-fstest.c:518 -msgid "Handle N bytes in output file." -msgstr "andleHay Nay ytesbay inway outputway ilefay." - -#: util/grub-fstest.c:519 -msgid "Specify the number of input files." -msgstr "ecifySpay ethay umbernay ofway inputway ilesfay." - -#: util/grub-fstest.c:520 util/grub-mount.c:453 -msgid "Set debug environment variable." -msgstr "etSay ebugday environmentway ariablevay." - -#: util/grub-fstest.c:521 util/grub-mount.c:454 -msgid "Mount crypto devices." -msgstr "ountMay yptocray evicesday." - -#. TRANSLATORS: "prompt" is a keyword. -#: util/grub-fstest.c:524 util/grub-mount.c:457 -msgid "FILE|prompt" -msgstr "ILEFay|omptpray" - -#: util/grub-fstest.c:524 util/grub-mount.c:457 -msgid "Load zfs crypto key." -msgstr "oadLay zfsay yptocray eykay." - -#: util/grub-fstest.c:526 -msgid "Uncompress data." -msgstr "Uncompressway ataday." - -#: util/grub-fstest.c:605 -msgid "Invalid disk count.\n" -msgstr "Invalidway iskday ountcay.\n" - -#. TRANSLATORS: disk count is optional but if it's there it must -#. be before disk list. So please don't imply disk count as mandatory. -#. -#: util/grub-fstest.c:613 -msgid "Disk count must precede disks list.\n" -msgstr "iskDay ountcay ustmay ecedepray isksday istlay.\n" - -#: util/grub-fstest.c:633 -msgid "No command is specified.\n" -msgstr "oNay ommandcay isway ecifiedspay.\n" - -#: util/grub-fstest.c:638 -msgid "Not enough parameters to command.\n" -msgstr "otNay enoughway arameterspay otay ommandcay.\n" - -#: util/grub-fstest.c:711 -#, c-format -msgid "Invalid command %s.\n" -msgstr "Invalidway ommandcay %s.\n" - -#: util/grub-fstest.c:724 -msgid "IMAGE_PATH COMMANDS" -msgstr "IMAGEway_ATHPay OMMANDSCay" - -#: util/grub-fstest.c:725 util/grub-mount.c:553 -msgid "Debug tool for filesystem driver." -msgstr "ebugDay ooltay orfay ilesystemfay iverdray." - -#: util/grub-glue-efi.c:53 -msgid "set input filename for 32-bit part." -msgstr "etsay inputway ilenamefay orfay 32-itbay artpay." - -#: util/grub-glue-efi.c:55 -msgid "set input filename for 64-bit part." -msgstr "etsay inputway ilenamefay orfay 64-itbay artpay." - -#: util/grub-glue-efi.c:57 util/grub-mklayout.c:55 util/grub-render-label.c:71 -msgid "set output filename. Default is STDOUT" -msgstr "etsay outputway ilenamefay. efaultDay isway OUTSTDay" - -#: util/grub-glue-efi.c:94 util/grub-mklayout.c:476 -#: util/grub-mkpasswd-pbkdf2.c:86 util/grub-render-label.c:131 -msgid "[OPTIONS]" -msgstr "[OPTIONSway]" - -#: util/grub-glue-efi.c:95 -msgid "Glue 32-bit and 64-bit binary into Apple universal one." -msgstr "" -"ueGlay 32-itbay andway 64-itbay inarybay intoway Appleway universalway " -"oneway." - -#: util/grub-glue-efi.c:116 -msgid "Missing input file\n" -msgstr "issingMay inputway ilefay\n" - -#: util/grub-install-common.c:127 util/grub-install-common.c:151 -#, c-format -msgid "cannot copy `%s' to `%s': %s" -msgstr "annotcay opycay ‘%s’ otay ‘%s’: %s" - -#: util/grub-install-common.c:147 -#, c-format -msgid "can't compress `%s' to `%s'" -msgstr "ancay'tay ompresscay ‘%s’ otay ‘%s’" - -#: util/grub-install-common.c:196 util/grub-install-common.c:552 -#: util/grub-install-common.c:579 util/grub-install-common.c:621 -#, c-format -msgid "cannot open directory `%s': %s" -msgstr "annotcay openway irectoryday ‘%s’: %s" - -#: util/grub-install-common.c:212 -#, c-format -msgid "cannot delete `%s': %s" -msgstr "annotcay eleteday ‘%s’: %s" - -#: util/grub-install-common.c:324 util/grub-mkimage.c:209 -msgid "grub-mkimage is compiled without XZ support" -msgstr "ubgray-imagemkay isway ompiledcay ithoutway XZay upportsay" - -#: util/grub-install-common.c:332 util/grub-mkimage.c:217 -#, c-format -msgid "Unknown compression format %s" -msgstr "Unknownway ompressioncay ormatfay %s" - -#: util/grub-install-common.c:400 -#, c-format -msgid "Unrecognized compression `%s'" -msgstr "Unrecognizedway ompressioncay ‘%s’" - -#: util/grub-install-common.c:509 -#, c-format -msgid "unknown target format %s" -msgstr "unknownway argettay ormatfay %s" - -#: util/grub-install-common.c:700 -#, c-format -msgid "cannot find locale `%s'" -msgstr "annotcay indfay ocalelay ‘%s’" - -#: util/grub-install-common.c:939 -#, c-format -msgid "%s doesn't exist. Please specify --target or --directory" -msgstr "" -"%s oesnday'tay existway. easePlay ecifyspay --argettay orway --irectoryday" - -#: util/grub-install-common.c:948 util/grub-install-common.c:951 -#, c-format -msgid "invalid modinfo file `%s'" -msgstr "invalidway odinfomay ilefay ‘%s’" - -#: util/grub-install-common.c:966 -#, c-format -msgid "Unknown platform `%s-%s'" -msgstr "Unknownway atformplay ‘%s-%s’" - -#: util/grub-install.c:238 -msgid "More than one install device?" -msgstr "oreMay anthay oneway installway eviceday?" - -#: util/grub-install.c:251 -#, c-format -msgid "" -"install GRUB images under the directory DIR/%s instead of the %s directory" -msgstr "" -"installway UBGRay imagesway underway ethay irectoryday IRDay/%s insteadway " -"ofway ethay %s irectoryday" - -#: util/grub-install.c:256 util/grub-probe.c:734 -msgid "TARGET" -msgstr "ARGETTay" - -#. TRANSLATORS: "TARGET" as in "target platform". -#: util/grub-install.c:258 -#, c-format -msgid "install GRUB for TARGET platform [default=%s]; available targets: %s" -msgstr "" -"installway UBGRay orfay ARGETTay atformplay [efaultday=%s]; availableway " -"argetstay: %s" - -#. TRANSLATORS: "may break" doesn't just mean that option wouldn't have any -#. effect but that it will make the resulting install unbootable from HDD. -#. TRANSLATORS: The potential breakage isn't limited to floppies but it's -#. likely to make the install unbootable from HDD. -#: util/grub-install.c:267 util/grub-setup.c:94 -msgid "" -"make the drive also bootable as floppy (default for fdX devices). May break " -"on some BIOSes." -msgstr "" -"akemay ethay ivedray alsoway ootablebay asway oppyflay (efaultday orfay " -"fdXay evicesday). ayMay eakbray onway omesay IOSesBay." - -#: util/grub-install.c:270 -msgid "delete device map if it already exists" -msgstr "eleteday eviceday apmay ifway itway alreadyway existsway" - -#: util/grub-install.c:272 util/grub-setup.c:87 -msgid "install even if problems are detected" -msgstr "installway evenway ifway oblemspray areway etectedday" - -#: util/grub-install.c:274 -msgid "use identifier file even if UUID is available" -msgstr "useway identifierway ilefay evenway ifway UUIDway isway availableway" - -#: util/grub-install.c:276 -msgid "" -"disk module to use (biosdisk or native). This option is only available on " -"BIOS target." -msgstr "" -"iskday odulemay otay useway (iosdiskbay orway ativenay). isThay optionway " -"isway onlyway availableway onway IOSBay argettay." - -#: util/grub-install.c:279 -msgid "" -"don't update the `boot-device'/`Boot*' NVRAM variables. This option is only " -"available on EFI and IEEE1275 targets." -msgstr "" -"onday'tay updateway ethay ‘ootbay-eviceday’/‘ootBay*’ AMNVRay ariablesvay. " -"isThay optionway isway onlyway availableway onway EFIway andway IEEEway1275 " -"argetstay." - -#: util/grub-install.c:282 util/grub-setup.c:89 -msgid "do not probe for filesystems in DEVICE" -msgstr "oday otnay obepray orfay ilesystemsfay inway EVICEDay" - -#: util/grub-install.c:284 -msgid "do not install bootsector" -msgstr "oday otnay installway ootsectorbay" - -#: util/grub-install.c:286 util/grub-setup.c:96 -msgid "" -"Do not apply any reed-solomon codes when embedding core.img. This option is " -"only available on x86 BIOS targets." -msgstr "" -"oDay otnay applyway anyway eedray-olomonsay odescay enwhay embeddingway " -"orecay.imgway. isThay optionway isway onlyway availableway onway xay86 " -"IOSBay argetstay." - -#: util/grub-install.c:293 -msgid "" -"the installation device is removable. This option is only available on EFI." -msgstr "" -"ethay installationway eviceday isway emovableray. isThay optionway isway " -"onlyway availableway onway EFIway." - -#: util/grub-install.c:295 -msgid "ID" -msgstr "IDway" - -#: util/grub-install.c:296 -msgid "the ID of bootloader. This option is only available on EFI and Macs." -msgstr "" -"ethay IDway ofway ootloaderbay. isThay optionway isway onlyway availableway " -"onway EFIway andway acsMay." - -#: util/grub-install.c:298 -msgid "use DIR as the EFI System Partition root." -msgstr "useway IRDay asway ethay EFIway ystemSay artitionPay ootray." - -#: util/grub-install.c:300 -msgid "use DIR for PPC MAC install." -msgstr "useway IRDay orfay PPCay ACMay installway." - -#: util/grub-install.c:301 util/grub-mkrescue.c:106 -msgid "use FILE as font for label" -msgstr "useway ILEFay asway ontfay orfay abellay" - -#: util/grub-install.c:302 util/grub-mkrescue.c:107 -msgid "use COLOR for label" -msgstr "useway OLORCay orfay abellay" - -#: util/grub-install.c:303 util/grub-mkrescue.c:108 -msgid "use COLOR for label background" -msgstr "useway OLORCay orfay abellay ackgroundbay" - -#: util/grub-install.c:304 util/grub-mkrescue.c:110 -msgid "use STRING as product version" -msgstr "useway INGSTRay asway oductpray ersionvay" - -#: util/grub-install.c:361 -msgid "[OPTION] [INSTALL_DEVICE]" -msgstr "[OPTIONway] [INSTALLway_EVICEDay]" - -#: util/grub-install.c:362 -msgid "Install GRUB on your drive." -msgstr "Installway UBGRay onway your ivedray." - -#: util/grub-install.c:363 -#, c-format -msgid "" -"INSTALL_DEVICE must be system device filename.\n" -"%s copies GRUB images into %s. On some platforms, it may also install GRUB " -"into the boot sector." -msgstr "" -"INSTALLway_EVICEDay ustmay ebay ystemsay eviceday ilenamefay.\n" -"%s opiescay UBGRay imagesway intoway %s. Onway omesay atformsplay, itway " -"aymay alsoway installway UBGRay intoway ethay ootbay ectorsay." - -#: util/grub-install.c:672 -#, c-format -msgid "the drive %s is defined multiple times in the device map %s" -msgstr "" -"ethay ivedray %s isway efinedday ultiplemay imestay inway ethay eviceday " -"apmay %s" - -#: util/grub-install.c:878 -msgid "Unable to determine your platform. Use --target." -msgstr "Unableway otay etermineday your atformplay. Useway --argettay." - -#: util/grub-install.c:891 -#, c-format -msgid "Installing for %s platform.\n" -msgstr "Installingway orfay %s atformplay.\n" - -#: util/grub-install.c:939 -msgid "install device isn't specified" -msgstr "installway eviceday isnway'tay ecifiedspay" - -#: util/grub-install.c:1057 -msgid "cannot find EFI directory" -msgstr "annotcay indfay EFIway irectoryday" - -#: util/grub-install.c:1060 util/grub-install.c:1209 util/grub-install.c:1254 -#: util/grub-macbless.c:76 util/grub-probe.c:329 util/setup.c:316 -#, c-format -msgid "cannot find a device for %s (is /dev mounted?)" -msgstr "annotcay indfay away eviceday orfay %s (isway /evday ountedmay?)" - -#: util/grub-install.c:1069 util/grub-install.c:1217 util/grub-install.c:1270 -#: util/grub-install.c:1365 util/grub-macbless.c:80 util/grub-probe.c:372 -#, c-format -msgid "cannot find a GRUB drive for %s. Check your device.map" -msgstr "" -"annotcay indfay away UBGRay ivedray orfay %s. eckChay your eviceday.apmay" - -#: util/grub-install.c:1087 -#, c-format -msgid "%s doesn't look like an EFI partition" -msgstr "%s oesnday'tay ooklay ikelay anway EFIway artitionpay" - -#: util/grub-install.c:1129 util/grub-install.c:1614 -msgid "You've found a bug" -msgstr "You'evay oundfay away ugbay" - -#: util/grub-install.c:1231 -#, c-format -msgid "filesystem on %s is neither HFS nor HFS+" -msgstr "ilesystemfay onway %s isway eithernay HFSay ornay HFSay+" - -#: util/grub-install.c:1299 -#, c-format -msgid "" -"attempt to install to encrypted disk without cryptodisk enabled. Set `%s' in " -"file `%s'" -msgstr "" -"attemptway otay installway otay encryptedway iskday ithoutway yptodiskcray " -"enabledway. etSay ‘%s’ inway ilefay ‘%s’" - -#: util/grub-install.c:1410 util/grub-install.c:1772 util/grub-install.c:1872 -#, c-format -msgid "Can't create file: %s" -msgstr "anCay'tay eatecray ilefay: %s" - -#: util/grub-install.c:1491 -msgid "no hints available for your platform. Expect reduced performance" -msgstr "" -"onay intshay availableway orfay your atformplay. Expectway educedray " -"erformancepay" - -#. TRANSLATORS: This is a prefix in the log to indicate that usually -#. a command would be executed but due to an option was skipped. -#: util/grub-install.c:1702 -msgid "NOT RUNNING: " -msgstr "OTNay UNNINGRay: " - -#: util/grub-install.c:1806 -msgid "the chosen partition is not a PReP partition" -msgstr "ethay osenchay artitionpay isway otnay away ePPRay artitionpay" - -#: util/grub-install.c:1811 -msgid "failed to copy Grub to the PReP partition" -msgstr "ailedfay otay opycay ubGray otay ethay ePPRay artitionpay" - -#: util/grub-install.c:1816 -#, c-format -msgid "" -"the PReP partition is not empty. If you are sure you want to use it, run dd " -"to clear it: `%s'" -msgstr "" -"ethay ePPRay artitionpay isway otnay emptyway. Ifway you areway uresay you " -"antway otay useway itway, unray dday otay earclay itway: ‘%s’" - -#: util/grub-install.c:1888 util/grub-install.c:1932 -#, c-format -msgid "efibootmgr failed to register the boot entry: %s" -msgstr "efibootmgrway ailedfay otay egisterray ethay ootbay entryway: %s" - -#: util/grub-install.c:1916 -msgid "EFI bootloader id isn't specified." -msgstr "EFIway ootloaderbay idway isnway'tay ecifiedspay." - -#: util/grub-install.c:1950 -msgid "WARNING: no platform-specific install was performed" -msgstr "ARNINGWay: onay atformplay-ecificspay installway asway erformedpay" - -#: util/grub-install.c:1957 -msgid "Installation finished. No error reported." -msgstr "Installationway inishedfay. oNay errorway eportedray." - -#: util/grub-macbless.c:101 -msgid "bless for x86-based macs" -msgstr "essblay orfay xay86-asedbay acsmay" - -#: util/grub-macbless.c:103 -msgid "bless for ppc-based macs" -msgstr "essblay orfay ppcay-asedbay acsmay" - -#: util/grub-macbless.c:136 util/grub-probe.c:823 -msgid "No path or device is specified.\n" -msgstr "oNay athpay orway eviceday isway ecifiedspay.\n" - -#: util/grub-macbless.c:157 -msgid "--ppc PATH|--x86 FILE" -msgstr "--ppcay ATHPay|--xay86 ILEFay" - -#: util/grub-macbless.c:158 -msgid "Mac-style bless on HFS or HFS+" -msgstr "acMay-ylestay essblay onway HFSay orway HFSay+" - -#: util/grub-menulst2cfg.c:44 -#, c-format -msgid "Usage: %s [INFILE [OUTFILE]]\n" -msgstr "Usageway: %s [INFILEway [OUTFILEway]]\n" - -#: util/grub-mkfont.c:157 -#, c-format -msgid "Freetype Error %d loading glyph 0x%x for U+0x%x%s" -msgstr "eetypeFray Errorway %d oadinglay yphglay 0x%x orfay Uway+0x%x%s" - -#. TRANSLATORS: These qualifiers are used for cursive typography, -#. mainly Arabic. Note that the terms refer to the visual position -#. and not logical order and if used in left-to-right script then -#. leftmost is initial but with right-to-left script like Arabic -#. rightmost is the initial. -#: util/grub-mkfont.c:165 -msgid " (medial)" -msgstr " (edialmay)" - -#: util/grub-mkfont.c:166 -msgid " (leftmost)" -msgstr " (eftmostlay)" - -#: util/grub-mkfont.c:167 -msgid " (rightmost)" -msgstr " (ightmostray)" - -#: util/grub-mkfont.c:481 -#, c-format -msgid "Out of range substitution (%d, %d)\n" -msgstr "Outway ofway angeray ubstitutionsay (%d, %d)\n" - -#. TRANSLATORS: "lookup" is taken directly from font specifications -#. which are formulated as "Under condition X replace LOOKUP with -#. SUBSTITUITION". " -#: util/grub-mkfont.c:506 -#, c-format -msgid "Out of range lookup: %d\n" -msgstr "Outway ofway angeray ookuplay: %d\n" - -#: util/grub-mkfont.c:514 -#, c-format -msgid "Unsupported substitution type: %d\n" -msgstr "Unsupportedway ubstitutionsay ypetay: %d\n" - -#: util/grub-mkfont.c:550 -#, c-format -msgid "Unsupported substitution specification: %d\n" -msgstr "Unsupportedway ubstitutionsay ecificationspay: %d\n" - -#: util/grub-mkfont.c:582 -#, c-format -msgid "Unsupported coverage specification: %d\n" -msgstr "Unsupportedway overagecay ecificationspay: %d\n" - -#: util/grub-mkfont.c:622 -#, c-format -msgid "WARNING: unsupported font feature parameters: %x\n" -msgstr "ARNINGWay: unsupportedway ontfay eaturefay arameterspay: %x\n" - -#: util/grub-mkfont.c:936 util/grub-mkrescue.c:98 util/grub-mkstandalone.c:48 -msgid "save output in FILE [required]" -msgstr "avesay outputway inway ILEFay [equiredray]" - -#. TRANSLATORS: some font files may have multiple faces (fonts). -#. This option is used to chose among them, the first face being '0'. -#. Rarely used. -#: util/grub-mkfont.c:942 -msgid "select face index" -msgstr "electsay acefay indexway" - -#: util/grub-mkfont.c:943 -msgid "FROM-TO[,FROM-TO]" -msgstr "OMFRay-OTay[,OMFRay-OTay]" - -#. TRANSLATORS: It refers to the range of characters in font. -#: util/grub-mkfont.c:945 -msgid "set font range" -msgstr "etsay ontfay angeray" - -#. TRANSLATORS: "family name" for font is just a generic name without suffix -#. like "Bold". -#: util/grub-mkfont.c:949 -msgid "set font family name" -msgstr "etsay ontfay amilyfay amenay" - -#: util/grub-mkfont.c:950 -msgid "SIZE" -msgstr "IZESay" - -#: util/grub-mkfont.c:950 -msgid "set font size" -msgstr "etsay ontfay izesay" - -#: util/grub-mkfont.c:951 -msgid "set font descent" -msgstr "etsay ontfay escentday" - -#: util/grub-mkfont.c:952 -msgid "set font ascent" -msgstr "etsay ontfay ascentway" - -#: util/grub-mkfont.c:953 -msgid "convert to bold font" -msgstr "onvertcay otay oldbay ontfay" - -#: util/grub-mkfont.c:954 -msgid "force autohint" -msgstr "orcefay autohintway" - -#: util/grub-mkfont.c:955 -msgid "disable hinting" -msgstr "isableday intinghay" - -#. TRANSLATORS: some fonts contain bitmap rendering for -#. some sizes. This option forces rerendering even if -#. pre-rendered bitmap is available. -#. -#: util/grub-mkfont.c:961 -msgid "ignore bitmap strikes when loading" -msgstr "ignoreway itmapbay ikesstray enwhay oadinglay" - -#. TRANSLATORS: It refers to the range of characters in font. -#: util/grub-mkfont.c:1059 util/grub-mkfont.c:1075 -msgid "invalid font range" -msgstr "invalidway ontfay angeray" - -#: util/grub-mkfont.c:1151 -msgid "[OPTIONS] FONT_FILES" -msgstr "[OPTIONSway] ONTFay_ILESFay" - -#: util/grub-mkfont.c:1152 -msgid "Convert common font file formats into PF2" -msgstr "onvertCay ommoncay ontfay ilefay ormatsfay intoway PFay2" - -#: util/grub-mkfont.c:1182 util/grub-mkrescue.c:483 -#: util/grub-mkstandalone.c:306 -msgid "output file must be specified" -msgstr "outputway ilefay ustmay ebay ecifiedspay" - -#: util/grub-mkfont.c:1185 -msgid "FT_Init_FreeType fails" -msgstr "FTay_Initway_eeTypeFray ailsfay" - -#: util/grub-mkfont.c:1199 -#, c-format -msgid "can't open file %s, index %d: error %d" -msgstr "ancay'tay openway ilefay %s, indexway %d: errorway %d" - -#: util/grub-mkfont.c:1229 -#, c-format -msgid "can't set %dx%d font size: Freetype error %d: %s" -msgstr "ancay'tay etsay %dx%d ontfay izesay: eetypeFray errorway %d: %s" - -#: util/grub-mkimage.c:67 -msgid "set prefix directory" -msgstr "etsay efixpray irectoryday" - -#. TRANSLATORS: "memdisk" here isn't an identifier, it can be translated. -#. "embed" is a verb (command description). " -#: util/grub-mkimage.c:71 -msgid "" -"embed FILE as a memdisk image\n" -"Implies `-p (memdisk)/boot/grub' and overrides any prefix supplied " -"previously, but the prefix itself can be overridden by later options" -msgstr "" -"embedway ILEFay asway away emdiskmay imageway\n" -"Impliesway ‘-pay (emdiskmay)/ootbay/ubgray’ andway overridesway anyway " -"efixpray uppliedsay eviouslypray, utbay ethay efixpray itselfway ancay ebay " -"overriddenway ybay aterlay optionsway" - -#: util/grub-mkimage.c:74 -msgid "embed FILE as a device tree (DTB)\n" -msgstr "embedway ILEFay asway away eviceday eetray (DTBay)\n" - -#: util/grub-mkimage.c:76 -msgid "embed FILE as an early config" -msgstr "embedway ILEFay asway anway earlyway onfigcay" - -#. TRANSLATORS: NOTE is a name of segment. -#: util/grub-mkimage.c:80 -msgid "add NOTE segment for CHRP IEEE1275" -msgstr "addway OTENay egmentsay orfay CHRPay IEEEway1275" - -#: util/grub-mkimage.c:81 -msgid "output a generated image to FILE [default=stdout]" -msgstr "outputway away eneratedgay imageway otay ILEFay [efaultday=outstday]" - -#: util/grub-mkimage.c:82 -msgid "FORMAT" -msgstr "ORMATFay" - -#: util/grub-mkimage.c:100 util/grub-mkstandalone.c:62 -msgid "generate an image in FORMAT" -msgstr "enerategay anway imageway inway ORMATFay" - -#: util/grub-mkimage.c:101 util/grub-mkstandalone.c:63 -msgid "available formats:" -msgstr "availableway ormatsfay:" - -#: util/grub-mkimage.c:152 util/grub-mkstandalone.c:96 -#, c-format -msgid "unknown target format %s\n" -msgstr "unknownway argettay ormatfay %s\n" - -#: util/grub-mkimage.c:242 -msgid "[OPTION]... [MODULES]" -msgstr "[OPTIONway]... [ODULESMay]" - -#: util/grub-mkimage.c:243 -msgid "Make a bootable image of GRUB." -msgstr "akeMay away ootablebay imageway ofway UBGRay." - -#: util/grub-mkimage.c:273 util/grub-mkstandalone.c:309 -msgid "Target format not specified (use the -O option)." -msgstr "argetTay ormatfay otnay ecifiedspay (useway ethay -Oway optionway)." - -#: util/grub-mkimage.c:282 -msgid "Prefix not specified (use the -p option)." -msgstr "efixPray otnay ecifiedspay (useway ethay -pay optionway)." - -#: util/grub-mkimage.c:318 util/setup.c:793 -#, c-format -msgid "cannot close `%s': %s" -msgstr "annotcay oseclay ‘%s’: %s" - -#: util/grub-mkimagexx.c:2191 -#, c-format -msgid "" -"`%s' is miscompiled: its start address is 0x%llx instead of 0x%llx: ld.gold " -"bug?" -msgstr "" -"‘%s’ isway iscompiledmay: itsway artstay addressway isway 0x%llx insteadway " -"ofway 0x%llx: lday.oldgay ugbay?" - -#: util/grub-mklayout.c:53 -msgid "set input filename. Default is STDIN" -msgstr "etsay inputway ilenamefay. efaultDay isway INSTDay" - -#. TRANSLATORS: scan identifier is keyboard key symbolic name. -#: util/grub-mklayout.c:307 -#, c-format -msgid "Unknown keyboard scan identifier %s\n" -msgstr "Unknownway eyboardkay anscay identifierway %s\n" - -#. TRANSLATORS: scan code is keyboard key numeric identifier. -#: util/grub-mklayout.c:390 util/grub-mklayout.c:418 -#, c-format -msgid "Unknown keyboard scan code 0x%02x\n" -msgstr "Unknownway eyboardkay anscay odecay 0x%02x\n" - -#. TRANSLATORS: this error is triggered when input doesn't contain any -#. key descriptions. -#: util/grub-mklayout.c:438 -msgid "ERROR: no valid keyboard layout found. Check the input.\n" -msgstr "" -"ERRORway: onay alidvay eyboardkay ayoutlay oundfay. eckChay ethay inputway.\n" - -#. TRANSLATORS: "one" is a shortcut for "keyboard layout". -#: util/grub-mklayout.c:478 -msgid "Generate GRUB keyboard layout from Linux console one." -msgstr "enerateGay UBGRay eyboardkay ayoutlay omfray inuxLay onsolecay oneway." - -#: util/grub-mknetdir.c:47 -msgid "root directory of TFTP server" -msgstr "ootray irectoryday ofway TFTPay erversay" - -#: util/grub-mknetdir.c:49 -msgid "relative subdirectory on network server" -msgstr "elativeray ubdirectorysay onway etworknay erversay" - -#: util/grub-mknetdir.c:88 -msgid "" -"Prepares GRUB network boot images at net_directory/subdir assuming " -"net_directory being TFTP root." -msgstr "" -"eparesPray UBGRay etworknay ootbay imagesway atway etnay_irectoryday/" -"ubdirsay assumingway etnay_irectoryday eingbay TFTPay ootray." - -#: util/grub-mknetdir.c:146 -#, c-format -msgid "unsupported platform %s" -msgstr "unsupportedway atformplay %s" - -#. TRANSLATORS: First %s is replaced by platform name. Second one by filename. -#: util/grub-mknetdir.c:165 -#, c-format -msgid "" -"Netboot directory for %s created. Configure your DHCP server to point to %s\n" -msgstr "" -"etbootNay irectoryday orfay %s eatedcray. onfigureCay your DHCPay erversay " -"otay ointpay otay %s\n" - -#: util/grub-mkpasswd-pbkdf2.c:46 -msgid "Number of PBKDF2 iterations" -msgstr "umberNay ofway PBKDFay2 iterationsway" - -#: util/grub-mkpasswd-pbkdf2.c:47 -msgid "Length of generated hash" -msgstr "engthLay ofway eneratedgay ashhay" - -#: util/grub-mkpasswd-pbkdf2.c:48 -msgid "Length of salt" -msgstr "engthLay ofway altsay" - -#: util/grub-mkpasswd-pbkdf2.c:87 -msgid "Generate PBKDF2 password hash." -msgstr "enerateGay PBKDFay2 asswordpay ashhay." - -#: util/grub-mkpasswd-pbkdf2.c:144 util/grub-mkpasswd-pbkdf2.c:151 -msgid "failure to read password" -msgstr "ailurefay otay eadray asswordpay" - -#: util/grub-mkpasswd-pbkdf2.c:146 -msgid "Reenter password: " -msgstr "eenterRay asswordpay: " - -#: util/grub-mkpasswd-pbkdf2.c:160 -msgid "passwords don't match" -msgstr "asswordspay onday'tay atchmay" - -#: util/grub-mkpasswd-pbkdf2.c:169 -msgid "couldn't retrieve random data for salt" -msgstr "ouldncay'tay etrieveray andomray ataday orfay altsay" - -#: util/grub-mkpasswd-pbkdf2.c:184 -#, c-format -msgid "cryptographic error number %d" -msgstr "yptographiccray errorway umbernay %d" - -#: util/grub-mkpasswd-pbkdf2.c:203 -#, c-format -msgid "PBKDF2 hash of your password is %s\n" -msgstr "PBKDFay2 ashhay ofway your asswordpay isway %s\n" - -#: util/grub-mkrelpath.c:67 -msgid "No path is specified.\n" -msgstr "oNay athpay isway ecifiedspay.\n" - -#: util/grub-mkrelpath.c:78 -msgid "PATH" -msgstr "ATHPay" - -#: util/grub-mkrelpath.c:79 -msgid "Transform a system filename into GRUB one." -msgstr "ansformTray away ystemsay ilenamefay intoway UBGRay oneway." - -#: util/grub-mkrescue.c:100 -msgid "save ROM images in DIR [optional]" -msgstr "avesay OMRay imagesway inway IRDay [optionalway]" - -#. TRANSLATORS: xorriso is a program for creating ISOs and burning CDs. -#: util/grub-mkrescue.c:103 -msgid "use FILE as xorriso [optional]" -msgstr "useway ILEFay asway orrisoxay [optionalway]" - -#: util/grub-mkrescue.c:109 -msgid "use STRING as product name" -msgstr "useway INGSTRay asway oductpray amenay" - -#: util/grub-mkrescue.c:111 -msgid "" -"enable sparc boot. Disables HFS+, APM, ARCS and boot as disk image for i386-" -"pc" -msgstr "" -"enableway arcspay ootbay. isablesDay HFSay+, APMway, ARCSway andway ootbay " -"asway iskday imageway orfay iway386-pcay" - -#: util/grub-mkrescue.c:112 -msgid "" -"enable ARCS (big-endian mips machines, mostly SGI) boot. Disables HFS+, APM, " -"sparc64 and boot as disk image for i386-pc" -msgstr "" -"enableway ARCSway (igbay-endianway ipsmay achinesmay, ostlymay ISGay) " -"ootbay. isablesDay HFSay+, APMway, arcspay64 andway ootbay asway iskday " -"imageway orfay iway386-pcay" - -#. TRANSLATORS: it generates one single image which is bootable through any method. -#: util/grub-mkrescue.c:125 -msgid "Make GRUB CD-ROM, disk, pendrive and floppy bootable image." -msgstr "" -"akeMay UBGRay CDay-OMRay, iskday, endrivepay andway oppyflay ootablebay " -"imageway." - -#: util/grub-mkrescue.c:130 -#, c-format -msgid "" -"Generates a bootable CD/USB/floppy image. Arguments other than options to " -"this program are passed to xorriso, and indicate source files, source " -"directories, or any of the mkisofs options listed by the output of `%s'." -msgstr "" -"eneratesGay away ootablebay CDay/USBway/oppyflay imageway. Argumentsway " -"otherway anthay optionsway otay isthay ogrampray areway assedpay otay " -"orrisoxay, andway indicateway ourcesay ilesfay, ourcesay irectoriesday, " -"orway anyway ofway ethay isofsmkay optionsway istedlay ybay ethay outputway " -"ofway ‘%s’." - -#: util/grub-mkrescue.c:134 -msgid "Option -- switches to native xorriso command mode." -msgstr "Optionway -- itchessway otay ativenay orrisoxay ommandcay odemay." - -#: util/grub-mkrescue.c:135 -msgid "Mail xorriso support requests to ." -msgstr "" -"ailMay orrisoxay upportsay equestsray otay ." - -#: util/grub-mkrescue.c:221 util/grub-mkstandalone.c:114 -msgid "[OPTION] SOURCE..." -msgstr "[OPTIONway] OURCESay..." - -#: util/grub-mkrescue.c:257 util/grub-mkrescue.c:300 util/grub-mkrescue.c:588 -#, c-format -msgid "enabling %s support ..." -msgstr "enablingway %s upportsay ..." - -#: util/grub-mkrescue.c:486 -msgid "xorriso not found" -msgstr "orrisoxay otnay oundfay" - -#: util/grub-mkrescue.c:623 -msgid "" -"Your xorriso doesn't support `--grub2-boot-info'. Some features are " -"disabled. Please use xorriso 1.2.9 or later." -msgstr "" -"Your orrisoxay oesnday'tay upportsay ‘--ubgray2-ootbay-infoway’. omeSay " -"eaturesfay areway isabledday. easePlay useway orrisoxay 1.2.9 orway aterlay." - -#: util/grub-mkrescue.c:650 -msgid "" -"Your xorriso doesn't support `--grub2-boot-info'. Your core image is too " -"big. Boot as disk is disabled. Please use xorriso 1.2.9 or later." -msgstr "" -"Your orrisoxay oesnday'tay upportsay ‘--ubgray2-ootbay-infoway’. Your orecay " -"imageway isway ootay igbay. ootBay asway iskday isway isabledday. easePlay " -"useway orrisoxay 1.2.9 orway aterlay." - -#: util/grub-mkstandalone.c:115 -msgid "" -"Generate a standalone image (containing all modules) in the selected format" -msgstr "" -"enerateGay away andalonestay imageway (ontainingcay allway odulesmay) inway " -"ethay electedsay ormatfay" - -#: util/grub-mkstandalone.c:115 -msgid "Graft point syntax (E.g. /boot/grub/grub.cfg=./grub.cfg) is accepted" -msgstr "" -"aftGray ointpay yntaxsay (Eway.gay. /ootbay/ubgray/ubgray.cfgay=./ubgray." -"cfgay) isway acceptedway" - -#: util/grub-mount.c:552 -msgid "IMAGE1 [IMAGE2 ...] MOUNTPOINT" -msgstr "IMAGEway1 [IMAGEway2 ...] OUNTPOINTMay" - -#: util/grub-mount.c:575 -msgid "need an image and mountpoint" -msgstr "eednay anway imageway andway ountpointmay" - -#: util/grub-probe.c:731 -msgid "given argument is a system device, not a path" -msgstr "ivengay argumentway isway away ystemsay eviceday, otnay away athpay" - -#: util/grub-probe.c:736 -msgid "separate items in output using ASCII NUL characters" -msgstr "" -"eparatesay itemsway inway outputway usingway ASCIIway ULNay aracterschay" - -#: util/grub-probe.c:754 -#, c-format -msgid "[default=%s]" -msgstr "[efaultday=%s]" - -#: util/grub-probe.c:756 -msgid "print TARGET" -msgstr "intpray ARGETTay" - -#: util/grub-probe.c:757 -msgid "available targets:" -msgstr "availableway argetstay:" - -#: util/grub-probe.c:839 -msgid "[OPTION]... [PATH|DEVICE]" -msgstr "[OPTIONway]... [ATHPay|EVICEDay]" - -#: util/grub-probe.c:840 -msgid "" -"Probe device information for a given path (or device, if the -d option is " -"given)." -msgstr "" -"obePray eviceday informationway orfay away ivengay athpay (orway eviceday, " -"ifway ethay -day optionway isway ivengay)." - -#: util/grub-render-label.c:60 -msgid "read text from FILE." -msgstr "eadray exttay omfray ILEFay." - -#: util/grub-render-label.c:62 -msgid "use COLOR for text" -msgstr "useway OLORCay orfay exttay" - -#: util/grub-render-label.c:64 -msgid "use COLOR for background" -msgstr "useway OLORCay orfay ackgroundbay" - -#. TRANSLATORS: The result is always stored to file and -#. never shown directly, so don't use "show" as synonym for render. Use "create" if -#. "render" doesn't translate directly. -#: util/grub-render-label.c:69 -msgid "set the label to render" -msgstr "etsay ethay abellay otay enderray" - -#: util/grub-render-label.c:73 -msgid "use FILE as font (PF2)." -msgstr "useway ILEFay asway ontfay (PFay2)." - -#. TRANSLATORS: This file takes a text and creates a graphical representation of it, -#. putting the result into .disk_label file. The result is always stored to file and -#. never shown directly, so don't use "show" as synonym for render. Use "create" if -#. "render" doesn't translate directly. -#: util/grub-render-label.c:136 -msgid "Render Apple .disk_label." -msgstr "enderRay Appleway .iskday_abellay." - -#: util/grub-render-label.c:158 util/grub-syslinux2cfg.c:169 -msgid "Missing arguments\n" -msgstr "issingMay argumentsway\n" - -#: util/grub-script-check.c:87 -msgid "[PATH]" -msgstr "[ATHPay]" - -#: util/grub-script-check.c:88 -msgid "Checks GRUB script configuration file for syntax errors." -msgstr "" -"ecksChay UBGRay iptscray onfigurationcay ilefay orfay yntaxsay errorsway." - -#: util/grub-script-check.c:207 -#, c-format -msgid "Syntax error at line %u\n" -msgstr "yntaxSay errorway atway inelay %u\n" - -#: util/grub-script-check.c:212 -#, c-format -msgid "Script `%s' contains no commands and will do nothing\n" -msgstr "" -"iptScray ‘%s’ ontainscay onay ommandscay andway illway oday othingnay\n" - -#: util/grub-setup.c:79 -#, c-format -msgid "use FILE as the boot image [default=%s]" -msgstr "useway ILEFay asway ethay ootbay imageway [efaultday=%s]" - -#: util/grub-setup.c:81 -#, c-format -msgid "use FILE as the core image [default=%s]" -msgstr "useway ILEFay asway ethay orecay imageway [efaultday=%s]" - -#: util/grub-setup.c:210 -msgid "No device is specified.\n" -msgstr "oNay eviceday isway ecifiedspay.\n" - -#: util/grub-setup.c:224 -msgid "" -"Set up images to boot from DEVICE.\n" -"\n" -"You should not normally run this program directly. Use grub-install instead." -msgstr "" -"etSay upway imagesway otay ootbay omfray EVICEDay.\n" -"\n" -"You ouldshay otnay ormallynay unray isthay ogrampray irectlyday. Useway " -"ubgray-installway insteadway." - -#: util/grub-setup.c:228 -msgid "DEVICE must be an OS device (e.g. /dev/sda)." -msgstr "EVICEDay ustmay ebay anway OSway eviceday (eway.gay. /evday/asday)." - -#: util/grub-setup.c:297 -#, c-format -msgid "Invalid device `%s'.\n" -msgstr "Invalidway eviceday ‘%s’.\n" - -#: util/grub-syslinux2cfg.c:64 -msgid "root directory as it will be seen on runtime [default=/]." -msgstr "" -"ootray irectoryday asway itway illway ebay eensay onway untimeray " -"[efaultday=/]." - -#: util/grub-syslinux2cfg.c:69 -msgid "" -"current directory of syslinux as it will be seen on runtime [default is " -"parent directory of input file]." -msgstr "" -"urrentcay irectoryday ofway yslinuxsay asway itway illway ebay eensay onway " -"untimeray [efaultday isway arentpay irectoryday ofway inputway ilefay]." - -#: util/grub-syslinux2cfg.c:74 -msgid "write output to FILE [default=stdout]." -msgstr "itewray outputway otay ILEFay [efaultday=outstday]." - -#: util/grub-syslinux2cfg.c:148 -msgid "Transform syslinux config into GRUB one." -msgstr "ansformTray yslinuxsay onfigcay intoway UBGRay oneway." - -#: util/mkimage.c:688 util/mkimage.c:717 util/mkimage.c:734 -msgid "cannot compress the kernel image" -msgstr "annotcay ompresscay ethay ernelkay imageway" - -#: util/mkimage.c:766 util/mkimage.c:1077 -#, c-format -msgid "unknown compression %d" -msgstr "unknownway ompressioncay %d" - -#: util/mkimage.c:1088 -msgid "Decompressor is too big" -msgstr "ecompressorDay isway ootay igbay" - -#: util/mkimage.c:1133 -#, c-format -msgid "core image is too big (0x%x > 0x%x)" -msgstr "orecay imageway isway ootay igbay (0x%x > 0x%x)" - -#: util/mkimage.c:1140 -#, c-format -msgid "kernel image is too big (0x%x > 0x%x)" -msgstr "ernelkay imageway isway ootay igbay (0x%x > 0x%x)" - -#: util/mkimage.c:1220 util/mkimage.c:1501 -#, c-format -msgid "diskboot.img size must be %u bytes" -msgstr "iskbootday.imgway izesay ustmay ebay %u ytesbay" - -#: util/mkimage.c:1571 -msgid "" -"fwstart.img doesn't match the known good version. proceed at your own risk" -msgstr "" -"artfwstay.imgway oesnday'tay atchmay ethay ownknay oodgay ersionvay. " -"oceedpray atway your ownway iskray" - -#: util/mkimage.c:1575 util/mkimage.c:1601 -msgid "firmware image is too big" -msgstr "irmwarefay imageway isway ootay igbay" - -#: util/resolve.c:93 -#, c-format -msgid "invalid line format: %s" -msgstr "invalidway inelay ormatfay: %s" - -#: util/setup.c:167 -msgid "the first sector of the core file is not sector-aligned" -msgstr "" -"ethay irstfay ectorsay ofway ethay orecay ilefay isway otnay ectorsay-" -"alignedway" - -#: util/setup.c:177 -msgid "non-sector-aligned data is found in the core file" -msgstr "" -"onnay-ectorsay-alignedway ataday isway oundfay inway ethay orecay ilefay" - -#: util/setup.c:199 -msgid "the sectors of the core file are too fragmented" -msgstr "ethay ectorssay ofway ethay orecay ilefay areway ootay agmentedfray" - -#: util/setup.c:280 -#, c-format -msgid "the size of `%s' is not %u" -msgstr "ethay izesay ofway ‘%s’ isway otnay %u" - -#: util/setup.c:290 -#, c-format -msgid "the size of `%s' is too small" -msgstr "ethay izesay ofway ‘%s’ isway ootay allsmay" - -#: util/setup.c:428 -msgid "" -"Attempting to install GRUB to a disk with multiple partition labels or both " -"partition label and filesystem. This is not supported yet." -msgstr "" -"Attemptingway otay installway UBGRay otay away iskday ithway ultiplemay " -"artitionpay abelslay orway othbay artitionpay abellay andway ilesystemfay. " -"isThay isway otnay upportedsay yet." - -#: util/setup.c:441 -#, c-format -msgid "unable to identify a filesystem in %s; safety check can't be performed" -msgstr "" -"unableway otay identifyway away ilesystemfay inway %s; afetysay eckchay " -"ancay'tay ebay erformedpay" - -#. TRANSLATORS: Filesystem may reserve the space just GRUB isn't sure about it. -#: util/setup.c:445 -#, c-format -msgid "" -"%s appears to contain a %s filesystem which isn't known to reserve space for " -"DOS-style boot. Installing GRUB there could result in FILESYSTEM " -"DESTRUCTION if valuable data is overwritten by grub-setup (--skip-fs-probe " -"disables this check, use at your own risk)" -msgstr "" -"%s appearsway otay ontaincay away %s ilesystemfay ichwhay isnway'tay ownknay " -"otay eserveray acespay orfay OSDay-ylestay ootbay. Installingway UBGRay " -"erethay ouldcay esultray inway ILESYSTEMFay ESTRUCTIONDay ifway aluablevay " -"ataday isway overwrittenway ybay ubgray-etupsay (--ipskay-fsay-obepray " -"isablesday isthay eckchay, useway atway your ownway iskray)" - -#. TRANSLATORS: Partition map may reserve the space just GRUB isn't sure about it. -#: util/setup.c:458 -#, c-format -msgid "" -"%s appears to contain a %s partition map which isn't known to reserve space " -"for DOS-style boot. Installing GRUB there could result in FILESYSTEM " -"DESTRUCTION if valuable data is overwritten by grub-setup (--skip-fs-probe " -"disables this check, use at your own risk)" -msgstr "" -"%s appearsway otay ontaincay away %s artitionpay apmay ichwhay isnway'tay " -"ownknay otay eserveray acespay orfay OSDay-ylestay ootbay. Installingway " -"UBGRay erethay ouldcay esultray inway ILESYSTEMFay ESTRUCTIONDay ifway " -"aluablevay ataday isway overwrittenway ybay ubgray-etupsay (--ipskay-fsay-" -"obepray isablesday isthay eckchay, useway atway your ownway iskray)" - -#: util/setup.c:465 -#, c-format -msgid "" -"%s appears to contain a %s partition map and LDM which isn't known to be a " -"safe combination. Installing GRUB there could result in FILESYSTEM " -"DESTRUCTION if valuable data is overwritten by grub-setup (--skip-fs-probe " -"disables this check, use at your own risk)" -msgstr "" -"%s appearsway otay ontaincay away %s artitionpay apmay andway LDMay ichwhay " -"isnway'tay ownknay otay ebay away afesay ombinationcay. Installingway " -"UBGRay erethay ouldcay esultray inway ILESYSTEMFay ESTRUCTIONDay ifway " -"aluablevay ataday isway overwrittenway ybay ubgray-etupsay (--ipskay-fsay-" -"obepray isablesday isthay eckchay, useway atway your ownway iskray)" - -#: util/setup.c:478 -msgid "" -"Attempting to install GRUB to a partitionless disk or to a partition. This " -"is a BAD idea." -msgstr "" -"Attemptingway otay installway UBGRay otay away artitionlesspay iskday orway " -"otay away artitionpay. isThay isway away ADBay ideaway." - -#: util/setup.c:483 -msgid "" -"Attempting to install GRUB to a disk with multiple partition labels. This " -"is not supported yet." -msgstr "" -"Attemptingway otay installway UBGRay otay away iskday ithway ultiplemay " -"artitionpay abelslay. isThay isway otnay upportedsay yet." - -#: util/setup.c:489 -#, c-format -msgid "Partition style `%s' doesn't support embedding" -msgstr "artitionPay ylestay ‘%s’ oesnday'tay upportsay embeddingway" - -#: util/setup.c:496 -#, c-format -msgid "File system `%s' doesn't support embedding" -msgstr "ileFay ystemsay ‘%s’ oesnday'tay upportsay embeddingway" - -#: util/setup.c:537 -msgid "Your embedding area is unusually small. core.img won't fit in it." -msgstr "" -"Your embeddingway areaway isway unusuallyway allsmay. orecay.imgway " -"onway'tay itfay inway itway." - -#: util/setup.c:559 util/setup.c:725 util/setup.c:844 -msgid "no terminator in the core image" -msgstr "onay erminatortay inway ethay orecay imageway" - -#: util/setup.c:622 -msgid "core.img version mismatch" -msgstr "orecay.imgway ersionvay ismatchmay" - -#: util/setup.c:675 -msgid "" -"embedding is not possible, but this is required for RAID and LVM install" -msgstr "" -"embeddingway isway otnay ossiblepay, utbay isthay isway equiredray orfay " -"AIDRay andway LVMay installway" - -#: util/setup.c:682 -#, c-format -msgid "can't determine filesystem on %s" -msgstr "ancay'tay etermineday ilesystemfay onway %s" - -#: util/setup.c:685 -#, c-format -msgid "filesystem `%s' doesn't support blocklists" -msgstr "ilesystemfay ‘%s’ oesnday'tay upportsay ocklistsblay" - -#. TRANSLATORS: cross-disk refers to /boot being on one disk -#. but MBR on another. -#: util/setup.c:694 -msgid "embedding is not possible, but this is required for cross-disk install" -msgstr "" -"embeddingway isway otnay ossiblepay, utbay isthay isway equiredray orfay " -"osscray-iskday installway" - -#: util/setup.c:700 -msgid "" -"Embedding is not possible. GRUB can only be installed in this setup by " -"using blocklists. However, blocklists are UNRELIABLE and their use is " -"discouraged." -msgstr "" -"Embeddingway isway otnay ossiblepay. UBGRay ancay onlyway ebay installedway " -"inway isthay etupsay ybay usingway ocklistsblay. oweverHay, ocklistsblay " -"areway UNRELIABLEway andway eirthay useway isway iscouragedday." - -#. TRANSLATORS: Here GRUB refuses to continue with blocklist install. -#: util/setup.c:705 -msgid "will not proceed with blocklists" -msgstr "illway otnay oceedpray ithway ocklistsblay" - -#: util/setup.c:817 util/setup.c:837 -msgid "blocklists are invalid" -msgstr "ocklistsblay areway invalidway" - -#: util/setup.c:847 -msgid "blocklists are incomplete" -msgstr "ocklistsblay areway incompleteway" diff --git a/thirdparty/grub-2.04/po/en@quot.gmo b/thirdparty/grub-2.04/po/en@quot.gmo deleted file mode 100644 index 8467fd8ccfaa3e3fe7388a63eee2d11a3f8a207d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 115158 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£L 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

d+RSq9VZlS|s04Somf^L$55+iGt{zndm~v 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 z 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 IN5j|uKOj2h`2YX_ diff --git a/thirdparty/grub-2.04/po/en@quot.header b/thirdparty/grub-2.04/po/en@quot.header deleted file mode 100644 index a9647fc35..000000000 --- a/thirdparty/grub-2.04/po/en@quot.header +++ /dev/null @@ -1,22 +0,0 @@ -# All this catalog "translates" are quotation characters. -# The msgids must be ASCII and therefore cannot contain real quotation -# characters, only substitutes like grave accent (0x60), apostrophe (0x27) -# and double quote (0x22). These substitutes look strange; see -# http://www.cl.cam.ac.uk/~mgk25/ucs/quotes.html -# -# This catalog translates grave accent (0x60) and apostrophe (0x27) to -# left single quotation mark (U+2018) and right single quotation mark (U+2019). -# It also translates pairs of apostrophe (0x27) to -# left single quotation mark (U+2018) and right single quotation mark (U+2019) -# and pairs of quotation mark (0x22) to -# left double quotation mark (U+201C) and right double quotation mark (U+201D). -# -# When output to an UTF-8 terminal, the quotation characters appear perfectly. -# When output to an ISO-8859-1 terminal, the single quotation marks are -# transliterated to apostrophes (by iconv in glibc 2.2 or newer) or to -# grave/acute accent (by libiconv), and the double quotation marks are -# transliterated to 0x22. -# When output to an ASCII terminal, the single quotation marks are -# transliterated to apostrophes, and the double quotation marks are -# transliterated to 0x22. -# diff --git a/thirdparty/grub-2.04/po/en@quot.po b/thirdparty/grub-2.04/po/en@quot.po deleted file mode 100644 index 73f70279c..000000000 --- a/thirdparty/grub-2.04/po/en@quot.po +++ /dev/null @@ -1,6600 +0,0 @@ -# English translations for grub package. -# Copyright (C) 2019 Free Software Foundation, Inc. -# This file is distributed under the same license as the grub package. -# Automatically generated, 2019. -# -# All this catalog "translates" are quotation characters. -# The msgids must be ASCII and therefore cannot contain real quotation -# characters, only substitutes like grave accent (0x60), apostrophe (0x27) -# and double quote (0x22). These substitutes look strange; see -# http://www.cl.cam.ac.uk/~mgk25/ucs/quotes.html -# -# This catalog translates grave accent (0x60) and apostrophe (0x27) to -# left single quotation mark (U+2018) and right single quotation mark (U+2019). -# It also translates pairs of apostrophe (0x27) to -# left single quotation mark (U+2018) and right single quotation mark (U+2019) -# and pairs of quotation mark (0x22) to -# left double quotation mark (U+201C) and right double quotation mark (U+201D). -# -# When output to an UTF-8 terminal, the quotation characters appear perfectly. -# When output to an ISO-8859-1 terminal, the single quotation marks are -# transliterated to apostrophes (by iconv in glibc 2.2 or newer) or to -# grave/acute accent (by libiconv), and the double quotation marks are -# transliterated to 0x22. -# When output to an ASCII terminal, the single quotation marks are -# transliterated to apostrophes, and the double quotation marks are -# transliterated to 0x22. -# -msgid "" -msgstr "" -"Project-Id-Version: grub 2.04\n" -"Report-Msgid-Bugs-To: bug-grub@gnu.org\n" -"POT-Creation-Date: 2019-07-04 16:09+0200\n" -"PO-Revision-Date: 2019-07-04 16:09+0200\n" -"Last-Translator: Automatically generated\n" -"Language-Team: none\n" -"Language: en@quot\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=2; plural=(n != 1);\n" - -#: grub-core/bus/usb/serial/ftdi.c:145 grub-core/bus/usb/serial/pl2303.c:158 -#: grub-core/term/ieee1275/escc.c:169 grub-core/term/ns8250.c:202 -msgid "unsupported serial port speed" -msgstr "unsupported serial port speed" - -#: grub-core/bus/usb/serial/ftdi.c:151 grub-core/bus/usb/serial/pl2303.c:164 -#: grub-core/term/efi/serial.c:116 grub-core/term/ieee1275/escc.c:175 -#: grub-core/term/ns8250.c:208 grub-core/term/serial.c:227 -#: grub-core/term/serial.c:243 -msgid "unsupported serial port parity" -msgstr "unsupported serial port parity" - -#: grub-core/bus/usb/serial/ftdi.c:157 grub-core/bus/usb/serial/pl2303.c:170 -#: grub-core/term/efi/serial.c:122 grub-core/term/ieee1275/escc.c:181 -#: grub-core/term/ns8250.c:213 grub-core/term/serial.c:267 -msgid "unsupported serial port stop bits number" -msgstr "unsupported serial port stop bits number" - -#: grub-core/bus/usb/serial/ftdi.c:161 grub-core/bus/usb/serial/pl2303.c:174 -#: grub-core/term/efi/serial.c:126 grub-core/term/ieee1275/escc.c:185 -#: grub-core/term/ns8250.c:217 -msgid "unsupported serial port word length" -msgstr "unsupported serial port word length" - -#: grub-core/commands/acpi.c:42 -msgid "Don't load host tables specified by comma-separated list." -msgstr "Don't load host tables specified by comma-separated list." - -#: grub-core/commands/acpi.c:45 -msgid "Load only tables specified by comma-separated list." -msgstr "Load only tables specified by comma-separated list." - -#: grub-core/commands/acpi.c:46 -msgid "Export version 1 tables to the OS." -msgstr "Export version 1 tables to the OS." - -#: grub-core/commands/acpi.c:47 -msgid "Export version 2 and version 3 tables to the OS." -msgstr "Export version 2 and version 3 tables to the OS." - -#: grub-core/commands/acpi.c:48 -msgid "Set OEMID of RSDP, XSDT and RSDT." -msgstr "Set OEMID of RSDP, XSDT and RSDT." - -#: grub-core/commands/acpi.c:50 -msgid "Set OEMTABLE ID of RSDP, XSDT and RSDT." -msgstr "Set OEMTABLE ID of RSDP, XSDT and RSDT." - -#: grub-core/commands/acpi.c:52 -msgid "Set OEMTABLE revision of RSDP, XSDT and RSDT." -msgstr "Set OEMTABLE revision of RSDP, XSDT and RSDT." - -#: grub-core/commands/acpi.c:54 -msgid "Set creator field of RSDP, XSDT and RSDT." -msgstr "Set creator field of RSDP, XSDT and RSDT." - -#: grub-core/commands/acpi.c:56 -msgid "Set creator revision of RSDP, XSDT and RSDT." -msgstr "Set creator revision of RSDP, XSDT and RSDT." - -#. TRANSLATORS: "hangs" here is a noun, not a verb. -#: grub-core/commands/acpi.c:58 -msgid "" -"Don't update EBDA. May fix failures or hangs on some BIOSes but makes it " -"ineffective with OS not receiving RSDP from GRUB." -msgstr "" -"Don't update EBDA. May fix failures or hangs on some BIOSes but makes it " -"ineffective with OS not receiving RSDP from GRUB." - -#: grub-core/commands/acpi.c:650 grub-core/commands/acpi.c:667 -#: grub-core/commands/i386/pc/play.c:105 grub-core/commands/keylayouts.c:230 -#: grub-core/commands/keylayouts.c:245 grub-core/commands/keylayouts.c:263 -#: grub-core/commands/verifiers.c:156 grub-core/efiemu/loadcore.c:350 -#: grub-core/kern/elf.c:117 grub-core/kern/elfXX.c:29 -#: grub-core/kern/elfXX.c:156 grub-core/loader/arm/linux.c:319 -#: grub-core/loader/arm64/linux.c:330 grub-core/loader/arm64/xen_boot.c:356 -#: grub-core/loader/efi/chainloader.c:276 -#: grub-core/loader/efi/chainloader.c:297 -#: grub-core/loader/efi/chainloader.c:329 grub-core/loader/efi/fdt.c:138 -#: grub-core/loader/i386/bsd.c:1276 grub-core/loader/i386/bsd.c:2116 -#: grub-core/loader/i386/bsdXX.c:20 grub-core/loader/i386/bsdXX.c:36 -#: grub-core/loader/i386/bsdXX.c:63 grub-core/loader/i386/bsdXX.c:357 -#: grub-core/loader/i386/bsdXX.c:376 grub-core/loader/i386/bsdXX.c:519 -#: grub-core/loader/i386/bsdXX.c:535 grub-core/loader/i386/bsdXX.c:615 -#: grub-core/loader/i386/bsdXX.c:638 -#: grub-core/loader/i386/coreboot/chainloader.c:112 -#: grub-core/loader/i386/coreboot/chainloader.c:148 -#: grub-core/loader/i386/coreboot/chainloader.c:170 -#: grub-core/loader/i386/linux.c:667 grub-core/loader/i386/linux.c:788 -#: grub-core/loader/i386/linux.c:1005 grub-core/loader/i386/multiboot_mbi.c:171 -#: grub-core/loader/i386/pc/chainloader.c:202 -#: grub-core/loader/i386/pc/linux.c:149 grub-core/loader/i386/pc/linux.c:320 -#: grub-core/loader/i386/pc/linux.c:362 grub-core/loader/i386/pc/plan9.c:457 -#: grub-core/loader/i386/pc/plan9.c:550 grub-core/loader/i386/pc/plan9.c:566 -#: grub-core/loader/i386/xen.c:934 grub-core/loader/i386/xen_file.c:72 -#: grub-core/loader/i386/xen_fileXX.c:43 grub-core/loader/i386/xen_fileXX.c:186 -#: grub-core/loader/i386/xen_fileXX.c:339 grub-core/loader/ia64/efi/linux.c:423 -#: grub-core/loader/ia64/efi/linux.c:471 grub-core/loader/linux.c:286 -#: grub-core/loader/macho.c:84 grub-core/loader/macho.c:109 -#: grub-core/loader/machoXX.c:33 grub-core/loader/machoXX.c:46 -#: grub-core/loader/machoXX.c:76 grub-core/loader/machoXX.c:116 -#: grub-core/loader/machoXX.c:131 grub-core/loader/machoXX.c:147 -#: grub-core/loader/machoXX.c:196 grub-core/loader/machoXX.c:317 -#: grub-core/loader/multiboot.c:434 grub-core/loader/multiboot_elfxx.c:171 -#: grub-core/loader/multiboot_elfxx.c:234 -#: grub-core/loader/multiboot_elfxx.c:278 grub-core/loader/multiboot_mbi2.c:129 -#: grub-core/loader/xnu.c:737 grub-core/loader/xnu.c:795 -#: grub-core/loader/xnu.c:816 grub-core/loader/xnu.c:871 -#: grub-core/loader/xnu.c:914 grub-core/loader/xnu.c:952 -#: grub-core/loader/xnu_resume.c:68 grub-core/loader/xnu_resume.c:153 -#: grub-core/loader/xnu_resume.c:165 util/grub-mkimagexx.c:2288 -#, c-format -msgid "premature end of file %s" -msgstr "premature end of file %s" - -#: grub-core/commands/acpi.c:779 -msgid "" -"[-1|-2] [--exclude=TABLE1,TABLE2|--load-only=TABLE1,TABLE2] FILE1 [FILE2] " -"[...]" -msgstr "" -"[-1|-2] [--exclude=TABLE1,TABLE2|--load-only=TABLE1,TABLE2] FILE1 [FILE2] " -"[...]" - -#: grub-core/commands/acpi.c:782 -msgid "Load host ACPI tables and tables specified by arguments." -msgstr "Load host ACPI tables and tables specified by arguments." - -#: grub-core/commands/acpihalt.c:368 grub-core/kern/err.c:110 -#, c-format -msgid "error: %s.\n" -msgstr "error: %s.\n" - -#: grub-core/commands/acpihalt.c:368 grub-core/kern/emu/misc.c:95 -#: grub-core/kern/emu/misc.c:105 grub-core/kern/emu/misc.c:134 -#: grub-core/kern/emu/mm.c:34 grub-core/kern/emu/mm.c:62 -#: grub-core/kern/mm.c:374 grub-core/lib/relocator.c:1282 -#: grub-core/lib/relocator.c:1439 grub-core/lib/relocator.c:1538 -#: grub-core/loader/arm/linux.c:259 grub-core/loader/arm64/linux.c:265 -#: grub-core/loader/arm64/linux.c:321 grub-core/loader/arm64/linux.c:340 -#: grub-core/loader/arm64/xen_boot.c:344 grub-core/loader/arm64/xen_boot.c:367 -#: grub-core/loader/efi/chainloader.c:289 grub-core/osdep/unix/dl.c:48 -#: grub-core/osdep/windows/dl.c:46 grub-core/script/lexer.c:156 -#: grub-core/script/lexer.c:182 -msgid "out of memory" -msgstr "out of memory" - -#: grub-core/commands/acpihalt.c:374 grub-core/disk/cryptodisk.c:587 -#: grub-core/disk/cryptodisk.c:632 grub-core/kern/emu/hostdisk.c:307 -#: grub-core/kern/emu/hostfs.c:149 grub-core/kern/emu/misc.c:200 -#: grub-core/osdep/linux/ofpath.c:195 grub-core/osdep/linux/ofpath.c:521 -#: grub-core/osdep/linux/ofpath.c:534 util/glue-efi.c:80 util/glue-efi.c:94 -#: util/grub-editenv.c:155 util/grub-fstest.c:577 -#: util/grub-install-common.c:943 util/grub-mkrescue.c:634 -#: util/grub-mkrescue.c:888 util/grub-mount.c:506 util/grub-render-label.c:176 -#: util/misc.c:95 util/setup.c:814 util/setup.c:833 -#, c-format -msgid "cannot read `%s': %s" -msgstr "cannot read ‘%s’: %s" - -#. TRANSLATORS: It's computer shutdown using ACPI, not disabling ACPI. -#: grub-core/commands/acpihalt.c:452 -msgid "ACPI shutdown failed" -msgstr "ACPI shutdown failed" - -#: grub-core/commands/arc/lsdev.c:51 -msgid "List devices." -msgstr "List devices." - -#: grub-core/commands/blocklist.c:122 grub-core/commands/cat.c:57 -#: grub-core/commands/configfile.c:35 grub-core/commands/efi/loadbios.c:168 -#: grub-core/commands/file.c:159 grub-core/commands/hexdump.c:47 -#: grub-core/commands/legacycfg.c:209 grub-core/commands/legacycfg.c:315 -#: grub-core/commands/minicmd.c:44 grub-core/commands/syslinuxcfg.c:146 -#: grub-core/commands/testload.c:58 grub-core/commands/testspeed.c:52 -#: grub-core/disk/loopback.c:93 grub-core/efiemu/main.c:293 -#: grub-core/font/font_cmd.c:32 grub-core/kern/emu/hostdisk.c:519 -#: grub-core/loader/arm/linux.c:364 grub-core/loader/arm/linux.c:409 -#: grub-core/loader/arm/linux.c:472 grub-core/loader/arm64/linux.c:243 -#: grub-core/loader/arm64/linux.c:297 grub-core/loader/arm64/xen_boot.c:398 -#: grub-core/loader/arm64/xen_boot.c:411 grub-core/loader/arm64/xen_boot.c:462 -#: grub-core/loader/efi/chainloader.c:216 grub-core/loader/i386/bsd.c:1462 -#: grub-core/loader/i386/bsd.c:1807 grub-core/loader/i386/bsd.c:2085 -#: grub-core/loader/i386/coreboot/chainloader.c:438 -#: grub-core/loader/i386/linux.c:656 grub-core/loader/i386/linux.c:1041 -#: grub-core/loader/i386/pc/chainloader.c:290 -#: grub-core/loader/i386/pc/freedos.c:105 grub-core/loader/i386/pc/linux.c:138 -#: grub-core/loader/i386/pc/linux.c:400 grub-core/loader/i386/pc/ntldr.c:85 -#: grub-core/loader/i386/pc/plan9.c:409 -#: grub-core/loader/i386/pc/pxechainloader.c:94 -#: grub-core/loader/i386/pc/truecrypt.c:96 grub-core/loader/i386/xen.c:641 -#: grub-core/loader/i386/xen.c:768 grub-core/loader/i386/xen.c:844 -#: grub-core/loader/i386/xen.c:854 grub-core/loader/i386/xnu.c:488 -#: grub-core/loader/ia64/efi/linux.c:459 grub-core/loader/ia64/efi/linux.c:539 -#: grub-core/loader/mips/linux.c:238 grub-core/loader/mips/linux.c:429 -#: grub-core/loader/multiboot.c:322 grub-core/loader/multiboot.c:374 -#: grub-core/loader/multiboot.c:384 -#: grub-core/loader/powerpc/ieee1275/linux.c:269 -#: grub-core/loader/powerpc/ieee1275/linux.c:341 -#: grub-core/loader/sparc64/ieee1275/linux.c:305 -#: grub-core/loader/sparc64/ieee1275/linux.c:381 grub-core/loader/xnu.c:351 -#: grub-core/loader/xnu.c:460 grub-core/loader/xnu.c:778 -#: grub-core/loader/xnu.c:892 grub-core/loader/xnu.c:1277 -#: grub-core/loader/xnu.c:1427 grub-core/loader/xnu.c:1453 -#: grub-core/video/readers/jpeg.c:812 grub-core/video/readers/png.c:1123 -msgid "filename expected" -msgstr "filename expected" - -#. TRANSLATORS: "embed" is a verb (command description). " -#: grub-core/commands/blocklist.c:154 grub-core/commands/cat.c:163 -#: grub-core/commands/configfile.c:65 grub-core/commands/configfile.c:68 -#: grub-core/commands/configfile.c:74 grub-core/commands/configfile.c:80 -#: grub-core/commands/configfile.c:86 grub-core/commands/hashsum.c:34 -#: grub-core/commands/legacycfg.c:834 grub-core/commands/legacycfg.c:841 -#: grub-core/commands/legacycfg.c:846 grub-core/commands/legacycfg.c:851 -#: grub-core/commands/macbless.c:222 grub-core/commands/minicmd.c:198 -#: grub-core/commands/syslinuxcfg.c:186 grub-core/commands/syslinuxcfg.c:194 -#: grub-core/commands/syslinuxcfg.c:200 grub-core/commands/syslinuxcfg.c:206 -#: grub-core/commands/testload.c:163 grub-core/efiemu/main.c:312 -#: grub-core/kern/emu/main.c:100 grub-core/kern/emu/main.c:103 -#: grub-core/loader/i386/bsd.c:2137 grub-core/loader/i386/bsd.c:2140 -#: grub-core/loader/i386/bsd.c:2143 -#: grub-core/loader/i386/coreboot/chainloader.c:505 -#: grub-core/loader/ia64/efi/linux.c:594 include/grub/util/install.h:32 -#: include/grub/util/install.h:64 util/grub-glue-efi.c:52 -#: util/grub-glue-efi.c:54 util/grub-glue-efi.c:56 util/grub-install.c:254 -#: util/grub-install.c:301 util/grub-mkfont.c:936 util/grub-mkimage.c:68 -#: util/grub-mkimage.c:74 util/grub-mkimage.c:76 util/grub-mkimage.c:78 -#: util/grub-mkimage.c:81 util/grub-mklayout.c:52 util/grub-mklayout.c:54 -#: util/grub-mkrescue.c:97 util/grub-mkrescue.c:101 util/grub-mkrescue.c:104 -#: util/grub-mkrescue.c:105 util/grub-mkrescue.c:106 -#: util/grub-mkstandalone.c:47 util/grub-mkstandalone.c:49 -#: util/grub-probe.c:732 util/grub-render-label.c:59 -#: util/grub-render-label.c:70 util/grub-render-label.c:72 util/grub-setup.c:78 -#: util/grub-setup.c:80 util/grub-setup.c:84 util/grub-syslinux2cfg.c:74 -#: util/grub-syslinux2cfg.c:147 -msgid "FILE" -msgstr "FILE" - -#: grub-core/commands/blocklist.c:154 -msgid "Print a block list." -msgstr "Print a block list." - -#: grub-core/commands/boot.c:147 grub-core/commands/legacycfg.c:533 -#: grub-core/commands/legacycfg.c:574 grub-core/loader/arm64/linux.c:250 -#: grub-core/loader/i386/bsd.c:1799 grub-core/loader/i386/bsd.c:1900 -#: grub-core/loader/i386/bsd.c:2007 grub-core/loader/i386/bsd.c:2040 -#: grub-core/loader/i386/bsd.c:2089 grub-core/loader/i386/linux.c:1047 -#: grub-core/loader/i386/pc/linux.c:406 grub-core/loader/i386/xen.c:775 -#: grub-core/loader/i386/xen.c:859 grub-core/loader/ia64/efi/linux.c:545 -#: grub-core/loader/mips/linux.c:432 grub-core/loader/multiboot.c:388 -#: grub-core/loader/powerpc/ieee1275/linux.c:347 -#: grub-core/loader/sparc64/ieee1275/linux.c:387 grub-core/loader/xnu.c:572 -#: grub-core/loader/xnu.c:665 grub-core/loader/xnu.c:781 -#: grub-core/loader/xnu.c:895 grub-core/loader/xnu.c:1091 -#: grub-core/loader/xnu.c:1258 grub-core/loader/xnu.c:1289 -#: grub-core/loader/xnu.c:1430 -msgid "you need to load the kernel first" -msgstr "you need to load the kernel first" - -#: grub-core/commands/boot.c:189 -msgid "Boot an operating system." -msgstr "Boot an operating system." - -#: grub-core/commands/boottime.c:36 -#: grub-core/commands/i386/coreboot/cb_timestamps.c:108 -msgid "No boot time statistics is available\n" -msgstr "No boot time statistics is available\n" - -#: grub-core/commands/boottime.c:59 -msgid "Show boot time statistics." -msgstr "Show boot time statistics." - -#: grub-core/commands/cacheinfo.c:40 -#, c-format -msgid "Disk cache statistics: hits = %lu (%lu.%02lu%%), misses = %lu\n" -msgstr "Disk cache statistics: hits = %lu (%lu.%02lu%%), misses = %lu\n" - -#: grub-core/commands/cacheinfo.c:45 -msgid "No disk cache statistics available\n" -msgstr "No disk cache statistics available\n" - -#: grub-core/commands/cacheinfo.c:56 -msgid "Get disk cache info." -msgstr "Get disk cache info." - -#: grub-core/commands/cat.c:33 -msgid "Accept DOS-style CR/NL line endings." -msgstr "Accept DOS-style CR/NL line endings." - -#: grub-core/commands/cat.c:163 grub-core/commands/minicmd.c:198 -msgid "Show the contents of a file." -msgstr "Show the contents of a file." - -#: grub-core/commands/cmp.c:43 grub-core/commands/i386/pc/drivemap.c:239 -#: grub-core/commands/i386/wrmsr.c:60 grub-core/commands/iorw.c:85 -#: grub-core/commands/memrw.c:84 grub-core/commands/password.c:75 -#: grub-core/commands/password_pbkdf2.c:94 grub-core/commands/pgp.c:826 -#: grub-core/commands/regexp.c:113 grub-core/mmap/mmap.c:517 -#: grub-core/net/dns.c:639 -msgid "two arguments expected" -msgstr "two arguments expected" - -#: grub-core/commands/cmp.c:45 -#, c-format -msgid "Compare file `%s' with `%s':\n" -msgstr "Compare file ‘%s’ with ‘%s’:\n" - -#: grub-core/commands/cmp.c:54 -#, c-format -msgid "Files differ in size: %llu [%s], %llu [%s]\n" -msgstr "Files differ in size: %llu [%s], %llu [%s]\n" - -#: grub-core/commands/cmp.c:81 -#, c-format -msgid "Files differ at the offset %llu: 0x%x [%s], 0x%x [%s]\n" -msgstr "Files differ at the offset %llu: 0x%x [%s], 0x%x [%s]\n" - -#. TRANSLATORS: it's always exactly 2 files. -#: grub-core/commands/cmp.c:93 -msgid "The files are identical.\n" -msgstr "The files are identical.\n" - -#: grub-core/commands/cmp.c:113 -msgid "FILE1 FILE2" -msgstr "FILE1 FILE2" - -#: grub-core/commands/cmp.c:113 -msgid "Compare two files." -msgstr "Compare two files." - -#: grub-core/commands/configfile.c:65 -msgid "Load another config file." -msgstr "Load another config file." - -#: grub-core/commands/configfile.c:69 grub-core/commands/configfile.c:87 -msgid "Load another config file without changing context." -msgstr "Load another config file without changing context." - -#: grub-core/commands/configfile.c:75 -msgid "" -"Load another config file without changing context but take only menu entries." -msgstr "" -"Load another config file without changing context but take only menu entries." - -#: grub-core/commands/configfile.c:81 -msgid "Load another config file but take only menu entries." -msgstr "Load another config file but take only menu entries." - -#: grub-core/commands/date.c:141 -msgid "[[year-]month-day] [hour:minute[:second]]" -msgstr "[[year-]month-day] [hour:minute[:second]]" - -#: grub-core/commands/date.c:142 -msgid "Display/set current datetime." -msgstr "Display/set current datetime." - -#: grub-core/commands/echo.c:30 -msgid "Do not output the trailing newline." -msgstr "Do not output the trailing newline." - -#: grub-core/commands/echo.c:31 -msgid "Enable interpretation of backslash escapes." -msgstr "Enable interpretation of backslash escapes." - -#: grub-core/commands/echo.c:134 -msgid "[-e|-n] STRING" -msgstr "[-e|-n] STRING" - -#: grub-core/commands/echo.c:134 -msgid "Display a line of text." -msgstr "Display a line of text." - -#: grub-core/commands/efi/efifwsetup.c:82 -msgid "Reboot into firmware setup menu." -msgstr "Reboot into firmware setup menu." - -#: grub-core/commands/efi/fixvideo.c:107 -msgid "Fix video problem." -msgstr "Fix video problem." - -#: grub-core/commands/efi/loadbios.c:52 -msgid "ROM image is present." -msgstr "ROM image is present." - -#: grub-core/commands/efi/loadbios.c:70 -msgid "Can't enable ROM area." -msgstr "Can't enable ROM area." - -#: grub-core/commands/efi/loadbios.c:209 -msgid "" -"Create BIOS-like structures for backward compatibility with existing OS." -msgstr "" -"Create BIOS-like structures for backward compatibility with existing OS." - -#: grub-core/commands/efi/loadbios.c:214 -msgid "BIOS_DUMP [INT10_DUMP]" -msgstr "BIOS_DUMP [INT10_DUMP]" - -#: grub-core/commands/efi/loadbios.c:215 -msgid "Load BIOS dump." -msgstr "Load BIOS dump." - -#: grub-core/commands/efi/shim_lock.c:76 -#, c-format -msgid "module cannot be loaded in UEFI secure boot mode: %s" -msgstr "module cannot be loaded in UEFI secure boot mode: %s" - -#: grub-core/commands/efi/shim_lock.c:98 -#, c-format -msgid "cannot boot due to dangerous module in memory: %s" -msgstr "cannot boot due to dangerous module in memory: %s" - -#: grub-core/commands/efi/shim_lock.c:116 -msgid "bad shim signature" -msgstr "bad shim signature" - -#: grub-core/commands/efi/tpm.c:149 grub-core/commands/efi/tpm.c:189 -#: grub-core/commands/efi/tpm.c:256 grub-core/commands/efi/tpm.c:306 -msgid "Command failed" -msgstr "Command failed" - -#: grub-core/commands/efi/tpm.c:151 grub-core/commands/efi/tpm.c:191 -#: grub-core/commands/efi/tpm.c:258 grub-core/commands/efi/tpm.c:308 -msgid "Invalid parameter" -msgstr "Invalid parameter" - -#: grub-core/commands/efi/tpm.c:154 grub-core/commands/efi/tpm.c:194 -#: grub-core/commands/efi/tpm.c:261 grub-core/commands/efi/tpm.c:311 -msgid "Output buffer too small" -msgstr "Output buffer too small" - -#: grub-core/commands/efi/tpm.c:156 grub-core/commands/efi/tpm.c:196 -#: grub-core/commands/efi/tpm.c:263 grub-core/commands/efi/tpm.c:313 -msgid "TPM unavailable" -msgstr "TPM unavailable" - -#: grub-core/commands/efi/tpm.c:158 grub-core/commands/efi/tpm.c:198 -#: grub-core/commands/efi/tpm.c:265 grub-core/commands/efi/tpm.c:315 -msgid "Unknown TPM error" -msgstr "Unknown TPM error" - -#: grub-core/commands/efi/tpm.c:240 grub-core/commands/efi/tpm.c:288 -msgid "cannot allocate TPM event buffer" -msgstr "cannot allocate TPM event buffer" - -#: grub-core/commands/eval.c:63 -msgid "STRING ..." -msgstr "STRING ..." - -#: grub-core/commands/eval.c:64 -msgid "Evaluate arguments as GRUB commands" -msgstr "Evaluate arguments as GRUB commands" - -#: grub-core/commands/file.c:41 -msgid "Check if FILE can be booted as i386 PAE Xen unprivileged guest kernel" -msgstr "Check if FILE can be booted as i386 PAE Xen unprivileged guest kernel" - -#: grub-core/commands/file.c:44 -msgid "Check if FILE can be booted as x86_64 Xen unprivileged guest kernel" -msgstr "Check if FILE can be booted as x86_64 Xen unprivileged guest kernel" - -#: grub-core/commands/file.c:46 -msgid "Check if FILE can be used as Xen x86 privileged guest kernel" -msgstr "Check if FILE can be used as Xen x86 privileged guest kernel" - -#: grub-core/commands/file.c:48 -msgid "Check if FILE can be used as x86 multiboot kernel" -msgstr "Check if FILE can be used as x86 multiboot kernel" - -#: grub-core/commands/file.c:50 -msgid "Check if FILE can be used as x86 multiboot2 kernel" -msgstr "Check if FILE can be used as x86 multiboot2 kernel" - -#: grub-core/commands/file.c:52 -msgid "Check if FILE is ARM Linux" -msgstr "Check if FILE is ARM Linux" - -#: grub-core/commands/file.c:54 -msgid "Check if FILE is ARM64 Linux" -msgstr "Check if FILE is ARM64 Linux" - -#: grub-core/commands/file.c:56 -msgid "Check if FILE is IA64 Linux" -msgstr "Check if FILE is IA64 Linux" - -#: grub-core/commands/file.c:58 -msgid "Check if FILE is MIPS Linux" -msgstr "Check if FILE is MIPS Linux" - -#: grub-core/commands/file.c:60 -msgid "Check if FILE is MIPSEL Linux" -msgstr "Check if FILE is MIPSEL Linux" - -#: grub-core/commands/file.c:62 -msgid "Check if FILE is SPARC64 Linux" -msgstr "Check if FILE is SPARC64 Linux" - -#: grub-core/commands/file.c:64 -msgid "Check if FILE is POWERPC Linux" -msgstr "Check if FILE is POWERPC Linux" - -#: grub-core/commands/file.c:66 -msgid "Check if FILE is x86 Linux" -msgstr "Check if FILE is x86 Linux" - -#: grub-core/commands/file.c:68 -msgid "Check if FILE is x86 Linux supporting 32-bit protocol" -msgstr "Check if FILE is x86 Linux supporting 32-bit protocol" - -#: grub-core/commands/file.c:70 -msgid "Check if FILE is x86 kFreeBSD" -msgstr "Check if FILE is x86 kFreeBSD" - -#: grub-core/commands/file.c:72 -msgid "Check if FILE is i386 kFreeBSD" -msgstr "Check if FILE is i386 kFreeBSD" - -#: grub-core/commands/file.c:74 -msgid "Check if FILE is x86_64 kFreeBSD" -msgstr "Check if FILE is x86_64 kFreeBSD" - -#: grub-core/commands/file.c:77 -msgid "Check if FILE is x86 kNetBSD" -msgstr "Check if FILE is x86 kNetBSD" - -#: grub-core/commands/file.c:79 -msgid "Check if FILE is i386 kNetBSD" -msgstr "Check if FILE is i386 kNetBSD" - -#: grub-core/commands/file.c:81 -msgid "Check if FILE is x86_64 kNetBSD" -msgstr "Check if FILE is x86_64 kNetBSD" - -#: grub-core/commands/file.c:84 -msgid "Check if FILE is i386 EFI file" -msgstr "Check if FILE is i386 EFI file" - -#: grub-core/commands/file.c:86 -msgid "Check if FILE is x86_64 EFI file" -msgstr "Check if FILE is x86_64 EFI file" - -#: grub-core/commands/file.c:88 -msgid "Check if FILE is IA64 EFI file" -msgstr "Check if FILE is IA64 EFI file" - -#: grub-core/commands/file.c:90 -msgid "Check if FILE is ARM64 EFI file" -msgstr "Check if FILE is ARM64 EFI file" - -#: grub-core/commands/file.c:92 -msgid "Check if FILE is ARM EFI file" -msgstr "Check if FILE is ARM EFI file" - -#: grub-core/commands/file.c:94 -msgid "Check if FILE is RISC-V 32bit EFI file" -msgstr "Check if FILE is RISC-V 32bit EFI file" - -#: grub-core/commands/file.c:96 -msgid "Check if FILE is RISC-V 64bit EFI file" -msgstr "Check if FILE is RISC-V 64bit EFI file" - -#: grub-core/commands/file.c:98 -msgid "Check if FILE is hiberfil.sys in hibernated state" -msgstr "Check if FILE is hiberfil.sys in hibernated state" - -#: grub-core/commands/file.c:100 -msgid "Check if FILE is x86_64 XNU (Mac OS X kernel)" -msgstr "Check if FILE is x86_64 XNU (Mac OS X kernel)" - -#: grub-core/commands/file.c:102 -msgid "Check if FILE is i386 XNU (Mac OS X kernel)" -msgstr "Check if FILE is i386 XNU (Mac OS X kernel)" - -#: grub-core/commands/file.c:104 -msgid "Check if FILE is XNU (Mac OS X kernel) hibernated image" -msgstr "Check if FILE is XNU (Mac OS X kernel) hibernated image" - -#: grub-core/commands/file.c:106 -msgid "Check if FILE is BIOS bootsector" -msgstr "Check if FILE is BIOS bootsector" - -#. TRANSLATORS: it's a standalone boolean value, -#. opposite of "true". -#: grub-core/commands/file.c:675 grub-core/commands/i386/cmostest.c:63 -#: grub-core/commands/i386/cpuid.c:71 grub-core/commands/keystatus.c:83 -#: grub-core/commands/keystatus.c:87 grub-core/commands/keystatus.c:96 -#: grub-core/commands/test.c:436 grub-core/commands/true.c:39 -#: grub-core/script/execute.c:247 grub-core/script/execute.c:1039 -msgid "false" -msgstr "false" - -#: grub-core/commands/file.c:684 -msgid "OPTIONS FILE" -msgstr "OPTIONS FILE" - -#: grub-core/commands/file.c:685 -msgid "Check if FILE is of specified type." -msgstr "Check if FILE is of specified type." - -#. TRANSLATORS: It means that the specified partition e.g. -#. hd0,msdos1=/dev/sda1 doesn't exist. -#: grub-core/commands/gptsync.c:140 grub-core/kern/disk.c:258 -msgid "no such partition" -msgstr "no such partition" - -#: grub-core/commands/gptsync.c:240 -#, c-format -msgid "New MBR is written to `%s'\n" -msgstr "New MBR is written to ‘%s’\n" - -#: grub-core/commands/gptsync.c:252 -msgid "DEVICE [PARTITION[+/-[TYPE]]] ..." -msgstr "DEVICE [PARTITION[+/-[TYPE]]] ..." - -#. TRANSLATORS: MBR type is one-byte partition -#. type id. -#: grub-core/commands/gptsync.c:255 -msgid "" -"Fill hybrid MBR of GPT drive DEVICE. Specified partitions will be a part of " -"hybrid MBR. Up to 3 partitions are allowed. TYPE is an MBR type. + means " -"that partition is active. Only one partition can be active." -msgstr "" -"Fill hybrid MBR of GPT drive DEVICE. Specified partitions will be a part of " -"hybrid MBR. Up to 3 partitions are allowed. TYPE is an MBR type. + means " -"that partition is active. Only one partition can be active." - -#: grub-core/commands/halt.c:40 -msgid "" -"Halts the computer. This command does not work on all firmware " -"implementations." -msgstr "" -"Halts the computer. This command does not work on all firmware " -"implementations." - -#: grub-core/commands/hashsum.c:32 -msgid "Specify hash to use." -msgstr "Specify hash to use." - -#: grub-core/commands/hashsum.c:32 -msgid "HASH" -msgstr "HASH" - -#: grub-core/commands/hashsum.c:33 -msgid "Check hashes of files with hash list FILE." -msgstr "Check hashes of files with hash list FILE." - -#: grub-core/commands/hashsum.c:35 -msgid "Base directory for hash list." -msgstr "Base directory for hash list." - -#. TRANSLATORS: platform here isn't identifier. It can be translated. -#: grub-core/commands/hashsum.c:35 grub-core/commands/ls.c:150 -#: grub-core/commands/macbless.c:226 grub-core/commands/syslinuxcfg.c:51 -#: grub-core/commands/syslinuxcfg.c:54 grub-core/kern/emu/main.c:106 -#: include/grub/util/install.h:50 include/grub/util/install.h:53 -#: include/grub/util/install.h:56 include/grub/util/install.h:59 -#: util/grub-install.c:250 util/grub-install.c:252 util/grub-install.c:297 -#: util/grub-install.c:299 util/grub-mkimage.c:64 util/grub-mkimage.c:67 -#: util/grub-mknetdir.c:46 util/grub-mknetdir.c:48 util/grub-mkrescue.c:99 -#: util/grub-setup.c:82 util/grub-syslinux2cfg.c:63 util/grub-syslinux2cfg.c:65 -#: util/grub-syslinux2cfg.c:67 util/grub-syslinux2cfg.c:71 -msgid "DIR" -msgstr "DIR" - -#: grub-core/commands/hashsum.c:37 -msgid "Don't stop after first error." -msgstr "Don't stop after first error." - -#: grub-core/commands/hashsum.c:38 -msgid "Uncompress file before checksumming." -msgstr "Uncompress file before checksumming." - -#: grub-core/commands/hashsum.c:163 -#, c-format -msgid "%s: READ ERROR\n" -msgstr "%s: READ ERROR\n" - -#: grub-core/commands/hashsum.c:177 -#, c-format -msgid "%s: HASH MISMATCH\n" -msgstr "%s: HASH MISMATCH\n" - -#: grub-core/commands/hashsum.c:188 -#, c-format -msgid "%s: OK\n" -msgstr "%s: OK\n" - -#: grub-core/commands/hashsum.c:282 -msgid "-h HASH [-c FILE [-p PREFIX]] [FILE1 [FILE2 ...]]" -msgstr "-h HASH [-c FILE [-p PREFIX]] [FILE1 [FILE2 ...]]" - -#. TRANSLATORS: "hash checksum" is just to -#. be a bit more precise, you can treat it as -#. just "hash". -#: grub-core/commands/hashsum.c:287 grub-core/commands/hashsum.c:292 -#: grub-core/commands/hashsum.c:297 grub-core/commands/hashsum.c:302 -#: grub-core/commands/hashsum.c:307 grub-core/commands/hashsum.c:313 -msgid "Compute or check hash checksum." -msgstr "Compute or check hash checksum." - -#: grub-core/commands/hashsum.c:290 grub-core/commands/hashsum.c:295 -#: grub-core/commands/hashsum.c:300 grub-core/commands/hashsum.c:305 -#: grub-core/commands/hashsum.c:311 -msgid "[-c FILE [-p PREFIX]] [FILE1 [FILE2 ...]]" -msgstr "[-c FILE [-p PREFIX]] [FILE1 [FILE2 ...]]" - -#: grub-core/commands/hdparm.c:33 -msgid "" -"Set Advanced Power Management\n" -"(1=low, ..., 254=high, 255=off)." -msgstr "" -"Set Advanced Power Management\n" -"(1=low, ..., 254=high, 255=off)." - -#: grub-core/commands/hdparm.c:36 -msgid "Display power mode." -msgstr "Display power mode." - -#: grub-core/commands/hdparm.c:37 -msgid "Freeze ATA security settings until reset." -msgstr "Freeze ATA security settings until reset." - -#: grub-core/commands/hdparm.c:39 -msgid "Display SMART health status." -msgstr "Display SMART health status." - -#: grub-core/commands/hdparm.c:40 -msgid "" -"Set Automatic Acoustic Management\n" -"(0=off, 128=quiet, ..., 254=fast)." -msgstr "" -"Set Automatic Acoustic Management\n" -"(0=off, 128=quiet, ..., 254=fast)." - -#: grub-core/commands/hdparm.c:43 -msgid "" -"Set standby timeout\n" -"(0=off, 1=5s, 2=10s, ..., 240=20m, 241=30m, ...)." -msgstr "" -"Set standby timeout\n" -"(0=off, 1=5s, 2=10s, ..., 240=20m, 241=30m, ...)." - -#: grub-core/commands/hdparm.c:46 -msgid "Set drive to standby mode." -msgstr "Set drive to standby mode." - -#: grub-core/commands/hdparm.c:47 -msgid "Set drive to sleep mode." -msgstr "Set drive to sleep mode." - -#: grub-core/commands/hdparm.c:48 -msgid "Print drive identity and settings." -msgstr "Print drive identity and settings." - -#: grub-core/commands/hdparm.c:50 -msgid "Show raw contents of ATA IDENTIFY sector." -msgstr "Show raw contents of ATA IDENTIFY sector." - -#: grub-core/commands/hdparm.c:52 -msgid "Disable/enable SMART (0/1)." -msgstr "Disable/enable SMART (0/1)." - -#: grub-core/commands/hdparm.c:53 -msgid "Do not print messages." -msgstr "Do not print messages." - -#: grub-core/commands/hdparm.c:286 grub-core/commands/i386/rdmsr.c:68 -#: grub-core/commands/iorw.c:47 grub-core/commands/legacycfg.c:760 -#: grub-core/commands/legacycfg.c:812 grub-core/commands/macbless.c:190 -#: grub-core/commands/memrw.c:47 grub-core/commands/pgp.c:738 -#: grub-core/commands/pgp.c:792 grub-core/commands/search.c:304 -#: grub-core/commands/search_wrap.c:179 grub-core/commands/setpci.c:243 -#: grub-core/commands/sleep.c:71 grub-core/fs/zfs/zfsinfo.c:279 -#: grub-core/fs/zfs/zfsinfo.c:358 grub-core/gettext/gettext.c:492 -#: grub-core/kern/corecmd.c:65 grub-core/kern/corecmd.c:79 -#: grub-core/mmap/mmap.c:430 grub-core/net/dns.c:713 grub-core/net/dns.c:745 -#: grub-core/net/net.c:694 grub-core/net/net.c:1052 -#: grub-core/normal/context.c:194 grub-core/script/execute.c:131 -#: grub-core/term/gfxterm_background.c:136 -msgid "one argument expected" -msgstr "one argument expected" - -#: grub-core/commands/hdparm.c:440 -msgid "[OPTIONS] DISK" -msgstr "[OPTIONS] DISK" - -#: grub-core/commands/hdparm.c:441 -msgid "Get/set ATA disk parameters." -msgstr "Get/set ATA disk parameters." - -#: grub-core/commands/help.c:132 grub-core/lib/arg.c:109 -#: grub-core/lib/gnulib/argp-help.c:1616 -msgid "Usage:" -msgstr "Usage:" - -#: grub-core/commands/help.c:146 -msgid "[PATTERN ...]" -msgstr "[PATTERN ...]" - -#: grub-core/commands/help.c:147 -msgid "Show a help message." -msgstr "Show a help message." - -#: grub-core/commands/hexdump.c:31 -msgid "Skip offset bytes from the beginning of file." -msgstr "Skip offset bytes from the beginning of file." - -#: grub-core/commands/hexdump.c:33 -msgid "Read only LENGTH bytes." -msgstr "Read only LENGTH bytes." - -#: grub-core/commands/hexdump.c:125 -msgid "[OPTIONS] FILE_OR_DEVICE" -msgstr "[OPTIONS] FILE_OR_DEVICE" - -#: grub-core/commands/hexdump.c:126 -msgid "Show raw contents of a file or memory." -msgstr "Show raw contents of a file or memory." - -#: grub-core/commands/i386/cmosdump.c:58 -msgid "Show raw dump of the CMOS contents." -msgstr "Show raw dump of the CMOS contents." - -#: grub-core/commands/i386/cmostest.c:108 -#: grub-core/commands/i386/cmostest.c:111 -#: grub-core/commands/i386/cmostest.c:114 -msgid "BYTE:BIT" -msgstr "BYTE:BIT" - -#: grub-core/commands/i386/cmostest.c:109 -msgid "Test bit at BYTE:BIT in CMOS." -msgstr "Test bit at BYTE:BIT in CMOS." - -#: grub-core/commands/i386/cmostest.c:112 -msgid "Clear bit at BYTE:BIT in CMOS." -msgstr "Clear bit at BYTE:BIT in CMOS." - -#. TRANSLATORS: A bit may be either set (1) or clear (0). -#: grub-core/commands/i386/cmostest.c:116 -msgid "Set bit at BYTE:BIT in CMOS." -msgstr "Set bit at BYTE:BIT in CMOS." - -#: grub-core/commands/i386/coreboot/cb_timestamps.c:120 -msgid "Show coreboot boot time statistics." -msgstr "Show coreboot boot time statistics." - -#: grub-core/commands/i386/coreboot/cbls.c:137 -msgid "List coreboot tables." -msgstr "List coreboot tables." - -#. TRANSLATORS: "(default)" at the end means that this option is used if -#. no argument is specified. -#: grub-core/commands/i386/cpuid.c:36 -msgid "Check if CPU supports 64-bit (long) mode (default)." -msgstr "Check if CPU supports 64-bit (long) mode (default)." - -#: grub-core/commands/i386/cpuid.c:37 -msgid "Check if CPU supports Physical Address Extension." -msgstr "Check if CPU supports Physical Address Extension." - -#: grub-core/commands/i386/cpuid.c:119 -msgid "Check for CPU features." -msgstr "Check for CPU features." - -#. TRANSLATORS: In this file "mapping" refers to a change GRUB makes so if -#. your language doesn't have an equivalent of "mapping" you can -#. use the word like "rerouting". -#. -#: grub-core/commands/i386/pc/drivemap.c:43 -msgid "Show the current mappings." -msgstr "Show the current mappings." - -#: grub-core/commands/i386/pc/drivemap.c:44 -msgid "Reset all mappings to the default values." -msgstr "Reset all mappings to the default values." - -#: grub-core/commands/i386/pc/drivemap.c:45 -msgid "Perform both direct and reverse mappings." -msgstr "Perform both direct and reverse mappings." - -#: grub-core/commands/i386/pc/drivemap.c:184 -msgid "No drives have been remapped" -msgstr "No drives have been remapped" - -#. TRANSLATORS: This is the header of mapping list. -#. On the left is how OS will see the disks and -#. on the right current GRUB vision. -#: grub-core/commands/i386/pc/drivemap.c:191 -msgid "OS disk #num ------> GRUB/BIOS device" -msgstr "OS disk #num ------> GRUB/BIOS device" - -#: grub-core/commands/i386/pc/drivemap.c:413 -msgid "-l | -r | [-s] grubdev osdisk." -msgstr "-l | -r | [-s] grubdev osdisk." - -#: grub-core/commands/i386/pc/drivemap.c:414 -msgid "Manage the BIOS drive mappings." -msgstr "Manage the BIOS drive mappings." - -#: grub-core/commands/i386/pc/halt.c:31 -msgid "Do not use APM to halt the computer." -msgstr "Do not use APM to halt the computer." - -#: grub-core/commands/i386/pc/halt.c:119 -msgid "Halt the system, if possible using APM." -msgstr "Halt the system, if possible using APM." - -#: grub-core/commands/i386/pc/lsapm.c:75 -msgid "no APM found" -msgstr "no APM found" - -#: grub-core/commands/i386/pc/lsapm.c:77 -#, c-format -msgid "" -"Version %u.%u\n" -"32-bit CS = 0x%x, len = 0x%x, offset = 0x%x\n" -"16-bit CS = 0x%x, len = 0x%x\n" -"DS = 0x%x, len = 0x%x\n" -msgstr "" -"Version %u.%u\n" -"32-bit CS = 0x%x, len = 0x%x, offset = 0x%x\n" -"16-bit CS = 0x%x, len = 0x%x\n" -"DS = 0x%x, len = 0x%x\n" - -#: grub-core/commands/i386/pc/lsapm.c:86 -msgid "16-bit protected interface supported\n" -msgstr "16-bit protected interface supported\n" - -#: grub-core/commands/i386/pc/lsapm.c:87 -msgid "16-bit protected interface unsupported\n" -msgstr "16-bit protected interface unsupported\n" - -#: grub-core/commands/i386/pc/lsapm.c:89 -msgid "32-bit protected interface supported\n" -msgstr "32-bit protected interface supported\n" - -#: grub-core/commands/i386/pc/lsapm.c:90 -msgid "32-bit protected interface unsupported\n" -msgstr "32-bit protected interface unsupported\n" - -#: grub-core/commands/i386/pc/lsapm.c:92 -msgid "CPU Idle slows down processor\n" -msgstr "CPU Idle slows down processor\n" - -#: grub-core/commands/i386/pc/lsapm.c:93 -msgid "CPU Idle doesn't slow down processor\n" -msgstr "CPU Idle doesn't slow down processor\n" - -#: grub-core/commands/i386/pc/lsapm.c:95 -msgid "APM disabled\n" -msgstr "APM disabled\n" - -#: grub-core/commands/i386/pc/lsapm.c:95 -msgid "APM enabled\n" -msgstr "APM enabled\n" - -#: grub-core/commands/i386/pc/lsapm.c:97 -msgid "APM disengaged\n" -msgstr "APM disengaged\n" - -#: grub-core/commands/i386/pc/lsapm.c:97 -msgid "APM engaged\n" -msgstr "APM engaged\n" - -#: grub-core/commands/i386/pc/lsapm.c:107 -msgid "Show APM information." -msgstr "Show APM information." - -#. TRANSLATORS: It's musical notes, not the notes -#. you take. Play command expects arguments which can -#. be either a filename or tempo+notes. -#. This error happens if none is specified. -#: grub-core/commands/i386/pc/play.c:88 -msgid "filename or tempo and notes expected" -msgstr "filename or tempo and notes expected" - -#: grub-core/commands/i386/pc/play.c:113 grub-core/commands/i386/pc/play.c:144 -#, c-format -msgid "Invalid tempo in %s" -msgstr "Invalid tempo in %s" - -#: grub-core/commands/i386/pc/play.c:151 grub-core/commands/macbless.c:172 -#: grub-core/fs/archelp.c:260 grub-core/fs/bfs.c:621 grub-core/fs/bfs.c:704 -#: grub-core/fs/btrfs.c:1726 grub-core/fs/btrfs.c:1755 -#: grub-core/fs/btrfs.c:1799 grub-core/fs/btrfs.c:1882 -#: grub-core/fs/btrfs.c:1906 grub-core/fs/fshelp.c:257 grub-core/fs/jfs.c:696 -#: grub-core/fs/minix.c:426 grub-core/fs/ufs.c:544 grub-core/fs/zfs/zfs.c:2083 -#: grub-core/fs/zfs/zfs.c:2095 grub-core/fs/zfs/zfs.c:2301 -#: grub-core/net/http.c:120 -#, c-format -msgid "file `%s' not found" -msgstr "file ‘%s’ not found" - -#: grub-core/commands/i386/pc/play.c:162 grub-core/commands/i386/pc/play.c:171 -#: grub-core/kern/misc.c:419 grub-core/script/execute.c:138 -#: grub-core/script/execute.c:244 -msgid "unrecognized number" -msgstr "unrecognized number" - -#: grub-core/commands/i386/pc/play.c:190 -msgid "FILE | TEMPO [PITCH1 DURATION1] [PITCH2 DURATION2] ... " -msgstr "FILE | TEMPO [PITCH1 DURATION1] [PITCH2 DURATION2] ... " - -#: grub-core/commands/i386/pc/play.c:191 -msgid "Play a tune." -msgstr "Play a tune." - -#: grub-core/commands/i386/pc/sendkey.c:39 -msgid "set numlock mode" -msgstr "set numlock mode" - -#: grub-core/commands/i386/pc/sendkey.c:40 -msgid "set capslock mode" -msgstr "set capslock mode" - -#: grub-core/commands/i386/pc/sendkey.c:41 -msgid "set scrolllock mode" -msgstr "set scrolllock mode" - -#: grub-core/commands/i386/pc/sendkey.c:42 -msgid "set insert mode" -msgstr "set insert mode" - -#: grub-core/commands/i386/pc/sendkey.c:43 -msgid "set pause mode" -msgstr "set pause mode" - -#: grub-core/commands/i386/pc/sendkey.c:44 -msgid "press left shift" -msgstr "press left shift" - -#: grub-core/commands/i386/pc/sendkey.c:45 -msgid "press right shift" -msgstr "press right shift" - -#: grub-core/commands/i386/pc/sendkey.c:46 -msgid "press SysRq" -msgstr "press SysRq" - -#: grub-core/commands/i386/pc/sendkey.c:47 -msgid "press NumLock key" -msgstr "press NumLock key" - -#: grub-core/commands/i386/pc/sendkey.c:48 -msgid "press CapsLock key" -msgstr "press CapsLock key" - -#: grub-core/commands/i386/pc/sendkey.c:49 -msgid "press ScrollLock key" -msgstr "press ScrollLock key" - -#: grub-core/commands/i386/pc/sendkey.c:50 -msgid "press Insert key" -msgstr "press Insert key" - -#: grub-core/commands/i386/pc/sendkey.c:51 -msgid "press left alt" -msgstr "press left alt" - -#: grub-core/commands/i386/pc/sendkey.c:52 -msgid "press right alt" -msgstr "press right alt" - -#: grub-core/commands/i386/pc/sendkey.c:53 -msgid "press left ctrl" -msgstr "press left ctrl" - -#: grub-core/commands/i386/pc/sendkey.c:54 -msgid "press right ctrl" -msgstr "press right ctrl" - -#: grub-core/commands/i386/pc/sendkey.c:55 -msgid "don't update LED state" -msgstr "don't update LED state" - -#: grub-core/commands/i386/pc/sendkey.c:372 -msgid "[KEYSTROKE1] [KEYSTROKE2] ..." -msgstr "[KEYSTROKE1] [KEYSTROKE2] ..." - -#. TRANSLATORS: It can emulate multiple -#. keypresses. -#: grub-core/commands/i386/pc/sendkey.c:375 -msgid "Emulate a keystroke sequence" -msgstr "Emulate a keystroke sequence" - -#: grub-core/commands/i386/rdmsr.c:37 grub-core/commands/iorw.c:34 -#: grub-core/commands/memrw.c:33 grub-core/commands/setpci.c:73 -msgid "Save read value into variable VARNAME." -msgstr "Save read value into variable VARNAME." - -#: grub-core/commands/i386/rdmsr.c:38 grub-core/commands/iorw.c:35 -#: grub-core/commands/memrw.c:34 grub-core/commands/probe.c:40 -#: grub-core/commands/search_wrap.c:40 grub-core/commands/setpci.c:74 -#: grub-core/commands/tr.c:32 -msgid "VARNAME" -msgstr "VARNAME" - -#: grub-core/commands/i386/rdmsr.c:55 grub-core/commands/i386/rdmsr.c:60 -#: grub-core/commands/i386/rdmsr.c:65 grub-core/commands/i386/wrmsr.c:47 -#: grub-core/commands/i386/wrmsr.c:52 grub-core/commands/i386/wrmsr.c:57 -msgid "unsupported instruction" -msgstr "unsupported instruction" - -#: grub-core/commands/i386/rdmsr.c:77 grub-core/commands/i386/wrmsr.c:69 -#: grub-core/commands/i386/wrmsr.c:77 grub-core/net/dns.c:727 -msgid "invalid argument" -msgstr "invalid argument" - -#: grub-core/commands/i386/rdmsr.c:94 grub-core/commands/memrw.c:125 -#: grub-core/commands/memrw.c:129 grub-core/commands/memrw.c:133 -msgid "ADDR" -msgstr "ADDR" - -#: grub-core/commands/i386/rdmsr.c:95 -msgid "Read a CPU model specific register." -msgstr "Read a CPU model specific register." - -#: grub-core/commands/i386/wrmsr.c:86 -msgid "ADDR VALUE" -msgstr "ADDR VALUE" - -#: grub-core/commands/i386/wrmsr.c:87 -msgid "Write a value to a CPU model specific register." -msgstr "Write a value to a CPU model specific register." - -#: grub-core/commands/ieee1275/suspend.c:34 -msgid "Run `go' to resume GRUB." -msgstr "Run ‘go’ to resume GRUB." - -#: grub-core/commands/ieee1275/suspend.c:45 -msgid "Return to IEEE1275 prompt." -msgstr "Return to IEEE1275 prompt." - -#: grub-core/commands/iorw.c:123 grub-core/commands/iorw.c:127 -#: grub-core/commands/iorw.c:131 grub-core/gdb/gdb.c:79 -msgid "PORT" -msgstr "PORT" - -#: grub-core/commands/iorw.c:123 -msgid "Read 8-bit value from PORT." -msgstr "Read 8-bit value from PORT." - -#: grub-core/commands/iorw.c:127 -msgid "Read 16-bit value from PORT." -msgstr "Read 16-bit value from PORT." - -#: grub-core/commands/iorw.c:131 -msgid "Read 32-bit value from PORT." -msgstr "Read 32-bit value from PORT." - -#: grub-core/commands/iorw.c:135 grub-core/commands/iorw.c:139 -msgid "PORT VALUE [MASK]" -msgstr "PORT VALUE [MASK]" - -#: grub-core/commands/iorw.c:136 -msgid "Write 8-bit VALUE to PORT." -msgstr "Write 8-bit VALUE to PORT." - -#: grub-core/commands/iorw.c:140 -msgid "Write 16-bit VALUE to PORT." -msgstr "Write 16-bit VALUE to PORT." - -#: grub-core/commands/iorw.c:143 grub-core/commands/memrw.c:137 -#: grub-core/commands/memrw.c:141 grub-core/commands/memrw.c:145 -msgid "ADDR VALUE [MASK]" -msgstr "ADDR VALUE [MASK]" - -#: grub-core/commands/iorw.c:144 -msgid "Write 32-bit VALUE to PORT." -msgstr "Write 32-bit VALUE to PORT." - -#: grub-core/commands/keylayouts.c:215 grub-core/commands/loadenv.c:61 -#: grub-core/commands/nativedisk.c:189 grub-core/efiemu/main.c:235 -#: grub-core/font/font.c:428 grub-core/gfxmenu/gfxmenu.c:63 -#: grub-core/kern/device.c:42 grub-core/kern/dl.c:740 -#, c-format -msgid "variable `%s' isn't set" -msgstr "variable ‘%s’ isn't set" - -#: grub-core/commands/keylayouts.c:301 -msgid "Load a keyboard layout." -msgstr "Load a keyboard layout." - -#. TRANSLATORS: "Check" in a sense that if this key is pressed then -#. "true" is returned, otherwise "false". -#: grub-core/commands/keystatus.c:32 -msgid "Check Shift key." -msgstr "Check Shift key." - -#: grub-core/commands/keystatus.c:33 -msgid "Check Control key." -msgstr "Check Control key." - -#: grub-core/commands/keystatus.c:34 -msgid "Check Alt key." -msgstr "Check Alt key." - -#. TRANSLATORS: there are 3 modifiers. -#: grub-core/commands/keystatus.c:106 -msgid "Check key modifier status." -msgstr "Check key modifier status." - -#: grub-core/commands/legacycfg.c:512 grub-core/commands/legacycfg.c:526 -#: grub-core/commands/legacycfg.c:546 grub-core/commands/legacycfg.c:559 -#: grub-core/commands/time.c:43 grub-core/script/function.c:109 -#: util/grub-file.c:100 util/grub-fstest.c:57 util/grub-mount.c:69 -#, c-format -msgid "can't find command `%s'" -msgstr "can't find command ‘%s’" - -#: grub-core/commands/legacycfg.c:813 grub-core/normal/auth.c:225 -#: util/grub-mkpasswd-pbkdf2.c:139 -msgid "Enter password: " -msgstr "Enter password: " - -#. TRANSLATORS: "legacy config" means -#. "config as used by grub-legacy". -#: grub-core/commands/legacycfg.c:837 -msgid "Parse legacy config in same context" -msgstr "Parse legacy config in same context" - -#: grub-core/commands/legacycfg.c:842 -msgid "Parse legacy config in new context" -msgstr "Parse legacy config in new context" - -#: grub-core/commands/legacycfg.c:847 -msgid "Parse legacy config in same context taking only menu entries" -msgstr "Parse legacy config in same context taking only menu entries" - -#: grub-core/commands/legacycfg.c:852 -msgid "Parse legacy config in new context taking only menu entries" -msgstr "Parse legacy config in new context taking only menu entries" - -#: grub-core/commands/legacycfg.c:856 -msgid "[--no-mem-option] [--type=TYPE] FILE [ARG ...]" -msgstr "[--no-mem-option] [--type=TYPE] FILE [ARG ...]" - -#: grub-core/commands/legacycfg.c:857 -msgid "Simulate grub-legacy `kernel' command" -msgstr "Simulate grub-legacy ‘kernel’ command" - -#: grub-core/commands/legacycfg.c:861 grub-core/commands/legacycfg.c:865 -msgid "FILE [ARG ...]" -msgstr "FILE [ARG ...]" - -#: grub-core/commands/legacycfg.c:862 -msgid "Simulate grub-legacy `initrd' command" -msgstr "Simulate grub-legacy ‘initrd’ command" - -#: grub-core/commands/legacycfg.c:866 -msgid "Simulate grub-legacy `modulenounzip' command" -msgstr "Simulate grub-legacy ‘modulenounzip’ command" - -#: grub-core/commands/legacycfg.c:870 grub-core/commands/legacycfg.c:875 -msgid "[--md5] PASSWD [FILE]" -msgstr "[--md5] PASSWD [FILE]" - -#: grub-core/commands/legacycfg.c:871 -msgid "Simulate grub-legacy `password' command" -msgstr "Simulate grub-legacy ‘password’ command" - -#: grub-core/commands/legacycfg.c:876 -msgid "Simulate grub-legacy `password' command in menu entry mode" -msgstr "Simulate grub-legacy ‘password’ command in menu entry mode" - -#. TRANSLATORS: This option is used to override default filename -#. for loading and storing environment. -#: grub-core/commands/loadenv.c:37 -msgid "Specify filename." -msgstr "Specify filename." - -#: grub-core/commands/loadenv.c:39 -msgid "Skip signature-checking of the environment file." -msgstr "Skip signature-checking of the environment file." - -#: grub-core/commands/loadenv.c:451 -msgid "[-f FILE] [-s|--skip-sig] [variable_name_to_whitelist] [...]" -msgstr "[-f FILE] [-s|--skip-sig] [variable_name_to_whitelist] [...]" - -#: grub-core/commands/loadenv.c:452 -msgid "Load variables from environment block file." -msgstr "Load variables from environment block file." - -#: grub-core/commands/loadenv.c:455 -msgid "[-f FILE]" -msgstr "[-f FILE]" - -#: grub-core/commands/loadenv.c:456 -msgid "List variables from environment block file." -msgstr "List variables from environment block file." - -#: grub-core/commands/loadenv.c:460 -msgid "[-f FILE] variable_name [...]" -msgstr "[-f FILE] variable_name [...]" - -#: grub-core/commands/loadenv.c:461 -msgid "Save variables to environment block file." -msgstr "Save variables to environment block file." - -#: grub-core/commands/ls.c:40 -msgid "Show a long list with more detailed information." -msgstr "Show a long list with more detailed information." - -#: grub-core/commands/ls.c:41 -msgid "Print sizes in a human readable format." -msgstr "Print sizes in a human readable format." - -#: grub-core/commands/ls.c:42 -msgid "List all files." -msgstr "List all files." - -#: grub-core/commands/ls.c:73 -msgid "Network protocols:" -msgstr "Network protocols:" - -#: grub-core/commands/ls.c:295 -msgid "[-l|-h|-a] [FILE ...]" -msgstr "[-l|-h|-a] [FILE ...]" - -#: grub-core/commands/ls.c:296 -msgid "List devices and files." -msgstr "List devices and files." - -#: grub-core/commands/lsacpi.c:255 -msgid "Show version 1 tables only." -msgstr "Show version 1 tables only." - -#: grub-core/commands/lsacpi.c:256 -msgid "Show version 2 and version 3 tables only." -msgstr "Show version 2 and version 3 tables only." - -#: grub-core/commands/lsacpi.c:306 -msgid "Show ACPI information." -msgstr "Show ACPI information." - -#: grub-core/commands/lsmmap.c:31 -msgid "available RAM" -msgstr "available RAM" - -#: grub-core/commands/lsmmap.c:32 -msgid "reserved RAM" -msgstr "reserved RAM" - -#. TRANSLATORS: this refers to memory where ACPI tables are stored -#. and which can be used by OS once it loads ACPI tables. -#: grub-core/commands/lsmmap.c:35 -msgid "ACPI reclaimable RAM" -msgstr "ACPI reclaimable RAM" - -#. TRANSLATORS: this refers to memory which ACPI-compliant OS -#. is required to save accross hibernations. -#: grub-core/commands/lsmmap.c:38 -msgid "ACPI non-volatile storage RAM" -msgstr "ACPI non-volatile storage RAM" - -#: grub-core/commands/lsmmap.c:39 -msgid "faulty RAM (BadRAM)" -msgstr "faulty RAM (BadRAM)" - -#: grub-core/commands/lsmmap.c:40 -msgid "persistent RAM" -msgstr "persistent RAM" - -#: grub-core/commands/lsmmap.c:41 -msgid "persistent RAM (legacy)" -msgstr "persistent RAM (legacy)" - -#: grub-core/commands/lsmmap.c:42 -msgid "RAM holding coreboot tables" -msgstr "RAM holding coreboot tables" - -#: grub-core/commands/lsmmap.c:43 -msgid "RAM holding firmware code" -msgstr "RAM holding firmware code" - -#: grub-core/commands/lsmmap.c:52 -#, c-format -msgid "base_addr = 0x%llx, length = 0x%llx, %s\n" -msgstr "base_addr = 0x%llx, length = 0x%llx, %s\n" - -#: grub-core/commands/lsmmap.c:55 -#, c-format -msgid "base_addr = 0x%llx, length = 0x%llx, type = 0x%x\n" -msgstr "base_addr = 0x%llx, length = 0x%llx, type = 0x%x\n" - -#: grub-core/commands/lsmmap.c:79 -msgid "List memory map provided by firmware." -msgstr "List memory map provided by firmware." - -#: grub-core/commands/lspci.c:232 -msgid "List PCI devices." -msgstr "List PCI devices." - -#: grub-core/commands/macbless.c:224 -msgid "Bless FILE of HFS or HFS+ partition for intel macs." -msgstr "Bless FILE of HFS or HFS+ partition for intel macs." - -#: grub-core/commands/macbless.c:228 -msgid "Bless DIR of HFS or HFS+ partition for PPC macs." -msgstr "Bless DIR of HFS or HFS+ partition for PPC macs." - -#: grub-core/commands/memrw.c:125 -msgid "Read 8-bit value from ADDR." -msgstr "Read 8-bit value from ADDR." - -#: grub-core/commands/memrw.c:129 -msgid "Read 16-bit value from ADDR." -msgstr "Read 16-bit value from ADDR." - -#: grub-core/commands/memrw.c:133 -msgid "Read 32-bit value from ADDR." -msgstr "Read 32-bit value from ADDR." - -#: grub-core/commands/memrw.c:138 -msgid "Write 8-bit VALUE to ADDR." -msgstr "Write 8-bit VALUE to ADDR." - -#: grub-core/commands/memrw.c:142 -msgid "Write 16-bit VALUE to ADDR." -msgstr "Write 16-bit VALUE to ADDR." - -#: grub-core/commands/memrw.c:146 -msgid "Write 32-bit VALUE to ADDR." -msgstr "Write 32-bit VALUE to ADDR." - -#: grub-core/commands/menuentry.c:31 -msgid "Menu entry type." -msgstr "Menu entry type." - -#: grub-core/commands/menuentry.c:31 grub-core/commands/menuentry.c:38 -#: grub-core/commands/menuentry.c:39 grub-core/gettext/gettext.c:520 -#: util/grub-fstest.c:520 util/grub-install.c:291 util/grub-install.c:304 -#: util/grub-mknetdir.c:51 util/grub-mkrescue.c:109 util/grub-mkrescue.c:110 -#: util/grub-mount.c:453 util/grub-render-label.c:65 -msgid "STRING" -msgstr "STRING" - -#: grub-core/commands/menuentry.c:33 -msgid "List of users allowed to boot this entry." -msgstr "List of users allowed to boot this entry." - -#: grub-core/commands/menuentry.c:33 -msgid "USERNAME[,USERNAME]" -msgstr "USERNAME[,USERNAME]" - -#: grub-core/commands/menuentry.c:36 -msgid "Keyboard key to quickly boot this entry." -msgstr "Keyboard key to quickly boot this entry." - -#: grub-core/commands/menuentry.c:36 -msgid "KEYBOARD_KEY" -msgstr "KEYBOARD_KEY" - -#: grub-core/commands/menuentry.c:38 -msgid "Use STRING as menu entry body." -msgstr "Use STRING as menu entry body." - -#: grub-core/commands/menuentry.c:39 -msgid "Menu entry identifier." -msgstr "Menu entry identifier." - -#. TRANSLATORS: menu entry can either be bootable by anyone or only by -#. handful of users. By default when security is active only superusers can -#. boot a given menu entry. With --unrestricted (this option) -#. anyone can boot it. -#: grub-core/commands/menuentry.c:44 -msgid "This entry can be booted by any user." -msgstr "This entry can be booted by any user." - -#: grub-core/commands/menuentry.c:323 grub-core/commands/menuentry.c:328 -#: grub-core/tests/test_blockarg.c:46 -msgid "BLOCK" -msgstr "BLOCK" - -#: grub-core/commands/menuentry.c:323 -msgid "Define a menu entry." -msgstr "Define a menu entry." - -#: grub-core/commands/menuentry.c:328 -msgid "Define a submenu." -msgstr "Define a submenu." - -#. TRANSLATORS: this is module list header. Name -#. is module name, Ref Count is a reference counter -#. (how many modules or open descriptors use it). -#. Dependencies are the other modules it uses. -#. -#: grub-core/commands/minicmd.c:162 -msgid "Name\tRef Count\tDependencies\n" -msgstr "Name\tRef Count\tDependencies\n" - -#: grub-core/commands/minicmd.c:201 -msgid "Show this message." -msgstr "Show this message." - -#: grub-core/commands/minicmd.c:204 -msgid "ADDR [SIZE]" -msgstr "ADDR [SIZE]" - -#: grub-core/commands/minicmd.c:204 -msgid "Show memory contents." -msgstr "Show memory contents." - -#: grub-core/commands/minicmd.c:207 grub-core/kern/corecmd.c:188 -#: util/grub-install.c:275 -msgid "MODULE" -msgstr "MODULE" - -#: grub-core/commands/minicmd.c:207 -msgid "Remove a module." -msgstr "Remove a module." - -#: grub-core/commands/minicmd.c:210 -msgid "Show loaded modules." -msgstr "Show loaded modules." - -#: grub-core/commands/minicmd.c:213 -msgid "Exit from GRUB." -msgstr "Exit from GRUB." - -#: grub-core/commands/mips/loongson/lsspd.c:42 -msgid "No CS5536 found" -msgstr "No CS5536 found" - -#: grub-core/commands/mips/loongson/lsspd.c:45 -#, c-format -msgid "CS5536 at %d:%d.%d\n" -msgstr "CS5536 at %d:%d.%d\n" - -#. TRANSLATORS: System management bus is often used to access components like -#. RAM (info only, not data) or batteries. I/O space is where in memory -#. its ports are. -#: grub-core/commands/mips/loongson/lsspd.c:55 -#, c-format -msgid "System management bus controller I/O space is at 0x%x\n" -msgstr "System management bus controller I/O space is at 0x%x\n" - -#. TRANSLATORS: it's shown in a report in a way -#. like number 1: ... number 2: ... -#. -#: grub-core/commands/mips/loongson/lsspd.c:66 -#, c-format -msgid "RAM slot number %d\n" -msgstr "RAM slot number %d\n" - -#: grub-core/commands/mips/loongson/lsspd.c:73 -#, c-format -msgid "Written SPD bytes: %d B.\n" -msgstr "Written SPD bytes: %d B.\n" - -#: grub-core/commands/mips/loongson/lsspd.c:74 -#, c-format -msgid "Total flash size: %d B.\n" -msgstr "Total flash size: %d B.\n" - -#: grub-core/commands/mips/loongson/lsspd.c:79 -msgid "Memory type: DDR2." -msgstr "Memory type: DDR2." - -#: grub-core/commands/mips/loongson/lsspd.c:83 -#, c-format -msgid "Part no: %s.\n" -msgstr "Part no: %s.\n" - -#: grub-core/commands/mips/loongson/lsspd.c:86 -msgid "Memory type: Unknown." -msgstr "Memory type: Unknown." - -#: grub-core/commands/mips/loongson/lsspd.c:97 -msgid "Print Memory information." -msgstr "Print Memory information." - -#: grub-core/commands/nativedisk.c:118 grub-core/commands/probe.c:118 -#: grub-core/commands/probe.c:124 util/grub-probe.c:450 -#, c-format -msgid "%s does not support UUIDs" -msgstr "%s does not support UUIDs" - -#: grub-core/commands/nativedisk.c:325 -msgid "[MODULE1 MODULE2 ...]" -msgstr "[MODULE1 MODULE2 ...]" - -#: grub-core/commands/nativedisk.c:326 -msgid "" -"Switch to native disk drivers. If no modules are specified default set (pata," -"ahci,usbms,ohci,uhci,ehci) is used" -msgstr "" -"Switch to native disk drivers. If no modules are specified default set (pata," -"ahci,usbms,ohci,uhci,ehci) is used" - -#: grub-core/commands/parttool.c:40 -msgid "" -"Perform COMMANDS on partition.\n" -"Use `parttool PARTITION help' for the list of available commands." -msgstr "" -"Perform COMMANDS on partition.\n" -"Use ‘parttool PARTITION help’ for the list of available commands." - -#: grub-core/commands/parttool.c:123 -msgid "=VAL" -msgstr "=VAL" - -#: grub-core/commands/parttool.c:136 -#, c-format -msgid "Sorry, no parttool is available for %s\n" -msgstr "Sorry, no parttool is available for %s\n" - -#: grub-core/commands/parttool.c:288 grub-core/lib/arg.c:285 -#: grub-core/lib/arg.c:351 -#, c-format -msgid "unknown argument `%s'" -msgstr "unknown argument ‘%s’" - -#: grub-core/commands/parttool.c:344 -msgid "PARTITION COMMANDS" -msgstr "PARTITION COMMANDS" - -#: grub-core/commands/password.c:85 -msgid "USER PASSWORD" -msgstr "USER PASSWORD" - -#: grub-core/commands/password.c:86 -msgid "Set user password (plaintext). Unrecommended and insecure." -msgstr "Set user password (plaintext). Unrecommended and insecure." - -#. TRANSLATORS: it means that the string which -#. was supposed to be a password hash doesn't -#. have a correct format, not to password -#. mismatch. -#: grub-core/commands/password_pbkdf2.c:98 -#: grub-core/commands/password_pbkdf2.c:115 -#: grub-core/commands/password_pbkdf2.c:123 -#: grub-core/commands/password_pbkdf2.c:150 -#: grub-core/commands/password_pbkdf2.c:179 -msgid "invalid PBKDF2 password" -msgstr "invalid PBKDF2 password" - -#: grub-core/commands/password_pbkdf2.c:202 -msgid "USER PBKDF2_PASSWORD" -msgstr "USER PBKDF2_PASSWORD" - -#: grub-core/commands/password_pbkdf2.c:203 -msgid "Set user password (PBKDF2). " -msgstr "Set user password (PBKDF2). " - -#: grub-core/commands/pcidump.c:39 grub-core/commands/setpci.c:69 -msgid "Select device by vendor and device IDs." -msgstr "Select device by vendor and device IDs." - -#: grub-core/commands/pcidump.c:40 grub-core/commands/setpci.c:70 -msgid "[vendor]:[device]" -msgstr "[vendor]:[device]" - -#: grub-core/commands/pcidump.c:41 grub-core/commands/setpci.c:71 -msgid "Select device by its position on the bus." -msgstr "Select device by its position on the bus." - -#: grub-core/commands/pcidump.c:42 grub-core/commands/setpci.c:72 -msgid "[bus]:[slot][.func]" -msgstr "[bus]:[slot][.func]" - -#: grub-core/commands/pcidump.c:109 grub-core/commands/pcidump.c:138 -#: grub-core/commands/setpci.c:183 grub-core/commands/setpci.c:214 -#: grub-core/fs/zfs/zfs.c:3794 grub-core/kern/emu/hostdisk.c:458 -#: grub-core/kern/emu/hostdisk.c:473 grub-core/kern/file.c:44 -#, c-format -msgid "missing `%c' symbol" -msgstr "missing ‘%c’ symbol" - -#: grub-core/commands/pcidump.c:168 -msgid "[-s POSITION] [-d DEVICE]" -msgstr "[-s POSITION] [-d DEVICE]" - -#: grub-core/commands/pcidump.c:169 -msgid "Show raw dump of the PCI configuration space." -msgstr "Show raw dump of the PCI configuration space." - -#: grub-core/commands/pgp.c:45 -msgid "Skip signature-checking of the public key file." -msgstr "Skip signature-checking of the public key file." - -#. TRANSLATORS: it's about GNUPG signatures. -#: grub-core/commands/pgp.c:71 grub-core/commands/pgp.c:81 -#: grub-core/commands/pgp.c:86 grub-core/commands/pgp.c:96 -#: grub-core/commands/pgp.c:103 grub-core/commands/pgp.c:107 -#: grub-core/commands/pgp.c:114 grub-core/commands/pgp.c:119 -#: grub-core/commands/pgp.c:124 grub-core/commands/pgp.c:128 -#: grub-core/commands/pgp.c:268 grub-core/commands/pgp.c:276 -#: grub-core/commands/pgp.c:281 grub-core/commands/pgp.c:289 -#: grub-core/commands/pgp.c:320 grub-core/commands/pgp.c:327 -#: grub-core/commands/pgp.c:332 grub-core/commands/pgp.c:342 -#: grub-core/commands/pgp.c:468 grub-core/commands/pgp.c:471 -#: grub-core/commands/pgp.c:474 grub-core/commands/pgp.c:477 -#: grub-core/commands/pgp.c:484 grub-core/commands/pgp.c:490 -#: grub-core/commands/pgp.c:665 -msgid "bad signature" -msgstr "bad signature" - -#. TRANSLATORS: %08x is 32-bit key id. -#: grub-core/commands/pgp.c:636 grub-core/commands/pgp.c:812 -#, c-format -msgid "public key %08x not found" -msgstr "public key %08x not found" - -#: grub-core/commands/pgp.c:651 grub-core/disk/diskfilter.c:772 -#: grub-core/disk/diskfilter.c:782 grub-core/fs/ntfs.c:404 -#: grub-core/fs/zfs/zfs.c:1933 grub-core/normal/menu.c:428 -#, c-format -msgid "module `%s' isn't loaded" -msgstr "module ‘%s’ isn't loaded" - -#: grub-core/commands/pgp.c:994 -msgid "[-s|--skip-sig] FILE SIGNATURE_FILE [PUBKEY_FILE]" -msgstr "[-s|--skip-sig] FILE SIGNATURE_FILE [PUBKEY_FILE]" - -#: grub-core/commands/pgp.c:995 -msgid "Verify detached signature." -msgstr "Verify detached signature." - -#: grub-core/commands/pgp.c:998 -msgid "[-s|--skip-sig] PUBKEY_FILE" -msgstr "[-s|--skip-sig] PUBKEY_FILE" - -#: grub-core/commands/pgp.c:999 -msgid "Add PUBKEY_FILE to trusted keys." -msgstr "Add PUBKEY_FILE to trusted keys." - -#: grub-core/commands/pgp.c:1003 -msgid "Show the list of trusted keys." -msgstr "Show the list of trusted keys." - -#: grub-core/commands/pgp.c:1005 -msgid "PUBKEY_ID" -msgstr "PUBKEY_ID" - -#: grub-core/commands/pgp.c:1006 -msgid "Remove PUBKEY_ID from trusted keys." -msgstr "Remove PUBKEY_ID from trusted keys." - -#: grub-core/commands/probe.c:40 grub-core/commands/tr.c:32 -msgid "Set a variable to return value." -msgstr "Set a variable to return value." - -#. TRANSLATORS: It's a driver that is currently in use to access -#. the diven disk. -#: grub-core/commands/probe.c:43 -msgid "Determine driver." -msgstr "Determine driver." - -#: grub-core/commands/probe.c:44 -msgid "Determine partition map type." -msgstr "Determine partition map type." - -#: grub-core/commands/probe.c:45 -msgid "Determine filesystem type." -msgstr "Determine filesystem type." - -#: grub-core/commands/probe.c:46 -msgid "Determine filesystem UUID." -msgstr "Determine filesystem UUID." - -#: grub-core/commands/probe.c:47 -msgid "Determine filesystem label." -msgstr "Determine filesystem label." - -#: grub-core/commands/probe.c:139 grub-core/commands/probe.c:146 -#: util/grub-probe.c:462 -#, c-format -msgid "filesystem `%s' does not support labels" -msgstr "filesystem ‘%s’ does not support labels" - -#: grub-core/commands/probe.c:165 grub-core/fs/zfs/zfsinfo.c:430 -#: grub-core/loader/i386/bsd.c:169 util/grub-setup.c:223 -msgid "DEVICE" -msgstr "DEVICE" - -#: grub-core/commands/probe.c:166 -msgid "Retrieve device info." -msgstr "Retrieve device info." - -#: grub-core/commands/read.c:85 -msgid "[ENVVAR]" -msgstr "[ENVVAR]" - -#: grub-core/commands/read.c:86 -msgid "Set variable with user input." -msgstr "Set variable with user input." - -#: grub-core/commands/reboot.c:40 -msgid "Reboot the computer." -msgstr "Reboot the computer." - -#. TRANSLATORS: in regexp you can mark some -#. groups with parentheses. These groups are -#. then numbered and you can save some of -#. them in variables. In other programs -#. those components aree often referenced with -#. back slash, e.g. \1. Compare -#. sed -e 's,\([a-z][a-z]*\),lowercase=\1,g' -#. The whole matching component is saved in VARNAME, not its number. -#. -#: grub-core/commands/regexp.c:44 -msgid "Store matched component NUMBER in VARNAME." -msgstr "Store matched component NUMBER in VARNAME." - -#: grub-core/commands/regexp.c:45 -msgid "[NUMBER:]VARNAME" -msgstr "[NUMBER:]VARNAME" - -#. TRANSLATORS: This are two arguments. So it's -#. two separate units to translate and pay -#. attention not to reverse them. -#: grub-core/commands/regexp.c:157 -msgid "REGEXP STRING" -msgstr "REGEXP STRING" - -#: grub-core/commands/regexp.c:158 -msgid "Test if REGEXP matches STRING." -msgstr "Test if REGEXP matches STRING." - -#: grub-core/commands/search.c:324 -msgid "NAME [VARIABLE] [HINTS]" -msgstr "NAME [VARIABLE] [HINTS]" - -#: grub-core/commands/search_file.c:4 -msgid "" -"Search devices by file. If VARIABLE is specified, the first device found is " -"set to a variable." -msgstr "" -"Search devices by file. If VARIABLE is specified, the first device found is " -"set to a variable." - -#: grub-core/commands/search_label.c:4 -msgid "" -"Search devices by label. If VARIABLE is specified, the first device found is " -"set to a variable." -msgstr "" -"Search devices by label. If VARIABLE is specified, the first device found is " -"set to a variable." - -#: grub-core/commands/search_uuid.c:4 -msgid "" -"Search devices by UUID. If VARIABLE is specified, the first device found is " -"set to a variable." -msgstr "" -"Search devices by UUID. If VARIABLE is specified, the first device found is " -"set to a variable." - -#: grub-core/commands/search_wrap.c:34 -msgid "Search devices by a file." -msgstr "Search devices by a file." - -#: grub-core/commands/search_wrap.c:35 -msgid "Search devices by a filesystem label." -msgstr "Search devices by a filesystem label." - -#: grub-core/commands/search_wrap.c:37 -msgid "Search devices by a filesystem UUID." -msgstr "Search devices by a filesystem UUID." - -#: grub-core/commands/search_wrap.c:40 -msgid "Set a variable to the first device found." -msgstr "Set a variable to the first device found." - -#: grub-core/commands/search_wrap.c:42 -msgid "Do not probe any floppy drive." -msgstr "Do not probe any floppy drive." - -#: grub-core/commands/search_wrap.c:44 -msgid "" -"First try the device HINT. If HINT ends in comma, also try subpartitions" -msgstr "" -"First try the device HINT. If HINT ends in comma, also try subpartitions" - -#: grub-core/commands/search_wrap.c:45 grub-core/commands/search_wrap.c:49 -#: grub-core/commands/search_wrap.c:53 grub-core/commands/search_wrap.c:57 -#: grub-core/commands/search_wrap.c:61 grub-core/commands/search_wrap.c:65 -msgid "HINT" -msgstr "HINT" - -#: grub-core/commands/search_wrap.c:47 -msgid "" -"First try the device HINT if currently running on IEEE1275. If HINT ends in " -"comma, also try subpartitions" -msgstr "" -"First try the device HINT if currently running on IEEE1275. If HINT ends in " -"comma, also try subpartitions" - -#: grub-core/commands/search_wrap.c:51 -msgid "" -"First try the device HINT if currently running on BIOS. If HINT ends in " -"comma, also try subpartitions" -msgstr "" -"First try the device HINT if currently running on BIOS. If HINT ends in " -"comma, also try subpartitions" - -#: grub-core/commands/search_wrap.c:55 -msgid "" -"First try the device HINT if direct hardware access is supported. If HINT " -"ends in comma, also try subpartitions" -msgstr "" -"First try the device HINT if direct hardware access is supported. If HINT " -"ends in comma, also try subpartitions" - -#: grub-core/commands/search_wrap.c:59 -msgid "" -"First try the device HINT if currently running on EFI. If HINT ends in " -"comma, also try subpartitions" -msgstr "" -"First try the device HINT if currently running on EFI. If HINT ends in " -"comma, also try subpartitions" - -#: grub-core/commands/search_wrap.c:63 -msgid "" -"First try the device HINT if currently running on ARC. If HINT ends in " -"comma, also try subpartitions" -msgstr "" -"First try the device HINT if currently running on ARC. If HINT ends in " -"comma, also try subpartitions" - -#: grub-core/commands/search_wrap.c:207 -msgid "[-f|-l|-u|-s|-n] [--hint HINT [--hint HINT] ...] NAME" -msgstr "[-f|-l|-u|-s|-n] [--hint HINT [--hint HINT] ...] NAME" - -#: grub-core/commands/search_wrap.c:209 -msgid "" -"Search devices by file, filesystem label or filesystem UUID. If --set is " -"specified, the first device found is set to a variable. If no variable name " -"is specified, `root' is used." -msgstr "" -"Search devices by file, filesystem label or filesystem UUID. If --set is " -"specified, the first device found is set to a variable. If no variable name " -"is specified, ‘root’ is used." - -#: grub-core/commands/setpci.c:132 -#, c-format -msgid "Register %x of %x:%02x.%x is %x\n" -msgstr "Register %x of %x:%02x.%x is %x\n" - -#: grub-core/commands/setpci.c:333 -msgid "[-s POSITION] [-d DEVICE] [-v VAR] REGISTER[=VALUE[:MASK]]" -msgstr "[-s POSITION] [-d DEVICE] [-v VAR] REGISTER[=VALUE[:MASK]]" - -#: grub-core/commands/setpci.c:335 -msgid "Manipulate PCI devices." -msgstr "Manipulate PCI devices." - -#: grub-core/commands/sleep.c:32 -msgid "Verbose countdown." -msgstr "Verbose countdown." - -#: grub-core/commands/sleep.c:33 -msgid "Allow to interrupt with ESC." -msgstr "Allow to interrupt with ESC." - -#: grub-core/commands/sleep.c:109 -msgid "NUMBER_OF_SECONDS" -msgstr "NUMBER_OF_SECONDS" - -#: grub-core/commands/sleep.c:110 -msgid "Wait for a specified number of seconds." -msgstr "Wait for a specified number of seconds." - -#: grub-core/commands/syslinuxcfg.c:50 util/grub-syslinux2cfg.c:66 -msgid "root directory of the syslinux disk [default=/]." -msgstr "root directory of the syslinux disk [default=/]." - -#: grub-core/commands/syslinuxcfg.c:53 util/grub-syslinux2cfg.c:72 -msgid "" -"current directory of syslinux [default is parent directory of input file]." -msgstr "" -"current directory of syslinux [default is parent directory of input file]." - -#: grub-core/commands/syslinuxcfg.c:55 util/grub-syslinux2cfg.c:75 -msgid "assume input is an isolinux configuration file." -msgstr "assume input is an isolinux configuration file." - -#: grub-core/commands/syslinuxcfg.c:56 util/grub-syslinux2cfg.c:76 -msgid "assume input is a pxelinux configuration file." -msgstr "assume input is a pxelinux configuration file." - -#: grub-core/commands/syslinuxcfg.c:57 util/grub-syslinux2cfg.c:77 -msgid "assume input is a syslinux configuration file." -msgstr "assume input is a syslinux configuration file." - -#. TRANSLATORS: "syslinux config" means -#. "config as used by syslinux". -#: grub-core/commands/syslinuxcfg.c:189 -msgid "Execute syslinux config in same context" -msgstr "Execute syslinux config in same context" - -#: grub-core/commands/syslinuxcfg.c:195 -msgid "Execute syslinux config in new context" -msgstr "Execute syslinux config in new context" - -#: grub-core/commands/syslinuxcfg.c:201 -msgid "Execute syslinux config in same context taking only menu entries" -msgstr "Execute syslinux config in same context taking only menu entries" - -#: grub-core/commands/syslinuxcfg.c:207 -msgid "Execute syslinux config in new context taking only menu entries" -msgstr "Execute syslinux config in new context taking only menu entries" - -#: grub-core/commands/terminal.c:90 -msgid "no terminal specified" -msgstr "no terminal specified" - -#: grub-core/commands/terminal.c:112 grub-core/commands/terminal.c:139 -#, c-format -msgid "terminal `%s' isn't found" -msgstr "terminal ‘%s’ isn't found" - -#: grub-core/commands/terminal.c:244 -msgid "Active input terminals:" -msgstr "Active input terminals:" - -#: grub-core/commands/terminal.c:245 -msgid "Available input terminals:" -msgstr "Available input terminals:" - -#: grub-core/commands/terminal.c:261 -msgid "Active output terminals:" -msgstr "Active output terminals:" - -#: grub-core/commands/terminal.c:262 -msgid "Available output terminals:" -msgstr "Available output terminals:" - -#: grub-core/commands/terminal.c:271 grub-core/commands/terminal.c:276 -msgid "[--append|--remove] [TERMINAL1] [TERMINAL2] ..." -msgstr "[--append|--remove] [TERMINAL1] [TERMINAL2] ..." - -#: grub-core/commands/terminal.c:273 -msgid "List or select an input terminal." -msgstr "List or select an input terminal." - -#: grub-core/commands/terminal.c:278 -msgid "List or select an output terminal." -msgstr "List or select an output terminal." - -#: grub-core/commands/test.c:444 -msgid "EXPRESSION ]" -msgstr "EXPRESSION ]" - -#: grub-core/commands/test.c:444 grub-core/commands/test.c:447 -msgid "Evaluate an expression." -msgstr "Evaluate an expression." - -#: grub-core/commands/test.c:447 -msgid "EXPRESSION" -msgstr "EXPRESSION" - -#: grub-core/commands/testload.c:164 -msgid "Load the same file in multiple ways." -msgstr "Load the same file in multiple ways." - -#: grub-core/commands/testspeed.c:35 -msgid "Specify size for each read operation" -msgstr "Specify size for each read operation" - -#: grub-core/commands/testspeed.c:58 -msgid "invalid block size" -msgstr "invalid block size" - -#: grub-core/commands/testspeed.c:80 -#, c-format -msgid "File size: %s\n" -msgstr "File size: %s\n" - -#: grub-core/commands/testspeed.c:83 -#, c-format -msgid "Elapsed time: %d.%03d s \n" -msgstr "Elapsed time: %d.%03d s \n" - -#: grub-core/commands/testspeed.c:92 -#, c-format -msgid "Speed: %s \n" -msgstr "Speed: %s \n" - -#: grub-core/commands/testspeed.c:107 -msgid "[-s SIZE] FILENAME" -msgstr "[-s SIZE] FILENAME" - -#: grub-core/commands/testspeed.c:108 -msgid "Test file read speed." -msgstr "Test file read speed." - -#: grub-core/commands/time.c:38 grub-core/script/execute.c:974 -msgid "no command is specified" -msgstr "no command is specified" - -#: grub-core/commands/time.c:50 -#, c-format -msgid "Elapsed time: %d.%03d seconds \n" -msgstr "Elapsed time: %d.%03d seconds \n" - -#: grub-core/commands/time.c:61 -msgid "COMMAND [ARGS]" -msgstr "COMMAND [ARGS]" - -#: grub-core/commands/time.c:62 -msgid "Measure time used by COMMAND" -msgstr "Measure time used by COMMAND" - -#: grub-core/commands/tr.c:33 -msgid "Translate to upper case." -msgstr "Translate to upper case." - -#: grub-core/commands/tr.c:34 -msgid "Translate to lower case." -msgstr "Translate to lower case." - -#: grub-core/commands/tr.c:119 -msgid "[OPTIONS] [SET1] [SET2] [STRING]" -msgstr "[OPTIONS] [SET1] [SET2] [STRING]" - -#: grub-core/commands/tr.c:120 -msgid "Translate SET1 characters to SET2 in STRING." -msgstr "Translate SET1 characters to SET2 in STRING." - -#. TRANSLATORS: it's a command description. -#: grub-core/commands/true.c:50 -msgid "Do nothing, successfully." -msgstr "Do nothing, successfully." - -#. TRANSLATORS: it's a command description. -#: grub-core/commands/true.c:54 -msgid "Do nothing, unsuccessfully." -msgstr "Do nothing, unsuccessfully." - -#: grub-core/commands/usbtest.c:221 -msgid "Test USB support." -msgstr "Test USB support." - -#: grub-core/commands/verifiers.c:120 -#, c-format -msgid "verification requested but nobody cares: %s" -msgstr "verification requested but nobody cares: %s" - -#: grub-core/commands/verifiers.c:140 -msgid "big file signature isn't implemented yet" -msgstr "big file signature isn't implemented yet" - -#: grub-core/commands/videoinfo.c:61 -msgid "Text-only " -msgstr "Text-only " - -#. TRANSLATORS: "Direct color" is a mode when the color components -#. are written dirrectly into memory. -#: grub-core/commands/videoinfo.c:66 -#, c-format -msgid "Direct color, mask: %d/%d/%d/%d pos: %d/%d/%d/%d" -msgstr "Direct color, mask: %d/%d/%d/%d pos: %d/%d/%d/%d" - -#. TRANSLATORS: In "paletted color" mode you write the index of the color -#. in the palette. Synonyms include "packed pixel". -#: grub-core/commands/videoinfo.c:78 -msgid "Paletted " -msgstr "Paletted " - -#: grub-core/commands/videoinfo.c:80 -msgid "YUV " -msgstr "YUV " - -#. TRANSLATORS: "Planar" is the video memory where you have to write -#. in several different banks "plans" to control the different color -#. components of the same pixel. -#: grub-core/commands/videoinfo.c:85 -msgid "Planar " -msgstr "Planar " - -#: grub-core/commands/videoinfo.c:87 -msgid "Hercules " -msgstr "Hercules " - -#: grub-core/commands/videoinfo.c:89 -msgid "CGA " -msgstr "CGA " - -#. TRANSLATORS: Non-chain 4 is a 256-color planar -#. (unchained) video memory mode. -#: grub-core/commands/videoinfo.c:93 -msgid "Non-chain 4 " -msgstr "Non-chain 4 " - -#: grub-core/commands/videoinfo.c:95 -msgid "Monochrome " -msgstr "Monochrome " - -#: grub-core/commands/videoinfo.c:97 -msgid "Unknown video mode " -msgstr "Unknown video mode " - -#: grub-core/commands/videoinfo.c:111 -msgid " EDID checksum invalid" -msgstr " EDID checksum invalid" - -#: grub-core/commands/videoinfo.c:116 -#, c-format -msgid " EDID version: %u.%u\n" -msgstr " EDID version: %u.%u\n" - -#: grub-core/commands/videoinfo.c:120 -#, c-format -msgid " Preferred mode: %ux%u\n" -msgstr " Preferred mode: %ux%u\n" - -#: grub-core/commands/videoinfo.c:123 -msgid " No preferred mode available\n" -msgstr " No preferred mode available\n" - -#: grub-core/commands/videoinfo.c:146 grub-core/video/video.c:490 -#: grub-core/video/video.c:498 grub-core/video/video.c:509 -#: grub-core/video/video.c:520 grub-core/video/video.c:528 -#, c-format -msgid "invalid video mode specification `%s'" -msgstr "invalid video mode specification ‘%s’" - -#: grub-core/commands/videoinfo.c:168 -msgid "List of supported video modes:" -msgstr "List of supported video modes:" - -#: grub-core/commands/videoinfo.c:169 -msgid "Legend: mask/position=red/green/blue/reserved" -msgstr "Legend: mask/position=red/green/blue/reserved" - -#: grub-core/commands/videoinfo.c:176 -#, c-format -msgid "Adapter `%s':\n" -msgstr "Adapter ‘%s’:\n" - -#: grub-core/commands/videoinfo.c:180 -msgid " No info available" -msgstr " No info available" - -#: grub-core/commands/videoinfo.c:198 -msgid " Failed to initialize video adapter" -msgstr " Failed to initialize video adapter" - -#. TRANSLATORS: "x" has to be entered in, -#. like an identifier, so please don't -#. use better Unicode codepoints. -#: grub-core/commands/videoinfo.c:239 grub-core/commands/videoinfo.c:248 -msgid "[WxH[xD]]" -msgstr "[WxH[xD]]" - -#: grub-core/commands/videoinfo.c:240 grub-core/commands/videoinfo.c:249 -msgid "" -"List available video modes. If resolution is given show only modes matching " -"it." -msgstr "" -"List available video modes. If resolution is given show only modes matching " -"it." - -#. TRANSLATORS: "x" has to be entered in, -#. like an identifier, so please don't -#. use better Unicode codepoints. -#: grub-core/commands/videotest.c:225 -msgid "[WxH]" -msgstr "[WxH]" - -#. TRANSLATORS: Here, on the other hand, it's -#. nicer to use unicode cross instead of x. -#: grub-core/commands/videotest.c:228 -msgid "Test video subsystem in mode WxH." -msgstr "Test video subsystem in mode WxH." - -#: grub-core/commands/videotest.c:231 -msgid "Test video subsystem." -msgstr "Test video subsystem." - -#: grub-core/commands/xen/lsxen.c:80 grub-core/commands/xen/lsxen.c:82 -msgid "[DIR]" -msgstr "[DIR]" - -#: grub-core/commands/xen/lsxen.c:81 grub-core/commands/xen/lsxen.c:83 -msgid "List Xen storage." -msgstr "List Xen storage." - -#. TRANSLATORS: GRUBUUID stands for "filesystem -#. UUID as used in GRUB". -#: grub-core/commands/xnu_uuid.c:110 -msgid "[-l] GRUBUUID [VARNAME]" -msgstr "[-l] GRUBUUID [VARNAME]" - -#: grub-core/commands/xnu_uuid.c:111 -msgid "" -"Transform 64-bit UUID to format suitable for XNU. If -l is given keep it " -"lowercase as done by blkid." -msgstr "" -"Transform 64-bit UUID to format suitable for XNU. If -l is given keep it " -"lowercase as done by blkid." - -#: grub-core/disk/arc/arcdisk.c:248 grub-core/disk/efi/efidisk.c:603 -#: grub-core/disk/i386/pc/biosdisk.c:498 grub-core/disk/i386/pc/biosdisk.c:543 -#: grub-core/disk/ieee1275/nand.c:198 grub-core/disk/ieee1275/obdisk.c:527 -#: grub-core/disk/ieee1275/ofdisk.c:586 -#, c-format -msgid "failure reading sector 0x%llx from `%s'" -msgstr "failure reading sector 0x%llx from ‘%s’" - -#: grub-core/disk/arc/arcdisk.c:284 grub-core/disk/efi/efidisk.c:626 -#: grub-core/disk/i386/pc/biosdisk.c:548 grub-core/disk/ieee1275/ofdisk.c:606 -#, c-format -msgid "failure writing sector 0x%llx to `%s'" -msgstr "failure writing sector 0x%llx to ‘%s’" - -#: grub-core/disk/cryptodisk.c:40 -msgid "Mount by UUID." -msgstr "Mount by UUID." - -#. TRANSLATORS: It's still restricted to cryptodisks only. -#: grub-core/disk/cryptodisk.c:42 -msgid "Mount all." -msgstr "Mount all." - -#: grub-core/disk/cryptodisk.c:43 -msgid "Mount all volumes with `boot' flag set." -msgstr "Mount all volumes with ‘boot’ flag set." - -#. TRANSLATORS: The first %s is the file being looked at, the second %s is -#. the error message. -#: grub-core/disk/cryptodisk.c:526 grub-core/kern/emu/hostdisk.c:152 -#: grub-core/kern/emu/hostdisk.c:262 grub-core/kern/emu/hostdisk.c:434 -#: grub-core/kern/emu/misc.c:168 grub-core/kern/emu/misc.c:174 -#: grub-core/kern/emu/misc.c:196 grub-core/osdep/bsd/getroot.c:92 -#: grub-core/osdep/bsd/getroot.c:168 grub-core/osdep/hurd/getroot.c:68 -#: grub-core/osdep/linux/blocklist.c:65 grub-core/osdep/linux/getroot.c:150 -#: grub-core/osdep/linux/hostdisk.c:194 grub-core/osdep/linux/hostdisk.c:421 -#: grub-core/osdep/linux/ofpath.c:417 grub-core/osdep/linux/ofpath.c:422 -#: grub-core/osdep/linux/ofpath.c:517 grub-core/osdep/linux/ofpath.c:530 -#: grub-core/osdep/sun/getroot.c:110 grub-core/osdep/windows/blocklist.c:98 -#: grub-core/tests/video_checksum.c:279 util/editenv.c:46 util/glue-efi.c:115 -#: util/glue-efi.c:120 util/glue-efi.c:130 util/grub-editenv.c:138 -#: util/grub-editenv.c:192 util/grub-file.c:83 util/grub-fstest.c:128 -#: util/grub-fstest.c:568 util/grub-install-common.c:92 -#: util/grub-install-common.c:94 util/grub-install-common.c:101 -#: util/grub-install-common.c:529 util/grub-menulst2cfg.c:53 -#: util/grub-menulst2cfg.c:68 util/grub-mkimage.c:292 util/grub-mklayout.c:504 -#: util/grub-mklayout.c:516 util/grub-mknetdir.c:133 util/grub-mknetdir.c:151 -#: util/grub-mkrescue.c:627 util/grub-mkrescue.c:631 util/grub-mkrescue.c:879 -#: util/grub-mkrescue.c:883 util/grub-mkstandalone.c:253 util/grub-mount.c:498 -#: util/grub-render-label.c:169 util/grub-script-check.c:175 -#: util/grub-syslinux2cfg.c:181 util/grub-syslinux2cfg.c:191 -#: util/grub-syslinux2cfg.c:212 util/grub-syslinux2cfg.c:228 util/misc.c:91 -#: util/render-label.c:76 util/render-label.c:163 util/render-label.c:174 -#: util/resolve.c:246 util/setup.c:783 -#, c-format -msgid "cannot open `%s': %s" -msgstr "cannot open ‘%s’: %s" - -#: grub-core/disk/cryptodisk.c:583 grub-core/disk/cryptodisk.c:628 -#: grub-core/kern/emu/hostdisk.c:270 grub-core/kern/emu/hostfs.c:142 -#: grub-core/osdep/linux/hostdisk.c:456 util/grub-editenv.c:143 -#: util/grub-editenv.c:149 util/grub-fstest.c:320 util/misc.c:111 -#, c-format -msgid "cannot seek `%s': %s" -msgstr "cannot seek ‘%s’: %s" - -#: grub-core/disk/cryptodisk.c:1144 -msgid "SOURCE|-u UUID|-a|-b" -msgstr "SOURCE|-u UUID|-a|-b" - -#: grub-core/disk/cryptodisk.c:1145 -msgid "Mount a crypto device." -msgstr "Mount a crypto device." - -#. TRANSLATORS: This message kicks in during the detection of -#. which modules needs to be included in core image. This happens -#. in the case of degraded RAID and means that autodetection may -#. fail to include some of modules. It's an installation time -#. message, not runtime message. -#: grub-core/disk/diskfilter.c:343 grub-core/disk/diskfilter.c:376 -#, c-format -msgid "" -"Couldn't find physical volume `%s'. Some modules may be missing from core " -"image." -msgstr "" -"Couldn't find physical volume ‘%s’. Some modules may be missing from core " -"image." - -#: grub-core/disk/diskfilter.c:480 -#, c-format -msgid "physical volume %s not found" -msgstr "physical volume %s not found" - -#: grub-core/disk/efi/efidisk.c:600 grub-core/disk/efi/efidisk.c:623 -#, c-format -msgid "no media in `%s'" -msgstr "no media in ‘%s’" - -#: grub-core/disk/geli.c:75 -msgid "Couldn't load sha256" -msgstr "Couldn't load sha256" - -#: grub-core/disk/geli.c:85 -msgid "Couldn't load sha512" -msgstr "Couldn't load sha512" - -#: grub-core/disk/geli.c:216 grub-core/disk/geli.c:220 -msgid "couldn't read ELI metadata" -msgstr "couldn't read ELI metadata" - -#: grub-core/disk/geli.c:231 -msgid "wrong ELI magic or version" -msgstr "wrong ELI magic or version" - -#: grub-core/disk/geli.c:435 grub-core/disk/luks.c:329 -msgid "Attempting to decrypt master key..." -msgstr "Attempting to decrypt master key..." - -#: grub-core/disk/geli.c:441 grub-core/disk/luks.c:347 -#, c-format -msgid "Enter passphrase for %s%s%s (%s): " -msgstr "Enter passphrase for %s%s%s (%s): " - -#. TRANSLATORS: It's a cryptographic key slot: one element of an array -#. where each element is either empty or holds a key. -#: grub-core/disk/geli.c:530 grub-core/disk/luks.c:451 -#, c-format -msgid "Slot %d opened\n" -msgstr "Slot %d opened\n" - -#: grub-core/disk/i386/pc/biosdisk.c:470 grub-core/disk/i386/pc/biosdisk.c:524 -#: grub-core/disk/i386/pc/biosdisk.c:534 grub-core/kern/disk_common.c:47 -#, c-format -msgid "attempt to read or write outside of disk `%s'" -msgstr "attempt to read or write outside of disk ‘%s’" - -#: grub-core/disk/i386/pc/biosdisk.c:491 grub-core/disk/i386/pc/biosdisk.c:611 -#: grub-core/disk/scsi.c:726 -msgid "cannot write to CD-ROM" -msgstr "cannot write to CD-ROM" - -#: grub-core/disk/i386/pc/biosdisk.c:662 -msgid "" -"Native disk drivers are in use. Refusing to use firmware disk interface." -msgstr "" -"Native disk drivers are in use. Refusing to use firmware disk interface." - -#. TRANSLATORS: it's a partition for embedding, -#. not a partition embed into something. GRUB -#. install tools put core.img into a place -#. usable for bootloaders (called generically -#. "embedding zone") and this operation is -#. called "embedding". -#: grub-core/disk/ldm.c:1015 -msgid "your LDM Embedding Partition is too small; embedding won't be possible" -msgstr "your LDM Embedding Partition is too small; embedding won't be possible" - -#. TRANSLATORS: it's a partition for embedding, -#. not a partition embed into something. -#: grub-core/disk/ldm.c:1033 -msgid "this LDM has no Embedding Partition; embedding won't be possible" -msgstr "this LDM has no Embedding Partition; embedding won't be possible" - -#. TRANSLATORS: The disk is simply removed from the list of available ones, -#. not wiped, avoid to scare user. -#: grub-core/disk/loopback.c:45 -msgid "Delete the specified loopback drive." -msgstr "Delete the specified loopback drive." - -#: grub-core/disk/loopback.c:237 -msgid "[-d] DEVICENAME FILE." -msgstr "[-d] DEVICENAME FILE." - -#. TRANSLATORS: The file itself is not destroyed -#. or transformed into drive. -#: grub-core/disk/loopback.c:240 -msgid "Make a virtual drive from a file." -msgstr "Make a virtual drive from a file." - -#: grub-core/efiemu/i386/loadcore32.c:111 -#: grub-core/efiemu/i386/loadcore64.c:125 grub-core/kern/arm/dl.c:256 -#: grub-core/kern/arm64/dl.c:187 grub-core/kern/i386/dl.c:75 -#: grub-core/kern/ia64/dl.c:140 grub-core/kern/mips/dl.c:258 -#: grub-core/kern/powerpc/dl.c:163 grub-core/kern/riscv/dl.c:334 -#: grub-core/kern/sparc64/dl.c:180 grub-core/kern/x86_64/dl.c:110 -#: util/grub-mkimagexx.c:756 util/grub-mkimagexx.c:881 -#: util/grub-mkimagexx.c:945 util/grub-mkimagexx.c:1026 -#: util/grub-mkimagexx.c:1120 util/grub-mkimagexx.c:1222 -#: util/grub-mkimagexx.c:1413 util/grub-mkimagexx.c:1628 -#: util/grub-mkimagexx.c:1665 util/grub-mkimagexx.c:1697 -#: util/grub-mkimagexx.c:1767 util/grub-mkimagexx.c:1797 -#, c-format -msgid "relocation 0x%x is not implemented yet" -msgstr "relocation 0x%x is not implemented yet" - -#: grub-core/efiemu/loadcore.c:200 grub-core/efiemu/loadcore.c:237 -#: grub-core/loader/i386/bsdXX.c:317 util/grub-mkimagexx.c:2360 -msgid "no symbol table" -msgstr "no symbol table" - -#: grub-core/efiemu/loadcore.c:346 grub-core/kern/dl.c:609 -#: grub-core/loader/ia64/efi/linux.c:345 grub-core/loader/mips/linux.c:248 -#: grub-core/loader/multiboot_elfxx.c:76 -#: grub-core/loader/powerpc/ieee1275/linux.c:280 -#: grub-core/loader/sparc64/ieee1275/linux.c:320 -msgid "this ELF file is not of the right type" -msgstr "this ELF file is not of the right type" - -#: grub-core/efiemu/main.c:313 -msgid "Load and initialize EFI emulator." -msgstr "Load and initialize EFI emulator." - -#: grub-core/efiemu/main.c:317 -msgid "Finalize loading of EFI emulator." -msgstr "Finalize loading of EFI emulator." - -#: grub-core/efiemu/main.c:320 -msgid "Unload EFI emulator." -msgstr "Unload EFI emulator." - -#: grub-core/efiemu/symbols.c:92 grub-core/kern/dl.c:376 -#, c-format -msgid "symbol `%s' not found" -msgstr "symbol ‘%s’ not found" - -#: grub-core/font/font_cmd.c:52 -msgid "Loaded fonts:" -msgstr "Loaded fonts:" - -#: grub-core/font/font_cmd.c:74 -msgid "FILE..." -msgstr "FILE..." - -#: grub-core/font/font_cmd.c:75 -msgid "Specify one or more font files to load." -msgstr "Specify one or more font files to load." - -#: grub-core/font/font_cmd.c:78 -msgid "List the loaded fonts." -msgstr "List the loaded fonts." - -#: grub-core/fs/archelp.c:216 grub-core/fs/archelp.c:278 -#: grub-core/fs/btrfs.c:1815 grub-core/fs/fshelp.c:227 grub-core/fs/jfs.c:736 -#: grub-core/fs/minix.c:369 grub-core/fs/ufs.c:454 -msgid "too deep nesting of symlinks" -msgstr "too deep nesting of symlinks" - -#: grub-core/fs/bfs.c:228 grub-core/fs/fshelp.c:368 grub-core/fs/minix.c:270 -#: grub-core/kern/file.c:156 -msgid "attempt to read past the end of file" -msgstr "attempt to read past the end of file" - -#: grub-core/fs/btrfs.c:1698 grub-core/fs/btrfs.c:1957 -#: grub-core/fs/fshelp.c:189 grub-core/fs/fshelp.c:309 grub-core/fs/jfs.c:431 -#: grub-core/fs/minix.c:414 grub-core/fs/minix.c:562 -#: grub-core/fs/reiserfs.c:732 grub-core/fs/ufs.c:531 grub-core/fs/ufs.c:671 -#: grub-core/fs/zfs/zfs.c:2831 grub-core/fs/zfs/zfs.c:4247 -msgid "not a directory" -msgstr "not a directory" - -#: grub-core/fs/btrfs.c:2063 grub-core/fs/fshelp.c:307 grub-core/fs/jfs.c:835 -#: grub-core/fs/zfs/zfs.c:3801 -msgid "not a regular file" -msgstr "not a regular file" - -#: grub-core/fs/btrfs.c:2157 grub-core/fs/zfs/zfs.c:4333 -#: grub-core/partmap/msdos.c:400 -msgid "your core.img is unusually large. It won't fit in the embedding area" -msgstr "your core.img is unusually large. It won't fit in the embedding area" - -#: grub-core/fs/fshelp.c:281 grub-core/fs/minix.c:630 grub-core/fs/ufs.c:661 -#: grub-core/fs/ufs.c:757 grub-core/kern/fs.c:168 grub-core/kern/fs.c:180 -#, c-format -msgid "invalid file name `%s'" -msgstr "invalid file name ‘%s’" - -#: grub-core/fs/zfs/zfs.c:453 -msgid "checksum verification failed" -msgstr "checksum verification failed" - -#: grub-core/fs/zfs/zfs.c:1465 -msgid "couldn't find a necessary member device of multi-device filesystem" -msgstr "couldn't find a necessary member device of multi-device filesystem" - -#: grub-core/fs/zfs/zfscrypt.c:292 -msgid "no decryption key available" -msgstr "no decryption key available" - -#: grub-core/fs/zfs/zfscrypt.c:304 -msgid "MAC verification failed" -msgstr "MAC verification failed" - -#: grub-core/fs/zfs/zfscrypt.c:413 -msgid "Assume input is raw." -msgstr "Assume input is raw." - -#: grub-core/fs/zfs/zfscrypt.c:414 -msgid "Assume input is hex." -msgstr "Assume input is hex." - -#: grub-core/fs/zfs/zfscrypt.c:415 -msgid "Assume input is passphrase." -msgstr "Assume input is passphrase." - -#: grub-core/fs/zfs/zfscrypt.c:437 util/grub-fstest.c:553 util/grub-mount.c:483 -msgid "Enter ZFS password: " -msgstr "Enter ZFS password: " - -#: grub-core/fs/zfs/zfscrypt.c:476 -msgid "[-h|-p|-r] [FILE]" -msgstr "[-h|-p|-r] [FILE]" - -#: grub-core/fs/zfs/zfscrypt.c:477 -msgid "Import ZFS wrapping key stored in FILE." -msgstr "Import ZFS wrapping key stored in FILE." - -#: grub-core/fs/zfs/zfsinfo.c:51 -msgid "Virtual device is removed" -msgstr "Virtual device is removed" - -#: grub-core/fs/zfs/zfsinfo.c:57 -msgid "Virtual device is faulted" -msgstr "Virtual device is faulted" - -#: grub-core/fs/zfs/zfsinfo.c:63 -msgid "Virtual device is offline" -msgstr "Virtual device is offline" - -#. TRANSLATORS: degraded doesn't mean broken but that some of -#. component are missing but virtual device as whole is still usable. -#: grub-core/fs/zfs/zfsinfo.c:70 -msgid "Virtual device is degraded" -msgstr "Virtual device is degraded" - -#: grub-core/fs/zfs/zfsinfo.c:73 -msgid "Virtual device is online" -msgstr "Virtual device is online" - -#: grub-core/fs/zfs/zfsinfo.c:89 -msgid "Incorrect virtual device: no type available" -msgstr "Incorrect virtual device: no type available" - -#. TRANSLATORS: The virtual devices form a tree (in graph-theoretical -#. sense). The nodes like mirror or raidz have children: member devices. -#. The "real" devices which actually store data are called "leafs" -#. (again borrowed from graph theory) and can be either disks -#. (or partitions) or files. -#: grub-core/fs/zfs/zfsinfo.c:105 -msgid "Leaf virtual device (file or disk)" -msgstr "Leaf virtual device (file or disk)" - -#: grub-core/fs/zfs/zfsinfo.c:113 -msgid "Bootpath: unavailable\n" -msgstr "Bootpath: unavailable\n" - -#: grub-core/fs/zfs/zfsinfo.c:115 -#, c-format -msgid "Bootpath: %s\n" -msgstr "Bootpath: %s\n" - -#: grub-core/fs/zfs/zfsinfo.c:120 -msgid "Path: unavailable" -msgstr "Path: unavailable" - -#: grub-core/fs/zfs/zfsinfo.c:122 -#, c-format -msgid "Path: %s\n" -msgstr "Path: %s\n" - -#: grub-core/fs/zfs/zfsinfo.c:127 -msgid "Devid: unavailable" -msgstr "Devid: unavailable" - -#: grub-core/fs/zfs/zfsinfo.c:129 -#, c-format -msgid "Devid: %s\n" -msgstr "Devid: %s\n" - -#: grub-core/fs/zfs/zfsinfo.c:148 -msgid "This VDEV is a mirror" -msgstr "This VDEV is a mirror" - -#: grub-core/fs/zfs/zfsinfo.c:153 -#, c-format -msgid "This VDEV is a RAIDZ%llu\n" -msgstr "This VDEV is a RAIDZ%llu\n" - -#: grub-core/fs/zfs/zfsinfo.c:158 -msgid "Incorrect VDEV" -msgstr "Incorrect VDEV" - -#: grub-core/fs/zfs/zfsinfo.c:161 -#, c-format -msgid "VDEV with %d children\n" -msgstr "VDEV with %d children\n" - -#. TRANSLATORS: it's the element carying the number %d, not -#. total element number. And the number itself is fine, -#. only the element isn't. -#. -#: grub-core/fs/zfs/zfsinfo.c:177 -#, c-format -msgid "VDEV element number %d isn't correct\n" -msgstr "VDEV element number %d isn't correct\n" - -#. TRANSLATORS: it's the element carying the number %d, not -#. total element number. This is used in enumeration -#. "Element number 1", "Element number 2", ... -#: grub-core/fs/zfs/zfsinfo.c:184 -#, c-format -msgid "VDEV element number %d:\n" -msgstr "VDEV element number %d:\n" - -#: grub-core/fs/zfs/zfsinfo.c:193 -#, c-format -msgid "Unknown virtual device type: %s\n" -msgstr "Unknown virtual device type: %s\n" - -#. TRANSLATORS: Here we speak about ZFS pools it's semi-marketing, -#. semi-technical term by Sun/Oracle and should be translated in sync with -#. other ZFS-related software and documentation. -#: grub-core/fs/zfs/zfsinfo.c:254 -msgid "Pool state: active" -msgstr "Pool state: active" - -#: grub-core/fs/zfs/zfsinfo.c:255 -msgid "Pool state: exported" -msgstr "Pool state: exported" - -#: grub-core/fs/zfs/zfsinfo.c:256 -msgid "Pool state: destroyed" -msgstr "Pool state: destroyed" - -#: grub-core/fs/zfs/zfsinfo.c:257 -msgid "Pool state: reserved for hot spare" -msgstr "Pool state: reserved for hot spare" - -#: grub-core/fs/zfs/zfsinfo.c:258 -msgid "Pool state: level 2 ARC device" -msgstr "Pool state: level 2 ARC device" - -#: grub-core/fs/zfs/zfsinfo.c:259 -msgid "Pool state: uninitialized" -msgstr "Pool state: uninitialized" - -#: grub-core/fs/zfs/zfsinfo.c:260 -msgid "Pool state: unavailable" -msgstr "Pool state: unavailable" - -#: grub-core/fs/zfs/zfsinfo.c:261 -msgid "Pool state: potentially active" -msgstr "Pool state: potentially active" - -#: grub-core/fs/zfs/zfsinfo.c:306 -msgid "Pool name: unavailable" -msgstr "Pool name: unavailable" - -#: grub-core/fs/zfs/zfsinfo.c:308 -#, c-format -msgid "Pool name: %s\n" -msgstr "Pool name: %s\n" - -#: grub-core/fs/zfs/zfsinfo.c:313 -msgid "Pool GUID: unavailable" -msgstr "Pool GUID: unavailable" - -#: grub-core/fs/zfs/zfsinfo.c:315 -#, c-format -msgid "Pool GUID: %016llx\n" -msgstr "Pool GUID: %016llx\n" - -#: grub-core/fs/zfs/zfsinfo.c:320 -msgid "Unable to retrieve pool state" -msgstr "Unable to retrieve pool state" - -#: grub-core/fs/zfs/zfsinfo.c:322 -msgid "Unrecognized pool state" -msgstr "Unrecognized pool state" - -#. TRANSLATORS: There are undetermined number of virtual devices -#. in a device tree, not just one. -#. -#: grub-core/fs/zfs/zfsinfo.c:332 -msgid "No virtual device tree available" -msgstr "No virtual device tree available" - -#: grub-core/fs/zfs/zfsinfo.c:431 -msgid "Print ZFS info about DEVICE." -msgstr "Print ZFS info about DEVICE." - -#: grub-core/fs/zfs/zfsinfo.c:433 -msgid "FILESYSTEM [VARIABLE]" -msgstr "FILESYSTEM [VARIABLE]" - -#: grub-core/fs/zfs/zfsinfo.c:434 -msgid "Print ZFS-BOOTFSOBJ or store it into VARIABLE" -msgstr "Print ZFS-BOOTFSOBJ or store it into VARIABLE" - -#. TRANSLATORS: at this position GRUB waits for the user to do an action -#. in remote debugger, namely to tell it to establish connection. -#: grub-core/gdb/gdb.c:48 -msgid "Now connect the remote debugger, please." -msgstr "Now connect the remote debugger, please." - -#. TRANSLATORS: GDB stub is a small part of -#. GDB functionality running on local host -#. which allows remote debugger to -#. connect to it. -#: grub-core/gdb/gdb.c:84 -msgid "Start GDB stub on given port" -msgstr "Start GDB stub on given port" - -#. TRANSLATORS: this refers to triggering -#. a breakpoint so that the user will land -#. into GDB. -#: grub-core/gdb/gdb.c:89 -msgid "Break into GDB" -msgstr "Break into GDB" - -#: grub-core/gdb/gdb.c:91 -msgid "Stop GDB stub" -msgstr "Stop GDB stub" - -#: grub-core/gettext/gettext.c:85 -msgid "premature end of file" -msgstr "premature end of file" - -#. TRANSLATORS: It refers to passing the string through gettext. -#. So it's "translate" in the same meaning as in what you're -#. doing now. -#. -#: grub-core/gettext/gettext.c:525 -msgid "Translates the string with the current settings." -msgstr "Translates the string with the current settings." - -#: grub-core/gfxmenu/gui_label.c:186 grub-core/normal/menu_text.c:184 -msgid "" -"Press enter to boot the selected OS, `e' to edit the commands before booting " -"or `c' for a command-line. ESC to return previous menu." -msgstr "" -"Press enter to boot the selected OS, ‘e’ to edit the commands before booting " -"or ‘c’ for a command-line. ESC to return previous menu." - -#: grub-core/gfxmenu/gui_label.c:190 grub-core/normal/menu_text.c:192 -msgid "" -"Press enter to boot the selected OS, `e' to edit the commands before booting " -"or `c' for a command-line." -msgstr "" -"Press enter to boot the selected OS, ‘e’ to edit the commands before booting " -"or ‘c’ for a command-line." - -#: grub-core/gfxmenu/gui_label.c:194 -msgid "enter: boot, `e': options, `c': cmd-line" -msgstr "enter: boot, ‘e’: options, ‘c’: cmd-line" - -#: grub-core/gfxmenu/gui_progress_bar.c:339 grub-core/normal/menu_text.c:446 -#, c-format -msgid "The highlighted entry will be executed automatically in %ds." -msgstr "The highlighted entry will be executed automatically in %ds." - -#. TRANSLATORS: 's' stands for seconds. -#. It's a standalone timeout notification. -#. Please use the short form in your language. -#: grub-core/gfxmenu/gui_progress_bar.c:344 -#, c-format -msgid "%ds remaining." -msgstr "%ds remaining." - -#. TRANSLATORS: 's' stands for seconds. -#. It's a standalone timeout notification. -#. Please use the shortest form available in you language. -#: grub-core/gfxmenu/gui_progress_bar.c:349 grub-core/normal/menu_text.c:444 -#: grub-core/normal/menu_text.c:462 -#, c-format -msgid "%ds" -msgstr "%ds" - -#: grub-core/gfxmenu/view.c:103 -msgid "GRUB Boot Menu" -msgstr "GRUB Boot Menu" - -#: grub-core/hello/hello.c:36 -msgid "Hello World" -msgstr "Hello World" - -#: grub-core/hello/hello.c:45 -msgid "Say `Hello World'." -msgstr "Say ‘Hello World’." - -#: grub-core/io/gzio.c:409 grub-core/kern/file.c:210 -msgid "attempt to seek outside of the file" -msgstr "attempt to seek outside of the file" - -#. TRANSLATORS: It's about given file having some strange format, not -#. complete lack of gzip support. -#: grub-core/io/gzio.c:1228 grub-core/io/gzio.c:1237 grub-core/io/gzio.c:1244 -msgid "unsupported gzip format" -msgstr "unsupported gzip format" - -#: grub-core/io/lzopio.c:511 -msgid "lzop file corrupted" -msgstr "lzop file corrupted" - -#: grub-core/io/xzio.c:278 -msgid "xz file corrupted or unsupported block options" -msgstr "xz file corrupted or unsupported block options" - -#: grub-core/kern/arm/dl.c:277 grub-core/kern/arm64/dl.c:44 -#: grub-core/kern/i386/dl.c:36 grub-core/kern/ia64/dl.c:41 -#: grub-core/kern/mips/dl.c:48 grub-core/kern/powerpc/dl.c:36 -#: grub-core/kern/riscv/dl.c:47 grub-core/kern/sparc64/dl.c:36 -#: grub-core/kern/x86_64/dl.c:36 grub-core/loader/i386/bsd.c:1445 -#: grub-core/loader/i386/bsdXX.c:49 grub-core/loader/ia64/efi/linux.c:341 -#: grub-core/loader/mips/linux.c:298 grub-core/loader/multiboot.c:232 -#: grub-core/loader/multiboot_elfxx.c:73 -#: grub-core/loader/powerpc/ieee1275/linux.c:294 -#: grub-core/loader/sparc64/ieee1275/linux.c:331 -msgid "invalid arch-dependent ELF magic" -msgstr "invalid arch-dependent ELF magic" - -#: grub-core/kern/corecmd.c:178 -msgid "[ENVVAR=VALUE]" -msgstr "[ENVVAR=VALUE]" - -#: grub-core/kern/corecmd.c:179 -msgid "Set an environment variable." -msgstr "Set an environment variable." - -#: grub-core/kern/corecmd.c:183 -msgid "ENVVAR" -msgstr "ENVVAR" - -#: grub-core/kern/corecmd.c:184 -msgid "Remove an environment variable." -msgstr "Remove an environment variable." - -#: grub-core/kern/corecmd.c:186 -msgid "[ARG]" -msgstr "[ARG]" - -#: grub-core/kern/corecmd.c:186 -msgid "List devices or files." -msgstr "List devices or files." - -#: grub-core/kern/corecmd.c:188 -msgid "Insert a module." -msgstr "Insert a module." - -#: grub-core/kern/disk.c:236 grub-core/net/net.c:1390 -#, c-format -msgid "disk `%s' not found" -msgstr "disk ‘%s’ not found" - -#: grub-core/kern/disk_common.c:27 -msgid "attempt to read or write outside of partition" -msgstr "attempt to read or write outside of partition" - -#: grub-core/kern/dl.c:212 grub-core/kern/elf.c:61 grub-core/kern/elf.c:79 -#: grub-core/loader/i386/bsdXX.c:46 grub-core/loader/ia64/efi/linux.c:335 -#: grub-core/loader/multiboot_elfxx.c:69 -msgid "invalid arch-independent ELF magic" -msgstr "invalid arch-independent ELF magic" - -#. TRANSLATORS: it refers to the lack of free slots. -#: grub-core/kern/emu/hostdisk.c:208 grub-core/kern/emu/hostdisk.c:466 -msgid "device count exceeds limit" -msgstr "device count exceeds limit" - -#: grub-core/kern/emu/hostdisk.c:342 util/editenv.c:54 util/grub-editenv.c:197 -#: util/grub-fstest.c:191 util/grub-mkfont.c:796 util/misc.c:114 -#: util/misc.c:129 util/setup.c:788 -#, c-format -msgid "cannot write to `%s': %s" -msgstr "cannot write to ‘%s’: %s" - -#. TRANSLATORS: Only one entry is ignored. However the suggestion -#. is to correct/delete the whole file. -#. device.map is a file indicating which -#. devices are available at boot time. Fedora populated it with -#. entries like (hd0,1) /dev/sda1 which would mean that every -#. partition is a separate disk for BIOS. Such entries were -#. inactive in GRUB due to its bug which is now gone. Without -#. this additional check these entries would be harmful now. -#. -#: grub-core/kern/emu/hostdisk.c:503 -#, c-format -msgid "" -"the device.map entry `%s' is invalid. Ignoring it. Please correct or delete " -"your device.map" -msgstr "" -"the device.map entry ‘%s’ is invalid. Ignoring it. Please correct or delete " -"your device.map" - -#. TRANSLATORS: device.map is a filename. Not to be translated. -#. device.map specifies disk correspondance overrides. Previously -#. one could create any kind of device name with this. Due to -#. some problems we decided to limit it to just a handful -#. possibilities. -#: grub-core/kern/emu/hostdisk.c:555 -#, c-format -msgid "" -"the drive name `%s' in device.map is incorrect. Using %s instead. Please use " -"the form [hfc]d[0-9]* (E.g. `hd0' or `cd')" -msgstr "" -"the drive name ‘%s’ in device.map is incorrect. Using %s instead. Please use " -"the form [hfc]d[0-9]* (E.g. ‘hd0’ or ‘cd’)" - -#: grub-core/kern/emu/hostfs.c:76 grub-core/kern/emu/hostfs.c:109 -#, c-format -msgid "can't open `%s': %s" -msgstr "can't open ‘%s’: %s" - -#: grub-core/kern/emu/main.c:99 util/grub-fstest.c:516 util/grub-mount.c:452 -msgid "DEVICE_NAME" -msgstr "DEVICE_NAME" - -#: grub-core/kern/emu/main.c:99 grub-core/loader/i386/bsd.c:136 -#: grub-core/loader/i386/bsd.c:169 util/grub-fstest.c:516 util/grub-mount.c:452 -msgid "Set root device." -msgstr "Set root device." - -#. TRANSLATORS: There are many devices in device map. -#: grub-core/kern/emu/main.c:102 util/grub-probe.c:733 util/grub-setup.c:85 -#, c-format -msgid "use FILE as the device map [default=%s]" -msgstr "use FILE as the device map [default=%s]" - -#. TRANSLATORS: There are many devices in device map. -#: grub-core/kern/emu/main.c:105 -msgid "use FILE as memdisk" -msgstr "use FILE as memdisk" - -#: grub-core/kern/emu/main.c:107 util/grub-setup.c:83 -#, c-format -msgid "use GRUB files in the directory DIR [default=%s]" -msgstr "use GRUB files in the directory DIR [default=%s]" - -#: grub-core/kern/emu/main.c:108 include/grub/util/install.h:67 -#: util/grub-editenv.c:58 util/grub-fstest.c:525 util/grub-glue-efi.c:58 -#: util/grub-macbless.c:104 util/grub-mkfont.c:962 util/grub-mkimage.c:84 -#: util/grub-mklayout.c:56 util/grub-mount.c:458 util/grub-probe.c:735 -#: util/grub-render-label.c:74 util/grub-script-check.c:52 util/grub-setup.c:90 -#: util/grub-syslinux2cfg.c:78 -msgid "print verbose messages." -msgstr "print verbose messages." - -#: grub-core/kern/emu/main.c:109 grub-core/lib/gnulib/argp-parse.c:85 -msgid "SECS" -msgstr "SECS" - -#: grub-core/kern/emu/main.c:109 -msgid "wait until a debugger will attach" -msgstr "wait until a debugger will attach" - -#: grub-core/kern/emu/main.c:171 util/grub-macbless.c:143 -#: util/grub-mkrelpath.c:61 util/grub-probe.c:874 util/grub-script-check.c:75 -#: util/grub-setup.c:203 -#, c-format -msgid "Unknown extra argument `%s'." -msgstr "Unknown extra argument ‘%s’." - -#: grub-core/kern/emu/main.c:185 -msgid "GRUB emulator." -msgstr "GRUB emulator." - -#: grub-core/kern/emu/main.c:213 util/grub-editenv.c:262 -#: util/grub-glue-efi.c:110 util/grub-macbless.c:173 util/grub-mkfont.c:1177 -#: util/grub-mkimage.c:266 util/grub-mklayout.c:494 -#: util/grub-mkpasswd-pbkdf2.c:132 util/grub-mkrelpath.c:96 -#: util/grub-probe.c:863 util/grub-render-label.c:152 -#: util/grub-script-check.c:160 util/grub-setup.c:262 -#: util/grub-syslinux2cfg.c:163 -msgid "Error in parsing command line arguments\n" -msgstr "Error in parsing command line arguments\n" - -#. TRANSLATORS: In this case GRUB tells user what he has to do. -#: grub-core/kern/emu/main.c:248 -#, c-format -msgid "Run `gdb %s %d', and set ARGS.HOLD to zero.\n" -msgstr "Run ‘gdb %s %d’, and set ARGS.HOLD to zero.\n" - -#: grub-core/kern/emu/misc.c:48 -#, c-format -msgid "%s: warning:" -msgstr "%s: warning:" - -#: grub-core/kern/emu/misc.c:64 -#, c-format -msgid "%s: info:" -msgstr "%s: info:" - -#: grub-core/kern/emu/misc.c:79 util/grub-fstest.c:567 util/grub-fstest.c:576 -#: util/grub-mount.c:497 util/grub-mount.c:505 -#, c-format -msgid "%s: error:" -msgstr "%s: error:" - -#: grub-core/kern/emu/misc.c:176 -#, c-format -msgid "file `%s' is too big" -msgstr "file ‘%s’ is too big" - -#: grub-core/kern/fs.c:120 -msgid "unknown filesystem" -msgstr "unknown filesystem" - -#: grub-core/kern/mips/arc/init.c:273 grub-core/kern/mips/loongson/init.c:301 -msgid "Shutdown failed" -msgstr "Shutdown failed" - -#: grub-core/kern/mips/arc/init.c:285 -msgid "Exit failed" -msgstr "Exit failed" - -#: grub-core/kern/misc.c:351 grub-core/kern/misc.c:408 include/grub/misc.h:269 -#: include/grub/misc.h:278 -msgid "overflow is detected" -msgstr "overflow is detected" - -#: grub-core/kern/partition.c:51 grub-core/partmap/bsdlabel.c:108 -#, c-format -msgid "Discarding improperly nested partition (%s,%s,%s%d)" -msgstr "Discarding improperly nested partition (%s,%s,%s%d)" - -#: grub-core/kern/rescue_parser.c:73 util/grub-editenv.c:292 -#, c-format -msgid "Unknown command `%s'.\n" -msgstr "Unknown command ‘%s’.\n" - -#: grub-core/lib/arg.c:31 -msgid "Display this help and exit." -msgstr "Display this help and exit." - -#: grub-core/lib/arg.c:33 -msgid "Display the usage of this command and exit." -msgstr "Display the usage of this command and exit." - -#: grub-core/lib/arg.c:362 -#, c-format -msgid "missing mandatory option for `%s'" -msgstr "missing mandatory option for ‘%s’" - -#: grub-core/lib/arg.c:384 -#, c-format -msgid "the argument `%s' requires an integer" -msgstr "the argument ‘%s’ requires an integer" - -#: grub-core/lib/arg.c:407 -#, c-format -msgid "" -"a value was assigned to the argument `%s' while it doesn't require an " -"argument" -msgstr "" -"a value was assigned to the argument ‘%s’ while it doesn't require an " -"argument" - -#: grub-core/lib/backtrace.c:64 -msgid "Print backtrace." -msgstr "Print backtrace." - -#: grub-core/lib/gnulib/argp-help.c:149 -#, c-format -msgid "ARGP_HELP_FMT: %s value is less than or equal to %s" -msgstr "ARGP_HELP_FMT: %s value is less than or equal to %s" - -#: grub-core/lib/gnulib/argp-help.c:225 -#, c-format -msgid "%.*s: ARGP_HELP_FMT parameter requires a value" -msgstr "%.*s: ARGP_HELP_FMT parameter requires a value" - -#: grub-core/lib/gnulib/argp-help.c:235 -#, c-format -msgid "%.*s: Unknown ARGP_HELP_FMT parameter" -msgstr "%.*s: Unknown ARGP_HELP_FMT parameter" - -#: grub-core/lib/gnulib/argp-help.c:248 -#, c-format -msgid "Garbage in ARGP_HELP_FMT: %s" -msgstr "Garbage in ARGP_HELP_FMT: %s" - -#: grub-core/lib/gnulib/argp-help.c:1229 -msgid "" -"Mandatory or optional arguments to long options are also mandatory or " -"optional for any corresponding short options." -msgstr "" -"Mandatory or optional arguments to long options are also mandatory or " -"optional for any corresponding short options." - -#: grub-core/lib/gnulib/argp-help.c:1620 -msgid " or: " -msgstr " or: " - -#: grub-core/lib/gnulib/argp-help.c:1632 -msgid " [OPTION...]" -msgstr " [OPTION...]" - -#: grub-core/lib/gnulib/argp-help.c:1659 -#, c-format -msgid "Try '%s --help' or '%s --usage' for more information.\n" -msgstr "Try ‘%s --help’ or ‘%s --usage’ for more information.\n" - -#: grub-core/lib/gnulib/argp-help.c:1687 -#, c-format -msgid "Report bugs to %s.\n" -msgstr "Report bugs to %s.\n" - -#: grub-core/lib/gnulib/argp-help.c:1888 grub-core/lib/gnulib/error.c:195 -msgid "Unknown system error" -msgstr "Unknown system error" - -#: grub-core/lib/gnulib/argp-parse.c:81 -msgid "give this help list" -msgstr "give this help list" - -#: grub-core/lib/gnulib/argp-parse.c:82 -msgid "give a short usage message" -msgstr "give a short usage message" - -#: grub-core/lib/gnulib/argp-parse.c:83 util/grub-mkfont.c:946 -msgid "NAME" -msgstr "NAME" - -#: grub-core/lib/gnulib/argp-parse.c:84 -msgid "set the program name" -msgstr "set the program name" - -#: grub-core/lib/gnulib/argp-parse.c:86 -msgid "hang for SECS seconds (default 3600)" -msgstr "hang for SECS seconds (default 3600)" - -#: grub-core/lib/gnulib/argp-parse.c:143 -msgid "print program version" -msgstr "print program version" - -#: grub-core/lib/gnulib/argp-parse.c:160 -msgid "(PROGRAM ERROR) No version known!?" -msgstr "(PROGRAM ERROR) No version known!?" - -#: grub-core/lib/gnulib/argp-parse.c:613 -#, c-format -msgid "%s: Too many arguments\n" -msgstr "%s: Too many arguments\n" - -#: grub-core/lib/gnulib/argp-parse.c:759 -msgid "(PROGRAM ERROR) Option should have been recognized!?" -msgstr "(PROGRAM ERROR) Option should have been recognized!?" - -#: grub-core/lib/gnulib/getopt.c:278 -#, c-format -msgid "%s: option '%s%s' is ambiguous\n" -msgstr "%s: option ‘%s%s’ is ambiguous\n" - -#: grub-core/lib/gnulib/getopt.c:284 -#, c-format -msgid "%s: option '%s%s' is ambiguous; possibilities:" -msgstr "%s: option ‘%s%s’ is ambiguous; possibilities:" - -#: grub-core/lib/gnulib/getopt.c:319 -#, c-format -msgid "%s: unrecognized option '%s%s'\n" -msgstr "%s: unrecognized option ‘%s%s’\n" - -#: grub-core/lib/gnulib/getopt.c:345 -#, c-format -msgid "%s: option '%s%s' doesn't allow an argument\n" -msgstr "%s: option ‘%s%s’ doesn't allow an argument\n" - -#: grub-core/lib/gnulib/getopt.c:360 -#, c-format -msgid "%s: option '%s%s' requires an argument\n" -msgstr "%s: option ‘%s%s’ requires an argument\n" - -#: grub-core/lib/gnulib/getopt.c:621 -#, c-format -msgid "%s: invalid option -- '%c'\n" -msgstr "%s: invalid option -- ‘%c’\n" - -#: grub-core/lib/gnulib/getopt.c:636 grub-core/lib/gnulib/getopt.c:682 -#, c-format -msgid "%s: option requires an argument -- '%c'\n" -msgstr "%s: option requires an argument -- ‘%c’\n" - -#: grub-core/lib/gnulib/openat-die.c:38 -#, c-format -msgid "unable to record current working directory" -msgstr "unable to record current working directory" - -#: grub-core/lib/gnulib/openat-die.c:57 -#, c-format -msgid "failed to return to initial working directory" -msgstr "failed to return to initial working directory" - -#: grub-core/lib/gnulib/regcomp.c:135 grub-core/osdep/aros/hostdisk.c:523 -msgid "Success" -msgstr "Success" - -#: grub-core/lib/gnulib/regcomp.c:138 -msgid "No match" -msgstr "No match" - -#: grub-core/lib/gnulib/regcomp.c:141 -msgid "Invalid regular expression" -msgstr "Invalid regular expression" - -#: grub-core/lib/gnulib/regcomp.c:144 -msgid "Invalid collation character" -msgstr "Invalid collation character" - -#: grub-core/lib/gnulib/regcomp.c:147 -msgid "Invalid character class name" -msgstr "Invalid character class name" - -#: grub-core/lib/gnulib/regcomp.c:150 -msgid "Trailing backslash" -msgstr "Trailing backslash" - -#: grub-core/lib/gnulib/regcomp.c:153 -msgid "Invalid back reference" -msgstr "Invalid back reference" - -#: grub-core/lib/gnulib/regcomp.c:156 -msgid "Unmatched [, [^, [:, [., or [=" -msgstr "Unmatched [, [^, [:, [., or [=" - -#: grub-core/lib/gnulib/regcomp.c:159 -msgid "Unmatched ( or \\(" -msgstr "Unmatched ( or \\(" - -#: grub-core/lib/gnulib/regcomp.c:162 -msgid "Unmatched \\{" -msgstr "Unmatched \\{" - -#: grub-core/lib/gnulib/regcomp.c:165 -msgid "Invalid content of \\{\\}" -msgstr "Invalid content of \\{\\}" - -#: grub-core/lib/gnulib/regcomp.c:168 -msgid "Invalid range end" -msgstr "Invalid range end" - -#: grub-core/lib/gnulib/regcomp.c:171 -msgid "Memory exhausted" -msgstr "Memory exhausted" - -#: grub-core/lib/gnulib/regcomp.c:174 -msgid "Invalid preceding regular expression" -msgstr "Invalid preceding regular expression" - -#: grub-core/lib/gnulib/regcomp.c:177 -msgid "Premature end of regular expression" -msgstr "Premature end of regular expression" - -#: grub-core/lib/gnulib/regcomp.c:180 -msgid "Regular expression too big" -msgstr "Regular expression too big" - -#: grub-core/lib/gnulib/regcomp.c:183 -msgid "Unmatched ) or \\)" -msgstr "Unmatched ) or \\)" - -#: grub-core/lib/gnulib/regcomp.c:531 -msgid "unknown regexp error" -msgstr "unknown regexp error" - -#: grub-core/lib/gnulib/regcomp.c:676 -msgid "No previous regular expression" -msgstr "No previous regular expression" - -#: grub-core/lib/i386/halt.c:77 -msgid "GRUB doesn't know how to halt this machine yet!" -msgstr "GRUB doesn't know how to halt this machine yet!" - -#: grub-core/lib/legacy_parse.c:75 -msgid "Default server is ${net_default_server}" -msgstr "Default server is ${net_default_server}" - -#: grub-core/lib/legacy_parse.c:844 grub-core/video/colors.c:296 -#: grub-core/video/colors.c:305 grub-core/video/colors.c:311 -#: grub-core/video/colors.c:327 util/render-label.c:84 util/render-label.c:98 -#, c-format -msgid "invalid color specification `%s'" -msgstr "invalid color specification ‘%s’" - -#: grub-core/lib/mips/arc/reboot.c:32 grub-core/lib/mips/loongson/reboot.c:61 -msgid "Reboot failed" -msgstr "Reboot failed" - -#: grub-core/lib/random.c:113 -msgid "[LENGTH]" -msgstr "[LENGTH]" - -#: grub-core/lib/random.c:114 -msgid "Hexdump random data." -msgstr "Hexdump random data." - -#: grub-core/loader/arm/linux.c:242 -msgid "device tree must be supplied (see `devicetree' command)" -msgstr "device tree must be supplied (see ‘devicetree’ command)" - -#: grub-core/loader/arm/linux.c:334 -msgid "invalid zImage" -msgstr "invalid zImage" - -#: grub-core/loader/arm/linux.c:450 grub-core/loader/efi/fdt.c:144 -msgid "invalid device tree" -msgstr "invalid device tree" - -#: grub-core/loader/arm/linux.c:493 grub-core/loader/arm64/linux.c:383 -#: grub-core/loader/i386/linux.c:1125 grub-core/loader/i386/pc/linux.c:479 -#: grub-core/loader/i386/xen.c:962 grub-core/loader/i386/xen.c:964 -#: grub-core/loader/ia64/efi/linux.c:591 grub-core/loader/mips/linux.c:501 -#: grub-core/loader/powerpc/ieee1275/linux.c:383 -#: grub-core/loader/riscv/linux.c:50 -#: grub-core/loader/sparc64/ieee1275/linux.c:511 -msgid "Load Linux." -msgstr "Load Linux." - -#: grub-core/loader/arm/linux.c:495 grub-core/loader/arm64/linux.c:385 -#: grub-core/loader/i386/linux.c:1127 grub-core/loader/i386/pc/linux.c:482 -#: grub-core/loader/i386/xen.c:966 grub-core/loader/ia64/efi/linux.c:594 -#: grub-core/loader/mips/linux.c:503 -#: grub-core/loader/powerpc/ieee1275/linux.c:385 -#: grub-core/loader/riscv/linux.c:52 -#: grub-core/loader/sparc64/ieee1275/linux.c:513 -msgid "Load initrd." -msgstr "Load initrd." - -#. TRANSLATORS: DTB stands for device tree blob. -#: grub-core/loader/arm/linux.c:498 grub-core/loader/efi/fdt.c:169 -msgid "Load DTB file." -msgstr "Load DTB file." - -#: grub-core/loader/arm64/linux.c:59 -msgid "" -"plain image kernel not supported - rebuild with CONFIG_(U)EFI_STUB enabled" -msgstr "" -"plain image kernel not supported - rebuild with CONFIG_(U)EFI_STUB enabled" - -#: grub-core/loader/arm64/xen_boot.c:156 -msgid "failed to get FDT" -msgstr "failed to get FDT" - -#: grub-core/loader/arm64/xen_boot.c:418 -msgid "you need to load the Xen Hypervisor first" -msgstr "you need to load the Xen Hypervisor first" - -#: grub-core/loader/arm64/xen_boot.c:516 -msgid "Load a xen hypervisor." -msgstr "Load a xen hypervisor." - -#: grub-core/loader/arm64/xen_boot.c:519 -msgid "Load a xen module." -msgstr "Load a xen module." - -#: grub-core/loader/efi/appleloader.c:231 -msgid "[OPTS]" -msgstr "[OPTS]" - -#. TRANSLATORS: This command is used on EFI to -#. switch to BIOS mode and boot the OS requiring -#. BIOS. -#: grub-core/loader/efi/appleloader.c:235 -msgid "Boot BIOS-based system." -msgstr "Boot BIOS-based system." - -#: grub-core/loader/efi/chainloader.c:421 -#: grub-core/loader/i386/pc/chainloader.c:303 -msgid "Load another boot loader." -msgstr "Load another boot loader." - -#: grub-core/loader/i386/bsd.c:103 -msgid "Display output on all consoles." -msgstr "Display output on all consoles." - -#: grub-core/loader/i386/bsd.c:104 grub-core/loader/i386/bsd.c:138 -#: grub-core/loader/i386/bsd.c:171 -msgid "Use serial console." -msgstr "Use serial console." - -#: grub-core/loader/i386/bsd.c:105 grub-core/loader/i386/bsd.c:131 -#: grub-core/loader/i386/bsd.c:159 -msgid "Ask for file name to reboot from." -msgstr "Ask for file name to reboot from." - -#: grub-core/loader/i386/bsd.c:106 -msgid "Use CD-ROM as root." -msgstr "Use CD-ROM as root." - -#: grub-core/loader/i386/bsd.c:107 -msgid "Invoke user configuration routing." -msgstr "Invoke user configuration routing." - -#: grub-core/loader/i386/bsd.c:108 grub-core/loader/i386/bsd.c:135 -#: grub-core/loader/i386/bsd.c:162 -msgid "Enter in KDB on boot." -msgstr "Enter in KDB on boot." - -#: grub-core/loader/i386/bsd.c:109 -msgid "Use GDB remote debugger instead of DDB." -msgstr "Use GDB remote debugger instead of DDB." - -#: grub-core/loader/i386/bsd.c:110 -msgid "Disable all boot output." -msgstr "Disable all boot output." - -#: grub-core/loader/i386/bsd.c:112 -msgid "Wait for keypress after every line of output." -msgstr "Wait for keypress after every line of output." - -#: grub-core/loader/i386/bsd.c:114 -msgid "Use compiled-in root device." -msgstr "Use compiled-in root device." - -#: grub-core/loader/i386/bsd.c:115 grub-core/loader/i386/bsd.c:134 -#: grub-core/loader/i386/bsd.c:165 -msgid "Boot into single mode." -msgstr "Boot into single mode." - -#: grub-core/loader/i386/bsd.c:116 grub-core/loader/i386/bsd.c:166 -msgid "Boot with verbose messages." -msgstr "Boot with verbose messages." - -#: grub-core/loader/i386/bsd.c:132 grub-core/loader/i386/bsd.c:160 -msgid "Don't reboot, just halt." -msgstr "Don't reboot, just halt." - -#: grub-core/loader/i386/bsd.c:133 grub-core/loader/i386/bsd.c:161 -msgid "Change configured devices." -msgstr "Change configured devices." - -#. TRANSLATORS: "com" is static and not to be translated. It refers to -#. serial ports e.g. com1. -#. -#: grub-core/loader/i386/bsd.c:142 -msgid "comUNIT[,SPEED]" -msgstr "comUNIT[,SPEED]" - -#: grub-core/loader/i386/bsd.c:157 -msgid "Disable SMP." -msgstr "Disable SMP." - -#: grub-core/loader/i386/bsd.c:158 -msgid "Disable ACPI." -msgstr "Disable ACPI." - -#: grub-core/loader/i386/bsd.c:164 -msgid "Don't display boot diagnostic messages." -msgstr "Don't display boot diagnostic messages." - -#: grub-core/loader/i386/bsd.c:167 -msgid "Boot with debug messages." -msgstr "Boot with debug messages." - -#: grub-core/loader/i386/bsd.c:168 -msgid "Suppress normal output (warnings remain)." -msgstr "Suppress normal output (warnings remain)." - -#. TRANSLATORS: "com" is static and not to be translated. It refers to -#. serial ports e.g. com1. -#. -#: grub-core/loader/i386/bsd.c:175 -msgid "[ADDR|comUNIT][,SPEED]" -msgstr "[ADDR|comUNIT][,SPEED]" - -#: grub-core/loader/i386/bsd.c:489 grub-core/loader/i386/bsd.c:555 -msgid "name" -msgstr "name" - -#: grub-core/loader/i386/bsd.c:489 grub-core/loader/i386/bsd.c:555 -msgid "type" -msgstr "type" - -#: grub-core/loader/i386/bsd.c:489 grub-core/loader/i386/bsd.c:555 -msgid "addr" -msgstr "addr" - -#: grub-core/loader/i386/bsd.c:490 grub-core/loader/i386/bsd.c:556 -msgid "size" -msgstr "size" - -#: grub-core/loader/i386/bsd.c:1147 grub-core/loader/i386/linux.c:466 -#: grub-core/loader/i386/xnu.c:1030 -msgid "Booting in blind mode" -msgstr "Booting in blind mode" - -#: grub-core/loader/i386/bsd.c:2137 -msgid "Load kernel of FreeBSD." -msgstr "Load kernel of FreeBSD." - -#: grub-core/loader/i386/bsd.c:2140 -msgid "Load kernel of OpenBSD." -msgstr "Load kernel of OpenBSD." - -#: grub-core/loader/i386/bsd.c:2143 -msgid "Load kernel of NetBSD." -msgstr "Load kernel of NetBSD." - -#: grub-core/loader/i386/bsd.c:2147 -msgid "Load FreeBSD env." -msgstr "Load FreeBSD env." - -#: grub-core/loader/i386/bsd.c:2150 -msgid "Load FreeBSD kernel module." -msgstr "Load FreeBSD kernel module." - -#: grub-core/loader/i386/bsd.c:2153 -msgid "Load NetBSD kernel module." -msgstr "Load NetBSD kernel module." - -#: grub-core/loader/i386/bsd.c:2156 -msgid "Load NetBSD kernel module (ELF)." -msgstr "Load NetBSD kernel module (ELF)." - -#: grub-core/loader/i386/bsd.c:2159 -msgid "Load FreeBSD kernel module (ELF)." -msgstr "Load FreeBSD kernel module (ELF)." - -#. TRANSLATORS: ramdisk isn't identifier, -#. it can be translated. -#: grub-core/loader/i386/bsd.c:2165 -msgid "Load kOpenBSD ramdisk." -msgstr "Load kOpenBSD ramdisk." - -#. TRANSLATORS: "payload" is a term used -#. by coreboot and must be translated in -#. sync with coreboot. If unsure, -#. let it untranslated. -#: grub-core/loader/i386/coreboot/chainloader.c:510 -msgid "Load another coreboot payload" -msgstr "Load another coreboot payload" - -#: grub-core/loader/i386/linux.c:876 -msgid "Legacy `ask' parameter no longer supported." -msgstr "Legacy ‘ask’ parameter no longer supported." - -#: grub-core/loader/i386/linux.c:892 grub-core/loader/i386/linux.c:902 -#: grub-core/loader/i386/linux.c:932 -#, c-format -msgid "%s is deprecated. Use set gfxpayload=%s before linux command instead.\n" -msgstr "" -"%s is deprecated. Use set gfxpayload=%s before linux command instead.\n" - -#. TRANSLATORS: "x" has to be entered in, like an identifier, -#. so please don't use better Unicode codepoints. -#: grub-core/loader/i386/linux.c:915 -#, c-format -msgid "" -"%s is deprecated. VGA mode %d isn't recognized. Use set " -"gfxpayload=WIDTHxHEIGHT[xDEPTH] before linux command instead.\n" -msgstr "" -"%s is deprecated. VGA mode %d isn't recognized. Use set " -"gfxpayload=WIDTHxHEIGHT[xDEPTH] before linux command instead.\n" - -#: grub-core/loader/i386/pc/chainloader.c:302 -msgid "[--force|--bpb] FILE" -msgstr "[--force|--bpb] FILE" - -#: grub-core/loader/i386/pc/freedos.c:148 util/setup.c:293 -#, c-format -msgid "the size of `%s' is too large" -msgstr "the size of ‘%s’ is too large" - -#: grub-core/loader/i386/pc/freedos.c:183 -msgid "Load FreeDOS kernel.sys." -msgstr "Load FreeDOS kernel.sys." - -#: grub-core/loader/i386/pc/ntldr.c:155 -msgid "Load NTLDR or BootMGR." -msgstr "Load NTLDR or BootMGR." - -#. TRANSLATORS: it's about guessing which GRUB disk -#. is which Plan9 disk. If your language has no -#. word "mapping" you can use another word which -#. means that the GRUBDEVICE and PLAN9DEVICE are -#. actually the same device, just named differently -#. in OS and GRUB. -#: grub-core/loader/i386/pc/plan9.c:59 -msgid "Override guessed mapping of Plan9 devices." -msgstr "Override guessed mapping of Plan9 devices." - -#: grub-core/loader/i386/pc/plan9.c:60 -msgid "GRUBDEVICE=PLAN9DEVICE" -msgstr "GRUBDEVICE=PLAN9DEVICE" - -#: grub-core/loader/i386/pc/plan9.c:599 -msgid "KERNEL ARGS" -msgstr "KERNEL ARGS" - -#: grub-core/loader/i386/pc/plan9.c:599 -msgid "Load Plan9 kernel." -msgstr "Load Plan9 kernel." - -#: grub-core/loader/i386/pc/pxechainloader.c:161 -msgid "Load a PXE image." -msgstr "Load a PXE image." - -#: grub-core/loader/i386/pc/truecrypt.c:226 -msgid "Load Truecrypt ISO." -msgstr "Load Truecrypt ISO." - -#: grub-core/loader/i386/xen.c:781 grub-core/loader/i386/xen.c:865 -msgid "initrd already loaded" -msgstr "initrd already loaded" - -#: grub-core/loader/i386/xen.c:968 -msgid "Load module." -msgstr "Load module." - -#: grub-core/loader/i386/xnu.c:1003 -msgid "Press any key to launch xnu" -msgstr "Press any key to launch xnu" - -#. TRANSLATORS: `device-properties' -#. is a variable name, -#. not a program. -#: grub-core/loader/i386/xnu.c:1159 -msgid "Load `device-properties' dump." -msgstr "Load ‘device-properties’ dump." - -#: grub-core/loader/ia64/efi/linux.c:124 -msgid "Could not locate FPSWA driver" -msgstr "Could not locate FPSWA driver" - -#: grub-core/loader/ia64/efi/linux.c:132 -msgid "FPSWA protocol wasn't able to find the interface" -msgstr "FPSWA protocol wasn't able to find the interface" - -#: grub-core/loader/ia64/efi/linux.c:580 -msgid "No FPSWA found" -msgstr "No FPSWA found" - -#: grub-core/loader/ia64/efi/linux.c:582 -#, c-format -msgid "FPSWA revision: %x\n" -msgstr "FPSWA revision: %x\n" - -#: grub-core/loader/ia64/efi/linux.c:591 -msgid "FILE [ARGS...]" -msgstr "FILE [ARGS...]" - -#: grub-core/loader/ia64/efi/linux.c:597 -msgid "Display FPSWA version." -msgstr "Display FPSWA version." - -#: grub-core/loader/multiboot.c:248 -msgid "WARNING: no console will be available to OS" -msgstr "WARNING: no console will be available to OS" - -#: grub-core/loader/multiboot.c:450 -msgid "Load a multiboot 2 kernel." -msgstr "Load a multiboot 2 kernel." - -#: grub-core/loader/multiboot.c:453 -msgid "Load a multiboot 2 module." -msgstr "Load a multiboot 2 module." - -#: grub-core/loader/multiboot.c:456 -msgid "Load a multiboot kernel." -msgstr "Load a multiboot kernel." - -#: grub-core/loader/multiboot.c:459 -msgid "Load a multiboot module." -msgstr "Load a multiboot module." - -#: grub-core/loader/riscv/linux.c:30 grub-core/loader/riscv/linux.c:40 -msgid "Linux not supported yet" -msgstr "Linux not supported yet" - -#: grub-core/loader/xnu.c:1416 grub-core/term/gfxterm_background.c:45 -msgid "Background image mode." -msgstr "Background image mode." - -#. TRANSLATORS: This refers to background image mode (stretched or -#. in left-top corner). Note that GRUB will accept only original -#. keywords stretch and normal, not the translated ones. -#. So please put both in translation -#. e.g. stretch(=%STRETCH%)|normal(=%NORMAL%). -#. The percents mark the translated version. Since many people -#. may not know the word stretch or normal I recommend -#. putting the translation either here or in "Background image mode." -#. string. -#: grub-core/loader/xnu.c:1416 grub-core/term/gfxterm_background.c:55 -msgid "stretch|normal" -msgstr "stretch|normal" - -#: grub-core/loader/xnu.c:1482 -msgid "Load XNU image." -msgstr "Load XNU image." - -#: grub-core/loader/xnu.c:1484 -msgid "Load 64-bit XNU image." -msgstr "Load 64-bit XNU image." - -#: grub-core/loader/xnu.c:1486 -msgid "Load XNU extension package." -msgstr "Load XNU extension package." - -#: grub-core/loader/xnu.c:1488 -msgid "Load XNU extension." -msgstr "Load XNU extension." - -#. TRANSLATORS: OSBundleRequired is a -#. variable name in xnu extensions -#. manifests. It behaves mostly like -#. GNU/Linux runlevels. -#. -#: grub-core/loader/xnu.c:1495 -msgid "DIRECTORY [OSBundleRequired]" -msgstr "DIRECTORY [OSBundleRequired]" - -#. TRANSLATORS: There are many extensions -#. in extension directory. -#: grub-core/loader/xnu.c:1498 -msgid "Load XNU extension directory." -msgstr "Load XNU extension directory." - -#. TRANSLATORS: ramdisk here isn't identifier. It can be translated. -#: grub-core/loader/xnu.c:1501 -msgid "Load XNU ramdisk. It will be available in OS as md0." -msgstr "Load XNU ramdisk. It will be available in OS as md0." - -#: grub-core/loader/xnu.c:1505 -msgid "Load a splash image for XNU." -msgstr "Load a splash image for XNU." - -#: grub-core/loader/xnu.c:1510 -msgid "Load an image of hibernated XNU." -msgstr "Load an image of hibernated XNU." - -#: grub-core/mmap/mmap.c:538 -msgid "ADDR1,MASK1[,ADDR2,MASK2[,...]]" -msgstr "ADDR1,MASK1[,ADDR2,MASK2[,...]]" - -#: grub-core/mmap/mmap.c:539 -msgid "Declare memory regions as faulty (badram)." -msgstr "Declare memory regions as faulty (badram)." - -#: grub-core/mmap/mmap.c:541 -msgid "FROM[K|M|G] TO[K|M|G]" -msgstr "FROM[K|M|G] TO[K|M|G]" - -#: grub-core/mmap/mmap.c:542 -msgid "Remove any memory regions in specified range." -msgstr "Remove any memory regions in specified range." - -#: grub-core/net/bootp.c:653 -msgid "four arguments expected" -msgstr "four arguments expected" - -#: grub-core/net/bootp.c:661 grub-core/net/net.c:1155 -#, c-format -msgid "unrecognised network interface `%s'" -msgstr "unrecognised network interface ‘%s’" - -#: grub-core/net/bootp.c:664 -msgid "no DHCP info found" -msgstr "no DHCP info found" - -#: grub-core/net/bootp.c:674 -msgid "no DHCP options found" -msgstr "no DHCP options found" - -#: grub-core/net/bootp.c:682 -msgid "invalid DHCP option code" -msgstr "invalid DHCP option code" - -#: grub-core/net/bootp.c:686 -#, c-format -msgid "no DHCP option %u found" -msgstr "no DHCP option %u found" - -#: grub-core/net/bootp.c:743 -#, c-format -msgid "unrecognised DHCP option format specification `%s'" -msgstr "unrecognised DHCP option format specification ‘%s’" - -#: grub-core/net/bootp.c:767 -msgid "no network card found" -msgstr "no network card found" - -#: grub-core/net/bootp.c:859 grub-core/net/net.c:389 -#, c-format -msgid "couldn't autoconfigure %s" -msgstr "couldn't autoconfigure %s" - -#: grub-core/net/bootp.c:873 grub-core/net/bootp.c:876 -msgid "[CARD]" -msgstr "[CARD]" - -#: grub-core/net/bootp.c:874 -msgid "perform a bootp autoconfiguration" -msgstr "perform a bootp autoconfiguration" - -#: grub-core/net/bootp.c:877 -msgid "perform a DHCP autoconfiguration" -msgstr "perform a DHCP autoconfiguration" - -#: grub-core/net/bootp.c:879 -msgid "VAR INTERFACE NUMBER DESCRIPTION" -msgstr "VAR INTERFACE NUMBER DESCRIPTION" - -#: grub-core/net/bootp.c:880 -msgid "" -"retrieve DHCP option and save it into VAR. If VAR is - then print the value." -msgstr "" -"retrieve DHCP option and save it into VAR. If VAR is - then print the value." - -#: grub-core/net/dns.c:459 -msgid "no DNS servers configured" -msgstr "no DNS servers configured" - -#: grub-core/net/dns.c:522 -msgid "domain name component is too long" -msgstr "domain name component is too long" - -#: grub-core/net/dns.c:618 grub-core/net/dns.c:666 -msgid "no DNS record found" -msgstr "no DNS record found" - -#: grub-core/net/dns.c:626 -msgid "no DNS reply received" -msgstr "no DNS reply received" - -#: grub-core/net/dns.c:682 -msgid "only ipv4" -msgstr "only ipv4" - -#: grub-core/net/dns.c:686 -msgid "only ipv6" -msgstr "only ipv6" - -#: grub-core/net/dns.c:690 -msgid "prefer ipv4" -msgstr "prefer ipv4" - -#: grub-core/net/dns.c:694 -msgid "prefer ipv6" -msgstr "prefer ipv6" - -#: grub-core/net/dns.c:759 -msgid "ADDRESS DNSSERVER" -msgstr "ADDRESS DNSSERVER" - -#: grub-core/net/dns.c:760 -msgid "Perform a DNS lookup" -msgstr "Perform a DNS lookup" - -#: grub-core/net/dns.c:762 grub-core/net/dns.c:765 -msgid "DNSSERVER" -msgstr "DNSSERVER" - -#: grub-core/net/dns.c:763 -msgid "Add a DNS server" -msgstr "Add a DNS server" - -#: grub-core/net/dns.c:766 -msgid "Remove a DNS server" -msgstr "Remove a DNS server" - -#: grub-core/net/dns.c:768 -msgid "List DNS servers" -msgstr "List DNS servers" - -#: grub-core/net/drivers/efi/efinet.c:49 grub-core/net/drivers/efi/efinet.c:65 -#: grub-core/net/drivers/efi/efinet.c:77 grub-core/net/drivers/emu/emunet.c:62 -#: grub-core/net/drivers/i386/pc/pxe.c:273 -#: grub-core/net/drivers/ieee1275/ofnet.c:75 -#: grub-core/net/drivers/uboot/ubootnet.c:62 -msgid "couldn't send network packet" -msgstr "couldn't send network packet" - -#: grub-core/net/drivers/ieee1275/ofnet.c:326 -#: grub-core/net/drivers/ieee1275/ofnet.c:359 -msgid "interpret is not supported" -msgstr "interpret is not supported" - -#: grub-core/net/drivers/ieee1275/ofnet.c:336 -msgid "alloc-mem failed" -msgstr "alloc-mem failed" - -#: grub-core/net/drivers/ieee1275/ofnet.c:370 -msgid "free-mem failed" -msgstr "free-mem failed" - -#: grub-core/net/http.c:105 -msgid "unsupported HTTP response" -msgstr "unsupported HTTP response" - -#. TRANSLATORS: GRUB HTTP code is pretty young. So even perfectly -#. valid answers like 403 will trigger this very generic message. -#: grub-core/net/http.c:126 -#, c-format -msgid "unsupported HTTP error %d: %s" -msgstr "unsupported HTTP error %d: %s" - -#: grub-core/net/http.c:429 grub-core/net/tftp.c:420 -#, c-format -msgid "time out opening `%s'" -msgstr "time out opening ‘%s’" - -#: grub-core/net/net.c:179 -msgid "timeout: could not resolve hardware address" -msgstr "timeout: could not resolve hardware address" - -#: grub-core/net/net.c:548 -#, c-format -msgid "unresolvable address %s" -msgstr "unresolvable address %s" - -#: grub-core/net/net.c:594 -#, c-format -msgid "unrecognised network address `%s'" -msgstr "unrecognised network address ‘%s’" - -#: grub-core/net/net.c:661 -msgid "destination unreachable" -msgstr "destination unreachable" - -#. TRANSLATORS: route loop is a condition when e.g. -#. to contact server A you need to go through B -#. and to contact B you need to go through A. -#: grub-core/net/net.c:684 -msgid "route loop detected" -msgstr "route loop detected" - -#: grub-core/net/net.c:700 -msgid "address not found" -msgstr "address not found" - -#: grub-core/net/net.c:704 -msgid "you can't delete this address" -msgstr "you can't delete this address" - -#: grub-core/net/net.c:776 grub-core/net/net.c:792 -#, c-format -msgid "Unsupported hw address type %d\n" -msgstr "Unsupported hw address type %d\n" - -#: grub-core/net/net.c:813 -#, c-format -msgid "Unsupported address type %d\n" -msgstr "Unsupported address type %d\n" - -#: grub-core/net/net.c:1017 grub-core/net/net.c:1131 -msgid "three arguments expected" -msgstr "three arguments expected" - -#: grub-core/net/net.c:1023 -msgid "card not found" -msgstr "card not found" - -#. TRANSLATORS: it refers to the network address. -#: grub-core/net/net.c:1167 -msgid "temporary" -msgstr "temporary" - -#: grub-core/net/net.c:1190 -#, c-format -msgid "Unknown address type %d\n" -msgstr "Unknown address type %d\n" - -#: grub-core/net/net.c:1298 -msgid "no server is specified" -msgstr "no server is specified" - -#: grub-core/net/net.c:1637 -#, c-format -msgid "timeout reading `%s'" -msgstr "timeout reading ‘%s’" - -#. TRANSLATORS: HWADDRESS stands for -#. "hardware address". -#: grub-core/net/net.c:1762 -msgid "SHORTNAME CARD ADDRESS [HWADDRESS]" -msgstr "SHORTNAME CARD ADDRESS [HWADDRESS]" - -#: grub-core/net/net.c:1763 -msgid "Add a network address." -msgstr "Add a network address." - -#: grub-core/net/net.c:1766 -msgid "[CARD [HWADDRESS]]" -msgstr "[CARD [HWADDRESS]]" - -#: grub-core/net/net.c:1767 -msgid "Perform an IPV6 autoconfiguration" -msgstr "Perform an IPV6 autoconfiguration" - -#: grub-core/net/net.c:1770 grub-core/net/net.c:1777 -msgid "SHORTNAME" -msgstr "SHORTNAME" - -#: grub-core/net/net.c:1771 -msgid "Delete a network address." -msgstr "Delete a network address." - -#. TRANSLATORS: "gw" is a keyword. -#: grub-core/net/net.c:1774 -msgid "SHORTNAME NET [INTERFACE| gw GATEWAY]" -msgstr "SHORTNAME NET [INTERFACE| gw GATEWAY]" - -#: grub-core/net/net.c:1775 -msgid "Add a network route." -msgstr "Add a network route." - -#: grub-core/net/net.c:1778 -msgid "Delete a network route." -msgstr "Delete a network route." - -#: grub-core/net/net.c:1780 -msgid "list network routes" -msgstr "list network routes" - -#: grub-core/net/net.c:1782 -msgid "list network cards" -msgstr "list network cards" - -#: grub-core/net/net.c:1784 -msgid "list network addresses" -msgstr "list network addresses" - -#: grub-core/net/tcp.c:681 -msgid "connection refused" -msgstr "connection refused" - -#: grub-core/net/tcp.c:684 -msgid "connection timeout" -msgstr "connection timeout" - -#: grub-core/normal/auth.c:220 -msgid "Enter username: " -msgstr "Enter username: " - -#: grub-core/normal/auth.c:269 -msgid "[USERLIST]" -msgstr "[USERLIST]" - -#: grub-core/normal/auth.c:270 -msgid "Check whether user is in USERLIST." -msgstr "Check whether user is in USERLIST." - -#: grub-core/normal/cmdline.c:174 grub-core/normal/menu_entry.c:1068 -msgid "Possible commands are:" -msgstr "Possible commands are:" - -#: grub-core/normal/cmdline.c:177 grub-core/normal/menu_entry.c:1072 -msgid "Possible devices are:" -msgstr "Possible devices are:" - -#: grub-core/normal/cmdline.c:180 grub-core/normal/menu_entry.c:1076 -msgid "Possible files are:" -msgstr "Possible files are:" - -#: grub-core/normal/cmdline.c:183 grub-core/normal/menu_entry.c:1080 -msgid "Possible partitions are:" -msgstr "Possible partitions are:" - -#: grub-core/normal/cmdline.c:186 grub-core/normal/menu_entry.c:1084 -msgid "Possible arguments are:" -msgstr "Possible arguments are:" - -#. TRANSLATORS: this message is used if none of above matches. -#. This shouldn't happen but please use the general term for -#. "thing" or "object". -#: grub-core/normal/cmdline.c:192 grub-core/normal/menu_entry.c:1088 -msgid "Possible things are:" -msgstr "Possible things are:" - -#: grub-core/normal/color.c:81 -#, c-format -msgid "Warning: syntax error (missing slash) in `%s'\n" -msgstr "Warning: syntax error (missing slash) in ‘%s’\n" - -#: grub-core/normal/color.c:90 -#, c-format -msgid "Warning: invalid foreground color `%s'\n" -msgstr "Warning: invalid foreground color ‘%s’\n" - -#: grub-core/normal/color.c:96 -#, c-format -msgid "Warning: invalid background color `%s'\n" -msgstr "Warning: invalid background color ‘%s’\n" - -#: grub-core/normal/context.c:206 -msgid "ENVVAR [ENVVAR] ..." -msgstr "ENVVAR [ENVVAR] ..." - -#: grub-core/normal/context.c:207 -msgid "Export variables." -msgstr "Export variables." - -#: grub-core/normal/datetime.c:25 -msgid "Sunday" -msgstr "Sunday" - -#: grub-core/normal/datetime.c:26 -msgid "Monday" -msgstr "Monday" - -#: grub-core/normal/datetime.c:27 -msgid "Tuesday" -msgstr "Tuesday" - -#: grub-core/normal/datetime.c:28 -msgid "Wednesday" -msgstr "Wednesday" - -#: grub-core/normal/datetime.c:29 -msgid "Thursday" -msgstr "Thursday" - -#: grub-core/normal/datetime.c:30 -msgid "Friday" -msgstr "Friday" - -#: grub-core/normal/datetime.c:31 -msgid "Saturday" -msgstr "Saturday" - -#: grub-core/normal/dyncmd.c:187 -msgid "module isn't loaded" -msgstr "module isn't loaded" - -#: grub-core/normal/main.c:211 -#, c-format -msgid "GNU GRUB version %s" -msgstr "GNU GRUB version %s" - -#: grub-core/normal/main.c:360 -msgid "ESC at any time exits." -msgstr "ESC at any time exits." - -#: grub-core/normal/main.c:363 -#, c-format -msgid "" -"Minimal BASH-like line editing is supported. For the first word, TAB lists " -"possible command completions. Anywhere else TAB lists possible device or " -"file completions. %s" -msgstr "" -"Minimal BASH-like line editing is supported. For the first word, TAB lists " -"possible command completions. Anywhere else TAB lists possible device or " -"file completions. %s" - -#. TRANSLATORS: it's command line prompt. -#: grub-core/normal/main.c:395 -msgid ">" -msgstr ">" - -#. TRANSLATORS: it's command line prompt. -#: grub-core/normal/main.c:398 -msgid "grub>" -msgstr "grub>" - -#: grub-core/normal/main.c:518 -msgid "Clear the screen." -msgstr "Clear the screen." - -#: grub-core/normal/main.c:527 -msgid "Enter normal mode." -msgstr "Enter normal mode." - -#: grub-core/normal/main.c:529 -msgid "Exit from normal mode." -msgstr "Exit from normal mode." - -#: grub-core/normal/menu.c:66 grub-core/normal/menu_entry.c:1449 -msgid "Press any key to continue..." -msgstr "Press any key to continue..." - -#: grub-core/normal/menu.c:815 -#, c-format -msgid "Booting `%s'" -msgstr "Booting ‘%s’" - -#: grub-core/normal/menu.c:827 -#, c-format -msgid "Falling back to `%s'" -msgstr "Falling back to ‘%s’" - -#: grub-core/normal/menu.c:843 -msgid "Failed to boot both default and fallback entries.\n" -msgstr "Failed to boot both default and fallback entries.\n" - -#: grub-core/normal/menu_entry.c:1171 -msgid "Booting a command list" -msgstr "Booting a command list" - -#: grub-core/normal/menu_text.c:160 -msgid "" -"Minimum Emacs-like screen editing is supported. TAB lists completions. Press " -"Ctrl-x or F10 to boot, Ctrl-c or F2 for a command-line or ESC to discard " -"edits and return to the GRUB menu." -msgstr "" -"Minimum Emacs-like screen editing is supported. TAB lists completions. Press " -"Ctrl-x or F10 to boot, Ctrl-c or F2 for a command-line or ESC to discard " -"edits and return to the GRUB menu." - -#: grub-core/normal/menu_text.c:170 -#, c-format -msgid "Use the %C and %C keys to select which entry is highlighted." -msgstr "Use the %C and %C keys to select which entry is highlighted." - -#. TRANSLATORS: that's the list of binary unit prefixes. -#: grub-core/normal/misc.c:38 -msgid "B" -msgstr "B" - -#: grub-core/normal/misc.c:38 -msgid "KiB" -msgstr "KiB" - -#: grub-core/normal/misc.c:38 -msgid "MiB" -msgstr "MiB" - -#: grub-core/normal/misc.c:38 -msgid "GiB" -msgstr "GiB" - -#: grub-core/normal/misc.c:38 -msgid "TiB" -msgstr "TiB" - -#: grub-core/normal/misc.c:38 -msgid "PiB" -msgstr "PiB" - -#. TRANSLATORS: that's the list of binary unit prefixes. -#: grub-core/normal/misc.c:40 -msgid "K" -msgstr "K" - -#: grub-core/normal/misc.c:40 -msgid "M" -msgstr "M" - -#: grub-core/normal/misc.c:40 -msgid "G" -msgstr "G" - -#: grub-core/normal/misc.c:40 -msgid "T" -msgstr "T" - -#: grub-core/normal/misc.c:40 -msgid "P" -msgstr "P" - -#. TRANSLATORS: that's the list of binary unit prefixes. -#: grub-core/normal/misc.c:42 -msgid "B/s" -msgstr "B/s" - -#: grub-core/normal/misc.c:42 -msgid "KiB/s" -msgstr "KiB/s" - -#: grub-core/normal/misc.c:42 -msgid "MiB/s" -msgstr "MiB/s" - -#: grub-core/normal/misc.c:42 -msgid "GiB/s" -msgstr "GiB/s" - -#: grub-core/normal/misc.c:42 -msgid "TiB/s" -msgstr "TiB/s" - -#: grub-core/normal/misc.c:42 -msgid "PiB/s" -msgstr "PiB/s" - -#: grub-core/normal/misc.c:96 -#, c-format -msgid "Partition %s:" -msgstr "Partition %s:" - -#: grub-core/normal/misc.c:101 -#, c-format -msgid "Device %s:" -msgstr "Device %s:" - -#: grub-core/normal/misc.c:107 -msgid "Filesystem cannot be accessed" -msgstr "Filesystem cannot be accessed" - -#: grub-core/normal/misc.c:121 -#, c-format -msgid "Filesystem type %s" -msgstr "Filesystem type %s" - -#: grub-core/normal/misc.c:131 -#, c-format -msgid "- Label `%s'" -msgstr "- Label ‘%s’" - -#. TRANSLATORS: Arguments are year, month, day, hour, minute, -#. second, day of the week (translated). -#: grub-core/normal/misc.c:148 -#, c-format -msgid "- Last modification time %d-%02d-%02d %02d:%02d:%02d %s" -msgstr "- Last modification time %d-%02d-%02d %02d:%02d:%02d %s" - -#: grub-core/normal/misc.c:171 -msgid "No known filesystem detected" -msgstr "No known filesystem detected" - -#: grub-core/normal/misc.c:174 -#, c-format -msgid " - Partition start at %llu%sKiB" -msgstr " - Partition start at %llu%sKiB" - -#: grub-core/normal/misc.c:178 -#, c-format -msgid " - Sector size %uB" -msgstr " - Sector size %uB" - -#: grub-core/normal/misc.c:180 -msgid " - Total size unknown" -msgstr " - Total size unknown" - -#: grub-core/normal/misc.c:182 -#, c-format -msgid " - Total size %llu%sKiB" -msgstr " - Total size %llu%sKiB" - -#. TRANSLATORS: Replace dot with appropriate decimal separator for -#. your language. -#: grub-core/normal/misc.c:186 -msgid ".5" -msgstr ".5" - -#. TRANSLATORS: This has to fit on one line. It's ok to include few -#. words but don't write poems. -#: grub-core/normal/term.c:82 -msgid "--MORE--" -msgstr "--MORE--" - -#: grub-core/osdep/aros/config.c:92 grub-core/osdep/unix/config.c:137 -#: grub-core/osdep/windows/config.c:55 -#, c-format -msgid "cannot open configuration file `%s': %s" -msgstr "cannot open configuration file ‘%s’: %s" - -#: grub-core/osdep/basic/compress.c:8 grub-core/osdep/basic/compress.c:14 -#: grub-core/osdep/basic/compress.c:20 -msgid "no compression is available for your platform" -msgstr "no compression is available for your platform" - -#: grub-core/osdep/basic/no_platform.c:30 -#: grub-core/osdep/windows/platform.c:418 -msgid "no IEEE1275 routines are available for your platform" -msgstr "no IEEE1275 routines are available for your platform" - -#: grub-core/osdep/basic/no_platform.c:38 -msgid "no EFI routines are available for your platform" -msgstr "no EFI routines are available for your platform" - -#: grub-core/osdep/basic/no_platform.c:45 -#: grub-core/osdep/windows/platform.c:425 -msgid "no SGI routines are available for your platform" -msgstr "no SGI routines are available for your platform" - -#. TRANSLATORS: The OS itself may very well have a random -#. number generator but GRUB doesn't know how to access it. -#: grub-core/osdep/basic/random.c:42 -msgid "no random number generator is available for your OS" -msgstr "no random number generator is available for your OS" - -#: grub-core/osdep/devmapper/getroot.c:81 -msgid "Failed to create `device-mapper' tree" -msgstr "Failed to create ‘device-mapper’ tree" - -#: grub-core/osdep/devmapper/getroot.c:197 -#: grub-core/osdep/freebsd/getroot.c:202 -#, c-format -msgid "can't mount encrypted volume `%s': %s" -msgstr "can't mount encrypted volume ‘%s’: %s" - -#. TRANSLATORS: geom is the name of (k)FreeBSD device framework. -#. Usually left untranslated. -#. -#: grub-core/osdep/freebsd/getroot.c:82 grub-core/osdep/freebsd/getroot.c:164 -#: grub-core/osdep/freebsd/getroot.c:258 grub-core/osdep/freebsd/getroot.c:316 -msgid "couldn't open geom" -msgstr "couldn't open geom" - -#: grub-core/osdep/freebsd/getroot.c:182 grub-core/osdep/freebsd/getroot.c:277 -msgid "couldn't find geli consumer" -msgstr "couldn't find geli consumer" - -#: grub-core/osdep/freebsd/getroot.c:282 -msgid "couldn't retrieve geli UUID" -msgstr "couldn't retrieve geli UUID" - -#. TRANSLATORS: geom is the name of (k)FreeBSD device framework. -#. Usually left untranslated. "part" is the identifier of one of its -#. classes. -#: grub-core/osdep/freebsd/getroot.c:325 -msgid "couldn't find geom `part' class" -msgstr "couldn't find geom ‘part’ class" - -#: grub-core/osdep/freebsd/hostdisk.c:72 grub-core/osdep/linux/hostdisk.c:93 -msgid "unaligned device size" -msgstr "unaligned device size" - -#: grub-core/osdep/generic/blocklist.c:56 -#, c-format -msgid "attempting to read the core image `%s' from GRUB" -msgstr "attempting to read the core image ‘%s’ from GRUB" - -#: grub-core/osdep/generic/blocklist.c:57 -#, c-format -msgid "attempting to read the core image `%s' from GRUB again" -msgstr "attempting to read the core image ‘%s’ from GRUB again" - -#: grub-core/osdep/generic/blocklist.c:115 -#, c-format -msgid "cannot read `%s' correctly" -msgstr "cannot read ‘%s’ correctly" - -#: grub-core/osdep/generic/blocklist.c:126 -msgid "failed to read the sectors of the core image" -msgstr "failed to read the sectors of the core image" - -#. TRANSLATORS: On GNU/Hurd, a "translator" is similar to a filesystem -#. mount, but handled by a userland daemon, whose invocation command line -#. is being fetched here. First %s is the file being looked at (for which -#. we are fetching the "translator" command line), second %s is the error -#. message. -#. -#: grub-core/osdep/hurd/getroot.c:79 -#, c-format -msgid "cannot get translator command line for path `%s': %s" -msgstr "cannot get translator command line for path ‘%s’: %s" - -#: grub-core/osdep/hurd/getroot.c:82 -#, c-format -msgid "translator command line is empty for path `%s'" -msgstr "translator command line is empty for path ‘%s’" - -#. TRANSLATORS: we expect to get something like -#. /hurd/foobar --option1 --option2=baz /dev/something -#. -#: grub-core/osdep/hurd/getroot.c:98 -#, c-format -msgid "" -"translator `%s' for path `%s' has several non-option words, at least `%s' " -"and `%s'" -msgstr "" -"translator ‘%s’ for path ‘%s’ has several non-option words, at least ‘%s’ " -"and ‘%s’" - -#. TRANSLATORS: we expect to get something like -#. /hurd/foobar --option1 --option2=baz /dev/something -#. -#: grub-core/osdep/hurd/getroot.c:109 -#, c-format -msgid "" -"translator `%s' for path `%s' is given only options, cannot find device part" -msgstr "" -"translator ‘%s’ for path ‘%s’ is given only options, cannot find device part" - -#: grub-core/osdep/hurd/hostdisk.c:73 -#, c-format -msgid "Storage information for `%s' does not include type" -msgstr "Storage information for ‘%s’ does not include type" - -#: grub-core/osdep/hurd/hostdisk.c:75 -#, c-format -msgid "`%s' is not a local disk" -msgstr "‘%s’ is not a local disk" - -#: grub-core/osdep/hurd/hostdisk.c:78 -#, c-format -msgid "" -"Storage information for `%s' indicates neither a plain partition nor a plain " -"disk" -msgstr "" -"Storage information for ‘%s’ indicates neither a plain partition nor a plain " -"disk" - -#: grub-core/osdep/linux/blocklist.c:81 grub-core/osdep/linux/blocklist.c:96 -#: grub-core/osdep/linux/blocklist.c:122 -#, c-format -msgid "can't retrieve blocklists: %s" -msgstr "can't retrieve blocklists: %s" - -#: grub-core/osdep/linux/blocklist.c:84 -msgid "blocksize is not divisible by 512" -msgstr "blocksize is not divisible by 512" - -#: grub-core/osdep/linux/blocklist.c:86 -msgid "invalid zero blocksize" -msgstr "invalid zero blocksize" - -#: grub-core/osdep/linux/blocklist.c:90 util/setup.c:744 -msgid "can't retrieve blocklists" -msgstr "can't retrieve blocklists" - -#: grub-core/osdep/linux/getroot.c:154 -#, c-format -msgid "ioctl RAID_VERSION error: %s" -msgstr "ioctl RAID_VERSION error: %s" - -#: grub-core/osdep/linux/getroot.c:160 grub-core/osdep/linux/getroot.c:164 -#, c-format -msgid "unsupported RAID version: %d.%d" -msgstr "unsupported RAID version: %d.%d" - -#: grub-core/osdep/linux/getroot.c:169 -#, c-format -msgid "ioctl GET_ARRAY_INFO error: %s" -msgstr "ioctl GET_ARRAY_INFO error: %s" - -#: grub-core/osdep/linux/getroot.c:178 -#, c-format -msgid "ioctl GET_DISK_INFO error: %s" -msgstr "ioctl GET_DISK_INFO error: %s" - -#: grub-core/osdep/linux/getroot.c:608 grub-core/osdep/linux/getroot.c:678 -#: grub-core/osdep/linux/hostdisk.c:126 grub-core/osdep/unix/getroot.c:253 -#: grub-core/osdep/unix/getroot.c:642 grub-core/osdep/unix/platform.c:92 -#: grub-core/osdep/unix/platform.c:100 -#, c-format -msgid "Unable to open stream from %s: %s" -msgstr "Unable to open stream from %s: %s" - -#: grub-core/osdep/linux/getroot.c:1033 -#, c-format -msgid "unknown kind of RAID device `%s'" -msgstr "unknown kind of RAID device ‘%s’" - -#: grub-core/osdep/linux/ofpath.c:181 -#, c-format -msgid "`obppath' not found in parent dirs of `%s', no IEEE1275 name discovery" -msgstr "‘obppath’ not found in parent dirs of ‘%s’, no IEEE1275 name discovery" - -#: grub-core/osdep/linux/ofpath.c:222 grub-core/osdep/unix/getroot.c:505 -#: grub-core/osdep/unix/getroot.c:529 grub-core/osdep/unix/relpath.c:49 -#: util/grub-install.c:984 util/grub-install.c:1331 util/grub-probe.c:323 -#, c-format -msgid "failed to get canonical path of `%s'" -msgstr "failed to get canonical path of ‘%s’" - -#: grub-core/osdep/linux/ofpath.c:740 -#, c-format -msgid "unknown device type %s" -msgstr "unknown device type %s" - -#: grub-core/osdep/linux/ofpath.c:758 util/ieee1275/grub-ofpathname.c:39 -#, c-format -msgid "Usage: %s DEVICE\n" -msgstr "Usage: %s DEVICE\n" - -#: grub-core/osdep/unix/exec.c:86 grub-core/osdep/unix/exec.c:172 -#: grub-core/osdep/unix/exec.c:217 -#, c-format -msgid "Unable to fork: %s" -msgstr "Unable to fork: %s" - -#: grub-core/osdep/unix/exec.c:166 grub-core/osdep/unix/exec.c:211 -#, c-format -msgid "Unable to create pipe: %s" -msgstr "Unable to create pipe: %s" - -#: grub-core/osdep/unix/getroot.c:370 -msgid "cannot save the original directory" -msgstr "cannot save the original directory" - -#: grub-core/osdep/unix/getroot.c:423 grub-core/osdep/unix/getroot.c:480 -#: grub-core/osdep/unix/getroot.c:489 -msgid "cannot restore the original directory" -msgstr "cannot restore the original directory" - -#. TRANSLATORS: "stat" comes from the name of POSIX function. -#: grub-core/osdep/unix/getroot.c:551 grub-core/osdep/unix/hostdisk.c:61 -#: grub-core/osdep/unix/relpath.c:73 grub-core/osdep/unix/relpath.c:97 -#: util/getroot.c:160 util/getroot.c:162 util/grub-install.c:774 -#: util/grub-macbless.c:70 -#, c-format -msgid "cannot stat `%s': %s" -msgstr "cannot stat ‘%s’: %s" - -#: grub-core/osdep/unix/hostdisk.c:293 -#, c-format -msgid "cannot make temporary file: %s" -msgstr "cannot make temporary file: %s" - -#: grub-core/osdep/unix/hostdisk.c:311 -#, c-format -msgid "cannot make temporary directory: %s" -msgstr "cannot make temporary directory: %s" - -#: grub-core/osdep/unix/platform.c:77 -#, c-format -msgid "" -"couldn't find IEEE1275 device path for %s.\n" -"You will have to set `boot-device' variable manually" -msgstr "" -"couldn't find IEEE1275 device path for %s.\n" -"You will have to set ‘boot-device’ variable manually" - -#. TRANSLATORS: This message is shown when required executable `%s' -#. isn't found. -#: grub-core/osdep/unix/platform.c:149 grub-core/osdep/unix/platform.c:189 -#, c-format -msgid "%s: not found" -msgstr "%s: not found" - -#: grub-core/osdep/unix/platform.c:225 -#, c-format -msgid "" -"`nvsetenv' failed. \n" -"You will have to set `boot-device' variable manually. At the IEEE1275 " -"prompt, type:\n" -" %s\n" -msgstr "" -"‘nvsetenv’ failed. \n" -"You will have to set ‘boot-device’ variable manually. At the IEEE1275 " -"prompt, type:\n" -" %s\n" - -#: grub-core/osdep/unix/platform.c:240 -msgid "You will have to set `SystemPartition' and `OSLoader' manually." -msgstr "You will have to set ‘SystemPartition’ and ‘OSLoader’ manually." - -#. TRANSLATORS: canonical pathname is the -#. complete one e.g. /etc/fstab. It has -#. to contain `/' normally, if it doesn't -#. we're in trouble and throw this error. -#: grub-core/osdep/unix/relpath.c:90 -msgid "no `/' in canonical filename" -msgstr "no ‘/’ in canonical filename" - -#: grub-core/osdep/windows/hostdisk.c:151 -msgid "cygwin_conv_path() failed" -msgstr "cygwin_conv_path() failed" - -#: grub-core/osdep/windows/hostdisk.c:501 util/grub-install.c:570 -msgid "couldn't retrieve random data" -msgstr "couldn't retrieve random data" - -#: grub-core/osdep/windows/platform.c:97 -msgid "Insufficient privileges to access firmware, assuming BIOS" -msgstr "Insufficient privileges to access firmware, assuming BIOS" - -#: grub-core/osdep/windows/platform.c:225 -msgid "no EFI routines are available when running in BIOS mode" -msgstr "no EFI routines are available when running in BIOS mode" - -#: grub-core/osdep/windows/platform.c:240 -msgid "unexpected EFI error" -msgstr "unexpected EFI error" - -#: grub-core/osdep/windows/platform.c:315 -msgid "Couldn't find a free BootNNNN slot" -msgstr "Couldn't find a free BootNNNN slot" - -#: grub-core/partmap/gpt.c:191 -msgid "" -"this GPT partition label contains no BIOS Boot Partition; embedding won't be " -"possible" -msgstr "" -"this GPT partition label contains no BIOS Boot Partition; embedding won't be " -"possible" - -#: grub-core/partmap/gpt.c:196 -msgid "your BIOS Boot Partition is too small; embedding won't be possible" -msgstr "your BIOS Boot Partition is too small; embedding won't be possible" - -#. TRANSLATORS: MBR gap and boot track is the same thing and is the space -#. between MBR and first partitition. If your language translates well only -#. "boot track", you can just use it everywhere. Next two messages are about -#. RAID controllers/software bugs which GRUB has to live with. Please spread -#. the message that these are bugs in other software and not merely -#. suboptimal behaviour. -#: grub-core/partmap/msdos.c:51 -#, c-format -msgid "" -"Sector %llu is already in use by raid controller `%s'; avoiding it. Please " -"ask the manufacturer not to store data in MBR gap" -msgstr "" -"Sector %llu is already in use by raid controller ‘%s’; avoiding it. Please " -"ask the manufacturer not to store data in MBR gap" - -#: grub-core/partmap/msdos.c:54 -#, c-format -msgid "" -"Sector %llu is already in use by the program `%s'; avoiding it. This " -"software may cause boot or other problems in future. Please ask its authors " -"not to store data in the boot track" -msgstr "" -"Sector %llu is already in use by the program ‘%s’; avoiding it. This " -"software may cause boot or other problems in future. Please ask its authors " -"not to store data in the boot track" - -#: grub-core/partmap/msdos.c:384 -msgid "" -"other software is using the embedding area, and there is not enough room for " -"core.img. Such software is often trying to store data in a way that avoids " -"detection. We recommend you investigate" -msgstr "" -"other software is using the embedding area, and there is not enough room for " -"core.img. Such software is often trying to store data in a way that avoids " -"detection. We recommend you investigate" - -#: grub-core/partmap/msdos.c:395 -msgid "" -"this msdos-style partition label has no post-MBR gap; embedding won't be " -"possible" -msgstr "" -"this msdos-style partition label has no post-MBR gap; embedding won't be " -"possible" - -#: grub-core/partmap/msdos.c:404 -msgid "your embedding area is unusually small. core.img won't fit in it." -msgstr "your embedding area is unusually small. core.img won't fit in it." - -#: grub-core/parttool/msdospart.c:39 -msgid "Make partition active" -msgstr "Make partition active" - -#: grub-core/parttool/msdospart.c:51 -msgid "not a primary partition" -msgstr "not a primary partition" - -#: grub-core/parttool/msdospart.c:69 -#, c-format -msgid "Partition %d is active now. \n" -msgstr "Partition %d is active now. \n" - -#: grub-core/parttool/msdospart.c:74 -#, c-format -msgid "Cleared active flag on %d. \n" -msgstr "Cleared active flag on %d. \n" - -#: grub-core/parttool/msdospart.c:87 -msgid "Change partition type" -msgstr "Change partition type" - -#: grub-core/parttool/msdospart.c:88 -msgid "Set `hidden' flag in partition type" -msgstr "Set ‘hidden’ flag in partition type" - -#: grub-core/parttool/msdospart.c:130 -#, c-format -msgid "the partition type 0x%x isn't valid" -msgstr "the partition type 0x%x isn't valid" - -#. TRANSLATORS: In this case we're actually writing to the disk and actively -#. modifying partition type rather than just defining it. -#: grub-core/parttool/msdospart.c:137 -#, c-format -msgid "Setting partition type to 0x%x\n" -msgstr "Setting partition type to 0x%x\n" - -#. TRANSLATORS: 0 is a quantifier. "break" (similar to bash) -#. can be used e.g. to break 3 loops at once. -#. But asking it to break 0 loops makes no sense. -#: grub-core/script/execute.c:143 -msgid "can't break 0 loops" -msgstr "can't break 0 loops" - -#. TRANSLATORS: It's about not being -#. inside a function. "return" can be used only -#. in a function and this error occurs if it's used -#. anywhere else. -#: grub-core/script/execute.c:227 -msgid "not in function body" -msgstr "not in function body" - -#: grub-core/script/execute.c:371 -#, c-format -msgid "invalid variable name `%s'" -msgstr "invalid variable name ‘%s’" - -#: grub-core/script/execute.c:953 -msgid "cannot allocate command buffer" -msgstr "cannot allocate command buffer" - -#: grub-core/script/lexer.c:144 util/grub-fstest.c:330 -msgid "unexpected end of file" -msgstr "unexpected end of file" - -#: grub-core/script/main.c:55 grub-core/script/main.c:57 -#: grub-core/script/main.c:59 grub-core/script/main.c:67 -msgid "[NUM]" -msgstr "[NUM]" - -#: grub-core/script/main.c:55 -msgid "Exit from loops" -msgstr "Exit from loops" - -#: grub-core/script/main.c:57 -msgid "Continue loops" -msgstr "Continue loops" - -#. TRANSLATORS: Positional arguments are -#. arguments $0, $1, $2, ... -#: grub-core/script/main.c:62 -msgid "Shift positional parameters." -msgstr "Shift positional parameters." - -#: grub-core/script/main.c:64 -msgid "[VALUE]..." -msgstr "[VALUE]..." - -#: grub-core/script/main.c:65 -msgid "Set positional parameters." -msgstr "Set positional parameters." - -#. TRANSLATORS: It's a command description -#. and "Return" is a verb, not a noun. The -#. command in question is "return" and -#. has exactly the same semanics as bash -#. equivalent. -#: grub-core/script/main.c:73 -msgid "Return from a function." -msgstr "Return from a function." - -#: grub-core/term/gfxterm_background.c:176 -msgid "[-m (stretch|normal)] FILE" -msgstr "[-m (stretch|normal)] FILE" - -#: grub-core/term/gfxterm_background.c:177 -msgid "Load background image for active terminal." -msgstr "Load background image for active terminal." - -#: grub-core/term/gfxterm_background.c:182 util/grub-install.c:302 -#: util/grub-install.c:303 util/grub-mkrescue.c:107 util/grub-mkrescue.c:108 -#: util/grub-render-label.c:61 util/grub-render-label.c:63 -msgid "COLOR" -msgstr "COLOR" - -#: grub-core/term/gfxterm_background.c:183 -msgid "Set background color for active terminal." -msgstr "Set background color for active terminal." - -#: grub-core/term/i386/coreboot/cbmemc.c:139 -msgid "Show CBMEM console content." -msgstr "Show CBMEM console content." - -#: grub-core/term/serial.c:57 -msgid "Set the serial unit." -msgstr "Set the serial unit." - -#: grub-core/term/serial.c:58 -msgid "Set the serial port address." -msgstr "Set the serial port address." - -#: grub-core/term/serial.c:59 -msgid "Set the serial port speed." -msgstr "Set the serial port speed." - -#: grub-core/term/serial.c:60 -msgid "Set the serial port word length." -msgstr "Set the serial port word length." - -#: grub-core/term/serial.c:61 -msgid "Set the serial port parity." -msgstr "Set the serial port parity." - -#: grub-core/term/serial.c:62 -msgid "Set the serial port stop bits." -msgstr "Set the serial port stop bits." - -#: grub-core/term/serial.c:63 -msgid "Set the base frequency." -msgstr "Set the base frequency." - -#: grub-core/term/serial.c:64 -msgid "Enable/disable RTS/CTS." -msgstr "Enable/disable RTS/CTS." - -#: grub-core/term/serial.c:218 -#, c-format -msgid "serial port `%s' isn't found" -msgstr "serial port ‘%s’ isn't found" - -#: grub-core/term/serial.c:254 -msgid "unsupported serial port flow control" -msgstr "unsupported serial port flow control" - -#: grub-core/term/serial.c:429 -msgid "[OPTIONS...]" -msgstr "[OPTIONS...]" - -#: grub-core/term/serial.c:430 -msgid "Configure serial port." -msgstr "Configure serial port." - -#: grub-core/term/terminfo.c:184 -#, c-format -msgid "unknown terminfo type `%s'" -msgstr "unknown terminfo type ‘%s’" - -#: grub-core/term/terminfo.c:668 -msgid "ASCII" -msgstr "ASCII" - -#: grub-core/term/terminfo.c:671 -msgid "UTF-8" -msgstr "UTF-8" - -#. TRANSLATORS: visually ordered UTF-8 is a non-compliant encoding -#. based on UTF-8 with right-to-left languages written in reverse. -#. Used on some terminals. Normal UTF-8 is refered as -#. "logically-ordered UTF-8" by opposition. -#: grub-core/term/terminfo.c:677 -msgid "visually-ordered UTF-8" -msgstr "visually-ordered UTF-8" - -#: grub-core/term/terminfo.c:680 -msgid "Unknown encoding" -msgstr "Unknown encoding" - -#: grub-core/term/terminfo.c:684 -msgid "Current terminfo types:" -msgstr "Current terminfo types:" - -#: grub-core/term/terminfo.c:699 -msgid "Terminal is ASCII-only [default]." -msgstr "Terminal is ASCII-only [default]." - -#: grub-core/term/terminfo.c:700 -msgid "Terminal is logical-ordered UTF-8." -msgstr "Terminal is logical-ordered UTF-8." - -#: grub-core/term/terminfo.c:701 -msgid "Terminal is visually-ordered UTF-8." -msgstr "Terminal is visually-ordered UTF-8." - -#: grub-core/term/terminfo.c:703 -msgid "Terminal has specified geometry." -msgstr "Terminal has specified geometry." - -#. TRANSLATORS: "x" has to be entered in, like an identifier, so please don't -#. use better Unicode codepoints. -#: grub-core/term/terminfo.c:706 -msgid "WIDTHxHEIGHT." -msgstr "WIDTHxHEIGHT." - -#: grub-core/term/terminfo.c:746 -msgid "incorrect terminal dimensions specification" -msgstr "incorrect terminal dimensions specification" - -#: grub-core/term/terminfo.c:776 -#, c-format -msgid "terminal %s isn't found or it's not handled by terminfo" -msgstr "terminal %s isn't found or it's not handled by terminfo" - -#: grub-core/term/terminfo.c:785 -msgid "[[-a|-u|-v] [-g WxH] TERM [TYPE]]" -msgstr "[[-a|-u|-v] [-g WxH] TERM [TYPE]]" - -#: grub-core/term/terminfo.c:786 -msgid "Set terminfo type of TERM to TYPE.\n" -msgstr "Set terminfo type of TERM to TYPE.\n" - -#. TRANSLATORS: this is the BLOCK-argument, not -#. environment block. -#: grub-core/tests/test_blockarg.c:49 -msgid "Print and execute block argument." -msgstr "Print and execute block argument." - -#. TRANSLATORS: We're speaking about bitmap images like -#. JPEG or PNG. -#: grub-core/video/bitmap.c:209 -#, c-format -msgid "bitmap file `%s' is of unsupported format" -msgstr "bitmap file ‘%s’ is of unsupported format" - -#: grub-core/video/i386/pc/vbe.c:1191 -#, c-format -msgid " VBE info: version: %d.%d OEM software rev: %d.%d\n" -msgstr " VBE info: version: %d.%d OEM software rev: %d.%d\n" - -#: grub-core/video/i386/pc/vbe.c:1198 -#, c-format -msgid " total memory: %d KiB\n" -msgstr " total memory: %d KiB\n" - -#: grub-core/video/video.c:596 grub-core/video/video.c:762 -msgid "no suitable video mode found" -msgstr "no suitable video mode found" - -#: include/grub/crypto.h:403 -msgid "access denied" -msgstr "access denied" - -#: include/grub/util/install.h:30 include/grub/util/install.h:35 -msgid "MODULES" -msgstr "MODULES" - -#: include/grub/util/install.h:31 -msgid "pre-load specified modules MODULES" -msgstr "pre-load specified modules MODULES" - -#: include/grub/util/install.h:33 -msgid "embed a specific DTB" -msgstr "embed a specific DTB" - -#: include/grub/util/install.h:36 -msgid "install only MODULES and their dependencies [default=all]" -msgstr "install only MODULES and their dependencies [default=all]" - -#: include/grub/util/install.h:37 -msgid "THEMES" -msgstr "THEMES" - -#: include/grub/util/install.h:38 -#, c-format -msgid "install THEMES [default=%s]" -msgstr "install THEMES [default=%s]" - -#: include/grub/util/install.h:39 -msgid "FONTS" -msgstr "FONTS" - -#: include/grub/util/install.h:40 -#, c-format -msgid "install FONTS [default=%s]" -msgstr "install FONTS [default=%s]" - -#: include/grub/util/install.h:41 -msgid "LOCALES" -msgstr "LOCALES" - -#: include/grub/util/install.h:42 -msgid "install only LOCALES [default=all]" -msgstr "install only LOCALES [default=all]" - -#: include/grub/util/install.h:45 -msgid "compress GRUB files [optional]" -msgstr "compress GRUB files [optional]" - -#: include/grub/util/install.h:48 util/grub-mkimage.c:83 -msgid "choose the compression to use for core image" -msgstr "choose the compression to use for core image" - -#. TRANSLATORS: platform here isn't identifier. It can be translated. -#: include/grub/util/install.h:51 include/grub/util/install.h:54 -#: util/grub-mkimage.c:66 -#, c-format -msgid "use images and modules under DIR [default=%s/]" -msgstr "use images and modules under DIR [default=%s/]" - -#: include/grub/util/install.h:57 -#, c-format -msgid "use translations under DIR [default=%s]" -msgstr "use translations under DIR [default=%s]" - -#: include/grub/util/install.h:60 -#, c-format -msgid "use themes under DIR [default=%s]" -msgstr "use themes under DIR [default=%s]" - -#: include/grub/util/install.h:65 util/grub-mkimage.c:78 -msgid "embed FILE as public key for signature checking" -msgstr "embed FILE as public key for signature checking" - -#: util/editenv.c:59 util/grub-editenv.c:201 util/grub-install-common.c:535 -#: util/grub-mkimage.c:315 util/setup.c:791 -#, c-format -msgid "cannot sync `%s': %s" -msgstr "cannot sync ‘%s’: %s" - -#: util/editenv.c:64 -#, c-format -msgid "cannot rename the file %s to %s" -msgstr "cannot rename the file %s to %s" - -#: util/getroot.c:402 -#, c-format -msgid "disk does not exist, so falling back to partition device %s" -msgstr "disk does not exist, so falling back to partition device %s" - -#: util/grub-editenv.c:45 util/grub-fstest.c:506 -msgid "Commands:" -msgstr "Commands:" - -#: util/grub-editenv.c:47 -msgid "Create a blank environment block file." -msgstr "Create a blank environment block file." - -#: util/grub-editenv.c:49 -msgid "List the current variables." -msgstr "List the current variables." - -#. TRANSLATORS: "set" is a keyword. It's a summary of "set" subcommand. -#: util/grub-editenv.c:51 -msgid "set [NAME=VALUE ...]" -msgstr "set [NAME=VALUE ...]" - -#: util/grub-editenv.c:52 -msgid "Set variables." -msgstr "Set variables." - -#. TRANSLATORS: "unset" is a keyword. It's a summary of "unset" subcommand. -#: util/grub-editenv.c:54 -msgid "unset [NAME ...]" -msgstr "unset [NAME ...]" - -#: util/grub-editenv.c:55 -msgid "Delete variables." -msgstr "Delete variables." - -#: util/grub-editenv.c:57 -msgid "Options:" -msgstr "Options:" - -#: util/grub-editenv.c:84 -msgid "You need to specify at least one command.\n" -msgstr "You need to specify at least one command.\n" - -#: util/grub-editenv.c:113 -msgid "FILENAME COMMAND" -msgstr "FILENAME COMMAND" - -#: util/grub-editenv.c:114 -msgid "Tool to edit environment block." -msgstr "Tool to edit environment block." - -#: util/grub-editenv.c:116 -#, c-format -msgid "" -"If FILENAME is `-', the default value %s is used.\n" -"\n" -"There is no `delete' command; if you want to delete the whole environment\n" -"block, use `rm %s'." -msgstr "" -"If FILENAME is ‘-’, the default value %s is used.\n" -"\n" -"There is no ‘delete’ command; if you want to delete the whole environment\n" -"block, use ‘rm %s’." - -#: util/grub-editenv.c:162 -msgid "invalid environment block" -msgstr "invalid environment block" - -#: util/grub-editenv.c:217 -#, c-format -msgid "invalid parameter %s" -msgstr "invalid parameter %s" - -#: util/grub-editenv.c:222 -msgid "environment block too small" -msgstr "environment block too small" - -#: util/grub-fstest.c:107 -#, c-format -msgid "disk read fails at offset %lld, length %lld" -msgstr "disk read fails at offset %lld, length %lld" - -#: util/grub-fstest.c:138 -#, c-format -msgid "invalid skip value %lld" -msgstr "invalid skip value %lld" - -#: util/grub-fstest.c:160 util/grub-fstest.c:246 -#, c-format -msgid "read error at offset %llu: %s" -msgstr "read error at offset %llu: %s" - -#: util/grub-fstest.c:210 -#, c-format -msgid "cannot open OS file `%s': %s" -msgstr "cannot open OS file ‘%s’: %s" - -#: util/grub-fstest.c:225 util/misc.c:126 -#, c-format -msgid "cannot write to the stdout: %s" -msgstr "cannot write to the stdout: %s" - -#: util/grub-fstest.c:259 -#, c-format -msgid "compare fail at offset %llu" -msgstr "compare fail at offset %llu" - -#: util/grub-fstest.c:280 util/grub-fstest.c:314 -#, c-format -msgid "OS file %s open error: %s" -msgstr "OS file %s open error: %s" - -#: util/grub-fstest.c:402 util/grub-mount.c:392 -#, c-format -msgid "`loopback' command fails: %s" -msgstr "‘loopback’ command fails: %s" - -#: util/grub-fstest.c:413 util/grub-mount.c:402 -#, c-format -msgid "`cryptomount' command fails: %s" -msgstr "‘cryptomount’ command fails: %s" - -#: util/grub-fstest.c:474 util/grub-fstest.c:478 -msgid "couldn't retrieve UUID" -msgstr "couldn't retrieve UUID" - -#: util/grub-fstest.c:507 -msgid "ls PATH" -msgstr "ls PATH" - -#: util/grub-fstest.c:507 -msgid "List files in PATH." -msgstr "List files in PATH." - -#: util/grub-fstest.c:508 -msgid "cp FILE LOCAL" -msgstr "cp FILE LOCAL" - -#: util/grub-fstest.c:508 -msgid "Copy FILE to local file LOCAL." -msgstr "Copy FILE to local file LOCAL." - -#: util/grub-fstest.c:509 -msgid "cat FILE" -msgstr "cat FILE" - -#: util/grub-fstest.c:509 -msgid "Copy FILE to standard output." -msgstr "Copy FILE to standard output." - -#: util/grub-fstest.c:510 -msgid "cmp FILE LOCAL" -msgstr "cmp FILE LOCAL" - -#: util/grub-fstest.c:510 -msgid "Compare FILE with local file LOCAL." -msgstr "Compare FILE with local file LOCAL." - -#: util/grub-fstest.c:511 -msgid "hex FILE" -msgstr "hex FILE" - -#: util/grub-fstest.c:511 -msgid "Show contents of FILE in hex." -msgstr "Show contents of FILE in hex." - -#: util/grub-fstest.c:512 -msgid "crc FILE" -msgstr "crc FILE" - -#: util/grub-fstest.c:512 -msgid "Get crc32 checksum of FILE." -msgstr "Get crc32 checksum of FILE." - -#: util/grub-fstest.c:513 -msgid "blocklist FILE" -msgstr "blocklist FILE" - -#: util/grub-fstest.c:513 -msgid "Display blocklist of FILE." -msgstr "Display blocklist of FILE." - -#: util/grub-fstest.c:514 -msgid "xnu_uuid DEVICE" -msgstr "xnu_uuid DEVICE" - -#: util/grub-fstest.c:514 -msgid "Compute XNU UUID of the device." -msgstr "Compute XNU UUID of the device." - -#. TRANSLATORS: bitmaps are images like e.g. in JPEG. -#: util/grub-fstest.c:517 util/grub-fstest.c:518 util/grub-fstest.c:519 -#: util/grub-mkfont.c:938 util/grub-mkfont.c:951 util/grub-mkfont.c:952 -#: util/grub-mkpasswd-pbkdf2.c:46 util/grub-mkpasswd-pbkdf2.c:47 -#: util/grub-mkpasswd-pbkdf2.c:48 -msgid "NUM" -msgstr "NUM" - -#: util/grub-fstest.c:517 -msgid "Skip N bytes from output file." -msgstr "Skip N bytes from output file." - -#: util/grub-fstest.c:518 -msgid "Handle N bytes in output file." -msgstr "Handle N bytes in output file." - -#: util/grub-fstest.c:519 -msgid "Specify the number of input files." -msgstr "Specify the number of input files." - -#: util/grub-fstest.c:520 util/grub-mount.c:453 -msgid "Set debug environment variable." -msgstr "Set debug environment variable." - -#: util/grub-fstest.c:521 util/grub-mount.c:454 -msgid "Mount crypto devices." -msgstr "Mount crypto devices." - -#. TRANSLATORS: "prompt" is a keyword. -#: util/grub-fstest.c:524 util/grub-mount.c:457 -msgid "FILE|prompt" -msgstr "FILE|prompt" - -#: util/grub-fstest.c:524 util/grub-mount.c:457 -msgid "Load zfs crypto key." -msgstr "Load zfs crypto key." - -#: util/grub-fstest.c:526 -msgid "Uncompress data." -msgstr "Uncompress data." - -#: util/grub-fstest.c:605 -msgid "Invalid disk count.\n" -msgstr "Invalid disk count.\n" - -#. TRANSLATORS: disk count is optional but if it's there it must -#. be before disk list. So please don't imply disk count as mandatory. -#. -#: util/grub-fstest.c:613 -msgid "Disk count must precede disks list.\n" -msgstr "Disk count must precede disks list.\n" - -#: util/grub-fstest.c:633 -msgid "No command is specified.\n" -msgstr "No command is specified.\n" - -#: util/grub-fstest.c:638 -msgid "Not enough parameters to command.\n" -msgstr "Not enough parameters to command.\n" - -#: util/grub-fstest.c:711 -#, c-format -msgid "Invalid command %s.\n" -msgstr "Invalid command %s.\n" - -#: util/grub-fstest.c:724 -msgid "IMAGE_PATH COMMANDS" -msgstr "IMAGE_PATH COMMANDS" - -#: util/grub-fstest.c:725 util/grub-mount.c:553 -msgid "Debug tool for filesystem driver." -msgstr "Debug tool for filesystem driver." - -#: util/grub-glue-efi.c:53 -msgid "set input filename for 32-bit part." -msgstr "set input filename for 32-bit part." - -#: util/grub-glue-efi.c:55 -msgid "set input filename for 64-bit part." -msgstr "set input filename for 64-bit part." - -#: util/grub-glue-efi.c:57 util/grub-mklayout.c:55 util/grub-render-label.c:71 -msgid "set output filename. Default is STDOUT" -msgstr "set output filename. Default is STDOUT" - -#: util/grub-glue-efi.c:94 util/grub-mklayout.c:476 -#: util/grub-mkpasswd-pbkdf2.c:86 util/grub-render-label.c:131 -msgid "[OPTIONS]" -msgstr "[OPTIONS]" - -#: util/grub-glue-efi.c:95 -msgid "Glue 32-bit and 64-bit binary into Apple universal one." -msgstr "Glue 32-bit and 64-bit binary into Apple universal one." - -#: util/grub-glue-efi.c:116 -msgid "Missing input file\n" -msgstr "Missing input file\n" - -#: util/grub-install-common.c:127 util/grub-install-common.c:151 -#, c-format -msgid "cannot copy `%s' to `%s': %s" -msgstr "cannot copy ‘%s’ to ‘%s’: %s" - -#: util/grub-install-common.c:147 -#, c-format -msgid "can't compress `%s' to `%s'" -msgstr "can't compress ‘%s’ to ‘%s’" - -#: util/grub-install-common.c:196 util/grub-install-common.c:552 -#: util/grub-install-common.c:579 util/grub-install-common.c:621 -#, c-format -msgid "cannot open directory `%s': %s" -msgstr "cannot open directory ‘%s’: %s" - -#: util/grub-install-common.c:212 -#, c-format -msgid "cannot delete `%s': %s" -msgstr "cannot delete ‘%s’: %s" - -#: util/grub-install-common.c:324 util/grub-mkimage.c:209 -msgid "grub-mkimage is compiled without XZ support" -msgstr "grub-mkimage is compiled without XZ support" - -#: util/grub-install-common.c:332 util/grub-mkimage.c:217 -#, c-format -msgid "Unknown compression format %s" -msgstr "Unknown compression format %s" - -#: util/grub-install-common.c:400 -#, c-format -msgid "Unrecognized compression `%s'" -msgstr "Unrecognized compression ‘%s’" - -#: util/grub-install-common.c:509 -#, c-format -msgid "unknown target format %s" -msgstr "unknown target format %s" - -#: util/grub-install-common.c:700 -#, c-format -msgid "cannot find locale `%s'" -msgstr "cannot find locale ‘%s’" - -#: util/grub-install-common.c:939 -#, c-format -msgid "%s doesn't exist. Please specify --target or --directory" -msgstr "%s doesn't exist. Please specify --target or --directory" - -#: util/grub-install-common.c:948 util/grub-install-common.c:951 -#, c-format -msgid "invalid modinfo file `%s'" -msgstr "invalid modinfo file ‘%s’" - -#: util/grub-install-common.c:966 -#, c-format -msgid "Unknown platform `%s-%s'" -msgstr "Unknown platform ‘%s-%s’" - -#: util/grub-install.c:238 -msgid "More than one install device?" -msgstr "More than one install device?" - -#: util/grub-install.c:251 -#, c-format -msgid "" -"install GRUB images under the directory DIR/%s instead of the %s directory" -msgstr "" -"install GRUB images under the directory DIR/%s instead of the %s directory" - -#: util/grub-install.c:256 util/grub-probe.c:734 -msgid "TARGET" -msgstr "TARGET" - -#. TRANSLATORS: "TARGET" as in "target platform". -#: util/grub-install.c:258 -#, c-format -msgid "install GRUB for TARGET platform [default=%s]; available targets: %s" -msgstr "install GRUB for TARGET platform [default=%s]; available targets: %s" - -#. TRANSLATORS: "may break" doesn't just mean that option wouldn't have any -#. effect but that it will make the resulting install unbootable from HDD. -#. TRANSLATORS: The potential breakage isn't limited to floppies but it's -#. likely to make the install unbootable from HDD. -#: util/grub-install.c:267 util/grub-setup.c:94 -msgid "" -"make the drive also bootable as floppy (default for fdX devices). May break " -"on some BIOSes." -msgstr "" -"make the drive also bootable as floppy (default for fdX devices). May break " -"on some BIOSes." - -#: util/grub-install.c:270 -msgid "delete device map if it already exists" -msgstr "delete device map if it already exists" - -#: util/grub-install.c:272 util/grub-setup.c:87 -msgid "install even if problems are detected" -msgstr "install even if problems are detected" - -#: util/grub-install.c:274 -msgid "use identifier file even if UUID is available" -msgstr "use identifier file even if UUID is available" - -#: util/grub-install.c:276 -msgid "" -"disk module to use (biosdisk or native). This option is only available on " -"BIOS target." -msgstr "" -"disk module to use (biosdisk or native). This option is only available on " -"BIOS target." - -#: util/grub-install.c:279 -msgid "" -"don't update the `boot-device'/`Boot*' NVRAM variables. This option is only " -"available on EFI and IEEE1275 targets." -msgstr "" -"don't update the ‘boot-device’/‘Boot*’ NVRAM variables. This option is only " -"available on EFI and IEEE1275 targets." - -#: util/grub-install.c:282 util/grub-setup.c:89 -msgid "do not probe for filesystems in DEVICE" -msgstr "do not probe for filesystems in DEVICE" - -#: util/grub-install.c:284 -msgid "do not install bootsector" -msgstr "do not install bootsector" - -#: util/grub-install.c:286 util/grub-setup.c:96 -msgid "" -"Do not apply any reed-solomon codes when embedding core.img. This option is " -"only available on x86 BIOS targets." -msgstr "" -"Do not apply any reed-solomon codes when embedding core.img. This option is " -"only available on x86 BIOS targets." - -#: util/grub-install.c:293 -msgid "" -"the installation device is removable. This option is only available on EFI." -msgstr "" -"the installation device is removable. This option is only available on EFI." - -#: util/grub-install.c:295 -msgid "ID" -msgstr "ID" - -#: util/grub-install.c:296 -msgid "the ID of bootloader. This option is only available on EFI and Macs." -msgstr "the ID of bootloader. This option is only available on EFI and Macs." - -#: util/grub-install.c:298 -msgid "use DIR as the EFI System Partition root." -msgstr "use DIR as the EFI System Partition root." - -#: util/grub-install.c:300 -msgid "use DIR for PPC MAC install." -msgstr "use DIR for PPC MAC install." - -#: util/grub-install.c:301 util/grub-mkrescue.c:106 -msgid "use FILE as font for label" -msgstr "use FILE as font for label" - -#: util/grub-install.c:302 util/grub-mkrescue.c:107 -msgid "use COLOR for label" -msgstr "use COLOR for label" - -#: util/grub-install.c:303 util/grub-mkrescue.c:108 -msgid "use COLOR for label background" -msgstr "use COLOR for label background" - -#: util/grub-install.c:304 util/grub-mkrescue.c:110 -msgid "use STRING as product version" -msgstr "use STRING as product version" - -#: util/grub-install.c:361 -msgid "[OPTION] [INSTALL_DEVICE]" -msgstr "[OPTION] [INSTALL_DEVICE]" - -#: util/grub-install.c:362 -msgid "Install GRUB on your drive." -msgstr "Install GRUB on your drive." - -#: util/grub-install.c:363 -#, c-format -msgid "" -"INSTALL_DEVICE must be system device filename.\n" -"%s copies GRUB images into %s. On some platforms, it may also install GRUB " -"into the boot sector." -msgstr "" -"INSTALL_DEVICE must be system device filename.\n" -"%s copies GRUB images into %s. On some platforms, it may also install GRUB " -"into the boot sector." - -#: util/grub-install.c:672 -#, c-format -msgid "the drive %s is defined multiple times in the device map %s" -msgstr "the drive %s is defined multiple times in the device map %s" - -#: util/grub-install.c:878 -msgid "Unable to determine your platform. Use --target." -msgstr "Unable to determine your platform. Use --target." - -#: util/grub-install.c:891 -#, c-format -msgid "Installing for %s platform.\n" -msgstr "Installing for %s platform.\n" - -#: util/grub-install.c:939 -msgid "install device isn't specified" -msgstr "install device isn't specified" - -#: util/grub-install.c:1057 -msgid "cannot find EFI directory" -msgstr "cannot find EFI directory" - -#: util/grub-install.c:1060 util/grub-install.c:1209 util/grub-install.c:1254 -#: util/grub-macbless.c:76 util/grub-probe.c:329 util/setup.c:316 -#, c-format -msgid "cannot find a device for %s (is /dev mounted?)" -msgstr "cannot find a device for %s (is /dev mounted?)" - -#: util/grub-install.c:1069 util/grub-install.c:1217 util/grub-install.c:1270 -#: util/grub-install.c:1365 util/grub-macbless.c:80 util/grub-probe.c:372 -#, c-format -msgid "cannot find a GRUB drive for %s. Check your device.map" -msgstr "cannot find a GRUB drive for %s. Check your device.map" - -#: util/grub-install.c:1087 -#, c-format -msgid "%s doesn't look like an EFI partition" -msgstr "%s doesn't look like an EFI partition" - -#: util/grub-install.c:1129 util/grub-install.c:1614 -msgid "You've found a bug" -msgstr "You've found a bug" - -#: util/grub-install.c:1231 -#, c-format -msgid "filesystem on %s is neither HFS nor HFS+" -msgstr "filesystem on %s is neither HFS nor HFS+" - -#: util/grub-install.c:1299 -#, c-format -msgid "" -"attempt to install to encrypted disk without cryptodisk enabled. Set `%s' in " -"file `%s'" -msgstr "" -"attempt to install to encrypted disk without cryptodisk enabled. Set ‘%s’ in " -"file ‘%s’" - -#: util/grub-install.c:1410 util/grub-install.c:1772 util/grub-install.c:1872 -#, c-format -msgid "Can't create file: %s" -msgstr "Can't create file: %s" - -#: util/grub-install.c:1491 -msgid "no hints available for your platform. Expect reduced performance" -msgstr "no hints available for your platform. Expect reduced performance" - -#. TRANSLATORS: This is a prefix in the log to indicate that usually -#. a command would be executed but due to an option was skipped. -#: util/grub-install.c:1702 -msgid "NOT RUNNING: " -msgstr "NOT RUNNING: " - -#: util/grub-install.c:1806 -msgid "the chosen partition is not a PReP partition" -msgstr "the chosen partition is not a PReP partition" - -#: util/grub-install.c:1811 -msgid "failed to copy Grub to the PReP partition" -msgstr "failed to copy Grub to the PReP partition" - -#: util/grub-install.c:1816 -#, c-format -msgid "" -"the PReP partition is not empty. If you are sure you want to use it, run dd " -"to clear it: `%s'" -msgstr "" -"the PReP partition is not empty. If you are sure you want to use it, run dd " -"to clear it: ‘%s’" - -#: util/grub-install.c:1888 util/grub-install.c:1932 -#, c-format -msgid "efibootmgr failed to register the boot entry: %s" -msgstr "efibootmgr failed to register the boot entry: %s" - -#: util/grub-install.c:1916 -msgid "EFI bootloader id isn't specified." -msgstr "EFI bootloader id isn't specified." - -#: util/grub-install.c:1950 -msgid "WARNING: no platform-specific install was performed" -msgstr "WARNING: no platform-specific install was performed" - -#: util/grub-install.c:1957 -msgid "Installation finished. No error reported." -msgstr "Installation finished. No error reported." - -#: util/grub-macbless.c:101 -msgid "bless for x86-based macs" -msgstr "bless for x86-based macs" - -#: util/grub-macbless.c:103 -msgid "bless for ppc-based macs" -msgstr "bless for ppc-based macs" - -#: util/grub-macbless.c:136 util/grub-probe.c:823 -msgid "No path or device is specified.\n" -msgstr "No path or device is specified.\n" - -#: util/grub-macbless.c:157 -msgid "--ppc PATH|--x86 FILE" -msgstr "--ppc PATH|--x86 FILE" - -#: util/grub-macbless.c:158 -msgid "Mac-style bless on HFS or HFS+" -msgstr "Mac-style bless on HFS or HFS+" - -#: util/grub-menulst2cfg.c:44 -#, c-format -msgid "Usage: %s [INFILE [OUTFILE]]\n" -msgstr "Usage: %s [INFILE [OUTFILE]]\n" - -#: util/grub-mkfont.c:157 -#, c-format -msgid "Freetype Error %d loading glyph 0x%x for U+0x%x%s" -msgstr "Freetype Error %d loading glyph 0x%x for U+0x%x%s" - -#. TRANSLATORS: These qualifiers are used for cursive typography, -#. mainly Arabic. Note that the terms refer to the visual position -#. and not logical order and if used in left-to-right script then -#. leftmost is initial but with right-to-left script like Arabic -#. rightmost is the initial. -#: util/grub-mkfont.c:165 -msgid " (medial)" -msgstr " (medial)" - -#: util/grub-mkfont.c:166 -msgid " (leftmost)" -msgstr " (leftmost)" - -#: util/grub-mkfont.c:167 -msgid " (rightmost)" -msgstr " (rightmost)" - -#: util/grub-mkfont.c:481 -#, c-format -msgid "Out of range substitution (%d, %d)\n" -msgstr "Out of range substitution (%d, %d)\n" - -#. TRANSLATORS: "lookup" is taken directly from font specifications -#. which are formulated as "Under condition X replace LOOKUP with -#. SUBSTITUITION". " -#: util/grub-mkfont.c:506 -#, c-format -msgid "Out of range lookup: %d\n" -msgstr "Out of range lookup: %d\n" - -#: util/grub-mkfont.c:514 -#, c-format -msgid "Unsupported substitution type: %d\n" -msgstr "Unsupported substitution type: %d\n" - -#: util/grub-mkfont.c:550 -#, c-format -msgid "Unsupported substitution specification: %d\n" -msgstr "Unsupported substitution specification: %d\n" - -#: util/grub-mkfont.c:582 -#, c-format -msgid "Unsupported coverage specification: %d\n" -msgstr "Unsupported coverage specification: %d\n" - -#: util/grub-mkfont.c:622 -#, c-format -msgid "WARNING: unsupported font feature parameters: %x\n" -msgstr "WARNING: unsupported font feature parameters: %x\n" - -#: util/grub-mkfont.c:936 util/grub-mkrescue.c:98 util/grub-mkstandalone.c:48 -msgid "save output in FILE [required]" -msgstr "save output in FILE [required]" - -#. TRANSLATORS: some font files may have multiple faces (fonts). -#. This option is used to chose among them, the first face being '0'. -#. Rarely used. -#: util/grub-mkfont.c:942 -msgid "select face index" -msgstr "select face index" - -#: util/grub-mkfont.c:943 -msgid "FROM-TO[,FROM-TO]" -msgstr "FROM-TO[,FROM-TO]" - -#. TRANSLATORS: It refers to the range of characters in font. -#: util/grub-mkfont.c:945 -msgid "set font range" -msgstr "set font range" - -#. TRANSLATORS: "family name" for font is just a generic name without suffix -#. like "Bold". -#: util/grub-mkfont.c:949 -msgid "set font family name" -msgstr "set font family name" - -#: util/grub-mkfont.c:950 -msgid "SIZE" -msgstr "SIZE" - -#: util/grub-mkfont.c:950 -msgid "set font size" -msgstr "set font size" - -#: util/grub-mkfont.c:951 -msgid "set font descent" -msgstr "set font descent" - -#: util/grub-mkfont.c:952 -msgid "set font ascent" -msgstr "set font ascent" - -#: util/grub-mkfont.c:953 -msgid "convert to bold font" -msgstr "convert to bold font" - -#: util/grub-mkfont.c:954 -msgid "force autohint" -msgstr "force autohint" - -#: util/grub-mkfont.c:955 -msgid "disable hinting" -msgstr "disable hinting" - -#. TRANSLATORS: some fonts contain bitmap rendering for -#. some sizes. This option forces rerendering even if -#. pre-rendered bitmap is available. -#. -#: util/grub-mkfont.c:961 -msgid "ignore bitmap strikes when loading" -msgstr "ignore bitmap strikes when loading" - -#. TRANSLATORS: It refers to the range of characters in font. -#: util/grub-mkfont.c:1059 util/grub-mkfont.c:1075 -msgid "invalid font range" -msgstr "invalid font range" - -#: util/grub-mkfont.c:1151 -msgid "[OPTIONS] FONT_FILES" -msgstr "[OPTIONS] FONT_FILES" - -#: util/grub-mkfont.c:1152 -msgid "Convert common font file formats into PF2" -msgstr "Convert common font file formats into PF2" - -#: util/grub-mkfont.c:1182 util/grub-mkrescue.c:483 -#: util/grub-mkstandalone.c:306 -msgid "output file must be specified" -msgstr "output file must be specified" - -#: util/grub-mkfont.c:1185 -msgid "FT_Init_FreeType fails" -msgstr "FT_Init_FreeType fails" - -#: util/grub-mkfont.c:1199 -#, c-format -msgid "can't open file %s, index %d: error %d" -msgstr "can't open file %s, index %d: error %d" - -#: util/grub-mkfont.c:1229 -#, c-format -msgid "can't set %dx%d font size: Freetype error %d: %s" -msgstr "can't set %dx%d font size: Freetype error %d: %s" - -#: util/grub-mkimage.c:67 -msgid "set prefix directory" -msgstr "set prefix directory" - -#. TRANSLATORS: "memdisk" here isn't an identifier, it can be translated. -#. "embed" is a verb (command description). " -#: util/grub-mkimage.c:71 -msgid "" -"embed FILE as a memdisk image\n" -"Implies `-p (memdisk)/boot/grub' and overrides any prefix supplied " -"previously, but the prefix itself can be overridden by later options" -msgstr "" -"embed FILE as a memdisk image\n" -"Implies ‘-p (memdisk)/boot/grub’ and overrides any prefix supplied " -"previously, but the prefix itself can be overridden by later options" - -#: util/grub-mkimage.c:74 -msgid "embed FILE as a device tree (DTB)\n" -msgstr "embed FILE as a device tree (DTB)\n" - -#: util/grub-mkimage.c:76 -msgid "embed FILE as an early config" -msgstr "embed FILE as an early config" - -#. TRANSLATORS: NOTE is a name of segment. -#: util/grub-mkimage.c:80 -msgid "add NOTE segment for CHRP IEEE1275" -msgstr "add NOTE segment for CHRP IEEE1275" - -#: util/grub-mkimage.c:81 -msgid "output a generated image to FILE [default=stdout]" -msgstr "output a generated image to FILE [default=stdout]" - -#: util/grub-mkimage.c:82 -msgid "FORMAT" -msgstr "FORMAT" - -#: util/grub-mkimage.c:100 util/grub-mkstandalone.c:62 -msgid "generate an image in FORMAT" -msgstr "generate an image in FORMAT" - -#: util/grub-mkimage.c:101 util/grub-mkstandalone.c:63 -msgid "available formats:" -msgstr "available formats:" - -#: util/grub-mkimage.c:152 util/grub-mkstandalone.c:96 -#, c-format -msgid "unknown target format %s\n" -msgstr "unknown target format %s\n" - -#: util/grub-mkimage.c:242 -msgid "[OPTION]... [MODULES]" -msgstr "[OPTION]... [MODULES]" - -#: util/grub-mkimage.c:243 -msgid "Make a bootable image of GRUB." -msgstr "Make a bootable image of GRUB." - -#: util/grub-mkimage.c:273 util/grub-mkstandalone.c:309 -msgid "Target format not specified (use the -O option)." -msgstr "Target format not specified (use the -O option)." - -#: util/grub-mkimage.c:282 -msgid "Prefix not specified (use the -p option)." -msgstr "Prefix not specified (use the -p option)." - -#: util/grub-mkimage.c:318 util/setup.c:793 -#, c-format -msgid "cannot close `%s': %s" -msgstr "cannot close ‘%s’: %s" - -#: util/grub-mkimagexx.c:2191 -#, c-format -msgid "" -"`%s' is miscompiled: its start address is 0x%llx instead of 0x%llx: ld.gold " -"bug?" -msgstr "" -"‘%s’ is miscompiled: its start address is 0x%llx instead of 0x%llx: ld.gold " -"bug?" - -#: util/grub-mklayout.c:53 -msgid "set input filename. Default is STDIN" -msgstr "set input filename. Default is STDIN" - -#. TRANSLATORS: scan identifier is keyboard key symbolic name. -#: util/grub-mklayout.c:307 -#, c-format -msgid "Unknown keyboard scan identifier %s\n" -msgstr "Unknown keyboard scan identifier %s\n" - -#. TRANSLATORS: scan code is keyboard key numeric identifier. -#: util/grub-mklayout.c:390 util/grub-mklayout.c:418 -#, c-format -msgid "Unknown keyboard scan code 0x%02x\n" -msgstr "Unknown keyboard scan code 0x%02x\n" - -#. TRANSLATORS: this error is triggered when input doesn't contain any -#. key descriptions. -#: util/grub-mklayout.c:438 -msgid "ERROR: no valid keyboard layout found. Check the input.\n" -msgstr "ERROR: no valid keyboard layout found. Check the input.\n" - -#. TRANSLATORS: "one" is a shortcut for "keyboard layout". -#: util/grub-mklayout.c:478 -msgid "Generate GRUB keyboard layout from Linux console one." -msgstr "Generate GRUB keyboard layout from Linux console one." - -#: util/grub-mknetdir.c:47 -msgid "root directory of TFTP server" -msgstr "root directory of TFTP server" - -#: util/grub-mknetdir.c:49 -msgid "relative subdirectory on network server" -msgstr "relative subdirectory on network server" - -#: util/grub-mknetdir.c:88 -msgid "" -"Prepares GRUB network boot images at net_directory/subdir assuming " -"net_directory being TFTP root." -msgstr "" -"Prepares GRUB network boot images at net_directory/subdir assuming " -"net_directory being TFTP root." - -#: util/grub-mknetdir.c:146 -#, c-format -msgid "unsupported platform %s" -msgstr "unsupported platform %s" - -#. TRANSLATORS: First %s is replaced by platform name. Second one by filename. -#: util/grub-mknetdir.c:165 -#, c-format -msgid "" -"Netboot directory for %s created. Configure your DHCP server to point to %s\n" -msgstr "" -"Netboot directory for %s created. Configure your DHCP server to point to %s\n" - -#: util/grub-mkpasswd-pbkdf2.c:46 -msgid "Number of PBKDF2 iterations" -msgstr "Number of PBKDF2 iterations" - -#: util/grub-mkpasswd-pbkdf2.c:47 -msgid "Length of generated hash" -msgstr "Length of generated hash" - -#: util/grub-mkpasswd-pbkdf2.c:48 -msgid "Length of salt" -msgstr "Length of salt" - -#: util/grub-mkpasswd-pbkdf2.c:87 -msgid "Generate PBKDF2 password hash." -msgstr "Generate PBKDF2 password hash." - -#: util/grub-mkpasswd-pbkdf2.c:144 util/grub-mkpasswd-pbkdf2.c:151 -msgid "failure to read password" -msgstr "failure to read password" - -#: util/grub-mkpasswd-pbkdf2.c:146 -msgid "Reenter password: " -msgstr "Reenter password: " - -#: util/grub-mkpasswd-pbkdf2.c:160 -msgid "passwords don't match" -msgstr "passwords don't match" - -#: util/grub-mkpasswd-pbkdf2.c:169 -msgid "couldn't retrieve random data for salt" -msgstr "couldn't retrieve random data for salt" - -#: util/grub-mkpasswd-pbkdf2.c:184 -#, c-format -msgid "cryptographic error number %d" -msgstr "cryptographic error number %d" - -#: util/grub-mkpasswd-pbkdf2.c:203 -#, c-format -msgid "PBKDF2 hash of your password is %s\n" -msgstr "PBKDF2 hash of your password is %s\n" - -#: util/grub-mkrelpath.c:67 -msgid "No path is specified.\n" -msgstr "No path is specified.\n" - -#: util/grub-mkrelpath.c:78 -msgid "PATH" -msgstr "PATH" - -#: util/grub-mkrelpath.c:79 -msgid "Transform a system filename into GRUB one." -msgstr "Transform a system filename into GRUB one." - -#: util/grub-mkrescue.c:100 -msgid "save ROM images in DIR [optional]" -msgstr "save ROM images in DIR [optional]" - -#. TRANSLATORS: xorriso is a program for creating ISOs and burning CDs. -#: util/grub-mkrescue.c:103 -msgid "use FILE as xorriso [optional]" -msgstr "use FILE as xorriso [optional]" - -#: util/grub-mkrescue.c:109 -msgid "use STRING as product name" -msgstr "use STRING as product name" - -#: util/grub-mkrescue.c:111 -msgid "" -"enable sparc boot. Disables HFS+, APM, ARCS and boot as disk image for i386-" -"pc" -msgstr "" -"enable sparc boot. Disables HFS+, APM, ARCS and boot as disk image for i386-" -"pc" - -#: util/grub-mkrescue.c:112 -msgid "" -"enable ARCS (big-endian mips machines, mostly SGI) boot. Disables HFS+, APM, " -"sparc64 and boot as disk image for i386-pc" -msgstr "" -"enable ARCS (big-endian mips machines, mostly SGI) boot. Disables HFS+, APM, " -"sparc64 and boot as disk image for i386-pc" - -#. TRANSLATORS: it generates one single image which is bootable through any method. -#: util/grub-mkrescue.c:125 -msgid "Make GRUB CD-ROM, disk, pendrive and floppy bootable image." -msgstr "Make GRUB CD-ROM, disk, pendrive and floppy bootable image." - -#: util/grub-mkrescue.c:130 -#, c-format -msgid "" -"Generates a bootable CD/USB/floppy image. Arguments other than options to " -"this program are passed to xorriso, and indicate source files, source " -"directories, or any of the mkisofs options listed by the output of `%s'." -msgstr "" -"Generates a bootable CD/USB/floppy image. Arguments other than options to " -"this program are passed to xorriso, and indicate source files, source " -"directories, or any of the mkisofs options listed by the output of ‘%s’." - -#: util/grub-mkrescue.c:134 -msgid "Option -- switches to native xorriso command mode." -msgstr "Option -- switches to native xorriso command mode." - -#: util/grub-mkrescue.c:135 -msgid "Mail xorriso support requests to ." -msgstr "Mail xorriso support requests to ." - -#: util/grub-mkrescue.c:221 util/grub-mkstandalone.c:114 -msgid "[OPTION] SOURCE..." -msgstr "[OPTION] SOURCE..." - -#: util/grub-mkrescue.c:257 util/grub-mkrescue.c:300 util/grub-mkrescue.c:588 -#, c-format -msgid "enabling %s support ..." -msgstr "enabling %s support ..." - -#: util/grub-mkrescue.c:486 -msgid "xorriso not found" -msgstr "xorriso not found" - -#: util/grub-mkrescue.c:623 -msgid "" -"Your xorriso doesn't support `--grub2-boot-info'. Some features are " -"disabled. Please use xorriso 1.2.9 or later." -msgstr "" -"Your xorriso doesn't support ‘--grub2-boot-info’. Some features are " -"disabled. Please use xorriso 1.2.9 or later." - -#: util/grub-mkrescue.c:650 -msgid "" -"Your xorriso doesn't support `--grub2-boot-info'. Your core image is too " -"big. Boot as disk is disabled. Please use xorriso 1.2.9 or later." -msgstr "" -"Your xorriso doesn't support ‘--grub2-boot-info’. Your core image is too " -"big. Boot as disk is disabled. Please use xorriso 1.2.9 or later." - -#: util/grub-mkstandalone.c:115 -msgid "" -"Generate a standalone image (containing all modules) in the selected format" -msgstr "" -"Generate a standalone image (containing all modules) in the selected format" - -#: util/grub-mkstandalone.c:115 -msgid "Graft point syntax (E.g. /boot/grub/grub.cfg=./grub.cfg) is accepted" -msgstr "Graft point syntax (E.g. /boot/grub/grub.cfg=./grub.cfg) is accepted" - -#: util/grub-mount.c:552 -msgid "IMAGE1 [IMAGE2 ...] MOUNTPOINT" -msgstr "IMAGE1 [IMAGE2 ...] MOUNTPOINT" - -#: util/grub-mount.c:575 -msgid "need an image and mountpoint" -msgstr "need an image and mountpoint" - -#: util/grub-probe.c:731 -msgid "given argument is a system device, not a path" -msgstr "given argument is a system device, not a path" - -#: util/grub-probe.c:736 -msgid "separate items in output using ASCII NUL characters" -msgstr "separate items in output using ASCII NUL characters" - -#: util/grub-probe.c:754 -#, c-format -msgid "[default=%s]" -msgstr "[default=%s]" - -#: util/grub-probe.c:756 -msgid "print TARGET" -msgstr "print TARGET" - -#: util/grub-probe.c:757 -msgid "available targets:" -msgstr "available targets:" - -#: util/grub-probe.c:839 -msgid "[OPTION]... [PATH|DEVICE]" -msgstr "[OPTION]... [PATH|DEVICE]" - -#: util/grub-probe.c:840 -msgid "" -"Probe device information for a given path (or device, if the -d option is " -"given)." -msgstr "" -"Probe device information for a given path (or device, if the -d option is " -"given)." - -#: util/grub-render-label.c:60 -msgid "read text from FILE." -msgstr "read text from FILE." - -#: util/grub-render-label.c:62 -msgid "use COLOR for text" -msgstr "use COLOR for text" - -#: util/grub-render-label.c:64 -msgid "use COLOR for background" -msgstr "use COLOR for background" - -#. TRANSLATORS: The result is always stored to file and -#. never shown directly, so don't use "show" as synonym for render. Use "create" if -#. "render" doesn't translate directly. -#: util/grub-render-label.c:69 -msgid "set the label to render" -msgstr "set the label to render" - -#: util/grub-render-label.c:73 -msgid "use FILE as font (PF2)." -msgstr "use FILE as font (PF2)." - -#. TRANSLATORS: This file takes a text and creates a graphical representation of it, -#. putting the result into .disk_label file. The result is always stored to file and -#. never shown directly, so don't use "show" as synonym for render. Use "create" if -#. "render" doesn't translate directly. -#: util/grub-render-label.c:136 -msgid "Render Apple .disk_label." -msgstr "Render Apple .disk_label." - -#: util/grub-render-label.c:158 util/grub-syslinux2cfg.c:169 -msgid "Missing arguments\n" -msgstr "Missing arguments\n" - -#: util/grub-script-check.c:87 -msgid "[PATH]" -msgstr "[PATH]" - -#: util/grub-script-check.c:88 -msgid "Checks GRUB script configuration file for syntax errors." -msgstr "Checks GRUB script configuration file for syntax errors." - -#: util/grub-script-check.c:207 -#, c-format -msgid "Syntax error at line %u\n" -msgstr "Syntax error at line %u\n" - -#: util/grub-script-check.c:212 -#, c-format -msgid "Script `%s' contains no commands and will do nothing\n" -msgstr "Script ‘%s’ contains no commands and will do nothing\n" - -#: util/grub-setup.c:79 -#, c-format -msgid "use FILE as the boot image [default=%s]" -msgstr "use FILE as the boot image [default=%s]" - -#: util/grub-setup.c:81 -#, c-format -msgid "use FILE as the core image [default=%s]" -msgstr "use FILE as the core image [default=%s]" - -#: util/grub-setup.c:210 -msgid "No device is specified.\n" -msgstr "No device is specified.\n" - -#: util/grub-setup.c:224 -msgid "" -"Set up images to boot from DEVICE.\n" -"\n" -"You should not normally run this program directly. Use grub-install instead." -msgstr "" -"Set up images to boot from DEVICE.\n" -"\n" -"You should not normally run this program directly. Use grub-install instead." - -#: util/grub-setup.c:228 -msgid "DEVICE must be an OS device (e.g. /dev/sda)." -msgstr "DEVICE must be an OS device (e.g. /dev/sda)." - -#: util/grub-setup.c:297 -#, c-format -msgid "Invalid device `%s'.\n" -msgstr "Invalid device ‘%s’.\n" - -#: util/grub-syslinux2cfg.c:64 -msgid "root directory as it will be seen on runtime [default=/]." -msgstr "root directory as it will be seen on runtime [default=/]." - -#: util/grub-syslinux2cfg.c:69 -msgid "" -"current directory of syslinux as it will be seen on runtime [default is " -"parent directory of input file]." -msgstr "" -"current directory of syslinux as it will be seen on runtime [default is " -"parent directory of input file]." - -#: util/grub-syslinux2cfg.c:74 -msgid "write output to FILE [default=stdout]." -msgstr "write output to FILE [default=stdout]." - -#: util/grub-syslinux2cfg.c:148 -msgid "Transform syslinux config into GRUB one." -msgstr "Transform syslinux config into GRUB one." - -#: util/mkimage.c:688 util/mkimage.c:717 util/mkimage.c:734 -msgid "cannot compress the kernel image" -msgstr "cannot compress the kernel image" - -#: util/mkimage.c:766 util/mkimage.c:1077 -#, c-format -msgid "unknown compression %d" -msgstr "unknown compression %d" - -#: util/mkimage.c:1088 -msgid "Decompressor is too big" -msgstr "Decompressor is too big" - -#: util/mkimage.c:1133 -#, c-format -msgid "core image is too big (0x%x > 0x%x)" -msgstr "core image is too big (0x%x > 0x%x)" - -#: util/mkimage.c:1140 -#, c-format -msgid "kernel image is too big (0x%x > 0x%x)" -msgstr "kernel image is too big (0x%x > 0x%x)" - -#: util/mkimage.c:1220 util/mkimage.c:1501 -#, c-format -msgid "diskboot.img size must be %u bytes" -msgstr "diskboot.img size must be %u bytes" - -#: util/mkimage.c:1571 -msgid "" -"fwstart.img doesn't match the known good version. proceed at your own risk" -msgstr "" -"fwstart.img doesn't match the known good version. proceed at your own risk" - -#: util/mkimage.c:1575 util/mkimage.c:1601 -msgid "firmware image is too big" -msgstr "firmware image is too big" - -#: util/resolve.c:93 -#, c-format -msgid "invalid line format: %s" -msgstr "invalid line format: %s" - -#: util/setup.c:167 -msgid "the first sector of the core file is not sector-aligned" -msgstr "the first sector of the core file is not sector-aligned" - -#: util/setup.c:177 -msgid "non-sector-aligned data is found in the core file" -msgstr "non-sector-aligned data is found in the core file" - -#: util/setup.c:199 -msgid "the sectors of the core file are too fragmented" -msgstr "the sectors of the core file are too fragmented" - -#: util/setup.c:280 -#, c-format -msgid "the size of `%s' is not %u" -msgstr "the size of ‘%s’ is not %u" - -#: util/setup.c:290 -#, c-format -msgid "the size of `%s' is too small" -msgstr "the size of ‘%s’ is too small" - -#: util/setup.c:428 -msgid "" -"Attempting to install GRUB to a disk with multiple partition labels or both " -"partition label and filesystem. This is not supported yet." -msgstr "" -"Attempting to install GRUB to a disk with multiple partition labels or both " -"partition label and filesystem. This is not supported yet." - -#: util/setup.c:441 -#, c-format -msgid "unable to identify a filesystem in %s; safety check can't be performed" -msgstr "unable to identify a filesystem in %s; safety check can't be performed" - -#. TRANSLATORS: Filesystem may reserve the space just GRUB isn't sure about it. -#: util/setup.c:445 -#, c-format -msgid "" -"%s appears to contain a %s filesystem which isn't known to reserve space for " -"DOS-style boot. Installing GRUB there could result in FILESYSTEM " -"DESTRUCTION if valuable data is overwritten by grub-setup (--skip-fs-probe " -"disables this check, use at your own risk)" -msgstr "" -"%s appears to contain a %s filesystem which isn't known to reserve space for " -"DOS-style boot. Installing GRUB there could result in FILESYSTEM " -"DESTRUCTION if valuable data is overwritten by grub-setup (--skip-fs-probe " -"disables this check, use at your own risk)" - -#. TRANSLATORS: Partition map may reserve the space just GRUB isn't sure about it. -#: util/setup.c:458 -#, c-format -msgid "" -"%s appears to contain a %s partition map which isn't known to reserve space " -"for DOS-style boot. Installing GRUB there could result in FILESYSTEM " -"DESTRUCTION if valuable data is overwritten by grub-setup (--skip-fs-probe " -"disables this check, use at your own risk)" -msgstr "" -"%s appears to contain a %s partition map which isn't known to reserve space " -"for DOS-style boot. Installing GRUB there could result in FILESYSTEM " -"DESTRUCTION if valuable data is overwritten by grub-setup (--skip-fs-probe " -"disables this check, use at your own risk)" - -#: util/setup.c:465 -#, c-format -msgid "" -"%s appears to contain a %s partition map and LDM which isn't known to be a " -"safe combination. Installing GRUB there could result in FILESYSTEM " -"DESTRUCTION if valuable data is overwritten by grub-setup (--skip-fs-probe " -"disables this check, use at your own risk)" -msgstr "" -"%s appears to contain a %s partition map and LDM which isn't known to be a " -"safe combination. Installing GRUB there could result in FILESYSTEM " -"DESTRUCTION if valuable data is overwritten by grub-setup (--skip-fs-probe " -"disables this check, use at your own risk)" - -#: util/setup.c:478 -msgid "" -"Attempting to install GRUB to a partitionless disk or to a partition. This " -"is a BAD idea." -msgstr "" -"Attempting to install GRUB to a partitionless disk or to a partition. This " -"is a BAD idea." - -#: util/setup.c:483 -msgid "" -"Attempting to install GRUB to a disk with multiple partition labels. This " -"is not supported yet." -msgstr "" -"Attempting to install GRUB to a disk with multiple partition labels. This " -"is not supported yet." - -#: util/setup.c:489 -#, c-format -msgid "Partition style `%s' doesn't support embedding" -msgstr "Partition style ‘%s’ doesn't support embedding" - -#: util/setup.c:496 -#, c-format -msgid "File system `%s' doesn't support embedding" -msgstr "File system ‘%s’ doesn't support embedding" - -#: util/setup.c:537 -msgid "Your embedding area is unusually small. core.img won't fit in it." -msgstr "Your embedding area is unusually small. core.img won't fit in it." - -#: util/setup.c:559 util/setup.c:725 util/setup.c:844 -msgid "no terminator in the core image" -msgstr "no terminator in the core image" - -#: util/setup.c:622 -msgid "core.img version mismatch" -msgstr "core.img version mismatch" - -#: util/setup.c:675 -msgid "" -"embedding is not possible, but this is required for RAID and LVM install" -msgstr "" -"embedding is not possible, but this is required for RAID and LVM install" - -#: util/setup.c:682 -#, c-format -msgid "can't determine filesystem on %s" -msgstr "can't determine filesystem on %s" - -#: util/setup.c:685 -#, c-format -msgid "filesystem `%s' doesn't support blocklists" -msgstr "filesystem ‘%s’ doesn't support blocklists" - -#. TRANSLATORS: cross-disk refers to /boot being on one disk -#. but MBR on another. -#: util/setup.c:694 -msgid "embedding is not possible, but this is required for cross-disk install" -msgstr "embedding is not possible, but this is required for cross-disk install" - -#: util/setup.c:700 -msgid "" -"Embedding is not possible. GRUB can only be installed in this setup by " -"using blocklists. However, blocklists are UNRELIABLE and their use is " -"discouraged." -msgstr "" -"Embedding is not possible. GRUB can only be installed in this setup by " -"using blocklists. However, blocklists are UNRELIABLE and their use is " -"discouraged." - -#. TRANSLATORS: Here GRUB refuses to continue with blocklist install. -#: util/setup.c:705 -msgid "will not proceed with blocklists" -msgstr "will not proceed with blocklists" - -#: util/setup.c:817 util/setup.c:837 -msgid "blocklists are invalid" -msgstr "blocklists are invalid" - -#: util/setup.c:847 -msgid "blocklists are incomplete" -msgstr "blocklists are incomplete" diff --git a/thirdparty/grub-2.04/po/eo.gmo b/thirdparty/grub-2.04/po/eo.gmo deleted file mode 100644 index e1b7b422c8cdc0edd6cab28263025b1fe7dd0e49..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 43102 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, 2012. -# -msgid "" -msgstr "" -"Project-Id-Version: grub-2.0.0-pre4\n" -"Report-Msgid-Bugs-To: bug-grub@gnu.org\n" -"POT-Creation-Date: 2019-07-04 16:09+0200\n" -"PO-Revision-Date: 2012-04-05 21:52+0200\n" -"Last-Translator: Kristjan SCHMIDT \n" -"Language-Team: Esperanto \n" -"Language: eo\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Bugs: Report translation errors to the Language-Team address.\n" -"Plural-Forms: nplurals=2; plural=(n != 1)\n" - -#: grub-core/bus/usb/serial/ftdi.c:145 grub-core/bus/usb/serial/pl2303.c:158 -#: grub-core/term/ieee1275/escc.c:169 grub-core/term/ns8250.c:202 -msgid "unsupported serial port speed" -msgstr "nesubtenata rapideco de seria pordo" - -#: grub-core/bus/usb/serial/ftdi.c:151 grub-core/bus/usb/serial/pl2303.c:164 -#: grub-core/term/efi/serial.c:116 grub-core/term/ieee1275/escc.c:175 -#: grub-core/term/ns8250.c:208 grub-core/term/serial.c:227 -#: grub-core/term/serial.c:243 -msgid "unsupported serial port parity" -msgstr "nesubtenata pareco de seria pordo" - -#: grub-core/bus/usb/serial/ftdi.c:157 grub-core/bus/usb/serial/pl2303.c:170 -#: grub-core/term/efi/serial.c:122 grub-core/term/ieee1275/escc.c:181 -#: grub-core/term/ns8250.c:213 grub-core/term/serial.c:267 -msgid "unsupported serial port stop bits number" -msgstr "nesubtenata nombro da seriaj stop-bitoj" - -#: grub-core/bus/usb/serial/ftdi.c:161 grub-core/bus/usb/serial/pl2303.c:174 -#: grub-core/term/efi/serial.c:126 grub-core/term/ieee1275/escc.c:185 -#: grub-core/term/ns8250.c:217 -msgid "unsupported serial port word length" -msgstr "nesubtenata vortlongo de seria pordo" - -#: grub-core/commands/acpi.c:42 -msgid "Don't load host tables specified by comma-separated list." -msgstr "Ne Åargi gastigajn tabelojn specifitajn per perkome disigita listo." - -#: grub-core/commands/acpi.c:45 -msgid "Load only tables specified by comma-separated list." -msgstr "Åœargi nur la tabelojn donitajn en komo-dispartigita listo." - -#: grub-core/commands/acpi.c:46 -msgid "Export version 1 tables to the OS." -msgstr "Eksporti versio-1-tabelojn al la operaciumo." - -#: grub-core/commands/acpi.c:47 -msgid "Export version 2 and version 3 tables to the OS." -msgstr "Eksporti versio-2- kaj versio-3-tabelojn al la operaciumo." - -#: grub-core/commands/acpi.c:48 -msgid "Set OEMID of RSDP, XSDT and RSDT." -msgstr "Agordi OEMID de RSDP, XSDT kaj RSDT." - -#: grub-core/commands/acpi.c:50 -msgid "Set OEMTABLE ID of RSDP, XSDT and RSDT." -msgstr "Agordi OEMTABLE ID de RSDP, XSDT kaj RSDT." - -#: grub-core/commands/acpi.c:52 -msgid "Set OEMTABLE revision of RSDP, XSDT and RSDT." -msgstr "Agordi OEMTABLE-revizion de RSDP, XSDT kaj RSDT." - -#: grub-core/commands/acpi.c:54 -msgid "Set creator field of RSDP, XSDT and RSDT." -msgstr "Agordi kampon 'creator' de RSDP, XSDT kaj RSDT." - -#: grub-core/commands/acpi.c:56 -msgid "Set creator revision of RSDP, XSDT and RSDT." -msgstr "Agordi revizion 'creator' de RSDP, XSDT kaj RSDT" - -#. TRANSLATORS: "hangs" here is a noun, not a verb. -#: grub-core/commands/acpi.c:58 -#, fuzzy -msgid "" -"Don't update EBDA. May fix failures or hangs on some BIOSes but makes it " -"ineffective with OS not receiving RSDP from GRUB." -msgstr "" -"Ne Äisdatigi na EBDA. Eblas ripari fiaskojn sed ankaÅ­ paraliziÄi pro kelkaj. " -"BIOS-oj, sed neefikigas Äin kun operaciumoj ne ricevantaj RSDP de Grubo." - -#: grub-core/commands/acpi.c:650 grub-core/commands/acpi.c:667 -#: grub-core/commands/i386/pc/play.c:105 grub-core/commands/keylayouts.c:230 -#: grub-core/commands/keylayouts.c:245 grub-core/commands/keylayouts.c:263 -#: grub-core/commands/verifiers.c:156 grub-core/efiemu/loadcore.c:350 -#: grub-core/kern/elf.c:117 grub-core/kern/elfXX.c:29 -#: grub-core/kern/elfXX.c:156 grub-core/loader/arm/linux.c:319 -#: grub-core/loader/arm64/linux.c:330 grub-core/loader/arm64/xen_boot.c:356 -#: grub-core/loader/efi/chainloader.c:276 -#: grub-core/loader/efi/chainloader.c:297 -#: grub-core/loader/efi/chainloader.c:329 grub-core/loader/efi/fdt.c:138 -#: grub-core/loader/i386/bsd.c:1276 grub-core/loader/i386/bsd.c:2116 -#: grub-core/loader/i386/bsdXX.c:20 grub-core/loader/i386/bsdXX.c:36 -#: grub-core/loader/i386/bsdXX.c:63 grub-core/loader/i386/bsdXX.c:357 -#: grub-core/loader/i386/bsdXX.c:376 grub-core/loader/i386/bsdXX.c:519 -#: grub-core/loader/i386/bsdXX.c:535 grub-core/loader/i386/bsdXX.c:615 -#: grub-core/loader/i386/bsdXX.c:638 -#: grub-core/loader/i386/coreboot/chainloader.c:112 -#: grub-core/loader/i386/coreboot/chainloader.c:148 -#: grub-core/loader/i386/coreboot/chainloader.c:170 -#: grub-core/loader/i386/linux.c:667 grub-core/loader/i386/linux.c:788 -#: grub-core/loader/i386/linux.c:1005 grub-core/loader/i386/multiboot_mbi.c:171 -#: grub-core/loader/i386/pc/chainloader.c:202 -#: grub-core/loader/i386/pc/linux.c:149 grub-core/loader/i386/pc/linux.c:320 -#: grub-core/loader/i386/pc/linux.c:362 grub-core/loader/i386/pc/plan9.c:457 -#: grub-core/loader/i386/pc/plan9.c:550 grub-core/loader/i386/pc/plan9.c:566 -#: grub-core/loader/i386/xen.c:934 grub-core/loader/i386/xen_file.c:72 -#: grub-core/loader/i386/xen_fileXX.c:43 grub-core/loader/i386/xen_fileXX.c:186 -#: grub-core/loader/i386/xen_fileXX.c:339 grub-core/loader/ia64/efi/linux.c:423 -#: grub-core/loader/ia64/efi/linux.c:471 grub-core/loader/linux.c:286 -#: grub-core/loader/macho.c:84 grub-core/loader/macho.c:109 -#: grub-core/loader/machoXX.c:33 grub-core/loader/machoXX.c:46 -#: grub-core/loader/machoXX.c:76 grub-core/loader/machoXX.c:116 -#: grub-core/loader/machoXX.c:131 grub-core/loader/machoXX.c:147 -#: grub-core/loader/machoXX.c:196 grub-core/loader/machoXX.c:317 -#: grub-core/loader/multiboot.c:434 grub-core/loader/multiboot_elfxx.c:171 -#: grub-core/loader/multiboot_elfxx.c:234 -#: grub-core/loader/multiboot_elfxx.c:278 grub-core/loader/multiboot_mbi2.c:129 -#: grub-core/loader/xnu.c:737 grub-core/loader/xnu.c:795 -#: grub-core/loader/xnu.c:816 grub-core/loader/xnu.c:871 -#: grub-core/loader/xnu.c:914 grub-core/loader/xnu.c:952 -#: grub-core/loader/xnu_resume.c:68 grub-core/loader/xnu_resume.c:153 -#: grub-core/loader/xnu_resume.c:165 util/grub-mkimagexx.c:2288 -#, c-format -msgid "premature end of file %s" -msgstr "neatendita fino de dosiero %s" - -#: grub-core/commands/acpi.c:779 -msgid "" -"[-1|-2] [--exclude=TABLE1,TABLE2|--load-only=TABLE1,TABLE2] FILE1 [FILE2] " -"[...]" -msgstr "" -"[-1|-2] [--exclude=TABELO1,TABELO2|--load-only=tabelo1,tabelo2] DOSIERO1 " -"[DOSIERO2] [...]" - -#: grub-core/commands/acpi.c:782 -msgid "Load host ACPI tables and tables specified by arguments." -msgstr "" -"Åœargi gastigajn ACPI-tabelojn kaj tabelojn specifigitajn per argumentoj." - -#: grub-core/commands/acpihalt.c:368 grub-core/kern/err.c:110 -#, c-format -msgid "error: %s.\n" -msgstr "eraro: %s.\n" - -#: grub-core/commands/acpihalt.c:368 grub-core/kern/emu/misc.c:95 -#: grub-core/kern/emu/misc.c:105 grub-core/kern/emu/misc.c:134 -#: grub-core/kern/emu/mm.c:34 grub-core/kern/emu/mm.c:62 -#: grub-core/kern/mm.c:374 grub-core/lib/relocator.c:1282 -#: grub-core/lib/relocator.c:1439 grub-core/lib/relocator.c:1538 -#: grub-core/loader/arm/linux.c:259 grub-core/loader/arm64/linux.c:265 -#: grub-core/loader/arm64/linux.c:321 grub-core/loader/arm64/linux.c:340 -#: grub-core/loader/arm64/xen_boot.c:344 grub-core/loader/arm64/xen_boot.c:367 -#: grub-core/loader/efi/chainloader.c:289 grub-core/osdep/unix/dl.c:48 -#: grub-core/osdep/windows/dl.c:46 grub-core/script/lexer.c:156 -#: grub-core/script/lexer.c:182 -msgid "out of memory" -msgstr "memormanko" - -#: grub-core/commands/acpihalt.c:374 grub-core/disk/cryptodisk.c:587 -#: grub-core/disk/cryptodisk.c:632 grub-core/kern/emu/hostdisk.c:307 -#: grub-core/kern/emu/hostfs.c:149 grub-core/kern/emu/misc.c:200 -#: grub-core/osdep/linux/ofpath.c:195 grub-core/osdep/linux/ofpath.c:521 -#: grub-core/osdep/linux/ofpath.c:534 util/glue-efi.c:80 util/glue-efi.c:94 -#: util/grub-editenv.c:155 util/grub-fstest.c:577 -#: util/grub-install-common.c:943 util/grub-mkrescue.c:634 -#: util/grub-mkrescue.c:888 util/grub-mount.c:506 util/grub-render-label.c:176 -#: util/misc.c:95 util/setup.c:814 util/setup.c:833 -#, c-format -msgid "cannot read `%s': %s" -msgstr "ne eblas legi na '%s': %s" - -#. TRANSLATORS: It's computer shutdown using ACPI, not disabling ACPI. -#: grub-core/commands/acpihalt.c:452 -msgid "ACPI shutdown failed" -msgstr "ACPI-elÅalto malsukcesis" - -#: grub-core/commands/arc/lsdev.c:51 -msgid "List devices." -msgstr "Listigi aparatojn." - -#: grub-core/commands/blocklist.c:122 grub-core/commands/cat.c:57 -#: grub-core/commands/configfile.c:35 grub-core/commands/efi/loadbios.c:168 -#: grub-core/commands/file.c:159 grub-core/commands/hexdump.c:47 -#: grub-core/commands/legacycfg.c:209 grub-core/commands/legacycfg.c:315 -#: grub-core/commands/minicmd.c:44 grub-core/commands/syslinuxcfg.c:146 -#: grub-core/commands/testload.c:58 grub-core/commands/testspeed.c:52 -#: grub-core/disk/loopback.c:93 grub-core/efiemu/main.c:293 -#: grub-core/font/font_cmd.c:32 grub-core/kern/emu/hostdisk.c:519 -#: grub-core/loader/arm/linux.c:364 grub-core/loader/arm/linux.c:409 -#: grub-core/loader/arm/linux.c:472 grub-core/loader/arm64/linux.c:243 -#: grub-core/loader/arm64/linux.c:297 grub-core/loader/arm64/xen_boot.c:398 -#: grub-core/loader/arm64/xen_boot.c:411 grub-core/loader/arm64/xen_boot.c:462 -#: grub-core/loader/efi/chainloader.c:216 grub-core/loader/i386/bsd.c:1462 -#: grub-core/loader/i386/bsd.c:1807 grub-core/loader/i386/bsd.c:2085 -#: grub-core/loader/i386/coreboot/chainloader.c:438 -#: grub-core/loader/i386/linux.c:656 grub-core/loader/i386/linux.c:1041 -#: grub-core/loader/i386/pc/chainloader.c:290 -#: grub-core/loader/i386/pc/freedos.c:105 grub-core/loader/i386/pc/linux.c:138 -#: grub-core/loader/i386/pc/linux.c:400 grub-core/loader/i386/pc/ntldr.c:85 -#: grub-core/loader/i386/pc/plan9.c:409 -#: grub-core/loader/i386/pc/pxechainloader.c:94 -#: grub-core/loader/i386/pc/truecrypt.c:96 grub-core/loader/i386/xen.c:641 -#: grub-core/loader/i386/xen.c:768 grub-core/loader/i386/xen.c:844 -#: grub-core/loader/i386/xen.c:854 grub-core/loader/i386/xnu.c:488 -#: grub-core/loader/ia64/efi/linux.c:459 grub-core/loader/ia64/efi/linux.c:539 -#: grub-core/loader/mips/linux.c:238 grub-core/loader/mips/linux.c:429 -#: grub-core/loader/multiboot.c:322 grub-core/loader/multiboot.c:374 -#: grub-core/loader/multiboot.c:384 -#: grub-core/loader/powerpc/ieee1275/linux.c:269 -#: grub-core/loader/powerpc/ieee1275/linux.c:341 -#: grub-core/loader/sparc64/ieee1275/linux.c:305 -#: grub-core/loader/sparc64/ieee1275/linux.c:381 grub-core/loader/xnu.c:351 -#: grub-core/loader/xnu.c:460 grub-core/loader/xnu.c:778 -#: grub-core/loader/xnu.c:892 grub-core/loader/xnu.c:1277 -#: grub-core/loader/xnu.c:1427 grub-core/loader/xnu.c:1453 -#: grub-core/video/readers/jpeg.c:812 grub-core/video/readers/png.c:1123 -msgid "filename expected" -msgstr "atendis dosiernomon" - -#. TRANSLATORS: "embed" is a verb (command description). " -#: grub-core/commands/blocklist.c:154 grub-core/commands/cat.c:163 -#: grub-core/commands/configfile.c:65 grub-core/commands/configfile.c:68 -#: grub-core/commands/configfile.c:74 grub-core/commands/configfile.c:80 -#: grub-core/commands/configfile.c:86 grub-core/commands/hashsum.c:34 -#: grub-core/commands/legacycfg.c:834 grub-core/commands/legacycfg.c:841 -#: grub-core/commands/legacycfg.c:846 grub-core/commands/legacycfg.c:851 -#: grub-core/commands/macbless.c:222 grub-core/commands/minicmd.c:198 -#: grub-core/commands/syslinuxcfg.c:186 grub-core/commands/syslinuxcfg.c:194 -#: grub-core/commands/syslinuxcfg.c:200 grub-core/commands/syslinuxcfg.c:206 -#: grub-core/commands/testload.c:163 grub-core/efiemu/main.c:312 -#: grub-core/kern/emu/main.c:100 grub-core/kern/emu/main.c:103 -#: grub-core/loader/i386/bsd.c:2137 grub-core/loader/i386/bsd.c:2140 -#: grub-core/loader/i386/bsd.c:2143 -#: grub-core/loader/i386/coreboot/chainloader.c:505 -#: grub-core/loader/ia64/efi/linux.c:594 include/grub/util/install.h:32 -#: include/grub/util/install.h:64 util/grub-glue-efi.c:52 -#: util/grub-glue-efi.c:54 util/grub-glue-efi.c:56 util/grub-install.c:254 -#: util/grub-install.c:301 util/grub-mkfont.c:936 util/grub-mkimage.c:68 -#: util/grub-mkimage.c:74 util/grub-mkimage.c:76 util/grub-mkimage.c:78 -#: util/grub-mkimage.c:81 util/grub-mklayout.c:52 util/grub-mklayout.c:54 -#: util/grub-mkrescue.c:97 util/grub-mkrescue.c:101 util/grub-mkrescue.c:104 -#: util/grub-mkrescue.c:105 util/grub-mkrescue.c:106 -#: util/grub-mkstandalone.c:47 util/grub-mkstandalone.c:49 -#: util/grub-probe.c:732 util/grub-render-label.c:59 -#: util/grub-render-label.c:70 util/grub-render-label.c:72 util/grub-setup.c:78 -#: util/grub-setup.c:80 util/grub-setup.c:84 util/grub-syslinux2cfg.c:74 -#: util/grub-syslinux2cfg.c:147 -msgid "FILE" -msgstr "DOSIERO" - -#: grub-core/commands/blocklist.c:154 -msgid "Print a block list." -msgstr "Presi liston de blokoj." - -#: grub-core/commands/boot.c:147 grub-core/commands/legacycfg.c:533 -#: grub-core/commands/legacycfg.c:574 grub-core/loader/arm64/linux.c:250 -#: grub-core/loader/i386/bsd.c:1799 grub-core/loader/i386/bsd.c:1900 -#: grub-core/loader/i386/bsd.c:2007 grub-core/loader/i386/bsd.c:2040 -#: grub-core/loader/i386/bsd.c:2089 grub-core/loader/i386/linux.c:1047 -#: grub-core/loader/i386/pc/linux.c:406 grub-core/loader/i386/xen.c:775 -#: grub-core/loader/i386/xen.c:859 grub-core/loader/ia64/efi/linux.c:545 -#: grub-core/loader/mips/linux.c:432 grub-core/loader/multiboot.c:388 -#: grub-core/loader/powerpc/ieee1275/linux.c:347 -#: grub-core/loader/sparc64/ieee1275/linux.c:387 grub-core/loader/xnu.c:572 -#: grub-core/loader/xnu.c:665 grub-core/loader/xnu.c:781 -#: grub-core/loader/xnu.c:895 grub-core/loader/xnu.c:1091 -#: grub-core/loader/xnu.c:1258 grub-core/loader/xnu.c:1289 -#: grub-core/loader/xnu.c:1430 -msgid "you need to load the kernel first" -msgstr "unue vi Åargu la kernon" - -#: grub-core/commands/boot.c:189 -msgid "Boot an operating system." -msgstr "Startigi operaciumon." - -#: grub-core/commands/boottime.c:36 -#: grub-core/commands/i386/coreboot/cb_timestamps.c:108 -msgid "No boot time statistics is available\n" -msgstr "" - -#: grub-core/commands/boottime.c:59 -msgid "Show boot time statistics." -msgstr "" - -#: grub-core/commands/cacheinfo.c:40 -#, c-format -msgid "Disk cache statistics: hits = %lu (%lu.%02lu%%), misses = %lu\n" -msgstr "" - -#: grub-core/commands/cacheinfo.c:45 -msgid "No disk cache statistics available\n" -msgstr "" - -#: grub-core/commands/cacheinfo.c:56 -msgid "Get disk cache info." -msgstr "" - -#: grub-core/commands/cat.c:33 -msgid "Accept DOS-style CR/NL line endings." -msgstr "Akcepti DOS-specajn CR/NL-linfinojn." - -#: grub-core/commands/cat.c:163 grub-core/commands/minicmd.c:198 -msgid "Show the contents of a file." -msgstr "Montri la enhavon de dosiero." - -#: grub-core/commands/cmp.c:43 grub-core/commands/i386/pc/drivemap.c:239 -#: grub-core/commands/i386/wrmsr.c:60 grub-core/commands/iorw.c:85 -#: grub-core/commands/memrw.c:84 grub-core/commands/password.c:75 -#: grub-core/commands/password_pbkdf2.c:94 grub-core/commands/pgp.c:826 -#: grub-core/commands/regexp.c:113 grub-core/mmap/mmap.c:517 -#: grub-core/net/dns.c:639 -msgid "two arguments expected" -msgstr "atendis du argumentojn" - -#: grub-core/commands/cmp.c:45 -#, c-format -msgid "Compare file `%s' with `%s':\n" -msgstr "Kompari dosieron '%s' kun '%s':\n" - -#: grub-core/commands/cmp.c:54 -#, c-format -msgid "Files differ in size: %llu [%s], %llu [%s]\n" -msgstr "" - -#: grub-core/commands/cmp.c:81 -#, c-format -msgid "Files differ at the offset %llu: 0x%x [%s], 0x%x [%s]\n" -msgstr "" - -#. TRANSLATORS: it's always exactly 2 files. -#: grub-core/commands/cmp.c:93 -msgid "The files are identical.\n" -msgstr "La dosieroj estas identaj.\n" - -#: grub-core/commands/cmp.c:113 -msgid "FILE1 FILE2" -msgstr "DOSIERO1 DOSIERO2" - -#: grub-core/commands/cmp.c:113 -msgid "Compare two files." -msgstr "Kompari du dosierojn." - -#: grub-core/commands/configfile.c:65 -msgid "Load another config file." -msgstr "Åœargi alian agordan dosieron." - -#: grub-core/commands/configfile.c:69 grub-core/commands/configfile.c:87 -msgid "Load another config file without changing context." -msgstr "Åœargi alian agordodosieron sen ÅanÄi la kuntekston." - -#: grub-core/commands/configfile.c:75 -msgid "" -"Load another config file without changing context but take only menu entries." -msgstr "" -"Åœargi alian agordodosieron sen ÅanÄo de kunteksto sed kun nur menu-" -"elektebloj." - -#: grub-core/commands/configfile.c:81 -#, fuzzy -msgid "Load another config file but take only menu entries." -msgstr "" -"Åœargi alian agordodosieron sen ÅanÄo de kunteksto sed kun nur menu-" -"elektebloj." - -#: grub-core/commands/date.c:141 -msgid "[[year-]month-day] [hour:minute[:second]]" -msgstr "[[jaro-]monato-tago] [horo:minuto[:sekundo]]" - -#: grub-core/commands/date.c:142 -msgid "Display/set current datetime." -msgstr "" - -#: grub-core/commands/echo.c:30 -msgid "Do not output the trailing newline." -msgstr "Ne eligi finajn malplenajn liniojn." - -#: grub-core/commands/echo.c:31 -msgid "Enable interpretation of backslash escapes." -msgstr "Aktivigi interpretadon de retro-stangaj kombinaĵoj." - -#: grub-core/commands/echo.c:134 -msgid "[-e|-n] STRING" -msgstr "[-e|-n] SIGNOĈENO" - -#: grub-core/commands/echo.c:134 -msgid "Display a line of text." -msgstr "Montri linion da teksto." - -#: grub-core/commands/efi/efifwsetup.c:82 -msgid "Reboot into firmware setup menu." -msgstr "" - -#: grub-core/commands/efi/fixvideo.c:107 -msgid "Fix video problem." -msgstr "Korekti videobildan problemon." - -#: grub-core/commands/efi/loadbios.c:52 -msgid "ROM image is present." -msgstr "" - -#: grub-core/commands/efi/loadbios.c:70 -msgid "Can't enable ROM area." -msgstr "" - -#: grub-core/commands/efi/loadbios.c:209 -msgid "" -"Create BIOS-like structures for backward compatibility with existing OS." -msgstr "" - -#: grub-core/commands/efi/loadbios.c:214 -msgid "BIOS_DUMP [INT10_DUMP]" -msgstr "" - -#: grub-core/commands/efi/loadbios.c:215 -msgid "Load BIOS dump." -msgstr "Åœargi BIOS-nekropsion" - -#: grub-core/commands/efi/shim_lock.c:76 -#, c-format -msgid "module cannot be loaded in UEFI secure boot mode: %s" -msgstr "" - -#: grub-core/commands/efi/shim_lock.c:98 -#, c-format -msgid "cannot boot due to dangerous module in memory: %s" -msgstr "" - -#: grub-core/commands/efi/shim_lock.c:116 -msgid "bad shim signature" -msgstr "" - -#: grub-core/commands/efi/tpm.c:149 grub-core/commands/efi/tpm.c:189 -#: grub-core/commands/efi/tpm.c:256 grub-core/commands/efi/tpm.c:306 -#, fuzzy -msgid "Command failed" -msgstr "\"loopback\" komando fiaskis" - -#: grub-core/commands/efi/tpm.c:151 grub-core/commands/efi/tpm.c:191 -#: grub-core/commands/efi/tpm.c:258 grub-core/commands/efi/tpm.c:308 -#, fuzzy -msgid "Invalid parameter" -msgstr "nevalida parametro %s" - -#: grub-core/commands/efi/tpm.c:154 grub-core/commands/efi/tpm.c:194 -#: grub-core/commands/efi/tpm.c:261 grub-core/commands/efi/tpm.c:311 -msgid "Output buffer too small" -msgstr "" - -#: grub-core/commands/efi/tpm.c:156 grub-core/commands/efi/tpm.c:196 -#: grub-core/commands/efi/tpm.c:263 grub-core/commands/efi/tpm.c:313 -msgid "TPM unavailable" -msgstr "" - -#: grub-core/commands/efi/tpm.c:158 grub-core/commands/efi/tpm.c:198 -#: grub-core/commands/efi/tpm.c:265 grub-core/commands/efi/tpm.c:315 -#, fuzzy -msgid "Unknown TPM error" -msgstr "Nekonata kodo" - -#: grub-core/commands/efi/tpm.c:240 grub-core/commands/efi/tpm.c:288 -msgid "cannot allocate TPM event buffer" -msgstr "" - -#: grub-core/commands/eval.c:63 -#, fuzzy -msgid "STRING ..." -msgstr "SIGNOĈENO" - -#: grub-core/commands/eval.c:64 -msgid "Evaluate arguments as GRUB commands" -msgstr "" - -#: grub-core/commands/file.c:41 -msgid "Check if FILE can be booted as i386 PAE Xen unprivileged guest kernel" -msgstr "" - -#: grub-core/commands/file.c:44 -msgid "Check if FILE can be booted as x86_64 Xen unprivileged guest kernel" -msgstr "" - -#: grub-core/commands/file.c:46 -msgid "Check if FILE can be used as Xen x86 privileged guest kernel" -msgstr "" - -#: grub-core/commands/file.c:48 -#, fuzzy -msgid "Check if FILE can be used as x86 multiboot kernel" -msgstr "Åœargi multiboot-kernon." - -#: grub-core/commands/file.c:50 -#, fuzzy -msgid "Check if FILE can be used as x86 multiboot2 kernel" -msgstr "Åœargi multiboot-2-kernon." - -#: grub-core/commands/file.c:52 -msgid "Check if FILE is ARM Linux" -msgstr "" - -#: grub-core/commands/file.c:54 -msgid "Check if FILE is ARM64 Linux" -msgstr "" - -#: grub-core/commands/file.c:56 -msgid "Check if FILE is IA64 Linux" -msgstr "" - -#: grub-core/commands/file.c:58 -msgid "Check if FILE is MIPS Linux" -msgstr "" - -#: grub-core/commands/file.c:60 -msgid "Check if FILE is MIPSEL Linux" -msgstr "" - -#: grub-core/commands/file.c:62 -msgid "Check if FILE is SPARC64 Linux" -msgstr "" - -#: grub-core/commands/file.c:64 -msgid "Check if FILE is POWERPC Linux" -msgstr "" - -#: grub-core/commands/file.c:66 -msgid "Check if FILE is x86 Linux" -msgstr "" - -#: grub-core/commands/file.c:68 -msgid "Check if FILE is x86 Linux supporting 32-bit protocol" -msgstr "" - -#: grub-core/commands/file.c:70 -msgid "Check if FILE is x86 kFreeBSD" -msgstr "" - -#: grub-core/commands/file.c:72 -msgid "Check if FILE is i386 kFreeBSD" -msgstr "" - -#: grub-core/commands/file.c:74 -msgid "Check if FILE is x86_64 kFreeBSD" -msgstr "" - -#: grub-core/commands/file.c:77 -msgid "Check if FILE is x86 kNetBSD" -msgstr "" - -#: grub-core/commands/file.c:79 -msgid "Check if FILE is i386 kNetBSD" -msgstr "" - -#: grub-core/commands/file.c:81 -msgid "Check if FILE is x86_64 kNetBSD" -msgstr "" - -#: grub-core/commands/file.c:84 -msgid "Check if FILE is i386 EFI file" -msgstr "" - -#: grub-core/commands/file.c:86 -msgid "Check if FILE is x86_64 EFI file" -msgstr "" - -#: grub-core/commands/file.c:88 -msgid "Check if FILE is IA64 EFI file" -msgstr "" - -#: grub-core/commands/file.c:90 -msgid "Check if FILE is ARM64 EFI file" -msgstr "" - -#: grub-core/commands/file.c:92 -msgid "Check if FILE is ARM EFI file" -msgstr "" - -#: grub-core/commands/file.c:94 -msgid "Check if FILE is RISC-V 32bit EFI file" -msgstr "" - -#: grub-core/commands/file.c:96 -msgid "Check if FILE is RISC-V 64bit EFI file" -msgstr "" - -#: grub-core/commands/file.c:98 -msgid "Check if FILE is hiberfil.sys in hibernated state" -msgstr "" - -#: grub-core/commands/file.c:100 -msgid "Check if FILE is x86_64 XNU (Mac OS X kernel)" -msgstr "" - -#: grub-core/commands/file.c:102 -msgid "Check if FILE is i386 XNU (Mac OS X kernel)" -msgstr "" - -#: grub-core/commands/file.c:104 -msgid "Check if FILE is XNU (Mac OS X kernel) hibernated image" -msgstr "" - -#: grub-core/commands/file.c:106 -msgid "Check if FILE is BIOS bootsector" -msgstr "" - -#. TRANSLATORS: it's a standalone boolean value, -#. opposite of "true". -#: grub-core/commands/file.c:675 grub-core/commands/i386/cmostest.c:63 -#: grub-core/commands/i386/cpuid.c:71 grub-core/commands/keystatus.c:83 -#: grub-core/commands/keystatus.c:87 grub-core/commands/keystatus.c:96 -#: grub-core/commands/test.c:436 grub-core/commands/true.c:39 -#: grub-core/script/execute.c:247 grub-core/script/execute.c:1039 -msgid "false" -msgstr "false" - -#: grub-core/commands/file.c:684 -#, fuzzy -msgid "OPTIONS FILE" -msgstr "[OPCIOJ] TIPAR_DOSIEROJ" - -#: grub-core/commands/file.c:685 -msgid "Check if FILE is of specified type." -msgstr "" - -#. TRANSLATORS: It means that the specified partition e.g. -#. hd0,msdos1=/dev/sda1 doesn't exist. -#: grub-core/commands/gptsync.c:140 grub-core/kern/disk.c:258 -msgid "no such partition" -msgstr "" - -#: grub-core/commands/gptsync.c:240 -#, c-format -msgid "New MBR is written to `%s'\n" -msgstr "" - -#: grub-core/commands/gptsync.c:252 -msgid "DEVICE [PARTITION[+/-[TYPE]]] ..." -msgstr "APARATO [SUBDISKO[+/-[TIPO]]] ..." - -#. TRANSLATORS: MBR type is one-byte partition -#. type id. -#: grub-core/commands/gptsync.c:255 -msgid "" -"Fill hybrid MBR of GPT drive DEVICE. Specified partitions will be a part of " -"hybrid MBR. Up to 3 partitions are allowed. TYPE is an MBR type. + means " -"that partition is active. Only one partition can be active." -msgstr "" -"Plenigi hibridan MBR de GPT-aparato APARATO. Elektitaj subdiskoj estos parto " -"de hibrida MBR. Rajtas esti maksimume 3 subdiskoj. TIPO estas MBR-tipo. + " -"signifas ke subdisko estas aktiva. Nur unu subdisko povas esti aktiva." - -#: grub-core/commands/halt.c:40 -msgid "" -"Halts the computer. This command does not work on all firmware " -"implementations." -msgstr "" -"Haltigi la komputilon. Tiu ĉi komando funkcias ne kun ĉiuj firm-programaĵoj." - -#: grub-core/commands/hashsum.c:32 -msgid "Specify hash to use." -msgstr "Specifi uzendan haketon." - -#: grub-core/commands/hashsum.c:32 -msgid "HASH" -msgstr "HAKETO" - -#: grub-core/commands/hashsum.c:33 -msgid "Check hashes of files with hash list FILE." -msgstr "" - -#: grub-core/commands/hashsum.c:35 -msgid "Base directory for hash list." -msgstr "Baza dosierujo por haketlisto." - -#. TRANSLATORS: platform here isn't identifier. It can be translated. -#: grub-core/commands/hashsum.c:35 grub-core/commands/ls.c:150 -#: grub-core/commands/macbless.c:226 grub-core/commands/syslinuxcfg.c:51 -#: grub-core/commands/syslinuxcfg.c:54 grub-core/kern/emu/main.c:106 -#: include/grub/util/install.h:50 include/grub/util/install.h:53 -#: include/grub/util/install.h:56 include/grub/util/install.h:59 -#: util/grub-install.c:250 util/grub-install.c:252 util/grub-install.c:297 -#: util/grub-install.c:299 util/grub-mkimage.c:64 util/grub-mkimage.c:67 -#: util/grub-mknetdir.c:46 util/grub-mknetdir.c:48 util/grub-mkrescue.c:99 -#: util/grub-setup.c:82 util/grub-syslinux2cfg.c:63 util/grub-syslinux2cfg.c:65 -#: util/grub-syslinux2cfg.c:67 util/grub-syslinux2cfg.c:71 -msgid "DIR" -msgstr "DOSIERUJO" - -#: grub-core/commands/hashsum.c:37 -msgid "Don't stop after first error." -msgstr "Ne ĉesi post la unua eraro." - -#: grub-core/commands/hashsum.c:38 -msgid "Uncompress file before checksumming." -msgstr "Malkompaktigi dosieron antaÅ­ kalkulo de kontrolsumo." - -#: grub-core/commands/hashsum.c:163 -#, c-format -msgid "%s: READ ERROR\n" -msgstr "%s: LEGERARO\n" - -#: grub-core/commands/hashsum.c:177 -#, c-format -msgid "%s: HASH MISMATCH\n" -msgstr "%s: Haketo-miskongruo\n" - -#: grub-core/commands/hashsum.c:188 -#, c-format -msgid "%s: OK\n" -msgstr "%s: Akcepti\n" - -#: grub-core/commands/hashsum.c:282 -msgid "-h HASH [-c FILE [-p PREFIX]] [FILE1 [FILE2 ...]]" -msgstr "[-c DOSIERO [-p PREFIKSO]] [DOSIERO1 [DOSIERO2 ...]]" - -#. TRANSLATORS: "hash checksum" is just to -#. be a bit more precise, you can treat it as -#. just "hash". -#: grub-core/commands/hashsum.c:287 grub-core/commands/hashsum.c:292 -#: grub-core/commands/hashsum.c:297 grub-core/commands/hashsum.c:302 -#: grub-core/commands/hashsum.c:307 grub-core/commands/hashsum.c:313 -msgid "Compute or check hash checksum." -msgstr "Kalkuli aÅ­ kontroli haketan kontrolsumon." - -#: grub-core/commands/hashsum.c:290 grub-core/commands/hashsum.c:295 -#: grub-core/commands/hashsum.c:300 grub-core/commands/hashsum.c:305 -#: grub-core/commands/hashsum.c:311 -msgid "[-c FILE [-p PREFIX]] [FILE1 [FILE2 ...]]" -msgstr "[-c DOSIERO [-p PREFIKSO]] [DOSIERO1 [DOSIERO2 ...]]" - -#: grub-core/commands/hdparm.c:33 -msgid "" -"Set Advanced Power Management\n" -"(1=low, ..., 254=high, 255=off)." -msgstr "" -"Agordi altnivelan energi-mastrumadon\n" -"(1=malalta, ..., 254=alta, 255=malaktiva)." - -#: grub-core/commands/hdparm.c:36 -msgid "Display power mode." -msgstr "Montri energi-reÄimon." - -#: grub-core/commands/hdparm.c:37 -msgid "Freeze ATA security settings until reset." -msgstr "Frostigi sekurecagordojn de ATA Äis restartigo." - -#: grub-core/commands/hdparm.c:39 -msgid "Display SMART health status." -msgstr "Kontroli sanstaton de SMART." - -#: grub-core/commands/hdparm.c:40 -msgid "" -"Set Automatic Acoustic Management\n" -"(0=off, 128=quiet, ..., 254=fast)." -msgstr "" -"Agordi AÅ­tomatan Akustikan Mastrumadon\n" -"(0=for, 128=kvieta, ..., 254=rapida)." - -#: grub-core/commands/hdparm.c:43 -msgid "" -"Set standby timeout\n" -"(0=off, 1=5s, 2=10s, ..., 240=20m, 241=30m, ...)." -msgstr "" -"Agordi limtempon de preteco\n" -"(0=neaktiva, 1=5 sek, 2=10 sek, ..., 240=20 min, 241=30 min, ...)." - -#: grub-core/commands/hdparm.c:46 -msgid "Set drive to standby mode." -msgstr "Agordi aparaton al atendada reÄimo." - -#: grub-core/commands/hdparm.c:47 -msgid "Set drive to sleep mode." -msgstr "Agordi aparaton al dormeta reÄimo." - -#: grub-core/commands/hdparm.c:48 -msgid "Print drive identity and settings." -msgstr "Montri identon kaj agordojn de aparato." - -#: grub-core/commands/hdparm.c:50 -msgid "Show raw contents of ATA IDENTIFY sector." -msgstr "Montri krudan enhavon de ATA-IDENTIFY-sektoro." - -#: grub-core/commands/hdparm.c:52 -msgid "Disable/enable SMART (0/1)." -msgstr "ElÅalti/EnÅalti na SMART (0/1)" - -#: grub-core/commands/hdparm.c:53 -msgid "Do not print messages." -msgstr "Ne presi mesaÄojn." - -#: grub-core/commands/hdparm.c:286 grub-core/commands/i386/rdmsr.c:68 -#: grub-core/commands/iorw.c:47 grub-core/commands/legacycfg.c:760 -#: grub-core/commands/legacycfg.c:812 grub-core/commands/macbless.c:190 -#: grub-core/commands/memrw.c:47 grub-core/commands/pgp.c:738 -#: grub-core/commands/pgp.c:792 grub-core/commands/search.c:304 -#: grub-core/commands/search_wrap.c:179 grub-core/commands/setpci.c:243 -#: grub-core/commands/sleep.c:71 grub-core/fs/zfs/zfsinfo.c:279 -#: grub-core/fs/zfs/zfsinfo.c:358 grub-core/gettext/gettext.c:492 -#: grub-core/kern/corecmd.c:65 grub-core/kern/corecmd.c:79 -#: grub-core/mmap/mmap.c:430 grub-core/net/dns.c:713 grub-core/net/dns.c:745 -#: grub-core/net/net.c:694 grub-core/net/net.c:1052 -#: grub-core/normal/context.c:194 grub-core/script/execute.c:131 -#: grub-core/term/gfxterm_background.c:136 -msgid "one argument expected" -msgstr "atendis unu argumenton" - -#: grub-core/commands/hdparm.c:440 -msgid "[OPTIONS] DISK" -msgstr "[OPCIOJ] DISKO" - -#: grub-core/commands/hdparm.c:441 -msgid "Get/set ATA disk parameters." -msgstr "Akiri/agordi parametrojn de ATA-disko." - -#: grub-core/commands/help.c:132 grub-core/lib/arg.c:109 -#: grub-core/lib/gnulib/argp-help.c:1616 -msgid "Usage:" -msgstr "Uzado:" - -#: grub-core/commands/help.c:146 -msgid "[PATTERN ...]" -msgstr "[ÅœABLONO ...]" - -#: grub-core/commands/help.c:147 -msgid "Show a help message." -msgstr "Montri helpan mesaÄon." - -#: grub-core/commands/hexdump.c:31 -msgid "Skip offset bytes from the beginning of file." -msgstr "Transsalti \"offset\" da bajtoj komence de la dosiero." - -#: grub-core/commands/hexdump.c:33 -msgid "Read only LENGTH bytes." -msgstr "Legi nur bajtojn de longo LENGTH." - -#: grub-core/commands/hexdump.c:125 -msgid "[OPTIONS] FILE_OR_DEVICE" -msgstr "[OPCIOJ] DOSIERO_AŬ_APARATO" - -#: grub-core/commands/hexdump.c:126 -msgid "Show raw contents of a file or memory." -msgstr "Montri krudajn enhavojn de dosiero aÅ­ memoro." - -#: grub-core/commands/i386/cmosdump.c:58 -#, fuzzy -msgid "Show raw dump of the CMOS contents." -msgstr "Montri la enhavon de memoro." - -#: grub-core/commands/i386/cmostest.c:108 -#: grub-core/commands/i386/cmostest.c:111 -#: grub-core/commands/i386/cmostest.c:114 -msgid "BYTE:BIT" -msgstr "" - -#: grub-core/commands/i386/cmostest.c:109 -msgid "Test bit at BYTE:BIT in CMOS." -msgstr "" - -#: grub-core/commands/i386/cmostest.c:112 -msgid "Clear bit at BYTE:BIT in CMOS." -msgstr "" - -#. TRANSLATORS: A bit may be either set (1) or clear (0). -#: grub-core/commands/i386/cmostest.c:116 -msgid "Set bit at BYTE:BIT in CMOS." -msgstr "" - -#: grub-core/commands/i386/coreboot/cb_timestamps.c:120 -msgid "Show coreboot boot time statistics." -msgstr "" - -#: grub-core/commands/i386/coreboot/cbls.c:137 -#, fuzzy -msgid "List coreboot tables." -msgstr "Listigi la nunajn variablojn." - -#. TRANSLATORS: "(default)" at the end means that this option is used if -#. no argument is specified. -#: grub-core/commands/i386/cpuid.c:36 -msgid "Check if CPU supports 64-bit (long) mode (default)." -msgstr "" - -#: grub-core/commands/i386/cpuid.c:37 -msgid "Check if CPU supports Physical Address Extension." -msgstr "" - -#: grub-core/commands/i386/cpuid.c:119 -msgid "Check for CPU features." -msgstr "Kontroli por ĉefprocesoraj trajtoj." - -#. TRANSLATORS: In this file "mapping" refers to a change GRUB makes so if -#. your language doesn't have an equivalent of "mapping" you can -#. use the word like "rerouting". -#. -#: grub-core/commands/i386/pc/drivemap.c:43 -msgid "Show the current mappings." -msgstr "Montri la nunajn mapigojn." - -#: grub-core/commands/i386/pc/drivemap.c:44 -msgid "Reset all mappings to the default values." -msgstr "Agordi ĉiujn mapigojn al defaÅ­ltaj valoroj." - -#: grub-core/commands/i386/pc/drivemap.c:45 -msgid "Perform both direct and reverse mappings." -msgstr "Plenumi mapigojn kaj direktajn kaj inversajn." - -#: grub-core/commands/i386/pc/drivemap.c:184 -msgid "No drives have been remapped" -msgstr "" - -#. TRANSLATORS: This is the header of mapping list. -#. On the left is how OS will see the disks and -#. on the right current GRUB vision. -#: grub-core/commands/i386/pc/drivemap.c:191 -msgid "OS disk #num ------> GRUB/BIOS device" -msgstr "" - -#: grub-core/commands/i386/pc/drivemap.c:413 -msgid "-l | -r | [-s] grubdev osdisk." -msgstr "-l | -r | [-s] grubdev osdisk." - -#: grub-core/commands/i386/pc/drivemap.c:414 -msgid "Manage the BIOS drive mappings." -msgstr "Mastrumi la mapigojn de BIOS-datumportilo." - -#: grub-core/commands/i386/pc/halt.c:31 -msgid "Do not use APM to halt the computer." -msgstr "Ne uzi na APM por haltigi la komputilon." - -#: grub-core/commands/i386/pc/halt.c:119 -msgid "Halt the system, if possible using APM." -msgstr "Haltigi la sistemon, se eblas per APM." - -#: grub-core/commands/i386/pc/lsapm.c:75 -msgid "no APM found" -msgstr "" - -#: grub-core/commands/i386/pc/lsapm.c:77 -#, c-format -msgid "" -"Version %u.%u\n" -"32-bit CS = 0x%x, len = 0x%x, offset = 0x%x\n" -"16-bit CS = 0x%x, len = 0x%x\n" -"DS = 0x%x, len = 0x%x\n" -msgstr "" - -#: grub-core/commands/i386/pc/lsapm.c:86 -msgid "16-bit protected interface supported\n" -msgstr "" - -#: grub-core/commands/i386/pc/lsapm.c:87 -msgid "16-bit protected interface unsupported\n" -msgstr "" - -#: grub-core/commands/i386/pc/lsapm.c:89 -msgid "32-bit protected interface supported\n" -msgstr "" - -#: grub-core/commands/i386/pc/lsapm.c:90 -msgid "32-bit protected interface unsupported\n" -msgstr "" - -#: grub-core/commands/i386/pc/lsapm.c:92 -msgid "CPU Idle slows down processor\n" -msgstr "" - -#: grub-core/commands/i386/pc/lsapm.c:93 -msgid "CPU Idle doesn't slow down processor\n" -msgstr "" - -#: grub-core/commands/i386/pc/lsapm.c:95 -msgid "APM disabled\n" -msgstr "" - -#: grub-core/commands/i386/pc/lsapm.c:95 -msgid "APM enabled\n" -msgstr "" - -#: grub-core/commands/i386/pc/lsapm.c:97 -msgid "APM disengaged\n" -msgstr "" - -#: grub-core/commands/i386/pc/lsapm.c:97 -msgid "APM engaged\n" -msgstr "" - -#: grub-core/commands/i386/pc/lsapm.c:107 -msgid "Show APM information." -msgstr "Montri APM-informojn." - -#. TRANSLATORS: It's musical notes, not the notes -#. you take. Play command expects arguments which can -#. be either a filename or tempo+notes. -#. This error happens if none is specified. -#: grub-core/commands/i386/pc/play.c:88 -msgid "filename or tempo and notes expected" -msgstr "" - -#: grub-core/commands/i386/pc/play.c:113 grub-core/commands/i386/pc/play.c:144 -#, fuzzy, c-format -msgid "Invalid tempo in %s" -msgstr "Nevalida komando ‘%s’.\n" - -#: grub-core/commands/i386/pc/play.c:151 grub-core/commands/macbless.c:172 -#: grub-core/fs/archelp.c:260 grub-core/fs/bfs.c:621 grub-core/fs/bfs.c:704 -#: grub-core/fs/btrfs.c:1726 grub-core/fs/btrfs.c:1755 -#: grub-core/fs/btrfs.c:1799 grub-core/fs/btrfs.c:1882 -#: grub-core/fs/btrfs.c:1906 grub-core/fs/fshelp.c:257 grub-core/fs/jfs.c:696 -#: grub-core/fs/minix.c:426 grub-core/fs/ufs.c:544 grub-core/fs/zfs/zfs.c:2083 -#: grub-core/fs/zfs/zfs.c:2095 grub-core/fs/zfs/zfs.c:2301 -#: grub-core/net/http.c:120 -#, c-format -msgid "file `%s' not found" -msgstr "" - -#: grub-core/commands/i386/pc/play.c:162 grub-core/commands/i386/pc/play.c:171 -#: grub-core/kern/misc.c:419 grub-core/script/execute.c:138 -#: grub-core/script/execute.c:244 -msgid "unrecognized number" -msgstr "" - -#: grub-core/commands/i386/pc/play.c:190 -msgid "FILE | TEMPO [PITCH1 DURATION1] [PITCH2 DURATION2] ... " -msgstr "DOSIERO | RAPIDO [GRADO1 DAŬRO1] [GRADO2 DAŬRO2] ... " - -#: grub-core/commands/i386/pc/play.c:191 -msgid "Play a tune." -msgstr "Ludi sonon." - -#: grub-core/commands/i386/pc/sendkey.c:39 -msgid "set numlock mode" -msgstr "" - -#: grub-core/commands/i386/pc/sendkey.c:40 -msgid "set capslock mode" -msgstr "" - -#: grub-core/commands/i386/pc/sendkey.c:41 -msgid "set scrolllock mode" -msgstr "" - -#: grub-core/commands/i386/pc/sendkey.c:42 -msgid "set insert mode" -msgstr "" - -#: grub-core/commands/i386/pc/sendkey.c:43 -msgid "set pause mode" -msgstr "" - -#: grub-core/commands/i386/pc/sendkey.c:44 -msgid "press left shift" -msgstr "" - -#: grub-core/commands/i386/pc/sendkey.c:45 -msgid "press right shift" -msgstr "" - -#: grub-core/commands/i386/pc/sendkey.c:46 -msgid "press SysRq" -msgstr "" - -#: grub-core/commands/i386/pc/sendkey.c:47 -msgid "press NumLock key" -msgstr "" - -#: grub-core/commands/i386/pc/sendkey.c:48 -msgid "press CapsLock key" -msgstr "" - -#: grub-core/commands/i386/pc/sendkey.c:49 -msgid "press ScrollLock key" -msgstr "" - -#: grub-core/commands/i386/pc/sendkey.c:50 -msgid "press Insert key" -msgstr "" - -#: grub-core/commands/i386/pc/sendkey.c:51 -msgid "press left alt" -msgstr "" - -#: grub-core/commands/i386/pc/sendkey.c:52 -msgid "press right alt" -msgstr "" - -#: grub-core/commands/i386/pc/sendkey.c:53 -msgid "press left ctrl" -msgstr "" - -#: grub-core/commands/i386/pc/sendkey.c:54 -msgid "press right ctrl" -msgstr "" - -#: grub-core/commands/i386/pc/sendkey.c:55 -msgid "don't update LED state" -msgstr "" - -#: grub-core/commands/i386/pc/sendkey.c:372 -msgid "[KEYSTROKE1] [KEYSTROKE2] ..." -msgstr "" - -#. TRANSLATORS: It can emulate multiple -#. keypresses. -#: grub-core/commands/i386/pc/sendkey.c:375 -msgid "Emulate a keystroke sequence" -msgstr "" - -#: grub-core/commands/i386/rdmsr.c:37 grub-core/commands/iorw.c:34 -#: grub-core/commands/memrw.c:33 grub-core/commands/setpci.c:73 -msgid "Save read value into variable VARNAME." -msgstr "Konservi legitan valoron en variablon VARNOMO." - -#: grub-core/commands/i386/rdmsr.c:38 grub-core/commands/iorw.c:35 -#: grub-core/commands/memrw.c:34 grub-core/commands/probe.c:40 -#: grub-core/commands/search_wrap.c:40 grub-core/commands/setpci.c:74 -#: grub-core/commands/tr.c:32 -msgid "VARNAME" -msgstr "VARNOMO" - -#: grub-core/commands/i386/rdmsr.c:55 grub-core/commands/i386/rdmsr.c:60 -#: grub-core/commands/i386/rdmsr.c:65 grub-core/commands/i386/wrmsr.c:47 -#: grub-core/commands/i386/wrmsr.c:52 grub-core/commands/i386/wrmsr.c:57 -#, fuzzy -msgid "unsupported instruction" -msgstr "nesubtenata rapideco de seria pordo" - -#: grub-core/commands/i386/rdmsr.c:77 grub-core/commands/i386/wrmsr.c:69 -#: grub-core/commands/i386/wrmsr.c:77 grub-core/net/dns.c:727 -#, fuzzy -msgid "invalid argument" -msgstr "nevalida parametro %s" - -#: grub-core/commands/i386/rdmsr.c:94 grub-core/commands/memrw.c:125 -#: grub-core/commands/memrw.c:129 grub-core/commands/memrw.c:133 -msgid "ADDR" -msgstr "ADDR" - -#: grub-core/commands/i386/rdmsr.c:95 -msgid "Read a CPU model specific register." -msgstr "" - -#: grub-core/commands/i386/wrmsr.c:86 -#, fuzzy -msgid "ADDR VALUE" -msgstr "ADDR VALORO [MASKO]" - -#: grub-core/commands/i386/wrmsr.c:87 -msgid "Write a value to a CPU model specific register." -msgstr "" - -#: grub-core/commands/ieee1275/suspend.c:34 -msgid "Run `go' to resume GRUB." -msgstr "" - -#: grub-core/commands/ieee1275/suspend.c:45 -msgid "Return to IEEE1275 prompt." -msgstr "" - -#: grub-core/commands/iorw.c:123 grub-core/commands/iorw.c:127 -#: grub-core/commands/iorw.c:131 grub-core/gdb/gdb.c:79 -msgid "PORT" -msgstr "PORDO" - -#: grub-core/commands/iorw.c:123 -msgid "Read 8-bit value from PORT." -msgstr "Legi 8-bitan valoron el PORDO." - -#: grub-core/commands/iorw.c:127 -msgid "Read 16-bit value from PORT." -msgstr "Legi 16-bitan valoron el PORDO." - -#: grub-core/commands/iorw.c:131 -msgid "Read 32-bit value from PORT." -msgstr "Legi 32-bitan valoron el PORDO." - -#: grub-core/commands/iorw.c:135 grub-core/commands/iorw.c:139 -msgid "PORT VALUE [MASK]" -msgstr "PORDVALORO [MASKO]" - -#: grub-core/commands/iorw.c:136 -msgid "Write 8-bit VALUE to PORT." -msgstr "Skribi 8-bitan VALOROn al PORDO." - -#: grub-core/commands/iorw.c:140 -msgid "Write 16-bit VALUE to PORT." -msgstr "Skribi 16-bitan VALOROn al PORDO." - -#: grub-core/commands/iorw.c:143 grub-core/commands/memrw.c:137 -#: grub-core/commands/memrw.c:141 grub-core/commands/memrw.c:145 -msgid "ADDR VALUE [MASK]" -msgstr "ADDR VALORO [MASKO]" - -#: grub-core/commands/iorw.c:144 -msgid "Write 32-bit VALUE to PORT." -msgstr "Skribi 32-bitan VALOROn al PORDO." - -#: grub-core/commands/keylayouts.c:215 grub-core/commands/loadenv.c:61 -#: grub-core/commands/nativedisk.c:189 grub-core/efiemu/main.c:235 -#: grub-core/font/font.c:428 grub-core/gfxmenu/gfxmenu.c:63 -#: grub-core/kern/device.c:42 grub-core/kern/dl.c:740 -#, c-format -msgid "variable `%s' isn't set" -msgstr "" - -#: grub-core/commands/keylayouts.c:301 -msgid "Load a keyboard layout." -msgstr "Åœargi klavarfasonon." - -#. TRANSLATORS: "Check" in a sense that if this key is pressed then -#. "true" is returned, otherwise "false". -#: grub-core/commands/keystatus.c:32 -msgid "Check Shift key." -msgstr "Kontroli majuskligan klavon." - -#: grub-core/commands/keystatus.c:33 -msgid "Check Control key." -msgstr "Kontroli stirklavon." - -#: grub-core/commands/keystatus.c:34 -msgid "Check Alt key." -msgstr "Kontroli Alt-klavon." - -#. TRANSLATORS: there are 3 modifiers. -#: grub-core/commands/keystatus.c:106 -msgid "Check key modifier status." -msgstr "Kontroli staton de klavmodifilo." - -#: grub-core/commands/legacycfg.c:512 grub-core/commands/legacycfg.c:526 -#: grub-core/commands/legacycfg.c:546 grub-core/commands/legacycfg.c:559 -#: grub-core/commands/time.c:43 grub-core/script/function.c:109 -#: util/grub-file.c:100 util/grub-fstest.c:57 util/grub-mount.c:69 -#, c-format -msgid "can't find command `%s'" -msgstr "ne eblas trovi komandon ‘%s’" - -#: grub-core/commands/legacycfg.c:813 grub-core/normal/auth.c:225 -#: util/grub-mkpasswd-pbkdf2.c:139 -msgid "Enter password: " -msgstr "Entajpu pasvorton:" - -#. TRANSLATORS: "legacy config" means -#. "config as used by grub-legacy". -#: grub-core/commands/legacycfg.c:837 -msgid "Parse legacy config in same context" -msgstr "Sintakse analizi heredaĵagordojn en sama kunteksto" - -#: grub-core/commands/legacycfg.c:842 -msgid "Parse legacy config in new context" -msgstr "Sintakse analizi heredaĵagordojn en nova kunteksto" - -#: grub-core/commands/legacycfg.c:847 -msgid "Parse legacy config in same context taking only menu entries" -msgstr "" - -#: grub-core/commands/legacycfg.c:852 -msgid "Parse legacy config in new context taking only menu entries" -msgstr "" - -#: grub-core/commands/legacycfg.c:856 -msgid "[--no-mem-option] [--type=TYPE] FILE [ARG ...]" -msgstr "[--no-mem-option] [--type=SPECO] DOSIERO [ARG ...]" - -#: grub-core/commands/legacycfg.c:857 -msgid "Simulate grub-legacy `kernel' command" -msgstr "Simuli komandon »kernel« kiel en grub-heredaĵo" - -#: grub-core/commands/legacycfg.c:861 grub-core/commands/legacycfg.c:865 -msgid "FILE [ARG ...]" -msgstr "DOSIERO [ARG ...]" - -#: grub-core/commands/legacycfg.c:862 -msgid "Simulate grub-legacy `initrd' command" -msgstr "Simuli initrd-komandon de grub-heredaĵo" - -#: grub-core/commands/legacycfg.c:866 -msgid "Simulate grub-legacy `modulenounzip' command" -msgstr "Simuli ‘modulenounzip’-komandon de grub-heredaĵo" - -#: grub-core/commands/legacycfg.c:870 grub-core/commands/legacycfg.c:875 -msgid "[--md5] PASSWD [FILE]" -msgstr "[--md5] PASVORTO [DOSIERO]" - -#: grub-core/commands/legacycfg.c:871 -msgid "Simulate grub-legacy `password' command" -msgstr "Sumuli pasvort-komandon de grub-heredaĵo" - -#: grub-core/commands/legacycfg.c:876 -msgid "Simulate grub-legacy `password' command in menu entry mode" -msgstr "Simuli pasvortkomandon de grub-heredaĵo en reÄimo menuenigo" - -#. TRANSLATORS: This option is used to override default filename -#. for loading and storing environment. -#: grub-core/commands/loadenv.c:37 -msgid "Specify filename." -msgstr "Specifi dosiernomon." - -#: grub-core/commands/loadenv.c:39 -msgid "Skip signature-checking of the environment file." -msgstr "" - -#: grub-core/commands/loadenv.c:451 -#, fuzzy -msgid "[-f FILE] [-s|--skip-sig] [variable_name_to_whitelist] [...]" -msgstr "[-f DOSIERO] variabla_nomo [...]" - -#: grub-core/commands/loadenv.c:452 -msgid "Load variables from environment block file." -msgstr "Åœargi variablojn el ĉirkaÅ­aĵa blokdosiero." - -#: grub-core/commands/loadenv.c:455 -msgid "[-f FILE]" -msgstr "[-f DOSIERO]" - -#: grub-core/commands/loadenv.c:456 -msgid "List variables from environment block file." -msgstr "Listigi variablojn el ĉirkaÅ­aĵa blokdosiero." - -#: grub-core/commands/loadenv.c:460 -msgid "[-f FILE] variable_name [...]" -msgstr "[-f DOSIERO] variabla_nomo [...]" - -#: grub-core/commands/loadenv.c:461 -msgid "Save variables to environment block file." -msgstr "Konservi variablojn al ĉirkaÅ­aĵa blokdosiero." - -#: grub-core/commands/ls.c:40 -msgid "Show a long list with more detailed information." -msgstr "Montri longan liston kun pli detalaj informoj." - -#: grub-core/commands/ls.c:41 -msgid "Print sizes in a human readable format." -msgstr "Montri grandojn en home legebla formo." - -#: grub-core/commands/ls.c:42 -msgid "List all files." -msgstr "Listigi ĉiujn dosierojn." - -#: grub-core/commands/ls.c:73 -msgid "Network protocols:" -msgstr "" - -#: grub-core/commands/ls.c:295 -msgid "[-l|-h|-a] [FILE ...]" -msgstr "[-l|-h|-a] [DOSIERO ...]" - -#: grub-core/commands/ls.c:296 -msgid "List devices and files." -msgstr "Listigi aparatojn kaj dosierojn." - -#: grub-core/commands/lsacpi.c:255 -msgid "Show version 1 tables only." -msgstr "Montri nur versio-1-tabelojn." - -#: grub-core/commands/lsacpi.c:256 -msgid "Show version 2 and version 3 tables only." -msgstr "Montri nur versio-2- kaj versio-3-tabelojn." - -#: grub-core/commands/lsacpi.c:306 -msgid "Show ACPI information." -msgstr "Montri ACPI-informojn." - -#: grub-core/commands/lsmmap.c:31 -msgid "available RAM" -msgstr "" - -#: grub-core/commands/lsmmap.c:32 -msgid "reserved RAM" -msgstr "" - -#. TRANSLATORS: this refers to memory where ACPI tables are stored -#. and which can be used by OS once it loads ACPI tables. -#: grub-core/commands/lsmmap.c:35 -msgid "ACPI reclaimable RAM" -msgstr "" - -#. TRANSLATORS: this refers to memory which ACPI-compliant OS -#. is required to save accross hibernations. -#: grub-core/commands/lsmmap.c:38 -msgid "ACPI non-volatile storage RAM" -msgstr "" - -#: grub-core/commands/lsmmap.c:39 -msgid "faulty RAM (BadRAM)" -msgstr "" - -#: grub-core/commands/lsmmap.c:40 -msgid "persistent RAM" -msgstr "" - -#: grub-core/commands/lsmmap.c:41 -msgid "persistent RAM (legacy)" -msgstr "" - -#: grub-core/commands/lsmmap.c:42 -msgid "RAM holding coreboot tables" -msgstr "" - -#: grub-core/commands/lsmmap.c:43 -msgid "RAM holding firmware code" -msgstr "" - -#: grub-core/commands/lsmmap.c:52 -#, c-format -msgid "base_addr = 0x%llx, length = 0x%llx, %s\n" -msgstr "" - -#: grub-core/commands/lsmmap.c:55 -#, c-format -msgid "base_addr = 0x%llx, length = 0x%llx, type = 0x%x\n" -msgstr "" - -#: grub-core/commands/lsmmap.c:79 -msgid "List memory map provided by firmware." -msgstr "Listigi memormapon provizitan de firmprogramo." - -#: grub-core/commands/lspci.c:232 -msgid "List PCI devices." -msgstr "Listigi PCI-aparatojn." - -#: grub-core/commands/macbless.c:224 -msgid "Bless FILE of HFS or HFS+ partition for intel macs." -msgstr "" - -#: grub-core/commands/macbless.c:228 -msgid "Bless DIR of HFS or HFS+ partition for PPC macs." -msgstr "" - -#: grub-core/commands/memrw.c:125 -msgid "Read 8-bit value from ADDR." -msgstr "Legi 8-bitan valoron de ADDR." - -#: grub-core/commands/memrw.c:129 -msgid "Read 16-bit value from ADDR." -msgstr "Legi 16-bitan valoron de ADDR." - -#: grub-core/commands/memrw.c:133 -msgid "Read 32-bit value from ADDR." -msgstr "Legi 32-bitan valoron de ADDR." - -#: grub-core/commands/memrw.c:138 -msgid "Write 8-bit VALUE to ADDR." -msgstr "Skribi 8-bitan valoron al ADDR." - -#: grub-core/commands/memrw.c:142 -msgid "Write 16-bit VALUE to ADDR." -msgstr "Skribi 16-bitan valoron al ADDR." - -#: grub-core/commands/memrw.c:146 -msgid "Write 32-bit VALUE to ADDR." -msgstr "Skribi 32-bitan valoron al ADDR." - -#: grub-core/commands/menuentry.c:31 -msgid "Menu entry type." -msgstr "Tipo de menuenigo." - -#: grub-core/commands/menuentry.c:31 grub-core/commands/menuentry.c:38 -#: grub-core/commands/menuentry.c:39 grub-core/gettext/gettext.c:520 -#: util/grub-fstest.c:520 util/grub-install.c:291 util/grub-install.c:304 -#: util/grub-mknetdir.c:51 util/grub-mkrescue.c:109 util/grub-mkrescue.c:110 -#: util/grub-mount.c:453 util/grub-render-label.c:65 -msgid "STRING" -msgstr "SIGNOĈENO" - -#: grub-core/commands/menuentry.c:33 -msgid "List of users allowed to boot this entry." -msgstr "Listo de uzantoj kiuj rajtas startigi tiun eron." - -#: grub-core/commands/menuentry.c:33 -msgid "USERNAME[,USERNAME]" -msgstr "" - -#: grub-core/commands/menuentry.c:36 -msgid "Keyboard key to quickly boot this entry." -msgstr "" - -#: grub-core/commands/menuentry.c:36 -msgid "KEYBOARD_KEY" -msgstr "" - -#: grub-core/commands/menuentry.c:38 -msgid "Use STRING as menu entry body." -msgstr "" - -#: grub-core/commands/menuentry.c:39 -msgid "Menu entry identifier." -msgstr "Identigilo de menuenigo." - -#. TRANSLATORS: menu entry can either be bootable by anyone or only by -#. handful of users. By default when security is active only superusers can -#. boot a given menu entry. With --unrestricted (this option) -#. anyone can boot it. -#: grub-core/commands/menuentry.c:44 -msgid "This entry can be booted by any user." -msgstr "" - -#: grub-core/commands/menuentry.c:323 grub-core/commands/menuentry.c:328 -#: grub-core/tests/test_blockarg.c:46 -msgid "BLOCK" -msgstr "BLOKO" - -#: grub-core/commands/menuentry.c:323 -msgid "Define a menu entry." -msgstr "Difini menueron." - -#: grub-core/commands/menuentry.c:328 -msgid "Define a submenu." -msgstr "Difini submenuon." - -#. TRANSLATORS: this is module list header. Name -#. is module name, Ref Count is a reference counter -#. (how many modules or open descriptors use it). -#. Dependencies are the other modules it uses. -#. -#: grub-core/commands/minicmd.c:162 -msgid "Name\tRef Count\tDependencies\n" -msgstr "" - -#: grub-core/commands/minicmd.c:201 -msgid "Show this message." -msgstr "Montri tiun mesaÄon." - -#: grub-core/commands/minicmd.c:204 -msgid "ADDR [SIZE]" -msgstr "" - -#: grub-core/commands/minicmd.c:204 -msgid "Show memory contents." -msgstr "Montri la enhavon de memoro." - -#: grub-core/commands/minicmd.c:207 grub-core/kern/corecmd.c:188 -#: util/grub-install.c:275 -msgid "MODULE" -msgstr "MODULO" - -#: grub-core/commands/minicmd.c:207 -msgid "Remove a module." -msgstr "Forigi modulon." - -#: grub-core/commands/minicmd.c:210 -msgid "Show loaded modules." -msgstr "Montri Åargitajn modulojn." - -#: grub-core/commands/minicmd.c:213 -msgid "Exit from GRUB." -msgstr "Eliri el Grubo." - -#: grub-core/commands/mips/loongson/lsspd.c:42 -msgid "No CS5536 found" -msgstr "" - -#: grub-core/commands/mips/loongson/lsspd.c:45 -#, c-format -msgid "CS5536 at %d:%d.%d\n" -msgstr "" - -#. TRANSLATORS: System management bus is often used to access components like -#. RAM (info only, not data) or batteries. I/O space is where in memory -#. its ports are. -#: grub-core/commands/mips/loongson/lsspd.c:55 -#, c-format -msgid "System management bus controller I/O space is at 0x%x\n" -msgstr "" - -#. TRANSLATORS: it's shown in a report in a way -#. like number 1: ... number 2: ... -#. -#: grub-core/commands/mips/loongson/lsspd.c:66 -#, c-format -msgid "RAM slot number %d\n" -msgstr "" - -#: grub-core/commands/mips/loongson/lsspd.c:73 -#, c-format -msgid "Written SPD bytes: %d B.\n" -msgstr "" - -#: grub-core/commands/mips/loongson/lsspd.c:74 -#, c-format -msgid "Total flash size: %d B.\n" -msgstr "" - -#: grub-core/commands/mips/loongson/lsspd.c:79 -msgid "Memory type: DDR2." -msgstr "" - -#: grub-core/commands/mips/loongson/lsspd.c:83 -#, c-format -msgid "Part no: %s.\n" -msgstr "Parto-nr.: %s.\n" - -#: grub-core/commands/mips/loongson/lsspd.c:86 -msgid "Memory type: Unknown." -msgstr "" - -#: grub-core/commands/mips/loongson/lsspd.c:97 -msgid "Print Memory information." -msgstr "Montri memoro-informojn." - -#: grub-core/commands/nativedisk.c:118 grub-core/commands/probe.c:118 -#: grub-core/commands/probe.c:124 util/grub-probe.c:450 -#, c-format -msgid "%s does not support UUIDs" -msgstr "" - -#: grub-core/commands/nativedisk.c:325 -msgid "[MODULE1 MODULE2 ...]" -msgstr "" - -#: grub-core/commands/nativedisk.c:326 -msgid "" -"Switch to native disk drivers. If no modules are specified default set (pata," -"ahci,usbms,ohci,uhci,ehci) is used" -msgstr "" - -#: grub-core/commands/parttool.c:40 -msgid "" -"Perform COMMANDS on partition.\n" -"Use `parttool PARTITION help' for the list of available commands." -msgstr "" - -#: grub-core/commands/parttool.c:123 -msgid "=VAL" -msgstr "" - -#: grub-core/commands/parttool.c:136 -#, c-format -msgid "Sorry, no parttool is available for %s\n" -msgstr "" - -#: grub-core/commands/parttool.c:288 grub-core/lib/arg.c:285 -#: grub-core/lib/arg.c:351 -#, c-format -msgid "unknown argument `%s'" -msgstr "nekonata argumento '%s'" - -#: grub-core/commands/parttool.c:344 -msgid "PARTITION COMMANDS" -msgstr "SUBDISKAJ KOMANDOJ" - -#: grub-core/commands/password.c:85 -msgid "USER PASSWORD" -msgstr "UZANTPASVORTO" - -#: grub-core/commands/password.c:86 -msgid "Set user password (plaintext). Unrecommended and insecure." -msgstr "Agordi uzantpasvorton (simpla teksto). Nerekomendate kaj nesekure." - -#. TRANSLATORS: it means that the string which -#. was supposed to be a password hash doesn't -#. have a correct format, not to password -#. mismatch. -#: grub-core/commands/password_pbkdf2.c:98 -#: grub-core/commands/password_pbkdf2.c:115 -#: grub-core/commands/password_pbkdf2.c:123 -#: grub-core/commands/password_pbkdf2.c:150 -#: grub-core/commands/password_pbkdf2.c:179 -msgid "invalid PBKDF2 password" -msgstr "" - -#: grub-core/commands/password_pbkdf2.c:202 -msgid "USER PBKDF2_PASSWORD" -msgstr "UZANTO PBKDF2_PASVORTO" - -#: grub-core/commands/password_pbkdf2.c:203 -msgid "Set user password (PBKDF2). " -msgstr "Agordi pasvorton por uzanto (PBKDF2). " - -#: grub-core/commands/pcidump.c:39 grub-core/commands/setpci.c:69 -msgid "Select device by vendor and device IDs." -msgstr "" - -#: grub-core/commands/pcidump.c:40 grub-core/commands/setpci.c:70 -msgid "[vendor]:[device]" -msgstr "" - -#: grub-core/commands/pcidump.c:41 grub-core/commands/setpci.c:71 -msgid "Select device by its position on the bus." -msgstr "" - -#: grub-core/commands/pcidump.c:42 grub-core/commands/setpci.c:72 -msgid "[bus]:[slot][.func]" -msgstr "" - -#: grub-core/commands/pcidump.c:109 grub-core/commands/pcidump.c:138 -#: grub-core/commands/setpci.c:183 grub-core/commands/setpci.c:214 -#: grub-core/fs/zfs/zfs.c:3794 grub-core/kern/emu/hostdisk.c:458 -#: grub-core/kern/emu/hostdisk.c:473 grub-core/kern/file.c:44 -#, c-format -msgid "missing `%c' symbol" -msgstr "" - -#: grub-core/commands/pcidump.c:168 -#, fuzzy -msgid "[-s POSITION] [-d DEVICE]" -msgstr "[OPCIO]... [VOJO|APARATO]" - -#: grub-core/commands/pcidump.c:169 -msgid "Show raw dump of the PCI configuration space." -msgstr "" - -#: grub-core/commands/pgp.c:45 -msgid "Skip signature-checking of the public key file." -msgstr "" - -#. TRANSLATORS: it's about GNUPG signatures. -#: grub-core/commands/pgp.c:71 grub-core/commands/pgp.c:81 -#: grub-core/commands/pgp.c:86 grub-core/commands/pgp.c:96 -#: grub-core/commands/pgp.c:103 grub-core/commands/pgp.c:107 -#: grub-core/commands/pgp.c:114 grub-core/commands/pgp.c:119 -#: grub-core/commands/pgp.c:124 grub-core/commands/pgp.c:128 -#: grub-core/commands/pgp.c:268 grub-core/commands/pgp.c:276 -#: grub-core/commands/pgp.c:281 grub-core/commands/pgp.c:289 -#: grub-core/commands/pgp.c:320 grub-core/commands/pgp.c:327 -#: grub-core/commands/pgp.c:332 grub-core/commands/pgp.c:342 -#: grub-core/commands/pgp.c:468 grub-core/commands/pgp.c:471 -#: grub-core/commands/pgp.c:474 grub-core/commands/pgp.c:477 -#: grub-core/commands/pgp.c:484 grub-core/commands/pgp.c:490 -#: grub-core/commands/pgp.c:665 -msgid "bad signature" -msgstr "" - -#. TRANSLATORS: %08x is 32-bit key id. -#: grub-core/commands/pgp.c:636 grub-core/commands/pgp.c:812 -#, c-format -msgid "public key %08x not found" -msgstr "" - -#: grub-core/commands/pgp.c:651 grub-core/disk/diskfilter.c:772 -#: grub-core/disk/diskfilter.c:782 grub-core/fs/ntfs.c:404 -#: grub-core/fs/zfs/zfs.c:1933 grub-core/normal/menu.c:428 -#, c-format -msgid "module `%s' isn't loaded" -msgstr "" - -#: grub-core/commands/pgp.c:994 -msgid "[-s|--skip-sig] FILE SIGNATURE_FILE [PUBKEY_FILE]" -msgstr "" - -#: grub-core/commands/pgp.c:995 -msgid "Verify detached signature." -msgstr "" - -#: grub-core/commands/pgp.c:998 -msgid "[-s|--skip-sig] PUBKEY_FILE" -msgstr "" - -#: grub-core/commands/pgp.c:999 -msgid "Add PUBKEY_FILE to trusted keys." -msgstr "" - -#: grub-core/commands/pgp.c:1003 -msgid "Show the list of trusted keys." -msgstr "" - -#: grub-core/commands/pgp.c:1005 -msgid "PUBKEY_ID" -msgstr "" - -#: grub-core/commands/pgp.c:1006 -msgid "Remove PUBKEY_ID from trusted keys." -msgstr "" - -#: grub-core/commands/probe.c:40 grub-core/commands/tr.c:32 -msgid "Set a variable to return value." -msgstr "" - -#. TRANSLATORS: It's a driver that is currently in use to access -#. the diven disk. -#: grub-core/commands/probe.c:43 -msgid "Determine driver." -msgstr "Determini pelilon." - -#: grub-core/commands/probe.c:44 -msgid "Determine partition map type." -msgstr "Determini subdiskmapan tipon." - -#: grub-core/commands/probe.c:45 -msgid "Determine filesystem type." -msgstr "Determini dosiersisteman tipon." - -#: grub-core/commands/probe.c:46 -msgid "Determine filesystem UUID." -msgstr "Determini na UUID de dosiersistemo." - -#: grub-core/commands/probe.c:47 -msgid "Determine filesystem label." -msgstr "Determini dosiersisteman etikedon." - -#: grub-core/commands/probe.c:139 grub-core/commands/probe.c:146 -#: util/grub-probe.c:462 -#, c-format -msgid "filesystem `%s' does not support labels" -msgstr "" - -#: grub-core/commands/probe.c:165 grub-core/fs/zfs/zfsinfo.c:430 -#: grub-core/loader/i386/bsd.c:169 util/grub-setup.c:223 -msgid "DEVICE" -msgstr "APARATO" - -#: grub-core/commands/probe.c:166 -msgid "Retrieve device info." -msgstr "Ricevi aparatinformojn." - -#: grub-core/commands/read.c:85 -msgid "[ENVVAR]" -msgstr "[ENVVAR]" - -#: grub-core/commands/read.c:86 -msgid "Set variable with user input." -msgstr "Agordi variablon kun uzanto-enigo." - -#: grub-core/commands/reboot.c:40 -msgid "Reboot the computer." -msgstr "Restartigi la komputilon." - -#. TRANSLATORS: in regexp you can mark some -#. groups with parentheses. These groups are -#. then numbered and you can save some of -#. them in variables. In other programs -#. those components aree often referenced with -#. back slash, e.g. \1. Compare -#. sed -e 's,\([a-z][a-z]*\),lowercase=\1,g' -#. The whole matching component is saved in VARNAME, not its number. -#. -#: grub-core/commands/regexp.c:44 -msgid "Store matched component NUMBER in VARNAME." -msgstr "" - -#: grub-core/commands/regexp.c:45 -msgid "[NUMBER:]VARNAME" -msgstr "[NUMERO:]VARNOMO" - -#. TRANSLATORS: This are two arguments. So it's -#. two separate units to translate and pay -#. attention not to reverse them. -#: grub-core/commands/regexp.c:157 -msgid "REGEXP STRING" -msgstr "REGEXP SIGNOĈENO" - -#: grub-core/commands/regexp.c:158 -msgid "Test if REGEXP matches STRING." -msgstr "Testi ĉu REGESPR egalas al SIGNOĈENO." - -#: grub-core/commands/search.c:324 -msgid "NAME [VARIABLE] [HINTS]" -msgstr "NOMO [VARIABLO] [SUGESTOJ]" - -#: grub-core/commands/search_file.c:4 -msgid "" -"Search devices by file. If VARIABLE is specified, the first device found is " -"set to a variable." -msgstr "" -"Serĉi aparatojn perdosiere. Se VARIABLO estas specifita, la unue trovita " -"aparato estas agordita al variablo." - -#: grub-core/commands/search_label.c:4 -msgid "" -"Search devices by label. If VARIABLE is specified, the first device found is " -"set to a variable." -msgstr "" -"Serĉi aparatojn peretikede. Se VARIABLO estas specifita, la unue trovita " -"aparato estas agordita al variablo." - -#: grub-core/commands/search_uuid.c:4 -msgid "" -"Search devices by UUID. If VARIABLE is specified, the first device found is " -"set to a variable." -msgstr "" -"Serĉi aparatojn per UUID. Se VARIABLO estas specifita, la unue trovita " -"aparato estas agordita al variablo." - -#: grub-core/commands/search_wrap.c:34 -msgid "Search devices by a file." -msgstr "Serĉu aparatojn per dosiero." - -#: grub-core/commands/search_wrap.c:35 -msgid "Search devices by a filesystem label." -msgstr "Serĉu aparatojn per etikedo de dosiersistemo." - -#: grub-core/commands/search_wrap.c:37 -msgid "Search devices by a filesystem UUID." -msgstr "Serĉu aparatojn per UUID de dosiersistemo." - -#: grub-core/commands/search_wrap.c:40 -msgid "Set a variable to the first device found." -msgstr "Agordi variablon al la unue trovita aparato" - -#: grub-core/commands/search_wrap.c:42 -msgid "Do not probe any floppy drive." -msgstr "Ne sondi ajnan disketilon." - -#: grub-core/commands/search_wrap.c:44 -msgid "" -"First try the device HINT. If HINT ends in comma, also try subpartitions" -msgstr "" -"Unue provi la aparaton SUGESTO. Se SUGESTO finas je komo, provi ankaÅ­ " -"subdiskojn." - -#: grub-core/commands/search_wrap.c:45 grub-core/commands/search_wrap.c:49 -#: grub-core/commands/search_wrap.c:53 grub-core/commands/search_wrap.c:57 -#: grub-core/commands/search_wrap.c:61 grub-core/commands/search_wrap.c:65 -msgid "HINT" -msgstr "SUGESTO" - -#: grub-core/commands/search_wrap.c:47 -msgid "" -"First try the device HINT if currently running on IEEE1275. If HINT ends in " -"comma, also try subpartitions" -msgstr "" -"Unue provi la aparaton SUGESTO (je IEEE1275). Se SUGESTO finas je komo, " -"provi ankaÅ­ subdiskojn." - -#: grub-core/commands/search_wrap.c:51 -msgid "" -"First try the device HINT if currently running on BIOS. If HINT ends in " -"comma, also try subpartitions" -msgstr "" -"Unue provi la aparaton SUGESTO (je BIOS). Se SUGESTO finas je komo, provi " -"ankaÅ­ subdiskojn." - -#: grub-core/commands/search_wrap.c:55 -#, fuzzy -msgid "" -"First try the device HINT if direct hardware access is supported. If HINT " -"ends in comma, also try subpartitions" -msgstr "" -"Unue provi la aparaton SUGESTO. Se SUGESTO finas je komo, provi ankaÅ­ " -"subdiskojn." - -#: grub-core/commands/search_wrap.c:59 -msgid "" -"First try the device HINT if currently running on EFI. If HINT ends in " -"comma, also try subpartitions" -msgstr "" -"Unue provi la aparaton SUGESTO (je EFI). Se SUGESTO finas je komo, provi " -"ankaÅ­ subdiskojn." - -#: grub-core/commands/search_wrap.c:63 -msgid "" -"First try the device HINT if currently running on ARC. If HINT ends in " -"comma, also try subpartitions" -msgstr "" -"Unue provi la aparaton SUGESTO (je ARC). Se SUGESTO finas je komo, provi " -"ankaÅ­ subdiskojn." - -#: grub-core/commands/search_wrap.c:207 -msgid "[-f|-l|-u|-s|-n] [--hint HINT [--hint HINT] ...] NAME" -msgstr "[-f|-l|-u|-s|-n] [--hint SUGESTO [--hint SUGESTO] ...] NOMO" - -#: grub-core/commands/search_wrap.c:209 -msgid "" -"Search devices by file, filesystem label or filesystem UUID. If --set is " -"specified, the first device found is set to a variable. If no variable name " -"is specified, `root' is used." -msgstr "" -"Serĉi aparatojn per dosiero, dosiersistema etikedo aÅ­ UUID de dosiersistemo. " -"Se --set estas specifita la unue trovita dosiero estas agordota al variablo. " -"Se neniu variablo-nomo estas specifita, \"ĉefuzanto\" estas uzota." - -#: grub-core/commands/setpci.c:132 -#, c-format -msgid "Register %x of %x:%02x.%x is %x\n" -msgstr "" - -#: grub-core/commands/setpci.c:333 -#, fuzzy -msgid "[-s POSITION] [-d DEVICE] [-v VAR] REGISTER[=VALUE[:MASK]]" -msgstr "[-s POZICIO] [-d APARATO [-v VARIABLO] [REÄœISTRO][=VALORO[:MASKO]]" - -#: grub-core/commands/setpci.c:335 -msgid "Manipulate PCI devices." -msgstr "Manipuli PCI-aparatojn" - -#: grub-core/commands/sleep.c:32 -msgid "Verbose countdown." -msgstr "" - -#: grub-core/commands/sleep.c:33 -msgid "Allow to interrupt with ESC." -msgstr "Interrompebla per ESK." - -#: grub-core/commands/sleep.c:109 -msgid "NUMBER_OF_SECONDS" -msgstr "NOMBRO_DA_SEKUNDOJ" - -#: grub-core/commands/sleep.c:110 -msgid "Wait for a specified number of seconds." -msgstr "Atendi specifan nombron da sekundoj." - -#: grub-core/commands/syslinuxcfg.c:50 util/grub-syslinux2cfg.c:66 -msgid "root directory of the syslinux disk [default=/]." -msgstr "" - -#: grub-core/commands/syslinuxcfg.c:53 util/grub-syslinux2cfg.c:72 -msgid "" -"current directory of syslinux [default is parent directory of input file]." -msgstr "" - -#: grub-core/commands/syslinuxcfg.c:55 util/grub-syslinux2cfg.c:75 -msgid "assume input is an isolinux configuration file." -msgstr "" - -#: grub-core/commands/syslinuxcfg.c:56 util/grub-syslinux2cfg.c:76 -msgid "assume input is a pxelinux configuration file." -msgstr "" - -#: grub-core/commands/syslinuxcfg.c:57 util/grub-syslinux2cfg.c:77 -msgid "assume input is a syslinux configuration file." -msgstr "" - -#. TRANSLATORS: "syslinux config" means -#. "config as used by syslinux". -#: grub-core/commands/syslinuxcfg.c:189 -#, fuzzy -msgid "Execute syslinux config in same context" -msgstr "Sintakse analizi heredaĵagordojn en sama kunteksto" - -#: grub-core/commands/syslinuxcfg.c:195 -#, fuzzy -msgid "Execute syslinux config in new context" -msgstr "Sintakse analizi heredaĵagordojn en nova kunteksto" - -#: grub-core/commands/syslinuxcfg.c:201 -#, fuzzy -msgid "Execute syslinux config in same context taking only menu entries" -msgstr "" -"Åœargi alian agordodosieron sen ÅanÄo de kunteksto sed kun nur menu-" -"elektebloj." - -#: grub-core/commands/syslinuxcfg.c:207 -#, fuzzy -msgid "Execute syslinux config in new context taking only menu entries" -msgstr "" -"Åœargi alian agordodosieron sen ÅanÄo de kunteksto sed kun nur menu-" -"elektebloj." - -#: grub-core/commands/terminal.c:90 -msgid "no terminal specified" -msgstr "neniu terminalo estas specifita" - -#: grub-core/commands/terminal.c:112 grub-core/commands/terminal.c:139 -#, c-format -msgid "terminal `%s' isn't found" -msgstr "" - -#: grub-core/commands/terminal.c:244 -msgid "Active input terminals:" -msgstr "Aktivaj enigoterminaloj:" - -#: grub-core/commands/terminal.c:245 -msgid "Available input terminals:" -msgstr "Disponeblaj enigoterminaloj:" - -#: grub-core/commands/terminal.c:261 -msgid "Active output terminals:" -msgstr "Aktivaj eligoterminaloj:" - -#: grub-core/commands/terminal.c:262 -msgid "Available output terminals:" -msgstr "Haveblaj eligoterminaloj:" - -#: grub-core/commands/terminal.c:271 grub-core/commands/terminal.c:276 -msgid "[--append|--remove] [TERMINAL1] [TERMINAL2] ..." -msgstr "[--append|--remove] [TERMINALO1] [TERMINALO2] ..." - -#: grub-core/commands/terminal.c:273 -msgid "List or select an input terminal." -msgstr "Listigi aÅ­ elekti enigoterminalon." - -#: grub-core/commands/terminal.c:278 -msgid "List or select an output terminal." -msgstr "Listigi aÅ­ elekti eligoterminalon." - -#: grub-core/commands/test.c:444 -msgid "EXPRESSION ]" -msgstr "ESPRIMO ]" - -#: grub-core/commands/test.c:444 grub-core/commands/test.c:447 -msgid "Evaluate an expression." -msgstr "Taksi esprimon." - -#: grub-core/commands/test.c:447 -msgid "EXPRESSION" -msgstr "ESPRIMO" - -#: grub-core/commands/testload.c:164 -msgid "Load the same file in multiple ways." -msgstr "Åœargi la saman dosieron plurmaniere." - -#: grub-core/commands/testspeed.c:35 -msgid "Specify size for each read operation" -msgstr "" - -#: grub-core/commands/testspeed.c:58 -#, fuzzy -msgid "invalid block size" -msgstr "nevalida ĉirkaÅ­aĵa bloko" - -#: grub-core/commands/testspeed.c:80 -#, c-format -msgid "File size: %s\n" -msgstr "" - -#: grub-core/commands/testspeed.c:83 -#, c-format -msgid "Elapsed time: %d.%03d s \n" -msgstr "" - -#: grub-core/commands/testspeed.c:92 -#, fuzzy, c-format -msgid "Speed: %s \n" -msgstr "Aparat-identigilo: %s\n" - -#: grub-core/commands/testspeed.c:107 -msgid "[-s SIZE] FILENAME" -msgstr "" - -#: grub-core/commands/testspeed.c:108 -msgid "Test file read speed." -msgstr "" - -#: grub-core/commands/time.c:38 grub-core/script/execute.c:974 -msgid "no command is specified" -msgstr "neniu komando estas specifita" - -#: grub-core/commands/time.c:50 -#, c-format -msgid "Elapsed time: %d.%03d seconds \n" -msgstr "" - -#: grub-core/commands/time.c:61 -msgid "COMMAND [ARGS]" -msgstr "" - -#: grub-core/commands/time.c:62 -msgid "Measure time used by COMMAND" -msgstr "" - -#: grub-core/commands/tr.c:33 -msgid "Translate to upper case." -msgstr "" - -#: grub-core/commands/tr.c:34 -msgid "Translate to lower case." -msgstr "" - -#: grub-core/commands/tr.c:119 -msgid "[OPTIONS] [SET1] [SET2] [STRING]" -msgstr "" - -#: grub-core/commands/tr.c:120 -msgid "Translate SET1 characters to SET2 in STRING." -msgstr "" - -#. TRANSLATORS: it's a command description. -#: grub-core/commands/true.c:50 -msgid "Do nothing, successfully." -msgstr "Fari nenion, sukcese." - -#. TRANSLATORS: it's a command description. -#: grub-core/commands/true.c:54 -msgid "Do nothing, unsuccessfully." -msgstr "Fari nenion, nesukcese." - -#: grub-core/commands/usbtest.c:221 -msgid "Test USB support." -msgstr "Testi USB-subtenon." - -#: grub-core/commands/verifiers.c:120 -#, c-format -msgid "verification requested but nobody cares: %s" -msgstr "" - -#: grub-core/commands/verifiers.c:140 -msgid "big file signature isn't implemented yet" -msgstr "" - -#: grub-core/commands/videoinfo.c:61 -msgid "Text-only " -msgstr "" - -#. TRANSLATORS: "Direct color" is a mode when the color components -#. are written dirrectly into memory. -#: grub-core/commands/videoinfo.c:66 -#, c-format -msgid "Direct color, mask: %d/%d/%d/%d pos: %d/%d/%d/%d" -msgstr "" - -#. TRANSLATORS: In "paletted color" mode you write the index of the color -#. in the palette. Synonyms include "packed pixel". -#: grub-core/commands/videoinfo.c:78 -msgid "Paletted " -msgstr "" - -#: grub-core/commands/videoinfo.c:80 -msgid "YUV " -msgstr "" - -#. TRANSLATORS: "Planar" is the video memory where you have to write -#. in several different banks "plans" to control the different color -#. components of the same pixel. -#: grub-core/commands/videoinfo.c:85 -msgid "Planar " -msgstr "" - -#: grub-core/commands/videoinfo.c:87 -msgid "Hercules " -msgstr "" - -#: grub-core/commands/videoinfo.c:89 -msgid "CGA " -msgstr "" - -#. TRANSLATORS: Non-chain 4 is a 256-color planar -#. (unchained) video memory mode. -#: grub-core/commands/videoinfo.c:93 -msgid "Non-chain 4 " -msgstr "" - -#: grub-core/commands/videoinfo.c:95 -msgid "Monochrome " -msgstr "" - -#: grub-core/commands/videoinfo.c:97 -msgid "Unknown video mode " -msgstr "" - -#: grub-core/commands/videoinfo.c:111 -msgid " EDID checksum invalid" -msgstr "" - -#: grub-core/commands/videoinfo.c:116 -#, c-format -msgid " EDID version: %u.%u\n" -msgstr "" - -#: grub-core/commands/videoinfo.c:120 -#, c-format -msgid " Preferred mode: %ux%u\n" -msgstr "" - -#: grub-core/commands/videoinfo.c:123 -msgid " No preferred mode available\n" -msgstr "" - -#: grub-core/commands/videoinfo.c:146 grub-core/video/video.c:490 -#: grub-core/video/video.c:498 grub-core/video/video.c:509 -#: grub-core/video/video.c:520 grub-core/video/video.c:528 -#, c-format -msgid "invalid video mode specification `%s'" -msgstr "" - -#: grub-core/commands/videoinfo.c:168 -msgid "List of supported video modes:" -msgstr "" - -#: grub-core/commands/videoinfo.c:169 -msgid "Legend: mask/position=red/green/blue/reserved" -msgstr "" - -#: grub-core/commands/videoinfo.c:176 -#, c-format -msgid "Adapter `%s':\n" -msgstr "" - -#: grub-core/commands/videoinfo.c:180 -msgid " No info available" -msgstr "" - -#: grub-core/commands/videoinfo.c:198 -msgid " Failed to initialize video adapter" -msgstr "" - -#. TRANSLATORS: "x" has to be entered in, -#. like an identifier, so please don't -#. use better Unicode codepoints. -#: grub-core/commands/videoinfo.c:239 grub-core/commands/videoinfo.c:248 -msgid "[WxH[xD]]" -msgstr "" - -#: grub-core/commands/videoinfo.c:240 grub-core/commands/videoinfo.c:249 -msgid "" -"List available video modes. If resolution is given show only modes matching " -"it." -msgstr "" - -#. TRANSLATORS: "x" has to be entered in, -#. like an identifier, so please don't -#. use better Unicode codepoints. -#: grub-core/commands/videotest.c:225 -msgid "[WxH]" -msgstr "" - -#. TRANSLATORS: Here, on the other hand, it's -#. nicer to use unicode cross instead of x. -#: grub-core/commands/videotest.c:228 -msgid "Test video subsystem in mode WxH." -msgstr "Testi video-subsistemon en reÄimo AxL." - -#: grub-core/commands/videotest.c:231 -msgid "Test video subsystem." -msgstr "Testi video-subsistemon." - -#: grub-core/commands/xen/lsxen.c:80 grub-core/commands/xen/lsxen.c:82 -msgid "[DIR]" -msgstr "" - -#: grub-core/commands/xen/lsxen.c:81 grub-core/commands/xen/lsxen.c:83 -msgid "List Xen storage." -msgstr "" - -#. TRANSLATORS: GRUBUUID stands for "filesystem -#. UUID as used in GRUB". -#: grub-core/commands/xnu_uuid.c:110 -msgid "[-l] GRUBUUID [VARNAME]" -msgstr "[-l] GRUBUUID [VARNOMO]" - -#: grub-core/commands/xnu_uuid.c:111 -msgid "" -"Transform 64-bit UUID to format suitable for XNU. If -l is given keep it " -"lowercase as done by blkid." -msgstr "" - -#: grub-core/disk/arc/arcdisk.c:248 grub-core/disk/efi/efidisk.c:603 -#: grub-core/disk/i386/pc/biosdisk.c:498 grub-core/disk/i386/pc/biosdisk.c:543 -#: grub-core/disk/ieee1275/nand.c:198 grub-core/disk/ieee1275/obdisk.c:527 -#: grub-core/disk/ieee1275/ofdisk.c:586 -#, c-format -msgid "failure reading sector 0x%llx from `%s'" -msgstr "" - -#: grub-core/disk/arc/arcdisk.c:284 grub-core/disk/efi/efidisk.c:626 -#: grub-core/disk/i386/pc/biosdisk.c:548 grub-core/disk/ieee1275/ofdisk.c:606 -#, c-format -msgid "failure writing sector 0x%llx to `%s'" -msgstr "" - -#: grub-core/disk/cryptodisk.c:40 -msgid "Mount by UUID." -msgstr "" - -#. TRANSLATORS: It's still restricted to cryptodisks only. -#: grub-core/disk/cryptodisk.c:42 -msgid "Mount all." -msgstr "" - -#: grub-core/disk/cryptodisk.c:43 -msgid "Mount all volumes with `boot' flag set." -msgstr "" - -#. TRANSLATORS: The first %s is the file being looked at, the second %s is -#. the error message. -#: grub-core/disk/cryptodisk.c:526 grub-core/kern/emu/hostdisk.c:152 -#: grub-core/kern/emu/hostdisk.c:262 grub-core/kern/emu/hostdisk.c:434 -#: grub-core/kern/emu/misc.c:168 grub-core/kern/emu/misc.c:174 -#: grub-core/kern/emu/misc.c:196 grub-core/osdep/bsd/getroot.c:92 -#: grub-core/osdep/bsd/getroot.c:168 grub-core/osdep/hurd/getroot.c:68 -#: grub-core/osdep/linux/blocklist.c:65 grub-core/osdep/linux/getroot.c:150 -#: grub-core/osdep/linux/hostdisk.c:194 grub-core/osdep/linux/hostdisk.c:421 -#: grub-core/osdep/linux/ofpath.c:417 grub-core/osdep/linux/ofpath.c:422 -#: grub-core/osdep/linux/ofpath.c:517 grub-core/osdep/linux/ofpath.c:530 -#: grub-core/osdep/sun/getroot.c:110 grub-core/osdep/windows/blocklist.c:98 -#: grub-core/tests/video_checksum.c:279 util/editenv.c:46 util/glue-efi.c:115 -#: util/glue-efi.c:120 util/glue-efi.c:130 util/grub-editenv.c:138 -#: util/grub-editenv.c:192 util/grub-file.c:83 util/grub-fstest.c:128 -#: util/grub-fstest.c:568 util/grub-install-common.c:92 -#: util/grub-install-common.c:94 util/grub-install-common.c:101 -#: util/grub-install-common.c:529 util/grub-menulst2cfg.c:53 -#: util/grub-menulst2cfg.c:68 util/grub-mkimage.c:292 util/grub-mklayout.c:504 -#: util/grub-mklayout.c:516 util/grub-mknetdir.c:133 util/grub-mknetdir.c:151 -#: util/grub-mkrescue.c:627 util/grub-mkrescue.c:631 util/grub-mkrescue.c:879 -#: util/grub-mkrescue.c:883 util/grub-mkstandalone.c:253 util/grub-mount.c:498 -#: util/grub-render-label.c:169 util/grub-script-check.c:175 -#: util/grub-syslinux2cfg.c:181 util/grub-syslinux2cfg.c:191 -#: util/grub-syslinux2cfg.c:212 util/grub-syslinux2cfg.c:228 util/misc.c:91 -#: util/render-label.c:76 util/render-label.c:163 util/render-label.c:174 -#: util/resolve.c:246 util/setup.c:783 -#, c-format -msgid "cannot open `%s': %s" -msgstr "ne eblas malfermi na '%s': %s" - -#: grub-core/disk/cryptodisk.c:583 grub-core/disk/cryptodisk.c:628 -#: grub-core/kern/emu/hostdisk.c:270 grub-core/kern/emu/hostfs.c:142 -#: grub-core/osdep/linux/hostdisk.c:456 util/grub-editenv.c:143 -#: util/grub-editenv.c:149 util/grub-fstest.c:320 util/misc.c:111 -#, c-format -msgid "cannot seek `%s': %s" -msgstr "" - -#: grub-core/disk/cryptodisk.c:1144 -msgid "SOURCE|-u UUID|-a|-b" -msgstr "" - -#: grub-core/disk/cryptodisk.c:1145 -msgid "Mount a crypto device." -msgstr "" - -#. TRANSLATORS: This message kicks in during the detection of -#. which modules needs to be included in core image. This happens -#. in the case of degraded RAID and means that autodetection may -#. fail to include some of modules. It's an installation time -#. message, not runtime message. -#: grub-core/disk/diskfilter.c:343 grub-core/disk/diskfilter.c:376 -#, c-format -msgid "" -"Couldn't find physical volume `%s'. Some modules may be missing from core " -"image." -msgstr "" - -#: grub-core/disk/diskfilter.c:480 -#, c-format -msgid "physical volume %s not found" -msgstr "" - -#: grub-core/disk/efi/efidisk.c:600 grub-core/disk/efi/efidisk.c:623 -#, c-format -msgid "no media in `%s'" -msgstr "" - -#: grub-core/disk/geli.c:75 -msgid "Couldn't load sha256" -msgstr "" - -#: grub-core/disk/geli.c:85 -msgid "Couldn't load sha512" -msgstr "" - -#: grub-core/disk/geli.c:216 grub-core/disk/geli.c:220 -msgid "couldn't read ELI metadata" -msgstr "" - -#: grub-core/disk/geli.c:231 -msgid "wrong ELI magic or version" -msgstr "" - -#: grub-core/disk/geli.c:435 grub-core/disk/luks.c:329 -msgid "Attempting to decrypt master key..." -msgstr "" - -#: grub-core/disk/geli.c:441 grub-core/disk/luks.c:347 -#, c-format -msgid "Enter passphrase for %s%s%s (%s): " -msgstr "" - -#. TRANSLATORS: It's a cryptographic key slot: one element of an array -#. where each element is either empty or holds a key. -#: grub-core/disk/geli.c:530 grub-core/disk/luks.c:451 -#, c-format -msgid "Slot %d opened\n" -msgstr "" - -#: grub-core/disk/i386/pc/biosdisk.c:470 grub-core/disk/i386/pc/biosdisk.c:524 -#: grub-core/disk/i386/pc/biosdisk.c:534 grub-core/kern/disk_common.c:47 -#, c-format -msgid "attempt to read or write outside of disk `%s'" -msgstr "" - -#: grub-core/disk/i386/pc/biosdisk.c:491 grub-core/disk/i386/pc/biosdisk.c:611 -#: grub-core/disk/scsi.c:726 -msgid "cannot write to CD-ROM" -msgstr "" - -#: grub-core/disk/i386/pc/biosdisk.c:662 -msgid "" -"Native disk drivers are in use. Refusing to use firmware disk interface." -msgstr "" - -#. TRANSLATORS: it's a partition for embedding, -#. not a partition embed into something. GRUB -#. install tools put core.img into a place -#. usable for bootloaders (called generically -#. "embedding zone") and this operation is -#. called "embedding". -#: grub-core/disk/ldm.c:1015 -msgid "your LDM Embedding Partition is too small; embedding won't be possible" -msgstr "" - -#. TRANSLATORS: it's a partition for embedding, -#. not a partition embed into something. -#: grub-core/disk/ldm.c:1033 -msgid "this LDM has no Embedding Partition; embedding won't be possible" -msgstr "" - -#. TRANSLATORS: The disk is simply removed from the list of available ones, -#. not wiped, avoid to scare user. -#: grub-core/disk/loopback.c:45 -msgid "Delete the specified loopback drive." -msgstr "" - -#: grub-core/disk/loopback.c:237 -msgid "[-d] DEVICENAME FILE." -msgstr "[-d] APARATNOMO DOSIERO." - -#. TRANSLATORS: The file itself is not destroyed -#. or transformed into drive. -#: grub-core/disk/loopback.c:240 -msgid "Make a virtual drive from a file." -msgstr "Fari virtualan aparaton el dosiero." - -#: grub-core/efiemu/i386/loadcore32.c:111 -#: grub-core/efiemu/i386/loadcore64.c:125 grub-core/kern/arm/dl.c:256 -#: grub-core/kern/arm64/dl.c:187 grub-core/kern/i386/dl.c:75 -#: grub-core/kern/ia64/dl.c:140 grub-core/kern/mips/dl.c:258 -#: grub-core/kern/powerpc/dl.c:163 grub-core/kern/riscv/dl.c:334 -#: grub-core/kern/sparc64/dl.c:180 grub-core/kern/x86_64/dl.c:110 -#: util/grub-mkimagexx.c:756 util/grub-mkimagexx.c:881 -#: util/grub-mkimagexx.c:945 util/grub-mkimagexx.c:1026 -#: util/grub-mkimagexx.c:1120 util/grub-mkimagexx.c:1222 -#: util/grub-mkimagexx.c:1413 util/grub-mkimagexx.c:1628 -#: util/grub-mkimagexx.c:1665 util/grub-mkimagexx.c:1697 -#: util/grub-mkimagexx.c:1767 util/grub-mkimagexx.c:1797 -#, c-format -msgid "relocation 0x%x is not implemented yet" -msgstr "" - -#: grub-core/efiemu/loadcore.c:200 grub-core/efiemu/loadcore.c:237 -#: grub-core/loader/i386/bsdXX.c:317 util/grub-mkimagexx.c:2360 -msgid "no symbol table" -msgstr "" - -#: grub-core/efiemu/loadcore.c:346 grub-core/kern/dl.c:609 -#: grub-core/loader/ia64/efi/linux.c:345 grub-core/loader/mips/linux.c:248 -#: grub-core/loader/multiboot_elfxx.c:76 -#: grub-core/loader/powerpc/ieee1275/linux.c:280 -#: grub-core/loader/sparc64/ieee1275/linux.c:320 -msgid "this ELF file is not of the right type" -msgstr "" - -#: grub-core/efiemu/main.c:313 -msgid "Load and initialize EFI emulator." -msgstr "Åœargi kaj pravalorizi EFI-imitilon." - -#: grub-core/efiemu/main.c:317 -msgid "Finalize loading of EFI emulator." -msgstr "Finigi Åargadon de EFI-imitilo." - -#: grub-core/efiemu/main.c:320 -msgid "Unload EFI emulator." -msgstr "MalÅargi EFI-imitilon." - -#: grub-core/efiemu/symbols.c:92 grub-core/kern/dl.c:376 -#, c-format -msgid "symbol `%s' not found" -msgstr "" - -#: grub-core/font/font_cmd.c:52 -msgid "Loaded fonts:" -msgstr "Åœargitaj tiparoj:" - -#: grub-core/font/font_cmd.c:74 -msgid "FILE..." -msgstr "DOSIERO..." - -#: grub-core/font/font_cmd.c:75 -msgid "Specify one or more font files to load." -msgstr "Specifigi unu aÅ­ plurajn Åargotajn tipardosierojn." - -#: grub-core/font/font_cmd.c:78 -msgid "List the loaded fonts." -msgstr "Listigi la Åargitajn tiparojn." - -#: grub-core/fs/archelp.c:216 grub-core/fs/archelp.c:278 -#: grub-core/fs/btrfs.c:1815 grub-core/fs/fshelp.c:227 grub-core/fs/jfs.c:736 -#: grub-core/fs/minix.c:369 grub-core/fs/ufs.c:454 -msgid "too deep nesting of symlinks" -msgstr "" - -#: grub-core/fs/bfs.c:228 grub-core/fs/fshelp.c:368 grub-core/fs/minix.c:270 -#: grub-core/kern/file.c:156 -msgid "attempt to read past the end of file" -msgstr "" - -#: grub-core/fs/btrfs.c:1698 grub-core/fs/btrfs.c:1957 -#: grub-core/fs/fshelp.c:189 grub-core/fs/fshelp.c:309 grub-core/fs/jfs.c:431 -#: grub-core/fs/minix.c:414 grub-core/fs/minix.c:562 -#: grub-core/fs/reiserfs.c:732 grub-core/fs/ufs.c:531 grub-core/fs/ufs.c:671 -#: grub-core/fs/zfs/zfs.c:2831 grub-core/fs/zfs/zfs.c:4247 -msgid "not a directory" -msgstr "ne estas dosierujo" - -#: grub-core/fs/btrfs.c:2063 grub-core/fs/fshelp.c:307 grub-core/fs/jfs.c:835 -#: grub-core/fs/zfs/zfs.c:3801 -msgid "not a regular file" -msgstr "ne estas regula dosiero" - -#: grub-core/fs/btrfs.c:2157 grub-core/fs/zfs/zfs.c:4333 -#: grub-core/partmap/msdos.c:400 -msgid "your core.img is unusually large. It won't fit in the embedding area" -msgstr "" - -#: grub-core/fs/fshelp.c:281 grub-core/fs/minix.c:630 grub-core/fs/ufs.c:661 -#: grub-core/fs/ufs.c:757 grub-core/kern/fs.c:168 grub-core/kern/fs.c:180 -#, c-format -msgid "invalid file name `%s'" -msgstr "nevalida dosiernomo ‘%s’" - -#: grub-core/fs/zfs/zfs.c:453 -msgid "checksum verification failed" -msgstr "" - -#: grub-core/fs/zfs/zfs.c:1465 -msgid "couldn't find a necessary member device of multi-device filesystem" -msgstr "" - -#: grub-core/fs/zfs/zfscrypt.c:292 -msgid "no decryption key available" -msgstr "" - -#: grub-core/fs/zfs/zfscrypt.c:304 -msgid "MAC verification failed" -msgstr "" - -#: grub-core/fs/zfs/zfscrypt.c:413 -msgid "Assume input is raw." -msgstr "" - -#: grub-core/fs/zfs/zfscrypt.c:414 -msgid "Assume input is hex." -msgstr "" - -#: grub-core/fs/zfs/zfscrypt.c:415 -msgid "Assume input is passphrase." -msgstr "" - -#: grub-core/fs/zfs/zfscrypt.c:437 util/grub-fstest.c:553 util/grub-mount.c:483 -msgid "Enter ZFS password: " -msgstr "Entajpu ZFS-pasvorton: " - -#: grub-core/fs/zfs/zfscrypt.c:476 -msgid "[-h|-p|-r] [FILE]" -msgstr "[-h|-p|-r] [DOSIERO]" - -#: grub-core/fs/zfs/zfscrypt.c:477 -msgid "Import ZFS wrapping key stored in FILE." -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:51 -msgid "Virtual device is removed" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:57 -msgid "Virtual device is faulted" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:63 -msgid "Virtual device is offline" -msgstr "" - -#. TRANSLATORS: degraded doesn't mean broken but that some of -#. component are missing but virtual device as whole is still usable. -#: grub-core/fs/zfs/zfsinfo.c:70 -msgid "Virtual device is degraded" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:73 -msgid "Virtual device is online" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:89 -msgid "Incorrect virtual device: no type available" -msgstr "" - -#. TRANSLATORS: The virtual devices form a tree (in graph-theoretical -#. sense). The nodes like mirror or raidz have children: member devices. -#. The "real" devices which actually store data are called "leafs" -#. (again borrowed from graph theory) and can be either disks -#. (or partitions) or files. -#: grub-core/fs/zfs/zfsinfo.c:105 -msgid "Leaf virtual device (file or disk)" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:113 -msgid "Bootpath: unavailable\n" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:115 -#, c-format -msgid "Bootpath: %s\n" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:120 -msgid "Path: unavailable" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:122 -#, c-format -msgid "Path: %s\n" -msgstr "Vojo: %s\n" - -#: grub-core/fs/zfs/zfsinfo.c:127 -msgid "Devid: unavailable" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:129 -#, c-format -msgid "Devid: %s\n" -msgstr "Aparat-identigilo: %s\n" - -#: grub-core/fs/zfs/zfsinfo.c:148 -msgid "This VDEV is a mirror" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:153 -#, c-format -msgid "This VDEV is a RAIDZ%llu\n" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:158 -msgid "Incorrect VDEV" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:161 -#, c-format -msgid "VDEV with %d children\n" -msgstr "" - -#. TRANSLATORS: it's the element carying the number %d, not -#. total element number. And the number itself is fine, -#. only the element isn't. -#. -#: grub-core/fs/zfs/zfsinfo.c:177 -#, c-format -msgid "VDEV element number %d isn't correct\n" -msgstr "" - -#. TRANSLATORS: it's the element carying the number %d, not -#. total element number. This is used in enumeration -#. "Element number 1", "Element number 2", ... -#: grub-core/fs/zfs/zfsinfo.c:184 -#, c-format -msgid "VDEV element number %d:\n" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:193 -#, c-format -msgid "Unknown virtual device type: %s\n" -msgstr "" - -#. TRANSLATORS: Here we speak about ZFS pools it's semi-marketing, -#. semi-technical term by Sun/Oracle and should be translated in sync with -#. other ZFS-related software and documentation. -#: grub-core/fs/zfs/zfsinfo.c:254 -msgid "Pool state: active" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:255 -msgid "Pool state: exported" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:256 -msgid "Pool state: destroyed" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:257 -msgid "Pool state: reserved for hot spare" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:258 -msgid "Pool state: level 2 ARC device" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:259 -msgid "Pool state: uninitialized" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:260 -msgid "Pool state: unavailable" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:261 -msgid "Pool state: potentially active" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:306 -msgid "Pool name: unavailable" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:308 -#, c-format -msgid "Pool name: %s\n" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:313 -msgid "Pool GUID: unavailable" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:315 -#, c-format -msgid "Pool GUID: %016llx\n" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:320 -msgid "Unable to retrieve pool state" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:322 -msgid "Unrecognized pool state" -msgstr "" - -#. TRANSLATORS: There are undetermined number of virtual devices -#. in a device tree, not just one. -#. -#: grub-core/fs/zfs/zfsinfo.c:332 -msgid "No virtual device tree available" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:431 -msgid "Print ZFS info about DEVICE." -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:433 -msgid "FILESYSTEM [VARIABLE]" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:434 -msgid "Print ZFS-BOOTFSOBJ or store it into VARIABLE" -msgstr "" - -#. TRANSLATORS: at this position GRUB waits for the user to do an action -#. in remote debugger, namely to tell it to establish connection. -#: grub-core/gdb/gdb.c:48 -msgid "Now connect the remote debugger, please." -msgstr "" - -#. TRANSLATORS: GDB stub is a small part of -#. GDB functionality running on local host -#. which allows remote debugger to -#. connect to it. -#: grub-core/gdb/gdb.c:84 -msgid "Start GDB stub on given port" -msgstr "" - -#. TRANSLATORS: this refers to triggering -#. a breakpoint so that the user will land -#. into GDB. -#: grub-core/gdb/gdb.c:89 -msgid "Break into GDB" -msgstr "" - -#: grub-core/gdb/gdb.c:91 -msgid "Stop GDB stub" -msgstr "" - -#: grub-core/gettext/gettext.c:85 -msgid "premature end of file" -msgstr "neatendita fino de dosiero" - -#. TRANSLATORS: It refers to passing the string through gettext. -#. So it's "translate" in the same meaning as in what you're -#. doing now. -#. -#: grub-core/gettext/gettext.c:525 -msgid "Translates the string with the current settings." -msgstr "Tradukas la signoĉenon per la nunaj agordoj." - -#: grub-core/gfxmenu/gui_label.c:186 grub-core/normal/menu_text.c:184 -msgid "" -"Press enter to boot the selected OS, `e' to edit the commands before booting " -"or `c' for a command-line. ESC to return previous menu." -msgstr "" -"Premu ‘enigi’ por praÅargi la elektitan operaciumon, ‘e’ por modifi la " -"komandojn antaÅ­ praÅargo aÅ­ ‘c’ por komandlinio. ‘Esk’ por reiri al antaÅ­a " -"menuo." - -#: grub-core/gfxmenu/gui_label.c:190 grub-core/normal/menu_text.c:192 -msgid "" -"Press enter to boot the selected OS, `e' to edit the commands before booting " -"or `c' for a command-line." -msgstr "" -"Premu ‘enigi’ por praÅargi la elektitan operaciumon, ‘e’ por modifi la " -"komandojn antaÅ­ praÅargo aÅ­ ‘c’ por komandlinio." - -#: grub-core/gfxmenu/gui_label.c:194 -msgid "enter: boot, `e': options, `c': cmd-line" -msgstr "" - -#: grub-core/gfxmenu/gui_progress_bar.c:339 grub-core/normal/menu_text.c:446 -#, c-format -msgid "The highlighted entry will be executed automatically in %ds." -msgstr "La elektita ero estos aÅ­tomate lanĉata post %ds." - -#. TRANSLATORS: 's' stands for seconds. -#. It's a standalone timeout notification. -#. Please use the short form in your language. -#: grub-core/gfxmenu/gui_progress_bar.c:344 -#, c-format -msgid "%ds remaining." -msgstr "%ds restas." - -#. TRANSLATORS: 's' stands for seconds. -#. It's a standalone timeout notification. -#. Please use the shortest form available in you language. -#: grub-core/gfxmenu/gui_progress_bar.c:349 grub-core/normal/menu_text.c:444 -#: grub-core/normal/menu_text.c:462 -#, c-format -msgid "%ds" -msgstr "%ds" - -#: grub-core/gfxmenu/view.c:103 -msgid "GRUB Boot Menu" -msgstr "" - -#: grub-core/hello/hello.c:36 -msgid "Hello World" -msgstr "Saluton mondo" - -#: grub-core/hello/hello.c:45 -msgid "Say `Hello World'." -msgstr "Diri \"Saluton mondo\"." - -#: grub-core/io/gzio.c:409 grub-core/kern/file.c:210 -msgid "attempt to seek outside of the file" -msgstr "" - -#. TRANSLATORS: It's about given file having some strange format, not -#. complete lack of gzip support. -#: grub-core/io/gzio.c:1228 grub-core/io/gzio.c:1237 grub-core/io/gzio.c:1244 -msgid "unsupported gzip format" -msgstr "" - -#: grub-core/io/lzopio.c:511 -msgid "lzop file corrupted" -msgstr "" - -#: grub-core/io/xzio.c:278 -msgid "xz file corrupted or unsupported block options" -msgstr "" - -#: grub-core/kern/arm/dl.c:277 grub-core/kern/arm64/dl.c:44 -#: grub-core/kern/i386/dl.c:36 grub-core/kern/ia64/dl.c:41 -#: grub-core/kern/mips/dl.c:48 grub-core/kern/powerpc/dl.c:36 -#: grub-core/kern/riscv/dl.c:47 grub-core/kern/sparc64/dl.c:36 -#: grub-core/kern/x86_64/dl.c:36 grub-core/loader/i386/bsd.c:1445 -#: grub-core/loader/i386/bsdXX.c:49 grub-core/loader/ia64/efi/linux.c:341 -#: grub-core/loader/mips/linux.c:298 grub-core/loader/multiboot.c:232 -#: grub-core/loader/multiboot_elfxx.c:73 -#: grub-core/loader/powerpc/ieee1275/linux.c:294 -#: grub-core/loader/sparc64/ieee1275/linux.c:331 -msgid "invalid arch-dependent ELF magic" -msgstr "" - -#: grub-core/kern/corecmd.c:178 -msgid "[ENVVAR=VALUE]" -msgstr "[ĈIRKVAR=VALORO]" - -#: grub-core/kern/corecmd.c:179 -msgid "Set an environment variable." -msgstr "Agordi ĉirkaÅ­aĵan variablon." - -#: grub-core/kern/corecmd.c:183 -msgid "ENVVAR" -msgstr "ĈIRKVAR" - -#: grub-core/kern/corecmd.c:184 -msgid "Remove an environment variable." -msgstr "Forigi ĉirkaÅ­aĵan variablon." - -#: grub-core/kern/corecmd.c:186 -msgid "[ARG]" -msgstr "[ARG]" - -#: grub-core/kern/corecmd.c:186 -msgid "List devices or files." -msgstr "Listigi aparatojn aÅ­ dosierojn." - -#: grub-core/kern/corecmd.c:188 -msgid "Insert a module." -msgstr "Enmeti modulon." - -#: grub-core/kern/disk.c:236 grub-core/net/net.c:1390 -#, c-format -msgid "disk `%s' not found" -msgstr "" - -#: grub-core/kern/disk_common.c:27 -msgid "attempt to read or write outside of partition" -msgstr "" - -#: grub-core/kern/dl.c:212 grub-core/kern/elf.c:61 grub-core/kern/elf.c:79 -#: grub-core/loader/i386/bsdXX.c:46 grub-core/loader/ia64/efi/linux.c:335 -#: grub-core/loader/multiboot_elfxx.c:69 -msgid "invalid arch-independent ELF magic" -msgstr "" - -#. TRANSLATORS: it refers to the lack of free slots. -#: grub-core/kern/emu/hostdisk.c:208 grub-core/kern/emu/hostdisk.c:466 -msgid "device count exceeds limit" -msgstr "nombro da aparatoj superas limon" - -#: grub-core/kern/emu/hostdisk.c:342 util/editenv.c:54 util/grub-editenv.c:197 -#: util/grub-fstest.c:191 util/grub-mkfont.c:796 util/misc.c:114 -#: util/misc.c:129 util/setup.c:788 -#, c-format -msgid "cannot write to `%s': %s" -msgstr "ne eblas skribi al '%s':%s" - -#. TRANSLATORS: Only one entry is ignored. However the suggestion -#. is to correct/delete the whole file. -#. device.map is a file indicating which -#. devices are available at boot time. Fedora populated it with -#. entries like (hd0,1) /dev/sda1 which would mean that every -#. partition is a separate disk for BIOS. Such entries were -#. inactive in GRUB due to its bug which is now gone. Without -#. this additional check these entries would be harmful now. -#. -#: grub-core/kern/emu/hostdisk.c:503 -#, c-format -msgid "" -"the device.map entry `%s' is invalid. Ignoring it. Please correct or delete " -"your device.map" -msgstr "" - -#. TRANSLATORS: device.map is a filename. Not to be translated. -#. device.map specifies disk correspondance overrides. Previously -#. one could create any kind of device name with this. Due to -#. some problems we decided to limit it to just a handful -#. possibilities. -#: grub-core/kern/emu/hostdisk.c:555 -#, c-format -msgid "" -"the drive name `%s' in device.map is incorrect. Using %s instead. Please use " -"the form [hfc]d[0-9]* (E.g. `hd0' or `cd')" -msgstr "" - -#: grub-core/kern/emu/hostfs.c:76 grub-core/kern/emu/hostfs.c:109 -#, c-format -msgid "can't open `%s': %s" -msgstr "ne eblas malfermi na `%s': %s" - -#: grub-core/kern/emu/main.c:99 util/grub-fstest.c:516 util/grub-mount.c:452 -msgid "DEVICE_NAME" -msgstr "APARAT_NOMO" - -#: grub-core/kern/emu/main.c:99 grub-core/loader/i386/bsd.c:136 -#: grub-core/loader/i386/bsd.c:169 util/grub-fstest.c:516 util/grub-mount.c:452 -msgid "Set root device." -msgstr "Agordi radikan aparaton." - -#. TRANSLATORS: There are many devices in device map. -#: grub-core/kern/emu/main.c:102 util/grub-probe.c:733 util/grub-setup.c:85 -#, c-format -msgid "use FILE as the device map [default=%s]" -msgstr "uzi DOSIERO-n kiel aparatdosierujon [defaÅ­lte=%s]" - -#. TRANSLATORS: There are many devices in device map. -#: grub-core/kern/emu/main.c:105 -msgid "use FILE as memdisk" -msgstr "" - -#: grub-core/kern/emu/main.c:107 util/grub-setup.c:83 -#, c-format -msgid "use GRUB files in the directory DIR [default=%s]" -msgstr "Uzi GRUB-dosierojn en la dosierujo DOSIERUJO [defaÅ­lte=%s]" - -#: grub-core/kern/emu/main.c:108 include/grub/util/install.h:67 -#: util/grub-editenv.c:58 util/grub-fstest.c:525 util/grub-glue-efi.c:58 -#: util/grub-macbless.c:104 util/grub-mkfont.c:962 util/grub-mkimage.c:84 -#: util/grub-mklayout.c:56 util/grub-mount.c:458 util/grub-probe.c:735 -#: util/grub-render-label.c:74 util/grub-script-check.c:52 util/grub-setup.c:90 -#: util/grub-syslinux2cfg.c:78 -msgid "print verbose messages." -msgstr "eldoni ampleksajn mesaÄojn." - -#: grub-core/kern/emu/main.c:109 grub-core/lib/gnulib/argp-parse.c:85 -msgid "SECS" -msgstr "" - -#: grub-core/kern/emu/main.c:109 -msgid "wait until a debugger will attach" -msgstr "" - -#: grub-core/kern/emu/main.c:171 util/grub-macbless.c:143 -#: util/grub-mkrelpath.c:61 util/grub-probe.c:874 util/grub-script-check.c:75 -#: util/grub-setup.c:203 -#, c-format -msgid "Unknown extra argument `%s'." -msgstr "Nekonata aldona argumento ‘%s’." - -#: grub-core/kern/emu/main.c:185 -msgid "GRUB emulator." -msgstr "GRUB-imitilo." - -#: grub-core/kern/emu/main.c:213 util/grub-editenv.c:262 -#: util/grub-glue-efi.c:110 util/grub-macbless.c:173 util/grub-mkfont.c:1177 -#: util/grub-mkimage.c:266 util/grub-mklayout.c:494 -#: util/grub-mkpasswd-pbkdf2.c:132 util/grub-mkrelpath.c:96 -#: util/grub-probe.c:863 util/grub-render-label.c:152 -#: util/grub-script-check.c:160 util/grub-setup.c:262 -#: util/grub-syslinux2cfg.c:163 -msgid "Error in parsing command line arguments\n" -msgstr "Eraro dum analizo de komandliniaj argumentoj\n" - -#. TRANSLATORS: In this case GRUB tells user what he has to do. -#: grub-core/kern/emu/main.c:248 -#, c-format -msgid "Run `gdb %s %d', and set ARGS.HOLD to zero.\n" -msgstr "" - -#: grub-core/kern/emu/misc.c:48 -#, c-format -msgid "%s: warning:" -msgstr "%s: averto:" - -#: grub-core/kern/emu/misc.c:64 -#, c-format -msgid "%s: info:" -msgstr "%s: informoj:" - -#: grub-core/kern/emu/misc.c:79 util/grub-fstest.c:567 util/grub-fstest.c:576 -#: util/grub-mount.c:497 util/grub-mount.c:505 -#, c-format -msgid "%s: error:" -msgstr "%s: eraro:" - -#: grub-core/kern/emu/misc.c:176 -#, fuzzy, c-format -msgid "file `%s' is too big" -msgstr "la grando de ‘%s’ tro grandas" - -#: grub-core/kern/fs.c:120 -msgid "unknown filesystem" -msgstr "Nekonata dosiersistemo" - -#: grub-core/kern/mips/arc/init.c:273 grub-core/kern/mips/loongson/init.c:301 -msgid "Shutdown failed" -msgstr "" - -#: grub-core/kern/mips/arc/init.c:285 -msgid "Exit failed" -msgstr "" - -#: grub-core/kern/misc.c:351 grub-core/kern/misc.c:408 include/grub/misc.h:269 -#: include/grub/misc.h:278 -msgid "overflow is detected" -msgstr "" - -#: grub-core/kern/partition.c:51 grub-core/partmap/bsdlabel.c:108 -#, c-format -msgid "Discarding improperly nested partition (%s,%s,%s%d)" -msgstr "" - -#: grub-core/kern/rescue_parser.c:73 util/grub-editenv.c:292 -#, c-format -msgid "Unknown command `%s'.\n" -msgstr "Nekonata komando ‘%s’.\n" - -#: grub-core/lib/arg.c:31 -msgid "Display this help and exit." -msgstr "Montri ĉi tiun helpon kaj eliri." - -#: grub-core/lib/arg.c:33 -msgid "Display the usage of this command and exit." -msgstr "Montri la uzon de tiu komando kaj eliri." - -#: grub-core/lib/arg.c:362 -#, c-format -msgid "missing mandatory option for `%s'" -msgstr "" - -#: grub-core/lib/arg.c:384 -#, c-format -msgid "the argument `%s' requires an integer" -msgstr "" - -#: grub-core/lib/arg.c:407 -#, c-format -msgid "" -"a value was assigned to the argument `%s' while it doesn't require an " -"argument" -msgstr "" - -#: grub-core/lib/backtrace.c:64 -msgid "Print backtrace." -msgstr "" - -#: grub-core/lib/gnulib/argp-help.c:149 -#, c-format -msgid "ARGP_HELP_FMT: %s value is less than or equal to %s" -msgstr "" - -#: grub-core/lib/gnulib/argp-help.c:225 -#, c-format -msgid "%.*s: ARGP_HELP_FMT parameter requires a value" -msgstr "" - -#: grub-core/lib/gnulib/argp-help.c:235 -#, c-format -msgid "%.*s: Unknown ARGP_HELP_FMT parameter" -msgstr "" - -#: grub-core/lib/gnulib/argp-help.c:248 -#, c-format -msgid "Garbage in ARGP_HELP_FMT: %s" -msgstr "" - -#: grub-core/lib/gnulib/argp-help.c:1229 -msgid "" -"Mandatory or optional arguments to long options are also mandatory or " -"optional for any corresponding short options." -msgstr "" - -#: grub-core/lib/gnulib/argp-help.c:1620 -msgid " or: " -msgstr "" - -#: grub-core/lib/gnulib/argp-help.c:1632 -msgid " [OPTION...]" -msgstr " [OPCIOJ...]" - -#: grub-core/lib/gnulib/argp-help.c:1659 -#, fuzzy, c-format -msgid "Try '%s --help' or '%s --usage' for more information.\n" -msgstr "Provu na '%s --help' aÅ­ na `%s --usage' por pli da informoj.\n" - -#: grub-core/lib/gnulib/argp-help.c:1687 -#, c-format -msgid "Report bugs to %s.\n" -msgstr "" - -#: grub-core/lib/gnulib/argp-help.c:1888 grub-core/lib/gnulib/error.c:195 -msgid "Unknown system error" -msgstr "" - -#: grub-core/lib/gnulib/argp-parse.c:81 -msgid "give this help list" -msgstr "montri ĉi tiun helpon" - -#: grub-core/lib/gnulib/argp-parse.c:82 -msgid "give a short usage message" -msgstr "" - -#: grub-core/lib/gnulib/argp-parse.c:83 util/grub-mkfont.c:946 -msgid "NAME" -msgstr "NOMO" - -#: grub-core/lib/gnulib/argp-parse.c:84 -msgid "set the program name" -msgstr "" - -#: grub-core/lib/gnulib/argp-parse.c:86 -msgid "hang for SECS seconds (default 3600)" -msgstr "" - -#: grub-core/lib/gnulib/argp-parse.c:143 -msgid "print program version" -msgstr "" - -#: grub-core/lib/gnulib/argp-parse.c:160 -msgid "(PROGRAM ERROR) No version known!?" -msgstr "" - -#: grub-core/lib/gnulib/argp-parse.c:613 -#, c-format -msgid "%s: Too many arguments\n" -msgstr "" - -#: grub-core/lib/gnulib/argp-parse.c:759 -msgid "(PROGRAM ERROR) Option should have been recognized!?" -msgstr "" - -#: grub-core/lib/gnulib/getopt.c:278 -#, c-format -msgid "%s: option '%s%s' is ambiguous\n" -msgstr "" - -#: grub-core/lib/gnulib/getopt.c:284 -#, c-format -msgid "%s: option '%s%s' is ambiguous; possibilities:" -msgstr "" - -#: grub-core/lib/gnulib/getopt.c:319 -#, c-format -msgid "%s: unrecognized option '%s%s'\n" -msgstr "" - -#: grub-core/lib/gnulib/getopt.c:345 -#, c-format -msgid "%s: option '%s%s' doesn't allow an argument\n" -msgstr "" - -#: grub-core/lib/gnulib/getopt.c:360 -#, c-format -msgid "%s: option '%s%s' requires an argument\n" -msgstr "" - -#: grub-core/lib/gnulib/getopt.c:621 -#, c-format -msgid "%s: invalid option -- '%c'\n" -msgstr "" - -#: grub-core/lib/gnulib/getopt.c:636 grub-core/lib/gnulib/getopt.c:682 -#, c-format -msgid "%s: option requires an argument -- '%c'\n" -msgstr "" - -#: grub-core/lib/gnulib/openat-die.c:38 -#, c-format -msgid "unable to record current working directory" -msgstr "" - -#: grub-core/lib/gnulib/openat-die.c:57 -#, c-format -msgid "failed to return to initial working directory" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:135 grub-core/osdep/aros/hostdisk.c:523 -msgid "Success" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:138 -msgid "No match" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:141 -msgid "Invalid regular expression" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:144 -msgid "Invalid collation character" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:147 -msgid "Invalid character class name" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:150 -msgid "Trailing backslash" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:153 -msgid "Invalid back reference" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:156 -msgid "Unmatched [, [^, [:, [., or [=" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:159 -msgid "Unmatched ( or \\(" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:162 -msgid "Unmatched \\{" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:165 -msgid "Invalid content of \\{\\}" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:168 -msgid "Invalid range end" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:171 -msgid "Memory exhausted" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:174 -msgid "Invalid preceding regular expression" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:177 -msgid "Premature end of regular expression" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:180 -msgid "Regular expression too big" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:183 -msgid "Unmatched ) or \\)" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:531 -msgid "unknown regexp error" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:676 -msgid "No previous regular expression" -msgstr "" - -#: grub-core/lib/i386/halt.c:77 -msgid "GRUB doesn't know how to halt this machine yet!" -msgstr "" - -#: grub-core/lib/legacy_parse.c:75 -msgid "Default server is ${net_default_server}" -msgstr "" - -#: grub-core/lib/legacy_parse.c:844 grub-core/video/colors.c:296 -#: grub-core/video/colors.c:305 grub-core/video/colors.c:311 -#: grub-core/video/colors.c:327 util/render-label.c:84 util/render-label.c:98 -#, c-format -msgid "invalid color specification `%s'" -msgstr "" - -#: grub-core/lib/mips/arc/reboot.c:32 grub-core/lib/mips/loongson/reboot.c:61 -msgid "Reboot failed" -msgstr "" - -#: grub-core/lib/random.c:113 -msgid "[LENGTH]" -msgstr "" - -#: grub-core/lib/random.c:114 -msgid "Hexdump random data." -msgstr "" - -#: grub-core/loader/arm/linux.c:242 -msgid "device tree must be supplied (see `devicetree' command)" -msgstr "" - -#: grub-core/loader/arm/linux.c:334 -msgid "invalid zImage" -msgstr "" - -#: grub-core/loader/arm/linux.c:450 grub-core/loader/efi/fdt.c:144 -#, fuzzy -msgid "invalid device tree" -msgstr "Nevalida aparato ‘%s’.\n" - -#: grub-core/loader/arm/linux.c:493 grub-core/loader/arm64/linux.c:383 -#: grub-core/loader/i386/linux.c:1125 grub-core/loader/i386/pc/linux.c:479 -#: grub-core/loader/i386/xen.c:962 grub-core/loader/i386/xen.c:964 -#: grub-core/loader/ia64/efi/linux.c:591 grub-core/loader/mips/linux.c:501 -#: grub-core/loader/powerpc/ieee1275/linux.c:383 -#: grub-core/loader/riscv/linux.c:50 -#: grub-core/loader/sparc64/ieee1275/linux.c:511 -msgid "Load Linux." -msgstr "ÅœarÄado de Linukso." - -#: grub-core/loader/arm/linux.c:495 grub-core/loader/arm64/linux.c:385 -#: grub-core/loader/i386/linux.c:1127 grub-core/loader/i386/pc/linux.c:482 -#: grub-core/loader/i386/xen.c:966 grub-core/loader/ia64/efi/linux.c:594 -#: grub-core/loader/mips/linux.c:503 -#: grub-core/loader/powerpc/ieee1275/linux.c:385 -#: grub-core/loader/riscv/linux.c:52 -#: grub-core/loader/sparc64/ieee1275/linux.c:513 -msgid "Load initrd." -msgstr "ÅœarÄado de initrd." - -#. TRANSLATORS: DTB stands for device tree blob. -#: grub-core/loader/arm/linux.c:498 grub-core/loader/efi/fdt.c:169 -#, fuzzy -msgid "Load DTB file." -msgstr "Åœargi XNU-bildon." - -#: grub-core/loader/arm64/linux.c:59 -msgid "" -"plain image kernel not supported - rebuild with CONFIG_(U)EFI_STUB enabled" -msgstr "" - -#: grub-core/loader/arm64/xen_boot.c:156 -msgid "failed to get FDT" -msgstr "" - -#: grub-core/loader/arm64/xen_boot.c:418 -#, fuzzy -msgid "you need to load the Xen Hypervisor first" -msgstr "unue vi Åargu la kernon" - -#: grub-core/loader/arm64/xen_boot.c:516 -msgid "Load a xen hypervisor." -msgstr "" - -#: grub-core/loader/arm64/xen_boot.c:519 -#, fuzzy -msgid "Load a xen module." -msgstr "Åœargi kernmodulon de NetBSD." - -#: grub-core/loader/efi/appleloader.c:231 -msgid "[OPTS]" -msgstr "[OPCIOJ]" - -#. TRANSLATORS: This command is used on EFI to -#. switch to BIOS mode and boot the OS requiring -#. BIOS. -#: grub-core/loader/efi/appleloader.c:235 -msgid "Boot BIOS-based system." -msgstr "" - -#: grub-core/loader/efi/chainloader.c:421 -#: grub-core/loader/i386/pc/chainloader.c:303 -msgid "Load another boot loader." -msgstr "Åœargi alian praÅargilon." - -#: grub-core/loader/i386/bsd.c:103 -msgid "Display output on all consoles." -msgstr "Montri eligon sur ĉiuj konzoloj." - -#: grub-core/loader/i386/bsd.c:104 grub-core/loader/i386/bsd.c:138 -#: grub-core/loader/i386/bsd.c:171 -msgid "Use serial console." -msgstr "Uzi serian konzolon." - -#: grub-core/loader/i386/bsd.c:105 grub-core/loader/i386/bsd.c:131 -#: grub-core/loader/i386/bsd.c:159 -msgid "Ask for file name to reboot from." -msgstr "Demandi por dosiernomo el kiu okazu restartigo." - -#: grub-core/loader/i386/bsd.c:106 -msgid "Use CD-ROM as root." -msgstr "Uzi KD-ROM-on kiel radikon." - -#: grub-core/loader/i386/bsd.c:107 -msgid "Invoke user configuration routing." -msgstr "Alvoki enkursigon de uzantagordado." - -#: grub-core/loader/i386/bsd.c:108 grub-core/loader/i386/bsd.c:135 -#: grub-core/loader/i386/bsd.c:162 -msgid "Enter in KDB on boot." -msgstr "Eniri KDB dum praÅargo." - -#: grub-core/loader/i386/bsd.c:109 -msgid "Use GDB remote debugger instead of DDB." -msgstr "Uzi GDB-sencimigilon anstataÅ­ DDB." - -#: grub-core/loader/i386/bsd.c:110 -msgid "Disable all boot output." -msgstr "ElÅalti ĉiun praÅargan eligon." - -#: grub-core/loader/i386/bsd.c:112 -msgid "Wait for keypress after every line of output." -msgstr "Atendi klavofrapon post ĉiu eliga linio." - -#: grub-core/loader/i386/bsd.c:114 -msgid "Use compiled-in root device." -msgstr "" - -#: grub-core/loader/i386/bsd.c:115 grub-core/loader/i386/bsd.c:134 -#: grub-core/loader/i386/bsd.c:165 -msgid "Boot into single mode." -msgstr "PraÅargi en unuopan reÄimon." - -#: grub-core/loader/i386/bsd.c:116 grub-core/loader/i386/bsd.c:166 -msgid "Boot with verbose messages." -msgstr "PraÅargi kun ampleksaj mesaÄoj." - -#: grub-core/loader/i386/bsd.c:132 grub-core/loader/i386/bsd.c:160 -msgid "Don't reboot, just halt." -msgstr "Ne restartigi, nur haltigi." - -#: grub-core/loader/i386/bsd.c:133 grub-core/loader/i386/bsd.c:161 -msgid "Change configured devices." -msgstr "ÅœanÄi agorditajn aparatojn." - -#. TRANSLATORS: "com" is static and not to be translated. It refers to -#. serial ports e.g. com1. -#. -#: grub-core/loader/i386/bsd.c:142 -msgid "comUNIT[,SPEED]" -msgstr "comUNIT[,RAPIDO]" - -#: grub-core/loader/i386/bsd.c:157 -msgid "Disable SMP." -msgstr "ElÅalti na SMP." - -#: grub-core/loader/i386/bsd.c:158 -msgid "Disable ACPI." -msgstr "ElÅalti na ACPI." - -#: grub-core/loader/i386/bsd.c:164 -msgid "Don't display boot diagnostic messages." -msgstr "Ne montri dumpraÅargajn diagnozajn mesaÄojn." - -#: grub-core/loader/i386/bsd.c:167 -msgid "Boot with debug messages." -msgstr "PraÅargi kun sencimigo-mesaÄoj." - -#: grub-core/loader/i386/bsd.c:168 -msgid "Suppress normal output (warnings remain)." -msgstr "Subpremi normalan eligon (avertoj restos)." - -#. TRANSLATORS: "com" is static and not to be translated. It refers to -#. serial ports e.g. com1. -#. -#: grub-core/loader/i386/bsd.c:175 -msgid "[ADDR|comUNIT][,SPEED]" -msgstr "[ADR|comUNIT][,RAPIDO]" - -#: grub-core/loader/i386/bsd.c:489 grub-core/loader/i386/bsd.c:555 -msgid "name" -msgstr "" - -#: grub-core/loader/i386/bsd.c:489 grub-core/loader/i386/bsd.c:555 -msgid "type" -msgstr "" - -#: grub-core/loader/i386/bsd.c:489 grub-core/loader/i386/bsd.c:555 -msgid "addr" -msgstr "" - -#: grub-core/loader/i386/bsd.c:490 grub-core/loader/i386/bsd.c:556 -msgid "size" -msgstr "" - -#: grub-core/loader/i386/bsd.c:1147 grub-core/loader/i386/linux.c:466 -#: grub-core/loader/i386/xnu.c:1030 -msgid "Booting in blind mode" -msgstr "" - -#: grub-core/loader/i386/bsd.c:2137 -msgid "Load kernel of FreeBSD." -msgstr "ÅœarÄado de kerno de FreeBSD." - -#: grub-core/loader/i386/bsd.c:2140 -msgid "Load kernel of OpenBSD." -msgstr "ÅœarÄado de kerno de OpenBSD." - -#: grub-core/loader/i386/bsd.c:2143 -msgid "Load kernel of NetBSD." -msgstr "ÅœarÄado de kerno de NetBSD." - -#: grub-core/loader/i386/bsd.c:2147 -msgid "Load FreeBSD env." -msgstr "ÅœarÄado de ĉirkaÅ­aĵo de FreeBSD" - -#: grub-core/loader/i386/bsd.c:2150 -msgid "Load FreeBSD kernel module." -msgstr "ÅœarÄado de kerna modulo de FreeBSD." - -#: grub-core/loader/i386/bsd.c:2153 -msgid "Load NetBSD kernel module." -msgstr "Åœargi kernmodulon de NetBSD." - -#: grub-core/loader/i386/bsd.c:2156 -msgid "Load NetBSD kernel module (ELF)." -msgstr "Åœargi kernmodulon de NetBSD (ELF)." - -#: grub-core/loader/i386/bsd.c:2159 -msgid "Load FreeBSD kernel module (ELF)." -msgstr "ÅœarÄado de kerna modulo de FreeBSD (ELF)." - -#. TRANSLATORS: ramdisk isn't identifier, -#. it can be translated. -#: grub-core/loader/i386/bsd.c:2165 -msgid "Load kOpenBSD ramdisk." -msgstr "" - -#. TRANSLATORS: "payload" is a term used -#. by coreboot and must be translated in -#. sync with coreboot. If unsure, -#. let it untranslated. -#: grub-core/loader/i386/coreboot/chainloader.c:510 -msgid "Load another coreboot payload" -msgstr "" - -#: grub-core/loader/i386/linux.c:876 -msgid "Legacy `ask' parameter no longer supported." -msgstr "" - -#: grub-core/loader/i386/linux.c:892 grub-core/loader/i386/linux.c:902 -#: grub-core/loader/i386/linux.c:932 -#, c-format -msgid "%s is deprecated. Use set gfxpayload=%s before linux command instead.\n" -msgstr "" - -#. TRANSLATORS: "x" has to be entered in, like an identifier, -#. so please don't use better Unicode codepoints. -#: grub-core/loader/i386/linux.c:915 -#, c-format -msgid "" -"%s is deprecated. VGA mode %d isn't recognized. Use set " -"gfxpayload=WIDTHxHEIGHT[xDEPTH] before linux command instead.\n" -msgstr "" - -#: grub-core/loader/i386/pc/chainloader.c:302 -msgid "[--force|--bpb] FILE" -msgstr "" - -#: grub-core/loader/i386/pc/freedos.c:148 util/setup.c:293 -#, c-format -msgid "the size of `%s' is too large" -msgstr "la grando de ‘%s’ tro grandas" - -#: grub-core/loader/i386/pc/freedos.c:183 -msgid "Load FreeDOS kernel.sys." -msgstr "ÅœarÄado de 'kernel.sys' de FreeBSD." - -#: grub-core/loader/i386/pc/ntldr.c:155 -msgid "Load NTLDR or BootMGR." -msgstr "ÅœarÄado de NTLDR na BootMGR" - -#. TRANSLATORS: it's about guessing which GRUB disk -#. is which Plan9 disk. If your language has no -#. word "mapping" you can use another word which -#. means that the GRUBDEVICE and PLAN9DEVICE are -#. actually the same device, just named differently -#. in OS and GRUB. -#: grub-core/loader/i386/pc/plan9.c:59 -msgid "Override guessed mapping of Plan9 devices." -msgstr "" - -#: grub-core/loader/i386/pc/plan9.c:60 -msgid "GRUBDEVICE=PLAN9DEVICE" -msgstr "" - -#: grub-core/loader/i386/pc/plan9.c:599 -msgid "KERNEL ARGS" -msgstr "" - -#: grub-core/loader/i386/pc/plan9.c:599 -msgid "Load Plan9 kernel." -msgstr "" - -#: grub-core/loader/i386/pc/pxechainloader.c:161 -msgid "Load a PXE image." -msgstr "Åœargi PXE-bildon." - -#: grub-core/loader/i386/pc/truecrypt.c:226 -msgid "Load Truecrypt ISO." -msgstr "" - -#: grub-core/loader/i386/xen.c:781 grub-core/loader/i386/xen.c:865 -msgid "initrd already loaded" -msgstr "" - -#: grub-core/loader/i386/xen.c:968 -#, fuzzy -msgid "Load module." -msgstr "Forigi modulon." - -#: grub-core/loader/i386/xnu.c:1003 -msgid "Press any key to launch xnu" -msgstr "" - -#. TRANSLATORS: `device-properties' -#. is a variable name, -#. not a program. -#: grub-core/loader/i386/xnu.c:1159 -msgid "Load `device-properties' dump." -msgstr "" - -#: grub-core/loader/ia64/efi/linux.c:124 -msgid "Could not locate FPSWA driver" -msgstr "" - -#: grub-core/loader/ia64/efi/linux.c:132 -msgid "FPSWA protocol wasn't able to find the interface" -msgstr "" - -#: grub-core/loader/ia64/efi/linux.c:580 -msgid "No FPSWA found" -msgstr "" - -#: grub-core/loader/ia64/efi/linux.c:582 -#, c-format -msgid "FPSWA revision: %x\n" -msgstr "" - -#: grub-core/loader/ia64/efi/linux.c:591 -msgid "FILE [ARGS...]" -msgstr "DOSIERO [ARGS...]" - -#: grub-core/loader/ia64/efi/linux.c:597 -msgid "Display FPSWA version." -msgstr "" - -#: grub-core/loader/multiboot.c:248 -msgid "WARNING: no console will be available to OS" -msgstr "" - -#: grub-core/loader/multiboot.c:450 -msgid "Load a multiboot 2 kernel." -msgstr "Åœargi multiboot-2-kernon." - -#: grub-core/loader/multiboot.c:453 -msgid "Load a multiboot 2 module." -msgstr "Åœargi multiboot-2-modulon." - -#: grub-core/loader/multiboot.c:456 -msgid "Load a multiboot kernel." -msgstr "Åœargi multiboot-kernon." - -#: grub-core/loader/multiboot.c:459 -msgid "Load a multiboot module." -msgstr "Åœargi multiboot-modulon." - -#: grub-core/loader/riscv/linux.c:30 grub-core/loader/riscv/linux.c:40 -msgid "Linux not supported yet" -msgstr "" - -#: grub-core/loader/xnu.c:1416 grub-core/term/gfxterm_background.c:45 -msgid "Background image mode." -msgstr "" - -#. TRANSLATORS: This refers to background image mode (stretched or -#. in left-top corner). Note that GRUB will accept only original -#. keywords stretch and normal, not the translated ones. -#. So please put both in translation -#. e.g. stretch(=%STRETCH%)|normal(=%NORMAL%). -#. The percents mark the translated version. Since many people -#. may not know the word stretch or normal I recommend -#. putting the translation either here or in "Background image mode." -#. string. -#: grub-core/loader/xnu.c:1416 grub-core/term/gfxterm_background.c:55 -msgid "stretch|normal" -msgstr "" - -#: grub-core/loader/xnu.c:1482 -msgid "Load XNU image." -msgstr "Åœargi XNU-bildon." - -#: grub-core/loader/xnu.c:1484 -msgid "Load 64-bit XNU image." -msgstr "Åœargi 64-bitan XNU-bildon." - -#: grub-core/loader/xnu.c:1486 -msgid "Load XNU extension package." -msgstr "Åœargi XNU-aldonpakaĵon." - -#: grub-core/loader/xnu.c:1488 -msgid "Load XNU extension." -msgstr "Åœargi XNU-aldonaĵon." - -#. TRANSLATORS: OSBundleRequired is a -#. variable name in xnu extensions -#. manifests. It behaves mostly like -#. GNU/Linux runlevels. -#. -#: grub-core/loader/xnu.c:1495 -msgid "DIRECTORY [OSBundleRequired]" -msgstr "DOSIERUJO [OSBundleRequired]" - -#. TRANSLATORS: There are many extensions -#. in extension directory. -#: grub-core/loader/xnu.c:1498 -msgid "Load XNU extension directory." -msgstr "Åœargi dosierujon de XNU-etendaĵoj." - -#. TRANSLATORS: ramdisk here isn't identifier. It can be translated. -#: grub-core/loader/xnu.c:1501 -msgid "Load XNU ramdisk. It will be available in OS as md0." -msgstr "" - -#: grub-core/loader/xnu.c:1505 -msgid "Load a splash image for XNU." -msgstr "Åœargi salutÅildon por XNU." - -#: grub-core/loader/xnu.c:1510 -#, fuzzy -msgid "Load an image of hibernated XNU." -msgstr "Åœargi salutÅildon por XNU." - -#: grub-core/mmap/mmap.c:538 -msgid "ADDR1,MASK1[,ADDR2,MASK2[,...]]" -msgstr "ADR1,MASKO1[,ADR2,MASKO2[,...]]" - -#: grub-core/mmap/mmap.c:539 -#, fuzzy -msgid "Declare memory regions as faulty (badram)." -msgstr "Deklari memorregionojn neuzeblaj." - -#: grub-core/mmap/mmap.c:541 -msgid "FROM[K|M|G] TO[K|M|G]" -msgstr "DE[K|M|G] AL[K|M|G]" - -#: grub-core/mmap/mmap.c:542 -msgid "Remove any memory regions in specified range." -msgstr "Forigi ĉiujn memorregionojn en la specifita amplekso." - -#: grub-core/net/bootp.c:653 -msgid "four arguments expected" -msgstr "" - -#: grub-core/net/bootp.c:661 grub-core/net/net.c:1155 -#, c-format -msgid "unrecognised network interface `%s'" -msgstr "" - -#: grub-core/net/bootp.c:664 -msgid "no DHCP info found" -msgstr "" - -#: grub-core/net/bootp.c:674 -msgid "no DHCP options found" -msgstr "" - -#: grub-core/net/bootp.c:682 -msgid "invalid DHCP option code" -msgstr "" - -#: grub-core/net/bootp.c:686 -#, c-format -msgid "no DHCP option %u found" -msgstr "" - -#: grub-core/net/bootp.c:743 -#, c-format -msgid "unrecognised DHCP option format specification `%s'" -msgstr "" - -#: grub-core/net/bootp.c:767 -msgid "no network card found" -msgstr "" - -#: grub-core/net/bootp.c:859 grub-core/net/net.c:389 -#, c-format -msgid "couldn't autoconfigure %s" -msgstr "" - -#: grub-core/net/bootp.c:873 grub-core/net/bootp.c:876 -msgid "[CARD]" -msgstr "" - -#: grub-core/net/bootp.c:874 -msgid "perform a bootp autoconfiguration" -msgstr "" - -#: grub-core/net/bootp.c:877 -msgid "perform a DHCP autoconfiguration" -msgstr "" - -#: grub-core/net/bootp.c:879 -msgid "VAR INTERFACE NUMBER DESCRIPTION" -msgstr "" - -#: grub-core/net/bootp.c:880 -msgid "" -"retrieve DHCP option and save it into VAR. If VAR is - then print the value." -msgstr "" - -#: grub-core/net/dns.c:459 -msgid "no DNS servers configured" -msgstr "" - -#: grub-core/net/dns.c:522 -msgid "domain name component is too long" -msgstr "" - -#: grub-core/net/dns.c:618 grub-core/net/dns.c:666 -msgid "no DNS record found" -msgstr "" - -#: grub-core/net/dns.c:626 -msgid "no DNS reply received" -msgstr "" - -#: grub-core/net/dns.c:682 -msgid "only ipv4" -msgstr "" - -#: grub-core/net/dns.c:686 -msgid "only ipv6" -msgstr "" - -#: grub-core/net/dns.c:690 -msgid "prefer ipv4" -msgstr "" - -#: grub-core/net/dns.c:694 -msgid "prefer ipv6" -msgstr "" - -#: grub-core/net/dns.c:759 -msgid "ADDRESS DNSSERVER" -msgstr "" - -#: grub-core/net/dns.c:760 -msgid "Perform a DNS lookup" -msgstr "" - -#: grub-core/net/dns.c:762 grub-core/net/dns.c:765 -msgid "DNSSERVER" -msgstr "" - -#: grub-core/net/dns.c:763 -msgid "Add a DNS server" -msgstr "" - -#: grub-core/net/dns.c:766 -msgid "Remove a DNS server" -msgstr "" - -#: grub-core/net/dns.c:768 -msgid "List DNS servers" -msgstr "Listigi DNS-servilojn" - -#: grub-core/net/drivers/efi/efinet.c:49 grub-core/net/drivers/efi/efinet.c:65 -#: grub-core/net/drivers/efi/efinet.c:77 grub-core/net/drivers/emu/emunet.c:62 -#: grub-core/net/drivers/i386/pc/pxe.c:273 -#: grub-core/net/drivers/ieee1275/ofnet.c:75 -#: grub-core/net/drivers/uboot/ubootnet.c:62 -msgid "couldn't send network packet" -msgstr "" - -#: grub-core/net/drivers/ieee1275/ofnet.c:326 -#: grub-core/net/drivers/ieee1275/ofnet.c:359 -msgid "interpret is not supported" -msgstr "" - -#: grub-core/net/drivers/ieee1275/ofnet.c:336 -msgid "alloc-mem failed" -msgstr "" - -#: grub-core/net/drivers/ieee1275/ofnet.c:370 -msgid "free-mem failed" -msgstr "" - -#: grub-core/net/http.c:105 -msgid "unsupported HTTP response" -msgstr "" - -#. TRANSLATORS: GRUB HTTP code is pretty young. So even perfectly -#. valid answers like 403 will trigger this very generic message. -#: grub-core/net/http.c:126 -#, c-format -msgid "unsupported HTTP error %d: %s" -msgstr "" - -#: grub-core/net/http.c:429 grub-core/net/tftp.c:420 -#, c-format -msgid "time out opening `%s'" -msgstr "" - -#: grub-core/net/net.c:179 -msgid "timeout: could not resolve hardware address" -msgstr "" - -#: grub-core/net/net.c:548 -#, c-format -msgid "unresolvable address %s" -msgstr "" - -#: grub-core/net/net.c:594 -#, c-format -msgid "unrecognised network address `%s'" -msgstr "" - -#: grub-core/net/net.c:661 -msgid "destination unreachable" -msgstr "" - -#. TRANSLATORS: route loop is a condition when e.g. -#. to contact server A you need to go through B -#. and to contact B you need to go through A. -#: grub-core/net/net.c:684 -msgid "route loop detected" -msgstr "" - -#: grub-core/net/net.c:700 -msgid "address not found" -msgstr "" - -#: grub-core/net/net.c:704 -msgid "you can't delete this address" -msgstr "" - -#: grub-core/net/net.c:776 grub-core/net/net.c:792 -#, c-format -msgid "Unsupported hw address type %d\n" -msgstr "" - -#: grub-core/net/net.c:813 -#, c-format -msgid "Unsupported address type %d\n" -msgstr "" - -#: grub-core/net/net.c:1017 grub-core/net/net.c:1131 -msgid "three arguments expected" -msgstr "" - -#: grub-core/net/net.c:1023 -msgid "card not found" -msgstr "" - -#. TRANSLATORS: it refers to the network address. -#: grub-core/net/net.c:1167 -msgid "temporary" -msgstr "dumtempe" - -#: grub-core/net/net.c:1190 -#, c-format -msgid "Unknown address type %d\n" -msgstr "" - -#: grub-core/net/net.c:1298 -msgid "no server is specified" -msgstr "neniu servilo estas specifita" - -#: grub-core/net/net.c:1637 -#, c-format -msgid "timeout reading `%s'" -msgstr "" - -#. TRANSLATORS: HWADDRESS stands for -#. "hardware address". -#: grub-core/net/net.c:1762 -msgid "SHORTNAME CARD ADDRESS [HWADDRESS]" -msgstr "" - -#: grub-core/net/net.c:1763 -msgid "Add a network address." -msgstr "" - -#: grub-core/net/net.c:1766 -msgid "[CARD [HWADDRESS]]" -msgstr "" - -#: grub-core/net/net.c:1767 -msgid "Perform an IPV6 autoconfiguration" -msgstr "" - -#: grub-core/net/net.c:1770 grub-core/net/net.c:1777 -msgid "SHORTNAME" -msgstr "" - -#: grub-core/net/net.c:1771 -msgid "Delete a network address." -msgstr "" - -#. TRANSLATORS: "gw" is a keyword. -#: grub-core/net/net.c:1774 -msgid "SHORTNAME NET [INTERFACE| gw GATEWAY]" -msgstr "" - -#: grub-core/net/net.c:1775 -msgid "Add a network route." -msgstr "" - -#: grub-core/net/net.c:1778 -msgid "Delete a network route." -msgstr "" - -#: grub-core/net/net.c:1780 -msgid "list network routes" -msgstr "" - -#: grub-core/net/net.c:1782 -msgid "list network cards" -msgstr "" - -#: grub-core/net/net.c:1784 -msgid "list network addresses" -msgstr "" - -#: grub-core/net/tcp.c:681 -msgid "connection refused" -msgstr "" - -#: grub-core/net/tcp.c:684 -msgid "connection timeout" -msgstr "" - -#: grub-core/normal/auth.c:220 -msgid "Enter username: " -msgstr "Enigu uzantnomon: " - -#: grub-core/normal/auth.c:269 -msgid "[USERLIST]" -msgstr "[UZANTLISTO]" - -#: grub-core/normal/auth.c:270 -msgid "Check whether user is in USERLIST." -msgstr "" - -#: grub-core/normal/cmdline.c:174 grub-core/normal/menu_entry.c:1068 -msgid "Possible commands are:" -msgstr "Eblaj komandoj:" - -#: grub-core/normal/cmdline.c:177 grub-core/normal/menu_entry.c:1072 -msgid "Possible devices are:" -msgstr "Eblaj aparatoj:" - -#: grub-core/normal/cmdline.c:180 grub-core/normal/menu_entry.c:1076 -msgid "Possible files are:" -msgstr "Eblaj dosieroj:" - -#: grub-core/normal/cmdline.c:183 grub-core/normal/menu_entry.c:1080 -msgid "Possible partitions are:" -msgstr "Eblaj subdiskoj:" - -#: grub-core/normal/cmdline.c:186 grub-core/normal/menu_entry.c:1084 -msgid "Possible arguments are:" -msgstr "Eblaj argumentoj:" - -#. TRANSLATORS: this message is used if none of above matches. -#. This shouldn't happen but please use the general term for -#. "thing" or "object". -#: grub-core/normal/cmdline.c:192 grub-core/normal/menu_entry.c:1088 -msgid "Possible things are:" -msgstr "Eblaj aĵoj:" - -#: grub-core/normal/color.c:81 -#, c-format -msgid "Warning: syntax error (missing slash) in `%s'\n" -msgstr "Atenton: sintaksa eraro (mankanta oblikvo (‘/’) en ‘%s’\n" - -#: grub-core/normal/color.c:90 -#, c-format -msgid "Warning: invalid foreground color `%s'\n" -msgstr "Averto: nevalida fonkoloro ‘%s’\n" - -#: grub-core/normal/color.c:96 -#, c-format -msgid "Warning: invalid background color `%s'\n" -msgstr "Averto: nevalida malfonkoloro ‘%s’\n" - -#: grub-core/normal/context.c:206 -msgid "ENVVAR [ENVVAR] ..." -msgstr "ĈIRKVAR [ĈIRKVAR] ..." - -#: grub-core/normal/context.c:207 -msgid "Export variables." -msgstr "Eksporti variablojn." - -#: grub-core/normal/datetime.c:25 -msgid "Sunday" -msgstr "Dimanĉo" - -#: grub-core/normal/datetime.c:26 -msgid "Monday" -msgstr "Lundo" - -#: grub-core/normal/datetime.c:27 -msgid "Tuesday" -msgstr "Mardo" - -#: grub-core/normal/datetime.c:28 -msgid "Wednesday" -msgstr "Merkredo" - -#: grub-core/normal/datetime.c:29 -msgid "Thursday" -msgstr "Ä´aÅ­do" - -#: grub-core/normal/datetime.c:30 -msgid "Friday" -msgstr "Vendredo" - -#: grub-core/normal/datetime.c:31 -msgid "Saturday" -msgstr "Sabato" - -#: grub-core/normal/dyncmd.c:187 -msgid "module isn't loaded" -msgstr "neÅargita" - -#: grub-core/normal/main.c:211 -#, c-format -msgid "GNU GRUB version %s" -msgstr "GNU GRUB versio %s" - -#: grub-core/normal/main.c:360 -msgid "ESC at any time exits." -msgstr "‘Esk’ ĉiam elirigas." - -#: grub-core/normal/main.c:363 -#, c-format -msgid "" -"Minimal BASH-like line editing is supported. For the first word, TAB lists " -"possible command completions. Anywhere else TAB lists possible device or " -"file completions. %s" -msgstr "" -"Minimuma ‘BASH’-eca linimodifado estas subtenata. Por la unua vorto, TABO " -"listigas eblajn komandojn. Aliloke TABO listigas eblajn aparatojn aÅ­ " -"dosierojn. %s" - -#. TRANSLATORS: it's command line prompt. -#: grub-core/normal/main.c:395 -msgid ">" -msgstr ">" - -#. TRANSLATORS: it's command line prompt. -#: grub-core/normal/main.c:398 -msgid "grub>" -msgstr "grubo>" - -#: grub-core/normal/main.c:518 -msgid "Clear the screen." -msgstr "Vakigi la ekranon." - -#: grub-core/normal/main.c:527 -msgid "Enter normal mode." -msgstr "Starti normalreÄimon." - -#: grub-core/normal/main.c:529 -msgid "Exit from normal mode." -msgstr "Foriri el normalreÄimo." - -#: grub-core/normal/menu.c:66 grub-core/normal/menu_entry.c:1449 -msgid "Press any key to continue..." -msgstr "Premu klavon por daÅ­rigi ..." - -#: grub-core/normal/menu.c:815 -#, c-format -msgid "Booting `%s'" -msgstr "Åœargas na ‘%s’" - -#: grub-core/normal/menu.c:827 -#, c-format -msgid "Falling back to `%s'" -msgstr "Refalas al ‘%s’" - -#: grub-core/normal/menu.c:843 -msgid "Failed to boot both default and fallback entries.\n" -msgstr "PraÅargo de kaj defaÅ­lta kaj refala eroj malsukcesis.\n" - -#: grub-core/normal/menu_entry.c:1171 -msgid "Booting a command list" -msgstr "PraÅargas komandliston" - -#: grub-core/normal/menu_text.c:160 -msgid "" -"Minimum Emacs-like screen editing is supported. TAB lists completions. Press " -"Ctrl-x or F10 to boot, Ctrl-c or F2 for a command-line or ESC to discard " -"edits and return to the GRUB menu." -msgstr "" -"Minimuma Emacs-eca ekranmodifado estas subtenata. ‘Tabo’ listigas " -"kompletaĵojn. Premu ‘Stir-x’ aÅ­ ‘F10’ por praÅargi, ‘Stir-c’ aÅ­ ‘F2’ por " -"komandlinio aÅ­ ‘Esk’ por forĵeti modifojn kaj reiri al la GRUB-menuo." - -#: grub-core/normal/menu_text.c:170 -#, fuzzy, c-format -msgid "Use the %C and %C keys to select which entry is highlighted." -msgstr "Uzu la klavojn ‘%C’ kaj ‘%C’ por elekti eron." - -#. TRANSLATORS: that's the list of binary unit prefixes. -#: grub-core/normal/misc.c:38 -msgid "B" -msgstr "" - -#: grub-core/normal/misc.c:38 -msgid "KiB" -msgstr "" - -#: grub-core/normal/misc.c:38 -msgid "MiB" -msgstr "" - -#: grub-core/normal/misc.c:38 -msgid "GiB" -msgstr "" - -#: grub-core/normal/misc.c:38 -msgid "TiB" -msgstr "" - -#: grub-core/normal/misc.c:38 -msgid "PiB" -msgstr "" - -#. TRANSLATORS: that's the list of binary unit prefixes. -#: grub-core/normal/misc.c:40 -msgid "K" -msgstr "" - -#: grub-core/normal/misc.c:40 -msgid "M" -msgstr "" - -#: grub-core/normal/misc.c:40 -msgid "G" -msgstr "" - -#: grub-core/normal/misc.c:40 -msgid "T" -msgstr "" - -#: grub-core/normal/misc.c:40 -msgid "P" -msgstr "" - -#. TRANSLATORS: that's the list of binary unit prefixes. -#: grub-core/normal/misc.c:42 -msgid "B/s" -msgstr "" - -#: grub-core/normal/misc.c:42 -msgid "KiB/s" -msgstr "" - -#: grub-core/normal/misc.c:42 -msgid "MiB/s" -msgstr "" - -#: grub-core/normal/misc.c:42 -msgid "GiB/s" -msgstr "" - -#: grub-core/normal/misc.c:42 -msgid "TiB/s" -msgstr "" - -#: grub-core/normal/misc.c:42 -msgid "PiB/s" -msgstr "" - -#: grub-core/normal/misc.c:96 -#, c-format -msgid "Partition %s:" -msgstr "Subdisko ‘%s’:" - -#: grub-core/normal/misc.c:101 -#, c-format -msgid "Device %s:" -msgstr "Aparato ‘%s’:" - -#: grub-core/normal/misc.c:107 -msgid "Filesystem cannot be accessed" -msgstr "Ne eblis atingi dosiersistemon" - -#: grub-core/normal/misc.c:121 -#, c-format -msgid "Filesystem type %s" -msgstr "Dosiersistema tipo: ‘%s’" - -#: grub-core/normal/misc.c:131 -#, c-format -msgid "- Label `%s'" -msgstr "- Etikedo “%sâ€" - -#. TRANSLATORS: Arguments are year, month, day, hour, minute, -#. second, day of the week (translated). -#: grub-core/normal/misc.c:148 -#, c-format -msgid "- Last modification time %d-%02d-%02d %02d:%02d:%02d %s" -msgstr "- Laste modifiÄis je %d-%02d-%02d %02d:%02d:%02d %s" - -#: grub-core/normal/misc.c:171 -msgid "No known filesystem detected" -msgstr "Detektis neniun konatan dosiersistemon" - -#: grub-core/normal/misc.c:174 -#, c-format -msgid " - Partition start at %llu%sKiB" -msgstr "" - -#: grub-core/normal/misc.c:178 -#, c-format -msgid " - Sector size %uB" -msgstr "" - -#: grub-core/normal/misc.c:180 -msgid " - Total size unknown" -msgstr "" - -#: grub-core/normal/misc.c:182 -#, c-format -msgid " - Total size %llu%sKiB" -msgstr "" - -#. TRANSLATORS: Replace dot with appropriate decimal separator for -#. your language. -#: grub-core/normal/misc.c:186 -msgid ".5" -msgstr "" - -#. TRANSLATORS: This has to fit on one line. It's ok to include few -#. words but don't write poems. -#: grub-core/normal/term.c:82 -msgid "--MORE--" -msgstr "--PLI--" - -#: grub-core/osdep/aros/config.c:92 grub-core/osdep/unix/config.c:137 -#: grub-core/osdep/windows/config.c:55 -#, fuzzy, c-format -msgid "cannot open configuration file `%s': %s" -msgstr "ne eblas malfermi OS-dosieron %s:%s" - -#: grub-core/osdep/basic/compress.c:8 grub-core/osdep/basic/compress.c:14 -#: grub-core/osdep/basic/compress.c:20 -msgid "no compression is available for your platform" -msgstr "" - -#: grub-core/osdep/basic/no_platform.c:30 -#: grub-core/osdep/windows/platform.c:418 -msgid "no IEEE1275 routines are available for your platform" -msgstr "" - -#: grub-core/osdep/basic/no_platform.c:38 -msgid "no EFI routines are available for your platform" -msgstr "" - -#: grub-core/osdep/basic/no_platform.c:45 -#: grub-core/osdep/windows/platform.c:425 -msgid "no SGI routines are available for your platform" -msgstr "" - -#. TRANSLATORS: The OS itself may very well have a random -#. number generator but GRUB doesn't know how to access it. -#: grub-core/osdep/basic/random.c:42 -msgid "no random number generator is available for your OS" -msgstr "" - -#: grub-core/osdep/devmapper/getroot.c:81 -msgid "Failed to create `device-mapper' tree" -msgstr "" - -#: grub-core/osdep/devmapper/getroot.c:197 -#: grub-core/osdep/freebsd/getroot.c:202 -#, c-format -msgid "can't mount encrypted volume `%s': %s" -msgstr "" - -#. TRANSLATORS: geom is the name of (k)FreeBSD device framework. -#. Usually left untranslated. -#. -#: grub-core/osdep/freebsd/getroot.c:82 grub-core/osdep/freebsd/getroot.c:164 -#: grub-core/osdep/freebsd/getroot.c:258 grub-core/osdep/freebsd/getroot.c:316 -msgid "couldn't open geom" -msgstr "ne eblas malfermi na Geom" - -#: grub-core/osdep/freebsd/getroot.c:182 grub-core/osdep/freebsd/getroot.c:277 -msgid "couldn't find geli consumer" -msgstr "" - -#: grub-core/osdep/freebsd/getroot.c:282 -msgid "couldn't retrieve geli UUID" -msgstr "" - -#. TRANSLATORS: geom is the name of (k)FreeBSD device framework. -#. Usually left untranslated. "part" is the identifier of one of its -#. classes. -#: grub-core/osdep/freebsd/getroot.c:325 -msgid "couldn't find geom `part' class" -msgstr "" - -#: grub-core/osdep/freebsd/hostdisk.c:72 grub-core/osdep/linux/hostdisk.c:93 -msgid "unaligned device size" -msgstr "" - -#: grub-core/osdep/generic/blocklist.c:56 -#, c-format -msgid "attempting to read the core image `%s' from GRUB" -msgstr "provas legi la kernbildon ‘%s’ el Grubo" - -#: grub-core/osdep/generic/blocklist.c:57 -#, c-format -msgid "attempting to read the core image `%s' from GRUB again" -msgstr "provas relegi la kernbildon ‘%s’ el Grubo denove" - -#: grub-core/osdep/generic/blocklist.c:115 -#, c-format -msgid "cannot read `%s' correctly" -msgstr "ne eblas legi ‘%s’ korekte" - -#: grub-core/osdep/generic/blocklist.c:126 -#, fuzzy -msgid "failed to read the sectors of the core image" -msgstr "fiaskis legi la restantajn sektorojn de la kernbildo" - -#. TRANSLATORS: On GNU/Hurd, a "translator" is similar to a filesystem -#. mount, but handled by a userland daemon, whose invocation command line -#. is being fetched here. First %s is the file being looked at (for which -#. we are fetching the "translator" command line), second %s is the error -#. message. -#. -#: grub-core/osdep/hurd/getroot.c:79 -#, c-format -msgid "cannot get translator command line for path `%s': %s" -msgstr "" - -#: grub-core/osdep/hurd/getroot.c:82 -#, c-format -msgid "translator command line is empty for path `%s'" -msgstr "" - -#. TRANSLATORS: we expect to get something like -#. /hurd/foobar --option1 --option2=baz /dev/something -#. -#: grub-core/osdep/hurd/getroot.c:98 -#, c-format -msgid "" -"translator `%s' for path `%s' has several non-option words, at least `%s' " -"and `%s'" -msgstr "" - -#. TRANSLATORS: we expect to get something like -#. /hurd/foobar --option1 --option2=baz /dev/something -#. -#: grub-core/osdep/hurd/getroot.c:109 -#, c-format -msgid "" -"translator `%s' for path `%s' is given only options, cannot find device part" -msgstr "" - -#: grub-core/osdep/hurd/hostdisk.c:73 -#, c-format -msgid "Storage information for `%s' does not include type" -msgstr "" - -#: grub-core/osdep/hurd/hostdisk.c:75 -#, c-format -msgid "`%s' is not a local disk" -msgstr "" - -#: grub-core/osdep/hurd/hostdisk.c:78 -#, c-format -msgid "" -"Storage information for `%s' indicates neither a plain partition nor a plain " -"disk" -msgstr "" - -#: grub-core/osdep/linux/blocklist.c:81 grub-core/osdep/linux/blocklist.c:96 -#: grub-core/osdep/linux/blocklist.c:122 -#, c-format -msgid "can't retrieve blocklists: %s" -msgstr "" - -#: grub-core/osdep/linux/blocklist.c:84 -msgid "blocksize is not divisible by 512" -msgstr "" - -#: grub-core/osdep/linux/blocklist.c:86 -#, fuzzy -msgid "invalid zero blocksize" -msgstr "nevalida ĉirkaÅ­aĵa bloko" - -#: grub-core/osdep/linux/blocklist.c:90 util/setup.c:744 -msgid "can't retrieve blocklists" -msgstr "" - -#: grub-core/osdep/linux/getroot.c:154 -#, c-format -msgid "ioctl RAID_VERSION error: %s" -msgstr "" - -#: grub-core/osdep/linux/getroot.c:160 grub-core/osdep/linux/getroot.c:164 -#, c-format -msgid "unsupported RAID version: %d.%d" -msgstr "" - -#: grub-core/osdep/linux/getroot.c:169 -#, c-format -msgid "ioctl GET_ARRAY_INFO error: %s" -msgstr "" - -#: grub-core/osdep/linux/getroot.c:178 -#, c-format -msgid "ioctl GET_DISK_INFO error: %s" -msgstr "" - -#: grub-core/osdep/linux/getroot.c:608 grub-core/osdep/linux/getroot.c:678 -#: grub-core/osdep/linux/hostdisk.c:126 grub-core/osdep/unix/getroot.c:253 -#: grub-core/osdep/unix/getroot.c:642 grub-core/osdep/unix/platform.c:92 -#: grub-core/osdep/unix/platform.c:100 -#, c-format -msgid "Unable to open stream from %s: %s" -msgstr "" - -#: grub-core/osdep/linux/getroot.c:1033 -#, c-format -msgid "unknown kind of RAID device `%s'" -msgstr "" - -#: grub-core/osdep/linux/ofpath.c:181 -#, c-format -msgid "`obppath' not found in parent dirs of `%s', no IEEE1275 name discovery" -msgstr "" - -#: grub-core/osdep/linux/ofpath.c:222 grub-core/osdep/unix/getroot.c:505 -#: grub-core/osdep/unix/getroot.c:529 grub-core/osdep/unix/relpath.c:49 -#: util/grub-install.c:984 util/grub-install.c:1331 util/grub-probe.c:323 -#, c-format -msgid "failed to get canonical path of `%s'" -msgstr "" - -#: grub-core/osdep/linux/ofpath.c:740 -#, fuzzy, c-format -msgid "unknown device type %s" -msgstr "nekonata argumento '%s'" - -#: grub-core/osdep/linux/ofpath.c:758 util/ieee1275/grub-ofpathname.c:39 -#, c-format -msgid "Usage: %s DEVICE\n" -msgstr "" - -#: grub-core/osdep/unix/exec.c:86 grub-core/osdep/unix/exec.c:172 -#: grub-core/osdep/unix/exec.c:217 -#, c-format -msgid "Unable to fork: %s" -msgstr "" - -#: grub-core/osdep/unix/exec.c:166 grub-core/osdep/unix/exec.c:211 -#, c-format -msgid "Unable to create pipe: %s" -msgstr "" - -#: grub-core/osdep/unix/getroot.c:370 -#, fuzzy -msgid "cannot save the original directory" -msgstr "ne estas dosierujo" - -#: grub-core/osdep/unix/getroot.c:423 grub-core/osdep/unix/getroot.c:480 -#: grub-core/osdep/unix/getroot.c:489 -msgid "cannot restore the original directory" -msgstr "" - -#. TRANSLATORS: "stat" comes from the name of POSIX function. -#: grub-core/osdep/unix/getroot.c:551 grub-core/osdep/unix/hostdisk.c:61 -#: grub-core/osdep/unix/relpath.c:73 grub-core/osdep/unix/relpath.c:97 -#: util/getroot.c:160 util/getroot.c:162 util/grub-install.c:774 -#: util/grub-macbless.c:70 -#, c-format -msgid "cannot stat `%s': %s" -msgstr "" - -#: grub-core/osdep/unix/hostdisk.c:293 -#, fuzzy, c-format -msgid "cannot make temporary file: %s" -msgstr "ne eblas alinomi la dosieron %s al %s" - -#: grub-core/osdep/unix/hostdisk.c:311 -#, fuzzy, c-format -msgid "cannot make temporary directory: %s" -msgstr "ne eblas alinomi la dosieron %s al %s" - -#: grub-core/osdep/unix/platform.c:77 -#, c-format -msgid "" -"couldn't find IEEE1275 device path for %s.\n" -"You will have to set `boot-device' variable manually" -msgstr "" - -#. TRANSLATORS: This message is shown when required executable `%s' -#. isn't found. -#: grub-core/osdep/unix/platform.c:149 grub-core/osdep/unix/platform.c:189 -#, fuzzy, c-format -msgid "%s: not found" -msgstr "%s: informoj:" - -#: grub-core/osdep/unix/platform.c:225 -#, c-format -msgid "" -"`nvsetenv' failed. \n" -"You will have to set `boot-device' variable manually. At the IEEE1275 " -"prompt, type:\n" -" %s\n" -msgstr "" - -#: grub-core/osdep/unix/platform.c:240 -msgid "You will have to set `SystemPartition' and `OSLoader' manually." -msgstr "" - -#. TRANSLATORS: canonical pathname is the -#. complete one e.g. /etc/fstab. It has -#. to contain `/' normally, if it doesn't -#. we're in trouble and throw this error. -#: grub-core/osdep/unix/relpath.c:90 -msgid "no `/' in canonical filename" -msgstr "" - -#: grub-core/osdep/windows/hostdisk.c:151 -msgid "cygwin_conv_path() failed" -msgstr "" - -#: grub-core/osdep/windows/hostdisk.c:501 util/grub-install.c:570 -msgid "couldn't retrieve random data" -msgstr "" - -#: grub-core/osdep/windows/platform.c:97 -msgid "Insufficient privileges to access firmware, assuming BIOS" -msgstr "" - -#: grub-core/osdep/windows/platform.c:225 -msgid "no EFI routines are available when running in BIOS mode" -msgstr "" - -#: grub-core/osdep/windows/platform.c:240 -#, fuzzy -msgid "unexpected EFI error" -msgstr "neatendita fino de dosiero" - -#: grub-core/osdep/windows/platform.c:315 -msgid "Couldn't find a free BootNNNN slot" -msgstr "" - -#: grub-core/partmap/gpt.c:191 -msgid "" -"this GPT partition label contains no BIOS Boot Partition; embedding won't be " -"possible" -msgstr "" - -#: grub-core/partmap/gpt.c:196 -msgid "your BIOS Boot Partition is too small; embedding won't be possible" -msgstr "" - -#. TRANSLATORS: MBR gap and boot track is the same thing and is the space -#. between MBR and first partitition. If your language translates well only -#. "boot track", you can just use it everywhere. Next two messages are about -#. RAID controllers/software bugs which GRUB has to live with. Please spread -#. the message that these are bugs in other software and not merely -#. suboptimal behaviour. -#: grub-core/partmap/msdos.c:51 -#, c-format -msgid "" -"Sector %llu is already in use by raid controller `%s'; avoiding it. Please " -"ask the manufacturer not to store data in MBR gap" -msgstr "" - -#: grub-core/partmap/msdos.c:54 -#, c-format -msgid "" -"Sector %llu is already in use by the program `%s'; avoiding it. This " -"software may cause boot or other problems in future. Please ask its authors " -"not to store data in the boot track" -msgstr "" - -#: grub-core/partmap/msdos.c:384 -msgid "" -"other software is using the embedding area, and there is not enough room for " -"core.img. Such software is often trying to store data in a way that avoids " -"detection. We recommend you investigate" -msgstr "" - -#: grub-core/partmap/msdos.c:395 -msgid "" -"this msdos-style partition label has no post-MBR gap; embedding won't be " -"possible" -msgstr "" - -#: grub-core/partmap/msdos.c:404 -msgid "your embedding area is unusually small. core.img won't fit in it." -msgstr "" - -#: grub-core/parttool/msdospart.c:39 -msgid "Make partition active" -msgstr "" - -#: grub-core/parttool/msdospart.c:51 -msgid "not a primary partition" -msgstr "" - -#: grub-core/parttool/msdospart.c:69 -#, c-format -msgid "Partition %d is active now. \n" -msgstr "" - -#: grub-core/parttool/msdospart.c:74 -#, c-format -msgid "Cleared active flag on %d. \n" -msgstr "" - -#: grub-core/parttool/msdospart.c:87 -msgid "Change partition type" -msgstr "" - -#: grub-core/parttool/msdospart.c:88 -msgid "Set `hidden' flag in partition type" -msgstr "" - -#: grub-core/parttool/msdospart.c:130 -#, c-format -msgid "the partition type 0x%x isn't valid" -msgstr "" - -#. TRANSLATORS: In this case we're actually writing to the disk and actively -#. modifying partition type rather than just defining it. -#: grub-core/parttool/msdospart.c:137 -#, c-format -msgid "Setting partition type to 0x%x\n" -msgstr "" - -#. TRANSLATORS: 0 is a quantifier. "break" (similar to bash) -#. can be used e.g. to break 3 loops at once. -#. But asking it to break 0 loops makes no sense. -#: grub-core/script/execute.c:143 -msgid "can't break 0 loops" -msgstr "" - -#. TRANSLATORS: It's about not being -#. inside a function. "return" can be used only -#. in a function and this error occurs if it's used -#. anywhere else. -#: grub-core/script/execute.c:227 -msgid "not in function body" -msgstr "" - -#: grub-core/script/execute.c:371 -#, c-format -msgid "invalid variable name `%s'" -msgstr "" - -#: grub-core/script/execute.c:953 -msgid "cannot allocate command buffer" -msgstr "" - -#: grub-core/script/lexer.c:144 util/grub-fstest.c:330 -msgid "unexpected end of file" -msgstr "neatendita fino de dosiero" - -#: grub-core/script/main.c:55 grub-core/script/main.c:57 -#: grub-core/script/main.c:59 grub-core/script/main.c:67 -msgid "[NUM]" -msgstr "" - -#: grub-core/script/main.c:55 -msgid "Exit from loops" -msgstr "Eliri iteraciojn" - -#: grub-core/script/main.c:57 -msgid "Continue loops" -msgstr "DaÅ­rigi iteraciojn" - -#. TRANSLATORS: Positional arguments are -#. arguments $0, $1, $2, ... -#: grub-core/script/main.c:62 -msgid "Shift positional parameters." -msgstr "Åœovi poziciajn parametrojn." - -#: grub-core/script/main.c:64 -msgid "[VALUE]..." -msgstr "[VALORO]..." - -#: grub-core/script/main.c:65 -msgid "Set positional parameters." -msgstr "Agordi poziciajn parametrojn." - -#. TRANSLATORS: It's a command description -#. and "Return" is a verb, not a noun. The -#. command in question is "return" and -#. has exactly the same semanics as bash -#. equivalent. -#: grub-core/script/main.c:73 -msgid "Return from a function." -msgstr "Reiri de funkcio." - -#: grub-core/term/gfxterm_background.c:176 -msgid "[-m (stretch|normal)] FILE" -msgstr "[-m (stretch|normal)] DOSIERO" - -#: grub-core/term/gfxterm_background.c:177 -msgid "Load background image for active terminal." -msgstr "Åœargi fonbildon por aktiva terminalo." - -#: grub-core/term/gfxterm_background.c:182 util/grub-install.c:302 -#: util/grub-install.c:303 util/grub-mkrescue.c:107 util/grub-mkrescue.c:108 -#: util/grub-render-label.c:61 util/grub-render-label.c:63 -msgid "COLOR" -msgstr "KOLORO" - -#: grub-core/term/gfxterm_background.c:183 -msgid "Set background color for active terminal." -msgstr "Åœargi fonbildon por aktiva terminalo." - -#: grub-core/term/i386/coreboot/cbmemc.c:139 -#, fuzzy -msgid "Show CBMEM console content." -msgstr "Montri la enhavon de memoro." - -#: grub-core/term/serial.c:57 -msgid "Set the serial unit." -msgstr "Agordi la serian unuon." - -#: grub-core/term/serial.c:58 -msgid "Set the serial port address." -msgstr "Agordi la adreson de seria pordo." - -#: grub-core/term/serial.c:59 -msgid "Set the serial port speed." -msgstr "Agordi la rapidon de seria pordo." - -#: grub-core/term/serial.c:60 -msgid "Set the serial port word length." -msgstr "Agordi la vortlongon de seria pordo." - -#: grub-core/term/serial.c:61 -msgid "Set the serial port parity." -msgstr "Agordi la parecon de seria pordo." - -#: grub-core/term/serial.c:62 -msgid "Set the serial port stop bits." -msgstr "Agordi la seriajn stop-bitojn." - -#: grub-core/term/serial.c:63 -#, fuzzy -msgid "Set the base frequency." -msgstr "Agordi la serian unuon." - -#: grub-core/term/serial.c:64 -msgid "Enable/disable RTS/CTS." -msgstr "" - -#: grub-core/term/serial.c:218 -#, c-format -msgid "serial port `%s' isn't found" -msgstr "" - -#: grub-core/term/serial.c:254 -#, fuzzy -msgid "unsupported serial port flow control" -msgstr "nesubtenata vortlongo de seria pordo" - -#: grub-core/term/serial.c:429 -msgid "[OPTIONS...]" -msgstr "[OPCIOJ...]" - -#: grub-core/term/serial.c:430 -msgid "Configure serial port." -msgstr "Agordi serian pordon." - -#: grub-core/term/terminfo.c:184 -#, c-format -msgid "unknown terminfo type `%s'" -msgstr "" - -#: grub-core/term/terminfo.c:668 -msgid "ASCII" -msgstr "ASKIO" - -#: grub-core/term/terminfo.c:671 -msgid "UTF-8" -msgstr "UTF-8" - -#. TRANSLATORS: visually ordered UTF-8 is a non-compliant encoding -#. based on UTF-8 with right-to-left languages written in reverse. -#. Used on some terminals. Normal UTF-8 is refered as -#. "logically-ordered UTF-8" by opposition. -#: grub-core/term/terminfo.c:677 -msgid "visually-ordered UTF-8" -msgstr "" - -#: grub-core/term/terminfo.c:680 -#, fuzzy -msgid "Unknown encoding" -msgstr "Nekonata kodo" - -#: grub-core/term/terminfo.c:684 -msgid "Current terminfo types:" -msgstr "" - -#: grub-core/term/terminfo.c:699 -msgid "Terminal is ASCII-only [default]." -msgstr "Terminalo estas nur-ASKIA [defaÅ­lte]." - -#: grub-core/term/terminfo.c:700 -msgid "Terminal is logical-ordered UTF-8." -msgstr "Terminalo estas UTF-8 en logika ordo." - -#: grub-core/term/terminfo.c:701 -msgid "Terminal is visually-ordered UTF-8." -msgstr "Terminalo estas UTF-8 en vida ordo." - -#: grub-core/term/terminfo.c:703 -msgid "Terminal has specified geometry." -msgstr "Terminalo havas specifitan geometrion" - -#. TRANSLATORS: "x" has to be entered in, like an identifier, so please don't -#. use better Unicode codepoints. -#: grub-core/term/terminfo.c:706 -msgid "WIDTHxHEIGHT." -msgstr "LARÄœOxALTO." - -#: grub-core/term/terminfo.c:746 -msgid "incorrect terminal dimensions specification" -msgstr "" - -#: grub-core/term/terminfo.c:776 -#, c-format -msgid "terminal %s isn't found or it's not handled by terminfo" -msgstr "" - -#: grub-core/term/terminfo.c:785 -msgid "[[-a|-u|-v] [-g WxH] TERM [TYPE]]" -msgstr "[[-a|-u|-v] [-g LxA] TERM [TIPO]]" - -#: grub-core/term/terminfo.c:786 -msgid "Set terminfo type of TERM to TYPE.\n" -msgstr "Agordi ‘terminfo’-tipon de TERM al TIPO.\n" - -#. TRANSLATORS: this is the BLOCK-argument, not -#. environment block. -#: grub-core/tests/test_blockarg.c:49 -msgid "Print and execute block argument." -msgstr "Eldoni kaj lanĉi blokargumenton." - -#. TRANSLATORS: We're speaking about bitmap images like -#. JPEG or PNG. -#: grub-core/video/bitmap.c:209 -#, c-format -msgid "bitmap file `%s' is of unsupported format" -msgstr "" - -#: grub-core/video/i386/pc/vbe.c:1191 -#, c-format -msgid " VBE info: version: %d.%d OEM software rev: %d.%d\n" -msgstr "" - -#: grub-core/video/i386/pc/vbe.c:1198 -#, c-format -msgid " total memory: %d KiB\n" -msgstr "" - -#: grub-core/video/video.c:596 grub-core/video/video.c:762 -msgid "no suitable video mode found" -msgstr "" - -#: include/grub/crypto.h:403 -msgid "access denied" -msgstr "" - -#: include/grub/util/install.h:30 include/grub/util/install.h:35 -msgid "MODULES" -msgstr "MODULOJ" - -#: include/grub/util/install.h:31 -msgid "pre-load specified modules MODULES" -msgstr "" - -#: include/grub/util/install.h:33 -msgid "embed a specific DTB" -msgstr "" - -#: include/grub/util/install.h:36 -msgid "install only MODULES and their dependencies [default=all]" -msgstr "" - -#: include/grub/util/install.h:37 -msgid "THEMES" -msgstr "" - -#: include/grub/util/install.h:38 -#, c-format -msgid "install THEMES [default=%s]" -msgstr "" - -#: include/grub/util/install.h:39 -msgid "FONTS" -msgstr "" - -#: include/grub/util/install.h:40 -#, c-format -msgid "install FONTS [default=%s]" -msgstr "" - -#: include/grub/util/install.h:41 -msgid "LOCALES" -msgstr "" - -#: include/grub/util/install.h:42 -msgid "install only LOCALES [default=all]" -msgstr "" - -#: include/grub/util/install.h:45 -msgid "compress GRUB files [optional]" -msgstr "" - -#: include/grub/util/install.h:48 util/grub-mkimage.c:83 -#, fuzzy -msgid "choose the compression to use for core image" -msgstr "ne eblas densigi la kernbildon" - -#. TRANSLATORS: platform here isn't identifier. It can be translated. -#: include/grub/util/install.h:51 include/grub/util/install.h:54 -#: util/grub-mkimage.c:66 -#, c-format -msgid "use images and modules under DIR [default=%s/]" -msgstr "" - -#: include/grub/util/install.h:57 -#, fuzzy, c-format -msgid "use translations under DIR [default=%s]" -msgstr "Uzi GRUB-dosierojn en la dosierujo DOSIERUJO [defaÅ­lte=%s]" - -#: include/grub/util/install.h:60 -#, fuzzy, c-format -msgid "use themes under DIR [default=%s]" -msgstr "Uzi GRUB-dosierojn en la dosierujo DOSIERUJO [defaÅ­lte=%s]" - -#: include/grub/util/install.h:65 util/grub-mkimage.c:78 -msgid "embed FILE as public key for signature checking" -msgstr "" - -#: util/editenv.c:59 util/grub-editenv.c:201 util/grub-install-common.c:535 -#: util/grub-mkimage.c:315 util/setup.c:791 -#, fuzzy, c-format -msgid "cannot sync `%s': %s" -msgstr "ne eblas malfermi na '%s': %s" - -#: util/editenv.c:64 -#, c-format -msgid "cannot rename the file %s to %s" -msgstr "ne eblas alinomi la dosieron %s al %s" - -#: util/getroot.c:402 -#, c-format -msgid "disk does not exist, so falling back to partition device %s" -msgstr "" - -#: util/grub-editenv.c:45 util/grub-fstest.c:506 -msgid "Commands:" -msgstr "Komandoj:" - -#: util/grub-editenv.c:47 -msgid "Create a blank environment block file." -msgstr "Krei malplenan ĉirkaÅ­aĵan blokdosieron." - -#: util/grub-editenv.c:49 -msgid "List the current variables." -msgstr "Listigi la nunajn variablojn." - -#. TRANSLATORS: "set" is a keyword. It's a summary of "set" subcommand. -#: util/grub-editenv.c:51 -msgid "set [NAME=VALUE ...]" -msgstr "agordi [NOMO=VALORO ...]" - -#: util/grub-editenv.c:52 -msgid "Set variables." -msgstr "Agordi variablojn." - -#. TRANSLATORS: "unset" is a keyword. It's a summary of "unset" subcommand. -#: util/grub-editenv.c:54 -msgid "unset [NAME ...]" -msgstr "" - -#: util/grub-editenv.c:55 -msgid "Delete variables." -msgstr "Forigi variablojn." - -#: util/grub-editenv.c:57 -msgid "Options:" -msgstr "Opcioj:" - -#: util/grub-editenv.c:84 -msgid "You need to specify at least one command.\n" -msgstr "Vi specifu almenaÅ­ unu komandon.\n" - -#: util/grub-editenv.c:113 -msgid "FILENAME COMMAND" -msgstr "DOSIERNOMO KOMANDO" - -#: util/grub-editenv.c:114 -msgid "Tool to edit environment block." -msgstr "Ilo por modifi ĉirkaÅ­aĵan blokon." - -#: util/grub-editenv.c:116 -#, c-format -msgid "" -"If FILENAME is `-', the default value %s is used.\n" -"\n" -"There is no `delete' command; if you want to delete the whole environment\n" -"block, use `rm %s'." -msgstr "" - -#: util/grub-editenv.c:162 -msgid "invalid environment block" -msgstr "nevalida ĉirkaÅ­aĵa bloko" - -#: util/grub-editenv.c:217 -#, c-format -msgid "invalid parameter %s" -msgstr "nevalida parametro %s" - -#: util/grub-editenv.c:222 -msgid "environment block too small" -msgstr "" - -#: util/grub-fstest.c:107 -#, fuzzy, c-format -msgid "disk read fails at offset %lld, length %lld" -msgstr "disklegado fiaskis je deÅovo %lld, longo %d" - -#: util/grub-fstest.c:138 -#, c-format -msgid "invalid skip value %lld" -msgstr "nevalida transsalt-valoro %lld" - -#: util/grub-fstest.c:160 util/grub-fstest.c:246 -#, c-format -msgid "read error at offset %llu: %s" -msgstr "legeraro je deÅovo %llu: %s" - -#: util/grub-fstest.c:210 -#, c-format -msgid "cannot open OS file `%s': %s" -msgstr "ne eblas malfermi OS-dosieron %s:%s" - -#: util/grub-fstest.c:225 util/misc.c:126 -#, c-format -msgid "cannot write to the stdout: %s" -msgstr "" - -#: util/grub-fstest.c:259 -#, c-format -msgid "compare fail at offset %llu" -msgstr "komparado fiaskis je deÅovo %llu" - -#: util/grub-fstest.c:280 util/grub-fstest.c:314 -#, c-format -msgid "OS file %s open error: %s" -msgstr "" - -#: util/grub-fstest.c:402 util/grub-mount.c:392 -#, c-format -msgid "`loopback' command fails: %s" -msgstr "`loopback'-komando fiaskis: %s" - -#: util/grub-fstest.c:413 util/grub-mount.c:402 -#, c-format -msgid "`cryptomount' command fails: %s" -msgstr "`cryptomount'-komando malsukcesis: %s" - -#: util/grub-fstest.c:474 util/grub-fstest.c:478 -msgid "couldn't retrieve UUID" -msgstr "" - -#: util/grub-fstest.c:507 -msgid "ls PATH" -msgstr "ls VOJO" - -#: util/grub-fstest.c:507 -msgid "List files in PATH." -msgstr "Listigi dosierojn en VOJO." - -#: util/grub-fstest.c:508 -msgid "cp FILE LOCAL" -msgstr "cp DOSIERO LOKA" - -#: util/grub-fstest.c:508 -msgid "Copy FILE to local file LOCAL." -msgstr "Kopii DOSIERO-n al loka dosiero LOKA." - -#: util/grub-fstest.c:509 -msgid "cat FILE" -msgstr "cat DOSIERO" - -#: util/grub-fstest.c:509 -msgid "Copy FILE to standard output." -msgstr "" - -#: util/grub-fstest.c:510 -msgid "cmp FILE LOCAL" -msgstr "cmp DOSIERO LOKA" - -#: util/grub-fstest.c:510 -msgid "Compare FILE with local file LOCAL." -msgstr "Kompari DOSIERO-n kun loka dosiero LOKA." - -#: util/grub-fstest.c:511 -msgid "hex FILE" -msgstr "hex DOSIERO" - -#: util/grub-fstest.c:511 -msgid "Show contents of FILE in hex." -msgstr "Montri la enhavon de dosiero deksesume." - -#: util/grub-fstest.c:512 -msgid "crc FILE" -msgstr "crc DOSIERO" - -#: util/grub-fstest.c:512 -msgid "Get crc32 checksum of FILE." -msgstr "Akiri ‘crc32’-kontrolsumon de DOSIERO." - -#: util/grub-fstest.c:513 -msgid "blocklist FILE" -msgstr "blocklist DOSIERO" - -#: util/grub-fstest.c:513 -msgid "Display blocklist of FILE." -msgstr "Montri blokliston de DOSIERO." - -#: util/grub-fstest.c:514 -msgid "xnu_uuid DEVICE" -msgstr "" - -#: util/grub-fstest.c:514 -msgid "Compute XNU UUID of the device." -msgstr "" - -#. TRANSLATORS: bitmaps are images like e.g. in JPEG. -#: util/grub-fstest.c:517 util/grub-fstest.c:518 util/grub-fstest.c:519 -#: util/grub-mkfont.c:938 util/grub-mkfont.c:951 util/grub-mkfont.c:952 -#: util/grub-mkpasswd-pbkdf2.c:46 util/grub-mkpasswd-pbkdf2.c:47 -#: util/grub-mkpasswd-pbkdf2.c:48 -msgid "NUM" -msgstr "" - -#: util/grub-fstest.c:517 -msgid "Skip N bytes from output file." -msgstr "Transsalti N bajtojn de elira dosiero" - -#: util/grub-fstest.c:518 -msgid "Handle N bytes in output file." -msgstr "Trakti N bajtojn en elira dosiero" - -#: util/grub-fstest.c:519 -msgid "Specify the number of input files." -msgstr "" - -#: util/grub-fstest.c:520 util/grub-mount.c:453 -msgid "Set debug environment variable." -msgstr "Agordi variablon de sencimiga ĉirkaÅ­aĵo." - -#: util/grub-fstest.c:521 util/grub-mount.c:454 -msgid "Mount crypto devices." -msgstr "" - -#. TRANSLATORS: "prompt" is a keyword. -#: util/grub-fstest.c:524 util/grub-mount.c:457 -msgid "FILE|prompt" -msgstr "" - -#: util/grub-fstest.c:524 util/grub-mount.c:457 -msgid "Load zfs crypto key." -msgstr "" - -#: util/grub-fstest.c:526 -msgid "Uncompress data." -msgstr "" - -#: util/grub-fstest.c:605 -msgid "Invalid disk count.\n" -msgstr "Nevalida diskonombro.\n" - -#. TRANSLATORS: disk count is optional but if it's there it must -#. be before disk list. So please don't imply disk count as mandatory. -#. -#: util/grub-fstest.c:613 -msgid "Disk count must precede disks list.\n" -msgstr "Diskonombro estu antaÅ­ la diskolisto.\n" - -#: util/grub-fstest.c:633 -msgid "No command is specified.\n" -msgstr "Neniu komando estas specifita.\n" - -#: util/grub-fstest.c:638 -msgid "Not enough parameters to command.\n" -msgstr "La komando ne havas sufiĉe da parametroj.\n" - -#: util/grub-fstest.c:711 -#, c-format -msgid "Invalid command %s.\n" -msgstr "Nevalida komando ‘%s’.\n" - -#: util/grub-fstest.c:724 -msgid "IMAGE_PATH COMMANDS" -msgstr "BILDO_VOJO-KOMANDOJ" - -#: util/grub-fstest.c:725 util/grub-mount.c:553 -msgid "Debug tool for filesystem driver." -msgstr "Sencimigilo por dosiersistema pelilo." - -#: util/grub-glue-efi.c:53 -msgid "set input filename for 32-bit part." -msgstr "" - -#: util/grub-glue-efi.c:55 -msgid "set input filename for 64-bit part." -msgstr "" - -#: util/grub-glue-efi.c:57 util/grub-mklayout.c:55 util/grub-render-label.c:71 -msgid "set output filename. Default is STDOUT" -msgstr "" - -#: util/grub-glue-efi.c:94 util/grub-mklayout.c:476 -#: util/grub-mkpasswd-pbkdf2.c:86 util/grub-render-label.c:131 -msgid "[OPTIONS]" -msgstr "[OPCIOJ]" - -#: util/grub-glue-efi.c:95 -msgid "Glue 32-bit and 64-bit binary into Apple universal one." -msgstr "" - -#: util/grub-glue-efi.c:116 -msgid "Missing input file\n" -msgstr "" - -#: util/grub-install-common.c:127 util/grub-install-common.c:151 -#, fuzzy, c-format -msgid "cannot copy `%s' to `%s': %s" -msgstr "ne eblas malfermi na '%s': %s" - -#: util/grub-install-common.c:147 -#, fuzzy, c-format -msgid "can't compress `%s' to `%s'" -msgstr "ne eblas malfermi na `%s': %s" - -#: util/grub-install-common.c:196 util/grub-install-common.c:552 -#: util/grub-install-common.c:579 util/grub-install-common.c:621 -#, fuzzy, c-format -msgid "cannot open directory `%s': %s" -msgstr "ne eblas malfermi na '%s': %s" - -#: util/grub-install-common.c:212 -#, fuzzy, c-format -msgid "cannot delete `%s': %s" -msgstr "ne eblas malfermi na '%s': %s" - -#: util/grub-install-common.c:324 util/grub-mkimage.c:209 -msgid "grub-mkimage is compiled without XZ support" -msgstr "" - -#: util/grub-install-common.c:332 util/grub-mkimage.c:217 -#, c-format -msgid "Unknown compression format %s" -msgstr "" - -#: util/grub-install-common.c:400 -#, c-format -msgid "Unrecognized compression `%s'" -msgstr "" - -#: util/grub-install-common.c:509 -#, fuzzy, c-format -msgid "unknown target format %s" -msgstr "nekonata argumento '%s'" - -#: util/grub-install-common.c:700 -#, fuzzy, c-format -msgid "cannot find locale `%s'" -msgstr "ne eblas trovi komandon ‘%s’" - -#: util/grub-install-common.c:939 -#, c-format -msgid "%s doesn't exist. Please specify --target or --directory" -msgstr "" - -#: util/grub-install-common.c:948 util/grub-install-common.c:951 -#, fuzzy, c-format -msgid "invalid modinfo file `%s'" -msgstr "nevalida dosiernomo ‘%s’" - -#: util/grub-install-common.c:966 -#, fuzzy, c-format -msgid "Unknown platform `%s-%s'" -msgstr "nekonata argumento '%s'" - -#: util/grub-install.c:238 -msgid "More than one install device?" -msgstr "" - -#: util/grub-install.c:251 -#, c-format -msgid "" -"install GRUB images under the directory DIR/%s instead of the %s directory" -msgstr "" - -#: util/grub-install.c:256 util/grub-probe.c:734 -msgid "TARGET" -msgstr "" - -#. TRANSLATORS: "TARGET" as in "target platform". -#: util/grub-install.c:258 -#, c-format -msgid "install GRUB for TARGET platform [default=%s]; available targets: %s" -msgstr "" - -#. TRANSLATORS: "may break" doesn't just mean that option wouldn't have any -#. effect but that it will make the resulting install unbootable from HDD. -#. TRANSLATORS: The potential breakage isn't limited to floppies but it's -#. likely to make the install unbootable from HDD. -#: util/grub-install.c:267 util/grub-setup.c:94 -msgid "" -"make the drive also bootable as floppy (default for fdX devices). May break " -"on some BIOSes." -msgstr "" -"igi la diskilon praÅargebla ankaÅ­ kiel disketilon (defaÅ­lto por fdX-" -"aparatoj). Eblas kadukiÄi je kelkaj BIOS-oj." - -#: util/grub-install.c:270 -msgid "delete device map if it already exists" -msgstr "" - -#: util/grub-install.c:272 util/grub-setup.c:87 -msgid "install even if problems are detected" -msgstr "Instali eĉ se detektiÄis problemoj" - -#: util/grub-install.c:274 -msgid "use identifier file even if UUID is available" -msgstr "" - -#: util/grub-install.c:276 -msgid "" -"disk module to use (biosdisk or native). This option is only available on " -"BIOS target." -msgstr "" - -#: util/grub-install.c:279 -msgid "" -"don't update the `boot-device'/`Boot*' NVRAM variables. This option is only " -"available on EFI and IEEE1275 targets." -msgstr "" - -#: util/grub-install.c:282 util/grub-setup.c:89 -msgid "do not probe for filesystems in DEVICE" -msgstr "ne sondi por dosiersistemoj en APARATO" - -#: util/grub-install.c:284 -msgid "do not install bootsector" -msgstr "" - -#: util/grub-install.c:286 util/grub-setup.c:96 -msgid "" -"Do not apply any reed-solomon codes when embedding core.img. This option is " -"only available on x86 BIOS targets." -msgstr "" - -#: util/grub-install.c:293 -msgid "" -"the installation device is removable. This option is only available on EFI." -msgstr "" - -#: util/grub-install.c:295 -msgid "ID" -msgstr "" - -#: util/grub-install.c:296 -msgid "the ID of bootloader. This option is only available on EFI and Macs." -msgstr "" - -#: util/grub-install.c:298 -msgid "use DIR as the EFI System Partition root." -msgstr "" - -#: util/grub-install.c:300 -msgid "use DIR for PPC MAC install." -msgstr "" - -#: util/grub-install.c:301 util/grub-mkrescue.c:106 -#, fuzzy -msgid "use FILE as font for label" -msgstr "Uzi DOSIERO-n kiel kernbildon [defaÅ­lte=%s]" - -#: util/grub-install.c:302 util/grub-mkrescue.c:107 -msgid "use COLOR for label" -msgstr "" - -#: util/grub-install.c:303 util/grub-mkrescue.c:108 -msgid "use COLOR for label background" -msgstr "" - -#: util/grub-install.c:304 util/grub-mkrescue.c:110 -msgid "use STRING as product version" -msgstr "" - -#: util/grub-install.c:361 -#, fuzzy -msgid "[OPTION] [INSTALL_DEVICE]" -msgstr "Uzo: %s [OPCIO] [INSTAL_APARATO]" - -#: util/grub-install.c:362 -msgid "Install GRUB on your drive." -msgstr "" - -#: util/grub-install.c:363 -#, c-format -msgid "" -"INSTALL_DEVICE must be system device filename.\n" -"%s copies GRUB images into %s. On some platforms, it may also install GRUB " -"into the boot sector." -msgstr "" - -#: util/grub-install.c:672 -#, c-format -msgid "the drive %s is defined multiple times in the device map %s" -msgstr "" - -#: util/grub-install.c:878 -msgid "Unable to determine your platform. Use --target." -msgstr "" - -#: util/grub-install.c:891 -#, c-format -msgid "Installing for %s platform.\n" -msgstr "" - -#: util/grub-install.c:939 -#, fuzzy -msgid "install device isn't specified" -msgstr "Instal-aparato ne estas specifita." - -#: util/grub-install.c:1057 -#, fuzzy -msgid "cannot find EFI directory" -msgstr "ne estas dosierujo" - -#: util/grub-install.c:1060 util/grub-install.c:1209 util/grub-install.c:1254 -#: util/grub-macbless.c:76 util/grub-probe.c:329 util/setup.c:316 -#, c-format -msgid "cannot find a device for %s (is /dev mounted?)" -msgstr "" - -#: util/grub-install.c:1069 util/grub-install.c:1217 util/grub-install.c:1270 -#: util/grub-install.c:1365 util/grub-macbless.c:80 util/grub-probe.c:372 -#, c-format -msgid "cannot find a GRUB drive for %s. Check your device.map" -msgstr "" - -#: util/grub-install.c:1087 -#, c-format -msgid "%s doesn't look like an EFI partition" -msgstr "" - -#: util/grub-install.c:1129 util/grub-install.c:1614 -msgid "You've found a bug" -msgstr "" - -#: util/grub-install.c:1231 -#, c-format -msgid "filesystem on %s is neither HFS nor HFS+" -msgstr "" - -#: util/grub-install.c:1299 -#, c-format -msgid "" -"attempt to install to encrypted disk without cryptodisk enabled. Set `%s' in " -"file `%s'" -msgstr "" - -#: util/grub-install.c:1410 util/grub-install.c:1772 util/grub-install.c:1872 -#, fuzzy, c-format -msgid "Can't create file: %s" -msgstr "ne eblas alinomi la dosieron %s al %s" - -#: util/grub-install.c:1491 -msgid "no hints available for your platform. Expect reduced performance" -msgstr "" - -#. TRANSLATORS: This is a prefix in the log to indicate that usually -#. a command would be executed but due to an option was skipped. -#: util/grub-install.c:1702 -msgid "NOT RUNNING: " -msgstr "" - -#: util/grub-install.c:1806 -msgid "the chosen partition is not a PReP partition" -msgstr "" - -#: util/grub-install.c:1811 -msgid "failed to copy Grub to the PReP partition" -msgstr "" - -#: util/grub-install.c:1816 -#, c-format -msgid "" -"the PReP partition is not empty. If you are sure you want to use it, run dd " -"to clear it: `%s'" -msgstr "" - -#: util/grub-install.c:1888 util/grub-install.c:1932 -#, c-format -msgid "efibootmgr failed to register the boot entry: %s" -msgstr "" - -#: util/grub-install.c:1916 -#, fuzzy -msgid "EFI bootloader id isn't specified." -msgstr "Instal-aparato ne estas specifita." - -#: util/grub-install.c:1950 -msgid "WARNING: no platform-specific install was performed" -msgstr "" - -#: util/grub-install.c:1957 -msgid "Installation finished. No error reported." -msgstr "" - -#: util/grub-macbless.c:101 -msgid "bless for x86-based macs" -msgstr "" - -#: util/grub-macbless.c:103 -msgid "bless for ppc-based macs" -msgstr "" - -#: util/grub-macbless.c:136 util/grub-probe.c:823 -msgid "No path or device is specified.\n" -msgstr "Neniu vojo aÅ­ aparato estas specifita.\n" - -#: util/grub-macbless.c:157 -msgid "--ppc PATH|--x86 FILE" -msgstr "" - -#: util/grub-macbless.c:158 -msgid "Mac-style bless on HFS or HFS+" -msgstr "" - -#: util/grub-menulst2cfg.c:44 -#, c-format -msgid "Usage: %s [INFILE [OUTFILE]]\n" -msgstr "" - -#: util/grub-mkfont.c:157 -#, c-format -msgid "Freetype Error %d loading glyph 0x%x for U+0x%x%s" -msgstr "" - -#. TRANSLATORS: These qualifiers are used for cursive typography, -#. mainly Arabic. Note that the terms refer to the visual position -#. and not logical order and if used in left-to-right script then -#. leftmost is initial but with right-to-left script like Arabic -#. rightmost is the initial. -#: util/grub-mkfont.c:165 -msgid " (medial)" -msgstr "" - -#: util/grub-mkfont.c:166 -msgid " (leftmost)" -msgstr "" - -#: util/grub-mkfont.c:167 -msgid " (rightmost)" -msgstr "" - -#: util/grub-mkfont.c:481 -#, c-format -msgid "Out of range substitution (%d, %d)\n" -msgstr "" - -#. TRANSLATORS: "lookup" is taken directly from font specifications -#. which are formulated as "Under condition X replace LOOKUP with -#. SUBSTITUITION". " -#: util/grub-mkfont.c:506 -#, c-format -msgid "Out of range lookup: %d\n" -msgstr "" - -#: util/grub-mkfont.c:514 -#, c-format -msgid "Unsupported substitution type: %d\n" -msgstr "" - -#: util/grub-mkfont.c:550 -#, c-format -msgid "Unsupported substitution specification: %d\n" -msgstr "" - -#: util/grub-mkfont.c:582 -#, c-format -msgid "Unsupported coverage specification: %d\n" -msgstr "" - -#: util/grub-mkfont.c:622 -#, c-format -msgid "WARNING: unsupported font feature parameters: %x\n" -msgstr "" - -#: util/grub-mkfont.c:936 util/grub-mkrescue.c:98 util/grub-mkstandalone.c:48 -msgid "save output in FILE [required]" -msgstr "" - -#. TRANSLATORS: some font files may have multiple faces (fonts). -#. This option is used to chose among them, the first face being '0'. -#. Rarely used. -#: util/grub-mkfont.c:942 -msgid "select face index" -msgstr "" - -#: util/grub-mkfont.c:943 -msgid "FROM-TO[,FROM-TO]" -msgstr "" - -#. TRANSLATORS: It refers to the range of characters in font. -#: util/grub-mkfont.c:945 -msgid "set font range" -msgstr "" - -#. TRANSLATORS: "family name" for font is just a generic name without suffix -#. like "Bold". -#: util/grub-mkfont.c:949 -msgid "set font family name" -msgstr "" - -#: util/grub-mkfont.c:950 -msgid "SIZE" -msgstr "GRANDO" - -#: util/grub-mkfont.c:950 -msgid "set font size" -msgstr "" - -#: util/grub-mkfont.c:951 -msgid "set font descent" -msgstr "" - -#: util/grub-mkfont.c:952 -msgid "set font ascent" -msgstr "" - -#: util/grub-mkfont.c:953 -msgid "convert to bold font" -msgstr "" - -#: util/grub-mkfont.c:954 -msgid "force autohint" -msgstr "" - -#: util/grub-mkfont.c:955 -msgid "disable hinting" -msgstr "" - -#. TRANSLATORS: some fonts contain bitmap rendering for -#. some sizes. This option forces rerendering even if -#. pre-rendered bitmap is available. -#. -#: util/grub-mkfont.c:961 -msgid "ignore bitmap strikes when loading" -msgstr "" - -#. TRANSLATORS: It refers to the range of characters in font. -#: util/grub-mkfont.c:1059 util/grub-mkfont.c:1075 -msgid "invalid font range" -msgstr "" - -#: util/grub-mkfont.c:1151 -msgid "[OPTIONS] FONT_FILES" -msgstr "[OPCIOJ] TIPAR_DOSIEROJ" - -#: util/grub-mkfont.c:1152 -msgid "Convert common font file formats into PF2" -msgstr "" - -#: util/grub-mkfont.c:1182 util/grub-mkrescue.c:483 -#: util/grub-mkstandalone.c:306 -msgid "output file must be specified" -msgstr "elig-dosiero estu specifita" - -#: util/grub-mkfont.c:1185 -msgid "FT_Init_FreeType fails" -msgstr "" - -#: util/grub-mkfont.c:1199 -#, c-format -msgid "can't open file %s, index %d: error %d" -msgstr "" - -#: util/grub-mkfont.c:1229 -#, c-format -msgid "can't set %dx%d font size: Freetype error %d: %s" -msgstr "" - -#: util/grub-mkimage.c:67 -#, fuzzy -msgid "set prefix directory" -msgstr "ne estas dosierujo" - -#. TRANSLATORS: "memdisk" here isn't an identifier, it can be translated. -#. "embed" is a verb (command description). " -#: util/grub-mkimage.c:71 -msgid "" -"embed FILE as a memdisk image\n" -"Implies `-p (memdisk)/boot/grub' and overrides any prefix supplied " -"previously, but the prefix itself can be overridden by later options" -msgstr "" - -#: util/grub-mkimage.c:74 -msgid "embed FILE as a device tree (DTB)\n" -msgstr "" - -#: util/grub-mkimage.c:76 -msgid "embed FILE as an early config" -msgstr "" - -#. TRANSLATORS: NOTE is a name of segment. -#: util/grub-mkimage.c:80 -msgid "add NOTE segment for CHRP IEEE1275" -msgstr "" - -#: util/grub-mkimage.c:81 -msgid "output a generated image to FILE [default=stdout]" -msgstr "" - -#: util/grub-mkimage.c:82 -msgid "FORMAT" -msgstr "" - -#: util/grub-mkimage.c:100 util/grub-mkstandalone.c:62 -msgid "generate an image in FORMAT" -msgstr "" - -#: util/grub-mkimage.c:101 util/grub-mkstandalone.c:63 -msgid "available formats:" -msgstr "" - -#: util/grub-mkimage.c:152 util/grub-mkstandalone.c:96 -#, c-format -msgid "unknown target format %s\n" -msgstr "" - -#: util/grub-mkimage.c:242 -msgid "[OPTION]... [MODULES]" -msgstr "" - -#: util/grub-mkimage.c:243 -msgid "Make a bootable image of GRUB." -msgstr "" - -#: util/grub-mkimage.c:273 util/grub-mkstandalone.c:309 -msgid "Target format not specified (use the -O option)." -msgstr "" - -#: util/grub-mkimage.c:282 -msgid "Prefix not specified (use the -p option)." -msgstr "" - -#: util/grub-mkimage.c:318 util/setup.c:793 -#, fuzzy, c-format -msgid "cannot close `%s': %s" -msgstr "ne eblas malfermi na '%s': %s" - -#: util/grub-mkimagexx.c:2191 -#, c-format -msgid "" -"`%s' is miscompiled: its start address is 0x%llx instead of 0x%llx: ld.gold " -"bug?" -msgstr "" - -#: util/grub-mklayout.c:53 -msgid "set input filename. Default is STDIN" -msgstr "" - -#. TRANSLATORS: scan identifier is keyboard key symbolic name. -#: util/grub-mklayout.c:307 -#, c-format -msgid "Unknown keyboard scan identifier %s\n" -msgstr "" - -#. TRANSLATORS: scan code is keyboard key numeric identifier. -#: util/grub-mklayout.c:390 util/grub-mklayout.c:418 -#, c-format -msgid "Unknown keyboard scan code 0x%02x\n" -msgstr "" - -#. TRANSLATORS: this error is triggered when input doesn't contain any -#. key descriptions. -#: util/grub-mklayout.c:438 -msgid "ERROR: no valid keyboard layout found. Check the input.\n" -msgstr "" - -#. TRANSLATORS: "one" is a shortcut for "keyboard layout". -#: util/grub-mklayout.c:478 -msgid "Generate GRUB keyboard layout from Linux console one." -msgstr "" - -#: util/grub-mknetdir.c:47 -msgid "root directory of TFTP server" -msgstr "" - -#: util/grub-mknetdir.c:49 -msgid "relative subdirectory on network server" -msgstr "" - -#: util/grub-mknetdir.c:88 -msgid "" -"Prepares GRUB network boot images at net_directory/subdir assuming " -"net_directory being TFTP root." -msgstr "" - -#: util/grub-mknetdir.c:146 -#, fuzzy, c-format -msgid "unsupported platform %s" -msgstr "nesubtenata rapideco de seria pordo" - -#. TRANSLATORS: First %s is replaced by platform name. Second one by filename. -#: util/grub-mknetdir.c:165 -#, c-format -msgid "" -"Netboot directory for %s created. Configure your DHCP server to point to %s\n" -msgstr "" - -#: util/grub-mkpasswd-pbkdf2.c:46 -msgid "Number of PBKDF2 iterations" -msgstr "" - -#: util/grub-mkpasswd-pbkdf2.c:47 -msgid "Length of generated hash" -msgstr "" - -#: util/grub-mkpasswd-pbkdf2.c:48 -msgid "Length of salt" -msgstr "" - -#: util/grub-mkpasswd-pbkdf2.c:87 -msgid "Generate PBKDF2 password hash." -msgstr "" - -#: util/grub-mkpasswd-pbkdf2.c:144 util/grub-mkpasswd-pbkdf2.c:151 -msgid "failure to read password" -msgstr "" - -#: util/grub-mkpasswd-pbkdf2.c:146 -msgid "Reenter password: " -msgstr "Reenigu pasvorton: " - -#: util/grub-mkpasswd-pbkdf2.c:160 -msgid "passwords don't match" -msgstr "" - -#: util/grub-mkpasswd-pbkdf2.c:169 -msgid "couldn't retrieve random data for salt" -msgstr "" - -#: util/grub-mkpasswd-pbkdf2.c:184 -#, c-format -msgid "cryptographic error number %d" -msgstr "" - -#: util/grub-mkpasswd-pbkdf2.c:203 -#, c-format -msgid "PBKDF2 hash of your password is %s\n" -msgstr "" - -#: util/grub-mkrelpath.c:67 -msgid "No path is specified.\n" -msgstr "Neniu vojo estas specifita.\n" - -#: util/grub-mkrelpath.c:78 -msgid "PATH" -msgstr "VOJO" - -#: util/grub-mkrelpath.c:79 -msgid "Transform a system filename into GRUB one." -msgstr "" - -#: util/grub-mkrescue.c:100 -msgid "save ROM images in DIR [optional]" -msgstr "" - -#. TRANSLATORS: xorriso is a program for creating ISOs and burning CDs. -#: util/grub-mkrescue.c:103 -msgid "use FILE as xorriso [optional]" -msgstr "" - -#: util/grub-mkrescue.c:109 -msgid "use STRING as product name" -msgstr "" - -#: util/grub-mkrescue.c:111 -msgid "" -"enable sparc boot. Disables HFS+, APM, ARCS and boot as disk image for i386-" -"pc" -msgstr "" - -#: util/grub-mkrescue.c:112 -msgid "" -"enable ARCS (big-endian mips machines, mostly SGI) boot. Disables HFS+, APM, " -"sparc64 and boot as disk image for i386-pc" -msgstr "" - -#. TRANSLATORS: it generates one single image which is bootable through any method. -#: util/grub-mkrescue.c:125 -msgid "Make GRUB CD-ROM, disk, pendrive and floppy bootable image." -msgstr "" - -#: util/grub-mkrescue.c:130 -#, c-format -msgid "" -"Generates a bootable CD/USB/floppy image. Arguments other than options to " -"this program are passed to xorriso, and indicate source files, source " -"directories, or any of the mkisofs options listed by the output of `%s'." -msgstr "" - -#: util/grub-mkrescue.c:134 -msgid "Option -- switches to native xorriso command mode." -msgstr "" - -#: util/grub-mkrescue.c:135 -msgid "Mail xorriso support requests to ." -msgstr "" - -#: util/grub-mkrescue.c:221 util/grub-mkstandalone.c:114 -#, fuzzy -msgid "[OPTION] SOURCE..." -msgstr "[OPCIOJ...]" - -#: util/grub-mkrescue.c:257 util/grub-mkrescue.c:300 util/grub-mkrescue.c:588 -#, c-format -msgid "enabling %s support ..." -msgstr "" - -#: util/grub-mkrescue.c:486 -msgid "xorriso not found" -msgstr "" - -#: util/grub-mkrescue.c:623 -msgid "" -"Your xorriso doesn't support `--grub2-boot-info'. Some features are " -"disabled. Please use xorriso 1.2.9 or later." -msgstr "" - -#: util/grub-mkrescue.c:650 -msgid "" -"Your xorriso doesn't support `--grub2-boot-info'. Your core image is too " -"big. Boot as disk is disabled. Please use xorriso 1.2.9 or later." -msgstr "" - -#: util/grub-mkstandalone.c:115 -msgid "" -"Generate a standalone image (containing all modules) in the selected format" -msgstr "" - -#: util/grub-mkstandalone.c:115 -msgid "Graft point syntax (E.g. /boot/grub/grub.cfg=./grub.cfg) is accepted" -msgstr "" - -#: util/grub-mount.c:552 -msgid "IMAGE1 [IMAGE2 ...] MOUNTPOINT" -msgstr "" - -#: util/grub-mount.c:575 -msgid "need an image and mountpoint" -msgstr "" - -#: util/grub-probe.c:731 -msgid "given argument is a system device, not a path" -msgstr "" - -#: util/grub-probe.c:736 -msgid "separate items in output using ASCII NUL characters" -msgstr "" - -#: util/grub-probe.c:754 -#, c-format -msgid "[default=%s]" -msgstr "" - -#: util/grub-probe.c:756 -msgid "print TARGET" -msgstr "" - -#: util/grub-probe.c:757 -msgid "available targets:" -msgstr "" - -#: util/grub-probe.c:839 -msgid "[OPTION]... [PATH|DEVICE]" -msgstr "[OPCIO]... [VOJO|APARATO]" - -#: util/grub-probe.c:840 -msgid "" -"Probe device information for a given path (or device, if the -d option is " -"given)." -msgstr "" - -#: util/grub-render-label.c:60 -msgid "read text from FILE." -msgstr "" - -#: util/grub-render-label.c:62 -msgid "use COLOR for text" -msgstr "" - -#: util/grub-render-label.c:64 -msgid "use COLOR for background" -msgstr "" - -#. TRANSLATORS: The result is always stored to file and -#. never shown directly, so don't use "show" as synonym for render. Use "create" if -#. "render" doesn't translate directly. -#: util/grub-render-label.c:69 -msgid "set the label to render" -msgstr "" - -#: util/grub-render-label.c:73 -msgid "use FILE as font (PF2)." -msgstr "" - -#. TRANSLATORS: This file takes a text and creates a graphical representation of it, -#. putting the result into .disk_label file. The result is always stored to file and -#. never shown directly, so don't use "show" as synonym for render. Use "create" if -#. "render" doesn't translate directly. -#: util/grub-render-label.c:136 -msgid "Render Apple .disk_label." -msgstr "" - -#: util/grub-render-label.c:158 util/grub-syslinux2cfg.c:169 -#, fuzzy -msgid "Missing arguments\n" -msgstr "Eblaj argumentoj:" - -#: util/grub-script-check.c:87 -msgid "[PATH]" -msgstr "[VOJO]" - -#: util/grub-script-check.c:88 -msgid "Checks GRUB script configuration file for syntax errors." -msgstr "" - -#: util/grub-script-check.c:207 -#, c-format -msgid "Syntax error at line %u\n" -msgstr "" - -#: util/grub-script-check.c:212 -#, c-format -msgid "Script `%s' contains no commands and will do nothing\n" -msgstr "" - -#: util/grub-setup.c:79 -#, c-format -msgid "use FILE as the boot image [default=%s]" -msgstr "Uzi DOSIERO-n kiel la praÅargilan bildon [defaÅ­lte=%s]" - -#: util/grub-setup.c:81 -#, c-format -msgid "use FILE as the core image [default=%s]" -msgstr "Uzi DOSIERO-n kiel kernbildon [defaÅ­lte=%s]" - -#: util/grub-setup.c:210 -msgid "No device is specified.\n" -msgstr "Neniu aparato estas specifita.\n" - -#: util/grub-setup.c:224 -msgid "" -"Set up images to boot from DEVICE.\n" -"\n" -"You should not normally run this program directly. Use grub-install instead." -msgstr "" -"Agordi bildojn kiuj praÅargiÄu de APARATO.\n" -"\n" -"Normale vi ne lanĉu ĉi tiun programon rekte. Uzu ‘grub-install’ anstataÅ­e." - -#: util/grub-setup.c:228 -msgid "DEVICE must be an OS device (e.g. /dev/sda)." -msgstr "APARATO estu operaciuma aparato (ekz. /dev/sda)." - -#: util/grub-setup.c:297 -#, c-format -msgid "Invalid device `%s'.\n" -msgstr "Nevalida aparato ‘%s’.\n" - -#: util/grub-syslinux2cfg.c:64 -msgid "root directory as it will be seen on runtime [default=/]." -msgstr "" - -#: util/grub-syslinux2cfg.c:69 -msgid "" -"current directory of syslinux as it will be seen on runtime [default is " -"parent directory of input file]." -msgstr "" - -#: util/grub-syslinux2cfg.c:74 -msgid "write output to FILE [default=stdout]." -msgstr "" - -#: util/grub-syslinux2cfg.c:148 -msgid "Transform syslinux config into GRUB one." -msgstr "" - -#: util/mkimage.c:688 util/mkimage.c:717 util/mkimage.c:734 -msgid "cannot compress the kernel image" -msgstr "ne eblas densigi la kernbildon" - -#: util/mkimage.c:766 util/mkimage.c:1077 -#, fuzzy, c-format -msgid "unknown compression %d" -msgstr "nekonata argumento '%s'" - -#: util/mkimage.c:1088 -msgid "Decompressor is too big" -msgstr "" - -#: util/mkimage.c:1133 -#, c-format -msgid "core image is too big (0x%x > 0x%x)" -msgstr "kernbildo tro grandas (0x%x > 0x%x)" - -#: util/mkimage.c:1140 -#, fuzzy, c-format -msgid "kernel image is too big (0x%x > 0x%x)" -msgstr "kernbildo tro grandas (0x%x > 0x%x)" - -#: util/mkimage.c:1220 util/mkimage.c:1501 -#, c-format -msgid "diskboot.img size must be %u bytes" -msgstr "grando de ‘diskboot.img’ estu %u bajtoj" - -#: util/mkimage.c:1571 -msgid "" -"fwstart.img doesn't match the known good version. proceed at your own risk" -msgstr "" - -#: util/mkimage.c:1575 util/mkimage.c:1601 -msgid "firmware image is too big" -msgstr "" - -#: util/resolve.c:93 -#, c-format -msgid "invalid line format: %s" -msgstr "nevalida linia formo: %s" - -#: util/setup.c:167 -msgid "the first sector of the core file is not sector-aligned" -msgstr "la unua sektoro de la kern-dosiero ne estas sektor-alliniigita" - -#: util/setup.c:177 -msgid "non-sector-aligned data is found in the core file" -msgstr "ne-sektor-aliniigitaj datumoj troviÄis en la kern-dosiero" - -#: util/setup.c:199 -msgid "the sectors of the core file are too fragmented" -msgstr "la sektoroj de la kern-dosiero estas tro fragmentitaj" - -#: util/setup.c:280 -#, c-format -msgid "the size of `%s' is not %u" -msgstr "la grando de ‘%s’ ne estas %u" - -#: util/setup.c:290 -#, c-format -msgid "the size of `%s' is too small" -msgstr "la grando de ‘%s’ tro malgrandas" - -#: util/setup.c:428 -msgid "" -"Attempting to install GRUB to a disk with multiple partition labels or both " -"partition label and filesystem. This is not supported yet." -msgstr "" -"Provas instali Grubon al disko kun pluraj subdisketikedoj aÅ­ kun kaj " -"subdisketikedo kaj dosiersistemo. Tio ankoraÅ­ ne estas subtenata." - -#: util/setup.c:441 -#, c-format -msgid "unable to identify a filesystem in %s; safety check can't be performed" -msgstr "ne eblas rekoni dosiersistemon en ‘%s’; sekurkontrolo ne lanĉeblas" - -#. TRANSLATORS: Filesystem may reserve the space just GRUB isn't sure about it. -#: util/setup.c:445 -#, c-format -msgid "" -"%s appears to contain a %s filesystem which isn't known to reserve space for " -"DOS-style boot. Installing GRUB there could result in FILESYSTEM " -"DESTRUCTION if valuable data is overwritten by grub-setup (--skip-fs-probe " -"disables this check, use at your own risk)" -msgstr "" -"‘%s’ Åajne enhavas ‘%s’-dosiersistemon kiu ne estas konata pro rezervado de " -"loko por DOS-eca praÅargo. Instalo de Grubo en Äin povas rezultiÄi en " -"DOSIERSISTEMA DETRUO se valoraj datumoj anstataÅ­iÄas fare de ‘grub-" -"setup’ (‘--skip-fs-probe’ malÅaltas tiun kontrolon, uzu Äin proprariske)" - -#. TRANSLATORS: Partition map may reserve the space just GRUB isn't sure about it. -#: util/setup.c:458 -#, fuzzy, c-format -msgid "" -"%s appears to contain a %s partition map which isn't known to reserve space " -"for DOS-style boot. Installing GRUB there could result in FILESYSTEM " -"DESTRUCTION if valuable data is overwritten by grub-setup (--skip-fs-probe " -"disables this check, use at your own risk)" -msgstr "" -"‘%s’ Åajne enhavas ‘%s’-subdisktabelon kiu ne estas konata pro rezervado de " -"loko por DOS-eca praÅargo. Instalo de Grubo en Äin povas rezultiÄi en " -"DOSIERSISTEMA DETRUO se valoraj datumoj anstataÅ­iÄas fare de ‘grub-" -"setup’ (‘--skip-fs-probe’ malÅaltas tiun kontrolon, uzu Äin proprariske)" - -#: util/setup.c:465 -#, c-format -msgid "" -"%s appears to contain a %s partition map and LDM which isn't known to be a " -"safe combination. Installing GRUB there could result in FILESYSTEM " -"DESTRUCTION if valuable data is overwritten by grub-setup (--skip-fs-probe " -"disables this check, use at your own risk)" -msgstr "" -"‘%s’ Åajne enhavas ‘%s’-subdisktabelon kiu ne estas konata pro rezervado de " -"loko por DOS-eca praÅargo. Instalo de Grubo en Äin povas rezultiÄi en " -"DOSIERSISTEMA DETRUO se valoraj datumoj anstataÅ­iÄas fare de ‘grub-" -"setup’ (‘--skip-fs-probe’ malÅaltas tiun kontrolon, uzu Äin proprariske)" - -#: util/setup.c:478 -msgid "" -"Attempting to install GRUB to a partitionless disk or to a partition. This " -"is a BAD idea." -msgstr "" -"Provas instali Grubon al sensubdiska disko aÅ­ al subdisko. Tio estas MALBONA " -"ideo." - -#: util/setup.c:483 -msgid "" -"Attempting to install GRUB to a disk with multiple partition labels. This " -"is not supported yet." -msgstr "" -"Provas instali Grubon al disko kun pluraj subdisketikedoj aÅ­ kun kaj " -"subdisketikedo kaj dosiersistemo. Tio ankoraÅ­ ne estas subtenata." - -#: util/setup.c:489 -#, c-format -msgid "Partition style `%s' doesn't support embedding" -msgstr "" - -#: util/setup.c:496 -#, c-format -msgid "File system `%s' doesn't support embedding" -msgstr "" - -#: util/setup.c:537 -msgid "Your embedding area is unusually small. core.img won't fit in it." -msgstr "" - -#: util/setup.c:559 util/setup.c:725 util/setup.c:844 -msgid "no terminator in the core image" -msgstr "ĉenfinilo mankas en la kernbildo" - -#: util/setup.c:622 -msgid "core.img version mismatch" -msgstr "" - -#: util/setup.c:675 -msgid "" -"embedding is not possible, but this is required for RAID and LVM install" -msgstr "" -"enkorpigo ne eblas, sed tio estas postulata por instaldo per RAID kaj LVM" - -#: util/setup.c:682 -#, c-format -msgid "can't determine filesystem on %s" -msgstr "" - -#: util/setup.c:685 -#, c-format -msgid "filesystem `%s' doesn't support blocklists" -msgstr "" - -#. TRANSLATORS: cross-disk refers to /boot being on one disk -#. but MBR on another. -#: util/setup.c:694 -msgid "embedding is not possible, but this is required for cross-disk install" -msgstr "enkorpigo ne eblas, sed tio estas postulata por krucdiska instalo" - -#: util/setup.c:700 -msgid "" -"Embedding is not possible. GRUB can only be installed in this setup by " -"using blocklists. However, blocklists are UNRELIABLE and their use is " -"discouraged." -msgstr "" -"Enkorpigo ne eblas. Uzante tiujn agordojn Grubo instaleblas nur se " -"bloklistoj estas uzataj. Tamen, bloklistoj estas MALFIDINDAJ kaj ilia uzo " -"estas malkonsilata." - -#. TRANSLATORS: Here GRUB refuses to continue with blocklist install. -#: util/setup.c:705 -msgid "will not proceed with blocklists" -msgstr "" - -#: util/setup.c:817 util/setup.c:837 -msgid "blocklists are invalid" -msgstr "" - -#: util/setup.c:847 -msgid "blocklists are incomplete" -msgstr "" - -#~ msgid "If FILENAME is `-', the default value %s is used." -#~ msgstr "Se DOSIERNOMO estas ‘-’ la defaÅ­lta valoro %s estos uzata." - -#~ msgid "failed to read the first sector of the core image" -#~ msgstr "fiaskis legi la unuan sektoron de la kernbildo" - -#~ msgid "%s, with Hurd %s (recovery mode)" -#~ msgstr "%s, kun Hurdo %s (riparreÄimo)" - -#~ msgid "%s, with Hurd %s" -#~ msgstr "%s, kun Hurdo %s" - -#~ msgid "Loading kernel of Illumos ..." -#~ msgstr "ÅœarÄado de kerno de Ilumoso..." - -#~ msgid "%s, with kFreeBSD %s (recovery mode)" -#~ msgstr "%s, kun kFreeBSD %s (riparreÄimo)" - -#~ msgid "%s, with kFreeBSD %s" -#~ msgstr "%s, kun kFreeBSD %s" - -#~ msgid "Found kernel of FreeBSD: %s\\n" -#~ msgstr "Trovis kernon de FreeBSD: %s\\n" - -#~ msgid "%s, with Linux %s (recovery mode)" -#~ msgstr "%s, kun Linukso %s (riparreÄimo)" - -#~ msgid "%s, with Linux %s" -#~ msgstr "%s, kun Linukso %s" - -#~ msgid "%s, with kernel %s (via %s, recovery mode)" -#~ msgstr "%s, kun kerno %s (per %s, riparreÄimo)" - -#~ msgid "%s, with kernel %s (via %s)" -#~ msgstr "%s, kun kerno %s (per %s)" - -#~ msgid "Found NetBSD kernel: %s\\n" -#~ msgstr "Trovis kernon de NetBSD: %s\\n" - -#~ msgid "print this message and exit" -#~ msgstr "montri tiun mesaÄon kaj eliri" - -#~ msgid "Generate a grub config file" -#~ msgstr "Generi agordan dosieron de Grubo." - -#~ msgid "Warning:" -#~ msgstr "Averto:" - -#, fuzzy -#~ msgid "cryptomount command fails: %s" -#~ msgstr "\"cryptomount\" komando fiaskis" diff --git a/thirdparty/grub-2.04/po/es.gmo b/thirdparty/grub-2.04/po/es.gmo deleted file mode 100644 index 7d66704cbe5a64dbe5d39a4814e9e2255f139e96..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 128251 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 diff --git a/thirdparty/grub-2.04/po/es.po b/thirdparty/grub-2.04/po/es.po deleted file mode 100644 index c211ef556..000000000 --- a/thirdparty/grub-2.04/po/es.po +++ /dev/null @@ -1,7158 +0,0 @@ -# Spanish translation for grub. -# Copyright (C) 2013 Free Software Foundation, Inc. -# This file is distributed under the same license as the grub package. -# Miguel Ãngel Arruga Vivas , 2013, 2018, 2019 -# -# TODO: -# * Repensar traducción support -# * Repensar traducción buffer -# ** Repaso general -msgid "" -msgstr "" -"Project-Id-Version: grub 2.04-pre1\n" -"Report-Msgid-Bugs-To: bug-grub@gnu.org\n" -"POT-Creation-Date: 2019-07-04 16:09+0200\n" -"PO-Revision-Date: 2019-04-18 20:32+0200\n" -"Last-Translator: Miguel Ãngel Arruga Vivas \n" -"Language-Team: Spanish \n" -"Language: es\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Bugs: Report translation errors to the Language-Team address.\n" -"Plural-Forms: nplurals=2; plural=(n != 1);\n" - -#: grub-core/bus/usb/serial/ftdi.c:145 grub-core/bus/usb/serial/pl2303.c:158 -#: grub-core/term/ieee1275/escc.c:169 grub-core/term/ns8250.c:202 -msgid "unsupported serial port speed" -msgstr "velocidad del puerto serie no soportada" - -#: grub-core/bus/usb/serial/ftdi.c:151 grub-core/bus/usb/serial/pl2303.c:164 -#: grub-core/term/efi/serial.c:116 grub-core/term/ieee1275/escc.c:175 -#: grub-core/term/ns8250.c:208 grub-core/term/serial.c:227 -#: grub-core/term/serial.c:243 -msgid "unsupported serial port parity" -msgstr "paridad del puerto serie no soportada" - -# Miguel: ¿Alguien con más conocimientos sobre puertos serie? -#: grub-core/bus/usb/serial/ftdi.c:157 grub-core/bus/usb/serial/pl2303.c:170 -#: grub-core/term/efi/serial.c:122 grub-core/term/ieee1275/escc.c:181 -#: grub-core/term/ns8250.c:213 grub-core/term/serial.c:267 -msgid "unsupported serial port stop bits number" -msgstr "número de bits de parada del puerto serie no soportados" - -#: grub-core/bus/usb/serial/ftdi.c:161 grub-core/bus/usb/serial/pl2303.c:174 -#: grub-core/term/efi/serial.c:126 grub-core/term/ieee1275/escc.c:185 -#: grub-core/term/ns8250.c:217 -msgid "unsupported serial port word length" -msgstr "longitud de palabra del puerto serie no soportada" - -#: grub-core/commands/acpi.c:42 -msgid "Don't load host tables specified by comma-separated list." -msgstr "" -"No carga las tablas de máquinas especificadas en la lista separada por comas." - -#: grub-core/commands/acpi.c:45 -msgid "Load only tables specified by comma-separated list." -msgstr "" -"Carga únicamente las tablas especificadas en la lista separada por comas." - -#: grub-core/commands/acpi.c:46 -msgid "Export version 1 tables to the OS." -msgstr "Exporta la versión 1 de las tablas al SO." - -#: grub-core/commands/acpi.c:47 -msgid "Export version 2 and version 3 tables to the OS." -msgstr "Exporta las versiones 2 y 3 de las tablas al SO." - -#: grub-core/commands/acpi.c:48 -msgid "Set OEMID of RSDP, XSDT and RSDT." -msgstr "Establece OEMID en RSDP, XSDT y RSDT." - -#: grub-core/commands/acpi.c:50 -msgid "Set OEMTABLE ID of RSDP, XSDT and RSDT." -msgstr "Establece OEMTABLE ID en RDSP, XSDT y RSDT." - -#: grub-core/commands/acpi.c:52 -msgid "Set OEMTABLE revision of RSDP, XSDT and RSDT." -msgstr "Establece la revisión de OEMTABLE en RDSP, XSDT y RSDT." - -#: grub-core/commands/acpi.c:54 -msgid "Set creator field of RSDP, XSDT and RSDT." -msgstr "Establece el campo 'creador' en RDSP, XSDT y RSDT." - -#: grub-core/commands/acpi.c:56 -msgid "Set creator revision of RSDP, XSDT and RSDT." -msgstr "Establece la revisión del campo 'creador' en RDSP, XSDT y RSDT." - -# Miguel: Cuelgue es un poco barriobajero, ¿algún término más correcto? -#. TRANSLATORS: "hangs" here is a noun, not a verb. -#: grub-core/commands/acpi.c:58 -msgid "" -"Don't update EBDA. May fix failures or hangs on some BIOSes but makes it " -"ineffective with OS not receiving RSDP from GRUB." -msgstr "" -"No actualizar EBDA. Puede solucionar fallos o cuelgues en algunas BIOS pero " -"se vuelve inefectivo con sistemas operativos que no reciben RSDP de GRUB." - -#: grub-core/commands/acpi.c:650 grub-core/commands/acpi.c:667 -#: grub-core/commands/i386/pc/play.c:105 grub-core/commands/keylayouts.c:230 -#: grub-core/commands/keylayouts.c:245 grub-core/commands/keylayouts.c:263 -#: grub-core/commands/verifiers.c:156 grub-core/efiemu/loadcore.c:350 -#: grub-core/kern/elf.c:117 grub-core/kern/elfXX.c:29 -#: grub-core/kern/elfXX.c:156 grub-core/loader/arm/linux.c:319 -#: grub-core/loader/arm64/linux.c:330 grub-core/loader/arm64/xen_boot.c:356 -#: grub-core/loader/efi/chainloader.c:276 -#: grub-core/loader/efi/chainloader.c:297 -#: grub-core/loader/efi/chainloader.c:329 grub-core/loader/efi/fdt.c:138 -#: grub-core/loader/i386/bsd.c:1276 grub-core/loader/i386/bsd.c:2116 -#: grub-core/loader/i386/bsdXX.c:20 grub-core/loader/i386/bsdXX.c:36 -#: grub-core/loader/i386/bsdXX.c:63 grub-core/loader/i386/bsdXX.c:357 -#: grub-core/loader/i386/bsdXX.c:376 grub-core/loader/i386/bsdXX.c:519 -#: grub-core/loader/i386/bsdXX.c:535 grub-core/loader/i386/bsdXX.c:615 -#: grub-core/loader/i386/bsdXX.c:638 -#: grub-core/loader/i386/coreboot/chainloader.c:112 -#: grub-core/loader/i386/coreboot/chainloader.c:148 -#: grub-core/loader/i386/coreboot/chainloader.c:170 -#: grub-core/loader/i386/linux.c:667 grub-core/loader/i386/linux.c:788 -#: grub-core/loader/i386/linux.c:1005 grub-core/loader/i386/multiboot_mbi.c:171 -#: grub-core/loader/i386/pc/chainloader.c:202 -#: grub-core/loader/i386/pc/linux.c:149 grub-core/loader/i386/pc/linux.c:320 -#: grub-core/loader/i386/pc/linux.c:362 grub-core/loader/i386/pc/plan9.c:457 -#: grub-core/loader/i386/pc/plan9.c:550 grub-core/loader/i386/pc/plan9.c:566 -#: grub-core/loader/i386/xen.c:934 grub-core/loader/i386/xen_file.c:72 -#: grub-core/loader/i386/xen_fileXX.c:43 grub-core/loader/i386/xen_fileXX.c:186 -#: grub-core/loader/i386/xen_fileXX.c:339 grub-core/loader/ia64/efi/linux.c:423 -#: grub-core/loader/ia64/efi/linux.c:471 grub-core/loader/linux.c:286 -#: grub-core/loader/macho.c:84 grub-core/loader/macho.c:109 -#: grub-core/loader/machoXX.c:33 grub-core/loader/machoXX.c:46 -#: grub-core/loader/machoXX.c:76 grub-core/loader/machoXX.c:116 -#: grub-core/loader/machoXX.c:131 grub-core/loader/machoXX.c:147 -#: grub-core/loader/machoXX.c:196 grub-core/loader/machoXX.c:317 -#: grub-core/loader/multiboot.c:434 grub-core/loader/multiboot_elfxx.c:171 -#: grub-core/loader/multiboot_elfxx.c:234 -#: grub-core/loader/multiboot_elfxx.c:278 grub-core/loader/multiboot_mbi2.c:129 -#: grub-core/loader/xnu.c:737 grub-core/loader/xnu.c:795 -#: grub-core/loader/xnu.c:816 grub-core/loader/xnu.c:871 -#: grub-core/loader/xnu.c:914 grub-core/loader/xnu.c:952 -#: grub-core/loader/xnu_resume.c:68 grub-core/loader/xnu_resume.c:153 -#: grub-core/loader/xnu_resume.c:165 util/grub-mkimagexx.c:2288 -#, c-format -msgid "premature end of file %s" -msgstr "fin prematuro del fichero %s" - -#: grub-core/commands/acpi.c:779 -msgid "" -"[-1|-2] [--exclude=TABLE1,TABLE2|--load-only=TABLE1,TABLE2] FILE1 [FILE2] " -"[...]" -msgstr "" -"[-1|-2] [--exclude=TABLA1,TABLA2|--load-only=TABLA1,TABLA2] FICHERO1 " -"[FICHERO2] [...]" - -#: grub-core/commands/acpi.c:782 -msgid "Load host ACPI tables and tables specified by arguments." -msgstr "" -"Carga las tablas ACPI de la máquina y las tablas especificadas en los " -"argumentos." - -#: grub-core/commands/acpihalt.c:368 grub-core/kern/err.c:110 -#, c-format -msgid "error: %s.\n" -msgstr "error: %s.\n" - -#: grub-core/commands/acpihalt.c:368 grub-core/kern/emu/misc.c:95 -#: grub-core/kern/emu/misc.c:105 grub-core/kern/emu/misc.c:134 -#: grub-core/kern/emu/mm.c:34 grub-core/kern/emu/mm.c:62 -#: grub-core/kern/mm.c:374 grub-core/lib/relocator.c:1282 -#: grub-core/lib/relocator.c:1439 grub-core/lib/relocator.c:1538 -#: grub-core/loader/arm/linux.c:259 grub-core/loader/arm64/linux.c:265 -#: grub-core/loader/arm64/linux.c:321 grub-core/loader/arm64/linux.c:340 -#: grub-core/loader/arm64/xen_boot.c:344 grub-core/loader/arm64/xen_boot.c:367 -#: grub-core/loader/efi/chainloader.c:289 grub-core/osdep/unix/dl.c:48 -#: grub-core/osdep/windows/dl.c:46 grub-core/script/lexer.c:156 -#: grub-core/script/lexer.c:182 -msgid "out of memory" -msgstr "sin memoria" - -#: grub-core/commands/acpihalt.c:374 grub-core/disk/cryptodisk.c:587 -#: grub-core/disk/cryptodisk.c:632 grub-core/kern/emu/hostdisk.c:307 -#: grub-core/kern/emu/hostfs.c:149 grub-core/kern/emu/misc.c:200 -#: grub-core/osdep/linux/ofpath.c:195 grub-core/osdep/linux/ofpath.c:521 -#: grub-core/osdep/linux/ofpath.c:534 util/glue-efi.c:80 util/glue-efi.c:94 -#: util/grub-editenv.c:155 util/grub-fstest.c:577 -#: util/grub-install-common.c:943 util/grub-mkrescue.c:634 -#: util/grub-mkrescue.c:888 util/grub-mount.c:506 util/grub-render-label.c:176 -#: util/misc.c:95 util/setup.c:814 util/setup.c:833 -#, c-format -msgid "cannot read `%s': %s" -msgstr "no se puede leer «%s»: %s" - -#. TRANSLATORS: It's computer shutdown using ACPI, not disabling ACPI. -#: grub-core/commands/acpihalt.c:452 -msgid "ACPI shutdown failed" -msgstr "Falló el apagado ACPI" - -#: grub-core/commands/arc/lsdev.c:51 -msgid "List devices." -msgstr "Lista de dispositivos." - -#: grub-core/commands/blocklist.c:122 grub-core/commands/cat.c:57 -#: grub-core/commands/configfile.c:35 grub-core/commands/efi/loadbios.c:168 -#: grub-core/commands/file.c:159 grub-core/commands/hexdump.c:47 -#: grub-core/commands/legacycfg.c:209 grub-core/commands/legacycfg.c:315 -#: grub-core/commands/minicmd.c:44 grub-core/commands/syslinuxcfg.c:146 -#: grub-core/commands/testload.c:58 grub-core/commands/testspeed.c:52 -#: grub-core/disk/loopback.c:93 grub-core/efiemu/main.c:293 -#: grub-core/font/font_cmd.c:32 grub-core/kern/emu/hostdisk.c:519 -#: grub-core/loader/arm/linux.c:364 grub-core/loader/arm/linux.c:409 -#: grub-core/loader/arm/linux.c:472 grub-core/loader/arm64/linux.c:243 -#: grub-core/loader/arm64/linux.c:297 grub-core/loader/arm64/xen_boot.c:398 -#: grub-core/loader/arm64/xen_boot.c:411 grub-core/loader/arm64/xen_boot.c:462 -#: grub-core/loader/efi/chainloader.c:216 grub-core/loader/i386/bsd.c:1462 -#: grub-core/loader/i386/bsd.c:1807 grub-core/loader/i386/bsd.c:2085 -#: grub-core/loader/i386/coreboot/chainloader.c:438 -#: grub-core/loader/i386/linux.c:656 grub-core/loader/i386/linux.c:1041 -#: grub-core/loader/i386/pc/chainloader.c:290 -#: grub-core/loader/i386/pc/freedos.c:105 grub-core/loader/i386/pc/linux.c:138 -#: grub-core/loader/i386/pc/linux.c:400 grub-core/loader/i386/pc/ntldr.c:85 -#: grub-core/loader/i386/pc/plan9.c:409 -#: grub-core/loader/i386/pc/pxechainloader.c:94 -#: grub-core/loader/i386/pc/truecrypt.c:96 grub-core/loader/i386/xen.c:641 -#: grub-core/loader/i386/xen.c:768 grub-core/loader/i386/xen.c:844 -#: grub-core/loader/i386/xen.c:854 grub-core/loader/i386/xnu.c:488 -#: grub-core/loader/ia64/efi/linux.c:459 grub-core/loader/ia64/efi/linux.c:539 -#: grub-core/loader/mips/linux.c:238 grub-core/loader/mips/linux.c:429 -#: grub-core/loader/multiboot.c:322 grub-core/loader/multiboot.c:374 -#: grub-core/loader/multiboot.c:384 -#: grub-core/loader/powerpc/ieee1275/linux.c:269 -#: grub-core/loader/powerpc/ieee1275/linux.c:341 -#: grub-core/loader/sparc64/ieee1275/linux.c:305 -#: grub-core/loader/sparc64/ieee1275/linux.c:381 grub-core/loader/xnu.c:351 -#: grub-core/loader/xnu.c:460 grub-core/loader/xnu.c:778 -#: grub-core/loader/xnu.c:892 grub-core/loader/xnu.c:1277 -#: grub-core/loader/xnu.c:1427 grub-core/loader/xnu.c:1453 -#: grub-core/video/readers/jpeg.c:812 grub-core/video/readers/png.c:1123 -msgid "filename expected" -msgstr "nombre de fichero esperado" - -#. TRANSLATORS: "embed" is a verb (command description). " -#: grub-core/commands/blocklist.c:154 grub-core/commands/cat.c:163 -#: grub-core/commands/configfile.c:65 grub-core/commands/configfile.c:68 -#: grub-core/commands/configfile.c:74 grub-core/commands/configfile.c:80 -#: grub-core/commands/configfile.c:86 grub-core/commands/hashsum.c:34 -#: grub-core/commands/legacycfg.c:834 grub-core/commands/legacycfg.c:841 -#: grub-core/commands/legacycfg.c:846 grub-core/commands/legacycfg.c:851 -#: grub-core/commands/macbless.c:222 grub-core/commands/minicmd.c:198 -#: grub-core/commands/syslinuxcfg.c:186 grub-core/commands/syslinuxcfg.c:194 -#: grub-core/commands/syslinuxcfg.c:200 grub-core/commands/syslinuxcfg.c:206 -#: grub-core/commands/testload.c:163 grub-core/efiemu/main.c:312 -#: grub-core/kern/emu/main.c:100 grub-core/kern/emu/main.c:103 -#: grub-core/loader/i386/bsd.c:2137 grub-core/loader/i386/bsd.c:2140 -#: grub-core/loader/i386/bsd.c:2143 -#: grub-core/loader/i386/coreboot/chainloader.c:505 -#: grub-core/loader/ia64/efi/linux.c:594 include/grub/util/install.h:32 -#: include/grub/util/install.h:64 util/grub-glue-efi.c:52 -#: util/grub-glue-efi.c:54 util/grub-glue-efi.c:56 util/grub-install.c:254 -#: util/grub-install.c:301 util/grub-mkfont.c:936 util/grub-mkimage.c:68 -#: util/grub-mkimage.c:74 util/grub-mkimage.c:76 util/grub-mkimage.c:78 -#: util/grub-mkimage.c:81 util/grub-mklayout.c:52 util/grub-mklayout.c:54 -#: util/grub-mkrescue.c:97 util/grub-mkrescue.c:101 util/grub-mkrescue.c:104 -#: util/grub-mkrescue.c:105 util/grub-mkrescue.c:106 -#: util/grub-mkstandalone.c:47 util/grub-mkstandalone.c:49 -#: util/grub-probe.c:732 util/grub-render-label.c:59 -#: util/grub-render-label.c:70 util/grub-render-label.c:72 util/grub-setup.c:78 -#: util/grub-setup.c:80 util/grub-setup.c:84 util/grub-syslinux2cfg.c:74 -#: util/grub-syslinux2cfg.c:147 -msgid "FILE" -msgstr "FICHERO" - -#: grub-core/commands/blocklist.c:154 -msgid "Print a block list." -msgstr "Imprime una lista de bloques." - -#: grub-core/commands/boot.c:147 grub-core/commands/legacycfg.c:533 -#: grub-core/commands/legacycfg.c:574 grub-core/loader/arm64/linux.c:250 -#: grub-core/loader/i386/bsd.c:1799 grub-core/loader/i386/bsd.c:1900 -#: grub-core/loader/i386/bsd.c:2007 grub-core/loader/i386/bsd.c:2040 -#: grub-core/loader/i386/bsd.c:2089 grub-core/loader/i386/linux.c:1047 -#: grub-core/loader/i386/pc/linux.c:406 grub-core/loader/i386/xen.c:775 -#: grub-core/loader/i386/xen.c:859 grub-core/loader/ia64/efi/linux.c:545 -#: grub-core/loader/mips/linux.c:432 grub-core/loader/multiboot.c:388 -#: grub-core/loader/powerpc/ieee1275/linux.c:347 -#: grub-core/loader/sparc64/ieee1275/linux.c:387 grub-core/loader/xnu.c:572 -#: grub-core/loader/xnu.c:665 grub-core/loader/xnu.c:781 -#: grub-core/loader/xnu.c:895 grub-core/loader/xnu.c:1091 -#: grub-core/loader/xnu.c:1258 grub-core/loader/xnu.c:1289 -#: grub-core/loader/xnu.c:1430 -msgid "you need to load the kernel first" -msgstr "se debe cargar primero el núcleo" - -#: grub-core/commands/boot.c:189 -msgid "Boot an operating system." -msgstr "Arranca un sistema operativo." - -# Miguel: El tiempo que tarda en arrancar es el tiempo de arranque, ¿me -# equivoco? -#: grub-core/commands/boottime.c:36 -#: grub-core/commands/i386/coreboot/cb_timestamps.c:108 -msgid "No boot time statistics is available\n" -msgstr "No hay estadísticas disponibles del tiempo de arranque\n" - -#: grub-core/commands/boottime.c:59 -msgid "Show boot time statistics." -msgstr "Muestra estadísticas de tiempo de arranque." - -#: grub-core/commands/cacheinfo.c:40 -#, c-format -msgid "Disk cache statistics: hits = %lu (%lu.%02lu%%), misses = %lu\n" -msgstr "" -"Estadísticas de la caché del disco: aciertos = %lu (%lu.%02lu%%), fallos = " -"%lu\n" - -#: grub-core/commands/cacheinfo.c:45 -msgid "No disk cache statistics available\n" -msgstr "No hay estadísticas disponibles de la caché del disco\n" - -#: grub-core/commands/cacheinfo.c:56 -msgid "Get disk cache info." -msgstr "Obtiene información de la caché del disco." - -#: grub-core/commands/cat.c:33 -msgid "Accept DOS-style CR/NL line endings." -msgstr "Acepta saltos de línea en formato DOS (CR/NL)." - -#: grub-core/commands/cat.c:163 grub-core/commands/minicmd.c:198 -msgid "Show the contents of a file." -msgstr "Muestra el contenido de un fichero." - -#: grub-core/commands/cmp.c:43 grub-core/commands/i386/pc/drivemap.c:239 -#: grub-core/commands/i386/wrmsr.c:60 grub-core/commands/iorw.c:85 -#: grub-core/commands/memrw.c:84 grub-core/commands/password.c:75 -#: grub-core/commands/password_pbkdf2.c:94 grub-core/commands/pgp.c:826 -#: grub-core/commands/regexp.c:113 grub-core/mmap/mmap.c:517 -#: grub-core/net/dns.c:639 -msgid "two arguments expected" -msgstr "se esperaban dos parámetros" - -#: grub-core/commands/cmp.c:45 -#, c-format -msgid "Compare file `%s' with `%s':\n" -msgstr "Compara el fichero «%s» con «%s»:\n" - -#: grub-core/commands/cmp.c:54 -#, c-format -msgid "Files differ in size: %llu [%s], %llu [%s]\n" -msgstr "Los ficheros difieren en tamaño: %llu [%s], %llu [%s]\n" - -#: grub-core/commands/cmp.c:81 -#, c-format -msgid "Files differ at the offset %llu: 0x%x [%s], 0x%x [%s]\n" -msgstr "" -"Los ficheros difieren en el desplazamiento %llu: 0x%x [%s], 0x%x [%s]\n" - -#. TRANSLATORS: it's always exactly 2 files. -#: grub-core/commands/cmp.c:93 -msgid "The files are identical.\n" -msgstr "Los ficheros son idénticos.\n" - -#: grub-core/commands/cmp.c:113 -msgid "FILE1 FILE2" -msgstr "FICHERO1 FICHERO2" - -#: grub-core/commands/cmp.c:113 -msgid "Compare two files." -msgstr "Compara dos ficheros." - -#: grub-core/commands/configfile.c:65 -msgid "Load another config file." -msgstr "Carga otro fichero de configuración." - -#: grub-core/commands/configfile.c:69 grub-core/commands/configfile.c:87 -msgid "Load another config file without changing context." -msgstr "Carga otro fichero de configuración sin cambiar de contexto." - -#: grub-core/commands/configfile.c:75 -msgid "" -"Load another config file without changing context but take only menu entries." -msgstr "" -"Carga otro fichero de configuración tomando únicamente sus entradas de menú " -"sin cambiar de contexto." - -#: grub-core/commands/configfile.c:81 -msgid "Load another config file but take only menu entries." -msgstr "" -"Carga otro fichero de configuración pero tomando únicamente sus entradas de " -"menú." - -#: grub-core/commands/date.c:141 -msgid "[[year-]month-day] [hour:minute[:second]]" -msgstr "[[año-]mes-dia] [hora:minuto[:segundo]]" - -#: grub-core/commands/date.c:142 -msgid "Display/set current datetime." -msgstr "Muestra/cambia la fecha actual." - -#: grub-core/commands/echo.c:30 -msgid "Do not output the trailing newline." -msgstr "No imprime el salto de línea final." - -#: grub-core/commands/echo.c:31 -msgid "Enable interpretation of backslash escapes." -msgstr "Activa la interpretación de secuencias escapadas por una barra." - -#: grub-core/commands/echo.c:134 -msgid "[-e|-n] STRING" -msgstr "[-e|-n] CADENA" - -#: grub-core/commands/echo.c:134 -msgid "Display a line of text." -msgstr "Muestra una línea de texto." - -# Miguel: Reiniciar: ¿hacia? ¿en? ¿mejor aún salta al menú...? -#: grub-core/commands/efi/efifwsetup.c:82 -msgid "Reboot into firmware setup menu." -msgstr "Reinicia en el menú de configuración del firmware" - -# Miguel: He tomado el plural al ser algo genérico. -# También he usado vídeo y no video, creo que hispanoamérica, -# aunque es la forma más usada, se recomienda también -# la pronunciación llana. -#: grub-core/commands/efi/fixvideo.c:107 -msgid "Fix video problem." -msgstr "Repara problemas de vídeo." - -#: grub-core/commands/efi/loadbios.c:52 -msgid "ROM image is present." -msgstr "La imagen ROM está presente." - -#: grub-core/commands/efi/loadbios.c:70 -msgid "Can't enable ROM area." -msgstr "No se puede activar el área ROM." - -#: grub-core/commands/efi/loadbios.c:209 -msgid "" -"Create BIOS-like structures for backward compatibility with existing OS." -msgstr "" -"Crea estructuras tipo BIOS por compatibilidad con sistemas operativos " -"existentes." - -#: grub-core/commands/efi/loadbios.c:214 -msgid "BIOS_DUMP [INT10_DUMP]" -msgstr "VOLCADO_BIOS [VOLCADO_INT10]" - -#: grub-core/commands/efi/loadbios.c:215 -msgid "Load BIOS dump." -msgstr "Carga un volcado de la BIOS." - -#: grub-core/commands/efi/shim_lock.c:76 -#, c-format -msgid "module cannot be loaded in UEFI secure boot mode: %s" -msgstr "el módulo no se puede cargar en el modo de arranque seguro UEFI: %s" - -#: grub-core/commands/efi/shim_lock.c:98 -#, c-format -msgid "cannot boot due to dangerous module in memory: %s" -msgstr "no se pudo arrancar debido a un módulo peligroso en memoria: %s" - -# Miguel: (TODO: Unificar con traducción de gnupg) -#: grub-core/commands/efi/shim_lock.c:116 -msgid "bad shim signature" -msgstr "firma shim incorrecta" - -#: grub-core/commands/efi/tpm.c:149 grub-core/commands/efi/tpm.c:189 -#: grub-core/commands/efi/tpm.c:256 grub-core/commands/efi/tpm.c:306 -msgid "Command failed" -msgstr "La orden falló" - -#: grub-core/commands/efi/tpm.c:151 grub-core/commands/efi/tpm.c:191 -#: grub-core/commands/efi/tpm.c:258 grub-core/commands/efi/tpm.c:308 -msgid "Invalid parameter" -msgstr "Parámetro no válido" - -#: grub-core/commands/efi/tpm.c:154 grub-core/commands/efi/tpm.c:194 -#: grub-core/commands/efi/tpm.c:261 grub-core/commands/efi/tpm.c:311 -msgid "Output buffer too small" -msgstr "Buffer de salida demasiado pequeño" - -#: grub-core/commands/efi/tpm.c:156 grub-core/commands/efi/tpm.c:196 -#: grub-core/commands/efi/tpm.c:263 grub-core/commands/efi/tpm.c:313 -msgid "TPM unavailable" -msgstr "TPM no disponible" - -#: grub-core/commands/efi/tpm.c:158 grub-core/commands/efi/tpm.c:198 -#: grub-core/commands/efi/tpm.c:265 grub-core/commands/efi/tpm.c:315 -msgid "Unknown TPM error" -msgstr "Error de TPM desconocido" - -#: grub-core/commands/efi/tpm.c:240 grub-core/commands/efi/tpm.c:288 -msgid "cannot allocate TPM event buffer" -msgstr "no se pudo reservar el buffer de eventos de TPM" - -#: grub-core/commands/eval.c:63 -msgid "STRING ..." -msgstr "CADENA ..." - -#: grub-core/commands/eval.c:64 -msgid "Evaluate arguments as GRUB commands" -msgstr "Evalua los parámetros como órdenes de GRUB" - -# Miguel: Me odio a mi mismo por esto... -#: grub-core/commands/file.c:41 -msgid "Check if FILE can be booted as i386 PAE Xen unprivileged guest kernel" -msgstr "" -"Comprueba si FICHERO puede ser arrancado como un núcleo Xen invitado sin " -"privilegios i386 PAE" - -#: grub-core/commands/file.c:44 -msgid "Check if FILE can be booted as x86_64 Xen unprivileged guest kernel" -msgstr "" -"Comprueba si FICHERO puede ser arrancado como un núcleo Xen invitado sin " -"privilegios x86_64" - -#: grub-core/commands/file.c:46 -msgid "Check if FILE can be used as Xen x86 privileged guest kernel" -msgstr "" -"Comprueba si FICHERO puede ser arrancado como un núcleo Xen invitado " -"privilegiado x86" - -#: grub-core/commands/file.c:48 -msgid "Check if FILE can be used as x86 multiboot kernel" -msgstr "Comprueba si FICHERO puede ser usado como un núcleo multiboot x86" - -#: grub-core/commands/file.c:50 -msgid "Check if FILE can be used as x86 multiboot2 kernel" -msgstr "Comprueba si FICHERO puede ser usado como un núcleo multiboot2 x86" - -#: grub-core/commands/file.c:52 -msgid "Check if FILE is ARM Linux" -msgstr "Comprueba si FICHERO es Linux ARM" - -#: grub-core/commands/file.c:54 -msgid "Check if FILE is ARM64 Linux" -msgstr "Comprueba si FICHERO es Linux ARM64" - -#: grub-core/commands/file.c:56 -msgid "Check if FILE is IA64 Linux" -msgstr "Comprueba si FICHERO es Linux IA64" - -#: grub-core/commands/file.c:58 -msgid "Check if FILE is MIPS Linux" -msgstr "Comprueba si FICHERO es Linux MIPS" - -#: grub-core/commands/file.c:60 -msgid "Check if FILE is MIPSEL Linux" -msgstr "Comprueba si FICHERO es Linux MIPSEL" - -#: grub-core/commands/file.c:62 -msgid "Check if FILE is SPARC64 Linux" -msgstr "Comprueba si FICHERO es Linux SPARC64" - -#: grub-core/commands/file.c:64 -msgid "Check if FILE is POWERPC Linux" -msgstr "Comprueba si fichero es Linux POWERPC" - -#: grub-core/commands/file.c:66 -msgid "Check if FILE is x86 Linux" -msgstr "Comprueba si FICHERO es Linux x86" - -#: grub-core/commands/file.c:68 -msgid "Check if FILE is x86 Linux supporting 32-bit protocol" -msgstr "Comprueba si FICHERO es Linux x86 con soporte del protocolo de 32 bits" - -#: grub-core/commands/file.c:70 -msgid "Check if FILE is x86 kFreeBSD" -msgstr "Comprueba si FICHERO es kFreeBSD x86" - -#: grub-core/commands/file.c:72 -msgid "Check if FILE is i386 kFreeBSD" -msgstr "Comprueba si FICHERO es kFreeBSD i386" - -#: grub-core/commands/file.c:74 -msgid "Check if FILE is x86_64 kFreeBSD" -msgstr "Comprueba si FICHERO es kFreeBSD x86_64" - -#: grub-core/commands/file.c:77 -msgid "Check if FILE is x86 kNetBSD" -msgstr "Comprueba si FICHERO es kNetBSD x86" - -#: grub-core/commands/file.c:79 -msgid "Check if FILE is i386 kNetBSD" -msgstr "Comprueba si FICHERO es kNetBSD i386" - -#: grub-core/commands/file.c:81 -msgid "Check if FILE is x86_64 kNetBSD" -msgstr "Comprueba si FICHERO es kNetBSD x86_64" - -#: grub-core/commands/file.c:84 -msgid "Check if FILE is i386 EFI file" -msgstr "Comprueba si FICHERO es EFI i386" - -#: grub-core/commands/file.c:86 -msgid "Check if FILE is x86_64 EFI file" -msgstr "Comprueba si FICHERO es EFI x86_64" - -#: grub-core/commands/file.c:88 -msgid "Check if FILE is IA64 EFI file" -msgstr "Comprueba si FICHERO es EFI IA64" - -#: grub-core/commands/file.c:90 -msgid "Check if FILE is ARM64 EFI file" -msgstr "Comprueba si FICHERO es EFI ARM64" - -#: grub-core/commands/file.c:92 -msgid "Check if FILE is ARM EFI file" -msgstr "Comprueba si FICHERO es EFI ARM" - -#: grub-core/commands/file.c:94 -msgid "Check if FILE is RISC-V 32bit EFI file" -msgstr "Comprueba si FICHERO es EFI RISC-V de 32 bits" - -#: grub-core/commands/file.c:96 -msgid "Check if FILE is RISC-V 64bit EFI file" -msgstr "Comprueba si FICHERO es EFI RISC-V de 64 bits" - -#: grub-core/commands/file.c:98 -msgid "Check if FILE is hiberfil.sys in hibernated state" -msgstr "Comprueba si FICHERO es hiberfil.sys en estado hibernado" - -#: grub-core/commands/file.c:100 -msgid "Check if FILE is x86_64 XNU (Mac OS X kernel)" -msgstr "Comprueba si FICHERO es XNU x86_64 (núcleo de Mac OS X)" - -#: grub-core/commands/file.c:102 -msgid "Check if FILE is i386 XNU (Mac OS X kernel)" -msgstr "Comprueba si FICHERO es XNU i386 (núcleo de Mac OS X)" - -#: grub-core/commands/file.c:104 -msgid "Check if FILE is XNU (Mac OS X kernel) hibernated image" -msgstr "" -"Comprueba si FICHERO es una imagen hibernada de XNU (núcleo de Mac OS X)" - -#: grub-core/commands/file.c:106 -msgid "Check if FILE is BIOS bootsector" -msgstr "Comprueba si FICHERO es un sector de arranque BIOS" - -# Miguel: Falso en castellano tiene género, lo cual es un "TODO" -# en toda regla para Gettext. -#. TRANSLATORS: it's a standalone boolean value, -#. opposite of "true". -#: grub-core/commands/file.c:675 grub-core/commands/i386/cmostest.c:63 -#: grub-core/commands/i386/cpuid.c:71 grub-core/commands/keystatus.c:83 -#: grub-core/commands/keystatus.c:87 grub-core/commands/keystatus.c:96 -#: grub-core/commands/test.c:436 grub-core/commands/true.c:39 -#: grub-core/script/execute.c:247 grub-core/script/execute.c:1039 -msgid "false" -msgstr "falso" - -#: grub-core/commands/file.c:684 -msgid "OPTIONS FILE" -msgstr "OPCIONES FICHERO" - -#: grub-core/commands/file.c:685 -msgid "Check if FILE is of specified type." -msgstr "Comprueba si FICHERO es del tipo especificado." - -#. TRANSLATORS: It means that the specified partition e.g. -#. hd0,msdos1=/dev/sda1 doesn't exist. -#: grub-core/commands/gptsync.c:140 grub-core/kern/disk.c:258 -msgid "no such partition" -msgstr "no existe tal partición" - -#: grub-core/commands/gptsync.c:240 -#, c-format -msgid "New MBR is written to `%s'\n" -msgstr "El nuevo registro de arranque (MBR) se escribirá en «%s»\n" - -#: grub-core/commands/gptsync.c:252 -msgid "DEVICE [PARTITION[+/-[TYPE]]] ..." -msgstr "DISPOSITIVO [PARTICION[+/-[TIPO]]] ..." - -#. TRANSLATORS: MBR type is one-byte partition -#. type id. -#: grub-core/commands/gptsync.c:255 -msgid "" -"Fill hybrid MBR of GPT drive DEVICE. Specified partitions will be a part of " -"hybrid MBR. Up to 3 partitions are allowed. TYPE is an MBR type. + means " -"that partition is active. Only one partition can be active." -msgstr "" -"Rellena el registro de arranque híbrido de la unidad GPT DISPOSITIVO. Las " -"particiones especificadas formarán parte del registro de arranque híbrido. " -"Se permiten hasta 3 particiones. TIPO es un tipo del registro de arranque. + " -"significa que esa partición está activada. Sólo una partición puede estar " -"activada." - -#: grub-core/commands/halt.c:40 -msgid "" -"Halts the computer. This command does not work on all firmware " -"implementations." -msgstr "" -"Detiene el ordenador. Esta orden no funciona en todas las implementaciones " -"de firmware." - -#: grub-core/commands/hashsum.c:32 -msgid "Specify hash to use." -msgstr "Especifica el hash a usar." - -#: grub-core/commands/hashsum.c:32 -msgid "HASH" -msgstr "HASH" - -#: grub-core/commands/hashsum.c:33 -msgid "Check hashes of files with hash list FILE." -msgstr "" -"Comprueba el hash de los ficheros con el FICHERO con la lista de valores " -"hash." - -#: grub-core/commands/hashsum.c:35 -msgid "Base directory for hash list." -msgstr "Directorio base para la lista de hash." - -#. TRANSLATORS: platform here isn't identifier. It can be translated. -#: grub-core/commands/hashsum.c:35 grub-core/commands/ls.c:150 -#: grub-core/commands/macbless.c:226 grub-core/commands/syslinuxcfg.c:51 -#: grub-core/commands/syslinuxcfg.c:54 grub-core/kern/emu/main.c:106 -#: include/grub/util/install.h:50 include/grub/util/install.h:53 -#: include/grub/util/install.h:56 include/grub/util/install.h:59 -#: util/grub-install.c:250 util/grub-install.c:252 util/grub-install.c:297 -#: util/grub-install.c:299 util/grub-mkimage.c:64 util/grub-mkimage.c:67 -#: util/grub-mknetdir.c:46 util/grub-mknetdir.c:48 util/grub-mkrescue.c:99 -#: util/grub-setup.c:82 util/grub-syslinux2cfg.c:63 util/grub-syslinux2cfg.c:65 -#: util/grub-syslinux2cfg.c:67 util/grub-syslinux2cfg.c:71 -msgid "DIR" -msgstr "DIRECTORIO" - -#: grub-core/commands/hashsum.c:37 -msgid "Don't stop after first error." -msgstr "No se detiene ante el primer error." - -#: grub-core/commands/hashsum.c:38 -msgid "Uncompress file before checksumming." -msgstr "Descomprime fichero antes de comprobarlo." - -#: grub-core/commands/hashsum.c:163 -#, c-format -msgid "%s: READ ERROR\n" -msgstr "%s: ERROR DE LECTURA\n" - -#: grub-core/commands/hashsum.c:177 -#, c-format -msgid "%s: HASH MISMATCH\n" -msgstr "%s: EL HASH DIFIERE\n" - -#: grub-core/commands/hashsum.c:188 -#, c-format -msgid "%s: OK\n" -msgstr "%s: BIEN\n" - -#: grub-core/commands/hashsum.c:282 -msgid "-h HASH [-c FILE [-p PREFIX]] [FILE1 [FILE2 ...]]" -msgstr "-h HASH [-c FICHERO [-p PREFIJO]] [FICHERO1 [FICHERO2 ..]]" - -# Miguel: Dicho y hecho. :) -#. TRANSLATORS: "hash checksum" is just to -#. be a bit more precise, you can treat it as -#. just "hash". -#: grub-core/commands/hashsum.c:287 grub-core/commands/hashsum.c:292 -#: grub-core/commands/hashsum.c:297 grub-core/commands/hashsum.c:302 -#: grub-core/commands/hashsum.c:307 grub-core/commands/hashsum.c:313 -msgid "Compute or check hash checksum." -msgstr "Calcula o comprueba el hash." - -#: grub-core/commands/hashsum.c:290 grub-core/commands/hashsum.c:295 -#: grub-core/commands/hashsum.c:300 grub-core/commands/hashsum.c:305 -#: grub-core/commands/hashsum.c:311 -msgid "[-c FILE [-p PREFIX]] [FILE1 [FILE2 ...]]" -msgstr "[-c FICHERO [-p PREFIJO]] [FICHERO1 [FICHERO2 ...]]" - -# Miguel: APM se usa en el resto de la traducción. -#: grub-core/commands/hdparm.c:33 -msgid "" -"Set Advanced Power Management\n" -"(1=low, ..., 254=high, 255=off)." -msgstr "" -"Cambia la Gestión Avanzada de Energía (APM en inglés)\n" -"(1=baja, ..., 254=alta, 255=apagada)." - -# Miguel: Es el estado del disco duro, el clásico "suspendido", "activo" -# o "apagado", desconozco si en las herramientas de modificación -# de datos del disco duro se traduce de otro modo. -#: grub-core/commands/hdparm.c:36 -msgid "Display power mode." -msgstr "Muestra el modo de energía." - -#: grub-core/commands/hdparm.c:37 -msgid "Freeze ATA security settings until reset." -msgstr "Congela las configuraciones de seguridad ATA hasta el reinicio." - -#: grub-core/commands/hdparm.c:39 -msgid "Display SMART health status." -msgstr "Muestra el estado de salud SMART." - -#: grub-core/commands/hdparm.c:40 -msgid "" -"Set Automatic Acoustic Management\n" -"(0=off, 128=quiet, ..., 254=fast)." -msgstr "" -"Cambia la Gestión Automática de Sonido (AAM en ingés)\n" -"(0=apagado, 128=silencioso, ..., 254=rápido)." - -#: grub-core/commands/hdparm.c:43 -msgid "" -"Set standby timeout\n" -"(0=off, 1=5s, 2=10s, ..., 240=20m, 241=30m, ...)." -msgstr "" -"Cambia el plazo de finalización del estado de espera\n" -"(0=apagado, 1=5s, 2=10s, ..., 240=20m, 241=30m, ...)." - -#: grub-core/commands/hdparm.c:46 -msgid "Set drive to standby mode." -msgstr "Cambia la unidad a estado de espera." - -#: grub-core/commands/hdparm.c:47 -msgid "Set drive to sleep mode." -msgstr "Cambia la unidad a estado dormido." - -#: grub-core/commands/hdparm.c:48 -msgid "Print drive identity and settings." -msgstr "Imprime la identidad y la configuración de la unidad." - -#: grub-core/commands/hdparm.c:50 -msgid "Show raw contents of ATA IDENTIFY sector." -msgstr "Muestra el contenido crudo del sector ATA IDENTIFY." - -#: grub-core/commands/hdparm.c:52 -msgid "Disable/enable SMART (0/1)." -msgstr "Desactivar/activar SMART (0/1)." - -#: grub-core/commands/hdparm.c:53 -msgid "Do not print messages." -msgstr "No imprime mensajes." - -#: grub-core/commands/hdparm.c:286 grub-core/commands/i386/rdmsr.c:68 -#: grub-core/commands/iorw.c:47 grub-core/commands/legacycfg.c:760 -#: grub-core/commands/legacycfg.c:812 grub-core/commands/macbless.c:190 -#: grub-core/commands/memrw.c:47 grub-core/commands/pgp.c:738 -#: grub-core/commands/pgp.c:792 grub-core/commands/search.c:304 -#: grub-core/commands/search_wrap.c:179 grub-core/commands/setpci.c:243 -#: grub-core/commands/sleep.c:71 grub-core/fs/zfs/zfsinfo.c:279 -#: grub-core/fs/zfs/zfsinfo.c:358 grub-core/gettext/gettext.c:492 -#: grub-core/kern/corecmd.c:65 grub-core/kern/corecmd.c:79 -#: grub-core/mmap/mmap.c:430 grub-core/net/dns.c:713 grub-core/net/dns.c:745 -#: grub-core/net/net.c:694 grub-core/net/net.c:1052 -#: grub-core/normal/context.c:194 grub-core/script/execute.c:131 -#: grub-core/term/gfxterm_background.c:136 -msgid "one argument expected" -msgstr "se esperaba un parámetro" - -#: grub-core/commands/hdparm.c:440 -msgid "[OPTIONS] DISK" -msgstr "[OPCIONES] DISCO" - -#: grub-core/commands/hdparm.c:441 -msgid "Get/set ATA disk parameters." -msgstr "Obtiene/cambia parámetros del disco ATA." - -#: grub-core/commands/help.c:132 grub-core/lib/arg.c:109 -#: grub-core/lib/gnulib/argp-help.c:1616 -msgid "Usage:" -msgstr "Uso:" - -#: grub-core/commands/help.c:146 -msgid "[PATTERN ...]" -msgstr "[PATRÓN ..]" - -#: grub-core/commands/help.c:147 -msgid "Show a help message." -msgstr "Muestra un mensaje de ayuda." - -#: grub-core/commands/hexdump.c:31 -msgid "Skip offset bytes from the beginning of file." -msgstr "Descarta bytes de desplazamiento del inicio del fichero." - -#: grub-core/commands/hexdump.c:33 -msgid "Read only LENGTH bytes." -msgstr "Lee únicamente LONGITUD bytes." - -#: grub-core/commands/hexdump.c:125 -msgid "[OPTIONS] FILE_OR_DEVICE" -msgstr "[OPCIONES] FICHERO_O_DISPOSITIVO" - -#: grub-core/commands/hexdump.c:126 -msgid "Show raw contents of a file or memory." -msgstr "Muestra el contenido crudo de un fichero o de la memoria." - -#: grub-core/commands/i386/cmosdump.c:58 -msgid "Show raw dump of the CMOS contents." -msgstr "Muestra el volcado de los contenidos crudos de la CMOS." - -#: grub-core/commands/i386/cmostest.c:108 -#: grub-core/commands/i386/cmostest.c:111 -#: grub-core/commands/i386/cmostest.c:114 -msgid "BYTE:BIT" -msgstr "BYTE:BIT" - -#: grub-core/commands/i386/cmostest.c:109 -msgid "Test bit at BYTE:BIT in CMOS." -msgstr "Comprueba el bit de la CMOS en BYTE:BIT." - -#: grub-core/commands/i386/cmostest.c:112 -msgid "Clear bit at BYTE:BIT in CMOS." -msgstr "Desactiva el bit de la CMOS en BYTE:BIT." - -#. TRANSLATORS: A bit may be either set (1) or clear (0). -#: grub-core/commands/i386/cmostest.c:116 -msgid "Set bit at BYTE:BIT in CMOS." -msgstr "Activa el bit de la CMOS en BYTE:BIT." - -# Miguel: Mantengo coreboot por ser el nombre del "firmware". -#: grub-core/commands/i386/coreboot/cb_timestamps.c:120 -msgid "Show coreboot boot time statistics." -msgstr "Muestra las estadísticas de tiempo de arranque de coreboot." - -#: grub-core/commands/i386/coreboot/cbls.c:137 -msgid "List coreboot tables." -msgstr "Enumera las tablas de coreboot." - -#. TRANSLATORS: "(default)" at the end means that this option is used if -#. no argument is specified. -#: grub-core/commands/i386/cpuid.c:36 -msgid "Check if CPU supports 64-bit (long) mode (default)." -msgstr "Comprueba si la CPU soporta el modo de 64 bits (predeterminada)." - -#: grub-core/commands/i386/cpuid.c:37 -msgid "Check if CPU supports Physical Address Extension." -msgstr "Comprueba si la CPU soporta la Extensión de Direcciones Físicas (PAE)." - -#: grub-core/commands/i386/cpuid.c:119 -msgid "Check for CPU features." -msgstr "Comprueba las características de la CPU." - -# Miguel: Mapeado no me gusta mucho, pero tampoco encuentro -# una palabra más adecuada. Esto y hash tienen bastantes puntos para -# poder ser traducidos mejor. -#. TRANSLATORS: In this file "mapping" refers to a change GRUB makes so if -#. your language doesn't have an equivalent of "mapping" you can -#. use the word like "rerouting". -#. -#: grub-core/commands/i386/pc/drivemap.c:43 -msgid "Show the current mappings." -msgstr "Muestra los mapeados actuales." - -#: grub-core/commands/i386/pc/drivemap.c:44 -msgid "Reset all mappings to the default values." -msgstr "Reinicia todos los mapeados a los valores predeterminados." - -#: grub-core/commands/i386/pc/drivemap.c:45 -msgid "Perform both direct and reverse mappings." -msgstr "Realizar ambos mapeados, directos e inversos." - -#: grub-core/commands/i386/pc/drivemap.c:184 -msgid "No drives have been remapped" -msgstr "No se han remapeado unidades" - -#. TRANSLATORS: This is the header of mapping list. -#. On the left is how OS will see the disks and -#. on the right current GRUB vision. -#: grub-core/commands/i386/pc/drivemap.c:191 -msgid "OS disk #num ------> GRUB/BIOS device" -msgstr "Disco del SO ------> Dispositivo GRUB/BIOS" - -#: grub-core/commands/i386/pc/drivemap.c:413 -msgid "-l | -r | [-s] grubdev osdisk." -msgstr "-l | -r | [-s] disco_grub disco_so." - -#: grub-core/commands/i386/pc/drivemap.c:414 -msgid "Manage the BIOS drive mappings." -msgstr "Gestiona los mapas de dispositivos de la BIOS." - -#: grub-core/commands/i386/pc/halt.c:31 -msgid "Do not use APM to halt the computer." -msgstr "No usa la APM para detener el ordenador." - -#: grub-core/commands/i386/pc/halt.c:119 -msgid "Halt the system, if possible using APM." -msgstr "Detiene el sistema, si es posible usando la APM." - -#: grub-core/commands/i386/pc/lsapm.c:75 -msgid "no APM found" -msgstr "no se encontró la APM" - -#: grub-core/commands/i386/pc/lsapm.c:77 -#, c-format -msgid "" -"Version %u.%u\n" -"32-bit CS = 0x%x, len = 0x%x, offset = 0x%x\n" -"16-bit CS = 0x%x, len = 0x%x\n" -"DS = 0x%x, len = 0x%x\n" -msgstr "" -"Versión %u.%u\n" -"32-bit CS = 0x%x, longitud = 0x%x, desplazamiento = 0x%x\n" -"16-bit CS = 0x%x, longitud = 0x%x\n" -"DS = 0x%x, longitud = 0x%x\n" - -#: grub-core/commands/i386/pc/lsapm.c:86 -msgid "16-bit protected interface supported\n" -msgstr "Interfaz protegida de 16 bits permitida\n" - -#: grub-core/commands/i386/pc/lsapm.c:87 -msgid "16-bit protected interface unsupported\n" -msgstr "Interfaz protegida de 16 bits no permitida\n" - -#: grub-core/commands/i386/pc/lsapm.c:89 -msgid "32-bit protected interface supported\n" -msgstr "Interfaz protegida de 32 bits permitida\n" - -#: grub-core/commands/i386/pc/lsapm.c:90 -msgid "32-bit protected interface unsupported\n" -msgstr "Interfaz protegida de 32 bits no permitida\n" - -#: grub-core/commands/i386/pc/lsapm.c:92 -msgid "CPU Idle slows down processor\n" -msgstr "Poner en espera a la CPU ralentiza al procesador\n" - -#: grub-core/commands/i386/pc/lsapm.c:93 -msgid "CPU Idle doesn't slow down processor\n" -msgstr "Poner en espera a la CPU no ralentiza al procesador\n" - -#: grub-core/commands/i386/pc/lsapm.c:95 -msgid "APM disabled\n" -msgstr "APM deshabilitada\n" - -#: grub-core/commands/i386/pc/lsapm.c:95 -msgid "APM enabled\n" -msgstr "APM habilitada\n" - -#: grub-core/commands/i386/pc/lsapm.c:97 -msgid "APM disengaged\n" -msgstr "APM desactivada\n" - -#: grub-core/commands/i386/pc/lsapm.c:97 -msgid "APM engaged\n" -msgstr "APM activada\n" - -#: grub-core/commands/i386/pc/lsapm.c:107 -msgid "Show APM information." -msgstr "Muestra la información de la APM." - -#. TRANSLATORS: It's musical notes, not the notes -#. you take. Play command expects arguments which can -#. be either a filename or tempo+notes. -#. This error happens if none is specified. -#: grub-core/commands/i386/pc/play.c:88 -msgid "filename or tempo and notes expected" -msgstr "se esperaba un nombre de fichero o un tempo y unas notas" - -#: grub-core/commands/i386/pc/play.c:113 grub-core/commands/i386/pc/play.c:144 -#, c-format -msgid "Invalid tempo in %s" -msgstr "Tempo en %s no válido" - -#: grub-core/commands/i386/pc/play.c:151 grub-core/commands/macbless.c:172 -#: grub-core/fs/archelp.c:260 grub-core/fs/bfs.c:621 grub-core/fs/bfs.c:704 -#: grub-core/fs/btrfs.c:1726 grub-core/fs/btrfs.c:1755 -#: grub-core/fs/btrfs.c:1799 grub-core/fs/btrfs.c:1882 -#: grub-core/fs/btrfs.c:1906 grub-core/fs/fshelp.c:257 grub-core/fs/jfs.c:696 -#: grub-core/fs/minix.c:426 grub-core/fs/ufs.c:544 grub-core/fs/zfs/zfs.c:2083 -#: grub-core/fs/zfs/zfs.c:2095 grub-core/fs/zfs/zfs.c:2301 -#: grub-core/net/http.c:120 -#, c-format -msgid "file `%s' not found" -msgstr "fichero «%s» no encontrado" - -#: grub-core/commands/i386/pc/play.c:162 grub-core/commands/i386/pc/play.c:171 -#: grub-core/kern/misc.c:419 grub-core/script/execute.c:138 -#: grub-core/script/execute.c:244 -msgid "unrecognized number" -msgstr "número no reconocido" - -#: grub-core/commands/i386/pc/play.c:190 -msgid "FILE | TEMPO [PITCH1 DURATION1] [PITCH2 DURATION2] ... " -msgstr "FICHERO | TEMPO [TONO1 DURACIÓN1] [TONO2 DURACIÓN2] ... " - -#: grub-core/commands/i386/pc/play.c:191 -msgid "Play a tune." -msgstr "Toca una melodía." - -#: grub-core/commands/i386/pc/sendkey.c:39 -msgid "set numlock mode" -msgstr "cambia el modo del teclado numérico" - -#: grub-core/commands/i386/pc/sendkey.c:40 -msgid "set capslock mode" -msgstr "cambia el estado de las mayúsculas" - -#: grub-core/commands/i386/pc/sendkey.c:41 -msgid "set scrolllock mode" -msgstr "cambia el estado del bloqueo de desplazamiento" - -#: grub-core/commands/i386/pc/sendkey.c:42 -msgid "set insert mode" -msgstr "cambia el modo de inserción" - -#: grub-core/commands/i386/pc/sendkey.c:43 -msgid "set pause mode" -msgstr "cambia el modo de pausa" - -#: grub-core/commands/i386/pc/sendkey.c:44 -msgid "press left shift" -msgstr "presione la tecla «Shift» de la izquierda" - -#: grub-core/commands/i386/pc/sendkey.c:45 -msgid "press right shift" -msgstr "presione la tecla «Shift» de la derecha" - -#: grub-core/commands/i386/pc/sendkey.c:46 -msgid "press SysRq" -msgstr "pulse «Pet Sis»" - -#: grub-core/commands/i386/pc/sendkey.c:47 -msgid "press NumLock key" -msgstr "pulse la tecla «Bloq Num»" - -#: grub-core/commands/i386/pc/sendkey.c:48 -msgid "press CapsLock key" -msgstr "pulse la tecla «Bloq Mayús»" - -#: grub-core/commands/i386/pc/sendkey.c:49 -msgid "press ScrollLock key" -msgstr "pulse la tecla «Bloq Despl»" - -#: grub-core/commands/i386/pc/sendkey.c:50 -msgid "press Insert key" -msgstr "pulse la tecla «Insert»" - -#: grub-core/commands/i386/pc/sendkey.c:51 -msgid "press left alt" -msgstr "pulse la tecla «Alt»" - -#: grub-core/commands/i386/pc/sendkey.c:52 -msgid "press right alt" -msgstr "pulse la tecla «Alt Gr»" - -#: grub-core/commands/i386/pc/sendkey.c:53 -msgid "press left ctrl" -msgstr "pulse la tecla «Ctrl» de la izquierda" - -#: grub-core/commands/i386/pc/sendkey.c:54 -msgid "press right ctrl" -msgstr "pulse la tecla «Ctrl» de la derecha" - -#: grub-core/commands/i386/pc/sendkey.c:55 -msgid "don't update LED state" -msgstr "no actualiza el estado de los LED" - -#: grub-core/commands/i386/pc/sendkey.c:372 -msgid "[KEYSTROKE1] [KEYSTROKE2] ..." -msgstr "[PULSACIÓNDETECLA1] [PULSACIÓNDETECLA2] ..." - -#. TRANSLATORS: It can emulate multiple -#. keypresses. -#: grub-core/commands/i386/pc/sendkey.c:375 -msgid "Emulate a keystroke sequence" -msgstr "Emula una secuencia de pulsaciones de teclas" - -#: grub-core/commands/i386/rdmsr.c:37 grub-core/commands/iorw.c:34 -#: grub-core/commands/memrw.c:33 grub-core/commands/setpci.c:73 -msgid "Save read value into variable VARNAME." -msgstr "Guarda el valor leído en la variable NOMBRE_DE_VARIABLE." - -#: grub-core/commands/i386/rdmsr.c:38 grub-core/commands/iorw.c:35 -#: grub-core/commands/memrw.c:34 grub-core/commands/probe.c:40 -#: grub-core/commands/search_wrap.c:40 grub-core/commands/setpci.c:74 -#: grub-core/commands/tr.c:32 -msgid "VARNAME" -msgstr "NOMBRE_DE_VARIABLE" - -#: grub-core/commands/i386/rdmsr.c:55 grub-core/commands/i386/rdmsr.c:60 -#: grub-core/commands/i386/rdmsr.c:65 grub-core/commands/i386/wrmsr.c:47 -#: grub-core/commands/i386/wrmsr.c:52 grub-core/commands/i386/wrmsr.c:57 -msgid "unsupported instruction" -msgstr "instrucción no implementada" - -#: grub-core/commands/i386/rdmsr.c:77 grub-core/commands/i386/wrmsr.c:69 -#: grub-core/commands/i386/wrmsr.c:77 grub-core/net/dns.c:727 -msgid "invalid argument" -msgstr "parámetro no válido" - -#: grub-core/commands/i386/rdmsr.c:94 grub-core/commands/memrw.c:125 -#: grub-core/commands/memrw.c:129 grub-core/commands/memrw.c:133 -msgid "ADDR" -msgstr "DIRECCIÓN" - -# TODO (MAAV): Repensar -#: grub-core/commands/i386/rdmsr.c:95 -msgid "Read a CPU model specific register." -msgstr "Lee un registro específico de modelo de CPU." - -#: grub-core/commands/i386/wrmsr.c:86 -msgid "ADDR VALUE" -msgstr "DIRECCIÓN VALOR" - -# TODO (MAAV): Repensar. -#: grub-core/commands/i386/wrmsr.c:87 -msgid "Write a value to a CPU model specific register." -msgstr "Escribe un valor a un registro específico de modelo de CPU." - -#: grub-core/commands/ieee1275/suspend.c:34 -msgid "Run `go' to resume GRUB." -msgstr "Ejecute «go» para continuar con GRUB." - -#: grub-core/commands/ieee1275/suspend.c:45 -msgid "Return to IEEE1275 prompt." -msgstr "Vuelve a la línea de órdenes IEEE1275." - -#: grub-core/commands/iorw.c:123 grub-core/commands/iorw.c:127 -#: grub-core/commands/iorw.c:131 grub-core/gdb/gdb.c:79 -msgid "PORT" -msgstr "PUERTO" - -#: grub-core/commands/iorw.c:123 -msgid "Read 8-bit value from PORT." -msgstr "Lee un valor de 8 bits del PUERTO." - -#: grub-core/commands/iorw.c:127 -msgid "Read 16-bit value from PORT." -msgstr "Lee un valor de 16 bits del PUERTO." - -#: grub-core/commands/iorw.c:131 -msgid "Read 32-bit value from PORT." -msgstr "Lee un valor de 32 bits del PUERTO." - -#: grub-core/commands/iorw.c:135 grub-core/commands/iorw.c:139 -msgid "PORT VALUE [MASK]" -msgstr "PUERTO VALOR [MÃSCARA]" - -#: grub-core/commands/iorw.c:136 -msgid "Write 8-bit VALUE to PORT." -msgstr "Escribe el VALOR de 8 bits al PUERTO." - -#: grub-core/commands/iorw.c:140 -msgid "Write 16-bit VALUE to PORT." -msgstr "Escribe el VALOR de 16 bits al PUERTO." - -#: grub-core/commands/iorw.c:143 grub-core/commands/memrw.c:137 -#: grub-core/commands/memrw.c:141 grub-core/commands/memrw.c:145 -msgid "ADDR VALUE [MASK]" -msgstr "DIRECCIÓN VALOR [MÃSCARA]" - -#: grub-core/commands/iorw.c:144 -msgid "Write 32-bit VALUE to PORT." -msgstr "Escribe el VALOR de 32 bits al PUERTO." - -#: grub-core/commands/keylayouts.c:215 grub-core/commands/loadenv.c:61 -#: grub-core/commands/nativedisk.c:189 grub-core/efiemu/main.c:235 -#: grub-core/font/font.c:428 grub-core/gfxmenu/gfxmenu.c:63 -#: grub-core/kern/device.c:42 grub-core/kern/dl.c:740 -#, c-format -msgid "variable `%s' isn't set" -msgstr "no se ha fijado la variable «%s»" - -#: grub-core/commands/keylayouts.c:301 -msgid "Load a keyboard layout." -msgstr "Carga una distribución de teclado." - -#. TRANSLATORS: "Check" in a sense that if this key is pressed then -#. "true" is returned, otherwise "false". -#: grub-core/commands/keystatus.c:32 -msgid "Check Shift key." -msgstr "Comprueba la tecla «Shift»." - -#: grub-core/commands/keystatus.c:33 -msgid "Check Control key." -msgstr "Comprueba la tecla «Control»." - -#: grub-core/commands/keystatus.c:34 -msgid "Check Alt key." -msgstr "Comprueba la tecla «Alt»." - -#. TRANSLATORS: there are 3 modifiers. -#: grub-core/commands/keystatus.c:106 -msgid "Check key modifier status." -msgstr "Comprueba el estado de los modificadores del teclado." - -#: grub-core/commands/legacycfg.c:512 grub-core/commands/legacycfg.c:526 -#: grub-core/commands/legacycfg.c:546 grub-core/commands/legacycfg.c:559 -#: grub-core/commands/time.c:43 grub-core/script/function.c:109 -#: util/grub-file.c:100 util/grub-fstest.c:57 util/grub-mount.c:69 -#, c-format -msgid "can't find command `%s'" -msgstr "no se puede encontrar la orden «%s»" - -#: grub-core/commands/legacycfg.c:813 grub-core/normal/auth.c:225 -#: util/grub-mkpasswd-pbkdf2.c:139 -msgid "Enter password: " -msgstr "Introduzca la contraseña: " - -# Miguel: He preferido clarificar legacy con GRUB1, porque -# puede que en el futuro GRUB2 sea también obsoleto aunque no -# se llame GRUB-legacy. -#. TRANSLATORS: "legacy config" means -#. "config as used by grub-legacy". -#: grub-core/commands/legacycfg.c:837 -msgid "Parse legacy config in same context" -msgstr "Procesa la configuración de GRUB1 en el mismo contexto" - -#: grub-core/commands/legacycfg.c:842 -msgid "Parse legacy config in new context" -msgstr "Procesa la configuración de GRUB1 en un nuevo contexto" - -#: grub-core/commands/legacycfg.c:847 -msgid "Parse legacy config in same context taking only menu entries" -msgstr "" -"Procesa la configuración de GRUB 1 en el mismo contexto tomando únicamente " -"las entradas del menú" - -#: grub-core/commands/legacycfg.c:852 -msgid "Parse legacy config in new context taking only menu entries" -msgstr "" -"Procesa la configuración de GRUB1 en un nuevo contexto tomando únicamente " -"las entradas del menú" - -#: grub-core/commands/legacycfg.c:856 -msgid "[--no-mem-option] [--type=TYPE] FILE [ARG ...]" -msgstr "[--no-mem-option] [--type=TIPO] FICHERO [PARÃMETRO ...]" - -#: grub-core/commands/legacycfg.c:857 -msgid "Simulate grub-legacy `kernel' command" -msgstr "Simula la orden «kernel» de GRUB1" - -#: grub-core/commands/legacycfg.c:861 grub-core/commands/legacycfg.c:865 -msgid "FILE [ARG ...]" -msgstr "FICHERO [PARÃMETRO ...]" - -#: grub-core/commands/legacycfg.c:862 -msgid "Simulate grub-legacy `initrd' command" -msgstr "Simula la orden «initrd» de GRUB1" - -#: grub-core/commands/legacycfg.c:866 -msgid "Simulate grub-legacy `modulenounzip' command" -msgstr "Simula la orden «modulenounzip» de GRUB1" - -#: grub-core/commands/legacycfg.c:870 grub-core/commands/legacycfg.c:875 -msgid "[--md5] PASSWD [FILE]" -msgstr "[--md5] CONTRASEÑA [FICHERO]" - -#: grub-core/commands/legacycfg.c:871 -msgid "Simulate grub-legacy `password' command" -msgstr "Simula la orden «password» de GRUB1" - -#: grub-core/commands/legacycfg.c:876 -msgid "Simulate grub-legacy `password' command in menu entry mode" -msgstr "Simula la orden «pasword» de GRUB1 en modo de entrada de menú" - -#. TRANSLATORS: This option is used to override default filename -#. for loading and storing environment. -#: grub-core/commands/loadenv.c:37 -msgid "Specify filename." -msgstr "Especifique el nombre de fichero." - -#: grub-core/commands/loadenv.c:39 -msgid "Skip signature-checking of the environment file." -msgstr "Ignora la comprobación de firma del fichero de entorno." - -#: grub-core/commands/loadenv.c:451 -msgid "[-f FILE] [-s|--skip-sig] [variable_name_to_whitelist] [...]" -msgstr "[-f FICHERO] [-s|--skip-sig] [nombre_de_variable] [...]" - -#: grub-core/commands/loadenv.c:452 -msgid "Load variables from environment block file." -msgstr "Carga variables de un fichero de bloques de entorno." - -#: grub-core/commands/loadenv.c:455 -msgid "[-f FILE]" -msgstr "[-f FICHERO]" - -#: grub-core/commands/loadenv.c:456 -msgid "List variables from environment block file." -msgstr "Muestra las variables de un fichero de bloques de entorno." - -#: grub-core/commands/loadenv.c:460 -msgid "[-f FILE] variable_name [...]" -msgstr "[-f FICHERO] nombre_de_variable [...]" - -#: grub-core/commands/loadenv.c:461 -msgid "Save variables to environment block file." -msgstr "Guarda las variables a un fichero de bloques de entorno." - -#: grub-core/commands/ls.c:40 -msgid "Show a long list with more detailed information." -msgstr "Muestra una larga lista con información más detallada." - -#: grub-core/commands/ls.c:41 -msgid "Print sizes in a human readable format." -msgstr "Imprime los tamaños en un formato legible por un humano." - -#: grub-core/commands/ls.c:42 -msgid "List all files." -msgstr "Enumera todos los ficheros." - -#: grub-core/commands/ls.c:73 -msgid "Network protocols:" -msgstr "Protocolos de red:" - -#: grub-core/commands/ls.c:295 -msgid "[-l|-h|-a] [FILE ...]" -msgstr "[-l|-h|-a] [FICHERO ...]" - -#: grub-core/commands/ls.c:296 -msgid "List devices and files." -msgstr "Enumera dispositivos y ficheros." - -#: grub-core/commands/lsacpi.c:255 -msgid "Show version 1 tables only." -msgstr "Muestra únicamente las tablas de la versión 1." - -#: grub-core/commands/lsacpi.c:256 -msgid "Show version 2 and version 3 tables only." -msgstr "Muestra únicamente las tablas de las versiones 2 y 3." - -#: grub-core/commands/lsacpi.c:306 -msgid "Show ACPI information." -msgstr "Muestra la información ACPI." - -#: grub-core/commands/lsmmap.c:31 -msgid "available RAM" -msgstr "RAM disponible" - -#: grub-core/commands/lsmmap.c:32 -msgid "reserved RAM" -msgstr "RAM reservada" - -#. TRANSLATORS: this refers to memory where ACPI tables are stored -#. and which can be used by OS once it loads ACPI tables. -#: grub-core/commands/lsmmap.c:35 -msgid "ACPI reclaimable RAM" -msgstr "RAM reclamable por ACPI" - -#. TRANSLATORS: this refers to memory which ACPI-compliant OS -#. is required to save accross hibernations. -#: grub-core/commands/lsmmap.c:38 -msgid "ACPI non-volatile storage RAM" -msgstr "Almacenamiento ACPI no volátil en RAM" - -#: grub-core/commands/lsmmap.c:39 -msgid "faulty RAM (BadRAM)" -msgstr "RAM defectuosa (BadRAM)" - -#: grub-core/commands/lsmmap.c:40 -msgid "persistent RAM" -msgstr "RAM persistente" - -#: grub-core/commands/lsmmap.c:41 -msgid "persistent RAM (legacy)" -msgstr "RAM persistente (antigua)" - -#: grub-core/commands/lsmmap.c:42 -msgid "RAM holding coreboot tables" -msgstr "RAM con las tablas de coreboot" - -#: grub-core/commands/lsmmap.c:43 -msgid "RAM holding firmware code" -msgstr "RAM con código del firmware" - -#: grub-core/commands/lsmmap.c:52 -#, c-format -msgid "base_addr = 0x%llx, length = 0x%llx, %s\n" -msgstr "dirección_base = 0x%llx, longitud = 0x%llx, %s\n" - -#: grub-core/commands/lsmmap.c:55 -#, c-format -msgid "base_addr = 0x%llx, length = 0x%llx, type = 0x%x\n" -msgstr "dirección_base = 0x%llx, longitud = 0x%llx, tipo = 0x%x\n" - -#: grub-core/commands/lsmmap.c:79 -msgid "List memory map provided by firmware." -msgstr "Enumerar los mapeados de memoria proporcionados por el firmware." - -#: grub-core/commands/lspci.c:232 -msgid "List PCI devices." -msgstr "Enumerar los dispositivos PCI." - -#: grub-core/commands/macbless.c:224 -msgid "Bless FILE of HFS or HFS+ partition for intel macs." -msgstr "Bendice el FICHERO de la partición HFS o HFS+ para macs intel." - -#: grub-core/commands/macbless.c:228 -msgid "Bless DIR of HFS or HFS+ partition for PPC macs." -msgstr "Bendice el DIRECTORIO de la partición HFS o HFS+ para macs PPC-" - -#: grub-core/commands/memrw.c:125 -msgid "Read 8-bit value from ADDR." -msgstr "Lee un valor de 8 bits de DIRECCIÓN." - -#: grub-core/commands/memrw.c:129 -msgid "Read 16-bit value from ADDR." -msgstr "Lee un valor de 16 bits de DIRECCIÓN." - -#: grub-core/commands/memrw.c:133 -msgid "Read 32-bit value from ADDR." -msgstr "Lee un valor de 32 bits de DIRECCIÓN." - -#: grub-core/commands/memrw.c:138 -msgid "Write 8-bit VALUE to ADDR." -msgstr "Escribe el VALOR de 8 bits en DIRECCIÓN." - -#: grub-core/commands/memrw.c:142 -msgid "Write 16-bit VALUE to ADDR." -msgstr "Escribe el VALOR de 16 bits en DIRECCIÓN." - -#: grub-core/commands/memrw.c:146 -msgid "Write 32-bit VALUE to ADDR." -msgstr "Escribe el VALOR de 32 bits en DIRECCIÓN." - -#: grub-core/commands/menuentry.c:31 -msgid "Menu entry type." -msgstr "Tipo de entrada de menú." - -#: grub-core/commands/menuentry.c:31 grub-core/commands/menuentry.c:38 -#: grub-core/commands/menuentry.c:39 grub-core/gettext/gettext.c:520 -#: util/grub-fstest.c:520 util/grub-install.c:291 util/grub-install.c:304 -#: util/grub-mknetdir.c:51 util/grub-mkrescue.c:109 util/grub-mkrescue.c:110 -#: util/grub-mount.c:453 util/grub-render-label.c:65 -msgid "STRING" -msgstr "CADENA" - -#: grub-core/commands/menuentry.c:33 -msgid "List of users allowed to boot this entry." -msgstr "Lista de usuarios con permiso para arrancar con esta entrada." - -#: grub-core/commands/menuentry.c:33 -msgid "USERNAME[,USERNAME]" -msgstr "USUARIO[,USUARIO]" - -#: grub-core/commands/menuentry.c:36 -msgid "Keyboard key to quickly boot this entry." -msgstr "Tecla para arrancar rápidamente con esta entrada." - -#: grub-core/commands/menuentry.c:36 -msgid "KEYBOARD_KEY" -msgstr "TECLA" - -#: grub-core/commands/menuentry.c:38 -msgid "Use STRING as menu entry body." -msgstr "Usa CADENA como el cuerpo de la entrada del menú." - -#: grub-core/commands/menuentry.c:39 -msgid "Menu entry identifier." -msgstr "Identificador de la entrada del menú." - -#. TRANSLATORS: menu entry can either be bootable by anyone or only by -#. handful of users. By default when security is active only superusers can -#. boot a given menu entry. With --unrestricted (this option) -#. anyone can boot it. -#: grub-core/commands/menuentry.c:44 -msgid "This entry can be booted by any user." -msgstr "Esta entrada puede ser usada por cualquier usuario para arrancar." - -#: grub-core/commands/menuentry.c:323 grub-core/commands/menuentry.c:328 -#: grub-core/tests/test_blockarg.c:46 -msgid "BLOCK" -msgstr "BLOQUE" - -#: grub-core/commands/menuentry.c:323 -msgid "Define a menu entry." -msgstr "Define una entrada en el menú." - -#: grub-core/commands/menuentry.c:328 -msgid "Define a submenu." -msgstr "Define un sub-menú." - -#. TRANSLATORS: this is module list header. Name -#. is module name, Ref Count is a reference counter -#. (how many modules or open descriptors use it). -#. Dependencies are the other modules it uses. -#. -#: grub-core/commands/minicmd.c:162 -msgid "Name\tRef Count\tDependencies\n" -msgstr "Nombre\tNúm Ref.\tDependencias\n" - -#: grub-core/commands/minicmd.c:201 -msgid "Show this message." -msgstr "Muestra este mensaje." - -#: grub-core/commands/minicmd.c:204 -msgid "ADDR [SIZE]" -msgstr "DIRECCIÓN [TAMAÑO]" - -#: grub-core/commands/minicmd.c:204 -msgid "Show memory contents." -msgstr "Muestra los contenidos de la memoria." - -#: grub-core/commands/minicmd.c:207 grub-core/kern/corecmd.c:188 -#: util/grub-install.c:275 -msgid "MODULE" -msgstr "MÓDULO" - -#: grub-core/commands/minicmd.c:207 -msgid "Remove a module." -msgstr "Elimina un módulo." - -#: grub-core/commands/minicmd.c:210 -msgid "Show loaded modules." -msgstr "Muestra los módulos cargados." - -#: grub-core/commands/minicmd.c:213 -msgid "Exit from GRUB." -msgstr "Sale de GRUB." - -#: grub-core/commands/mips/loongson/lsspd.c:42 -msgid "No CS5536 found" -msgstr "No se encontró ningún CS5536" - -#: grub-core/commands/mips/loongson/lsspd.c:45 -#, c-format -msgid "CS5536 at %d:%d.%d\n" -msgstr "CS5536 en %d:%d.%d\n" - -#. TRANSLATORS: System management bus is often used to access components like -#. RAM (info only, not data) or batteries. I/O space is where in memory -#. its ports are. -#: grub-core/commands/mips/loongson/lsspd.c:55 -#, c-format -msgid "System management bus controller I/O space is at 0x%x\n" -msgstr "" -"El espacio del sistema de gestión de control del bus I/O está en 0x%x\n" - -#. TRANSLATORS: it's shown in a report in a way -#. like number 1: ... number 2: ... -#. -#: grub-core/commands/mips/loongson/lsspd.c:66 -#, c-format -msgid "RAM slot number %d\n" -msgstr "Zócalo de RAM número %d\n" - -#: grub-core/commands/mips/loongson/lsspd.c:73 -#, c-format -msgid "Written SPD bytes: %d B.\n" -msgstr "Bytes SPD escritos: %d B.\n" - -#: grub-core/commands/mips/loongson/lsspd.c:74 -#, c-format -msgid "Total flash size: %d B.\n" -msgstr "Tamaño total de flash: %d B.\n" - -#: grub-core/commands/mips/loongson/lsspd.c:79 -msgid "Memory type: DDR2." -msgstr "Tipo de memoria: DDR2." - -#: grub-core/commands/mips/loongson/lsspd.c:83 -#, c-format -msgid "Part no: %s.\n" -msgstr "Número de pieza: %s.\n" - -#: grub-core/commands/mips/loongson/lsspd.c:86 -msgid "Memory type: Unknown." -msgstr "Tipo de memoria: Desconocido." - -#: grub-core/commands/mips/loongson/lsspd.c:97 -msgid "Print Memory information." -msgstr "Imprime información de la memoria." - -#: grub-core/commands/nativedisk.c:118 grub-core/commands/probe.c:118 -#: grub-core/commands/probe.c:124 util/grub-probe.c:450 -#, c-format -msgid "%s does not support UUIDs" -msgstr "%s no soporta UUID" - -#: grub-core/commands/nativedisk.c:325 -msgid "[MODULE1 MODULE2 ...]" -msgstr "[MODULO1 MODULO2 ...]" - -# Miguel: «Switch» es una palabra bastante difícil de traducir al -# castellano... Si alguien tiene una idea mejor estoy abierto a -# opiniones :) -#: grub-core/commands/nativedisk.c:326 -msgid "" -"Switch to native disk drivers. If no modules are specified default set (pata," -"ahci,usbms,ohci,uhci,ehci) is used" -msgstr "" -"Utiliza los controladores de disco nativos. Si no se especifíca ningún " -"módulo se utilizará el conjunto por defecto (pata, ahci, usbms, ohci, ehci)" - -#: grub-core/commands/parttool.c:40 -msgid "" -"Perform COMMANDS on partition.\n" -"Use `parttool PARTITION help' for the list of available commands." -msgstr "" -"Realiza las ÓRDENES en la partición.\n" -"Use «parttool PARTICIÓN help»' para obtener una lista de las órdenes " -"disponibles." - -#: grub-core/commands/parttool.c:123 -msgid "=VAL" -msgstr "=VALOR" - -#: grub-core/commands/parttool.c:136 -#, c-format -msgid "Sorry, no parttool is available for %s\n" -msgstr "Lo siento, no hay ningún \"parttool\" disponible para %s\n" - -#: grub-core/commands/parttool.c:288 grub-core/lib/arg.c:285 -#: grub-core/lib/arg.c:351 -#, c-format -msgid "unknown argument `%s'" -msgstr "parámetro «%s» desconocido" - -#: grub-core/commands/parttool.c:344 -msgid "PARTITION COMMANDS" -msgstr "PARTICIÓN ÓRDENES" - -#: grub-core/commands/password.c:85 -msgid "USER PASSWORD" -msgstr "USUARIO CONTRASEÑA" - -#: grub-core/commands/password.c:86 -msgid "Set user password (plaintext). Unrecommended and insecure." -msgstr "" -"Cambia la contraseña del usuario (texto plano). No recomendado e inseguro." - -#. TRANSLATORS: it means that the string which -#. was supposed to be a password hash doesn't -#. have a correct format, not to password -#. mismatch. -#: grub-core/commands/password_pbkdf2.c:98 -#: grub-core/commands/password_pbkdf2.c:115 -#: grub-core/commands/password_pbkdf2.c:123 -#: grub-core/commands/password_pbkdf2.c:150 -#: grub-core/commands/password_pbkdf2.c:179 -msgid "invalid PBKDF2 password" -msgstr "contraseña PBKDF2 no válida" - -#: grub-core/commands/password_pbkdf2.c:202 -msgid "USER PBKDF2_PASSWORD" -msgstr "USUARIO CONTRASEÑA_PBKDF2" - -#: grub-core/commands/password_pbkdf2.c:203 -msgid "Set user password (PBKDF2). " -msgstr "Cambia la contraseña del usuario (PBKDF2)." - -#: grub-core/commands/pcidump.c:39 grub-core/commands/setpci.c:69 -msgid "Select device by vendor and device IDs." -msgstr "Selecciona un dispositivo por ID de fabricante y dispositivo." - -#: grub-core/commands/pcidump.c:40 grub-core/commands/setpci.c:70 -msgid "[vendor]:[device]" -msgstr "[fabricante]:[dispositivo]" - -#: grub-core/commands/pcidump.c:41 grub-core/commands/setpci.c:71 -msgid "Select device by its position on the bus." -msgstr "Selecciona un dispositivo por su posición en el bus." - -#: grub-core/commands/pcidump.c:42 grub-core/commands/setpci.c:72 -msgid "[bus]:[slot][.func]" -msgstr "[bus]:[zócalo][.func]" - -#: grub-core/commands/pcidump.c:109 grub-core/commands/pcidump.c:138 -#: grub-core/commands/setpci.c:183 grub-core/commands/setpci.c:214 -#: grub-core/fs/zfs/zfs.c:3794 grub-core/kern/emu/hostdisk.c:458 -#: grub-core/kern/emu/hostdisk.c:473 grub-core/kern/file.c:44 -#, c-format -msgid "missing `%c' symbol" -msgstr "Falta el símbolo «%c»" - -#: grub-core/commands/pcidump.c:168 -msgid "[-s POSITION] [-d DEVICE]" -msgstr "[-s POSICIÓN] [-d DISPOSITIVO]" - -#: grub-core/commands/pcidump.c:169 -msgid "Show raw dump of the PCI configuration space." -msgstr "Muestra el volcado en crudo del espacio de configuración PCI." - -#: grub-core/commands/pgp.c:45 -msgid "Skip signature-checking of the public key file." -msgstr "Ignora la comprobación de firma del fichero de clave pública." - -# Miguel: (TODO: Unificar con traducción de gnupg) -#. TRANSLATORS: it's about GNUPG signatures. -#: grub-core/commands/pgp.c:71 grub-core/commands/pgp.c:81 -#: grub-core/commands/pgp.c:86 grub-core/commands/pgp.c:96 -#: grub-core/commands/pgp.c:103 grub-core/commands/pgp.c:107 -#: grub-core/commands/pgp.c:114 grub-core/commands/pgp.c:119 -#: grub-core/commands/pgp.c:124 grub-core/commands/pgp.c:128 -#: grub-core/commands/pgp.c:268 grub-core/commands/pgp.c:276 -#: grub-core/commands/pgp.c:281 grub-core/commands/pgp.c:289 -#: grub-core/commands/pgp.c:320 grub-core/commands/pgp.c:327 -#: grub-core/commands/pgp.c:332 grub-core/commands/pgp.c:342 -#: grub-core/commands/pgp.c:468 grub-core/commands/pgp.c:471 -#: grub-core/commands/pgp.c:474 grub-core/commands/pgp.c:477 -#: grub-core/commands/pgp.c:484 grub-core/commands/pgp.c:490 -#: grub-core/commands/pgp.c:665 -msgid "bad signature" -msgstr "firma incorrecta" - -#. TRANSLATORS: %08x is 32-bit key id. -#: grub-core/commands/pgp.c:636 grub-core/commands/pgp.c:812 -#, c-format -msgid "public key %08x not found" -msgstr "no se encontró la clave pública %08x" - -#: grub-core/commands/pgp.c:651 grub-core/disk/diskfilter.c:772 -#: grub-core/disk/diskfilter.c:782 grub-core/fs/ntfs.c:404 -#: grub-core/fs/zfs/zfs.c:1933 grub-core/normal/menu.c:428 -#, c-format -msgid "module `%s' isn't loaded" -msgstr "el módulo «%s» no está cargado" - -#: grub-core/commands/pgp.c:994 -msgid "[-s|--skip-sig] FILE SIGNATURE_FILE [PUBKEY_FILE]" -msgstr "[-s|--skip-sig] FICHERO FICHERO_DE_FIRMA [CLAVE_PÚBLICA]" - -#: grub-core/commands/pgp.c:995 -msgid "Verify detached signature." -msgstr "Verifica la firma extraida." - -#: grub-core/commands/pgp.c:998 -msgid "[-s|--skip-sig] PUBKEY_FILE" -msgstr "[-s|--skip-sig] CLAVE_PÚBLICA" - -#: grub-core/commands/pgp.c:999 -msgid "Add PUBKEY_FILE to trusted keys." -msgstr "Añade CLAVE_PÚBLICA a las claves de confianza." - -#: grub-core/commands/pgp.c:1003 -msgid "Show the list of trusted keys." -msgstr "Muestra las claves de confianza." - -#: grub-core/commands/pgp.c:1005 -msgid "PUBKEY_ID" -msgstr "ID_CLAVE" - -#: grub-core/commands/pgp.c:1006 -msgid "Remove PUBKEY_ID from trusted keys." -msgstr "Elimina ID_CLAVE de las claves de confianza." - -#: grub-core/commands/probe.c:40 grub-core/commands/tr.c:32 -msgid "Set a variable to return value." -msgstr "Cambia una variable al valor devuelto." - -#. TRANSLATORS: It's a driver that is currently in use to access -#. the diven disk. -#: grub-core/commands/probe.c:43 -msgid "Determine driver." -msgstr "Determina el controlador." - -#: grub-core/commands/probe.c:44 -msgid "Determine partition map type." -msgstr "Determina el tipo de mapa de particiones." - -#: grub-core/commands/probe.c:45 -msgid "Determine filesystem type." -msgstr "Determina el tipo del sistema de ficheros." - -#: grub-core/commands/probe.c:46 -msgid "Determine filesystem UUID." -msgstr "Determina el UUID del sistema de ficheros." - -#: grub-core/commands/probe.c:47 -msgid "Determine filesystem label." -msgstr "Determina la etiqueta del sistema de ficheros." - -#: grub-core/commands/probe.c:139 grub-core/commands/probe.c:146 -#: util/grub-probe.c:462 -#, c-format -msgid "filesystem `%s' does not support labels" -msgstr "el sistema de ficheros «%s» no soporta las etiquetas" - -#: grub-core/commands/probe.c:165 grub-core/fs/zfs/zfsinfo.c:430 -#: grub-core/loader/i386/bsd.c:169 util/grub-setup.c:223 -msgid "DEVICE" -msgstr "DISPOSITIVO" - -#: grub-core/commands/probe.c:166 -msgid "Retrieve device info." -msgstr "Obtiene información del dispositivo." - -#: grub-core/commands/read.c:85 -msgid "[ENVVAR]" -msgstr "[VARIABLE_DE_ENTORNO]" - -#: grub-core/commands/read.c:86 -msgid "Set variable with user input." -msgstr "Cambia la variable a partir de la entrada del usuario." - -#: grub-core/commands/reboot.c:40 -msgid "Reboot the computer." -msgstr "Reinicia el ordenador." - -#. TRANSLATORS: in regexp you can mark some -#. groups with parentheses. These groups are -#. then numbered and you can save some of -#. them in variables. In other programs -#. those components aree often referenced with -#. back slash, e.g. \1. Compare -#. sed -e 's,\([a-z][a-z]*\),lowercase=\1,g' -#. The whole matching component is saved in VARNAME, not its number. -#. -#: grub-core/commands/regexp.c:44 -msgid "Store matched component NUMBER in VARNAME." -msgstr "Almacena la componente correspondiente NÚMERO en VARIABLE." - -#: grub-core/commands/regexp.c:45 -msgid "[NUMBER:]VARNAME" -msgstr "[NÚMERO:]VARIABLE" - -#. TRANSLATORS: This are two arguments. So it's -#. two separate units to translate and pay -#. attention not to reverse them. -#: grub-core/commands/regexp.c:157 -msgid "REGEXP STRING" -msgstr "EXPR_REGULAR CADENA" - -# Miguel: Los autómatas finitos aceptan cadenas, ¿hay alguna forma -# menos técnica de decirlo? -#: grub-core/commands/regexp.c:158 -msgid "Test if REGEXP matches STRING." -msgstr "Comprueba si la EXPR_REGULAR acepta la CADENA." - -#: grub-core/commands/search.c:324 -msgid "NAME [VARIABLE] [HINTS]" -msgstr "NOMBRE [VARIABLE] [INDICACIONES]" - -#: grub-core/commands/search_file.c:4 -msgid "" -"Search devices by file. If VARIABLE is specified, the first device found is " -"set to a variable." -msgstr "" -"Busca dispositivos por fichero. Si se especifica VARIABLE, se cambiará al " -"primer dispositivo encontrado." - -#: grub-core/commands/search_label.c:4 -msgid "" -"Search devices by label. If VARIABLE is specified, the first device found is " -"set to a variable." -msgstr "" -"Busca dispositivos por etiqueta. Si se especifica VARIABLE, se cambiará al " -"primer dispositivo encontrado." - -#: grub-core/commands/search_uuid.c:4 -msgid "" -"Search devices by UUID. If VARIABLE is specified, the first device found is " -"set to a variable." -msgstr "" -"Busca dispositivos por UUID. Si se especifica VARIABLE, se cambiará al " -"primer dispositivo encontrado." - -#: grub-core/commands/search_wrap.c:34 -msgid "Search devices by a file." -msgstr "Busca dispositivos por fichero." - -#: grub-core/commands/search_wrap.c:35 -msgid "Search devices by a filesystem label." -msgstr "Busca dispositivos por la etiqueta del sistema de ficheros." - -#: grub-core/commands/search_wrap.c:37 -msgid "Search devices by a filesystem UUID." -msgstr "Busca dispositivos por el UUID del sistema de ficheros." - -#: grub-core/commands/search_wrap.c:40 -msgid "Set a variable to the first device found." -msgstr "Cambia una variable al primer dispositivo encontrado." - -#: grub-core/commands/search_wrap.c:42 -msgid "Do not probe any floppy drive." -msgstr "No prueba ninguna unidad de discos extraíbles." - -#: grub-core/commands/search_wrap.c:44 -msgid "" -"First try the device HINT. If HINT ends in comma, also try subpartitions" -msgstr "" -"Prueba primero el dispositivo INDICACIÓN. Si INDICACIÓN termina en una coma, " -"prueba también subparticiones" - -#: grub-core/commands/search_wrap.c:45 grub-core/commands/search_wrap.c:49 -#: grub-core/commands/search_wrap.c:53 grub-core/commands/search_wrap.c:57 -#: grub-core/commands/search_wrap.c:61 grub-core/commands/search_wrap.c:65 -msgid "HINT" -msgstr "INDICACIÓN" - -#: grub-core/commands/search_wrap.c:47 -msgid "" -"First try the device HINT if currently running on IEEE1275. If HINT ends in " -"comma, also try subpartitions" -msgstr "" -"Prueba primero el dispositivo INDICACIÓN si se está corriendo sobre " -"IEEE1275. Si INDICACIÓN termina en una coma, prueba también subparticiones" - -#: grub-core/commands/search_wrap.c:51 -msgid "" -"First try the device HINT if currently running on BIOS. If HINT ends in " -"comma, also try subpartitions" -msgstr "" -"Prueba primero el dispositivo INDICACIÓN si se está corriendo sobre BIOS. Si " -"INDICACIÓN termina en una coma, prueba también subparticiones" - -#: grub-core/commands/search_wrap.c:55 -msgid "" -"First try the device HINT if direct hardware access is supported. If HINT " -"ends in comma, also try subpartitions" -msgstr "" -"Prueba primero el dispositivo INDICACIÓN si está permitido el acceso directo " -"al hadware. Si INDICACIÓN termina en una coma, prueba también subparticiones" - -#: grub-core/commands/search_wrap.c:59 -msgid "" -"First try the device HINT if currently running on EFI. If HINT ends in " -"comma, also try subpartitions" -msgstr "" -"Prueba primero el dispositivo INDICACIÓN si se está corriendo sobre EFI. Si " -"INDICACIÓN termina en una coma, prueba también subparticiones" - -#: grub-core/commands/search_wrap.c:63 -msgid "" -"First try the device HINT if currently running on ARC. If HINT ends in " -"comma, also try subpartitions" -msgstr "" -"Prueba primero el dispositivo INDICACIÓN si se está corriendo sobre ARC. Si " -"INDICACIÓN termina en una coma, prueba también subparticiones" - -#: grub-core/commands/search_wrap.c:207 -msgid "[-f|-l|-u|-s|-n] [--hint HINT [--hint HINT] ...] NAME" -msgstr "[-f|-l|-u|-s|-n] [--hint INDICACIÓN [--hint INDICACIÓN] ...] NOMBRE" - -#: grub-core/commands/search_wrap.c:209 -msgid "" -"Search devices by file, filesystem label or filesystem UUID. If --set is " -"specified, the first device found is set to a variable. If no variable name " -"is specified, `root' is used." -msgstr "" -"Busca dispositivos por fichero, la etiqueta del sistema de ficheros o el " -"UUID. En caso de especificar --set, el primer dispositivo encontrado se " -"almacena en una variable. Si no se especifica un nombre de variable se usará " -"«root»." - -#: grub-core/commands/setpci.c:132 -#, c-format -msgid "Register %x of %x:%02x.%x is %x\n" -msgstr "Registro %x de %x:%02x.%x es %x\n" - -#: grub-core/commands/setpci.c:333 -msgid "[-s POSITION] [-d DEVICE] [-v VAR] REGISTER[=VALUE[:MASK]]" -msgstr "" -"[-s POSICIÓN] [-d DISPOSITIVO] [-v VARIABLE] REGISTRO[=VALOR[:MÃSCARA]]" - -#: grub-core/commands/setpci.c:335 -msgid "Manipulate PCI devices." -msgstr "Manipula dispositivos PCI." - -#: grub-core/commands/sleep.c:32 -msgid "Verbose countdown." -msgstr "Cuenta atrás prolija." - -#: grub-core/commands/sleep.c:33 -msgid "Allow to interrupt with ESC." -msgstr "Permite la interrupción con ESC." - -#: grub-core/commands/sleep.c:109 -msgid "NUMBER_OF_SECONDS" -msgstr "NÚMERO_DE_SEGUNDOS" - -#: grub-core/commands/sleep.c:110 -msgid "Wait for a specified number of seconds." -msgstr "Espera el número de segundos especificado." - -#: grub-core/commands/syslinuxcfg.c:50 util/grub-syslinux2cfg.c:66 -msgid "root directory of the syslinux disk [default=/]." -msgstr "directorio raiz del disco syslinux [predeterminado=/]." - -#: grub-core/commands/syslinuxcfg.c:53 util/grub-syslinux2cfg.c:72 -msgid "" -"current directory of syslinux [default is parent directory of input file]." -msgstr "" -"directorio actual de syslinux [por defecto el directorio superior al fichero " -"de entrada]." - -#: grub-core/commands/syslinuxcfg.c:55 util/grub-syslinux2cfg.c:75 -msgid "assume input is an isolinux configuration file." -msgstr "considera la entrada como un fichero de configuración isolinux." - -#: grub-core/commands/syslinuxcfg.c:56 util/grub-syslinux2cfg.c:76 -msgid "assume input is a pxelinux configuration file." -msgstr "considera la entrada como un fichero de configuración pxelinux." - -#: grub-core/commands/syslinuxcfg.c:57 util/grub-syslinux2cfg.c:77 -msgid "assume input is a syslinux configuration file." -msgstr "considera la entrada como un fichero de configuración syslinux." - -# Miguel: He preferido clarificar legacy con GRUB1, porque -# puede que en el futuro GRUB2 sea también obsoleto aunque no -# se llame GRUB-legacy. -#. TRANSLATORS: "syslinux config" means -#. "config as used by syslinux". -#: grub-core/commands/syslinuxcfg.c:189 -msgid "Execute syslinux config in same context" -msgstr "Ejecuta la configuración de syslinux en el mismo contexto" - -#: grub-core/commands/syslinuxcfg.c:195 -msgid "Execute syslinux config in new context" -msgstr "Procesa la configuración de syslinux en un nuevo contexto" - -#: grub-core/commands/syslinuxcfg.c:201 -msgid "Execute syslinux config in same context taking only menu entries" -msgstr "" -"Procesa la configuración de syslinux en el mismo contexto tomando únicamente " -"las entradas del menú" - -#: grub-core/commands/syslinuxcfg.c:207 -msgid "Execute syslinux config in new context taking only menu entries" -msgstr "" -"Procesa la configuración de syslinux en un nuevo contexto tomando únicamente " -"las entradas del menú" - -#: grub-core/commands/terminal.c:90 -msgid "no terminal specified" -msgstr "no se ha especificado terminal" - -#: grub-core/commands/terminal.c:112 grub-core/commands/terminal.c:139 -#, c-format -msgid "terminal `%s' isn't found" -msgstr "no se encuentra el terminal «%s»" - -#: grub-core/commands/terminal.c:244 -msgid "Active input terminals:" -msgstr "Terminales de entrada activos:" - -#: grub-core/commands/terminal.c:245 -msgid "Available input terminals:" -msgstr "Terminales de entrada disponibles:" - -#: grub-core/commands/terminal.c:261 -msgid "Active output terminals:" -msgstr "Terminales de salida activos:" - -#: grub-core/commands/terminal.c:262 -msgid "Available output terminals:" -msgstr "Terminales de salida disponibles:" - -#: grub-core/commands/terminal.c:271 grub-core/commands/terminal.c:276 -msgid "[--append|--remove] [TERMINAL1] [TERMINAL2] ..." -msgstr "[--append|--remove] [TERMINAL1] [TERMINAL2] ..." - -#: grub-core/commands/terminal.c:273 -msgid "List or select an input terminal." -msgstr "Selecciona un terminal de entrada o los enumera." - -#: grub-core/commands/terminal.c:278 -msgid "List or select an output terminal." -msgstr "Selecciona un terminal de salida o los enumera." - -#: grub-core/commands/test.c:444 -msgid "EXPRESSION ]" -msgstr "EXPRESIÓN ]" - -#: grub-core/commands/test.c:444 grub-core/commands/test.c:447 -msgid "Evaluate an expression." -msgstr "Evalúa una expresión." - -#: grub-core/commands/test.c:447 -msgid "EXPRESSION" -msgstr "EXPRESIÓN" - -#: grub-core/commands/testload.c:164 -msgid "Load the same file in multiple ways." -msgstr "Carga el mismo fichero de múltiples formas." - -#: grub-core/commands/testspeed.c:35 -msgid "Specify size for each read operation" -msgstr "Especifica el tamaño para cada operación de lectura" - -#: grub-core/commands/testspeed.c:58 -msgid "invalid block size" -msgstr "tamaño de bloque no válido" - -#: grub-core/commands/testspeed.c:80 -#, c-format -msgid "File size: %s\n" -msgstr "Tamaño del fichero: %s\n" - -#: grub-core/commands/testspeed.c:83 -#, c-format -msgid "Elapsed time: %d.%03d s \n" -msgstr "Tiempo transcurrido: %d.%03d s \n" - -#: grub-core/commands/testspeed.c:92 -#, c-format -msgid "Speed: %s \n" -msgstr "Velocidad: %s \n" - -#: grub-core/commands/testspeed.c:107 -msgid "[-s SIZE] FILENAME" -msgstr "[-s TAMAÑO] FICHERO" - -#: grub-core/commands/testspeed.c:108 -msgid "Test file read speed." -msgstr "Prueba la velocidad de lectura de fichero." - -#: grub-core/commands/time.c:38 grub-core/script/execute.c:974 -msgid "no command is specified" -msgstr "no se ha especificado una orden" - -#: grub-core/commands/time.c:50 -#, c-format -msgid "Elapsed time: %d.%03d seconds \n" -msgstr "Tiempo transcurrido: %d.%03d segundos\n" - -#: grub-core/commands/time.c:61 -msgid "COMMAND [ARGS]" -msgstr "ORDEN [PARÃMETROS]" - -#: grub-core/commands/time.c:62 -msgid "Measure time used by COMMAND" -msgstr "Mide el tiempo usado por la ORDEN" - -#: grub-core/commands/tr.c:33 -msgid "Translate to upper case." -msgstr "Transcribe a mayúsculas." - -#: grub-core/commands/tr.c:34 -msgid "Translate to lower case." -msgstr "Transcribe a minúsculas." - -#: grub-core/commands/tr.c:119 -msgid "[OPTIONS] [SET1] [SET2] [STRING]" -msgstr "[OPCIONES] [CONJUNTO1] [CONJUNTO2] [CADENA]" - -#: grub-core/commands/tr.c:120 -msgid "Translate SET1 characters to SET2 in STRING." -msgstr "" -"Transcribe los caracteres del CONJUNTO1 a los del CONJUNTO2 en la CADENA." - -#. TRANSLATORS: it's a command description. -#: grub-core/commands/true.c:50 -msgid "Do nothing, successfully." -msgstr "No hace nada, con respuesta satisfactoria." - -#. TRANSLATORS: it's a command description. -#: grub-core/commands/true.c:54 -msgid "Do nothing, unsuccessfully." -msgstr "No hace nada, sin respuesta satisfactoria." - -#: grub-core/commands/usbtest.c:221 -msgid "Test USB support." -msgstr "Comprueba el soporte USB." - -# TODO (MAAV): Repensar -#: grub-core/commands/verifiers.c:120 -#, c-format -msgid "verification requested but nobody cares: %s" -msgstr "verificación solicitada pero a nadie le importa: %s" - -# TODO (MAAV): Repensar -#: grub-core/commands/verifiers.c:140 -msgid "big file signature isn't implemented yet" -msgstr "la firma de ficheros grandes no está implementada todavía" - -#: grub-core/commands/videoinfo.c:61 -msgid "Text-only " -msgstr "Solo texto " - -#. TRANSLATORS: "Direct color" is a mode when the color components -#. are written dirrectly into memory. -#: grub-core/commands/videoinfo.c:66 -#, c-format -msgid "Direct color, mask: %d/%d/%d/%d pos: %d/%d/%d/%d" -msgstr "Color en memoria, máscara: %d/%d/%d/%d posición: %d/%d/%d/%d" - -#. TRANSLATORS: In "paletted color" mode you write the index of the color -#. in the palette. Synonyms include "packed pixel". -#: grub-core/commands/videoinfo.c:78 -msgid "Paletted " -msgstr "Indexado " - -#: grub-core/commands/videoinfo.c:80 -msgid "YUV " -msgstr "YUV " - -#. TRANSLATORS: "Planar" is the video memory where you have to write -#. in several different banks "plans" to control the different color -#. components of the same pixel. -#: grub-core/commands/videoinfo.c:85 -msgid "Planar " -msgstr "Planar" - -#: grub-core/commands/videoinfo.c:87 -msgid "Hercules " -msgstr "Hercules " - -#: grub-core/commands/videoinfo.c:89 -msgid "CGA " -msgstr "CGA " - -#. TRANSLATORS: Non-chain 4 is a 256-color planar -#. (unchained) video memory mode. -#: grub-core/commands/videoinfo.c:93 -msgid "Non-chain 4 " -msgstr "Non-chain 4 (modo no encadenado de 256 colores) " - -#: grub-core/commands/videoinfo.c:95 -msgid "Monochrome " -msgstr "Monocromo " - -#: grub-core/commands/videoinfo.c:97 -msgid "Unknown video mode " -msgstr "Modo de vídeo desconocido " - -#: grub-core/commands/videoinfo.c:111 -msgid " EDID checksum invalid" -msgstr " comprobación de suma EDID no válida" - -#: grub-core/commands/videoinfo.c:116 -#, c-format -msgid " EDID version: %u.%u\n" -msgstr " versión EDID: %u.%u\n" - -#: grub-core/commands/videoinfo.c:120 -#, c-format -msgid " Preferred mode: %ux%u\n" -msgstr " Modo preferido: %ux%u\n" - -#: grub-core/commands/videoinfo.c:123 -msgid " No preferred mode available\n" -msgstr " No hay un modo preferido disponible\n" - -#: grub-core/commands/videoinfo.c:146 grub-core/video/video.c:490 -#: grub-core/video/video.c:498 grub-core/video/video.c:509 -#: grub-core/video/video.c:520 grub-core/video/video.c:528 -#, c-format -msgid "invalid video mode specification `%s'" -msgstr "especificación de modo de vídeo «%s» no válida" - -#: grub-core/commands/videoinfo.c:168 -msgid "List of supported video modes:" -msgstr "Lista de modos de vídeo admitidos:" - -#: grub-core/commands/videoinfo.c:169 -msgid "Legend: mask/position=red/green/blue/reserved" -msgstr "Leyenda: máscara/posición=rojo/verde/azul/reservado" - -#: grub-core/commands/videoinfo.c:176 -#, c-format -msgid "Adapter `%s':\n" -msgstr "Adaptador «%s»:\n" - -#: grub-core/commands/videoinfo.c:180 -msgid " No info available" -msgstr " No hay información disponible" - -#: grub-core/commands/videoinfo.c:198 -msgid " Failed to initialize video adapter" -msgstr " No se pudo inicializar el adaptador de vídeo" - -#. TRANSLATORS: "x" has to be entered in, -#. like an identifier, so please don't -#. use better Unicode codepoints. -#: grub-core/commands/videoinfo.c:239 grub-core/commands/videoinfo.c:248 -msgid "[WxH[xD]]" -msgstr "[ANCHOxALTO[xPROFUNDO]]" - -#: grub-core/commands/videoinfo.c:240 grub-core/commands/videoinfo.c:249 -msgid "" -"List available video modes. If resolution is given show only modes matching " -"it." -msgstr "" -"Enumera los modos de vídeo disponibles. Si se proporciona una resolución " -"muestra únicamente los modos que se adecuen a ella." - -#. TRANSLATORS: "x" has to be entered in, -#. like an identifier, so please don't -#. use better Unicode codepoints. -#: grub-core/commands/videotest.c:225 -msgid "[WxH]" -msgstr "[ANCHOxALTO]" - -#. TRANSLATORS: Here, on the other hand, it's -#. nicer to use unicode cross instead of x. -#: grub-core/commands/videotest.c:228 -msgid "Test video subsystem in mode WxH." -msgstr "Prueba el subsistema de vídeo con modo ANCHOxALTO" - -#: grub-core/commands/videotest.c:231 -msgid "Test video subsystem." -msgstr "Prueba el subsistema de vídeo." - -#: grub-core/commands/xen/lsxen.c:80 grub-core/commands/xen/lsxen.c:82 -msgid "[DIR]" -msgstr "[DIRECTORIO]" - -#: grub-core/commands/xen/lsxen.c:81 grub-core/commands/xen/lsxen.c:83 -msgid "List Xen storage." -msgstr "Enumera el almacenamiento de Xen." - -#. TRANSLATORS: GRUBUUID stands for "filesystem -#. UUID as used in GRUB". -#: grub-core/commands/xnu_uuid.c:110 -msgid "[-l] GRUBUUID [VARNAME]" -msgstr "[-l] UUID_DE_GRUB [VARIABLE]" - -#: grub-core/commands/xnu_uuid.c:111 -msgid "" -"Transform 64-bit UUID to format suitable for XNU. If -l is given keep it " -"lowercase as done by blkid." -msgstr "" -"Transforma el UUID de 64 bits a un formato adecuado para XNU. Será en " -"minúsculas si se proporciona -l como hace blkid." - -#: grub-core/disk/arc/arcdisk.c:248 grub-core/disk/efi/efidisk.c:603 -#: grub-core/disk/i386/pc/biosdisk.c:498 grub-core/disk/i386/pc/biosdisk.c:543 -#: grub-core/disk/ieee1275/nand.c:198 grub-core/disk/ieee1275/obdisk.c:527 -#: grub-core/disk/ieee1275/ofdisk.c:586 -#, c-format -msgid "failure reading sector 0x%llx from `%s'" -msgstr "fallo leyendo sector 0x%llx de «%s»" - -#: grub-core/disk/arc/arcdisk.c:284 grub-core/disk/efi/efidisk.c:626 -#: grub-core/disk/i386/pc/biosdisk.c:548 grub-core/disk/ieee1275/ofdisk.c:606 -#, c-format -msgid "failure writing sector 0x%llx to `%s'" -msgstr "fallo escribiendo sector 0x%llx en «%s»" - -#: grub-core/disk/cryptodisk.c:40 -msgid "Mount by UUID." -msgstr "Monta por UUID." - -#. TRANSLATORS: It's still restricted to cryptodisks only. -#: grub-core/disk/cryptodisk.c:42 -msgid "Mount all." -msgstr "Monta todos." - -#: grub-core/disk/cryptodisk.c:43 -msgid "Mount all volumes with `boot' flag set." -msgstr "Monta todos los volúmenes con la etiqueta «boot» activada." - -#. TRANSLATORS: The first %s is the file being looked at, the second %s is -#. the error message. -#: grub-core/disk/cryptodisk.c:526 grub-core/kern/emu/hostdisk.c:152 -#: grub-core/kern/emu/hostdisk.c:262 grub-core/kern/emu/hostdisk.c:434 -#: grub-core/kern/emu/misc.c:168 grub-core/kern/emu/misc.c:174 -#: grub-core/kern/emu/misc.c:196 grub-core/osdep/bsd/getroot.c:92 -#: grub-core/osdep/bsd/getroot.c:168 grub-core/osdep/hurd/getroot.c:68 -#: grub-core/osdep/linux/blocklist.c:65 grub-core/osdep/linux/getroot.c:150 -#: grub-core/osdep/linux/hostdisk.c:194 grub-core/osdep/linux/hostdisk.c:421 -#: grub-core/osdep/linux/ofpath.c:417 grub-core/osdep/linux/ofpath.c:422 -#: grub-core/osdep/linux/ofpath.c:517 grub-core/osdep/linux/ofpath.c:530 -#: grub-core/osdep/sun/getroot.c:110 grub-core/osdep/windows/blocklist.c:98 -#: grub-core/tests/video_checksum.c:279 util/editenv.c:46 util/glue-efi.c:115 -#: util/glue-efi.c:120 util/glue-efi.c:130 util/grub-editenv.c:138 -#: util/grub-editenv.c:192 util/grub-file.c:83 util/grub-fstest.c:128 -#: util/grub-fstest.c:568 util/grub-install-common.c:92 -#: util/grub-install-common.c:94 util/grub-install-common.c:101 -#: util/grub-install-common.c:529 util/grub-menulst2cfg.c:53 -#: util/grub-menulst2cfg.c:68 util/grub-mkimage.c:292 util/grub-mklayout.c:504 -#: util/grub-mklayout.c:516 util/grub-mknetdir.c:133 util/grub-mknetdir.c:151 -#: util/grub-mkrescue.c:627 util/grub-mkrescue.c:631 util/grub-mkrescue.c:879 -#: util/grub-mkrescue.c:883 util/grub-mkstandalone.c:253 util/grub-mount.c:498 -#: util/grub-render-label.c:169 util/grub-script-check.c:175 -#: util/grub-syslinux2cfg.c:181 util/grub-syslinux2cfg.c:191 -#: util/grub-syslinux2cfg.c:212 util/grub-syslinux2cfg.c:228 util/misc.c:91 -#: util/render-label.c:76 util/render-label.c:163 util/render-label.c:174 -#: util/resolve.c:246 util/setup.c:783 -#, c-format -msgid "cannot open `%s': %s" -msgstr "no se puede abrir «%s»: %s" - -#: grub-core/disk/cryptodisk.c:583 grub-core/disk/cryptodisk.c:628 -#: grub-core/kern/emu/hostdisk.c:270 grub-core/kern/emu/hostfs.c:142 -#: grub-core/osdep/linux/hostdisk.c:456 util/grub-editenv.c:143 -#: util/grub-editenv.c:149 util/grub-fstest.c:320 util/misc.c:111 -#, c-format -msgid "cannot seek `%s': %s" -msgstr "no se puede buscar «%s»: %s" - -#: grub-core/disk/cryptodisk.c:1144 -msgid "SOURCE|-u UUID|-a|-b" -msgstr "FUENTE|-u UUID|-a|-b" - -#: grub-core/disk/cryptodisk.c:1145 -msgid "Mount a crypto device." -msgstr "Monta un dispositivo cifrado." - -#. TRANSLATORS: This message kicks in during the detection of -#. which modules needs to be included in core image. This happens -#. in the case of degraded RAID and means that autodetection may -#. fail to include some of modules. It's an installation time -#. message, not runtime message. -#: grub-core/disk/diskfilter.c:343 grub-core/disk/diskfilter.c:376 -#, c-format -msgid "" -"Couldn't find physical volume `%s'. Some modules may be missing from core " -"image." -msgstr "" -"No se pudo encontrar el volumen físico «%s». Algunos módulos pueden faltar " -"en la imagen principal." - -#: grub-core/disk/diskfilter.c:480 -#, c-format -msgid "physical volume %s not found" -msgstr "no se encontró el volumen físico %s" - -#: grub-core/disk/efi/efidisk.c:600 grub-core/disk/efi/efidisk.c:623 -#, c-format -msgid "no media in `%s'" -msgstr "no hay medio en «%s»" - -#: grub-core/disk/geli.c:75 -msgid "Couldn't load sha256" -msgstr "No se pudo cargar sha256" - -#: grub-core/disk/geli.c:85 -msgid "Couldn't load sha512" -msgstr "No se pudo cargar sha512" - -#: grub-core/disk/geli.c:216 grub-core/disk/geli.c:220 -msgid "couldn't read ELI metadata" -msgstr "no se pudieron leer los metadatos ELI" - -#: grub-core/disk/geli.c:231 -msgid "wrong ELI magic or version" -msgstr "versión o número mágico ELI erroneos" - -#: grub-core/disk/geli.c:435 grub-core/disk/luks.c:329 -msgid "Attempting to decrypt master key..." -msgstr "Intentando descifrar la clave principal..." - -#: grub-core/disk/geli.c:441 grub-core/disk/luks.c:347 -#, c-format -msgid "Enter passphrase for %s%s%s (%s): " -msgstr "Introduzca la clave para %s%s%s (%s): " - -#. TRANSLATORS: It's a cryptographic key slot: one element of an array -#. where each element is either empty or holds a key. -#: grub-core/disk/geli.c:530 grub-core/disk/luks.c:451 -#, c-format -msgid "Slot %d opened\n" -msgstr "Abierto zócalo %d\n" - -#: grub-core/disk/i386/pc/biosdisk.c:470 grub-core/disk/i386/pc/biosdisk.c:524 -#: grub-core/disk/i386/pc/biosdisk.c:534 grub-core/kern/disk_common.c:47 -#, c-format -msgid "attempt to read or write outside of disk `%s'" -msgstr "intento de leer o escribir fuera del disco «%s»" - -#: grub-core/disk/i386/pc/biosdisk.c:491 grub-core/disk/i386/pc/biosdisk.c:611 -#: grub-core/disk/scsi.c:726 -msgid "cannot write to CD-ROM" -msgstr "no se puede escribir en el CD-ROM" - -#: grub-core/disk/i386/pc/biosdisk.c:662 -msgid "" -"Native disk drivers are in use. Refusing to use firmware disk interface." -msgstr "" -"Los controladores de disco nativos están en uso. Rechazando usar la interfaz " -"de disco del firmware." - -#. TRANSLATORS: it's a partition for embedding, -#. not a partition embed into something. GRUB -#. install tools put core.img into a place -#. usable for bootloaders (called generically -#. "embedding zone") and this operation is -#. called "embedding". -#: grub-core/disk/ldm.c:1015 -msgid "your LDM Embedding Partition is too small; embedding won't be possible" -msgstr "" -"su Partición de Embebido de su LDM es demasiado pequeña; el embebido no será " -"posible" - -#. TRANSLATORS: it's a partition for embedding, -#. not a partition embed into something. -#: grub-core/disk/ldm.c:1033 -msgid "this LDM has no Embedding Partition; embedding won't be possible" -msgstr "este LDM no tiene Partición de Embebido; el embebido no será posible" - -#. TRANSLATORS: The disk is simply removed from the list of available ones, -#. not wiped, avoid to scare user. -#: grub-core/disk/loopback.c:45 -msgid "Delete the specified loopback drive." -msgstr "Borra la unidad de imagen en memoria especificada." - -#: grub-core/disk/loopback.c:237 -msgid "[-d] DEVICENAME FILE." -msgstr "[-d] NOMBRE_DE_DISPOSITIVO FICHERO." - -#. TRANSLATORS: The file itself is not destroyed -#. or transformed into drive. -#: grub-core/disk/loopback.c:240 -msgid "Make a virtual drive from a file." -msgstr "Crea una unidad virtual a partir de un fichero." - -#: grub-core/efiemu/i386/loadcore32.c:111 -#: grub-core/efiemu/i386/loadcore64.c:125 grub-core/kern/arm/dl.c:256 -#: grub-core/kern/arm64/dl.c:187 grub-core/kern/i386/dl.c:75 -#: grub-core/kern/ia64/dl.c:140 grub-core/kern/mips/dl.c:258 -#: grub-core/kern/powerpc/dl.c:163 grub-core/kern/riscv/dl.c:334 -#: grub-core/kern/sparc64/dl.c:180 grub-core/kern/x86_64/dl.c:110 -#: util/grub-mkimagexx.c:756 util/grub-mkimagexx.c:881 -#: util/grub-mkimagexx.c:945 util/grub-mkimagexx.c:1026 -#: util/grub-mkimagexx.c:1120 util/grub-mkimagexx.c:1222 -#: util/grub-mkimagexx.c:1413 util/grub-mkimagexx.c:1628 -#: util/grub-mkimagexx.c:1665 util/grub-mkimagexx.c:1697 -#: util/grub-mkimagexx.c:1767 util/grub-mkimagexx.c:1797 -#, c-format -msgid "relocation 0x%x is not implemented yet" -msgstr "la reubicación 0x%x no está implementada todavía" - -#: grub-core/efiemu/loadcore.c:200 grub-core/efiemu/loadcore.c:237 -#: grub-core/loader/i386/bsdXX.c:317 util/grub-mkimagexx.c:2360 -msgid "no symbol table" -msgstr "ninguna tabla de símbolos" - -#: grub-core/efiemu/loadcore.c:346 grub-core/kern/dl.c:609 -#: grub-core/loader/ia64/efi/linux.c:345 grub-core/loader/mips/linux.c:248 -#: grub-core/loader/multiboot_elfxx.c:76 -#: grub-core/loader/powerpc/ieee1275/linux.c:280 -#: grub-core/loader/sparc64/ieee1275/linux.c:320 -msgid "this ELF file is not of the right type" -msgstr "este fichero ELF no es del tipo adecuado" - -#: grub-core/efiemu/main.c:313 -msgid "Load and initialize EFI emulator." -msgstr "Carga e inicializa el emulador EFI." - -#: grub-core/efiemu/main.c:317 -msgid "Finalize loading of EFI emulator." -msgstr "Termina de cargar el emulador EFI." - -#: grub-core/efiemu/main.c:320 -msgid "Unload EFI emulator." -msgstr "Descarga el emulador EFI." - -#: grub-core/efiemu/symbols.c:92 grub-core/kern/dl.c:376 -#, c-format -msgid "symbol `%s' not found" -msgstr "no se ha encontrado el símbolo «%s»" - -#: grub-core/font/font_cmd.c:52 -msgid "Loaded fonts:" -msgstr "Fuentes cargadas:" - -#: grub-core/font/font_cmd.c:74 -msgid "FILE..." -msgstr "FICHERO..." - -#: grub-core/font/font_cmd.c:75 -msgid "Specify one or more font files to load." -msgstr "Especifique uno o más ficheros de fuentes a cargar." - -#: grub-core/font/font_cmd.c:78 -msgid "List the loaded fonts." -msgstr "Enumera las fuentes cargadas." - -#: grub-core/fs/archelp.c:216 grub-core/fs/archelp.c:278 -#: grub-core/fs/btrfs.c:1815 grub-core/fs/fshelp.c:227 grub-core/fs/jfs.c:736 -#: grub-core/fs/minix.c:369 grub-core/fs/ufs.c:454 -msgid "too deep nesting of symlinks" -msgstr "demasiada profundidad de enlaces simbólicos" - -#: grub-core/fs/bfs.c:228 grub-core/fs/fshelp.c:368 grub-core/fs/minix.c:270 -#: grub-core/kern/file.c:156 -msgid "attempt to read past the end of file" -msgstr "intento de leer más allá del fin del fichero" - -#: grub-core/fs/btrfs.c:1698 grub-core/fs/btrfs.c:1957 -#: grub-core/fs/fshelp.c:189 grub-core/fs/fshelp.c:309 grub-core/fs/jfs.c:431 -#: grub-core/fs/minix.c:414 grub-core/fs/minix.c:562 -#: grub-core/fs/reiserfs.c:732 grub-core/fs/ufs.c:531 grub-core/fs/ufs.c:671 -#: grub-core/fs/zfs/zfs.c:2831 grub-core/fs/zfs/zfs.c:4247 -msgid "not a directory" -msgstr "no es un directorio" - -#: grub-core/fs/btrfs.c:2063 grub-core/fs/fshelp.c:307 grub-core/fs/jfs.c:835 -#: grub-core/fs/zfs/zfs.c:3801 -msgid "not a regular file" -msgstr "no es un fichero normal" - -#: grub-core/fs/btrfs.c:2157 grub-core/fs/zfs/zfs.c:4333 -#: grub-core/partmap/msdos.c:400 -msgid "your core.img is unusually large. It won't fit in the embedding area" -msgstr "" -"su core.img es extraordinariamente grande. No entrará en el área de embebido" - -#: grub-core/fs/fshelp.c:281 grub-core/fs/minix.c:630 grub-core/fs/ufs.c:661 -#: grub-core/fs/ufs.c:757 grub-core/kern/fs.c:168 grub-core/kern/fs.c:180 -#, c-format -msgid "invalid file name `%s'" -msgstr "nombre de fichero «%s» no válido" - -#: grub-core/fs/zfs/zfs.c:453 -msgid "checksum verification failed" -msgstr "falló la verificación de la suma de comprobación" - -#: grub-core/fs/zfs/zfs.c:1465 -msgid "couldn't find a necessary member device of multi-device filesystem" -msgstr "" -"no se pudo encontrar el dispositivo miembro necesario de un sistema de " -"ficheros multidispositivo" - -#: grub-core/fs/zfs/zfscrypt.c:292 -msgid "no decryption key available" -msgstr "no hay ninguna clave de descifrado disponible" - -#: grub-core/fs/zfs/zfscrypt.c:304 -msgid "MAC verification failed" -msgstr "falló la verificación MAC" - -#: grub-core/fs/zfs/zfscrypt.c:413 -msgid "Assume input is raw." -msgstr "Asume que la entrada es raw." - -#: grub-core/fs/zfs/zfscrypt.c:414 -msgid "Assume input is hex." -msgstr "Asume que la entrada es hex." - -#: grub-core/fs/zfs/zfscrypt.c:415 -msgid "Assume input is passphrase." -msgstr "Asume que la entrada es una clave." - -#: grub-core/fs/zfs/zfscrypt.c:437 util/grub-fstest.c:553 util/grub-mount.c:483 -msgid "Enter ZFS password: " -msgstr "Introduzca la clave ZFS: " - -#: grub-core/fs/zfs/zfscrypt.c:476 -msgid "[-h|-p|-r] [FILE]" -msgstr "[-h|-p|-r] [FICHERO]" - -# Miguel: ¿Alguien que controle ZFS? -#: grub-core/fs/zfs/zfscrypt.c:477 -msgid "Import ZFS wrapping key stored in FILE." -msgstr "Importa una clave de cobertura ZFS almacenada en el FICHERO." - -#: grub-core/fs/zfs/zfsinfo.c:51 -msgid "Virtual device is removed" -msgstr "El dispositivo virtual se ha retirado" - -#: grub-core/fs/zfs/zfsinfo.c:57 -msgid "Virtual device is faulted" -msgstr "El dispositivo virtual ha fallado" - -#: grub-core/fs/zfs/zfsinfo.c:63 -msgid "Virtual device is offline" -msgstr "El dispositivo virtual está desconectado" - -#. TRANSLATORS: degraded doesn't mean broken but that some of -#. component are missing but virtual device as whole is still usable. -#: grub-core/fs/zfs/zfsinfo.c:70 -msgid "Virtual device is degraded" -msgstr "El dispositivo virtual está degradado (falta algún componente)" - -#: grub-core/fs/zfs/zfsinfo.c:73 -msgid "Virtual device is online" -msgstr "El dispositivo virtual está conectado" - -#: grub-core/fs/zfs/zfsinfo.c:89 -msgid "Incorrect virtual device: no type available" -msgstr "Dispositivo virtual incorrecto: ningún tipo disponible" - -#. TRANSLATORS: The virtual devices form a tree (in graph-theoretical -#. sense). The nodes like mirror or raidz have children: member devices. -#. The "real" devices which actually store data are called "leafs" -#. (again borrowed from graph theory) and can be either disks -#. (or partitions) or files. -#: grub-core/fs/zfs/zfsinfo.c:105 -msgid "Leaf virtual device (file or disk)" -msgstr "Dispositivo hoja virtual (fichero o disco)" - -#: grub-core/fs/zfs/zfsinfo.c:113 -msgid "Bootpath: unavailable\n" -msgstr "Ruta de arranque: no disponible\n" - -#: grub-core/fs/zfs/zfsinfo.c:115 -#, c-format -msgid "Bootpath: %s\n" -msgstr "Ruta de arranque: %s\n" - -#: grub-core/fs/zfs/zfsinfo.c:120 -msgid "Path: unavailable" -msgstr "Ruta: no disponible" - -#: grub-core/fs/zfs/zfsinfo.c:122 -#, c-format -msgid "Path: %s\n" -msgstr "Ruta: %s\n" - -#: grub-core/fs/zfs/zfsinfo.c:127 -msgid "Devid: unavailable" -msgstr "Identificador de dispositivo: no disponible" - -#: grub-core/fs/zfs/zfsinfo.c:129 -#, c-format -msgid "Devid: %s\n" -msgstr "Identificador de dispositivo: %s\n" - -# Miguel: Mantengo VDEV por desconocimiento de las traducciones de ZFS. -#: grub-core/fs/zfs/zfsinfo.c:148 -msgid "This VDEV is a mirror" -msgstr "Este VDEV es un espejo." - -#: grub-core/fs/zfs/zfsinfo.c:153 -#, c-format -msgid "This VDEV is a RAIDZ%llu\n" -msgstr "Este VDEV es un RAIDZ%llu\n" - -#: grub-core/fs/zfs/zfsinfo.c:158 -msgid "Incorrect VDEV" -msgstr "VDEV incorrecto" - -#: grub-core/fs/zfs/zfsinfo.c:161 -#, c-format -msgid "VDEV with %d children\n" -msgstr "VDEV con %d hijos\n" - -#. TRANSLATORS: it's the element carying the number %d, not -#. total element number. And the number itself is fine, -#. only the element isn't. -#. -#: grub-core/fs/zfs/zfsinfo.c:177 -#, c-format -msgid "VDEV element number %d isn't correct\n" -msgstr "El elemento VDEV número %d no está correcto\n" - -#. TRANSLATORS: it's the element carying the number %d, not -#. total element number. This is used in enumeration -#. "Element number 1", "Element number 2", ... -#: grub-core/fs/zfs/zfsinfo.c:184 -#, c-format -msgid "VDEV element number %d:\n" -msgstr "Elemento VDEV número %d:\n" - -#: grub-core/fs/zfs/zfsinfo.c:193 -#, c-format -msgid "Unknown virtual device type: %s\n" -msgstr "Tipo de dispositivo virtual desconocido: %s\n" - -# Miguel: Con más razón, ¿alguien que use ZFS? -#. TRANSLATORS: Here we speak about ZFS pools it's semi-marketing, -#. semi-technical term by Sun/Oracle and should be translated in sync with -#. other ZFS-related software and documentation. -#: grub-core/fs/zfs/zfsinfo.c:254 -msgid "Pool state: active" -msgstr "Estado del \"pool\": activo" - -#: grub-core/fs/zfs/zfsinfo.c:255 -msgid "Pool state: exported" -msgstr "Estado del \"pool\": exportado" - -#: grub-core/fs/zfs/zfsinfo.c:256 -msgid "Pool state: destroyed" -msgstr "Estado del \"pool\": destruido" - -#: grub-core/fs/zfs/zfsinfo.c:257 -msgid "Pool state: reserved for hot spare" -msgstr "Estado del \"pool\": reservado para arranque rápido" - -#: grub-core/fs/zfs/zfsinfo.c:258 -msgid "Pool state: level 2 ARC device" -msgstr "Estado del \"pool\": dispositivo ARC de nivel 2" - -#: grub-core/fs/zfs/zfsinfo.c:259 -msgid "Pool state: uninitialized" -msgstr "Estado del \"pool\": no inicializado" - -#: grub-core/fs/zfs/zfsinfo.c:260 -msgid "Pool state: unavailable" -msgstr "Estado del \"pool\": no disponible" - -#: grub-core/fs/zfs/zfsinfo.c:261 -msgid "Pool state: potentially active" -msgstr "Estado del \"pool\": potencialmente activo" - -#: grub-core/fs/zfs/zfsinfo.c:306 -msgid "Pool name: unavailable" -msgstr "Nombre del \"pool\": no disponible" - -#: grub-core/fs/zfs/zfsinfo.c:308 -#, c-format -msgid "Pool name: %s\n" -msgstr "Nombre del \"pool\": %s\n" - -#: grub-core/fs/zfs/zfsinfo.c:313 -msgid "Pool GUID: unavailable" -msgstr "GUID del \"pool\": no disponible" - -#: grub-core/fs/zfs/zfsinfo.c:315 -#, c-format -msgid "Pool GUID: %016llx\n" -msgstr "GUID del \"pool\": %016llx\n" - -#: grub-core/fs/zfs/zfsinfo.c:320 -msgid "Unable to retrieve pool state" -msgstr "Imposible obtener el estado del \"pool\"" - -#: grub-core/fs/zfs/zfsinfo.c:322 -msgid "Unrecognized pool state" -msgstr "Estado del \"pool\" no reconocido" - -#. TRANSLATORS: There are undetermined number of virtual devices -#. in a device tree, not just one. -#. -#: grub-core/fs/zfs/zfsinfo.c:332 -msgid "No virtual device tree available" -msgstr "Ningún árbol de dispositivos virtuales disponible" - -#: grub-core/fs/zfs/zfsinfo.c:431 -msgid "Print ZFS info about DEVICE." -msgstr "Imprime información ZFS acerca del DISPOSITIVO." - -#: grub-core/fs/zfs/zfsinfo.c:433 -msgid "FILESYSTEM [VARIABLE]" -msgstr "SISTEMA_DE_FICHEROS [VARIABLE]" - -#: grub-core/fs/zfs/zfsinfo.c:434 -msgid "Print ZFS-BOOTFSOBJ or store it into VARIABLE" -msgstr "Imprime ZFS-BOOTFSOBJ o lo almacena en la VARIABLE" - -#. TRANSLATORS: at this position GRUB waits for the user to do an action -#. in remote debugger, namely to tell it to establish connection. -#: grub-core/gdb/gdb.c:48 -msgid "Now connect the remote debugger, please." -msgstr "Conecte ahora el depurador remoto, por favor." - -#. TRANSLATORS: GDB stub is a small part of -#. GDB functionality running on local host -#. which allows remote debugger to -#. connect to it. -#: grub-core/gdb/gdb.c:84 -msgid "Start GDB stub on given port" -msgstr "Inicia el soporte de GDB en el puerto proporcionado" - -#. TRANSLATORS: this refers to triggering -#. a breakpoint so that the user will land -#. into GDB. -#: grub-core/gdb/gdb.c:89 -msgid "Break into GDB" -msgstr "Salta (con un punto de parada) a GDB" - -#: grub-core/gdb/gdb.c:91 -msgid "Stop GDB stub" -msgstr "Para el soporte de GFB" - -#: grub-core/gettext/gettext.c:85 -msgid "premature end of file" -msgstr "fin prematuro del fichero" - -#. TRANSLATORS: It refers to passing the string through gettext. -#. So it's "translate" in the same meaning as in what you're -#. doing now. -#. -#: grub-core/gettext/gettext.c:525 -msgid "Translates the string with the current settings." -msgstr "Traduce la cadena con las opciones actuales." - -#: grub-core/gfxmenu/gui_label.c:186 grub-core/normal/menu_text.c:184 -msgid "" -"Press enter to boot the selected OS, `e' to edit the commands before booting " -"or `c' for a command-line. ESC to return previous menu." -msgstr "" -"Pulse «Intro» para arrancar el SO seleccionado, «e» para editar las órdenes " -"antes de arrancar o «c» para una línea de órdenes. «ESC» para volver al menú " -"anterior." - -#: grub-core/gfxmenu/gui_label.c:190 grub-core/normal/menu_text.c:192 -msgid "" -"Press enter to boot the selected OS, `e' to edit the commands before booting " -"or `c' for a command-line." -msgstr "" -"Pulse «Intro» para arrancar el SO seleccionado, «e» para editar los órdenes " -"antes de arrancar o «c» para una línea de órdenes." - -#: grub-core/gfxmenu/gui_label.c:194 -msgid "enter: boot, `e': options, `c': cmd-line" -msgstr "intro: arrancar, «e»: opciones, «c»: línea de órdenes" - -#: grub-core/gfxmenu/gui_progress_bar.c:339 grub-core/normal/menu_text.c:446 -#, c-format -msgid "The highlighted entry will be executed automatically in %ds." -msgstr "La entrada marcada se ejecutará automáticamente en %d s." - -#. TRANSLATORS: 's' stands for seconds. -#. It's a standalone timeout notification. -#. Please use the short form in your language. -#: grub-core/gfxmenu/gui_progress_bar.c:344 -#, c-format -msgid "%ds remaining." -msgstr "faltan %d s." - -#. TRANSLATORS: 's' stands for seconds. -#. It's a standalone timeout notification. -#. Please use the shortest form available in you language. -#: grub-core/gfxmenu/gui_progress_bar.c:349 grub-core/normal/menu_text.c:444 -#: grub-core/normal/menu_text.c:462 -#, c-format -msgid "%ds" -msgstr "%d s" - -#: grub-core/gfxmenu/view.c:103 -msgid "GRUB Boot Menu" -msgstr "Menú de arranque de GRUB" - -#: grub-core/hello/hello.c:36 -msgid "Hello World" -msgstr "Hola mundo" - -#: grub-core/hello/hello.c:45 -msgid "Say `Hello World'." -msgstr "Dice «Hola mundo»." - -#: grub-core/io/gzio.c:409 grub-core/kern/file.c:210 -msgid "attempt to seek outside of the file" -msgstr "intento de buscar fuera del fichero" - -#. TRANSLATORS: It's about given file having some strange format, not -#. complete lack of gzip support. -#: grub-core/io/gzio.c:1228 grub-core/io/gzio.c:1237 grub-core/io/gzio.c:1244 -msgid "unsupported gzip format" -msgstr "formato de gzip no soportado" - -#: grub-core/io/lzopio.c:511 -msgid "lzop file corrupted" -msgstr "fichero lzop corrupto" - -#: grub-core/io/xzio.c:278 -msgid "xz file corrupted or unsupported block options" -msgstr "fichero xz corrupto u opciones de bloque no soportadas" - -#: grub-core/kern/arm/dl.c:277 grub-core/kern/arm64/dl.c:44 -#: grub-core/kern/i386/dl.c:36 grub-core/kern/ia64/dl.c:41 -#: grub-core/kern/mips/dl.c:48 grub-core/kern/powerpc/dl.c:36 -#: grub-core/kern/riscv/dl.c:47 grub-core/kern/sparc64/dl.c:36 -#: grub-core/kern/x86_64/dl.c:36 grub-core/loader/i386/bsd.c:1445 -#: grub-core/loader/i386/bsdXX.c:49 grub-core/loader/ia64/efi/linux.c:341 -#: grub-core/loader/mips/linux.c:298 grub-core/loader/multiboot.c:232 -#: grub-core/loader/multiboot_elfxx.c:73 -#: grub-core/loader/powerpc/ieee1275/linux.c:294 -#: grub-core/loader/sparc64/ieee1275/linux.c:331 -msgid "invalid arch-dependent ELF magic" -msgstr "número mágico ELF dependiente de la arquitectura no válido" - -#: grub-core/kern/corecmd.c:178 -msgid "[ENVVAR=VALUE]" -msgstr "[VARIABLE_DE_ENTORNO=VALOR]" - -#: grub-core/kern/corecmd.c:179 -msgid "Set an environment variable." -msgstr "Cambia una variable de entorno." - -#: grub-core/kern/corecmd.c:183 -msgid "ENVVAR" -msgstr "VARIABLE_DE_ENTORNO" - -#: grub-core/kern/corecmd.c:184 -msgid "Remove an environment variable." -msgstr "Elimina una variable de entorno." - -#: grub-core/kern/corecmd.c:186 -msgid "[ARG]" -msgstr "[PARÃMETRO]" - -#: grub-core/kern/corecmd.c:186 -msgid "List devices or files." -msgstr "Enumera dispositivos o ficheros." - -#: grub-core/kern/corecmd.c:188 -msgid "Insert a module." -msgstr "Inserta un módulo." - -#: grub-core/kern/disk.c:236 grub-core/net/net.c:1390 -#, c-format -msgid "disk `%s' not found" -msgstr "disco «%s» no encontrado" - -#: grub-core/kern/disk_common.c:27 -msgid "attempt to read or write outside of partition" -msgstr "intento de leer o escribir fuera de la partición" - -#: grub-core/kern/dl.c:212 grub-core/kern/elf.c:61 grub-core/kern/elf.c:79 -#: grub-core/loader/i386/bsdXX.c:46 grub-core/loader/ia64/efi/linux.c:335 -#: grub-core/loader/multiboot_elfxx.c:69 -msgid "invalid arch-independent ELF magic" -msgstr "número mágico independiente de la arquitectura ELF no válido" - -#. TRANSLATORS: it refers to the lack of free slots. -#: grub-core/kern/emu/hostdisk.c:208 grub-core/kern/emu/hostdisk.c:466 -msgid "device count exceeds limit" -msgstr "el número de dispositivos supera el límite" - -#: grub-core/kern/emu/hostdisk.c:342 util/editenv.c:54 util/grub-editenv.c:197 -#: util/grub-fstest.c:191 util/grub-mkfont.c:796 util/misc.c:114 -#: util/misc.c:129 util/setup.c:788 -#, c-format -msgid "cannot write to `%s': %s" -msgstr "no se puede escribir en «%s»: %s" - -#. TRANSLATORS: Only one entry is ignored. However the suggestion -#. is to correct/delete the whole file. -#. device.map is a file indicating which -#. devices are available at boot time. Fedora populated it with -#. entries like (hd0,1) /dev/sda1 which would mean that every -#. partition is a separate disk for BIOS. Such entries were -#. inactive in GRUB due to its bug which is now gone. Without -#. this additional check these entries would be harmful now. -#. -#: grub-core/kern/emu/hostdisk.c:503 -#, c-format -msgid "" -"the device.map entry `%s' is invalid. Ignoring it. Please correct or delete " -"your device.map" -msgstr "" -"La entrada «%s» de device.map no es válida. Ignorándola. Por favor, " -"corríjala o bórrela de su device.map" - -#. TRANSLATORS: device.map is a filename. Not to be translated. -#. device.map specifies disk correspondance overrides. Previously -#. one could create any kind of device name with this. Due to -#. some problems we decided to limit it to just a handful -#. possibilities. -#: grub-core/kern/emu/hostdisk.c:555 -#, c-format -msgid "" -"the drive name `%s' in device.map is incorrect. Using %s instead. Please use " -"the form [hfc]d[0-9]* (E.g. `hd0' or `cd')" -msgstr "" -"El nombre de unidad «%s» en device.map es incorrecto. Usando %s. Por favor, " -"use el formato [hfc]d[0-9]* (Por ejemplo: «hd0» o «cd»)" - -#: grub-core/kern/emu/hostfs.c:76 grub-core/kern/emu/hostfs.c:109 -#, c-format -msgid "can't open `%s': %s" -msgstr "no se puede abrir «%s»: %s" - -#: grub-core/kern/emu/main.c:99 util/grub-fstest.c:516 util/grub-mount.c:452 -msgid "DEVICE_NAME" -msgstr "NOMBRE_DE_DISPOSITIVO" - -#: grub-core/kern/emu/main.c:99 grub-core/loader/i386/bsd.c:136 -#: grub-core/loader/i386/bsd.c:169 util/grub-fstest.c:516 util/grub-mount.c:452 -msgid "Set root device." -msgstr "Cambia el dispositivo raíz." - -#. TRANSLATORS: There are many devices in device map. -#: grub-core/kern/emu/main.c:102 util/grub-probe.c:733 util/grub-setup.c:85 -#, c-format -msgid "use FILE as the device map [default=%s]" -msgstr "usa el FICHERO como el mapa de dispositivos [predeterminado=%s]" - -#. TRANSLATORS: There are many devices in device map. -#: grub-core/kern/emu/main.c:105 -msgid "use FILE as memdisk" -msgstr "usa el FICHERO como una imagen de disco de memoria" - -#: grub-core/kern/emu/main.c:107 util/grub-setup.c:83 -#, c-format -msgid "use GRUB files in the directory DIR [default=%s]" -msgstr "usa los ficheros de GRUB del directorio DIRECTORIO [predeterminado=%s]" - -#: grub-core/kern/emu/main.c:108 include/grub/util/install.h:67 -#: util/grub-editenv.c:58 util/grub-fstest.c:525 util/grub-glue-efi.c:58 -#: util/grub-macbless.c:104 util/grub-mkfont.c:962 util/grub-mkimage.c:84 -#: util/grub-mklayout.c:56 util/grub-mount.c:458 util/grub-probe.c:735 -#: util/grub-render-label.c:74 util/grub-script-check.c:52 util/grub-setup.c:90 -#: util/grub-syslinux2cfg.c:78 -msgid "print verbose messages." -msgstr "imprime mensajes prolijos." - -#: grub-core/kern/emu/main.c:109 grub-core/lib/gnulib/argp-parse.c:85 -msgid "SECS" -msgstr "SEGUNDOS" - -#: grub-core/kern/emu/main.c:109 -msgid "wait until a debugger will attach" -msgstr "espera hasta que se una un depurador" - -#: grub-core/kern/emu/main.c:171 util/grub-macbless.c:143 -#: util/grub-mkrelpath.c:61 util/grub-probe.c:874 util/grub-script-check.c:75 -#: util/grub-setup.c:203 -#, c-format -msgid "Unknown extra argument `%s'." -msgstr "Parámetro extra «%s» desconocido." - -#: grub-core/kern/emu/main.c:185 -msgid "GRUB emulator." -msgstr "Emulador de GRUB." - -# Miguel: Estra traducción no me acaba de gustar... :( -#: grub-core/kern/emu/main.c:213 util/grub-editenv.c:262 -#: util/grub-glue-efi.c:110 util/grub-macbless.c:173 util/grub-mkfont.c:1177 -#: util/grub-mkimage.c:266 util/grub-mklayout.c:494 -#: util/grub-mkpasswd-pbkdf2.c:132 util/grub-mkrelpath.c:96 -#: util/grub-probe.c:863 util/grub-render-label.c:152 -#: util/grub-script-check.c:160 util/grub-setup.c:262 -#: util/grub-syslinux2cfg.c:163 -msgid "Error in parsing command line arguments\n" -msgstr "Error procesando los parámetros de la línea de órdenes\n" - -#. TRANSLATORS: In this case GRUB tells user what he has to do. -#: grub-core/kern/emu/main.c:248 -#, c-format -msgid "Run `gdb %s %d', and set ARGS.HOLD to zero.\n" -msgstr "Ejecute «gdb %s %d», y cambie ARGS.HOLD a cero.\n" - -#: grub-core/kern/emu/misc.c:48 -#, c-format -msgid "%s: warning:" -msgstr "%s: aviso:" - -#: grub-core/kern/emu/misc.c:64 -#, c-format -msgid "%s: info:" -msgstr "%s: información:" - -#: grub-core/kern/emu/misc.c:79 util/grub-fstest.c:567 util/grub-fstest.c:576 -#: util/grub-mount.c:497 util/grub-mount.c:505 -#, c-format -msgid "%s: error:" -msgstr "%s: error:" - -#: grub-core/kern/emu/misc.c:176 -#, c-format -msgid "file `%s' is too big" -msgstr "el fichero «%s» es demasiado grande" - -#: grub-core/kern/fs.c:120 -msgid "unknown filesystem" -msgstr "sistema de ficheros desconocido" - -#: grub-core/kern/mips/arc/init.c:273 grub-core/kern/mips/loongson/init.c:301 -msgid "Shutdown failed" -msgstr "Falló al apagar" - -#: grub-core/kern/mips/arc/init.c:285 -msgid "Exit failed" -msgstr "Falló al salir" - -#: grub-core/kern/misc.c:351 grub-core/kern/misc.c:408 include/grub/misc.h:269 -#: include/grub/misc.h:278 -msgid "overflow is detected" -msgstr "desbordamiento detectado" - -# Miguel: Las tablas de partición BSD están embebidas en una -# partición tradicional. Desconozco si existe un termino ampliamente -# aceptado para "nested" en este caso. -#: grub-core/kern/partition.c:51 grub-core/partmap/bsdlabel.c:108 -#, c-format -msgid "Discarding improperly nested partition (%s,%s,%s%d)" -msgstr "Descartando partición impropiamente embebida (%s,%s,%s%d)" - -#: grub-core/kern/rescue_parser.c:73 util/grub-editenv.c:292 -#, c-format -msgid "Unknown command `%s'.\n" -msgstr "Orden «%s» desconocida.\n" - -#: grub-core/lib/arg.c:31 -msgid "Display this help and exit." -msgstr "Muestra esta ayuda y finaliza." - -#: grub-core/lib/arg.c:33 -msgid "Display the usage of this command and exit." -msgstr "Muestra el uso de esta orden y termina." - -#: grub-core/lib/arg.c:362 -#, c-format -msgid "missing mandatory option for `%s'" -msgstr "falta una opción obligatoria para «%s»" - -#: grub-core/lib/arg.c:384 -#, c-format -msgid "the argument `%s' requires an integer" -msgstr "el parámetro «%s» necesita un entero." - -#: grub-core/lib/arg.c:407 -#, c-format -msgid "" -"a value was assigned to the argument `%s' while it doesn't require an " -"argument" -msgstr "se asignó un valor al parámetro «%s» cuando no lo requiere" - -#: grub-core/lib/backtrace.c:64 -msgid "Print backtrace." -msgstr "Imprime pila de llamadas" - -#: grub-core/lib/gnulib/argp-help.c:149 -#, c-format -msgid "ARGP_HELP_FMT: %s value is less than or equal to %s" -msgstr "ARGP_HELP_FMT: el valor %s es menor o igual que %s" - -#: grub-core/lib/gnulib/argp-help.c:225 -#, c-format -msgid "%.*s: ARGP_HELP_FMT parameter requires a value" -msgstr "%.*s: El parámetro ARGP_HELP_FMT necesita un valor" - -#: grub-core/lib/gnulib/argp-help.c:235 -#, c-format -msgid "%.*s: Unknown ARGP_HELP_FMT parameter" -msgstr "%.*s: Parámetro ARGP_HELP_FMT desconocido" - -#: grub-core/lib/gnulib/argp-help.c:248 -#, c-format -msgid "Garbage in ARGP_HELP_FMT: %s" -msgstr "Incongruencia en ARGP_HELP_FMT: %s" - -#: grub-core/lib/gnulib/argp-help.c:1229 -msgid "" -"Mandatory or optional arguments to long options are also mandatory or " -"optional for any corresponding short options." -msgstr "" -"Los argumentos obligatorios u opcionales para las opciones largas son " -"también obligatorios u opcionales para las opciones cortas correspondientes." - -#: grub-core/lib/gnulib/argp-help.c:1620 -msgid " or: " -msgstr " o: " - -#: grub-core/lib/gnulib/argp-help.c:1632 -msgid " [OPTION...]" -msgstr " [OPCIÓN...]" - -#: grub-core/lib/gnulib/argp-help.c:1659 -#, c-format -msgid "Try '%s --help' or '%s --usage' for more information.\n" -msgstr "Pruebe «%s --help» o «%s --usage» para más información.\n" - -#: grub-core/lib/gnulib/argp-help.c:1687 -#, c-format -msgid "Report bugs to %s.\n" -msgstr "Notifique errores a %s.\n" - -#: grub-core/lib/gnulib/argp-help.c:1888 grub-core/lib/gnulib/error.c:195 -msgid "Unknown system error" -msgstr "Error desconocido del sistema" - -#: grub-core/lib/gnulib/argp-parse.c:81 -msgid "give this help list" -msgstr "proporciona esta lista de ayuda" - -#: grub-core/lib/gnulib/argp-parse.c:82 -msgid "give a short usage message" -msgstr "proporciona un mensaje corto sobre el uso" - -#: grub-core/lib/gnulib/argp-parse.c:83 util/grub-mkfont.c:946 -msgid "NAME" -msgstr "NOMBRE" - -#: grub-core/lib/gnulib/argp-parse.c:84 -msgid "set the program name" -msgstr "cambia el nombre del programa" - -#: grub-core/lib/gnulib/argp-parse.c:86 -msgid "hang for SECS seconds (default 3600)" -msgstr "espera durante SEGUNDOS segundos (predeterminado 3600)" - -#: grub-core/lib/gnulib/argp-parse.c:143 -msgid "print program version" -msgstr "imprime la versión del programa" - -#: grub-core/lib/gnulib/argp-parse.c:160 -msgid "(PROGRAM ERROR) No version known!?" -msgstr "(ERROR DEL PROGRAMA) ¿¡Ninguna versión conocida!?" - -#: grub-core/lib/gnulib/argp-parse.c:613 -#, c-format -msgid "%s: Too many arguments\n" -msgstr "%s: Demasiados parámetros\n" - -#: grub-core/lib/gnulib/argp-parse.c:759 -msgid "(PROGRAM ERROR) Option should have been recognized!?" -msgstr "(ERROR DEL PROGRAMA) ¿¡Deberían haberse reconocido las opciones!?" - -#: grub-core/lib/gnulib/getopt.c:278 -#, c-format -msgid "%s: option '%s%s' is ambiguous\n" -msgstr "%s: la opción «%s%s» es ambigua\n" - -#: grub-core/lib/gnulib/getopt.c:284 -#, c-format -msgid "%s: option '%s%s' is ambiguous; possibilities:" -msgstr "%s: la opción «%s%s» es ambigua; posibilidades:" - -#: grub-core/lib/gnulib/getopt.c:319 -#, c-format -msgid "%s: unrecognized option '%s%s'\n" -msgstr "%s: opción «%s%s» no reconocida\n" - -#: grub-core/lib/gnulib/getopt.c:345 -#, c-format -msgid "%s: option '%s%s' doesn't allow an argument\n" -msgstr "%s: la opción «%s%s» no permite un parámetro\n" - -#: grub-core/lib/gnulib/getopt.c:360 -#, c-format -msgid "%s: option '%s%s' requires an argument\n" -msgstr "%s: la opción «%s%s» necesita un parámetro\n" - -#: grub-core/lib/gnulib/getopt.c:621 -#, c-format -msgid "%s: invalid option -- '%c'\n" -msgstr "%s: opción no válida -- «%c»\n" - -#: grub-core/lib/gnulib/getopt.c:636 grub-core/lib/gnulib/getopt.c:682 -#, c-format -msgid "%s: option requires an argument -- '%c'\n" -msgstr "%s: la opción necesita un parámetro -- «%c»\n" - -# TODO (MAAV): Repensar -#: grub-core/lib/gnulib/openat-die.c:38 -#, c-format -msgid "unable to record current working directory" -msgstr "no es posible registrar el directorio de trabajo actual" - -# TODO (MAAV): Repensar -#: grub-core/lib/gnulib/openat-die.c:57 -#, c-format -msgid "failed to return to initial working directory" -msgstr "no se pudo volver al directorio de trabajo inicial" - -#: grub-core/lib/gnulib/regcomp.c:135 grub-core/osdep/aros/hostdisk.c:523 -msgid "Success" -msgstr "Éxito" - -#: grub-core/lib/gnulib/regcomp.c:138 -msgid "No match" -msgstr "Ninguna coincidencia" - -#: grub-core/lib/gnulib/regcomp.c:141 -msgid "Invalid regular expression" -msgstr "Expresión regular no válida" - -# Miguel: Robando traducción de Christian Othón en gawk. ;) Gracias. -#: grub-core/lib/gnulib/regcomp.c:144 -msgid "Invalid collation character" -msgstr "Carácter de ordenación inválido" - -#: grub-core/lib/gnulib/regcomp.c:147 -msgid "Invalid character class name" -msgstr "Nombre de clase de carácter no válido" - -#: grub-core/lib/gnulib/regcomp.c:150 -msgid "Trailing backslash" -msgstr "Barra invertida extra al final" - -#: grub-core/lib/gnulib/regcomp.c:153 -msgid "Invalid back reference" -msgstr "Referencia pasada no válida" - -#: grub-core/lib/gnulib/regcomp.c:156 -msgid "Unmatched [, [^, [:, [., or [=" -msgstr "[, [^, [:, [. o [= desemparejado" - -#: grub-core/lib/gnulib/regcomp.c:159 -msgid "Unmatched ( or \\(" -msgstr "( o \\( desemparejado" - -#: grub-core/lib/gnulib/regcomp.c:162 -msgid "Unmatched \\{" -msgstr "\\{ desemparejado" - -#: grub-core/lib/gnulib/regcomp.c:165 -msgid "Invalid content of \\{\\}" -msgstr "Contenido de \\{\\} no válido" - -#: grub-core/lib/gnulib/regcomp.c:168 -msgid "Invalid range end" -msgstr "Fin de rango no válido" - -#: grub-core/lib/gnulib/regcomp.c:171 -msgid "Memory exhausted" -msgstr "Memoria agotada" - -#: grub-core/lib/gnulib/regcomp.c:174 -msgid "Invalid preceding regular expression" -msgstr "Expresión regular predecesora no válida" - -#: grub-core/lib/gnulib/regcomp.c:177 -msgid "Premature end of regular expression" -msgstr "Fin prematuro de la expresión regular" - -#: grub-core/lib/gnulib/regcomp.c:180 -msgid "Regular expression too big" -msgstr "Expresión regular demasiado grande" - -#: grub-core/lib/gnulib/regcomp.c:183 -msgid "Unmatched ) or \\)" -msgstr ") o \\) desemparejado" - -#: grub-core/lib/gnulib/regcomp.c:531 -msgid "unknown regexp error" -msgstr "error de expresiones regulares desconocido" - -#: grub-core/lib/gnulib/regcomp.c:676 -msgid "No previous regular expression" -msgstr "Ninguna expresión regular previa" - -#: grub-core/lib/i386/halt.c:77 -msgid "GRUB doesn't know how to halt this machine yet!" -msgstr "¡GRUB todavía no sabe como parar esta máquina!" - -#: grub-core/lib/legacy_parse.c:75 -msgid "Default server is ${net_default_server}" -msgstr "El servidor predeterminado es ${net_default_server}" - -#: grub-core/lib/legacy_parse.c:844 grub-core/video/colors.c:296 -#: grub-core/video/colors.c:305 grub-core/video/colors.c:311 -#: grub-core/video/colors.c:327 util/render-label.c:84 util/render-label.c:98 -#, c-format -msgid "invalid color specification `%s'" -msgstr "especificación de color «%s» no válida" - -#: grub-core/lib/mips/arc/reboot.c:32 grub-core/lib/mips/loongson/reboot.c:61 -msgid "Reboot failed" -msgstr "Falló el reinicio" - -#: grub-core/lib/random.c:113 -msgid "[LENGTH]" -msgstr "[LONGITUD]" - -#: grub-core/lib/random.c:114 -msgid "Hexdump random data." -msgstr "Vuelca datos hexadecimales aleatorios." - -#: grub-core/loader/arm/linux.c:242 -msgid "device tree must be supplied (see `devicetree' command)" -msgstr "" -"un árbol de dispositivos debe ser suministrado (véase la orden «devicetree»)" - -#: grub-core/loader/arm/linux.c:334 -msgid "invalid zImage" -msgstr "zImage no válida" - -#: grub-core/loader/arm/linux.c:450 grub-core/loader/efi/fdt.c:144 -msgid "invalid device tree" -msgstr "árbol de dispositivos no válido" - -#: grub-core/loader/arm/linux.c:493 grub-core/loader/arm64/linux.c:383 -#: grub-core/loader/i386/linux.c:1125 grub-core/loader/i386/pc/linux.c:479 -#: grub-core/loader/i386/xen.c:962 grub-core/loader/i386/xen.c:964 -#: grub-core/loader/ia64/efi/linux.c:591 grub-core/loader/mips/linux.c:501 -#: grub-core/loader/powerpc/ieee1275/linux.c:383 -#: grub-core/loader/riscv/linux.c:50 -#: grub-core/loader/sparc64/ieee1275/linux.c:511 -msgid "Load Linux." -msgstr "Carga Linux." - -#: grub-core/loader/arm/linux.c:495 grub-core/loader/arm64/linux.c:385 -#: grub-core/loader/i386/linux.c:1127 grub-core/loader/i386/pc/linux.c:482 -#: grub-core/loader/i386/xen.c:966 grub-core/loader/ia64/efi/linux.c:594 -#: grub-core/loader/mips/linux.c:503 -#: grub-core/loader/powerpc/ieee1275/linux.c:385 -#: grub-core/loader/riscv/linux.c:52 -#: grub-core/loader/sparc64/ieee1275/linux.c:513 -msgid "Load initrd." -msgstr "Carga initrd." - -#. TRANSLATORS: DTB stands for device tree blob. -#: grub-core/loader/arm/linux.c:498 grub-core/loader/efi/fdt.c:169 -msgid "Load DTB file." -msgstr "Carga un fichero DTB (árboles de dispositivos)." - -#: grub-core/loader/arm64/linux.c:59 -msgid "" -"plain image kernel not supported - rebuild with CONFIG_(U)EFI_STUB enabled" -msgstr "" -"imagen plana del núcleo no soportada - recompile con CONFIG_(U)EFI_STUB " -"activado" - -#: grub-core/loader/arm64/xen_boot.c:156 -msgid "failed to get FDT" -msgstr "fallo al obtener FDT" - -#: grub-core/loader/arm64/xen_boot.c:418 -msgid "you need to load the Xen Hypervisor first" -msgstr "se debe cargar el hipervisor Xen primero" - -#: grub-core/loader/arm64/xen_boot.c:516 -msgid "Load a xen hypervisor." -msgstr "Carga un hipervisor xen" - -#: grub-core/loader/arm64/xen_boot.c:519 -msgid "Load a xen module." -msgstr "Carga un módulo xen." - -#: grub-core/loader/efi/appleloader.c:231 -msgid "[OPTS]" -msgstr "[OPCIONES]" - -#. TRANSLATORS: This command is used on EFI to -#. switch to BIOS mode and boot the OS requiring -#. BIOS. -#: grub-core/loader/efi/appleloader.c:235 -msgid "Boot BIOS-based system." -msgstr "Arranca un sistema basado en BIOS." - -# Miguel: "Chainload" lo he traducido como salto a otro cargador -# de arranque, es el concepto más cercano que se me ocurre. -#: grub-core/loader/efi/chainloader.c:421 -#: grub-core/loader/i386/pc/chainloader.c:303 -msgid "Load another boot loader." -msgstr "Salta a otro cargador de arranque." - -#: grub-core/loader/i386/bsd.c:103 -msgid "Display output on all consoles." -msgstr "Muestra la salida en todas las consolas." - -#: grub-core/loader/i386/bsd.c:104 grub-core/loader/i386/bsd.c:138 -#: grub-core/loader/i386/bsd.c:171 -msgid "Use serial console." -msgstr "Usa la consola serie." - -#: grub-core/loader/i386/bsd.c:105 grub-core/loader/i386/bsd.c:131 -#: grub-core/loader/i386/bsd.c:159 -msgid "Ask for file name to reboot from." -msgstr "Pregunta por un nombre de fichero para reiniciar desde él." - -#: grub-core/loader/i386/bsd.c:106 -msgid "Use CD-ROM as root." -msgstr "Usa el CD-ROM como raíz." - -#: grub-core/loader/i386/bsd.c:107 -msgid "Invoke user configuration routing." -msgstr "Invoca la configuración de encaminado del usuario." - -#: grub-core/loader/i386/bsd.c:108 grub-core/loader/i386/bsd.c:135 -#: grub-core/loader/i386/bsd.c:162 -msgid "Enter in KDB on boot." -msgstr "Entra en el KDB al arrancar." - -#: grub-core/loader/i386/bsd.c:109 -msgid "Use GDB remote debugger instead of DDB." -msgstr "Usar el depurador remoto de GDB en vez de DDB." - -#: grub-core/loader/i386/bsd.c:110 -msgid "Disable all boot output." -msgstr "Desactiva toda la salida durante el arranque." - -#: grub-core/loader/i386/bsd.c:112 -msgid "Wait for keypress after every line of output." -msgstr "Espera una pulsación de tecla después de la impresión de cada línea." - -#: grub-core/loader/i386/bsd.c:114 -msgid "Use compiled-in root device." -msgstr "Usa el dispositivo raíz compilado internamente." - -#: grub-core/loader/i386/bsd.c:115 grub-core/loader/i386/bsd.c:134 -#: grub-core/loader/i386/bsd.c:165 -msgid "Boot into single mode." -msgstr "Arranca en modo no-multiusuario (single)." - -#: grub-core/loader/i386/bsd.c:116 grub-core/loader/i386/bsd.c:166 -msgid "Boot with verbose messages." -msgstr "Arranca con mensajes prolijos." - -#: grub-core/loader/i386/bsd.c:132 grub-core/loader/i386/bsd.c:160 -msgid "Don't reboot, just halt." -msgstr "No reinicia, simplemente apaga." - -#: grub-core/loader/i386/bsd.c:133 grub-core/loader/i386/bsd.c:161 -msgid "Change configured devices." -msgstr "Cambia los dispositivos configurados." - -#. TRANSLATORS: "com" is static and not to be translated. It refers to -#. serial ports e.g. com1. -#. -#: grub-core/loader/i386/bsd.c:142 -msgid "comUNIT[,SPEED]" -msgstr "comNÚMERO[,VELOCIDAD]" - -#: grub-core/loader/i386/bsd.c:157 -msgid "Disable SMP." -msgstr "Deshabilita SMP." - -#: grub-core/loader/i386/bsd.c:158 -msgid "Disable ACPI." -msgstr "Deshabilita ACPI." - -#: grub-core/loader/i386/bsd.c:164 -msgid "Don't display boot diagnostic messages." -msgstr "No muestra mensajes de diagnóstico del arranque." - -#: grub-core/loader/i386/bsd.c:167 -msgid "Boot with debug messages." -msgstr "Arranca con mensajes de depuración." - -#: grub-core/loader/i386/bsd.c:168 -msgid "Suppress normal output (warnings remain)." -msgstr "Silencia la salida normal (los avisos permanecen)." - -#. TRANSLATORS: "com" is static and not to be translated. It refers to -#. serial ports e.g. com1. -#. -#: grub-core/loader/i386/bsd.c:175 -msgid "[ADDR|comUNIT][,SPEED]" -msgstr "[DIRECCION|comNÚMERO][,VELOCIDAD]" - -#: grub-core/loader/i386/bsd.c:489 grub-core/loader/i386/bsd.c:555 -msgid "name" -msgstr "nombre" - -#: grub-core/loader/i386/bsd.c:489 grub-core/loader/i386/bsd.c:555 -msgid "type" -msgstr "tipo" - -#: grub-core/loader/i386/bsd.c:489 grub-core/loader/i386/bsd.c:555 -msgid "addr" -msgstr "dirección" - -#: grub-core/loader/i386/bsd.c:490 grub-core/loader/i386/bsd.c:556 -msgid "size" -msgstr "tamaño" - -#: grub-core/loader/i386/bsd.c:1147 grub-core/loader/i386/linux.c:466 -#: grub-core/loader/i386/xnu.c:1030 -msgid "Booting in blind mode" -msgstr "Arrancando en modo ciego" - -#: grub-core/loader/i386/bsd.c:2137 -msgid "Load kernel of FreeBSD." -msgstr "Carga el núcleo de FreeBSD." - -#: grub-core/loader/i386/bsd.c:2140 -msgid "Load kernel of OpenBSD." -msgstr "Carga el núcleo de OpenBSD." - -#: grub-core/loader/i386/bsd.c:2143 -msgid "Load kernel of NetBSD." -msgstr "Carga el núcleo de NetBSD." - -#: grub-core/loader/i386/bsd.c:2147 -msgid "Load FreeBSD env." -msgstr "Carga el entorno de FreeBSD." - -#: grub-core/loader/i386/bsd.c:2150 -msgid "Load FreeBSD kernel module." -msgstr "Carga un módulo del núcleo de FreeBSD." - -#: grub-core/loader/i386/bsd.c:2153 -msgid "Load NetBSD kernel module." -msgstr "Carga un módulo del núcleo de NetBSD." - -#: grub-core/loader/i386/bsd.c:2156 -msgid "Load NetBSD kernel module (ELF)." -msgstr "Carga módulo del núcleo de NetBSD (ELF)." - -#: grub-core/loader/i386/bsd.c:2159 -msgid "Load FreeBSD kernel module (ELF)." -msgstr "Carga módulo del núcleo de FreeBSD (ELF)." - -#. TRANSLATORS: ramdisk isn't identifier, -#. it can be translated. -#: grub-core/loader/i386/bsd.c:2165 -msgid "Load kOpenBSD ramdisk." -msgstr "Carga una imagen de memoria de kOpenBSD." - -#. TRANSLATORS: "payload" is a term used -#. by coreboot and must be translated in -#. sync with coreboot. If unsure, -#. let it untranslated. -#: grub-core/loader/i386/coreboot/chainloader.c:510 -msgid "Load another coreboot payload" -msgstr "Carga otro \"payload\" de coreboot." - -#: grub-core/loader/i386/linux.c:876 -msgid "Legacy `ask' parameter no longer supported." -msgstr "El parámetro de GRUB1 «ask» ya no está soportado." - -#: grub-core/loader/i386/linux.c:892 grub-core/loader/i386/linux.c:902 -#: grub-core/loader/i386/linux.c:932 -#, c-format -msgid "%s is deprecated. Use set gfxpayload=%s before linux command instead.\n" -msgstr "%s está obsoleto. Use «set gfxpayload=%s» antes de la orden «linux».\n" - -#. TRANSLATORS: "x" has to be entered in, like an identifier, -#. so please don't use better Unicode codepoints. -#: grub-core/loader/i386/linux.c:915 -#, c-format -msgid "" -"%s is deprecated. VGA mode %d isn't recognized. Use set " -"gfxpayload=WIDTHxHEIGHT[xDEPTH] before linux command instead.\n" -msgstr "" -"%s está obsoleto. No se reconoce el modo VGA %d. Use «set " -"gfxpayload=ANCHOxALTO[xPROFUNDO] antes de la orden «linux»\n" - -#: grub-core/loader/i386/pc/chainloader.c:302 -msgid "[--force|--bpb] FILE" -msgstr "[--force|--bpb] FICHERO" - -#: grub-core/loader/i386/pc/freedos.c:148 util/setup.c:293 -#, c-format -msgid "the size of `%s' is too large" -msgstr "el tamaño de «%s» es demasiado grande" - -#: grub-core/loader/i386/pc/freedos.c:183 -msgid "Load FreeDOS kernel.sys." -msgstr "Carga el kernel.sys de FreeDOS." - -#: grub-core/loader/i386/pc/ntldr.c:155 -msgid "Load NTLDR or BootMGR." -msgstr "Carga NTLDR o BootMGR." - -#. TRANSLATORS: it's about guessing which GRUB disk -#. is which Plan9 disk. If your language has no -#. word "mapping" you can use another word which -#. means that the GRUBDEVICE and PLAN9DEVICE are -#. actually the same device, just named differently -#. in OS and GRUB. -#: grub-core/loader/i386/pc/plan9.c:59 -msgid "Override guessed mapping of Plan9 devices." -msgstr "Fuerza el mapeado de dispositivos de Plan9." - -#: grub-core/loader/i386/pc/plan9.c:60 -msgid "GRUBDEVICE=PLAN9DEVICE" -msgstr "DISPOSITIVOGRUB=DISPOSITIVOPLAN9" - -#: grub-core/loader/i386/pc/plan9.c:599 -msgid "KERNEL ARGS" -msgstr "NÚCLEO PARÃMETROS" - -#: grub-core/loader/i386/pc/plan9.c:599 -msgid "Load Plan9 kernel." -msgstr "Carga el núcleo de Plan9." - -#: grub-core/loader/i386/pc/pxechainloader.c:161 -msgid "Load a PXE image." -msgstr "Carga una imagen PXE." - -#: grub-core/loader/i386/pc/truecrypt.c:226 -msgid "Load Truecrypt ISO." -msgstr "Carga una ISO Truecrypt." - -#: grub-core/loader/i386/xen.c:781 grub-core/loader/i386/xen.c:865 -msgid "initrd already loaded" -msgstr "initrd ya está cargado" - -#: grub-core/loader/i386/xen.c:968 -msgid "Load module." -msgstr "Carga un módulo." - -#: grub-core/loader/i386/xnu.c:1003 -msgid "Press any key to launch xnu" -msgstr "Pulse cualquier tecla para lanzar xnu" - -#. TRANSLATORS: `device-properties' -#. is a variable name, -#. not a program. -#: grub-core/loader/i386/xnu.c:1159 -msgid "Load `device-properties' dump." -msgstr "Carga un volcado de «device-properties»." - -#: grub-core/loader/ia64/efi/linux.c:124 -msgid "Could not locate FPSWA driver" -msgstr "No se ha podido encontrar el controlador de FPSWA" - -#: grub-core/loader/ia64/efi/linux.c:132 -msgid "FPSWA protocol wasn't able to find the interface" -msgstr "El protocolo FPSWA no pudo encontrar la interfaz" - -#: grub-core/loader/ia64/efi/linux.c:580 -msgid "No FPSWA found" -msgstr "No se ha encontrado ningún FPSWA" - -#: grub-core/loader/ia64/efi/linux.c:582 -#, c-format -msgid "FPSWA revision: %x\n" -msgstr "Revisión de FPSWA: %x\n" - -#: grub-core/loader/ia64/efi/linux.c:591 -msgid "FILE [ARGS...]" -msgstr "FICHERO [PARÃMETROS...]" - -#: grub-core/loader/ia64/efi/linux.c:597 -msgid "Display FPSWA version." -msgstr "Muestra la versión de FPSWA." - -#: grub-core/loader/multiboot.c:248 -msgid "WARNING: no console will be available to OS" -msgstr "AVISO: no habrá ninguna consola disponible para el SO" - -#: grub-core/loader/multiboot.c:450 -msgid "Load a multiboot 2 kernel." -msgstr "Carga un núcleo «multiboot 2»." - -#: grub-core/loader/multiboot.c:453 -msgid "Load a multiboot 2 module." -msgstr "Carga un módulo «multiboot 2»." - -#: grub-core/loader/multiboot.c:456 -msgid "Load a multiboot kernel." -msgstr "Carga un núcleo «multiboot»." - -#: grub-core/loader/multiboot.c:459 -msgid "Load a multiboot module." -msgstr "Carga un módulo «multiboot»." - -# TODO (MAAV): Support -#: grub-core/loader/riscv/linux.c:30 grub-core/loader/riscv/linux.c:40 -msgid "Linux not supported yet" -msgstr "Linux todavía no está soportado" - -#: grub-core/loader/xnu.c:1416 grub-core/term/gfxterm_background.c:45 -msgid "Background image mode." -msgstr "Modo de imagen de fondo. (Entre paréntesis su traducción)" - -#. TRANSLATORS: This refers to background image mode (stretched or -#. in left-top corner). Note that GRUB will accept only original -#. keywords stretch and normal, not the translated ones. -#. So please put both in translation -#. e.g. stretch(=%STRETCH%)|normal(=%NORMAL%). -#. The percents mark the translated version. Since many people -#. may not know the word stretch or normal I recommend -#. putting the translation either here or in "Background image mode." -#. string. -#: grub-core/loader/xnu.c:1416 grub-core/term/gfxterm_background.c:55 -msgid "stretch|normal" -msgstr "stretch(estirada)|normal(en la esquina superior izquierda)" - -#: grub-core/loader/xnu.c:1482 -msgid "Load XNU image." -msgstr "Carga una imagen de XNU." - -#: grub-core/loader/xnu.c:1484 -msgid "Load 64-bit XNU image." -msgstr "Carga una imagen de 64 bits de XNU." - -#: grub-core/loader/xnu.c:1486 -msgid "Load XNU extension package." -msgstr "Carga un paquete de extensión XNU." - -#: grub-core/loader/xnu.c:1488 -msgid "Load XNU extension." -msgstr "Carga una extensión XNU." - -#. TRANSLATORS: OSBundleRequired is a -#. variable name in xnu extensions -#. manifests. It behaves mostly like -#. GNU/Linux runlevels. -#. -#: grub-core/loader/xnu.c:1495 -msgid "DIRECTORY [OSBundleRequired]" -msgstr "DIRECTORIO [OSBundleRequired]" - -#. TRANSLATORS: There are many extensions -#. in extension directory. -#: grub-core/loader/xnu.c:1498 -msgid "Load XNU extension directory." -msgstr "Carga un directorio de extensión XNU." - -#. TRANSLATORS: ramdisk here isn't identifier. It can be translated. -#: grub-core/loader/xnu.c:1501 -msgid "Load XNU ramdisk. It will be available in OS as md0." -msgstr "Carga un disco de memoria de XNU. Estará disponible en el SO como md0." - -#: grub-core/loader/xnu.c:1505 -msgid "Load a splash image for XNU." -msgstr "Carga una imagen de inicio para XNU." - -#: grub-core/loader/xnu.c:1510 -msgid "Load an image of hibernated XNU." -msgstr "Carga una imagen de XNU hibernado." - -#: grub-core/mmap/mmap.c:538 -msgid "ADDR1,MASK1[,ADDR2,MASK2[,...]]" -msgstr "DIRECCIÓN1,MÃSCARA1[,DIRECCIÓN2,MÃSCARA2[,...]]" - -#: grub-core/mmap/mmap.c:539 -msgid "Declare memory regions as faulty (badram)." -msgstr "Declara regiones de memoria como defectuosas (badram)." - -#: grub-core/mmap/mmap.c:541 -msgid "FROM[K|M|G] TO[K|M|G]" -msgstr "DE[K|M|G] A[K|M|G]" - -#: grub-core/mmap/mmap.c:542 -msgid "Remove any memory regions in specified range." -msgstr "Elimina cualquier región de memoria en el rango especificado." - -#: grub-core/net/bootp.c:653 -msgid "four arguments expected" -msgstr "se esperaban cuatro argumentos" - -#: grub-core/net/bootp.c:661 grub-core/net/net.c:1155 -#, c-format -msgid "unrecognised network interface `%s'" -msgstr "interfaz de red «%s» no reconocida" - -#: grub-core/net/bootp.c:664 -msgid "no DHCP info found" -msgstr "no se ha encontrado información DHCP" - -#: grub-core/net/bootp.c:674 -msgid "no DHCP options found" -msgstr "no se han encontrado opciones DHCP" - -#: grub-core/net/bootp.c:682 -msgid "invalid DHCP option code" -msgstr "código de opción DHCP no válido" - -#: grub-core/net/bootp.c:686 -#, c-format -msgid "no DHCP option %u found" -msgstr "no se ha encontrado la opción DHCP %u" - -#: grub-core/net/bootp.c:743 -#, c-format -msgid "unrecognised DHCP option format specification `%s'" -msgstr "especificación de formato de opción DHCP «%s» no reconocida" - -#: grub-core/net/bootp.c:767 -msgid "no network card found" -msgstr "no se han encontrado tarjetas de red" - -#: grub-core/net/bootp.c:859 grub-core/net/net.c:389 -#, c-format -msgid "couldn't autoconfigure %s" -msgstr "no se pudo auto-configurar %s" - -#: grub-core/net/bootp.c:873 grub-core/net/bootp.c:876 -msgid "[CARD]" -msgstr "[TARJETA]" - -#: grub-core/net/bootp.c:874 -msgid "perform a bootp autoconfiguration" -msgstr "realizar una autoconfiguración de bootp" - -#: grub-core/net/bootp.c:877 -msgid "perform a DHCP autoconfiguration" -msgstr "realizar una autoconfiguración DHCP" - -#: grub-core/net/bootp.c:879 -msgid "VAR INTERFACE NUMBER DESCRIPTION" -msgstr "VARIABLE INTERFAZ NÚMERO DESCRIPCIÓN" - -#: grub-core/net/bootp.c:880 -msgid "" -"retrieve DHCP option and save it into VAR. If VAR is - then print the value." -msgstr "" -"obtiene la opción DHCP y la almacena en VARIABLE. Si VARIABLE es «-» se " -"imprime el valor." - -#: grub-core/net/dns.c:459 -msgid "no DNS servers configured" -msgstr "no se han configurado servidores DNS" - -#: grub-core/net/dns.c:522 -msgid "domain name component is too long" -msgstr "la componente del nombre de dominio es demasiado larga" - -#: grub-core/net/dns.c:618 grub-core/net/dns.c:666 -msgid "no DNS record found" -msgstr "no se ha encontrado ningún registro DNS" - -#: grub-core/net/dns.c:626 -msgid "no DNS reply received" -msgstr "no se ha recibido ninguna respuesta DNS" - -#: grub-core/net/dns.c:682 -msgid "only ipv4" -msgstr "sólo ipv4" - -#: grub-core/net/dns.c:686 -msgid "only ipv6" -msgstr "sólo ipv6" - -#: grub-core/net/dns.c:690 -msgid "prefer ipv4" -msgstr "preferir ipv4" - -#: grub-core/net/dns.c:694 -msgid "prefer ipv6" -msgstr "preferir ipv6" - -#: grub-core/net/dns.c:759 -msgid "ADDRESS DNSSERVER" -msgstr "DIRECCIÓN SERVIDOR_DNS" - -#: grub-core/net/dns.c:760 -msgid "Perform a DNS lookup" -msgstr "Realiza una busqueda DNS" - -#: grub-core/net/dns.c:762 grub-core/net/dns.c:765 -msgid "DNSSERVER" -msgstr "SERVIDOR_DNS" - -#: grub-core/net/dns.c:763 -msgid "Add a DNS server" -msgstr "Añade un servidor DNS" - -#: grub-core/net/dns.c:766 -msgid "Remove a DNS server" -msgstr "Elimina un servidor DNS" - -#: grub-core/net/dns.c:768 -msgid "List DNS servers" -msgstr "Enumera los servidores DNS" - -#: grub-core/net/drivers/efi/efinet.c:49 grub-core/net/drivers/efi/efinet.c:65 -#: grub-core/net/drivers/efi/efinet.c:77 grub-core/net/drivers/emu/emunet.c:62 -#: grub-core/net/drivers/i386/pc/pxe.c:273 -#: grub-core/net/drivers/ieee1275/ofnet.c:75 -#: grub-core/net/drivers/uboot/ubootnet.c:62 -msgid "couldn't send network packet" -msgstr "no se pudo enviar el paquete por la red" - -#: grub-core/net/drivers/ieee1275/ofnet.c:326 -#: grub-core/net/drivers/ieee1275/ofnet.c:359 -msgid "interpret is not supported" -msgstr "intérprete no soportado" - -#: grub-core/net/drivers/ieee1275/ofnet.c:336 -msgid "alloc-mem failed" -msgstr "falló alloc-mem" - -#: grub-core/net/drivers/ieee1275/ofnet.c:370 -msgid "free-mem failed" -msgstr "falló free-mem" - -#: grub-core/net/http.c:105 -msgid "unsupported HTTP response" -msgstr "respuesta HTTP no soportada" - -#. TRANSLATORS: GRUB HTTP code is pretty young. So even perfectly -#. valid answers like 403 will trigger this very generic message. -#: grub-core/net/http.c:126 -#, c-format -msgid "unsupported HTTP error %d: %s" -msgstr "error HTTP %d no soportado: %s" - -#: grub-core/net/http.c:429 grub-core/net/tftp.c:420 -#, c-format -msgid "time out opening `%s'" -msgstr "expiró el plazo abriendo «%s»" - -#: grub-core/net/net.c:179 -msgid "timeout: could not resolve hardware address" -msgstr "expiración del plazo: no se pudo resolver la dirección hardware" - -#: grub-core/net/net.c:548 -#, c-format -msgid "unresolvable address %s" -msgstr "dirección %s irresoluble" - -#: grub-core/net/net.c:594 -#, c-format -msgid "unrecognised network address `%s'" -msgstr "dirección de red «%s» no reconocida" - -#: grub-core/net/net.c:661 -msgid "destination unreachable" -msgstr "destino no alcanzable" - -#. TRANSLATORS: route loop is a condition when e.g. -#. to contact server A you need to go through B -#. and to contact B you need to go through A. -#: grub-core/net/net.c:684 -msgid "route loop detected" -msgstr "ruta cíclica detectada" - -#: grub-core/net/net.c:700 -msgid "address not found" -msgstr "dirección no encontrada" - -#: grub-core/net/net.c:704 -msgid "you can't delete this address" -msgstr "no puede borrar esta dirección" - -#: grub-core/net/net.c:776 grub-core/net/net.c:792 -#, c-format -msgid "Unsupported hw address type %d\n" -msgstr "Tipo de dirección hardware %d no soportado\n" - -#: grub-core/net/net.c:813 -#, c-format -msgid "Unsupported address type %d\n" -msgstr "Tipo de dirección %d no soportado\n" - -#: grub-core/net/net.c:1017 grub-core/net/net.c:1131 -msgid "three arguments expected" -msgstr "se esperaban tres parámetros" - -#: grub-core/net/net.c:1023 -msgid "card not found" -msgstr "tarjeta no encontrada" - -#. TRANSLATORS: it refers to the network address. -#: grub-core/net/net.c:1167 -msgid "temporary" -msgstr "temporal" - -#: grub-core/net/net.c:1190 -#, c-format -msgid "Unknown address type %d\n" -msgstr "Tipo de dirección %d desconocido\n" - -#: grub-core/net/net.c:1298 -msgid "no server is specified" -msgstr "no se ha especificado un servidor" - -#: grub-core/net/net.c:1637 -#, c-format -msgid "timeout reading `%s'" -msgstr "expiró el plazo leyendo «%s»" - -#. TRANSLATORS: HWADDRESS stands for -#. "hardware address". -#: grub-core/net/net.c:1762 -msgid "SHORTNAME CARD ADDRESS [HWADDRESS]" -msgstr "NOMBRE_CORTO TARJETA DIRECCIÓN [DIRECCIÓN_HW]" - -#: grub-core/net/net.c:1763 -msgid "Add a network address." -msgstr "Añade una dirección de red." - -#: grub-core/net/net.c:1766 -msgid "[CARD [HWADDRESS]]" -msgstr "[TARJETA [DIRECCIÓN_HW]]" - -#: grub-core/net/net.c:1767 -msgid "Perform an IPV6 autoconfiguration" -msgstr "Realiza una autoconfiguración IPV6" - -#: grub-core/net/net.c:1770 grub-core/net/net.c:1777 -msgid "SHORTNAME" -msgstr "NOMBRE_CORTO" - -#: grub-core/net/net.c:1771 -msgid "Delete a network address." -msgstr "Borra una dirección de red." - -#. TRANSLATORS: "gw" is a keyword. -#: grub-core/net/net.c:1774 -msgid "SHORTNAME NET [INTERFACE| gw GATEWAY]" -msgstr "NOMBRE_CORTO RED [INTERFAZ| gw PASARELA]" - -#: grub-core/net/net.c:1775 -msgid "Add a network route." -msgstr "Añade una ruta de red." - -#: grub-core/net/net.c:1778 -msgid "Delete a network route." -msgstr "Borra una ruta de red." - -#: grub-core/net/net.c:1780 -msgid "list network routes" -msgstr "enumera las rutas de red" - -#: grub-core/net/net.c:1782 -msgid "list network cards" -msgstr "enumera las tarjetas de red" - -#: grub-core/net/net.c:1784 -msgid "list network addresses" -msgstr "enumera las direcciones de red" - -#: grub-core/net/tcp.c:681 -msgid "connection refused" -msgstr "conexión rechazada" - -#: grub-core/net/tcp.c:684 -msgid "connection timeout" -msgstr "conexión expirada" - -#: grub-core/normal/auth.c:220 -msgid "Enter username: " -msgstr "Introduzca el nombre de usuario: " - -#: grub-core/normal/auth.c:269 -msgid "[USERLIST]" -msgstr "[LISTA_DE_USUARIOS]" - -#: grub-core/normal/auth.c:270 -msgid "Check whether user is in USERLIST." -msgstr "Comprobar si el usuario está en la LISTA_DE_USUARIOS." - -#: grub-core/normal/cmdline.c:174 grub-core/normal/menu_entry.c:1068 -msgid "Possible commands are:" -msgstr "Las órdenes posibles son:" - -#: grub-core/normal/cmdline.c:177 grub-core/normal/menu_entry.c:1072 -msgid "Possible devices are:" -msgstr "Los dispositivos posibles son:" - -#: grub-core/normal/cmdline.c:180 grub-core/normal/menu_entry.c:1076 -msgid "Possible files are:" -msgstr "Los ficheros posibles son:" - -#: grub-core/normal/cmdline.c:183 grub-core/normal/menu_entry.c:1080 -msgid "Possible partitions are:" -msgstr "Las particiones posibles son:" - -#: grub-core/normal/cmdline.c:186 grub-core/normal/menu_entry.c:1084 -msgid "Possible arguments are:" -msgstr "Los parámetros posibles son:" - -#. TRANSLATORS: this message is used if none of above matches. -#. This shouldn't happen but please use the general term for -#. "thing" or "object". -#: grub-core/normal/cmdline.c:192 grub-core/normal/menu_entry.c:1088 -msgid "Possible things are:" -msgstr "Objetos posibles:" - -#: grub-core/normal/color.c:81 -#, c-format -msgid "Warning: syntax error (missing slash) in `%s'\n" -msgstr "Aviso: error de sintaxis (falta una barra) en «%s»\n" - -#: grub-core/normal/color.c:90 -#, c-format -msgid "Warning: invalid foreground color `%s'\n" -msgstr "Aviso: color de principal «%s» no válido\n" - -#: grub-core/normal/color.c:96 -#, c-format -msgid "Warning: invalid background color `%s'\n" -msgstr "Aviso: color de fondo «%s» no válido\n" - -#: grub-core/normal/context.c:206 -msgid "ENVVAR [ENVVAR] ..." -msgstr "VARIABLE_DE_ENTORNO [VARIABLE_DE_ENTORNO] ..." - -#: grub-core/normal/context.c:207 -msgid "Export variables." -msgstr "Exporta variables." - -#: grub-core/normal/datetime.c:25 -msgid "Sunday" -msgstr "Domingo" - -#: grub-core/normal/datetime.c:26 -msgid "Monday" -msgstr "Lunes" - -#: grub-core/normal/datetime.c:27 -msgid "Tuesday" -msgstr "Martes" - -#: grub-core/normal/datetime.c:28 -msgid "Wednesday" -msgstr "Miércoles" - -#: grub-core/normal/datetime.c:29 -msgid "Thursday" -msgstr "Jueves" - -#: grub-core/normal/datetime.c:30 -msgid "Friday" -msgstr "Viernes" - -#: grub-core/normal/datetime.c:31 -msgid "Saturday" -msgstr "Sábado" - -#: grub-core/normal/dyncmd.c:187 -msgid "module isn't loaded" -msgstr "el módulo no está cargado" - -#: grub-core/normal/main.c:211 -#, c-format -msgid "GNU GRUB version %s" -msgstr "GNU GRUB versión %s" - -#: grub-core/normal/main.c:360 -msgid "ESC at any time exits." -msgstr "Se puede salir en cualquier momento pulsando «ESC»." - -#: grub-core/normal/main.c:363 -#, c-format -msgid "" -"Minimal BASH-like line editing is supported. For the first word, TAB lists " -"possible command completions. Anywhere else TAB lists possible device or " -"file completions. %s" -msgstr "" -"Se soporta una edición de línea mínima al estilo de BASH. «TAB» enumera las " -"posibles órdenes a completar para la primera palabra. En cualquier otro lado " -"«TAB» muestra una lista de posibles dispositivos o ficheros a completar. %s" - -#. TRANSLATORS: it's command line prompt. -#: grub-core/normal/main.c:395 -msgid ">" -msgstr "es>" - -#. TRANSLATORS: it's command line prompt. -#: grub-core/normal/main.c:398 -msgid "grub>" -msgstr "grub_es>" - -#: grub-core/normal/main.c:518 -msgid "Clear the screen." -msgstr "Limpia la pantalla." - -#: grub-core/normal/main.c:527 -msgid "Enter normal mode." -msgstr "Entrar en el modo normal." - -#: grub-core/normal/main.c:529 -msgid "Exit from normal mode." -msgstr "Salir del modo normal." - -#: grub-core/normal/menu.c:66 grub-core/normal/menu_entry.c:1449 -msgid "Press any key to continue..." -msgstr "Presione cualquier tecla para continuar..." - -#: grub-core/normal/menu.c:815 -#, c-format -msgid "Booting `%s'" -msgstr "Arrancando «%s»" - -# Miguel: He traducido "fallback" por entrada de reserva, -# puesto que en el menú se puede seleccionar una entrada por -# si falla la predeterminada. -#: grub-core/normal/menu.c:827 -#, c-format -msgid "Falling back to `%s'" -msgstr "Arrancando la entrada de reserva «%s»" - -#: grub-core/normal/menu.c:843 -msgid "Failed to boot both default and fallback entries.\n" -msgstr "No se pudo arrancar la entrada predeterminada ni la de reserva.\n" - -# Miguel: Prefier añadir la preposición «con» para especificar que se usa, -# lo que el usuario ve que arranca es el sistema operativo normalmente. -#: grub-core/normal/menu_entry.c:1171 -msgid "Booting a command list" -msgstr "Arrancando con una lista de órdenes" - -#: grub-core/normal/menu_text.c:160 -msgid "" -"Minimum Emacs-like screen editing is supported. TAB lists completions. Press " -"Ctrl-x or F10 to boot, Ctrl-c or F2 for a command-line or ESC to discard " -"edits and return to the GRUB menu." -msgstr "" -"Se soporta una edición de pantalla mínima al estilo de Emacs. «TAB» enumera " -"las posibles palabras a completar. Pulse «Ctrl-x» o «F10» para arrancar, " -"«Ctrl-c» o «F2» para una línea de órdenes o «ESC» para descartar las " -"ediciones y volver al menú de GRUB." - -#: grub-core/normal/menu_text.c:170 -#, c-format -msgid "Use the %C and %C keys to select which entry is highlighted." -msgstr "Use las teclas %C y %C para seleccionar la entrada marcada." - -#. TRANSLATORS: that's the list of binary unit prefixes. -#: grub-core/normal/misc.c:38 -msgid "B" -msgstr "B" - -#: grub-core/normal/misc.c:38 -msgid "KiB" -msgstr "KiB" - -#: grub-core/normal/misc.c:38 -msgid "MiB" -msgstr "MiB" - -#: grub-core/normal/misc.c:38 -msgid "GiB" -msgstr "GiB" - -#: grub-core/normal/misc.c:38 -msgid "TiB" -msgstr "TiB" - -#: grub-core/normal/misc.c:38 -msgid "PiB" -msgstr "PiB" - -#. TRANSLATORS: that's the list of binary unit prefixes. -#: grub-core/normal/misc.c:40 -msgid "K" -msgstr "K" - -#: grub-core/normal/misc.c:40 -msgid "M" -msgstr "M" - -#: grub-core/normal/misc.c:40 -msgid "G" -msgstr "G" - -#: grub-core/normal/misc.c:40 -msgid "T" -msgstr "T" - -#: grub-core/normal/misc.c:40 -msgid "P" -msgstr "P" - -#. TRANSLATORS: that's the list of binary unit prefixes. -#: grub-core/normal/misc.c:42 -msgid "B/s" -msgstr "B/s" - -#: grub-core/normal/misc.c:42 -msgid "KiB/s" -msgstr "KiB/s" - -#: grub-core/normal/misc.c:42 -msgid "MiB/s" -msgstr "MiB/s" - -#: grub-core/normal/misc.c:42 -msgid "GiB/s" -msgstr "GiB/s" - -#: grub-core/normal/misc.c:42 -msgid "TiB/s" -msgstr "TiB/s" - -#: grub-core/normal/misc.c:42 -msgid "PiB/s" -msgstr "PiB/s" - -#: grub-core/normal/misc.c:96 -#, c-format -msgid "Partition %s:" -msgstr "Partición %s:" - -#: grub-core/normal/misc.c:101 -#, c-format -msgid "Device %s:" -msgstr "Dispositivo %s:" - -#: grub-core/normal/misc.c:107 -msgid "Filesystem cannot be accessed" -msgstr "No se puede acceder al sistema de ficheros" - -#: grub-core/normal/misc.c:121 -#, c-format -msgid "Filesystem type %s" -msgstr "Sistema de ficheros de tipo %s" - -#: grub-core/normal/misc.c:131 -#, c-format -msgid "- Label `%s'" -msgstr "- Etiqueta «%s»" - -# Miguel: La fecha se muestra en el formato usado habitualmente en -# castellano: "día/mes/año", la hora se mantiene igual y el día de -# la semana se pasa al principio. -#. TRANSLATORS: Arguments are year, month, day, hour, minute, -#. second, day of the week (translated). -#: grub-core/normal/misc.c:148 -#, c-format -msgid "- Last modification time %d-%02d-%02d %02d:%02d:%02d %s" -msgstr "" -"- Fecha de la última modificación %7$s %3$02d/%2$02d/%1$d %4$02d:%5$02d:" -"%6$02d" - -#: grub-core/normal/misc.c:171 -msgid "No known filesystem detected" -msgstr "No se han detectado sistemas de ficheros conocidos" - -#: grub-core/normal/misc.c:174 -#, c-format -msgid " - Partition start at %llu%sKiB" -msgstr " - La partición comienza en %llu%sKiB" - -#: grub-core/normal/misc.c:178 -#, c-format -msgid " - Sector size %uB" -msgstr " - Tamaño del sector %uB" - -#: grub-core/normal/misc.c:180 -msgid " - Total size unknown" -msgstr " - Tamaño total desconocido" - -#: grub-core/normal/misc.c:182 -#, c-format -msgid " - Total size %llu%sKiB" -msgstr " - Tamaño total %llu%sKiB" - -#. TRANSLATORS: Replace dot with appropriate decimal separator for -#. your language. -#: grub-core/normal/misc.c:186 -msgid ".5" -msgstr ",5" - -# Madre, yo al oro me humillo, -# él es mi amante y mi amado, -# pues de puro enamorado -# de continuo anda amarillo... -# (Fco. de Quevedo) -# -# Ah, creo que no se referían a esto... ;) -# En serio, ¿como puede dar para más de una línea? -#. TRANSLATORS: This has to fit on one line. It's ok to include few -#. words but don't write poems. -#: grub-core/normal/term.c:82 -msgid "--MORE--" -msgstr "--MÃS--" - -#: grub-core/osdep/aros/config.c:92 grub-core/osdep/unix/config.c:137 -#: grub-core/osdep/windows/config.c:55 -#, c-format -msgid "cannot open configuration file `%s': %s" -msgstr "no se puede abrir el fichero de configuración «%s»: %s" - -#: grub-core/osdep/basic/compress.c:8 grub-core/osdep/basic/compress.c:14 -#: grub-core/osdep/basic/compress.c:20 -msgid "no compression is available for your platform" -msgstr "no hay compresión disponible en su plataforma" - -#: grub-core/osdep/basic/no_platform.c:30 -#: grub-core/osdep/windows/platform.c:418 -msgid "no IEEE1275 routines are available for your platform" -msgstr "no hay rutinas IEEE1275 disponibles para su plataforma" - -#: grub-core/osdep/basic/no_platform.c:38 -msgid "no EFI routines are available for your platform" -msgstr "no hay rutinas EFI disponibles para su plataforma" - -#: grub-core/osdep/basic/no_platform.c:45 -#: grub-core/osdep/windows/platform.c:425 -msgid "no SGI routines are available for your platform" -msgstr "no hay rutinas SGI disponibles para su plataforma" - -#. TRANSLATORS: The OS itself may very well have a random -#. number generator but GRUB doesn't know how to access it. -#: grub-core/osdep/basic/random.c:42 -msgid "no random number generator is available for your OS" -msgstr "no hay disponible un generador de números aleatorios para su SO" - -#: grub-core/osdep/devmapper/getroot.c:81 -msgid "Failed to create `device-mapper' tree" -msgstr "No se pudo crear el árbol de «device-mapper»" - -#: grub-core/osdep/devmapper/getroot.c:197 -#: grub-core/osdep/freebsd/getroot.c:202 -#, c-format -msgid "can't mount encrypted volume `%s': %s" -msgstr "no se puede montar el volumen cifrado «%s»: %s" - -#. TRANSLATORS: geom is the name of (k)FreeBSD device framework. -#. Usually left untranslated. -#. -#: grub-core/osdep/freebsd/getroot.c:82 grub-core/osdep/freebsd/getroot.c:164 -#: grub-core/osdep/freebsd/getroot.c:258 grub-core/osdep/freebsd/getroot.c:316 -msgid "couldn't open geom" -msgstr "no se pudo abrir «geom»" - -#: grub-core/osdep/freebsd/getroot.c:182 grub-core/osdep/freebsd/getroot.c:277 -msgid "couldn't find geli consumer" -msgstr "no se pudo encontrar el cliente «geli»" - -#: grub-core/osdep/freebsd/getroot.c:282 -msgid "couldn't retrieve geli UUID" -msgstr "no se pudo obtener el UUID «geli»" - -#. TRANSLATORS: geom is the name of (k)FreeBSD device framework. -#. Usually left untranslated. "part" is the identifier of one of its -#. classes. -#: grub-core/osdep/freebsd/getroot.c:325 -msgid "couldn't find geom `part' class" -msgstr "no se pudo encontrar la clase «part» de «geom»" - -#: grub-core/osdep/freebsd/hostdisk.c:72 grub-core/osdep/linux/hostdisk.c:93 -msgid "unaligned device size" -msgstr "tamaño de dispositivo desalineado" - -#: grub-core/osdep/generic/blocklist.c:56 -#, c-format -msgid "attempting to read the core image `%s' from GRUB" -msgstr "intentado leer la imagen principal «%s» de GRUB" - -#: grub-core/osdep/generic/blocklist.c:57 -#, c-format -msgid "attempting to read the core image `%s' from GRUB again" -msgstr "intentado leer de nuevo la imagen principal «%s» de GRUB" - -#: grub-core/osdep/generic/blocklist.c:115 -#, c-format -msgid "cannot read `%s' correctly" -msgstr "no se puede leer «%s» correctamente" - -#: grub-core/osdep/generic/blocklist.c:126 -msgid "failed to read the sectors of the core image" -msgstr "falló la lectura de sectores de la imagen principal" - -#. TRANSLATORS: On GNU/Hurd, a "translator" is similar to a filesystem -#. mount, but handled by a userland daemon, whose invocation command line -#. is being fetched here. First %s is the file being looked at (for which -#. we are fetching the "translator" command line), second %s is the error -#. message. -#. -#: grub-core/osdep/hurd/getroot.c:79 -#, c-format -msgid "cannot get translator command line for path `%s': %s" -msgstr "" -"no se pudo obtener la línea de órdenes del traductor para la ruta «%s»: %s" - -#: grub-core/osdep/hurd/getroot.c:82 -#, c-format -msgid "translator command line is empty for path `%s'" -msgstr "la línea de órdenes del traductor está vacía para la ruta «%s»" - -#. TRANSLATORS: we expect to get something like -#. /hurd/foobar --option1 --option2=baz /dev/something -#. -#: grub-core/osdep/hurd/getroot.c:98 -#, c-format -msgid "" -"translator `%s' for path `%s' has several non-option words, at least `%s' " -"and `%s'" -msgstr "" -"el traductor «%s» tiene varias palabras que no son opciones para la ruta " -"«%s», al menos «%s» y «%s»" - -#. TRANSLATORS: we expect to get something like -#. /hurd/foobar --option1 --option2=baz /dev/something -#. -#: grub-core/osdep/hurd/getroot.c:109 -#, c-format -msgid "" -"translator `%s' for path `%s' is given only options, cannot find device part" -msgstr "" -"el traductor «%s» tiene únicamente opciones para la ruta «%s», no se pudo " -"encontrar el parámetro del dispositivo" - -#: grub-core/osdep/hurd/hostdisk.c:73 -#, c-format -msgid "Storage information for `%s' does not include type" -msgstr "La información de almacenamiento para «%s» no incluye el tipo" - -#: grub-core/osdep/hurd/hostdisk.c:75 -#, c-format -msgid "`%s' is not a local disk" -msgstr "«%s» no es un disco local" - -#: grub-core/osdep/hurd/hostdisk.c:78 -#, c-format -msgid "" -"Storage information for `%s' indicates neither a plain partition nor a plain " -"disk" -msgstr "" -"La información de almacenamiento para «%s» no indica ni una partición ni un " -"disco" - -#: grub-core/osdep/linux/blocklist.c:81 grub-core/osdep/linux/blocklist.c:96 -#: grub-core/osdep/linux/blocklist.c:122 -#, c-format -msgid "can't retrieve blocklists: %s" -msgstr "no se pudieron obtener las listas de bloques: %s" - -#: grub-core/osdep/linux/blocklist.c:84 -msgid "blocksize is not divisible by 512" -msgstr "el tamaño de bloque no es divisible por 512" - -#: grub-core/osdep/linux/blocklist.c:86 -msgid "invalid zero blocksize" -msgstr "tamaño de bloque cero no válido" - -#: grub-core/osdep/linux/blocklist.c:90 util/setup.c:744 -msgid "can't retrieve blocklists" -msgstr "no se pudieron obtener las listas de bloques" - -#: grub-core/osdep/linux/getroot.c:154 -#, c-format -msgid "ioctl RAID_VERSION error: %s" -msgstr "error en ioctl RAID_VERSION: %s" - -#: grub-core/osdep/linux/getroot.c:160 grub-core/osdep/linux/getroot.c:164 -#, c-format -msgid "unsupported RAID version: %d.%d" -msgstr "versión de RAID no soportada: %d.%d" - -#: grub-core/osdep/linux/getroot.c:169 -#, c-format -msgid "ioctl GET_ARRAY_INFO error: %s" -msgstr "error de ioctl GET_ARRAY_INFO: %s" - -#: grub-core/osdep/linux/getroot.c:178 -#, c-format -msgid "ioctl GET_DISK_INFO error: %s" -msgstr "error de ioctl GET_DISK_INFO: %s" - -#: grub-core/osdep/linux/getroot.c:608 grub-core/osdep/linux/getroot.c:678 -#: grub-core/osdep/linux/hostdisk.c:126 grub-core/osdep/unix/getroot.c:253 -#: grub-core/osdep/unix/getroot.c:642 grub-core/osdep/unix/platform.c:92 -#: grub-core/osdep/unix/platform.c:100 -#, c-format -msgid "Unable to open stream from %s: %s" -msgstr "No se pudo abrir el flujo de %s: %s" - -#: grub-core/osdep/linux/getroot.c:1033 -#, c-format -msgid "unknown kind of RAID device `%s'" -msgstr "Dispositivo de RAID «%s» de tipo desconocido" - -#: grub-core/osdep/linux/ofpath.c:181 -#, c-format -msgid "`obppath' not found in parent dirs of `%s', no IEEE1275 name discovery" -msgstr "" -"no se encontró 'obppath' en los directorios superiores a %s, no se ha " -"descubierto ningún nombre IEEE1275" - -#: grub-core/osdep/linux/ofpath.c:222 grub-core/osdep/unix/getroot.c:505 -#: grub-core/osdep/unix/getroot.c:529 grub-core/osdep/unix/relpath.c:49 -#: util/grub-install.c:984 util/grub-install.c:1331 util/grub-probe.c:323 -#, c-format -msgid "failed to get canonical path of `%s'" -msgstr "no se pudo obtener la ruta canónica de «%s»" - -#: grub-core/osdep/linux/ofpath.c:740 -#, c-format -msgid "unknown device type %s" -msgstr "tipo de dispositivo %s desconocido" - -#: grub-core/osdep/linux/ofpath.c:758 util/ieee1275/grub-ofpathname.c:39 -#, c-format -msgid "Usage: %s DEVICE\n" -msgstr "Uso: %s DISPOSITIVO\n" - -#: grub-core/osdep/unix/exec.c:86 grub-core/osdep/unix/exec.c:172 -#: grub-core/osdep/unix/exec.c:217 -#, c-format -msgid "Unable to fork: %s" -msgstr "No se pudo bifurcar (fork) el proceso: %s" - -# Miguel: Tanto pipe como fork se usan bastantes, además -# he leido algún comentario sobre discusiones sobre fork en -# otras traducciones (¿o era stat?), así que he optado por especificar -# el término inglés entre paréntesis. Cualquier idea es bienvenida. -#: grub-core/osdep/unix/exec.c:166 grub-core/osdep/unix/exec.c:211 -#, c-format -msgid "Unable to create pipe: %s" -msgstr "No se pudo crear una tubería (pipe): %s" - -#: grub-core/osdep/unix/getroot.c:370 -msgid "cannot save the original directory" -msgstr "no se puede almacenar el directorio original" - -#: grub-core/osdep/unix/getroot.c:423 grub-core/osdep/unix/getroot.c:480 -#: grub-core/osdep/unix/getroot.c:489 -msgid "cannot restore the original directory" -msgstr "no se puede restituir el directorio original" - -#. TRANSLATORS: "stat" comes from the name of POSIX function. -#: grub-core/osdep/unix/getroot.c:551 grub-core/osdep/unix/hostdisk.c:61 -#: grub-core/osdep/unix/relpath.c:73 grub-core/osdep/unix/relpath.c:97 -#: util/getroot.c:160 util/getroot.c:162 util/grub-install.c:774 -#: util/grub-macbless.c:70 -#, c-format -msgid "cannot stat `%s': %s" -msgstr "no se puede hacer stat() sobre «%s»: %s" - -#: grub-core/osdep/unix/hostdisk.c:293 -#, c-format -msgid "cannot make temporary file: %s" -msgstr "no se pudo crear el fichero temporal: %s" - -#: grub-core/osdep/unix/hostdisk.c:311 -#, c-format -msgid "cannot make temporary directory: %s" -msgstr "no se pudo crear el directorio temporal: %s" - -#: grub-core/osdep/unix/platform.c:77 -#, c-format -msgid "" -"couldn't find IEEE1275 device path for %s.\n" -"You will have to set `boot-device' variable manually" -msgstr "" -"No se pudo encontrar la ruta del árbol de dispositivos de IEEE1275 para %s.\n" -"Tendrá que fijar la variable «boot-device» manualmente." - -#. TRANSLATORS: This message is shown when required executable `%s' -#. isn't found. -#: grub-core/osdep/unix/platform.c:149 grub-core/osdep/unix/platform.c:189 -#, c-format -msgid "%s: not found" -msgstr "%s: no encontrado" - -#: grub-core/osdep/unix/platform.c:225 -#, c-format -msgid "" -"`nvsetenv' failed. \n" -"You will have to set `boot-device' variable manually. At the IEEE1275 " -"prompt, type:\n" -" %s\n" -msgstr "" -"«nvsetenv» falló.\n" -"Tendrá que fijar la variable «boot-device» manualmente. Escriba en la línea " -"de órdenes IEEE1275:\n" -" %s\n" - -#: grub-core/osdep/unix/platform.c:240 -msgid "You will have to set `SystemPartition' and `OSLoader' manually." -msgstr "Tendrá que fijar «SystemPartition» and «OSLoader» manualmente." - -#. TRANSLATORS: canonical pathname is the -#. complete one e.g. /etc/fstab. It has -#. to contain `/' normally, if it doesn't -#. we're in trouble and throw this error. -#: grub-core/osdep/unix/relpath.c:90 -msgid "no `/' in canonical filename" -msgstr "ninguna barra «/» en el nombre canónico del fichero" - -#: grub-core/osdep/windows/hostdisk.c:151 -msgid "cygwin_conv_path() failed" -msgstr "falló cygwin_conv_path()" - -#: grub-core/osdep/windows/hostdisk.c:501 util/grub-install.c:570 -msgid "couldn't retrieve random data" -msgstr "no se pudieron obtener datos aleatorios" - -#: grub-core/osdep/windows/platform.c:97 -msgid "Insufficient privileges to access firmware, assuming BIOS" -msgstr "Privilegios insuficientes para acceder al firmware, asumiendo BIOS" - -#: grub-core/osdep/windows/platform.c:225 -msgid "no EFI routines are available when running in BIOS mode" -msgstr "las rutinas EFI no están disponibles cuando se ejecuta en modo BIOS" - -#: grub-core/osdep/windows/platform.c:240 -msgid "unexpected EFI error" -msgstr "error EFI inesperado" - -#: grub-core/osdep/windows/platform.c:315 -msgid "Couldn't find a free BootNNNN slot" -msgstr "No se pudo encontrar una ranura BootNNNN disponible" - -#: grub-core/partmap/gpt.c:191 -msgid "" -"this GPT partition label contains no BIOS Boot Partition; embedding won't be " -"possible" -msgstr "" -"esta etiqueta de partición GPT no contiene ninguna Partición de Arranque " -"BIOS; el embebido no será posible" - -#: grub-core/partmap/gpt.c:196 -msgid "your BIOS Boot Partition is too small; embedding won't be possible" -msgstr "" -"su Partición de Arranque BIOS es demasiado pequeña; el embebido no será " -"posible" - -#. TRANSLATORS: MBR gap and boot track is the same thing and is the space -#. between MBR and first partitition. If your language translates well only -#. "boot track", you can just use it everywhere. Next two messages are about -#. RAID controllers/software bugs which GRUB has to live with. Please spread -#. the message that these are bugs in other software and not merely -#. suboptimal behaviour. -#: grub-core/partmap/msdos.c:51 -#, c-format -msgid "" -"Sector %llu is already in use by raid controller `%s'; avoiding it. Please " -"ask the manufacturer not to store data in MBR gap" -msgstr "" -"El sector %llu está actualmente en uso por el controlador raid «%s»; " -"evitándolo. Por favor, pida al fabricante que no almacene datos en el " -"espacio posterior al sector de arranque." - -#: grub-core/partmap/msdos.c:54 -#, c-format -msgid "" -"Sector %llu is already in use by the program `%s'; avoiding it. This " -"software may cause boot or other problems in future. Please ask its authors " -"not to store data in the boot track" -msgstr "" -"El sector %llu está actualmente en uso por el programa «%s»; evitándolo. " -"Este programa puede causar problemas de arranque o de otro tipo en el " -"futuro. Por favor, pida a los autores que no almacenen datos en la pista de " -"arranque." - -#: grub-core/partmap/msdos.c:384 -msgid "" -"other software is using the embedding area, and there is not enough room for " -"core.img. Such software is often trying to store data in a way that avoids " -"detection. We recommend you investigate" -msgstr "" -"otro programa está usando el área de embebido, y no hay espacio suficiente " -"para core.img. Dicho programa intenta almacenar datos habitualmente " -"evitando ser detectado. Le recomendamos que investigue" - -#: grub-core/partmap/msdos.c:395 -msgid "" -"this msdos-style partition label has no post-MBR gap; embedding won't be " -"possible" -msgstr "" -"esta etiqueta de partición de tipo msdos no tiene espacio después del sector " -"de arranque; el embebido no será posible" - -#: grub-core/partmap/msdos.c:404 -msgid "your embedding area is unusually small. core.img won't fit in it." -msgstr "" -"su área de embebido es extraordinariamente pequeña. core.img no entrará en " -"ella." - -#: grub-core/parttool/msdospart.c:39 -msgid "Make partition active" -msgstr "Cambia una partición a activa" - -#: grub-core/parttool/msdospart.c:51 -msgid "not a primary partition" -msgstr "no es una partición primaria" - -#: grub-core/parttool/msdospart.c:69 -#, c-format -msgid "Partition %d is active now. \n" -msgstr "La partición %d ahora es activa. \n" - -#: grub-core/parttool/msdospart.c:74 -#, c-format -msgid "Cleared active flag on %d. \n" -msgstr "Desactivada la marca de activa en %d. \n" - -#: grub-core/parttool/msdospart.c:87 -msgid "Change partition type" -msgstr "Cambia el tipo de partición" - -#: grub-core/parttool/msdospart.c:88 -msgid "Set `hidden' flag in partition type" -msgstr "Cambia la etiqueta «hidden» en el tipo de partición" - -#: grub-core/parttool/msdospart.c:130 -#, c-format -msgid "the partition type 0x%x isn't valid" -msgstr "el tipo de partición 0x%x no es válido" - -#. TRANSLATORS: In this case we're actually writing to the disk and actively -#. modifying partition type rather than just defining it. -#: grub-core/parttool/msdospart.c:137 -#, c-format -msgid "Setting partition type to 0x%x\n" -msgstr "Cambiando el tipo de partición a 0x%x\n" - -#. TRANSLATORS: 0 is a quantifier. "break" (similar to bash) -#. can be used e.g. to break 3 loops at once. -#. But asking it to break 0 loops makes no sense. -#: grub-core/script/execute.c:143 -msgid "can't break 0 loops" -msgstr "no se puede salir de 0 bucles" - -#. TRANSLATORS: It's about not being -#. inside a function. "return" can be used only -#. in a function and this error occurs if it's used -#. anywhere else. -#: grub-core/script/execute.c:227 -msgid "not in function body" -msgstr "fuera del cuerpo de una función" - -#: grub-core/script/execute.c:371 -#, c-format -msgid "invalid variable name `%s'" -msgstr "nombre de variable «%s» no válido" - -#: grub-core/script/execute.c:953 -msgid "cannot allocate command buffer" -msgstr "no se pudo reservar el buffer de órdenes" - -#: grub-core/script/lexer.c:144 util/grub-fstest.c:330 -msgid "unexpected end of file" -msgstr "final de fichero inesperado" - -#: grub-core/script/main.c:55 grub-core/script/main.c:57 -#: grub-core/script/main.c:59 grub-core/script/main.c:67 -msgid "[NUM]" -msgstr "[NÚMERO]" - -#: grub-core/script/main.c:55 -msgid "Exit from loops" -msgstr "Sale de bucles" - -#: grub-core/script/main.c:57 -msgid "Continue loops" -msgstr "Continúa bucles" - -#. TRANSLATORS: Positional arguments are -#. arguments $0, $1, $2, ... -#: grub-core/script/main.c:62 -msgid "Shift positional parameters." -msgstr "Rota los parámetros posicionales." - -#: grub-core/script/main.c:64 -msgid "[VALUE]..." -msgstr "[VALOR]..." - -#: grub-core/script/main.c:65 -msgid "Set positional parameters." -msgstr "Cambia los parámetros posicionales." - -# Miguel: Tengo que mirar también las traducciones de Bash... -#. TRANSLATORS: It's a command description -#. and "Return" is a verb, not a noun. The -#. command in question is "return" and -#. has exactly the same semanics as bash -#. equivalent. -#: grub-core/script/main.c:73 -msgid "Return from a function." -msgstr "Vuelve de una función." - -#: grub-core/term/gfxterm_background.c:176 -msgid "[-m (stretch|normal)] FILE" -msgstr "[-m (stretch|normal)] FICHERO" - -#: grub-core/term/gfxterm_background.c:177 -msgid "Load background image for active terminal." -msgstr "Carga la imagen de fondo para el terminal activo." - -#: grub-core/term/gfxterm_background.c:182 util/grub-install.c:302 -#: util/grub-install.c:303 util/grub-mkrescue.c:107 util/grub-mkrescue.c:108 -#: util/grub-render-label.c:61 util/grub-render-label.c:63 -msgid "COLOR" -msgstr "COLOR" - -#: grub-core/term/gfxterm_background.c:183 -msgid "Set background color for active terminal." -msgstr "Cambia el color de fondo para el terminal activo." - -#: grub-core/term/i386/coreboot/cbmemc.c:139 -msgid "Show CBMEM console content." -msgstr "Muestra los contenidos de la consola CBMEM." - -#: grub-core/term/serial.c:57 -msgid "Set the serial unit." -msgstr "Establece la unidad serie." - -#: grub-core/term/serial.c:58 -msgid "Set the serial port address." -msgstr "Establece la dirección del puerto serie." - -#: grub-core/term/serial.c:59 -msgid "Set the serial port speed." -msgstr "Establece la velocidad del puerto serie." - -#: grub-core/term/serial.c:60 -msgid "Set the serial port word length." -msgstr "Establece la longitud de palabra del puerto serie." - -#: grub-core/term/serial.c:61 -msgid "Set the serial port parity." -msgstr "Establece la paridad del puerto serie." - -#: grub-core/term/serial.c:62 -msgid "Set the serial port stop bits." -msgstr "Establece los bits de parada del puerto serie." - -#: grub-core/term/serial.c:63 -msgid "Set the base frequency." -msgstr "Establece la frecuencia base." - -#: grub-core/term/serial.c:64 -msgid "Enable/disable RTS/CTS." -msgstr "Activa/desactiva RTS/CTS." - -#: grub-core/term/serial.c:218 -#, c-format -msgid "serial port `%s' isn't found" -msgstr "Puerto serie «%s» no encontrado" - -#: grub-core/term/serial.c:254 -msgid "unsupported serial port flow control" -msgstr "control de flujo del puerto serie no soportado" - -#: grub-core/term/serial.c:429 -msgid "[OPTIONS...]" -msgstr "[OPCIONES...]" - -#: grub-core/term/serial.c:430 -msgid "Configure serial port." -msgstr "Configura puerto serie." - -#: grub-core/term/terminfo.c:184 -#, c-format -msgid "unknown terminfo type `%s'" -msgstr "tipo de «terminfo» «%s» desconocido" - -#: grub-core/term/terminfo.c:668 -msgid "ASCII" -msgstr "ASCII" - -#: grub-core/term/terminfo.c:671 -msgid "UTF-8" -msgstr "UTF-8" - -#. TRANSLATORS: visually ordered UTF-8 is a non-compliant encoding -#. based on UTF-8 with right-to-left languages written in reverse. -#. Used on some terminals. Normal UTF-8 is refered as -#. "logically-ordered UTF-8" by opposition. -#: grub-core/term/terminfo.c:677 -msgid "visually-ordered UTF-8" -msgstr "UTF-8 visualmente ordenado" - -#: grub-core/term/terminfo.c:680 -msgid "Unknown encoding" -msgstr "Codificación desconocida" - -#: grub-core/term/terminfo.c:684 -msgid "Current terminfo types:" -msgstr "Tipos actuales de «terminfo»:" - -#: grub-core/term/terminfo.c:699 -msgid "Terminal is ASCII-only [default]." -msgstr "El terminal es únicamente ASCII [predeterminado]." - -#: grub-core/term/terminfo.c:700 -msgid "Terminal is logical-ordered UTF-8." -msgstr "El terminal es UTF-8 lógicamente ordenado." - -#: grub-core/term/terminfo.c:701 -msgid "Terminal is visually-ordered UTF-8." -msgstr "El terminal es UTF-8 visualmente ordenado." - -#: grub-core/term/terminfo.c:703 -msgid "Terminal has specified geometry." -msgstr "El terminal ha especificado su geometría." - -#. TRANSLATORS: "x" has to be entered in, like an identifier, so please don't -#. use better Unicode codepoints. -#: grub-core/term/terminfo.c:706 -msgid "WIDTHxHEIGHT." -msgstr "ANCHURAxALTURA." - -#: grub-core/term/terminfo.c:746 -msgid "incorrect terminal dimensions specification" -msgstr "especificación incorrecta de las dimensiones del terminal" - -#: grub-core/term/terminfo.c:776 -#, c-format -msgid "terminal %s isn't found or it's not handled by terminfo" -msgstr "no se ha encontrado el terminal %s o no es manejado por «terminfo»" - -#: grub-core/term/terminfo.c:785 -msgid "[[-a|-u|-v] [-g WxH] TERM [TYPE]]" -msgstr "[[-a|-u|-v] [-g ANCHOxALTO] TERMINAL [TIPO]]" - -#: grub-core/term/terminfo.c:786 -msgid "Set terminfo type of TERM to TYPE.\n" -msgstr "Establece el tipo del TERMINAL de «terminfo» en TIPO.\n" - -#. TRANSLATORS: this is the BLOCK-argument, not -#. environment block. -#: grub-core/tests/test_blockarg.c:49 -msgid "Print and execute block argument." -msgstr "Imprime y ejecuta el bloque pasado como parámetro." - -# Miguel: Imágen visual, si produce alguna confusión con -# fichero imágen (de disco, por ejemplo) se puede cambiar por -# mapa de bits. -#. TRANSLATORS: We're speaking about bitmap images like -#. JPEG or PNG. -#: grub-core/video/bitmap.c:209 -#, c-format -msgid "bitmap file `%s' is of unsupported format" -msgstr "no está soportado el formato de la imágen «%s»" - -#: grub-core/video/i386/pc/vbe.c:1191 -#, c-format -msgid " VBE info: version: %d.%d OEM software rev: %d.%d\n" -msgstr "" -" Información VBE: versión: %d.%d Revisión del software del vendedor: %d." -"%d\n" - -#: grub-core/video/i386/pc/vbe.c:1198 -#, c-format -msgid " total memory: %d KiB\n" -msgstr " memoria total: %d KiB\n" - -#: grub-core/video/video.c:596 grub-core/video/video.c:762 -msgid "no suitable video mode found" -msgstr "no se encontró un modo de vídeo apropiado" - -#: include/grub/crypto.h:403 -msgid "access denied" -msgstr "acceso denegado" - -#: include/grub/util/install.h:30 include/grub/util/install.h:35 -msgid "MODULES" -msgstr "MÓDULOS" - -#: include/grub/util/install.h:31 -msgid "pre-load specified modules MODULES" -msgstr "pre-carga los módulos MÓDULOS especificados" - -#: include/grub/util/install.h:33 -msgid "embed a specific DTB" -msgstr "embebe un DTB específico" - -# Miguel: Será all o todas? -#: include/grub/util/install.h:36 -msgid "install only MODULES and their dependencies [default=all]" -msgstr "instala únicamente MODULOS y sus dependencias [predeterminado=all]" - -#: include/grub/util/install.h:37 -msgid "THEMES" -msgstr "TEMAS" - -#: include/grub/util/install.h:38 -#, c-format -msgid "install THEMES [default=%s]" -msgstr "install TEMAS [predeterminado=%s]" - -#: include/grub/util/install.h:39 -msgid "FONTS" -msgstr "FUENTES" - -#: include/grub/util/install.h:40 -#, c-format -msgid "install FONTS [default=%s]" -msgstr "install FUENTES [predeterminado=%s]" - -# Miguel: ¿¿LOCALES?? -#: include/grub/util/install.h:41 -msgid "LOCALES" -msgstr "LOCALES" - -# Miguel: ¿¿LOCALES?? -#: include/grub/util/install.h:42 -msgid "install only LOCALES [default=all]" -msgstr "instala únicamente LOCALES [predeterminado=all]" - -#: include/grub/util/install.h:45 -msgid "compress GRUB files [optional]" -msgstr "comprime los ficheros de GRUB [opcional]" - -#: include/grub/util/install.h:48 util/grub-mkimage.c:83 -msgid "choose the compression to use for core image" -msgstr "selecciona la compresión a usar para la imagen principal" - -#. TRANSLATORS: platform here isn't identifier. It can be translated. -#: include/grub/util/install.h:51 include/grub/util/install.h:54 -#: util/grub-mkimage.c:66 -#, c-format -msgid "use images and modules under DIR [default=%s/]" -msgstr "" -"usa imágenes y módulos en el DIRECTORO [predeterminado=%s/]" - -#: include/grub/util/install.h:57 -#, c-format -msgid "use translations under DIR [default=%s]" -msgstr "usa las traducciónes en el DIRECTORO [predeterminado=%s]" - -#: include/grub/util/install.h:60 -#, c-format -msgid "use themes under DIR [default=%s]" -msgstr "usa los temas en el DIRECTORO [predeterminado=%s]" - -#: include/grub/util/install.h:65 util/grub-mkimage.c:78 -msgid "embed FILE as public key for signature checking" -msgstr "embebe el FICHERO como una clave pública para comprobación de firmas" - -#: util/editenv.c:59 util/grub-editenv.c:201 util/grub-install-common.c:535 -#: util/grub-mkimage.c:315 util/setup.c:791 -#, c-format -msgid "cannot sync `%s': %s" -msgstr "no se pudo sincronizar «%s»: %s" - -#: util/editenv.c:64 -#, c-format -msgid "cannot rename the file %s to %s" -msgstr "no se pudo renombrar el fichero %s a %s" - -#: util/getroot.c:402 -#, c-format -msgid "disk does not exist, so falling back to partition device %s" -msgstr "no existe el disco, por lo que se usa la partición de reserva %s" - -#: util/grub-editenv.c:45 util/grub-fstest.c:506 -msgid "Commands:" -msgstr "Órdenes:" - -#: util/grub-editenv.c:47 -msgid "Create a blank environment block file." -msgstr "Crea un fichero de bloques de entorno limpio." - -#: util/grub-editenv.c:49 -msgid "List the current variables." -msgstr "Enumera las variables actuales." - -#. TRANSLATORS: "set" is a keyword. It's a summary of "set" subcommand. -#: util/grub-editenv.c:51 -msgid "set [NAME=VALUE ...]" -msgstr "set [NOMBRE=VALOR ...]" - -#: util/grub-editenv.c:52 -msgid "Set variables." -msgstr "Cambia variables." - -#. TRANSLATORS: "unset" is a keyword. It's a summary of "unset" subcommand. -#: util/grub-editenv.c:54 -msgid "unset [NAME ...]" -msgstr "unset [NOMBRE ...]" - -#: util/grub-editenv.c:55 -msgid "Delete variables." -msgstr "Borra variables." - -#: util/grub-editenv.c:57 -msgid "Options:" -msgstr "Opciones:" - -#: util/grub-editenv.c:84 -msgid "You need to specify at least one command.\n" -msgstr "Se debe especificar al menos una orden.\n" - -#: util/grub-editenv.c:113 -msgid "FILENAME COMMAND" -msgstr "FICHERO ORDEN" - -#: util/grub-editenv.c:114 -msgid "Tool to edit environment block." -msgstr "Herramienta para editar bloques de entorno." - -#: util/grub-editenv.c:116 -#, c-format -msgid "" -"If FILENAME is `-', the default value %s is used.\n" -"\n" -"There is no `delete' command; if you want to delete the whole environment\n" -"block, use `rm %s'." -msgstr "" -"Si FICHERO es «-», el valor por defecto %s es usado.\n" -"\n" -"No existe la orden «borrar»; si quiere borrar el bloque de entorno entero\n" -"use «rm %s»." - -#: util/grub-editenv.c:162 -msgid "invalid environment block" -msgstr "bloque de entorno no válido" - -#: util/grub-editenv.c:217 -#, c-format -msgid "invalid parameter %s" -msgstr "parámetro %s no válido" - -#: util/grub-editenv.c:222 -msgid "environment block too small" -msgstr "bloque de entorno demasiado pequeño" - -#: util/grub-fstest.c:107 -#, c-format -msgid "disk read fails at offset %lld, length %lld" -msgstr "la lectura del disco falló en el desplazamiento %lld, longitud %lld" - -#: util/grub-fstest.c:138 -#, c-format -msgid "invalid skip value %lld" -msgstr "valor de desplazamiento %lld no válido" - -#: util/grub-fstest.c:160 util/grub-fstest.c:246 -#, c-format -msgid "read error at offset %llu: %s" -msgstr "error de lectura en el desplazamiento %llu: %s" - -#: util/grub-fstest.c:210 -#, c-format -msgid "cannot open OS file `%s': %s" -msgstr "no se puede abrir el fichero del SO «%s»: %s" - -#: util/grub-fstest.c:225 util/misc.c:126 -#, c-format -msgid "cannot write to the stdout: %s" -msgstr "no se puede escribir en la salida estándar: %s" - -#: util/grub-fstest.c:259 -#, c-format -msgid "compare fail at offset %llu" -msgstr "falló la comparación en el desplazamiento %llu" - -#: util/grub-fstest.c:280 util/grub-fstest.c:314 -#, c-format -msgid "OS file %s open error: %s" -msgstr "error de apertura en el fichero del SO %s: %s" - -#: util/grub-fstest.c:402 util/grub-mount.c:392 -#, c-format -msgid "`loopback' command fails: %s" -msgstr "la orden «loopback» ha fallado: %s" - -#: util/grub-fstest.c:413 util/grub-mount.c:402 -#, c-format -msgid "`cryptomount' command fails: %s" -msgstr "la orden «cryptmount» ha fallado: %s" - -#: util/grub-fstest.c:474 util/grub-fstest.c:478 -msgid "couldn't retrieve UUID" -msgstr "no se pudo obtener el UUID" - -#: util/grub-fstest.c:507 -msgid "ls PATH" -msgstr "ls RUTA" - -#: util/grub-fstest.c:507 -msgid "List files in PATH." -msgstr "Enumera los archivos en la RUTA. " - -#: util/grub-fstest.c:508 -msgid "cp FILE LOCAL" -msgstr "cp FICHERO LOCAL" - -#: util/grub-fstest.c:508 -msgid "Copy FILE to local file LOCAL." -msgstr "Copia el FICHERO al fichero local LOCAL." - -#: util/grub-fstest.c:509 -msgid "cat FILE" -msgstr "cat FICHERO" - -#: util/grub-fstest.c:509 -msgid "Copy FILE to standard output." -msgstr "Copia el FICHERO a la salida estándar." - -#: util/grub-fstest.c:510 -msgid "cmp FILE LOCAL" -msgstr "cmp FICHERO LOCAL" - -#: util/grub-fstest.c:510 -msgid "Compare FILE with local file LOCAL." -msgstr "Compara el FICHERO con el fichero local LOCAL." - -#: util/grub-fstest.c:511 -msgid "hex FILE" -msgstr "hex FICHERO" - -#: util/grub-fstest.c:511 -msgid "Show contents of FILE in hex." -msgstr "Muestra los contenidos del FICHERO en hexadecimal." - -#: util/grub-fstest.c:512 -msgid "crc FILE" -msgstr "crc FICHERO" - -#: util/grub-fstest.c:512 -msgid "Get crc32 checksum of FILE." -msgstr "Obtiene una comprobación de suma crc32 del FICHERO." - -#: util/grub-fstest.c:513 -msgid "blocklist FILE" -msgstr "blocklist FICHERO" - -#: util/grub-fstest.c:513 -msgid "Display blocklist of FILE." -msgstr "Muestra una lista de bloques del fichero." - -#: util/grub-fstest.c:514 -msgid "xnu_uuid DEVICE" -msgstr "xnu_uuid DISPOSITIVO" - -#: util/grub-fstest.c:514 -msgid "Compute XNU UUID of the device." -msgstr "Calcula el UUID de XNU del dispositivo." - -#. TRANSLATORS: bitmaps are images like e.g. in JPEG. -#: util/grub-fstest.c:517 util/grub-fstest.c:518 util/grub-fstest.c:519 -#: util/grub-mkfont.c:938 util/grub-mkfont.c:951 util/grub-mkfont.c:952 -#: util/grub-mkpasswd-pbkdf2.c:46 util/grub-mkpasswd-pbkdf2.c:47 -#: util/grub-mkpasswd-pbkdf2.c:48 -msgid "NUM" -msgstr "NÚMERO" - -#: util/grub-fstest.c:517 -msgid "Skip N bytes from output file." -msgstr "Salta N bytes del archivo de salida." - -#: util/grub-fstest.c:518 -msgid "Handle N bytes in output file." -msgstr "Maneja N bytes del fichero de salida." - -#: util/grub-fstest.c:519 -msgid "Specify the number of input files." -msgstr "Especifica el número de ficheros de entrada." - -#: util/grub-fstest.c:520 util/grub-mount.c:453 -msgid "Set debug environment variable." -msgstr "Cambia la variable de entorno de depuración." - -#: util/grub-fstest.c:521 util/grub-mount.c:454 -msgid "Mount crypto devices." -msgstr "Monta un dispositivo cifrado." - -#. TRANSLATORS: "prompt" is a keyword. -#: util/grub-fstest.c:524 util/grub-mount.c:457 -msgid "FILE|prompt" -msgstr "FICHERO|prompt" - -#: util/grub-fstest.c:524 util/grub-mount.c:457 -msgid "Load zfs crypto key." -msgstr "No se pudo cargar la clave de cifrado de zfs." - -#: util/grub-fstest.c:526 -msgid "Uncompress data." -msgstr "Descomprime datos." - -#: util/grub-fstest.c:605 -msgid "Invalid disk count.\n" -msgstr "Número de discos no válido.\n" - -#. TRANSLATORS: disk count is optional but if it's there it must -#. be before disk list. So please don't imply disk count as mandatory. -#. -#: util/grub-fstest.c:613 -msgid "Disk count must precede disks list.\n" -msgstr "El número de discos debe preceder a la lista de discos.\n" - -#: util/grub-fstest.c:633 -msgid "No command is specified.\n" -msgstr "Ninguna orden especificada.\n" - -#: util/grub-fstest.c:638 -msgid "Not enough parameters to command.\n" -msgstr "Parámetros insuficientes para la orden.\n" - -#: util/grub-fstest.c:711 -#, c-format -msgid "Invalid command %s.\n" -msgstr "Orden %s no válida.\n" - -#: util/grub-fstest.c:724 -msgid "IMAGE_PATH COMMANDS" -msgstr "RUTA_DE_LA_IMAGEN ÓRDENES" - -#: util/grub-fstest.c:725 util/grub-mount.c:553 -msgid "Debug tool for filesystem driver." -msgstr "Herramienta de depuración para controladores de sistemas de archivos." - -#: util/grub-glue-efi.c:53 -msgid "set input filename for 32-bit part." -msgstr "establece el fichero de entrada para la partición de 32 bits." - -#: util/grub-glue-efi.c:55 -msgid "set input filename for 64-bit part." -msgstr "establece el fichero de entrada para la partición de 64 bits." - -#: util/grub-glue-efi.c:57 util/grub-mklayout.c:55 util/grub-render-label.c:71 -msgid "set output filename. Default is STDOUT" -msgstr "establece el nombre del archivo de salida. El predeterminado es STDOUT" - -#: util/grub-glue-efi.c:94 util/grub-mklayout.c:476 -#: util/grub-mkpasswd-pbkdf2.c:86 util/grub-render-label.c:131 -msgid "[OPTIONS]" -msgstr "[OPCIONES]" - -# Miguel: Traducción libre, lo se. ¿Alguna que suene mejor en castellano? -#: util/grub-glue-efi.c:95 -msgid "Glue 32-bit and 64-bit binary into Apple universal one." -msgstr "Une en un archivo extendido de Apple los ejecutables de 32 y 64 bits." - -#: util/grub-glue-efi.c:116 -msgid "Missing input file\n" -msgstr "Falta un archivo de entrada\n" - -#: util/grub-install-common.c:127 util/grub-install-common.c:151 -#, c-format -msgid "cannot copy `%s' to `%s': %s" -msgstr "no se puede copiar «%s» a «%s»: %s" - -#: util/grub-install-common.c:147 -#, c-format -msgid "can't compress `%s' to `%s'" -msgstr "no se puede comprimir «%s» en «%s»" - -#: util/grub-install-common.c:196 util/grub-install-common.c:552 -#: util/grub-install-common.c:579 util/grub-install-common.c:621 -#, c-format -msgid "cannot open directory `%s': %s" -msgstr "no se puede abrir el directorio «%s»: %s" - -#: util/grub-install-common.c:212 -#, c-format -msgid "cannot delete `%s': %s" -msgstr "no se puede borrar «%s»: %s" - -#: util/grub-install-common.c:324 util/grub-mkimage.c:209 -msgid "grub-mkimage is compiled without XZ support" -msgstr "«grub-mkimage» está compilado sin soporte para XZ" - -#: util/grub-install-common.c:332 util/grub-mkimage.c:217 -#, c-format -msgid "Unknown compression format %s" -msgstr "Formato de compresión %s desconocido" - -#: util/grub-install-common.c:400 -#, c-format -msgid "Unrecognized compression `%s'" -msgstr "Compresión «%s» no reconocida" - -#: util/grub-install-common.c:509 -#, c-format -msgid "unknown target format %s" -msgstr "formato objetivo %s desconocido" - -#: util/grub-install-common.c:700 -#, c-format -msgid "cannot find locale `%s'" -msgstr "no se puede encontrar la localización «%s»" - -#: util/grub-install-common.c:939 -#, c-format -msgid "%s doesn't exist. Please specify --target or --directory" -msgstr "%s no existe. Por favor, especifique --target o --directory" - -#: util/grub-install-common.c:948 util/grub-install-common.c:951 -#, c-format -msgid "invalid modinfo file `%s'" -msgstr "fichero modinfo «%s» no válido" - -#: util/grub-install-common.c:966 -#, c-format -msgid "Unknown platform `%s-%s'" -msgstr "Plataforma «%s-%s» desconocida" - -#: util/grub-install.c:238 -msgid "More than one install device?" -msgstr "¿Más de un dispositivo de instalación?" - -#: util/grub-install.c:251 -#, c-format -msgid "" -"install GRUB images under the directory DIR/%s instead of the %s directory" -msgstr "" -"instala las imágenes de GRUB bajo el directorio DIRECTORIO/%s en vez de en " -"el directorio %s" - -#: util/grub-install.c:256 util/grub-probe.c:734 -msgid "TARGET" -msgstr "OBJETIVO" - -#. TRANSLATORS: "TARGET" as in "target platform". -#: util/grub-install.c:258 -#, c-format -msgid "install GRUB for TARGET platform [default=%s]; available targets: %s" -msgstr "" -"instala GRUB para la plataforma OBJETIVO [predeterminada=%s]; objetivos " -"disponibles: %s" - -#. TRANSLATORS: "may break" doesn't just mean that option wouldn't have any -#. effect but that it will make the resulting install unbootable from HDD. -#. TRANSLATORS: The potential breakage isn't limited to floppies but it's -#. likely to make the install unbootable from HDD. -#: util/grub-install.c:267 util/grub-setup.c:94 -msgid "" -"make the drive also bootable as floppy (default for fdX devices). May break " -"on some BIOSes." -msgstr "" -"hace que la unidad sea arrancable como disco extraíble (predeterminado para " -"dispositivos fdX). Puede provocar fallos en algunas BIOS." - -#: util/grub-install.c:270 -msgid "delete device map if it already exists" -msgstr "borra el mapa de dispositivos si existe" - -#: util/grub-install.c:272 util/grub-setup.c:87 -msgid "install even if problems are detected" -msgstr "instala aunque se encuentren problemas" - -#: util/grub-install.c:274 -msgid "use identifier file even if UUID is available" -msgstr "" -"usa el fichero de identificación, incluso aunque el UUID esté disponible" - -#: util/grub-install.c:276 -msgid "" -"disk module to use (biosdisk or native). This option is only available on " -"BIOS target." -msgstr "" -"módulo de disco a usar (biosdisk o native). Esta opción únicamente está " -"disponible en objetivos con BIOS." - -#: util/grub-install.c:279 -msgid "" -"don't update the `boot-device'/`Boot*' NVRAM variables. This option is only " -"available on EFI and IEEE1275 targets." -msgstr "" -"no actualiza las variables de la NVRAM «boot-device/Boot*». Esta opción está " -"únicamente disponible en los objetivos con EFI o IEEE1275." - -#: util/grub-install.c:282 util/grub-setup.c:89 -msgid "do not probe for filesystems in DEVICE" -msgstr "no busca sistemas de ficheros en DISPOSITIVO" - -#: util/grub-install.c:284 -msgid "do not install bootsector" -msgstr "no instala el sector de arranque" - -#: util/grub-install.c:286 util/grub-setup.c:96 -msgid "" -"Do not apply any reed-solomon codes when embedding core.img. This option is " -"only available on x86 BIOS targets." -msgstr "" -" No aplicar ningún código reed-solomon cuando se embebe core.img. Esta " -"opción únicamente está disponible en objetivos x86 con BIOS." - -#: util/grub-install.c:293 -msgid "" -"the installation device is removable. This option is only available on EFI." -msgstr "" -"el dispositivo de instalación es extraíble. Esta opción únicamente está " -"disponible en EFI." - -#: util/grub-install.c:295 -msgid "ID" -msgstr "IDENTIFICADOR" - -#: util/grub-install.c:296 -msgid "the ID of bootloader. This option is only available on EFI and Macs." -msgstr "" -"el IDENTIFICADOR del cargador de arranque. Esta opción únicamente está " -"disponible en EFI y Macs." - -#: util/grub-install.c:298 -msgid "use DIR as the EFI System Partition root." -msgstr "usa DIRECTORIO como la raíz de la partición del sistema EFI." - -#: util/grub-install.c:300 -msgid "use DIR for PPC MAC install." -msgstr "usa DIRECTORIO para la instalación de MAC PPC." - -#: util/grub-install.c:301 util/grub-mkrescue.c:106 -msgid "use FILE as font for label" -msgstr "usa FICHERO como fuente para la etiqueta" - -#: util/grub-install.c:302 util/grub-mkrescue.c:107 -msgid "use COLOR for label" -msgstr "usa el COLOR para la etiqueta" - -#: util/grub-install.c:303 util/grub-mkrescue.c:108 -msgid "use COLOR for label background" -msgstr "usa el COLOR para el fondo de la etiqueta" - -#: util/grub-install.c:304 util/grub-mkrescue.c:110 -msgid "use STRING as product version" -msgstr "Usa CADENA como versión del producto" - -#: util/grub-install.c:361 -msgid "[OPTION] [INSTALL_DEVICE]" -msgstr "[OPCIÓN] [DISPOSITIVO_DE_INSTALACIÓN]" - -#: util/grub-install.c:362 -msgid "Install GRUB on your drive." -msgstr "Instala GRUB en su dispositivo." - -#: util/grub-install.c:363 -#, c-format -msgid "" -"INSTALL_DEVICE must be system device filename.\n" -"%s copies GRUB images into %s. On some platforms, it may also install GRUB " -"into the boot sector." -msgstr "" -"DISPOSITIVO_DE_INSTALACIÓN debe ser el nombre del sistema de un " -"dispositivo.\n" -"%s copia las imágenes de GRUB en %s. En algunas plataformas, también puede " -"instalar GRUB en el sector de arranque." - -#: util/grub-install.c:672 -#, c-format -msgid "the drive %s is defined multiple times in the device map %s" -msgstr "la unidad %s está definida varias veces en el mapa de dispositivos %s" - -#: util/grub-install.c:878 -msgid "Unable to determine your platform. Use --target." -msgstr "Imposible determinar su plataforma. Use --target." - -#: util/grub-install.c:891 -#, c-format -msgid "Installing for %s platform.\n" -msgstr "Instalando para plataforma %s.\n" - -#: util/grub-install.c:939 -msgid "install device isn't specified" -msgstr "no se ha especificado el dispositivo de instalación" - -#: util/grub-install.c:1057 -msgid "cannot find EFI directory" -msgstr "no se puede encontrar el directorio EFI" - -#: util/grub-install.c:1060 util/grub-install.c:1209 util/grub-install.c:1254 -#: util/grub-macbless.c:76 util/grub-probe.c:329 util/setup.c:316 -#, c-format -msgid "cannot find a device for %s (is /dev mounted?)" -msgstr "no se pudo encontrar un dispositivo para %s (¿está montado /dev?)" - -#: util/grub-install.c:1069 util/grub-install.c:1217 util/grub-install.c:1270 -#: util/grub-install.c:1365 util/grub-macbless.c:80 util/grub-probe.c:372 -#, c-format -msgid "cannot find a GRUB drive for %s. Check your device.map" -msgstr "" -"no se pudo encontrar una unidad de GRUB para %s. Compruebe su device.map" - -#: util/grub-install.c:1087 -#, c-format -msgid "%s doesn't look like an EFI partition" -msgstr "%s no parece una partición EFI." - -#: util/grub-install.c:1129 util/grub-install.c:1614 -msgid "You've found a bug" -msgstr "Has encontrado un error" - -#: util/grub-install.c:1231 -#, c-format -msgid "filesystem on %s is neither HFS nor HFS+" -msgstr "el sistema de ficheros en %s no es HFS ni HFS+" - -#: util/grub-install.c:1299 -#, c-format -msgid "" -"attempt to install to encrypted disk without cryptodisk enabled. Set `%s' in " -"file `%s'" -msgstr "" -"se intentó intalar en un disco cifrado sin habilitar cpytodisk. Fije «%s» en " -"el fichero «%s»" - -#: util/grub-install.c:1410 util/grub-install.c:1772 util/grub-install.c:1872 -#, c-format -msgid "Can't create file: %s" -msgstr "No se pudo crear el fichero: %s" - -#: util/grub-install.c:1491 -msgid "no hints available for your platform. Expect reduced performance" -msgstr "" -"no hay indicaciones disponibles para su plataforma. Espere un rendimiento " -"reducido" - -#. TRANSLATORS: This is a prefix in the log to indicate that usually -#. a command would be executed but due to an option was skipped. -#: util/grub-install.c:1702 -msgid "NOT RUNNING: " -msgstr "NO EJECUTANDOSE: " - -#: util/grub-install.c:1806 -msgid "the chosen partition is not a PReP partition" -msgstr "la partición seleccionada no es una partición PReP" - -#: util/grub-install.c:1811 -msgid "failed to copy Grub to the PReP partition" -msgstr "no se ha podido copiar Grub a la partición PReP" - -#: util/grub-install.c:1816 -#, c-format -msgid "" -"the PReP partition is not empty. If you are sure you want to use it, run dd " -"to clear it: `%s'" -msgstr "" -"La partición PReP no está vacía. Si está seguro de que desea usarla, ejecute " -"dd para limpiarla: «%s»" - -# TODO (MAAV): Repensar -#: util/grub-install.c:1888 util/grub-install.c:1932 -#, c-format -msgid "efibootmgr failed to register the boot entry: %s" -msgstr "efibootmgr no pudo registrar la entrada de arranque: %s" - -#: util/grub-install.c:1916 -msgid "EFI bootloader id isn't specified." -msgstr "No se ha especificado el identificador EFI del cargador de arranque." - -#: util/grub-install.c:1950 -msgid "WARNING: no platform-specific install was performed" -msgstr "" -"AVISO: no se ha realizado una instalación específica para la plataforma" - -#: util/grub-install.c:1957 -msgid "Installation finished. No error reported." -msgstr "Instalación terminada. No se notificó ningún error." - -#: util/grub-macbless.c:101 -msgid "bless for x86-based macs" -msgstr "bendice para macs basados en x86" - -#: util/grub-macbless.c:103 -msgid "bless for ppc-based macs" -msgstr "bendice para macs basados en ppc" - -#: util/grub-macbless.c:136 util/grub-probe.c:823 -msgid "No path or device is specified.\n" -msgstr "No se ha especificado una ruta o un dispositivo.\n" - -#: util/grub-macbless.c:157 -msgid "--ppc PATH|--x86 FILE" -msgstr "--ppc RUTA|--x86 FICHERO" - -#: util/grub-macbless.c:158 -msgid "Mac-style bless on HFS or HFS+" -msgstr "Bendición estilo Mac sobre HFS o HFS+" - -#: util/grub-menulst2cfg.c:44 -#, c-format -msgid "Usage: %s [INFILE [OUTFILE]]\n" -msgstr "Uso: %s [FICHERO_DE_ENTRADA [FICHERO_DE_SALIDA]]\n" - -#: util/grub-mkfont.c:157 -#, c-format -msgid "Freetype Error %d loading glyph 0x%x for U+0x%x%s" -msgstr "Error de Freetype %d cargando el símbolo 0x%x para U+0x%x%s" - -#. TRANSLATORS: These qualifiers are used for cursive typography, -#. mainly Arabic. Note that the terms refer to the visual position -#. and not logical order and if used in left-to-right script then -#. leftmost is initial but with right-to-left script like Arabic -#. rightmost is the initial. -#: util/grub-mkfont.c:165 -msgid " (medial)" -msgstr " (altura de minúsculas)" - -#: util/grub-mkfont.c:166 -msgid " (leftmost)" -msgstr " (margen izquierdo)" - -#: util/grub-mkfont.c:167 -msgid " (rightmost)" -msgstr " (margen derecho)" - -#: util/grub-mkfont.c:481 -#, c-format -msgid "Out of range substitution (%d, %d)\n" -msgstr "Sustitución fuera de rango (%d, %d)\n" - -#. TRANSLATORS: "lookup" is taken directly from font specifications -#. which are formulated as "Under condition X replace LOOKUP with -#. SUBSTITUITION". " -#: util/grub-mkfont.c:506 -#, c-format -msgid "Out of range lookup: %d\n" -msgstr "Búsqueda fuera de rango: %d\n" - -#: util/grub-mkfont.c:514 -#, c-format -msgid "Unsupported substitution type: %d\n" -msgstr "Tipo de sustitución no soportado: %d\n" - -#: util/grub-mkfont.c:550 -#, c-format -msgid "Unsupported substitution specification: %d\n" -msgstr "Especificación de sustitución no soportada: %d\n" - -# Miguel: No tengo mucha idea de esto, ¿alguien tiene mejor -# conocimiento de Unicode sobre este asunto? -#: util/grub-mkfont.c:582 -#, c-format -msgid "Unsupported coverage specification: %d\n" -msgstr "Especificación de cobertura no soportada: %d\n" - -#: util/grub-mkfont.c:622 -#, c-format -msgid "WARNING: unsupported font feature parameters: %x\n" -msgstr "AVISO: parámetros de características de fuente no soportados: %x\n" - -#: util/grub-mkfont.c:936 util/grub-mkrescue.c:98 util/grub-mkstandalone.c:48 -msgid "save output in FILE [required]" -msgstr "almacena la salida en FICHERO [requerida]" - -#. TRANSLATORS: some font files may have multiple faces (fonts). -#. This option is used to chose among them, the first face being '0'. -#. Rarely used. -#: util/grub-mkfont.c:942 -msgid "select face index" -msgstr "seleccione el índice de la tipografía" - -#: util/grub-mkfont.c:943 -msgid "FROM-TO[,FROM-TO]" -msgstr "DE-A[,DE-A]" - -#. TRANSLATORS: It refers to the range of characters in font. -#: util/grub-mkfont.c:945 -msgid "set font range" -msgstr "cambia el rango de fuentes" - -#. TRANSLATORS: "family name" for font is just a generic name without suffix -#. like "Bold". -#: util/grub-mkfont.c:949 -msgid "set font family name" -msgstr "cambia el nombre de la familia tipográfica" - -#: util/grub-mkfont.c:950 -msgid "SIZE" -msgstr "TAMAÑO" - -#: util/grub-mkfont.c:950 -msgid "set font size" -msgstr "cambia el tamaño de las fuentes" - -#: util/grub-mkfont.c:951 -msgid "set font descent" -msgstr "cambia el espacio inferior entre líneas" - -#: util/grub-mkfont.c:952 -msgid "set font ascent" -msgstr "cambia el espacio superior entre líneas" - -#: util/grub-mkfont.c:953 -msgid "convert to bold font" -msgstr "convertir a fuente en negrita" - -#: util/grub-mkfont.c:954 -msgid "force autohint" -msgstr "fuerza auto-indicaciones" - -#: util/grub-mkfont.c:955 -msgid "disable hinting" -msgstr "deshabilita indicaciones" - -#. TRANSLATORS: some fonts contain bitmap rendering for -#. some sizes. This option forces rerendering even if -#. pre-rendered bitmap is available. -#. -#: util/grub-mkfont.c:961 -msgid "ignore bitmap strikes when loading" -msgstr "ignora los mapas de bits existentes al cargar" - -#. TRANSLATORS: It refers to the range of characters in font. -#: util/grub-mkfont.c:1059 util/grub-mkfont.c:1075 -msgid "invalid font range" -msgstr "rango de fuentes no válido" - -#: util/grub-mkfont.c:1151 -msgid "[OPTIONS] FONT_FILES" -msgstr "[OPCIONES] FICHEROS_DE_FUENTES" - -#: util/grub-mkfont.c:1152 -msgid "Convert common font file formats into PF2" -msgstr "Convierte formatos de ficheros de fuentes comunes a PF2" - -#: util/grub-mkfont.c:1182 util/grub-mkrescue.c:483 -#: util/grub-mkstandalone.c:306 -msgid "output file must be specified" -msgstr "el fichero de salida debe ser especificado" - -#: util/grub-mkfont.c:1185 -msgid "FT_Init_FreeType fails" -msgstr "falló FT_Init_FreeType" - -#: util/grub-mkfont.c:1199 -#, c-format -msgid "can't open file %s, index %d: error %d" -msgstr "no se puede abrir el fichero %s, índice %d: error %d" - -#: util/grub-mkfont.c:1229 -#, c-format -msgid "can't set %dx%d font size: Freetype error %d: %s" -msgstr "" -"no se pudo establecer en %dx%d el tamaño de la fuente: Error Freetype %d: %s" - -#: util/grub-mkimage.c:67 -msgid "set prefix directory" -msgstr "cambia el prefijo de directorio" - -#. TRANSLATORS: "memdisk" here isn't an identifier, it can be translated. -#. "embed" is a verb (command description). " -#: util/grub-mkimage.c:71 -msgid "" -"embed FILE as a memdisk image\n" -"Implies `-p (memdisk)/boot/grub' and overrides any prefix supplied " -"previously, but the prefix itself can be overridden by later options" -msgstr "" -"embebe el FICHERO como una imagen de disco de memoria\n" -"Implica «-p (disco_de_memoria)/boot/grub» y se impone sobre cualquier " -"prefijo anteriormente proporcionado, pero el prefijo puede ser modificado " -"por opciones posteriores" - -# TODO (MAAV): Repensar -#: util/grub-mkimage.c:74 -msgid "embed FILE as a device tree (DTB)\n" -msgstr "embebe FICHERO como un árbol de dispositivos (DTB)\n" - -#: util/grub-mkimage.c:76 -msgid "embed FILE as an early config" -msgstr "embebe el FICHERO como una configuración temprana" - -#. TRANSLATORS: NOTE is a name of segment. -#: util/grub-mkimage.c:80 -msgid "add NOTE segment for CHRP IEEE1275" -msgstr "añade un segmento «NOTE» para el CHRP IEEE1275" - -#: util/grub-mkimage.c:81 -msgid "output a generated image to FILE [default=stdout]" -msgstr "imprimir la imagen generada en el FICHERO [predeterminado=stdout]" - -#: util/grub-mkimage.c:82 -msgid "FORMAT" -msgstr "FORMATO" - -#: util/grub-mkimage.c:100 util/grub-mkstandalone.c:62 -msgid "generate an image in FORMAT" -msgstr "genera una imagen en el FORMATO deseado" - -#: util/grub-mkimage.c:101 util/grub-mkstandalone.c:63 -msgid "available formats:" -msgstr "formatos disponibles:" - -#: util/grub-mkimage.c:152 util/grub-mkstandalone.c:96 -#, c-format -msgid "unknown target format %s\n" -msgstr "formato objetivo %s desconocido\n" - -#: util/grub-mkimage.c:242 -msgid "[OPTION]... [MODULES]" -msgstr "[OPCIÓN]... [MÓDULOS]" - -#: util/grub-mkimage.c:243 -msgid "Make a bootable image of GRUB." -msgstr "Genera una imagen arrancable de GRUB." - -#: util/grub-mkimage.c:273 util/grub-mkstandalone.c:309 -msgid "Target format not specified (use the -O option)." -msgstr "No se ha especificado el formato objetivo (use la opción -O)." - -#: util/grub-mkimage.c:282 -msgid "Prefix not specified (use the -p option)." -msgstr "Prefijo no especificado (use la opción -p)." - -#: util/grub-mkimage.c:318 util/setup.c:793 -#, c-format -msgid "cannot close `%s': %s" -msgstr "no se puede cerrar «%s»: %s" - -#: util/grub-mkimagexx.c:2191 -#, c-format -msgid "" -"`%s' is miscompiled: its start address is 0x%llx instead of 0x%llx: ld.gold " -"bug?" -msgstr "" -"«%s» está mal compilado: su dirección de inicio es 0x%llx en vez de 0x%llx: " -"¿error en ld.gold?" - -#: util/grub-mklayout.c:53 -msgid "set input filename. Default is STDIN" -msgstr "establece el fichero de salida. El predeterminado es STDOUT" - -#. TRANSLATORS: scan identifier is keyboard key symbolic name. -#: util/grub-mklayout.c:307 -#, c-format -msgid "Unknown keyboard scan identifier %s\n" -msgstr "Identificador de tecla %s desconocido\n" - -#. TRANSLATORS: scan code is keyboard key numeric identifier. -#: util/grub-mklayout.c:390 util/grub-mklayout.c:418 -#, c-format -msgid "Unknown keyboard scan code 0x%02x\n" -msgstr "Código de tecla 0x%02x desconocido\n" - -#. TRANSLATORS: this error is triggered when input doesn't contain any -#. key descriptions. -#: util/grub-mklayout.c:438 -msgid "ERROR: no valid keyboard layout found. Check the input.\n" -msgstr "" -"ERROR: no se ha encontrado ninguna distribución de teclado válida. Compruebe " -"la entrada.\n" - -#. TRANSLATORS: "one" is a shortcut for "keyboard layout". -#: util/grub-mklayout.c:478 -msgid "Generate GRUB keyboard layout from Linux console one." -msgstr "" -"Genera una distribución de teclado de GRUB a partir de una de consola de " -"Linux." - -#: util/grub-mknetdir.c:47 -msgid "root directory of TFTP server" -msgstr "directorio raíz del servidor TFTP" - -#: util/grub-mknetdir.c:49 -msgid "relative subdirectory on network server" -msgstr "directorio relativo en el servidor de red" - -#: util/grub-mknetdir.c:88 -msgid "" -"Prepares GRUB network boot images at net_directory/subdir assuming " -"net_directory being TFTP root." -msgstr "" -"Prepara las imágenes de arranque en red de GRUB en directorio_red/" -"subdirectorio asumiendo que directorio_red es la raiz de TFTP." - -#: util/grub-mknetdir.c:146 -#, c-format -msgid "unsupported platform %s" -msgstr "plataforma %s no soportada" - -#. TRANSLATORS: First %s is replaced by platform name. Second one by filename. -#: util/grub-mknetdir.c:165 -#, c-format -msgid "" -"Netboot directory for %s created. Configure your DHCP server to point to %s\n" -msgstr "" -"Creado directorio «Netboot» para %s. Configure su servidor DHCP para que " -"apunte a %s\n" - -#: util/grub-mkpasswd-pbkdf2.c:46 -msgid "Number of PBKDF2 iterations" -msgstr "Número de iteraciones PBKDF2" - -#: util/grub-mkpasswd-pbkdf2.c:47 -msgid "Length of generated hash" -msgstr "Longitud del hash generado" - -# Miguel: De nuevo a vueltas con el hash. 'Salt' es un número o -# una cadena aleatoria que se añade para aumentar el tamaño de -# los datos a cifrar/calcular el hash. -#: util/grub-mkpasswd-pbkdf2.c:48 -msgid "Length of salt" -msgstr "Longitud del 'salt'" - -#: util/grub-mkpasswd-pbkdf2.c:87 -msgid "Generate PBKDF2 password hash." -msgstr "Genera un hash de contraseña PBKDF2." - -#: util/grub-mkpasswd-pbkdf2.c:144 util/grub-mkpasswd-pbkdf2.c:151 -msgid "failure to read password" -msgstr "falló al leer la contraseña" - -#: util/grub-mkpasswd-pbkdf2.c:146 -msgid "Reenter password: " -msgstr "Reintroduzca la contraseña: " - -#: util/grub-mkpasswd-pbkdf2.c:160 -msgid "passwords don't match" -msgstr "las contraseñas no coinciden" - -#: util/grub-mkpasswd-pbkdf2.c:169 -msgid "couldn't retrieve random data for salt" -msgstr "no se pudieron obtener datos aleatorios para el «salt»" - -#: util/grub-mkpasswd-pbkdf2.c:184 -#, c-format -msgid "cryptographic error number %d" -msgstr "error criptográfico número %d" - -#: util/grub-mkpasswd-pbkdf2.c:203 -#, c-format -msgid "PBKDF2 hash of your password is %s\n" -msgstr "El hash PBKDF2 de su contraseña es %s\n" - -#: util/grub-mkrelpath.c:67 -msgid "No path is specified.\n" -msgstr "No se ha especificado ninguna ruta.\n" - -#: util/grub-mkrelpath.c:78 -msgid "PATH" -msgstr "RUTA" - -#: util/grub-mkrelpath.c:79 -msgid "Transform a system filename into GRUB one." -msgstr "Transforma un nombre de fichero del sistema en uno de GRUB." - -#: util/grub-mkrescue.c:100 -msgid "save ROM images in DIR [optional]" -msgstr "almacena las imagenes ROM en el DIRECTORIO [opcional]" - -#. TRANSLATORS: xorriso is a program for creating ISOs and burning CDs. -#: util/grub-mkrescue.c:103 -msgid "use FILE as xorriso [optional]" -msgstr "usar FICHERO como xorriso [opcional]" - -# Miguel: FIXME!! -#: util/grub-mkrescue.c:109 -msgid "use STRING as product name" -msgstr "usa la CADENA como nombre de producto" - -#: util/grub-mkrescue.c:111 -msgid "" -"enable sparc boot. Disables HFS+, APM, ARCS and boot as disk image for i386-" -"pc" -msgstr "" -"activa el arranque sparc. Deshabilita HFS+, APM, ARCS y el arranque como una " -"imágen de disco para i386-pc" - -# Miguel: ¿La ordenación de los bytes en castellano tiene un nombre más -# corto? -#: util/grub-mkrescue.c:112 -msgid "" -"enable ARCS (big-endian mips machines, mostly SGI) boot. Disables HFS+, APM, " -"sparc64 and boot as disk image for i386-pc" -msgstr "" -"habilíta el arranque ARCS (máquinas mips «big-endian», principalmente SGI). " -"Deshabilita HFS+, APM, sparc64 y el arranque como una imágen de disco en " -"i386-pc" - -#. TRANSLATORS: it generates one single image which is bootable through any method. -#: util/grub-mkrescue.c:125 -msgid "Make GRUB CD-ROM, disk, pendrive and floppy bootable image." -msgstr "" -"Crea una imagen arrancable de GRUB desde CD-ROM, disco duro y extraíble." - -#: util/grub-mkrescue.c:130 -#, c-format -msgid "" -"Generates a bootable CD/USB/floppy image. Arguments other than options to " -"this program are passed to xorriso, and indicate source files, source " -"directories, or any of the mkisofs options listed by the output of `%s'." -msgstr "" -"Fenera una imagen arrancable de CD/USB/disquete. Otros parámetros además de " -"las opciones de este programa son pasados a xorriso, e indican los ficheros " -"y directorios fuente, o las opciones de mkisofs enumeradas por en la salida " -"de «%s»." - -#: util/grub-mkrescue.c:134 -msgid "Option -- switches to native xorriso command mode." -msgstr "La opción -- cambia al modo de órdenes nativo de xorriso." - -#: util/grub-mkrescue.c:135 -msgid "Mail xorriso support requests to ." -msgstr "Envíe las peticiones de soporte para xorriso a ." - -#: util/grub-mkrescue.c:221 util/grub-mkstandalone.c:114 -msgid "[OPTION] SOURCE..." -msgstr "[OPCIÓN] FUENTE..." - -#: util/grub-mkrescue.c:257 util/grub-mkrescue.c:300 util/grub-mkrescue.c:588 -#, c-format -msgid "enabling %s support ..." -msgstr "activando el soporte de %s..." - -#: util/grub-mkrescue.c:486 -msgid "xorriso not found" -msgstr "no se encontró xorriso" - -#: util/grub-mkrescue.c:623 -msgid "" -"Your xorriso doesn't support `--grub2-boot-info'. Some features are " -"disabled. Please use xorriso 1.2.9 or later." -msgstr "" -"Su xorriso no admite «--grub2-boot-info». Algunas características están " -"deshabilitadas. Por favor, use xorriso 1.2.9 o una versión posterior." - -#: util/grub-mkrescue.c:650 -msgid "" -"Your xorriso doesn't support `--grub2-boot-info'. Your core image is too " -"big. Boot as disk is disabled. Please use xorriso 1.2.9 or later." -msgstr "" -"Su xorriso no admite «--grub2-boot-info». El arranque como disco está " -"deshabilitado. Por favor, use xorriso 1.2.9 o una versión posterior.<" - -#: util/grub-mkstandalone.c:115 -msgid "" -"Generate a standalone image (containing all modules) in the selected format" -msgstr "" -"Crea una imagen (que contiene todos los módulos) en el formato seleccionado" - -# Miguel: ¿Metáfora del transplante con las ramas? Me he perdido.... -#: util/grub-mkstandalone.c:115 -msgid "Graft point syntax (E.g. /boot/grub/grub.cfg=./grub.cfg) is accepted" -msgstr "Se acepta sintáxis de punto (e.g. /boot/grub/grub.cfg=./grub.cfg)" - -#: util/grub-mount.c:552 -msgid "IMAGE1 [IMAGE2 ...] MOUNTPOINT" -msgstr "IMAGEN1 [IMAGEN2 ...] PUNTO_DE_MONTADO" - -#: util/grub-mount.c:575 -msgid "need an image and mountpoint" -msgstr "se necesita una imagen y un punto de montado" - -#: util/grub-probe.c:731 -msgid "given argument is a system device, not a path" -msgstr "el parámetro pasado es un dispositivo del sistema, no una ruta" - -#: util/grub-probe.c:736 -msgid "separate items in output using ASCII NUL characters" -msgstr "separa elementos de la salida usando caracteres ASCII NUL" - -#: util/grub-probe.c:754 -#, c-format -msgid "[default=%s]" -msgstr "[predeterminado=%s]" - -#: util/grub-probe.c:756 -msgid "print TARGET" -msgstr "imprime OBJETIVO" - -#: util/grub-probe.c:757 -msgid "available targets:" -msgstr "objetivos disponibles:" - -#: util/grub-probe.c:839 -msgid "[OPTION]... [PATH|DEVICE]" -msgstr "[OPCIÓN]... [RUTA|DISPOSITIVO]" - -#: util/grub-probe.c:840 -msgid "" -"Probe device information for a given path (or device, if the -d option is " -"given)." -msgstr "" -"Comprueba la información del dispositivo para una ruta dada (o dispositivo, " -"si se proporciona la opción -d)." - -#: util/grub-render-label.c:60 -msgid "read text from FILE." -msgstr "lee texto del FICHERO." - -#: util/grub-render-label.c:62 -msgid "use COLOR for text" -msgstr "usa COLOR para el texto" - -#: util/grub-render-label.c:64 -msgid "use COLOR for background" -msgstr "usa COLOR para el fondo" - -# Miguel: Pintar es lo más aproximado que se me ocurre. 8-) -#. TRANSLATORS: The result is always stored to file and -#. never shown directly, so don't use "show" as synonym for render. Use "create" if -#. "render" doesn't translate directly. -#: util/grub-render-label.c:69 -msgid "set the label to render" -msgstr "fija la etiqueta a pintar" - -#: util/grub-render-label.c:73 -msgid "use FILE as font (PF2)." -msgstr "usa el FICHERO como tipografías (PF2)." - -# Miguel: ??? No soy muy de manzanas y estas cosas me suenan a chino. -#. TRANSLATORS: This file takes a text and creates a graphical representation of it, -#. putting the result into .disk_label file. The result is always stored to file and -#. never shown directly, so don't use "show" as synonym for render. Use "create" if -#. "render" doesn't translate directly. -#: util/grub-render-label.c:136 -msgid "Render Apple .disk_label." -msgstr "Pinta la «.disk_label.» de Apple" - -#: util/grub-render-label.c:158 util/grub-syslinux2cfg.c:169 -msgid "Missing arguments\n" -msgstr "Faltan parámetros\n" - -#: util/grub-script-check.c:87 -msgid "[PATH]" -msgstr "[RUTA]" - -#: util/grub-script-check.c:88 -msgid "Checks GRUB script configuration file for syntax errors." -msgstr "" -"Comprueba el fichero de configuración de GRUB buscando errores de sintaxis." - -#: util/grub-script-check.c:207 -#, c-format -msgid "Syntax error at line %u\n" -msgstr "Error de sintaxis en la línea %u\n" - -#: util/grub-script-check.c:212 -#, c-format -msgid "Script `%s' contains no commands and will do nothing\n" -msgstr "El guión «%s» no contiene órdenes y no hará nada\n" - -#: util/grub-setup.c:79 -#, c-format -msgid "use FILE as the boot image [default=%s]" -msgstr "usa el FICHERO como la imagen de arranque [predeterminado=%s]" - -#: util/grub-setup.c:81 -#, c-format -msgid "use FILE as the core image [default=%s]" -msgstr "usa el FICHERO como la imagen principal [predeterminado=%s]" - -#: util/grub-setup.c:210 -msgid "No device is specified.\n" -msgstr "No se ha especificado un dispositivo.\n" - -#: util/grub-setup.c:224 -msgid "" -"Set up images to boot from DEVICE.\n" -"\n" -"You should not normally run this program directly. Use grub-install instead." -msgstr "" -"Configura las imágenes para arrancar desde DISPOSITIVO.\n" -"\n" -"Normalmente no debería ejecutar este programa directamente. Use grub-" -"install." - -#: util/grub-setup.c:228 -msgid "DEVICE must be an OS device (e.g. /dev/sda)." -msgstr "" -"DISPOSITIVO debe ser un dispositivo del sistema operativo (por ejemplo /dev/" -"sda2)." - -#: util/grub-setup.c:297 -#, c-format -msgid "Invalid device `%s'.\n" -msgstr "Dispositivo «%s» no válido.\n" - -#: util/grub-syslinux2cfg.c:64 -msgid "root directory as it will be seen on runtime [default=/]." -msgstr "" -"directorio raíz que será visto en tiempo de ejecución [predeterminado=/]." - -#: util/grub-syslinux2cfg.c:69 -msgid "" -"current directory of syslinux as it will be seen on runtime [default is " -"parent directory of input file]." -msgstr "" -"directorio actual de syslinux como será visto en tiempo de ejecución [por " -"defecto es el directorio superior al fichero de entrada]." - -#: util/grub-syslinux2cfg.c:74 -msgid "write output to FILE [default=stdout]." -msgstr "escribe la salida al FICHERO [predeterminado=stdout]." - -#: util/grub-syslinux2cfg.c:148 -msgid "Transform syslinux config into GRUB one." -msgstr "Transforma configuración syslinux a GRUB." - -#: util/mkimage.c:688 util/mkimage.c:717 util/mkimage.c:734 -msgid "cannot compress the kernel image" -msgstr "no se puede comprimir la imagen del núcleo" - -#: util/mkimage.c:766 util/mkimage.c:1077 -#, c-format -msgid "unknown compression %d" -msgstr "compresión %d desconocida" - -#: util/mkimage.c:1088 -msgid "Decompressor is too big" -msgstr "El descompresor es demasiado grande" - -#: util/mkimage.c:1133 -#, c-format -msgid "core image is too big (0x%x > 0x%x)" -msgstr "la imagen principal es demasiado grande (0x%x > 0x%x)" - -#: util/mkimage.c:1140 -#, c-format -msgid "kernel image is too big (0x%x > 0x%x)" -msgstr "la imagen del núcleo es demasiado grande (0x%x > 0x%x)" - -#: util/mkimage.c:1220 util/mkimage.c:1501 -#, c-format -msgid "diskboot.img size must be %u bytes" -msgstr "el tamaño de diskboot.img debe ser de %u bytes" - -#: util/mkimage.c:1571 -msgid "" -"fwstart.img doesn't match the known good version. proceed at your own risk" -msgstr "" -"fwstart.img no coincide con la versión buena conocida. Continúe bajo su " -"responsabilidad" - -#: util/mkimage.c:1575 util/mkimage.c:1601 -msgid "firmware image is too big" -msgstr "la imagen del firmware es demasiado grande" - -#: util/resolve.c:93 -#, c-format -msgid "invalid line format: %s" -msgstr "formato de línea no válido: %s" - -#: util/setup.c:167 -msgid "the first sector of the core file is not sector-aligned" -msgstr "el primer sector del fichero principal no está alineado al sector" - -#: util/setup.c:177 -msgid "non-sector-aligned data is found in the core file" -msgstr "se han encontrado datos no alineados al sector en el fichero principal" - -#: util/setup.c:199 -msgid "the sectors of the core file are too fragmented" -msgstr "los sectores del fichero principal están demasiado fragmentados" - -#: util/setup.c:280 -#, c-format -msgid "the size of `%s' is not %u" -msgstr "el tamaño de «%s» no es %u" - -#: util/setup.c:290 -#, c-format -msgid "the size of `%s' is too small" -msgstr "el tamaño de «%s» es demasiado pequeño" - -#: util/setup.c:428 -msgid "" -"Attempting to install GRUB to a disk with multiple partition labels or both " -"partition label and filesystem. This is not supported yet." -msgstr "" -"Intentando instalar GRUB en un disco con múltiples etiquetas de partición o " -"con etiqueta de partición y sistema de ficheros. Todavía no está soportado." - -#: util/setup.c:441 -#, c-format -msgid "unable to identify a filesystem in %s; safety check can't be performed" -msgstr "" -"imposible identificar un sistema de ficheros en %s; no se puede realizar la " -"comprobación de seguridad" - -#. TRANSLATORS: Filesystem may reserve the space just GRUB isn't sure about it. -#: util/setup.c:445 -#, c-format -msgid "" -"%s appears to contain a %s filesystem which isn't known to reserve space for " -"DOS-style boot. Installing GRUB there could result in FILESYSTEM " -"DESTRUCTION if valuable data is overwritten by grub-setup (--skip-fs-probe " -"disables this check, use at your own risk)" -msgstr "" -"Parece que %s contiene un sistema de ficheros %s del que se sabe que no " -"reserva espacio para un arranque tipo DOS. Instalar GRUB ahí puede provocar " -"la DESTRUCCIÓN DEL SISTEMA DE FICHEROS si algún dato importante es " -"sobrescrito por grub-setup (--skip-fs-probe deshabilita esta comprobación, " -"úselo bajo su responsabilidad)" - -#. TRANSLATORS: Partition map may reserve the space just GRUB isn't sure about it. -#: util/setup.c:458 -#, c-format -msgid "" -"%s appears to contain a %s partition map which isn't known to reserve space " -"for DOS-style boot. Installing GRUB there could result in FILESYSTEM " -"DESTRUCTION if valuable data is overwritten by grub-setup (--skip-fs-probe " -"disables this check, use at your own risk)" -msgstr "" -"Parece que %s contiene un mapa de particiones %s del que se sabe que no " -"reserva espacio para un arranque tipo DOS. Instalar GRUB ahí puede provocar " -"la DESTRUCCIÓN DEL SISTEMA DE FICHEROS si algún dato importante es " -"sobrescrito por grub-setup (--skip-fs-probe deshabilita esta comprobación, " -"úselo bajo su responsabilidad)" - -#: util/setup.c:465 -#, c-format -msgid "" -"%s appears to contain a %s partition map and LDM which isn't known to be a " -"safe combination. Installing GRUB there could result in FILESYSTEM " -"DESTRUCTION if valuable data is overwritten by grub-setup (--skip-fs-probe " -"disables this check, use at your own risk)" -msgstr "" -"Parece que %s contiene un mapa de particiones %s y LDM y no se tiene " -"constancia de que sea una combinación segura. Instalar GRUB ahí puede " -"provocar la DESTRUCCIÓN DEL SISTEMA DE FICHEROS si algún dato importante es " -"sobrescrito por grub-setup (--skip-fs-probe deshabilita esta comprobación, " -"úselo bajo su responsabilidad)" - -#: util/setup.c:478 -msgid "" -"Attempting to install GRUB to a partitionless disk or to a partition. This " -"is a BAD idea." -msgstr "" -"Intentando instalar GRUB en un disco sin particiones o en una partición. Es " -"una MALA idea." - -#: util/setup.c:483 -msgid "" -"Attempting to install GRUB to a disk with multiple partition labels. This " -"is not supported yet." -msgstr "" -"Intentando instalar GRUB en un disco con múltiples etiquetas de partición. " -"Todavía no está soportado." - -#: util/setup.c:489 -#, c-format -msgid "Partition style `%s' doesn't support embedding" -msgstr "El tipo de particiones «%s» no permite el embebido" - -#: util/setup.c:496 -#, c-format -msgid "File system `%s' doesn't support embedding" -msgstr "El sistema de ficheros «%s» no permite el embebido" - -#: util/setup.c:537 -msgid "Your embedding area is unusually small. core.img won't fit in it." -msgstr "" -"Su área de embebido es excepcionalmente pequeña. core.img no entrará en " -"ella." - -#: util/setup.c:559 util/setup.c:725 util/setup.c:844 -msgid "no terminator in the core image" -msgstr "ninguna finalización en la imagen principal" - -#: util/setup.c:622 -msgid "core.img version mismatch" -msgstr "versión incorrecta de core.img" - -#: util/setup.c:675 -msgid "" -"embedding is not possible, but this is required for RAID and LVM install" -msgstr "" -"el embebido no es posible, pero se requiere para la instalación en RAID y LVM" - -#: util/setup.c:682 -#, c-format -msgid "can't determine filesystem on %s" -msgstr "no se pudo determinar el sistema de ficheros en %s" - -#: util/setup.c:685 -#, c-format -msgid "filesystem `%s' doesn't support blocklists" -msgstr "el sistema de ficheros «%s» no soporta las listas de bloques" - -#. TRANSLATORS: cross-disk refers to /boot being on one disk -#. but MBR on another. -#: util/setup.c:694 -msgid "embedding is not possible, but this is required for cross-disk install" -msgstr "" -"el embebido no es posible, pero esto es necesario para una instalación en " -"múltiples particiones" - -#: util/setup.c:700 -msgid "" -"Embedding is not possible. GRUB can only be installed in this setup by " -"using blocklists. However, blocklists are UNRELIABLE and their use is " -"discouraged." -msgstr "" -"El embebido no es posible. GRUB podrá ser instalado con esta configuración " -"únicamente usando listas de bloques. No obstante, las listas de bloques son " -"INSEGURAS y su uso está desaconsejado." - -#. TRANSLATORS: Here GRUB refuses to continue with blocklist install. -#: util/setup.c:705 -msgid "will not proceed with blocklists" -msgstr "no se procederá con las listas de bloques" - -#: util/setup.c:817 util/setup.c:837 -msgid "blocklists are invalid" -msgstr "las listas de bloques no son válidas" - -#: util/setup.c:847 -msgid "blocklists are incomplete" -msgstr "las listas de bloques están incompletas" - -#~ msgid "%.*s: ARGP_HELP_FMT parameter must be positive" -#~ msgstr "%.*s: El parámetro ARGP_HELP_FMT debe ser positivo" - -#~ msgid "%s: option '--%s' doesn't allow an argument\n" -#~ msgstr "%s: la opción «--%s» no permite un parámetro\n" - -#~ msgid "%s: unrecognized option '--%s'\n" -#~ msgstr "%s: opción «--%s» no reconocida\n" - -#~ msgid "%s: option '-W %s' doesn't allow an argument\n" -#~ msgstr "%s: la opción «-W %s» no permite un parámetro\n" - -#~ msgid "%s: option '-W %s' requires an argument\n" -#~ msgstr "%s: la opción «-W %s» necesita un parámetro\n" - -#~ msgid "Usage: %s -o OUTPUT CKBMAP_ARGUMENTS...\\n" -#~ msgstr "Uso: %s -o SALIDA ARGUMENTOS_DE_CKBMAP...\\n" - -#~ msgid "Make GRUB keyboard layout file." -#~ msgstr "Genera un fichero de distribución de teclado de GRUB." - -#~ msgid "print this message and exit" -#~ msgstr "imprime este mensaje y termina" - -#~ msgid "print the version information and exit" -#~ msgstr "imprime la información de la versión y termina" - -#~ msgid "%s generates a keyboard layout for GRUB using ckbcomp\\n" -#~ msgstr "%s genera una distribución de teclado para GRUB usando «ckbcomp»\\n" - -# Miguel: He añadido esta línea, pero tiene poco sentido -# si la lista no permite mensajes de nadie que no esté inscrito, -# desde mi humilde punto de vista. -#~ msgid "Report bugs to ." -#~ msgstr "" -#~ "Notifique los errores a .\n" -#~ "Notifique los errores de traducción a ." - -#~ msgid "%s: option requires an argument -- `%s'\\n" -#~ msgstr "%s: la opción necesita un parámetro -- «%s»\\n" - -#~ msgid "Usage: %s [OPTION]\\n" -#~ msgstr "Uso: %s [OPCIÓN]\\n" - -#~ msgid "Generate a grub config file" -#~ msgstr "Genera un fichero de configuración de grub" - -#~ msgid "output generated config to FILE [default=stdout]" -#~ msgstr "" -#~ "salida del fichero generado de configuración al FICHERO " -#~ "[predeterminado=stdout]" - -#~ msgid "Unrecognized option `%s'\\n" -#~ msgstr "Opción «%s» no reconocida\\n" - -#~ msgid "%s: You must run this as root\\n" -#~ msgstr "%s: Debe ejecutarse como root\\n" - -#~ msgid "%s: Not found.\\n" -#~ msgstr "%s: No encontrado.\\n" - -#~ msgid "Generating grub configuration file ..." -#~ msgstr "Generando un fichero de configuración de grub..." - -#~ msgid "" -#~ "Syntax errors are detected in generated GRUB config file.\n" -#~ "Ensure that there are no errors in /etc/default/grub\n" -#~ "and /etc/grub.d/* files or please file a bug report with\n" -#~ "%s file attached." -#~ msgstr "" -#~ "Se han detectado errores de sintaxis en el fichero de\n" -#~ "configuración de GRUB generado.\n" -#~ "Asegurese de que no hay errores en /etc/default/grub\n" -#~ "en los ficheros /etc/grub.d/* o, por favor, abra una\n" -#~ "notificación de errores con el fichero %s adjunto." - -#~ msgid "done" -#~ msgstr "hecho" - -#~ msgid "Warning:" -#~ msgstr "Aviso:" - -#~ msgid "Usage: %s [OPTION] MENU_ENTRY\\n" -#~ msgstr "Uso: %s [OPCIÓN] ENTRADA_DEL_MENÚ\\n" - -#~ msgid "Set the default boot menu entry for GRUB, for the next boot only." -#~ msgstr "" -#~ "Cambia la entrada predeterminada del menú de GRUB, únicamente para el " -#~ "próximo arranque." - -#~ msgid "" -#~ "expect GRUB images under the directory DIR/%s instead of the %s directory" -#~ msgstr "" -#~ "se esperaban las imágenes de GRUB en el directorio DIRECTORIO/%s en vez " -#~ "de en el directorio %s" - -#~ msgid "" -#~ "MENU_ENTRY is a number, a menu item title or a menu item identifier. " -#~ "Please note that menu items in\n" -#~ "submenus or sub-submenus require specifying the submenu components and " -#~ "then the\n" -#~ "menu item component. The titles should be separated using the greater-" -#~ "than\n" -#~ "character (>) with no extra spaces. Depending on your shell some " -#~ "characters including > may need escaping. More information about this is " -#~ "available\n" -#~ "in the GRUB Manual in the section about the 'default' command. " -#~ msgstr "" -#~ "ENTRADA_DEL_MENÚ es un número, el título o un identificador de un\n" -#~ "elemento del menú. Por favor, tenga en cuenta que los elementos\n" -#~ "dentro de submenús o en sub-submenús requieren especificar los\n" -#~ "componentes del submenú y luego el componente del menú. Los títulos\n" -#~ "deben ser separados usando el carácter «mayor que» (>) sin espacios\n" -#~ "extra. Dependiendo de su shell algunos caracteres incluyendo > deben\n" -#~ "ser escapados. Más información sobre esto está disponible en el Manual\n" -#~ "de GRUB en la sección acerca de la orden «default»." - -#~ msgid "More than one menu entry?" -#~ msgstr "¿Más de una entrada del menú?" - -#~ msgid "Menu entry not specified." -#~ msgstr "No se ha especificado una entrada del menú." - -#~ msgid "Set the default boot menu entry for GRUB." -#~ msgstr "Establece la entrada del menú predeterminada para GRUB." - -#~ msgid "This requires setting GRUB_DEFAULT=saved in %s/default/grub.\\n" -#~ msgstr "Esto requere establecer GRUB_DEFAULT=saved en %s/default/grub.\\n" - -#~ msgid "MENU_ENTRY is a number, a menu item title or a menu item identifier." -#~ msgstr "" -#~ "ENTRADA_DEL_MENÚ es un número, un título de un elemento del menú o un " -#~ "identificador." - -#~ msgid "" -#~ "Requested serial terminal but GRUB_SERIAL_COMMAND is unspecified. Default " -#~ "parameters will be used." -#~ msgstr "" -#~ "Se ha solicitado un terminal serie pero GRUB_SERIAL_COMMAND no está " -#~ "especificado. Se usarán los parámetros predeterminados." - -#~ msgid "Found theme: %s\\n" -#~ msgstr "Encontrado tema: %s\\n" - -#~ msgid "Found background: %s\\n" -#~ msgstr "Encontrado fondo de pantalla: %s\\n" - -#~ msgid "Unsupported image format" -#~ msgstr "Formato de imagen no soportado" - -#~ msgid "" -#~ "Setting GRUB_TIMEOUT to a non-zero value when GRUB_HIDDEN_TIMEOUT is set " -#~ "is no longer supported." -#~ msgstr "" -#~ "Ya no se soporta fijar GRUB_TIMEOUT a un valor no nulo cuando " -#~ "GRUB_HIDDEN_TIMEOUT está fijado." - -#~ msgid "Found GNU Mach: %s" -#~ msgstr "Encontrado GNU Mach: %s" - -#~ msgid "Found Hurd module: %s" -#~ msgstr "Encontrado módulo del Hurd: %s" - -#~ msgid "Some Hurd stuff found, but not enough to boot." -#~ msgstr "" -#~ "Se han encontrado algunas partes del Hurd, pero no las suficientes para " -#~ "arrancar." - -#~ msgid "%s, with Hurd %s (recovery mode)" -#~ msgstr "%s, con Hurd %s (modo de recuperación)" - -#~ msgid "%s, with Hurd %s" -#~ msgstr "%s, con Hurd %s" - -#~ msgid "" -#~ "Please don't use old title `%s' for GRUB_DEFAULT, use `%s' (for versions " -#~ "before 2.00) or `%s' (for 2.00 or later)" -#~ msgstr "" -#~ "Por favor, no use el antiguo título «%s» en GRUB_DEFAULT, use «%s» (para " -#~ "versiones previas a la 2.00) o «%s» (para la 2.00 y posteriores)" - -#~ msgid "Loading GNU Mach ..." -#~ msgstr "Cargando GNU Mach..." - -#~ msgid "Loading the Hurd ..." -#~ msgstr "Cargando el Hurd..." - -#~ msgid "Advanced options for %s" -#~ msgstr "Opciones avanzadas para %s" - -#~ msgid "Loading kernel of Illumos ..." -#~ msgstr "Cargando núcleo de Illumos..." - -#~ msgid "%s, with kFreeBSD %s (recovery mode)" -#~ msgstr "%s, con kFreeBSD %s (modo de recuperación)" - -#~ msgid "%s, with kFreeBSD %s" -#~ msgstr "%s, con kFreeBSD %s" - -#~ msgid "Loading kernel of FreeBSD %s ..." -#~ msgstr "Cargando núcleo de FreeBSD %s..." - -#~ msgid "Found kernel of FreeBSD: %s\\n" -#~ msgstr "Encontrado núcleo de FreeBSD: %s\\n" - -#~ msgid "Found kernel module directory: %s\\n" -#~ msgstr "Encontrado directorio de módulos del núcleo: %s\\n" - -#~ msgid "%s, with Linux %s (recovery mode)" -#~ msgstr "%s, con Linux %s (modo de recuperación)" - -#~ msgid "%s, with Linux %s" -#~ msgstr "%s, con Linux %s" - -#~ msgid "Loading Linux %s ..." -#~ msgstr "Cargando Linux %s..." - -#~ msgid "Loading initial ramdisk ..." -#~ msgstr "Cargando imagen de memoria inicial..." - -#~ msgid "Found linux image: %s\\n" -#~ msgstr "Encontrada imagen de linux: %s\\n" - -#~ msgid "Found initrd image: %s\\n" -#~ msgstr "Encontrada imagen de memoria inicial: %s\\n" - -#~ msgid "%s, with kernel %s (via %s, recovery mode)" -#~ msgstr "%s, con núcleo %s (vía %s, modo de recuperación)" - -#~ msgid "%s, with kernel %s (via %s)" -#~ msgstr "%s, con núcleo %s (vía %s)" - -#~ msgid "Found NetBSD kernel: %s\\n" -#~ msgstr "Encontrado núcleo NetBSD: %s\\n" - -#~ msgid "Windows Vista/7 (loader)" -#~ msgstr "Windows Vista/7 (cargador de arranque)" - -#~ msgid "Windows NT/2000/XP (loader)" -#~ msgstr "Windows NT/2000/XP (cargador de arranque)" - -#~ msgid "Found %s on %s (%s)\\n" -#~ msgstr "Encontrado %s en %s (%s)\\n" - -#~ msgid "(32-bit)" -#~ msgstr "(32 bits)" - -#~ msgid "(64-bit)" -#~ msgstr "(64 bits)" - -#~ msgid "(on %s)" -#~ msgstr "(en %s)" - -#~ msgid "%s, with Xen %s and Linux %s (recovery mode)" -#~ msgstr "%s, con Xen %s y Linux %s (modo de recuperación)" - -#~ msgid "%s, with Xen %s and Linux %s" -#~ msgstr "%s, con Xen %s y Linux %s" - -#~ msgid "%s, with Xen hypervisor" -#~ msgstr "%s, con el hipervisor Xen" - -#~ msgid "Loading Xen %s ..." -#~ msgstr "Cargando Xen %s..." - -#~ msgid "Xen hypervisor, version %s" -#~ msgstr "Hipervisor Xen, versión %s" - -#~ msgid "Advanced options for %s (with Xen hypervisor)" -#~ msgstr "Opciones avanzadas para %s (con el hipervisor Xen)" - -#~ msgid "Found %s on %s\\n" -#~ msgstr "Encontrado %s en %s\\n" - -#~ msgid "%s is not yet supported by grub-mkconfig.\\n" -#~ msgstr "grub-mkconfig todavía no soporta %s.\\n" - -#~ msgid "Unsupported substitution flag: 0x%x\n" -#~ msgstr "Etiqueta de sustitución no soportada: 0x%x\n" - -#~ msgid "Unknown gsub font feature 0x%x (%s)\n" -#~ msgstr "Se desconoce la característica gsub 0x%x de la fuente (%s)\n" - -#~ msgid "Address range not associated with RAM" -#~ msgstr "Rango de direcciones no asociado con la RAM" - -#~ msgid "PUBKEY_FILE" -#~ msgstr "CLAVE_PÚBLICA" - -#~ msgid "grub_memalign is not supported on your system" -#~ msgstr "grub_memalign no está soportado en su sistema" - -#~ msgid "If FILENAME is `-', the default value %s is used." -#~ msgstr "Si FICHERO es «-», se usará el valor predeterminado %s." - -#~ msgid "save only the ASCII bitmaps" -#~ msgstr "almacena únicamente los mapas de bits ASCII" - -#~ msgid "create width summary file" -#~ msgstr "crea un fichero con las anchuras" - -#~ msgid "Option --ascii-bitmaps doesn't accept ranges (it always uses ASCII)." -#~ msgstr "La opción --ascii-bitmaps no acepta rangos (siempre se usa ASCII)." - -#~ msgid "WARNING: your random generator isn't known to be secure\n" -#~ msgstr "AVISO: no se sabe si su generador aleatorio es seguro\n" - -#~ msgid "" -#~ "print filesystem module, GRUB drive, system device, partition map module, " -#~ "abstraction module or cryptographic container UUID [default=fs]" -#~ msgstr "" -#~ "imprime el módulo del sistema de ficheros, la unidad de GRUB, el " -#~ "dispositivo del sistema, el módulo del mapa de particiones, el módulo de " -#~ "abstracción o el UUID del contenedor criptográfico [predeterminado=fs]" - -#~ msgid "failed to read the first sector of the core image" -#~ msgstr "la lectura del primer sector de la imagen principal falló" - -#~ msgid "use FILE as grub-setup" -#~ msgstr "usa FICHERO como grub-setup" - -#~ msgid "use FILE as grub-mkrelpath" -#~ msgstr "usa FICHERO como grub-mkrelpath" - -#~ msgid "use FILE as grub-probe" -#~ msgstr "usa FICHERO como grub-probe" - -#~ msgid "INSTALL_DEVICE must be system device filename." -#~ msgstr "" -#~ "DISPOSITIVO_DE_INSTALACIÓN debe ser un nombre de fichero de un " -#~ "dispositivo del sistema." - -#~ msgid "" -#~ "Path `%s' is not readable by GRUB on boot. Installation is impossible. " -#~ "Aborting.\\n" -#~ msgstr "" -#~ "La ruta «%s» no es accesible por GRUB en el arranque. La instalación es " -#~ "imposible. Cancelando.\\n" - -#~ msgid "Auto-detection of a filesystem of %s failed.\\n" -#~ msgstr "" -#~ "Ha fallado la detección automática del sistema de ficheros de %s.\\n" - -#~ msgid "Try with --recheck." -#~ msgstr "Pruebe con --recheck." - -#~ msgid "" -#~ "If the problem persists please report this together with the output of %s " -#~ "to <%s>" -#~ msgstr "" -#~ "Si el problema persiste, por favor, notifíquelo junto a la salida de %s a " -#~ "<%s>" - -#~ msgid "`%s' failed.\\n" -#~ msgstr "«%s» falló.\\n" - -#~ msgid "" -#~ "Can't find GRUB drive for %s; unable to create EFI Boot Manager entry.\\n" -#~ msgstr "" -#~ "No se pudo encontrar la unidad GRUB para %s; no se pudo crear la entrada " -#~ "del gestor de arranque EFI.\\n" - -#~ msgid "Generating grub.cfg ..." -#~ msgstr "Generando grub.cfg..." - -#~ msgid "" -#~ "%s copies GRUB images into net_directory/subdir/target_cpu-platform\\n" -#~ msgstr "" -#~ "%s copia las imágenes de grub en el directorio_de_red/subdirectorio/" -#~ "cpu_objetivo-plataforma\\n" - -#~ msgid "use FILE as grub-glue-efi" -#~ msgstr "usa FICHERO como grub-glue-efi" - -#~ msgid "use FILE as grub-render-label" -#~ msgstr "usa FICHERO como grub-render-label" - -#~ msgid "Packed pixel " -#~ msgstr "Píxel empaquetado " - -#~ msgid "use GRUB images from DIR. Takes precedence over target" -#~ msgstr "" -#~ "usa las imagenes de GRUB del DIRECTORIO. Tiene preferencia ante el " -#~ "objetivo." diff --git a/thirdparty/grub-2.04/po/exclude.pot b/thirdparty/grub-2.04/po/exclude.pot deleted file mode 100644 index 816089c30..000000000 --- a/thirdparty/grub-2.04/po/exclude.pot +++ /dev/null @@ -1,7497 +0,0 @@ -# SOME DESCRIPTIVE TITLE. -# Copyright (C) YEAR Free Software Foundation, Inc. -# FIRST AUTHOR , YEAR. -# -#, fuzzy -msgid "" -msgstr "" -"Project-Id-Version: PACKAGE VERSION\n" -"PO-Revision-Date: 2013-05-12 14:21+0200\n" -"Last-Translator: FULL NAME \n" -"Language-Team: LANGUAGE \n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=CHARSET\n" -"Content-Transfer-Encoding: 8bit\n" - -msgid "GPLv3+" -msgstr "" - -#: grub-core/bus/usb/serial/common.c:62 -#, c-format -msgid "usb%d" -msgstr "" - -#: grub-core/commands/acpi.c:373 -msgid "RSDT" -msgstr "" - -#: grub-core/commands/acpi.c:427 -msgid "XSDT" -msgstr "" - -#: grub-core/commands/acpi.c:539 -msgid "facp" -msgstr "" - -#: grub-core/commands/acpi.c:558 grub-core/commands/acpi.c:559 -msgid "dsdt" -msgstr "" - -#: grub-core/commands/acpi.c:678 grub-core/commands/acpihalt.c:371 -msgid "DSDT" -msgstr "" - -#: grub-core/commands/acpihalt.c:218 -msgid "_S5_" -msgstr "" - -#: grub-core/commands/acpihalt.c:218 -msgid "\\_S5_" -msgstr "" - -#: grub-core/commands/acpihalt.c:302 grub-core/kern/emu/hostfs.c:112 -#: grub-core/lib/reed_solomon.c:428 grub-core/lib/reed_solomon.c:445 -#: util/grub-editenv.c:151 util/grub-editenv.c:156 util/grub-fstest.c:309 -#: util/grub-fstest.c:561 util/grub-mkpasswd-pbkdf2.c:176 -#: util/grub-mount.c:477 util/grub-setup.c:734 util/misc.c:111 util/misc.c:135 -msgid "rb" -msgstr "" - -#: grub-core/commands/acpihalt.c:359 include/grub/acpi.h:61 -msgid "FACP" -msgstr "" - -#: grub-core/commands/acpihalt.c:376 -msgid "SSDT" -msgstr "" - -#: grub-core/commands/arc/lsdev.c:33 grub-core/commands/cacheinfo.c:43 -#: grub-core/commands/xnu_uuid.c:90 grub-core/font/font_cmd.c:56 -#: grub-core/fs/zfs/zfsinfo.c:402 grub-core/gettext/gettext.c:492 -#: grub-core/hello/hello.c:36 grub-core/lib/arg.c:147 -#: grub-core/lib/hexdump.c:63 grub-core/loader/ia64/efi/linux.c:123 -#: grub-core/loader/ia64/efi/linux.c:130 grub-core/net/bootp.c:381 -#: grub-core/net/bootp.c:417 grub-core/net/dns.c:628 grub-core/net/dns.c:644 -#: grub-core/net/net.c:1086 util/grub-mkfont.c:770 util/grub-mkimage.c:1967 -#: util/grub-mkrelpath.c:99 util/ieee1275/grub-ofpathname.c:46 -#: util/ieee1275/grub-ofpathname.c:51 -#, c-format -msgid "%s\n" -msgstr "" - -#: grub-core/commands/blocklist.c:46 grub-core/commands/minicmd.c:162 -#: grub-core/disk/geli.c:427 grub-core/disk/luks.c:334 -#: grub-core/disk/lvm.c:496 grub-core/normal/completion.c:172 -msgid "," -msgstr "" - -#: grub-core/commands/blocklist.c:48 -#, c-format -msgid "%llu" -msgstr "" - -#: grub-core/commands/blocklist.c:50 -#, c-format -msgid "+%u" -msgstr "" - -#: grub-core/commands/blocklist.c:52 -#, c-format -msgid "[%u-%u]" -msgstr "" - -#: grub-core/commands/cacheinfo.c:37 -#, c-format -msgid "(%lu.%lu%%)\n" -msgstr "" - -#: grub-core/commands/cat.c:66 grub-core/commands/minicmd.c:59 -#: grub-core/commands/read.c:52 grub-core/normal/auth.c:188 -#: util/spkmodem-recv.c:101 -#, c-format -msgid "%c" -msgstr "" - -msgid "\n" -msgstr "" - -#: grub-core/commands/cat.c:75 grub-core/commands/minicmd.c:63 -#, c-format -msgid "<%x>" -msgstr "" - -#: grub-core/commands/configfile.c:38 -msgid "extract_entries_" -msgstr "" - -#: grub-core/commands/echo.c:116 grub-core/commands/parttool.c:131 -#: grub-core/commands/videoinfo.c:54 grub-core/disk/cryptodisk.c:1029 -#: grub-core/fs/zfs/zfsinfo.c:38 grub-core/kern/emu/misc.c:74 -#: grub-core/kern/emu/misc.c:90 grub-core/kern/emu/misc.c:105 -#: grub-core/lib/arg.c:145 grub-core/normal/cmdline.c:367 -#: grub-core/normal/cmdline.c:474 grub-core/normal/completion.c:137 -#: grub-core/normal/completion.c:348 grub-core/normal/completion.c:358 -#: grub-core/normal/completion.c:364 grub-core/normal/completion.c:366 -#: grub-core/normal/completion.c:380 grub-core/normal/completion.c:451 -#: grub-core/normal/misc.c:97 grub-core/normal/misc.c:102 -#: grub-core/normal/misc.c:130 grub-core/normal/misc.c:145 -#: grub-core/script/execute.c:309 util/grub-probe.c:515 util/grub-probe.c:524 -#: util/grub-probe.c:533 -#, c-format -msgid " " -msgstr "" - -#: grub-core/commands/efi/efifwsetup.c:41 -#: grub-core/commands/efi/efifwsetup.c:47 -msgid "OsIndications" -msgstr "" - -#: grub-core/commands/efi/efifwsetup.c:66 -msgid "OsIndicationsSupported" -msgstr "" - -#: grub-core/commands/efi/fixvideo.c:39 -msgid "Intel 945GM" -msgstr "" - -#: grub-core/commands/efi/fixvideo.c:40 -msgid "Intel 965GM" -msgstr "" - -#: grub-core/commands/hashsum.c:46 grub-core/commands/verify.c:127 -msgid "sha1" -msgstr "" - -#: grub-core/commands/hashsum.c:47 grub-core/commands/verify.c:126 -msgid "md5" -msgstr "" - -#: grub-core/commands/hashsum.c:124 grub-core/commands/ls.c:125 -#: util/grub-mount.c:304 util/misc.c:82 -#, c-format -msgid "%s/%s" -msgstr "" - -#: grub-core/commands/hashsum.c:249 grub-core/disk/geli.c:192 -#: grub-core/loader/i386/xnu.c:767 util/grub-probe.c:721 -#, c-format -msgid "%02x" -msgstr "" - -#: grub-core/commands/hashsum.c:250 -#, c-format -msgid " %s\n" -msgstr "" - -#: grub-core/commands/help.c:51 -#, c-format -msgid "%s %s" -msgstr "" - -#: grub-core/commands/help.c:126 grub-core/normal/menu.c:682 -#: grub-core/normal/menu.c:694 grub-core/normal/menu_entry.c:1128 -msgid "" -"\n" -"\n" -msgstr "" - -#: grub-core/commands/help.c:132 -#, c-format -msgid "" -"%s %s %s\n" -"%s\n" -msgstr "" - -#: grub-core/commands/hexdump.c:53 -msgid "(mem)" -msgstr "" - -#: grub-core/commands/i386/cmosdump.c:38 -#, c-format -msgid "%02x: " -msgstr "" - -#: grub-core/commands/i386/cmosdump.c:44 grub-core/commands/testload.c:129 -#: grub-core/fs/reiserfs.c:306 grub-core/fs/reiserfs.c:334 -#: grub-core/lib/hexdump.c:42 -#, c-format -msgid "%02x " -msgstr "" - -#: grub-core/commands/i386/cpuid.c:34 grub-core/efiemu/i386/coredetect.c:24 -#: grub-core/efiemu/runtime/efiemu.c:187 grub-core/gdb/i386/idt.c:53 -#: grub-core/loader/i386/xnu.c:145 grub-core/loader/i386/xnu.c:155 -#: grub-core/video/i386/pc/vbe.c:63 grub-core/video/i386/pc/vbe.c:67 -#: include/grub/i386/io.h:31 include/grub/i386/io.h:40 -#: include/grub/i386/io.h:49 include/grub/i386/tsc.h:52 -#: include/grub/i386/tsc.h:73 include/grub/i386/tsc.h:96 -msgid "=a" -msgstr "" - -#: grub-core/commands/i386/cpuid.c:35 grub-core/efiemu/i386/coredetect.c:25 -#: grub-core/net/tftp.c:347 grub-core/net/tftp.c:348 grub-core/net/tftp.c:349 -#: grub-core/normal/menu.c:188 grub-core/script/execute.c:1051 -#: grub-core/video/i386/pc/vbe.c:64 -msgid "0" -msgstr "" - -#: grub-core/commands/i386/cpuid.c:76 grub-core/efiemu/i386/coredetect.c:41 -msgid "i" -msgstr "" - -#: grub-core/commands/i386/cpuid.c:98 -msgid "[-l]" -msgstr "" - -#: grub-core/commands/i386/pc/halt.c:118 -msgid "[-n]" -msgstr "" - -#: grub-core/commands/iorw.c:50 -msgid "in" -msgstr "" - -#: grub-core/commands/iorw.c:67 grub-core/commands/memrw.c:44 -#: grub-core/commands/setpci.c:124 -msgid "XXXXXXXX" -msgstr "" - -#: grub-core/commands/iorw.c:68 grub-core/commands/memrw.c:67 -#: grub-core/commands/setpci.c:125 -#, c-format -msgid "%x" -msgstr "" - -#: grub-core/commands/iorw.c:72 grub-core/commands/memrw.c:71 -#, c-format -msgid "0x%x\n" -msgstr "" - -#: grub-core/commands/iorw.c:92 -msgid "out" -msgstr "" - -#: grub-core/commands/keylayouts.c:214 -#, c-format -msgid "%s/layouts/%s.gkb" -msgstr "" - -#: grub-core/commands/keystatus.c:104 -msgid "[--shift] [--ctrl] [--alt]" -msgstr "" - -#: grub-core/commands/legacycfg.c:127 grub-core/commands/legacycfg.c:712 -#: grub-core/commands/legacycfg.c:717 grub-core/commands/legacycfg.c:724 -msgid "legacy" -msgstr "" - -#: grub-core/commands/legacycfg.c:203 -msgid "extract_legacy_entries_" -msgstr "" - -#: grub-core/commands/legacycfg.c:204 -msgid "legacy_" -msgstr "" - -#: grub-core/commands/legacycfg.c:251 -msgid "--no-mem-option" -msgstr "" - -#: grub-core/commands/legacycfg.c:262 -msgid "--type=linux" -msgstr "" - -#: grub-core/commands/legacycfg.c:263 -msgid "--type=biglinux" -msgstr "" - -#: grub-core/commands/legacycfg.c:271 -msgid "--type=multiboot" -msgstr "" - -#: grub-core/commands/legacycfg.c:279 -msgid "--type=freebsd" -msgstr "" - -#: grub-core/commands/legacycfg.c:287 -msgid "--type=openbsd" -msgstr "" - -#: grub-core/commands/legacycfg.c:295 -msgid "--type=netbsd" -msgstr "" - -#: grub-core/commands/legacycfg.c:380 -msgid "adXXXXXXXXXXXXsXXXXXXXXXXXXYYY" -msgstr "" - -#: grub-core/commands/legacycfg.c:384 -#, c-format -msgid "ad%ds%d%c" -msgstr "" - -#: grub-core/commands/legacycfg.c:387 -#, c-format -msgid "ad%ds%d" -msgstr "" - -#: grub-core/commands/legacycfg.c:390 -#, c-format -msgid "ad%d" -msgstr "" - -#: grub-core/commands/legacycfg.c:409 -msgid "wdXXXXXXXXXXXXY" -msgstr "" - -#: grub-core/commands/legacycfg.c:417 -msgid "-r" -msgstr "" - -#: grub-core/commands/legacycfg.c:424 -#, c-format -msgid "wd%d%c" -msgstr "" - -#: grub-core/commands/legacycfg.c:512 grub-core/loader/multiboot.c:290 -msgid "--nounzip" -msgstr "" - -#: grub-core/commands/legacycfg.c:645 -msgid "--md5" -msgstr "" - -#: grub-core/commands/loadenv.c:154 grub-core/kern/corecmd.c:43 -#: util/grub-editenv.c:190 -#, c-format -msgid "%s=%s\n" -msgstr "" - -#: grub-core/commands/ls.c:55 grub-core/kern/corecmd.c:95 -#, c-format -msgid "(%s) " -msgstr "" - -#: grub-core/commands/ls.c:75 grub-core/commands/terminal.c:55 -#: grub-core/commands/terminal.c:59 grub-core/commands/terminal.c:78 -#: grub-core/disk/cryptodisk.c:756 grub-core/disk/cryptodisk.c:758 -#: grub-core/disk/cryptodisk.c:760 grub-core/disk/cryptodisk.c:762 -#: grub-core/disk/cryptodisk.c:764 grub-core/disk/cryptodisk.c:766 -#: grub-core/disk/cryptodisk.c:773 grub-core/disk/diskfilter.c:365 -#: grub-core/net/net.c:1128 util/grub-probe.c:89 util/grub-probe.c:310 -#, c-format -msgid "%s " -msgstr "" - -#: grub-core/commands/ls.c:102 grub-core/kern/corecmd.c:105 -#, c-format -msgid "%s%s " -msgstr "" - -#: grub-core/commands/ls.c:102 grub-core/commands/ls.c:168 -#: grub-core/commands/test.c:116 grub-core/commands/wildcard.c:451 -#: grub-core/disk/ieee1275/ofdisk.c:240 grub-core/fs/iso9660.c:624 -#: grub-core/fs/iso9660.c:640 grub-core/fs/zfs/zfs.c:2950 -#: grub-core/gfxmenu/gui_string_util.c:129 -#: grub-core/gfxmenu/gui_string_util.c:203 grub-core/kern/corecmd.c:105 -#: grub-core/kern/emu/hostfs.c:53 grub-core/kern/fs.c:73 -#: grub-core/kern/fs.c:97 grub-core/kern/ieee1275/cmain.c:65 -#: grub-core/kern/ieee1275/mmap.c:35 grub-core/kern/ieee1275/openfw.c:156 -#: grub-core/loader/xnu.c:241 grub-core/loader/xnu.c:252 -#: grub-core/loader/xnu.c:1209 grub-core/normal/completion.c:312 -#: include/grub/emu/misc.h:37 include/grub/emu/misc.h:39 -#: util/grub-editenv.c:36 util/grub-fstest.c:288 util/grub-fstest.c:290 -#: util/grub-mount.c:183 -msgid "/" -msgstr "" - -#: grub-core/commands/ls.c:123 grub-core/commands/menuentry.c:100 -#: grub-core/commands/wildcard.c:310 grub-core/kern/main.c:169 -#: grub-core/kern/main.c:173 grub-core/net/drivers/ieee1275/ofnet.c:46 -#: util/grub-menulst2cfg.c:106 -#, c-format -msgid "%s%s" -msgstr "" - -#: grub-core/commands/ls.c:142 -#, c-format -msgid "%-12llu" -msgstr "" - -#: grub-core/commands/ls.c:144 grub-core/commands/ls.c:150 -#, c-format -msgid "%-12s" -msgstr "" - -#: grub-core/commands/ls.c:168 -#, c-format -msgid "%s%s\n" -msgstr "" - -#: grub-core/commands/memrw.c:50 -msgid "read_" -msgstr "" - -#: grub-core/commands/memrw.c:91 -msgid "write_" -msgstr "" - -#: grub-core/commands/menuentry.c:59 -msgid "f1" -msgstr "" - -#: grub-core/commands/menuentry.c:60 -msgid "f2" -msgstr "" - -#: grub-core/commands/menuentry.c:61 -msgid "f3" -msgstr "" - -#: grub-core/commands/menuentry.c:62 -msgid "f4" -msgstr "" - -#: grub-core/commands/menuentry.c:63 -msgid "f5" -msgstr "" - -#: grub-core/commands/menuentry.c:64 -msgid "f6" -msgstr "" - -#: grub-core/commands/menuentry.c:65 -msgid "f7" -msgstr "" - -#: grub-core/commands/menuentry.c:66 -msgid "f8" -msgstr "" - -#: grub-core/commands/menuentry.c:67 -msgid "f9" -msgstr "" - -#: grub-core/commands/menuentry.c:68 -msgid "f10" -msgstr "" - -#: grub-core/commands/menuentry.c:69 -msgid "f11" -msgstr "" - -#: grub-core/commands/menuentry.c:70 -msgid "f12" -msgstr "" - -#: grub-core/commands/menuentry.c:247 -msgid "'\\''" -msgstr "" - -#: grub-core/commands/nativedisk.c:37 -msgid "ehcipata" -msgstr "" - -#: grub-core/commands/nativedisk.c:143 -#, c-format -msgid "(%s)/%s" -msgstr "" - -#: grub-core/commands/nativedisk.c:226 grub-core/commands/parttool.c:190 -#: grub-core/efiemu/main.c:239 grub-core/kern/dl.c:721 -#: grub-core/normal/autofs.c:73 grub-core/normal/completion.c:146 -#: grub-core/normal/crypto.c:89 grub-core/normal/dyncmd.c:103 -#: grub-core/normal/term.c:325 -#, c-format -msgid "%s/" -msgstr "" - -#: grub-core/commands/nativedisk.c:226 grub-core/commands/parttool.c:190 -#: grub-core/efiemu/main.c:239 grub-core/kern/dl.c:721 -#: grub-core/kern/main.c:186 grub-core/kern/main.c:187 -#: grub-core/kern/main.c:188 grub-core/kern/main.c:189 -#: grub-core/loader/xnu.c:949 grub-core/loader/xnu.c:1253 -#: grub-core/loader/xnu.c:1259 grub-core/normal/autofs.c:73 -#: grub-core/normal/crypto.c:89 grub-core/normal/dyncmd.c:103 -#: grub-core/normal/term.c:325 util/grub-editenv.c:296 -msgid "-" -msgstr "" - -#: grub-core/commands/nativedisk.c:226 grub-core/kern/dl.c:721 -#, c-format -msgid "/%s.mod" -msgstr "" - -#: grub-core/commands/parttool.c:34 grub-core/lib/pbkdf2.c:26 -#: grub-core/parttool/msdospart.c:32 -msgid "GPLv2+" -msgstr "" - -#: grub-core/commands/parttool.c:118 -msgid "+/-" -msgstr "" - -#: grub-core/commands/parttool.c:191 -msgid "/parttool.lst" -msgstr "" - -#: grub-core/commands/password_pbkdf2.c:95 -#: grub-core/commands/password_pbkdf2.c:96 -#: grub-core/commands/password_pbkdf2.c:99 -msgid "grub.pbkdf2.sha512." -msgstr "" - -#: grub-core/commands/pcidump.c:65 -#, c-format -msgid "%08x " -msgstr "" - -#: grub-core/commands/search.c:80 grub-core/kern/main.c:198 -#, c-format -msgid "(%s)%s" -msgstr "" - -#: grub-core/commands/search.c:160 grub-core/normal/cmdline.c:204 -#, c-format -msgid " %s" -msgstr "" - -#: grub-core/commands/search.c:179 grub-core/disk/efi/efidisk.c:855 -#: grub-core/kern/device.c:123 grub-core/normal/completion.c:114 -#: util/grub-fstest.c:755 util/grub-mount.c:579 util/grub-probe.c:269 -#, c-format -msgid "%s,%s" -msgstr "" - -#: grub-core/commands/search_file.c:3 -msgid "search.file" -msgstr "" - -#: grub-core/commands/search_label.c:3 -msgid "search.fs_label" -msgstr "" - -#: grub-core/commands/search_uuid.c:3 -msgid "search.fs_uuid" -msgstr "" - -#: grub-core/commands/search_wrap.c:164 -msgid "--hint-" -msgstr "" -#: util/grub-mkpasswd-pbkdf2.c:146 -#, c-format -msgid "" -"\n" -"%s" -msgstr "" - -#: util/grub-mkpasswd-pbkdf2.c:176 -msgid "/dev/urandom" -msgstr "" - -#: util/grub-mkpasswd-pbkdf2.c:223 util/grub-mkpasswd-pbkdf2.c:225 -msgid "grub.pbkdf2.sha512.XXXXXXXXXXXXXXXXXXX.S.S" -msgstr "" - -#: util/grub-mkpasswd-pbkdf2.c:227 -#, c-format -msgid "grub.pbkdf2.sha512.%d.%s.%s" -msgstr "" - -#: util/grub-probe.c:250 -#, c-format -msgid "ata%d" -msgstr "" - -#: util/grub-probe.c:256 -#, c-format -msgid "ahci%d" -msgstr "" - -#: util/grub-probe.c:296 -#, c-format -msgid "lvm " -msgstr "" - -#: util/grub-probe.c:300 -#, c-format -msgid "ldm " -msgstr "" - -#: util/grub-probe.c:308 -#, c-format -msgid "diskfilter " -msgstr "" - -#: util/grub-probe.c:313 -#, c-format -msgid "raid5rec " -msgstr "" - -#: util/grub-probe.c:315 -#, c-format -msgid "raid6rec " -msgstr "" - -#: util/grub-probe.c:421 -msgid "false\n" -msgstr "" - -#: util/grub-probe.c:429 -msgid "true\n" -msgstr "" - -#: util/grub-probe.c:504 -#, c-format -msgid "--hint-ieee1275='" -msgstr "" - -#: util/grub-probe.c:513 -#, c-format -msgid "--hint-bios=" -msgstr "" - -#: util/grub-probe.c:522 -#, c-format -msgid "--hint-efi=" -msgstr "" - -#: util/grub-probe.c:531 -#, c-format -msgid "--hint-baremetal=" -msgstr "" - -#: util/grub-probe.c:542 -#, c-format -msgid "--hint='" -msgstr "" - -#: util/grub-probe.c:740 -msgid "" -"(fs|fs_uuid|fs_label|drive|device|partmap|abstraction|cryptodisk_uuid|" -"msdos_parttype)" -msgstr "" - -#: util/grub-probe.c:791 -msgid "fs_uuid" -msgstr "" - -#: util/grub-probe.c:793 -msgid "fs_label" -msgstr "" - -#: util/grub-probe.c:795 -msgid "drive" -msgstr "" - -#: util/grub-probe.c:801 -msgid "abstraction" -msgstr "" - -#: util/grub-probe.c:803 -msgid "cryptodisk_uuid" -msgstr "" - -#: util/grub-probe.c:805 -msgid "msdos_parttype" -msgstr "" - -#: util/grub-probe.c:807 -msgid "hints_string" -msgstr "" - -#: util/grub-probe.c:809 -msgid "bios_hints" -msgstr "" - -#: util/grub-probe.c:811 -msgid "ieee1275_hints" -msgstr "" - -#: util/grub-probe.c:813 -msgid "baremetal_hints" -msgstr "" - -#: util/grub-probe.c:815 -msgid "efi_hints" -msgstr "" - -#: util/grub-probe.c:817 -msgid "arc_hints" -msgstr "" - -#: util/grub-probe.c:819 -msgid "compatibility_hint" -msgstr "" - -#: util/grub-probe.c:821 -msgid "zero_check" -msgstr "" - -#: util/grub-render-label.c:273 -#, c-format -msgid "(host)/%s" -msgstr "" - -#: util/grub-setup.c:87 -msgid "core.img" -msgstr "" - -#: util/grub-setup.c:147 util/grub-setup.c:173 -#, c-format -msgid ",%u,%u>" -msgstr "" - -#: util/grub-setup.c:665 -msgid "dump.img" -msgstr "" - -#: util/grub-setup.c:672 -msgid "dump2.img" -msgstr "" - -#: util/grub-setup.c:896 -msgid "r+b" -msgstr "" - -#: util/ieee1275/grub-ofpathname.c:44 -msgid "--version" -msgstr "" - -#: util/resolve.c:148 util/resolve.c:170 -msgid ".mod" -msgstr "" - -#: util/resolve.c:175 -#, c-format -msgid "%s.mod" -msgstr "" - -#: util/spkmodem-recv.c:90 -#, c-format -msgid "%d %d %d @%d\n" -msgstr "" - -#: util/spkmodem-recv.c:99 -#, c-format -msgid "<%c, %x>" -msgstr "" - -#: util/grub-mkimage.c:764 -msgid "moddep.lst" -msgstr "" - -#: util/grub-mkimage.c:766 -msgid "kernel.img" -msgstr "" - -#: util/grub-mkimage.c:973 -msgid "xz_decompress.img" -msgstr "" - -#: util/grub-mkimage.c:976 -msgid "lzma_decompress.img" -msgstr "" - -#: util/grub-mkimage.c:979 -msgid "none_decompress.img" -msgstr "" - -#: util/grub-mkimage.c:1079 -msgid "pxeboot.img" -msgstr "" - -#: util/grub-mkimage.c:1101 util/grub-mkimage.c:1380 -msgid "diskboot.img" -msgstr "" - -#: util/grub-mkimage.c:1158 -msgid "PE" -msgstr "" - -#: util/grub-mkimage.c:1263 -msgid ".data" -msgstr "" - -#: util/grub-mkimage.c:1275 -msgid ".bss" -msgstr "" - -#: util/grub-mkimage.c:1289 -msgid "mods" -msgstr "" - -#: util/grub-mkimage.c:1300 -msgid ".reloc" -msgstr "" - -#: util/grub-mkimage.c:1321 util/grub-setup.c:86 -msgid "boot.img" -msgstr "" - -#: util/grub-mkimage.c:1435 -msgid "fwstart_fuloong2f.img" -msgstr "" - -#: util/grub-mkimage.c:1440 -msgid "fwstart.img" -msgstr "" - -#: util/grub-mkimage.c:1766 -msgid "(xz|none|auto)" -msgstr "" - -#: util/grub-mkimage.c:1798 -#, c-format -msgid "" -"%s\n" -"%s %s" -msgstr "" - - -#: util/grub-mkimage.c:113 util/grub-mkimage.c:114 -msgid "i386-coreboot" -msgstr "" - -#: util/grub-mkimage.c:132 util/grub-mkimage.c:133 -msgid "i386-multiboot" -msgstr "" - -#: util/grub-mkimage.c:151 util/grub-mkimage.c:152 util/grub-mkimage.c:167 -msgid "i386-pc" -msgstr "" - -#: util/grub-mkimage.c:168 -msgid "i386-pc-pxe" -msgstr "" - -#: util/grub-mkimage.c:183 util/grub-mkimage.c:184 -msgid "i386-efi" -msgstr "" - -#: util/grub-mkimage.c:199 util/grub-mkimage.c:200 -msgid "i386-ieee1275" -msgstr "" - -#: util/grub-mkimage.c:218 util/grub-mkimage.c:219 -msgid "i386-qemu" -msgstr "" - -#: util/grub-mkimage.c:233 util/grub-mkimage.c:234 -msgid "x86_64-efi" -msgstr "" - -#: util/grub-mkimage.c:249 util/grub-mkimage.c:267 util/grub-mkimage.c:285 -msgid "mipsel-loongson" -msgstr "" - -#: util/grub-mkimage.c:250 -msgid "mipsel-yeeloong-flash" -msgstr "" - -#: util/grub-mkimage.c:268 -msgid "mipsel-fuloong2f-flash" -msgstr "" - -#: util/grub-mkimage.c:286 -msgid "mipsel-loongson-elf" -msgstr "" - -#: util/grub-mkimage.c:286 -msgid "mipsel-yeeloong-elf" -msgstr "" - -#: util/grub-mkimage.c:287 -msgid "mipsel-fuloong2f-elf" -msgstr "" - -#: util/grub-mkimage.c:287 -msgid "mipsel-fuloong2e-elf" -msgstr "" - -#: util/grub-mkimage.c:288 -msgid "mipsel-fuloong-elf" -msgstr "" - -#: util/grub-mkimage.c:305 util/grub-mkimage.c:306 -msgid "powerpc-ieee1275" -msgstr "" - -#: util/grub-mkimage.c:324 util/grub-mkimage.c:339 util/grub-mkimage.c:354 -msgid "sparc64-ieee1275" -msgstr "" - -#: util/grub-mkimage.c:325 -msgid "sparc64-ieee1275-raw" -msgstr "" - -#: util/grub-mkimage.c:340 -msgid "sparc64-ieee1275-cdcore" -msgstr "" - -#: util/grub-mkimage.c:355 -msgid "sparc64-ieee1275-aout" -msgstr "" - -#: util/grub-mkimage.c:369 util/grub-mkimage.c:370 -msgid "ia64-efi" -msgstr "" - -#: util/grub-mkimage.c:385 util/grub-mkimage.c:386 -msgid "mips-arc" -msgstr "" - -#: util/grub-mkimage.c:403 util/grub-mkimage.c:404 -msgid "mipsel-arc" -msgstr "" - -#: util/grub-mkimage.c:421 util/grub-mkimage.c:457 -msgid "mipsel-qemu_mips" -msgstr "" - -#: util/grub-mkimage.c:422 -msgid "mipsel-qemu_mips-elf" -msgstr "" - -#: util/grub-mkimage.c:439 util/grub-mkimage.c:475 -msgid "mips-qemu_mips" -msgstr "" - -#: util/grub-mkimage.c:440 -msgid "mips-qemu_mips-flash" -msgstr "" - -#: util/grub-mkimage.c:458 -msgid "mipsel-qemu_mips-flash" -msgstr "" - -#: util/grub-mkimage.c:476 -msgid "mips-qemu_mips-elf" -msgstr "" - - -#: grub-core/commands/terminal.c:85 grub-core/commands/terminal.c:145 -msgid "--append" -msgstr "" - -#: grub-core/commands/terminal.c:86 grub-core/commands/terminal.c:166 -msgid "--remove" -msgstr "" - -#: grub-core/commands/terminal.c:99 grub-core/commands/terminal.c:105 -#: grub-core/commands/terminal.c:116 grub-core/commands/terminal.c:151 -#: grub-core/commands/terminal.c:172 grub-core/commands/terminal.c:192 -#: grub-core/commands/terminal.c:212 grub-core/loader/i386/linux.c:552 -msgid "ofconsole" -msgstr "" - -#: grub-core/commands/terminal.c:129 grub-core/commands/terminal.c:130 -msgid "serial_usb" -msgstr "" - -#: grub-core/commands/test.c:168 -msgid "=" -msgstr "" - -#: grub-core/commands/test.c:169 -msgid "==" -msgstr "" - -#: grub-core/commands/test.c:177 -msgid "!=" -msgstr "" - -#: grub-core/commands/test.c:186 grub-core/fs/reiserfs.c:569 -#: grub-core/kern/emu/argp_common.c:38 util/grub-editenv.c:66 -msgid "<" -msgstr "" - -#: grub-core/commands/test.c:194 -msgid "<=" -msgstr "" - -#: grub-core/commands/test.c:210 -msgid ">=" -msgstr "" - -#: grub-core/commands/test.c:219 -msgid "-eq" -msgstr "" - -#: grub-core/commands/test.c:227 -msgid "-ge" -msgstr "" - -#: grub-core/commands/test.c:235 -msgid "-gt" -msgstr "" - -#: grub-core/commands/test.c:243 -msgid "-le" -msgstr "" - -#: grub-core/commands/test.c:251 -msgid "-lt" -msgstr "" - -#: grub-core/commands/test.c:259 -msgid "-ne" -msgstr "" - -#: grub-core/commands/test.c:269 grub-core/commands/test.c:283 -msgid "-pgt" -msgstr "" - -#: grub-core/commands/test.c:270 -msgid "-plt" -msgstr "" - -#: grub-core/commands/test.c:295 grub-core/commands/test.c:311 -msgid "-nt" -msgstr "" - -#: grub-core/commands/test.c:296 -msgid "-ot" -msgstr "" - -#: grub-core/commands/test.c:330 util/grub-fstest.c:492 util/grub-mount.c:422 -msgid "-d" -msgstr "" - -#: grub-core/commands/test.c:338 -msgid "-e" -msgstr "" - -#: grub-core/commands/test.c:346 -msgid "-f" -msgstr "" - -#: grub-core/commands/test.c:355 util/grub-mount.c:552 -msgid "-s" -msgstr "" - -#: grub-core/commands/test.c:369 -msgid "-n" -msgstr "" - -#: grub-core/commands/test.c:376 -msgid "-z" -msgstr "" - -#: grub-core/commands/test.c:387 grub-core/normal/completion.c:120 -#: grub-core/normal/completion.c:178 util/grub-mkimagexx.c:349 -msgid ")" -msgstr "" - -#: grub-core/commands/test.c:393 -msgid "(" -msgstr "" - -#: grub-core/commands/test.c:400 grub-core/script/execute.c:917 -msgid "!" -msgstr "" - -#: grub-core/commands/test.c:406 util/grub-fstest.c:408 util/grub-mount.c:383 -msgid "-a" -msgstr "" - -#: grub-core/commands/test.c:411 -msgid "-o" -msgstr "" - -#: grub-core/commands/test.c:432 -msgid "]" -msgstr "" - -#: grub-core/commands/verify.c:128 -msgid "ripemd160" -msgstr "" - -#: grub-core/commands/verify.c:130 -msgid "sha384" -msgstr "" - -#: grub-core/commands/verify.c:132 -msgid "sha224" -msgstr "" - -#: grub-core/commands/verify.c:142 grub-core/commands/verify.c:143 -msgid "rsa" -msgstr "" - -#: grub-core/commands/verify.c:144 -msgid "dsa" -msgstr "" - -#: grub-core/commands/verify.c:258 -msgid "™" -msgstr "" - -#: grub-core/commands/verify.c:531 -msgid "gcry_dsa" -msgstr "" - -#: grub-core/commands/verify.c:587 -#, c-format -msgid "%02x%02x " -msgstr "" - -#: grub-core/commands/verify.c:696 -msgid "verified_read" -msgstr "" - -#: grub-core/commands/verify.c:714 grub-core/commands/verify.c:718 -msgid ".sig" -msgstr "" - -#: grub-core/commands/verify.c:771 grub-core/commands/verify.c:836 -msgid "enforce" -msgstr "" - -#: grub-core/commands/verify.c:771 grub-core/commands/verify.c:836 -#: grub-core/term/serial.c:217 -msgid "no" -msgstr "" - -#: grub-core/commands/videoinfo.c:48 -msgid " " -msgstr "" - -#: grub-core/commands/videoinfo.c:52 grub-core/script/execute.c:254 -#: grub-core/script/execute.c:296 -msgid "*" -msgstr "" - -#: grub-core/commands/videoinfo.c:55 -#, c-format -msgid " 0x%03x " -msgstr "" - -#: grub-core/commands/videoinfo.c:57 -#, c-format -msgid "%4d x %4d x %2d (%4d) " -msgstr "" - -#: grub-core/commands/videotest.c:56 grub-core/loader/i386/linux.c:48 -#: grub-core/loader/i386/xnu.c:41 grub-core/loader/multiboot.c:57 -#: grub-core/loader/multiboot.c:212 grub-core/term/gfxterm.c:36 -#: grub-core/video/video.c:437 util/grub-mkimage.c:1907 -msgid "auto" -msgstr "" - -#: grub-core/commands/videotest.c:82 grub-core/commands/videotest.c:83 -#: grub-core/commands/videotest.c:84 grub-core/gfxmenu/gui_label.c:261 -#: grub-core/gfxmenu/gui_list.c:594 grub-core/gfxmenu/gui_progress_bar.c:391 -#: grub-core/gfxmenu/view.c:74 -msgid "Unknown Regular 16" -msgstr "" - -#: grub-core/commands/videotest.c:85 -msgid "Fixed 20" -msgstr "" - -#: grub-core/commands/wildcard.c:234 util/grub-probe.c:387 -#, c-format -msgid "(%s)" -msgstr "" - -#: grub-core/commands/wildcard.c:301 grub-core/fs/affs.c:421 -#: grub-core/fs/hfsplus.c:829 grub-core/fs/iso9660.c:557 -#: grub-core/fs/iso9660.c:731 grub-core/fs/reiserfs.c:938 -#: grub-core/fs/squash4.c:536 grub-core/fs/udf.c:886 grub-core/fs/xfs.c:522 -#: grub-core/gfxmenu/gui_string_util.c:98 grub-core/normal/completion.c:142 -#: util/grub-fstest.c:286 -msgid ".." -msgstr "" - -#: grub-core/commands/xnu_uuid.c:51 -msgid "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" -msgstr "" - -#: grub-core/commands/xnu_uuid.c:59 util/grub-fstest.c:463 -msgid "-l" -msgstr "" - -#: grub-core/commands/xnu_uuid.c:75 grub-core/fs/jfs.c:924 -#: grub-core/fs/nilfs2.c:1135 -#: grub-core/fs/f2fs.c:1259 -#, c-format -msgid "%02x%02x%02x%02x-%02x%02x-%02x%02x-%02x%02x-%02x%02x%02x%02x%02x%02x" -msgstr "" - -#: grub-core/disk/ahci.c:968 -msgid ", %x, %x (%" -msgstr "" - -#: grub-core/disk/ahci.c:969 grub-core/fs/btrfs.c:720 -#: grub-core/fs/zfs/zfs.c:1307 -msgid ")\n" -msgstr "" - -#: grub-core/disk/arc/arcdisk.c:117 -msgid "partition(0)" -msgstr "" - -#: grub-core/disk/arc/arcdisk.c:119 -msgid "partition(10)" -msgstr "" - -#: grub-core/disk/arc/arcdisk.c:166 -msgid "arc/" -msgstr "" - -#: grub-core/disk/ata.c:426 grub-core/disk/scsi.c:445 -#: grub-core/loader/xnu.c:576 -#, c-format -msgid "%s%d" -msgstr "" - -#: grub-core/disk/cryptodisk.c:467 -#, c-format -msgid "crypto%lu" -msgstr "" - -#: grub-core/disk/cryptodisk.c:483 grub-core/disk/cryptodisk.c:486 -msgid "cryptouuid/" -msgstr "" - -#: grub-core/disk/cryptodisk.c:753 -#, c-format -msgid "cryptodisk %s " -msgstr "" - -#: grub-core/disk/cryptodisk.c:1006 grub-core/disk/cryptodisk.c:1026 -msgid "luks_mount " -msgstr "" - -#: grub-core/disk/cryptodisk.c:1037 -msgid "-ecb" -msgstr "" - -#: grub-core/disk/cryptodisk.c:1040 -msgid "-cbc" -msgstr "" - -#: grub-core/disk/cryptodisk.c:1043 -msgid "-pcbc" -msgstr "" - -#: grub-core/disk/cryptodisk.c:1046 -msgid "-xts" -msgstr "" - -#: grub-core/disk/cryptodisk.c:1049 -msgid "-lrw" -msgstr "" - -#: grub-core/disk/cryptodisk.c:1056 -msgid "-null" -msgstr "" - -#: grub-core/disk/cryptodisk.c:1059 -msgid "-plain" -msgstr "" - -#: grub-core/disk/cryptodisk.c:1062 -msgid "-plain64" -msgstr "" - -#: grub-core/disk/cryptodisk.c:1065 -msgid "-benbi" -msgstr "" - -#: grub-core/disk/cryptodisk.c:1068 -msgid "-essiv:" -msgstr "" - -#: grub-core/disk/cryptodisk.c:1089 grub-core/disk/cryptodisk.c:1101 -msgid "luks_script" -msgstr "" - -#: grub-core/disk/diskfilter.c:118 grub-core/disk/diskfilter.c:431 -msgid "md" -msgstr "" - -#: grub-core/disk/diskfilter.c:119 grub-core/disk/diskfilter.c:432 -#: grub-core/disk/lvm.c:369 grub-core/disk/lvm.c:374 grub-core/disk/lvm.c:375 -#: util/grub-probe.c:295 -msgid "lvm/" -msgstr "" - -#: grub-core/disk/diskfilter.c:120 grub-core/disk/diskfilter.c:433 -#: util/grub-probe.c:299 -msgid "ldm/" -msgstr "" - -#: grub-core/disk/diskfilter.c:396 grub-core/disk/diskfilter.c:398 -msgid "mduuid/" -msgstr "" - -#: grub-core/disk/diskfilter.c:688 -msgid "raid6rec" -msgstr "" - -#: grub-core/disk/diskfilter.c:698 -msgid "raid5rec" -msgstr "" - -#: grub-core/disk/diskfilter.c:892 -#, c-format -msgid "%s_%d" -msgstr "" - -#: grub-core/disk/diskfilter.c:978 -#, c-format -msgid "md/%s" -msgstr "" - -#: grub-core/disk/dmraid_nvidia.c:173 -msgid "dmraid_nv" -msgstr "" - -#: grub-core/disk/efi/efidisk.c:419 grub-core/disk/i386/pc/biosdisk.c:284 -#: util/grub-probe.c:192 util/grub-probe.c:221 -#, c-format -msgid "hd%d" -msgstr "" - -#: grub-core/disk/efi/efidisk.c:428 grub-core/disk/i386/pc/biosdisk.c:284 -#: util/grub-probe.c:198 util/grub-probe.c:227 -#, c-format -msgid "fd%d" -msgstr "" - -#: grub-core/disk/efi/efidisk.c:436 -#, c-format -msgid "cd%d" -msgstr "" - -#: grub-core/disk/efi/efidisk.c:718 -msgid "XdXXXXXXXXXX" -msgstr "" - -#: grub-core/disk/efi/efidisk.c:729 -#, c-format -msgid "d%d" -msgstr "" - -#: grub-core/disk/geli.c:103 -msgid "GEOM::ELI" -msgstr "" - -#: grub-core/disk/geli.c:127 -msgid "des" -msgstr "" - -#: grub-core/disk/geli.c:128 -msgid "3des" -msgstr "" - -#: grub-core/disk/geli.c:129 -msgid "blowfish" -msgstr "" - -#: grub-core/disk/geli.c:130 -msgid "cast5" -msgstr "" - -#: grub-core/disk/geli.c:132 grub-core/disk/geli.c:135 -msgid "aes" -msgstr "" - -#: grub-core/disk/geli.c:134 -msgid "camellia128" -msgstr "" - -#: grub-core/disk/i386/pc/biosdisk.c:281 -msgid "cd" -msgstr "" - -#: grub-core/disk/ieee1275/nand.c:84 grub-core/disk/ieee1275/nand.c:85 -msgid "nand/" -msgstr "" - -#: grub-core/disk/ieee1275/nand.c:105 grub-core/disk/ieee1275/ofdisk.c:597 -msgid "block-size" -msgstr "" - -#: grub-core/disk/ieee1275/nand.c:173 -msgid "pio-read" -msgstr "" - -#: grub-core/disk/ieee1275/ofdisk.c:162 -msgid "vscsi" -msgstr "" - -#: grub-core/disk/ieee1275/ofdisk.c:182 -msgid "vscsi-report-luns" -msgstr "" - -#: grub-core/disk/ieee1275/ofdisk.c:205 -msgid "/disk@%" -msgstr "" - -#: grub-core/disk/ieee1275/ofdisk.c:215 grub-core/disk/ieee1275/ofdisk.c:235 -#: grub-core/disk/ieee1275/ofdisk.c:370 grub-core/kern/ieee1275/openfw.c:422 -msgid "block" -msgstr "" - -#: grub-core/disk/ieee1275/ofdisk.c:281 -msgid "sdmmc" -msgstr "" - -#: grub-core/disk/ieee1275/ofdisk.c:292 grub-core/disk/ieee1275/ofdisk.c:295 -#: grub-core/disk/ieee1275/ofdisk.c:347 grub-core/disk/ieee1275/ofdisk.c:350 -#: grub-core/kern/ieee1275/openfw.c:482 grub-core/kern/ieee1275/openfw.c:492 -#: grub-core/term/ieee1275/serial.c:233 grub-core/term/ieee1275/serial.c:238 -#: grub-core/term/serial.c:156 grub-core/term/serial.c:158 -#: util/grub-probe.c:500 util/grub-probe.c:502 util/grub-probe.c:617 -#: util/grub-probe.c:619 -msgid "ieee1275/" -msgstr "" - -#: grub-core/disk/ieee1275/ofdisk.c:541 grub-core/kern/ieee1275/init.c:115 -#: grub-core/net/drivers/ieee1275/ofnet.c:207 -msgid "network" -msgstr "" - -#: grub-core/disk/ldm.c:53 -msgid "VBLK" -msgstr "" - -#: grub-core/disk/ldm.c:89 -msgid "PRIVHEAD" -msgstr "" - -#: grub-core/disk/ldm.c:362 -#, c-format -msgid "ldm/%s/%s" -msgstr "" - -#: grub-core/disk/ldm.c:1004 -msgid "Volume5" -msgstr "" - -#: grub-core/disk/luks.c:40 -msgid "LUKSº¾" -msgstr "" - -#: grub-core/disk/luks.c:150 -msgid "ecb" -msgstr "" - -#: grub-core/disk/luks.c:156 grub-core/disk/luks.c:218 -msgid "plain" -msgstr "" - -#: grub-core/disk/luks.c:162 grub-core/disk/luks.c:165 -msgid "cbc-" -msgstr "" - -#: grub-core/disk/luks.c:167 grub-core/disk/luks.c:170 -msgid "pcbc-" -msgstr "" - -#: grub-core/disk/luks.c:172 grub-core/disk/luks.c:175 -msgid "xts-" -msgstr "" - -#: grub-core/disk/luks.c:197 grub-core/disk/luks.c:200 -msgid "lrw-" -msgstr "" - -#: grub-core/disk/luks.c:220 -msgid "plain64" -msgstr "" - -#: grub-core/disk/luks.c:222 -msgid "benbi" -msgstr "" - -#: grub-core/disk/luks.c:233 -msgid "null" -msgstr "" - -#: grub-core/disk/luks.c:235 -msgid "essiv:" -msgstr "" - -#: grub-core/disk/luks.c:40 -msgid "LUKSº¾" -msgstr "" - -#: grub-core/disk/mdraid_linux.c:250 -#, c-format -msgid "md%d" -msgstr "" - -#: grub-core/disk/mdraid_linux.c:263 -msgid "mdraid09_be" -msgstr "" - -#: grub-core/disk/memdisk.c:49 -msgid "mdsk" -msgstr "" - -#: grub-core/disk/scsi.c:459 -#, c-format -msgid "%s%d%c" -msgstr "" - -#: grub-core/efiemu/i386/coredetect.c:43 grub-core/efiemu/i386/coredetect.c:50 -#: grub-core/efiemu/i386/coredetect.c:55 grub-core/efiemu/i386/coredetect.c:58 -msgid "efiemu32.o" -msgstr "" - -#: grub-core/efiemu/i386/coredetect.c:58 -msgid "efiemu64.o" -msgstr "" - -#: grub-core/efiemu/i386/pc/cfgtables.c:63 -msgid "_SM_" -msgstr "" - -#: grub-core/efiemu/loadcore.c:166 grub-core/efiemu/runtime/efiemu.c:52 -msgid ".text-physical" -msgstr "" - -#: grub-core/efiemu/main.c:239 -#, c-format -msgid "/%s" -msgstr "" - -#: grub-core/efiemu/pnvram.c:129 grub-core/efiemu/pnvram.c:130 -#: grub-core/efiemu/pnvram.c:133 -msgid "EfiEmu.pnvram." -msgstr "" - -#: grub-core/efiemu/runtime/efiemu.c:50 -msgid "_text-physical, _text-physical" -msgstr "" - -#: grub-core/efiemu/runtime/efiemu.c:116 -msgid "EFIEMULOG" -msgstr "" - -#: grub-core/fs/affs.c:205 -msgid "DOS" -msgstr "" - -#: grub-core/fs/bfs.c:1096 -msgid "be:volume_id" -msgstr "" - -#: grub-core/fs/bfs.c:1099 -msgid "%016" -msgstr "" - -#: grub-core/fs/btrfs.c:34 -msgid "_BHRfS_M" -msgstr "" - -#: grub-core/fs/btrfs.c:414 grub-core/fs/btrfs.c:446 grub-core/fs/btrfs.c:499 -msgid " %x %" -msgstr "" - -#: grub-core/fs/btrfs.c:663 grub-core/loader/i386/pc/plan9.c:211 -msgid " %" -msgstr "" - -#: grub-core/fs/btrfs.c:663 -msgid " \n" -msgstr "" - -#: grub-core/fs/btrfs.c:718 grub-core/fs/btrfs.c:813 grub-core/fs/btrfs.c:1074 -msgid "+0x%" -msgstr "" - -#: grub-core/fs/cpio.c:36 -msgid "070707" -msgstr "" - -#: grub-core/fs/cpio.c:53 grub-core/loader/linux.c:66 -msgid "070701" -msgstr "" - -#: grub-core/fs/cpio.c:54 -msgid "070702" -msgstr "" - -#: grub-core/fs/cpio.c:76 -msgid "qÇ" -msgstr "" - -#: grub-core/fs/cpio.c:78 -msgid "Çq" -msgstr "" - -#: grub-core/fs/cpio.c:96 -msgid "ustar" -msgstr "" - -#: grub-core/fs/cpio.c:246 grub-core/loader/linux.c:193 -#: grub-core/loader/linux.c:214 grub-core/loader/linux.c:268 -#: grub-core/loader/linux.c:290 -msgid "TRAILER!!!" -msgstr "" - -#: grub-core/fs/fat.c:245 -msgid "EXFAT " -msgstr "" - -#: grub-core/fs/fat.c:1164 -#, c-format -msgid "%04x-%04x" -msgstr "" - -#: grub-core/fs/hfsplus.c:1145 grub-core/fs/ntfs.c:1233 -#: grub-core/fs/zfs/zfs.c:3484 -#, c-format -msgid "%016llx" -msgstr "" - -#: grub-core/fs/iso9660.c:287 -msgid "ST" -msgstr "" - -#: grub-core/fs/iso9660.c:291 -msgid "CE" -msgstr "" - -#: grub-core/fs/iso9660.c:352 -msgid "ER" -msgstr "" - -#: grub-core/fs/iso9660.c:402 -msgid "SP" -msgstr "" - -#: grub-core/fs/iso9660.c:458 grub-core/fs/udf.c:96 -msgid "CD001" -msgstr "" - -#: grub-core/fs/iso9660.c:549 -msgid "NM" -msgstr "" - -#: grub-core/fs/iso9660.c:586 -msgid "PX" -msgstr "" - -#: grub-core/fs/iso9660.c:608 -msgid "SL" -msgstr "" - -#: grub-core/fs/iso9660.c:632 -msgid "./" -msgstr "" - -#: grub-core/fs/iso9660.c:636 -msgid "../" -msgstr "" - -#: grub-core/fs/jfs.c:364 -msgid "JFS1" -msgstr "" - -#: grub-core/fs/minix.c:670 -msgid "minix3_be" -msgstr "" - -#: grub-core/fs/minix.c:672 -msgid "minix2_be" -msgstr "" - -#: grub-core/fs/minix.c:674 -msgid "minix_be" -msgstr "" - -#: grub-core/fs/ntfs.c:483 -msgid "ntfscomp" -msgstr "" - -#: grub-core/fs/ntfs.c:757 -msgid "/??/" -msgstr "" - -#: grub-core/fs/ntfs.c:894 -msgid "INDX" -msgstr "" - -#: grub-core/fs/ntfs.c:938 grub-core/loader/i386/pc/chainloader.c:93 -msgid "NTFS" -msgstr "" - -#: grub-core/fs/ntfs.c:1167 -msgid "/$Volume" -msgstr "" - -#: grub-core/fs/reiserfs.c:57 -msgid "ReIsEr" -msgstr "" - -#: grub-core/fs/reiserfs.c:58 -msgid "ReIsErLB" -msgstr "" - -#: grub-core/fs/romfs.c:32 -msgid "-rom1fs-" -msgstr "" - -#: grub-core/fs/sfs.c:377 -msgid "SFS" -msgstr "" - -#: grub-core/fs/udf.c:94 -msgid "BEA01" -msgstr "" - -#: grub-core/fs/udf.c:95 -msgid "BOOT2" -msgstr "" - -#: grub-core/fs/udf.c:97 -msgid "CDW02" -msgstr "" - -#: grub-core/fs/udf.c:98 -msgid "NSR02" -msgstr "" - -#: grub-core/fs/udf.c:99 -msgid "NSR03" -msgstr "" - -#: grub-core/fs/udf.c:100 -msgid "TEA01" -msgstr "" - -#: grub-core/fs/ufs.c:798 -#, c-format -msgid "%08x%08x" -msgstr "" - -#: grub-core/fs/ufs.c:847 -msgid "ufs1_be" -msgstr "" - -#: grub-core/fs/xfs.c:271 -msgid "IN" -msgstr "" - -#: grub-core/fs/xfs.c:325 -msgid "BMAP" -msgstr "" - -#: grub-core/fs/xfs.c:674 -msgid "XFSB" -msgstr "" - -#: grub-core/fs/zfs/zfs.c:60 -msgid "bootfs" -msgstr "" - -#: grub-core/fs/zfs/zfs.c:318 grub-core/fs/zfs/zfs.c:367 -#: grub-core/gfxmenu/gui_list.c:432 grub-core/gfxmenu/gui_list.c:443 -msgid "inherit" -msgstr "" - -#: grub-core/fs/zfs/zfs.c:319 grub-core/fs/zfs/zfs.c:368 -msgid "on" -msgstr "" - -#: grub-core/fs/zfs/zfs.c:320 grub-core/fs/zfs/zfs.c:369 -#: grub-core/loader/ia64/efi/linux.c:429 -msgid "off" -msgstr "" - -#: grub-core/fs/zfs/zfs.c:321 -msgid "lzjb" -msgstr "" - -#: grub-core/fs/zfs/zfs.c:322 -msgid "empty" -msgstr "" - -#: grub-core/fs/zfs/zfs.c:323 -msgid "gzip-1" -msgstr "" - -#: grub-core/fs/zfs/zfs.c:324 -msgid "gzip-2" -msgstr "" - -#: grub-core/fs/zfs/zfs.c:325 -msgid "gzip-3" -msgstr "" - -#: grub-core/fs/zfs/zfs.c:326 -msgid "gzip-4" -msgstr "" - -#: grub-core/fs/zfs/zfs.c:327 -msgid "gzip-5" -msgstr "" - -#: grub-core/fs/zfs/zfs.c:328 -msgid "gzip-6" -msgstr "" - -#: grub-core/fs/zfs/zfs.c:329 -msgid "gzip-7" -msgstr "" - -#: grub-core/fs/zfs/zfs.c:330 -msgid "gzip-8" -msgstr "" - -#: grub-core/fs/zfs/zfs.c:331 -msgid "gzip-9" -msgstr "" - -#: grub-core/fs/zfs/zfs.c:332 -msgid "zle" -msgstr "" - -#: grub-core/fs/zfs/zfs.c:371 -msgid "gang_header" -msgstr "" - -#: grub-core/fs/zfs/zfs.c:372 -msgid "zilog" -msgstr "" - -#: grub-core/fs/zfs/zfs.c:373 -msgid "fletcher2" -msgstr "" - -#: grub-core/fs/zfs/zfs.c:374 -msgid "fletcher4" -msgstr "" - -#: grub-core/fs/zfs/zfs.c:375 grub-core/lib/xzembed/xz_dec_stream.c:445 -msgid "SHA256" -msgstr "" - -#: grub-core/fs/zfs/zfs.c:376 -msgid "zilog2" -msgstr "" - -#: grub-core/fs/zfs/zfs.c:377 -msgid "SHA256+MAC" -msgstr "" - -#: grub-core/fs/zfs/zfs.c:623 grub-core/loader/i386/xnu.c:776 -msgid "guid" -msgstr "" - -#: grub-core/fs/zfs/zfs.c:631 -msgid "ashift" -msgstr "" - -#: grub-core/fs/zfs/zfs.c:677 -msgid "nparity" -msgstr "" - -#: grub-core/fs/zfs/zfs.c:1305 -msgid "+%u (%" -msgstr "" - -#: grub-core/fs/zfs/zfs.c:1305 -msgid ", %" -msgstr "" - -#: grub-core/fs/zfs/zfs.c:1306 -msgid ") -> (0x%" -msgstr "" - -#: grub-core/fs/zfs/zfs.c:1306 grub-core/kern/mm.c:594 -msgid ", 0x%" -msgstr "" - -#: grub-core/fs/zfs/zfs.c:1637 -msgid "zfscrypt" -msgstr "" - -#: grub-core/fs/zfs/zfs.c:2464 -msgid "casesensitivity" -msgstr "" - -#: grub-core/fs/zfs/zfs.c:3940 grub-core/script/execute.c:255 -#: grub-core/script/execute.c:317 -msgid "@" -msgstr "" - -#: grub-core/gdb/cstub.c:281 grub-core/gdb/cstub.c:293 -#: grub-core/gdb/cstub.c:299 grub-core/gdb/cstub.c:327 -msgid "OK" -msgstr "" - -#: grub-core/gdb/cstub.c:315 -msgid "E01" -msgstr "" - -#: grub-core/gdb/cstub.c:332 -msgid "E02" -msgstr "" - -#: grub-core/gdb/i386/idt.c:64 grub-core/gdb/i386/idt.c:65 -#: grub-core/gdb/i386/idt.c:71 -msgid "m" -msgstr "" - -#: grub-core/gettext/gettext.c:353 -#, c-format -msgid "%s%s/%s.mo" -msgstr "" - -#: grub-core/gettext/gettext.c:364 -#, c-format -msgid "%s%s/%s.mo.gz" -msgstr "" - -#: grub-core/gettext/gettext.c:375 -#, c-format -msgid "%s%s/%s.gmo" -msgstr "" - -#: grub-core/gettext/gettext.c:403 -msgid "/locale" -msgstr "" - -#: grub-core/gfxmenu/gfxmenu.c:78 -#, c-format -msgid "%s/themes/%s" -msgstr "" - -#: grub-core/gfxmenu/gui_box.c:83 grub-core/gfxmenu/gui_canvas.c:75 -#: grub-core/gfxmenu/gui_circular_progress.c:71 -#: grub-core/gfxmenu/gui_image.c:65 grub-core/gfxmenu/gui_label.c:79 -#: grub-core/gfxmenu/gui_list.c:157 grub-core/gfxmenu/gui_progress_bar.c:79 -msgid "component" -msgstr "" - -#: grub-core/gfxmenu/gui_box.c:84 grub-core/gfxmenu/gui_canvas.c:76 -#: grub-core/gfxmenu/gui_util.c:44 grub-core/gfxmenu/gui_util.c:82 -#: grub-core/gfxmenu/theme_loader.c:503 -msgid "container" -msgstr "" - -#: grub-core/gfxmenu/gui_circular_progress.c:237 -msgid "deg" -msgstr "" - -#: grub-core/gfxmenu/gui_circular_progress.c:249 -msgid "num_ticks" -msgstr "" - -#: grub-core/gfxmenu/gui_circular_progress.c:253 -msgid "start_angle" -msgstr "" - -#: grub-core/gfxmenu/gui_circular_progress.c:257 -msgid "ticks_disappear" -msgstr "" - -#: grub-core/gfxmenu/gui_circular_progress.c:261 -msgid "center_bitmap" -msgstr "" - -#: grub-core/gfxmenu/gui_circular_progress.c:267 -msgid "tick_bitmap" -msgstr "" - -#: grub-core/gfxmenu/gui_circular_progress.c:273 -#: grub-core/gfxmenu/gui_image.c:210 grub-core/gfxmenu/gui_list.c:520 -#: grub-core/gfxmenu/gui_progress_bar.c:339 -#: grub-core/gfxmenu/theme_loader.c:458 -msgid "theme_dir" -msgstr "" - -#: grub-core/gfxmenu/gui_label.c:30 -msgid "center" -msgstr "" - -#: grub-core/gfxmenu/gui_label.c:164 grub-core/hook/datehook.c:81 -#: grub-core/kern/emu/hostdisk.c:713 grub-core/kern/ieee1275/openfw.c:509 -#: grub-core/kern/partition.c:265 grub-core/normal/menu.c:111 -#: grub-core/script/execute.c:801 grub-core/script/execute.c:956 -#: grub-core/script/execute.c:1004 grub-core/term/tparm.c:544 -#, c-format -msgid "%d" -msgstr "" - -#: grub-core/gfxmenu/gui_label.c:182 -msgid "@KEYMAP_LONG@" -msgstr "" - -#: grub-core/gfxmenu/gui_label.c:186 -msgid "@KEYMAP_MIDDLE@" -msgstr "" - -#: grub-core/gfxmenu/gui_label.c:190 -msgid "@KEYMAP_SHORT@" -msgstr "" - -#: grub-core/gfxmenu/gui_label.c:205 -msgid "align" -msgstr "" - -#: grub-core/gfxmenu/gui_label.c:217 grub-core/gfxmenu/gui_list.c:484 -msgid "visible" -msgstr "" - -#: grub-core/gfxmenu/gui_list.c:401 grub-core/gfxmenu/gui_list.c:403 -msgid "Typical OS" -msgstr "" - -#: grub-core/gfxmenu/gui_list.c:426 -msgid "item_font" -msgstr "" - -#: grub-core/gfxmenu/gui_list.c:430 -msgid "selected_item_font" -msgstr "" - -#: grub-core/gfxmenu/gui_list.c:437 -msgid "item_color" -msgstr "" - -#: grub-core/gfxmenu/gui_list.c:441 -msgid "selected_item_color" -msgstr "" - -#: grub-core/gfxmenu/gui_list.c:454 -msgid "icon_width" -msgstr "" - -#: grub-core/gfxmenu/gui_list.c:461 -msgid "icon_height" -msgstr "" - -#: grub-core/gfxmenu/gui_list.c:468 -msgid "item_height" -msgstr "" - -#: grub-core/gfxmenu/gui_list.c:472 -msgid "item_padding" -msgstr "" - -#: grub-core/gfxmenu/gui_list.c:476 -msgid "item_icon_space" -msgstr "" - -#: grub-core/gfxmenu/gui_list.c:480 -msgid "item_spacing" -msgstr "" - -#: grub-core/gfxmenu/gui_list.c:488 -msgid "menu_pixmap_style" -msgstr "" - -#: grub-core/gfxmenu/gui_list.c:494 -msgid "selected_item_pixmap_style" -msgstr "" - -#: grub-core/gfxmenu/gui_list.c:500 -msgid "scrollbar_frame" -msgstr "" - -#: grub-core/gfxmenu/gui_list.c:506 -msgid "scrollbar_thumb" -msgstr "" - -#: grub-core/gfxmenu/gui_list.c:512 -msgid "scrollbar_width" -msgstr "" - -#: grub-core/gfxmenu/gui_list.c:516 -msgid "scrollbar" -msgstr "" - -#: grub-core/gfxmenu/gui_progress_bar.c:259 -msgid "XXXXXXXXXX" -msgstr "" - -#: grub-core/gfxmenu/gui_progress_bar.c:289 -msgid "@TIMEOUT_NOTIFICATION_LONG@" -msgstr "" - -#: grub-core/gfxmenu/gui_progress_bar.c:292 -msgid "@TIMEOUT_NOTIFICATION_MIDDLE@" -msgstr "" - -#: grub-core/gfxmenu/gui_progress_bar.c:297 -msgid "@TIMEOUT_NOTIFICATION_SHORT@" -msgstr "" - -#: grub-core/gfxmenu/gui_progress_bar.c:309 -msgid "text_color" -msgstr "" - -#: grub-core/gfxmenu/gui_progress_bar.c:313 -msgid "border_color" -msgstr "" - -#: grub-core/gfxmenu/gui_progress_bar.c:317 -msgid "bg_color" -msgstr "" - -#: grub-core/gfxmenu/gui_progress_bar.c:321 -msgid "fg_color" -msgstr "" - -#: grub-core/gfxmenu/gui_progress_bar.c:325 -msgid "bar_style" -msgstr "" - -#: grub-core/gfxmenu/gui_progress_bar.c:332 -msgid "highlight_style" -msgstr "" - -#: grub-core/gfxmenu/icon_manager.c:32 grub-core/video/readers/png.c:948 -msgid ".png" -msgstr "" - -#: grub-core/gfxmenu/icon_manager.c:201 -msgid "icons/" -msgstr "" - -#: grub-core/gfxmenu/theme_loader.c:126 -msgid "title-font" -msgstr "" - -#: grub-core/gfxmenu/theme_loader.c:128 -msgid "message-font" -msgstr "" - -#: grub-core/gfxmenu/theme_loader.c:130 -msgid "terminal-font" -msgstr "" - -#: grub-core/gfxmenu/theme_loader.c:137 -msgid "title-color" -msgstr "" - -#: grub-core/gfxmenu/theme_loader.c:139 -msgid "message-color" -msgstr "" - -#: grub-core/gfxmenu/theme_loader.c:141 -msgid "message-bg-color" -msgstr "" - -#: grub-core/gfxmenu/theme_loader.c:143 -msgid "desktop-image" -msgstr "" - -#: grub-core/gfxmenu/theme_loader.c:172 -msgid "desktop-color" -msgstr "" - -#: grub-core/gfxmenu/theme_loader.c:174 -msgid "terminal-box" -msgstr "" - -#: grub-core/gfxmenu/theme_loader.c:181 -msgid "title-text" -msgstr "" - -#: grub-core/gfxmenu/theme_loader.c:418 -msgid "image" -msgstr "" - -#: grub-core/gfxmenu/theme_loader.c:422 -msgid "vbox" -msgstr "" - -#: grub-core/gfxmenu/theme_loader.c:426 -msgid "hbox" -msgstr "" - -#: grub-core/gfxmenu/theme_loader.c:430 -msgid "canvas" -msgstr "" - -#: grub-core/gfxmenu/theme_loader.c:434 -msgid "progress_bar" -msgstr "" - -#: grub-core/gfxmenu/theme_loader.c:438 -msgid "circular_progress" -msgstr "" - -#: grub-core/gfxmenu/theme_loader.c:442 -msgid "boot_menu" -msgstr "" - -#: grub-core/gfxmenu/theme_loader.c:459 -msgid "theme_path" -msgstr "" - -#: grub-core/gfxmenu/theme_loader.c:552 -msgid "top" -msgstr "" - -#: grub-core/gfxmenu/view.c:82 -msgid "Fixed 10" -msgstr "" - -#: grub-core/gfxmenu/widget-box.c:38 -msgid "nw" -msgstr "" - -#: grub-core/gfxmenu/widget-box.c:38 -msgid "ne" -msgstr "" - -#: grub-core/gfxmenu/widget-box.c:38 -msgid "se" -msgstr "" - -#: grub-core/gfxmenu/widget-box.c:38 -msgid "sw" -msgstr "" - -#: grub-core/gfxmenu/widget-box.c:40 -msgid "n" -msgstr "" - -#: grub-core/gfxmenu/widget-box.c:40 -msgid "e" -msgstr "" - -#: grub-core/gfxmenu/widget-box.c:40 -msgid "s" -msgstr "" - -#: grub-core/gfxmenu/widget-box.c:40 util/grub-menulst2cfg.c:61 -msgid "w" -msgstr "" - -#: grub-core/hook/datehook.c:31 -msgid "YEAR" -msgstr "" - -#: grub-core/hook/datehook.c:32 -msgid "MONTH" -msgstr "" - -#: grub-core/hook/datehook.c:33 -msgid "DAY" -msgstr "" - -#: grub-core/hook/datehook.c:34 -msgid "HOUR" -msgstr "" - -#: grub-core/hook/datehook.c:35 -msgid "MINUTE" -msgstr "" - -#: grub-core/hook/datehook.c:36 -msgid "SECOND" -msgstr "" - -#: grub-core/hook/datehook.c:37 -msgid "WEEKDAY" -msgstr "" - -#: grub-core/kern/dl.c:412 -msgid "grub_mod_init" -msgstr "" - -#: grub-core/kern/dl.c:414 -msgid "grub_mod_fini" -msgstr "" - -#: grub-core/kern/dl.c:457 -msgid ".module_license" -msgstr "" - -#: grub-core/kern/dl.c:459 -msgid "LICENSE=GPLv3" -msgstr "" - -#: grub-core/kern/dl.c:460 -msgid "LICENSE=GPLv3+" -msgstr "" - -#: grub-core/kern/dl.c:461 -msgid "LICENSE=GPLv2+" -msgstr "" - -#: grub-core/kern/dl.c:481 -msgid ".modname" -msgstr "" - -#: grub-core/kern/dl.c:508 -msgid ".moddeps" -msgstr "" - -#: grub-core/kern/emu/hostdisk.c:147 -msgid "/dev/.devfsd" -msgstr "" - -#: grub-core/kern/emu/hostdisk.c:460 -msgid "linear" -msgstr "" - -#: grub-core/kern/emu/hostdisk.c:539 -msgid "part" -msgstr "" - -#: grub-core/kern/emu/hostdisk.c:561 util/grub-mkimagexx.c:131 -msgid "start" -msgstr "" - -#: grub-core/kern/emu/hostdisk.c:579 grub-core/kern/emu/hostdisk.c:581 -#: grub-core/kern/emu/hostdisk.c:877 -msgid "/dev/" -msgstr "" - -#: grub-core/kern/emu/hostdisk.c:694 -msgid "/disc" -msgstr "" - -#: grub-core/kern/emu/hostdisk.c:697 -#, c-format -msgid "part%d" -msgstr "" - -#: grub-core/kern/emu/hostdisk.c:699 grub-core/kern/emu/hostdisk.c:700 -msgid "/dev/disk/by-id/" -msgstr "" - -#: grub-core/kern/emu/hostdisk.c:703 -#, c-format -msgid "-part%d" -msgstr "" - -#: grub-core/kern/emu/hostdisk.c:708 -#, c-format -msgid "p%d" -msgstr "" - -#: grub-core/kern/emu/hostdisk.c:833 grub-core/kern/emu/hostdisk.c:834 -#: grub-core/kern/emu/hostdisk.c:835 grub-core/kern/emu/hostdisk.c:1347 -#: grub-core/kern/emu/hostdisk.c:1348 grub-core/kern/emu/hostdisk.c:1349 -msgid "hostdisk/" -msgstr "" - -#: grub-core/kern/emu/hostdisk.c:954 grub-core/kern/emu/hostdisk.c:961 -#: grub-core/kern/emu/hostdisk.c:1003 -msgid "kern.geom.debugflags" -msgstr "" - -#: grub-core/kern/emu/hostdisk.c:1250 grub-core/kern/emu/hostdisk.c:1257 -#: grub-core/kern/emu/hostdisk.c:1265 grub-core/kern/emu/hostdisk.c:1310 -#, c-format -msgid "%s:%d: %s" -msgstr "" - -#: grub-core/kern/emu/hostdisk.c:1335 include/grub/util/lvm.h:26 -msgid "/dev/mapper/" -msgstr "" - -#: grub-core/kern/emu/misc.c:78 grub-core/kern/emu/misc.c:94 -#: grub-core/kern/emu/misc.c:109 -#, c-format -msgid ".\n" -msgstr "" - -#: grub-core/kern/i386/coreboot/mmap.c:29 -msgid "LBIO" -msgstr "" - -#: grub-core/kern/i386/pc/init.c:91 -#, c-format -msgid "%cd%u" -msgstr "" - -#: grub-core/kern/i386/pc/init.c:97 grub-core/kern/i386/pc/init.c:101 -#, c-format -msgid ",%u" -msgstr "" - -#: grub-core/kern/ieee1275/cmain.c:66 grub-core/term/ieee1275/console.c:107 -msgid "/options" -msgstr "" - -#: grub-core/kern/ieee1275/cmain.c:67 -msgid "/openprom" -msgstr "" - -#: grub-core/kern/ieee1275/cmain.c:76 grub-core/kern/ieee1275/cmain.c:77 -msgid "SmartFirmware(tm)" -msgstr "" - -#: grub-core/kern/ieee1275/cmain.c:82 -msgid "OLPC" -msgstr "" - -#: grub-core/kern/ieee1275/cmain.c:87 -msgid "Emulated PC" -msgstr "" - -#: grub-core/kern/ieee1275/cmain.c:90 -msgid "IBM" -msgstr "" - -#: grub-core/kern/ieee1275/cmain.c:101 -msgid "PowerBook3,3" -msgstr "" - -#: grub-core/kern/ieee1275/cmain.c:111 grub-core/kern/ieee1275/cmain.c:112 -#: grub-core/kern/ieee1275/cmain.c:113 -msgid "MacRISC" -msgstr "" - -#: grub-core/kern/ieee1275/cmain.c:145 -msgid "1.0" -msgstr "" - -#: grub-core/kern/ieee1275/cmain.c:146 -msgid "1.1" -msgstr "" - -#: grub-core/kern/ieee1275/cmain.c:147 -msgid "1.2" -msgstr "" - -#: grub-core/kern/ieee1275/cmain.c:148 -msgid "1.3" -msgstr "" - -#: grub-core/kern/ieee1275/cmain.c:189 -msgid "/rom/boot-rom" -msgstr "" - -#: grub-core/kern/ieee1275/cmain.c:190 -msgid "/boot-rom" -msgstr "" - -#: grub-core/kern/ieee1275/cmain.c:193 grub-core/kern/ieee1275/cmain.c:194 -msgid "PPC Open Hack'Ware" -msgstr "" - -#: grub-core/kern/ieee1275/cmain.c:208 -msgid "/chosen" -msgstr "" - -#: grub-core/kern/ieee1275/ieee1275.c:581 -msgid "color!" -msgstr "" - -#: grub-core/kern/ieee1275/mmap.c:45 -msgid "/memory" -msgstr "" - -#: grub-core/kern/ieee1275/openfw.c:169 -msgid "/aliases" -msgstr "" - -#: grub-core/kern/ieee1275/openfw.c:410 -#, c-format -msgid "\\%s" -msgstr "" - -#: grub-core/kern/ieee1275/openfw.c:483 -msgid ",XXXXXXXXXXXX" -msgstr "" - -#: grub-core/kern/ieee1275/openfw.c:509 -msgid "XXXXXXXXXXXX" -msgstr "" - -#: grub-core/kern/mips/dl.c:254 -msgid "__gnu_local_gp" -msgstr "" - -#: grub-core/kern/misc.c:172 -#, c-format -msgid "%s:%d: " -msgstr "" - -#: grub-core/kern/misc.c:919 -msgid "0x" -msgstr "" - -#: grub-core/kern/misc.c:1018 -msgid "(null)" -msgstr "" - -#: grub-core/lib/backtrace.c:47 -#, c-format -msgid "%p" -msgstr "" - -#: grub-core/lib/crc64.c:100 grub-core/lib/xzembed/xz_dec_stream.c:444 -msgid "CRC64" -msgstr "" - -#: grub-core/lib/crypto.c:450 -msgid "/dev/tty" -msgstr "" - -#: grub-core/lib/crypto.c:450 -msgid "w+c" -msgstr "" - -#: grub-core/lib/i386/backtrace.c:60 grub-core/lib/i386/backtrace.c:63 -msgid "grub_backtrace_pointer" -msgstr "" - -#: grub-core/lib/ieee1275/cmos.c:41 -msgid "m5819" -msgstr "" - -#: grub-core/lib/ieee1275/datetime.c:37 -msgid "rtc" -msgstr "" - -#: grub-core/lib/ieee1275/datetime.c:87 -msgid "get-time" -msgstr "" - -#: grub-core/lib/ieee1275/datetime.c:139 -msgid "set-time" -msgstr "" - -#: grub-core/lib/ieee1275/halt.c:28 -msgid "power-off" -msgstr "" - -#: grub-core/lib/ieee1275/halt.c:29 -msgid "shut-down" -msgstr "" - -#: grub-core/lib/ieee1275/halt.c:30 -msgid "poweroff" -msgstr "" - -#: grub-core/lib/ieee1275/reboot.c:25 -msgid "reset-all" -msgstr "" - -#: grub-core/lib/ieee1275/cmos.c:41 -msgid "m5819" -msgstr "" - -#: grub-core/lib/ieee1275/datetime.c:37 -msgid "rtc" -msgstr "" - -#: grub-core/lib/ieee1275/datetime.c:87 -msgid "get-time" -msgstr "" - -#: grub-core/lib/ieee1275/datetime.c:139 -msgid "set-time" -msgstr "" - -#: grub-core/lib/ieee1275/halt.c:28 -msgid "power-off" -msgstr "" - -#: grub-core/lib/ieee1275/halt.c:29 -msgid "shut-down" -msgstr "" - -#: grub-core/lib/ieee1275/halt.c:30 -msgid "poweroff" -msgstr "" - -#: grub-core/lib/ieee1275/reboot.c:25 -msgid "reset-all" -msgstr "" - -#: grub-core/lib/posix_wrap/wctype.h:32 grub-core/lib/posix_wrap/wctype.h:42 -msgid "xdigit" -msgstr "" - -#: grub-core/lib/posix_wrap/wctype.h:39 -msgid "alnum" -msgstr "" - -#: grub-core/lib/posix_wrap/wctype.h:39 -msgid "cntrl" -msgstr "" - -#: grub-core/lib/posix_wrap/wctype.h:39 -msgid "lower" -msgstr "" - -#: grub-core/lib/posix_wrap/wctype.h:40 -msgid "alpha" -msgstr "" - -#: grub-core/lib/posix_wrap/wctype.h:40 -msgid "digit" -msgstr "" - -#: grub-core/lib/posix_wrap/wctype.h:41 -msgid "print" -msgstr "" - -#: grub-core/lib/posix_wrap/wctype.h:41 -msgid "upper" -msgstr "" - -#: grub-core/lib/posix_wrap/wctype.h:41 -msgid "blank" -msgstr "" - -#: grub-core/lib/posix_wrap/wctype.h:42 -msgid "graph" -msgstr "" - -#: grub-core/lib/posix_wrap/wctype.h:42 -msgid "punct" -msgstr "" - -#: grub-core/lib/reed_solomon.c:64 grub-core/lib/reed_solomon.c:65 -#: grub-core/lib/reed_solomon.c:66 grub-core/lib/reed_solomon.c:67 -#: grub-core/lib/reed_solomon.c:68 grub-core/lib/reed_solomon.c:69 -#: grub-core/lib/reed_solomon.c:70 grub-core/lib/reed_solomon.c:71 -#: grub-core/lib/reed_solomon.c:72 grub-core/lib/reed_solomon.c:73 -#: include/grub/mips/loongson/kernel.h:31 -#: include/grub/mips/loongson/memory.h:46 -#: include/grub/mips/loongson/memory.h:47 include/grub/mips/loongson/time.h:25 -#: include/grub/mips/qemu_mips/memory.h:33 include/grub/mips/time.h:29 -#: util/grub-mkimage.c:1253 util/grub-mkimage.c:1564 -msgid ".text" -msgstr "" - -#: grub-core/lib/reed_solomon.c:428 -msgid "tst.bin" -msgstr "" - -#: grub-core/lib/reed_solomon.c:441 grub-core/lib/reed_solomon.c:445 -msgid "tst_rs.bin" -msgstr "" - -#: grub-core/lib/reed_solomon.c:441 grub-core/lib/reed_solomon.c:460 -#: grub-core/lib/reed_solomon.c:465 util/grub-editenv.c:121 -#: util/grub-editenv.c:209 util/grub-fstest.c:202 util/grub-glue-efi.c:199 -#: util/grub-mkfont.c:782 util/grub-mkfont.c:819 util/grub-mkfont.c:843 -#: util/grub-mkimage.c:1975 util/grub-render-label.c:257 util/grub-setup.c:665 -#: util/grub-setup.c:672 -msgid "wb" -msgstr "" - -#: grub-core/lib/reed_solomon.c:460 -msgid "tst_dam.bin" -msgstr "" - -#: grub-core/lib/reed_solomon.c:465 -msgid "tst_rec.bin" -msgstr "" - -#: grub-core/loader/efi/appleloader.c:142 -msgid "Core Duo/Solo" -msgstr "" - -#: grub-core/loader/efi/appleloader.c:143 -msgid "Mac Pro" -msgstr "" - -#: grub-core/loader/efi/appleloader.c:144 -msgid "MBP" -msgstr "" - -#: grub-core/loader/efi/appleloader.c:145 -msgid "MBA" -msgstr "" - -#: grub-core/loader/efi/appleloader.c:146 -msgid "MB NV" -msgstr "" - -#: grub-core/loader/efi/appleloader.c:147 -msgid "MB NV2" -msgstr "" - -#: grub-core/loader/efi/appleloader.c:148 -msgid "MBP2011" -msgstr "" - -#: grub-core/loader/efi/appleloader.c:149 -msgid "MBP2012" -msgstr "" - -#: grub-core/loader/i386/bsd.c:135 -msgid "wdXY" -msgstr "" - -#: grub-core/loader/i386/bsd.c:428 grub-core/loader/i386/bsd.c:429 -msgid "/boot/zfs/zpool.cache" -msgstr "" - -#: grub-core/loader/i386/bsd.c:1606 grub-core/loader/i386/bsd.c:1609 -#: grub-core/loader/i386/bsd.c:1700 grub-core/loader/i386/bsd.c:1708 -#: grub-core/loader/i386/bsd.c:1710 -msgid "com" -msgstr "" - -#: grub-core/loader/i386/bsd.c:1735 -msgid "pc" -msgstr "" - -#: grub-core/loader/i386/bsd.c:1825 -#, c-format -msgid "kFreeBSD.%s" -msgstr "" - -#: grub-core/loader/i386/bsd.c:1892 -msgid "type=" -msgstr "" - -#: grub-core/loader/i386/bsdXX.c:369 -msgid "_DYNAMIC" -msgstr "" - -#: grub-core/loader/i386/bsdXX.c:604 -msgid "rd_root_image" -msgstr "" - -#: grub-core/loader/i386/bsdXX.c:606 -msgid "rd_root_size" -msgstr "" - -#: grub-core/loader/i386/linux.c:550 grub-core/term/i386/pc/vga_text.c:256 -#: grub-core/term/i386/pc/vga_text.c:281 -msgid "vga_text" -msgstr "" - -#: grub-core/loader/i386/linux.c:900 grub-core/loader/i386/pc/linux.c:244 -msgid "vga=" -msgstr "" - -#: grub-core/loader/i386/linux.c:913 grub-core/loader/i386/pc/linux.c:252 -msgid "ext" -msgstr "" - -#: grub-core/loader/i386/linux.c:915 grub-core/loader/i386/pc/linux.c:254 -msgid "ask" -msgstr "" - -#: grub-core/loader/i386/linux.c:985 grub-core/loader/i386/pc/linux.c:264 -msgid "mem=" -msgstr "" - -#: grub-core/loader/i386/pc/chainloader.c:104 -msgid "FAT12" -msgstr "" - -#: grub-core/loader/i386/pc/chainloader.c:105 -msgid "FAT16" -msgstr "" - -#: grub-core/loader/i386/pc/chainloader.c:106 -msgid "FAT32" -msgstr "" - -#: grub-core/loader/i386/pc/chainloader.c:256 -msgid "--force" -msgstr "" - -#: grub-core/loader/i386/pc/chainloader.c:263 -msgid "--bpb" -msgstr "" - -#: grub-core/loader/i386/pc/linux.c:235 -msgid "bzImage" -msgstr "" - -#: grub-core/loader/i386/pc/linux.c:235 -msgid "zImage" -msgstr "" - -#: include/grub/util/lvm.h:28 -msgid "/dev/linux_lvm/" -msgstr "" - -#: include/grub/zfs/dmu.h:110 -msgid "root_dataset" -msgstr "" - -#: include/grub/zfs/dmu.h:111 -msgid "sync_bplist" -msgstr "" - -#: include/grub/zfs/dmu.h:112 -msgid "errlog_scrub" -msgstr "" - -#: include/grub/zfs/dmu.h:113 -msgid "errlog_last" -msgstr "" - -#: include/grub/zfs/dmu.h:114 -msgid "spares" -msgstr "" - -#: include/grub/zfs/dmu.h:115 -msgid "deflate" -msgstr "" - -#: include/grub/zfs/dmu.h:116 -msgid "history" -msgstr "" - -#: include/grub/zfs/dmu.h:117 -msgid "pool_props" -msgstr "" - -#: include/grub/zfs/dmu.h:118 -msgid "l2cache" -msgstr "" - -#: include/grub/zfs/zfs_znode.h:29 -msgid "ROOT" -msgstr "" - -#: include/grub/zfs/zfs_znode.h:30 -msgid "VERSION" -msgstr "" - -#: include/grub/zfs/zfs_znode.h:31 -msgid "SA_ATTRS" -msgstr "" - -#: util/grub-editenv.c:106 util/grub-setup.c:1117 -msgid "\v" -msgstr "" - -#: util/grub-editenv.c:120 -#, c-format -msgid "%s.new" -msgstr "" - -#: util/grub-fstest.c:547 util/grub-mount.c:463 -msgid "prompt" -msgstr "" - -#: util/grub-fstest.c:666 -msgid "cp" -msgstr "" - -#: util/grub-fstest.c:747 util/grub-mount.c:571 -msgid "loop0" -msgstr "" - -#: util/grub-fstest.c:747 util/grub-mount.c:571 -msgid "md0" -msgstr "" - -#: util/grub-mkfont.c:981 -msgid "ascii-bitmaps" -msgstr "" - -#: util/grub-mkfont.c:982 -msgid "width-spec" -msgstr "" - -#: util/grub-mkfont.c:1003 -msgid "no-hinting" -msgstr "" - -#: util/grub-mkfont.c:1004 -msgid "no-bitmap" -msgstr "" - -#: util/grub-mkimage.c:574 -msgid "PowerPC" -msgstr "" - -#: util/grub-mkimage.c:1878 -msgid "(memdisk)/boot/grub" -msgstr "" - -#: util/grub-mkimage.c:1896 -msgid "xz" -msgstr "" - -#: util/misc.c:312 -msgid "PHYSICALDRIVE" -msgstr "" - -#: grub-core/term/ns8250.c:268 -#, c-format -msgid "com%d" -msgstr "" - -#: grub-core/term/ns8250.c:315 grub-core/term/serial.c:190 -#, c-format -msgid "port%lx" -msgstr "" - -#: grub-core/term/serial.c:183 -#, c-format -msgid "com%ld" -msgstr "" - -#: grub-core/term/serial.c:199 grub-core/term/serial.c:268 -msgid "com0" -msgstr "" - -#: grub-core/term/serial.c:219 -msgid "odd" -msgstr "" - -#: grub-core/term/serial.c:221 -msgid "even" -msgstr "" - -#: grub-core/term/serial.c:230 -msgid "1" -msgstr "" - -#: grub-core/term/serial.c:232 -msgid "2" -msgstr "" - -#: grub-core/term/serial.c:234 -msgid "1.5" -msgstr "" - -#: grub-core/term/serial.c:269 -msgid "com2" -msgstr "" - -#: grub-core/term/serial.c:270 -msgid "com1" -msgstr "" - -#: grub-core/term/serial.c:295 -#, c-format -msgid "serial_%s" -msgstr "" - -#: grub-core/term/serial.c:338 grub-core/term/serial.c:339 -#: grub-core/term/serial.c:343 grub-core/term/serial.c:344 -#: grub-core/term/serial.c:347 grub-core/term/serial.c:348 -msgid "serial_*" -msgstr "" - -#: grub-core/term/usb_keyboard.c:217 -#, c-format -msgid "usb_keyboard%d" -msgstr "" - -#: grub-core/video/efi_gop.c:308 -msgid "agp-internal-edid" -msgstr "" - -#: grub-core/video/efi_uga.c:134 -msgid "VMEM" -msgstr "" - -#: grub-core/video/efi_uga.c:134 -msgid "MMIO" -msgstr "" - -#: grub-core/video/ieee1275.c:74 -msgid "display" -msgstr "" - -#: grub-core/video/readers/jpeg.c:802 -msgid ".jpg" -msgstr "" - -#: grub-core/video/readers/jpeg.c:808 -msgid ".jpeg" -msgstr "" - -#: grub-core/video/readers/tga.c:477 -msgid ".tga" -msgstr "" - -#: grub-core/video/video.c:516 grub-core/video/video.c:545 -msgid "keep" -msgstr "" - -#: grub-core/video/video.c:517 -msgid "keep," -msgstr "" - -#: grub-core/video/video.c:518 -msgid "keep;" -msgstr "" - -#: include/grub/acpi.h:27 -msgid "RSD PTR " -msgstr "" - -#: include/grub/acpi.h:76 -msgid "APIC" -msgstr "" - -#: include/grub/dl.h:82 -msgid ", _" -msgstr "" - -#: include/grub/dl.h:113 include/grub/dl.h:121 include/grub/dl.h:128 -msgid "LICENSE=" -msgstr "" - -#: include/grub/dl.h:129 -msgid "\\license" -msgstr "" - -#: include/grub/efi/api.h:465 include/grub/types.h:78 include/grub/types.h:96 -#: include/grub/types.h:97 -msgid "lx" -msgstr "" - -#: include/grub/elf.h:117 -msgid "ELF" -msgstr "" - -#: include/grub/elf.h:968 -msgid "SUNW Solaris" -msgstr "" - -#: include/grub/elf.h:971 -msgid "GNU" -msgstr "" - -#: include/grub/emu/misc.h:42 -msgid "/device.map" -msgstr "" - -#: include/grub/fontformat.h:23 -msgid "PFF2" -msgstr "" - -#: include/grub/fontformat.h:26 -msgid "PTSZ" -msgstr "" - -#: include/grub/fontformat.h:27 -msgid "WEIG" -msgstr "" - -#: include/grub/fontformat.h:28 -msgid "MAXW" -msgstr "" - -#: include/grub/fontformat.h:29 -msgid "MAXH" -msgstr "" - -#: include/grub/fontformat.h:30 -msgid "ASCE" -msgstr "" - -#: include/grub/fontformat.h:31 -msgid "DESC" -msgstr "" - -#: include/grub/fontformat.h:32 -msgid "CHIX" -msgstr "" - -#: include/grub/fontformat.h:33 -msgid "DATA" -msgstr "" - -#: include/grub/fontformat.h:34 -msgid "FAMI" -msgstr "" - -#: include/grub/fontformat.h:35 -msgid "SLAN" -msgstr "" - -#: include/grub/gcrypt/gcrypt.h:55 -msgid "@VERSION@" -msgstr "" - -#: include/grub/gui.h:32 -msgid "__timeout__" -msgstr "" - -#: include/grub/i386/bsd.h:48 -msgid "elf kernel" -msgstr "" - -#: include/grub/i386/bsd.h:49 -msgid "elf64 kernel" -msgstr "" - -#: include/grub/i386/bsd.h:50 -msgid "elf module" -msgstr "" - -#: include/grub/i386/bsd.h:51 -msgid "elf obj module" -msgstr "" - -#: include/grub/i386/pc/pxe.h:166 -msgid "PXENV+" -msgstr "" - -#: include/grub/i386/pc/pxe.h:193 -msgid "!PXE" -msgstr "" - -#: include/grub/keyboard_layouts.h:22 -msgid "GRUBLAYO" -msgstr "" - -#: grub-core/video/sm712.c:263 -#, c-format -msgid " {-1, 0x%x, 0x5},\n" -msgstr "" - -#: grub-core/video/sm712.c:248 -#, c-format -msgid " {1, 0x%x, 0x%x},\n" -msgstr "" - -#: grub-core/video/sm712.c:250 -#, c-format -msgid " .byte 0x%02x, 0x%02x\n" -msgstr "" - -#: include/grub/types.h:74 include/grub/types.h:113 include/grub/types.h:114 -msgid "x" -msgstr "" - -#: include/grub/types.h:75 include/grub/types.h:115 -msgid "u" -msgstr "" - -#: include/grub/types.h:79 include/grub/types.h:98 -msgid "lu" -msgstr "" - -#: include/grub/types.h:82 include/grub/types.h:101 include/grub/types.h:102 -msgid "llx" -msgstr "" - -#: include/grub/types.h:83 include/grub/types.h:103 -msgid "llu" -msgstr "" - -#: include/grub/types.h:99 -msgid "ld" -msgstr "" - -#: include/grub/types.h:104 -msgid "lld" -msgstr "" - -#: util/grub-fstest.c:363 -#, c-format -msgid "%08x\n" -msgstr "" - -#: util/grub-fstest.c:387 util/grub-fstest.c:488 util/grub-mount.c:363 -#: util/grub-mount.c:418 -#, c-format -msgid "loop%d" -msgstr "" - -#: util/grub-fstest.c:391 util/grub-mount.c:367 -#, c-format -msgid "(host)%s" -msgstr "" - -#: util/grub-menulst2cfg.c:95 util/grub-menulst2cfg.c:112 -#, c-format -msgid "" -"}\n" -"\n" -msgstr "" - -#: util/grub-menulst2cfg.c:99 -#, c-format -msgid "menuentry '%s' {\n" -msgstr "" - -#: util/grub-mkfont.c:159 util/grub-mkfont.c:1203 -#, c-format -msgid ": %s\n" -msgstr "" - -#: util/grub-mkfont.c:171 -#, c-format -msgid "%x\n" -msgstr "" - -#: grub-core/loader/i386/xnu.c:181 grub-core/loader/i386/xnu.c:186 -#: include/grub/i386/tsc.h:45 include/grub/i386/tsc.h:48 -#: include/grub/i386/tsc.h:127 include/grub/i386/tsc.h:133 -msgid "%rax" -msgstr "" - -#: grub-core/loader/i386/xnu.c:459 -msgid "device-properties" -msgstr "" - -#: grub-core/loader/i386/xnu.c:658 -msgid "firmware-revision" -msgstr "" - -#: grub-core/loader/i386/xnu.c:668 -msgid "firmware-vendor" -msgstr "" - -#: grub-core/loader/i386/xnu.c:679 -msgid "firmware-abi" -msgstr "" - -#: grub-core/loader/i386/xnu.c:682 grub-core/loader/i386/xnu.c:687 -msgid "EFI32" -msgstr "" - -#: grub-core/loader/i386/xnu.c:689 -msgid "EFI64" -msgstr "" - -#: grub-core/loader/i386/xnu.c:693 -msgid "platform" -msgstr "" - -#: grub-core/loader/i386/xnu.c:698 -msgid "FSBFrequency" -msgstr "" - -#: grub-core/loader/i386/xnu.c:720 -msgid "configuration-table" -msgstr "" - -#: grub-core/loader/i386/xnu.c:761 -#, c-format -msgid "%08x-%04x-%04x-%02x%02x-" -msgstr "" - -#: grub-core/loader/i386/xnu.c:786 grub-core/loader/i386/xnu.c:820 -msgid "table" -msgstr "" - -#: grub-core/loader/i386/xnu.c:804 -msgid "alias" -msgstr "" - -#: grub-core/loader/i386/xnu.c:817 -msgid "runtime-services" -msgstr "" - -#: grub-core/loader/ia64/efi/linux.c:343 -msgid "b" -msgstr "" - -#: grub-core/loader/ia64/efi/linux.c:522 include/grub/lib/cmdline.h:25 -msgid "BOOT_IMAGE=" -msgstr "" - -#: grub-core/loader/ia64/efi/linux.c:539 -msgid "BOOT_IMAGE" -msgstr "" - -#: grub-core/loader/linux.c:164 -msgid "newc:" -msgstr "" - -#: grub-core/loader/macho32.c:18 -msgid "32" -msgstr "" - -#: grub-core/loader/macho64.c:18 -msgid "64" -msgstr "" - -#: grub-core/loader/mips/linux.c:46 -msgid "machtype=lemote-yeeloong-2f-8.9inches" -msgstr "" - -#: grub-core/loader/mips/linux.c:47 -msgid "machtype=lemote-fuloong-2f-box" -msgstr "" - -#: grub-core/loader/mips/linux.c:48 -msgid "machtype=lemote-fuloong-2e-unknown" -msgstr "" - -#: grub-core/loader/mips/linux.c:280 grub-core/loader/mips/linux.c:357 -#: grub-core/loader/mips/linux.c:466 -msgid "rd_start=0xXXXXXXXXXXXXXXXX" -msgstr "" - -#: grub-core/loader/mips/linux.c:281 grub-core/loader/mips/linux.c:362 -msgid "rd_size=0xXXXXXXXXXXXXXXXX" -msgstr "" - -#: grub-core/loader/mips/linux.c:286 grub-core/loader/mips/linux.c:374 -msgid "memsize=XXXXXXXXXXXXXXXXXXXX" -msgstr "" - -#: grub-core/loader/mips/linux.c:287 grub-core/loader/mips/linux.c:380 -msgid "highmemsize=XXXXXXXXXXXXXXXXXXXX" -msgstr "" - -#: grub-core/loader/mips/linux.c:288 grub-core/loader/mips/linux.c:387 -msgid "busclock=XXXXXXXXXX" -msgstr "" - -#: grub-core/loader/mips/linux.c:289 grub-core/loader/mips/linux.c:392 -msgid "cpuclock=XXXXXXXXXX" -msgstr "" - -#: grub-core/loader/mips/linux.c:375 -#, c-format -msgid "memsize=%lld" -msgstr "" - -#: grub-core/loader/mips/linux.c:381 -#, c-format -msgid "highmemsize=%lld" -msgstr "" - -#: grub-core/loader/mips/linux.c:388 -#, c-format -msgid "busclock=%d" -msgstr "" - -#: grub-core/loader/mips/linux.c:393 -#, c-format -msgid "cpuclock=%d" -msgstr "" - -#: grub-core/loader/mips/linux.c:456 -msgid "%s rd_start=0x%" -msgstr "" - -#: grub-core/loader/mips/linux.c:457 -msgid " rd_size=0x%" -msgstr "" - -#: grub-core/loader/mips/linux.c:466 -#, c-format -msgid "rd_start=0x%llx" -msgstr "" - -#: grub-core/loader/mips/linux.c:473 -msgid "rd_size=0xXXXXXXXXXXXXXXXXX" -msgstr "" - -#: grub-core/loader/mips/linux.c:473 -#, c-format -msgid "rd_size=0x%llx" -msgstr "" - -#: grub-core/loader/multiboot.c:207 -#, c-format -msgid "%dx%dx%d,%dx%d,auto" -msgstr "" - -#: grub-core/loader/multiboot.c:210 -#, c-format -msgid "%dx%d,auto" -msgstr "" - -#: grub-core/loader/sparc64/ieee1275/linux.c:454 -msgid "/virtual-memory" -msgstr "" - -#: grub-core/loader/xnu.c:222 grub-core/loader/xnu.c:568 -msgid "memory-map" -msgstr "" - -#: grub-core/loader/xnu.c:229 -msgid "DeviceTree" -msgstr "" - -#: grub-core/loader/xnu.c:617 -msgid "/Contents/" -msgstr "" - -#: grub-core/loader/xnu.c:748 -msgid "Driver-" -msgstr "" - -#: grub-core/loader/xnu.c:867 -msgid "DriversPackage-" -msgstr "" - -#: grub-core/loader/xnu.c:907 -msgid "RAMDisk" -msgstr "" - -#: grub-core/loader/xnu.c:961 -msgid "OSBundleRequired" -msgstr "" - -#: grub-core/loader/xnu.c:964 -msgid "CFBundleExecutable" -msgstr "" - -#: grub-core/loader/xnu.c:998 -msgid "key" -msgstr "" - -#: grub-core/loader/xnu.c:1000 grub-core/net/bootp.c:373 -msgid "string" -msgstr "" - -#: grub-core/loader/xnu.c:1002 -msgid "/key" -msgstr "" - -#: grub-core/loader/xnu.c:1043 -msgid ".kext" -msgstr "" - -#: grub-core/loader/xnu.c:1128 -msgid "Contents" -msgstr "" - -#: grub-core/loader/xnu.c:1133 -msgid "Plugins" -msgstr "" - -#: grub-core/loader/xnu.c:1139 -msgid "MacOS" -msgstr "" - -#: grub-core/loader/xnu.c:1143 -msgid "Info.plist" -msgstr "" - -#: grub-core/loader/xnu.c:1204 grub-core/loader/xnu.c:1207 -msgid "/MacOS/" -msgstr "" - -#: grub-core/loader/xnu.c:1283 -msgid "console,root,local-root,network-root" -msgstr "" - -#: grub-core/loader/xnu.c:1344 grub-core/loader/xnu.c:1345 -#: grub-core/loader/xnu.c:1348 -msgid "XNU.DeviceTree." -msgstr "" - -#: grub-core/net/bootp.c:40 -msgid "net_" -msgstr "" - -#: grub-core/net/bootp.c:40 include/grub/dl.h:82 include/grub/symbol.h:34 -msgid "_" -msgstr "" - -#: grub-core/net/bootp.c:43 -#, c-format -msgid "net_%s_%s" -msgstr "" - -#: grub-core/net/bootp.c:102 -msgid ":default" -msgstr "" - -#: grub-core/net/bootp.c:109 -#, c-format -msgid "%s:default" -msgstr "" - -#: grub-core/net/bootp.c:127 -msgid "hostname" -msgstr "" - -#: grub-core/net/bootp.c:131 -msgid "domain" -msgstr "" - -#: grub-core/net/bootp.c:135 -msgid "rootpath" -msgstr "" - -#: grub-core/net/bootp.c:139 -msgid "extensionspath" -msgstr "" - -#: grub-core/net/bootp.c:183 -msgid ":gw" -msgstr "" - -#: grub-core/net/bootp.c:190 -#, c-format -msgid "%s:gw" -msgstr "" - -#: grub-core/net/bootp.c:200 -msgid "boot_file" -msgstr "" - -#: grub-core/net/bootp.c:206 grub-core/net/net.c:713 -#, c-format -msgid "%d.%d.%d.%d" -msgstr "" - -#: grub-core/net/bootp.c:216 -#, c-format -msgid "tftp,%d.%d.%d.%d" -msgstr "" - -#: grub-core/net/bootp.c:226 -msgid "dhcp_server_name" -msgstr "" - -#: grub-core/net/bootp.c:235 -#, c-format -msgid "tftp,%s" -msgstr "" - -#: grub-core/net/bootp.c:277 -#, c-format -msgid "%s:dhcp" -msgstr "" - -#: grub-core/net/bootp.c:294 -msgid ":dhcp_tmp" -msgstr "" - -#: grub-core/net/bootp.c:387 -msgid "number" -msgstr "" - -#: grub-core/net/bootp.c:394 -#, c-format -msgid "%llu\n" -msgstr "" - -#: grub-core/net/bootp.c:398 -#, c-format -msgid "%lld\n" -msgstr "" - -#: grub-core/net/bootp.c:460 -#, c-format -msgid "%s:dhcp_tmp" -msgstr "" - -#: grub-core/net/drivers/arc/arcnet.c:89 -#, c-format -msgid "<%lu>" -msgstr "" - -#: grub-core/net/drivers/efi/efinet.c:205 -#, c-format -msgid "efinet%d" -msgstr "" - -#: grub-core/net/drivers/emu/emunet.c:104 -msgid "/dev/net/tun" -msgstr "" - -#: grub-core/net/drivers/ieee1275/ofnet.c:43 -#: grub-core/net/drivers/ieee1275/ofnet.c:47 -msgid ":speed=auto,duplex=auto,1.1.1.1,dummy,1.1.1.1,1.1.1.1,5,5,1.1.1.1,512" -msgstr "" - -#: grub-core/net/drivers/ieee1275/ofnet.c:135 -msgid "bootp-response" -msgstr "" - -#: grub-core/net/drivers/ieee1275/ofnet.c:136 -msgid "dhcp-response" -msgstr "" - -#: grub-core/net/drivers/ieee1275/ofnet.c:137 -msgid "bootpreply-packet" -msgstr "" - -#: grub-core/net/drivers/ieee1275/ofnet.c:266 -msgid "alloc-mem" -msgstr "" - -#: grub-core/net/drivers/ieee1275/ofnet.c:291 -#, c-format -msgid "ofnet_%s" -msgstr "" - -#: grub-core/net/http.c:103 grub-core/net/http.c:109 -msgid "HTTP/1.1 " -msgstr "" - -#: grub-core/net/http.c:133 grub-core/net/http.c:136 -msgid "Content-Length: " -msgstr "" - -#: grub-core/net/http.c:141 grub-core/net/http.c:142 -msgid "Transfer-Encoding: chunked" -msgstr "" - -#: grub-core/net/http.c:317 grub-core/net/http.c:330 grub-core/net/http.c:336 -msgid "GET " -msgstr "" - -#: grub-core/net/http.c:319 grub-core/net/http.c:349 grub-core/net/http.c:355 -#: grub-core/net/http.c:356 -msgid "" -" HTTP/1.1\r\n" -"Host: " -msgstr "" - -#: grub-core/net/http.c:321 grub-core/net/http.c:370 grub-core/net/http.c:377 -#: grub-core/net/http.c:378 -msgid "" -"\r\n" -"User-Agent: " -msgstr "" - -#: grub-core/net/http.c:322 grub-core/net/http.c:370 grub-core/net/http.c:377 -#: grub-core/net/http.c:378 grub-core/net/http.c:392 -msgid "\r\n" -msgstr "" - -#: grub-core/net/http.c:323 grub-core/net/http.c:383 -msgid "" -"Range: bytes=XXXXXXXXXXXXXXXXXXXX-\r\n" -"\r\n" -msgstr "" - -#: grub-core/net/http.c:386 -msgid "Range: bytes=%" -msgstr "" - -#: grub-core/net/http.c:386 -msgid "" -"-\r\n" -"\r\n" -msgstr "" - -#: grub-core/net/icmp6.c:416 -msgid ":XXXXXXXXXXXXXXXXXXXX" -msgstr "" - -#: grub-core/net/icmp6.c:417 -#, c-format -msgid "%s:%d" -msgstr "" - -#: grub-core/net/net.c:230 grub-core/net/net.c:238 -msgid ":slaac" -msgstr "" - -#: grub-core/net/net.c:253 grub-core/net/net.c:276 -msgid ":link" -msgstr "" - -#: grub-core/net/net.c:822 -msgid "net__mac" -msgstr "" - -#: grub-core/net/net.c:825 -#, c-format -msgid "net_%s_mac" -msgstr "" - -#: grub-core/net/net.c:835 -msgid "net__ip" -msgstr "" - -#: grub-core/net/net.c:838 -#, c-format -msgid "net_%s_ip" -msgstr "" - -#: grub-core/net/net.c:908 -#, c-format -msgid "%s:local" -msgstr "" - -#: grub-core/net/net.c:1054 -msgid "gw" -msgstr "" - -#: grub-core/net/net.c:1091 -#, c-format -msgid "%d.%d.%d.%d/%d " -msgstr "" - -#: grub-core/net/net.c:1184 grub-core/net/net.c:1188 -msgid "pxe:" -msgstr "" - -#: grub-core/net/tftp.c:180 grub-core/net/tftp.c:181 grub-core/net/tftp.c:343 -#: grub-core/net/tftp.c:344 grub-core/net/tftp.c:345 -msgid "tsize" -msgstr "" - -#: grub-core/net/tftp.c:183 grub-core/net/tftp.c:184 grub-core/net/tftp.c:335 -#: grub-core/net/tftp.c:336 grub-core/net/tftp.c:337 -msgid "blksize" -msgstr "" - -#: grub-core/net/tftp.c:331 grub-core/net/tftp.c:332 grub-core/net/tftp.c:333 -msgid "octet" -msgstr "" - -#: grub-core/net/tftp.c:339 grub-core/net/tftp.c:340 grub-core/net/tftp.c:341 -msgid "1024" -msgstr "" - -#: grub-core/net/tftp.c:431 grub-core/net/tftp.c:437 -msgid "closed" -msgstr "" - -#: grub-core/normal/auth.c:178 -msgid "\b" -msgstr "" - -#: grub-core/normal/autofs.c:74 -msgid "/fs.lst" -msgstr "" - -#: grub-core/normal/completion.c:133 -msgid "\" " -msgstr "" - -#: grub-core/normal/completion.c:135 util/grub-probe.c:506 -#: util/grub-probe.c:544 -#, c-format -msgid "' " -msgstr "" - -#: grub-core/normal/completion.c:337 -msgid "- " -msgstr "" - -#: grub-core/normal/completion.c:348 -msgid "-u" -msgstr "" - -#: grub-core/normal/completion.c:364 util/ieee1275/grub-ofpathname.c:39 -msgid "--help" -msgstr "" - -#: grub-core/normal/completion.c:366 -msgid "--usage" -msgstr "" - -#: grub-core/normal/crypto.c:90 -msgid "/crypto.lst" -msgstr "" - -#: grub-core/normal/dyncmd.c:104 -msgid "/command.lst" -msgstr "" - -#: grub-core/normal/main.c:363 -#, c-format -msgid "%s/grub.cfg" -msgstr "" - -#: grub-core/normal/main.c:516 -msgid "feature_chainloader_bpb" -msgstr "" - -#: grub-core/normal/main.c:516 -msgid "feature_ntldr" -msgstr "" - -#: grub-core/normal/main.c:516 -msgid "feature_platform_search_hint" -msgstr "" - -#: grub-core/normal/main.c:517 -msgid "feature_default_font_path" -msgstr "" - -#: grub-core/normal/main.c:517 -msgid "feature_all_video_module" -msgstr "" - -#: grub-core/normal/main.c:518 -msgid "feature_menuentry_id" -msgstr "" - -#: grub-core/normal/main.c:518 -msgid "feature_menuentry_options" -msgstr "" - -#: grub-core/normal/main.c:518 -msgid "feature_200_final" -msgstr "" - -#: grub-core/normal/main.c:519 -msgid "feature_nativedisk_cmd" -msgstr "" - -#: grub-core/normal/main.c:568 -msgid "white/black" -msgstr "" - -#: grub-core/normal/main.c:569 -msgid "black/white" -msgstr "" - -#: grub-core/normal/term.c:326 -msgid "/terminal.lst" -msgstr "" - -#: grub-core/partmap/amiga.c:34 -msgid "RDSK" -msgstr "" - -#: grub-core/partmap/amiga.c:51 -msgid "PART" -msgstr "" - -#: grub-core/term/at_keyboard.c:642 grub-core/term/at_keyboard.c:654 -msgid "at_keyboard" -msgstr "" - -#: grub-core/term/efi/serial.c:170 grub-core/term/efi/serial.c:173 -msgid "efiXXXXXXXXXXXXXXXXXXXX" -msgstr "" - -#: grub-core/term/efi/serial.c:174 -#, c-format -msgid "efi%d" -msgstr "" - -#: grub-core/term/emu/console.c:166 -msgid "vt100-color" -msgstr "" - -#: grub-core/term/i386/pc/vga_text.c:254 grub-core/term/i386/pc/vga_text.c:279 -msgid "mda_text" -msgstr "" - -#: grub-core/term/ieee1275/console.c:152 -msgid "cursor-on" -msgstr "" - -#: grub-core/term/ieee1275/console.c:154 -msgid "cursor-off" -msgstr "" - -#: grub-core/term/ieee1275/console.c:179 -msgid "output-device output" -msgstr "" - -#: grub-core/term/ieee1275/console.c:255 -msgid "dumb" -msgstr "" - -#: grub-core/term/ieee1275/console.c:257 -msgid "ieee1275-nocursor" -msgstr "" - -#: grub-core/term/ieee1275/console.c:259 -msgid "ieee1275" -msgstr "" - -#: grub-core/term/ieee1275/escc.c:229 -#, c-format -msgid "escc-ch-%c" -msgstr "" - -#: grub-core/term/ieee1275/escc.c:250 -msgid "mac-io" -msgstr "" - -#: grub-core/term/ieee1275/escc.c:269 -msgid "escc" -msgstr "" - -#: grub-core/term/morse.c:126 -msgid "audio" -msgstr "" - -#: include/grub/lvm.h:32 -msgid "LABELONE" -msgstr "" - -#: include/grub/lvm.h:33 -msgid "LVM2 001" -msgstr "" - -#: include/grub/macho.h:127 -msgid "complzss" -msgstr "" - -#: include/grub/net.h:459 -msgid "XXXX:XXXX:XXXX:XXXX:XXXX:XXXX:XXXX:XXXX" -msgstr "" - -#: include/grub/net.h:466 -msgid "XX:XX:XX:XX:XX:XX" -msgstr "" - -#: include/grub/symbol.h:44 -msgid "function" -msgstr "" - -#: include/grub/symbol.h:45 -msgid "object" -msgstr "" - -#: grub-core/lib/adler32.c:84 -msgid "ADLER32" -msgstr "" - -#: grub-core/lib/arg.c:123 -msgid "-h, " -msgstr "" - -#: grub-core/lib/arg.c:125 -msgid "-u, " -msgstr "" - -#: grub-core/lib/arg.c:127 -msgid " " -msgstr "" - -#: grub-core/lib/arg.c:131 grub-core/normal/completion.c:376 -#, c-format -msgid "--%s" -msgstr "" - -#: grub-core/lib/arg.c:136 -#, c-format -msgid "=%s" -msgstr "" - -#: grub-core/loader/i386/xnu.c:55 -msgid "ACPI_20" -msgstr "" - -#: grub-core/loader/i386/xnu.c:56 grub-core/loader/i386/xnu.c:644 -#: grub-core/loader/i386/xnu.c:645 grub-core/loader/i386/xnu.c:649 -#: grub-core/loader/i386/xnu.c:650 -msgid "ACPI" -msgstr "" - -#: grub-core/net/net.c:1132 -msgid "gw " -msgstr "" - -#: grub-core/kern/rescue_reader.c:40 -msgid "> " -msgstr "" - -#: grub-core/kern/rescue_reader.c:40 -msgid "grub rescue> " -msgstr "" - -#: grub-core/term/arc/console.c:87 grub-core/term/arc/console.c:88 -#: grub-core/term/arc/console.c:89 grub-core/term/arc/console.c:91 -msgid "line" -msgstr "" - -#: grub-core/term/arc/console.c:120 -msgid "ConsoleOut" -msgstr "" - -#: grub-core/term/arc/console.c:206 grub-core/term/serial.c:252 -#: grub-core/term/serial.c:334 -msgid "vt100" -msgstr "" - -#: grub-core/term/arc/console.c:208 -msgid "arc" -msgstr "" - -#: grub-core/parttool/msdospart.c:88 -msgid "hidden" -msgstr "" - -#: grub-core/loader/xnu.c:1422 grub-core/term/gfxterm.c:1153 -msgid "stretch" -msgstr "" - -#: grub-core/loader/machoXX.c:326 grub-core/loader/machoXX.c:328 -#: grub-core/loader/machoXX.c:329 grub-core/loader/machoXX.c:331 -#: grub-core/loader/machoXX.c:333 -msgid "Darwin Kernel Version " -msgstr "" - -#: grub-core/loader/i386/pc/plan9.c:267 -#, c-format -msgid "sdB%u" -msgstr "" - -#: grub-core/loader/i386/pc/plan9.c:270 -#, c-format -msgid "fd%u" -msgstr "" - -#: grub-core/loader/i386/pc/plan9.c:290 -msgid "sdZ0" -msgstr "" - -#: grub-core/loader/i386/pc/plan9.c:296 grub-core/loader/i386/pc/plan9.c:299 -#: grub-core/loader/i386/pc/plan9.c:308 grub-core/loader/i386/pc/plan9.c:311 -msgid "ata0" -msgstr "" - -#: grub-core/loader/i386/pc/plan9.c:300 grub-core/loader/i386/pc/plan9.c:313 -#, c-format -msgid "sd%c%d" -msgstr "" - -#: grub-core/loader/i386/pc/plan9.c:320 -#, c-format -msgid "sd0%u" -msgstr "" - -#: grub-core/loader/i386/pc/plan9.c:331 grub-core/loader/i386/pc/plan9.c:346 -#: grub-core/loader/i386/pc/plan9.c:347 -msgid "part=" -msgstr "" - -#: grub-core/loader/i386/pc/plan9.c:416 -#, c-format -msgid "%s!%s!%s" -msgstr "" - -#: grub-core/loader/i386/pc/plan9.c:419 -#, c-format -msgid "%s!%s" -msgstr "" - -#: grub-core/commands/wildcard.c:83 -msgid "*.\\|+{}[]?" -msgstr "" - -#: grub-core/disk/dmraid_nvidia.c:71 -msgid "NVIDIA" -msgstr "" - -#: grub-core/commands/sleep.c:45 -#, c-format -msgid "%d " -msgstr "" - -#: grub-core/commands/verify.c:258 -msgid "™" -msgstr "" - -#: grub-core/disk/cryptodisk.c:576 -msgid " sectors from sector 0x%" -msgstr "" - -#: grub-core/disk/cryptodisk.c:577 grub-core/disk/cryptodisk.c:626 -msgid " with offset of %" -msgstr "" - -#: grub-core/disk/cryptodisk.c:625 -msgid " sectors to sector 0x%" -msgstr "" - -#: grub-core/disk/geli.c:469 -msgid "" -msgstr "" - -#: grub-core/disk/luks.c:40 -msgid "LUKSº¾" -msgstr "" - -#: grub-core/font/font.c:450 grub-core/font/font.c:454 -msgid "/fonts/" -msgstr "" - -#: grub-core/font/font.c:450 grub-core/font/font.c:456 -msgid ".pf2" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:117 -msgid "path" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:389 -#, c-format -msgid "zfs-bootfs=%s/%llu%s%s%s%s%s%s" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:391 -msgid ",bootpath=\"" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:393 grub-core/fs/zfs/zfsinfo.c:396 -msgid "\"" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:394 -msgid ",diskdevid=\"" -msgstr "" - -#: grub-core/gdb/cstub.c:26 -msgid "0123456789abcdef" -msgstr "" - -#: grub-core/lib/i386/halt.c:26 -msgid "Shutdown" -msgstr "" - -#: grub-core/lib/minilzo/lzoconf.h:48 -msgid "2.05" -msgstr "" - -#: grub-core/lib/minilzo/lzoconf.h:49 -msgid "Apr 23 2011" -msgstr "" - -#: grub-core/lib/minilzo/lzoconf.h:80 grub-core/lib/minilzo/lzoconf.h:233 -#: grub-core/lib/minilzo/minilzo.h:68 include/grub/gcrypt/gcrypt.h:44 -msgid "C" -msgstr "" - -#: grub-core/loader/i386/bsd.c:611 grub-core/loader/i386/bsd.c:613 -#: grub-core/loader/i386/bsd.c:657 grub-core/loader/i386/bsd.c:659 -msgid "kFreeBSD." -msgstr "" - -#: grub-core/loader/i386/bsd.c:939 grub-core/loader/i386/linux.c:497 -#: grub-core/loader/i386/xnu.c:870 grub-core/loader/multiboot.c:106 -#: grub-core/term/gfxterm.c:378 -#, c-format -msgid "%s;" -msgstr "" - -#: grub-core/loader/i386/linux.c:966 -#, c-format -msgid "%ux%ux%u,%ux%u" -msgstr "" - - -#: grub-core/loader/i386/pc/plan9.c:119 -msgid "linuxswap" -msgstr "" - -#: grub-core/loader/i386/pc/plan9.c:146 grub-core/partmap/plan.c:46 -#: grub-core/partmap/plan.c:55 -msgid "part " -msgstr "" - -#: grub-core/loader/i386/pc/plan9.c:196 -#, c-format -msgid "%s.%d" -msgstr "" - -#: grub-core/loader/i386/pc/plan9.c:457 grub-core/loader/i386/pc/plan9.c:479 -msgid "bootfile=" -msgstr "" - -#: grub-core/loader/i386/xnu.c:149 -msgid "ineIntel" -msgstr "" - -#: grub-core/loader/i386/xnu.c:159 -msgid "GenuineIntel" -msgstr "" - -#: grub-core/loader/i386/bsd.c:50 -msgid "800x600" -msgstr "" - -#: util/misc.c:151 -#, c-format -msgid " bytes at offset 0x%llx" -msgstr "" - -#: util/misc.c:165 -msgid " bytes" -msgstr "" - -#: include/grub/lib/envblk.h:22 -msgid "# GRUB Environment Block\n" -msgstr "" - -#: include/grub/lib/envblk.h:23 -msgid "grubenv" -msgstr "" - -#: grub-core/normal/misc.c:120 -msgid "ext*" -msgstr "" - -#: grub-core/partmap/msdos.c:86 -msgid "HP Backup and Recovery Manager (?)" -msgstr "" - -#: grub-core/partmap/msdos.c:94 -msgid "ycgl" -msgstr "" - -#: grub-core/partmap/msdos.c:100 -msgid "Acer registration utility (?)" -msgstr "" - -#: grub-core/partmap/msdos.c:101 -msgid "GREGRegDone.Tag" -msgstr "" - -#: grub-core/script/execute.c:253 grub-core/script/execute.c:289 -msgid "#" -msgstr "" - -#: grub-core/script/execute.c:292 grub-core/script/execute.c:489 -#, c-format -msgid "%u" -msgstr "" - -#: grub-core/script/execute.c:693 -msgid "{" -msgstr "" - -#: grub-core/script/execute.c:705 -msgid "}" -msgstr "" - -#: grub-core/term/usb_keyboard.c:410 -#, c-format -msgid " report: 0x%02x 0x%02x 0x%02x 0x%02x 0x%02x 0x%02x 0x%02x 0x%02x\n" -msgstr "" - -#: grub-core/loader/i386/pc/plan9.c:47 -msgid "ZORT 0\r\n" -msgstr "" - -#: grub-core/loader/i386/bsd.c:486 -#, c-format -msgid " %-18s %-18s%14s%14s\n" -msgstr "" - -#: grub-core/loader/i386/bsd.c:495 -#, c-format -msgid " %-18s" -msgstr "" - -#: grub-core/loader/i386/bsd.c:502 -#, c-format -msgid " 0x%08x" -msgstr "" - -#: grub-core/loader/i386/bsd.c:510 -#, c-format -msgid " 0x%08x\n" -msgstr "" - -#: grub-core/loader/i386/bsd.c:552 -#, c-format -msgid " %-18s%14s%14s%14s\n" -msgstr "" - -#: grub-core/loader/i386/bsd.c:556 -#, c-format -msgid " %-18s 0x%08x 0x%08x 0x%08x" -msgstr "" - -#: grub-core/loader/mips/linux.c:271 grub-core/loader/mips/linux.c:324 -#: grub-core/loader/mips/linux.c:328 -msgid "a0" -msgstr "" - -#: grub-core/fs/btrfs.c:719 grub-core/fs/btrfs.c:814 -msgid " (%d stripes (%d substripes) of %" -msgstr "" - -#: grub-core/fs/btrfs.c:815 -msgid ") stripe %" -msgstr "" - -#: grub-core/fs/btrfs.c:816 -msgid " maps to 0x%" -msgstr "" - -#: grub-core/fs/btrfs.c:824 -msgid " for laddr 0x%" -msgstr "" - -#: grub-core/fs/btrfs.c:1671 grub-core/fs/ext2.c:961 -#: grub-core/fs/reiserfs.c:1363 grub-core/fs/xfs.c:881 -#, c-format -msgid "%04x%04x-%04x-%04x-%04x-%04x%04x%04x" -msgstr "" - -#: grub-core/lib/arg.c:109 grub-core/net/net.c:1169 -#, c-format -msgid "%s %s %s\n" -msgstr "" - -#: grub-core/lib/arg.c:121 -#, c-format -msgid "-%c%c " -msgstr "" - -#: grub-core/lib/arg.c:159 -#, c-format -msgid "" -"%s\n" -"\n" -msgstr "" - -#: grub-core/normal/menu.c:680 grub-core/normal/menu_entry.c:1126 -#: util/grub-menulst2cfg.c:106 -msgid " " -msgstr "" - -#: grub-core/normal/menu.c:692 -msgid "" -"\n" -" " -msgstr "" - -#: grub-core/normal/menu.c:708 -msgid "" -"\n" -" " -msgstr "" - -#: grub-core/normal/menu_entry.c:1052 -msgid "" -"\n" -" " -msgstr "" - -#: grub-core/normal/misc.c:76 -msgid ".%02" -msgstr "" - -#: grub-core/normal/misc.c:80 -#, c-format -msgid "%llu%s" -msgstr "" - -#: grub-core/normal/misc.c:95 -msgid "\t" -msgstr "" - -#: grub-core/normal/main.c:573 -msgid "y" -msgstr "" - -#: grub-core/normal/menu.c:300 grub-core/normal/menu.c:572 -msgid "fallback" -msgstr "" - -#: grub-core/net/net.c:737 -#, c-format -msgid "%02x:" -msgstr "" - -#: grub-core/net/net.c:1105 -#, c-format -msgid "%s/%d " -msgstr "" - -#: grub-core/net/net.c:1152 -#, c-format -msgid "%s %s\n" -msgstr "" - -#: grub-core/net/net.c:234 grub-core/net/net.c:272 grub-core/net/net.c:696 -#: grub-core/net/net.c:703 -msgid ":" -msgstr "" - -#: grub-core/net/ip.c:427 grub-core/net/ip.c:685 -msgid ", expected %" -msgstr "" - -#: grub-core/disk/geli.c:151 -#, c-format -msgid " keysize=%d\n" -msgstr "" - -#: grub-core/disk/scsi.c:619 -#, c-format -msgid ", blocksize=%u\n" -msgstr "" - -#: grub-core/fs/iso9660.c:1045 -#, c-format -msgid "%c%c%c%c-%c%c-%c%c-%c%c-%c%c-%c%c-%c%c" -msgstr "" - -#: grub-core/fs/zfs/zfs.c:1492 -msgid "big-endian gang\n" -msgstr "" - -#: grub-core/fs/zfs/zfs.c:1660 -msgid ", %p) for txg %" -msgstr "" - -#: include/grub/lvm.h:65 -msgid " LVM2 x[5A%r0N*>" -msgstr "" - -#: grub-core/video/sm712.c:267 -#, c-format -msgid " .byte 0x%04x, 0x00\n" -msgstr "" - -#: grub-core/kern/efi/mm.c:429 -#, c-format -msgid "MD: t=%x, p=%llx, v=%llx, n=%llx, a=%llx\n" -msgstr "" - -#: grub-core/kern/mm.c:402 -#, c-format -msgid "%s:%d: q=%p, q->size=0x%x, q->magic=0x%x\n" -msgstr "" - -#: grub-core/kern/mm.c:501 grub-core/kern/mm.c:529 -#, c-format -msgid "F:%p:%u:%p\n" -msgstr "" - -#: grub-core/kern/mm.c:516 -#, c-format -msgid "called at line %u\n" -msgstr "" - -#: grub-core/kern/mm.c:533 -#, c-format -msgid "A:%p:%u\n" -msgstr "" - -#: grub-core/kern/mm.c:548 -msgid "%s:%d: malloc (0x%" -msgstr "" - -#: grub-core/kern/mm.c:548 grub-core/kern/mm.c:561 grub-core/kern/mm.c:580 -#: grub-core/kern/mm.c:595 -msgid ") = " -msgstr "" - -#: grub-core/kern/mm.c:551 grub-core/kern/mm.c:564 grub-core/kern/mm.c:583 -#: grub-core/kern/mm.c:598 -#, c-format -msgid "%p\n" -msgstr "" - -#: grub-core/kern/mm.c:561 -msgid "%s:%d: zalloc (0x%" -msgstr "" - -#: grub-core/kern/mm.c:572 -#, c-format -msgid "%s:%d: free (%p)\n" -msgstr "" - -#: grub-core/kern/mm.c:580 -msgid "%s:%d: realloc (%p, 0x%" -msgstr "" - -#: grub-core/kern/mm.c:594 -msgid "%s:%d: memalign (0x%" -msgstr "" - -#: grub-core/lib/hexdump.c:49 grub-core/normal/menu_entry.c:1023 -msgid " " -msgstr "" - -#: grub-core/lib/hexdump.c:71 -msgid "*\n" -msgstr "" - -#: grub-core/lib/i386/backtrace.c:38 -#, c-format -msgid "%p: " -msgstr "" - -#: grub-core/lib/i386/backtrace.c:40 -msgid " (" -msgstr "" - -#: grub-core/lib/i386/backtrace.c:42 -#, c-format -msgid "%p," -msgstr "" - -#: grub-core/lib/i386/backtrace.c:43 -#, c-format -msgid "%p)\n" -msgstr "" - -#: grub-core/net/net.c:738 -msgid "XX:" -msgstr "" - -#: util/grub-mkimagexx.c:131 -msgid "_start" -msgstr "" - -#: grub-core/gfxmenu/gui_circular_progress.c:240 -msgid "°" -msgstr "" - -#: grub-core/kern/emu/argp_common.c:33 util/grub-editenv.c:61 -#: util/grub-fstest.c:531 util/grub-mount.c:449 -#, c-format -msgid "%s (%s) %s\n" -msgstr "" - -#: grub-core/video/sm712.c:252 grub-core/video/sm712.c:266 -#, c-format -msgid "FAIL\n" -msgstr "" - -#: grub-core/lib/hexdump.c:34 -#, c-format -msgid "%08lx " -msgstr "" - -#: grub-core/lib/backtrace.c:41 -msgid "%s.%x+%" -msgstr "" - -#: grub-core/commands/minicmd.c:113 -#, c-format -msgid "%x%x " -msgstr "" - -#: grub-core/commands/minicmd.c:158 -#, c-format -msgid "%s\t%d\t\t" -msgstr "" - -#: grub-core/disk/arc/arcdisk.c:238 grub-core/disk/arc/arcdisk.c:275 -#, c-format -msgid " failed: %ld\n" -msgstr "" - -#: grub-core/lib/xzembed/xz_stream.h:38 -msgid "YZ" -msgstr "" - -#: grub-core/font/font.c:197 -msgid "" -msgstr "" - -#: grub-core/font/font.c:635 -msgid "Unknown" -msgstr "" - -#: grub-core/lib/crypto.c:83 grub-core/lib/libgcrypt_wrap/mem.c:99 -msgid "gcrypt" -msgstr "" - -#: grub-core/lib/crypto.c:85 -msgid "gcrypt error: " -msgstr "" - -#: grub-core/commands/acpihalt.c:217 -msgid "\\" -msgstr "" - -#: grub-core/commands/minicmd.c:85 -#, c-format -msgid "%s (%d%c)\t%s\n" -msgstr "" - -#: grub-core/commands/probe.c:77 grub-core/commands/probe.c:91 -#: util/grub-mkimage.c:1905 -msgid "none" -msgstr "" - -#: grub-core/lib/libgcrypt_wrap/mem.c:101 -msgid "gcrypt: " -msgstr "" - -#: grub-core/lib/libgcrypt_wrap/mem.c:113 -msgid "gcrypt bug: " -msgstr "" - -#: grub-core/lib/posix_wrap/assert.h:30 -#, c-format -msgid "Assertion failed at %s:%d\n" -msgstr "" - -#: include/grub/list.h:42 -msgid "bad type cast between incompatible grub types" -msgstr "" - -#: grub-core/kern/mm.c:117 -#, c-format -msgid "Using memory for heap: start=%p, end=%p\n" -msgstr "" - -#: grub-core/loader/efi/chainloader.c:263 -msgid "file path: " -msgstr "" - -#: grub-core/net/net.c:720 -#, c-format -msgid "Unknown address type %d" -msgstr "" - -#: grub-core/normal/misc.c:164 -#, c-format -msgid ", UUID %s" -msgstr "" - -#: grub-core/video/readers/jpeg.c:817 -msgid "Tests loading of JPEG bitmap." -msgstr "" - -#: grub-core/video/readers/png.c:959 -msgid "Tests loading of PNG bitmap." -msgstr "" - -#: grub-core/video/readers/tga.c:485 -msgid "Tests loading of TGA bitmap." -msgstr "" - -#: util/grub-mkimagexx.c:107 -#, c-format -msgid "undefined symbol %s" -msgstr "" - -#: util/grub-mkimagexx.c:112 -#, c-format -msgid "section %d does not exist" -msgstr "" - -#: util/grub-mkimagexx.c:348 -msgid "trampoline offset too big (%" -msgstr "" - -#: util/grub-mkimagexx.c:395 -#, c-format -msgid " at the offset 0x%llx" -msgstr "" - -#: util/grub-mkimagexx.c:412 -#, c-format -msgid "unknown architecture type %d" -msgstr "" - -#: util/grub-mkimagexx.c:502 -msgid "too many fixup entries" -msgstr "" - -#: util/grub-mkimagexx.c:584 -msgid "can't add fixup entry for R_X86_64_32(S)" -msgstr "" - -#: util/grub-mkimagexx.c:639 -#, c-format -msgid "unknown machine type 0x%x" -msgstr "" - -#: util/grub-mkimagexx.c:828 -msgid "invalid ELF header" -msgstr "" - -#: util/grub-mkimagexx.c:946 -msgid "start symbol is not defined" -msgstr "" - -#: grub-core/commands/acpihalt.c:132 grub-core/commands/acpihalt.c:284 -#, c-format -msgid "Unknown opcode 0x%x\n" -msgstr "" - -#: grub-core/commands/acpihalt.c:176 -#, c-format -msgid "Unexpected extended opcode: 0x%x\n" -msgstr "" - -#: grub-core/commands/acpihalt.c:226 -#, c-format -msgid "Unknown opcode in _S5: 0x%x\n" -msgstr "" - -#: grub-core/commands/acpihalt.c:245 -#, c-format -msgid "Unknown data type in _S5: 0x%x\n" -msgstr "" - -#: grub-core/commands/acpihalt.c:301 -#, c-format -msgid "Usage: %s FILE\n" -msgstr "" - -#: grub-core/commands/acpihalt.c:305 -#, c-format -msgid "Couldn't open file\n" -msgstr "" - -#: grub-core/commands/acpihalt.c:326 -#, c-format -msgid "Sleep type = %d\n" -msgstr "" - -#: grub-core/loader/sparc64/ieee1275/linux.c:456 -msgid "Cannot find /virtual-memory node.\n" -msgstr "" - -#: grub-core/loader/sparc64/ieee1275/linux.c:462 -msgid "Cannot find /virtual-memory/translations size.\n" -msgstr "" - -#: grub-core/loader/sparc64/ieee1275/linux.c:469 -msgid "Cannot allocate translations buffer.\n" -msgstr "" - -#: grub-core/loader/sparc64/ieee1275/linux.c:475 -msgid "Cannot fetch /virtual-memory/translations property.\n" -msgstr "" - -#: grub-core/mmap/efi/mmap.c:87 -#, c-format -msgid "Unknown memory type %d, considering reserved\n" -msgstr "" - -#: grub-core/gdb/cstub.c:215 -#, c-format -msgid "Unhandled exception 0x%x at " -msgstr "" - -#: grub-core/gfxmenu/view.c:476 -#, c-format -msgid "Booting '%s'" -msgstr "" - -#: grub-core/gfxmenu/view.c:494 -#, c-format -msgid "Falling back to '%s'" -msgstr "" - -#: grub-core/disk/ieee1275/ofdisk.c:524 grub-core/kern/ieee1275/init.c:98 -msgid "/chosen/bootpath property missing!\n" -msgstr "" - -#: grub-core/commands/videotest.c:95 grub-core/commands/videotest.c:100 -msgid "The quick brown fox jumped over the lazy dog." -msgstr "" - -#: grub-core/commands/videotest.c:122 -msgid "Unicode test: happy☺ £ 5.00 ¡τäu! ℤ⊆â„" -msgstr "" - -#: grub-core/kern/i386/multiboot_mmap.c:51 -#, c-format -msgid "" -"WARNING: Memory map size exceeds limit (0x%x > 0x%x); it will be truncated\n" -msgstr "" - -#: grub-core/kern/main.c:261 -msgid "" -"Welcome to GRUB!\n" -"\n" -msgstr "" - -#: grub-core/kern/misc.c:1105 -msgid "" -"\n" -"Aborted." -msgstr "" - -#: grub-core/kern/misc.c:1111 -msgid " Press any key to exit." -msgstr "" - -#: grub-core/kern/err.c:131 -msgid "assert: error stack overflow detected!\n" -msgstr "" - -#: grub-core/kern/ieee1275/init.c:202 -msgid "Warning: attempt to claim over our own code!\n" -msgstr "" - -#: grub-core/lib/arg.c:177 -#, c-format -msgid "" -"\n" -"Report bugs to <%s>.\n" -msgstr "" - -#: grub-core/lib/i386/backtrace.c:48 -#, c-format -msgid "Invalid stack frame at %p (%p)\n" -msgstr "" - -#: grub-core/kern/efi/mm.c:511 -msgid "printing memory map\n" -msgstr "" - -#: grub-core/bus/emu/pci.c:58 -#, c-format -msgid "mapping 0x%x failed (error %d)\n" -msgstr "" - -#: grub-core/bus/usb/ehci.c:1572 -#, c-format -msgid "%s: prev not found, queues are corrupt\n" -msgstr "" - -#: grub-core/commands/boottime.c:46 -#, c-format -msgid "%3d.%03ds %2d.%03ds %s:%d %s\n" -msgstr "" - -#: grub-core/commands/date.c:49 -#, c-format -msgid "%d-%02d-%02d %02d:%02d:%02d %s\n" -msgstr "" - -#: grub-core/commands/i386/pc/drivemap.c:195 -#, c-format -msgid "%cD #%-3u (0x%02x) %cd%d\n" -msgstr "" - -#: grub-core/commands/i386/pc/drivemap.c:259 -msgid "Swapping" -msgstr "" - -#: grub-core/commands/i386/pc/drivemap.c:259 -msgid "Mapping" -msgstr "" - -#: grub-core/kern/rescue_parser.c:71 -msgid "Try `help' for usage\n" -msgstr "" - -#: grub-core/kern/rescue_reader.c:81 -msgid "Entering rescue mode...\n" -msgstr "" - -#: grub-core/kern/corecmd.c:153 -#, c-format -msgid "(%s): Filesystem is %s.\n" -msgstr "" - -#: grub-core/kern/corecmd.c:154 -msgid "unknown" -msgstr "" - -#: grub-core/commands/ls.c:157 -#, c-format -msgid " %d-%02d-%02d %02d:%02d:%02d %-11s " -msgstr "" - -#: grub-core/commands/ls.c:163 -#, c-format -msgid " %04d%02d%02d%02d%02d%02d " -msgstr "" - -#: grub-core/commands/testload.c:72 -#, c-format -msgid "Reading %s sequentially" -msgstr "" - -#: grub-core/commands/testload.c:76 grub-core/commands/testload.c:101 -#: grub-core/commands/testload.c:140 -msgid " Done.\n" -msgstr "" - -#: grub-core/commands/testload.c:79 -#, c-format -msgid "Reading %s sequentially again" -msgstr "" - -#: grub-core/commands/testload.c:96 grub-core/commands/testload.c:125 -#, c-format -msgid "" -"\n" -"Differs in %lld\n" -msgstr "" - -#: grub-core/commands/testload.c:104 -#, c-format -msgid "Reading %s backwards" -msgstr "" - -#: grub-core/commands/keylayouts.c:177 -#, c-format -msgid "Unknown key 0x%x detected\n" -msgstr "" - -#: grub-core/commands/videotest.c:203 -#, c-format -msgid "color %d: %08x\n" -msgstr "" - -#: grub-core/kern/efi/mm.c:196 -msgid "Trying to terminate EFI services again\n" -msgstr "" - -#: grub-core/kern/emu/hostdisk.c:639 -#, c-format -msgid "cannot get disk label of `%s'" -msgstr "" - -#: grub-core/term/at_keyboard.c:370 -msgid "No supported scancode set found\n" -msgstr "" - -#: grub-core/term/usb_keyboard.c:402 -#, c-format -msgid "%s failed. Stopped\n" -msgstr "" - -#: util/grub-setup.c:343 -#, c-format -msgid "guessing the root device failed, because of `%s'" -msgstr "" - -#: grub-core/commands/keylayouts.c:177 -#, c-format -msgid "Unknown key 0x%x detected\n" -msgstr "" - -#: grub-core/commands/videotest.c:203 -#, c-format -msgid "color %d: %08x\n" -msgstr "" - -#: grub-core/kern/efi/mm.c:196 -msgid "Trying to terminate EFI services again\n" -msgstr "" - -#: grub-core/kern/emu/hostdisk.c:639 -#, c-format -msgid "cannot get disk label of `%s'" -msgstr "" - -#: grub-core/term/at_keyboard.c:370 -msgid "No supported scancode set found\n" -msgstr "" - -#: grub-core/term/usb_keyboard.c:402 -#, c-format -msgid "%s failed. Stopped\n" -msgstr "" - -#: util/grub-setup.c:343 -#, c-format -msgid "guessing the root device failed, because of `%s'" -msgstr "" - -#: grub-core/commands/cat.c:106 -#, c-format -msgid "%C" -msgstr "" - -#: grub-core/fs/zfs/zfs.c:284 -msgid "org.illumos:lz4_compress" -msgstr "" - -#: grub-core/fs/zfs/zfs.c:350 -msgid "lz4" -msgstr "" - -#: include/grub/cbfs_core.h:125 -msgid "LARCHIVE" -msgstr "" - -#: include/grub/zfs/dmu.h:162 -msgid "features_for_read" -msgstr "" - -#: util/grub-mkimage.c:495 util/grub-mkimage.c:496 -msgid "arm-uboot" -msgstr "" - -#: util/grub-mkimage.c:514 util/grub-mkimage.c:515 -msgid "arm-efi" -msgstr "" - -#: grub-core/fs/newc.c:61 -msgid "newc" -msgstr "" - -#: grub-core/fs/odc.c:49 -msgid "odc" -msgstr "" - -#: grub-core/fs/cpio.c:49 -msgid "cpiofs" -msgstr "" - -#: grub-core/fs/cpio_be.c:49 -msgid "cpiofs_be" -msgstr "" - -#: grub-core/fs/cpio_common.c:153 -msgid " filesystem" -msgstr "" - -#: include/grub/uboot/api_public.h:65 -msgid "UBootAPI" -msgstr "" - -#: grub-core/net/drivers/uboot/ubootnet.c:146 -#, c-format -msgid "ubnet_%d" -msgstr "" - -#: grub-core/loader/arm/linux.c:103 -msgid "linux,initrd-start" -msgstr "" - -#: grub-core/loader/arm/linux.c:107 -msgid "linux,initrd-end" -msgstr "" - -#: grub-core/kern/uboot/init.c:131 -msgid "grub_bootdev" -msgstr "" - -#: grub-core/kern/uboot/init.c:141 -msgid "grub_bootpath" -msgstr "" - -#: grub-core/kern/arm/dl_helper.c:106 -msgid "BLX" -msgstr "" - -#: grub-core/kern/arm/dl_helper.c:106 -msgid "BL" -msgstr "" - -#: grub-core/term/uboot/console.c:130 -msgid "grub_term" -msgstr "" - -#: grub-core/gfxmenu/theme_loader.c:203 -msgid "terminal-border" -msgstr "" - -#: grub-core/gfxmenu/theme_loader.c:209 -msgid "terminal-left" -msgstr "" - -#: grub-core/gfxmenu/theme_loader.c:219 -msgid "terminal-top" -msgstr "" - -#: grub-core/gfxmenu/theme_loader.c:229 -msgid "terminal-width" -msgstr "" - -#: grub-core/gfxmenu/theme_loader.c:239 -msgid "terminal-height" -msgstr "" - -#: grub-core/gfxmenu/theme_loader.c:181 -msgid "desktop-image-scale-method" -msgstr "" - -#: grub-core/gfxmenu/theme_loader.c:186 -msgid "crop" -msgstr "" - -#: grub-core/gfxmenu/theme_loader.c:189 -msgid "padding" -msgstr "" - -#: grub-core/gfxmenu/theme_loader.c:192 -msgid "fitwidth" -msgstr "" - -#: grub-core/gfxmenu/theme_loader.c:195 -msgid "fitheight" -msgstr "" - -#: grub-core/gfxmenu/theme_loader.c:203 -msgid "desktop-image-h-align" -msgstr "" - -#: grub-core/gfxmenu/theme_loader.c:216 -msgid "desktop-image-v-align" -msgstr "" - -#: grub-core/gfxmenu/theme_loader.c:222 -msgid "bottom" -msgstr "" - -#: include/grub/emu/misc.h:29 -msgid "C:\\" -msgstr "" - -#: grub-core/disk/diskfilter.c:120 util/grub-probe.c:298 -msgid "lvmid/" -msgstr "" - -#: grub-core/kern/emu/hostdisk_devmapper.c:112 -msgid "LVM-" -msgstr "" - -#: grub-core/kern/emu/hostdisk_devmapper.c:113 -msgid "mpath-" -msgstr "" - -#: grub-core/kern/emu/hostdisk_devmapper.c:114 -msgid "DMRAID-" -msgstr "" - -#: util/grub-probe.c:749 -#, c-format -msgid "%08x-%04x-%04x-%02x%02x-%02x%02x%02x%02x%02x%02x" -msgstr "" - -#: util/grub-probe.c:843 -msgid "gpt_parttype" -msgstr "" - -#: grub-core/kern/uboot/init.c:85 -msgid "invalid U-Boot API version\n" -msgstr "" - -#: util/grub-mknetdir.c:144 -#, c-format -msgid "source %s/grub.cfg" -msgstr "" - -#: util/grub-mknetdir.c:149 -msgid "core" -msgstr "" - -#: util/grub-mknetdir.c:174 -msgid "/srv/tftp" -msgstr "" - -#: util/grub-mkpasswd-pbkdf2.c:188 -msgid "XXXXXXXXXXXXXXXXXXX" -msgstr "" - -#: util/grub-mkrescue.c:71 -#, c-format -msgid "%s=%s" -msgstr "" - -#: util/grub-mkrescue.c:97 -msgid "rom-directory" -msgstr "" - -#: util/grub-mkrescue.c:99 util/grub-mkrescue.c:373 -msgid "xorriso" -msgstr "" - -#: util/grub-mkrescue.c:102 -msgid "grub-glue-efi" -msgstr "" - -#: util/grub-mkrescue.c:103 -msgid "grub-render-label" -msgstr "" - -#: util/grub-mkrescue.c:104 -msgid "label-font" -msgstr "" - -#: util/grub-mkrescue.c:105 -msgid "label-color" -msgstr "" - -#: util/grub-mkrescue.c:106 -msgid "label-bgcolor" -msgstr "" - -#: util/grub-mkrescue.c:107 -msgid "product-name" -msgstr "" - -#: util/grub-mkrescue.c:108 -msgid "product-version" -msgstr "" - -#: util/grub-mkrescue.c:109 -msgid "sparc-boot" -msgstr "" - -#: util/grub-mkrescue.c:110 -msgid "arcs-boot" -msgstr "" - -#: util/grub-mkrescue.c:120 -msgid "xorriso -as mkisofs -help" -msgstr "" - -#: util/grub-mkrescue.c:236 -#, c-format -msgid "insmod %s\n" -msgstr "" - -#: util/grub-mkrescue.c:258 -#, c-format -msgid "search --fs-uuid --set=root %s" -msgstr "" - -#: util/grub-mkrescue.c:259 -#, c-format -msgid "set prefix=(${root})/boot/grub" -msgstr "" - -#: util/grub-mkrescue.c:266 util/grub-mkrescue.c:479 util/grub-mkrescue.c:523 -msgid "/boot/grub" -msgstr "" - -#: util/grub-mkrescue.c:305 -msgid "()/boot/grub" -msgstr "" - -#: util/grub-mkrescue.c:322 util/grub-mkrescue.c:382 -msgid "-as" -msgstr "" - -#: util/grub-mkrescue.c:323 util/grub-mkrescue.c:383 -msgid "mkisofs" -msgstr "" - -#: util/grub-mkrescue.c:324 -msgid "-help" -msgstr "" - -#: util/grub-mkrescue.c:374 -msgid "unicode.pf2" -msgstr "" - -#: util/grub-mkrescue.c:384 -msgid "-graft-points" -msgstr "" - -#: util/grub-mkrescue.c:390 -msgid "roms" -msgstr "" - -#: util/grub-mkrescue.c:442 -#, c-format -msgid "%04d-%02d-%02d-%02d-%02d-%02d-00" -msgstr "" - -#: util/grub-mkrescue.c:454 -msgid "--modification-date=" -msgstr "" - -#: util/grub-mkrescue.c:468 -msgid "eltorito.img" -msgstr "" - -#: util/grub-mkrescue.c:471 -msgid "BIOS" -msgstr "" - -#: util/grub-mkrescue.c:481 util/mkimage.c:180 -msgid "i386-pc-eltorito" -msgstr "" - -#: util/grub-mkrescue.c:484 -msgid "boot/grub/i386-pc/eltorito.img" -msgstr "" - -#: util/grub-mkrescue.c:485 -msgid "-no-emul-boot" -msgstr "" - -#: util/grub-mkrescue.c:486 -msgid "-boot-load-size" -msgstr "" - -#: util/grub-mkrescue.c:487 -msgid "4" -msgstr "" - -#: util/grub-mkrescue.c:488 -msgid "-boot-info-table" -msgstr "" - -#: util/grub-mkrescue.c:491 -msgid "grub2-boot-info" -msgstr "" - -#: util/grub-mkrescue.c:494 -msgid "boot_hybrid.img" -msgstr "" - -#: util/grub-mkrescue.c:495 -msgid "--grub2-boot-info" -msgstr "" - -#: util/grub-mkrescue.c:496 -msgid "--grub2-mbr" -msgstr "" - -#: util/grub-mkrescue.c:537 util/grub-mkrescue.c:742 -msgid "-G" -msgstr "" - -#: util/grub-mkrescue.c:550 -msgid "i386-multiboot/core.elf" -msgstr "" - -#: util/grub-mkrescue.c:555 -msgid "ofwx86.elf" -msgstr "" - -#: util/grub-mkrescue.c:565 -msgid "System" -msgstr "" - -#: util/grub-mkrescue.c:565 -msgid "Library" -msgstr "" - -#: util/grub-mkrescue.c:565 -msgid "CoreServices" -msgstr "" - -#: util/grub-mkrescue.c:568 -msgid "mach_kernel" -msgstr "" - -#: util/grub-mkrescue.c:573 -msgid "SystemVersion.plist" -msgstr "" - -#: util/grub-mkrescue.c:587 -msgid ".disk_label" -msgstr "" - -#: util/grub-mkrescue.c:589 -msgid "white" -msgstr "" - -#: util/grub-mkrescue.c:590 -msgid "black" -msgstr "" - -#: util/grub-mkrescue.c:592 -msgid ".disk_label.contentDetails" -msgstr "" - -#: util/grub-mkrescue.c:600 -msgid "-hfsplus" -msgstr "" - -#: util/grub-mkrescue.c:601 -msgid "-apm-block-size" -msgstr "" - -#: util/grub-mkrescue.c:602 -msgid "2048" -msgstr "" - -#: util/grub-mkrescue.c:603 util/grub-mkrescue.c:702 -msgid "-hfsplus-file-creator-type" -msgstr "" - -#: util/grub-mkrescue.c:604 util/grub-mkrescue.c:692 util/grub-mkrescue.c:703 -msgid "chrp" -msgstr "" - -#: util/grub-mkrescue.c:605 -msgid "tbxj" -msgstr "" - -#: util/grub-mkrescue.c:606 -msgid "/System/Library/CoreServices/.disk_label" -msgstr "" - -#: util/grub-mkrescue.c:611 util/grub-mkrescue.c:706 -msgid "-hfs-bless-by" -msgstr "" - -#: util/grub-mkrescue.c:613 -msgid "/System/Library/CoreServices/boot.efi" -msgstr "" - -#: util/grub-mkrescue.c:630 -msgid "bootia64.efi" -msgstr "" - -#: util/grub-mkrescue.c:634 -msgid "bootx64.efi" -msgstr "" - -#: util/grub-mkrescue.c:637 -msgid "bootia32.efi" -msgstr "" - -#: util/grub-mkrescue.c:640 -msgid "bootarm.efi" -msgstr "" - -#: util/grub-mkrescue.c:646 util/grub-mkrescue.c:653 -msgid "boot.efi" -msgstr "" - -#: util/grub-mkrescue.c:668 util/grub-mkrescue.c:673 -msgid "efi.img" -msgstr "" - -#: util/grub-mkrescue.c:669 -msgid "mformat" -msgstr "" - -#: util/grub-mkrescue.c:669 -msgid "-C" -msgstr "" - -#: util/grub-mkrescue.c:669 -msgid "2880" -msgstr "" - -#: util/grub-mkrescue.c:669 -msgid "16" -msgstr "" - -#: util/grub-mkrescue.c:669 util/grub-mkrescue.c:671 -msgid "-i" -msgstr "" - -#: util/grub-mkrescue.c:670 -msgid "::" -msgstr "" - -#: util/grub-mkrescue.c:671 -msgid "mcopy" -msgstr "" - -#: util/grub-mkrescue.c:671 -msgid "::/" -msgstr "" - -#: util/grub-mkrescue.c:672 -msgid "--efi-boot" -msgstr "" - -#: util/grub-mkrescue.c:674 -msgid "-efi-boot-part" -msgstr "" - -#: util/grub-mkrescue.c:675 -msgid "--efi-boot-image" -msgstr "" - -#: util/grub-mkrescue.c:683 -msgid "powerpc-ieee1275/core.elf" -msgstr "" - -#: util/grub-mkrescue.c:688 -msgid "grub.chrp" -msgstr "" - -#: util/grub-mkrescue.c:690 util/grub-mkrescue.c:693 -msgid "bootinfo.txt" -msgstr "" - -#: util/grub-mkrescue.c:691 -msgid "BootX" -msgstr "" - -#: util/grub-mkrescue.c:692 util/grub-mkrescue.c:693 -msgid "ppc" -msgstr "" - -#: util/grub-mkrescue.c:697 -msgid "/System/Library/CoreServices/grub.elf" -msgstr "" - -#: util/grub-mkrescue.c:697 util/grub-mkrescue.c:698 -msgid "/boot/grub/powerpc-ieee1275/core.elf" -msgstr "" - -#: util/grub-mkrescue.c:698 -msgid "/boot/grub/powerpc.elf" -msgstr "" - -#: util/grub-mkrescue.c:704 -msgid "tbxi" -msgstr "" - -#: util/grub-mkrescue.c:705 -msgid "/System/Library/CoreServices/BootX" -msgstr "" - -#: util/grub-mkrescue.c:707 -msgid "p" -msgstr "" - -#: util/grub-mkrescue.c:708 -msgid "/System/Library/CoreServices" -msgstr "" - -#: util/grub-mkrescue.c:710 -msgid "-sysid" -msgstr "" - -#: util/grub-mkrescue.c:711 -msgid "PPC" -msgstr "" - -#: util/grub-mkrescue.c:715 -msgid "sparc64-ieee1275/core.img" -msgstr "" - -#: util/grub-mkrescue.c:725 util/mkimage.c:1361 -msgid "cdboot.img" -msgstr "" - -#: util/grub-mkrescue.c:746 -msgid "--grub2-sparc-core" -msgstr "" - -#: util/grub-mkrescue.c:747 -msgid "/boot/grub/sparc64-ieee1275/core.img" -msgstr "" - -#: util/grub-mkrescue.c:750 -msgid "mips-arc/core.img" -msgstr "" - -#: util/grub-mkrescue.c:754 util/grub-mkrescue.c:765 -msgid "/boot/grub/mips-arc/grub" -msgstr "" - -#: util/grub-mkrescue.c:754 util/grub-mkrescue.c:755 util/grub-mkrescue.c:756 -msgid "/boot/grub/mips-arc/core.img" -msgstr "" - -#: util/grub-mkrescue.c:755 util/grub-mkrescue.c:761 -msgid "/boot/grub/mips-arc/sashARCS" -msgstr "" - -#: util/grub-mkrescue.c:756 util/grub-mkrescue.c:763 -msgid "/boot/grub/mips-arc/sash" -msgstr "" - -#: util/grub-mkrescue.c:760 util/grub-mkrescue.c:762 util/grub-mkrescue.c:764 -msgid "-mips-boot" -msgstr "" - -#: util/grub-mkrescue.c:768 -msgid "arc.exe" -msgstr "" - -#: util/grub-mkrescue.c:771 util/grub-mkrescue.c:799 -msgid "roms/mipsel-qemu_mips.elf" -msgstr "" - -#: util/grub-mkrescue.c:773 util/grub-mkrescue.c:800 -msgid "loongson.elf" -msgstr "" - -#: util/grub-mkrescue.c:775 util/grub-mkrescue.c:801 -msgid "mipsel-yeeloong.bin" -msgstr "" - -#: util/grub-mkrescue.c:776 -msgid "mipsel-fuloong2f.bin" -msgstr "" - -#: util/grub-mkrescue.c:778 util/grub-mkrescue.c:803 -msgid "roms/mips-qemu_mips.elf" -msgstr "" - -#: util/grub-mkrescue.c:782 util/grub-mkrescue.c:804 -msgid "roms/qemu.img" -msgstr "" - -#: util/grub-mkrescue.c:786 util/grub-mkrescue.c:805 -msgid "roms/coreboot.elf" -msgstr "" - -#: util/grub-mkrescue.c:799 -msgid "mipsel-qemu_mips.elf" -msgstr "" - -#: util/grub-mkrescue.c:800 -msgid "mipsel-loongson.elf" -msgstr "" - -#: util/grub-mkrescue.c:801 -msgid "roms/mipsel-yeeloong.bin" -msgstr "" - -#: util/grub-mkrescue.c:802 -msgid "roms/mipsel-fulong.bin" -msgstr "" - -#: util/grub-mkrescue.c:802 -msgid "mipsel-fulong.bin" -msgstr "" - -#: util/grub-mkrescue.c:803 -msgid "mips-qemu_mips.elf" -msgstr "" - -#: util/grub-mkrescue.c:804 -msgid "qemu.img" -msgstr "" - -#: util/grub-mkrescue.c:805 -msgid "coreboot.elf" -msgstr "" - -#: util/grub-mkrescue.c:816 -msgid "--protective-msdos-label" -msgstr "" - -#: util/grub-mkrescue.c:821 util/grub-mkrescue.c:824 -msgid "--sort-weight" -msgstr "" - -#: util/grub-mkrescue.c:826 -msgid "/boot" -msgstr "" - -#: util/grub-mkstandalone.c:227 util/grub-mkstandalone.c:257 -msgid "0000600" -msgstr "" - -#: util/grub-mkstandalone.c:228 util/grub-mkstandalone.c:229 -#: util/grub-mkstandalone.c:258 util/grub-mkstandalone.c:259 -msgid "0001750" -msgstr "" - -#: util/grub-mkstandalone.c:234 util/grub-mkstandalone.c:264 -msgid "ustar " -msgstr "" - -#: util/grub-mkstandalone.c:346 -msgid "tar" -msgstr "" - -#: util/mkimage.c:261 util/mkimage.c:262 -msgid "i386-xen" -msgstr "" - -#: util/mkimage.c:280 util/mkimage.c:281 -msgid "x86_64-xen" -msgstr "" - -#: grub-core/commands/verify.c:170 grub-core/commands/verify.c:171 -msgid "gcry_rsa" -msgstr "" - -#: grub-core/commands/xen/lsxen.c:46 grub-core/commands/xen/lsxen.c:60 -msgid "domid" -msgstr "" - -#: grub-core/commands/xen/lsxen.c:49 -#, c-format -msgid "/local/domain/%s" -msgstr "" - -#: grub-core/disk/xen/xendisk.c:82 -#, c-format -msgid "%s/sectors" -msgstr "" - -#: grub-core/disk/xen/xendisk.c:90 -#, c-format -msgid "%s/sector-size" -msgstr "" - -#: grub-core/disk/xen/xendisk.c:280 -#, c-format -msgid "device/vbd/%s/backend" -msgstr "" - -#: grub-core/disk/xen/xendisk.c:285 -#, c-format -msgid "%s/dev" -msgstr "" - -#: grub-core/disk/xen/xendisk.c:291 -#, c-format -msgid "xenid/%s" -msgstr "" - -#: grub-core/disk/xen/xendisk.c:295 -#, c-format -msgid "xen/%s" -msgstr "" - -#: grub-core/disk/xen/xendisk.c:301 -#, c-format -msgid "device/vbd/%s/backend-id" -msgstr "" - -#: grub-core/disk/xen/xendisk.c:331 -#, c-format -msgid "device/vbd/%s/ring-ref" -msgstr "" - -#: grub-core/disk/xen/xendisk.c:337 -#, c-format -msgid "device/vbd/%s/event-channel" -msgstr "" - -#: grub-core/disk/xen/xendisk.c:343 -#, c-format -msgid "device/vbd/%s/protocol" -msgstr "" - -#: grub-core/disk/xen/xendisk.c:353 -#, c-format -msgid "device/vbd/%s/state" -msgstr "" - -#: grub-core/disk/xen/xendisk.c:354 -msgid "3" -msgstr "" - -#: grub-core/disk/xen/xendisk.c:360 grub-core/disk/xen/xendisk.c:422 -#: grub-core/disk/xen/xendisk.c:428 grub-core/disk/xen/xendisk.c:454 -#, c-format -msgid "%s/state" -msgstr "" - -#: grub-core/disk/xen/xendisk.c:373 -#, c-format -msgid "device/vbd/%s" -msgstr "" - -#: grub-core/disk/xen/xendisk.c:396 grub-core/disk/xen/xendisk.c:405 -msgid "device/vbd" -msgstr "" - -#: grub-core/disk/xen/xendisk.c:424 grub-core/disk/xen/xendisk.c:433 -msgid "6" -msgstr "" - -#: grub-core/disk/xen/xendisk.c:440 -#, c-format -msgid "%s/ring-ref" -msgstr "" - -#: grub-core/disk/xen/xendisk.c:444 -#, c-format -msgid "%s/event-channel" -msgstr "" - -#: grub-core/gfxmenu/gui_list.c:747 -msgid "item_pixmap_style" -msgstr "" - -#: grub-core/gfxmenu/gui_list.c:787 -msgid "scrollbar_thumb_overlay" -msgstr "" - -#: grub-core/gfxmenu/gui_list.c:795 -msgid "scrollbar_slice" -msgstr "" - -#: grub-core/gfxmenu/gui_list.c:797 -msgid "west" -msgstr "" - -#: grub-core/gfxmenu/gui_list.c:801 -msgid "east" -msgstr "" - -#: grub-core/gfxmenu/gui_list.c:804 -msgid "scrollbar_left_pad" -msgstr "" - -#: grub-core/gfxmenu/gui_list.c:808 -msgid "scrollbar_right_pad" -msgstr "" - -#: grub-core/gfxmenu/gui_list.c:812 -msgid "scrollbar_top_pad" -msgstr "" - -#: grub-core/gfxmenu/gui_list.c:816 -msgid "scrollbar_bottom_pad" -msgstr "" - -#: grub-core/gfxmenu/gui_progress_bar.c:377 -msgid "highlight_overlay" -msgstr "" - -#: grub-core/kern/mips/dl.c:267 -msgid "_gp_disp" -msgstr "" - -#: grub-core/lib/progress.c:81 -#, c-format -msgid " [ %.20s %s %llu%% " -msgstr "" - -#: grub-core/lib/progress.c:88 -#, c-format -msgid "%s ]" -msgstr "" - -#: grub-core/lib/reed_solomon.c:74 -msgid "_text,_text" -msgstr "" - -#: grub-core/loader/i386/bsd.c:1571 -msgid "wd" -msgstr "" - -#: grub-core/loader/i386/bsd.c:1572 -msgid "fd" -msgstr "" - -#: grub-core/loader/i386/bsd.c:1573 grub-core/osdep/linux/ofpath.c:415 -msgid "sd" -msgstr "" - -#: grub-core/loader/i386/bsd.c:1575 -msgid "vnd" -msgstr "" - -#: grub-core/loader/i386/bsd.c:1576 -msgid "rd" -msgstr "" - -#: grub-core/loader/i386/xen_fileXX.c:45 -msgid "PAE=no," -msgstr "" - -#: grub-core/loader/i386/xen_fileXX.c:55 -msgid "PAE=yes," -msgstr "" - -#: grub-core/loader/i386/xen_fileXX.c:65 grub-core/loader/i386/xen_fileXX.c:66 -msgid "PAE=yes[extended-cr3]," -msgstr "" - -#: grub-core/loader/i386/xen_fileXX.c:77 -msgid "PAE=bimodal," -msgstr "" - -#: grub-core/loader/i386/xen_fileXX.c:87 grub-core/loader/i386/xen_fileXX.c:88 -msgid "PAE=bimodal[extended-cr3]," -msgstr "" - -#: grub-core/loader/i386/xen_fileXX.c:99 -msgid "PAE=yes,bimodal," -msgstr "" - -#: grub-core/loader/i386/xen_fileXX.c:109 -#: grub-core/loader/i386/xen_fileXX.c:110 -msgid "PAE=yes[extended-cr3],bimodal," -msgstr "" - -#: grub-core/loader/i386/xen_fileXX.c:121 -#: grub-core/loader/i386/xen_fileXX.c:123 -msgid "VIRT_BASE=" -msgstr "" - -#: grub-core/loader/i386/xen_fileXX.c:128 -#: grub-core/loader/i386/xen_fileXX.c:130 -msgid "VIRT_ENTRY=" -msgstr "" - -#: grub-core/loader/i386/xen_fileXX.c:135 -#: grub-core/loader/i386/xen_fileXX.c:137 -msgid "HYPERCALL_PAGE=" -msgstr "" - -#: grub-core/loader/i386/xen_fileXX.c:143 -#: grub-core/loader/i386/xen_fileXX.c:145 -msgid "ELF_PADDR_OFFSET=" -msgstr "" - -#: grub-core/loader/i386/xen_fileXX.c:191 util/mkimage.c:712 -msgid "Xen" -msgstr "" - -#: grub-core/loader/i386/xen_fileXX.c:220 util/grub-mkimagexx.c:207 -#: util/grub-mkimagexx.c:212 util/grub-mkimagexx.c:213 -msgid "generic" -msgstr "" - -#: grub-core/loader/i386/xen_fileXX.c:231 util/grub-mkimagexx.c:258 -#: util/grub-mkimagexx.c:259 -msgid "yes" -msgstr "" - -#: grub-core/loader/i386/xen_fileXX.c:237 -msgid "bimodal" -msgstr "" - -#: grub-core/loader/i386/xen_fileXX.c:243 util/grub-mkimagexx.c:253 -msgid "yes,bimodal" -msgstr "" - -#: grub-core/loader/i386/xen_fileXX.c:327 -#: grub-core/loader/i386/xen_fileXX.c:338 -#: grub-core/loader/i386/xen_fileXX.c:339 -msgid "__xen_guest" -msgstr "" - -#: grub-core/loader/multiboot.c:244 -msgid "--quirk-bad-kludge" -msgstr "" - -#: grub-core/loader/multiboot.c:251 -msgid "--quirk-modules-after-kernel" -msgstr "" - -#: grub-core/net/dns.c:712 -msgid "--only-ipv4" -msgstr "" - -#: grub-core/net/dns.c:714 -msgid "--only-ipv6" -msgstr "" - -#: grub-core/net/dns.c:716 -msgid "--prefer-ipv4" -msgstr "" - -#: grub-core/net/dns.c:718 -msgid "--prefer-ipv6" -msgstr "" - -#: grub-core/normal/main.c:538 -msgid "feature_timeout_style" -msgstr "" - -#: grub-core/normal/main.c:587 -msgid "light-gray/black" -msgstr "" - -#: grub-core/normal/main.c:588 -msgid "black/light-gray" -msgstr "" - -#: grub-core/normal/menu.c:53 -msgid "menu" -msgstr "" - -#: grub-core/normal/menu.c:54 -msgid "countdown" -msgstr "" - -#: grub-core/osdep/aros/config.c:39 grub-core/osdep/unix/config.c:39 -#: util/grub-install.c:739 util/grub-install.c:1395 util/grub-install.c:1540 -#: util/grub-mkrescue.c:388 util/grub-mkstandalone.c:235 -#: util/grub-mkstandalone.c:236 util/grub-mkstandalone.c:265 -#: util/grub-mkstandalone.c:266 util/grub-mkstandalone.c:311 -msgid "grub" -msgstr "" - -#: grub-core/osdep/aros/config.c:46 grub-core/osdep/unix/config.c:46 -msgid "pkgdatadir" -msgstr "" - -#: grub-core/osdep/aros/config.c:73 grub-core/osdep/unix/config.c:77 -#: grub-core/osdep/windows/config.c:40 -msgid "GRUB_ENABLE_CRYPTODISK" -msgstr "" - -#: grub-core/osdep/aros/config.c:77 grub-core/osdep/unix/config.c:81 -#: grub-core/osdep/windows/config.c:44 -msgid "GRUB_DISTRIBUTOR" -msgstr "" - -#: grub-core/osdep/linux/hostdisk.c:109 grub-core/osdep/linux/hostdisk.c:127 -msgid "udevadm" -msgstr "" - -#: grub-core/osdep/linux/hostdisk.c:110 -msgid "info" -msgstr "" - -#: grub-core/osdep/linux/hostdisk.c:111 -msgid "--query" -msgstr "" - -#: grub-core/osdep/linux/hostdisk.c:113 -msgid "--name" -msgstr "" - -#: grub-core/osdep/linux/hostdisk.c:139 -#, c-format -msgid "/sys%s/%s" -msgstr "" - -#: grub-core/osdep/linux/ofpath.c:105 -msgid "/obppath" -msgstr "" - -#: grub-core/osdep/linux/ofpath.c:117 -#, c-format -msgid "%s/obppath" -msgstr "" - -#: grub-core/osdep/linux/ofpath.c:125 -#, c-format -msgid "%s/devspec" -msgstr "" - -#: grub-core/osdep/linux/ofpath.c:132 -msgid "/sys" -msgstr "" - -#: grub-core/osdep/linux/ofpath.c:182 grub-core/osdep/linux/ofpath.c:185 -msgid "/sys/block/" -msgstr "" - -#: grub-core/osdep/linux/ofpath.c:189 grub-core/osdep/linux/ofpath.c:191 -msgid "/device" -msgstr "" - -#: grub-core/osdep/linux/ofpath.c:237 -#, c-format -msgid "/disk@%d" -msgstr "" - -#: grub-core/osdep/linux/ofpath.c:244 -#, c-format -msgid "/disk@%d:%c" -msgstr "" - -#: grub-core/osdep/linux/ofpath.c:277 -#, c-format -msgid "vdc-port-%d-%d" -msgstr "" - -#: grub-core/osdep/linux/ofpath.c:295 -#, c-format -msgid "%d.%d" -msgstr "" - -#: grub-core/osdep/linux/ofpath.c:311 -msgid "/vendor" -msgstr "" - -#: grub-core/osdep/linux/ofpath.c:315 -#, c-format -msgid "%s/vendor" -msgstr "" - -#: grub-core/osdep/linux/ofpath.c:334 grub-core/osdep/linux/ofpath.c:345 -msgid "end_device" -msgstr "" - -#: grub-core/osdep/linux/ofpath.c:353 grub-core/osdep/linux/ofpath.c:355 -#, c-format -msgid "%s/sas_device/%s/phy_identifier" -msgstr "" - -#: grub-core/osdep/linux/ofpath.c:368 -#, c-format -msgid "%s/sas_device/%s/sas_address" -msgstr "" - -#: grub-core/osdep/linux/ofpath.c:376 -#, c-format -msgid "%lx" -msgstr "" - -#: grub-core/osdep/linux/ofpath.c:391 grub-core/osdep/linux/ofpath.c:412 -msgid "/fp@0,0" -msgstr "" - -#: grub-core/osdep/linux/ofpath.c:396 -#, c-format -msgid "%d:%d:%d:%d" -msgstr "" - -#: grub-core/osdep/linux/ofpath.c:411 -msgid "qlc" -msgstr "" - -#: grub-core/osdep/linux/ofpath.c:414 -msgid "sbus" -msgstr "" - -#: grub-core/osdep/linux/ofpath.c:420 -msgid "/vdevice/" -msgstr "" - -#: grub-core/osdep/linux/ofpath.c:425 -#, c-format -msgid "/%s@%04lx000000000000" -msgstr "" - -#: grub-core/osdep/linux/ofpath.c:433 -#, c-format -msgid "/%s@%04lx000000000000:%c" -msgstr "" - -#: grub-core/osdep/linux/ofpath.c:445 -#, c-format -msgid "/sas/%s@%x" -msgstr "" - -#: grub-core/osdep/linux/ofpath.c:453 -#, c-format -msgid "/sas/%s@%x:%c" -msgstr "" - -#: grub-core/osdep/linux/ofpath.c:468 -#, c-format -msgid "%02x%02x%02x%02x00000000" -msgstr "" - -#: grub-core/osdep/linux/ofpath.c:473 -#, c-format -msgid "/sas/%s@%lx,%lu" -msgstr "" - -#: grub-core/osdep/linux/ofpath.c:481 -#, c-format -msgid "/sas/%s@%lx,%lu:%c" -msgstr "" - -#: grub-core/osdep/linux/ofpath.c:529 -msgid "floppy" -msgstr "" - -#: grub-core/osdep/linux/platform.c:60 util/grub-install-common.c:650 -#: util/grub-install-common.c:652 -msgid "x86_64" -msgstr "" - -#: grub-core/osdep/linux/platform.c:73 grub-core/osdep/unix/platform.c:151 -msgid "modprobe" -msgstr "" - -#: grub-core/osdep/linux/platform.c:73 grub-core/osdep/unix/platform.c:151 -msgid "efivars" -msgstr "" - -#: grub-core/osdep/linux/platform.c:74 grub-core/osdep/unix/exec.c:153 -msgid "/dev/null" -msgstr "" - -#: grub-core/osdep/linux/platform.c:77 -msgid "/sys/firmware/efi" -msgstr "" - -#: grub-core/osdep/linux/platform.c:87 -msgid "/proc/device-tree" -msgstr "" - -#: grub-core/osdep/unix/compress.c:25 -msgid "gzip" -msgstr "" - -#: grub-core/osdep/unix/compress.c:25 -msgid "--best" -msgstr "" - -#: grub-core/osdep/unix/compress.c:26 grub-core/osdep/unix/compress.c:33 -msgid "--stdout" -msgstr "" - -#: grub-core/osdep/unix/compress.c:33 -msgid "--lzma2=dict=128KiB" -msgstr "" - -#: grub-core/osdep/unix/compress.c:33 -msgid "--check=none" -msgstr "" - -#: grub-core/osdep/unix/compress.c:39 -msgid "lzop" -msgstr "" - -#: grub-core/osdep/unix/compress.c:39 -msgid "-9" -msgstr "" - -#: grub-core/osdep/unix/compress.c:39 grub-core/osdep/unix/config.c:90 -#: grub-core/osdep/unix/platform.c:160 grub-core/osdep/unix/platform.c:166 -msgid "-c" -msgstr "" - -#: grub-core/osdep/unix/config.c:89 -msgid "sh" -msgstr "" - -#: grub-core/osdep/unix/config.c:95 -msgid ". '" -msgstr "" - -#: grub-core/osdep/unix/exec.c:126 grub-core/osdep/unix/exec.c:184 -#: grub-core/osdep/unix/exec.c:229 -msgid "LC_ALL" -msgstr "" - -#: grub-core/osdep/unix/hostdisk.c:296 grub-core/osdep/unix/hostdisk.c:314 -msgid "TMPDIR" -msgstr "" - -#: grub-core/osdep/unix/hostdisk.c:300 grub-core/osdep/unix/hostdisk.c:318 -msgid "/tmp" -msgstr "" - -#: grub-core/osdep/unix/hostdisk.c:302 grub-core/osdep/unix/hostdisk.c:304 -#: grub-core/osdep/unix/hostdisk.c:305 grub-core/osdep/unix/hostdisk.c:320 -#: grub-core/osdep/unix/hostdisk.c:322 grub-core/osdep/unix/hostdisk.c:323 -msgid "/grub.XXXXXX" -msgstr "" - -#: grub-core/osdep/unix/platform.c:41 grub-core/osdep/unix/platform.c:179 -#: grub-core/osdep/unix/platform.c:183 -msgid "ofpathname" -msgstr "" - -#: grub-core/osdep/unix/platform.c:85 grub-core/osdep/unix/platform.c:92 -#: grub-core/osdep/unix/platform.c:100 grub-core/osdep/unix/platform.c:122 -#: grub-core/osdep/unix/platform.c:125 grub-core/osdep/unix/platform.c:142 -#: grub-core/osdep/unix/platform.c:146 grub-core/osdep/unix/platform.c:159 -#: grub-core/osdep/unix/platform.c:165 -msgid "efibootmgr" -msgstr "" - -#: grub-core/osdep/unix/platform.c:113 grub-core/osdep/unix/platform.c:114 -#: grub-core/osdep/unix/platform.c:115 grub-core/osdep/unix/platform.c:119 -msgid "Boot" -msgstr "" - -#: grub-core/osdep/unix/platform.c:122 grub-core/osdep/unix/platform.c:151 -#: grub-core/osdep/unix/platform.c:159 -msgid "-q" -msgstr "" - -#: grub-core/osdep/unix/platform.c:123 grub-core/osdep/unix/platform.c:126 -#: util/grub-mkrescue.c:483 -msgid "-b" -msgstr "" - -#: grub-core/osdep/unix/platform.c:123 grub-core/osdep/unix/platform.c:126 -#: util/grub-mkrescue.c:744 -msgid "-B" -msgstr "" - -#: grub-core/osdep/unix/platform.c:161 grub-core/osdep/unix/platform.c:167 -msgid "-p" -msgstr "" - -#: grub-core/osdep/unix/platform.c:161 grub-core/osdep/unix/platform.c:167 -msgid "-w" -msgstr "" - -#: grub-core/osdep/unix/platform.c:162 grub-core/osdep/unix/platform.c:168 -#: util/grub-mkrescue.c:669 -msgid "-L" -msgstr "" - -#: grub-core/osdep/unix/platform.c:195 grub-core/osdep/unix/platform.c:199 -msgid "XXXXXXXXXXXXXXXXXXXX" -msgstr "" - -#: grub-core/osdep/unix/platform.c:215 -msgid "nvsetenv" -msgstr "" - -#: grub-core/osdep/unix/platform.c:215 -msgid "boot-device" -msgstr "" - -#: grub-core/osdep/unix/platform.c:218 -#, c-format -msgid "setenv boot-device %s" -msgstr "" - -#: grub-core/osdep/unix/platform.c:231 -msgid "dvhtool" -msgstr "" - -#: grub-core/osdep/unix/platform.c:232 -msgid "--unix-to-vh" -msgstr "" - -#: grub-core/osdep/unix/relpath.c:109 -#, c-format -msgid "/%s/@" -msgstr "" - -#: grub-core/osdep/unix/relpath.c:141 -#, c-format -msgid "/%s/@%s" -msgstr "" - -#: grub-core/osdep/windows/hostdisk.c:494 -#: grub-core/osdep/windows/hostdisk.c:495 -msgid "\\GRUB." -msgstr "" - -#: grub-core/osdep/windows/init.c:50 -msgid "GetCurrentConsoleFont" -msgstr "" - -#: grub-core/osdep/windows/init.c:71 grub-core/osdep/windows/platform.c:73 -msgid "kernel32.dll" -msgstr "" - -#: grub-core/osdep/windows/init.c:81 -msgid "SetCurrentConsoleFontEx" -msgstr "" - -#: grub-core/osdep/windows/init.c:93 grub-core/osdep/windows/init.c:94 -msgid "Lucida Console" -msgstr "" - -#: grub-core/osdep/windows/init.c:105 -msgid "SetConsoleFont" -msgstr "" - -#: grub-core/osdep/windows/init.c:123 util/grub-mknetdir.c:139 -msgid "grub.cfg" -msgstr "" - -#: grub-core/osdep/windows/init.c:181 util/grub-install-common.c:702 -msgid "locale" -msgstr "" - -#: grub-core/osdep/windows/platform.c:28 -msgid "{8be4df61-93ca-11d2-aa0d-00e098032b8c}" -msgstr "" - -#: grub-core/osdep/windows/platform.c:81 -msgid "GetFirmwareEnvironmentVariableW" -msgstr "" - -#: grub-core/osdep/windows/platform.c:83 -msgid "SetFirmwareEnvironmentVariableW" -msgstr "" - -#: grub-core/osdep/windows/platform.c:85 -msgid "GetNativeSystemInfo" -msgstr "" - -#: grub-core/osdep/windows/platform.c:101 -#: grub-core/osdep/windows/platform.c:238 -#: grub-core/osdep/windows/platform.c:409 -msgid "BootOrder" -msgstr "" - -#: grub-core/osdep/windows/platform.c:185 -#: grub-core/osdep/windows/platform.c:196 -msgid "Boot0000" -msgstr "" - -#: include/grub/i386/cpuid.h:42 include/grub/i386/cpuid.h:65 -msgid "%rcx" -msgstr "" - -#: include/grub/osdep/hostfile_aros.h:110 -msgid "SYS:" -msgstr "" - -#: include/grub/util/install.h:32 -msgid "install-modules" -msgstr "" - -#: include/grub/util/install.h:35 util/grub-install-common.c:64 -#: util/grub-install-common.c:812 util/grub-install-common.c:823 -msgid "themes" -msgstr "" - -#: include/grub/util/install.h:37 util/grub-install-common.c:703 -msgid "fonts" -msgstr "" - -#: include/grub/util/install.h:39 -msgid "locales" -msgstr "" - -#: include/grub/util/install.h:41 -msgid "compress" -msgstr "" - -#: include/grub/util/install.h:42 -msgid "no,xz,gz,lzo" -msgstr "" - -#: include/grub/util/install.h:44 -msgid "core-compress" -msgstr "" - -#: include/grub/util/install.h:50 -msgid "override-directory" -msgstr "" - -#: include/grub/util/install.h:53 -msgid "locale-directory" -msgstr "" - -#: include/grub/util/install.h:56 -msgid "themes-directory" -msgstr "" - -#: include/grub/util/install.h:59 -msgid "grub-mkimage" -msgstr "" - -#: util/config.c:35 util/config.c:36 util/config.c:38 -msgid "GRUB_ENABLE_CRYPTODISK=" -msgstr "" - -#: util/config.c:45 util/config.c:46 util/config.c:51 -msgid "GRUB_DISTRIBUTOR=" -msgstr "" - -#: util/grub-install-common.c:55 util/grub-install-common.c:804 -msgid "starfield" -msgstr "" - -#: util/grub-install-common.c:57 util/grub-install-common.c:840 -msgid "unicode" -msgstr "" - -#: util/grub-install-common.c:193 -msgid ".lst" -msgstr "" - -#: util/grub-install-common.c:194 util/grub-mknetdir.c:97 -msgid ".img" -msgstr "" - -#: util/grub-install-common.c:195 util/grub-install-common.c:617 -#: util/grub-install-common.c:623 util/grub-install-common.c:628 -#: util/grub-install-common.c:629 util/grub-install-common.c:758 -#: util/grub-install-common.c:771 util/grub-install-common.c:774 -#: util/grub-install-common.c:787 -msgid ".mo" -msgstr "" - -#: util/grub-install-common.c:196 -msgid "menu.lst" -msgstr "" - -#: util/grub-install-common.c:370 -msgid "gz" -msgstr "" - -#: util/grub-install-common.c:380 -msgid "lzo" -msgstr "" - -#: util/grub-install-common.c:404 util/grub-install-common.c:411 -msgid "gcry_crc" -msgstr "" - -#: util/grub-install-common.c:430 -msgid "lzma" -msgstr "" - -#: util/grub-install-common.c:453 -msgid "--memdisk '" -msgstr "" - -#: util/grub-install-common.c:460 -msgid "--config '" -msgstr "" - -#: util/grub-install-common.c:467 -msgid "--pubkey '" -msgstr "" - -#: util/grub-install-common.c:488 -msgid "--note" -msgstr "" - -#: util/grub-install-common.c:618 -msgid ".gmo" -msgstr "" - -#: util/grub-install-common.c:628 util/grub-install-common.c:785 -msgid "LC_MESSAGES" -msgstr "" - -#: util/grub-install-common.c:644 util/grub-install-common.c:645 -#: util/grub-install-common.c:646 util/grub-install-common.c:647 -#: util/grub-install-common.c:648 util/grub-install-common.c:649 -#: util/grub-install-common.c:651 -msgid "i386" -msgstr "" - -#: util/grub-install-common.c:646 -msgid "qemu" -msgstr "" - -#: util/grub-install-common.c:647 -msgid "coreboot" -msgstr "" - -#: util/grub-install-common.c:653 util/grub-install-common.c:654 -#: util/grub-install-common.c:656 -msgid "mipsel" -msgstr "" - -#: util/grub-install-common.c:653 -msgid "loongson" -msgstr "" - -#: util/grub-install-common.c:654 util/grub-install-common.c:655 -msgid "qemu_mips" -msgstr "" - -#: util/grub-install-common.c:655 util/grub-install-common.c:657 -msgid "mips" -msgstr "" - -#: util/grub-install-common.c:658 -msgid "sparc64" -msgstr "" - -#: util/grub-install-common.c:659 -msgid "powerpc" -msgstr "" - -#: util/grub-install-common.c:660 -msgid "ia64" -msgstr "" - -#: util/grub-install-common.c:661 util/grub-install-common.c:663 -msgid "arm" -msgstr "" - -#: util/grub-install-common.c:662 -msgid "arm64" -msgstr "" - -#: util/grub-install-common.c:663 -msgid "uboot" -msgstr "" - -#: util/grub-install-common.c:669 util/grub-install-common.c:697 -#: util/grub-install.c:1317 util/grub-install.c:1339 util/grub-install.c:1351 -#, c-format -msgid "%s-%s" -msgstr "" - -#: util/grub-install-common.c:736 -msgid "command.lst" -msgstr "" - -#: util/grub-install-common.c:737 -msgid "fs.lst" -msgstr "" - -#: util/grub-install-common.c:737 util/grub-mkrescue.c:224 -msgid "partmap.lst" -msgstr "" - -#: util/grub-install-common.c:738 -msgid "parttool.lst" -msgstr "" - -#: util/grub-install-common.c:739 -msgid "video.lst" -msgstr "" - -#: util/grub-install-common.c:739 -msgid "crypto.lst" -msgstr "" - -#: util/grub-install-common.c:740 -msgid "terminal.lst" -msgstr "" - -#: util/grub-install-common.c:757 util/grub-install-common.c:769 -msgid "po" -msgstr "" - -#: util/grub-install-common.c:818 -msgid "theme.txt" -msgstr "" - -#: util/grub-install-common.c:874 -msgid "modinfo.sh" -msgstr "" - -#: util/grub-install-common.c:882 util/grub-install-common.c:888 -msgid "grub_modinfo_target_cpu=" -msgstr "" - -#: util/grub-install-common.c:885 util/grub-install-common.c:889 -msgid "grub_modinfo_platform=" -msgstr "" - -#: util/grub-install.c:118 -msgid "setup" -msgstr "" - -#: util/grub-install.c:212 -msgid "boot-directory" -msgstr "" - -#: util/grub-install.c:214 -msgid "root-directory" -msgstr "" - -#: util/grub-install.c:221 -msgid "grub-setup" -msgstr "" - -#: util/grub-install.c:222 -msgid "grub-mkrelpath" -msgstr "" - -#: util/grub-install.c:223 -msgid "grub-mkdevicemap" -msgstr "" - -#: util/grub-install.c:224 -msgid "grub-probe" -msgstr "" - -#: util/grub-install.c:225 -msgid "grub-editenv" -msgstr "" - -#: util/grub-install.c:231 -msgid "recheck" -msgstr "" - -#: util/grub-install.c:235 -msgid "force-file-id" -msgstr "" - -#: util/grub-install.c:237 -msgid "disk-module" -msgstr "" - -#: util/grub-install.c:240 -msgid "no-nvram" -msgstr "" - -#: util/grub-install.c:245 -msgid "no-bootsector" -msgstr "" - -#: util/grub-install.c:247 util/grub-setup.c:91 -msgid "no-rs-codes" -msgstr "" - -#: util/grub-install.c:253 util/grub-mknetdir.c:46 -msgid "debug-image" -msgstr "" - -#: util/grub-install.c:254 -msgid "removable" -msgstr "" - -#: util/grub-install.c:257 -msgid "bootloader-id" -msgstr "" - -#: util/grub-install.c:259 -msgid "efi-directory" -msgstr "" - -#: util/grub-install.c:280 util/mkimage.c:586 util/mkimage.c:587 -msgid "arm64-efi" -msgstr "" - -#: util/grub-install.c:341 -msgid "part_bsd" -msgstr "" - -#: util/grub-install.c:345 -#, c-format -msgid "part_%s" -msgstr "" - -#: util/grub-install.c:471 -#, c-format -msgid "cryptomount -u %s\n" -msgstr "" - -#: util/grub-install.c:788 util/grub-install.c:1067 -msgid "native" -msgstr "" - -#: util/grub-install.c:842 -msgid "device.map" -msgstr "" - -#: util/grub-install.c:885 util/grub-install.c:998 -msgid "EFI" -msgstr "" - -#: util/grub-install.c:948 -msgid "BOOT" -msgstr "" - -#: util/grub-install.c:952 -msgid "BOOTIA32.EFI" -msgstr "" - -#: util/grub-install.c:955 -msgid "BOOTX64.EFI" -msgstr "" - -#: util/grub-install.c:958 -msgid "BOOTIA64.EFI" -msgstr "" - -#: util/grub-install.c:961 -msgid "BOOTARM.EFI" -msgstr "" - -#: util/grub-install.c:964 -msgid "BOOTAARCH64.EFI" -msgstr "" - -#: util/grub-install.c:979 -msgid "grubia32.efi" -msgstr "" - -#: util/grub-install.c:982 -msgid "grubx64.efi" -msgstr "" - -#: util/grub-install.c:985 -msgid "grubia64.efi" -msgstr "" - -#: util/grub-install.c:988 -msgid "grubarm.efi" -msgstr "" - -#: util/grub-install.c:991 -msgid "grubarm64.efi" -msgstr "" - -#: util/grub-install.c:994 util/grub-install.c:1404 util/grub-install.c:1545 -msgid "grub.efi" -msgstr "" - -#: util/grub-install.c:1062 -msgid "GRUB_ENABLE_CRYPTODISK=1" -msgstr "" - -#: util/grub-install.c:1097 util/grub-mknetdir.c:111 -msgid "load.cfg" -msgstr "" - -#: util/grub-install.c:1105 util/grub-mknetdir.c:126 -#, c-format -msgid "set debug='%s'\n" -msgstr "" - -#: util/grub-install.c:1155 -#, c-format -msgid "search.fs_uuid %s root " -msgstr "" - -#: util/grub-install.c:1157 -msgid "search_fs_uuid" -msgstr "" - -#: util/grub-install.c:1174 -#, c-format -msgid "search.file %s root " -msgstr "" - -#: util/grub-install.c:1176 -msgid "search_fs_file" -msgstr "" - -#: util/grub-install.c:1232 -#, c-format -msgid "ieee1275/%s" -msgstr "" - -#: util/grub-install.c:1315 -msgid "core.efi" -msgstr "" - -#: util/grub-install.c:1324 util/grub-install.c:1337 -msgid "core.elf" -msgstr "" - -#: util/grub-install.c:1326 -#, c-format -msgid "%s-%s-elf" -msgstr "" - -#: util/grub-install.c:1386 -msgid "grub.elf" -msgstr "" - -#: util/grub-install.c:1449 util/grub-install.c:1476 -msgid "--allow-floppy " -msgstr "" - -#: util/grub-install.c:1450 util/grub-install.c:1477 -msgid "--verbose " -msgstr "" - -#: util/grub-install.c:1451 util/grub-install.c:1478 -msgid "--force " -msgstr "" - -#: util/grub-install.c:1452 util/grub-install.c:1479 -msgid "--skip-fs-probe" -msgstr "" - -#: util/grub-install.c:1453 -msgid "--no-rs-codes" -msgstr "" - -#: util/grub-install.c:1510 -#, c-format -msgid "dd if=/dev/zero of=%s" -msgstr "" - -#: util/grub-install.c:1568 -#, c-format -msgid "\\EFI\\%s\\%s" -msgstr "" - -#: util/grub-mkimagexx.c:95 util/grub-mkimagexx.c:352 -#: util/grub-mkimagexx.c:354 -msgid ".xen" -msgstr "" - -#: util/grub-mkimagexx.c:218 util/grub-mkimagexx.c:223 -#: util/grub-mkimagexx.c:224 -msgid "xen-3.0" -msgstr "" - -#: util/grub-mknetdir.c:41 -msgid "net-directory" -msgstr "" - -#: util/grub-mknetdir.c:43 -msgid "subdir" -msgstr "" - -#: util/grub-mknetdir.c:96 -msgid ".0" -msgstr "" - -#: util/grub-mknetdir.c:98 util/grub-mknetdir.c:99 -msgid ".elf" -msgstr "" - -#: util/grub-mknetdir.c:100 util/grub-mknetdir.c:101 util/grub-mknetdir.c:102 -#: util/grub-mknetdir.c:103 -msgid ".efi" -msgstr "" - -#: util/grub-mkrescue.c:259 -#, c-format -msgid "set prefix=(${root})/boot/grub\n" -msgstr "" - -#: util/grub-mkrescue.c:258 -#, c-format -msgid "search --fs-uuid --set=root %s\n" -msgstr "" - -#: util/grub-mkrescue.c:575 -#, c-format -msgid "\n" - "\n" - " ProductBuildVersion\n" - " \n" - " ProductName\n" - " %s\n" - " ProductVersion\n" - " %s\n" - "\n" - "\n" -msgstr "" - - -#: util/grub-install.c:1264 -#, c-format -msgid "set prefix=($root)'%s'\n" -msgstr "" - -#: grub-core/osdep/unix/config.c:108 -#, c-format -msgid "'; printf \"GRUB_ENABLE_CRYPTODISK=%s\\nGRUB_DISTRIBUTOR=%s\\n\", " - "\"$GRUB_ENABLE_CRYPTODISK\", \"$GRUB_DISTRIBUTOR\"" -msgstr "" - -#: grub-core/commands/tr.c:33 -msgid "upcase" -msgstr "" - -#: grub-core/commands/tr.c:34 -msgid "downcase" -msgstr "" - -#: grub-core/commands/tr.c:38 -msgid "abcdefghijklmnopqrstuvwxyz" -msgstr "" - -#: grub-core/commands/tr.c:39 -msgid "ABCDEFGHIJKLMNOPQRSTUVWXYZ" -msgstr "" - -#: grub-core/net/dns.c:694 -#, c-format -msgid "%s (%s)\n" -msgstr "" - -#: grub-core/osdep/aros/hostdisk.c:570 -#, c-format -msgid "T:grub.%d.%d.%d.%d" -msgstr "" - -#: util/grub-install.c:1722 -msgid "\\\\BootX" -msgstr "" - -#: util/grub-install.c:1816 -msgid "\\System\\Library\\CoreServices" -msgstr "" - -#: util/grub-install.c:1702 util/grub-install.c:1802 -msgid "r+" -msgstr "" - -#: util/grub-install.c:1128 -msgid "macppc" -msgstr "" - -#: util/grub-install.c:296 -msgid "macppc-directory" -msgstr "" -#: grub-core/term/xen/xen_kbd.c:468 grub-core/term/xen/xen_kbd.c:477 -msgid "xen_keyboard" -msgstr "" - -#: grub-core/video/xen/xenfb.c:79 -#, c-format -msgid "device/vfb/%s/backend" -msgstr "" - -#: grub-core/video/xen/xenfb.c:87 -#, c-format -msgid "device/vfb/%s/backend-id" -msgstr "" - -#: grub-core/video/xen/xenfb.c:102 -#, c-format -msgid "device/vfb/%s/page-ref" -msgstr "" - -#: grub-core/video/xen/xenfb.c:108 -#, c-format -msgid "device/vfb/%s/protocol" -msgstr "" - -#: grub-core/video/xen/xenfb.c:120 -#, c-format -msgid "device/vfb/%s/event-channel" -msgstr "" - -#: grub-core/video/xen/xenfb.c:131 -#, c-format -msgid "device/vfb/%s" -msgstr "" - -#: grub-core/video/xen/xenfb.c:172 -#, c-format -msgid "device/vfb/%s/state" -msgstr "" - -#: grub-core/video/xen/xenfb.c:270 -msgid "device/vfb" -msgstr "" - -#: include/grub/emu/misc.h:46 -msgid "I64u" -msgstr "" - -#: include/grub/emu/misc.h:47 -msgid "I64x" -msgstr "" -#: grub-core/term/xen/xen_kbd.c:143 -#, c-format -msgid "device/vkbd/%s/backend" -msgstr "" - -#: grub-core/term/xen/xen_kbd.c:151 -#, c-format -msgid "device/vkbd/%s/backend-id" -msgstr "" - -#: grub-core/term/xen/xen_kbd.c:166 -#, c-format -msgid "device/vkbd/%s/page-ref" -msgstr "" - -#: grub-core/term/xen/xen_kbd.c:172 -#, c-format -msgid "device/vkbd/%s/protocol" -msgstr "" - -#: grub-core/term/xen/xen_kbd.c:184 -#, c-format -msgid "device/vkbd/%s/event-channel" -msgstr "" - -#: grub-core/term/xen/xen_kbd.c:195 -#, c-format -msgid "device/vkbd/%s" -msgstr "" - -#: grub-core/term/xen/xen_kbd.c:204 -#, c-format -msgid "device/vkbd/%s/state" -msgstr "" - -#: grub-core/term/xen/xen_kbd.c:267 grub-core/video/xen/xenfb.c:239 -#, c-format -msgid "%s/page-ref" -msgstr "" - -#: grub-core/term/xen/xen_kbd.c:291 -msgid "device/vkbd" -msgstr "" - -#: grub-core/commands/fileXX.c:51 grub-core/commands/fileXX.c:62 -#: grub-core/commands/fileXX.c:63 -msgid ".note.netbsd.ident" -msgstr "" - -#: grub-core/commands/legacycfg.c:484 -msgid "initrd16initrd" -msgstr "" - -#: grub-core/commands/syslinuxcfg.c:146 -msgid "extract_syslinux_entries_" -msgstr "" - -#: grub-core/commands/syslinuxcfg.c:147 -msgid "syslinux_" -msgstr "" -#: grub-core/commands/file.c:41 -msgid "is-x86_64-xen-domu" -msgstr "" - -#: grub-core/commands/file.c:69 -msgid "is-x86_64-kfreebsd" -msgstr "" - -#: grub-core/commands/file.c:76 -msgid "is-x86_64-knetbsd" -msgstr "" - -#: grub-core/commands/file.c:81 -msgid "is-x86_64-efi" -msgstr "" - -#: grub-core/commands/file.c:89 -msgid "is-x86_64-xnu" -msgstr "" - -#: grub-core/commands/file.c:506 -msgid "hibr" -msgstr "" - -#: grub-core/commands/file.c:508 -msgid "HIBR" -msgstr "" - -#: grub-core/disk/diskfilter.c:1060 -msgid ",%" -msgstr "" - -#: grub-core/disk/diskfilter.c:1061 -#, c-format -msgid ") into %s (%s)\n" -msgstr "" - -#: grub-core/osdep/windows/blocklist.c:88 -msgid ", first_lcn=%" -msgstr "" - -#: util/grub-mkimagexx.c:438 -msgid " (0x%" -msgstr "" - -#: util/grub-mkimagexx.c:666 util/grub-mkimagexx.c:679 -#: util/grub-mkimagexx.c:702 util/grub-mkimagexx.c:728 -#: util/grub-mkimagexx.c:812 -msgid " at the offset 0x%" -msgstr "" - -#: util/misc.c:149 -msgid " bytes at offset 0x%" -msgstr "" - -#: grub-core/term/serial.c:64 -msgid "on|off" -msgstr "" - -#: util/grub-mkimagexx.c:898 -msgid "jump24 relocation out of range" -msgstr "" - -#: grub-core/osdep/linux/ofpath.c:48 -#, c-format -msgid "ofpath: error: " -msgstr "" - -#: grub-core/osdep/linux/ofpath.c:61 -#, c-format -msgid "ofpath: info: " -msgstr "" - -#: grub-core/osdep/linux/ofpath.c:119 -#, c-format -msgid "Trying %s\n" -msgstr "" - -#: grub-core/osdep/windows/blocklist.c:108 -#, c-format -msgid "FSCTL_GET_RETRIEVAL_POINTERS fails: %s" -msgstr "" - -#: grub-core/osdep/windows/blocklist.c:84 -#, c-format -msgid "unsupported fs for blocklist on windows: %s" -msgstr "" - -#: include/grub/util/install.h:45 util/grub-mkstandalone.c:45 -msgid "xz|none|auto" -msgstr "" - -#: util/grub-mkimagexx.c:845 -msgid "CALL26 Relocation out of range" -msgstr "" - -#: grub-core/commands/verify.c:313 -msgid "\x99" -msgstr "" - -#: grub-core/commands/videotest.c:122 -msgid "Unicode test: happy\xE2\x98\xBA \xC2\xA3 5.00" - " \xC2\xA1\xCF\x84\xC3\xA4u! " - " \xE2\x84\xA4\xE2\x8A\x86\xE2\x84\x9D" -msgstr "" - -#: grub-core/disk/luks.c:40 -msgid "LUKS\xBA\xBE" -msgstr "" - -#: grub-core/disk/lvmparse.c:67 grub-core/disk/lvmparse.c:69 -msgid " = [" -msgstr "" - -#: grub-core/disk/lvmparse.c:115 grub-core/disk/lvmparse.c:123 -#: grub-core/disk/lvmparse.c:167 grub-core/disk/lvmparse.c:170 -msgid "id = \"" -msgstr "" - -#: grub-core/disk/lvmparse.c:127 -msgid "extent_size = " -msgstr "" - -#: grub-core/disk/lvmparse.c:143 grub-core/disk/lvmparse.c:146 -msgid "physical_volumes {" -msgstr "" - -#: grub-core/disk/lvmparse.c:174 -msgid "pe_start = " -msgstr "" - -#: grub-core/disk/lvmparse.c:199 -msgid "logical_volumes" -msgstr "" - -#: grub-core/disk/lvmparse.c:202 -msgid "logical_volumes = " -msgstr "" - -#: grub-core/disk/lvmparse.c:226 grub-core/disk/lvmparse.c:227 -msgid "status" -msgstr "" - -#: grub-core/disk/lvmparse.c:226 -msgid "VISIBLE" -msgstr "" - -#: grub-core/disk/lvmparse.c:227 -msgid "PVMOVE" -msgstr "" - -#: grub-core/disk/lvmparse.c:228 -msgid "segment_count = " -msgstr "" - -#: grub-core/disk/lvmparse.c:246 -msgid "segment" -msgstr "" - -#: grub-core/disk/lvmparse.c:255 -msgid "start_extent = " -msgstr "" - -#: grub-core/disk/lvmparse.c:263 -msgid "extent_count = " -msgstr "" - -#: grub-core/disk/lvmparse.c:272 grub-core/disk/lvmparse.c:275 -msgid "type = \"" -msgstr "" - -#: grub-core/disk/lvmparse.c:277 grub-core/disk/lvmparse.c:278 -msgid "striped\"" -msgstr "" - -#: grub-core/disk/lvmparse.c:282 -msgid "stripe_count = " -msgstr "" - -#: grub-core/disk/lvmparse.c:292 grub-core/disk/lvmparse.c:396 -msgid "stripe_size = " -msgstr "" - -#: grub-core/disk/lvmparse.c:299 grub-core/disk/lvmparse.c:307 -msgid "stripes = [" -msgstr "" - -#: grub-core/disk/lvmparse.c:332 -msgid "mirror\"" -msgstr "" - -#: grub-core/disk/lvmparse.c:336 -msgid "mirror_count = " -msgstr "" - -#: grub-core/disk/lvmparse.c:350 grub-core/disk/lvmparse.c:358 -msgid "mirrors = [" -msgstr "" - -#: grub-core/disk/lvmparse.c:375 grub-core/disk/lvmparse.c:376 -#: grub-core/disk/lvmparse.c:377 grub-core/disk/lvmparse.c:384 -msgid "raid" -msgstr "" - -#: grub-core/disk/lvmparse.c:378 -msgid "raidX" -msgstr "" - -#: grub-core/disk/lvmparse.c:386 -msgid "device_count = " -msgstr "" - -#: grub-core/disk/lvmparse.c:410 grub-core/disk/lvmparse.c:418 -msgid "raids = [" -msgstr "" - -#: grub-core/fs/cpio.c:24 -msgid "\xc7\x71" -msgstr "" - -#: grub-core/fs/cpio_be.c:23 -msgid "\x71\xc7" -msgstr "" - -#: grub-core/gfxmenu/gui_circular_progress.c:244 -msgid "\xc2\xb0" -msgstr "" - -#: grub-core/kern/ieee1275/cmain.c:88 -msgid "IBM pSeries (emulated by qemu)" -msgstr "" - -#: grub-core/lib/all_video.c:36 -msgid "/video.lst" -msgstr "" - -#: grub-core/osdep/unix/config.c:108 -#, c-format -msgid "" -"'; printf \"GRUB_ENABLE_CRYPTODISK=%s\\nGRUB_DISTRIBUTOR=%s\\n\" " -"\"$GRUB_ENABLE_CRYPTODISK\" \"$GRUB_DISTRIBUTOR\"" -msgstr "" - -#: include/grub/dl.h:141 -msgid "license" -msgstr "" - -#: util/grub-install.c:1106 -msgid "BOOTAA64.EFI" -msgstr "" - -#: util/grub-install.c:1133 -msgid "grubaa64.efi" -msgstr "" - -#: util/grub-install.c:1274 -msgid "GRUB_ENABLE_CRYPTODISK=y" -msgstr "" - -#: util/grub-mkrescue.c:656 -msgid "part_gpt" -msgstr "" - -#: util/grub-mkrescue.c:657 -msgid "part_msdos" -msgstr "" - -#: util/grub-mkrescue.c:663 util/grub-mkrescue.c:668 util/grub-mkrescue.c:723 -msgid "part_apple" -msgstr "" - -#: util/grub-mkrescue.c:677 -msgid "bootaa64.efi" -msgstr "" - -#: util/grub-probe.c:136 util/grub-probe.c:151 util/grub-probe.c:190 -#: util/grub-probe.c:247 -#, c-format -msgid "%s%c" -msgstr "" - -#: util/grub-probe.c:233 -#, c-format -msgid "lvm%c" -msgstr "" - -#: util/grub-probe.c:237 -#, c-format -msgid "ldm%c" -msgstr "" - -#: util/grub-probe.c:245 -#, c-format -msgid "diskfilter%c" -msgstr "" - -#: util/grub-probe.c:250 -#, c-format -msgid "raid5rec%c" -msgstr "" - -#: util/grub-probe.c:252 -#, c-format -msgid "raid6rec%c" -msgstr "" - -#: util/grub-mkrescue.c:136 -#, c-format -msgid "%s\n\n%s\n\n%s" -msgstr "" - -#: grub-core/kern/arm/cache.c:133 -msgid "couldn't get memory map, not enabling caches" -msgstr "" - -#: grub-core/kern/arm/cache.c:149 -#, c-format -msgid "%d crossers\n" -msgstr "" - -#: grub-core/kern/arm/cache.c:154 -msgid "couldn't allocate place for MMU table, not enabling caches" -msgstr "" - -#: grub-core/kern/arm/cache.c:212 -msgid "MMU tables generated\n" -msgstr "" - -#: grub-core/kern/arm/cache.c:216 -msgid "enabling MMU\n" -msgstr "" - -#: grub-core/kern/arm/cache.c:218 -msgid "MMU enabled\n" -msgstr "" - -#: grub-core/commands/verify.c:313 -msgid "™" -msgstr "" - -#: grub-core/commands/videotest.c:122 -msgid "Unicode test: happy☺ £ 5.00 ¡Ã„äu! ℤ⊆â„Â" -msgstr "" - -#: grub-core/disk/luks.c:40 -msgid "LUKSº¾" -msgstr "" - -#: grub-core/fs/cpio.c:24 -msgid "Çq" -msgstr "" - -#: grub-core/fs/cpio_be.c:23 -msgid "qÇ" -msgstr "" - -#: grub-core/gfxmenu/gui_circular_progress.c:244 -msgid "°" -msgstr "" - -#: grub-core/lib/xzembed/xz_stream.h:35 -msgid "ý7zXZ" -msgstr "" - -#: grub-core/partmap/msdos.c:74 -msgid "ÔA õ" -msgstr "" - -#: grub-core/partmap/msdos.c:80 -msgid "ØA õ" -msgstr "" - -#: grub-core/partmap/msdos.c:87 -msgid "pŠ]F5Ã…“®=†ý±U>à" -msgstr "" - -#: grub-core/io/lzopio.c:30 -msgid "" -"‰LZO\n" -"\n" -msgstr "" - -#: grub-core/bus/emu/pci.c:58 -#, c-format -msgid "mapping 0x%llx failed (error %d)" -msgstr "" - -#: grub-core/disk/dmraid_nvidia.c:175 -msgid "nv" -msgstr "" - -#: grub-core/fs/xfs.c:478 -msgid ") - %" -msgstr "" - -#: grub-core/fs/xfs.c:478 -#, c-format -msgid ", %d -" -msgstr "" - -#: grub-core/fs/xfs.c:550 -msgid "BMA3" -msgstr "" - -#: grub-core/fs/zfs/zfs.c:284 -msgid "com.delphix:hole_birth" -msgstr "" - -#: grub-core/fs/zfs/zfs.c:285 -msgid "com.delphix:embedded_data" -msgstr "" - -#: grub-core/fs/zfs/zfs.c:286 -msgid "com.delphix:extensible_dataset" -msgstr "" - -#: grub-core/fs/zfs/zfs.c:287 -msgid "org.open-zfs:large_blocks" -msgstr "" - -#: grub-core/fs/zfs/zfs.c:1877 -msgid "/%" -msgstr "" - -#: grub-core/osdep/linux/platform.c:73 -msgid "/sys/firmware/efi/fw_platform_size" -msgstr "" - -#: util/grub-mkrescue.c:454 -msgid "-output" -msgstr "" - -#: util/grub-mkrescue.c:455 -msgid "--output" -msgstr "" diff --git a/thirdparty/grub-2.04/po/fi.gmo b/thirdparty/grub-2.04/po/fi.gmo deleted file mode 100644 index 9e7776dd154ba9e548dba9c5206f4783ce485b4f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 121954 zcmdp;cVJZ2+OG!%k){HIA}E_4AO%A2qyd36lh8zjNoJA^Br|a)fkZ*Yg1sL*cJ$bL z?|Q@v_Fk~}-aFpsx7M1;M8NNyd(ZdJ-MV@9>g`?cs*}y#+MeO#`MRyo*9Wc};`5!q z6W_(M_4!T-`FsQ5snCPB!oA>2a1Zzm>;%t(9pI&~ zGrSh|g?GVj@HMD-zkoepyXDqjZqyuio(f09Tb%tTa2)0z;m$DqKwHjna3tnJxDPxO?f@@<%J0RHrtv-M%wIWk zk0^P=ehQ?xzHGQR%!Rwd3dfaD{!V~h;i<3_ycDYbuXpxOLzU+psPcaWRh~Z`JI8#! zQJ8zdcCZkt-OHfrsR`~0Pl0NeE1?JPfV;t0q2%RLsQk5QuyWTE_QO01%6=|X{VsFn zwNP?+9y}V}50}E3jXvLg@Cqoo+>ypqxP74NV5!^Jz-Cbna-RKm0l%OJss-YPk@r&OQGuXPG|opRK0A5YL73V^7E~; z{~4;i+c#M`NQ2!m7eK|g6e|4{P~|<**!8ji$V z1M}dyFbBR3C&PgUS$99o#C$qb{X7Eqg6~7g&7V+uqwm4CohL)d?_#KWS><>(RQOw< z+@Ev&29CqL+bWyhEGYMb;Ba`3GjD(j|2~u)?6BJAV=x?pISa~tCF}#wfF8UFrorc( zxy>Oq-~FM=kqy;P7sK)JFt`uA6RMxQ0u|q7Y>CRq2m7$DtwQ_EJs1*V_#ST8{qD6gX3#(7Ur+uU^sq_ZPz7G`gJAj2M>X% z@FJ-Gy$MSGUxg~in^5KW750N|54UnL7)nm|h0-%2sPs>Ts)x&AFL(!(zvrO({in`- z*CVXIeo*x~3igIY&b$n&yhlOl(Muh#gQ~wfq2zHRRDan5)t@>aY4u4jsQ5CW`ehNE z3J-?^;e$~1{UKC2|A5NpUPsydWWv6f3!(Z`9h7{nfr|H9sQf(+QTe`)-~c#(t&R6! zsCGLID!m(_>fZQ0YAaRgSmedC+&PE$=$0^4tkk?hl~a?++-w(d{@}&nZypPlD192RKGx z3g*M0!e0qh{s-Y;_yL>-J0EY$SpcVFZh)QOtx)5|gO1NamE#>K`S}?t-Hs<%{h9{b zVm<(>e^fd~;W*4|V0(Bc>;xZ#%I_wq@@#hY-@|s8eJ9%b+zF1r*afOyr$VJ)3KcE@ zm9K-K^xCO#5PTS_zCMM@&!2D@+~p)YkC_06W3Gp4&vj68dl!5LZi4Dh7o1EQ@BtWv zgHEyL<6#K%*HH4c->J4gKLHg__tUKW4~9cAFMvD2!(khEEL8rEhr7UwU)>#fs&g> zD1CM`R6Z|(lH=Q;+T~TKa=s2b!;hf)(f3gGxc9lX9{WMb^AM=;8BpaZg=z2*xF@^@ zs=OPZ%J~9RK0a{#3GRxy1D(GZ_JTcN2&z1XLY4b0*acn(mG66?UpWnm1;m#M>cm_k+XG5hs4~~Xaa36RcRQ=oqRsM}o@xJf)CsaQ6y3leI z?1Q-gDnB8p^bdm`JRPbWx4>TTC8+eihJ|p@MOJUbpxiHq%I^bE`eHL24?A3J_qo)TZwi#$EP;JtBaFc_pyKVY-quq;C^?)8RZqoG;VPiY)#ThyhC5=u z2ug3PhgZO>;2p5+G8?}0<+eThLgjlDlzdEts>c~n@dlvu%E7QByc9~_u7gVdUf32s z50&3npz7yqsC;aJl8YVwY0I%YoP~KLEPw|=mFH0?d3_B^zJ7#CXD2eR{?Y@gohL!b z(OftHhN0x>G{@`V&X_ks<^M(K!Ox-Eqsx`noC?+6g|I)|52nD?Q2DsrxjzJz{?kzD z{{S=Lu2UIoQ2DKcL*OZJUw8*p{2gzy@ePIwKOJ^~<X2p@qv!)M`O_!?CDZEmyW8V<)`o(d0u4N&=g9u9RsQOI1+t%N{Q29I%8u@bO zJDmAlXZ{nazJ}go!_9+|+ZAvxc(UVFQ0=n;=E0Ys%Gc*!TmMO=T8`cLpNBt zI0uf!d=qQ~KY{Z9nd7%m`TqraaM&YOUgtpNs}2r;r$CkC7O3`l1gbsXhpLZXVL#aG zQENX5sz2@v)xY+Kli>&tNRmfoPx@K8dUh1Q0X^8 zmG^k4`nVSE2A_lj;Tur-ZS$m+|Gl96jfC=73?-*aq3U@xRJeL*@SmI12WA#;&X9!Y-JPhRW|5Fb&@8%%3@Sf7Z@pCczH4FN4wx z4UVTcUgP)}R6gH#{1YmFdp&2ztI=>6<_T~b48U%1Js~&Drnpvd!1daA)lIfXa{O%u}J# zp9yz^i=pBR!_Ke)svXuqmG5|{_C6Qx4sV7Yd<-i6PoVPuJ5;*94W1!=d`~F;Mk=6_nh+0F}Rwq3ZJoSOVL>YV)@Msy`hF)gMlUVR#*! z0r!55JxmyY%E!%6{ry4M7QPP^?X3jdkCuh=fOSU2FJ}%?eY`s1$WwP<-&ui zw{cMQwGj4(bW6_)?gel!xE#uTE$j==gUa{a z&i)<8AEENo>0Mh-{h{KS1XWM_LG^ z)1l;J4pcc7LiwwJv*BSd1fPV;&zKKw_+qH`UICTfNl@){B~*FefolJ6;3U}YBP-Wg zQ2P9A*dIO&74JuIFl_U&m9rG6{Lh9_=!ciV7ohTY&?mOPoDFATehkilT|Z^62p7O2 z_zYA&`+jESe;ibOEQOumDmWA#1Jyrof&<~hQ0@2$90GfOZrgt<9E5p3YzJ3EmGcOw z_B+d&uYrp10jT(%gNo-TI1Kjv!scf-RQY32@^m6pe%C?O<1KJDd>AUic6Tf1SRv`g9yr`xU}mSOb;bwNUB(3?;9-e{IV> z3M!t3Z~|Nf75+A;d_N04_z9H1j^9{)mj)%DQ=#1Vh01>vs{CuA+WR6Xf44)$_k?qQ z7pi`LclKSswdoFpYL8sF3tR>jPcu}$Pl1w`>!JGRCMf@(LiyY6JDc7RsQgTX?O~BK z&x4CFFLUNcU_Z>SLFvukoqdn*t)3qWl};Rv2d>uZB`2*Mm{_|%W->p#X z@ex$`cE8y0dqLIf2&i@}g?m6hR6d)b`;{!FO!E`ciNjZpp{bmr%r`CX{+-$Au&yWebj-JtTB0(-&fQ03bXDxD^% zet#mAe!CSa{2Q75{lc40}eyDnR9!j2nfXc`2f7o^%4Etc-4=TNt zQ0^x{mFEJe@?7WK?}sYy3sCLy9vlF_aqO|h>Wv9d;SYccABM{Rp-|y3hf42OsC+&F zRS%n;{g1FM=1zZF|GPo8PhTiG83V_`X;AgH5=#G^3Kzqdp!(@(UmK%`_k)Wt9}OqL z_uxv{w@n)p&slH|=BJ^`(|dJK6N6Le={`DEB((!IPon;s&UAUxw-j-$J$P4xMc}BcaMs3>Cf^X2bKK+Icg~ zgM+$Q`{i)Q9q5Np07}oD2Bi+<}I)t_9=U{LBr7B;7B+Es{JdV`p2noCwLd2f0t`THIYM!|_ zlpGF*D#utj5iW*mr?a8j^##};`aJ7z0F=I;4VBM&sPdl%J$MaNJ#T_4=Q~jO`Uy&2 z`t-B%n+8>nnNamJ9xC2KsCtP(wZ~b`d<&HPzvArM^tW=g4^%sifW6@?sQd(=>hBOZ z9i9*K;AS`t4jf?XF#z|+{4Y2UdIPP$m2d{;d!gj1?I7Dequ>b4i=gE41ULrX1~cI2 zQ2FdL*fI~Q|AwLJ^Bl(wFdOqXa4Z}>#D-rEWj+te|8r2`w>bNuDK;NVq5APLQ0{L+ zD2&CgXcrZ*^^N9`!iI2`wVMi?sFAD)&KEO?RTRyZ-5;ze+E^~AE3ew zA8zY?5!5&mgG%QFDEYq&s=YTs^~=pL6YiF3Q84o2- zOQHHr6O&^xz{3YNxNE>T{1Vc3xEgRj=nj#q%({5q=9L zH|xjRc6$LTpRd7u_$Bn<_;GgJTnJTPeyH|d4&{Cnycb>$mG8iKJHD-jD(8Jr?e{5E zK6aR3+c6EQeR84F4MWw};ZXH^KHL>P1r_gRsQmgS+WH;=Wo~xnE1~56TPQj2G|AR) zAE@**pvKXeQ2JvYlwLgwO8-6xRjwx---lB$Z-JfQ7z z)eo+P(%&~j_yLqWcbaPRyEmMUxd5vFo(Sdd zekghV0KNpDJTTkJ?GsS-@;1zYeR6EO zFNHf`UIx`(bx`%X22OzIK;`#&sDAnZlwAG}vti#{TmA|t`8o;y0$+iW=jZZl`~L`4 zFI{KYbTgppe*(;fd2lv7&e^{RRp0MG<@+PJ5Du7W`@?Fe@av)E_XenZ-v!m~&q2xI z>rmxtH>-{BD%cBN3?GKl2UYpDeCI>S#r05f_66((w?N6`p0lla7F4}fK&5v#RJopq zD(^Q?;d;!m<75Vu`y8lwQV1%(W1an-(CAy|{yS8E?^9sgB?n3lXF$o@JgD}IK$ZJu zsCu{;O7A=lrSIQ>W;`vl`e77QynZM-KL#rQ=R>vYtx)=RBUFEV7dF8^U~jmh$mahv z=wZGID!u2S^8X=}oOdd=?vr62=EYF;aw(L*N1?`v&mB9I*!ma@RX_8f!I@Z3{*XT20O!c``Y^H1{Ke6DEB!~@dcsEy%MTDPJk-cRnGnqsPtZk`@*lF z@|#s^?W>^TJqW74&V`EqMyPsw5~_XPfhymx&VG+FoBuSZ^rk}(?hh5;YAAhjJ}if? zz;Q6G+~zX~72gq1df_5C13m(kk1lg!RsI;1J~$exo{od<;T2H*>ISHI?u1$J52$`SZN9Cqa!Y=X$mHr3L{THb4-51(+8wMrs)1c%%AHD_W!Y|;M{cJl7SY+E_0+jz! zsCf5>s_%MdJ_Tx=T@O`1FGI=MhfwMM0^7pf_P6=%0p%|P?g*zs`Ok)mcP?B88({@} z8%jQM7F#{E7%Cq}L&@QJa0vJSj{ggq?3zk6T??mT*EmS_9hGXG-Q2lnVrB>h1feL>VR63_Z$<=jG`r~CN`Pc&0 z@7nmSp56tjzw8cof)k+9nGRL1awz!;L+QVja2EWhGk@*OUWF}Z2rB(%sBmY({_sNB z5k3Uf-!{Q|_#u?uo?mI}p$4jbkAsqfd!fqpD3m-u59R-LsP_IGs(J`tJ+Q{dcH#9K6itb0So^%Axvi9h5#f*_m&3=9i&|{U1kF#kIY6puUrb%?@oiN*N33$?-Qu{Yq!G6?IbAoc~I@P8fraz2~>SN z4J9AHLG_CPD_uA!Ii3eq&-HK-JRC|sHbb>v+a@bNdqTDMNM|l~<{HPfQ1!eXo(b=S z%1=pi8*@LT5h@=Wp!)F_Q0=+}s$9Jfvf;-;rCR`%kEKxkWGz&Etb@|88=d(_I2!Zd zgKc>hLCJd~RDGW0cn?&6`V=Z3yR5S5kA+IV45}U@Q2p;rC_Q{FR6TBj(i6Wx^}pR$ zTTX)`F)xFv_jPa@d>r7}WgXRjBy89%{>-3N_x8LZx?# zu8$5gw0m5>&d6!kO@0sPSUh z;dY!zgF9g!1;@jQ(DYNNdRzyUkB6bk|0PtpdLQA+0ad@HP~{IpmFHrpadab8c|L>k z_cNRYcR$j$=VGY#UkN9{6JdM!I8=F_g`ME*Q2F=>svWx?Wy>`l9*VgPN`E{LRgR8p zEpwpSd6nZjC_QiwoC-gKN^jWFww^Pg@;MW#eJf!*codX89}n~370&!6RK7YL)5hn) zG0^loI1zI_RD4%M^{+>v;`sn}gF75+<-P~h_>kw!E1>*e?)WfNJ-rLn?|ydndmm@p zW0GS5lpb6RJy-*kpJSoq;8Lh^-3QhG-i8{-cRJqYYbaE`&w%QuB~bYaK!ra8s-NBf zB_D4?$;Hkm*zjYZ+P@Tfa5Yr>UjUWwtD*Aq3{-hOg_3XIiPpUbT#IocRJ}b2rPtns zlBXY_^0E6#mKjj<-`P<8?j)%8e;8_9`U9#SyPRzM+iMF=L@0a?pCP! ze-5fXKZlC1)0u967%IO3I0qgKRnAAD>hT+>_T2R>8($wN{WAfo{<5L+Q{?RThr=-k zo%vL#_BnW)CH$#nEpFySj2UI`qeYUNyNlKV^IaIxW=h$(b?RWhgOC67ZVf@_!rT+(< zZ{t}C)gMoW>Swn@jazR($&7jL|J?BFC3qiS`0p#dwU z4b?w>hSIxZZm{QFN5Km)zY7n9Yi_jp{tiyT-2EnN-WRIB9|$G4tD)-QaySv*2Q@DK z0##qbZnkpahf4P_xHG&LN`F1#+~0?)ryXyx`5yo!FH@l6i$Lj}i=gW3C8&1Z^;Rn{ zqoLv}gwkWnVIf@O?4O3JmoK3Db^F_FKkE-A2XmqH++k4hu7#4%tD*972UI>jg=**C zx7+kaz!{i}pvK!Xpwf92YTo@FOoe;gVf#ZaRQ~H>cX%c25ATJl&$pr4vBRCVUPnUd zzkDeBrBLNN2CBRlK!v}@ncspc-ycwNvgchkKhvP(Yax{X6;S>29H@M3fW6_XQ0?#o zRDbSqw@qg>RQr`emG5Mzd|c^xKUBNE=-fBM2FyP@bKO0*e;*A!>~DvXn^$04_%&4d ze}L-W``l~O$$-jtK2*7?pz^iG@gk^l+z+S1&!F0A*nQT15mdVz4HeImQ0@IOR5`of zZ_lYlL8X5fR618e_2Y-3((C+y&F^ria5+%c6-p4 zD-9|?Goi-YfMXcGj=2eTf#na`epLY_Pv^s~@Ik2fo`*{JOQ?R?^2@Z-8a+6*vK=K5E;i3MwB* zL505_PK1v_oM=HA^bD1Co9RDJc|XzOY+LcSRo8MBX z_B#Zs{w{ai1l51OhYMlfr|o>W8P;Il0M)MP&)E7XfYP5Up!CNTP~++c@BrBTS-TG% zh4S|zRKIBdoSpv-gz`5WO79*ARc{wU$?2_7_46!Ly?zZVww%!88ORZ!_34^^%WP~pCYl9N4NxAHRv&c?h3=E03n^OJ6G*!xRNSGIaOsH3>& z9KKcV__G0Xm@q?kWY3fD4|kw#VLv?NVD|%WPu}798G?QMdC7hB$L)3AMYvsspDTFt zc<;h}7uW~;8;J8(%)emXkyrZd4BkKao=?~&-1VSp&GR1rj=}C^%znb(k6CrSn)hPf z65Q@1+)=pA;vI+Gr!J1Qd@tnP$HjFb-{<0%iMg5YS9m|?4Pvgx{ubvCD_>{6ClQ|> zx~K0x+)JJNZ0z5_yf5kMd5|}N+nKyaVW0fG?#w$AW*Po3g#BGSm$>lq|0?#go&9aF zf^frmcjB9At8ZG8-zvUe#cdGwU-9aZyu_ar+&kgE0p0@RPc0wn&!3Z4HsPA!Q@rQ$ z_QL)+sOKNNqX~Pui~DPMKke?;>^SUv+jFW{Qt@KmAo%we<%Ka#{V%cPK=3% z>4vXA_H--X4E(R-JD>2!;NwxKrx`ar&$;-g@LkGx6YfzL=Md+ohYNF=<79X`{=dY1 z4PnZY@-PkaXSnZ;Td@mYgL@_46P)=x%&ENJ;y2*pR9>d=eFeN7J_UEdUC)X59q+=v z!uPq>+Sd*Djl7TJ|2p2|af?5n;s0_B*I@rSZynzqagVq-1>DD87FW}X4 zIc|S_9>?MY{N~|yCtTw4`8xJR&hs$ro+s{8T$)qiSm$pbywb%x2Odb6k6pMD_zQMv z_+JO-VBUdvJ}1lre7^{%VLqPk4!rgF)BWOy@H+^;iQ7xOAM-BbJqSOq;-=?(%uHL2 ze$Bye2i|<%_p$E>nX34*@mr7IgZS1n)=}RDysLPZ^Gjx0XGd^B#S z@pi@jZnz%19`H5XgV_0b@8UfH`bZzV*D%^F0WEHxOnL?w@1#5#}%8&X{N8u5tAaUOoTB zKK?wyM+av<+NCMCGx!b?$4K6>nCIZ<1Uc|r&G$vlZ!vMlpD1>>@_tGfJ&SRhfVrdd zqq)!dyzO`wxHNx+8Te^{np0c^M>@A$;u%2LudrY1;_L@|@V3Fe2xjs!jq+WNc@gh- z#I+E+on0JfVs{wdy?JL5&#mw`Ud>Z(#jQ8~^(?aRwTHEYABWoj{5`?<5zddiY;pc} z!|f*g=s5&l2k*u2ANcJKd*R*_R`A}8`x-a}eu}?=3gn(;_$wsLAuf%%_|ub>l;+)- zYj`hocDwMsobMxHIs6(P58vQr%4GJC?jWsWvDZZUGSNNd*z4JZKRuW5reXI1{%*(a z8_d5F&!>Dh!{6cFa2{ltlX%|ddpu!wCG5%AHuL=%@7ws*GnMZNybt1jh_&*)$M*%e zufTqi^Y>495B813_cPSvK;>>A$UyA=W_&v&np9nv8-=|_f7eBjT{)Mo6 z^DgCk0c;B&BA)(yzlp!~@G$JUOBi>Da(5cZXD1>uf#_7Cx$&i9ABR}*F=??u?@Inc%VI&S~u zU4>gW?B0jTkB8w7+>3DAgEz+asm{YHzGKe+)!4n{;#>gx@m`NxZ{DG}6_UR$e18Iu zc41aKHoEv~anti9@#?t*E_Z%p?u_|y%pdTbOZ;cM^s=3w!!cimpJ#BN0rzt8y@q>( z^V`??-PxJ%#(V|uQv4qaKXC3xVE&fy)A6@}`24)@@>XJhgNye*%x7S}fcJO8ord4H zu)7BHT`rz7?0&^Ai!hV1zZvsT7k(Vvh}{$Ty#-#0zYV-+;in45p8=TrxcI(xmZ#zW zw73U22lHn9J%zv1VG8C?;dL&pm#~ky@0GY!V}24o%=->+{5b+Y-|^mqMQ8jx?!w6Z zPvTpG-$&qbXFnNgE!7h)fv>^^iVr`Xd9UUjgNOemWA@BhLL)++N`OCwL}qL-^jr`#a|ST%f`D zzZ>&EaG!+Rqt5;~zV%$-@^&ol19;EDd>_=aiEw&;;Jpxgt!MR&#ytb`0oG{FtM7Gw zZ+Brk;r^tv+l#b{TzWraw?BSzF@M7M0q{e3oQta$Zkt>jvTAbnaa0lSRfMVJZQ@&N z=lJs_AKzoI=PKg73->djo+IHz+@@J$;@=hcnTV;trFppHdDyq%`w`y0xOXJ{dwl;0 zdlAomd_Tqae)#K*dw1+|`1bKm=gq)v+Ln4iG@LU=H*o)GU$(rwRs4c~*Ip51Ui)TPrA^E~WpU6|YW z-r0S>hM!KjZ-MU;cMbMKo!fIRuCK|FY;Dn-v+auOI#fK z{*CuJ-a~okIr|=b>#5{jPPjpYI}f+7#JxZ7TfA@J{x$CR^FELiufm^;`!U#s z@N*Ho4(eHp-}qC9pOr4$VYr`-`76xt!=s(2zI;E9+hpwP;91UoSH~^5ze$`&!sN$~ zf3|LY-@sA0ui^V`JapQz|JpNQKl*dK#g&rg_d=RE-PzSy4t_s2Yf?|< zus43oU|-(xxPOmZI&SyyzQQ{cdp*zbt!EhSdS+qXfd3NA&ttwER$)e9Q}>o`3PK=PhyNJcaKueBYK7-~E_lm;)}%X3XpG_ayNIv0Duv!+Z$# zhw?px@2mON^S0ypgg?o}dAN&bB5vRD{USWc`P)pGaePOJN6&$LU+nx_8)OOdj@TFA z=Xw{;Bkm)xAL0C73J-8`+>D>8F75f)&m^Kpoxd*FUyQ$b*zM`;;^~OJUHqM(-^F*0 z^LIV&n|N39w#DsK=XV0`&+?rP+Y$dGF5HVQ4|_U)KN9XN+^U`XLbwBdJlt0}ze?&( z%(r0v7{g8Yc@y4?eX|^S{)O9c{8ZpJ(8Ybfi_`i*_w$jC-Dut@;Vyw6Vs|ay>-cU* zxI0~%55TjrzZJV@aoe5uUCcLO|Bj1rHQ%RWSB?2!@E-h}1mEHf@#=Y+_aXOfEZjdo zU^mQt=a9x%F3+;^aC^e#<9p1n5$`!Lg53wsUjEi%zZcvMyBB1^^8n!R{N}55jIUOyzxm?>r*SB%YHnp9AlNr(=I8-(U0UY43Od z_6PIEpI@Utx-#yB zKRpf3tnUN){vP|m&TXvAXM^LYB)<$Ig?$5yU5M*x+~j;q+yk8B;`xa0b$nmt%KunWJe~L+f&E>)qwzD{g;6v| zV|OrIgrBqFyDr=gr2Q@5V5neVO~d09N5P34ae0=T*FVKHOnwGM4=FMf}5YHDNvcypOpC2A%z-uz~kR7yf0Jw>>dmi2W6WyPP-vbi@8c-p%Ca zGPnl+Q5^Td&vfVSS?rd$cmlZ1=PkwUE$jyKT>_sZ{AYZ}pGCyAQ``U_z`Q$tM!0y& zoZH*j?Sb1ro%svg-@trrQdoUnM0&eo|1?Y?%prW|V1GF8SA^*X^Rc@Qw-mlF<-0v^ zgl|1z?Dbqp_{A;{GM|8-{V_kt`wV_g#$8XC_a45_z+KM<*pGK6{yyS8RPi{!GceD> z?O5K+h-0=5;yV}nOYw6f?|ZoI0iTqc*Xn7AH27=1x?o)-+C0%46!7MRvO5|-MG>z) z8mtONqrrez7YPJC{|bMo)?ZN@v>r-Yxe~asX;7n_@^bTYy~>(ki#ofitP@YjX{ zar+g)Xe<;7%X_-@K7&|Eq9KCUP(ujM2L-(qp+GR=`2+s?hG3MiD=e0x|NT(EDabBSpi&QnN^hbkUG`K=#!$H}LL??PaFQqnE)le6SH4NpuE*KzP zeMLjnHF4`Suf!j1AWM<37i-|t^EY^dYHJ$@#i%8pm*$lPD;pwFFQyz1YBW~mrb4Yv zvezX0#_;lRWM$arEh;W4&o3@YPfuU$8w@EIg#aGntiV(ho*g1ie_jzcT1mQSjX2vb0!3b8XP8h(sFF zJug2@Mb*}lk~gz-ZnoD@6QuqtBaO8I1#hfvpvAly`2~4p3(LxBquji*^3u6Ess=Aq zWeO(=^8)?`Kk0iB8g^wg)X)$Ndlk)Ib+oY}Ef#EOtoKsV(qhX)^=VbHwEAeIf*_%o zf>N#;0vh>C^%`TyZG+bwX^eW*xfcz^mJj{AN}$eNlh^s{J%2dh733CfyFN(M@5TI8 zDqvkjDD0P{{C`*p|Njd^AcEM0BMn}xvA#Y+N1r=4KbNi(^W>sV5Nry?5b%=PpdX2f z)dwp>Rn1;n8fu|B*nm#qJ3tSWK4?x3SR08f_i97Sk(IEQHzQx2+6tI_A*g{MYPQnf z5DcVya}_tyRaZ6D`7(MZ6`86Kev2V)2zJwnX}3lHRa}&l+RlHKPNlUo0U~I%PY(;E6gg-nWdae z^or+LmgZ&UdU>U##iiC<9*KBlyxF6|8ta1LhM2Wyd_f_bpi=PhFEeI%k$R(i)6%>l zgDQvE0BWYHNMkr)!Z;r-`Vn2`5}-wrf-w+C0Z#O#l#~|FEX^vknH#E+#SI=-)AgIS zm6u|hjaZG*V>NzsU_}sx)KaSiO7jZ*6~S6>>7dvUV~91V5kgfV8dpO|L#U2XB9Jy{ zM5g`6)7QkrKi;62FDOCRGKIX0~# z)WBFDX+U}zh(lpUoGPh!*BgQin}6f0F`VRYROY`E+u!(V72A|~Sp}?WvT{oD>7L=V z6_Hx%lHnmnH}h8qJ=)Q_(iFA+P@Ne&5|*)=#)g2jewCSG__A_yOU*wX@y^Zj78Pcd z%~@=17M11imuJ66rpkWgqEz|MG=|JYskT04l~-2gIa9X)1Af9^+&W6aK?2v- zMpi0LBW%$|inB7*P~+v5<=_}wZe|ynk9c8bKz8z>DTY@Sjnv5pGs}44sIZz~)7F;t z{#dNOCW^k^+AZo|i6yg&I=VKK6><^?Rz{o2N1dNSMpZ~!{4ai_beZ0`xec>Xwfu6M z^*Saup?Y$hQ1Bj;RgeWP=K`1H_WgEbBhrbOWp=MEK!$@jXh_nha6Y%T= zo491J9$p`eqSKJURxU&lVOegbUrUB0`Z{yD4%r zD#@b^{=_Uo6=A~5nwfb8O2n@AjBUNYp+>5yW0I*coLGZl9S!=Is}o1OnYr1%93~#V zoZ^DwQvNM0%qq(D7O|u$TkOjznd{{TC`^1p6_Wxm%9)X;lCngi9b0_KRg*7tcd~QY zm@%WqnpGI%rd`kF_%%JNBp(f|NzfR|ug}_A#p{(87cwc3B<7$~5e`;8RiWxeEo>PK zL!_Q?N{G4F&|DuR0IOIpi)D-Sfivc?Xo^N^ldZ~XLRGE&XmzAASCKCgG6^UuiC++v zP-RzJwm}mzX$JLpGAxG_gBx69-q_J*Xice&gsX?z`CUpNSmj6W4BcLslA7ii^N(5& zZ7p@|H0REsE@x5iu-l~OOKc)ikXGR*0JYj{cYsNc{_0z=9iRhFI~Ci z6>QJ7qXZs|i&gUs@Geg}!xBjSs3n z9la^ll@x+Ox?vlwVkCO|HE*1^nVYQ>H-4AThz5h%Wx3mPE($hm)0NI|7my)JCpGie zzK8@#aJN&R38%PfknT>JQAa8xf9;ko!tG~RaW3CpesNSE-hRzF5C3M}Ip2Sq8Ku`c zKj>e#oMLjO25wB~)Ri?s?K5ewC#vZa!Z4S~c|m?zxvSZjow3C#qakK^arJMPW$M9Z zoR2lL7uMvN1*zg@sn5iXr4jo_@rj1w&M7P|i#wC9N31LcosD#soq1Q)`l~&beT-8c zBb!~eGXdv|K_+PRr5Vp_Bht_&AIxg93W&=2F?Jfd?Kq(?rsi>1Cfarsu>qJ^dujsh zU1)$&-t6$!;?AgKHpa|2l-Q${yBiTTnP)51(=LdyX2Q_O-a{l(&!`#+Gs92?*40t6 zD#k&ZZAQB~e}ihCi9pGWOnlZi+Y(~2t@0%~)0p9aKN|4t6i}&ZyHJy0g``w7O3LPE zc>zWsmKnxXV}6yUDt=Z3!Jwy^O%adB#G&CYUh3mxAgf2M8dQtvURi`sW>$^bF|6}9 zYw)WJ#WdwIiwp`$Bbmvh%aPL5mW&sx@n?=1+mcG$a?D5yZYLsU!e@4UVyv1f%@n{0 zSp^eSwju(mLuOZ@icoE+q1iUC*<(`rM!sxBex_vp@N(95D?-soSQ{tUM3_lPHpp2c z`}5e@6&@Sp(kDn+Zr;57oID3_5h}PmUz@CphG(QLDqmQVx0nqBEpV(y21$l=ZD@w2 zhppInDZ%vWbT0!_Ml9fGl3_hBDatA&>ikl@c{%09r3=~0F3V>2T^lU5JJo^3zLq6& zu9>hlM3^&aUZkA6eP-LHM6BgI^=%I#*jTA%io#Aco6?%!G z@fKgXCKj|?xwtj0vo|Wi><>!4tK+E6t@I|MUE!yfX|q~3w(aPwM!=J8l4?r5dOJ>L znYkS|JG``{(K5f)_IBJ=b6}>;hz-->fSvKX&!p+TFV}2vBD%GaXsQ;<%kdh>i2v`Q zHP``+8?h&Z*^~FQgF_CTsjRT1#h~@HnVrSEzw?#hX76k+mX>=dBQi#+@k6mndXHJH zAOu=G)i%>aW?!PEY$=0cspkJdfuRbs+^h7X_sqD#iYHV_HfusCtSOx5GUI zCp&|NQZUp2O2N2wbir9#vNfPiqTSjcr(pr2WvfOjN#m)$7A0ae6>7>(u}Ruk+cMMy z{k3cZ#0Rgqqu=h_NMi?^P`Yt@)6EsXl(}ZtElzH+j1E@qF`mUDR+e0P^^uhfg?8N- zk4|#gs1>6f8|WWW$X_8a1zzq?&zs z$v9$_w}9RBvN8tBq)%_LFR#{Lul1<>O2eToMllg!Vz(U^2B|Oyuec}V9m!Tzpd(`; zR6m<#=7>}aZzJ(YquXC3A?BH;6WX&*+Pl%rOcFXFM(|nma#T&Koe)R>7%>?{=N6Ub z7361S7v!0)O|e5}a;z~C;o~$`d*=a4%hFga?pM7rQHgL$6=VDkhAV@&Lx@HIZcN%kJX z9g#RIVuveF2kWLbP*P21f?>8vTI}NoSDKdCrgM{eUtUwNQqyl{HAHJp=`^2KvS=eI zXsPyp(;MA=xq6Bbio_%(6pZ~{_?WiI|BZB#{rz1+^ksKwl1I;I)nOB6yC`UJZ{2uJ z<{&j`qLb%r?BM8)jH@*?ta_#d1#X@acSM|%1<(|l|4>$%-cW8rQx zEJ8<_PG^%`#rVSEf^SA~QF$5vmU2ewv(p1y8nj6FR{D*qGku0yFbf*1r06y}fpY=4 zzY=nnW|}(sX0V@`R$ja))qRj2HjC!0DqJ;lv4?~G^35n;lFx;jCEBGZXH{StH0Eo$ zZes=@b28!P$fmlhm{OP-tER?C9m=vLh}&mfY8MD;%psY94PopJl2-ysZcSi{qji>V zhE~_Q4Pz&j)@bjT$h~Dd*d4qlrUxdZ^cCYtRH|AP6RE1w^h0-WCVC^91~qw$2E`Vq zwtSLTEiU50=zlJ4LO8z)Y(AY|n;EpQl(S|8X2cE#Y)sZw^JM17va0oJnk%9VHHF#c z++b!&xt%$9c5%eYGBNp2Oh}pgD5PRHhYM1pEzxl9&s02ufF}izBBw%8@r++uut|F} zR47?9ZTE&VWAL*`;-HXGC4Q^GcrycVx>u};R0K8G;_9|}?H&cfty4kWUefSulunh| z=LwpTA;L^&hM6a@NHPsz+ufVRQH-wZxOpI{L>t38UY9;+w=dnx=R`%GIFB?NGDhpB zQlgm75u2GbRU|T{devm)KS@NBkN^Etn4J9YCz79+mp3wV+?fArO7_r;8Cx`9uE1HT zmT)8v>;G%%{pS%ix%+*ZgVzQ*(3Ordoy-o`gS2qA0$E+#Twh~5xb_a_4p+BVS0n^- zn^m60lm$7|E(*Fq=UXw3E4U@Vq!SCp9SZoHx#T~S%`r1>CoX&tkFm&R3gQ*A?zhJH z8I^9nc{TQ++ARX8z&e(anmceV+t2!M=`D)Q>VYXG1zANC?6+^GKU$%c7y78x4L>PG z-^^fGM}R?_x2I}L7EKb+SteE(jK%4Qy-g>~V1|QXujt(nFWhS;l z6_3Vx>&ApOzIC9>NygGFfF*Xu5hcdVi{YAC@Jud+@@CMaT+xhg$*VZ-=uUS8(S2r@ zG>ero3-Yk`G-FJ8ZKFn6oUuaCg4JzDr{tMEIE~dAy8USWNw2J`o|2yUq~&NEb1Q^# zOP8{IQog=f@rA41ZA+EPjxRslf`TP(y78xR#9U;wD_nOOAwF47T#z$&J5ci4cVG!w zXOv5*jXGSiYJ9jdk^2 zl)%WmZh)ry@^gLpg;_Iot;x{dYw`+<=N6Th6swTNdPxa4rQ)-)GGBgCS$S4L!4lj3 z5}TXxO-FO)Yh+4`g!GQACn_WLNR#b?Mws1Z_8={^irtEry_^R138aoWu{Mp(c-HDx zh-q9^rI}sXb2^G)rOM15X{)7aLsCtB$0uG|duWEChSW)9ddH6C=IShF7Pri|v>Q2u zY?>{bNoq+JxXd7t6grP}H&L#vk&Z~(FYag-jrJ<+(r6v2Ao=-qW_qrr*~%!hIE~#p zV$sDa`U@>)dqIAfZ5meZ4c7vIK(kI6Q81p-J(F3E5BN_I-kn01_bIX-Ym>iacr#O#$5h9haiK-e=n|2l(OiO%b_c=CUd_#RvkHz|S2B_^X+ov3QO!BJ1Sb)Oxjd4g<#EDW zlAGORLy(j`n}}JckwcWt{s-^BI$`goS4KIt__kU|JCI3H*lkEsxc2Vmypl@@U-tP37|FU&5^ zD$QNOhi^`N7e*3=baHpSaygSk(xT-#Y?rnve{e8_VWqS>p?K=ql+{8Nx{bSH;)85MN9 z49yd`!4|-GxS9=GT7^(%Ob(dgG|2%~-QX+Grfkd2H*znFlAL_k8_g1F9J&h)Z)3yDeZgR5^3gRD^v7ra2})?Wx*Y zHd}_y){2#u4*@%p{>7fEH3MvGYiBYp5(}wVXXlP-bcDcQuHR~yAvWH(oGl=;nq>_EaH-+7$N9V;1Z*Jc@X;;D|AUCrC zN&PT4inm|Fo8A9N(y6V^;0kmo=!SS5z`8?2V{LY=HLQ^fdCM)&Hg)Zcn#FQQKH;HNBn+)O{nBqp*ve>N62PWJ zOMCgfk_9Zi>soSRHcOK?nO#JTbGiX)BshL=Xq!%Uy1fl2+o0QU_)7?#DY5%%GG)d< z3Z4kngr2BjyCTY#k=E~~_WYi#TSr4rQmLfvlCI7qMP;Vpi63NXpT1?CV`F8VBPJORFhEtIMaFm$+LX%oxngYZs9@&N0{7-IZ$33 zL#WL*LQZZPJF%%|o|5X(M&?M-4!ib@QC-C>pPfcAVUt$Xi7u)5T-5yJFFqgA1pzx2 zaqq<}rA!2goirzPWGSq!t%k4zkO`>WTKW(og*(eDG_OVhyHsW>pO85fR&%MuD%x&F zvUR8P;;jQ3d1no7mI|?YPQKJtnXNGWcMEZoW~kntH?^8674nNJ4jAn*oYp>CtjG7) z3(XHx88d49=C=nvXQ8FWL{C4@AY$vsTDf0D$~JzxL$}b`52^}DJtbKy02WL^c{5`C z8>aeexwu|7E6v>9F-JuFG}K(0W)_y1&7^xXs5n(GQy!*%I@wC~%CoY~eE?P@?u;+K zUK5dj&E}ZhWrdqL3a7~YI3T#KP;MDO5~c^W3e4o(WRzdl=CKnMvpKbQ(7bKuwIyGz zVk%*Z8S`=)qP1yFl7kr|N5rRKsn)vESZA6sCUIw+1ldW#zm8B56oy+}$uMc#DJF-7 zjZwCe?75EV8B+JEYkR*cA!r>FR(4jW;$nvYv0(=yl{IXC1wFncA!aj4+gNTPY3pek zuDYE;4)p^LErvCslbp3?5@2tBX&0X9{Ze(pA)NYiKhJCsCj7;NAb|F|jdf`iExpHF ze=6hD#|aK$?0R!+(NzCd8JE=XDlhp%PB6(E%O!m>w+Ch zgWT^{4m;!qr7Bo%GWqC;qd7e{i#~fJh+3ue=uvt{x<@#B7EDR8kObOY7!$%A*Xrnq zYz7<5$efsFnRe7(hq+p&WAVhTzh*7Pb7$q0P$T*=j~dTzL-C>e|3qfCewZeivn%cj z6>+ku(+E07{1>`-*4h>C5iiGH*0(>^!)(vK5=N6XbM&tJFsz@rlw-EB;*&KKi5X=y z5ux+Nk5yO%6P@cL+i+;vvrCFOvCy)Cr4RYpP|`2?%u!ZAG27oeOB56PMfR6*ax_aW zedwnV+sKx&rgLmJd#u}6gd&alP4-sHcA`zFdb>xZgSD2cFr*t!V=9Cwj7GNDvkrzM zjn(FtMTnGkA=PlM(o8*>!{@N}Z=|jG9XQwf$s8jYD`mzg^LtigrIBk23cWBqiRku5&>##^142y$$LAaKRZ`N*N&)X?v08|!r!qho6aPL>d+2D@}l z8H8Tu5*U7vY7PQ|=GO}vW!z|J%4}9Iw#n$E z9Z^(IDJd>3H~+N$k)iu7U4E{w#Lq~eO=-TObYOl|q5TXuSEg-~uMGUpUNjBXaJ$vC zdVA3)Ujg`c{QPYK4eYz<6a!%+tL~TcgG`5YGhoh8bOAcam8NVl**_m3t?@T!!6k{` zA=$6wONk{Mm9rj7`58Kp+ysFBHoE4 z4lV)vV@E4@EtX*~zhoZ2Notf@Oxh?*_^=1;_U5E!`}BYMDJK<)*;olv5Z;WKPs?a_ z@`bnIQqLnsj;*cb4nUG!tGbX^ZB434oG)wK%9nH_-fSb;_?#6x zP+SFSW=G-Llw?dRpd!;IA21`UpS=`E56dN9C`s>7X0gx&aS zhE20dAW=G>E;z@xQ8G|{7+N;ATe))kKx(3VMtO-BWd>w&!30o;XKtTXi)&r?*R>Zr zJ4|w{^*4t3n;=c$M(0M;+KGZ4$|+*v;IOzX)mzGO1%r{Mq^A6dHgJE=K%tD@ih4^c zZBJ}H$BgIUe?6V}OxDd?6C<>pw3e9bqi&I*Q$YRH!Q2e9E;>T7f10L3I~DfGNqN^H z9*$|*#l___%8IjRYtn4aSL{tmDkpwr$obY~e_idDHj2j}l@WB;%dBgB_8j-2?FTNu zYRYF5wX06M>fuyeF~m>C<6d+tMkib-nVLoxb!a92){gG(+49Ms`I{s) zL)y%CQWDc0bHHe19ig@ZJ%ggzyGH2sHy1dYO5FXmVq^BHTe&4Bw7NBHT=b(3j|qpS zC>rle^Ja2U)8jA4Fw6Go=bd)lOky-%41pmv3go%JT3}Dt^wV)qzu(`kqlRwh=zdSN z?T}kLCWRbtexQLsd8fK$n9o0lR02a)DaEK-@>ty>O80c z=xpw$aw*3g>ZkE(3X76beqCXH6kQyVRXU6UrvDJb~mE+Uj}e~TK#c=gk5}hDQ>~!FzKf)@m(R6-6SLhRA(3XOqjKPmejVWS2G!u zZx&Ed&mO9$YlgbS{VJl=92~M=h?b_unVCwdE{52v4{i{alj^P2c`RdpX;63IC~$l} zZ*Bo#s|BtRC^llyi&h~xd*X`U>Cy2Bw*ZN#G3+g^4pfiqkp=KZpfnnXhaXVrtf)i7zjQqcthz?2Sa5V zxU@bm)9OijBmRdg^y9C114^|ikLlK1+}gB3a)VoyrXg28In_(L8^AGjnf=9{nI39% zV(DWJ#1n&ws?qH82NL)0JNnA_ z$+m9mm~9q>h##2fcY7RNbKZ}(kyK7%$q)&dF^xl5Fa8IjIGZ;5grT*O-55>vqGn=< zDA_51uD2*|?Vwcq>#4l|A$6%Iw28SnwXKxPb+sz-C+~DQrII~UcMk<2v1c{Jpc{8a zi&ix%U#&B(A4Rd2Ve8iZT4AgFDjRm>X3DXgZ0oLATs=}riXeW_uBDjquixr!<&zWb z0Qpi6cAbvDxg~!M{I!A=etv_%U!XBRWGXb<*$i?G9aBb5;ZAI-G*POTIcD^f8vbCP zzQ#=9axk+D6P(4ECTW#k7C&|{KdwoRVuZY=dLuK(PvK@lkRQqNK+}`-B0wx`7ncw``xu5-Y4|584uw{HQ$!9sT_0Oc` z_D`?P&n!@mYMywS*1hq&HP zeS0i?D(+m&08D$p)O@By?7~L% z2Pno?TOcNq|E;CCuO5DjgV=+I_wVtK@2qd`J$!KQf`{MSfB3b2@HlKUpT}2-AM!D0 za$4)8me8`w=^J4{Bep}-<}kl9d(_|rBUpS6U>gIrtE5ZwUh+XW$|edTRJ zt}Yb@AC9JmlE0Se0|-lwGc!%2r6c-iEXb%qY30LQsFgGxl%-p@Uf|0X(yK{*_DB*? z1Ki5_cnDjhe6H*gXjfXYJj(|e%>nusk{x_b$z|Oqr=(A`VD1B!c}UKnq1hn#$JWDBa(5XQ z=KHKe`QmOoS>I`G{P=>cDK@&Gq>E{in7rkzn0cNudTsB=BzQ7YPKknNqz7Mb>qy@S2lQUqxYway(4YR8k|uDB`;Z#<${M zUq^p~ShAiYuh|Vjfp)Y4HvNmcA0+?NVty%iVEJ4r*8nkG4F1^#f(@elf+nNd`o-n6 z1*I0FUMj9cB)({pFE%+PoAw6X=IojP&7|pd2r+WUWh-v~0>`41<(RUP?@K2S-87yoBMzclygRJ!bUCMqw&p za!cAl!n8%Uh7GqA(vivxctPh92FxBN{t&ETW@if)U{j)4c|SX> zI*SF*CJC*QOhnXT1b^VgqM~Fb8agLgI6X+9H z8jQ5rq9?A95H%h);Aqly&nx~`nj||>WXI)$oc8pjB%sD9`Ku}Ebh0(551E*8pD6{R3&D-Q~vEofo*&Gpv(DuTdBFpnOHyg2?A24ID0 z!$yjhFKTYx#TU>V=-Si^+GA5-+7pv9flq%&K?KqvX;rHaxBLn!-DtRpl~t0fo^yb23xUR$ zUHN(49%XNkP>oO!fG4LFXt%}WAi1+-F(LO#R)Gaqo|?Q3b4p+;Iz*uvk5}gES_yP& z2YxTLN6iLGlY-TanhU*AAL)Ue{$SZMQ2^8y{g^n3n4>@B4{|+ER*d)}2tWoWF_GD0 z>r2vI*uyqLcTd4vh}_bHvs4_aaMgw{cyeuTEWO0O=N`+rYI!ym5p6*Ks=IoT%4Lpe zsS3r(R`U(euhc;}4Cd#N9y;kVdX_!Q!-i}!H1q00;>J|)@xkCC@Z2TID1Tp~SbVZ< zPnNSMfB#qhkoM-8&Lvr<8Dzj3ZT7adu*tJ8s?hl|RWDC;9f3S611s~)-h6;9XI1X} zAD?cg=A-hNwrXYF$^c!Gl?#RdxzJa_^~>QYI)`3s%B4OwpjkD*L@!|jLMo6X zq@#KT(V*L;VgUr?A2y+py%6o;7Y{gRflg-(ZKXiqD)G2;Yep2rxJ}~m{)Szup#o+k zF-8VTX_8DbB0~3-5GMq;-74mnBH5n3Fmibt$?v?|Cy(lY$05@$_~O8Fj58v6Ad^N2 z4cf%SBaWbbIY1(^hUIoEjWQr4g#|KC;9Xue(w9a& z6SfBtPLwJGhidcm$=lDe#X}?!RYShr487xYLgw-t4pxf4wqf)V1YqMyimvn)Km=v) z$;z=Yo$!0|B)RZhyTr`laG74E{fYqw4Hk>7UfKL2fmp-dVXk zGbNYR1TR{Xdn{->G}}2P5t?}LUjh0$(fIAD?wM;heb0aAc4&VWw&&b>)9>VC7HZf|C1?u)n-RtD!Hb94LaJf5n2s zOazucE!6jmhH}_wfNX)Ga(jgn1rqHD+1}V$+fve<_}jDX6qM%>oOCGu^77@8`PT_Va8E5{YT#}FtYVywEkL9$o zqjGPzX&Fg18sZ`?U#Vtc!5d1wDe3V@`ZSq+*Y^)~JIKNM;p(<-@$jm4iHFT}_=NgQ znmE+lc)GLJI@n+Li!BbbTQ01T+T3R^i$hV+caWWfosHJf;hpB*`uY>90DJIXbHT`5 zFTx}KAxkR%^|W<9=JY2&2$)8w+TC2&u}FW!bKwp_6!Rda`=$TuX%LD-2cTAuqOhX} z6b>%izG1^3)nj($MsqWj@-;c$-4E#!@)x^1Et{og_V7@8Dr1#ys(;K2E49wfHa`;j zj&&$hPsmUerWCiZSeO>hDq-A5_H<8o-=uB9N2q`v`af)dov_cOMJm}dFKkDsesKtd z!c|7v7yRPChjM7)1iWE5jWZ!EB+HVmEu_Px#5Il`jiU?Xi1P+~l!62wUag|Xk=*TY z)x`p}2q1Q}dMLNFqr(;X|L`oJP+Zu=A8y;Gj9a#k3bANWQJ8m>kyp)Dj%ukS2_Zc{ zC6EYl@y&&Af3jNkPgllc->qf4o(zt}_I7z9F8k3wqO)q+gdm6?dYMxA4AFjo*E4W=$CPlc(7 z_CROpMg?{Ff~HB0?il-HwRECSOk!Q9(l`r5P)r!w_}oesF0xVZVfKQo{`D6)GMgz= zJeP9e&j3{$aHf(GY-k*uU z8cJtt$okq&^LG_`sC^J%D-bpaqZhCwj6t=?D;hn`PDhqZ-pH!gHegZRO+T~qK}u?l z+G*!4iq2|CY;*fGbes^!YOWT)$(on0bNloys*@?ej*}}#gsrt9a@L)Hp{6p;kG6cs zB4OSc>dy<14mqE^*qtqer6RJ|`D2?mB?(C32(dML({^awU2n9JaKtS`UfyfzTFy#V z*pO58f^V4DDVNv|cX@=F1pd}J{mXK#xbeY2h{DIn2n94cKwZX^7_~-M-fc(2e`dbs zLNVQz5a&u6yV5u1Up!StE1bW!tq=p@@-3lBoY^PoA;?4KRAAd?ZsjzjnXwx+v(*de zR{uKAQF@gR6g*45osl-OGNOsqcHt;7ab94^{kTdQS3wb$q*|^sigOS+{sj?vQC4{B4o6tJamP%-9O^>KtY+p_6ZuI zYp6i=D0r0V5kM2$S3Xk+emdYhoTILjA79x}e=t0eBS9GhC8%z|BVwoF=Dgu<4H3>f zV9j!yrZ;w8lc*JrpQJRK9y!qe7KyOxInV>XAEu(yg@mNYj?fbv$nr%r;=xaJda8*t zM5mG|l7IZw%safxev#mSl-oy;s@~htlTo>PWXFP(*^FdN7|ghxzY2CBsl0O@+aMOa zgXqLWc5`ZGZ*5{Nvs79Hf>_wxG3XjAXNQ%q@5US}RVUz! zy2Ih3JC3iwEAaGC;(V}bp>=(ESS;~9%EG7GDv@-jbl>D2!Y7d(#x)2;41LXy+!a`G~;{~c4fX1m3YZoScJBV znJeC`ZG4e0#Il@z5j5>Col3QQYGtMG8A&mrEKbnvi9@%AhhHQ`LZ#gmFTRoExf56; zhK9|W7rLwX6q6r}1+SJOp6+17wiF;KPen?IZiPz12-M@NyT3eQ zD8K)z+g`G1<;}ik2RWc#!7O554GfMKvCFSAO z@?Fh{CG2z@T82c0qf;FZ30Q?9N7HuWZ%Y!;$KT5`9r0PA434;+KAD$MSeehz463Tc zV#9%hL(OP`>OO zkka{IdelDU-{m3+*4nhe=8-+D#7Y%3`IrEBJ_kW9Jz-aP&P=T{H8{+*LP5LKNXkU~ z<04z^(#RT{E+;Ya7ZAai<>KQ*B5UUS268Q7rBz%xmU!* znjE!gb0XEO-;N+ZEU4+o@<#bpMZwv*uvcSwpP47SfCYP2p?3Prarm_J=|#=ZuUg>QXz@Zgg3S&X!+)ckkYEftR~$ z9e|D!%mbz(H!EF7+xT_6V zIf&>zPg0T8lzW5LdQb0ykTZ4RPkN1&olQc@>KL;oWlI2#9mDv+Cg+6ou~j#4nxoW^ z6$w@bqw$QEJPD^+-ldtEED;>nA}FjeY@eX5ANaiuy&2FwRCJ#tTh+OBb;7Y7n%SK?}_G{Y^@8zYED=tQro$8xGbRXMBL zkne}i1r)&a@Yo+Rs_fXMwNz^a?&_gbzQ=r?WZw+9y$PAInJA*UC|GMJb13`7cmH!k zXFPp@Vya7bi55wj2(K?3kJ34{z&A@x zE@8$_IdW=9)t?BMq?%W!KL=G~ga)xq(5M5dFqrI)uazSDocwZ|R2`%13*d~lcu04jm)~KRnhvAj#(8A|Ndh?Tp5Z-J$i^w;(Nc}*FNKAX<|gHV zcfpY^4G@lK))>>*h|Fc~3kiF$%`r2cpGtIVdQ79G5?cWsmmR=?)r))4+FDH1rntV)hHC&0G z9xoj%L)VU*t%FA_n;6S!fs|w(RMmM=2#a0m5kxK((IsBCX{z7f={X-Q{VuoP&V5=U zo$>-J*L&HQn<9MdtP+idp$n+lR@1X>2**kmBGY<%u!3NKOxqN)~y;zd8&JQ9T?!?BhiM zkqyZ|R=DqYOl&4N<`dX*I*fM#si$gkrY+-H{4jw#i9+hctJ4IB8^SczobGj$b-6mY z_CYD@l++*`s`hj9j+F>RgttyIA~beX1ow8OX{9puV4g@urY9UFJUK_G?R3 z%EE)FQw9EKB9?CsS%nYf1LqEB?kS~*CmbIZx2Hqep$$<4HeP#l0zs+%2AQlsc-6k> zLhemSNVQxsNPn7ut-mU>foT+?>cMkZTxi9*nNud*p|Ge7*j>2eo1N2aJ=xd^4KWj3 z#}mH?c3=O%FqKipnQn&Y2y5rEEo?nC104`1n>LG;AE7CM~$-1KC4mejq z6;5z&)(5S+-k{c#;9(yS&JIE&TnlKF

i%(+;~D%mEEqCGV_E9?rfTnykh3JMQ% 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 F|36?`yK(>k diff --git a/thirdparty/grub-2.04/po/fi.po b/thirdparty/grub-2.04/po/fi.po deleted file mode 100644 index b845546d7..000000000 --- a/thirdparty/grub-2.04/po/fi.po +++ /dev/null @@ -1,7365 +0,0 @@ -# Finnish messages for grub. -# Copyright © 2010, 2012, 2013, 2014, 2018 Free Software Foundation, Inc. -# This file is distributed under the same license as the grub package. -# -# Jorma Karvonen , 2010-2013, 2018. -# Lasse Liehu , 2014. -msgid "" -msgstr "" -"Project-Id-Version: grub 2.02-pre3\n" -"Report-Msgid-Bugs-To: bug-grub@gnu.org\n" -"POT-Creation-Date: 2019-07-04 16:09+0200\n" -"PO-Revision-Date: 2018-07-02 14:53+0300\n" -"Last-Translator: Jorma Karvonen \n" -"Language-Team: Finnish \n" -"Language: fi\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Bugs: Report translation errors to the Language-Team address.\n" -"Plural-Forms: nplurals=2; plural=n != 1;\n" -"X-Generator: Lokalize 1.5\n" - -#: grub-core/bus/usb/serial/ftdi.c:145 grub-core/bus/usb/serial/pl2303.c:158 -#: grub-core/term/ieee1275/escc.c:169 grub-core/term/ns8250.c:202 -msgid "unsupported serial port speed" -msgstr "tukematon sarjaporttinopeus" - -#: grub-core/bus/usb/serial/ftdi.c:151 grub-core/bus/usb/serial/pl2303.c:164 -#: grub-core/term/efi/serial.c:116 grub-core/term/ieee1275/escc.c:175 -#: grub-core/term/ns8250.c:208 grub-core/term/serial.c:227 -#: grub-core/term/serial.c:243 -msgid "unsupported serial port parity" -msgstr "tukematon sarjaportin pariteetti" - -#: grub-core/bus/usb/serial/ftdi.c:157 grub-core/bus/usb/serial/pl2303.c:170 -#: grub-core/term/efi/serial.c:122 grub-core/term/ieee1275/escc.c:181 -#: grub-core/term/ns8250.c:213 grub-core/term/serial.c:267 -msgid "unsupported serial port stop bits number" -msgstr "tukematon sarjaportin stop-bittimäärä" - -#: grub-core/bus/usb/serial/ftdi.c:161 grub-core/bus/usb/serial/pl2303.c:174 -#: grub-core/term/efi/serial.c:126 grub-core/term/ieee1275/escc.c:185 -#: grub-core/term/ns8250.c:217 -msgid "unsupported serial port word length" -msgstr "tukematon sarjaportin sanapituus" - -#: grub-core/commands/acpi.c:42 -msgid "Don't load host tables specified by comma-separated list." -msgstr "" -"Älä lataa pilkulla erotetulla luettelolla määriteltyä tietokonetauluja." - -#: grub-core/commands/acpi.c:45 -msgid "Load only tables specified by comma-separated list." -msgstr "Lataa vain pilkulla erotetulla luettelolla määriteltyjä tauluja." - -#: grub-core/commands/acpi.c:46 -msgid "Export version 1 tables to the OS." -msgstr "Vie version 1 taulut käyttöjärjestelmään." - -#: grub-core/commands/acpi.c:47 -msgid "Export version 2 and version 3 tables to the OS." -msgstr "Vie version 2 ja version 3 taulut käyttöjärjestelmään." - -#: grub-core/commands/acpi.c:48 -msgid "Set OEMID of RSDP, XSDT and RSDT." -msgstr "Aseta RSDP:n, XSDT:n ja RSDT:n OEMID-kenttä." - -#: grub-core/commands/acpi.c:50 -msgid "Set OEMTABLE ID of RSDP, XSDT and RSDT." -msgstr "Aseta RSDP:n, XSDT:n ja RSDT:n OEMTABLE-tunniste." - -#: grub-core/commands/acpi.c:52 -msgid "Set OEMTABLE revision of RSDP, XSDT and RSDT." -msgstr "Aseta RSDP:n, XSDT:n ja RSDT:n OEMTABLE-versio." - -#: grub-core/commands/acpi.c:54 -msgid "Set creator field of RSDP, XSDT and RSDT." -msgstr "Aseta RSDP:n, XSDT:n ja RSDT:n luojakenttä." - -#: grub-core/commands/acpi.c:56 -msgid "Set creator revision of RSDP, XSDT and RSDT." -msgstr "Aseta RSDP:n, XSDT:n ja RSDT:n luojaversio." - -#. TRANSLATORS: "hangs" here is a noun, not a verb. -#: grub-core/commands/acpi.c:58 -msgid "" -"Don't update EBDA. May fix failures or hangs on some BIOSes but makes it " -"ineffective with OS not receiving RSDP from GRUB." -msgstr "" -"Älä päivitä EBDA:ta. Saattaa korjata virheet tai jää roikkumaan joissain " -"BIOS:seissa, mutta on tehoton käyttöjärjestelmillä, jotka eivät vastaanota " -"RSDP:tä GRUB:sta." - -#: grub-core/commands/acpi.c:650 grub-core/commands/acpi.c:667 -#: grub-core/commands/i386/pc/play.c:105 grub-core/commands/keylayouts.c:230 -#: grub-core/commands/keylayouts.c:245 grub-core/commands/keylayouts.c:263 -#: grub-core/commands/verifiers.c:156 grub-core/efiemu/loadcore.c:350 -#: grub-core/kern/elf.c:117 grub-core/kern/elfXX.c:29 -#: grub-core/kern/elfXX.c:156 grub-core/loader/arm/linux.c:319 -#: grub-core/loader/arm64/linux.c:330 grub-core/loader/arm64/xen_boot.c:356 -#: grub-core/loader/efi/chainloader.c:276 -#: grub-core/loader/efi/chainloader.c:297 -#: grub-core/loader/efi/chainloader.c:329 grub-core/loader/efi/fdt.c:138 -#: grub-core/loader/i386/bsd.c:1276 grub-core/loader/i386/bsd.c:2116 -#: grub-core/loader/i386/bsdXX.c:20 grub-core/loader/i386/bsdXX.c:36 -#: grub-core/loader/i386/bsdXX.c:63 grub-core/loader/i386/bsdXX.c:357 -#: grub-core/loader/i386/bsdXX.c:376 grub-core/loader/i386/bsdXX.c:519 -#: grub-core/loader/i386/bsdXX.c:535 grub-core/loader/i386/bsdXX.c:615 -#: grub-core/loader/i386/bsdXX.c:638 -#: grub-core/loader/i386/coreboot/chainloader.c:112 -#: grub-core/loader/i386/coreboot/chainloader.c:148 -#: grub-core/loader/i386/coreboot/chainloader.c:170 -#: grub-core/loader/i386/linux.c:667 grub-core/loader/i386/linux.c:788 -#: grub-core/loader/i386/linux.c:1005 grub-core/loader/i386/multiboot_mbi.c:171 -#: grub-core/loader/i386/pc/chainloader.c:202 -#: grub-core/loader/i386/pc/linux.c:149 grub-core/loader/i386/pc/linux.c:320 -#: grub-core/loader/i386/pc/linux.c:362 grub-core/loader/i386/pc/plan9.c:457 -#: grub-core/loader/i386/pc/plan9.c:550 grub-core/loader/i386/pc/plan9.c:566 -#: grub-core/loader/i386/xen.c:934 grub-core/loader/i386/xen_file.c:72 -#: grub-core/loader/i386/xen_fileXX.c:43 grub-core/loader/i386/xen_fileXX.c:186 -#: grub-core/loader/i386/xen_fileXX.c:339 grub-core/loader/ia64/efi/linux.c:423 -#: grub-core/loader/ia64/efi/linux.c:471 grub-core/loader/linux.c:286 -#: grub-core/loader/macho.c:84 grub-core/loader/macho.c:109 -#: grub-core/loader/machoXX.c:33 grub-core/loader/machoXX.c:46 -#: grub-core/loader/machoXX.c:76 grub-core/loader/machoXX.c:116 -#: grub-core/loader/machoXX.c:131 grub-core/loader/machoXX.c:147 -#: grub-core/loader/machoXX.c:196 grub-core/loader/machoXX.c:317 -#: grub-core/loader/multiboot.c:434 grub-core/loader/multiboot_elfxx.c:171 -#: grub-core/loader/multiboot_elfxx.c:234 -#: grub-core/loader/multiboot_elfxx.c:278 grub-core/loader/multiboot_mbi2.c:129 -#: grub-core/loader/xnu.c:737 grub-core/loader/xnu.c:795 -#: grub-core/loader/xnu.c:816 grub-core/loader/xnu.c:871 -#: grub-core/loader/xnu.c:914 grub-core/loader/xnu.c:952 -#: grub-core/loader/xnu_resume.c:68 grub-core/loader/xnu_resume.c:153 -#: grub-core/loader/xnu_resume.c:165 util/grub-mkimagexx.c:2288 -#, c-format -msgid "premature end of file %s" -msgstr "ennenaikainen tiedoston %s loppu" - -#: grub-core/commands/acpi.c:779 -msgid "" -"[-1|-2] [--exclude=TABLE1,TABLE2|--load-only=TABLE1,TABLE2] FILE1 [FILE2] " -"[...]" -msgstr "" -"[-1|-2] [--exclude=TAULU1,TAULU2|--load-only=TAULU1,TAULU2] TIEDOSTO1 " -"[TIEDOSTO2] [...]" - -#: grub-core/commands/acpi.c:782 -msgid "Load host ACPI tables and tables specified by arguments." -msgstr "Lataa tietokoneen ACPI-taulut ja argumenttien määrittelemät taulut." - -#: grub-core/commands/acpihalt.c:368 grub-core/kern/err.c:110 -#, c-format -msgid "error: %s.\n" -msgstr "virhe: %s.\n" - -#: grub-core/commands/acpihalt.c:368 grub-core/kern/emu/misc.c:95 -#: grub-core/kern/emu/misc.c:105 grub-core/kern/emu/misc.c:134 -#: grub-core/kern/emu/mm.c:34 grub-core/kern/emu/mm.c:62 -#: grub-core/kern/mm.c:374 grub-core/lib/relocator.c:1282 -#: grub-core/lib/relocator.c:1439 grub-core/lib/relocator.c:1538 -#: grub-core/loader/arm/linux.c:259 grub-core/loader/arm64/linux.c:265 -#: grub-core/loader/arm64/linux.c:321 grub-core/loader/arm64/linux.c:340 -#: grub-core/loader/arm64/xen_boot.c:344 grub-core/loader/arm64/xen_boot.c:367 -#: grub-core/loader/efi/chainloader.c:289 grub-core/osdep/unix/dl.c:48 -#: grub-core/osdep/windows/dl.c:46 grub-core/script/lexer.c:156 -#: grub-core/script/lexer.c:182 -msgid "out of memory" -msgstr "muisti loppui" - -#: grub-core/commands/acpihalt.c:374 grub-core/disk/cryptodisk.c:587 -#: grub-core/disk/cryptodisk.c:632 grub-core/kern/emu/hostdisk.c:307 -#: grub-core/kern/emu/hostfs.c:149 grub-core/kern/emu/misc.c:200 -#: grub-core/osdep/linux/ofpath.c:195 grub-core/osdep/linux/ofpath.c:521 -#: grub-core/osdep/linux/ofpath.c:534 util/glue-efi.c:80 util/glue-efi.c:94 -#: util/grub-editenv.c:155 util/grub-fstest.c:577 -#: util/grub-install-common.c:943 util/grub-mkrescue.c:634 -#: util/grub-mkrescue.c:888 util/grub-mount.c:506 util/grub-render-label.c:176 -#: util/misc.c:95 util/setup.c:814 util/setup.c:833 -#, c-format -msgid "cannot read `%s': %s" -msgstr "kohteen â€%s†lukeminen epäonnistui: %s" - -#. TRANSLATORS: It's computer shutdown using ACPI, not disabling ACPI. -#: grub-core/commands/acpihalt.c:452 -msgid "ACPI shutdown failed" -msgstr "ACPI-sulkeutuminen epäonnistui" - -#: grub-core/commands/arc/lsdev.c:51 -msgid "List devices." -msgstr "Luettele laitteet." - -#: grub-core/commands/blocklist.c:122 grub-core/commands/cat.c:57 -#: grub-core/commands/configfile.c:35 grub-core/commands/efi/loadbios.c:168 -#: grub-core/commands/file.c:159 grub-core/commands/hexdump.c:47 -#: grub-core/commands/legacycfg.c:209 grub-core/commands/legacycfg.c:315 -#: grub-core/commands/minicmd.c:44 grub-core/commands/syslinuxcfg.c:146 -#: grub-core/commands/testload.c:58 grub-core/commands/testspeed.c:52 -#: grub-core/disk/loopback.c:93 grub-core/efiemu/main.c:293 -#: grub-core/font/font_cmd.c:32 grub-core/kern/emu/hostdisk.c:519 -#: grub-core/loader/arm/linux.c:364 grub-core/loader/arm/linux.c:409 -#: grub-core/loader/arm/linux.c:472 grub-core/loader/arm64/linux.c:243 -#: grub-core/loader/arm64/linux.c:297 grub-core/loader/arm64/xen_boot.c:398 -#: grub-core/loader/arm64/xen_boot.c:411 grub-core/loader/arm64/xen_boot.c:462 -#: grub-core/loader/efi/chainloader.c:216 grub-core/loader/i386/bsd.c:1462 -#: grub-core/loader/i386/bsd.c:1807 grub-core/loader/i386/bsd.c:2085 -#: grub-core/loader/i386/coreboot/chainloader.c:438 -#: grub-core/loader/i386/linux.c:656 grub-core/loader/i386/linux.c:1041 -#: grub-core/loader/i386/pc/chainloader.c:290 -#: grub-core/loader/i386/pc/freedos.c:105 grub-core/loader/i386/pc/linux.c:138 -#: grub-core/loader/i386/pc/linux.c:400 grub-core/loader/i386/pc/ntldr.c:85 -#: grub-core/loader/i386/pc/plan9.c:409 -#: grub-core/loader/i386/pc/pxechainloader.c:94 -#: grub-core/loader/i386/pc/truecrypt.c:96 grub-core/loader/i386/xen.c:641 -#: grub-core/loader/i386/xen.c:768 grub-core/loader/i386/xen.c:844 -#: grub-core/loader/i386/xen.c:854 grub-core/loader/i386/xnu.c:488 -#: grub-core/loader/ia64/efi/linux.c:459 grub-core/loader/ia64/efi/linux.c:539 -#: grub-core/loader/mips/linux.c:238 grub-core/loader/mips/linux.c:429 -#: grub-core/loader/multiboot.c:322 grub-core/loader/multiboot.c:374 -#: grub-core/loader/multiboot.c:384 -#: grub-core/loader/powerpc/ieee1275/linux.c:269 -#: grub-core/loader/powerpc/ieee1275/linux.c:341 -#: grub-core/loader/sparc64/ieee1275/linux.c:305 -#: grub-core/loader/sparc64/ieee1275/linux.c:381 grub-core/loader/xnu.c:351 -#: grub-core/loader/xnu.c:460 grub-core/loader/xnu.c:778 -#: grub-core/loader/xnu.c:892 grub-core/loader/xnu.c:1277 -#: grub-core/loader/xnu.c:1427 grub-core/loader/xnu.c:1453 -#: grub-core/video/readers/jpeg.c:812 grub-core/video/readers/png.c:1123 -msgid "filename expected" -msgstr "odotettiin tiedostonimeä" - -# Parametri pitkille valitsimelle, esim.: --abstract=FILE Aseta abstrakti tiedostonimi -#. TRANSLATORS: "embed" is a verb (command description). " -#: grub-core/commands/blocklist.c:154 grub-core/commands/cat.c:163 -#: grub-core/commands/configfile.c:65 grub-core/commands/configfile.c:68 -#: grub-core/commands/configfile.c:74 grub-core/commands/configfile.c:80 -#: grub-core/commands/configfile.c:86 grub-core/commands/hashsum.c:34 -#: grub-core/commands/legacycfg.c:834 grub-core/commands/legacycfg.c:841 -#: grub-core/commands/legacycfg.c:846 grub-core/commands/legacycfg.c:851 -#: grub-core/commands/macbless.c:222 grub-core/commands/minicmd.c:198 -#: grub-core/commands/syslinuxcfg.c:186 grub-core/commands/syslinuxcfg.c:194 -#: grub-core/commands/syslinuxcfg.c:200 grub-core/commands/syslinuxcfg.c:206 -#: grub-core/commands/testload.c:163 grub-core/efiemu/main.c:312 -#: grub-core/kern/emu/main.c:100 grub-core/kern/emu/main.c:103 -#: grub-core/loader/i386/bsd.c:2137 grub-core/loader/i386/bsd.c:2140 -#: grub-core/loader/i386/bsd.c:2143 -#: grub-core/loader/i386/coreboot/chainloader.c:505 -#: grub-core/loader/ia64/efi/linux.c:594 include/grub/util/install.h:32 -#: include/grub/util/install.h:64 util/grub-glue-efi.c:52 -#: util/grub-glue-efi.c:54 util/grub-glue-efi.c:56 util/grub-install.c:254 -#: util/grub-install.c:301 util/grub-mkfont.c:936 util/grub-mkimage.c:68 -#: util/grub-mkimage.c:74 util/grub-mkimage.c:76 util/grub-mkimage.c:78 -#: util/grub-mkimage.c:81 util/grub-mklayout.c:52 util/grub-mklayout.c:54 -#: util/grub-mkrescue.c:97 util/grub-mkrescue.c:101 util/grub-mkrescue.c:104 -#: util/grub-mkrescue.c:105 util/grub-mkrescue.c:106 -#: util/grub-mkstandalone.c:47 util/grub-mkstandalone.c:49 -#: util/grub-probe.c:732 util/grub-render-label.c:59 -#: util/grub-render-label.c:70 util/grub-render-label.c:72 util/grub-setup.c:78 -#: util/grub-setup.c:80 util/grub-setup.c:84 util/grub-syslinux2cfg.c:74 -#: util/grub-syslinux2cfg.c:147 -msgid "FILE" -msgstr "TIEDOSTO" - -#: grub-core/commands/blocklist.c:154 -msgid "Print a block list." -msgstr "Tulosta lohkoluettelo." - -#: grub-core/commands/boot.c:147 grub-core/commands/legacycfg.c:533 -#: grub-core/commands/legacycfg.c:574 grub-core/loader/arm64/linux.c:250 -#: grub-core/loader/i386/bsd.c:1799 grub-core/loader/i386/bsd.c:1900 -#: grub-core/loader/i386/bsd.c:2007 grub-core/loader/i386/bsd.c:2040 -#: grub-core/loader/i386/bsd.c:2089 grub-core/loader/i386/linux.c:1047 -#: grub-core/loader/i386/pc/linux.c:406 grub-core/loader/i386/xen.c:775 -#: grub-core/loader/i386/xen.c:859 grub-core/loader/ia64/efi/linux.c:545 -#: grub-core/loader/mips/linux.c:432 grub-core/loader/multiboot.c:388 -#: grub-core/loader/powerpc/ieee1275/linux.c:347 -#: grub-core/loader/sparc64/ieee1275/linux.c:387 grub-core/loader/xnu.c:572 -#: grub-core/loader/xnu.c:665 grub-core/loader/xnu.c:781 -#: grub-core/loader/xnu.c:895 grub-core/loader/xnu.c:1091 -#: grub-core/loader/xnu.c:1258 grub-core/loader/xnu.c:1289 -#: grub-core/loader/xnu.c:1430 -msgid "you need to load the kernel first" -msgstr "sinun on ladattava ydin ensin" - -#: grub-core/commands/boot.c:189 -msgid "Boot an operating system." -msgstr "Käynnistä käyttöjärjestelmä." - -#: grub-core/commands/boottime.c:36 -#: grub-core/commands/i386/coreboot/cb_timestamps.c:108 -msgid "No boot time statistics is available\n" -msgstr "Käynnistyksen aikaiset tilastot eivät ole käytettävissä\n" - -#: grub-core/commands/boottime.c:59 -msgid "Show boot time statistics." -msgstr "Näytä käynnistyksen aikaiset tilastot." - -#: grub-core/commands/cacheinfo.c:40 -#, c-format -msgid "Disk cache statistics: hits = %lu (%lu.%02lu%%), misses = %lu\n" -msgstr "" -"Levyvälimuistitilasto: osumia = %lu (%lu.%02lu%%), ohilaukauksia = %lu\n" - -#: grub-core/commands/cacheinfo.c:45 -msgid "No disk cache statistics available\n" -msgstr "Levyvälimuistitilasto ei ole käytettävissä\n" - -#: grub-core/commands/cacheinfo.c:56 -msgid "Get disk cache info." -msgstr "Hae levyvälimuistitiedot." - -#: grub-core/commands/cat.c:33 -msgid "Accept DOS-style CR/NL line endings." -msgstr "Hyväksy DOS-tyyliset CR/NL-riviloput." - -#: grub-core/commands/cat.c:163 grub-core/commands/minicmd.c:198 -msgid "Show the contents of a file." -msgstr "Näytä tiedoston sisältö." - -#: grub-core/commands/cmp.c:43 grub-core/commands/i386/pc/drivemap.c:239 -#: grub-core/commands/i386/wrmsr.c:60 grub-core/commands/iorw.c:85 -#: grub-core/commands/memrw.c:84 grub-core/commands/password.c:75 -#: grub-core/commands/password_pbkdf2.c:94 grub-core/commands/pgp.c:826 -#: grub-core/commands/regexp.c:113 grub-core/mmap/mmap.c:517 -#: grub-core/net/dns.c:639 -msgid "two arguments expected" -msgstr "odotettiin kahta argumenttia" - -#: grub-core/commands/cmp.c:45 -#, c-format -msgid "Compare file `%s' with `%s':\n" -msgstr "Vertaa tiedostoa â€%s†tiedostoon â€%sâ€:\n" - -#: grub-core/commands/cmp.c:54 -#, c-format -msgid "Files differ in size: %llu [%s], %llu [%s]\n" -msgstr "Tiedostot ovat erikokoisia: %llu [%s], %llu [%s]\n" - -#: grub-core/commands/cmp.c:81 -#, c-format -msgid "Files differ at the offset %llu: 0x%x [%s], 0x%x [%s]\n" -msgstr "Tiedostot eroavat siirrososoitteessa %llu: 0x%x [%s], 0x%x [%s]\n" - -#. TRANSLATORS: it's always exactly 2 files. -#: grub-core/commands/cmp.c:93 -msgid "The files are identical.\n" -msgstr "Tiedostot ovat identtiset.\n" - -#: grub-core/commands/cmp.c:113 -msgid "FILE1 FILE2" -msgstr "TIEDOSTO1 TIEDOSTO2" - -#: grub-core/commands/cmp.c:113 -msgid "Compare two files." -msgstr "Vertaa kahta tiedostoa." - -#: grub-core/commands/configfile.c:65 -msgid "Load another config file." -msgstr "Lataa toinen config-tiedosto." - -#: grub-core/commands/configfile.c:69 grub-core/commands/configfile.c:87 -msgid "Load another config file without changing context." -msgstr "Lataa toinen config-tiedosto muuttamatta asiayhteyttä." - -#: grub-core/commands/configfile.c:75 -msgid "" -"Load another config file without changing context but take only menu entries." -msgstr "" -"Lataa toinen config-tiedosto muuttamatta asiayhteyttä, mutta hae vain " -"valikkorivit." - -#: grub-core/commands/configfile.c:81 -msgid "Load another config file but take only menu entries." -msgstr "Lataa toinen config-tiedosto, mutta hae vain valikkorivit." - -#: grub-core/commands/date.c:141 -msgid "[[year-]month-day] [hour:minute[:second]]" -msgstr "[[vuosi-]kuukausi-päivä] [tunti:minuutti[:sekunti]]" - -#: grub-core/commands/date.c:142 -msgid "Display/set current datetime." -msgstr "Näytä/aseta nykyinen päiväys." - -#: grub-core/commands/echo.c:30 -msgid "Do not output the trailing newline." -msgstr "Älä tulosta perässä olevia rivinvaihtoja." - -#: grub-core/commands/echo.c:31 -msgid "Enable interpretation of backslash escapes." -msgstr "Ota käyttöön kenoviivakoodinvaihtomerkkien tulkinta." - -#: grub-core/commands/echo.c:134 -msgid "[-e|-n] STRING" -msgstr "[-e|-n] MERKKIJONO" - -#: grub-core/commands/echo.c:134 -msgid "Display a line of text." -msgstr "Näytä tekstirivi." - -#: grub-core/commands/efi/efifwsetup.c:82 -msgid "Reboot into firmware setup menu." -msgstr "Käynnistä laiteohjelmiston asetusvalikkoon." - -#: grub-core/commands/efi/fixvideo.c:107 -msgid "Fix video problem." -msgstr "Korjaa video-ongelma." - -#: grub-core/commands/efi/loadbios.c:52 -msgid "ROM image is present." -msgstr "ROM-levykuva on läsnä." - -#: grub-core/commands/efi/loadbios.c:70 -msgid "Can't enable ROM area." -msgstr "ROM-alueen käyttöönotto epäonnistui." - -#: grub-core/commands/efi/loadbios.c:209 -msgid "" -"Create BIOS-like structures for backward compatibility with existing OS." -msgstr "" -"Luo BIOS-kaltainen rakenne olemassa olevan käyttöjärjestelmän " -"taaksepäinyhteensopivuutta varten." - -#: grub-core/commands/efi/loadbios.c:214 -msgid "BIOS_DUMP [INT10_DUMP]" -msgstr "BIOS_DUMP [INT10_DUMP]" - -#: grub-core/commands/efi/loadbios.c:215 -msgid "Load BIOS dump." -msgstr "Lataa BIOS-vedos." - -#: grub-core/commands/efi/shim_lock.c:76 -#, c-format -msgid "module cannot be loaded in UEFI secure boot mode: %s" -msgstr "" - -#: grub-core/commands/efi/shim_lock.c:98 -#, c-format -msgid "cannot boot due to dangerous module in memory: %s" -msgstr "" - -#: grub-core/commands/efi/shim_lock.c:116 -#, fuzzy -msgid "bad shim signature" -msgstr "virheellinen allekirjoitus" - -#: grub-core/commands/efi/tpm.c:149 grub-core/commands/efi/tpm.c:189 -#: grub-core/commands/efi/tpm.c:256 grub-core/commands/efi/tpm.c:306 -#, fuzzy -msgid "Command failed" -msgstr "alloc-men epäonnistui" - -#: grub-core/commands/efi/tpm.c:151 grub-core/commands/efi/tpm.c:191 -#: grub-core/commands/efi/tpm.c:258 grub-core/commands/efi/tpm.c:308 -#, fuzzy -msgid "Invalid parameter" -msgstr "virheellinen parametri %s" - -#: grub-core/commands/efi/tpm.c:154 grub-core/commands/efi/tpm.c:194 -#: grub-core/commands/efi/tpm.c:261 grub-core/commands/efi/tpm.c:311 -msgid "Output buffer too small" -msgstr "" - -#: grub-core/commands/efi/tpm.c:156 grub-core/commands/efi/tpm.c:196 -#: grub-core/commands/efi/tpm.c:263 grub-core/commands/efi/tpm.c:313 -#, fuzzy -msgid "TPM unavailable" -msgstr "Polku: ei ole saatavilla" - -#: grub-core/commands/efi/tpm.c:158 grub-core/commands/efi/tpm.c:198 -#: grub-core/commands/efi/tpm.c:265 grub-core/commands/efi/tpm.c:315 -#, fuzzy -msgid "Unknown TPM error" -msgstr "Tuntematon järjestelmävirhe" - -#: grub-core/commands/efi/tpm.c:240 grub-core/commands/efi/tpm.c:288 -msgid "cannot allocate TPM event buffer" -msgstr "" - -#: grub-core/commands/eval.c:63 -msgid "STRING ..." -msgstr "MERKKIJONO ..." - -#: grub-core/commands/eval.c:64 -msgid "Evaluate arguments as GRUB commands" -msgstr "Arvioi argumentit GRUB-komentoina" - -#: grub-core/commands/file.c:41 -msgid "Check if FILE can be booted as i386 PAE Xen unprivileged guest kernel" -msgstr "" -"Tarkista, että voidaanko TIEDOSTO käynnistää i386 PAE Xen-etuoikeudettomana " -"vierasytimenä" - -#: grub-core/commands/file.c:44 -msgid "Check if FILE can be booted as x86_64 Xen unprivileged guest kernel" -msgstr "" -"Tarkista, että voidaanko TIEDOSTO käynnistää x86_64 Xen-etuoikeudettomana " -"vierasytimenä" - -#: grub-core/commands/file.c:46 -msgid "Check if FILE can be used as Xen x86 privileged guest kernel" -msgstr "" -"Tarkista, että voidaanko TIEDOSTO alkuladata Xen x86-etuoikeudellisena " -"vierasytimenä" - -# Multiboot viitannee Multiboot-määrittelyyn. Katso http://www.gnu.org/software/grub/manual/multiboot/multiboot.html -#: grub-core/commands/file.c:48 -msgid "Check if FILE can be used as x86 multiboot kernel" -msgstr "Tarkista, että voidaanko TIEDOSTOa käyttää x86-multiboot-ytimenä" - -# Multiboot viitannee Multiboot-määrittelyyn. Katso http://www.gnu.org/software/grub/manual/multiboot/multiboot.html -#: grub-core/commands/file.c:50 -msgid "Check if FILE can be used as x86 multiboot2 kernel" -msgstr "Tarkista, että voidaanko TIEDOSTOa käyttää x86-multiboot2-ytimenä" - -#: grub-core/commands/file.c:52 -msgid "Check if FILE is ARM Linux" -msgstr "Tarkista, että onko TIEDOSTO ARM Linux" - -#: grub-core/commands/file.c:54 -msgid "Check if FILE is ARM64 Linux" -msgstr "Tarkista, että onko TIEDOSTO ARM64 Linux" - -#: grub-core/commands/file.c:56 -msgid "Check if FILE is IA64 Linux" -msgstr "Tarkista, että onko TIEDOSTO IA64 Linux" - -#: grub-core/commands/file.c:58 -msgid "Check if FILE is MIPS Linux" -msgstr "Tarkista, että onko TIEDOSTO MIPS Linux" - -#: grub-core/commands/file.c:60 -msgid "Check if FILE is MIPSEL Linux" -msgstr "Tarkista, että onko TIEDOSTO MIPSEL Linux" - -#: grub-core/commands/file.c:62 -msgid "Check if FILE is SPARC64 Linux" -msgstr "Tarkista, että onko TIEDOSTO SPARC64 Linux" - -#: grub-core/commands/file.c:64 -msgid "Check if FILE is POWERPC Linux" -msgstr "Tarkista, että onko TIEDOSTO POWERPC Linux" - -#: grub-core/commands/file.c:66 -msgid "Check if FILE is x86 Linux" -msgstr "Tarkista, että onko TIEDOSTO x86 Linux" - -#: grub-core/commands/file.c:68 -msgid "Check if FILE is x86 Linux supporting 32-bit protocol" -msgstr "" -"Tarkista, että onko TIEDOSTO x86 Linux, joka tukee 32-bittistä " -"yhteiskäytäntöä" - -#: grub-core/commands/file.c:70 -msgid "Check if FILE is x86 kFreeBSD" -msgstr "Tarkista, että onko TIEDOSTO x86 kFreeBSD" - -#: grub-core/commands/file.c:72 -msgid "Check if FILE is i386 kFreeBSD" -msgstr "Tarkista, että onko TIEDOSTO i386 kFreeBSD" - -#: grub-core/commands/file.c:74 -msgid "Check if FILE is x86_64 kFreeBSD" -msgstr "Tarkista, että onko TIEDOSTO x86_64 kFreeBSD" - -#: grub-core/commands/file.c:77 -msgid "Check if FILE is x86 kNetBSD" -msgstr "Tarkista, että onko TIEDOSTO x86 kNetBSD" - -#: grub-core/commands/file.c:79 -msgid "Check if FILE is i386 kNetBSD" -msgstr "Tarkista, että onko TIEDOSTO i386 kNetBSD" - -#: grub-core/commands/file.c:81 -msgid "Check if FILE is x86_64 kNetBSD" -msgstr "Tarkista, että onko TIEDOSTO x86_64 kNetBSD" - -#: grub-core/commands/file.c:84 -msgid "Check if FILE is i386 EFI file" -msgstr "Tarkista, että onko TIEDOSTO i386 EFI-tiedosto" - -#: grub-core/commands/file.c:86 -msgid "Check if FILE is x86_64 EFI file" -msgstr "Tarkista, että onko TIEDOSTO x86_64 EFI-tiedosto" - -#: grub-core/commands/file.c:88 -msgid "Check if FILE is IA64 EFI file" -msgstr "Tarkista, että onko TIEDOSTO IA64 EFI-tiedosto" - -#: grub-core/commands/file.c:90 -msgid "Check if FILE is ARM64 EFI file" -msgstr "Tarkista, että onko TIEDOSTO ARM64 EFI-tiedosto" - -#: grub-core/commands/file.c:92 -msgid "Check if FILE is ARM EFI file" -msgstr "Tarkista, että onko TIEDOSTO ARM EFI-tiedosto" - -#: grub-core/commands/file.c:94 -#, fuzzy -msgid "Check if FILE is RISC-V 32bit EFI file" -msgstr "Tarkista, että onko TIEDOSTO ARM EFI-tiedosto" - -#: grub-core/commands/file.c:96 -#, fuzzy -msgid "Check if FILE is RISC-V 64bit EFI file" -msgstr "Tarkista, että onko TIEDOSTO IA64 EFI-tiedosto" - -#: grub-core/commands/file.c:98 -msgid "Check if FILE is hiberfil.sys in hibernated state" -msgstr "Tarkista, että onko TIEDOSTO hiberfil.sys lepotilassa" - -#: grub-core/commands/file.c:100 -msgid "Check if FILE is x86_64 XNU (Mac OS X kernel)" -msgstr "Tarkista, että onko TIEDOSTO x86_64 XNU (Mac OS X-ydin)" - -#: grub-core/commands/file.c:102 -msgid "Check if FILE is i386 XNU (Mac OS X kernel)" -msgstr "Tarkista, että onko TIEDOSTO i386 XNU (Mac OS X-ydin)" - -#: grub-core/commands/file.c:104 -msgid "Check if FILE is XNU (Mac OS X kernel) hibernated image" -msgstr "Tarkista, että onko TIEDOSTO XNU (Mac OS X-ydin) lepotilalevykuva" - -#: grub-core/commands/file.c:106 -msgid "Check if FILE is BIOS bootsector" -msgstr "Tarkista, että onko TIEDOSTO BIOS-käynnistyssektori" - -#. TRANSLATORS: it's a standalone boolean value, -#. opposite of "true". -#: grub-core/commands/file.c:675 grub-core/commands/i386/cmostest.c:63 -#: grub-core/commands/i386/cpuid.c:71 grub-core/commands/keystatus.c:83 -#: grub-core/commands/keystatus.c:87 grub-core/commands/keystatus.c:96 -#: grub-core/commands/test.c:436 grub-core/commands/true.c:39 -#: grub-core/script/execute.c:247 grub-core/script/execute.c:1039 -msgid "false" -msgstr "epätosi" - -#: grub-core/commands/file.c:684 -msgid "OPTIONS FILE" -msgstr "VALITSIMET TIEDOSTO" - -#: grub-core/commands/file.c:685 -msgid "Check if FILE is of specified type." -msgstr "Tarkista, että onko TIEDOSTO määriteltyä tyyppiä." - -#. TRANSLATORS: It means that the specified partition e.g. -#. hd0,msdos1=/dev/sda1 doesn't exist. -#: grub-core/commands/gptsync.c:140 grub-core/kern/disk.c:258 -msgid "no such partition" -msgstr "sellaista osiota ei ole" - -#: grub-core/commands/gptsync.c:240 -#, c-format -msgid "New MBR is written to `%s'\n" -msgstr "Uusi MBR on kirjoitettu levylle â€%sâ€\n" - -#: grub-core/commands/gptsync.c:252 -msgid "DEVICE [PARTITION[+/-[TYPE]]] ..." -msgstr "LAITE [OSIO[+/-[TYYPPI]]] ..." - -# Hybridi MBR (Master Boot Record) voidaan luoda, jotta sellaiset (vanhat) käyttöjärjestelmät, jotka eivät ymmärrä GPT (GUID Partition Type)-standardia, voivat käyttää GPT-levyasemia. -#. TRANSLATORS: MBR type is one-byte partition -#. type id. -#: grub-core/commands/gptsync.c:255 -msgid "" -"Fill hybrid MBR of GPT drive DEVICE. Specified partitions will be a part of " -"hybrid MBR. Up to 3 partitions are allowed. TYPE is an MBR type. + means " -"that partition is active. Only one partition can be active." -msgstr "" -"Täytä GPT-aseman LAITE hybridi-MBR. Määritellyt osiot ovat osa hybridi-MBR:" -"ää. Korkeintaan 3 osiota sallitaan. TYYPPI on MBR-tyyppi. + tarkoittaa, että " -"osio on aktiivinen. Vain yksi osio voi olla aktiivinen." - -#: grub-core/commands/halt.c:40 -msgid "" -"Halts the computer. This command does not work on all firmware " -"implementations." -msgstr "" -"Pysäyttää tietokoneen. Tämä komento ei toimi kaikissa " -"laiteohjelmistototeutuksissa." - -#: grub-core/commands/hashsum.c:32 -msgid "Specify hash to use." -msgstr "Määritä käytettävä hajakoodaus." - -#: grub-core/commands/hashsum.c:32 -msgid "HASH" -msgstr "HAJAKOODAUS" - -#: grub-core/commands/hashsum.c:33 -msgid "Check hashes of files with hash list FILE." -msgstr "Tarkista tiedostohajakoodaukset hajakoodausluettelo-TIEDOSTOlla." - -#: grub-core/commands/hashsum.c:35 -msgid "Base directory for hash list." -msgstr "Perushakemisto hajakoodausluettelolle." - -#. TRANSLATORS: platform here isn't identifier. It can be translated. -#: grub-core/commands/hashsum.c:35 grub-core/commands/ls.c:150 -#: grub-core/commands/macbless.c:226 grub-core/commands/syslinuxcfg.c:51 -#: grub-core/commands/syslinuxcfg.c:54 grub-core/kern/emu/main.c:106 -#: include/grub/util/install.h:50 include/grub/util/install.h:53 -#: include/grub/util/install.h:56 include/grub/util/install.h:59 -#: util/grub-install.c:250 util/grub-install.c:252 util/grub-install.c:297 -#: util/grub-install.c:299 util/grub-mkimage.c:64 util/grub-mkimage.c:67 -#: util/grub-mknetdir.c:46 util/grub-mknetdir.c:48 util/grub-mkrescue.c:99 -#: util/grub-setup.c:82 util/grub-syslinux2cfg.c:63 util/grub-syslinux2cfg.c:65 -#: util/grub-syslinux2cfg.c:67 util/grub-syslinux2cfg.c:71 -msgid "DIR" -msgstr "HAKEMISTO" - -#: grub-core/commands/hashsum.c:37 -msgid "Don't stop after first error." -msgstr "Älä pysähdy ensimmäisen virheen jälkeen." - -#: grub-core/commands/hashsum.c:38 -msgid "Uncompress file before checksumming." -msgstr "Pura tiedoston tiivistys ennen tarkistussumman laskemista." - -#: grub-core/commands/hashsum.c:163 -#, c-format -msgid "%s: READ ERROR\n" -msgstr "%s: LUKUVIRHE\n" - -#: grub-core/commands/hashsum.c:177 -#, c-format -msgid "%s: HASH MISMATCH\n" -msgstr "%s: HAJAKOODAUSTÄSMÄÄMÄTTÖMYYS\n" - -#: grub-core/commands/hashsum.c:188 -#, c-format -msgid "%s: OK\n" -msgstr "%s: VALMIS\n" - -#: grub-core/commands/hashsum.c:282 -msgid "-h HASH [-c FILE [-p PREFIX]] [FILE1 [FILE2 ...]]" -msgstr "-h HAJAKOODAUS [-c TIEDOSTO [-p ETULIITE]] [TIEDOSTO1 [TIEDOSTO2 ...]]" - -#. TRANSLATORS: "hash checksum" is just to -#. be a bit more precise, you can treat it as -#. just "hash". -#: grub-core/commands/hashsum.c:287 grub-core/commands/hashsum.c:292 -#: grub-core/commands/hashsum.c:297 grub-core/commands/hashsum.c:302 -#: grub-core/commands/hashsum.c:307 grub-core/commands/hashsum.c:313 -msgid "Compute or check hash checksum." -msgstr "Laske tai tarkista hajakoodaustarkistussumma." - -#: grub-core/commands/hashsum.c:290 grub-core/commands/hashsum.c:295 -#: grub-core/commands/hashsum.c:300 grub-core/commands/hashsum.c:305 -#: grub-core/commands/hashsum.c:311 -msgid "[-c FILE [-p PREFIX]] [FILE1 [FILE2 ...]]" -msgstr "[-c TIEDOSTO [-p ETULIITE]] [TIEDOSTO1 [TIEDOSTO2 ...]]" - -#: grub-core/commands/hdparm.c:33 -msgid "" -"Set Advanced Power Management\n" -"(1=low, ..., 254=high, 255=off)." -msgstr "" -"Aseta kehittynyt virranhallinta (APM)\n" -"(1=matala, ..., 254=korkea, 255=pois käytöstä)." - -#: grub-core/commands/hdparm.c:36 -msgid "Display power mode." -msgstr "Näytä virtatila." - -#: grub-core/commands/hdparm.c:37 -msgid "Freeze ATA security settings until reset." -msgstr "Jäädytä ATA-turvallisuusasetukset uudelleenkäynnistykseen asti." - -#: grub-core/commands/hdparm.c:39 -msgid "Display SMART health status." -msgstr "Näytä SMART-terveystila." - -#: grub-core/commands/hdparm.c:40 -msgid "" -"Set Automatic Acoustic Management\n" -"(0=off, 128=quiet, ..., 254=fast)." -msgstr "" -"Aseta automaattinen akustinen hallinta (AAM)\n" -"(0=pois, 128=hiljaa, ..., 254=nopea)." - -#: grub-core/commands/hdparm.c:43 -msgid "" -"Set standby timeout\n" -"(0=off, 1=5s, 2=10s, ..., 240=20m, 241=30m, ...)." -msgstr "" -"Aseta valmiustila-aikakatkaisu\n" -"(0=pois, 1=5 s, 2=10 s, ..., 240=20 min., 241=30 min., ...)." - -#: grub-core/commands/hdparm.c:46 -msgid "Set drive to standby mode." -msgstr "Aseta asema valmiustilaan." - -#: grub-core/commands/hdparm.c:47 -msgid "Set drive to sleep mode." -msgstr "Aseta asema lepotilaan." - -#: grub-core/commands/hdparm.c:48 -msgid "Print drive identity and settings." -msgstr "Tulosta aseman identiteetti ja asetukset." - -#: grub-core/commands/hdparm.c:50 -msgid "Show raw contents of ATA IDENTIFY sector." -msgstr "Näytä ATA IDENTIFY-sektorin raakasisältö." - -#: grub-core/commands/hdparm.c:52 -msgid "Disable/enable SMART (0/1)." -msgstr "Ota pois käytöstä/ota käyttöön SMART (0/1)" - -#: grub-core/commands/hdparm.c:53 -msgid "Do not print messages." -msgstr "Älä tulosta viestejä." - -#: grub-core/commands/hdparm.c:286 grub-core/commands/i386/rdmsr.c:68 -#: grub-core/commands/iorw.c:47 grub-core/commands/legacycfg.c:760 -#: grub-core/commands/legacycfg.c:812 grub-core/commands/macbless.c:190 -#: grub-core/commands/memrw.c:47 grub-core/commands/pgp.c:738 -#: grub-core/commands/pgp.c:792 grub-core/commands/search.c:304 -#: grub-core/commands/search_wrap.c:179 grub-core/commands/setpci.c:243 -#: grub-core/commands/sleep.c:71 grub-core/fs/zfs/zfsinfo.c:279 -#: grub-core/fs/zfs/zfsinfo.c:358 grub-core/gettext/gettext.c:492 -#: grub-core/kern/corecmd.c:65 grub-core/kern/corecmd.c:79 -#: grub-core/mmap/mmap.c:430 grub-core/net/dns.c:713 grub-core/net/dns.c:745 -#: grub-core/net/net.c:694 grub-core/net/net.c:1052 -#: grub-core/normal/context.c:194 grub-core/script/execute.c:131 -#: grub-core/term/gfxterm_background.c:136 -msgid "one argument expected" -msgstr "odotettiin yhtä argumenttia" - -#: grub-core/commands/hdparm.c:440 -msgid "[OPTIONS] DISK" -msgstr "[VALITSIMET] LEVY" - -#: grub-core/commands/hdparm.c:441 -msgid "Get/set ATA disk parameters." -msgstr "Hae/aseta ATA-levyparametrit." - -#: grub-core/commands/help.c:132 grub-core/lib/arg.c:109 -#: grub-core/lib/gnulib/argp-help.c:1616 -msgid "Usage:" -msgstr "Käyttö:" - -#: grub-core/commands/help.c:146 -msgid "[PATTERN ...]" -msgstr "[MALLI ...]" - -#: grub-core/commands/help.c:147 -msgid "Show a help message." -msgstr "Näytä opasteviesti." - -#: grub-core/commands/hexdump.c:31 -msgid "Skip offset bytes from the beginning of file." -msgstr "Hyppää siirrososoitetavujen yli tiedoston alusta." - -#: grub-core/commands/hexdump.c:33 -msgid "Read only LENGTH bytes." -msgstr "Lue vain LENGTH-tavua." - -#: grub-core/commands/hexdump.c:125 -msgid "[OPTIONS] FILE_OR_DEVICE" -msgstr "[VALITSIN] TIEDOSTO_TAI_LAITE" - -#: grub-core/commands/hexdump.c:126 -msgid "Show raw contents of a file or memory." -msgstr "Näytä tiedoston tai muistin raakasisältö." - -#: grub-core/commands/i386/cmosdump.c:58 -msgid "Show raw dump of the CMOS contents." -msgstr "Näytä CMOS-sisällön raakavedos." - -#: grub-core/commands/i386/cmostest.c:108 -#: grub-core/commands/i386/cmostest.c:111 -#: grub-core/commands/i386/cmostest.c:114 -msgid "BYTE:BIT" -msgstr "BYTE:BIT" - -#: grub-core/commands/i386/cmostest.c:109 -msgid "Test bit at BYTE:BIT in CMOS." -msgstr "Testaa bitti BYTE:BIT CMOS-muistissa." - -#: grub-core/commands/i386/cmostest.c:112 -msgid "Clear bit at BYTE:BIT in CMOS." -msgstr "Nollaa bitti BYTE:BIT CMOS-muistissa." - -#. TRANSLATORS: A bit may be either set (1) or clear (0). -#: grub-core/commands/i386/cmostest.c:116 -msgid "Set bit at BYTE:BIT in CMOS." -msgstr "Aseta bitti BYTE:BIT CMOS-muistissa." - -#: grub-core/commands/i386/coreboot/cb_timestamps.c:120 -msgid "Show coreboot boot time statistics." -msgstr "Näytä corebootin käynnistyksen aikaiset tilastot." - -#: grub-core/commands/i386/coreboot/cbls.c:137 -msgid "List coreboot tables." -msgstr "Luettele coreboot-taulukot." - -#. TRANSLATORS: "(default)" at the end means that this option is used if -#. no argument is specified. -#: grub-core/commands/i386/cpuid.c:36 -msgid "Check if CPU supports 64-bit (long) mode (default)." -msgstr "Tarkista, että tukeeko prosessori 64-bittistä (long)tilaa (oletus)." - -#: grub-core/commands/i386/cpuid.c:37 -msgid "Check if CPU supports Physical Address Extension." -msgstr "Tarkista, että tukeeko prosessori fyysistä osoitelaajennusta." - -#: grub-core/commands/i386/cpuid.c:119 -msgid "Check for CPU features." -msgstr "Tarkista suoritinominaisuudet." - -#. TRANSLATORS: In this file "mapping" refers to a change GRUB makes so if -#. your language doesn't have an equivalent of "mapping" you can -#. use the word like "rerouting". -#. -#: grub-core/commands/i386/pc/drivemap.c:43 -msgid "Show the current mappings." -msgstr "Näytä nykyiset kuvaukset." - -#: grub-core/commands/i386/pc/drivemap.c:44 -msgid "Reset all mappings to the default values." -msgstr "Palauta kaikki kuvaukset oletusarvoihin." - -#: grub-core/commands/i386/pc/drivemap.c:45 -msgid "Perform both direct and reverse mappings." -msgstr "Suorita sekä suorat että käänteiset kuvaukset." - -#: grub-core/commands/i386/pc/drivemap.c:184 -msgid "No drives have been remapped" -msgstr "Yhtään kiintolevyä ei ole kuvattu uudelleen" - -#. TRANSLATORS: This is the header of mapping list. -#. On the left is how OS will see the disks and -#. on the right current GRUB vision. -#: grub-core/commands/i386/pc/drivemap.c:191 -msgid "OS disk #num ------> GRUB/BIOS device" -msgstr "Käyttöjärjestelmälevy #num ------> GRUB/BIOS-laite" - -#: grub-core/commands/i386/pc/drivemap.c:413 -msgid "-l | -r | [-s] grubdev osdisk." -msgstr "-l | -r | [-s] grub-laite käyttöjärjestelmälevy." - -#: grub-core/commands/i386/pc/drivemap.c:414 -msgid "Manage the BIOS drive mappings." -msgstr "Hallinnoi BIOS-asemakuvauksia." - -#: grub-core/commands/i386/pc/halt.c:31 -msgid "Do not use APM to halt the computer." -msgstr "Älä käytä APM:ia tietokoneen pysäyttämiseen." - -#: grub-core/commands/i386/pc/halt.c:119 -msgid "Halt the system, if possible using APM." -msgstr "Pysäytä järjestelmä, jos mahdollista käyttäen APM:ia." - -#: grub-core/commands/i386/pc/lsapm.c:75 -msgid "no APM found" -msgstr "APM ei löytynyt" - -#: grub-core/commands/i386/pc/lsapm.c:77 -#, c-format -msgid "" -"Version %u.%u\n" -"32-bit CS = 0x%x, len = 0x%x, offset = 0x%x\n" -"16-bit CS = 0x%x, len = 0x%x\n" -"DS = 0x%x, len = 0x%x\n" -msgstr "" -"Versio %u.%u\n" -"32-bittinen CS = 0x%x, pituus = 0x%x, siirrososoite = 0x%x\n" -"16-bittinen CS = 0x%x, pituus = 0x%x\n" -"DS = 0x%x, pituus = 0x%x\n" - -#: grub-core/commands/i386/pc/lsapm.c:86 -msgid "16-bit protected interface supported\n" -msgstr "16-bittinen suojattu rajapinta tuettu\n" - -#: grub-core/commands/i386/pc/lsapm.c:87 -msgid "16-bit protected interface unsupported\n" -msgstr "16-bittinen suojattu rajapinta tukematon\n" - -#: grub-core/commands/i386/pc/lsapm.c:89 -msgid "32-bit protected interface supported\n" -msgstr "32-bittinen suojattu rajapinta tuettu\n" - -#: grub-core/commands/i386/pc/lsapm.c:90 -msgid "32-bit protected interface unsupported\n" -msgstr "32-bittinen suojattu rajapinta tukematon\n" - -#: grub-core/commands/i386/pc/lsapm.c:92 -msgid "CPU Idle slows down processor\n" -msgstr "CPU Idle-tila hidastaa prosessorin\n" - -#: grub-core/commands/i386/pc/lsapm.c:93 -msgid "CPU Idle doesn't slow down processor\n" -msgstr "CPU Idle-tila ei hidasta prosessoria\n" - -#: grub-core/commands/i386/pc/lsapm.c:95 -msgid "APM disabled\n" -msgstr "APM otettu pois käytöstä\n" - -#: grub-core/commands/i386/pc/lsapm.c:95 -msgid "APM enabled\n" -msgstr "APM otettu käyttöön\n" - -#: grub-core/commands/i386/pc/lsapm.c:97 -msgid "APM disengaged\n" -msgstr "APM irrotettu\n" - -#: grub-core/commands/i386/pc/lsapm.c:97 -msgid "APM engaged\n" -msgstr "APM liitetty\n" - -#: grub-core/commands/i386/pc/lsapm.c:107 -msgid "Show APM information." -msgstr "Näytä APM-tiedot." - -#. TRANSLATORS: It's musical notes, not the notes -#. you take. Play command expects arguments which can -#. be either a filename or tempo+notes. -#. This error happens if none is specified. -#: grub-core/commands/i386/pc/play.c:88 -msgid "filename or tempo and notes expected" -msgstr "otaksuttiin tiedostonimeä tai tahtia ja nuotteja" - -#: grub-core/commands/i386/pc/play.c:113 grub-core/commands/i386/pc/play.c:144 -#, c-format -msgid "Invalid tempo in %s" -msgstr "Virheellinen tahti kohteessa %s" - -#: grub-core/commands/i386/pc/play.c:151 grub-core/commands/macbless.c:172 -#: grub-core/fs/archelp.c:260 grub-core/fs/bfs.c:621 grub-core/fs/bfs.c:704 -#: grub-core/fs/btrfs.c:1726 grub-core/fs/btrfs.c:1755 -#: grub-core/fs/btrfs.c:1799 grub-core/fs/btrfs.c:1882 -#: grub-core/fs/btrfs.c:1906 grub-core/fs/fshelp.c:257 grub-core/fs/jfs.c:696 -#: grub-core/fs/minix.c:426 grub-core/fs/ufs.c:544 grub-core/fs/zfs/zfs.c:2083 -#: grub-core/fs/zfs/zfs.c:2095 grub-core/fs/zfs/zfs.c:2301 -#: grub-core/net/http.c:120 -#, c-format -msgid "file `%s' not found" -msgstr "tiedostoa â€%s†ei löytynyt" - -#: grub-core/commands/i386/pc/play.c:162 grub-core/commands/i386/pc/play.c:171 -#: grub-core/kern/misc.c:419 grub-core/script/execute.c:138 -#: grub-core/script/execute.c:244 -msgid "unrecognized number" -msgstr "tunnistamaton numero" - -#: grub-core/commands/i386/pc/play.c:190 -msgid "FILE | TEMPO [PITCH1 DURATION1] [PITCH2 DURATION2] ... " -msgstr "TIEDOSTO | TAHTI [PISTEJAKO1 KESTO1] [PISTEJAKO2 KESTO2] ... " - -#: grub-core/commands/i386/pc/play.c:191 -msgid "Play a tune." -msgstr "Soita sävelmä." - -#: grub-core/commands/i386/pc/sendkey.c:39 -msgid "set numlock mode" -msgstr "aseta numlock-tila" - -#: grub-core/commands/i386/pc/sendkey.c:40 -msgid "set capslock mode" -msgstr "aseta capslock-tila" - -#: grub-core/commands/i386/pc/sendkey.c:41 -msgid "set scrolllock mode" -msgstr "aseta scrolllock-tila" - -#: grub-core/commands/i386/pc/sendkey.c:42 -msgid "set insert mode" -msgstr "aseta insert-tila" - -#: grub-core/commands/i386/pc/sendkey.c:43 -msgid "set pause mode" -msgstr "aseta pause-tila" - -#: grub-core/commands/i386/pc/sendkey.c:44 -msgid "press left shift" -msgstr "paina vasemmanpuoleista vaihtonäppäintä" - -#: grub-core/commands/i386/pc/sendkey.c:45 -msgid "press right shift" -msgstr "paina oikeanpuoleista vaihtonäppäintä" - -#: grub-core/commands/i386/pc/sendkey.c:46 -msgid "press SysRq" -msgstr "paina sysRq-näppäintä" - -#: grub-core/commands/i386/pc/sendkey.c:47 -msgid "press NumLock key" -msgstr "paina NumLock-näppäintä" - -#: grub-core/commands/i386/pc/sendkey.c:48 -msgid "press CapsLock key" -msgstr "paina CapsLock-näppäintä" - -#: grub-core/commands/i386/pc/sendkey.c:49 -msgid "press ScrollLock key" -msgstr "paina ScrollLock-näppäintä" - -#: grub-core/commands/i386/pc/sendkey.c:50 -msgid "press Insert key" -msgstr "paina Insert-näppäintä" - -#: grub-core/commands/i386/pc/sendkey.c:51 -msgid "press left alt" -msgstr "paina vasemmanpuoleita alt-näppäintä" - -#: grub-core/commands/i386/pc/sendkey.c:52 -msgid "press right alt" -msgstr "paina oikeanpuoleista alt-näppäintä" - -#: grub-core/commands/i386/pc/sendkey.c:53 -msgid "press left ctrl" -msgstr "paina vasemmanpuoleista ctrl-näppäintä" - -#: grub-core/commands/i386/pc/sendkey.c:54 -msgid "press right ctrl" -msgstr "paina oikeanpuoleista ctrl-näppäintä" - -#: grub-core/commands/i386/pc/sendkey.c:55 -msgid "don't update LED state" -msgstr "älä päivitä LED-tilaa" - -#: grub-core/commands/i386/pc/sendkey.c:372 -msgid "[KEYSTROKE1] [KEYSTROKE2] ..." -msgstr "[NÄPPÄINLYÖNTI1] [NÄPPÄINLYÖNTI2] ..." - -#. TRANSLATORS: It can emulate multiple -#. keypresses. -#: grub-core/commands/i386/pc/sendkey.c:375 -msgid "Emulate a keystroke sequence" -msgstr "Matki näppäinlyöntisekvenssiä" - -#: grub-core/commands/i386/rdmsr.c:37 grub-core/commands/iorw.c:34 -#: grub-core/commands/memrw.c:33 grub-core/commands/setpci.c:73 -msgid "Save read value into variable VARNAME." -msgstr "Tallenna luettu arvo muuttujaan MUUTTUJANIMI." - -#: grub-core/commands/i386/rdmsr.c:38 grub-core/commands/iorw.c:35 -#: grub-core/commands/memrw.c:34 grub-core/commands/probe.c:40 -#: grub-core/commands/search_wrap.c:40 grub-core/commands/setpci.c:74 -#: grub-core/commands/tr.c:32 -msgid "VARNAME" -msgstr "MUUTTUJANIMI" - -#: grub-core/commands/i386/rdmsr.c:55 grub-core/commands/i386/rdmsr.c:60 -#: grub-core/commands/i386/rdmsr.c:65 grub-core/commands/i386/wrmsr.c:47 -#: grub-core/commands/i386/wrmsr.c:52 grub-core/commands/i386/wrmsr.c:57 -#, fuzzy -msgid "unsupported instruction" -msgstr "tukematon gzip-muoto" - -#: grub-core/commands/i386/rdmsr.c:77 grub-core/commands/i386/wrmsr.c:69 -#: grub-core/commands/i386/wrmsr.c:77 grub-core/net/dns.c:727 -msgid "invalid argument" -msgstr "virheellinen argumentti" - -#: grub-core/commands/i386/rdmsr.c:94 grub-core/commands/memrw.c:125 -#: grub-core/commands/memrw.c:129 grub-core/commands/memrw.c:133 -msgid "ADDR" -msgstr "OSOITE" - -#: grub-core/commands/i386/rdmsr.c:95 -msgid "Read a CPU model specific register." -msgstr "" - -#: grub-core/commands/i386/wrmsr.c:86 -#, fuzzy -msgid "ADDR VALUE" -msgstr "OSOITE ARVO [PEITE]" - -#: grub-core/commands/i386/wrmsr.c:87 -msgid "Write a value to a CPU model specific register." -msgstr "" - -#: grub-core/commands/ieee1275/suspend.c:34 -msgid "Run `go' to resume GRUB." -msgstr "Suorita â€go†GRUB:in aloittamiseksi uudelleen." - -#: grub-core/commands/ieee1275/suspend.c:45 -msgid "Return to IEEE1275 prompt." -msgstr "Palaa IEEE1275 -kehotteelle." - -#: grub-core/commands/iorw.c:123 grub-core/commands/iorw.c:127 -#: grub-core/commands/iorw.c:131 grub-core/gdb/gdb.c:79 -msgid "PORT" -msgstr "PORTTI" - -#: grub-core/commands/iorw.c:123 -msgid "Read 8-bit value from PORT." -msgstr "Lue 8-bittinen arvo portista PORTTI." - -#: grub-core/commands/iorw.c:127 -msgid "Read 16-bit value from PORT." -msgstr "Lue 16-bittinen arvo portista PORTTI." - -#: grub-core/commands/iorw.c:131 -msgid "Read 32-bit value from PORT." -msgstr "Lue 32-bittinen arvo portista PORTTI." - -#: grub-core/commands/iorw.c:135 grub-core/commands/iorw.c:139 -msgid "PORT VALUE [MASK]" -msgstr "PORTTI ARVO [PEITE]" - -#: grub-core/commands/iorw.c:136 -msgid "Write 8-bit VALUE to PORT." -msgstr "Kirjoita 8-bittinen ARVO porttiin PORTTI." - -#: grub-core/commands/iorw.c:140 -msgid "Write 16-bit VALUE to PORT." -msgstr "Kirjoita 16-bittinen ARVO porttiin PORTTI." - -#: grub-core/commands/iorw.c:143 grub-core/commands/memrw.c:137 -#: grub-core/commands/memrw.c:141 grub-core/commands/memrw.c:145 -msgid "ADDR VALUE [MASK]" -msgstr "OSOITE ARVO [PEITE]" - -#: grub-core/commands/iorw.c:144 -msgid "Write 32-bit VALUE to PORT." -msgstr "Kirjoita 32-bittinen ARVO porttiin PORTTI." - -#: grub-core/commands/keylayouts.c:215 grub-core/commands/loadenv.c:61 -#: grub-core/commands/nativedisk.c:189 grub-core/efiemu/main.c:235 -#: grub-core/font/font.c:428 grub-core/gfxmenu/gfxmenu.c:63 -#: grub-core/kern/device.c:42 grub-core/kern/dl.c:740 -#, c-format -msgid "variable `%s' isn't set" -msgstr "muuttujaa â€%s†ei ole asetettu" - -#: grub-core/commands/keylayouts.c:301 -msgid "Load a keyboard layout." -msgstr "Lataa näppäimistösijoittelu." - -#. TRANSLATORS: "Check" in a sense that if this key is pressed then -#. "true" is returned, otherwise "false". -#: grub-core/commands/keystatus.c:32 -msgid "Check Shift key." -msgstr "Tarkista vaihtonäppäin." - -#: grub-core/commands/keystatus.c:33 -msgid "Check Control key." -msgstr "Tarkista Control-näppäin." - -#: grub-core/commands/keystatus.c:34 -msgid "Check Alt key." -msgstr "Tarkista Alt-näppäin." - -#. TRANSLATORS: there are 3 modifiers. -#: grub-core/commands/keystatus.c:106 -msgid "Check key modifier status." -msgstr "Tarkista muokkausnäppäinten tila." - -#: grub-core/commands/legacycfg.c:512 grub-core/commands/legacycfg.c:526 -#: grub-core/commands/legacycfg.c:546 grub-core/commands/legacycfg.c:559 -#: grub-core/commands/time.c:43 grub-core/script/function.c:109 -#: util/grub-file.c:100 util/grub-fstest.c:57 util/grub-mount.c:69 -#, c-format -msgid "can't find command `%s'" -msgstr "komennon â€%s†etsiminen epäonnistui" - -#: grub-core/commands/legacycfg.c:813 grub-core/normal/auth.c:225 -#: util/grub-mkpasswd-pbkdf2.c:139 -msgid "Enter password: " -msgstr "Kirjoita salasana: " - -#. TRANSLATORS: "legacy config" means -#. "config as used by grub-legacy". -#: grub-core/commands/legacycfg.c:837 -msgid "Parse legacy config in same context" -msgstr "Jäsennä perinneasetus samassa asiayhteydessä" - -#: grub-core/commands/legacycfg.c:842 -msgid "Parse legacy config in new context" -msgstr "Jäsennä perinneasetus uudessa asiayhteydessä" - -#: grub-core/commands/legacycfg.c:847 -msgid "Parse legacy config in same context taking only menu entries" -msgstr "Jäsennä perinneasetus samassa asiayhteydessä ottaen vain valikkorivit" - -#: grub-core/commands/legacycfg.c:852 -msgid "Parse legacy config in new context taking only menu entries" -msgstr "Jäsennä perinneasetus uudessa asiayhteydessä ottaen vain valikkorivit" - -#: grub-core/commands/legacycfg.c:856 -msgid "[--no-mem-option] [--type=TYPE] FILE [ARG ...]" -msgstr "[--no-mem-option] [--type=TYYPPI] TIEDOSTO [ARGUMENTTI ...]" - -#: grub-core/commands/legacycfg.c:857 -msgid "Simulate grub-legacy `kernel' command" -msgstr "Simuloi grub-legacy â€kernel†-komentoa" - -#: grub-core/commands/legacycfg.c:861 grub-core/commands/legacycfg.c:865 -msgid "FILE [ARG ...]" -msgstr "TIEDOSTO [ARGUMENTTI ...]" - -#: grub-core/commands/legacycfg.c:862 -msgid "Simulate grub-legacy `initrd' command" -msgstr "Simuloi grub-legacy â€initrd†-komentoa" - -#: grub-core/commands/legacycfg.c:866 -msgid "Simulate grub-legacy `modulenounzip' command" -msgstr "Simuloi grub-legacy â€modulenounzip†-komentoa" - -#: grub-core/commands/legacycfg.c:870 grub-core/commands/legacycfg.c:875 -msgid "[--md5] PASSWD [FILE]" -msgstr "[--md5] SALASANA [TIEDOSTO]" - -#: grub-core/commands/legacycfg.c:871 -msgid "Simulate grub-legacy `password' command" -msgstr "Simuloi grub-legacy â€password†-komentoa" - -#: grub-core/commands/legacycfg.c:876 -msgid "Simulate grub-legacy `password' command in menu entry mode" -msgstr "Simuloi grub-legacy â€password†-komentoa valikkorivitilassa" - -#. TRANSLATORS: This option is used to override default filename -#. for loading and storing environment. -#: grub-core/commands/loadenv.c:37 -msgid "Specify filename." -msgstr "Määrittele tiedostonimi." - -#: grub-core/commands/loadenv.c:39 -msgid "Skip signature-checking of the environment file." -msgstr "Ohita ympäristötiedoston allekirjoitustarkistus." - -#: grub-core/commands/loadenv.c:451 -msgid "[-f FILE] [-s|--skip-sig] [variable_name_to_whitelist] [...]" -msgstr "[-f TIEDOSTO] [-s|--skip-sig] [muuttujanimi_valkolistalle] [...]" - -#: grub-core/commands/loadenv.c:452 -msgid "Load variables from environment block file." -msgstr "Lataa muuttujat ympäristölohkotiedostosta." - -#: grub-core/commands/loadenv.c:455 -msgid "[-f FILE]" -msgstr "[-f TIEDOSTO]" - -#: grub-core/commands/loadenv.c:456 -msgid "List variables from environment block file." -msgstr "Luettele muuttujat ympäristölohkotiedostosta." - -#: grub-core/commands/loadenv.c:460 -msgid "[-f FILE] variable_name [...]" -msgstr "[-f TIEDOSTO] muuttuja_nimi [...]" - -#: grub-core/commands/loadenv.c:461 -msgid "Save variables to environment block file." -msgstr "Tallenna muuttujat ympäristölohkotiedostoon." - -#: grub-core/commands/ls.c:40 -msgid "Show a long list with more detailed information." -msgstr "Näytä pitkä luettelo yksityiskohtatiedoilla." - -#: grub-core/commands/ls.c:41 -msgid "Print sizes in a human readable format." -msgstr "Tulosta koot ihmisen luettavassa muodossa." - -#: grub-core/commands/ls.c:42 -msgid "List all files." -msgstr "Luettele kaikki tiedostot." - -#: grub-core/commands/ls.c:73 -msgid "Network protocols:" -msgstr "Verkkoyhteyskäytännöt:" - -#: grub-core/commands/ls.c:295 -msgid "[-l|-h|-a] [FILE ...]" -msgstr "[-l|-h|-a] [TIEDOSTO ...]" - -#: grub-core/commands/ls.c:296 -msgid "List devices and files." -msgstr "Luettele laitteet ja tiedostot." - -#: grub-core/commands/lsacpi.c:255 -msgid "Show version 1 tables only." -msgstr "Näytä vain versio 1:n taulut." - -#: grub-core/commands/lsacpi.c:256 -msgid "Show version 2 and version 3 tables only." -msgstr "Näytä vain version 2 ja version 3 taulut." - -#: grub-core/commands/lsacpi.c:306 -msgid "Show ACPI information." -msgstr "Näytä ACPI-tiedot." - -#: grub-core/commands/lsmmap.c:31 -msgid "available RAM" -msgstr "käytettävissä oleva RAM-muisti" - -#: grub-core/commands/lsmmap.c:32 -msgid "reserved RAM" -msgstr "varattu RAM-muisti" - -#. TRANSLATORS: this refers to memory where ACPI tables are stored -#. and which can be used by OS once it loads ACPI tables. -#: grub-core/commands/lsmmap.c:35 -msgid "ACPI reclaimable RAM" -msgstr "ACPI uudelleen käyttöön otettava RAM-muisti" - -#. TRANSLATORS: this refers to memory which ACPI-compliant OS -#. is required to save accross hibernations. -#: grub-core/commands/lsmmap.c:38 -msgid "ACPI non-volatile storage RAM" -msgstr "ACPI ei-lyhytkestoinen tallennuspaikka-RAM-muisti" - -#: grub-core/commands/lsmmap.c:39 -msgid "faulty RAM (BadRAM)" -msgstr "viallinen RAM-muisti (BadRAM)" - -#: grub-core/commands/lsmmap.c:40 -msgid "persistent RAM" -msgstr "pysyvä RAM" - -#: grub-core/commands/lsmmap.c:41 -msgid "persistent RAM (legacy)" -msgstr "pysyvä RAM (perinnejärjestelmä)" - -#: grub-core/commands/lsmmap.c:42 -msgid "RAM holding coreboot tables" -msgstr "coreboot-taulukkoja pitävä RAM-muisti" - -#: grub-core/commands/lsmmap.c:43 -msgid "RAM holding firmware code" -msgstr "laiteohjelmistokoodia pitävä RAM-muisti" - -#: grub-core/commands/lsmmap.c:52 -#, c-format -msgid "base_addr = 0x%llx, length = 0x%llx, %s\n" -msgstr "base_addr = 0x%llx, pituus = 0x%llx, %s\n" - -#: grub-core/commands/lsmmap.c:55 -#, c-format -msgid "base_addr = 0x%llx, length = 0x%llx, type = 0x%x\n" -msgstr "base_addr = 0x%llx, pituus = 0x%llx, tyyppi = 0x%x\n" - -#: grub-core/commands/lsmmap.c:79 -msgid "List memory map provided by firmware." -msgstr "Luettele laiteohjelmiston tarjoama muistikuvaus." - -#: grub-core/commands/lspci.c:232 -msgid "List PCI devices." -msgstr "Luettele PCI-laitteet." - -#: grub-core/commands/macbless.c:224 -msgid "Bless FILE of HFS or HFS+ partition for intel macs." -msgstr "HFS- tai HFS+-osion Bless-tiedosto intel mac-tietokoneille." - -#: grub-core/commands/macbless.c:228 -msgid "Bless DIR of HFS or HFS+ partition for PPC macs." -msgstr "HFS- tai HFS+-osion Bless-HAKEMISTO PPC mac-tietokoneille." - -#: grub-core/commands/memrw.c:125 -msgid "Read 8-bit value from ADDR." -msgstr "Lue 8-bittinen arvo OSOITTEESTA." - -#: grub-core/commands/memrw.c:129 -msgid "Read 16-bit value from ADDR." -msgstr "Lue 16-bittinen arvo OSOITTEESTA." - -#: grub-core/commands/memrw.c:133 -msgid "Read 32-bit value from ADDR." -msgstr "Lue 32-bittinen arvo OSOITTEESTA." - -#: grub-core/commands/memrw.c:138 -msgid "Write 8-bit VALUE to ADDR." -msgstr "Kirjoita 8-bittinen ARVO OSOITTEESEEN." - -#: grub-core/commands/memrw.c:142 -msgid "Write 16-bit VALUE to ADDR." -msgstr "Kirjoita 16-bittinen ARVO OSOITTEESEEN." - -#: grub-core/commands/memrw.c:146 -msgid "Write 32-bit VALUE to ADDR." -msgstr "Kirjoita 32-bittinen ARVO OSOITTEESEEN." - -#: grub-core/commands/menuentry.c:31 -msgid "Menu entry type." -msgstr "Valikkorivin tyyppi." - -#: grub-core/commands/menuentry.c:31 grub-core/commands/menuentry.c:38 -#: grub-core/commands/menuentry.c:39 grub-core/gettext/gettext.c:520 -#: util/grub-fstest.c:520 util/grub-install.c:291 util/grub-install.c:304 -#: util/grub-mknetdir.c:51 util/grub-mkrescue.c:109 util/grub-mkrescue.c:110 -#: util/grub-mount.c:453 util/grub-render-label.c:65 -msgid "STRING" -msgstr "MERKKIJONO" - -#: grub-core/commands/menuentry.c:33 -msgid "List of users allowed to boot this entry." -msgstr "Luettelo käyttäjistä, joiden sallitaan käynnistää tämä kohde." - -#: grub-core/commands/menuentry.c:33 -msgid "USERNAME[,USERNAME]" -msgstr "KÄYTTÄJÄNIMI[,KÄYTTÄJÄNIMI]" - -#: grub-core/commands/menuentry.c:36 -msgid "Keyboard key to quickly boot this entry." -msgstr "Näppäimistönäppäin tämän rivin nopeaa käynnistystä varten." - -#: grub-core/commands/menuentry.c:36 -msgid "KEYBOARD_KEY" -msgstr "NÄPPÄIMISTÖ_NÄPPÄIN" - -#: grub-core/commands/menuentry.c:38 -msgid "Use STRING as menu entry body." -msgstr "Käytä MERKKIJONOa valikkorivirunkona." - -#: grub-core/commands/menuentry.c:39 -msgid "Menu entry identifier." -msgstr "Valikkorivin tunniste." - -#. TRANSLATORS: menu entry can either be bootable by anyone or only by -#. handful of users. By default when security is active only superusers can -#. boot a given menu entry. With --unrestricted (this option) -#. anyone can boot it. -#: grub-core/commands/menuentry.c:44 -msgid "This entry can be booted by any user." -msgstr "Kuka tahansa käyttäjä voi käynnistää tämän kohteen." - -#: grub-core/commands/menuentry.c:323 grub-core/commands/menuentry.c:328 -#: grub-core/tests/test_blockarg.c:46 -msgid "BLOCK" -msgstr "LOHKO" - -#: grub-core/commands/menuentry.c:323 -msgid "Define a menu entry." -msgstr "Määritä valikkorivi." - -#: grub-core/commands/menuentry.c:328 -msgid "Define a submenu." -msgstr "Määritä alivalikko." - -#. TRANSLATORS: this is module list header. Name -#. is module name, Ref Count is a reference counter -#. (how many modules or open descriptors use it). -#. Dependencies are the other modules it uses. -#. -#: grub-core/commands/minicmd.c:162 -msgid "Name\tRef Count\tDependencies\n" -msgstr "Nimi\tViitelaskuri\tRiippuvuudet\n" - -#: grub-core/commands/minicmd.c:201 -msgid "Show this message." -msgstr "Näytä tämä viesti." - -#: grub-core/commands/minicmd.c:204 -msgid "ADDR [SIZE]" -msgstr "OSOITE [KOKO]" - -#: grub-core/commands/minicmd.c:204 -msgid "Show memory contents." -msgstr "Näytä muistisisältö." - -#: grub-core/commands/minicmd.c:207 grub-core/kern/corecmd.c:188 -#: util/grub-install.c:275 -msgid "MODULE" -msgstr "MODUULI" - -#: grub-core/commands/minicmd.c:207 -msgid "Remove a module." -msgstr "Poista moduuli." - -#: grub-core/commands/minicmd.c:210 -msgid "Show loaded modules." -msgstr "Näytä ladatut moduulit." - -#: grub-core/commands/minicmd.c:213 -msgid "Exit from GRUB." -msgstr "Poistu GRUB:sta." - -#: grub-core/commands/mips/loongson/lsspd.c:42 -msgid "No CS5536 found" -msgstr "CS5536 ei löytynyt" - -#: grub-core/commands/mips/loongson/lsspd.c:45 -#, c-format -msgid "CS5536 at %d:%d.%d\n" -msgstr "CS5536 osoitteessa %d:%d.%d\n" - -#. TRANSLATORS: System management bus is often used to access components like -#. RAM (info only, not data) or batteries. I/O space is where in memory -#. its ports are. -#: grub-core/commands/mips/loongson/lsspd.c:55 -#, c-format -msgid "System management bus controller I/O space is at 0x%x\n" -msgstr "Järjestelmähallintaväyläohjain siirräntätila on osoitteessa 0x%x\n" - -#. TRANSLATORS: it's shown in a report in a way -#. like number 1: ... number 2: ... -#. -#: grub-core/commands/mips/loongson/lsspd.c:66 -#, c-format -msgid "RAM slot number %d\n" -msgstr "RAM-välinumero %d\n" - -#: grub-core/commands/mips/loongson/lsspd.c:73 -#, c-format -msgid "Written SPD bytes: %d B.\n" -msgstr "Kirjoitettu SPD-tavuja: %d tavua.\n" - -#: grub-core/commands/mips/loongson/lsspd.c:74 -#, c-format -msgid "Total flash size: %d B.\n" -msgstr "Flash-muistin kokonaiskoko: %d tavua.\n" - -#: grub-core/commands/mips/loongson/lsspd.c:79 -msgid "Memory type: DDR2." -msgstr "Muistityyppi: DDR2." - -#: grub-core/commands/mips/loongson/lsspd.c:83 -#, c-format -msgid "Part no: %s.\n" -msgstr "Osanumero: %s.\n" - -#: grub-core/commands/mips/loongson/lsspd.c:86 -msgid "Memory type: Unknown." -msgstr "Muistityyppi: Tuntematon." - -#: grub-core/commands/mips/loongson/lsspd.c:97 -msgid "Print Memory information." -msgstr "Tulosta muistitiedot." - -#: grub-core/commands/nativedisk.c:118 grub-core/commands/probe.c:118 -#: grub-core/commands/probe.c:124 util/grub-probe.c:450 -#, c-format -msgid "%s does not support UUIDs" -msgstr "%s ei tue UUID-tunnisteita" - -#: grub-core/commands/nativedisk.c:325 -msgid "[MODULE1 MODULE2 ...]" -msgstr "[MODUULI1 MODUULI2 ...]" - -#: grub-core/commands/nativedisk.c:326 -msgid "" -"Switch to native disk drivers. If no modules are specified default set (pata," -"ahci,usbms,ohci,uhci,ehci) is used" -msgstr "" -"Vaihda alkuperäisiin levyajureihin. Jos yhtään moduulia ei ole määritelty, " -"käytetään oletusjoukkoa (pata,ahci,usbms,ohci,uhci,ehci)" - -#: grub-core/commands/parttool.c:40 -msgid "" -"Perform COMMANDS on partition.\n" -"Use `parttool PARTITION help' for the list of available commands." -msgstr "" -"Suorita KOMENNOT osiolla.\n" -"Käytä â€parttool OSIO help†käytettävissä olevien komentojen luetteloimiseksi." - -#: grub-core/commands/parttool.c:123 -msgid "=VAL" -msgstr "=ARVO" - -#: grub-core/commands/parttool.c:136 -#, c-format -msgid "Sorry, no parttool is available for %s\n" -msgstr "Ositustyökalua ei ole käytettävissä levyosiolle %s\n" - -#: grub-core/commands/parttool.c:288 grub-core/lib/arg.c:285 -#: grub-core/lib/arg.c:351 -#, c-format -msgid "unknown argument `%s'" -msgstr "tuntematon argumentti â€%sâ€" - -#: grub-core/commands/parttool.c:344 -msgid "PARTITION COMMANDS" -msgstr "OSIOKOMENNOT" - -#: grub-core/commands/password.c:85 -msgid "USER PASSWORD" -msgstr "KÄYTTÄJÄ SALASANA" - -#: grub-core/commands/password.c:86 -msgid "Set user password (plaintext). Unrecommended and insecure." -msgstr "" -"Aseta käyttäjän salasana (pelkkänä tekstinä). Ei suositella turvattomana." - -#. TRANSLATORS: it means that the string which -#. was supposed to be a password hash doesn't -#. have a correct format, not to password -#. mismatch. -#: grub-core/commands/password_pbkdf2.c:98 -#: grub-core/commands/password_pbkdf2.c:115 -#: grub-core/commands/password_pbkdf2.c:123 -#: grub-core/commands/password_pbkdf2.c:150 -#: grub-core/commands/password_pbkdf2.c:179 -msgid "invalid PBKDF2 password" -msgstr "vääränmuotoinen PBKDF2-salasana" - -#: grub-core/commands/password_pbkdf2.c:202 -msgid "USER PBKDF2_PASSWORD" -msgstr "KÄYTTÄJÄ PBKDF2_SALASANA" - -#: grub-core/commands/password_pbkdf2.c:203 -msgid "Set user password (PBKDF2). " -msgstr "Aseta käyttäjäsalasana (PBKDF2). " - -#: grub-core/commands/pcidump.c:39 grub-core/commands/setpci.c:69 -msgid "Select device by vendor and device IDs." -msgstr "Valitse laite myyjä- ja laitetunnisteiden avulla." - -#: grub-core/commands/pcidump.c:40 grub-core/commands/setpci.c:70 -msgid "[vendor]:[device]" -msgstr "[myyjä]:[laite]" - -#: grub-core/commands/pcidump.c:41 grub-core/commands/setpci.c:71 -msgid "Select device by its position on the bus." -msgstr "Valitse laite sen väyläsijainnin avulla." - -#: grub-core/commands/pcidump.c:42 grub-core/commands/setpci.c:72 -msgid "[bus]:[slot][.func]" -msgstr "[väylä]:[väli][.funktio]" - -#: grub-core/commands/pcidump.c:109 grub-core/commands/pcidump.c:138 -#: grub-core/commands/setpci.c:183 grub-core/commands/setpci.c:214 -#: grub-core/fs/zfs/zfs.c:3794 grub-core/kern/emu/hostdisk.c:458 -#: grub-core/kern/emu/hostdisk.c:473 grub-core/kern/file.c:44 -#, c-format -msgid "missing `%c' symbol" -msgstr "puuttuva â€%câ€-symboli" - -#: grub-core/commands/pcidump.c:168 -msgid "[-s POSITION] [-d DEVICE]" -msgstr "[-s SIJAINTI] [-d LAITE]" - -#: grub-core/commands/pcidump.c:169 -msgid "Show raw dump of the PCI configuration space." -msgstr "Näytä PCI-asetusavaruuden raakavedos." - -#: grub-core/commands/pgp.c:45 -msgid "Skip signature-checking of the public key file." -msgstr "Ohita julkisen avaintiedoston allekirjoitustarkistus." - -#. TRANSLATORS: it's about GNUPG signatures. -#: grub-core/commands/pgp.c:71 grub-core/commands/pgp.c:81 -#: grub-core/commands/pgp.c:86 grub-core/commands/pgp.c:96 -#: grub-core/commands/pgp.c:103 grub-core/commands/pgp.c:107 -#: grub-core/commands/pgp.c:114 grub-core/commands/pgp.c:119 -#: grub-core/commands/pgp.c:124 grub-core/commands/pgp.c:128 -#: grub-core/commands/pgp.c:268 grub-core/commands/pgp.c:276 -#: grub-core/commands/pgp.c:281 grub-core/commands/pgp.c:289 -#: grub-core/commands/pgp.c:320 grub-core/commands/pgp.c:327 -#: grub-core/commands/pgp.c:332 grub-core/commands/pgp.c:342 -#: grub-core/commands/pgp.c:468 grub-core/commands/pgp.c:471 -#: grub-core/commands/pgp.c:474 grub-core/commands/pgp.c:477 -#: grub-core/commands/pgp.c:484 grub-core/commands/pgp.c:490 -#: grub-core/commands/pgp.c:665 -msgid "bad signature" -msgstr "virheellinen allekirjoitus" - -#. TRANSLATORS: %08x is 32-bit key id. -#: grub-core/commands/pgp.c:636 grub-core/commands/pgp.c:812 -#, c-format -msgid "public key %08x not found" -msgstr "julkista avainta %08x ei löydy" - -#: grub-core/commands/pgp.c:651 grub-core/disk/diskfilter.c:772 -#: grub-core/disk/diskfilter.c:782 grub-core/fs/ntfs.c:404 -#: grub-core/fs/zfs/zfs.c:1933 grub-core/normal/menu.c:428 -#, c-format -msgid "module `%s' isn't loaded" -msgstr "moduulia â€%s†ei ole ladattu" - -#: grub-core/commands/pgp.c:994 -msgid "[-s|--skip-sig] FILE SIGNATURE_FILE [PUBKEY_FILE]" -msgstr "" -"[-s|--skip-sig] TIEDOSTO ALLEKIRJOITUS_TIEDOSTO [JULKISEN_AVAIMEN_TIEDOSTO]" - -#: grub-core/commands/pgp.c:995 -msgid "Verify detached signature." -msgstr "Varmista ulkopuolinen allekirjoitus." - -#: grub-core/commands/pgp.c:998 -msgid "[-s|--skip-sig] PUBKEY_FILE" -msgstr "[-s|--skip-sig] JULKISEN_AVAIMEN_TIEDOSTO" - -#: grub-core/commands/pgp.c:999 -msgid "Add PUBKEY_FILE to trusted keys." -msgstr "Lisää PUBKEY_FILE luotettaviin avaimiin." - -#: grub-core/commands/pgp.c:1003 -msgid "Show the list of trusted keys." -msgstr "Näytä luotettujen avaimien luettelo." - -#: grub-core/commands/pgp.c:1005 -msgid "PUBKEY_ID" -msgstr "JULKISEN_AVAIMEN_TUNNISTE" - -#: grub-core/commands/pgp.c:1006 -msgid "Remove PUBKEY_ID from trusted keys." -msgstr "Poista PUBKEY_ID luotettuista avaimista." - -#: grub-core/commands/probe.c:40 grub-core/commands/tr.c:32 -msgid "Set a variable to return value." -msgstr "Aseta muuttuja paluuarvoon." - -#. TRANSLATORS: It's a driver that is currently in use to access -#. the diven disk. -#: grub-core/commands/probe.c:43 -msgid "Determine driver." -msgstr "Määrittele ajuri." - -#: grub-core/commands/probe.c:44 -msgid "Determine partition map type." -msgstr "Määrittele osiokuvaustyyppi." - -#: grub-core/commands/probe.c:45 -msgid "Determine filesystem type." -msgstr "Määrittele tiedostojärjestelmätyyppi." - -#: grub-core/commands/probe.c:46 -msgid "Determine filesystem UUID." -msgstr "Määrittele tiedostojärjestelmän UUID." - -#: grub-core/commands/probe.c:47 -msgid "Determine filesystem label." -msgstr "Määrittele tiedostojärjestelmänimiö." - -#: grub-core/commands/probe.c:139 grub-core/commands/probe.c:146 -#: util/grub-probe.c:462 -#, c-format -msgid "filesystem `%s' does not support labels" -msgstr "tiedostojärjestelmä â€%s†ei tue nimiöitä" - -#: grub-core/commands/probe.c:165 grub-core/fs/zfs/zfsinfo.c:430 -#: grub-core/loader/i386/bsd.c:169 util/grub-setup.c:223 -msgid "DEVICE" -msgstr "LAITE" - -#: grub-core/commands/probe.c:166 -msgid "Retrieve device info." -msgstr "Nouda laitetiedot." - -#: grub-core/commands/read.c:85 -msgid "[ENVVAR]" -msgstr "[ENVVAR]" - -#: grub-core/commands/read.c:86 -msgid "Set variable with user input." -msgstr "Aseta muuttuja käyttäjäsyötteellä." - -#: grub-core/commands/reboot.c:40 -msgid "Reboot the computer." -msgstr "Käynnistä tietokone uudelleen." - -#. TRANSLATORS: in regexp you can mark some -#. groups with parentheses. These groups are -#. then numbered and you can save some of -#. them in variables. In other programs -#. those components aree often referenced with -#. back slash, e.g. \1. Compare -#. sed -e 's,\([a-z][a-z]*\),lowercase=\1,g' -#. The whole matching component is saved in VARNAME, not its number. -#. -#: grub-core/commands/regexp.c:44 -msgid "Store matched component NUMBER in VARNAME." -msgstr "Tallenna täsmäävä komponentti-NUMERO muuttujaan VARNAME." - -#: grub-core/commands/regexp.c:45 -msgid "[NUMBER:]VARNAME" -msgstr "[NUMERO:]MUUTTUJANIMI" - -#. TRANSLATORS: This are two arguments. So it's -#. two separate units to translate and pay -#. attention not to reverse them. -#: grub-core/commands/regexp.c:157 -msgid "REGEXP STRING" -msgstr "REGEXP-lauseke MERKKIJONO" - -#: grub-core/commands/regexp.c:158 -msgid "Test if REGEXP matches STRING." -msgstr "Koesta, jos REGEXP-lauseke täsmää MERKKIJONOon." - -#: grub-core/commands/search.c:324 -msgid "NAME [VARIABLE] [HINTS]" -msgstr "NIMI [MUUTTUJA] [VIHJEET]" - -#: grub-core/commands/search_file.c:4 -msgid "" -"Search devices by file. If VARIABLE is specified, the first device found is " -"set to a variable." -msgstr "" -"Etsi laitteita tiedoston avulla. Jos MUUTTUJA on määritelty, ensimmäinen " -"löydetty laite asetetaan muuttujaan." - -#: grub-core/commands/search_label.c:4 -msgid "" -"Search devices by label. If VARIABLE is specified, the first device found is " -"set to a variable." -msgstr "" -"Etsi laitteita nimiön avulla. Jos MUUTTUJA on määritelty, ensimmäinen " -"löydetty laite asetetaan muuttujaan." - -#: grub-core/commands/search_uuid.c:4 -msgid "" -"Search devices by UUID. If VARIABLE is specified, the first device found is " -"set to a variable." -msgstr "" -"Etsi laitteita UUID:n avulla. Jos MUUTTUJA on määritelty, ensimmäinen " -"löydetty laite asetetaan muuttujaan." - -#: grub-core/commands/search_wrap.c:34 -msgid "Search devices by a file." -msgstr "Etsi laitteita tiedoston avulla." - -#: grub-core/commands/search_wrap.c:35 -msgid "Search devices by a filesystem label." -msgstr "Etsi laitteita tiedostojärjestelmänimiön avulla." - -#: grub-core/commands/search_wrap.c:37 -msgid "Search devices by a filesystem UUID." -msgstr "Etsi laitteita tiedostojärjestelmän UUID-tunnisteen avulla." - -#: grub-core/commands/search_wrap.c:40 -msgid "Set a variable to the first device found." -msgstr "Aseta muuttuja ensimmäiseen löydettyyn laitteeseen." - -#: grub-core/commands/search_wrap.c:42 -msgid "Do not probe any floppy drive." -msgstr "Älä koesta mitään levykeasemaa." - -#: grub-core/commands/search_wrap.c:44 -msgid "" -"First try the device HINT. If HINT ends in comma, also try subpartitions" -msgstr "" -"Ensimmäinen yritys laitteelle VIHJE. Jos VIHJE loppuu pilkkuun, yritä myös " -"aliosioita" - -#: grub-core/commands/search_wrap.c:45 grub-core/commands/search_wrap.c:49 -#: grub-core/commands/search_wrap.c:53 grub-core/commands/search_wrap.c:57 -#: grub-core/commands/search_wrap.c:61 grub-core/commands/search_wrap.c:65 -msgid "HINT" -msgstr "VIHJE" - -#: grub-core/commands/search_wrap.c:47 -msgid "" -"First try the device HINT if currently running on IEEE1275. If HINT ends in " -"comma, also try subpartitions" -msgstr "" -"Ensimmäinen yritys laitteelle VIHJE, jos suoritetaan kohteella IEEE1275. Jos " -"VIHJE loppuu pilkkuun, yritä myös aliosioita" - -#: grub-core/commands/search_wrap.c:51 -msgid "" -"First try the device HINT if currently running on BIOS. If HINT ends in " -"comma, also try subpartitions" -msgstr "" -"Yritä ensimmäiseksi laitteella VIHJE, jos suoritetaan tällä hetkellä BIOS:" -"ssa. Jos VIHJE loppuu pilkkuun, yritä myös aliosioita" - -#: grub-core/commands/search_wrap.c:55 -msgid "" -"First try the device HINT if direct hardware access is supported. If HINT " -"ends in comma, also try subpartitions" -msgstr "" -"Ensimmäinen yritys laitteelle VIHJE, jos suoraa laitepääsyä tuetaan. Jos " -"VIHJE loppuu pilkkuun, yritä myös aliosioita" - -#: grub-core/commands/search_wrap.c:59 -msgid "" -"First try the device HINT if currently running on EFI. If HINT ends in " -"comma, also try subpartitions" -msgstr "" -"Yritä ensimmäiseksi laitteella VIHJE, jos suoritetaan kohteella EFI. Jos " -"VIHJE loppuu pilkkuun, yritä myös aliosioita" - -#: grub-core/commands/search_wrap.c:63 -msgid "" -"First try the device HINT if currently running on ARC. If HINT ends in " -"comma, also try subpartitions" -msgstr "" -"Yritä ensimmäiseksi laitteella VIHJE, jos suoritetaan kohteella ARC. Jos " -"VIHJE loppuu pilkkuun, yritä myös aliosioita" - -#: grub-core/commands/search_wrap.c:207 -msgid "[-f|-l|-u|-s|-n] [--hint HINT [--hint HINT] ...] NAME" -msgstr "[-f|-l|-u|-s|-n] [--hint VIHJE [--hint VIHJE] ...] NIMI" - -#: grub-core/commands/search_wrap.c:209 -msgid "" -"Search devices by file, filesystem label or filesystem UUID. If --set is " -"specified, the first device found is set to a variable. If no variable name " -"is specified, `root' is used." -msgstr "" -"Etsi laitteita tiedoston, tiedostojärjestelmänimiön tai tiedostojärjestelmän " -"UUID-tunnisteen avulla. Jos valitsin --set on määritelty, ensimmäinen " -"löydetty laite asetetaan muuttujaan. Jos mitään muuttujanimeä ei ole " -"määritelty, käytetään arvoa â€rootâ€." - -#: grub-core/commands/setpci.c:132 -#, c-format -msgid "Register %x of %x:%02x.%x is %x\n" -msgstr "Rekisteri %x / %x:%02x.%x on %x\n" - -#: grub-core/commands/setpci.c:333 -msgid "[-s POSITION] [-d DEVICE] [-v VAR] REGISTER[=VALUE[:MASK]]" -msgstr "[-s SIJAINTI] [-d LAITE] [-v MUUTTUJA] REKISTERI[=ARVO[:PEITE]]" - -#: grub-core/commands/setpci.c:335 -msgid "Manipulate PCI devices." -msgstr "Käsittele PCI-laitteita." - -#: grub-core/commands/sleep.c:32 -msgid "Verbose countdown." -msgstr "Lavea loppulaskenta." - -#: grub-core/commands/sleep.c:33 -msgid "Allow to interrupt with ESC." -msgstr "Salli keskeytys ESC-näppäimellä." - -#: grub-core/commands/sleep.c:109 -msgid "NUMBER_OF_SECONDS" -msgstr "SEKUNTIEN_MÄÄRÄ" - -#: grub-core/commands/sleep.c:110 -msgid "Wait for a specified number of seconds." -msgstr "Odota tietty sekuntimäärä." - -#: grub-core/commands/syslinuxcfg.c:50 util/grub-syslinux2cfg.c:66 -msgid "root directory of the syslinux disk [default=/]." -msgstr "syslinux-levyn juurihakemisto [oletus=/]." - -#: grub-core/commands/syslinuxcfg.c:53 util/grub-syslinux2cfg.c:72 -msgid "" -"current directory of syslinux [default is parent directory of input file]." -msgstr "nykyinen syslinux-hakemisto [oletus on syötetiedoston äitihakemisto]." - -#: grub-core/commands/syslinuxcfg.c:55 util/grub-syslinux2cfg.c:75 -msgid "assume input is an isolinux configuration file." -msgstr "otaksu, että syöte on isolinux-asetustiedosto." - -#: grub-core/commands/syslinuxcfg.c:56 util/grub-syslinux2cfg.c:76 -msgid "assume input is a pxelinux configuration file." -msgstr "otaksu, että syöte on pxelinux-asetustiedosto." - -#: grub-core/commands/syslinuxcfg.c:57 util/grub-syslinux2cfg.c:77 -msgid "assume input is a syslinux configuration file." -msgstr "otaksu, että syöte on syslinux-asetustiedosto." - -#. TRANSLATORS: "syslinux config" means -#. "config as used by syslinux". -#: grub-core/commands/syslinuxcfg.c:189 -msgid "Execute syslinux config in same context" -msgstr "Suorita syslinux-asetus samassa asiayhteydessä" - -#: grub-core/commands/syslinuxcfg.c:195 -msgid "Execute syslinux config in new context" -msgstr "Suorita syslinux-asetus uudessa asiayhteydessä" - -#: grub-core/commands/syslinuxcfg.c:201 -msgid "Execute syslinux config in same context taking only menu entries" -msgstr "" -"Suorita syslinux-asetus samassa asiayhteydessä ottaen vain valikkorivit" - -#: grub-core/commands/syslinuxcfg.c:207 -msgid "Execute syslinux config in new context taking only menu entries" -msgstr "" -"Suorita syslinux-asetus uudessa asiayhteydessä ottaen vain valikkorivit" - -#: grub-core/commands/terminal.c:90 -msgid "no terminal specified" -msgstr "päätettä ei ole määritelty" - -#: grub-core/commands/terminal.c:112 grub-core/commands/terminal.c:139 -#, c-format -msgid "terminal `%s' isn't found" -msgstr "pääteikkunaa â€%s†ei löytynyt" - -#: grub-core/commands/terminal.c:244 -msgid "Active input terminals:" -msgstr "Aktivoi syötepäätteet:" - -#: grub-core/commands/terminal.c:245 -msgid "Available input terminals:" -msgstr "Saatavilla olevat syötepäätteet:" - -#: grub-core/commands/terminal.c:261 -msgid "Active output terminals:" -msgstr "Aktivoi tulostepäätteet:" - -#: grub-core/commands/terminal.c:262 -msgid "Available output terminals:" -msgstr "Saatavilla olevat tulostepäätteet:" - -#: grub-core/commands/terminal.c:271 grub-core/commands/terminal.c:276 -msgid "[--append|--remove] [TERMINAL1] [TERMINAL2] ..." -msgstr "[--append|--remove] [PÄÄTE1] [PÄÄTE2] ..." - -#: grub-core/commands/terminal.c:273 -msgid "List or select an input terminal." -msgstr "Luettele tai valitse syötepääte." - -#: grub-core/commands/terminal.c:278 -msgid "List or select an output terminal." -msgstr "Luettele tai valitse tulostepääte." - -#: grub-core/commands/test.c:444 -msgid "EXPRESSION ]" -msgstr "LAUSEKE ]" - -#: grub-core/commands/test.c:444 grub-core/commands/test.c:447 -msgid "Evaluate an expression." -msgstr "Arvioi lauseke." - -#: grub-core/commands/test.c:447 -msgid "EXPRESSION" -msgstr "LAUSEKE" - -#: grub-core/commands/testload.c:164 -msgid "Load the same file in multiple ways." -msgstr "Lataa sama tiedosto useilla tavoilla." - -#: grub-core/commands/testspeed.c:35 -msgid "Specify size for each read operation" -msgstr "Määritä koko jokaiselle lukutoiminnolle" - -#: grub-core/commands/testspeed.c:58 -msgid "invalid block size" -msgstr "virheellinen lohkokoko" - -#: grub-core/commands/testspeed.c:80 -#, c-format -msgid "File size: %s\n" -msgstr "Tiedostokoko: %s\n" - -#: grub-core/commands/testspeed.c:83 -#, c-format -msgid "Elapsed time: %d.%03d s \n" -msgstr "Kulunut aika: %d.%03d s \n" - -#: grub-core/commands/testspeed.c:92 -#, c-format -msgid "Speed: %s \n" -msgstr "Nopeus: %s \n" - -#: grub-core/commands/testspeed.c:107 -msgid "[-s SIZE] FILENAME" -msgstr "[-s KOKO] TIEDOSTONIMI" - -#: grub-core/commands/testspeed.c:108 -msgid "Test file read speed." -msgstr "Testaa tiedoston lukunopeus" - -#: grub-core/commands/time.c:38 grub-core/script/execute.c:974 -msgid "no command is specified" -msgstr "komentoa ei ole määritelty" - -#: grub-core/commands/time.c:50 -#, c-format -msgid "Elapsed time: %d.%03d seconds \n" -msgstr "Kulunut aika: %d.%03d sekuntia \n" - -#: grub-core/commands/time.c:61 -msgid "COMMAND [ARGS]" -msgstr "KOMENTO [ARGUMENTIT]" - -#: grub-core/commands/time.c:62 -msgid "Measure time used by COMMAND" -msgstr "KOMENNON käyttämä mitattu aika" - -#: grub-core/commands/tr.c:33 -msgid "Translate to upper case." -msgstr "Käännä suuriksi kirjaimiksi." - -#: grub-core/commands/tr.c:34 -msgid "Translate to lower case." -msgstr "Käännä pieniksi kirjaimiksi." - -#: grub-core/commands/tr.c:119 -msgid "[OPTIONS] [SET1] [SET2] [STRING]" -msgstr "[VALITSIMET] [JOUKKO1] [JOUKKO2] [MERKKIJONO]" - -#: grub-core/commands/tr.c:120 -msgid "Translate SET1 characters to SET2 in STRING." -msgstr "Käännä JOUKKO1-merkit JOUKKO2-merkeiksi MERKKIJONOssa" - -#. TRANSLATORS: it's a command description. -#: grub-core/commands/true.c:50 -msgid "Do nothing, successfully." -msgstr "Älä tee mitään, onnistuneesti." - -#. TRANSLATORS: it's a command description. -#: grub-core/commands/true.c:54 -msgid "Do nothing, unsuccessfully." -msgstr "Älä tee mitään, epäonnistuneesti." - -#: grub-core/commands/usbtest.c:221 -msgid "Test USB support." -msgstr "Koesta USB-tuki." - -#: grub-core/commands/verifiers.c:120 -#, c-format -msgid "verification requested but nobody cares: %s" -msgstr "" - -#: grub-core/commands/verifiers.c:140 -#, fuzzy -msgid "big file signature isn't implemented yet" -msgstr "relocation 0x%x ei ole vielä toteutettu" - -#: grub-core/commands/videoinfo.c:61 -msgid "Text-only " -msgstr "Vain teksti " - -#. TRANSLATORS: "Direct color" is a mode when the color components -#. are written dirrectly into memory. -#: grub-core/commands/videoinfo.c:66 -#, c-format -msgid "Direct color, mask: %d/%d/%d/%d pos: %d/%d/%d/%d" -msgstr "Ohjausväri, peite: %d/%d/%d/%d sijainti: %d/%d/%d/%d" - -#. TRANSLATORS: In "paletted color" mode you write the index of the color -#. in the palette. Synonyms include "packed pixel". -#: grub-core/commands/videoinfo.c:78 -msgid "Paletted " -msgstr "Pakattu " - -#: grub-core/commands/videoinfo.c:80 -msgid "YUV " -msgstr "YUV " - -#. TRANSLATORS: "Planar" is the video memory where you have to write -#. in several different banks "plans" to control the different color -#. components of the same pixel. -#: grub-core/commands/videoinfo.c:85 -msgid "Planar " -msgstr "Planar " - -#: grub-core/commands/videoinfo.c:87 -msgid "Hercules " -msgstr "Hercules " - -#: grub-core/commands/videoinfo.c:89 -msgid "CGA " -msgstr "CGA " - -#. TRANSLATORS: Non-chain 4 is a 256-color planar -#. (unchained) video memory mode. -#: grub-core/commands/videoinfo.c:93 -msgid "Non-chain 4 " -msgstr "Ei-ketju 4 " - -#: grub-core/commands/videoinfo.c:95 -msgid "Monochrome " -msgstr "Kaksivärinäyttö " - -#: grub-core/commands/videoinfo.c:97 -msgid "Unknown video mode " -msgstr "Tuntematon videotila " - -#: grub-core/commands/videoinfo.c:111 -msgid " EDID checksum invalid" -msgstr " EDID-tarkistussumma virheellinen" - -#: grub-core/commands/videoinfo.c:116 -#, c-format -msgid " EDID version: %u.%u\n" -msgstr " EDID-versio: %u.%u\n" - -#: grub-core/commands/videoinfo.c:120 -#, c-format -msgid " Preferred mode: %ux%u\n" -msgstr " Ensisijainen tila: %ux%u\n" - -#: grub-core/commands/videoinfo.c:123 -msgid " No preferred mode available\n" -msgstr " Ensisijaista tilaa ei ole käytettävissä\n" - -#: grub-core/commands/videoinfo.c:146 grub-core/video/video.c:490 -#: grub-core/video/video.c:498 grub-core/video/video.c:509 -#: grub-core/video/video.c:520 grub-core/video/video.c:528 -#, c-format -msgid "invalid video mode specification `%s'" -msgstr "virheellinen videotilamäärittely â€%sâ€" - -#: grub-core/commands/videoinfo.c:168 -msgid "List of supported video modes:" -msgstr "Tuettujen videotilojen luettelo:" - -#: grub-core/commands/videoinfo.c:169 -msgid "Legend: mask/position=red/green/blue/reserved" -msgstr "Selite: mask/position=red/green/blue/reserved" - -#: grub-core/commands/videoinfo.c:176 -#, c-format -msgid "Adapter `%s':\n" -msgstr "Sovitin â€%sâ€:\n" - -#: grub-core/commands/videoinfo.c:180 -msgid " No info available" -msgstr " Tietoa ei ole saatavilla" - -#: grub-core/commands/videoinfo.c:198 -msgid " Failed to initialize video adapter" -msgstr " Videosovittimen alustaminen epäonnistui" - -#. TRANSLATORS: "x" has to be entered in, -#. like an identifier, so please don't -#. use better Unicode codepoints. -#: grub-core/commands/videoinfo.c:239 grub-core/commands/videoinfo.c:248 -msgid "[WxH[xD]]" -msgstr "[WxH[xD]]" - -#: grub-core/commands/videoinfo.c:240 grub-core/commands/videoinfo.c:249 -msgid "" -"List available video modes. If resolution is given show only modes matching " -"it." -msgstr "" -"Luettele käytettävissä olevat videotilat. Jos resoluutio on annettu, näytä " -"vain tiloja, jotka täsmäävät siihen." - -#. TRANSLATORS: "x" has to be entered in, -#. like an identifier, so please don't -#. use better Unicode codepoints. -#: grub-core/commands/videotest.c:225 -msgid "[WxH]" -msgstr "[WxH]" - -#. TRANSLATORS: Here, on the other hand, it's -#. nicer to use unicode cross instead of x. -#: grub-core/commands/videotest.c:228 -msgid "Test video subsystem in mode WxH." -msgstr "Koesta video-alijärjestelmä WxH-tilassa." - -#: grub-core/commands/videotest.c:231 -msgid "Test video subsystem." -msgstr "Koesta video-alijärjestelmä." - -#: grub-core/commands/xen/lsxen.c:80 grub-core/commands/xen/lsxen.c:82 -msgid "[DIR]" -msgstr "[HAKEMISTO]" - -#: grub-core/commands/xen/lsxen.c:81 grub-core/commands/xen/lsxen.c:83 -msgid "List Xen storage." -msgstr "Luettele Xen-varasto." - -#. TRANSLATORS: GRUBUUID stands for "filesystem -#. UUID as used in GRUB". -#: grub-core/commands/xnu_uuid.c:110 -msgid "[-l] GRUBUUID [VARNAME]" -msgstr "[-l] GRUBUUID [MUUTTUJANIMI]" - -#: grub-core/commands/xnu_uuid.c:111 -msgid "" -"Transform 64-bit UUID to format suitable for XNU. If -l is given keep it " -"lowercase as done by blkid." -msgstr "" -"Muunna 64-bittiset UUID:t XNU:lle sopivaan muotoon. Jos valitsin -l on " -"annettu, pidä se pienenä kirjaimena kuten blkid tekee." - -#: grub-core/disk/arc/arcdisk.c:248 grub-core/disk/efi/efidisk.c:603 -#: grub-core/disk/i386/pc/biosdisk.c:498 grub-core/disk/i386/pc/biosdisk.c:543 -#: grub-core/disk/ieee1275/nand.c:198 grub-core/disk/ieee1275/obdisk.c:527 -#: grub-core/disk/ieee1275/ofdisk.c:586 -#, c-format -msgid "failure reading sector 0x%llx from `%s'" -msgstr "häiriö luettaessa sektoria 0x%llx kohteesta â€%sâ€" - -#: grub-core/disk/arc/arcdisk.c:284 grub-core/disk/efi/efidisk.c:626 -#: grub-core/disk/i386/pc/biosdisk.c:548 grub-core/disk/ieee1275/ofdisk.c:606 -#, c-format -msgid "failure writing sector 0x%llx to `%s'" -msgstr "häiriö kirjoitettaessa sektoria 0x%llx kohteeseen â€%sâ€" - -#: grub-core/disk/cryptodisk.c:40 -msgid "Mount by UUID." -msgstr "UUID:n liittämä." - -#. TRANSLATORS: It's still restricted to cryptodisks only. -#: grub-core/disk/cryptodisk.c:42 -msgid "Mount all." -msgstr "Liitä kaikki." - -#: grub-core/disk/cryptodisk.c:43 -msgid "Mount all volumes with `boot' flag set." -msgstr "Liitä kaikki taltiot â€bootâ€-lippu asetettuna." - -#. TRANSLATORS: The first %s is the file being looked at, the second %s is -#. the error message. -#: grub-core/disk/cryptodisk.c:526 grub-core/kern/emu/hostdisk.c:152 -#: grub-core/kern/emu/hostdisk.c:262 grub-core/kern/emu/hostdisk.c:434 -#: grub-core/kern/emu/misc.c:168 grub-core/kern/emu/misc.c:174 -#: grub-core/kern/emu/misc.c:196 grub-core/osdep/bsd/getroot.c:92 -#: grub-core/osdep/bsd/getroot.c:168 grub-core/osdep/hurd/getroot.c:68 -#: grub-core/osdep/linux/blocklist.c:65 grub-core/osdep/linux/getroot.c:150 -#: grub-core/osdep/linux/hostdisk.c:194 grub-core/osdep/linux/hostdisk.c:421 -#: grub-core/osdep/linux/ofpath.c:417 grub-core/osdep/linux/ofpath.c:422 -#: grub-core/osdep/linux/ofpath.c:517 grub-core/osdep/linux/ofpath.c:530 -#: grub-core/osdep/sun/getroot.c:110 grub-core/osdep/windows/blocklist.c:98 -#: grub-core/tests/video_checksum.c:279 util/editenv.c:46 util/glue-efi.c:115 -#: util/glue-efi.c:120 util/glue-efi.c:130 util/grub-editenv.c:138 -#: util/grub-editenv.c:192 util/grub-file.c:83 util/grub-fstest.c:128 -#: util/grub-fstest.c:568 util/grub-install-common.c:92 -#: util/grub-install-common.c:94 util/grub-install-common.c:101 -#: util/grub-install-common.c:529 util/grub-menulst2cfg.c:53 -#: util/grub-menulst2cfg.c:68 util/grub-mkimage.c:292 util/grub-mklayout.c:504 -#: util/grub-mklayout.c:516 util/grub-mknetdir.c:133 util/grub-mknetdir.c:151 -#: util/grub-mkrescue.c:627 util/grub-mkrescue.c:631 util/grub-mkrescue.c:879 -#: util/grub-mkrescue.c:883 util/grub-mkstandalone.c:253 util/grub-mount.c:498 -#: util/grub-render-label.c:169 util/grub-script-check.c:175 -#: util/grub-syslinux2cfg.c:181 util/grub-syslinux2cfg.c:191 -#: util/grub-syslinux2cfg.c:212 util/grub-syslinux2cfg.c:228 util/misc.c:91 -#: util/render-label.c:76 util/render-label.c:163 util/render-label.c:174 -#: util/resolve.c:246 util/setup.c:783 -#, c-format -msgid "cannot open `%s': %s" -msgstr "kohteen â€%s†avaaminen epäonnistui: %s" - -#: grub-core/disk/cryptodisk.c:583 grub-core/disk/cryptodisk.c:628 -#: grub-core/kern/emu/hostdisk.c:270 grub-core/kern/emu/hostfs.c:142 -#: grub-core/osdep/linux/hostdisk.c:456 util/grub-editenv.c:143 -#: util/grub-editenv.c:149 util/grub-fstest.c:320 util/misc.c:111 -#, c-format -msgid "cannot seek `%s': %s" -msgstr "â€%sâ€-haku epäonnistui: %s" - -#: grub-core/disk/cryptodisk.c:1144 -msgid "SOURCE|-u UUID|-a|-b" -msgstr "SOURCE|-u UUID|-a|-b" - -#: grub-core/disk/cryptodisk.c:1145 -msgid "Mount a crypto device." -msgstr "Liitä salauslaite." - -#. TRANSLATORS: This message kicks in during the detection of -#. which modules needs to be included in core image. This happens -#. in the case of degraded RAID and means that autodetection may -#. fail to include some of modules. It's an installation time -#. message, not runtime message. -#: grub-core/disk/diskfilter.c:343 grub-core/disk/diskfilter.c:376 -#, c-format -msgid "" -"Couldn't find physical volume `%s'. Some modules may be missing from core " -"image." -msgstr "" -"Fyysisen taltion â€%s†löytäminen epäonnistui. Jotkut moduulit voivat puuttua " -"ydinlevykuvasta." - -#: grub-core/disk/diskfilter.c:480 -#, c-format -msgid "physical volume %s not found" -msgstr "fyysistä taltiota %s ei löydy" - -#: grub-core/disk/efi/efidisk.c:600 grub-core/disk/efi/efidisk.c:623 -#, c-format -msgid "no media in `%s'" -msgstr "kohteessa â€%s†ei ole muistilaitetta" - -#: grub-core/disk/geli.c:75 -msgid "Couldn't load sha256" -msgstr "Sha256-algoritmian lataus epäonnistui" - -#: grub-core/disk/geli.c:85 -msgid "Couldn't load sha512" -msgstr "Sha512-algoritmin lataus epäonnistui" - -#: grub-core/disk/geli.c:216 grub-core/disk/geli.c:220 -msgid "couldn't read ELI metadata" -msgstr "ELI-metatietojen lukeminen epäonnistui" - -#: grub-core/disk/geli.c:231 -msgid "wrong ELI magic or version" -msgstr "väärä ELI-maaginen luku tai versio" - -#: grub-core/disk/geli.c:435 grub-core/disk/luks.c:329 -msgid "Attempting to decrypt master key..." -msgstr "Yritettiin purkaa master-avaimen salausta..." - -#: grub-core/disk/geli.c:441 grub-core/disk/luks.c:347 -#, c-format -msgid "Enter passphrase for %s%s%s (%s): " -msgstr "Kirjoita salasana kohteelle %s%s%s (%s): " - -#. TRANSLATORS: It's a cryptographic key slot: one element of an array -#. where each element is either empty or holds a key. -#: grub-core/disk/geli.c:530 grub-core/disk/luks.c:451 -#, c-format -msgid "Slot %d opened\n" -msgstr "Väli %d avattu\n" - -#: grub-core/disk/i386/pc/biosdisk.c:470 grub-core/disk/i386/pc/biosdisk.c:524 -#: grub-core/disk/i386/pc/biosdisk.c:534 grub-core/kern/disk_common.c:47 -#, c-format -msgid "attempt to read or write outside of disk `%s'" -msgstr "yritetään lukea tai kirjoittaa levyn â€%s†ulkopuolella" - -#: grub-core/disk/i386/pc/biosdisk.c:491 grub-core/disk/i386/pc/biosdisk.c:611 -#: grub-core/disk/scsi.c:726 -msgid "cannot write to CD-ROM" -msgstr "CD-ROM -levylle kirjoittaminen epäonnistui" - -#: grub-core/disk/i386/pc/biosdisk.c:662 -msgid "" -"Native disk drivers are in use. Refusing to use firmware disk interface." -msgstr "" -"Alkuperäiset levyajurit ovat käytössä. Kieltäydytään käyttämästä " -"laiteohjelmistolevyrajapintaa." - -#. TRANSLATORS: it's a partition for embedding, -#. not a partition embed into something. GRUB -#. install tools put core.img into a place -#. usable for bootloaders (called generically -#. "embedding zone") and this operation is -#. called "embedding". -#: grub-core/disk/ldm.c:1015 -msgid "your LDM Embedding Partition is too small; embedding won't be possible" -msgstr "" -"sinun LDM-upotettava osiosi on liian pieni; upottaminen ei ole mahdollista" - -#. TRANSLATORS: it's a partition for embedding, -#. not a partition embed into something. -#: grub-core/disk/ldm.c:1033 -msgid "this LDM has no Embedding Partition; embedding won't be possible" -msgstr "" -"tällä LDM:llä ei ole upotettavaa osiota; upottaminen ei ole mahdollista!" - -#. TRANSLATORS: The disk is simply removed from the list of available ones, -#. not wiped, avoid to scare user. -#: grub-core/disk/loopback.c:45 -msgid "Delete the specified loopback drive." -msgstr "Poista määritelty silmukkalaitelevyasema." - -#: grub-core/disk/loopback.c:237 -msgid "[-d] DEVICENAME FILE." -msgstr "[-d] LAITENIMI TIEDOSTO." - -#. TRANSLATORS: The file itself is not destroyed -#. or transformed into drive. -#: grub-core/disk/loopback.c:240 -msgid "Make a virtual drive from a file." -msgstr "Tee tiedostosta virtuaalinen levyasema." - -#: grub-core/efiemu/i386/loadcore32.c:111 -#: grub-core/efiemu/i386/loadcore64.c:125 grub-core/kern/arm/dl.c:256 -#: grub-core/kern/arm64/dl.c:187 grub-core/kern/i386/dl.c:75 -#: grub-core/kern/ia64/dl.c:140 grub-core/kern/mips/dl.c:258 -#: grub-core/kern/powerpc/dl.c:163 grub-core/kern/riscv/dl.c:334 -#: grub-core/kern/sparc64/dl.c:180 grub-core/kern/x86_64/dl.c:110 -#: util/grub-mkimagexx.c:756 util/grub-mkimagexx.c:881 -#: util/grub-mkimagexx.c:945 util/grub-mkimagexx.c:1026 -#: util/grub-mkimagexx.c:1120 util/grub-mkimagexx.c:1222 -#: util/grub-mkimagexx.c:1413 util/grub-mkimagexx.c:1628 -#: util/grub-mkimagexx.c:1665 util/grub-mkimagexx.c:1697 -#: util/grub-mkimagexx.c:1767 util/grub-mkimagexx.c:1797 -#, c-format -msgid "relocation 0x%x is not implemented yet" -msgstr "relocation 0x%x ei ole vielä toteutettu" - -#: grub-core/efiemu/loadcore.c:200 grub-core/efiemu/loadcore.c:237 -#: grub-core/loader/i386/bsdXX.c:317 util/grub-mkimagexx.c:2360 -msgid "no symbol table" -msgstr "ei symbolitaulua" - -#: grub-core/efiemu/loadcore.c:346 grub-core/kern/dl.c:609 -#: grub-core/loader/ia64/efi/linux.c:345 grub-core/loader/mips/linux.c:248 -#: grub-core/loader/multiboot_elfxx.c:76 -#: grub-core/loader/powerpc/ieee1275/linux.c:280 -#: grub-core/loader/sparc64/ieee1275/linux.c:320 -msgid "this ELF file is not of the right type" -msgstr "tämä ELF-tiedosto ei ole oikeaa tyyppiä" - -#: grub-core/efiemu/main.c:313 -msgid "Load and initialize EFI emulator." -msgstr "Lataa ja alusta EFI-emulaattori." - -#: grub-core/efiemu/main.c:317 -msgid "Finalize loading of EFI emulator." -msgstr "Päätä EFI-emulaattorin lataus." - -#: grub-core/efiemu/main.c:320 -msgid "Unload EFI emulator." -msgstr "Poista EFI-emulaattorilataus." - -#: grub-core/efiemu/symbols.c:92 grub-core/kern/dl.c:376 -#, c-format -msgid "symbol `%s' not found" -msgstr "symbolia â€%s†ei löytynyt" - -#: grub-core/font/font_cmd.c:52 -msgid "Loaded fonts:" -msgstr "Ladatut kirjasimet:" - -#: grub-core/font/font_cmd.c:74 -msgid "FILE..." -msgstr "TIEDOSTO..." - -#: grub-core/font/font_cmd.c:75 -msgid "Specify one or more font files to load." -msgstr "Määritä yksi tai useampia kirjasintiedostoja ladattavaksi." - -#: grub-core/font/font_cmd.c:78 -msgid "List the loaded fonts." -msgstr "Luettele ladatut kirjasimet." - -#: grub-core/fs/archelp.c:216 grub-core/fs/archelp.c:278 -#: grub-core/fs/btrfs.c:1815 grub-core/fs/fshelp.c:227 grub-core/fs/jfs.c:736 -#: grub-core/fs/minix.c:369 grub-core/fs/ufs.c:454 -msgid "too deep nesting of symlinks" -msgstr "symboliset linkit liian syvässä sisäkkäin" - -#: grub-core/fs/bfs.c:228 grub-core/fs/fshelp.c:368 grub-core/fs/minix.c:270 -#: grub-core/kern/file.c:156 -msgid "attempt to read past the end of file" -msgstr "yritys lukea tiedoston lopun jäljestä" - -#: grub-core/fs/btrfs.c:1698 grub-core/fs/btrfs.c:1957 -#: grub-core/fs/fshelp.c:189 grub-core/fs/fshelp.c:309 grub-core/fs/jfs.c:431 -#: grub-core/fs/minix.c:414 grub-core/fs/minix.c:562 -#: grub-core/fs/reiserfs.c:732 grub-core/fs/ufs.c:531 grub-core/fs/ufs.c:671 -#: grub-core/fs/zfs/zfs.c:2831 grub-core/fs/zfs/zfs.c:4247 -msgid "not a directory" -msgstr "ei ole hakemisto" - -#: grub-core/fs/btrfs.c:2063 grub-core/fs/fshelp.c:307 grub-core/fs/jfs.c:835 -#: grub-core/fs/zfs/zfs.c:3801 -msgid "not a regular file" -msgstr "ei ole tavallinen tiedosto" - -#: grub-core/fs/btrfs.c:2157 grub-core/fs/zfs/zfs.c:4333 -#: grub-core/partmap/msdos.c:400 -msgid "your core.img is unusually large. It won't fit in the embedding area" -msgstr "tiedostosi core.img on epätavallisen iso. Se ei sovi upotusalueelle." - -#: grub-core/fs/fshelp.c:281 grub-core/fs/minix.c:630 grub-core/fs/ufs.c:661 -#: grub-core/fs/ufs.c:757 grub-core/kern/fs.c:168 grub-core/kern/fs.c:180 -#, c-format -msgid "invalid file name `%s'" -msgstr "virheellinen tiedostonimi â€%sâ€" - -#: grub-core/fs/zfs/zfs.c:453 -msgid "checksum verification failed" -msgstr "tarkistussummatodentaminen epäonnistui" - -#: grub-core/fs/zfs/zfs.c:1465 -msgid "couldn't find a necessary member device of multi-device filesystem" -msgstr "" -"monilaitetiedostojärjestelmän välttämättömän jäsenlaiteen löytäminen " -"epäonnistui" - -#: grub-core/fs/zfs/zfscrypt.c:292 -msgid "no decryption key available" -msgstr "salausavainta ei ole saatavilla" - -#: grub-core/fs/zfs/zfscrypt.c:304 -msgid "MAC verification failed" -msgstr "MAC-todentaminen epäonnistui" - -#: grub-core/fs/zfs/zfscrypt.c:413 -msgid "Assume input is raw." -msgstr "Otaksu, että syöte on raaka." - -#: grub-core/fs/zfs/zfscrypt.c:414 -msgid "Assume input is hex." -msgstr "Otaksu, että syöte on heksadesimaali." - -#: grub-core/fs/zfs/zfscrypt.c:415 -msgid "Assume input is passphrase." -msgstr "Otaksu, että syöte on salasana." - -#: grub-core/fs/zfs/zfscrypt.c:437 util/grub-fstest.c:553 util/grub-mount.c:483 -msgid "Enter ZFS password: " -msgstr "Kirjoita ZFS-salasana: " - -#: grub-core/fs/zfs/zfscrypt.c:476 -msgid "[-h|-p|-r] [FILE]" -msgstr "[-h|-p|-r] [TIEDOSTO]" - -#: grub-core/fs/zfs/zfscrypt.c:477 -msgid "Import ZFS wrapping key stored in FILE." -msgstr "Tuo ZFS-käärinavain, joka on tallennettu TIEDOSTOon." - -#: grub-core/fs/zfs/zfsinfo.c:51 -msgid "Virtual device is removed" -msgstr "Virtuaalilaite poistettiin" - -#: grub-core/fs/zfs/zfsinfo.c:57 -msgid "Virtual device is faulted" -msgstr "Virtuaalilaite vioittui" - -#: grub-core/fs/zfs/zfsinfo.c:63 -msgid "Virtual device is offline" -msgstr "Virtuaalilaite ei ole verkossa" - -#. TRANSLATORS: degraded doesn't mean broken but that some of -#. component are missing but virtual device as whole is still usable. -#: grub-core/fs/zfs/zfsinfo.c:70 -msgid "Virtual device is degraded" -msgstr "Virtuaalilaite on taantunut" - -#: grub-core/fs/zfs/zfsinfo.c:73 -msgid "Virtual device is online" -msgstr "Virtuaalilaite on verkossa" - -#: grub-core/fs/zfs/zfsinfo.c:89 -msgid "Incorrect virtual device: no type available" -msgstr "Virheellinen virtuaalilaite: tyyppiä ei ole käytettävissä" - -#. TRANSLATORS: The virtual devices form a tree (in graph-theoretical -#. sense). The nodes like mirror or raidz have children: member devices. -#. The "real" devices which actually store data are called "leafs" -#. (again borrowed from graph theory) and can be either disks -#. (or partitions) or files. -#: grub-core/fs/zfs/zfsinfo.c:105 -msgid "Leaf virtual device (file or disk)" -msgstr "Lehtivirtuaalilaite (tiedosto tai levy)" - -#: grub-core/fs/zfs/zfsinfo.c:113 -msgid "Bootpath: unavailable\n" -msgstr "Käynnistyspolku: ei ole saatavilla\n" - -#: grub-core/fs/zfs/zfsinfo.c:115 -#, c-format -msgid "Bootpath: %s\n" -msgstr "Käynnistyspolku: %s\n" - -#: grub-core/fs/zfs/zfsinfo.c:120 -msgid "Path: unavailable" -msgstr "Polku: ei ole saatavilla" - -#: grub-core/fs/zfs/zfsinfo.c:122 -#, c-format -msgid "Path: %s\n" -msgstr "Polku: %s\n" - -#: grub-core/fs/zfs/zfsinfo.c:127 -msgid "Devid: unavailable" -msgstr "Laitetunniste: ei ole saatavilla" - -#: grub-core/fs/zfs/zfsinfo.c:129 -#, c-format -msgid "Devid: %s\n" -msgstr "Laitetunniste: %s\n" - -#: grub-core/fs/zfs/zfsinfo.c:148 -msgid "This VDEV is a mirror" -msgstr "Tämä VDEV on peili." - -#: grub-core/fs/zfs/zfsinfo.c:153 -#, c-format -msgid "This VDEV is a RAIDZ%llu\n" -msgstr "Tämä VDEV on RAIDZ%llu\n" - -#: grub-core/fs/zfs/zfsinfo.c:158 -msgid "Incorrect VDEV" -msgstr "Virheellinen VDEV" - -#: grub-core/fs/zfs/zfsinfo.c:161 -#, c-format -msgid "VDEV with %d children\n" -msgstr "VDEV %d:lla lapsella\n" - -#. TRANSLATORS: it's the element carying the number %d, not -#. total element number. And the number itself is fine, -#. only the element isn't. -#. -#: grub-core/fs/zfs/zfsinfo.c:177 -#, c-format -msgid "VDEV element number %d isn't correct\n" -msgstr "VDEV-elementtinumero %d on väärä\n" - -#. TRANSLATORS: it's the element carying the number %d, not -#. total element number. This is used in enumeration -#. "Element number 1", "Element number 2", ... -#: grub-core/fs/zfs/zfsinfo.c:184 -#, c-format -msgid "VDEV element number %d:\n" -msgstr "VDEV-elementtinumero %d:\n" - -#: grub-core/fs/zfs/zfsinfo.c:193 -#, c-format -msgid "Unknown virtual device type: %s\n" -msgstr "Tuntematon virtuaalilaitetyyppi: %s\n" - -#. TRANSLATORS: Here we speak about ZFS pools it's semi-marketing, -#. semi-technical term by Sun/Oracle and should be translated in sync with -#. other ZFS-related software and documentation. -#: grub-core/fs/zfs/zfsinfo.c:254 -msgid "Pool state: active" -msgstr "Varantotila: aktiivinen" - -#: grub-core/fs/zfs/zfsinfo.c:255 -msgid "Pool state: exported" -msgstr "Varantotila: viety" - -#: grub-core/fs/zfs/zfsinfo.c:256 -msgid "Pool state: destroyed" -msgstr "Varantotila: tuhottu" - -#: grub-core/fs/zfs/zfsinfo.c:257 -msgid "Pool state: reserved for hot spare" -msgstr "Varantotila: varattu kuumalle varaosalle" - -#: grub-core/fs/zfs/zfsinfo.c:258 -msgid "Pool state: level 2 ARC device" -msgstr "Varantotila: taso 2 ARC-laite" - -#: grub-core/fs/zfs/zfsinfo.c:259 -msgid "Pool state: uninitialized" -msgstr "Varantotila: alustamaton" - -#: grub-core/fs/zfs/zfsinfo.c:260 -msgid "Pool state: unavailable" -msgstr "Varantotila: ei saatavilla" - -#: grub-core/fs/zfs/zfsinfo.c:261 -msgid "Pool state: potentially active" -msgstr "Varantotila: potentiaalisesti aktiivinen" - -#: grub-core/fs/zfs/zfsinfo.c:306 -msgid "Pool name: unavailable" -msgstr "Varantonimi: ei saatavilla" - -#: grub-core/fs/zfs/zfsinfo.c:308 -#, c-format -msgid "Pool name: %s\n" -msgstr "Varantonimi: %s\n" - -#: grub-core/fs/zfs/zfsinfo.c:313 -msgid "Pool GUID: unavailable" -msgstr "Varanto-GUID: ei saatavilla" - -#: grub-core/fs/zfs/zfsinfo.c:315 -#, c-format -msgid "Pool GUID: %016llx\n" -msgstr "Varanto-GUID: %016llx\n" - -#: grub-core/fs/zfs/zfsinfo.c:320 -msgid "Unable to retrieve pool state" -msgstr "Ei kyetä noutamaan varantotilaa" - -#: grub-core/fs/zfs/zfsinfo.c:322 -msgid "Unrecognized pool state" -msgstr "Tunnistamaton varantotila" - -#. TRANSLATORS: There are undetermined number of virtual devices -#. in a device tree, not just one. -#. -#: grub-core/fs/zfs/zfsinfo.c:332 -msgid "No virtual device tree available" -msgstr "Ei virtuaalilaitepuuta saatavilla" - -#: grub-core/fs/zfs/zfsinfo.c:431 -msgid "Print ZFS info about DEVICE." -msgstr "Tulosta ZFS-tiedot laitteesta LAITE." - -#: grub-core/fs/zfs/zfsinfo.c:433 -msgid "FILESYSTEM [VARIABLE]" -msgstr "TIEDOSTOJÄRJESTELMÄ [MUUTTUJA]" - -#: grub-core/fs/zfs/zfsinfo.c:434 -msgid "Print ZFS-BOOTFSOBJ or store it into VARIABLE" -msgstr "Tulosta ZFS-BOOTFSOBJ tai tallenna se MUUTTUJAan" - -#. TRANSLATORS: at this position GRUB waits for the user to do an action -#. in remote debugger, namely to tell it to establish connection. -#: grub-core/gdb/gdb.c:48 -msgid "Now connect the remote debugger, please." -msgstr "Yhdistä nyt etävikajäljitin." - -#. TRANSLATORS: GDB stub is a small part of -#. GDB functionality running on local host -#. which allows remote debugger to -#. connect to it. -#: grub-core/gdb/gdb.c:84 -msgid "Start GDB stub on given port" -msgstr "Käynnistä GDB-tynkä annetussa portissa" - -#. TRANSLATORS: this refers to triggering -#. a breakpoint so that the user will land -#. into GDB. -#: grub-core/gdb/gdb.c:89 -msgid "Break into GDB" -msgstr "Hyppää GDB:hen" - -#: grub-core/gdb/gdb.c:91 -msgid "Stop GDB stub" -msgstr "Pysäytä GDB-tynkä" - -#: grub-core/gettext/gettext.c:85 -msgid "premature end of file" -msgstr "ennenaikainen tiedoston loppu" - -#. TRANSLATORS: It refers to passing the string through gettext. -#. So it's "translate" in the same meaning as in what you're -#. doing now. -#. -#: grub-core/gettext/gettext.c:525 -msgid "Translates the string with the current settings." -msgstr "Käännä merkkijonot nykyisillä asetuksilla." - -#: grub-core/gfxmenu/gui_label.c:186 grub-core/normal/menu_text.c:184 -msgid "" -"Press enter to boot the selected OS, `e' to edit the commands before booting " -"or `c' for a command-line. ESC to return previous menu." -msgstr "" -"Enter käynnistää valitun käyttöjärjestelmän, â€e†siirtyy muokkaamaan " -"komentoja ennen käynnistystä ja â€c†siirtyy komentoriville. ESC palaa " -"edelliseen valikkoon." - -#: grub-core/gfxmenu/gui_label.c:190 grub-core/normal/menu_text.c:192 -msgid "" -"Press enter to boot the selected OS, `e' to edit the commands before booting " -"or `c' for a command-line." -msgstr "" -"Enter käynnistää valitun käyttöjärjestelmän, â€e†siirtyy muokkaamaan " -"komentoja ennen käynnistystä ja â€c†siirtyy komentoriville." - -#: grub-core/gfxmenu/gui_label.c:194 -msgid "enter: boot, `e': options, `c': cmd-line" -msgstr "enter: käynnistys, â€eâ€: valitsimet, â€câ€: komentorivi" - -#: grub-core/gfxmenu/gui_progress_bar.c:339 grub-core/normal/menu_text.c:446 -#, c-format -msgid "The highlighted entry will be executed automatically in %ds." -msgstr "" -"Korostettu valikkorivi suoritetaan automaattisesti %d sekunnin kuluttua." - -#. TRANSLATORS: 's' stands for seconds. -#. It's a standalone timeout notification. -#. Please use the short form in your language. -#: grub-core/gfxmenu/gui_progress_bar.c:344 -#, c-format -msgid "%ds remaining." -msgstr "%d s jäljellä." - -#. TRANSLATORS: 's' stands for seconds. -#. It's a standalone timeout notification. -#. Please use the shortest form available in you language. -#: grub-core/gfxmenu/gui_progress_bar.c:349 grub-core/normal/menu_text.c:444 -#: grub-core/normal/menu_text.c:462 -#, c-format -msgid "%ds" -msgstr "%d s" - -#: grub-core/gfxmenu/view.c:103 -msgid "GRUB Boot Menu" -msgstr "GRUB-käynnistysvalikko" - -#: grub-core/hello/hello.c:36 -msgid "Hello World" -msgstr "Hei Maailma" - -#: grub-core/hello/hello.c:45 -msgid "Say `Hello World'." -msgstr "Sano â€Hei Maailmaâ€." - -#: grub-core/io/gzio.c:409 grub-core/kern/file.c:210 -msgid "attempt to seek outside of the file" -msgstr "yritys etsiä tiedoston ulkopuolella" - -#. TRANSLATORS: It's about given file having some strange format, not -#. complete lack of gzip support. -#: grub-core/io/gzio.c:1228 grub-core/io/gzio.c:1237 grub-core/io/gzio.c:1244 -msgid "unsupported gzip format" -msgstr "tukematon gzip-muoto" - -#: grub-core/io/lzopio.c:511 -msgid "lzop file corrupted" -msgstr "lzop-tiedosto turmeltunut" - -#: grub-core/io/xzio.c:278 -msgid "xz file corrupted or unsupported block options" -msgstr "xz-tiedosto vaurioitunut tai tukemattomat lohkovalitsimet" - -#: grub-core/kern/arm/dl.c:277 grub-core/kern/arm64/dl.c:44 -#: grub-core/kern/i386/dl.c:36 grub-core/kern/ia64/dl.c:41 -#: grub-core/kern/mips/dl.c:48 grub-core/kern/powerpc/dl.c:36 -#: grub-core/kern/riscv/dl.c:47 grub-core/kern/sparc64/dl.c:36 -#: grub-core/kern/x86_64/dl.c:36 grub-core/loader/i386/bsd.c:1445 -#: grub-core/loader/i386/bsdXX.c:49 grub-core/loader/ia64/efi/linux.c:341 -#: grub-core/loader/mips/linux.c:298 grub-core/loader/multiboot.c:232 -#: grub-core/loader/multiboot_elfxx.c:73 -#: grub-core/loader/powerpc/ieee1275/linux.c:294 -#: grub-core/loader/sparc64/ieee1275/linux.c:331 -msgid "invalid arch-dependent ELF magic" -msgstr "virheellinen arch-riippuvainen ELF magic" - -#: grub-core/kern/corecmd.c:178 -msgid "[ENVVAR=VALUE]" -msgstr "[ENVVAR=ARVO]" - -#: grub-core/kern/corecmd.c:179 -msgid "Set an environment variable." -msgstr "Aseta ympäristömuuttuja." - -#: grub-core/kern/corecmd.c:183 -msgid "ENVVAR" -msgstr "ENVAR" - -#: grub-core/kern/corecmd.c:184 -msgid "Remove an environment variable." -msgstr "Poista ympäristömuuttuja." - -#: grub-core/kern/corecmd.c:186 -msgid "[ARG]" -msgstr "[ARGUMENTTI]" - -#: grub-core/kern/corecmd.c:186 -msgid "List devices or files." -msgstr "Luettele laitteet tai tiedostot." - -#: grub-core/kern/corecmd.c:188 -msgid "Insert a module." -msgstr "Lisää moduuli." - -#: grub-core/kern/disk.c:236 grub-core/net/net.c:1390 -#, c-format -msgid "disk `%s' not found" -msgstr "levyä â€%s†ei löytynyt" - -#: grub-core/kern/disk_common.c:27 -msgid "attempt to read or write outside of partition" -msgstr "yritys lukea tai kirjoittaa osion ulkopuolelle" - -#: grub-core/kern/dl.c:212 grub-core/kern/elf.c:61 grub-core/kern/elf.c:79 -#: grub-core/loader/i386/bsdXX.c:46 grub-core/loader/ia64/efi/linux.c:335 -#: grub-core/loader/multiboot_elfxx.c:69 -msgid "invalid arch-independent ELF magic" -msgstr "virheellinen arch-riippumaton ELF magic" - -#. TRANSLATORS: it refers to the lack of free slots. -#: grub-core/kern/emu/hostdisk.c:208 grub-core/kern/emu/hostdisk.c:466 -msgid "device count exceeds limit" -msgstr "laitelukumäärä ylittää rajan" - -#: grub-core/kern/emu/hostdisk.c:342 util/editenv.c:54 util/grub-editenv.c:197 -#: util/grub-fstest.c:191 util/grub-mkfont.c:796 util/misc.c:114 -#: util/misc.c:129 util/setup.c:788 -#, c-format -msgid "cannot write to `%s': %s" -msgstr "kohteeseen â€%s†kirjoittaminen epäonnistui: %s" - -#. TRANSLATORS: Only one entry is ignored. However the suggestion -#. is to correct/delete the whole file. -#. device.map is a file indicating which -#. devices are available at boot time. Fedora populated it with -#. entries like (hd0,1) /dev/sda1 which would mean that every -#. partition is a separate disk for BIOS. Such entries were -#. inactive in GRUB due to its bug which is now gone. Without -#. this additional check these entries would be harmful now. -#. -#: grub-core/kern/emu/hostdisk.c:503 -#, c-format -msgid "" -"the device.map entry `%s' is invalid. Ignoring it. Please correct or delete " -"your device.map" -msgstr "" -"rivi device.map â€%s†on virheellinen. Ohita se. Korjaa tai poista se device." -"map-tiedostostasi" - -#. TRANSLATORS: device.map is a filename. Not to be translated. -#. device.map specifies disk correspondance overrides. Previously -#. one could create any kind of device name with this. Due to -#. some problems we decided to limit it to just a handful -#. possibilities. -#: grub-core/kern/emu/hostdisk.c:555 -#, c-format -msgid "" -"the drive name `%s' in device.map is incorrect. Using %s instead. Please use " -"the form [hfc]d[0-9]* (E.g. `hd0' or `cd')" -msgstr "" -"levyasemanimi â€%s†tiedostossa device.map on virheellinen. Sen sijasta " -"käytetään %s. Käytä muotoa [hfc]d[0-9]* (Esim.: â€hd0†tai â€cdâ€)" - -# avattava kohden on parametrinä saatava tuloste(tiedosto) -#: grub-core/kern/emu/hostfs.c:76 grub-core/kern/emu/hostfs.c:109 -#, c-format -msgid "can't open `%s': %s" -msgstr "tulostekohteen â€%s†avaaminen epäonnistui: %s" - -#: grub-core/kern/emu/main.c:99 util/grub-fstest.c:516 util/grub-mount.c:452 -msgid "DEVICE_NAME" -msgstr "LAITE_NIMI" - -#: grub-core/kern/emu/main.c:99 grub-core/loader/i386/bsd.c:136 -#: grub-core/loader/i386/bsd.c:169 util/grub-fstest.c:516 util/grub-mount.c:452 -msgid "Set root device." -msgstr "Aseta juurilaite." - -#. TRANSLATORS: There are many devices in device map. -#: grub-core/kern/emu/main.c:102 util/grub-probe.c:733 util/grub-setup.c:85 -#, c-format -msgid "use FILE as the device map [default=%s]" -msgstr "käytä TIEDOSTOa laitekuvauksena [oletus=%s]" - -#. TRANSLATORS: There are many devices in device map. -#: grub-core/kern/emu/main.c:105 -msgid "use FILE as memdisk" -msgstr "käytä TIEDOSTO memdisk-levykuvana" - -#: grub-core/kern/emu/main.c:107 util/grub-setup.c:83 -#, c-format -msgid "use GRUB files in the directory DIR [default=%s]" -msgstr "käytä GRUB-tiedostoja hakemistossa HAKEMISTO [oletus=%s]" - -#: grub-core/kern/emu/main.c:108 include/grub/util/install.h:67 -#: util/grub-editenv.c:58 util/grub-fstest.c:525 util/grub-glue-efi.c:58 -#: util/grub-macbless.c:104 util/grub-mkfont.c:962 util/grub-mkimage.c:84 -#: util/grub-mklayout.c:56 util/grub-mount.c:458 util/grub-probe.c:735 -#: util/grub-render-label.c:74 util/grub-script-check.c:52 util/grub-setup.c:90 -#: util/grub-syslinux2cfg.c:78 -msgid "print verbose messages." -msgstr "tulosta laveilla viesteillä." - -#: grub-core/kern/emu/main.c:109 grub-core/lib/gnulib/argp-parse.c:85 -msgid "SECS" -msgstr "SEKUNTIA" - -#: grub-core/kern/emu/main.c:109 -msgid "wait until a debugger will attach" -msgstr "odota kunnes vianjäljittäjä liittyy" - -#: grub-core/kern/emu/main.c:171 util/grub-macbless.c:143 -#: util/grub-mkrelpath.c:61 util/grub-probe.c:874 util/grub-script-check.c:75 -#: util/grub-setup.c:203 -#, c-format -msgid "Unknown extra argument `%s'." -msgstr "Tuntematon ylimääräinen argumentti â€%sâ€." - -#: grub-core/kern/emu/main.c:185 -msgid "GRUB emulator." -msgstr "GRUB-emulaattori." - -#: grub-core/kern/emu/main.c:213 util/grub-editenv.c:262 -#: util/grub-glue-efi.c:110 util/grub-macbless.c:173 util/grub-mkfont.c:1177 -#: util/grub-mkimage.c:266 util/grub-mklayout.c:494 -#: util/grub-mkpasswd-pbkdf2.c:132 util/grub-mkrelpath.c:96 -#: util/grub-probe.c:863 util/grub-render-label.c:152 -#: util/grub-script-check.c:160 util/grub-setup.c:262 -#: util/grub-syslinux2cfg.c:163 -msgid "Error in parsing command line arguments\n" -msgstr "Virhe jäsennettäessä komentoriviargumentteja\n" - -#. TRANSLATORS: In this case GRUB tells user what he has to do. -#: grub-core/kern/emu/main.c:248 -#, c-format -msgid "Run `gdb %s %d', and set ARGS.HOLD to zero.\n" -msgstr "Suorita â€gdb %s %dâ€, ja aseta ARGS.HOLD nollaksi.\n" - -#: grub-core/kern/emu/misc.c:48 -#, c-format -msgid "%s: warning:" -msgstr "%s: varoitus:" - -#: grub-core/kern/emu/misc.c:64 -#, c-format -msgid "%s: info:" -msgstr "%s: tiedot:" - -#: grub-core/kern/emu/misc.c:79 util/grub-fstest.c:567 util/grub-fstest.c:576 -#: util/grub-mount.c:497 util/grub-mount.c:505 -#, c-format -msgid "%s: error:" -msgstr "%s: virhe:" - -#: grub-core/kern/emu/misc.c:176 -#, c-format -msgid "file `%s' is too big" -msgstr "tiedosto â€%s†on liian iso" - -#: grub-core/kern/fs.c:120 -msgid "unknown filesystem" -msgstr "tuntematon tiedostojärjestelmä" - -#: grub-core/kern/mips/arc/init.c:273 grub-core/kern/mips/loongson/init.c:301 -msgid "Shutdown failed" -msgstr "Sulkeutuminen epäonnistui" - -#: grub-core/kern/mips/arc/init.c:285 -msgid "Exit failed" -msgstr "Poistuminen epäonnistui" - -#: grub-core/kern/misc.c:351 grub-core/kern/misc.c:408 include/grub/misc.h:269 -#: include/grub/misc.h:278 -msgid "overflow is detected" -msgstr "ylivuoto havaittu" - -#: grub-core/kern/partition.c:51 grub-core/partmap/bsdlabel.c:108 -#, c-format -msgid "Discarding improperly nested partition (%s,%s,%s%d)" -msgstr "Hylätään väärin sisäkkäiset osiot (%s,%s,%s%d)" - -#: grub-core/kern/rescue_parser.c:73 util/grub-editenv.c:292 -#, c-format -msgid "Unknown command `%s'.\n" -msgstr "Tuntematon komento â€%sâ€.\n" - -#: grub-core/lib/arg.c:31 -msgid "Display this help and exit." -msgstr "Näytä tämä opaste ja poistu." - -#: grub-core/lib/arg.c:33 -msgid "Display the usage of this command and exit." -msgstr "Näytä tämän komennon käyttöopaste ja poistu." - -#: grub-core/lib/arg.c:362 -#, c-format -msgid "missing mandatory option for `%s'" -msgstr "puuttuva pakollinen valitsin kohteelle â€%sâ€" - -#: grub-core/lib/arg.c:384 -#, c-format -msgid "the argument `%s' requires an integer" -msgstr "argumentti â€%s†vaatii kokonaisluvun" - -#: grub-core/lib/arg.c:407 -#, c-format -msgid "" -"a value was assigned to the argument `%s' while it doesn't require an " -"argument" -msgstr "arvo liitettiin argumenttiin â€%s†vaikka se ei vaadi argumenttia" - -#: grub-core/lib/backtrace.c:64 -msgid "Print backtrace." -msgstr "Tulosta paluujälki." - -#: grub-core/lib/gnulib/argp-help.c:149 -#, c-format -msgid "ARGP_HELP_FMT: %s value is less than or equal to %s" -msgstr "ARGP_HELP_FMT: %s-arvo on pienempi tai yhtäsuuri kuin %s" - -#: grub-core/lib/gnulib/argp-help.c:225 -#, c-format -msgid "%.*s: ARGP_HELP_FMT parameter requires a value" -msgstr "%.*s: ARGP_HELP_FMT-parametri vaatii arvon" - -#: grub-core/lib/gnulib/argp-help.c:235 -#, c-format -msgid "%.*s: Unknown ARGP_HELP_FMT parameter" -msgstr "%.*s: Tuntematon ARGP_HELP_FMT-parametri" - -#: grub-core/lib/gnulib/argp-help.c:248 -#, c-format -msgid "Garbage in ARGP_HELP_FMT: %s" -msgstr "Roskaa kohteessa ARGP_HELP_FMT: %s" - -#: grub-core/lib/gnulib/argp-help.c:1229 -msgid "" -"Mandatory or optional arguments to long options are also mandatory or " -"optional for any corresponding short options." -msgstr "" -"Pakolliset tai valinnaiset argumentit pitkille valitsimille ovat pakollisia " -"tai valinnaisia myös kaikille vastaaville lyhyille valitsimille." - -#: grub-core/lib/gnulib/argp-help.c:1620 -msgid " or: " -msgstr " tai: " - -#: grub-core/lib/gnulib/argp-help.c:1632 -msgid " [OPTION...]" -msgstr "[VALITSIN...]" - -#: grub-core/lib/gnulib/argp-help.c:1659 -#, c-format -msgid "Try '%s --help' or '%s --usage' for more information.\n" -msgstr "Lisätietoja komennolla ’%s --help’ tai ’%s --usage’.\n" - -#: grub-core/lib/gnulib/argp-help.c:1687 -#, c-format -msgid "Report bugs to %s.\n" -msgstr "" -"Ilmoita vioista (englanniksi) osoitteeseen %s.\n" -"Ilmoita käännösvirheistä osoitteeseen .\n" - -#: grub-core/lib/gnulib/argp-help.c:1888 grub-core/lib/gnulib/error.c:195 -msgid "Unknown system error" -msgstr "Tuntematon järjestelmävirhe" - -#: grub-core/lib/gnulib/argp-parse.c:81 -msgid "give this help list" -msgstr "anna tämä opasteluettelo" - -#: grub-core/lib/gnulib/argp-parse.c:82 -msgid "give a short usage message" -msgstr "anna lyhyt käyttöviesti" - -#: grub-core/lib/gnulib/argp-parse.c:83 util/grub-mkfont.c:946 -msgid "NAME" -msgstr "NIMI" - -#: grub-core/lib/gnulib/argp-parse.c:84 -msgid "set the program name" -msgstr "aseta ohjelman nimi" - -#: grub-core/lib/gnulib/argp-parse.c:86 -msgid "hang for SECS seconds (default 3600)" -msgstr "jumittuu SECS sekuntia (oletus 3600)" - -#: grub-core/lib/gnulib/argp-parse.c:143 -msgid "print program version" -msgstr "tulosta ohjelman versio" - -#: grub-core/lib/gnulib/argp-parse.c:160 -msgid "(PROGRAM ERROR) No version known!?" -msgstr "(OHJELMAVIRHE) Versiota ei tiedetä!?" - -#: grub-core/lib/gnulib/argp-parse.c:613 -#, c-format -msgid "%s: Too many arguments\n" -msgstr "%s: Liian monta argumenttia\n" - -#: grub-core/lib/gnulib/argp-parse.c:759 -msgid "(PROGRAM ERROR) Option should have been recognized!?" -msgstr "(OHJELMAVIRHE) Valitsin pitäisi olla tunnistettu!?" - -#: grub-core/lib/gnulib/getopt.c:278 -#, fuzzy, c-format -msgid "%s: option '%s%s' is ambiguous\n" -msgstr "%s: valitsin ’-W %s’ ei ole yksiselitteinen\n" - -#: grub-core/lib/gnulib/getopt.c:284 -#, fuzzy, c-format -msgid "%s: option '%s%s' is ambiguous; possibilities:" -msgstr "%s: valitsin ’%s’ ei ole yksiselitteinen; mahdollisuudet:" - -#: grub-core/lib/gnulib/getopt.c:319 -#, fuzzy, c-format -msgid "%s: unrecognized option '%s%s'\n" -msgstr "%s: tunnistamaton valitsin ’%c%s’\n" - -#: grub-core/lib/gnulib/getopt.c:345 -#, fuzzy, c-format -msgid "%s: option '%s%s' doesn't allow an argument\n" -msgstr "%s: valitsin ’%c%s’ ei salli argumenttia\n" - -#: grub-core/lib/gnulib/getopt.c:360 -#, fuzzy, c-format -msgid "%s: option '%s%s' requires an argument\n" -msgstr "%s: valitsin ’--%s’ vaatii argumentin\n" - -#: grub-core/lib/gnulib/getopt.c:621 -#, c-format -msgid "%s: invalid option -- '%c'\n" -msgstr "%s: virheellinen valitsin -- ’%c’\n" - -#: grub-core/lib/gnulib/getopt.c:636 grub-core/lib/gnulib/getopt.c:682 -#, c-format -msgid "%s: option requires an argument -- '%c'\n" -msgstr "%s: valitsin vaatii argumentin -- ’%c’\n" - -#: grub-core/lib/gnulib/openat-die.c:38 -#, fuzzy, c-format -msgid "unable to record current working directory" -msgstr "alkuperäisen hakemiston palauttaminen epäonnistui" - -#: grub-core/lib/gnulib/openat-die.c:57 -#, c-format -msgid "failed to return to initial working directory" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:135 grub-core/osdep/aros/hostdisk.c:523 -msgid "Success" -msgstr "Onnistui" - -#: grub-core/lib/gnulib/regcomp.c:138 -msgid "No match" -msgstr "Ei täsmäystä" - -#: grub-core/lib/gnulib/regcomp.c:141 -msgid "Invalid regular expression" -msgstr "Virheellinen säännöllinen lauseke" - -#: grub-core/lib/gnulib/regcomp.c:144 -msgid "Invalid collation character" -msgstr "Virheellinen tietojen keräysmerkki" - -#: grub-core/lib/gnulib/regcomp.c:147 -msgid "Invalid character class name" -msgstr "Virheellinen merkkiluokkanimi" - -#: grub-core/lib/gnulib/regcomp.c:150 -msgid "Trailing backslash" -msgstr "Jäljessä oleva kenoviiva" - -#: grub-core/lib/gnulib/regcomp.c:153 -msgid "Invalid back reference" -msgstr "Virheellinen paluuviite" - -#: grub-core/lib/gnulib/regcomp.c:156 -#, fuzzy -msgid "Unmatched [, [^, [:, [., or [=" -msgstr "Pariton [ tai [^" - -#: grub-core/lib/gnulib/regcomp.c:159 -msgid "Unmatched ( or \\(" -msgstr "Pariton ( tai \\(" - -#: grub-core/lib/gnulib/regcomp.c:162 -msgid "Unmatched \\{" -msgstr "Pariton \\{" - -#: grub-core/lib/gnulib/regcomp.c:165 -msgid "Invalid content of \\{\\}" -msgstr "Virheellinen \\{\\}-sisältö" - -#: grub-core/lib/gnulib/regcomp.c:168 -msgid "Invalid range end" -msgstr "Virheellinen lukualueen loppu" - -#: grub-core/lib/gnulib/regcomp.c:171 -msgid "Memory exhausted" -msgstr "Muisti loppui" - -#: grub-core/lib/gnulib/regcomp.c:174 -msgid "Invalid preceding regular expression" -msgstr "Virheellinen edeltävä säännöllinen lauseke" - -#: grub-core/lib/gnulib/regcomp.c:177 -msgid "Premature end of regular expression" -msgstr "Ennenaikainen säännöllisen lausekkeen loppu" - -#: grub-core/lib/gnulib/regcomp.c:180 -msgid "Regular expression too big" -msgstr "Säännöllinen lauseke on liian suuri" - -#: grub-core/lib/gnulib/regcomp.c:183 -msgid "Unmatched ) or \\)" -msgstr "Pariton ) tai \\)" - -#: grub-core/lib/gnulib/regcomp.c:531 -msgid "unknown regexp error" -msgstr "tuntematon säännöllisen lausekkeen virhe" - -#: grub-core/lib/gnulib/regcomp.c:676 -msgid "No previous regular expression" -msgstr "Ei edellistä säännöllistä lauseketta" - -#: grub-core/lib/i386/halt.c:77 -msgid "GRUB doesn't know how to halt this machine yet!" -msgstr "GRUB ei vielä tiedä, kuinka tämä kone pysäytetään!" - -#: grub-core/lib/legacy_parse.c:75 -msgid "Default server is ${net_default_server}" -msgstr "Oletuspalvelin on ${net_default_server}" - -#: grub-core/lib/legacy_parse.c:844 grub-core/video/colors.c:296 -#: grub-core/video/colors.c:305 grub-core/video/colors.c:311 -#: grub-core/video/colors.c:327 util/render-label.c:84 util/render-label.c:98 -#, c-format -msgid "invalid color specification `%s'" -msgstr "virheellinen värimäärittely â€%sâ€" - -#: grub-core/lib/mips/arc/reboot.c:32 grub-core/lib/mips/loongson/reboot.c:61 -msgid "Reboot failed" -msgstr "Uudelleenkäynnistys epäonnistui" - -#: grub-core/lib/random.c:113 -msgid "[LENGTH]" -msgstr "[PITUUS]" - -#: grub-core/lib/random.c:114 -msgid "Hexdump random data." -msgstr "Hexdump-satunnaisdataa." - -#: grub-core/loader/arm/linux.c:242 -msgid "device tree must be supplied (see `devicetree' command)" -msgstr "laitepuu on tarjottava (katso â€devicetreeâ€-komentoa)" - -#: grub-core/loader/arm/linux.c:334 -msgid "invalid zImage" -msgstr "virheellinen zImage" - -#: grub-core/loader/arm/linux.c:450 grub-core/loader/efi/fdt.c:144 -msgid "invalid device tree" -msgstr "virheellinen laitepuu" - -#: grub-core/loader/arm/linux.c:493 grub-core/loader/arm64/linux.c:383 -#: grub-core/loader/i386/linux.c:1125 grub-core/loader/i386/pc/linux.c:479 -#: grub-core/loader/i386/xen.c:962 grub-core/loader/i386/xen.c:964 -#: grub-core/loader/ia64/efi/linux.c:591 grub-core/loader/mips/linux.c:501 -#: grub-core/loader/powerpc/ieee1275/linux.c:383 -#: grub-core/loader/riscv/linux.c:50 -#: grub-core/loader/sparc64/ieee1275/linux.c:511 -msgid "Load Linux." -msgstr "Lataa Linux." - -#: grub-core/loader/arm/linux.c:495 grub-core/loader/arm64/linux.c:385 -#: grub-core/loader/i386/linux.c:1127 grub-core/loader/i386/pc/linux.c:482 -#: grub-core/loader/i386/xen.c:966 grub-core/loader/ia64/efi/linux.c:594 -#: grub-core/loader/mips/linux.c:503 -#: grub-core/loader/powerpc/ieee1275/linux.c:385 -#: grub-core/loader/riscv/linux.c:52 -#: grub-core/loader/sparc64/ieee1275/linux.c:513 -msgid "Load initrd." -msgstr "Lataa initrd-tiedosto." - -#. TRANSLATORS: DTB stands for device tree blob. -#: grub-core/loader/arm/linux.c:498 grub-core/loader/efi/fdt.c:169 -msgid "Load DTB file." -msgstr "Lataa DTB-tiedosto." - -#: grub-core/loader/arm64/linux.c:59 -msgid "" -"plain image kernel not supported - rebuild with CONFIG_(U)EFI_STUB enabled" -msgstr "" -"pelkkää levyvedosydintä ei tueta - rakenna uudelleen CONFIG_(U)EFI_STUB-" -"asetus käyttöönotettuna" - -#: grub-core/loader/arm64/xen_boot.c:156 -msgid "failed to get FDT" -msgstr "FDT:n haku epäonnistui" - -#: grub-core/loader/arm64/xen_boot.c:418 -msgid "you need to load the Xen Hypervisor first" -msgstr "sinun on ladattava ensin Xen Hypevisor" - -#: grub-core/loader/arm64/xen_boot.c:516 -msgid "Load a xen hypervisor." -msgstr "Lataa xen hypervisor." - -#: grub-core/loader/arm64/xen_boot.c:519 -msgid "Load a xen module." -msgstr "Lataa xen-moduuli." - -#: grub-core/loader/efi/appleloader.c:231 -msgid "[OPTS]" -msgstr "[VALITSIMET]" - -#. TRANSLATORS: This command is used on EFI to -#. switch to BIOS mode and boot the OS requiring -#. BIOS. -#: grub-core/loader/efi/appleloader.c:235 -msgid "Boot BIOS-based system." -msgstr "Käynnistä BIOS-perustainen järjestelmä." - -#: grub-core/loader/efi/chainloader.c:421 -#: grub-core/loader/i386/pc/chainloader.c:303 -msgid "Load another boot loader." -msgstr "Lataa toinen käynnistyslatain." - -#: grub-core/loader/i386/bsd.c:103 -msgid "Display output on all consoles." -msgstr "Näytä tuloste kaikissa pääteikkunoissa." - -#: grub-core/loader/i386/bsd.c:104 grub-core/loader/i386/bsd.c:138 -#: grub-core/loader/i386/bsd.c:171 -msgid "Use serial console." -msgstr "Käytä sarjapääteikkunaa." - -#: grub-core/loader/i386/bsd.c:105 grub-core/loader/i386/bsd.c:131 -#: grub-core/loader/i386/bsd.c:159 -msgid "Ask for file name to reboot from." -msgstr "Kysy tiedostonimeä, josta käynnistetään." - -#: grub-core/loader/i386/bsd.c:106 -msgid "Use CD-ROM as root." -msgstr "Käytä CD-ROM:ia juurena." - -#: grub-core/loader/i386/bsd.c:107 -msgid "Invoke user configuration routing." -msgstr "Kutsu esiin käyttäjäasetusreititys." - -#: grub-core/loader/i386/bsd.c:108 grub-core/loader/i386/bsd.c:135 -#: grub-core/loader/i386/bsd.c:162 -msgid "Enter in KDB on boot." -msgstr "Siirry KDB:hen käynnistyksen yhteydessä." - -#: grub-core/loader/i386/bsd.c:109 -msgid "Use GDB remote debugger instead of DDB." -msgstr "Käytä GDB-etävianjäljitintä eikä DDB:tä." - -#: grub-core/loader/i386/bsd.c:110 -msgid "Disable all boot output." -msgstr "Ota pois käytöstä kaikki käynnistyksen tulosteet." - -#: grub-core/loader/i386/bsd.c:112 -msgid "Wait for keypress after every line of output." -msgstr "Odota näppäimen painallusta jokaisen tulosterivin jälkeen." - -#: grub-core/loader/i386/bsd.c:114 -msgid "Use compiled-in root device." -msgstr "Käytä sisäänkäännettyä root-laitetta." - -#: grub-core/loader/i386/bsd.c:115 grub-core/loader/i386/bsd.c:134 -#: grub-core/loader/i386/bsd.c:165 -msgid "Boot into single mode." -msgstr "Käynnistä yhden käyttäjän tilaan." - -#: grub-core/loader/i386/bsd.c:116 grub-core/loader/i386/bsd.c:166 -msgid "Boot with verbose messages." -msgstr "Käynnistä laveilla viesteillä." - -#: grub-core/loader/i386/bsd.c:132 grub-core/loader/i386/bsd.c:160 -msgid "Don't reboot, just halt." -msgstr "Älä käynnisty uudelleen; vain pysähdy." - -#: grub-core/loader/i386/bsd.c:133 grub-core/loader/i386/bsd.c:161 -msgid "Change configured devices." -msgstr "Vaihda asetettuja laitteita." - -#. TRANSLATORS: "com" is static and not to be translated. It refers to -#. serial ports e.g. com1. -#. -#: grub-core/loader/i386/bsd.c:142 -msgid "comUNIT[,SPEED]" -msgstr "comYKSIKKÖ[,NOPEUS]" - -#: grub-core/loader/i386/bsd.c:157 -msgid "Disable SMP." -msgstr "Ota SMP pois käytöstä." - -#: grub-core/loader/i386/bsd.c:158 -msgid "Disable ACPI." -msgstr "Ota ACPI pois käytöstä." - -#: grub-core/loader/i386/bsd.c:164 -msgid "Don't display boot diagnostic messages." -msgstr "Älä näytä käynnistyksen diagnostiikkaviestejä." - -#: grub-core/loader/i386/bsd.c:167 -msgid "Boot with debug messages." -msgstr "Käynnistä vianjäljitysviesteillä." - -#: grub-core/loader/i386/bsd.c:168 -msgid "Suppress normal output (warnings remain)." -msgstr "Vaienna normaalituloste (varoitukset jäävät)." - -#. TRANSLATORS: "com" is static and not to be translated. It refers to -#. serial ports e.g. com1. -#. -#: grub-core/loader/i386/bsd.c:175 -msgid "[ADDR|comUNIT][,SPEED]" -msgstr "[OSOITE|comYKSIKKÖ][,NOPEUS]" - -#: grub-core/loader/i386/bsd.c:489 grub-core/loader/i386/bsd.c:555 -msgid "name" -msgstr "nimi" - -#: grub-core/loader/i386/bsd.c:489 grub-core/loader/i386/bsd.c:555 -msgid "type" -msgstr "tyyppi" - -#: grub-core/loader/i386/bsd.c:489 grub-core/loader/i386/bsd.c:555 -msgid "addr" -msgstr "osoite" - -#: grub-core/loader/i386/bsd.c:490 grub-core/loader/i386/bsd.c:556 -msgid "size" -msgstr "koko" - -#: grub-core/loader/i386/bsd.c:1147 grub-core/loader/i386/linux.c:466 -#: grub-core/loader/i386/xnu.c:1030 -msgid "Booting in blind mode" -msgstr "Käynnistä sokkona" - -#: grub-core/loader/i386/bsd.c:2137 -msgid "Load kernel of FreeBSD." -msgstr "Lataa FreeBSD-käyttöjärjestelmäydin." - -#: grub-core/loader/i386/bsd.c:2140 -msgid "Load kernel of OpenBSD." -msgstr "Lataa OpenBSD-käyttöjärjestelmäydin." - -#: grub-core/loader/i386/bsd.c:2143 -msgid "Load kernel of NetBSD." -msgstr "Lataa NetBSD-käyttöjärjestelmäydin." - -#: grub-core/loader/i386/bsd.c:2147 -msgid "Load FreeBSD env." -msgstr "Lataa FreeBSD-ymp." - -#: grub-core/loader/i386/bsd.c:2150 -msgid "Load FreeBSD kernel module." -msgstr "Lataa FreeBSD-ydinmoduuli." - -#: grub-core/loader/i386/bsd.c:2153 -msgid "Load NetBSD kernel module." -msgstr "Lataa NetBSD-ydinmoduuli." - -#: grub-core/loader/i386/bsd.c:2156 -msgid "Load NetBSD kernel module (ELF)." -msgstr "Lataa NetBSD-ydinmoduuli (ELF)." - -#: grub-core/loader/i386/bsd.c:2159 -msgid "Load FreeBSD kernel module (ELF)." -msgstr "Lataa FreeBSD-ydinmoduuli (ELF)." - -#. TRANSLATORS: ramdisk isn't identifier, -#. it can be translated. -#: grub-core/loader/i386/bsd.c:2165 -msgid "Load kOpenBSD ramdisk." -msgstr "Lataa kOpenBSD-ramlevy." - -#. TRANSLATORS: "payload" is a term used -#. by coreboot and must be translated in -#. sync with coreboot. If unsure, -#. let it untranslated. -#: grub-core/loader/i386/coreboot/chainloader.c:510 -msgid "Load another coreboot payload" -msgstr "Lataa toinen coreboot-kuorma" - -#: grub-core/loader/i386/linux.c:876 -msgid "Legacy `ask' parameter no longer supported." -msgstr "Perinne-â€askâ€-parametriä ei enää tueta." - -#: grub-core/loader/i386/linux.c:892 grub-core/loader/i386/linux.c:902 -#: grub-core/loader/i386/linux.c:932 -#, c-format -msgid "%s is deprecated. Use set gfxpayload=%s before linux command instead.\n" -msgstr "" -"%s on vanhentunut. Käytä sen sijaan â€set gfxpayload=%s†ennen linux-" -"komentoa.\n" - -#. TRANSLATORS: "x" has to be entered in, like an identifier, -#. so please don't use better Unicode codepoints. -#: grub-core/loader/i386/linux.c:915 -#, c-format -msgid "" -"%s is deprecated. VGA mode %d isn't recognized. Use set " -"gfxpayload=WIDTHxHEIGHT[xDEPTH] before linux command instead.\n" -msgstr "" -"%s on vanhentunut. VGA-tilaa %d ei tunnistettu. Käytä sen sijaan â€set " -"gfxpayload=LEVEYSxKORKEUS[xSYVYYS]†ennen linux-komentoa.\n" - -#: grub-core/loader/i386/pc/chainloader.c:302 -msgid "[--force|--bpb] FILE" -msgstr "[--force|--bpb] TIEDOSTO" - -# paikankorvaajasta tulee "core_path" -#: grub-core/loader/i386/pc/freedos.c:148 util/setup.c:293 -#, c-format -msgid "the size of `%s' is too large" -msgstr "ydinpolun â€%s†koko on liian suuri" - -#: grub-core/loader/i386/pc/freedos.c:183 -msgid "Load FreeDOS kernel.sys." -msgstr "Lataa FreeDOS-kernel.sys." - -#: grub-core/loader/i386/pc/ntldr.c:155 -msgid "Load NTLDR or BootMGR." -msgstr "Lataa NTLDR tai BootMGR." - -#. TRANSLATORS: it's about guessing which GRUB disk -#. is which Plan9 disk. If your language has no -#. word "mapping" you can use another word which -#. means that the GRUBDEVICE and PLAN9DEVICE are -#. actually the same device, just named differently -#. in OS and GRUB. -#: grub-core/loader/i386/pc/plan9.c:59 -msgid "Override guessed mapping of Plan9 devices." -msgstr "Ohita Plan9-laitteiden arvattu kuvaus." - -#: grub-core/loader/i386/pc/plan9.c:60 -msgid "GRUBDEVICE=PLAN9DEVICE" -msgstr "GRUBDEVICE=PLAN9DEVICE" - -#: grub-core/loader/i386/pc/plan9.c:599 -msgid "KERNEL ARGS" -msgstr "YDIN ARGUMENTIT" - -#: grub-core/loader/i386/pc/plan9.c:599 -msgid "Load Plan9 kernel." -msgstr "Lataa Plan9-ydin." - -#: grub-core/loader/i386/pc/pxechainloader.c:161 -msgid "Load a PXE image." -msgstr "Lataa PXE-levykuva." - -#: grub-core/loader/i386/pc/truecrypt.c:226 -msgid "Load Truecrypt ISO." -msgstr "Lataa Truecrypt ISO." - -#: grub-core/loader/i386/xen.c:781 grub-core/loader/i386/xen.c:865 -msgid "initrd already loaded" -msgstr "initrd on jo ladattu" - -#: grub-core/loader/i386/xen.c:968 -msgid "Load module." -msgstr "Lataa moduuli." - -#: grub-core/loader/i386/xnu.c:1003 -msgid "Press any key to launch xnu" -msgstr "Käynnistä xnu painamalla mitä tahansa näppäintä" - -#. TRANSLATORS: `device-properties' -#. is a variable name, -#. not a program. -#: grub-core/loader/i386/xnu.c:1159 -msgid "Load `device-properties' dump." -msgstr "Lataa â€device-propertiesâ€-vedos." - -#: grub-core/loader/ia64/efi/linux.c:124 -msgid "Could not locate FPSWA driver" -msgstr "FPSWA-ajurin paikantaminen epäonnistui" - -#: grub-core/loader/ia64/efi/linux.c:132 -msgid "FPSWA protocol wasn't able to find the interface" -msgstr "FPSWA-yhteyskäytäntö ei kykene löytämään rajapintaa" - -#: grub-core/loader/ia64/efi/linux.c:580 -msgid "No FPSWA found" -msgstr "FPSWAta ei löytynyt" - -#: grub-core/loader/ia64/efi/linux.c:582 -#, c-format -msgid "FPSWA revision: %x\n" -msgstr "FPSWA-korjausversio: %x\n" - -#: grub-core/loader/ia64/efi/linux.c:591 -msgid "FILE [ARGS...]" -msgstr "TIEDOSTO [ARGUMENTIT ...]" - -#: grub-core/loader/ia64/efi/linux.c:597 -msgid "Display FPSWA version." -msgstr "Näytä FPSWA-versio." - -#: grub-core/loader/multiboot.c:248 -msgid "WARNING: no console will be available to OS" -msgstr "VAROITUS: pääteikkunaa ei ole saatavissa käyttöjärjestelmään" - -# Multiboot viittaa Multiboot-määrittelyyn. Katso http://www.gnu.org/software/grub/manual/multiboot/multiboot.html -#: grub-core/loader/multiboot.c:450 -msgid "Load a multiboot 2 kernel." -msgstr "Lataa multiboot2-ydin." - -# Multiboot viittaa Multiboot-määrittelyyn. Katso http://www.gnu.org/software/grub/manual/multiboot/multiboot.html -#: grub-core/loader/multiboot.c:453 -msgid "Load a multiboot 2 module." -msgstr "Lataa multiboot2-moduuli." - -# Multiboot viittaa Multiboot-määrittelyyn. Katso http://www.gnu.org/software/grub/manual/multiboot/multiboot.html -#: grub-core/loader/multiboot.c:456 -msgid "Load a multiboot kernel." -msgstr "Lataa multiboot-ydin." - -# Multiboot viittaa Multiboot-määrittelyyn. Katso http://www.gnu.org/software/grub/manual/multiboot/multiboot.html -#: grub-core/loader/multiboot.c:459 -msgid "Load a multiboot module." -msgstr "Lataa multiboot-moduuli." - -#: grub-core/loader/riscv/linux.c:30 grub-core/loader/riscv/linux.c:40 -#, fuzzy -msgid "Linux not supported yet" -msgstr "tulkkausta ei tueta" - -#: grub-core/loader/xnu.c:1416 grub-core/term/gfxterm_background.c:45 -msgid "Background image mode." -msgstr "Taustakuvatila." - -#. TRANSLATORS: This refers to background image mode (stretched or -#. in left-top corner). Note that GRUB will accept only original -#. keywords stretch and normal, not the translated ones. -#. So please put both in translation -#. e.g. stretch(=%STRETCH%)|normal(=%NORMAL%). -#. The percents mark the translated version. Since many people -#. may not know the word stretch or normal I recommend -#. putting the translation either here or in "Background image mode." -#. string. -#: grub-core/loader/xnu.c:1416 grub-core/term/gfxterm_background.c:55 -msgid "stretch|normal" -msgstr "stretch|normal" - -#: grub-core/loader/xnu.c:1482 -msgid "Load XNU image." -msgstr "Lataa XNU-levykuva." - -#: grub-core/loader/xnu.c:1484 -msgid "Load 64-bit XNU image." -msgstr "Lataa 64-bittinen XNU-levykuva." - -#: grub-core/loader/xnu.c:1486 -msgid "Load XNU extension package." -msgstr "Lataa XNU-laajennuspakkaus." - -#: grub-core/loader/xnu.c:1488 -msgid "Load XNU extension." -msgstr "Lataa XNU-laajennus." - -#. TRANSLATORS: OSBundleRequired is a -#. variable name in xnu extensions -#. manifests. It behaves mostly like -#. GNU/Linux runlevels. -#. -#: grub-core/loader/xnu.c:1495 -msgid "DIRECTORY [OSBundleRequired]" -msgstr "HAKEMISTO [OSBundleRequired]" - -#. TRANSLATORS: There are many extensions -#. in extension directory. -#: grub-core/loader/xnu.c:1498 -msgid "Load XNU extension directory." -msgstr "Lataa XNU-laajennushakemisto." - -#. TRANSLATORS: ramdisk here isn't identifier. It can be translated. -#: grub-core/loader/xnu.c:1501 -msgid "Load XNU ramdisk. It will be available in OS as md0." -msgstr "" -"Lataa XNU-ramlevy. Käyttöjärjestelmässä se on käytettävissä nimellä md0." - -#: grub-core/loader/xnu.c:1505 -msgid "Load a splash image for XNU." -msgstr "Lataa tervetulokuva XNU:lle." - -#: grub-core/loader/xnu.c:1510 -msgid "Load an image of hibernated XNU." -msgstr "Lataa XNU-lepotilalevykuva." - -#: grub-core/mmap/mmap.c:538 -msgid "ADDR1,MASK1[,ADDR2,MASK2[,...]]" -msgstr "OSOITE,PEITE1[,OSOITE2,PEITE2[,...]]" - -#: grub-core/mmap/mmap.c:539 -msgid "Declare memory regions as faulty (badram)." -msgstr "Esittele muistialueet viallisena (badram)." - -#: grub-core/mmap/mmap.c:541 -msgid "FROM[K|M|G] TO[K|M|G]" -msgstr "KOHTEESTA[K|M|G] KOHTEESEEN[K|M|G]" - -#: grub-core/mmap/mmap.c:542 -msgid "Remove any memory regions in specified range." -msgstr "Poista kaikki muistialueet määritellyltä alueelta." - -#: grub-core/net/bootp.c:653 -msgid "four arguments expected" -msgstr "odotettiin neljä argumenttia" - -#: grub-core/net/bootp.c:661 grub-core/net/net.c:1155 -#, c-format -msgid "unrecognised network interface `%s'" -msgstr "tunnistamaton verkkorajapinta â€%sâ€" - -#: grub-core/net/bootp.c:664 -msgid "no DHCP info found" -msgstr "DHCP-tietoja ei löytynyt" - -#: grub-core/net/bootp.c:674 -msgid "no DHCP options found" -msgstr "DHCP-valitsimia ei löytynyt" - -#: grub-core/net/bootp.c:682 -#, fuzzy -msgid "invalid DHCP option code" -msgstr "DHCP-valitsimia ei löytynyt" - -#: grub-core/net/bootp.c:686 -#, fuzzy, c-format -msgid "no DHCP option %u found" -msgstr "DHCP-valitsinta %d ei löytynyt" - -#: grub-core/net/bootp.c:743 -#, c-format -msgid "unrecognised DHCP option format specification `%s'" -msgstr "tunnistamaton DHCP-valitsinmuotomäärittely â€%sâ€" - -#: grub-core/net/bootp.c:767 -msgid "no network card found" -msgstr "verkkokorttia ei löytynyt" - -#: grub-core/net/bootp.c:859 grub-core/net/net.c:389 -#, c-format -msgid "couldn't autoconfigure %s" -msgstr "kohteen %s asettaminen automaattisesti epäonnistui" - -#: grub-core/net/bootp.c:873 grub-core/net/bootp.c:876 -msgid "[CARD]" -msgstr "[KORTTI]" - -#: grub-core/net/bootp.c:874 -msgid "perform a bootp autoconfiguration" -msgstr "suorita automaattinen bootp-asetus" - -#: grub-core/net/bootp.c:877 -#, fuzzy -msgid "perform a DHCP autoconfiguration" -msgstr "suorita automaattinen bootp-asetus" - -#: grub-core/net/bootp.c:879 -msgid "VAR INTERFACE NUMBER DESCRIPTION" -msgstr "MUUTTUJA RAJAPINTA NUMERO KUVAUS" - -#: grub-core/net/bootp.c:880 -msgid "" -"retrieve DHCP option and save it into VAR. If VAR is - then print the value." -msgstr "" -"nouda DHCP-valitsin ja tallenna se MUUTTUJAan. Jos MUUTTUJA on - niin " -"tulosta arvo." - -#: grub-core/net/dns.c:459 -msgid "no DNS servers configured" -msgstr "DNS-palvelimia ei ole asetettu" - -#: grub-core/net/dns.c:522 -msgid "domain name component is too long" -msgstr "verkkotunnuskomponentti on liian pitkä" - -#: grub-core/net/dns.c:618 grub-core/net/dns.c:666 -msgid "no DNS record found" -msgstr "DNS-tietuetta ei löytynyt" - -#: grub-core/net/dns.c:626 -msgid "no DNS reply received" -msgstr "ei vastaanotettu DNS-vastausta" - -#: grub-core/net/dns.c:682 -msgid "only ipv4" -msgstr "vain ipv4" - -#: grub-core/net/dns.c:686 -msgid "only ipv6" -msgstr "vain ipv6" - -#: grub-core/net/dns.c:690 -msgid "prefer ipv4" -msgstr "etusija ipv4:lle" - -#: grub-core/net/dns.c:694 -msgid "prefer ipv6" -msgstr "etusija ipv6:lle" - -#: grub-core/net/dns.c:759 -msgid "ADDRESS DNSSERVER" -msgstr "OSOITE DNSPALVELIN" - -#: grub-core/net/dns.c:760 -msgid "Perform a DNS lookup" -msgstr "Suorita DNS-haku" - -#: grub-core/net/dns.c:762 grub-core/net/dns.c:765 -msgid "DNSSERVER" -msgstr "DNSSERVER" - -#: grub-core/net/dns.c:763 -msgid "Add a DNS server" -msgstr "Lisää DNS-palvelin" - -#: grub-core/net/dns.c:766 -msgid "Remove a DNS server" -msgstr "Poista DNS-palvelin" - -#: grub-core/net/dns.c:768 -msgid "List DNS servers" -msgstr "Luettele DNS-palvelimet" - -#: grub-core/net/drivers/efi/efinet.c:49 grub-core/net/drivers/efi/efinet.c:65 -#: grub-core/net/drivers/efi/efinet.c:77 grub-core/net/drivers/emu/emunet.c:62 -#: grub-core/net/drivers/i386/pc/pxe.c:273 -#: grub-core/net/drivers/ieee1275/ofnet.c:75 -#: grub-core/net/drivers/uboot/ubootnet.c:62 -msgid "couldn't send network packet" -msgstr "verkkopaketin lähettäminen epäonnistui" - -#: grub-core/net/drivers/ieee1275/ofnet.c:326 -#: grub-core/net/drivers/ieee1275/ofnet.c:359 -msgid "interpret is not supported" -msgstr "tulkkausta ei tueta" - -#: grub-core/net/drivers/ieee1275/ofnet.c:336 -msgid "alloc-mem failed" -msgstr "alloc-men epäonnistui" - -#: grub-core/net/drivers/ieee1275/ofnet.c:370 -msgid "free-mem failed" -msgstr "free-men epäonnistui" - -#: grub-core/net/http.c:105 -msgid "unsupported HTTP response" -msgstr "tukematon HTTP-vastaus" - -#. TRANSLATORS: GRUB HTTP code is pretty young. So even perfectly -#. valid answers like 403 will trigger this very generic message. -#: grub-core/net/http.c:126 -#, c-format -msgid "unsupported HTTP error %d: %s" -msgstr "tukematon HTTP-virhe %d: %s" - -#: grub-core/net/http.c:429 grub-core/net/tftp.c:420 -#, c-format -msgid "time out opening `%s'" -msgstr "aikavalvonta avattaessa kohdetta â€%sâ€" - -#: grub-core/net/net.c:179 -msgid "timeout: could not resolve hardware address" -msgstr "aikavalvonta: laitteisto-osoiteen ratkaiseminen epäonnistui" - -#: grub-core/net/net.c:548 -#, c-format -msgid "unresolvable address %s" -msgstr "ratkaisematon osoite %s" - -#: grub-core/net/net.c:594 -#, c-format -msgid "unrecognised network address `%s'" -msgstr "tunnistamaton verkko-osoite â€%sâ€" - -#: grub-core/net/net.c:661 -msgid "destination unreachable" -msgstr "kohde saavuttamaton" - -#. TRANSLATORS: route loop is a condition when e.g. -#. to contact server A you need to go through B -#. and to contact B you need to go through A. -#: grub-core/net/net.c:684 -msgid "route loop detected" -msgstr "reittisilmukka havaittu" - -#: grub-core/net/net.c:700 -msgid "address not found" -msgstr "osoitetta ei löytynyt" - -#: grub-core/net/net.c:704 -msgid "you can't delete this address" -msgstr "tämän osoitteen poistaminen epäonnistui" - -#: grub-core/net/net.c:776 grub-core/net/net.c:792 -#, c-format -msgid "Unsupported hw address type %d\n" -msgstr "Tukematon laitteisto-osoitetyyppi %d\n" - -#: grub-core/net/net.c:813 -#, c-format -msgid "Unsupported address type %d\n" -msgstr "Tukematon osoitetyyppi %d\n" - -#: grub-core/net/net.c:1017 grub-core/net/net.c:1131 -msgid "three arguments expected" -msgstr "odotettiin kolmea argumenttia" - -#: grub-core/net/net.c:1023 -msgid "card not found" -msgstr "korttia ei löytynyt" - -#. TRANSLATORS: it refers to the network address. -#: grub-core/net/net.c:1167 -msgid "temporary" -msgstr "tilapäinen" - -#: grub-core/net/net.c:1190 -#, c-format -msgid "Unknown address type %d\n" -msgstr "Tuntematon osoitetyyppi %d\n" - -#: grub-core/net/net.c:1298 -msgid "no server is specified" -msgstr "palvelinta ei ole määritelty" - -#: grub-core/net/net.c:1637 -#, c-format -msgid "timeout reading `%s'" -msgstr "aikavalvonta laukesi luettaessa kohdetta â€%sâ€" - -#. TRANSLATORS: HWADDRESS stands for -#. "hardware address". -#: grub-core/net/net.c:1762 -msgid "SHORTNAME CARD ADDRESS [HWADDRESS]" -msgstr "LYHYTNIMI KORTTI OSOITE [LAITTEISTO-OSOITE]" - -#: grub-core/net/net.c:1763 -msgid "Add a network address." -msgstr "Lisää verkko-osoite." - -#: grub-core/net/net.c:1766 -msgid "[CARD [HWADDRESS]]" -msgstr "[KORTTI [LAITTEISTO-OSOITE]]" - -#: grub-core/net/net.c:1767 -msgid "Perform an IPV6 autoconfiguration" -msgstr "Suorita automaattinen IPV6-asetus" - -#: grub-core/net/net.c:1770 grub-core/net/net.c:1777 -msgid "SHORTNAME" -msgstr "LYHYTNIMI" - -#: grub-core/net/net.c:1771 -msgid "Delete a network address." -msgstr "Poista verkko-osoite." - -#. TRANSLATORS: "gw" is a keyword. -#: grub-core/net/net.c:1774 -msgid "SHORTNAME NET [INTERFACE| gw GATEWAY]" -msgstr "LYHYTNIMI NET [RAJAPINTA] gw YHDYSKÄYTÄVÄ]" - -#: grub-core/net/net.c:1775 -msgid "Add a network route." -msgstr "Lisää verkkoreitti." - -#: grub-core/net/net.c:1778 -msgid "Delete a network route." -msgstr "Poista verkkoreitti." - -#: grub-core/net/net.c:1780 -msgid "list network routes" -msgstr "luettele verkkoreitit" - -#: grub-core/net/net.c:1782 -msgid "list network cards" -msgstr "luettele verkkokortit" - -#: grub-core/net/net.c:1784 -msgid "list network addresses" -msgstr "luettele verkko-osoitteet" - -#: grub-core/net/tcp.c:681 -msgid "connection refused" -msgstr "yhteys kielletty" - -#: grub-core/net/tcp.c:684 -msgid "connection timeout" -msgstr "yhteysaikavalvonta" - -#: grub-core/normal/auth.c:220 -msgid "Enter username: " -msgstr "Kirjoita käyttäjänimi: " - -#: grub-core/normal/auth.c:269 -msgid "[USERLIST]" -msgstr "[KÄYTTÄJÄLUETTELO]" - -#: grub-core/normal/auth.c:270 -msgid "Check whether user is in USERLIST." -msgstr "Tarkista onko käyttäjä USERLIST-luettelossa." - -#: grub-core/normal/cmdline.c:174 grub-core/normal/menu_entry.c:1068 -msgid "Possible commands are:" -msgstr "Mahdollisia komentoja ovat:" - -#: grub-core/normal/cmdline.c:177 grub-core/normal/menu_entry.c:1072 -msgid "Possible devices are:" -msgstr "Mahdollisia laitteita ovat:" - -#: grub-core/normal/cmdline.c:180 grub-core/normal/menu_entry.c:1076 -msgid "Possible files are:" -msgstr "Mahdollisia tiedostoja ovat:" - -#: grub-core/normal/cmdline.c:183 grub-core/normal/menu_entry.c:1080 -msgid "Possible partitions are:" -msgstr "Mahdollisia osioita ovat:" - -#: grub-core/normal/cmdline.c:186 grub-core/normal/menu_entry.c:1084 -msgid "Possible arguments are:" -msgstr "Mahdollisia argumentteja ovat:" - -#. TRANSLATORS: this message is used if none of above matches. -#. This shouldn't happen but please use the general term for -#. "thing" or "object". -#: grub-core/normal/cmdline.c:192 grub-core/normal/menu_entry.c:1088 -msgid "Possible things are:" -msgstr "Mahdollisia asioita ovat:" - -# edustavärin ja taustavärin välissä kauttaviiva väriparissa -#: grub-core/normal/color.c:81 -#, c-format -msgid "Warning: syntax error (missing slash) in `%s'\n" -msgstr "Varoitus: syntaksivirhe (puuttuu /-merkki) värinimiparissa â€%sâ€\n" - -#: grub-core/normal/color.c:90 -#, c-format -msgid "Warning: invalid foreground color `%s'\n" -msgstr "Varoitus: virheellinen edustaväri â€%sâ€\n" - -#: grub-core/normal/color.c:96 -#, c-format -msgid "Warning: invalid background color `%s'\n" -msgstr "Varoitus: virheellinen taustaväri â€%sâ€\n" - -#: grub-core/normal/context.c:206 -msgid "ENVVAR [ENVVAR] ..." -msgstr "ENVVAR [ENVVAR] ..." - -#: grub-core/normal/context.c:207 -msgid "Export variables." -msgstr "Vie muuttujat." - -#: grub-core/normal/datetime.c:25 -msgid "Sunday" -msgstr "Sunnuntai" - -#: grub-core/normal/datetime.c:26 -msgid "Monday" -msgstr "Maanantai" - -#: grub-core/normal/datetime.c:27 -msgid "Tuesday" -msgstr "Tiistai" - -#: grub-core/normal/datetime.c:28 -msgid "Wednesday" -msgstr "Keskiviikko" - -#: grub-core/normal/datetime.c:29 -msgid "Thursday" -msgstr "Torstai" - -#: grub-core/normal/datetime.c:30 -msgid "Friday" -msgstr "Perjantai" - -#: grub-core/normal/datetime.c:31 -msgid "Saturday" -msgstr "Lauantai" - -#: grub-core/normal/dyncmd.c:187 -msgid "module isn't loaded" -msgstr "moduulia ei ole ladattu" - -#: grub-core/normal/main.c:211 -#, c-format -msgid "GNU GRUB version %s" -msgstr "GNU GRUB -versio %s" - -#: grub-core/normal/main.c:360 -msgid "ESC at any time exits." -msgstr "Poistuu aina ESC-näppäimellä." - -#: grub-core/normal/main.c:363 -#, c-format -msgid "" -"Minimal BASH-like line editing is supported. For the first word, TAB lists " -"possible command completions. Anywhere else TAB lists possible device or " -"file completions. %s" -msgstr "" -"Minimaalista BASHin kaltaista rivimuokkausta tuetaan. Ensimmäisen sanan " -"kohdalla SARKAIN luettelee mahdolliset komentojen täydennykset. Kaikkialla " -"muualla SARKAIN luettelee mahdolliset laite- tai tiedostotäydennykset. %s" - -#. TRANSLATORS: it's command line prompt. -#: grub-core/normal/main.c:395 -msgid ">" -msgstr ">" - -#. TRANSLATORS: it's command line prompt. -#: grub-core/normal/main.c:398 -msgid "grub>" -msgstr "grub>" - -#: grub-core/normal/main.c:518 -msgid "Clear the screen." -msgstr "Tyhjennä näyttö." - -#: grub-core/normal/main.c:527 -msgid "Enter normal mode." -msgstr "Siirry normaalitilaan." - -#: grub-core/normal/main.c:529 -msgid "Exit from normal mode." -msgstr "Poistu normaalitilasta." - -#: grub-core/normal/menu.c:66 grub-core/normal/menu_entry.c:1449 -msgid "Press any key to continue..." -msgstr "Jatka painamalla mitä tahansa näppäintä..." - -#: grub-core/normal/menu.c:815 -#, c-format -msgid "Booting `%s'" -msgstr "Käynnistetään â€%sâ€" - -#: grub-core/normal/menu.c:827 -#, c-format -msgid "Falling back to `%s'" -msgstr "Palataan takaisin kohteeseen â€%sâ€" - -#: grub-core/normal/menu.c:843 -msgid "Failed to boot both default and fallback entries.\n" -msgstr "Sekä oletus- että varmistuslevyjen käynnistys epäonnistui.\n" - -#: grub-core/normal/menu_entry.c:1171 -msgid "Booting a command list" -msgstr "Käynnistetään komentoluettelo" - -#: grub-core/normal/menu_text.c:160 -msgid "" -"Minimum Emacs-like screen editing is supported. TAB lists completions. Press " -"Ctrl-x or F10 to boot, Ctrl-c or F2 for a command-line or ESC to discard " -"edits and return to the GRUB menu." -msgstr "" -"Minimaalista Emacsin kaltaista näyttömuokkausta tuetaan. SARKAIN luettelee " -"täydennykset. Käynnistä painamalla Ctrl-x tai F10, siirry komentoriville " -"painamalla Ctrl-c tai F2 tai hylkää muokkaukset ja palaa valikkoon " -"painamalla ESC." - -#: grub-core/normal/menu_text.c:170 -#, c-format -msgid "Use the %C and %C keys to select which entry is highlighted." -msgstr "%C ja %C valitsee korostetun valikkorivin." - -#. TRANSLATORS: that's the list of binary unit prefixes. -#: grub-core/normal/misc.c:38 -msgid "B" -msgstr "B" - -#: grub-core/normal/misc.c:38 -msgid "KiB" -msgstr "kibitavua" - -#: grub-core/normal/misc.c:38 -msgid "MiB" -msgstr "mebitavua" - -#: grub-core/normal/misc.c:38 -msgid "GiB" -msgstr "gibitavua" - -#: grub-core/normal/misc.c:38 -msgid "TiB" -msgstr "tebitavua" - -#: grub-core/normal/misc.c:38 -msgid "PiB" -msgstr "pebitavua" - -#. TRANSLATORS: that's the list of binary unit prefixes. -#: grub-core/normal/misc.c:40 -msgid "K" -msgstr "Ki" - -#: grub-core/normal/misc.c:40 -msgid "M" -msgstr "Mi" - -#: grub-core/normal/misc.c:40 -msgid "G" -msgstr "Gi" - -#: grub-core/normal/misc.c:40 -msgid "T" -msgstr "Ti" - -#: grub-core/normal/misc.c:40 -msgid "P" -msgstr "Pi" - -#. TRANSLATORS: that's the list of binary unit prefixes. -#: grub-core/normal/misc.c:42 -msgid "B/s" -msgstr "B/s" - -#: grub-core/normal/misc.c:42 -msgid "KiB/s" -msgstr "kibitavua/s" - -#: grub-core/normal/misc.c:42 -msgid "MiB/s" -msgstr "mebitavua/s" - -#: grub-core/normal/misc.c:42 -msgid "GiB/s" -msgstr "gibitavua/s" - -#: grub-core/normal/misc.c:42 -msgid "TiB/s" -msgstr "tebitavus/s" - -#: grub-core/normal/misc.c:42 -msgid "PiB/s" -msgstr "pebitavua/s" - -#: grub-core/normal/misc.c:96 -#, c-format -msgid "Partition %s:" -msgstr "Osio %s:" - -#: grub-core/normal/misc.c:101 -#, c-format -msgid "Device %s:" -msgstr "Laite %s:" - -#: grub-core/normal/misc.c:107 -msgid "Filesystem cannot be accessed" -msgstr "Tiedostojärjestelmään ei päästä" - -#: grub-core/normal/misc.c:121 -#, c-format -msgid "Filesystem type %s" -msgstr "Tiedostojärjestelmätyyppi %s" - -#: grub-core/normal/misc.c:131 -#, c-format -msgid "- Label `%s'" -msgstr "- Nimiö â€%sâ€" - -#. TRANSLATORS: Arguments are year, month, day, hour, minute, -#. second, day of the week (translated). -#: grub-core/normal/misc.c:148 -#, c-format -msgid "- Last modification time %d-%02d-%02d %02d:%02d:%02d %s" -msgstr "- Viimeinen muokkausaika %3$d.%2$d.%1$d %4$d:%5$d:%6$d %7$s" - -#: grub-core/normal/misc.c:171 -msgid "No known filesystem detected" -msgstr "Tuntematon tiedostojärjestelmä havaittu" - -#: grub-core/normal/misc.c:174 -#, c-format -msgid " - Partition start at %llu%sKiB" -msgstr " - Osiotaulu alkaa osoitteesta %llu%s kibitavua" - -#: grub-core/normal/misc.c:178 -#, c-format -msgid " - Sector size %uB" -msgstr " - Sektorikoko %uB" - -#: grub-core/normal/misc.c:180 -msgid " - Total size unknown" -msgstr " - Kokonaiskoko tuntematon" - -#: grub-core/normal/misc.c:182 -#, c-format -msgid " - Total size %llu%sKiB" -msgstr " - Kokonaiskoko %llu%s kibitavua" - -#. TRANSLATORS: Replace dot with appropriate decimal separator for -#. your language. -#: grub-core/normal/misc.c:186 -msgid ".5" -msgstr ",5" - -#. TRANSLATORS: This has to fit on one line. It's ok to include few -#. words but don't write poems. -#: grub-core/normal/term.c:82 -msgid "--MORE--" -msgstr "--LISÄÄ--" - -#: grub-core/osdep/aros/config.c:92 grub-core/osdep/unix/config.c:137 -#: grub-core/osdep/windows/config.c:55 -#, c-format -msgid "cannot open configuration file `%s': %s" -msgstr "asetustiedoston â€%s†avaus epäonnistui: %s" - -#: grub-core/osdep/basic/compress.c:8 grub-core/osdep/basic/compress.c:14 -#: grub-core/osdep/basic/compress.c:20 -msgid "no compression is available for your platform" -msgstr "alustallesi ei ole saatavissa tiivistystä" - -#: grub-core/osdep/basic/no_platform.c:30 -#: grub-core/osdep/windows/platform.c:418 -msgid "no IEEE1275 routines are available for your platform" -msgstr "alustallesi ei ole saatavissa IEEE1275-rutiineja" - -#: grub-core/osdep/basic/no_platform.c:38 -msgid "no EFI routines are available for your platform" -msgstr "alustallesi ei ole saatavissa EFI-rutiineja" - -#: grub-core/osdep/basic/no_platform.c:45 -#: grub-core/osdep/windows/platform.c:425 -msgid "no SGI routines are available for your platform" -msgstr "alustallesi ei ole saatavissa SGI-rutiineja" - -#. TRANSLATORS: The OS itself may very well have a random -#. number generator but GRUB doesn't know how to access it. -#: grub-core/osdep/basic/random.c:42 -msgid "no random number generator is available for your OS" -msgstr "käyttöjärjestelmällesi ei ole saatavissa satunnaislukugeneraattoria" - -#: grub-core/osdep/devmapper/getroot.c:81 -msgid "Failed to create `device-mapper' tree" -msgstr "Epäonnistunut â€device-mapperâ€-puun luominen" - -#: grub-core/osdep/devmapper/getroot.c:197 -#: grub-core/osdep/freebsd/getroot.c:202 -#, c-format -msgid "can't mount encrypted volume `%s': %s" -msgstr "salaustaltion â€%s†liittäminen epäonnistui: %s" - -#. TRANSLATORS: geom is the name of (k)FreeBSD device framework. -#. Usually left untranslated. -#. -#: grub-core/osdep/freebsd/getroot.c:82 grub-core/osdep/freebsd/getroot.c:164 -#: grub-core/osdep/freebsd/getroot.c:258 grub-core/osdep/freebsd/getroot.c:316 -msgid "couldn't open geom" -msgstr "geom-laitteen avaus epäonnistui" - -#: grub-core/osdep/freebsd/getroot.c:182 grub-core/osdep/freebsd/getroot.c:277 -msgid "couldn't find geli consumer" -msgstr "geli-kuluttajan löytäminen epäonnistui" - -#: grub-core/osdep/freebsd/getroot.c:282 -msgid "couldn't retrieve geli UUID" -msgstr "geli UUID -tunnisteen noutaminen epäonnistui" - -#. TRANSLATORS: geom is the name of (k)FreeBSD device framework. -#. Usually left untranslated. "part" is the identifier of one of its -#. classes. -#: grub-core/osdep/freebsd/getroot.c:325 -msgid "couldn't find geom `part' class" -msgstr "geom â€part†-luokan avaus epäonnistui" - -#: grub-core/osdep/freebsd/hostdisk.c:72 grub-core/osdep/linux/hostdisk.c:93 -msgid "unaligned device size" -msgstr "tasaamaton laitekoko" - -#: grub-core/osdep/generic/blocklist.c:56 -#, c-format -msgid "attempting to read the core image `%s' from GRUB" -msgstr "yritetään lukea ydinlevykuvaa â€%s†GRUB:sta" - -#: grub-core/osdep/generic/blocklist.c:57 -#, c-format -msgid "attempting to read the core image `%s' from GRUB again" -msgstr "yritetään lukea ydinlevykuvaa â€%s†GRUB:sta uudelleen" - -# Ydinlevykuvan luku GRUBista epäonnistui maksimiyrityskertojen määrän -#: grub-core/osdep/generic/blocklist.c:115 -#, c-format -msgid "cannot read `%s' correctly" -msgstr "ydinlevykuvan â€%s†lukeminen oikein epäonnistui" - -#: grub-core/osdep/generic/blocklist.c:126 -msgid "failed to read the sectors of the core image" -msgstr "ydinlevykuvan sektoreiden lukeminen epäonnistui" - -#. TRANSLATORS: On GNU/Hurd, a "translator" is similar to a filesystem -#. mount, but handled by a userland daemon, whose invocation command line -#. is being fetched here. First %s is the file being looked at (for which -#. we are fetching the "translator" command line), second %s is the error -#. message. -#. -#: grub-core/osdep/hurd/getroot.c:79 -#, c-format -msgid "cannot get translator command line for path `%s': %s" -msgstr "translator-komentorivin saaminen polulle â€%s†epäonnistui: %s" - -#: grub-core/osdep/hurd/getroot.c:82 -#, c-format -msgid "translator command line is empty for path `%s'" -msgstr "translator-komentorivi on tyhjä polulle â€%sâ€" - -#. TRANSLATORS: we expect to get something like -#. /hurd/foobar --option1 --option2=baz /dev/something -#. -#: grub-core/osdep/hurd/getroot.c:98 -#, c-format -msgid "" -"translator `%s' for path `%s' has several non-option words, at least `%s' " -"and `%s'" -msgstr "" -"translator â€%s†polulle â€%s†on useita ei-valitsinsanoja, ainakin â€%s†ja " -"â€%sâ€" - -#. TRANSLATORS: we expect to get something like -#. /hurd/foobar --option1 --option2=baz /dev/something -#. -#: grub-core/osdep/hurd/getroot.c:109 -#, c-format -msgid "" -"translator `%s' for path `%s' is given only options, cannot find device part" -msgstr "" -"translator â€%s†polulle â€%s†annetaan vain valitsimia, laiteosan löytäminen " -"epäonnistui" - -#: grub-core/osdep/hurd/hostdisk.c:73 -#, c-format -msgid "Storage information for `%s' does not include type" -msgstr "Tallennusvälinetieto â€%s†ei sisällä tyyppiä" - -#: grub-core/osdep/hurd/hostdisk.c:75 -#, c-format -msgid "`%s' is not a local disk" -msgstr "â€%s†ei ole paikallinen levy" - -#: grub-core/osdep/hurd/hostdisk.c:78 -#, c-format -msgid "" -"Storage information for `%s' indicates neither a plain partition nor a plain " -"disk" -msgstr "" -"Varastotieto kohteelle â€%s†ei osoita pelkkää osioita eikä pelkkää levyä" - -#: grub-core/osdep/linux/blocklist.c:81 grub-core/osdep/linux/blocklist.c:96 -#: grub-core/osdep/linux/blocklist.c:122 -#, c-format -msgid "can't retrieve blocklists: %s" -msgstr "lohkoluetteloiden noutaminen epäonnistui: %s" - -#: grub-core/osdep/linux/blocklist.c:84 -msgid "blocksize is not divisible by 512" -msgstr "lohkokoko ei ole jaollinen numerolla 512" - -#: grub-core/osdep/linux/blocklist.c:86 -msgid "invalid zero blocksize" -msgstr "virheellinen nollalohkokoko" - -#: grub-core/osdep/linux/blocklist.c:90 util/setup.c:744 -msgid "can't retrieve blocklists" -msgstr "lohkoluetteloiden noutaminen epäonnistui" - -#: grub-core/osdep/linux/getroot.c:154 -#, c-format -msgid "ioctl RAID_VERSION error: %s" -msgstr "ioctl RAID_VERSION -virhe: %s" - -#: grub-core/osdep/linux/getroot.c:160 grub-core/osdep/linux/getroot.c:164 -#, c-format -msgid "unsupported RAID version: %d.%d" -msgstr "tukematon RAID-versio: %d.%d" - -#: grub-core/osdep/linux/getroot.c:169 -#, c-format -msgid "ioctl GET_ARRAY_INFO error: %s" -msgstr "ioctl GET_ARRAY_INFO -virhe: %s" - -#: grub-core/osdep/linux/getroot.c:178 -#, c-format -msgid "ioctl GET_DISK_INFO error: %s" -msgstr "ioctl GET_DISK_INFO -virhe: %s" - -#: grub-core/osdep/linux/getroot.c:608 grub-core/osdep/linux/getroot.c:678 -#: grub-core/osdep/linux/hostdisk.c:126 grub-core/osdep/unix/getroot.c:253 -#: grub-core/osdep/unix/getroot.c:642 grub-core/osdep/unix/platform.c:92 -#: grub-core/osdep/unix/platform.c:100 -#, c-format -msgid "Unable to open stream from %s: %s" -msgstr "Ei kyetä avamaan virtaa kohteelta %s: %s" - -#: grub-core/osdep/linux/getroot.c:1033 -#, c-format -msgid "unknown kind of RAID device `%s'" -msgstr "väärän tyyppinen RAID-laite â€%sâ€" - -#: grub-core/osdep/linux/ofpath.c:181 -#, c-format -msgid "`obppath' not found in parent dirs of `%s', no IEEE1275 name discovery" -msgstr "" -"â€obppath†ei löytynyt kohteen â€%s†äitihakemistoista, ei ole havaittu " -"IEEE1275-nimeä" - -#: grub-core/osdep/linux/ofpath.c:222 grub-core/osdep/unix/getroot.c:505 -#: grub-core/osdep/unix/getroot.c:529 grub-core/osdep/unix/relpath.c:49 -#: util/grub-install.c:984 util/grub-install.c:1331 util/grub-probe.c:323 -#, c-format -msgid "failed to get canonical path of `%s'" -msgstr "sääntöjen mukaisen â€%sâ€-polun saaminen epäonnistui" - -#: grub-core/osdep/linux/ofpath.c:740 -#, c-format -msgid "unknown device type %s" -msgstr "tuntematon laitetyyppi %s" - -#: grub-core/osdep/linux/ofpath.c:758 util/ieee1275/grub-ofpathname.c:39 -#, c-format -msgid "Usage: %s DEVICE\n" -msgstr "Käyttö: %s LAITE\n" - -#: grub-core/osdep/unix/exec.c:86 grub-core/osdep/unix/exec.c:172 -#: grub-core/osdep/unix/exec.c:217 -#, c-format -msgid "Unable to fork: %s" -msgstr "Ei kyetä fork-kutsumaan: %s" - -#: grub-core/osdep/unix/exec.c:166 grub-core/osdep/unix/exec.c:211 -#, c-format -msgid "Unable to create pipe: %s" -msgstr "Ei kyetä luomaan putkea: %s" - -#: grub-core/osdep/unix/getroot.c:370 -#, fuzzy -msgid "cannot save the original directory" -msgstr "alkuperäisen hakemiston palauttaminen epäonnistui" - -#: grub-core/osdep/unix/getroot.c:423 grub-core/osdep/unix/getroot.c:480 -#: grub-core/osdep/unix/getroot.c:489 -msgid "cannot restore the original directory" -msgstr "alkuperäisen hakemiston palauttaminen epäonnistui" - -#. TRANSLATORS: "stat" comes from the name of POSIX function. -#: grub-core/osdep/unix/getroot.c:551 grub-core/osdep/unix/hostdisk.c:61 -#: grub-core/osdep/unix/relpath.c:73 grub-core/osdep/unix/relpath.c:97 -#: util/getroot.c:160 util/getroot.c:162 util/grub-install.c:774 -#: util/grub-macbless.c:70 -#, c-format -msgid "cannot stat `%s': %s" -msgstr "stat â€%sâ€-kutsu epäonnistui: %s" - -#: grub-core/osdep/unix/hostdisk.c:293 -#, c-format -msgid "cannot make temporary file: %s" -msgstr "tilapäisen tiedoston tekeminen epäonnistui: %s" - -#: grub-core/osdep/unix/hostdisk.c:311 -#, c-format -msgid "cannot make temporary directory: %s" -msgstr "tilapäisen hakemiston tekeminen epäonnistui: %s" - -#: grub-core/osdep/unix/platform.c:77 -#, c-format -msgid "" -"couldn't find IEEE1275 device path for %s.\n" -"You will have to set `boot-device' variable manually" -msgstr "" -"IEEE1275-laitepolun löytäminen kohteelle %s epäonnistui.\n" -"Muuttuja â€boot-device†on asetettava manuaalisesti" - -#. TRANSLATORS: This message is shown when required executable `%s' -#. isn't found. -#: grub-core/osdep/unix/platform.c:149 grub-core/osdep/unix/platform.c:189 -#, c-format -msgid "%s: not found" -msgstr "%s: ei löytynyt" - -#: grub-core/osdep/unix/platform.c:225 -#, c-format -msgid "" -"`nvsetenv' failed. \n" -"You will have to set `boot-device' variable manually. At the IEEE1275 " -"prompt, type:\n" -" %s\n" -msgstr "" -"â€nvsetenv†epäonnistui. \n" -"Muuttuja â€boot-device†on asetettava manuaalisesti. Kirjoita IEEE1275-" -"kehotteella:\n" -" %s\n" - -#: grub-core/osdep/unix/platform.c:240 -msgid "You will have to set `SystemPartition' and `OSLoader' manually." -msgstr "Muuttujat â€SystemPartition†ja â€OSLoader†on asetettava manuaalisesti." - -#. TRANSLATORS: canonical pathname is the -#. complete one e.g. /etc/fstab. It has -#. to contain `/' normally, if it doesn't -#. we're in trouble and throw this error. -#: grub-core/osdep/unix/relpath.c:90 -msgid "no `/' in canonical filename" -msgstr "kauttaviiva â€/†puuttuu sääntöjenmukaisesta tiedostonimestä" - -#: grub-core/osdep/windows/hostdisk.c:151 -msgid "cygwin_conv_path() failed" -msgstr "cygwin_conv_path() epäonnistui" - -#: grub-core/osdep/windows/hostdisk.c:501 util/grub-install.c:570 -msgid "couldn't retrieve random data" -msgstr "satunnaisdatan noutaminen epäonnistui" - -#: grub-core/osdep/windows/platform.c:97 -msgid "Insufficient privileges to access firmware, assuming BIOS" -msgstr "" -"Riittämättömästi käyttöoikeuksia laiteohjelmistoon pääsemiseksi, otaksutaan " -"BIOS" - -#: grub-core/osdep/windows/platform.c:225 -msgid "no EFI routines are available when running in BIOS mode" -msgstr "suoritettaessa BIOS-tilassa EFI-rutiinit eivät ole saatavilla" - -#: grub-core/osdep/windows/platform.c:240 -msgid "unexpected EFI error" -msgstr "odottamaton EFI-virhe" - -#: grub-core/osdep/windows/platform.c:315 -msgid "Couldn't find a free BootNNNN slot" -msgstr "Vapaan BootNNNN-välin löytäminen epäonnistui" - -#: grub-core/partmap/gpt.c:191 -msgid "" -"this GPT partition label contains no BIOS Boot Partition; embedding won't be " -"possible" -msgstr "" -"tämä GPT-osionimiö ei sisällä BIOS-käynnistysosiota; upottaminen ei ole " -"mahdollista" - -#: grub-core/partmap/gpt.c:196 -msgid "your BIOS Boot Partition is too small; embedding won't be possible" -msgstr "" -"sinun BIOS-käynnistysosiosi on liian pieni; upottaminen ei ole mahdollista" - -#. TRANSLATORS: MBR gap and boot track is the same thing and is the space -#. between MBR and first partitition. If your language translates well only -#. "boot track", you can just use it everywhere. Next two messages are about -#. RAID controllers/software bugs which GRUB has to live with. Please spread -#. the message that these are bugs in other software and not merely -#. suboptimal behaviour. -#: grub-core/partmap/msdos.c:51 -#, c-format -msgid "" -"Sector %llu is already in use by raid controller `%s'; avoiding it. Please " -"ask the manufacturer not to store data in MBR gap" -msgstr "" -"Sektori %llu on jo raid-ohjaimen â€%s†käyttämä, vältä sektoria. Pyydä " -"valmistajaa olemaan tallentamatta tietoja MBR-väliin" - -#: grub-core/partmap/msdos.c:54 -#, c-format -msgid "" -"Sector %llu is already in use by the program `%s'; avoiding it. This " -"software may cause boot or other problems in future. Please ask its authors " -"not to store data in the boot track" -msgstr "" -"Sektori %llu on jo ohjelman â€%s†käyttämä, vältä sektoria. Tämä ohjelmisto " -"saattaa aiheuttaa tulevaisuudessa ongelmia käyttöjärjestelmän " -"käynnistämisessä tai muualla. Pyydä ohjelman tekijöitä olemaan tallentamatta " -"tietoja käynnistyssektorille." - -#: grub-core/partmap/msdos.c:384 -msgid "" -"other software is using the embedding area, and there is not enough room for " -"core.img. Such software is often trying to store data in a way that avoids " -"detection. We recommend you investigate" -msgstr "" -"jokin toinen ohjelmisto käyttää upotusaluetta ja siinä ei ole kylliksi tilaa " -"core.img -tiedostolle. Sellainen ohjelmisto yrittää usein tallentaa tietoja " -"välttääkseen havaitsemista. Suosittelemme tutkimaan asiaa" - -#: grub-core/partmap/msdos.c:395 -msgid "" -"this msdos-style partition label has no post-MBR gap; embedding won't be " -"possible" -msgstr "" -"tässä msdos-tyylisessä osionimiössä ei ole MBR:n jälkeistä aukkoa; " -"upottaminen ei ole mahdollista" - -#: grub-core/partmap/msdos.c:404 -msgid "your embedding area is unusually small. core.img won't fit in it." -msgstr "" -"upotettava alueesi on epätavallisen pieni. Tiedosto core.img ei mahdu " -"siihen." - -#: grub-core/parttool/msdospart.c:39 -msgid "Make partition active" -msgstr "Tee osiosta aktiivinen" - -#: grub-core/parttool/msdospart.c:51 -msgid "not a primary partition" -msgstr "ei ole ensisijainen osio" - -#: grub-core/parttool/msdospart.c:69 -#, c-format -msgid "Partition %d is active now. \n" -msgstr "Osio %d on nyt aktiivinen. \n" - -#: grub-core/parttool/msdospart.c:74 -#, c-format -msgid "Cleared active flag on %d. \n" -msgstr "Nollattu aktiivilippu kohteessa %d. \n" - -#: grub-core/parttool/msdospart.c:87 -msgid "Change partition type" -msgstr "Vaihda osiotyyppi" - -#: grub-core/parttool/msdospart.c:88 -msgid "Set `hidden' flag in partition type" -msgstr "Aseta â€hiddenâ€-lippu osiotyypissä" - -#: grub-core/parttool/msdospart.c:130 -#, c-format -msgid "the partition type 0x%x isn't valid" -msgstr "osiotyyppi 0x%x ei ole kelvollinen" - -#. TRANSLATORS: In this case we're actually writing to the disk and actively -#. modifying partition type rather than just defining it. -#: grub-core/parttool/msdospart.c:137 -#, c-format -msgid "Setting partition type to 0x%x\n" -msgstr "Asetetaan osiotyypiksi 0x%x\n" - -#. TRANSLATORS: 0 is a quantifier. "break" (similar to bash) -#. can be used e.g. to break 3 loops at once. -#. But asking it to break 0 loops makes no sense. -#: grub-core/script/execute.c:143 -msgid "can't break 0 loops" -msgstr "break 0 -silmukasta uloshyppääminen epäonnistui" - -#. TRANSLATORS: It's about not being -#. inside a function. "return" can be used only -#. in a function and this error occurs if it's used -#. anywhere else. -#: grub-core/script/execute.c:227 -msgid "not in function body" -msgstr "ei ole funktion sisällä" - -#: grub-core/script/execute.c:371 -#, c-format -msgid "invalid variable name `%s'" -msgstr "virheellinen muuttujanimi â€%sâ€" - -#: grub-core/script/execute.c:953 -msgid "cannot allocate command buffer" -msgstr "" - -#: grub-core/script/lexer.c:144 util/grub-fstest.c:330 -msgid "unexpected end of file" -msgstr "odottamaton tiedoston loppu" - -#: grub-core/script/main.c:55 grub-core/script/main.c:57 -#: grub-core/script/main.c:59 grub-core/script/main.c:67 -msgid "[NUM]" -msgstr "[NUM]" - -#: grub-core/script/main.c:55 -msgid "Exit from loops" -msgstr "Poistu silmukoista" - -#: grub-core/script/main.c:57 -msgid "Continue loops" -msgstr "Jatka silmukoita" - -#. TRANSLATORS: Positional arguments are -#. arguments $0, $1, $2, ... -#: grub-core/script/main.c:62 -msgid "Shift positional parameters." -msgstr "Vaihda sijaintiparametreja." - -#: grub-core/script/main.c:64 -msgid "[VALUE]..." -msgstr "[ARVO]..." - -#: grub-core/script/main.c:65 -msgid "Set positional parameters." -msgstr "Aseta sijaintiparametrit." - -#. TRANSLATORS: It's a command description -#. and "Return" is a verb, not a noun. The -#. command in question is "return" and -#. has exactly the same semanics as bash -#. equivalent. -#: grub-core/script/main.c:73 -msgid "Return from a function." -msgstr "Palaa funktiosta." - -#: grub-core/term/gfxterm_background.c:176 -msgid "[-m (stretch|normal)] FILE" -msgstr "[-m (stretch|normal)] TIEDOSTO" - -#: grub-core/term/gfxterm_background.c:177 -msgid "Load background image for active terminal." -msgstr "Lataa taustakuva aktiivipäätteelle." - -#: grub-core/term/gfxterm_background.c:182 util/grub-install.c:302 -#: util/grub-install.c:303 util/grub-mkrescue.c:107 util/grub-mkrescue.c:108 -#: util/grub-render-label.c:61 util/grub-render-label.c:63 -msgid "COLOR" -msgstr "VÄRI" - -#: grub-core/term/gfxterm_background.c:183 -msgid "Set background color for active terminal." -msgstr "Aseta taustaväri aktiivipäätteelle." - -#: grub-core/term/i386/coreboot/cbmemc.c:139 -msgid "Show CBMEM console content." -msgstr "Näytä CBMEM-pääteikkunasisältö." - -#: grub-core/term/serial.c:57 -msgid "Set the serial unit." -msgstr "Aseta sarjayksikkö." - -#: grub-core/term/serial.c:58 -msgid "Set the serial port address." -msgstr "Aseta sarjaporttiosoite." - -#: grub-core/term/serial.c:59 -msgid "Set the serial port speed." -msgstr "Aseta sarjaporttinopeus." - -#: grub-core/term/serial.c:60 -msgid "Set the serial port word length." -msgstr "Aseta sarjaportin sanapituus." - -#: grub-core/term/serial.c:61 -msgid "Set the serial port parity." -msgstr "Aseta sarjaportin pariteetti." - -#: grub-core/term/serial.c:62 -msgid "Set the serial port stop bits." -msgstr "Aseta sarjaportin stop-bitit." - -#: grub-core/term/serial.c:63 -msgid "Set the base frequency." -msgstr "Aseta perustaajuus." - -#: grub-core/term/serial.c:64 -msgid "Enable/disable RTS/CTS." -msgstr "Ota käyttöön/poista käytöstä RTS/CTS." - -#: grub-core/term/serial.c:218 -#, c-format -msgid "serial port `%s' isn't found" -msgstr "sarjaporttia â€%s†ei löytynyt" - -#: grub-core/term/serial.c:254 -msgid "unsupported serial port flow control" -msgstr "tukematon sarjaporttivirtaohjaus" - -#: grub-core/term/serial.c:429 -msgid "[OPTIONS...]" -msgstr "[VALITSIMET...]" - -#: grub-core/term/serial.c:430 -msgid "Configure serial port." -msgstr "Aseta sarjaportti." - -#: grub-core/term/terminfo.c:184 -#, c-format -msgid "unknown terminfo type `%s'" -msgstr "tuntematon terminfo-tyyppi â€%sâ€" - -#: grub-core/term/terminfo.c:668 -msgid "ASCII" -msgstr "ASCII" - -#: grub-core/term/terminfo.c:671 -msgid "UTF-8" -msgstr "UTF-8" - -#. TRANSLATORS: visually ordered UTF-8 is a non-compliant encoding -#. based on UTF-8 with right-to-left languages written in reverse. -#. Used on some terminals. Normal UTF-8 is refered as -#. "logically-ordered UTF-8" by opposition. -#: grub-core/term/terminfo.c:677 -msgid "visually-ordered UTF-8" -msgstr "visuaalisesti järjestetty UTF-8" - -#: grub-core/term/terminfo.c:680 -msgid "Unknown encoding" -msgstr "Tuntematon koodaus" - -#: grub-core/term/terminfo.c:684 -msgid "Current terminfo types:" -msgstr "Nykyiset terminfo-tyypit:" - -#: grub-core/term/terminfo.c:699 -msgid "Terminal is ASCII-only [default]." -msgstr "Pääte on vain ASCII-pääte [oletus]." - -#: grub-core/term/terminfo.c:700 -msgid "Terminal is logical-ordered UTF-8." -msgstr "Pääte on loogisesti järjestetty UTF-8." - -#: grub-core/term/terminfo.c:701 -msgid "Terminal is visually-ordered UTF-8." -msgstr "Pääte on visuaalisesti järjestetty UTF-8." - -#: grub-core/term/terminfo.c:703 -msgid "Terminal has specified geometry." -msgstr "Päätteellä on määritelty geometria." - -#. TRANSLATORS: "x" has to be entered in, like an identifier, so please don't -#. use better Unicode codepoints. -#: grub-core/term/terminfo.c:706 -msgid "WIDTHxHEIGHT." -msgstr "LEVEYSxKORKEUS." - -#: grub-core/term/terminfo.c:746 -msgid "incorrect terminal dimensions specification" -msgstr "virheellinen pääteikkunamittasuhdemäärittely" - -#: grub-core/term/terminfo.c:776 -#, c-format -msgid "terminal %s isn't found or it's not handled by terminfo" -msgstr "pääteikkuna %s ei löytynyt tai terminfo ei ole käsitellyt sitä" - -#: grub-core/term/terminfo.c:785 -msgid "[[-a|-u|-v] [-g WxH] TERM [TYPE]]" -msgstr "[[-a|-u|-v] [-g WxH] PÄÄTE [TYYPPI]]" - -#: grub-core/term/terminfo.c:786 -msgid "Set terminfo type of TERM to TYPE.\n" -msgstr "Aseta TERM-terminfo-tyypiksi TYYPPI.\n" - -#. TRANSLATORS: this is the BLOCK-argument, not -#. environment block. -#: grub-core/tests/test_blockarg.c:49 -msgid "Print and execute block argument." -msgstr "Tulosta ja suorita lohkoargumentti." - -#. TRANSLATORS: We're speaking about bitmap images like -#. JPEG or PNG. -#: grub-core/video/bitmap.c:209 -#, c-format -msgid "bitmap file `%s' is of unsupported format" -msgstr "bittikartta â€%s†on tukematonta muotoa" - -#: grub-core/video/i386/pc/vbe.c:1191 -#, c-format -msgid " VBE info: version: %d.%d OEM software rev: %d.%d\n" -msgstr " VBE-tiedot: versio: %d.%d OEM-ohjelmistoversio: %d.%d\n" - -#: grub-core/video/i386/pc/vbe.c:1198 -#, c-format -msgid " total memory: %d KiB\n" -msgstr " muistia yhteensä: %d kibitavua\n" - -#: grub-core/video/video.c:596 grub-core/video/video.c:762 -msgid "no suitable video mode found" -msgstr "sopivaa videotilaa ei löytynyt" - -#: include/grub/crypto.h:403 -msgid "access denied" -msgstr "pääsy kielletty" - -#: include/grub/util/install.h:30 include/grub/util/install.h:35 -msgid "MODULES" -msgstr "MODUULIT" - -#: include/grub/util/install.h:31 -msgid "pre-load specified modules MODULES" -msgstr "esilataa määritellyt moduulit MODUULIT" - -#: include/grub/util/install.h:33 -msgid "embed a specific DTB" -msgstr "" - -#: include/grub/util/install.h:36 -msgid "install only MODULES and their dependencies [default=all]" -msgstr "asenna vain MODUULIT ja niiden riippuvuudet [oletus=all]" - -#: include/grub/util/install.h:37 -msgid "THEMES" -msgstr "TEEMAT" - -#: include/grub/util/install.h:38 -#, c-format -msgid "install THEMES [default=%s]" -msgstr "asenna TEEMAT [oletus=%s]" - -#: include/grub/util/install.h:39 -msgid "FONTS" -msgstr "KIRJASIMET" - -#: include/grub/util/install.h:40 -#, c-format -msgid "install FONTS [default=%s]" -msgstr "asenna KIRJASIMET [oletus=%s]" - -#: include/grub/util/install.h:41 -msgid "LOCALES" -msgstr "PAIKALLISASETUKSET" - -#: include/grub/util/install.h:42 -msgid "install only LOCALES [default=all]" -msgstr "asenna vain PAIKALLISASETUKSET [oletus=all]" - -#: include/grub/util/install.h:45 -msgid "compress GRUB files [optional]" -msgstr "tiivistä GRUB-tiedostot [valinnainen]" - -#: include/grub/util/install.h:48 util/grub-mkimage.c:83 -msgid "choose the compression to use for core image" -msgstr "valitse ydinlevykuvalle käytettävä tiivistys" - -#. TRANSLATORS: platform here isn't identifier. It can be translated. -#: include/grub/util/install.h:51 include/grub/util/install.h:54 -#: util/grub-mkimage.c:66 -#, c-format -msgid "use images and modules under DIR [default=%s/]" -msgstr "" -"käytä levykuvia ja moduuleja hakemiston HAKEMISTO alla [oletus=%s/]" - -#: include/grub/util/install.h:57 -#, c-format -msgid "use translations under DIR [default=%s]" -msgstr "käytä käännöksiä hakemiston HAKEMISTO alla [oletus=%s]" - -#: include/grub/util/install.h:60 -#, c-format -msgid "use themes under DIR [default=%s]" -msgstr "käytä teemoja hakemiston HAKEMISTO alla [oletus=%s]" - -#: include/grub/util/install.h:65 util/grub-mkimage.c:78 -msgid "embed FILE as public key for signature checking" -msgstr "upota TIEDOSTO julkisena avaimena allekirjoitustarkistukseen" - -#: util/editenv.c:59 util/grub-editenv.c:201 util/grub-install-common.c:535 -#: util/grub-mkimage.c:315 util/setup.c:791 -#, fuzzy, c-format -msgid "cannot sync `%s': %s" -msgstr "â€%sâ€-haku epäonnistui: %s" - -#: util/editenv.c:64 -#, c-format -msgid "cannot rename the file %s to %s" -msgstr "tiedoston %s nimeäminen nimellä %s epäonnistui" - -#: util/getroot.c:402 -#, c-format -msgid "disk does not exist, so falling back to partition device %s" -msgstr "levyä ei ole olemassa, joten palataan takaisin osiolaitteeseen %s" - -#: util/grub-editenv.c:45 util/grub-fstest.c:506 -msgid "Commands:" -msgstr "Komennot:" - -#: util/grub-editenv.c:47 -msgid "Create a blank environment block file." -msgstr "Luo tyhjä ympäristölohkotiedosto." - -#: util/grub-editenv.c:49 -msgid "List the current variables." -msgstr "Luettele nykyiset muuttujat." - -#. TRANSLATORS: "set" is a keyword. It's a summary of "set" subcommand. -#: util/grub-editenv.c:51 -msgid "set [NAME=VALUE ...]" -msgstr "set [NIMI=ARVO ...]" - -#: util/grub-editenv.c:52 -msgid "Set variables." -msgstr "Aseta muuttujat." - -#. TRANSLATORS: "unset" is a keyword. It's a summary of "unset" subcommand. -#: util/grub-editenv.c:54 -msgid "unset [NAME ...]" -msgstr "unset [NIMI ...]" - -#: util/grub-editenv.c:55 -msgid "Delete variables." -msgstr "Poista muuttujat." - -#: util/grub-editenv.c:57 -msgid "Options:" -msgstr "Valitsimet:" - -#: util/grub-editenv.c:84 -msgid "You need to specify at least one command.\n" -msgstr "Sinun on määriteltävä vähintään yksi komento.\n" - -#: util/grub-editenv.c:113 -msgid "FILENAME COMMAND" -msgstr "TIEDOSTONIMI KOMENTO" - -#: util/grub-editenv.c:114 -msgid "Tool to edit environment block." -msgstr "Työkalu ympäristölohkon muokkaamiseen." - -#: util/grub-editenv.c:116 -#, c-format -msgid "" -"If FILENAME is `-', the default value %s is used.\n" -"\n" -"There is no `delete' command; if you want to delete the whole environment\n" -"block, use `rm %s'." -msgstr "" -"Jos TIEDOSTONIMI on â€-â€, käytetään oletusarvoa %s.\n" -"\n" -"Komentoa â€delete†ei ole olemassa; jos haluat poistaa koko ympäristölohkon,\n" -"käytä â€rm %sâ€." - -#: util/grub-editenv.c:162 -msgid "invalid environment block" -msgstr "virheellinen ympäristölohko" - -#: util/grub-editenv.c:217 -#, c-format -msgid "invalid parameter %s" -msgstr "virheellinen parametri %s" - -#: util/grub-editenv.c:222 -msgid "environment block too small" -msgstr "ympäristölohko on liian pieni" - -#: util/grub-fstest.c:107 -#, c-format -msgid "disk read fails at offset %lld, length %lld" -msgstr "levyluku epäonnistuu siirrososoitteessa %lld, pituus %lld" - -#: util/grub-fstest.c:138 -#, c-format -msgid "invalid skip value %lld" -msgstr "virheellinen ohitusarvo %lld" - -#: util/grub-fstest.c:160 util/grub-fstest.c:246 -#, c-format -msgid "read error at offset %llu: %s" -msgstr "lukuvirhe siirrososoitteessa %llu: %s" - -#: util/grub-fstest.c:210 -#, c-format -msgid "cannot open OS file `%s': %s" -msgstr "käyttöjärjestelmätiedoston â€%s†avaaminen epäonnistui: %s" - -#: util/grub-fstest.c:225 util/misc.c:126 -#, c-format -msgid "cannot write to the stdout: %s" -msgstr "vakiotulosteeseen kirjoittaminen epäonnistui: %s" - -#: util/grub-fstest.c:259 -#, c-format -msgid "compare fail at offset %llu" -msgstr "vertailu epäonnistui siirrososoitteessa %llu" - -#: util/grub-fstest.c:280 util/grub-fstest.c:314 -#, c-format -msgid "OS file %s open error: %s" -msgstr "Käyttöjärjestelmätiedoston %s avausvirhe: %s" - -#: util/grub-fstest.c:402 util/grub-mount.c:392 -#, c-format -msgid "`loopback' command fails: %s" -msgstr "â€loopabackâ€-komento epäonnistui: %s" - -#: util/grub-fstest.c:413 util/grub-mount.c:402 -#, c-format -msgid "`cryptomount' command fails: %s" -msgstr "â€cryptomountâ€-komento epäonnistuu: %s" - -#: util/grub-fstest.c:474 util/grub-fstest.c:478 -msgid "couldn't retrieve UUID" -msgstr "UUID-tunnisteen noutaminen epäonnistui" - -#: util/grub-fstest.c:507 -msgid "ls PATH" -msgstr "ls POLKU" - -#: util/grub-fstest.c:507 -msgid "List files in PATH." -msgstr "Luettele tiedostot PATH-muuttujassa." - -#: util/grub-fstest.c:508 -msgid "cp FILE LOCAL" -msgstr "cp TIEDOSTO PAIKALLINEN" - -#: util/grub-fstest.c:508 -msgid "Copy FILE to local file LOCAL." -msgstr "Kopioi TIEDOSTO paikalliseen tiedotoon PAIKALLINEN" - -#: util/grub-fstest.c:509 -msgid "cat FILE" -msgstr "cat TIEDOSTO" - -#: util/grub-fstest.c:509 -msgid "Copy FILE to standard output." -msgstr "Kopioi TIEDOSTO vakiotulosteeseen." - -#: util/grub-fstest.c:510 -msgid "cmp FILE LOCAL" -msgstr "cmp TIEDOSTO PAIKALLINEN" - -#: util/grub-fstest.c:510 -msgid "Compare FILE with local file LOCAL." -msgstr "Vertaa TIEDOSTOa paikalliseen tiedostoon PAIKALLINEN." - -#: util/grub-fstest.c:511 -msgid "hex FILE" -msgstr "hex TIEDOSTO" - -#: util/grub-fstest.c:511 -msgid "Show contents of FILE in hex." -msgstr "Näytä TIEDOSTOn sisältö heksadesimaalisena." - -#: util/grub-fstest.c:512 -msgid "crc FILE" -msgstr "crc TIEDOSTO" - -#: util/grub-fstest.c:512 -msgid "Get crc32 checksum of FILE." -msgstr "Hae TIEDOSTOn crc32-tarkistussumma." - -#: util/grub-fstest.c:513 -msgid "blocklist FILE" -msgstr "blocklist TIEDOSTO" - -#: util/grub-fstest.c:513 -msgid "Display blocklist of FILE." -msgstr "Näytä TIEDOSTOn lohkoluettelo." - -#: util/grub-fstest.c:514 -msgid "xnu_uuid DEVICE" -msgstr "xnu_uuid LAITE" - -#: util/grub-fstest.c:514 -msgid "Compute XNU UUID of the device." -msgstr "Laske laitteen XNU UUID." - -#. TRANSLATORS: bitmaps are images like e.g. in JPEG. -#: util/grub-fstest.c:517 util/grub-fstest.c:518 util/grub-fstest.c:519 -#: util/grub-mkfont.c:938 util/grub-mkfont.c:951 util/grub-mkfont.c:952 -#: util/grub-mkpasswd-pbkdf2.c:46 util/grub-mkpasswd-pbkdf2.c:47 -#: util/grub-mkpasswd-pbkdf2.c:48 -msgid "NUM" -msgstr "NUM" - -#: util/grub-fstest.c:517 -msgid "Skip N bytes from output file." -msgstr "Ohita N tavua tulostetiedostosta." - -#: util/grub-fstest.c:518 -msgid "Handle N bytes in output file." -msgstr "Käsittele N tavua tulostetiedostossa." - -#: util/grub-fstest.c:519 -msgid "Specify the number of input files." -msgstr "Määritä syötetiedostojen lukumäärä." - -#: util/grub-fstest.c:520 util/grub-mount.c:453 -msgid "Set debug environment variable." -msgstr "Aseta vianjäljitysympäristömuuttuja." - -#: util/grub-fstest.c:521 util/grub-mount.c:454 -msgid "Mount crypto devices." -msgstr "Liitä salauslaitteet." - -#. TRANSLATORS: "prompt" is a keyword. -#: util/grub-fstest.c:524 util/grub-mount.c:457 -msgid "FILE|prompt" -msgstr "TIEDOSTO|kehote" - -#: util/grub-fstest.c:524 util/grub-mount.c:457 -msgid "Load zfs crypto key." -msgstr "Lataa zfs-salausavain." - -#: util/grub-fstest.c:526 -msgid "Uncompress data." -msgstr "Pura tiedoston tiivistys." - -#: util/grub-fstest.c:605 -msgid "Invalid disk count.\n" -msgstr "Virheellinen levylukumäärä.\n" - -#. TRANSLATORS: disk count is optional but if it's there it must -#. be before disk list. So please don't imply disk count as mandatory. -#. -#: util/grub-fstest.c:613 -msgid "Disk count must precede disks list.\n" -msgstr "" -"Valinnaisen levylukumäärän on oltava sitä käytettäesä levyluettelon edessä.\n" - -#: util/grub-fstest.c:633 -msgid "No command is specified.\n" -msgstr "Komentoa ei ole määritelty.\n" - -#: util/grub-fstest.c:638 -msgid "Not enough parameters to command.\n" -msgstr "Komennolle ei ole riittävästi parametreja.\n" - -#: util/grub-fstest.c:711 -#, c-format -msgid "Invalid command %s.\n" -msgstr "Virheellinen komento %s.\n" - -#: util/grub-fstest.c:724 -msgid "IMAGE_PATH COMMANDS" -msgstr "IMAGE_PATH KOMENNOT" - -#: util/grub-fstest.c:725 util/grub-mount.c:553 -msgid "Debug tool for filesystem driver." -msgstr "Vianjäljitystyökalu tiedostojärjestelmäajurille." - -#: util/grub-glue-efi.c:53 -msgid "set input filename for 32-bit part." -msgstr "aseta syötetiedostonimi 32-bittiselle komponentille." - -#: util/grub-glue-efi.c:55 -msgid "set input filename for 64-bit part." -msgstr "aseta syötetiedostonimi 64-bittiselle komponentille" - -#: util/grub-glue-efi.c:57 util/grub-mklayout.c:55 util/grub-render-label.c:71 -msgid "set output filename. Default is STDOUT" -msgstr "aseta tulostetiedostonimi. Oletus on STDOUT" - -#: util/grub-glue-efi.c:94 util/grub-mklayout.c:476 -#: util/grub-mkpasswd-pbkdf2.c:86 util/grub-render-label.c:131 -msgid "[OPTIONS]" -msgstr "[VALITSIMET]" - -#: util/grub-glue-efi.c:95 -msgid "Glue 32-bit and 64-bit binary into Apple universal one." -msgstr "Liimaa 32-bittinen ja 64-binääri Apple universal one-pakkaukseksi." - -#: util/grub-glue-efi.c:116 -msgid "Missing input file\n" -msgstr "Puuttuva syötetiedosto\n" - -#: util/grub-install-common.c:127 util/grub-install-common.c:151 -#, c-format -msgid "cannot copy `%s' to `%s': %s" -msgstr "kohteen â€%s†kopioiminen kohteeseen â€%s†epäonnistui: %s" - -#: util/grub-install-common.c:147 -#, c-format -msgid "can't compress `%s' to `%s'" -msgstr "kohteen â€%s†tiivistys kohteeseen â€%s†epäonnistui" - -#: util/grub-install-common.c:196 util/grub-install-common.c:552 -#: util/grub-install-common.c:579 util/grub-install-common.c:621 -#, c-format -msgid "cannot open directory `%s': %s" -msgstr "hakemiston â€%s†avaaminen epäonnistui: %s" - -#: util/grub-install-common.c:212 -#, c-format -msgid "cannot delete `%s': %s" -msgstr "kohteen â€%s†poistaminen epäonnistui: %s" - -#: util/grub-install-common.c:324 util/grub-mkimage.c:209 -msgid "grub-mkimage is compiled without XZ support" -msgstr "grub-mkimage on käännetty ilman XZ-tukea" - -#: util/grub-install-common.c:332 util/grub-mkimage.c:217 -#, c-format -msgid "Unknown compression format %s" -msgstr "Tuntematon tiivistysmuoto %s" - -#: util/grub-install-common.c:400 -#, c-format -msgid "Unrecognized compression `%s'" -msgstr "Tunnistamaton tiivistys â€%sâ€" - -#: util/grub-install-common.c:509 -#, c-format -msgid "unknown target format %s" -msgstr "tuntematon kohdemuoto %s" - -#: util/grub-install-common.c:700 -#, c-format -msgid "cannot find locale `%s'" -msgstr "paikallisasetusta â€%s†ei löytynyt" - -#: util/grub-install-common.c:939 -#, c-format -msgid "%s doesn't exist. Please specify --target or --directory" -msgstr "%s ei ole olemassa. Määritä --target tai --directory" - -#: util/grub-install-common.c:948 util/grub-install-common.c:951 -#, c-format -msgid "invalid modinfo file `%s'" -msgstr "virheellinen modinfo-tiedosto â€%sâ€" - -#: util/grub-install-common.c:966 -#, c-format -msgid "Unknown platform `%s-%s'" -msgstr "Tuntematon alusta â€%s-%sâ€" - -#: util/grub-install.c:238 -msgid "More than one install device?" -msgstr "Useampi kuin yksi asennuslaite?" - -#: util/grub-install.c:251 -#, c-format -msgid "" -"install GRUB images under the directory DIR/%s instead of the %s directory" -msgstr "asenna GRUB-levykuvat hakemistoon HAKEMISTO/%s eikä %s-hakemistoon" - -#: util/grub-install.c:256 util/grub-probe.c:734 -msgid "TARGET" -msgstr "KOHDE" - -#. TRANSLATORS: "TARGET" as in "target platform". -#: util/grub-install.c:258 -#, c-format -msgid "install GRUB for TARGET platform [default=%s]; available targets: %s" -msgstr "asenna GRUB KOHDE-alustalle [oletus=%s]; saatavilla olevat kohteet: %s" - -#. TRANSLATORS: "may break" doesn't just mean that option wouldn't have any -#. effect but that it will make the resulting install unbootable from HDD. -#. TRANSLATORS: The potential breakage isn't limited to floppies but it's -#. likely to make the install unbootable from HDD. -#: util/grub-install.c:267 util/grub-setup.c:94 -msgid "" -"make the drive also bootable as floppy (default for fdX devices). May break " -"on some BIOSes." -msgstr "" -"tee levyasemasta käynnistettävä myös levykkeenä (oletus fdX-laitteille). " -"Saattaa rikkoutua joissakin BIOS:eissa" - -#: util/grub-install.c:270 -msgid "delete device map if it already exists" -msgstr "poista laitekuvaus, jos se on jo olemassa" - -#: util/grub-install.c:272 util/grub-setup.c:87 -msgid "install even if problems are detected" -msgstr "asenna myös silloin kun havaittiin ongelmia" - -#: util/grub-install.c:274 -msgid "use identifier file even if UUID is available" -msgstr "käytä tunnistetiedostoa vieläpä kun UUID on käytettävissä" - -#: util/grub-install.c:276 -msgid "" -"disk module to use (biosdisk or native). This option is only available on " -"BIOS target." -msgstr "" -"käytettävä levyasemamoduuli (biosdisk tai alkuperäinen). Tämä valitsin on " -"käytettävissä vain BIOS-kohteella." - -#: util/grub-install.c:279 -msgid "" -"don't update the `boot-device'/`Boot*' NVRAM variables. This option is only " -"available on EFI and IEEE1275 targets." -msgstr "" -"älä päivitä â€boot-deviceâ€/â€Boot*†NVRAM-muuttujaa. Tämä valitsin on " -"käytettävissä vain IEEE1275-kohteilla." - -#: util/grub-install.c:282 util/grub-setup.c:89 -msgid "do not probe for filesystems in DEVICE" -msgstr "älä koesta tiedostojärjestelmiä laitteessa LAITE" - -#: util/grub-install.c:284 -msgid "do not install bootsector" -msgstr "älä asenna käynnistyssektoria" - -#: util/grub-install.c:286 util/grub-setup.c:96 -msgid "" -"Do not apply any reed-solomon codes when embedding core.img. This option is " -"only available on x86 BIOS targets." -msgstr "" -"Älä toteuta mitään reed-solomon-koodeja upotettaessa core.img-levykuvaa. " -"Tämä valitsin on käytettävissä vain BIOS-kohteilla." - -#: util/grub-install.c:293 -msgid "" -"the installation device is removable. This option is only available on EFI." -msgstr "" -"asennuslaite on irrotettava. Tämä valitsin on käytettävissä vain EFI-osiolla." - -#: util/grub-install.c:295 -msgid "ID" -msgstr "TUNNISTE" - -#: util/grub-install.c:296 -msgid "the ID of bootloader. This option is only available on EFI and Macs." -msgstr "" -"käynnistyslataimen TUNNISTE. Tämä valitsin on käytettävissä vain EFI- ja " -"Macs-osioilla." - -#: util/grub-install.c:298 -msgid "use DIR as the EFI System Partition root." -msgstr "käytä HAKEMISTO EFI-järjestelmäosion juurena." - -#: util/grub-install.c:300 -msgid "use DIR for PPC MAC install." -msgstr "käytä HAKEMISTO PPC MAC-asennuksille." - -#: util/grub-install.c:301 util/grub-mkrescue.c:106 -msgid "use FILE as font for label" -msgstr "käytä TIEDOSTOa nimiön kirjasimena" - -#: util/grub-install.c:302 util/grub-mkrescue.c:107 -msgid "use COLOR for label" -msgstr "käytä COLOR-muuttuja-asetusta nimiössä" - -#: util/grub-install.c:303 util/grub-mkrescue.c:108 -msgid "use COLOR for label background" -msgstr "käytä COLOR-muuttuja-asetusta nimiötaustana" - -#: util/grub-install.c:304 util/grub-mkrescue.c:110 -msgid "use STRING as product version" -msgstr "Käytä MERKKIJONOa tuoteversiona." - -#: util/grub-install.c:361 -msgid "[OPTION] [INSTALL_DEVICE]" -msgstr "[VALITSIN] [ASENNUS_LAITE]" - -#: util/grub-install.c:362 -msgid "Install GRUB on your drive." -msgstr "Asenna GRUB levyasemaasi." - -#: util/grub-install.c:363 -#, c-format -msgid "" -"INSTALL_DEVICE must be system device filename.\n" -"%s copies GRUB images into %s. On some platforms, it may also install GRUB " -"into the boot sector." -msgstr "" -"ASENNUS_LAITE on oltava järjestelmälaitteen tiedostonimi.\n" -"%s kopioi GRUB-levykuvan kohteeseen %s. Joillakin alustoilla se voi myös " -"asentaa GRUBin käynnistyssektoriin." - -#: util/grub-install.c:672 -#, c-format -msgid "the drive %s is defined multiple times in the device map %s" -msgstr "levyasema %s on määritelty useita kertoja laitekuvauksessa %s" - -#: util/grub-install.c:878 -msgid "Unable to determine your platform. Use --target." -msgstr "Alustasi määritteleminen epäonnistui. Käytä valitsinta --target." - -#: util/grub-install.c:891 -#, c-format -msgid "Installing for %s platform.\n" -msgstr "Asennetaan %s-alustalle.\n" - -#: util/grub-install.c:939 -msgid "install device isn't specified" -msgstr "asennuslaitetta ei ole määritelty" - -#: util/grub-install.c:1057 -msgid "cannot find EFI directory" -msgstr "EFI-hakemiston etsiminen epäonnistui" - -#: util/grub-install.c:1060 util/grub-install.c:1209 util/grub-install.c:1254 -#: util/grub-macbless.c:76 util/grub-probe.c:329 util/setup.c:316 -#, c-format -msgid "cannot find a device for %s (is /dev mounted?)" -msgstr "kohteen %s laitteen etsiminen epäonnistui (onko /dev -liitetty?)" - -#: util/grub-install.c:1069 util/grub-install.c:1217 util/grub-install.c:1270 -#: util/grub-install.c:1365 util/grub-macbless.c:80 util/grub-probe.c:372 -#, c-format -msgid "cannot find a GRUB drive for %s. Check your device.map" -msgstr "" -"GRUB-levyaseman etsiminen kohteelle %s epäonnistui. Tarkista device.map-" -"tiedostosi" - -#: util/grub-install.c:1087 -#, c-format -msgid "%s doesn't look like an EFI partition" -msgstr "%s ei näytä EFI-osiolta" - -#: util/grub-install.c:1129 util/grub-install.c:1614 -msgid "You've found a bug" -msgstr "Löysit ohjelmistovian" - -#: util/grub-install.c:1231 -#, c-format -msgid "filesystem on %s is neither HFS nor HFS+" -msgstr "tiedostojärjestelmä kohteessa %s ei ole HFS eikä HFS+" - -#: util/grub-install.c:1299 -#, c-format -msgid "" -"attempt to install to encrypted disk without cryptodisk enabled. Set `%s' in " -"file `%s'" -msgstr "" -"yritys asentaa salauslevylle ilman että salauslevy on otettu käyttöön. Aseta " -"â€%s†tiedostossa â€%sâ€" - -#: util/grub-install.c:1410 util/grub-install.c:1772 util/grub-install.c:1872 -#, c-format -msgid "Can't create file: %s" -msgstr "Tiedoston luominen epäonnistui: %s" - -#: util/grub-install.c:1491 -msgid "no hints available for your platform. Expect reduced performance" -msgstr "" -"vihjeitä ei ole käytettävissä alustallasi. Otaksu alentunut suorituskyky" - -#. TRANSLATORS: This is a prefix in the log to indicate that usually -#. a command would be executed but due to an option was skipped. -#: util/grub-install.c:1702 -msgid "NOT RUNNING: " -msgstr "EI SUORITETA: " - -#: util/grub-install.c:1806 -msgid "the chosen partition is not a PReP partition" -msgstr "valittu osio ei ole PReP-osio" - -#: util/grub-install.c:1811 -msgid "failed to copy Grub to the PReP partition" -msgstr "Grub-kopiointi PReP-osiolle epäonnistui" - -#: util/grub-install.c:1816 -#, c-format -msgid "" -"the PReP partition is not empty. If you are sure you want to use it, run dd " -"to clear it: `%s'" -msgstr "" -"PReP-osiosi ei ole tyhjä. Jos olet varma, että haluat käyttää sitä, suorita " -"dd-komento sen tyhjentämiseksi: â€%sâ€" - -#: util/grub-install.c:1888 util/grub-install.c:1932 -#, c-format -msgid "efibootmgr failed to register the boot entry: %s" -msgstr "" - -#: util/grub-install.c:1916 -msgid "EFI bootloader id isn't specified." -msgstr "EFI-käynnistystunnistetta ei ole määritelty." - -#: util/grub-install.c:1950 -msgid "WARNING: no platform-specific install was performed" -msgstr "VAROITUS: alustakohtaista asennusta ei ole suoritettu" - -#: util/grub-install.c:1957 -msgid "Installation finished. No error reported." -msgstr "Asennus on päättynyt. Virheitä ei löytynyt." - -#: util/grub-macbless.c:101 -msgid "bless for x86-based macs" -msgstr "bless-tiedosto x86-perustaisille mac-tietokoneille" - -#: util/grub-macbless.c:103 -msgid "bless for ppc-based macs" -msgstr "bless-tiedosto ppc-perustaisille mac-tietokoneille" - -#: util/grub-macbless.c:136 util/grub-probe.c:823 -msgid "No path or device is specified.\n" -msgstr "Polkua tai laitetta ei ole määritelty.\n" - -#: util/grub-macbless.c:157 -msgid "--ppc PATH|--x86 FILE" -msgstr "--ppc POLKU|--x86 TIEDOSTO" - -#: util/grub-macbless.c:158 -msgid "Mac-style bless on HFS or HFS+" -msgstr "Mac-tyylinen bless-tiedosto HFS- tai HFS+-tiedostojärjestelmässä" - -#: util/grub-menulst2cfg.c:44 -#, c-format -msgid "Usage: %s [INFILE [OUTFILE]]\n" -msgstr "Käyttö: %s [SYÖTETIEDOSTO [TULOSTETIEDOSTO]]\n" - -#: util/grub-mkfont.c:157 -#, c-format -msgid "Freetype Error %d loading glyph 0x%x for U+0x%x%s" -msgstr "Freetype-virhe %d ladattaessa glyph 0x%x kohteelle U+0x%x%s" - -#. TRANSLATORS: These qualifiers are used for cursive typography, -#. mainly Arabic. Note that the terms refer to the visual position -#. and not logical order and if used in left-to-right script then -#. leftmost is initial but with right-to-left script like Arabic -#. rightmost is the initial. -#: util/grub-mkfont.c:165 -msgid " (medial)" -msgstr " (sisäpuolinen)" - -#: util/grub-mkfont.c:166 -msgid " (leftmost)" -msgstr " (vasemmaisin)" - -#: util/grub-mkfont.c:167 -msgid " (rightmost)" -msgstr " (oikeammaisin)" - -#: util/grub-mkfont.c:481 -#, c-format -msgid "Out of range substitution (%d, %d)\n" -msgstr "Korvautumisalueen ulkopuolella (%d, %d)\n" - -#. TRANSLATORS: "lookup" is taken directly from font specifications -#. which are formulated as "Under condition X replace LOOKUP with -#. SUBSTITUITION". " -#: util/grub-mkfont.c:506 -#, c-format -msgid "Out of range lookup: %d\n" -msgstr "Hakualueen ulkopuolella: %d\n" - -#: util/grub-mkfont.c:514 -#, c-format -msgid "Unsupported substitution type: %d\n" -msgstr "Tukematon korvaustyyppi: %d\n" - -#: util/grub-mkfont.c:550 -#, c-format -msgid "Unsupported substitution specification: %d\n" -msgstr "Tukematon korvausmäärittely: %d\n" - -#: util/grub-mkfont.c:582 -#, c-format -msgid "Unsupported coverage specification: %d\n" -msgstr "Tukematon peittomäärittely: %d\n" - -#: util/grub-mkfont.c:622 -#, c-format -msgid "WARNING: unsupported font feature parameters: %x\n" -msgstr "VAROITUS: tukemattomat kirjasinominaisuusparametrit: %x\n" - -#: util/grub-mkfont.c:936 util/grub-mkrescue.c:98 util/grub-mkstandalone.c:48 -msgid "save output in FILE [required]" -msgstr "tallenna tuloste TIEDOSTOon [vaadittu]" - -#. TRANSLATORS: some font files may have multiple faces (fonts). -#. This option is used to chose among them, the first face being '0'. -#. Rarely used. -#: util/grub-mkfont.c:942 -msgid "select face index" -msgstr "valitse face-indeksi" - -#: util/grub-mkfont.c:943 -msgid "FROM-TO[,FROM-TO]" -msgstr "KOHTEESTA-KOHTEESEEN[,KOHTEESTA-KOHTEESEEN]" - -#. TRANSLATORS: It refers to the range of characters in font. -#: util/grub-mkfont.c:945 -msgid "set font range" -msgstr "aseta kirjasinlukualue" - -#. TRANSLATORS: "family name" for font is just a generic name without suffix -#. like "Bold". -#: util/grub-mkfont.c:949 -msgid "set font family name" -msgstr "aseta kirjasinperheen nimi" - -#: util/grub-mkfont.c:950 -msgid "SIZE" -msgstr "KOKO" - -#: util/grub-mkfont.c:950 -msgid "set font size" -msgstr "aseta kirjasinkoko" - -#: util/grub-mkfont.c:951 -msgid "set font descent" -msgstr "aseta kirjasinsukulinja alaspäin" - -#: util/grub-mkfont.c:952 -msgid "set font ascent" -msgstr "aseta kirjasinsukulinja ylöspäin" - -#: util/grub-mkfont.c:953 -msgid "convert to bold font" -msgstr "muunna vahvennetuksi kirjasimeksi" - -#: util/grub-mkfont.c:954 -msgid "force autohint" -msgstr "pakota automaattivihjeet" - -#: util/grub-mkfont.c:955 -msgid "disable hinting" -msgstr "ota vihjeet pois käytöstä" - -#. TRANSLATORS: some fonts contain bitmap rendering for -#. some sizes. This option forces rerendering even if -#. pre-rendered bitmap is available. -#. -#: util/grub-mkfont.c:961 -msgid "ignore bitmap strikes when loading" -msgstr "ohiys bittikartta-strikes-määrittelyt ladatessa" - -#. TRANSLATORS: It refers to the range of characters in font. -#: util/grub-mkfont.c:1059 util/grub-mkfont.c:1075 -msgid "invalid font range" -msgstr "virheellinen kirjasinlukualue" - -#: util/grub-mkfont.c:1151 -msgid "[OPTIONS] FONT_FILES" -msgstr "[VALITSIMET] KIRJASIN_TIEDOSTOT" - -#: util/grub-mkfont.c:1152 -msgid "Convert common font file formats into PF2" -msgstr "Muunna yleiset kirjasintiedostomuodot PF2-muotoon" - -#: util/grub-mkfont.c:1182 util/grub-mkrescue.c:483 -#: util/grub-mkstandalone.c:306 -msgid "output file must be specified" -msgstr "tulostetiedosto on määriteltävä" - -#: util/grub-mkfont.c:1185 -msgid "FT_Init_FreeType fails" -msgstr "FT_Init_FreeType epäonnistuu" - -#: util/grub-mkfont.c:1199 -#, c-format -msgid "can't open file %s, index %d: error %d" -msgstr "tiedoston %s avaaminen epäonnistui, indeksi %d: virhe %d" - -#: util/grub-mkfont.c:1229 -#, c-format -msgid "can't set %dx%d font size: Freetype error %d: %s" -msgstr "%dx%d-kirjasinkoon asettaminen epäonnistui: Freetype-virhe %d: %s" - -#: util/grub-mkimage.c:67 -msgid "set prefix directory" -msgstr "aseta prefix-hakemisto" - -#. TRANSLATORS: "memdisk" here isn't an identifier, it can be translated. -#. "embed" is a verb (command description). " -#: util/grub-mkimage.c:71 -msgid "" -"embed FILE as a memdisk image\n" -"Implies `-p (memdisk)/boot/grub' and overrides any prefix supplied " -"previously, but the prefix itself can be overridden by later options" -msgstr "" -"upota TIEDOSTO memdisk-levykuvana\n" -"Edellyttää â€-p (muistilevy)/boot/grub†ja korvaa kaikki aiemmin tarjotut " -"prefiksit, mutta prefiksi itse voidaan korvata myöhemmillä valitsimilla" - -#: util/grub-mkimage.c:74 -#, fuzzy -msgid "embed FILE as a device tree (DTB)\n" -msgstr "upota TIEDOSTO kuin aikaisena asetuksena" - -#: util/grub-mkimage.c:76 -msgid "embed FILE as an early config" -msgstr "upota TIEDOSTO kuin aikaisena asetuksena" - -#. TRANSLATORS: NOTE is a name of segment. -#: util/grub-mkimage.c:80 -msgid "add NOTE segment for CHRP IEEE1275" -msgstr "lisää NOTE-segmentti kohteelle CHRP IEEE1275" - -#: util/grub-mkimage.c:81 -msgid "output a generated image to FILE [default=stdout]" -msgstr "tulosta tuotettu levykuva tiedostoon [oletus=vakiotuloste]" - -#: util/grub-mkimage.c:82 -msgid "FORMAT" -msgstr "MUOTO" - -#: util/grub-mkimage.c:100 util/grub-mkstandalone.c:62 -msgid "generate an image in FORMAT" -msgstr "tuota levykuva muodossa MUOTO" - -#: util/grub-mkimage.c:101 util/grub-mkstandalone.c:63 -msgid "available formats:" -msgstr "käytettävissä olevat muodot:" - -#: util/grub-mkimage.c:152 util/grub-mkstandalone.c:96 -#, c-format -msgid "unknown target format %s\n" -msgstr "tuntematon kohdemuoto %s\n" - -#: util/grub-mkimage.c:242 -msgid "[OPTION]... [MODULES]" -msgstr "[VALITSIN]... [MODUULIT]" - -#: util/grub-mkimage.c:243 -msgid "Make a bootable image of GRUB." -msgstr "Tee käynnistettävä GRUB-levykuva." - -#: util/grub-mkimage.c:273 util/grub-mkstandalone.c:309 -msgid "Target format not specified (use the -O option)." -msgstr "Kohdemuotoa ei ole määritelty (käytä valitsinta -O)." - -#: util/grub-mkimage.c:282 -msgid "Prefix not specified (use the -p option)." -msgstr "Etuliitettä ei ole määritelty (käytä valitsinta -p)." - -#: util/grub-mkimage.c:318 util/setup.c:793 -#, fuzzy, c-format -msgid "cannot close `%s': %s" -msgstr "kohteen â€%s†avaaminen epäonnistui: %s" - -#: util/grub-mkimagexx.c:2191 -#, c-format -msgid "" -"`%s' is miscompiled: its start address is 0x%llx instead of 0x%llx: ld.gold " -"bug?" -msgstr "" -"â€%s†on käännetty väärin: sen alkuosoite on 0x%llx eikä 0x%llx: ld.gold-" -"ohjelmistovika?" - -#: util/grub-mklayout.c:53 -msgid "set input filename. Default is STDIN" -msgstr "aseta syötetiedostonimi. Oletus on STDIN" - -#. TRANSLATORS: scan identifier is keyboard key symbolic name. -#: util/grub-mklayout.c:307 -#, c-format -msgid "Unknown keyboard scan identifier %s\n" -msgstr "Tuntematon näppäimistön etsintätunniste %s\n" - -#. TRANSLATORS: scan code is keyboard key numeric identifier. -#: util/grub-mklayout.c:390 util/grub-mklayout.c:418 -#, c-format -msgid "Unknown keyboard scan code 0x%02x\n" -msgstr "Tuntematon näppäimistön etsintäkoodi 0x%02x\n" - -#. TRANSLATORS: this error is triggered when input doesn't contain any -#. key descriptions. -#: util/grub-mklayout.c:438 -msgid "ERROR: no valid keyboard layout found. Check the input.\n" -msgstr "VIRHE: kevollista näppäimistöasettelua ei löytynyt. Tarkista syöte.\n" - -#. TRANSLATORS: "one" is a shortcut for "keyboard layout". -#: util/grub-mklayout.c:478 -msgid "Generate GRUB keyboard layout from Linux console one." -msgstr "Tuota GRUB-näppäimistöasettelu Linux-pääteikkuna-asettelusta." - -#: util/grub-mknetdir.c:47 -msgid "root directory of TFTP server" -msgstr "TFTP-palvelimen juurihakemisto" - -#: util/grub-mknetdir.c:49 -msgid "relative subdirectory on network server" -msgstr "verkkopalvelimelle suhteellinen alihakemisto" - -#: util/grub-mknetdir.c:88 -msgid "" -"Prepares GRUB network boot images at net_directory/subdir assuming " -"net_directory being TFTP root." -msgstr "" -"Esikäsittelee GRUB-verkkokäynnistysvedoksen hakemistossa verkko_hakemisto/" -"alihakemisto otaksuen verkko_hakemiston olevan TFTP-juuri." - -#: util/grub-mknetdir.c:146 -#, c-format -msgid "unsupported platform %s" -msgstr "tukematon alusta %s" - -#. TRANSLATORS: First %s is replaced by platform name. Second one by filename. -#: util/grub-mknetdir.c:165 -#, c-format -msgid "" -"Netboot directory for %s created. Configure your DHCP server to point to %s\n" -msgstr "" -"Alustalle %s on luotu verkkokäynnistyshakemisto. Aseta DHCP-palvelimesi " -"osoittamaan tiedostoa %s\n" - -#: util/grub-mkpasswd-pbkdf2.c:46 -msgid "Number of PBKDF2 iterations" -msgstr "PBKDF2-iteraatioiden lukumäärä" - -#: util/grub-mkpasswd-pbkdf2.c:47 -msgid "Length of generated hash" -msgstr "Tuotetun hajakoodausmerkkijonon pituus" - -#: util/grub-mkpasswd-pbkdf2.c:48 -msgid "Length of salt" -msgstr "Salt-siemenen pituus" - -#: util/grub-mkpasswd-pbkdf2.c:87 -msgid "Generate PBKDF2 password hash." -msgstr "Tuota PBKDF2-salasanahajakoodausmerkkijono." - -#: util/grub-mkpasswd-pbkdf2.c:144 util/grub-mkpasswd-pbkdf2.c:151 -msgid "failure to read password" -msgstr "häiriö salasanan lukemisessa" - -#: util/grub-mkpasswd-pbkdf2.c:146 -msgid "Reenter password: " -msgstr "Kirjoita salasana uudelleen: " - -#: util/grub-mkpasswd-pbkdf2.c:160 -msgid "passwords don't match" -msgstr "salasanat eivät täsmää" - -#: util/grub-mkpasswd-pbkdf2.c:169 -msgid "couldn't retrieve random data for salt" -msgstr "satunnaisdatan noutaminen salt-siemeneksi epäonnistui" - -#: util/grub-mkpasswd-pbkdf2.c:184 -#, c-format -msgid "cryptographic error number %d" -msgstr "salausvirhenumero %d" - -#: util/grub-mkpasswd-pbkdf2.c:203 -#, c-format -msgid "PBKDF2 hash of your password is %s\n" -msgstr "Salasanasi PBKDF2-hajakoodaus on %s\n" - -#: util/grub-mkrelpath.c:67 -msgid "No path is specified.\n" -msgstr "Polkua ei ole määritelty.\n" - -#: util/grub-mkrelpath.c:78 -msgid "PATH" -msgstr "POLKU" - -#: util/grub-mkrelpath.c:79 -msgid "Transform a system filename into GRUB one." -msgstr "Muunna järjestelmätiedostonimi GRUB-tiedostonimeksi." - -#: util/grub-mkrescue.c:100 -msgid "save ROM images in DIR [optional]" -msgstr "tallenna ROM-levykuvat hakemistoon HAKEMISTO [valinnainen]" - -#. TRANSLATORS: xorriso is a program for creating ISOs and burning CDs. -#: util/grub-mkrescue.c:103 -msgid "use FILE as xorriso [optional]" -msgstr "käytä TIEDOSTOa niin kuin xorriso-ohjelma [valinnainen]" - -#: util/grub-mkrescue.c:109 -msgid "use STRING as product name" -msgstr "käytä MERKKIJONOa tuotenimenä" - -#: util/grub-mkrescue.c:111 -msgid "" -"enable sparc boot. Disables HFS+, APM, ARCS and boot as disk image for i386-" -"pc" -msgstr "" -"ota käyttöön sparc-alkulataus. Ottaa pois käytöstä HFS+, APM, ARCS ja " -"käynnistyksen levykuvana i386-pc:lle" - -#: util/grub-mkrescue.c:112 -msgid "" -"enable ARCS (big-endian mips machines, mostly SGI) boot. Disables HFS+, APM, " -"sparc64 and boot as disk image for i386-pc" -msgstr "" -"ota käyttöön ARCS (big-endian mips-koneet, useimmiten SGI) -käynnistys. " -"Ottaa pois käytöstä HFS+, APM, sparc64 ja käynnistyksen levykuvana i386-pc:" -"lle" - -#. TRANSLATORS: it generates one single image which is bootable through any method. -#: util/grub-mkrescue.c:125 -msgid "Make GRUB CD-ROM, disk, pendrive and floppy bootable image." -msgstr "" -"Tee GRUB CD-ROM-, levy-, muistitikku- ja levykekäynnistettävä levykuva." - -#: util/grub-mkrescue.c:130 -#, c-format -msgid "" -"Generates a bootable CD/USB/floppy image. Arguments other than options to " -"this program are passed to xorriso, and indicate source files, source " -"directories, or any of the mkisofs options listed by the output of `%s'." -msgstr "" -"Tuottaa käynnistettävän CD/USB/levyke-vedoksen. Argumentit muille " -"valitsimille kuin tälle ohjelmalle välitetään xorriso-ohjelmalle ja ne " -"osoittavat lähdetiedostot, lähdehakemistot tai kaikki â€%sâ€-tulosteessa " -"luetellut mkisoft-valitsimet" - -#: util/grub-mkrescue.c:134 -msgid "Option -- switches to native xorriso command mode." -msgstr "Valitsin -- vaihtaa alkuperäiseen xorriso-komentotilaan." - -#: util/grub-mkrescue.c:135 -msgid "Mail xorriso support requests to ." -msgstr "Sähköposti-xorriso-tuki vaatii osoitteen ." - -#: util/grub-mkrescue.c:221 util/grub-mkstandalone.c:114 -msgid "[OPTION] SOURCE..." -msgstr "[VALITSIN] LÄHDE..." - -#: util/grub-mkrescue.c:257 util/grub-mkrescue.c:300 util/grub-mkrescue.c:588 -#, c-format -msgid "enabling %s support ..." -msgstr "otetaan käyttöön %s-tuki ..." - -#: util/grub-mkrescue.c:486 -#, fuzzy -msgid "xorriso not found" -msgstr "%s: ei löytynyt" - -#: util/grub-mkrescue.c:623 -msgid "" -"Your xorriso doesn't support `--grub2-boot-info'. Some features are " -"disabled. Please use xorriso 1.2.9 or later." -msgstr "" -"Xorriso-ohjelmasi ei tue valitsinta â€--grub2-boot-infoâ€. Jotkut ominaisuudet " -"ovat poissa käytöstä. Käytä xorriso-ohjelmaversiota 1.2.9 tai sitä " -"myöhäisempää." - -#: util/grub-mkrescue.c:650 -msgid "" -"Your xorriso doesn't support `--grub2-boot-info'. Your core image is too " -"big. Boot as disk is disabled. Please use xorriso 1.2.9 or later." -msgstr "" -"Xorriso-ohjelmasi ei tue valitsinta â€--grub2-boot-infoâ€. Ydinvedoskuvasi on " -"liian suuri. Käynnistys levynä on otettu pois käytöstä. Käytä xorriso-" -"ohjelmaversiota 1.2.9 tai sitä myöhäisempää." - -#: util/grub-mkstandalone.c:115 -msgid "" -"Generate a standalone image (containing all modules) in the selected format" -msgstr "" -"Tuota erillinen levykuva (sisältäen kaikki moduulit) valitussa muodossa" - -#: util/grub-mkstandalone.c:115 -msgid "Graft point syntax (E.g. /boot/grub/grub.cfg=./grub.cfg) is accepted" -msgstr "" -"Liitoskohtasyntaksi (Esim.: /boot/grub/grub.cfg=./grub.cfg) hyväksytään" - -#: util/grub-mount.c:552 -msgid "IMAGE1 [IMAGE2 ...] MOUNTPOINT" -msgstr "LEVYKUVA1 [LEVYKUVA2 ...] LIITÄNTÄPISTE" - -#: util/grub-mount.c:575 -msgid "need an image and mountpoint" -msgstr "tarvitsee levykuvan ja liitäntäpisteen" - -#: util/grub-probe.c:731 -msgid "given argument is a system device, not a path" -msgstr "annettu argumentti on järjestelmälaite, ei polku" - -#: util/grub-probe.c:736 -msgid "separate items in output using ASCII NUL characters" -msgstr "erottele alkiot tulosteessa käyttäen ASCII NUL-merkkejä" - -#: util/grub-probe.c:754 -#, c-format -msgid "[default=%s]" -msgstr "[oletus=%s]" - -#: util/grub-probe.c:756 -msgid "print TARGET" -msgstr "tulosta KOHDE" - -#: util/grub-probe.c:757 -msgid "available targets:" -msgstr "käytettävissä olevat kohteet:" - -#: util/grub-probe.c:839 -msgid "[OPTION]... [PATH|DEVICE]" -msgstr "[VALITSIN]... [POLKU|LAITE]" - -#: util/grub-probe.c:840 -msgid "" -"Probe device information for a given path (or device, if the -d option is " -"given)." -msgstr "" -"Koesta laitetiedot annetulle polulle (tai laitteelle, jos valitsin -d on " -"annettu)." - -#: util/grub-render-label.c:60 -msgid "read text from FILE." -msgstr "lue teksti TIEDOSTOsta." - -#: util/grub-render-label.c:62 -msgid "use COLOR for text" -msgstr "käytä COLOR-muuttuja-asetusta tekstivärinä" - -#: util/grub-render-label.c:64 -msgid "use COLOR for background" -msgstr "käytä COLOR-muuttuja-asetusta taustavärinä" - -#. TRANSLATORS: The result is always stored to file and -#. never shown directly, so don't use "show" as synonym for render. Use "create" if -#. "render" doesn't translate directly. -#: util/grub-render-label.c:69 -msgid "set the label to render" -msgstr "aseta renderoitava nimiö" - -#: util/grub-render-label.c:73 -msgid "use FILE as font (PF2)." -msgstr "käytä TIEDOSTOa kirjasimena (PF2)" - -#. TRANSLATORS: This file takes a text and creates a graphical representation of it, -#. putting the result into .disk_label file. The result is always stored to file and -#. never shown directly, so don't use "show" as synonym for render. Use "create" if -#. "render" doesn't translate directly. -#: util/grub-render-label.c:136 -msgid "Render Apple .disk_label." -msgstr "Renderoi Apple .disk_label." - -#: util/grub-render-label.c:158 util/grub-syslinux2cfg.c:169 -msgid "Missing arguments\n" -msgstr "Puuttuvat argumentit\n" - -#: util/grub-script-check.c:87 -msgid "[PATH]" -msgstr "[POLKU]" - -#: util/grub-script-check.c:88 -msgid "Checks GRUB script configuration file for syntax errors." -msgstr "Tarkista GRUB-skriptiasetustiedosto syntaksivirheiden varalta." - -#: util/grub-script-check.c:207 -#, c-format -msgid "Syntax error at line %u\n" -msgstr "Syntaksivirhe rivillä %u\n" - -#: util/grub-script-check.c:212 -#, c-format -msgid "Script `%s' contains no commands and will do nothing\n" -msgstr "Skripti â€%s†ei sisällä komentoja eikä tee mitään\n" - -#: util/grub-setup.c:79 -#, c-format -msgid "use FILE as the boot image [default=%s]" -msgstr "käytä TIEDOSTOa käynnistyslevykuvana [oletus=%s]" - -#: util/grub-setup.c:81 -#, c-format -msgid "use FILE as the core image [default=%s]" -msgstr "käytä TIEDOSTOa ydinlevykuvana [oletus=%s]" - -#: util/grub-setup.c:210 -msgid "No device is specified.\n" -msgstr "Laitetta ei ole annettu.\n" - -#: util/grub-setup.c:224 -msgid "" -"Set up images to boot from DEVICE.\n" -"\n" -"You should not normally run this program directly. Use grub-install instead." -msgstr "" -"Aseta levykuvat käynnistymään laitteesta LAITE.\n" -"\n" -"Tätä ohjelmaa ei pitäisi normaalisti suorittaa itse. Käytä sen sijaan " -"ohjelmaa grub-install." - -#: util/grub-setup.c:228 -msgid "DEVICE must be an OS device (e.g. /dev/sda)." -msgstr "LAITTEEN on oltava käyttöjärjestelmälaite (esim. /dev/sda)." - -#: util/grub-setup.c:297 -#, c-format -msgid "Invalid device `%s'.\n" -msgstr "Virheellinen laite â€%sâ€.\n" - -#: util/grub-syslinux2cfg.c:64 -msgid "root directory as it will be seen on runtime [default=/]." -msgstr "juurihakemisto, kuten se nähdään ajoaikana [oletus=/]." - -#: util/grub-syslinux2cfg.c:69 -msgid "" -"current directory of syslinux as it will be seen on runtime [default is " -"parent directory of input file]." -msgstr "" -"nykyinen syslinux-hakemisto kuten se nähdään ajoaikana [oletus on " -"syötetiedoston äitihakemisto]." - -#: util/grub-syslinux2cfg.c:74 -msgid "write output to FILE [default=stdout]." -msgstr "kirjoita tuloste TIEDOSTOon [oletus=vakiotuloste]." - -#: util/grub-syslinux2cfg.c:148 -msgid "Transform syslinux config into GRUB one." -msgstr "Muunna syslinux-asetustiedostonimi GRUB-tiedostonimeksi." - -#: util/mkimage.c:688 util/mkimage.c:717 util/mkimage.c:734 -msgid "cannot compress the kernel image" -msgstr "käyttöjärjestelmäytimen levykuvan tiivistäminen epäonnistui" - -#: util/mkimage.c:766 util/mkimage.c:1077 -#, c-format -msgid "unknown compression %d" -msgstr "tuntematon tiivitys %d" - -#: util/mkimage.c:1088 -msgid "Decompressor is too big" -msgstr "Tiivistyksen purkaja on liian iso" - -#: util/mkimage.c:1133 -#, c-format -msgid "core image is too big (0x%x > 0x%x)" -msgstr "ydinlevykuva on liian iso (0x%x > 0x%x)" - -#: util/mkimage.c:1140 -#, c-format -msgid "kernel image is too big (0x%x > 0x%x)" -msgstr "käyttöjärjestelmäydinlevykuva on liian iso (0x%x > 0x%x)" - -#: util/mkimage.c:1220 util/mkimage.c:1501 -#, c-format -msgid "diskboot.img size must be %u bytes" -msgstr "diskboot.img:n koon on oltava %u tavua" - -#: util/mkimage.c:1571 -msgid "" -"fwstart.img doesn't match the known good version. proceed at your own risk" -msgstr "" -"fwstart.img ei täsmää tunnettuun hyvään versioon, etene omalla riskillä" - -#: util/mkimage.c:1575 util/mkimage.c:1601 -msgid "firmware image is too big" -msgstr "laiteohjelmistolevykuva on liian iso" - -#: util/resolve.c:93 -#, c-format -msgid "invalid line format: %s" -msgstr "virheellinen rivimuoto: %s" - -#: util/setup.c:167 -msgid "the first sector of the core file is not sector-aligned" -msgstr "ydintiedoston ensimmäinen sektori ei ole sektoritasattu" - -#: util/setup.c:177 -msgid "non-sector-aligned data is found in the core file" -msgstr "ei-sektoritasattua dataa löytyi ydintiedostosta" - -#: util/setup.c:199 -msgid "the sectors of the core file are too fragmented" -msgstr "ydintiedoston sektorit ovat liian hajallaan" - -# paikankorvaajasta tulee "boot_path" -#: util/setup.c:280 -#, c-format -msgid "the size of `%s' is not %u" -msgstr "alkulatauspolun â€%s†koko ei ole %u" - -# paikankorvaajasta tulee "core_path" -#: util/setup.c:290 -#, c-format -msgid "the size of `%s' is too small" -msgstr "ydinpolun â€%s†koko on liian pieni" - -#: util/setup.c:428 -msgid "" -"Attempting to install GRUB to a disk with multiple partition labels or both " -"partition label and filesystem. This is not supported yet." -msgstr "" -"Yritetään asentaa GRUB levyasemalle, jossa on useita osionimiöitä tai sekä " -"osionimiö että tiedostojärjestelmä. Tätä ei vielä tueta." - -# dest_dev->disk->name eli kohdelevyaseman nimi -#: util/setup.c:441 -#, c-format -msgid "unable to identify a filesystem in %s; safety check can't be performed" -msgstr "" -"tiedostojärjestelmän tunnistaminen levyasemassa %s epäonnistui; " -"turvatarkistus epäonnistui" - -#. TRANSLATORS: Filesystem may reserve the space just GRUB isn't sure about it. -#: util/setup.c:445 -#, c-format -msgid "" -"%s appears to contain a %s filesystem which isn't known to reserve space for " -"DOS-style boot. Installing GRUB there could result in FILESYSTEM " -"DESTRUCTION if valuable data is overwritten by grub-setup (--skip-fs-probe " -"disables this check, use at your own risk)" -msgstr "" -"%s vaikuttaa sisältävän %s-tiedostojärjestelmän, jonka ei tiedetä varaavan " -"tilaa DOS-tyyliselle käynnistykselle. GRUB-ohjelman asentaminen sinne voi " -"aiheuttaa TIEDOSTOJÄRJESTELMÄN TUHOUTUMISEN, jos grub-setup korvaa arvokasta " -"tietoa (valitsin --skip-fs-probe ottaa pois käytöstä tämän tarkistuksen, " -"käytä sitä omalla vastuullasi)" - -#. TRANSLATORS: Partition map may reserve the space just GRUB isn't sure about it. -#: util/setup.c:458 -#, c-format -msgid "" -"%s appears to contain a %s partition map which isn't known to reserve space " -"for DOS-style boot. Installing GRUB there could result in FILESYSTEM " -"DESTRUCTION if valuable data is overwritten by grub-setup (--skip-fs-probe " -"disables this check, use at your own risk)" -msgstr "" -"%s vaikuttaa sisältävän %s-osiokuvauksen, jonka ei tiedetä varaavan tilaa " -"DOS-tyyliselle käynnistykselle. GRUB-ohjelman asentaminen sinne voi " -"aiheuttaa TIEDOSTOJÄRJESTELMÄN TUHOUTUMISEN, jos grub-setup korvaa arvokasta " -"tietoa (valitsin --skip-fs-probe ottaa pois käytöstä tämän tarkistuksen, " -"käytä sitä omalla vastuullasi)" - -#: util/setup.c:465 -#, c-format -msgid "" -"%s appears to contain a %s partition map and LDM which isn't known to be a " -"safe combination. Installing GRUB there could result in FILESYSTEM " -"DESTRUCTION if valuable data is overwritten by grub-setup (--skip-fs-probe " -"disables this check, use at your own risk)" -msgstr "" -"%s vaikuttaa sisältävän %s-osiokuvauksen ja LDM:n, jonka tiedetään olevan " -"turvaton yhdistelmä. GRUB-ohjelman asentaminen sinne voi aiheuttaa " -"TIEDOSTOJÄRJESTELMÄN TUHOUTUMISEN, jos grub-setup korvaa arvokasta tietoa " -"(valitsin --skip-fs-probe ottaa pois käytöstä tämän tarkistuksen, käytä sitä " -"omalla vastuullasi)" - -#: util/setup.c:478 -msgid "" -"Attempting to install GRUB to a partitionless disk or to a partition. This " -"is a BAD idea." -msgstr "" -"Yritetään asentaa GRUB osioimattomalle levyasemalle tai osiolle. Tämä on " -"HUONO ajatus." - -#: util/setup.c:483 -msgid "" -"Attempting to install GRUB to a disk with multiple partition labels. This " -"is not supported yet." -msgstr "" -"Yritetään asentaa GRUB levyasemalle, jossa on useita osionimiöitä. Tätä ei " -"vielä tueta." - -#: util/setup.c:489 -#, c-format -msgid "Partition style `%s' doesn't support embedding" -msgstr "Osiotyyli â€%s†ei tue upotusta" - -#: util/setup.c:496 -#, c-format -msgid "File system `%s' doesn't support embedding" -msgstr "Tiedostojärjestelmä â€%s†ei tue upotusta" - -#: util/setup.c:537 -msgid "Your embedding area is unusually small. core.img won't fit in it." -msgstr "" -"Upotettava alueesi on epätavallisen pieni. Tiedosto core.img ei mahdu " -"siihen." - -#: util/setup.c:559 util/setup.c:725 util/setup.c:844 -msgid "no terminator in the core image" -msgstr "ei päätöslohkoa ydinlevykuvassa" - -#: util/setup.c:622 -msgid "core.img version mismatch" -msgstr "core.img -versiotäsmäämättömyys" - -#: util/setup.c:675 -msgid "" -"embedding is not possible, but this is required for RAID and LVM install" -msgstr "" -"upottaminen ei ole mahdollista, mutta sitä vaaditaan RAID- ja LVM-" -"asennuksessa" - -#: util/setup.c:682 -#, c-format -msgid "can't determine filesystem on %s" -msgstr "tiedostojärjestelmän määritteleminen kohteessa %s epäonnistui" - -#: util/setup.c:685 -#, c-format -msgid "filesystem `%s' doesn't support blocklists" -msgstr "tiedostojärjestelmä â€%s†ei tue lohkoluetteloja" - -#. TRANSLATORS: cross-disk refers to /boot being on one disk -#. but MBR on another. -#: util/setup.c:694 -msgid "embedding is not possible, but this is required for cross-disk install" -msgstr "" -"upottaminen ei ole mahdollista, mutta sitä vaaditaan asennuksessa kahdelle " -"eri levyasemalle" - -#: util/setup.c:700 -msgid "" -"Embedding is not possible. GRUB can only be installed in this setup by " -"using blocklists. However, blocklists are UNRELIABLE and their use is " -"discouraged." -msgstr "" -"Upottaminen ei ole mahdollista. GRUB voidaan asentaa tällä asetuksella vain " -"käyttäen lohkoluetteloja. Lohkoluettelot ovat kuitenkin EPÄLUOTETTAVIA ja " -"niiden käyttöä ei suositella." - -#. TRANSLATORS: Here GRUB refuses to continue with blocklist install. -#: util/setup.c:705 -msgid "will not proceed with blocklists" -msgstr "ei jatka lohkoluetteloasennusta" - -#: util/setup.c:817 util/setup.c:837 -msgid "blocklists are invalid" -msgstr "lohkoluettelot ovat virheellisiä" - -#: util/setup.c:847 -msgid "blocklists are incomplete" -msgstr "lohkoluettelot eivät ole täydellisiä" - -#~ msgid "%.*s: ARGP_HELP_FMT parameter must be positive" -#~ msgstr "%.*s: ARGP_HELP_FMT-parametrin on oltava positiivinen" - -#~ msgid "%s: option '--%s' doesn't allow an argument\n" -#~ msgstr "%s: valitsin ’--%s’ ei salli argumenttia\n" - -#~ msgid "%s: unrecognized option '--%s'\n" -#~ msgstr "%s: unnistamaton valitsin ’--%s’\n" - -#~ msgid "%s: option '-W %s' doesn't allow an argument\n" -#~ msgstr "%s: valitsin ’-W %s’ ei salli argumenttia\n" - -#~ msgid "%s: option '-W %s' requires an argument\n" -#~ msgstr "%s: valitsin ’-W %s’ vaatii argumentin\n" - -#~ msgid "Usage: %s -o OUTPUT CKBMAP_ARGUMENTS...\\n" -#~ msgstr "Käyttö: %s -o TULOSTE CKBMAP_ARGUMENTIT...\\n" - -#~ msgid "Make GRUB keyboard layout file." -#~ msgstr "Tee GRUB-näppäimistösijoittelutiedosto." - -#~ msgid "print this message and exit" -#~ msgstr "tulosta tämä viesti ja poistu" - -#~ msgid "print the version information and exit" -#~ msgstr "tulosta versiotiedot ja poistu" - -#~ msgid "%s generates a keyboard layout for GRUB using ckbcomp\\n" -#~ msgstr "" -#~ "%s tuottaa näppäimistösijoittelun ckbcomp:ia käyttävälle GRUB:lle\\n" - -#~ msgid "Report bugs to ." -#~ msgstr "" -#~ "Ilmoita vioista (englanniksi) osoitteeseen . Ilmoita " -#~ "käännösvirheistä osoitteeseen ." - -#~ msgid "%s: option requires an argument -- `%s'\\n" -#~ msgstr "%s: valitsin vaatii argumentin -- â€%sâ€\\n" - -#~ msgid "Usage: %s [OPTION]\\n" -#~ msgstr "Käyttö: %s [VALITSIN]\\n" - -#~ msgid "Generate a grub config file" -#~ msgstr "Tuota grub config-tiedosto" - -#~ msgid "output generated config to FILE [default=stdout]" -#~ msgstr "tulostetuotettu asetus TIEDOSTOon [oletus=vakiotuloste]" - -#~ msgid "Unrecognized option `%s'\\n" -#~ msgstr "Tunnistamaton valitsin â€%sâ€\\n" - -#~ msgid "%s: You must run this as root\\n" -#~ msgstr "%s: Sinun on suoritettava tämä root-käyttäjänä\\n" - -#~ msgid "%s: Not found.\\n" -#~ msgstr "%s: Ei löytynyt.\\n" - -#~ msgid "Generating grub configuration file ..." -#~ msgstr "Tuottaa grub-asetustiedoston ..." - -#~ msgid "" -#~ "Syntax errors are detected in generated GRUB config file.\n" -#~ "Ensure that there are no errors in /etc/default/grub\n" -#~ "and /etc/grub.d/* files or please file a bug report with\n" -#~ "%s file attached." -#~ msgstr "" -#~ "Syntaksivirheita havaittu tuotettaessa GRUB-asetustiedostoa.\n" -#~ "Varmista, että tiedostoissa /etc/default/grub ja /etc/grub.d/*\n" -#~ "ei ole mitään virheitä tai tee vikailmoitus tiedosto %s\n" -#~ "liitteenä." - -#~ msgid "done" -#~ msgstr "valmis" - -#~ msgid "Warning:" -#~ msgstr "Varoitus:" - -#~ msgid "Usage: %s [OPTION] MENU_ENTRY\\n" -#~ msgstr "Käyttö: %s [VALITSIN] VALIKKORIVI\\n" - -#~ msgid "Set the default boot menu entry for GRUB, for the next boot only." -#~ msgstr "" -#~ "Aseta käynnistyksen oletusvalikkorivi GRUB:lle, vain seuraavaa " -#~ "käynnistystä varten." - -#~ msgid "" -#~ "expect GRUB images under the directory DIR/%s instead of the %s directory" -#~ msgstr "" -#~ "oleta GRUB-levykuvien olevan hakemiston HAKEMISTO/%s alla eikä %s-" -#~ "hakemiston" - -#~ msgid "" -#~ "MENU_ENTRY is a number, a menu item title or a menu item identifier. " -#~ "Please note that menu items in\n" -#~ "submenus or sub-submenus require specifying the submenu components and " -#~ "then the\n" -#~ "menu item component. The titles should be separated using the greater-" -#~ "than\n" -#~ "character (>) with no extra spaces. Depending on your shell some " -#~ "characters including > may need escaping. More information about this is " -#~ "available\n" -#~ "in the GRUB Manual in the section about the 'default' command. " -#~ msgstr "" -#~ "MENU_ENTRY on numero, valikkoriviotsikko tai valikkorivitunniste. Huomaa, " -#~ "että valikkorivit\n" -#~ "alivalikoissa tai alivalikkojen alivalikoissa vaativat " -#~ "alivalikkokomponenttien määrittelemistä\n" -#~ "ja sitten valikkorivikomponentin. Otsikot pitäisi erotella käyttäen " -#~ "suurempi kuin -merkkiä (>)\n" -#~ "ilman ylimääräisiä välilyöntejä. Käyttöjärjestelmän pääteikkunasta " -#~ "riippuen jotkut merkit, joihin\n" -#~ "sisältyy >, saattavat tarvita koodinvaihtomerkkejä. Lisätietoja tästä on " -#~ "saatavilla GRUB-\n" -#~ "käsikirjassa 'default'-komentoa käsittelevässä kappaleessa. " - -#~ msgid "More than one menu entry?" -#~ msgstr "Useampi kuin yksi valikkorivi?" - -#~ msgid "Menu entry not specified." -#~ msgstr "Valikkoriviä ei ole määritelty." - -#~ msgid "Set the default boot menu entry for GRUB." -#~ msgstr "Aseta käynnistyksen oletusvalikkorivi GRUB:lle" - -#~ msgid "This requires setting GRUB_DEFAULT=saved in %s/default/grub.\\n" -#~ msgstr "" -#~ "Tämä vaatii asetuksen GRUB_DEFAULT=saved tiedostossa %s/default/grub.\\n" - -#~ msgid "MENU_ENTRY is a number, a menu item title or a menu item identifier." -#~ msgstr "" -#~ "VALIKKORIVI on numero tai valikkoriviotsikko tai valikkorivitunniste." - -#~ msgid "" -#~ "Requested serial terminal but GRUB_SERIAL_COMMAND is unspecified. Default " -#~ "parameters will be used." -#~ msgstr "" -#~ "Pyydettiin sarjapääteikkuna, mutta GRUB_SERIAL_COMMAND on " -#~ "määrittelemätön. Käytetään oletusparametreja." - -#~ msgid "Found theme: %s\\n" -#~ msgstr "Teema löytyi: %s\\n" - -#~ msgid "Found background: %s\\n" -#~ msgstr "Tausta löytyi: %s\\n" - -#~ msgid "Unsupported image format" -#~ msgstr "Tukematon levykuvamuoto" - -#~ msgid "" -#~ "Setting GRUB_TIMEOUT to a non-zero value when GRUB_HIDDEN_TIMEOUT is set " -#~ "is no longer supported." -#~ msgstr "" -#~ "Ei tueta enää GRUB_TIMEOUT-arvon asettamista ei-nollaksi, kun " -#~ "GRUB_HIDDEN_TIMEOUT on asetettu." - -#~ msgid "Found GNU Mach: %s" -#~ msgstr "GNU Mach löytyi: %s" - -#~ msgid "Found Hurd module: %s" -#~ msgstr "Hurd-moduuli löytyi: %s" - -#~ msgid "Some Hurd stuff found, but not enough to boot." -#~ msgstr "Löytyi jotain Hurd-materiaalia, mutta ei kylliksi käynnistykseen." - -#~ msgid "%s, with Hurd %s (recovery mode)" -#~ msgstr "%s, jakeluversiolla Hurd %s (toipumistila)" - -#~ msgid "%s, with Hurd %s" -#~ msgstr "%s, jakeluversiolla Hurd %s" - -#~ msgid "" -#~ "Please don't use old title `%s' for GRUB_DEFAULT, use `%s' (for versions " -#~ "before 2.00) or `%s' (for 2.00 or later)" -#~ msgstr "" -#~ "Älä käytä vanhaa otsikkoa â€%s†GRUB_DEFAULT-määrittelyksi, käytä " -#~ "â€%s†(versioille ennen 2.00) tai â€%s†(versiolla 2.00 ja myöhäisemmille)" - -#~ msgid "Loading GNU Mach ..." -#~ msgstr "Ladataan GNU Mach ..." - -#~ msgid "Loading the Hurd ..." -#~ msgstr "Ladataan Hurd ..." - -#~ msgid "Advanced options for %s" -#~ msgstr "Lisävalitsimet kohteelle â€%sâ€" - -#~ msgid "Loading kernel of Illumos ..." -#~ msgstr "Ladataan Illumos-käyttöjärjestelmäydin ..." - -#~ msgid "%s, with kFreeBSD %s (recovery mode)" -#~ msgstr "%s, jakeluversiolla kFreeBSD %s (toipumistila)" - -#~ msgid "%s, with kFreeBSD %s" -#~ msgstr "%s, jakeluversiolla kFreeBSD %s" - -#~ msgid "Loading kernel of FreeBSD %s ..." -#~ msgstr "Ladataan FreeBSD %s käyttöjärjestelmäydin ..." - -#~ msgid "Found kernel of FreeBSD: %s\\n" -#~ msgstr "FreeBSD-käyttöjärjestelmäydin löytyi: %s\\n" - -#~ msgid "Found kernel module directory: %s\\n" -#~ msgstr "Käyttöjärjestelmämoduulihakemisto löytyi: %s\\n" - -#~ msgid "%s, with Linux %s (recovery mode)" -#~ msgstr "%s, jakeluversiolla Linux %s (toipumistila)" - -#~ msgid "%s, with Linux %s" -#~ msgstr "%s, jakeluversiolla Linux %s" - -#~ msgid "Loading Linux %s ..." -#~ msgstr "Ladataan Linux %s käyttöjärjestelmäydin ..." - -#~ msgid "Loading initial ramdisk ..." -#~ msgstr "Ladataan alustavaa ramlevyä ..." - -#~ msgid "Found linux image: %s\\n" -#~ msgstr "Linux-levykuva löytyi: %s\\n" - -#~ msgid "Found initrd image: %s\\n" -#~ msgstr "Löytyi initrd-levykuva: %s\\n" - -#~ msgid "%s, with kernel %s (via %s, recovery mode)" -#~ msgstr "%s, jakeluversiolla ydin %s (%s-kautta, toipumistila)" - -#~ msgid "%s, with kernel %s (via %s)" -#~ msgstr "%s, jakeluversiolla ydin %s (%s-kautta)" - -#~ msgid "Found NetBSD kernel: %s\\n" -#~ msgstr "NetBSD-käyttöjärjestelmäydin löytyi: %s\\n" - -#~ msgid "Windows Vista/7 (loader)" -#~ msgstr "Windows Vista/7 (-lataaja)" - -#~ msgid "Windows NT/2000/XP (loader)" -#~ msgstr "Windows NT/2000/XP (-lataaja)" - -#~ msgid "Found %s on %s (%s)\\n" -#~ msgstr "Löytyi %s kohteelta %s (%s)\\n" - -#~ msgid "(32-bit)" -#~ msgstr "(32-bittinen)" - -#~ msgid "(64-bit)" -#~ msgstr "(64-bittinen)" - -#~ msgid "(on %s)" -#~ msgstr "(kohteella %s)" - -#~ msgid "%s, with Xen %s and Linux %s (recovery mode)" -#~ msgstr "%s, jakeluversioilla Xen %s ja Linux %s (toipumistila)" - -#~ msgid "%s, with Xen %s and Linux %s" -#~ msgstr "%s, jakeluversioilla Xen %s ja Linux %s" - -#~ msgid "%s, with Xen hypervisor" -#~ msgstr "%s, jakeluversiolla Xen hypervisor" - -#~ msgid "Loading Xen %s ..." -#~ msgstr "Ladataan Xen %s ..." - -#~ msgid "Xen hypervisor, version %s" -#~ msgstr "Xen hypervisor, versio %s" - -#~ msgid "Advanced options for %s (with Xen hypervisor)" -#~ msgstr "Lisävalitsimet kohteelle %s (Xen hypervisor -jakeluversiolla)" - -#~ msgid "Found %s on %s\\n" -#~ msgstr "Löytyi %s kohteella %s\\n" - -#~ msgid "%s is not yet supported by grub-mkconfig.\\n" -#~ msgstr "grub-mkconfig ei vielä tue kohdetta %s.\\n" - -#~ msgid "Unsupported substitution flag: 0x%x\n" -#~ msgstr "Tukematon korvauslippu: 0x%x\n" - -#~ msgid "Unknown gsub font feature 0x%x (%s)\n" -#~ msgstr "Tuntematon gsub-kirjasinominaisuus 0x%x (%s)\n" - -# PAE tarkoittaa ilmeisesti Physical Address Extension -#~ msgid "Check if FILE can be booted as i386 PAE xen unprivilegied guest" -#~ msgstr "" -#~ "Tarkista, että voidaanko TIEDOSTO alkuladata i386 PAE xen-" -#~ "etuoikeudettomana vieraana" - -#~ msgid "Check if FILE can be booted as x86_64 xen unprivilegied guest" -#~ msgstr "" -#~ "Tarkista, että voidaanko TIEDOSTO alkuladata x86_64 xen-etuoikeudettomana " -#~ "vieraana" - -#~ msgid "Check if FILE can be used as xen x86 privilegied guest kernel" -#~ msgstr "" -#~ "Tarkista, että voidaanko TIEDOSTO alkuladata xen x86-etuoikeudellisena " -#~ "vierasytimenä" - -#~ msgid "root directory of the syslinux disk (default /)." -#~ msgstr "syslinux-levyn juurihakemisto (oletus /)." - -#~ msgid "assume isolinux." -#~ msgstr "otaksu isolinux." - -#~ msgid "assume pxelinux." -#~ msgstr "otaksu pxelinux." - -#~ msgid "assume syslinux." -#~ msgstr "otaksu syslinux." - -#~ msgid "%s is neither hfs nor hfsplus" -#~ msgstr "%s ei ole hfs eikä hfsplus" - -#~ msgid "copies GRUB images into net_directory/subdir/target_cpu-platform." -#~ msgstr "" -#~ "kopioi GRUB-levykuvat kohteeseen net_directory/subdir/target_cpu-platform." - -#~ msgid "" -#~ "Generates a bootable rescue image with specified source files, source " -#~ "directories, or mkisofs options listed by the output of `%s'.\n" -#~ "\n" -#~ "Option -- switches to native xorriso command mode.\n" -#~ "\n" -#~ "Mail xorriso support requests to ." -#~ msgstr "" -#~ "Tuottaa alkuladattavan pelastuslevykuvan määrätyillä lähdetiedostoilla, " -#~ "lähdehakemistoilla, tai â€%sâ€-tulosteessa luetelluilla mkisofs-" -#~ "valitsimilla.\n" -#~ "\n" -#~ "Valitsin -- vaihtaa alkuperäiseen xorriso-komentotilaan.\n" -#~ "\n" -#~ "Lähetä xorriso-tukipyynnöt osoitteeseen ." - -#~ msgid "" -#~ "print filesystem module, GRUB drive, system device, partition map module, " -#~ "abstraction module or cryptographic container UUID [default=fs]" -#~ msgstr "" -#~ "tulosta tiedostojärjestelmämoduuli, GRUB-levyasema, järjestelmälaite, " -#~ "osiokuvausmoduuli, abstraktiomoduuli tai salaussäiliön UUID [oletus=fs]" - -#~ msgid "current directory of the syslinux disk [default=$pwd]." -#~ msgstr "syslinux-levyn nykyinen hakemisto [oletus=$pwd]." - -#~ msgid "use DIR as root directory [default=/]" -#~ msgstr "käytä HAKEMISTO-hakemistoa juurihakemistona [oletus=/]" - -#~ msgid "Address range not associated with RAM" -#~ msgstr "Osoitealue ei liity RAM-muistiin" - -#~ msgid "PUBKEY_FILE" -#~ msgstr "JULKISEN_AVAIMEN_TIEDOSTO" - -#~ msgid "grub_memalign is not supported on your system" -#~ msgstr "grub_memalign ei tueta järjestelmässäsi" - -#~ msgid "If FILENAME is `-', the default value %s is used." -#~ msgstr "Jos TIEDOSTONIMI on â€-â€, käytetään oletusarvo %s." - -#~ msgid "save only the ASCII bitmaps" -#~ msgstr "tallenna vain ASCII-bittikartoissa" - -#~ msgid "create width summary file" -#~ msgstr "luo leveysyhteenvetotiedosto" - -#~ msgid "Option --ascii-bitmaps doesn't accept ranges (it always uses ASCII)." -#~ msgstr "" -#~ "Valitsin --ascii-bitmaps ei hyväksy lukualueita (se käyttää aina ASCII:a)." - -#~ msgid "WARNING: your random generator isn't known to be secure\n" -#~ msgstr "VAROITUS: satunnaislukugeneraattorisi on tunnetusti turvaton\n" - -#~ msgid "failed to read the first sector of the core image" -#~ msgstr "ydinlevykuvan ensimmäisen sektorin lukeminen epäonnistui" - -#~ msgid "use FILE as grub-setup" -#~ msgstr "käytä TIEDOSTOa grub-setup -asetuksena" - -#~ msgid "use FILE as grub-mkrelpath" -#~ msgstr "käytä TIEDOSTOa grub-mkrelpath -kohteena" - -#~ msgid "use FILE as grub-probe" -#~ msgstr "käytä TIEDOSTOa grub-probe -kohteena" - -#~ msgid "INSTALL_DEVICE must be system device filename." -#~ msgstr "INSTALL_DEVICE on oltava järjestelmälaitteen tiedostonimi." - -#~ msgid "" -#~ "Path `%s' is not readable by GRUB on boot. Installation is impossible. " -#~ "Aborting.\\n" -#~ msgstr "" -#~ "GRUB ei pysty lukemaan polkua â€%s†alkulatauksen yhteydessä. Asennus on " -#~ "mahdotonta. Keskeytetään.\\n" - -#~ msgid "Auto-detection of a filesystem of %s failed.\\n" -#~ msgstr "Tiedostojärjestelmän %s automaattihavaitseminen epäonnistui.\\n" - -#~ msgid "Try with --recheck." -#~ msgstr "Yritä valitsinta --recheck." - -#~ msgid "" -#~ "If the problem persists please report this together with the output of %s " -#~ "to <%s>" -#~ msgstr "" -#~ "Jos pulma on pysyvä, ilmoita tästä yhdessä %s-tulosteen kanssa " -#~ "osoitteeseen <%s>." - -#~ msgid "`%s' failed.\\n" -#~ msgstr "â€%s†epäonnistui.\\n" - -#~ msgid "" -#~ "Can't find GRUB drive for %s; unable to create EFI Boot Manager entry.\\n" -#~ msgstr "" -#~ "GRUB-levyaseman etsiminen kohteelle %s epäonnistui; ei kyetä luomaan EFI-" -#~ "alkulataushallintariviä.\\n" - -#~ msgid "Generating grub.cfg ..." -#~ msgstr "Tuotetaan tiedosto grub.cfg ..." - -#~ msgid "use FILE as grub-glue-efi" -#~ msgstr "käytä TIEDOSTOa grub-glue-efi -levykuvana" - -#~ msgid "use FILE as grub-render-label" -#~ msgstr "käytä TIEDOSTOa grub-render-label -kohteena" - -#~ msgid "Packed pixel " -#~ msgstr "Pakattu pikseli " - -#~ msgid "use GRUB images from DIR. Takes precedence over target" -#~ msgstr "" -#~ "käytä GRB-levykuvia hakemistosta HAKEMISTO. Ottaa etusijan kohteen sijasta" - -#~ msgid "Couldn't find physical volume `%s'. Check your device.map" -#~ msgstr "" -#~ "Fyysisen taltion â€%s†löytäminen epäonnistui. Tarkista device.map-" -#~ "tiedostosi" - -#~ msgid "Storage info for `%s' does not include name" -#~ msgstr "Tallennusvälinetieto â€%s†ei sisällä nimeä" - -#~ msgid "Bogus name length for storage info for `%s'" -#~ msgstr "Tallennusvälinetiedon valenimipituus kohteelle â€%sâ€" - -#~ msgid "Storage name for `%s' not NUL-terminated" -#~ msgstr "Tallennusvälinenimi kohteelle â€%s†ei ole NUL-päätteinen" - -#~ msgid "diskboot.img is not one sector size" -#~ msgstr "diskboot.img ei ole yhden sektorin kokoinen" - -#~ msgid "loopback command fails" -#~ msgstr "takaisinkytkentäkomento epäonnistui" - -#~ msgid "cryptomount command fails: %s" -#~ msgstr "salauslaitteen liitäntäkomento epäonnistuu: %s" - -#~ msgid "%s: option requires an argument -- `%s'" -#~ msgstr "%s: valitsin vaatii argumentin -- â€%sâ€" - -#~ msgid "Legend: P=Packed pixel, D=Direct color, mask/pos=R/G/B/reserved" -#~ msgstr "" -#~ "Selite: P=Pakattu pikseli, D=Suora väri, peite/sijainti=R/G/B/reserved" - -#~ msgid "FIXME: no / in buf. (make_system_path_relative_to_its_root)" -#~ msgstr "" -#~ "KORJAA MINUT: numero / puskurissa. (make_system_path_relative_to_its_root)" - -#~ msgid "Make GRUB rescue image." -#~ msgstr "Tee GRUB-pelastuslevykuva." - -# Tässä on luultavasti typo sanassa "tablesv" -#~ msgid "Show v2 and v3 tablesv only." -#~ msgstr "Näytä vain v2- ja v3-taulut." - -#~ msgid "Unknown " -#~ msgstr "Tuntematon " - -#~ msgid "Map table size exceeded" -#~ msgstr "Kuvaustaulukoko ylitettiin" - -#~ msgid "Try `%s --help' for more information.\n" -#~ msgstr "Lisätietoja komennolla â€%s --helpâ€.\n" - -#~ msgid "" -#~ "Usage: %s [OPTION]...\n" -#~ "\n" -#~ "GRUB emulator.\n" -#~ "\n" -#~ " -r, --root-device=DEV use DEV as the root device [default=host]\n" -#~ " -m, --device-map=FILE use FILE as the device map [default=%s]\n" -#~ " -d, --directory=DIR use GRUB files in the directory HAKEMISTO " -#~ "[default=%s]\n" -#~ " -v, --verbose print verbose messages\n" -#~ " -H, --hold[=SECONDS] wait until a debugger will attach\n" -#~ " -h, --help display this message and exit\n" -#~ " -V, --version print version information and exit\n" -#~ "\n" -#~ "Report bugs to <%s>.\n" -#~ msgstr "" -#~ "Käyttö: %s [VALITSIN]...\n" -#~ "\n" -#~ "GRUB-emulaattori.\n" -#~ "\n" -#~ " -r, --root-device=DEV käytä DEV root-laitteena [oletus=tietokone]\n" -#~ " -m, --device-map=FILE käytä tiedostoa FILE laitekuvauksena [oletus=" -#~ "%s]\n" -#~ " -d, --directory=HAKEMISTO käytä GRUB-tiedostoja hakemistossa " -#~ "HAKEMISTO [oletus=%s]\n" -#~ " -v, --verbose tulosta sanomat laveasti\n" -#~ " -H, --hold[=SEKUNTIA] odota kunnes vikajäljitin liittyy\n" -#~ " -h, --help näytä tämä sanoma ja poistu\n" -#~ " -V, --version tulosta versiotiedot ja poistu\n" -#~ "\n" -#~ "Ilmoita vioista (englanniksi) osoitteeseen <%s>.\n" -#~ "Ilmoita käännösvirheistä osoitteeseen .\n" - -#~ msgid "" -#~ "%s is deprecated. Use set gfxpayload=text before linux command instead.\n" -#~ msgstr "" -#~ "%s on vanhentunut. Käytä sen sijaan â€set gfxpayload=text†ennen linux-" -#~ "komentoa.\n" - -#~ msgid "Transform a sytem filename into GRUB one." -#~ msgstr "Muunna järjestelmätiedostonimi GRUB-tiedostonimeksi." - -#~ msgid "Serial terminal not available on this platform." -#~ msgstr "Sarjapääteikkuna ei ole käytettävissä tällä alustalla." - -#~ msgid "Usage: %s [OPTION] install_device" -#~ msgstr "Käyttö: %s [VALITSIN] install_device" - -#~ msgid "Usage: %s [OPTION] [install_device]" -#~ msgstr "Käyttö: %s [VALITSIN] [install_device]" - -#~ msgid "the ID of bootloader." -#~ msgstr "alkulatauslataajatunniste." - -#~ msgid "" -#~ "UUID needed with ata mod, but the filesystem containing %s does not " -#~ "support UUIDs.\\n" -#~ msgstr "" -#~ "UUID tarvittu ata mod -tilassa, mutta tiedostojärjestelmä, joka sisältää " -#~ "kohteen %s, ei tue UUID-tunnisteita.\\n" - -#~ msgid "" -#~ "UUID needed with cross-disk installs, but the filesystem containing %s " -#~ "does not support UUIDs.\\n" -#~ msgstr "" -#~ "UUID tarvittu levyjen välisiin asennuksiin, mutta tiedostojärjestelmä, " -#~ "joka sisältää kohteen %s, ei tue UUID-tunnisteita.\\n" - -#~ msgid "No font for video terminal found." -#~ msgstr "Kirjasimia videopääteikkunaan ei löytynyt." - -#~ msgid "Usage: %s [OPTION] install_device\\n" -#~ msgstr "Käyttö: %s [VALITSIN} install_device\\n" - -#~ msgid "Usage: %s [OPTION] entry\\n" -#~ msgstr "Käyttö: %s [VALITSIN] rivi\\n" - -#~ msgid "Expose v1 tables." -#~ msgstr "Paljasta v1-taulut." - -#~ msgid "Fake BIOS." -#~ msgstr "Vale-BIOS." - -#~ msgid "Check hash list file." -#~ msgstr "Tarkista hajakoodausluettelotiedosto." - -#~ msgid "DIRECTORY" -#~ msgstr "HAKEMISTO" - -#~ msgid "Unload PXE environment." -#~ msgstr "Pura PXE-ympäristö." - -#~ msgid "Read word from PORT." -#~ msgstr "Lue word-data portista PORTTI." - -#~ msgid "Read dword from PORT." -#~ msgstr "Lue dword-data portista PORTTI." - -#~ msgid "Write word VALUE to PORT." -#~ msgstr "Kirjoita word-ARVO porttiin PORTTI." - -#~ msgid "Write dword VALUE to PORT." -#~ msgstr "kirjoita dword-ARVO porttiin PORTTI." - -#~ msgid "[--shift] [--ctrl] [--alt]" -#~ msgstr "[--shift] [--ctrl] [--alt]" - -#~ msgid "[-1|-2]" -#~ msgstr "[-1|-2]" - -#~ msgid "Read word from ADDR." -#~ msgstr "Lue word-data OSOITTEESTA" - -#~ msgid "Read dword from ADDR." -#~ msgstr "Lue dword-data OSOITTEESTA." - -#~ msgid "Write word VALUE to ADDR." -#~ msgstr "Kirjoita word-data ARVO OSOITTEESEEN." - -#~ msgid "Write dword VALUE to ADDR." -#~ msgstr "kirjoita dword-data ARVO OSOITTEESEEN." - -#~ msgid "Menu entry definition as a string." -#~ msgstr "Valikkorivimäärittely merkkijonona." - -#~ msgid "[DEVICE]" -#~ msgstr "[LAITE]" - -#~ msgid "Variable names to update with matches." -#~ msgstr "Täsmäyksillä päivitettävät muuttujanimet." - -#~ msgid "Authenticate users" -#~ msgstr "Todenna käyttäjät" - -#~ msgid "[n]" -#~ msgstr "[n]" - -#~ msgid "UTF-8 visual" -#~ msgstr "UTF-8 visuaalinen" - -#~ msgid "write error" -#~ msgstr "kirjoitusvirhe" - -#~ msgid "open error" -#~ msgstr "avausvirhe" - -#~ msgid "seek error" -#~ msgstr "hakuvirhe" - -#~ msgid "Hex dump FILE." -#~ msgstr "Heksadesimaalivedos TIEDOSTO." - -#~ msgid "Must use absolute path.\n" -#~ msgstr "On käytettävä absoluuttista polkua.\n" - -#~ msgid "the core image is too small" -#~ msgstr "ydinlevykuva on liian pieni" - -#~ msgid "prefix is too long" -#~ msgstr "etuliite on liian pitkä" - -#~ msgid "" -#~ "Usage: %s [OPTION]... [MODULES]\n" -#~ "\n" -#~ "Make a bootable image of GRUB.\n" -#~ "\n" -#~ " -d, --directory=DIR use images and modules under DIR [default=%s/" -#~ "@platform@]\n" -#~ " -p, --prefix=DIR set grub_prefix directory [default=%s]\n" -#~ " -m, --memdisk=FILE embed FILE as a memdisk image\n" -#~ " -c, --config=FILE embed FILE as boot config\n" -#~ " -n, --note add NOTE segment for CHRP Open Firmware\n" -#~ " -o, --output=FILE output a generated image to FILE " -#~ "[default=stdout]\n" -#~ " -O, --format=FORMAT generate an image in format\n" -#~ " available formats: %s\n" -#~ " -C, --compression=(xz|none|auto) choose the compression to use\n" -#~ " -h, --help display this message and exit\n" -#~ " -V, --version print version information and exit\n" -#~ " -v, --verbose print verbose messages\n" -#~ "\n" -#~ "Report bugs to <%s>.\n" -#~ msgstr "" -#~ "Käyttö: %s [VALITSIN]... [MODUULIT]\n" -#~ "\n" -#~ "Tee alkuladattava GRUB-levykuva.\n" -#~ "\n" -#~ " -d, --directory=HAKEMISTO käytä levykuvia ja moduuleja hakemiston " -#~ "HAKEMISTO alla [oletus=%s/@platform@]\n" -#~ " -p, --prefix=HAKEMISTO aseta grub_prefix-hakemisto [oletus=%s]\n" -#~ " -m, --memdisk=TIEDOSTO upota TIEDOSTO memdisk-levykuvana\n" -#~ " -c, --config=TIEDOSTO upota TIEDOSTO alkulatausasetuksena\n" -#~ " -n, --note lisää NOTE-segmentti CHRP-avoimelle mikro-" -#~ "ohjelmistolle\n" -#~ " -o, --output=TIEDOSTO tulosta tuotettu levykuva TIEDOSTOon " -#~ "[oletus=vakiotuloste]\n" -#~ " -O, --format=MUOTO tuota levykuva muodossa\n" -#~ " käytettävissä olevat muodot: %s\n" -#~ " -C, --compression=(xz|none|auto) valitse käytettävä tiivistys\n" -#~ " -h, --help näytä tämä viesti ja poistu\n" -#~ " -V, --version tulosta versiotiedot ja poistu\n" -#~ " -v, --verbose tulosta viestit laveasti\n" -#~ "\n" -#~ "Ilmoita virheistä (englanniksi) osoitteeseen <%s>.\n" -#~ "Ilmoita käännösvirheistä osoitteeseen \n" - -#~ msgid "(N/A)" -#~ msgstr "(-/-)" diff --git a/thirdparty/grub-2.04/po/fr.gmo b/thirdparty/grub-2.04/po/fr.gmo deleted file mode 100644 index 19bc0e5fe80435958c8deacbc25100290bafb520..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 131767 zcmdqKcYIXUySF`&BE5<Mzv49PG@7Pfk z{aLVJ$Bw;=U9ooseXj3XYbJ?+&pGdV&OguoxN_~)+r949_TYP+nx5z5>C(*SI|x2D z$me^mxzAT|m|T6nD=U1y{_ra3!N*|__$llP<0^f=17UYK0FHp2;T$*?mO+y9T?t#m z8(>Sg3ATX`!andB*a?0KmF{lX1$GJAa6@4t_VF+tmcS-(Eo=wRhE3zh$ML$5&$mDJ zo2n=q{&yZlT=*|em9xOb$oG>h***b8=p2f(q8v!TK*g{p4=c7#<>{dW>n z{nk16+o0S@TG2gJ|R!)+j`uT9!4ThllaSim~1+W9W7aj(HpA8qBT zCse+DpvpZKsvjmh_cW;XTLeeIqoL|~GwcfAhuz_?Q0a6$#@Yu#<(C50PDeobm%}db zB&hbh(79g^)h-W0^~<~?{2 z{0n-p=kd1OlVMNn3mun3#Xr~i-vJNC{-Wcr&b{{ucAQLs8W%ONH@pE3g-W2ohKe78{orYEJiHYu|4*UDO|z42 zdR?K~do+~(m=62HOsIU1g6fAeq0+zF@lmM$+W{5-cQ_cfSZVV~f{K5bV+g7|Yhe!D z2sLivR#_ehXJH=-)t=Q*{e20Pp56re!uz1~**j3@AxHD z`~3_@!WL`nIGPAG&St@Ga1K;@K`6OC4ITowK$T-RRD1V3)z)(YR5|BDl_v<*Kc~XZ z@J1*(dk`w!FQCfT>@;Kp_J{r9xlrle10^5NL*@51RC{zf-NqjV2V$QEC%`JGa^D1% z?pAm-{1B?27oB1I?Rcp2tcH@qi=pz{4qL%5VH@}}RDS!dwe>g%UV?oxRKLCfhbkOY zz5A}S{Wk$hpJYL`a}iYj%c1nf#f~?_LD(OFivI~z{ddEIVc#>+NpKcaJ=ef#a3gFD zzlZJNZpXG~*?RPXl8@0)`ObhNU>R%*FNW>l6^^&Tao8V(`@^51(%%g`z?Ns*`t*Qu z9|4=e$*?(0fg@l#RJ$GxJHmBP?QkVj`)-EPchA9i=sU-@*TGQbnFNQxL*ZCh1J%B_ zK=tPvuoL_Rz6e{MYsb@Dun7Au7=Zru*8U_c!#?ahD_`fsS=gJOZ_~+!Be562!EilP zeYU_j_&C&fd=jdB@4(^kD`)R{fvwjND0xVRW8e``a=RYRhMVA<@NX!&fAd0{?$1#1 zT3uxI#XzWb9SX<6kuVjOLG{~hj+>z5;a->nKY+?_<2qwp9odH*^Y~$#$5Ti#w!_H?NHmqL}d z3aWg^!@lrrsQ8

u=J`T3f|= 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¸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 diff --git a/thirdparty/grub-2.04/po/it.po b/thirdparty/grub-2.04/po/it.po deleted file mode 100644 index 338e535e8..000000000 --- a/thirdparty/grub-2.04/po/it.po +++ /dev/null @@ -1,6683 +0,0 @@ -# Italian translations for grub package -# Copyright (C) 2009, 2010, 2011, 2012, 2013, 2017, 2019 Free Software Foundation, Inc. -# This file is distributed under the same license as the grub package. -# -# transparent compression -> compressione immediata -# non avendo trovato molto in giro, ho cercato un sinonimo di -# "trasparente". Praticamente la "transparent compression" è una -# compressione on-the-fly, "trasparente" all'utente, da qui -# "immediata", visto che non si nota -# boot catalog -> lasciato invariato, dovrebbe essere il file boot.catalog, non so -# se tradurlo con "catalogo di boot" sia comprensibile... -# Joliet -> usato sempre con la maiuscola -# -# http://en.wikipedia.org/wiki/Transparency_(computing) -# http://en.wikipedia.org/wiki/Rock_Ridge -# http://en.wikipedia.org/wiki/Joliet_(file_system) -# http://www.linux.com/archive/feature/151485 -# Milo Casagrande , 2009, 2010, 2011, 2012, 2013, 2017, 2019. -# -msgid "" -msgstr "" -"Project-Id-Version: grub-2.04-pre1\n" -"Report-Msgid-Bugs-To: bug-grub@gnu.org\n" -"POT-Creation-Date: 2019-07-04 16:09+0200\n" -"PO-Revision-Date: 2019-04-09 14:02+0200\n" -"Last-Translator: Milo Casagrande \n" -"Language-Team: Italian \n" -"Language: it\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Bugs: Report translation errors to the Language-Team address.\n" -"Plural-Forms: nplurals=2; plural=(n!=1);\n" -"X-Generator: Poedit 2.2.1\n" - -#: grub-core/bus/usb/serial/ftdi.c:145 grub-core/bus/usb/serial/pl2303.c:158 -#: grub-core/term/ieee1275/escc.c:169 grub-core/term/ns8250.c:202 -msgid "unsupported serial port speed" -msgstr "velocità della porta seriale non supportata" - -#: grub-core/bus/usb/serial/ftdi.c:151 grub-core/bus/usb/serial/pl2303.c:164 -#: grub-core/term/efi/serial.c:116 grub-core/term/ieee1275/escc.c:175 -#: grub-core/term/ns8250.c:208 grub-core/term/serial.c:227 -#: grub-core/term/serial.c:243 -msgid "unsupported serial port parity" -msgstr "parità della porta seriale non supportata" - -#: grub-core/bus/usb/serial/ftdi.c:157 grub-core/bus/usb/serial/pl2303.c:170 -#: grub-core/term/efi/serial.c:122 grub-core/term/ieee1275/escc.c:181 -#: grub-core/term/ns8250.c:213 grub-core/term/serial.c:267 -msgid "unsupported serial port stop bits number" -msgstr "numero di bit di stop della porta seriale non supportati" - -#: grub-core/bus/usb/serial/ftdi.c:161 grub-core/bus/usb/serial/pl2303.c:174 -#: grub-core/term/efi/serial.c:126 grub-core/term/ieee1275/escc.c:185 -#: grub-core/term/ns8250.c:217 -msgid "unsupported serial port word length" -msgstr "lunghezza della parola della porta seriale non supportata" - -#: grub-core/commands/acpi.c:42 -msgid "Don't load host tables specified by comma-separated list." -msgstr "Non carica le tabelle host specificate come elenco separato da virgole" - -#: grub-core/commands/acpi.c:45 -msgid "Load only tables specified by comma-separated list." -msgstr "Carica solo le tabelle specificate come elenco separato da virgole" - -#: grub-core/commands/acpi.c:46 -msgid "Export version 1 tables to the OS." -msgstr "Espone la versione 1 delle tabelle al sistema operativo" - -#: grub-core/commands/acpi.c:47 -msgid "Export version 2 and version 3 tables to the OS." -msgstr "Espone le versioni 2 e 3 delle tabelle al sistema operativo" - -#: grub-core/commands/acpi.c:48 -msgid "Set OEMID of RSDP, XSDT and RSDT." -msgstr "Imposta OEMID di RSDP, XSDT e RSDT" - -#: grub-core/commands/acpi.c:50 -msgid "Set OEMTABLE ID of RSDP, XSDT and RSDT." -msgstr "Imposta l'ID OEMTABLE di RSDP, XSDT e RSDT" - -#: grub-core/commands/acpi.c:52 -msgid "Set OEMTABLE revision of RSDP, XSDT and RSDT." -msgstr "Imposta la revisione OEMTABLE di RSDP, XSDT e RSDT" - -#: grub-core/commands/acpi.c:54 -msgid "Set creator field of RSDP, XSDT and RSDT." -msgstr "Imposta il campo creatore di RSDP, XSDT e RSDT" - -#: grub-core/commands/acpi.c:56 -msgid "Set creator revision of RSDP, XSDT and RSDT." -msgstr "Imposta la revisione del creatore di RSDP, XSDT e RSDT" - -#. TRANSLATORS: "hangs" here is a noun, not a verb. -#: grub-core/commands/acpi.c:58 -msgid "" -"Don't update EBDA. May fix failures or hangs on some BIOSes but makes it " -"ineffective with OS not receiving RSDP from GRUB." -msgstr "" -"Non aggiorna EBDA: potrebbe risolvere dei problemi o dei blocchi con alcuni " -"BIOS, ma non è efficace con sistemi operativi che non ricevono RSDP da GRUB" - -#: grub-core/commands/acpi.c:650 grub-core/commands/acpi.c:667 -#: grub-core/commands/i386/pc/play.c:105 grub-core/commands/keylayouts.c:230 -#: grub-core/commands/keylayouts.c:245 grub-core/commands/keylayouts.c:263 -#: grub-core/commands/verifiers.c:156 grub-core/efiemu/loadcore.c:350 -#: grub-core/kern/elf.c:117 grub-core/kern/elfXX.c:29 -#: grub-core/kern/elfXX.c:156 grub-core/loader/arm/linux.c:319 -#: grub-core/loader/arm64/linux.c:330 grub-core/loader/arm64/xen_boot.c:356 -#: grub-core/loader/efi/chainloader.c:276 -#: grub-core/loader/efi/chainloader.c:297 -#: grub-core/loader/efi/chainloader.c:329 grub-core/loader/efi/fdt.c:138 -#: grub-core/loader/i386/bsd.c:1276 grub-core/loader/i386/bsd.c:2116 -#: grub-core/loader/i386/bsdXX.c:20 grub-core/loader/i386/bsdXX.c:36 -#: grub-core/loader/i386/bsdXX.c:63 grub-core/loader/i386/bsdXX.c:357 -#: grub-core/loader/i386/bsdXX.c:376 grub-core/loader/i386/bsdXX.c:519 -#: grub-core/loader/i386/bsdXX.c:535 grub-core/loader/i386/bsdXX.c:615 -#: grub-core/loader/i386/bsdXX.c:638 -#: grub-core/loader/i386/coreboot/chainloader.c:112 -#: grub-core/loader/i386/coreboot/chainloader.c:148 -#: grub-core/loader/i386/coreboot/chainloader.c:170 -#: grub-core/loader/i386/linux.c:667 grub-core/loader/i386/linux.c:788 -#: grub-core/loader/i386/linux.c:1005 grub-core/loader/i386/multiboot_mbi.c:171 -#: grub-core/loader/i386/pc/chainloader.c:202 -#: grub-core/loader/i386/pc/linux.c:149 grub-core/loader/i386/pc/linux.c:320 -#: grub-core/loader/i386/pc/linux.c:362 grub-core/loader/i386/pc/plan9.c:457 -#: grub-core/loader/i386/pc/plan9.c:550 grub-core/loader/i386/pc/plan9.c:566 -#: grub-core/loader/i386/xen.c:934 grub-core/loader/i386/xen_file.c:72 -#: grub-core/loader/i386/xen_fileXX.c:43 grub-core/loader/i386/xen_fileXX.c:186 -#: grub-core/loader/i386/xen_fileXX.c:339 grub-core/loader/ia64/efi/linux.c:423 -#: grub-core/loader/ia64/efi/linux.c:471 grub-core/loader/linux.c:286 -#: grub-core/loader/macho.c:84 grub-core/loader/macho.c:109 -#: grub-core/loader/machoXX.c:33 grub-core/loader/machoXX.c:46 -#: grub-core/loader/machoXX.c:76 grub-core/loader/machoXX.c:116 -#: grub-core/loader/machoXX.c:131 grub-core/loader/machoXX.c:147 -#: grub-core/loader/machoXX.c:196 grub-core/loader/machoXX.c:317 -#: grub-core/loader/multiboot.c:434 grub-core/loader/multiboot_elfxx.c:171 -#: grub-core/loader/multiboot_elfxx.c:234 -#: grub-core/loader/multiboot_elfxx.c:278 grub-core/loader/multiboot_mbi2.c:129 -#: grub-core/loader/xnu.c:737 grub-core/loader/xnu.c:795 -#: grub-core/loader/xnu.c:816 grub-core/loader/xnu.c:871 -#: grub-core/loader/xnu.c:914 grub-core/loader/xnu.c:952 -#: grub-core/loader/xnu_resume.c:68 grub-core/loader/xnu_resume.c:153 -#: grub-core/loader/xnu_resume.c:165 util/grub-mkimagexx.c:2288 -#, c-format -msgid "premature end of file %s" -msgstr "fine prematura del file %s" - -#: grub-core/commands/acpi.c:779 -msgid "" -"[-1|-2] [--exclude=TABLE1,TABLE2|--load-only=TABLE1,TABLE2] FILE1 [FILE2] " -"[...]" -msgstr "" -"[-1|-2] [--exclude=TABELLA1,TABELLA2|--load-only=TABELLA1,TABELLA2] FILE1 " -"[FILE2] [...]" - -#: grub-core/commands/acpi.c:782 -msgid "Load host ACPI tables and tables specified by arguments." -msgstr "Carica le tabelle ACPI dell'host e quelle specificate dagli argomenti" - -#: grub-core/commands/acpihalt.c:368 grub-core/kern/err.c:110 -#, c-format -msgid "error: %s.\n" -msgstr "errore: %s.\n" - -#: grub-core/commands/acpihalt.c:368 grub-core/kern/emu/misc.c:95 -#: grub-core/kern/emu/misc.c:105 grub-core/kern/emu/misc.c:134 -#: grub-core/kern/emu/mm.c:34 grub-core/kern/emu/mm.c:62 -#: grub-core/kern/mm.c:374 grub-core/lib/relocator.c:1282 -#: grub-core/lib/relocator.c:1439 grub-core/lib/relocator.c:1538 -#: grub-core/loader/arm/linux.c:259 grub-core/loader/arm64/linux.c:265 -#: grub-core/loader/arm64/linux.c:321 grub-core/loader/arm64/linux.c:340 -#: grub-core/loader/arm64/xen_boot.c:344 grub-core/loader/arm64/xen_boot.c:367 -#: grub-core/loader/efi/chainloader.c:289 grub-core/osdep/unix/dl.c:48 -#: grub-core/osdep/windows/dl.c:46 grub-core/script/lexer.c:156 -#: grub-core/script/lexer.c:182 -msgid "out of memory" -msgstr "memoria esaurita" - -#: grub-core/commands/acpihalt.c:374 grub-core/disk/cryptodisk.c:587 -#: grub-core/disk/cryptodisk.c:632 grub-core/kern/emu/hostdisk.c:307 -#: grub-core/kern/emu/hostfs.c:149 grub-core/kern/emu/misc.c:200 -#: grub-core/osdep/linux/ofpath.c:195 grub-core/osdep/linux/ofpath.c:521 -#: grub-core/osdep/linux/ofpath.c:534 util/glue-efi.c:80 util/glue-efi.c:94 -#: util/grub-editenv.c:155 util/grub-fstest.c:577 -#: util/grub-install-common.c:943 util/grub-mkrescue.c:634 -#: util/grub-mkrescue.c:888 util/grub-mount.c:506 util/grub-render-label.c:176 -#: util/misc.c:95 util/setup.c:814 util/setup.c:833 -#, c-format -msgid "cannot read `%s': %s" -msgstr "impossibile leggere \"%s\": %s" - -#. TRANSLATORS: It's computer shutdown using ACPI, not disabling ACPI. -#: grub-core/commands/acpihalt.c:452 -msgid "ACPI shutdown failed" -msgstr "Arresto tramite ACPI non riuscito" - -#: grub-core/commands/arc/lsdev.c:51 -msgid "List devices." -msgstr "Elenca i device" - -#: grub-core/commands/blocklist.c:122 grub-core/commands/cat.c:57 -#: grub-core/commands/configfile.c:35 grub-core/commands/efi/loadbios.c:168 -#: grub-core/commands/file.c:159 grub-core/commands/hexdump.c:47 -#: grub-core/commands/legacycfg.c:209 grub-core/commands/legacycfg.c:315 -#: grub-core/commands/minicmd.c:44 grub-core/commands/syslinuxcfg.c:146 -#: grub-core/commands/testload.c:58 grub-core/commands/testspeed.c:52 -#: grub-core/disk/loopback.c:93 grub-core/efiemu/main.c:293 -#: grub-core/font/font_cmd.c:32 grub-core/kern/emu/hostdisk.c:519 -#: grub-core/loader/arm/linux.c:364 grub-core/loader/arm/linux.c:409 -#: grub-core/loader/arm/linux.c:472 grub-core/loader/arm64/linux.c:243 -#: grub-core/loader/arm64/linux.c:297 grub-core/loader/arm64/xen_boot.c:398 -#: grub-core/loader/arm64/xen_boot.c:411 grub-core/loader/arm64/xen_boot.c:462 -#: grub-core/loader/efi/chainloader.c:216 grub-core/loader/i386/bsd.c:1462 -#: grub-core/loader/i386/bsd.c:1807 grub-core/loader/i386/bsd.c:2085 -#: grub-core/loader/i386/coreboot/chainloader.c:438 -#: grub-core/loader/i386/linux.c:656 grub-core/loader/i386/linux.c:1041 -#: grub-core/loader/i386/pc/chainloader.c:290 -#: grub-core/loader/i386/pc/freedos.c:105 grub-core/loader/i386/pc/linux.c:138 -#: grub-core/loader/i386/pc/linux.c:400 grub-core/loader/i386/pc/ntldr.c:85 -#: grub-core/loader/i386/pc/plan9.c:409 -#: grub-core/loader/i386/pc/pxechainloader.c:94 -#: grub-core/loader/i386/pc/truecrypt.c:96 grub-core/loader/i386/xen.c:641 -#: grub-core/loader/i386/xen.c:768 grub-core/loader/i386/xen.c:844 -#: grub-core/loader/i386/xen.c:854 grub-core/loader/i386/xnu.c:488 -#: grub-core/loader/ia64/efi/linux.c:459 grub-core/loader/ia64/efi/linux.c:539 -#: grub-core/loader/mips/linux.c:238 grub-core/loader/mips/linux.c:429 -#: grub-core/loader/multiboot.c:322 grub-core/loader/multiboot.c:374 -#: grub-core/loader/multiboot.c:384 -#: grub-core/loader/powerpc/ieee1275/linux.c:269 -#: grub-core/loader/powerpc/ieee1275/linux.c:341 -#: grub-core/loader/sparc64/ieee1275/linux.c:305 -#: grub-core/loader/sparc64/ieee1275/linux.c:381 grub-core/loader/xnu.c:351 -#: grub-core/loader/xnu.c:460 grub-core/loader/xnu.c:778 -#: grub-core/loader/xnu.c:892 grub-core/loader/xnu.c:1277 -#: grub-core/loader/xnu.c:1427 grub-core/loader/xnu.c:1453 -#: grub-core/video/readers/jpeg.c:812 grub-core/video/readers/png.c:1123 -msgid "filename expected" -msgstr "atteso nome di file" - -#. TRANSLATORS: "embed" is a verb (command description). " -#: grub-core/commands/blocklist.c:154 grub-core/commands/cat.c:163 -#: grub-core/commands/configfile.c:65 grub-core/commands/configfile.c:68 -#: grub-core/commands/configfile.c:74 grub-core/commands/configfile.c:80 -#: grub-core/commands/configfile.c:86 grub-core/commands/hashsum.c:34 -#: grub-core/commands/legacycfg.c:834 grub-core/commands/legacycfg.c:841 -#: grub-core/commands/legacycfg.c:846 grub-core/commands/legacycfg.c:851 -#: grub-core/commands/macbless.c:222 grub-core/commands/minicmd.c:198 -#: grub-core/commands/syslinuxcfg.c:186 grub-core/commands/syslinuxcfg.c:194 -#: grub-core/commands/syslinuxcfg.c:200 grub-core/commands/syslinuxcfg.c:206 -#: grub-core/commands/testload.c:163 grub-core/efiemu/main.c:312 -#: grub-core/kern/emu/main.c:100 grub-core/kern/emu/main.c:103 -#: grub-core/loader/i386/bsd.c:2137 grub-core/loader/i386/bsd.c:2140 -#: grub-core/loader/i386/bsd.c:2143 -#: grub-core/loader/i386/coreboot/chainloader.c:505 -#: grub-core/loader/ia64/efi/linux.c:594 include/grub/util/install.h:32 -#: include/grub/util/install.h:64 util/grub-glue-efi.c:52 -#: util/grub-glue-efi.c:54 util/grub-glue-efi.c:56 util/grub-install.c:254 -#: util/grub-install.c:301 util/grub-mkfont.c:936 util/grub-mkimage.c:68 -#: util/grub-mkimage.c:74 util/grub-mkimage.c:76 util/grub-mkimage.c:78 -#: util/grub-mkimage.c:81 util/grub-mklayout.c:52 util/grub-mklayout.c:54 -#: util/grub-mkrescue.c:97 util/grub-mkrescue.c:101 util/grub-mkrescue.c:104 -#: util/grub-mkrescue.c:105 util/grub-mkrescue.c:106 -#: util/grub-mkstandalone.c:47 util/grub-mkstandalone.c:49 -#: util/grub-probe.c:732 util/grub-render-label.c:59 -#: util/grub-render-label.c:70 util/grub-render-label.c:72 util/grub-setup.c:78 -#: util/grub-setup.c:80 util/grub-setup.c:84 util/grub-syslinux2cfg.c:74 -#: util/grub-syslinux2cfg.c:147 -msgid "FILE" -msgstr "FILE" - -#: grub-core/commands/blocklist.c:154 -msgid "Print a block list." -msgstr "Stampa una blocklist" - -#: grub-core/commands/boot.c:147 grub-core/commands/legacycfg.c:533 -#: grub-core/commands/legacycfg.c:574 grub-core/loader/arm64/linux.c:250 -#: grub-core/loader/i386/bsd.c:1799 grub-core/loader/i386/bsd.c:1900 -#: grub-core/loader/i386/bsd.c:2007 grub-core/loader/i386/bsd.c:2040 -#: grub-core/loader/i386/bsd.c:2089 grub-core/loader/i386/linux.c:1047 -#: grub-core/loader/i386/pc/linux.c:406 grub-core/loader/i386/xen.c:775 -#: grub-core/loader/i386/xen.c:859 grub-core/loader/ia64/efi/linux.c:545 -#: grub-core/loader/mips/linux.c:432 grub-core/loader/multiboot.c:388 -#: grub-core/loader/powerpc/ieee1275/linux.c:347 -#: grub-core/loader/sparc64/ieee1275/linux.c:387 grub-core/loader/xnu.c:572 -#: grub-core/loader/xnu.c:665 grub-core/loader/xnu.c:781 -#: grub-core/loader/xnu.c:895 grub-core/loader/xnu.c:1091 -#: grub-core/loader/xnu.c:1258 grub-core/loader/xnu.c:1289 -#: grub-core/loader/xnu.c:1430 -msgid "you need to load the kernel first" -msgstr "è necessario caricare il kernel prima" - -#: grub-core/commands/boot.c:189 -msgid "Boot an operating system." -msgstr "Avvia un sistema operativo" - -#: grub-core/commands/boottime.c:36 -#: grub-core/commands/i386/coreboot/cb_timestamps.c:108 -msgid "No boot time statistics is available\n" -msgstr "Nessuna statistica disponibile sui tempi di avvio\n" - -#: grub-core/commands/boottime.c:59 -msgid "Show boot time statistics." -msgstr "Mostra statistiche dei tempi di avvio" - -#: grub-core/commands/cacheinfo.c:40 -#, c-format -msgid "Disk cache statistics: hits = %lu (%lu.%02lu%%), misses = %lu\n" -msgstr "Statistiche cache del disco: hit = %lu (%lu.%02lu%%), miss = %lu\n" - -#: grub-core/commands/cacheinfo.c:45 -msgid "No disk cache statistics available\n" -msgstr "Nessuna statistica disponibile della cache del disco\n" - -#: grub-core/commands/cacheinfo.c:56 -msgid "Get disk cache info." -msgstr "Recupera informazioni sulla cache del disco" - -#: grub-core/commands/cat.c:33 -msgid "Accept DOS-style CR/NL line endings." -msgstr "Accetta terminatori di riga in stile DOS (CR/NL)" - -#: grub-core/commands/cat.c:163 grub-core/commands/minicmd.c:198 -msgid "Show the contents of a file." -msgstr "Mostra il contenuto di un file" - -#: grub-core/commands/cmp.c:43 grub-core/commands/i386/pc/drivemap.c:239 -#: grub-core/commands/i386/wrmsr.c:60 grub-core/commands/iorw.c:85 -#: grub-core/commands/memrw.c:84 grub-core/commands/password.c:75 -#: grub-core/commands/password_pbkdf2.c:94 grub-core/commands/pgp.c:826 -#: grub-core/commands/regexp.c:113 grub-core/mmap/mmap.c:517 -#: grub-core/net/dns.c:639 -msgid "two arguments expected" -msgstr "attesi due argomenti" - -#: grub-core/commands/cmp.c:45 -#, c-format -msgid "Compare file `%s' with `%s':\n" -msgstr "Confronta il file \"%s\" con \"%s\":\n" - -#: grub-core/commands/cmp.c:54 -#, c-format -msgid "Files differ in size: %llu [%s], %llu [%s]\n" -msgstr "I file differiscono nella dimensione: %llu [%s], %llu [%s]\n" - -#: grub-core/commands/cmp.c:81 -#, c-format -msgid "Files differ at the offset %llu: 0x%x [%s], 0x%x [%s]\n" -msgstr "I file differiscono all'offset %llu: 0x%x [%s], 0x%x [%s]\n" - -#. TRANSLATORS: it's always exactly 2 files. -#: grub-core/commands/cmp.c:93 -msgid "The files are identical.\n" -msgstr "I file sono identici.\n" - -#: grub-core/commands/cmp.c:113 -msgid "FILE1 FILE2" -msgstr "FILE1 FILE2" - -#: grub-core/commands/cmp.c:113 -msgid "Compare two files." -msgstr "Confronta due file" - -#: grub-core/commands/configfile.c:65 -msgid "Load another config file." -msgstr "Carica un altro file di configurazione" - -#: grub-core/commands/configfile.c:69 grub-core/commands/configfile.c:87 -msgid "Load another config file without changing context." -msgstr "Carica un altro file di configurazione senza cambiare contesto" - -#: grub-core/commands/configfile.c:75 -msgid "" -"Load another config file without changing context but take only menu entries." -msgstr "" -"Carica un altro file di configurazione senza cambiare contesto ma prende " -"solo le voci di menù" - -#: grub-core/commands/configfile.c:81 -msgid "Load another config file but take only menu entries." -msgstr "Carica un altro file di configurazione, ma prende solo le voci di menù" - -#: grub-core/commands/date.c:141 -msgid "[[year-]month-day] [hour:minute[:second]]" -msgstr "[[anno-]mese-giorno] [ore:minuti[:secondi]]" - -#: grub-core/commands/date.c:142 -msgid "Display/set current datetime." -msgstr "Visualizza/Imposta la data e l'ora correnti" - -#: grub-core/commands/echo.c:30 -msgid "Do not output the trailing newline." -msgstr "Non visualizza l'a capo finale" - -#: grub-core/commands/echo.c:31 -msgid "Enable interpretation of backslash escapes." -msgstr "Abilita l'interpretazione delle sequenze di escape con backslash" - -#: grub-core/commands/echo.c:134 -msgid "[-e|-n] STRING" -msgstr "[-e|-n] STRINGA" - -#: grub-core/commands/echo.c:134 -msgid "Display a line of text." -msgstr "Visualizza una riga di testo" - -#: grub-core/commands/efi/efifwsetup.c:82 -msgid "Reboot into firmware setup menu." -msgstr "Riavvia nel menù di configurazione del firmware" - -#: grub-core/commands/efi/fixvideo.c:107 -msgid "Fix video problem." -msgstr "Corregge problemi video" - -#: grub-core/commands/efi/loadbios.c:52 -msgid "ROM image is present." -msgstr "Immagine ROM presente." - -#: grub-core/commands/efi/loadbios.c:70 -msgid "Can't enable ROM area." -msgstr "Impossibile abilitare l'area ROM." - -#: grub-core/commands/efi/loadbios.c:209 -msgid "" -"Create BIOS-like structures for backward compatibility with existing OS." -msgstr "" -"Crea strutture simil BIOS per retro-compatibilità con sistemi operativi " -"esistenti" - -#: grub-core/commands/efi/loadbios.c:214 -msgid "BIOS_DUMP [INT10_DUMP]" -msgstr "DUMP_BIOS [DUMP_INT10]" - -#: grub-core/commands/efi/loadbios.c:215 -msgid "Load BIOS dump." -msgstr "Carica un dump BIOS" - -#: grub-core/commands/efi/shim_lock.c:76 -#, c-format -msgid "module cannot be loaded in UEFI secure boot mode: %s" -msgstr "" -"il modulo non può essere caricato in modalità di avvio protetto UEFI: %s" - -#: grub-core/commands/efi/shim_lock.c:98 -#, c-format -msgid "cannot boot due to dangerous module in memory: %s" -msgstr "impossibile avviare a cause di un modulo pericoloso in memoria: %s" - -#: grub-core/commands/efi/shim_lock.c:116 -msgid "bad shim signature" -msgstr "firma shim errata" - -#: grub-core/commands/efi/tpm.c:149 grub-core/commands/efi/tpm.c:189 -#: grub-core/commands/efi/tpm.c:256 grub-core/commands/efi/tpm.c:306 -msgid "Command failed" -msgstr "Comando non riuscito" - -#: grub-core/commands/efi/tpm.c:151 grub-core/commands/efi/tpm.c:191 -#: grub-core/commands/efi/tpm.c:258 grub-core/commands/efi/tpm.c:308 -msgid "Invalid parameter" -msgstr "Parametro non valido" - -#: grub-core/commands/efi/tpm.c:154 grub-core/commands/efi/tpm.c:194 -#: grub-core/commands/efi/tpm.c:261 grub-core/commands/efi/tpm.c:311 -msgid "Output buffer too small" -msgstr "Buffer d'uscita troppo piccolo" - -#: grub-core/commands/efi/tpm.c:156 grub-core/commands/efi/tpm.c:196 -#: grub-core/commands/efi/tpm.c:263 grub-core/commands/efi/tpm.c:313 -msgid "TPM unavailable" -msgstr "TPM non disponibile" - -#: grub-core/commands/efi/tpm.c:158 grub-core/commands/efi/tpm.c:198 -#: grub-core/commands/efi/tpm.c:265 grub-core/commands/efi/tpm.c:315 -msgid "Unknown TPM error" -msgstr "Errore TPM sconosciuto" - -#: grub-core/commands/efi/tpm.c:240 grub-core/commands/efi/tpm.c:288 -msgid "cannot allocate TPM event buffer" -msgstr "Impossibile allocare il buffer di eventi TPM" - -#: grub-core/commands/eval.c:63 -msgid "STRING ..." -msgstr "STRINGA ..." - -#: grub-core/commands/eval.c:64 -msgid "Evaluate arguments as GRUB commands" -msgstr "Valuta gli argomenti come comandi GRUB" - -#: grub-core/commands/file.c:41 -msgid "Check if FILE can be booted as i386 PAE Xen unprivileged guest kernel" -msgstr "" -"Verifica se FILE può essere avviato come kernel guest Xen i386 PAE senza " -"privilegi" - -#: grub-core/commands/file.c:44 -msgid "Check if FILE can be booted as x86_64 Xen unprivileged guest kernel" -msgstr "" -"Verifica se FILE può essere avviato come kernel guest Xen x86_64 senza " -"privilegi" - -#: grub-core/commands/file.c:46 -msgid "Check if FILE can be used as Xen x86 privileged guest kernel" -msgstr "" -"Verifica se FILE può essere avviato come kernel guest Xen i386 PAE con " -"privilegi" - -#: grub-core/commands/file.c:48 -msgid "Check if FILE can be used as x86 multiboot kernel" -msgstr "Verifica se FILE può essere usato come kernel multiboot x86" - -#: grub-core/commands/file.c:50 -msgid "Check if FILE can be used as x86 multiboot2 kernel" -msgstr "Verifica se FILE può essere usato come kernel multiboot2 x86" - -#: grub-core/commands/file.c:52 -msgid "Check if FILE is ARM Linux" -msgstr "Verifica se FILE è Linux ARM" - -#: grub-core/commands/file.c:54 -msgid "Check if FILE is ARM64 Linux" -msgstr "Verifica se FILE è Linux ARM64" - -#: grub-core/commands/file.c:56 -msgid "Check if FILE is IA64 Linux" -msgstr "Verifica se FILE è Linux IA64" - -#: grub-core/commands/file.c:58 -msgid "Check if FILE is MIPS Linux" -msgstr "Verifica se FILE è Linux MIPS" - -#: grub-core/commands/file.c:60 -msgid "Check if FILE is MIPSEL Linux" -msgstr "Verifica se FILE è Linux MIPSEL" - -#: grub-core/commands/file.c:62 -msgid "Check if FILE is SPARC64 Linux" -msgstr "Verifica se file è Linux SPARC64" - -#: grub-core/commands/file.c:64 -msgid "Check if FILE is POWERPC Linux" -msgstr "Verifica se FILE è Linux POWERPC" - -#: grub-core/commands/file.c:66 -msgid "Check if FILE is x86 Linux" -msgstr "Verifica se file è Linux x86" - -#: grub-core/commands/file.c:68 -msgid "Check if FILE is x86 Linux supporting 32-bit protocol" -msgstr "Verifica se FILE è Linux x86 con supporto protocollo 32-bit" - -#: grub-core/commands/file.c:70 -msgid "Check if FILE is x86 kFreeBSD" -msgstr "Verifica se FILE è kFreeBSD x86" - -#: grub-core/commands/file.c:72 -msgid "Check if FILE is i386 kFreeBSD" -msgstr "Verifica se FILE è kFreeBSD i386" - -#: grub-core/commands/file.c:74 -msgid "Check if FILE is x86_64 kFreeBSD" -msgstr "Verifica se FILE è kFreeBSD x86_64" - -#: grub-core/commands/file.c:77 -msgid "Check if FILE is x86 kNetBSD" -msgstr "Verifica se FILE è kNetBSD x86" - -#: grub-core/commands/file.c:79 -msgid "Check if FILE is i386 kNetBSD" -msgstr "Verifica se FILE è kNetBSD i386" - -#: grub-core/commands/file.c:81 -msgid "Check if FILE is x86_64 kNetBSD" -msgstr "Verifica se FILE è kNetBSD x86_64" - -#: grub-core/commands/file.c:84 -msgid "Check if FILE is i386 EFI file" -msgstr "Verifica se FILE è un file EFI i386" - -#: grub-core/commands/file.c:86 -msgid "Check if FILE is x86_64 EFI file" -msgstr "Verifica se FILE è un file EFI x86_64" - -#: grub-core/commands/file.c:88 -msgid "Check if FILE is IA64 EFI file" -msgstr "Verifica se FILE è un file EFI IA64" - -#: grub-core/commands/file.c:90 -msgid "Check if FILE is ARM64 EFI file" -msgstr "Verifica se FILE è un file EFI ARM64" - -#: grub-core/commands/file.c:92 -msgid "Check if FILE is ARM EFI file" -msgstr "Verifica se FILE è un file EFI ARM" - -#: grub-core/commands/file.c:94 -msgid "Check if FILE is RISC-V 32bit EFI file" -msgstr "Verifica se FILE è un file EFI RISC-V 32-bit" - -#: grub-core/commands/file.c:96 -msgid "Check if FILE is RISC-V 64bit EFI file" -msgstr "Verifica se FILE è un file EFI RISC-V 64-bit" - -#: grub-core/commands/file.c:98 -msgid "Check if FILE is hiberfil.sys in hibernated state" -msgstr "Verifica se FILE è hiberfil.sys in uno stato d'ibernazione" - -#: grub-core/commands/file.c:100 -msgid "Check if FILE is x86_64 XNU (Mac OS X kernel)" -msgstr "Verifica se FILE è XNU x86_64 (kernel Mac OS X)" - -#: grub-core/commands/file.c:102 -msgid "Check if FILE is i386 XNU (Mac OS X kernel)" -msgstr "Verifica se FILE è XNU i386 (kernel Mac OS X)" - -#: grub-core/commands/file.c:104 -msgid "Check if FILE is XNU (Mac OS X kernel) hibernated image" -msgstr "Verifica se FILE è un'immagine XNU d'ibernazione (kernel Mac OS X)" - -#: grub-core/commands/file.c:106 -msgid "Check if FILE is BIOS bootsector" -msgstr "Verifica se FILE è un bootsector BIOS" - -#. TRANSLATORS: it's a standalone boolean value, -#. opposite of "true". -#: grub-core/commands/file.c:675 grub-core/commands/i386/cmostest.c:63 -#: grub-core/commands/i386/cpuid.c:71 grub-core/commands/keystatus.c:83 -#: grub-core/commands/keystatus.c:87 grub-core/commands/keystatus.c:96 -#: grub-core/commands/test.c:436 grub-core/commands/true.c:39 -#: grub-core/script/execute.c:247 grub-core/script/execute.c:1039 -msgid "false" -msgstr "falso" - -#: grub-core/commands/file.c:684 -msgid "OPTIONS FILE" -msgstr "OPZIONI FILE" - -#: grub-core/commands/file.c:685 -msgid "Check if FILE is of specified type." -msgstr "Verifica se il FILE è del tipo specificato" - -#. TRANSLATORS: It means that the specified partition e.g. -#. hd0,msdos1=/dev/sda1 doesn't exist. -#: grub-core/commands/gptsync.c:140 grub-core/kern/disk.c:258 -msgid "no such partition" -msgstr "partizione inesistente" - -#: grub-core/commands/gptsync.c:240 -#, c-format -msgid "New MBR is written to `%s'\n" -msgstr "Il nuovo MBR viene scritto in \"%s\"\n" - -#: grub-core/commands/gptsync.c:252 -msgid "DEVICE [PARTITION[+/-[TYPE]]] ..." -msgstr "DEVICE [PARTIZIONE[+/-[TIPO]]] ..." - -#. TRANSLATORS: MBR type is one-byte partition -#. type id. -#: grub-core/commands/gptsync.c:255 -msgid "" -"Fill hybrid MBR of GPT drive DEVICE. Specified partitions will be a part of " -"hybrid MBR. Up to 3 partitions are allowed. TYPE is an MBR type. + means " -"that partition is active. Only one partition can be active." -msgstr "" -"Riempie l'MBR ibrido dell'unità GPT DEVICE: le partizioni specificate " -"saranno parte di un MBR ibrido; sono consentite fino a 3 partizioni; TIPO è " -"un tipo di MBR; + indica che la partizione è attiva, solo una partizione può " -"essere attiva" - -#: grub-core/commands/halt.c:40 -msgid "" -"Halts the computer. This command does not work on all firmware " -"implementations." -msgstr "" -"Arresta il computer: questo comando non funziona con tutte le " -"implementazioni firmware" - -#: grub-core/commands/hashsum.c:32 -msgid "Specify hash to use." -msgstr "Specifica l'hash da usare" - -#: grub-core/commands/hashsum.c:32 -msgid "HASH" -msgstr "HASH" - -#: grub-core/commands/hashsum.c:33 -msgid "Check hashes of files with hash list FILE." -msgstr "Verifica gli hash dei file con gli hash presenti in FILE" - -#: grub-core/commands/hashsum.c:35 -msgid "Base directory for hash list." -msgstr "Directory di base per l'elenco hash" - -#. TRANSLATORS: platform here isn't identifier. It can be translated. -#: grub-core/commands/hashsum.c:35 grub-core/commands/ls.c:150 -#: grub-core/commands/macbless.c:226 grub-core/commands/syslinuxcfg.c:51 -#: grub-core/commands/syslinuxcfg.c:54 grub-core/kern/emu/main.c:106 -#: include/grub/util/install.h:50 include/grub/util/install.h:53 -#: include/grub/util/install.h:56 include/grub/util/install.h:59 -#: util/grub-install.c:250 util/grub-install.c:252 util/grub-install.c:297 -#: util/grub-install.c:299 util/grub-mkimage.c:64 util/grub-mkimage.c:67 -#: util/grub-mknetdir.c:46 util/grub-mknetdir.c:48 util/grub-mkrescue.c:99 -#: util/grub-setup.c:82 util/grub-syslinux2cfg.c:63 util/grub-syslinux2cfg.c:65 -#: util/grub-syslinux2cfg.c:67 util/grub-syslinux2cfg.c:71 -msgid "DIR" -msgstr "DIR" - -#: grub-core/commands/hashsum.c:37 -msgid "Don't stop after first error." -msgstr "Non si ferma al primo errore" - -#: grub-core/commands/hashsum.c:38 -msgid "Uncompress file before checksumming." -msgstr "Estrae il file prima di calcolare il checksum" - -#: grub-core/commands/hashsum.c:163 -#, c-format -msgid "%s: READ ERROR\n" -msgstr "%s: ERRORE LETTURA\n" - -#: grub-core/commands/hashsum.c:177 -#, c-format -msgid "%s: HASH MISMATCH\n" -msgstr "%s: HASH NON CORRISPONDENTE\n" - -#: grub-core/commands/hashsum.c:188 -#, c-format -msgid "%s: OK\n" -msgstr "%s: OK\n" - -#: grub-core/commands/hashsum.c:282 -msgid "-h HASH [-c FILE [-p PREFIX]] [FILE1 [FILE2 ...]]" -msgstr "-h HASH [-c FILE [-p PREFISSO]] [FILE1 [FILE2 ...]]" - -# (ndt) hmmm.... -#. TRANSLATORS: "hash checksum" is just to -#. be a bit more precise, you can treat it as -#. just "hash". -#: grub-core/commands/hashsum.c:287 grub-core/commands/hashsum.c:292 -#: grub-core/commands/hashsum.c:297 grub-core/commands/hashsum.c:302 -#: grub-core/commands/hashsum.c:307 grub-core/commands/hashsum.c:313 -msgid "Compute or check hash checksum." -msgstr "Calcola o verifica l'hash" - -#: grub-core/commands/hashsum.c:290 grub-core/commands/hashsum.c:295 -#: grub-core/commands/hashsum.c:300 grub-core/commands/hashsum.c:305 -#: grub-core/commands/hashsum.c:311 -msgid "[-c FILE [-p PREFIX]] [FILE1 [FILE2 ...]]" -msgstr "[-c FILE [-p PREFISSO]] [FILE1 [FILE2 ...]]" - -#: grub-core/commands/hdparm.c:33 -msgid "" -"Set Advanced Power Management\n" -"(1=low, ..., 254=high, 255=off)." -msgstr "" -"Imposta \"Advanced Power Management\"\n" -"(1=basso, ..., 254=elevato, 255=spento)" - -#: grub-core/commands/hdparm.c:36 -msgid "Display power mode." -msgstr "Visualizza la modalità di alimentazione" - -#: grub-core/commands/hdparm.c:37 -msgid "Freeze ATA security settings until reset." -msgstr "Blocca le impostazioni di sicurezza ATA fino a un reset" - -#: grub-core/commands/hdparm.c:39 -msgid "Display SMART health status." -msgstr "Visualizza lo stato SMART" - -#: grub-core/commands/hdparm.c:40 -msgid "" -"Set Automatic Acoustic Management\n" -"(0=off, 128=quiet, ..., 254=fast)." -msgstr "" -"Imposta \"Automatic Acoustic Management\"\n" -"(0=spento, 128=silenzioso, ..., 254=veloce)" - -#: grub-core/commands/hdparm.c:43 -msgid "" -"Set standby timeout\n" -"(0=off, 1=5s, 2=10s, ..., 240=20m, 241=30m, ...)." -msgstr "" -"Imposta il timeout di standby\n" -"(0=spento, 1=5s, 2=10s, ..., 240=20m, 241=30m, ...)" - -#: grub-core/commands/hdparm.c:46 -msgid "Set drive to standby mode." -msgstr "Imposta l'unità in modalità standby" - -#: grub-core/commands/hdparm.c:47 -msgid "Set drive to sleep mode." -msgstr "Imposta l'unità in modalità pausa" - -#: grub-core/commands/hdparm.c:48 -msgid "Print drive identity and settings." -msgstr "Stampa informazioni e impostazioni dell'unità" - -#: grub-core/commands/hdparm.c:50 -msgid "Show raw contents of ATA IDENTIFY sector." -msgstr "Mostra il contenuto grezzo del settore ATA IDENTIFY" - -#: grub-core/commands/hdparm.c:52 -msgid "Disable/enable SMART (0/1)." -msgstr "Disabilita/Abilita SMART (0/1)" - -#: grub-core/commands/hdparm.c:53 -msgid "Do not print messages." -msgstr "Non stampa alcun messaggio" - -#: grub-core/commands/hdparm.c:286 grub-core/commands/i386/rdmsr.c:68 -#: grub-core/commands/iorw.c:47 grub-core/commands/legacycfg.c:760 -#: grub-core/commands/legacycfg.c:812 grub-core/commands/macbless.c:190 -#: grub-core/commands/memrw.c:47 grub-core/commands/pgp.c:738 -#: grub-core/commands/pgp.c:792 grub-core/commands/search.c:304 -#: grub-core/commands/search_wrap.c:179 grub-core/commands/setpci.c:243 -#: grub-core/commands/sleep.c:71 grub-core/fs/zfs/zfsinfo.c:279 -#: grub-core/fs/zfs/zfsinfo.c:358 grub-core/gettext/gettext.c:492 -#: grub-core/kern/corecmd.c:65 grub-core/kern/corecmd.c:79 -#: grub-core/mmap/mmap.c:430 grub-core/net/dns.c:713 grub-core/net/dns.c:745 -#: grub-core/net/net.c:694 grub-core/net/net.c:1052 -#: grub-core/normal/context.c:194 grub-core/script/execute.c:131 -#: grub-core/term/gfxterm_background.c:136 -msgid "one argument expected" -msgstr "atteso un solo argomento" - -#: grub-core/commands/hdparm.c:440 -msgid "[OPTIONS] DISK" -msgstr "[OPZIONI] DISCO" - -#: grub-core/commands/hdparm.c:441 -msgid "Get/set ATA disk parameters." -msgstr "Recupera/Imposta parametri ATA" - -#: grub-core/commands/help.c:132 grub-core/lib/arg.c:109 -#: grub-core/lib/gnulib/argp-help.c:1616 -msgid "Usage:" -msgstr "Uso:" - -#: grub-core/commands/help.c:146 -msgid "[PATTERN ...]" -msgstr "[MODELLO ...]" - -#: grub-core/commands/help.c:147 -msgid "Show a help message." -msgstr "Mostra un messaggio di aiuto" - -#: grub-core/commands/hexdump.c:31 -msgid "Skip offset bytes from the beginning of file." -msgstr "Salta un offset di byte dall'inizio del file" - -#: grub-core/commands/hexdump.c:33 -msgid "Read only LENGTH bytes." -msgstr "Legge solo LUNGHEZZA byte" - -#: grub-core/commands/hexdump.c:125 -msgid "[OPTIONS] FILE_OR_DEVICE" -msgstr "[OPZIONI] FILE_O_DEVICE" - -#: grub-core/commands/hexdump.c:126 -msgid "Show raw contents of a file or memory." -msgstr "Mostra il contenuto grezzo di un file o della memoria" - -#: grub-core/commands/i386/cmosdump.c:58 -msgid "Show raw dump of the CMOS contents." -msgstr "Mostra il dump grezzo del contenuto del CMOS" - -#: grub-core/commands/i386/cmostest.c:108 -#: grub-core/commands/i386/cmostest.c:111 -#: grub-core/commands/i386/cmostest.c:114 -msgid "BYTE:BIT" -msgstr "BYTE:BIT" - -#: grub-core/commands/i386/cmostest.c:109 -msgid "Test bit at BYTE:BIT in CMOS." -msgstr "Verifica il bit BYTE:BIT nel CMOS" - -#: grub-core/commands/i386/cmostest.c:112 -msgid "Clear bit at BYTE:BIT in CMOS." -msgstr "Pulisce il bit BYTE:BIT nel CMOS" - -#. TRANSLATORS: A bit may be either set (1) or clear (0). -#: grub-core/commands/i386/cmostest.c:116 -msgid "Set bit at BYTE:BIT in CMOS." -msgstr "Imposta il bit a BYTE:BIT nel CMOS" - -#: grub-core/commands/i386/coreboot/cb_timestamps.c:120 -msgid "Show coreboot boot time statistics." -msgstr "Mostra statistiche di avvio di coreboot" - -#: grub-core/commands/i386/coreboot/cbls.c:137 -msgid "List coreboot tables." -msgstr "Elenca le tabelle coreboot" - -#. TRANSLATORS: "(default)" at the end means that this option is used if -#. no argument is specified. -#: grub-core/commands/i386/cpuid.c:36 -msgid "Check if CPU supports 64-bit (long) mode (default)." -msgstr "Verifica se la CPU supporta la modalità (lunga) a 64 bit (predefinito)" - -#: grub-core/commands/i386/cpuid.c:37 -msgid "Check if CPU supports Physical Address Extension." -msgstr "Verifica se la CPU supporta PAE (Physical Address Extension)" - -#: grub-core/commands/i386/cpuid.c:119 -msgid "Check for CPU features." -msgstr "Verifica le caratteristiche della CPU" - -#. TRANSLATORS: In this file "mapping" refers to a change GRUB makes so if -#. your language doesn't have an equivalent of "mapping" you can -#. use the word like "rerouting". -#. -#: grub-core/commands/i386/pc/drivemap.c:43 -msgid "Show the current mappings." -msgstr "Mostra le mappature attuali" - -#: grub-core/commands/i386/pc/drivemap.c:44 -msgid "Reset all mappings to the default values." -msgstr "Ripristina le mappature ai valori predefiniti" - -#: grub-core/commands/i386/pc/drivemap.c:45 -msgid "Perform both direct and reverse mappings." -msgstr "Esegue mappature sia dirette sia inverse" - -#: grub-core/commands/i386/pc/drivemap.c:184 -msgid "No drives have been remapped" -msgstr "Nessuna unità è stata ri-mappata" - -#. TRANSLATORS: This is the header of mapping list. -#. On the left is how OS will see the disks and -#. on the right current GRUB vision. -#: grub-core/commands/i386/pc/drivemap.c:191 -msgid "OS disk #num ------> GRUB/BIOS device" -msgstr "Disco #num ------> Device GRUB/BIOS" - -#: grub-core/commands/i386/pc/drivemap.c:413 -msgid "-l | -r | [-s] grubdev osdisk." -msgstr "-l | -r | [-s] devgrub discoos" - -#: grub-core/commands/i386/pc/drivemap.c:414 -msgid "Manage the BIOS drive mappings." -msgstr "Gestisce le mappature delle unità del BIOS" - -#: grub-core/commands/i386/pc/halt.c:31 -msgid "Do not use APM to halt the computer." -msgstr "Non usa APM per arrestare il computer" - -#: grub-core/commands/i386/pc/halt.c:119 -msgid "Halt the system, if possible using APM." -msgstr "Arresta il sistema, utilizzando APM se possibile" - -#: grub-core/commands/i386/pc/lsapm.c:75 -msgid "no APM found" -msgstr "APM non trovato" - -#: grub-core/commands/i386/pc/lsapm.c:77 -#, c-format -msgid "" -"Version %u.%u\n" -"32-bit CS = 0x%x, len = 0x%x, offset = 0x%x\n" -"16-bit CS = 0x%x, len = 0x%x\n" -"DS = 0x%x, len = 0x%x\n" -msgstr "" -"Versione %u.%u\n" -"32 bit CS = 0x%x, lung = 0x%x, offset = 0x%x\n" -"16 bit CS = 0x%x, lung = 0x%x\n" -"DS = 0x%x, lung = 0x%x\n" - -#: grub-core/commands/i386/pc/lsapm.c:86 -msgid "16-bit protected interface supported\n" -msgstr "Interfaccia 16 bit protetta supportata\n" - -#: grub-core/commands/i386/pc/lsapm.c:87 -msgid "16-bit protected interface unsupported\n" -msgstr "Interfaccia 16 bit protetta non supportata\n" - -#: grub-core/commands/i386/pc/lsapm.c:89 -msgid "32-bit protected interface supported\n" -msgstr "Interfaccia 32 bit protetta supportata\n" - -#: grub-core/commands/i386/pc/lsapm.c:90 -msgid "32-bit protected interface unsupported\n" -msgstr "Interfaccia 32 bit protetta non supportata\n" - -#: grub-core/commands/i386/pc/lsapm.c:92 -msgid "CPU Idle slows down processor\n" -msgstr "CPU Idle rallenta il processore\n" - -#: grub-core/commands/i386/pc/lsapm.c:93 -msgid "CPU Idle doesn't slow down processor\n" -msgstr "CPU Idle non rallenta il processore\n" - -#: grub-core/commands/i386/pc/lsapm.c:95 -msgid "APM disabled\n" -msgstr "APM disabilitato\n" - -#: grub-core/commands/i386/pc/lsapm.c:95 -msgid "APM enabled\n" -msgstr "APM abilitato\n" - -#: grub-core/commands/i386/pc/lsapm.c:97 -msgid "APM disengaged\n" -msgstr "APM disattivato\n" - -#: grub-core/commands/i386/pc/lsapm.c:97 -msgid "APM engaged\n" -msgstr "APM attivato\n" - -#: grub-core/commands/i386/pc/lsapm.c:107 -msgid "Show APM information." -msgstr "Mostra le informazioni APM" - -#. TRANSLATORS: It's musical notes, not the notes -#. you take. Play command expects arguments which can -#. be either a filename or tempo+notes. -#. This error happens if none is specified. -#: grub-core/commands/i386/pc/play.c:88 -msgid "filename or tempo and notes expected" -msgstr "nome file oppure tempo e note attesi" - -#: grub-core/commands/i386/pc/play.c:113 grub-core/commands/i386/pc/play.c:144 -#, c-format -msgid "Invalid tempo in %s" -msgstr "Tempo non valido in %s" - -#: grub-core/commands/i386/pc/play.c:151 grub-core/commands/macbless.c:172 -#: grub-core/fs/archelp.c:260 grub-core/fs/bfs.c:621 grub-core/fs/bfs.c:704 -#: grub-core/fs/btrfs.c:1726 grub-core/fs/btrfs.c:1755 -#: grub-core/fs/btrfs.c:1799 grub-core/fs/btrfs.c:1882 -#: grub-core/fs/btrfs.c:1906 grub-core/fs/fshelp.c:257 grub-core/fs/jfs.c:696 -#: grub-core/fs/minix.c:426 grub-core/fs/ufs.c:544 grub-core/fs/zfs/zfs.c:2083 -#: grub-core/fs/zfs/zfs.c:2095 grub-core/fs/zfs/zfs.c:2301 -#: grub-core/net/http.c:120 -#, c-format -msgid "file `%s' not found" -msgstr "file \"%s\" non trovato" - -#: grub-core/commands/i386/pc/play.c:162 grub-core/commands/i386/pc/play.c:171 -#: grub-core/kern/misc.c:419 grub-core/script/execute.c:138 -#: grub-core/script/execute.c:244 -msgid "unrecognized number" -msgstr "numero non riconosciuto" - -#: grub-core/commands/i386/pc/play.c:190 -msgid "FILE | TEMPO [PITCH1 DURATION1] [PITCH2 DURATION2] ... " -msgstr "FILE | TEMPO [TONO1 DURATA1] [TONO2 DURATA2] ... " - -#: grub-core/commands/i386/pc/play.c:191 -msgid "Play a tune." -msgstr "Riproduce un suono" - -#: grub-core/commands/i386/pc/sendkey.c:39 -msgid "set numlock mode" -msgstr "imposta la modalità blocnum" - -#: grub-core/commands/i386/pc/sendkey.c:40 -msgid "set capslock mode" -msgstr "imposta la modalità blocmaiusc" - -#: grub-core/commands/i386/pc/sendkey.c:41 -msgid "set scrolllock mode" -msgstr "imposta la modalità blocscorr" - -#: grub-core/commands/i386/pc/sendkey.c:42 -msgid "set insert mode" -msgstr "imposta la modalità inserimento" - -#: grub-core/commands/i386/pc/sendkey.c:43 -msgid "set pause mode" -msgstr "imposta la modalità pausa" - -#: grub-core/commands/i386/pc/sendkey.c:44 -msgid "press left shift" -msgstr "preme Maiusc sinistro" - -#: grub-core/commands/i386/pc/sendkey.c:45 -msgid "press right shift" -msgstr "preme Maiusc destro" - -#: grub-core/commands/i386/pc/sendkey.c:46 -msgid "press SysRq" -msgstr "preme SysRq" - -#: grub-core/commands/i386/pc/sendkey.c:47 -msgid "press NumLock key" -msgstr "preme BlocNum" - -#: grub-core/commands/i386/pc/sendkey.c:48 -msgid "press CapsLock key" -msgstr "preme BlocMaiusc" - -#: grub-core/commands/i386/pc/sendkey.c:49 -msgid "press ScrollLock key" -msgstr "preme BlocScorr" - -#: grub-core/commands/i386/pc/sendkey.c:50 -msgid "press Insert key" -msgstr "preme Ins" - -#: grub-core/commands/i386/pc/sendkey.c:51 -msgid "press left alt" -msgstr "preme Alt sinistro" - -#: grub-core/commands/i386/pc/sendkey.c:52 -msgid "press right alt" -msgstr "preme Alt destro" - -#: grub-core/commands/i386/pc/sendkey.c:53 -msgid "press left ctrl" -msgstr "preme Ctrl sinistro" - -#: grub-core/commands/i386/pc/sendkey.c:54 -msgid "press right ctrl" -msgstr "preme Ctrl destro" - -#: grub-core/commands/i386/pc/sendkey.c:55 -msgid "don't update LED state" -msgstr "non aggiorna lo stato dei LED" - -#: grub-core/commands/i386/pc/sendkey.c:372 -msgid "[KEYSTROKE1] [KEYSTROKE2] ..." -msgstr "[TASTO1] [TASTO2] ..." - -#. TRANSLATORS: It can emulate multiple -#. keypresses. -#: grub-core/commands/i386/pc/sendkey.c:375 -msgid "Emulate a keystroke sequence" -msgstr "Simula la pressione di sequenze di tasti" - -#: grub-core/commands/i386/rdmsr.c:37 grub-core/commands/iorw.c:34 -#: grub-core/commands/memrw.c:33 grub-core/commands/setpci.c:73 -msgid "Save read value into variable VARNAME." -msgstr "Salva il valore letto nella variabile NOMEVAR" - -#: grub-core/commands/i386/rdmsr.c:38 grub-core/commands/iorw.c:35 -#: grub-core/commands/memrw.c:34 grub-core/commands/probe.c:40 -#: grub-core/commands/search_wrap.c:40 grub-core/commands/setpci.c:74 -#: grub-core/commands/tr.c:32 -msgid "VARNAME" -msgstr "NOMEVAR" - -#: grub-core/commands/i386/rdmsr.c:55 grub-core/commands/i386/rdmsr.c:60 -#: grub-core/commands/i386/rdmsr.c:65 grub-core/commands/i386/wrmsr.c:47 -#: grub-core/commands/i386/wrmsr.c:52 grub-core/commands/i386/wrmsr.c:57 -msgid "unsupported instruction" -msgstr "istruzione non supportata" - -#: grub-core/commands/i386/rdmsr.c:77 grub-core/commands/i386/wrmsr.c:69 -#: grub-core/commands/i386/wrmsr.c:77 grub-core/net/dns.c:727 -msgid "invalid argument" -msgstr "argomento non valido" - -#: grub-core/commands/i386/rdmsr.c:94 grub-core/commands/memrw.c:125 -#: grub-core/commands/memrw.c:129 grub-core/commands/memrw.c:133 -msgid "ADDR" -msgstr "IND" - -#: grub-core/commands/i386/rdmsr.c:95 -msgid "Read a CPU model specific register." -msgstr "Legge un registro specifico di un modello di CPU" - -#: grub-core/commands/i386/wrmsr.c:86 -msgid "ADDR VALUE" -msgstr "IND VALORE" - -#: grub-core/commands/i386/wrmsr.c:87 -msgid "Write a value to a CPU model specific register." -msgstr "Scrive un valore su un registro specifico di un modello di CPU" - -#: grub-core/commands/ieee1275/suspend.c:34 -msgid "Run `go' to resume GRUB." -msgstr "Esegue \"go\" per ripristinare GRUB" - -#: grub-core/commands/ieee1275/suspend.c:45 -msgid "Return to IEEE1275 prompt." -msgstr "Ritorna al prompt IEEE1275" - -#: grub-core/commands/iorw.c:123 grub-core/commands/iorw.c:127 -#: grub-core/commands/iorw.c:131 grub-core/gdb/gdb.c:79 -msgid "PORT" -msgstr "PORTA" - -#: grub-core/commands/iorw.c:123 -msgid "Read 8-bit value from PORT." -msgstr "Legge un valore 8 bit da PORTA" - -#: grub-core/commands/iorw.c:127 -msgid "Read 16-bit value from PORT." -msgstr "Legge un valore 16 bit da PORTA" - -#: grub-core/commands/iorw.c:131 -msgid "Read 32-bit value from PORT." -msgstr "Legge un valore 32 bit da PORTA" - -#: grub-core/commands/iorw.c:135 grub-core/commands/iorw.c:139 -msgid "PORT VALUE [MASK]" -msgstr "PORTA VALORE [MASCHERA]" - -#: grub-core/commands/iorw.c:136 -msgid "Write 8-bit VALUE to PORT." -msgstr "Scrive il VALORE 8 bit su PORTA" - -#: grub-core/commands/iorw.c:140 -msgid "Write 16-bit VALUE to PORT." -msgstr "Scrive il VALORE 16 bit su PORTA" - -#: grub-core/commands/iorw.c:143 grub-core/commands/memrw.c:137 -#: grub-core/commands/memrw.c:141 grub-core/commands/memrw.c:145 -msgid "ADDR VALUE [MASK]" -msgstr "IND VALORE [MASCHERA]" - -#: grub-core/commands/iorw.c:144 -msgid "Write 32-bit VALUE to PORT." -msgstr "Scrive il VALORE 32 bit su PORTA" - -#: grub-core/commands/keylayouts.c:215 grub-core/commands/loadenv.c:61 -#: grub-core/commands/nativedisk.c:189 grub-core/efiemu/main.c:235 -#: grub-core/font/font.c:428 grub-core/gfxmenu/gfxmenu.c:63 -#: grub-core/kern/device.c:42 grub-core/kern/dl.c:740 -#, c-format -msgid "variable `%s' isn't set" -msgstr "la variabile \"%s\" non è impostata" - -#: grub-core/commands/keylayouts.c:301 -msgid "Load a keyboard layout." -msgstr "Carica una disposizione di tastiera" - -#. TRANSLATORS: "Check" in a sense that if this key is pressed then -#. "true" is returned, otherwise "false". -#: grub-core/commands/keystatus.c:32 -msgid "Check Shift key." -msgstr "Verifica il tasto Maiusc" - -#: grub-core/commands/keystatus.c:33 -msgid "Check Control key." -msgstr "Verifica il tasto Control" - -#: grub-core/commands/keystatus.c:34 -msgid "Check Alt key." -msgstr "Verifica il tasto Alt" - -#. TRANSLATORS: there are 3 modifiers. -#: grub-core/commands/keystatus.c:106 -msgid "Check key modifier status." -msgstr "Verifica lo stato dei modificatori dei tasti" - -#: grub-core/commands/legacycfg.c:512 grub-core/commands/legacycfg.c:526 -#: grub-core/commands/legacycfg.c:546 grub-core/commands/legacycfg.c:559 -#: grub-core/commands/time.c:43 grub-core/script/function.c:109 -#: util/grub-file.c:100 util/grub-fstest.c:57 util/grub-mount.c:69 -#, c-format -msgid "can't find command `%s'" -msgstr "impossibile trovare il comando \"%s\"" - -#: grub-core/commands/legacycfg.c:813 grub-core/normal/auth.c:225 -#: util/grub-mkpasswd-pbkdf2.c:139 -msgid "Enter password: " -msgstr "Inserire la password:" - -#. TRANSLATORS: "legacy config" means -#. "config as used by grub-legacy". -#: grub-core/commands/legacycfg.c:837 -msgid "Parse legacy config in same context" -msgstr "Analizza configurazioni grub-legacy nello stesso contesto" - -#: grub-core/commands/legacycfg.c:842 -msgid "Parse legacy config in new context" -msgstr "Analizza configurazioni grub-legacy nel nuovo contesto" - -# -#: grub-core/commands/legacycfg.c:847 -msgid "Parse legacy config in same context taking only menu entries" -msgstr "" -"Analizza configurazioni grub-legacy nello stesso contesto utilizzando solo " -"le voci di menù" - -#: grub-core/commands/legacycfg.c:852 -msgid "Parse legacy config in new context taking only menu entries" -msgstr "" -"Analizza configurazioni grub-legacy nel nuovo contesto utilizzando solo le " -"voci di menù" - -#: grub-core/commands/legacycfg.c:856 -msgid "[--no-mem-option] [--type=TYPE] FILE [ARG ...]" -msgstr "[--no-mem-option] [--type=TIPO] FILE [ARG ...]" - -#: grub-core/commands/legacycfg.c:857 -msgid "Simulate grub-legacy `kernel' command" -msgstr "Simula il comando \"kernel\" di grub-legacy" - -#: grub-core/commands/legacycfg.c:861 grub-core/commands/legacycfg.c:865 -msgid "FILE [ARG ...]" -msgstr "FILE [ARG ...]" - -#: grub-core/commands/legacycfg.c:862 -msgid "Simulate grub-legacy `initrd' command" -msgstr "Simula il comando \"initrd\" di grub-legacy" - -#: grub-core/commands/legacycfg.c:866 -msgid "Simulate grub-legacy `modulenounzip' command" -msgstr "Simula il comando \"modulenounzip\" di grub-legacy" - -#: grub-core/commands/legacycfg.c:870 grub-core/commands/legacycfg.c:875 -msgid "[--md5] PASSWD [FILE]" -msgstr "[--md5] PASSWD [FILE]" - -#: grub-core/commands/legacycfg.c:871 -msgid "Simulate grub-legacy `password' command" -msgstr "Simula il comando \"password\" di grub-legacy" - -#: grub-core/commands/legacycfg.c:876 -msgid "Simulate grub-legacy `password' command in menu entry mode" -msgstr "Simula il comando \"password\" di grub-legacy nelle voci di menù" - -#. TRANSLATORS: This option is used to override default filename -#. for loading and storing environment. -#: grub-core/commands/loadenv.c:37 -msgid "Specify filename." -msgstr "Specifica il nome del file" - -#: grub-core/commands/loadenv.c:39 -msgid "Skip signature-checking of the environment file." -msgstr "Salta il controllo della firma del file dell'ambiente" - -#: grub-core/commands/loadenv.c:451 -msgid "[-f FILE] [-s|--skip-sig] [variable_name_to_whitelist] [...]" -msgstr "[-f FILE] [-s|--skip-sig] [nome_variabile_valida] [...]" - -#: grub-core/commands/loadenv.c:452 -msgid "Load variables from environment block file." -msgstr "Carica le variabili dal file a blocchi dell'ambiente" - -#: grub-core/commands/loadenv.c:455 -msgid "[-f FILE]" -msgstr "[-f FILE]" - -#: grub-core/commands/loadenv.c:456 -msgid "List variables from environment block file." -msgstr "Elenca le variabili dal file a blocchi dell'ambiente" - -#: grub-core/commands/loadenv.c:460 -msgid "[-f FILE] variable_name [...]" -msgstr "[-f FILE] nome_variabile [...]" - -#: grub-core/commands/loadenv.c:461 -msgid "Save variables to environment block file." -msgstr "Salva le variabili sul file a blocchi dell'ambiente" - -#: grub-core/commands/ls.c:40 -msgid "Show a long list with more detailed information." -msgstr "Mostra un elenco con informazioni più dettagliate" - -#: grub-core/commands/ls.c:41 -msgid "Print sizes in a human readable format." -msgstr "Stampa le dimensioni in un formato comprensibile" - -#: grub-core/commands/ls.c:42 -msgid "List all files." -msgstr "Elenca tutti i file" - -#: grub-core/commands/ls.c:73 -msgid "Network protocols:" -msgstr "Protocolli di rete:" - -#: grub-core/commands/ls.c:295 -msgid "[-l|-h|-a] [FILE ...]" -msgstr "[-l|-h|-a] [FILE ...]" - -#: grub-core/commands/ls.c:296 -msgid "List devices and files." -msgstr "Elenca device e file" - -#: grub-core/commands/lsacpi.c:255 -msgid "Show version 1 tables only." -msgstr "Mostra solo le tabelle versione 1" - -# -#: grub-core/commands/lsacpi.c:256 -msgid "Show version 2 and version 3 tables only." -msgstr "Mostra solo le tabelle versione 2 e 3" - -#: grub-core/commands/lsacpi.c:306 -msgid "Show ACPI information." -msgstr "Mostra informazioni ACPI" - -#: grub-core/commands/lsmmap.c:31 -msgid "available RAM" -msgstr "RAM disponibile" - -#: grub-core/commands/lsmmap.c:32 -msgid "reserved RAM" -msgstr "RAM riservata" - -#. TRANSLATORS: this refers to memory where ACPI tables are stored -#. and which can be used by OS once it loads ACPI tables. -#: grub-core/commands/lsmmap.c:35 -msgid "ACPI reclaimable RAM" -msgstr "RAM ACPI riutilizzabile" - -#. TRANSLATORS: this refers to memory which ACPI-compliant OS -#. is required to save accross hibernations. -#: grub-core/commands/lsmmap.c:38 -msgid "ACPI non-volatile storage RAM" -msgstr "Archivio non volatile della RAM per ACPI" - -#: grub-core/commands/lsmmap.c:39 -msgid "faulty RAM (BadRAM)" -msgstr "RAM difettosa (BadRAM)" - -#: grub-core/commands/lsmmap.c:40 -msgid "persistent RAM" -msgstr "RAM persistente" - -#: grub-core/commands/lsmmap.c:41 -msgid "persistent RAM (legacy)" -msgstr "RAM persistente (legacy)" - -#: grub-core/commands/lsmmap.c:42 -msgid "RAM holding coreboot tables" -msgstr "RAM che contiene le tabelle coreboot" - -#: grub-core/commands/lsmmap.c:43 -msgid "RAM holding firmware code" -msgstr "RAM che contiene il codice firmware" - -#: grub-core/commands/lsmmap.c:52 -#, c-format -msgid "base_addr = 0x%llx, length = 0x%llx, %s\n" -msgstr "indirizzo base = 0x%llx, lungh = 0x%llx, %s\n" - -#: grub-core/commands/lsmmap.c:55 -#, c-format -msgid "base_addr = 0x%llx, length = 0x%llx, type = 0x%x\n" -msgstr "indirizzo base = 0x%llx, lungh = 0x%llx, tipo = 0x%x\n" - -#: grub-core/commands/lsmmap.c:79 -msgid "List memory map provided by firmware." -msgstr "Elenca la mappa della memoria fornita dal firmware" - -#: grub-core/commands/lspci.c:232 -msgid "List PCI devices." -msgstr "Elenca device PCI" - -#: grub-core/commands/macbless.c:224 -msgid "Bless FILE of HFS or HFS+ partition for intel macs." -msgstr "Esegue bless su FILE di una partizione HFS o HFS+ per Mac Intel" - -#: grub-core/commands/macbless.c:228 -msgid "Bless DIR of HFS or HFS+ partition for PPC macs." -msgstr "Esegue bless su DIR di una partizione HFS o HFS+ per Mac PPC" - -#: grub-core/commands/memrw.c:125 -msgid "Read 8-bit value from ADDR." -msgstr "Legge un valore 8 bit da IND" - -#: grub-core/commands/memrw.c:129 -msgid "Read 16-bit value from ADDR." -msgstr "Legge un valore 16 bit da IND" - -#: grub-core/commands/memrw.c:133 -msgid "Read 32-bit value from ADDR." -msgstr "Legge un valore 32 bit da IND" - -#: grub-core/commands/memrw.c:138 -msgid "Write 8-bit VALUE to ADDR." -msgstr "Scrive il VALORE 8 bit in IND" - -#: grub-core/commands/memrw.c:142 -msgid "Write 16-bit VALUE to ADDR." -msgstr "Scrive il VALORE 16 bit in IND" - -#: grub-core/commands/memrw.c:146 -msgid "Write 32-bit VALUE to ADDR." -msgstr "Scrive il VALORE 32 bit in IND" - -#: grub-core/commands/menuentry.c:31 -msgid "Menu entry type." -msgstr "Tipo di voce di menù" - -#: grub-core/commands/menuentry.c:31 grub-core/commands/menuentry.c:38 -#: grub-core/commands/menuentry.c:39 grub-core/gettext/gettext.c:520 -#: util/grub-fstest.c:520 util/grub-install.c:291 util/grub-install.c:304 -#: util/grub-mknetdir.c:51 util/grub-mkrescue.c:109 util/grub-mkrescue.c:110 -#: util/grub-mount.c:453 util/grub-render-label.c:65 -msgid "STRING" -msgstr "STRINGA" - -#: grub-core/commands/menuentry.c:33 -msgid "List of users allowed to boot this entry." -msgstr "Elenco di utenti abilitati ad avviare questa voce" - -#: grub-core/commands/menuentry.c:33 -msgid "USERNAME[,USERNAME]" -msgstr "NOMEUTENTE[,NOMEUTENTE]" - -#: grub-core/commands/menuentry.c:36 -msgid "Keyboard key to quickly boot this entry." -msgstr "Tasto rapido per avviare questa voce" - -#: grub-core/commands/menuentry.c:36 -msgid "KEYBOARD_KEY" -msgstr "TASTO" - -#: grub-core/commands/menuentry.c:38 -msgid "Use STRING as menu entry body." -msgstr "Usa STRINGA come testo per il menù" - -#: grub-core/commands/menuentry.c:39 -msgid "Menu entry identifier." -msgstr "Identificatore di voce di menù" - -#. TRANSLATORS: menu entry can either be bootable by anyone or only by -#. handful of users. By default when security is active only superusers can -#. boot a given menu entry. With --unrestricted (this option) -#. anyone can boot it. -#: grub-core/commands/menuentry.c:44 -msgid "This entry can be booted by any user." -msgstr "Questa voce può essere avviata da tutti gli utenti." - -# (ndt) hmmm... -#: grub-core/commands/menuentry.c:323 grub-core/commands/menuentry.c:328 -#: grub-core/tests/test_blockarg.c:46 -msgid "BLOCK" -msgstr "BLOCCO" - -# (ndt) o che vada lasciato menuentry? -#: grub-core/commands/menuentry.c:323 -msgid "Define a menu entry." -msgstr "Definisce una voce di menù" - -#: grub-core/commands/menuentry.c:328 -msgid "Define a submenu." -msgstr "Definisce un sotto-menù" - -#. TRANSLATORS: this is module list header. Name -#. is module name, Ref Count is a reference counter -#. (how many modules or open descriptors use it). -#. Dependencies are the other modules it uses. -#. -#: grub-core/commands/minicmd.c:162 -msgid "Name\tRef Count\tDependencies\n" -msgstr "Nome\tCont rif\tDipendenze\n" - -#: grub-core/commands/minicmd.c:201 -msgid "Show this message." -msgstr "Mostra questo messaggio" - -#: grub-core/commands/minicmd.c:204 -msgid "ADDR [SIZE]" -msgstr "IND [DIM]" - -#: grub-core/commands/minicmd.c:204 -msgid "Show memory contents." -msgstr "Mostra il contenuto di memoria" - -#: grub-core/commands/minicmd.c:207 grub-core/kern/corecmd.c:188 -#: util/grub-install.c:275 -msgid "MODULE" -msgstr "MODULO" - -#: grub-core/commands/minicmd.c:207 -msgid "Remove a module." -msgstr "Rimuove un modulo" - -#: grub-core/commands/minicmd.c:210 -msgid "Show loaded modules." -msgstr "Mostra i moduli caricati" - -#: grub-core/commands/minicmd.c:213 -msgid "Exit from GRUB." -msgstr "Esce da GRUB" - -#: grub-core/commands/mips/loongson/lsspd.c:42 -msgid "No CS5536 found" -msgstr "Nessun CS5536 trovato" - -#: grub-core/commands/mips/loongson/lsspd.c:45 -#, c-format -msgid "CS5536 at %d:%d.%d\n" -msgstr "CS5536 in %d:%d.%d\n" - -#. TRANSLATORS: System management bus is often used to access components like -#. RAM (info only, not data) or batteries. I/O space is where in memory -#. its ports are. -#: grub-core/commands/mips/loongson/lsspd.c:55 -#, c-format -msgid "System management bus controller I/O space is at 0x%x\n" -msgstr "Lo spazio I/O del bus di controllo di sistema è a 0x%x\n" - -#. TRANSLATORS: it's shown in a report in a way -#. like number 1: ... number 2: ... -#. -#: grub-core/commands/mips/loongson/lsspd.c:66 -#, c-format -msgid "RAM slot number %d\n" -msgstr "Slot RAM n° %d\n" - -#: grub-core/commands/mips/loongson/lsspd.c:73 -#, c-format -msgid "Written SPD bytes: %d B.\n" -msgstr "Byte SPD scritti: %d B.\n" - -#: grub-core/commands/mips/loongson/lsspd.c:74 -#, c-format -msgid "Total flash size: %d B.\n" -msgstr "Dimensione totale flash: %d B.\n" - -#: grub-core/commands/mips/loongson/lsspd.c:79 -msgid "Memory type: DDR2." -msgstr "Tipo di memoria: DDR2." - -#: grub-core/commands/mips/loongson/lsspd.c:83 -#, c-format -msgid "Part no: %s.\n" -msgstr "Parte n° %s.\n" - -#: grub-core/commands/mips/loongson/lsspd.c:86 -msgid "Memory type: Unknown." -msgstr "Tipo di memoria: sconosciuto." - -#: grub-core/commands/mips/loongson/lsspd.c:97 -msgid "Print Memory information." -msgstr "Stampa informazioni sulla memoria" - -#: grub-core/commands/nativedisk.c:118 grub-core/commands/probe.c:118 -#: grub-core/commands/probe.c:124 util/grub-probe.c:450 -#, c-format -msgid "%s does not support UUIDs" -msgstr "%s non supporta gli UUID" - -#: grub-core/commands/nativedisk.c:325 -msgid "[MODULE1 MODULE2 ...]" -msgstr "[MODULO1 MODULO2 ...]" - -#: grub-core/commands/nativedisk.c:326 -msgid "" -"Switch to native disk drivers. If no modules are specified default set (pata," -"ahci,usbms,ohci,uhci,ehci) is used" -msgstr "" -"Passa ai driver disco nativi; se nessun modulo è specificato viene usato " -"l'insieme predefinito (pata,ahci,usbms,ohci,uhci,ehci)" - -#: grub-core/commands/parttool.c:40 -msgid "" -"Perform COMMANDS on partition.\n" -"Use `parttool PARTITION help' for the list of available commands." -msgstr "" -"Esegue COMANDI sulla partizione.\n" -"Usare \"parttool PARTIZIONE help\" per l'elenco dei comandi disponibili." - -#: grub-core/commands/parttool.c:123 -msgid "=VAL" -msgstr "=VAL" - -#: grub-core/commands/parttool.c:136 -#, c-format -msgid "Sorry, no parttool is available for %s\n" -msgstr "Nessun parttool disponibile per %s\n" - -#: grub-core/commands/parttool.c:288 grub-core/lib/arg.c:285 -#: grub-core/lib/arg.c:351 -#, c-format -msgid "unknown argument `%s'" -msgstr "argomento \"%s\" sconosciuto" - -#: grub-core/commands/parttool.c:344 -msgid "PARTITION COMMANDS" -msgstr "PARTIZIONE COMANDI" - -#: grub-core/commands/password.c:85 -msgid "USER PASSWORD" -msgstr "UTENTE PASSWORD" - -#: grub-core/commands/password.c:86 -msgid "Set user password (plaintext). Unrecommended and insecure." -msgstr "" -"Imposta la password per l'utente (testo in chiaro): non consigliato e non " -"sicuro" - -#. TRANSLATORS: it means that the string which -#. was supposed to be a password hash doesn't -#. have a correct format, not to password -#. mismatch. -#: grub-core/commands/password_pbkdf2.c:98 -#: grub-core/commands/password_pbkdf2.c:115 -#: grub-core/commands/password_pbkdf2.c:123 -#: grub-core/commands/password_pbkdf2.c:150 -#: grub-core/commands/password_pbkdf2.c:179 -msgid "invalid PBKDF2 password" -msgstr "password PBKDF2 non valida" - -#: grub-core/commands/password_pbkdf2.c:202 -msgid "USER PBKDF2_PASSWORD" -msgstr "UTENTE PASSWORD_PBKDF2" - -#: grub-core/commands/password_pbkdf2.c:203 -msgid "Set user password (PBKDF2). " -msgstr "Imposta la password utente (PBKDF2) " - -#: grub-core/commands/pcidump.c:39 grub-core/commands/setpci.c:69 -msgid "Select device by vendor and device IDs." -msgstr "Seleziona il device tramite ID fornitore e ID device" - -#: grub-core/commands/pcidump.c:40 grub-core/commands/setpci.c:70 -msgid "[vendor]:[device]" -msgstr "[fornitore]:[device]" - -#: grub-core/commands/pcidump.c:41 grub-core/commands/setpci.c:71 -msgid "Select device by its position on the bus." -msgstr "Seleziona il device in base alla sua posizione nel bus" - -#: grub-core/commands/pcidump.c:42 grub-core/commands/setpci.c:72 -msgid "[bus]:[slot][.func]" -msgstr "[bus]:[slot][.func]" - -#: grub-core/commands/pcidump.c:109 grub-core/commands/pcidump.c:138 -#: grub-core/commands/setpci.c:183 grub-core/commands/setpci.c:214 -#: grub-core/fs/zfs/zfs.c:3794 grub-core/kern/emu/hostdisk.c:458 -#: grub-core/kern/emu/hostdisk.c:473 grub-core/kern/file.c:44 -#, c-format -msgid "missing `%c' symbol" -msgstr "simbolo \"%c\" mancante" - -#: grub-core/commands/pcidump.c:168 -msgid "[-s POSITION] [-d DEVICE]" -msgstr "[-s POSIZIONE] [-d DEVICE]" - -#: grub-core/commands/pcidump.c:169 -msgid "Show raw dump of the PCI configuration space." -msgstr "Mostra il dump grezzo dello spazio di configurazione PCI" - -#: grub-core/commands/pgp.c:45 -msgid "Skip signature-checking of the public key file." -msgstr "Salta il controllo firma del file della chiave pubblica" - -#. TRANSLATORS: it's about GNUPG signatures. -#: grub-core/commands/pgp.c:71 grub-core/commands/pgp.c:81 -#: grub-core/commands/pgp.c:86 grub-core/commands/pgp.c:96 -#: grub-core/commands/pgp.c:103 grub-core/commands/pgp.c:107 -#: grub-core/commands/pgp.c:114 grub-core/commands/pgp.c:119 -#: grub-core/commands/pgp.c:124 grub-core/commands/pgp.c:128 -#: grub-core/commands/pgp.c:268 grub-core/commands/pgp.c:276 -#: grub-core/commands/pgp.c:281 grub-core/commands/pgp.c:289 -#: grub-core/commands/pgp.c:320 grub-core/commands/pgp.c:327 -#: grub-core/commands/pgp.c:332 grub-core/commands/pgp.c:342 -#: grub-core/commands/pgp.c:468 grub-core/commands/pgp.c:471 -#: grub-core/commands/pgp.c:474 grub-core/commands/pgp.c:477 -#: grub-core/commands/pgp.c:484 grub-core/commands/pgp.c:490 -#: grub-core/commands/pgp.c:665 -msgid "bad signature" -msgstr "firma non valida" - -#. TRANSLATORS: %08x is 32-bit key id. -#: grub-core/commands/pgp.c:636 grub-core/commands/pgp.c:812 -#, c-format -msgid "public key %08x not found" -msgstr "chiave pubblica %08x non trovata" - -#: grub-core/commands/pgp.c:651 grub-core/disk/diskfilter.c:772 -#: grub-core/disk/diskfilter.c:782 grub-core/fs/ntfs.c:404 -#: grub-core/fs/zfs/zfs.c:1933 grub-core/normal/menu.c:428 -#, c-format -msgid "module `%s' isn't loaded" -msgstr "modulo \"%s\" non caricato" - -#: grub-core/commands/pgp.c:994 -msgid "[-s|--skip-sig] FILE SIGNATURE_FILE [PUBKEY_FILE]" -msgstr "[-s|--skip-sig] FILE FILE_FIRMA [FILE_CHIAVE_PUB]" - -#: grub-core/commands/pgp.c:995 -msgid "Verify detached signature." -msgstr "Verifica la firma scollegata" - -#: grub-core/commands/pgp.c:998 -msgid "[-s|--skip-sig] PUBKEY_FILE" -msgstr "[-s|--skip-sig] FILE_CHIAVE_PUB" - -#: grub-core/commands/pgp.c:999 -msgid "Add PUBKEY_FILE to trusted keys." -msgstr "Aggiunge FILE_CHIAVE_PUB tra le chiavi fidate" - -#: grub-core/commands/pgp.c:1003 -msgid "Show the list of trusted keys." -msgstr "Mostra l'elenco delle chiavi fidate" - -#: grub-core/commands/pgp.c:1005 -msgid "PUBKEY_ID" -msgstr "ID_CHIAVE_PUB" - -#: grub-core/commands/pgp.c:1006 -msgid "Remove PUBKEY_ID from trusted keys." -msgstr "Rimuove ID_CHIAVE_PUBBLICA dalle chiavi fidate" - -#: grub-core/commands/probe.c:40 grub-core/commands/tr.c:32 -msgid "Set a variable to return value." -msgstr "Imposta una variabile al valore di ritorno" - -#. TRANSLATORS: It's a driver that is currently in use to access -#. the diven disk. -#: grub-core/commands/probe.c:43 -msgid "Determine driver." -msgstr "Determina il driver" - -#: grub-core/commands/probe.c:44 -msgid "Determine partition map type." -msgstr "Determina il tipo della mappa delle partizioni" - -#: grub-core/commands/probe.c:45 -msgid "Determine filesystem type." -msgstr "Determina il tipo di file system" - -#: grub-core/commands/probe.c:46 -msgid "Determine filesystem UUID." -msgstr "Determina lo UUID del file system" - -#: grub-core/commands/probe.c:47 -msgid "Determine filesystem label." -msgstr "Determina l'etichetta del file system" - -#: grub-core/commands/probe.c:139 grub-core/commands/probe.c:146 -#: util/grub-probe.c:462 -#, c-format -msgid "filesystem `%s' does not support labels" -msgstr "il file system \"%s\" non supporta le etichette" - -#: grub-core/commands/probe.c:165 grub-core/fs/zfs/zfsinfo.c:430 -#: grub-core/loader/i386/bsd.c:169 util/grub-setup.c:223 -msgid "DEVICE" -msgstr "DEVICE" - -#: grub-core/commands/probe.c:166 -msgid "Retrieve device info." -msgstr "Recupera informazioni sul device" - -#: grub-core/commands/read.c:85 -msgid "[ENVVAR]" -msgstr "[VARAMB]" - -#: grub-core/commands/read.c:86 -msgid "Set variable with user input." -msgstr "Imposta la variabile con l'input dell'utente" - -#: grub-core/commands/reboot.c:40 -msgid "Reboot the computer." -msgstr "Riavvia il computer" - -#. TRANSLATORS: in regexp you can mark some -#. groups with parentheses. These groups are -#. then numbered and you can save some of -#. them in variables. In other programs -#. those components aree often referenced with -#. back slash, e.g. \1. Compare -#. sed -e 's,\([a-z][a-z]*\),lowercase=\1,g' -#. The whole matching component is saved in VARNAME, not its number. -#. -#: grub-core/commands/regexp.c:44 -msgid "Store matched component NUMBER in VARNAME." -msgstr "Archivia il corrispondente componente NUMERO in NOMEVAR" - -#: grub-core/commands/regexp.c:45 -msgid "[NUMBER:]VARNAME" -msgstr "[NUMERO:]NOMEVAR" - -# (ndt) lascio REGEXP, tanto è abbastanza tecnica la cosa... -#. TRANSLATORS: This are two arguments. So it's -#. two separate units to translate and pay -#. attention not to reverse them. -#: grub-core/commands/regexp.c:157 -msgid "REGEXP STRING" -msgstr "REGEXP STRINGA" - -#: grub-core/commands/regexp.c:158 -msgid "Test if REGEXP matches STRING." -msgstr "Verifica che REGEXP corrisponda a STRINGA" - -# (ndt) sugg?? -#: grub-core/commands/search.c:324 -msgid "NAME [VARIABLE] [HINTS]" -msgstr "NOME [VARIABILE] [SUGG]" - -#: grub-core/commands/search_file.c:4 -msgid "" -"Search devices by file. If VARIABLE is specified, the first device found is " -"set to a variable." -msgstr "" -"Cerca i device per file: se VARIABILE è specificata, il primo device trovato " -"è impostato a una variabile" - -#: grub-core/commands/search_label.c:4 -msgid "" -"Search devices by label. If VARIABLE is specified, the first device found is " -"set to a variable." -msgstr "" -"Cerca i device per etichetta: se VARIABILE è specificata, il primo device " -"trovato è impostato a una variabile" - -#: grub-core/commands/search_uuid.c:4 -msgid "" -"Search devices by UUID. If VARIABLE is specified, the first device found is " -"set to a variable." -msgstr "" -"Cerca i device per UUID: se VARIABILE è specificata, il primo device trovato " -"è impostato a una variabile" - -#: grub-core/commands/search_wrap.c:34 -msgid "Search devices by a file." -msgstr "Cerca i device tramite un file" - -#: grub-core/commands/search_wrap.c:35 -msgid "Search devices by a filesystem label." -msgstr "Cerca i device tramite un'etichetta del file system" - -#: grub-core/commands/search_wrap.c:37 -msgid "Search devices by a filesystem UUID." -msgstr "Cerca i device tramite un UUID del file system" - -#: grub-core/commands/search_wrap.c:40 -msgid "Set a variable to the first device found." -msgstr "Imposta una variabile al primo device trovato" - -#: grub-core/commands/search_wrap.c:42 -msgid "Do not probe any floppy drive." -msgstr "Non esamina alcuna unità floppy" - -#: grub-core/commands/search_wrap.c:44 -msgid "" -"First try the device HINT. If HINT ends in comma, also try subpartitions" -msgstr "" -"Prima prova il device SUGG, se SUGG termina con una virgola, prova anche le " -"sotto-partizioni" - -#: grub-core/commands/search_wrap.c:45 grub-core/commands/search_wrap.c:49 -#: grub-core/commands/search_wrap.c:53 grub-core/commands/search_wrap.c:57 -#: grub-core/commands/search_wrap.c:61 grub-core/commands/search_wrap.c:65 -msgid "HINT" -msgstr "SUGG" - -#: grub-core/commands/search_wrap.c:47 -msgid "" -"First try the device HINT if currently running on IEEE1275. If HINT ends in " -"comma, also try subpartitions" -msgstr "" -"Prima prova il device SUGG se in esecuzione su IEEE1275, se SUGG termina con " -"una virgola, prova anche le sotto-partizioni" - -#: grub-core/commands/search_wrap.c:51 -msgid "" -"First try the device HINT if currently running on BIOS. If HINT ends in " -"comma, also try subpartitions" -msgstr "" -"Prima prova il device SUGG se in esecuzione su BIOS, se SUGG termina con una " -"virgola, prova anche le sotto-partizioni" - -#: grub-core/commands/search_wrap.c:55 -msgid "" -"First try the device HINT if direct hardware access is supported. If HINT " -"ends in comma, also try subpartitions" -msgstr "" -"Prima prova il device SUGG se l'accesso diretto all'hardware è supportato, " -"se SUGG termina con una virgola, prova anche le sotto-partizioni" - -#: grub-core/commands/search_wrap.c:59 -msgid "" -"First try the device HINT if currently running on EFI. If HINT ends in " -"comma, also try subpartitions" -msgstr "" -"Prima prova il device SUGG se in esecuzione su EFI, se SUGG termina con una " -"virgola, prova anche le sotto-partizioni" - -#: grub-core/commands/search_wrap.c:63 -msgid "" -"First try the device HINT if currently running on ARC. If HINT ends in " -"comma, also try subpartitions" -msgstr "" -"Prima prova il device SUGG se in esecuzione su ARC, se SUGG termina con una " -"virgola, prova anche le sotto-partizioni" - -#: grub-core/commands/search_wrap.c:207 -msgid "[-f|-l|-u|-s|-n] [--hint HINT [--hint HINT] ...] NAME" -msgstr "[-f|-l|-u|-s|-n] [--hint SUGG [--hint SUGG] ...] NOME" - -#: grub-core/commands/search_wrap.c:209 -msgid "" -"Search devices by file, filesystem label or filesystem UUID. If --set is " -"specified, the first device found is set to a variable. If no variable name " -"is specified, `root' is used." -msgstr "" -"Cerca i device per file, etichetta del file system o UUID del file system. " -"Se è specificato --set, il primo device trovato è impostato a una variabile, " -"se non è indicata alcuna variabile, viene usata \"root\"" - -#: grub-core/commands/setpci.c:132 -#, c-format -msgid "Register %x of %x:%02x.%x is %x\n" -msgstr "Registro %x di %x:%02x.%x è %x\n" - -#: grub-core/commands/setpci.c:333 -msgid "[-s POSITION] [-d DEVICE] [-v VAR] REGISTER[=VALUE[:MASK]]" -msgstr "[-s POSIZIONE] [-d DEVICE] [-v VAR] REGISTRO[=VAL[:MASCHERA]]" - -#: grub-core/commands/setpci.c:335 -msgid "Manipulate PCI devices." -msgstr "Gestisce device PCI" - -#: grub-core/commands/sleep.c:32 -msgid "Verbose countdown." -msgstr "Conto alla rovescia esplicito" - -#: grub-core/commands/sleep.c:33 -msgid "Allow to interrupt with ESC." -msgstr "Consente di essere fermato con ESC" - -#: grub-core/commands/sleep.c:109 -msgid "NUMBER_OF_SECONDS" -msgstr "NUMERO_DI_SECONDI" - -#: grub-core/commands/sleep.c:110 -msgid "Wait for a specified number of seconds." -msgstr "Attende per un determinato numero di secondi" - -#: grub-core/commands/syslinuxcfg.c:50 util/grub-syslinux2cfg.c:66 -msgid "root directory of the syslinux disk [default=/]." -msgstr "Directory di root del disco syslinux [predefinito=/]" - -#: grub-core/commands/syslinuxcfg.c:53 util/grub-syslinux2cfg.c:72 -msgid "" -"current directory of syslinux [default is parent directory of input file]." -msgstr "" -"Directory attuale di syslinux [predefinito la directory superiore del file " -"di input]" - -#: grub-core/commands/syslinuxcfg.c:55 util/grub-syslinux2cfg.c:75 -msgid "assume input is an isolinux configuration file." -msgstr "Assume l'input come file di configurazione isolinux" - -#: grub-core/commands/syslinuxcfg.c:56 util/grub-syslinux2cfg.c:76 -msgid "assume input is a pxelinux configuration file." -msgstr "Assume l'input come file di configurazione pxelinux" - -#: grub-core/commands/syslinuxcfg.c:57 util/grub-syslinux2cfg.c:77 -msgid "assume input is a syslinux configuration file." -msgstr "Assume l'input come file di configurazione syslinux" - -#. TRANSLATORS: "syslinux config" means -#. "config as used by syslinux". -#: grub-core/commands/syslinuxcfg.c:189 -msgid "Execute syslinux config in same context" -msgstr "Esegue configurazione syslinux nello stesso contesto" - -#: grub-core/commands/syslinuxcfg.c:195 -msgid "Execute syslinux config in new context" -msgstr "Esegue configurazione syslinux nel nuovo contesto" - -# -#: grub-core/commands/syslinuxcfg.c:201 -msgid "Execute syslinux config in same context taking only menu entries" -msgstr "" -"Esegue configurazione syslinux nello stesso contesto utilizzando solo le " -"voci di menù" - -#: grub-core/commands/syslinuxcfg.c:207 -msgid "Execute syslinux config in new context taking only menu entries" -msgstr "" -"Esegue configurazione syslinux nel nuovo contesto utilizzando solo le voci " -"di menù" - -#: grub-core/commands/terminal.c:90 -msgid "no terminal specified" -msgstr "nessun terminale specificato" - -#: grub-core/commands/terminal.c:112 grub-core/commands/terminal.c:139 -#, c-format -msgid "terminal `%s' isn't found" -msgstr "terminale \"%s\" non trovato" - -#: grub-core/commands/terminal.c:244 -msgid "Active input terminals:" -msgstr "Terminali di input attivi:" - -#: grub-core/commands/terminal.c:245 -msgid "Available input terminals:" -msgstr "Terminali di input disponibili:" - -#: grub-core/commands/terminal.c:261 -msgid "Active output terminals:" -msgstr "Terminali di output attivi:" - -#: grub-core/commands/terminal.c:262 -msgid "Available output terminals:" -msgstr "Terminali di output disponibili:" - -#: grub-core/commands/terminal.c:271 grub-core/commands/terminal.c:276 -msgid "[--append|--remove] [TERMINAL1] [TERMINAL2] ..." -msgstr "[--append|--remove] [TERMINALE1] [TERMINALE2] ..." - -#: grub-core/commands/terminal.c:273 -msgid "List or select an input terminal." -msgstr "Elenca o seleziona un terminale di input" - -#: grub-core/commands/terminal.c:278 -msgid "List or select an output terminal." -msgstr "Elenca o seleziona un terminale di output" - -#: grub-core/commands/test.c:444 -msgid "EXPRESSION ]" -msgstr "ESPRESSIONE ]" - -#: grub-core/commands/test.c:444 grub-core/commands/test.c:447 -msgid "Evaluate an expression." -msgstr "Valuta un'espressione" - -#: grub-core/commands/test.c:447 -msgid "EXPRESSION" -msgstr "ESPRESSIONE" - -#: grub-core/commands/testload.c:164 -msgid "Load the same file in multiple ways." -msgstr "Carica lo stesso file in modi diversi" - -#: grub-core/commands/testspeed.c:35 -msgid "Specify size for each read operation" -msgstr "Specifica la dimensione per ogni operazione di lettura" - -#: grub-core/commands/testspeed.c:58 -msgid "invalid block size" -msgstr "dimensione blocco non valida" - -#: grub-core/commands/testspeed.c:80 -#, c-format -msgid "File size: %s\n" -msgstr "Dimensione file: %s\n" - -#: grub-core/commands/testspeed.c:83 -#, c-format -msgid "Elapsed time: %d.%03d s \n" -msgstr "Tempo trascorso: %d.%03d s. \n" - -#: grub-core/commands/testspeed.c:92 -#, c-format -msgid "Speed: %s \n" -msgstr "Velocità: %s\n" - -#: grub-core/commands/testspeed.c:107 -msgid "[-s SIZE] FILENAME" -msgstr "[-s DIMENSIONE] NOMEFILE" - -#: grub-core/commands/testspeed.c:108 -msgid "Test file read speed." -msgstr "Verifica la velocità di lettura file" - -#: grub-core/commands/time.c:38 grub-core/script/execute.c:974 -msgid "no command is specified" -msgstr "nessun comando specificato" - -#: grub-core/commands/time.c:50 -#, c-format -msgid "Elapsed time: %d.%03d seconds \n" -msgstr "Tempo trascorso: %d.%03d secondi \n" - -#: grub-core/commands/time.c:61 -msgid "COMMAND [ARGS]" -msgstr "COMANDO [ARG]" - -#: grub-core/commands/time.c:62 -msgid "Measure time used by COMMAND" -msgstr "Misura il tempo utilizzato per COMANDO" - -#: grub-core/commands/tr.c:33 -msgid "Translate to upper case." -msgstr "Converte tutto in maiuscolo" - -#: grub-core/commands/tr.c:34 -msgid "Translate to lower case." -msgstr "Converte tutto in minuscolo" - -#: grub-core/commands/tr.c:119 -msgid "[OPTIONS] [SET1] [SET2] [STRING]" -msgstr "[OPZIONI] [SET1] [SET2] [STRINGA]" - -#: grub-core/commands/tr.c:120 -msgid "Translate SET1 characters to SET2 in STRING." -msgstr "Converte i caratteri in STRINGA da SET1 a SET2" - -#. TRANSLATORS: it's a command description. -#: grub-core/commands/true.c:50 -msgid "Do nothing, successfully." -msgstr "Non fa nulla, successo" - -#. TRANSLATORS: it's a command description. -#: grub-core/commands/true.c:54 -msgid "Do nothing, unsuccessfully." -msgstr "Non fa nulla, insuccesso" - -#: grub-core/commands/usbtest.c:221 -msgid "Test USB support." -msgstr "Verifica il supporto USB" - -#: grub-core/commands/verifiers.c:120 -#, c-format -msgid "verification requested but nobody cares: %s" -msgstr "richiesta la verifica, ma non interessa a nessuno: %s" - -#: grub-core/commands/verifiers.c:140 -msgid "big file signature isn't implemented yet" -msgstr "la firma di file grandi non è ancora implementata" - -#: grub-core/commands/videoinfo.c:61 -msgid "Text-only " -msgstr "Solo testo" - -#. TRANSLATORS: "Direct color" is a mode when the color components -#. are written dirrectly into memory. -#: grub-core/commands/videoinfo.c:66 -#, c-format -msgid "Direct color, mask: %d/%d/%d/%d pos: %d/%d/%d/%d" -msgstr "Colore diretto, maschera: %d/%d/%d/%d pos: %d/%d/%d/%d" - -#. TRANSLATORS: In "paletted color" mode you write the index of the color -#. in the palette. Synonyms include "packed pixel". -#: grub-core/commands/videoinfo.c:78 -msgid "Paletted " -msgstr "Tavolozza" - -#: grub-core/commands/videoinfo.c:80 -msgid "YUV " -msgstr "YUV " - -#. TRANSLATORS: "Planar" is the video memory where you have to write -#. in several different banks "plans" to control the different color -#. components of the same pixel. -#: grub-core/commands/videoinfo.c:85 -msgid "Planar " -msgstr "Planare " - -#: grub-core/commands/videoinfo.c:87 -msgid "Hercules " -msgstr "Hercules " - -#: grub-core/commands/videoinfo.c:89 -msgid "CGA " -msgstr "CGA " - -#. TRANSLATORS: Non-chain 4 is a 256-color planar -#. (unchained) video memory mode. -#: grub-core/commands/videoinfo.c:93 -msgid "Non-chain 4 " -msgstr "Non-chain 4 " - -#: grub-core/commands/videoinfo.c:95 -msgid "Monochrome " -msgstr "Monocromatico " - -#: grub-core/commands/videoinfo.c:97 -msgid "Unknown video mode " -msgstr "Modalità video sconosciuta " - -#: grub-core/commands/videoinfo.c:111 -msgid " EDID checksum invalid" -msgstr " Checksum EDID non valido" - -#: grub-core/commands/videoinfo.c:116 -#, c-format -msgid " EDID version: %u.%u\n" -msgstr " Versione EDID: %u.%u\n" - -#: grub-core/commands/videoinfo.c:120 -#, c-format -msgid " Preferred mode: %ux%u\n" -msgstr " Modalità preferita: %ux%u\n" - -#: grub-core/commands/videoinfo.c:123 -msgid " No preferred mode available\n" -msgstr " Nessuna modalità preferita disponibile\n" - -#: grub-core/commands/videoinfo.c:146 grub-core/video/video.c:490 -#: grub-core/video/video.c:498 grub-core/video/video.c:509 -#: grub-core/video/video.c:520 grub-core/video/video.c:528 -#, c-format -msgid "invalid video mode specification `%s'" -msgstr "modalità video \"%s\" non valida" - -#: grub-core/commands/videoinfo.c:168 -msgid "List of supported video modes:" -msgstr "Elenco modalità video supportate:" - -#: grub-core/commands/videoinfo.c:169 -msgid "Legend: mask/position=red/green/blue/reserved" -msgstr "Legenda: masc/posizione=rosso/verde/blu/riservato" - -#: grub-core/commands/videoinfo.c:176 -#, c-format -msgid "Adapter `%s':\n" -msgstr "Adattatore \"%s\":\n" - -#: grub-core/commands/videoinfo.c:180 -msgid " No info available" -msgstr " Nessuna informazione disponibile" - -#: grub-core/commands/videoinfo.c:198 -msgid " Failed to initialize video adapter" -msgstr " Inizializzazione adattatore video non riuscita" - -#. TRANSLATORS: "x" has to be entered in, -#. like an identifier, so please don't -#. use better Unicode codepoints. -#: grub-core/commands/videoinfo.c:239 grub-core/commands/videoinfo.c:248 -msgid "[WxH[xD]]" -msgstr "[LxA[xP]]" - -# (ndt) questa è lunga... chissà come viene a video... -#: grub-core/commands/videoinfo.c:240 grub-core/commands/videoinfo.c:249 -msgid "" -"List available video modes. If resolution is given show only modes matching " -"it." -msgstr "" -"Elenca le modalità video disponibili; se viene fornita la risoluzione, " -"mostra solo le modalità corrispondenti" - -#. TRANSLATORS: "x" has to be entered in, -#. like an identifier, so please don't -#. use better Unicode codepoints. -#: grub-core/commands/videotest.c:225 -msgid "[WxH]" -msgstr "[WxH]" - -#. TRANSLATORS: Here, on the other hand, it's -#. nicer to use unicode cross instead of x. -#: grub-core/commands/videotest.c:228 -msgid "Test video subsystem in mode WxH." -msgstr "Verifica il sottosistema video in modalità W×H" - -#: grub-core/commands/videotest.c:231 -msgid "Test video subsystem." -msgstr "Verifica il sottosistema video" - -#: grub-core/commands/xen/lsxen.c:80 grub-core/commands/xen/lsxen.c:82 -msgid "[DIR]" -msgstr "[DIR]" - -#: grub-core/commands/xen/lsxen.c:81 grub-core/commands/xen/lsxen.c:83 -msgid "List Xen storage." -msgstr "Elenca archivi Xen" - -#. TRANSLATORS: GRUBUUID stands for "filesystem -#. UUID as used in GRUB". -#: grub-core/commands/xnu_uuid.c:110 -msgid "[-l] GRUBUUID [VARNAME]" -msgstr "[-l] UUIDGRUB [NOMEVAR]" - -#: grub-core/commands/xnu_uuid.c:111 -msgid "" -"Transform 64-bit UUID to format suitable for XNU. If -l is given keep it " -"lowercase as done by blkid." -msgstr "" -"Trasforma UUID 64-bit in un formato adatto per XNU; se viene passato -l " -"mantiene tutto minuscolo come fatto da blkid" - -#: grub-core/disk/arc/arcdisk.c:248 grub-core/disk/efi/efidisk.c:603 -#: grub-core/disk/i386/pc/biosdisk.c:498 grub-core/disk/i386/pc/biosdisk.c:543 -#: grub-core/disk/ieee1275/nand.c:198 grub-core/disk/ieee1275/obdisk.c:527 -#: grub-core/disk/ieee1275/ofdisk.c:586 -#, c-format -msgid "failure reading sector 0x%llx from `%s'" -msgstr "lettura del settore 0x%llx da \"%s\" non riuscita" - -#: grub-core/disk/arc/arcdisk.c:284 grub-core/disk/efi/efidisk.c:626 -#: grub-core/disk/i386/pc/biosdisk.c:548 grub-core/disk/ieee1275/ofdisk.c:606 -#, c-format -msgid "failure writing sector 0x%llx to `%s'" -msgstr "scrittura del settore 0x%llx su \"%s\" non riuscita" - -#: grub-core/disk/cryptodisk.c:40 -msgid "Mount by UUID." -msgstr "Monta in base allo UUID" - -#. TRANSLATORS: It's still restricted to cryptodisks only. -#: grub-core/disk/cryptodisk.c:42 -msgid "Mount all." -msgstr "Monta tutto" - -#: grub-core/disk/cryptodisk.c:43 -msgid "Mount all volumes with `boot' flag set." -msgstr "Monta tutti i volumi col flag \"boot\" impostato" - -#. TRANSLATORS: The first %s is the file being looked at, the second %s is -#. the error message. -#: grub-core/disk/cryptodisk.c:526 grub-core/kern/emu/hostdisk.c:152 -#: grub-core/kern/emu/hostdisk.c:262 grub-core/kern/emu/hostdisk.c:434 -#: grub-core/kern/emu/misc.c:168 grub-core/kern/emu/misc.c:174 -#: grub-core/kern/emu/misc.c:196 grub-core/osdep/bsd/getroot.c:92 -#: grub-core/osdep/bsd/getroot.c:168 grub-core/osdep/hurd/getroot.c:68 -#: grub-core/osdep/linux/blocklist.c:65 grub-core/osdep/linux/getroot.c:150 -#: grub-core/osdep/linux/hostdisk.c:194 grub-core/osdep/linux/hostdisk.c:421 -#: grub-core/osdep/linux/ofpath.c:417 grub-core/osdep/linux/ofpath.c:422 -#: grub-core/osdep/linux/ofpath.c:517 grub-core/osdep/linux/ofpath.c:530 -#: grub-core/osdep/sun/getroot.c:110 grub-core/osdep/windows/blocklist.c:98 -#: grub-core/tests/video_checksum.c:279 util/editenv.c:46 util/glue-efi.c:115 -#: util/glue-efi.c:120 util/glue-efi.c:130 util/grub-editenv.c:138 -#: util/grub-editenv.c:192 util/grub-file.c:83 util/grub-fstest.c:128 -#: util/grub-fstest.c:568 util/grub-install-common.c:92 -#: util/grub-install-common.c:94 util/grub-install-common.c:101 -#: util/grub-install-common.c:529 util/grub-menulst2cfg.c:53 -#: util/grub-menulst2cfg.c:68 util/grub-mkimage.c:292 util/grub-mklayout.c:504 -#: util/grub-mklayout.c:516 util/grub-mknetdir.c:133 util/grub-mknetdir.c:151 -#: util/grub-mkrescue.c:627 util/grub-mkrescue.c:631 util/grub-mkrescue.c:879 -#: util/grub-mkrescue.c:883 util/grub-mkstandalone.c:253 util/grub-mount.c:498 -#: util/grub-render-label.c:169 util/grub-script-check.c:175 -#: util/grub-syslinux2cfg.c:181 util/grub-syslinux2cfg.c:191 -#: util/grub-syslinux2cfg.c:212 util/grub-syslinux2cfg.c:228 util/misc.c:91 -#: util/render-label.c:76 util/render-label.c:163 util/render-label.c:174 -#: util/resolve.c:246 util/setup.c:783 -#, c-format -msgid "cannot open `%s': %s" -msgstr "impossibile aprire \"%s\": %s" - -#: grub-core/disk/cryptodisk.c:583 grub-core/disk/cryptodisk.c:628 -#: grub-core/kern/emu/hostdisk.c:270 grub-core/kern/emu/hostfs.c:142 -#: grub-core/osdep/linux/hostdisk.c:456 util/grub-editenv.c:143 -#: util/grub-editenv.c:149 util/grub-fstest.c:320 util/misc.c:111 -#, c-format -msgid "cannot seek `%s': %s" -msgstr "impossibile eseguire seek \"%s\": %s" - -#: grub-core/disk/cryptodisk.c:1144 -msgid "SOURCE|-u UUID|-a|-b" -msgstr "SORGENTE|-u UUID|-a|-b" - -#: grub-core/disk/cryptodisk.c:1145 -msgid "Mount a crypto device." -msgstr "Monta un device crypto" - -#. TRANSLATORS: This message kicks in during the detection of -#. which modules needs to be included in core image. This happens -#. in the case of degraded RAID and means that autodetection may -#. fail to include some of modules. It's an installation time -#. message, not runtime message. -#: grub-core/disk/diskfilter.c:343 grub-core/disk/diskfilter.c:376 -#, c-format -msgid "" -"Couldn't find physical volume `%s'. Some modules may be missing from core " -"image." -msgstr "" -"Impossibile trovare il volume fisico \"%s\": potrebbero mancare alcuni " -"moduli dall'immagine core." - -#: grub-core/disk/diskfilter.c:480 -#, c-format -msgid "physical volume %s not found" -msgstr "volume fisico %s non trovato" - -#: grub-core/disk/efi/efidisk.c:600 grub-core/disk/efi/efidisk.c:623 -#, c-format -msgid "no media in `%s'" -msgstr "nessun supporto in \"%s\"" - -#: grub-core/disk/geli.c:75 -msgid "Couldn't load sha256" -msgstr "Impossibile caricare sha256" - -#: grub-core/disk/geli.c:85 -msgid "Couldn't load sha512" -msgstr "Impossibile caricare sha512" - -#: grub-core/disk/geli.c:216 grub-core/disk/geli.c:220 -msgid "couldn't read ELI metadata" -msgstr "impossibile leggere metadati ELI" - -#: grub-core/disk/geli.c:231 -msgid "wrong ELI magic or version" -msgstr "versione o numero magic ELI errato" - -#: grub-core/disk/geli.c:435 grub-core/disk/luks.c:329 -msgid "Attempting to decrypt master key..." -msgstr "Tentativo di decifrazione chiave master..." - -#: grub-core/disk/geli.c:441 grub-core/disk/luks.c:347 -#, c-format -msgid "Enter passphrase for %s%s%s (%s): " -msgstr "Inserire la passphrase per %s%s%s (%s):" - -#. TRANSLATORS: It's a cryptographic key slot: one element of an array -#. where each element is either empty or holds a key. -#: grub-core/disk/geli.c:530 grub-core/disk/luks.c:451 -#, c-format -msgid "Slot %d opened\n" -msgstr "Slot %d aperto\n" - -#: grub-core/disk/i386/pc/biosdisk.c:470 grub-core/disk/i386/pc/biosdisk.c:524 -#: grub-core/disk/i386/pc/biosdisk.c:534 grub-core/kern/disk_common.c:47 -#, c-format -msgid "attempt to read or write outside of disk `%s'" -msgstr "tentativo di leggere o scrivere al di fuori del disco \"%s\"" - -#: grub-core/disk/i386/pc/biosdisk.c:491 grub-core/disk/i386/pc/biosdisk.c:611 -#: grub-core/disk/scsi.c:726 -msgid "cannot write to CD-ROM" -msgstr "impossibile scrivere sul CD-ROM" - -#: grub-core/disk/i386/pc/biosdisk.c:662 -msgid "" -"Native disk drivers are in use. Refusing to use firmware disk interface." -msgstr "" -"Sono in uso driver disco nativi: l'interfaccia disco firmware non verrà " -"utilizzata." - -#. TRANSLATORS: it's a partition for embedding, -#. not a partition embed into something. GRUB -#. install tools put core.img into a place -#. usable for bootloaders (called generically -#. "embedding zone") and this operation is -#. called "embedding". -#: grub-core/disk/ldm.c:1015 -msgid "your LDM Embedding Partition is too small; embedding won't be possible" -msgstr "" -"la partizione di embed LDM è troppo piccola; l'embed non sarà possibile" - -#. TRANSLATORS: it's a partition for embedding, -#. not a partition embed into something. -#: grub-core/disk/ldm.c:1033 -msgid "this LDM has no Embedding Partition; embedding won't be possible" -msgstr "" -"questo LDM non ha una partizione per l'embed; l'embed non sarà possibile" - -#. TRANSLATORS: The disk is simply removed from the list of available ones, -#. not wiped, avoid to scare user. -#: grub-core/disk/loopback.c:45 -msgid "Delete the specified loopback drive." -msgstr "Elimina l'unità di loopback specificata" - -#: grub-core/disk/loopback.c:237 -msgid "[-d] DEVICENAME FILE." -msgstr "[-d] NOMEDEVICE FILE" - -#. TRANSLATORS: The file itself is not destroyed -#. or transformed into drive. -#: grub-core/disk/loopback.c:240 -msgid "Make a virtual drive from a file." -msgstr "Crea un drive virtuale da un file" - -#: grub-core/efiemu/i386/loadcore32.c:111 -#: grub-core/efiemu/i386/loadcore64.c:125 grub-core/kern/arm/dl.c:256 -#: grub-core/kern/arm64/dl.c:187 grub-core/kern/i386/dl.c:75 -#: grub-core/kern/ia64/dl.c:140 grub-core/kern/mips/dl.c:258 -#: grub-core/kern/powerpc/dl.c:163 grub-core/kern/riscv/dl.c:334 -#: grub-core/kern/sparc64/dl.c:180 grub-core/kern/x86_64/dl.c:110 -#: util/grub-mkimagexx.c:756 util/grub-mkimagexx.c:881 -#: util/grub-mkimagexx.c:945 util/grub-mkimagexx.c:1026 -#: util/grub-mkimagexx.c:1120 util/grub-mkimagexx.c:1222 -#: util/grub-mkimagexx.c:1413 util/grub-mkimagexx.c:1628 -#: util/grub-mkimagexx.c:1665 util/grub-mkimagexx.c:1697 -#: util/grub-mkimagexx.c:1767 util/grub-mkimagexx.c:1797 -#, c-format -msgid "relocation 0x%x is not implemented yet" -msgstr "la rilocazione 0x%x non è ancora implementata" - -#: grub-core/efiemu/loadcore.c:200 grub-core/efiemu/loadcore.c:237 -#: grub-core/loader/i386/bsdXX.c:317 util/grub-mkimagexx.c:2360 -msgid "no symbol table" -msgstr "nessuna tabella dei simboli" - -#: grub-core/efiemu/loadcore.c:346 grub-core/kern/dl.c:609 -#: grub-core/loader/ia64/efi/linux.c:345 grub-core/loader/mips/linux.c:248 -#: grub-core/loader/multiboot_elfxx.c:76 -#: grub-core/loader/powerpc/ieee1275/linux.c:280 -#: grub-core/loader/sparc64/ieee1275/linux.c:320 -msgid "this ELF file is not of the right type" -msgstr "questo file ELF non è di tipo corretto" - -#: grub-core/efiemu/main.c:313 -msgid "Load and initialize EFI emulator." -msgstr "Carica e inizializza l'emulatore EFI" - -#: grub-core/efiemu/main.c:317 -msgid "Finalize loading of EFI emulator." -msgstr "Finalizza il caricamento dell'emulatore EFI" - -#: grub-core/efiemu/main.c:320 -msgid "Unload EFI emulator." -msgstr "Rimuove l'emulatore EFI" - -#: grub-core/efiemu/symbols.c:92 grub-core/kern/dl.c:376 -#, c-format -msgid "symbol `%s' not found" -msgstr "simbolo \"%s\" non trovato" - -#: grub-core/font/font_cmd.c:52 -msgid "Loaded fonts:" -msgstr "Caratteri caricati:" - -#: grub-core/font/font_cmd.c:74 -msgid "FILE..." -msgstr "FILE..." - -#: grub-core/font/font_cmd.c:75 -msgid "Specify one or more font files to load." -msgstr "Specifica uno o più file di caratteri da caricare" - -#: grub-core/font/font_cmd.c:78 -msgid "List the loaded fonts." -msgstr "Elenca i caratteri caricati" - -#: grub-core/fs/archelp.c:216 grub-core/fs/archelp.c:278 -#: grub-core/fs/btrfs.c:1815 grub-core/fs/fshelp.c:227 grub-core/fs/jfs.c:736 -#: grub-core/fs/minix.c:369 grub-core/fs/ufs.c:454 -msgid "too deep nesting of symlinks" -msgstr "troppi collegamenti simbolici annidati" - -#: grub-core/fs/bfs.c:228 grub-core/fs/fshelp.c:368 grub-core/fs/minix.c:270 -#: grub-core/kern/file.c:156 -msgid "attempt to read past the end of file" -msgstr "tentativo di leggere oltre la fine del file" - -#: grub-core/fs/btrfs.c:1698 grub-core/fs/btrfs.c:1957 -#: grub-core/fs/fshelp.c:189 grub-core/fs/fshelp.c:309 grub-core/fs/jfs.c:431 -#: grub-core/fs/minix.c:414 grub-core/fs/minix.c:562 -#: grub-core/fs/reiserfs.c:732 grub-core/fs/ufs.c:531 grub-core/fs/ufs.c:671 -#: grub-core/fs/zfs/zfs.c:2831 grub-core/fs/zfs/zfs.c:4247 -msgid "not a directory" -msgstr "non una directory" - -#: grub-core/fs/btrfs.c:2063 grub-core/fs/fshelp.c:307 grub-core/fs/jfs.c:835 -#: grub-core/fs/zfs/zfs.c:3801 -msgid "not a regular file" -msgstr "non un file regolare" - -#: grub-core/fs/btrfs.c:2157 grub-core/fs/zfs/zfs.c:4333 -#: grub-core/partmap/msdos.c:400 -msgid "your core.img is unusually large. It won't fit in the embedding area" -msgstr "" -"l'immagine core è stranamente grande. Non può essere mantenuta nell'area " -"embed" - -#: grub-core/fs/fshelp.c:281 grub-core/fs/minix.c:630 grub-core/fs/ufs.c:661 -#: grub-core/fs/ufs.c:757 grub-core/kern/fs.c:168 grub-core/kern/fs.c:180 -#, c-format -msgid "invalid file name `%s'" -msgstr "nome di file \"%s\" non valido" - -#: grub-core/fs/zfs/zfs.c:453 -msgid "checksum verification failed" -msgstr "verifica checksum non riuscita" - -#: grub-core/fs/zfs/zfs.c:1465 -msgid "couldn't find a necessary member device of multi-device filesystem" -msgstr "" -"impossibile trovare un device membro necessario per file system multi-device" - -#: grub-core/fs/zfs/zfscrypt.c:292 -msgid "no decryption key available" -msgstr "nessuna chiave di decifrazione disponibile" - -#: grub-core/fs/zfs/zfscrypt.c:304 -msgid "MAC verification failed" -msgstr "verifica MAC non riuscita" - -#: grub-core/fs/zfs/zfscrypt.c:413 -msgid "Assume input is raw." -msgstr "Assume l'input come raw" - -#: grub-core/fs/zfs/zfscrypt.c:414 -msgid "Assume input is hex." -msgstr "Assume l'input come hex" - -#: grub-core/fs/zfs/zfscrypt.c:415 -msgid "Assume input is passphrase." -msgstr "Assume l'input come una passphrase" - -#: grub-core/fs/zfs/zfscrypt.c:437 util/grub-fstest.c:553 util/grub-mount.c:483 -msgid "Enter ZFS password: " -msgstr "Inserire password ZFS:" - -#: grub-core/fs/zfs/zfscrypt.c:476 -msgid "[-h|-p|-r] [FILE]" -msgstr "[-h|-p|-r] [FILE]" - -#: grub-core/fs/zfs/zfscrypt.c:477 -msgid "Import ZFS wrapping key stored in FILE." -msgstr "Importa chiavi wrap ZFS archiviate in FILE" - -#: grub-core/fs/zfs/zfsinfo.c:51 -msgid "Virtual device is removed" -msgstr "Device virtuale rimosso" - -#: grub-core/fs/zfs/zfsinfo.c:57 -msgid "Virtual device is faulted" -msgstr "Device virtuale danneggiato" - -#: grub-core/fs/zfs/zfsinfo.c:63 -msgid "Virtual device is offline" -msgstr "Device virtuale offline" - -#. TRANSLATORS: degraded doesn't mean broken but that some of -#. component are missing but virtual device as whole is still usable. -#: grub-core/fs/zfs/zfsinfo.c:70 -msgid "Virtual device is degraded" -msgstr "Device virtuale degradato" - -#: grub-core/fs/zfs/zfsinfo.c:73 -msgid "Virtual device is online" -msgstr "Device virtuale online" - -#: grub-core/fs/zfs/zfsinfo.c:89 -msgid "Incorrect virtual device: no type available" -msgstr "Device virtuale non corretto: nessun tipo disponibile" - -#. TRANSLATORS: The virtual devices form a tree (in graph-theoretical -#. sense). The nodes like mirror or raidz have children: member devices. -#. The "real" devices which actually store data are called "leafs" -#. (again borrowed from graph theory) and can be either disks -#. (or partitions) or files. -#: grub-core/fs/zfs/zfsinfo.c:105 -msgid "Leaf virtual device (file or disk)" -msgstr "Dispositivo virtuale foglia (file o disco)" - -#: grub-core/fs/zfs/zfsinfo.c:113 -msgid "Bootpath: unavailable\n" -msgstr "Percorso di avvio: non disponibile\n" - -#: grub-core/fs/zfs/zfsinfo.c:115 -#, c-format -msgid "Bootpath: %s\n" -msgstr "Percorso di avvio: %s\n" - -#: grub-core/fs/zfs/zfsinfo.c:120 -msgid "Path: unavailable" -msgstr "Percorso: non disponibile" - -#: grub-core/fs/zfs/zfsinfo.c:122 -#, c-format -msgid "Path: %s\n" -msgstr "Percorso: %s\n" - -#: grub-core/fs/zfs/zfsinfo.c:127 -msgid "Devid: unavailable" -msgstr "Devid: non disponibile" - -#: grub-core/fs/zfs/zfsinfo.c:129 -#, c-format -msgid "Devid: %s\n" -msgstr "Devid: %s\n" - -#: grub-core/fs/zfs/zfsinfo.c:148 -msgid "This VDEV is a mirror" -msgstr "Questo VDEV è un mirror" - -#: grub-core/fs/zfs/zfsinfo.c:153 -#, c-format -msgid "This VDEV is a RAIDZ%llu\n" -msgstr "Questo VDEV è un RAIDZ%llu\n" - -#: grub-core/fs/zfs/zfsinfo.c:158 -msgid "Incorrect VDEV" -msgstr "VDEV non corretto" - -#: grub-core/fs/zfs/zfsinfo.c:161 -#, c-format -msgid "VDEV with %d children\n" -msgstr "VDEV con %d figli\n" - -#. TRANSLATORS: it's the element carying the number %d, not -#. total element number. And the number itself is fine, -#. only the element isn't. -#. -#: grub-core/fs/zfs/zfsinfo.c:177 -#, c-format -msgid "VDEV element number %d isn't correct\n" -msgstr "L'elemento VDEV numero %d non è corretto\n" - -#. TRANSLATORS: it's the element carying the number %d, not -#. total element number. This is used in enumeration -#. "Element number 1", "Element number 2", ... -#: grub-core/fs/zfs/zfsinfo.c:184 -#, c-format -msgid "VDEV element number %d:\n" -msgstr "Elemento VDEV numero %d:\n" - -#: grub-core/fs/zfs/zfsinfo.c:193 -#, c-format -msgid "Unknown virtual device type: %s\n" -msgstr "Tipo di device virtuale sconosciuto: %s\n" - -#. TRANSLATORS: Here we speak about ZFS pools it's semi-marketing, -#. semi-technical term by Sun/Oracle and should be translated in sync with -#. other ZFS-related software and documentation. -#: grub-core/fs/zfs/zfsinfo.c:254 -msgid "Pool state: active" -msgstr "Stato pool: attivo" - -#: grub-core/fs/zfs/zfsinfo.c:255 -msgid "Pool state: exported" -msgstr "Stato pool: esportato" - -#: grub-core/fs/zfs/zfsinfo.c:256 -msgid "Pool state: destroyed" -msgstr "Stato pool: distrutto" - -#: grub-core/fs/zfs/zfsinfo.c:257 -msgid "Pool state: reserved for hot spare" -msgstr "Stato pool: riservato per hot spare" - -#: grub-core/fs/zfs/zfsinfo.c:258 -msgid "Pool state: level 2 ARC device" -msgstr "Stato pool: device ARC livello 2" - -#: grub-core/fs/zfs/zfsinfo.c:259 -msgid "Pool state: uninitialized" -msgstr "Stato pool: non inizializzato" - -#: grub-core/fs/zfs/zfsinfo.c:260 -msgid "Pool state: unavailable" -msgstr "Stato pool: non disponibile" - -#: grub-core/fs/zfs/zfsinfo.c:261 -msgid "Pool state: potentially active" -msgstr "Stato pool: potenzialmente attivo" - -#: grub-core/fs/zfs/zfsinfo.c:306 -msgid "Pool name: unavailable" -msgstr "Nome pool: non disponibile" - -#: grub-core/fs/zfs/zfsinfo.c:308 -#, c-format -msgid "Pool name: %s\n" -msgstr "Nome pool: %s\n" - -#: grub-core/fs/zfs/zfsinfo.c:313 -msgid "Pool GUID: unavailable" -msgstr "GUID pool: non disponibile" - -#: grub-core/fs/zfs/zfsinfo.c:315 -#, c-format -msgid "Pool GUID: %016llx\n" -msgstr "GUID pool: %016llx\n" - -#: grub-core/fs/zfs/zfsinfo.c:320 -msgid "Unable to retrieve pool state" -msgstr "Impossibile recuperare lo stato del pool" - -#: grub-core/fs/zfs/zfsinfo.c:322 -msgid "Unrecognized pool state" -msgstr "Stato del pool non riconosciuto" - -#. TRANSLATORS: There are undetermined number of virtual devices -#. in a device tree, not just one. -#. -#: grub-core/fs/zfs/zfsinfo.c:332 -msgid "No virtual device tree available" -msgstr "Nessun albero di device virtuali disponibile" - -#: grub-core/fs/zfs/zfsinfo.c:431 -msgid "Print ZFS info about DEVICE." -msgstr "Stampa informazioni ZFS riguardo DEVICE" - -#: grub-core/fs/zfs/zfsinfo.c:433 -msgid "FILESYSTEM [VARIABLE]" -msgstr "FILESYSTEM [VARIABILE]" - -#: grub-core/fs/zfs/zfsinfo.c:434 -msgid "Print ZFS-BOOTFSOBJ or store it into VARIABLE" -msgstr "Stampa ZFS-BOOTFSOBJ o lo archivia in VARIABILE" - -#. TRANSLATORS: at this position GRUB waits for the user to do an action -#. in remote debugger, namely to tell it to establish connection. -#: grub-core/gdb/gdb.c:48 -msgid "Now connect the remote debugger, please." -msgstr "Collegare il debugger remoto." - -#. TRANSLATORS: GDB stub is a small part of -#. GDB functionality running on local host -#. which allows remote debugger to -#. connect to it. -#: grub-core/gdb/gdb.c:84 -msgid "Start GDB stub on given port" -msgstr "Avvia stub GDB sulla porta fornita" - -#. TRANSLATORS: this refers to triggering -#. a breakpoint so that the user will land -#. into GDB. -#: grub-core/gdb/gdb.c:89 -msgid "Break into GDB" -msgstr "Attiva breakpoint in GDB" - -#: grub-core/gdb/gdb.c:91 -msgid "Stop GDB stub" -msgstr "Ferma stub GDB" - -#: grub-core/gettext/gettext.c:85 -msgid "premature end of file" -msgstr "fine file prematura" - -# (ndt) suggerimenti per "translate" -#. TRANSLATORS: It refers to passing the string through gettext. -#. So it's "translate" in the same meaning as in what you're -#. doing now. -#. -#: grub-core/gettext/gettext.c:525 -msgid "Translates the string with the current settings." -msgstr "Traduce la stringa con le impostazioni attuali" - -#: grub-core/gfxmenu/gui_label.c:186 grub-core/normal/menu_text.c:184 -msgid "" -"Press enter to boot the selected OS, `e' to edit the commands before booting " -"or `c' for a command-line. ESC to return previous menu." -msgstr "" -"\"Invio\" avvia il sistema selezionato; \"e\" modifica i comandi; \"c\" va " -"alla riga di comando; \"Esc\" torna al menù precedente." - -#: grub-core/gfxmenu/gui_label.c:190 grub-core/normal/menu_text.c:192 -msgid "" -"Press enter to boot the selected OS, `e' to edit the commands before booting " -"or `c' for a command-line." -msgstr "" -"\"Invio\" avvia il sistema selezionato; \"e\" modifica i comandi; \"c\" va " -"alla riga di comando." - -#: grub-core/gfxmenu/gui_label.c:194 -msgid "enter: boot, `e': options, `c': cmd-line" -msgstr "Invio: avvia; \"e\": opzioni; \"c\": riga di comando" - -#: grub-core/gfxmenu/gui_progress_bar.c:339 grub-core/normal/menu_text.c:446 -#, c-format -msgid "The highlighted entry will be executed automatically in %ds." -msgstr "La voce selezionata verrà avviata automaticamente in %ds." - -#. TRANSLATORS: 's' stands for seconds. -#. It's a standalone timeout notification. -#. Please use the short form in your language. -#: grub-core/gfxmenu/gui_progress_bar.c:344 -#, c-format -msgid "%ds remaining." -msgstr "%ds rimanenti." - -#. TRANSLATORS: 's' stands for seconds. -#. It's a standalone timeout notification. -#. Please use the shortest form available in you language. -#: grub-core/gfxmenu/gui_progress_bar.c:349 grub-core/normal/menu_text.c:444 -#: grub-core/normal/menu_text.c:462 -#, c-format -msgid "%ds" -msgstr "%ds" - -#: grub-core/gfxmenu/view.c:103 -msgid "GRUB Boot Menu" -msgstr "Menù avvio GRUB" - -#: grub-core/hello/hello.c:36 -msgid "Hello World" -msgstr "Hello World" - -#: grub-core/hello/hello.c:45 -msgid "Say `Hello World'." -msgstr "Dice \"Hello World\"" - -#: grub-core/io/gzio.c:409 grub-core/kern/file.c:210 -msgid "attempt to seek outside of the file" -msgstr "tentativo di posizionamento al di fuori del file" - -#. TRANSLATORS: It's about given file having some strange format, not -#. complete lack of gzip support. -#: grub-core/io/gzio.c:1228 grub-core/io/gzio.c:1237 grub-core/io/gzio.c:1244 -msgid "unsupported gzip format" -msgstr "formato gzip non supportato" - -#: grub-core/io/lzopio.c:511 -msgid "lzop file corrupted" -msgstr "file lzop danneggiato" - -#: grub-core/io/xzio.c:278 -msgid "xz file corrupted or unsupported block options" -msgstr "file xz danneggiato o opzioni a livello di blocco non supportate" - -#: grub-core/kern/arm/dl.c:277 grub-core/kern/arm64/dl.c:44 -#: grub-core/kern/i386/dl.c:36 grub-core/kern/ia64/dl.c:41 -#: grub-core/kern/mips/dl.c:48 grub-core/kern/powerpc/dl.c:36 -#: grub-core/kern/riscv/dl.c:47 grub-core/kern/sparc64/dl.c:36 -#: grub-core/kern/x86_64/dl.c:36 grub-core/loader/i386/bsd.c:1445 -#: grub-core/loader/i386/bsdXX.c:49 grub-core/loader/ia64/efi/linux.c:341 -#: grub-core/loader/mips/linux.c:298 grub-core/loader/multiboot.c:232 -#: grub-core/loader/multiboot_elfxx.c:73 -#: grub-core/loader/powerpc/ieee1275/linux.c:294 -#: grub-core/loader/sparc64/ieee1275/linux.c:331 -msgid "invalid arch-dependent ELF magic" -msgstr "numero magic ELF basato sull'architettura non valido" - -#: grub-core/kern/corecmd.c:178 -msgid "[ENVVAR=VALUE]" -msgstr "[VARAMB=VALORE]" - -#: grub-core/kern/corecmd.c:179 -msgid "Set an environment variable." -msgstr "Imposta una variabile dell'ambiente" - -#: grub-core/kern/corecmd.c:183 -msgid "ENVVAR" -msgstr "VARAMB" - -#: grub-core/kern/corecmd.c:184 -msgid "Remove an environment variable." -msgstr "Rimuove una variabile dell'ambiente" - -#: grub-core/kern/corecmd.c:186 -msgid "[ARG]" -msgstr "[ARG]" - -#: grub-core/kern/corecmd.c:186 -msgid "List devices or files." -msgstr "Elenca device o file" - -#: grub-core/kern/corecmd.c:188 -msgid "Insert a module." -msgstr "Inserisce un modulo" - -#: grub-core/kern/disk.c:236 grub-core/net/net.c:1390 -#, c-format -msgid "disk `%s' not found" -msgstr "disco \"%s\" non trovato" - -#: grub-core/kern/disk_common.c:27 -msgid "attempt to read or write outside of partition" -msgstr "tentativo di leggere o scrivere al di fuori della partizione" - -#: grub-core/kern/dl.c:212 grub-core/kern/elf.c:61 grub-core/kern/elf.c:79 -#: grub-core/loader/i386/bsdXX.c:46 grub-core/loader/ia64/efi/linux.c:335 -#: grub-core/loader/multiboot_elfxx.c:69 -msgid "invalid arch-independent ELF magic" -msgstr "numero magico ELF indipendente dall'architettura non valido" - -#. TRANSLATORS: it refers to the lack of free slots. -#: grub-core/kern/emu/hostdisk.c:208 grub-core/kern/emu/hostdisk.c:466 -msgid "device count exceeds limit" -msgstr "il conteggio dei device supera il limite" - -#: grub-core/kern/emu/hostdisk.c:342 util/editenv.c:54 util/grub-editenv.c:197 -#: util/grub-fstest.c:191 util/grub-mkfont.c:796 util/misc.c:114 -#: util/misc.c:129 util/setup.c:788 -#, c-format -msgid "cannot write to `%s': %s" -msgstr "impossibile scrivere su \"%s\": %s" - -#. TRANSLATORS: Only one entry is ignored. However the suggestion -#. is to correct/delete the whole file. -#. device.map is a file indicating which -#. devices are available at boot time. Fedora populated it with -#. entries like (hd0,1) /dev/sda1 which would mean that every -#. partition is a separate disk for BIOS. Such entries were -#. inactive in GRUB due to its bug which is now gone. Without -#. this additional check these entries would be harmful now. -#. -#: grub-core/kern/emu/hostdisk.c:503 -#, c-format -msgid "" -"the device.map entry `%s' is invalid. Ignoring it. Please correct or delete " -"your device.map" -msgstr "" -"La voce \"%s\" di device.map non è valida, viene ignorata. Correggere o " -"eliminare device.map." - -#. TRANSLATORS: device.map is a filename. Not to be translated. -#. device.map specifies disk correspondance overrides. Previously -#. one could create any kind of device name with this. Due to -#. some problems we decided to limit it to just a handful -#. possibilities. -#: grub-core/kern/emu/hostdisk.c:555 -#, c-format -msgid "" -"the drive name `%s' in device.map is incorrect. Using %s instead. Please use " -"the form [hfc]d[0-9]* (E.g. `hd0' or `cd')" -msgstr "" -"Il nome \"%s\" dell'unità in device.map non è corretto, viene usato %s al " -"suo posto. Utilizzare la forma [hfc]d[0-9]* (es.: \"hd0\" o \"cd\")" - -#: grub-core/kern/emu/hostfs.c:76 grub-core/kern/emu/hostfs.c:109 -#, c-format -msgid "can't open `%s': %s" -msgstr "impossibile aprire \"%s\": %s" - -#: grub-core/kern/emu/main.c:99 util/grub-fstest.c:516 util/grub-mount.c:452 -msgid "DEVICE_NAME" -msgstr "NOME_DEVICE" - -#: grub-core/kern/emu/main.c:99 grub-core/loader/i386/bsd.c:136 -#: grub-core/loader/i386/bsd.c:169 util/grub-fstest.c:516 util/grub-mount.c:452 -msgid "Set root device." -msgstr "Imposta il device root" - -#. TRANSLATORS: There are many devices in device map. -#: grub-core/kern/emu/main.c:102 util/grub-probe.c:733 util/grub-setup.c:85 -#, c-format -msgid "use FILE as the device map [default=%s]" -msgstr "Usa FILE come mappa dei device [predefinito=%s]" - -#. TRANSLATORS: There are many devices in device map. -#: grub-core/kern/emu/main.c:105 -msgid "use FILE as memdisk" -msgstr "Usa FILE come memdisk" - -#: grub-core/kern/emu/main.c:107 util/grub-setup.c:83 -#, c-format -msgid "use GRUB files in the directory DIR [default=%s]" -msgstr "Usa i file GRUB nella directory DIR [predefinito=%s]" - -#: grub-core/kern/emu/main.c:108 include/grub/util/install.h:67 -#: util/grub-editenv.c:58 util/grub-fstest.c:525 util/grub-glue-efi.c:58 -#: util/grub-macbless.c:104 util/grub-mkfont.c:962 util/grub-mkimage.c:84 -#: util/grub-mklayout.c:56 util/grub-mount.c:458 util/grub-probe.c:735 -#: util/grub-render-label.c:74 util/grub-script-check.c:52 util/grub-setup.c:90 -#: util/grub-syslinux2cfg.c:78 -msgid "print verbose messages." -msgstr "Stampa messaggi prolissi" - -#: grub-core/kern/emu/main.c:109 grub-core/lib/gnulib/argp-parse.c:85 -msgid "SECS" -msgstr "SEC" - -#: grub-core/kern/emu/main.c:109 -msgid "wait until a debugger will attach" -msgstr "Attende fino al collegamento di un debugger" - -#: grub-core/kern/emu/main.c:171 util/grub-macbless.c:143 -#: util/grub-mkrelpath.c:61 util/grub-probe.c:874 util/grub-script-check.c:75 -#: util/grub-setup.c:203 -#, c-format -msgid "Unknown extra argument `%s'." -msgstr "Argomento aggiuntivo \"%s\" sconosciuto." - -#: grub-core/kern/emu/main.c:185 -msgid "GRUB emulator." -msgstr "Emulatore GRUB" - -#: grub-core/kern/emu/main.c:213 util/grub-editenv.c:262 -#: util/grub-glue-efi.c:110 util/grub-macbless.c:173 util/grub-mkfont.c:1177 -#: util/grub-mkimage.c:266 util/grub-mklayout.c:494 -#: util/grub-mkpasswd-pbkdf2.c:132 util/grub-mkrelpath.c:96 -#: util/grub-probe.c:863 util/grub-render-label.c:152 -#: util/grub-script-check.c:160 util/grub-setup.c:262 -#: util/grub-syslinux2cfg.c:163 -msgid "Error in parsing command line arguments\n" -msgstr "Errore nell'analizzare gli argomenti della riga di comando\n" - -#. TRANSLATORS: In this case GRUB tells user what he has to do. -#: grub-core/kern/emu/main.c:248 -#, c-format -msgid "Run `gdb %s %d', and set ARGS.HOLD to zero.\n" -msgstr "Eseguire \"gdb %s %d\" e impostare ARGS.HOLD a zero.\n" - -#: grub-core/kern/emu/misc.c:48 -#, c-format -msgid "%s: warning:" -msgstr "%s: avviso:" - -#: grub-core/kern/emu/misc.c:64 -#, c-format -msgid "%s: info:" -msgstr "%s: info:" - -#: grub-core/kern/emu/misc.c:79 util/grub-fstest.c:567 util/grub-fstest.c:576 -#: util/grub-mount.c:497 util/grub-mount.c:505 -#, c-format -msgid "%s: error:" -msgstr "%s: errore:" - -#: grub-core/kern/emu/misc.c:176 -#, c-format -msgid "file `%s' is too big" -msgstr "il file \"%s\" è troppo grande" - -#: grub-core/kern/fs.c:120 -msgid "unknown filesystem" -msgstr "file system sconosciuto" - -#: grub-core/kern/mips/arc/init.c:273 grub-core/kern/mips/loongson/init.c:301 -msgid "Shutdown failed" -msgstr "Arresto non riuscito" - -#: grub-core/kern/mips/arc/init.c:285 -msgid "Exit failed" -msgstr "Chiusura non riuscita" - -#: grub-core/kern/misc.c:351 grub-core/kern/misc.c:408 include/grub/misc.h:269 -#: include/grub/misc.h:278 -msgid "overflow is detected" -msgstr "rilevato overflow" - -#: grub-core/kern/partition.c:51 grub-core/partmap/bsdlabel.c:108 -#, c-format -msgid "Discarding improperly nested partition (%s,%s,%s%d)" -msgstr "Scartata partizione non correttamente annidata (%s,%s,%s%d)" - -#: grub-core/kern/rescue_parser.c:73 util/grub-editenv.c:292 -#, c-format -msgid "Unknown command `%s'.\n" -msgstr "Comando \"%s\" sconosciuto.\n" - -#: grub-core/lib/arg.c:31 -msgid "Display this help and exit." -msgstr "Visualizza questo aiuto ed esce" - -#: grub-core/lib/arg.c:33 -msgid "Display the usage of this command and exit." -msgstr "Visualizza l'uso di questo comando ed esce" - -#: grub-core/lib/arg.c:362 -#, c-format -msgid "missing mandatory option for `%s'" -msgstr "manca l'opzione obbligatoria per \"%s\"" - -#: grub-core/lib/arg.c:384 -#, c-format -msgid "the argument `%s' requires an integer" -msgstr "l'argomento \"%s\" richiede un intero" - -#: grub-core/lib/arg.c:407 -#, c-format -msgid "" -"a value was assigned to the argument `%s' while it doesn't require an " -"argument" -msgstr "" -"è stato assegnato un valore all'argomento \"%s\" benché non ne richieda uno" - -#: grub-core/lib/backtrace.c:64 -msgid "Print backtrace." -msgstr "Stampa backtrace" - -#: grub-core/lib/gnulib/argp-help.c:149 -#, c-format -msgid "ARGP_HELP_FMT: %s value is less than or equal to %s" -msgstr "ARGP_HELP_FMT: il valore %s è minore o uguale a %s" - -#: grub-core/lib/gnulib/argp-help.c:225 -#, c-format -msgid "%.*s: ARGP_HELP_FMT parameter requires a value" -msgstr "%.*s: il parametro ARGP_HELP_FMT richiede un valore" - -#: grub-core/lib/gnulib/argp-help.c:235 -#, c-format -msgid "%.*s: Unknown ARGP_HELP_FMT parameter" -msgstr "%.*s: parametro ARGP_HELP_FMT non conosciuto" - -#: grub-core/lib/gnulib/argp-help.c:248 -#, c-format -msgid "Garbage in ARGP_HELP_FMT: %s" -msgstr "Dati errati in ARGP_HELP_FMT: %s" - -#: grub-core/lib/gnulib/argp-help.c:1229 -msgid "" -"Mandatory or optional arguments to long options are also mandatory or " -"optional for any corresponding short options." -msgstr "" -"Argomenti obbligatori od opzionali per le opzioni lunghe lo sono anche per " -"le corrispondenti opzioni corte." - -#: grub-core/lib/gnulib/argp-help.c:1620 -msgid " or: " -msgstr " oppure: " - -#: grub-core/lib/gnulib/argp-help.c:1632 -msgid " [OPTION...]" -msgstr " [OPZIONE...]" - -#: grub-core/lib/gnulib/argp-help.c:1659 -#, c-format -msgid "Try '%s --help' or '%s --usage' for more information.\n" -msgstr "Provare \"%s --help\" o \"%s --usage\" per ulteriori informazioni.\n" - -#: grub-core/lib/gnulib/argp-help.c:1687 -#, c-format -msgid "Report bugs to %s.\n" -msgstr "Segnalare i bug a %s.\n" - -#: grub-core/lib/gnulib/argp-help.c:1888 grub-core/lib/gnulib/error.c:195 -msgid "Unknown system error" -msgstr "Errore di sistema sconosciuto" - -#: grub-core/lib/gnulib/argp-parse.c:81 -msgid "give this help list" -msgstr "Visualizza questo aiuto" - -#: grub-core/lib/gnulib/argp-parse.c:82 -msgid "give a short usage message" -msgstr "Visualizza un breve messaggio di aiuto" - -#: grub-core/lib/gnulib/argp-parse.c:83 util/grub-mkfont.c:946 -msgid "NAME" -msgstr "NOME" - -#: grub-core/lib/gnulib/argp-parse.c:84 -msgid "set the program name" -msgstr "Imposta il nome del programma" - -#: grub-core/lib/gnulib/argp-parse.c:86 -msgid "hang for SECS seconds (default 3600)" -msgstr "Si ferma per SEC secondi (predefinito 3600)" - -#: grub-core/lib/gnulib/argp-parse.c:143 -msgid "print program version" -msgstr "Stampa la versione del programma" - -#: grub-core/lib/gnulib/argp-parse.c:160 -msgid "(PROGRAM ERROR) No version known!?" -msgstr "(ERRORE DEL PROGRAMMA) Nessuna versione conosciuta." - -#: grub-core/lib/gnulib/argp-parse.c:613 -#, c-format -msgid "%s: Too many arguments\n" -msgstr "%s: troppi argomenti\n" - -#: grub-core/lib/gnulib/argp-parse.c:759 -msgid "(PROGRAM ERROR) Option should have been recognized!?" -msgstr "(ERRORE DEL PROGRAMMA) L'opzione dovrebbe essere stata riconosciuta." - -#: grub-core/lib/gnulib/getopt.c:278 -#, c-format -msgid "%s: option '%s%s' is ambiguous\n" -msgstr "%s: l'opzione \"%s%s\" è ambigua\n" - -#: grub-core/lib/gnulib/getopt.c:284 -#, c-format -msgid "%s: option '%s%s' is ambiguous; possibilities:" -msgstr "%s: l'opzione \"%s%s\" è ambigua; possibilità:" - -#: grub-core/lib/gnulib/getopt.c:319 -#, c-format -msgid "%s: unrecognized option '%s%s'\n" -msgstr "%s: opzione \"%s%s\" non riconosciuta\n" - -#: grub-core/lib/gnulib/getopt.c:345 -#, c-format -msgid "%s: option '%s%s' doesn't allow an argument\n" -msgstr "%s: l'opzione \"%s%s\" non accetta argomenti\n" - -#: grub-core/lib/gnulib/getopt.c:360 -#, c-format -msgid "%s: option '%s%s' requires an argument\n" -msgstr "%s: l'opzione \"%s%s\" richiede un argomento\n" - -#: grub-core/lib/gnulib/getopt.c:621 -#, c-format -msgid "%s: invalid option -- '%c'\n" -msgstr "%s: opzione non valida -- \"%c\"\n" - -#: grub-core/lib/gnulib/getopt.c:636 grub-core/lib/gnulib/getopt.c:682 -#, c-format -msgid "%s: option requires an argument -- '%c'\n" -msgstr "%s: l'opzione richiede un argomento -- \"%c\"\n" - -#: grub-core/lib/gnulib/openat-die.c:38 -#, c-format -msgid "unable to record current working directory" -msgstr "impossibile registrare la directory di lavoro attuale" - -#: grub-core/lib/gnulib/openat-die.c:57 -#, c-format -msgid "failed to return to initial working directory" -msgstr "ritorno alla directory di lavoro iniziale non riuscito" - -#: grub-core/lib/gnulib/regcomp.c:135 grub-core/osdep/aros/hostdisk.c:523 -msgid "Success" -msgstr "Successo" - -#: grub-core/lib/gnulib/regcomp.c:138 -msgid "No match" -msgstr "Nessuna corrispondenza" - -#: grub-core/lib/gnulib/regcomp.c:141 -msgid "Invalid regular expression" -msgstr "Espressione regolare non valida" - -#: grub-core/lib/gnulib/regcomp.c:144 -msgid "Invalid collation character" -msgstr "Carattere di collazione non valido" - -#: grub-core/lib/gnulib/regcomp.c:147 -msgid "Invalid character class name" -msgstr "Nome classe di caratteri non valido" - -#: grub-core/lib/gnulib/regcomp.c:150 -msgid "Trailing backslash" -msgstr "Backslash finale" - -#: grub-core/lib/gnulib/regcomp.c:153 -msgid "Invalid back reference" -msgstr "Riferimento all'indietro non valido" - -#: grub-core/lib/gnulib/regcomp.c:156 -msgid "Unmatched [, [^, [:, [., or [=" -msgstr "[, [^, [:, [. o [= senza corrispondenza" - -#: grub-core/lib/gnulib/regcomp.c:159 -msgid "Unmatched ( or \\(" -msgstr "( o \\( senza corrispondenza" - -#: grub-core/lib/gnulib/regcomp.c:162 -msgid "Unmatched \\{" -msgstr "\\{ senza corrispondenza" - -#: grub-core/lib/gnulib/regcomp.c:165 -msgid "Invalid content of \\{\\}" -msgstr "Contenuto di \\{\\} non valido" - -#: grub-core/lib/gnulib/regcomp.c:168 -msgid "Invalid range end" -msgstr "Limite massimo non valido" - -#: grub-core/lib/gnulib/regcomp.c:171 -msgid "Memory exhausted" -msgstr "Memoria esaurita" - -#: grub-core/lib/gnulib/regcomp.c:174 -msgid "Invalid preceding regular expression" -msgstr "Espressione regolare precedente non valida" - -#: grub-core/lib/gnulib/regcomp.c:177 -msgid "Premature end of regular expression" -msgstr "Fine prematura dell'espressione regolare" - -#: grub-core/lib/gnulib/regcomp.c:180 -msgid "Regular expression too big" -msgstr "Espressione regolare troppo grande" - -#: grub-core/lib/gnulib/regcomp.c:183 -msgid "Unmatched ) or \\)" -msgstr ") o \\) senza corrispondenza" - -#: grub-core/lib/gnulib/regcomp.c:531 -msgid "unknown regexp error" -msgstr "errore regexp sconosciuto" - -#: grub-core/lib/gnulib/regcomp.c:676 -msgid "No previous regular expression" -msgstr "Nessuna espressione regolare precedente" - -#: grub-core/lib/i386/halt.c:77 -msgid "GRUB doesn't know how to halt this machine yet!" -msgstr "GRUB non ha ancora informazioni su come spegnere questo computer." - -#: grub-core/lib/legacy_parse.c:75 -msgid "Default server is ${net_default_server}" -msgstr "Il server predefinito è ${net_default_server}" - -#: grub-core/lib/legacy_parse.c:844 grub-core/video/colors.c:296 -#: grub-core/video/colors.c:305 grub-core/video/colors.c:311 -#: grub-core/video/colors.c:327 util/render-label.c:84 util/render-label.c:98 -#, c-format -msgid "invalid color specification `%s'" -msgstr "specifica di colore \"%s\" non valida" - -#: grub-core/lib/mips/arc/reboot.c:32 grub-core/lib/mips/loongson/reboot.c:61 -msgid "Reboot failed" -msgstr "Riavvio non riuscito" - -#: grub-core/lib/random.c:113 -msgid "[LENGTH]" -msgstr "[LUNGHEZZA]" - -#: grub-core/lib/random.c:114 -msgid "Hexdump random data." -msgstr "Vista esadecimale di dati casuali" - -#: grub-core/loader/arm/linux.c:242 -msgid "device tree must be supplied (see `devicetree' command)" -msgstr "" -"deve essere fornito un device tree (consultare il comando \"devicetree\")" - -#: grub-core/loader/arm/linux.c:334 -msgid "invalid zImage" -msgstr "zImage non valida" - -#: grub-core/loader/arm/linux.c:450 grub-core/loader/efi/fdt.c:144 -msgid "invalid device tree" -msgstr "device tree non valido" - -#: grub-core/loader/arm/linux.c:493 grub-core/loader/arm64/linux.c:383 -#: grub-core/loader/i386/linux.c:1125 grub-core/loader/i386/pc/linux.c:479 -#: grub-core/loader/i386/xen.c:962 grub-core/loader/i386/xen.c:964 -#: grub-core/loader/ia64/efi/linux.c:591 grub-core/loader/mips/linux.c:501 -#: grub-core/loader/powerpc/ieee1275/linux.c:383 -#: grub-core/loader/riscv/linux.c:50 -#: grub-core/loader/sparc64/ieee1275/linux.c:511 -msgid "Load Linux." -msgstr "Carica Linux" - -#: grub-core/loader/arm/linux.c:495 grub-core/loader/arm64/linux.c:385 -#: grub-core/loader/i386/linux.c:1127 grub-core/loader/i386/pc/linux.c:482 -#: grub-core/loader/i386/xen.c:966 grub-core/loader/ia64/efi/linux.c:594 -#: grub-core/loader/mips/linux.c:503 -#: grub-core/loader/powerpc/ieee1275/linux.c:385 -#: grub-core/loader/riscv/linux.c:52 -#: grub-core/loader/sparc64/ieee1275/linux.c:513 -msgid "Load initrd." -msgstr "Carica initrd" - -#. TRANSLATORS: DTB stands for device tree blob. -#: grub-core/loader/arm/linux.c:498 grub-core/loader/efi/fdt.c:169 -msgid "Load DTB file." -msgstr "Carica file DTB" - -#: grub-core/loader/arm64/linux.c:59 -msgid "" -"plain image kernel not supported - rebuild with CONFIG_(U)EFI_STUB enabled" -msgstr "" -"Image normale del kernel non supportata: ricompilare con CONFIG_(U)EFI_STUB " -"abilitato" - -#: grub-core/loader/arm64/xen_boot.c:156 -msgid "failed to get FDT" -msgstr "Recupero FDT non riuscito" - -#: grub-core/loader/arm64/xen_boot.c:418 -msgid "you need to load the Xen Hypervisor first" -msgstr "è necessario caricare l'hypervisor Xen prima" - -#: grub-core/loader/arm64/xen_boot.c:516 -msgid "Load a xen hypervisor." -msgstr "Carica un hypervisor Xen" - -#: grub-core/loader/arm64/xen_boot.c:519 -msgid "Load a xen module." -msgstr "Carica un modulo Xen" - -#: grub-core/loader/efi/appleloader.c:231 -msgid "[OPTS]" -msgstr "[OPZIONI]" - -#. TRANSLATORS: This command is used on EFI to -#. switch to BIOS mode and boot the OS requiring -#. BIOS. -#: grub-core/loader/efi/appleloader.c:235 -msgid "Boot BIOS-based system." -msgstr "Avvia un sistema basato su BIOS" - -#: grub-core/loader/efi/chainloader.c:421 -#: grub-core/loader/i386/pc/chainloader.c:303 -msgid "Load another boot loader." -msgstr "Carica un altro boot loader" - -#: grub-core/loader/i386/bsd.c:103 -msgid "Display output on all consoles." -msgstr "Visualizza l'output su tutte le console" - -#: grub-core/loader/i386/bsd.c:104 grub-core/loader/i386/bsd.c:138 -#: grub-core/loader/i386/bsd.c:171 -msgid "Use serial console." -msgstr "Usa console seriale" - -#: grub-core/loader/i386/bsd.c:105 grub-core/loader/i386/bsd.c:131 -#: grub-core/loader/i386/bsd.c:159 -msgid "Ask for file name to reboot from." -msgstr "Chiede il nome del file da cui riavviare" - -#: grub-core/loader/i386/bsd.c:106 -msgid "Use CD-ROM as root." -msgstr "Usa CD-ROM come root" - -#: grub-core/loader/i386/bsd.c:107 -msgid "Invoke user configuration routing." -msgstr "Invoca il routing della configurazione utente" - -#: grub-core/loader/i386/bsd.c:108 grub-core/loader/i386/bsd.c:135 -#: grub-core/loader/i386/bsd.c:162 -msgid "Enter in KDB on boot." -msgstr "Entra in KDB all'avvio" - -#: grub-core/loader/i386/bsd.c:109 -msgid "Use GDB remote debugger instead of DDB." -msgstr "Usa il debugger remoto GDB al posto di DDB" - -#: grub-core/loader/i386/bsd.c:110 -msgid "Disable all boot output." -msgstr "Disabilita tutto l'output di avvio" - -#: grub-core/loader/i386/bsd.c:112 -msgid "Wait for keypress after every line of output." -msgstr "Attende la pressione di un tasto dopo ogni riga di output" - -#: grub-core/loader/i386/bsd.c:114 -msgid "Use compiled-in root device." -msgstr "Usa un device di root compilato internamente" - -#: grub-core/loader/i386/bsd.c:115 grub-core/loader/i386/bsd.c:134 -#: grub-core/loader/i386/bsd.c:165 -msgid "Boot into single mode." -msgstr "Avvia in modalità singolo utente" - -#: grub-core/loader/i386/bsd.c:116 grub-core/loader/i386/bsd.c:166 -msgid "Boot with verbose messages." -msgstr "Avvia con messaggi prolissi" - -#: grub-core/loader/i386/bsd.c:132 grub-core/loader/i386/bsd.c:160 -msgid "Don't reboot, just halt." -msgstr "Non riavvia, arresta solamente" - -#: grub-core/loader/i386/bsd.c:133 grub-core/loader/i386/bsd.c:161 -msgid "Change configured devices." -msgstr "Modifica i device configurati" - -#. TRANSLATORS: "com" is static and not to be translated. It refers to -#. serial ports e.g. com1. -#. -#: grub-core/loader/i386/bsd.c:142 -msgid "comUNIT[,SPEED]" -msgstr "comUNITÀ[,VELOCITÀ]" - -#: grub-core/loader/i386/bsd.c:157 -msgid "Disable SMP." -msgstr "Disabilita SMP" - -#: grub-core/loader/i386/bsd.c:158 -msgid "Disable ACPI." -msgstr "Disabilita ACPI" - -#: grub-core/loader/i386/bsd.c:164 -msgid "Don't display boot diagnostic messages." -msgstr "Non visualizza messaggi diagnostici di avvio" - -#: grub-core/loader/i386/bsd.c:167 -msgid "Boot with debug messages." -msgstr "Avvia con messaggi di debug" - -#: grub-core/loader/i386/bsd.c:168 -msgid "Suppress normal output (warnings remain)." -msgstr "Elimina l'output normale (gli avvisi restano)" - -#. TRANSLATORS: "com" is static and not to be translated. It refers to -#. serial ports e.g. com1. -#. -#: grub-core/loader/i386/bsd.c:175 -msgid "[ADDR|comUNIT][,SPEED]" -msgstr "[IND|comUNITÀ][,VELOCITÀ]" - -#: grub-core/loader/i386/bsd.c:489 grub-core/loader/i386/bsd.c:555 -msgid "name" -msgstr "nome" - -#: grub-core/loader/i386/bsd.c:489 grub-core/loader/i386/bsd.c:555 -msgid "type" -msgstr "tipo" - -#: grub-core/loader/i386/bsd.c:489 grub-core/loader/i386/bsd.c:555 -msgid "addr" -msgstr "ind" - -#: grub-core/loader/i386/bsd.c:490 grub-core/loader/i386/bsd.c:556 -msgid "size" -msgstr "dim" - -#: grub-core/loader/i386/bsd.c:1147 grub-core/loader/i386/linux.c:466 -#: grub-core/loader/i386/xnu.c:1030 -msgid "Booting in blind mode" -msgstr "Avvia in modalità blind" - -#: grub-core/loader/i386/bsd.c:2137 -msgid "Load kernel of FreeBSD." -msgstr "Carica il kernel FreeBSD" - -#: grub-core/loader/i386/bsd.c:2140 -msgid "Load kernel of OpenBSD." -msgstr "Carica il kernel OpenBSD" - -#: grub-core/loader/i386/bsd.c:2143 -msgid "Load kernel of NetBSD." -msgstr "Carica il kernel NetBSD" - -#: grub-core/loader/i386/bsd.c:2147 -msgid "Load FreeBSD env." -msgstr "Carica ambiente FreeBSD" - -#: grub-core/loader/i386/bsd.c:2150 -msgid "Load FreeBSD kernel module." -msgstr "Carica un modulo del kernel FreeBSD" - -#: grub-core/loader/i386/bsd.c:2153 -msgid "Load NetBSD kernel module." -msgstr "Carica un modulo del kernel NetBSD" - -#: grub-core/loader/i386/bsd.c:2156 -msgid "Load NetBSD kernel module (ELF)." -msgstr "Carica un modulo del kernel NetBSD (ELF)" - -#: grub-core/loader/i386/bsd.c:2159 -msgid "Load FreeBSD kernel module (ELF)." -msgstr "Carica un modulo del kernel FreeBSD (ELF)" - -#. TRANSLATORS: ramdisk isn't identifier, -#. it can be translated. -#: grub-core/loader/i386/bsd.c:2165 -msgid "Load kOpenBSD ramdisk." -msgstr "Carica ramdisk kOpenBSD" - -#. TRANSLATORS: "payload" is a term used -#. by coreboot and must be translated in -#. sync with coreboot. If unsure, -#. let it untranslated. -#: grub-core/loader/i386/coreboot/chainloader.c:510 -msgid "Load another coreboot payload" -msgstr "Carica un altro payload coreboot" - -#: grub-core/loader/i386/linux.c:876 -msgid "Legacy `ask' parameter no longer supported." -msgstr "Parametro legacy \"ask\" non più supportato." - -#: grub-core/loader/i386/linux.c:892 grub-core/loader/i386/linux.c:902 -#: grub-core/loader/i386/linux.c:932 -#, c-format -msgid "%s is deprecated. Use set gfxpayload=%s before linux command instead.\n" -msgstr "%s è deprecata, utilizzare \"set gfxpayload=%s\" prima del comando.\n" - -#. TRANSLATORS: "x" has to be entered in, like an identifier, -#. so please don't use better Unicode codepoints. -#: grub-core/loader/i386/linux.c:915 -#, c-format -msgid "" -"%s is deprecated. VGA mode %d isn't recognized. Use set " -"gfxpayload=WIDTHxHEIGHT[xDEPTH] before linux command instead.\n" -msgstr "" -"%s è deprecata, la modalità VGA %d non è riconosciuta, usare \"set " -"gfxpayload=LARGHEZZAxALTEZZA[xPROFONDITÀ] prima del comando.\n" - -#: grub-core/loader/i386/pc/chainloader.c:302 -msgid "[--force|--bpb] FILE" -msgstr "[--force|--bpb] FILE" - -#: grub-core/loader/i386/pc/freedos.c:148 util/setup.c:293 -#, c-format -msgid "the size of `%s' is too large" -msgstr "La dimensione di \"%s\" è troppo grande" - -#: grub-core/loader/i386/pc/freedos.c:183 -msgid "Load FreeDOS kernel.sys." -msgstr "Carica kernel.sys di FreeDOS" - -#: grub-core/loader/i386/pc/ntldr.c:155 -msgid "Load NTLDR or BootMGR." -msgstr "Carica NTLDR o BootMGR" - -#. TRANSLATORS: it's about guessing which GRUB disk -#. is which Plan9 disk. If your language has no -#. word "mapping" you can use another word which -#. means that the GRUBDEVICE and PLAN9DEVICE are -#. actually the same device, just named differently -#. in OS and GRUB. -#: grub-core/loader/i386/pc/plan9.c:59 -msgid "Override guessed mapping of Plan9 devices." -msgstr "Scavalca la mappatura ipotizzata dei device Plan9" - -#: grub-core/loader/i386/pc/plan9.c:60 -msgid "GRUBDEVICE=PLAN9DEVICE" -msgstr "GRUBDEVICE=PLAN9DEVICE" - -#: grub-core/loader/i386/pc/plan9.c:599 -msgid "KERNEL ARGS" -msgstr "KERNEL ARG" - -#: grub-core/loader/i386/pc/plan9.c:599 -msgid "Load Plan9 kernel." -msgstr "Carica kernel Plan9" - -#: grub-core/loader/i386/pc/pxechainloader.c:161 -msgid "Load a PXE image." -msgstr "Carica un'immagine PXE" - -#: grub-core/loader/i386/pc/truecrypt.c:226 -msgid "Load Truecrypt ISO." -msgstr "Carica ISO Truecrypt" - -#: grub-core/loader/i386/xen.c:781 grub-core/loader/i386/xen.c:865 -msgid "initrd already loaded" -msgstr "initrd già caricato" - -#: grub-core/loader/i386/xen.c:968 -msgid "Load module." -msgstr "Carica un modulo" - -#: grub-core/loader/i386/xnu.c:1003 -msgid "Press any key to launch xnu" -msgstr "Premere un tasto per lanciare xnu" - -#. TRANSLATORS: `device-properties' -#. is a variable name, -#. not a program. -#: grub-core/loader/i386/xnu.c:1159 -msgid "Load `device-properties' dump." -msgstr "Carica il dump \"device-properties\"" - -#: grub-core/loader/ia64/efi/linux.c:124 -msgid "Could not locate FPSWA driver" -msgstr "Impossibile trovare il driver FPSWA" - -#: grub-core/loader/ia64/efi/linux.c:132 -msgid "FPSWA protocol wasn't able to find the interface" -msgstr "Il protocollo FPSWA non è stato in grado di trovare l'interfaccia" - -#: grub-core/loader/ia64/efi/linux.c:580 -msgid "No FPSWA found" -msgstr "Nessun FPWSA trovato" - -#: grub-core/loader/ia64/efi/linux.c:582 -#, c-format -msgid "FPSWA revision: %x\n" -msgstr "Revisione FPSWA: %x\n" - -#: grub-core/loader/ia64/efi/linux.c:591 -msgid "FILE [ARGS...]" -msgstr "FILE [ARG ...]" - -#: grub-core/loader/ia64/efi/linux.c:597 -msgid "Display FPSWA version." -msgstr "Visualizza la versione FPSWA" - -#: grub-core/loader/multiboot.c:248 -msgid "WARNING: no console will be available to OS" -msgstr "ATTENZIONE: nessuna console sarà disponibile per il sistema" - -#: grub-core/loader/multiboot.c:450 -msgid "Load a multiboot 2 kernel." -msgstr "Carica un kernel multiboot 2" - -#: grub-core/loader/multiboot.c:453 -msgid "Load a multiboot 2 module." -msgstr "Carica un modulo multiboot 2" - -#: grub-core/loader/multiboot.c:456 -msgid "Load a multiboot kernel." -msgstr "Carica un kernel multiboot" - -#: grub-core/loader/multiboot.c:459 -msgid "Load a multiboot module." -msgstr "Carica un modulo multiboot" - -#: grub-core/loader/riscv/linux.c:30 grub-core/loader/riscv/linux.c:40 -msgid "Linux not supported yet" -msgstr "Linux non è ancora supportato" - -#: grub-core/loader/xnu.c:1416 grub-core/term/gfxterm_background.c:45 -msgid "Background image mode." -msgstr "Modalità immagine di sfondo" - -#. TRANSLATORS: This refers to background image mode (stretched or -#. in left-top corner). Note that GRUB will accept only original -#. keywords stretch and normal, not the translated ones. -#. So please put both in translation -#. e.g. stretch(=%STRETCH%)|normal(=%NORMAL%). -#. The percents mark the translated version. Since many people -#. may not know the word stretch or normal I recommend -#. putting the translation either here or in "Background image mode." -#. string. -#: grub-core/loader/xnu.c:1416 grub-core/term/gfxterm_background.c:55 -msgid "stretch|normal" -msgstr "stretch|normal" - -#: grub-core/loader/xnu.c:1482 -msgid "Load XNU image." -msgstr "Carica un'immagine XNU" - -#: grub-core/loader/xnu.c:1484 -msgid "Load 64-bit XNU image." -msgstr "Carica un'immagine XNU 64-bit" - -#: grub-core/loader/xnu.c:1486 -msgid "Load XNU extension package." -msgstr "Carica un pacchetto estensione XNU" - -#: grub-core/loader/xnu.c:1488 -msgid "Load XNU extension." -msgstr "Carica un'estensione XNU" - -# (ndt) quella cosa tra quadre sembra essere un qualche cosa di specifico da Mac/OS X -#. TRANSLATORS: OSBundleRequired is a -#. variable name in xnu extensions -#. manifests. It behaves mostly like -#. GNU/Linux runlevels. -#. -#: grub-core/loader/xnu.c:1495 -msgid "DIRECTORY [OSBundleRequired]" -msgstr "DIRECTORY [OSBundleRequired]" - -#. TRANSLATORS: There are many extensions -#. in extension directory. -#: grub-core/loader/xnu.c:1498 -msgid "Load XNU extension directory." -msgstr "Carica una directory d'estensione XNU" - -#. TRANSLATORS: ramdisk here isn't identifier. It can be translated. -#: grub-core/loader/xnu.c:1501 -msgid "Load XNU ramdisk. It will be available in OS as md0." -msgstr "Carica un ramdisk XNU, sarà disponibile nel sistema come md0" - -#: grub-core/loader/xnu.c:1505 -msgid "Load a splash image for XNU." -msgstr "Carica un'immagine splash per XNU" - -#: grub-core/loader/xnu.c:1510 -msgid "Load an image of hibernated XNU." -msgstr "Carica un'immagine XNU ibernata" - -#: grub-core/mmap/mmap.c:538 -msgid "ADDR1,MASK1[,ADDR2,MASK2[,...]]" -msgstr "IND1,MASCHERA1[,IND2,MASCHERA2[,...]]" - -#: grub-core/mmap/mmap.c:539 -msgid "Declare memory regions as faulty (badram)." -msgstr "Dichiara regioni della memoria come danneggiate (badram)" - -#: grub-core/mmap/mmap.c:541 -msgid "FROM[K|M|G] TO[K|M|G]" -msgstr "DA[K|M|G] A[K|M|G]" - -#: grub-core/mmap/mmap.c:542 -msgid "Remove any memory regions in specified range." -msgstr "Rimuove qualsiasi regione della memoria nell'intervallo specificato" - -#: grub-core/net/bootp.c:653 -msgid "four arguments expected" -msgstr "attesi quattro argomenti" - -#: grub-core/net/bootp.c:661 grub-core/net/net.c:1155 -#, c-format -msgid "unrecognised network interface `%s'" -msgstr "interfaccia di rete \"%s\" non riconosciuta" - -#: grub-core/net/bootp.c:664 -msgid "no DHCP info found" -msgstr "nessuna informazione DHCP trovata" - -#: grub-core/net/bootp.c:674 -msgid "no DHCP options found" -msgstr "nessuna opzione DHCP trovata" - -#: grub-core/net/bootp.c:682 -msgid "invalid DHCP option code" -msgstr "codice opzione DHCP non valido" - -#: grub-core/net/bootp.c:686 -#, c-format -msgid "no DHCP option %u found" -msgstr "nessuna opzione DHCP %u trovata" - -#: grub-core/net/bootp.c:743 -#, c-format -msgid "unrecognised DHCP option format specification `%s'" -msgstr "specificazione di formato DHCP \"%s\" non riconosciuta" - -#: grub-core/net/bootp.c:767 -msgid "no network card found" -msgstr "nessuna scheda di rete trovata" - -#: grub-core/net/bootp.c:859 grub-core/net/net.c:389 -#, c-format -msgid "couldn't autoconfigure %s" -msgstr "impossibile configurare automaticamente %s" - -#: grub-core/net/bootp.c:873 grub-core/net/bootp.c:876 -msgid "[CARD]" -msgstr "[SCHEDA]" - -#: grub-core/net/bootp.c:874 -msgid "perform a bootp autoconfiguration" -msgstr "Esegue una configurazione automatica bootp" - -#: grub-core/net/bootp.c:877 -msgid "perform a DHCP autoconfiguration" -msgstr "Esegue una configurazione automatica DHCP" - -#: grub-core/net/bootp.c:879 -msgid "VAR INTERFACE NUMBER DESCRIPTION" -msgstr "VAR INTERFACCIA NUMERO DESCRIZIONE" - -#: grub-core/net/bootp.c:880 -msgid "" -"retrieve DHCP option and save it into VAR. If VAR is - then print the value." -msgstr "" -"Recupera l'opzione DHCP e la salva in VAR, se VAR è - allora stampa il valore" - -#: grub-core/net/dns.c:459 -msgid "no DNS servers configured" -msgstr "nessun server DNS configurato" - -#: grub-core/net/dns.c:522 -msgid "domain name component is too long" -msgstr "il nome del dominio è troppo lungo" - -#: grub-core/net/dns.c:618 grub-core/net/dns.c:666 -msgid "no DNS record found" -msgstr "nessun record DNS trovato" - -#: grub-core/net/dns.c:626 -msgid "no DNS reply received" -msgstr "nessuna risposta DNS ricevuta" - -#: grub-core/net/dns.c:682 -msgid "only ipv4" -msgstr "solo ipv4" - -#: grub-core/net/dns.c:686 -msgid "only ipv6" -msgstr "solo ipv6" - -#: grub-core/net/dns.c:690 -msgid "prefer ipv4" -msgstr "preferire ipv4" - -#: grub-core/net/dns.c:694 -msgid "prefer ipv6" -msgstr "preferire ipv6" - -#: grub-core/net/dns.c:759 -msgid "ADDRESS DNSSERVER" -msgstr "IND SERVERDNS" - -#: grub-core/net/dns.c:760 -msgid "Perform a DNS lookup" -msgstr "Esegue un lookup DNS" - -#: grub-core/net/dns.c:762 grub-core/net/dns.c:765 -msgid "DNSSERVER" -msgstr "SERVERDNS" - -#: grub-core/net/dns.c:763 -msgid "Add a DNS server" -msgstr "Aggiunge un server DNS" - -#: grub-core/net/dns.c:766 -msgid "Remove a DNS server" -msgstr "Rimuove un server DNS" - -#: grub-core/net/dns.c:768 -msgid "List DNS servers" -msgstr "Elenca server DNS" - -#: grub-core/net/drivers/efi/efinet.c:49 grub-core/net/drivers/efi/efinet.c:65 -#: grub-core/net/drivers/efi/efinet.c:77 grub-core/net/drivers/emu/emunet.c:62 -#: grub-core/net/drivers/i386/pc/pxe.c:273 -#: grub-core/net/drivers/ieee1275/ofnet.c:75 -#: grub-core/net/drivers/uboot/ubootnet.c:62 -msgid "couldn't send network packet" -msgstr "impossibile inviare pacchetto di rete" - -#: grub-core/net/drivers/ieee1275/ofnet.c:326 -#: grub-core/net/drivers/ieee1275/ofnet.c:359 -msgid "interpret is not supported" -msgstr "interpret non è supportato" - -#: grub-core/net/drivers/ieee1275/ofnet.c:336 -msgid "alloc-mem failed" -msgstr "alloc-mem non riuscita" - -#: grub-core/net/drivers/ieee1275/ofnet.c:370 -msgid "free-mem failed" -msgstr "free-mem non riuscita" - -#: grub-core/net/http.c:105 -msgid "unsupported HTTP response" -msgstr "risposta HTTP non supportata" - -#. TRANSLATORS: GRUB HTTP code is pretty young. So even perfectly -#. valid answers like 403 will trigger this very generic message. -#: grub-core/net/http.c:126 -#, c-format -msgid "unsupported HTTP error %d: %s" -msgstr "errore HTTP %d non supportato: %s" - -#: grub-core/net/http.c:429 grub-core/net/tftp.c:420 -#, c-format -msgid "time out opening `%s'" -msgstr "tempo scaduto nell'aprire \"%s\"" - -#: grub-core/net/net.c:179 -msgid "timeout: could not resolve hardware address" -msgstr "tempo scaduto: impossibile risolvere l'indirizzo hardware" - -#: grub-core/net/net.c:548 -#, c-format -msgid "unresolvable address %s" -msgstr "indirizzo %s non risolvibile" - -#: grub-core/net/net.c:594 -#, c-format -msgid "unrecognised network address `%s'" -msgstr "indirizzo di rete \"%s\" non riconosciuto" - -#: grub-core/net/net.c:661 -msgid "destination unreachable" -msgstr "destinazione non raggiungibile" - -#. TRANSLATORS: route loop is a condition when e.g. -#. to contact server A you need to go through B -#. and to contact B you need to go through A. -#: grub-core/net/net.c:684 -msgid "route loop detected" -msgstr "rilevato ciclo nella rotta" - -#: grub-core/net/net.c:700 -msgid "address not found" -msgstr "indirizzo non trovato" - -#: grub-core/net/net.c:704 -msgid "you can't delete this address" -msgstr "impossibile eliminare questo indirizzo" - -#: grub-core/net/net.c:776 grub-core/net/net.c:792 -#, c-format -msgid "Unsupported hw address type %d\n" -msgstr "Tipo d'indirizzo hardware %d non supportato\n" - -#: grub-core/net/net.c:813 -#, c-format -msgid "Unsupported address type %d\n" -msgstr "Tipo d'indirizzo %d non supportato\n" - -#: grub-core/net/net.c:1017 grub-core/net/net.c:1131 -msgid "three arguments expected" -msgstr "attesi tre argomenti" - -#: grub-core/net/net.c:1023 -msgid "card not found" -msgstr "scheda non trovata" - -#. TRANSLATORS: it refers to the network address. -#: grub-core/net/net.c:1167 -msgid "temporary" -msgstr "temporaneo" - -#: grub-core/net/net.c:1190 -#, c-format -msgid "Unknown address type %d\n" -msgstr "Tipo d'indirizzo %d sconosciuto\n" - -#: grub-core/net/net.c:1298 -msgid "no server is specified" -msgstr "nessun server specificato" - -#: grub-core/net/net.c:1637 -#, c-format -msgid "timeout reading `%s'" -msgstr "tempo scaduto nel leggere \"%s\"" - -#. TRANSLATORS: HWADDRESS stands for -#. "hardware address". -#: grub-core/net/net.c:1762 -msgid "SHORTNAME CARD ADDRESS [HWADDRESS]" -msgstr "NOMEBREVE SCHEDA INDIRIZZO [INDIRIZZOHW]" - -#: grub-core/net/net.c:1763 -msgid "Add a network address." -msgstr "Aggiunge un indirizzo di rete" - -#: grub-core/net/net.c:1766 -msgid "[CARD [HWADDRESS]]" -msgstr "[SCHEDA [INDIRIZZOHW]]" - -#: grub-core/net/net.c:1767 -msgid "Perform an IPV6 autoconfiguration" -msgstr "Esegue una configurazione automatica IPV6" - -#: grub-core/net/net.c:1770 grub-core/net/net.c:1777 -msgid "SHORTNAME" -msgstr "NOMEBREVE" - -#: grub-core/net/net.c:1771 -msgid "Delete a network address." -msgstr "Elimina un indirizzo di rete" - -#. TRANSLATORS: "gw" is a keyword. -#: grub-core/net/net.c:1774 -msgid "SHORTNAME NET [INTERFACE| gw GATEWAY]" -msgstr "NOMEBREVE RETE [INTERFACCIA| gw GATEWAY]" - -#: grub-core/net/net.c:1775 -msgid "Add a network route." -msgstr "Aggiunge una rotta di rete" - -#: grub-core/net/net.c:1778 -msgid "Delete a network route." -msgstr "Elimina una rotta di rete" - -#: grub-core/net/net.c:1780 -msgid "list network routes" -msgstr "Elenca le rotte" - -#: grub-core/net/net.c:1782 -msgid "list network cards" -msgstr "Elenca le schede di rete" - -#: grub-core/net/net.c:1784 -msgid "list network addresses" -msgstr "Elenca gli indirizzi di rete" - -#: grub-core/net/tcp.c:681 -msgid "connection refused" -msgstr "connessione rifiutata" - -#: grub-core/net/tcp.c:684 -msgid "connection timeout" -msgstr "connessione scaduta" - -#: grub-core/normal/auth.c:220 -msgid "Enter username: " -msgstr "Inserire il nome utente: " - -#: grub-core/normal/auth.c:269 -msgid "[USERLIST]" -msgstr "[ELENCOUTENTI]" - -#: grub-core/normal/auth.c:270 -msgid "Check whether user is in USERLIST." -msgstr "Verifica che l'utente sia in ELENCOUTENTI" - -#: grub-core/normal/cmdline.c:174 grub-core/normal/menu_entry.c:1068 -msgid "Possible commands are:" -msgstr "Possibili comandi sono:" - -#: grub-core/normal/cmdline.c:177 grub-core/normal/menu_entry.c:1072 -msgid "Possible devices are:" -msgstr "Possibili device sono:" - -#: grub-core/normal/cmdline.c:180 grub-core/normal/menu_entry.c:1076 -msgid "Possible files are:" -msgstr "Possibili file sono:" - -#: grub-core/normal/cmdline.c:183 grub-core/normal/menu_entry.c:1080 -msgid "Possible partitions are:" -msgstr "Possibili partizioni sono:" - -#: grub-core/normal/cmdline.c:186 grub-core/normal/menu_entry.c:1084 -msgid "Possible arguments are:" -msgstr "Possibili argomenti sono:" - -# (ndt) interessante... -#. TRANSLATORS: this message is used if none of above matches. -#. This shouldn't happen but please use the general term for -#. "thing" or "object". -#: grub-core/normal/cmdline.c:192 grub-core/normal/menu_entry.c:1088 -msgid "Possible things are:" -msgstr "Possibili cose sono:" - -#: grub-core/normal/color.c:81 -#, c-format -msgid "Warning: syntax error (missing slash) in `%s'\n" -msgstr "Attenzione: errore di sintassi (manca \"/\") in \"%s\"\n" - -#: grub-core/normal/color.c:90 -#, c-format -msgid "Warning: invalid foreground color `%s'\n" -msgstr "Attenzione: colore di primo piano \"%s\" non valido\n" - -#: grub-core/normal/color.c:96 -#, c-format -msgid "Warning: invalid background color `%s'\n" -msgstr "Attenzione: colore di sfondo \"%s\" non valido\n" - -#: grub-core/normal/context.c:206 -msgid "ENVVAR [ENVVAR] ..." -msgstr "VARAMB [VARAMB] ..." - -#: grub-core/normal/context.c:207 -msgid "Export variables." -msgstr "Esporta le variabili" - -#: grub-core/normal/datetime.c:25 -msgid "Sunday" -msgstr "domenica" - -#: grub-core/normal/datetime.c:26 -msgid "Monday" -msgstr "lunedì" - -#: grub-core/normal/datetime.c:27 -msgid "Tuesday" -msgstr "martedì" - -#: grub-core/normal/datetime.c:28 -msgid "Wednesday" -msgstr "mercoledì" - -#: grub-core/normal/datetime.c:29 -msgid "Thursday" -msgstr "giovedì" - -#: grub-core/normal/datetime.c:30 -msgid "Friday" -msgstr "venerdì" - -#: grub-core/normal/datetime.c:31 -msgid "Saturday" -msgstr "sabato" - -#: grub-core/normal/dyncmd.c:187 -msgid "module isn't loaded" -msgstr "modulo non caricato" - -#: grub-core/normal/main.c:211 -#, c-format -msgid "GNU GRUB version %s" -msgstr "GNU GRUB versione %s" - -#: grub-core/normal/main.c:360 -msgid "ESC at any time exits." -msgstr "ESC esce in qualsiasi momento." - -#: grub-core/normal/main.c:363 -#, c-format -msgid "" -"Minimal BASH-like line editing is supported. For the first word, TAB lists " -"possible command completions. Anywhere else TAB lists possible device or " -"file completions. %s" -msgstr "" -"Supporto minimale per modifica in stile BASH. Per la prima parola, TAB " -"elenca i completamenti del comando. In altre parti elenca i completamenti " -"possibili per device o file. %s" - -#. TRANSLATORS: it's command line prompt. -#: grub-core/normal/main.c:395 -msgid ">" -msgstr ">" - -#. TRANSLATORS: it's command line prompt. -#: grub-core/normal/main.c:398 -msgid "grub>" -msgstr "grub>" - -#: grub-core/normal/main.c:518 -msgid "Clear the screen." -msgstr "Pulisce lo schermo" - -#: grub-core/normal/main.c:527 -msgid "Enter normal mode." -msgstr "Entra nella modalità normale" - -#: grub-core/normal/main.c:529 -msgid "Exit from normal mode." -msgstr "Esce dalla modalità normale" - -#: grub-core/normal/menu.c:66 grub-core/normal/menu_entry.c:1449 -msgid "Press any key to continue..." -msgstr "Premere un tasto per continuare..." - -#: grub-core/normal/menu.c:815 -#, c-format -msgid "Booting `%s'" -msgstr "Avvio di \"%s\" in corso" - -# (ndt) qualche cosa di meglio... -#: grub-core/normal/menu.c:827 -#, c-format -msgid "Falling back to `%s'" -msgstr "Viene usato \"%s\" come ripiego" - -#: grub-core/normal/menu.c:843 -msgid "Failed to boot both default and fallback entries.\n" -msgstr "Caricamento delle voci predefinita e di ripiego non riuscito.\n" - -#: grub-core/normal/menu_entry.c:1171 -msgid "Booting a command list" -msgstr "Avvio di un elenco di comandi" - -#: grub-core/normal/menu_text.c:160 -msgid "" -"Minimum Emacs-like screen editing is supported. TAB lists completions. Press " -"Ctrl-x or F10 to boot, Ctrl-c or F2 for a command-line or ESC to discard " -"edits and return to the GRUB menu." -msgstr "" -"Supporto minimale per modifica in stile Emacs. TAB elenca i completamenti. " -"Premere Ctrl-x o F10 per avviare, Ctrl-c o F2 per la riga di comando, Esc " -"per annullare le modifiche e tornare al menù." - -#: grub-core/normal/menu_text.c:170 -#, c-format -msgid "Use the %C and %C keys to select which entry is highlighted." -msgstr "Usare i tasti %C e %C per selezionare la voce da evidenziare." - -#. TRANSLATORS: that's the list of binary unit prefixes. -#: grub-core/normal/misc.c:38 -msgid "B" -msgstr "B" - -#: grub-core/normal/misc.c:38 -msgid "KiB" -msgstr "KiB" - -#: grub-core/normal/misc.c:38 -msgid "MiB" -msgstr "MiB" - -#: grub-core/normal/misc.c:38 -msgid "GiB" -msgstr "GiB" - -#: grub-core/normal/misc.c:38 -msgid "TiB" -msgstr "TiB" - -#: grub-core/normal/misc.c:38 -msgid "PiB" -msgstr "PiB" - -#. TRANSLATORS: that's the list of binary unit prefixes. -#: grub-core/normal/misc.c:40 -msgid "K" -msgstr "K" - -#: grub-core/normal/misc.c:40 -msgid "M" -msgstr "M" - -#: grub-core/normal/misc.c:40 -msgid "G" -msgstr "G" - -#: grub-core/normal/misc.c:40 -msgid "T" -msgstr "T" - -#: grub-core/normal/misc.c:40 -msgid "P" -msgstr "P" - -#. TRANSLATORS: that's the list of binary unit prefixes. -#: grub-core/normal/misc.c:42 -msgid "B/s" -msgstr "B/s" - -#: grub-core/normal/misc.c:42 -msgid "KiB/s" -msgstr "KiB/s" - -#: grub-core/normal/misc.c:42 -msgid "MiB/s" -msgstr "MiB/s" - -#: grub-core/normal/misc.c:42 -msgid "GiB/s" -msgstr "GiB/s" - -#: grub-core/normal/misc.c:42 -msgid "TiB/s" -msgstr "TiB/s" - -#: grub-core/normal/misc.c:42 -msgid "PiB/s" -msgstr "PiB/s" - -#: grub-core/normal/misc.c:96 -#, c-format -msgid "Partition %s:" -msgstr "Partizione %s:" - -#: grub-core/normal/misc.c:101 -#, c-format -msgid "Device %s:" -msgstr "Device %s:" - -#: grub-core/normal/misc.c:107 -msgid "Filesystem cannot be accessed" -msgstr "Impossibile accedere al file system" - -#: grub-core/normal/misc.c:121 -#, c-format -msgid "Filesystem type %s" -msgstr "File system di tipo %s" - -#: grub-core/normal/misc.c:131 -#, c-format -msgid "- Label `%s'" -msgstr "- Etichetta \"%s\"" - -# (ndt) lasiato il trattino: la data è nel formato YYYY-MM-DD, l'ultimo è il giorno della settimana -#. TRANSLATORS: Arguments are year, month, day, hour, minute, -#. second, day of the week (translated). -#: grub-core/normal/misc.c:148 -#, c-format -msgid "- Last modification time %d-%02d-%02d %02d:%02d:%02d %s" -msgstr "- Ultima modifica %d-%02d-%02d %02d.%02d.%02d %s" - -#: grub-core/normal/misc.c:171 -msgid "No known filesystem detected" -msgstr "Nessun file system conosciuto rilevato" - -#: grub-core/normal/misc.c:174 -#, c-format -msgid " - Partition start at %llu%sKiB" -msgstr " - La partizione inizia a %llu%sKiB" - -#: grub-core/normal/misc.c:178 -#, c-format -msgid " - Sector size %uB" -msgstr " - Dimensione settore %uB" - -#: grub-core/normal/misc.c:180 -msgid " - Total size unknown" -msgstr " - Dimensione totale sconosciuta" - -#: grub-core/normal/misc.c:182 -#, c-format -msgid " - Total size %llu%sKiB" -msgstr " - Dimensione totale %llu%sKiB" - -#. TRANSLATORS: Replace dot with appropriate decimal separator for -#. your language. -#: grub-core/normal/misc.c:186 -msgid ".5" -msgstr ",5" - -#. TRANSLATORS: This has to fit on one line. It's ok to include few -#. words but don't write poems. -#: grub-core/normal/term.c:82 -msgid "--MORE--" -msgstr "--ALTRO--" - -#: grub-core/osdep/aros/config.c:92 grub-core/osdep/unix/config.c:137 -#: grub-core/osdep/windows/config.c:55 -#, c-format -msgid "cannot open configuration file `%s': %s" -msgstr "impossibile aprire il file di configurazione \"%s\": %s" - -#: grub-core/osdep/basic/compress.c:8 grub-core/osdep/basic/compress.c:14 -#: grub-core/osdep/basic/compress.c:20 -msgid "no compression is available for your platform" -msgstr "nessuna compressione disponibile per questa piattaforma" - -#: grub-core/osdep/basic/no_platform.c:30 -#: grub-core/osdep/windows/platform.c:418 -msgid "no IEEE1275 routines are available for your platform" -msgstr "nessuna routine IEEE1275 disponibile per questa piattaforma" - -#: grub-core/osdep/basic/no_platform.c:38 -msgid "no EFI routines are available for your platform" -msgstr "nessuna routine EFI disponibile per questa piattaforma" - -#: grub-core/osdep/basic/no_platform.c:45 -#: grub-core/osdep/windows/platform.c:425 -msgid "no SGI routines are available for your platform" -msgstr "nessuna routine SGI disponibile per questa piattaforma" - -#. TRANSLATORS: The OS itself may very well have a random -#. number generator but GRUB doesn't know how to access it. -#: grub-core/osdep/basic/random.c:42 -msgid "no random number generator is available for your OS" -msgstr "" -"nessun generatore di numeri casuali disponibile per questo sistema operativo" - -#: grub-core/osdep/devmapper/getroot.c:81 -msgid "Failed to create `device-mapper' tree" -msgstr "Creazione dell'albero \"device-mapper\" non riuscita" - -#: grub-core/osdep/devmapper/getroot.c:197 -#: grub-core/osdep/freebsd/getroot.c:202 -#, c-format -msgid "can't mount encrypted volume `%s': %s" -msgstr "impossibile montare il volume cifrato \"%s\": %s" - -#. TRANSLATORS: geom is the name of (k)FreeBSD device framework. -#. Usually left untranslated. -#. -#: grub-core/osdep/freebsd/getroot.c:82 grub-core/osdep/freebsd/getroot.c:164 -#: grub-core/osdep/freebsd/getroot.c:258 grub-core/osdep/freebsd/getroot.c:316 -msgid "couldn't open geom" -msgstr "impossibile aprire geom" - -#: grub-core/osdep/freebsd/getroot.c:182 grub-core/osdep/freebsd/getroot.c:277 -msgid "couldn't find geli consumer" -msgstr "impossibile trovare utilizzatore geli" - -#: grub-core/osdep/freebsd/getroot.c:282 -msgid "couldn't retrieve geli UUID" -msgstr "impossibile recuperare UUID geli" - -#. TRANSLATORS: geom is the name of (k)FreeBSD device framework. -#. Usually left untranslated. "part" is the identifier of one of its -#. classes. -#: grub-core/osdep/freebsd/getroot.c:325 -msgid "couldn't find geom `part' class" -msgstr "impossibile trovare la classe \"part\" di geom" - -#: grub-core/osdep/freebsd/hostdisk.c:72 grub-core/osdep/linux/hostdisk.c:93 -msgid "unaligned device size" -msgstr "dimensione device non allineata" - -#: grub-core/osdep/generic/blocklist.c:56 -#, c-format -msgid "attempting to read the core image `%s' from GRUB" -msgstr "tentativo di leggere l'immagine core \"%s\" da GRUB" - -#: grub-core/osdep/generic/blocklist.c:57 -#, c-format -msgid "attempting to read the core image `%s' from GRUB again" -msgstr "tentativo di leggere nuovamente l'immagine core \"%s\" da GRUB" - -#: grub-core/osdep/generic/blocklist.c:115 -#, c-format -msgid "cannot read `%s' correctly" -msgstr "Impossibile leggere \"%s\" correttamente" - -#: grub-core/osdep/generic/blocklist.c:126 -msgid "failed to read the sectors of the core image" -msgstr "lettura dei settori dell'immagine core non riuscita" - -#. TRANSLATORS: On GNU/Hurd, a "translator" is similar to a filesystem -#. mount, but handled by a userland daemon, whose invocation command line -#. is being fetched here. First %s is the file being looked at (for which -#. we are fetching the "translator" command line), second %s is the error -#. message. -#. -#: grub-core/osdep/hurd/getroot.c:79 -#, c-format -msgid "cannot get translator command line for path `%s': %s" -msgstr "" -"Impossibile recuperare mount da riga di comando per il percorso \"%s\": %s" - -#: grub-core/osdep/hurd/getroot.c:82 -#, c-format -msgid "translator command line is empty for path `%s'" -msgstr "Mount da riga di comando vuoto per il percorso \"%s\"" - -#. TRANSLATORS: we expect to get something like -#. /hurd/foobar --option1 --option2=baz /dev/something -#. -#: grub-core/osdep/hurd/getroot.c:98 -#, c-format -msgid "" -"translator `%s' for path `%s' has several non-option words, at least `%s' " -"and `%s'" -msgstr "" -"Mount \"%s\" per il percorso \"%s\" presenta molte parole non-opzioni, " -"almeno \"%s\" e \"%s\"" - -#. TRANSLATORS: we expect to get something like -#. /hurd/foobar --option1 --option2=baz /dev/something -#. -#: grub-core/osdep/hurd/getroot.c:109 -#, c-format -msgid "" -"translator `%s' for path `%s' is given only options, cannot find device part" -msgstr "" -"Mount \"%s\" per il percorso \"%s\" presenta solo opzioni, impossibile " -"trovare la parte device" - -#: grub-core/osdep/hurd/hostdisk.c:73 -#, c-format -msgid "Storage information for `%s' does not include type" -msgstr "Le informazioni di archiviazione per \"%s\" non comprendono il tipo" - -#: grub-core/osdep/hurd/hostdisk.c:75 -#, c-format -msgid "`%s' is not a local disk" -msgstr "\"%s\" non è un disco locale" - -#: grub-core/osdep/hurd/hostdisk.c:78 -#, c-format -msgid "" -"Storage information for `%s' indicates neither a plain partition nor a plain " -"disk" -msgstr "" -"Le informazioni di archiviazione per \"%s\" indicano una partizione o un " -"disco normale" - -#: grub-core/osdep/linux/blocklist.c:81 grub-core/osdep/linux/blocklist.c:96 -#: grub-core/osdep/linux/blocklist.c:122 -#, c-format -msgid "can't retrieve blocklists: %s" -msgstr "impossibile recuperare le blocklist: %s" - -#: grub-core/osdep/linux/blocklist.c:84 -msgid "blocksize is not divisible by 512" -msgstr "la dimensione del blocco non è divisibile per 512" - -#: grub-core/osdep/linux/blocklist.c:86 -msgid "invalid zero blocksize" -msgstr "dimensione blocco zero non valida" - -#: grub-core/osdep/linux/blocklist.c:90 util/setup.c:744 -msgid "can't retrieve blocklists" -msgstr "impossibile recuperare le blocklist" - -#: grub-core/osdep/linux/getroot.c:154 -#, c-format -msgid "ioctl RAID_VERSION error: %s" -msgstr "errore ioctl RAID_VERSION: %s" - -#: grub-core/osdep/linux/getroot.c:160 grub-core/osdep/linux/getroot.c:164 -#, c-format -msgid "unsupported RAID version: %d.%d" -msgstr "versione RAID non supportata: %d.%d" - -#: grub-core/osdep/linux/getroot.c:169 -#, c-format -msgid "ioctl GET_ARRAY_INFO error: %s" -msgstr "errore ioctl GET_ARRAY_INFO: %s" - -#: grub-core/osdep/linux/getroot.c:178 -#, c-format -msgid "ioctl GET_DISK_INFO error: %s" -msgstr "errore ioctl GET_DISK_INFO: %s" - -#: grub-core/osdep/linux/getroot.c:608 grub-core/osdep/linux/getroot.c:678 -#: grub-core/osdep/linux/hostdisk.c:126 grub-core/osdep/unix/getroot.c:253 -#: grub-core/osdep/unix/getroot.c:642 grub-core/osdep/unix/platform.c:92 -#: grub-core/osdep/unix/platform.c:100 -#, c-format -msgid "Unable to open stream from %s: %s" -msgstr "Impossibile aprire lo stream da %s: %s" - -#: grub-core/osdep/linux/getroot.c:1033 -#, c-format -msgid "unknown kind of RAID device `%s'" -msgstr "tipologia di device RAID \"%s\" sconosciuta" - -#: grub-core/osdep/linux/ofpath.c:181 -#, c-format -msgid "`obppath' not found in parent dirs of `%s', no IEEE1275 name discovery" -msgstr "" -"\"obppath\" non trovato nelle directory superiori di \"%s\", scoperta dei " -"nomi IEEE1275 non disponibile" - -#: grub-core/osdep/linux/ofpath.c:222 grub-core/osdep/unix/getroot.c:505 -#: grub-core/osdep/unix/getroot.c:529 grub-core/osdep/unix/relpath.c:49 -#: util/grub-install.c:984 util/grub-install.c:1331 util/grub-probe.c:323 -#, c-format -msgid "failed to get canonical path of `%s'" -msgstr "recupero del percorso canonico di \"%s\" non riuscito" - -#: grub-core/osdep/linux/ofpath.c:740 -#, c-format -msgid "unknown device type %s" -msgstr "tipo di device %s sconosciuto" - -#: grub-core/osdep/linux/ofpath.c:758 util/ieee1275/grub-ofpathname.c:39 -#, c-format -msgid "Usage: %s DEVICE\n" -msgstr "Uso: %s DEVICE\n" - -#: grub-core/osdep/unix/exec.c:86 grub-core/osdep/unix/exec.c:172 -#: grub-core/osdep/unix/exec.c:217 -#, c-format -msgid "Unable to fork: %s" -msgstr "Impossibile eseguire fork: %s" - -#: grub-core/osdep/unix/exec.c:166 grub-core/osdep/unix/exec.c:211 -#, c-format -msgid "Unable to create pipe: %s" -msgstr "Impossibile creare pipe: %s" - -#: grub-core/osdep/unix/getroot.c:370 -msgid "cannot save the original directory" -msgstr "impossibile salvare la directory originale" - -#: grub-core/osdep/unix/getroot.c:423 grub-core/osdep/unix/getroot.c:480 -#: grub-core/osdep/unix/getroot.c:489 -msgid "cannot restore the original directory" -msgstr "impossibile ripristinare la directory originale" - -#. TRANSLATORS: "stat" comes from the name of POSIX function. -#: grub-core/osdep/unix/getroot.c:551 grub-core/osdep/unix/hostdisk.c:61 -#: grub-core/osdep/unix/relpath.c:73 grub-core/osdep/unix/relpath.c:97 -#: util/getroot.c:160 util/getroot.c:162 util/grub-install.c:774 -#: util/grub-macbless.c:70 -#, c-format -msgid "cannot stat `%s': %s" -msgstr "impossibile eseguire stat su \"%s\": %s" - -#: grub-core/osdep/unix/hostdisk.c:293 -#, c-format -msgid "cannot make temporary file: %s" -msgstr "impossibile creare un file temporaneo: %s" - -#: grub-core/osdep/unix/hostdisk.c:311 -#, c-format -msgid "cannot make temporary directory: %s" -msgstr "impossibile creare una directory temporanea: %s" - -#: grub-core/osdep/unix/platform.c:77 -#, c-format -msgid "" -"couldn't find IEEE1275 device path for %s.\n" -"You will have to set `boot-device' variable manually" -msgstr "" -"Impossibile trovare il percorso dell'albero di device IEEE1275 per %s.\n" -"È necessario impostare la variabile \"boot-device\" manualmente." - -#. TRANSLATORS: This message is shown when required executable `%s' -#. isn't found. -#: grub-core/osdep/unix/platform.c:149 grub-core/osdep/unix/platform.c:189 -#, c-format -msgid "%s: not found" -msgstr "%s: non trovato" - -#: grub-core/osdep/unix/platform.c:225 -#, c-format -msgid "" -"`nvsetenv' failed. \n" -"You will have to set `boot-device' variable manually. At the IEEE1275 " -"prompt, type:\n" -" %s\n" -msgstr "" -"\"nvsetenv\" non riuscita.\n" -"È necessario impostare la variabile \"boot-device\" manualmente. Al prompt " -"IEEE1275 digitare:\n" -" %s\n" - -#: grub-core/osdep/unix/platform.c:240 -msgid "You will have to set `SystemPartition' and `OSLoader' manually." -msgstr "È necessario impostare manualmente \"SystemPartition\" e \"OSLoader\"." - -#. TRANSLATORS: canonical pathname is the -#. complete one e.g. /etc/fstab. It has -#. to contain `/' normally, if it doesn't -#. we're in trouble and throw this error. -#: grub-core/osdep/unix/relpath.c:90 -msgid "no `/' in canonical filename" -msgstr "nessun carattere di slash (/) nel nome canonico del file" - -#: grub-core/osdep/windows/hostdisk.c:151 -msgid "cygwin_conv_path() failed" -msgstr "cygwin_conv_path() non riuscita" - -#: grub-core/osdep/windows/hostdisk.c:501 util/grub-install.c:570 -msgid "couldn't retrieve random data" -msgstr "impossibile recuperare dati casuali" - -#: grub-core/osdep/windows/platform.c:97 -msgid "Insufficient privileges to access firmware, assuming BIOS" -msgstr "" -"Permessi non sufficienti per accedere al firmware, viene considerato BIOS" - -#: grub-core/osdep/windows/platform.c:225 -msgid "no EFI routines are available when running in BIOS mode" -msgstr "nessuna routine EFI disponibile quando in esecuzione in modalità BIOS" - -#: grub-core/osdep/windows/platform.c:240 -msgid "unexpected EFI error" -msgstr "errore EFI non atteso" - -#: grub-core/osdep/windows/platform.c:315 -msgid "Couldn't find a free BootNNNN slot" -msgstr "Impossibile trovare uno slot BootNNNN libero" - -#: grub-core/partmap/gpt.c:191 -msgid "" -"this GPT partition label contains no BIOS Boot Partition; embedding won't be " -"possible" -msgstr "" -"questa etichetta della partizione GPT non contiene BIOS Boot Partition, " -"l'embed non è possibile" - -#: grub-core/partmap/gpt.c:196 -msgid "your BIOS Boot Partition is too small; embedding won't be possible" -msgstr "BIOS Boot Partition è troppo piccola, l'embed non è possibile" - -#. TRANSLATORS: MBR gap and boot track is the same thing and is the space -#. between MBR and first partitition. If your language translates well only -#. "boot track", you can just use it everywhere. Next two messages are about -#. RAID controllers/software bugs which GRUB has to live with. Please spread -#. the message that these are bugs in other software and not merely -#. suboptimal behaviour. -#: grub-core/partmap/msdos.c:51 -#, c-format -msgid "" -"Sector %llu is already in use by raid controller `%s'; avoiding it. Please " -"ask the manufacturer not to store data in MBR gap" -msgstr "" -"Il settore %llu è già in uso dal controller RAID \"%s\", viene saltato. " -"Informare il costruttore e avvisarlo di non archiviare dati nell'intervallo " -"del MBR." - -#: grub-core/partmap/msdos.c:54 -#, c-format -msgid "" -"Sector %llu is already in use by the program `%s'; avoiding it. This " -"software may cause boot or other problems in future. Please ask its authors " -"not to store data in the boot track" -msgstr "" -"Il settore %llu è già in uso dal programma \"%s\", viene saltato. Questo " -"software potrebbe causare problemi di avvio, o altri, nel futuro. Informare " -"gli autori e avvisarli di non archiviare dati nell'intervallo del MBR." - -#: grub-core/partmap/msdos.c:384 -msgid "" -"other software is using the embedding area, and there is not enough room for " -"core.img. Such software is often trying to store data in a way that avoids " -"detection. We recommend you investigate" -msgstr "" -"Altro software sta utilizzando l'area di embed e non c'è abbastanza spazio " -"per core.img. Tale software solitamente archivia dati senza possibilità di " -"rilevamento. È consigliato verificare la situazione." - -#: grub-core/partmap/msdos.c:395 -msgid "" -"this msdos-style partition label has no post-MBR gap; embedding won't be " -"possible" -msgstr "" -"L'etichetta della partizione stile msdos non ha un intervallo dopo l'MBR, " -"l'embed non è possibile" - -#: grub-core/partmap/msdos.c:404 -msgid "your embedding area is unusually small. core.img won't fit in it." -msgstr "" -"L'area di embed è troppo piccola. Il file core.img non può esservi contenuto." - -#: grub-core/parttool/msdospart.c:39 -msgid "Make partition active" -msgstr "Rende la partizione attiva" - -#: grub-core/parttool/msdospart.c:51 -msgid "not a primary partition" -msgstr "non una partizione primaria" - -#: grub-core/parttool/msdospart.c:69 -#, c-format -msgid "Partition %d is active now. \n" -msgstr "La partizione %d è ora attiva.\n" - -#: grub-core/parttool/msdospart.c:74 -#, c-format -msgid "Cleared active flag on %d. \n" -msgstr "Pulito il flag attivo su %d.\n" - -#: grub-core/parttool/msdospart.c:87 -msgid "Change partition type" -msgstr "Modifica il tipo di partizione" - -#: grub-core/parttool/msdospart.c:88 -msgid "Set `hidden' flag in partition type" -msgstr "Imposta il flag \"hidden\" sul tipo della partizione" - -#: grub-core/parttool/msdospart.c:130 -#, c-format -msgid "the partition type 0x%x isn't valid" -msgstr "il tipo di partizione 0x%x non è valido" - -#. TRANSLATORS: In this case we're actually writing to the disk and actively -#. modifying partition type rather than just defining it. -#: grub-core/parttool/msdospart.c:137 -#, c-format -msgid "Setting partition type to 0x%x\n" -msgstr "Impostazione tipo di partizione a 0x%x\n" - -#. TRANSLATORS: 0 is a quantifier. "break" (similar to bash) -#. can be used e.g. to break 3 loops at once. -#. But asking it to break 0 loops makes no sense. -#: grub-core/script/execute.c:143 -msgid "can't break 0 loops" -msgstr "impossibile interrompere zero cicli" - -#. TRANSLATORS: It's about not being -#. inside a function. "return" can be used only -#. in a function and this error occurs if it's used -#. anywhere else. -#: grub-core/script/execute.c:227 -msgid "not in function body" -msgstr "non all'interno del corpo della funzione" - -#: grub-core/script/execute.c:371 -#, c-format -msgid "invalid variable name `%s'" -msgstr "nome variabile \"%s\" non valido" - -#: grub-core/script/execute.c:953 -msgid "cannot allocate command buffer" -msgstr "impossibile allocare il buffer del comando" - -#: grub-core/script/lexer.c:144 util/grub-fstest.c:330 -msgid "unexpected end of file" -msgstr "fine file non attesa" - -#: grub-core/script/main.c:55 grub-core/script/main.c:57 -#: grub-core/script/main.c:59 grub-core/script/main.c:67 -msgid "[NUM]" -msgstr "[NUM]" - -#: grub-core/script/main.c:55 -msgid "Exit from loops" -msgstr "Esce dai cicli" - -#: grub-core/script/main.c:57 -msgid "Continue loops" -msgstr "Continua i cicli" - -#. TRANSLATORS: Positional arguments are -#. arguments $0, $1, $2, ... -#: grub-core/script/main.c:62 -msgid "Shift positional parameters." -msgstr "Cambia i parametri posizionali" - -#: grub-core/script/main.c:64 -msgid "[VALUE]..." -msgstr "[VALORE]..." - -#: grub-core/script/main.c:65 -msgid "Set positional parameters." -msgstr "Imposta i parametri posizionali" - -#. TRANSLATORS: It's a command description -#. and "Return" is a verb, not a noun. The -#. command in question is "return" and -#. has exactly the same semanics as bash -#. equivalent. -#: grub-core/script/main.c:73 -msgid "Return from a function." -msgstr "Ritorna da una funzione" - -#: grub-core/term/gfxterm_background.c:176 -msgid "[-m (stretch|normal)] FILE" -msgstr "[-m (stretch|normal)] FILE" - -#: grub-core/term/gfxterm_background.c:177 -msgid "Load background image for active terminal." -msgstr "Carica un'immagine di sfondo per il terminale attivo" - -#: grub-core/term/gfxterm_background.c:182 util/grub-install.c:302 -#: util/grub-install.c:303 util/grub-mkrescue.c:107 util/grub-mkrescue.c:108 -#: util/grub-render-label.c:61 util/grub-render-label.c:63 -msgid "COLOR" -msgstr "COLORE" - -#: grub-core/term/gfxterm_background.c:183 -msgid "Set background color for active terminal." -msgstr "Imposta un colore di sfondo per il terminale attivo" - -#: grub-core/term/i386/coreboot/cbmemc.c:139 -msgid "Show CBMEM console content." -msgstr "Mostra il contenuto della console CBMEM" - -#: grub-core/term/serial.c:57 -msgid "Set the serial unit." -msgstr "Imposta l'unità seriale" - -#: grub-core/term/serial.c:58 -msgid "Set the serial port address." -msgstr "Imposta l'indirizzo della porta seriale" - -#: grub-core/term/serial.c:59 -msgid "Set the serial port speed." -msgstr "Imposta la velocità della porta seriale" - -#: grub-core/term/serial.c:60 -msgid "Set the serial port word length." -msgstr "Imposta la lunghezza della parola della porta seriale" - -#: grub-core/term/serial.c:61 -msgid "Set the serial port parity." -msgstr "Imposta la parità della porta seriale" - -#: grub-core/term/serial.c:62 -msgid "Set the serial port stop bits." -msgstr "Imposta i bit di stop della porta seriale" - -#: grub-core/term/serial.c:63 -msgid "Set the base frequency." -msgstr "Imposta la frequenza di base" - -#: grub-core/term/serial.c:64 -msgid "Enable/disable RTS/CTS." -msgstr "Abilita/Disabilita RTS/CTS" - -#: grub-core/term/serial.c:218 -#, c-format -msgid "serial port `%s' isn't found" -msgstr "porta seriale \"%s\" non trovata" - -#: grub-core/term/serial.c:254 -msgid "unsupported serial port flow control" -msgstr "velocità di controllo della porta seriale non supportata" - -#: grub-core/term/serial.c:429 -msgid "[OPTIONS...]" -msgstr "[OPZIONI...]" - -#: grub-core/term/serial.c:430 -msgid "Configure serial port." -msgstr "Configura la porta seriale" - -#: grub-core/term/terminfo.c:184 -#, c-format -msgid "unknown terminfo type `%s'" -msgstr "tipo di terminfo \"%s\" sconosciuto" - -#: grub-core/term/terminfo.c:668 -msgid "ASCII" -msgstr "ASCII" - -#: grub-core/term/terminfo.c:671 -msgid "UTF-8" -msgstr "UTF-8" - -#. TRANSLATORS: visually ordered UTF-8 is a non-compliant encoding -#. based on UTF-8 with right-to-left languages written in reverse. -#. Used on some terminals. Normal UTF-8 is refered as -#. "logically-ordered UTF-8" by opposition. -#: grub-core/term/terminfo.c:677 -msgid "visually-ordered UTF-8" -msgstr "UTF-8 in ordine visuale" - -#: grub-core/term/terminfo.c:680 -msgid "Unknown encoding" -msgstr "Codifica sconosciuta" - -#: grub-core/term/terminfo.c:684 -msgid "Current terminfo types:" -msgstr "Tipologie di terminfo correnti:" - -#: grub-core/term/terminfo.c:699 -msgid "Terminal is ASCII-only [default]." -msgstr "Il terminale è solamente ASCII [predefinito]" - -#: grub-core/term/terminfo.c:700 -msgid "Terminal is logical-ordered UTF-8." -msgstr "Il terminale è UTF-8 in ordine logico" - -#: grub-core/term/terminfo.c:701 -msgid "Terminal is visually-ordered UTF-8." -msgstr "Il terminale è UTF-8 in ordine visuale" - -#: grub-core/term/terminfo.c:703 -msgid "Terminal has specified geometry." -msgstr "Il terminale ha la geometria specificata" - -#. TRANSLATORS: "x" has to be entered in, like an identifier, so please don't -#. use better Unicode codepoints. -#: grub-core/term/terminfo.c:706 -msgid "WIDTHxHEIGHT." -msgstr "LARGHEZZAxALTEZZA" - -#: grub-core/term/terminfo.c:746 -msgid "incorrect terminal dimensions specification" -msgstr "specifiche di dimensioni del terminale non corrette" - -#: grub-core/term/terminfo.c:776 -#, c-format -msgid "terminal %s isn't found or it's not handled by terminfo" -msgstr "il terminale %s non è stato trovato o non è gestito da terminfo" - -#: grub-core/term/terminfo.c:785 -msgid "[[-a|-u|-v] [-g WxH] TERM [TYPE]]" -msgstr "[[-a|-u|-v] [-g LxA] TERM [TIPO]]" - -#: grub-core/term/terminfo.c:786 -msgid "Set terminfo type of TERM to TYPE.\n" -msgstr "Imposta il tipo TERM di terminfo a TIPO\n" - -# (ndt) non molto chiara -# guardando il codice, pare sia assieme a una stringa BLOCK che è tradotta da un'altra parte, ma potrebbe essere anche il "blocco d'ambiente" di poco dopo... -#. TRANSLATORS: this is the BLOCK-argument, not -#. environment block. -#: grub-core/tests/test_blockarg.c:49 -msgid "Print and execute block argument." -msgstr "Stampa ed esegue l'argomento BLOCCO" - -#. TRANSLATORS: We're speaking about bitmap images like -#. JPEG or PNG. -#: grub-core/video/bitmap.c:209 -#, c-format -msgid "bitmap file `%s' is of unsupported format" -msgstr "il formato del file bitmap \"%s\" non è supportato" - -#: grub-core/video/i386/pc/vbe.c:1191 -#, c-format -msgid " VBE info: version: %d.%d OEM software rev: %d.%d\n" -msgstr " Info VBE: versione: %d.%d Rev. software OEM: %d.%d\n" - -#: grub-core/video/i386/pc/vbe.c:1198 -#, c-format -msgid " total memory: %d KiB\n" -msgstr " memoria totale: %d KiB\n" - -#: grub-core/video/video.c:596 grub-core/video/video.c:762 -msgid "no suitable video mode found" -msgstr "non è stata trovata alcuna modalità video adatta" - -#: include/grub/crypto.h:403 -msgid "access denied" -msgstr "accesso negato" - -#: include/grub/util/install.h:30 include/grub/util/install.h:35 -msgid "MODULES" -msgstr "MODULI" - -#: include/grub/util/install.h:31 -msgid "pre-load specified modules MODULES" -msgstr "Pre-carica i MODULI specificati" - -#: include/grub/util/install.h:33 -msgid "embed a specific DTB" -msgstr "Include un DTB specifico" - -#: include/grub/util/install.h:36 -msgid "install only MODULES and their dependencies [default=all]" -msgstr "Installa solo i MODULI e le loro dipendenze [predefinito=all]" - -#: include/grub/util/install.h:37 -msgid "THEMES" -msgstr "TEMI" - -#: include/grub/util/install.h:38 -#, c-format -msgid "install THEMES [default=%s]" -msgstr "Installa i TEMI [predefinito=%s]" - -#: include/grub/util/install.h:39 -msgid "FONTS" -msgstr "CARATTERI" - -#: include/grub/util/install.h:40 -#, c-format -msgid "install FONTS [default=%s]" -msgstr "Installa i CARATTERI [predefinito=%s]" - -#: include/grub/util/install.h:41 -msgid "LOCALES" -msgstr "LINGUE" - -#: include/grub/util/install.h:42 -msgid "install only LOCALES [default=all]" -msgstr "Installa solo LINGUE [predefinito=all]" - -#: include/grub/util/install.h:45 -msgid "compress GRUB files [optional]" -msgstr "Comprime i file GRUB [opzionale]" - -#: include/grub/util/install.h:48 util/grub-mkimage.c:83 -msgid "choose the compression to use for core image" -msgstr "Sceglie la compressione da usare per l'immagine core" - -#. TRANSLATORS: platform here isn't identifier. It can be translated. -#: include/grub/util/install.h:51 include/grub/util/install.h:54 -#: util/grub-mkimage.c:66 -#, c-format -msgid "use images and modules under DIR [default=%s/]" -msgstr "Usa immagini e moduli in DIR [predefinito=%s/]" - -#: include/grub/util/install.h:57 -#, c-format -msgid "use translations under DIR [default=%s]" -msgstr "Usa le traduzioni in DIR [predefinito=%s]" - -#: include/grub/util/install.h:60 -#, c-format -msgid "use themes under DIR [default=%s]" -msgstr "Usa i temi in DIR [predefinito=%s]" - -#: include/grub/util/install.h:65 util/grub-mkimage.c:78 -msgid "embed FILE as public key for signature checking" -msgstr "Incorpora FILE come chiave pubblica per la verifica della firma" - -#: util/editenv.c:59 util/grub-editenv.c:201 util/grub-install-common.c:535 -#: util/grub-mkimage.c:315 util/setup.c:791 -#, c-format -msgid "cannot sync `%s': %s" -msgstr "impossibile sincronizzare \"%s\": %s" - -#: util/editenv.c:64 -#, c-format -msgid "cannot rename the file %s to %s" -msgstr "impossibile rinominare il file %s in %s" - -#: util/getroot.c:402 -#, c-format -msgid "disk does not exist, so falling back to partition device %s" -msgstr "il disco non esiste, viene usato il device di partizione %s" - -#: util/grub-editenv.c:45 util/grub-fstest.c:506 -msgid "Commands:" -msgstr "Comandi:" - -# (ndt) vedi nota poco sotto su environment block... -#: util/grub-editenv.c:47 -msgid "Create a blank environment block file." -msgstr "Crea un file di blocco dell'ambiente vuoto" - -#: util/grub-editenv.c:49 -msgid "List the current variables." -msgstr "Elenca le variabili attuali" - -#. TRANSLATORS: "set" is a keyword. It's a summary of "set" subcommand. -#: util/grub-editenv.c:51 -msgid "set [NAME=VALUE ...]" -msgstr "set [NOME=VALORE ...]" - -#: util/grub-editenv.c:52 -msgid "Set variables." -msgstr "Imposta le variabili" - -#. TRANSLATORS: "unset" is a keyword. It's a summary of "unset" subcommand. -#: util/grub-editenv.c:54 -msgid "unset [NAME ...]" -msgstr "unset [NOME ...]" - -#: util/grub-editenv.c:55 -msgid "Delete variables." -msgstr "Elimina le variabili" - -#: util/grub-editenv.c:57 -msgid "Options:" -msgstr "Opzioni:" - -#: util/grub-editenv.c:84 -msgid "You need to specify at least one command.\n" -msgstr "È necessario specificare almeno un comando.\n" - -#: util/grub-editenv.c:113 -msgid "FILENAME COMMAND" -msgstr "NOMEFILE COMANDO" - -# (ndt) blocco d'ambiente fa un po' pena devo dire... forse è il caso di lasciare "environment block", è una cosa abbastanza tecnica... -#: util/grub-editenv.c:114 -msgid "Tool to edit environment block." -msgstr "Strumento per modificare il blocco dell'ambiente." - -#: util/grub-editenv.c:116 -#, c-format -msgid "" -"If FILENAME is `-', the default value %s is used.\n" -"\n" -"There is no `delete' command; if you want to delete the whole environment\n" -"block, use `rm %s'." -msgstr "" -"Se NOMEFILE è \"-\", viene usato il valore predefinito %s.\n" -"\n" -"Non c'è un comando \"delete\", per eliminare tutto il blocco\n" -"dell'ambiente, usare \"rm %s\"." - -# (ndt) blocco d'ambiente fa un po' pena devo dire... forse è il caso di lasciare "environment block", è una cosa abbastanza tecnica... -#: util/grub-editenv.c:162 -msgid "invalid environment block" -msgstr "blocco dell'ambiente non valido" - -#: util/grub-editenv.c:217 -#, c-format -msgid "invalid parameter %s" -msgstr "parametro %s non valido" - -#: util/grub-editenv.c:222 -msgid "environment block too small" -msgstr "blocco dell'ambiente troppo piccolo" - -#: util/grub-fstest.c:107 -#, c-format -msgid "disk read fails at offset %lld, length %lld" -msgstr "lettura disco non riuscita all'offset %lld, lunghezza %lld" - -#: util/grub-fstest.c:138 -#, c-format -msgid "invalid skip value %lld" -msgstr "valore di salto %lld non valido" - -#: util/grub-fstest.c:160 util/grub-fstest.c:246 -#, c-format -msgid "read error at offset %llu: %s" -msgstr "errore di lettura all'offset %llu: %s" - -#: util/grub-fstest.c:210 -#, c-format -msgid "cannot open OS file `%s': %s" -msgstr "impossibile aprire il file \"%s\" del sistema operativo: %s" - -#: util/grub-fstest.c:225 util/misc.c:126 -#, c-format -msgid "cannot write to the stdout: %s" -msgstr "impossibile scrivere sullo standard output: %s" - -#: util/grub-fstest.c:259 -#, c-format -msgid "compare fail at offset %llu" -msgstr "confronto non riuscito all'offset %llu" - -#: util/grub-fstest.c:280 util/grub-fstest.c:314 -#, c-format -msgid "OS file %s open error: %s" -msgstr "Errore nell'aprire il file di sistema %s: %s" - -#: util/grub-fstest.c:402 util/grub-mount.c:392 -#, c-format -msgid "`loopback' command fails: %s" -msgstr "comando \"loopback\" non riuscito: %s" - -#: util/grub-fstest.c:413 util/grub-mount.c:402 -#, c-format -msgid "`cryptomount' command fails: %s" -msgstr "comando \"cryptomount\" non riuscito: %s" - -#: util/grub-fstest.c:474 util/grub-fstest.c:478 -msgid "couldn't retrieve UUID" -msgstr "impossibile recuperare UUID" - -#: util/grub-fstest.c:507 -msgid "ls PATH" -msgstr "ls PERCORSO" - -#: util/grub-fstest.c:507 -msgid "List files in PATH." -msgstr "Elenca i file in PERCORSO" - -#: util/grub-fstest.c:508 -msgid "cp FILE LOCAL" -msgstr "cp FILE LOCALE" - -#: util/grub-fstest.c:508 -msgid "Copy FILE to local file LOCAL." -msgstr "Copia FILE su un file LOCALE" - -#: util/grub-fstest.c:509 -msgid "cat FILE" -msgstr "cat FILE" - -#: util/grub-fstest.c:509 -msgid "Copy FILE to standard output." -msgstr "Copia il file sullo standard output" - -#: util/grub-fstest.c:510 -msgid "cmp FILE LOCAL" -msgstr "cmp FILE LOCALE" - -#: util/grub-fstest.c:510 -msgid "Compare FILE with local file LOCAL." -msgstr "Confronta FILE con un file LOCALE" - -#: util/grub-fstest.c:511 -msgid "hex FILE" -msgstr "hex FILE" - -#: util/grub-fstest.c:511 -msgid "Show contents of FILE in hex." -msgstr "Mostra il contenuto di FILE in esadecimale" - -#: util/grub-fstest.c:512 -msgid "crc FILE" -msgstr "crc FILE" - -#: util/grub-fstest.c:512 -msgid "Get crc32 checksum of FILE." -msgstr "Calcola il checksum crc32 di FILE" - -#: util/grub-fstest.c:513 -msgid "blocklist FILE" -msgstr "blocklist FILE" - -#: util/grub-fstest.c:513 -msgid "Display blocklist of FILE." -msgstr "Visualizza la blocklist di FILE" - -#: util/grub-fstest.c:514 -msgid "xnu_uuid DEVICE" -msgstr "xnu_uuid DEVICE" - -#: util/grub-fstest.c:514 -msgid "Compute XNU UUID of the device." -msgstr "Calcola l'UUID XNU di DEVICE" - -#. TRANSLATORS: bitmaps are images like e.g. in JPEG. -#: util/grub-fstest.c:517 util/grub-fstest.c:518 util/grub-fstest.c:519 -#: util/grub-mkfont.c:938 util/grub-mkfont.c:951 util/grub-mkfont.c:952 -#: util/grub-mkpasswd-pbkdf2.c:46 util/grub-mkpasswd-pbkdf2.c:47 -#: util/grub-mkpasswd-pbkdf2.c:48 -msgid "NUM" -msgstr "NUM" - -#: util/grub-fstest.c:517 -msgid "Skip N bytes from output file." -msgstr "Salta N byte dal file di output" - -#: util/grub-fstest.c:518 -msgid "Handle N bytes in output file." -msgstr "Gestisce N byte nel file di output" - -#: util/grub-fstest.c:519 -msgid "Specify the number of input files." -msgstr "Specifica il numero di file di input" - -#: util/grub-fstest.c:520 util/grub-mount.c:453 -msgid "Set debug environment variable." -msgstr "Imposta la variabile di debug dell'ambiente" - -#: util/grub-fstest.c:521 util/grub-mount.c:454 -msgid "Mount crypto devices." -msgstr "Monta dispositivi cifrati" - -#. TRANSLATORS: "prompt" is a keyword. -#: util/grub-fstest.c:524 util/grub-mount.c:457 -msgid "FILE|prompt" -msgstr "FILE|prompt" - -#: util/grub-fstest.c:524 util/grub-mount.c:457 -msgid "Load zfs crypto key." -msgstr "Carica chiave cifratura ZFS" - -#: util/grub-fstest.c:526 -msgid "Uncompress data." -msgstr "Decomprime i dati" - -#: util/grub-fstest.c:605 -msgid "Invalid disk count.\n" -msgstr "Conteggio dischi non valido.\n" - -#. TRANSLATORS: disk count is optional but if it's there it must -#. be before disk list. So please don't imply disk count as mandatory. -#. -#: util/grub-fstest.c:613 -msgid "Disk count must precede disks list.\n" -msgstr "Il conteggio dei dischi deve precedere l'elenco dei dischi.\n" - -#: util/grub-fstest.c:633 -msgid "No command is specified.\n" -msgstr "Nessun comando specificato.\n" - -#: util/grub-fstest.c:638 -msgid "Not enough parameters to command.\n" -msgstr "Parametri del comando non sufficienti.\n" - -#: util/grub-fstest.c:711 -#, c-format -msgid "Invalid command %s.\n" -msgstr "Comando %s non valido.\n" - -#: util/grub-fstest.c:724 -msgid "IMAGE_PATH COMMANDS" -msgstr "PERCORSO_IMG COMANDI" - -#: util/grub-fstest.c:725 util/grub-mount.c:553 -msgid "Debug tool for filesystem driver." -msgstr "Strumento di debug per il driver del file system." - -#: util/grub-glue-efi.c:53 -msgid "set input filename for 32-bit part." -msgstr "Imposta il nome del file di input per la parte 32-bit" - -#: util/grub-glue-efi.c:55 -msgid "set input filename for 64-bit part." -msgstr "Imposta il nome del file di input per la parte 64-bit" - -#: util/grub-glue-efi.c:57 util/grub-mklayout.c:55 util/grub-render-label.c:71 -msgid "set output filename. Default is STDOUT" -msgstr "Imposta il nome del file di output, predefinito è STDOUT" - -#: util/grub-glue-efi.c:94 util/grub-mklayout.c:476 -#: util/grub-mkpasswd-pbkdf2.c:86 util/grub-render-label.c:131 -msgid "[OPTIONS]" -msgstr "[OPZIONI]" - -#: util/grub-glue-efi.c:95 -msgid "Glue 32-bit and 64-bit binary into Apple universal one." -msgstr "Agglomera binari 32-bit e 64-bit in un binario Apple universale" - -#: util/grub-glue-efi.c:116 -msgid "Missing input file\n" -msgstr "File di input mancante\n" - -#: util/grub-install-common.c:127 util/grub-install-common.c:151 -#, c-format -msgid "cannot copy `%s' to `%s': %s" -msgstr "impossibile copiare \"%s\" su \"%s\": %s" - -#: util/grub-install-common.c:147 -#, c-format -msgid "can't compress `%s' to `%s'" -msgstr "impossibile comprimere \"%s\" in \"%s\"" - -#: util/grub-install-common.c:196 util/grub-install-common.c:552 -#: util/grub-install-common.c:579 util/grub-install-common.c:621 -#, c-format -msgid "cannot open directory `%s': %s" -msgstr "impossibile aprire la directory \"%s\": %s" - -#: util/grub-install-common.c:212 -#, c-format -msgid "cannot delete `%s': %s" -msgstr "impossibile eliminare \"%s\": %s" - -#: util/grub-install-common.c:324 util/grub-mkimage.c:209 -msgid "grub-mkimage is compiled without XZ support" -msgstr "grub-mkimage è stato compilato senza il supporto a XZ" - -#: util/grub-install-common.c:332 util/grub-mkimage.c:217 -#, c-format -msgid "Unknown compression format %s" -msgstr "Formato di compressione %s sconosciuto" - -#: util/grub-install-common.c:400 -#, c-format -msgid "Unrecognized compression `%s'" -msgstr "Compressione \"%s\" non riconosciuta" - -#: util/grub-install-common.c:509 -#, c-format -msgid "unknown target format %s" -msgstr "formato %s dell'obiettivo sconosciuto" - -#: util/grub-install-common.c:700 -#, c-format -msgid "cannot find locale `%s'" -msgstr "impossibile trovare la lingua \"%s\"" - -#: util/grub-install-common.c:939 -#, c-format -msgid "%s doesn't exist. Please specify --target or --directory" -msgstr "%s non esiste: specificare --target o --directory" - -#: util/grub-install-common.c:948 util/grub-install-common.c:951 -#, c-format -msgid "invalid modinfo file `%s'" -msgstr "file modinfo \"%s\" non valido" - -#: util/grub-install-common.c:966 -#, c-format -msgid "Unknown platform `%s-%s'" -msgstr "Piattaforma \"%s-%s\" sconosciuta" - -#: util/grub-install.c:238 -msgid "More than one install device?" -msgstr "Più di un device d'installazione?" - -#: util/grub-install.c:251 -#, c-format -msgid "" -"install GRUB images under the directory DIR/%s instead of the %s directory" -msgstr "installa le immagini GRUB nella directory DIR/%s invece che %s" - -#: util/grub-install.c:256 util/grub-probe.c:734 -msgid "TARGET" -msgstr "OBIETTIVO" - -#. TRANSLATORS: "TARGET" as in "target platform". -#: util/grub-install.c:258 -#, c-format -msgid "install GRUB for TARGET platform [default=%s]; available targets: %s" -msgstr "" -"Installa GRUB sulla piattaforma OBIETTIVO [predefinito=%s]; disponibili: %s" - -#. TRANSLATORS: "may break" doesn't just mean that option wouldn't have any -#. effect but that it will make the resulting install unbootable from HDD. -#. TRANSLATORS: The potential breakage isn't limited to floppies but it's -#. likely to make the install unbootable from HDD. -#: util/grub-install.c:267 util/grub-setup.c:94 -msgid "" -"make the drive also bootable as floppy (default for fdX devices). May break " -"on some BIOSes." -msgstr "" -"Rende l'unità avviabile anche come un floppy (predefinito per i device fdX); " -"potrebbe provocare malfunzionamenti con alcuni BIOS." - -#: util/grub-install.c:270 -msgid "delete device map if it already exists" -msgstr "Elimina la mappa dei dispositivi se esiste già" - -#: util/grub-install.c:272 util/grub-setup.c:87 -msgid "install even if problems are detected" -msgstr "Installa anche se vengono rilevati problemi" - -#: util/grub-install.c:274 -msgid "use identifier file even if UUID is available" -msgstr "Usa il file identificativo anche se è disponibile lo UUID" - -#: util/grub-install.c:276 -msgid "" -"disk module to use (biosdisk or native). This option is only available on " -"BIOS target." -msgstr "" -"Modulo disco da usare (\"biosdisk\" o \"native\"); quest'opzione è " -"disponibile solo su BIOS" - -#: util/grub-install.c:279 -msgid "" -"don't update the `boot-device'/`Boot*' NVRAM variables. This option is only " -"available on EFI and IEEE1275 targets." -msgstr "" -"Non aggiorna le variabili \"boot-device\"/\"Boot*\" NVRAM; quest'opzione è " -"disponibile solo su EFI e IEEE1275" - -#: util/grub-install.c:282 util/grub-setup.c:89 -msgid "do not probe for filesystems in DEVICE" -msgstr "Non esamina i file system in DEVICE" - -#: util/grub-install.c:284 -msgid "do not install bootsector" -msgstr "Non installa il bootsector" - -#: util/grub-install.c:286 util/grub-setup.c:96 -msgid "" -"Do not apply any reed-solomon codes when embedding core.img. This option is " -"only available on x86 BIOS targets." -msgstr "" -"Non applica alcun codice reed-solomon quando viene incorporata core.img; " -"quest'opzione è disponibile solo su BIOS x86" - -#: util/grub-install.c:293 -msgid "" -"the installation device is removable. This option is only available on EFI." -msgstr "" -"Il dispositivo d'installazione è rimovibile; quest'opzione è disponibile " -"solo su EFI" - -#: util/grub-install.c:295 -msgid "ID" -msgstr "ID" - -#: util/grub-install.c:296 -msgid "the ID of bootloader. This option is only available on EFI and Macs." -msgstr "L'ID del bootloader, questa opzione è disponibile solo su EFI e Mac" - -#: util/grub-install.c:298 -msgid "use DIR as the EFI System Partition root." -msgstr "Usa DIR come radice EFI System Partition" - -#: util/grub-install.c:300 -msgid "use DIR for PPC MAC install." -msgstr "Usa DIR per installazione PPC MAC" - -#: util/grub-install.c:301 util/grub-mkrescue.c:106 -msgid "use FILE as font for label" -msgstr "Usa FILE come carattere per l'etichetta" - -#: util/grub-install.c:302 util/grub-mkrescue.c:107 -msgid "use COLOR for label" -msgstr "Usa COLORE per l'etichetta" - -#: util/grub-install.c:303 util/grub-mkrescue.c:108 -msgid "use COLOR for label background" -msgstr "Usa COLORE per lo sfondo dell'etichetta" - -#: util/grub-install.c:304 util/grub-mkrescue.c:110 -msgid "use STRING as product version" -msgstr "Usa STRINGA come versione del prodotto" - -#: util/grub-install.c:361 -msgid "[OPTION] [INSTALL_DEVICE]" -msgstr "[OPZIONI] [DEVICE_INSTALLAZIONE]" - -#: util/grub-install.c:362 -msgid "Install GRUB on your drive." -msgstr "Installa GRUB sull'unità." - -#: util/grub-install.c:363 -#, c-format -msgid "" -"INSTALL_DEVICE must be system device filename.\n" -"%s copies GRUB images into %s. On some platforms, it may also install GRUB " -"into the boot sector." -msgstr "" -"DEVICE_INSTALLAZIONE deve essere un nome di un device di sistema.\n" -"%s copia le immagini GRUB in %s. Su alcune piattaforme può anche installare " -"GRUB nel settore di avvio." - -#: util/grub-install.c:672 -#, c-format -msgid "the drive %s is defined multiple times in the device map %s" -msgstr "l'unità %s è definita molteplici volte nella mappa dei device %s" - -#: util/grub-install.c:878 -msgid "Unable to determine your platform. Use --target." -msgstr "Impossibile determinare la piattaforma. Utilizzare --target." - -#: util/grub-install.c:891 -#, c-format -msgid "Installing for %s platform.\n" -msgstr "Installazione per la piattaforma %s.\n" - -#: util/grub-install.c:939 -msgid "install device isn't specified" -msgstr "device d'installazione non specificato" - -#: util/grub-install.c:1057 -msgid "cannot find EFI directory" -msgstr "impossibile trovare la directory EFI" - -#: util/grub-install.c:1060 util/grub-install.c:1209 util/grub-install.c:1254 -#: util/grub-macbless.c:76 util/grub-probe.c:329 util/setup.c:316 -#, c-format -msgid "cannot find a device for %s (is /dev mounted?)" -msgstr "impossibile trovare un device per %s (/dev è montato?)" - -#: util/grub-install.c:1069 util/grub-install.c:1217 util/grub-install.c:1270 -#: util/grub-install.c:1365 util/grub-macbless.c:80 util/grub-probe.c:372 -#, c-format -msgid "cannot find a GRUB drive for %s. Check your device.map" -msgstr "impossibile trovare un'unità GRUB per %s, controllare device.map" - -#: util/grub-install.c:1087 -#, c-format -msgid "%s doesn't look like an EFI partition" -msgstr "%s non sembra essere una partizione EFI" - -#: util/grub-install.c:1129 util/grub-install.c:1614 -msgid "You've found a bug" -msgstr "Scoperto un bug" - -#: util/grub-install.c:1231 -#, c-format -msgid "filesystem on %s is neither HFS nor HFS+" -msgstr "il file system su %s non è né HFS né HFS+" - -#: util/grub-install.c:1299 -#, c-format -msgid "" -"attempt to install to encrypted disk without cryptodisk enabled. Set `%s' in " -"file `%s'" -msgstr "" -"tentativo di installare su un disco cifrato, ma con cryptodisk disabilitato: " -"impostare \"%s\" nel file \"%s\"" - -#: util/grub-install.c:1410 util/grub-install.c:1772 util/grub-install.c:1872 -#, c-format -msgid "Can't create file: %s" -msgstr "Impossibile creare il file: %s" - -#: util/grub-install.c:1491 -msgid "no hints available for your platform. Expect reduced performance" -msgstr "" -"nessun suggerimento disponibile per questa piattaforma: aspettarsi " -"prestazioni ridotte." - -#. TRANSLATORS: This is a prefix in the log to indicate that usually -#. a command would be executed but due to an option was skipped. -#: util/grub-install.c:1702 -msgid "NOT RUNNING: " -msgstr "Non in esecuzione: " - -#: util/grub-install.c:1806 -msgid "the chosen partition is not a PReP partition" -msgstr "la partizione selezionata non è una partizione PReP" - -#: util/grub-install.c:1811 -msgid "failed to copy Grub to the PReP partition" -msgstr "copia di GRUB nella partizione PReP non riuscita" - -#: util/grub-install.c:1816 -#, c-format -msgid "" -"the PReP partition is not empty. If you are sure you want to use it, run dd " -"to clear it: `%s'" -msgstr "" -"la partizione PReP non è vuota; per utilizzarla veramente, eseguire dd per " -"pulirla: \"%s\"" - -#: util/grub-install.c:1888 util/grub-install.c:1932 -#, c-format -msgid "efibootmgr failed to register the boot entry: %s" -msgstr "" -"registrazione della voce di avvio da parte di efibootmgr non riuscita: %s" - -#: util/grub-install.c:1916 -msgid "EFI bootloader id isn't specified." -msgstr "Bootloader EFI non specificato." - -#: util/grub-install.c:1950 -msgid "WARNING: no platform-specific install was performed" -msgstr "" -"Attenzione: non è stata eseguita alcuna installazione specifica per la " -"piattaforma" - -#: util/grub-install.c:1957 -msgid "Installation finished. No error reported." -msgstr "Installazione completata, nessun errore segnalato." - -# (ndt) bless inteso come il comando bless di grub. -#: util/grub-macbless.c:101 -msgid "bless for x86-based macs" -msgstr "bless per mac basati su x86" - -#: util/grub-macbless.c:103 -msgid "bless for ppc-based macs" -msgstr "bless per mac basati su ppc" - -#: util/grub-macbless.c:136 util/grub-probe.c:823 -msgid "No path or device is specified.\n" -msgstr "Nessun percorso o device specificato.\n" - -#: util/grub-macbless.c:157 -msgid "--ppc PATH|--x86 FILE" -msgstr "--ppc PERCORSO|--x86 FILE" - -#: util/grub-macbless.c:158 -msgid "Mac-style bless on HFS or HFS+" -msgstr "Comando bless su HFS o HFS+ per Mac" - -#: util/grub-menulst2cfg.c:44 -#, c-format -msgid "Usage: %s [INFILE [OUTFILE]]\n" -msgstr "Uso: %s [FILE_IN [FILE_OUT]]\n" - -#: util/grub-mkfont.c:157 -#, c-format -msgid "Freetype Error %d loading glyph 0x%x for U+0x%x%s" -msgstr "Errore Freetype %d nel caricare il glifo 0x%x per U+0x%x%s" - -#. TRANSLATORS: These qualifiers are used for cursive typography, -#. mainly Arabic. Note that the terms refer to the visual position -#. and not logical order and if used in left-to-right script then -#. leftmost is initial but with right-to-left script like Arabic -#. rightmost is the initial. -#: util/grub-mkfont.c:165 -msgid " (medial)" -msgstr " (mediano)" - -#: util/grub-mkfont.c:166 -msgid " (leftmost)" -msgstr " (più a sinistra)" - -#: util/grub-mkfont.c:167 -msgid " (rightmost)" -msgstr " (più a destra)" - -#: util/grub-mkfont.c:481 -#, c-format -msgid "Out of range substitution (%d, %d)\n" -msgstr "Sostituzione fuori intervallo (%d, %d)\n" - -#. TRANSLATORS: "lookup" is taken directly from font specifications -#. which are formulated as "Under condition X replace LOOKUP with -#. SUBSTITUITION". " -#: util/grub-mkfont.c:506 -#, c-format -msgid "Out of range lookup: %d\n" -msgstr "Lookup fuori intervallo: %d\n" - -#: util/grub-mkfont.c:514 -#, c-format -msgid "Unsupported substitution type: %d\n" -msgstr "Tipo di sostituzione non supportato: %d\n" - -#: util/grub-mkfont.c:550 -#, c-format -msgid "Unsupported substitution specification: %d\n" -msgstr "Specifica di sostituzione non supportata: %d\n" - -#: util/grub-mkfont.c:582 -#, c-format -msgid "Unsupported coverage specification: %d\n" -msgstr "Specifica di coverage non supportata: %d\n" - -#: util/grub-mkfont.c:622 -#, c-format -msgid "WARNING: unsupported font feature parameters: %x\n" -msgstr "Attenzione: parametri del carattere non supportati: %x\n" - -#: util/grub-mkfont.c:936 util/grub-mkrescue.c:98 util/grub-mkstandalone.c:48 -msgid "save output in FILE [required]" -msgstr "Salva l'output su FILE [richiesto]" - -#. TRANSLATORS: some font files may have multiple faces (fonts). -#. This option is used to chose among them, the first face being '0'. -#. Rarely used. -#: util/grub-mkfont.c:942 -msgid "select face index" -msgstr "Seleziona l'indice del carattere" - -#: util/grub-mkfont.c:943 -msgid "FROM-TO[,FROM-TO]" -msgstr "DA-A[,DA-A]" - -#. TRANSLATORS: It refers to the range of characters in font. -#: util/grub-mkfont.c:945 -msgid "set font range" -msgstr "Imposta l'intervallo dei caratteri" - -#. TRANSLATORS: "family name" for font is just a generic name without suffix -#. like "Bold". -#: util/grub-mkfont.c:949 -msgid "set font family name" -msgstr "Imposta la famiglia del carattere" - -#: util/grub-mkfont.c:950 -msgid "SIZE" -msgstr "DIM" - -#: util/grub-mkfont.c:950 -msgid "set font size" -msgstr "Imposta la dimensione del carattere" - -#: util/grub-mkfont.c:951 -msgid "set font descent" -msgstr "Imposta il tratto discendente" - -#: util/grub-mkfont.c:952 -msgid "set font ascent" -msgstr "Imposta il tratto ascendente" - -#: util/grub-mkfont.c:953 -msgid "convert to bold font" -msgstr "Converte in carattere grassetto" - -#: util/grub-mkfont.c:954 -msgid "force autohint" -msgstr "Forza l'autohint" - -#: util/grub-mkfont.c:955 -msgid "disable hinting" -msgstr "Disabilita l'hinting" - -#. TRANSLATORS: some fonts contain bitmap rendering for -#. some sizes. This option forces rerendering even if -#. pre-rendered bitmap is available. -#. -#: util/grub-mkfont.c:961 -msgid "ignore bitmap strikes when loading" -msgstr "Ignora le bitmap durante il caricamento" - -#. TRANSLATORS: It refers to the range of characters in font. -#: util/grub-mkfont.c:1059 util/grub-mkfont.c:1075 -msgid "invalid font range" -msgstr "intervallo di caratteri non valido" - -#: util/grub-mkfont.c:1151 -msgid "[OPTIONS] FONT_FILES" -msgstr "[OPZIONI] FILE_CARATTERE" - -#: util/grub-mkfont.c:1152 -msgid "Convert common font file formats into PF2" -msgstr "Converte il formato del file del carattere in PF2" - -#: util/grub-mkfont.c:1182 util/grub-mkrescue.c:483 -#: util/grub-mkstandalone.c:306 -msgid "output file must be specified" -msgstr "deve essere specificato un file di output" - -#: util/grub-mkfont.c:1185 -msgid "FT_Init_FreeType fails" -msgstr "FT_Init_FreeType non riuscita" - -#: util/grub-mkfont.c:1199 -#, c-format -msgid "can't open file %s, index %d: error %d" -msgstr "impossibile aprire il file %s, indice %d: errore %d" - -#: util/grub-mkfont.c:1229 -#, c-format -msgid "can't set %dx%d font size: Freetype error %d: %s" -msgstr "" -"impossibile impostare la dimensione del carattere a %d×%d: errore %d di " -"Freetype: %s" - -#: util/grub-mkimage.c:67 -msgid "set prefix directory" -msgstr "Imposta il prefisso della directory" - -#. TRANSLATORS: "memdisk" here isn't an identifier, it can be translated. -#. "embed" is a verb (command description). " -#: util/grub-mkimage.c:71 -msgid "" -"embed FILE as a memdisk image\n" -"Implies `-p (memdisk)/boot/grub' and overrides any prefix supplied " -"previously, but the prefix itself can be overridden by later options" -msgstr "" -"Incorpora FILE come immagine memdisk\n" -"Implica \"-p (memdisk)/boot/grub\" e sovrascrive qualsiasi prefisso passato\n" -"precedentemente, ma il prefisso può essere sovrascritto da opzione successive" - -#: util/grub-mkimage.c:74 -msgid "embed FILE as a device tree (DTB)\n" -msgstr "Incorpora FILE come DTB\n" - -#: util/grub-mkimage.c:76 -msgid "embed FILE as an early config" -msgstr "Incorpora FILE come configurazione primaria" - -#. TRANSLATORS: NOTE is a name of segment. -#: util/grub-mkimage.c:80 -msgid "add NOTE segment for CHRP IEEE1275" -msgstr "Aggiunge segmento NOTA per CHRP IEEE1275" - -#: util/grub-mkimage.c:81 -msgid "output a generated image to FILE [default=stdout]" -msgstr "Fornisce in output su FILE un'immagine generata [predefinito=stdout]" - -#: util/grub-mkimage.c:82 -msgid "FORMAT" -msgstr "FORMATO" - -#: util/grub-mkimage.c:100 util/grub-mkstandalone.c:62 -msgid "generate an image in FORMAT" -msgstr "Genera un'immagine nel FORMATO" - -#: util/grub-mkimage.c:101 util/grub-mkstandalone.c:63 -msgid "available formats:" -msgstr "Formati disponibili:" - -#: util/grub-mkimage.c:152 util/grub-mkstandalone.c:96 -#, c-format -msgid "unknown target format %s\n" -msgstr "formato %s dell'obiettivo sconosciuto\n" - -#: util/grub-mkimage.c:242 -msgid "[OPTION]... [MODULES]" -msgstr "[OPZIONE]... [MODULI]" - -#: util/grub-mkimage.c:243 -msgid "Make a bootable image of GRUB." -msgstr "Crea un'immagine avviabile di GRUB" - -#: util/grub-mkimage.c:273 util/grub-mkstandalone.c:309 -msgid "Target format not specified (use the -O option)." -msgstr "Formato dell'obiettivo non specificato (usare l'opzione -O)." - -#: util/grub-mkimage.c:282 -msgid "Prefix not specified (use the -p option)." -msgstr "Prefisso non specificato (usare l'opzione -p)." - -#: util/grub-mkimage.c:318 util/setup.c:793 -#, c-format -msgid "cannot close `%s': %s" -msgstr "impossibile chiudere \"%s\": %s" - -#: util/grub-mkimagexx.c:2191 -#, c-format -msgid "" -"`%s' is miscompiled: its start address is 0x%llx instead of 0x%llx: ld.gold " -"bug?" -msgstr "" -"\"%s\" non è compilato correttamente: l'indirizzo iniziale è 0x%llx invece " -"di\n" -"0x%llx: un bug di ld.gold?" - -#: util/grub-mklayout.c:53 -msgid "set input filename. Default is STDIN" -msgstr "Imposta il nome del file di input, predefinito è STDIN" - -#. TRANSLATORS: scan identifier is keyboard key symbolic name. -#: util/grub-mklayout.c:307 -#, c-format -msgid "Unknown keyboard scan identifier %s\n" -msgstr "Identificatore tasto %s sconosciuto\n" - -#. TRANSLATORS: scan code is keyboard key numeric identifier. -#: util/grub-mklayout.c:390 util/grub-mklayout.c:418 -#, c-format -msgid "Unknown keyboard scan code 0x%02x\n" -msgstr "Codice numerico 0x%02x sconosciuto\n" - -#. TRANSLATORS: this error is triggered when input doesn't contain any -#. key descriptions. -#: util/grub-mklayout.c:438 -msgid "ERROR: no valid keyboard layout found. Check the input.\n" -msgstr "" -"ERRORE: non è stata trovata alcuna disposizione di tastiera valida. " -"Controllare l'input.\n" - -#. TRANSLATORS: "one" is a shortcut for "keyboard layout". -#: util/grub-mklayout.c:478 -msgid "Generate GRUB keyboard layout from Linux console one." -msgstr "" -"Genera disposizione di tastiera GRUB a partire da quella della console Linux" - -#: util/grub-mknetdir.c:47 -msgid "root directory of TFTP server" -msgstr "directory root del server TFTP" - -#: util/grub-mknetdir.c:49 -msgid "relative subdirectory on network server" -msgstr "sotto-directory relativa sul server di rete" - -#: util/grub-mknetdir.c:88 -msgid "" -"Prepares GRUB network boot images at net_directory/subdir assuming " -"net_directory being TFTP root." -msgstr "" -"Prepara le immagini GRUB avviabili da rete in directory_di_rete/sottodir, " -"assumendo directory_di_rete come root di TFTP" - -#: util/grub-mknetdir.c:146 -#, c-format -msgid "unsupported platform %s" -msgstr "piattaforma non supportata %s" - -#. TRANSLATORS: First %s is replaced by platform name. Second one by filename. -#: util/grub-mknetdir.c:165 -#, c-format -msgid "" -"Netboot directory for %s created. Configure your DHCP server to point to %s\n" -msgstr "" -"Directory netboot per %s creata. Configurare il server DHCP affinché punti a " -"%s\n" - -#: util/grub-mkpasswd-pbkdf2.c:46 -msgid "Number of PBKDF2 iterations" -msgstr "Numero di iterazioni PBKDF2" - -#: util/grub-mkpasswd-pbkdf2.c:47 -msgid "Length of generated hash" -msgstr "Lunghezza dell'hash generato" - -#: util/grub-mkpasswd-pbkdf2.c:48 -msgid "Length of salt" -msgstr "Lunghezza del salt" - -#: util/grub-mkpasswd-pbkdf2.c:87 -msgid "Generate PBKDF2 password hash." -msgstr "Genera hash password PBKDF2" - -#: util/grub-mkpasswd-pbkdf2.c:144 util/grub-mkpasswd-pbkdf2.c:151 -msgid "failure to read password" -msgstr "lettura password non riuscita" - -#: util/grub-mkpasswd-pbkdf2.c:146 -msgid "Reenter password: " -msgstr "Reinserire la password:" - -#: util/grub-mkpasswd-pbkdf2.c:160 -msgid "passwords don't match" -msgstr "le password non corrispondono" - -#: util/grub-mkpasswd-pbkdf2.c:169 -msgid "couldn't retrieve random data for salt" -msgstr "impossibile recuperare dati casuali per il salt" - -#: util/grub-mkpasswd-pbkdf2.c:184 -#, c-format -msgid "cryptographic error number %d" -msgstr "errore di cifratura n° %d" - -#: util/grub-mkpasswd-pbkdf2.c:203 -#, c-format -msgid "PBKDF2 hash of your password is %s\n" -msgstr "L'hash PBKDF2 della password è %s\n" - -#: util/grub-mkrelpath.c:67 -msgid "No path is specified.\n" -msgstr "Nessun percorso specificato.\n" - -#: util/grub-mkrelpath.c:78 -msgid "PATH" -msgstr "PERCORSO" - -#: util/grub-mkrelpath.c:79 -msgid "Transform a system filename into GRUB one." -msgstr "Trasforma il nome file di sistema in uno di GRUB." - -#: util/grub-mkrescue.c:100 -msgid "save ROM images in DIR [optional]" -msgstr "Salva le immagini ROM in DIR [opzionale]" - -#. TRANSLATORS: xorriso is a program for creating ISOs and burning CDs. -#: util/grub-mkrescue.c:103 -msgid "use FILE as xorriso [optional]" -msgstr "Usa FILE come xorriso [opzionale]" - -#: util/grub-mkrescue.c:109 -msgid "use STRING as product name" -msgstr "Usa STRINGA come nome del prodotto" - -#: util/grub-mkrescue.c:111 -msgid "" -"enable sparc boot. Disables HFS+, APM, ARCS and boot as disk image for i386-" -"pc" -msgstr "" -"Abilita avvio sparc, disabilita HFS+, APM, ARCS e avvia come immagine disco " -"per PC i386" - -#: util/grub-mkrescue.c:112 -msgid "" -"enable ARCS (big-endian mips machines, mostly SGI) boot. Disables HFS+, APM, " -"sparc64 and boot as disk image for i386-pc" -msgstr "" -"Abilita avvio ARCS (macchine mips big-endian, principalmente SGI), " -"disabilita HFS+, APM, sparc64 e avvia come immagine disco per PC i386" - -#. TRANSLATORS: it generates one single image which is bootable through any method. -#: util/grub-mkrescue.c:125 -msgid "Make GRUB CD-ROM, disk, pendrive and floppy bootable image." -msgstr "" -"Crea un'immagine avviabile di GRUB da CD-ROM, disco, chiavetta USB o floppy" - -#: util/grub-mkrescue.c:130 -#, c-format -msgid "" -"Generates a bootable CD/USB/floppy image. Arguments other than options to " -"this program are passed to xorriso, and indicate source files, source " -"directories, or any of the mkisofs options listed by the output of `%s'." -msgstr "" -"Genera un'immagine CD/USB/dischetto avviabile. Gli argomenti non pertinenti " -"a questo programma sono passati a xorriso e indicano file sorgenti, " -"directory sorgenti o qualsiasi altra opzione di mkisofs come dall'output di " -"\"%s\"." - -#: util/grub-mkrescue.c:134 -msgid "Option -- switches to native xorriso command mode." -msgstr "L'opzione -- passa alla modalità di comando nativa di xorriso." - -#: util/grub-mkrescue.c:135 -msgid "Mail xorriso support requests to ." -msgstr "" -"Inviare le richieste di supporto riguardo xorriso a ." - -#: util/grub-mkrescue.c:221 util/grub-mkstandalone.c:114 -msgid "[OPTION] SOURCE..." -msgstr "[OPZIONE] SORGENTE..." - -#: util/grub-mkrescue.c:257 util/grub-mkrescue.c:300 util/grub-mkrescue.c:588 -#, c-format -msgid "enabling %s support ..." -msgstr "abilitazione supporto %s..." - -#: util/grub-mkrescue.c:486 -msgid "xorriso not found" -msgstr "xorriso non trovato" - -#: util/grub-mkrescue.c:623 -msgid "" -"Your xorriso doesn't support `--grub2-boot-info'. Some features are " -"disabled. Please use xorriso 1.2.9 or later." -msgstr "" -"Questa versione di xorriso non supporta \"--grub2-boot-info\": alcune " -"funzionalità sono disabilitate. Utilizzare xorriso 1.2.9 o successivi." - -#: util/grub-mkrescue.c:650 -msgid "" -"Your xorriso doesn't support `--grub2-boot-info'. Your core image is too " -"big. Boot as disk is disabled. Please use xorriso 1.2.9 or later." -msgstr "" -"Questa versione di xorriso non supporta \"--grub2-boot-info\": l'immagine " -"core è troppo grande, l'avvio come disco è disabilitato. Usare xorriso 1.2.9 " -"o successivi." - -#: util/grub-mkstandalone.c:115 -msgid "" -"Generate a standalone image (containing all modules) in the selected format" -msgstr "" -"Genera un'immagine autonoma (contenente tutti i moduli) nel formato " -"selezionato" - -#: util/grub-mkstandalone.c:115 -msgid "Graft point syntax (E.g. /boot/grub/grub.cfg=./grub.cfg) is accepted" -msgstr "" -"La sintassi per i punti d'innesto (es.: /boot/grub/grub.cfg=./grub.cfg) è " -"accettata" - -#: util/grub-mount.c:552 -msgid "IMAGE1 [IMAGE2 ...] MOUNTPOINT" -msgstr "IMMAGINE1 [IMMAGINE2 ...] PUNTODIMOUNT" - -#: util/grub-mount.c:575 -msgid "need an image and mountpoint" -msgstr "immagine e punto di mount necessari" - -#: util/grub-probe.c:731 -msgid "given argument is a system device, not a path" -msgstr "l'argomento fornito è un device di sistema, non un percorso" - -#: util/grub-probe.c:736 -msgid "separate items in output using ASCII NUL characters" -msgstr "Separa gli elementi nell'output con caratteri ASCII NUL" - -#: util/grub-probe.c:754 -#, c-format -msgid "[default=%s]" -msgstr "[predefinito=%s]" - -#: util/grub-probe.c:756 -msgid "print TARGET" -msgstr "Stampa OBIETTIVO" - -#: util/grub-probe.c:757 -msgid "available targets:" -msgstr "Obiettivi disponibili:" - -#: util/grub-probe.c:839 -msgid "[OPTION]... [PATH|DEVICE]" -msgstr "[OPZIONE]... [PERCORSO|DEVICE]" - -#: util/grub-probe.c:840 -msgid "" -"Probe device information for a given path (or device, if the -d option is " -"given)." -msgstr "" -"Cerca informazioni sul device per un percorso fornito (o device se usato con " -"l'opzione -d)." - -#: util/grub-render-label.c:60 -msgid "read text from FILE." -msgstr "Legge del testo da FILE" - -#: util/grub-render-label.c:62 -msgid "use COLOR for text" -msgstr "Usa COLORE per il testo" - -#: util/grub-render-label.c:64 -msgid "use COLOR for background" -msgstr "Usa COLORE per lo sfondo" - -#. TRANSLATORS: The result is always stored to file and -#. never shown directly, so don't use "show" as synonym for render. Use "create" if -#. "render" doesn't translate directly. -#: util/grub-render-label.c:69 -msgid "set the label to render" -msgstr "Imposta l'etichetta da creare" - -#: util/grub-render-label.c:73 -msgid "use FILE as font (PF2)." -msgstr "Utilizza FILE come tipo di carattere (PF2)" - -#. TRANSLATORS: This file takes a text and creates a graphical representation of it, -#. putting the result into .disk_label file. The result is always stored to file and -#. never shown directly, so don't use "show" as synonym for render. Use "create" if -#. "render" doesn't translate directly. -#: util/grub-render-label.c:136 -msgid "Render Apple .disk_label." -msgstr "Visualizza .disk_label Apple" - -#: util/grub-render-label.c:158 util/grub-syslinux2cfg.c:169 -msgid "Missing arguments\n" -msgstr "Argomenti mancanti\n" - -#: util/grub-script-check.c:87 -msgid "[PATH]" -msgstr "[PERCORSO]" - -#: util/grub-script-check.c:88 -msgid "Checks GRUB script configuration file for syntax errors." -msgstr "" -"Verifica la presenza di errori di sintassi nello script di configurazione " -"GRUB" - -#: util/grub-script-check.c:207 -#, c-format -msgid "Syntax error at line %u\n" -msgstr "Errore di sintassi alla riga %u\n" - -#: util/grub-script-check.c:212 -#, c-format -msgid "Script `%s' contains no commands and will do nothing\n" -msgstr "Lo script \"%s\" non contiene alcun comando e non eseguirà nulla\n" - -#: util/grub-setup.c:79 -#, c-format -msgid "use FILE as the boot image [default=%s]" -msgstr "Usa FILE come immagine di avvio [predefinito=%s]" - -#: util/grub-setup.c:81 -#, c-format -msgid "use FILE as the core image [default=%s]" -msgstr "Usa FILE come immagine core [predefinito=%s]" - -#: util/grub-setup.c:210 -msgid "No device is specified.\n" -msgstr "Nessun device specificato.\n" - -#: util/grub-setup.c:224 -msgid "" -"Set up images to boot from DEVICE.\n" -"\n" -"You should not normally run this program directly. Use grub-install instead." -msgstr "" -"Imposta le immagini affinché vengano avviate da DEVICE.\n" -"\n" -"Questo programma non dovrebbe essere eseguito direttamente. Usare grub-" -"install." - -#: util/grub-setup.c:228 -msgid "DEVICE must be an OS device (e.g. /dev/sda)." -msgstr "DEVICE deve essere un device del sistema operativo (come /dev/sda)" - -#: util/grub-setup.c:297 -#, c-format -msgid "Invalid device `%s'.\n" -msgstr "Device \"%s\" non valido.\n" - -#: util/grub-syslinux2cfg.c:64 -msgid "root directory as it will be seen on runtime [default=/]." -msgstr "Directory di root come vista durante l'esecuzione [predefinito=/]" - -#: util/grub-syslinux2cfg.c:69 -msgid "" -"current directory of syslinux as it will be seen on runtime [default is " -"parent directory of input file]." -msgstr "" -"Directory attuale di syslinux come vista durante l'esecuzione [predefinito " -"la directory superiore del file di input]" - -#: util/grub-syslinux2cfg.c:74 -msgid "write output to FILE [default=stdout]." -msgstr "Scrive l'output su FILE [predefinito=stdout]" - -#: util/grub-syslinux2cfg.c:148 -msgid "Transform syslinux config into GRUB one." -msgstr "Trasforma la configurazione syslinux in una GRUB." - -#: util/mkimage.c:688 util/mkimage.c:717 util/mkimage.c:734 -msgid "cannot compress the kernel image" -msgstr "impossibile comprimere l'immagine del kernel" - -#: util/mkimage.c:766 util/mkimage.c:1077 -#, c-format -msgid "unknown compression %d" -msgstr "compressione %d sconosciuta" - -# (ndt) boh... -#: util/mkimage.c:1088 -msgid "Decompressor is too big" -msgstr "L'estrattore è troppo grande" - -#: util/mkimage.c:1133 -#, c-format -msgid "core image is too big (0x%x > 0x%x)" -msgstr "l'immagine core è troppo grande (0x%x > 0x%x)" - -#: util/mkimage.c:1140 -#, c-format -msgid "kernel image is too big (0x%x > 0x%x)" -msgstr "l'immagine kernel è troppo grande (0x%x > 0x%x)" - -#: util/mkimage.c:1220 util/mkimage.c:1501 -#, c-format -msgid "diskboot.img size must be %u bytes" -msgstr "la dimensione di diskboot.img deve essere di %u byte" - -#: util/mkimage.c:1571 -msgid "" -"fwstart.img doesn't match the known good version. proceed at your own risk" -msgstr "" -"fwstart.img non corrisponde alla versione consciuta, procedere a proprio " -"rischio" - -#: util/mkimage.c:1575 util/mkimage.c:1601 -msgid "firmware image is too big" -msgstr "l'immagine firmware è troppo grande" - -#: util/resolve.c:93 -#, c-format -msgid "invalid line format: %s" -msgstr "formato riga non valido: %s" - -#: util/setup.c:167 -msgid "the first sector of the core file is not sector-aligned" -msgstr "Il primo settore del file core non è allineato rispetto al settore" - -#: util/setup.c:177 -msgid "non-sector-aligned data is found in the core file" -msgstr "Trovati dati non allineati rispetto al settore nel file core" - -#: util/setup.c:199 -msgid "the sectors of the core file are too fragmented" -msgstr "I settori del file core sono troppo frammentati" - -#: util/setup.c:280 -#, c-format -msgid "the size of `%s' is not %u" -msgstr "La dimensione di \"%s\" non è %u" - -#: util/setup.c:290 -#, c-format -msgid "the size of `%s' is too small" -msgstr "La dimensione di \"%s\" è troppo piccola" - -#: util/setup.c:428 -msgid "" -"Attempting to install GRUB to a disk with multiple partition labels or both " -"partition label and filesystem. This is not supported yet." -msgstr "" -"Tentativo di installare GRUB su un disco con molteplici etichette di " -"partizioni o sia con etichetta di partizione e file system. Tale pratica non " -"è ancora supportata." - -#: util/setup.c:441 -#, c-format -msgid "unable to identify a filesystem in %s; safety check can't be performed" -msgstr "" -"Impossibile identificare un file system in %s; non è possibile eseguire un " -"controllo di sicurezza" - -#. TRANSLATORS: Filesystem may reserve the space just GRUB isn't sure about it. -#: util/setup.c:445 -#, c-format -msgid "" -"%s appears to contain a %s filesystem which isn't known to reserve space for " -"DOS-style boot. Installing GRUB there could result in FILESYSTEM " -"DESTRUCTION if valuable data is overwritten by grub-setup (--skip-fs-probe " -"disables this check, use at your own risk)" -msgstr "" -"Sembra che %s contenga un file system %s di cui non è noto se sia in grado " -"di riservare dello spazio per l'avvio in stile DOS. Installare GRUB qui " -"potrebbe portare alla DISTRUZIONE del file system se dati importanti vengono " -"sovrascritti da grub-setup (--skip-fs-probe disabilita questo controllo, " -"usare a proprio rischio)." - -#. TRANSLATORS: Partition map may reserve the space just GRUB isn't sure about it. -#: util/setup.c:458 -#, c-format -msgid "" -"%s appears to contain a %s partition map which isn't known to reserve space " -"for DOS-style boot. Installing GRUB there could result in FILESYSTEM " -"DESTRUCTION if valuable data is overwritten by grub-setup (--skip-fs-probe " -"disables this check, use at your own risk)" -msgstr "" -"Sembra che %s contenga una mappa delle partizioni %s di cui non è noto se " -"sia in grado di riservare dello spazio per l'avvio in stile DOS. Installare " -"GRUB qui potrebbe portare alla DISTRUZIONE del file system se dati " -"importanti vengono sovrascritti da grub-setup (--skip-fs-probe disabilita " -"questo controllo, usare a proprio rischio)." - -#: util/setup.c:465 -#, c-format -msgid "" -"%s appears to contain a %s partition map and LDM which isn't known to be a " -"safe combination. Installing GRUB there could result in FILESYSTEM " -"DESTRUCTION if valuable data is overwritten by grub-setup (--skip-fs-probe " -"disables this check, use at your own risk)" -msgstr "" -"Sembra che %s contenga una mappa delle partizioni %s e LDM di cui non è noto " -"se sia una combinazione sicura. Installare GRUB qui potrebbe portare alla " -"DISTRUZIONE del file system se dati importanti vengono sovrascritti da grub-" -"setup (--skip-fs-probe disabilita questo controllo, usare a proprio rischio)." - -#: util/setup.c:478 -msgid "" -"Attempting to install GRUB to a partitionless disk or to a partition. This " -"is a BAD idea." -msgstr "" -"Tentativo di installare GRUB su un disco privo di partizioni o su una " -"partizione. Tale pratica non è raccomandabile." - -#: util/setup.c:483 -msgid "" -"Attempting to install GRUB to a disk with multiple partition labels. This " -"is not supported yet." -msgstr "" -"Tentativo di installare GRUB su un disco con molteplici etichette di " -"partizioni. Tale pratica non è ancora supportata." - -#: util/setup.c:489 -#, c-format -msgid "Partition style `%s' doesn't support embedding" -msgstr "La partizione in stile \"%s\" non supporta l'embed" - -#: util/setup.c:496 -#, c-format -msgid "File system `%s' doesn't support embedding" -msgstr "Il file system \"%s\" non supporta l'embed" - -#: util/setup.c:537 -msgid "Your embedding area is unusually small. core.img won't fit in it." -msgstr "" -"L'area di embed è troppo piccola. Il file core.img non può esservi contenuto." - -#: util/setup.c:559 util/setup.c:725 util/setup.c:844 -msgid "no terminator in the core image" -msgstr "Nessun terminatore nell'immagine core" - -#: util/setup.c:622 -msgid "core.img version mismatch" -msgstr "versione core.img non corrispondente" - -#: util/setup.c:675 -msgid "" -"embedding is not possible, but this is required for RAID and LVM install" -msgstr "" -"L'embed non è possibile, ma è richiesto per l'installazione su RAID e LVM" - -#: util/setup.c:682 -#, c-format -msgid "can't determine filesystem on %s" -msgstr "impossibile determinare il file system su %s" - -#: util/setup.c:685 -#, c-format -msgid "filesystem `%s' doesn't support blocklists" -msgstr "il file system \"%s\" non supporta le blocklist" - -#. TRANSLATORS: cross-disk refers to /boot being on one disk -#. but MBR on another. -#: util/setup.c:694 -msgid "embedding is not possible, but this is required for cross-disk install" -msgstr "" -"L'embed non è possibile, ma è richiesto per l'installazione su più dischi" - -#: util/setup.c:700 -msgid "" -"Embedding is not possible. GRUB can only be installed in this setup by " -"using blocklists. However, blocklists are UNRELIABLE and their use is " -"discouraged." -msgstr "" -"L'embed non è possibile. GRUB può essere installato con questa " -"configurazione solo usando blocklist. Le blocklist non sono comunque " -"affidabili e ne viene sconsigliato l'uso." - -# (ndt) un po' libera... -#. TRANSLATORS: Here GRUB refuses to continue with blocklist install. -#: util/setup.c:705 -msgid "will not proceed with blocklists" -msgstr "impossibile procedere con le blocklist" - -#: util/setup.c:817 util/setup.c:837 -msgid "blocklists are invalid" -msgstr "blocklist non valide" - -#: util/setup.c:847 -msgid "blocklists are incomplete" -msgstr "blocklist incomplete" diff --git a/thirdparty/grub-2.04/po/ja.gmo b/thirdparty/grub-2.04/po/ja.gmo deleted file mode 100644 index 45823c1f43503cb19afa8a16c8bfa2a5d6922de7..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 22140 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, 2011. -# -msgid "" -msgstr "" -"Project-Id-Version: grub 2.0.0-pre6\n" -"Report-Msgid-Bugs-To: bug-grub@gnu.org\n" -"POT-Creation-Date: 2019-07-04 16:09+0200\n" -"PO-Revision-Date: 2012-10-11 05:55+0900\n" -"Last-Translator: Takeshi Hamasaki \n" -"Language-Team: Japanese \n" -"Language: ja\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Bugs: Report translation errors to the Language-Team address.\n" -"Plural-Forms: nplurals=1; plural=0;\n" - -#: grub-core/bus/usb/serial/ftdi.c:145 grub-core/bus/usb/serial/pl2303.c:158 -#: grub-core/term/ieee1275/escc.c:169 grub-core/term/ns8250.c:202 -msgid "unsupported serial port speed" -msgstr "サãƒãƒ¼ãƒˆã•れã¦ã„ãªã„シリアルãƒãƒ¼ãƒˆã®é€Ÿåº¦ã§ã™" - -#: grub-core/bus/usb/serial/ftdi.c:151 grub-core/bus/usb/serial/pl2303.c:164 -#: grub-core/term/efi/serial.c:116 grub-core/term/ieee1275/escc.c:175 -#: grub-core/term/ns8250.c:208 grub-core/term/serial.c:227 -#: grub-core/term/serial.c:243 -msgid "unsupported serial port parity" -msgstr "サãƒãƒ¼ãƒˆã•れã¦ã„ãªã„シリアルãƒãƒ¼ãƒˆã®ãƒ‘リティã§ã™" - -#: grub-core/bus/usb/serial/ftdi.c:157 grub-core/bus/usb/serial/pl2303.c:170 -#: grub-core/term/efi/serial.c:122 grub-core/term/ieee1275/escc.c:181 -#: grub-core/term/ns8250.c:213 grub-core/term/serial.c:267 -msgid "unsupported serial port stop bits number" -msgstr "サãƒãƒ¼ãƒˆã•れã¦ã„ãªã„シリアルãƒãƒ¼ãƒˆã®ã‚¹ãƒˆãƒƒãƒ—ビット値ã§ã™" - -#: grub-core/bus/usb/serial/ftdi.c:161 grub-core/bus/usb/serial/pl2303.c:174 -#: grub-core/term/efi/serial.c:126 grub-core/term/ieee1275/escc.c:185 -#: grub-core/term/ns8250.c:217 -msgid "unsupported serial port word length" -msgstr "サãƒãƒ¼ãƒˆã•れã¦ã„ãªã„シリアルãƒãƒ¼ãƒˆã®ãƒ¯ãƒ¼ãƒ‰é•·ã§ã™" - -#: grub-core/commands/acpi.c:42 -msgid "Don't load host tables specified by comma-separated list." -msgstr "カンマ区切りã®ãƒªã‚¹ãƒˆã§æŒ‡å®šã•れãŸãƒ›ã‚¹ãƒˆãƒ†ãƒ¼ãƒ–ルをロードã—ã¾ã›ã‚“。" - -#: grub-core/commands/acpi.c:45 -msgid "Load only tables specified by comma-separated list." -msgstr "カンマ区切りã®ãƒªã‚¹ãƒˆã§æŒ‡å®šã•れãŸãƒ†ãƒ¼ãƒ–ルã®ã¿ãƒ­ãƒ¼ãƒ‰ã—ã¾ã™ã€‚" - -#: grub-core/commands/acpi.c:46 -msgid "Export version 1 tables to the OS." -msgstr "ãƒãƒ¼ã‚¸ãƒ§ãƒ³1 テーブルをOSã«ã‚¨ã‚¯ã‚¹ãƒãƒ¼ãƒˆã—ã¾ã™ã€‚" - -#: grub-core/commands/acpi.c:47 -msgid "Export version 2 and version 3 tables to the OS." -msgstr "ãƒãƒ¼ã‚¸ãƒ§ãƒ³2, ãƒãƒ¼ã‚¸ãƒ§ãƒ³3 テーブルをOSã«ã‚¨ã‚¯ã‚¹ãƒãƒ¼ãƒˆã—ã¾ã™ã€‚" - -#: grub-core/commands/acpi.c:48 -msgid "Set OEMID of RSDP, XSDT and RSDT." -msgstr "RSDP, XSDT, RSDT ã® OEMID を設定ã™ã‚‹" - -#: grub-core/commands/acpi.c:50 -msgid "Set OEMTABLE ID of RSDP, XSDT and RSDT." -msgstr "RSDP, XSDT, RSDT ã® OEMTABLE ID を設定ã™ã‚‹" - -#: grub-core/commands/acpi.c:52 -msgid "Set OEMTABLE revision of RSDP, XSDT and RSDT." -msgstr "RSDP, XSDT, RSDT ã® OEMTABLE リビジョンを設定ã™ã‚‹" - -#: grub-core/commands/acpi.c:54 -msgid "Set creator field of RSDP, XSDT and RSDT." -msgstr "RSDP, XSDT, RSDT ã®è£½é€ è€…フィールドを設定ã™ã‚‹" - -#: grub-core/commands/acpi.c:56 -msgid "Set creator revision of RSDP, XSDT and RSDT." -msgstr "RSDP, XSDT, RSDT ã®è£½é€ è€…リビジョンを設定ã™ã‚‹" - -#. TRANSLATORS: "hangs" here is a noun, not a verb. -#: grub-core/commands/acpi.c:58 -#, fuzzy -msgid "" -"Don't update EBDA. May fix failures or hangs on some BIOSes but makes it " -"ineffective with OS not receiving RSDP from GRUB." -msgstr "" -"EBDAをアップデートã—ãªã„ã§ä¸‹ã•ã„。ã“ã®æ“作ã«ã‚ˆã‚Šã€æ¬ é™¥ãŒç›´ã‚‹ã“ã¨ã‚‚ã€BIOSãŒãƒ" -"ングã™ã‚‹ã“ã¨ã‚‚ã‚ã‚‹ã‹ã‚‚ã—れã¾ã›ã‚“。GRUBã‹ã‚‰RSDPã‚’å—ã‘å–ã£ã¦ã„ãªã„OSã§ã¯ã€ã“ã®" -"æ“作ã¯ç„¡åйã§ã™ã€‚" - -#: grub-core/commands/acpi.c:650 grub-core/commands/acpi.c:667 -#: grub-core/commands/i386/pc/play.c:105 grub-core/commands/keylayouts.c:230 -#: grub-core/commands/keylayouts.c:245 grub-core/commands/keylayouts.c:263 -#: grub-core/commands/verifiers.c:156 grub-core/efiemu/loadcore.c:350 -#: grub-core/kern/elf.c:117 grub-core/kern/elfXX.c:29 -#: grub-core/kern/elfXX.c:156 grub-core/loader/arm/linux.c:319 -#: grub-core/loader/arm64/linux.c:330 grub-core/loader/arm64/xen_boot.c:356 -#: grub-core/loader/efi/chainloader.c:276 -#: grub-core/loader/efi/chainloader.c:297 -#: grub-core/loader/efi/chainloader.c:329 grub-core/loader/efi/fdt.c:138 -#: grub-core/loader/i386/bsd.c:1276 grub-core/loader/i386/bsd.c:2116 -#: grub-core/loader/i386/bsdXX.c:20 grub-core/loader/i386/bsdXX.c:36 -#: grub-core/loader/i386/bsdXX.c:63 grub-core/loader/i386/bsdXX.c:357 -#: grub-core/loader/i386/bsdXX.c:376 grub-core/loader/i386/bsdXX.c:519 -#: grub-core/loader/i386/bsdXX.c:535 grub-core/loader/i386/bsdXX.c:615 -#: grub-core/loader/i386/bsdXX.c:638 -#: grub-core/loader/i386/coreboot/chainloader.c:112 -#: grub-core/loader/i386/coreboot/chainloader.c:148 -#: grub-core/loader/i386/coreboot/chainloader.c:170 -#: grub-core/loader/i386/linux.c:667 grub-core/loader/i386/linux.c:788 -#: grub-core/loader/i386/linux.c:1005 grub-core/loader/i386/multiboot_mbi.c:171 -#: grub-core/loader/i386/pc/chainloader.c:202 -#: grub-core/loader/i386/pc/linux.c:149 grub-core/loader/i386/pc/linux.c:320 -#: grub-core/loader/i386/pc/linux.c:362 grub-core/loader/i386/pc/plan9.c:457 -#: grub-core/loader/i386/pc/plan9.c:550 grub-core/loader/i386/pc/plan9.c:566 -#: grub-core/loader/i386/xen.c:934 grub-core/loader/i386/xen_file.c:72 -#: grub-core/loader/i386/xen_fileXX.c:43 grub-core/loader/i386/xen_fileXX.c:186 -#: grub-core/loader/i386/xen_fileXX.c:339 grub-core/loader/ia64/efi/linux.c:423 -#: grub-core/loader/ia64/efi/linux.c:471 grub-core/loader/linux.c:286 -#: grub-core/loader/macho.c:84 grub-core/loader/macho.c:109 -#: grub-core/loader/machoXX.c:33 grub-core/loader/machoXX.c:46 -#: grub-core/loader/machoXX.c:76 grub-core/loader/machoXX.c:116 -#: grub-core/loader/machoXX.c:131 grub-core/loader/machoXX.c:147 -#: grub-core/loader/machoXX.c:196 grub-core/loader/machoXX.c:317 -#: grub-core/loader/multiboot.c:434 grub-core/loader/multiboot_elfxx.c:171 -#: grub-core/loader/multiboot_elfxx.c:234 -#: grub-core/loader/multiboot_elfxx.c:278 grub-core/loader/multiboot_mbi2.c:129 -#: grub-core/loader/xnu.c:737 grub-core/loader/xnu.c:795 -#: grub-core/loader/xnu.c:816 grub-core/loader/xnu.c:871 -#: grub-core/loader/xnu.c:914 grub-core/loader/xnu.c:952 -#: grub-core/loader/xnu_resume.c:68 grub-core/loader/xnu_resume.c:153 -#: grub-core/loader/xnu_resume.c:165 util/grub-mkimagexx.c:2288 -#, fuzzy, c-format -msgid "premature end of file %s" -msgstr "コメント内ã§ãƒ•ァイル終端 (EOF) ã«é”ã—ã¾ã—ãŸ" - -#: grub-core/commands/acpi.c:779 -#, fuzzy -msgid "" -"[-1|-2] [--exclude=TABLE1,TABLE2|--load-only=TABLE1,TABLE2] FILE1 [FILE2] " -"[...]" -msgstr "" -"[-1|-2] [--exclude=TABLE1,TABLE2|--load-only=table1,table2] FILE1 [FILE2] " -"[...]" - -#: grub-core/commands/acpi.c:782 -msgid "Load host ACPI tables and tables specified by arguments." -msgstr "å¼•æ•°ã§æŒ‡å®šã•れãŸãƒ†ãƒ¼ãƒ–ルã¨ãƒ›ã‚¹ãƒˆ ACPI テーブルをロードã—ã¦ãã ã•ã„。" - -#: grub-core/commands/acpihalt.c:368 grub-core/kern/err.c:110 -#, c-format -msgid "error: %s.\n" -msgstr "エラー: %s。\n" - -#: grub-core/commands/acpihalt.c:368 grub-core/kern/emu/misc.c:95 -#: grub-core/kern/emu/misc.c:105 grub-core/kern/emu/misc.c:134 -#: grub-core/kern/emu/mm.c:34 grub-core/kern/emu/mm.c:62 -#: grub-core/kern/mm.c:374 grub-core/lib/relocator.c:1282 -#: grub-core/lib/relocator.c:1439 grub-core/lib/relocator.c:1538 -#: grub-core/loader/arm/linux.c:259 grub-core/loader/arm64/linux.c:265 -#: grub-core/loader/arm64/linux.c:321 grub-core/loader/arm64/linux.c:340 -#: grub-core/loader/arm64/xen_boot.c:344 grub-core/loader/arm64/xen_boot.c:367 -#: grub-core/loader/efi/chainloader.c:289 grub-core/osdep/unix/dl.c:48 -#: grub-core/osdep/windows/dl.c:46 grub-core/script/lexer.c:156 -#: grub-core/script/lexer.c:182 -#, fuzzy -msgid "out of memory" -msgstr "メモリをダンプã™ã‚‹" - -#: grub-core/commands/acpihalt.c:374 grub-core/disk/cryptodisk.c:587 -#: grub-core/disk/cryptodisk.c:632 grub-core/kern/emu/hostdisk.c:307 -#: grub-core/kern/emu/hostfs.c:149 grub-core/kern/emu/misc.c:200 -#: grub-core/osdep/linux/ofpath.c:195 grub-core/osdep/linux/ofpath.c:521 -#: grub-core/osdep/linux/ofpath.c:534 util/glue-efi.c:80 util/glue-efi.c:94 -#: util/grub-editenv.c:155 util/grub-fstest.c:577 -#: util/grub-install-common.c:943 util/grub-mkrescue.c:634 -#: util/grub-mkrescue.c:888 util/grub-mount.c:506 util/grub-render-label.c:176 -#: util/misc.c:95 util/setup.c:814 util/setup.c:833 -#, fuzzy, c-format -msgid "cannot read `%s': %s" -msgstr " @FILE オプションを FILE ã‹ã‚‰èª­ã¿è¾¼ã‚€\n" - -#. TRANSLATORS: It's computer shutdown using ACPI, not disabling ACPI. -#: grub-core/commands/acpihalt.c:452 -msgid "ACPI shutdown failed" -msgstr "ACPI シャットダウン失敗" - -#: grub-core/commands/arc/lsdev.c:51 -#, fuzzy -msgid "List devices." -msgstr "Bluetooth デãƒã‚¤ã‚¹" - -#: grub-core/commands/blocklist.c:122 grub-core/commands/cat.c:57 -#: grub-core/commands/configfile.c:35 grub-core/commands/efi/loadbios.c:168 -#: grub-core/commands/file.c:159 grub-core/commands/hexdump.c:47 -#: grub-core/commands/legacycfg.c:209 grub-core/commands/legacycfg.c:315 -#: grub-core/commands/minicmd.c:44 grub-core/commands/syslinuxcfg.c:146 -#: grub-core/commands/testload.c:58 grub-core/commands/testspeed.c:52 -#: grub-core/disk/loopback.c:93 grub-core/efiemu/main.c:293 -#: grub-core/font/font_cmd.c:32 grub-core/kern/emu/hostdisk.c:519 -#: grub-core/loader/arm/linux.c:364 grub-core/loader/arm/linux.c:409 -#: grub-core/loader/arm/linux.c:472 grub-core/loader/arm64/linux.c:243 -#: grub-core/loader/arm64/linux.c:297 grub-core/loader/arm64/xen_boot.c:398 -#: grub-core/loader/arm64/xen_boot.c:411 grub-core/loader/arm64/xen_boot.c:462 -#: grub-core/loader/efi/chainloader.c:216 grub-core/loader/i386/bsd.c:1462 -#: grub-core/loader/i386/bsd.c:1807 grub-core/loader/i386/bsd.c:2085 -#: grub-core/loader/i386/coreboot/chainloader.c:438 -#: grub-core/loader/i386/linux.c:656 grub-core/loader/i386/linux.c:1041 -#: grub-core/loader/i386/pc/chainloader.c:290 -#: grub-core/loader/i386/pc/freedos.c:105 grub-core/loader/i386/pc/linux.c:138 -#: grub-core/loader/i386/pc/linux.c:400 grub-core/loader/i386/pc/ntldr.c:85 -#: grub-core/loader/i386/pc/plan9.c:409 -#: grub-core/loader/i386/pc/pxechainloader.c:94 -#: grub-core/loader/i386/pc/truecrypt.c:96 grub-core/loader/i386/xen.c:641 -#: grub-core/loader/i386/xen.c:768 grub-core/loader/i386/xen.c:844 -#: grub-core/loader/i386/xen.c:854 grub-core/loader/i386/xnu.c:488 -#: grub-core/loader/ia64/efi/linux.c:459 grub-core/loader/ia64/efi/linux.c:539 -#: grub-core/loader/mips/linux.c:238 grub-core/loader/mips/linux.c:429 -#: grub-core/loader/multiboot.c:322 grub-core/loader/multiboot.c:374 -#: grub-core/loader/multiboot.c:384 -#: grub-core/loader/powerpc/ieee1275/linux.c:269 -#: grub-core/loader/powerpc/ieee1275/linux.c:341 -#: grub-core/loader/sparc64/ieee1275/linux.c:305 -#: grub-core/loader/sparc64/ieee1275/linux.c:381 grub-core/loader/xnu.c:351 -#: grub-core/loader/xnu.c:460 grub-core/loader/xnu.c:778 -#: grub-core/loader/xnu.c:892 grub-core/loader/xnu.c:1277 -#: grub-core/loader/xnu.c:1427 grub-core/loader/xnu.c:1453 -#: grub-core/video/readers/jpeg.c:812 grub-core/video/readers/png.c:1123 -msgid "filename expected" -msgstr "" - -#. TRANSLATORS: "embed" is a verb (command description). " -#: grub-core/commands/blocklist.c:154 grub-core/commands/cat.c:163 -#: grub-core/commands/configfile.c:65 grub-core/commands/configfile.c:68 -#: grub-core/commands/configfile.c:74 grub-core/commands/configfile.c:80 -#: grub-core/commands/configfile.c:86 grub-core/commands/hashsum.c:34 -#: grub-core/commands/legacycfg.c:834 grub-core/commands/legacycfg.c:841 -#: grub-core/commands/legacycfg.c:846 grub-core/commands/legacycfg.c:851 -#: grub-core/commands/macbless.c:222 grub-core/commands/minicmd.c:198 -#: grub-core/commands/syslinuxcfg.c:186 grub-core/commands/syslinuxcfg.c:194 -#: grub-core/commands/syslinuxcfg.c:200 grub-core/commands/syslinuxcfg.c:206 -#: grub-core/commands/testload.c:163 grub-core/efiemu/main.c:312 -#: grub-core/kern/emu/main.c:100 grub-core/kern/emu/main.c:103 -#: grub-core/loader/i386/bsd.c:2137 grub-core/loader/i386/bsd.c:2140 -#: grub-core/loader/i386/bsd.c:2143 -#: grub-core/loader/i386/coreboot/chainloader.c:505 -#: grub-core/loader/ia64/efi/linux.c:594 include/grub/util/install.h:32 -#: include/grub/util/install.h:64 util/grub-glue-efi.c:52 -#: util/grub-glue-efi.c:54 util/grub-glue-efi.c:56 util/grub-install.c:254 -#: util/grub-install.c:301 util/grub-mkfont.c:936 util/grub-mkimage.c:68 -#: util/grub-mkimage.c:74 util/grub-mkimage.c:76 util/grub-mkimage.c:78 -#: util/grub-mkimage.c:81 util/grub-mklayout.c:52 util/grub-mklayout.c:54 -#: util/grub-mkrescue.c:97 util/grub-mkrescue.c:101 util/grub-mkrescue.c:104 -#: util/grub-mkrescue.c:105 util/grub-mkrescue.c:106 -#: util/grub-mkstandalone.c:47 util/grub-mkstandalone.c:49 -#: util/grub-probe.c:732 util/grub-render-label.c:59 -#: util/grub-render-label.c:70 util/grub-render-label.c:72 util/grub-setup.c:78 -#: util/grub-setup.c:80 util/grub-setup.c:84 util/grub-syslinux2cfg.c:74 -#: util/grub-syslinux2cfg.c:147 -msgid "FILE" -msgstr "FILE" - -#: grub-core/commands/blocklist.c:154 -msgid "Print a block list." -msgstr "ブロックリストを表示ã—ã¾ã™ã€‚" - -#: grub-core/commands/boot.c:147 grub-core/commands/legacycfg.c:533 -#: grub-core/commands/legacycfg.c:574 grub-core/loader/arm64/linux.c:250 -#: grub-core/loader/i386/bsd.c:1799 grub-core/loader/i386/bsd.c:1900 -#: grub-core/loader/i386/bsd.c:2007 grub-core/loader/i386/bsd.c:2040 -#: grub-core/loader/i386/bsd.c:2089 grub-core/loader/i386/linux.c:1047 -#: grub-core/loader/i386/pc/linux.c:406 grub-core/loader/i386/xen.c:775 -#: grub-core/loader/i386/xen.c:859 grub-core/loader/ia64/efi/linux.c:545 -#: grub-core/loader/mips/linux.c:432 grub-core/loader/multiboot.c:388 -#: grub-core/loader/powerpc/ieee1275/linux.c:347 -#: grub-core/loader/sparc64/ieee1275/linux.c:387 grub-core/loader/xnu.c:572 -#: grub-core/loader/xnu.c:665 grub-core/loader/xnu.c:781 -#: grub-core/loader/xnu.c:895 grub-core/loader/xnu.c:1091 -#: grub-core/loader/xnu.c:1258 grub-core/loader/xnu.c:1289 -#: grub-core/loader/xnu.c:1430 -msgid "you need to load the kernel first" -msgstr "ã¾ãšã‚«ãƒ¼ãƒãƒ«ã‚’ロードã™ã‚‹å¿…è¦ãŒã‚りã¾ã™" - -#: grub-core/commands/boot.c:189 -msgid "Boot an operating system." -msgstr "オペレーティングシステムを起動ã—ã¾ã™ã€‚" - -#: grub-core/commands/boottime.c:36 -#: grub-core/commands/i386/coreboot/cb_timestamps.c:108 -msgid "No boot time statistics is available\n" -msgstr "" - -#: grub-core/commands/boottime.c:59 -msgid "Show boot time statistics." -msgstr "" - -#: grub-core/commands/cacheinfo.c:40 -#, c-format -msgid "Disk cache statistics: hits = %lu (%lu.%02lu%%), misses = %lu\n" -msgstr "" - -#: grub-core/commands/cacheinfo.c:45 -msgid "No disk cache statistics available\n" -msgstr "" - -#: grub-core/commands/cacheinfo.c:56 -msgid "Get disk cache info." -msgstr "ディスクキャッシュ情報をå–å¾—ã—ã¾ã™ã€‚" - -#: grub-core/commands/cat.c:33 -msgid "Accept DOS-style CR/NL line endings." -msgstr "DOSスタイルã®CR/NL行末コードをå—ã‘付ã‘ã¾ã™ã€‚" - -#: grub-core/commands/cat.c:163 grub-core/commands/minicmd.c:198 -msgid "Show the contents of a file." -msgstr "ファイルã®å†…容を表示ã—ã¾ã™ã€‚" - -#: grub-core/commands/cmp.c:43 grub-core/commands/i386/pc/drivemap.c:239 -#: grub-core/commands/i386/wrmsr.c:60 grub-core/commands/iorw.c:85 -#: grub-core/commands/memrw.c:84 grub-core/commands/password.c:75 -#: grub-core/commands/password_pbkdf2.c:94 grub-core/commands/pgp.c:826 -#: grub-core/commands/regexp.c:113 grub-core/mmap/mmap.c:517 -#: grub-core/net/dns.c:639 -msgid "two arguments expected" -msgstr "2ã¤ã®å¼•æ•°ãŒå¿…è¦ã§ã™" - -#: grub-core/commands/cmp.c:45 -#, c-format -msgid "Compare file `%s' with `%s':\n" -msgstr "ファイル `%s' 㨠`%s' を比較:\n" - -#: grub-core/commands/cmp.c:54 -#, c-format -msgid "Files differ in size: %llu [%s], %llu [%s]\n" -msgstr "" - -#: grub-core/commands/cmp.c:81 -#, c-format -msgid "Files differ at the offset %llu: 0x%x [%s], 0x%x [%s]\n" -msgstr "" - -#. TRANSLATORS: it's always exactly 2 files. -#: grub-core/commands/cmp.c:93 -msgid "The files are identical.\n" -msgstr "2ã¤ã®ãƒ•ァイルã¯åŒã˜ã‚‚ã®ã§ã™ã€‚\n" - -#: grub-core/commands/cmp.c:113 -msgid "FILE1 FILE2" -msgstr "FILE1 FILE2" - -#: grub-core/commands/cmp.c:113 -msgid "Compare two files." -msgstr "2ã¤ã®ãƒ•ァイルを比較ã—ã¾ã™ã€‚" - -#: grub-core/commands/configfile.c:65 -msgid "Load another config file." -msgstr "ä»–ã®è¨­å®šãƒ•ァイルをロードã—ã¾ã™ã€‚" - -#: grub-core/commands/configfile.c:69 grub-core/commands/configfile.c:87 -msgid "Load another config file without changing context." -msgstr "コンテキストを変更ã›ãšã«ä»–ã®è¨­å®šãƒ•ァイルをロードã—ã¾ã™ã€‚" - -#: grub-core/commands/configfile.c:75 -#, fuzzy -msgid "" -"Load another config file without changing context but take only menu entries." -msgstr "" -"コンテキストを変ãˆãšãƒ¡ãƒ‹ãƒ¥ãƒ¼ã‚¨ãƒ³ãƒˆãƒªã®ã¿ã‚’使ã£ã¦åˆ¥ã®è¨­å®šãƒ•ァイルを読ã¿è¾¼ã¿ã¾" -"ã™ã€‚" - -#: grub-core/commands/configfile.c:81 -#, fuzzy -msgid "Load another config file but take only menu entries." -msgstr "" -"コンテキストを変ãˆãšãƒ¡ãƒ‹ãƒ¥ãƒ¼ã‚¨ãƒ³ãƒˆãƒªã®ã¿ã‚’使ã£ã¦åˆ¥ã®è¨­å®šãƒ•ァイルを読ã¿è¾¼ã¿ã¾" -"ã™ã€‚" - -#: grub-core/commands/date.c:141 -msgid "[[year-]month-day] [hour:minute[:second]]" -msgstr "[[å¹´-]月-æ—¥] [時:分[:ç§’]]" - -#: grub-core/commands/date.c:142 -#, fuzzy -msgid "Display/set current datetime." -msgstr "ç¾åœ¨æ—¥æ™‚を表示/設定ã™ã‚‹ã‚³ãƒžãƒ³ãƒ‰ã€‚" - -#: grub-core/commands/echo.c:30 -msgid "Do not output the trailing newline." -msgstr "æœ«å°¾ã®æ”¹è¡Œã‚’出力ã—ãªã„。" - -#: grub-core/commands/echo.c:31 -msgid "Enable interpretation of backslash escapes." -msgstr "ãƒãƒƒã‚¯ã‚¹ãƒ©ãƒƒã‚·ãƒ¥ã«ã‚ˆã‚‹ã‚¨ã‚¹ã‚±ãƒ¼ãƒ—を有効ã«ã™ã‚‹ã€‚" - -#: grub-core/commands/echo.c:134 -msgid "[-e|-n] STRING" -msgstr "[-e|-n] 文字列" - -#: grub-core/commands/echo.c:134 -msgid "Display a line of text." -msgstr "1行ã®ãƒ†ã‚­ã‚¹ãƒˆã‚’表示ã™ã‚‹ã€‚" - -#: grub-core/commands/efi/efifwsetup.c:82 -msgid "Reboot into firmware setup menu." -msgstr "" - -#: grub-core/commands/efi/fixvideo.c:107 -msgid "Fix video problem." -msgstr "ビデオ出力ã®å•題を修正ã™ã‚‹ã€‚" - -#: grub-core/commands/efi/loadbios.c:52 -msgid "ROM image is present." -msgstr "ROMイメージãŒå­˜åœ¨ã—ã¾ã™ã€‚" - -#: grub-core/commands/efi/loadbios.c:70 -msgid "Can't enable ROM area." -msgstr "ROM領域を有効ã«ã§ãã¾ã›ã‚“。" - -#: grub-core/commands/efi/loadbios.c:209 -msgid "" -"Create BIOS-like structures for backward compatibility with existing OS." -msgstr "" - -#: grub-core/commands/efi/loadbios.c:214 -msgid "BIOS_DUMP [INT10_DUMP]" -msgstr "" - -#: grub-core/commands/efi/loadbios.c:215 -msgid "Load BIOS dump." -msgstr "BIOSã®ãƒ€ãƒ³ãƒ—リストをロードã™ã‚‹ã€‚" - -#: grub-core/commands/efi/shim_lock.c:76 -#, c-format -msgid "module cannot be loaded in UEFI secure boot mode: %s" -msgstr "" - -#: grub-core/commands/efi/shim_lock.c:98 -#, c-format -msgid "cannot boot due to dangerous module in memory: %s" -msgstr "" - -#: grub-core/commands/efi/shim_lock.c:116 -msgid "bad shim signature" -msgstr "" - -#: grub-core/commands/efi/tpm.c:149 grub-core/commands/efi/tpm.c:189 -#: grub-core/commands/efi/tpm.c:256 grub-core/commands/efi/tpm.c:306 -#, fuzzy -msgid "Command failed" -msgstr "%s: `%s' ã®ã‚¢ãƒ³ãƒžã‚¦ãƒ³ãƒˆã«å¤±æ•—\n" - -#: grub-core/commands/efi/tpm.c:151 grub-core/commands/efi/tpm.c:191 -#: grub-core/commands/efi/tpm.c:258 grub-core/commands/efi/tpm.c:308 -#, fuzzy -msgid "Invalid parameter" -msgstr "無効ãªãƒ«ãƒ¼ãƒˆãƒ‡ãƒã‚¤ã‚¹ `%s' ã§ã™" - -#: grub-core/commands/efi/tpm.c:154 grub-core/commands/efi/tpm.c:194 -#: grub-core/commands/efi/tpm.c:261 grub-core/commands/efi/tpm.c:311 -msgid "Output buffer too small" -msgstr "" - -#: grub-core/commands/efi/tpm.c:156 grub-core/commands/efi/tpm.c:196 -#: grub-core/commands/efi/tpm.c:263 grub-core/commands/efi/tpm.c:313 -#, fuzzy -msgid "TPM unavailable" -msgstr "音声デãƒã‚¤ã‚¹ãŒåˆ©ç”¨ã§ãã¾ã›ã‚“" - -#: grub-core/commands/efi/tpm.c:158 grub-core/commands/efi/tpm.c:198 -#: grub-core/commands/efi/tpm.c:265 grub-core/commands/efi/tpm.c:315 -#, fuzzy -msgid "Unknown TPM error" -msgstr "libnotify ã®åˆæœŸåŒ–ã«å¤±æ•—ã—ã¾ã—ãŸ" - -#: grub-core/commands/efi/tpm.c:240 grub-core/commands/efi/tpm.c:288 -msgid "cannot allocate TPM event buffer" -msgstr "" - -#: grub-core/commands/eval.c:63 -#, fuzzy -msgid "STRING ..." -msgstr "STRING" - -#: grub-core/commands/eval.c:64 -msgid "Evaluate arguments as GRUB commands" -msgstr "" - -#: grub-core/commands/file.c:41 -msgid "Check if FILE can be booted as i386 PAE Xen unprivileged guest kernel" -msgstr "" - -#: grub-core/commands/file.c:44 -msgid "Check if FILE can be booted as x86_64 Xen unprivileged guest kernel" -msgstr "" - -#: grub-core/commands/file.c:46 -msgid "Check if FILE can be used as Xen x86 privileged guest kernel" -msgstr "" - -#: grub-core/commands/file.c:48 -#, fuzzy -msgid "Check if FILE can be used as x86 multiboot kernel" -msgstr "-- カーãƒãƒ«ã®ãƒã‚¤ãƒŠãƒªãƒ‘ッケージ:" - -#: grub-core/commands/file.c:50 -#, fuzzy -msgid "Check if FILE can be used as x86 multiboot2 kernel" -msgstr "multiboot 2ã®ã‚«ãƒ¼ãƒãƒ«ã‚’ロードã™ã‚‹" - -#: grub-core/commands/file.c:52 -msgid "Check if FILE is ARM Linux" -msgstr "" - -#: grub-core/commands/file.c:54 -msgid "Check if FILE is ARM64 Linux" -msgstr "" - -#: grub-core/commands/file.c:56 -msgid "Check if FILE is IA64 Linux" -msgstr "" - -#: grub-core/commands/file.c:58 -msgid "Check if FILE is MIPS Linux" -msgstr "" - -#: grub-core/commands/file.c:60 -msgid "Check if FILE is MIPSEL Linux" -msgstr "" - -#: grub-core/commands/file.c:62 -msgid "Check if FILE is SPARC64 Linux" -msgstr "" - -#: grub-core/commands/file.c:64 -msgid "Check if FILE is POWERPC Linux" -msgstr "" - -#: grub-core/commands/file.c:66 -msgid "Check if FILE is x86 Linux" -msgstr "" - -#: grub-core/commands/file.c:68 -msgid "Check if FILE is x86 Linux supporting 32-bit protocol" -msgstr "" - -#: grub-core/commands/file.c:70 -msgid "Check if FILE is x86 kFreeBSD" -msgstr "" - -#: grub-core/commands/file.c:72 -msgid "Check if FILE is i386 kFreeBSD" -msgstr "" - -#: grub-core/commands/file.c:74 -msgid "Check if FILE is x86_64 kFreeBSD" -msgstr "" - -#: grub-core/commands/file.c:77 -msgid "Check if FILE is x86 kNetBSD" -msgstr "" - -#: grub-core/commands/file.c:79 -msgid "Check if FILE is i386 kNetBSD" -msgstr "" - -#: grub-core/commands/file.c:81 -msgid "Check if FILE is x86_64 kNetBSD" -msgstr "" - -#: grub-core/commands/file.c:84 -msgid "Check if FILE is i386 EFI file" -msgstr "" - -#: grub-core/commands/file.c:86 -msgid "Check if FILE is x86_64 EFI file" -msgstr "" - -#: grub-core/commands/file.c:88 -msgid "Check if FILE is IA64 EFI file" -msgstr "" - -#: grub-core/commands/file.c:90 -msgid "Check if FILE is ARM64 EFI file" -msgstr "" - -#: grub-core/commands/file.c:92 -msgid "Check if FILE is ARM EFI file" -msgstr "" - -#: grub-core/commands/file.c:94 -msgid "Check if FILE is RISC-V 32bit EFI file" -msgstr "" - -#: grub-core/commands/file.c:96 -msgid "Check if FILE is RISC-V 64bit EFI file" -msgstr "" - -#: grub-core/commands/file.c:98 -msgid "Check if FILE is hiberfil.sys in hibernated state" -msgstr "" - -#: grub-core/commands/file.c:100 -msgid "Check if FILE is x86_64 XNU (Mac OS X kernel)" -msgstr "" - -#: grub-core/commands/file.c:102 -msgid "Check if FILE is i386 XNU (Mac OS X kernel)" -msgstr "" - -#: grub-core/commands/file.c:104 -msgid "Check if FILE is XNU (Mac OS X kernel) hibernated image" -msgstr "" - -#: grub-core/commands/file.c:106 -msgid "Check if FILE is BIOS bootsector" -msgstr "" - -#. TRANSLATORS: it's a standalone boolean value, -#. opposite of "true". -#: grub-core/commands/file.c:675 grub-core/commands/i386/cmostest.c:63 -#: grub-core/commands/i386/cpuid.c:71 grub-core/commands/keystatus.c:83 -#: grub-core/commands/keystatus.c:87 grub-core/commands/keystatus.c:96 -#: grub-core/commands/test.c:436 grub-core/commands/true.c:39 -#: grub-core/script/execute.c:247 grub-core/script/execute.c:1039 -msgid "false" -msgstr "" - -#: grub-core/commands/file.c:684 -#, fuzzy -msgid "OPTIONS FILE" -msgstr " @FILE オプションを FILE ã‹ã‚‰èª­ã¿è¾¼ã‚€\n" - -#: grub-core/commands/file.c:685 -msgid "Check if FILE is of specified type." -msgstr "" - -#. TRANSLATORS: It means that the specified partition e.g. -#. hd0,msdos1=/dev/sda1 doesn't exist. -#: grub-core/commands/gptsync.c:140 grub-core/kern/disk.c:258 -#, fuzzy -msgid "no such partition" -msgstr " -W --no-warn 警告を抑止ã™ã‚‹\n" - -#: grub-core/commands/gptsync.c:240 -#, c-format -msgid "New MBR is written to `%s'\n" -msgstr "" - -#: grub-core/commands/gptsync.c:252 -msgid "DEVICE [PARTITION[+/-[TYPE]]] ..." -msgstr "DEVICE [PARTITION[+/-[TYPE]]] ..." - -#. TRANSLATORS: MBR type is one-byte partition -#. type id. -#: grub-core/commands/gptsync.c:255 -msgid "" -"Fill hybrid MBR of GPT drive DEVICE. Specified partitions will be a part of " -"hybrid MBR. Up to 3 partitions are allowed. TYPE is an MBR type. + means " -"that partition is active. Only one partition can be active." -msgstr "" -"GPTドライブ DEVICE ã®ãƒã‚¤ãƒ–リッドMBRを埋ã‚ã¾ã™ã€‚指定ã—ãŸãƒ‘ーティションãŒãƒã‚¤" -"ブリッドMBRã®ä¸€éƒ¨ã«ãªã‚Šã¾ã™ã€‚3パーティションã¾ã§åˆ©ç”¨ãŒå¯èƒ½ã§ã™ã€‚TYPEã¯MBRã®" -"タイプを示ã—ã¾ã™ã€‚+ã¯ãƒ‘ーティションãŒã‚¢ã‚¯ãƒ†ã‚£ãƒ–ãªäº‹ã‚’示ã—ã¾ã™ã€‚アクティブã«" -"ãªã‚Œã‚‹ã®ã¯ãŸã ä¸€ã¤ã®ãƒ‘ーティションã®ã¿ã§ã™ã€‚" - -#: grub-core/commands/halt.c:40 -msgid "" -"Halts the computer. This command does not work on all firmware " -"implementations." -msgstr "" -"ã‚³ãƒ³ãƒ”ãƒ¥ãƒ¼ã‚¿ã‚’åœæ­¢ã—ã¾ã™ã€‚ã“ã®ã‚³ãƒžãƒ³ãƒ‰ã¯ã™ã¹ã¦ã®ãƒ•ァームウェア実装ã§å‹•作ã™ã‚‹" -"ã¨ã¯é™ã‚Šã¾ã›ã‚“。" - -#: grub-core/commands/hashsum.c:32 -msgid "Specify hash to use." -msgstr "利用ã™ã‚‹ãƒãƒƒã‚·ãƒ¥ã‚’指定ã—ã¦ãã ã•ã„。" - -#: grub-core/commands/hashsum.c:32 -msgid "HASH" -msgstr "HASH" - -#: grub-core/commands/hashsum.c:33 -msgid "Check hashes of files with hash list FILE." -msgstr "" - -#: grub-core/commands/hashsum.c:35 -msgid "Base directory for hash list." -msgstr "ãƒãƒƒã‚·ãƒ¥ãƒªã‚¹ãƒˆã®ãƒ™ãƒ¼ã‚¹ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒª" - -#. TRANSLATORS: platform here isn't identifier. It can be translated. -#: grub-core/commands/hashsum.c:35 grub-core/commands/ls.c:150 -#: grub-core/commands/macbless.c:226 grub-core/commands/syslinuxcfg.c:51 -#: grub-core/commands/syslinuxcfg.c:54 grub-core/kern/emu/main.c:106 -#: include/grub/util/install.h:50 include/grub/util/install.h:53 -#: include/grub/util/install.h:56 include/grub/util/install.h:59 -#: util/grub-install.c:250 util/grub-install.c:252 util/grub-install.c:297 -#: util/grub-install.c:299 util/grub-mkimage.c:64 util/grub-mkimage.c:67 -#: util/grub-mknetdir.c:46 util/grub-mknetdir.c:48 util/grub-mkrescue.c:99 -#: util/grub-setup.c:82 util/grub-syslinux2cfg.c:63 util/grub-syslinux2cfg.c:65 -#: util/grub-syslinux2cfg.c:67 util/grub-syslinux2cfg.c:71 -msgid "DIR" -msgstr "" - -#: grub-core/commands/hashsum.c:37 -msgid "Don't stop after first error." -msgstr "最åˆã®ã‚¨ãƒ©ãƒ¼ã®å¾Œåœæ­¢ã—ã¾ã›ã‚“。" - -#: grub-core/commands/hashsum.c:38 -msgid "Uncompress file before checksumming." -msgstr "ãƒã‚§ãƒƒã‚¯ã‚µãƒ ã‚’計算ã™ã‚‹å‰ã«ãƒ•ァイルを解å‡ã—ã¾ã™ã€‚" - -#: grub-core/commands/hashsum.c:163 -#, fuzzy, c-format -msgid "%s: READ ERROR\n" -msgstr "libnotify ã®åˆæœŸåŒ–ã«å¤±æ•—ã—ã¾ã—ãŸ" - -#: grub-core/commands/hashsum.c:177 -#, c-format -msgid "%s: HASH MISMATCH\n" -msgstr "" - -#: grub-core/commands/hashsum.c:188 -#, c-format -msgid "%s: OK\n" -msgstr "" - -#: grub-core/commands/hashsum.c:282 -#, fuzzy -msgid "-h HASH [-c FILE [-p PREFIX]] [FILE1 [FILE2 ...]]" -msgstr "[-c FILE [-p PREFIX]] [FILE1 [FILE2 ...]]" - -#. TRANSLATORS: "hash checksum" is just to -#. be a bit more precise, you can treat it as -#. just "hash". -#: grub-core/commands/hashsum.c:287 grub-core/commands/hashsum.c:292 -#: grub-core/commands/hashsum.c:297 grub-core/commands/hashsum.c:302 -#: grub-core/commands/hashsum.c:307 grub-core/commands/hashsum.c:313 -msgid "Compute or check hash checksum." -msgstr "ãƒãƒƒã‚·ãƒ¥ãƒã‚§ãƒƒã‚¯ã‚µãƒ ã‚’計算ã¾ãŸã¯ç¢ºèªã—ã¾ã™ã€‚" - -#: grub-core/commands/hashsum.c:290 grub-core/commands/hashsum.c:295 -#: grub-core/commands/hashsum.c:300 grub-core/commands/hashsum.c:305 -#: grub-core/commands/hashsum.c:311 -msgid "[-c FILE [-p PREFIX]] [FILE1 [FILE2 ...]]" -msgstr "[-c FILE [-p PREFIX]] [FILE1 [FILE2 ...]]" - -#: grub-core/commands/hdparm.c:33 -msgid "" -"Set Advanced Power Management\n" -"(1=low, ..., 254=high, 255=off)." -msgstr "" -"Advanced Power Management を設定ã—ã¾ã™ã€‚\n" -"(1=low, ..., 254=high, 255=off)" - -#: grub-core/commands/hdparm.c:36 -#, fuzzy -msgid "Display power mode." -msgstr "エミュレーションモードåãŒã‚りã¾ã›ã‚“" - -#: grub-core/commands/hdparm.c:37 -msgid "Freeze ATA security settings until reset." -msgstr "リセットã™ã‚‹ã¾ã§ ATA セキュリティ設定をå‡çµã—ã¾ã™ã€‚" - -#: grub-core/commands/hdparm.c:39 -#, fuzzy -msgid "Display SMART health status." -msgstr "SMART ã®ãƒ˜ãƒ«ã‚¹ã‚¹ãƒ†ãƒ¼ã‚¿ã‚¹ã‚’確èªã—ã¦ãã ã•ã„。" - -#: grub-core/commands/hdparm.c:40 -msgid "" -"Set Automatic Acoustic Management\n" -"(0=off, 128=quiet, ..., 254=fast)." -msgstr "" -"Automatic Acoustic Management を設定ã—ã¾ã™ã€‚\n" -"(0=off, 128=quiet, ..., 254=fast)" - -#: grub-core/commands/hdparm.c:43 -msgid "" -"Set standby timeout\n" -"(0=off, 1=5s, 2=10s, ..., 240=20m, 241=30m, ...)." -msgstr "" -"スタンãƒã‚¤ã®ã‚¿ã‚¤ãƒ ã‚¢ã‚¦ãƒˆã‚’設定ã—ã¾ã™ã€‚\n" -"(0=off, 1=5ç§’, 2=10ç§’, ..., 240=20分, 241=30分, ...)" - -#: grub-core/commands/hdparm.c:46 -msgid "Set drive to standby mode." -msgstr "ドライブをスタンãƒã‚¤ãƒ¢ãƒ¼ãƒ‰ã«è¨­å®šã—ã¾ã™ã€‚" - -#: grub-core/commands/hdparm.c:47 -msgid "Set drive to sleep mode." -msgstr "ドライブをスリープモードã«è¨­å®šã—ã¾ã™ã€‚" - -#: grub-core/commands/hdparm.c:48 -msgid "Print drive identity and settings." -msgstr "ドライブ ID ã¨è¨­å®šã‚’å°åˆ·ã—ã¾ã™ã€‚" - -#: grub-core/commands/hdparm.c:50 -#, fuzzy -msgid "Show raw contents of ATA IDENTIFY sector." -msgstr "ATA IDENTIFY セクタã®å†…容をダンプã—ã¾ã™ã€‚" - -#: grub-core/commands/hdparm.c:52 -msgid "Disable/enable SMART (0/1)." -msgstr "SMART を無効/有効ã«ã—ã¾ã™ã€‚(0/1)" - -#: grub-core/commands/hdparm.c:53 -msgid "Do not print messages." -msgstr "メッセージを表示ã—ã¾ã›ã‚“。" - -#: grub-core/commands/hdparm.c:286 grub-core/commands/i386/rdmsr.c:68 -#: grub-core/commands/iorw.c:47 grub-core/commands/legacycfg.c:760 -#: grub-core/commands/legacycfg.c:812 grub-core/commands/macbless.c:190 -#: grub-core/commands/memrw.c:47 grub-core/commands/pgp.c:738 -#: grub-core/commands/pgp.c:792 grub-core/commands/search.c:304 -#: grub-core/commands/search_wrap.c:179 grub-core/commands/setpci.c:243 -#: grub-core/commands/sleep.c:71 grub-core/fs/zfs/zfsinfo.c:279 -#: grub-core/fs/zfs/zfsinfo.c:358 grub-core/gettext/gettext.c:492 -#: grub-core/kern/corecmd.c:65 grub-core/kern/corecmd.c:79 -#: grub-core/mmap/mmap.c:430 grub-core/net/dns.c:713 grub-core/net/dns.c:745 -#: grub-core/net/net.c:694 grub-core/net/net.c:1052 -#: grub-core/normal/context.c:194 grub-core/script/execute.c:131 -#: grub-core/term/gfxterm_background.c:136 -#, fuzzy -msgid "one argument expected" -msgstr "%s: --auto/-a オプションã«å¯¾ã—ã¦ä¸å½“ãªå¼•æ•°\n" - -#: grub-core/commands/hdparm.c:440 -msgid "[OPTIONS] DISK" -msgstr "[OPTIONS] DISK" - -#: grub-core/commands/hdparm.c:441 -msgid "Get/set ATA disk parameters." -msgstr "ATA ディスクã®è¨­å®šå€¤ã‚’å–å¾—/設定ã—ã¾ã™ã€‚" - -#: grub-core/commands/help.c:132 grub-core/lib/arg.c:109 -#: grub-core/lib/gnulib/argp-help.c:1616 -msgid "Usage:" -msgstr "ä½¿ã„æ–¹:" - -#: grub-core/commands/help.c:146 -msgid "[PATTERN ...]" -msgstr "[PATTERN ...]" - -#: grub-core/commands/help.c:147 -msgid "Show a help message." -msgstr "ヘルプを表示ã—ã¾ã™ã€‚" - -#: grub-core/commands/hexdump.c:31 -msgid "Skip offset bytes from the beginning of file." -msgstr "ファイルã®å§‹ã‚ã‹ã‚‰offsetãƒã‚¤ãƒˆã‚’スキップã—ã¾ã™ã€‚" - -#: grub-core/commands/hexdump.c:33 -msgid "Read only LENGTH bytes." -msgstr "LENGTH ãƒã‚¤ãƒˆã ã‘読ã¿å‡ºã™" - -#: grub-core/commands/hexdump.c:125 -msgid "[OPTIONS] FILE_OR_DEVICE" -msgstr "[OPTIONS] FILE_OR_DEVICE" - -#: grub-core/commands/hexdump.c:126 -#, fuzzy -msgid "Show raw contents of a file or memory." -msgstr "ファイルã¾ãŸã¯ãƒ¡ãƒ¢ãƒªã®å†…容をダンプã—ã¾ã™ã€‚" - -#: grub-core/commands/i386/cmosdump.c:58 -#, fuzzy -msgid "Show raw dump of the CMOS contents." -msgstr " --target-help ターゲット固有ã®ã‚ªãƒ—ションを表示ã™ã‚‹\n" - -#: grub-core/commands/i386/cmostest.c:108 -#: grub-core/commands/i386/cmostest.c:111 -#: grub-core/commands/i386/cmostest.c:114 -msgid "BYTE:BIT" -msgstr "" - -#: grub-core/commands/i386/cmostest.c:109 -msgid "Test bit at BYTE:BIT in CMOS." -msgstr "" - -#: grub-core/commands/i386/cmostest.c:112 -msgid "Clear bit at BYTE:BIT in CMOS." -msgstr "" - -#. TRANSLATORS: A bit may be either set (1) or clear (0). -#: grub-core/commands/i386/cmostest.c:116 -msgid "Set bit at BYTE:BIT in CMOS." -msgstr "" - -#: grub-core/commands/i386/coreboot/cb_timestamps.c:120 -msgid "Show coreboot boot time statistics." -msgstr "" - -#: grub-core/commands/i386/coreboot/cbls.c:137 -#, fuzzy -msgid "List coreboot tables." -msgstr "ä¿¡é ¼ã®ãƒ‡ãƒã‚¤ã‚¹ã‚ˆã‚Šãƒ•ァイルé€ä¿¡ã‚’許å¯" - -#. TRANSLATORS: "(default)" at the end means that this option is used if -#. no argument is specified. -#: grub-core/commands/i386/cpuid.c:36 -#, fuzzy -msgid "Check if CPU supports 64-bit (long) mode (default)." -msgstr "ロングモードフラグを確èªã™ã‚‹ï¼ˆæ—¢å®šå€¤ï¼‰" - -#: grub-core/commands/i386/cpuid.c:37 -#, fuzzy -msgid "Check if CPU supports Physical Address Extension." -msgstr "ロングモードフラグを確èªã™ã‚‹ï¼ˆæ—¢å®šå€¤ï¼‰" - -#: grub-core/commands/i386/cpuid.c:119 -msgid "Check for CPU features." -msgstr "CPUã®ä»•様を確èªã™ã‚‹" - -#. TRANSLATORS: In this file "mapping" refers to a change GRUB makes so if -#. your language doesn't have an equivalent of "mapping" you can -#. use the word like "rerouting". -#. -#: grub-core/commands/i386/pc/drivemap.c:43 -msgid "Show the current mappings." -msgstr "ç¾åœ¨ã®ãƒžãƒƒãƒ”ングを表示ã—ã¾ã™ã€‚" - -#: grub-core/commands/i386/pc/drivemap.c:44 -msgid "Reset all mappings to the default values." -msgstr "å…¨ã¦ã®ãƒžãƒƒãƒ”ングを既定値ã«ãƒªã‚»ãƒƒãƒˆã™ã‚‹" - -#: grub-core/commands/i386/pc/drivemap.c:45 -msgid "Perform both direct and reverse mappings." -msgstr "直接ã¨å転マッピングã®ä¸¡æ–¹ã‚’ãŠã“ãªã†" - -#: grub-core/commands/i386/pc/drivemap.c:184 -msgid "No drives have been remapped" -msgstr "" - -#. TRANSLATORS: This is the header of mapping list. -#. On the left is how OS will see the disks and -#. on the right current GRUB vision. -#: grub-core/commands/i386/pc/drivemap.c:191 -msgid "OS disk #num ------> GRUB/BIOS device" -msgstr "" - -#: grub-core/commands/i386/pc/drivemap.c:413 -msgid "-l | -r | [-s] grubdev osdisk." -msgstr "-l | -r | [-s] grubdev osdisk." - -#: grub-core/commands/i386/pc/drivemap.c:414 -msgid "Manage the BIOS drive mappings." -msgstr "BIOS ドライブマッピングを管ç†ã—ã¾ã™ã€‚" - -#: grub-core/commands/i386/pc/halt.c:31 -msgid "Do not use APM to halt the computer." -msgstr "ã‚³ãƒ³ãƒ”ãƒ¥ãƒ¼ã‚¿ã‚’åœæ­¢ã™ã‚‹ã®ã« APM を使用ã—ã¾ã›ã‚“。" - -#: grub-core/commands/i386/pc/halt.c:119 -msgid "Halt the system, if possible using APM." -msgstr "APM ãŒä½¿ãˆã‚‹ãªã‚‰ã€ã‚³ãƒ³ãƒ”ãƒ¥ãƒ¼ã‚¿ã‚’åœæ­¢ã—ã¦ãã ã•ã„。" - -#: grub-core/commands/i386/pc/lsapm.c:75 -#, fuzzy -msgid "no APM found" -msgstr " -W --no-warn 警告を抑止ã™ã‚‹\n" - -#: grub-core/commands/i386/pc/lsapm.c:77 -#, c-format -msgid "" -"Version %u.%u\n" -"32-bit CS = 0x%x, len = 0x%x, offset = 0x%x\n" -"16-bit CS = 0x%x, len = 0x%x\n" -"DS = 0x%x, len = 0x%x\n" -msgstr "" - -#: grub-core/commands/i386/pc/lsapm.c:86 -msgid "16-bit protected interface supported\n" -msgstr "" - -#: grub-core/commands/i386/pc/lsapm.c:87 -msgid "16-bit protected interface unsupported\n" -msgstr "" - -#: grub-core/commands/i386/pc/lsapm.c:89 -msgid "32-bit protected interface supported\n" -msgstr "" - -#: grub-core/commands/i386/pc/lsapm.c:90 -msgid "32-bit protected interface unsupported\n" -msgstr "" - -#: grub-core/commands/i386/pc/lsapm.c:92 -msgid "CPU Idle slows down processor\n" -msgstr "" - -#: grub-core/commands/i386/pc/lsapm.c:93 -msgid "CPU Idle doesn't slow down processor\n" -msgstr "" - -#: grub-core/commands/i386/pc/lsapm.c:95 -msgid "APM disabled\n" -msgstr "" - -#: grub-core/commands/i386/pc/lsapm.c:95 -#, fuzzy -msgid "APM enabled\n" -msgstr "サウンドを有効ã«ã™ã‚‹ã‹ã©ã†ã‹" - -#: grub-core/commands/i386/pc/lsapm.c:97 -msgid "APM disengaged\n" -msgstr "" - -#: grub-core/commands/i386/pc/lsapm.c:97 -msgid "APM engaged\n" -msgstr "" - -#: grub-core/commands/i386/pc/lsapm.c:107 -msgid "Show APM information." -msgstr "APM情報を表示ã™ã‚‹ã€‚" - -#. TRANSLATORS: It's musical notes, not the notes -#. you take. Play command expects arguments which can -#. be either a filename or tempo+notes. -#. This error happens if none is specified. -#: grub-core/commands/i386/pc/play.c:88 -msgid "filename or tempo and notes expected" -msgstr "" - -#: grub-core/commands/i386/pc/play.c:113 grub-core/commands/i386/pc/play.c:144 -#, fuzzy, c-format -msgid "Invalid tempo in %s" -msgstr " COMMAND 対象ã®ã‚³ãƒžãƒ³ãƒ‰ (ä»»æ„)\n" - -#: grub-core/commands/i386/pc/play.c:151 grub-core/commands/macbless.c:172 -#: grub-core/fs/archelp.c:260 grub-core/fs/bfs.c:621 grub-core/fs/bfs.c:704 -#: grub-core/fs/btrfs.c:1726 grub-core/fs/btrfs.c:1755 -#: grub-core/fs/btrfs.c:1799 grub-core/fs/btrfs.c:1882 -#: grub-core/fs/btrfs.c:1906 grub-core/fs/fshelp.c:257 grub-core/fs/jfs.c:696 -#: grub-core/fs/minix.c:426 grub-core/fs/ufs.c:544 grub-core/fs/zfs/zfs.c:2083 -#: grub-core/fs/zfs/zfs.c:2095 grub-core/fs/zfs/zfs.c:2301 -#: grub-core/net/http.c:120 -#, fuzzy, c-format -msgid "file `%s' not found" -msgstr "%s ã¯ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã§ã¯ã‚りã¾ã›ã‚“!" - -#: grub-core/commands/i386/pc/play.c:162 grub-core/commands/i386/pc/play.c:171 -#: grub-core/kern/misc.c:419 grub-core/script/execute.c:138 -#: grub-core/script/execute.c:244 -#, fuzzy -msgid "unrecognized number" -msgstr "ã‚¢ãƒ³ã‚«ãƒ¼ã®æ•°" - -#: grub-core/commands/i386/pc/play.c:190 -msgid "FILE | TEMPO [PITCH1 DURATION1] [PITCH2 DURATION2] ... " -msgstr "FILE | TEMPO [PITCH1 DURATION1] [PITCH2 DURATION2] ... " - -#: grub-core/commands/i386/pc/play.c:191 -msgid "Play a tune." -msgstr "曲を鳴らã™" - -#: grub-core/commands/i386/pc/sendkey.c:39 -#, fuzzy -msgid "set numlock mode" -msgstr " VALUE 設定ã™ã‚‹å€¤\n" - -#: grub-core/commands/i386/pc/sendkey.c:40 -#, fuzzy -msgid "set capslock mode" -msgstr " VALUE 設定ã™ã‚‹å€¤\n" - -#: grub-core/commands/i386/pc/sendkey.c:41 -#, fuzzy -msgid "set scrolllock mode" -msgstr " VALUE 設定ã™ã‚‹å€¤\n" - -#: grub-core/commands/i386/pc/sendkey.c:42 -#, fuzzy -msgid "set insert mode" -msgstr " VALUE 設定ã™ã‚‹å€¤\n" - -#: grub-core/commands/i386/pc/sendkey.c:43 -#, fuzzy -msgid "set pause mode" -msgstr " VALUE 設定ã™ã‚‹å€¤\n" - -#: grub-core/commands/i386/pc/sendkey.c:44 -msgid "press left shift" -msgstr "" - -#: grub-core/commands/i386/pc/sendkey.c:45 -msgid "press right shift" -msgstr "" - -#: grub-core/commands/i386/pc/sendkey.c:46 -msgid "press SysRq" -msgstr "" - -#: grub-core/commands/i386/pc/sendkey.c:47 -#, fuzzy -msgid "press NumLock key" -msgstr " KEY スキーマ内ã®ã‚­ãƒ¼\n" - -#: grub-core/commands/i386/pc/sendkey.c:48 -#, fuzzy -msgid "press CapsLock key" -msgstr " KEY スキーマ内ã®ã‚­ãƒ¼\n" - -#: grub-core/commands/i386/pc/sendkey.c:49 -#, fuzzy -msgid "press ScrollLock key" -msgstr " KEY スキーマ内ã®ã‚­ãƒ¼\n" - -#: grub-core/commands/i386/pc/sendkey.c:50 -#, fuzzy -msgid "press Insert key" -msgstr " KEY スキーマ内ã®ã‚­ãƒ¼\n" - -#: grub-core/commands/i386/pc/sendkey.c:51 -msgid "press left alt" -msgstr "" - -#: grub-core/commands/i386/pc/sendkey.c:52 -msgid "press right alt" -msgstr "" - -#: grub-core/commands/i386/pc/sendkey.c:53 -msgid "press left ctrl" -msgstr "" - -#: grub-core/commands/i386/pc/sendkey.c:54 -msgid "press right ctrl" -msgstr "" - -#: grub-core/commands/i386/pc/sendkey.c:55 -msgid "don't update LED state" -msgstr "" - -#: grub-core/commands/i386/pc/sendkey.c:372 -msgid "[KEYSTROKE1] [KEYSTROKE2] ..." -msgstr "" - -#. TRANSLATORS: It can emulate multiple -#. keypresses. -#: grub-core/commands/i386/pc/sendkey.c:375 -#, fuzzy -msgid "Emulate a keystroke sequence" -msgstr " 出力をエミュレートã™ã‚‹ (デフォルト %s)\n" - -#: grub-core/commands/i386/rdmsr.c:37 grub-core/commands/iorw.c:34 -#: grub-core/commands/memrw.c:33 grub-core/commands/setpci.c:73 -msgid "Save read value into variable VARNAME." -msgstr "読出ã—値を変数VARNAMEã«ä¿å­˜ã—ã¾ã™ã€‚" - -#: grub-core/commands/i386/rdmsr.c:38 grub-core/commands/iorw.c:35 -#: grub-core/commands/memrw.c:34 grub-core/commands/probe.c:40 -#: grub-core/commands/search_wrap.c:40 grub-core/commands/setpci.c:74 -#: grub-core/commands/tr.c:32 -msgid "VARNAME" -msgstr "VARNAME" - -#: grub-core/commands/i386/rdmsr.c:55 grub-core/commands/i386/rdmsr.c:60 -#: grub-core/commands/i386/rdmsr.c:65 grub-core/commands/i386/wrmsr.c:47 -#: grub-core/commands/i386/wrmsr.c:52 grub-core/commands/i386/wrmsr.c:57 -#, fuzzy -msgid "unsupported instruction" -msgstr "IM $IM_CONFIG_XINPUTRC_TYPE $IM_CONFIG_XINPUTRC を削除。" - -#: grub-core/commands/i386/rdmsr.c:77 grub-core/commands/i386/wrmsr.c:69 -#: grub-core/commands/i386/wrmsr.c:77 grub-core/net/dns.c:727 -#, fuzzy -msgid "invalid argument" -msgstr "無効ãªãƒ«ãƒ¼ãƒˆãƒ‡ãƒã‚¤ã‚¹ `%s' ã§ã™" - -#: grub-core/commands/i386/rdmsr.c:94 grub-core/commands/memrw.c:125 -#: grub-core/commands/memrw.c:129 grub-core/commands/memrw.c:133 -msgid "ADDR" -msgstr "ADDR" - -#: grub-core/commands/i386/rdmsr.c:95 -msgid "Read a CPU model specific register." -msgstr "" - -#: grub-core/commands/i386/wrmsr.c:86 -#, fuzzy -msgid "ADDR VALUE" -msgstr "ADDR VALUE [MASK]" - -#: grub-core/commands/i386/wrmsr.c:87 -msgid "Write a value to a CPU model specific register." -msgstr "" - -#: grub-core/commands/ieee1275/suspend.c:34 -msgid "Run `go' to resume GRUB." -msgstr "" - -#: grub-core/commands/ieee1275/suspend.c:45 -#, fuzzy -msgid "Return to IEEE1275 prompt." -msgstr "ãƒ¡ã‚¤ãƒ³ãƒ¡ãƒ‹ãƒ¥ãƒ¼ã«æˆ»ã‚‹ã«ã¯ã€Œå–消ã€ã‚’é¸ã³ã¾ã™ã€‚" - -#: grub-core/commands/iorw.c:123 grub-core/commands/iorw.c:127 -#: grub-core/commands/iorw.c:131 grub-core/gdb/gdb.c:79 -msgid "PORT" -msgstr "PORT" - -#: grub-core/commands/iorw.c:123 -#, fuzzy -msgid "Read 8-bit value from PORT." -msgstr "PORT ã‹ã‚‰ãƒã‚¤ãƒˆã‚’読ã¿è¾¼ã‚€ã€‚" - -#: grub-core/commands/iorw.c:127 -#, fuzzy -msgid "Read 16-bit value from PORT." -msgstr "PORT ã‹ã‚‰ãƒã‚¤ãƒˆã‚’読ã¿è¾¼ã‚€ã€‚" - -#: grub-core/commands/iorw.c:131 -#, fuzzy -msgid "Read 32-bit value from PORT." -msgstr "PORT ã‹ã‚‰ãƒã‚¤ãƒˆã‚’読ã¿è¾¼ã‚€ã€‚" - -#: grub-core/commands/iorw.c:135 grub-core/commands/iorw.c:139 -msgid "PORT VALUE [MASK]" -msgstr "PORT VALUE [MASK]" - -#: grub-core/commands/iorw.c:136 -#, fuzzy -msgid "Write 8-bit VALUE to PORT." -msgstr "ãƒã‚¤ãƒˆå€¤ VALUE ã‚’ PORT ã¸æ›¸ã込む。" - -#: grub-core/commands/iorw.c:140 -#, fuzzy -msgid "Write 16-bit VALUE to PORT." -msgstr "ãƒã‚¤ãƒˆå€¤ VALUE ã‚’ PORT ã¸æ›¸ã込む。" - -#: grub-core/commands/iorw.c:143 grub-core/commands/memrw.c:137 -#: grub-core/commands/memrw.c:141 grub-core/commands/memrw.c:145 -msgid "ADDR VALUE [MASK]" -msgstr "ADDR VALUE [MASK]" - -#: grub-core/commands/iorw.c:144 -#, fuzzy -msgid "Write 32-bit VALUE to PORT." -msgstr "ãƒã‚¤ãƒˆå€¤ VALUE ã‚’ PORT ã¸æ›¸ã込む。" - -#: grub-core/commands/keylayouts.c:215 grub-core/commands/loadenv.c:61 -#: grub-core/commands/nativedisk.c:189 grub-core/efiemu/main.c:235 -#: grub-core/font/font.c:428 grub-core/gfxmenu/gfxmenu.c:63 -#: grub-core/kern/device.c:42 grub-core/kern/dl.c:740 -#, c-format -msgid "variable `%s' isn't set" -msgstr "変数 `%s' ãŒè¨­å®šã•れã¦ã„ã¾ã›ã‚“" - -#: grub-core/commands/keylayouts.c:301 -msgid "Load a keyboard layout." -msgstr "キーボードé…列を読ã¿è¾¼ã‚€ã€‚" - -#. TRANSLATORS: "Check" in a sense that if this key is pressed then -#. "true" is returned, otherwise "false". -#: grub-core/commands/keystatus.c:32 -msgid "Check Shift key." -msgstr "Shift キーを検査ã™ã‚‹ã€‚" - -#: grub-core/commands/keystatus.c:33 -msgid "Check Control key." -msgstr "Control キーを検査ã™ã‚‹ã€‚" - -#: grub-core/commands/keystatus.c:34 -msgid "Check Alt key." -msgstr "Alt キーを検査ã™ã‚‹ã€‚" - -#. TRANSLATORS: there are 3 modifiers. -#: grub-core/commands/keystatus.c:106 -msgid "Check key modifier status." -msgstr "キー修飾å­ã®çŠ¶æ…‹ã‚’ãƒã‚§ãƒƒã‚¯ã™ã‚‹" - -#: grub-core/commands/legacycfg.c:512 grub-core/commands/legacycfg.c:526 -#: grub-core/commands/legacycfg.c:546 grub-core/commands/legacycfg.c:559 -#: grub-core/commands/time.c:43 grub-core/script/function.c:109 -#: util/grub-file.c:100 util/grub-fstest.c:57 util/grub-mount.c:69 -#, fuzzy, c-format -msgid "can't find command `%s'" -msgstr " COMMAND 対象ã®ã‚³ãƒžãƒ³ãƒ‰ (ä»»æ„)\n" - -#: grub-core/commands/legacycfg.c:813 grub-core/normal/auth.c:225 -#: util/grub-mkpasswd-pbkdf2.c:139 -msgid "Enter password: " -msgstr "パスワードを入力ã—ã¦ãã ã•ã„: " - -#. TRANSLATORS: "legacy config" means -#. "config as used by grub-legacy". -#: grub-core/commands/legacycfg.c:837 -msgid "Parse legacy config in same context" -msgstr "" - -#: grub-core/commands/legacycfg.c:842 -msgid "Parse legacy config in new context" -msgstr "" - -#: grub-core/commands/legacycfg.c:847 -#, fuzzy -msgid "Parse legacy config in same context taking only menu entries" -msgstr "" -"コンテキストを変ãˆãšãƒ¡ãƒ‹ãƒ¥ãƒ¼ã‚¨ãƒ³ãƒˆãƒªã®ã¿ã‚’使ã£ã¦åˆ¥ã®è¨­å®šãƒ•ァイルを読ã¿è¾¼ã¿ã¾" -"ã™ã€‚" - -#: grub-core/commands/legacycfg.c:852 -#, fuzzy -msgid "Parse legacy config in new context taking only menu entries" -msgstr "" -"コンテキストを変ãˆãšãƒ¡ãƒ‹ãƒ¥ãƒ¼ã‚¨ãƒ³ãƒˆãƒªã®ã¿ã‚’使ã£ã¦åˆ¥ã®è¨­å®šãƒ•ァイルを読ã¿è¾¼ã¿ã¾" -"ã™ã€‚" - -#: grub-core/commands/legacycfg.c:856 -msgid "[--no-mem-option] [--type=TYPE] FILE [ARG ...]" -msgstr "[--no-mem-option] [--type=TYPE] FILE [ARG ...]" - -#: grub-core/commands/legacycfg.c:857 -msgid "Simulate grub-legacy `kernel' command" -msgstr "" - -#: grub-core/commands/legacycfg.c:861 grub-core/commands/legacycfg.c:865 -#, fuzzy -msgid "FILE [ARG ...]" -msgstr "ファイルã®é¸æŠž" - -#: grub-core/commands/legacycfg.c:862 -msgid "Simulate grub-legacy `initrd' command" -msgstr "" - -#: grub-core/commands/legacycfg.c:866 -msgid "Simulate grub-legacy `modulenounzip' command" -msgstr "" - -#: grub-core/commands/legacycfg.c:870 grub-core/commands/legacycfg.c:875 -#, fuzzy -msgid "[--md5] PASSWD [FILE]" -msgstr "ファイルã®å…±æœ‰ (FTP)" - -#: grub-core/commands/legacycfg.c:871 -msgid "Simulate grub-legacy `password' command" -msgstr "" - -#: grub-core/commands/legacycfg.c:876 -msgid "Simulate grub-legacy `password' command in menu entry mode" -msgstr "" - -#. TRANSLATORS: This option is used to override default filename -#. for loading and storing environment. -#: grub-core/commands/loadenv.c:37 -msgid "Specify filename." -msgstr "ファイルåを指定ã™ã‚‹" - -#: grub-core/commands/loadenv.c:39 -msgid "Skip signature-checking of the environment file." -msgstr "" - -#: grub-core/commands/loadenv.c:451 -#, fuzzy -msgid "[-f FILE] [-s|--skip-sig] [variable_name_to_whitelist] [...]" -msgstr "[-f FILE] variable_name [...]" - -#: grub-core/commands/loadenv.c:452 -msgid "Load variables from environment block file." -msgstr "環境ブロックファイルã‹ã‚‰å¤‰æ•°ã‚’ロードã™ã‚‹" - -#: grub-core/commands/loadenv.c:455 -msgid "[-f FILE]" -msgstr "[-f FILE]" - -#: grub-core/commands/loadenv.c:456 -msgid "List variables from environment block file." -msgstr "環境ブロックファイルã‹ã‚‰å¤‰æ•°ã‚’リスト表示ã™ã‚‹" - -#: grub-core/commands/loadenv.c:460 -msgid "[-f FILE] variable_name [...]" -msgstr "[-f FILE] variable_name [...]" - -#: grub-core/commands/loadenv.c:461 -msgid "Save variables to environment block file." -msgstr "環境ブロックファイルã«å¤‰æ•°ã‚’ä¿å­˜ã™ã‚‹" - -#: grub-core/commands/ls.c:40 -msgid "Show a long list with more detailed information." -msgstr "" - -#: grub-core/commands/ls.c:41 -msgid "Print sizes in a human readable format." -msgstr "" - -#: grub-core/commands/ls.c:42 -msgid "List all files." -msgstr "ã™ã¹ã¦ã®ãƒ•ァイルをリスト表示ã™ã‚‹" - -#: grub-core/commands/ls.c:73 -msgid "Network protocols:" -msgstr "ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ãƒ—ロトコル:" - -#: grub-core/commands/ls.c:295 -msgid "[-l|-h|-a] [FILE ...]" -msgstr "[-l|-h|-a] [FILE ...]" - -#: grub-core/commands/ls.c:296 -msgid "List devices and files." -msgstr "デãƒã‚¤ã‚¹ã¨ãƒ•ァイルをリスト表示ã™ã‚‹" - -#: grub-core/commands/lsacpi.c:255 -msgid "Show version 1 tables only." -msgstr "" - -#: grub-core/commands/lsacpi.c:256 -msgid "Show version 2 and version 3 tables only." -msgstr "" - -#: grub-core/commands/lsacpi.c:306 -#, fuzzy -msgid "Show ACPI information." -msgstr " -g --gen-debug デãƒãƒƒã‚°æƒ…報を生æˆã™ã‚‹\n" - -#: grub-core/commands/lsmmap.c:31 -#, fuzzy -msgid "available RAM" -msgstr "E: X サーãƒãƒ¼ãŒä½¿ç”¨ã§ããªã‘れã°ã„ã‘ã¾ã›ã‚“。" - -#: grub-core/commands/lsmmap.c:32 -msgid "reserved RAM" -msgstr "" - -#. TRANSLATORS: this refers to memory where ACPI tables are stored -#. and which can be used by OS once it loads ACPI tables. -#: grub-core/commands/lsmmap.c:35 -msgid "ACPI reclaimable RAM" -msgstr "" - -#. TRANSLATORS: this refers to memory which ACPI-compliant OS -#. is required to save accross hibernations. -#: grub-core/commands/lsmmap.c:38 -msgid "ACPI non-volatile storage RAM" -msgstr "" - -#: grub-core/commands/lsmmap.c:39 -msgid "faulty RAM (BadRAM)" -msgstr "" - -#: grub-core/commands/lsmmap.c:40 -msgid "persistent RAM" -msgstr "" - -#: grub-core/commands/lsmmap.c:41 -msgid "persistent RAM (legacy)" -msgstr "" - -#: grub-core/commands/lsmmap.c:42 -msgid "RAM holding coreboot tables" -msgstr "" - -#: grub-core/commands/lsmmap.c:43 -msgid "RAM holding firmware code" -msgstr "" - -#: grub-core/commands/lsmmap.c:52 -#, c-format -msgid "base_addr = 0x%llx, length = 0x%llx, %s\n" -msgstr "" - -#: grub-core/commands/lsmmap.c:55 -#, c-format -msgid "base_addr = 0x%llx, length = 0x%llx, type = 0x%x\n" -msgstr "" - -#: grub-core/commands/lsmmap.c:79 -msgid "List memory map provided by firmware." -msgstr "ファームウエアã«ã‚ˆã£ã¦è¦å®šã•れãŸãƒ¡ãƒ¢ãƒªãƒžãƒƒãƒ—を表示ã™ã‚‹" - -#: grub-core/commands/lspci.c:232 -msgid "List PCI devices." -msgstr "PCIデãƒã‚¤ã‚¹ã‚’リスト表示ã™ã‚‹" - -#: grub-core/commands/macbless.c:224 -msgid "Bless FILE of HFS or HFS+ partition for intel macs." -msgstr "" - -#: grub-core/commands/macbless.c:228 -msgid "Bless DIR of HFS or HFS+ partition for PPC macs." -msgstr "" - -#: grub-core/commands/memrw.c:125 -#, fuzzy -msgid "Read 8-bit value from ADDR." -msgstr "ADDR ã‹ã‚‰ãƒã‚¤ãƒˆã‚’読ã¿è¾¼ã‚€ã€‚" - -#: grub-core/commands/memrw.c:129 -#, fuzzy -msgid "Read 16-bit value from ADDR." -msgstr "ADDR ã‹ã‚‰ãƒã‚¤ãƒˆã‚’読ã¿è¾¼ã‚€ã€‚" - -#: grub-core/commands/memrw.c:133 -#, fuzzy -msgid "Read 32-bit value from ADDR." -msgstr "ADDR ã‹ã‚‰ãƒã‚¤ãƒˆã‚’読ã¿è¾¼ã‚€ã€‚" - -#: grub-core/commands/memrw.c:138 -#, fuzzy -msgid "Write 8-bit VALUE to ADDR." -msgstr "ãƒã‚¤ãƒˆå€¤ VALUE ã‚’ ADDR ã«æ›¸ã込む。" - -#: grub-core/commands/memrw.c:142 -#, fuzzy -msgid "Write 16-bit VALUE to ADDR." -msgstr "ãƒã‚¤ãƒˆå€¤ VALUE ã‚’ ADDR ã«æ›¸ã込む。" - -#: grub-core/commands/memrw.c:146 -#, fuzzy -msgid "Write 32-bit VALUE to ADDR." -msgstr "ãƒã‚¤ãƒˆå€¤ VALUE ã‚’ ADDR ã«æ›¸ã込む。" - -#: grub-core/commands/menuentry.c:31 -#, fuzzy -msgid "Menu entry type." -msgstr "ãƒã‚§ãƒƒã‚¯ãƒ»ãƒ¡ãƒ‹ãƒ¥ãƒ¼é …ç›®" - -#: grub-core/commands/menuentry.c:31 grub-core/commands/menuentry.c:38 -#: grub-core/commands/menuentry.c:39 grub-core/gettext/gettext.c:520 -#: util/grub-fstest.c:520 util/grub-install.c:291 util/grub-install.c:304 -#: util/grub-mknetdir.c:51 util/grub-mkrescue.c:109 util/grub-mkrescue.c:110 -#: util/grub-mount.c:453 util/grub-render-label.c:65 -msgid "STRING" -msgstr "STRING" - -#: grub-core/commands/menuentry.c:33 -msgid "List of users allowed to boot this entry." -msgstr "" - -#: grub-core/commands/menuentry.c:33 -msgid "USERNAME[,USERNAME]" -msgstr "" - -#: grub-core/commands/menuentry.c:36 -msgid "Keyboard key to quickly boot this entry." -msgstr "" - -#: grub-core/commands/menuentry.c:36 -#, fuzzy -msgid "KEYBOARD_KEY" -msgstr " KEY スキーマ内ã®ã‚­ãƒ¼\n" - -#: grub-core/commands/menuentry.c:38 -msgid "Use STRING as menu entry body." -msgstr "" - -#: grub-core/commands/menuentry.c:39 -#, fuzzy -msgid "Menu entry identifier." -msgstr "ãƒã‚§ãƒƒã‚¯ãƒ»ãƒ¡ãƒ‹ãƒ¥ãƒ¼é …ç›®" - -#. TRANSLATORS: menu entry can either be bootable by anyone or only by -#. handful of users. By default when security is active only superusers can -#. boot a given menu entry. With --unrestricted (this option) -#. anyone can boot it. -#: grub-core/commands/menuentry.c:44 -msgid "This entry can be booted by any user." -msgstr "" - -#: grub-core/commands/menuentry.c:323 grub-core/commands/menuentry.c:328 -#: grub-core/tests/test_blockarg.c:46 -msgid "BLOCK" -msgstr "BLOCK" - -#: grub-core/commands/menuentry.c:323 -#, fuzzy -msgid "Define a menu entry." -msgstr "ãƒã‚§ãƒƒã‚¯ãƒ»ãƒ¡ãƒ‹ãƒ¥ãƒ¼é …ç›®" - -#: grub-core/commands/menuentry.c:328 -msgid "Define a submenu." -msgstr "" - -#. TRANSLATORS: this is module list header. Name -#. is module name, Ref Count is a reference counter -#. (how many modules or open descriptors use it). -#. Dependencies are the other modules it uses. -#. -#: grub-core/commands/minicmd.c:162 -msgid "Name\tRef Count\tDependencies\n" -msgstr "" - -#: grub-core/commands/minicmd.c:201 -msgid "Show this message." -msgstr "ã“ã®ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã‚’表示ã™ã‚‹" - -#: grub-core/commands/minicmd.c:204 -#, fuzzy -msgid "ADDR [SIZE]" -msgstr "ç¾åœ¨ã®ã‚µã‚¤ã‚º:" - -#: grub-core/commands/minicmd.c:204 -#, fuzzy -msgid "Show memory contents." -msgstr " --target-help ターゲット固有ã®ã‚ªãƒ—ションを表示ã™ã‚‹\n" - -#: grub-core/commands/minicmd.c:207 grub-core/kern/corecmd.c:188 -#: util/grub-install.c:275 -msgid "MODULE" -msgstr "MODULE" - -#: grub-core/commands/minicmd.c:207 -msgid "Remove a module." -msgstr "モジュールを削除ã™ã‚‹" - -#: grub-core/commands/minicmd.c:210 -msgid "Show loaded modules." -msgstr "ロードã•れãŸãƒ¢ã‚¸ãƒ¥ãƒ¼ãƒ«ã‚’表示ã™ã‚‹" - -#: grub-core/commands/minicmd.c:213 -msgid "Exit from GRUB." -msgstr "GRUBを終了ã™ã‚‹" - -#: grub-core/commands/mips/loongson/lsspd.c:42 -#, fuzzy -msgid "No CS5536 found" -msgstr " -W --no-warn 警告を抑止ã™ã‚‹\n" - -#: grub-core/commands/mips/loongson/lsspd.c:45 -#, fuzzy, c-format -msgid "CS5536 at %d:%d.%d\n" -msgstr "%s: `%s' 㯠`%s' ã«ãƒžã‚¦ãƒ³ãƒˆã•れã¦ã„ã¾ã™\n" - -#. TRANSLATORS: System management bus is often used to access components like -#. RAM (info only, not data) or batteries. I/O space is where in memory -#. its ports are. -#: grub-core/commands/mips/loongson/lsspd.c:55 -#, c-format -msgid "System management bus controller I/O space is at 0x%x\n" -msgstr "" - -#. TRANSLATORS: it's shown in a report in a way -#. like number 1: ... number 2: ... -#. -#: grub-core/commands/mips/loongson/lsspd.c:66 -#, fuzzy, c-format -msgid "RAM slot number %d\n" -msgstr "アクセスå¯èƒ½ãª HyperText ãƒªãƒ³ã‚¯ã®æ•°" - -#: grub-core/commands/mips/loongson/lsspd.c:73 -#, c-format -msgid "Written SPD bytes: %d B.\n" -msgstr "" - -#: grub-core/commands/mips/loongson/lsspd.c:74 -#, c-format -msgid "Total flash size: %d B.\n" -msgstr "" - -#: grub-core/commands/mips/loongson/lsspd.c:79 -#, fuzzy -msgid "Memory type: DDR2." -msgstr "IM $IM_CONFIG_XINPUTRC_TYPE $IM_CONFIG_XINPUTRC を削除。" - -#: grub-core/commands/mips/loongson/lsspd.c:83 -#, fuzzy, c-format -msgid "Part no: %s.\n" -msgstr "(åå‰ç„¡ã—)" - -#: grub-core/commands/mips/loongson/lsspd.c:86 -#, fuzzy -msgid "Memory type: Unknown." -msgstr "䏿˜Žãªã‚¨ã‚¹ã‚±ãƒ¼ãƒ— '\\%c' ãŒæ–‡å­—列内ã«ã‚りã¾ã™ã€‚無視ã•れã¾ã—ãŸ" - -#: grub-core/commands/mips/loongson/lsspd.c:97 -#, fuzzy -msgid "Print Memory information." -msgstr " -g --gen-debug デãƒãƒƒã‚°æƒ…報を生æˆã™ã‚‹\n" - -#: grub-core/commands/nativedisk.c:118 grub-core/commands/probe.c:118 -#: grub-core/commands/probe.c:124 util/grub-probe.c:450 -#, c-format -msgid "%s does not support UUIDs" -msgstr "" - -#: grub-core/commands/nativedisk.c:325 -msgid "[MODULE1 MODULE2 ...]" -msgstr "" - -#: grub-core/commands/nativedisk.c:326 -msgid "" -"Switch to native disk drivers. If no modules are specified default set (pata," -"ahci,usbms,ohci,uhci,ehci) is used" -msgstr "" - -#: grub-core/commands/parttool.c:40 -msgid "" -"Perform COMMANDS on partition.\n" -"Use `parttool PARTITION help' for the list of available commands." -msgstr "" - -#: grub-core/commands/parttool.c:123 -msgid "=VAL" -msgstr "" - -#: grub-core/commands/parttool.c:136 -#, c-format -msgid "Sorry, no parttool is available for %s\n" -msgstr "" - -#: grub-core/commands/parttool.c:288 grub-core/lib/arg.c:285 -#: grub-core/lib/arg.c:351 -#, fuzzy, c-format -msgid "unknown argument `%s'" -msgstr "䏿˜Žã§ä½™åˆ†ãªå¼•æ•° `%s' ã§ã™ã€‚\n" - -#: grub-core/commands/parttool.c:344 -msgid "PARTITION COMMANDS" -msgstr "" - -#: grub-core/commands/password.c:85 -msgid "USER PASSWORD" -msgstr "ユーザーパスワード" - -#: grub-core/commands/password.c:86 -msgid "Set user password (plaintext). Unrecommended and insecure." -msgstr "" -"ユーザーパスワード(プレーンテキスト)を設定ã™ã‚‹ã€‚éžæŽ¨å¥¨ã§å®‰å…¨ã§ã¯ã‚りã¾ã›ã‚“" - -#. TRANSLATORS: it means that the string which -#. was supposed to be a password hash doesn't -#. have a correct format, not to password -#. mismatch. -#: grub-core/commands/password_pbkdf2.c:98 -#: grub-core/commands/password_pbkdf2.c:115 -#: grub-core/commands/password_pbkdf2.c:123 -#: grub-core/commands/password_pbkdf2.c:150 -#: grub-core/commands/password_pbkdf2.c:179 -#, fuzzy -msgid "invalid PBKDF2 password" -msgstr "%s: --auto/-a オプションã«å¯¾ã—ã¦ä¸å½“ãªå¼•æ•°\n" - -#: grub-core/commands/password_pbkdf2.c:202 -#, fuzzy -msgid "USER PBKDF2_PASSWORD" -msgstr "ユーザー間ã®åˆ‡ã‚Šæ›¿ãˆã‚’許å¯ã™ã‚‹ã‹ã©ã†ã‹" - -#: grub-core/commands/password_pbkdf2.c:203 -msgid "Set user password (PBKDF2). " -msgstr "" - -#: grub-core/commands/pcidump.c:39 grub-core/commands/setpci.c:69 -msgid "Select device by vendor and device IDs." -msgstr "" - -#: grub-core/commands/pcidump.c:40 grub-core/commands/setpci.c:70 -#, fuzzy -msgid "[vendor]:[device]" -msgstr "デãƒã‚¤ã‚¹ã‚’追加中。。。" - -#: grub-core/commands/pcidump.c:41 grub-core/commands/setpci.c:71 -msgid "Select device by its position on the bus." -msgstr "" - -#: grub-core/commands/pcidump.c:42 grub-core/commands/setpci.c:72 -#, fuzzy -msgid "[bus]:[slot][.func]" -msgstr "インテリジェントインプットãƒã‚¹ (IBus)を有効ã«ã™ã‚‹" - -#: grub-core/commands/pcidump.c:109 grub-core/commands/pcidump.c:138 -#: grub-core/commands/setpci.c:183 grub-core/commands/setpci.c:214 -#: grub-core/fs/zfs/zfs.c:3794 grub-core/kern/emu/hostdisk.c:458 -#: grub-core/kern/emu/hostdisk.c:473 grub-core/kern/file.c:44 -#, fuzzy, c-format -msgid "missing `%c' symbol" -msgstr "è¨­å®šãƒ•ã‚¡ã‚¤ãƒ«ã®æ¬ è½ã€‚" - -#: grub-core/commands/pcidump.c:168 -#, fuzzy -msgid "[-s POSITION] [-d DEVICE]" -msgstr "%(service)s on %(device)s" - -#: grub-core/commands/pcidump.c:169 -msgid "Show raw dump of the PCI configuration space." -msgstr "" - -#: grub-core/commands/pgp.c:45 -msgid "Skip signature-checking of the public key file." -msgstr "" - -#. TRANSLATORS: it's about GNUPG signatures. -#: grub-core/commands/pgp.c:71 grub-core/commands/pgp.c:81 -#: grub-core/commands/pgp.c:86 grub-core/commands/pgp.c:96 -#: grub-core/commands/pgp.c:103 grub-core/commands/pgp.c:107 -#: grub-core/commands/pgp.c:114 grub-core/commands/pgp.c:119 -#: grub-core/commands/pgp.c:124 grub-core/commands/pgp.c:128 -#: grub-core/commands/pgp.c:268 grub-core/commands/pgp.c:276 -#: grub-core/commands/pgp.c:281 grub-core/commands/pgp.c:289 -#: grub-core/commands/pgp.c:320 grub-core/commands/pgp.c:327 -#: grub-core/commands/pgp.c:332 grub-core/commands/pgp.c:342 -#: grub-core/commands/pgp.c:468 grub-core/commands/pgp.c:471 -#: grub-core/commands/pgp.c:474 grub-core/commands/pgp.c:477 -#: grub-core/commands/pgp.c:484 grub-core/commands/pgp.c:490 -#: grub-core/commands/pgp.c:665 -msgid "bad signature" -msgstr "" - -#. TRANSLATORS: %08x is 32-bit key id. -#: grub-core/commands/pgp.c:636 grub-core/commands/pgp.c:812 -#, fuzzy, c-format -msgid "public key %08x not found" -msgstr "%s ã¯ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã§ã¯ã‚りã¾ã›ã‚“!" - -#: grub-core/commands/pgp.c:651 grub-core/disk/diskfilter.c:772 -#: grub-core/disk/diskfilter.c:782 grub-core/fs/ntfs.c:404 -#: grub-core/fs/zfs/zfs.c:1933 grub-core/normal/menu.c:428 -#, c-format -msgid "module `%s' isn't loaded" -msgstr "" - -#: grub-core/commands/pgp.c:994 -msgid "[-s|--skip-sig] FILE SIGNATURE_FILE [PUBKEY_FILE]" -msgstr "" - -#: grub-core/commands/pgp.c:995 -msgid "Verify detached signature." -msgstr "" - -#: grub-core/commands/pgp.c:998 -msgid "[-s|--skip-sig] PUBKEY_FILE" -msgstr "" - -#: grub-core/commands/pgp.c:999 -msgid "Add PUBKEY_FILE to trusted keys." -msgstr "" - -#: grub-core/commands/pgp.c:1003 -msgid "Show the list of trusted keys." -msgstr "" - -#: grub-core/commands/pgp.c:1005 -msgid "PUBKEY_ID" -msgstr "" - -#: grub-core/commands/pgp.c:1006 -msgid "Remove PUBKEY_ID from trusted keys." -msgstr "" - -#: grub-core/commands/probe.c:40 grub-core/commands/tr.c:32 -msgid "Set a variable to return value." -msgstr "戻り値ã«å¤‰æ•°ã‚’設定ã™ã‚‹" - -#. TRANSLATORS: It's a driver that is currently in use to access -#. the diven disk. -#: grub-core/commands/probe.c:43 -msgid "Determine driver." -msgstr "ドライãƒãƒ¼ã‚’決定ã™ã‚‹" - -#: grub-core/commands/probe.c:44 -msgid "Determine partition map type." -msgstr "パーティションマップã®å½¢å¼ã‚’決定ã™ã‚‹" - -#: grub-core/commands/probe.c:45 -msgid "Determine filesystem type." -msgstr "ファイルシステムã®å½¢å¼ã‚’決定ã™ã‚‹" - -#: grub-core/commands/probe.c:46 -msgid "Determine filesystem UUID." -msgstr "ファイルシステムã®UUIDを決定ã™ã‚‹" - -#: grub-core/commands/probe.c:47 -msgid "Determine filesystem label." -msgstr "ファイルシステムã®ãƒ©ãƒ™ãƒ«ã‚’決定ã™ã‚‹" - -#: grub-core/commands/probe.c:139 grub-core/commands/probe.c:146 -#: util/grub-probe.c:462 -#, c-format -msgid "filesystem `%s' does not support labels" -msgstr "" - -#: grub-core/commands/probe.c:165 grub-core/fs/zfs/zfsinfo.c:430 -#: grub-core/loader/i386/bsd.c:169 util/grub-setup.c:223 -msgid "DEVICE" -msgstr "DEVICE" - -#: grub-core/commands/probe.c:166 -msgid "Retrieve device info." -msgstr "デãƒã‚¤ã‚¹æƒ…報をå–å¾—ã™ã‚‹" - -#: grub-core/commands/read.c:85 -msgid "[ENVVAR]" -msgstr "" - -#: grub-core/commands/read.c:86 -msgid "Set variable with user input." -msgstr "ユーザー入力ã«ã‚ˆã‚Šå¤‰æ•°ã‚’設定ã™ã‚‹" - -#: grub-core/commands/reboot.c:40 -msgid "Reboot the computer." -msgstr "コンピュータをå†èµ·å‹•ã™ã‚‹" - -#. TRANSLATORS: in regexp you can mark some -#. groups with parentheses. These groups are -#. then numbered and you can save some of -#. them in variables. In other programs -#. those components aree often referenced with -#. back slash, e.g. \1. Compare -#. sed -e 's,\([a-z][a-z]*\),lowercase=\1,g' -#. The whole matching component is saved in VARNAME, not its number. -#. -#: grub-core/commands/regexp.c:44 -msgid "Store matched component NUMBER in VARNAME." -msgstr "" - -#: grub-core/commands/regexp.c:45 -msgid "[NUMBER:]VARNAME" -msgstr "[NUMBER:]VARNAME" - -#. TRANSLATORS: This are two arguments. So it's -#. two separate units to translate and pay -#. attention not to reverse them. -#: grub-core/commands/regexp.c:157 -msgid "REGEXP STRING" -msgstr "REGEXP STRING" - -#: grub-core/commands/regexp.c:158 -msgid "Test if REGEXP matches STRING." -msgstr "REGEXP ㌠STRING ã«ä¸€è‡´ã™ã‚‹ã‹ã©ã†ã‹ã®æ¤œæŸ»ã‚’行ã†ã€‚" - -#: grub-core/commands/search.c:324 -msgid "NAME [VARIABLE] [HINTS]" -msgstr "NAME [VARIABLE] [HINTS]" - -#: grub-core/commands/search_file.c:4 -msgid "" -"Search devices by file. If VARIABLE is specified, the first device found is " -"set to a variable." -msgstr "" -"デãƒã‚¤ã‚¹ã‚’ファイルåã§æŽ¢ã™ã€‚VARIABLE ãŒæŒ‡å®šã•れれã°ã€æœ€åˆã«è¦‹ã¤ã‹ã£ãŸãƒ‡ãƒã‚¤ã‚¹" -"ãŒå¤‰æ•°ã«ã‚»ãƒƒãƒˆã•れã¾ã™ã€‚" - -#: grub-core/commands/search_label.c:4 -msgid "" -"Search devices by label. If VARIABLE is specified, the first device found is " -"set to a variable." -msgstr "" -"デãƒã‚¤ã‚¹ã‚’ラベルåã§æŽ¢ã™ã€‚VARIABLE ãŒæŒ‡å®šã•れれã°ã€æœ€åˆã«è¦‹ã¤ã‹ã£ãŸãƒ‡ãƒã‚¤ã‚¹ãŒ" -"変数ã«ã‚»ãƒƒãƒˆã•れã¾ã™ã€‚" - -#: grub-core/commands/search_uuid.c:4 -msgid "" -"Search devices by UUID. If VARIABLE is specified, the first device found is " -"set to a variable." -msgstr "" -"デãƒã‚¤ã‚¹ã‚’UUIDåã§æŽ¢ã™ã€‚VARIABLE ãŒæŒ‡å®šã•れれã°ã€æœ€åˆã«è¦‹ã¤ã‹ã£ãŸãƒ‡ãƒã‚¤ã‚¹ãŒå¤‰" -"æ•°ã«ã‚»ãƒƒãƒˆã•れã¾ã™ã€‚" - -#: grub-core/commands/search_wrap.c:34 -msgid "Search devices by a file." -msgstr "デãƒã‚¤ã‚¹ã‚’ãƒ•ã‚¡ã‚¤ãƒ«ã§æ¤œç´¢ã™ã‚‹ã€‚" - -#: grub-core/commands/search_wrap.c:35 -msgid "Search devices by a filesystem label." -msgstr "デãƒã‚¤ã‚¹ã‚’ãƒ•ã‚¡ã‚¤ãƒ«ã‚·ã‚¹ãƒ†ãƒ ãƒ©ãƒ™ãƒ«ã§æ¤œç´¢ã™ã‚‹ã€‚" - -#: grub-core/commands/search_wrap.c:37 -msgid "Search devices by a filesystem UUID." -msgstr "デãƒã‚¤ã‚¹ã‚’ファイルシステム UUID ã§æ¤œç´¢ã™ã‚‹ã€‚" - -#: grub-core/commands/search_wrap.c:40 -msgid "Set a variable to the first device found." -msgstr "" - -#: grub-core/commands/search_wrap.c:42 -msgid "Do not probe any floppy drive." -msgstr "" - -#: grub-core/commands/search_wrap.c:44 -msgid "" -"First try the device HINT. If HINT ends in comma, also try subpartitions" -msgstr "" - -#: grub-core/commands/search_wrap.c:45 grub-core/commands/search_wrap.c:49 -#: grub-core/commands/search_wrap.c:53 grub-core/commands/search_wrap.c:57 -#: grub-core/commands/search_wrap.c:61 grub-core/commands/search_wrap.c:65 -msgid "HINT" -msgstr "HINT" - -#: grub-core/commands/search_wrap.c:47 -msgid "" -"First try the device HINT if currently running on IEEE1275. If HINT ends in " -"comma, also try subpartitions" -msgstr "" - -#: grub-core/commands/search_wrap.c:51 -msgid "" -"First try the device HINT if currently running on BIOS. If HINT ends in " -"comma, also try subpartitions" -msgstr "" - -#: grub-core/commands/search_wrap.c:55 -msgid "" -"First try the device HINT if direct hardware access is supported. If HINT " -"ends in comma, also try subpartitions" -msgstr "" - -#: grub-core/commands/search_wrap.c:59 -msgid "" -"First try the device HINT if currently running on EFI. If HINT ends in " -"comma, also try subpartitions" -msgstr "" - -#: grub-core/commands/search_wrap.c:63 -msgid "" -"First try the device HINT if currently running on ARC. If HINT ends in " -"comma, also try subpartitions" -msgstr "" - -#: grub-core/commands/search_wrap.c:207 -msgid "[-f|-l|-u|-s|-n] [--hint HINT [--hint HINT] ...] NAME" -msgstr "[-f|-l|-u|-s|-n] [--hint HINT [--hint HINT] ...] NAME" - -#: grub-core/commands/search_wrap.c:209 -#, fuzzy -msgid "" -"Search devices by file, filesystem label or filesystem UUID. If --set is " -"specified, the first device found is set to a variable. If no variable name " -"is specified, `root' is used." -msgstr "" -"デãƒã‚¤ã‚¹ã‚’ラベルåã§æŽ¢ã™ã€‚VARIABLE ãŒæŒ‡å®šã•れれã°ã€æœ€åˆã«è¦‹ã¤ã‹ã£ãŸãƒ‡ãƒã‚¤ã‚¹ãŒ" -"変数ã«ã‚»ãƒƒãƒˆã•れã¾ã™ã€‚" - -#: grub-core/commands/setpci.c:132 -#, fuzzy, c-format -msgid "Register %x of %x:%02x.%x is %x\n" -msgstr "%sã€%s ã¯ä½•?" - -#: grub-core/commands/setpci.c:333 -#, fuzzy -msgid "[-s POSITION] [-d DEVICE] [-v VAR] REGISTER[=VALUE[:MASK]]" -msgstr "[-s POSITION] [-d DEVICE] [-v VAR] [REGISTER][=VALUE[:MASK]]" - -#: grub-core/commands/setpci.c:335 -msgid "Manipulate PCI devices." -msgstr "PCI デãƒã‚¤ã‚¹ã‚’æ“作ã™ã‚‹" - -#: grub-core/commands/sleep.c:32 -msgid "Verbose countdown." -msgstr "" - -#: grub-core/commands/sleep.c:33 -#, fuzzy -msgid "Allow to interrupt with ESC." -msgstr "ESCキーã§ä¸­æ–­ã§ãã¾ã™" - -#: grub-core/commands/sleep.c:109 -#, fuzzy -msgid "NUMBER_OF_SECONDS" -msgstr "ã‚¢ãƒ³ã‚«ãƒ¼ã®æ•°" - -#: grub-core/commands/sleep.c:110 -msgid "Wait for a specified number of seconds." -msgstr "指定ã—ãŸç§’æ•°ã®é–“å¾…ã¤" - -#: grub-core/commands/syslinuxcfg.c:50 util/grub-syslinux2cfg.c:66 -msgid "root directory of the syslinux disk [default=/]." -msgstr "" - -#: grub-core/commands/syslinuxcfg.c:53 util/grub-syslinux2cfg.c:72 -msgid "" -"current directory of syslinux [default is parent directory of input file]." -msgstr "" - -#: grub-core/commands/syslinuxcfg.c:55 util/grub-syslinux2cfg.c:75 -msgid "assume input is an isolinux configuration file." -msgstr "" - -#: grub-core/commands/syslinuxcfg.c:56 util/grub-syslinux2cfg.c:76 -msgid "assume input is a pxelinux configuration file." -msgstr "" - -#: grub-core/commands/syslinuxcfg.c:57 util/grub-syslinux2cfg.c:77 -msgid "assume input is a syslinux configuration file." -msgstr "" - -#. TRANSLATORS: "syslinux config" means -#. "config as used by syslinux". -#: grub-core/commands/syslinuxcfg.c:189 -msgid "Execute syslinux config in same context" -msgstr "" - -#: grub-core/commands/syslinuxcfg.c:195 -msgid "Execute syslinux config in new context" -msgstr "" - -#: grub-core/commands/syslinuxcfg.c:201 -#, fuzzy -msgid "Execute syslinux config in same context taking only menu entries" -msgstr "" -"コンテキストを変ãˆãšãƒ¡ãƒ‹ãƒ¥ãƒ¼ã‚¨ãƒ³ãƒˆãƒªã®ã¿ã‚’使ã£ã¦åˆ¥ã®è¨­å®šãƒ•ァイルを読ã¿è¾¼ã¿ã¾" -"ã™ã€‚" - -#: grub-core/commands/syslinuxcfg.c:207 -#, fuzzy -msgid "Execute syslinux config in new context taking only menu entries" -msgstr "" -"コンテキストを変ãˆãšãƒ¡ãƒ‹ãƒ¥ãƒ¼ã‚¨ãƒ³ãƒˆãƒªã®ã¿ã‚’使ã£ã¦åˆ¥ã®è¨­å®šãƒ•ァイルを読ã¿è¾¼ã¿ã¾" -"ã™ã€‚" - -#: grub-core/commands/terminal.c:90 -#, fuzzy -msgid "no terminal specified" -msgstr " -W --no-warn 警告を抑止ã™ã‚‹\n" - -#: grub-core/commands/terminal.c:112 grub-core/commands/terminal.c:139 -#, c-format -msgid "terminal `%s' isn't found" -msgstr "" - -#: grub-core/commands/terminal.c:244 -#, fuzzy -msgid "Active input terminals:" -msgstr "中国語インプットメソッド (gcin) を有効ã«ã™ã‚‹" - -#: grub-core/commands/terminal.c:245 -#, fuzzy -msgid "Available input terminals:" -msgstr "E: X サーãƒãƒ¼ãŒä½¿ç”¨ã§ããªã‘れã°ã„ã‘ã¾ã›ã‚“。" - -#: grub-core/commands/terminal.c:261 -#, fuzzy -msgid "Active output terminals:" -msgstr " 出力をエミュレートã™ã‚‹ (デフォルト %s)\n" - -#: grub-core/commands/terminal.c:262 -#, fuzzy -msgid "Available output terminals:" -msgstr " 出力をエミュレートã™ã‚‹ (デフォルト %s)\n" - -#: grub-core/commands/terminal.c:271 grub-core/commands/terminal.c:276 -msgid "[--append|--remove] [TERMINAL1] [TERMINAL2] ..." -msgstr "" - -#: grub-core/commands/terminal.c:273 -msgid "List or select an input terminal." -msgstr "" - -#: grub-core/commands/terminal.c:278 -msgid "List or select an output terminal." -msgstr "" - -#: grub-core/commands/test.c:444 -msgid "EXPRESSION ]" -msgstr "" - -#: grub-core/commands/test.c:444 grub-core/commands/test.c:447 -msgid "Evaluate an expression." -msgstr "å¼ã‚’評価ã™ã‚‹" - -#: grub-core/commands/test.c:447 -msgid "EXPRESSION" -msgstr "" - -#: grub-core/commands/testload.c:164 -msgid "Load the same file in multiple ways." -msgstr "" - -#: grub-core/commands/testspeed.c:35 -msgid "Specify size for each read operation" -msgstr "" - -#: grub-core/commands/testspeed.c:58 -#, fuzzy -msgid "invalid block size" -msgstr "%(service)s on %(device)s" - -#: grub-core/commands/testspeed.c:80 -#, c-format -msgid "File size: %s\n" -msgstr "" - -#: grub-core/commands/testspeed.c:83 -#, c-format -msgid "Elapsed time: %d.%03d s \n" -msgstr "" - -#: grub-core/commands/testspeed.c:92 -#, fuzzy, c-format -msgid "Speed: %s \n" -msgstr "デãƒã‚¤ã‚¹ %s:" - -#: grub-core/commands/testspeed.c:107 -msgid "[-s SIZE] FILENAME" -msgstr "" - -#: grub-core/commands/testspeed.c:108 -msgid "Test file read speed." -msgstr "" - -#: grub-core/commands/time.c:38 grub-core/script/execute.c:974 -#, fuzzy -msgid "no command is specified" -msgstr "存在ã—ãªã„è¨­å®šãƒ•ã‚¡ã‚¤ãƒ«ãŒæŒ‡å®šã•れãŸã€‚" - -#: grub-core/commands/time.c:50 -#, c-format -msgid "Elapsed time: %d.%03d seconds \n" -msgstr "" - -#: grub-core/commands/time.c:61 -#, fuzzy -msgid "COMMAND [ARGS]" -msgstr " COMMAND 対象ã®ã‚³ãƒžãƒ³ãƒ‰ (ä»»æ„)\n" - -#: grub-core/commands/time.c:62 -msgid "Measure time used by COMMAND" -msgstr "" - -#: grub-core/commands/tr.c:33 -msgid "Translate to upper case." -msgstr "" - -#: grub-core/commands/tr.c:34 -msgid "Translate to lower case." -msgstr "" - -#: grub-core/commands/tr.c:119 -msgid "[OPTIONS] [SET1] [SET2] [STRING]" -msgstr "" - -#: grub-core/commands/tr.c:120 -msgid "Translate SET1 characters to SET2 in STRING." -msgstr "" - -#. TRANSLATORS: it's a command description. -#: grub-core/commands/true.c:50 -msgid "Do nothing, successfully." -msgstr "何もã—ãªã„ã§ãã ã•ã„。æˆåŠŸã—ã¾ã—ãŸã€‚" - -#. TRANSLATORS: it's a command description. -#: grub-core/commands/true.c:54 -msgid "Do nothing, unsuccessfully." -msgstr "何もã—ãªã„ã§ãã ã•ã„。失敗ã—ã¾ã—ãŸã€‚" - -#: grub-core/commands/usbtest.c:221 -msgid "Test USB support." -msgstr "USBã®ã‚µãƒãƒ¼ãƒˆã‚’テストã™ã‚‹" - -#: grub-core/commands/verifiers.c:120 -#, c-format -msgid "verification requested but nobody cares: %s" -msgstr "" - -#: grub-core/commands/verifiers.c:140 -msgid "big file signature isn't implemented yet" -msgstr "" - -#: grub-core/commands/videoinfo.c:61 -msgid "Text-only " -msgstr "" - -#. TRANSLATORS: "Direct color" is a mode when the color components -#. are written dirrectly into memory. -#: grub-core/commands/videoinfo.c:66 -#, c-format -msgid "Direct color, mask: %d/%d/%d/%d pos: %d/%d/%d/%d" -msgstr "" - -#. TRANSLATORS: In "paletted color" mode you write the index of the color -#. in the palette. Synonyms include "packed pixel". -#: grub-core/commands/videoinfo.c:78 -msgid "Paletted " -msgstr "" - -#: grub-core/commands/videoinfo.c:80 -msgid "YUV " -msgstr "" - -#. TRANSLATORS: "Planar" is the video memory where you have to write -#. in several different banks "plans" to control the different color -#. components of the same pixel. -#: grub-core/commands/videoinfo.c:85 -msgid "Planar " -msgstr "" - -#: grub-core/commands/videoinfo.c:87 -msgid "Hercules " -msgstr "" - -#: grub-core/commands/videoinfo.c:89 -msgid "CGA " -msgstr "" - -#. TRANSLATORS: Non-chain 4 is a 256-color planar -#. (unchained) video memory mode. -#: grub-core/commands/videoinfo.c:93 -msgid "Non-chain 4 " -msgstr "" - -#: grub-core/commands/videoinfo.c:95 -msgid "Monochrome " -msgstr "" - -#: grub-core/commands/videoinfo.c:97 -#, fuzzy -msgid "Unknown video mode " -msgstr "エミュレーションモードåãŒã‚りã¾ã›ã‚“" - -#: grub-core/commands/videoinfo.c:111 -#, fuzzy -msgid " EDID checksum invalid" -msgstr "%s: --auto/-a オプションã«å¯¾ã—ã¦ä¸å½“ãªå¼•æ•°\n" - -#: grub-core/commands/videoinfo.c:116 -#, fuzzy, c-format -msgid " EDID version: %u.%u\n" -msgstr "\t䏿˜Žãªãƒãƒ¼ã‚¸ãƒ§ãƒ³ã§ã™ã€‚\n" - -#: grub-core/commands/videoinfo.c:120 -#, fuzzy, c-format -msgid " Preferred mode: %ux%u\n" -msgstr "エミュレーションモードåãŒã‚りã¾ã›ã‚“" - -#: grub-core/commands/videoinfo.c:123 -msgid " No preferred mode available\n" -msgstr "" - -#: grub-core/commands/videoinfo.c:146 grub-core/video/video.c:490 -#: grub-core/video/video.c:498 grub-core/video/video.c:509 -#: grub-core/video/video.c:520 grub-core/video/video.c:528 -#, fuzzy, c-format -msgid "invalid video mode specification `%s'" -msgstr "無効ãªãƒ«ãƒ¼ãƒˆãƒ‡ãƒã‚¤ã‚¹ `%s' ã§ã™" - -#: grub-core/commands/videoinfo.c:168 -msgid "List of supported video modes:" -msgstr "" - -#: grub-core/commands/videoinfo.c:169 -msgid "Legend: mask/position=red/green/blue/reserved" -msgstr "" - -#: grub-core/commands/videoinfo.c:176 -#, fuzzy, c-format -msgid "Adapter `%s':\n" -msgstr "アダプタã®é¸æŠž" - -#: grub-core/commands/videoinfo.c:180 -#, fuzzy -msgid " No info available" -msgstr "E: X サーãƒãƒ¼ãŒä½¿ç”¨ã§ããªã‘れã°ã„ã‘ã¾ã›ã‚“。" - -#: grub-core/commands/videoinfo.c:198 -msgid " Failed to initialize video adapter" -msgstr "" - -#. TRANSLATORS: "x" has to be entered in, -#. like an identifier, so please don't -#. use better Unicode codepoints. -#: grub-core/commands/videoinfo.c:239 grub-core/commands/videoinfo.c:248 -msgid "[WxH[xD]]" -msgstr "" - -#: grub-core/commands/videoinfo.c:240 grub-core/commands/videoinfo.c:249 -msgid "" -"List available video modes. If resolution is given show only modes matching " -"it." -msgstr "" - -#. TRANSLATORS: "x" has to be entered in, -#. like an identifier, so please don't -#. use better Unicode codepoints. -#: grub-core/commands/videotest.c:225 -msgid "[WxH]" -msgstr "" - -#. TRANSLATORS: Here, on the other hand, it's -#. nicer to use unicode cross instead of x. -#: grub-core/commands/videotest.c:228 -msgid "Test video subsystem in mode WxH." -msgstr "" - -#: grub-core/commands/videotest.c:231 -msgid "Test video subsystem." -msgstr "ビデオã®ã‚µãƒ–システムをテストã™ã‚‹" - -#: grub-core/commands/xen/lsxen.c:80 grub-core/commands/xen/lsxen.c:82 -msgid "[DIR]" -msgstr "" - -#: grub-core/commands/xen/lsxen.c:81 grub-core/commands/xen/lsxen.c:83 -msgid "List Xen storage." -msgstr "" - -#. TRANSLATORS: GRUBUUID stands for "filesystem -#. UUID as used in GRUB". -#: grub-core/commands/xnu_uuid.c:110 -msgid "[-l] GRUBUUID [VARNAME]" -msgstr "" - -#: grub-core/commands/xnu_uuid.c:111 -#, fuzzy -msgid "" -"Transform 64-bit UUID to format suitable for XNU. If -l is given keep it " -"lowercase as done by blkid." -msgstr "64ビットUUIDã‹ã‚‰XNUã«é©ã—ãŸå½¢å¼ã«å¤‰æ›ã™ã‚‹" - -#: grub-core/disk/arc/arcdisk.c:248 grub-core/disk/efi/efidisk.c:603 -#: grub-core/disk/i386/pc/biosdisk.c:498 grub-core/disk/i386/pc/biosdisk.c:543 -#: grub-core/disk/ieee1275/nand.c:198 grub-core/disk/ieee1275/obdisk.c:527 -#: grub-core/disk/ieee1275/ofdisk.c:586 -#, c-format -msgid "failure reading sector 0x%llx from `%s'" -msgstr "" - -#: grub-core/disk/arc/arcdisk.c:284 grub-core/disk/efi/efidisk.c:626 -#: grub-core/disk/i386/pc/biosdisk.c:548 grub-core/disk/ieee1275/ofdisk.c:606 -#, c-format -msgid "failure writing sector 0x%llx to `%s'" -msgstr "" - -#: grub-core/disk/cryptodisk.c:40 -#, fuzzy -msgid "Mount by UUID." -msgstr "%s: `%s' ã¯ãƒžã‚¦ãƒ³ãƒˆãƒã‚¤ãƒ³ãƒˆã§ã¯ã‚りã¾ã›ã‚“\n" - -#. TRANSLATORS: It's still restricted to cryptodisks only. -#: grub-core/disk/cryptodisk.c:42 -#, fuzzy -msgid "Mount all." -msgstr "%s: `%s' ã¯ãƒžã‚¦ãƒ³ãƒˆãƒã‚¤ãƒ³ãƒˆã§ã¯ã‚りã¾ã›ã‚“\n" - -#: grub-core/disk/cryptodisk.c:43 -msgid "Mount all volumes with `boot' flag set." -msgstr "" - -#. TRANSLATORS: The first %s is the file being looked at, the second %s is -#. the error message. -#: grub-core/disk/cryptodisk.c:526 grub-core/kern/emu/hostdisk.c:152 -#: grub-core/kern/emu/hostdisk.c:262 grub-core/kern/emu/hostdisk.c:434 -#: grub-core/kern/emu/misc.c:168 grub-core/kern/emu/misc.c:174 -#: grub-core/kern/emu/misc.c:196 grub-core/osdep/bsd/getroot.c:92 -#: grub-core/osdep/bsd/getroot.c:168 grub-core/osdep/hurd/getroot.c:68 -#: grub-core/osdep/linux/blocklist.c:65 grub-core/osdep/linux/getroot.c:150 -#: grub-core/osdep/linux/hostdisk.c:194 grub-core/osdep/linux/hostdisk.c:421 -#: grub-core/osdep/linux/ofpath.c:417 grub-core/osdep/linux/ofpath.c:422 -#: grub-core/osdep/linux/ofpath.c:517 grub-core/osdep/linux/ofpath.c:530 -#: grub-core/osdep/sun/getroot.c:110 grub-core/osdep/windows/blocklist.c:98 -#: grub-core/tests/video_checksum.c:279 util/editenv.c:46 util/glue-efi.c:115 -#: util/glue-efi.c:120 util/glue-efi.c:130 util/grub-editenv.c:138 -#: util/grub-editenv.c:192 util/grub-file.c:83 util/grub-fstest.c:128 -#: util/grub-fstest.c:568 util/grub-install-common.c:92 -#: util/grub-install-common.c:94 util/grub-install-common.c:101 -#: util/grub-install-common.c:529 util/grub-menulst2cfg.c:53 -#: util/grub-menulst2cfg.c:68 util/grub-mkimage.c:292 util/grub-mklayout.c:504 -#: util/grub-mklayout.c:516 util/grub-mknetdir.c:133 util/grub-mknetdir.c:151 -#: util/grub-mkrescue.c:627 util/grub-mkrescue.c:631 util/grub-mkrescue.c:879 -#: util/grub-mkrescue.c:883 util/grub-mkstandalone.c:253 util/grub-mount.c:498 -#: util/grub-render-label.c:169 util/grub-script-check.c:175 -#: util/grub-syslinux2cfg.c:181 util/grub-syslinux2cfg.c:191 -#: util/grub-syslinux2cfg.c:212 util/grub-syslinux2cfg.c:228 util/misc.c:91 -#: util/render-label.c:76 util/render-label.c:163 util/render-label.c:174 -#: util/resolve.c:246 util/setup.c:783 -#, fuzzy, c-format -msgid "cannot open `%s': %s" -msgstr "%s: `%s' ãŒã‚ªãƒ¼ãƒ—ンã§ãã¾ã›ã‚“\n" - -#: grub-core/disk/cryptodisk.c:583 grub-core/disk/cryptodisk.c:628 -#: grub-core/kern/emu/hostdisk.c:270 grub-core/kern/emu/hostfs.c:142 -#: grub-core/osdep/linux/hostdisk.c:456 util/grub-editenv.c:143 -#: util/grub-editenv.c:149 util/grub-fstest.c:320 util/misc.c:111 -#, fuzzy, c-format -msgid "cannot seek `%s': %s" -msgstr "`%s' ã‚’é–‹ã‘ã¾ã›ã‚“" - -#: grub-core/disk/cryptodisk.c:1144 -#, fuzzy -msgid "SOURCE|-u UUID|-a|-b" -msgstr "%s (ソース) インストール済㿠(V: %s):" - -#: grub-core/disk/cryptodisk.c:1145 -#, fuzzy -msgid "Mount a crypto device." -msgstr "%(service)s on %(device)s" - -#. TRANSLATORS: This message kicks in during the detection of -#. which modules needs to be included in core image. This happens -#. in the case of degraded RAID and means that autodetection may -#. fail to include some of modules. It's an installation time -#. message, not runtime message. -#: grub-core/disk/diskfilter.c:343 grub-core/disk/diskfilter.c:376 -#, c-format -msgid "" -"Couldn't find physical volume `%s'. Some modules may be missing from core " -"image." -msgstr "" - -#: grub-core/disk/diskfilter.c:480 -#, c-format -msgid "physical volume %s not found" -msgstr "" - -#: grub-core/disk/efi/efidisk.c:600 grub-core/disk/efi/efidisk.c:623 -#, c-format -msgid "no media in `%s'" -msgstr "" - -#: grub-core/disk/geli.c:75 -#, fuzzy -msgid "Couldn't load sha256" -msgstr "%s/linux シンボリックリンクを作æˆã§ãã¾ã›ã‚“ã§ã—ãŸ!" - -#: grub-core/disk/geli.c:85 -#, fuzzy -msgid "Couldn't load sha512" -msgstr "%s/linux シンボリックリンクを作æˆã§ãã¾ã›ã‚“ã§ã—ãŸ!" - -#: grub-core/disk/geli.c:216 grub-core/disk/geli.c:220 -msgid "couldn't read ELI metadata" -msgstr "" - -#: grub-core/disk/geli.c:231 -msgid "wrong ELI magic or version" -msgstr "" - -#: grub-core/disk/geli.c:435 grub-core/disk/luks.c:329 -msgid "Attempting to decrypt master key..." -msgstr "" - -#: grub-core/disk/geli.c:441 grub-core/disk/luks.c:347 -#, fuzzy, c-format -msgid "Enter passphrase for %s%s%s (%s): " -msgstr "-- カーãƒãƒ«ã®ãƒã‚¤ãƒŠãƒªãƒ‘ッケージ:" - -#. TRANSLATORS: It's a cryptographic key slot: one element of an array -#. where each element is either empty or holds a key. -#: grub-core/disk/geli.c:530 grub-core/disk/luks.c:451 -#, c-format -msgid "Slot %d opened\n" -msgstr "" - -#: grub-core/disk/i386/pc/biosdisk.c:470 grub-core/disk/i386/pc/biosdisk.c:524 -#: grub-core/disk/i386/pc/biosdisk.c:534 grub-core/kern/disk_common.c:47 -#, c-format -msgid "attempt to read or write outside of disk `%s'" -msgstr "" - -#: grub-core/disk/i386/pc/biosdisk.c:491 grub-core/disk/i386/pc/biosdisk.c:611 -#: grub-core/disk/scsi.c:726 -#, fuzzy -msgid "cannot write to CD-ROM" -msgstr "%s: CD-ROM 速度を %då€é€Ÿã«è¨­å®šã—ã¦ã„ã¾ã™\n" - -#: grub-core/disk/i386/pc/biosdisk.c:662 -msgid "" -"Native disk drivers are in use. Refusing to use firmware disk interface." -msgstr "" - -#. TRANSLATORS: it's a partition for embedding, -#. not a partition embed into something. GRUB -#. install tools put core.img into a place -#. usable for bootloaders (called generically -#. "embedding zone") and this operation is -#. called "embedding". -#: grub-core/disk/ldm.c:1015 -msgid "your LDM Embedding Partition is too small; embedding won't be possible" -msgstr "" - -#. TRANSLATORS: it's a partition for embedding, -#. not a partition embed into something. -#: grub-core/disk/ldm.c:1033 -msgid "this LDM has no Embedding Partition; embedding won't be possible" -msgstr "" - -#. TRANSLATORS: The disk is simply removed from the list of available ones, -#. not wiped, avoid to scare user. -#: grub-core/disk/loopback.c:45 -#, fuzzy -msgid "Delete the specified loopback drive." -msgstr "ループãƒãƒƒã‚¯ãƒ‡ãƒã‚¤ã‚¹ã®ã‚¨ãƒ³ãƒˆãƒªãƒ¼ã‚’削除ã™ã‚‹" - -#: grub-core/disk/loopback.c:237 -#, fuzzy -msgid "[-d] DEVICENAME FILE." -msgstr "ファイルã®é¸æŠž" - -#. TRANSLATORS: The file itself is not destroyed -#. or transformed into drive. -#: grub-core/disk/loopback.c:240 -#, fuzzy -msgid "Make a virtual drive from a file." -msgstr "ファイルデãƒã‚¤ã‚¹ã‚’一ã¤ä½œã‚‹" - -#: grub-core/efiemu/i386/loadcore32.c:111 -#: grub-core/efiemu/i386/loadcore64.c:125 grub-core/kern/arm/dl.c:256 -#: grub-core/kern/arm64/dl.c:187 grub-core/kern/i386/dl.c:75 -#: grub-core/kern/ia64/dl.c:140 grub-core/kern/mips/dl.c:258 -#: grub-core/kern/powerpc/dl.c:163 grub-core/kern/riscv/dl.c:334 -#: grub-core/kern/sparc64/dl.c:180 grub-core/kern/x86_64/dl.c:110 -#: util/grub-mkimagexx.c:756 util/grub-mkimagexx.c:881 -#: util/grub-mkimagexx.c:945 util/grub-mkimagexx.c:1026 -#: util/grub-mkimagexx.c:1120 util/grub-mkimagexx.c:1222 -#: util/grub-mkimagexx.c:1413 util/grub-mkimagexx.c:1628 -#: util/grub-mkimagexx.c:1665 util/grub-mkimagexx.c:1697 -#: util/grub-mkimagexx.c:1767 util/grub-mkimagexx.c:1797 -#, c-format -msgid "relocation 0x%x is not implemented yet" -msgstr "" - -#: grub-core/efiemu/loadcore.c:200 grub-core/efiemu/loadcore.c:237 -#: grub-core/loader/i386/bsdXX.c:317 util/grub-mkimagexx.c:2360 -#, fuzzy -msgid "no symbol table" -msgstr "アクセスå¯èƒ½ãªè¡¨ã®ã‚¿ã‚¤ãƒˆãƒ«" - -#: grub-core/efiemu/loadcore.c:346 grub-core/kern/dl.c:609 -#: grub-core/loader/ia64/efi/linux.c:345 grub-core/loader/mips/linux.c:248 -#: grub-core/loader/multiboot_elfxx.c:76 -#: grub-core/loader/powerpc/ieee1275/linux.c:280 -#: grub-core/loader/sparc64/ieee1275/linux.c:320 -msgid "this ELF file is not of the right type" -msgstr "" - -#: grub-core/efiemu/main.c:313 -msgid "Load and initialize EFI emulator." -msgstr "" - -#: grub-core/efiemu/main.c:317 -msgid "Finalize loading of EFI emulator." -msgstr "" - -#: grub-core/efiemu/main.c:320 -msgid "Unload EFI emulator." -msgstr "EFI エミュレーターをアンロードã™ã‚‹ã€‚" - -#: grub-core/efiemu/symbols.c:92 grub-core/kern/dl.c:376 -#, fuzzy, c-format -msgid "symbol `%s' not found" -msgstr "%s ã¯ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã§ã¯ã‚りã¾ã›ã‚“!" - -#: grub-core/font/font_cmd.c:52 -msgid "Loaded fonts:" -msgstr "" - -#: grub-core/font/font_cmd.c:74 -msgid "FILE..." -msgstr "FILE..." - -#: grub-core/font/font_cmd.c:75 -msgid "Specify one or more font files to load." -msgstr "" - -#: grub-core/font/font_cmd.c:78 -msgid "List the loaded fonts." -msgstr "" - -#: grub-core/fs/archelp.c:216 grub-core/fs/archelp.c:278 -#: grub-core/fs/btrfs.c:1815 grub-core/fs/fshelp.c:227 grub-core/fs/jfs.c:736 -#: grub-core/fs/minix.c:369 grub-core/fs/ufs.c:454 -msgid "too deep nesting of symlinks" -msgstr "" - -#: grub-core/fs/bfs.c:228 grub-core/fs/fshelp.c:368 grub-core/fs/minix.c:270 -#: grub-core/kern/file.c:156 -msgid "attempt to read past the end of file" -msgstr "" - -#: grub-core/fs/btrfs.c:1698 grub-core/fs/btrfs.c:1957 -#: grub-core/fs/fshelp.c:189 grub-core/fs/fshelp.c:309 grub-core/fs/jfs.c:431 -#: grub-core/fs/minix.c:414 grub-core/fs/minix.c:562 -#: grub-core/fs/reiserfs.c:732 grub-core/fs/ufs.c:531 grub-core/fs/ufs.c:671 -#: grub-core/fs/zfs/zfs.c:2831 grub-core/fs/zfs/zfs.c:4247 -#, fuzzy -msgid "not a directory" -msgstr "%s ã¯ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã§ã¯ã‚りã¾ã›ã‚“!" - -#: grub-core/fs/btrfs.c:2063 grub-core/fs/fshelp.c:307 grub-core/fs/jfs.c:835 -#: grub-core/fs/zfs/zfs.c:3801 -#, fuzzy -msgid "not a regular file" -msgstr "ファイルã®å…±æœ‰ (FTP)" - -#: grub-core/fs/btrfs.c:2157 grub-core/fs/zfs/zfs.c:4333 -#: grub-core/partmap/msdos.c:400 -msgid "your core.img is unusually large. It won't fit in the embedding area" -msgstr "" - -#: grub-core/fs/fshelp.c:281 grub-core/fs/minix.c:630 grub-core/fs/ufs.c:661 -#: grub-core/fs/ufs.c:757 grub-core/kern/fs.c:168 grub-core/kern/fs.c:180 -#, fuzzy, c-format -msgid "invalid file name `%s'" -msgstr "èªè­˜ã§ããªã„エミュレーションå `%s' ã§ã™" - -#: grub-core/fs/zfs/zfs.c:453 -#, fuzzy -msgid "checksum verification failed" -msgstr "%s: SCSI イジェクト失敗\n" - -#: grub-core/fs/zfs/zfs.c:1465 -msgid "couldn't find a necessary member device of multi-device filesystem" -msgstr "" - -#: grub-core/fs/zfs/zfscrypt.c:292 -#, fuzzy -msgid "no decryption key available" -msgstr "証明書ã«ç§˜å¯†éµãŒã‚りã¾ã›ã‚“" - -#: grub-core/fs/zfs/zfscrypt.c:304 -#, fuzzy -msgid "MAC verification failed" -msgstr "%s: SCSI イジェクト失敗\n" - -#: grub-core/fs/zfs/zfscrypt.c:413 -msgid "Assume input is raw." -msgstr "" - -#: grub-core/fs/zfs/zfscrypt.c:414 -msgid "Assume input is hex." -msgstr "" - -#: grub-core/fs/zfs/zfscrypt.c:415 -msgid "Assume input is passphrase." -msgstr "" - -#: grub-core/fs/zfs/zfscrypt.c:437 util/grub-fstest.c:553 util/grub-mount.c:483 -#, fuzzy -msgid "Enter ZFS password: " -msgstr "パスワードを入力ã—ã¦ãã ã•ã„: " - -#: grub-core/fs/zfs/zfscrypt.c:476 -#, fuzzy -msgid "[-h|-p|-r] [FILE]" -msgstr "ファイル:" - -#: grub-core/fs/zfs/zfscrypt.c:477 -msgid "Import ZFS wrapping key stored in FILE." -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:51 -#, fuzzy -msgid "Virtual device is removed" -msgstr "%s: `%s' ã¯ãƒžãƒ«ãƒãƒ‘ーティションデãƒã‚¤ã‚¹ã§ã¯ã‚りã¾ã›ã‚“\n" - -#: grub-core/fs/zfs/zfsinfo.c:57 -#, fuzzy -msgid "Virtual device is faulted" -msgstr "%s: `%s' ã¯ãƒžãƒ«ãƒãƒ‘ーティションデãƒã‚¤ã‚¹ã§ã¯ã‚りã¾ã›ã‚“\n" - -#: grub-core/fs/zfs/zfsinfo.c:63 -#, fuzzy -msgid "Virtual device is offline" -msgstr "%s: `%s' ã¯ãƒžãƒ«ãƒãƒ‘ーティションデãƒã‚¤ã‚¹ã§ã¯ã‚りã¾ã›ã‚“\n" - -#. TRANSLATORS: degraded doesn't mean broken but that some of -#. component are missing but virtual device as whole is still usable. -#: grub-core/fs/zfs/zfsinfo.c:70 -#, fuzzy -msgid "Virtual device is degraded" -msgstr "%s: `%s' ã¯ãƒžãƒ«ãƒãƒ‘ーティションデãƒã‚¤ã‚¹ã§ã¯ã‚りã¾ã›ã‚“\n" - -#: grub-core/fs/zfs/zfsinfo.c:73 -#, fuzzy -msgid "Virtual device is online" -msgstr "%s: `%s' ã¯ãƒžãƒ«ãƒãƒ‘ーティションデãƒã‚¤ã‚¹ã§ã¯ã‚りã¾ã›ã‚“\n" - -#: grub-core/fs/zfs/zfsinfo.c:89 -msgid "Incorrect virtual device: no type available" -msgstr "" - -#. TRANSLATORS: The virtual devices form a tree (in graph-theoretical -#. sense). The nodes like mirror or raidz have children: member devices. -#. The "real" devices which actually store data are called "leafs" -#. (again borrowed from graph theory) and can be either disks -#. (or partitions) or files. -#: grub-core/fs/zfs/zfsinfo.c:105 -msgid "Leaf virtual device (file or disk)" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:113 -#, fuzzy -msgid "Bootpath: unavailable\n" -msgstr "音声デãƒã‚¤ã‚¹ãŒåˆ©ç”¨ã§ãã¾ã›ã‚“" - -#: grub-core/fs/zfs/zfsinfo.c:115 -#, c-format -msgid "Bootpath: %s\n" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:120 -#, fuzzy -msgid "Path: unavailable" -msgstr "音声デãƒã‚¤ã‚¹ãŒåˆ©ç”¨ã§ãã¾ã›ã‚“" - -#: grub-core/fs/zfs/zfsinfo.c:122 -#, c-format -msgid "Path: %s\n" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:127 -#, fuzzy -msgid "Devid: unavailable" -msgstr "音声デãƒã‚¤ã‚¹ãŒåˆ©ç”¨ã§ãã¾ã›ã‚“" - -#: grub-core/fs/zfs/zfsinfo.c:129 -#, fuzzy, c-format -msgid "Devid: %s\n" -msgstr "デãƒã‚¤ã‚¹ %s:" - -#: grub-core/fs/zfs/zfsinfo.c:148 -msgid "This VDEV is a mirror" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:153 -#, c-format -msgid "This VDEV is a RAIDZ%llu\n" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:158 -msgid "Incorrect VDEV" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:161 -#, c-format -msgid "VDEV with %d children\n" -msgstr "" - -#. TRANSLATORS: it's the element carying the number %d, not -#. total element number. And the number itself is fine, -#. only the element isn't. -#. -#: grub-core/fs/zfs/zfsinfo.c:177 -#, fuzzy, c-format -msgid "VDEV element number %d isn't correct\n" -msgstr "アクセスå¯èƒ½ãª HyperText ãƒªãƒ³ã‚¯ã®æ•°" - -#. TRANSLATORS: it's the element carying the number %d, not -#. total element number. This is used in enumeration -#. "Element number 1", "Element number 2", ... -#: grub-core/fs/zfs/zfsinfo.c:184 -#, fuzzy, c-format -msgid "VDEV element number %d:\n" -msgstr "アクセスå¯èƒ½ãª HyperText ãƒªãƒ³ã‚¯ã®æ•°" - -#: grub-core/fs/zfs/zfsinfo.c:193 -#, c-format -msgid "Unknown virtual device type: %s\n" -msgstr "" - -#. TRANSLATORS: Here we speak about ZFS pools it's semi-marketing, -#. semi-technical term by Sun/Oracle and should be translated in sync with -#. other ZFS-related software and documentation. -#: grub-core/fs/zfs/zfsinfo.c:254 -msgid "Pool state: active" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:255 -msgid "Pool state: exported" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:256 -msgid "Pool state: destroyed" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:257 -msgid "Pool state: reserved for hot spare" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:258 -msgid "Pool state: level 2 ARC device" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:259 -msgid "Pool state: uninitialized" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:260 -#, fuzzy -msgid "Pool state: unavailable" -msgstr "音声デãƒã‚¤ã‚¹ãŒåˆ©ç”¨ã§ãã¾ã›ã‚“" - -#: grub-core/fs/zfs/zfsinfo.c:261 -msgid "Pool state: potentially active" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:306 -#, fuzzy -msgid "Pool name: unavailable" -msgstr "音声デãƒã‚¤ã‚¹ãŒåˆ©ç”¨ã§ãã¾ã›ã‚“" - -#: grub-core/fs/zfs/zfsinfo.c:308 -#, fuzzy, c-format -msgid "Pool name: %s\n" -msgstr "(åå‰ç„¡ã—)" - -#: grub-core/fs/zfs/zfsinfo.c:313 -#, fuzzy -msgid "Pool GUID: unavailable" -msgstr "音声デãƒã‚¤ã‚¹ãŒåˆ©ç”¨ã§ãã¾ã›ã‚“" - -#: grub-core/fs/zfs/zfsinfo.c:315 -#, c-format -msgid "Pool GUID: %016llx\n" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:320 -msgid "Unable to retrieve pool state" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:322 -#, fuzzy -msgid "Unrecognized pool state" -msgstr "èªè­˜ã§ããªã„エミュレーションå `%s' ã§ã™" - -#. TRANSLATORS: There are undetermined number of virtual devices -#. in a device tree, not just one. -#. -#: grub-core/fs/zfs/zfsinfo.c:332 -msgid "No virtual device tree available" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:431 -msgid "Print ZFS info about DEVICE." -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:433 -msgid "FILESYSTEM [VARIABLE]" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:434 -msgid "Print ZFS-BOOTFSOBJ or store it into VARIABLE" -msgstr "" - -#. TRANSLATORS: at this position GRUB waits for the user to do an action -#. in remote debugger, namely to tell it to establish connection. -#: grub-core/gdb/gdb.c:48 -msgid "Now connect the remote debugger, please." -msgstr "" - -#. TRANSLATORS: GDB stub is a small part of -#. GDB functionality running on local host -#. which allows remote debugger to -#. connect to it. -#: grub-core/gdb/gdb.c:84 -msgid "Start GDB stub on given port" -msgstr "" - -#. TRANSLATORS: this refers to triggering -#. a breakpoint so that the user will land -#. into GDB. -#: grub-core/gdb/gdb.c:89 -#, fuzzy -msgid "Break into GDB" -msgstr "キーボードをウィンドウã¸åŸ‹ã‚è¾¼ã‚るよã†ã«ã™ã‚‹ã‹ã©ã†ã‹" - -#: grub-core/gdb/gdb.c:91 -msgid "Stop GDB stub" -msgstr "" - -#: grub-core/gettext/gettext.c:85 -#, fuzzy -msgid "premature end of file" -msgstr "コメント内ã§ãƒ•ァイル終端 (EOF) ã«é”ã—ã¾ã—ãŸ" - -#. TRANSLATORS: It refers to passing the string through gettext. -#. So it's "translate" in the same meaning as in what you're -#. doing now. -#. -#: grub-core/gettext/gettext.c:525 -msgid "Translates the string with the current settings." -msgstr "" - -#: grub-core/gfxmenu/gui_label.c:186 grub-core/normal/menu_text.c:184 -#, fuzzy -msgid "" -"Press enter to boot the selected OS, `e' to edit the commands before booting " -"or `c' for a command-line. ESC to return previous menu." -msgstr "" -"Enter キーã§é¸æŠžã—㟠OS ã‚’èµ·å‹•ã—ã¾ã™ã€‚ 'e' 㧠起動コマンド ã® ç·¨é›†ç”»é¢ ã«ãª" -"りã¾ã™ã€‚ 'c' 㧠コマンドライン ã‚’é–‹ãã¾ã™ã€‚ ESC ã§ å‰ã®ç”»é¢ã« 戻りã¾ã™ã€‚\n" - -#: grub-core/gfxmenu/gui_label.c:190 grub-core/normal/menu_text.c:192 -#, fuzzy -msgid "" -"Press enter to boot the selected OS, `e' to edit the commands before booting " -"or `c' for a command-line." -msgstr "" -"Enter キーã§é¸æŠžã—㟠OS ã‚’èµ·å‹•ã—ã¾ã™ã€‚ 'e' 㧠起動コマンド ã® ç·¨é›†ç”»é¢ ã«ãª" -"りã¾ã™ã€‚ 'c' 㧠コマンドライン ã‚’é–‹ãã¾ã™ã€‚\n" - -#: grub-core/gfxmenu/gui_label.c:194 -msgid "enter: boot, `e': options, `c': cmd-line" -msgstr "" - -#: grub-core/gfxmenu/gui_progress_bar.c:339 grub-core/normal/menu_text.c:446 -#, c-format -msgid "The highlighted entry will be executed automatically in %ds." -msgstr "ãƒã‚¤ãƒ©ã‚¤ãƒˆã•れãŸé …目㌠%d 秒後ã«è‡ªå‹•実行ã•れã¾ã™ã€‚" - -#. TRANSLATORS: 's' stands for seconds. -#. It's a standalone timeout notification. -#. Please use the short form in your language. -#: grub-core/gfxmenu/gui_progress_bar.c:344 -#, c-format -msgid "%ds remaining." -msgstr "" - -#. TRANSLATORS: 's' stands for seconds. -#. It's a standalone timeout notification. -#. Please use the shortest form available in you language. -#: grub-core/gfxmenu/gui_progress_bar.c:349 grub-core/normal/menu_text.c:444 -#: grub-core/normal/menu_text.c:462 -#, c-format -msgid "%ds" -msgstr "" - -#: grub-core/gfxmenu/view.c:103 -#, fuzzy -msgid "GRUB Boot Menu" -msgstr "ãƒã‚§ãƒƒã‚¯ãƒ»ãƒ¡ãƒ‹ãƒ¥ãƒ¼é …ç›®" - -#: grub-core/hello/hello.c:36 -#, fuzzy -msgid "Hello World" -msgstr "\"Hello World\"ã¨è¡¨ç¤ºã™ã‚‹ã€‚" - -#: grub-core/hello/hello.c:45 -#, fuzzy -msgid "Say `Hello World'." -msgstr "\"Hello World\"ã¨è¡¨ç¤ºã™ã‚‹ã€‚" - -#: grub-core/io/gzio.c:409 grub-core/kern/file.c:210 -msgid "attempt to seek outside of the file" -msgstr "" - -#. TRANSLATORS: It's about given file having some strange format, not -#. complete lack of gzip support. -#: grub-core/io/gzio.c:1228 grub-core/io/gzio.c:1237 grub-core/io/gzio.c:1244 -msgid "unsupported gzip format" -msgstr "" - -#: grub-core/io/lzopio.c:511 -#, fuzzy -msgid "lzop file corrupted" -msgstr "ファイルã®å…±æœ‰ (FTP)" - -#: grub-core/io/xzio.c:278 -msgid "xz file corrupted or unsupported block options" -msgstr "" - -#: grub-core/kern/arm/dl.c:277 grub-core/kern/arm64/dl.c:44 -#: grub-core/kern/i386/dl.c:36 grub-core/kern/ia64/dl.c:41 -#: grub-core/kern/mips/dl.c:48 grub-core/kern/powerpc/dl.c:36 -#: grub-core/kern/riscv/dl.c:47 grub-core/kern/sparc64/dl.c:36 -#: grub-core/kern/x86_64/dl.c:36 grub-core/loader/i386/bsd.c:1445 -#: grub-core/loader/i386/bsdXX.c:49 grub-core/loader/ia64/efi/linux.c:341 -#: grub-core/loader/mips/linux.c:298 grub-core/loader/multiboot.c:232 -#: grub-core/loader/multiboot_elfxx.c:73 -#: grub-core/loader/powerpc/ieee1275/linux.c:294 -#: grub-core/loader/sparc64/ieee1275/linux.c:331 -msgid "invalid arch-dependent ELF magic" -msgstr "" - -#: grub-core/kern/corecmd.c:178 -msgid "[ENVVAR=VALUE]" -msgstr "[ENVVAR=VALUE]" - -#: grub-core/kern/corecmd.c:179 -msgid "Set an environment variable." -msgstr "環境変数を設定ã™ã‚‹ã€‚" - -#: grub-core/kern/corecmd.c:183 -msgid "ENVVAR" -msgstr "ENVVAR" - -#: grub-core/kern/corecmd.c:184 -msgid "Remove an environment variable." -msgstr "環境変数を削除ã™ã‚‹ã€‚" - -#: grub-core/kern/corecmd.c:186 -msgid "[ARG]" -msgstr "[ARG]" - -#: grub-core/kern/corecmd.c:186 -#, fuzzy -msgid "List devices or files." -msgstr "ä¿¡é ¼ã®ãƒ‡ãƒã‚¤ã‚¹ã‚ˆã‚Šãƒ•ァイルé€ä¿¡ã‚’許å¯" - -#: grub-core/kern/corecmd.c:188 -msgid "Insert a module." -msgstr "" - -#: grub-core/kern/disk.c:236 grub-core/net/net.c:1390 -#, fuzzy, c-format -msgid "disk `%s' not found" -msgstr "%s ã¯ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã§ã¯ã‚りã¾ã›ã‚“!" - -#: grub-core/kern/disk_common.c:27 -msgid "attempt to read or write outside of partition" -msgstr "" - -#: grub-core/kern/dl.c:212 grub-core/kern/elf.c:61 grub-core/kern/elf.c:79 -#: grub-core/loader/i386/bsdXX.c:46 grub-core/loader/ia64/efi/linux.c:335 -#: grub-core/loader/multiboot_elfxx.c:69 -msgid "invalid arch-independent ELF magic" -msgstr "" - -#. TRANSLATORS: it refers to the lack of free slots. -#: grub-core/kern/emu/hostdisk.c:208 grub-core/kern/emu/hostdisk.c:466 -msgid "device count exceeds limit" -msgstr "" - -#: grub-core/kern/emu/hostdisk.c:342 util/editenv.c:54 util/grub-editenv.c:197 -#: util/grub-fstest.c:191 util/grub-mkfont.c:796 util/misc.c:114 -#: util/misc.c:129 util/setup.c:788 -#, fuzzy, c-format -msgid "cannot write to `%s': %s" -msgstr " VALUE 設定ã™ã‚‹å€¤\n" - -#. TRANSLATORS: Only one entry is ignored. However the suggestion -#. is to correct/delete the whole file. -#. device.map is a file indicating which -#. devices are available at boot time. Fedora populated it with -#. entries like (hd0,1) /dev/sda1 which would mean that every -#. partition is a separate disk for BIOS. Such entries were -#. inactive in GRUB due to its bug which is now gone. Without -#. this additional check these entries would be harmful now. -#. -#: grub-core/kern/emu/hostdisk.c:503 -#, c-format -msgid "" -"the device.map entry `%s' is invalid. Ignoring it. Please correct or delete " -"your device.map" -msgstr "" - -#. TRANSLATORS: device.map is a filename. Not to be translated. -#. device.map specifies disk correspondance overrides. Previously -#. one could create any kind of device name with this. Due to -#. some problems we decided to limit it to just a handful -#. possibilities. -#: grub-core/kern/emu/hostdisk.c:555 -#, c-format -msgid "" -"the drive name `%s' in device.map is incorrect. Using %s instead. Please use " -"the form [hfc]d[0-9]* (E.g. `hd0' or `cd')" -msgstr "" - -#: grub-core/kern/emu/hostfs.c:76 grub-core/kern/emu/hostfs.c:109 -#, fuzzy, c-format -msgid "can't open `%s': %s" -msgstr "%s: `%s' ãŒã‚ªãƒ¼ãƒ—ンã§ãã¾ã›ã‚“\n" - -#: grub-core/kern/emu/main.c:99 util/grub-fstest.c:516 util/grub-mount.c:452 -#, fuzzy -msgid "DEVICE_NAME" -msgstr "%s: デãƒã‚¤ã‚¹å㯠`%s' ã§ã™\n" - -#: grub-core/kern/emu/main.c:99 grub-core/loader/i386/bsd.c:136 -#: grub-core/loader/i386/bsd.c:169 util/grub-fstest.c:516 util/grub-mount.c:452 -#, fuzzy -msgid "Set root device." -msgstr "%(service)s on %(device)s" - -#. TRANSLATORS: There are many devices in device map. -#: grub-core/kern/emu/main.c:102 util/grub-probe.c:733 util/grub-setup.c:85 -#, c-format -msgid "use FILE as the device map [default=%s]" -msgstr "" - -#. TRANSLATORS: There are many devices in device map. -#: grub-core/kern/emu/main.c:105 -msgid "use FILE as memdisk" -msgstr "" - -#: grub-core/kern/emu/main.c:107 util/grub-setup.c:83 -#, c-format -msgid "use GRUB files in the directory DIR [default=%s]" -msgstr "" - -#: grub-core/kern/emu/main.c:108 include/grub/util/install.h:67 -#: util/grub-editenv.c:58 util/grub-fstest.c:525 util/grub-glue-efi.c:58 -#: util/grub-macbless.c:104 util/grub-mkfont.c:962 util/grub-mkimage.c:84 -#: util/grub-mklayout.c:56 util/grub-mount.c:458 util/grub-probe.c:735 -#: util/grub-render-label.c:74 util/grub-script-check.c:52 util/grub-setup.c:90 -#: util/grub-syslinux2cfg.c:78 -#, fuzzy -msgid "print verbose messages." -msgstr " -D アセンブラデãƒãƒƒã‚°ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã‚’生æˆã™ã‚‹\n" - -#: grub-core/kern/emu/main.c:109 grub-core/lib/gnulib/argp-parse.c:85 -msgid "SECS" -msgstr "" - -#: grub-core/kern/emu/main.c:109 -msgid "wait until a debugger will attach" -msgstr "" - -#: grub-core/kern/emu/main.c:171 util/grub-macbless.c:143 -#: util/grub-mkrelpath.c:61 util/grub-probe.c:874 util/grub-script-check.c:75 -#: util/grub-setup.c:203 -#, fuzzy, c-format -msgid "Unknown extra argument `%s'." -msgstr "%s: --auto/-a オプションã«å¯¾ã—ã¦ä¸å½“ãªå¼•æ•°\n" - -#: grub-core/kern/emu/main.c:185 -#, fuzzy -msgid "GRUB emulator." -msgstr "EFI エミュレーターをアンロードã™ã‚‹ã€‚" - -#: grub-core/kern/emu/main.c:213 util/grub-editenv.c:262 -#: util/grub-glue-efi.c:110 util/grub-macbless.c:173 util/grub-mkfont.c:1177 -#: util/grub-mkimage.c:266 util/grub-mklayout.c:494 -#: util/grub-mkpasswd-pbkdf2.c:132 util/grub-mkrelpath.c:96 -#: util/grub-probe.c:863 util/grub-render-label.c:152 -#: util/grub-script-check.c:160 util/grub-setup.c:262 -#: util/grub-syslinux2cfg.c:163 -msgid "Error in parsing command line arguments\n" -msgstr "" - -#. TRANSLATORS: In this case GRUB tells user what he has to do. -#: grub-core/kern/emu/main.c:248 -#, c-format -msgid "Run `gdb %s %d', and set ARGS.HOLD to zero.\n" -msgstr "" - -#: grub-core/kern/emu/misc.c:48 -#, fuzzy, c-format -msgid "%s: warning:" -msgstr "%s: 警告:" - -#: grub-core/kern/emu/misc.c:64 -#, c-format -msgid "%s: info:" -msgstr "%s: 情報:" - -#: grub-core/kern/emu/misc.c:79 util/grub-fstest.c:567 util/grub-fstest.c:576 -#: util/grub-mount.c:497 util/grub-mount.c:505 -#, c-format -msgid "%s: error:" -msgstr "%s: エラー:" - -#: grub-core/kern/emu/misc.c:176 -#, fuzzy, c-format -msgid "file `%s' is too big" -msgstr "コアイメージãŒå¤§ãã™ãŽã¾ã™" - -#: grub-core/kern/fs.c:120 -msgid "unknown filesystem" -msgstr "" - -#: grub-core/kern/mips/arc/init.c:273 grub-core/kern/mips/loongson/init.c:301 -#, fuzzy -msgid "Shutdown failed" -msgstr "%s: `%s' ã®ã‚¢ãƒ³ãƒžã‚¦ãƒ³ãƒˆã«å¤±æ•—\n" - -#: grub-core/kern/mips/arc/init.c:285 -#, fuzzy -msgid "Exit failed" -msgstr "%s: `%s' ã®ã‚¢ãƒ³ãƒžã‚¦ãƒ³ãƒˆã«å¤±æ•—\n" - -#: grub-core/kern/misc.c:351 grub-core/kern/misc.c:408 include/grub/misc.h:269 -#: include/grub/misc.h:278 -#, fuzzy -msgid "overflow is detected" -msgstr "%s ã¯ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã§ã¯ã‚りã¾ã›ã‚“!" - -#: grub-core/kern/partition.c:51 grub-core/partmap/bsdlabel.c:108 -#, c-format -msgid "Discarding improperly nested partition (%s,%s,%s%d)" -msgstr "" - -#: grub-core/kern/rescue_parser.c:73 util/grub-editenv.c:292 -#, fuzzy, c-format -msgid "Unknown command `%s'.\n" -msgstr " COMMAND 対象ã®ã‚³ãƒžãƒ³ãƒ‰ (ä»»æ„)\n" - -#: grub-core/lib/arg.c:31 -msgid "Display this help and exit." -msgstr "ã“ã®ãƒ˜ãƒ«ãƒ—を表示ã—ã¦çµ‚了ã™ã‚‹ã€‚" - -#: grub-core/lib/arg.c:33 -msgid "Display the usage of this command and exit." -msgstr "ã“ã®ã‚³ãƒžãƒ³ãƒ‰ã®ä½¿ç”¨æ³•を表示ã—ã¦çµ‚了ã™ã‚‹" - -#: grub-core/lib/arg.c:362 -#, c-format -msgid "missing mandatory option for `%s'" -msgstr "" - -#: grub-core/lib/arg.c:384 -#, fuzzy, c-format -msgid "the argument `%s' requires an integer" -msgstr "%s: --auto/-a オプションã«å¯¾ã—ã¦ä¸å½“ãªå¼•æ•°\n" - -#: grub-core/lib/arg.c:407 -#, c-format -msgid "" -"a value was assigned to the argument `%s' while it doesn't require an " -"argument" -msgstr "" - -#: grub-core/lib/backtrace.c:64 -msgid "Print backtrace." -msgstr "ãƒãƒƒã‚¯ãƒˆãƒ¬ãƒ¼ã‚¹ã‚’表示ã—ã¾ã™ã€‚" - -#: grub-core/lib/gnulib/argp-help.c:149 -#, c-format -msgid "ARGP_HELP_FMT: %s value is less than or equal to %s" -msgstr "" - -#: grub-core/lib/gnulib/argp-help.c:225 -#, c-format -msgid "%.*s: ARGP_HELP_FMT parameter requires a value" -msgstr "" - -#: grub-core/lib/gnulib/argp-help.c:235 -#, c-format -msgid "%.*s: Unknown ARGP_HELP_FMT parameter" -msgstr "" - -#: grub-core/lib/gnulib/argp-help.c:248 -#, c-format -msgid "Garbage in ARGP_HELP_FMT: %s" -msgstr "" - -#: grub-core/lib/gnulib/argp-help.c:1229 -msgid "" -"Mandatory or optional arguments to long options are also mandatory or " -"optional for any corresponding short options." -msgstr "" - -#: grub-core/lib/gnulib/argp-help.c:1620 -msgid " or: " -msgstr "" - -#: grub-core/lib/gnulib/argp-help.c:1632 -#, fuzzy -msgid " [OPTION...]" -msgstr "使用法: %s [option...] [asmfile...]\n" - -#: grub-core/lib/gnulib/argp-help.c:1659 -#, fuzzy, c-format -msgid "Try '%s --help' or '%s --usage' for more information.\n" -msgstr "詳ã—ã㯠`%s --help' を実行ã—ã¦ãã ã•ã„。\n" - -#: grub-core/lib/gnulib/argp-help.c:1687 -#, fuzzy, c-format -msgid "Report bugs to %s.\n" -msgstr " VALUE 設定ã™ã‚‹å€¤\n" - -#: grub-core/lib/gnulib/argp-help.c:1888 grub-core/lib/gnulib/error.c:195 -#, fuzzy -msgid "Unknown system error" -msgstr "libnotify ã®åˆæœŸåŒ–ã«å¤±æ•—ã—ã¾ã—ãŸ" - -#: grub-core/lib/gnulib/argp-parse.c:81 -#, fuzzy -msgid "give this help list" -msgstr " --help ã“ã®ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã‚’表示ã—ã¦çµ‚了ã™ã‚‹\n" - -#: grub-core/lib/gnulib/argp-parse.c:82 -msgid "give a short usage message" -msgstr "" - -#: grub-core/lib/gnulib/argp-parse.c:83 util/grub-mkfont.c:946 -#, fuzzy -msgid "NAME" -msgstr "(åå‰ç„¡ã—)" - -#: grub-core/lib/gnulib/argp-parse.c:84 -#, fuzzy -msgid "set the program name" -msgstr "èªè­˜ã§ããªã„エミュレーションå `%s' ã§ã™" - -#: grub-core/lib/gnulib/argp-parse.c:86 -msgid "hang for SECS seconds (default 3600)" -msgstr "" - -#: grub-core/lib/gnulib/argp-parse.c:143 -#, fuzzy -msgid "print program version" -msgstr "\t[プログラム割込ã¿ã‚’è¦æ±‚: %s]\n" - -#: grub-core/lib/gnulib/argp-parse.c:160 -msgid "(PROGRAM ERROR) No version known!?" -msgstr "" - -#: grub-core/lib/gnulib/argp-parse.c:613 -#, fuzzy, c-format -msgid "%s: Too many arguments\n" -msgstr "%s: 引数ãŒå¤šã™ãŽã¾ã™\n" - -#: grub-core/lib/gnulib/argp-parse.c:759 -msgid "(PROGRAM ERROR) Option should have been recognized!?" -msgstr "" - -#: grub-core/lib/gnulib/getopt.c:278 -#, fuzzy, c-format -msgid "%s: option '%s%s' is ambiguous\n" -msgstr "%s ã¯ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã§ã¯ã‚りã¾ã›ã‚“!" - -#: grub-core/lib/gnulib/getopt.c:284 -#, fuzzy, c-format -msgid "%s: option '%s%s' is ambiguous; possibilities:" -msgstr "%s ã¯ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã§ã¯ã‚りã¾ã›ã‚“!" - -#: grub-core/lib/gnulib/getopt.c:319 -#, fuzzy, c-format -msgid "%s: unrecognized option '%s%s'\n" -msgstr "使用法: %s [option...] [asmfile...]\n" - -#: grub-core/lib/gnulib/getopt.c:345 -#, fuzzy, c-format -msgid "%s: option '%s%s' doesn't allow an argument\n" -msgstr "%s: --auto/-a オプションã«å¯¾ã—ã¦ä¸å½“ãªå¼•æ•°\n" - -#: grub-core/lib/gnulib/getopt.c:360 -#, fuzzy, c-format -msgid "%s: option '%s%s' requires an argument\n" -msgstr "%s: --auto/-a オプションã«å¯¾ã—ã¦ä¸å½“ãªå¼•æ•°\n" - -#: grub-core/lib/gnulib/getopt.c:621 -#, fuzzy, c-format -msgid "%s: invalid option -- '%c'\n" -msgstr "使用法: %s [option...] [asmfile...]\n" - -#: grub-core/lib/gnulib/getopt.c:636 grub-core/lib/gnulib/getopt.c:682 -#, fuzzy, c-format -msgid "%s: option requires an argument -- '%c'\n" -msgstr "%s: --auto/-a オプションã«å¯¾ã—ã¦ä¸å½“ãªå¼•æ•°\n" - -#: grub-core/lib/gnulib/openat-die.c:38 -#, fuzzy, c-format -msgid "unable to record current working directory" -msgstr "カーãƒãƒ«ã‚¤ãƒ¡ãƒ¼ã‚¸ã‚’圧縮ã§ãã¾ã›ã‚“" - -#: grub-core/lib/gnulib/openat-die.c:57 -#, c-format -msgid "failed to return to initial working directory" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:135 grub-core/osdep/aros/hostdisk.c:523 -msgid "Success" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:138 -#, fuzzy -msgid "No match" -msgstr "(åå‰ç„¡ã—)" - -#: grub-core/lib/gnulib/regcomp.c:141 -#, fuzzy -msgid "Invalid regular expression" -msgstr "%s: --auto/-a オプションã«å¯¾ã—ã¦ä¸å½“ãªå¼•æ•°\n" - -#: grub-core/lib/gnulib/regcomp.c:144 -#, fuzzy -msgid "Invalid collation character" -msgstr "エスケープ文字内ã§ãƒ•ァイル終端 (EOF) ã«é”ã—ã¾ã—ãŸ" - -#: grub-core/lib/gnulib/regcomp.c:147 -msgid "Invalid character class name" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:150 -msgid "Trailing backslash" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:153 -#, fuzzy -msgid "Invalid back reference" -msgstr "%s: --auto/-a オプションã«å¯¾ã—ã¦ä¸å½“ãªå¼•æ•°\n" - -#: grub-core/lib/gnulib/regcomp.c:156 -msgid "Unmatched [, [^, [:, [., or [=" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:159 -msgid "Unmatched ( or \\(" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:162 -msgid "Unmatched \\{" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:165 -msgid "Invalid content of \\{\\}" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:168 -#, fuzzy -msgid "Invalid range end" -msgstr "コメント内ã§ãƒ•ァイル終端 (EOF) ã«é”ã—ã¾ã—ãŸ" - -#: grub-core/lib/gnulib/regcomp.c:171 -msgid "Memory exhausted" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:174 -msgid "Invalid preceding regular expression" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:177 -msgid "Premature end of regular expression" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:180 -msgid "Regular expression too big" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:183 -msgid "Unmatched ) or \\)" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:531 -#, fuzzy -msgid "unknown regexp error" -msgstr "libnotify ã®åˆæœŸåŒ–ã«å¤±æ•—ã—ã¾ã—ãŸ" - -#: grub-core/lib/gnulib/regcomp.c:676 -msgid "No previous regular expression" -msgstr "" - -#: grub-core/lib/i386/halt.c:77 -msgid "GRUB doesn't know how to halt this machine yet!" -msgstr "" - -#: grub-core/lib/legacy_parse.c:75 -msgid "Default server is ${net_default_server}" -msgstr "" - -#: grub-core/lib/legacy_parse.c:844 grub-core/video/colors.c:296 -#: grub-core/video/colors.c:305 grub-core/video/colors.c:311 -#: grub-core/video/colors.c:327 util/render-label.c:84 util/render-label.c:98 -#, fuzzy, c-format -msgid "invalid color specification `%s'" -msgstr "%s: --auto/-a オプションã«å¯¾ã—ã¦ä¸å½“ãªå¼•æ•°\n" - -#: grub-core/lib/mips/arc/reboot.c:32 grub-core/lib/mips/loongson/reboot.c:61 -#, fuzzy -msgid "Reboot failed" -msgstr "%s: `%s' ã®ã‚¢ãƒ³ãƒžã‚¦ãƒ³ãƒˆã«å¤±æ•—\n" - -#: grub-core/lib/random.c:113 -msgid "[LENGTH]" -msgstr "" - -#: grub-core/lib/random.c:114 -msgid "Hexdump random data." -msgstr "" - -#: grub-core/loader/arm/linux.c:242 -msgid "device tree must be supplied (see `devicetree' command)" -msgstr "" - -#: grub-core/loader/arm/linux.c:334 -#, fuzzy -msgid "invalid zImage" -msgstr "%s: --auto/-a オプションã«å¯¾ã—ã¦ä¸å½“ãªå¼•æ•°\n" - -#: grub-core/loader/arm/linux.c:450 grub-core/loader/efi/fdt.c:144 -#, fuzzy -msgid "invalid device tree" -msgstr "無効ãªãƒ‡ãƒã‚¤ã‚¹ `%s' ã§ã™ã€‚\n" - -#: grub-core/loader/arm/linux.c:493 grub-core/loader/arm64/linux.c:383 -#: grub-core/loader/i386/linux.c:1125 grub-core/loader/i386/pc/linux.c:479 -#: grub-core/loader/i386/xen.c:962 grub-core/loader/i386/xen.c:964 -#: grub-core/loader/ia64/efi/linux.c:591 grub-core/loader/mips/linux.c:501 -#: grub-core/loader/powerpc/ieee1275/linux.c:383 -#: grub-core/loader/riscv/linux.c:50 -#: grub-core/loader/sparc64/ieee1275/linux.c:511 -msgid "Load Linux." -msgstr "Linuxをロードã™ã‚‹" - -#: grub-core/loader/arm/linux.c:495 grub-core/loader/arm64/linux.c:385 -#: grub-core/loader/i386/linux.c:1127 grub-core/loader/i386/pc/linux.c:482 -#: grub-core/loader/i386/xen.c:966 grub-core/loader/ia64/efi/linux.c:594 -#: grub-core/loader/mips/linux.c:503 -#: grub-core/loader/powerpc/ieee1275/linux.c:385 -#: grub-core/loader/riscv/linux.c:52 -#: grub-core/loader/sparc64/ieee1275/linux.c:513 -msgid "Load initrd." -msgstr "initrdをロードã™ã‚‹" - -#. TRANSLATORS: DTB stands for device tree blob. -#: grub-core/loader/arm/linux.c:498 grub-core/loader/efi/fdt.c:169 -#, fuzzy -msgid "Load DTB file." -msgstr "XNUイメージをロードã™ã‚‹" - -#: grub-core/loader/arm64/linux.c:59 -msgid "" -"plain image kernel not supported - rebuild with CONFIG_(U)EFI_STUB enabled" -msgstr "" - -#: grub-core/loader/arm64/xen_boot.c:156 -msgid "failed to get FDT" -msgstr "" - -#: grub-core/loader/arm64/xen_boot.c:418 -#, fuzzy -msgid "you need to load the Xen Hypervisor first" -msgstr "ã¾ãšã‚«ãƒ¼ãƒãƒ«ã‚’ロードã™ã‚‹å¿…è¦ãŒã‚りã¾ã™" - -#: grub-core/loader/arm64/xen_boot.c:516 -msgid "Load a xen hypervisor." -msgstr "" - -#: grub-core/loader/arm64/xen_boot.c:519 -#, fuzzy -msgid "Load a xen module." -msgstr "ç¾åœ¨ã®ã‚«ãƒ¼ãƒãƒ«ç”¨ã«ãƒ¢ã‚¸ãƒ¥ãƒ¼ãƒ«ãƒ‘ッケージをコンパイル" - -#: grub-core/loader/efi/appleloader.c:231 -#, fuzzy -msgid "[OPTS]" -msgstr "[OPTIONS] DISK" - -#. TRANSLATORS: This command is used on EFI to -#. switch to BIOS mode and boot the OS requiring -#. BIOS. -#: grub-core/loader/efi/appleloader.c:235 -msgid "Boot BIOS-based system." -msgstr "BIOSベースã®ã‚·ã‚¹ãƒ†ãƒ ã‚’èµ·å‹•ã—ã¾ã™ã€‚" - -#: grub-core/loader/efi/chainloader.c:421 -#: grub-core/loader/i386/pc/chainloader.c:303 -msgid "Load another boot loader." -msgstr "ä»–ã®ãƒ–ートローダーをロードã™ã‚‹" - -#: grub-core/loader/i386/bsd.c:103 -msgid "Display output on all consoles." -msgstr "ã™ã¹ã¦ã®ç«¯æœ«ã®å‡ºåŠ›ã‚’è¡¨ç¤ºã™ã‚‹" - -#: grub-core/loader/i386/bsd.c:104 grub-core/loader/i386/bsd.c:138 -#: grub-core/loader/i386/bsd.c:171 -msgid "Use serial console." -msgstr "シリアルコンソールを使ã†" - -#: grub-core/loader/i386/bsd.c:105 grub-core/loader/i386/bsd.c:131 -#: grub-core/loader/i386/bsd.c:159 -msgid "Ask for file name to reboot from." -msgstr "å†èµ·å‹•ã™ã‚‹ãƒ•ァイルåを確èªã™ã‚‹" - -#: grub-core/loader/i386/bsd.c:106 -msgid "Use CD-ROM as root." -msgstr "CDROM をルートã¨ã—ã¦ä½¿ç”¨ã—ã¾ã™ã€‚" - -#: grub-core/loader/i386/bsd.c:107 -msgid "Invoke user configuration routing." -msgstr "" - -#: grub-core/loader/i386/bsd.c:108 grub-core/loader/i386/bsd.c:135 -#: grub-core/loader/i386/bsd.c:162 -msgid "Enter in KDB on boot." -msgstr "起動時ã«KDBã«å…¥ã‚‹" - -#: grub-core/loader/i386/bsd.c:109 -msgid "Use GDB remote debugger instead of DDB." -msgstr "DDBã®ä»£ã‚りã«GDBリモートデãƒãƒƒã‚¬ã‚’使ã†" - -#: grub-core/loader/i386/bsd.c:110 -msgid "Disable all boot output." -msgstr "ã™ã¹ã¦ã®èµ·å‹•時ã®å‡ºåŠ›ã‚’è¡¨ç¤ºã—ãªã„" - -#: grub-core/loader/i386/bsd.c:112 -msgid "Wait for keypress after every line of output." -msgstr "" - -#: grub-core/loader/i386/bsd.c:114 -msgid "Use compiled-in root device." -msgstr "" - -#: grub-core/loader/i386/bsd.c:115 grub-core/loader/i386/bsd.c:134 -#: grub-core/loader/i386/bsd.c:165 -msgid "Boot into single mode." -msgstr "シングルモードã§èµ·å‹•ã™ã‚‹" - -#: grub-core/loader/i386/bsd.c:116 grub-core/loader/i386/bsd.c:166 -msgid "Boot with verbose messages." -msgstr "" - -#: grub-core/loader/i386/bsd.c:132 grub-core/loader/i386/bsd.c:160 -msgid "Don't reboot, just halt." -msgstr "" - -#: grub-core/loader/i386/bsd.c:133 grub-core/loader/i386/bsd.c:161 -#, fuzzy -msgid "Change configured devices." -msgstr "ä¿¡é ¼ã®ãƒ‡ãƒã‚¤ã‚¹ã‚ˆã‚Šãƒ•ァイルé€ä¿¡ã‚’許å¯" - -#. TRANSLATORS: "com" is static and not to be translated. It refers to -#. serial ports e.g. com1. -#. -#: grub-core/loader/i386/bsd.c:142 -msgid "comUNIT[,SPEED]" -msgstr "" - -#: grub-core/loader/i386/bsd.c:157 -msgid "Disable SMP." -msgstr "SMPを使用ã—ãªã„" - -#: grub-core/loader/i386/bsd.c:158 -msgid "Disable ACPI." -msgstr "ACPIを使用ã—ãªã„" - -#: grub-core/loader/i386/bsd.c:164 -msgid "Don't display boot diagnostic messages." -msgstr "起動時ã®è¨ºæ–­ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã‚’表示ã—ãªã„" - -#: grub-core/loader/i386/bsd.c:167 -msgid "Boot with debug messages." -msgstr "デãƒãƒƒã‚°ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã‚’表示ã—ã¦èµ·å‹•ã™ã‚‹" - -#: grub-core/loader/i386/bsd.c:168 -#, fuzzy -msgid "Suppress normal output (warnings remain)." -msgstr "通常ã®å‡ºåŠ›ã‚’æŠ‘ãˆã‚‹(警告ã®ã¿)" - -#. TRANSLATORS: "com" is static and not to be translated. It refers to -#. serial ports e.g. com1. -#. -#: grub-core/loader/i386/bsd.c:175 -msgid "[ADDR|comUNIT][,SPEED]" -msgstr "[ADDR|comUNIT][,SPEED]" - -#: grub-core/loader/i386/bsd.c:489 grub-core/loader/i386/bsd.c:555 -#, fuzzy -msgid "name" -msgstr "(åå‰ç„¡ã—)" - -#: grub-core/loader/i386/bsd.c:489 grub-core/loader/i386/bsd.c:555 -msgid "type" -msgstr "" - -#: grub-core/loader/i386/bsd.c:489 grub-core/loader/i386/bsd.c:555 -#, fuzzy -msgid "addr" -msgstr "使用法: %s [option(s)] [addr(s)]\n" - -#: grub-core/loader/i386/bsd.c:490 grub-core/loader/i386/bsd.c:556 -#, fuzzy -msgid "size" -msgstr "ç¾åœ¨ã®ã‚µã‚¤ã‚º:" - -#: grub-core/loader/i386/bsd.c:1147 grub-core/loader/i386/linux.c:466 -#: grub-core/loader/i386/xnu.c:1030 -#, fuzzy -msgid "Booting in blind mode" -msgstr " -M,--mri MRI 互æ›ãƒ¢ãƒ¼ãƒ‰ã§ã‚¢ã‚»ãƒ³ãƒ–ルを行ã†\n" - -#: grub-core/loader/i386/bsd.c:2137 -msgid "Load kernel of FreeBSD." -msgstr "FreeBSDã®ã‚«ãƒ¼ãƒãƒ«ã‚’ロードã™ã‚‹" - -#: grub-core/loader/i386/bsd.c:2140 -msgid "Load kernel of OpenBSD." -msgstr "OpenBSDã®ã‚«ãƒ¼ãƒãƒ«ã‚’ロードã™ã‚‹" - -#: grub-core/loader/i386/bsd.c:2143 -msgid "Load kernel of NetBSD." -msgstr "NetBSDã®ã‚«ãƒ¼ãƒãƒ«ã‚’ロードã™ã‚‹" - -#: grub-core/loader/i386/bsd.c:2147 -msgid "Load FreeBSD env." -msgstr "" - -#: grub-core/loader/i386/bsd.c:2150 -msgid "Load FreeBSD kernel module." -msgstr "FreeBSDã®ã‚«ãƒ¼ãƒãƒ«ãƒ¢ã‚¸ãƒ¥ãƒ¼ãƒ«ã‚’ロードã™ã‚‹" - -#: grub-core/loader/i386/bsd.c:2153 -#, fuzzy -msgid "Load NetBSD kernel module." -msgstr "ç¾åœ¨ã®ã‚«ãƒ¼ãƒãƒ«ç”¨ã«ãƒ¢ã‚¸ãƒ¥ãƒ¼ãƒ«ãƒ‘ッケージをコンパイル" - -#: grub-core/loader/i386/bsd.c:2156 -msgid "Load NetBSD kernel module (ELF)." -msgstr "" - -#: grub-core/loader/i386/bsd.c:2159 -msgid "Load FreeBSD kernel module (ELF)." -msgstr "FreeBSDã®ã‚«ãƒ¼ãƒãƒ«ãƒ¢ã‚¸ãƒ¥ãƒ¼ãƒ«ã‚’ロードã™ã‚‹(ELF)" - -#. TRANSLATORS: ramdisk isn't identifier, -#. it can be translated. -#: grub-core/loader/i386/bsd.c:2165 -#, fuzzy -msgid "Load kOpenBSD ramdisk." -msgstr "OpenBSDã®ã‚«ãƒ¼ãƒãƒ«ã‚’ロードã™ã‚‹" - -#. TRANSLATORS: "payload" is a term used -#. by coreboot and must be translated in -#. sync with coreboot. If unsure, -#. let it untranslated. -#: grub-core/loader/i386/coreboot/chainloader.c:510 -#, fuzzy -msgid "Load another coreboot payload" -msgstr "ä»–ã®ãƒ–ートローダーをロードã™ã‚‹" - -#: grub-core/loader/i386/linux.c:876 -msgid "Legacy `ask' parameter no longer supported." -msgstr "" - -#: grub-core/loader/i386/linux.c:892 grub-core/loader/i386/linux.c:902 -#: grub-core/loader/i386/linux.c:932 -#, c-format -msgid "%s is deprecated. Use set gfxpayload=%s before linux command instead.\n" -msgstr "" - -#. TRANSLATORS: "x" has to be entered in, like an identifier, -#. so please don't use better Unicode codepoints. -#: grub-core/loader/i386/linux.c:915 -#, c-format -msgid "" -"%s is deprecated. VGA mode %d isn't recognized. Use set " -"gfxpayload=WIDTHxHEIGHT[xDEPTH] before linux command instead.\n" -msgstr "" - -#: grub-core/loader/i386/pc/chainloader.c:302 -#, fuzzy -msgid "[--force|--bpb] FILE" -msgstr "ファイルã®å…±æœ‰ (FTP)" - -#: grub-core/loader/i386/pc/freedos.c:148 util/setup.c:293 -#, c-format -msgid "the size of `%s' is too large" -msgstr "`%s' ã®ã‚µã‚¤ã‚ºãŒå¤§ãã™ãŽã¾ã™" - -#: grub-core/loader/i386/pc/freedos.c:183 -#, fuzzy -msgid "Load FreeDOS kernel.sys." -msgstr "FreeBSDã®ã‚«ãƒ¼ãƒãƒ«ãƒ¢ã‚¸ãƒ¥ãƒ¼ãƒ«ã‚’ロードã™ã‚‹" - -#: grub-core/loader/i386/pc/ntldr.c:155 -msgid "Load NTLDR or BootMGR." -msgstr "" - -#. TRANSLATORS: it's about guessing which GRUB disk -#. is which Plan9 disk. If your language has no -#. word "mapping" you can use another word which -#. means that the GRUBDEVICE and PLAN9DEVICE are -#. actually the same device, just named differently -#. in OS and GRUB. -#: grub-core/loader/i386/pc/plan9.c:59 -msgid "Override guessed mapping of Plan9 devices." -msgstr "" - -#: grub-core/loader/i386/pc/plan9.c:60 -msgid "GRUBDEVICE=PLAN9DEVICE" -msgstr "" - -#: grub-core/loader/i386/pc/plan9.c:599 -#, fuzzy -msgid "KERNEL ARGS" -msgstr "-- カーãƒãƒ«ã®ãƒã‚¤ãƒŠãƒªãƒ‘ッケージ:" - -#: grub-core/loader/i386/pc/plan9.c:599 -#, fuzzy -msgid "Load Plan9 kernel." -msgstr "-- カーãƒãƒ«ã®ãƒã‚¤ãƒŠãƒªãƒ‘ッケージ:" - -#: grub-core/loader/i386/pc/pxechainloader.c:161 -#, fuzzy -msgid "Load a PXE image." -msgstr "XNUイメージをロードã™ã‚‹" - -#: grub-core/loader/i386/pc/truecrypt.c:226 -msgid "Load Truecrypt ISO." -msgstr "" - -#: grub-core/loader/i386/xen.c:781 grub-core/loader/i386/xen.c:865 -msgid "initrd already loaded" -msgstr "" - -#: grub-core/loader/i386/xen.c:968 -#, fuzzy -msgid "Load module." -msgstr "モジュールを削除ã™ã‚‹" - -#: grub-core/loader/i386/xnu.c:1003 -#, fuzzy -msgid "Press any key to launch xnu" -msgstr "ç¶šã‘ã‚‹ã«ã¯ä½•ã‹ã‚­ãƒ¼ã‚’押ã—ã¦ãã ã•ã„..." - -#. TRANSLATORS: `device-properties' -#. is a variable name, -#. not a program. -#: grub-core/loader/i386/xnu.c:1159 -msgid "Load `device-properties' dump." -msgstr "" - -#: grub-core/loader/ia64/efi/linux.c:124 -msgid "Could not locate FPSWA driver" -msgstr "" - -#: grub-core/loader/ia64/efi/linux.c:132 -msgid "FPSWA protocol wasn't able to find the interface" -msgstr "" - -#: grub-core/loader/ia64/efi/linux.c:580 -#, fuzzy -msgid "No FPSWA found" -msgstr " -W --no-warn 警告を抑止ã™ã‚‹\n" - -#: grub-core/loader/ia64/efi/linux.c:582 -#, c-format -msgid "FPSWA revision: %x\n" -msgstr "" - -#: grub-core/loader/ia64/efi/linux.c:591 -#, fuzzy -msgid "FILE [ARGS...]" -msgstr "ファイルã®é¸æŠž" - -#: grub-core/loader/ia64/efi/linux.c:597 -#, fuzzy -msgid "Display FPSWA version." -msgstr "GNU アセンブラ ãƒãƒ¼ã‚¸ãƒ§ãƒ³ %s (%s)ã€BFD ãƒãƒ¼ã‚¸ãƒ§ãƒ³ %s を使用\n" - -#: grub-core/loader/multiboot.c:248 -msgid "WARNING: no console will be available to OS" -msgstr "" - -#: grub-core/loader/multiboot.c:450 -msgid "Load a multiboot 2 kernel." -msgstr "multiboot 2ã®ã‚«ãƒ¼ãƒãƒ«ã‚’ロードã™ã‚‹" - -#: grub-core/loader/multiboot.c:453 -msgid "Load a multiboot 2 module." -msgstr "multiboot 2ã®ãƒ¢ã‚¸ãƒ¥ãƒ¼ãƒ«ã‚’ロードã™ã‚‹" - -#: grub-core/loader/multiboot.c:456 -#, fuzzy -msgid "Load a multiboot kernel." -msgstr "-- カーãƒãƒ«ã®ãƒã‚¤ãƒŠãƒªãƒ‘ッケージ:" - -#: grub-core/loader/multiboot.c:459 -msgid "Load a multiboot module." -msgstr "" - -#: grub-core/loader/riscv/linux.c:30 grub-core/loader/riscv/linux.c:40 -msgid "Linux not supported yet" -msgstr "" - -#: grub-core/loader/xnu.c:1416 grub-core/term/gfxterm_background.c:45 -#, fuzzy -msgid "Background image mode." -msgstr "エミュレーションモードåãŒã‚りã¾ã›ã‚“" - -#. TRANSLATORS: This refers to background image mode (stretched or -#. in left-top corner). Note that GRUB will accept only original -#. keywords stretch and normal, not the translated ones. -#. So please put both in translation -#. e.g. stretch(=%STRETCH%)|normal(=%NORMAL%). -#. The percents mark the translated version. Since many people -#. may not know the word stretch or normal I recommend -#. putting the translation either here or in "Background image mode." -#. string. -#: grub-core/loader/xnu.c:1416 grub-core/term/gfxterm_background.c:55 -msgid "stretch|normal" -msgstr "" - -#: grub-core/loader/xnu.c:1482 -msgid "Load XNU image." -msgstr "XNUイメージをロードã™ã‚‹" - -#: grub-core/loader/xnu.c:1484 -msgid "Load 64-bit XNU image." -msgstr "64ビットXNUイメージをロードã™ã‚‹" - -#: grub-core/loader/xnu.c:1486 -msgid "Load XNU extension package." -msgstr "" - -#: grub-core/loader/xnu.c:1488 -msgid "Load XNU extension." -msgstr "" - -#. TRANSLATORS: OSBundleRequired is a -#. variable name in xnu extensions -#. manifests. It behaves mostly like -#. GNU/Linux runlevels. -#. -#: grub-core/loader/xnu.c:1495 -#, fuzzy -msgid "DIRECTORY [OSBundleRequired]" -msgstr "フォルダー・ペイン" - -#. TRANSLATORS: There are many extensions -#. in extension directory. -#: grub-core/loader/xnu.c:1498 -msgid "Load XNU extension directory." -msgstr "" - -#. TRANSLATORS: ramdisk here isn't identifier. It can be translated. -#: grub-core/loader/xnu.c:1501 -msgid "Load XNU ramdisk. It will be available in OS as md0." -msgstr "" - -#: grub-core/loader/xnu.c:1505 -msgid "Load a splash image for XNU." -msgstr "" - -#: grub-core/loader/xnu.c:1510 -msgid "Load an image of hibernated XNU." -msgstr "" - -#: grub-core/mmap/mmap.c:538 -msgid "ADDR1,MASK1[,ADDR2,MASK2[,...]]" -msgstr "" - -#: grub-core/mmap/mmap.c:539 -msgid "Declare memory regions as faulty (badram)." -msgstr "" - -#: grub-core/mmap/mmap.c:541 -#, fuzzy -msgid "FROM[K|M|G] TO[K|M|G]" -msgstr "接続:" - -#: grub-core/mmap/mmap.c:542 -msgid "Remove any memory regions in specified range." -msgstr "" - -#: grub-core/net/bootp.c:653 -#, fuzzy -msgid "four arguments expected" -msgstr "%s: 引数ãŒå¤šã™ãŽã¾ã™\n" - -#: grub-core/net/bootp.c:661 grub-core/net/net.c:1155 -#, c-format -msgid "unrecognised network interface `%s'" -msgstr "" - -#: grub-core/net/bootp.c:664 -#, fuzzy -msgid "no DHCP info found" -msgstr "DHCPサーãƒãŒã‚¤ãƒ³ã‚¹ãƒˆãƒ¼ãƒ«ã•れã¦ã„ã¾ã›ã‚“" - -#: grub-core/net/bootp.c:674 -#, fuzzy -msgid "no DHCP options found" -msgstr "DHCPサーãƒãŒã‚¤ãƒ³ã‚¹ãƒˆãƒ¼ãƒ«ã•れã¦ã„ã¾ã›ã‚“" - -#: grub-core/net/bootp.c:682 -#, fuzzy -msgid "invalid DHCP option code" -msgstr "DHCPサーãƒãŒã‚¤ãƒ³ã‚¹ãƒˆãƒ¼ãƒ«ã•れã¦ã„ã¾ã›ã‚“" - -#: grub-core/net/bootp.c:686 -#, fuzzy, c-format -msgid "no DHCP option %u found" -msgstr "DHCPサーãƒãŒã‚¤ãƒ³ã‚¹ãƒˆãƒ¼ãƒ«ã•れã¦ã„ã¾ã›ã‚“" - -#: grub-core/net/bootp.c:743 -#, c-format -msgid "unrecognised DHCP option format specification `%s'" -msgstr "" - -#: grub-core/net/bootp.c:767 -msgid "no network card found" -msgstr "" - -#: grub-core/net/bootp.c:859 grub-core/net/net.c:389 -#, fuzzy, c-format -msgid "couldn't autoconfigure %s" -msgstr "%s/linux シンボリックリンクを作æˆã§ãã¾ã›ã‚“ã§ã—ãŸ!" - -#: grub-core/net/bootp.c:873 grub-core/net/bootp.c:876 -msgid "[CARD]" -msgstr "" - -#: grub-core/net/bootp.c:874 -msgid "perform a bootp autoconfiguration" -msgstr "" - -#: grub-core/net/bootp.c:877 -msgid "perform a DHCP autoconfiguration" -msgstr "" - -#: grub-core/net/bootp.c:879 -msgid "VAR INTERFACE NUMBER DESCRIPTION" -msgstr "" - -#: grub-core/net/bootp.c:880 -msgid "" -"retrieve DHCP option and save it into VAR. If VAR is - then print the value." -msgstr "" - -#: grub-core/net/dns.c:459 -#, fuzzy -msgid "no DNS servers configured" -msgstr "DHCPサーãƒãŒã‚¤ãƒ³ã‚¹ãƒˆãƒ¼ãƒ«ã•れã¦ã„ã¾ã›ã‚“" - -#: grub-core/net/dns.c:522 -msgid "domain name component is too long" -msgstr "" - -#: grub-core/net/dns.c:618 grub-core/net/dns.c:666 -msgid "no DNS record found" -msgstr "" - -#: grub-core/net/dns.c:626 -msgid "no DNS reply received" -msgstr "" - -#: grub-core/net/dns.c:682 -msgid "only ipv4" -msgstr "" - -#: grub-core/net/dns.c:686 -msgid "only ipv6" -msgstr "" - -#: grub-core/net/dns.c:690 -msgid "prefer ipv4" -msgstr "" - -#: grub-core/net/dns.c:694 -msgid "prefer ipv6" -msgstr "" - -#: grub-core/net/dns.c:759 -msgid "ADDRESS DNSSERVER" -msgstr "" - -#: grub-core/net/dns.c:760 -msgid "Perform a DNS lookup" -msgstr "" - -#: grub-core/net/dns.c:762 grub-core/net/dns.c:765 -msgid "DNSSERVER" -msgstr "" - -#: grub-core/net/dns.c:763 -#, fuzzy -msgid "Add a DNS server" -msgstr "CDDBサーãƒå" - -#: grub-core/net/dns.c:766 -#, fuzzy -msgid "Remove a DNS server" -msgstr "CDDBサーãƒå" - -#: grub-core/net/dns.c:768 -#, fuzzy -msgid "List DNS servers" -msgstr "DHCPサーãƒãŒã‚¤ãƒ³ã‚¹ãƒˆãƒ¼ãƒ«ã•れã¦ã„ã¾ã›ã‚“" - -#: grub-core/net/drivers/efi/efinet.c:49 grub-core/net/drivers/efi/efinet.c:65 -#: grub-core/net/drivers/efi/efinet.c:77 grub-core/net/drivers/emu/emunet.c:62 -#: grub-core/net/drivers/i386/pc/pxe.c:273 -#: grub-core/net/drivers/ieee1275/ofnet.c:75 -#: grub-core/net/drivers/uboot/ubootnet.c:62 -msgid "couldn't send network packet" -msgstr "" - -#: grub-core/net/drivers/ieee1275/ofnet.c:326 -#: grub-core/net/drivers/ieee1275/ofnet.c:359 -msgid "interpret is not supported" -msgstr "" - -#: grub-core/net/drivers/ieee1275/ofnet.c:336 -msgid "alloc-mem failed" -msgstr "" - -#: grub-core/net/drivers/ieee1275/ofnet.c:370 -msgid "free-mem failed" -msgstr "" - -#: grub-core/net/http.c:105 -#, fuzzy -msgid "unsupported HTTP response" -msgstr "HTTP サーãƒã¸æŽ¥ç¶šä¸­..." - -#. TRANSLATORS: GRUB HTTP code is pretty young. So even perfectly -#. valid answers like 403 will trigger this very generic message. -#: grub-core/net/http.c:126 -#, fuzzy, c-format -msgid "unsupported HTTP error %d: %s" -msgstr "libnotify ã®åˆæœŸåŒ–ã«å¤±æ•—ã—ã¾ã—ãŸ" - -#: grub-core/net/http.c:429 grub-core/net/tftp.c:420 -#, fuzzy, c-format -msgid "time out opening `%s'" -msgstr "`%s' ã‚’é–‹ã‘ã¾ã›ã‚“" - -#: grub-core/net/net.c:179 -msgid "timeout: could not resolve hardware address" -msgstr "" - -#: grub-core/net/net.c:548 -#, c-format -msgid "unresolvable address %s" -msgstr "" - -#: grub-core/net/net.c:594 -#, c-format -msgid "unrecognised network address `%s'" -msgstr "" - -#: grub-core/net/net.c:661 -msgid "destination unreachable" -msgstr "" - -#. TRANSLATORS: route loop is a condition when e.g. -#. to contact server A you need to go through B -#. and to contact B you need to go through A. -#: grub-core/net/net.c:684 -msgid "route loop detected" -msgstr "" - -#: grub-core/net/net.c:700 -#, fuzzy -msgid "address not found" -msgstr "%s ã¯ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã§ã¯ã‚りã¾ã›ã‚“!" - -#: grub-core/net/net.c:704 -msgid "you can't delete this address" -msgstr "" - -#: grub-core/net/net.c:776 grub-core/net/net.c:792 -#, c-format -msgid "Unsupported hw address type %d\n" -msgstr "" - -#: grub-core/net/net.c:813 -#, fuzzy, c-format -msgid "Unsupported address type %d\n" -msgstr "IM $IM_CONFIG_XINPUTRC_TYPE $IM_CONFIG_XINPUTRC を削除。" - -#: grub-core/net/net.c:1017 grub-core/net/net.c:1131 -#, fuzzy -msgid "three arguments expected" -msgstr "%s: 引数ãŒå¤šã™ãŽã¾ã™\n" - -#: grub-core/net/net.c:1023 -#, fuzzy -msgid "card not found" -msgstr "%s ã¯ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã§ã¯ã‚りã¾ã›ã‚“!" - -#. TRANSLATORS: it refers to the network address. -#: grub-core/net/net.c:1167 -msgid "temporary" -msgstr "" - -#: grub-core/net/net.c:1190 -#, fuzzy, c-format -msgid "Unknown address type %d\n" -msgstr "IM $IM_CONFIG_XINPUTRC_TYPE $IM_CONFIG_XINPUTRC を削除。" - -#: grub-core/net/net.c:1298 -#, fuzzy -msgid "no server is specified" -msgstr "存在ã—ãªã„è¨­å®šãƒ•ã‚¡ã‚¤ãƒ«ãŒæŒ‡å®šã•れãŸã€‚" - -#: grub-core/net/net.c:1637 -#, c-format -msgid "timeout reading `%s'" -msgstr "" - -#. TRANSLATORS: HWADDRESS stands for -#. "hardware address". -#: grub-core/net/net.c:1762 -msgid "SHORTNAME CARD ADDRESS [HWADDRESS]" -msgstr "" - -#: grub-core/net/net.c:1763 -#, fuzzy -msgid "Add a network address." -msgstr "機器ã®è¿½åŠ ã«å¤±æ•—ã—ã¾ã—ãŸ" - -#: grub-core/net/net.c:1766 -msgid "[CARD [HWADDRESS]]" -msgstr "" - -#: grub-core/net/net.c:1767 -msgid "Perform an IPV6 autoconfiguration" -msgstr "" - -#: grub-core/net/net.c:1770 grub-core/net/net.c:1777 -#, fuzzy -msgid "SHORTNAME" -msgstr "VARNAME" - -#: grub-core/net/net.c:1771 -#, fuzzy -msgid "Delete a network address." -msgstr "シリアルãƒãƒ¼ãƒˆã®ã‚¢ãƒ‰ãƒ¬ã‚¹ã‚’設定ã—ã¾ã™" - -#. TRANSLATORS: "gw" is a keyword. -#: grub-core/net/net.c:1774 -msgid "SHORTNAME NET [INTERFACE| gw GATEWAY]" -msgstr "" - -#: grub-core/net/net.c:1775 -#, fuzzy -msgid "Add a network route." -msgstr "機器ã®è¿½åŠ ã«å¤±æ•—ã—ã¾ã—ãŸ" - -#: grub-core/net/net.c:1778 -msgid "Delete a network route." -msgstr "" - -#: grub-core/net/net.c:1780 -msgid "list network routes" -msgstr "" - -#: grub-core/net/net.c:1782 -msgid "list network cards" -msgstr "" - -#: grub-core/net/net.c:1784 -msgid "list network addresses" -msgstr "" - -#: grub-core/net/tcp.c:681 -#, fuzzy -msgid "connection refused" -msgstr "接続を拒å¦ã•れã¾ã—ãŸ:" - -#: grub-core/net/tcp.c:684 -#, fuzzy -msgid "connection timeout" -msgstr "接続を拒å¦ã•れã¾ã—ãŸ:" - -#: grub-core/normal/auth.c:220 -msgid "Enter username: " -msgstr "" - -#: grub-core/normal/auth.c:269 -msgid "[USERLIST]" -msgstr "" - -#: grub-core/normal/auth.c:270 -msgid "Check whether user is in USERLIST." -msgstr "" - -#: grub-core/normal/cmdline.c:174 grub-core/normal/menu_entry.c:1068 -msgid "Possible commands are:" -msgstr "利用å¯èƒ½ãªã‚³ãƒžãƒ³ãƒ‰ä¸€è¦§:" - -#: grub-core/normal/cmdline.c:177 grub-core/normal/menu_entry.c:1072 -msgid "Possible devices are:" -msgstr "利用å¯èƒ½ãªãƒ‡ãƒã‚¤ã‚¹ä¸€è¦§:" - -#: grub-core/normal/cmdline.c:180 grub-core/normal/menu_entry.c:1076 -msgid "Possible files are:" -msgstr "利用å¯èƒ½ãªãƒ•ァイル一覧:" - -#: grub-core/normal/cmdline.c:183 grub-core/normal/menu_entry.c:1080 -msgid "Possible partitions are:" -msgstr "利用å¯èƒ½ãªãƒ‘ーティション一覧:" - -#: grub-core/normal/cmdline.c:186 grub-core/normal/menu_entry.c:1084 -msgid "Possible arguments are:" -msgstr "利用å¯èƒ½ãªå¼•数一覧:" - -#. TRANSLATORS: this message is used if none of above matches. -#. This shouldn't happen but please use the general term for -#. "thing" or "object". -#: grub-core/normal/cmdline.c:192 grub-core/normal/menu_entry.c:1088 -msgid "Possible things are:" -msgstr "利用å¯èƒ½ãªã‚‚ã®ã®ä¸€è¦§:" - -#: grub-core/normal/color.c:81 -#, c-format -msgid "Warning: syntax error (missing slash) in `%s'\n" -msgstr "警告:入力エラー `%s'ã®ï¼ˆã‚¹ãƒ©ãƒƒã‚·ãƒ¥ãŒæŠœã‘ã¦ã„ã¾ã™ï¼‰\n" - -#: grub-core/normal/color.c:90 -#, c-format -msgid "Warning: invalid foreground color `%s'\n" -msgstr "" - -#: grub-core/normal/color.c:96 -#, c-format -msgid "Warning: invalid background color `%s'\n" -msgstr "" - -#: grub-core/normal/context.c:206 -msgid "ENVVAR [ENVVAR] ..." -msgstr "" - -#: grub-core/normal/context.c:207 -msgid "Export variables." -msgstr "" - -#: grub-core/normal/datetime.c:25 -msgid "Sunday" -msgstr "" - -#: grub-core/normal/datetime.c:26 -msgid "Monday" -msgstr "" - -#: grub-core/normal/datetime.c:27 -msgid "Tuesday" -msgstr "" - -#: grub-core/normal/datetime.c:28 -msgid "Wednesday" -msgstr "" - -#: grub-core/normal/datetime.c:29 -msgid "Thursday" -msgstr "" - -#: grub-core/normal/datetime.c:30 -msgid "Friday" -msgstr "" - -#: grub-core/normal/datetime.c:31 -msgid "Saturday" -msgstr "" - -#: grub-core/normal/dyncmd.c:187 -#, fuzzy -msgid "module isn't loaded" -msgstr "ロードã•れã¾ã›ã‚“ã§ã—ãŸ" - -#: grub-core/normal/main.c:211 -#, fuzzy, c-format -msgid "GNU GRUB version %s" -msgstr "GNU アセンブラ ãƒãƒ¼ã‚¸ãƒ§ãƒ³ %s (%s)ã€BFD ãƒãƒ¼ã‚¸ãƒ§ãƒ³ %s を使用\n" - -#: grub-core/normal/main.c:360 -msgid "ESC at any time exits." -msgstr "ESC キーã§ã„ã¤ã§ã‚‚終了ã—ã¾ã™ã€‚" - -#: grub-core/normal/main.c:363 -#, c-format -msgid "" -"Minimal BASH-like line editing is supported. For the first word, TAB lists " -"possible command completions. Anywhere else TAB lists possible device or " -"file completions. %s" -msgstr "" -"BASH ã«ä¼¼ãŸæœ€å°é™ã®è¡Œç·¨é›†æ©Ÿèƒ½ãŒã‚µãƒãƒ¼ãƒˆã•れã¦ã„ã¾ã™ã€‚最åˆã®å˜èªžã§ã¯ã€TAB ã§åˆ©" -"用å¯èƒ½ãªã‚³ãƒžãƒ³ãƒ‰è£œå®Œã®ä¸€è¦§ãŒè¡¨ç¤ºã•れã¾ã™ã€‚ãã®ä»–ã«ã¯ã€TAB ã§åˆ©ç”¨å¯èƒ½ãªãƒ‡ãƒã‚¤" -"スã¾ãŸã¯ãƒ•ァイル補完ã®ä¸€è¦§ãŒè¡¨ç¤ºã•れã¾ã™ã€‚%s" - -#. TRANSLATORS: it's command line prompt. -#: grub-core/normal/main.c:395 -msgid ">" -msgstr "" - -#. TRANSLATORS: it's command line prompt. -#: grub-core/normal/main.c:398 -msgid "grub>" -msgstr "" - -#: grub-core/normal/main.c:518 -msgid "Clear the screen." -msgstr "ç”»é¢è¡¨ç¤ºã‚’消ã™" - -#: grub-core/normal/main.c:527 -msgid "Enter normal mode." -msgstr "ノーマルモードã«å…¥ã‚Šã¾ã™" - -#: grub-core/normal/main.c:529 -msgid "Exit from normal mode." -msgstr "ノーマルモードを抜ã‘ã¾ã™" - -#: grub-core/normal/menu.c:66 grub-core/normal/menu_entry.c:1449 -msgid "Press any key to continue..." -msgstr "ç¶šã‘ã‚‹ã«ã¯ä½•ã‹ã‚­ãƒ¼ã‚’押ã—ã¦ãã ã•ã„..." - -#: grub-core/normal/menu.c:815 -#, c-format -msgid "Booting `%s'" -msgstr "" - -#: grub-core/normal/menu.c:827 -#, fuzzy, c-format -msgid "Falling back to `%s'" -msgstr " VALUE 設定ã™ã‚‹å€¤\n" - -#: grub-core/normal/menu.c:843 -msgid "Failed to boot both default and fallback entries.\n" -msgstr "" - -#: grub-core/normal/menu_entry.c:1171 -msgid "Booting a command list" -msgstr "コマンドリストを起動ã—ã¾ã™" - -#: grub-core/normal/menu_text.c:160 -msgid "" -"Minimum Emacs-like screen editing is supported. TAB lists completions. Press " -"Ctrl-x or F10 to boot, Ctrl-c or F2 for a command-line or ESC to discard " -"edits and return to the GRUB menu." -msgstr "" - -#: grub-core/normal/menu_text.c:170 -#, fuzzy, c-format -msgid "Use the %C and %C keys to select which entry is highlighted." -msgstr "" -"ãƒã‚¤ãƒ©ã‚¤ãƒˆã™ã‚‹ã‚¨ãƒ³ãƒˆãƒªã‚’é¸æŠžã™ã‚‹ã«ã¯ %C ãªã‚‰ã³ã« %C キーを使ã£ã¦ãã ã•ã„。\n" - -#. TRANSLATORS: that's the list of binary unit prefixes. -#: grub-core/normal/misc.c:38 -msgid "B" -msgstr "" - -#: grub-core/normal/misc.c:38 -msgid "KiB" -msgstr "" - -#: grub-core/normal/misc.c:38 -msgid "MiB" -msgstr "" - -#: grub-core/normal/misc.c:38 -msgid "GiB" -msgstr "" - -#: grub-core/normal/misc.c:38 -msgid "TiB" -msgstr "" - -#: grub-core/normal/misc.c:38 -msgid "PiB" -msgstr "" - -#. TRANSLATORS: that's the list of binary unit prefixes. -#: grub-core/normal/misc.c:40 -msgid "K" -msgstr "" - -#: grub-core/normal/misc.c:40 -msgid "M" -msgstr "" - -#: grub-core/normal/misc.c:40 -msgid "G" -msgstr "" - -#: grub-core/normal/misc.c:40 -msgid "T" -msgstr "" - -#: grub-core/normal/misc.c:40 -msgid "P" -msgstr "" - -#. TRANSLATORS: that's the list of binary unit prefixes. -#: grub-core/normal/misc.c:42 -msgid "B/s" -msgstr "" - -#: grub-core/normal/misc.c:42 -msgid "KiB/s" -msgstr "" - -#: grub-core/normal/misc.c:42 -msgid "MiB/s" -msgstr "" - -#: grub-core/normal/misc.c:42 -msgid "GiB/s" -msgstr "" - -#: grub-core/normal/misc.c:42 -msgid "TiB/s" -msgstr "" - -#: grub-core/normal/misc.c:42 -msgid "PiB/s" -msgstr "" - -#: grub-core/normal/misc.c:96 -#, c-format -msgid "Partition %s:" -msgstr "パーティション %s:" - -#: grub-core/normal/misc.c:101 -#, c-format -msgid "Device %s:" -msgstr "デãƒã‚¤ã‚¹ %s:" - -#: grub-core/normal/misc.c:107 -msgid "Filesystem cannot be accessed" -msgstr "ファイルシステムã«ã‚¢ã‚¯ã‚»ã‚¹ã§ãã¾ã›ã‚“" - -#: grub-core/normal/misc.c:121 -#, c-format -msgid "Filesystem type %s" -msgstr "ファイルシステムã®ç¨®é¡ž %s" - -#: grub-core/normal/misc.c:131 -#, fuzzy, c-format -msgid "- Label `%s'" -msgstr "アクセラレータã®ãƒ©ãƒ™ãƒ«" - -#. TRANSLATORS: Arguments are year, month, day, hour, minute, -#. second, day of the week (translated). -#: grub-core/normal/misc.c:148 -#, c-format -msgid "- Last modification time %d-%02d-%02d %02d:%02d:%02d %s" -msgstr "" - -#: grub-core/normal/misc.c:171 -msgid "No known filesystem detected" -msgstr "" - -#: grub-core/normal/misc.c:174 -#, c-format -msgid " - Partition start at %llu%sKiB" -msgstr "" - -#: grub-core/normal/misc.c:178 -#, c-format -msgid " - Sector size %uB" -msgstr "" - -#: grub-core/normal/misc.c:180 -#, fuzzy -msgid " - Total size unknown" -msgstr "䏿˜Žãªã‚¨ã‚¹ã‚±ãƒ¼ãƒ— '\\%c' ãŒæ–‡å­—列内ã«ã‚りã¾ã™ã€‚無視ã•れã¾ã—ãŸ" - -#: grub-core/normal/misc.c:182 -#, fuzzy, c-format -msgid " - Total size %llu%sKiB" -msgstr "䏿˜Žãªã‚¨ã‚¹ã‚±ãƒ¼ãƒ— '\\%c' ãŒæ–‡å­—列内ã«ã‚りã¾ã™ã€‚無視ã•れã¾ã—ãŸ" - -#. TRANSLATORS: Replace dot with appropriate decimal separator for -#. your language. -#: grub-core/normal/misc.c:186 -msgid ".5" -msgstr "" - -#. TRANSLATORS: This has to fit on one line. It's ok to include few -#. words but don't write poems. -#: grub-core/normal/term.c:82 -msgid "--MORE--" -msgstr "" - -#: grub-core/osdep/aros/config.c:92 grub-core/osdep/unix/config.c:137 -#: grub-core/osdep/windows/config.c:55 -#, fuzzy, c-format -msgid "cannot open configuration file `%s': %s" -msgstr "%s ã‚’é–‹ã‘ã¾ã›ã‚“" - -#: grub-core/osdep/basic/compress.c:8 grub-core/osdep/basic/compress.c:14 -#: grub-core/osdep/basic/compress.c:20 -msgid "no compression is available for your platform" -msgstr "" - -#: grub-core/osdep/basic/no_platform.c:30 -#: grub-core/osdep/windows/platform.c:418 -msgid "no IEEE1275 routines are available for your platform" -msgstr "" - -#: grub-core/osdep/basic/no_platform.c:38 -msgid "no EFI routines are available for your platform" -msgstr "" - -#: grub-core/osdep/basic/no_platform.c:45 -#: grub-core/osdep/windows/platform.c:425 -msgid "no SGI routines are available for your platform" -msgstr "" - -#. TRANSLATORS: The OS itself may very well have a random -#. number generator but GRUB doesn't know how to access it. -#: grub-core/osdep/basic/random.c:42 -msgid "no random number generator is available for your OS" -msgstr "" - -#: grub-core/osdep/devmapper/getroot.c:81 -msgid "Failed to create `device-mapper' tree" -msgstr "" - -#: grub-core/osdep/devmapper/getroot.c:197 -#: grub-core/osdep/freebsd/getroot.c:202 -#, c-format -msgid "can't mount encrypted volume `%s': %s" -msgstr "" - -#. TRANSLATORS: geom is the name of (k)FreeBSD device framework. -#. Usually left untranslated. -#. -#: grub-core/osdep/freebsd/getroot.c:82 grub-core/osdep/freebsd/getroot.c:164 -#: grub-core/osdep/freebsd/getroot.c:258 grub-core/osdep/freebsd/getroot.c:316 -#, fuzzy -msgid "couldn't open geom" -msgstr "%s: `%s' ãŒã‚ªãƒ¼ãƒ—ンã§ãã¾ã›ã‚“\n" - -#: grub-core/osdep/freebsd/getroot.c:182 grub-core/osdep/freebsd/getroot.c:277 -msgid "couldn't find geli consumer" -msgstr "" - -#: grub-core/osdep/freebsd/getroot.c:282 -msgid "couldn't retrieve geli UUID" -msgstr "" - -#. TRANSLATORS: geom is the name of (k)FreeBSD device framework. -#. Usually left untranslated. "part" is the identifier of one of its -#. classes. -#: grub-core/osdep/freebsd/getroot.c:325 -msgid "couldn't find geom `part' class" -msgstr "" - -#: grub-core/osdep/freebsd/hostdisk.c:72 grub-core/osdep/linux/hostdisk.c:93 -#, fuzzy -msgid "unaligned device size" -msgstr "%(service)s on %(device)s" - -#: grub-core/osdep/generic/blocklist.c:56 -#, c-format -msgid "attempting to read the core image `%s' from GRUB" -msgstr "" - -#: grub-core/osdep/generic/blocklist.c:57 -#, c-format -msgid "attempting to read the core image `%s' from GRUB again" -msgstr "" - -#: grub-core/osdep/generic/blocklist.c:115 -#, fuzzy, c-format -msgid "cannot read `%s' correctly" -msgstr " @FILE オプションを FILE ã‹ã‚‰èª­ã¿è¾¼ã‚€\n" - -#: grub-core/osdep/generic/blocklist.c:126 -#, fuzzy -msgid "failed to read the sectors of the core image" -msgstr "コアファイルã®ã‚»ã‚¯ã‚¿ãƒ¼ãŒã²ã©ã断片化ã—ã¦ã„ã¾ã™" - -#. TRANSLATORS: On GNU/Hurd, a "translator" is similar to a filesystem -#. mount, but handled by a userland daemon, whose invocation command line -#. is being fetched here. First %s is the file being looked at (for which -#. we are fetching the "translator" command line), second %s is the error -#. message. -#. -#: grub-core/osdep/hurd/getroot.c:79 -#, c-format -msgid "cannot get translator command line for path `%s': %s" -msgstr "" - -#: grub-core/osdep/hurd/getroot.c:82 -#, c-format -msgid "translator command line is empty for path `%s'" -msgstr "" - -#. TRANSLATORS: we expect to get something like -#. /hurd/foobar --option1 --option2=baz /dev/something -#. -#: grub-core/osdep/hurd/getroot.c:98 -#, c-format -msgid "" -"translator `%s' for path `%s' has several non-option words, at least `%s' " -"and `%s'" -msgstr "" - -#. TRANSLATORS: we expect to get something like -#. /hurd/foobar --option1 --option2=baz /dev/something -#. -#: grub-core/osdep/hurd/getroot.c:109 -#, c-format -msgid "" -"translator `%s' for path `%s' is given only options, cannot find device part" -msgstr "" - -#: grub-core/osdep/hurd/hostdisk.c:73 -#, c-format -msgid "Storage information for `%s' does not include type" -msgstr "" - -#: grub-core/osdep/hurd/hostdisk.c:75 -#, c-format -msgid "`%s' is not a local disk" -msgstr "" - -#: grub-core/osdep/hurd/hostdisk.c:78 -#, c-format -msgid "" -"Storage information for `%s' indicates neither a plain partition nor a plain " -"disk" -msgstr "" - -#: grub-core/osdep/linux/blocklist.c:81 grub-core/osdep/linux/blocklist.c:96 -#: grub-core/osdep/linux/blocklist.c:122 -#, fuzzy, c-format -msgid "can't retrieve blocklists: %s" -msgstr "%s: `%s' 㯠`%s' ã«ãƒžã‚¦ãƒ³ãƒˆã§ãã¾ã™\n" - -#: grub-core/osdep/linux/blocklist.c:84 -msgid "blocksize is not divisible by 512" -msgstr "" - -#: grub-core/osdep/linux/blocklist.c:86 -#, fuzzy -msgid "invalid zero blocksize" -msgstr "%s: --auto/-a オプションã«å¯¾ã—ã¦ä¸å½“ãªå¼•æ•°\n" - -#: grub-core/osdep/linux/blocklist.c:90 util/setup.c:744 -#, fuzzy -msgid "can't retrieve blocklists" -msgstr "%s: `%s' 㯠`%s' ã«ãƒžã‚¦ãƒ³ãƒˆã§ãã¾ã™\n" - -#: grub-core/osdep/linux/getroot.c:154 -#, c-format -msgid "ioctl RAID_VERSION error: %s" -msgstr "" - -#: grub-core/osdep/linux/getroot.c:160 grub-core/osdep/linux/getroot.c:164 -#, fuzzy, c-format -msgid "unsupported RAID version: %d.%d" -msgstr "GNU アセンブラ ãƒãƒ¼ã‚¸ãƒ§ãƒ³ %s (%s)ã€BFD ãƒãƒ¼ã‚¸ãƒ§ãƒ³ %s を使用\n" - -#: grub-core/osdep/linux/getroot.c:169 -#, c-format -msgid "ioctl GET_ARRAY_INFO error: %s" -msgstr "" - -#: grub-core/osdep/linux/getroot.c:178 -#, c-format -msgid "ioctl GET_DISK_INFO error: %s" -msgstr "" - -#: grub-core/osdep/linux/getroot.c:608 grub-core/osdep/linux/getroot.c:678 -#: grub-core/osdep/linux/hostdisk.c:126 grub-core/osdep/unix/getroot.c:253 -#: grub-core/osdep/unix/getroot.c:642 grub-core/osdep/unix/platform.c:92 -#: grub-core/osdep/unix/platform.c:100 -#, fuzzy, c-format -msgid "Unable to open stream from %s: %s" -msgstr "%s: /etc/fstab ãŒã‚ªãƒ¼ãƒ—ンã§ãã¾ã›ã‚“: %s\n" - -#: grub-core/osdep/linux/getroot.c:1033 -#, fuzzy, c-format -msgid "unknown kind of RAID device `%s'" -msgstr "無効ãªãƒ«ãƒ¼ãƒˆãƒ‡ãƒã‚¤ã‚¹ `%s' ã§ã™" - -#: grub-core/osdep/linux/ofpath.c:181 -#, c-format -msgid "`obppath' not found in parent dirs of `%s', no IEEE1275 name discovery" -msgstr "" - -#: grub-core/osdep/linux/ofpath.c:222 grub-core/osdep/unix/getroot.c:505 -#: grub-core/osdep/unix/getroot.c:529 grub-core/osdep/unix/relpath.c:49 -#: util/grub-install.c:984 util/grub-install.c:1331 util/grub-probe.c:323 -#, c-format -msgid "failed to get canonical path of `%s'" -msgstr "" - -#: grub-core/osdep/linux/ofpath.c:740 -#, fuzzy, c-format -msgid "unknown device type %s" -msgstr "%(service)s on %(device)s" - -#: grub-core/osdep/linux/ofpath.c:758 util/ieee1275/grub-ofpathname.c:39 -#, fuzzy, c-format -msgid "Usage: %s DEVICE\n" -msgstr "ä½¿ã„æ–¹: ボリュームå [<デãƒã‚¤ã‚¹ãƒ•ァイル>]\n" - -#: grub-core/osdep/unix/exec.c:86 grub-core/osdep/unix/exec.c:172 -#: grub-core/osdep/unix/exec.c:217 -#, fuzzy, c-format -msgid "Unable to fork: %s" -msgstr "%s: フォークã§ãã¾ã›ã‚“: %s\n" - -#: grub-core/osdep/unix/exec.c:166 grub-core/osdep/unix/exec.c:211 -#, fuzzy, c-format -msgid "Unable to create pipe: %s" -msgstr ".glade ファイルを特定ã§ãã¾ã›ã‚“: %s" - -#: grub-core/osdep/unix/getroot.c:370 -#, fuzzy -msgid "cannot save the original directory" -msgstr "カーãƒãƒ«ã‚¤ãƒ¡ãƒ¼ã‚¸ã‚’圧縮ã§ãã¾ã›ã‚“" - -#: grub-core/osdep/unix/getroot.c:423 grub-core/osdep/unix/getroot.c:480 -#: grub-core/osdep/unix/getroot.c:489 -#, fuzzy -msgid "cannot restore the original directory" -msgstr "カーãƒãƒ«ã‚¤ãƒ¡ãƒ¼ã‚¸ã‚’圧縮ã§ãã¾ã›ã‚“" - -#. TRANSLATORS: "stat" comes from the name of POSIX function. -#: grub-core/osdep/unix/getroot.c:551 grub-core/osdep/unix/hostdisk.c:61 -#: grub-core/osdep/unix/relpath.c:73 grub-core/osdep/unix/relpath.c:97 -#: util/getroot.c:160 util/getroot.c:162 util/grub-install.c:774 -#: util/grub-macbless.c:70 -#, fuzzy, c-format -msgid "cannot stat `%s': %s" -msgstr "`%s' ã‚’é–‹ã‘ã¾ã›ã‚“" - -#: grub-core/osdep/unix/hostdisk.c:293 -#, fuzzy, c-format -msgid "cannot make temporary file: %s" -msgstr ".glade ファイルを特定ã§ãã¾ã›ã‚“: %s" - -#: grub-core/osdep/unix/hostdisk.c:311 -#, fuzzy, c-format -msgid "cannot make temporary directory: %s" -msgstr "カーãƒãƒ«ã‚¤ãƒ¡ãƒ¼ã‚¸ã‚’圧縮ã§ãã¾ã›ã‚“" - -#: grub-core/osdep/unix/platform.c:77 -#, c-format -msgid "" -"couldn't find IEEE1275 device path for %s.\n" -"You will have to set `boot-device' variable manually" -msgstr "" - -#. TRANSLATORS: This message is shown when required executable `%s' -#. isn't found. -#: grub-core/osdep/unix/platform.c:149 grub-core/osdep/unix/platform.c:189 -#, fuzzy, c-format -msgid "%s: not found" -msgstr "%s ã¯ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã§ã¯ã‚りã¾ã›ã‚“!" - -#: grub-core/osdep/unix/platform.c:225 -#, c-format -msgid "" -"`nvsetenv' failed. \n" -"You will have to set `boot-device' variable manually. At the IEEE1275 " -"prompt, type:\n" -" %s\n" -msgstr "" - -#: grub-core/osdep/unix/platform.c:240 -msgid "You will have to set `SystemPartition' and `OSLoader' manually." -msgstr "" - -#. TRANSLATORS: canonical pathname is the -#. complete one e.g. /etc/fstab. It has -#. to contain `/' normally, if it doesn't -#. we're in trouble and throw this error. -#: grub-core/osdep/unix/relpath.c:90 -msgid "no `/' in canonical filename" -msgstr "" - -#: grub-core/osdep/windows/hostdisk.c:151 -msgid "cygwin_conv_path() failed" -msgstr "" - -#: grub-core/osdep/windows/hostdisk.c:501 util/grub-install.c:570 -#, fuzzy -msgid "couldn't retrieve random data" -msgstr "%s/linux シンボリックリンクを作æˆã§ãã¾ã›ã‚“ã§ã—ãŸ!" - -#: grub-core/osdep/windows/platform.c:97 -msgid "Insufficient privileges to access firmware, assuming BIOS" -msgstr "" - -#: grub-core/osdep/windows/platform.c:225 -msgid "no EFI routines are available when running in BIOS mode" -msgstr "" - -#: grub-core/osdep/windows/platform.c:240 -#, fuzzy -msgid "unexpected EFI error" -msgstr "コメント内ã§ãƒ•ァイル終端 (EOF) ã«é”ã—ã¾ã—ãŸ" - -#: grub-core/osdep/windows/platform.c:315 -msgid "Couldn't find a free BootNNNN slot" -msgstr "" - -#: grub-core/partmap/gpt.c:191 -msgid "" -"this GPT partition label contains no BIOS Boot Partition; embedding won't be " -"possible" -msgstr "" - -#: grub-core/partmap/gpt.c:196 -msgid "your BIOS Boot Partition is too small; embedding won't be possible" -msgstr "" - -#. TRANSLATORS: MBR gap and boot track is the same thing and is the space -#. between MBR and first partitition. If your language translates well only -#. "boot track", you can just use it everywhere. Next two messages are about -#. RAID controllers/software bugs which GRUB has to live with. Please spread -#. the message that these are bugs in other software and not merely -#. suboptimal behaviour. -#: grub-core/partmap/msdos.c:51 -#, c-format -msgid "" -"Sector %llu is already in use by raid controller `%s'; avoiding it. Please " -"ask the manufacturer not to store data in MBR gap" -msgstr "" - -#: grub-core/partmap/msdos.c:54 -#, c-format -msgid "" -"Sector %llu is already in use by the program `%s'; avoiding it. This " -"software may cause boot or other problems in future. Please ask its authors " -"not to store data in the boot track" -msgstr "" - -#: grub-core/partmap/msdos.c:384 -msgid "" -"other software is using the embedding area, and there is not enough room for " -"core.img. Such software is often trying to store data in a way that avoids " -"detection. We recommend you investigate" -msgstr "" - -#: grub-core/partmap/msdos.c:395 -msgid "" -"this msdos-style partition label has no post-MBR gap; embedding won't be " -"possible" -msgstr "" - -#: grub-core/partmap/msdos.c:404 -msgid "your embedding area is unusually small. core.img won't fit in it." -msgstr "" - -#: grub-core/parttool/msdospart.c:39 -#, fuzzy -msgid "Make partition active" -msgstr "利用å¯èƒ½ãªãƒ‘ーティション一覧:" - -#: grub-core/parttool/msdospart.c:51 -#, fuzzy -msgid "not a primary partition" -msgstr "%s ã¯ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã§ã¯ã‚りã¾ã›ã‚“!" - -#: grub-core/parttool/msdospart.c:69 -#, c-format -msgid "Partition %d is active now. \n" -msgstr "" - -#: grub-core/parttool/msdospart.c:74 -#, c-format -msgid "Cleared active flag on %d. \n" -msgstr "" - -#: grub-core/parttool/msdospart.c:87 -#, fuzzy -msgid "Change partition type" -msgstr "IM $IM_CONFIG_XINPUTRC_TYPE $IM_CONFIG_XINPUTRC を削除。" - -#: grub-core/parttool/msdospart.c:88 -#, fuzzy -msgid "Set `hidden' flag in partition type" -msgstr "パーティションマップã®å½¢å¼ã‚’決定ã™ã‚‹" - -#: grub-core/parttool/msdospart.c:130 -#, c-format -msgid "the partition type 0x%x isn't valid" -msgstr "" - -#. TRANSLATORS: In this case we're actually writing to the disk and actively -#. modifying partition type rather than just defining it. -#: grub-core/parttool/msdospart.c:137 -#, fuzzy, c-format -msgid "Setting partition type to 0x%x\n" -msgstr "" -"$IM_CONFIG_XINPUTRC_TYPE $IM_CONFIG_XINPUTRC ã‚’ $IM_CONFIG_ACTIVE ã¨è¨­å®šã™" -"る。" - -#. TRANSLATORS: 0 is a quantifier. "break" (similar to bash) -#. can be used e.g. to break 3 loops at once. -#. But asking it to break 0 loops makes no sense. -#: grub-core/script/execute.c:143 -#, fuzzy -msgid "can't break 0 loops" -msgstr "%s: `%s' 㯠`%s' ã«ãƒžã‚¦ãƒ³ãƒˆã§ãã¾ã™\n" - -#. TRANSLATORS: It's about not being -#. inside a function. "return" can be used only -#. in a function and this error occurs if it's used -#. anywhere else. -#: grub-core/script/execute.c:227 -msgid "not in function body" -msgstr "" - -#: grub-core/script/execute.c:371 -#, fuzzy, c-format -msgid "invalid variable name `%s'" -msgstr "èªè­˜ã§ããªã„エミュレーションå `%s' ã§ã™" - -#: grub-core/script/execute.c:953 -msgid "cannot allocate command buffer" -msgstr "" - -#: grub-core/script/lexer.c:144 util/grub-fstest.c:330 -#, fuzzy -msgid "unexpected end of file" -msgstr "コメント内ã§ãƒ•ァイル終端 (EOF) ã«é”ã—ã¾ã—ãŸ" - -#: grub-core/script/main.c:55 grub-core/script/main.c:57 -#: grub-core/script/main.c:59 grub-core/script/main.c:67 -msgid "[NUM]" -msgstr "" - -#: grub-core/script/main.c:55 -#, fuzzy -msgid "Exit from loops" -msgstr " @FILE オプションを FILE ã‹ã‚‰èª­ã¿è¾¼ã‚€\n" - -#: grub-core/script/main.c:57 -msgid "Continue loops" -msgstr "" - -#. TRANSLATORS: Positional arguments are -#. arguments $0, $1, $2, ... -#: grub-core/script/main.c:62 -msgid "Shift positional parameters." -msgstr "" - -#: grub-core/script/main.c:64 -#, fuzzy -msgid "[VALUE]..." -msgstr "アクセスå¯èƒ½ãªå€¤" - -#: grub-core/script/main.c:65 -#, fuzzy -msgid "Set positional parameters." -msgstr " VALUE 設定ã™ã‚‹å€¤\n" - -#. TRANSLATORS: It's a command description -#. and "Return" is a verb, not a noun. The -#. command in question is "return" and -#. has exactly the same semanics as bash -#. equivalent. -#: grub-core/script/main.c:73 -#, fuzzy -msgid "Return from a function." -msgstr " @FILE オプションを FILE ã‹ã‚‰èª­ã¿è¾¼ã‚€\n" - -#: grub-core/term/gfxterm_background.c:176 -#, fuzzy -msgid "[-m (stretch|normal)] FILE" -msgstr "ファイルã®å…±æœ‰ (FTP)" - -#: grub-core/term/gfxterm_background.c:177 -msgid "Load background image for active terminal." -msgstr "" - -#: grub-core/term/gfxterm_background.c:182 util/grub-install.c:302 -#: util/grub-install.c:303 util/grub-mkrescue.c:107 util/grub-mkrescue.c:108 -#: util/grub-render-label.c:61 util/grub-render-label.c:63 -#, fuzzy -msgid "COLOR" -msgstr "色ã®é¸æŠž" - -#: grub-core/term/gfxterm_background.c:183 -msgid "Set background color for active terminal." -msgstr "" - -#: grub-core/term/i386/coreboot/cbmemc.c:139 -#, fuzzy -msgid "Show CBMEM console content." -msgstr " --target-help ターゲット固有ã®ã‚ªãƒ—ションを表示ã™ã‚‹\n" - -#: grub-core/term/serial.c:57 -msgid "Set the serial unit." -msgstr "シリアルユニットを設定ã—ã¾ã™" - -#: grub-core/term/serial.c:58 -msgid "Set the serial port address." -msgstr "シリアルãƒãƒ¼ãƒˆã®ã‚¢ãƒ‰ãƒ¬ã‚¹ã‚’設定ã—ã¾ã™" - -#: grub-core/term/serial.c:59 -msgid "Set the serial port speed." -msgstr "シリアルãƒãƒ¼ãƒˆã®é€Ÿåº¦ã‚’設定ã—ã¾ã™" - -#: grub-core/term/serial.c:60 -msgid "Set the serial port word length." -msgstr "シリアルãƒãƒ¼ãƒˆã®ãƒ¯ãƒ¼ãƒ‰é•·ã‚’設定ã—ã¾ã™" - -#: grub-core/term/serial.c:61 -msgid "Set the serial port parity." -msgstr "シリアルãƒãƒ¼ãƒˆã®ãƒ‘リティを設定ã—ã¾ã™" - -#: grub-core/term/serial.c:62 -msgid "Set the serial port stop bits." -msgstr "シリアルãƒãƒ¼ãƒˆã®ã‚¹ãƒˆãƒƒãƒ—ビットを設定ã—ã¾ã™" - -#: grub-core/term/serial.c:63 -#, fuzzy -msgid "Set the base frequency." -msgstr "シリアルユニットを設定ã—ã¾ã™" - -#: grub-core/term/serial.c:64 -msgid "Enable/disable RTS/CTS." -msgstr "" - -#: grub-core/term/serial.c:218 -#, c-format -msgid "serial port `%s' isn't found" -msgstr "" - -#: grub-core/term/serial.c:254 -#, fuzzy -msgid "unsupported serial port flow control" -msgstr "サãƒãƒ¼ãƒˆã•れã¦ã„ãªã„シリアルãƒãƒ¼ãƒˆã®ãƒ¯ãƒ¼ãƒ‰é•·ã§ã™" - -#: grub-core/term/serial.c:429 -#, fuzzy -msgid "[OPTIONS...]" -msgstr "全般ã®ã‚ªãƒ—ション" - -#: grub-core/term/serial.c:430 -msgid "Configure serial port." -msgstr "シリアルãƒãƒ¼ãƒˆã‚’設定ã—ã¾ã™" - -#: grub-core/term/terminfo.c:184 -#, fuzzy, c-format -msgid "unknown terminfo type `%s'" -msgstr "IM $IM_CONFIG_XINPUTRC_TYPE $IM_CONFIG_XINPUTRC を削除。" - -#: grub-core/term/terminfo.c:668 -msgid "ASCII" -msgstr "" - -#: grub-core/term/terminfo.c:671 -msgid "UTF-8" -msgstr "" - -#. TRANSLATORS: visually ordered UTF-8 is a non-compliant encoding -#. based on UTF-8 with right-to-left languages written in reverse. -#. Used on some terminals. Normal UTF-8 is refered as -#. "logically-ordered UTF-8" by opposition. -#: grub-core/term/terminfo.c:677 -msgid "visually-ordered UTF-8" -msgstr "" - -#: grub-core/term/terminfo.c:680 -msgid "Unknown encoding" -msgstr "" - -#: grub-core/term/terminfo.c:684 -msgid "Current terminfo types:" -msgstr "" - -#: grub-core/term/terminfo.c:699 -msgid "Terminal is ASCII-only [default]." -msgstr "" - -#: grub-core/term/terminfo.c:700 -msgid "Terminal is logical-ordered UTF-8." -msgstr "" - -#: grub-core/term/terminfo.c:701 -msgid "Terminal is visually-ordered UTF-8." -msgstr "" - -#: grub-core/term/terminfo.c:703 -msgid "Terminal has specified geometry." -msgstr "" - -#. TRANSLATORS: "x" has to be entered in, like an identifier, so please don't -#. use better Unicode codepoints. -#: grub-core/term/terminfo.c:706 -msgid "WIDTHxHEIGHT." -msgstr "" - -#: grub-core/term/terminfo.c:746 -msgid "incorrect terminal dimensions specification" -msgstr "" - -#: grub-core/term/terminfo.c:776 -#, c-format -msgid "terminal %s isn't found or it's not handled by terminfo" -msgstr "" - -#: grub-core/term/terminfo.c:785 -#, fuzzy -msgid "[[-a|-u|-v] [-g WxH] TERM [TYPE]]" -msgstr "IM $IM_CONFIG_XINPUTRC_TYPE $IM_CONFIG_XINPUTRC を削除。" - -#: grub-core/term/terminfo.c:786 -msgid "Set terminfo type of TERM to TYPE.\n" -msgstr "" - -#. TRANSLATORS: this is the BLOCK-argument, not -#. environment block. -#: grub-core/tests/test_blockarg.c:49 -msgid "Print and execute block argument." -msgstr "" - -#. TRANSLATORS: We're speaking about bitmap images like -#. JPEG or PNG. -#: grub-core/video/bitmap.c:209 -#, c-format -msgid "bitmap file `%s' is of unsupported format" -msgstr "" - -#: grub-core/video/i386/pc/vbe.c:1191 -#, c-format -msgid " VBE info: version: %d.%d OEM software rev: %d.%d\n" -msgstr "" - -#: grub-core/video/i386/pc/vbe.c:1198 -#, c-format -msgid " total memory: %d KiB\n" -msgstr "" - -#: grub-core/video/video.c:596 grub-core/video/video.c:762 -msgid "no suitable video mode found" -msgstr "" - -#: include/grub/crypto.h:403 -msgid "access denied" -msgstr "" - -#: include/grub/util/install.h:30 include/grub/util/install.h:35 -#, fuzzy -msgid "MODULES" -msgstr "MODULE" - -#: include/grub/util/install.h:31 -msgid "pre-load specified modules MODULES" -msgstr "" - -#: include/grub/util/install.h:33 -msgid "embed a specific DTB" -msgstr "" - -#: include/grub/util/install.h:36 -msgid "install only MODULES and their dependencies [default=all]" -msgstr "" - -#: include/grub/util/install.h:37 -msgid "THEMES" -msgstr "" - -#: include/grub/util/install.h:38 -#, c-format -msgid "install THEMES [default=%s]" -msgstr "" - -#: include/grub/util/install.h:39 -msgid "FONTS" -msgstr "" - -#: include/grub/util/install.h:40 -#, c-format -msgid "install FONTS [default=%s]" -msgstr "" - -#: include/grub/util/install.h:41 -msgid "LOCALES" -msgstr "" - -#: include/grub/util/install.h:42 -msgid "install only LOCALES [default=all]" -msgstr "" - -#: include/grub/util/install.h:45 -msgid "compress GRUB files [optional]" -msgstr "" - -#: include/grub/util/install.h:48 util/grub-mkimage.c:83 -#, fuzzy -msgid "choose the compression to use for core image" -msgstr "使用ã™ã‚‹ãƒšã‚¢ãƒªãƒ³ã‚°æ–¹æ³•ã‚’é¸æŠžã—ã¦ãã ã•ã„:" - -#. TRANSLATORS: platform here isn't identifier. It can be translated. -#: include/grub/util/install.h:51 include/grub/util/install.h:54 -#: util/grub-mkimage.c:66 -#, c-format -msgid "use images and modules under DIR [default=%s/]" -msgstr "" - -#: include/grub/util/install.h:57 -#, c-format -msgid "use translations under DIR [default=%s]" -msgstr "" - -#: include/grub/util/install.h:60 -#, c-format -msgid "use themes under DIR [default=%s]" -msgstr "" - -#: include/grub/util/install.h:65 util/grub-mkimage.c:78 -msgid "embed FILE as public key for signature checking" -msgstr "" - -#: util/editenv.c:59 util/grub-editenv.c:201 util/grub-install-common.c:535 -#: util/grub-mkimage.c:315 util/setup.c:791 -#, fuzzy, c-format -msgid "cannot sync `%s': %s" -msgstr "`%s' ã‚’é–‹ã‘ã¾ã›ã‚“" - -#: util/editenv.c:64 -#, fuzzy, c-format -msgid "cannot rename the file %s to %s" -msgstr ".glade ファイルを特定ã§ãã¾ã›ã‚“: %s" - -#: util/getroot.c:402 -#, c-format -msgid "disk does not exist, so falling back to partition device %s" -msgstr "" - -#: util/grub-editenv.c:45 util/grub-fstest.c:506 -msgid "Commands:" -msgstr "" - -#: util/grub-editenv.c:47 -msgid "Create a blank environment block file." -msgstr "" - -#: util/grub-editenv.c:49 -msgid "List the current variables." -msgstr "" - -#. TRANSLATORS: "set" is a keyword. It's a summary of "set" subcommand. -#: util/grub-editenv.c:51 -#, fuzzy -msgid "set [NAME=VALUE ...]" -msgstr " VALUE 設定ã™ã‚‹å€¤\n" - -#: util/grub-editenv.c:52 -#, fuzzy -msgid "Set variables." -msgstr " VALUE 設定ã™ã‚‹å€¤\n" - -#. TRANSLATORS: "unset" is a keyword. It's a summary of "unset" subcommand. -#: util/grub-editenv.c:54 -#, fuzzy -msgid "unset [NAME ...]" -msgstr "(åå‰ç„¡ã—)" - -#: util/grub-editenv.c:55 -msgid "Delete variables." -msgstr "" - -#: util/grub-editenv.c:57 -#, fuzzy -msgid "Options:" -msgstr "全般ã®ã‚ªãƒ—ション" - -#: util/grub-editenv.c:84 -msgid "You need to specify at least one command.\n" -msgstr "" - -#: util/grub-editenv.c:113 -#, fuzzy -msgid "FILENAME COMMAND" -msgstr " COMMAND 対象ã®ã‚³ãƒžãƒ³ãƒ‰ (ä»»æ„)\n" - -#: util/grub-editenv.c:114 -msgid "Tool to edit environment block." -msgstr "" - -#: util/grub-editenv.c:116 -#, c-format -msgid "" -"If FILENAME is `-', the default value %s is used.\n" -"\n" -"There is no `delete' command; if you want to delete the whole environment\n" -"block, use `rm %s'." -msgstr "" - -#: util/grub-editenv.c:162 -#, fuzzy -msgid "invalid environment block" -msgstr "%s: --auto/-a オプションã«å¯¾ã—ã¦ä¸å½“ãªå¼•æ•°\n" - -#: util/grub-editenv.c:217 -#, fuzzy, c-format -msgid "invalid parameter %s" -msgstr "無効ãªãƒ«ãƒ¼ãƒˆãƒ‡ãƒã‚¤ã‚¹ `%s' ã§ã™" - -#: util/grub-editenv.c:222 -msgid "environment block too small" -msgstr "" - -#: util/grub-fstest.c:107 -#, c-format -msgid "disk read fails at offset %lld, length %lld" -msgstr "" - -#: util/grub-fstest.c:138 -#, c-format -msgid "invalid skip value %lld" -msgstr "" - -#: util/grub-fstest.c:160 util/grub-fstest.c:246 -#, c-format -msgid "read error at offset %llu: %s" -msgstr "" - -#: util/grub-fstest.c:210 -#, fuzzy, c-format -msgid "cannot open OS file `%s': %s" -msgstr "%s ã‚’é–‹ã‘ã¾ã›ã‚“" - -#: util/grub-fstest.c:225 util/misc.c:126 -#, c-format -msgid "cannot write to the stdout: %s" -msgstr "" - -#: util/grub-fstest.c:259 -#, c-format -msgid "compare fail at offset %llu" -msgstr "" - -#: util/grub-fstest.c:280 util/grub-fstest.c:314 -#, c-format -msgid "OS file %s open error: %s" -msgstr "" - -#: util/grub-fstest.c:402 util/grub-mount.c:392 -#, fuzzy, c-format -msgid "`loopback' command fails: %s" -msgstr " COMMAND 対象ã®ã‚³ãƒžãƒ³ãƒ‰ (ä»»æ„)\n" - -#: util/grub-fstest.c:413 util/grub-mount.c:402 -#, fuzzy, c-format -msgid "`cryptomount' command fails: %s" -msgstr " COMMAND 対象ã®ã‚³ãƒžãƒ³ãƒ‰ (ä»»æ„)\n" - -#: util/grub-fstest.c:474 util/grub-fstest.c:478 -#, fuzzy -msgid "couldn't retrieve UUID" -msgstr "%s/linux シンボリックリンクを作æˆã§ãã¾ã›ã‚“ã§ã—ãŸ!" - -#: util/grub-fstest.c:507 -msgid "ls PATH" -msgstr "" - -#: util/grub-fstest.c:507 -msgid "List files in PATH." -msgstr "" - -#: util/grub-fstest.c:508 -#, fuzzy -msgid "cp FILE LOCAL" -msgstr "ファイルã®å…±æœ‰ (FTP)" - -#: util/grub-fstest.c:508 -#, fuzzy -msgid "Copy FILE to local file LOCAL." -msgstr ".glade ファイルを特定ã§ãã¾ã›ã‚“: %s" - -#: util/grub-fstest.c:509 -#, fuzzy -msgid "cat FILE" -msgstr "ファイルã®é¸æŠž" - -#: util/grub-fstest.c:509 -msgid "Copy FILE to standard output." -msgstr "" - -#: util/grub-fstest.c:510 -#, fuzzy -msgid "cmp FILE LOCAL" -msgstr "ファイルã®å…±æœ‰ (FTP)" - -#: util/grub-fstest.c:510 -#, fuzzy -msgid "Compare FILE with local file LOCAL." -msgstr "" -" -L,--keep-locals 局所シンボル (例: `L' ã§é–‹å§‹ã™ã‚‹ã‚‚ã®) ã‚’ä¿æŒã™ã‚‹\n" - -#: util/grub-fstest.c:511 -#, fuzzy -msgid "hex FILE" -msgstr "ファイルã®é¸æŠž" - -#: util/grub-fstest.c:511 -#, fuzzy -msgid "Show contents of FILE in hex." -msgstr "ファイルã®å†…容を表示ã—ã¾ã™ã€‚" - -#: util/grub-fstest.c:512 -#, fuzzy -msgid "crc FILE" -msgstr "ファイルã®é¸æŠž" - -#: util/grub-fstest.c:512 -msgid "Get crc32 checksum of FILE." -msgstr "" - -#: util/grub-fstest.c:513 -#, fuzzy -msgid "blocklist FILE" -msgstr "ファイルã®é¸æŠž" - -#: util/grub-fstest.c:513 -#, fuzzy -msgid "Display blocklist of FILE." -msgstr "ファイルã®å…±æœ‰ (FTP)" - -#: util/grub-fstest.c:514 -#, fuzzy -msgid "xnu_uuid DEVICE" -msgstr "%(service)s on %(device)s" - -#: util/grub-fstest.c:514 -msgid "Compute XNU UUID of the device." -msgstr "" - -#. TRANSLATORS: bitmaps are images like e.g. in JPEG. -#: util/grub-fstest.c:517 util/grub-fstest.c:518 util/grub-fstest.c:519 -#: util/grub-mkfont.c:938 util/grub-mkfont.c:951 util/grub-mkfont.c:952 -#: util/grub-mkpasswd-pbkdf2.c:46 util/grub-mkpasswd-pbkdf2.c:47 -#: util/grub-mkpasswd-pbkdf2.c:48 -msgid "NUM" -msgstr "" - -#: util/grub-fstest.c:517 -msgid "Skip N bytes from output file." -msgstr "" - -#: util/grub-fstest.c:518 -msgid "Handle N bytes in output file." -msgstr "" - -#: util/grub-fstest.c:519 -msgid "Specify the number of input files." -msgstr "" - -#: util/grub-fstest.c:520 util/grub-mount.c:453 -msgid "Set debug environment variable." -msgstr "" - -#: util/grub-fstest.c:521 util/grub-mount.c:454 -#, fuzzy -msgid "Mount crypto devices." -msgstr "%s: `%s' ã¯ãƒžã‚¦ãƒ³ãƒˆãƒã‚¤ãƒ³ãƒˆã§ã¯ã‚りã¾ã›ã‚“\n" - -#. TRANSLATORS: "prompt" is a keyword. -#: util/grub-fstest.c:524 util/grub-mount.c:457 -#, fuzzy -msgid "FILE|prompt" -msgstr "ファイルã®é¸æŠž" - -#: util/grub-fstest.c:524 util/grub-mount.c:457 -msgid "Load zfs crypto key." -msgstr "" - -#: util/grub-fstest.c:526 -msgid "Uncompress data." -msgstr "" - -#: util/grub-fstest.c:605 -#, fuzzy -msgid "Invalid disk count.\n" -msgstr "%s: --auto/-a オプションã«å¯¾ã—ã¦ä¸å½“ãªå¼•æ•°\n" - -#. TRANSLATORS: disk count is optional but if it's there it must -#. be before disk list. So please don't imply disk count as mandatory. -#. -#: util/grub-fstest.c:613 -msgid "Disk count must precede disks list.\n" -msgstr "" - -#: util/grub-fstest.c:633 -#, fuzzy -msgid "No command is specified.\n" -msgstr "存在ã—ãªã„è¨­å®šãƒ•ã‚¡ã‚¤ãƒ«ãŒæŒ‡å®šã•れãŸã€‚" - -#: util/grub-fstest.c:638 -msgid "Not enough parameters to command.\n" -msgstr "" - -#: util/grub-fstest.c:711 -#, fuzzy, c-format -msgid "Invalid command %s.\n" -msgstr " COMMAND 対象ã®ã‚³ãƒžãƒ³ãƒ‰ (ä»»æ„)\n" - -#: util/grub-fstest.c:724 -msgid "IMAGE_PATH COMMANDS" -msgstr "" - -#: util/grub-fstest.c:725 util/grub-mount.c:553 -msgid "Debug tool for filesystem driver." -msgstr "" - -#: util/grub-glue-efi.c:53 -msgid "set input filename for 32-bit part." -msgstr "" - -#: util/grub-glue-efi.c:55 -msgid "set input filename for 64-bit part." -msgstr "" - -#: util/grub-glue-efi.c:57 util/grub-mklayout.c:55 util/grub-render-label.c:71 -msgid "set output filename. Default is STDOUT" -msgstr "" - -#: util/grub-glue-efi.c:94 util/grub-mklayout.c:476 -#: util/grub-mkpasswd-pbkdf2.c:86 util/grub-render-label.c:131 -#, fuzzy -msgid "[OPTIONS]" -msgstr "全般ã®ã‚ªãƒ—ション" - -#: util/grub-glue-efi.c:95 -msgid "Glue 32-bit and 64-bit binary into Apple universal one." -msgstr "" - -#: util/grub-glue-efi.c:116 -msgid "Missing input file\n" -msgstr "" - -#: util/grub-install-common.c:127 util/grub-install-common.c:151 -#, fuzzy, c-format -msgid "cannot copy `%s' to `%s': %s" -msgstr "%s: `%s' ãŒã‚ªãƒ¼ãƒ—ンã§ãã¾ã›ã‚“\n" - -#: util/grub-install-common.c:147 -#, fuzzy, c-format -msgid "can't compress `%s' to `%s'" -msgstr "%s: `%s' ãŒã‚ªãƒ¼ãƒ—ンã§ãã¾ã›ã‚“\n" - -#: util/grub-install-common.c:196 util/grub-install-common.c:552 -#: util/grub-install-common.c:579 util/grub-install-common.c:621 -#, fuzzy, c-format -msgid "cannot open directory `%s': %s" -msgstr "%s: `%s' ãŒã‚ªãƒ¼ãƒ—ンã§ãã¾ã›ã‚“\n" - -#: util/grub-install-common.c:212 -#, fuzzy, c-format -msgid "cannot delete `%s': %s" -msgstr "`%s' ã‚’é–‹ã‘ã¾ã›ã‚“" - -#: util/grub-install-common.c:324 util/grub-mkimage.c:209 -msgid "grub-mkimage is compiled without XZ support" -msgstr "" - -#: util/grub-install-common.c:332 util/grub-mkimage.c:217 -#, fuzzy, c-format -msgid "Unknown compression format %s" -msgstr "䏿˜Žãªã‚¨ã‚¹ã‚±ãƒ¼ãƒ— '\\%c' ãŒæ–‡å­—列内ã«ã‚りã¾ã™ã€‚無視ã•れã¾ã—ãŸ" - -#: util/grub-install-common.c:400 -#, fuzzy, c-format -msgid "Unrecognized compression `%s'" -msgstr "使用法: %s [option...] [asmfile...]\n" - -#: util/grub-install-common.c:509 -#, fuzzy, c-format -msgid "unknown target format %s" -msgstr " --target-help ターゲット固有ã®ã‚ªãƒ—ションを表示ã™ã‚‹\n" - -#: util/grub-install-common.c:700 -#, fuzzy, c-format -msgid "cannot find locale `%s'" -msgstr " COMMAND 対象ã®ã‚³ãƒžãƒ³ãƒ‰ (ä»»æ„)\n" - -#: util/grub-install-common.c:939 -#, c-format -msgid "%s doesn't exist. Please specify --target or --directory" -msgstr "" - -#: util/grub-install-common.c:948 util/grub-install-common.c:951 -#, fuzzy, c-format -msgid "invalid modinfo file `%s'" -msgstr "èªè­˜ã§ããªã„エミュレーションå `%s' ã§ã™" - -#: util/grub-install-common.c:966 -#, fuzzy, c-format -msgid "Unknown platform `%s-%s'" -msgstr "䏿˜Žã§ä½™åˆ†ãªå¼•æ•° `%s' ã§ã™ã€‚\n" - -#: util/grub-install.c:238 -msgid "More than one install device?" -msgstr "" - -#: util/grub-install.c:251 -#, c-format -msgid "" -"install GRUB images under the directory DIR/%s instead of the %s directory" -msgstr "" - -#: util/grub-install.c:256 util/grub-probe.c:734 -msgid "TARGET" -msgstr "" - -#. TRANSLATORS: "TARGET" as in "target platform". -#: util/grub-install.c:258 -#, c-format -msgid "install GRUB for TARGET platform [default=%s]; available targets: %s" -msgstr "" - -#. TRANSLATORS: "may break" doesn't just mean that option wouldn't have any -#. effect but that it will make the resulting install unbootable from HDD. -#. TRANSLATORS: The potential breakage isn't limited to floppies but it's -#. likely to make the install unbootable from HDD. -#: util/grub-install.c:267 util/grub-setup.c:94 -msgid "" -"make the drive also bootable as floppy (default for fdX devices). May break " -"on some BIOSes." -msgstr "" - -#: util/grub-install.c:270 -msgid "delete device map if it already exists" -msgstr "" - -#: util/grub-install.c:272 util/grub-setup.c:87 -msgid "install even if problems are detected" -msgstr "" - -#: util/grub-install.c:274 -msgid "use identifier file even if UUID is available" -msgstr "" - -#: util/grub-install.c:276 -msgid "" -"disk module to use (biosdisk or native). This option is only available on " -"BIOS target." -msgstr "" - -#: util/grub-install.c:279 -msgid "" -"don't update the `boot-device'/`Boot*' NVRAM variables. This option is only " -"available on EFI and IEEE1275 targets." -msgstr "" - -#: util/grub-install.c:282 util/grub-setup.c:89 -msgid "do not probe for filesystems in DEVICE" -msgstr "" - -#: util/grub-install.c:284 -msgid "do not install bootsector" -msgstr "" - -#: util/grub-install.c:286 util/grub-setup.c:96 -msgid "" -"Do not apply any reed-solomon codes when embedding core.img. This option is " -"only available on x86 BIOS targets." -msgstr "" - -#: util/grub-install.c:293 -msgid "" -"the installation device is removable. This option is only available on EFI." -msgstr "" - -#: util/grub-install.c:295 -msgid "ID" -msgstr "" - -#: util/grub-install.c:296 -msgid "the ID of bootloader. This option is only available on EFI and Macs." -msgstr "" - -#: util/grub-install.c:298 -msgid "use DIR as the EFI System Partition root." -msgstr "" - -#: util/grub-install.c:300 -msgid "use DIR for PPC MAC install." -msgstr "" - -#: util/grub-install.c:301 util/grub-mkrescue.c:106 -msgid "use FILE as font for label" -msgstr "" - -#: util/grub-install.c:302 util/grub-mkrescue.c:107 -msgid "use COLOR for label" -msgstr "" - -#: util/grub-install.c:303 util/grub-mkrescue.c:108 -msgid "use COLOR for label background" -msgstr "" - -#: util/grub-install.c:304 util/grub-mkrescue.c:110 -msgid "use STRING as product version" -msgstr "" - -#: util/grub-install.c:361 -#, fuzzy -msgid "[OPTION] [INSTALL_DEVICE]" -msgstr "ä½¿ã„æ–¹: ボリュームå [<デãƒã‚¤ã‚¹ãƒ•ァイル>]\n" - -#: util/grub-install.c:362 -msgid "Install GRUB on your drive." -msgstr "" - -#: util/grub-install.c:363 -#, c-format -msgid "" -"INSTALL_DEVICE must be system device filename.\n" -"%s copies GRUB images into %s. On some platforms, it may also install GRUB " -"into the boot sector." -msgstr "" - -#: util/grub-install.c:672 -#, c-format -msgid "the drive %s is defined multiple times in the device map %s" -msgstr "" - -#: util/grub-install.c:878 -msgid "Unable to determine your platform. Use --target." -msgstr "" - -#: util/grub-install.c:891 -#, c-format -msgid "Installing for %s platform.\n" -msgstr "" - -#: util/grub-install.c:939 -#, fuzzy -msgid "install device isn't specified" -msgstr "デãƒã‚¤ã‚¹ãŒæŒ‡å®šã•れã¦ã„ã¾ã›ã‚“。\n" - -#: util/grub-install.c:1057 -#, fuzzy -msgid "cannot find EFI directory" -msgstr "%s ã¯ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã§ã¯ã‚りã¾ã›ã‚“!" - -#: util/grub-install.c:1060 util/grub-install.c:1209 util/grub-install.c:1254 -#: util/grub-macbless.c:76 util/grub-probe.c:329 util/setup.c:316 -#, c-format -msgid "cannot find a device for %s (is /dev mounted?)" -msgstr "" - -#: util/grub-install.c:1069 util/grub-install.c:1217 util/grub-install.c:1270 -#: util/grub-install.c:1365 util/grub-macbless.c:80 util/grub-probe.c:372 -#, c-format -msgid "cannot find a GRUB drive for %s. Check your device.map" -msgstr "" - -#: util/grub-install.c:1087 -#, c-format -msgid "%s doesn't look like an EFI partition" -msgstr "" - -#: util/grub-install.c:1129 util/grub-install.c:1614 -msgid "You've found a bug" -msgstr "" - -#: util/grub-install.c:1231 -#, c-format -msgid "filesystem on %s is neither HFS nor HFS+" -msgstr "" - -#: util/grub-install.c:1299 -#, c-format -msgid "" -"attempt to install to encrypted disk without cryptodisk enabled. Set `%s' in " -"file `%s'" -msgstr "" - -#: util/grub-install.c:1410 util/grub-install.c:1772 util/grub-install.c:1872 -#, fuzzy, c-format -msgid "Can't create file: %s" -msgstr ".glade ファイルを特定ã§ãã¾ã›ã‚“: %s" - -#: util/grub-install.c:1491 -msgid "no hints available for your platform. Expect reduced performance" -msgstr "" - -#. TRANSLATORS: This is a prefix in the log to indicate that usually -#. a command would be executed but due to an option was skipped. -#: util/grub-install.c:1702 -msgid "NOT RUNNING: " -msgstr "" - -#: util/grub-install.c:1806 -msgid "the chosen partition is not a PReP partition" -msgstr "" - -#: util/grub-install.c:1811 -msgid "failed to copy Grub to the PReP partition" -msgstr "" - -#: util/grub-install.c:1816 -#, c-format -msgid "" -"the PReP partition is not empty. If you are sure you want to use it, run dd " -"to clear it: `%s'" -msgstr "" - -#: util/grub-install.c:1888 util/grub-install.c:1932 -#, c-format -msgid "efibootmgr failed to register the boot entry: %s" -msgstr "" - -#: util/grub-install.c:1916 -#, fuzzy -msgid "EFI bootloader id isn't specified." -msgstr "デãƒã‚¤ã‚¹ãŒæŒ‡å®šã•れã¦ã„ã¾ã›ã‚“。\n" - -#: util/grub-install.c:1950 -msgid "WARNING: no platform-specific install was performed" -msgstr "" - -#: util/grub-install.c:1957 -msgid "Installation finished. No error reported." -msgstr "" - -#: util/grub-macbless.c:101 -msgid "bless for x86-based macs" -msgstr "" - -#: util/grub-macbless.c:103 -msgid "bless for ppc-based macs" -msgstr "" - -#: util/grub-macbless.c:136 util/grub-probe.c:823 -#, fuzzy -msgid "No path or device is specified.\n" -msgstr "デãƒã‚¤ã‚¹ãŒæŒ‡å®šã•れã¦ã„ã¾ã›ã‚“。\n" - -#: util/grub-macbless.c:157 -msgid "--ppc PATH|--x86 FILE" -msgstr "" - -#: util/grub-macbless.c:158 -msgid "Mac-style bless on HFS or HFS+" -msgstr "" - -#: util/grub-menulst2cfg.c:44 -#, fuzzy, c-format -msgid "Usage: %s [INFILE [OUTFILE]]\n" -msgstr "使用法: %s [option...] [asmfile...]\n" - -#: util/grub-mkfont.c:157 -#, c-format -msgid "Freetype Error %d loading glyph 0x%x for U+0x%x%s" -msgstr "" - -#. TRANSLATORS: These qualifiers are used for cursive typography, -#. mainly Arabic. Note that the terms refer to the visual position -#. and not logical order and if used in left-to-right script then -#. leftmost is initial but with right-to-left script like Arabic -#. rightmost is the initial. -#: util/grub-mkfont.c:165 -msgid " (medial)" -msgstr "" - -#: util/grub-mkfont.c:166 -msgid " (leftmost)" -msgstr "" - -#: util/grub-mkfont.c:167 -msgid " (rightmost)" -msgstr "" - -#: util/grub-mkfont.c:481 -#, c-format -msgid "Out of range substitution (%d, %d)\n" -msgstr "" - -#. TRANSLATORS: "lookup" is taken directly from font specifications -#. which are formulated as "Under condition X replace LOOKUP with -#. SUBSTITUITION". " -#: util/grub-mkfont.c:506 -#, c-format -msgid "Out of range lookup: %d\n" -msgstr "" - -#: util/grub-mkfont.c:514 -#, fuzzy, c-format -msgid "Unsupported substitution type: %d\n" -msgstr "IM $IM_CONFIG_XINPUTRC_TYPE $IM_CONFIG_XINPUTRC を削除。" - -#: util/grub-mkfont.c:550 -#, c-format -msgid "Unsupported substitution specification: %d\n" -msgstr "" - -#: util/grub-mkfont.c:582 -#, c-format -msgid "Unsupported coverage specification: %d\n" -msgstr "" - -#: util/grub-mkfont.c:622 -#, c-format -msgid "WARNING: unsupported font feature parameters: %x\n" -msgstr "" - -#: util/grub-mkfont.c:936 util/grub-mkrescue.c:98 util/grub-mkstandalone.c:48 -msgid "save output in FILE [required]" -msgstr "" - -#. TRANSLATORS: some font files may have multiple faces (fonts). -#. This option is used to chose among them, the first face being '0'. -#. Rarely used. -#: util/grub-mkfont.c:942 -#, fuzzy -msgid "select face index" -msgstr "AtkHyperlink オブジェクトã®çµ‚端インデックスã§ã™" - -#: util/grub-mkfont.c:943 -#, fuzzy -msgid "FROM-TO[,FROM-TO]" -msgstr "接続:" - -#. TRANSLATORS: It refers to the range of characters in font. -#: util/grub-mkfont.c:945 -#, fuzzy -msgid "set font range" -msgstr " VALUE 設定ã™ã‚‹å€¤\n" - -#. TRANSLATORS: "family name" for font is just a generic name without suffix -#. like "Bold". -#: util/grub-mkfont.c:949 -msgid "set font family name" -msgstr "" - -#: util/grub-mkfont.c:950 -#, fuzzy -msgid "SIZE" -msgstr "ç¾åœ¨ã®ã‚µã‚¤ã‚º:" - -#: util/grub-mkfont.c:950 -#, fuzzy -msgid "set font size" -msgstr " VALUE 設定ã™ã‚‹å€¤\n" - -#: util/grub-mkfont.c:951 -#, fuzzy -msgid "set font descent" -msgstr " VALUE 設定ã™ã‚‹å€¤\n" - -#: util/grub-mkfont.c:952 -#, fuzzy -msgid "set font ascent" -msgstr " VALUE 設定ã™ã‚‹å€¤\n" - -#: util/grub-mkfont.c:953 -msgid "convert to bold font" -msgstr "" - -#: util/grub-mkfont.c:954 -msgid "force autohint" -msgstr "" - -#: util/grub-mkfont.c:955 -msgid "disable hinting" -msgstr "" - -#. TRANSLATORS: some fonts contain bitmap rendering for -#. some sizes. This option forces rerendering even if -#. pre-rendered bitmap is available. -#. -#: util/grub-mkfont.c:961 -msgid "ignore bitmap strikes when loading" -msgstr "" - -#. TRANSLATORS: It refers to the range of characters in font. -#: util/grub-mkfont.c:1059 util/grub-mkfont.c:1075 -#, fuzzy -msgid "invalid font range" -msgstr "%s: --auto/-a オプションã«å¯¾ã—ã¦ä¸å½“ãªå¼•æ•°\n" - -#: util/grub-mkfont.c:1151 -#, fuzzy -msgid "[OPTIONS] FONT_FILES" -msgstr " @FILE オプションを FILE ã‹ã‚‰èª­ã¿è¾¼ã‚€\n" - -#: util/grub-mkfont.c:1152 -msgid "Convert common font file formats into PF2" -msgstr "" - -#: util/grub-mkfont.c:1182 util/grub-mkrescue.c:483 -#: util/grub-mkstandalone.c:306 -#, fuzzy -msgid "output file must be specified" -msgstr "デãƒã‚¤ã‚¹ãŒæŒ‡å®šã•れã¦ã„ã¾ã›ã‚“。\n" - -#: util/grub-mkfont.c:1185 -msgid "FT_Init_FreeType fails" -msgstr "" - -#: util/grub-mkfont.c:1199 -#, c-format -msgid "can't open file %s, index %d: error %d" -msgstr "" - -#: util/grub-mkfont.c:1229 -#, c-format -msgid "can't set %dx%d font size: Freetype error %d: %s" -msgstr "" - -#: util/grub-mkimage.c:67 -#, fuzzy -msgid "set prefix directory" -msgstr "%s ã¯ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã§ã¯ã‚りã¾ã›ã‚“!" - -#. TRANSLATORS: "memdisk" here isn't an identifier, it can be translated. -#. "embed" is a verb (command description). " -#: util/grub-mkimage.c:71 -msgid "" -"embed FILE as a memdisk image\n" -"Implies `-p (memdisk)/boot/grub' and overrides any prefix supplied " -"previously, but the prefix itself can be overridden by later options" -msgstr "" - -#: util/grub-mkimage.c:74 -msgid "embed FILE as a device tree (DTB)\n" -msgstr "" - -#: util/grub-mkimage.c:76 -msgid "embed FILE as an early config" -msgstr "" - -#. TRANSLATORS: NOTE is a name of segment. -#: util/grub-mkimage.c:80 -msgid "add NOTE segment for CHRP IEEE1275" -msgstr "" - -#: util/grub-mkimage.c:81 -msgid "output a generated image to FILE [default=stdout]" -msgstr "" - -#: util/grub-mkimage.c:82 -msgid "FORMAT" -msgstr "" - -#: util/grub-mkimage.c:100 util/grub-mkstandalone.c:62 -msgid "generate an image in FORMAT" -msgstr "" - -#: util/grub-mkimage.c:101 util/grub-mkstandalone.c:63 -#, fuzzy -msgid "available formats:" -msgstr "E: X サーãƒãƒ¼ãŒä½¿ç”¨ã§ããªã‘れã°ã„ã‘ã¾ã›ã‚“。" - -#: util/grub-mkimage.c:152 util/grub-mkstandalone.c:96 -#, fuzzy, c-format -msgid "unknown target format %s\n" -msgstr " --target-help ターゲット固有ã®ã‚ªãƒ—ションを表示ã™ã‚‹\n" - -#: util/grub-mkimage.c:242 -#, fuzzy -msgid "[OPTION]... [MODULES]" -msgstr "使用法: %s [option...] [asmfile...]\n" - -#: util/grub-mkimage.c:243 -msgid "Make a bootable image of GRUB." -msgstr "" - -#: util/grub-mkimage.c:273 util/grub-mkstandalone.c:309 -msgid "Target format not specified (use the -O option)." -msgstr "" - -#: util/grub-mkimage.c:282 -msgid "Prefix not specified (use the -p option)." -msgstr "" - -#: util/grub-mkimage.c:318 util/setup.c:793 -#, fuzzy, c-format -msgid "cannot close `%s': %s" -msgstr "%s: `%s' ãŒã‚ªãƒ¼ãƒ—ンã§ãã¾ã›ã‚“\n" - -#: util/grub-mkimagexx.c:2191 -#, c-format -msgid "" -"`%s' is miscompiled: its start address is 0x%llx instead of 0x%llx: ld.gold " -"bug?" -msgstr "" - -#: util/grub-mklayout.c:53 -msgid "set input filename. Default is STDIN" -msgstr "" - -#. TRANSLATORS: scan identifier is keyboard key symbolic name. -#: util/grub-mklayout.c:307 -#, c-format -msgid "Unknown keyboard scan identifier %s\n" -msgstr "" - -#. TRANSLATORS: scan code is keyboard key numeric identifier. -#: util/grub-mklayout.c:390 util/grub-mklayout.c:418 -#, c-format -msgid "Unknown keyboard scan code 0x%02x\n" -msgstr "" - -#. TRANSLATORS: this error is triggered when input doesn't contain any -#. key descriptions. -#: util/grub-mklayout.c:438 -msgid "ERROR: no valid keyboard layout found. Check the input.\n" -msgstr "" - -#. TRANSLATORS: "one" is a shortcut for "keyboard layout". -#: util/grub-mklayout.c:478 -msgid "Generate GRUB keyboard layout from Linux console one." -msgstr "" - -#: util/grub-mknetdir.c:47 -msgid "root directory of TFTP server" -msgstr "" - -#: util/grub-mknetdir.c:49 -msgid "relative subdirectory on network server" -msgstr "" - -#: util/grub-mknetdir.c:88 -msgid "" -"Prepares GRUB network boot images at net_directory/subdir assuming " -"net_directory being TFTP root." -msgstr "" - -#: util/grub-mknetdir.c:146 -#, fuzzy, c-format -msgid "unsupported platform %s" -msgstr "サãƒãƒ¼ãƒˆã•れã¦ã„ãªã„シリアルãƒãƒ¼ãƒˆã®é€Ÿåº¦ã§ã™" - -#. TRANSLATORS: First %s is replaced by platform name. Second one by filename. -#: util/grub-mknetdir.c:165 -#, c-format -msgid "" -"Netboot directory for %s created. Configure your DHCP server to point to %s\n" -msgstr "" - -#: util/grub-mkpasswd-pbkdf2.c:46 -#, fuzzy -msgid "Number of PBKDF2 iterations" -msgstr "アクセスå¯èƒ½ãª HyperText ãƒªãƒ³ã‚¯ã®æ•°" - -#: util/grub-mkpasswd-pbkdf2.c:47 -msgid "Length of generated hash" -msgstr "" - -#: util/grub-mkpasswd-pbkdf2.c:48 -msgid "Length of salt" -msgstr "" - -#: util/grub-mkpasswd-pbkdf2.c:87 -msgid "Generate PBKDF2 password hash." -msgstr "" - -#: util/grub-mkpasswd-pbkdf2.c:144 util/grub-mkpasswd-pbkdf2.c:151 -msgid "failure to read password" -msgstr "" - -#: util/grub-mkpasswd-pbkdf2.c:146 -#, fuzzy -msgid "Reenter password: " -msgstr "パスワードを入力ã—ã¦ãã ã•ã„: " - -#: util/grub-mkpasswd-pbkdf2.c:160 -#, fuzzy -msgid "passwords don't match" -msgstr " --warn 警告を抑止ã—ãªã„\n" - -#: util/grub-mkpasswd-pbkdf2.c:169 -msgid "couldn't retrieve random data for salt" -msgstr "" - -#: util/grub-mkpasswd-pbkdf2.c:184 -#, fuzzy, c-format -msgid "cryptographic error number %d" -msgstr "libnotify ã®åˆæœŸåŒ–ã«å¤±æ•—ã—ã¾ã—ãŸ" - -#: util/grub-mkpasswd-pbkdf2.c:203 -#, c-format -msgid "PBKDF2 hash of your password is %s\n" -msgstr "" - -#: util/grub-mkrelpath.c:67 -#, fuzzy -msgid "No path is specified.\n" -msgstr "存在ã—ãªã„è¨­å®šãƒ•ã‚¡ã‚¤ãƒ«ãŒæŒ‡å®šã•れãŸã€‚" - -#: util/grub-mkrelpath.c:78 -msgid "PATH" -msgstr "" - -#: util/grub-mkrelpath.c:79 -msgid "Transform a system filename into GRUB one." -msgstr "" - -#: util/grub-mkrescue.c:100 -msgid "save ROM images in DIR [optional]" -msgstr "" - -#. TRANSLATORS: xorriso is a program for creating ISOs and burning CDs. -#: util/grub-mkrescue.c:103 -msgid "use FILE as xorriso [optional]" -msgstr "" - -#: util/grub-mkrescue.c:109 -msgid "use STRING as product name" -msgstr "" - -#: util/grub-mkrescue.c:111 -msgid "" -"enable sparc boot. Disables HFS+, APM, ARCS and boot as disk image for i386-" -"pc" -msgstr "" - -#: util/grub-mkrescue.c:112 -msgid "" -"enable ARCS (big-endian mips machines, mostly SGI) boot. Disables HFS+, APM, " -"sparc64 and boot as disk image for i386-pc" -msgstr "" - -#. TRANSLATORS: it generates one single image which is bootable through any method. -#: util/grub-mkrescue.c:125 -msgid "Make GRUB CD-ROM, disk, pendrive and floppy bootable image." -msgstr "" - -#: util/grub-mkrescue.c:130 -#, c-format -msgid "" -"Generates a bootable CD/USB/floppy image. Arguments other than options to " -"this program are passed to xorriso, and indicate source files, source " -"directories, or any of the mkisofs options listed by the output of `%s'." -msgstr "" - -#: util/grub-mkrescue.c:134 -msgid "Option -- switches to native xorriso command mode." -msgstr "" - -#: util/grub-mkrescue.c:135 -msgid "Mail xorriso support requests to ." -msgstr "" - -#: util/grub-mkrescue.c:221 util/grub-mkstandalone.c:114 -#, fuzzy -msgid "[OPTION] SOURCE..." -msgstr "使用法: %s [OPTION] SOURCE...\\n" - -#: util/grub-mkrescue.c:257 util/grub-mkrescue.c:300 util/grub-mkrescue.c:588 -#, c-format -msgid "enabling %s support ..." -msgstr "" - -#: util/grub-mkrescue.c:486 -#, fuzzy -msgid "xorriso not found" -msgstr "%s ã¯ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã§ã¯ã‚りã¾ã›ã‚“!" - -#: util/grub-mkrescue.c:623 -msgid "" -"Your xorriso doesn't support `--grub2-boot-info'. Some features are " -"disabled. Please use xorriso 1.2.9 or later." -msgstr "" - -#: util/grub-mkrescue.c:650 -msgid "" -"Your xorriso doesn't support `--grub2-boot-info'. Your core image is too " -"big. Boot as disk is disabled. Please use xorriso 1.2.9 or later." -msgstr "" - -#: util/grub-mkstandalone.c:115 -msgid "" -"Generate a standalone image (containing all modules) in the selected format" -msgstr "" - -#: util/grub-mkstandalone.c:115 -msgid "Graft point syntax (E.g. /boot/grub/grub.cfg=./grub.cfg) is accepted" -msgstr "" - -#: util/grub-mount.c:552 -msgid "IMAGE1 [IMAGE2 ...] MOUNTPOINT" -msgstr "" - -#: util/grub-mount.c:575 -msgid "need an image and mountpoint" -msgstr "" - -#: util/grub-probe.c:731 -msgid "given argument is a system device, not a path" -msgstr "" - -#: util/grub-probe.c:736 -msgid "separate items in output using ASCII NUL characters" -msgstr "" - -#: util/grub-probe.c:754 -#, c-format -msgid "[default=%s]" -msgstr "" - -#: util/grub-probe.c:756 -msgid "print TARGET" -msgstr "" - -#: util/grub-probe.c:757 -#, fuzzy -msgid "available targets:" -msgstr "E: X サーãƒãƒ¼ãŒä½¿ç”¨ã§ããªã‘れã°ã„ã‘ã¾ã›ã‚“。" - -#: util/grub-probe.c:839 -#, fuzzy -msgid "[OPTION]... [PATH|DEVICE]" -msgstr "%(service)s on %(device)s" - -#: util/grub-probe.c:840 -msgid "" -"Probe device information for a given path (or device, if the -d option is " -"given)." -msgstr "" - -#: util/grub-render-label.c:60 -msgid "read text from FILE." -msgstr "" - -#: util/grub-render-label.c:62 -msgid "use COLOR for text" -msgstr "" - -#: util/grub-render-label.c:64 -msgid "use COLOR for background" -msgstr "" - -#. TRANSLATORS: The result is always stored to file and -#. never shown directly, so don't use "show" as synonym for render. Use "create" if -#. "render" doesn't translate directly. -#: util/grub-render-label.c:69 -msgid "set the label to render" -msgstr "" - -#: util/grub-render-label.c:73 -msgid "use FILE as font (PF2)." -msgstr "" - -#. TRANSLATORS: This file takes a text and creates a graphical representation of it, -#. putting the result into .disk_label file. The result is always stored to file and -#. never shown directly, so don't use "show" as synonym for render. Use "create" if -#. "render" doesn't translate directly. -#: util/grub-render-label.c:136 -msgid "Render Apple .disk_label." -msgstr "" - -#: util/grub-render-label.c:158 util/grub-syslinux2cfg.c:169 -#, fuzzy -msgid "Missing arguments\n" -msgstr "%s: 引数ãŒå¤šã™ãŽã¾ã™\n" - -#: util/grub-script-check.c:87 -msgid "[PATH]" -msgstr "" - -#: util/grub-script-check.c:88 -msgid "Checks GRUB script configuration file for syntax errors." -msgstr "" - -#: util/grub-script-check.c:207 -#, c-format -msgid "Syntax error at line %u\n" -msgstr "" - -#: util/grub-script-check.c:212 -#, c-format -msgid "Script `%s' contains no commands and will do nothing\n" -msgstr "" - -#: util/grub-setup.c:79 -#, c-format -msgid "use FILE as the boot image [default=%s]" -msgstr "" - -#: util/grub-setup.c:81 -#, c-format -msgid "use FILE as the core image [default=%s]" -msgstr "" - -#: util/grub-setup.c:210 -msgid "No device is specified.\n" -msgstr "デãƒã‚¤ã‚¹ãŒæŒ‡å®šã•れã¦ã„ã¾ã›ã‚“。\n" - -#: util/grub-setup.c:224 -msgid "" -"Set up images to boot from DEVICE.\n" -"\n" -"You should not normally run this program directly. Use grub-install instead." -msgstr "" - -#: util/grub-setup.c:228 -msgid "DEVICE must be an OS device (e.g. /dev/sda)." -msgstr "DEVICE 㯠OS ã®ãƒ‡ãƒã‚¤ã‚¹ã§ãªã‘れã°ã„ã‘ã¾ã›ã‚“ (例: /dev/sda)。" - -#: util/grub-setup.c:297 -#, c-format -msgid "Invalid device `%s'.\n" -msgstr "無効ãªãƒ‡ãƒã‚¤ã‚¹ `%s' ã§ã™ã€‚\n" - -#: util/grub-syslinux2cfg.c:64 -msgid "root directory as it will be seen on runtime [default=/]." -msgstr "" - -#: util/grub-syslinux2cfg.c:69 -msgid "" -"current directory of syslinux as it will be seen on runtime [default is " -"parent directory of input file]." -msgstr "" - -#: util/grub-syslinux2cfg.c:74 -msgid "write output to FILE [default=stdout]." -msgstr "" - -#: util/grub-syslinux2cfg.c:148 -msgid "Transform syslinux config into GRUB one." -msgstr "" - -#: util/mkimage.c:688 util/mkimage.c:717 util/mkimage.c:734 -msgid "cannot compress the kernel image" -msgstr "カーãƒãƒ«ã‚¤ãƒ¡ãƒ¼ã‚¸ã‚’圧縮ã§ãã¾ã›ã‚“" - -#: util/mkimage.c:766 util/mkimage.c:1077 -#, fuzzy, c-format -msgid "unknown compression %d" -msgstr "䏿˜Žãªã‚¨ã‚¹ã‚±ãƒ¼ãƒ— '\\%c' ãŒæ–‡å­—列内ã«ã‚りã¾ã™ã€‚無視ã•れã¾ã—ãŸ" - -#: util/mkimage.c:1088 -#, fuzzy -msgid "Decompressor is too big" -msgstr "コアイメージãŒå¤§ãã™ãŽã¾ã™" - -#: util/mkimage.c:1133 -#, fuzzy, c-format -msgid "core image is too big (0x%x > 0x%x)" -msgstr "コアイメージãŒå¤§ãã™ãŽã¾ã™ (%p > %p)" - -#: util/mkimage.c:1140 -#, fuzzy, c-format -msgid "kernel image is too big (0x%x > 0x%x)" -msgstr "コアイメージãŒå¤§ãã™ãŽã¾ã™ (%p > %p)" - -#: util/mkimage.c:1220 util/mkimage.c:1501 -#, c-format -msgid "diskboot.img size must be %u bytes" -msgstr "diskboot.img ã®ã‚µã‚¤ã‚ºã¯ %u ãƒã‚¤ãƒˆã§ã‚ã‚‹å¿…è¦ãŒã‚りã¾ã™" - -#: util/mkimage.c:1571 -msgid "" -"fwstart.img doesn't match the known good version. proceed at your own risk" -msgstr "" - -#: util/mkimage.c:1575 util/mkimage.c:1601 -#, fuzzy -msgid "firmware image is too big" -msgstr "コアイメージãŒå¤§ãã™ãŽã¾ã™" - -#: util/resolve.c:93 -#, fuzzy, c-format -msgid "invalid line format: %s" -msgstr "%s: --auto/-a オプションã«å¯¾ã—ã¦ä¸å½“ãªå¼•æ•°\n" - -#: util/setup.c:167 -msgid "the first sector of the core file is not sector-aligned" -msgstr "ã‚³ã‚¢ãƒ•ã‚¡ã‚¤ãƒ«ã®æœ€åˆã®ã‚»ã‚¯ã‚¿ãƒ¼ãŒã‚»ã‚¯ã‚¿ãƒ¼é †ã«æ•´åˆ—ã—ã¦ã„ã¾ã›ã‚“" - -#: util/setup.c:177 -msgid "non-sector-aligned data is found in the core file" -msgstr "ã‚»ã‚¯ã‚¿ãƒ¼é †ã«æ•´åˆ—ã—ã¦ã„ãªã„データãŒã‚³ã‚¢ãƒ•ァイル中ã«è¦‹ã¤ã‹ã‚Šã¾ã—ãŸ" - -#: util/setup.c:199 -msgid "the sectors of the core file are too fragmented" -msgstr "コアファイルã®ã‚»ã‚¯ã‚¿ãƒ¼ãŒã²ã©ã断片化ã—ã¦ã„ã¾ã™" - -#: util/setup.c:280 -#, c-format -msgid "the size of `%s' is not %u" -msgstr "`%s' ã®ã‚µã‚¤ã‚ºãŒ %u ã§ã¯ã‚りã¾ã›ã‚“" - -#: util/setup.c:290 -#, c-format -msgid "the size of `%s' is too small" -msgstr "`%s' ã®ã‚µã‚¤ã‚ºãŒå°ã•ã™ãŽã¾ã™" - -#: util/setup.c:428 -msgid "" -"Attempting to install GRUB to a disk with multiple partition labels or both " -"partition label and filesystem. This is not supported yet." -msgstr "" - -#: util/setup.c:441 -#, c-format -msgid "unable to identify a filesystem in %s; safety check can't be performed" -msgstr "" - -#. TRANSLATORS: Filesystem may reserve the space just GRUB isn't sure about it. -#: util/setup.c:445 -#, c-format -msgid "" -"%s appears to contain a %s filesystem which isn't known to reserve space for " -"DOS-style boot. Installing GRUB there could result in FILESYSTEM " -"DESTRUCTION if valuable data is overwritten by grub-setup (--skip-fs-probe " -"disables this check, use at your own risk)" -msgstr "" - -#. TRANSLATORS: Partition map may reserve the space just GRUB isn't sure about it. -#: util/setup.c:458 -#, c-format -msgid "" -"%s appears to contain a %s partition map which isn't known to reserve space " -"for DOS-style boot. Installing GRUB there could result in FILESYSTEM " -"DESTRUCTION if valuable data is overwritten by grub-setup (--skip-fs-probe " -"disables this check, use at your own risk)" -msgstr "" - -#: util/setup.c:465 -#, c-format -msgid "" -"%s appears to contain a %s partition map and LDM which isn't known to be a " -"safe combination. Installing GRUB there could result in FILESYSTEM " -"DESTRUCTION if valuable data is overwritten by grub-setup (--skip-fs-probe " -"disables this check, use at your own risk)" -msgstr "" - -#: util/setup.c:478 -msgid "" -"Attempting to install GRUB to a partitionless disk or to a partition. This " -"is a BAD idea." -msgstr "" - -#: util/setup.c:483 -msgid "" -"Attempting to install GRUB to a disk with multiple partition labels. This " -"is not supported yet." -msgstr "" - -#: util/setup.c:489 -#, c-format -msgid "Partition style `%s' doesn't support embedding" -msgstr "" - -#: util/setup.c:496 -#, c-format -msgid "File system `%s' doesn't support embedding" -msgstr "" - -#: util/setup.c:537 -msgid "Your embedding area is unusually small. core.img won't fit in it." -msgstr "" - -#: util/setup.c:559 util/setup.c:725 util/setup.c:844 -msgid "no terminator in the core image" -msgstr "" - -#: util/setup.c:622 -msgid "core.img version mismatch" -msgstr "" - -#: util/setup.c:675 -msgid "" -"embedding is not possible, but this is required for RAID and LVM install" -msgstr "" - -#: util/setup.c:682 -#, fuzzy, c-format -msgid "can't determine filesystem on %s" -msgstr "ファイルシステムã®å½¢å¼ã‚’決定ã™ã‚‹" - -#: util/setup.c:685 -#, c-format -msgid "filesystem `%s' doesn't support blocklists" -msgstr "" - -#. TRANSLATORS: cross-disk refers to /boot being on one disk -#. but MBR on another. -#: util/setup.c:694 -msgid "embedding is not possible, but this is required for cross-disk install" -msgstr "" - -#: util/setup.c:700 -msgid "" -"Embedding is not possible. GRUB can only be installed in this setup by " -"using blocklists. However, blocklists are UNRELIABLE and their use is " -"discouraged." -msgstr "" - -#. TRANSLATORS: Here GRUB refuses to continue with blocklist install. -#: util/setup.c:705 -msgid "will not proceed with blocklists" -msgstr "" - -#: util/setup.c:817 util/setup.c:837 -#, fuzzy -msgid "blocklists are invalid" -msgstr "\tコードページ設定ã¯ç„¡è¦–ã•れã¾ã™ã€‚\n" - -#: util/setup.c:847 -#, fuzzy -msgid "blocklists are incomplete" -msgstr "\tコードページ設定ã¯ç„¡è¦–ã•れã¾ã™ã€‚\n" - -#, fuzzy -#~ msgid "%s: option '--%s' doesn't allow an argument\n" -#~ msgstr "%s: --auto/-a オプションã«å¯¾ã—ã¦ä¸å½“ãªå¼•æ•°\n" - -#, fuzzy -#~ msgid "%s: unrecognized option '--%s'\n" -#~ msgstr "使用法: %s [option...] [asmfile...]\n" - -#, fuzzy -#~ msgid "%s: option '-W %s' is ambiguous\n" -#~ msgstr "%s ã¯ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã§ã¯ã‚りã¾ã›ã‚“!" - -#, fuzzy -#~ msgid "%s: option '-W %s' doesn't allow an argument\n" -#~ msgstr "%s: --auto/-a オプションã«å¯¾ã—ã¦ä¸å½“ãªå¼•æ•°\n" - -#, fuzzy -#~ msgid "%s: option '-W %s' requires an argument\n" -#~ msgstr "%s: --auto/-a オプションã«å¯¾ã—ã¦ä¸å½“ãªå¼•æ•°\n" - -#~ msgid "Found theme: %s\\n" -#~ msgstr "テーマを見ã¤ã‘ã¾ã—ãŸ: %s\\n" - -#~ msgid "Found GNU Mach: %s" -#~ msgstr "GNU Mach を見ã¤ã‘ã¾ã—ãŸ: %s\\n" - -#, fuzzy -#~ msgid "%s, with Hurd %s" -#~ msgstr "%s ãŒå®Œäº†ã—ã¾ã—ãŸã€‚" - -#~ msgid "Loading GNU Mach ..." -#~ msgstr "GNU Mach をロード中..." - -#~ msgid "Loading the Hurd ..." -#~ msgstr "the Hurd をロード中..." - -#, fuzzy -#~ msgid "Advanced options for %s" -#~ msgstr "-- カーãƒãƒ«ã®ãƒã‚¤ãƒŠãƒªãƒ‘ッケージ:" - -#, fuzzy -#~ msgid "Loading kernel of Illumos ..." -#~ msgstr "-- カーãƒãƒ«ã®ãƒã‚¤ãƒŠãƒªãƒ‘ッケージ:" - -#, fuzzy -#~ msgid "%s, with kFreeBSD %s" -#~ msgstr "%s ãŒå®Œäº†ã—ã¾ã—ãŸã€‚" - -#~ msgid "Loading kernel of FreeBSD %s ..." -#~ msgstr "FreeBSD %s ã®ã‚«ãƒ¼ãƒãƒ«ã‚’ロード中..." - -#~ msgid "Found kernel of FreeBSD: %s\\n" -#~ msgstr "FreeBSD カーãƒãƒ«ã‚’見ã¤ã‘ã¾ã—ãŸ: %s\\n" - -#, fuzzy -#~ msgid "Found kernel module directory: %s\\n" -#~ msgstr "ç¾åœ¨ã®ã‚«ãƒ¼ãƒãƒ«ç”¨ã«ãƒ¢ã‚¸ãƒ¥ãƒ¼ãƒ«ãƒ‘ッケージをコンパイル" - -#, fuzzy -#~ msgid "%s, with Linux %s" -#~ msgstr "%s ãŒå®Œäº†ã—ã¾ã—ãŸã€‚" - -#~ msgid "Loading Linux %s ..." -#~ msgstr "Linux %s をロード中..." - -#~ msgid "Loading initial ramdisk ..." -#~ msgstr "åˆæœŸ RAM ディスクをロード中..." - -#~ msgid "Found linux image: %s\\n" -#~ msgstr "Linux イメージを見ã¤ã‘ã¾ã—ãŸ: %s\\n" - -#, fuzzy -#~ msgid "%s, with kernel %s (via %s)" -#~ msgstr "-- カーãƒãƒ«ã®ãƒã‚¤ãƒŠãƒªãƒ‘ッケージ:" - -#~ msgid "Found NetBSD kernel: %s\\n" -#~ msgstr "NetBSD カーãƒãƒ«ã‚’見ã¤ã‘ã¾ã—ãŸ: %s\\n" - -#, fuzzy -#~ msgid "Found %s on %s (%s)\\n" -#~ msgstr "ä¾å­˜ãƒ—ラグイン:" - -#~ msgid "Loading Xen %s ..." -#~ msgstr "Xen %s をロード中..." - -#, fuzzy -#~ msgid "Xen hypervisor, version %s" -#~ msgstr "GNU アセンブラ ãƒãƒ¼ã‚¸ãƒ§ãƒ³ %s (%s)ã€BFD ãƒãƒ¼ã‚¸ãƒ§ãƒ³ %s を使用\n" - -#, fuzzy -#~ msgid "(on %s)" -#~ msgstr "ä¾å­˜ãƒ—ラグイン:" - -#, fuzzy -#~ msgid "Found %s on %s\\n" -#~ msgstr "ä¾å­˜ãƒ—ラグイン:" - -#, fuzzy -#~ msgid "print this message and exit" -#~ msgstr " --help ã“ã®ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã‚’表示ã—ã¦çµ‚了ã™ã‚‹\n" - -#, fuzzy -#~ msgid "print the version information and exit" -#~ msgstr "" -#~ " --version アセンブラã®ãƒãƒ¼ã‚¸ãƒ§ãƒ³ç•ªå·ã‚’表示ã—ã¦çµ‚了ã™ã‚‹\n" - -#, fuzzy -#~ msgid "%s: option requires an argument -- `%s'\\n" -#~ msgstr "%s: --auto/-a オプションã«å¯¾ã—ã¦ä¸å½“ãªå¼•æ•°\n" - -#, fuzzy -#~ msgid "Auto-detection of a filesystem of %s failed.\\n" -#~ msgstr "%s: CD-ROM 自動イジェクトコマンド失敗: %s\n" - -#, fuzzy -#~ msgid "`%s' failed.\\n" -#~ msgstr "%s: `%s' ã®ã‚¢ãƒ³ãƒžã‚¦ãƒ³ãƒˆã«å¤±æ•—\n" - -#~ msgid "Make GRUB keyboard layout file." -#~ msgstr "GRUB キーボードé…列を作æˆã™ã‚‹ã€‚" - -#~ msgid "Usage: %s [OPTION]\\n" -#~ msgstr "使用法: %s [OPTION]\\n" - -#~ msgid "Generate a grub config file" -#~ msgstr "grub 設定ファイルを生æˆã™ã‚‹" - -#~ msgid "done" -#~ msgstr "完了" - -#~ msgid "Expose v1 tables." -#~ msgstr "V1 テーブルを表示ã™ã‚‹" - -#~ msgid "Fake BIOS." -#~ msgstr "BIOSã®ãµã‚Šã‚’ã—ã¾ã™ã€‚" - -#~ msgid "Check hash list file." -#~ msgstr "ãƒãƒƒã‚·ãƒ¥ãƒªã‚¹ãƒˆãƒ•ァイルを確èªã—ã¦ãã ã•ã„。" - -#~ msgid "DIRECTORY" -#~ msgstr "ディレクトリ" - -#~ msgid "Unload PXE environment." -#~ msgstr "PXE 環境をå–り除ã" - -#~ msgid "Read word from PORT." -#~ msgstr "PORT ã‹ã‚‰ãƒ¯ãƒ¼ãƒ‰ã‚’読ã¿è¾¼ã‚€ã€‚" - -#~ msgid "Read dword from PORT." -#~ msgstr "PORT ã‹ã‚‰2å€ãƒ¯ãƒ¼ãƒ‰ã‚’読ã¿è¾¼ã‚€ã€‚" - -#~ msgid "Write word VALUE to PORT." -#~ msgstr "ワード値 VALUE ã‚’ PORT ã¸æ›¸ã込む。" - -#~ msgid "Write dword VALUE to PORT." -#~ msgstr "2å€ãƒ¯ãƒ¼ãƒ‰å€¤ VALUE ã‚’ PORT ã¸æ›¸ã込む。" - -#~ msgid "[--shift] [--ctrl] [--alt]" -#~ msgstr "[--shift] [--ctrl] [--alt]" - -#~ msgid "Read word from ADDR." -#~ msgstr "ADDR ã‹ã‚‰ãƒ¯ãƒ¼ãƒ‰ã‚’読ã¿è¾¼ã‚€ã€‚" - -#~ msgid "Read dword from ADDR." -#~ msgstr "ADDR ã‹ã‚‰2å€ãƒ¯ãƒ¼ãƒ‰ã‚’読ã¿è¾¼ã‚€ã€‚" - -#~ msgid "Write word VALUE to ADDR." -#~ msgstr "ワード値 VALUE ã‚’ ADDR ã«æ›¸ã込む。" - -#~ msgid "[DEVICE]" -#~ msgstr "[DEVICE]" - -#~ msgid "the core image is too small" -#~ msgstr "コアイメージãŒå°ã•ã™ãŽã¾ã™" - -#~ msgid "prefix is too long" -#~ msgstr "プレフィックスãŒé•·ã™ãŽã¾ã™" - -#~ msgid "cannot open %s" -#~ msgstr "%s ã‚’é–‹ã‘ã¾ã›ã‚“" - -#~ msgid "cannot guess the root device. Specify the option `--root-device'" -#~ msgstr "" -#~ "ルートデãƒã‚¤ã‚¹ã‚’推測ã§ãã¾ã›ã‚“。`--root-device' ã‚ªãƒ—ã‚·ãƒ§ãƒ³ã§æŒ‡å®šã—ã¦ãã ã•" -#~ "ã„" diff --git a/thirdparty/grub-2.04/po/ko.gmo b/thirdparty/grub-2.04/po/ko.gmo deleted file mode 100644 index c31b808b6dfbd380ae1c2f2b8f9621a456b8b1d2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 19698 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 OHLGezUF=!PA^#IQE_bc~ diff --git a/thirdparty/grub-2.04/po/ko.po b/thirdparty/grub-2.04/po/ko.po deleted file mode 100644 index 523f36a78..000000000 --- a/thirdparty/grub-2.04/po/ko.po +++ /dev/null @@ -1,6824 +0,0 @@ -# GRUBì˜ í•œêµ­ì–´ 번역. -# Copyright (C) 2009, 2010 Free Software Foundation, Inc. -# This file is distributed under the same license as the grub package. -# -# Exported from Launchpad (2010-10-16 22:52+0000), Ubuntu Korean-team -# : -# -# Kang Bundo , 2010. -# Para, 2010 -# -# Revised: -# -# Changwoo Ryu , 2010. -# -msgid "" -msgstr "" -"Project-Id-Version: grub 1.97+20100124\n" -"Report-Msgid-Bugs-To: bug-grub@gnu.org\n" -"POT-Creation-Date: 2019-07-04 16:09+0200\n" -"PO-Revision-Date: 2010-10-24 23:37+0900\n" -"Last-Translator: Changwoo Ryu \n" -"Language-Team: Korean \n" -"Language: ko\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Bugs: Report translation errors to the Language-Team address.\n" - -#: grub-core/bus/usb/serial/ftdi.c:145 grub-core/bus/usb/serial/pl2303.c:158 -#: grub-core/term/ieee1275/escc.c:169 grub-core/term/ns8250.c:202 -#, fuzzy -msgid "unsupported serial port speed" -msgstr "시리얼 í¬íЏ ì†ë„를 정합니다." - -#: grub-core/bus/usb/serial/ftdi.c:151 grub-core/bus/usb/serial/pl2303.c:164 -#: grub-core/term/efi/serial.c:116 grub-core/term/ieee1275/escc.c:175 -#: grub-core/term/ns8250.c:208 grub-core/term/serial.c:227 -#: grub-core/term/serial.c:243 -#, fuzzy -msgid "unsupported serial port parity" -msgstr "시리얼 í¬íЏ 패리티를 정합니다." - -#: grub-core/bus/usb/serial/ftdi.c:157 grub-core/bus/usb/serial/pl2303.c:170 -#: grub-core/term/efi/serial.c:122 grub-core/term/ieee1275/escc.c:181 -#: grub-core/term/ns8250.c:213 grub-core/term/serial.c:267 -#, fuzzy -msgid "unsupported serial port stop bits number" -msgstr "시리얼 í¬íЏ 스톱 비트를 정합니다." - -#: grub-core/bus/usb/serial/ftdi.c:161 grub-core/bus/usb/serial/pl2303.c:174 -#: grub-core/term/efi/serial.c:126 grub-core/term/ieee1275/escc.c:185 -#: grub-core/term/ns8250.c:217 -#, fuzzy -msgid "unsupported serial port word length" -msgstr "시리얼 í¬íЏ 워드 길ì´ë¥¼ 정합니다." - -#: grub-core/commands/acpi.c:42 -msgid "Don't load host tables specified by comma-separated list." -msgstr "쉼표(,)로 구분한 호스트 í…Œì´ë¸”ì„ ì½ì–´ë“¤ì´ì§€ 않습니다." - -#: grub-core/commands/acpi.c:45 -msgid "Load only tables specified by comma-separated list." -msgstr "쉼표(,)로 구분한 í…Œì´ë¸”ì„ ì½ì–´ë“¤ìž…니다." - -#: grub-core/commands/acpi.c:46 -msgid "Export version 1 tables to the OS." -msgstr "" - -#: grub-core/commands/acpi.c:47 -#, fuzzy -msgid "Export version 2 and version 3 tables to the OS." -msgstr "v2와 v3 í…Œì´ë¸”ì„ ë³´ì—¬ì¤ë‹ˆë‹¤." - -#: grub-core/commands/acpi.c:48 -msgid "Set OEMID of RSDP, XSDT and RSDT." -msgstr "RSDP와 XSDT, RSDTì˜ OEMID를 설정합니다." - -#: grub-core/commands/acpi.c:50 -msgid "Set OEMTABLE ID of RSDP, XSDT and RSDT." -msgstr "RSDP와 XSDT, RSDTì˜ OEMTABLE ID를 설정합니다." - -#: grub-core/commands/acpi.c:52 -msgid "Set OEMTABLE revision of RSDP, XSDT and RSDT." -msgstr "RSDP와 XSDT, RSDTì˜ OEMTABLE 수정 ì‚¬í•­ì„ ì„¤ì •í•©ë‹ˆë‹¤." - -#: grub-core/commands/acpi.c:54 -msgid "Set creator field of RSDP, XSDT and RSDT." -msgstr "RSDP와 XSDT, RSDTì˜ ìƒì„±ìž 필드를 설정합니다." - -#: grub-core/commands/acpi.c:56 -msgid "Set creator revision of RSDP, XSDT and RSDT." -msgstr "RSDP와 XSDT, RSDTì˜ ìƒì„±ìž 수정 ì‚¬í•­ì„ ì„¤ì •í•©ë‹ˆë‹¤." - -#. TRANSLATORS: "hangs" here is a noun, not a verb. -#: grub-core/commands/acpi.c:58 -#, fuzzy -msgid "" -"Don't update EBDA. May fix failures or hangs on some BIOSes but makes it " -"ineffective with OS not receiving RSDP from GRUB." -msgstr "" -"EBDA를 ì—…ë°ì´íЏ 하지 않습니다. 장애를 수리하거나 ì–´ë–¤ ê²ƒì€ ë©ˆì¶œìˆ˜ë„ ìžˆìŠµë‹ˆ" -"다. BIOS는 OSê°€ GRUBì—서 RSDP를 못 받게하여 ì´ê²ƒì„ 무력화합니다." - -#: grub-core/commands/acpi.c:650 grub-core/commands/acpi.c:667 -#: grub-core/commands/i386/pc/play.c:105 grub-core/commands/keylayouts.c:230 -#: grub-core/commands/keylayouts.c:245 grub-core/commands/keylayouts.c:263 -#: grub-core/commands/verifiers.c:156 grub-core/efiemu/loadcore.c:350 -#: grub-core/kern/elf.c:117 grub-core/kern/elfXX.c:29 -#: grub-core/kern/elfXX.c:156 grub-core/loader/arm/linux.c:319 -#: grub-core/loader/arm64/linux.c:330 grub-core/loader/arm64/xen_boot.c:356 -#: grub-core/loader/efi/chainloader.c:276 -#: grub-core/loader/efi/chainloader.c:297 -#: grub-core/loader/efi/chainloader.c:329 grub-core/loader/efi/fdt.c:138 -#: grub-core/loader/i386/bsd.c:1276 grub-core/loader/i386/bsd.c:2116 -#: grub-core/loader/i386/bsdXX.c:20 grub-core/loader/i386/bsdXX.c:36 -#: grub-core/loader/i386/bsdXX.c:63 grub-core/loader/i386/bsdXX.c:357 -#: grub-core/loader/i386/bsdXX.c:376 grub-core/loader/i386/bsdXX.c:519 -#: grub-core/loader/i386/bsdXX.c:535 grub-core/loader/i386/bsdXX.c:615 -#: grub-core/loader/i386/bsdXX.c:638 -#: grub-core/loader/i386/coreboot/chainloader.c:112 -#: grub-core/loader/i386/coreboot/chainloader.c:148 -#: grub-core/loader/i386/coreboot/chainloader.c:170 -#: grub-core/loader/i386/linux.c:667 grub-core/loader/i386/linux.c:788 -#: grub-core/loader/i386/linux.c:1005 grub-core/loader/i386/multiboot_mbi.c:171 -#: grub-core/loader/i386/pc/chainloader.c:202 -#: grub-core/loader/i386/pc/linux.c:149 grub-core/loader/i386/pc/linux.c:320 -#: grub-core/loader/i386/pc/linux.c:362 grub-core/loader/i386/pc/plan9.c:457 -#: grub-core/loader/i386/pc/plan9.c:550 grub-core/loader/i386/pc/plan9.c:566 -#: grub-core/loader/i386/xen.c:934 grub-core/loader/i386/xen_file.c:72 -#: grub-core/loader/i386/xen_fileXX.c:43 grub-core/loader/i386/xen_fileXX.c:186 -#: grub-core/loader/i386/xen_fileXX.c:339 grub-core/loader/ia64/efi/linux.c:423 -#: grub-core/loader/ia64/efi/linux.c:471 grub-core/loader/linux.c:286 -#: grub-core/loader/macho.c:84 grub-core/loader/macho.c:109 -#: grub-core/loader/machoXX.c:33 grub-core/loader/machoXX.c:46 -#: grub-core/loader/machoXX.c:76 grub-core/loader/machoXX.c:116 -#: grub-core/loader/machoXX.c:131 grub-core/loader/machoXX.c:147 -#: grub-core/loader/machoXX.c:196 grub-core/loader/machoXX.c:317 -#: grub-core/loader/multiboot.c:434 grub-core/loader/multiboot_elfxx.c:171 -#: grub-core/loader/multiboot_elfxx.c:234 -#: grub-core/loader/multiboot_elfxx.c:278 grub-core/loader/multiboot_mbi2.c:129 -#: grub-core/loader/xnu.c:737 grub-core/loader/xnu.c:795 -#: grub-core/loader/xnu.c:816 grub-core/loader/xnu.c:871 -#: grub-core/loader/xnu.c:914 grub-core/loader/xnu.c:952 -#: grub-core/loader/xnu_resume.c:68 grub-core/loader/xnu_resume.c:153 -#: grub-core/loader/xnu_resume.c:165 util/grub-mkimagexx.c:2288 -#, c-format -msgid "premature end of file %s" -msgstr "" - -#: grub-core/commands/acpi.c:779 -#, fuzzy -msgid "" -"[-1|-2] [--exclude=TABLE1,TABLE2|--load-only=TABLE1,TABLE2] FILE1 [FILE2] " -"[...]" -msgstr "" -"[-1|-2] [--exclude=<í…Œì´ë¸”1>,<í…Œì´ë¸”2>|--load-only=<í…Œì´ë¸”1>,<í…Œì´ë¸”2>] <파ì¼" -"1> [<파ì¼2>] [...]" - -#: grub-core/commands/acpi.c:782 -msgid "Load host ACPI tables and tables specified by arguments." -msgstr "호스트 ACPI í…Œì´ë¸”ê³¼ ì¸ìžë¡œ 주어진 í…Œì´ë¸”ì„ ì½ì–´ë“¤ìž…니다." - -#: grub-core/commands/acpihalt.c:368 grub-core/kern/err.c:110 -#, c-format -msgid "error: %s.\n" -msgstr "" - -#: grub-core/commands/acpihalt.c:368 grub-core/kern/emu/misc.c:95 -#: grub-core/kern/emu/misc.c:105 grub-core/kern/emu/misc.c:134 -#: grub-core/kern/emu/mm.c:34 grub-core/kern/emu/mm.c:62 -#: grub-core/kern/mm.c:374 grub-core/lib/relocator.c:1282 -#: grub-core/lib/relocator.c:1439 grub-core/lib/relocator.c:1538 -#: grub-core/loader/arm/linux.c:259 grub-core/loader/arm64/linux.c:265 -#: grub-core/loader/arm64/linux.c:321 grub-core/loader/arm64/linux.c:340 -#: grub-core/loader/arm64/xen_boot.c:344 grub-core/loader/arm64/xen_boot.c:367 -#: grub-core/loader/efi/chainloader.c:289 grub-core/osdep/unix/dl.c:48 -#: grub-core/osdep/windows/dl.c:46 grub-core/script/lexer.c:156 -#: grub-core/script/lexer.c:182 -#, fuzzy -msgid "out of memory" -msgstr "메모리를 ë¤í”„합니다." - -#: grub-core/commands/acpihalt.c:374 grub-core/disk/cryptodisk.c:587 -#: grub-core/disk/cryptodisk.c:632 grub-core/kern/emu/hostdisk.c:307 -#: grub-core/kern/emu/hostfs.c:149 grub-core/kern/emu/misc.c:200 -#: grub-core/osdep/linux/ofpath.c:195 grub-core/osdep/linux/ofpath.c:521 -#: grub-core/osdep/linux/ofpath.c:534 util/glue-efi.c:80 util/glue-efi.c:94 -#: util/grub-editenv.c:155 util/grub-fstest.c:577 -#: util/grub-install-common.c:943 util/grub-mkrescue.c:634 -#: util/grub-mkrescue.c:888 util/grub-mount.c:506 util/grub-render-label.c:176 -#: util/misc.c:95 util/setup.c:814 util/setup.c:833 -#, fuzzy, c-format -msgid "cannot read `%s': %s" -msgstr "올바르게 `%s'ì„(를) ì½ì„ 수 없습니다" - -#. TRANSLATORS: It's computer shutdown using ACPI, not disabling ACPI. -#: grub-core/commands/acpihalt.c:452 -msgid "ACPI shutdown failed" -msgstr "" - -#: grub-core/commands/arc/lsdev.c:51 -#, fuzzy -msgid "List devices." -msgstr "PCI 장치를 열거합니다." - -#: grub-core/commands/blocklist.c:122 grub-core/commands/cat.c:57 -#: grub-core/commands/configfile.c:35 grub-core/commands/efi/loadbios.c:168 -#: grub-core/commands/file.c:159 grub-core/commands/hexdump.c:47 -#: grub-core/commands/legacycfg.c:209 grub-core/commands/legacycfg.c:315 -#: grub-core/commands/minicmd.c:44 grub-core/commands/syslinuxcfg.c:146 -#: grub-core/commands/testload.c:58 grub-core/commands/testspeed.c:52 -#: grub-core/disk/loopback.c:93 grub-core/efiemu/main.c:293 -#: grub-core/font/font_cmd.c:32 grub-core/kern/emu/hostdisk.c:519 -#: grub-core/loader/arm/linux.c:364 grub-core/loader/arm/linux.c:409 -#: grub-core/loader/arm/linux.c:472 grub-core/loader/arm64/linux.c:243 -#: grub-core/loader/arm64/linux.c:297 grub-core/loader/arm64/xen_boot.c:398 -#: grub-core/loader/arm64/xen_boot.c:411 grub-core/loader/arm64/xen_boot.c:462 -#: grub-core/loader/efi/chainloader.c:216 grub-core/loader/i386/bsd.c:1462 -#: grub-core/loader/i386/bsd.c:1807 grub-core/loader/i386/bsd.c:2085 -#: grub-core/loader/i386/coreboot/chainloader.c:438 -#: grub-core/loader/i386/linux.c:656 grub-core/loader/i386/linux.c:1041 -#: grub-core/loader/i386/pc/chainloader.c:290 -#: grub-core/loader/i386/pc/freedos.c:105 grub-core/loader/i386/pc/linux.c:138 -#: grub-core/loader/i386/pc/linux.c:400 grub-core/loader/i386/pc/ntldr.c:85 -#: grub-core/loader/i386/pc/plan9.c:409 -#: grub-core/loader/i386/pc/pxechainloader.c:94 -#: grub-core/loader/i386/pc/truecrypt.c:96 grub-core/loader/i386/xen.c:641 -#: grub-core/loader/i386/xen.c:768 grub-core/loader/i386/xen.c:844 -#: grub-core/loader/i386/xen.c:854 grub-core/loader/i386/xnu.c:488 -#: grub-core/loader/ia64/efi/linux.c:459 grub-core/loader/ia64/efi/linux.c:539 -#: grub-core/loader/mips/linux.c:238 grub-core/loader/mips/linux.c:429 -#: grub-core/loader/multiboot.c:322 grub-core/loader/multiboot.c:374 -#: grub-core/loader/multiboot.c:384 -#: grub-core/loader/powerpc/ieee1275/linux.c:269 -#: grub-core/loader/powerpc/ieee1275/linux.c:341 -#: grub-core/loader/sparc64/ieee1275/linux.c:305 -#: grub-core/loader/sparc64/ieee1275/linux.c:381 grub-core/loader/xnu.c:351 -#: grub-core/loader/xnu.c:460 grub-core/loader/xnu.c:778 -#: grub-core/loader/xnu.c:892 grub-core/loader/xnu.c:1277 -#: grub-core/loader/xnu.c:1427 grub-core/loader/xnu.c:1453 -#: grub-core/video/readers/jpeg.c:812 grub-core/video/readers/png.c:1123 -msgid "filename expected" -msgstr "" - -#. TRANSLATORS: "embed" is a verb (command description). " -#: grub-core/commands/blocklist.c:154 grub-core/commands/cat.c:163 -#: grub-core/commands/configfile.c:65 grub-core/commands/configfile.c:68 -#: grub-core/commands/configfile.c:74 grub-core/commands/configfile.c:80 -#: grub-core/commands/configfile.c:86 grub-core/commands/hashsum.c:34 -#: grub-core/commands/legacycfg.c:834 grub-core/commands/legacycfg.c:841 -#: grub-core/commands/legacycfg.c:846 grub-core/commands/legacycfg.c:851 -#: grub-core/commands/macbless.c:222 grub-core/commands/minicmd.c:198 -#: grub-core/commands/syslinuxcfg.c:186 grub-core/commands/syslinuxcfg.c:194 -#: grub-core/commands/syslinuxcfg.c:200 grub-core/commands/syslinuxcfg.c:206 -#: grub-core/commands/testload.c:163 grub-core/efiemu/main.c:312 -#: grub-core/kern/emu/main.c:100 grub-core/kern/emu/main.c:103 -#: grub-core/loader/i386/bsd.c:2137 grub-core/loader/i386/bsd.c:2140 -#: grub-core/loader/i386/bsd.c:2143 -#: grub-core/loader/i386/coreboot/chainloader.c:505 -#: grub-core/loader/ia64/efi/linux.c:594 include/grub/util/install.h:32 -#: include/grub/util/install.h:64 util/grub-glue-efi.c:52 -#: util/grub-glue-efi.c:54 util/grub-glue-efi.c:56 util/grub-install.c:254 -#: util/grub-install.c:301 util/grub-mkfont.c:936 util/grub-mkimage.c:68 -#: util/grub-mkimage.c:74 util/grub-mkimage.c:76 util/grub-mkimage.c:78 -#: util/grub-mkimage.c:81 util/grub-mklayout.c:52 util/grub-mklayout.c:54 -#: util/grub-mkrescue.c:97 util/grub-mkrescue.c:101 util/grub-mkrescue.c:104 -#: util/grub-mkrescue.c:105 util/grub-mkrescue.c:106 -#: util/grub-mkstandalone.c:47 util/grub-mkstandalone.c:49 -#: util/grub-probe.c:732 util/grub-render-label.c:59 -#: util/grub-render-label.c:70 util/grub-render-label.c:72 util/grub-setup.c:78 -#: util/grub-setup.c:80 util/grub-setup.c:84 util/grub-syslinux2cfg.c:74 -#: util/grub-syslinux2cfg.c:147 -msgid "FILE" -msgstr "<파ì¼>" - -#: grub-core/commands/blocklist.c:154 -msgid "Print a block list." -msgstr "블럭 목ë¡ì„ 출력합니다." - -#: grub-core/commands/boot.c:147 grub-core/commands/legacycfg.c:533 -#: grub-core/commands/legacycfg.c:574 grub-core/loader/arm64/linux.c:250 -#: grub-core/loader/i386/bsd.c:1799 grub-core/loader/i386/bsd.c:1900 -#: grub-core/loader/i386/bsd.c:2007 grub-core/loader/i386/bsd.c:2040 -#: grub-core/loader/i386/bsd.c:2089 grub-core/loader/i386/linux.c:1047 -#: grub-core/loader/i386/pc/linux.c:406 grub-core/loader/i386/xen.c:775 -#: grub-core/loader/i386/xen.c:859 grub-core/loader/ia64/efi/linux.c:545 -#: grub-core/loader/mips/linux.c:432 grub-core/loader/multiboot.c:388 -#: grub-core/loader/powerpc/ieee1275/linux.c:347 -#: grub-core/loader/sparc64/ieee1275/linux.c:387 grub-core/loader/xnu.c:572 -#: grub-core/loader/xnu.c:665 grub-core/loader/xnu.c:781 -#: grub-core/loader/xnu.c:895 grub-core/loader/xnu.c:1091 -#: grub-core/loader/xnu.c:1258 grub-core/loader/xnu.c:1289 -#: grub-core/loader/xnu.c:1430 -msgid "you need to load the kernel first" -msgstr "" - -#: grub-core/commands/boot.c:189 -msgid "Boot an operating system." -msgstr "ìš´ì˜ ì²´ì œë¥¼ 부팅합니다." - -#: grub-core/commands/boottime.c:36 -#: grub-core/commands/i386/coreboot/cb_timestamps.c:108 -msgid "No boot time statistics is available\n" -msgstr "" - -#: grub-core/commands/boottime.c:59 -msgid "Show boot time statistics." -msgstr "" - -#: grub-core/commands/cacheinfo.c:40 -#, c-format -msgid "Disk cache statistics: hits = %lu (%lu.%02lu%%), misses = %lu\n" -msgstr "" - -#: grub-core/commands/cacheinfo.c:45 -msgid "No disk cache statistics available\n" -msgstr "" - -#: grub-core/commands/cacheinfo.c:56 -#, fuzzy -msgid "Get disk cache info." -msgstr "장치 정보를 검색합니다." - -#: grub-core/commands/cat.c:33 -msgid "Accept DOS-style CR/NL line endings." -msgstr "" - -#: grub-core/commands/cat.c:163 grub-core/commands/minicmd.c:198 -msgid "Show the contents of a file." -msgstr "파ì¼ì˜ ë‚´ìš©ì„ í‘œì‹œí•©ë‹ˆë‹¤." - -#: grub-core/commands/cmp.c:43 grub-core/commands/i386/pc/drivemap.c:239 -#: grub-core/commands/i386/wrmsr.c:60 grub-core/commands/iorw.c:85 -#: grub-core/commands/memrw.c:84 grub-core/commands/password.c:75 -#: grub-core/commands/password_pbkdf2.c:94 grub-core/commands/pgp.c:826 -#: grub-core/commands/regexp.c:113 grub-core/mmap/mmap.c:517 -#: grub-core/net/dns.c:639 -msgid "two arguments expected" -msgstr "" - -#: grub-core/commands/cmp.c:45 -#, c-format -msgid "Compare file `%s' with `%s':\n" -msgstr "" - -#: grub-core/commands/cmp.c:54 -#, c-format -msgid "Files differ in size: %llu [%s], %llu [%s]\n" -msgstr "" - -#: grub-core/commands/cmp.c:81 -#, c-format -msgid "Files differ at the offset %llu: 0x%x [%s], 0x%x [%s]\n" -msgstr "" - -#. TRANSLATORS: it's always exactly 2 files. -#: grub-core/commands/cmp.c:93 -msgid "The files are identical.\n" -msgstr "" - -#: grub-core/commands/cmp.c:113 -msgid "FILE1 FILE2" -msgstr "<파ì¼1> <파ì¼2>" - -#: grub-core/commands/cmp.c:113 -msgid "Compare two files." -msgstr "ë‘ê°œì˜ íŒŒì¼ì„ 비êµí•©ë‹ˆë‹¤." - -#: grub-core/commands/configfile.c:65 -msgid "Load another config file." -msgstr "다른 설정파ì¼ì„ ì½ì–´ë“¤ìž…니다." - -#: grub-core/commands/configfile.c:69 grub-core/commands/configfile.c:87 -msgid "Load another config file without changing context." -msgstr "ë¬¸ë§¥ì˜ ë³€í™˜ì—†ì´ ë‹¤ë¥¸ 설정 파ì¼ì„ ì½ì–´ë“¤ìž…니다." - -#: grub-core/commands/configfile.c:75 -#, fuzzy -msgid "" -"Load another config file without changing context but take only menu entries." -msgstr "ë¬¸ë§¥ì˜ ë³€í™˜ì—†ì´ ë‹¤ë¥¸ 설정 파ì¼ì„ ì½ì–´ë“¤ìž…니다." - -#: grub-core/commands/configfile.c:81 -#, fuzzy -msgid "Load another config file but take only menu entries." -msgstr "ë¬¸ë§¥ì˜ ë³€í™˜ì—†ì´ ë‹¤ë¥¸ 설정 파ì¼ì„ ì½ì–´ë“¤ìž…니다." - -#: grub-core/commands/date.c:141 -msgid "[[year-]month-day] [hour:minute[:second]]" -msgstr "[[ë…„-]ì›”-ì¼] [시:ë¶„[:ì´ˆ]]" - -#: grub-core/commands/date.c:142 -#, fuzzy -msgid "Display/set current datetime." -msgstr "현재 ì¼ì‹œë¥¼ 표시/설정하는 명령." - -#: grub-core/commands/echo.c:30 -msgid "Do not output the trailing newline." -msgstr "쓸모없는 새 í–‰ì„ ì¶œë ¥í•˜ì§€ 않습니다." - -#: grub-core/commands/echo.c:31 -msgid "Enable interpretation of backslash escapes." -msgstr "역슬래쉬 ì´ìŠ¤ì¼€ìž…ë¬¸ìžì˜ í•´ì„ì„ ê°€ëŠ¥ì¼€í•©ë‹ˆë‹¤." - -#: grub-core/commands/echo.c:134 -msgid "[-e|-n] STRING" -msgstr "[-e|-n] 문ìžì—´" - -#: grub-core/commands/echo.c:134 -msgid "Display a line of text." -msgstr "í…ìŠ¤íŠ¸ì˜ ì¤„ì„ í‘œì‹œí•©ë‹ˆë‹¤." - -#: grub-core/commands/efi/efifwsetup.c:82 -msgid "Reboot into firmware setup menu." -msgstr "" - -#: grub-core/commands/efi/fixvideo.c:107 -msgid "Fix video problem." -msgstr "비디오 문제를 수정합니다." - -#: grub-core/commands/efi/loadbios.c:52 -msgid "ROM image is present." -msgstr "" - -#: grub-core/commands/efi/loadbios.c:70 -msgid "Can't enable ROM area." -msgstr "" - -#: grub-core/commands/efi/loadbios.c:209 -msgid "" -"Create BIOS-like structures for backward compatibility with existing OS." -msgstr "" - -#: grub-core/commands/efi/loadbios.c:214 -msgid "BIOS_DUMP [INT10_DUMP]" -msgstr "" - -#: grub-core/commands/efi/loadbios.c:215 -msgid "Load BIOS dump." -msgstr "ë°”ì´ì˜¤ìФ ë¤í”„를 ì½ì–´ë“¤ìž…니다." - -#: grub-core/commands/efi/shim_lock.c:76 -#, c-format -msgid "module cannot be loaded in UEFI secure boot mode: %s" -msgstr "" - -#: grub-core/commands/efi/shim_lock.c:98 -#, c-format -msgid "cannot boot due to dangerous module in memory: %s" -msgstr "" - -#: grub-core/commands/efi/shim_lock.c:116 -msgid "bad shim signature" -msgstr "" - -#: grub-core/commands/efi/tpm.c:149 grub-core/commands/efi/tpm.c:189 -#: grub-core/commands/efi/tpm.c:256 grub-core/commands/efi/tpm.c:306 -msgid "Command failed" -msgstr "" - -#: grub-core/commands/efi/tpm.c:151 grub-core/commands/efi/tpm.c:191 -#: grub-core/commands/efi/tpm.c:258 grub-core/commands/efi/tpm.c:308 -msgid "Invalid parameter" -msgstr "" - -#: grub-core/commands/efi/tpm.c:154 grub-core/commands/efi/tpm.c:194 -#: grub-core/commands/efi/tpm.c:261 grub-core/commands/efi/tpm.c:311 -msgid "Output buffer too small" -msgstr "" - -#: grub-core/commands/efi/tpm.c:156 grub-core/commands/efi/tpm.c:196 -#: grub-core/commands/efi/tpm.c:263 grub-core/commands/efi/tpm.c:313 -msgid "TPM unavailable" -msgstr "" - -#: grub-core/commands/efi/tpm.c:158 grub-core/commands/efi/tpm.c:198 -#: grub-core/commands/efi/tpm.c:265 grub-core/commands/efi/tpm.c:315 -msgid "Unknown TPM error" -msgstr "" - -#: grub-core/commands/efi/tpm.c:240 grub-core/commands/efi/tpm.c:288 -msgid "cannot allocate TPM event buffer" -msgstr "" - -#: grub-core/commands/eval.c:63 -#, fuzzy -msgid "STRING ..." -msgstr "[패턴 ...]" - -#: grub-core/commands/eval.c:64 -msgid "Evaluate arguments as GRUB commands" -msgstr "" - -#: grub-core/commands/file.c:41 -msgid "Check if FILE can be booted as i386 PAE Xen unprivileged guest kernel" -msgstr "" - -#: grub-core/commands/file.c:44 -msgid "Check if FILE can be booted as x86_64 Xen unprivileged guest kernel" -msgstr "" - -#: grub-core/commands/file.c:46 -msgid "Check if FILE can be used as Xen x86 privileged guest kernel" -msgstr "" - -#: grub-core/commands/file.c:48 -#, fuzzy -msgid "Check if FILE can be used as x86 multiboot kernel" -msgstr "multiboot 커ë„ì„ ì½ì–´ë“¤ìž…니다." - -#: grub-core/commands/file.c:50 -#, fuzzy -msgid "Check if FILE can be used as x86 multiboot2 kernel" -msgstr "multiboot 2 커ë„ì„ ì½ì–´ë“¤ìž…니다." - -#: grub-core/commands/file.c:52 -msgid "Check if FILE is ARM Linux" -msgstr "" - -#: grub-core/commands/file.c:54 -msgid "Check if FILE is ARM64 Linux" -msgstr "" - -#: grub-core/commands/file.c:56 -msgid "Check if FILE is IA64 Linux" -msgstr "" - -#: grub-core/commands/file.c:58 -msgid "Check if FILE is MIPS Linux" -msgstr "" - -#: grub-core/commands/file.c:60 -msgid "Check if FILE is MIPSEL Linux" -msgstr "" - -#: grub-core/commands/file.c:62 -msgid "Check if FILE is SPARC64 Linux" -msgstr "" - -#: grub-core/commands/file.c:64 -msgid "Check if FILE is POWERPC Linux" -msgstr "" - -#: grub-core/commands/file.c:66 -msgid "Check if FILE is x86 Linux" -msgstr "" - -#: grub-core/commands/file.c:68 -msgid "Check if FILE is x86 Linux supporting 32-bit protocol" -msgstr "" - -#: grub-core/commands/file.c:70 -msgid "Check if FILE is x86 kFreeBSD" -msgstr "" - -#: grub-core/commands/file.c:72 -msgid "Check if FILE is i386 kFreeBSD" -msgstr "" - -#: grub-core/commands/file.c:74 -msgid "Check if FILE is x86_64 kFreeBSD" -msgstr "" - -#: grub-core/commands/file.c:77 -msgid "Check if FILE is x86 kNetBSD" -msgstr "" - -#: grub-core/commands/file.c:79 -msgid "Check if FILE is i386 kNetBSD" -msgstr "" - -#: grub-core/commands/file.c:81 -msgid "Check if FILE is x86_64 kNetBSD" -msgstr "" - -#: grub-core/commands/file.c:84 -msgid "Check if FILE is i386 EFI file" -msgstr "" - -#: grub-core/commands/file.c:86 -msgid "Check if FILE is x86_64 EFI file" -msgstr "" - -#: grub-core/commands/file.c:88 -msgid "Check if FILE is IA64 EFI file" -msgstr "" - -#: grub-core/commands/file.c:90 -msgid "Check if FILE is ARM64 EFI file" -msgstr "" - -#: grub-core/commands/file.c:92 -msgid "Check if FILE is ARM EFI file" -msgstr "" - -#: grub-core/commands/file.c:94 -msgid "Check if FILE is RISC-V 32bit EFI file" -msgstr "" - -#: grub-core/commands/file.c:96 -msgid "Check if FILE is RISC-V 64bit EFI file" -msgstr "" - -#: grub-core/commands/file.c:98 -msgid "Check if FILE is hiberfil.sys in hibernated state" -msgstr "" - -#: grub-core/commands/file.c:100 -msgid "Check if FILE is x86_64 XNU (Mac OS X kernel)" -msgstr "" - -#: grub-core/commands/file.c:102 -msgid "Check if FILE is i386 XNU (Mac OS X kernel)" -msgstr "" - -#: grub-core/commands/file.c:104 -msgid "Check if FILE is XNU (Mac OS X kernel) hibernated image" -msgstr "" - -#: grub-core/commands/file.c:106 -msgid "Check if FILE is BIOS bootsector" -msgstr "" - -#. TRANSLATORS: it's a standalone boolean value, -#. opposite of "true". -#: grub-core/commands/file.c:675 grub-core/commands/i386/cmostest.c:63 -#: grub-core/commands/i386/cpuid.c:71 grub-core/commands/keystatus.c:83 -#: grub-core/commands/keystatus.c:87 grub-core/commands/keystatus.c:96 -#: grub-core/commands/test.c:436 grub-core/commands/true.c:39 -#: grub-core/script/execute.c:247 grub-core/script/execute.c:1039 -msgid "false" -msgstr "" - -#: grub-core/commands/file.c:684 -#, fuzzy -msgid "OPTIONS FILE" -msgstr "[옵션] 디스í¬" - -#: grub-core/commands/file.c:685 -msgid "Check if FILE is of specified type." -msgstr "" - -#. TRANSLATORS: It means that the specified partition e.g. -#. hd0,msdos1=/dev/sda1 doesn't exist. -#: grub-core/commands/gptsync.c:140 grub-core/kern/disk.c:258 -#, fuzzy -msgid "no such partition" -msgstr "ë„스 ë°©ì‹ì˜ íŒŒí‹°ì…˜ì´ ë°œê²¬ë˜ì§€ 않았습니다." - -#: grub-core/commands/gptsync.c:240 -#, c-format -msgid "New MBR is written to `%s'\n" -msgstr "" - -#: grub-core/commands/gptsync.c:252 -msgid "DEVICE [PARTITION[+/-[TYPE]]] ..." -msgstr "<장치> [<파티션>[+/-[<유형>]]] ..." - -#. TRANSLATORS: MBR type is one-byte partition -#. type id. -#: grub-core/commands/gptsync.c:255 -#, fuzzy -msgid "" -"Fill hybrid MBR of GPT drive DEVICE. Specified partitions will be a part of " -"hybrid MBR. Up to 3 partitions are allowed. TYPE is an MBR type. + means " -"that partition is active. Only one partition can be active." -msgstr "" -"GPT 드ë¼ì´ë¸Œ ìž¥ì¹˜ì˜ í•˜ì´ë¸Œë¦¬ë“œ MBRì„ ì±„ìš°ì‹œì˜¤. 특정한 íŒŒí‹°ì…˜ì€ í•˜ì´ë¸Œë¦¬ë“œ MBR" -"ì˜ ì¼ë¶€ê°€ ë  ê²ƒìž…ë‹ˆë‹¤. 3ê°œì˜ íŒŒí‹°ì…˜ê¹Œì§€ 허용ë˜ë‹ˆë‹¤. TYPEì€ MBR 형ì‹ìž…니다. " -"+는 íŒŒí‹°ì…˜ì´ í™œì„±í™”ë˜ì—ˆë‹¤ëŠ” ê²ƒì„ ì˜ë¯¸í•©ë‹ˆë‹¤. 한 ê°œì˜ íŒŒí‹°ì…˜ë§Œì„ í™œì„±í™”í•  수 " -"있습니다." - -#: grub-core/commands/halt.c:40 -msgid "" -"Halts the computer. This command does not work on all firmware " -"implementations." -msgstr "" -"컴퓨터를 정지시킵니다. ì´ ëª…ë ¹ì€ êµ¬í˜„ëœ ëª¨ë“  펌웨어 ìƒì—서 ìž‘ë™í•˜ì§€ 않습니다." - -#: grub-core/commands/hashsum.c:32 -msgid "Specify hash to use." -msgstr "" - -#: grub-core/commands/hashsum.c:32 -msgid "HASH" -msgstr "" - -#: grub-core/commands/hashsum.c:33 -msgid "Check hashes of files with hash list FILE." -msgstr "" - -#: grub-core/commands/hashsum.c:35 -msgid "Base directory for hash list." -msgstr "" - -#. TRANSLATORS: platform here isn't identifier. It can be translated. -#: grub-core/commands/hashsum.c:35 grub-core/commands/ls.c:150 -#: grub-core/commands/macbless.c:226 grub-core/commands/syslinuxcfg.c:51 -#: grub-core/commands/syslinuxcfg.c:54 grub-core/kern/emu/main.c:106 -#: include/grub/util/install.h:50 include/grub/util/install.h:53 -#: include/grub/util/install.h:56 include/grub/util/install.h:59 -#: util/grub-install.c:250 util/grub-install.c:252 util/grub-install.c:297 -#: util/grub-install.c:299 util/grub-mkimage.c:64 util/grub-mkimage.c:67 -#: util/grub-mknetdir.c:46 util/grub-mknetdir.c:48 util/grub-mkrescue.c:99 -#: util/grub-setup.c:82 util/grub-syslinux2cfg.c:63 util/grub-syslinux2cfg.c:65 -#: util/grub-syslinux2cfg.c:67 util/grub-syslinux2cfg.c:71 -msgid "DIR" -msgstr "" - -#: grub-core/commands/hashsum.c:37 -msgid "Don't stop after first error." -msgstr "" - -#: grub-core/commands/hashsum.c:38 -msgid "Uncompress file before checksumming." -msgstr "" - -#: grub-core/commands/hashsum.c:163 -#, c-format -msgid "%s: READ ERROR\n" -msgstr "" - -#: grub-core/commands/hashsum.c:177 -#, c-format -msgid "%s: HASH MISMATCH\n" -msgstr "" - -#: grub-core/commands/hashsum.c:188 -#, c-format -msgid "%s: OK\n" -msgstr "" - -#: grub-core/commands/hashsum.c:282 -msgid "-h HASH [-c FILE [-p PREFIX]] [FILE1 [FILE2 ...]]" -msgstr "" - -#. TRANSLATORS: "hash checksum" is just to -#. be a bit more precise, you can treat it as -#. just "hash". -#: grub-core/commands/hashsum.c:287 grub-core/commands/hashsum.c:292 -#: grub-core/commands/hashsum.c:297 grub-core/commands/hashsum.c:302 -#: grub-core/commands/hashsum.c:307 grub-core/commands/hashsum.c:313 -msgid "Compute or check hash checksum." -msgstr "" - -#: grub-core/commands/hashsum.c:290 grub-core/commands/hashsum.c:295 -#: grub-core/commands/hashsum.c:300 grub-core/commands/hashsum.c:305 -#: grub-core/commands/hashsum.c:311 -msgid "[-c FILE [-p PREFIX]] [FILE1 [FILE2 ...]]" -msgstr "" - -#: grub-core/commands/hdparm.c:33 -msgid "" -"Set Advanced Power Management\n" -"(1=low, ..., 254=high, 255=off)." -msgstr "" -"고급 ì „ì›ê´€ë¦¬ 설정\n" -"(1=low, ..., 254=high, 255=off)." - -#: grub-core/commands/hdparm.c:36 -#, fuzzy -msgid "Display power mode." -msgstr "절전 모드를 확ì¸í•˜ì‹­ì‹œì˜¤." - -#: grub-core/commands/hdparm.c:37 -msgid "Freeze ATA security settings until reset." -msgstr "리셋하기 전까지 ATA 보안 ì„¤ì •ì„ ì •ì§€ì‹œí‚µë‹ˆë‹¤." - -#: grub-core/commands/hdparm.c:39 -#, fuzzy -msgid "Display SMART health status." -msgstr "SMART ê±´ê°• ìƒíƒœë¥¼ ì²´í¬í•©ë‹ˆë‹¤." - -#: grub-core/commands/hdparm.c:40 -msgid "" -"Set Automatic Acoustic Management\n" -"(0=off, 128=quiet, ..., 254=fast)." -msgstr "" -"ìžë™ ì†ŒìŒ ê´€ë¦¬ë¥¼ 설정합니다.\n" -"(0=ë”, 128=ì¡°ìš©, ..., 254=빠름)." - -#: grub-core/commands/hdparm.c:43 -msgid "" -"Set standby timeout\n" -"(0=off, 1=5s, 2=10s, ..., 240=20m, 241=30m, ...)." -msgstr "" -"대기시간 설정\n" -"(0=ë”, 1=5ì´ˆ, 2=10ì´ˆ, ..., 240=20ë¶„, 241=30ë¶„, ...)." - -#: grub-core/commands/hdparm.c:46 -msgid "Set drive to standby mode." -msgstr "드ë¼ì´ë¸Œë¥¼ 대기모드로 설정." - -#: grub-core/commands/hdparm.c:47 -msgid "Set drive to sleep mode." -msgstr "드ë¼ì´ë¸Œë¥¼ 수면모드로 설정." - -#: grub-core/commands/hdparm.c:48 -msgid "Print drive identity and settings." -msgstr "드ë¼ì´ë¸Œ ID와 ì„¤ì •ì„ ì¶œë ¥í•©ë‹ˆë‹¤." - -#: grub-core/commands/hdparm.c:50 -#, fuzzy -msgid "Show raw contents of ATA IDENTIFY sector." -msgstr "ATA IDENTIFY ì˜ì—­ì˜ ë‚´ìš©ì„ ë¤í”„합니다." - -#: grub-core/commands/hdparm.c:52 -msgid "Disable/enable SMART (0/1)." -msgstr "SMART를 해제하거나 활성화 합니다 (0/1)." - -#: grub-core/commands/hdparm.c:53 -msgid "Do not print messages." -msgstr "메시지를 출력하지 마십시오." - -#: grub-core/commands/hdparm.c:286 grub-core/commands/i386/rdmsr.c:68 -#: grub-core/commands/iorw.c:47 grub-core/commands/legacycfg.c:760 -#: grub-core/commands/legacycfg.c:812 grub-core/commands/macbless.c:190 -#: grub-core/commands/memrw.c:47 grub-core/commands/pgp.c:738 -#: grub-core/commands/pgp.c:792 grub-core/commands/search.c:304 -#: grub-core/commands/search_wrap.c:179 grub-core/commands/setpci.c:243 -#: grub-core/commands/sleep.c:71 grub-core/fs/zfs/zfsinfo.c:279 -#: grub-core/fs/zfs/zfsinfo.c:358 grub-core/gettext/gettext.c:492 -#: grub-core/kern/corecmd.c:65 grub-core/kern/corecmd.c:79 -#: grub-core/mmap/mmap.c:430 grub-core/net/dns.c:713 grub-core/net/dns.c:745 -#: grub-core/net/net.c:694 grub-core/net/net.c:1052 -#: grub-core/normal/context.c:194 grub-core/script/execute.c:131 -#: grub-core/term/gfxterm_background.c:136 -msgid "one argument expected" -msgstr "" - -#: grub-core/commands/hdparm.c:440 -msgid "[OPTIONS] DISK" -msgstr "[옵션] 디스í¬" - -#: grub-core/commands/hdparm.c:441 -msgid "Get/set ATA disk parameters." -msgstr "ATA ë””ìŠ¤í¬ ë§¤ê°œ 변수를 얻거나 설정합니다." - -#: grub-core/commands/help.c:132 grub-core/lib/arg.c:109 -#: grub-core/lib/gnulib/argp-help.c:1616 -msgid "Usage:" -msgstr "사용법:" - -#: grub-core/commands/help.c:146 -msgid "[PATTERN ...]" -msgstr "[패턴 ...]" - -#: grub-core/commands/help.c:147 -msgid "Show a help message." -msgstr "ë„ì›€ë§ í‘œì‹œ." - -#: grub-core/commands/hexdump.c:31 -msgid "Skip offset bytes from the beginning of file." -msgstr "íŒŒì¼ ì²«ë¶€ë¶„ì˜ ì˜¤í”„ì…‹ ë°”ì´íŠ¸ë¥¼ 건너ëœë‹ˆë‹¤." - -#: grub-core/commands/hexdump.c:33 -msgid "Read only LENGTH bytes." -msgstr "단지 LENGTH ë°”ì´íŠ¸ë¥¼ ì½ìŠµë‹ˆë‹¤." - -#: grub-core/commands/hexdump.c:125 -msgid "[OPTIONS] FILE_OR_DEVICE" -msgstr "[옵션] <파ì¼ë˜ëŠ”ìž¥ì¹˜>" - -#: grub-core/commands/hexdump.c:126 -#, fuzzy -msgid "Show raw contents of a file or memory." -msgstr "íŒŒì¼ ë˜ëŠ” ë©”ëª¨ë¦¬ì˜ ë‚´ìš©ì„ ë¤í”„합니다." - -#: grub-core/commands/i386/cmosdump.c:58 -msgid "Show raw dump of the CMOS contents." -msgstr "" - -#: grub-core/commands/i386/cmostest.c:108 -#: grub-core/commands/i386/cmostest.c:111 -#: grub-core/commands/i386/cmostest.c:114 -msgid "BYTE:BIT" -msgstr "" - -#: grub-core/commands/i386/cmostest.c:109 -msgid "Test bit at BYTE:BIT in CMOS." -msgstr "" - -#: grub-core/commands/i386/cmostest.c:112 -msgid "Clear bit at BYTE:BIT in CMOS." -msgstr "" - -#. TRANSLATORS: A bit may be either set (1) or clear (0). -#: grub-core/commands/i386/cmostest.c:116 -msgid "Set bit at BYTE:BIT in CMOS." -msgstr "" - -#: grub-core/commands/i386/coreboot/cb_timestamps.c:120 -msgid "Show coreboot boot time statistics." -msgstr "" - -#: grub-core/commands/i386/coreboot/cbls.c:137 -msgid "List coreboot tables." -msgstr "" - -#. TRANSLATORS: "(default)" at the end means that this option is used if -#. no argument is specified. -#: grub-core/commands/i386/cpuid.c:36 -#, fuzzy -msgid "Check if CPU supports 64-bit (long) mode (default)." -msgstr "긴 모드 í”Œëž˜ê·¸ì— ëŒ€í•´ 확ì¸í•©ë‹ˆë‹¤ (기본값)." - -#: grub-core/commands/i386/cpuid.c:37 -msgid "Check if CPU supports Physical Address Extension." -msgstr "" - -#: grub-core/commands/i386/cpuid.c:119 -msgid "Check for CPU features." -msgstr "CPU ê¸°ëŠ¥ì„ í™•ì¸." - -#. TRANSLATORS: In this file "mapping" refers to a change GRUB makes so if -#. your language doesn't have an equivalent of "mapping" you can -#. use the word like "rerouting". -#. -#: grub-core/commands/i386/pc/drivemap.c:43 -msgid "Show the current mappings." -msgstr "í˜„ìž¬ì˜ ë§¤í•‘ì„ ë³´ìž…ë‹ˆë‹¤." - -#: grub-core/commands/i386/pc/drivemap.c:44 -msgid "Reset all mappings to the default values." -msgstr "ê¸°ë³¸ê°’ì— ëŒ€í•œ 모든 ë§¤í•‘ì„ ë¦¬ì…‹í•©ë‹ˆë‹¤." - -#: grub-core/commands/i386/pc/drivemap.c:45 -msgid "Perform both direct and reverse mappings." -msgstr "순 매핑과 ì—­ 매핑 둘 다 수행합니다." - -#: grub-core/commands/i386/pc/drivemap.c:184 -msgid "No drives have been remapped" -msgstr "" - -#. TRANSLATORS: This is the header of mapping list. -#. On the left is how OS will see the disks and -#. on the right current GRUB vision. -#: grub-core/commands/i386/pc/drivemap.c:191 -msgid "OS disk #num ------> GRUB/BIOS device" -msgstr "" - -#: grub-core/commands/i386/pc/drivemap.c:413 -msgid "-l | -r | [-s] grubdev osdisk." -msgstr "-l | -r | [-s] grubdev osdisk." - -#: grub-core/commands/i386/pc/drivemap.c:414 -msgid "Manage the BIOS drive mappings." -msgstr "BIOS 드ë¼ì´ë¸Œ ë§¤í•‘ì„ ê´€ë¦¬í•©ë‹ˆë‹¤." - -#: grub-core/commands/i386/pc/halt.c:31 -msgid "Do not use APM to halt the computer." -msgstr "컴퓨터를 멈추기 위해 APMì„ ì‚¬ìš©í•˜ì§€ 않습니다." - -#: grub-core/commands/i386/pc/halt.c:119 -msgid "Halt the system, if possible using APM." -msgstr "APMì´ ì‚¬ìš© 가능하다면 ì‹œìŠ¤í…œì„ ì¤‘ì§€ì‹œí‚µë‹ˆë‹¤." - -#: grub-core/commands/i386/pc/lsapm.c:75 -msgid "no APM found" -msgstr "" - -#: grub-core/commands/i386/pc/lsapm.c:77 -#, c-format -msgid "" -"Version %u.%u\n" -"32-bit CS = 0x%x, len = 0x%x, offset = 0x%x\n" -"16-bit CS = 0x%x, len = 0x%x\n" -"DS = 0x%x, len = 0x%x\n" -msgstr "" - -#: grub-core/commands/i386/pc/lsapm.c:86 -msgid "16-bit protected interface supported\n" -msgstr "" - -#: grub-core/commands/i386/pc/lsapm.c:87 -msgid "16-bit protected interface unsupported\n" -msgstr "" - -#: grub-core/commands/i386/pc/lsapm.c:89 -msgid "32-bit protected interface supported\n" -msgstr "" - -#: grub-core/commands/i386/pc/lsapm.c:90 -msgid "32-bit protected interface unsupported\n" -msgstr "" - -#: grub-core/commands/i386/pc/lsapm.c:92 -msgid "CPU Idle slows down processor\n" -msgstr "" - -#: grub-core/commands/i386/pc/lsapm.c:93 -msgid "CPU Idle doesn't slow down processor\n" -msgstr "" - -#: grub-core/commands/i386/pc/lsapm.c:95 -msgid "APM disabled\n" -msgstr "" - -#: grub-core/commands/i386/pc/lsapm.c:95 -msgid "APM enabled\n" -msgstr "" - -#: grub-core/commands/i386/pc/lsapm.c:97 -msgid "APM disengaged\n" -msgstr "" - -#: grub-core/commands/i386/pc/lsapm.c:97 -msgid "APM engaged\n" -msgstr "" - -#: grub-core/commands/i386/pc/lsapm.c:107 -msgid "Show APM information." -msgstr "" - -#. TRANSLATORS: It's musical notes, not the notes -#. you take. Play command expects arguments which can -#. be either a filename or tempo+notes. -#. This error happens if none is specified. -#: grub-core/commands/i386/pc/play.c:88 -msgid "filename or tempo and notes expected" -msgstr "" - -#: grub-core/commands/i386/pc/play.c:113 grub-core/commands/i386/pc/play.c:144 -#, fuzzy, c-format -msgid "Invalid tempo in %s" -msgstr "유효하지 ì•Šì€ ìž¥ì¹˜ `%s'.\n" - -#: grub-core/commands/i386/pc/play.c:151 grub-core/commands/macbless.c:172 -#: grub-core/fs/archelp.c:260 grub-core/fs/bfs.c:621 grub-core/fs/bfs.c:704 -#: grub-core/fs/btrfs.c:1726 grub-core/fs/btrfs.c:1755 -#: grub-core/fs/btrfs.c:1799 grub-core/fs/btrfs.c:1882 -#: grub-core/fs/btrfs.c:1906 grub-core/fs/fshelp.c:257 grub-core/fs/jfs.c:696 -#: grub-core/fs/minix.c:426 grub-core/fs/ufs.c:544 grub-core/fs/zfs/zfs.c:2083 -#: grub-core/fs/zfs/zfs.c:2095 grub-core/fs/zfs/zfs.c:2301 -#: grub-core/net/http.c:120 -#, c-format -msgid "file `%s' not found" -msgstr "" - -#: grub-core/commands/i386/pc/play.c:162 grub-core/commands/i386/pc/play.c:171 -#: grub-core/kern/misc.c:419 grub-core/script/execute.c:138 -#: grub-core/script/execute.c:244 -msgid "unrecognized number" -msgstr "" - -#: grub-core/commands/i386/pc/play.c:190 -msgid "FILE | TEMPO [PITCH1 DURATION1] [PITCH2 DURATION2] ... " -msgstr "<파ì¼> | <간격> [<높낮ì´1> <시간>] [<높낮ì´2> <시간>] ... " - -#: grub-core/commands/i386/pc/play.c:191 -msgid "Play a tune." -msgstr "소리를 재ìƒí•©ë‹ˆë‹¤." - -#: grub-core/commands/i386/pc/sendkey.c:39 -msgid "set numlock mode" -msgstr "" - -#: grub-core/commands/i386/pc/sendkey.c:40 -msgid "set capslock mode" -msgstr "" - -#: grub-core/commands/i386/pc/sendkey.c:41 -msgid "set scrolllock mode" -msgstr "" - -#: grub-core/commands/i386/pc/sendkey.c:42 -msgid "set insert mode" -msgstr "" - -#: grub-core/commands/i386/pc/sendkey.c:43 -msgid "set pause mode" -msgstr "" - -#: grub-core/commands/i386/pc/sendkey.c:44 -msgid "press left shift" -msgstr "" - -#: grub-core/commands/i386/pc/sendkey.c:45 -msgid "press right shift" -msgstr "" - -#: grub-core/commands/i386/pc/sendkey.c:46 -msgid "press SysRq" -msgstr "" - -#: grub-core/commands/i386/pc/sendkey.c:47 -msgid "press NumLock key" -msgstr "" - -#: grub-core/commands/i386/pc/sendkey.c:48 -msgid "press CapsLock key" -msgstr "" - -#: grub-core/commands/i386/pc/sendkey.c:49 -msgid "press ScrollLock key" -msgstr "" - -#: grub-core/commands/i386/pc/sendkey.c:50 -msgid "press Insert key" -msgstr "" - -#: grub-core/commands/i386/pc/sendkey.c:51 -msgid "press left alt" -msgstr "" - -#: grub-core/commands/i386/pc/sendkey.c:52 -msgid "press right alt" -msgstr "" - -#: grub-core/commands/i386/pc/sendkey.c:53 -msgid "press left ctrl" -msgstr "" - -#: grub-core/commands/i386/pc/sendkey.c:54 -msgid "press right ctrl" -msgstr "" - -#: grub-core/commands/i386/pc/sendkey.c:55 -msgid "don't update LED state" -msgstr "" - -#: grub-core/commands/i386/pc/sendkey.c:372 -msgid "[KEYSTROKE1] [KEYSTROKE2] ..." -msgstr "" - -#. TRANSLATORS: It can emulate multiple -#. keypresses. -#: grub-core/commands/i386/pc/sendkey.c:375 -msgid "Emulate a keystroke sequence" -msgstr "" - -#: grub-core/commands/i386/rdmsr.c:37 grub-core/commands/iorw.c:34 -#: grub-core/commands/memrw.c:33 grub-core/commands/setpci.c:73 -msgid "Save read value into variable VARNAME." -msgstr "ì½ì–´ë“¤ì¸ ê°’ì„ <변수ì´ë¦„> 변수로 저장합니다." - -#: grub-core/commands/i386/rdmsr.c:38 grub-core/commands/iorw.c:35 -#: grub-core/commands/memrw.c:34 grub-core/commands/probe.c:40 -#: grub-core/commands/search_wrap.c:40 grub-core/commands/setpci.c:74 -#: grub-core/commands/tr.c:32 -msgid "VARNAME" -msgstr "" - -#: grub-core/commands/i386/rdmsr.c:55 grub-core/commands/i386/rdmsr.c:60 -#: grub-core/commands/i386/rdmsr.c:65 grub-core/commands/i386/wrmsr.c:47 -#: grub-core/commands/i386/wrmsr.c:52 grub-core/commands/i386/wrmsr.c:57 -msgid "unsupported instruction" -msgstr "" - -#: grub-core/commands/i386/rdmsr.c:77 grub-core/commands/i386/wrmsr.c:69 -#: grub-core/commands/i386/wrmsr.c:77 grub-core/net/dns.c:727 -msgid "invalid argument" -msgstr "" - -#: grub-core/commands/i386/rdmsr.c:94 grub-core/commands/memrw.c:125 -#: grub-core/commands/memrw.c:129 grub-core/commands/memrw.c:133 -msgid "ADDR" -msgstr "<주소>" - -#: grub-core/commands/i386/rdmsr.c:95 -msgid "Read a CPU model specific register." -msgstr "" - -#: grub-core/commands/i386/wrmsr.c:86 -#, fuzzy -msgid "ADDR VALUE" -msgstr "<주소> <ê°’> [마스í¬]" - -#: grub-core/commands/i386/wrmsr.c:87 -msgid "Write a value to a CPU model specific register." -msgstr "" - -#: grub-core/commands/ieee1275/suspend.c:34 -msgid "Run `go' to resume GRUB." -msgstr "" - -#: grub-core/commands/ieee1275/suspend.c:45 -#, fuzzy -msgid "Return to IEEE1275 prompt." -msgstr "오픈 펌웨어 프롬프트로 ë˜ëŒì•„ 갑니다." - -#: grub-core/commands/iorw.c:123 grub-core/commands/iorw.c:127 -#: grub-core/commands/iorw.c:131 grub-core/gdb/gdb.c:79 -msgid "PORT" -msgstr "" - -#: grub-core/commands/iorw.c:123 -#, fuzzy -msgid "Read 8-bit value from PORT." -msgstr "<주소>ì—서 ë°”ì´íŠ¸ë¥¼ ì½ìŠµë‹ˆë‹¤." - -#: grub-core/commands/iorw.c:127 -#, fuzzy -msgid "Read 16-bit value from PORT." -msgstr "<주소>ì—서 ë°”ì´íŠ¸ë¥¼ ì½ìŠµë‹ˆë‹¤." - -#: grub-core/commands/iorw.c:131 -#, fuzzy -msgid "Read 32-bit value from PORT." -msgstr "<주소>ì—서 ë°”ì´íŠ¸ë¥¼ ì½ìŠµë‹ˆë‹¤." - -#: grub-core/commands/iorw.c:135 grub-core/commands/iorw.c:139 -#, fuzzy -msgid "PORT VALUE [MASK]" -msgstr "<주소> <ê°’> [마스í¬]" - -#: grub-core/commands/iorw.c:136 -#, fuzzy -msgid "Write 8-bit VALUE to PORT." -msgstr "<주소>ì— <ê°’> ë°”ì´íŠ¸ë¥¼ ì”니다." - -#: grub-core/commands/iorw.c:140 -#, fuzzy -msgid "Write 16-bit VALUE to PORT." -msgstr "<주소>ì— <ê°’> ë°”ì´íŠ¸ë¥¼ ì”니다." - -#: grub-core/commands/iorw.c:143 grub-core/commands/memrw.c:137 -#: grub-core/commands/memrw.c:141 grub-core/commands/memrw.c:145 -msgid "ADDR VALUE [MASK]" -msgstr "<주소> <ê°’> [마스í¬]" - -#: grub-core/commands/iorw.c:144 -#, fuzzy -msgid "Write 32-bit VALUE to PORT." -msgstr "<주소>ì— <ê°’> ë°”ì´íŠ¸ë¥¼ ì”니다." - -#: grub-core/commands/keylayouts.c:215 grub-core/commands/loadenv.c:61 -#: grub-core/commands/nativedisk.c:189 grub-core/efiemu/main.c:235 -#: grub-core/font/font.c:428 grub-core/gfxmenu/gfxmenu.c:63 -#: grub-core/kern/device.c:42 grub-core/kern/dl.c:740 -#, c-format -msgid "variable `%s' isn't set" -msgstr "" - -#: grub-core/commands/keylayouts.c:301 -msgid "Load a keyboard layout." -msgstr "" - -#. TRANSLATORS: "Check" in a sense that if this key is pressed then -#. "true" is returned, otherwise "false". -#: grub-core/commands/keystatus.c:32 -msgid "Check Shift key." -msgstr "Shift키를 확ì¸í•©ë‹ˆë‹¤." - -#: grub-core/commands/keystatus.c:33 -msgid "Check Control key." -msgstr "Control키를 확ì¸í•©ë‹ˆë‹¤." - -#: grub-core/commands/keystatus.c:34 -msgid "Check Alt key." -msgstr "ALt 키를 확ì¸í•©ë‹ˆë‹¤." - -#. TRANSLATORS: there are 3 modifiers. -#: grub-core/commands/keystatus.c:106 -msgid "Check key modifier status." -msgstr "키 ìˆ˜ì •ìž ìƒíƒœë¥¼ 확ì¸." - -#: grub-core/commands/legacycfg.c:512 grub-core/commands/legacycfg.c:526 -#: grub-core/commands/legacycfg.c:546 grub-core/commands/legacycfg.c:559 -#: grub-core/commands/time.c:43 grub-core/script/function.c:109 -#: util/grub-file.c:100 util/grub-fstest.c:57 util/grub-mount.c:69 -#, fuzzy, c-format -msgid "can't find command `%s'" -msgstr "'%s'ì„(를) ì—´ 수 없습니다." - -#: grub-core/commands/legacycfg.c:813 grub-core/normal/auth.c:225 -#: util/grub-mkpasswd-pbkdf2.c:139 -msgid "Enter password: " -msgstr "암호를 입력하십시오: " - -#. TRANSLATORS: "legacy config" means -#. "config as used by grub-legacy". -#: grub-core/commands/legacycfg.c:837 -msgid "Parse legacy config in same context" -msgstr "" - -#: grub-core/commands/legacycfg.c:842 -msgid "Parse legacy config in new context" -msgstr "" - -#: grub-core/commands/legacycfg.c:847 -msgid "Parse legacy config in same context taking only menu entries" -msgstr "" - -#: grub-core/commands/legacycfg.c:852 -msgid "Parse legacy config in new context taking only menu entries" -msgstr "" - -#: grub-core/commands/legacycfg.c:856 -msgid "[--no-mem-option] [--type=TYPE] FILE [ARG ...]" -msgstr "" - -#: grub-core/commands/legacycfg.c:857 -msgid "Simulate grub-legacy `kernel' command" -msgstr "" - -#: grub-core/commands/legacycfg.c:861 grub-core/commands/legacycfg.c:865 -msgid "FILE [ARG ...]" -msgstr "" - -#: grub-core/commands/legacycfg.c:862 -msgid "Simulate grub-legacy `initrd' command" -msgstr "" - -#: grub-core/commands/legacycfg.c:866 -msgid "Simulate grub-legacy `modulenounzip' command" -msgstr "" - -#: grub-core/commands/legacycfg.c:870 grub-core/commands/legacycfg.c:875 -msgid "[--md5] PASSWD [FILE]" -msgstr "" - -#: grub-core/commands/legacycfg.c:871 -msgid "Simulate grub-legacy `password' command" -msgstr "" - -#: grub-core/commands/legacycfg.c:876 -msgid "Simulate grub-legacy `password' command in menu entry mode" -msgstr "" - -#. TRANSLATORS: This option is used to override default filename -#. for loading and storing environment. -#: grub-core/commands/loadenv.c:37 -msgid "Specify filename." -msgstr "íŒŒì¼ ì´ë¦„ì„ ì§€ì •í•©ë‹ˆë‹¤." - -#: grub-core/commands/loadenv.c:39 -msgid "Skip signature-checking of the environment file." -msgstr "" - -#: grub-core/commands/loadenv.c:451 -#, fuzzy -msgid "[-f FILE] [-s|--skip-sig] [variable_name_to_whitelist] [...]" -msgstr "[-f <파ì¼>] <변수_ì´ë¦„> [...]" - -#: grub-core/commands/loadenv.c:452 -msgid "Load variables from environment block file." -msgstr "환경 ë¸”ë¡ íŒŒì¼ë¡œë¶€í„° ê°’ì„ ì½ì–´ë“¤ìž…니다." - -#: grub-core/commands/loadenv.c:455 -msgid "[-f FILE]" -msgstr "[-f <파ì¼>]" - -#: grub-core/commands/loadenv.c:456 -msgid "List variables from environment block file." -msgstr "환경 ë¸”ë¡ íŒŒì¼ë¡œë¶€í„° ê°’ì„ ì—´ê±°í•©ë‹ˆë‹¤." - -#: grub-core/commands/loadenv.c:460 -msgid "[-f FILE] variable_name [...]" -msgstr "[-f <파ì¼>] <변수_ì´ë¦„> [...]" - -#: grub-core/commands/loadenv.c:461 -msgid "Save variables to environment block file." -msgstr "ê°’ì„ í™˜ê²½ ë¸”ë¡ íŒŒì¼ë¡œ 저장합니다." - -#: grub-core/commands/ls.c:40 -msgid "Show a long list with more detailed information." -msgstr "ë” ìƒì„¸í•œ 정보를 ë‹´ì€ ê¸´ 리스트를 ë³´ì—¬ì¤ë‹ˆë‹¤." - -#: grub-core/commands/ls.c:41 -msgid "Print sizes in a human readable format." -msgstr "ì‚¬ëžŒì´ ì½ì„ 수 있는 형ì‹ìœ¼ë¡œ í¬ê¸°ë¥¼ 출력합니다." - -#: grub-core/commands/ls.c:42 -msgid "List all files." -msgstr "파ì¼ì˜ 목ë¡ì„ ë³´ì—¬ì¤ë‹ˆë‹¤." - -#: grub-core/commands/ls.c:73 -msgid "Network protocols:" -msgstr "" - -#: grub-core/commands/ls.c:295 -#, fuzzy -msgid "[-l|-h|-a] [FILE ...]" -msgstr "[-l|-h|-a] [<파ì¼>]" - -#: grub-core/commands/ls.c:296 -msgid "List devices and files." -msgstr "장치와 파ì¼ì„ 목ë¡ìœ¼ë¡œ 만듭니다." - -#: grub-core/commands/lsacpi.c:255 -msgid "Show version 1 tables only." -msgstr "" - -#: grub-core/commands/lsacpi.c:256 -msgid "Show version 2 and version 3 tables only." -msgstr "" - -#: grub-core/commands/lsacpi.c:306 -msgid "Show ACPI information." -msgstr "" - -#: grub-core/commands/lsmmap.c:31 -msgid "available RAM" -msgstr "" - -#: grub-core/commands/lsmmap.c:32 -msgid "reserved RAM" -msgstr "" - -#. TRANSLATORS: this refers to memory where ACPI tables are stored -#. and which can be used by OS once it loads ACPI tables. -#: grub-core/commands/lsmmap.c:35 -msgid "ACPI reclaimable RAM" -msgstr "" - -#. TRANSLATORS: this refers to memory which ACPI-compliant OS -#. is required to save accross hibernations. -#: grub-core/commands/lsmmap.c:38 -msgid "ACPI non-volatile storage RAM" -msgstr "" - -#: grub-core/commands/lsmmap.c:39 -msgid "faulty RAM (BadRAM)" -msgstr "" - -#: grub-core/commands/lsmmap.c:40 -msgid "persistent RAM" -msgstr "" - -#: grub-core/commands/lsmmap.c:41 -msgid "persistent RAM (legacy)" -msgstr "" - -#: grub-core/commands/lsmmap.c:42 -msgid "RAM holding coreboot tables" -msgstr "" - -#: grub-core/commands/lsmmap.c:43 -msgid "RAM holding firmware code" -msgstr "" - -#: grub-core/commands/lsmmap.c:52 -#, c-format -msgid "base_addr = 0x%llx, length = 0x%llx, %s\n" -msgstr "" - -#: grub-core/commands/lsmmap.c:55 -#, c-format -msgid "base_addr = 0x%llx, length = 0x%llx, type = 0x%x\n" -msgstr "" - -#: grub-core/commands/lsmmap.c:79 -msgid "List memory map provided by firmware." -msgstr "íŽŒì›¨ì–´ì— ì˜í•´ ì œê³µëœ ë©”ëª¨ë¦¬ ë§µì„ ì—´ê±°í•©ë‹ˆë‹¤." - -#: grub-core/commands/lspci.c:232 -msgid "List PCI devices." -msgstr "PCI 장치를 열거합니다." - -#: grub-core/commands/macbless.c:224 -msgid "Bless FILE of HFS or HFS+ partition for intel macs." -msgstr "" - -#: grub-core/commands/macbless.c:228 -msgid "Bless DIR of HFS or HFS+ partition for PPC macs." -msgstr "" - -#: grub-core/commands/memrw.c:125 -#, fuzzy -msgid "Read 8-bit value from ADDR." -msgstr "<주소>ì—서 ë°”ì´íŠ¸ë¥¼ ì½ìŠµë‹ˆë‹¤." - -#: grub-core/commands/memrw.c:129 -#, fuzzy -msgid "Read 16-bit value from ADDR." -msgstr "<주소>ì—서 ë°”ì´íŠ¸ë¥¼ ì½ìŠµë‹ˆë‹¤." - -#: grub-core/commands/memrw.c:133 -#, fuzzy -msgid "Read 32-bit value from ADDR." -msgstr "<주소>ì—서 ë°”ì´íŠ¸ë¥¼ ì½ìŠµë‹ˆë‹¤." - -#: grub-core/commands/memrw.c:138 -#, fuzzy -msgid "Write 8-bit VALUE to ADDR." -msgstr "<주소>ì— <ê°’> ë°”ì´íŠ¸ë¥¼ ì”니다." - -#: grub-core/commands/memrw.c:142 -#, fuzzy -msgid "Write 16-bit VALUE to ADDR." -msgstr "<주소>ì— <ê°’> ë°”ì´íŠ¸ë¥¼ ì”니다." - -#: grub-core/commands/memrw.c:146 -#, fuzzy -msgid "Write 32-bit VALUE to ADDR." -msgstr "<주소>ì— <ê°’> ë°”ì´íŠ¸ë¥¼ ì”니다." - -#: grub-core/commands/menuentry.c:31 -msgid "Menu entry type." -msgstr "" - -#: grub-core/commands/menuentry.c:31 grub-core/commands/menuentry.c:38 -#: grub-core/commands/menuentry.c:39 grub-core/gettext/gettext.c:520 -#: util/grub-fstest.c:520 util/grub-install.c:291 util/grub-install.c:304 -#: util/grub-mknetdir.c:51 util/grub-mkrescue.c:109 util/grub-mkrescue.c:110 -#: util/grub-mount.c:453 util/grub-render-label.c:65 -#, fuzzy -msgid "STRING" -msgstr "[-e|-n] 문ìžì—´" - -#: grub-core/commands/menuentry.c:33 -msgid "List of users allowed to boot this entry." -msgstr "" - -#: grub-core/commands/menuentry.c:33 -msgid "USERNAME[,USERNAME]" -msgstr "" - -#: grub-core/commands/menuentry.c:36 -msgid "Keyboard key to quickly boot this entry." -msgstr "" - -#: grub-core/commands/menuentry.c:36 -msgid "KEYBOARD_KEY" -msgstr "" - -#: grub-core/commands/menuentry.c:38 -msgid "Use STRING as menu entry body." -msgstr "" - -#: grub-core/commands/menuentry.c:39 -msgid "Menu entry identifier." -msgstr "" - -#. TRANSLATORS: menu entry can either be bootable by anyone or only by -#. handful of users. By default when security is active only superusers can -#. boot a given menu entry. With --unrestricted (this option) -#. anyone can boot it. -#: grub-core/commands/menuentry.c:44 -msgid "This entry can be booted by any user." -msgstr "" - -#: grub-core/commands/menuentry.c:323 grub-core/commands/menuentry.c:328 -#: grub-core/tests/test_blockarg.c:46 -msgid "BLOCK" -msgstr "" - -#: grub-core/commands/menuentry.c:323 -msgid "Define a menu entry." -msgstr "" - -#: grub-core/commands/menuentry.c:328 -msgid "Define a submenu." -msgstr "" - -#. TRANSLATORS: this is module list header. Name -#. is module name, Ref Count is a reference counter -#. (how many modules or open descriptors use it). -#. Dependencies are the other modules it uses. -#. -#: grub-core/commands/minicmd.c:162 -msgid "Name\tRef Count\tDependencies\n" -msgstr "" - -#: grub-core/commands/minicmd.c:201 -msgid "Show this message." -msgstr "ì´ ë©”ì‹œì§€ë¥¼ ë³´ì—¬ì¤ë‹ˆë‹¤." - -#: grub-core/commands/minicmd.c:204 -msgid "ADDR [SIZE]" -msgstr "" - -#: grub-core/commands/minicmd.c:204 -#, fuzzy -msgid "Show memory contents." -msgstr "파ì¼ì˜ ë‚´ìš©ì„ í‘œì‹œí•©ë‹ˆë‹¤." - -#: grub-core/commands/minicmd.c:207 grub-core/kern/corecmd.c:188 -#: util/grub-install.c:275 -msgid "MODULE" -msgstr "<모듈>" - -#: grub-core/commands/minicmd.c:207 -msgid "Remove a module." -msgstr "ëª¨ë“ˆì„ ì œê±°í•©ë‹ˆë‹¤." - -#: grub-core/commands/minicmd.c:210 -msgid "Show loaded modules." -msgstr "ì½ì–´ë“¤ì¸ ëª¨ë“ˆì„ ë³´ì—¬ì¤ë‹ˆë‹¤." - -#: grub-core/commands/minicmd.c:213 -msgid "Exit from GRUB." -msgstr "GRUBì—서 나갑니다." - -#: grub-core/commands/mips/loongson/lsspd.c:42 -msgid "No CS5536 found" -msgstr "" - -#: grub-core/commands/mips/loongson/lsspd.c:45 -#, c-format -msgid "CS5536 at %d:%d.%d\n" -msgstr "" - -#. TRANSLATORS: System management bus is often used to access components like -#. RAM (info only, not data) or batteries. I/O space is where in memory -#. its ports are. -#: grub-core/commands/mips/loongson/lsspd.c:55 -#, c-format -msgid "System management bus controller I/O space is at 0x%x\n" -msgstr "" - -#. TRANSLATORS: it's shown in a report in a way -#. like number 1: ... number 2: ... -#. -#: grub-core/commands/mips/loongson/lsspd.c:66 -#, c-format -msgid "RAM slot number %d\n" -msgstr "" - -#: grub-core/commands/mips/loongson/lsspd.c:73 -#, c-format -msgid "Written SPD bytes: %d B.\n" -msgstr "" - -#: grub-core/commands/mips/loongson/lsspd.c:74 -#, c-format -msgid "Total flash size: %d B.\n" -msgstr "" - -#: grub-core/commands/mips/loongson/lsspd.c:79 -msgid "Memory type: DDR2." -msgstr "" - -#: grub-core/commands/mips/loongson/lsspd.c:83 -#, fuzzy, c-format -msgid "Part no: %s.\n" -msgstr "파티션 %s:" - -#: grub-core/commands/mips/loongson/lsspd.c:86 -msgid "Memory type: Unknown." -msgstr "" - -#: grub-core/commands/mips/loongson/lsspd.c:97 -#, fuzzy -msgid "Print Memory information." -msgstr "ë” ë§Žì€ ì •ë³´ë¥¼ 보려면 `%s --help' 하십시오.\n" - -#: grub-core/commands/nativedisk.c:118 grub-core/commands/probe.c:118 -#: grub-core/commands/probe.c:124 util/grub-probe.c:450 -#, c-format -msgid "%s does not support UUIDs" -msgstr "" - -#: grub-core/commands/nativedisk.c:325 -msgid "[MODULE1 MODULE2 ...]" -msgstr "" - -#: grub-core/commands/nativedisk.c:326 -msgid "" -"Switch to native disk drivers. If no modules are specified default set (pata," -"ahci,usbms,ohci,uhci,ehci) is used" -msgstr "" - -#: grub-core/commands/parttool.c:40 -msgid "" -"Perform COMMANDS on partition.\n" -"Use `parttool PARTITION help' for the list of available commands." -msgstr "" - -#: grub-core/commands/parttool.c:123 -msgid "=VAL" -msgstr "" - -#: grub-core/commands/parttool.c:136 -#, c-format -msgid "Sorry, no parttool is available for %s\n" -msgstr "" - -#: grub-core/commands/parttool.c:288 grub-core/lib/arg.c:285 -#: grub-core/lib/arg.c:351 -#, fuzzy, c-format -msgid "unknown argument `%s'" -msgstr "알 수 없는 추가ì ì¸ ì¸ìž ê°’ `%s'.\n" - -#: grub-core/commands/parttool.c:344 -msgid "PARTITION COMMANDS" -msgstr "파티션 명령어" - -#: grub-core/commands/password.c:85 -msgid "USER PASSWORD" -msgstr "ì‚¬ìš©ìž ì•”í˜¸" - -#: grub-core/commands/password.c:86 -msgid "Set user password (plaintext). Unrecommended and insecure." -msgstr "ì‚¬ìš©ìž ì•”í˜¸ (í‰ë¬¸)를 설정합니다. 권장하지 않으며, ë³´ì•ˆì— ì·¨ì•½í•©ë‹ˆë‹¤." - -#. TRANSLATORS: it means that the string which -#. was supposed to be a password hash doesn't -#. have a correct format, not to password -#. mismatch. -#: grub-core/commands/password_pbkdf2.c:98 -#: grub-core/commands/password_pbkdf2.c:115 -#: grub-core/commands/password_pbkdf2.c:123 -#: grub-core/commands/password_pbkdf2.c:150 -#: grub-core/commands/password_pbkdf2.c:179 -msgid "invalid PBKDF2 password" -msgstr "" - -#: grub-core/commands/password_pbkdf2.c:202 -#, fuzzy -msgid "USER PBKDF2_PASSWORD" -msgstr "ì‚¬ìš©ìž ì•”í˜¸" - -#: grub-core/commands/password_pbkdf2.c:203 -msgid "Set user password (PBKDF2). " -msgstr "" - -#: grub-core/commands/pcidump.c:39 grub-core/commands/setpci.c:69 -msgid "Select device by vendor and device IDs." -msgstr "" - -#: grub-core/commands/pcidump.c:40 grub-core/commands/setpci.c:70 -msgid "[vendor]:[device]" -msgstr "" - -#: grub-core/commands/pcidump.c:41 grub-core/commands/setpci.c:71 -msgid "Select device by its position on the bus." -msgstr "" - -#: grub-core/commands/pcidump.c:42 grub-core/commands/setpci.c:72 -msgid "[bus]:[slot][.func]" -msgstr "" - -#: grub-core/commands/pcidump.c:109 grub-core/commands/pcidump.c:138 -#: grub-core/commands/setpci.c:183 grub-core/commands/setpci.c:214 -#: grub-core/fs/zfs/zfs.c:3794 grub-core/kern/emu/hostdisk.c:458 -#: grub-core/kern/emu/hostdisk.c:473 grub-core/kern/file.c:44 -#, c-format -msgid "missing `%c' symbol" -msgstr "" - -#: grub-core/commands/pcidump.c:168 -msgid "[-s POSITION] [-d DEVICE]" -msgstr "" - -#: grub-core/commands/pcidump.c:169 -msgid "Show raw dump of the PCI configuration space." -msgstr "" - -#: grub-core/commands/pgp.c:45 -msgid "Skip signature-checking of the public key file." -msgstr "" - -#. TRANSLATORS: it's about GNUPG signatures. -#: grub-core/commands/pgp.c:71 grub-core/commands/pgp.c:81 -#: grub-core/commands/pgp.c:86 grub-core/commands/pgp.c:96 -#: grub-core/commands/pgp.c:103 grub-core/commands/pgp.c:107 -#: grub-core/commands/pgp.c:114 grub-core/commands/pgp.c:119 -#: grub-core/commands/pgp.c:124 grub-core/commands/pgp.c:128 -#: grub-core/commands/pgp.c:268 grub-core/commands/pgp.c:276 -#: grub-core/commands/pgp.c:281 grub-core/commands/pgp.c:289 -#: grub-core/commands/pgp.c:320 grub-core/commands/pgp.c:327 -#: grub-core/commands/pgp.c:332 grub-core/commands/pgp.c:342 -#: grub-core/commands/pgp.c:468 grub-core/commands/pgp.c:471 -#: grub-core/commands/pgp.c:474 grub-core/commands/pgp.c:477 -#: grub-core/commands/pgp.c:484 grub-core/commands/pgp.c:490 -#: grub-core/commands/pgp.c:665 -msgid "bad signature" -msgstr "" - -#. TRANSLATORS: %08x is 32-bit key id. -#: grub-core/commands/pgp.c:636 grub-core/commands/pgp.c:812 -#, c-format -msgid "public key %08x not found" -msgstr "" - -#: grub-core/commands/pgp.c:651 grub-core/disk/diskfilter.c:772 -#: grub-core/disk/diskfilter.c:782 grub-core/fs/ntfs.c:404 -#: grub-core/fs/zfs/zfs.c:1933 grub-core/normal/menu.c:428 -#, c-format -msgid "module `%s' isn't loaded" -msgstr "" - -#: grub-core/commands/pgp.c:994 -msgid "[-s|--skip-sig] FILE SIGNATURE_FILE [PUBKEY_FILE]" -msgstr "" - -#: grub-core/commands/pgp.c:995 -msgid "Verify detached signature." -msgstr "" - -#: grub-core/commands/pgp.c:998 -msgid "[-s|--skip-sig] PUBKEY_FILE" -msgstr "" - -#: grub-core/commands/pgp.c:999 -msgid "Add PUBKEY_FILE to trusted keys." -msgstr "" - -#: grub-core/commands/pgp.c:1003 -msgid "Show the list of trusted keys." -msgstr "" - -#: grub-core/commands/pgp.c:1005 -msgid "PUBKEY_ID" -msgstr "" - -#: grub-core/commands/pgp.c:1006 -msgid "Remove PUBKEY_ID from trusted keys." -msgstr "" - -#: grub-core/commands/probe.c:40 grub-core/commands/tr.c:32 -msgid "Set a variable to return value." -msgstr "ì–´ë–¤ ê°’ì„ ë¦¬í„´ 값으로 설정합니다." - -#. TRANSLATORS: It's a driver that is currently in use to access -#. the diven disk. -#: grub-core/commands/probe.c:43 -msgid "Determine driver." -msgstr "드ë¼ì´ë²„를 결정합니다." - -#: grub-core/commands/probe.c:44 -msgid "Determine partition map type." -msgstr "파티션 ë§µ ìœ í˜•ì„ ê²°ì •í•©ë‹ˆë‹¤." - -#: grub-core/commands/probe.c:45 -msgid "Determine filesystem type." -msgstr "íŒŒì¼ ì‹œìŠ¤í…œì˜ ì¢…ë¥˜ë¥¼ 결정합니다." - -#: grub-core/commands/probe.c:46 -msgid "Determine filesystem UUID." -msgstr "íŒŒì¼ ì‹œìŠ¤í…œ UUID를 결정합니다." - -#: grub-core/commands/probe.c:47 -msgid "Determine filesystem label." -msgstr "íŒŒì¼ ì‹œìŠ¤í…œì˜ ë¼ë²¨(label)ì„ ê²°ì •í•©ë‹ˆë‹¤." - -#: grub-core/commands/probe.c:139 grub-core/commands/probe.c:146 -#: util/grub-probe.c:462 -#, c-format -msgid "filesystem `%s' does not support labels" -msgstr "" - -#: grub-core/commands/probe.c:165 grub-core/fs/zfs/zfsinfo.c:430 -#: grub-core/loader/i386/bsd.c:169 util/grub-setup.c:223 -msgid "DEVICE" -msgstr "<장치>" - -#: grub-core/commands/probe.c:166 -msgid "Retrieve device info." -msgstr "장치 정보를 검색합니다." - -#: grub-core/commands/read.c:85 -msgid "[ENVVAR]" -msgstr "[환경변수]" - -#: grub-core/commands/read.c:86 -msgid "Set variable with user input." -msgstr "변수를 ì‚¬ìš©ìž ìž…ë ¥ìœ¼ë¡œ 지정합니다." - -#: grub-core/commands/reboot.c:40 -msgid "Reboot the computer." -msgstr "컴퓨터를 재부팅합니다." - -#. TRANSLATORS: in regexp you can mark some -#. groups with parentheses. These groups are -#. then numbered and you can save some of -#. them in variables. In other programs -#. those components aree often referenced with -#. back slash, e.g. \1. Compare -#. sed -e 's,\([a-z][a-z]*\),lowercase=\1,g' -#. The whole matching component is saved in VARNAME, not its number. -#. -#: grub-core/commands/regexp.c:44 -msgid "Store matched component NUMBER in VARNAME." -msgstr "" - -#: grub-core/commands/regexp.c:45 -msgid "[NUMBER:]VARNAME" -msgstr "" - -#. TRANSLATORS: This are two arguments. So it's -#. two separate units to translate and pay -#. attention not to reverse them. -#: grub-core/commands/regexp.c:157 -msgid "REGEXP STRING" -msgstr "" - -#: grub-core/commands/regexp.c:158 -msgid "Test if REGEXP matches STRING." -msgstr "" - -#: grub-core/commands/search.c:324 -#, fuzzy -msgid "NAME [VARIABLE] [HINTS]" -msgstr "<ì´ë¦„> [<변수>]" - -#: grub-core/commands/search_file.c:4 -msgid "" -"Search devices by file. If VARIABLE is specified, the first device found is " -"set to a variable." -msgstr "" -"파ì¼ë¡œ 장치를 찾습니다. 만약 <변수>ê°€ 명시ë˜ì§€ 않으면, 첫 번째로 발견ë˜ëŠ” 장" -"치가 변수로 지정ë©ë‹ˆë‹¤." - -#: grub-core/commands/search_label.c:4 -msgid "" -"Search devices by label. If VARIABLE is specified, the first device found is " -"set to a variable." -msgstr "" -"ë ˆì´ë¸”로 장치를 찾습니다. 만약 <변수>ê°€ 명시ë˜ì§€ 않으면, 첫 번째로 발견ë˜ëŠ” " -"장치가 변수로 지정ë©ë‹ˆë‹¤." - -#: grub-core/commands/search_uuid.c:4 -msgid "" -"Search devices by UUID. If VARIABLE is specified, the first device found is " -"set to a variable." -msgstr "" -"UUID로 장치를 찾습니다. 만약 <변수>ê°€ 명시ë˜ì§€ 않으면, 첫 번째로 발견ë˜ëŠ” 장" -"치가 변수로 지정ë©ë‹ˆë‹¤." - -#: grub-core/commands/search_wrap.c:34 -#, fuzzy -msgid "Search devices by a file." -msgstr "íŒŒì¼ ìž¥ì¹˜ë¥¼ 만듭니다." - -#: grub-core/commands/search_wrap.c:35 -#, fuzzy -msgid "Search devices by a filesystem label." -msgstr "íŒŒì¼ ì‹œìŠ¤í…œì˜ ë¼ë²¨(label)ì„ ê²°ì •í•©ë‹ˆë‹¤." - -#: grub-core/commands/search_wrap.c:37 -#, fuzzy -msgid "Search devices by a filesystem UUID." -msgstr "íŒŒì¼ ì‹œìŠ¤í…œ UUID를 결정합니다." - -#: grub-core/commands/search_wrap.c:40 -#, fuzzy -msgid "Set a variable to the first device found." -msgstr "ì–´ë–¤ ê°’ì„ ë¦¬í„´ 값으로 설정합니다." - -#: grub-core/commands/search_wrap.c:42 -msgid "Do not probe any floppy drive." -msgstr "" - -#: grub-core/commands/search_wrap.c:44 -msgid "" -"First try the device HINT. If HINT ends in comma, also try subpartitions" -msgstr "" - -#: grub-core/commands/search_wrap.c:45 grub-core/commands/search_wrap.c:49 -#: grub-core/commands/search_wrap.c:53 grub-core/commands/search_wrap.c:57 -#: grub-core/commands/search_wrap.c:61 grub-core/commands/search_wrap.c:65 -msgid "HINT" -msgstr "" - -#: grub-core/commands/search_wrap.c:47 -msgid "" -"First try the device HINT if currently running on IEEE1275. If HINT ends in " -"comma, also try subpartitions" -msgstr "" - -#: grub-core/commands/search_wrap.c:51 -msgid "" -"First try the device HINT if currently running on BIOS. If HINT ends in " -"comma, also try subpartitions" -msgstr "" - -#: grub-core/commands/search_wrap.c:55 -msgid "" -"First try the device HINT if direct hardware access is supported. If HINT " -"ends in comma, also try subpartitions" -msgstr "" - -#: grub-core/commands/search_wrap.c:59 -msgid "" -"First try the device HINT if currently running on EFI. If HINT ends in " -"comma, also try subpartitions" -msgstr "" - -#: grub-core/commands/search_wrap.c:63 -msgid "" -"First try the device HINT if currently running on ARC. If HINT ends in " -"comma, also try subpartitions" -msgstr "" - -#: grub-core/commands/search_wrap.c:207 -msgid "[-f|-l|-u|-s|-n] [--hint HINT [--hint HINT] ...] NAME" -msgstr "" - -#: grub-core/commands/search_wrap.c:209 -#, fuzzy -msgid "" -"Search devices by file, filesystem label or filesystem UUID. If --set is " -"specified, the first device found is set to a variable. If no variable name " -"is specified, `root' is used." -msgstr "" -"ë ˆì´ë¸”로 장치를 찾습니다. 만약 <변수>ê°€ 명시ë˜ì§€ 않으면, 첫 번째로 발견ë˜ëŠ” " -"장치가 변수로 지정ë©ë‹ˆë‹¤." - -#: grub-core/commands/setpci.c:132 -#, c-format -msgid "Register %x of %x:%02x.%x is %x\n" -msgstr "" - -#: grub-core/commands/setpci.c:333 -msgid "[-s POSITION] [-d DEVICE] [-v VAR] REGISTER[=VALUE[:MASK]]" -msgstr "" - -#: grub-core/commands/setpci.c:335 -#, fuzzy -msgid "Manipulate PCI devices." -msgstr "PCI 장치를 열거합니다." - -#: grub-core/commands/sleep.c:32 -msgid "Verbose countdown." -msgstr "ìžì„¸í•œ 카운트 다운." - -#: grub-core/commands/sleep.c:33 -#, fuzzy -msgid "Allow to interrupt with ESC." -msgstr "ESC로 중단 가능." - -#: grub-core/commands/sleep.c:109 -msgid "NUMBER_OF_SECONDS" -msgstr "<ì´ˆ 수>" - -#: grub-core/commands/sleep.c:110 -msgid "Wait for a specified number of seconds." -msgstr "ì§€ì •ëœ ì´ˆ ë§Œí¼ ê¸°ë‹¤ë¦½ë‹ˆë‹¤." - -#: grub-core/commands/syslinuxcfg.c:50 util/grub-syslinux2cfg.c:66 -msgid "root directory of the syslinux disk [default=/]." -msgstr "" - -#: grub-core/commands/syslinuxcfg.c:53 util/grub-syslinux2cfg.c:72 -msgid "" -"current directory of syslinux [default is parent directory of input file]." -msgstr "" - -#: grub-core/commands/syslinuxcfg.c:55 util/grub-syslinux2cfg.c:75 -msgid "assume input is an isolinux configuration file." -msgstr "" - -#: grub-core/commands/syslinuxcfg.c:56 util/grub-syslinux2cfg.c:76 -msgid "assume input is a pxelinux configuration file." -msgstr "" - -#: grub-core/commands/syslinuxcfg.c:57 util/grub-syslinux2cfg.c:77 -msgid "assume input is a syslinux configuration file." -msgstr "" - -#. TRANSLATORS: "syslinux config" means -#. "config as used by syslinux". -#: grub-core/commands/syslinuxcfg.c:189 -msgid "Execute syslinux config in same context" -msgstr "" - -#: grub-core/commands/syslinuxcfg.c:195 -msgid "Execute syslinux config in new context" -msgstr "" - -#: grub-core/commands/syslinuxcfg.c:201 -msgid "Execute syslinux config in same context taking only menu entries" -msgstr "" - -#: grub-core/commands/syslinuxcfg.c:207 -msgid "Execute syslinux config in new context taking only menu entries" -msgstr "" - -#: grub-core/commands/terminal.c:90 -#, fuzzy -msgid "no terminal specified" -msgstr "알려진 장치가 ì—†ìŒ.\n" - -#: grub-core/commands/terminal.c:112 grub-core/commands/terminal.c:139 -#, c-format -msgid "terminal `%s' isn't found" -msgstr "" - -#: grub-core/commands/terminal.c:244 -msgid "Active input terminals:" -msgstr "" - -#: grub-core/commands/terminal.c:245 -msgid "Available input terminals:" -msgstr "" - -#: grub-core/commands/terminal.c:261 -msgid "Active output terminals:" -msgstr "" - -#: grub-core/commands/terminal.c:262 -msgid "Available output terminals:" -msgstr "" - -#: grub-core/commands/terminal.c:271 grub-core/commands/terminal.c:276 -msgid "[--append|--remove] [TERMINAL1] [TERMINAL2] ..." -msgstr "" - -#: grub-core/commands/terminal.c:273 -msgid "List or select an input terminal." -msgstr "" - -#: grub-core/commands/terminal.c:278 -msgid "List or select an output terminal." -msgstr "" - -#: grub-core/commands/test.c:444 -msgid "EXPRESSION ]" -msgstr "í‘œí˜„ì‹ ]" - -#: grub-core/commands/test.c:444 grub-core/commands/test.c:447 -msgid "Evaluate an expression." -msgstr "표현ì‹ìœ¼ë¡œ í‰ê°€í•¨." - -#: grub-core/commands/test.c:447 -msgid "EXPRESSION" -msgstr "표현ì‹" - -#: grub-core/commands/testload.c:164 -msgid "Load the same file in multiple ways." -msgstr "" - -#: grub-core/commands/testspeed.c:35 -msgid "Specify size for each read operation" -msgstr "" - -#: grub-core/commands/testspeed.c:58 -msgid "invalid block size" -msgstr "" - -#: grub-core/commands/testspeed.c:80 -#, c-format -msgid "File size: %s\n" -msgstr "" - -#: grub-core/commands/testspeed.c:83 -#, c-format -msgid "Elapsed time: %d.%03d s \n" -msgstr "" - -#: grub-core/commands/testspeed.c:92 -#, c-format -msgid "Speed: %s \n" -msgstr "" - -#: grub-core/commands/testspeed.c:107 -msgid "[-s SIZE] FILENAME" -msgstr "" - -#: grub-core/commands/testspeed.c:108 -msgid "Test file read speed." -msgstr "" - -#: grub-core/commands/time.c:38 grub-core/script/execute.c:974 -#, fuzzy -msgid "no command is specified" -msgstr "알려진 장치가 ì—†ìŒ.\n" - -#: grub-core/commands/time.c:50 -#, c-format -msgid "Elapsed time: %d.%03d seconds \n" -msgstr "" - -#: grub-core/commands/time.c:61 -msgid "COMMAND [ARGS]" -msgstr "" - -#: grub-core/commands/time.c:62 -msgid "Measure time used by COMMAND" -msgstr "" - -#: grub-core/commands/tr.c:33 -msgid "Translate to upper case." -msgstr "" - -#: grub-core/commands/tr.c:34 -msgid "Translate to lower case." -msgstr "" - -#: grub-core/commands/tr.c:119 -msgid "[OPTIONS] [SET1] [SET2] [STRING]" -msgstr "" - -#: grub-core/commands/tr.c:120 -msgid "Translate SET1 characters to SET2 in STRING." -msgstr "" - -#. TRANSLATORS: it's a command description. -#: grub-core/commands/true.c:50 -msgid "Do nothing, successfully." -msgstr "성공ì ìœ¼ë¡œ 아무ì¼ë„ 하지 않습니다." - -#. TRANSLATORS: it's a command description. -#: grub-core/commands/true.c:54 -msgid "Do nothing, unsuccessfully." -msgstr "ë¶ˆí–‰í•˜ê²Œë„ ì•„ë¬´ì¼ë„ 하지 않습니다." - -#: grub-core/commands/usbtest.c:221 -msgid "Test USB support." -msgstr "USB ì§€ì›ì—¬ë¶€ë¥¼ 테스트 합니다." - -#: grub-core/commands/verifiers.c:120 -#, c-format -msgid "verification requested but nobody cares: %s" -msgstr "" - -#: grub-core/commands/verifiers.c:140 -msgid "big file signature isn't implemented yet" -msgstr "" - -#: grub-core/commands/videoinfo.c:61 -msgid "Text-only " -msgstr "" - -#. TRANSLATORS: "Direct color" is a mode when the color components -#. are written dirrectly into memory. -#: grub-core/commands/videoinfo.c:66 -#, c-format -msgid "Direct color, mask: %d/%d/%d/%d pos: %d/%d/%d/%d" -msgstr "" - -#. TRANSLATORS: In "paletted color" mode you write the index of the color -#. in the palette. Synonyms include "packed pixel". -#: grub-core/commands/videoinfo.c:78 -msgid "Paletted " -msgstr "" - -#: grub-core/commands/videoinfo.c:80 -msgid "YUV " -msgstr "" - -#. TRANSLATORS: "Planar" is the video memory where you have to write -#. in several different banks "plans" to control the different color -#. components of the same pixel. -#: grub-core/commands/videoinfo.c:85 -msgid "Planar " -msgstr "" - -#: grub-core/commands/videoinfo.c:87 -msgid "Hercules " -msgstr "" - -#: grub-core/commands/videoinfo.c:89 -msgid "CGA " -msgstr "" - -#. TRANSLATORS: Non-chain 4 is a 256-color planar -#. (unchained) video memory mode. -#: grub-core/commands/videoinfo.c:93 -msgid "Non-chain 4 " -msgstr "" - -#: grub-core/commands/videoinfo.c:95 -msgid "Monochrome " -msgstr "" - -#: grub-core/commands/videoinfo.c:97 -msgid "Unknown video mode " -msgstr "" - -#: grub-core/commands/videoinfo.c:111 -msgid " EDID checksum invalid" -msgstr "" - -#: grub-core/commands/videoinfo.c:116 -#, c-format -msgid " EDID version: %u.%u\n" -msgstr "" - -#: grub-core/commands/videoinfo.c:120 -#, c-format -msgid " Preferred mode: %ux%u\n" -msgstr "" - -#: grub-core/commands/videoinfo.c:123 -msgid " No preferred mode available\n" -msgstr "" - -#: grub-core/commands/videoinfo.c:146 grub-core/video/video.c:490 -#: grub-core/video/video.c:498 grub-core/video/video.c:509 -#: grub-core/video/video.c:520 grub-core/video/video.c:528 -#, fuzzy, c-format -msgid "invalid video mode specification `%s'" -msgstr "유효하지 ì•Šì€ ë£¨íŠ¸ 장치 `%s'" - -#: grub-core/commands/videoinfo.c:168 -msgid "List of supported video modes:" -msgstr "" - -#: grub-core/commands/videoinfo.c:169 -msgid "Legend: mask/position=red/green/blue/reserved" -msgstr "" - -#: grub-core/commands/videoinfo.c:176 -#, c-format -msgid "Adapter `%s':\n" -msgstr "" - -#: grub-core/commands/videoinfo.c:180 -msgid " No info available" -msgstr "" - -#: grub-core/commands/videoinfo.c:198 -msgid " Failed to initialize video adapter" -msgstr "" - -#. TRANSLATORS: "x" has to be entered in, -#. like an identifier, so please don't -#. use better Unicode codepoints. -#: grub-core/commands/videoinfo.c:239 grub-core/commands/videoinfo.c:248 -msgid "[WxH[xD]]" -msgstr "" - -#: grub-core/commands/videoinfo.c:240 grub-core/commands/videoinfo.c:249 -msgid "" -"List available video modes. If resolution is given show only modes matching " -"it." -msgstr "" - -#. TRANSLATORS: "x" has to be entered in, -#. like an identifier, so please don't -#. use better Unicode codepoints. -#: grub-core/commands/videotest.c:225 -msgid "[WxH]" -msgstr "" - -#. TRANSLATORS: Here, on the other hand, it's -#. nicer to use unicode cross instead of x. -#: grub-core/commands/videotest.c:228 -#, fuzzy -msgid "Test video subsystem in mode WxH." -msgstr "비디오 ì„œë¸Œì‹œìŠ¤í…œì„ í…ŒìŠ¤íŠ¸ 합니다." - -#: grub-core/commands/videotest.c:231 -msgid "Test video subsystem." -msgstr "비디오 ì„œë¸Œì‹œìŠ¤í…œì„ í…ŒìŠ¤íŠ¸ 합니다." - -#: grub-core/commands/xen/lsxen.c:80 grub-core/commands/xen/lsxen.c:82 -msgid "[DIR]" -msgstr "" - -#: grub-core/commands/xen/lsxen.c:81 grub-core/commands/xen/lsxen.c:83 -msgid "List Xen storage." -msgstr "" - -#. TRANSLATORS: GRUBUUID stands for "filesystem -#. UUID as used in GRUB". -#: grub-core/commands/xnu_uuid.c:110 -#, fuzzy -msgid "[-l] GRUBUUID [VARNAME]" -msgstr "GRUBUUID [<변수ì´ë¦„>]" - -#: grub-core/commands/xnu_uuid.c:111 -#, fuzzy -msgid "" -"Transform 64-bit UUID to format suitable for XNU. If -l is given keep it " -"lowercase as done by blkid." -msgstr "64-bit UUID를 XNUì— ì•Œë§žëŠ” í¬ë§·ìœ¼ë¡œ 변환합니다." - -#: grub-core/disk/arc/arcdisk.c:248 grub-core/disk/efi/efidisk.c:603 -#: grub-core/disk/i386/pc/biosdisk.c:498 grub-core/disk/i386/pc/biosdisk.c:543 -#: grub-core/disk/ieee1275/nand.c:198 grub-core/disk/ieee1275/obdisk.c:527 -#: grub-core/disk/ieee1275/ofdisk.c:586 -#, c-format -msgid "failure reading sector 0x%llx from `%s'" -msgstr "" - -#: grub-core/disk/arc/arcdisk.c:284 grub-core/disk/efi/efidisk.c:626 -#: grub-core/disk/i386/pc/biosdisk.c:548 grub-core/disk/ieee1275/ofdisk.c:606 -#, c-format -msgid "failure writing sector 0x%llx to `%s'" -msgstr "" - -#: grub-core/disk/cryptodisk.c:40 -msgid "Mount by UUID." -msgstr "" - -#. TRANSLATORS: It's still restricted to cryptodisks only. -#: grub-core/disk/cryptodisk.c:42 -msgid "Mount all." -msgstr "" - -#: grub-core/disk/cryptodisk.c:43 -msgid "Mount all volumes with `boot' flag set." -msgstr "" - -#. TRANSLATORS: The first %s is the file being looked at, the second %s is -#. the error message. -#: grub-core/disk/cryptodisk.c:526 grub-core/kern/emu/hostdisk.c:152 -#: grub-core/kern/emu/hostdisk.c:262 grub-core/kern/emu/hostdisk.c:434 -#: grub-core/kern/emu/misc.c:168 grub-core/kern/emu/misc.c:174 -#: grub-core/kern/emu/misc.c:196 grub-core/osdep/bsd/getroot.c:92 -#: grub-core/osdep/bsd/getroot.c:168 grub-core/osdep/hurd/getroot.c:68 -#: grub-core/osdep/linux/blocklist.c:65 grub-core/osdep/linux/getroot.c:150 -#: grub-core/osdep/linux/hostdisk.c:194 grub-core/osdep/linux/hostdisk.c:421 -#: grub-core/osdep/linux/ofpath.c:417 grub-core/osdep/linux/ofpath.c:422 -#: grub-core/osdep/linux/ofpath.c:517 grub-core/osdep/linux/ofpath.c:530 -#: grub-core/osdep/sun/getroot.c:110 grub-core/osdep/windows/blocklist.c:98 -#: grub-core/tests/video_checksum.c:279 util/editenv.c:46 util/glue-efi.c:115 -#: util/glue-efi.c:120 util/glue-efi.c:130 util/grub-editenv.c:138 -#: util/grub-editenv.c:192 util/grub-file.c:83 util/grub-fstest.c:128 -#: util/grub-fstest.c:568 util/grub-install-common.c:92 -#: util/grub-install-common.c:94 util/grub-install-common.c:101 -#: util/grub-install-common.c:529 util/grub-menulst2cfg.c:53 -#: util/grub-menulst2cfg.c:68 util/grub-mkimage.c:292 util/grub-mklayout.c:504 -#: util/grub-mklayout.c:516 util/grub-mknetdir.c:133 util/grub-mknetdir.c:151 -#: util/grub-mkrescue.c:627 util/grub-mkrescue.c:631 util/grub-mkrescue.c:879 -#: util/grub-mkrescue.c:883 util/grub-mkstandalone.c:253 util/grub-mount.c:498 -#: util/grub-render-label.c:169 util/grub-script-check.c:175 -#: util/grub-syslinux2cfg.c:181 util/grub-syslinux2cfg.c:191 -#: util/grub-syslinux2cfg.c:212 util/grub-syslinux2cfg.c:228 util/misc.c:91 -#: util/render-label.c:76 util/render-label.c:163 util/render-label.c:174 -#: util/resolve.c:246 util/setup.c:783 -#, fuzzy, c-format -msgid "cannot open `%s': %s" -msgstr "'%s'ì„(를) ì—´ 수 없습니다." - -#: grub-core/disk/cryptodisk.c:583 grub-core/disk/cryptodisk.c:628 -#: grub-core/kern/emu/hostdisk.c:270 grub-core/kern/emu/hostfs.c:142 -#: grub-core/osdep/linux/hostdisk.c:456 util/grub-editenv.c:143 -#: util/grub-editenv.c:149 util/grub-fstest.c:320 util/misc.c:111 -#, fuzzy, c-format -msgid "cannot seek `%s': %s" -msgstr "'%s'ì„(를) ì—´ 수 없습니다." - -#: grub-core/disk/cryptodisk.c:1144 -msgid "SOURCE|-u UUID|-a|-b" -msgstr "" - -#: grub-core/disk/cryptodisk.c:1145 -#, fuzzy -msgid "Mount a crypto device." -msgstr "루트 장치를 정합니다." - -#. TRANSLATORS: This message kicks in during the detection of -#. which modules needs to be included in core image. This happens -#. in the case of degraded RAID and means that autodetection may -#. fail to include some of modules. It's an installation time -#. message, not runtime message. -#: grub-core/disk/diskfilter.c:343 grub-core/disk/diskfilter.c:376 -#, c-format -msgid "" -"Couldn't find physical volume `%s'. Some modules may be missing from core " -"image." -msgstr "" - -#: grub-core/disk/diskfilter.c:480 -#, c-format -msgid "physical volume %s not found" -msgstr "" - -#: grub-core/disk/efi/efidisk.c:600 grub-core/disk/efi/efidisk.c:623 -#, fuzzy, c-format -msgid "no media in `%s'" -msgstr "'%s'ì„(를) ì—´ 수 없습니다." - -#: grub-core/disk/geli.c:75 -msgid "Couldn't load sha256" -msgstr "" - -#: grub-core/disk/geli.c:85 -msgid "Couldn't load sha512" -msgstr "" - -#: grub-core/disk/geli.c:216 grub-core/disk/geli.c:220 -msgid "couldn't read ELI metadata" -msgstr "" - -#: grub-core/disk/geli.c:231 -msgid "wrong ELI magic or version" -msgstr "" - -#: grub-core/disk/geli.c:435 grub-core/disk/luks.c:329 -msgid "Attempting to decrypt master key..." -msgstr "" - -#: grub-core/disk/geli.c:441 grub-core/disk/luks.c:347 -#, c-format -msgid "Enter passphrase for %s%s%s (%s): " -msgstr "" - -#. TRANSLATORS: It's a cryptographic key slot: one element of an array -#. where each element is either empty or holds a key. -#: grub-core/disk/geli.c:530 grub-core/disk/luks.c:451 -#, c-format -msgid "Slot %d opened\n" -msgstr "" - -#: grub-core/disk/i386/pc/biosdisk.c:470 grub-core/disk/i386/pc/biosdisk.c:524 -#: grub-core/disk/i386/pc/biosdisk.c:534 grub-core/kern/disk_common.c:47 -#, fuzzy, c-format -msgid "attempt to read or write outside of disk `%s'" -msgstr "GRUBì˜ `%s' 코어 ì´ë¯¸ì§€ ì½ê¸°ë¥¼ 시ë„합니다" - -#: grub-core/disk/i386/pc/biosdisk.c:491 grub-core/disk/i386/pc/biosdisk.c:611 -#: grub-core/disk/scsi.c:726 -msgid "cannot write to CD-ROM" -msgstr "" - -#: grub-core/disk/i386/pc/biosdisk.c:662 -msgid "" -"Native disk drivers are in use. Refusing to use firmware disk interface." -msgstr "" - -#. TRANSLATORS: it's a partition for embedding, -#. not a partition embed into something. GRUB -#. install tools put core.img into a place -#. usable for bootloaders (called generically -#. "embedding zone") and this operation is -#. called "embedding". -#: grub-core/disk/ldm.c:1015 -#, fuzzy -msgid "your LDM Embedding Partition is too small; embedding won't be possible" -msgstr "" -"ì´ëŸ¬í•œ msdos-ë°©ì‹ì˜ 파티션 ë ˆì´ë¸”ì€ post-MBR ê³µê°„ì´ ì—†ìŠµë‹ˆë‹¤; ë¼ì›Œë„£ê¸°ê°€ 불" -"가능합니다!" - -#. TRANSLATORS: it's a partition for embedding, -#. not a partition embed into something. -#: grub-core/disk/ldm.c:1033 -#, fuzzy -msgid "this LDM has no Embedding Partition; embedding won't be possible" -msgstr "" -"GPT 파티션 ë¼ë²¨ì´ BIOS 부트 íŒŒí‹°ì…˜ì„ ê°€ì§€ê³  있지 않습니다;ìž„ë² ë”©ì´ ë¶ˆê°€ëŠ¥í•©ë‹ˆ" -"다!" - -#. TRANSLATORS: The disk is simply removed from the list of available ones, -#. not wiped, avoid to scare user. -#: grub-core/disk/loopback.c:45 -#, fuzzy -msgid "Delete the specified loopback drive." -msgstr "루프백 장치 엔트리를 제거합니다." - -#: grub-core/disk/loopback.c:237 -#, fuzzy -msgid "[-d] DEVICENAME FILE." -msgstr "[-d|-p] <장치ì´ë¦„> <파ì¼>." - -#. TRANSLATORS: The file itself is not destroyed -#. or transformed into drive. -#: grub-core/disk/loopback.c:240 -#, fuzzy -msgid "Make a virtual drive from a file." -msgstr "íŒŒì¼ ìž¥ì¹˜ë¥¼ 만듭니다." - -#: grub-core/efiemu/i386/loadcore32.c:111 -#: grub-core/efiemu/i386/loadcore64.c:125 grub-core/kern/arm/dl.c:256 -#: grub-core/kern/arm64/dl.c:187 grub-core/kern/i386/dl.c:75 -#: grub-core/kern/ia64/dl.c:140 grub-core/kern/mips/dl.c:258 -#: grub-core/kern/powerpc/dl.c:163 grub-core/kern/riscv/dl.c:334 -#: grub-core/kern/sparc64/dl.c:180 grub-core/kern/x86_64/dl.c:110 -#: util/grub-mkimagexx.c:756 util/grub-mkimagexx.c:881 -#: util/grub-mkimagexx.c:945 util/grub-mkimagexx.c:1026 -#: util/grub-mkimagexx.c:1120 util/grub-mkimagexx.c:1222 -#: util/grub-mkimagexx.c:1413 util/grub-mkimagexx.c:1628 -#: util/grub-mkimagexx.c:1665 util/grub-mkimagexx.c:1697 -#: util/grub-mkimagexx.c:1767 util/grub-mkimagexx.c:1797 -#, c-format -msgid "relocation 0x%x is not implemented yet" -msgstr "" - -#: grub-core/efiemu/loadcore.c:200 grub-core/efiemu/loadcore.c:237 -#: grub-core/loader/i386/bsdXX.c:317 util/grub-mkimagexx.c:2360 -msgid "no symbol table" -msgstr "" - -#: grub-core/efiemu/loadcore.c:346 grub-core/kern/dl.c:609 -#: grub-core/loader/ia64/efi/linux.c:345 grub-core/loader/mips/linux.c:248 -#: grub-core/loader/multiboot_elfxx.c:76 -#: grub-core/loader/powerpc/ieee1275/linux.c:280 -#: grub-core/loader/sparc64/ieee1275/linux.c:320 -msgid "this ELF file is not of the right type" -msgstr "" - -#: grub-core/efiemu/main.c:313 -msgid "Load and initialize EFI emulator." -msgstr "" - -#: grub-core/efiemu/main.c:317 -msgid "Finalize loading of EFI emulator." -msgstr "" - -#: grub-core/efiemu/main.c:320 -#, fuzzy -msgid "Unload EFI emulator." -msgstr "PXE 환경 제거." - -#: grub-core/efiemu/symbols.c:92 grub-core/kern/dl.c:376 -#, c-format -msgid "symbol `%s' not found" -msgstr "" - -#: grub-core/font/font_cmd.c:52 -msgid "Loaded fonts:" -msgstr "" - -#: grub-core/font/font_cmd.c:74 -#, fuzzy -msgid "FILE..." -msgstr "<파ì¼>" - -#: grub-core/font/font_cmd.c:75 -msgid "Specify one or more font files to load." -msgstr "" - -#: grub-core/font/font_cmd.c:78 -msgid "List the loaded fonts." -msgstr "" - -#: grub-core/fs/archelp.c:216 grub-core/fs/archelp.c:278 -#: grub-core/fs/btrfs.c:1815 grub-core/fs/fshelp.c:227 grub-core/fs/jfs.c:736 -#: grub-core/fs/minix.c:369 grub-core/fs/ufs.c:454 -msgid "too deep nesting of symlinks" -msgstr "" - -#: grub-core/fs/bfs.c:228 grub-core/fs/fshelp.c:368 grub-core/fs/minix.c:270 -#: grub-core/kern/file.c:156 -msgid "attempt to read past the end of file" -msgstr "" - -#: grub-core/fs/btrfs.c:1698 grub-core/fs/btrfs.c:1957 -#: grub-core/fs/fshelp.c:189 grub-core/fs/fshelp.c:309 grub-core/fs/jfs.c:431 -#: grub-core/fs/minix.c:414 grub-core/fs/minix.c:562 -#: grub-core/fs/reiserfs.c:732 grub-core/fs/ufs.c:531 grub-core/fs/ufs.c:671 -#: grub-core/fs/zfs/zfs.c:2831 grub-core/fs/zfs/zfs.c:4247 -msgid "not a directory" -msgstr "" - -#: grub-core/fs/btrfs.c:2063 grub-core/fs/fshelp.c:307 grub-core/fs/jfs.c:835 -#: grub-core/fs/zfs/zfs.c:3801 -msgid "not a regular file" -msgstr "" - -#: grub-core/fs/btrfs.c:2157 grub-core/fs/zfs/zfs.c:4333 -#: grub-core/partmap/msdos.c:400 -#, fuzzy -msgid "your core.img is unusually large. It won't fit in the embedding area" -msgstr "core.imgê°€ 비정ìƒì ìœ¼ë¡œ í½ë‹ˆë‹¤. ë¼ì›Œë„£ê¸° ê³µê°„ì— ë§žì§€ 않습니다." - -#: grub-core/fs/fshelp.c:281 grub-core/fs/minix.c:630 grub-core/fs/ufs.c:661 -#: grub-core/fs/ufs.c:757 grub-core/kern/fs.c:168 grub-core/kern/fs.c:180 -#, fuzzy, c-format -msgid "invalid file name `%s'" -msgstr "유효하지 ì•Šì€ ë£¨íŠ¸ 장치 `%s'" - -#: grub-core/fs/zfs/zfs.c:453 -msgid "checksum verification failed" -msgstr "" - -#: grub-core/fs/zfs/zfs.c:1465 -msgid "couldn't find a necessary member device of multi-device filesystem" -msgstr "" - -#: grub-core/fs/zfs/zfscrypt.c:292 -msgid "no decryption key available" -msgstr "" - -#: grub-core/fs/zfs/zfscrypt.c:304 -msgid "MAC verification failed" -msgstr "" - -#: grub-core/fs/zfs/zfscrypt.c:413 -msgid "Assume input is raw." -msgstr "" - -#: grub-core/fs/zfs/zfscrypt.c:414 -msgid "Assume input is hex." -msgstr "" - -#: grub-core/fs/zfs/zfscrypt.c:415 -msgid "Assume input is passphrase." -msgstr "" - -#: grub-core/fs/zfs/zfscrypt.c:437 util/grub-fstest.c:553 util/grub-mount.c:483 -#, fuzzy -msgid "Enter ZFS password: " -msgstr "암호를 입력하십시오: " - -#: grub-core/fs/zfs/zfscrypt.c:476 -#, fuzzy -msgid "[-h|-p|-r] [FILE]" -msgstr "[-l|-h|-a] [<파ì¼>]" - -#: grub-core/fs/zfs/zfscrypt.c:477 -msgid "Import ZFS wrapping key stored in FILE." -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:51 -msgid "Virtual device is removed" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:57 -msgid "Virtual device is faulted" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:63 -msgid "Virtual device is offline" -msgstr "" - -#. TRANSLATORS: degraded doesn't mean broken but that some of -#. component are missing but virtual device as whole is still usable. -#: grub-core/fs/zfs/zfsinfo.c:70 -msgid "Virtual device is degraded" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:73 -msgid "Virtual device is online" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:89 -msgid "Incorrect virtual device: no type available" -msgstr "" - -#. TRANSLATORS: The virtual devices form a tree (in graph-theoretical -#. sense). The nodes like mirror or raidz have children: member devices. -#. The "real" devices which actually store data are called "leafs" -#. (again borrowed from graph theory) and can be either disks -#. (or partitions) or files. -#: grub-core/fs/zfs/zfsinfo.c:105 -msgid "Leaf virtual device (file or disk)" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:113 -msgid "Bootpath: unavailable\n" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:115 -#, c-format -msgid "Bootpath: %s\n" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:120 -msgid "Path: unavailable" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:122 -#, c-format -msgid "Path: %s\n" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:127 -msgid "Devid: unavailable" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:129 -#, fuzzy, c-format -msgid "Devid: %s\n" -msgstr "장치 %s:" - -#: grub-core/fs/zfs/zfsinfo.c:148 -msgid "This VDEV is a mirror" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:153 -#, c-format -msgid "This VDEV is a RAIDZ%llu\n" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:158 -msgid "Incorrect VDEV" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:161 -#, c-format -msgid "VDEV with %d children\n" -msgstr "" - -#. TRANSLATORS: it's the element carying the number %d, not -#. total element number. And the number itself is fine, -#. only the element isn't. -#. -#: grub-core/fs/zfs/zfsinfo.c:177 -#, c-format -msgid "VDEV element number %d isn't correct\n" -msgstr "" - -#. TRANSLATORS: it's the element carying the number %d, not -#. total element number. This is used in enumeration -#. "Element number 1", "Element number 2", ... -#: grub-core/fs/zfs/zfsinfo.c:184 -#, c-format -msgid "VDEV element number %d:\n" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:193 -#, c-format -msgid "Unknown virtual device type: %s\n" -msgstr "" - -#. TRANSLATORS: Here we speak about ZFS pools it's semi-marketing, -#. semi-technical term by Sun/Oracle and should be translated in sync with -#. other ZFS-related software and documentation. -#: grub-core/fs/zfs/zfsinfo.c:254 -msgid "Pool state: active" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:255 -msgid "Pool state: exported" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:256 -msgid "Pool state: destroyed" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:257 -msgid "Pool state: reserved for hot spare" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:258 -msgid "Pool state: level 2 ARC device" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:259 -msgid "Pool state: uninitialized" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:260 -msgid "Pool state: unavailable" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:261 -msgid "Pool state: potentially active" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:306 -msgid "Pool name: unavailable" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:308 -#, c-format -msgid "Pool name: %s\n" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:313 -msgid "Pool GUID: unavailable" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:315 -#, c-format -msgid "Pool GUID: %016llx\n" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:320 -msgid "Unable to retrieve pool state" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:322 -msgid "Unrecognized pool state" -msgstr "" - -#. TRANSLATORS: There are undetermined number of virtual devices -#. in a device tree, not just one. -#. -#: grub-core/fs/zfs/zfsinfo.c:332 -msgid "No virtual device tree available" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:431 -msgid "Print ZFS info about DEVICE." -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:433 -#, fuzzy -msgid "FILESYSTEM [VARIABLE]" -msgstr "<ì´ë¦„> [<변수>]" - -#: grub-core/fs/zfs/zfsinfo.c:434 -msgid "Print ZFS-BOOTFSOBJ or store it into VARIABLE" -msgstr "" - -#. TRANSLATORS: at this position GRUB waits for the user to do an action -#. in remote debugger, namely to tell it to establish connection. -#: grub-core/gdb/gdb.c:48 -msgid "Now connect the remote debugger, please." -msgstr "" - -#. TRANSLATORS: GDB stub is a small part of -#. GDB functionality running on local host -#. which allows remote debugger to -#. connect to it. -#: grub-core/gdb/gdb.c:84 -msgid "Start GDB stub on given port" -msgstr "" - -#. TRANSLATORS: this refers to triggering -#. a breakpoint so that the user will land -#. into GDB. -#: grub-core/gdb/gdb.c:89 -msgid "Break into GDB" -msgstr "" - -#: grub-core/gdb/gdb.c:91 -msgid "Stop GDB stub" -msgstr "" - -#: grub-core/gettext/gettext.c:85 -msgid "premature end of file" -msgstr "" - -#. TRANSLATORS: It refers to passing the string through gettext. -#. So it's "translate" in the same meaning as in what you're -#. doing now. -#. -#: grub-core/gettext/gettext.c:525 -msgid "Translates the string with the current settings." -msgstr "" - -#: grub-core/gfxmenu/gui_label.c:186 grub-core/normal/menu_text.c:184 -#, fuzzy -msgid "" -"Press enter to boot the selected OS, `e' to edit the commands before booting " -"or `c' for a command-line. ESC to return previous menu." -msgstr "" -"Enter 키를 누르면 ì„ íƒëœ OS로 부팅ë˜ë©°, ë¶€íŒ…ì „ì— 'e' 키를 누르면 ì˜µì…˜ì„ íŽ¸ì§‘" -"í•  수 있고 'c' 키를 누르면 명령어를 ì§ì ‘ 입력할 수 있습니다. ì´ì „ 메뉴로 ëŒì•„" -"가려면 ESC 키를 누르십시오.\n" - -#: grub-core/gfxmenu/gui_label.c:190 grub-core/normal/menu_text.c:192 -#, fuzzy -msgid "" -"Press enter to boot the selected OS, `e' to edit the commands before booting " -"or `c' for a command-line." -msgstr "" -"Enter 키를 누르면 ì„ íƒëœ OS로 부팅ë˜ë©°, ë¶€íŒ…ì „ì— 'e' 키를 누르면 ì˜µì…˜ì„ íŽ¸ì§‘" -"í•  수 있고 'c' 키를 누르면 명령어를 ì§ì ‘ 입력할 수 있습니다.\n" - -#: grub-core/gfxmenu/gui_label.c:194 -msgid "enter: boot, `e': options, `c': cmd-line" -msgstr "" - -#: grub-core/gfxmenu/gui_progress_bar.c:339 grub-core/normal/menu_text.c:446 -#, c-format -msgid "The highlighted entry will be executed automatically in %ds." -msgstr "%dì´ˆ í›„ì— ë°ê²Œ í‘œì‹œëœ í•­ëª©ì„ ìžë™ìœ¼ë¡œ 실행합니다." - -#. TRANSLATORS: 's' stands for seconds. -#. It's a standalone timeout notification. -#. Please use the short form in your language. -#: grub-core/gfxmenu/gui_progress_bar.c:344 -#, c-format -msgid "%ds remaining." -msgstr "" - -#. TRANSLATORS: 's' stands for seconds. -#. It's a standalone timeout notification. -#. Please use the shortest form available in you language. -#: grub-core/gfxmenu/gui_progress_bar.c:349 grub-core/normal/menu_text.c:444 -#: grub-core/normal/menu_text.c:462 -#, c-format -msgid "%ds" -msgstr "" - -#: grub-core/gfxmenu/view.c:103 -msgid "GRUB Boot Menu" -msgstr "" - -#: grub-core/hello/hello.c:36 -#, fuzzy -msgid "Hello World" -msgstr "ì¸ì‚¬í•©ë‹ˆë‹¤ \"여러분 안녕\"." - -#: grub-core/hello/hello.c:45 -#, fuzzy -msgid "Say `Hello World'." -msgstr "ì¸ì‚¬í•©ë‹ˆë‹¤ \"여러분 안녕\"." - -#: grub-core/io/gzio.c:409 grub-core/kern/file.c:210 -msgid "attempt to seek outside of the file" -msgstr "" - -#. TRANSLATORS: It's about given file having some strange format, not -#. complete lack of gzip support. -#: grub-core/io/gzio.c:1228 grub-core/io/gzio.c:1237 grub-core/io/gzio.c:1244 -msgid "unsupported gzip format" -msgstr "" - -#: grub-core/io/lzopio.c:511 -msgid "lzop file corrupted" -msgstr "" - -#: grub-core/io/xzio.c:278 -msgid "xz file corrupted or unsupported block options" -msgstr "" - -#: grub-core/kern/arm/dl.c:277 grub-core/kern/arm64/dl.c:44 -#: grub-core/kern/i386/dl.c:36 grub-core/kern/ia64/dl.c:41 -#: grub-core/kern/mips/dl.c:48 grub-core/kern/powerpc/dl.c:36 -#: grub-core/kern/riscv/dl.c:47 grub-core/kern/sparc64/dl.c:36 -#: grub-core/kern/x86_64/dl.c:36 grub-core/loader/i386/bsd.c:1445 -#: grub-core/loader/i386/bsdXX.c:49 grub-core/loader/ia64/efi/linux.c:341 -#: grub-core/loader/mips/linux.c:298 grub-core/loader/multiboot.c:232 -#: grub-core/loader/multiboot_elfxx.c:73 -#: grub-core/loader/powerpc/ieee1275/linux.c:294 -#: grub-core/loader/sparc64/ieee1275/linux.c:331 -msgid "invalid arch-dependent ELF magic" -msgstr "" - -#: grub-core/kern/corecmd.c:178 -#, fuzzy -msgid "[ENVVAR=VALUE]" -msgstr "[환경변수]" - -#: grub-core/kern/corecmd.c:179 -#, fuzzy -msgid "Set an environment variable." -msgstr "ê°’ì„ í™˜ê²½ ë¸”ë¡ íŒŒì¼ë¡œ 저장합니다." - -#: grub-core/kern/corecmd.c:183 -#, fuzzy -msgid "ENVVAR" -msgstr "[환경변수]" - -#: grub-core/kern/corecmd.c:184 -msgid "Remove an environment variable." -msgstr "" - -#: grub-core/kern/corecmd.c:186 -msgid "[ARG]" -msgstr "" - -#: grub-core/kern/corecmd.c:186 -#, fuzzy -msgid "List devices or files." -msgstr "장치와 파ì¼ì„ 목ë¡ìœ¼ë¡œ 만듭니다." - -#: grub-core/kern/corecmd.c:188 -#, fuzzy -msgid "Insert a module." -msgstr "ëª¨ë“ˆì„ ì œê±°í•©ë‹ˆë‹¤." - -#: grub-core/kern/disk.c:236 grub-core/net/net.c:1390 -#, c-format -msgid "disk `%s' not found" -msgstr "" - -#: grub-core/kern/disk_common.c:27 -msgid "attempt to read or write outside of partition" -msgstr "" - -#: grub-core/kern/dl.c:212 grub-core/kern/elf.c:61 grub-core/kern/elf.c:79 -#: grub-core/loader/i386/bsdXX.c:46 grub-core/loader/ia64/efi/linux.c:335 -#: grub-core/loader/multiboot_elfxx.c:69 -msgid "invalid arch-independent ELF magic" -msgstr "" - -#. TRANSLATORS: it refers to the lack of free slots. -#: grub-core/kern/emu/hostdisk.c:208 grub-core/kern/emu/hostdisk.c:466 -msgid "device count exceeds limit" -msgstr "" - -#: grub-core/kern/emu/hostdisk.c:342 util/editenv.c:54 util/grub-editenv.c:197 -#: util/grub-fstest.c:191 util/grub-mkfont.c:796 util/misc.c:114 -#: util/misc.c:129 util/setup.c:788 -#, fuzzy, c-format -msgid "cannot write to `%s': %s" -msgstr "'%s'ì„(를) ì—´ 수 없습니다." - -#. TRANSLATORS: Only one entry is ignored. However the suggestion -#. is to correct/delete the whole file. -#. device.map is a file indicating which -#. devices are available at boot time. Fedora populated it with -#. entries like (hd0,1) /dev/sda1 which would mean that every -#. partition is a separate disk for BIOS. Such entries were -#. inactive in GRUB due to its bug which is now gone. Without -#. this additional check these entries would be harmful now. -#. -#: grub-core/kern/emu/hostdisk.c:503 -#, c-format -msgid "" -"the device.map entry `%s' is invalid. Ignoring it. Please correct or delete " -"your device.map" -msgstr "" - -#. TRANSLATORS: device.map is a filename. Not to be translated. -#. device.map specifies disk correspondance overrides. Previously -#. one could create any kind of device name with this. Due to -#. some problems we decided to limit it to just a handful -#. possibilities. -#: grub-core/kern/emu/hostdisk.c:555 -#, c-format -msgid "" -"the drive name `%s' in device.map is incorrect. Using %s instead. Please use " -"the form [hfc]d[0-9]* (E.g. `hd0' or `cd')" -msgstr "" - -#: grub-core/kern/emu/hostfs.c:76 grub-core/kern/emu/hostfs.c:109 -#, fuzzy, c-format -msgid "can't open `%s': %s" -msgstr "'%s'ì„(를) ì—´ 수 없습니다." - -#: grub-core/kern/emu/main.c:99 util/grub-fstest.c:516 util/grub-mount.c:452 -#, fuzzy -msgid "DEVICE_NAME" -msgstr "<장치>" - -#: grub-core/kern/emu/main.c:99 grub-core/loader/i386/bsd.c:136 -#: grub-core/loader/i386/bsd.c:169 util/grub-fstest.c:516 util/grub-mount.c:452 -msgid "Set root device." -msgstr "루트 장치를 정합니다." - -#. TRANSLATORS: There are many devices in device map. -#: grub-core/kern/emu/main.c:102 util/grub-probe.c:733 util/grub-setup.c:85 -#, c-format -msgid "use FILE as the device map [default=%s]" -msgstr "" - -#. TRANSLATORS: There are many devices in device map. -#: grub-core/kern/emu/main.c:105 -msgid "use FILE as memdisk" -msgstr "" - -#: grub-core/kern/emu/main.c:107 util/grub-setup.c:83 -#, c-format -msgid "use GRUB files in the directory DIR [default=%s]" -msgstr "" - -#: grub-core/kern/emu/main.c:108 include/grub/util/install.h:67 -#: util/grub-editenv.c:58 util/grub-fstest.c:525 util/grub-glue-efi.c:58 -#: util/grub-macbless.c:104 util/grub-mkfont.c:962 util/grub-mkimage.c:84 -#: util/grub-mklayout.c:56 util/grub-mount.c:458 util/grub-probe.c:735 -#: util/grub-render-label.c:74 util/grub-script-check.c:52 util/grub-setup.c:90 -#: util/grub-syslinux2cfg.c:78 -#, fuzzy -msgid "print verbose messages." -msgstr "부팅시 ìžì„¸í•œ 메시지를 출력합니다." - -#: grub-core/kern/emu/main.c:109 grub-core/lib/gnulib/argp-parse.c:85 -msgid "SECS" -msgstr "" - -#: grub-core/kern/emu/main.c:109 -msgid "wait until a debugger will attach" -msgstr "" - -#: grub-core/kern/emu/main.c:171 util/grub-macbless.c:143 -#: util/grub-mkrelpath.c:61 util/grub-probe.c:874 util/grub-script-check.c:75 -#: util/grub-setup.c:203 -#, fuzzy, c-format -msgid "Unknown extra argument `%s'." -msgstr "알 수 없는 추가ì ì¸ ì¸ìž ê°’ `%s'.\n" - -#: grub-core/kern/emu/main.c:185 -msgid "GRUB emulator." -msgstr "" - -#: grub-core/kern/emu/main.c:213 util/grub-editenv.c:262 -#: util/grub-glue-efi.c:110 util/grub-macbless.c:173 util/grub-mkfont.c:1177 -#: util/grub-mkimage.c:266 util/grub-mklayout.c:494 -#: util/grub-mkpasswd-pbkdf2.c:132 util/grub-mkrelpath.c:96 -#: util/grub-probe.c:863 util/grub-render-label.c:152 -#: util/grub-script-check.c:160 util/grub-setup.c:262 -#: util/grub-syslinux2cfg.c:163 -msgid "Error in parsing command line arguments\n" -msgstr "" - -#. TRANSLATORS: In this case GRUB tells user what he has to do. -#: grub-core/kern/emu/main.c:248 -#, c-format -msgid "Run `gdb %s %d', and set ARGS.HOLD to zero.\n" -msgstr "" - -#: grub-core/kern/emu/misc.c:48 -#, c-format -msgid "%s: warning:" -msgstr "" - -#: grub-core/kern/emu/misc.c:64 -#, c-format -msgid "%s: info:" -msgstr "" - -#: grub-core/kern/emu/misc.c:79 util/grub-fstest.c:567 util/grub-fstest.c:576 -#: util/grub-mount.c:497 util/grub-mount.c:505 -#, c-format -msgid "%s: error:" -msgstr "" - -#: grub-core/kern/emu/misc.c:176 -#, fuzzy, c-format -msgid "file `%s' is too big" -msgstr "'%s'ì˜ í¬ê¸°ê°€ 너무 í½ë‹ˆë‹¤." - -#: grub-core/kern/fs.c:120 -#, fuzzy -msgid "unknown filesystem" -msgstr "알 수 없는 íŒŒì¼ ì‹œìŠ¤í…œ" - -#: grub-core/kern/mips/arc/init.c:273 grub-core/kern/mips/loongson/init.c:301 -msgid "Shutdown failed" -msgstr "" - -#: grub-core/kern/mips/arc/init.c:285 -msgid "Exit failed" -msgstr "" - -#: grub-core/kern/misc.c:351 grub-core/kern/misc.c:408 include/grub/misc.h:269 -#: include/grub/misc.h:278 -msgid "overflow is detected" -msgstr "" - -#: grub-core/kern/partition.c:51 grub-core/partmap/bsdlabel.c:108 -#, c-format -msgid "Discarding improperly nested partition (%s,%s,%s%d)" -msgstr "" - -#: grub-core/kern/rescue_parser.c:73 util/grub-editenv.c:292 -#, fuzzy, c-format -msgid "Unknown command `%s'.\n" -msgstr "알 수 없는 추가ì ì¸ ì¸ìž ê°’ `%s'.\n" - -#: grub-core/lib/arg.c:31 -msgid "Display this help and exit." -msgstr "ì´ ë„움ë§ì„ ë³´ì´ê³  종료합니다." - -#: grub-core/lib/arg.c:33 -msgid "Display the usage of this command and exit." -msgstr "ì´ ëª…ë ¹ì˜ ì‚¬ìš©ë²•ì„ ë³´ì´ê³  종료합니다." - -#: grub-core/lib/arg.c:362 -#, c-format -msgid "missing mandatory option for `%s'" -msgstr "" - -#: grub-core/lib/arg.c:384 -#, c-format -msgid "the argument `%s' requires an integer" -msgstr "" - -#: grub-core/lib/arg.c:407 -#, c-format -msgid "" -"a value was assigned to the argument `%s' while it doesn't require an " -"argument" -msgstr "" - -#: grub-core/lib/backtrace.c:64 -#, fuzzy -msgid "Print backtrace." -msgstr "블럭 목ë¡ì„ 출력합니다." - -#: grub-core/lib/gnulib/argp-help.c:149 -#, c-format -msgid "ARGP_HELP_FMT: %s value is less than or equal to %s" -msgstr "" - -#: grub-core/lib/gnulib/argp-help.c:225 -#, c-format -msgid "%.*s: ARGP_HELP_FMT parameter requires a value" -msgstr "" - -#: grub-core/lib/gnulib/argp-help.c:235 -#, c-format -msgid "%.*s: Unknown ARGP_HELP_FMT parameter" -msgstr "" - -#: grub-core/lib/gnulib/argp-help.c:248 -#, c-format -msgid "Garbage in ARGP_HELP_FMT: %s" -msgstr "" - -#: grub-core/lib/gnulib/argp-help.c:1229 -msgid "" -"Mandatory or optional arguments to long options are also mandatory or " -"optional for any corresponding short options." -msgstr "" - -#: grub-core/lib/gnulib/argp-help.c:1620 -msgid " or: " -msgstr "" - -#: grub-core/lib/gnulib/argp-help.c:1632 -#, fuzzy -msgid " [OPTION...]" -msgstr "[옵션...]" - -#: grub-core/lib/gnulib/argp-help.c:1659 -#, fuzzy, c-format -msgid "Try '%s --help' or '%s --usage' for more information.\n" -msgstr "ë” ë§Žì€ ì •ë³´ë¥¼ 보려면 `%s --help' 하십시오.\n" - -#: grub-core/lib/gnulib/argp-help.c:1687 -#, c-format -msgid "Report bugs to %s.\n" -msgstr "" - -#: grub-core/lib/gnulib/argp-help.c:1888 grub-core/lib/gnulib/error.c:195 -#, fuzzy -msgid "Unknown system error" -msgstr "알 수 없는 íŒŒì¼ ì‹œìŠ¤í…œ" - -#: grub-core/lib/gnulib/argp-parse.c:81 -#, fuzzy -msgid "give this help list" -msgstr "ì´ ë„움ë§ì„ ë³´ì´ê³  종료합니다." - -#: grub-core/lib/gnulib/argp-parse.c:82 -msgid "give a short usage message" -msgstr "" - -#: grub-core/lib/gnulib/argp-parse.c:83 util/grub-mkfont.c:946 -msgid "NAME" -msgstr "" - -#: grub-core/lib/gnulib/argp-parse.c:84 -msgid "set the program name" -msgstr "" - -#: grub-core/lib/gnulib/argp-parse.c:86 -msgid "hang for SECS seconds (default 3600)" -msgstr "" - -#: grub-core/lib/gnulib/argp-parse.c:143 -msgid "print program version" -msgstr "" - -#: grub-core/lib/gnulib/argp-parse.c:160 -msgid "(PROGRAM ERROR) No version known!?" -msgstr "" - -#: grub-core/lib/gnulib/argp-parse.c:613 -#, c-format -msgid "%s: Too many arguments\n" -msgstr "" - -#: grub-core/lib/gnulib/argp-parse.c:759 -msgid "(PROGRAM ERROR) Option should have been recognized!?" -msgstr "" - -#: grub-core/lib/gnulib/getopt.c:278 -#, c-format -msgid "%s: option '%s%s' is ambiguous\n" -msgstr "" - -#: grub-core/lib/gnulib/getopt.c:284 -#, c-format -msgid "%s: option '%s%s' is ambiguous; possibilities:" -msgstr "" - -#: grub-core/lib/gnulib/getopt.c:319 -#, c-format -msgid "%s: unrecognized option '%s%s'\n" -msgstr "" - -#: grub-core/lib/gnulib/getopt.c:345 -#, c-format -msgid "%s: option '%s%s' doesn't allow an argument\n" -msgstr "" - -#: grub-core/lib/gnulib/getopt.c:360 -#, c-format -msgid "%s: option '%s%s' requires an argument\n" -msgstr "" - -#: grub-core/lib/gnulib/getopt.c:621 -#, c-format -msgid "%s: invalid option -- '%c'\n" -msgstr "" - -#: grub-core/lib/gnulib/getopt.c:636 grub-core/lib/gnulib/getopt.c:682 -#, c-format -msgid "%s: option requires an argument -- '%c'\n" -msgstr "" - -#: grub-core/lib/gnulib/openat-die.c:38 -#, c-format -msgid "unable to record current working directory" -msgstr "" - -#: grub-core/lib/gnulib/openat-die.c:57 -#, c-format -msgid "failed to return to initial working directory" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:135 grub-core/osdep/aros/hostdisk.c:523 -msgid "Success" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:138 -msgid "No match" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:141 -#, fuzzy -msgid "Invalid regular expression" -msgstr "표현ì‹ìœ¼ë¡œ í‰ê°€í•¨." - -#: grub-core/lib/gnulib/regcomp.c:144 -msgid "Invalid collation character" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:147 -msgid "Invalid character class name" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:150 -msgid "Trailing backslash" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:153 -msgid "Invalid back reference" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:156 -msgid "Unmatched [, [^, [:, [., or [=" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:159 -msgid "Unmatched ( or \\(" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:162 -msgid "Unmatched \\{" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:165 -msgid "Invalid content of \\{\\}" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:168 -msgid "Invalid range end" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:171 -msgid "Memory exhausted" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:174 -msgid "Invalid preceding regular expression" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:177 -msgid "Premature end of regular expression" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:180 -msgid "Regular expression too big" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:183 -msgid "Unmatched ) or \\)" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:531 -msgid "unknown regexp error" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:676 -msgid "No previous regular expression" -msgstr "" - -#: grub-core/lib/i386/halt.c:77 -msgid "GRUB doesn't know how to halt this machine yet!" -msgstr "" - -#: grub-core/lib/legacy_parse.c:75 -msgid "Default server is ${net_default_server}" -msgstr "" - -#: grub-core/lib/legacy_parse.c:844 grub-core/video/colors.c:296 -#: grub-core/video/colors.c:305 grub-core/video/colors.c:311 -#: grub-core/video/colors.c:327 util/render-label.c:84 util/render-label.c:98 -#, fuzzy, c-format -msgid "invalid color specification `%s'" -msgstr "유효하지 ì•Šì€ ë£¨íŠ¸ 장치 `%s'" - -#: grub-core/lib/mips/arc/reboot.c:32 grub-core/lib/mips/loongson/reboot.c:61 -msgid "Reboot failed" -msgstr "" - -#: grub-core/lib/random.c:113 -msgid "[LENGTH]" -msgstr "" - -#: grub-core/lib/random.c:114 -msgid "Hexdump random data." -msgstr "" - -#: grub-core/loader/arm/linux.c:242 -msgid "device tree must be supplied (see `devicetree' command)" -msgstr "" - -#: grub-core/loader/arm/linux.c:334 -msgid "invalid zImage" -msgstr "" - -#: grub-core/loader/arm/linux.c:450 grub-core/loader/efi/fdt.c:144 -#, fuzzy -msgid "invalid device tree" -msgstr "유효하지 ì•Šì€ ìž¥ì¹˜ `%s'.\n" - -#: grub-core/loader/arm/linux.c:493 grub-core/loader/arm64/linux.c:383 -#: grub-core/loader/i386/linux.c:1125 grub-core/loader/i386/pc/linux.c:479 -#: grub-core/loader/i386/xen.c:962 grub-core/loader/i386/xen.c:964 -#: grub-core/loader/ia64/efi/linux.c:591 grub-core/loader/mips/linux.c:501 -#: grub-core/loader/powerpc/ieee1275/linux.c:383 -#: grub-core/loader/riscv/linux.c:50 -#: grub-core/loader/sparc64/ieee1275/linux.c:511 -msgid "Load Linux." -msgstr "리눅스를 ì½ì–´ë“¤ìž…니다." - -#: grub-core/loader/arm/linux.c:495 grub-core/loader/arm64/linux.c:385 -#: grub-core/loader/i386/linux.c:1127 grub-core/loader/i386/pc/linux.c:482 -#: grub-core/loader/i386/xen.c:966 grub-core/loader/ia64/efi/linux.c:594 -#: grub-core/loader/mips/linux.c:503 -#: grub-core/loader/powerpc/ieee1275/linux.c:385 -#: grub-core/loader/riscv/linux.c:52 -#: grub-core/loader/sparc64/ieee1275/linux.c:513 -msgid "Load initrd." -msgstr "initrd를 ì½ì–´ë“¤ìž…니다." - -#. TRANSLATORS: DTB stands for device tree blob. -#: grub-core/loader/arm/linux.c:498 grub-core/loader/efi/fdt.c:169 -#, fuzzy -msgid "Load DTB file." -msgstr "XNU ì´ë¯¸ì§€ë¥¼ ì½ì–´ë“¤ìž…니다." - -#: grub-core/loader/arm64/linux.c:59 -msgid "" -"plain image kernel not supported - rebuild with CONFIG_(U)EFI_STUB enabled" -msgstr "" - -#: grub-core/loader/arm64/xen_boot.c:156 -msgid "failed to get FDT" -msgstr "" - -#: grub-core/loader/arm64/xen_boot.c:418 -msgid "you need to load the Xen Hypervisor first" -msgstr "" - -#: grub-core/loader/arm64/xen_boot.c:516 -msgid "Load a xen hypervisor." -msgstr "" - -#: grub-core/loader/arm64/xen_boot.c:519 -#, fuzzy -msgid "Load a xen module." -msgstr "multiboot ëª¨ë“ˆì„ ì½ì–´ë“¤ìž…니다." - -#: grub-core/loader/efi/appleloader.c:231 -#, fuzzy -msgid "[OPTS]" -msgstr "[옵션...]" - -#. TRANSLATORS: This command is used on EFI to -#. switch to BIOS mode and boot the OS requiring -#. BIOS. -#: grub-core/loader/efi/appleloader.c:235 -#, fuzzy -msgid "Boot BIOS-based system." -msgstr "레거시 ì‹œìŠ¤í…œì„ ë¶€íŒ…í•©ë‹ˆë‹¤." - -#: grub-core/loader/efi/chainloader.c:421 -#: grub-core/loader/i386/pc/chainloader.c:303 -msgid "Load another boot loader." -msgstr "ë˜ ë‹¤ë¥¸ 부트로ë”를 ì½ì–´ë“¤ìž…니다." - -#: grub-core/loader/i386/bsd.c:103 -msgid "Display output on all consoles." -msgstr "모든 콘솔ìƒì˜ ì¶œë ¥ì„ ë³´ìž…ë‹ˆë‹¤." - -#: grub-core/loader/i386/bsd.c:104 grub-core/loader/i386/bsd.c:138 -#: grub-core/loader/i386/bsd.c:171 -msgid "Use serial console." -msgstr "시리얼 ì½˜ì†”ì„ ì‚¬ìš©í•©ë‹ˆë‹¤." - -#: grub-core/loader/i386/bsd.c:105 grub-core/loader/i386/bsd.c:131 -#: grub-core/loader/i386/bsd.c:159 -msgid "Ask for file name to reboot from." -msgstr "재부팅할 파ì¼ëª…ì„ ë¬»ìŠµë‹ˆë‹¤." - -#: grub-core/loader/i386/bsd.c:106 -#, fuzzy -msgid "Use CD-ROM as root." -msgstr "루트사용ìžë¡œ CDROMì„ ì‚¬ìš©í•©ë‹ˆë‹¤." - -#: grub-core/loader/i386/bsd.c:107 -msgid "Invoke user configuration routing." -msgstr "ì‚¬ìš©ìž ì„¤ì • ë¼ìš°íŒ…ì„ í˜¸ì¶œí•©ë‹ˆë‹¤." - -#: grub-core/loader/i386/bsd.c:108 grub-core/loader/i386/bsd.c:135 -#: grub-core/loader/i386/bsd.c:162 -msgid "Enter in KDB on boot." -msgstr "부팅시 KDB 모드로 진입합니다." - -#: grub-core/loader/i386/bsd.c:109 -msgid "Use GDB remote debugger instead of DDB." -msgstr "DDB 대신 GDB ì›ê²© 디버거를 사용합니다." - -#: grub-core/loader/i386/bsd.c:110 -msgid "Disable all boot output." -msgstr "모든 부팅 메시지 ì¶œë ¥ì„ í•˜ì§€ 않습니다." - -#: grub-core/loader/i386/bsd.c:112 -msgid "Wait for keypress after every line of output." -msgstr "출력 행마다 키 ìž…ë ¥ì„ ê¸°ë‹¤ë¦½ë‹ˆë‹¤." - -#: grub-core/loader/i386/bsd.c:114 -#, fuzzy -msgid "Use compiled-in root device." -msgstr "compiled-in rootdev를 사용합니다." - -#: grub-core/loader/i386/bsd.c:115 grub-core/loader/i386/bsd.c:134 -#: grub-core/loader/i386/bsd.c:165 -msgid "Boot into single mode." -msgstr "ë‹¨ì¼ ëª¨ë“œë¡œ 부트합니다." - -#: grub-core/loader/i386/bsd.c:116 grub-core/loader/i386/bsd.c:166 -msgid "Boot with verbose messages." -msgstr "부팅시 ìžì„¸í•œ 메시지를 출력합니다." - -#: grub-core/loader/i386/bsd.c:132 grub-core/loader/i386/bsd.c:160 -msgid "Don't reboot, just halt." -msgstr "재부팅 하지 마십시오, 단지 중지만 시키십시오." - -#: grub-core/loader/i386/bsd.c:133 grub-core/loader/i386/bsd.c:161 -msgid "Change configured devices." -msgstr "êµ¬ì„±ëœ ìž¥ì¹˜ë¥¼ 변경합니다." - -#. TRANSLATORS: "com" is static and not to be translated. It refers to -#. serial ports e.g. com1. -#. -#: grub-core/loader/i386/bsd.c:142 -msgid "comUNIT[,SPEED]" -msgstr "" - -#: grub-core/loader/i386/bsd.c:157 -msgid "Disable SMP." -msgstr "SMP 비활성화." - -#: grub-core/loader/i386/bsd.c:158 -msgid "Disable ACPI." -msgstr "ACPI 비활성화." - -#: grub-core/loader/i386/bsd.c:164 -msgid "Don't display boot diagnostic messages." -msgstr "부트 진단 메시지를 ë³´ì´ì§€ 마십시요." - -#: grub-core/loader/i386/bsd.c:167 -msgid "Boot with debug messages." -msgstr "부팅시 디버그 메시지를 표시합니다." - -#: grub-core/loader/i386/bsd.c:168 -#, fuzzy -msgid "Suppress normal output (warnings remain)." -msgstr "ì¼ë°˜ 출력 메시지를 안보ì´ê²Œ 합니다( 경고는 남습니다)." - -#. TRANSLATORS: "com" is static and not to be translated. It refers to -#. serial ports e.g. com1. -#. -#: grub-core/loader/i386/bsd.c:175 -msgid "[ADDR|comUNIT][,SPEED]" -msgstr "" - -#: grub-core/loader/i386/bsd.c:489 grub-core/loader/i386/bsd.c:555 -msgid "name" -msgstr "" - -#: grub-core/loader/i386/bsd.c:489 grub-core/loader/i386/bsd.c:555 -msgid "type" -msgstr "" - -#: grub-core/loader/i386/bsd.c:489 grub-core/loader/i386/bsd.c:555 -msgid "addr" -msgstr "" - -#: grub-core/loader/i386/bsd.c:490 grub-core/loader/i386/bsd.c:556 -msgid "size" -msgstr "" - -#: grub-core/loader/i386/bsd.c:1147 grub-core/loader/i386/linux.c:466 -#: grub-core/loader/i386/xnu.c:1030 -#, fuzzy -msgid "Booting in blind mode" -msgstr "ë‹¨ì¼ ëª¨ë“œë¡œ 부트합니다." - -#: grub-core/loader/i386/bsd.c:2137 -msgid "Load kernel of FreeBSD." -msgstr "FreeBSD 커ë„ì„ ì½ì–´ë“¤ìž…니다." - -#: grub-core/loader/i386/bsd.c:2140 -msgid "Load kernel of OpenBSD." -msgstr "OpenBSD 커ë„ì„ ì½ì–´ë“¤ìž…니다." - -#: grub-core/loader/i386/bsd.c:2143 -msgid "Load kernel of NetBSD." -msgstr "NetBSD 커ë„ì„ ì½ì–´ë“¤ìž…니다." - -#: grub-core/loader/i386/bsd.c:2147 -msgid "Load FreeBSD env." -msgstr "FreeBSD env를 ì½ì–´ë“¤ìž…니다." - -#: grub-core/loader/i386/bsd.c:2150 -msgid "Load FreeBSD kernel module." -msgstr "FreeBSD ì»¤ë„ ëª¨ë“ˆì„ ì½ì–´ë“¤ìž…니다." - -#: grub-core/loader/i386/bsd.c:2153 -#, fuzzy -msgid "Load NetBSD kernel module." -msgstr "FreeBSD ì»¤ë„ ëª¨ë“ˆì„ ì½ì–´ë“¤ìž…니다." - -#: grub-core/loader/i386/bsd.c:2156 -#, fuzzy -msgid "Load NetBSD kernel module (ELF)." -msgstr "FreeBSD ì»¤ë„ ëª¨ë“ˆì„ (ELF) ì½ì–´ë“¤ìž…니다." - -#: grub-core/loader/i386/bsd.c:2159 -msgid "Load FreeBSD kernel module (ELF)." -msgstr "FreeBSD ì»¤ë„ ëª¨ë“ˆì„ (ELF) ì½ì–´ë“¤ìž…니다." - -#. TRANSLATORS: ramdisk isn't identifier, -#. it can be translated. -#: grub-core/loader/i386/bsd.c:2165 -#, fuzzy -msgid "Load kOpenBSD ramdisk." -msgstr "OpenBSD 커ë„ì„ ì½ì–´ë“¤ìž…니다." - -#. TRANSLATORS: "payload" is a term used -#. by coreboot and must be translated in -#. sync with coreboot. If unsure, -#. let it untranslated. -#: grub-core/loader/i386/coreboot/chainloader.c:510 -#, fuzzy -msgid "Load another coreboot payload" -msgstr "ë˜ ë‹¤ë¥¸ 부트로ë”를 ì½ì–´ë“¤ìž…니다." - -#: grub-core/loader/i386/linux.c:876 -msgid "Legacy `ask' parameter no longer supported." -msgstr "" - -#: grub-core/loader/i386/linux.c:892 grub-core/loader/i386/linux.c:902 -#: grub-core/loader/i386/linux.c:932 -#, c-format -msgid "%s is deprecated. Use set gfxpayload=%s before linux command instead.\n" -msgstr "" - -#. TRANSLATORS: "x" has to be entered in, like an identifier, -#. so please don't use better Unicode codepoints. -#: grub-core/loader/i386/linux.c:915 -#, c-format -msgid "" -"%s is deprecated. VGA mode %d isn't recognized. Use set " -"gfxpayload=WIDTHxHEIGHT[xDEPTH] before linux command instead.\n" -msgstr "" - -#: grub-core/loader/i386/pc/chainloader.c:302 -msgid "[--force|--bpb] FILE" -msgstr "" - -#: grub-core/loader/i386/pc/freedos.c:148 util/setup.c:293 -#, c-format -msgid "the size of `%s' is too large" -msgstr "'%s'ì˜ í¬ê¸°ê°€ 너무 í½ë‹ˆë‹¤." - -#: grub-core/loader/i386/pc/freedos.c:183 -#, fuzzy -msgid "Load FreeDOS kernel.sys." -msgstr "FreeBSD ì»¤ë„ ëª¨ë“ˆì„ ì½ì–´ë“¤ìž…니다." - -#: grub-core/loader/i386/pc/ntldr.c:155 -msgid "Load NTLDR or BootMGR." -msgstr "" - -#. TRANSLATORS: it's about guessing which GRUB disk -#. is which Plan9 disk. If your language has no -#. word "mapping" you can use another word which -#. means that the GRUBDEVICE and PLAN9DEVICE are -#. actually the same device, just named differently -#. in OS and GRUB. -#: grub-core/loader/i386/pc/plan9.c:59 -msgid "Override guessed mapping of Plan9 devices." -msgstr "" - -#: grub-core/loader/i386/pc/plan9.c:60 -msgid "GRUBDEVICE=PLAN9DEVICE" -msgstr "" - -#: grub-core/loader/i386/pc/plan9.c:599 -msgid "KERNEL ARGS" -msgstr "" - -#: grub-core/loader/i386/pc/plan9.c:599 -#, fuzzy -msgid "Load Plan9 kernel." -msgstr "multiboot 커ë„ì„ ì½ì–´ë“¤ìž…니다." - -#: grub-core/loader/i386/pc/pxechainloader.c:161 -#, fuzzy -msgid "Load a PXE image." -msgstr "XNU ì´ë¯¸ì§€ë¥¼ ì½ì–´ë“¤ìž…니다." - -#: grub-core/loader/i386/pc/truecrypt.c:226 -msgid "Load Truecrypt ISO." -msgstr "" - -#: grub-core/loader/i386/xen.c:781 grub-core/loader/i386/xen.c:865 -msgid "initrd already loaded" -msgstr "" - -#: grub-core/loader/i386/xen.c:968 -#, fuzzy -msgid "Load module." -msgstr "ëª¨ë“ˆì„ ì œê±°í•©ë‹ˆë‹¤." - -#: grub-core/loader/i386/xnu.c:1003 -#, fuzzy -msgid "Press any key to launch xnu" -msgstr "계ì†í•˜ë ¤ë©´ 아무 키나 누르십시오..." - -#. TRANSLATORS: `device-properties' -#. is a variable name, -#. not a program. -#: grub-core/loader/i386/xnu.c:1159 -#, fuzzy -msgid "Load `device-properties' dump." -msgstr "device-properties ë¤í”„를 ì½ì–´ë“¤ìž…니다." - -#: grub-core/loader/ia64/efi/linux.c:124 -msgid "Could not locate FPSWA driver" -msgstr "" - -#: grub-core/loader/ia64/efi/linux.c:132 -msgid "FPSWA protocol wasn't able to find the interface" -msgstr "" - -#: grub-core/loader/ia64/efi/linux.c:580 -msgid "No FPSWA found" -msgstr "" - -#: grub-core/loader/ia64/efi/linux.c:582 -#, c-format -msgid "FPSWA revision: %x\n" -msgstr "" - -#: grub-core/loader/ia64/efi/linux.c:591 -msgid "FILE [ARGS...]" -msgstr "" - -#: grub-core/loader/ia64/efi/linux.c:597 -msgid "Display FPSWA version." -msgstr "" - -#: grub-core/loader/multiboot.c:248 -msgid "WARNING: no console will be available to OS" -msgstr "" - -#: grub-core/loader/multiboot.c:450 -msgid "Load a multiboot 2 kernel." -msgstr "multiboot 2 커ë„ì„ ì½ì–´ë“¤ìž…니다." - -#: grub-core/loader/multiboot.c:453 -msgid "Load a multiboot 2 module." -msgstr "멀티부트 2 ëª¨ë“ˆì„ ë¶ˆëŸ¬ì˜µë‹ˆë‹¤." - -#: grub-core/loader/multiboot.c:456 -msgid "Load a multiboot kernel." -msgstr "multiboot 커ë„ì„ ì½ì–´ë“¤ìž…니다." - -#: grub-core/loader/multiboot.c:459 -msgid "Load a multiboot module." -msgstr "multiboot ëª¨ë“ˆì„ ì½ì–´ë“¤ìž…니다." - -#: grub-core/loader/riscv/linux.c:30 grub-core/loader/riscv/linux.c:40 -msgid "Linux not supported yet" -msgstr "" - -#: grub-core/loader/xnu.c:1416 grub-core/term/gfxterm_background.c:45 -msgid "Background image mode." -msgstr "" - -#. TRANSLATORS: This refers to background image mode (stretched or -#. in left-top corner). Note that GRUB will accept only original -#. keywords stretch and normal, not the translated ones. -#. So please put both in translation -#. e.g. stretch(=%STRETCH%)|normal(=%NORMAL%). -#. The percents mark the translated version. Since many people -#. may not know the word stretch or normal I recommend -#. putting the translation either here or in "Background image mode." -#. string. -#: grub-core/loader/xnu.c:1416 grub-core/term/gfxterm_background.c:55 -msgid "stretch|normal" -msgstr "" - -#: grub-core/loader/xnu.c:1482 -msgid "Load XNU image." -msgstr "XNU ì´ë¯¸ì§€ë¥¼ ì½ì–´ë“¤ìž…니다." - -#: grub-core/loader/xnu.c:1484 -msgid "Load 64-bit XNU image." -msgstr "64-bit XNU ì´ë¯¸ì§€ë¥¼ ì½ì–´ë“¤ìž…니다." - -#: grub-core/loader/xnu.c:1486 -msgid "Load XNU extension package." -msgstr "XNU 확장 패키지를 ì½ì–´ë“¤ìž…니다." - -#: grub-core/loader/xnu.c:1488 -msgid "Load XNU extension." -msgstr "XNU í™•ìž¥íŒ©ì„ ì½ì–´ë“¤ìž…니다." - -#. TRANSLATORS: OSBundleRequired is a -#. variable name in xnu extensions -#. manifests. It behaves mostly like -#. GNU/Linux runlevels. -#. -#: grub-core/loader/xnu.c:1495 -msgid "DIRECTORY [OSBundleRequired]" -msgstr "디렉터리 [OS요구번들]" - -#. TRANSLATORS: There are many extensions -#. in extension directory. -#: grub-core/loader/xnu.c:1498 -msgid "Load XNU extension directory." -msgstr "XNU 확장 디렉터리를 ì½ì–´ë“¤ìž…니다." - -#. TRANSLATORS: ramdisk here isn't identifier. It can be translated. -#: grub-core/loader/xnu.c:1501 -msgid "Load XNU ramdisk. It will be available in OS as md0." -msgstr "" - -#: grub-core/loader/xnu.c:1505 -msgid "Load a splash image for XNU." -msgstr "XNUì˜ ìŠ¤í”Œëž˜ì‹œ 화면ì´ë¯¸ì§€ë¥¼ ì½ì–´ë“¤ìž…니다." - -#: grub-core/loader/xnu.c:1510 -#, fuzzy -msgid "Load an image of hibernated XNU." -msgstr "XNUì˜ ìŠ¤í”Œëž˜ì‹œ 화면ì´ë¯¸ì§€ë¥¼ ì½ì–´ë“¤ìž…니다." - -#: grub-core/mmap/mmap.c:538 -msgid "ADDR1,MASK1[,ADDR2,MASK2[,...]]" -msgstr "" - -#: grub-core/mmap/mmap.c:539 -msgid "Declare memory regions as faulty (badram)." -msgstr "" - -#: grub-core/mmap/mmap.c:541 -msgid "FROM[K|M|G] TO[K|M|G]" -msgstr "" - -#: grub-core/mmap/mmap.c:542 -msgid "Remove any memory regions in specified range." -msgstr "" - -#: grub-core/net/bootp.c:653 -msgid "four arguments expected" -msgstr "" - -#: grub-core/net/bootp.c:661 grub-core/net/net.c:1155 -#, c-format -msgid "unrecognised network interface `%s'" -msgstr "" - -#: grub-core/net/bootp.c:664 -msgid "no DHCP info found" -msgstr "" - -#: grub-core/net/bootp.c:674 -#, fuzzy -msgid "no DHCP options found" -msgstr "ë„스 ë°©ì‹ì˜ íŒŒí‹°ì…˜ì´ ë°œê²¬ë˜ì§€ 않았습니다." - -#: grub-core/net/bootp.c:682 -msgid "invalid DHCP option code" -msgstr "" - -#: grub-core/net/bootp.c:686 -#, fuzzy, c-format -msgid "no DHCP option %u found" -msgstr "ë„스 ë°©ì‹ì˜ íŒŒí‹°ì…˜ì´ ë°œê²¬ë˜ì§€ 않았습니다." - -#: grub-core/net/bootp.c:743 -#, c-format -msgid "unrecognised DHCP option format specification `%s'" -msgstr "" - -#: grub-core/net/bootp.c:767 -msgid "no network card found" -msgstr "" - -#: grub-core/net/bootp.c:859 grub-core/net/net.c:389 -#, c-format -msgid "couldn't autoconfigure %s" -msgstr "" - -#: grub-core/net/bootp.c:873 grub-core/net/bootp.c:876 -msgid "[CARD]" -msgstr "" - -#: grub-core/net/bootp.c:874 -msgid "perform a bootp autoconfiguration" -msgstr "" - -#: grub-core/net/bootp.c:877 -msgid "perform a DHCP autoconfiguration" -msgstr "" - -#: grub-core/net/bootp.c:879 -msgid "VAR INTERFACE NUMBER DESCRIPTION" -msgstr "" - -#: grub-core/net/bootp.c:880 -msgid "" -"retrieve DHCP option and save it into VAR. If VAR is - then print the value." -msgstr "" - -#: grub-core/net/dns.c:459 -msgid "no DNS servers configured" -msgstr "" - -#: grub-core/net/dns.c:522 -msgid "domain name component is too long" -msgstr "" - -#: grub-core/net/dns.c:618 grub-core/net/dns.c:666 -msgid "no DNS record found" -msgstr "" - -#: grub-core/net/dns.c:626 -msgid "no DNS reply received" -msgstr "" - -#: grub-core/net/dns.c:682 -msgid "only ipv4" -msgstr "" - -#: grub-core/net/dns.c:686 -msgid "only ipv6" -msgstr "" - -#: grub-core/net/dns.c:690 -msgid "prefer ipv4" -msgstr "" - -#: grub-core/net/dns.c:694 -msgid "prefer ipv6" -msgstr "" - -#: grub-core/net/dns.c:759 -msgid "ADDRESS DNSSERVER" -msgstr "" - -#: grub-core/net/dns.c:760 -msgid "Perform a DNS lookup" -msgstr "" - -#: grub-core/net/dns.c:762 grub-core/net/dns.c:765 -msgid "DNSSERVER" -msgstr "" - -#: grub-core/net/dns.c:763 -msgid "Add a DNS server" -msgstr "" - -#: grub-core/net/dns.c:766 -msgid "Remove a DNS server" -msgstr "" - -#: grub-core/net/dns.c:768 -#, fuzzy -msgid "List DNS servers" -msgstr "PCI 장치를 열거합니다." - -#: grub-core/net/drivers/efi/efinet.c:49 grub-core/net/drivers/efi/efinet.c:65 -#: grub-core/net/drivers/efi/efinet.c:77 grub-core/net/drivers/emu/emunet.c:62 -#: grub-core/net/drivers/i386/pc/pxe.c:273 -#: grub-core/net/drivers/ieee1275/ofnet.c:75 -#: grub-core/net/drivers/uboot/ubootnet.c:62 -msgid "couldn't send network packet" -msgstr "" - -#: grub-core/net/drivers/ieee1275/ofnet.c:326 -#: grub-core/net/drivers/ieee1275/ofnet.c:359 -msgid "interpret is not supported" -msgstr "" - -#: grub-core/net/drivers/ieee1275/ofnet.c:336 -msgid "alloc-mem failed" -msgstr "" - -#: grub-core/net/drivers/ieee1275/ofnet.c:370 -msgid "free-mem failed" -msgstr "" - -#: grub-core/net/http.c:105 -msgid "unsupported HTTP response" -msgstr "" - -#. TRANSLATORS: GRUB HTTP code is pretty young. So even perfectly -#. valid answers like 403 will trigger this very generic message. -#: grub-core/net/http.c:126 -#, c-format -msgid "unsupported HTTP error %d: %s" -msgstr "" - -#: grub-core/net/http.c:429 grub-core/net/tftp.c:420 -#, fuzzy, c-format -msgid "time out opening `%s'" -msgstr "'%s'ì„(를) ì—´ 수 없습니다." - -#: grub-core/net/net.c:179 -msgid "timeout: could not resolve hardware address" -msgstr "" - -#: grub-core/net/net.c:548 -#, c-format -msgid "unresolvable address %s" -msgstr "" - -#: grub-core/net/net.c:594 -#, c-format -msgid "unrecognised network address `%s'" -msgstr "" - -#: grub-core/net/net.c:661 -msgid "destination unreachable" -msgstr "" - -#. TRANSLATORS: route loop is a condition when e.g. -#. to contact server A you need to go through B -#. and to contact B you need to go through A. -#: grub-core/net/net.c:684 -msgid "route loop detected" -msgstr "" - -#: grub-core/net/net.c:700 -msgid "address not found" -msgstr "" - -#: grub-core/net/net.c:704 -msgid "you can't delete this address" -msgstr "" - -#: grub-core/net/net.c:776 grub-core/net/net.c:792 -#, c-format -msgid "Unsupported hw address type %d\n" -msgstr "" - -#: grub-core/net/net.c:813 -#, c-format -msgid "Unsupported address type %d\n" -msgstr "" - -#: grub-core/net/net.c:1017 grub-core/net/net.c:1131 -msgid "three arguments expected" -msgstr "" - -#: grub-core/net/net.c:1023 -msgid "card not found" -msgstr "" - -#. TRANSLATORS: it refers to the network address. -#: grub-core/net/net.c:1167 -msgid "temporary" -msgstr "" - -#: grub-core/net/net.c:1190 -#, fuzzy, c-format -msgid "Unknown address type %d\n" -msgstr "알 수 없는 íŒŒì¼ ì‹œìŠ¤í…œ" - -#: grub-core/net/net.c:1298 -#, fuzzy -msgid "no server is specified" -msgstr "알려진 장치가 ì—†ìŒ.\n" - -#: grub-core/net/net.c:1637 -#, c-format -msgid "timeout reading `%s'" -msgstr "" - -#. TRANSLATORS: HWADDRESS stands for -#. "hardware address". -#: grub-core/net/net.c:1762 -msgid "SHORTNAME CARD ADDRESS [HWADDRESS]" -msgstr "" - -#: grub-core/net/net.c:1763 -msgid "Add a network address." -msgstr "" - -#: grub-core/net/net.c:1766 -msgid "[CARD [HWADDRESS]]" -msgstr "" - -#: grub-core/net/net.c:1767 -msgid "Perform an IPV6 autoconfiguration" -msgstr "" - -#: grub-core/net/net.c:1770 grub-core/net/net.c:1777 -msgid "SHORTNAME" -msgstr "" - -#: grub-core/net/net.c:1771 -#, fuzzy -msgid "Delete a network address." -msgstr "시리얼 í¬íЏ 주소를 정합니다." - -#. TRANSLATORS: "gw" is a keyword. -#: grub-core/net/net.c:1774 -msgid "SHORTNAME NET [INTERFACE| gw GATEWAY]" -msgstr "" - -#: grub-core/net/net.c:1775 -msgid "Add a network route." -msgstr "" - -#: grub-core/net/net.c:1778 -msgid "Delete a network route." -msgstr "" - -#: grub-core/net/net.c:1780 -msgid "list network routes" -msgstr "" - -#: grub-core/net/net.c:1782 -msgid "list network cards" -msgstr "" - -#: grub-core/net/net.c:1784 -msgid "list network addresses" -msgstr "" - -#: grub-core/net/tcp.c:681 -msgid "connection refused" -msgstr "" - -#: grub-core/net/tcp.c:684 -msgid "connection timeout" -msgstr "" - -#: grub-core/normal/auth.c:220 -msgid "Enter username: " -msgstr "ì‚¬ìš©ìž ì´ë¦„ì„ ìž…ë ¥í•˜ì‹­ì‹œì˜¤: " - -#: grub-core/normal/auth.c:269 -msgid "[USERLIST]" -msgstr "" - -#: grub-core/normal/auth.c:270 -msgid "Check whether user is in USERLIST." -msgstr "" - -#: grub-core/normal/cmdline.c:174 grub-core/normal/menu_entry.c:1068 -msgid "Possible commands are:" -msgstr "가능한 명령ì€:" - -#: grub-core/normal/cmdline.c:177 grub-core/normal/menu_entry.c:1072 -msgid "Possible devices are:" -msgstr "가능한 장치는:" - -#: grub-core/normal/cmdline.c:180 grub-core/normal/menu_entry.c:1076 -msgid "Possible files are:" -msgstr "가능한 파ì¼ì€:" - -#: grub-core/normal/cmdline.c:183 grub-core/normal/menu_entry.c:1080 -msgid "Possible partitions are:" -msgstr "가능한 파티션ì€:" - -#: grub-core/normal/cmdline.c:186 grub-core/normal/menu_entry.c:1084 -msgid "Possible arguments are:" -msgstr "가능한 ì¸ìžê°’ì€:" - -#. TRANSLATORS: this message is used if none of above matches. -#. This shouldn't happen but please use the general term for -#. "thing" or "object". -#: grub-core/normal/cmdline.c:192 grub-core/normal/menu_entry.c:1088 -msgid "Possible things are:" -msgstr "가능한 것ì€:" - -#: grub-core/normal/color.c:81 -#, c-format -msgid "Warning: syntax error (missing slash) in `%s'\n" -msgstr "경고: 문법 ì—러 (슬레쉬 ì—†ìŒ) `%s'\n" - -#: grub-core/normal/color.c:90 -#, c-format -msgid "Warning: invalid foreground color `%s'\n" -msgstr "경고: ìž˜ëª»ëœ ì „ê²½ 색 `%s'\n" - -#: grub-core/normal/color.c:96 -#, c-format -msgid "Warning: invalid background color `%s'\n" -msgstr "경고: ìž˜ëª»ëœ ë°°ê²½ 색 `%s'\n" - -#: grub-core/normal/context.c:206 -msgid "ENVVAR [ENVVAR] ..." -msgstr "" - -#: grub-core/normal/context.c:207 -#, fuzzy -msgid "Export variables." -msgstr "v1 í…Œì´ë¸”ì„ ë³´ì—¬ì¤ë‹ˆë‹¤." - -#: grub-core/normal/datetime.c:25 -msgid "Sunday" -msgstr "" - -#: grub-core/normal/datetime.c:26 -msgid "Monday" -msgstr "" - -#: grub-core/normal/datetime.c:27 -msgid "Tuesday" -msgstr "" - -#: grub-core/normal/datetime.c:28 -msgid "Wednesday" -msgstr "" - -#: grub-core/normal/datetime.c:29 -msgid "Thursday" -msgstr "" - -#: grub-core/normal/datetime.c:30 -msgid "Friday" -msgstr "" - -#: grub-core/normal/datetime.c:31 -msgid "Saturday" -msgstr "" - -#: grub-core/normal/dyncmd.c:187 -#, fuzzy -msgid "module isn't loaded" -msgstr "로드 안ë¨." - -#: grub-core/normal/main.c:211 -#, c-format -msgid "GNU GRUB version %s" -msgstr "GNU GRUB 버전 %s" - -#: grub-core/normal/main.c:360 -msgid "ESC at any time exits." -msgstr "ESC 언제든지 종료합니다." - -#: grub-core/normal/main.c:363 -#, c-format -msgid "" -"Minimal BASH-like line editing is supported. For the first word, TAB lists " -"possible command completions. Anywhere else TAB lists possible device or " -"file completions. %s" -msgstr "" -"ìµœì†Œí•œì˜ BASH í˜•íƒœì˜ ë¼ì¸ íŽ¸ì§‘ì„ ì§€ì›í•©ë‹ˆë‹¤. TABì„ ëˆ„ë¥´ì‹œë©´ 사용 가능한 명령" -"ì–´ 목ë¡ì„ 표시합니다. 장치나 파ì¼ë„ 마찬가지로 ì–´ëŠ ê³³ì—서든지 TABì„ í†µí•´ 목" -"ë¡ì„ 보실 수 있습니다. %s" - -#. TRANSLATORS: it's command line prompt. -#: grub-core/normal/main.c:395 -msgid ">" -msgstr "" - -#. TRANSLATORS: it's command line prompt. -#: grub-core/normal/main.c:398 -msgid "grub>" -msgstr "" - -#: grub-core/normal/main.c:518 -msgid "Clear the screen." -msgstr "í™”ë©´ì„ ì§€ì›ë‹ˆë‹¤." - -#: grub-core/normal/main.c:527 -msgid "Enter normal mode." -msgstr "ì¼ë°˜ ëª¨ë“œì— ì§„ìž…í•©ë‹ˆë‹¤." - -#: grub-core/normal/main.c:529 -msgid "Exit from normal mode." -msgstr "ì¼ë°˜ 모드ì—서 나갑니다." - -#: grub-core/normal/menu.c:66 grub-core/normal/menu_entry.c:1449 -msgid "Press any key to continue..." -msgstr "계ì†í•˜ë ¤ë©´ 아무 키나 누르십시오..." - -#: grub-core/normal/menu.c:815 -#, c-format -msgid "Booting `%s'" -msgstr "" - -#: grub-core/normal/menu.c:827 -#, c-format -msgid "Falling back to `%s'" -msgstr "" - -#: grub-core/normal/menu.c:843 -msgid "Failed to boot both default and fallback entries.\n" -msgstr "" - -#: grub-core/normal/menu_entry.c:1171 -msgid "Booting a command list" -msgstr "ëª…ë ¹í–‰ì„ ë¶€íŒ…" - -#: grub-core/normal/menu_text.c:160 -#, fuzzy -msgid "" -"Minimum Emacs-like screen editing is supported. TAB lists completions. Press " -"Ctrl-x or F10 to boot, Ctrl-c or F2 for a command-line or ESC to discard " -"edits and return to the GRUB menu." -msgstr "" -"ì´ë§¥ìŠ¤ì™€ ê°™ì€ íŽ¸ì§‘ ê¸°ëŠ¥ì„ ìµœì†Œí•œìœ¼ë¡œ ì§€ì›í•©ë‹ˆë‹¤. íƒ­ì€ ì™„ì„± ê¸°ëŠ¥ì„ ì§€ì›í•©ë‹ˆ" -"다. F1ì€ ë¶€íŒ…, F2=Ctrl-a, F3=Ctrl-e, F4는 명령행 ë˜ëŠ” ESC는 현재 편집한 ê²ƒì„ " -"취소하고 GRUB으로 ë˜ëŒì•„갑니다." - -#: grub-core/normal/menu_text.c:170 -#, fuzzy, c-format -msgid "Use the %C and %C keys to select which entry is highlighted." -msgstr "%C ë° %C 키를 ì´ìš©í•˜ì—¬ ì›í•˜ëŠ” í•­ëª©ì´ ë°ê²Œ 표시ë˜ë„ë¡ ì„ íƒí•˜ì‹­ì‹œì˜¤.\n" - -#. TRANSLATORS: that's the list of binary unit prefixes. -#: grub-core/normal/misc.c:38 -msgid "B" -msgstr "" - -#: grub-core/normal/misc.c:38 -msgid "KiB" -msgstr "" - -#: grub-core/normal/misc.c:38 -msgid "MiB" -msgstr "" - -#: grub-core/normal/misc.c:38 -msgid "GiB" -msgstr "" - -#: grub-core/normal/misc.c:38 -msgid "TiB" -msgstr "" - -#: grub-core/normal/misc.c:38 -msgid "PiB" -msgstr "" - -#. TRANSLATORS: that's the list of binary unit prefixes. -#: grub-core/normal/misc.c:40 -msgid "K" -msgstr "" - -#: grub-core/normal/misc.c:40 -msgid "M" -msgstr "" - -#: grub-core/normal/misc.c:40 -msgid "G" -msgstr "" - -#: grub-core/normal/misc.c:40 -msgid "T" -msgstr "" - -#: grub-core/normal/misc.c:40 -msgid "P" -msgstr "" - -#. TRANSLATORS: that's the list of binary unit prefixes. -#: grub-core/normal/misc.c:42 -msgid "B/s" -msgstr "" - -#: grub-core/normal/misc.c:42 -msgid "KiB/s" -msgstr "" - -#: grub-core/normal/misc.c:42 -msgid "MiB/s" -msgstr "" - -#: grub-core/normal/misc.c:42 -msgid "GiB/s" -msgstr "" - -#: grub-core/normal/misc.c:42 -msgid "TiB/s" -msgstr "" - -#: grub-core/normal/misc.c:42 -msgid "PiB/s" -msgstr "" - -#: grub-core/normal/misc.c:96 -#, c-format -msgid "Partition %s:" -msgstr "파티션 %s:" - -#: grub-core/normal/misc.c:101 -#, c-format -msgid "Device %s:" -msgstr "장치 %s:" - -#: grub-core/normal/misc.c:107 -msgid "Filesystem cannot be accessed" -msgstr "íŒŒì¼ ì‹œìŠ¤í…œì— ì ‘ê·¼í•  수 없습니다." - -#: grub-core/normal/misc.c:121 -#, c-format -msgid "Filesystem type %s" -msgstr "íŒŒì¼ ì‹œìŠ¤í…œ 종류 %s" - -#: grub-core/normal/misc.c:131 -#, fuzzy, c-format -msgid "- Label `%s'" -msgstr "- ë ˆì´ë¸” \"%s\"" - -#. TRANSLATORS: Arguments are year, month, day, hour, minute, -#. second, day of the week (translated). -#: grub-core/normal/misc.c:148 -#, c-format -msgid "- Last modification time %d-%02d-%02d %02d:%02d:%02d %s" -msgstr "- 마지막으로 ìˆ˜ì •ëœ ì‹œê°„ %d-%02d-%02d %02d:%02d:%02d %s" - -#: grub-core/normal/misc.c:171 -#, fuzzy -msgid "No known filesystem detected" -msgstr "알 수 없는 íŒŒì¼ ì‹œìŠ¤í…œ" - -#: grub-core/normal/misc.c:174 -#, c-format -msgid " - Partition start at %llu%sKiB" -msgstr "" - -#: grub-core/normal/misc.c:178 -#, c-format -msgid " - Sector size %uB" -msgstr "" - -#: grub-core/normal/misc.c:180 -msgid " - Total size unknown" -msgstr "" - -#: grub-core/normal/misc.c:182 -#, c-format -msgid " - Total size %llu%sKiB" -msgstr "" - -#. TRANSLATORS: Replace dot with appropriate decimal separator for -#. your language. -#: grub-core/normal/misc.c:186 -msgid ".5" -msgstr "" - -#. TRANSLATORS: This has to fit on one line. It's ok to include few -#. words but don't write poems. -#: grub-core/normal/term.c:82 -msgid "--MORE--" -msgstr "" - -#: grub-core/osdep/aros/config.c:92 grub-core/osdep/unix/config.c:137 -#: grub-core/osdep/windows/config.c:55 -#, c-format -msgid "cannot open configuration file `%s': %s" -msgstr "" - -#: grub-core/osdep/basic/compress.c:8 grub-core/osdep/basic/compress.c:14 -#: grub-core/osdep/basic/compress.c:20 -msgid "no compression is available for your platform" -msgstr "" - -#: grub-core/osdep/basic/no_platform.c:30 -#: grub-core/osdep/windows/platform.c:418 -msgid "no IEEE1275 routines are available for your platform" -msgstr "" - -#: grub-core/osdep/basic/no_platform.c:38 -msgid "no EFI routines are available for your platform" -msgstr "" - -#: grub-core/osdep/basic/no_platform.c:45 -#: grub-core/osdep/windows/platform.c:425 -msgid "no SGI routines are available for your platform" -msgstr "" - -#. TRANSLATORS: The OS itself may very well have a random -#. number generator but GRUB doesn't know how to access it. -#: grub-core/osdep/basic/random.c:42 -msgid "no random number generator is available for your OS" -msgstr "" - -#: grub-core/osdep/devmapper/getroot.c:81 -msgid "Failed to create `device-mapper' tree" -msgstr "" - -#: grub-core/osdep/devmapper/getroot.c:197 -#: grub-core/osdep/freebsd/getroot.c:202 -#, c-format -msgid "can't mount encrypted volume `%s': %s" -msgstr "" - -#. TRANSLATORS: geom is the name of (k)FreeBSD device framework. -#. Usually left untranslated. -#. -#: grub-core/osdep/freebsd/getroot.c:82 grub-core/osdep/freebsd/getroot.c:164 -#: grub-core/osdep/freebsd/getroot.c:258 grub-core/osdep/freebsd/getroot.c:316 -msgid "couldn't open geom" -msgstr "" - -#: grub-core/osdep/freebsd/getroot.c:182 grub-core/osdep/freebsd/getroot.c:277 -msgid "couldn't find geli consumer" -msgstr "" - -#: grub-core/osdep/freebsd/getroot.c:282 -msgid "couldn't retrieve geli UUID" -msgstr "" - -#. TRANSLATORS: geom is the name of (k)FreeBSD device framework. -#. Usually left untranslated. "part" is the identifier of one of its -#. classes. -#: grub-core/osdep/freebsd/getroot.c:325 -msgid "couldn't find geom `part' class" -msgstr "" - -#: grub-core/osdep/freebsd/hostdisk.c:72 grub-core/osdep/linux/hostdisk.c:93 -#, fuzzy -msgid "unaligned device size" -msgstr "유효하지 ì•Šì€ ìž¥ì¹˜ `%s'.\n" - -#: grub-core/osdep/generic/blocklist.c:56 -#, c-format -msgid "attempting to read the core image `%s' from GRUB" -msgstr "GRUBì˜ `%s' 코어 ì´ë¯¸ì§€ ì½ê¸°ë¥¼ 시ë„합니다" - -#: grub-core/osdep/generic/blocklist.c:57 -#, c-format -msgid "attempting to read the core image `%s' from GRUB again" -msgstr "다시한번 GRUBì˜ `%s' 코어 ì´ë¯¸ì§€ ì½ê¸°ë¥¼ 시ë„합니다" - -#: grub-core/osdep/generic/blocklist.c:115 -#, c-format -msgid "cannot read `%s' correctly" -msgstr "올바르게 `%s'ì„(를) ì½ì„ 수 없습니다" - -#: grub-core/osdep/generic/blocklist.c:126 -#, fuzzy -msgid "failed to read the sectors of the core image" -msgstr "코어 ì´ë¯¸ì§€ì˜ 나머지 섹터 부분ì½ê¸°ì— 실패 했습니다" - -#. TRANSLATORS: On GNU/Hurd, a "translator" is similar to a filesystem -#. mount, but handled by a userland daemon, whose invocation command line -#. is being fetched here. First %s is the file being looked at (for which -#. we are fetching the "translator" command line), second %s is the error -#. message. -#. -#: grub-core/osdep/hurd/getroot.c:79 -#, c-format -msgid "cannot get translator command line for path `%s': %s" -msgstr "" - -#: grub-core/osdep/hurd/getroot.c:82 -#, c-format -msgid "translator command line is empty for path `%s'" -msgstr "" - -#. TRANSLATORS: we expect to get something like -#. /hurd/foobar --option1 --option2=baz /dev/something -#. -#: grub-core/osdep/hurd/getroot.c:98 -#, c-format -msgid "" -"translator `%s' for path `%s' has several non-option words, at least `%s' " -"and `%s'" -msgstr "" - -#. TRANSLATORS: we expect to get something like -#. /hurd/foobar --option1 --option2=baz /dev/something -#. -#: grub-core/osdep/hurd/getroot.c:109 -#, c-format -msgid "" -"translator `%s' for path `%s' is given only options, cannot find device part" -msgstr "" - -#: grub-core/osdep/hurd/hostdisk.c:73 -#, c-format -msgid "Storage information for `%s' does not include type" -msgstr "" - -#: grub-core/osdep/hurd/hostdisk.c:75 -#, c-format -msgid "`%s' is not a local disk" -msgstr "" - -#: grub-core/osdep/hurd/hostdisk.c:78 -#, c-format -msgid "" -"Storage information for `%s' indicates neither a plain partition nor a plain " -"disk" -msgstr "" - -#: grub-core/osdep/linux/blocklist.c:81 grub-core/osdep/linux/blocklist.c:96 -#: grub-core/osdep/linux/blocklist.c:122 -#, c-format -msgid "can't retrieve blocklists: %s" -msgstr "" - -#: grub-core/osdep/linux/blocklist.c:84 -msgid "blocksize is not divisible by 512" -msgstr "" - -#: grub-core/osdep/linux/blocklist.c:86 -msgid "invalid zero blocksize" -msgstr "" - -#: grub-core/osdep/linux/blocklist.c:90 util/setup.c:744 -msgid "can't retrieve blocklists" -msgstr "" - -#: grub-core/osdep/linux/getroot.c:154 -#, c-format -msgid "ioctl RAID_VERSION error: %s" -msgstr "" - -#: grub-core/osdep/linux/getroot.c:160 grub-core/osdep/linux/getroot.c:164 -#, c-format -msgid "unsupported RAID version: %d.%d" -msgstr "" - -#: grub-core/osdep/linux/getroot.c:169 -#, c-format -msgid "ioctl GET_ARRAY_INFO error: %s" -msgstr "" - -#: grub-core/osdep/linux/getroot.c:178 -#, c-format -msgid "ioctl GET_DISK_INFO error: %s" -msgstr "" - -#: grub-core/osdep/linux/getroot.c:608 grub-core/osdep/linux/getroot.c:678 -#: grub-core/osdep/linux/hostdisk.c:126 grub-core/osdep/unix/getroot.c:253 -#: grub-core/osdep/unix/getroot.c:642 grub-core/osdep/unix/platform.c:92 -#: grub-core/osdep/unix/platform.c:100 -#, c-format -msgid "Unable to open stream from %s: %s" -msgstr "" - -#: grub-core/osdep/linux/getroot.c:1033 -#, fuzzy, c-format -msgid "unknown kind of RAID device `%s'" -msgstr "유효하지 ì•Šì€ ë£¨íŠ¸ 장치 `%s'" - -#: grub-core/osdep/linux/ofpath.c:181 -#, c-format -msgid "`obppath' not found in parent dirs of `%s', no IEEE1275 name discovery" -msgstr "" - -#: grub-core/osdep/linux/ofpath.c:222 grub-core/osdep/unix/getroot.c:505 -#: grub-core/osdep/unix/getroot.c:529 grub-core/osdep/unix/relpath.c:49 -#: util/grub-install.c:984 util/grub-install.c:1331 util/grub-probe.c:323 -#, c-format -msgid "failed to get canonical path of `%s'" -msgstr "" - -#: grub-core/osdep/linux/ofpath.c:740 -#, c-format -msgid "unknown device type %s" -msgstr "" - -#: grub-core/osdep/linux/ofpath.c:758 util/ieee1275/grub-ofpathname.c:39 -#, c-format -msgid "Usage: %s DEVICE\n" -msgstr "" - -#: grub-core/osdep/unix/exec.c:86 grub-core/osdep/unix/exec.c:172 -#: grub-core/osdep/unix/exec.c:217 -#, c-format -msgid "Unable to fork: %s" -msgstr "" - -#: grub-core/osdep/unix/exec.c:166 grub-core/osdep/unix/exec.c:211 -#, c-format -msgid "Unable to create pipe: %s" -msgstr "" - -#: grub-core/osdep/unix/getroot.c:370 -msgid "cannot save the original directory" -msgstr "" - -#: grub-core/osdep/unix/getroot.c:423 grub-core/osdep/unix/getroot.c:480 -#: grub-core/osdep/unix/getroot.c:489 -#, fuzzy -msgid "cannot restore the original directory" -msgstr "ì»¤ë„ ì´ë¯¸ì§€ ì••ì¶•ì„ í•  수 없습니다" - -#. TRANSLATORS: "stat" comes from the name of POSIX function. -#: grub-core/osdep/unix/getroot.c:551 grub-core/osdep/unix/hostdisk.c:61 -#: grub-core/osdep/unix/relpath.c:73 grub-core/osdep/unix/relpath.c:97 -#: util/getroot.c:160 util/getroot.c:162 util/grub-install.c:774 -#: util/grub-macbless.c:70 -#, fuzzy, c-format -msgid "cannot stat `%s': %s" -msgstr "'%s'ì„(를) ì—´ 수 없습니다." - -#: grub-core/osdep/unix/hostdisk.c:293 -#, c-format -msgid "cannot make temporary file: %s" -msgstr "" - -#: grub-core/osdep/unix/hostdisk.c:311 -#, c-format -msgid "cannot make temporary directory: %s" -msgstr "" - -#: grub-core/osdep/unix/platform.c:77 -#, c-format -msgid "" -"couldn't find IEEE1275 device path for %s.\n" -"You will have to set `boot-device' variable manually" -msgstr "" - -#. TRANSLATORS: This message is shown when required executable `%s' -#. isn't found. -#: grub-core/osdep/unix/platform.c:149 grub-core/osdep/unix/platform.c:189 -#, c-format -msgid "%s: not found" -msgstr "" - -#: grub-core/osdep/unix/platform.c:225 -#, c-format -msgid "" -"`nvsetenv' failed. \n" -"You will have to set `boot-device' variable manually. At the IEEE1275 " -"prompt, type:\n" -" %s\n" -msgstr "" - -#: grub-core/osdep/unix/platform.c:240 -msgid "You will have to set `SystemPartition' and `OSLoader' manually." -msgstr "" - -#. TRANSLATORS: canonical pathname is the -#. complete one e.g. /etc/fstab. It has -#. to contain `/' normally, if it doesn't -#. we're in trouble and throw this error. -#: grub-core/osdep/unix/relpath.c:90 -msgid "no `/' in canonical filename" -msgstr "" - -#: grub-core/osdep/windows/hostdisk.c:151 -msgid "cygwin_conv_path() failed" -msgstr "" - -#: grub-core/osdep/windows/hostdisk.c:501 util/grub-install.c:570 -msgid "couldn't retrieve random data" -msgstr "" - -#: grub-core/osdep/windows/platform.c:97 -msgid "Insufficient privileges to access firmware, assuming BIOS" -msgstr "" - -#: grub-core/osdep/windows/platform.c:225 -msgid "no EFI routines are available when running in BIOS mode" -msgstr "" - -#: grub-core/osdep/windows/platform.c:240 -msgid "unexpected EFI error" -msgstr "" - -#: grub-core/osdep/windows/platform.c:315 -msgid "Couldn't find a free BootNNNN slot" -msgstr "" - -#: grub-core/partmap/gpt.c:191 -#, fuzzy -msgid "" -"this GPT partition label contains no BIOS Boot Partition; embedding won't be " -"possible" -msgstr "" -"GPT 파티션 ë¼ë²¨ì´ BIOS 부트 íŒŒí‹°ì…˜ì„ ê°€ì§€ê³  있지 않습니다;ìž„ë² ë”©ì´ ë¶ˆê°€ëŠ¥í•©ë‹ˆ" -"다!" - -#: grub-core/partmap/gpt.c:196 -#, fuzzy -msgid "your BIOS Boot Partition is too small; embedding won't be possible" -msgstr "" -"GPT 파티션 ë¼ë²¨ì´ BIOS 부트 íŒŒí‹°ì…˜ì„ ê°€ì§€ê³  있지 않습니다;ìž„ë² ë”©ì´ ë¶ˆê°€ëŠ¥í•©ë‹ˆ" -"다!" - -#. TRANSLATORS: MBR gap and boot track is the same thing and is the space -#. between MBR and first partitition. If your language translates well only -#. "boot track", you can just use it everywhere. Next two messages are about -#. RAID controllers/software bugs which GRUB has to live with. Please spread -#. the message that these are bugs in other software and not merely -#. suboptimal behaviour. -#: grub-core/partmap/msdos.c:51 -#, c-format -msgid "" -"Sector %llu is already in use by raid controller `%s'; avoiding it. Please " -"ask the manufacturer not to store data in MBR gap" -msgstr "" - -#: grub-core/partmap/msdos.c:54 -#, c-format -msgid "" -"Sector %llu is already in use by the program `%s'; avoiding it. This " -"software may cause boot or other problems in future. Please ask its authors " -"not to store data in the boot track" -msgstr "" - -#: grub-core/partmap/msdos.c:384 -msgid "" -"other software is using the embedding area, and there is not enough room for " -"core.img. Such software is often trying to store data in a way that avoids " -"detection. We recommend you investigate" -msgstr "" - -#: grub-core/partmap/msdos.c:395 -#, fuzzy -msgid "" -"this msdos-style partition label has no post-MBR gap; embedding won't be " -"possible" -msgstr "" -"ì´ëŸ¬í•œ msdos-ë°©ì‹ì˜ 파티션 ë ˆì´ë¸”ì€ post-MBR ê³µê°„ì´ ì—†ìŠµë‹ˆë‹¤; ë¼ì›Œë„£ê¸°ê°€ 불" -"가능합니다!" - -#: grub-core/partmap/msdos.c:404 -#, fuzzy -msgid "your embedding area is unusually small. core.img won't fit in it." -msgstr "ë¼ì›Œë„£ê¸° ê³µê°„ì´ ë¹„ì •ìƒì ìœ¼ë¡œ 작습니다. core.imgê°€ ë§žì§€ 않습니다." - -#: grub-core/parttool/msdospart.c:39 -#, fuzzy -msgid "Make partition active" -msgstr "가능한 파티션ì€:" - -#: grub-core/parttool/msdospart.c:51 -msgid "not a primary partition" -msgstr "" - -#: grub-core/parttool/msdospart.c:69 -#, c-format -msgid "Partition %d is active now. \n" -msgstr "" - -#: grub-core/parttool/msdospart.c:74 -#, c-format -msgid "Cleared active flag on %d. \n" -msgstr "" - -#: grub-core/parttool/msdospart.c:87 -#, fuzzy -msgid "Change partition type" -msgstr "파티션 ë§µ ìœ í˜•ì„ ê²°ì •í•©ë‹ˆë‹¤." - -#: grub-core/parttool/msdospart.c:88 -#, fuzzy -msgid "Set `hidden' flag in partition type" -msgstr "파티션 ë§µ ìœ í˜•ì„ ê²°ì •í•©ë‹ˆë‹¤." - -#: grub-core/parttool/msdospart.c:130 -#, c-format -msgid "the partition type 0x%x isn't valid" -msgstr "" - -#. TRANSLATORS: In this case we're actually writing to the disk and actively -#. modifying partition type rather than just defining it. -#: grub-core/parttool/msdospart.c:137 -#, fuzzy, c-format -msgid "Setting partition type to 0x%x\n" -msgstr "파티션 ë§µ ìœ í˜•ì„ ê²°ì •í•©ë‹ˆë‹¤." - -#. TRANSLATORS: 0 is a quantifier. "break" (similar to bash) -#. can be used e.g. to break 3 loops at once. -#. But asking it to break 0 loops makes no sense. -#: grub-core/script/execute.c:143 -msgid "can't break 0 loops" -msgstr "" - -#. TRANSLATORS: It's about not being -#. inside a function. "return" can be used only -#. in a function and this error occurs if it's used -#. anywhere else. -#: grub-core/script/execute.c:227 -msgid "not in function body" -msgstr "" - -#: grub-core/script/execute.c:371 -#, fuzzy, c-format -msgid "invalid variable name `%s'" -msgstr "유효하지 ì•Šì€ ë£¨íŠ¸ 장치 `%s'" - -#: grub-core/script/execute.c:953 -msgid "cannot allocate command buffer" -msgstr "" - -#: grub-core/script/lexer.c:144 util/grub-fstest.c:330 -msgid "unexpected end of file" -msgstr "" - -#: grub-core/script/main.c:55 grub-core/script/main.c:57 -#: grub-core/script/main.c:59 grub-core/script/main.c:67 -msgid "[NUM]" -msgstr "" - -#: grub-core/script/main.c:55 -#, fuzzy -msgid "Exit from loops" -msgstr "GRUBì—서 나갑니다." - -#: grub-core/script/main.c:57 -msgid "Continue loops" -msgstr "" - -#. TRANSLATORS: Positional arguments are -#. arguments $0, $1, $2, ... -#: grub-core/script/main.c:62 -msgid "Shift positional parameters." -msgstr "" - -#: grub-core/script/main.c:64 -msgid "[VALUE]..." -msgstr "" - -#: grub-core/script/main.c:65 -#, fuzzy -msgid "Set positional parameters." -msgstr "ATA ë””ìŠ¤í¬ ë§¤ê°œ 변수를 얻거나 설정합니다." - -#. TRANSLATORS: It's a command description -#. and "Return" is a verb, not a noun. The -#. command in question is "return" and -#. has exactly the same semanics as bash -#. equivalent. -#: grub-core/script/main.c:73 -msgid "Return from a function." -msgstr "" - -#: grub-core/term/gfxterm_background.c:176 -msgid "[-m (stretch|normal)] FILE" -msgstr "" - -#: grub-core/term/gfxterm_background.c:177 -msgid "Load background image for active terminal." -msgstr "" - -#: grub-core/term/gfxterm_background.c:182 util/grub-install.c:302 -#: util/grub-install.c:303 util/grub-mkrescue.c:107 util/grub-mkrescue.c:108 -#: util/grub-render-label.c:61 util/grub-render-label.c:63 -msgid "COLOR" -msgstr "" - -#: grub-core/term/gfxterm_background.c:183 -msgid "Set background color for active terminal." -msgstr "" - -#: grub-core/term/i386/coreboot/cbmemc.c:139 -msgid "Show CBMEM console content." -msgstr "" - -#: grub-core/term/serial.c:57 -msgid "Set the serial unit." -msgstr "시리얼 ìœ ë‹›ì„ ì •í•©ë‹ˆë‹¤." - -#: grub-core/term/serial.c:58 -msgid "Set the serial port address." -msgstr "시리얼 í¬íЏ 주소를 정합니다." - -#: grub-core/term/serial.c:59 -msgid "Set the serial port speed." -msgstr "시리얼 í¬íЏ ì†ë„를 정합니다." - -#: grub-core/term/serial.c:60 -msgid "Set the serial port word length." -msgstr "시리얼 í¬íЏ 워드 길ì´ë¥¼ 정합니다." - -#: grub-core/term/serial.c:61 -msgid "Set the serial port parity." -msgstr "시리얼 í¬íЏ 패리티를 정합니다." - -#: grub-core/term/serial.c:62 -msgid "Set the serial port stop bits." -msgstr "시리얼 í¬íЏ 스톱 비트를 정합니다." - -#: grub-core/term/serial.c:63 -#, fuzzy -msgid "Set the base frequency." -msgstr "시리얼 ìœ ë‹›ì„ ì •í•©ë‹ˆë‹¤." - -#: grub-core/term/serial.c:64 -msgid "Enable/disable RTS/CTS." -msgstr "" - -#: grub-core/term/serial.c:218 -#, c-format -msgid "serial port `%s' isn't found" -msgstr "" - -#: grub-core/term/serial.c:254 -msgid "unsupported serial port flow control" -msgstr "" - -#: grub-core/term/serial.c:429 -msgid "[OPTIONS...]" -msgstr "[옵션...]" - -#: grub-core/term/serial.c:430 -msgid "Configure serial port." -msgstr "ì§ë ¬ í¬íŠ¸ë¥¼ 설정합니다." - -#: grub-core/term/terminfo.c:184 -#, fuzzy, c-format -msgid "unknown terminfo type `%s'" -msgstr "알 수 없는 추가ì ì¸ ì¸ìž ê°’ `%s'.\n" - -#: grub-core/term/terminfo.c:668 -msgid "ASCII" -msgstr "" - -#: grub-core/term/terminfo.c:671 -msgid "UTF-8" -msgstr "" - -#. TRANSLATORS: visually ordered UTF-8 is a non-compliant encoding -#. based on UTF-8 with right-to-left languages written in reverse. -#. Used on some terminals. Normal UTF-8 is refered as -#. "logically-ordered UTF-8" by opposition. -#: grub-core/term/terminfo.c:677 -msgid "visually-ordered UTF-8" -msgstr "" - -#: grub-core/term/terminfo.c:680 -msgid "Unknown encoding" -msgstr "" - -#: grub-core/term/terminfo.c:684 -msgid "Current terminfo types:" -msgstr "" - -#: grub-core/term/terminfo.c:699 -msgid "Terminal is ASCII-only [default]." -msgstr "" - -#: grub-core/term/terminfo.c:700 -msgid "Terminal is logical-ordered UTF-8." -msgstr "" - -#: grub-core/term/terminfo.c:701 -msgid "Terminal is visually-ordered UTF-8." -msgstr "" - -#: grub-core/term/terminfo.c:703 -msgid "Terminal has specified geometry." -msgstr "" - -#. TRANSLATORS: "x" has to be entered in, like an identifier, so please don't -#. use better Unicode codepoints. -#: grub-core/term/terminfo.c:706 -msgid "WIDTHxHEIGHT." -msgstr "" - -#: grub-core/term/terminfo.c:746 -msgid "incorrect terminal dimensions specification" -msgstr "" - -#: grub-core/term/terminfo.c:776 -#, c-format -msgid "terminal %s isn't found or it's not handled by terminfo" -msgstr "" - -#: grub-core/term/terminfo.c:785 -msgid "[[-a|-u|-v] [-g WxH] TERM [TYPE]]" -msgstr "" - -#: grub-core/term/terminfo.c:786 -msgid "Set terminfo type of TERM to TYPE.\n" -msgstr "" - -#. TRANSLATORS: this is the BLOCK-argument, not -#. environment block. -#: grub-core/tests/test_blockarg.c:49 -#, fuzzy -msgid "Print and execute block argument." -msgstr "블럭 목ë¡ì„ 출력합니다." - -#. TRANSLATORS: We're speaking about bitmap images like -#. JPEG or PNG. -#: grub-core/video/bitmap.c:209 -#, c-format -msgid "bitmap file `%s' is of unsupported format" -msgstr "" - -#: grub-core/video/i386/pc/vbe.c:1191 -#, c-format -msgid " VBE info: version: %d.%d OEM software rev: %d.%d\n" -msgstr "" - -#: grub-core/video/i386/pc/vbe.c:1198 -#, c-format -msgid " total memory: %d KiB\n" -msgstr "" - -#: grub-core/video/video.c:596 grub-core/video/video.c:762 -msgid "no suitable video mode found" -msgstr "" - -#: include/grub/crypto.h:403 -msgid "access denied" -msgstr "" - -#: include/grub/util/install.h:30 include/grub/util/install.h:35 -#, fuzzy -msgid "MODULES" -msgstr "<모듈>" - -#: include/grub/util/install.h:31 -msgid "pre-load specified modules MODULES" -msgstr "" - -#: include/grub/util/install.h:33 -msgid "embed a specific DTB" -msgstr "" - -#: include/grub/util/install.h:36 -msgid "install only MODULES and their dependencies [default=all]" -msgstr "" - -#: include/grub/util/install.h:37 -msgid "THEMES" -msgstr "" - -#: include/grub/util/install.h:38 -#, c-format -msgid "install THEMES [default=%s]" -msgstr "" - -#: include/grub/util/install.h:39 -msgid "FONTS" -msgstr "" - -#: include/grub/util/install.h:40 -#, c-format -msgid "install FONTS [default=%s]" -msgstr "" - -#: include/grub/util/install.h:41 -msgid "LOCALES" -msgstr "" - -#: include/grub/util/install.h:42 -msgid "install only LOCALES [default=all]" -msgstr "" - -#: include/grub/util/install.h:45 -msgid "compress GRUB files [optional]" -msgstr "" - -#: include/grub/util/install.h:48 util/grub-mkimage.c:83 -#, fuzzy -msgid "choose the compression to use for core image" -msgstr "ì»¤ë„ ì´ë¯¸ì§€ ì••ì¶•ì„ í•  수 없습니다" - -#. TRANSLATORS: platform here isn't identifier. It can be translated. -#: include/grub/util/install.h:51 include/grub/util/install.h:54 -#: util/grub-mkimage.c:66 -#, c-format -msgid "use images and modules under DIR [default=%s/]" -msgstr "" - -#: include/grub/util/install.h:57 -#, c-format -msgid "use translations under DIR [default=%s]" -msgstr "" - -#: include/grub/util/install.h:60 -#, c-format -msgid "use themes under DIR [default=%s]" -msgstr "" - -#: include/grub/util/install.h:65 util/grub-mkimage.c:78 -msgid "embed FILE as public key for signature checking" -msgstr "" - -#: util/editenv.c:59 util/grub-editenv.c:201 util/grub-install-common.c:535 -#: util/grub-mkimage.c:315 util/setup.c:791 -#, fuzzy, c-format -msgid "cannot sync `%s': %s" -msgstr "'%s'ì„(를) ì—´ 수 없습니다." - -#: util/editenv.c:64 -#, c-format -msgid "cannot rename the file %s to %s" -msgstr "" - -#: util/getroot.c:402 -#, c-format -msgid "disk does not exist, so falling back to partition device %s" -msgstr "" - -#: util/grub-editenv.c:45 util/grub-fstest.c:506 -msgid "Commands:" -msgstr "" - -#: util/grub-editenv.c:47 -#, fuzzy -msgid "Create a blank environment block file." -msgstr "ê°’ì„ í™˜ê²½ ë¸”ë¡ íŒŒì¼ë¡œ 저장합니다." - -#: util/grub-editenv.c:49 -#, fuzzy -msgid "List the current variables." -msgstr "í˜„ìž¬ì˜ ë§¤í•‘ì„ ë³´ìž…ë‹ˆë‹¤." - -#. TRANSLATORS: "set" is a keyword. It's a summary of "set" subcommand. -#: util/grub-editenv.c:51 -msgid "set [NAME=VALUE ...]" -msgstr "" - -#: util/grub-editenv.c:52 -#, fuzzy -msgid "Set variables." -msgstr "변수를 ì‚¬ìš©ìž ìž…ë ¥ìœ¼ë¡œ 지정합니다." - -#. TRANSLATORS: "unset" is a keyword. It's a summary of "unset" subcommand. -#: util/grub-editenv.c:54 -msgid "unset [NAME ...]" -msgstr "" - -#: util/grub-editenv.c:55 -msgid "Delete variables." -msgstr "" - -#: util/grub-editenv.c:57 -msgid "Options:" -msgstr "" - -#: util/grub-editenv.c:84 -msgid "You need to specify at least one command.\n" -msgstr "" - -#: util/grub-editenv.c:113 -msgid "FILENAME COMMAND" -msgstr "" - -#: util/grub-editenv.c:114 -#, fuzzy -msgid "Tool to edit environment block." -msgstr "ê°’ì„ í™˜ê²½ ë¸”ë¡ íŒŒì¼ë¡œ 저장합니다." - -#: util/grub-editenv.c:116 -#, c-format -msgid "" -"If FILENAME is `-', the default value %s is used.\n" -"\n" -"There is no `delete' command; if you want to delete the whole environment\n" -"block, use `rm %s'." -msgstr "" - -#: util/grub-editenv.c:162 -#, fuzzy -msgid "invalid environment block" -msgstr "환경 ë¸”ë¡ íŒŒì¼ë¡œë¶€í„° ê°’ì„ ì—´ê±°í•©ë‹ˆë‹¤." - -#: util/grub-editenv.c:217 -#, fuzzy, c-format -msgid "invalid parameter %s" -msgstr "유효하지 ì•Šì€ ë£¨íŠ¸ 장치 `%s'" - -#: util/grub-editenv.c:222 -msgid "environment block too small" -msgstr "" - -#: util/grub-fstest.c:107 -#, c-format -msgid "disk read fails at offset %lld, length %lld" -msgstr "" - -#: util/grub-fstest.c:138 -#, c-format -msgid "invalid skip value %lld" -msgstr "" - -#: util/grub-fstest.c:160 util/grub-fstest.c:246 -#, c-format -msgid "read error at offset %llu: %s" -msgstr "" - -#: util/grub-fstest.c:210 -#, fuzzy, c-format -msgid "cannot open OS file `%s': %s" -msgstr "'%s'ì„(를) ì—´ 수 없습니다." - -#: util/grub-fstest.c:225 util/misc.c:126 -#, c-format -msgid "cannot write to the stdout: %s" -msgstr "" - -#: util/grub-fstest.c:259 -#, c-format -msgid "compare fail at offset %llu" -msgstr "" - -#: util/grub-fstest.c:280 util/grub-fstest.c:314 -#, c-format -msgid "OS file %s open error: %s" -msgstr "" - -#: util/grub-fstest.c:402 util/grub-mount.c:392 -#, c-format -msgid "`loopback' command fails: %s" -msgstr "" - -#: util/grub-fstest.c:413 util/grub-mount.c:402 -#, c-format -msgid "`cryptomount' command fails: %s" -msgstr "" - -#: util/grub-fstest.c:474 util/grub-fstest.c:478 -msgid "couldn't retrieve UUID" -msgstr "" - -#: util/grub-fstest.c:507 -msgid "ls PATH" -msgstr "" - -#: util/grub-fstest.c:507 -#, fuzzy -msgid "List files in PATH." -msgstr "파ì¼ì˜ 목ë¡ì„ ë³´ì—¬ì¤ë‹ˆë‹¤." - -#: util/grub-fstest.c:508 -msgid "cp FILE LOCAL" -msgstr "" - -#: util/grub-fstest.c:508 -msgid "Copy FILE to local file LOCAL." -msgstr "" - -#: util/grub-fstest.c:509 -#, fuzzy -msgid "cat FILE" -msgstr "<파ì¼>" - -#: util/grub-fstest.c:509 -msgid "Copy FILE to standard output." -msgstr "" - -#: util/grub-fstest.c:510 -msgid "cmp FILE LOCAL" -msgstr "" - -#: util/grub-fstest.c:510 -#, fuzzy -msgid "Compare FILE with local file LOCAL." -msgstr "ë‘ê°œì˜ íŒŒì¼ì„ 비êµí•©ë‹ˆë‹¤." - -#: util/grub-fstest.c:511 -#, fuzzy -msgid "hex FILE" -msgstr "<파ì¼>" - -#: util/grub-fstest.c:511 -#, fuzzy -msgid "Show contents of FILE in hex." -msgstr "파ì¼ì˜ ë‚´ìš©ì„ í‘œì‹œí•©ë‹ˆë‹¤." - -#: util/grub-fstest.c:512 -#, fuzzy -msgid "crc FILE" -msgstr "<파ì¼>" - -#: util/grub-fstest.c:512 -#, fuzzy -msgid "Get crc32 checksum of FILE." -msgstr "파ì¼ì˜ CRC32 ì²´í¬ì„¬ì„ 계산합니다." - -#: util/grub-fstest.c:513 -msgid "blocklist FILE" -msgstr "" - -#: util/grub-fstest.c:513 -#, fuzzy -msgid "Display blocklist of FILE." -msgstr "í…ìŠ¤íŠ¸ì˜ ì¤„ì„ í‘œì‹œí•©ë‹ˆë‹¤." - -#: util/grub-fstest.c:514 -msgid "xnu_uuid DEVICE" -msgstr "" - -#: util/grub-fstest.c:514 -msgid "Compute XNU UUID of the device." -msgstr "" - -#. TRANSLATORS: bitmaps are images like e.g. in JPEG. -#: util/grub-fstest.c:517 util/grub-fstest.c:518 util/grub-fstest.c:519 -#: util/grub-mkfont.c:938 util/grub-mkfont.c:951 util/grub-mkfont.c:952 -#: util/grub-mkpasswd-pbkdf2.c:46 util/grub-mkpasswd-pbkdf2.c:47 -#: util/grub-mkpasswd-pbkdf2.c:48 -msgid "NUM" -msgstr "" - -#: util/grub-fstest.c:517 -#, fuzzy -msgid "Skip N bytes from output file." -msgstr "íŒŒì¼ ì²«ë¶€ë¶„ì˜ ì˜¤í”„ì…‹ ë°”ì´íŠ¸ë¥¼ 건너ëœë‹ˆë‹¤." - -#: util/grub-fstest.c:518 -msgid "Handle N bytes in output file." -msgstr "" - -#: util/grub-fstest.c:519 -msgid "Specify the number of input files." -msgstr "" - -#: util/grub-fstest.c:520 util/grub-mount.c:453 -msgid "Set debug environment variable." -msgstr "" - -#: util/grub-fstest.c:521 util/grub-mount.c:454 -#, fuzzy -msgid "Mount crypto devices." -msgstr "루트 장치를 정합니다." - -#. TRANSLATORS: "prompt" is a keyword. -#: util/grub-fstest.c:524 util/grub-mount.c:457 -msgid "FILE|prompt" -msgstr "" - -#: util/grub-fstest.c:524 util/grub-mount.c:457 -msgid "Load zfs crypto key." -msgstr "" - -#: util/grub-fstest.c:526 -msgid "Uncompress data." -msgstr "" - -#: util/grub-fstest.c:605 -#, fuzzy -msgid "Invalid disk count.\n" -msgstr "유효하지 ì•Šì€ ìž¥ì¹˜ `%s'.\n" - -#. TRANSLATORS: disk count is optional but if it's there it must -#. be before disk list. So please don't imply disk count as mandatory. -#. -#: util/grub-fstest.c:613 -msgid "Disk count must precede disks list.\n" -msgstr "" - -#: util/grub-fstest.c:633 -#, fuzzy -msgid "No command is specified.\n" -msgstr "알려진 장치가 ì—†ìŒ.\n" - -#: util/grub-fstest.c:638 -msgid "Not enough parameters to command.\n" -msgstr "" - -#: util/grub-fstest.c:711 -#, fuzzy, c-format -msgid "Invalid command %s.\n" -msgstr "유효하지 ì•Šì€ ìž¥ì¹˜ `%s'.\n" - -#: util/grub-fstest.c:724 -#, fuzzy -msgid "IMAGE_PATH COMMANDS" -msgstr "파티션 명령어" - -#: util/grub-fstest.c:725 util/grub-mount.c:553 -#, fuzzy -msgid "Debug tool for filesystem driver." -msgstr "íŒŒì¼ ì‹œìŠ¤í…œì˜ ì¢…ë¥˜ë¥¼ 결정합니다." - -#: util/grub-glue-efi.c:53 -msgid "set input filename for 32-bit part." -msgstr "" - -#: util/grub-glue-efi.c:55 -msgid "set input filename for 64-bit part." -msgstr "" - -#: util/grub-glue-efi.c:57 util/grub-mklayout.c:55 util/grub-render-label.c:71 -msgid "set output filename. Default is STDOUT" -msgstr "" - -#: util/grub-glue-efi.c:94 util/grub-mklayout.c:476 -#: util/grub-mkpasswd-pbkdf2.c:86 util/grub-render-label.c:131 -#, fuzzy -msgid "[OPTIONS]" -msgstr "[옵션...]" - -#: util/grub-glue-efi.c:95 -msgid "Glue 32-bit and 64-bit binary into Apple universal one." -msgstr "" - -#: util/grub-glue-efi.c:116 -msgid "Missing input file\n" -msgstr "" - -#: util/grub-install-common.c:127 util/grub-install-common.c:151 -#, fuzzy, c-format -msgid "cannot copy `%s' to `%s': %s" -msgstr "'%s'ì„(를) ì—´ 수 없습니다." - -#: util/grub-install-common.c:147 -#, fuzzy, c-format -msgid "can't compress `%s' to `%s'" -msgstr "'%s'ì„(를) ì—´ 수 없습니다." - -#: util/grub-install-common.c:196 util/grub-install-common.c:552 -#: util/grub-install-common.c:579 util/grub-install-common.c:621 -#, fuzzy, c-format -msgid "cannot open directory `%s': %s" -msgstr "'%s'ì„(를) ì—´ 수 없습니다." - -#: util/grub-install-common.c:212 -#, fuzzy, c-format -msgid "cannot delete `%s': %s" -msgstr "'%s'ì„(를) ì—´ 수 없습니다." - -#: util/grub-install-common.c:324 util/grub-mkimage.c:209 -msgid "grub-mkimage is compiled without XZ support" -msgstr "" - -#: util/grub-install-common.c:332 util/grub-mkimage.c:217 -#, c-format -msgid "Unknown compression format %s" -msgstr "" - -#: util/grub-install-common.c:400 -#, c-format -msgid "Unrecognized compression `%s'" -msgstr "" - -#: util/grub-install-common.c:509 -#, fuzzy, c-format -msgid "unknown target format %s" -msgstr "알 수 없는 추가ì ì¸ ì¸ìž ê°’ `%s'.\n" - -#: util/grub-install-common.c:700 -#, fuzzy, c-format -msgid "cannot find locale `%s'" -msgstr "'%s'ì„(를) ì—´ 수 없습니다." - -#: util/grub-install-common.c:939 -#, c-format -msgid "%s doesn't exist. Please specify --target or --directory" -msgstr "" - -#: util/grub-install-common.c:948 util/grub-install-common.c:951 -#, fuzzy, c-format -msgid "invalid modinfo file `%s'" -msgstr "유효하지 ì•Šì€ ë£¨íŠ¸ 장치 `%s'" - -#: util/grub-install-common.c:966 -#, fuzzy, c-format -msgid "Unknown platform `%s-%s'" -msgstr "알 수 없는 추가ì ì¸ ì¸ìž ê°’ `%s'.\n" - -#: util/grub-install.c:238 -msgid "More than one install device?" -msgstr "" - -#: util/grub-install.c:251 -#, c-format -msgid "" -"install GRUB images under the directory DIR/%s instead of the %s directory" -msgstr "" - -#: util/grub-install.c:256 util/grub-probe.c:734 -msgid "TARGET" -msgstr "" - -#. TRANSLATORS: "TARGET" as in "target platform". -#: util/grub-install.c:258 -#, c-format -msgid "install GRUB for TARGET platform [default=%s]; available targets: %s" -msgstr "" - -#. TRANSLATORS: "may break" doesn't just mean that option wouldn't have any -#. effect but that it will make the resulting install unbootable from HDD. -#. TRANSLATORS: The potential breakage isn't limited to floppies but it's -#. likely to make the install unbootable from HDD. -#: util/grub-install.c:267 util/grub-setup.c:94 -msgid "" -"make the drive also bootable as floppy (default for fdX devices). May break " -"on some BIOSes." -msgstr "" - -#: util/grub-install.c:270 -msgid "delete device map if it already exists" -msgstr "" - -#: util/grub-install.c:272 util/grub-setup.c:87 -msgid "install even if problems are detected" -msgstr "" - -#: util/grub-install.c:274 -msgid "use identifier file even if UUID is available" -msgstr "" - -#: util/grub-install.c:276 -msgid "" -"disk module to use (biosdisk or native). This option is only available on " -"BIOS target." -msgstr "" - -#: util/grub-install.c:279 -msgid "" -"don't update the `boot-device'/`Boot*' NVRAM variables. This option is only " -"available on EFI and IEEE1275 targets." -msgstr "" - -#: util/grub-install.c:282 util/grub-setup.c:89 -msgid "do not probe for filesystems in DEVICE" -msgstr "" - -#: util/grub-install.c:284 -msgid "do not install bootsector" -msgstr "" - -#: util/grub-install.c:286 util/grub-setup.c:96 -msgid "" -"Do not apply any reed-solomon codes when embedding core.img. This option is " -"only available on x86 BIOS targets." -msgstr "" - -#: util/grub-install.c:293 -msgid "" -"the installation device is removable. This option is only available on EFI." -msgstr "" - -#: util/grub-install.c:295 -msgid "ID" -msgstr "" - -#: util/grub-install.c:296 -msgid "the ID of bootloader. This option is only available on EFI and Macs." -msgstr "" - -#: util/grub-install.c:298 -msgid "use DIR as the EFI System Partition root." -msgstr "" - -#: util/grub-install.c:300 -msgid "use DIR for PPC MAC install." -msgstr "" - -#: util/grub-install.c:301 util/grub-mkrescue.c:106 -msgid "use FILE as font for label" -msgstr "" - -#: util/grub-install.c:302 util/grub-mkrescue.c:107 -msgid "use COLOR for label" -msgstr "" - -#: util/grub-install.c:303 util/grub-mkrescue.c:108 -msgid "use COLOR for label background" -msgstr "" - -#: util/grub-install.c:304 util/grub-mkrescue.c:110 -msgid "use STRING as product version" -msgstr "" - -#: util/grub-install.c:361 -#, fuzzy -msgid "[OPTION] [INSTALL_DEVICE]" -msgstr "[옵션] <파ì¼ë˜ëŠ”ìž¥ì¹˜>" - -#: util/grub-install.c:362 -msgid "Install GRUB on your drive." -msgstr "" - -#: util/grub-install.c:363 -#, c-format -msgid "" -"INSTALL_DEVICE must be system device filename.\n" -"%s copies GRUB images into %s. On some platforms, it may also install GRUB " -"into the boot sector." -msgstr "" - -#: util/grub-install.c:672 -#, c-format -msgid "the drive %s is defined multiple times in the device map %s" -msgstr "" - -#: util/grub-install.c:878 -msgid "Unable to determine your platform. Use --target." -msgstr "" - -#: util/grub-install.c:891 -#, c-format -msgid "Installing for %s platform.\n" -msgstr "" - -#: util/grub-install.c:939 -#, fuzzy -msgid "install device isn't specified" -msgstr "알려진 장치가 ì—†ìŒ.\n" - -#: util/grub-install.c:1057 -msgid "cannot find EFI directory" -msgstr "" - -#: util/grub-install.c:1060 util/grub-install.c:1209 util/grub-install.c:1254 -#: util/grub-macbless.c:76 util/grub-probe.c:329 util/setup.c:316 -#, c-format -msgid "cannot find a device for %s (is /dev mounted?)" -msgstr "" - -#: util/grub-install.c:1069 util/grub-install.c:1217 util/grub-install.c:1270 -#: util/grub-install.c:1365 util/grub-macbless.c:80 util/grub-probe.c:372 -#, c-format -msgid "cannot find a GRUB drive for %s. Check your device.map" -msgstr "" - -#: util/grub-install.c:1087 -#, c-format -msgid "%s doesn't look like an EFI partition" -msgstr "" - -#: util/grub-install.c:1129 util/grub-install.c:1614 -msgid "You've found a bug" -msgstr "" - -#: util/grub-install.c:1231 -#, c-format -msgid "filesystem on %s is neither HFS nor HFS+" -msgstr "" - -#: util/grub-install.c:1299 -#, c-format -msgid "" -"attempt to install to encrypted disk without cryptodisk enabled. Set `%s' in " -"file `%s'" -msgstr "" - -#: util/grub-install.c:1410 util/grub-install.c:1772 util/grub-install.c:1872 -#, c-format -msgid "Can't create file: %s" -msgstr "" - -#: util/grub-install.c:1491 -msgid "no hints available for your platform. Expect reduced performance" -msgstr "" - -#. TRANSLATORS: This is a prefix in the log to indicate that usually -#. a command would be executed but due to an option was skipped. -#: util/grub-install.c:1702 -msgid "NOT RUNNING: " -msgstr "" - -#: util/grub-install.c:1806 -msgid "the chosen partition is not a PReP partition" -msgstr "" - -#: util/grub-install.c:1811 -msgid "failed to copy Grub to the PReP partition" -msgstr "" - -#: util/grub-install.c:1816 -#, c-format -msgid "" -"the PReP partition is not empty. If you are sure you want to use it, run dd " -"to clear it: `%s'" -msgstr "" - -#: util/grub-install.c:1888 util/grub-install.c:1932 -#, c-format -msgid "efibootmgr failed to register the boot entry: %s" -msgstr "" - -#: util/grub-install.c:1916 -#, fuzzy -msgid "EFI bootloader id isn't specified." -msgstr "알려진 장치가 ì—†ìŒ.\n" - -#: util/grub-install.c:1950 -msgid "WARNING: no platform-specific install was performed" -msgstr "" - -#: util/grub-install.c:1957 -msgid "Installation finished. No error reported." -msgstr "" - -#: util/grub-macbless.c:101 -msgid "bless for x86-based macs" -msgstr "" - -#: util/grub-macbless.c:103 -msgid "bless for ppc-based macs" -msgstr "" - -#: util/grub-macbless.c:136 util/grub-probe.c:823 -#, fuzzy -msgid "No path or device is specified.\n" -msgstr "알려진 장치가 ì—†ìŒ.\n" - -#: util/grub-macbless.c:157 -msgid "--ppc PATH|--x86 FILE" -msgstr "" - -#: util/grub-macbless.c:158 -msgid "Mac-style bless on HFS or HFS+" -msgstr "" - -#: util/grub-menulst2cfg.c:44 -#, c-format -msgid "Usage: %s [INFILE [OUTFILE]]\n" -msgstr "" - -#: util/grub-mkfont.c:157 -#, c-format -msgid "Freetype Error %d loading glyph 0x%x for U+0x%x%s" -msgstr "" - -#. TRANSLATORS: These qualifiers are used for cursive typography, -#. mainly Arabic. Note that the terms refer to the visual position -#. and not logical order and if used in left-to-right script then -#. leftmost is initial but with right-to-left script like Arabic -#. rightmost is the initial. -#: util/grub-mkfont.c:165 -msgid " (medial)" -msgstr "" - -#: util/grub-mkfont.c:166 -msgid " (leftmost)" -msgstr "" - -#: util/grub-mkfont.c:167 -msgid " (rightmost)" -msgstr "" - -#: util/grub-mkfont.c:481 -#, c-format -msgid "Out of range substitution (%d, %d)\n" -msgstr "" - -#. TRANSLATORS: "lookup" is taken directly from font specifications -#. which are formulated as "Under condition X replace LOOKUP with -#. SUBSTITUITION". " -#: util/grub-mkfont.c:506 -#, c-format -msgid "Out of range lookup: %d\n" -msgstr "" - -#: util/grub-mkfont.c:514 -#, c-format -msgid "Unsupported substitution type: %d\n" -msgstr "" - -#: util/grub-mkfont.c:550 -#, c-format -msgid "Unsupported substitution specification: %d\n" -msgstr "" - -#: util/grub-mkfont.c:582 -#, c-format -msgid "Unsupported coverage specification: %d\n" -msgstr "" - -#: util/grub-mkfont.c:622 -#, c-format -msgid "WARNING: unsupported font feature parameters: %x\n" -msgstr "" - -#: util/grub-mkfont.c:936 util/grub-mkrescue.c:98 util/grub-mkstandalone.c:48 -msgid "save output in FILE [required]" -msgstr "" - -#. TRANSLATORS: some font files may have multiple faces (fonts). -#. This option is used to chose among them, the first face being '0'. -#. Rarely used. -#: util/grub-mkfont.c:942 -msgid "select face index" -msgstr "" - -#: util/grub-mkfont.c:943 -msgid "FROM-TO[,FROM-TO]" -msgstr "" - -#. TRANSLATORS: It refers to the range of characters in font. -#: util/grub-mkfont.c:945 -msgid "set font range" -msgstr "" - -#. TRANSLATORS: "family name" for font is just a generic name without suffix -#. like "Bold". -#: util/grub-mkfont.c:949 -msgid "set font family name" -msgstr "" - -#: util/grub-mkfont.c:950 -msgid "SIZE" -msgstr "" - -#: util/grub-mkfont.c:950 -msgid "set font size" -msgstr "" - -#: util/grub-mkfont.c:951 -#, fuzzy -msgid "set font descent" -msgstr "루트 장치를 정합니다." - -#: util/grub-mkfont.c:952 -msgid "set font ascent" -msgstr "" - -#: util/grub-mkfont.c:953 -msgid "convert to bold font" -msgstr "" - -#: util/grub-mkfont.c:954 -msgid "force autohint" -msgstr "" - -#: util/grub-mkfont.c:955 -msgid "disable hinting" -msgstr "" - -#. TRANSLATORS: some fonts contain bitmap rendering for -#. some sizes. This option forces rerendering even if -#. pre-rendered bitmap is available. -#. -#: util/grub-mkfont.c:961 -msgid "ignore bitmap strikes when loading" -msgstr "" - -#. TRANSLATORS: It refers to the range of characters in font. -#: util/grub-mkfont.c:1059 util/grub-mkfont.c:1075 -msgid "invalid font range" -msgstr "" - -#: util/grub-mkfont.c:1151 -#, fuzzy -msgid "[OPTIONS] FONT_FILES" -msgstr "[옵션] 디스í¬" - -#: util/grub-mkfont.c:1152 -msgid "Convert common font file formats into PF2" -msgstr "" - -#: util/grub-mkfont.c:1182 util/grub-mkrescue.c:483 -#: util/grub-mkstandalone.c:306 -#, fuzzy -msgid "output file must be specified" -msgstr "알려진 장치가 ì—†ìŒ.\n" - -#: util/grub-mkfont.c:1185 -msgid "FT_Init_FreeType fails" -msgstr "" - -#: util/grub-mkfont.c:1199 -#, c-format -msgid "can't open file %s, index %d: error %d" -msgstr "" - -#: util/grub-mkfont.c:1229 -#, c-format -msgid "can't set %dx%d font size: Freetype error %d: %s" -msgstr "" - -#: util/grub-mkimage.c:67 -msgid "set prefix directory" -msgstr "" - -#. TRANSLATORS: "memdisk" here isn't an identifier, it can be translated. -#. "embed" is a verb (command description). " -#: util/grub-mkimage.c:71 -msgid "" -"embed FILE as a memdisk image\n" -"Implies `-p (memdisk)/boot/grub' and overrides any prefix supplied " -"previously, but the prefix itself can be overridden by later options" -msgstr "" - -#: util/grub-mkimage.c:74 -msgid "embed FILE as a device tree (DTB)\n" -msgstr "" - -#: util/grub-mkimage.c:76 -msgid "embed FILE as an early config" -msgstr "" - -#. TRANSLATORS: NOTE is a name of segment. -#: util/grub-mkimage.c:80 -msgid "add NOTE segment for CHRP IEEE1275" -msgstr "" - -#: util/grub-mkimage.c:81 -msgid "output a generated image to FILE [default=stdout]" -msgstr "" - -#: util/grub-mkimage.c:82 -msgid "FORMAT" -msgstr "" - -#: util/grub-mkimage.c:100 util/grub-mkstandalone.c:62 -msgid "generate an image in FORMAT" -msgstr "" - -#: util/grub-mkimage.c:101 util/grub-mkstandalone.c:63 -msgid "available formats:" -msgstr "" - -#: util/grub-mkimage.c:152 util/grub-mkstandalone.c:96 -#, fuzzy, c-format -msgid "unknown target format %s\n" -msgstr "알 수 없는 추가ì ì¸ ì¸ìž ê°’ `%s'.\n" - -#: util/grub-mkimage.c:242 -#, fuzzy -msgid "[OPTION]... [MODULES]" -msgstr "[옵션...]" - -#: util/grub-mkimage.c:243 -msgid "Make a bootable image of GRUB." -msgstr "" - -#: util/grub-mkimage.c:273 util/grub-mkstandalone.c:309 -msgid "Target format not specified (use the -O option)." -msgstr "" - -#: util/grub-mkimage.c:282 -msgid "Prefix not specified (use the -p option)." -msgstr "" - -#: util/grub-mkimage.c:318 util/setup.c:793 -#, fuzzy, c-format -msgid "cannot close `%s': %s" -msgstr "'%s'ì„(를) ì—´ 수 없습니다." - -#: util/grub-mkimagexx.c:2191 -#, c-format -msgid "" -"`%s' is miscompiled: its start address is 0x%llx instead of 0x%llx: ld.gold " -"bug?" -msgstr "" - -#: util/grub-mklayout.c:53 -msgid "set input filename. Default is STDIN" -msgstr "" - -#. TRANSLATORS: scan identifier is keyboard key symbolic name. -#: util/grub-mklayout.c:307 -#, c-format -msgid "Unknown keyboard scan identifier %s\n" -msgstr "" - -#. TRANSLATORS: scan code is keyboard key numeric identifier. -#: util/grub-mklayout.c:390 util/grub-mklayout.c:418 -#, c-format -msgid "Unknown keyboard scan code 0x%02x\n" -msgstr "" - -#. TRANSLATORS: this error is triggered when input doesn't contain any -#. key descriptions. -#: util/grub-mklayout.c:438 -msgid "ERROR: no valid keyboard layout found. Check the input.\n" -msgstr "" - -#. TRANSLATORS: "one" is a shortcut for "keyboard layout". -#: util/grub-mklayout.c:478 -msgid "Generate GRUB keyboard layout from Linux console one." -msgstr "" - -#: util/grub-mknetdir.c:47 -msgid "root directory of TFTP server" -msgstr "" - -#: util/grub-mknetdir.c:49 -msgid "relative subdirectory on network server" -msgstr "" - -#: util/grub-mknetdir.c:88 -msgid "" -"Prepares GRUB network boot images at net_directory/subdir assuming " -"net_directory being TFTP root." -msgstr "" - -#: util/grub-mknetdir.c:146 -#, c-format -msgid "unsupported platform %s" -msgstr "" - -#. TRANSLATORS: First %s is replaced by platform name. Second one by filename. -#: util/grub-mknetdir.c:165 -#, c-format -msgid "" -"Netboot directory for %s created. Configure your DHCP server to point to %s\n" -msgstr "" - -#: util/grub-mkpasswd-pbkdf2.c:46 -msgid "Number of PBKDF2 iterations" -msgstr "" - -#: util/grub-mkpasswd-pbkdf2.c:47 -msgid "Length of generated hash" -msgstr "" - -#: util/grub-mkpasswd-pbkdf2.c:48 -msgid "Length of salt" -msgstr "" - -#: util/grub-mkpasswd-pbkdf2.c:87 -msgid "Generate PBKDF2 password hash." -msgstr "" - -#: util/grub-mkpasswd-pbkdf2.c:144 util/grub-mkpasswd-pbkdf2.c:151 -msgid "failure to read password" -msgstr "" - -#: util/grub-mkpasswd-pbkdf2.c:146 -#, fuzzy -msgid "Reenter password: " -msgstr "암호를 입력하십시오: " - -#: util/grub-mkpasswd-pbkdf2.c:160 -msgid "passwords don't match" -msgstr "" - -#: util/grub-mkpasswd-pbkdf2.c:169 -msgid "couldn't retrieve random data for salt" -msgstr "" - -#: util/grub-mkpasswd-pbkdf2.c:184 -#, c-format -msgid "cryptographic error number %d" -msgstr "" - -#: util/grub-mkpasswd-pbkdf2.c:203 -#, c-format -msgid "PBKDF2 hash of your password is %s\n" -msgstr "" - -#: util/grub-mkrelpath.c:67 -#, fuzzy -msgid "No path is specified.\n" -msgstr "알려진 장치가 ì—†ìŒ.\n" - -#: util/grub-mkrelpath.c:78 -msgid "PATH" -msgstr "" - -#: util/grub-mkrelpath.c:79 -msgid "Transform a system filename into GRUB one." -msgstr "" - -#: util/grub-mkrescue.c:100 -msgid "save ROM images in DIR [optional]" -msgstr "" - -#. TRANSLATORS: xorriso is a program for creating ISOs and burning CDs. -#: util/grub-mkrescue.c:103 -msgid "use FILE as xorriso [optional]" -msgstr "" - -#: util/grub-mkrescue.c:109 -msgid "use STRING as product name" -msgstr "" - -#: util/grub-mkrescue.c:111 -msgid "" -"enable sparc boot. Disables HFS+, APM, ARCS and boot as disk image for i386-" -"pc" -msgstr "" - -#: util/grub-mkrescue.c:112 -msgid "" -"enable ARCS (big-endian mips machines, mostly SGI) boot. Disables HFS+, APM, " -"sparc64 and boot as disk image for i386-pc" -msgstr "" - -#. TRANSLATORS: it generates one single image which is bootable through any method. -#: util/grub-mkrescue.c:125 -msgid "Make GRUB CD-ROM, disk, pendrive and floppy bootable image." -msgstr "" - -#: util/grub-mkrescue.c:130 -#, c-format -msgid "" -"Generates a bootable CD/USB/floppy image. Arguments other than options to " -"this program are passed to xorriso, and indicate source files, source " -"directories, or any of the mkisofs options listed by the output of `%s'." -msgstr "" - -#: util/grub-mkrescue.c:134 -msgid "Option -- switches to native xorriso command mode." -msgstr "" - -#: util/grub-mkrescue.c:135 -msgid "Mail xorriso support requests to ." -msgstr "" - -#: util/grub-mkrescue.c:221 util/grub-mkstandalone.c:114 -#, fuzzy -msgid "[OPTION] SOURCE..." -msgstr "[옵션...]" - -#: util/grub-mkrescue.c:257 util/grub-mkrescue.c:300 util/grub-mkrescue.c:588 -#, c-format -msgid "enabling %s support ..." -msgstr "" - -#: util/grub-mkrescue.c:486 -msgid "xorriso not found" -msgstr "" - -#: util/grub-mkrescue.c:623 -msgid "" -"Your xorriso doesn't support `--grub2-boot-info'. Some features are " -"disabled. Please use xorriso 1.2.9 or later." -msgstr "" - -#: util/grub-mkrescue.c:650 -msgid "" -"Your xorriso doesn't support `--grub2-boot-info'. Your core image is too " -"big. Boot as disk is disabled. Please use xorriso 1.2.9 or later." -msgstr "" - -#: util/grub-mkstandalone.c:115 -msgid "" -"Generate a standalone image (containing all modules) in the selected format" -msgstr "" - -#: util/grub-mkstandalone.c:115 -msgid "Graft point syntax (E.g. /boot/grub/grub.cfg=./grub.cfg) is accepted" -msgstr "" - -#: util/grub-mount.c:552 -msgid "IMAGE1 [IMAGE2 ...] MOUNTPOINT" -msgstr "" - -#: util/grub-mount.c:575 -msgid "need an image and mountpoint" -msgstr "" - -#: util/grub-probe.c:731 -msgid "given argument is a system device, not a path" -msgstr "" - -#: util/grub-probe.c:736 -msgid "separate items in output using ASCII NUL characters" -msgstr "" - -#: util/grub-probe.c:754 -#, c-format -msgid "[default=%s]" -msgstr "" - -#: util/grub-probe.c:756 -msgid "print TARGET" -msgstr "" - -#: util/grub-probe.c:757 -msgid "available targets:" -msgstr "" - -#: util/grub-probe.c:839 -#, fuzzy -msgid "[OPTION]... [PATH|DEVICE]" -msgstr "[옵션] <파ì¼ë˜ëŠ”ìž¥ì¹˜>" - -#: util/grub-probe.c:840 -msgid "" -"Probe device information for a given path (or device, if the -d option is " -"given)." -msgstr "" - -#: util/grub-render-label.c:60 -#, fuzzy -msgid "read text from FILE." -msgstr "<주소>ì—서 ë°”ì´íŠ¸ë¥¼ ì½ìŠµë‹ˆë‹¤." - -#: util/grub-render-label.c:62 -msgid "use COLOR for text" -msgstr "" - -#: util/grub-render-label.c:64 -msgid "use COLOR for background" -msgstr "" - -#. TRANSLATORS: The result is always stored to file and -#. never shown directly, so don't use "show" as synonym for render. Use "create" if -#. "render" doesn't translate directly. -#: util/grub-render-label.c:69 -msgid "set the label to render" -msgstr "" - -#: util/grub-render-label.c:73 -msgid "use FILE as font (PF2)." -msgstr "" - -#. TRANSLATORS: This file takes a text and creates a graphical representation of it, -#. putting the result into .disk_label file. The result is always stored to file and -#. never shown directly, so don't use "show" as synonym for render. Use "create" if -#. "render" doesn't translate directly. -#: util/grub-render-label.c:136 -msgid "Render Apple .disk_label." -msgstr "" - -#: util/grub-render-label.c:158 util/grub-syslinux2cfg.c:169 -#, fuzzy -msgid "Missing arguments\n" -msgstr "가능한 ì¸ìžê°’ì€:" - -#: util/grub-script-check.c:87 -msgid "[PATH]" -msgstr "" - -#: util/grub-script-check.c:88 -msgid "Checks GRUB script configuration file for syntax errors." -msgstr "" - -#: util/grub-script-check.c:207 -#, c-format -msgid "Syntax error at line %u\n" -msgstr "" - -#: util/grub-script-check.c:212 -#, c-format -msgid "Script `%s' contains no commands and will do nothing\n" -msgstr "" - -#: util/grub-setup.c:79 -#, c-format -msgid "use FILE as the boot image [default=%s]" -msgstr "" - -#: util/grub-setup.c:81 -#, c-format -msgid "use FILE as the core image [default=%s]" -msgstr "" - -#: util/grub-setup.c:210 -msgid "No device is specified.\n" -msgstr "알려진 장치가 ì—†ìŒ.\n" - -#: util/grub-setup.c:224 -msgid "" -"Set up images to boot from DEVICE.\n" -"\n" -"You should not normally run this program directly. Use grub-install instead." -msgstr "" - -#: util/grub-setup.c:228 -msgid "DEVICE must be an OS device (e.g. /dev/sda)." -msgstr "" - -#: util/grub-setup.c:297 -#, c-format -msgid "Invalid device `%s'.\n" -msgstr "유효하지 ì•Šì€ ìž¥ì¹˜ `%s'.\n" - -#: util/grub-syslinux2cfg.c:64 -msgid "root directory as it will be seen on runtime [default=/]." -msgstr "" - -#: util/grub-syslinux2cfg.c:69 -msgid "" -"current directory of syslinux as it will be seen on runtime [default is " -"parent directory of input file]." -msgstr "" - -#: util/grub-syslinux2cfg.c:74 -msgid "write output to FILE [default=stdout]." -msgstr "" - -#: util/grub-syslinux2cfg.c:148 -msgid "Transform syslinux config into GRUB one." -msgstr "" - -#: util/mkimage.c:688 util/mkimage.c:717 util/mkimage.c:734 -msgid "cannot compress the kernel image" -msgstr "ì»¤ë„ ì´ë¯¸ì§€ ì••ì¶•ì„ í•  수 없습니다" - -#: util/mkimage.c:766 util/mkimage.c:1077 -#, c-format -msgid "unknown compression %d" -msgstr "" - -#: util/mkimage.c:1088 -#, fuzzy -msgid "Decompressor is too big" -msgstr "코어 ì´ë¯¸ì§€ê°€ 너무 í½ë‹ˆë‹¤" - -#: util/mkimage.c:1133 -#, fuzzy, c-format -msgid "core image is too big (0x%x > 0x%x)" -msgstr "코어 ì´ë¯¸ì§€ê°€ 너무 í½ë‹ˆë‹¤ (%p > %p)" - -#: util/mkimage.c:1140 -#, fuzzy, c-format -msgid "kernel image is too big (0x%x > 0x%x)" -msgstr "코어 ì´ë¯¸ì§€ê°€ 너무 í½ë‹ˆë‹¤ (%p > %p)" - -#: util/mkimage.c:1220 util/mkimage.c:1501 -#, c-format -msgid "diskboot.img size must be %u bytes" -msgstr "diskboot.img í¬ê¸°ëŠ” 반드시 %u ë°”ì´íЏì´ì–´ì•¼ 합니다" - -#: util/mkimage.c:1571 -msgid "" -"fwstart.img doesn't match the known good version. proceed at your own risk" -msgstr "" - -#: util/mkimage.c:1575 util/mkimage.c:1601 -#, fuzzy -msgid "firmware image is too big" -msgstr "코어 ì´ë¯¸ì§€ê°€ 너무 í½ë‹ˆë‹¤" - -#: util/resolve.c:93 -#, c-format -msgid "invalid line format: %s" -msgstr "" - -#: util/setup.c:167 -msgid "the first sector of the core file is not sector-aligned" -msgstr "코어 파ì¼ì˜ 첫 섹터 ë¶€ë¶„ì´ sector-alignedê°€ 아닙니다" - -#: util/setup.c:177 -msgid "non-sector-aligned data is found in the core file" -msgstr "" -"Copy text \t\r\n" -"non-sector-aligned ë°ì´í„°ê°€ 코어 파ì¼ì—서 발견ë˜ì—ˆìŠµë‹ˆë‹¤" - -#: util/setup.c:199 -msgid "the sectors of the core file are too fragmented" -msgstr "코어 파ì¼ì˜ 섹터가 너무 잘려져 있습니다" - -#: util/setup.c:280 -#, c-format -msgid "the size of `%s' is not %u" -msgstr "'%s'ì˜ í¬ê¸°ëŠ” %uì´(ê°€) 아닙니다." - -#: util/setup.c:290 -#, c-format -msgid "the size of `%s' is too small" -msgstr "'%s'ì˜ í¬ê¸°ê°€ 너무 작습니다." - -#: util/setup.c:428 -#, fuzzy -msgid "" -"Attempting to install GRUB to a disk with multiple partition labels or both " -"partition label and filesystem. This is not supported yet." -msgstr "파티션ë˜ì§€ ì•Šì€ ë””ìŠ¤í¬ì— GRUB 설치를 시ë„합니다. 좋지 ì•Šì€ ë°©ë²•ìž…ë‹ˆë‹¤." - -#: util/setup.c:441 -#, c-format -msgid "unable to identify a filesystem in %s; safety check can't be performed" -msgstr "%s ìƒì˜ íŒŒì¼ ì‹œìŠ¤í…œì„ ì•Œ 수 없습니다; 안전 ì ê²€ì„ 수행할 수 없습니다" - -#. TRANSLATORS: Filesystem may reserve the space just GRUB isn't sure about it. -#: util/setup.c:445 -#, c-format -msgid "" -"%s appears to contain a %s filesystem which isn't known to reserve space for " -"DOS-style boot. Installing GRUB there could result in FILESYSTEM " -"DESTRUCTION if valuable data is overwritten by grub-setup (--skip-fs-probe " -"disables this check, use at your own risk)" -msgstr "" -"%sì— %s íŒŒì¼ ì‹œìŠ¤í…œì´ í¬í•¨ëœ 것처럼 보입니다. ì´ê²ƒì€ DOS ë°©ì‹ì˜ ë¶€íŒ…ì„ ìœ„í•œ " -"공간확보를 하는지 알 수 없습니다.\\r\n" -"GRUB 설치는 만약 귀중한 ë°ì´í„°ê°€ grub-setupì— ì˜í•´ ë®ì–´ 씌워진다면 " -"FILESYSTEM DESTRUCTION íŒŒì¼ ì‹œìŠ¤í…œ 파괴를 가져올 수 있습니다.(--skip-fs-" -"probe ì˜µì…˜ì€ ì´ëŸ¬í•œ ì ê²€ì„ 하지 않습니다. ì±…ìž„ì€ ì „ì ìœ¼ë¡œ 당신ì—게 있습니다)" - -#. TRANSLATORS: Partition map may reserve the space just GRUB isn't sure about it. -#: util/setup.c:458 -#, fuzzy, c-format -msgid "" -"%s appears to contain a %s partition map which isn't known to reserve space " -"for DOS-style boot. Installing GRUB there could result in FILESYSTEM " -"DESTRUCTION if valuable data is overwritten by grub-setup (--skip-fs-probe " -"disables this check, use at your own risk)" -msgstr "" -"%sì— %s íŒŒì¼ ì‹œìŠ¤í…œì´ í¬í•¨ëœ 것처럼 보입니다. ì´ê²ƒì€ DOS ë°©ì‹ì˜ ë¶€íŒ…ì„ ìœ„í•œ " -"공간확보를 하는지 알 수 없습니다.\\r\n" -"GRUB 설치는 만약 귀중한 ë°ì´í„°ê°€ grub-setupì— ì˜í•´ ë®ì–´ 씌워진다면 " -"FILESYSTEM DESTRUCTION íŒŒì¼ ì‹œìŠ¤í…œ 파괴를 가져올 수 있습니다.(--skip-fs-" -"probe ì˜µì…˜ì€ ì´ëŸ¬í•œ ì ê²€ì„ 하지 않습니다. ì±…ìž„ì€ ì „ì ìœ¼ë¡œ 당신ì—게 있습니다)" - -#: util/setup.c:465 -#, fuzzy, c-format -msgid "" -"%s appears to contain a %s partition map and LDM which isn't known to be a " -"safe combination. Installing GRUB there could result in FILESYSTEM " -"DESTRUCTION if valuable data is overwritten by grub-setup (--skip-fs-probe " -"disables this check, use at your own risk)" -msgstr "" -"%sì— %s íŒŒì¼ ì‹œìŠ¤í…œì´ í¬í•¨ëœ 것처럼 보입니다. ì´ê²ƒì€ DOS ë°©ì‹ì˜ ë¶€íŒ…ì„ ìœ„í•œ " -"공간확보를 하는지 알 수 없습니다.\\r\n" -"GRUB 설치는 만약 귀중한 ë°ì´í„°ê°€ grub-setupì— ì˜í•´ ë®ì–´ 씌워진다면 " -"FILESYSTEM DESTRUCTION íŒŒì¼ ì‹œìŠ¤í…œ 파괴를 가져올 수 있습니다.(--skip-fs-" -"probe ì˜µì…˜ì€ ì´ëŸ¬í•œ ì ê²€ì„ 하지 않습니다. ì±…ìž„ì€ ì „ì ìœ¼ë¡œ 당신ì—게 있습니다)" - -#: util/setup.c:478 -#, fuzzy -msgid "" -"Attempting to install GRUB to a partitionless disk or to a partition. This " -"is a BAD idea." -msgstr "파티션ë˜ì§€ ì•Šì€ ë””ìŠ¤í¬ì— GRUB 설치를 시ë„합니다. 좋지 ì•Šì€ ë°©ë²•ìž…ë‹ˆë‹¤." - -#: util/setup.c:483 -#, fuzzy -msgid "" -"Attempting to install GRUB to a disk with multiple partition labels. This " -"is not supported yet." -msgstr "파티션ë˜ì§€ ì•Šì€ ë””ìŠ¤í¬ì— GRUB 설치를 시ë„합니다. 좋지 ì•Šì€ ë°©ë²•ìž…ë‹ˆë‹¤." - -#: util/setup.c:489 -#, c-format -msgid "Partition style `%s' doesn't support embedding" -msgstr "" - -#: util/setup.c:496 -#, c-format -msgid "File system `%s' doesn't support embedding" -msgstr "" - -#: util/setup.c:537 -msgid "Your embedding area is unusually small. core.img won't fit in it." -msgstr "ë¼ì›Œë„£ê¸° ê³µê°„ì´ ë¹„ì •ìƒì ìœ¼ë¡œ 작습니다. core.imgê°€ ë§žì§€ 않습니다." - -#: util/setup.c:559 util/setup.c:725 util/setup.c:844 -msgid "no terminator in the core image" -msgstr "코어 ì´ë¯¸ì§€ë‚´ì— 종료문ìžê°€ 없습니다" - -#: util/setup.c:622 -msgid "core.img version mismatch" -msgstr "" - -#: util/setup.c:675 -#, fuzzy -msgid "" -"embedding is not possible, but this is required for RAID and LVM install" -msgstr "" -"ë¼ì›Œë„£ê¸°ê°€ 불가능합니다, 하지만 루트 장치가 RAID ì–´ë ˆì´ í˜¹ì€ LVM ë³¼ë¥¨ì— ë“¤ì–´ " -"있다면 ë¼ì›Œë„£ê¸°ê°€ 필요합니다." - -#: util/setup.c:682 -#, fuzzy, c-format -msgid "can't determine filesystem on %s" -msgstr "íŒŒì¼ ì‹œìŠ¤í…œì˜ ì¢…ë¥˜ë¥¼ 결정합니다." - -#: util/setup.c:685 -#, c-format -msgid "filesystem `%s' doesn't support blocklists" -msgstr "" - -#. TRANSLATORS: cross-disk refers to /boot being on one disk -#. but MBR on another. -#: util/setup.c:694 -#, fuzzy -msgid "embedding is not possible, but this is required for cross-disk install" -msgstr "" -"ë¼ì›Œë„£ê¸°ê°€ 불가능합니다, 하지만 루트 장치가 RAID ì–´ë ˆì´ í˜¹ì€ LVM ë³¼ë¥¨ì— ë“¤ì–´ " -"있다면 ë¼ì›Œë„£ê¸°ê°€ 필요합니다." - -#: util/setup.c:700 -#, fuzzy -msgid "" -"Embedding is not possible. GRUB can only be installed in this setup by " -"using blocklists. However, blocklists are UNRELIABLE and their use is " -"discouraged." -msgstr "" -"ìž„ë² ë”©ì´ ë¶ˆê°€ëŠ¥í•©ë‹ˆë‹¤. 차단목ë¡ì„ 사용하여 ì´ ì„¤ì •ìœ¼ë¡œ GRUBì„ ì„¤ì¹˜ë§Œ í•  수 있" -"습니다. 하지만, 차단목ë¡ì„ 신뢰할 수 없고 ì´ê²ƒì˜ ì‚¬ìš©ì„ ë¶ˆí—ˆí•©ë‹ˆë‹¤." - -#. TRANSLATORS: Here GRUB refuses to continue with blocklist install. -#: util/setup.c:705 -msgid "will not proceed with blocklists" -msgstr "" - -#: util/setup.c:817 util/setup.c:837 -msgid "blocklists are invalid" -msgstr "" - -#: util/setup.c:847 -msgid "blocklists are incomplete" -msgstr "" - -#~ msgid "Fake BIOS." -#~ msgstr "ë°”ì´ì˜¤ìŠ¤ë¥¼ í‰ë‚´ëƒ…니다." - -#~ msgid "List compatible VESA BIOS extension video modes." -#~ msgstr "호환 가능한 VESA BIOS 확장 비디오 모드를 열거함." - -#~ msgid "Test VESA BIOS Extension 2.0+ support." -#~ msgstr "VESA BIOS 확장 2.0+ ì§€ì›ì—¬ë¶€ 테스트." - -#~ msgid "[--shift] [--ctrl] [--alt]" -#~ msgstr "[--shift] [--ctrl] [--alt]" - -#~ msgid "Read word from ADDR." -#~ msgstr "<주소>ì—서 워드를 ì½ìŠµë‹ˆë‹¤." - -#~ msgid "Read dword from ADDR." -#~ msgstr "<주소>ì—서 ë”블 워드를 ì½ìŠµë‹ˆë‹¤." - -#~ msgid "Write word VALUE to ADDR." -#~ msgstr "<주소>ì— <ê°’> 워드를 ì”니다." - -#~ msgid "Write dword VALUE to ADDR." -#~ msgstr "<주소>ì— <ê°’> ë”블 워드를 ì”니다." - -#~ msgid "[DEVICE]" -#~ msgstr "[<장치>]" - -#~ msgid "Set the root device." -#~ msgstr "루트 장치를 설정합니다." - -#~ msgid "Simulate a hard drive with partitions." -#~ msgstr "íŒŒí‹°ì…˜ì„ ê°€ì§„ 하드 드ë¼ì´ë¸Œ í‰ë‚´ë¥¼ 냅니다." - -#~ msgid "Load XNU hibernate image." -#~ msgstr "XNU 최대절전모드 ì´ë¯¸ì§€ë¥¼ ì½ì–´ë“¤ìž…니다." - -#, fuzzy -#~ msgid "" -#~ "Minimum Emacs-like screen editing is supported. TAB lists completions. " -#~ "Press Ctrl-x to boot, Ctrl-c for a command-line or ESC to return menu." -#~ msgstr "" -#~ "ì´ë§¥ìŠ¤ì™€ ê°™ì€ íŽ¸ì§‘ ê¸°ëŠ¥ì„ ìµœì†Œí•œìœ¼ë¡œ ì§€ì›í•©ë‹ˆë‹¤. íƒ­ì€ ì™„ì„± ê¸°ëŠ¥ì„ ì§€ì›í•©ë‹ˆ" -#~ "다. Ctrl-x는 부팅, Ctrl-c는 명령행 ë˜ëŠ” ESC는 현재 편집한 ê²ƒì„ ì·¨ì†Œí•˜ê³  " -#~ "GRUB으로 ë˜ëŒì•„갑니다." - -#~ msgid "Partition table" -#~ msgstr "파티션 í…Œì´ë¸”" - -#~ msgid "the core image is too small" -#~ msgstr "코어 ì´ë¯¸ì§€ê°€ 너무 작습니다" - -#~ msgid "prefix is too long" -#~ msgstr "ì ‘ë‘ì–´ê°€ 너무 ê¹ë‹ˆë‹¤." - -#, fuzzy -#~ msgid "" -#~ "Usage: %s [OPTION]... [MODULES]\n" -#~ "\n" -#~ "Make a bootable image of GRUB.\n" -#~ "\n" -#~ " -d, --directory=DIR use images and modules under DIR [default=%s]\n" -#~ " -p, --prefix=DIR set grub_prefix directory [default=%s]\n" -#~ " -m, --memdisk=FILE embed FILE as a memdisk image\n" -#~ " -f, --font=FILE embed FILE as a boot font\n" -#~ " -c, --config=FILE embed FILE as boot config\n" -#~ " -o, --output=FILE output a generated image to FILE " -#~ "[default=stdout]\n" -#~ " -O, --format=FORMAT generate an image in format [default=" -#~ msgstr "" -#~ "사용법: %s [옵션]... [모듈]\n" -#~ "\n" -#~ "GRUBì˜ ë¶€íŠ¸ìš© ì´ë¯¸ì§€ë¥¼ 만들니다.\n" -#~ "\n" -#~ " -d, --directory=<디렉터리> 디렉터리 ë‚´ì— ìžˆëŠ” ì´ë¯¸ì§€ì™€ 모듈ì„\n" -#~ " 사용합니다. [기본=%s/@platform@]\n" -#~ " -p, --prefix=<디렉터리> grub_prefix 디렉터리를 설정합니다. [기본=" -#~ "%s]\n" -#~ " -m, --memdisk=<파ì¼> <파ì¼>ì„ memdisk ì´ë¯¸ì§€ë¡œ í¬í•¨í•©ë‹ˆë‹¤\n" -#~ " -f, --font=<파ì¼> <파ì¼>ì„ ë¶€íŒ… 글꼴로 í¬í•¨í•©ë‹ˆë‹¤\n" -#~ " -c, --config=<파ì¼> <파ì¼>ì„ ë¶€íŒ… 설정으로 í¬í•¨í•©ë‹ˆë‹¤\n" -#~ " -n, --note CHRP 오픈 íŽŒì›¨ì–´ì— NOTE 세그먼트 추가\n" -#~ " -o, --output=<파ì¼> ìƒì„±í•œ ì´ë¯¸ì§€ë¥¼ 파ì¼ë¡œ 출력합니다. [기본" -#~ "=stdout]\n" -#~ " -O, --format=<형ì‹> 주어진 형ì‹ìœ¼ë¡œ ì´ë¯¸ì§€ë¥¼ ìƒì„±í•©ë‹ˆë‹¤.\n" -#~ " 사용가능한 형ì‹: %s\n" -#~ " -h, --help 현재 메시지를 보여주고 종료합니다.\n" -#~ " -V, --version 버전 정보를 출력하고 종료합니다.\n" -#~ " -v, --verbose ë”ìš± 다양한 메시지를 출력합니다.\n" -#~ "\n" -#~ "문제ì ì€ <%s> 주소로 ë³´ë‚´ 주십시오.\n" - -#~ msgid "cannot open %s" -#~ msgstr "%sì„(를) ì—´ 수 없습니다." - -#~ msgid "" -#~ "Attempting to install GRUB to a partition instead of the MBR. This is a " -#~ "BAD idea." -#~ msgstr "íŒŒí‹°ì…˜ì— MBR 대신 GRUB 설치를 시ë„합니다. 좋지 ì•Šì€ ë°©ë²•ìž…ë‹ˆë‹¤." - -#~ msgid "No DOS-style partitions found" -#~ msgstr "ë„스 ë°©ì‹ì˜ íŒŒí‹°ì…˜ì´ ë°œê²¬ë˜ì§€ 않았습니다." - -#~ msgid "if you really want blocklists, use --force" -#~ msgstr "만약 블ë¡ë¦¬ìŠ¤íŠ¸ ì‚¬ìš©ì„ ì›í•œë‹¤ë©´, --force ì˜µì…˜ì„ ì‚¬ìš©í•˜ì‹­ì‹œìš”." - -#~ msgid "failed to read the first sector of the core image" -#~ msgstr "코어 ì´ë¯¸ì§€ì˜ 첫 섹터 부분ì½ê¸°ì— 실패 했습니다" - -#, fuzzy -#~ msgid "" -#~ "Usage: %s [OPTION]... DEVICE\n" -#~ "\n" -#~ "Set up images to boot from DEVICE.\n" -#~ "DEVICE must be a GRUB device (e.g. `(hd0,1)').\n" -#~ "\n" -#~ " -b, --boot-image=FILE use FILE as the boot image [default=%s]\n" -#~ " -c, --core-image=FILE use FILE as the core image [default=%s]\n" -#~ " -d, --directory=DIR use GRUB files in the directory DIR [default=" -#~ "%s]\n" -#~ " -m, --device-map=FILE use FILE as the device map [default=%s]\n" -#~ " -r, --root-device=DEV use DEV as the root device [default=guessed]\n" -#~ " -f, --force install even if problems are detected\n" -#~ " -s, --skip-fs-probe do not probe for filesystems in DEVICE\n" -#~ " -h, --help display this message and exit\n" -#~ " -V, --version print version information and exit\n" -#~ " -v, --verbose print verbose messages\n" -#~ "\n" -#~ "Report bugs to <%s>.\n" -#~ msgstr "" -#~ "사용법: %s [옵션]... <장치>\n" -#~ "\n" -#~ "<장치>로부터 부팅할 ì´ë¯¸ì§€ë¥¼ 설정합니다.\n" -#~ "<장치>는 GRUBìš© 장치ì´ì—¬ì•¼ 합니다. (예. `(hd0,1)').\n" -#~ "\n" -#~ "ì¼ë°˜ì ìœ¼ë¡œ %s ëª…ë ¹ì„ ì§ì ‘ 실행하지 ë§ì•„야 합니다. 대신\n" -#~ "grub-installì„ ì‚¬ìš©í•˜ì‹­ì‹œì˜¤.\n" -#~ "\n" -#~ " -b, --boot-image=<파ì¼> 부트 ì´ë¯¸ì§€ë¡œ 파ì¼ì„ 사용합니다 [기본=%s]\n" -#~ " -c, --core-image=<파ì¼> 코어 ì´ë¯¸ì§€ë¡œ 파ì¼ì„ 사용합니다 [기본=%s]\n" -#~ " -d, --directory=<디렉터리> <디렉터리>ì˜ GRUB 파ì¼ì„ 사용합니다 [기본=" -#~ "%s]\n" -#~ " -m, --device-map=<파ì¼> 장치 맵으로 파ì¼ì„ 사용합니다 [기본=%s]\n" -#~ " -r, --root-device=<장치> 루트 장치로 <장치>를 사용합니다 [기본" -#~ "=guessed]\n" -#~ " -f, --force 문제를 ë°œê²¬í•˜ì—¬ë„ ì„¤ì¹˜í•©ë‹ˆë‹¤\n" -#~ " -s, --skip-fs-probe 장치 ë‚´ì˜ íŒŒì¼ ì‹œìŠ¤í…œ ê²€ì¦ì„ 하지 않습니다\n" -#~ " -h, --help 현재 메시지를 보여주고 종료합니다\n" -#~ " -V, --version 버전 정보를 출력하고 종료합니다\n" -#~ " -v, --verbose ë”ìš± 다양한 메시지를 ë³´ì—¬ì¤ë‹ˆë‹¤\n" -#~ "\n" -#~ "문제ì ì€ <%s> 주소로 ë³´ë‚´ 주십시오.\n" - -#~ msgid "cannot guess the root device. Specify the option `--root-device'" -#~ msgstr "루트 장치같지 않ìŒ. `--root-device' ì˜µì…˜ì„ ì‚¬ìš©í•´ 지정하십시오." - -#, fuzzy -#~ msgid "Loading kernel of FreeBSD %s ..." -#~ msgstr "FreeBSD 커ë„ì„ ì½ì–´ë“¤ìž…니다." - -#, fuzzy -#~ msgid "Loading Linux %s ..." -#~ msgstr "리눅스를 ì½ì–´ë“¤ìž…니다." - -#, fuzzy -#~ msgid "Loading initial ramdisk ..." -#~ msgstr "initrd를 ì½ì–´ë“¤ìž…니다." diff --git a/thirdparty/grub-2.04/po/lt.gmo b/thirdparty/grub-2.04/po/lt.gmo deleted file mode 100644 index 1a6e27db64e68f716bbd926ee583c551ce4086ab..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 98246 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, 2013. -# Mindaugas Baranauskas , 2014, 2017. -msgid "" -msgstr "" -"Project-Id-Version: grub 2.02-pre3\n" -"Report-Msgid-Bugs-To: bug-grub@gnu.org\n" -"POT-Creation-Date: 2019-07-04 16:09+0200\n" -"PO-Revision-Date: 2017-04-26 07:26+0200\n" -"Last-Translator: Mindaugas Baranauskas \n" -"Language-Team: Lithuanian \n" -"Language: lt\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Bugs: Report translation errors to the Language-Team address.\n" -"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && (n" -"%100<10 || n%100>=20) ? 1 : 2);\n" -"X-Generator: Lokalize 2.0\n" - -#: grub-core/bus/usb/serial/ftdi.c:145 grub-core/bus/usb/serial/pl2303.c:158 -#: grub-core/term/ieee1275/escc.c:169 grub-core/term/ns8250.c:202 -msgid "unsupported serial port speed" -msgstr "nepalaikomas nuosekliojo prievado greitis" - -#: grub-core/bus/usb/serial/ftdi.c:151 grub-core/bus/usb/serial/pl2303.c:164 -#: grub-core/term/efi/serial.c:116 grub-core/term/ieee1275/escc.c:175 -#: grub-core/term/ns8250.c:208 grub-core/term/serial.c:227 -#: grub-core/term/serial.c:243 -msgid "unsupported serial port parity" -msgstr "nepalaikomas nuosekliojo prievado lyginumas" - -#: grub-core/bus/usb/serial/ftdi.c:157 grub-core/bus/usb/serial/pl2303.c:170 -#: grub-core/term/efi/serial.c:122 grub-core/term/ieee1275/escc.c:181 -#: grub-core/term/ns8250.c:213 grub-core/term/serial.c:267 -msgid "unsupported serial port stop bits number" -msgstr "nepalaikomas nuosekliojo prievado pabaigos bitų skaiÄius" - -#: grub-core/bus/usb/serial/ftdi.c:161 grub-core/bus/usb/serial/pl2303.c:174 -#: grub-core/term/efi/serial.c:126 grub-core/term/ieee1275/escc.c:185 -#: grub-core/term/ns8250.c:217 -msgid "unsupported serial port word length" -msgstr "nepalaikomas nuosekliojo prievado žodžio ilgis" - -#: grub-core/commands/acpi.c:42 -msgid "Don't load host tables specified by comma-separated list." -msgstr "Neįkelti lentelių, nurodytų kableliais atskirtame sÄ…raÅ¡e." - -#: grub-core/commands/acpi.c:45 -msgid "Load only tables specified by comma-separated list." -msgstr "Ä®kelti tik lenteles, nurodytas kableliais atskirtame sÄ…raÅ¡e." - -#: grub-core/commands/acpi.c:46 -msgid "Export version 1 tables to the OS." -msgstr "Eksportuoti pirmosios versijos lenteles į OS." - -#: grub-core/commands/acpi.c:47 -msgid "Export version 2 and version 3 tables to the OS." -msgstr "Eksportuoti antrosios ir treÄiosios versijų lenteles į OS." - -#: grub-core/commands/acpi.c:48 -msgid "Set OEMID of RSDP, XSDT and RSDT." -msgstr "Nustatyti RSDP, XSDT ir RSDT struktÅ«rų OEMID reikÅ¡mÄ™." - -#: grub-core/commands/acpi.c:50 -msgid "Set OEMTABLE ID of RSDP, XSDT and RSDT." -msgstr "Nustatyti RSDP, XSDT ir RSDT struktÅ«rų OEMTABLE ID reikÅ¡mÄ™." - -#: grub-core/commands/acpi.c:52 -msgid "Set OEMTABLE revision of RSDP, XSDT and RSDT." -msgstr "Nustatyti RSDP, XSDT ir RSDT struktÅ«rų OEMTABLE revizijÄ…." - -#: grub-core/commands/acpi.c:54 -msgid "Set creator field of RSDP, XSDT and RSDT." -msgstr "Nustatyti RSDP, XSDT ir RSDT struktÅ«rų kÅ«rÄ—jo laukÄ…." - -#: grub-core/commands/acpi.c:56 -msgid "Set creator revision of RSDP, XSDT and RSDT." -msgstr "Nustatyti RSDP, XSDT ir RSDT struktÅ«rų kÅ«rÄ—jo revizijÄ…." - -#. TRANSLATORS: "hangs" here is a noun, not a verb. -#: grub-core/commands/acpi.c:58 -msgid "" -"Don't update EBDA. May fix failures or hangs on some BIOSes but makes it " -"ineffective with OS not receiving RSDP from GRUB." -msgstr "" -"Nenaujinti EBDA. Tai gali paÅ¡alinti nesklandumus ar strigtis, pasitaikanÄias " -"su kai kuriomis BIOS realizacijomis, taÄiau neefektyvu, nes OS negauna RSDP " -"struktÅ«ros iÅ¡ GRUB." - -#: grub-core/commands/acpi.c:650 grub-core/commands/acpi.c:667 -#: grub-core/commands/i386/pc/play.c:105 grub-core/commands/keylayouts.c:230 -#: grub-core/commands/keylayouts.c:245 grub-core/commands/keylayouts.c:263 -#: grub-core/commands/verifiers.c:156 grub-core/efiemu/loadcore.c:350 -#: grub-core/kern/elf.c:117 grub-core/kern/elfXX.c:29 -#: grub-core/kern/elfXX.c:156 grub-core/loader/arm/linux.c:319 -#: grub-core/loader/arm64/linux.c:330 grub-core/loader/arm64/xen_boot.c:356 -#: grub-core/loader/efi/chainloader.c:276 -#: grub-core/loader/efi/chainloader.c:297 -#: grub-core/loader/efi/chainloader.c:329 grub-core/loader/efi/fdt.c:138 -#: grub-core/loader/i386/bsd.c:1276 grub-core/loader/i386/bsd.c:2116 -#: grub-core/loader/i386/bsdXX.c:20 grub-core/loader/i386/bsdXX.c:36 -#: grub-core/loader/i386/bsdXX.c:63 grub-core/loader/i386/bsdXX.c:357 -#: grub-core/loader/i386/bsdXX.c:376 grub-core/loader/i386/bsdXX.c:519 -#: grub-core/loader/i386/bsdXX.c:535 grub-core/loader/i386/bsdXX.c:615 -#: grub-core/loader/i386/bsdXX.c:638 -#: grub-core/loader/i386/coreboot/chainloader.c:112 -#: grub-core/loader/i386/coreboot/chainloader.c:148 -#: grub-core/loader/i386/coreboot/chainloader.c:170 -#: grub-core/loader/i386/linux.c:667 grub-core/loader/i386/linux.c:788 -#: grub-core/loader/i386/linux.c:1005 grub-core/loader/i386/multiboot_mbi.c:171 -#: grub-core/loader/i386/pc/chainloader.c:202 -#: grub-core/loader/i386/pc/linux.c:149 grub-core/loader/i386/pc/linux.c:320 -#: grub-core/loader/i386/pc/linux.c:362 grub-core/loader/i386/pc/plan9.c:457 -#: grub-core/loader/i386/pc/plan9.c:550 grub-core/loader/i386/pc/plan9.c:566 -#: grub-core/loader/i386/xen.c:934 grub-core/loader/i386/xen_file.c:72 -#: grub-core/loader/i386/xen_fileXX.c:43 grub-core/loader/i386/xen_fileXX.c:186 -#: grub-core/loader/i386/xen_fileXX.c:339 grub-core/loader/ia64/efi/linux.c:423 -#: grub-core/loader/ia64/efi/linux.c:471 grub-core/loader/linux.c:286 -#: grub-core/loader/macho.c:84 grub-core/loader/macho.c:109 -#: grub-core/loader/machoXX.c:33 grub-core/loader/machoXX.c:46 -#: grub-core/loader/machoXX.c:76 grub-core/loader/machoXX.c:116 -#: grub-core/loader/machoXX.c:131 grub-core/loader/machoXX.c:147 -#: grub-core/loader/machoXX.c:196 grub-core/loader/machoXX.c:317 -#: grub-core/loader/multiboot.c:434 grub-core/loader/multiboot_elfxx.c:171 -#: grub-core/loader/multiboot_elfxx.c:234 -#: grub-core/loader/multiboot_elfxx.c:278 grub-core/loader/multiboot_mbi2.c:129 -#: grub-core/loader/xnu.c:737 grub-core/loader/xnu.c:795 -#: grub-core/loader/xnu.c:816 grub-core/loader/xnu.c:871 -#: grub-core/loader/xnu.c:914 grub-core/loader/xnu.c:952 -#: grub-core/loader/xnu_resume.c:68 grub-core/loader/xnu_resume.c:153 -#: grub-core/loader/xnu_resume.c:165 util/grub-mkimagexx.c:2288 -#, c-format -msgid "premature end of file %s" -msgstr "prieÅ¡laikinÄ— failo „%s“ pabaiga" - -#: grub-core/commands/acpi.c:779 -msgid "" -"[-1|-2] [--exclude=TABLE1,TABLE2|--load-only=TABLE1,TABLE2] FILE1 [FILE2] " -"[...]" -msgstr "" -"[-1|-2] [--exclude=LENTELÄ–1,LENTELÄ–2|--load-only=LENTELÄ–1,LENTELÄ–2] FAILAS1 " -"[FAILAS2] [...]" - -#: grub-core/commands/acpi.c:782 -msgid "Load host ACPI tables and tables specified by arguments." -msgstr "Ä®kelti kompiuterio ACPI lenteles ir lenteles, nurodytas argumentuose." - -#: grub-core/commands/acpihalt.c:368 grub-core/kern/err.c:110 -#, c-format -msgid "error: %s.\n" -msgstr "klaida: %s.\n" - -#: grub-core/commands/acpihalt.c:368 grub-core/kern/emu/misc.c:95 -#: grub-core/kern/emu/misc.c:105 grub-core/kern/emu/misc.c:134 -#: grub-core/kern/emu/mm.c:34 grub-core/kern/emu/mm.c:62 -#: grub-core/kern/mm.c:374 grub-core/lib/relocator.c:1282 -#: grub-core/lib/relocator.c:1439 grub-core/lib/relocator.c:1538 -#: grub-core/loader/arm/linux.c:259 grub-core/loader/arm64/linux.c:265 -#: grub-core/loader/arm64/linux.c:321 grub-core/loader/arm64/linux.c:340 -#: grub-core/loader/arm64/xen_boot.c:344 grub-core/loader/arm64/xen_boot.c:367 -#: grub-core/loader/efi/chainloader.c:289 grub-core/osdep/unix/dl.c:48 -#: grub-core/osdep/windows/dl.c:46 grub-core/script/lexer.c:156 -#: grub-core/script/lexer.c:182 -msgid "out of memory" -msgstr "nepakanka atminties" - -#: grub-core/commands/acpihalt.c:374 grub-core/disk/cryptodisk.c:587 -#: grub-core/disk/cryptodisk.c:632 grub-core/kern/emu/hostdisk.c:307 -#: grub-core/kern/emu/hostfs.c:149 grub-core/kern/emu/misc.c:200 -#: grub-core/osdep/linux/ofpath.c:195 grub-core/osdep/linux/ofpath.c:521 -#: grub-core/osdep/linux/ofpath.c:534 util/glue-efi.c:80 util/glue-efi.c:94 -#: util/grub-editenv.c:155 util/grub-fstest.c:577 -#: util/grub-install-common.c:943 util/grub-mkrescue.c:634 -#: util/grub-mkrescue.c:888 util/grub-mount.c:506 util/grub-render-label.c:176 -#: util/misc.c:95 util/setup.c:814 util/setup.c:833 -#, c-format -msgid "cannot read `%s': %s" -msgstr "nepavyko nuskaityti „%s“: %s" - -#. TRANSLATORS: It's computer shutdown using ACPI, not disabling ACPI. -#: grub-core/commands/acpihalt.c:452 -msgid "ACPI shutdown failed" -msgstr "IÅ¡jungti per ACPI nepavyko" - -#: grub-core/commands/arc/lsdev.c:51 -msgid "List devices." -msgstr "IÅ¡vardinti įrenginius." - -#: grub-core/commands/blocklist.c:122 grub-core/commands/cat.c:57 -#: grub-core/commands/configfile.c:35 grub-core/commands/efi/loadbios.c:168 -#: grub-core/commands/file.c:159 grub-core/commands/hexdump.c:47 -#: grub-core/commands/legacycfg.c:209 grub-core/commands/legacycfg.c:315 -#: grub-core/commands/minicmd.c:44 grub-core/commands/syslinuxcfg.c:146 -#: grub-core/commands/testload.c:58 grub-core/commands/testspeed.c:52 -#: grub-core/disk/loopback.c:93 grub-core/efiemu/main.c:293 -#: grub-core/font/font_cmd.c:32 grub-core/kern/emu/hostdisk.c:519 -#: grub-core/loader/arm/linux.c:364 grub-core/loader/arm/linux.c:409 -#: grub-core/loader/arm/linux.c:472 grub-core/loader/arm64/linux.c:243 -#: grub-core/loader/arm64/linux.c:297 grub-core/loader/arm64/xen_boot.c:398 -#: grub-core/loader/arm64/xen_boot.c:411 grub-core/loader/arm64/xen_boot.c:462 -#: grub-core/loader/efi/chainloader.c:216 grub-core/loader/i386/bsd.c:1462 -#: grub-core/loader/i386/bsd.c:1807 grub-core/loader/i386/bsd.c:2085 -#: grub-core/loader/i386/coreboot/chainloader.c:438 -#: grub-core/loader/i386/linux.c:656 grub-core/loader/i386/linux.c:1041 -#: grub-core/loader/i386/pc/chainloader.c:290 -#: grub-core/loader/i386/pc/freedos.c:105 grub-core/loader/i386/pc/linux.c:138 -#: grub-core/loader/i386/pc/linux.c:400 grub-core/loader/i386/pc/ntldr.c:85 -#: grub-core/loader/i386/pc/plan9.c:409 -#: grub-core/loader/i386/pc/pxechainloader.c:94 -#: grub-core/loader/i386/pc/truecrypt.c:96 grub-core/loader/i386/xen.c:641 -#: grub-core/loader/i386/xen.c:768 grub-core/loader/i386/xen.c:844 -#: grub-core/loader/i386/xen.c:854 grub-core/loader/i386/xnu.c:488 -#: grub-core/loader/ia64/efi/linux.c:459 grub-core/loader/ia64/efi/linux.c:539 -#: grub-core/loader/mips/linux.c:238 grub-core/loader/mips/linux.c:429 -#: grub-core/loader/multiboot.c:322 grub-core/loader/multiboot.c:374 -#: grub-core/loader/multiboot.c:384 -#: grub-core/loader/powerpc/ieee1275/linux.c:269 -#: grub-core/loader/powerpc/ieee1275/linux.c:341 -#: grub-core/loader/sparc64/ieee1275/linux.c:305 -#: grub-core/loader/sparc64/ieee1275/linux.c:381 grub-core/loader/xnu.c:351 -#: grub-core/loader/xnu.c:460 grub-core/loader/xnu.c:778 -#: grub-core/loader/xnu.c:892 grub-core/loader/xnu.c:1277 -#: grub-core/loader/xnu.c:1427 grub-core/loader/xnu.c:1453 -#: grub-core/video/readers/jpeg.c:812 grub-core/video/readers/png.c:1123 -msgid "filename expected" -msgstr "tikÄ—tasi failo vardo" - -#. TRANSLATORS: "embed" is a verb (command description). " -#: grub-core/commands/blocklist.c:154 grub-core/commands/cat.c:163 -#: grub-core/commands/configfile.c:65 grub-core/commands/configfile.c:68 -#: grub-core/commands/configfile.c:74 grub-core/commands/configfile.c:80 -#: grub-core/commands/configfile.c:86 grub-core/commands/hashsum.c:34 -#: grub-core/commands/legacycfg.c:834 grub-core/commands/legacycfg.c:841 -#: grub-core/commands/legacycfg.c:846 grub-core/commands/legacycfg.c:851 -#: grub-core/commands/macbless.c:222 grub-core/commands/minicmd.c:198 -#: grub-core/commands/syslinuxcfg.c:186 grub-core/commands/syslinuxcfg.c:194 -#: grub-core/commands/syslinuxcfg.c:200 grub-core/commands/syslinuxcfg.c:206 -#: grub-core/commands/testload.c:163 grub-core/efiemu/main.c:312 -#: grub-core/kern/emu/main.c:100 grub-core/kern/emu/main.c:103 -#: grub-core/loader/i386/bsd.c:2137 grub-core/loader/i386/bsd.c:2140 -#: grub-core/loader/i386/bsd.c:2143 -#: grub-core/loader/i386/coreboot/chainloader.c:505 -#: grub-core/loader/ia64/efi/linux.c:594 include/grub/util/install.h:32 -#: include/grub/util/install.h:64 util/grub-glue-efi.c:52 -#: util/grub-glue-efi.c:54 util/grub-glue-efi.c:56 util/grub-install.c:254 -#: util/grub-install.c:301 util/grub-mkfont.c:936 util/grub-mkimage.c:68 -#: util/grub-mkimage.c:74 util/grub-mkimage.c:76 util/grub-mkimage.c:78 -#: util/grub-mkimage.c:81 util/grub-mklayout.c:52 util/grub-mklayout.c:54 -#: util/grub-mkrescue.c:97 util/grub-mkrescue.c:101 util/grub-mkrescue.c:104 -#: util/grub-mkrescue.c:105 util/grub-mkrescue.c:106 -#: util/grub-mkstandalone.c:47 util/grub-mkstandalone.c:49 -#: util/grub-probe.c:732 util/grub-render-label.c:59 -#: util/grub-render-label.c:70 util/grub-render-label.c:72 util/grub-setup.c:78 -#: util/grub-setup.c:80 util/grub-setup.c:84 util/grub-syslinux2cfg.c:74 -#: util/grub-syslinux2cfg.c:147 -msgid "FILE" -msgstr "FAILAS" - -#: grub-core/commands/blocklist.c:154 -msgid "Print a block list." -msgstr "Spausdinti blokų sÄ…rašą." - -#: grub-core/commands/boot.c:147 grub-core/commands/legacycfg.c:533 -#: grub-core/commands/legacycfg.c:574 grub-core/loader/arm64/linux.c:250 -#: grub-core/loader/i386/bsd.c:1799 grub-core/loader/i386/bsd.c:1900 -#: grub-core/loader/i386/bsd.c:2007 grub-core/loader/i386/bsd.c:2040 -#: grub-core/loader/i386/bsd.c:2089 grub-core/loader/i386/linux.c:1047 -#: grub-core/loader/i386/pc/linux.c:406 grub-core/loader/i386/xen.c:775 -#: grub-core/loader/i386/xen.c:859 grub-core/loader/ia64/efi/linux.c:545 -#: grub-core/loader/mips/linux.c:432 grub-core/loader/multiboot.c:388 -#: grub-core/loader/powerpc/ieee1275/linux.c:347 -#: grub-core/loader/sparc64/ieee1275/linux.c:387 grub-core/loader/xnu.c:572 -#: grub-core/loader/xnu.c:665 grub-core/loader/xnu.c:781 -#: grub-core/loader/xnu.c:895 grub-core/loader/xnu.c:1091 -#: grub-core/loader/xnu.c:1258 grub-core/loader/xnu.c:1289 -#: grub-core/loader/xnu.c:1430 -msgid "you need to load the kernel first" -msgstr "pirma turite įkelti branduolį" - -#: grub-core/commands/boot.c:189 -msgid "Boot an operating system." -msgstr "Paleisti operacinÄ™ sistemÄ…." - -#: grub-core/commands/boottime.c:36 -#: grub-core/commands/i386/coreboot/cb_timestamps.c:108 -msgid "No boot time statistics is available\n" -msgstr "NÄ—ra jokios paleidimo laiko statistikos\n" - -#: grub-core/commands/boottime.c:59 -msgid "Show boot time statistics." -msgstr "Parodyti paleidimo laiko statistikÄ…." - -#: grub-core/commands/cacheinfo.c:40 -#, c-format -msgid "Disk cache statistics: hits = %lu (%lu.%02lu%%), misses = %lu\n" -msgstr "" -"Disko podÄ—lio statistika: bandymai = %lu (%lu.%02lu%%), praleisti = %lu\n" - -#: grub-core/commands/cacheinfo.c:45 -msgid "No disk cache statistics available\n" -msgstr "Disko podÄ—lio statistika neprieinama\n" - -#: grub-core/commands/cacheinfo.c:56 -msgid "Get disk cache info." -msgstr "Gauti disko podÄ—lio informacijÄ…." - -#: grub-core/commands/cat.c:33 -msgid "Accept DOS-style CR/NL line endings." -msgstr "Leisti DOS stiliaus CR/NL eiluÄių pabaigas." - -#: grub-core/commands/cat.c:163 grub-core/commands/minicmd.c:198 -msgid "Show the contents of a file." -msgstr "Rodyti failo turinį." - -#: grub-core/commands/cmp.c:43 grub-core/commands/i386/pc/drivemap.c:239 -#: grub-core/commands/i386/wrmsr.c:60 grub-core/commands/iorw.c:85 -#: grub-core/commands/memrw.c:84 grub-core/commands/password.c:75 -#: grub-core/commands/password_pbkdf2.c:94 grub-core/commands/pgp.c:826 -#: grub-core/commands/regexp.c:113 grub-core/mmap/mmap.c:517 -#: grub-core/net/dns.c:639 -msgid "two arguments expected" -msgstr "tikÄ—tasi dviejų argumentų" - -#: grub-core/commands/cmp.c:45 -#, c-format -msgid "Compare file `%s' with `%s':\n" -msgstr "Failų „%s“ ir „%s“ palyginimas:\n" - -#: grub-core/commands/cmp.c:54 -#, c-format -msgid "Files differ in size: %llu [%s], %llu [%s]\n" -msgstr "Skiriasi failų dydis: %llu [%s], %llu [%s]\n" - -#: grub-core/commands/cmp.c:81 -#, c-format -msgid "Files differ at the offset %llu: 0x%x [%s], 0x%x [%s]\n" -msgstr "Failai skiriasi ties poslinkiu %llu: 0x%x [%s], 0x%x [%s]\n" - -#. TRANSLATORS: it's always exactly 2 files. -#: grub-core/commands/cmp.c:93 -msgid "The files are identical.\n" -msgstr "Failai yra vienodi.\n" - -#: grub-core/commands/cmp.c:113 -msgid "FILE1 FILE2" -msgstr "FAILAS1 FAILAS2" - -#: grub-core/commands/cmp.c:113 -msgid "Compare two files." -msgstr "Palyginti du failus." - -#: grub-core/commands/configfile.c:65 -msgid "Load another config file." -msgstr "Ä®kelti kitÄ… konfigÅ«racijos failÄ…." - -#: grub-core/commands/configfile.c:69 grub-core/commands/configfile.c:87 -msgid "Load another config file without changing context." -msgstr "Ä®kelti kitÄ… konfigÅ«racijos failÄ…, nekeiÄiant konteksto." - -#: grub-core/commands/configfile.c:75 -msgid "" -"Load another config file without changing context but take only menu entries." -msgstr "" -"Ä®kelti kitÄ… konfigÅ«racijos failÄ…, nekeiÄiant konteksto, taÄiau iÅ¡ jo imti " -"tik meniu elementus." - -#: grub-core/commands/configfile.c:81 -msgid "Load another config file but take only menu entries." -msgstr "Ä®kelti kitÄ… konfigÅ«racijos failÄ…, naudojant tik jo meniu įraÅ¡us." - -#: grub-core/commands/date.c:141 -msgid "[[year-]month-day] [hour:minute[:second]]" -msgstr "[[metai-]mÄ—nuo-diena] [valandos:minutÄ—s[:sekundÄ—s]]" - -#: grub-core/commands/date.c:142 -msgid "Display/set current datetime." -msgstr "Parodyti arba nustatyti datÄ… ir laikÄ…." - -#: grub-core/commands/echo.c:30 -msgid "Do not output the trailing newline." -msgstr "NeiÅ¡vesti eilutÄ—s pabaigos failo gale." - -#: grub-core/commands/echo.c:31 -msgid "Enable interpretation of backslash escapes." -msgstr "Ä®galinti kaitos sekų su kairiniu pasviruoju brÅ«kÅ¡niu interpretavimÄ…." - -#: grub-core/commands/echo.c:134 -msgid "[-e|-n] STRING" -msgstr "[-n|-n] EILUTÄ–" - -#: grub-core/commands/echo.c:134 -msgid "Display a line of text." -msgstr "Parodyti teksto eilutÄ™." - -#: grub-core/commands/efi/efifwsetup.c:82 -msgid "Reboot into firmware setup menu." -msgstr "" -"IÅ¡ naujo paleisti ir įeiti į programinÄ—s aparatinÄ—s įrangos (angl. firmware) " -"konfigÅ«ravimo meniu." - -#: grub-core/commands/efi/fixvideo.c:107 -msgid "Fix video problem." -msgstr "PaÅ¡alinti nesklandumus su vaizdu." - -#: grub-core/commands/efi/loadbios.c:52 -msgid "ROM image is present." -msgstr "Yra prieinamas ROM atvaizdis." - -#: grub-core/commands/efi/loadbios.c:70 -msgid "Can't enable ROM area." -msgstr "Negalima įgalinti ROM srities." - -#: grub-core/commands/efi/loadbios.c:209 -msgid "" -"Create BIOS-like structures for backward compatibility with existing OS." -msgstr "Kurti BIOS tipo struktÅ«ras atbuliniam suderinamumui su esama OS." - -#: grub-core/commands/efi/loadbios.c:214 -msgid "BIOS_DUMP [INT10_DUMP]" -msgstr "BIOS_DUMP [INT10_DUMP]" - -#: grub-core/commands/efi/loadbios.c:215 -msgid "Load BIOS dump." -msgstr "Ä®kelti BIOS iÅ¡klotinÄ™." - -#: grub-core/commands/efi/shim_lock.c:76 -#, c-format -msgid "module cannot be loaded in UEFI secure boot mode: %s" -msgstr "" - -#: grub-core/commands/efi/shim_lock.c:98 -#, c-format -msgid "cannot boot due to dangerous module in memory: %s" -msgstr "" - -#: grub-core/commands/efi/shim_lock.c:116 -#, fuzzy -msgid "bad shim signature" -msgstr "blogas paraÅ¡as" - -#: grub-core/commands/efi/tpm.c:149 grub-core/commands/efi/tpm.c:189 -#: grub-core/commands/efi/tpm.c:256 grub-core/commands/efi/tpm.c:306 -#, fuzzy -msgid "Command failed" -msgstr "Nepavyko iÅ¡jungti" - -#: grub-core/commands/efi/tpm.c:151 grub-core/commands/efi/tpm.c:191 -#: grub-core/commands/efi/tpm.c:258 grub-core/commands/efi/tpm.c:308 -#, fuzzy -msgid "Invalid parameter" -msgstr "netinkamas argumentas" - -#: grub-core/commands/efi/tpm.c:154 grub-core/commands/efi/tpm.c:194 -#: grub-core/commands/efi/tpm.c:261 grub-core/commands/efi/tpm.c:311 -msgid "Output buffer too small" -msgstr "" - -#: grub-core/commands/efi/tpm.c:156 grub-core/commands/efi/tpm.c:196 -#: grub-core/commands/efi/tpm.c:263 grub-core/commands/efi/tpm.c:313 -#, fuzzy -msgid "TPM unavailable" -msgstr "Kelias: nepasiekiamas" - -#: grub-core/commands/efi/tpm.c:158 grub-core/commands/efi/tpm.c:198 -#: grub-core/commands/efi/tpm.c:265 grub-core/commands/efi/tpm.c:315 -#, fuzzy -msgid "Unknown TPM error" -msgstr "Nežinoma sistemos klaida" - -#: grub-core/commands/efi/tpm.c:240 grub-core/commands/efi/tpm.c:288 -msgid "cannot allocate TPM event buffer" -msgstr "" - -#: grub-core/commands/eval.c:63 -msgid "STRING ..." -msgstr "EILUTÄ– ..." - -#: grub-core/commands/eval.c:64 -msgid "Evaluate arguments as GRUB commands" -msgstr "Argumentus vertinti kaip GRUB komandas" - -#: grub-core/commands/file.c:41 -msgid "Check if FILE can be booted as i386 PAE Xen unprivileged guest kernel" -msgstr "" -"Patikrinti, ar FAILAS gali bÅ«ti paleistas kaip i386 PAE Xen " -"neprivilegijuotas sveÄio branduolys" - -#: grub-core/commands/file.c:44 -msgid "Check if FILE can be booted as x86_64 Xen unprivileged guest kernel" -msgstr "" -"Patikrinti, ar FAILAS gali bÅ«ti paleistas kaip x86_64 Xen neprivilegijuotas " -"sveÄio branduolys" - -#: grub-core/commands/file.c:46 -msgid "Check if FILE can be used as Xen x86 privileged guest kernel" -msgstr "" -"Patikrinti, ar FAILAS gali bÅ«ti naudojamas kaip Xen x86 privilegijuotas " -"sveÄio branduolys" - -#: grub-core/commands/file.c:48 -msgid "Check if FILE can be used as x86 multiboot kernel" -msgstr "" -"Patikrinti, ar FAILAS gali bÅ«ti naudojamas kaip x86 keleriopo paleidimo " -"(multiboot) branduolys" - -#: grub-core/commands/file.c:50 -msgid "Check if FILE can be used as x86 multiboot2 kernel" -msgstr "" -"Patikrinti, ar FAILAS gali bÅ«ti naudojamas kaip x86 keleriopo paleidimo " -"(multiboot2) branduolys" - -#: grub-core/commands/file.c:52 -msgid "Check if FILE is ARM Linux" -msgstr "Patikrinti, ar FAILAS yra ARM Linux" - -#: grub-core/commands/file.c:54 -msgid "Check if FILE is ARM64 Linux" -msgstr "Patikrinti, ar FAILAS yra ARM64 Linux" - -#: grub-core/commands/file.c:56 -msgid "Check if FILE is IA64 Linux" -msgstr "Patikrinti, ar FAILAS yra IA64 Linux" - -#: grub-core/commands/file.c:58 -msgid "Check if FILE is MIPS Linux" -msgstr "Patikrinti, ar FAILAS yra MIPS Linux" - -#: grub-core/commands/file.c:60 -msgid "Check if FILE is MIPSEL Linux" -msgstr "Patikrinti, ar FAILAS yra MIPSEL Linux" - -#: grub-core/commands/file.c:62 -msgid "Check if FILE is SPARC64 Linux" -msgstr "Patikrinti, ar FAILAS yra SPARC64 Linux" - -#: grub-core/commands/file.c:64 -msgid "Check if FILE is POWERPC Linux" -msgstr "Patikrinti, ar FAILAS yra POWERPC Linux" - -#: grub-core/commands/file.c:66 -msgid "Check if FILE is x86 Linux" -msgstr "Patikrinti, ar FAILAS yra x86 Linux" - -#: grub-core/commands/file.c:68 -msgid "Check if FILE is x86 Linux supporting 32-bit protocol" -msgstr "Patikrinti, ar FAILAS yra x86 Linux, palaikantis 32 bitų protokolÄ…" - -#: grub-core/commands/file.c:70 -msgid "Check if FILE is x86 kFreeBSD" -msgstr "Patikrinti, ar FAILAS yra x86 kFreeBSD" - -#: grub-core/commands/file.c:72 -msgid "Check if FILE is i386 kFreeBSD" -msgstr "Patikrinti, ar FAILAS yra i386 kFreeBSD" - -#: grub-core/commands/file.c:74 -msgid "Check if FILE is x86_64 kFreeBSD" -msgstr "Patikrinti, ar FAILAS yra x86_64 kFreeBSD" - -#: grub-core/commands/file.c:77 -msgid "Check if FILE is x86 kNetBSD" -msgstr "Patikrinti, ar FAILAS yra x86 kNetBSD" - -#: grub-core/commands/file.c:79 -msgid "Check if FILE is i386 kNetBSD" -msgstr "Patikrinti, ar FAILAS yra i386 kNetBSD" - -#: grub-core/commands/file.c:81 -msgid "Check if FILE is x86_64 kNetBSD" -msgstr "Patikrinti, ar FAILAS yra x86_64 kNetBSD" - -#: grub-core/commands/file.c:84 -msgid "Check if FILE is i386 EFI file" -msgstr "Patikrinti, ar FAILAS yra i386 EFI failas" - -#: grub-core/commands/file.c:86 -msgid "Check if FILE is x86_64 EFI file" -msgstr "Patikrinti, ar FAILAS yra x86_64 EFI failas" - -#: grub-core/commands/file.c:88 -msgid "Check if FILE is IA64 EFI file" -msgstr "Patikrinti, ar FAILAS yra IA64 EFI failas" - -#: grub-core/commands/file.c:90 -msgid "Check if FILE is ARM64 EFI file" -msgstr "Patikrinti, ar FAILAS yra ARM64 EFI failas" - -#: grub-core/commands/file.c:92 -msgid "Check if FILE is ARM EFI file" -msgstr "Patikrinti, ar FAILAS yra ARM EFI failas" - -#: grub-core/commands/file.c:94 -#, fuzzy -msgid "Check if FILE is RISC-V 32bit EFI file" -msgstr "Patikrinti, ar FAILAS yra ARM EFI failas" - -#: grub-core/commands/file.c:96 -#, fuzzy -msgid "Check if FILE is RISC-V 64bit EFI file" -msgstr "Patikrinti, ar FAILAS yra IA64 EFI failas" - -#: grub-core/commands/file.c:98 -msgid "Check if FILE is hiberfil.sys in hibernated state" -msgstr "Patikrinti, ar FAILAS yra sustabdytos į atmintį bÅ«senos hiberfil.sys" - -#: grub-core/commands/file.c:100 -msgid "Check if FILE is x86_64 XNU (Mac OS X kernel)" -msgstr "Patikrinti, ar FAILAS yra x86_64 XNU (Mac OS X branduolys)" - -#: grub-core/commands/file.c:102 -msgid "Check if FILE is i386 XNU (Mac OS X kernel)" -msgstr "Patikrinti, ar FAILAS yra i386 XNU (Mac OS X branduolys)" - -#: grub-core/commands/file.c:104 -msgid "Check if FILE is XNU (Mac OS X kernel) hibernated image" -msgstr "" -"Patikrinti, ar FAILAS yra XNU (Mac OS X branduolio) sustabdytos į atmintį " -"bÅ«senos atvaizdis" - -#: grub-core/commands/file.c:106 -msgid "Check if FILE is BIOS bootsector" -msgstr "Patikrinti, ar FAILAS yra BIOS paleidimo sektorius" - -#. TRANSLATORS: it's a standalone boolean value, -#. opposite of "true". -#: grub-core/commands/file.c:675 grub-core/commands/i386/cmostest.c:63 -#: grub-core/commands/i386/cpuid.c:71 grub-core/commands/keystatus.c:83 -#: grub-core/commands/keystatus.c:87 grub-core/commands/keystatus.c:96 -#: grub-core/commands/test.c:436 grub-core/commands/true.c:39 -#: grub-core/script/execute.c:247 grub-core/script/execute.c:1039 -msgid "false" -msgstr "neigiamas" - -#: grub-core/commands/file.c:684 -msgid "OPTIONS FILE" -msgstr "PARINKTYS FAILAS" - -#: grub-core/commands/file.c:685 -msgid "Check if FILE is of specified type." -msgstr "Patikrinti, ar FAILAS yra nurodyto tipo." - -#. TRANSLATORS: It means that the specified partition e.g. -#. hd0,msdos1=/dev/sda1 doesn't exist. -#: grub-core/commands/gptsync.c:140 grub-core/kern/disk.c:258 -msgid "no such partition" -msgstr "tokio skaidinio nÄ—ra" - -#: grub-core/commands/gptsync.c:240 -#, c-format -msgid "New MBR is written to `%s'\n" -msgstr "Naujas paleidimo įraÅ¡as įraÅ¡ytas į „%s“\n" - -#: grub-core/commands/gptsync.c:252 -msgid "DEVICE [PARTITION[+/-[TYPE]]] ..." -msgstr "Ä®RENGINYS [SKAIDINYS[+/-[TIPAS]]] ..." - -#. TRANSLATORS: MBR type is one-byte partition -#. type id. -#: grub-core/commands/gptsync.c:255 -msgid "" -"Fill hybrid MBR of GPT drive DEVICE. Specified partitions will be a part of " -"hybrid MBR. Up to 3 partitions are allowed. TYPE is an MBR type. + means " -"that partition is active. Only one partition can be active." -msgstr "" -"Užpildyti GPT disko Ä®RENGINYS hibridinį paleidimo įrašą (MBR). Nurodytieji " -"skaidiniai bus hibridinio paleidimo įraÅ¡o dalis. Galima nurodyti iki trijų " -"skaidinių. TIPAS yra MBR tipas. „+“ reiÅ¡kia, jog skaidinys bus aktyvus. Tik " -"vienas skaidinys gali bÅ«ti aktyvus." - -#: grub-core/commands/halt.c:40 -msgid "" -"Halts the computer. This command does not work on all firmware " -"implementations." -msgstr "" -"IÅ¡jungti kompiuterį. Å i komanda veikia ne su visa programine aparatine " -"įranga." - -#: grub-core/commands/hashsum.c:32 -msgid "Specify hash to use." -msgstr "Nurodykite naudotinÄ… maišą." - -#: grub-core/commands/hashsum.c:32 -msgid "HASH" -msgstr "MAIÅ A" - -#: grub-core/commands/hashsum.c:33 -msgid "Check hashes of files with hash list FILE." -msgstr "Palyginti failų maiÅ¡as su nurodytomis maišų sÄ…raÅ¡o faile FAILAS." - -#: grub-core/commands/hashsum.c:35 -msgid "Base directory for hash list." -msgstr "Bazinis maišų sÄ…raÅ¡o aplankas." - -#. TRANSLATORS: platform here isn't identifier. It can be translated. -#: grub-core/commands/hashsum.c:35 grub-core/commands/ls.c:150 -#: grub-core/commands/macbless.c:226 grub-core/commands/syslinuxcfg.c:51 -#: grub-core/commands/syslinuxcfg.c:54 grub-core/kern/emu/main.c:106 -#: include/grub/util/install.h:50 include/grub/util/install.h:53 -#: include/grub/util/install.h:56 include/grub/util/install.h:59 -#: util/grub-install.c:250 util/grub-install.c:252 util/grub-install.c:297 -#: util/grub-install.c:299 util/grub-mkimage.c:64 util/grub-mkimage.c:67 -#: util/grub-mknetdir.c:46 util/grub-mknetdir.c:48 util/grub-mkrescue.c:99 -#: util/grub-setup.c:82 util/grub-syslinux2cfg.c:63 util/grub-syslinux2cfg.c:65 -#: util/grub-syslinux2cfg.c:67 util/grub-syslinux2cfg.c:71 -msgid "DIR" -msgstr "APLANKAS" - -#: grub-core/commands/hashsum.c:37 -msgid "Don't stop after first error." -msgstr "Nesustoti po pirmos klaidos." - -#: grub-core/commands/hashsum.c:38 -msgid "Uncompress file before checksumming." -msgstr "IÅ¡skleisti failÄ… prieÅ¡ tikrinant maišą." - -#: grub-core/commands/hashsum.c:163 -#, c-format -msgid "%s: READ ERROR\n" -msgstr "%s: SKAITYMO KLAIDA\n" - -#: grub-core/commands/hashsum.c:177 -#, c-format -msgid "%s: HASH MISMATCH\n" -msgstr "%s: MAIÅ OS NESUTAMPA\n" - -#: grub-core/commands/hashsum.c:188 -#, c-format -msgid "%s: OK\n" -msgstr "%s: GERAI\n" - -#: grub-core/commands/hashsum.c:282 -msgid "-h HASH [-c FILE [-p PREFIX]] [FILE1 [FILE2 ...]]" -msgstr "-h MAIÅ A [-c FAILAS [-p PREFIKSAS]] [FAILAS1 [FAILAS2 ...]]" - -#. TRANSLATORS: "hash checksum" is just to -#. be a bit more precise, you can treat it as -#. just "hash". -#: grub-core/commands/hashsum.c:287 grub-core/commands/hashsum.c:292 -#: grub-core/commands/hashsum.c:297 grub-core/commands/hashsum.c:302 -#: grub-core/commands/hashsum.c:307 grub-core/commands/hashsum.c:313 -msgid "Compute or check hash checksum." -msgstr "ApskaiÄiuoti arba patikrinti maiÅ¡os reikÅ¡mÄ™." - -#: grub-core/commands/hashsum.c:290 grub-core/commands/hashsum.c:295 -#: grub-core/commands/hashsum.c:300 grub-core/commands/hashsum.c:305 -#: grub-core/commands/hashsum.c:311 -msgid "[-c FILE [-p PREFIX]] [FILE1 [FILE2 ...]]" -msgstr "[-c FAILAS [-p PREFIKSAS]] [FAILAS1 [FAILAS2 ...]]" - -#: grub-core/commands/hdparm.c:33 -msgid "" -"Set Advanced Power Management\n" -"(1=low, ..., 254=high, 255=off)." -msgstr "" -"Nustatyti energijos valdymo lygį\n" -"(1=žemas, ..., 254=aukÅ¡tas, 255=iÅ¡jungtas)." - -#: grub-core/commands/hdparm.c:36 -msgid "Display power mode." -msgstr "Rodyti maitinimo veiksenÄ…." - -#: grub-core/commands/hdparm.c:37 -msgid "Freeze ATA security settings until reset." -msgstr "Ä®raÅ¡yti ATA saugumo nuostatas iki bus atkurta pradinÄ— bÅ«sena." - -#: grub-core/commands/hdparm.c:39 -msgid "Display SMART health status." -msgstr "Parodyti SMART bÅ«klÄ™." - -#: grub-core/commands/hdparm.c:40 -msgid "" -"Set Automatic Acoustic Management\n" -"(0=off, 128=quiet, ..., 254=fast)." -msgstr "" -"Nustatyti automatinį akustinį valdymÄ…\n" -"(0=iÅ¡jungtas, 128=tylus, ..., 254=greitas)." - -#: grub-core/commands/hdparm.c:43 -msgid "" -"Set standby timeout\n" -"(0=off, 1=5s, 2=10s, ..., 240=20m, 241=30m, ...)." -msgstr "" -"Nustatyti laikÄ… iki bus pereita į budÄ—jimo bÅ«senÄ…\n" -"(0=iÅ¡jungta, 1=5s, 2=10s, ..., 240=20m, 241=30m, ... )." - -#: grub-core/commands/hdparm.c:46 -msgid "Set drive to standby mode." -msgstr "Nurodyti diskui pereiti į budÄ—jimo bÅ«senÄ…." - -#: grub-core/commands/hdparm.c:47 -msgid "Set drive to sleep mode." -msgstr "Nurodyti diskui pereiti į miego bÅ«senÄ…." - -#: grub-core/commands/hdparm.c:48 -msgid "Print drive identity and settings." -msgstr "Parodyti disko identifikatorių ir nuostatas." - -#: grub-core/commands/hdparm.c:50 -msgid "Show raw contents of ATA IDENTIFY sector." -msgstr "Rodyti neapdorotÄ… ATA IDENTIFY sektoriaus turinį." - -#: grub-core/commands/hdparm.c:52 -msgid "Disable/enable SMART (0/1)." -msgstr "IÅ¡jungti/įjungti SMART (0/1)." - -#: grub-core/commands/hdparm.c:53 -msgid "Do not print messages." -msgstr "Nerodyti praneÅ¡imų." - -#: grub-core/commands/hdparm.c:286 grub-core/commands/i386/rdmsr.c:68 -#: grub-core/commands/iorw.c:47 grub-core/commands/legacycfg.c:760 -#: grub-core/commands/legacycfg.c:812 grub-core/commands/macbless.c:190 -#: grub-core/commands/memrw.c:47 grub-core/commands/pgp.c:738 -#: grub-core/commands/pgp.c:792 grub-core/commands/search.c:304 -#: grub-core/commands/search_wrap.c:179 grub-core/commands/setpci.c:243 -#: grub-core/commands/sleep.c:71 grub-core/fs/zfs/zfsinfo.c:279 -#: grub-core/fs/zfs/zfsinfo.c:358 grub-core/gettext/gettext.c:492 -#: grub-core/kern/corecmd.c:65 grub-core/kern/corecmd.c:79 -#: grub-core/mmap/mmap.c:430 grub-core/net/dns.c:713 grub-core/net/dns.c:745 -#: grub-core/net/net.c:694 grub-core/net/net.c:1052 -#: grub-core/normal/context.c:194 grub-core/script/execute.c:131 -#: grub-core/term/gfxterm_background.c:136 -msgid "one argument expected" -msgstr "tikÄ—tasi vieno argumento" - -#: grub-core/commands/hdparm.c:440 -msgid "[OPTIONS] DISK" -msgstr "[PARINKTYS] DISKAS" - -#: grub-core/commands/hdparm.c:441 -msgid "Get/set ATA disk parameters." -msgstr "Gauti/nustatyti ATA disko parametrus." - -#: grub-core/commands/help.c:132 grub-core/lib/arg.c:109 -#: grub-core/lib/gnulib/argp-help.c:1616 -msgid "Usage:" -msgstr "Naudojimas:" - -#: grub-core/commands/help.c:146 -msgid "[PATTERN ...]" -msgstr "[Å ABLONAS ...]" - -#: grub-core/commands/help.c:147 -msgid "Show a help message." -msgstr "Rodyti pagalbinį praneÅ¡imÄ…." - -#: grub-core/commands/hexdump.c:31 -msgid "Skip offset bytes from the beginning of file." -msgstr "Praleisti nurodytÄ… kiekį baitų nuo failo pradžios." - -#: grub-core/commands/hexdump.c:33 -msgid "Read only LENGTH bytes." -msgstr "Skaityti tik ILGIS baitų." - -#: grub-core/commands/hexdump.c:125 -msgid "[OPTIONS] FILE_OR_DEVICE" -msgstr "[PARINKTYS] FAILAS_ARBA_Ä®RENGINYS" - -#: grub-core/commands/hexdump.c:126 -msgid "Show raw contents of a file or memory." -msgstr "Rodyti neapdorotÄ… failo arba atminties turinį." - -#: grub-core/commands/i386/cmosdump.c:58 -msgid "Show raw dump of the CMOS contents." -msgstr "Rodyti CMOS atminties iÅ¡klotinÄ—s turinį." - -#: grub-core/commands/i386/cmostest.c:108 -#: grub-core/commands/i386/cmostest.c:111 -#: grub-core/commands/i386/cmostest.c:114 -msgid "BYTE:BIT" -msgstr "BAITAS:BITAS" - -#: grub-core/commands/i386/cmostest.c:109 -msgid "Test bit at BYTE:BIT in CMOS." -msgstr "Patikrinti bito ties BAITAS:BITAS reikÅ¡mÄ™ CMOS'e." - -#: grub-core/commands/i386/cmostest.c:112 -msgid "Clear bit at BYTE:BIT in CMOS." -msgstr "IÅ¡valyti bito ties BAITAS:BITAS reikÅ¡mÄ™ CMOS'e." - -#. TRANSLATORS: A bit may be either set (1) or clear (0). -#: grub-core/commands/i386/cmostest.c:116 -msgid "Set bit at BYTE:BIT in CMOS." -msgstr "Nustatyti bito ties BAITAS:BITAS reikÅ¡mÄ™ CMOS'e." - -#: grub-core/commands/i386/coreboot/cb_timestamps.c:120 -msgid "Show coreboot boot time statistics." -msgstr "Parodyti coreboot paleidimo laiko statistikÄ…." - -#: grub-core/commands/i386/coreboot/cbls.c:137 -msgid "List coreboot tables." -msgstr "Pateikti coreboot lenteles." - -#. TRANSLATORS: "(default)" at the end means that this option is used if -#. no argument is specified. -#: grub-core/commands/i386/cpuid.c:36 -msgid "Check if CPU supports 64-bit (long) mode (default)." -msgstr "" -"Patikrinti, ar centrinis procesorius palaiko 64 bitų veiksenÄ… (numatyta)." - -#: grub-core/commands/i386/cpuid.c:37 -msgid "Check if CPU supports Physical Address Extension." -msgstr "" -"Patikrinti, ar centrinis procesorius palaiko fizinio adreso iÅ¡plÄ—timÄ… (PAE)." - -#: grub-core/commands/i386/cpuid.c:119 -msgid "Check for CPU features." -msgstr "Patikrinti centrinio procesoriaus galimybes." - -#. TRANSLATORS: In this file "mapping" refers to a change GRUB makes so if -#. your language doesn't have an equivalent of "mapping" you can -#. use the word like "rerouting". -#. -#: grub-core/commands/i386/pc/drivemap.c:43 -msgid "Show the current mappings." -msgstr "Parodyti esamus susiejimus." - -#: grub-core/commands/i386/pc/drivemap.c:44 -msgid "Reset all mappings to the default values." -msgstr "Atstatyti visų susiejimų pradines reikÅ¡mes." - -#: grub-core/commands/i386/pc/drivemap.c:45 -msgid "Perform both direct and reverse mappings." -msgstr "Atlikti ir tiesioginius, ir atvirkÅ¡tinius susiejimus." - -#: grub-core/commands/i386/pc/drivemap.c:184 -msgid "No drives have been remapped" -msgstr "Jokie diskai nebuvo persieti" - -#. TRANSLATORS: This is the header of mapping list. -#. On the left is how OS will see the disks and -#. on the right current GRUB vision. -#: grub-core/commands/i386/pc/drivemap.c:191 -msgid "OS disk #num ------> GRUB/BIOS device" -msgstr "OS disko Nr. ------> GRUB/BIOS įrenginys" - -#: grub-core/commands/i386/pc/drivemap.c:413 -msgid "-l | -r | [-s] grubdev osdisk." -msgstr "-l | -r | [-s] grub_įr os_diskas." - -#: grub-core/commands/i386/pc/drivemap.c:414 -msgid "Manage the BIOS drive mappings." -msgstr "Tvarkyti BIOS diskų susiejimus." - -#: grub-core/commands/i386/pc/halt.c:31 -msgid "Do not use APM to halt the computer." -msgstr "Nenaudoti APM kompiuteriui iÅ¡jungti." - -#: grub-core/commands/i386/pc/halt.c:119 -msgid "Halt the system, if possible using APM." -msgstr "IÅ¡jungti sistemÄ…, jeigu įmanoma, naudojant APM." - -#: grub-core/commands/i386/pc/lsapm.c:75 -msgid "no APM found" -msgstr "APM nerastas" - -#: grub-core/commands/i386/pc/lsapm.c:77 -#, c-format -msgid "" -"Version %u.%u\n" -"32-bit CS = 0x%x, len = 0x%x, offset = 0x%x\n" -"16-bit CS = 0x%x, len = 0x%x\n" -"DS = 0x%x, len = 0x%x\n" -msgstr "" -"Versija %u.%u\n" -"32 bitų CS = 0x%x, ilgis = 0x%x, poslinkis = 0x%x\n" -"16 bitų CS = 0x%x, ilgis = 0x%x\n" -"DS = 0x%x, ilgis = 0x%x\n" - -#: grub-core/commands/i386/pc/lsapm.c:86 -msgid "16-bit protected interface supported\n" -msgstr "16 bitų apsaugotoji sÄ…saja palaikoma\n" - -#: grub-core/commands/i386/pc/lsapm.c:87 -msgid "16-bit protected interface unsupported\n" -msgstr "16 bitų apsaugotoji sÄ…saja nepalaikoma\n" - -#: grub-core/commands/i386/pc/lsapm.c:89 -msgid "32-bit protected interface supported\n" -msgstr "32 bitų apsaugotoji sÄ…saja palaikoma\n" - -#: grub-core/commands/i386/pc/lsapm.c:90 -msgid "32-bit protected interface unsupported\n" -msgstr "32 bitų apsaugotoji sÄ…saja nepalaikoma\n" - -#: grub-core/commands/i386/pc/lsapm.c:92 -msgid "CPU Idle slows down processor\n" -msgstr "Procesoriaus atlaisvinimas jį sulÄ—tina\n" - -#: grub-core/commands/i386/pc/lsapm.c:93 -msgid "CPU Idle doesn't slow down processor\n" -msgstr "Procesoriaus atlaisvinimas jo nesulÄ—tina\n" - -#: grub-core/commands/i386/pc/lsapm.c:95 -msgid "APM disabled\n" -msgstr "APM iÅ¡jungtas\n" - -#: grub-core/commands/i386/pc/lsapm.c:95 -msgid "APM enabled\n" -msgstr "APM įgalintas\n" - -#: grub-core/commands/i386/pc/lsapm.c:97 -msgid "APM disengaged\n" -msgstr "APM iÅ¡jungtas\n" - -#: grub-core/commands/i386/pc/lsapm.c:97 -msgid "APM engaged\n" -msgstr "APM įjungtas\n" - -#: grub-core/commands/i386/pc/lsapm.c:107 -msgid "Show APM information." -msgstr "Rodyti APM informacijÄ…." - -#. TRANSLATORS: It's musical notes, not the notes -#. you take. Play command expects arguments which can -#. be either a filename or tempo+notes. -#. This error happens if none is specified. -#: grub-core/commands/i386/pc/play.c:88 -msgid "filename or tempo and notes expected" -msgstr "tikÄ—tasi failo vardo arba tempo ir natų" - -#: grub-core/commands/i386/pc/play.c:113 grub-core/commands/i386/pc/play.c:144 -#, c-format -msgid "Invalid tempo in %s" -msgstr "" - -#: grub-core/commands/i386/pc/play.c:151 grub-core/commands/macbless.c:172 -#: grub-core/fs/archelp.c:260 grub-core/fs/bfs.c:621 grub-core/fs/bfs.c:704 -#: grub-core/fs/btrfs.c:1726 grub-core/fs/btrfs.c:1755 -#: grub-core/fs/btrfs.c:1799 grub-core/fs/btrfs.c:1882 -#: grub-core/fs/btrfs.c:1906 grub-core/fs/fshelp.c:257 grub-core/fs/jfs.c:696 -#: grub-core/fs/minix.c:426 grub-core/fs/ufs.c:544 grub-core/fs/zfs/zfs.c:2083 -#: grub-core/fs/zfs/zfs.c:2095 grub-core/fs/zfs/zfs.c:2301 -#: grub-core/net/http.c:120 -#, c-format -msgid "file `%s' not found" -msgstr "failas „%s“ nerastas" - -#: grub-core/commands/i386/pc/play.c:162 grub-core/commands/i386/pc/play.c:171 -#: grub-core/kern/misc.c:419 grub-core/script/execute.c:138 -#: grub-core/script/execute.c:244 -msgid "unrecognized number" -msgstr "nežinomas skaiÄius" - -#: grub-core/commands/i386/pc/play.c:190 -msgid "FILE | TEMPO [PITCH1 DURATION1] [PITCH2 DURATION2] ... " -msgstr "FAILAS | TEMPAS [TONAS1 TRUKMÄ–1] [TONAS2 TRUKMÄ–2] ... " - -#: grub-core/commands/i386/pc/play.c:191 -msgid "Play a tune." -msgstr "Groti melodijÄ…." - -#: grub-core/commands/i386/pc/sendkey.c:39 -msgid "set numlock mode" -msgstr "nustatyti skaitmenų klaviÅ¡o bÅ«senÄ…" - -#: grub-core/commands/i386/pc/sendkey.c:40 -msgid "set capslock mode" -msgstr "nustatyti didžiųjų raidžių klaviÅ¡o bÅ«senÄ…" - -#: grub-core/commands/i386/pc/sendkey.c:41 -msgid "set scrolllock mode" -msgstr "nustatyti slinkties klaviÅ¡o bÅ«senÄ…" - -#: grub-core/commands/i386/pc/sendkey.c:42 -msgid "set insert mode" -msgstr "nustatyti įterpimo klaviÅ¡o bÅ«senÄ…" - -#: grub-core/commands/i386/pc/sendkey.c:43 -msgid "set pause mode" -msgstr "nustatyti pauzÄ—s klaviÅ¡o bÅ«senÄ…" - -#: grub-core/commands/i386/pc/sendkey.c:44 -msgid "press left shift" -msgstr "nuspausti kairįjį klavišą „Lyg2“" - -#: grub-core/commands/i386/pc/sendkey.c:45 -msgid "press right shift" -msgstr "nuspausti deÅ¡inįjį klavišą „Lyg2“" - -#: grub-core/commands/i386/pc/sendkey.c:46 -msgid "press SysRq" -msgstr "nuspausti klavišą „Sist“" - -#: grub-core/commands/i386/pc/sendkey.c:47 -msgid "press NumLock key" -msgstr "nuspausti klavišą „Skaitm“" - -#: grub-core/commands/i386/pc/sendkey.c:48 -msgid "press CapsLock key" -msgstr "nuspausti klavišą „Didž“" - -#: grub-core/commands/i386/pc/sendkey.c:49 -msgid "press ScrollLock key" -msgstr "nuspausti klavišą „Slinkti“" - -#: grub-core/commands/i386/pc/sendkey.c:50 -msgid "press Insert key" -msgstr "nuspausti klavišą „Įterpti“" - -#: grub-core/commands/i386/pc/sendkey.c:51 -msgid "press left alt" -msgstr "nuspausti kairįjį klavišą „Alt“" - -#: grub-core/commands/i386/pc/sendkey.c:52 -msgid "press right alt" -msgstr "nuspausti deÅ¡inįjį klavišą „Alt“ („Lyg3“)" - -#: grub-core/commands/i386/pc/sendkey.c:53 -msgid "press left ctrl" -msgstr "nuspausti kairįjį klavišą „Vald“" - -#: grub-core/commands/i386/pc/sendkey.c:54 -msgid "press right ctrl" -msgstr "nuspausti deÅ¡inįjį klavišą „Vald“" - -#: grub-core/commands/i386/pc/sendkey.c:55 -msgid "don't update LED state" -msgstr "nekeisti Å¡viesos diodo bÅ«senos" - -#: grub-core/commands/i386/pc/sendkey.c:372 -msgid "[KEYSTROKE1] [KEYSTROKE2] ..." -msgstr "[KLAVIÅ AS1] [KLAVIÅ AS2] ..." - -#. TRANSLATORS: It can emulate multiple -#. keypresses. -#: grub-core/commands/i386/pc/sendkey.c:375 -msgid "Emulate a keystroke sequence" -msgstr "Emuliuoti klavišų paspaudimus" - -#: grub-core/commands/i386/rdmsr.c:37 grub-core/commands/iorw.c:34 -#: grub-core/commands/memrw.c:33 grub-core/commands/setpci.c:73 -msgid "Save read value into variable VARNAME." -msgstr "Ä®raÅ¡yti nuskaitytÄ… reikÅ¡mÄ™ į KINTAMÄ„JÄ®." - -#: grub-core/commands/i386/rdmsr.c:38 grub-core/commands/iorw.c:35 -#: grub-core/commands/memrw.c:34 grub-core/commands/probe.c:40 -#: grub-core/commands/search_wrap.c:40 grub-core/commands/setpci.c:74 -#: grub-core/commands/tr.c:32 -msgid "VARNAME" -msgstr "KINTAMASIS" - -#: grub-core/commands/i386/rdmsr.c:55 grub-core/commands/i386/rdmsr.c:60 -#: grub-core/commands/i386/rdmsr.c:65 grub-core/commands/i386/wrmsr.c:47 -#: grub-core/commands/i386/wrmsr.c:52 grub-core/commands/i386/wrmsr.c:57 -#, fuzzy -msgid "unsupported instruction" -msgstr "nepalaikomas gzip formatas" - -#: grub-core/commands/i386/rdmsr.c:77 grub-core/commands/i386/wrmsr.c:69 -#: grub-core/commands/i386/wrmsr.c:77 grub-core/net/dns.c:727 -msgid "invalid argument" -msgstr "netinkamas argumentas" - -#: grub-core/commands/i386/rdmsr.c:94 grub-core/commands/memrw.c:125 -#: grub-core/commands/memrw.c:129 grub-core/commands/memrw.c:133 -msgid "ADDR" -msgstr "ADRESAS" - -#: grub-core/commands/i386/rdmsr.c:95 -msgid "Read a CPU model specific register." -msgstr "" - -#: grub-core/commands/i386/wrmsr.c:86 -#, fuzzy -msgid "ADDR VALUE" -msgstr "ADRESAS REIKÅ MÄ– [KAUKÄ–]" - -#: grub-core/commands/i386/wrmsr.c:87 -msgid "Write a value to a CPU model specific register." -msgstr "" - -#: grub-core/commands/ieee1275/suspend.c:34 -msgid "Run `go' to resume GRUB." -msgstr "Kai norÄ—site tÄ™sti GRUB darbÄ…, įvykdykite komandÄ… „go“." - -#: grub-core/commands/ieee1275/suspend.c:45 -msgid "Return to IEEE1275 prompt." -msgstr "Grįžti į IEEE1275 sÄ…sajÄ…." - -#: grub-core/commands/iorw.c:123 grub-core/commands/iorw.c:127 -#: grub-core/commands/iorw.c:131 grub-core/gdb/gdb.c:79 -msgid "PORT" -msgstr "PRIEVADAS" - -#: grub-core/commands/iorw.c:123 -msgid "Read 8-bit value from PORT." -msgstr "Nuskaityti 8 bitų reikÅ¡mÄ™ iÅ¡ PRIEVADO." - -#: grub-core/commands/iorw.c:127 -msgid "Read 16-bit value from PORT." -msgstr "Nuskaityti 16 bitų reikÅ¡mÄ™ iÅ¡ PRIEVADO." - -#: grub-core/commands/iorw.c:131 -msgid "Read 32-bit value from PORT." -msgstr "Nuskaityti 32 bitų reikÅ¡mÄ™ iÅ¡ PRIEVADO." - -#: grub-core/commands/iorw.c:135 grub-core/commands/iorw.c:139 -msgid "PORT VALUE [MASK]" -msgstr "PRIEVADAS REIKÅ MÄ– [KAUKÄ–]" - -#: grub-core/commands/iorw.c:136 -msgid "Write 8-bit VALUE to PORT." -msgstr "Nusiųsti 8 bitų REIKÅ MĘ į PRIEVADÄ„. " - -#: grub-core/commands/iorw.c:140 -msgid "Write 16-bit VALUE to PORT." -msgstr "Nusiųsti 16 bitų REIKÅ MĘ į PRIEVADÄ„. " - -#: grub-core/commands/iorw.c:143 grub-core/commands/memrw.c:137 -#: grub-core/commands/memrw.c:141 grub-core/commands/memrw.c:145 -msgid "ADDR VALUE [MASK]" -msgstr "ADRESAS REIKÅ MÄ– [KAUKÄ–]" - -#: grub-core/commands/iorw.c:144 -msgid "Write 32-bit VALUE to PORT." -msgstr "Nusiųsti 32 bitų REIKÅ MĘ į PRIEVADÄ„. " - -#: grub-core/commands/keylayouts.c:215 grub-core/commands/loadenv.c:61 -#: grub-core/commands/nativedisk.c:189 grub-core/efiemu/main.c:235 -#: grub-core/font/font.c:428 grub-core/gfxmenu/gfxmenu.c:63 -#: grub-core/kern/device.c:42 grub-core/kern/dl.c:740 -#, c-format -msgid "variable `%s' isn't set" -msgstr "kintamojo „%s“ reikÅ¡mÄ— nenustatyta" - -#: grub-core/commands/keylayouts.c:301 -msgid "Load a keyboard layout." -msgstr "Ä®kelti klaviatÅ«ros iÅ¡dÄ—stymÄ…." - -#. TRANSLATORS: "Check" in a sense that if this key is pressed then -#. "true" is returned, otherwise "false". -#: grub-core/commands/keystatus.c:32 -msgid "Check Shift key." -msgstr "Patikrinti „Lyg2“ klaviÅ¡o bÅ«senÄ…." - -#: grub-core/commands/keystatus.c:33 -msgid "Check Control key." -msgstr "Patikrinti „Vald“ klaviÅ¡o bÅ«senÄ…." - -#: grub-core/commands/keystatus.c:34 -msgid "Check Alt key." -msgstr "Patikrinti „Alt“ (arba „Lyg3“) klaviÅ¡o bÅ«senÄ…." - -#. TRANSLATORS: there are 3 modifiers. -#: grub-core/commands/keystatus.c:106 -msgid "Check key modifier status." -msgstr "Patikrinti modifikavimo klavišų bÅ«senÄ…." - -#: grub-core/commands/legacycfg.c:512 grub-core/commands/legacycfg.c:526 -#: grub-core/commands/legacycfg.c:546 grub-core/commands/legacycfg.c:559 -#: grub-core/commands/time.c:43 grub-core/script/function.c:109 -#: util/grub-file.c:100 util/grub-fstest.c:57 util/grub-mount.c:69 -#, c-format -msgid "can't find command `%s'" -msgstr "nepavyko rasti komandos „%s“" - -#: grub-core/commands/legacycfg.c:813 grub-core/normal/auth.c:225 -#: util/grub-mkpasswd-pbkdf2.c:139 -msgid "Enter password: " -msgstr "Ä®veskite slaptažodį: " - -#. TRANSLATORS: "legacy config" means -#. "config as used by grub-legacy". -#: grub-core/commands/legacycfg.c:837 -msgid "Parse legacy config in same context" -msgstr "" -"Analizuoti senosios GRUB versijos konfigÅ«racinį failÄ… tame paÄiame kontekste" - -#: grub-core/commands/legacycfg.c:842 -msgid "Parse legacy config in new context" -msgstr "" -"Analizuoti senosios GRUB versijos konfigÅ«racinį failÄ… naujame kontekste" - -#: grub-core/commands/legacycfg.c:847 -msgid "Parse legacy config in same context taking only menu entries" -msgstr "" -"Analizuoti senosios GRUB versijos konfigÅ«racinį failÄ… tame paÄiame " -"kontekste, taÄiau iÅ¡ jo imti tik meniu elementus" - -#: grub-core/commands/legacycfg.c:852 -msgid "Parse legacy config in new context taking only menu entries" -msgstr "" -"Analizuoti senosios GRUB versijos konfigÅ«racinį failÄ… naujame kontekste, " -"taÄiau iÅ¡ jo imti tik meniu elementus" - -#: grub-core/commands/legacycfg.c:856 -msgid "[--no-mem-option] [--type=TYPE] FILE [ARG ...]" -msgstr "[--no-mem-option] [--type=TIPAS] FAILAS [ARGUMENTAS ...]" - -#: grub-core/commands/legacycfg.c:857 -msgid "Simulate grub-legacy `kernel' command" -msgstr "Imituoti senosios GRUB versijos „kernel“ komandÄ…" - -#: grub-core/commands/legacycfg.c:861 grub-core/commands/legacycfg.c:865 -msgid "FILE [ARG ...]" -msgstr "FAILAS [ARGUMENTAS ...]" - -#: grub-core/commands/legacycfg.c:862 -msgid "Simulate grub-legacy `initrd' command" -msgstr "Imituoti senosios GRUB versijos „initrd“ komandÄ…" - -#: grub-core/commands/legacycfg.c:866 -msgid "Simulate grub-legacy `modulenounzip' command" -msgstr "Imituoti senosios GRUB versijos „modulenounzip“ komandÄ…" - -#: grub-core/commands/legacycfg.c:870 grub-core/commands/legacycfg.c:875 -msgid "[--md5] PASSWD [FILE]" -msgstr "[--md5] SLAPTAŽODIS [FAILAS]" - -#: grub-core/commands/legacycfg.c:871 -msgid "Simulate grub-legacy `password' command" -msgstr "Imituoti senosios GRUB versijos „password“ komandÄ…" - -#: grub-core/commands/legacycfg.c:876 -msgid "Simulate grub-legacy `password' command in menu entry mode" -msgstr "" -"Imituoti senosios GRUB versijos „password“ komandÄ… meniu elemento veiksenoje" - -#. TRANSLATORS: This option is used to override default filename -#. for loading and storing environment. -#: grub-core/commands/loadenv.c:37 -msgid "Specify filename." -msgstr "Nurodyti failo vardÄ…." - -#: grub-core/commands/loadenv.c:39 -msgid "Skip signature-checking of the environment file." -msgstr "Praleisti aplinkos failų skaitmeninių parašų tikrinimÄ…." - -#: grub-core/commands/loadenv.c:451 -msgid "[-f FILE] [-s|--skip-sig] [variable_name_to_whitelist] [...]" -msgstr "[-f FAILAS] [-s|--skip-sig] [baltojojo_sÄ…raÅ¡o_kintamojo_vardas] [...]" - -#: grub-core/commands/loadenv.c:452 -msgid "Load variables from environment block file." -msgstr "Ä®kelti kintamuosius iÅ¡ aplinkos blokų failo." - -#: grub-core/commands/loadenv.c:455 -msgid "[-f FILE]" -msgstr "[-f FAILAS]" - -#: grub-core/commands/loadenv.c:456 -msgid "List variables from environment block file." -msgstr "IÅ¡vardinti aplinkos blokų failo kintamuosius." - -#: grub-core/commands/loadenv.c:460 -msgid "[-f FILE] variable_name [...]" -msgstr "[-f FAILAS] kintamojo_vardas [...]" - -#: grub-core/commands/loadenv.c:461 -msgid "Save variables to environment block file." -msgstr "Ä®raÅ¡yti kintamuosius į aplinkos blokų failÄ…." - -#: grub-core/commands/ls.c:40 -msgid "Show a long list with more detailed information." -msgstr "Rodyti ilgÄ… sÄ…rašą su iÅ¡samesne informacija." - -#: grub-core/commands/ls.c:41 -msgid "Print sizes in a human readable format." -msgstr "Dydžius nurodyti suprantamesniu formatu." - -#: grub-core/commands/ls.c:42 -msgid "List all files." -msgstr "IÅ¡vardinti visus failus." - -#: grub-core/commands/ls.c:73 -msgid "Network protocols:" -msgstr "Tinklo protokolai:" - -#: grub-core/commands/ls.c:295 -msgid "[-l|-h|-a] [FILE ...]" -msgstr "[-l|-h|-a] [FAILAS ...]" - -#: grub-core/commands/ls.c:296 -msgid "List devices and files." -msgstr "IÅ¡vardinti įrenginius ir failus." - -#: grub-core/commands/lsacpi.c:255 -msgid "Show version 1 tables only." -msgstr "Rodyti tik pirmosios versijos lenteles." - -#: grub-core/commands/lsacpi.c:256 -msgid "Show version 2 and version 3 tables only." -msgstr "Rodyti tik antrosios ir treÄiosios versijų lenteles." - -#: grub-core/commands/lsacpi.c:306 -msgid "Show ACPI information." -msgstr "Rodyti ACPI informacijÄ…." - -#: grub-core/commands/lsmmap.c:31 -msgid "available RAM" -msgstr "laisva operatyvioji atmintis" - -#: grub-core/commands/lsmmap.c:32 -msgid "reserved RAM" -msgstr "rezervuota operatyvioji atmintis" - -#. TRANSLATORS: this refers to memory where ACPI tables are stored -#. and which can be used by OS once it loads ACPI tables. -#: grub-core/commands/lsmmap.c:35 -msgid "ACPI reclaimable RAM" -msgstr "ACPI lentelių užimama operatyvioji atmintis" - -#. TRANSLATORS: this refers to memory which ACPI-compliant OS -#. is required to save accross hibernations. -#: grub-core/commands/lsmmap.c:38 -msgid "ACPI non-volatile storage RAM" -msgstr "ACPI iÅ¡liekamoji užimta operatyvioji atmintis" - -#: grub-core/commands/lsmmap.c:39 -msgid "faulty RAM (BadRAM)" -msgstr "sugedusi operatyvioji atmintis („BadRAM“)" - -#: grub-core/commands/lsmmap.c:40 -msgid "persistent RAM" -msgstr "iÅ¡silaikanti operatyvioji atmintis" - -#: grub-core/commands/lsmmap.c:41 -msgid "persistent RAM (legacy)" -msgstr "iÅ¡silaikanti operatyvioji atmintis (sena)" - -#: grub-core/commands/lsmmap.c:42 -msgid "RAM holding coreboot tables" -msgstr "RAM turimos coreboot lentelÄ—s" - -#: grub-core/commands/lsmmap.c:43 -msgid "RAM holding firmware code" -msgstr "operatyvioji atmintis, kurioje laikoma aparatinÄ— programinÄ— įranga" - -#: grub-core/commands/lsmmap.c:52 -#, c-format -msgid "base_addr = 0x%llx, length = 0x%llx, %s\n" -msgstr "bazinis_adresas = 0x%llx, ilgis = 0x%llx, %s\n" - -#: grub-core/commands/lsmmap.c:55 -#, c-format -msgid "base_addr = 0x%llx, length = 0x%llx, type = 0x%x\n" -msgstr "bazinis_adresas = 0x%llx, ilgis = 0x%llx, tipas = 0x%x\n" - -#: grub-core/commands/lsmmap.c:79 -msgid "List memory map provided by firmware." -msgstr "Parodyti aparatinÄ—s programinÄ—s įrangos pateiktÄ… atminties žemÄ—lapį." - -#: grub-core/commands/lspci.c:232 -msgid "List PCI devices." -msgstr "IÅ¡vardinti PCI įrenginius." - -#: grub-core/commands/macbless.c:224 -msgid "Bless FILE of HFS or HFS+ partition for intel macs." -msgstr "" - -#: grub-core/commands/macbless.c:228 -msgid "Bless DIR of HFS or HFS+ partition for PPC macs." -msgstr "" - -#: grub-core/commands/memrw.c:125 -msgid "Read 8-bit value from ADDR." -msgstr "Nuskaityti 8 bitų reikÅ¡mÄ™ iÅ¡ ADRESO." - -#: grub-core/commands/memrw.c:129 -msgid "Read 16-bit value from ADDR." -msgstr "Nuskaityti 16 bitų reikÅ¡mÄ™ iÅ¡ ADRESO." - -#: grub-core/commands/memrw.c:133 -msgid "Read 32-bit value from ADDR." -msgstr "Nuskaityti 32 bitų reikÅ¡mÄ™ iÅ¡ ADRESO." - -#: grub-core/commands/memrw.c:138 -msgid "Write 8-bit VALUE to ADDR." -msgstr "Ä®raÅ¡yti 8 bitų REIKÅ MĘ į ADRESÄ„." - -#: grub-core/commands/memrw.c:142 -msgid "Write 16-bit VALUE to ADDR." -msgstr "Ä®raÅ¡yti 16 bitų REIKÅ MĘ į ADRESÄ„." - -#: grub-core/commands/memrw.c:146 -msgid "Write 32-bit VALUE to ADDR." -msgstr "Ä®raÅ¡yti 32 bitų REIKÅ MĘ į ADRESÄ„." - -#: grub-core/commands/menuentry.c:31 -msgid "Menu entry type." -msgstr "Meniu elemento tipas." - -#: grub-core/commands/menuentry.c:31 grub-core/commands/menuentry.c:38 -#: grub-core/commands/menuentry.c:39 grub-core/gettext/gettext.c:520 -#: util/grub-fstest.c:520 util/grub-install.c:291 util/grub-install.c:304 -#: util/grub-mknetdir.c:51 util/grub-mkrescue.c:109 util/grub-mkrescue.c:110 -#: util/grub-mount.c:453 util/grub-render-label.c:65 -msgid "STRING" -msgstr "EILUTÄ–" - -#: grub-core/commands/menuentry.c:33 -msgid "List of users allowed to boot this entry." -msgstr "SÄ…raÅ¡as naudotojų, kuriems leidžiama iÅ¡kviesti šį elementÄ…." - -#: grub-core/commands/menuentry.c:33 -msgid "USERNAME[,USERNAME]" -msgstr "NAUDOTOJAS[,NAUDOTOJAS]" - -#: grub-core/commands/menuentry.c:36 -msgid "Keyboard key to quickly boot this entry." -msgstr "KlaviatÅ«ros klaviÅ¡as, iÅ¡kvieÄiantis šį elementÄ…." - -#: grub-core/commands/menuentry.c:36 -msgid "KEYBOARD_KEY" -msgstr "KLAVIÅ AS" - -#: grub-core/commands/menuentry.c:38 -msgid "Use STRING as menu entry body." -msgstr "Naudoti EILUTĘ kaip meniu elemento tekstÄ…." - -#: grub-core/commands/menuentry.c:39 -msgid "Menu entry identifier." -msgstr "Meniu elemento identifikatorius." - -#. TRANSLATORS: menu entry can either be bootable by anyone or only by -#. handful of users. By default when security is active only superusers can -#. boot a given menu entry. With --unrestricted (this option) -#. anyone can boot it. -#: grub-core/commands/menuentry.c:44 -msgid "This entry can be booted by any user." -msgstr "Šį elementÄ… gali iÅ¡kviesti bet kuris naudotojas." - -#: grub-core/commands/menuentry.c:323 grub-core/commands/menuentry.c:328 -#: grub-core/tests/test_blockarg.c:46 -msgid "BLOCK" -msgstr "BLOKAS" - -#: grub-core/commands/menuentry.c:323 -msgid "Define a menu entry." -msgstr "ApraÅ¡yti meniu elementÄ…." - -#: grub-core/commands/menuentry.c:328 -msgid "Define a submenu." -msgstr "ApraÅ¡yti submeniu." - -#. TRANSLATORS: this is module list header. Name -#. is module name, Ref Count is a reference counter -#. (how many modules or open descriptors use it). -#. Dependencies are the other modules it uses. -#. -#: grub-core/commands/minicmd.c:162 -msgid "Name\tRef Count\tDependencies\n" -msgstr "Pavadinimas\tNuorodų skaiÄius\tPriklausomybÄ—s\n" - -#: grub-core/commands/minicmd.c:201 -msgid "Show this message." -msgstr "Rodyti šį praneÅ¡imÄ…." - -#: grub-core/commands/minicmd.c:204 -msgid "ADDR [SIZE]" -msgstr "ADRESAS [DYDIS]" - -#: grub-core/commands/minicmd.c:204 -msgid "Show memory contents." -msgstr "Rodyti atminties turinį." - -#: grub-core/commands/minicmd.c:207 grub-core/kern/corecmd.c:188 -#: util/grub-install.c:275 -msgid "MODULE" -msgstr "MODULIS" - -#: grub-core/commands/minicmd.c:207 -msgid "Remove a module." -msgstr "PaÅ¡alinti modulį." - -#: grub-core/commands/minicmd.c:210 -msgid "Show loaded modules." -msgstr "IÅ¡vardinti įkeltus modulius." - -#: grub-core/commands/minicmd.c:213 -msgid "Exit from GRUB." -msgstr "IÅ¡eiti iÅ¡ GRUB." - -#: grub-core/commands/mips/loongson/lsspd.c:42 -msgid "No CS5536 found" -msgstr "CS5536 nerasta" - -#: grub-core/commands/mips/loongson/lsspd.c:45 -#, c-format -msgid "CS5536 at %d:%d.%d\n" -msgstr "CS5536 rasta: %d:%d.%d\n" - -#. TRANSLATORS: System management bus is often used to access components like -#. RAM (info only, not data) or batteries. I/O space is where in memory -#. its ports are. -#: grub-core/commands/mips/loongson/lsspd.c:55 -#, c-format -msgid "System management bus controller I/O space is at 0x%x\n" -msgstr "" -"Sistemos valdymo magistralÄ—s valdiklio įvesties/iÅ¡vesties erdvÄ— yra adresu 0x" -"%x\n" - -#. TRANSLATORS: it's shown in a report in a way -#. like number 1: ... number 2: ... -#. -#: grub-core/commands/mips/loongson/lsspd.c:66 -#, c-format -msgid "RAM slot number %d\n" -msgstr "OA lizdo numeris %d\n" - -#: grub-core/commands/mips/loongson/lsspd.c:73 -#, c-format -msgid "Written SPD bytes: %d B.\n" -msgstr "Ä®raÅ¡yta SPD baitų: %d B.\n" - -#: grub-core/commands/mips/loongson/lsspd.c:74 -#, c-format -msgid "Total flash size: %d B.\n" -msgstr "" - -#: grub-core/commands/mips/loongson/lsspd.c:79 -msgid "Memory type: DDR2." -msgstr "Atminties tipas: DDR2." - -#: grub-core/commands/mips/loongson/lsspd.c:83 -#, c-format -msgid "Part no: %s.\n" -msgstr "Dalies Nr.: %s.\n" - -#: grub-core/commands/mips/loongson/lsspd.c:86 -msgid "Memory type: Unknown." -msgstr "Atminties tipas: nežinomas." - -#: grub-core/commands/mips/loongson/lsspd.c:97 -msgid "Print Memory information." -msgstr "Parodyti atminties informacijÄ…." - -#: grub-core/commands/nativedisk.c:118 grub-core/commands/probe.c:118 -#: grub-core/commands/probe.c:124 util/grub-probe.c:450 -#, c-format -msgid "%s does not support UUIDs" -msgstr "%s nepalaiko UUID identifikatorių" - -#: grub-core/commands/nativedisk.c:325 -msgid "[MODULE1 MODULE2 ...]" -msgstr "[MODULIS1 MODULIS2 ...]" - -#: grub-core/commands/nativedisk.c:326 -msgid "" -"Switch to native disk drivers. If no modules are specified default set (pata," -"ahci,usbms,ohci,uhci,ehci) is used" -msgstr "" -"Naudoti paprastas disko įtaisų tvarkykles. Jei nenurodomi jokie moduliai, " -"naudojamas numatytasis rinkinys (pata,ahci,usbms,ohci,uhci,ehci)" - -#: grub-core/commands/parttool.c:40 -msgid "" -"Perform COMMANDS on partition.\n" -"Use `parttool PARTITION help' for the list of available commands." -msgstr "" -"Vykdyti KOMANDAS su skaidiniu.\n" -"Naudokite „parttool SKAIDINYS help“ galimų komandų sÄ…raÅ¡ui gauti." - -#: grub-core/commands/parttool.c:123 -msgid "=VAL" -msgstr "=REIKÅ MÄ–" - -#: grub-core/commands/parttool.c:136 -#, c-format -msgid "Sorry, no parttool is available for %s\n" -msgstr "Deja, „parttool“ nÄ—ra skirtas naudoti su %s\n" - -#: grub-core/commands/parttool.c:288 grub-core/lib/arg.c:285 -#: grub-core/lib/arg.c:351 -#, c-format -msgid "unknown argument `%s'" -msgstr "nežinomas argumentas „%s“" - -#: grub-core/commands/parttool.c:344 -msgid "PARTITION COMMANDS" -msgstr "SKAIDINYS KOMANDOS" - -#: grub-core/commands/password.c:85 -msgid "USER PASSWORD" -msgstr "NAUDOTOJAS SLAPTAŽODIS" - -#: grub-core/commands/password.c:86 -msgid "Set user password (plaintext). Unrecommended and insecure." -msgstr "" -"Nustatyti naudotojo slaptažodį (atviru tekstu). Nesaugu ir nerekomenduojama." - -#. TRANSLATORS: it means that the string which -#. was supposed to be a password hash doesn't -#. have a correct format, not to password -#. mismatch. -#: grub-core/commands/password_pbkdf2.c:98 -#: grub-core/commands/password_pbkdf2.c:115 -#: grub-core/commands/password_pbkdf2.c:123 -#: grub-core/commands/password_pbkdf2.c:150 -#: grub-core/commands/password_pbkdf2.c:179 -msgid "invalid PBKDF2 password" -msgstr "negalima slaptažodžio PBKDF2 maiÅ¡a" - -#: grub-core/commands/password_pbkdf2.c:202 -msgid "USER PBKDF2_PASSWORD" -msgstr "NAUDOTOJAS PBKDF2_SLAPTAŽODIS" - -#: grub-core/commands/password_pbkdf2.c:203 -msgid "Set user password (PBKDF2). " -msgstr "Nustatyti naudotojo slaptažodį (PBKDF2 maišą)." - -#: grub-core/commands/pcidump.c:39 grub-core/commands/setpci.c:69 -msgid "Select device by vendor and device IDs." -msgstr "Pasirinkti įrenginį pagal gamintojo ir įrenginio identifikatorius." - -#: grub-core/commands/pcidump.c:40 grub-core/commands/setpci.c:70 -msgid "[vendor]:[device]" -msgstr "[gamintojas]:[įrenginys]" - -#: grub-core/commands/pcidump.c:41 grub-core/commands/setpci.c:71 -msgid "Select device by its position on the bus." -msgstr "Parinkti įrenginį pagal jo pozicijÄ… magistralÄ—je." - -#: grub-core/commands/pcidump.c:42 grub-core/commands/setpci.c:72 -msgid "[bus]:[slot][.func]" -msgstr "[magistralÄ—]:[lizdas][.funkcija]" - -#: grub-core/commands/pcidump.c:109 grub-core/commands/pcidump.c:138 -#: grub-core/commands/setpci.c:183 grub-core/commands/setpci.c:214 -#: grub-core/fs/zfs/zfs.c:3794 grub-core/kern/emu/hostdisk.c:458 -#: grub-core/kern/emu/hostdisk.c:473 grub-core/kern/file.c:44 -#, c-format -msgid "missing `%c' symbol" -msgstr "trÅ«ksta „%c“ simbolio" - -#: grub-core/commands/pcidump.c:168 -msgid "[-s POSITION] [-d DEVICE]" -msgstr "[-s PADÄ–TIS] [-d Ä®RENGINYS]" - -#: grub-core/commands/pcidump.c:169 -msgid "Show raw dump of the PCI configuration space." -msgstr "Parodyti PCI konfigÅ«racijos erdvÄ—s iÅ¡klotinÄ™." - -#: grub-core/commands/pgp.c:45 -msgid "Skip signature-checking of the public key file." -msgstr "Praleisti viešųjų raktų skaitmeninių parašų tikrinimÄ…." - -#. TRANSLATORS: it's about GNUPG signatures. -#: grub-core/commands/pgp.c:71 grub-core/commands/pgp.c:81 -#: grub-core/commands/pgp.c:86 grub-core/commands/pgp.c:96 -#: grub-core/commands/pgp.c:103 grub-core/commands/pgp.c:107 -#: grub-core/commands/pgp.c:114 grub-core/commands/pgp.c:119 -#: grub-core/commands/pgp.c:124 grub-core/commands/pgp.c:128 -#: grub-core/commands/pgp.c:268 grub-core/commands/pgp.c:276 -#: grub-core/commands/pgp.c:281 grub-core/commands/pgp.c:289 -#: grub-core/commands/pgp.c:320 grub-core/commands/pgp.c:327 -#: grub-core/commands/pgp.c:332 grub-core/commands/pgp.c:342 -#: grub-core/commands/pgp.c:468 grub-core/commands/pgp.c:471 -#: grub-core/commands/pgp.c:474 grub-core/commands/pgp.c:477 -#: grub-core/commands/pgp.c:484 grub-core/commands/pgp.c:490 -#: grub-core/commands/pgp.c:665 -msgid "bad signature" -msgstr "blogas paraÅ¡as" - -#. TRANSLATORS: %08x is 32-bit key id. -#: grub-core/commands/pgp.c:636 grub-core/commands/pgp.c:812 -#, c-format -msgid "public key %08x not found" -msgstr "neradome vieÅ¡ojo rakto %08x" - -#: grub-core/commands/pgp.c:651 grub-core/disk/diskfilter.c:772 -#: grub-core/disk/diskfilter.c:782 grub-core/fs/ntfs.c:404 -#: grub-core/fs/zfs/zfs.c:1933 grub-core/normal/menu.c:428 -#, c-format -msgid "module `%s' isn't loaded" -msgstr "modulis „%s“ neįkeltas" - -#: grub-core/commands/pgp.c:994 -msgid "[-s|--skip-sig] FILE SIGNATURE_FILE [PUBKEY_FILE]" -msgstr "[-s|--skip-sig] FAILAS PARAÅ O_FAILAS [VIEÅ ASIS_RAKTAS]" - -#: grub-core/commands/pgp.c:995 -msgid "Verify detached signature." -msgstr "Patikrinti atsietÄ… parašą." - -#: grub-core/commands/pgp.c:998 -msgid "[-s|--skip-sig] PUBKEY_FILE" -msgstr "[-s|--skip-sig] VIEÅ ASIS_RAKTAS" - -#: grub-core/commands/pgp.c:999 -msgid "Add PUBKEY_FILE to trusted keys." -msgstr "VIEÅ Ä„JÄ®_RAKTÄ„ pridÄ—ti prie patikimųjų raktų sÄ…raÅ¡o." - -#: grub-core/commands/pgp.c:1003 -msgid "Show the list of trusted keys." -msgstr "Pateikti patikimų raktų sÄ…rašą." - -#: grub-core/commands/pgp.c:1005 -msgid "PUBKEY_ID" -msgstr "VIEÅ _RAKTO_ID" - -#: grub-core/commands/pgp.c:1006 -msgid "Remove PUBKEY_ID from trusted keys." -msgstr "VIEÅ OJO_RAKTO_ID paÅ¡alinti iÅ¡ patikimųjų raktų sÄ…raÅ¡o" - -#: grub-core/commands/probe.c:40 grub-core/commands/tr.c:32 -msgid "Set a variable to return value." -msgstr "Priskirti grąžinamÄ… reikÅ¡mÄ™ kintamajam." - -#. TRANSLATORS: It's a driver that is currently in use to access -#. the diven disk. -#: grub-core/commands/probe.c:43 -msgid "Determine driver." -msgstr "Nustatyti naudotinÄ… tvarkyklÄ™." - -#: grub-core/commands/probe.c:44 -msgid "Determine partition map type." -msgstr "Nustatyti skaidinių schemos tipÄ…." - -#: grub-core/commands/probe.c:45 -msgid "Determine filesystem type." -msgstr "Nustatyti failų sistemos tipÄ…." - -#: grub-core/commands/probe.c:46 -msgid "Determine filesystem UUID." -msgstr "Nustatyti failų sistemos UUID." - -#: grub-core/commands/probe.c:47 -msgid "Determine filesystem label." -msgstr "Nustatyti failų sistemos etiketÄ™." - -#: grub-core/commands/probe.c:139 grub-core/commands/probe.c:146 -#: util/grub-probe.c:462 -#, c-format -msgid "filesystem `%s' does not support labels" -msgstr "failų sistema „%s“ nepalaiko etikeÄių" - -#: grub-core/commands/probe.c:165 grub-core/fs/zfs/zfsinfo.c:430 -#: grub-core/loader/i386/bsd.c:169 util/grub-setup.c:223 -msgid "DEVICE" -msgstr "Ä®RENGINYS" - -#: grub-core/commands/probe.c:166 -msgid "Retrieve device info." -msgstr "Nuskaityti įrenginio informacijÄ…." - -#: grub-core/commands/read.c:85 -msgid "[ENVVAR]" -msgstr "[APLINKOS_KINTAMASIS]" - -#: grub-core/commands/read.c:86 -msgid "Set variable with user input." -msgstr "Nustatyti kintamojo reikÅ¡mÄ™ į naudotojo įvestį." - -#: grub-core/commands/reboot.c:40 -msgid "Reboot the computer." -msgstr "IÅ¡ naujo paleisti kompiuterį." - -#. TRANSLATORS: in regexp you can mark some -#. groups with parentheses. These groups are -#. then numbered and you can save some of -#. them in variables. In other programs -#. those components aree often referenced with -#. back slash, e.g. \1. Compare -#. sed -e 's,\([a-z][a-z]*\),lowercase=\1,g' -#. The whole matching component is saved in VARNAME, not its number. -#. -#: grub-core/commands/regexp.c:44 -msgid "Store matched component NUMBER in VARNAME." -msgstr "Ä®raÅ¡yti atitikusį komponentÄ… NUMERIS į KINTAMÄ„JÄ®." - -#: grub-core/commands/regexp.c:45 -msgid "[NUMBER:]VARNAME" -msgstr "[NUMERIS:]KINTAMASIS" - -#. TRANSLATORS: This are two arguments. So it's -#. two separate units to translate and pay -#. attention not to reverse them. -#: grub-core/commands/regexp.c:157 -msgid "REGEXP STRING" -msgstr "REG_IÅ RAIÅ KA EILUTÄ–" - -#: grub-core/commands/regexp.c:158 -msgid "Test if REGEXP matches STRING." -msgstr "Patikrinti, ar REG_IÅ RAIÅ KA atitinka EILUTĘ." - -#: grub-core/commands/search.c:324 -msgid "NAME [VARIABLE] [HINTS]" -msgstr "VARDAS [KINTAMASIS] [PATARIMAI]" - -#: grub-core/commands/search_file.c:4 -msgid "" -"Search devices by file. If VARIABLE is specified, the first device found is " -"set to a variable." -msgstr "" -"IeÅ¡koti įrenginių pagal failÄ…. Jeigu nurodytas KINTAMASIS, jam bus " -"priskirtas pirmasis surastas įrenginys." - -#: grub-core/commands/search_label.c:4 -msgid "" -"Search devices by label. If VARIABLE is specified, the first device found is " -"set to a variable." -msgstr "" -"IeÅ¡koti įrenginių pagal etiketÄ™. Jeigu nurodytas KINTAMASIS, jam bus " -"priskirtas pirmasis surastas įrenginys." - -#: grub-core/commands/search_uuid.c:4 -msgid "" -"Search devices by UUID. If VARIABLE is specified, the first device found is " -"set to a variable." -msgstr "" -"IeÅ¡koti įrenginių pagal UUID identifikatorių. Jeigu nurodytas KINTAMASIS, " -"jam bus priskirtas pirmasis surastas įrenginys." - -#: grub-core/commands/search_wrap.c:34 -msgid "Search devices by a file." -msgstr "IeÅ¡koti įrenginių pagal failÄ…." - -#: grub-core/commands/search_wrap.c:35 -msgid "Search devices by a filesystem label." -msgstr "IeÅ¡koti įrenginių pagal failų sistemos etiketÄ™." - -#: grub-core/commands/search_wrap.c:37 -msgid "Search devices by a filesystem UUID." -msgstr "IeÅ¡koti įrenginių pagal failų sistemos UUID identifikatorių." - -#: grub-core/commands/search_wrap.c:40 -msgid "Set a variable to the first device found." -msgstr "PirmÄ…jį surastÄ… įrenginį priskirti kintamajam." - -#: grub-core/commands/search_wrap.c:42 -msgid "Do not probe any floppy drive." -msgstr "Netikrinti lanksÄiųjų diskelių įrenginių." - -#: grub-core/commands/search_wrap.c:44 -msgid "" -"First try the device HINT. If HINT ends in comma, also try subpartitions" -msgstr "" -"Pirma iÅ¡bandyti PATARIAMÄ„ įrenginį. Jeigu PATARIMAS baigiasi kableliu, bus " -"iÅ¡bandyti ir įrenginio skaidiniai" - -#: grub-core/commands/search_wrap.c:45 grub-core/commands/search_wrap.c:49 -#: grub-core/commands/search_wrap.c:53 grub-core/commands/search_wrap.c:57 -#: grub-core/commands/search_wrap.c:61 grub-core/commands/search_wrap.c:65 -msgid "HINT" -msgstr "PATARIMAS" - -#: grub-core/commands/search_wrap.c:47 -msgid "" -"First try the device HINT if currently running on IEEE1275. If HINT ends in " -"comma, also try subpartitions" -msgstr "" -"Pirma iÅ¡bandyti PATARIAMÄ„ įrenginį, jeigu veikiama IEEE1275 veiksenoje. " -"Jeigu PATARIMAS baigiasi kableliu, bus iÅ¡bandyti ir įrenginio skaidiniai" - -#: grub-core/commands/search_wrap.c:51 -msgid "" -"First try the device HINT if currently running on BIOS. If HINT ends in " -"comma, also try subpartitions" -msgstr "" -"Pirma iÅ¡bandyti PATARIAMÄ„ įrenginį, jeigu veikiama BIOS veiksenoje. Jeigu " -"PATARIMAS baigiasi kableliu, bus iÅ¡bandyti ir įrenginio skaidiniai" - -#: grub-core/commands/search_wrap.c:55 -msgid "" -"First try the device HINT if direct hardware access is supported. If HINT " -"ends in comma, also try subpartitions" -msgstr "" -"Pirma iÅ¡bandyti PATARIAMÄ„ įrenginį, jeigu palaikoma tiesioginÄ— prieiga prie " -"įrenginių. Jeigu PATARIMAS baigiasi kableliu, bus iÅ¡bandyti ir įrenginio " -"skaidiniai" - -#: grub-core/commands/search_wrap.c:59 -msgid "" -"First try the device HINT if currently running on EFI. If HINT ends in " -"comma, also try subpartitions" -msgstr "" -"Pirma iÅ¡bandyti PATARIAMÄ„ įrenginį, jeigu veikiama EFI veiksenoje. Jeigu " -"PATARIMAS baigiasi kableliu, bus iÅ¡bandyti ir įrenginio skaidiniai" - -#: grub-core/commands/search_wrap.c:63 -msgid "" -"First try the device HINT if currently running on ARC. If HINT ends in " -"comma, also try subpartitions" -msgstr "" -"Pirma iÅ¡bandyti PATARIAMÄ„ įrenginį, jeigu veikiama ARC veiksenoje. Jeigu " -"PATARIMAS baigiasi kableliu, bus iÅ¡bandyti ir įrenginio skaidiniai" - -#: grub-core/commands/search_wrap.c:207 -msgid "[-f|-l|-u|-s|-n] [--hint HINT [--hint HINT] ...] NAME" -msgstr "[-f|-l|-u|-s|-n] [--hint PATARIMAS [--hint PATARIMAS] ...] VARDAS" - -#: grub-core/commands/search_wrap.c:209 -msgid "" -"Search devices by file, filesystem label or filesystem UUID. If --set is " -"specified, the first device found is set to a variable. If no variable name " -"is specified, `root' is used." -msgstr "" -"IeÅ¡koti įrenginių pagal failÄ…, failų sistemos etiketÄ™ arba jos UUID " -"identifikatorių. Nurodžius --set, parametrÄ…, Å¡iam kintamajam bus priskirtas " -"pirmasis surastas įrenginys. Nenurodžius kintamojo vardo, bus naudojamas " -"„root“." - -#: grub-core/commands/setpci.c:132 -#, c-format -msgid "Register %x of %x:%02x.%x is %x\n" -msgstr "%x registras (iÅ¡ %x:%02x.%x) yra %x\n" - -#: grub-core/commands/setpci.c:333 -msgid "[-s POSITION] [-d DEVICE] [-v VAR] REGISTER[=VALUE[:MASK]]" -msgstr "" -"[-s PADÄ–TIS] [-d Ä®RENGINYS] [-v KINTAMASIS] REGISTRAS[=REIKÅ MÄ–[:KAUKÄ–]]" - -#: grub-core/commands/setpci.c:335 -msgid "Manipulate PCI devices." -msgstr "Manipuliuoti PCI įrenginiais." - -#: grub-core/commands/sleep.c:32 -msgid "Verbose countdown." -msgstr "Detali atbulinÄ— atskaita." - -#: grub-core/commands/sleep.c:33 -msgid "Allow to interrupt with ESC." -msgstr "Leisti nutraukti Gr(įžties) klaviÅ¡u." - -#: grub-core/commands/sleep.c:109 -msgid "NUMBER_OF_SECONDS" -msgstr "SEKUNDŽIŲ_SKAIÄŒIUS" - -#: grub-core/commands/sleep.c:110 -msgid "Wait for a specified number of seconds." -msgstr "Palaukti nurodytÄ… sekundžių skaiÄių." - -#: grub-core/commands/syslinuxcfg.c:50 util/grub-syslinux2cfg.c:66 -msgid "root directory of the syslinux disk [default=/]." -msgstr "syslinux disko Å¡akninis katalogas [numatytasis=/]." - -#: grub-core/commands/syslinuxcfg.c:53 util/grub-syslinux2cfg.c:72 -msgid "" -"current directory of syslinux [default is parent directory of input file]." -msgstr "" -"veikiamasis syslinux katalogas [numatytasis yra vienu lygiu aukÅ¡Äiau nei " -"įvedimo failas]." - -#: grub-core/commands/syslinuxcfg.c:55 util/grub-syslinux2cfg.c:75 -msgid "assume input is an isolinux configuration file." -msgstr "įvedimÄ… priimti kaip isolinux konfigÅ«racijos failÄ…." - -#: grub-core/commands/syslinuxcfg.c:56 util/grub-syslinux2cfg.c:76 -msgid "assume input is a pxelinux configuration file." -msgstr "įvedimÄ… priimti kaip pxelinux konfigÅ«racijos failÄ…." - -#: grub-core/commands/syslinuxcfg.c:57 util/grub-syslinux2cfg.c:77 -msgid "assume input is a syslinux configuration file." -msgstr "įvedimÄ… priimti kaip syslinux konfigÅ«racijos failÄ…." - -#. TRANSLATORS: "syslinux config" means -#. "config as used by syslinux". -#: grub-core/commands/syslinuxcfg.c:189 -msgid "Execute syslinux config in same context" -msgstr "syslinux konfigÅ«racinį failÄ… įvykdyti tame paÄiame kontekste" - -#: grub-core/commands/syslinuxcfg.c:195 -msgid "Execute syslinux config in new context" -msgstr "syslinux konfigÅ«racinį failÄ… įvykdyti naujame kontekste" - -#: grub-core/commands/syslinuxcfg.c:201 -msgid "Execute syslinux config in same context taking only menu entries" -msgstr "" -"syslinux konfigÅ«racinį failÄ… įvykdyti tame paÄiame kontekste, imant tik " -"meniu įraÅ¡us" - -#: grub-core/commands/syslinuxcfg.c:207 -msgid "Execute syslinux config in new context taking only menu entries" -msgstr "" -"syslinux konfigÅ«racinį failÄ… įvykdyti naujame kontekste, imant tik meniu " -"įraÅ¡us" - -#: grub-core/commands/terminal.c:90 -msgid "no terminal specified" -msgstr "nenurodytas terminalas" - -#: grub-core/commands/terminal.c:112 grub-core/commands/terminal.c:139 -#, c-format -msgid "terminal `%s' isn't found" -msgstr "terminalas „%s“ nerastas" - -#: grub-core/commands/terminal.c:244 -msgid "Active input terminals:" -msgstr "AktyvÅ«s įvesties terminalai:" - -#: grub-core/commands/terminal.c:245 -msgid "Available input terminals:" -msgstr "Galimi įvesties terminalai:" - -#: grub-core/commands/terminal.c:261 -msgid "Active output terminals:" -msgstr "AktyvÅ«s iÅ¡vesties terminalai:" - -#: grub-core/commands/terminal.c:262 -msgid "Available output terminals:" -msgstr "Galimi iÅ¡vesties terminalai:" - -#: grub-core/commands/terminal.c:271 grub-core/commands/terminal.c:276 -msgid "[--append|--remove] [TERMINAL1] [TERMINAL2] ..." -msgstr "[--append|--remove] [TERMINALAS1] [TERMINALAS2] ..." - -#: grub-core/commands/terminal.c:273 -msgid "List or select an input terminal." -msgstr "IÅ¡vardinti arba pasirinkti įvesties terminalÄ…." - -#: grub-core/commands/terminal.c:278 -msgid "List or select an output terminal." -msgstr "IÅ¡vardinti arba pasirinkti iÅ¡vesties terminalÄ…." - -#: grub-core/commands/test.c:444 -msgid "EXPRESSION ]" -msgstr "IÅ RAIÅ KA ]" - -#: grub-core/commands/test.c:444 grub-core/commands/test.c:447 -msgid "Evaluate an expression." -msgstr "Vykdyti iÅ¡raiÅ¡kÄ…." - -#: grub-core/commands/test.c:447 -msgid "EXPRESSION" -msgstr "IÅ RAIÅ KA" - -#: grub-core/commands/testload.c:164 -msgid "Load the same file in multiple ways." -msgstr "Ä®kelti tÄ… patį failÄ… keliais bÅ«dais." - -#: grub-core/commands/testspeed.c:35 -msgid "Specify size for each read operation" -msgstr "Nurodyti kiekvienos skaitymo operacijos dydį" - -#: grub-core/commands/testspeed.c:58 -msgid "invalid block size" -msgstr "netinkamas bloko dydis" - -#: grub-core/commands/testspeed.c:80 -#, c-format -msgid "File size: %s\n" -msgstr "Failo dydis: %s\n" - -#: grub-core/commands/testspeed.c:83 -#, c-format -msgid "Elapsed time: %d.%03d s \n" -msgstr "PraÄ—jÄ™s laikas: %d.%03d s \n" - -#: grub-core/commands/testspeed.c:92 -#, c-format -msgid "Speed: %s \n" -msgstr "Greitis: %s \n" - -#: grub-core/commands/testspeed.c:107 -msgid "[-s SIZE] FILENAME" -msgstr "[-s DYDIS] FAILAS" - -#: grub-core/commands/testspeed.c:108 -msgid "Test file read speed." -msgstr "Patikrinti failo nuskaitymo greitį." - -#: grub-core/commands/time.c:38 grub-core/script/execute.c:974 -msgid "no command is specified" -msgstr "nenurodyta jokia komanda" - -#: grub-core/commands/time.c:50 -#, c-format -msgid "Elapsed time: %d.%03d seconds \n" -msgstr "SugaiÅ¡ta laiko: %d.%03d sek.\n" - -#: grub-core/commands/time.c:61 -msgid "COMMAND [ARGS]" -msgstr "KOMANDA [ARGUMENTAI]" - -#: grub-core/commands/time.c:62 -msgid "Measure time used by COMMAND" -msgstr "PaskaiÄiuoti, kiek laiko vykdoma KOMANDA" - -#: grub-core/commands/tr.c:33 -msgid "Translate to upper case." -msgstr "IÅ¡versti į didžiÄ…sias raides." - -#: grub-core/commands/tr.c:34 -msgid "Translate to lower case." -msgstr "IÅ¡versti į mažąsias raides." - -#: grub-core/commands/tr.c:119 -msgid "[OPTIONS] [SET1] [SET2] [STRING]" -msgstr "[PARINKTYS] [RINKINYS1] [RINKINYS2] [EILUTÄ–]" - -#: grub-core/commands/tr.c:120 -msgid "Translate SET1 characters to SET2 in STRING." -msgstr "EILUTÄ–JE RINKINIO1 raÅ¡menis iÅ¡versti į RINKINIO2 raÅ¡menis." - -#. TRANSLATORS: it's a command description. -#: grub-core/commands/true.c:50 -msgid "Do nothing, successfully." -msgstr "Nieko nedaryti, pavyko." - -#. TRANSLATORS: it's a command description. -#: grub-core/commands/true.c:54 -msgid "Do nothing, unsuccessfully." -msgstr "Nieko nedaryti, nepavyko." - -#: grub-core/commands/usbtest.c:221 -msgid "Test USB support." -msgstr "IÅ¡bandyti USB palaikymÄ…." - -#: grub-core/commands/verifiers.c:120 -#, c-format -msgid "verification requested but nobody cares: %s" -msgstr "" - -#: grub-core/commands/verifiers.c:140 -#, fuzzy -msgid "big file signature isn't implemented yet" -msgstr "perkÄ—limas 0x%x dar nerealizuotas" - -#: grub-core/commands/videoinfo.c:61 -msgid "Text-only " -msgstr "Tik tekstas " - -#. TRANSLATORS: "Direct color" is a mode when the color components -#. are written dirrectly into memory. -#: grub-core/commands/videoinfo.c:66 -#, c-format -msgid "Direct color, mask: %d/%d/%d/%d pos: %d/%d/%d/%d" -msgstr "TiesioginÄ—s spalvos, kaukÄ—: %d/%d/%d/%d, pozicija: %d/%d/%d/%d" - -#. TRANSLATORS: In "paletted color" mode you write the index of the color -#. in the palette. Synonyms include "packed pixel". -#: grub-core/commands/videoinfo.c:78 -msgid "Paletted " -msgstr "PaletÄ—s " - -#: grub-core/commands/videoinfo.c:80 -msgid "YUV " -msgstr "YUV " - -#. TRANSLATORS: "Planar" is the video memory where you have to write -#. in several different banks "plans" to control the different color -#. components of the same pixel. -#: grub-core/commands/videoinfo.c:85 -msgid "Planar " -msgstr "PlokÅ¡tuminÄ— " - -#: grub-core/commands/videoinfo.c:87 -msgid "Hercules " -msgstr "„Hercules“ " - -#: grub-core/commands/videoinfo.c:89 -msgid "CGA " -msgstr "CGA " - -#. TRANSLATORS: Non-chain 4 is a 256-color planar -#. (unchained) video memory mode. -#: grub-core/commands/videoinfo.c:93 -msgid "Non-chain 4 " -msgstr "„Non-chain 4“ " - -#: grub-core/commands/videoinfo.c:95 -msgid "Monochrome " -msgstr "VienspalvÄ— " - -#: grub-core/commands/videoinfo.c:97 -msgid "Unknown video mode " -msgstr "Nežinoma vaizdo veiksena " - -#: grub-core/commands/videoinfo.c:111 -msgid " EDID checksum invalid" -msgstr " netinkama EDID kontrolinÄ— suma" - -#: grub-core/commands/videoinfo.c:116 -#, c-format -msgid " EDID version: %u.%u\n" -msgstr " EDID versija: %u.%u\n" - -#: grub-core/commands/videoinfo.c:120 -#, c-format -msgid " Preferred mode: %ux%u\n" -msgstr " Pageidaujama veiksena: %u×%u\n" - -#: grub-core/commands/videoinfo.c:123 -msgid " No preferred mode available\n" -msgstr " NÄ— viena pageidaujama veiksena negalima\n" - -#: grub-core/commands/videoinfo.c:146 grub-core/video/video.c:490 -#: grub-core/video/video.c:498 grub-core/video/video.c:509 -#: grub-core/video/video.c:520 grub-core/video/video.c:528 -#, c-format -msgid "invalid video mode specification `%s'" -msgstr "negalimas vaizdo veiksenos apraÅ¡as: „%s“" - -#: grub-core/commands/videoinfo.c:168 -msgid "List of supported video modes:" -msgstr "Palaikomų vaizdo veiksenų sÄ…raÅ¡as:" - -#: grub-core/commands/videoinfo.c:169 -msgid "Legend: mask/position=red/green/blue/reserved" -msgstr "Legenda: kaukÄ—/pozicija=raudona/žalia/mÄ—lyna/rezervuota" - -#: grub-core/commands/videoinfo.c:176 -#, c-format -msgid "Adapter `%s':\n" -msgstr "Adapteris „%s“:\n" - -#: grub-core/commands/videoinfo.c:180 -msgid " No info available" -msgstr " Jokia informacija neprieinama" - -#: grub-core/commands/videoinfo.c:198 -msgid " Failed to initialize video adapter" -msgstr " Nepavyko inicijuoti vaizdo adapterio" - -#. TRANSLATORS: "x" has to be entered in, -#. like an identifier, so please don't -#. use better Unicode codepoints. -#: grub-core/commands/videoinfo.c:239 grub-core/commands/videoinfo.c:248 -msgid "[WxH[xD]]" -msgstr "[PLOTISxAUKÅ TIS[xGYLIS]]" - -#: grub-core/commands/videoinfo.c:240 grub-core/commands/videoinfo.c:249 -msgid "" -"List available video modes. If resolution is given show only modes matching " -"it." -msgstr "" -"IÅ¡vardinti galimas vaizdo veiksenas. Jeigu nurodyta skiriamoji geba, " -"vardinti tik jÄ… atitinkanÄias veiksenas." - -#. TRANSLATORS: "x" has to be entered in, -#. like an identifier, so please don't -#. use better Unicode codepoints. -#: grub-core/commands/videotest.c:225 -msgid "[WxH]" -msgstr "[PLOTISxAUKÅ TIS]" - -#. TRANSLATORS: Here, on the other hand, it's -#. nicer to use unicode cross instead of x. -#: grub-core/commands/videotest.c:228 -msgid "Test video subsystem in mode WxH." -msgstr "IÅ¡bandyti vaizdo posistemÄ™ PLOTIS×AUKÅ TIS veiksenoje." - -#: grub-core/commands/videotest.c:231 -msgid "Test video subsystem." -msgstr "IÅ¡bandyti vaizdo posistemÄ™." - -#: grub-core/commands/xen/lsxen.c:80 grub-core/commands/xen/lsxen.c:82 -msgid "[DIR]" -msgstr "[KATALOGAS]" - -#: grub-core/commands/xen/lsxen.c:81 grub-core/commands/xen/lsxen.c:83 -msgid "List Xen storage." -msgstr "Parodyti Xen atmintinÄ™." - -#. TRANSLATORS: GRUBUUID stands for "filesystem -#. UUID as used in GRUB". -#: grub-core/commands/xnu_uuid.c:110 -msgid "[-l] GRUBUUID [VARNAME]" -msgstr "[-l] GRUBUUID [KINTAMASIS]" - -#: grub-core/commands/xnu_uuid.c:111 -msgid "" -"Transform 64-bit UUID to format suitable for XNU. If -l is given keep it " -"lowercase as done by blkid." -msgstr "" -"Transformuoti 64 bitų UUID identifikatorių į XNU tinkamÄ… formatÄ…. Nurodžius " -"„-l“ parametrÄ…, grąžinamÄ… reikÅ¡mÄ™ sudarys mažosios raidÄ—s, kaip „blkid“ " -"atveju." - -#: grub-core/disk/arc/arcdisk.c:248 grub-core/disk/efi/efidisk.c:603 -#: grub-core/disk/i386/pc/biosdisk.c:498 grub-core/disk/i386/pc/biosdisk.c:543 -#: grub-core/disk/ieee1275/nand.c:198 grub-core/disk/ieee1275/obdisk.c:527 -#: grub-core/disk/ieee1275/ofdisk.c:586 -#, c-format -msgid "failure reading sector 0x%llx from `%s'" -msgstr "klaida skaitant sektorių 0x%llx iÅ¡ „%s“" - -#: grub-core/disk/arc/arcdisk.c:284 grub-core/disk/efi/efidisk.c:626 -#: grub-core/disk/i386/pc/biosdisk.c:548 grub-core/disk/ieee1275/ofdisk.c:606 -#, c-format -msgid "failure writing sector 0x%llx to `%s'" -msgstr "klaida raÅ¡ant sektorių 0x%llx į „%s“" - -#: grub-core/disk/cryptodisk.c:40 -msgid "Mount by UUID." -msgstr "Prijungti pagal UUID identifikatorių." - -#. TRANSLATORS: It's still restricted to cryptodisks only. -#: grub-core/disk/cryptodisk.c:42 -msgid "Mount all." -msgstr "Prijungti viskÄ…." - -#: grub-core/disk/cryptodisk.c:43 -msgid "Mount all volumes with `boot' flag set." -msgstr "Prijungti visus tomus su paleidimo žyme." - -#. TRANSLATORS: The first %s is the file being looked at, the second %s is -#. the error message. -#: grub-core/disk/cryptodisk.c:526 grub-core/kern/emu/hostdisk.c:152 -#: grub-core/kern/emu/hostdisk.c:262 grub-core/kern/emu/hostdisk.c:434 -#: grub-core/kern/emu/misc.c:168 grub-core/kern/emu/misc.c:174 -#: grub-core/kern/emu/misc.c:196 grub-core/osdep/bsd/getroot.c:92 -#: grub-core/osdep/bsd/getroot.c:168 grub-core/osdep/hurd/getroot.c:68 -#: grub-core/osdep/linux/blocklist.c:65 grub-core/osdep/linux/getroot.c:150 -#: grub-core/osdep/linux/hostdisk.c:194 grub-core/osdep/linux/hostdisk.c:421 -#: grub-core/osdep/linux/ofpath.c:417 grub-core/osdep/linux/ofpath.c:422 -#: grub-core/osdep/linux/ofpath.c:517 grub-core/osdep/linux/ofpath.c:530 -#: grub-core/osdep/sun/getroot.c:110 grub-core/osdep/windows/blocklist.c:98 -#: grub-core/tests/video_checksum.c:279 util/editenv.c:46 util/glue-efi.c:115 -#: util/glue-efi.c:120 util/glue-efi.c:130 util/grub-editenv.c:138 -#: util/grub-editenv.c:192 util/grub-file.c:83 util/grub-fstest.c:128 -#: util/grub-fstest.c:568 util/grub-install-common.c:92 -#: util/grub-install-common.c:94 util/grub-install-common.c:101 -#: util/grub-install-common.c:529 util/grub-menulst2cfg.c:53 -#: util/grub-menulst2cfg.c:68 util/grub-mkimage.c:292 util/grub-mklayout.c:504 -#: util/grub-mklayout.c:516 util/grub-mknetdir.c:133 util/grub-mknetdir.c:151 -#: util/grub-mkrescue.c:627 util/grub-mkrescue.c:631 util/grub-mkrescue.c:879 -#: util/grub-mkrescue.c:883 util/grub-mkstandalone.c:253 util/grub-mount.c:498 -#: util/grub-render-label.c:169 util/grub-script-check.c:175 -#: util/grub-syslinux2cfg.c:181 util/grub-syslinux2cfg.c:191 -#: util/grub-syslinux2cfg.c:212 util/grub-syslinux2cfg.c:228 util/misc.c:91 -#: util/render-label.c:76 util/render-label.c:163 util/render-label.c:174 -#: util/resolve.c:246 util/setup.c:783 -#, c-format -msgid "cannot open `%s': %s" -msgstr "nepavyko atverti „%s“: %s" - -#: grub-core/disk/cryptodisk.c:583 grub-core/disk/cryptodisk.c:628 -#: grub-core/kern/emu/hostdisk.c:270 grub-core/kern/emu/hostfs.c:142 -#: grub-core/osdep/linux/hostdisk.c:456 util/grub-editenv.c:143 -#: util/grub-editenv.c:149 util/grub-fstest.c:320 util/misc.c:111 -#, c-format -msgid "cannot seek `%s': %s" -msgstr "" - -#: grub-core/disk/cryptodisk.c:1144 -msgid "SOURCE|-u UUID|-a|-b" -msgstr "Å ALTINIS|-u UUID|-a|-b" - -#: grub-core/disk/cryptodisk.c:1145 -msgid "Mount a crypto device." -msgstr "Prijungti kriptografinį įrenginį" - -#. TRANSLATORS: This message kicks in during the detection of -#. which modules needs to be included in core image. This happens -#. in the case of degraded RAID and means that autodetection may -#. fail to include some of modules. It's an installation time -#. message, not runtime message. -#: grub-core/disk/diskfilter.c:343 grub-core/disk/diskfilter.c:376 -#, c-format -msgid "" -"Couldn't find physical volume `%s'. Some modules may be missing from core " -"image." -msgstr "" -"Nepavyko aptikti fizinio tomo „%s“. Kai kurių modulių pagrindiniame " -"atvaizdyje gali trÅ«kti." - -#: grub-core/disk/diskfilter.c:480 -#, c-format -msgid "physical volume %s not found" -msgstr "nepavyko rasti fizinio tomo %s" - -#: grub-core/disk/efi/efidisk.c:600 grub-core/disk/efi/efidisk.c:623 -#, c-format -msgid "no media in `%s'" -msgstr "ties „%s“ nÄ—ra laikmenos" - -#: grub-core/disk/geli.c:75 -msgid "Couldn't load sha256" -msgstr "Nepavyko įkelti „sha256“ modulio" - -#: grub-core/disk/geli.c:85 -msgid "Couldn't load sha512" -msgstr "Nepavyko įkelti „sha512“ modulio" - -#: grub-core/disk/geli.c:216 grub-core/disk/geli.c:220 -msgid "couldn't read ELI metadata" -msgstr "nepavyko nuskaityti ELI metaduomenų" - -#: grub-core/disk/geli.c:231 -msgid "wrong ELI magic or version" -msgstr "netinkamas ELI magiÅ¡kasis skaiÄius arba versija" - -#: grub-core/disk/geli.c:435 grub-core/disk/luks.c:329 -msgid "Attempting to decrypt master key..." -msgstr "Bandoma iššifruoti pagrindinį raktÄ…..." - -#: grub-core/disk/geli.c:441 grub-core/disk/luks.c:347 -#, c-format -msgid "Enter passphrase for %s%s%s (%s): " -msgstr "Ä®veskite %s%s%s (%s) slaptafrazÄ™:" - -#. TRANSLATORS: It's a cryptographic key slot: one element of an array -#. where each element is either empty or holds a key. -#: grub-core/disk/geli.c:530 grub-core/disk/luks.c:451 -#, c-format -msgid "Slot %d opened\n" -msgstr "Atvertas %d lizdas\n" - -#: grub-core/disk/i386/pc/biosdisk.c:470 grub-core/disk/i386/pc/biosdisk.c:524 -#: grub-core/disk/i386/pc/biosdisk.c:534 grub-core/kern/disk_common.c:47 -#, c-format -msgid "attempt to read or write outside of disk `%s'" -msgstr "bandoma skaityti arba raÅ¡yti už disko „%s“ ribų" - -#: grub-core/disk/i386/pc/biosdisk.c:491 grub-core/disk/i386/pc/biosdisk.c:611 -#: grub-core/disk/scsi.c:726 -msgid "cannot write to CD-ROM" -msgstr "raÅ¡yti į CD-ROM negalima" - -#: grub-core/disk/i386/pc/biosdisk.c:662 -msgid "" -"Native disk drivers are in use. Refusing to use firmware disk interface." -msgstr "" -"Naudojamos prigimtinÄ—s disko tvarkyklÄ—s. AparatinÄ—s programinÄ—s įrangos " -"disko sÄ…saja nebus naudojama." - -#. TRANSLATORS: it's a partition for embedding, -#. not a partition embed into something. GRUB -#. install tools put core.img into a place -#. usable for bootloaders (called generically -#. "embedding zone") and this operation is -#. called "embedding". -#: grub-core/disk/ldm.c:1015 -msgid "your LDM Embedding Partition is too small; embedding won't be possible" -msgstr "" -"jÅ«sų loginio disko tvarkytuvÄ—s (LDM) įtaisomas skaidinys per mažas; " -"įtaisymas negalimas" - -#. TRANSLATORS: it's a partition for embedding, -#. not a partition embed into something. -#: grub-core/disk/ldm.c:1033 -msgid "this LDM has no Embedding Partition; embedding won't be possible" -msgstr "" -"Å¡i loginio disko tvarkytuvÄ— (LDM) neturi įtaisomo skaidinio; įtaisymas " -"negalimas" - -#. TRANSLATORS: The disk is simply removed from the list of available ones, -#. not wiped, avoid to scare user. -#: grub-core/disk/loopback.c:45 -msgid "Delete the specified loopback drive." -msgstr "PaÅ¡alinti nurodytÄ… kilpinÄ—s jungties įrenginį." - -#: grub-core/disk/loopback.c:237 -msgid "[-d] DEVICENAME FILE." -msgstr "[-d] Ä®RENGINYS FAILAS." - -#. TRANSLATORS: The file itself is not destroyed -#. or transformed into drive. -#: grub-core/disk/loopback.c:240 -msgid "Make a virtual drive from a file." -msgstr "Sukurti virtualų įrenginį iÅ¡ failo." - -#: grub-core/efiemu/i386/loadcore32.c:111 -#: grub-core/efiemu/i386/loadcore64.c:125 grub-core/kern/arm/dl.c:256 -#: grub-core/kern/arm64/dl.c:187 grub-core/kern/i386/dl.c:75 -#: grub-core/kern/ia64/dl.c:140 grub-core/kern/mips/dl.c:258 -#: grub-core/kern/powerpc/dl.c:163 grub-core/kern/riscv/dl.c:334 -#: grub-core/kern/sparc64/dl.c:180 grub-core/kern/x86_64/dl.c:110 -#: util/grub-mkimagexx.c:756 util/grub-mkimagexx.c:881 -#: util/grub-mkimagexx.c:945 util/grub-mkimagexx.c:1026 -#: util/grub-mkimagexx.c:1120 util/grub-mkimagexx.c:1222 -#: util/grub-mkimagexx.c:1413 util/grub-mkimagexx.c:1628 -#: util/grub-mkimagexx.c:1665 util/grub-mkimagexx.c:1697 -#: util/grub-mkimagexx.c:1767 util/grub-mkimagexx.c:1797 -#, c-format -msgid "relocation 0x%x is not implemented yet" -msgstr "perkÄ—limas 0x%x dar nerealizuotas" - -#: grub-core/efiemu/loadcore.c:200 grub-core/efiemu/loadcore.c:237 -#: grub-core/loader/i386/bsdXX.c:317 util/grub-mkimagexx.c:2360 -msgid "no symbol table" -msgstr "nÄ—ra simbolių lentelÄ—s" - -#: grub-core/efiemu/loadcore.c:346 grub-core/kern/dl.c:609 -#: grub-core/loader/ia64/efi/linux.c:345 grub-core/loader/mips/linux.c:248 -#: grub-core/loader/multiboot_elfxx.c:76 -#: grub-core/loader/powerpc/ieee1275/linux.c:280 -#: grub-core/loader/sparc64/ieee1275/linux.c:320 -msgid "this ELF file is not of the right type" -msgstr "Å¡is ELF failas yra netinkamo tipo" - -#: grub-core/efiemu/main.c:313 -msgid "Load and initialize EFI emulator." -msgstr "Ä®kelti ir inicijuoti EFI emuliatorių." - -#: grub-core/efiemu/main.c:317 -msgid "Finalize loading of EFI emulator." -msgstr "Užbaigti EFI emuliatoriaus įkÄ—limÄ…." - -#: grub-core/efiemu/main.c:320 -msgid "Unload EFI emulator." -msgstr "IÅ¡kelti EFI emuliatorių." - -#: grub-core/efiemu/symbols.c:92 grub-core/kern/dl.c:376 -#, c-format -msgid "symbol `%s' not found" -msgstr "simbolis „%s“ nerastas" - -#: grub-core/font/font_cmd.c:52 -msgid "Loaded fonts:" -msgstr "Ä®kelti Å¡riftai:" - -#: grub-core/font/font_cmd.c:74 -msgid "FILE..." -msgstr "FAILAS..." - -#: grub-core/font/font_cmd.c:75 -msgid "Specify one or more font files to load." -msgstr "Nurodyti vienÄ… ar daugiau įkeltinų failų." - -#: grub-core/font/font_cmd.c:78 -msgid "List the loaded fonts." -msgstr "IÅ¡vardinti įkeltus Å¡riftus." - -#: grub-core/fs/archelp.c:216 grub-core/fs/archelp.c:278 -#: grub-core/fs/btrfs.c:1815 grub-core/fs/fshelp.c:227 grub-core/fs/jfs.c:736 -#: grub-core/fs/minix.c:369 grub-core/fs/ufs.c:454 -msgid "too deep nesting of symlinks" -msgstr "per giliai įdÄ—tos simbolinÄ—s nuorodos" - -#: grub-core/fs/bfs.c:228 grub-core/fs/fshelp.c:368 grub-core/fs/minix.c:270 -#: grub-core/kern/file.c:156 -msgid "attempt to read past the end of file" -msgstr "bandyti skaityti už failo pabaigos" - -#: grub-core/fs/btrfs.c:1698 grub-core/fs/btrfs.c:1957 -#: grub-core/fs/fshelp.c:189 grub-core/fs/fshelp.c:309 grub-core/fs/jfs.c:431 -#: grub-core/fs/minix.c:414 grub-core/fs/minix.c:562 -#: grub-core/fs/reiserfs.c:732 grub-core/fs/ufs.c:531 grub-core/fs/ufs.c:671 -#: grub-core/fs/zfs/zfs.c:2831 grub-core/fs/zfs/zfs.c:4247 -msgid "not a directory" -msgstr "tai nÄ—ra aplankas" - -#: grub-core/fs/btrfs.c:2063 grub-core/fs/fshelp.c:307 grub-core/fs/jfs.c:835 -#: grub-core/fs/zfs/zfs.c:3801 -msgid "not a regular file" -msgstr "tai nÄ—ra paprastas failas" - -#: grub-core/fs/btrfs.c:2157 grub-core/fs/zfs/zfs.c:4333 -#: grub-core/partmap/msdos.c:400 -msgid "your core.img is unusually large. It won't fit in the embedding area" -msgstr "" -"jÅ«sų „core.img“ failas neįprastai didelis. Jis nesutilps į įtaisymui skirtÄ… " -"erdvÄ™" - -#: grub-core/fs/fshelp.c:281 grub-core/fs/minix.c:630 grub-core/fs/ufs.c:661 -#: grub-core/fs/ufs.c:757 grub-core/kern/fs.c:168 grub-core/kern/fs.c:180 -#, c-format -msgid "invalid file name `%s'" -msgstr "netaisyklingas failo vardas – „%s“" - -#: grub-core/fs/zfs/zfs.c:453 -msgid "checksum verification failed" -msgstr "kontrolinÄ—s sumos patikrinti nepavyko" - -#: grub-core/fs/zfs/zfs.c:1465 -msgid "couldn't find a necessary member device of multi-device filesystem" -msgstr "" -"nepavyko rasti reikiamo įrenginio–nario kelių įrenginių failų sistemoje" - -#: grub-core/fs/zfs/zfscrypt.c:292 -msgid "no decryption key available" -msgstr "iššifravimo raktas neprieinamas" - -#: grub-core/fs/zfs/zfscrypt.c:304 -msgid "MAC verification failed" -msgstr "nepavyko patikrinti MAC kodo" - -#: grub-core/fs/zfs/zfscrypt.c:413 -msgid "Assume input is raw." -msgstr "Ä®vestį laikyti neapdorota." - -#: grub-core/fs/zfs/zfscrypt.c:414 -msgid "Assume input is hex." -msgstr "Ä®vestį laikyti Å¡eÅ¡ioliktaine." - -#: grub-core/fs/zfs/zfscrypt.c:415 -msgid "Assume input is passphrase." -msgstr "Ä®vestį laikyti slaptafraze." - -#: grub-core/fs/zfs/zfscrypt.c:437 util/grub-fstest.c:553 util/grub-mount.c:483 -msgid "Enter ZFS password: " -msgstr "Ä®veskite ZFS slaptažodį: " - -#: grub-core/fs/zfs/zfscrypt.c:476 -msgid "[-h|-p|-r] [FILE]" -msgstr "[-h|-p|-r] [FAILAS]" - -#: grub-core/fs/zfs/zfscrypt.c:477 -msgid "Import ZFS wrapping key stored in FILE." -msgstr "Importuoti ZFS gaubiantįjį raktÄ… laikomÄ… FAILE." - -#: grub-core/fs/zfs/zfsinfo.c:51 -msgid "Virtual device is removed" -msgstr "Virtualus įrenginys paÅ¡alintas" - -#: grub-core/fs/zfs/zfsinfo.c:57 -msgid "Virtual device is faulted" -msgstr "Virtualus įrenginys defektyvus" - -#: grub-core/fs/zfs/zfsinfo.c:63 -msgid "Virtual device is offline" -msgstr "Virtualus įrenginys neprijungtas" - -#. TRANSLATORS: degraded doesn't mean broken but that some of -#. component are missing but virtual device as whole is still usable. -#: grub-core/fs/zfs/zfsinfo.c:70 -msgid "Virtual device is degraded" -msgstr "" -"Virtualiam įrenginiui trÅ«ksta komponento, bet jį vistiek galima naudoti" - -#: grub-core/fs/zfs/zfsinfo.c:73 -msgid "Virtual device is online" -msgstr "Virtualus įrenginys pasiekiamas" - -#: grub-core/fs/zfs/zfsinfo.c:89 -msgid "Incorrect virtual device: no type available" -msgstr "Neteisingas virtualus įrenginys: nÄ— vienas tipas nÄ—ra pasiekiamas" - -#. TRANSLATORS: The virtual devices form a tree (in graph-theoretical -#. sense). The nodes like mirror or raidz have children: member devices. -#. The "real" devices which actually store data are called "leafs" -#. (again borrowed from graph theory) and can be either disks -#. (or partitions) or files. -#: grub-core/fs/zfs/zfsinfo.c:105 -msgid "Leaf virtual device (file or disk)" -msgstr "Virtualus įrenginys–lapas (failas arba diskas)" - -#: grub-core/fs/zfs/zfsinfo.c:113 -msgid "Bootpath: unavailable\n" -msgstr "Paleidimo kelias: nepasiekiamas\n" - -#: grub-core/fs/zfs/zfsinfo.c:115 -#, c-format -msgid "Bootpath: %s\n" -msgstr "Paleidimo kelias: %s\n" - -#: grub-core/fs/zfs/zfsinfo.c:120 -msgid "Path: unavailable" -msgstr "Kelias: nepasiekiamas" - -#: grub-core/fs/zfs/zfsinfo.c:122 -#, c-format -msgid "Path: %s\n" -msgstr "Kelias: %s\n" - -#: grub-core/fs/zfs/zfsinfo.c:127 -msgid "Devid: unavailable" -msgstr "Ä®renginio identifikatorius: nepasiekiamas" - -#: grub-core/fs/zfs/zfsinfo.c:129 -#, c-format -msgid "Devid: %s\n" -msgstr "Ä®renginio identifikatorius: %s\n" - -#: grub-core/fs/zfs/zfsinfo.c:148 -msgid "This VDEV is a mirror" -msgstr "Å is VIRTUALUS_Ä®RENGINYS yra veidrodis" - -#: grub-core/fs/zfs/zfsinfo.c:153 -#, c-format -msgid "This VDEV is a RAIDZ%llu\n" -msgstr "Å is VIRTUALUS_Ä®RENGINYS yra RAIDZ%llu\n" - -#: grub-core/fs/zfs/zfsinfo.c:158 -msgid "Incorrect VDEV" -msgstr "Netinkamas VIRTUALUS_Ä®RENGINYS" - -#: grub-core/fs/zfs/zfsinfo.c:161 -#, c-format -msgid "VDEV with %d children\n" -msgstr "VIRTUALUS_Ä®RENGINYS su %d vaikais\n" - -#. TRANSLATORS: it's the element carying the number %d, not -#. total element number. And the number itself is fine, -#. only the element isn't. -#. -#: grub-core/fs/zfs/zfsinfo.c:177 -#, c-format -msgid "VDEV element number %d isn't correct\n" -msgstr "VIRTUALAUS_Ä®RENGINIO elementas Nr. %d yra netinkamas\n" - -#. TRANSLATORS: it's the element carying the number %d, not -#. total element number. This is used in enumeration -#. "Element number 1", "Element number 2", ... -#: grub-core/fs/zfs/zfsinfo.c:184 -#, c-format -msgid "VDEV element number %d:\n" -msgstr "VIRTUALAUS_Ä®RENGINIO elementas Nr. %d:\n" - -#: grub-core/fs/zfs/zfsinfo.c:193 -#, c-format -msgid "Unknown virtual device type: %s\n" -msgstr "Nežinomas virtualaus įrenginio tipas: %s\n" - -#. TRANSLATORS: Here we speak about ZFS pools it's semi-marketing, -#. semi-technical term by Sun/Oracle and should be translated in sync with -#. other ZFS-related software and documentation. -#: grub-core/fs/zfs/zfsinfo.c:254 -msgid "Pool state: active" -msgstr "Tomų grupÄ—s bÅ«sena: aktyvi" - -#: grub-core/fs/zfs/zfsinfo.c:255 -msgid "Pool state: exported" -msgstr "Tomų grupÄ—s bÅ«sena: eksportuojama" - -#: grub-core/fs/zfs/zfsinfo.c:256 -msgid "Pool state: destroyed" -msgstr "Tomų grupÄ—s bÅ«sena: sunaikinta" - -#: grub-core/fs/zfs/zfsinfo.c:257 -msgid "Pool state: reserved for hot spare" -msgstr "Tomų grupÄ—s bÅ«sena: laikoma karÅ¡tajam rezervui" - -#: grub-core/fs/zfs/zfsinfo.c:258 -msgid "Pool state: level 2 ARC device" -msgstr "Tomų grupÄ—s bÅ«sena: antrojo lygio ARC įrenginys" - -#: grub-core/fs/zfs/zfsinfo.c:259 -msgid "Pool state: uninitialized" -msgstr "Tomų grupÄ—s bÅ«sena: neinicijuota" - -#: grub-core/fs/zfs/zfsinfo.c:260 -msgid "Pool state: unavailable" -msgstr "Tomų grupÄ—s bÅ«sena: nepasiekiama" - -#: grub-core/fs/zfs/zfsinfo.c:261 -msgid "Pool state: potentially active" -msgstr "Tomų grupÄ—s bÅ«sena: galimai aktyvi" - -#: grub-core/fs/zfs/zfsinfo.c:306 -msgid "Pool name: unavailable" -msgstr "Tomų grupÄ—s vardas: nepasiekiamas" - -#: grub-core/fs/zfs/zfsinfo.c:308 -#, c-format -msgid "Pool name: %s\n" -msgstr "Tomų grupÄ—s vardas: %s\n" - -#: grub-core/fs/zfs/zfsinfo.c:313 -msgid "Pool GUID: unavailable" -msgstr "Tomų grupÄ—s GUID: nepasiekiamas" - -#: grub-core/fs/zfs/zfsinfo.c:315 -#, c-format -msgid "Pool GUID: %016llx\n" -msgstr "Tomų grupÄ—s GUID: %016llx\n" - -#: grub-core/fs/zfs/zfsinfo.c:320 -msgid "Unable to retrieve pool state" -msgstr "Nepavyko sužinoti tomų grupÄ—s bÅ«senos" - -#: grub-core/fs/zfs/zfsinfo.c:322 -msgid "Unrecognized pool state" -msgstr "Nežinoma tomų grupÄ—s bÅ«sena" - -#. TRANSLATORS: There are undetermined number of virtual devices -#. in a device tree, not just one. -#. -#: grub-core/fs/zfs/zfsinfo.c:332 -msgid "No virtual device tree available" -msgstr "Virtualių įrenginių medis neprieinamas" - -#: grub-core/fs/zfs/zfsinfo.c:431 -msgid "Print ZFS info about DEVICE." -msgstr "Parodyti ZFS informacijÄ… apie Ä®RENGINÄ®." - -#: grub-core/fs/zfs/zfsinfo.c:433 -msgid "FILESYSTEM [VARIABLE]" -msgstr "FAILŲ_SISTEMA [KINTAMASIS]" - -#: grub-core/fs/zfs/zfsinfo.c:434 -msgid "Print ZFS-BOOTFSOBJ or store it into VARIABLE" -msgstr "Parodyti ZFS-BOOTFSOBJ, arba priskirti KINTAMAJAM." - -#. TRANSLATORS: at this position GRUB waits for the user to do an action -#. in remote debugger, namely to tell it to establish connection. -#: grub-core/gdb/gdb.c:48 -msgid "Now connect the remote debugger, please." -msgstr "Dabar praÅ¡om prijungti nuotolinÄ™ derintuvÄ™." - -#. TRANSLATORS: GDB stub is a small part of -#. GDB functionality running on local host -#. which allows remote debugger to -#. connect to it. -#: grub-core/gdb/gdb.c:84 -msgid "Start GDB stub on given port" -msgstr "" - -#. TRANSLATORS: this refers to triggering -#. a breakpoint so that the user will land -#. into GDB. -#: grub-core/gdb/gdb.c:89 -msgid "Break into GDB" -msgstr "" - -#: grub-core/gdb/gdb.c:91 -msgid "Stop GDB stub" -msgstr "" - -#: grub-core/gettext/gettext.c:85 -msgid "premature end of file" -msgstr "prieÅ¡laikinÄ— failo pabaiga" - -#. TRANSLATORS: It refers to passing the string through gettext. -#. So it's "translate" in the same meaning as in what you're -#. doing now. -#. -#: grub-core/gettext/gettext.c:525 -msgid "Translates the string with the current settings." -msgstr "IÅ¡verÄia eilutÄ™ pagal esamas nuostatas." - -#: grub-core/gfxmenu/gui_label.c:186 grub-core/normal/menu_text.c:184 -msgid "" -"Press enter to boot the selected OS, `e' to edit the commands before booting " -"or `c' for a command-line. ESC to return previous menu." -msgstr "" -"Spauskite „Įvesti“ („Enter“) pasirinktai OS paleisti, „e“, jeigu norite " -"paredaguoti komandas, arba „c“ komandinei eilutei iÅ¡kviesti. PaspaudÄ™ " -"„Gr“ („Escape“), grįšite į ankstesnį meniu." - -#: grub-core/gfxmenu/gui_label.c:190 grub-core/normal/menu_text.c:192 -msgid "" -"Press enter to boot the selected OS, `e' to edit the commands before booting " -"or `c' for a command-line." -msgstr "" -"Spauskite „Įvesti“ („Enter“) pasirinktai OS paleisti, „e“, jeigu norite " -"paredaguoti komandas, arba „c“ komandinei eilutei iÅ¡kviesti." - -#: grub-core/gfxmenu/gui_label.c:194 -msgid "enter: boot, `e': options, `c': cmd-line" -msgstr "„įvesti“: paleisti, „e“: parinktys, „c“: komandinÄ— eilutÄ—" - -#: grub-core/gfxmenu/gui_progress_bar.c:339 grub-core/normal/menu_text.c:446 -#, c-format -msgid "The highlighted entry will be executed automatically in %ds." -msgstr "Pasirinktasis automatiÅ¡kai pasileis po %d sek." - -#. TRANSLATORS: 's' stands for seconds. -#. It's a standalone timeout notification. -#. Please use the short form in your language. -#: grub-core/gfxmenu/gui_progress_bar.c:344 -#, c-format -msgid "%ds remaining." -msgstr "liko %d sek." - -#. TRANSLATORS: 's' stands for seconds. -#. It's a standalone timeout notification. -#. Please use the shortest form available in you language. -#: grub-core/gfxmenu/gui_progress_bar.c:349 grub-core/normal/menu_text.c:444 -#: grub-core/normal/menu_text.c:462 -#, c-format -msgid "%ds" -msgstr "%d sek." - -#: grub-core/gfxmenu/view.c:103 -msgid "GRUB Boot Menu" -msgstr "GRUB paleidimo meniu" - -#: grub-core/hello/hello.c:36 -msgid "Hello World" -msgstr "Sveikas, pasauli" - -#: grub-core/hello/hello.c:45 -msgid "Say `Hello World'." -msgstr "Pasakykite „Sveikas, pasauli“." - -#: grub-core/io/gzio.c:409 grub-core/kern/file.c:210 -msgid "attempt to seek outside of the file" -msgstr "bandoma pasiekti už failo ribų" - -#. TRANSLATORS: It's about given file having some strange format, not -#. complete lack of gzip support. -#: grub-core/io/gzio.c:1228 grub-core/io/gzio.c:1237 grub-core/io/gzio.c:1244 -msgid "unsupported gzip format" -msgstr "nepalaikomas gzip formatas" - -#: grub-core/io/lzopio.c:511 -msgid "lzop file corrupted" -msgstr "lzop failas sugadintas" - -#: grub-core/io/xzio.c:278 -msgid "xz file corrupted or unsupported block options" -msgstr "xz failas sugadintas arba nepalaikomos bloko parinktys" - -#: grub-core/kern/arm/dl.c:277 grub-core/kern/arm64/dl.c:44 -#: grub-core/kern/i386/dl.c:36 grub-core/kern/ia64/dl.c:41 -#: grub-core/kern/mips/dl.c:48 grub-core/kern/powerpc/dl.c:36 -#: grub-core/kern/riscv/dl.c:47 grub-core/kern/sparc64/dl.c:36 -#: grub-core/kern/x86_64/dl.c:36 grub-core/loader/i386/bsd.c:1445 -#: grub-core/loader/i386/bsdXX.c:49 grub-core/loader/ia64/efi/linux.c:341 -#: grub-core/loader/mips/linux.c:298 grub-core/loader/multiboot.c:232 -#: grub-core/loader/multiboot_elfxx.c:73 -#: grub-core/loader/powerpc/ieee1275/linux.c:294 -#: grub-core/loader/sparc64/ieee1275/linux.c:331 -msgid "invalid arch-dependent ELF magic" -msgstr "" - -#: grub-core/kern/corecmd.c:178 -msgid "[ENVVAR=VALUE]" -msgstr "[APLINKOS_KINTAMASIS=REIKÅ MÄ–]" - -#: grub-core/kern/corecmd.c:179 -msgid "Set an environment variable." -msgstr "Aplinkos kintamajam priskirti reikÅ¡mÄ™." - -#: grub-core/kern/corecmd.c:183 -msgid "ENVVAR" -msgstr "APLINKOS_KINTAMASIS" - -#: grub-core/kern/corecmd.c:184 -msgid "Remove an environment variable." -msgstr "PaÅ¡alinti aplinkos kintamÄ…jį." - -#: grub-core/kern/corecmd.c:186 -msgid "[ARG]" -msgstr "[ARG]" - -#: grub-core/kern/corecmd.c:186 -msgid "List devices or files." -msgstr "Pateikti įrenginių ar failų sÄ…rašą." - -#: grub-core/kern/corecmd.c:188 -msgid "Insert a module." -msgstr "Ä®terpti modulį." - -#: grub-core/kern/disk.c:236 grub-core/net/net.c:1390 -#, c-format -msgid "disk `%s' not found" -msgstr "Diskas „%s“ nerastas" - -#: grub-core/kern/disk_common.c:27 -msgid "attempt to read or write outside of partition" -msgstr "mÄ—ginate skaityti arba raÅ¡yti už skaidinio ribų" - -#: grub-core/kern/dl.c:212 grub-core/kern/elf.c:61 grub-core/kern/elf.c:79 -#: grub-core/loader/i386/bsdXX.c:46 grub-core/loader/ia64/efi/linux.c:335 -#: grub-core/loader/multiboot_elfxx.c:69 -msgid "invalid arch-independent ELF magic" -msgstr "" - -#. TRANSLATORS: it refers to the lack of free slots. -#: grub-core/kern/emu/hostdisk.c:208 grub-core/kern/emu/hostdisk.c:466 -msgid "device count exceeds limit" -msgstr "įrenginių kiekis virÅ¡ija limitÄ…" - -#: grub-core/kern/emu/hostdisk.c:342 util/editenv.c:54 util/grub-editenv.c:197 -#: util/grub-fstest.c:191 util/grub-mkfont.c:796 util/misc.c:114 -#: util/misc.c:129 util/setup.c:788 -#, c-format -msgid "cannot write to `%s': %s" -msgstr "negalima raÅ¡yti į „%s“: %s" - -#. TRANSLATORS: Only one entry is ignored. However the suggestion -#. is to correct/delete the whole file. -#. device.map is a file indicating which -#. devices are available at boot time. Fedora populated it with -#. entries like (hd0,1) /dev/sda1 which would mean that every -#. partition is a separate disk for BIOS. Such entries were -#. inactive in GRUB due to its bug which is now gone. Without -#. this additional check these entries would be harmful now. -#. -#: grub-core/kern/emu/hostdisk.c:503 -#, c-format -msgid "" -"the device.map entry `%s' is invalid. Ignoring it. Please correct or delete " -"your device.map" -msgstr "" -"device.map faile yra netinkamas „%s“ įraÅ¡as. Jis ignoruojamas. Pataisykite " -"arba paÅ¡alinkite device.map" - -#. TRANSLATORS: device.map is a filename. Not to be translated. -#. device.map specifies disk correspondance overrides. Previously -#. one could create any kind of device name with this. Due to -#. some problems we decided to limit it to just a handful -#. possibilities. -#: grub-core/kern/emu/hostdisk.c:555 -#, c-format -msgid "" -"the drive name `%s' in device.map is incorrect. Using %s instead. Please use " -"the form [hfc]d[0-9]* (E.g. `hd0' or `cd')" -msgstr "" -"device.map faile yra netinkamas „%s“ įrenginio vardas. Vietoj jo naudosimas " -"%s. Naudokite [hfc]d[0-9]* pavidalu (pvz., „hd0“ arba „cd“)" - -#: grub-core/kern/emu/hostfs.c:76 grub-core/kern/emu/hostfs.c:109 -#, c-format -msgid "can't open `%s': %s" -msgstr "nepavyksta atverti „%s“: %s" - -#: grub-core/kern/emu/main.c:99 util/grub-fstest.c:516 util/grub-mount.c:452 -msgid "DEVICE_NAME" -msgstr "Ä®RENGINIO_VARDAS" - -#: grub-core/kern/emu/main.c:99 grub-core/loader/i386/bsd.c:136 -#: grub-core/loader/i386/bsd.c:169 util/grub-fstest.c:516 util/grub-mount.c:452 -msgid "Set root device." -msgstr "Nustatykite įrenginį." - -#. TRANSLATORS: There are many devices in device map. -#: grub-core/kern/emu/main.c:102 util/grub-probe.c:733 util/grub-setup.c:85 -#, c-format -msgid "use FILE as the device map [default=%s]" -msgstr "FAILÄ„ naudoti kaip įrenginių planÄ… [numatytasis=%s]" - -#. TRANSLATORS: There are many devices in device map. -#: grub-core/kern/emu/main.c:105 -msgid "use FILE as memdisk" -msgstr "" - -#: grub-core/kern/emu/main.c:107 util/grub-setup.c:83 -#, c-format -msgid "use GRUB files in the directory DIR [default=%s]" -msgstr "Naudoti KATALOGE esanÄius GRUB failus [numatytasis=%s]" - -#: grub-core/kern/emu/main.c:108 include/grub/util/install.h:67 -#: util/grub-editenv.c:58 util/grub-fstest.c:525 util/grub-glue-efi.c:58 -#: util/grub-macbless.c:104 util/grub-mkfont.c:962 util/grub-mkimage.c:84 -#: util/grub-mklayout.c:56 util/grub-mount.c:458 util/grub-probe.c:735 -#: util/grub-render-label.c:74 util/grub-script-check.c:52 util/grub-setup.c:90 -#: util/grub-syslinux2cfg.c:78 -msgid "print verbose messages." -msgstr "rodyti iÅ¡samius praneÅ¡imus." - -#: grub-core/kern/emu/main.c:109 grub-core/lib/gnulib/argp-parse.c:85 -msgid "SECS" -msgstr "SEK" - -#: grub-core/kern/emu/main.c:109 -msgid "wait until a debugger will attach" -msgstr "" - -#: grub-core/kern/emu/main.c:171 util/grub-macbless.c:143 -#: util/grub-mkrelpath.c:61 util/grub-probe.c:874 util/grub-script-check.c:75 -#: util/grub-setup.c:203 -#, c-format -msgid "Unknown extra argument `%s'." -msgstr "Nežinomas papildomas argumentas „%s“." - -#: grub-core/kern/emu/main.c:185 -msgid "GRUB emulator." -msgstr "GRUB emuliatorius." - -#: grub-core/kern/emu/main.c:213 util/grub-editenv.c:262 -#: util/grub-glue-efi.c:110 util/grub-macbless.c:173 util/grub-mkfont.c:1177 -#: util/grub-mkimage.c:266 util/grub-mklayout.c:494 -#: util/grub-mkpasswd-pbkdf2.c:132 util/grub-mkrelpath.c:96 -#: util/grub-probe.c:863 util/grub-render-label.c:152 -#: util/grub-script-check.c:160 util/grub-setup.c:262 -#: util/grub-syslinux2cfg.c:163 -msgid "Error in parsing command line arguments\n" -msgstr "Klaida analizuojant komandinÄ—s eilutÄ—s argumentus\n" - -#. TRANSLATORS: In this case GRUB tells user what he has to do. -#: grub-core/kern/emu/main.c:248 -#, c-format -msgid "Run `gdb %s %d', and set ARGS.HOLD to zero.\n" -msgstr "Ä®vykdykite „gdb %s %d“, o ARGS.HOLD reikÅ¡mÄ™ prilyginkite nuliui.\n" - -#: grub-core/kern/emu/misc.c:48 -#, c-format -msgid "%s: warning:" -msgstr "%s: įspÄ—jimas:" - -#: grub-core/kern/emu/misc.c:64 -#, c-format -msgid "%s: info:" -msgstr "%s: informacija:" - -#: grub-core/kern/emu/misc.c:79 util/grub-fstest.c:567 util/grub-fstest.c:576 -#: util/grub-mount.c:497 util/grub-mount.c:505 -#, c-format -msgid "%s: error:" -msgstr "%s: klaida:" - -#: grub-core/kern/emu/misc.c:176 -#, c-format -msgid "file `%s' is too big" -msgstr "failas „%s“ per didelis" - -#: grub-core/kern/fs.c:120 -msgid "unknown filesystem" -msgstr "nežinoma failų sistema" - -#: grub-core/kern/mips/arc/init.c:273 grub-core/kern/mips/loongson/init.c:301 -msgid "Shutdown failed" -msgstr "Nepavyko iÅ¡jungti" - -#: grub-core/kern/mips/arc/init.c:285 -msgid "Exit failed" -msgstr "Nepavyko iÅ¡eiti iÅ¡ programos" - -#: grub-core/kern/misc.c:351 grub-core/kern/misc.c:408 include/grub/misc.h:269 -#: include/grub/misc.h:278 -msgid "overflow is detected" -msgstr "perpildyta" - -#: grub-core/kern/partition.c:51 grub-core/partmap/bsdlabel.c:108 -#, c-format -msgid "Discarding improperly nested partition (%s,%s,%s%d)" -msgstr "Atmetamas netinkamai suformuotas skaidinys (%s,%s,%s%d)" - -#: grub-core/kern/rescue_parser.c:73 util/grub-editenv.c:292 -#, c-format -msgid "Unknown command `%s'.\n" -msgstr "Nežinoma komanda „%s“.\n" - -#: grub-core/lib/arg.c:31 -msgid "Display this help and exit." -msgstr "Parodyti šį pagalbinį praneÅ¡imÄ… ir iÅ¡eiti." - -#: grub-core/lib/arg.c:33 -msgid "Display the usage of this command and exit." -msgstr "Parodyti Å¡ios komandos naudojimo instrukcijÄ… ir iÅ¡eiti." - -#: grub-core/lib/arg.c:362 -#, c-format -msgid "missing mandatory option for `%s'" -msgstr "trÅ«ksta „%s“ privalomos parinkties" - -#: grub-core/lib/arg.c:384 -#, c-format -msgid "the argument `%s' requires an integer" -msgstr "„%s“ argumentui reikia sveikojo skaiÄiaus" - -#: grub-core/lib/arg.c:407 -#, c-format -msgid "" -"a value was assigned to the argument `%s' while it doesn't require an " -"argument" -msgstr "reikÅ¡mÄ™ priskyrÄ—te „%s“ argumentui, bet jam jos nereikia" - -#: grub-core/lib/backtrace.c:64 -msgid "Print backtrace." -msgstr "" - -#: grub-core/lib/gnulib/argp-help.c:149 -#, c-format -msgid "ARGP_HELP_FMT: %s value is less than or equal to %s" -msgstr "" - -#: grub-core/lib/gnulib/argp-help.c:225 -#, c-format -msgid "%.*s: ARGP_HELP_FMT parameter requires a value" -msgstr "" - -#: grub-core/lib/gnulib/argp-help.c:235 -#, c-format -msgid "%.*s: Unknown ARGP_HELP_FMT parameter" -msgstr "" - -#: grub-core/lib/gnulib/argp-help.c:248 -#, c-format -msgid "Garbage in ARGP_HELP_FMT: %s" -msgstr "" - -#: grub-core/lib/gnulib/argp-help.c:1229 -msgid "" -"Mandatory or optional arguments to long options are also mandatory or " -"optional for any corresponding short options." -msgstr "" - -#: grub-core/lib/gnulib/argp-help.c:1620 -msgid " or: " -msgstr " arba: " - -#: grub-core/lib/gnulib/argp-help.c:1632 -msgid " [OPTION...]" -msgstr " [PARINKTIS...]" - -#: grub-core/lib/gnulib/argp-help.c:1659 -#, c-format -msgid "Try '%s --help' or '%s --usage' for more information.\n" -msgstr "Daugiau informacijos rasite įvykdÄ™ „%s --help“ arba „%s --usage“.\n" - -#: grub-core/lib/gnulib/argp-help.c:1687 -#, c-format -msgid "Report bugs to %s.\n" -msgstr "Apie klaidas praneÅ¡kite %s.\n" - -#: grub-core/lib/gnulib/argp-help.c:1888 grub-core/lib/gnulib/error.c:195 -msgid "Unknown system error" -msgstr "Nežinoma sistemos klaida" - -#: grub-core/lib/gnulib/argp-parse.c:81 -msgid "give this help list" -msgstr "parodyti šį pagalbinį praneÅ¡imÄ…" - -#: grub-core/lib/gnulib/argp-parse.c:82 -msgid "give a short usage message" -msgstr "pateikti trumpÄ… naudojimo instrukcijÄ…" - -#: grub-core/lib/gnulib/argp-parse.c:83 util/grub-mkfont.c:946 -msgid "NAME" -msgstr "PAVADINIMAS" - -#: grub-core/lib/gnulib/argp-parse.c:84 -msgid "set the program name" -msgstr "nustatyti programos pavadinimÄ…" - -#: grub-core/lib/gnulib/argp-parse.c:86 -msgid "hang for SECS seconds (default 3600)" -msgstr "SEK sekundžių trukmÄ—s (numatyta 3600)" - -#: grub-core/lib/gnulib/argp-parse.c:143 -msgid "print program version" -msgstr "parodyti programos versijÄ…" - -#: grub-core/lib/gnulib/argp-parse.c:160 -msgid "(PROGRAM ERROR) No version known!?" -msgstr "(PROGRAMOS KLAIDA) Nežinoma versija!?" - -#: grub-core/lib/gnulib/argp-parse.c:613 -#, c-format -msgid "%s: Too many arguments\n" -msgstr "%s: per daug argumentų\n" - -#: grub-core/lib/gnulib/argp-parse.c:759 -msgid "(PROGRAM ERROR) Option should have been recognized!?" -msgstr "(PROGRAMOS KLAIDA) Parinktys turÄ—jo bÅ«ti atpažintos!?" - -#: grub-core/lib/gnulib/getopt.c:278 -#, fuzzy, c-format -msgid "%s: option '%s%s' is ambiguous\n" -msgstr "%s: parinktis „-W %s“ yra daugiaprasmÄ—\n" - -#: grub-core/lib/gnulib/getopt.c:284 -#, fuzzy, c-format -msgid "%s: option '%s%s' is ambiguous; possibilities:" -msgstr "%s: parinktis „%s“ yra daugiaprasmÄ—; galimi variantai:" - -#: grub-core/lib/gnulib/getopt.c:319 -#, fuzzy, c-format -msgid "%s: unrecognized option '%s%s'\n" -msgstr "%s: neatpažinta parinktis „%c%s“\n" - -#: grub-core/lib/gnulib/getopt.c:345 -#, fuzzy, c-format -msgid "%s: option '%s%s' doesn't allow an argument\n" -msgstr "%s: parinkÄiai „%c%s“ negalima pateikti argumentų\n" - -#: grub-core/lib/gnulib/getopt.c:360 -#, fuzzy, c-format -msgid "%s: option '%s%s' requires an argument\n" -msgstr "%s: parinkÄiai „--%s“ reikia argumento\n" - -#: grub-core/lib/gnulib/getopt.c:621 -#, c-format -msgid "%s: invalid option -- '%c'\n" -msgstr "%s: netinkama parinktis -- „%c“\n" - -#: grub-core/lib/gnulib/getopt.c:636 grub-core/lib/gnulib/getopt.c:682 -#, c-format -msgid "%s: option requires an argument -- '%c'\n" -msgstr "%s: parinkÄiai reikia argumento -- „%c“\n" - -#: grub-core/lib/gnulib/openat-die.c:38 -#, fuzzy, c-format -msgid "unable to record current working directory" -msgstr "nepavyko atkurti originalaus katalogo" - -#: grub-core/lib/gnulib/openat-die.c:57 -#, c-format -msgid "failed to return to initial working directory" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:135 grub-core/osdep/aros/hostdisk.c:523 -msgid "Success" -msgstr "Pavyko" - -#: grub-core/lib/gnulib/regcomp.c:138 -msgid "No match" -msgstr "NÄ—ra atitikmenų" - -#: grub-core/lib/gnulib/regcomp.c:141 -msgid "Invalid regular expression" -msgstr "Netinkamas reguliarusis reiÅ¡kinys" - -#: grub-core/lib/gnulib/regcomp.c:144 -msgid "Invalid collation character" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:147 -msgid "Invalid character class name" -msgstr "Netinkamas raÅ¡menų klasÄ—s vardas" - -#: grub-core/lib/gnulib/regcomp.c:150 -msgid "Trailing backslash" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:153 -msgid "Invalid back reference" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:156 -#, fuzzy -msgid "Unmatched [, [^, [:, [., or [=" -msgstr "Neuždarytas [ arba [^" - -#: grub-core/lib/gnulib/regcomp.c:159 -msgid "Unmatched ( or \\(" -msgstr "Neuždarytas ( arba \\(" - -#: grub-core/lib/gnulib/regcomp.c:162 -msgid "Unmatched \\{" -msgstr "Neuždarytas \\{" - -#: grub-core/lib/gnulib/regcomp.c:165 -msgid "Invalid content of \\{\\}" -msgstr "Netinkamas \\{\\} turinys" - -#: grub-core/lib/gnulib/regcomp.c:168 -msgid "Invalid range end" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:171 -msgid "Memory exhausted" -msgstr "Atmintis iÅ¡naudota" - -#: grub-core/lib/gnulib/regcomp.c:174 -msgid "Invalid preceding regular expression" -msgstr "Netinkamas pirmiau einantis reguliarusis reiÅ¡kinys" - -#: grub-core/lib/gnulib/regcomp.c:177 -msgid "Premature end of regular expression" -msgstr "Reguliarusis reiÅ¡kinys baigÄ—si anksÄiau nei tikÄ—tasi" - -#: grub-core/lib/gnulib/regcomp.c:180 -msgid "Regular expression too big" -msgstr "Reguliarusis reiÅ¡kinys yra per didelis" - -#: grub-core/lib/gnulib/regcomp.c:183 -msgid "Unmatched ) or \\)" -msgstr "Neuždarytas ) arba \\)" - -#: grub-core/lib/gnulib/regcomp.c:531 -msgid "unknown regexp error" -msgstr "nežinoma reguliariosios iÅ¡raiÅ¡kos klaida" - -#: grub-core/lib/gnulib/regcomp.c:676 -msgid "No previous regular expression" -msgstr "Nebuvo ankstesnių reguliariųjų reiÅ¡kinių" - -#: grub-core/lib/i386/halt.c:77 -msgid "GRUB doesn't know how to halt this machine yet!" -msgstr "GRUB dar nežino, kaip iÅ¡jungti Å¡iÄ… maÅ¡inÄ…!" - -#: grub-core/lib/legacy_parse.c:75 -msgid "Default server is ${net_default_server}" -msgstr "Numatytasis serveris yra ${net_default_server}" - -#: grub-core/lib/legacy_parse.c:844 grub-core/video/colors.c:296 -#: grub-core/video/colors.c:305 grub-core/video/colors.c:311 -#: grub-core/video/colors.c:327 util/render-label.c:84 util/render-label.c:98 -#, c-format -msgid "invalid color specification `%s'" -msgstr "netinkama spalvos specifikacija „%s“" - -#: grub-core/lib/mips/arc/reboot.c:32 grub-core/lib/mips/loongson/reboot.c:61 -msgid "Reboot failed" -msgstr "IÅ¡ naujo paleisti nepavyko" - -#: grub-core/lib/random.c:113 -msgid "[LENGTH]" -msgstr "[ILGIS]" - -#: grub-core/lib/random.c:114 -msgid "Hexdump random data." -msgstr "" - -#: grub-core/loader/arm/linux.c:242 -msgid "device tree must be supplied (see `devicetree' command)" -msgstr "" - -#: grub-core/loader/arm/linux.c:334 -msgid "invalid zImage" -msgstr "" - -#: grub-core/loader/arm/linux.c:450 grub-core/loader/efi/fdt.c:144 -msgid "invalid device tree" -msgstr "netinkamas įrenginių medis" - -#: grub-core/loader/arm/linux.c:493 grub-core/loader/arm64/linux.c:383 -#: grub-core/loader/i386/linux.c:1125 grub-core/loader/i386/pc/linux.c:479 -#: grub-core/loader/i386/xen.c:962 grub-core/loader/i386/xen.c:964 -#: grub-core/loader/ia64/efi/linux.c:591 grub-core/loader/mips/linux.c:501 -#: grub-core/loader/powerpc/ieee1275/linux.c:383 -#: grub-core/loader/riscv/linux.c:50 -#: grub-core/loader/sparc64/ieee1275/linux.c:511 -msgid "Load Linux." -msgstr "Ä®kelti Linux" - -#: grub-core/loader/arm/linux.c:495 grub-core/loader/arm64/linux.c:385 -#: grub-core/loader/i386/linux.c:1127 grub-core/loader/i386/pc/linux.c:482 -#: grub-core/loader/i386/xen.c:966 grub-core/loader/ia64/efi/linux.c:594 -#: grub-core/loader/mips/linux.c:503 -#: grub-core/loader/powerpc/ieee1275/linux.c:385 -#: grub-core/loader/riscv/linux.c:52 -#: grub-core/loader/sparc64/ieee1275/linux.c:513 -msgid "Load initrd." -msgstr "Ä®kelti initrd." - -#. TRANSLATORS: DTB stands for device tree blob. -#: grub-core/loader/arm/linux.c:498 grub-core/loader/efi/fdt.c:169 -msgid "Load DTB file." -msgstr "Ä®kelti DTB failÄ…." - -#: grub-core/loader/arm64/linux.c:59 -msgid "" -"plain image kernel not supported - rebuild with CONFIG_(U)EFI_STUB enabled" -msgstr "" - -#: grub-core/loader/arm64/xen_boot.c:156 -msgid "failed to get FDT" -msgstr "Nepavyko gauti FDT" - -#: grub-core/loader/arm64/xen_boot.c:418 -msgid "you need to load the Xen Hypervisor first" -msgstr "pirma turite įkelti Xen Hypervisor" - -#: grub-core/loader/arm64/xen_boot.c:516 -msgid "Load a xen hypervisor." -msgstr "Ä®kelti Xen Hypervisor." - -#: grub-core/loader/arm64/xen_boot.c:519 -msgid "Load a xen module." -msgstr "Ä®kelti Xen modulį." - -#: grub-core/loader/efi/appleloader.c:231 -msgid "[OPTS]" -msgstr "[PARINKTYS]" - -#. TRANSLATORS: This command is used on EFI to -#. switch to BIOS mode and boot the OS requiring -#. BIOS. -#: grub-core/loader/efi/appleloader.c:235 -msgid "Boot BIOS-based system." -msgstr "Ä®kelti sistemÄ… BIOS pagrindu." - -#: grub-core/loader/efi/chainloader.c:421 -#: grub-core/loader/i386/pc/chainloader.c:303 -msgid "Load another boot loader." -msgstr "Ä®kelti kitÄ… paleidyklÄ™." - -#: grub-core/loader/i386/bsd.c:103 -msgid "Display output on all consoles." -msgstr "IÅ¡vedimÄ… rodyti visose konsolÄ—se." - -#: grub-core/loader/i386/bsd.c:104 grub-core/loader/i386/bsd.c:138 -#: grub-core/loader/i386/bsd.c:171 -msgid "Use serial console." -msgstr "Naudoti nuosekliÄ… konsolÄ™." - -#: grub-core/loader/i386/bsd.c:105 grub-core/loader/i386/bsd.c:131 -#: grub-core/loader/i386/bsd.c:159 -msgid "Ask for file name to reboot from." -msgstr "Paklausti, iÅ¡ kurio failo paleisti iÅ¡ naujo." - -#: grub-core/loader/i386/bsd.c:106 -msgid "Use CD-ROM as root." -msgstr "Naudoti CD-ROM kaip Å¡akninį" - -#: grub-core/loader/i386/bsd.c:107 -msgid "Invoke user configuration routing." -msgstr "" - -#: grub-core/loader/i386/bsd.c:108 grub-core/loader/i386/bsd.c:135 -#: grub-core/loader/i386/bsd.c:162 -msgid "Enter in KDB on boot." -msgstr "Paleidžiant įeiti į KBD" - -#: grub-core/loader/i386/bsd.c:109 -msgid "Use GDB remote debugger instead of DDB." -msgstr "Naudoti nutolusiÄ… GDB derintuvÄ™, o ne DDB." - -#: grub-core/loader/i386/bsd.c:110 -msgid "Disable all boot output." -msgstr "Nerodyti paleidyklÄ—s iÅ¡vedimo." - -#: grub-core/loader/i386/bsd.c:112 -msgid "Wait for keypress after every line of output." -msgstr "Pateikus iÅ¡vesties paskiras eilutes, laukti klaviÅ¡o paspaudimo." - -#: grub-core/loader/i386/bsd.c:114 -msgid "Use compiled-in root device." -msgstr "" - -#: grub-core/loader/i386/bsd.c:115 grub-core/loader/i386/bsd.c:134 -#: grub-core/loader/i386/bsd.c:165 -msgid "Boot into single mode." -msgstr "" - -#: grub-core/loader/i386/bsd.c:116 grub-core/loader/i386/bsd.c:166 -msgid "Boot with verbose messages." -msgstr "Paleisti rodant iÅ¡samius praneÅ¡imus." - -#: grub-core/loader/i386/bsd.c:132 grub-core/loader/i386/bsd.c:160 -msgid "Don't reboot, just halt." -msgstr "Tik iÅ¡jungti, nepaleisti iÅ¡ naujo." - -#: grub-core/loader/i386/bsd.c:133 grub-core/loader/i386/bsd.c:161 -msgid "Change configured devices." -msgstr "Keisti sukonfigÅ«ruotus įrenginius." - -#. TRANSLATORS: "com" is static and not to be translated. It refers to -#. serial ports e.g. com1. -#. -#: grub-core/loader/i386/bsd.c:142 -msgid "comUNIT[,SPEED]" -msgstr "" - -#: grub-core/loader/i386/bsd.c:157 -msgid "Disable SMP." -msgstr "IÅ¡jungti SMP" - -#: grub-core/loader/i386/bsd.c:158 -msgid "Disable ACPI." -msgstr "IÅ¡jungti ACPI." - -#: grub-core/loader/i386/bsd.c:164 -msgid "Don't display boot diagnostic messages." -msgstr "Nerodyti paleidimo diagnostinių praneÅ¡imų." - -#: grub-core/loader/i386/bsd.c:167 -msgid "Boot with debug messages." -msgstr "Paleisti rodant derinimo praneÅ¡imus." - -#: grub-core/loader/i386/bsd.c:168 -msgid "Suppress normal output (warnings remain)." -msgstr "Nerodyti įprasto iÅ¡vedimo (rodyti tik įspÄ—jimus)." - -#. TRANSLATORS: "com" is static and not to be translated. It refers to -#. serial ports e.g. com1. -#. -#: grub-core/loader/i386/bsd.c:175 -msgid "[ADDR|comUNIT][,SPEED]" -msgstr "" - -#: grub-core/loader/i386/bsd.c:489 grub-core/loader/i386/bsd.c:555 -msgid "name" -msgstr "vardas" - -#: grub-core/loader/i386/bsd.c:489 grub-core/loader/i386/bsd.c:555 -msgid "type" -msgstr "tipas" - -#: grub-core/loader/i386/bsd.c:489 grub-core/loader/i386/bsd.c:555 -msgid "addr" -msgstr "adresas" - -#: grub-core/loader/i386/bsd.c:490 grub-core/loader/i386/bsd.c:556 -msgid "size" -msgstr "dydis" - -#: grub-core/loader/i386/bsd.c:1147 grub-core/loader/i386/linux.c:466 -#: grub-core/loader/i386/xnu.c:1030 -msgid "Booting in blind mode" -msgstr "Paleisti akloje veiksenoje" - -#: grub-core/loader/i386/bsd.c:2137 -msgid "Load kernel of FreeBSD." -msgstr "Ä®kelti FreeBSD branduolį." - -#: grub-core/loader/i386/bsd.c:2140 -msgid "Load kernel of OpenBSD." -msgstr "Ä®kelti OpenBSD branduolį." - -#: grub-core/loader/i386/bsd.c:2143 -msgid "Load kernel of NetBSD." -msgstr "Ä®kelti NetBSD branduolį." - -#: grub-core/loader/i386/bsd.c:2147 -msgid "Load FreeBSD env." -msgstr "Ä®kelti FreeBSD aplinkÄ…." - -#: grub-core/loader/i386/bsd.c:2150 -msgid "Load FreeBSD kernel module." -msgstr "Ä®kelti FreeBSD branduolio modulį." - -#: grub-core/loader/i386/bsd.c:2153 -msgid "Load NetBSD kernel module." -msgstr "Ä®kelti NetBSD branduolio modulį." - -#: grub-core/loader/i386/bsd.c:2156 -msgid "Load NetBSD kernel module (ELF)." -msgstr "Ä®kelti NetBSD branduolio modulį (ELF)." - -#: grub-core/loader/i386/bsd.c:2159 -msgid "Load FreeBSD kernel module (ELF)." -msgstr "Ä®kelti FreeBSD branduolio modulį (ELF)." - -#. TRANSLATORS: ramdisk isn't identifier, -#. it can be translated. -#: grub-core/loader/i386/bsd.c:2165 -msgid "Load kOpenBSD ramdisk." -msgstr "Ä®kelti kOpenBSD RAM diskÄ…." - -#. TRANSLATORS: "payload" is a term used -#. by coreboot and must be translated in -#. sync with coreboot. If unsure, -#. let it untranslated. -#: grub-core/loader/i386/coreboot/chainloader.c:510 -msgid "Load another coreboot payload" -msgstr "" - -#: grub-core/loader/i386/linux.c:876 -msgid "Legacy `ask' parameter no longer supported." -msgstr "" - -#: grub-core/loader/i386/linux.c:892 grub-core/loader/i386/linux.c:902 -#: grub-core/loader/i386/linux.c:932 -#, c-format -msgid "%s is deprecated. Use set gfxpayload=%s before linux command instead.\n" -msgstr "%s yra pasenÄ™s. SiÅ«lome naudoti gfxpayload=%s prieÅ¡ linux komandÄ….\n" - -#. TRANSLATORS: "x" has to be entered in, like an identifier, -#. so please don't use better Unicode codepoints. -#: grub-core/loader/i386/linux.c:915 -#, c-format -msgid "" -"%s is deprecated. VGA mode %d isn't recognized. Use set " -"gfxpayload=WIDTHxHEIGHT[xDEPTH] before linux command instead.\n" -msgstr "" -"%s yra pasenÄ™s. VGA veiksena %d neatpažinta. SiÅ«lome raÅ¡yti " -"gfxpayload=PLOTISxAUKÅ TIS[xGYLIS] prieÅ¡ linux komandÄ….\n" - -#: grub-core/loader/i386/pc/chainloader.c:302 -msgid "[--force|--bpb] FILE" -msgstr "[--force|--bpb] FAILAS" - -#: grub-core/loader/i386/pc/freedos.c:148 util/setup.c:293 -#, c-format -msgid "the size of `%s' is too large" -msgstr "„%s“ yra per didelis" - -#: grub-core/loader/i386/pc/freedos.c:183 -msgid "Load FreeDOS kernel.sys." -msgstr "Ä®kelti FreeDOS kernel.sys." - -#: grub-core/loader/i386/pc/ntldr.c:155 -msgid "Load NTLDR or BootMGR." -msgstr "Ä®kelti NTLDR arba BootMGR." - -#. TRANSLATORS: it's about guessing which GRUB disk -#. is which Plan9 disk. If your language has no -#. word "mapping" you can use another word which -#. means that the GRUBDEVICE and PLAN9DEVICE are -#. actually the same device, just named differently -#. in OS and GRUB. -#: grub-core/loader/i386/pc/plan9.c:59 -msgid "Override guessed mapping of Plan9 devices." -msgstr "" - -#: grub-core/loader/i386/pc/plan9.c:60 -msgid "GRUBDEVICE=PLAN9DEVICE" -msgstr "" - -#: grub-core/loader/i386/pc/plan9.c:599 -msgid "KERNEL ARGS" -msgstr "BRANDUOLIO ARGUMENTAI" - -#: grub-core/loader/i386/pc/plan9.c:599 -msgid "Load Plan9 kernel." -msgstr "Ä®kelti Plan9 branduolį." - -#: grub-core/loader/i386/pc/pxechainloader.c:161 -msgid "Load a PXE image." -msgstr "Ä®kelti PXE atvaizdį." - -#: grub-core/loader/i386/pc/truecrypt.c:226 -msgid "Load Truecrypt ISO." -msgstr "Ä®kelti Truecrypt ISO." - -#: grub-core/loader/i386/xen.c:781 grub-core/loader/i386/xen.c:865 -msgid "initrd already loaded" -msgstr "initrd jau įkeltas" - -#: grub-core/loader/i386/xen.c:968 -msgid "Load module." -msgstr "Ä®kelti modulį." - -#: grub-core/loader/i386/xnu.c:1003 -msgid "Press any key to launch xnu" -msgstr "NorÄ—dami paleisti xnu, spauskite bet kurį klavišą" - -#. TRANSLATORS: `device-properties' -#. is a variable name, -#. not a program. -#: grub-core/loader/i386/xnu.c:1159 -msgid "Load `device-properties' dump." -msgstr "Ä®kelti „device-properties“ iÅ¡klotinÄ™." - -#: grub-core/loader/ia64/efi/linux.c:124 -msgid "Could not locate FPSWA driver" -msgstr "Nepavyko surasti FPSWA tvarkyklÄ—s" - -#: grub-core/loader/ia64/efi/linux.c:132 -msgid "FPSWA protocol wasn't able to find the interface" -msgstr "FPSWA protokolas negali rasti sÄ…sajos" - -#: grub-core/loader/ia64/efi/linux.c:580 -msgid "No FPSWA found" -msgstr "FPSWA nerasta" - -#: grub-core/loader/ia64/efi/linux.c:582 -#, c-format -msgid "FPSWA revision: %x\n" -msgstr "FPSWA poversijis: %x\n" - -#: grub-core/loader/ia64/efi/linux.c:591 -msgid "FILE [ARGS...]" -msgstr "FAILAS [ARGUMENTAI...]" - -#: grub-core/loader/ia64/efi/linux.c:597 -msgid "Display FPSWA version." -msgstr "Parodyti FPSWA versijÄ…." - -#: grub-core/loader/multiboot.c:248 -msgid "WARNING: no console will be available to OS" -msgstr "Ä®SPÄ–JIMAS: operacinei sistemai nebus prieinama jokia konsolÄ—" - -#: grub-core/loader/multiboot.c:450 -msgid "Load a multiboot 2 kernel." -msgstr "Ä®kelti keleriopo paleidimo 2 branduolį." - -#: grub-core/loader/multiboot.c:453 -msgid "Load a multiboot 2 module." -msgstr "Ä®kelti keleriopo paleidimo 2 modulį." - -#: grub-core/loader/multiboot.c:456 -msgid "Load a multiboot kernel." -msgstr "Ä®kelti keleriopo paleidimo branduolį." - -#: grub-core/loader/multiboot.c:459 -msgid "Load a multiboot module." -msgstr "Ä®kelti keleriopo paleidimo modulį." - -#: grub-core/loader/riscv/linux.c:30 grub-core/loader/riscv/linux.c:40 -#, fuzzy -msgid "Linux not supported yet" -msgstr "interpretatorius nepalaikomas" - -#: grub-core/loader/xnu.c:1416 grub-core/term/gfxterm_background.c:45 -msgid "Background image mode." -msgstr "Su foniniu paveikslÄ—liu." - -#. TRANSLATORS: This refers to background image mode (stretched or -#. in left-top corner). Note that GRUB will accept only original -#. keywords stretch and normal, not the translated ones. -#. So please put both in translation -#. e.g. stretch(=%STRETCH%)|normal(=%NORMAL%). -#. The percents mark the translated version. Since many people -#. may not know the word stretch or normal I recommend -#. putting the translation either here or in "Background image mode." -#. string. -#: grub-core/loader/xnu.c:1416 grub-core/term/gfxterm_background.c:55 -msgid "stretch|normal" -msgstr "" - -#: grub-core/loader/xnu.c:1482 -msgid "Load XNU image." -msgstr "Ä®kelti XNU paveikslÄ—lį." - -#: grub-core/loader/xnu.c:1484 -msgid "Load 64-bit XNU image." -msgstr "Ä®kelti 64 bitų XNU paveikslÄ—lį." - -#: grub-core/loader/xnu.c:1486 -msgid "Load XNU extension package." -msgstr "Ä®kelti XNU plÄ—tinio paketÄ…." - -#: grub-core/loader/xnu.c:1488 -msgid "Load XNU extension." -msgstr "Ä®kelti XNU plÄ—tinį." - -#. TRANSLATORS: OSBundleRequired is a -#. variable name in xnu extensions -#. manifests. It behaves mostly like -#. GNU/Linux runlevels. -#. -#: grub-core/loader/xnu.c:1495 -msgid "DIRECTORY [OSBundleRequired]" -msgstr "" - -#. TRANSLATORS: There are many extensions -#. in extension directory. -#: grub-core/loader/xnu.c:1498 -msgid "Load XNU extension directory." -msgstr "Ä®kelti XNU plÄ—tinio katalogÄ…." - -#. TRANSLATORS: ramdisk here isn't identifier. It can be translated. -#: grub-core/loader/xnu.c:1501 -msgid "Load XNU ramdisk. It will be available in OS as md0." -msgstr "Ä®kelti XNU RAM diskÄ…. OperacinÄ— sistemÄ… jį matys kaip md0." - -#: grub-core/loader/xnu.c:1505 -msgid "Load a splash image for XNU." -msgstr "" - -#: grub-core/loader/xnu.c:1510 -msgid "Load an image of hibernated XNU." -msgstr "" - -#: grub-core/mmap/mmap.c:538 -msgid "ADDR1,MASK1[,ADDR2,MASK2[,...]]" -msgstr "" - -#: grub-core/mmap/mmap.c:539 -msgid "Declare memory regions as faulty (badram)." -msgstr "" - -#: grub-core/mmap/mmap.c:541 -msgid "FROM[K|M|G] TO[K|M|G]" -msgstr "IÅ [K|M|G] Ä®[K|M|G]" - -#: grub-core/mmap/mmap.c:542 -msgid "Remove any memory regions in specified range." -msgstr "" - -#: grub-core/net/bootp.c:653 -msgid "four arguments expected" -msgstr "tikÄ—tasi keturių argumentų" - -#: grub-core/net/bootp.c:661 grub-core/net/net.c:1155 -#, c-format -msgid "unrecognised network interface `%s'" -msgstr "neatpažinta tinklo sÄ…saja „%s“" - -#: grub-core/net/bootp.c:664 -msgid "no DHCP info found" -msgstr "Nerasta jokios DHCP informacijos" - -#: grub-core/net/bootp.c:674 -msgid "no DHCP options found" -msgstr "Nerasta jokių DHCP parinkÄių" - -#: grub-core/net/bootp.c:682 -#, fuzzy -msgid "invalid DHCP option code" -msgstr "Nerasta jokių DHCP parinkÄių" - -#: grub-core/net/bootp.c:686 -#, fuzzy, c-format -msgid "no DHCP option %u found" -msgstr "Nerasta jokių DHCP %d parinkÄių" - -#: grub-core/net/bootp.c:743 -#, c-format -msgid "unrecognised DHCP option format specification `%s'" -msgstr "" - -#: grub-core/net/bootp.c:767 -msgid "no network card found" -msgstr "nerasta jokių tinklo plokÅ¡Äių" - -#: grub-core/net/bootp.c:859 grub-core/net/net.c:389 -#, c-format -msgid "couldn't autoconfigure %s" -msgstr "nepavyksta automatiÅ¡kai sukonfigÅ«ruoti %s" - -#: grub-core/net/bootp.c:873 grub-core/net/bootp.c:876 -msgid "[CARD]" -msgstr "[PLOKÅ TÄ–]" - -#: grub-core/net/bootp.c:874 -msgid "perform a bootp autoconfiguration" -msgstr "" - -#: grub-core/net/bootp.c:877 -#, fuzzy -msgid "perform a DHCP autoconfiguration" -msgstr "AutomatiÅ¡kai sukonfigÅ«ruoti IPv6" - -#: grub-core/net/bootp.c:879 -msgid "VAR INTERFACE NUMBER DESCRIPTION" -msgstr "" - -#: grub-core/net/bootp.c:880 -msgid "" -"retrieve DHCP option and save it into VAR. If VAR is - then print the value." -msgstr "" - -#: grub-core/net/dns.c:459 -msgid "no DNS servers configured" -msgstr "DNS serveriai nesukonfigÅ«ruoti" - -#: grub-core/net/dns.c:522 -msgid "domain name component is too long" -msgstr "srities vardas per ilgas" - -#: grub-core/net/dns.c:618 grub-core/net/dns.c:666 -msgid "no DNS record found" -msgstr "Nerasta DNS įrašų" - -#: grub-core/net/dns.c:626 -msgid "no DNS reply received" -msgstr "Negauta jokio DNS atsako" - -#: grub-core/net/dns.c:682 -msgid "only ipv4" -msgstr "tik ipv4" - -#: grub-core/net/dns.c:686 -msgid "only ipv6" -msgstr "tik ipv6" - -#: grub-core/net/dns.c:690 -msgid "prefer ipv4" -msgstr "ipv4 pirmenybÄ—" - -#: grub-core/net/dns.c:694 -msgid "prefer ipv6" -msgstr "ipv6 pirmenybÄ—" - -#: grub-core/net/dns.c:759 -msgid "ADDRESS DNSSERVER" -msgstr "ADRESAS DNS_SERVERIS" - -#: grub-core/net/dns.c:760 -msgid "Perform a DNS lookup" -msgstr "IeÅ¡koti DNS" - -#: grub-core/net/dns.c:762 grub-core/net/dns.c:765 -msgid "DNSSERVER" -msgstr "DNS_SERVERIS" - -#: grub-core/net/dns.c:763 -msgid "Add a DNS server" -msgstr "PridÄ—ti DNS serverį" - -#: grub-core/net/dns.c:766 -msgid "Remove a DNS server" -msgstr "PaÅ¡alinti DNS serverį" - -#: grub-core/net/dns.c:768 -msgid "List DNS servers" -msgstr "DNS serverių sÄ…raÅ¡as" - -#: grub-core/net/drivers/efi/efinet.c:49 grub-core/net/drivers/efi/efinet.c:65 -#: grub-core/net/drivers/efi/efinet.c:77 grub-core/net/drivers/emu/emunet.c:62 -#: grub-core/net/drivers/i386/pc/pxe.c:273 -#: grub-core/net/drivers/ieee1275/ofnet.c:75 -#: grub-core/net/drivers/uboot/ubootnet.c:62 -msgid "couldn't send network packet" -msgstr "nepavyksta iÅ¡siųsti tinklo paketo" - -#: grub-core/net/drivers/ieee1275/ofnet.c:326 -#: grub-core/net/drivers/ieee1275/ofnet.c:359 -msgid "interpret is not supported" -msgstr "interpretatorius nepalaikomas" - -#: grub-core/net/drivers/ieee1275/ofnet.c:336 -msgid "alloc-mem failed" -msgstr "" - -#: grub-core/net/drivers/ieee1275/ofnet.c:370 -msgid "free-mem failed" -msgstr "" - -#: grub-core/net/http.c:105 -msgid "unsupported HTTP response" -msgstr "nepalaikomas HTTP atsakas" - -#. TRANSLATORS: GRUB HTTP code is pretty young. So even perfectly -#. valid answers like 403 will trigger this very generic message. -#: grub-core/net/http.c:126 -#, c-format -msgid "unsupported HTTP error %d: %s" -msgstr "nepalaikoma HTTP klaida %d: %s" - -#: grub-core/net/http.c:429 grub-core/net/tftp.c:420 -#, c-format -msgid "time out opening `%s'" -msgstr "baigÄ—si skirtasis laikas bandant atverti „%s“" - -#: grub-core/net/net.c:179 -msgid "timeout: could not resolve hardware address" -msgstr "baigÄ—si skirtasis laikas: nepavyksta iÅ¡analizuoti aparatinio adreso" - -#: grub-core/net/net.c:548 -#, c-format -msgid "unresolvable address %s" -msgstr "neiÅ¡sprendžiamas adresas %s" - -#: grub-core/net/net.c:594 -#, c-format -msgid "unrecognised network address `%s'" -msgstr "neatpažintas tinklo adresas „%s“" - -#: grub-core/net/net.c:661 -msgid "destination unreachable" -msgstr "paskirtis nepasiekiama" - -#. TRANSLATORS: route loop is a condition when e.g. -#. to contact server A you need to go through B -#. and to contact B you need to go through A. -#: grub-core/net/net.c:684 -msgid "route loop detected" -msgstr "" - -#: grub-core/net/net.c:700 -msgid "address not found" -msgstr "adresas nerastas" - -#: grub-core/net/net.c:704 -msgid "you can't delete this address" -msgstr "negalite iÅ¡trinti Å¡io adreso" - -#: grub-core/net/net.c:776 grub-core/net/net.c:792 -#, c-format -msgid "Unsupported hw address type %d\n" -msgstr "Nepalaikomas aparatinio adreso tipas %d\n" - -#: grub-core/net/net.c:813 -#, c-format -msgid "Unsupported address type %d\n" -msgstr "Nepalaikomas adreso tipas %d\n" - -#: grub-core/net/net.c:1017 grub-core/net/net.c:1131 -msgid "three arguments expected" -msgstr "tikÄ—tasi trijų argumentų" - -#: grub-core/net/net.c:1023 -msgid "card not found" -msgstr "plokÅ¡tÄ— nerasta" - -#. TRANSLATORS: it refers to the network address. -#: grub-core/net/net.c:1167 -msgid "temporary" -msgstr "laikinas" - -#: grub-core/net/net.c:1190 -#, c-format -msgid "Unknown address type %d\n" -msgstr "Nežinomo adreso tipas %d\n" - -#: grub-core/net/net.c:1298 -msgid "no server is specified" -msgstr "nenurodytas joks serveris" - -#: grub-core/net/net.c:1637 -#, c-format -msgid "timeout reading `%s'" -msgstr "baigÄ—si skirtasis laikas nuskaitant „%s“" - -#. TRANSLATORS: HWADDRESS stands for -#. "hardware address". -#: grub-core/net/net.c:1762 -msgid "SHORTNAME CARD ADDRESS [HWADDRESS]" -msgstr "TRUMPAS_VARDAS PLOKÅ TÄ– ADRESAS [APARAT_ADRESAS]" - -#: grub-core/net/net.c:1763 -msgid "Add a network address." -msgstr "PridÄ—ti tinklo adresÄ…." - -#: grub-core/net/net.c:1766 -msgid "[CARD [HWADDRESS]]" -msgstr "[PLOKÅ TÄ– [Ä®RENGINIO_ADRESAS]]" - -#: grub-core/net/net.c:1767 -msgid "Perform an IPV6 autoconfiguration" -msgstr "AutomatiÅ¡kai sukonfigÅ«ruoti IPv6" - -#: grub-core/net/net.c:1770 grub-core/net/net.c:1777 -msgid "SHORTNAME" -msgstr "TRUMPAS_VARDAS" - -#: grub-core/net/net.c:1771 -msgid "Delete a network address." -msgstr "PaÅ¡alinti visus tinklo adresus." - -#. TRANSLATORS: "gw" is a keyword. -#: grub-core/net/net.c:1774 -msgid "SHORTNAME NET [INTERFACE| gw GATEWAY]" -msgstr "" - -#: grub-core/net/net.c:1775 -msgid "Add a network route." -msgstr "PridÄ—ti tinklo marÅ¡rutÄ…." - -#: grub-core/net/net.c:1778 -msgid "Delete a network route." -msgstr "PaÅ¡alinti tinklo marÅ¡rutÄ…." - -#: grub-core/net/net.c:1780 -msgid "list network routes" -msgstr "parodyti tinklo marÅ¡rutus" - -#: grub-core/net/net.c:1782 -msgid "list network cards" -msgstr "parodyti tinklo plokÅ¡tes" - -#: grub-core/net/net.c:1784 -msgid "list network addresses" -msgstr "parodyti tinklo adresus" - -#: grub-core/net/tcp.c:681 -msgid "connection refused" -msgstr "sujungimas atÅ¡auktas" - -#: grub-core/net/tcp.c:684 -msgid "connection timeout" -msgstr "baigÄ—si sujungimui skirtas laikas" - -#: grub-core/normal/auth.c:220 -msgid "Enter username: " -msgstr "Ä®veskite naudotojo vardÄ…: " - -#: grub-core/normal/auth.c:269 -msgid "[USERLIST]" -msgstr "[NAUDOTOJŲ_SÄ„RAÅ AS]" - -#: grub-core/normal/auth.c:270 -msgid "Check whether user is in USERLIST." -msgstr "Patikrinti, ar naudotojas yra NAUDOTOJŲ_SÄ„RAÅ E." - -#: grub-core/normal/cmdline.c:174 grub-core/normal/menu_entry.c:1068 -msgid "Possible commands are:" -msgstr "Galimos komandos:" - -#: grub-core/normal/cmdline.c:177 grub-core/normal/menu_entry.c:1072 -msgid "Possible devices are:" -msgstr "Galimi įrenginiai:" - -#: grub-core/normal/cmdline.c:180 grub-core/normal/menu_entry.c:1076 -msgid "Possible files are:" -msgstr "Galimi failai:" - -#: grub-core/normal/cmdline.c:183 grub-core/normal/menu_entry.c:1080 -msgid "Possible partitions are:" -msgstr "Galimi skaidiniai:" - -#: grub-core/normal/cmdline.c:186 grub-core/normal/menu_entry.c:1084 -msgid "Possible arguments are:" -msgstr "Galimi argumentai:" - -#. TRANSLATORS: this message is used if none of above matches. -#. This shouldn't happen but please use the general term for -#. "thing" or "object". -#: grub-core/normal/cmdline.c:192 grub-core/normal/menu_entry.c:1088 -msgid "Possible things are:" -msgstr "Galimi dalykai:" - -#: grub-core/normal/color.c:81 -#, c-format -msgid "Warning: syntax error (missing slash) in `%s'\n" -msgstr "" -"Ä®spÄ—jimas: sintaksÄ—s klaida (trÅ«ksta pasvirojo brÅ«kÅ¡nio) „%s“ eilutÄ—je\n" - -#: grub-core/normal/color.c:90 -#, c-format -msgid "Warning: invalid foreground color `%s'\n" -msgstr "Ä®spÄ—jimas: netinkama priekinio plano spalva „%s“\n" - -#: grub-core/normal/color.c:96 -#, c-format -msgid "Warning: invalid background color `%s'\n" -msgstr "Ä®spÄ—jimas: netinkama fono spalva „%s“\n" - -#: grub-core/normal/context.c:206 -msgid "ENVVAR [ENVVAR] ..." -msgstr "APLINKOS_KINTAMASIS [APLINKOS_KINTAMASIS] ..." - -#: grub-core/normal/context.c:207 -msgid "Export variables." -msgstr "Eksportuoti kintamuosius." - -#: grub-core/normal/datetime.c:25 -msgid "Sunday" -msgstr "sekmadienis" - -#: grub-core/normal/datetime.c:26 -msgid "Monday" -msgstr "pirmadienis" - -#: grub-core/normal/datetime.c:27 -msgid "Tuesday" -msgstr "antradienis" - -#: grub-core/normal/datetime.c:28 -msgid "Wednesday" -msgstr "treÄiadienis" - -#: grub-core/normal/datetime.c:29 -msgid "Thursday" -msgstr "ketvirtadienis" - -#: grub-core/normal/datetime.c:30 -msgid "Friday" -msgstr "penktadienis" - -#: grub-core/normal/datetime.c:31 -msgid "Saturday" -msgstr "Å¡eÅ¡tadienis" - -#: grub-core/normal/dyncmd.c:187 -msgid "module isn't loaded" -msgstr "modulis nepaleistas" - -#: grub-core/normal/main.c:211 -#, c-format -msgid "GNU GRUB version %s" -msgstr "GNU GRUB %s versija" - -#: grub-core/normal/main.c:360 -msgid "ESC at any time exits." -msgstr "Gr(įžties) (angl. Escape) klaviÅ¡u visada iÅ¡eisite." - -#: grub-core/normal/main.c:363 -#, c-format -msgid "" -"Minimal BASH-like line editing is supported. For the first word, TAB lists " -"possible command completions. Anywhere else TAB lists possible device or " -"file completions. %s" -msgstr "" -"Palaikomas minimalus BASH tipo redagavimas. TAB ties pirmuoju žodžiu " -"pateikia komandos užbaigimo pasiÅ«lymus. TAB nuspaudimas bet kur kitur " -"pateikia pasiekiamų įrenginių arba failų užbaigimus. %s" - -#. TRANSLATORS: it's command line prompt. -#: grub-core/normal/main.c:395 -msgid ">" -msgstr ">" - -#. TRANSLATORS: it's command line prompt. -#: grub-core/normal/main.c:398 -msgid "grub>" -msgstr "grub>" - -#: grub-core/normal/main.c:518 -msgid "Clear the screen." -msgstr "IÅ¡valyti ekranÄ…." - -#: grub-core/normal/main.c:527 -msgid "Enter normal mode." -msgstr "Ä®eiti į įprastÄ… veiksenÄ…." - -#: grub-core/normal/main.c:529 -msgid "Exit from normal mode." -msgstr "IÅ¡eiti iÅ¡ įprastos veiksenos." - -#: grub-core/normal/menu.c:66 grub-core/normal/menu_entry.c:1449 -msgid "Press any key to continue..." -msgstr "NorÄ—dami tÄ™sti, spauskite bet kurį klavišą..." - -#: grub-core/normal/menu.c:815 -#, c-format -msgid "Booting `%s'" -msgstr "Ä®keliamas „%s“" - -#: grub-core/normal/menu.c:827 -#, c-format -msgid "Falling back to `%s'" -msgstr "Grįžtama į „%s“" - -#: grub-core/normal/menu.c:843 -msgid "Failed to boot both default and fallback entries.\n" -msgstr "Nepavyko paleisti nei numatytojo, nei atsarginio įraÅ¡o.\n" - -#: grub-core/normal/menu_entry.c:1171 -msgid "Booting a command list" -msgstr "Paleidžiama vykdant komandų sÄ…rašą" - -#: grub-core/normal/menu_text.c:160 -msgid "" -"Minimum Emacs-like screen editing is supported. TAB lists completions. Press " -"Ctrl-x or F10 to boot, Ctrl-c or F2 for a command-line or ESC to discard " -"edits and return to the GRUB menu." -msgstr "" -"Palaikomas minimalus Emacs tipo redagavimas. TAB pateikia užbaigimo " -"pasiÅ«lymus. NorÄ—dami paleisti sistemÄ…, spauskite Vald+X arba F10; norÄ—dami " -"patekti į komandinÄ™ eilutÄ™, spauskite Vald+C arba F2; norÄ—dami atmesti " -"pakeitimus ir grįžti į GRUB meniu, spauskite Gr(įžties) klavišą (angl. " -"escape)." - -#: grub-core/normal/menu_text.c:170 -#, c-format -msgid "Use the %C and %C keys to select which entry is highlighted." -msgstr "Ä®raÅ¡o pasirinkimui naudokite %C ir %C klaviÅ¡us." - -#. TRANSLATORS: that's the list of binary unit prefixes. -#: grub-core/normal/misc.c:38 -msgid "B" -msgstr "B" - -#: grub-core/normal/misc.c:38 -msgid "KiB" -msgstr "KiB" - -#: grub-core/normal/misc.c:38 -msgid "MiB" -msgstr "MiB" - -#: grub-core/normal/misc.c:38 -msgid "GiB" -msgstr "GiB" - -#: grub-core/normal/misc.c:38 -msgid "TiB" -msgstr "TiB" - -#: grub-core/normal/misc.c:38 -msgid "PiB" -msgstr "PiB" - -#. TRANSLATORS: that's the list of binary unit prefixes. -#: grub-core/normal/misc.c:40 -msgid "K" -msgstr "K" - -#: grub-core/normal/misc.c:40 -msgid "M" -msgstr "M" - -#: grub-core/normal/misc.c:40 -msgid "G" -msgstr "G" - -#: grub-core/normal/misc.c:40 -msgid "T" -msgstr "T" - -#: grub-core/normal/misc.c:40 -msgid "P" -msgstr "P" - -#. TRANSLATORS: that's the list of binary unit prefixes. -#: grub-core/normal/misc.c:42 -msgid "B/s" -msgstr "B/s" - -#: grub-core/normal/misc.c:42 -msgid "KiB/s" -msgstr "KiB/s" - -#: grub-core/normal/misc.c:42 -msgid "MiB/s" -msgstr "MiB/s" - -#: grub-core/normal/misc.c:42 -msgid "GiB/s" -msgstr "GiB/s" - -#: grub-core/normal/misc.c:42 -msgid "TiB/s" -msgstr "TiB/s" - -#: grub-core/normal/misc.c:42 -msgid "PiB/s" -msgstr "PiB/s" - -#: grub-core/normal/misc.c:96 -#, c-format -msgid "Partition %s:" -msgstr "%s skaidinys:" - -#: grub-core/normal/misc.c:101 -#, c-format -msgid "Device %s:" -msgstr "%s įrenginys:" - -#: grub-core/normal/misc.c:107 -msgid "Filesystem cannot be accessed" -msgstr "Nepavyksta pasiekti failų sistemos" - -#: grub-core/normal/misc.c:121 -#, c-format -msgid "Filesystem type %s" -msgstr "Failų sistemos tipas %s" - -#: grub-core/normal/misc.c:131 -#, c-format -msgid "- Label `%s'" -msgstr "- etiketÄ— „%s“" - -#. TRANSLATORS: Arguments are year, month, day, hour, minute, -#. second, day of the week (translated). -#: grub-core/normal/misc.c:148 -#, c-format -msgid "- Last modification time %d-%02d-%02d %02d:%02d:%02d %s" -msgstr "- paskiausiai keista %d-%02d-%02d %02d:%02d:%02d %s" - -#: grub-core/normal/misc.c:171 -msgid "No known filesystem detected" -msgstr "Neaptikta nei vienos žinomos failų sistemos" - -#: grub-core/normal/misc.c:174 -#, c-format -msgid " - Partition start at %llu%sKiB" -msgstr " - skaidinys prasideda ties %llu%sKiB" - -#: grub-core/normal/misc.c:178 -#, c-format -msgid " - Sector size %uB" -msgstr " - sektoriaus dydis %uB" - -#: grub-core/normal/misc.c:180 -msgid " - Total size unknown" -msgstr " - bendras dydis nežinomas" - -#: grub-core/normal/misc.c:182 -#, c-format -msgid " - Total size %llu%sKiB" -msgstr " - bendras dydis %llu%sKiB" - -#. TRANSLATORS: Replace dot with appropriate decimal separator for -#. your language. -#: grub-core/normal/misc.c:186 -msgid ".5" -msgstr ",5" - -#. TRANSLATORS: This has to fit on one line. It's ok to include few -#. words but don't write poems. -#: grub-core/normal/term.c:82 -msgid "--MORE--" -msgstr "--DAUGIAU--" - -#: grub-core/osdep/aros/config.c:92 grub-core/osdep/unix/config.c:137 -#: grub-core/osdep/windows/config.c:55 -#, c-format -msgid "cannot open configuration file `%s': %s" -msgstr "nepavyko atverti konfigÅ«racijos failo „%s“: %s" - -#: grub-core/osdep/basic/compress.c:8 grub-core/osdep/basic/compress.c:14 -#: grub-core/osdep/basic/compress.c:20 -msgid "no compression is available for your platform" -msgstr "jÅ«sų platformai glaudinimas neprieinamas" - -#: grub-core/osdep/basic/no_platform.c:30 -#: grub-core/osdep/windows/platform.c:418 -msgid "no IEEE1275 routines are available for your platform" -msgstr "JÅ«sų platformai nÄ—ra IEEE1275 palaikymo" - -#: grub-core/osdep/basic/no_platform.c:38 -msgid "no EFI routines are available for your platform" -msgstr "JÅ«sų platformai nÄ—ra EFI palaikymo" - -#: grub-core/osdep/basic/no_platform.c:45 -#: grub-core/osdep/windows/platform.c:425 -msgid "no SGI routines are available for your platform" -msgstr "JÅ«sų platformai nÄ—ra SGI palaikymo" - -#. TRANSLATORS: The OS itself may very well have a random -#. number generator but GRUB doesn't know how to access it. -#: grub-core/osdep/basic/random.c:42 -msgid "no random number generator is available for your OS" -msgstr "" -"jÅ«sų operacinei sistemai atsitiktinių skaiÄių generatorius nÄ—ra prieinamas" - -#: grub-core/osdep/devmapper/getroot.c:81 -msgid "Failed to create `device-mapper' tree" -msgstr "" - -#: grub-core/osdep/devmapper/getroot.c:197 -#: grub-core/osdep/freebsd/getroot.c:202 -#, c-format -msgid "can't mount encrypted volume `%s': %s" -msgstr "nepavyko prijungti užšifruoto tomo „%s“: %s" - -#. TRANSLATORS: geom is the name of (k)FreeBSD device framework. -#. Usually left untranslated. -#. -#: grub-core/osdep/freebsd/getroot.c:82 grub-core/osdep/freebsd/getroot.c:164 -#: grub-core/osdep/freebsd/getroot.c:258 grub-core/osdep/freebsd/getroot.c:316 -msgid "couldn't open geom" -msgstr "" - -#: grub-core/osdep/freebsd/getroot.c:182 grub-core/osdep/freebsd/getroot.c:277 -msgid "couldn't find geli consumer" -msgstr "" - -#: grub-core/osdep/freebsd/getroot.c:282 -msgid "couldn't retrieve geli UUID" -msgstr "" - -#. TRANSLATORS: geom is the name of (k)FreeBSD device framework. -#. Usually left untranslated. "part" is the identifier of one of its -#. classes. -#: grub-core/osdep/freebsd/getroot.c:325 -msgid "couldn't find geom `part' class" -msgstr "" - -#: grub-core/osdep/freebsd/hostdisk.c:72 grub-core/osdep/linux/hostdisk.c:93 -msgid "unaligned device size" -msgstr "" - -#: grub-core/osdep/generic/blocklist.c:56 -#, c-format -msgid "attempting to read the core image `%s' from GRUB" -msgstr "" - -#: grub-core/osdep/generic/blocklist.c:57 -#, c-format -msgid "attempting to read the core image `%s' from GRUB again" -msgstr "" - -#: grub-core/osdep/generic/blocklist.c:115 -#, c-format -msgid "cannot read `%s' correctly" -msgstr "nepavyko tinkamai perskaityti „%s“" - -#: grub-core/osdep/generic/blocklist.c:126 -msgid "failed to read the sectors of the core image" -msgstr "nepavyko perskaityti pagrindinio atvaizdžio sektorių" - -#. TRANSLATORS: On GNU/Hurd, a "translator" is similar to a filesystem -#. mount, but handled by a userland daemon, whose invocation command line -#. is being fetched here. First %s is the file being looked at (for which -#. we are fetching the "translator" command line), second %s is the error -#. message. -#. -#: grub-core/osdep/hurd/getroot.c:79 -#, c-format -msgid "cannot get translator command line for path `%s': %s" -msgstr "" - -#: grub-core/osdep/hurd/getroot.c:82 -#, c-format -msgid "translator command line is empty for path `%s'" -msgstr "" - -#. TRANSLATORS: we expect to get something like -#. /hurd/foobar --option1 --option2=baz /dev/something -#. -#: grub-core/osdep/hurd/getroot.c:98 -#, c-format -msgid "" -"translator `%s' for path `%s' has several non-option words, at least `%s' " -"and `%s'" -msgstr "" - -#. TRANSLATORS: we expect to get something like -#. /hurd/foobar --option1 --option2=baz /dev/something -#. -#: grub-core/osdep/hurd/getroot.c:109 -#, c-format -msgid "" -"translator `%s' for path `%s' is given only options, cannot find device part" -msgstr "" - -#: grub-core/osdep/hurd/hostdisk.c:73 -#, c-format -msgid "Storage information for `%s' does not include type" -msgstr "Atminties įtaiso „%s“ informacijoje nepaminÄ—tas tipas" - -#: grub-core/osdep/hurd/hostdisk.c:75 -#, c-format -msgid "`%s' is not a local disk" -msgstr "„%s“ nÄ—ra vietinis diskas" - -#: grub-core/osdep/hurd/hostdisk.c:78 -#, c-format -msgid "" -"Storage information for `%s' indicates neither a plain partition nor a plain " -"disk" -msgstr "" -"Atminties įtaiso „%s“ informacija nurodo, kad tai nei grynas skaidinys, nei " -"grynas diskas" - -#: grub-core/osdep/linux/blocklist.c:81 grub-core/osdep/linux/blocklist.c:96 -#: grub-core/osdep/linux/blocklist.c:122 -#, c-format -msgid "can't retrieve blocklists: %s" -msgstr "nepavyko gauti blokų sÄ…raÅ¡o: %s" - -#: grub-core/osdep/linux/blocklist.c:84 -msgid "blocksize is not divisible by 512" -msgstr "bloko dydis nesidalija iÅ¡ 512" - -#: grub-core/osdep/linux/blocklist.c:86 -msgid "invalid zero blocksize" -msgstr "netinkamas nulinis bloko dydis" - -#: grub-core/osdep/linux/blocklist.c:90 util/setup.c:744 -msgid "can't retrieve blocklists" -msgstr "nepavyko gauti blokų sÄ…raÅ¡o" - -#: grub-core/osdep/linux/getroot.c:154 -#, c-format -msgid "ioctl RAID_VERSION error: %s" -msgstr "" - -#: grub-core/osdep/linux/getroot.c:160 grub-core/osdep/linux/getroot.c:164 -#, c-format -msgid "unsupported RAID version: %d.%d" -msgstr "nepalaikoma RAID versija: %d.%d" - -#: grub-core/osdep/linux/getroot.c:169 -#, c-format -msgid "ioctl GET_ARRAY_INFO error: %s" -msgstr "" - -#: grub-core/osdep/linux/getroot.c:178 -#, c-format -msgid "ioctl GET_DISK_INFO error: %s" -msgstr "" - -#: grub-core/osdep/linux/getroot.c:608 grub-core/osdep/linux/getroot.c:678 -#: grub-core/osdep/linux/hostdisk.c:126 grub-core/osdep/unix/getroot.c:253 -#: grub-core/osdep/unix/getroot.c:642 grub-core/osdep/unix/platform.c:92 -#: grub-core/osdep/unix/platform.c:100 -#, c-format -msgid "Unable to open stream from %s: %s" -msgstr "Nepavyksta atverti srauto iÅ¡ %s: %s" - -#: grub-core/osdep/linux/getroot.c:1033 -#, c-format -msgid "unknown kind of RAID device `%s'" -msgstr "Nežinomos rūšies RAID įrenginys „%s“" - -#: grub-core/osdep/linux/ofpath.c:181 -#, c-format -msgid "`obppath' not found in parent dirs of `%s', no IEEE1275 name discovery" -msgstr "" - -#: grub-core/osdep/linux/ofpath.c:222 grub-core/osdep/unix/getroot.c:505 -#: grub-core/osdep/unix/getroot.c:529 grub-core/osdep/unix/relpath.c:49 -#: util/grub-install.c:984 util/grub-install.c:1331 util/grub-probe.c:323 -#, c-format -msgid "failed to get canonical path of `%s'" -msgstr "" - -#: grub-core/osdep/linux/ofpath.c:740 -#, c-format -msgid "unknown device type %s" -msgstr "nežinomas įrenginio tipas %s" - -#: grub-core/osdep/linux/ofpath.c:758 util/ieee1275/grub-ofpathname.c:39 -#, c-format -msgid "Usage: %s DEVICE\n" -msgstr "Naudojimas: %s Ä®RENGINYS\n" - -#: grub-core/osdep/unix/exec.c:86 grub-core/osdep/unix/exec.c:172 -#: grub-core/osdep/unix/exec.c:217 -#, c-format -msgid "Unable to fork: %s" -msgstr "" - -#: grub-core/osdep/unix/exec.c:166 grub-core/osdep/unix/exec.c:211 -#, c-format -msgid "Unable to create pipe: %s" -msgstr "" - -#: grub-core/osdep/unix/getroot.c:370 -#, fuzzy -msgid "cannot save the original directory" -msgstr "nepavyko atkurti originalaus katalogo" - -#: grub-core/osdep/unix/getroot.c:423 grub-core/osdep/unix/getroot.c:480 -#: grub-core/osdep/unix/getroot.c:489 -msgid "cannot restore the original directory" -msgstr "nepavyko atkurti originalaus katalogo" - -#. TRANSLATORS: "stat" comes from the name of POSIX function. -#: grub-core/osdep/unix/getroot.c:551 grub-core/osdep/unix/hostdisk.c:61 -#: grub-core/osdep/unix/relpath.c:73 grub-core/osdep/unix/relpath.c:97 -#: util/getroot.c:160 util/getroot.c:162 util/grub-install.c:774 -#: util/grub-macbless.c:70 -#, c-format -msgid "cannot stat `%s': %s" -msgstr "" - -#: grub-core/osdep/unix/hostdisk.c:293 -#, c-format -msgid "cannot make temporary file: %s" -msgstr "nepavyko sukurti laikinojo failo: %s" - -#: grub-core/osdep/unix/hostdisk.c:311 -#, c-format -msgid "cannot make temporary directory: %s" -msgstr "nepavyksta sukurti laikinojo katalogo: %s" - -#: grub-core/osdep/unix/platform.c:77 -#, c-format -msgid "" -"couldn't find IEEE1275 device path for %s.\n" -"You will have to set `boot-device' variable manually" -msgstr "" - -#. TRANSLATORS: This message is shown when required executable `%s' -#. isn't found. -#: grub-core/osdep/unix/platform.c:149 grub-core/osdep/unix/platform.c:189 -#, c-format -msgid "%s: not found" -msgstr "%s: nerastas" - -#: grub-core/osdep/unix/platform.c:225 -#, c-format -msgid "" -"`nvsetenv' failed. \n" -"You will have to set `boot-device' variable manually. At the IEEE1275 " -"prompt, type:\n" -" %s\n" -msgstr "" - -#: grub-core/osdep/unix/platform.c:240 -msgid "You will have to set `SystemPartition' and `OSLoader' manually." -msgstr "" - -#. TRANSLATORS: canonical pathname is the -#. complete one e.g. /etc/fstab. It has -#. to contain `/' normally, if it doesn't -#. we're in trouble and throw this error. -#: grub-core/osdep/unix/relpath.c:90 -msgid "no `/' in canonical filename" -msgstr "" - -#: grub-core/osdep/windows/hostdisk.c:151 -msgid "cygwin_conv_path() failed" -msgstr "cygwin_conv_path() klaida" - -#: grub-core/osdep/windows/hostdisk.c:501 util/grub-install.c:570 -msgid "couldn't retrieve random data" -msgstr "nepavyko gauti atsitiktinių duomenų" - -#: grub-core/osdep/windows/platform.c:97 -msgid "Insufficient privileges to access firmware, assuming BIOS" -msgstr "" - -#: grub-core/osdep/windows/platform.c:225 -msgid "no EFI routines are available when running in BIOS mode" -msgstr "" - -#: grub-core/osdep/windows/platform.c:240 -msgid "unexpected EFI error" -msgstr "netikÄ—ta EFI klaida" - -#: grub-core/osdep/windows/platform.c:315 -msgid "Couldn't find a free BootNNNN slot" -msgstr "" - -#: grub-core/partmap/gpt.c:191 -msgid "" -"this GPT partition label contains no BIOS Boot Partition; embedding won't be " -"possible" -msgstr "" - -#: grub-core/partmap/gpt.c:196 -msgid "your BIOS Boot Partition is too small; embedding won't be possible" -msgstr "" -"jÅ«sų BIOS paleidimo skaidinys yra per mažas; įtalpinimas į jį negalimas" - -#. TRANSLATORS: MBR gap and boot track is the same thing and is the space -#. between MBR and first partitition. If your language translates well only -#. "boot track", you can just use it everywhere. Next two messages are about -#. RAID controllers/software bugs which GRUB has to live with. Please spread -#. the message that these are bugs in other software and not merely -#. suboptimal behaviour. -#: grub-core/partmap/msdos.c:51 -#, c-format -msgid "" -"Sector %llu is already in use by raid controller `%s'; avoiding it. Please " -"ask the manufacturer not to store data in MBR gap" -msgstr "" - -#: grub-core/partmap/msdos.c:54 -#, c-format -msgid "" -"Sector %llu is already in use by the program `%s'; avoiding it. This " -"software may cause boot or other problems in future. Please ask its authors " -"not to store data in the boot track" -msgstr "" - -#: grub-core/partmap/msdos.c:384 -msgid "" -"other software is using the embedding area, and there is not enough room for " -"core.img. Such software is often trying to store data in a way that avoids " -"detection. We recommend you investigate" -msgstr "" - -#: grub-core/partmap/msdos.c:395 -msgid "" -"this msdos-style partition label has no post-MBR gap; embedding won't be " -"possible" -msgstr "" - -#: grub-core/partmap/msdos.c:404 -msgid "your embedding area is unusually small. core.img won't fit in it." -msgstr "" -"įtalpinimui skirta sritis yra neįprastai maža. Failas core.img netilps į jį." - -#: grub-core/parttool/msdospart.c:39 -msgid "Make partition active" -msgstr "Aktyvuoti skaidinį" - -#: grub-core/parttool/msdospart.c:51 -msgid "not a primary partition" -msgstr "ne pirminis skaidinys" - -#: grub-core/parttool/msdospart.c:69 -#, c-format -msgid "Partition %d is active now. \n" -msgstr "Nuo Å¡iol %d skaidinys aktyvus. \n" - -#: grub-core/parttool/msdospart.c:74 -#, c-format -msgid "Cleared active flag on %d. \n" -msgstr "Panaikinti žymÄ™, kad %d yra aktyvus. \n" - -#: grub-core/parttool/msdospart.c:87 -msgid "Change partition type" -msgstr "Keisti skaidinio tipÄ…" - -#: grub-core/parttool/msdospart.c:88 -msgid "Set `hidden' flag in partition type" -msgstr "PažymÄ—ti, kad skaidinys yra paslÄ—ptas („hidden“ vÄ—liavÄ—lÄ—)" - -#: grub-core/parttool/msdospart.c:130 -#, c-format -msgid "the partition type 0x%x isn't valid" -msgstr "skaidinio tipas 0x%x nÄ—ra tinkamas" - -#. TRANSLATORS: In this case we're actually writing to the disk and actively -#. modifying partition type rather than just defining it. -#: grub-core/parttool/msdospart.c:137 -#, c-format -msgid "Setting partition type to 0x%x\n" -msgstr "Skaidinio tipÄ… pakeisti į 0x%x\n" - -#. TRANSLATORS: 0 is a quantifier. "break" (similar to bash) -#. can be used e.g. to break 3 loops at once. -#. But asking it to break 0 loops makes no sense. -#: grub-core/script/execute.c:143 -msgid "can't break 0 loops" -msgstr "" - -#. TRANSLATORS: It's about not being -#. inside a function. "return" can be used only -#. in a function and this error occurs if it's used -#. anywhere else. -#: grub-core/script/execute.c:227 -msgid "not in function body" -msgstr "tai nepriklauso funkcijai" - -#: grub-core/script/execute.c:371 -#, c-format -msgid "invalid variable name `%s'" -msgstr "netinkamas kintamojo vardas „%s“" - -#: grub-core/script/execute.c:953 -msgid "cannot allocate command buffer" -msgstr "" - -#: grub-core/script/lexer.c:144 util/grub-fstest.c:330 -msgid "unexpected end of file" -msgstr "netikÄ—ta failo pabaiga" - -#: grub-core/script/main.c:55 grub-core/script/main.c:57 -#: grub-core/script/main.c:59 grub-core/script/main.c:67 -msgid "[NUM]" -msgstr "[SKAIÄŒIUS]" - -#: grub-core/script/main.c:55 -msgid "Exit from loops" -msgstr "IÅ¡eiti iÅ¡ ciklo" - -#: grub-core/script/main.c:57 -msgid "Continue loops" -msgstr "TÄ™sti ciklÄ…" - -#. TRANSLATORS: Positional arguments are -#. arguments $0, $1, $2, ... -#: grub-core/script/main.c:62 -msgid "Shift positional parameters." -msgstr "" - -#: grub-core/script/main.c:64 -msgid "[VALUE]..." -msgstr "[REIKÅ MÄ–]..." - -#: grub-core/script/main.c:65 -msgid "Set positional parameters." -msgstr "" - -#. TRANSLATORS: It's a command description -#. and "Return" is a verb, not a noun. The -#. command in question is "return" and -#. has exactly the same semanics as bash -#. equivalent. -#: grub-core/script/main.c:73 -msgid "Return from a function." -msgstr "Grįžti iÅ¡ funkcijos." - -#: grub-core/term/gfxterm_background.c:176 -msgid "[-m (stretch|normal)] FILE" -msgstr "" - -#: grub-core/term/gfxterm_background.c:177 -msgid "Load background image for active terminal." -msgstr "Aktyviame terminale rodyti fono paveikslÄ—lį." - -#: grub-core/term/gfxterm_background.c:182 util/grub-install.c:302 -#: util/grub-install.c:303 util/grub-mkrescue.c:107 util/grub-mkrescue.c:108 -#: util/grub-render-label.c:61 util/grub-render-label.c:63 -msgid "COLOR" -msgstr "SPALVA" - -#: grub-core/term/gfxterm_background.c:183 -msgid "Set background color for active terminal." -msgstr "Aktyviam terminalui suteikti fono paveikslÄ—lį." - -#: grub-core/term/i386/coreboot/cbmemc.c:139 -msgid "Show CBMEM console content." -msgstr "" - -#: grub-core/term/serial.c:57 -msgid "Set the serial unit." -msgstr "" - -#: grub-core/term/serial.c:58 -msgid "Set the serial port address." -msgstr "Nustatyti nuosekliojo prievado adresÄ…." - -#: grub-core/term/serial.c:59 -msgid "Set the serial port speed." -msgstr "Nustatyti nuosekliojo prievado greitį." - -#: grub-core/term/serial.c:60 -msgid "Set the serial port word length." -msgstr "Nustatyti nuosekliojo prievado žodžio ilgį." - -#: grub-core/term/serial.c:61 -msgid "Set the serial port parity." -msgstr "Nustatyti nuosekliojo prievado lyginumÄ…." - -#: grub-core/term/serial.c:62 -msgid "Set the serial port stop bits." -msgstr "" - -#: grub-core/term/serial.c:63 -msgid "Set the base frequency." -msgstr "Nustatyti pagrindinį dažnį." - -#: grub-core/term/serial.c:64 -msgid "Enable/disable RTS/CTS." -msgstr "Ä®galinti/uždrausti RTS/CTS." - -#: grub-core/term/serial.c:218 -#, c-format -msgid "serial port `%s' isn't found" -msgstr "" - -#: grub-core/term/serial.c:254 -msgid "unsupported serial port flow control" -msgstr "nepalaikomas nuosekliojo prievado srauto valdymas" - -#: grub-core/term/serial.c:429 -msgid "[OPTIONS...]" -msgstr "[PARINKTYS...]" - -#: grub-core/term/serial.c:430 -msgid "Configure serial port." -msgstr "KonfigÅ«ruoti nuoseklųjį prievadÄ…." - -#: grub-core/term/terminfo.c:184 -#, c-format -msgid "unknown terminfo type `%s'" -msgstr "" - -#: grub-core/term/terminfo.c:668 -msgid "ASCII" -msgstr "ASCII" - -#: grub-core/term/terminfo.c:671 -msgid "UTF-8" -msgstr "UTF-8" - -#. TRANSLATORS: visually ordered UTF-8 is a non-compliant encoding -#. based on UTF-8 with right-to-left languages written in reverse. -#. Used on some terminals. Normal UTF-8 is refered as -#. "logically-ordered UTF-8" by opposition. -#: grub-core/term/terminfo.c:677 -msgid "visually-ordered UTF-8" -msgstr "" - -#: grub-core/term/terminfo.c:680 -msgid "Unknown encoding" -msgstr "Nežinoma koduotÄ—" - -#: grub-core/term/terminfo.c:684 -msgid "Current terminfo types:" -msgstr "" - -#: grub-core/term/terminfo.c:699 -msgid "Terminal is ASCII-only [default]." -msgstr "Terminalas yra grynai ASCII [numatytas]." - -#: grub-core/term/terminfo.c:700 -msgid "Terminal is logical-ordered UTF-8." -msgstr "" - -#: grub-core/term/terminfo.c:701 -msgid "Terminal is visually-ordered UTF-8." -msgstr "" - -#: grub-core/term/terminfo.c:703 -msgid "Terminal has specified geometry." -msgstr "" - -#. TRANSLATORS: "x" has to be entered in, like an identifier, so please don't -#. use better Unicode codepoints. -#: grub-core/term/terminfo.c:706 -msgid "WIDTHxHEIGHT." -msgstr "PLOTISxAUKÅ TIS." - -#: grub-core/term/terminfo.c:746 -msgid "incorrect terminal dimensions specification" -msgstr "" - -#: grub-core/term/terminfo.c:776 -#, c-format -msgid "terminal %s isn't found or it's not handled by terminfo" -msgstr "" - -#: grub-core/term/terminfo.c:785 -msgid "[[-a|-u|-v] [-g WxH] TERM [TYPE]]" -msgstr "[[-a|-u|-v] [-g PLOTISxAUKÅ TIS] TERM [TIPAS]]" - -#: grub-core/term/terminfo.c:786 -msgid "Set terminfo type of TERM to TYPE.\n" -msgstr "" - -#. TRANSLATORS: this is the BLOCK-argument, not -#. environment block. -#: grub-core/tests/test_blockarg.c:49 -msgid "Print and execute block argument." -msgstr "" - -#. TRANSLATORS: We're speaking about bitmap images like -#. JPEG or PNG. -#: grub-core/video/bitmap.c:209 -#, c-format -msgid "bitmap file `%s' is of unsupported format" -msgstr "" - -#: grub-core/video/i386/pc/vbe.c:1191 -#, c-format -msgid " VBE info: version: %d.%d OEM software rev: %d.%d\n" -msgstr "" - -#: grub-core/video/i386/pc/vbe.c:1198 -#, c-format -msgid " total memory: %d KiB\n" -msgstr " bendra atmintis: %d KiB\n" - -#: grub-core/video/video.c:596 grub-core/video/video.c:762 -msgid "no suitable video mode found" -msgstr "nepavyko rasti tinkamos vaizdo veiksenos" - -#: include/grub/crypto.h:403 -msgid "access denied" -msgstr "prieiga nesuteikta" - -#: include/grub/util/install.h:30 include/grub/util/install.h:35 -msgid "MODULES" -msgstr "MODULIAI" - -#: include/grub/util/install.h:31 -msgid "pre-load specified modules MODULES" -msgstr "įkeliami nurodyti MODULIAI" - -#: include/grub/util/install.h:33 -msgid "embed a specific DTB" -msgstr "" - -#: include/grub/util/install.h:36 -msgid "install only MODULES and their dependencies [default=all]" -msgstr "įdiegti tik MODULIUS ir jų priklausomybes [numatyta=all(=visi)]" - -#: include/grub/util/install.h:37 -msgid "THEMES" -msgstr "APIPAVIDALINIMAI" - -#: include/grub/util/install.h:38 -#, c-format -msgid "install THEMES [default=%s]" -msgstr "įdiegti APIPAVIDALINIMUS [numatyta=%s]" - -#: include/grub/util/install.h:39 -msgid "FONTS" -msgstr "Å RIFTAI" - -#: include/grub/util/install.h:40 -#, c-format -msgid "install FONTS [default=%s]" -msgstr "įdiegti Å RIFTUS [numatyta=%s]" - -#: include/grub/util/install.h:41 -msgid "LOCALES" -msgstr "LOKALÄ–S" - -#: include/grub/util/install.h:42 -msgid "install only LOCALES [default=all]" -msgstr "įdiegti tik LOKALES [numatyta=all(=visos)]" - -#: include/grub/util/install.h:45 -msgid "compress GRUB files [optional]" -msgstr "suglaudinti GRUB failus [pasirinktinai]" - -#: include/grub/util/install.h:48 util/grub-mkimage.c:83 -msgid "choose the compression to use for core image" -msgstr "pasirinkite pagrindinio atvaizdžio glaudinimo bÅ«dÄ…" - -#. TRANSLATORS: platform here isn't identifier. It can be translated. -#: include/grub/util/install.h:51 include/grub/util/install.h:54 -#: util/grub-mkimage.c:66 -#, c-format -msgid "use images and modules under DIR [default=%s/]" -msgstr "KATALOGE naudoti atvaizdžius ir modulius [numatyta=%s/]" - -#: include/grub/util/install.h:57 -#, c-format -msgid "use translations under DIR [default=%s]" -msgstr "KATALOGE naudoti vertimus [numatyta=%s]" - -#: include/grub/util/install.h:60 -#, c-format -msgid "use themes under DIR [default=%s]" -msgstr "KATALOGE naudoti apipavidalinimus [numatyta=%s]" - -#: include/grub/util/install.h:65 util/grub-mkimage.c:78 -msgid "embed FILE as public key for signature checking" -msgstr "" - -#: util/editenv.c:59 util/grub-editenv.c:201 util/grub-install-common.c:535 -#: util/grub-mkimage.c:315 util/setup.c:791 -#, fuzzy, c-format -msgid "cannot sync `%s': %s" -msgstr "nepavyko atverti „%s“: %s" - -#: util/editenv.c:64 -#, c-format -msgid "cannot rename the file %s to %s" -msgstr "negalima %s pervadinti į %s" - -#: util/getroot.c:402 -#, c-format -msgid "disk does not exist, so falling back to partition device %s" -msgstr "disko nÄ—ra, tad pareinama prie skaidinio %s" - -#: util/grub-editenv.c:45 util/grub-fstest.c:506 -msgid "Commands:" -msgstr "Komandos:" - -#: util/grub-editenv.c:47 -msgid "Create a blank environment block file." -msgstr "" - -#: util/grub-editenv.c:49 -msgid "List the current variables." -msgstr "" - -#. TRANSLATORS: "set" is a keyword. It's a summary of "set" subcommand. -#: util/grub-editenv.c:51 -msgid "set [NAME=VALUE ...]" -msgstr "set [VARDAS=KINTAMASIS ...]" - -#: util/grub-editenv.c:52 -msgid "Set variables." -msgstr "Nustatyti kintamuosius." - -#. TRANSLATORS: "unset" is a keyword. It's a summary of "unset" subcommand. -#: util/grub-editenv.c:54 -msgid "unset [NAME ...]" -msgstr "" - -#: util/grub-editenv.c:55 -msgid "Delete variables." -msgstr "Å alinti kintamuosius." - -#: util/grub-editenv.c:57 -msgid "Options:" -msgstr "Parinktys:" - -#: util/grub-editenv.c:84 -msgid "You need to specify at least one command.\n" -msgstr "" - -#: util/grub-editenv.c:113 -msgid "FILENAME COMMAND" -msgstr "" - -#: util/grub-editenv.c:114 -msgid "Tool to edit environment block." -msgstr "" - -#: util/grub-editenv.c:116 -#, c-format -msgid "" -"If FILENAME is `-', the default value %s is used.\n" -"\n" -"There is no `delete' command; if you want to delete the whole environment\n" -"block, use `rm %s'." -msgstr "" - -#: util/grub-editenv.c:162 -msgid "invalid environment block" -msgstr "" - -#: util/grub-editenv.c:217 -#, c-format -msgid "invalid parameter %s" -msgstr "" - -#: util/grub-editenv.c:222 -msgid "environment block too small" -msgstr "" - -#: util/grub-fstest.c:107 -#, c-format -msgid "disk read fails at offset %lld, length %lld" -msgstr "" - -#: util/grub-fstest.c:138 -#, c-format -msgid "invalid skip value %lld" -msgstr "" - -#: util/grub-fstest.c:160 util/grub-fstest.c:246 -#, c-format -msgid "read error at offset %llu: %s" -msgstr "" - -#: util/grub-fstest.c:210 -#, c-format -msgid "cannot open OS file `%s': %s" -msgstr "" - -#: util/grub-fstest.c:225 util/misc.c:126 -#, c-format -msgid "cannot write to the stdout: %s" -msgstr "" - -#: util/grub-fstest.c:259 -#, c-format -msgid "compare fail at offset %llu" -msgstr "" - -#: util/grub-fstest.c:280 util/grub-fstest.c:314 -#, c-format -msgid "OS file %s open error: %s" -msgstr "OS failo %s atvÄ—rimo klaida: %s" - -#: util/grub-fstest.c:402 util/grub-mount.c:392 -#, c-format -msgid "`loopback' command fails: %s" -msgstr "„loopback“ komandos klaida: %s" - -#: util/grub-fstest.c:413 util/grub-mount.c:402 -#, c-format -msgid "`cryptomount' command fails: %s" -msgstr "„cryptomount“ komandos klaida: %s" - -#: util/grub-fstest.c:474 util/grub-fstest.c:478 -msgid "couldn't retrieve UUID" -msgstr "nepavyko gauti UUID" - -#: util/grub-fstest.c:507 -msgid "ls PATH" -msgstr "ls KELIAS" - -#: util/grub-fstest.c:507 -msgid "List files in PATH." -msgstr "Parodyti KELYJE esanÄius failus" - -#: util/grub-fstest.c:508 -msgid "cp FILE LOCAL" -msgstr "cp FAILAS VIETA" - -#: util/grub-fstest.c:508 -msgid "Copy FILE to local file LOCAL." -msgstr "FAILÄ„ nukopijuoti į VIETÄ„." - -#: util/grub-fstest.c:509 -msgid "cat FILE" -msgstr "cat FAILAS" - -#: util/grub-fstest.c:509 -msgid "Copy FILE to standard output." -msgstr "IÅ¡vesti FAILO turinį į standartinį iÅ¡vedimÄ…" - -#: util/grub-fstest.c:510 -msgid "cmp FILE LOCAL" -msgstr "cmp FAILAS VIETINIS_FAILAS" - -#: util/grub-fstest.c:510 -msgid "Compare FILE with local file LOCAL." -msgstr "FAILÄ„ palyginti su VIETINIU FAILU." - -#: util/grub-fstest.c:511 -msgid "hex FILE" -msgstr "hex FAILAS" - -#: util/grub-fstest.c:511 -msgid "Show contents of FILE in hex." -msgstr "" - -#: util/grub-fstest.c:512 -msgid "crc FILE" -msgstr "crc FAILAS" - -#: util/grub-fstest.c:512 -msgid "Get crc32 checksum of FILE." -msgstr "" - -#: util/grub-fstest.c:513 -msgid "blocklist FILE" -msgstr "" - -#: util/grub-fstest.c:513 -msgid "Display blocklist of FILE." -msgstr "" - -#: util/grub-fstest.c:514 -msgid "xnu_uuid DEVICE" -msgstr "" - -#: util/grub-fstest.c:514 -msgid "Compute XNU UUID of the device." -msgstr "" - -#. TRANSLATORS: bitmaps are images like e.g. in JPEG. -#: util/grub-fstest.c:517 util/grub-fstest.c:518 util/grub-fstest.c:519 -#: util/grub-mkfont.c:938 util/grub-mkfont.c:951 util/grub-mkfont.c:952 -#: util/grub-mkpasswd-pbkdf2.c:46 util/grub-mkpasswd-pbkdf2.c:47 -#: util/grub-mkpasswd-pbkdf2.c:48 -msgid "NUM" -msgstr "SKAIÄŒIUS" - -#: util/grub-fstest.c:517 -msgid "Skip N bytes from output file." -msgstr "" - -#: util/grub-fstest.c:518 -msgid "Handle N bytes in output file." -msgstr "" - -#: util/grub-fstest.c:519 -msgid "Specify the number of input files." -msgstr "" - -#: util/grub-fstest.c:520 util/grub-mount.c:453 -msgid "Set debug environment variable." -msgstr "" - -#: util/grub-fstest.c:521 util/grub-mount.c:454 -msgid "Mount crypto devices." -msgstr "" - -#. TRANSLATORS: "prompt" is a keyword. -#: util/grub-fstest.c:524 util/grub-mount.c:457 -msgid "FILE|prompt" -msgstr "" - -#: util/grub-fstest.c:524 util/grub-mount.c:457 -msgid "Load zfs crypto key." -msgstr "" - -#: util/grub-fstest.c:526 -msgid "Uncompress data." -msgstr "IÅ¡pakuoti duomenis." - -#: util/grub-fstest.c:605 -msgid "Invalid disk count.\n" -msgstr "Netinkamas diskų skaiÄius.\n" - -#. TRANSLATORS: disk count is optional but if it's there it must -#. be before disk list. So please don't imply disk count as mandatory. -#. -#: util/grub-fstest.c:613 -msgid "Disk count must precede disks list.\n" -msgstr "Diskų skaiÄius turi eiti prieÅ¡ diskų sÄ…rašą.\n" - -#: util/grub-fstest.c:633 -msgid "No command is specified.\n" -msgstr "Nenurodyta komanda.\n" - -#: util/grub-fstest.c:638 -msgid "Not enough parameters to command.\n" -msgstr "Komandai nepakanka parametrų.\n" - -#: util/grub-fstest.c:711 -#, c-format -msgid "Invalid command %s.\n" -msgstr "Netinkama komanda %s.\n" - -#: util/grub-fstest.c:724 -msgid "IMAGE_PATH COMMANDS" -msgstr "ATVAIZDŽIO_KELIAS KOMANDOS" - -#: util/grub-fstest.c:725 util/grub-mount.c:553 -msgid "Debug tool for filesystem driver." -msgstr "Failų sistemos tvarkyklÄ—s derinimo įrankis." - -#: util/grub-glue-efi.c:53 -msgid "set input filename for 32-bit part." -msgstr "nurodyti įvedimo failÄ… 32 bitų daliai." - -#: util/grub-glue-efi.c:55 -msgid "set input filename for 64-bit part." -msgstr "nurodyti įvedimo failÄ… 64 bitų daliai." - -#: util/grub-glue-efi.c:57 util/grub-mklayout.c:55 util/grub-render-label.c:71 -msgid "set output filename. Default is STDOUT" -msgstr "" -"nurodyti iÅ¡vedimo failÄ…. numatytasis yra STDOUT (standartinis iÅ¡vedimas)" - -#: util/grub-glue-efi.c:94 util/grub-mklayout.c:476 -#: util/grub-mkpasswd-pbkdf2.c:86 util/grub-render-label.c:131 -msgid "[OPTIONS]" -msgstr "[PARINKTYS]" - -#: util/grub-glue-efi.c:95 -msgid "Glue 32-bit and 64-bit binary into Apple universal one." -msgstr "" - -#: util/grub-glue-efi.c:116 -msgid "Missing input file\n" -msgstr "TrÅ«ksta įvedimo failo\n" - -#: util/grub-install-common.c:127 util/grub-install-common.c:151 -#, c-format -msgid "cannot copy `%s' to `%s': %s" -msgstr "nepavyko „%s“ nukopijuoti į „%s“: %s" - -#: util/grub-install-common.c:147 -#, c-format -msgid "can't compress `%s' to `%s'" -msgstr "nepavyko „%s“ suglaudinti į „%s“" - -#: util/grub-install-common.c:196 util/grub-install-common.c:552 -#: util/grub-install-common.c:579 util/grub-install-common.c:621 -#, c-format -msgid "cannot open directory `%s': %s" -msgstr "nepavyko atverti aplanko „%s“: %s" - -#: util/grub-install-common.c:212 -#, c-format -msgid "cannot delete `%s': %s" -msgstr "nepavyko paÅ¡alinti „%s“: %s" - -#: util/grub-install-common.c:324 util/grub-mkimage.c:209 -msgid "grub-mkimage is compiled without XZ support" -msgstr "grub-mkimage sukompiliuotas be XZ palaikymo" - -#: util/grub-install-common.c:332 util/grub-mkimage.c:217 -#, c-format -msgid "Unknown compression format %s" -msgstr "Nežinomas glaudinimo formatas %s" - -#: util/grub-install-common.c:400 -#, c-format -msgid "Unrecognized compression `%s'" -msgstr "Neatpažintas glaudinimo bÅ«das „%s“" - -#: util/grub-install-common.c:509 -#, c-format -msgid "unknown target format %s" -msgstr "nežinomas paskirties formatas %s" - -#: util/grub-install-common.c:700 -#, c-format -msgid "cannot find locale `%s'" -msgstr "nepavyko rasti lokalÄ—s „%s“" - -#: util/grub-install-common.c:939 -#, c-format -msgid "%s doesn't exist. Please specify --target or --directory" -msgstr "%s nerastas. Nurodykite --target arba --directory" - -#: util/grub-install-common.c:948 util/grub-install-common.c:951 -#, c-format -msgid "invalid modinfo file `%s'" -msgstr "" - -#: util/grub-install-common.c:966 -#, c-format -msgid "Unknown platform `%s-%s'" -msgstr "nežinoma platforma „%s-%s“" - -#: util/grub-install.c:238 -msgid "More than one install device?" -msgstr "" - -#: util/grub-install.c:251 -#, c-format -msgid "" -"install GRUB images under the directory DIR/%s instead of the %s directory" -msgstr "GRUB atvaizdžius diegti į kataloge KATALOGAS/%s, o ne kataloge %s" - -#: util/grub-install.c:256 util/grub-probe.c:734 -msgid "TARGET" -msgstr "" - -#. TRANSLATORS: "TARGET" as in "target platform". -#: util/grub-install.c:258 -#, c-format -msgid "install GRUB for TARGET platform [default=%s]; available targets: %s" -msgstr "" - -#. TRANSLATORS: "may break" doesn't just mean that option wouldn't have any -#. effect but that it will make the resulting install unbootable from HDD. -#. TRANSLATORS: The potential breakage isn't limited to floppies but it's -#. likely to make the install unbootable from HDD. -#: util/grub-install.c:267 util/grub-setup.c:94 -msgid "" -"make the drive also bootable as floppy (default for fdX devices). May break " -"on some BIOSes." -msgstr "" - -#: util/grub-install.c:270 -msgid "delete device map if it already exists" -msgstr "paÅ¡alinti įrenginių planÄ…, jei toks yra" - -#: util/grub-install.c:272 util/grub-setup.c:87 -msgid "install even if problems are detected" -msgstr "diegti ir tuomet, kai yra nesklandumų" - -#: util/grub-install.c:274 -msgid "use identifier file even if UUID is available" -msgstr "" - -#: util/grub-install.c:276 -msgid "" -"disk module to use (biosdisk or native). This option is only available on " -"BIOS target." -msgstr "" - -#: util/grub-install.c:279 -msgid "" -"don't update the `boot-device'/`Boot*' NVRAM variables. This option is only " -"available on EFI and IEEE1275 targets." -msgstr "" - -#: util/grub-install.c:282 util/grub-setup.c:89 -msgid "do not probe for filesystems in DEVICE" -msgstr "" - -#: util/grub-install.c:284 -msgid "do not install bootsector" -msgstr "" - -#: util/grub-install.c:286 util/grub-setup.c:96 -msgid "" -"Do not apply any reed-solomon codes when embedding core.img. This option is " -"only available on x86 BIOS targets." -msgstr "" - -#: util/grub-install.c:293 -msgid "" -"the installation device is removable. This option is only available on EFI." -msgstr "" - -#: util/grub-install.c:295 -msgid "ID" -msgstr "ID" - -#: util/grub-install.c:296 -msgid "the ID of bootloader. This option is only available on EFI and Macs." -msgstr "" - -#: util/grub-install.c:298 -msgid "use DIR as the EFI System Partition root." -msgstr "" - -#: util/grub-install.c:300 -msgid "use DIR for PPC MAC install." -msgstr "" - -#: util/grub-install.c:301 util/grub-mkrescue.c:106 -msgid "use FILE as font for label" -msgstr "etiketÄ—s Å¡riftui naudojamas FAILAS" - -#: util/grub-install.c:302 util/grub-mkrescue.c:107 -msgid "use COLOR for label" -msgstr "EtiketÄ—s SPALVA" - -#: util/grub-install.c:303 util/grub-mkrescue.c:108 -msgid "use COLOR for label background" -msgstr "etiketÄ—s fono SPALVA" - -#: util/grub-install.c:304 util/grub-mkrescue.c:110 -msgid "use STRING as product version" -msgstr "produkto versijai naudoti EILUTĘ" - -#: util/grub-install.c:361 -msgid "[OPTION] [INSTALL_DEVICE]" -msgstr "[PARINKTYS] [Ä®RENGINYS_DIEGIMUI]" - -#: util/grub-install.c:362 -msgid "Install GRUB on your drive." -msgstr "GRUB įdiegti į atminties įtaisÄ…." - -#: util/grub-install.c:363 -#, c-format -msgid "" -"INSTALL_DEVICE must be system device filename.\n" -"%s copies GRUB images into %s. On some platforms, it may also install GRUB " -"into the boot sector." -msgstr "" - -#: util/grub-install.c:672 -#, c-format -msgid "the drive %s is defined multiple times in the device map %s" -msgstr "" - -#: util/grub-install.c:878 -msgid "Unable to determine your platform. Use --target." -msgstr "" - -#: util/grub-install.c:891 -#, c-format -msgid "Installing for %s platform.\n" -msgstr "Diegiama %s platformai.\n" - -#: util/grub-install.c:939 -msgid "install device isn't specified" -msgstr "Nenurodytas diegimo įrenginys" - -#: util/grub-install.c:1057 -msgid "cannot find EFI directory" -msgstr "nepavyko rasti EFI katalogo" - -#: util/grub-install.c:1060 util/grub-install.c:1209 util/grub-install.c:1254 -#: util/grub-macbless.c:76 util/grub-probe.c:329 util/setup.c:316 -#, c-format -msgid "cannot find a device for %s (is /dev mounted?)" -msgstr "nepavyksta rasti %s įrenginio (ar /dev prijungtas?)" - -#: util/grub-install.c:1069 util/grub-install.c:1217 util/grub-install.c:1270 -#: util/grub-install.c:1365 util/grub-macbless.c:80 util/grub-probe.c:372 -#, c-format -msgid "cannot find a GRUB drive for %s. Check your device.map" -msgstr "nepavyksta rasta GRUB %s atminties įtaiso. Patikrinkite device.map" - -#: util/grub-install.c:1087 -#, c-format -msgid "%s doesn't look like an EFI partition" -msgstr "%s nepanaÅ¡us į EFI skaidinį" - -#: util/grub-install.c:1129 util/grub-install.c:1614 -msgid "You've found a bug" -msgstr "JÅ«s aptikote defektÄ…" - -#: util/grub-install.c:1231 -#, c-format -msgid "filesystem on %s is neither HFS nor HFS+" -msgstr "%s failų sistema nÄ—ra nei HFS, nei HFS+" - -#: util/grub-install.c:1299 -#, c-format -msgid "" -"attempt to install to encrypted disk without cryptodisk enabled. Set `%s' in " -"file `%s'" -msgstr "" - -#: util/grub-install.c:1410 util/grub-install.c:1772 util/grub-install.c:1872 -#, c-format -msgid "Can't create file: %s" -msgstr "Nepavyksta sukurti failo: %s" - -#: util/grub-install.c:1491 -msgid "no hints available for your platform. Expect reduced performance" -msgstr "" - -#. TRANSLATORS: This is a prefix in the log to indicate that usually -#. a command would be executed but due to an option was skipped. -#: util/grub-install.c:1702 -msgid "NOT RUNNING: " -msgstr "NEVEIKIA: " - -#: util/grub-install.c:1806 -msgid "the chosen partition is not a PReP partition" -msgstr "Pasirinktas skaidinys nÄ—ra PReP skaidinys" - -#: util/grub-install.c:1811 -msgid "failed to copy Grub to the PReP partition" -msgstr "nepavyko Grub nukopijuoti į PReP skaidinį" - -#: util/grub-install.c:1816 -#, c-format -msgid "" -"the PReP partition is not empty. If you are sure you want to use it, run dd " -"to clear it: `%s'" -msgstr "" -"PReP skaidinys nÄ—ra tuÅ¡Äias. Jei norite jį naudoti, naudokite dd komandÄ… jam " -"iÅ¡valyti: „%s“" - -#: util/grub-install.c:1888 util/grub-install.c:1932 -#, c-format -msgid "efibootmgr failed to register the boot entry: %s" -msgstr "" - -#: util/grub-install.c:1916 -msgid "EFI bootloader id isn't specified." -msgstr "nenurodytas EFI paleidyklÄ—s ID." - -#: util/grub-install.c:1950 -msgid "WARNING: no platform-specific install was performed" -msgstr "Ä®SPÄ–JIMAS: neatliktas joks su platforma susijÄ™s diegimas" - -#: util/grub-install.c:1957 -msgid "Installation finished. No error reported." -msgstr "Diegimas užbaigtas. Nesklandumų nepasitaikÄ—." - -#: util/grub-macbless.c:101 -msgid "bless for x86-based macs" -msgstr "" - -#: util/grub-macbless.c:103 -msgid "bless for ppc-based macs" -msgstr "" - -#: util/grub-macbless.c:136 util/grub-probe.c:823 -msgid "No path or device is specified.\n" -msgstr "Nenurodytas kelias arba įrenginys.\n" - -#: util/grub-macbless.c:157 -msgid "--ppc PATH|--x86 FILE" -msgstr "--ppc KELIAS|--x86 FAILAS" - -#: util/grub-macbless.c:158 -msgid "Mac-style bless on HFS or HFS+" -msgstr "" - -#: util/grub-menulst2cfg.c:44 -#, c-format -msgid "Usage: %s [INFILE [OUTFILE]]\n" -msgstr "Naudojimas: %s [Ä®VEDAMAS_FAILAS [IÅ VEDAMAS_FAILAS]]\n" - -#: util/grub-mkfont.c:157 -#, c-format -msgid "Freetype Error %d loading glyph 0x%x for U+0x%x%s" -msgstr "" - -#. TRANSLATORS: These qualifiers are used for cursive typography, -#. mainly Arabic. Note that the terms refer to the visual position -#. and not logical order and if used in left-to-right script then -#. leftmost is initial but with right-to-left script like Arabic -#. rightmost is the initial. -#: util/grub-mkfont.c:165 -msgid " (medial)" -msgstr " (viduryje)" - -#: util/grub-mkfont.c:166 -msgid " (leftmost)" -msgstr " (kairÄ—je)" - -#: util/grub-mkfont.c:167 -msgid " (rightmost)" -msgstr " (deÅ¡inÄ—je)" - -#: util/grub-mkfont.c:481 -#, c-format -msgid "Out of range substitution (%d, %d)\n" -msgstr "Keitinys už ribų (%d, %d)\n" - -#. TRANSLATORS: "lookup" is taken directly from font specifications -#. which are formulated as "Under condition X replace LOOKUP with -#. SUBSTITUITION". " -#: util/grub-mkfont.c:506 -#, c-format -msgid "Out of range lookup: %d\n" -msgstr "" - -#: util/grub-mkfont.c:514 -#, c-format -msgid "Unsupported substitution type: %d\n" -msgstr "Nepalaikomas keitinio tipas: %d\n" - -#: util/grub-mkfont.c:550 -#, c-format -msgid "Unsupported substitution specification: %d\n" -msgstr "Nepalaikoma keitinio specifikacija: %d\n" - -#: util/grub-mkfont.c:582 -#, c-format -msgid "Unsupported coverage specification: %d\n" -msgstr "Nepalaikoma aprÄ—pties specifikacija: %d\n" - -#: util/grub-mkfont.c:622 -#, c-format -msgid "WARNING: unsupported font feature parameters: %x\n" -msgstr "Ä®SPÄ–JIMAS: nepalaikomi Å¡rifto savybių parametrai: %x\n" - -#: util/grub-mkfont.c:936 util/grub-mkrescue.c:98 util/grub-mkstandalone.c:48 -msgid "save output in FILE [required]" -msgstr "iÅ¡vedimÄ… raÅ¡yti į FAILÄ„ [bÅ«tina]" - -#. TRANSLATORS: some font files may have multiple faces (fonts). -#. This option is used to chose among them, the first face being '0'. -#. Rarely used. -#: util/grub-mkfont.c:942 -msgid "select face index" -msgstr "" - -#: util/grub-mkfont.c:943 -msgid "FROM-TO[,FROM-TO]" -msgstr "IÅ -Ä®[,IÅ -Ä®]" - -#. TRANSLATORS: It refers to the range of characters in font. -#: util/grub-mkfont.c:945 -msgid "set font range" -msgstr "" - -#. TRANSLATORS: "family name" for font is just a generic name without suffix -#. like "Bold". -#: util/grub-mkfont.c:949 -msgid "set font family name" -msgstr "nurodyti Å¡riftų Å¡eimos pavadinimÄ…" - -#: util/grub-mkfont.c:950 -msgid "SIZE" -msgstr "DYDIS" - -#: util/grub-mkfont.c:950 -msgid "set font size" -msgstr "nustatyti Å¡rifto dydį" - -#: util/grub-mkfont.c:951 -msgid "set font descent" -msgstr "" - -#: util/grub-mkfont.c:952 -msgid "set font ascent" -msgstr "" - -#: util/grub-mkfont.c:953 -msgid "convert to bold font" -msgstr "pusjuodis Å¡riftas" - -#: util/grub-mkfont.c:954 -msgid "force autohint" -msgstr "" - -#: util/grub-mkfont.c:955 -msgid "disable hinting" -msgstr "nenaudoti taÅ¡kinÄ—s korekcijos" - -#. TRANSLATORS: some fonts contain bitmap rendering for -#. some sizes. This option forces rerendering even if -#. pre-rendered bitmap is available. -#. -#: util/grub-mkfont.c:961 -msgid "ignore bitmap strikes when loading" -msgstr "" - -#. TRANSLATORS: It refers to the range of characters in font. -#: util/grub-mkfont.c:1059 util/grub-mkfont.c:1075 -msgid "invalid font range" -msgstr "" - -#: util/grub-mkfont.c:1151 -msgid "[OPTIONS] FONT_FILES" -msgstr "[PARINKTYS] Å RIFTŲ_FAILAI" - -#: util/grub-mkfont.c:1152 -msgid "Convert common font file formats into PF2" -msgstr "Ä®prastus Å¡riftų formatus konvertuoti į PF2" - -#: util/grub-mkfont.c:1182 util/grub-mkrescue.c:483 -#: util/grub-mkstandalone.c:306 -msgid "output file must be specified" -msgstr "reikia nurodyti iÅ¡vedimÄ…" - -#: util/grub-mkfont.c:1185 -msgid "FT_Init_FreeType fails" -msgstr "FT_Init_FreeType klaida" - -#: util/grub-mkfont.c:1199 -#, c-format -msgid "can't open file %s, index %d: error %d" -msgstr "nepavyksta atverti failo %s, indeksu %d: klaida %d" - -#: util/grub-mkfont.c:1229 -#, c-format -msgid "can't set %dx%d font size: Freetype error %d: %s" -msgstr "nepavyko nustatyti %dx%d Å¡rifto dydžio: Freetype klaida %d: %s" - -#: util/grub-mkimage.c:67 -msgid "set prefix directory" -msgstr "" - -#. TRANSLATORS: "memdisk" here isn't an identifier, it can be translated. -#. "embed" is a verb (command description). " -#: util/grub-mkimage.c:71 -msgid "" -"embed FILE as a memdisk image\n" -"Implies `-p (memdisk)/boot/grub' and overrides any prefix supplied " -"previously, but the prefix itself can be overridden by later options" -msgstr "" - -#: util/grub-mkimage.c:74 -msgid "embed FILE as a device tree (DTB)\n" -msgstr "" - -#: util/grub-mkimage.c:76 -msgid "embed FILE as an early config" -msgstr "" - -#. TRANSLATORS: NOTE is a name of segment. -#: util/grub-mkimage.c:80 -msgid "add NOTE segment for CHRP IEEE1275" -msgstr "" - -#: util/grub-mkimage.c:81 -msgid "output a generated image to FILE [default=stdout]" -msgstr "" -"sukurtÄ… atvaizdį iÅ¡vesti į FAILÄ„ [numatyta=stdout(=į standartinÄ™ iÅ¡vestį)]" - -#: util/grub-mkimage.c:82 -msgid "FORMAT" -msgstr "FORMATAS" - -#: util/grub-mkimage.c:100 util/grub-mkstandalone.c:62 -msgid "generate an image in FORMAT" -msgstr "sukurti tam tikro formato atvaizdį" - -#: util/grub-mkimage.c:101 util/grub-mkstandalone.c:63 -msgid "available formats:" -msgstr "galimi formatai:" - -#: util/grub-mkimage.c:152 util/grub-mkstandalone.c:96 -#, c-format -msgid "unknown target format %s\n" -msgstr "nežinomas paskirties formatas %s\n" - -#: util/grub-mkimage.c:242 -msgid "[OPTION]... [MODULES]" -msgstr "[PARINKTIS]... [MODULIAI]" - -#: util/grub-mkimage.c:243 -msgid "Make a bootable image of GRUB." -msgstr "Sukurti GRUB paleidimo atvaizdį." - -#: util/grub-mkimage.c:273 util/grub-mkstandalone.c:309 -msgid "Target format not specified (use the -O option)." -msgstr "" - -#: util/grub-mkimage.c:282 -msgid "Prefix not specified (use the -p option)." -msgstr "" - -#: util/grub-mkimage.c:318 util/setup.c:793 -#, fuzzy, c-format -msgid "cannot close `%s': %s" -msgstr "nepavyko atverti „%s“: %s" - -#: util/grub-mkimagexx.c:2191 -#, c-format -msgid "" -"`%s' is miscompiled: its start address is 0x%llx instead of 0x%llx: ld.gold " -"bug?" -msgstr "" - -#: util/grub-mklayout.c:53 -msgid "set input filename. Default is STDIN" -msgstr "" -"nurodyti failÄ… įvedimui. Numatytuoju atveju yra STDIN (standartinÄ— įvestis)" - -#. TRANSLATORS: scan identifier is keyboard key symbolic name. -#: util/grub-mklayout.c:307 -#, c-format -msgid "Unknown keyboard scan identifier %s\n" -msgstr "" - -#. TRANSLATORS: scan code is keyboard key numeric identifier. -#: util/grub-mklayout.c:390 util/grub-mklayout.c:418 -#, c-format -msgid "Unknown keyboard scan code 0x%02x\n" -msgstr "" - -#. TRANSLATORS: this error is triggered when input doesn't contain any -#. key descriptions. -#: util/grub-mklayout.c:438 -msgid "ERROR: no valid keyboard layout found. Check the input.\n" -msgstr "KLAIDA: nerasta tinkamų klaviatÅ«ros iÅ¡dÄ—stymų. Patikrinkite įvedimÄ….\n" - -#. TRANSLATORS: "one" is a shortcut for "keyboard layout". -#: util/grub-mklayout.c:478 -msgid "Generate GRUB keyboard layout from Linux console one." -msgstr "GRUB klaviatÅ«ros iÅ¡dÄ—stymÄ… sukurti pagal Linux konsolÄ™." - -#: util/grub-mknetdir.c:47 -msgid "root directory of TFTP server" -msgstr "TFTP serverio Å¡akninis katalogas" - -#: util/grub-mknetdir.c:49 -msgid "relative subdirectory on network server" -msgstr "santykinis pakatalogis tinklo serveryje" - -#: util/grub-mknetdir.c:88 -msgid "" -"Prepares GRUB network boot images at net_directory/subdir assuming " -"net_directory being TFTP root." -msgstr "" - -#: util/grub-mknetdir.c:146 -#, c-format -msgid "unsupported platform %s" -msgstr "%s platforma nepalaikoma" - -#. TRANSLATORS: First %s is replaced by platform name. Second one by filename. -#: util/grub-mknetdir.c:165 -#, c-format -msgid "" -"Netboot directory for %s created. Configure your DHCP server to point to %s\n" -msgstr "" - -#: util/grub-mkpasswd-pbkdf2.c:46 -msgid "Number of PBKDF2 iterations" -msgstr "" - -#: util/grub-mkpasswd-pbkdf2.c:47 -msgid "Length of generated hash" -msgstr "sukurtos maiÅ¡os ilgis" - -#: util/grub-mkpasswd-pbkdf2.c:48 -msgid "Length of salt" -msgstr "" - -#: util/grub-mkpasswd-pbkdf2.c:87 -msgid "Generate PBKDF2 password hash." -msgstr "" - -#: util/grub-mkpasswd-pbkdf2.c:144 util/grub-mkpasswd-pbkdf2.c:151 -msgid "failure to read password" -msgstr "nepavyko nuskaityti slaptažodžio" - -#: util/grub-mkpasswd-pbkdf2.c:146 -msgid "Reenter password: " -msgstr "VÄ—l įveskite slaptažodį: " - -#: util/grub-mkpasswd-pbkdf2.c:160 -msgid "passwords don't match" -msgstr "slaptažodžiai nesutampa" - -#: util/grub-mkpasswd-pbkdf2.c:169 -msgid "couldn't retrieve random data for salt" -msgstr "" - -#: util/grub-mkpasswd-pbkdf2.c:184 -#, c-format -msgid "cryptographic error number %d" -msgstr "" - -#: util/grub-mkpasswd-pbkdf2.c:203 -#, c-format -msgid "PBKDF2 hash of your password is %s\n" -msgstr "" - -#: util/grub-mkrelpath.c:67 -msgid "No path is specified.\n" -msgstr "Nenurodytas kelias.\n" - -#: util/grub-mkrelpath.c:78 -msgid "PATH" -msgstr "KELIAS" - -#: util/grub-mkrelpath.c:79 -msgid "Transform a system filename into GRUB one." -msgstr "Sistemos failo pavadinimÄ… konvertuoti į GRUB." - -#: util/grub-mkrescue.c:100 -msgid "save ROM images in DIR [optional]" -msgstr "ROM atvaizdį įraÅ¡yti KATALOGE [pasirinktinai]" - -#. TRANSLATORS: xorriso is a program for creating ISOs and burning CDs. -#: util/grub-mkrescue.c:103 -msgid "use FILE as xorriso [optional]" -msgstr "FAILÄ„ naudoti kaip xorriso [pasirinktinai]" - -#: util/grub-mkrescue.c:109 -msgid "use STRING as product name" -msgstr "produkto pavadinimui naudoti eilutÄ™" - -#: util/grub-mkrescue.c:111 -msgid "" -"enable sparc boot. Disables HFS+, APM, ARCS and boot as disk image for i386-" -"pc" -msgstr "" - -#: util/grub-mkrescue.c:112 -msgid "" -"enable ARCS (big-endian mips machines, mostly SGI) boot. Disables HFS+, APM, " -"sparc64 and boot as disk image for i386-pc" -msgstr "" - -#. TRANSLATORS: it generates one single image which is bootable through any method. -#: util/grub-mkrescue.c:125 -msgid "Make GRUB CD-ROM, disk, pendrive and floppy bootable image." -msgstr "" -"Sukurti GRUB CD-ROM, disko, atmintuko ir diskelio paleidimo atvaizdžius." - -#: util/grub-mkrescue.c:130 -#, c-format -msgid "" -"Generates a bootable CD/USB/floppy image. Arguments other than options to " -"this program are passed to xorriso, and indicate source files, source " -"directories, or any of the mkisofs options listed by the output of `%s'." -msgstr "" -"Sukuria CD/USB/diskelio atvaizdį kompiuterio paleidimui. Argumentai, kurie " -"nÄ—ra Å¡ios programos parinktys, perduodami į xorriso; jie nurodo Å¡altinius " -"failus, Å¡altinius katalogus arba kitas mkisofs parinktis, kurias galite " -"pamatyti įvykdÄ™ „%s“." - -#: util/grub-mkrescue.c:134 -msgid "Option -- switches to native xorriso command mode." -msgstr "" - -#: util/grub-mkrescue.c:135 -msgid "Mail xorriso support requests to ." -msgstr "DÄ—l xorriso palaikymo raÅ¡ykite ." - -#: util/grub-mkrescue.c:221 util/grub-mkstandalone.c:114 -msgid "[OPTION] SOURCE..." -msgstr "[PARINKTIS] Å ALTINIS" - -#: util/grub-mkrescue.c:257 util/grub-mkrescue.c:300 util/grub-mkrescue.c:588 -#, c-format -msgid "enabling %s support ..." -msgstr "įgalinamas %s palaikymas..." - -#: util/grub-mkrescue.c:486 -#, fuzzy -msgid "xorriso not found" -msgstr "%s: nerastas" - -#: util/grub-mkrescue.c:623 -msgid "" -"Your xorriso doesn't support `--grub2-boot-info'. Some features are " -"disabled. Please use xorriso 1.2.9 or later." -msgstr "" -"JÅ«sų xorriso nepalaiko „--grub2-boot-info“. Kai kurios savybÄ—s yra " -"uždraustos. Naudokite xorriso 1.2.9 arba vÄ—lesnÄ™ versijÄ…." - -#: util/grub-mkrescue.c:650 -msgid "" -"Your xorriso doesn't support `--grub2-boot-info'. Your core image is too " -"big. Boot as disk is disabled. Please use xorriso 1.2.9 or later." -msgstr "" -"JÅ«sų xorriso nepalaiko „--grub2-boot-info“. JÅ«sų pagrindinis atvaizdis yra " -"per didelis. Paleisti kaip disko negalÄ—site. Naudokite xorriso 1.2.9 arba " -"vÄ—lesnÄ™ versijÄ…." - -#: util/grub-mkstandalone.c:115 -msgid "" -"Generate a standalone image (containing all modules) in the selected format" -msgstr "" -"Pasirinktu formatu sukurti autonominį atvaizdį (turintį visus modulius)" - -#: util/grub-mkstandalone.c:115 -msgid "Graft point syntax (E.g. /boot/grub/grub.cfg=./grub.cfg) is accepted" -msgstr "" - -#: util/grub-mount.c:552 -msgid "IMAGE1 [IMAGE2 ...] MOUNTPOINT" -msgstr "ATVAIZDIS1 [ATVAIZDIS2 ...] PRIJUNGIMO_VIETA" - -#: util/grub-mount.c:575 -msgid "need an image and mountpoint" -msgstr "reikia atvaizdžio ir prijungimo vietos" - -#: util/grub-probe.c:731 -msgid "given argument is a system device, not a path" -msgstr "pateiktas argumentas yra sistemos įrenginys, o ne kelias" - -#: util/grub-probe.c:736 -msgid "separate items in output using ASCII NUL characters" -msgstr "" - -#: util/grub-probe.c:754 -#, c-format -msgid "[default=%s]" -msgstr "[numatyta=%s]" - -#: util/grub-probe.c:756 -msgid "print TARGET" -msgstr "" - -#: util/grub-probe.c:757 -msgid "available targets:" -msgstr "" - -#: util/grub-probe.c:839 -msgid "[OPTION]... [PATH|DEVICE]" -msgstr "[PARINKTIS]... [KELIAS|Ä®RENGINYS]" - -#: util/grub-probe.c:840 -msgid "" -"Probe device information for a given path (or device, if the -d option is " -"given)." -msgstr "" - -#: util/grub-render-label.c:60 -msgid "read text from FILE." -msgstr "tekstÄ… skaityti iÅ¡ FAILO." - -#: util/grub-render-label.c:62 -msgid "use COLOR for text" -msgstr "SPALVÄ„ naudoti tekstÄ…" - -#: util/grub-render-label.c:64 -msgid "use COLOR for background" -msgstr "SPALVÄ„ naudoti fonui" - -#. TRANSLATORS: The result is always stored to file and -#. never shown directly, so don't use "show" as synonym for render. Use "create" if -#. "render" doesn't translate directly. -#: util/grub-render-label.c:69 -msgid "set the label to render" -msgstr "nurodyti atvaizduojamÄ… etiketÄ™" - -#: util/grub-render-label.c:73 -msgid "use FILE as font (PF2)." -msgstr "FAILÄ„ naudoti kaip Å¡riftÄ… (PF2)." - -#. TRANSLATORS: This file takes a text and creates a graphical representation of it, -#. putting the result into .disk_label file. The result is always stored to file and -#. never shown directly, so don't use "show" as synonym for render. Use "create" if -#. "render" doesn't translate directly. -#: util/grub-render-label.c:136 -msgid "Render Apple .disk_label." -msgstr "Atvaizduoti Apple .disk_label." - -#: util/grub-render-label.c:158 util/grub-syslinux2cfg.c:169 -msgid "Missing arguments\n" -msgstr "TrÅ«ksta argumentų\n" - -#: util/grub-script-check.c:87 -msgid "[PATH]" -msgstr "[KELIAS]" - -#: util/grub-script-check.c:88 -msgid "Checks GRUB script configuration file for syntax errors." -msgstr "" -"Patikrinti, ar GRUB scenarijaus konfigÅ«racijos faile nÄ—ra sintaksÄ—s klaidų." - -#: util/grub-script-check.c:207 -#, c-format -msgid "Syntax error at line %u\n" -msgstr "SintaksÄ—s klaida %u eilutÄ—je\n" - -#: util/grub-script-check.c:212 -#, c-format -msgid "Script `%s' contains no commands and will do nothing\n" -msgstr "„%s“ scenarijuje nÄ—ra komandų, tad jis nieko neatliks\n" - -#: util/grub-setup.c:79 -#, c-format -msgid "use FILE as the boot image [default=%s]" -msgstr "FAILÄ„ naudoti kaip atvaizdį paleidimui [numatytasis=%s]" - -#: util/grub-setup.c:81 -#, c-format -msgid "use FILE as the core image [default=%s]" -msgstr "FAILÄ„ naudoti kaip pagrindinį atvaizdį [numatytasis=%s]" - -#: util/grub-setup.c:210 -msgid "No device is specified.\n" -msgstr "Ä®renginys nenurodytas.\n" - -#: util/grub-setup.c:224 -msgid "" -"Set up images to boot from DEVICE.\n" -"\n" -"You should not normally run this program directly. Use grub-install instead." -msgstr "" -"Parengti atvaizdžius paleidimui iÅ¡ Ä®RENGINIO.\n" -"\n" -"NereikÄ—tų tiesiogiai naudoti Å¡ios programos. VerÄiau naudokite grub-install." - -#: util/grub-setup.c:228 -msgid "DEVICE must be an OS device (e.g. /dev/sda)." -msgstr "Ä®RENGINYS turi bÅ«ti OS įrenginys (pvz. /dev/sda)." - -#: util/grub-setup.c:297 -#, c-format -msgid "Invalid device `%s'.\n" -msgstr "Netinkamas įrenginys „%s“.\n" - -#: util/grub-syslinux2cfg.c:64 -msgid "root directory as it will be seen on runtime [default=/]." -msgstr "Å¡akninis katalogas, kuris bus matomas vykdant [numatytasis=/]." - -#: util/grub-syslinux2cfg.c:69 -msgid "" -"current directory of syslinux as it will be seen on runtime [default is " -"parent directory of input file]." -msgstr "" -"veikiamasis syslinux katalogas, kuris bus matomas vykdant [numatytasis yra " -"vienu lygiu aukÅ¡Äiau nei įvedimo failas]." - -#: util/grub-syslinux2cfg.c:74 -msgid "write output to FILE [default=stdout]." -msgstr "iÅ¡vesti į FAILÄ„ [numatyta=stdout]." - -#: util/grub-syslinux2cfg.c:148 -msgid "Transform syslinux config into GRUB one." -msgstr "syslinux konfigÅ«racijÄ… transformuoti į GRUB." - -#: util/mkimage.c:688 util/mkimage.c:717 util/mkimage.c:734 -msgid "cannot compress the kernel image" -msgstr "nepavyksta suglaudinti branduolio atvaizdžio" - -#: util/mkimage.c:766 util/mkimage.c:1077 -#, c-format -msgid "unknown compression %d" -msgstr "nežinomas glaudinimas %d" - -#: util/mkimage.c:1088 -msgid "Decompressor is too big" -msgstr "IÅ¡pakavimas yra per didelis" - -#: util/mkimage.c:1133 -#, c-format -msgid "core image is too big (0x%x > 0x%x)" -msgstr "pagrindinis atvaizdis yra per didelis (0x%x > 0x%x)" - -#: util/mkimage.c:1140 -#, c-format -msgid "kernel image is too big (0x%x > 0x%x)" -msgstr "branduolio atvaizdis yra per didelis (0x%x > 0x%x)" - -#: util/mkimage.c:1220 util/mkimage.c:1501 -#, c-format -msgid "diskboot.img size must be %u bytes" -msgstr "diskboot.img dydis turi bÅ«ti %u baitų" - -#: util/mkimage.c:1571 -msgid "" -"fwstart.img doesn't match the known good version. proceed at your own risk" -msgstr "" -"fwstart.img neatitinka žinomos patikimos versijos. Prisiimkite galimÄ… rizikÄ…" - -#: util/mkimage.c:1575 util/mkimage.c:1601 -msgid "firmware image is too big" -msgstr "per didelis programinÄ—s aparatinÄ—s įrangos (angl. firmware) atvaizdis" - -#: util/resolve.c:93 -#, c-format -msgid "invalid line format: %s" -msgstr "" - -#: util/setup.c:167 -msgid "the first sector of the core file is not sector-aligned" -msgstr "" - -#: util/setup.c:177 -msgid "non-sector-aligned data is found in the core file" -msgstr "" - -#: util/setup.c:199 -msgid "the sectors of the core file are too fragmented" -msgstr "pagrindinio failo sektoriai yra pernelyg fragmentuoti" - -#: util/setup.c:280 -#, c-format -msgid "the size of `%s' is not %u" -msgstr "„%s“ dydis nÄ—ra %u" - -#: util/setup.c:290 -#, c-format -msgid "the size of `%s' is too small" -msgstr "„%s“ dydis yra per mažas" - -#: util/setup.c:428 -msgid "" -"Attempting to install GRUB to a disk with multiple partition labels or both " -"partition label and filesystem. This is not supported yet." -msgstr "" -"Bandote GRUB įdiegti į diskÄ… su keliomis skaidinių etiketÄ—mis arba tiek su " -"skaidinio etikete, tiek failų sistema. To dar nepalaikome." - -#: util/setup.c:441 -#, c-format -msgid "unable to identify a filesystem in %s; safety check can't be performed" -msgstr "" -"nepavyksta identifikuoti %s failų sistemos; negalima atlikti saugumo " -"patikrinimo" - -#. TRANSLATORS: Filesystem may reserve the space just GRUB isn't sure about it. -#: util/setup.c:445 -#, c-format -msgid "" -"%s appears to contain a %s filesystem which isn't known to reserve space for " -"DOS-style boot. Installing GRUB there could result in FILESYSTEM " -"DESTRUCTION if valuable data is overwritten by grub-setup (--skip-fs-probe " -"disables this check, use at your own risk)" -msgstr "" - -#. TRANSLATORS: Partition map may reserve the space just GRUB isn't sure about it. -#: util/setup.c:458 -#, c-format -msgid "" -"%s appears to contain a %s partition map which isn't known to reserve space " -"for DOS-style boot. Installing GRUB there could result in FILESYSTEM " -"DESTRUCTION if valuable data is overwritten by grub-setup (--skip-fs-probe " -"disables this check, use at your own risk)" -msgstr "" - -#: util/setup.c:465 -#, c-format -msgid "" -"%s appears to contain a %s partition map and LDM which isn't known to be a " -"safe combination. Installing GRUB there could result in FILESYSTEM " -"DESTRUCTION if valuable data is overwritten by grub-setup (--skip-fs-probe " -"disables this check, use at your own risk)" -msgstr "" - -#: util/setup.c:478 -msgid "" -"Attempting to install GRUB to a partitionless disk or to a partition. This " -"is a BAD idea." -msgstr "" -"Bandote įdiegti GRUB į diskÄ…, kuriame nÄ—ra skaidinių, arba į skaidinį. Tai " -"PRASTAS sumanymas." - -#: util/setup.c:483 -msgid "" -"Attempting to install GRUB to a disk with multiple partition labels. This " -"is not supported yet." -msgstr "" -"Bandote GRUB įdiegti į diskÄ… su keliomis skaidinių etiketÄ—mis. To dar " -"nepalaikome." - -#: util/setup.c:489 -#, c-format -msgid "Partition style `%s' doesn't support embedding" -msgstr "Skaidymo stilius „%s“ nepalaiko įtalpinimo" - -#: util/setup.c:496 -#, c-format -msgid "File system `%s' doesn't support embedding" -msgstr "Failų sistema „%s“ nepalaiko įtalpinimo" - -#: util/setup.c:537 -msgid "Your embedding area is unusually small. core.img won't fit in it." -msgstr "" -"Ä®talpinimui skirta sritis yra neįprastai maža. Failas core.img netilps į jį." - -#: util/setup.c:559 util/setup.c:725 util/setup.c:844 -msgid "no terminator in the core image" -msgstr "" - -#: util/setup.c:622 -msgid "core.img version mismatch" -msgstr "core.img versija neatitinka" - -#: util/setup.c:675 -msgid "" -"embedding is not possible, but this is required for RAID and LVM install" -msgstr "" - -#: util/setup.c:682 -#, c-format -msgid "can't determine filesystem on %s" -msgstr "nepavyksta aptikti %s failų sistemos" - -#: util/setup.c:685 -#, c-format -msgid "filesystem `%s' doesn't support blocklists" -msgstr "„%s“ failų sistema nepalaiko bloko sÄ…rašų" - -#. TRANSLATORS: cross-disk refers to /boot being on one disk -#. but MBR on another. -#: util/setup.c:694 -msgid "embedding is not possible, but this is required for cross-disk install" -msgstr "" - -#: util/setup.c:700 -msgid "" -"Embedding is not possible. GRUB can only be installed in this setup by " -"using blocklists. However, blocklists are UNRELIABLE and their use is " -"discouraged." -msgstr "" - -#. TRANSLATORS: Here GRUB refuses to continue with blocklist install. -#: util/setup.c:705 -msgid "will not proceed with blocklists" -msgstr "" - -#: util/setup.c:817 util/setup.c:837 -msgid "blocklists are invalid" -msgstr "netinkamas blokų sÄ…raÅ¡as" - -#: util/setup.c:847 -msgid "blocklists are incomplete" -msgstr "neužbaigtas blokų sÄ…raÅ¡as" - -#~ msgid "%s: option '--%s' doesn't allow an argument\n" -#~ msgstr "%s: parinkÄiai „--%s“ negalima nurodyti argumentų\n" - -#~ msgid "%s: unrecognized option '--%s'\n" -#~ msgstr "%s: neatpažinta parinktis „--%s“\n" - -#~ msgid "%s: option '-W %s' doesn't allow an argument\n" -#~ msgstr "%s: parinkÄiai „-W %s“ negalima nurodyti argumentų\n" - -#~ msgid "%s: option '-W %s' requires an argument\n" -#~ msgstr "%s: parinkÄiai „-W %s“ reikia argumento\n" - -#~ msgid "Make GRUB keyboard layout file." -#~ msgstr "Sukurti GRUB klaviatÅ«ros iÅ¡dÄ—stymo failÄ…." - -#~ msgid "print this message and exit" -#~ msgstr "parodyti šį praneÅ¡imÄ… ir iÅ¡eiti" - -#~ msgid "print the version information and exit" -#~ msgstr "parodyti versijÄ… ir iÅ¡eiti" - -#~ msgid "Report bugs to ." -#~ msgstr "Apie nesklandumus praneÅ¡kite ." - -#~ msgid "%s: option requires an argument -- `%s'\\n" -#~ msgstr "%s: parinkÄiai reikia argumento -- „%s“\\n" - -#~ msgid "Usage: %s [OPTION]\\n" -#~ msgstr "Naudojimas: %s [PARINKTIS]\\n" - -#~ msgid "Generate a grub config file" -#~ msgstr "Sukurti grub konfigÅ«racijos failÄ…" - -#~ msgid "output generated config to FILE [default=stdout]" -#~ msgstr "" -#~ "sukurta konfigÅ«racija iÅ¡vedama į FAILÄ„ [numatyta=stdout(=į standartinį " -#~ "iÅ¡vedimÄ…)]" - -#~ msgid "Unrecognized option `%s'\\n" -#~ msgstr "Neatpažinta parinktis „%s“\\n" - -#~ msgid "%s: You must run this as root\\n" -#~ msgstr "%s: privalote paleisti root teisÄ—mis\\n" - -#~ msgid "%s: Not found.\\n" -#~ msgstr "%s: nerastas.\\n" - -#~ msgid "Generating grub configuration file ..." -#~ msgstr "Kuriamas grub konfigÅ«racijos failas..." - -#~ msgid "" -#~ "Syntax errors are detected in generated GRUB config file.\n" -#~ "Ensure that there are no errors in /etc/default/grub\n" -#~ "and /etc/grub.d/* files or please file a bug report with\n" -#~ "%s file attached." -#~ msgstr "" -#~ "Sukurtame GRUB konfigÅ«racijos faile aptikta klaidų.\n" -#~ "Ä®sitikinkite, ar nÄ—ra klaidų /etc/default/grub\n" -#~ "ir /etc/grub.d/* failuose arba praneÅ¡kite apie klaidÄ…\n" -#~ "prisegdami %s failÄ…." - -#~ msgid "done" -#~ msgstr "atlikta" - -#~ msgid "Warning:" -#~ msgstr "Ä®spÄ—jimas:" - -#~ msgid "Usage: %s [OPTION] MENU_ENTRY\\n" -#~ msgstr "Naudojimas: %s [PARINKTIS] MENIU_Ä®RAÅ AS\\n" - -#~ msgid "Set the default boot menu entry for GRUB, for the next boot only." -#~ msgstr "" -#~ "Nurodyti numatytÄ…jį numatytÄ…jį paleidimo GRUB meniu įrašą, galios tik " -#~ "vienam paleidimui." - -#~ msgid "" -#~ "expect GRUB images under the directory DIR/%s instead of the %s directory" -#~ msgstr "GRUB atvaizdžių tikÄ—tis kataloge KATALOGAS/%s, o ne kataloge %s" - -#~ msgid "More than one menu entry?" -#~ msgstr "Daugiau nei vienas meniu įraÅ¡as?" - -#~ msgid "Menu entry not specified." -#~ msgstr "Meniu įraÅ¡as nenurodytas." - -#~ msgid "Set the default boot menu entry for GRUB." -#~ msgstr "Nurodyti numatytÄ…jį numatytÄ…jį paleidimo GRUB meniu įrašą." - -#~ msgid "This requires setting GRUB_DEFAULT=saved in %s/default/grub.\\n" -#~ msgstr "Tam reikia įraÅ¡yti GRUB_DEFAULT=saved faile %s/default/grub.\\n" - -#~ msgid "MENU_ENTRY is a number, a menu item title or a menu item identifier." -#~ msgstr "" -#~ "MENU_ENTRY yra skaiÄius, menu įraÅ¡o antraÅ¡tÄ— arba meniu įraÅ¡o " -#~ "identifikatorius." - -#~ msgid "Found theme: %s\\n" -#~ msgstr "Aptiktas apipavidalinimas: %s\\n" - -#~ msgid "Found background: %s\\n" -#~ msgstr "Aptiktas fonas: %s\\n" - -#~ msgid "Unsupported image format" -#~ msgstr "Nepalaikomas paveikslÄ—lio formatas" - -#~ msgid "Found GNU Mach: %s" -#~ msgstr "Aptiktas GNU Mach: %s" - -#~ msgid "Found Hurd module: %s" -#~ msgstr "Aptikti Hurd moduliai: %s" - -#~ msgid "Some Hurd stuff found, but not enough to boot." -#~ msgstr "Aptikta Hurd elementų, taÄiau nepakankamai sistemai paleisti." - -#~ msgid "%s, with Hurd %s (recovery mode)" -#~ msgstr "%s, su Hurd %s (atkÅ«rimo veiksena)" - -#~ msgid "%s, with Hurd %s" -#~ msgstr "%s, su Hurd %s" - -#~ msgid "" -#~ "Please don't use old title `%s' for GRUB_DEFAULT, use `%s' (for versions " -#~ "before 2.00) or `%s' (for 2.00 or later)" -#~ msgstr "" -#~ "Nenaudokite senos GRUB_DEFAULT antraÅ¡tÄ—s „%s“, naudokite „%s“ (iki 2.00 " -#~ "versijos) arba „%s“ (2.00 ir vÄ—lesnÄ—ms)" - -#~ msgid "Loading GNU Mach ..." -#~ msgstr "Ä®keliamas GNU Mach ..." - -#~ msgid "Loading the Hurd ..." -#~ msgstr "Ä®keliamas Hurd ..." - -#~ msgid "Advanced options for %s" -#~ msgstr "SudÄ—tingesnÄ—s %s parinktys" - -#~ msgid "Loading kernel of Illumos ..." -#~ msgstr "Ä®keliamas Illumos branduolys ..." - -#~ msgid "%s, with kFreeBSD %s (recovery mode)" -#~ msgstr "%s, su kFreeBSD %s (atkÅ«rimo veiksena)" - -#~ msgid "%s, with kFreeBSD %s" -#~ msgstr "%s, su kFreeBSD %s" - -#~ msgid "Loading kernel of FreeBSD %s ..." -#~ msgstr "Ä®keliamas FreeBSD %s branduolys..." - -#~ msgid "Found kernel of FreeBSD: %s\\n" -#~ msgstr "Aptiktas FreeBSD branduolys: %s\\n" - -#~ msgid "Found kernel module directory: %s\\n" -#~ msgstr "Aptiktas branduolio modulių katalogas: %s\\n" - -#~ msgid "%s, with Linux %s (recovery mode)" -#~ msgstr "%s, su Linux %s (atkÅ«rimo veiksena)" - -#~ msgid "%s, with Linux %s" -#~ msgstr "%s, su Linux %s" - -#~ msgid "Loading Linux %s ..." -#~ msgstr "Ä®keliama Linux %s ..." - -#~ msgid "Loading initial ramdisk ..." -#~ msgstr "Ä®keliamas paruoÅ¡iamasis ram diskas ..." - -#~ msgid "Found linux image: %s\\n" -#~ msgstr "Aptiktas linux atvaizdis: %s\\n" - -#~ msgid "Found initrd image: %s\\n" -#~ msgstr "Aptiktas initrd atvaizdis: %s\\n" - -#~ msgid "%s, with kernel %s (via %s, recovery mode)" -#~ msgstr "%s, su %s branduoliu (per %s, atkÅ«rimo veiksena)" - -#~ msgid "%s, with kernel %s (via %s)" -#~ msgstr "%s, su %s branduoliu (per %s)" - -#~ msgid "Found NetBSD kernel: %s\\n" -#~ msgstr "Aptiktas NetBSD branduolys: %s\\n" - -#~ msgid "Windows Vista/7 (loader)" -#~ msgstr "Windows Vista/7 (paleidyklÄ—)" - -#~ msgid "Windows NT/2000/XP (loader)" -#~ msgstr "Windows NT/2000/XP (paleidyklÄ—)" - -#~ msgid "Found %s on %s (%s)\\n" -#~ msgstr "Aptikta %s ties %s (%s)\\n" - -#~ msgid "(32-bit)" -#~ msgstr "(32 bitų)" - -#~ msgid "(64-bit)" -#~ msgstr "(64 bitų)" - -#~ msgid "(on %s)" -#~ msgstr "(ties %s)" - -#~ msgid "%s, with Xen %s and Linux %s (recovery mode)" -#~ msgstr "%s, su Xen %s ir Linux %s (atkÅ«rimo veiksena)" - -#~ msgid "%s, with Xen %s and Linux %s" -#~ msgstr "%s, su Xen %s ir Linux %s" - -#~ msgid "%s, with Xen hypervisor" -#~ msgstr "%s, su Xen sistemos prižiÅ«rykle" - -#~ msgid "Loading Xen %s ..." -#~ msgstr "Ä®keliamas Xen %s ..." - -#~ msgid "Xen hypervisor, version %s" -#~ msgstr "Xen sistemos prižiÅ«ryklÄ—, %s versija" - -#~ msgid "Advanced options for %s (with Xen hypervisor)" -#~ msgstr "SudÄ—tingesnÄ—s %s parinktys (su Xen sistemos prižiÅ«rykle)" - -#~ msgid "Found %s on %s\\n" -#~ msgstr "%s rastas ties %s\\n" - -#~ msgid "%s is not yet supported by grub-mkconfig.\\n" -#~ msgstr "grub-mkconfig dar nepalaiko %s.\\n" - -#~ msgid "Unsupported substitution flag: 0x%x\n" -#~ msgstr "Nepalaikoma keitinio vÄ—liavÄ—lÄ—: 0x%x\n" - -#~ msgid "Address range not associated with RAM" -#~ msgstr "Adresų diapazonas, nesusietas su operatyviÄ…ja atmintimi" diff --git a/thirdparty/grub-2.04/po/nb.gmo b/thirdparty/grub-2.04/po/nb.gmo deleted file mode 100644 index d774985901d2068ac4ce374d309d9862e1084423..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 120117 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 P1tXEi{P$EiVvT21-!;diDjrJ-B=|swR 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 diff --git a/thirdparty/grub-2.04/po/nb.po b/thirdparty/grub-2.04/po/nb.po deleted file mode 100644 index 5fac92449..000000000 --- a/thirdparty/grub-2.04/po/nb.po +++ /dev/null @@ -1,6890 +0,0 @@ -# Norwegian bokmÃ¥l translation of GNU grub. -# Copyright (C) 2017 Free Software Foundation, Inc. -# This file is distributed under the same license as the grub package. -# Ã…ka Sikrom , 2017-2019. -# -msgid "" -msgstr "" -"Project-Id-Version: grub-2.04-pre1\n" -"Report-Msgid-Bugs-To: bug-grub@gnu.org\n" -"POT-Creation-Date: 2019-07-04 16:09+0200\n" -"PO-Revision-Date: 2019-04-14 10:58+0200\n" -"Last-Translator: Ã…ka Sikrom \n" -"Language-Team: Norwegian Bokmaal \n" -"Language: nb\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Bugs: Report translation errors to the Language-Team address.\n" -"Plural-Forms: nplurals=2; plural=(n != 1);\n" -"X-Generator: Poedit 2.0.6\n" - -#: grub-core/bus/usb/serial/ftdi.c:145 grub-core/bus/usb/serial/pl2303.c:158 -#: grub-core/term/ieee1275/escc.c:169 grub-core/term/ns8250.c:202 -msgid "unsupported serial port speed" -msgstr "denne seriellport-hastigheten støttes ikke" - -#: grub-core/bus/usb/serial/ftdi.c:151 grub-core/bus/usb/serial/pl2303.c:164 -#: grub-core/term/efi/serial.c:116 grub-core/term/ieee1275/escc.c:175 -#: grub-core/term/ns8250.c:208 grub-core/term/serial.c:227 -#: grub-core/term/serial.c:243 -msgid "unsupported serial port parity" -msgstr "denne seriellport-pariteten støttes ikke" - -#: grub-core/bus/usb/serial/ftdi.c:157 grub-core/bus/usb/serial/pl2303.c:170 -#: grub-core/term/efi/serial.c:122 grub-core/term/ieee1275/escc.c:181 -#: grub-core/term/ns8250.c:213 grub-core/term/serial.c:267 -msgid "unsupported serial port stop bits number" -msgstr "dette «stop bits»-tallet for seriellport støttes ikke" - -#: grub-core/bus/usb/serial/ftdi.c:161 grub-core/bus/usb/serial/pl2303.c:174 -#: grub-core/term/efi/serial.c:126 grub-core/term/ieee1275/escc.c:185 -#: grub-core/term/ns8250.c:217 -msgid "unsupported serial port word length" -msgstr "denne seriellport-ordlengden støttes ikke" - -#: grub-core/commands/acpi.c:42 -msgid "Don't load host tables specified by comma-separated list." -msgstr "Ikke last inn vertstabeller som er nevnt i kommaseparert liste." - -#: grub-core/commands/acpi.c:45 -msgid "Load only tables specified by comma-separated list." -msgstr "Bare last inn tabeller som er nevnt i kommaseparert liste." - -#: grub-core/commands/acpi.c:46 -msgid "Export version 1 tables to the OS." -msgstr "Eksporter versjon 1-tabeller til operativsystemet." - -#: grub-core/commands/acpi.c:47 -msgid "Export version 2 and version 3 tables to the OS." -msgstr "Eksporter versjon 2- og versjon 3-tabeller til operativsystemet." - -#: grub-core/commands/acpi.c:48 -msgid "Set OEMID of RSDP, XSDT and RSDT." -msgstr "Velg OEMID for RSDP, XSDT og RSDT." - -#: grub-core/commands/acpi.c:50 -msgid "Set OEMTABLE ID of RSDP, XSDT and RSDT." -msgstr "Velg OEMTABLE-ID for RSDP, XSDT og RSDT." - -#: grub-core/commands/acpi.c:52 -msgid "Set OEMTABLE revision of RSDP, XSDT and RSDT." -msgstr "Velg OEMTABLE-revisjon for RSDP, XSDT og RSDT." - -#: grub-core/commands/acpi.c:54 -msgid "Set creator field of RSDP, XSDT and RSDT." -msgstr "Velg «creator»-felt for RSDP, XSDT og RSDT." - -#: grub-core/commands/acpi.c:56 -msgid "Set creator revision of RSDP, XSDT and RSDT." -msgstr "Velg «creator»-revisjon for RSDP, XSDT og RSDT." - -#. TRANSLATORS: "hangs" here is a noun, not a verb. -#: grub-core/commands/acpi.c:58 -msgid "" -"Don't update EBDA. May fix failures or hangs on some BIOSes but makes it " -"ineffective with OS not receiving RSDP from GRUB." -msgstr "" -"Ikke oppdater EBDA. Dette kan løse hengeproblemer med enkelte BIOS-er, men " -"medfører at operativsystemet ikke mottar RSDP fra GRUB." - -#: grub-core/commands/acpi.c:650 grub-core/commands/acpi.c:667 -#: grub-core/commands/i386/pc/play.c:105 grub-core/commands/keylayouts.c:230 -#: grub-core/commands/keylayouts.c:245 grub-core/commands/keylayouts.c:263 -#: grub-core/commands/verifiers.c:156 grub-core/efiemu/loadcore.c:350 -#: grub-core/kern/elf.c:117 grub-core/kern/elfXX.c:29 -#: grub-core/kern/elfXX.c:156 grub-core/loader/arm/linux.c:319 -#: grub-core/loader/arm64/linux.c:330 grub-core/loader/arm64/xen_boot.c:356 -#: grub-core/loader/efi/chainloader.c:276 -#: grub-core/loader/efi/chainloader.c:297 -#: grub-core/loader/efi/chainloader.c:329 grub-core/loader/efi/fdt.c:138 -#: grub-core/loader/i386/bsd.c:1276 grub-core/loader/i386/bsd.c:2116 -#: grub-core/loader/i386/bsdXX.c:20 grub-core/loader/i386/bsdXX.c:36 -#: grub-core/loader/i386/bsdXX.c:63 grub-core/loader/i386/bsdXX.c:357 -#: grub-core/loader/i386/bsdXX.c:376 grub-core/loader/i386/bsdXX.c:519 -#: grub-core/loader/i386/bsdXX.c:535 grub-core/loader/i386/bsdXX.c:615 -#: grub-core/loader/i386/bsdXX.c:638 -#: grub-core/loader/i386/coreboot/chainloader.c:112 -#: grub-core/loader/i386/coreboot/chainloader.c:148 -#: grub-core/loader/i386/coreboot/chainloader.c:170 -#: grub-core/loader/i386/linux.c:667 grub-core/loader/i386/linux.c:788 -#: grub-core/loader/i386/linux.c:1005 grub-core/loader/i386/multiboot_mbi.c:171 -#: grub-core/loader/i386/pc/chainloader.c:202 -#: grub-core/loader/i386/pc/linux.c:149 grub-core/loader/i386/pc/linux.c:320 -#: grub-core/loader/i386/pc/linux.c:362 grub-core/loader/i386/pc/plan9.c:457 -#: grub-core/loader/i386/pc/plan9.c:550 grub-core/loader/i386/pc/plan9.c:566 -#: grub-core/loader/i386/xen.c:934 grub-core/loader/i386/xen_file.c:72 -#: grub-core/loader/i386/xen_fileXX.c:43 grub-core/loader/i386/xen_fileXX.c:186 -#: grub-core/loader/i386/xen_fileXX.c:339 grub-core/loader/ia64/efi/linux.c:423 -#: grub-core/loader/ia64/efi/linux.c:471 grub-core/loader/linux.c:286 -#: grub-core/loader/macho.c:84 grub-core/loader/macho.c:109 -#: grub-core/loader/machoXX.c:33 grub-core/loader/machoXX.c:46 -#: grub-core/loader/machoXX.c:76 grub-core/loader/machoXX.c:116 -#: grub-core/loader/machoXX.c:131 grub-core/loader/machoXX.c:147 -#: grub-core/loader/machoXX.c:196 grub-core/loader/machoXX.c:317 -#: grub-core/loader/multiboot.c:434 grub-core/loader/multiboot_elfxx.c:171 -#: grub-core/loader/multiboot_elfxx.c:234 -#: grub-core/loader/multiboot_elfxx.c:278 grub-core/loader/multiboot_mbi2.c:129 -#: grub-core/loader/xnu.c:737 grub-core/loader/xnu.c:795 -#: grub-core/loader/xnu.c:816 grub-core/loader/xnu.c:871 -#: grub-core/loader/xnu.c:914 grub-core/loader/xnu.c:952 -#: grub-core/loader/xnu_resume.c:68 grub-core/loader/xnu_resume.c:153 -#: grub-core/loader/xnu_resume.c:165 util/grub-mkimagexx.c:2288 -#, c-format -msgid "premature end of file %s" -msgstr "fila %s sluttet for tidlig" - -#: grub-core/commands/acpi.c:779 -msgid "" -"[-1|-2] [--exclude=TABLE1,TABLE2|--load-only=TABLE1,TABLE2] FILE1 [FILE2] " -"[...]" -msgstr "" -"[-1|-2] [--exclude=TABELL1,TABELL2|--load-only=TABELL1,TABELL2] FIL1 [FIL2] " -"[…]" - -#: grub-core/commands/acpi.c:782 -msgid "Load host ACPI tables and tables specified by arguments." -msgstr "Last inn ACPI-vertstabeller og evt. argumenterte tabeller." - -#: grub-core/commands/acpihalt.c:368 grub-core/kern/err.c:110 -#, c-format -msgid "error: %s.\n" -msgstr "feil: %s.\n" - -#: grub-core/commands/acpihalt.c:368 grub-core/kern/emu/misc.c:95 -#: grub-core/kern/emu/misc.c:105 grub-core/kern/emu/misc.c:134 -#: grub-core/kern/emu/mm.c:34 grub-core/kern/emu/mm.c:62 -#: grub-core/kern/mm.c:374 grub-core/lib/relocator.c:1282 -#: grub-core/lib/relocator.c:1439 grub-core/lib/relocator.c:1538 -#: grub-core/loader/arm/linux.c:259 grub-core/loader/arm64/linux.c:265 -#: grub-core/loader/arm64/linux.c:321 grub-core/loader/arm64/linux.c:340 -#: grub-core/loader/arm64/xen_boot.c:344 grub-core/loader/arm64/xen_boot.c:367 -#: grub-core/loader/efi/chainloader.c:289 grub-core/osdep/unix/dl.c:48 -#: grub-core/osdep/windows/dl.c:46 grub-core/script/lexer.c:156 -#: grub-core/script/lexer.c:182 -msgid "out of memory" -msgstr "minnet er oppbrukt" - -#: grub-core/commands/acpihalt.c:374 grub-core/disk/cryptodisk.c:587 -#: grub-core/disk/cryptodisk.c:632 grub-core/kern/emu/hostdisk.c:307 -#: grub-core/kern/emu/hostfs.c:149 grub-core/kern/emu/misc.c:200 -#: grub-core/osdep/linux/ofpath.c:195 grub-core/osdep/linux/ofpath.c:521 -#: grub-core/osdep/linux/ofpath.c:534 util/glue-efi.c:80 util/glue-efi.c:94 -#: util/grub-editenv.c:155 util/grub-fstest.c:577 -#: util/grub-install-common.c:943 util/grub-mkrescue.c:634 -#: util/grub-mkrescue.c:888 util/grub-mount.c:506 util/grub-render-label.c:176 -#: util/misc.c:95 util/setup.c:814 util/setup.c:833 -#, c-format -msgid "cannot read `%s': %s" -msgstr "klarte ikke Ã¥ lese «%s». %s" - -#. TRANSLATORS: It's computer shutdown using ACPI, not disabling ACPI. -#: grub-core/commands/acpihalt.c:452 -msgid "ACPI shutdown failed" -msgstr "ACPI-systemstans mislyktes" - -#: grub-core/commands/arc/lsdev.c:51 -msgid "List devices." -msgstr "Vis enheter." - -#: grub-core/commands/blocklist.c:122 grub-core/commands/cat.c:57 -#: grub-core/commands/configfile.c:35 grub-core/commands/efi/loadbios.c:168 -#: grub-core/commands/file.c:159 grub-core/commands/hexdump.c:47 -#: grub-core/commands/legacycfg.c:209 grub-core/commands/legacycfg.c:315 -#: grub-core/commands/minicmd.c:44 grub-core/commands/syslinuxcfg.c:146 -#: grub-core/commands/testload.c:58 grub-core/commands/testspeed.c:52 -#: grub-core/disk/loopback.c:93 grub-core/efiemu/main.c:293 -#: grub-core/font/font_cmd.c:32 grub-core/kern/emu/hostdisk.c:519 -#: grub-core/loader/arm/linux.c:364 grub-core/loader/arm/linux.c:409 -#: grub-core/loader/arm/linux.c:472 grub-core/loader/arm64/linux.c:243 -#: grub-core/loader/arm64/linux.c:297 grub-core/loader/arm64/xen_boot.c:398 -#: grub-core/loader/arm64/xen_boot.c:411 grub-core/loader/arm64/xen_boot.c:462 -#: grub-core/loader/efi/chainloader.c:216 grub-core/loader/i386/bsd.c:1462 -#: grub-core/loader/i386/bsd.c:1807 grub-core/loader/i386/bsd.c:2085 -#: grub-core/loader/i386/coreboot/chainloader.c:438 -#: grub-core/loader/i386/linux.c:656 grub-core/loader/i386/linux.c:1041 -#: grub-core/loader/i386/pc/chainloader.c:290 -#: grub-core/loader/i386/pc/freedos.c:105 grub-core/loader/i386/pc/linux.c:138 -#: grub-core/loader/i386/pc/linux.c:400 grub-core/loader/i386/pc/ntldr.c:85 -#: grub-core/loader/i386/pc/plan9.c:409 -#: grub-core/loader/i386/pc/pxechainloader.c:94 -#: grub-core/loader/i386/pc/truecrypt.c:96 grub-core/loader/i386/xen.c:641 -#: grub-core/loader/i386/xen.c:768 grub-core/loader/i386/xen.c:844 -#: grub-core/loader/i386/xen.c:854 grub-core/loader/i386/xnu.c:488 -#: grub-core/loader/ia64/efi/linux.c:459 grub-core/loader/ia64/efi/linux.c:539 -#: grub-core/loader/mips/linux.c:238 grub-core/loader/mips/linux.c:429 -#: grub-core/loader/multiboot.c:322 grub-core/loader/multiboot.c:374 -#: grub-core/loader/multiboot.c:384 -#: grub-core/loader/powerpc/ieee1275/linux.c:269 -#: grub-core/loader/powerpc/ieee1275/linux.c:341 -#: grub-core/loader/sparc64/ieee1275/linux.c:305 -#: grub-core/loader/sparc64/ieee1275/linux.c:381 grub-core/loader/xnu.c:351 -#: grub-core/loader/xnu.c:460 grub-core/loader/xnu.c:778 -#: grub-core/loader/xnu.c:892 grub-core/loader/xnu.c:1277 -#: grub-core/loader/xnu.c:1427 grub-core/loader/xnu.c:1453 -#: grub-core/video/readers/jpeg.c:812 grub-core/video/readers/png.c:1123 -msgid "filename expected" -msgstr "forventet et filnavn" - -#. TRANSLATORS: "embed" is a verb (command description). " -#: grub-core/commands/blocklist.c:154 grub-core/commands/cat.c:163 -#: grub-core/commands/configfile.c:65 grub-core/commands/configfile.c:68 -#: grub-core/commands/configfile.c:74 grub-core/commands/configfile.c:80 -#: grub-core/commands/configfile.c:86 grub-core/commands/hashsum.c:34 -#: grub-core/commands/legacycfg.c:834 grub-core/commands/legacycfg.c:841 -#: grub-core/commands/legacycfg.c:846 grub-core/commands/legacycfg.c:851 -#: grub-core/commands/macbless.c:222 grub-core/commands/minicmd.c:198 -#: grub-core/commands/syslinuxcfg.c:186 grub-core/commands/syslinuxcfg.c:194 -#: grub-core/commands/syslinuxcfg.c:200 grub-core/commands/syslinuxcfg.c:206 -#: grub-core/commands/testload.c:163 grub-core/efiemu/main.c:312 -#: grub-core/kern/emu/main.c:100 grub-core/kern/emu/main.c:103 -#: grub-core/loader/i386/bsd.c:2137 grub-core/loader/i386/bsd.c:2140 -#: grub-core/loader/i386/bsd.c:2143 -#: grub-core/loader/i386/coreboot/chainloader.c:505 -#: grub-core/loader/ia64/efi/linux.c:594 include/grub/util/install.h:32 -#: include/grub/util/install.h:64 util/grub-glue-efi.c:52 -#: util/grub-glue-efi.c:54 util/grub-glue-efi.c:56 util/grub-install.c:254 -#: util/grub-install.c:301 util/grub-mkfont.c:936 util/grub-mkimage.c:68 -#: util/grub-mkimage.c:74 util/grub-mkimage.c:76 util/grub-mkimage.c:78 -#: util/grub-mkimage.c:81 util/grub-mklayout.c:52 util/grub-mklayout.c:54 -#: util/grub-mkrescue.c:97 util/grub-mkrescue.c:101 util/grub-mkrescue.c:104 -#: util/grub-mkrescue.c:105 util/grub-mkrescue.c:106 -#: util/grub-mkstandalone.c:47 util/grub-mkstandalone.c:49 -#: util/grub-probe.c:732 util/grub-render-label.c:59 -#: util/grub-render-label.c:70 util/grub-render-label.c:72 util/grub-setup.c:78 -#: util/grub-setup.c:80 util/grub-setup.c:84 util/grub-syslinux2cfg.c:74 -#: util/grub-syslinux2cfg.c:147 -msgid "FILE" -msgstr "FIL" - -#: grub-core/commands/blocklist.c:154 -msgid "Print a block list." -msgstr "Skriv ut en blokkliste." - -#: grub-core/commands/boot.c:147 grub-core/commands/legacycfg.c:533 -#: grub-core/commands/legacycfg.c:574 grub-core/loader/arm64/linux.c:250 -#: grub-core/loader/i386/bsd.c:1799 grub-core/loader/i386/bsd.c:1900 -#: grub-core/loader/i386/bsd.c:2007 grub-core/loader/i386/bsd.c:2040 -#: grub-core/loader/i386/bsd.c:2089 grub-core/loader/i386/linux.c:1047 -#: grub-core/loader/i386/pc/linux.c:406 grub-core/loader/i386/xen.c:775 -#: grub-core/loader/i386/xen.c:859 grub-core/loader/ia64/efi/linux.c:545 -#: grub-core/loader/mips/linux.c:432 grub-core/loader/multiboot.c:388 -#: grub-core/loader/powerpc/ieee1275/linux.c:347 -#: grub-core/loader/sparc64/ieee1275/linux.c:387 grub-core/loader/xnu.c:572 -#: grub-core/loader/xnu.c:665 grub-core/loader/xnu.c:781 -#: grub-core/loader/xnu.c:895 grub-core/loader/xnu.c:1091 -#: grub-core/loader/xnu.c:1258 grub-core/loader/xnu.c:1289 -#: grub-core/loader/xnu.c:1430 -msgid "you need to load the kernel first" -msgstr "du mÃ¥ laste inn kjernen først" - -#: grub-core/commands/boot.c:189 -msgid "Boot an operating system." -msgstr "Start opp et operativsystem." - -#: grub-core/commands/boottime.c:36 -#: grub-core/commands/i386/coreboot/cb_timestamps.c:108 -msgid "No boot time statistics is available\n" -msgstr "Ingen statistikk for oppstartstid er tilgjengelig\n" - -#: grub-core/commands/boottime.c:59 -msgid "Show boot time statistics." -msgstr "Vis statistikk for oppstartstid." - -#: grub-core/commands/cacheinfo.c:40 -#, c-format -msgid "Disk cache statistics: hits = %lu (%lu.%02lu%%), misses = %lu\n" -msgstr "" -"Statistikk for disk-hurtiglager: treff = %lu (%lu.%02lu%%). bom = %lu\n" - -#: grub-core/commands/cacheinfo.c:45 -msgid "No disk cache statistics available\n" -msgstr "Ingen statistikk for disk-hurtiglager er tilgjengelig\n" - -#: grub-core/commands/cacheinfo.c:56 -msgid "Get disk cache info." -msgstr "Hent informasjon om disk-hurtiglager." - -#: grub-core/commands/cat.c:33 -msgid "Accept DOS-style CR/NL line endings." -msgstr "Godta CR-/NL-linjeavslutninger i DOS-stil." - -#: grub-core/commands/cat.c:163 grub-core/commands/minicmd.c:198 -msgid "Show the contents of a file." -msgstr "Vis innholdet i en fil." - -#: grub-core/commands/cmp.c:43 grub-core/commands/i386/pc/drivemap.c:239 -#: grub-core/commands/i386/wrmsr.c:60 grub-core/commands/iorw.c:85 -#: grub-core/commands/memrw.c:84 grub-core/commands/password.c:75 -#: grub-core/commands/password_pbkdf2.c:94 grub-core/commands/pgp.c:826 -#: grub-core/commands/regexp.c:113 grub-core/mmap/mmap.c:517 -#: grub-core/net/dns.c:639 -msgid "two arguments expected" -msgstr "forventet to argumenter" - -#: grub-core/commands/cmp.c:45 -#, c-format -msgid "Compare file `%s' with `%s':\n" -msgstr "Sammenlikning av fil «%s» og «%s»:\n" - -#: grub-core/commands/cmp.c:54 -#, c-format -msgid "Files differ in size: %llu [%s], %llu [%s]\n" -msgstr "Filene har ulik størrelse: %llu (%s), og %llu (%s)\n" - -#: grub-core/commands/cmp.c:81 -#, c-format -msgid "Files differ at the offset %llu: 0x%x [%s], 0x%x [%s]\n" -msgstr "Filene er ulike ved punktet %llu: 0x%x (%s), og 0x%x (%s)\n" - -#. TRANSLATORS: it's always exactly 2 files. -#: grub-core/commands/cmp.c:93 -msgid "The files are identical.\n" -msgstr "Filene er identiske.\n" - -#: grub-core/commands/cmp.c:113 -msgid "FILE1 FILE2" -msgstr "FIL1 FIL2" - -#: grub-core/commands/cmp.c:113 -msgid "Compare two files." -msgstr "Sammenlikn to filer." - -#: grub-core/commands/configfile.c:65 -msgid "Load another config file." -msgstr "Last inn en annen oppsettsfil." - -#: grub-core/commands/configfile.c:69 grub-core/commands/configfile.c:87 -msgid "Load another config file without changing context." -msgstr "Last inn en annen oppsettsfil uten Ã¥ endre kontekst." - -#: grub-core/commands/configfile.c:75 -msgid "" -"Load another config file without changing context but take only menu entries." -msgstr "" -"Last inn en annen oppsettsfil uten Ã¥ endre kontekst, men bare ta med " -"menyoppføringer." - -#: grub-core/commands/configfile.c:81 -msgid "Load another config file but take only menu entries." -msgstr "Last inn en annen oppsettsfil, men bare ta med menyoppføringer." - -#: grub-core/commands/date.c:141 -msgid "[[year-]month-day] [hour:minute[:second]]" -msgstr "[[Ã¥r-]mÃ¥ned-dag] [time:minutt[:sekund]]" - -#: grub-core/commands/date.c:142 -msgid "Display/set current datetime." -msgstr "Vis/still gjeldende dato og klokkeslett." - -#: grub-core/commands/echo.c:30 -msgid "Do not output the trailing newline." -msgstr "Ikke avslutt med linjeskift." - -#: grub-core/commands/echo.c:31 -msgid "Enable interpretation of backslash escapes." -msgstr "SlÃ¥ pÃ¥ tolkning av skrÃ¥strek-skiftetegn." - -#: grub-core/commands/echo.c:134 -msgid "[-e|-n] STRING" -msgstr "[-e|-n] STRENG" - -#: grub-core/commands/echo.c:134 -msgid "Display a line of text." -msgstr "Vis en tekstlinje." - -#: grub-core/commands/efi/efifwsetup.c:82 -msgid "Reboot into firmware setup menu." -msgstr "Start pÃ¥ nytt og kjør fastvare-oppsettsmeny." - -#: grub-core/commands/efi/fixvideo.c:107 -msgid "Fix video problem." -msgstr "Løs videoproblem." - -#: grub-core/commands/efi/loadbios.c:52 -msgid "ROM image is present." -msgstr "ROM-bilde er tilstede." - -#: grub-core/commands/efi/loadbios.c:70 -msgid "Can't enable ROM area." -msgstr "Klarte ikke Ã¥ aktivere ROM-omrÃ¥de." - -#: grub-core/commands/efi/loadbios.c:209 -msgid "" -"Create BIOS-like structures for backward compatibility with existing OS." -msgstr "" -"Lag BIOS-lignende strukturer for bakover-kompatiblitet med eksisterende " -"operativsystemer." - -#: grub-core/commands/efi/loadbios.c:214 -msgid "BIOS_DUMP [INT10_DUMP]" -msgstr "BIOS_DUMP [INT10_DUMP]" - -#: grub-core/commands/efi/loadbios.c:215 -msgid "Load BIOS dump." -msgstr "Last inn BIOS-dump." - -#: grub-core/commands/efi/shim_lock.c:76 -#, c-format -msgid "module cannot be loaded in UEFI secure boot mode: %s" -msgstr "UEFI secure boot-modus støtter ikke modul %s" - -#: grub-core/commands/efi/shim_lock.c:98 -#, c-format -msgid "cannot boot due to dangerous module in memory: %s" -msgstr "klarte ikke Ã¥ starte opp pÃ¥ grunn av farlig modul i minne: %s" - -#: grub-core/commands/efi/shim_lock.c:116 -msgid "bad shim signature" -msgstr "ugyldig shim-signatur" - -#: grub-core/commands/efi/tpm.c:149 grub-core/commands/efi/tpm.c:189 -#: grub-core/commands/efi/tpm.c:256 grub-core/commands/efi/tpm.c:306 -msgid "Command failed" -msgstr "Kommando mislyktes" - -#: grub-core/commands/efi/tpm.c:151 grub-core/commands/efi/tpm.c:191 -#: grub-core/commands/efi/tpm.c:258 grub-core/commands/efi/tpm.c:308 -msgid "Invalid parameter" -msgstr "Ugyldig parameter" - -#: grub-core/commands/efi/tpm.c:154 grub-core/commands/efi/tpm.c:194 -#: grub-core/commands/efi/tpm.c:261 grub-core/commands/efi/tpm.c:311 -msgid "Output buffer too small" -msgstr "Mellomlager for utdata er for lite" - -#: grub-core/commands/efi/tpm.c:156 grub-core/commands/efi/tpm.c:196 -#: grub-core/commands/efi/tpm.c:263 grub-core/commands/efi/tpm.c:313 -msgid "TPM unavailable" -msgstr "TPM utilgjengelig" - -#: grub-core/commands/efi/tpm.c:158 grub-core/commands/efi/tpm.c:198 -#: grub-core/commands/efi/tpm.c:265 grub-core/commands/efi/tpm.c:315 -msgid "Unknown TPM error" -msgstr "Ukjent TMP-feil" - -#: grub-core/commands/efi/tpm.c:240 grub-core/commands/efi/tpm.c:288 -msgid "cannot allocate TPM event buffer" -msgstr "klarte ikke Ã¥ tildele mellomlager for TPM-hendelser" - -#: grub-core/commands/eval.c:63 -msgid "STRING ..." -msgstr "STRENG …" - -#: grub-core/commands/eval.c:64 -msgid "Evaluate arguments as GRUB commands" -msgstr "Regn argumenter som GRUB-kommandoer" - -#: grub-core/commands/file.c:41 -msgid "Check if FILE can be booted as i386 PAE Xen unprivileged guest kernel" -msgstr "" -"Sjekk om FIL kan startes opp som en i386 PAE Xen uprivilegert gjestekjerne" - -#: grub-core/commands/file.c:44 -msgid "Check if FILE can be booted as x86_64 Xen unprivileged guest kernel" -msgstr "" -"Sjekk om FIL kan startes opp som en X86_64 Xen uprivilegert gjestekjerne" - -#: grub-core/commands/file.c:46 -msgid "Check if FILE can be used as Xen x86 privileged guest kernel" -msgstr "Sjekk om FIL kan brukes som en Xen x86 privilegert gjestekjerne" - -#: grub-core/commands/file.c:48 -msgid "Check if FILE can be used as x86 multiboot kernel" -msgstr "Sjekk om FIL kan brukes som en x86 «multiboot»-kjerne" - -#: grub-core/commands/file.c:50 -msgid "Check if FILE can be used as x86 multiboot2 kernel" -msgstr "Sjekk om FIL kan brukes som en x86 «multiboot2»-kjerne" - -#: grub-core/commands/file.c:52 -msgid "Check if FILE is ARM Linux" -msgstr "Sjekk om FIL er en ARM Linux-kjerne" - -#: grub-core/commands/file.c:54 -msgid "Check if FILE is ARM64 Linux" -msgstr "Sjekk om FIL er en ARM64 Linux-kjerne" - -#: grub-core/commands/file.c:56 -msgid "Check if FILE is IA64 Linux" -msgstr "Sjekk om FIL er en IA64 Linux-kjerne" - -#: grub-core/commands/file.c:58 -msgid "Check if FILE is MIPS Linux" -msgstr "Sjekk om FIL er en MIPS Linux-kjerne" - -#: grub-core/commands/file.c:60 -msgid "Check if FILE is MIPSEL Linux" -msgstr "Sjekk om FIL er en MIPSEL Linux-kjerne" - -#: grub-core/commands/file.c:62 -msgid "Check if FILE is SPARC64 Linux" -msgstr "Sjekk om FIL er en SPARC64 Linux-kjerne" - -#: grub-core/commands/file.c:64 -msgid "Check if FILE is POWERPC Linux" -msgstr "Sjekk om FIL er en POWERPC Linux-kjerne" - -#: grub-core/commands/file.c:66 -msgid "Check if FILE is x86 Linux" -msgstr "Sjekk om FIL er en x86 Linux-kjerne" - -#: grub-core/commands/file.c:68 -msgid "Check if FILE is x86 Linux supporting 32-bit protocol" -msgstr "Sjekk om FIL er en x86 Linux-kjerne som støtter 32-bitprotokoll" - -#: grub-core/commands/file.c:70 -msgid "Check if FILE is x86 kFreeBSD" -msgstr "Sjekk om FIL er en x86 kFreeBSD-kjerne" - -#: grub-core/commands/file.c:72 -msgid "Check if FILE is i386 kFreeBSD" -msgstr "Sjekk om FIL er en i386 kFreeBSD-kjerne" - -#: grub-core/commands/file.c:74 -msgid "Check if FILE is x86_64 kFreeBSD" -msgstr "Sjekk om FIL er en x86_64 kFreeBSD-kjerne" - -#: grub-core/commands/file.c:77 -msgid "Check if FILE is x86 kNetBSD" -msgstr "Sjekk om FIL er en x86 kNetBSD-kjerne" - -#: grub-core/commands/file.c:79 -msgid "Check if FILE is i386 kNetBSD" -msgstr "Sjekk om FIL er en i386 kNetBSD-kjerne" - -#: grub-core/commands/file.c:81 -msgid "Check if FILE is x86_64 kNetBSD" -msgstr "Sjekk om FIL er en x86_64 kNetBSD-kjerne" - -#: grub-core/commands/file.c:84 -msgid "Check if FILE is i386 EFI file" -msgstr "Sjekk om FIL er en i386 EFI-fil" - -#: grub-core/commands/file.c:86 -msgid "Check if FILE is x86_64 EFI file" -msgstr "Sjekk om FIL er en x86_64 EFI-fil" - -#: grub-core/commands/file.c:88 -msgid "Check if FILE is IA64 EFI file" -msgstr "Sjekk om FIL er en IA64 EFI-fil" - -#: grub-core/commands/file.c:90 -msgid "Check if FILE is ARM64 EFI file" -msgstr "Sjekk om FIL er en ARM64 EFI-fil" - -#: grub-core/commands/file.c:92 -msgid "Check if FILE is ARM EFI file" -msgstr "Sjekk om FIL er en ARM EFI-fil" - -#: grub-core/commands/file.c:94 -msgid "Check if FILE is RISC-V 32bit EFI file" -msgstr "Sjekk om FIL er en RISC-V 32bit EFI-fil" - -#: grub-core/commands/file.c:96 -msgid "Check if FILE is RISC-V 64bit EFI file" -msgstr "Sjekk om FIL er en RISC-V 64bit EFI-fil" - -#: grub-core/commands/file.c:98 -msgid "Check if FILE is hiberfil.sys in hibernated state" -msgstr "Sjekk om FIL er hiberfil.sys i dvalemodus" - -#: grub-core/commands/file.c:100 -msgid "Check if FILE is x86_64 XNU (Mac OS X kernel)" -msgstr "Sjekk om FIL er en x86_64 XNU(Mac OS X)-kjerne" - -#: grub-core/commands/file.c:102 -msgid "Check if FILE is i386 XNU (Mac OS X kernel)" -msgstr "Sjekk om FIL er en i386 XNU(Mac OS X)-kjerne" - -#: grub-core/commands/file.c:104 -msgid "Check if FILE is XNU (Mac OS X kernel) hibernated image" -msgstr "Sjekk om FIL er et XNU(MAC OS X)-bilde i dvalemodus" - -#: grub-core/commands/file.c:106 -msgid "Check if FILE is BIOS bootsector" -msgstr "Sjekk om FIL er en BIOS-oppstartssektor" - -#. TRANSLATORS: it's a standalone boolean value, -#. opposite of "true". -#: grub-core/commands/file.c:675 grub-core/commands/i386/cmostest.c:63 -#: grub-core/commands/i386/cpuid.c:71 grub-core/commands/keystatus.c:83 -#: grub-core/commands/keystatus.c:87 grub-core/commands/keystatus.c:96 -#: grub-core/commands/test.c:436 grub-core/commands/true.c:39 -#: grub-core/script/execute.c:247 grub-core/script/execute.c:1039 -msgid "false" -msgstr "usant" - -#: grub-core/commands/file.c:684 -msgid "OPTIONS FILE" -msgstr "VALG FIL" - -#: grub-core/commands/file.c:685 -msgid "Check if FILE is of specified type." -msgstr "Sjekk om FIL er av valgt type." - -#. TRANSLATORS: It means that the specified partition e.g. -#. hd0,msdos1=/dev/sda1 doesn't exist. -#: grub-core/commands/gptsync.c:140 grub-core/kern/disk.c:258 -msgid "no such partition" -msgstr "partisjonen finnes ikke" - -#: grub-core/commands/gptsync.c:240 -#, c-format -msgid "New MBR is written to `%s'\n" -msgstr "Ny MBR er skrevet til «%s»\n" - -#: grub-core/commands/gptsync.c:252 -msgid "DEVICE [PARTITION[+/-[TYPE]]] ..." -msgstr "ENHET [PARTISJON[+/-[TYPE]]] …" - -#. TRANSLATORS: MBR type is one-byte partition -#. type id. -#: grub-core/commands/gptsync.c:255 -msgid "" -"Fill hybrid MBR of GPT drive DEVICE. Specified partitions will be a part of " -"hybrid MBR. Up to 3 partitions are allowed. TYPE is an MBR type. + means " -"that partition is active. Only one partition can be active." -msgstr "" -"Fyll hybrid-MBR for GPT-enheten ENHET. Valgte partisjoner inngÃ¥r i hybrid-" -"MBR. Du kan bruke opptil 3 partisjoner. TYPE er en MBR-type. «+» betyr at en " -"partisjon er aktiv. Kun én partisjon kan være aktiv." - -#: grub-core/commands/halt.c:40 -msgid "" -"Halts the computer. This command does not work on all firmware " -"implementations." -msgstr "" -"Stanser datamaskinen. Denne kommandoen virker ikke med alle fastvare-" -"implementasjoner." - -#: grub-core/commands/hashsum.c:32 -msgid "Specify hash to use." -msgstr "Velg hvilken nøkkel som skal brukes." - -#: grub-core/commands/hashsum.c:32 -msgid "HASH" -msgstr "NØKKEL" - -#: grub-core/commands/hashsum.c:33 -msgid "Check hashes of files with hash list FILE." -msgstr "Sjekk nøkkelsummer («hash») av filer mot valgt nøkkelliste-FIL." - -#: grub-core/commands/hashsum.c:35 -msgid "Base directory for hash list." -msgstr "Grunnmappe for nøkkelsum-liste." - -#. TRANSLATORS: platform here isn't identifier. It can be translated. -#: grub-core/commands/hashsum.c:35 grub-core/commands/ls.c:150 -#: grub-core/commands/macbless.c:226 grub-core/commands/syslinuxcfg.c:51 -#: grub-core/commands/syslinuxcfg.c:54 grub-core/kern/emu/main.c:106 -#: include/grub/util/install.h:50 include/grub/util/install.h:53 -#: include/grub/util/install.h:56 include/grub/util/install.h:59 -#: util/grub-install.c:250 util/grub-install.c:252 util/grub-install.c:297 -#: util/grub-install.c:299 util/grub-mkimage.c:64 util/grub-mkimage.c:67 -#: util/grub-mknetdir.c:46 util/grub-mknetdir.c:48 util/grub-mkrescue.c:99 -#: util/grub-setup.c:82 util/grub-syslinux2cfg.c:63 util/grub-syslinux2cfg.c:65 -#: util/grub-syslinux2cfg.c:67 util/grub-syslinux2cfg.c:71 -msgid "DIR" -msgstr "MAP" - -#: grub-core/commands/hashsum.c:37 -msgid "Don't stop after first error." -msgstr "Ikke stopp etter første feil." - -#: grub-core/commands/hashsum.c:38 -msgid "Uncompress file before checksumming." -msgstr "Pakk ut fila før sjekksummer kontrolleres." - -#: grub-core/commands/hashsum.c:163 -#, c-format -msgid "%s: READ ERROR\n" -msgstr "%s: LESEFEIL\n" - -#: grub-core/commands/hashsum.c:177 -#, c-format -msgid "%s: HASH MISMATCH\n" -msgstr "%s: NØKKEL SAMSVARER IKKE\n" - -#: grub-core/commands/hashsum.c:188 -#, c-format -msgid "%s: OK\n" -msgstr "%s: OK\n" - -#: grub-core/commands/hashsum.c:282 -msgid "-h HASH [-c FILE [-p PREFIX]] [FILE1 [FILE2 ...]]" -msgstr "-h NØKKEL [-c FIL [-p PREFIKS]] [FIL1 [FIL2 …]]" - -#. TRANSLATORS: "hash checksum" is just to -#. be a bit more precise, you can treat it as -#. just "hash". -#: grub-core/commands/hashsum.c:287 grub-core/commands/hashsum.c:292 -#: grub-core/commands/hashsum.c:297 grub-core/commands/hashsum.c:302 -#: grub-core/commands/hashsum.c:307 grub-core/commands/hashsum.c:313 -msgid "Compute or check hash checksum." -msgstr "Regn ut eller kontroller nøkkelsum." - -#: grub-core/commands/hashsum.c:290 grub-core/commands/hashsum.c:295 -#: grub-core/commands/hashsum.c:300 grub-core/commands/hashsum.c:305 -#: grub-core/commands/hashsum.c:311 -msgid "[-c FILE [-p PREFIX]] [FILE1 [FILE2 ...]]" -msgstr "[-c FIL [-p PREFIKS]] [FIL1 [FIL2 …]]" - -#: grub-core/commands/hdparm.c:33 -msgid "" -"Set Advanced Power Management\n" -"(1=low, ..., 254=high, 255=off)." -msgstr "" -"Still inn avansert strømstyring\n" -"(1=lav, …, 254=høy, 255=av)." - -#: grub-core/commands/hdparm.c:36 -msgid "Display power mode." -msgstr "Vis strømmodus." - -#: grub-core/commands/hdparm.c:37 -msgid "Freeze ATA security settings until reset." -msgstr "LÃ¥s ATA-sikkerhetsinnstillinger til maskinen startes pÃ¥ nytt." - -#: grub-core/commands/hdparm.c:39 -msgid "Display SMART health status." -msgstr "Vis SMART-tilstand." - -#: grub-core/commands/hdparm.c:40 -msgid "" -"Set Automatic Acoustic Management\n" -"(0=off, 128=quiet, ..., 254=fast)." -msgstr "" -"Still inn automatisk akustikkhÃ¥ndtering\n" -"(0=av, 128=stille, …, 254=rask)." - -#: grub-core/commands/hdparm.c:43 -msgid "" -"Set standby timeout\n" -"(0=off, 1=5s, 2=10s, ..., 240=20m, 241=30m, ...)." -msgstr "" -"Still inn tidsavbrudd for ventemodus\n" -"(0=av, 1=5s, 2=10s, …, 240=20m, 241=30m, …)." - -#: grub-core/commands/hdparm.c:46 -msgid "Set drive to standby mode." -msgstr "Sett lagringsenheten i ventemodus." - -#: grub-core/commands/hdparm.c:47 -msgid "Set drive to sleep mode." -msgstr "Sett lagringsenheten i dvalemodus." - -#: grub-core/commands/hdparm.c:48 -msgid "Print drive identity and settings." -msgstr "Skriv ut lagringsenhetens identitet og oppsett." - -#: grub-core/commands/hdparm.c:50 -msgid "Show raw contents of ATA IDENTIFY sector." -msgstr "Vis rÃ¥data fra ATA IDENTIFY-sektor." - -#: grub-core/commands/hdparm.c:52 -msgid "Disable/enable SMART (0/1)." -msgstr "SlÃ¥ av/pÃ¥ SMART (0/1)." - -#: grub-core/commands/hdparm.c:53 -msgid "Do not print messages." -msgstr "Ikke skriv ut meldinger." - -#: grub-core/commands/hdparm.c:286 grub-core/commands/i386/rdmsr.c:68 -#: grub-core/commands/iorw.c:47 grub-core/commands/legacycfg.c:760 -#: grub-core/commands/legacycfg.c:812 grub-core/commands/macbless.c:190 -#: grub-core/commands/memrw.c:47 grub-core/commands/pgp.c:738 -#: grub-core/commands/pgp.c:792 grub-core/commands/search.c:304 -#: grub-core/commands/search_wrap.c:179 grub-core/commands/setpci.c:243 -#: grub-core/commands/sleep.c:71 grub-core/fs/zfs/zfsinfo.c:279 -#: grub-core/fs/zfs/zfsinfo.c:358 grub-core/gettext/gettext.c:492 -#: grub-core/kern/corecmd.c:65 grub-core/kern/corecmd.c:79 -#: grub-core/mmap/mmap.c:430 grub-core/net/dns.c:713 grub-core/net/dns.c:745 -#: grub-core/net/net.c:694 grub-core/net/net.c:1052 -#: grub-core/normal/context.c:194 grub-core/script/execute.c:131 -#: grub-core/term/gfxterm_background.c:136 -msgid "one argument expected" -msgstr "forventet ett argument" - -#: grub-core/commands/hdparm.c:440 -msgid "[OPTIONS] DISK" -msgstr "[VALG] DISK" - -#: grub-core/commands/hdparm.c:441 -msgid "Get/set ATA disk parameters." -msgstr "Hent/velg ATA-diskparametre." - -#: grub-core/commands/help.c:132 grub-core/lib/arg.c:109 -#: grub-core/lib/gnulib/argp-help.c:1616 -msgid "Usage:" -msgstr "Bruk:" - -#: grub-core/commands/help.c:146 -msgid "[PATTERN ...]" -msgstr "[MØNSTER …]" - -#: grub-core/commands/help.c:147 -msgid "Show a help message." -msgstr "Vis en hjelpemelding." - -#: grub-core/commands/hexdump.c:31 -msgid "Skip offset bytes from the beginning of file." -msgstr "Hopp over forskyvningsbyte i begynnelsen av fila." - -#: grub-core/commands/hexdump.c:33 -msgid "Read only LENGTH bytes." -msgstr "Skrivebeskyttede «LENGTH»-byte." - -#: grub-core/commands/hexdump.c:125 -msgid "[OPTIONS] FILE_OR_DEVICE" -msgstr "[VALG] FIL_ELLER_ENHET" - -#: grub-core/commands/hexdump.c:126 -msgid "Show raw contents of a file or memory." -msgstr "Vis rÃ¥data i en fil eller i minnet." - -#: grub-core/commands/i386/cmosdump.c:58 -msgid "Show raw dump of the CMOS contents." -msgstr "Vis rÃ¥innholdet pÃ¥ CMOS." - -#: grub-core/commands/i386/cmostest.c:108 -#: grub-core/commands/i386/cmostest.c:111 -#: grub-core/commands/i386/cmostest.c:114 -msgid "BYTE:BIT" -msgstr "BYTE:BIT" - -#: grub-core/commands/i386/cmostest.c:109 -msgid "Test bit at BYTE:BIT in CMOS." -msgstr "Test bit ved BYTE:BIT i CMOS." - -#: grub-core/commands/i386/cmostest.c:112 -msgid "Clear bit at BYTE:BIT in CMOS." -msgstr "Tøm bit ved BYTE:BIT i CMOS." - -#. TRANSLATORS: A bit may be either set (1) or clear (0). -#: grub-core/commands/i386/cmostest.c:116 -msgid "Set bit at BYTE:BIT in CMOS." -msgstr "Still inn bit ved BYTE:BIT i CMOS." - -#: grub-core/commands/i386/coreboot/cb_timestamps.c:120 -msgid "Show coreboot boot time statistics." -msgstr "Vis statistikk for coreboot-oppstartstid." - -#: grub-core/commands/i386/coreboot/cbls.c:137 -msgid "List coreboot tables." -msgstr "Vis coreboot-tabeller." - -#. TRANSLATORS: "(default)" at the end means that this option is used if -#. no argument is specified. -#: grub-core/commands/i386/cpuid.c:36 -msgid "Check if CPU supports 64-bit (long) mode (default)." -msgstr "Sjekk om prosessoren støtter (lang) 64-bitmodus (standard)." - -#: grub-core/commands/i386/cpuid.c:37 -msgid "Check if CPU supports Physical Address Extension." -msgstr "Sjekk om prosessoren støtter fysisk adresseutvidelse (PAE)." - -#: grub-core/commands/i386/cpuid.c:119 -msgid "Check for CPU features." -msgstr "Vis informasjon om prosessoren." - -#. TRANSLATORS: In this file "mapping" refers to a change GRUB makes so if -#. your language doesn't have an equivalent of "mapping" you can -#. use the word like "rerouting". -#. -#: grub-core/commands/i386/pc/drivemap.c:43 -msgid "Show the current mappings." -msgstr "Vis gjeldende koblinger." - -#: grub-core/commands/i386/pc/drivemap.c:44 -msgid "Reset all mappings to the default values." -msgstr "Tilbakestill alle koblinger til standardverdier." - -#: grub-core/commands/i386/pc/drivemap.c:45 -msgid "Perform both direct and reverse mappings." -msgstr "Lag bÃ¥de direkte og omvendte koblinger." - -#: grub-core/commands/i386/pc/drivemap.c:184 -msgid "No drives have been remapped" -msgstr "Ingen lagringsenheter er omkoblet" - -#. TRANSLATORS: This is the header of mapping list. -#. On the left is how OS will see the disks and -#. on the right current GRUB vision. -#: grub-core/commands/i386/pc/drivemap.c:191 -msgid "OS disk #num ------> GRUB/BIOS device" -msgstr "OS-disk #num ------> GRUB-/BIOS-enhet" - -#: grub-core/commands/i386/pc/drivemap.c:413 -msgid "-l | -r | [-s] grubdev osdisk." -msgstr "-l | -r | [-s] grubdev osdisk." - -#: grub-core/commands/i386/pc/drivemap.c:414 -msgid "Manage the BIOS drive mappings." -msgstr "HÃ¥ndter koblinger av BIOS-lagringsenheten." - -#: grub-core/commands/i386/pc/halt.c:31 -msgid "Do not use APM to halt the computer." -msgstr "Ikke bruk APM for Ã¥ stanse maskinen." - -#: grub-core/commands/i386/pc/halt.c:119 -msgid "Halt the system, if possible using APM." -msgstr "Stans systemet, med APM hvis mulig." - -#: grub-core/commands/i386/pc/lsapm.c:75 -msgid "no APM found" -msgstr "fant ingen APM" - -#: grub-core/commands/i386/pc/lsapm.c:77 -#, c-format -msgid "" -"Version %u.%u\n" -"32-bit CS = 0x%x, len = 0x%x, offset = 0x%x\n" -"16-bit CS = 0x%x, len = 0x%x\n" -"DS = 0x%x, len = 0x%x\n" -msgstr "" -"Versjon %u.%u\n" -"32-bit CS = 0x%x, lengde = 0x%x, punkt = 0x%x\n" -"16-bit CS = 0x%x, lengde = 0x%x\n" -"DS = 0x%x, lengde = 0x%x\n" - -#: grub-core/commands/i386/pc/lsapm.c:86 -msgid "16-bit protected interface supported\n" -msgstr "16-bit beskyttet grensesnitt støttes\n" - -#: grub-core/commands/i386/pc/lsapm.c:87 -msgid "16-bit protected interface unsupported\n" -msgstr "16-bit beskyttet grensesnitt støttes ikke\n" - -#: grub-core/commands/i386/pc/lsapm.c:89 -msgid "32-bit protected interface supported\n" -msgstr "32-bit beskyttet grensesnitt støttes\n" - -#: grub-core/commands/i386/pc/lsapm.c:90 -msgid "32-bit protected interface unsupported\n" -msgstr "32-bit beskyttet grensesnitt støttes ikke\n" - -#: grub-core/commands/i386/pc/lsapm.c:92 -msgid "CPU Idle slows down processor\n" -msgstr "«CPU Idle» skrur ned hastigheten pÃ¥ prosessoren\n" - -#: grub-core/commands/i386/pc/lsapm.c:93 -msgid "CPU Idle doesn't slow down processor\n" -msgstr "«CPU Idle» skrur ikke ned hastigheten pÃ¥ prosessoren\n" - -#: grub-core/commands/i386/pc/lsapm.c:95 -msgid "APM disabled\n" -msgstr "APM deaktivert\n" - -#: grub-core/commands/i386/pc/lsapm.c:95 -msgid "APM enabled\n" -msgstr "APM aktivert\n" - -#: grub-core/commands/i386/pc/lsapm.c:97 -msgid "APM disengaged\n" -msgstr "APM er ikke klar\n" - -#: grub-core/commands/i386/pc/lsapm.c:97 -msgid "APM engaged\n" -msgstr "APM er klar\n" - -#: grub-core/commands/i386/pc/lsapm.c:107 -msgid "Show APM information." -msgstr "Vis informasjon om APM." - -#. TRANSLATORS: It's musical notes, not the notes -#. you take. Play command expects arguments which can -#. be either a filename or tempo+notes. -#. This error happens if none is specified. -#: grub-core/commands/i386/pc/play.c:88 -msgid "filename or tempo and notes expected" -msgstr "forventet enten filnavn eller tempo og notes" - -#: grub-core/commands/i386/pc/play.c:113 grub-core/commands/i386/pc/play.c:144 -#, c-format -msgid "Invalid tempo in %s" -msgstr "Ugyldig tempo i %s" - -#: grub-core/commands/i386/pc/play.c:151 grub-core/commands/macbless.c:172 -#: grub-core/fs/archelp.c:260 grub-core/fs/bfs.c:621 grub-core/fs/bfs.c:704 -#: grub-core/fs/btrfs.c:1726 grub-core/fs/btrfs.c:1755 -#: grub-core/fs/btrfs.c:1799 grub-core/fs/btrfs.c:1882 -#: grub-core/fs/btrfs.c:1906 grub-core/fs/fshelp.c:257 grub-core/fs/jfs.c:696 -#: grub-core/fs/minix.c:426 grub-core/fs/ufs.c:544 grub-core/fs/zfs/zfs.c:2083 -#: grub-core/fs/zfs/zfs.c:2095 grub-core/fs/zfs/zfs.c:2301 -#: grub-core/net/http.c:120 -#, c-format -msgid "file `%s' not found" -msgstr "fant ikke fila «%s»" - -#: grub-core/commands/i386/pc/play.c:162 grub-core/commands/i386/pc/play.c:171 -#: grub-core/kern/misc.c:419 grub-core/script/execute.c:138 -#: grub-core/script/execute.c:244 -msgid "unrecognized number" -msgstr "ukjent tall" - -#: grub-core/commands/i386/pc/play.c:190 -msgid "FILE | TEMPO [PITCH1 DURATION1] [PITCH2 DURATION2] ... " -msgstr "FIL | TEMPO [TONE1 VARIGHET1] [TONE2 VARIGHET2] … " - -#: grub-core/commands/i386/pc/play.c:191 -msgid "Play a tune." -msgstr "Spill en sang." - -#: grub-core/commands/i386/pc/sendkey.c:39 -msgid "set numlock mode" -msgstr "velg numlock-modus" - -#: grub-core/commands/i386/pc/sendkey.c:40 -msgid "set capslock mode" -msgstr "velg capslock-modus" - -#: grub-core/commands/i386/pc/sendkey.c:41 -msgid "set scrolllock mode" -msgstr "velg scrollock-modus" - -#: grub-core/commands/i386/pc/sendkey.c:42 -msgid "set insert mode" -msgstr "velg insert-modus" - -#: grub-core/commands/i386/pc/sendkey.c:43 -msgid "set pause mode" -msgstr "velg pause-modus" - -#: grub-core/commands/i386/pc/sendkey.c:44 -msgid "press left shift" -msgstr "trykk pÃ¥ venstre shift-knapp" - -#: grub-core/commands/i386/pc/sendkey.c:45 -msgid "press right shift" -msgstr "trykk pÃ¥ høyre shift-knapp" - -#: grub-core/commands/i386/pc/sendkey.c:46 -msgid "press SysRq" -msgstr "trykk pÃ¥ SysRq-knappen" - -#: grub-core/commands/i386/pc/sendkey.c:47 -msgid "press NumLock key" -msgstr "trykk pÃ¥ NumLock-knappen" - -#: grub-core/commands/i386/pc/sendkey.c:48 -msgid "press CapsLock key" -msgstr "trykk pÃ¥ CapsLock-knappen" - -#: grub-core/commands/i386/pc/sendkey.c:49 -msgid "press ScrollLock key" -msgstr "trykk pÃ¥ ScrollLock-knappen" - -#: grub-core/commands/i386/pc/sendkey.c:50 -msgid "press Insert key" -msgstr "trykk pÃ¥ Insert-knappen" - -#: grub-core/commands/i386/pc/sendkey.c:51 -msgid "press left alt" -msgstr "trykk pÃ¥ venstre alt-knapp" - -#: grub-core/commands/i386/pc/sendkey.c:52 -msgid "press right alt" -msgstr "trykk pÃ¥ høyre alt-knapp" - -#: grub-core/commands/i386/pc/sendkey.c:53 -msgid "press left ctrl" -msgstr "trykk pÃ¥ venstre ctrl-knapp" - -#: grub-core/commands/i386/pc/sendkey.c:54 -msgid "press right ctrl" -msgstr "trykk pÃ¥ høyre ctrl-knapp" - -#: grub-core/commands/i386/pc/sendkey.c:55 -msgid "don't update LED state" -msgstr "ikke oppdater LED-tilstand" - -#: grub-core/commands/i386/pc/sendkey.c:372 -msgid "[KEYSTROKE1] [KEYSTROKE2] ..." -msgstr "[KNAPPETRYKK1] [KNAPPETRYKK2] …" - -#. TRANSLATORS: It can emulate multiple -#. keypresses. -#: grub-core/commands/i386/pc/sendkey.c:375 -msgid "Emulate a keystroke sequence" -msgstr "Etterlikn en knappetrykk-sekvens" - -#: grub-core/commands/i386/rdmsr.c:37 grub-core/commands/iorw.c:34 -#: grub-core/commands/memrw.c:33 grub-core/commands/setpci.c:73 -msgid "Save read value into variable VARNAME." -msgstr "Lagre innlest verdi i variabelen VARNAVN" - -#: grub-core/commands/i386/rdmsr.c:38 grub-core/commands/iorw.c:35 -#: grub-core/commands/memrw.c:34 grub-core/commands/probe.c:40 -#: grub-core/commands/search_wrap.c:40 grub-core/commands/setpci.c:74 -#: grub-core/commands/tr.c:32 -msgid "VARNAME" -msgstr "VARNAVN" - -#: grub-core/commands/i386/rdmsr.c:55 grub-core/commands/i386/rdmsr.c:60 -#: grub-core/commands/i386/rdmsr.c:65 grub-core/commands/i386/wrmsr.c:47 -#: grub-core/commands/i386/wrmsr.c:52 grub-core/commands/i386/wrmsr.c:57 -msgid "unsupported instruction" -msgstr "instruksjonssett støttes ikke" - -#: grub-core/commands/i386/rdmsr.c:77 grub-core/commands/i386/wrmsr.c:69 -#: grub-core/commands/i386/wrmsr.c:77 grub-core/net/dns.c:727 -msgid "invalid argument" -msgstr "ugyldig argument" - -#: grub-core/commands/i386/rdmsr.c:94 grub-core/commands/memrw.c:125 -#: grub-core/commands/memrw.c:129 grub-core/commands/memrw.c:133 -msgid "ADDR" -msgstr "ADR" - -#: grub-core/commands/i386/rdmsr.c:95 -msgid "Read a CPU model specific register." -msgstr "Les register for en spesifikk CPU-modell" - -#: grub-core/commands/i386/wrmsr.c:86 -msgid "ADDR VALUE" -msgstr "ADR VERDI" - -#: grub-core/commands/i386/wrmsr.c:87 -msgid "Write a value to a CPU model specific register." -msgstr "Skriv verdi register for en spesifikk CPU-modell" - -#: grub-core/commands/ieee1275/suspend.c:34 -msgid "Run `go' to resume GRUB." -msgstr "Kjør «go» for Ã¥ gÃ¥ tilbake til GRUB." - -#: grub-core/commands/ieee1275/suspend.c:45 -msgid "Return to IEEE1275 prompt." -msgstr "GÃ¥ tilbake til IEEE1275-ledetekst." - -#: grub-core/commands/iorw.c:123 grub-core/commands/iorw.c:127 -#: grub-core/commands/iorw.c:131 grub-core/gdb/gdb.c:79 -msgid "PORT" -msgstr "PORT" - -#: grub-core/commands/iorw.c:123 -msgid "Read 8-bit value from PORT." -msgstr "Les 8-bit-verdi fra valgt PORT." - -#: grub-core/commands/iorw.c:127 -msgid "Read 16-bit value from PORT." -msgstr "Les 16-bit-verdi fra valgt PORT." - -#: grub-core/commands/iorw.c:131 -msgid "Read 32-bit value from PORT." -msgstr "Les 32-bit-verdi fra valgt PORT." - -#: grub-core/commands/iorw.c:135 grub-core/commands/iorw.c:139 -msgid "PORT VALUE [MASK]" -msgstr "PORT VERDI [MASKE]" - -#: grub-core/commands/iorw.c:136 -msgid "Write 8-bit VALUE to PORT." -msgstr "Skriv 8-bit-VERDI til valgt PORT." - -#: grub-core/commands/iorw.c:140 -msgid "Write 16-bit VALUE to PORT." -msgstr "Skriv 16-bit-VERDI til valgt PORT." - -#: grub-core/commands/iorw.c:143 grub-core/commands/memrw.c:137 -#: grub-core/commands/memrw.c:141 grub-core/commands/memrw.c:145 -msgid "ADDR VALUE [MASK]" -msgstr "ADR VERDI [MASKE]" - -#: grub-core/commands/iorw.c:144 -msgid "Write 32-bit VALUE to PORT." -msgstr "Skriv 32-bit-VERDI til valgt PORT." - -#: grub-core/commands/keylayouts.c:215 grub-core/commands/loadenv.c:61 -#: grub-core/commands/nativedisk.c:189 grub-core/efiemu/main.c:235 -#: grub-core/font/font.c:428 grub-core/gfxmenu/gfxmenu.c:63 -#: grub-core/kern/device.c:42 grub-core/kern/dl.c:740 -#, c-format -msgid "variable `%s' isn't set" -msgstr "variabelen «%s» har ingen verdi" - -#: grub-core/commands/keylayouts.c:301 -msgid "Load a keyboard layout." -msgstr "Last inn en tastaturutforming." - -#. TRANSLATORS: "Check" in a sense that if this key is pressed then -#. "true" is returned, otherwise "false". -#: grub-core/commands/keystatus.c:32 -msgid "Check Shift key." -msgstr "Kontroller Shift-knappen." - -#: grub-core/commands/keystatus.c:33 -msgid "Check Control key." -msgstr "Kontroller Control-knappen." - -#: grub-core/commands/keystatus.c:34 -msgid "Check Alt key." -msgstr "Kontroller Alt-knappen." - -#. TRANSLATORS: there are 3 modifiers. -#: grub-core/commands/keystatus.c:106 -msgid "Check key modifier status." -msgstr "Kontroller knappeendringsstatus." - -#: grub-core/commands/legacycfg.c:512 grub-core/commands/legacycfg.c:526 -#: grub-core/commands/legacycfg.c:546 grub-core/commands/legacycfg.c:559 -#: grub-core/commands/time.c:43 grub-core/script/function.c:109 -#: util/grub-file.c:100 util/grub-fstest.c:57 util/grub-mount.c:69 -#, c-format -msgid "can't find command `%s'" -msgstr "fant ikke kommandoen «%s»" - -#: grub-core/commands/legacycfg.c:813 grub-core/normal/auth.c:225 -#: util/grub-mkpasswd-pbkdf2.c:139 -msgid "Enter password: " -msgstr "Skriv inn passord:" - -#. TRANSLATORS: "legacy config" means -#. "config as used by grub-legacy". -#: grub-core/commands/legacycfg.c:837 -msgid "Parse legacy config in same context" -msgstr "Tolk gammelutformet oppsett i samme kontekst" - -#: grub-core/commands/legacycfg.c:842 -msgid "Parse legacy config in new context" -msgstr "Tolk gammelutformet oppsett i ny kontekst" - -#: grub-core/commands/legacycfg.c:847 -msgid "Parse legacy config in same context taking only menu entries" -msgstr "" -"Tolk gammelutformet oppsett i samme kontekst, og bare ta med menyoppføringer" - -#: grub-core/commands/legacycfg.c:852 -msgid "Parse legacy config in new context taking only menu entries" -msgstr "" -"Tolk gammelutformet oppsett i ny kontekst, og bare ta med menyoppføringer" - -#: grub-core/commands/legacycfg.c:856 -msgid "[--no-mem-option] [--type=TYPE] FILE [ARG ...]" -msgstr "[--no-mem-option] [--type=TYPE] FIL [ARG …]" - -#: grub-core/commands/legacycfg.c:857 -msgid "Simulate grub-legacy `kernel' command" -msgstr "Simuler «kernel»-kommando fra grub-legacy" - -#: grub-core/commands/legacycfg.c:861 grub-core/commands/legacycfg.c:865 -msgid "FILE [ARG ...]" -msgstr "FIL [ARG …]" - -#: grub-core/commands/legacycfg.c:862 -msgid "Simulate grub-legacy `initrd' command" -msgstr "Simuler «initrd»-kommando fra grub-legacy" - -#: grub-core/commands/legacycfg.c:866 -msgid "Simulate grub-legacy `modulenounzip' command" -msgstr "Simuler «modulenounzip»-kommando fra grub-legacy" - -#: grub-core/commands/legacycfg.c:870 grub-core/commands/legacycfg.c:875 -msgid "[--md5] PASSWD [FILE]" -msgstr "[--md5] PASSORD [FIL]" - -#: grub-core/commands/legacycfg.c:871 -msgid "Simulate grub-legacy `password' command" -msgstr "Simuler «password»-kommando fra grub-legacy" - -#: grub-core/commands/legacycfg.c:876 -msgid "Simulate grub-legacy `password' command in menu entry mode" -msgstr "Simuler «password»-kommando fra grub-legacy i menyoppføringsmodus" - -#. TRANSLATORS: This option is used to override default filename -#. for loading and storing environment. -#: grub-core/commands/loadenv.c:37 -msgid "Specify filename." -msgstr "Velg filnavn." - -#: grub-core/commands/loadenv.c:39 -msgid "Skip signature-checking of the environment file." -msgstr "Hopp over signaturkontroll av miljøfila." - -#: grub-core/commands/loadenv.c:451 -msgid "[-f FILE] [-s|--skip-sig] [variable_name_to_whitelist] [...]" -msgstr "[-f FIL] [-s|--skip-sig] [variabelnavn_som_skal_hvitelistes] […]" - -#: grub-core/commands/loadenv.c:452 -msgid "Load variables from environment block file." -msgstr "Last inn variabler fra miljø-blokkfil." - -#: grub-core/commands/loadenv.c:455 -msgid "[-f FILE]" -msgstr "[-f FIL]" - -#: grub-core/commands/loadenv.c:456 -msgid "List variables from environment block file." -msgstr "Vis variabler fra miljø-blokkfil." - -#: grub-core/commands/loadenv.c:460 -msgid "[-f FILE] variable_name [...]" -msgstr "[-f FIL] variabelnavn […]" - -#: grub-core/commands/loadenv.c:461 -msgid "Save variables to environment block file." -msgstr "Lagre variabler i miljø-blokkfil." - -#: grub-core/commands/ls.c:40 -msgid "Show a long list with more detailed information." -msgstr "Vis en lang liste med mer detaljert informasjon." - -#: grub-core/commands/ls.c:41 -msgid "Print sizes in a human readable format." -msgstr "Skriv ut størrelser i et menneskevennlig format." - -#: grub-core/commands/ls.c:42 -msgid "List all files." -msgstr "Vis alle filer." - -#: grub-core/commands/ls.c:73 -msgid "Network protocols:" -msgstr "Nettverksprotokoller:" - -#: grub-core/commands/ls.c:295 -msgid "[-l|-h|-a] [FILE ...]" -msgstr "[-l|-h|-a] [FIL …]" - -#: grub-core/commands/ls.c:296 -msgid "List devices and files." -msgstr "Vis enheter og filer." - -#: grub-core/commands/lsacpi.c:255 -msgid "Show version 1 tables only." -msgstr "Bare vis versjon 1-tabeller." - -#: grub-core/commands/lsacpi.c:256 -msgid "Show version 2 and version 3 tables only." -msgstr "Bare vis versjon 2- og versjon 3-tabeller." - -#: grub-core/commands/lsacpi.c:306 -msgid "Show ACPI information." -msgstr "Vis ACPI-informasjon." - -#: grub-core/commands/lsmmap.c:31 -msgid "available RAM" -msgstr "tilgjengelig RAM" - -#: grub-core/commands/lsmmap.c:32 -msgid "reserved RAM" -msgstr "reservert RAM" - -#. TRANSLATORS: this refers to memory where ACPI tables are stored -#. and which can be used by OS once it loads ACPI tables. -#: grub-core/commands/lsmmap.c:35 -msgid "ACPI reclaimable RAM" -msgstr "ACPI-tilbakeførbar RAM" - -#. TRANSLATORS: this refers to memory which ACPI-compliant OS -#. is required to save accross hibernations. -#: grub-core/commands/lsmmap.c:38 -msgid "ACPI non-volatile storage RAM" -msgstr "ACPI ikke-flyktig RAM" - -#: grub-core/commands/lsmmap.c:39 -msgid "faulty RAM (BadRAM)" -msgstr "RAM med feil (BadRAM)" - -#: grub-core/commands/lsmmap.c:40 -msgid "persistent RAM" -msgstr "tilstandsbevarende RAM" - -#: grub-core/commands/lsmmap.c:41 -msgid "persistent RAM (legacy)" -msgstr "tilstandsbevarende RAM (gammel type)" - -#: grub-core/commands/lsmmap.c:42 -msgid "RAM holding coreboot tables" -msgstr "RAM med coreboot-tabeller" - -#: grub-core/commands/lsmmap.c:43 -msgid "RAM holding firmware code" -msgstr "RAM med fastvarekode" - -#: grub-core/commands/lsmmap.c:52 -#, c-format -msgid "base_addr = 0x%llx, length = 0x%llx, %s\n" -msgstr "base_addr = 0x%llx, lengde = 0x%llx, %s\n" - -#: grub-core/commands/lsmmap.c:55 -#, c-format -msgid "base_addr = 0x%llx, length = 0x%llx, type = 0x%x\n" -msgstr "base_addr = 0x%llx, lengde = 0x%llx, type = 0x%x\n" - -#: grub-core/commands/lsmmap.c:79 -msgid "List memory map provided by firmware." -msgstr "Vis minnekart fra fastvare." - -#: grub-core/commands/lspci.c:232 -msgid "List PCI devices." -msgstr "Vis PCI-enheter." - -#: grub-core/commands/macbless.c:224 -msgid "Bless FILE of HFS or HFS+ partition for intel macs." -msgstr "" -"Marker FIL av HFS- eller HFS+-partisjon for bruk med intel-basert mac-maskin." - -#: grub-core/commands/macbless.c:228 -msgid "Bless DIR of HFS or HFS+ partition for PPC macs." -msgstr "" -"Marker FIL av HFS- eller HFS+-partisjon for bruk med PPC-basert mac-maskin." - -#: grub-core/commands/memrw.c:125 -msgid "Read 8-bit value from ADDR." -msgstr "Les 8-bit-verdi fra valgt ADR." - -#: grub-core/commands/memrw.c:129 -msgid "Read 16-bit value from ADDR." -msgstr "Les 16-bit-verdi fra valgt ADR." - -#: grub-core/commands/memrw.c:133 -msgid "Read 32-bit value from ADDR." -msgstr "Les 32-bit-verdi fra valgt ADR." - -#: grub-core/commands/memrw.c:138 -msgid "Write 8-bit VALUE to ADDR." -msgstr "Skriv 8-bit-VERDI til ADR." - -#: grub-core/commands/memrw.c:142 -msgid "Write 16-bit VALUE to ADDR." -msgstr "Skriv 16-bit-VERDI til ADR." - -#: grub-core/commands/memrw.c:146 -msgid "Write 32-bit VALUE to ADDR." -msgstr "Skriv 32-bit-VERDI til ADR." - -#: grub-core/commands/menuentry.c:31 -msgid "Menu entry type." -msgstr "Type menyoppføring." - -#: grub-core/commands/menuentry.c:31 grub-core/commands/menuentry.c:38 -#: grub-core/commands/menuentry.c:39 grub-core/gettext/gettext.c:520 -#: util/grub-fstest.c:520 util/grub-install.c:291 util/grub-install.c:304 -#: util/grub-mknetdir.c:51 util/grub-mkrescue.c:109 util/grub-mkrescue.c:110 -#: util/grub-mount.c:453 util/grub-render-label.c:65 -msgid "STRING" -msgstr "STRENG" - -#: grub-core/commands/menuentry.c:33 -msgid "List of users allowed to boot this entry." -msgstr "" -"Lister over brukere som har tillatelse til Ã¥ starte opp denne oppføringa." - -#: grub-core/commands/menuentry.c:33 -msgid "USERNAME[,USERNAME]" -msgstr "BRUKERNAVN[,BRUKERNAVN]" - -#: grub-core/commands/menuentry.c:36 -msgid "Keyboard key to quickly boot this entry." -msgstr "Knapp som starter denne oppføringa raskt." - -#: grub-core/commands/menuentry.c:36 -msgid "KEYBOARD_KEY" -msgstr "TASTATUR_KNAPP" - -#: grub-core/commands/menuentry.c:38 -msgid "Use STRING as menu entry body." -msgstr "Bruk valgt STRENG som menyoppføring." - -#: grub-core/commands/menuentry.c:39 -msgid "Menu entry identifier." -msgstr "Menyoppførings-ID." - -#. TRANSLATORS: menu entry can either be bootable by anyone or only by -#. handful of users. By default when security is active only superusers can -#. boot a given menu entry. With --unrestricted (this option) -#. anyone can boot it. -#: grub-core/commands/menuentry.c:44 -msgid "This entry can be booted by any user." -msgstr "Denne oppføringa kan startes opp av alle brukere." - -#: grub-core/commands/menuentry.c:323 grub-core/commands/menuentry.c:328 -#: grub-core/tests/test_blockarg.c:46 -msgid "BLOCK" -msgstr "BLOKK" - -#: grub-core/commands/menuentry.c:323 -msgid "Define a menu entry." -msgstr "Lag en menyoppføring." - -#: grub-core/commands/menuentry.c:328 -msgid "Define a submenu." -msgstr "Definer en undermeny." - -#. TRANSLATORS: this is module list header. Name -#. is module name, Ref Count is a reference counter -#. (how many modules or open descriptors use it). -#. Dependencies are the other modules it uses. -#. -#: grub-core/commands/minicmd.c:162 -msgid "Name\tRef Count\tDependencies\n" -msgstr "Navn\tReferanseantall\tAvhengigheter\n" - -#: grub-core/commands/minicmd.c:201 -msgid "Show this message." -msgstr "Vis denne meldinga." - -#: grub-core/commands/minicmd.c:204 -msgid "ADDR [SIZE]" -msgstr "ADR [STØRR]" - -#: grub-core/commands/minicmd.c:204 -msgid "Show memory contents." -msgstr "Vis innhold i minnet." - -#: grub-core/commands/minicmd.c:207 grub-core/kern/corecmd.c:188 -#: util/grub-install.c:275 -msgid "MODULE" -msgstr "MODUL" - -#: grub-core/commands/minicmd.c:207 -msgid "Remove a module." -msgstr "Fjern en modul." - -#: grub-core/commands/minicmd.c:210 -msgid "Show loaded modules." -msgstr "Vis innlastede moduler." - -#: grub-core/commands/minicmd.c:213 -msgid "Exit from GRUB." -msgstr "Avslutt GRUB." - -#: grub-core/commands/mips/loongson/lsspd.c:42 -msgid "No CS5536 found" -msgstr "Fant ingen CS5536" - -#: grub-core/commands/mips/loongson/lsspd.c:45 -#, c-format -msgid "CS5536 at %d:%d.%d\n" -msgstr "CS5536 ved %d:%d.%d\n" - -#. TRANSLATORS: System management bus is often used to access components like -#. RAM (info only, not data) or batteries. I/O space is where in memory -#. its ports are. -#: grub-core/commands/mips/loongson/lsspd.c:55 -#, c-format -msgid "System management bus controller I/O space is at 0x%x\n" -msgstr "" -"Inn-/utdataomrÃ¥de for kontrollenhet for systemhÃ¥ndteringsbuss ligger ved 0x" -"%x\n" - -#. TRANSLATORS: it's shown in a report in a way -#. like number 1: ... number 2: ... -#. -#: grub-core/commands/mips/loongson/lsspd.c:66 -#, c-format -msgid "RAM slot number %d\n" -msgstr "RAM-kortplass nr. %d\n" - -#: grub-core/commands/mips/loongson/lsspd.c:73 -#, c-format -msgid "Written SPD bytes: %d B.\n" -msgstr "Skrevne SPD-byte: %d B.\n" - -#: grub-core/commands/mips/loongson/lsspd.c:74 -#, c-format -msgid "Total flash size: %d B.\n" -msgstr "Total kortstørrelse: %d B.\n" - -#: grub-core/commands/mips/loongson/lsspd.c:79 -msgid "Memory type: DDR2." -msgstr "Minnetype: DDR2." - -#: grub-core/commands/mips/loongson/lsspd.c:83 -#, c-format -msgid "Part no: %s.\n" -msgstr "Delnummer: %s.\n" - -#: grub-core/commands/mips/loongson/lsspd.c:86 -msgid "Memory type: Unknown." -msgstr "Minnetype: Ukjent." - -#: grub-core/commands/mips/loongson/lsspd.c:97 -msgid "Print Memory information." -msgstr "Skriv ut informasjon om minnet." - -#: grub-core/commands/nativedisk.c:118 grub-core/commands/probe.c:118 -#: grub-core/commands/probe.c:124 util/grub-probe.c:450 -#, c-format -msgid "%s does not support UUIDs" -msgstr "%s støtter ikke UUID-er" - -#: grub-core/commands/nativedisk.c:325 -msgid "[MODULE1 MODULE2 ...]" -msgstr "[MODUL1 MODUL2 …]" - -#: grub-core/commands/nativedisk.c:326 -msgid "" -"Switch to native disk drivers. If no modules are specified default set (pata," -"ahci,usbms,ohci,uhci,ehci) is used" -msgstr "" -"Bytt til innebygde diskdrivere. Hvis ingen moduler er valgt, brukes " -"standardsett (pata,ahci,usbms,ohci,uhci,ehci)" - -#: grub-core/commands/parttool.c:40 -msgid "" -"Perform COMMANDS on partition.\n" -"Use `parttool PARTITION help' for the list of available commands." -msgstr "" -"Utfør KOMMANDOER pÃ¥ partisjon.\n" -"Bruk «parttool PARTISJON help» for Ã¥ se en liste over tilgjengelige " -"kommandoer." - -#: grub-core/commands/parttool.c:123 -msgid "=VAL" -msgstr "=VAL" - -#: grub-core/commands/parttool.c:136 -#, c-format -msgid "Sorry, no parttool is available for %s\n" -msgstr "Ingen partisjonsverktøy er tilgjengelig for %s\n" - -#: grub-core/commands/parttool.c:288 grub-core/lib/arg.c:285 -#: grub-core/lib/arg.c:351 -#, c-format -msgid "unknown argument `%s'" -msgstr "«%s» er et ukjent argument" - -#: grub-core/commands/parttool.c:344 -msgid "PARTITION COMMANDS" -msgstr "PARTISJON KOMMANDOER" - -#: grub-core/commands/password.c:85 -msgid "USER PASSWORD" -msgstr "BRUKER PASSORD" - -#: grub-core/commands/password.c:86 -msgid "Set user password (plaintext). Unrecommended and insecure." -msgstr "" -"Velg passord for en bruker (ren tekst). Dette er usikkert, og anbefales ikke." - -#. TRANSLATORS: it means that the string which -#. was supposed to be a password hash doesn't -#. have a correct format, not to password -#. mismatch. -#: grub-core/commands/password_pbkdf2.c:98 -#: grub-core/commands/password_pbkdf2.c:115 -#: grub-core/commands/password_pbkdf2.c:123 -#: grub-core/commands/password_pbkdf2.c:150 -#: grub-core/commands/password_pbkdf2.c:179 -msgid "invalid PBKDF2 password" -msgstr "ugyldig PBKDF2-passord" - -#: grub-core/commands/password_pbkdf2.c:202 -msgid "USER PBKDF2_PASSWORD" -msgstr "BRUKER PBKDF2-PASSORD" - -#: grub-core/commands/password_pbkdf2.c:203 -msgid "Set user password (PBKDF2). " -msgstr "Velg passord for en bruker (PBKDF2)." - -#: grub-core/commands/pcidump.c:39 grub-core/commands/setpci.c:69 -msgid "Select device by vendor and device IDs." -msgstr "Velg enhet ut i fra produsent- og enhets-ID-er." - -#: grub-core/commands/pcidump.c:40 grub-core/commands/setpci.c:70 -msgid "[vendor]:[device]" -msgstr "[produsent]:[enhet]" - -#: grub-core/commands/pcidump.c:41 grub-core/commands/setpci.c:71 -msgid "Select device by its position on the bus." -msgstr "Velg enhet etter hvor pÃ¥ bussen den ligger." - -#: grub-core/commands/pcidump.c:42 grub-core/commands/setpci.c:72 -msgid "[bus]:[slot][.func]" -msgstr "[buss]:[kortplass][.funk]" - -#: grub-core/commands/pcidump.c:109 grub-core/commands/pcidump.c:138 -#: grub-core/commands/setpci.c:183 grub-core/commands/setpci.c:214 -#: grub-core/fs/zfs/zfs.c:3794 grub-core/kern/emu/hostdisk.c:458 -#: grub-core/kern/emu/hostdisk.c:473 grub-core/kern/file.c:44 -#, c-format -msgid "missing `%c' symbol" -msgstr "det mangler et «%c»-symbol" - -#: grub-core/commands/pcidump.c:168 -msgid "[-s POSITION] [-d DEVICE]" -msgstr "[-s POSISJON] [-d ENHET]" - -#: grub-core/commands/pcidump.c:169 -msgid "Show raw dump of the PCI configuration space." -msgstr "Vis rÃ¥dump av PCI-oppsettsomrÃ¥det." - -#: grub-core/commands/pgp.c:45 -msgid "Skip signature-checking of the public key file." -msgstr "Hopp over signaturkontroll av offentlig nøkkelfil." - -#. TRANSLATORS: it's about GNUPG signatures. -#: grub-core/commands/pgp.c:71 grub-core/commands/pgp.c:81 -#: grub-core/commands/pgp.c:86 grub-core/commands/pgp.c:96 -#: grub-core/commands/pgp.c:103 grub-core/commands/pgp.c:107 -#: grub-core/commands/pgp.c:114 grub-core/commands/pgp.c:119 -#: grub-core/commands/pgp.c:124 grub-core/commands/pgp.c:128 -#: grub-core/commands/pgp.c:268 grub-core/commands/pgp.c:276 -#: grub-core/commands/pgp.c:281 grub-core/commands/pgp.c:289 -#: grub-core/commands/pgp.c:320 grub-core/commands/pgp.c:327 -#: grub-core/commands/pgp.c:332 grub-core/commands/pgp.c:342 -#: grub-core/commands/pgp.c:468 grub-core/commands/pgp.c:471 -#: grub-core/commands/pgp.c:474 grub-core/commands/pgp.c:477 -#: grub-core/commands/pgp.c:484 grub-core/commands/pgp.c:490 -#: grub-core/commands/pgp.c:665 -msgid "bad signature" -msgstr "ubrukelig signatur" - -#. TRANSLATORS: %08x is 32-bit key id. -#: grub-core/commands/pgp.c:636 grub-core/commands/pgp.c:812 -#, c-format -msgid "public key %08x not found" -msgstr "fant ikke offentlig nøkkel %08x" - -#: grub-core/commands/pgp.c:651 grub-core/disk/diskfilter.c:772 -#: grub-core/disk/diskfilter.c:782 grub-core/fs/ntfs.c:404 -#: grub-core/fs/zfs/zfs.c:1933 grub-core/normal/menu.c:428 -#, c-format -msgid "module `%s' isn't loaded" -msgstr "modulen «%s» er ikke lastet inn" - -#: grub-core/commands/pgp.c:994 -msgid "[-s|--skip-sig] FILE SIGNATURE_FILE [PUBKEY_FILE]" -msgstr "[-s|--skip-sig] FIL SIGNATURFIL [OFF_NØKKELFIL]" - -#: grub-core/commands/pgp.c:995 -msgid "Verify detached signature." -msgstr "Bekreft løs signatur." - -#: grub-core/commands/pgp.c:998 -msgid "[-s|--skip-sig] PUBKEY_FILE" -msgstr "[-s|--skip-sig] OFF_NØKKELFIL" - -#: grub-core/commands/pgp.c:999 -msgid "Add PUBKEY_FILE to trusted keys." -msgstr "Legg til OFF_NØKKELFIL i lista over godkjente nøkeler." - -#: grub-core/commands/pgp.c:1003 -msgid "Show the list of trusted keys." -msgstr "Vis lista over godkjente nøkler." - -#: grub-core/commands/pgp.c:1005 -msgid "PUBKEY_ID" -msgstr "NØKKEL_ID" - -#: grub-core/commands/pgp.c:1006 -msgid "Remove PUBKEY_ID from trusted keys." -msgstr "Fjern valgt NØKKEL_ID fra lista over godkjente nøkler." - -#: grub-core/commands/probe.c:40 grub-core/commands/tr.c:32 -msgid "Set a variable to return value." -msgstr "Gi verdi til en variabel for Ã¥ hente verdi." - -#. TRANSLATORS: It's a driver that is currently in use to access -#. the diven disk. -#: grub-core/commands/probe.c:43 -msgid "Determine driver." -msgstr "Vis driver." - -#: grub-core/commands/probe.c:44 -msgid "Determine partition map type." -msgstr "Vis partisjonskart-type." - -#: grub-core/commands/probe.c:45 -msgid "Determine filesystem type." -msgstr "Vis filsystemtype." - -#: grub-core/commands/probe.c:46 -msgid "Determine filesystem UUID." -msgstr "Vis filsystem-UUID." - -#: grub-core/commands/probe.c:47 -msgid "Determine filesystem label." -msgstr "Vis filsystem-etikett." - -#: grub-core/commands/probe.c:139 grub-core/commands/probe.c:146 -#: util/grub-probe.c:462 -#, c-format -msgid "filesystem `%s' does not support labels" -msgstr "filsystemet «%s» støtter ikke etiketter" - -#: grub-core/commands/probe.c:165 grub-core/fs/zfs/zfsinfo.c:430 -#: grub-core/loader/i386/bsd.c:169 util/grub-setup.c:223 -msgid "DEVICE" -msgstr "ENHET" - -#: grub-core/commands/probe.c:166 -msgid "Retrieve device info." -msgstr "Hent enhetsinfo." - -#: grub-core/commands/read.c:85 -msgid "[ENVVAR]" -msgstr "[MILJØVAR]" - -#: grub-core/commands/read.c:86 -msgid "Set variable with user input." -msgstr "Gi verdi til en variabel med inndata fra bruker." - -#: grub-core/commands/reboot.c:40 -msgid "Reboot the computer." -msgstr "Start maskinen pÃ¥ nytt." - -#. TRANSLATORS: in regexp you can mark some -#. groups with parentheses. These groups are -#. then numbered and you can save some of -#. them in variables. In other programs -#. those components aree often referenced with -#. back slash, e.g. \1. Compare -#. sed -e 's,\([a-z][a-z]*\),lowercase=\1,g' -#. The whole matching component is saved in VARNAME, not its number. -#. -#: grub-core/commands/regexp.c:44 -msgid "Store matched component NUMBER in VARNAME." -msgstr "Lagre samsvarende komponent-TALL i VARNAVN." - -#: grub-core/commands/regexp.c:45 -msgid "[NUMBER:]VARNAME" -msgstr "[TALL:]VARNAVN" - -#. TRANSLATORS: This are two arguments. So it's -#. two separate units to translate and pay -#. attention not to reverse them. -#: grub-core/commands/regexp.c:157 -msgid "REGEXP STRING" -msgstr "REG_UTTR STRENG" - -#: grub-core/commands/regexp.c:158 -msgid "Test if REGEXP matches STRING." -msgstr "Sjekk om REG_UTTR samsvarer med STRENG." - -#: grub-core/commands/search.c:324 -msgid "NAME [VARIABLE] [HINTS]" -msgstr "NAVN [VARIABEL] [HINT]" - -#: grub-core/commands/search_file.c:4 -msgid "" -"Search devices by file. If VARIABLE is specified, the first device found is " -"set to a variable." -msgstr "" -"Finn enheter ved Ã¥ søke etter filer som ligger pÃ¥ dem. Hvis VARIABEL er " -"valgt, blir den første samsvarende enheten brukt som variabelverdi." - -#: grub-core/commands/search_label.c:4 -msgid "" -"Search devices by label. If VARIABLE is specified, the first device found is " -"set to a variable." -msgstr "" -"Finn enheter ved Ã¥ søke etter en etikett. Hvis VARIABEL er valgt, blir den " -"første samsvarende enheten brukt som variabelverdi." - -#: grub-core/commands/search_uuid.c:4 -msgid "" -"Search devices by UUID. If VARIABLE is specified, the first device found is " -"set to a variable." -msgstr "" -"Finn enheter ved hjelp av UUID. Hvis VARIABEL er valgt, blir den første " -"samsvarende enheten brukt som variabelverdi." - -#: grub-core/commands/search_wrap.c:34 -msgid "Search devices by a file." -msgstr "Finn enheter ved Ã¥ søke etter en fil." - -#: grub-core/commands/search_wrap.c:35 -msgid "Search devices by a filesystem label." -msgstr "Fin enheter ved Ã¥ søke etter en filsystem-etikett." - -#: grub-core/commands/search_wrap.c:37 -msgid "Search devices by a filesystem UUID." -msgstr "Finn enheter ved Ã¥ søke etter en filsystem-UUID." - -#: grub-core/commands/search_wrap.c:40 -msgid "Set a variable to the first device found." -msgstr "Bruk første funnede enhet som verdi for en variabel." - -#: grub-core/commands/search_wrap.c:42 -msgid "Do not probe any floppy drive." -msgstr "Ikke søk gjennom diskettstasjoner." - -#: grub-core/commands/search_wrap.c:44 -msgid "" -"First try the device HINT. If HINT ends in comma, also try subpartitions" -msgstr "" -"Prøv enheten HINT først. Prøv ogsÃ¥ underpartisjoner hvis HINT slutter pÃ¥ " -"komma" - -#: grub-core/commands/search_wrap.c:45 grub-core/commands/search_wrap.c:49 -#: grub-core/commands/search_wrap.c:53 grub-core/commands/search_wrap.c:57 -#: grub-core/commands/search_wrap.c:61 grub-core/commands/search_wrap.c:65 -msgid "HINT" -msgstr "HINT" - -#: grub-core/commands/search_wrap.c:47 -msgid "" -"First try the device HINT if currently running on IEEE1275. If HINT ends in " -"comma, also try subpartitions" -msgstr "" -"Prøv enheten HINT først hvis systemet kjører pÃ¥ IEEE1275. Prøv ogsÃ¥ " -"underpartisjoner hvis HINT slutter pÃ¥ komma" - -#: grub-core/commands/search_wrap.c:51 -msgid "" -"First try the device HINT if currently running on BIOS. If HINT ends in " -"comma, also try subpartitions" -msgstr "" -"Prøv enheten HINT først hvis systemet kjører pÃ¥ BIOS. Prøv ogsÃ¥ " -"underpartisjoner hvis HINT slutter pÃ¥ komma" - -#: grub-core/commands/search_wrap.c:55 -msgid "" -"First try the device HINT if direct hardware access is supported. If HINT " -"ends in comma, also try subpartitions" -msgstr "" -"Prøv enheten HINT først hvis direkte maskinvaretilgang støttes. Prøv ogsÃ¥ " -"underpartisjoner hvis HINT slutter pÃ¥ komma" - -#: grub-core/commands/search_wrap.c:59 -msgid "" -"First try the device HINT if currently running on EFI. If HINT ends in " -"comma, also try subpartitions" -msgstr "" -"Prøv enheten HINT først hvis systemet kjører pÃ¥ EFI. Prøv ogsÃ¥ " -"underpartisjoner hvis HINT slutter pÃ¥ komma" - -#: grub-core/commands/search_wrap.c:63 -msgid "" -"First try the device HINT if currently running on ARC. If HINT ends in " -"comma, also try subpartitions" -msgstr "" -"Prøv enheten HINT først hvis systemet kjører pÃ¥ ARC. Prøv ogsÃ¥ " -"underpartisjoner hvis HINT slutter pÃ¥ komma" - -#: grub-core/commands/search_wrap.c:207 -msgid "[-f|-l|-u|-s|-n] [--hint HINT [--hint HINT] ...] NAME" -msgstr "[-f|-l|-u|-s|-n] [--hint HINT [--hint HINT] …] NAVN" - -#: grub-core/commands/search_wrap.c:209 -msgid "" -"Search devices by file, filesystem label or filesystem UUID. If --set is " -"specified, the first device found is set to a variable. If no variable name " -"is specified, `root' is used." -msgstr "" -"Finn enheter ved Ã¥ søke etter filer som ligger pÃ¥ dem, filsystem-etikett " -"eller UUID. Første funnede enhet brukes som verdi for en variabel hvis «--" -"set» er valgt. Variabelnavnet «root» brukes hvis du ikke velger et annet." - -#: grub-core/commands/setpci.c:132 -#, c-format -msgid "Register %x of %x:%02x.%x is %x\n" -msgstr "Register %x av %x:%02x.%x er %x\n" - -#: grub-core/commands/setpci.c:333 -msgid "[-s POSITION] [-d DEVICE] [-v VAR] REGISTER[=VALUE[:MASK]]" -msgstr "[-s POSISJON] [-d ENHET] [-v VAR] REGISTER[=VERDI[:MASKE]]" - -#: grub-core/commands/setpci.c:335 -msgid "Manipulate PCI devices." -msgstr "Manipuler PCI-enheter." - -#: grub-core/commands/sleep.c:32 -msgid "Verbose countdown." -msgstr "Detaljert nedtelling." - -#: grub-core/commands/sleep.c:33 -msgid "Allow to interrupt with ESC." -msgstr "Tillat avbrudd ved bruk av ESC-knappen." - -#: grub-core/commands/sleep.c:109 -msgid "NUMBER_OF_SECONDS" -msgstr "ANTALL_SEKUNDER" - -#: grub-core/commands/sleep.c:110 -msgid "Wait for a specified number of seconds." -msgstr "Vent i valgt antall sekunder." - -#: grub-core/commands/syslinuxcfg.c:50 util/grub-syslinux2cfg.c:66 -msgid "root directory of the syslinux disk [default=/]." -msgstr "syslinux-diskens rotmappe (standard=/)." - -#: grub-core/commands/syslinuxcfg.c:53 util/grub-syslinux2cfg.c:72 -msgid "" -"current directory of syslinux [default is parent directory of input file]." -msgstr "" -"gjeldende plassering av syslinux (standard er inndatafilas foreldermappe)." - -#: grub-core/commands/syslinuxcfg.c:55 util/grub-syslinux2cfg.c:75 -msgid "assume input is an isolinux configuration file." -msgstr "forvent at inndata er en isolinux-oppsettsfil." - -#: grub-core/commands/syslinuxcfg.c:56 util/grub-syslinux2cfg.c:76 -msgid "assume input is a pxelinux configuration file." -msgstr "forvent at inndata er en pxelinux-oppsettsfil." - -#: grub-core/commands/syslinuxcfg.c:57 util/grub-syslinux2cfg.c:77 -msgid "assume input is a syslinux configuration file." -msgstr "forvent at inndata er en syslinux-oppsettsfil." - -#. TRANSLATORS: "syslinux config" means -#. "config as used by syslinux". -#: grub-core/commands/syslinuxcfg.c:189 -msgid "Execute syslinux config in same context" -msgstr "Kjør syslinux-oppsett i samme kontekst" - -#: grub-core/commands/syslinuxcfg.c:195 -msgid "Execute syslinux config in new context" -msgstr "Kjør syslinux-oppsett i ny kontekst" - -#: grub-core/commands/syslinuxcfg.c:201 -msgid "Execute syslinux config in same context taking only menu entries" -msgstr "Kjør syslinux-oppsett i samme kontekst, og bare ta med menyoppføringer" - -#: grub-core/commands/syslinuxcfg.c:207 -msgid "Execute syslinux config in new context taking only menu entries" -msgstr "Kjør syslinux-oppsett i ny kontekst, og bare ta med menyoppføringer" - -#: grub-core/commands/terminal.c:90 -msgid "no terminal specified" -msgstr "ingen terminal er valgt" - -#: grub-core/commands/terminal.c:112 grub-core/commands/terminal.c:139 -#, c-format -msgid "terminal `%s' isn't found" -msgstr "fant ikke terminal «%s»" - -#: grub-core/commands/terminal.c:244 -msgid "Active input terminals:" -msgstr "Aktive inndata-terminaler:" - -#: grub-core/commands/terminal.c:245 -msgid "Available input terminals:" -msgstr "Tilgjengelige inndata-terminaler:" - -#: grub-core/commands/terminal.c:261 -msgid "Active output terminals:" -msgstr "Aktive utdata-terminaler:" - -#: grub-core/commands/terminal.c:262 -msgid "Available output terminals:" -msgstr "Tilgjengelige utdata-terminaler:" - -#: grub-core/commands/terminal.c:271 grub-core/commands/terminal.c:276 -msgid "[--append|--remove] [TERMINAL1] [TERMINAL2] ..." -msgstr "[--append|--remove] [TERMINAL1] [TERMINAL2] …" - -#: grub-core/commands/terminal.c:273 -msgid "List or select an input terminal." -msgstr "Vis eller velg en inndata-terminal." - -#: grub-core/commands/terminal.c:278 -msgid "List or select an output terminal." -msgstr "Vis eller velg en utdata-terminal." - -#: grub-core/commands/test.c:444 -msgid "EXPRESSION ]" -msgstr "UTTRYKK ]" - -#: grub-core/commands/test.c:444 grub-core/commands/test.c:447 -msgid "Evaluate an expression." -msgstr "Vurder et uttrykk." - -#: grub-core/commands/test.c:447 -msgid "EXPRESSION" -msgstr "UTTRYKK" - -#: grub-core/commands/testload.c:164 -msgid "Load the same file in multiple ways." -msgstr "Last inn samme fil pÃ¥ flere mÃ¥ter." - -#: grub-core/commands/testspeed.c:35 -msgid "Specify size for each read operation" -msgstr "Velg hvor stor hver leseoperasjon skal være" - -#: grub-core/commands/testspeed.c:58 -msgid "invalid block size" -msgstr "ugyldig blokkstørrelse" - -#: grub-core/commands/testspeed.c:80 -#, c-format -msgid "File size: %s\n" -msgstr "Filstørrelse: %s\n" - -#: grub-core/commands/testspeed.c:83 -#, c-format -msgid "Elapsed time: %d.%03d s \n" -msgstr "MedgÃ¥tt tid: %d.%03d s \n" - -#: grub-core/commands/testspeed.c:92 -#, c-format -msgid "Speed: %s \n" -msgstr "Hastighet: %s \n" - -#: grub-core/commands/testspeed.c:107 -msgid "[-s SIZE] FILENAME" -msgstr "[-s STØRR] FILNAVN" - -#: grub-core/commands/testspeed.c:108 -msgid "Test file read speed." -msgstr "Test lesehastighet pÃ¥ fil." - -#: grub-core/commands/time.c:38 grub-core/script/execute.c:974 -msgid "no command is specified" -msgstr "ingen kommando er valgt" - -#: grub-core/commands/time.c:50 -#, c-format -msgid "Elapsed time: %d.%03d seconds \n" -msgstr "MedgÃ¥tt tid: %d.%03d sekunder \n" - -#: grub-core/commands/time.c:61 -msgid "COMMAND [ARGS]" -msgstr "KOMMANDO [ARGU]" - -#: grub-core/commands/time.c:62 -msgid "Measure time used by COMMAND" -msgstr "MÃ¥l hvor lang tid valgt KOMMANDO bruker" - -#: grub-core/commands/tr.c:33 -msgid "Translate to upper case." -msgstr "Gjør alle bokstaver store." - -#: grub-core/commands/tr.c:34 -msgid "Translate to lower case." -msgstr "Gjør alle bokstaver smÃ¥." - -#: grub-core/commands/tr.c:119 -msgid "[OPTIONS] [SET1] [SET2] [STRING]" -msgstr "[VALG] [SETT1] [SETT2] [STRENG]" - -#: grub-core/commands/tr.c:120 -msgid "Translate SET1 characters to SET2 in STRING." -msgstr "Gjør om tegn i SETT1 til SETT2 i STRENG." - -#. TRANSLATORS: it's a command description. -#: grub-core/commands/true.c:50 -msgid "Do nothing, successfully." -msgstr "Gjør ingenting, med vellykket («true») status." - -#. TRANSLATORS: it's a command description. -#: grub-core/commands/true.c:54 -msgid "Do nothing, unsuccessfully." -msgstr "Gjør ingenting, med mislykket («false») status." - -#: grub-core/commands/usbtest.c:221 -msgid "Test USB support." -msgstr "Test USB-støtte." - -#: grub-core/commands/verifiers.c:120 -#, c-format -msgid "verification requested but nobody cares: %s" -msgstr "bekreftelse forespurt, men ingen bryr seg: %s" - -#: grub-core/commands/verifiers.c:140 -msgid "big file signature isn't implemented yet" -msgstr "stor filsignatur er ikke implementert enda" - -#: grub-core/commands/videoinfo.c:61 -msgid "Text-only " -msgstr "Bare tekst" - -#. TRANSLATORS: "Direct color" is a mode when the color components -#. are written dirrectly into memory. -#: grub-core/commands/videoinfo.c:66 -#, c-format -msgid "Direct color, mask: %d/%d/%d/%d pos: %d/%d/%d/%d" -msgstr "Direktefarge, maske: %d/%d/%d/%d pos.: %d/%d/%d/%d" - -#. TRANSLATORS: In "paletted color" mode you write the index of the color -#. in the palette. Synonyms include "packed pixel". -#: grub-core/commands/videoinfo.c:78 -msgid "Paletted " -msgstr "I palett" - -#: grub-core/commands/videoinfo.c:80 -msgid "YUV " -msgstr "YUV" - -#. TRANSLATORS: "Planar" is the video memory where you have to write -#. in several different banks "plans" to control the different color -#. components of the same pixel. -#: grub-core/commands/videoinfo.c:85 -msgid "Planar " -msgstr "Planar " - -#: grub-core/commands/videoinfo.c:87 -msgid "Hercules " -msgstr "Hercules " - -#: grub-core/commands/videoinfo.c:89 -msgid "CGA " -msgstr "CGA " - -#. TRANSLATORS: Non-chain 4 is a 256-color planar -#. (unchained) video memory mode. -#: grub-core/commands/videoinfo.c:93 -msgid "Non-chain 4 " -msgstr "Non-chain 4 " - -#: grub-core/commands/videoinfo.c:95 -msgid "Monochrome " -msgstr "Monokromatisk" - -#: grub-core/commands/videoinfo.c:97 -msgid "Unknown video mode " -msgstr "Ukjent videomodus" - -#: grub-core/commands/videoinfo.c:111 -msgid " EDID checksum invalid" -msgstr " Ugyldig EDID-kontrollsum" - -#: grub-core/commands/videoinfo.c:116 -#, c-format -msgid " EDID version: %u.%u\n" -msgstr " EDID-versjon: %u.%u\n" - -#: grub-core/commands/videoinfo.c:120 -#, c-format -msgid " Preferred mode: %ux%u\n" -msgstr " Foretrukket modus: %ux%u\n" - -#: grub-core/commands/videoinfo.c:123 -msgid " No preferred mode available\n" -msgstr " Ingen foretrukket modus tilgjengelig\n" - -#: grub-core/commands/videoinfo.c:146 grub-core/video/video.c:490 -#: grub-core/video/video.c:498 grub-core/video/video.c:509 -#: grub-core/video/video.c:520 grub-core/video/video.c:528 -#, c-format -msgid "invalid video mode specification `%s'" -msgstr "«%s» er et ugyldig videomodus-valg" - -#: grub-core/commands/videoinfo.c:168 -msgid "List of supported video modes:" -msgstr "Liste over støttede videomoduser:" - -#: grub-core/commands/videoinfo.c:169 -msgid "Legend: mask/position=red/green/blue/reserved" -msgstr "Forklaring: maske/posisjon=rød/grønn/blÃ¥/reservert" - -#: grub-core/commands/videoinfo.c:176 -#, c-format -msgid "Adapter `%s':\n" -msgstr "Adapter «%s»:\n" - -#: grub-core/commands/videoinfo.c:180 -msgid " No info available" -msgstr " Ingen informasjon tilgjengelig om denne enheten" - -#: grub-core/commands/videoinfo.c:198 -msgid " Failed to initialize video adapter" -msgstr " Klarte ikke Ã¥ starte opp videoadapter" - -#. TRANSLATORS: "x" has to be entered in, -#. like an identifier, so please don't -#. use better Unicode codepoints. -#: grub-core/commands/videoinfo.c:239 grub-core/commands/videoinfo.c:248 -msgid "[WxH[xD]]" -msgstr "[WxH[xD]]" - -#: grub-core/commands/videoinfo.c:240 grub-core/commands/videoinfo.c:249 -msgid "" -"List available video modes. If resolution is given show only modes matching " -"it." -msgstr "" -"Vis tilgjengelige videomoduser. Hvis oppløsning er valgt, vises kun moduser " -"som samsvarer med den." - -#. TRANSLATORS: "x" has to be entered in, -#. like an identifier, so please don't -#. use better Unicode codepoints. -#: grub-core/commands/videotest.c:225 -msgid "[WxH]" -msgstr "[WxH]" - -#. TRANSLATORS: Here, on the other hand, it's -#. nicer to use unicode cross instead of x. -#: grub-core/commands/videotest.c:228 -msgid "Test video subsystem in mode WxH." -msgstr "Test video-undersystem i modus BreddexHøyde." - -#: grub-core/commands/videotest.c:231 -msgid "Test video subsystem." -msgstr "Test video-undersystem." - -#: grub-core/commands/xen/lsxen.c:80 grub-core/commands/xen/lsxen.c:82 -msgid "[DIR]" -msgstr "[MAPPE]" - -#: grub-core/commands/xen/lsxen.c:81 grub-core/commands/xen/lsxen.c:83 -msgid "List Xen storage." -msgstr "Vis Xen-lagringsenheter." - -#. TRANSLATORS: GRUBUUID stands for "filesystem -#. UUID as used in GRUB". -#: grub-core/commands/xnu_uuid.c:110 -msgid "[-l] GRUBUUID [VARNAME]" -msgstr "[-l] GRUB-UUID [VARNAVN]" - -#: grub-core/commands/xnu_uuid.c:111 -msgid "" -"Transform 64-bit UUID to format suitable for XNU. If -l is given keep it " -"lowercase as done by blkid." -msgstr "" -"Gjør om 64-bit-UUID til et format som kan brukes med XNU. Resultatet skrives " -"ut med smÃ¥ bokstaver - som med blkid - hvis «-l» er valgt." - -#: grub-core/disk/arc/arcdisk.c:248 grub-core/disk/efi/efidisk.c:603 -#: grub-core/disk/i386/pc/biosdisk.c:498 grub-core/disk/i386/pc/biosdisk.c:543 -#: grub-core/disk/ieee1275/nand.c:198 grub-core/disk/ieee1275/obdisk.c:527 -#: grub-core/disk/ieee1275/ofdisk.c:586 -#, c-format -msgid "failure reading sector 0x%llx from `%s'" -msgstr "det oppstod en feil ved lesing av sektor 0x%llx fra «%s»" - -#: grub-core/disk/arc/arcdisk.c:284 grub-core/disk/efi/efidisk.c:626 -#: grub-core/disk/i386/pc/biosdisk.c:548 grub-core/disk/ieee1275/ofdisk.c:606 -#, c-format -msgid "failure writing sector 0x%llx to `%s'" -msgstr "det oppstod en feil ved skriving av sektor 0x%llx til «%s»" - -#: grub-core/disk/cryptodisk.c:40 -msgid "Mount by UUID." -msgstr "Monter etter UUID." - -#. TRANSLATORS: It's still restricted to cryptodisks only. -#: grub-core/disk/cryptodisk.c:42 -msgid "Mount all." -msgstr "Monter alle." - -#: grub-core/disk/cryptodisk.c:43 -msgid "Mount all volumes with `boot' flag set." -msgstr "Monter alle volum med «boot»-flagg." - -#. TRANSLATORS: The first %s is the file being looked at, the second %s is -#. the error message. -#: grub-core/disk/cryptodisk.c:526 grub-core/kern/emu/hostdisk.c:152 -#: grub-core/kern/emu/hostdisk.c:262 grub-core/kern/emu/hostdisk.c:434 -#: grub-core/kern/emu/misc.c:168 grub-core/kern/emu/misc.c:174 -#: grub-core/kern/emu/misc.c:196 grub-core/osdep/bsd/getroot.c:92 -#: grub-core/osdep/bsd/getroot.c:168 grub-core/osdep/hurd/getroot.c:68 -#: grub-core/osdep/linux/blocklist.c:65 grub-core/osdep/linux/getroot.c:150 -#: grub-core/osdep/linux/hostdisk.c:194 grub-core/osdep/linux/hostdisk.c:421 -#: grub-core/osdep/linux/ofpath.c:417 grub-core/osdep/linux/ofpath.c:422 -#: grub-core/osdep/linux/ofpath.c:517 grub-core/osdep/linux/ofpath.c:530 -#: grub-core/osdep/sun/getroot.c:110 grub-core/osdep/windows/blocklist.c:98 -#: grub-core/tests/video_checksum.c:279 util/editenv.c:46 util/glue-efi.c:115 -#: util/glue-efi.c:120 util/glue-efi.c:130 util/grub-editenv.c:138 -#: util/grub-editenv.c:192 util/grub-file.c:83 util/grub-fstest.c:128 -#: util/grub-fstest.c:568 util/grub-install-common.c:92 -#: util/grub-install-common.c:94 util/grub-install-common.c:101 -#: util/grub-install-common.c:529 util/grub-menulst2cfg.c:53 -#: util/grub-menulst2cfg.c:68 util/grub-mkimage.c:292 util/grub-mklayout.c:504 -#: util/grub-mklayout.c:516 util/grub-mknetdir.c:133 util/grub-mknetdir.c:151 -#: util/grub-mkrescue.c:627 util/grub-mkrescue.c:631 util/grub-mkrescue.c:879 -#: util/grub-mkrescue.c:883 util/grub-mkstandalone.c:253 util/grub-mount.c:498 -#: util/grub-render-label.c:169 util/grub-script-check.c:175 -#: util/grub-syslinux2cfg.c:181 util/grub-syslinux2cfg.c:191 -#: util/grub-syslinux2cfg.c:212 util/grub-syslinux2cfg.c:228 util/misc.c:91 -#: util/render-label.c:76 util/render-label.c:163 util/render-label.c:174 -#: util/resolve.c:246 util/setup.c:783 -#, c-format -msgid "cannot open `%s': %s" -msgstr "klarte ikke Ã¥ Ã¥pne «%s». %s" - -#: grub-core/disk/cryptodisk.c:583 grub-core/disk/cryptodisk.c:628 -#: grub-core/kern/emu/hostdisk.c:270 grub-core/kern/emu/hostfs.c:142 -#: grub-core/osdep/linux/hostdisk.c:456 util/grub-editenv.c:143 -#: util/grub-editenv.c:149 util/grub-fstest.c:320 util/misc.c:111 -#, c-format -msgid "cannot seek `%s': %s" -msgstr "klarte ikke Ã¥ søke etter «%s». %s" - -#: grub-core/disk/cryptodisk.c:1144 -msgid "SOURCE|-u UUID|-a|-b" -msgstr "KILDE|-u UUID|-a|-b" - -#: grub-core/disk/cryptodisk.c:1145 -msgid "Mount a crypto device." -msgstr "Monter en kryptert enhet." - -#. TRANSLATORS: This message kicks in during the detection of -#. which modules needs to be included in core image. This happens -#. in the case of degraded RAID and means that autodetection may -#. fail to include some of modules. It's an installation time -#. message, not runtime message. -#: grub-core/disk/diskfilter.c:343 grub-core/disk/diskfilter.c:376 -#, c-format -msgid "" -"Couldn't find physical volume `%s'. Some modules may be missing from core " -"image." -msgstr "" -"Fant ikke det fysiske volumet «%s». Det er mulig at kjernebildet mangler " -"enkelte moduler." - -#: grub-core/disk/diskfilter.c:480 -#, c-format -msgid "physical volume %s not found" -msgstr "fant ikke fysisk volum %s" - -#: grub-core/disk/efi/efidisk.c:600 grub-core/disk/efi/efidisk.c:623 -#, c-format -msgid "no media in `%s'" -msgstr "det er ingen medium i «%s»" - -#: grub-core/disk/geli.c:75 -msgid "Couldn't load sha256" -msgstr "Klarte ikke Ã¥ laste inn sha256" - -#: grub-core/disk/geli.c:85 -msgid "Couldn't load sha512" -msgstr "Klarte ikke Ã¥ laste inn sha512" - -#: grub-core/disk/geli.c:216 grub-core/disk/geli.c:220 -msgid "couldn't read ELI metadata" -msgstr "klarte ikke Ã¥ lese ELI-metadata" - -#: grub-core/disk/geli.c:231 -msgid "wrong ELI magic or version" -msgstr "feil ELI-magi eller -versjon" - -#: grub-core/disk/geli.c:435 grub-core/disk/luks.c:329 -msgid "Attempting to decrypt master key..." -msgstr "Prøver Ã¥ dekryptere hovednøkkel …" - -#: grub-core/disk/geli.c:441 grub-core/disk/luks.c:347 -#, c-format -msgid "Enter passphrase for %s%s%s (%s): " -msgstr "Skriv inn passordfrase for %s%s%s (%s): " - -#. TRANSLATORS: It's a cryptographic key slot: one element of an array -#. where each element is either empty or holds a key. -#: grub-core/disk/geli.c:530 grub-core/disk/luks.c:451 -#, c-format -msgid "Slot %d opened\n" -msgstr "Skuff %d er Ã¥pnet\n" - -#: grub-core/disk/i386/pc/biosdisk.c:470 grub-core/disk/i386/pc/biosdisk.c:524 -#: grub-core/disk/i386/pc/biosdisk.c:534 grub-core/kern/disk_common.c:47 -#, c-format -msgid "attempt to read or write outside of disk `%s'" -msgstr "forsøk Ã¥ lese eller skrive utenfor disken «%s»" - -#: grub-core/disk/i386/pc/biosdisk.c:491 grub-core/disk/i386/pc/biosdisk.c:611 -#: grub-core/disk/scsi.c:726 -msgid "cannot write to CD-ROM" -msgstr "klarte ikke Ã¥ skrive til CD-ROM" - -#: grub-core/disk/i386/pc/biosdisk.c:662 -msgid "" -"Native disk drivers are in use. Refusing to use firmware disk interface." -msgstr "" -"Du bruker lokale diskdrivere. Disk-grensesnitt pÃ¥ fastvare blir ikke brukt." - -#. TRANSLATORS: it's a partition for embedding, -#. not a partition embed into something. GRUB -#. install tools put core.img into a place -#. usable for bootloaders (called generically -#. "embedding zone") and this operation is -#. called "embedding". -#: grub-core/disk/ldm.c:1015 -msgid "your LDM Embedding Partition is too small; embedding won't be possible" -msgstr "LDM-innebyggingspartisjonen er for liten. Innebygging kan ikke utføres" - -#. TRANSLATORS: it's a partition for embedding, -#. not a partition embed into something. -#: grub-core/disk/ldm.c:1033 -msgid "this LDM has no Embedding Partition; embedding won't be possible" -msgstr "" -"denne LDM-enheten har ingen innebyggingspartisjon. Innebygging kan ikke " -"utføres" - -#. TRANSLATORS: The disk is simply removed from the list of available ones, -#. not wiped, avoid to scare user. -#: grub-core/disk/loopback.c:45 -msgid "Delete the specified loopback drive." -msgstr "Slett valgt filmonteringsenhet." - -#: grub-core/disk/loopback.c:237 -msgid "[-d] DEVICENAME FILE." -msgstr "[-d] ENHETSNAVN FIL." - -#. TRANSLATORS: The file itself is not destroyed -#. or transformed into drive. -#: grub-core/disk/loopback.c:240 -msgid "Make a virtual drive from a file." -msgstr "Lag en virtuell enhet av en fil." - -#: grub-core/efiemu/i386/loadcore32.c:111 -#: grub-core/efiemu/i386/loadcore64.c:125 grub-core/kern/arm/dl.c:256 -#: grub-core/kern/arm64/dl.c:187 grub-core/kern/i386/dl.c:75 -#: grub-core/kern/ia64/dl.c:140 grub-core/kern/mips/dl.c:258 -#: grub-core/kern/powerpc/dl.c:163 grub-core/kern/riscv/dl.c:334 -#: grub-core/kern/sparc64/dl.c:180 grub-core/kern/x86_64/dl.c:110 -#: util/grub-mkimagexx.c:756 util/grub-mkimagexx.c:881 -#: util/grub-mkimagexx.c:945 util/grub-mkimagexx.c:1026 -#: util/grub-mkimagexx.c:1120 util/grub-mkimagexx.c:1222 -#: util/grub-mkimagexx.c:1413 util/grub-mkimagexx.c:1628 -#: util/grub-mkimagexx.c:1665 util/grub-mkimagexx.c:1697 -#: util/grub-mkimagexx.c:1767 util/grub-mkimagexx.c:1797 -#, c-format -msgid "relocation 0x%x is not implemented yet" -msgstr "flytting av 0x%x er ikke implementert ennÃ¥" - -#: grub-core/efiemu/loadcore.c:200 grub-core/efiemu/loadcore.c:237 -#: grub-core/loader/i386/bsdXX.c:317 util/grub-mkimagexx.c:2360 -msgid "no symbol table" -msgstr "ingen symboltabell" - -#: grub-core/efiemu/loadcore.c:346 grub-core/kern/dl.c:609 -#: grub-core/loader/ia64/efi/linux.c:345 grub-core/loader/mips/linux.c:248 -#: grub-core/loader/multiboot_elfxx.c:76 -#: grub-core/loader/powerpc/ieee1275/linux.c:280 -#: grub-core/loader/sparc64/ieee1275/linux.c:320 -msgid "this ELF file is not of the right type" -msgstr "denne ELF-fila er av feil type" - -#: grub-core/efiemu/main.c:313 -msgid "Load and initialize EFI emulator." -msgstr "Last inn og start opp EFI-emulator." - -#: grub-core/efiemu/main.c:317 -msgid "Finalize loading of EFI emulator." -msgstr "Ferdigstill innlasting av EFI-emulator." - -#: grub-core/efiemu/main.c:320 -msgid "Unload EFI emulator." -msgstr "SlÃ¥ av EFI-emulator." - -#: grub-core/efiemu/symbols.c:92 grub-core/kern/dl.c:376 -#, c-format -msgid "symbol `%s' not found" -msgstr "fant ikke symbolet «%s»" - -#: grub-core/font/font_cmd.c:52 -msgid "Loaded fonts:" -msgstr "Skrifttyper i bruk:" - -#: grub-core/font/font_cmd.c:74 -msgid "FILE..." -msgstr "FIL …" - -#: grub-core/font/font_cmd.c:75 -msgid "Specify one or more font files to load." -msgstr "Velg én eller flere skrifttype-filer som skal lastes inn." - -#: grub-core/font/font_cmd.c:78 -msgid "List the loaded fonts." -msgstr "Vis en liste over skrifttyper som er i bruk." - -#: grub-core/fs/archelp.c:216 grub-core/fs/archelp.c:278 -#: grub-core/fs/btrfs.c:1815 grub-core/fs/fshelp.c:227 grub-core/fs/jfs.c:736 -#: grub-core/fs/minix.c:369 grub-core/fs/ufs.c:454 -msgid "too deep nesting of symlinks" -msgstr "det er for mange nivÃ¥er av symbolske metalenker" - -#: grub-core/fs/bfs.c:228 grub-core/fs/fshelp.c:368 grub-core/fs/minix.c:270 -#: grub-core/kern/file.c:156 -msgid "attempt to read past the end of file" -msgstr "prøv Ã¥ lese forbi slutten av fila" - -#: grub-core/fs/btrfs.c:1698 grub-core/fs/btrfs.c:1957 -#: grub-core/fs/fshelp.c:189 grub-core/fs/fshelp.c:309 grub-core/fs/jfs.c:431 -#: grub-core/fs/minix.c:414 grub-core/fs/minix.c:562 -#: grub-core/fs/reiserfs.c:732 grub-core/fs/ufs.c:531 grub-core/fs/ufs.c:671 -#: grub-core/fs/zfs/zfs.c:2831 grub-core/fs/zfs/zfs.c:4247 -msgid "not a directory" -msgstr "ikke en mappe" - -#: grub-core/fs/btrfs.c:2063 grub-core/fs/fshelp.c:307 grub-core/fs/jfs.c:835 -#: grub-core/fs/zfs/zfs.c:3801 -msgid "not a regular file" -msgstr "ikke en vanlig fil" - -#: grub-core/fs/btrfs.c:2157 grub-core/fs/zfs/zfs.c:4333 -#: grub-core/partmap/msdos.c:400 -msgid "your core.img is unusually large. It won't fit in the embedding area" -msgstr "" -"core.img-fila di er unormalt stor. Den kan ikke legges i innebyggingsomrÃ¥det" - -#: grub-core/fs/fshelp.c:281 grub-core/fs/minix.c:630 grub-core/fs/ufs.c:661 -#: grub-core/fs/ufs.c:757 grub-core/kern/fs.c:168 grub-core/kern/fs.c:180 -#, c-format -msgid "invalid file name `%s'" -msgstr "«%s» er et ugyldig filnavn" - -#: grub-core/fs/zfs/zfs.c:453 -msgid "checksum verification failed" -msgstr "bekreftelse av kontrollsum mislyktes" - -#: grub-core/fs/zfs/zfs.c:1465 -msgid "couldn't find a necessary member device of multi-device filesystem" -msgstr "fant ikke et nødvendig medlem av tverrenhet-filsystem" - -#: grub-core/fs/zfs/zfscrypt.c:292 -msgid "no decryption key available" -msgstr "ingen dekrypteringsnøkkel tilgjengelig" - -#: grub-core/fs/zfs/zfscrypt.c:304 -msgid "MAC verification failed" -msgstr "MAC-bekreftelse mislyktes" - -#: grub-core/fs/zfs/zfscrypt.c:413 -msgid "Assume input is raw." -msgstr "Forvent rÃ¥-inndata." - -#: grub-core/fs/zfs/zfscrypt.c:414 -msgid "Assume input is hex." -msgstr "Forvent heksadesimal inndata." - -#: grub-core/fs/zfs/zfscrypt.c:415 -msgid "Assume input is passphrase." -msgstr "Forvent at inndata er en passordfrase." - -#: grub-core/fs/zfs/zfscrypt.c:437 util/grub-fstest.c:553 util/grub-mount.c:483 -msgid "Enter ZFS password: " -msgstr "Skriv inn ZFS-passord:" - -#: grub-core/fs/zfs/zfscrypt.c:476 -msgid "[-h|-p|-r] [FILE]" -msgstr "[-h|-p|-r] [FIL]" - -#: grub-core/fs/zfs/zfscrypt.c:477 -msgid "Import ZFS wrapping key stored in FILE." -msgstr "Importer ZFS-innpakningsnøkkel som ligger i valgt FIL." - -#: grub-core/fs/zfs/zfsinfo.c:51 -msgid "Virtual device is removed" -msgstr "Virtuell enhet er fjernet" - -#: grub-core/fs/zfs/zfsinfo.c:57 -msgid "Virtual device is faulted" -msgstr "Virtuell enhet har problemer" - -#: grub-core/fs/zfs/zfsinfo.c:63 -msgid "Virtual device is offline" -msgstr "Virtuell enhet er frakoblet" - -#. TRANSLATORS: degraded doesn't mean broken but that some of -#. component are missing but virtual device as whole is still usable. -#: grub-core/fs/zfs/zfsinfo.c:70 -msgid "Virtual device is degraded" -msgstr "Virtuell enhet er degradert" - -#: grub-core/fs/zfs/zfsinfo.c:73 -msgid "Virtual device is online" -msgstr "Virtuell enhet er tilkoblet" - -#: grub-core/fs/zfs/zfsinfo.c:89 -msgid "Incorrect virtual device: no type available" -msgstr "Feil virtuell enhet: ingen type tilgjengelig" - -#. TRANSLATORS: The virtual devices form a tree (in graph-theoretical -#. sense). The nodes like mirror or raidz have children: member devices. -#. The "real" devices which actually store data are called "leafs" -#. (again borrowed from graph theory) and can be either disks -#. (or partitions) or files. -#: grub-core/fs/zfs/zfsinfo.c:105 -msgid "Leaf virtual device (file or disk)" -msgstr "Virtuell blad-enhet (fil eller disk)" - -#: grub-core/fs/zfs/zfsinfo.c:113 -msgid "Bootpath: unavailable\n" -msgstr "Oppstartssti: utilgjengelig\n" - -#: grub-core/fs/zfs/zfsinfo.c:115 -#, c-format -msgid "Bootpath: %s\n" -msgstr "Oppstartssti: %s\n" - -#: grub-core/fs/zfs/zfsinfo.c:120 -msgid "Path: unavailable" -msgstr "Sti: utilgjengelig" - -#: grub-core/fs/zfs/zfsinfo.c:122 -#, c-format -msgid "Path: %s\n" -msgstr "Sti: %s\n" - -#: grub-core/fs/zfs/zfsinfo.c:127 -msgid "Devid: unavailable" -msgstr "Enhet-id: utilgjengelig" - -#: grub-core/fs/zfs/zfsinfo.c:129 -#, c-format -msgid "Devid: %s\n" -msgstr "Enhet-id: %s\n" - -#: grub-core/fs/zfs/zfsinfo.c:148 -msgid "This VDEV is a mirror" -msgstr "Denne VDEV-en er et speil" - -#: grub-core/fs/zfs/zfsinfo.c:153 -#, c-format -msgid "This VDEV is a RAIDZ%llu\n" -msgstr "Denne VDEV-en er en RAIDZ%llu\n" - -#: grub-core/fs/zfs/zfsinfo.c:158 -msgid "Incorrect VDEV" -msgstr "Feil VDEV" - -#: grub-core/fs/zfs/zfsinfo.c:161 -#, c-format -msgid "VDEV with %d children\n" -msgstr "VDEV med %d avkom\n" - -#. TRANSLATORS: it's the element carying the number %d, not -#. total element number. And the number itself is fine, -#. only the element isn't. -#. -#: grub-core/fs/zfs/zfsinfo.c:177 -#, c-format -msgid "VDEV element number %d isn't correct\n" -msgstr "VDEV-element nummer %d er feil\n" - -#. TRANSLATORS: it's the element carying the number %d, not -#. total element number. This is used in enumeration -#. "Element number 1", "Element number 2", ... -#: grub-core/fs/zfs/zfsinfo.c:184 -#, c-format -msgid "VDEV element number %d:\n" -msgstr "VDEV-element nummer %d:\n" - -#: grub-core/fs/zfs/zfsinfo.c:193 -#, c-format -msgid "Unknown virtual device type: %s\n" -msgstr "Ukjent virtuell enhetstype: %s\n" - -#. TRANSLATORS: Here we speak about ZFS pools it's semi-marketing, -#. semi-technical term by Sun/Oracle and should be translated in sync with -#. other ZFS-related software and documentation. -#: grub-core/fs/zfs/zfsinfo.c:254 -msgid "Pool state: active" -msgstr "Pool-status: aktivt" - -#: grub-core/fs/zfs/zfsinfo.c:255 -msgid "Pool state: exported" -msgstr "Pool-status: eksportert" - -#: grub-core/fs/zfs/zfsinfo.c:256 -msgid "Pool state: destroyed" -msgstr "Pool-status: ødelagt" - -#: grub-core/fs/zfs/zfsinfo.c:257 -msgid "Pool state: reserved for hot spare" -msgstr "Pool-status: reservert" - -#: grub-core/fs/zfs/zfsinfo.c:258 -msgid "Pool state: level 2 ARC device" -msgstr "Pool-status: ARC-enhet pÃ¥ nivÃ¥ 2" - -#: grub-core/fs/zfs/zfsinfo.c:259 -msgid "Pool state: uninitialized" -msgstr "Pool-status: ikke lastet inn" - -#: grub-core/fs/zfs/zfsinfo.c:260 -msgid "Pool state: unavailable" -msgstr "Pool-status: utilgjengelig" - -#: grub-core/fs/zfs/zfsinfo.c:261 -msgid "Pool state: potentially active" -msgstr "Pool-status: potensielt aktiv" - -#: grub-core/fs/zfs/zfsinfo.c:306 -msgid "Pool name: unavailable" -msgstr "Pool-status: utilgjengelig" - -#: grub-core/fs/zfs/zfsinfo.c:308 -#, c-format -msgid "Pool name: %s\n" -msgstr "Pool-navn: %s\n" - -#: grub-core/fs/zfs/zfsinfo.c:313 -msgid "Pool GUID: unavailable" -msgstr "Pool-GUID: utilgjengelig" - -#: grub-core/fs/zfs/zfsinfo.c:315 -#, c-format -msgid "Pool GUID: %016llx\n" -msgstr "Pool-GUID: %016llx\n" - -#: grub-core/fs/zfs/zfsinfo.c:320 -msgid "Unable to retrieve pool state" -msgstr "Klarte ikke Ã¥ hente pool-status" - -#: grub-core/fs/zfs/zfsinfo.c:322 -msgid "Unrecognized pool state" -msgstr "Ukjent pool-status" - -#. TRANSLATORS: There are undetermined number of virtual devices -#. in a device tree, not just one. -#. -#: grub-core/fs/zfs/zfsinfo.c:332 -msgid "No virtual device tree available" -msgstr "Intet virtuelt enhetstre tilgjengelig" - -#: grub-core/fs/zfs/zfsinfo.c:431 -msgid "Print ZFS info about DEVICE." -msgstr "Skriv ut ZFS-info om valgt ENHET" - -#: grub-core/fs/zfs/zfsinfo.c:433 -msgid "FILESYSTEM [VARIABLE]" -msgstr "FILSYSTEM [VARIABEL]" - -#: grub-core/fs/zfs/zfsinfo.c:434 -msgid "Print ZFS-BOOTFSOBJ or store it into VARIABLE" -msgstr "Skriv ut ZFS-BOOTFSOBJ, eller lagre informasjonen i valgt VARIABEL" - -#. TRANSLATORS: at this position GRUB waits for the user to do an action -#. in remote debugger, namely to tell it to establish connection. -#: grub-core/gdb/gdb.c:48 -msgid "Now connect the remote debugger, please." -msgstr "NÃ¥ kan du koble til den eksterne feilsøkeren." - -#. TRANSLATORS: GDB stub is a small part of -#. GDB functionality running on local host -#. which allows remote debugger to -#. connect to it. -#: grub-core/gdb/gdb.c:84 -msgid "Start GDB stub on given port" -msgstr "Start GDB-test pÃ¥ valgt port" - -#. TRANSLATORS: this refers to triggering -#. a breakpoint so that the user will land -#. into GDB. -#: grub-core/gdb/gdb.c:89 -msgid "Break into GDB" -msgstr "Bryt inn i GDB" - -#: grub-core/gdb/gdb.c:91 -msgid "Stop GDB stub" -msgstr "Stans GDB-testing" - -#: grub-core/gettext/gettext.c:85 -msgid "premature end of file" -msgstr "for tidlig slutt pÃ¥ fil" - -#. TRANSLATORS: It refers to passing the string through gettext. -#. So it's "translate" in the same meaning as in what you're -#. doing now. -#. -#: grub-core/gettext/gettext.c:525 -msgid "Translates the string with the current settings." -msgstr "OVersetter strengen med gjeldende oppsett." - -#: grub-core/gfxmenu/gui_label.c:186 grub-core/normal/menu_text.c:184 -msgid "" -"Press enter to boot the selected OS, `e' to edit the commands before booting " -"or `c' for a command-line. ESC to return previous menu." -msgstr "" -"Trykk enter for Ã¥ starte valgt OS, «e» for Ã¥ redigere kommandoer før " -"oppstart eller «c» for en kommandolinje. ESC tar deg tilbake til forrige " -"meny." - -#: grub-core/gfxmenu/gui_label.c:190 grub-core/normal/menu_text.c:192 -msgid "" -"Press enter to boot the selected OS, `e' to edit the commands before booting " -"or `c' for a command-line." -msgstr "" -"Trykk enter for Ã¥ starte valgt OS, «e» for Ã¥ redigere kommandoer før " -"oppstart eller «c» for en kommandolinje." - -#: grub-core/gfxmenu/gui_label.c:194 -msgid "enter: boot, `e': options, `c': cmd-line" -msgstr "enter: start opp, «e»: valg, «c»: kmnd.linje" - -#: grub-core/gfxmenu/gui_progress_bar.c:339 grub-core/normal/menu_text.c:446 -#, c-format -msgid "The highlighted entry will be executed automatically in %ds." -msgstr "Valgt oppføring startes automatisk om %ds." - -#. TRANSLATORS: 's' stands for seconds. -#. It's a standalone timeout notification. -#. Please use the short form in your language. -#: grub-core/gfxmenu/gui_progress_bar.c:344 -#, c-format -msgid "%ds remaining." -msgstr "%ds gjenstÃ¥r." - -#. TRANSLATORS: 's' stands for seconds. -#. It's a standalone timeout notification. -#. Please use the shortest form available in you language. -#: grub-core/gfxmenu/gui_progress_bar.c:349 grub-core/normal/menu_text.c:444 -#: grub-core/normal/menu_text.c:462 -#, c-format -msgid "%ds" -msgstr "%ds" - -#: grub-core/gfxmenu/view.c:103 -msgid "GRUB Boot Menu" -msgstr "GRUB oppstartsmeny" - -#: grub-core/hello/hello.c:36 -msgid "Hello World" -msgstr "Hei, verden" - -#: grub-core/hello/hello.c:45 -msgid "Say `Hello World'." -msgstr "Si «Hei, verden»." - -#: grub-core/io/gzio.c:409 grub-core/kern/file.c:210 -msgid "attempt to seek outside of the file" -msgstr "prøv Ã¥ søke utenfor fila" - -#. TRANSLATORS: It's about given file having some strange format, not -#. complete lack of gzip support. -#: grub-core/io/gzio.c:1228 grub-core/io/gzio.c:1237 grub-core/io/gzio.c:1244 -msgid "unsupported gzip format" -msgstr "gzip-formatet støttes ikke" - -#: grub-core/io/lzopio.c:511 -msgid "lzop file corrupted" -msgstr "lzop-fil er ødelagt" - -#: grub-core/io/xzio.c:278 -msgid "xz file corrupted or unsupported block options" -msgstr "xz-fil er ødelagt, eller blokkvalgene støttes ikke" - -#: grub-core/kern/arm/dl.c:277 grub-core/kern/arm64/dl.c:44 -#: grub-core/kern/i386/dl.c:36 grub-core/kern/ia64/dl.c:41 -#: grub-core/kern/mips/dl.c:48 grub-core/kern/powerpc/dl.c:36 -#: grub-core/kern/riscv/dl.c:47 grub-core/kern/sparc64/dl.c:36 -#: grub-core/kern/x86_64/dl.c:36 grub-core/loader/i386/bsd.c:1445 -#: grub-core/loader/i386/bsdXX.c:49 grub-core/loader/ia64/efi/linux.c:341 -#: grub-core/loader/mips/linux.c:298 grub-core/loader/multiboot.c:232 -#: grub-core/loader/multiboot_elfxx.c:73 -#: grub-core/loader/powerpc/ieee1275/linux.c:294 -#: grub-core/loader/sparc64/ieee1275/linux.c:331 -msgid "invalid arch-dependent ELF magic" -msgstr "ugyldig arkitektur-avhengig ELF-magi" - -#: grub-core/kern/corecmd.c:178 -msgid "[ENVVAR=VALUE]" -msgstr "[ENVVAR=VERDI]" - -#: grub-core/kern/corecmd.c:179 -msgid "Set an environment variable." -msgstr "Gi verdi til en miljøvariabel" - -#: grub-core/kern/corecmd.c:183 -msgid "ENVVAR" -msgstr "ENVVAR" - -#: grub-core/kern/corecmd.c:184 -msgid "Remove an environment variable." -msgstr "Fjern en miljøvariabel." - -#: grub-core/kern/corecmd.c:186 -msgid "[ARG]" -msgstr "[ARG]" - -#: grub-core/kern/corecmd.c:186 -msgid "List devices or files." -msgstr "Vis enheter eller files." - -#: grub-core/kern/corecmd.c:188 -msgid "Insert a module." -msgstr "Sett inn en modul." - -#: grub-core/kern/disk.c:236 grub-core/net/net.c:1390 -#, c-format -msgid "disk `%s' not found" -msgstr "fant ikke disken «%s»" - -#: grub-core/kern/disk_common.c:27 -msgid "attempt to read or write outside of partition" -msgstr "prøv Ã¥ lese eller skrive utenfor partisjonen" - -#: grub-core/kern/dl.c:212 grub-core/kern/elf.c:61 grub-core/kern/elf.c:79 -#: grub-core/loader/i386/bsdXX.c:46 grub-core/loader/ia64/efi/linux.c:335 -#: grub-core/loader/multiboot_elfxx.c:69 -msgid "invalid arch-independent ELF magic" -msgstr "ugyldig arkitektur-uavhengig ELF-magi" - -#. TRANSLATORS: it refers to the lack of free slots. -#: grub-core/kern/emu/hostdisk.c:208 grub-core/kern/emu/hostdisk.c:466 -msgid "device count exceeds limit" -msgstr "det finnes flere enheter enn grensa tillater" - -#: grub-core/kern/emu/hostdisk.c:342 util/editenv.c:54 util/grub-editenv.c:197 -#: util/grub-fstest.c:191 util/grub-mkfont.c:796 util/misc.c:114 -#: util/misc.c:129 util/setup.c:788 -#, c-format -msgid "cannot write to `%s': %s" -msgstr "klarte ikke Ã¥ skrive til «%s». %s" - -#. TRANSLATORS: Only one entry is ignored. However the suggestion -#. is to correct/delete the whole file. -#. device.map is a file indicating which -#. devices are available at boot time. Fedora populated it with -#. entries like (hd0,1) /dev/sda1 which would mean that every -#. partition is a separate disk for BIOS. Such entries were -#. inactive in GRUB due to its bug which is now gone. Without -#. this additional check these entries would be harmful now. -#. -#: grub-core/kern/emu/hostdisk.c:503 -#, c-format -msgid "" -"the device.map entry `%s' is invalid. Ignoring it. Please correct or delete " -"your device.map" -msgstr "" -"device.map-oppføringa «%s» er ugyldig, og blir ignorert. Du bør korrigere " -"eller slette device.map" - -#. TRANSLATORS: device.map is a filename. Not to be translated. -#. device.map specifies disk correspondance overrides. Previously -#. one could create any kind of device name with this. Due to -#. some problems we decided to limit it to just a handful -#. possibilities. -#: grub-core/kern/emu/hostdisk.c:555 -#, c-format -msgid "" -"the drive name `%s' in device.map is incorrect. Using %s instead. Please use " -"the form [hfc]d[0-9]* (E.g. `hd0' or `cd')" -msgstr "" -"enhetsnavnet «%s» i device.map er feil. Bruker %s i stedet. Bruk formen " -"[hfc]d[0-9]* (F.eks. «hd0» eller «cd»)" - -#: grub-core/kern/emu/hostfs.c:76 grub-core/kern/emu/hostfs.c:109 -#, c-format -msgid "can't open `%s': %s" -msgstr "klarte ikke Ã¥ Ã¥pne «%s». %s" - -#: grub-core/kern/emu/main.c:99 util/grub-fstest.c:516 util/grub-mount.c:452 -msgid "DEVICE_NAME" -msgstr "DEVICE_NAME" - -#: grub-core/kern/emu/main.c:99 grub-core/loader/i386/bsd.c:136 -#: grub-core/loader/i386/bsd.c:169 util/grub-fstest.c:516 util/grub-mount.c:452 -msgid "Set root device." -msgstr "Velg rotenhet." - -#. TRANSLATORS: There are many devices in device map. -#: grub-core/kern/emu/main.c:102 util/grub-probe.c:733 util/grub-setup.c:85 -#, c-format -msgid "use FILE as the device map [default=%s]" -msgstr "bruk valgt FIL som enhetskart [standard=%s]" - -#. TRANSLATORS: There are many devices in device map. -#: grub-core/kern/emu/main.c:105 -msgid "use FILE as memdisk" -msgstr "bruk valgt FIL som minnedisk" - -#: grub-core/kern/emu/main.c:107 util/grub-setup.c:83 -#, c-format -msgid "use GRUB files in the directory DIR [default=%s]" -msgstr "bruk GRUB-filer i mappa DIR [standard=%s]" - -#: grub-core/kern/emu/main.c:108 include/grub/util/install.h:67 -#: util/grub-editenv.c:58 util/grub-fstest.c:525 util/grub-glue-efi.c:58 -#: util/grub-macbless.c:104 util/grub-mkfont.c:962 util/grub-mkimage.c:84 -#: util/grub-mklayout.c:56 util/grub-mount.c:458 util/grub-probe.c:735 -#: util/grub-render-label.c:74 util/grub-script-check.c:52 util/grub-setup.c:90 -#: util/grub-syslinux2cfg.c:78 -msgid "print verbose messages." -msgstr "skriv ut detaljerte meldinger" - -#: grub-core/kern/emu/main.c:109 grub-core/lib/gnulib/argp-parse.c:85 -msgid "SECS" -msgstr "SECS" - -#: grub-core/kern/emu/main.c:109 -msgid "wait until a debugger will attach" -msgstr "vent pÃ¥ en feilsøker" - -#: grub-core/kern/emu/main.c:171 util/grub-macbless.c:143 -#: util/grub-mkrelpath.c:61 util/grub-probe.c:874 util/grub-script-check.c:75 -#: util/grub-setup.c:203 -#, c-format -msgid "Unknown extra argument `%s'." -msgstr "«%s» er et ukjent ekstraargument." - -#: grub-core/kern/emu/main.c:185 -msgid "GRUB emulator." -msgstr "GRUB-emulator." - -#: grub-core/kern/emu/main.c:213 util/grub-editenv.c:262 -#: util/grub-glue-efi.c:110 util/grub-macbless.c:173 util/grub-mkfont.c:1177 -#: util/grub-mkimage.c:266 util/grub-mklayout.c:494 -#: util/grub-mkpasswd-pbkdf2.c:132 util/grub-mkrelpath.c:96 -#: util/grub-probe.c:863 util/grub-render-label.c:152 -#: util/grub-script-check.c:160 util/grub-setup.c:262 -#: util/grub-syslinux2cfg.c:163 -msgid "Error in parsing command line arguments\n" -msgstr "Feil ved tolking av kommandolinje-argumenter\n" - -#. TRANSLATORS: In this case GRUB tells user what he has to do. -#: grub-core/kern/emu/main.c:248 -#, c-format -msgid "Run `gdb %s %d', and set ARGS.HOLD to zero.\n" -msgstr "Kjør «gdb %s %d» og velg null for «ARGS.HOLD».\n" - -#: grub-core/kern/emu/misc.c:48 -#, c-format -msgid "%s: warning:" -msgstr "%s: advarsel:" - -#: grub-core/kern/emu/misc.c:64 -#, c-format -msgid "%s: info:" -msgstr "%s: info:" - -#: grub-core/kern/emu/misc.c:79 util/grub-fstest.c:567 util/grub-fstest.c:576 -#: util/grub-mount.c:497 util/grub-mount.c:505 -#, c-format -msgid "%s: error:" -msgstr "%s: feil:" - -#: grub-core/kern/emu/misc.c:176 -#, c-format -msgid "file `%s' is too big" -msgstr "fila «%s» er for stor" - -#: grub-core/kern/fs.c:120 -msgid "unknown filesystem" -msgstr "ukjent filsystem" - -#: grub-core/kern/mips/arc/init.c:273 grub-core/kern/mips/loongson/init.c:301 -msgid "Shutdown failed" -msgstr "Klarte ikke Ã¥ skru av maskinen" - -#: grub-core/kern/mips/arc/init.c:285 -msgid "Exit failed" -msgstr "Klarte ikke Ã¥ avslutte" - -#: grub-core/kern/misc.c:351 grub-core/kern/misc.c:408 include/grub/misc.h:269 -#: include/grub/misc.h:278 -msgid "overflow is detected" -msgstr "oppdaget overbelastning" - -#: grub-core/kern/partition.c:51 grub-core/partmap/bsdlabel.c:108 -#, c-format -msgid "Discarding improperly nested partition (%s,%s,%s%d)" -msgstr "Avviser feilplassert partisjon (%s,%s,%s%d)" - -#: grub-core/kern/rescue_parser.c:73 util/grub-editenv.c:292 -#, c-format -msgid "Unknown command `%s'.\n" -msgstr "«%s» er en ukjent kommando.\n" - -#: grub-core/lib/arg.c:31 -msgid "Display this help and exit." -msgstr "Vis denne hjelpeteksten og avslutt." - -#: grub-core/lib/arg.c:33 -msgid "Display the usage of this command and exit." -msgstr "Vis bruksanvisning for denne kommandoen og avslutt.." - -#: grub-core/lib/arg.c:362 -#, c-format -msgid "missing mandatory option for `%s'" -msgstr "«%s» mangler obligatorisk valg" - -#: grub-core/lib/arg.c:384 -#, c-format -msgid "the argument `%s' requires an integer" -msgstr "argumentet «%s» mÃ¥ oppgis i heltallsform" - -#: grub-core/lib/arg.c:407 -#, c-format -msgid "" -"a value was assigned to the argument `%s' while it doesn't require an " -"argument" -msgstr "" -"argumentet «%s» fikk en verdi, men aktuelt valg krever ikke et argument" - -#: grub-core/lib/backtrace.c:64 -msgid "Print backtrace." -msgstr "Skriv ut tilbakesporing." - -#: grub-core/lib/gnulib/argp-help.c:149 -#, c-format -msgid "ARGP_HELP_FMT: %s value is less than or equal to %s" -msgstr "ARGP_HELP_FMT: verdien av %s er lavere eller lik %s" - -#: grub-core/lib/gnulib/argp-help.c:225 -#, c-format -msgid "%.*s: ARGP_HELP_FMT parameter requires a value" -msgstr "%.*s: «ARGP_HELP_FMT»-parameteret krever en verdi" - -#: grub-core/lib/gnulib/argp-help.c:235 -#, c-format -msgid "%.*s: Unknown ARGP_HELP_FMT parameter" -msgstr "%.*s: Ukjent «ARGP_HELP_FMT»-parameter" - -#: grub-core/lib/gnulib/argp-help.c:248 -#, c-format -msgid "Garbage in ARGP_HELP_FMT: %s" -msgstr "Søppel i «ARGP_HELP_FMT»: %s" - -#: grub-core/lib/gnulib/argp-help.c:1229 -msgid "" -"Mandatory or optional arguments to long options are also mandatory or " -"optional for any corresponding short options." -msgstr "" -"Valg er enten obligatoriske bÃ¥de for fullstendige valg og tilsvarende " -"forkortede valg." - -#: grub-core/lib/gnulib/argp-help.c:1620 -msgid " or: " -msgstr " or: " - -#: grub-core/lib/gnulib/argp-help.c:1632 -msgid " [OPTION...]" -msgstr " [VALG …]" - -#: grub-core/lib/gnulib/argp-help.c:1659 -#, c-format -msgid "Try '%s --help' or '%s --usage' for more information.\n" -msgstr "Prøv «%s --help» eller «%s --usage» for ytterligere informasjon.\n" - -#: grub-core/lib/gnulib/argp-help.c:1687 -#, c-format -msgid "Report bugs to %s.\n" -msgstr "Rapporter feil til %s.\n" - -#: grub-core/lib/gnulib/argp-help.c:1888 grub-core/lib/gnulib/error.c:195 -msgid "Unknown system error" -msgstr "Ukjent systemfeil" - -#: grub-core/lib/gnulib/argp-parse.c:81 -msgid "give this help list" -msgstr "vis denne hjelpelista" - -#: grub-core/lib/gnulib/argp-parse.c:82 -msgid "give a short usage message" -msgstr "vis en kortfattet bruksanvisning" - -#: grub-core/lib/gnulib/argp-parse.c:83 util/grub-mkfont.c:946 -msgid "NAME" -msgstr "NAME" - -#: grub-core/lib/gnulib/argp-parse.c:84 -msgid "set the program name" -msgstr "velg programmets navn" - -#: grub-core/lib/gnulib/argp-parse.c:86 -msgid "hang for SECS seconds (default 3600)" -msgstr "heng i valgt (SECS) antall sekunder (standard: 3600)" - -#: grub-core/lib/gnulib/argp-parse.c:143 -msgid "print program version" -msgstr "skriv ut programversjon" - -#: grub-core/lib/gnulib/argp-parse.c:160 -msgid "(PROGRAM ERROR) No version known!?" -msgstr "(PROGRAMFEIL) Ingen kjent versjon!" - -#: grub-core/lib/gnulib/argp-parse.c:613 -#, c-format -msgid "%s: Too many arguments\n" -msgstr "%s: For mange argumenter\n" - -#: grub-core/lib/gnulib/argp-parse.c:759 -msgid "(PROGRAM ERROR) Option should have been recognized!?" -msgstr "(PROGRAMFEIL) Valget skulle ha blitt gjenkjent!" - -#: grub-core/lib/gnulib/getopt.c:278 -#, c-format -msgid "%s: option '%s%s' is ambiguous\n" -msgstr "%s: valget «%s%s» er flertydig\n" - -#: grub-core/lib/gnulib/getopt.c:284 -#, c-format -msgid "%s: option '%s%s' is ambiguous; possibilities:" -msgstr "%s: valget «%s%s» er flertydig, og kan bety følgende:" - -#: grub-core/lib/gnulib/getopt.c:319 -#, c-format -msgid "%s: unrecognized option '%s%s'\n" -msgstr "%s: «%s%s» er et ukjent valg\n" - -#: grub-core/lib/gnulib/getopt.c:345 -#, c-format -msgid "%s: option '%s%s' doesn't allow an argument\n" -msgstr "%s: valget «%s%s» tillater ikke bruk av argumenter\n" - -#: grub-core/lib/gnulib/getopt.c:360 -#, c-format -msgid "%s: option '%s%s' requires an argument\n" -msgstr "%s: valget «%s%s» krever et argument\n" - -#: grub-core/lib/gnulib/getopt.c:621 -#, c-format -msgid "%s: invalid option -- '%c'\n" -msgstr "%s: «%c» er et ugyldig valg\n" - -#: grub-core/lib/gnulib/getopt.c:636 grub-core/lib/gnulib/getopt.c:682 -#, c-format -msgid "%s: option requires an argument -- '%c'\n" -msgstr "%s: valget «%c» krever et argument\n" - -#: grub-core/lib/gnulib/openat-die.c:38 -#, c-format -msgid "unable to record current working directory" -msgstr "fant ikke gjeldende arbeidsmappe" - -#: grub-core/lib/gnulib/openat-die.c:57 -#, c-format -msgid "failed to return to initial working directory" -msgstr "klarte ikke Ã¥ gÃ¥ tilbake til opprinnelig arbeidsmappe" - -#: grub-core/lib/gnulib/regcomp.c:135 grub-core/osdep/aros/hostdisk.c:523 -msgid "Success" -msgstr "Vellykket" - -#: grub-core/lib/gnulib/regcomp.c:138 -msgid "No match" -msgstr "Ingen treff" - -#: grub-core/lib/gnulib/regcomp.c:141 -msgid "Invalid regular expression" -msgstr "Ugyldig regulært uttrykk" - -#: grub-core/lib/gnulib/regcomp.c:144 -msgid "Invalid collation character" -msgstr "Ugyldig sorteringstegn" - -#: grub-core/lib/gnulib/regcomp.c:147 -msgid "Invalid character class name" -msgstr "Ugyldig tegnklassenavn" - -#: grub-core/lib/gnulib/regcomp.c:150 -msgid "Trailing backslash" -msgstr "Avsluttende omvendt skrÃ¥strek" - -#: grub-core/lib/gnulib/regcomp.c:153 -msgid "Invalid back reference" -msgstr "Ugyldig bakover-referanse" - -#: grub-core/lib/gnulib/regcomp.c:156 -msgid "Unmatched [, [^, [:, [., or [=" -msgstr "Ingen treff pÃ¥ [, [^, [:, [., eller [=" - -#: grub-core/lib/gnulib/regcomp.c:159 -msgid "Unmatched ( or \\(" -msgstr "Ingen treff pÃ¥ «(» eller «\\(»" - -#: grub-core/lib/gnulib/regcomp.c:162 -msgid "Unmatched \\{" -msgstr "Ingen treff pÃ¥ «\\{»" - -#: grub-core/lib/gnulib/regcomp.c:165 -msgid "Invalid content of \\{\\}" -msgstr "Ugyldig innhold i «\\{\\}»" - -#: grub-core/lib/gnulib/regcomp.c:168 -msgid "Invalid range end" -msgstr "Ugyldig slutt pÃ¥ rekkevidde" - -#: grub-core/lib/gnulib/regcomp.c:171 -msgid "Memory exhausted" -msgstr "Minnet er oppbrukt" - -#: grub-core/lib/gnulib/regcomp.c:174 -msgid "Invalid preceding regular expression" -msgstr "Ugyldig foregÃ¥ende regulæruttrykk" - -#: grub-core/lib/gnulib/regcomp.c:177 -msgid "Premature end of regular expression" -msgstr "For tidlig slutt pÃ¥ regulæruttrykk" - -#: grub-core/lib/gnulib/regcomp.c:180 -msgid "Regular expression too big" -msgstr "Regulæruttrykket er for stort" - -#: grub-core/lib/gnulib/regcomp.c:183 -msgid "Unmatched ) or \\)" -msgstr "Ingen treff pÃ¥ «)» eller «\\)»" - -#: grub-core/lib/gnulib/regcomp.c:531 -msgid "unknown regexp error" -msgstr "ukjent reg.uttrykk-feil" - -#: grub-core/lib/gnulib/regcomp.c:676 -msgid "No previous regular expression" -msgstr "Ingen tidligere regulæruttrykk" - -#: grub-core/lib/i386/halt.c:77 -msgid "GRUB doesn't know how to halt this machine yet!" -msgstr "GRUB vet ikke hvordan den skal stanse denne maskinen ennÃ¥!" - -#: grub-core/lib/legacy_parse.c:75 -msgid "Default server is ${net_default_server}" -msgstr "Standardtjener er ${net_default_server}" - -#: grub-core/lib/legacy_parse.c:844 grub-core/video/colors.c:296 -#: grub-core/video/colors.c:305 grub-core/video/colors.c:311 -#: grub-core/video/colors.c:327 util/render-label.c:84 util/render-label.c:98 -#, c-format -msgid "invalid color specification `%s'" -msgstr "«%s» er et ugyldig fargeoppsett" - -#: grub-core/lib/mips/arc/reboot.c:32 grub-core/lib/mips/loongson/reboot.c:61 -msgid "Reboot failed" -msgstr "Omstart mislyktes" - -#: grub-core/lib/random.c:113 -msgid "[LENGTH]" -msgstr "[LENGDE]" - -#: grub-core/lib/random.c:114 -msgid "Hexdump random data." -msgstr "VilkÃ¥rlige data fra heks-utskrift." - -#: grub-core/loader/arm/linux.c:242 -msgid "device tree must be supplied (see `devicetree' command)" -msgstr "enhetstre mÃ¥ legges ved (se kommandoen «devicetree»)" - -#: grub-core/loader/arm/linux.c:334 -msgid "invalid zImage" -msgstr "ugyldig zImage" - -#: grub-core/loader/arm/linux.c:450 grub-core/loader/efi/fdt.c:144 -msgid "invalid device tree" -msgstr "ugyldig device tree" - -#: grub-core/loader/arm/linux.c:493 grub-core/loader/arm64/linux.c:383 -#: grub-core/loader/i386/linux.c:1125 grub-core/loader/i386/pc/linux.c:479 -#: grub-core/loader/i386/xen.c:962 grub-core/loader/i386/xen.c:964 -#: grub-core/loader/ia64/efi/linux.c:591 grub-core/loader/mips/linux.c:501 -#: grub-core/loader/powerpc/ieee1275/linux.c:383 -#: grub-core/loader/riscv/linux.c:50 -#: grub-core/loader/sparc64/ieee1275/linux.c:511 -msgid "Load Linux." -msgstr "Last inn Linux." - -#: grub-core/loader/arm/linux.c:495 grub-core/loader/arm64/linux.c:385 -#: grub-core/loader/i386/linux.c:1127 grub-core/loader/i386/pc/linux.c:482 -#: grub-core/loader/i386/xen.c:966 grub-core/loader/ia64/efi/linux.c:594 -#: grub-core/loader/mips/linux.c:503 -#: grub-core/loader/powerpc/ieee1275/linux.c:385 -#: grub-core/loader/riscv/linux.c:52 -#: grub-core/loader/sparc64/ieee1275/linux.c:513 -msgid "Load initrd." -msgstr "Last inn initrd." - -#. TRANSLATORS: DTB stands for device tree blob. -#: grub-core/loader/arm/linux.c:498 grub-core/loader/efi/fdt.c:169 -msgid "Load DTB file." -msgstr "Last inn DTB-fil." - -#: grub-core/loader/arm64/linux.c:59 -msgid "" -"plain image kernel not supported - rebuild with CONFIG_(U)EFI_STUB enabled" -msgstr "" -"renbilde-kjerne støttes ikke. Bygg kjernen pÃ¥ nytt og slÃ¥ pÃ¥ valget " -"«CONFIG_(U)EFI_STUB»" - -#: grub-core/loader/arm64/xen_boot.c:156 -msgid "failed to get FDT" -msgstr "klarte ikke Ã¥ hente FDT" - -#: grub-core/loader/arm64/xen_boot.c:418 -msgid "you need to load the Xen Hypervisor first" -msgstr "du mÃ¥ laste inn xen-hypervisor først" - -#: grub-core/loader/arm64/xen_boot.c:516 -msgid "Load a xen hypervisor." -msgstr "Last inn xen-hypervisor." - -#: grub-core/loader/arm64/xen_boot.c:519 -msgid "Load a xen module." -msgstr "Last inn xen-modul." - -#: grub-core/loader/efi/appleloader.c:231 -msgid "[OPTS]" -msgstr "[OPTS]" - -#. TRANSLATORS: This command is used on EFI to -#. switch to BIOS mode and boot the OS requiring -#. BIOS. -#: grub-core/loader/efi/appleloader.c:235 -msgid "Boot BIOS-based system." -msgstr "Start opp BIOS-basert system." - -#: grub-core/loader/efi/chainloader.c:421 -#: grub-core/loader/i386/pc/chainloader.c:303 -msgid "Load another boot loader." -msgstr "Last inn en annen oppstartslaster." - -#: grub-core/loader/i386/bsd.c:103 -msgid "Display output on all consoles." -msgstr "Vis utdata pÃ¥ alle skjermer." - -#: grub-core/loader/i386/bsd.c:104 grub-core/loader/i386/bsd.c:138 -#: grub-core/loader/i386/bsd.c:171 -msgid "Use serial console." -msgstr "Bruk seriellkonsoll" - -#: grub-core/loader/i386/bsd.c:105 grub-core/loader/i386/bsd.c:131 -#: grub-core/loader/i386/bsd.c:159 -msgid "Ask for file name to reboot from." -msgstr "Spør etter filnavn Ã¥ starte pÃ¥ nytt fra." - -#: grub-core/loader/i386/bsd.c:106 -msgid "Use CD-ROM as root." -msgstr "Bruk CD-ROM som rot." - -#: grub-core/loader/i386/bsd.c:107 -msgid "Invoke user configuration routing." -msgstr "Start brukeroppsett-ruting." - -#: grub-core/loader/i386/bsd.c:108 grub-core/loader/i386/bsd.c:135 -#: grub-core/loader/i386/bsd.c:162 -msgid "Enter in KDB on boot." -msgstr "GÃ¥ inn i KDB ved oppstart." - -#: grub-core/loader/i386/bsd.c:109 -msgid "Use GDB remote debugger instead of DDB." -msgstr "Bruk GDB ekstern feilsøking i stedet for DDB." - -#: grub-core/loader/i386/bsd.c:110 -msgid "Disable all boot output." -msgstr "SlÃ¥ av all oppstartsutskrift." - -#: grub-core/loader/i386/bsd.c:112 -msgid "Wait for keypress after every line of output." -msgstr "Vent pÃ¥ knappetrykk for hver utskriftslinje." - -#: grub-core/loader/i386/bsd.c:114 -msgid "Use compiled-in root device." -msgstr "Bruk innebygd rotenhet." - -#: grub-core/loader/i386/bsd.c:115 grub-core/loader/i386/bsd.c:134 -#: grub-core/loader/i386/bsd.c:165 -msgid "Boot into single mode." -msgstr "Start opp i enkeltbrukermodus." - -#: grub-core/loader/i386/bsd.c:116 grub-core/loader/i386/bsd.c:166 -msgid "Boot with verbose messages." -msgstr "Start opp med detaljerte meldinger." - -#: grub-core/loader/i386/bsd.c:132 grub-core/loader/i386/bsd.c:160 -msgid "Don't reboot, just halt." -msgstr "Ikke start pÃ¥ nytt, bare stans systemet." - -#: grub-core/loader/i386/bsd.c:133 grub-core/loader/i386/bsd.c:161 -msgid "Change configured devices." -msgstr "Endre enhetsoppsett." - -#. TRANSLATORS: "com" is static and not to be translated. It refers to -#. serial ports e.g. com1. -#. -#: grub-core/loader/i386/bsd.c:142 -msgid "comUNIT[,SPEED]" -msgstr "comUNIT[,SPEED]" - -#: grub-core/loader/i386/bsd.c:157 -msgid "Disable SMP." -msgstr "SlÃ¥ av SMP." - -#: grub-core/loader/i386/bsd.c:158 -msgid "Disable ACPI." -msgstr "SlÃ¥ av ACPI." - -#: grub-core/loader/i386/bsd.c:164 -msgid "Don't display boot diagnostic messages." -msgstr "Ikke vis feilsøkingsmeldinger ved oppstart." - -#: grub-core/loader/i386/bsd.c:167 -msgid "Boot with debug messages." -msgstr "Start opp med feilsøkingsmeldinger." - -#: grub-core/loader/i386/bsd.c:168 -msgid "Suppress normal output (warnings remain)." -msgstr "Ikke vis vanlig utskrift (advarsler skrives fremdeles ut)." - -#. TRANSLATORS: "com" is static and not to be translated. It refers to -#. serial ports e.g. com1. -#. -#: grub-core/loader/i386/bsd.c:175 -msgid "[ADDR|comUNIT][,SPEED]" -msgstr "[ADDR|comUNIT][,SPEED]" - -#: grub-core/loader/i386/bsd.c:489 grub-core/loader/i386/bsd.c:555 -msgid "name" -msgstr "navn" - -#: grub-core/loader/i386/bsd.c:489 grub-core/loader/i386/bsd.c:555 -msgid "type" -msgstr "type" - -#: grub-core/loader/i386/bsd.c:489 grub-core/loader/i386/bsd.c:555 -msgid "addr" -msgstr "adr" - -#: grub-core/loader/i386/bsd.c:490 grub-core/loader/i386/bsd.c:556 -msgid "size" -msgstr "størrelse" - -#: grub-core/loader/i386/bsd.c:1147 grub-core/loader/i386/linux.c:466 -#: grub-core/loader/i386/xnu.c:1030 -msgid "Booting in blind mode" -msgstr "Starter opp i blindemodus" - -#: grub-core/loader/i386/bsd.c:2137 -msgid "Load kernel of FreeBSD." -msgstr "Last inn FreeBSD-kjerne." - -#: grub-core/loader/i386/bsd.c:2140 -msgid "Load kernel of OpenBSD." -msgstr "Last inn OpenBSD-kjerne." - -#: grub-core/loader/i386/bsd.c:2143 -msgid "Load kernel of NetBSD." -msgstr "Last inn NetBSD-kjerne." - -#: grub-core/loader/i386/bsd.c:2147 -msgid "Load FreeBSD env." -msgstr "Last inn FreeBSD-miljø." - -#: grub-core/loader/i386/bsd.c:2150 -msgid "Load FreeBSD kernel module." -msgstr "Last inn FreeBSD-kjernemodul." - -#: grub-core/loader/i386/bsd.c:2153 -msgid "Load NetBSD kernel module." -msgstr "Last inn NetBSD-kjernemodul." - -#: grub-core/loader/i386/bsd.c:2156 -msgid "Load NetBSD kernel module (ELF)." -msgstr "Last inn NetBSD-kjernemodul (ELF)." - -#: grub-core/loader/i386/bsd.c:2159 -msgid "Load FreeBSD kernel module (ELF)." -msgstr "Last inn FreeBSD-kjernemodul (ELF)." - -#. TRANSLATORS: ramdisk isn't identifier, -#. it can be translated. -#: grub-core/loader/i386/bsd.c:2165 -msgid "Load kOpenBSD ramdisk." -msgstr "Last inn kOpenBSD-ramdisk." - -#. TRANSLATORS: "payload" is a term used -#. by coreboot and must be translated in -#. sync with coreboot. If unsure, -#. let it untranslated. -#: grub-core/loader/i386/coreboot/chainloader.c:510 -msgid "Load another coreboot payload" -msgstr "Last inn en annen coreboot-«payload»" - -#: grub-core/loader/i386/linux.c:876 -msgid "Legacy `ask' parameter no longer supported." -msgstr "«ask» er et utgÃ¥tt parameter, og støttes ikke." - -#: grub-core/loader/i386/linux.c:892 grub-core/loader/i386/linux.c:902 -#: grub-core/loader/i386/linux.c:932 -#, c-format -msgid "%s is deprecated. Use set gfxpayload=%s before linux command instead.\n" -msgstr "%s er utgÃ¥tt. Bruk heller «set gfxpayload=%s» før Linux-kommandoen.\n" - -#. TRANSLATORS: "x" has to be entered in, like an identifier, -#. so please don't use better Unicode codepoints. -#: grub-core/loader/i386/linux.c:915 -#, c-format -msgid "" -"%s is deprecated. VGA mode %d isn't recognized. Use set " -"gfxpayload=WIDTHxHEIGHT[xDEPTH] before linux command instead.\n" -msgstr "" -"%s er utgÃ¥tt. VGA-modus %d gjenkjennes ikke. Bruk heller «set " -"gfxpayload=BREDDExHØYDE[xDYBDE] før Linux-kommandoen.\n" - -#: grub-core/loader/i386/pc/chainloader.c:302 -msgid "[--force|--bpb] FILE" -msgstr "[--force|--bpb] FIL" - -#: grub-core/loader/i386/pc/freedos.c:148 util/setup.c:293 -#, c-format -msgid "the size of `%s' is too large" -msgstr "«%s» er for stor" - -#: grub-core/loader/i386/pc/freedos.c:183 -msgid "Load FreeDOS kernel.sys." -msgstr "Last inn FreeDOS kernel.sys." - -#: grub-core/loader/i386/pc/ntldr.c:155 -msgid "Load NTLDR or BootMGR." -msgstr "Last inn NTLDR eller BootMGR." - -#. TRANSLATORS: it's about guessing which GRUB disk -#. is which Plan9 disk. If your language has no -#. word "mapping" you can use another word which -#. means that the GRUBDEVICE and PLAN9DEVICE are -#. actually the same device, just named differently -#. in OS and GRUB. -#: grub-core/loader/i386/pc/plan9.c:59 -msgid "Override guessed mapping of Plan9 devices." -msgstr "Overstyr gjetningsbasert kobling av Plan9-enheter." - -#: grub-core/loader/i386/pc/plan9.c:60 -msgid "GRUBDEVICE=PLAN9DEVICE" -msgstr "GRUBDEVICE=PLAN9DEVICE" - -#: grub-core/loader/i386/pc/plan9.c:599 -msgid "KERNEL ARGS" -msgstr "KERNEL-ARG" - -#: grub-core/loader/i386/pc/plan9.c:599 -msgid "Load Plan9 kernel." -msgstr "Last inn Plan9-kjerne." - -#: grub-core/loader/i386/pc/pxechainloader.c:161 -msgid "Load a PXE image." -msgstr "Last inn et PXE-bilde." - -#: grub-core/loader/i386/pc/truecrypt.c:226 -msgid "Load Truecrypt ISO." -msgstr "Last inn Truecrypt-ISO." - -#: grub-core/loader/i386/xen.c:781 grub-core/loader/i386/xen.c:865 -msgid "initrd already loaded" -msgstr "initrd er allerede lastet inn" - -#: grub-core/loader/i386/xen.c:968 -msgid "Load module." -msgstr "Last inn modul." - -#: grub-core/loader/i386/xnu.c:1003 -msgid "Press any key to launch xnu" -msgstr "Trykk pÃ¥ en knapp for Ã¥ starte xnu" - -#. TRANSLATORS: `device-properties' -#. is a variable name, -#. not a program. -#: grub-core/loader/i386/xnu.c:1159 -msgid "Load `device-properties' dump." -msgstr "Last inn «device-properties»-dump." - -#: grub-core/loader/ia64/efi/linux.c:124 -msgid "Could not locate FPSWA driver" -msgstr "Fant ikke FPSWA-driver" - -#: grub-core/loader/ia64/efi/linux.c:132 -msgid "FPSWA protocol wasn't able to find the interface" -msgstr "FPSWA-protokollen fant ikke grensesnittet" - -#: grub-core/loader/ia64/efi/linux.c:580 -msgid "No FPSWA found" -msgstr "Fant ingen FPSWA" - -#: grub-core/loader/ia64/efi/linux.c:582 -#, c-format -msgid "FPSWA revision: %x\n" -msgstr "FPSWA-revisjon: %x\n" - -#: grub-core/loader/ia64/efi/linux.c:591 -msgid "FILE [ARGS...]" -msgstr "FIL [ARG …]" - -#: grub-core/loader/ia64/efi/linux.c:597 -msgid "Display FPSWA version." -msgstr "Vis FPSWA-versjon." - -#: grub-core/loader/multiboot.c:248 -msgid "WARNING: no console will be available to OS" -msgstr "ADVARSEL: OS-et fÃ¥r ingen konsoll" - -#: grub-core/loader/multiboot.c:450 -msgid "Load a multiboot 2 kernel." -msgstr "Last inn en multiboot 2-kjerne." - -#: grub-core/loader/multiboot.c:453 -msgid "Load a multiboot 2 module." -msgstr "Last inn en multiboot 2-modul." - -#: grub-core/loader/multiboot.c:456 -msgid "Load a multiboot kernel." -msgstr "Last inn en multiboot-kjerne." - -#: grub-core/loader/multiboot.c:459 -msgid "Load a multiboot module." -msgstr "Last inn en multiboot-modul." - -#: grub-core/loader/riscv/linux.c:30 grub-core/loader/riscv/linux.c:40 -msgid "Linux not supported yet" -msgstr "Linux støttes ikke enda" - -#: grub-core/loader/xnu.c:1416 grub-core/term/gfxterm_background.c:45 -msgid "Background image mode." -msgstr "Bakgrunnsbilde-modus." - -#. TRANSLATORS: This refers to background image mode (stretched or -#. in left-top corner). Note that GRUB will accept only original -#. keywords stretch and normal, not the translated ones. -#. So please put both in translation -#. e.g. stretch(=%STRETCH%)|normal(=%NORMAL%). -#. The percents mark the translated version. Since many people -#. may not know the word stretch or normal I recommend -#. putting the translation either here or in "Background image mode." -#. string. -#: grub-core/loader/xnu.c:1416 grub-core/term/gfxterm_background.c:55 -msgid "stretch|normal" -msgstr "stretch(strukket)|normal" - -#: grub-core/loader/xnu.c:1482 -msgid "Load XNU image." -msgstr "Last inn XNU-bilde." - -#: grub-core/loader/xnu.c:1484 -msgid "Load 64-bit XNU image." -msgstr "Last inn 64-bits XNU-bilde." - -#: grub-core/loader/xnu.c:1486 -msgid "Load XNU extension package." -msgstr "Last inn XNU-utvidelsespakke." - -#: grub-core/loader/xnu.c:1488 -msgid "Load XNU extension." -msgstr "Last inn XNU-utvidelse." - -#. TRANSLATORS: OSBundleRequired is a -#. variable name in xnu extensions -#. manifests. It behaves mostly like -#. GNU/Linux runlevels. -#. -#: grub-core/loader/xnu.c:1495 -msgid "DIRECTORY [OSBundleRequired]" -msgstr "MAPPE [OSPakkePÃ¥krevet]" - -#. TRANSLATORS: There are many extensions -#. in extension directory. -#: grub-core/loader/xnu.c:1498 -msgid "Load XNU extension directory." -msgstr "Last inn bibliotek over XNU-utvidelser." - -#. TRANSLATORS: ramdisk here isn't identifier. It can be translated. -#: grub-core/loader/xnu.c:1501 -msgid "Load XNU ramdisk. It will be available in OS as md0." -msgstr "Last inn XNU-ramdisk. Denne dukker opp i OS-et som «md0»." - -#: grub-core/loader/xnu.c:1505 -msgid "Load a splash image for XNU." -msgstr "Last inn et splash-bilde for XNU." - -#: grub-core/loader/xnu.c:1510 -msgid "Load an image of hibernated XNU." -msgstr "Last inn et bilde av XNU i dvale." - -#: grub-core/mmap/mmap.c:538 -msgid "ADDR1,MASK1[,ADDR2,MASK2[,...]]" -msgstr "ADR1,MASKE1[,ADR2,MASKE2[,…]]" - -#: grub-core/mmap/mmap.c:539 -msgid "Declare memory regions as faulty (badram)." -msgstr "Erklær minneomrÃ¥der som defekt (badram)." - -#: grub-core/mmap/mmap.c:541 -msgid "FROM[K|M|G] TO[K|M|G]" -msgstr "FRA[K|M|G] TIL[K|M|G]" - -#: grub-core/mmap/mmap.c:542 -msgid "Remove any memory regions in specified range." -msgstr "Fjern minneregioner innenfor valgt omrÃ¥de." - -#: grub-core/net/bootp.c:653 -msgid "four arguments expected" -msgstr "forventer fire argumenter" - -#: grub-core/net/bootp.c:661 grub-core/net/net.c:1155 -#, c-format -msgid "unrecognised network interface `%s'" -msgstr "«%s» er et ukjent nettverksgrensesnitt" - -#: grub-core/net/bootp.c:664 -msgid "no DHCP info found" -msgstr "fant ingen DHCP-info" - -#: grub-core/net/bootp.c:674 -msgid "no DHCP options found" -msgstr "fant ingen DHCP-valg" - -#: grub-core/net/bootp.c:682 -msgid "invalid DHCP option code" -msgstr "ugyldig DHCP-valgkode" - -#: grub-core/net/bootp.c:686 -#, c-format -msgid "no DHCP option %u found" -msgstr "fant ikke DHCP-valg %u" - -#: grub-core/net/bootp.c:743 -#, c-format -msgid "unrecognised DHCP option format specification `%s'" -msgstr "«%s» er en ukjent formatspesifikasjon av DHCP-valg" - -#: grub-core/net/bootp.c:767 -msgid "no network card found" -msgstr "fant ingen nettverkskort" - -#: grub-core/net/bootp.c:859 grub-core/net/net.c:389 -#, c-format -msgid "couldn't autoconfigure %s" -msgstr "klarte ikke Ã¥ sette opp %s automatisk" - -#: grub-core/net/bootp.c:873 grub-core/net/bootp.c:876 -msgid "[CARD]" -msgstr "[KORT]" - -#: grub-core/net/bootp.c:874 -msgid "perform a bootp autoconfiguration" -msgstr "lag et automatisk bootp-oppsett" - -#: grub-core/net/bootp.c:877 -msgid "perform a DHCP autoconfiguration" -msgstr "utfør automatisk DHCP-oppsett" - -#: grub-core/net/bootp.c:879 -msgid "VAR INTERFACE NUMBER DESCRIPTION" -msgstr "VAR GRENSESNITT NUMMER BESKR" - -#: grub-core/net/bootp.c:880 -msgid "" -"retrieve DHCP option and save it into VAR. If VAR is - then print the value." -msgstr "" -"hent et DHCP-valg og lagre det i valgt VARiabel. Hvis VAR er «-», skrives " -"verdien ut." - -#: grub-core/net/dns.c:459 -msgid "no DNS servers configured" -msgstr "ingen DNS-tjener er satt opp" - -#: grub-core/net/dns.c:522 -msgid "domain name component is too long" -msgstr "domenenavn-komponenten er for lang" - -#: grub-core/net/dns.c:618 grub-core/net/dns.c:666 -msgid "no DNS record found" -msgstr "fant ingen DNS-oppføring" - -#: grub-core/net/dns.c:626 -msgid "no DNS reply received" -msgstr "fikk ingen DNS-svar" - -#: grub-core/net/dns.c:682 -msgid "only ipv4" -msgstr "kun ipv4" - -#: grub-core/net/dns.c:686 -msgid "only ipv6" -msgstr "kun ipv6" - -#: grub-core/net/dns.c:690 -msgid "prefer ipv4" -msgstr "foretrekk ipv4" - -#: grub-core/net/dns.c:694 -msgid "prefer ipv6" -msgstr "foretrekk ipv6" - -#: grub-core/net/dns.c:759 -msgid "ADDRESS DNSSERVER" -msgstr "ADRESSE DNSTJENER" - -#: grub-core/net/dns.c:760 -msgid "Perform a DNS lookup" -msgstr "Gjør oppslag i DNS" - -#: grub-core/net/dns.c:762 grub-core/net/dns.c:765 -msgid "DNSSERVER" -msgstr "DNSTJENER" - -#: grub-core/net/dns.c:763 -msgid "Add a DNS server" -msgstr "Legg til en DNS-tjener" - -#: grub-core/net/dns.c:766 -msgid "Remove a DNS server" -msgstr "Fjern en DNS-tjener" - -#: grub-core/net/dns.c:768 -msgid "List DNS servers" -msgstr "Vis DNS-tjenere" - -#: grub-core/net/drivers/efi/efinet.c:49 grub-core/net/drivers/efi/efinet.c:65 -#: grub-core/net/drivers/efi/efinet.c:77 grub-core/net/drivers/emu/emunet.c:62 -#: grub-core/net/drivers/i386/pc/pxe.c:273 -#: grub-core/net/drivers/ieee1275/ofnet.c:75 -#: grub-core/net/drivers/uboot/ubootnet.c:62 -msgid "couldn't send network packet" -msgstr "klarte ikke Ã¥ sende nettverkspakke" - -#: grub-core/net/drivers/ieee1275/ofnet.c:326 -#: grub-core/net/drivers/ieee1275/ofnet.c:359 -msgid "interpret is not supported" -msgstr "«interpret» støttes ikke" - -#: grub-core/net/drivers/ieee1275/ofnet.c:336 -msgid "alloc-mem failed" -msgstr "«alloc-mem» mislyktes" - -#: grub-core/net/drivers/ieee1275/ofnet.c:370 -msgid "free-mem failed" -msgstr "«free-mem» mislyktes" - -#: grub-core/net/http.c:105 -msgid "unsupported HTTP response" -msgstr "HTTP-responsen støttes ikke" - -#. TRANSLATORS: GRUB HTTP code is pretty young. So even perfectly -#. valid answers like 403 will trigger this very generic message. -#: grub-core/net/http.c:126 -#, c-format -msgid "unsupported HTTP error %d: %s" -msgstr "Feil ved ustøttet HTTP-kode %d: %s" - -#: grub-core/net/http.c:429 grub-core/net/tftp.c:420 -#, c-format -msgid "time out opening `%s'" -msgstr "tidsavbrudd ved Ã¥pning av «%s»" - -#: grub-core/net/net.c:179 -msgid "timeout: could not resolve hardware address" -msgstr "tidsavbrudd: klarte ikke Ã¥ gjøre oppslag pÃ¥ maskinvareadresse" - -#: grub-core/net/net.c:548 -#, c-format -msgid "unresolvable address %s" -msgstr "adressen %s er ubrukelig" - -#: grub-core/net/net.c:594 -#, c-format -msgid "unrecognised network address `%s'" -msgstr "«%s» er en ukjent nettverksadresse" - -#: grub-core/net/net.c:661 -msgid "destination unreachable" -msgstr "mÃ¥let ble ikke nÃ¥dd" - -#. TRANSLATORS: route loop is a condition when e.g. -#. to contact server A you need to go through B -#. and to contact B you need to go through A. -#: grub-core/net/net.c:684 -msgid "route loop detected" -msgstr "oppdaget ruteløkke" - -#: grub-core/net/net.c:700 -msgid "address not found" -msgstr "fant ikke adressen" - -#: grub-core/net/net.c:704 -msgid "you can't delete this address" -msgstr "du kan ikke slette denne adressen" - -#: grub-core/net/net.c:776 grub-core/net/net.c:792 -#, c-format -msgid "Unsupported hw address type %d\n" -msgstr "Maskinvareadresse-typen %d støttes ikke\n" - -#: grub-core/net/net.c:813 -#, c-format -msgid "Unsupported address type %d\n" -msgstr "Adressetypen %d støttes ikke\n" - -#: grub-core/net/net.c:1017 grub-core/net/net.c:1131 -msgid "three arguments expected" -msgstr "forventet tre argumenter" - -#: grub-core/net/net.c:1023 -msgid "card not found" -msgstr "fant ikke kortet" - -#. TRANSLATORS: it refers to the network address. -#: grub-core/net/net.c:1167 -msgid "temporary" -msgstr "midlertidig" - -#: grub-core/net/net.c:1190 -#, c-format -msgid "Unknown address type %d\n" -msgstr "%d er en ukjent adressetype\n" - -#: grub-core/net/net.c:1298 -msgid "no server is specified" -msgstr "ingen tjener er valgt" - -#: grub-core/net/net.c:1637 -#, c-format -msgid "timeout reading `%s'" -msgstr "tidsavbrudd ved lesing av «%s»" - -#. TRANSLATORS: HWADDRESS stands for -#. "hardware address". -#: grub-core/net/net.c:1762 -msgid "SHORTNAME CARD ADDRESS [HWADDRESS]" -msgstr "HURTIGNAVN KORT ADRESSE [MASKINVAREADRESSE]" - -#: grub-core/net/net.c:1763 -msgid "Add a network address." -msgstr "Legg til en nettverksadresse" - -#: grub-core/net/net.c:1766 -msgid "[CARD [HWADDRESS]]" -msgstr "[KORT [MASKINVAREADRESSE]]" - -#: grub-core/net/net.c:1767 -msgid "Perform an IPV6 autoconfiguration" -msgstr "Sett opp IPV6 automatisk" - -#: grub-core/net/net.c:1770 grub-core/net/net.c:1777 -msgid "SHORTNAME" -msgstr "HURTIGNAVN" - -#: grub-core/net/net.c:1771 -msgid "Delete a network address." -msgstr "Slett en nettverksadresse." - -#. TRANSLATORS: "gw" is a keyword. -#: grub-core/net/net.c:1774 -msgid "SHORTNAME NET [INTERFACE| gw GATEWAY]" -msgstr "HURTIGNAVN NETT [GRENSESNITT| gw PORTNER]" - -#: grub-core/net/net.c:1775 -msgid "Add a network route." -msgstr "Legg til en nettverksrute." - -#: grub-core/net/net.c:1778 -msgid "Delete a network route." -msgstr "Slett en nettverksrute." - -#: grub-core/net/net.c:1780 -msgid "list network routes" -msgstr "vis ruter pÃ¥ nettverket" - -#: grub-core/net/net.c:1782 -msgid "list network cards" -msgstr "vis nettverkskort" - -#: grub-core/net/net.c:1784 -msgid "list network addresses" -msgstr "vis nettverksadresser" - -#: grub-core/net/tcp.c:681 -msgid "connection refused" -msgstr "tilkobling ble nektet" - -#: grub-core/net/tcp.c:684 -msgid "connection timeout" -msgstr "tidsavbrudd ved tilkobling" - -#: grub-core/normal/auth.c:220 -msgid "Enter username: " -msgstr "Skriv inn brukernavn:" - -#: grub-core/normal/auth.c:269 -msgid "[USERLIST]" -msgstr "[BRUKERLISTE]" - -#: grub-core/normal/auth.c:270 -msgid "Check whether user is in USERLIST." -msgstr "Sjekk om brukeren finnes i valgt BRUKERLISTE." - -#: grub-core/normal/cmdline.c:174 grub-core/normal/menu_entry.c:1068 -msgid "Possible commands are:" -msgstr "Følgende kommandoer er gyldige:" - -#: grub-core/normal/cmdline.c:177 grub-core/normal/menu_entry.c:1072 -msgid "Possible devices are:" -msgstr "Følgende enheter er gyldige:" - -#: grub-core/normal/cmdline.c:180 grub-core/normal/menu_entry.c:1076 -msgid "Possible files are:" -msgstr "Følgende filer er gyldige:" - -#: grub-core/normal/cmdline.c:183 grub-core/normal/menu_entry.c:1080 -msgid "Possible partitions are:" -msgstr "Følgende partisjoner er gyldige:" - -#: grub-core/normal/cmdline.c:186 grub-core/normal/menu_entry.c:1084 -msgid "Possible arguments are:" -msgstr "Følgende argumenter er gyldige:" - -#. TRANSLATORS: this message is used if none of above matches. -#. This shouldn't happen but please use the general term for -#. "thing" or "object". -#: grub-core/normal/cmdline.c:192 grub-core/normal/menu_entry.c:1088 -msgid "Possible things are:" -msgstr "Følgende er gyldig:" - -#: grub-core/normal/color.c:81 -#, c-format -msgid "Warning: syntax error (missing slash) in `%s'\n" -msgstr "Advarsel: syntaksfeil (skrÃ¥strek mangler) i «%s»\n" - -#: grub-core/normal/color.c:90 -#, c-format -msgid "Warning: invalid foreground color `%s'\n" -msgstr "Advarsel: «%s» er en ugyldig forgrunnsfarge\n" - -#: grub-core/normal/color.c:96 -#, c-format -msgid "Warning: invalid background color `%s'\n" -msgstr "Advarsel: «%s» er en ugyldig bakgrunnsfarge\n" - -#: grub-core/normal/context.c:206 -msgid "ENVVAR [ENVVAR] ..." -msgstr "MILJØVAR [MILJØVAR] …" - -#: grub-core/normal/context.c:207 -msgid "Export variables." -msgstr "Eksporter variabler." - -#: grub-core/normal/datetime.c:25 -msgid "Sunday" -msgstr "søndag" - -#: grub-core/normal/datetime.c:26 -msgid "Monday" -msgstr "mandag" - -#: grub-core/normal/datetime.c:27 -msgid "Tuesday" -msgstr "tirsdag" - -#: grub-core/normal/datetime.c:28 -msgid "Wednesday" -msgstr "onsdag" - -#: grub-core/normal/datetime.c:29 -msgid "Thursday" -msgstr "torsdag" - -#: grub-core/normal/datetime.c:30 -msgid "Friday" -msgstr "fredag" - -#: grub-core/normal/datetime.c:31 -msgid "Saturday" -msgstr "lørdag" - -#: grub-core/normal/dyncmd.c:187 -msgid "module isn't loaded" -msgstr "modulen er ikke lastet inn" - -#: grub-core/normal/main.c:211 -#, c-format -msgid "GNU GRUB version %s" -msgstr "GNU GRUB versjon %s" - -#: grub-core/normal/main.c:360 -msgid "ESC at any time exits." -msgstr "Avslutt nÃ¥r som helst med ESC." - -#: grub-core/normal/main.c:363 -#, c-format -msgid "" -"Minimal BASH-like line editing is supported. For the first word, TAB lists " -"possible command completions. Anywhere else TAB lists possible device or " -"file completions. %s" -msgstr "" -"Du kan redigere linjer i BASH-stil. Første ord pÃ¥ hver linje kan " -"autofullføres til kommandonavn med TAB. Andre ord kan TAB-es til Ã¥ fullføre " -"enhets- eller filnavn. %s" - -#. TRANSLATORS: it's command line prompt. -#: grub-core/normal/main.c:395 -msgid ">" -msgstr ">" - -#. TRANSLATORS: it's command line prompt. -#: grub-core/normal/main.c:398 -msgid "grub>" -msgstr "grub>" - -#: grub-core/normal/main.c:518 -msgid "Clear the screen." -msgstr "Tøm skjermen." - -#: grub-core/normal/main.c:527 -msgid "Enter normal mode." -msgstr "Bruk normalmodus." - -#: grub-core/normal/main.c:529 -msgid "Exit from normal mode." -msgstr "Avslutt normalmodus." - -#: grub-core/normal/menu.c:66 grub-core/normal/menu_entry.c:1449 -msgid "Press any key to continue..." -msgstr "Trykk pÃ¥ en tast for Ã¥ fortsette …" - -#: grub-core/normal/menu.c:815 -#, c-format -msgid "Booting `%s'" -msgstr "Starter opp «%s»" - -#: grub-core/normal/menu.c:827 -#, c-format -msgid "Falling back to `%s'" -msgstr "Kjører reserveoppføring «%s»" - -#: grub-core/normal/menu.c:843 -msgid "Failed to boot both default and fallback entries.\n" -msgstr "Klarte hverken Ã¥ starte opp standard- eller reserveoppføring.\n" - -#: grub-core/normal/menu_entry.c:1171 -msgid "Booting a command list" -msgstr "Starter opp en kommandoliste" - -#: grub-core/normal/menu_text.c:160 -msgid "" -"Minimum Emacs-like screen editing is supported. TAB lists completions. Press " -"Ctrl-x or F10 to boot, Ctrl-c or F2 for a command-line or ESC to discard " -"edits and return to the GRUB menu." -msgstr "" -"Du kan redigere dette skjermbildet i forenklet Emacs-stil. Bruk TAB for Ã¥ " -"vise mulige autofullføringer av ord. Trykk Ctrl-X (evt. F10) for Ã¥ starte " -"opp, Ctrl-C (evt. F2) for kommandolinje eller ESC for Ã¥ forkaste endringer " -"og gÃ¥ tilbake til GRUB-menyen." - -#: grub-core/normal/menu_text.c:170 -#, c-format -msgid "Use the %C and %C keys to select which entry is highlighted." -msgstr "Bruk %C og %C for Ã¥ velge oppføring." - -#. TRANSLATORS: that's the list of binary unit prefixes. -#: grub-core/normal/misc.c:38 -msgid "B" -msgstr "B" - -#: grub-core/normal/misc.c:38 -msgid "KiB" -msgstr "KiB" - -#: grub-core/normal/misc.c:38 -msgid "MiB" -msgstr "MiB" - -#: grub-core/normal/misc.c:38 -msgid "GiB" -msgstr "GiB" - -#: grub-core/normal/misc.c:38 -msgid "TiB" -msgstr "TiB" - -#: grub-core/normal/misc.c:38 -msgid "PiB" -msgstr "PiB" - -#. TRANSLATORS: that's the list of binary unit prefixes. -#: grub-core/normal/misc.c:40 -msgid "K" -msgstr "K" - -#: grub-core/normal/misc.c:40 -msgid "M" -msgstr "M" - -#: grub-core/normal/misc.c:40 -msgid "G" -msgstr "G" - -#: grub-core/normal/misc.c:40 -msgid "T" -msgstr "T" - -#: grub-core/normal/misc.c:40 -msgid "P" -msgstr "P" - -#. TRANSLATORS: that's the list of binary unit prefixes. -#: grub-core/normal/misc.c:42 -msgid "B/s" -msgstr "B/s" - -#: grub-core/normal/misc.c:42 -msgid "KiB/s" -msgstr "KiB/s" - -#: grub-core/normal/misc.c:42 -msgid "MiB/s" -msgstr "MiB/s" - -#: grub-core/normal/misc.c:42 -msgid "GiB/s" -msgstr "GiB/s" - -#: grub-core/normal/misc.c:42 -msgid "TiB/s" -msgstr "TiB/s" - -#: grub-core/normal/misc.c:42 -msgid "PiB/s" -msgstr "PiB/s" - -#: grub-core/normal/misc.c:96 -#, c-format -msgid "Partition %s:" -msgstr "Partisjon %s:" - -#: grub-core/normal/misc.c:101 -#, c-format -msgid "Device %s:" -msgstr "Enhet %s:" - -#: grub-core/normal/misc.c:107 -msgid "Filesystem cannot be accessed" -msgstr "Fikk ikke tilgang til filsystemet" - -#: grub-core/normal/misc.c:121 -#, c-format -msgid "Filesystem type %s" -msgstr "Filsystem-type %s" - -#: grub-core/normal/misc.c:131 -#, c-format -msgid "- Label `%s'" -msgstr "- Etikett «%s»" - -#. TRANSLATORS: Arguments are year, month, day, hour, minute, -#. second, day of the week (translated). -#: grub-core/normal/misc.c:148 -#, c-format -msgid "- Last modification time %d-%02d-%02d %02d:%02d:%02d %s" -msgstr "- Sist endret %d-%02d-%02d %02d:%02d:%02d %s" - -#: grub-core/normal/misc.c:171 -msgid "No known filesystem detected" -msgstr "Fant ingen kjente filsystemer" - -#: grub-core/normal/misc.c:174 -#, c-format -msgid " - Partition start at %llu%sKiB" -msgstr " - Partisjonen starter ved %llu%sKiB" - -#: grub-core/normal/misc.c:178 -#, c-format -msgid " - Sector size %uB" -msgstr " - Sektorstørrelse %uB" - -#: grub-core/normal/misc.c:180 -msgid " - Total size unknown" -msgstr " - Ukjent total størrelse" - -#: grub-core/normal/misc.c:182 -#, c-format -msgid " - Total size %llu%sKiB" -msgstr " - Total størrelse %llu%sKiB" - -#. TRANSLATORS: Replace dot with appropriate decimal separator for -#. your language. -#: grub-core/normal/misc.c:186 -msgid ".5" -msgstr ",5" - -#. TRANSLATORS: This has to fit on one line. It's ok to include few -#. words but don't write poems. -#: grub-core/normal/term.c:82 -msgid "--MORE--" -msgstr "--MER--" - -#: grub-core/osdep/aros/config.c:92 grub-core/osdep/unix/config.c:137 -#: grub-core/osdep/windows/config.c:55 -#, c-format -msgid "cannot open configuration file `%s': %s" -msgstr "klarte ikke Ã¥ Ã¥pne oppsettsfila «%s». %s" - -#: grub-core/osdep/basic/compress.c:8 grub-core/osdep/basic/compress.c:14 -#: grub-core/osdep/basic/compress.c:20 -msgid "no compression is available for your platform" -msgstr "plattformen din støtter ingen kjente komprimeringsmetoder" - -#: grub-core/osdep/basic/no_platform.c:30 -#: grub-core/osdep/windows/platform.c:418 -msgid "no IEEE1275 routines are available for your platform" -msgstr "plattformen din støtter ingen IEEE1275-rutiner" - -#: grub-core/osdep/basic/no_platform.c:38 -msgid "no EFI routines are available for your platform" -msgstr "plattformen din støtter ingen EFI-rutiner" - -#: grub-core/osdep/basic/no_platform.c:45 -#: grub-core/osdep/windows/platform.c:425 -msgid "no SGI routines are available for your platform" -msgstr "plattformen din støtter ingen SGI-rutiner" - -#. TRANSLATORS: The OS itself may very well have a random -#. number generator but GRUB doesn't know how to access it. -#: grub-core/osdep/basic/random.c:42 -msgid "no random number generator is available for your OS" -msgstr "" -"operativsystemet ditt har, sÃ¥ langt GRUB vet, ingen tilgjengelig " -"vilkÃ¥rlighetsgenerator" - -#: grub-core/osdep/devmapper/getroot.c:81 -msgid "Failed to create `device-mapper' tree" -msgstr "Klarte ikke Ã¥ lage «device-mapper»-tre" - -#: grub-core/osdep/devmapper/getroot.c:197 -#: grub-core/osdep/freebsd/getroot.c:202 -#, c-format -msgid "can't mount encrypted volume `%s': %s" -msgstr "klarte ikke Ã¥ montere det krypterte volumet «%s». %s" - -#. TRANSLATORS: geom is the name of (k)FreeBSD device framework. -#. Usually left untranslated. -#. -#: grub-core/osdep/freebsd/getroot.c:82 grub-core/osdep/freebsd/getroot.c:164 -#: grub-core/osdep/freebsd/getroot.c:258 grub-core/osdep/freebsd/getroot.c:316 -msgid "couldn't open geom" -msgstr "klarte ikke Ã¥ Ã¥pne geom" - -#: grub-core/osdep/freebsd/getroot.c:182 grub-core/osdep/freebsd/getroot.c:277 -msgid "couldn't find geli consumer" -msgstr "fant ikke geli-forbruker" - -#: grub-core/osdep/freebsd/getroot.c:282 -msgid "couldn't retrieve geli UUID" -msgstr "klarte ikke Ã¥ hente geli-UUID" - -#. TRANSLATORS: geom is the name of (k)FreeBSD device framework. -#. Usually left untranslated. "part" is the identifier of one of its -#. classes. -#: grub-core/osdep/freebsd/getroot.c:325 -msgid "couldn't find geom `part' class" -msgstr "fant ikke «part»-klasse i geom" - -#: grub-core/osdep/freebsd/hostdisk.c:72 grub-core/osdep/linux/hostdisk.c:93 -msgid "unaligned device size" -msgstr "uordnet enhetsstørrelse" - -#: grub-core/osdep/generic/blocklist.c:56 -#, c-format -msgid "attempting to read the core image `%s' from GRUB" -msgstr "prøver Ã¥ lese kjernebildet «%s» fra GRUB" - -#: grub-core/osdep/generic/blocklist.c:57 -#, c-format -msgid "attempting to read the core image `%s' from GRUB again" -msgstr "prøver Ã¥ lese kjernebildet «%s» fra GRUB igjen" - -#: grub-core/osdep/generic/blocklist.c:115 -#, c-format -msgid "cannot read `%s' correctly" -msgstr "klarte ikke Ã¥ lese «%s» skikkelig" - -#: grub-core/osdep/generic/blocklist.c:126 -msgid "failed to read the sectors of the core image" -msgstr "klarte ikke Ã¥ lese kjernebildets sektorer" - -#. TRANSLATORS: On GNU/Hurd, a "translator" is similar to a filesystem -#. mount, but handled by a userland daemon, whose invocation command line -#. is being fetched here. First %s is the file being looked at (for which -#. we are fetching the "translator" command line), second %s is the error -#. message. -#. -#: grub-core/osdep/hurd/getroot.c:79 -#, c-format -msgid "cannot get translator command line for path `%s': %s" -msgstr "klarte ikke Ã¥ hente «translator»-kommandolinje for stien «%s». %s" - -#: grub-core/osdep/hurd/getroot.c:82 -#, c-format -msgid "translator command line is empty for path `%s'" -msgstr "stien «%s» har en tom «translator»-kommandolinje" - -#. TRANSLATORS: we expect to get something like -#. /hurd/foobar --option1 --option2=baz /dev/something -#. -#: grub-core/osdep/hurd/getroot.c:98 -#, c-format -msgid "" -"translator `%s' for path `%s' has several non-option words, at least `%s' " -"and `%s'" -msgstr "" -"«translator»-kommando «%s» for stien «%s» inneholder ord som ikke er gyldige " -"valg (minst «%s» og «%s»)" - -#. TRANSLATORS: we expect to get something like -#. /hurd/foobar --option1 --option2=baz /dev/something -#. -#: grub-core/osdep/hurd/getroot.c:109 -#, c-format -msgid "" -"translator `%s' for path `%s' is given only options, cannot find device part" -msgstr "" -"«translator»-kommando «%s» for stien «%s» inneholder kun valg (finner ikke " -"enhetsdelen av linja)" - -#: grub-core/osdep/hurd/hostdisk.c:73 -#, c-format -msgid "Storage information for `%s' does not include type" -msgstr "Lagringsinformasjon for «%s» inneholder ikke type" - -#: grub-core/osdep/hurd/hostdisk.c:75 -#, c-format -msgid "`%s' is not a local disk" -msgstr "«%s» er ikke en lokal disk" - -#: grub-core/osdep/hurd/hostdisk.c:78 -#, c-format -msgid "" -"Storage information for `%s' indicates neither a plain partition nor a plain " -"disk" -msgstr "" -"Lagringsinformasjon for «%s» tilsier hverken ren partisjon eller ren disk" - -#: grub-core/osdep/linux/blocklist.c:81 grub-core/osdep/linux/blocklist.c:96 -#: grub-core/osdep/linux/blocklist.c:122 -#, c-format -msgid "can't retrieve blocklists: %s" -msgstr "klarte ikke Ã¥ hente blokkeringslister. %s" - -#: grub-core/osdep/linux/blocklist.c:84 -msgid "blocksize is not divisible by 512" -msgstr "blokkstørrelse kan ikke deles pÃ¥ 512" - -#: grub-core/osdep/linux/blocklist.c:86 -msgid "invalid zero blocksize" -msgstr "ugyldig null-blokkstørrelse" - -#: grub-core/osdep/linux/blocklist.c:90 util/setup.c:744 -msgid "can't retrieve blocklists" -msgstr "klarte ikke Ã¥ hente blokklister" - -#: grub-core/osdep/linux/getroot.c:154 -#, c-format -msgid "ioctl RAID_VERSION error: %s" -msgstr "ioctl RAID_VERSION-feil: %s" - -#: grub-core/osdep/linux/getroot.c:160 grub-core/osdep/linux/getroot.c:164 -#, c-format -msgid "unsupported RAID version: %d.%d" -msgstr "RAID-versjon %d støttes ikke.%d" - -#: grub-core/osdep/linux/getroot.c:169 -#, c-format -msgid "ioctl GET_ARRAY_INFO error: %s" -msgstr "ioctl GET_ARRAY_INFO-feil: %s" - -#: grub-core/osdep/linux/getroot.c:178 -#, c-format -msgid "ioctl GET_DISK_INFO error: %s" -msgstr "ioctl GET_DISK_INFO-feil: %s" - -#: grub-core/osdep/linux/getroot.c:608 grub-core/osdep/linux/getroot.c:678 -#: grub-core/osdep/linux/hostdisk.c:126 grub-core/osdep/unix/getroot.c:253 -#: grub-core/osdep/unix/getroot.c:642 grub-core/osdep/unix/platform.c:92 -#: grub-core/osdep/unix/platform.c:100 -#, c-format -msgid "Unable to open stream from %s: %s" -msgstr "Klarte ikke Ã¥ Ã¥pne strøm fra %s. %s" - -#: grub-core/osdep/linux/getroot.c:1033 -#, c-format -msgid "unknown kind of RAID device `%s'" -msgstr "RAID-enheten «%s» er av ukjent type" - -#: grub-core/osdep/linux/ofpath.c:181 -#, c-format -msgid "`obppath' not found in parent dirs of `%s', no IEEE1275 name discovery" -msgstr "Fant ikke «obppath» i foreldermapper av «%s». Ingen IEEE1275-navn" - -#: grub-core/osdep/linux/ofpath.c:222 grub-core/osdep/unix/getroot.c:505 -#: grub-core/osdep/unix/getroot.c:529 grub-core/osdep/unix/relpath.c:49 -#: util/grub-install.c:984 util/grub-install.c:1331 util/grub-probe.c:323 -#, c-format -msgid "failed to get canonical path of `%s'" -msgstr "fant ikke fullstendig sti til «%s»" - -#: grub-core/osdep/linux/ofpath.c:740 -#, c-format -msgid "unknown device type %s" -msgstr "enhetstype %s er ukjent" - -#: grub-core/osdep/linux/ofpath.c:758 util/ieee1275/grub-ofpathname.c:39 -#, c-format -msgid "Usage: %s DEVICE\n" -msgstr "Bruk: %s ENHET\n" - -#: grub-core/osdep/unix/exec.c:86 grub-core/osdep/unix/exec.c:172 -#: grub-core/osdep/unix/exec.c:217 -#, c-format -msgid "Unable to fork: %s" -msgstr "Klarte ikke Ã¥ kopiere: %s" - -#: grub-core/osdep/unix/exec.c:166 grub-core/osdep/unix/exec.c:211 -#, c-format -msgid "Unable to create pipe: %s" -msgstr "Klarte ikke Ã¥ lage datarør: %s" - -#: grub-core/osdep/unix/getroot.c:370 -msgid "cannot save the original directory" -msgstr "klarte ikke Ã¥ lagre opprinnelig mappe" - -#: grub-core/osdep/unix/getroot.c:423 grub-core/osdep/unix/getroot.c:480 -#: grub-core/osdep/unix/getroot.c:489 -msgid "cannot restore the original directory" -msgstr "klarte ikke Ã¥ gjenopprette opprinnelig mappe" - -#. TRANSLATORS: "stat" comes from the name of POSIX function. -#: grub-core/osdep/unix/getroot.c:551 grub-core/osdep/unix/hostdisk.c:61 -#: grub-core/osdep/unix/relpath.c:73 grub-core/osdep/unix/relpath.c:97 -#: util/getroot.c:160 util/getroot.c:162 util/grub-install.c:774 -#: util/grub-macbless.c:70 -#, c-format -msgid "cannot stat `%s': %s" -msgstr "klarte ikke Ã¥ hente statistikk om «%s». %s" - -#: grub-core/osdep/unix/hostdisk.c:293 -#, c-format -msgid "cannot make temporary file: %s" -msgstr "klarte ikke Ã¥ lage midlertidig fil: %s" - -#: grub-core/osdep/unix/hostdisk.c:311 -#, c-format -msgid "cannot make temporary directory: %s" -msgstr "klarte ikke Ã¥ lage midlertidig mappe: %s" - -#: grub-core/osdep/unix/platform.c:77 -#, c-format -msgid "" -"couldn't find IEEE1275 device path for %s.\n" -"You will have to set `boot-device' variable manually" -msgstr "" -"fant ikke IEEE1275-enhetssti til %s.\n" -"Du mÃ¥ gi variabelen «boot-device» en verdi manuelt" - -#. TRANSLATORS: This message is shown when required executable `%s' -#. isn't found. -#: grub-core/osdep/unix/platform.c:149 grub-core/osdep/unix/platform.c:189 -#, c-format -msgid "%s: not found" -msgstr "fant ikke %s" - -#: grub-core/osdep/unix/platform.c:225 -#, c-format -msgid "" -"`nvsetenv' failed. \n" -"You will have to set `boot-device' variable manually. At the IEEE1275 " -"prompt, type:\n" -" %s\n" -msgstr "" -"«nvsetenv» mislyktes. \n" -"Du mÃ¥ gi variabelen «boot-device» en verdi manuelt. Skriv følgende ved " -"IEEE1275-ledeteksten:\n" -" %s\n" - -#: grub-core/osdep/unix/platform.c:240 -msgid "You will have to set `SystemPartition' and `OSLoader' manually." -msgstr "" -"Du mÃ¥ gi verdier til variablene «SystemPartition» og «OSLoader» manuelt." - -#. TRANSLATORS: canonical pathname is the -#. complete one e.g. /etc/fstab. It has -#. to contain `/' normally, if it doesn't -#. we're in trouble and throw this error. -#: grub-core/osdep/unix/relpath.c:90 -msgid "no `/' in canonical filename" -msgstr "ingen «/» i fullstendig filnavn" - -#: grub-core/osdep/windows/hostdisk.c:151 -msgid "cygwin_conv_path() failed" -msgstr "cygwin_conv_path() mislyktes" - -#: grub-core/osdep/windows/hostdisk.c:501 util/grub-install.c:570 -msgid "couldn't retrieve random data" -msgstr "klarte ikke Ã¥ hente vilkÃ¥rlighetsdata" - -#: grub-core/osdep/windows/platform.c:97 -msgid "Insufficient privileges to access firmware, assuming BIOS" -msgstr "" -"Manger tilstrekkelige privilegier for Ã¥ bruke fastvare. Bruker BIOS-modus" - -#: grub-core/osdep/windows/platform.c:225 -msgid "no EFI routines are available when running in BIOS mode" -msgstr "ingen EFI-rutiner er tilgjengelig i BIOS-modus" - -#: grub-core/osdep/windows/platform.c:240 -msgid "unexpected EFI error" -msgstr "uforventet EFI-feil" - -#: grub-core/osdep/windows/platform.c:315 -msgid "Couldn't find a free BootNNNN slot" -msgstr "Fant ingen ledig BootNNNN-plass" - -#: grub-core/partmap/gpt.c:191 -msgid "" -"this GPT partition label contains no BIOS Boot Partition; embedding won't be " -"possible" -msgstr "" -"denne GPT-partisjonsetiketten mangler BIOS-oppstartspartisjon. Innebygging " -"er ikke mulig" - -#: grub-core/partmap/gpt.c:196 -msgid "your BIOS Boot Partition is too small; embedding won't be possible" -msgstr "BIOS-oppstartspartisjonen er for liten. Innebygging er ikke mulig" - -#. TRANSLATORS: MBR gap and boot track is the same thing and is the space -#. between MBR and first partitition. If your language translates well only -#. "boot track", you can just use it everywhere. Next two messages are about -#. RAID controllers/software bugs which GRUB has to live with. Please spread -#. the message that these are bugs in other software and not merely -#. suboptimal behaviour. -#: grub-core/partmap/msdos.c:51 -#, c-format -msgid "" -"Sector %llu is already in use by raid controller `%s'; avoiding it. Please " -"ask the manufacturer not to store data in MBR gap" -msgstr "" -"Sektor %llu brukes allerede av RAID-kontroller «%s», og blir unngÃ¥tt. Du bør " -"be fabrikanten om Ã¥ ikke lagre data i oppstartsomrÃ¥det, ettersom dette fører " -"til problemer" - -#: grub-core/partmap/msdos.c:54 -#, c-format -msgid "" -"Sector %llu is already in use by the program `%s'; avoiding it. This " -"software may cause boot or other problems in future. Please ask its authors " -"not to store data in the boot track" -msgstr "" -"Sektor %llu brukes allerede av programmet «%s», og blir unngÃ¥tt. Dette " -"programmet kan forÃ¥rsake problemer med oppstart og/eller annet senere. Du " -"bør be programutviklerne om Ã¥ ikke lagre data i oppstartsomrÃ¥det, ettersom " -"dette fører til problemer" - -#: grub-core/partmap/msdos.c:384 -msgid "" -"other software is using the embedding area, and there is not enough room for " -"core.img. Such software is often trying to store data in a way that avoids " -"detection. We recommend you investigate" -msgstr "" -"innebyggingsomrÃ¥det brukes av annen programvare, og det er ikke nok plass " -"til core.img. Slik programvare prøver ofte Ã¥ lagre data pÃ¥ en mÃ¥te som gjør " -"at du ikke oppdager det. Du oppfordres til Ã¥ undersøke hva som ligger pÃ¥ " -"omrÃ¥det" - -#: grub-core/partmap/msdos.c:395 -msgid "" -"this msdos-style partition label has no post-MBR gap; embedding won't be " -"possible" -msgstr "" -"denne msdos-partisjonsetiketten mangler gap etter MBR-omrÃ¥det. Innebygging " -"er ikke mulig" - -#: grub-core/partmap/msdos.c:404 -msgid "your embedding area is unusually small. core.img won't fit in it." -msgstr "" -"innebyggingsomrÃ¥det ditt er uvanlig smÃ¥tt, og har ikke plass til core.img." - -#: grub-core/parttool/msdospart.c:39 -msgid "Make partition active" -msgstr "Gjør partisjon aktiv" - -#: grub-core/parttool/msdospart.c:51 -msgid "not a primary partition" -msgstr "ikke en primærpartisjon" - -#: grub-core/parttool/msdospart.c:69 -#, c-format -msgid "Partition %d is active now. \n" -msgstr "Partisjon %d er nÃ¥ aktiv. \n" - -#: grub-core/parttool/msdospart.c:74 -#, c-format -msgid "Cleared active flag on %d. \n" -msgstr "Fjernet «active»-flagg pÃ¥ %d. \n" - -#: grub-core/parttool/msdospart.c:87 -msgid "Change partition type" -msgstr "Endre partisjonstype" - -#: grub-core/parttool/msdospart.c:88 -msgid "Set `hidden' flag in partition type" -msgstr "SlÃ¥ pÃ¥ «hidden»-flagg under partisjonstype" - -#: grub-core/parttool/msdospart.c:130 -#, c-format -msgid "the partition type 0x%x isn't valid" -msgstr "0x%x er en ugyldig partisjonstype" - -#. TRANSLATORS: In this case we're actually writing to the disk and actively -#. modifying partition type rather than just defining it. -#: grub-core/parttool/msdospart.c:137 -#, c-format -msgid "Setting partition type to 0x%x\n" -msgstr "Velger 0x%x som partisjonstype\n" - -#. TRANSLATORS: 0 is a quantifier. "break" (similar to bash) -#. can be used e.g. to break 3 loops at once. -#. But asking it to break 0 loops makes no sense. -#: grub-core/script/execute.c:143 -msgid "can't break 0 loops" -msgstr "du kan ikke bryte 0 sløyfer" - -#. TRANSLATORS: It's about not being -#. inside a function. "return" can be used only -#. in a function and this error occurs if it's used -#. anywhere else. -#: grub-core/script/execute.c:227 -msgid "not in function body" -msgstr "dette finnes ikke i funksjonen" - -#: grub-core/script/execute.c:371 -#, c-format -msgid "invalid variable name `%s'" -msgstr "«%s» er et ugyldig variabelnavn" - -#: grub-core/script/execute.c:953 -msgid "cannot allocate command buffer" -msgstr "klarte ikke Ã¥ tildele kommando-mellomlager" - -#: grub-core/script/lexer.c:144 util/grub-fstest.c:330 -msgid "unexpected end of file" -msgstr "uforventet slutt pÃ¥ fil" - -#: grub-core/script/main.c:55 grub-core/script/main.c:57 -#: grub-core/script/main.c:59 grub-core/script/main.c:67 -msgid "[NUM]" -msgstr "[NUM]" - -#: grub-core/script/main.c:55 -msgid "Exit from loops" -msgstr "GÃ¥ ut av løkker" - -#: grub-core/script/main.c:57 -msgid "Continue loops" -msgstr "Fortsett løkker" - -#. TRANSLATORS: Positional arguments are -#. arguments $0, $1, $2, ... -#: grub-core/script/main.c:62 -msgid "Shift positional parameters." -msgstr "Endre posisjonsparametre" - -#: grub-core/script/main.c:64 -msgid "[VALUE]..." -msgstr "[VERDI] …" - -#: grub-core/script/main.c:65 -msgid "Set positional parameters." -msgstr "Velg posisjonsparametre." - -#. TRANSLATORS: It's a command description -#. and "Return" is a verb, not a noun. The -#. command in question is "return" and -#. has exactly the same semanics as bash -#. equivalent. -#: grub-core/script/main.c:73 -msgid "Return from a function." -msgstr "GÃ¥ ut av en funksjon." - -#: grub-core/term/gfxterm_background.c:176 -msgid "[-m (stretch|normal)] FILE" -msgstr "[-m (stretch|normal)] FIL" - -#: grub-core/term/gfxterm_background.c:177 -msgid "Load background image for active terminal." -msgstr "Last inn bakgrunnsbilde for aktiv terminal." - -#: grub-core/term/gfxterm_background.c:182 util/grub-install.c:302 -#: util/grub-install.c:303 util/grub-mkrescue.c:107 util/grub-mkrescue.c:108 -#: util/grub-render-label.c:61 util/grub-render-label.c:63 -msgid "COLOR" -msgstr "COLOR" - -#: grub-core/term/gfxterm_background.c:183 -msgid "Set background color for active terminal." -msgstr "Velg bakgrunnsfarge for aktiv terminal." - -#: grub-core/term/i386/coreboot/cbmemc.c:139 -msgid "Show CBMEM console content." -msgstr "Vis CBMEM-konsollinnhold" - -#: grub-core/term/serial.c:57 -msgid "Set the serial unit." -msgstr "Velg seriellenhet." - -#: grub-core/term/serial.c:58 -msgid "Set the serial port address." -msgstr "Velg seriellport-adresse." - -#: grub-core/term/serial.c:59 -msgid "Set the serial port speed." -msgstr "Velg seriellport-hastighet." - -#: grub-core/term/serial.c:60 -msgid "Set the serial port word length." -msgstr "Velg seriellport-ordlengde." - -#: grub-core/term/serial.c:61 -msgid "Set the serial port parity." -msgstr "Velg seriellport-paritet." - -#: grub-core/term/serial.c:62 -msgid "Set the serial port stop bits." -msgstr "Velg seriellport-stoppebiter." - -#: grub-core/term/serial.c:63 -msgid "Set the base frequency." -msgstr "Velg frekvens." - -#: grub-core/term/serial.c:64 -msgid "Enable/disable RTS/CTS." -msgstr "SlÃ¥ pÃ¥/av RTS/CTS." - -#: grub-core/term/serial.c:218 -#, c-format -msgid "serial port `%s' isn't found" -msgstr "fant ikke seriellporten «%s»" - -#: grub-core/term/serial.c:254 -msgid "unsupported serial port flow control" -msgstr "seriellport-flytkontrollen støttes ikke" - -#: grub-core/term/serial.c:429 -msgid "[OPTIONS...]" -msgstr "[VALG …]" - -#: grub-core/term/serial.c:430 -msgid "Configure serial port." -msgstr "Sett opp seriellport." - -#: grub-core/term/terminfo.c:184 -#, c-format -msgid "unknown terminfo type `%s'" -msgstr "«%s» er en ukjent terminfo-type" - -#: grub-core/term/terminfo.c:668 -msgid "ASCII" -msgstr "ASCII" - -#: grub-core/term/terminfo.c:671 -msgid "UTF-8" -msgstr "UTF-8" - -#. TRANSLATORS: visually ordered UTF-8 is a non-compliant encoding -#. based on UTF-8 with right-to-left languages written in reverse. -#. Used on some terminals. Normal UTF-8 is refered as -#. "logically-ordered UTF-8" by opposition. -#: grub-core/term/terminfo.c:677 -msgid "visually-ordered UTF-8" -msgstr "visuelt sortert UTF-8" - -#: grub-core/term/terminfo.c:680 -msgid "Unknown encoding" -msgstr "Ukjent koding" - -#: grub-core/term/terminfo.c:684 -msgid "Current terminfo types:" -msgstr "Gjeldende terminfo-typer:" - -#: grub-core/term/terminfo.c:699 -msgid "Terminal is ASCII-only [default]." -msgstr "Terminalen bruker kun ASCII [standard]." - -#: grub-core/term/terminfo.c:700 -msgid "Terminal is logical-ordered UTF-8." -msgstr "Terminalen bruker logisk sortert UTF-8." - -#: grub-core/term/terminfo.c:701 -msgid "Terminal is visually-ordered UTF-8." -msgstr "Terminalen bruker visuelt sortert UTF-8." - -#: grub-core/term/terminfo.c:703 -msgid "Terminal has specified geometry." -msgstr "Terminalen har spesifisert størrelse." - -#. TRANSLATORS: "x" has to be entered in, like an identifier, so please don't -#. use better Unicode codepoints. -#: grub-core/term/terminfo.c:706 -msgid "WIDTHxHEIGHT." -msgstr "BREDDExHØYDE." - -#: grub-core/term/terminfo.c:746 -msgid "incorrect terminal dimensions specification" -msgstr "feilaktig spesifikasjon av terminalstørrelse" - -#: grub-core/term/terminfo.c:776 -#, c-format -msgid "terminal %s isn't found or it's not handled by terminfo" -msgstr "terminal %s finnes ikke, eller hÃ¥ndteres ikke av terminfo" - -#: grub-core/term/terminfo.c:785 -msgid "[[-a|-u|-v] [-g WxH] TERM [TYPE]]" -msgstr "[[-a|-u|-v] [-g BxH] TERM [TYPE]]" - -#: grub-core/term/terminfo.c:786 -msgid "Set terminfo type of TERM to TYPE.\n" -msgstr "Velg terminfo-type for TERM med TYPE.\n" - -#. TRANSLATORS: this is the BLOCK-argument, not -#. environment block. -#: grub-core/tests/test_blockarg.c:49 -msgid "Print and execute block argument." -msgstr "SKriv ut og kjør blokkargument." - -#. TRANSLATORS: We're speaking about bitmap images like -#. JPEG or PNG. -#: grub-core/video/bitmap.c:209 -#, c-format -msgid "bitmap file `%s' is of unsupported format" -msgstr "punktgrafikk-fila «%s» er av en type som ikke støttes" - -#: grub-core/video/i386/pc/vbe.c:1191 -#, c-format -msgid " VBE info: version: %d.%d OEM software rev: %d.%d\n" -msgstr " VBE-info: versjon: %d.%d OEM-programvare-revisjon: %d.%d\n" - -#: grub-core/video/i386/pc/vbe.c:1198 -#, c-format -msgid " total memory: %d KiB\n" -msgstr " minne totalt: %d KiB\n" - -#: grub-core/video/video.c:596 grub-core/video/video.c:762 -msgid "no suitable video mode found" -msgstr "fant ingen passende videomodus" - -#: include/grub/crypto.h:403 -msgid "access denied" -msgstr "ingen tilgang" - -#: include/grub/util/install.h:30 include/grub/util/install.h:35 -msgid "MODULES" -msgstr "MODULER" - -#: include/grub/util/install.h:31 -msgid "pre-load specified modules MODULES" -msgstr "last inn valgte MODULER pÃ¥ forhÃ¥nd" - -#: include/grub/util/install.h:33 -msgid "embed a specific DTB" -msgstr "bygg inn spesifikk DTB" - -#: include/grub/util/install.h:36 -msgid "install only MODULES and their dependencies [default=all]" -msgstr "" -"bare installer valgte MODULER og ting de er avhengige av (standard=alle)" - -#: include/grub/util/install.h:37 -msgid "THEMES" -msgstr "TEMAER" - -#: include/grub/util/install.h:38 -#, c-format -msgid "install THEMES [default=%s]" -msgstr "installer TEMAER (standard=%s)" - -#: include/grub/util/install.h:39 -msgid "FONTS" -msgstr "SKRIFTTYPER" - -#: include/grub/util/install.h:40 -#, c-format -msgid "install FONTS [default=%s]" -msgstr "installer SKRIFTTYPER (standard=%s)" - -#: include/grub/util/install.h:41 -msgid "LOCALES" -msgstr "REGIONER" - -#: include/grub/util/install.h:42 -msgid "install only LOCALES [default=all]" -msgstr "bare installer valgte REGIONER (standard=alle)" - -#: include/grub/util/install.h:45 -msgid "compress GRUB files [optional]" -msgstr "komprimer GRUB-filer (valgfritt)" - -#: include/grub/util/install.h:48 util/grub-mkimage.c:83 -msgid "choose the compression to use for core image" -msgstr "velg komprimeringsmetoden som skal brukes pÃ¥ kjernebildet" - -#. TRANSLATORS: platform here isn't identifier. It can be translated. -#: include/grub/util/install.h:51 include/grub/util/install.h:54 -#: util/grub-mkimage.c:66 -#, c-format -msgid "use images and modules under DIR [default=%s/]" -msgstr "use images and modules under DIR [default=%s/]" - -#: include/grub/util/install.h:57 -#, c-format -msgid "use translations under DIR [default=%s]" -msgstr "bruk oversettelser i valgt mappe (DIR) (standard=%s)" - -#: include/grub/util/install.h:60 -#, c-format -msgid "use themes under DIR [default=%s]" -msgstr "bruk temaer i valgt mappe (DIR) (standard=%s)" - -#: include/grub/util/install.h:65 util/grub-mkimage.c:78 -msgid "embed FILE as public key for signature checking" -msgstr "bruk valgt FIL som offentlig nøkkel for signaturkontroll" - -#: util/editenv.c:59 util/grub-editenv.c:201 util/grub-install-common.c:535 -#: util/grub-mkimage.c:315 util/setup.c:791 -#, c-format -msgid "cannot sync `%s': %s" -msgstr "klarte ikke Ã¥ synkronisere «%s». %s" - -#: util/editenv.c:64 -#, c-format -msgid "cannot rename the file %s to %s" -msgstr "klarte ikke Ã¥ gi fila %s det nye navnet %s" - -#: util/getroot.c:402 -#, c-format -msgid "disk does not exist, so falling back to partition device %s" -msgstr "disken finnes ikke, sÃ¥ partisjonsenheten %s brukes som reserve" - -#: util/grub-editenv.c:45 util/grub-fstest.c:506 -msgid "Commands:" -msgstr "Kommandoer:" - -#: util/grub-editenv.c:47 -msgid "Create a blank environment block file." -msgstr "Lag en tom miljø-blokkfil." - -#: util/grub-editenv.c:49 -msgid "List the current variables." -msgstr "Vis gjeldende variabler." - -#. TRANSLATORS: "set" is a keyword. It's a summary of "set" subcommand. -#: util/grub-editenv.c:51 -msgid "set [NAME=VALUE ...]" -msgstr "set [NAVN=VERDI …]" - -#: util/grub-editenv.c:52 -msgid "Set variables." -msgstr "Velg («set») verdier for variabler." - -#. TRANSLATORS: "unset" is a keyword. It's a summary of "unset" subcommand. -#: util/grub-editenv.c:54 -msgid "unset [NAME ...]" -msgstr "unset [NAVN …]" - -#: util/grub-editenv.c:55 -msgid "Delete variables." -msgstr "Fjern variabler." - -#: util/grub-editenv.c:57 -msgid "Options:" -msgstr "Valg:" - -#: util/grub-editenv.c:84 -msgid "You need to specify at least one command.\n" -msgstr "Du mÃ¥ velge minst én kommando.\n" - -#: util/grub-editenv.c:113 -msgid "FILENAME COMMAND" -msgstr "FILNAVN KOMMANDO" - -#: util/grub-editenv.c:114 -msgid "Tool to edit environment block." -msgstr "Verktøy for Ã¥ redigere miljøblokk." - -#: util/grub-editenv.c:116 -#, c-format -msgid "" -"If FILENAME is `-', the default value %s is used.\n" -"\n" -"There is no `delete' command; if you want to delete the whole environment\n" -"block, use `rm %s'." -msgstr "" -"Hvis FILNAVN er «-», brukes standardverdien %s.\n" -"\n" -"Det finnes ingen «delete»-kommando. Bruk «rm %s» hvis du\n" -"vil slette hele miljøblokka." - -#: util/grub-editenv.c:162 -msgid "invalid environment block" -msgstr "ugyldig miljøblokk" - -#: util/grub-editenv.c:217 -#, c-format -msgid "invalid parameter %s" -msgstr "%s er et gyldig parameter" - -#: util/grub-editenv.c:222 -msgid "environment block too small" -msgstr "miljøblokka er for liten" - -#: util/grub-fstest.c:107 -#, c-format -msgid "disk read fails at offset %lld, length %lld" -msgstr "lesefeil pÃ¥ disken ved posisjon %lld, lengde %lld" - -#: util/grub-fstest.c:138 -#, c-format -msgid "invalid skip value %lld" -msgstr "%lld er en ugyldig ignoreringsverdi" - -#: util/grub-fstest.c:160 util/grub-fstest.c:246 -#, c-format -msgid "read error at offset %llu: %s" -msgstr "lesefeil ved posisjon %llu: %s" - -#: util/grub-fstest.c:210 -#, c-format -msgid "cannot open OS file `%s': %s" -msgstr "klarte ikke Ã¥ Ã¥pne OS-fila «%s»: %s" - -#: util/grub-fstest.c:225 util/misc.c:126 -#, c-format -msgid "cannot write to the stdout: %s" -msgstr "klarte ikke Ã¥ skrive til standard utkanal: %s" - -#: util/grub-fstest.c:259 -#, c-format -msgid "compare fail at offset %llu" -msgstr "sammenlikningsfeil ved posisjon %llu" - -#: util/grub-fstest.c:280 util/grub-fstest.c:314 -#, c-format -msgid "OS file %s open error: %s" -msgstr "Feil ved Ã¥pning av OS-fila %s: %s" - -#: util/grub-fstest.c:402 util/grub-mount.c:392 -#, c-format -msgid "`loopback' command fails: %s" -msgstr "«loopback»-kommando mislyktes: %s" - -#: util/grub-fstest.c:413 util/grub-mount.c:402 -#, c-format -msgid "`cryptomount' command fails: %s" -msgstr "«cryptomount»-kommando mislyktes: %s" - -#: util/grub-fstest.c:474 util/grub-fstest.c:478 -msgid "couldn't retrieve UUID" -msgstr "klarte ikke Ã¥ hente UUID" - -#: util/grub-fstest.c:507 -msgid "ls PATH" -msgstr "ls STI" - -#: util/grub-fstest.c:507 -msgid "List files in PATH." -msgstr "Vis filer pÃ¥ valgt STI." - -#: util/grub-fstest.c:508 -msgid "cp FILE LOCAL" -msgstr "cp FIL LOKAL" - -#: util/grub-fstest.c:508 -msgid "Copy FILE to local file LOCAL." -msgstr "Kopier FIL til valgt LOKAL fil." - -#: util/grub-fstest.c:509 -msgid "cat FILE" -msgstr "cat FIL" - -#: util/grub-fstest.c:509 -msgid "Copy FILE to standard output." -msgstr "Kopier valgt FIL til standardutdata." - -#: util/grub-fstest.c:510 -msgid "cmp FILE LOCAL" -msgstr "cmp FIL LOKAL" - -#: util/grub-fstest.c:510 -msgid "Compare FILE with local file LOCAL." -msgstr "Sammenlikn FIL med valgt LOKAL fil." - -#: util/grub-fstest.c:511 -msgid "hex FILE" -msgstr "hex FIL" - -#: util/grub-fstest.c:511 -msgid "Show contents of FILE in hex." -msgstr "Vis innhold i valgt FIL i heksadesimal form." - -#: util/grub-fstest.c:512 -msgid "crc FILE" -msgstr "crc FIL" - -#: util/grub-fstest.c:512 -msgid "Get crc32 checksum of FILE." -msgstr "Beregn crc32-kontrollsum av valgt FIL." - -#: util/grub-fstest.c:513 -msgid "blocklist FILE" -msgstr "blocklist FIL" - -#: util/grub-fstest.c:513 -msgid "Display blocklist of FILE." -msgstr "Vis blokkliste av valgt FIL." - -#: util/grub-fstest.c:514 -msgid "xnu_uuid DEVICE" -msgstr "xnu_uuid ENHET" - -#: util/grub-fstest.c:514 -msgid "Compute XNU UUID of the device." -msgstr "Lag XNU-UUID for valgt enhet." - -#. TRANSLATORS: bitmaps are images like e.g. in JPEG. -#: util/grub-fstest.c:517 util/grub-fstest.c:518 util/grub-fstest.c:519 -#: util/grub-mkfont.c:938 util/grub-mkfont.c:951 util/grub-mkfont.c:952 -#: util/grub-mkpasswd-pbkdf2.c:46 util/grub-mkpasswd-pbkdf2.c:47 -#: util/grub-mkpasswd-pbkdf2.c:48 -msgid "NUM" -msgstr "NUM" - -#: util/grub-fstest.c:517 -msgid "Skip N bytes from output file." -msgstr "Hopp over N byte i utdatafil." - -#: util/grub-fstest.c:518 -msgid "Handle N bytes in output file." -msgstr "HÃ¥ndter N antall byte i utdatafil." - -#: util/grub-fstest.c:519 -msgid "Specify the number of input files." -msgstr "Velg antall inndatafiler." - -#: util/grub-fstest.c:520 util/grub-mount.c:453 -msgid "Set debug environment variable." -msgstr "Gi miljøvariabelen for feilsøking («debug») en verdi." - -#: util/grub-fstest.c:521 util/grub-mount.c:454 -msgid "Mount crypto devices." -msgstr "Monter krypterte enheter." - -#. TRANSLATORS: "prompt" is a keyword. -#: util/grub-fstest.c:524 util/grub-mount.c:457 -msgid "FILE|prompt" -msgstr "FIL|ledetekst" - -#: util/grub-fstest.c:524 util/grub-mount.c:457 -msgid "Load zfs crypto key." -msgstr "Last inn zfs-krypteringsnøkkel." - -#: util/grub-fstest.c:526 -msgid "Uncompress data." -msgstr "Pakk ut data." - -#: util/grub-fstest.c:605 -msgid "Invalid disk count.\n" -msgstr "Ugyldig diskantall.\n" - -#. TRANSLATORS: disk count is optional but if it's there it must -#. be before disk list. So please don't imply disk count as mandatory. -#. -#: util/grub-fstest.c:613 -msgid "Disk count must precede disks list.\n" -msgstr "Diskantall mÃ¥ komme før diskliste.\n" - -#: util/grub-fstest.c:633 -msgid "No command is specified.\n" -msgstr "Ingen kommando er gitt.\n" - -#: util/grub-fstest.c:638 -msgid "Not enough parameters to command.\n" -msgstr "Kommandoen mangler parametre.\n" - -#: util/grub-fstest.c:711 -#, c-format -msgid "Invalid command %s.\n" -msgstr "%s er en ugyldig kommando.\n" - -#: util/grub-fstest.c:724 -msgid "IMAGE_PATH COMMANDS" -msgstr "BILDE-STI KOMMANDOER" - -#: util/grub-fstest.c:725 util/grub-mount.c:553 -msgid "Debug tool for filesystem driver." -msgstr "Feilsøkingsverktøy for filsystem-driver." - -#: util/grub-glue-efi.c:53 -msgid "set input filename for 32-bit part." -msgstr "velg inndata-filnavn for 32-bit-del." - -#: util/grub-glue-efi.c:55 -msgid "set input filename for 64-bit part." -msgstr "velg inndata-filnavn for 64-bit-del." - -#: util/grub-glue-efi.c:57 util/grub-mklayout.c:55 util/grub-render-label.c:71 -msgid "set output filename. Default is STDOUT" -msgstr "velg utdata-filnavn. Standard er STDOUT" - -#: util/grub-glue-efi.c:94 util/grub-mklayout.c:476 -#: util/grub-mkpasswd-pbkdf2.c:86 util/grub-render-label.c:131 -msgid "[OPTIONS]" -msgstr "[VALG]" - -#: util/grub-glue-efi.c:95 -msgid "Glue 32-bit and 64-bit binary into Apple universal one." -msgstr "Lim 32-bit- og 64-bit-binærfil sammen til en universell Apple-fil." - -#: util/grub-glue-efi.c:116 -msgid "Missing input file\n" -msgstr "Inndatafil mangler\n" - -#: util/grub-install-common.c:127 util/grub-install-common.c:151 -#, c-format -msgid "cannot copy `%s' to `%s': %s" -msgstr "klarte ikke Ã¥ kopiere «%s» til «%s». %s" - -#: util/grub-install-common.c:147 -#, c-format -msgid "can't compress `%s' to `%s'" -msgstr "klarte ikke Ã¥ komprimere «%s» til «%s»" - -#: util/grub-install-common.c:196 util/grub-install-common.c:552 -#: util/grub-install-common.c:579 util/grub-install-common.c:621 -#, c-format -msgid "cannot open directory `%s': %s" -msgstr "klarte ikke Ã¥ Ã¥pne mappa «%s». %s" - -#: util/grub-install-common.c:212 -#, c-format -msgid "cannot delete `%s': %s" -msgstr "klarte ikke Ã¥ slette «%s». %s" - -#: util/grub-install-common.c:324 util/grub-mkimage.c:209 -msgid "grub-mkimage is compiled without XZ support" -msgstr "grub-mkimage er installert uten XZ-støtte" - -#: util/grub-install-common.c:332 util/grub-mkimage.c:217 -#, c-format -msgid "Unknown compression format %s" -msgstr "%s er et ukjent komprimeringsformat" - -#: util/grub-install-common.c:400 -#, c-format -msgid "Unrecognized compression `%s'" -msgstr "«%s» er en ukjent komprimeringsmetode" - -#: util/grub-install-common.c:509 -#, c-format -msgid "unknown target format %s" -msgstr "mÃ¥lformat %s er ukjent" - -#: util/grub-install-common.c:700 -#, c-format -msgid "cannot find locale `%s'" -msgstr "fant ikke regionen «%s»" - -#: util/grub-install-common.c:939 -#, c-format -msgid "%s doesn't exist. Please specify --target or --directory" -msgstr "%s finnes ikke. Velg «--target» (mÃ¥l) eller «--directory» (mappe)" - -#: util/grub-install-common.c:948 util/grub-install-common.c:951 -#, c-format -msgid "invalid modinfo file `%s'" -msgstr "«%s» er en ugyldig modinfo-fil" - -#: util/grub-install-common.c:966 -#, c-format -msgid "Unknown platform `%s-%s'" -msgstr "«%s-%s» er en ukjent plattform" - -#: util/grub-install.c:238 -msgid "More than one install device?" -msgstr "Flere enn én installasjonsenhet?" - -#: util/grub-install.c:251 -#, c-format -msgid "" -"install GRUB images under the directory DIR/%s instead of the %s directory" -msgstr "installer GRUB-bilder under mappa DIR/%s i stedet for mappa %s" - -#: util/grub-install.c:256 util/grub-probe.c:734 -msgid "TARGET" -msgstr "MÃ…L" - -#. TRANSLATORS: "TARGET" as in "target platform". -#: util/grub-install.c:258 -#, c-format -msgid "install GRUB for TARGET platform [default=%s]; available targets: %s" -msgstr "" -"installer GRUB pÃ¥ valgt MÃ…Lplattform (standard=%s). Tilgjengelige mÃ¥l: %s" - -#. TRANSLATORS: "may break" doesn't just mean that option wouldn't have any -#. effect but that it will make the resulting install unbootable from HDD. -#. TRANSLATORS: The potential breakage isn't limited to floppies but it's -#. likely to make the install unbootable from HDD. -#: util/grub-install.c:267 util/grub-setup.c:94 -msgid "" -"make the drive also bootable as floppy (default for fdX devices). May break " -"on some BIOSes." -msgstr "" -"la enheten starte opp i diskettmodus (standard for fdX-enheter). Dette " -"fungerer ikke med alle BIOS-er." - -#: util/grub-install.c:270 -msgid "delete device map if it already exists" -msgstr "slett enhetskart hvis det finnes allerede" - -#: util/grub-install.c:272 util/grub-setup.c:87 -msgid "install even if problems are detected" -msgstr "ikke stans installasjonen selv om problemer oppstÃ¥r" - -#: util/grub-install.c:274 -msgid "use identifier file even if UUID is available" -msgstr "bruk identifikasjonsfil selv hvis UUID er tilgjengelig" - -#: util/grub-install.c:276 -msgid "" -"disk module to use (biosdisk or native). This option is only available on " -"BIOS target." -msgstr "" -"diskmoduler som skal brukes (biosdisk eller innebygd). Dette valget er bare " -"tilgjengelig pÃ¥ BIOS-mÃ¥l." - -#: util/grub-install.c:279 -msgid "" -"don't update the `boot-device'/`Boot*' NVRAM variables. This option is only " -"available on EFI and IEEE1275 targets." -msgstr "" -"ikke oppdater NVRAM-variablene «boot-device» og «Boot*». Dette valget er " -"bare tilgjengelig pÃ¥ EFI- og IEEE1275-mÃ¥l." - -#: util/grub-install.c:282 util/grub-setup.c:89 -msgid "do not probe for filesystems in DEVICE" -msgstr "ikke undersøk filsystemer pÃ¥ valgt ENHET" - -#: util/grub-install.c:284 -msgid "do not install bootsector" -msgstr "ikke installer oppstartssektor" - -#: util/grub-install.c:286 util/grub-setup.c:96 -msgid "" -"Do not apply any reed-solomon codes when embedding core.img. This option is " -"only available on x86 BIOS targets." -msgstr "" -"Ikke bruk reed-solomon-koder ved innbygging av core.img. Dette valget er " -"bare tilgjengelig pÃ¥ x86-BIOS-mÃ¥l." - -#: util/grub-install.c:293 -msgid "" -"the installation device is removable. This option is only available on EFI." -msgstr "" -"installasjonsenheten kan fjernes. Dette valget er bare tilgjengelig for EFI." - -#: util/grub-install.c:295 -msgid "ID" -msgstr "ID" - -#: util/grub-install.c:296 -msgid "the ID of bootloader. This option is only available on EFI and Macs." -msgstr "" -"oppstartslasterens ID. Dette valget er bare tilgjengelig pÃ¥ EFI og Mac." - -#: util/grub-install.c:298 -msgid "use DIR as the EFI System Partition root." -msgstr "bruk valgt MAPPE som rot av EFI-systempartisjon." - -#: util/grub-install.c:300 -msgid "use DIR for PPC MAC install." -msgstr "bruk valgt MAPPE til PPC MAC-installasjon." - -#: util/grub-install.c:301 util/grub-mkrescue.c:106 -msgid "use FILE as font for label" -msgstr "bruk valgt FIL som skrifttype pÃ¥ etikett" - -#: util/grub-install.c:302 util/grub-mkrescue.c:107 -msgid "use COLOR for label" -msgstr "bruk valgt FARGE pÃ¥ etikett" - -#: util/grub-install.c:303 util/grub-mkrescue.c:108 -msgid "use COLOR for label background" -msgstr "bruk valgt FARGE pÃ¥ etikett-forgrunnen" - -#: util/grub-install.c:304 util/grub-mkrescue.c:110 -msgid "use STRING as product version" -msgstr "bruk STRENG som produktversjon" - -#: util/grub-install.c:361 -msgid "[OPTION] [INSTALL_DEVICE]" -msgstr "[VALG] [INSTALLASJONSENHET]" - -#: util/grub-install.c:362 -msgid "Install GRUB on your drive." -msgstr "Installer GRUB pÃ¥ lagringsenheten." - -#: util/grub-install.c:363 -#, c-format -msgid "" -"INSTALL_DEVICE must be system device filename.\n" -"%s copies GRUB images into %s. On some platforms, it may also install GRUB " -"into the boot sector." -msgstr "" -"INSTALLASJONSENHETen mÃ¥ være et enhetsnavn fra systemet.\n" -"Bruk %s for Ã¥ kopiere GRUB-bilder til %s. Dette installerer ogsÃ¥ GRUB i " -"oppstartssektoren pÃ¥ enkelte plattformer." - -#: util/grub-install.c:672 -#, c-format -msgid "the drive %s is defined multiple times in the device map %s" -msgstr "enheten %s er definert flere ganger pÃ¥ enhetskartet %s" - -#: util/grub-install.c:878 -msgid "Unable to determine your platform. Use --target." -msgstr "Klarte ikke Ã¥ finne ut hvilken plattform du bruker. Bruk «--target»." - -#: util/grub-install.c:891 -#, c-format -msgid "Installing for %s platform.\n" -msgstr "Installerer for plattformen %s.\n" - -#: util/grub-install.c:939 -msgid "install device isn't specified" -msgstr "du har ikke valgt installasjonsenhet" - -#: util/grub-install.c:1057 -msgid "cannot find EFI directory" -msgstr "fant ikke EFI-mappe" - -#: util/grub-install.c:1060 util/grub-install.c:1209 util/grub-install.c:1254 -#: util/grub-macbless.c:76 util/grub-probe.c:329 util/setup.c:316 -#, c-format -msgid "cannot find a device for %s (is /dev mounted?)" -msgstr "fant ingen enhet for %s (er /dev montert?)" - -#: util/grub-install.c:1069 util/grub-install.c:1217 util/grub-install.c:1270 -#: util/grub-install.c:1365 util/grub-macbless.c:80 util/grub-probe.c:372 -#, c-format -msgid "cannot find a GRUB drive for %s. Check your device.map" -msgstr "fant ingen GRUB-enhet for %s. Sjekk fila «device.map»" - -#: util/grub-install.c:1087 -#, c-format -msgid "%s doesn't look like an EFI partition" -msgstr "%s ser ikke ut som en EFI-partisjon" - -#: util/grub-install.c:1129 util/grub-install.c:1614 -msgid "You've found a bug" -msgstr "Du har funnet en programfeil" - -#: util/grub-install.c:1231 -#, c-format -msgid "filesystem on %s is neither HFS nor HFS+" -msgstr "filsystemet pÃ¥ %s er hverken HFS eller HFS+" - -#: util/grub-install.c:1299 -#, c-format -msgid "" -"attempt to install to encrypted disk without cryptodisk enabled. Set `%s' in " -"file `%s'" -msgstr "" -"du forsøkte Ã¥ installere pÃ¥ kryptert disk uten Ã¥ slÃ¥ pÃ¥ cryptodisk først. " -"Endre eller legg til «%s» i fila «%s»" - -#: util/grub-install.c:1410 util/grub-install.c:1772 util/grub-install.c:1872 -#, c-format -msgid "Can't create file: %s" -msgstr "Klarte ikke Ã¥ opprette fil: %s" - -#: util/grub-install.c:1491 -msgid "no hints available for your platform. Expect reduced performance" -msgstr "" -"fant ingen hint om plattformen du bruker. Redusert ytelse kan forventes" - -#. TRANSLATORS: This is a prefix in the log to indicate that usually -#. a command would be executed but due to an option was skipped. -#: util/grub-install.c:1702 -msgid "NOT RUNNING: " -msgstr "KJØRER IKKE:" - -#: util/grub-install.c:1806 -msgid "the chosen partition is not a PReP partition" -msgstr "valgt partisjon er ikke en PReP-partisjon" - -#: util/grub-install.c:1811 -msgid "failed to copy Grub to the PReP partition" -msgstr "klarte ikke Ã¥ kopiere Grub til PReP-partisjonen" - -#: util/grub-install.c:1816 -#, c-format -msgid "" -"the PReP partition is not empty. If you are sure you want to use it, run dd " -"to clear it: `%s'" -msgstr "" -"PReP-partisjonen er ikke tom. Kjør dd hvis du er sikker pÃ¥ at du vil bruke " -"den: «%s»" - -#: util/grub-install.c:1888 util/grub-install.c:1932 -#, c-format -msgid "efibootmgr failed to register the boot entry: %s" -msgstr "efibootmgr klarte ikke Ã¥ registrere oppføring: %s" - -#: util/grub-install.c:1916 -msgid "EFI bootloader id isn't specified." -msgstr "Du har ikke oppgitt ID pÃ¥ EFI-oppstartslasteren." - -#: util/grub-install.c:1950 -msgid "WARNING: no platform-specific install was performed" -msgstr "ADVARSEL: ingen plattform-spesifikk installasjon er utført" - -#: util/grub-install.c:1957 -msgid "Installation finished. No error reported." -msgstr "Installasjonen er ferdig. Ingen programfeil oppstod." - -#: util/grub-macbless.c:101 -msgid "bless for x86-based macs" -msgstr "kontroller om programmet fungerer med x86-baserte mac-maskiner" - -#: util/grub-macbless.c:103 -msgid "bless for ppc-based macs" -msgstr "kontroller om programmet fungerer med ppc-baserte mac-maskiner" - -#: util/grub-macbless.c:136 util/grub-probe.c:823 -msgid "No path or device is specified.\n" -msgstr "Ingen sti eller enhet er valgt.\n" - -#: util/grub-macbless.c:157 -msgid "--ppc PATH|--x86 FILE" -msgstr "--ppc STI|--x86 FIL" - -#: util/grub-macbless.c:158 -msgid "Mac-style bless on HFS or HFS+" -msgstr "ForhÃ¥ndssjekk i Mac-stil pÃ¥ HFS eller HFS+" - -#: util/grub-menulst2cfg.c:44 -#, c-format -msgid "Usage: %s [INFILE [OUTFILE]]\n" -msgstr "Bruk: %s [INNFIL [UTFIL]]\n" - -#: util/grub-mkfont.c:157 -#, c-format -msgid "Freetype Error %d loading glyph 0x%x for U+0x%x%s" -msgstr "Freetype-feil %d oppstod ved innlasting av tegnet 0x%x for U+0x%x%s" - -#. TRANSLATORS: These qualifiers are used for cursive typography, -#. mainly Arabic. Note that the terms refer to the visual position -#. and not logical order and if used in left-to-right script then -#. leftmost is initial but with right-to-left script like Arabic -#. rightmost is the initial. -#: util/grub-mkfont.c:165 -msgid " (medial)" -msgstr " (medial)" - -#: util/grub-mkfont.c:166 -msgid " (leftmost)" -msgstr " (lengst til venstre)" - -#: util/grub-mkfont.c:167 -msgid " (rightmost)" -msgstr " (lengst til høyre)" - -#: util/grub-mkfont.c:481 -#, c-format -msgid "Out of range substitution (%d, %d)\n" -msgstr "Erstatninga er utenfor rekkevidde (%d, %d)\n" - -#. TRANSLATORS: "lookup" is taken directly from font specifications -#. which are formulated as "Under condition X replace LOOKUP with -#. SUBSTITUITION". " -#: util/grub-mkfont.c:506 -#, c-format -msgid "Out of range lookup: %d\n" -msgstr "«lookup» %d er utenfor rekkevidde\n" - -#: util/grub-mkfont.c:514 -#, c-format -msgid "Unsupported substitution type: %d\n" -msgstr "Erstatningstype %d støttes ikke\n" - -#: util/grub-mkfont.c:550 -#, c-format -msgid "Unsupported substitution specification: %d\n" -msgstr "Erstaningsspesifikasjon %d støttes ikke\n" - -#: util/grub-mkfont.c:582 -#, c-format -msgid "Unsupported coverage specification: %d\n" -msgstr "Dekningsspesifikasjon %d støttes ikke\n" - -#: util/grub-mkfont.c:622 -#, c-format -msgid "WARNING: unsupported font feature parameters: %x\n" -msgstr "ADVARSEL: funksjonsparametre %x for skrifttype støttes ikke\n" - -#: util/grub-mkfont.c:936 util/grub-mkrescue.c:98 util/grub-mkstandalone.c:48 -msgid "save output in FILE [required]" -msgstr "lagre utdata i valgt FIL (pÃ¥krevet)" - -#. TRANSLATORS: some font files may have multiple faces (fonts). -#. This option is used to chose among them, the first face being '0'. -#. Rarely used. -#: util/grub-mkfont.c:942 -msgid "select face index" -msgstr "velg variantindeks («face») for skrifttype " - -#: util/grub-mkfont.c:943 -msgid "FROM-TO[,FROM-TO]" -msgstr "FRA-TIL[,FRA-TIL]" - -#. TRANSLATORS: It refers to the range of characters in font. -#: util/grub-mkfont.c:945 -msgid "set font range" -msgstr "velg skriftrekkevidde" - -#. TRANSLATORS: "family name" for font is just a generic name without suffix -#. like "Bold". -#: util/grub-mkfont.c:949 -msgid "set font family name" -msgstr "velg navn pÃ¥ skriftfamilie" - -#: util/grub-mkfont.c:950 -msgid "SIZE" -msgstr "STØRRELSE" - -#: util/grub-mkfont.c:950 -msgid "set font size" -msgstr "velg skriftstørrelse" - -#: util/grub-mkfont.c:951 -msgid "set font descent" -msgstr "velg underlengde for skrifttype" - -#: util/grub-mkfont.c:952 -msgid "set font ascent" -msgstr "velg overlengde for skrifttype" - -#: util/grub-mkfont.c:953 -msgid "convert to bold font" -msgstr "konverter til fet skrift" - -#: util/grub-mkfont.c:954 -msgid "force autohint" -msgstr "tving auto-hint" - -#: util/grub-mkfont.c:955 -msgid "disable hinting" -msgstr "slÃ¥ av hinting" - -#. TRANSLATORS: some fonts contain bitmap rendering for -#. some sizes. This option forces rerendering even if -#. pre-rendered bitmap is available. -#. -#: util/grub-mkfont.c:961 -msgid "ignore bitmap strikes when loading" -msgstr "ignorer punktgrafikk ved innlasting" - -#. TRANSLATORS: It refers to the range of characters in font. -#: util/grub-mkfont.c:1059 util/grub-mkfont.c:1075 -msgid "invalid font range" -msgstr "ugyldig skriftrekkevidde" - -#: util/grub-mkfont.c:1151 -msgid "[OPTIONS] FONT_FILES" -msgstr "[VALG] SKRIFTFILER" - -#: util/grub-mkfont.c:1152 -msgid "Convert common font file formats into PF2" -msgstr "Konverter vanlige skrift-filformater til PF2" - -#: util/grub-mkfont.c:1182 util/grub-mkrescue.c:483 -#: util/grub-mkstandalone.c:306 -msgid "output file must be specified" -msgstr "du mÃ¥ velge utdatafil" - -#: util/grub-mkfont.c:1185 -msgid "FT_Init_FreeType fails" -msgstr "FT_Init_FreeType mislyktes" - -#: util/grub-mkfont.c:1199 -#, c-format -msgid "can't open file %s, index %d: error %d" -msgstr "klarte ikke Ã¥ Ã¥pne %s, indeks %d: feil %d" - -#: util/grub-mkfont.c:1229 -#, c-format -msgid "can't set %dx%d font size: Freetype error %d: %s" -msgstr "klarte ikke Ã¥ velge skriftstørrelse for %dx%d: Freetype-feil %d: %s" - -#: util/grub-mkimage.c:67 -msgid "set prefix directory" -msgstr "velg prefiks-mappe" - -#. TRANSLATORS: "memdisk" here isn't an identifier, it can be translated. -#. "embed" is a verb (command description). " -#: util/grub-mkimage.c:71 -msgid "" -"embed FILE as a memdisk image\n" -"Implies `-p (memdisk)/boot/grub' and overrides any prefix supplied " -"previously, but the prefix itself can be overridden by later options" -msgstr "" -"legg inn valgt FIL som et memdisk-bilde\n" -"Dette impliserer valget «-p (memdisk)/boot/grub», og overstyrer evt. " -"tidligere prefiks. Dette prefikset kan i seg selv overstyres av senere valg" - -#: util/grub-mkimage.c:74 -msgid "embed FILE as a device tree (DTB)\n" -msgstr "bygg inn FIL som enhetstre (DTB)\n" - -#: util/grub-mkimage.c:76 -msgid "embed FILE as an early config" -msgstr "legg inn valgt FIL som et tidlig oppsett" - -#. TRANSLATORS: NOTE is a name of segment. -#: util/grub-mkimage.c:80 -msgid "add NOTE segment for CHRP IEEE1275" -msgstr "legg til NOTE-segment for CHRP IEEE1275" - -#: util/grub-mkimage.c:81 -msgid "output a generated image to FILE [default=stdout]" -msgstr "skriv ut et generert bilde til FIL (standard=stdout)" - -#: util/grub-mkimage.c:82 -msgid "FORMAT" -msgstr "FORMAT" - -#: util/grub-mkimage.c:100 util/grub-mkstandalone.c:62 -msgid "generate an image in FORMAT" -msgstr "lag et bilde i valgt FORMAT" - -#: util/grub-mkimage.c:101 util/grub-mkstandalone.c:63 -msgid "available formats:" -msgstr "tilgjengelige formater:" - -#: util/grub-mkimage.c:152 util/grub-mkstandalone.c:96 -#, c-format -msgid "unknown target format %s\n" -msgstr "%s er et ukjent mÃ¥lformat\n" - -#: util/grub-mkimage.c:242 -msgid "[OPTION]... [MODULES]" -msgstr "[VALG] … [MODULER]" - -#: util/grub-mkimage.c:243 -msgid "Make a bootable image of GRUB." -msgstr "Lag et bilde av GRUB som maskinen kan starte opp." - -#: util/grub-mkimage.c:273 util/grub-mkstandalone.c:309 -msgid "Target format not specified (use the -O option)." -msgstr "Du har ikke valgt mÃ¥lformat (bruk valget «-O»)." - -#: util/grub-mkimage.c:282 -msgid "Prefix not specified (use the -p option)." -msgstr "Du har ikke valgt prefiks (bruk valget «-p»)." - -#: util/grub-mkimage.c:318 util/setup.c:793 -#, c-format -msgid "cannot close `%s': %s" -msgstr "klarte ikke Ã¥ lukke «%s». %s" - -#: util/grub-mkimagexx.c:2191 -#, c-format -msgid "" -"`%s' is miscompiled: its start address is 0x%llx instead of 0x%llx: ld.gold " -"bug?" -msgstr "" -"«%s» er satt sammen feil. Første adresse er «0x%llx» i stedet for «0x%llx». " -"Kanskje du har funnet en ld.gold-programfeil?" - -#: util/grub-mklayout.c:53 -msgid "set input filename. Default is STDIN" -msgstr "velg inndata-filnavn. Standard er STDIN" - -#. TRANSLATORS: scan identifier is keyboard key symbolic name. -#: util/grub-mklayout.c:307 -#, c-format -msgid "Unknown keyboard scan identifier %s\n" -msgstr "%s er et ukjent tastaturknapp-navn\n" - -#. TRANSLATORS: scan code is keyboard key numeric identifier. -#: util/grub-mklayout.c:390 util/grub-mklayout.c:418 -#, c-format -msgid "Unknown keyboard scan code 0x%02x\n" -msgstr "0x%02x er en ukjent tastatur-knappkode\n" - -#. TRANSLATORS: this error is triggered when input doesn't contain any -#. key descriptions. -#: util/grub-mklayout.c:438 -msgid "ERROR: no valid keyboard layout found. Check the input.\n" -msgstr "FEIL: fant ingen gyldig tastaturutforming. Sjekk inndata.\n" - -#. TRANSLATORS: "one" is a shortcut for "keyboard layout". -#: util/grub-mklayout.c:478 -msgid "Generate GRUB keyboard layout from Linux console one." -msgstr "Lag en GRUB-tastaturutforming basert pÃ¥ en som Linux-konsollen bruker." - -#: util/grub-mknetdir.c:47 -msgid "root directory of TFTP server" -msgstr "TFTP-tjenerens rotmappe" - -#: util/grub-mknetdir.c:49 -msgid "relative subdirectory on network server" -msgstr "relativ undermappe pÃ¥ nettverkstjener" - -#: util/grub-mknetdir.c:88 -msgid "" -"Prepares GRUB network boot images at net_directory/subdir assuming " -"net_directory being TFTP root." -msgstr "" -"Forbereder GRUB-bilder for nettverksoppstart pÃ¥ net_directory/subdir og " -"legger til grunn at net_directory er TFTP-rotmappe." - -#: util/grub-mknetdir.c:146 -#, c-format -msgid "unsupported platform %s" -msgstr "plattform %s støttes ikke" - -#. TRANSLATORS: First %s is replaced by platform name. Second one by filename. -#: util/grub-mknetdir.c:165 -#, c-format -msgid "" -"Netboot directory for %s created. Configure your DHCP server to point to %s\n" -msgstr "" -"Nettverksoppstart-mappe for %s er opprettet. Be aktuell DHCP-tjener om Ã¥ " -"peke pÃ¥ %s\n" - -#: util/grub-mkpasswd-pbkdf2.c:46 -msgid "Number of PBKDF2 iterations" -msgstr "Antall PBKDF2-gjentakelser" - -#: util/grub-mkpasswd-pbkdf2.c:47 -msgid "Length of generated hash" -msgstr "Lengde pÃ¥ generert nøkkel" - -#: util/grub-mkpasswd-pbkdf2.c:48 -msgid "Length of salt" -msgstr "Lengde pÃ¥ salt" - -#: util/grub-mkpasswd-pbkdf2.c:87 -msgid "Generate PBKDF2 password hash." -msgstr "Lag PBKDF2-nøkkelsum av passord." - -#: util/grub-mkpasswd-pbkdf2.c:144 util/grub-mkpasswd-pbkdf2.c:151 -msgid "failure to read password" -msgstr "klarte ikke Ã¥ lese passord" - -#: util/grub-mkpasswd-pbkdf2.c:146 -msgid "Reenter password: " -msgstr "Skriv inn passordet pÃ¥ nytt:" - -#: util/grub-mkpasswd-pbkdf2.c:160 -msgid "passwords don't match" -msgstr "passordene er ulike" - -#: util/grub-mkpasswd-pbkdf2.c:169 -msgid "couldn't retrieve random data for salt" -msgstr "klarte ikke Ã¥ hente vilkÃ¥rlighetsdata til salting" - -#: util/grub-mkpasswd-pbkdf2.c:184 -#, c-format -msgid "cryptographic error number %d" -msgstr "kryptografi-feil nummer %d" - -#: util/grub-mkpasswd-pbkdf2.c:203 -#, c-format -msgid "PBKDF2 hash of your password is %s\n" -msgstr "PBKDF2-summen av passordet ditt er %s\n" - -#: util/grub-mkrelpath.c:67 -msgid "No path is specified.\n" -msgstr "Ingen sti er valgt.\n" - -#: util/grub-mkrelpath.c:78 -msgid "PATH" -msgstr "STI" - -#: util/grub-mkrelpath.c:79 -msgid "Transform a system filename into GRUB one." -msgstr "Konverter et system-filnavn til et GRUB-filnavn." - -#: util/grub-mkrescue.c:100 -msgid "save ROM images in DIR [optional]" -msgstr "lagre ROM-bilder i valgt MAPPE (valgfritt)" - -#. TRANSLATORS: xorriso is a program for creating ISOs and burning CDs. -#: util/grub-mkrescue.c:103 -msgid "use FILE as xorriso [optional]" -msgstr "bruk FIL som xorriso (valgfritt)" - -#: util/grub-mkrescue.c:109 -msgid "use STRING as product name" -msgstr "bruk STRENG som produktnavn" - -#: util/grub-mkrescue.c:111 -msgid "" -"enable sparc boot. Disables HFS+, APM, ARCS and boot as disk image for i386-" -"pc" -msgstr "" -"slÃ¥ pÃ¥ sparc-oppstart. Dette slÃ¥r av HFS+, APM, ARCS oppstart av i386-pc som " -"diskbilde" - -#: util/grub-mkrescue.c:112 -msgid "" -"enable ARCS (big-endian mips machines, mostly SGI) boot. Disables HFS+, APM, " -"sparc64 and boot as disk image for i386-pc" -msgstr "" -"slÃ¥ pÃ¥ ARCS-oppstart (for store mips-maskiner, stort sett SGI). Dette slÃ¥r " -"av HFS+, APM, sparc64 og oppstart av i386-pc som diskbilde" - -#. TRANSLATORS: it generates one single image which is bootable through any method. -#: util/grub-mkrescue.c:125 -msgid "Make GRUB CD-ROM, disk, pendrive and floppy bootable image." -msgstr "Lag oppstartbart GRUB-bilde for CD-ROM, disk, minnepenn og diskett." - -#: util/grub-mkrescue.c:130 -#, c-format -msgid "" -"Generates a bootable CD/USB/floppy image. Arguments other than options to " -"this program are passed to xorriso, and indicate source files, source " -"directories, or any of the mkisofs options listed by the output of `%s'." -msgstr "" -"Lager et CD-/USB-/diskettbilde som kan starte maskinen. Argumenter - " -"bortsett fra valg som gjelder dette programmet - videresendes til xorriso, " -"og bestemmer kildefiler, kildemapper og andre mkisofs-valg (se utskriften av " -"«%s»)." - -#: util/grub-mkrescue.c:134 -msgid "Option -- switches to native xorriso command mode." -msgstr "Valget «--» bytter til xorrisos egen kommandomodus." - -#: util/grub-mkrescue.c:135 -msgid "Mail xorriso support requests to ." -msgstr "Send e-post til for Ã¥ fÃ¥ hjelp til xorriso." - -#: util/grub-mkrescue.c:221 util/grub-mkstandalone.c:114 -msgid "[OPTION] SOURCE..." -msgstr "[VALG] KILDE …" - -#: util/grub-mkrescue.c:257 util/grub-mkrescue.c:300 util/grub-mkrescue.c:588 -#, c-format -msgid "enabling %s support ..." -msgstr "slÃ¥r pÃ¥ støtte for %s …" - -#: util/grub-mkrescue.c:486 -msgid "xorriso not found" -msgstr "fant ikke xorriso" - -#: util/grub-mkrescue.c:623 -msgid "" -"Your xorriso doesn't support `--grub2-boot-info'. Some features are " -"disabled. Please use xorriso 1.2.9 or later." -msgstr "" -"Din versjon av xorriso støtter ikke «--grub2-boot-info», og enkelte " -"funksjoner er slÃ¥tt av. Bruk helst 1.2.9 eller nyere versjon av xorriso." - -#: util/grub-mkrescue.c:650 -msgid "" -"Your xorriso doesn't support `--grub2-boot-info'. Your core image is too " -"big. Boot as disk is disabled. Please use xorriso 1.2.9 or later." -msgstr "" -"Din versjon av xorriso støtter ikke «--grub2-boot-info». Kjernebildet er for " -"stort, sÃ¥ du kan ikke starte opp dette som en disk. Bruk helst 1.2.9 eller " -"nyere versjon av xorriso." - -#: util/grub-mkstandalone.c:115 -msgid "" -"Generate a standalone image (containing all modules) in the selected format" -msgstr "Lag et " - -#: util/grub-mkstandalone.c:115 -msgid "Graft point syntax (E.g. /boot/grub/grub.cfg=./grub.cfg) is accepted" -msgstr "Graft-syntaks (f.eks. /boot/grub/grub.cfg=./grub.cfg) kan brukes" - -#: util/grub-mount.c:552 -msgid "IMAGE1 [IMAGE2 ...] MOUNTPOINT" -msgstr "BILDE1 [BILDE2 …] MONTERINGSPUNKT" - -#: util/grub-mount.c:575 -msgid "need an image and mountpoint" -msgstr "bilde og monteringspunkt er pÃ¥krevet" - -#: util/grub-probe.c:731 -msgid "given argument is a system device, not a path" -msgstr "argumentet er ikke en sti, men en systemenhet" - -#: util/grub-probe.c:736 -msgid "separate items in output using ASCII NUL characters" -msgstr "skill utskriftselementer ved Ã¥ bruk ASCII NUL-tegn" - -#: util/grub-probe.c:754 -#, c-format -msgid "[default=%s]" -msgstr "[standard=%s]" - -#: util/grub-probe.c:756 -msgid "print TARGET" -msgstr "skriv ut MÃ…L" - -#: util/grub-probe.c:757 -msgid "available targets:" -msgstr "tilgjengelige mÃ¥l:" - -#: util/grub-probe.c:839 -msgid "[OPTION]... [PATH|DEVICE]" -msgstr "[VALG] … [STI|ENHET]" - -#: util/grub-probe.c:840 -msgid "" -"Probe device information for a given path (or device, if the -d option is " -"given)." -msgstr "" -"Finn enhetsinformasjon ut i fra en gitt sti (eller, ved bruk av «-d», en " -"enhet)." - -#: util/grub-render-label.c:60 -msgid "read text from FILE." -msgstr "les tekst fra valgt FIL." - -#: util/grub-render-label.c:62 -msgid "use COLOR for text" -msgstr "bruk valgt tekstFARGE" - -#: util/grub-render-label.c:64 -msgid "use COLOR for background" -msgstr "bruk valgt bakgrunnsFARGE" - -#. TRANSLATORS: The result is always stored to file and -#. never shown directly, so don't use "show" as synonym for render. Use "create" if -#. "render" doesn't translate directly. -#: util/grub-render-label.c:69 -msgid "set the label to render" -msgstr "velg etikett" - -#: util/grub-render-label.c:73 -msgid "use FILE as font (PF2)." -msgstr "bruk valgt skriftFIL (PF2) som skrifttype." - -#. TRANSLATORS: This file takes a text and creates a graphical representation of it, -#. putting the result into .disk_label file. The result is always stored to file and -#. never shown directly, so don't use "show" as synonym for render. Use "create" if -#. "render" doesn't translate directly. -#: util/grub-render-label.c:136 -msgid "Render Apple .disk_label." -msgstr "Bruk Apple-«.disk_label»." - -#: util/grub-render-label.c:158 util/grub-syslinux2cfg.c:169 -msgid "Missing arguments\n" -msgstr "Argumenter mangler\n" - -#: util/grub-script-check.c:87 -msgid "[PATH]" -msgstr "[STI]" - -#: util/grub-script-check.c:88 -msgid "Checks GRUB script configuration file for syntax errors." -msgstr "" -"Kontroller at oppsettsfila for GRUB-skript ikke inneholder syntaksfeil." - -#: util/grub-script-check.c:207 -#, c-format -msgid "Syntax error at line %u\n" -msgstr "Syntaksfeil ved linje %u\n" - -#: util/grub-script-check.c:212 -#, c-format -msgid "Script `%s' contains no commands and will do nothing\n" -msgstr "Skriptet «%s» inneholder ingen kommandoer, og gir ingen effekt\n" - -#: util/grub-setup.c:79 -#, c-format -msgid "use FILE as the boot image [default=%s]" -msgstr "bruk valgt FIL som oppstartsbilde (standard: %s)" - -#: util/grub-setup.c:81 -#, c-format -msgid "use FILE as the core image [default=%s]" -msgstr "bruk valgt FIL som kjernebilde (standard: %s)" - -#: util/grub-setup.c:210 -msgid "No device is specified.\n" -msgstr "Ingen enhet er valgt.\n" - -#: util/grub-setup.c:224 -msgid "" -"Set up images to boot from DEVICE.\n" -"\n" -"You should not normally run this program directly. Use grub-install instead." -msgstr "" -"Velg hvilken ENHET bilder skal startes opp fra.\n" -"\n" -"Du bør vanligvis ikke kjøre dette programmet direkte. Bruk heller «grub-" -"install»." - -#: util/grub-setup.c:228 -msgid "DEVICE must be an OS device (e.g. /dev/sda)." -msgstr "ENHET mÃ¥ være en OS-enhet (f.eks. /dev/sda)." - -#: util/grub-setup.c:297 -#, c-format -msgid "Invalid device `%s'.\n" -msgstr "«%s» er en ugyldig enhet.\n" - -#: util/grub-syslinux2cfg.c:64 -msgid "root directory as it will be seen on runtime [default=/]." -msgstr "rotmappa, slik den blir vist ved kjøring (standard: «/»)." - -#: util/grub-syslinux2cfg.c:69 -msgid "" -"current directory of syslinux as it will be seen on runtime [default is " -"parent directory of input file]." -msgstr "" -"gjeldende syslinux-mappe slik den ser ut ved kjøring (standard er " -"inndatafilas foreldermappe)." - -#: util/grub-syslinux2cfg.c:74 -msgid "write output to FILE [default=stdout]." -msgstr "skriv utskrift til valgt FIL (standard: stdout)." - -#: util/grub-syslinux2cfg.c:148 -msgid "Transform syslinux config into GRUB one." -msgstr "Konverter syslinux-oppsett til GRUB-oppsett." - -#: util/mkimage.c:688 util/mkimage.c:717 util/mkimage.c:734 -msgid "cannot compress the kernel image" -msgstr "du kan ikke komprimere kjernebildet" - -#: util/mkimage.c:766 util/mkimage.c:1077 -#, c-format -msgid "unknown compression %d" -msgstr "komprimeringsmetode %d er ukjent" - -#: util/mkimage.c:1088 -msgid "Decompressor is too big" -msgstr "Utpakkeren er for stor" - -#: util/mkimage.c:1133 -#, c-format -msgid "core image is too big (0x%x > 0x%x)" -msgstr "kjernebildet er for stort (0x%x > 0x%x)" - -#: util/mkimage.c:1140 -#, c-format -msgid "kernel image is too big (0x%x > 0x%x)" -msgstr "kjernebildet er for stort (0x%x > 0x%x)" - -#: util/mkimage.c:1220 util/mkimage.c:1501 -#, c-format -msgid "diskboot.img size must be %u bytes" -msgstr "størrelsen pÃ¥ diskboot.img skal være %u byte" - -#: util/mkimage.c:1571 -msgid "" -"fwstart.img doesn't match the known good version. proceed at your own risk" -msgstr "" -"fwstart.img samsvarer ikke med den kjente, brukbare versjonen. Du fortsetter " -"nÃ¥ pÃ¥ egen risiko" - -#: util/mkimage.c:1575 util/mkimage.c:1601 -msgid "firmware image is too big" -msgstr "fastvarebildet er for stort" - -#: util/resolve.c:93 -#, c-format -msgid "invalid line format: %s" -msgstr "ugyldig linjeformat: %s" - -#: util/setup.c:167 -msgid "the first sector of the core file is not sector-aligned" -msgstr "første sektor i kjernefila er ikke stilt opp som en sektor" - -#: util/setup.c:177 -msgid "non-sector-aligned data is found in the core file" -msgstr "fant data i kjernefila som ikke er stilt opp som sektor(er)" - -#: util/setup.c:199 -msgid "the sectors of the core file are too fragmented" -msgstr "sektorene i kjernefila er for fragmenterte" - -#: util/setup.c:280 -#, c-format -msgid "the size of `%s' is not %u" -msgstr "størrelsen pÃ¥ «%s» er ikke %u" - -#: util/setup.c:290 -#, c-format -msgid "the size of `%s' is too small" -msgstr "«%s» er for liten" - -#: util/setup.c:428 -msgid "" -"Attempting to install GRUB to a disk with multiple partition labels or both " -"partition label and filesystem. This is not supported yet." -msgstr "" -"Prøver Ã¥ installere GRUB pÃ¥ en disk som enten har flere partisjonsetiketter " -"eller bÃ¥de etikett og filsystem. Dette støttes ikke enda." - -#: util/setup.c:441 -#, c-format -msgid "unable to identify a filesystem in %s; safety check can't be performed" -msgstr "fant ingen filsystem(er) i %s. Kan derfor ikke utføre sikkerhetssjekk" - -#. TRANSLATORS: Filesystem may reserve the space just GRUB isn't sure about it. -#: util/setup.c:445 -#, c-format -msgid "" -"%s appears to contain a %s filesystem which isn't known to reserve space for " -"DOS-style boot. Installing GRUB there could result in FILESYSTEM " -"DESTRUCTION if valuable data is overwritten by grub-setup (--skip-fs-probe " -"disables this check, use at your own risk)" -msgstr "" -"%s ser ut til Ã¥ inneholde et %s-filsystem som ikke reserverer plass til " -"oppstart i DOS-stil. FILSYSTEMET KAN BLI ØDELAGT hvis du kjører grub-setup " -"her (du kan fjerne denne sperra for egen regning ved Ã¥ bruke valget «--skip-" -"fs-probe»)" - -#. TRANSLATORS: Partition map may reserve the space just GRUB isn't sure about it. -#: util/setup.c:458 -#, c-format -msgid "" -"%s appears to contain a %s partition map which isn't known to reserve space " -"for DOS-style boot. Installing GRUB there could result in FILESYSTEM " -"DESTRUCTION if valuable data is overwritten by grub-setup (--skip-fs-probe " -"disables this check, use at your own risk)" -msgstr "" -"%s ser ut til Ã¥ inneholde et %s-partisjonskart som ikke reserverer plass til " -"oppstart i DOS-stil. FILSYSTEMET KAN BLI ØDELAGT hvis du kjører grub-setup " -"her (du kan fjerne denne sperra for egen regning ved Ã¥ bruke valget «--skip-" -"fs-probe»)" - -#: util/setup.c:465 -#, c-format -msgid "" -"%s appears to contain a %s partition map and LDM which isn't known to be a " -"safe combination. Installing GRUB there could result in FILESYSTEM " -"DESTRUCTION if valuable data is overwritten by grub-setup (--skip-fs-probe " -"disables this check, use at your own risk)" -msgstr "" -"%s ser ut til Ã¥ inneholde et %s-partisjonskart og LDM. Dette er kjent som en " -"farlig kombinasjon. FILSYSTEMET KAN BLI ØDELAGT hvis du kjører grub-setup " -"her (du kan fjerne denne sperra for egen regning ved Ã¥ bruke valget «--skip-" -"fs-probe»)" - -#: util/setup.c:478 -msgid "" -"Attempting to install GRUB to a partitionless disk or to a partition. This " -"is a BAD idea." -msgstr "" -"Prøver Ã¥ installere GRUB pÃ¥ en partisjonsløs disk eller direkte pÃ¥ en " -"partisjon. Dette er IKKE EN GOD IDÉ." - -#: util/setup.c:483 -msgid "" -"Attempting to install GRUB to a disk with multiple partition labels. This " -"is not supported yet." -msgstr "" -"Prøver Ã¥ installere GRUB pÃ¥ en disk med flere partisjonsetiketter. Dette " -"støtter ikke ennÃ¥." - -#: util/setup.c:489 -#, c-format -msgid "Partition style `%s' doesn't support embedding" -msgstr "Partisjonsstilen «%s» støtter ikke innebygging" - -#: util/setup.c:496 -#, c-format -msgid "File system `%s' doesn't support embedding" -msgstr "Filsystemet «%s» støtter ikke innebygging" - -#: util/setup.c:537 -msgid "Your embedding area is unusually small. core.img won't fit in it." -msgstr "" -"InnebyggingsomrÃ¥det ditt er uvanlig trangt, og har ikke plass til «core.img»." - -#: util/setup.c:559 util/setup.c:725 util/setup.c:844 -msgid "no terminator in the core image" -msgstr "kjernebildet mangler avslutningsdel" - -#: util/setup.c:622 -msgid "core.img version mismatch" -msgstr "core.img-versjonene samsvarer ikke" - -#: util/setup.c:675 -msgid "" -"embedding is not possible, but this is required for RAID and LVM install" -msgstr "" -"innebygging er ikke mulig. Samtidig er det pÃ¥krevet for Ã¥ bruke RAID og LVM" - -#: util/setup.c:682 -#, c-format -msgid "can't determine filesystem on %s" -msgstr "klarte ikke Ã¥ finne ut hva slags filsystem som ligger pÃ¥ %s" - -#: util/setup.c:685 -#, c-format -msgid "filesystem `%s' doesn't support blocklists" -msgstr "filsystemet «%s» støtter ikke blokklister" - -#. TRANSLATORS: cross-disk refers to /boot being on one disk -#. but MBR on another. -#: util/setup.c:694 -msgid "embedding is not possible, but this is required for cross-disk install" -msgstr "" -"innebygging er ikke mulig. Samtidig er det pÃ¥krevet for Ã¥ installere pÃ¥ " -"tvers av disker" - -#: util/setup.c:700 -msgid "" -"Embedding is not possible. GRUB can only be installed in this setup by " -"using blocklists. However, blocklists are UNRELIABLE and their use is " -"discouraged." -msgstr "" -"Innebygging er ikke mulig. GRUB kan bare installeres pÃ¥ dette oppsettet ved " -"bruk av blokklister, som frarÃ¥des fordi de er UPÃ…LITELIGE." - -#. TRANSLATORS: Here GRUB refuses to continue with blocklist install. -#: util/setup.c:705 -msgid "will not proceed with blocklists" -msgstr "fortsetter ikke med blokklister" - -#: util/setup.c:817 util/setup.c:837 -msgid "blocklists are invalid" -msgstr "blokklistene er ugyldige" - -#: util/setup.c:847 -msgid "blocklists are incomplete" -msgstr "blokklistene er ufullstendige" - -#~ msgid "%.*s: ARGP_HELP_FMT parameter must be positive" -#~ msgstr "%.*s: «ARGP_HELP_FMT»-parameteret mÃ¥ være positivt" - -#~ msgid "%s: option '--%s' doesn't allow an argument\n" -#~ msgstr "%s: valget «--%s» tillater ikke bruk av argumenter\n" - -#~ msgid "%s: unrecognized option '--%s'\n" -#~ msgstr "%s: «--%s» er et ukjent valg\n" - -#~ msgid "%s: option '-W %s' doesn't allow an argument\n" -#~ msgstr "%s: valget «-W %s» tillater ikke bruk av argumenter\n" - -#~ msgid "%s: option '-W %s' requires an argument\n" -#~ msgstr "%s: valget «-W %s» krever et argument\n" - -#~ msgid "Usage: %s -o OUTPUT CKBMAP_ARGUMENTS...\\n" -#~ msgstr "Bruk: %s -o UTDATA CKBMAP-ARGUMENTER …\\n" - -#~ msgid "Make GRUB keyboard layout file." -#~ msgstr "Lag tastatur-utformingsfil for GRUB." - -#~ msgid "print this message and exit" -#~ msgstr "skriv ut denne meldinga og avslutt" - -#~ msgid "print the version information and exit" -#~ msgstr "skriv ut versjon og avslutt" - -#~ msgid "%s generates a keyboard layout for GRUB using ckbcomp\\n" -#~ msgstr "%s lager en tastaturutforming for GRUB ved hjelp av ckbcomp\\n" - -#~ msgid "Report bugs to ." -#~ msgstr "Rapporter feil til ." - -#~ msgid "%s: option requires an argument -- `%s'\\n" -#~ msgstr "%s: valget «%s» krever et argument\\n" - -#~ msgid "Usage: %s [OPTION]\\n" -#~ msgstr "Bruk: %s [VALG]\\n" - -#~ msgid "Generate a grub config file" -#~ msgstr "Lag en grub-oppsettsfil" - -#~ msgid "output generated config to FILE [default=stdout]" -#~ msgstr "skriv ut generert oppsett til valgt FIL (standard: stdout)" - -#~ msgid "Unrecognized option `%s'\\n" -#~ msgstr "«%s» er et ukjent valg\\n" - -#~ msgid "%s: You must run this as root\\n" -#~ msgstr "%s: Du mÃ¥ kjøre dette programmet som rotbruker\\n" - -#~ msgid "%s: Not found.\\n" -#~ msgstr "Fant ikke %s.\\n" - -#~ msgid "Generating grub configuration file ..." -#~ msgstr "Lager grub-oppsettsfil …" - -#~ msgid "" -#~ "Syntax errors are detected in generated GRUB config file.\n" -#~ "Ensure that there are no errors in /etc/default/grub\n" -#~ "and /etc/grub.d/* files or please file a bug report with\n" -#~ "%s file attached." -#~ msgstr "" -#~ "Generert GRUB-oppsettsfil inneholder syntaksfeil.\n" -#~ "Kontroller at grunnlaget i /etc/default/grub og /etc/grub.d/*\n" -#~ "ikke innheholder feil, og send inn en feilrapport\n" -#~ "med %s vedlagt hvis du fremdeles har problemer." - -#~ msgid "done" -#~ msgstr "ferdig" - -#~ msgid "Warning:" -#~ msgstr "Advarsel:" - -#~ msgid "Usage: %s [OPTION] MENU_ENTRY\\n" -#~ msgstr "Bruk: %s [VALG] MENYOPPFØRING\\n" - -#~ msgid "Set the default boot menu entry for GRUB, for the next boot only." -#~ msgstr "" -#~ "Velg standardoppføring pÃ¥ GRUB-oppstartsmenyen (gjelder kun for neste " -#~ "oppstart)." - -#~ msgid "" -#~ "expect GRUB images under the directory DIR/%s instead of the %s directory" -#~ msgstr "forvent at GRUB-bilder ligger i mappa DIR/%s i stedet for %s" - -#~ msgid "" -#~ "MENU_ENTRY is a number, a menu item title or a menu item identifier. " -#~ "Please note that menu items in\n" -#~ "submenus or sub-submenus require specifying the submenu components and " -#~ "then the\n" -#~ "menu item component. The titles should be separated using the greater-" -#~ "than\n" -#~ "character (>) with no extra spaces. Depending on your shell some " -#~ "characters including > may need escaping. More information about this is " -#~ "available\n" -#~ "in the GRUB Manual in the section about the 'default' command. " -#~ msgstr "" -#~ "MENYOPPFØRING er enten er nummer, en tittel eller en menyoppførings-ID. " -#~ "Vær oppmerksom pÃ¥ at\n" -#~ "undermeny-komponenter mÃ¥ oppgis ved valg av oppføringer pÃ¥ undermenyer.\n" -#~ "Titler holdes adskilt ved Ã¥ bruke større-enn-tegnet (>) uten ekstra " -#~ "mellomrom.\n" -#~ "Enkelte tegn (som «>») kan kreve at du bruker skiftetegn, avhengig av " -#~ "skallet ditt. Du finner ytterligere informasjon om dette i\n" -#~ "GRUB-bruksanvisninga, under delen om «default»-kommandoen. " - -#~ msgid "More than one menu entry?" -#~ msgstr "Flere enn én menyoppføring?" - -#~ msgid "Menu entry not specified." -#~ msgstr "Du har ikke valgt menyoppføring." - -#~ msgid "Set the default boot menu entry for GRUB." -#~ msgstr "Velg standardoppføring pÃ¥ GRUB-oppstartsmenyen." - -#~ msgid "This requires setting GRUB_DEFAULT=saved in %s/default/grub.\\n" -#~ msgstr "" -#~ "Dette krever at du gir en verdi til «GRUB_DEFAULT=» i fila %s/default/" -#~ "grub.\\n" - -#~ msgid "MENU_ENTRY is a number, a menu item title or a menu item identifier." -#~ msgstr "" -#~ "MENYOPPFØRING er enten et nummer, en tittel eller en menyoppførings-ID." - -#~ msgid "" -#~ "Requested serial terminal but GRUB_SERIAL_COMMAND is unspecified. Default " -#~ "parameters will be used." -#~ msgstr "" -#~ "Ba om seriell terminal, men «GRUB_SERIAL_COMMAND» er ikke oppgitt. Bruker " -#~ "derfor standardparametre." - -#~ msgid "Found theme: %s\\n" -#~ msgstr "Fant tema: %s\\n" - -#~ msgid "Found background: %s\\n" -#~ msgstr "Fant bakgrunn: %s\\n" - -#~ msgid "Unsupported image format" -#~ msgstr "Bildeformatet støttes ikke" - -#~ msgid "" -#~ "Setting GRUB_TIMEOUT to a non-zero value when GRUB_HIDDEN_TIMEOUT is set " -#~ "is no longer supported." -#~ msgstr "" -#~ "Du kan ikke lenger gi «GRUB_TIMEOUT» en annen verdi enn null nÃ¥r " -#~ "«GRUB_HIDDEN_TIMEOUT» har en verdi." - -#~ msgid "Found GNU Mach: %s" -#~ msgstr "Fant GNU Mach: %s" - -#~ msgid "Found Hurd module: %s" -#~ msgstr "Fant Hurd-modul: %s" - -#~ msgid "Some Hurd stuff found, but not enough to boot." -#~ msgstr "Fant noen Hurd-greier, men ikke nok til Ã¥ starte opp." - -#~ msgid "%s, with Hurd %s (recovery mode)" -#~ msgstr "%s, med Hurd %s (gjenopprettelsesmodus)" - -#~ msgid "%s, with Hurd %s" -#~ msgstr "%s, med Hurd %s" - -#~ msgid "" -#~ "Please don't use old title `%s' for GRUB_DEFAULT, use `%s' (for versions " -#~ "before 2.00) or `%s' (for 2.00 or later)" -#~ msgstr "" -#~ "Ikke gi GRUB_DEFAULT det gamle tittelformatet «%s». Bruk «%s» med eldre " -#~ "versjoner enn 2.00, og «%s» med versjon 2.00 eller nyere" - -#~ msgid "Loading GNU Mach ..." -#~ msgstr "Laster inn GNU Mach …" - -#~ msgid "Loading the Hurd ..." -#~ msgstr "Laster inn Hurd …" - -#~ msgid "Advanced options for %s" -#~ msgstr "Avanserte valg for %s" - -#~ msgid "Loading kernel of Illumos ..." -#~ msgstr "Laster inn Illumos-kjerne …" - -#~ msgid "%s, with kFreeBSD %s (recovery mode)" -#~ msgstr "%s, med kFreeBSD %s (gjenopprettelsesmodus)" - -#~ msgid "%s, with kFreeBSD %s" -#~ msgstr "%s, med kFreeBSD %s" - -#~ msgid "Loading kernel of FreeBSD %s ..." -#~ msgstr "Laster inn FreeBSD-kjerne %s …" - -#~ msgid "Found kernel of FreeBSD: %s\\n" -#~ msgstr "Fant FreeBSD-kjerne: %s\\n" - -#~ msgid "Found kernel module directory: %s\\n" -#~ msgstr "Fant mappe med kjernemoduler: %s\\n" - -#~ msgid "%s, with Linux %s (recovery mode)" -#~ msgstr "%s, med Linux %s (gjenopprettelsesmodus)" - -#~ msgid "%s, with Linux %s" -#~ msgstr "%s, med Linux %s" - -#~ msgid "Loading Linux %s ..." -#~ msgstr "Laster inn Linux %s …" - -#~ msgid "Loading initial ramdisk ..." -#~ msgstr "Laster inn minnedisk for oppstart …" - -#~ msgid "Found linux image: %s\\n" -#~ msgstr "Fant linux-bilde: %s\\n" - -#~ msgid "Found initrd image: %s\\n" -#~ msgstr "Fant initrd-bilde: %s\\n" - -#~ msgid "%s, with kernel %s (via %s, recovery mode)" -#~ msgstr "%s, med kjerne %s (via %s, gjenopprettelsesmodus)" - -#~ msgid "%s, with kernel %s (via %s)" -#~ msgstr "%s, med kjerne %s (via %s)" - -#~ msgid "Found NetBSD kernel: %s\\n" -#~ msgstr "Fant NetBSD-kjerne: %s\\n" - -#~ msgid "Windows Vista/7 (loader)" -#~ msgstr "Windows Vista/7 (oppstartslaster)" - -#~ msgid "Windows NT/2000/XP (loader)" -#~ msgstr "Windows NT/2000/XP (oppstartslaster)" - -#~ msgid "Found %s on %s (%s)\\n" -#~ msgstr "Fant %s pÃ¥ %s (%s)\\n" - -#~ msgid "(32-bit)" -#~ msgstr "(32-bit)" - -#~ msgid "(64-bit)" -#~ msgstr "(64-bit)" - -#~ msgid "(on %s)" -#~ msgstr "(pÃ¥ %s)" - -#~ msgid "%s, with Xen %s and Linux %s (recovery mode)" -#~ msgstr "%s, med Xen %s og Linux %s (gjenopprettelsesmodus)" - -#~ msgid "%s, with Xen %s and Linux %s" -#~ msgstr "%s, med Xen %s og Linux %s" - -#~ msgid "%s, with Xen hypervisor" -#~ msgstr "%s, med Xen hypervisor" - -#~ msgid "Loading Xen %s ..." -#~ msgstr "Laster inn Xen %s …" - -#~ msgid "Xen hypervisor, version %s" -#~ msgstr "Xen hypervisor, versjon %s" - -#~ msgid "Advanced options for %s (with Xen hypervisor)" -#~ msgstr "Avanserte valg for %s (med Xen hypervisor)" - -#~ msgid "Found %s on %s\\n" -#~ msgstr "Fant %s pÃ¥ %s\\n" - -#~ msgid "%s is not yet supported by grub-mkconfig.\\n" -#~ msgstr "%s støttes ikke av grub-mkconfig ennÃ¥.\\n" - -#~ msgid "Unsupported substitution flag: 0x%x\n" -#~ msgstr "Erstatningsvalg 0x%x støttes ikke\n" - -#~ msgid "Unknown gsub font feature 0x%x (%s)\n" -#~ msgstr "0x%x (%s) er en ukjent gsub-skrifttypefunksjon\n" diff --git a/thirdparty/grub-2.04/po/nl.gmo b/thirdparty/grub-2.04/po/nl.gmo deleted file mode 100644 index adbfe0cb900820820bcb390f34d575653a1a3507..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 120556 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 diff --git a/thirdparty/grub-2.04/po/nl.po b/thirdparty/grub-2.04/po/nl.po deleted file mode 100644 index e2cd766aa..000000000 --- a/thirdparty/grub-2.04/po/nl.po +++ /dev/null @@ -1,7591 +0,0 @@ -# Dutch translations for the GNU boot loader GRUB. -# Copyright (C) 2017 Free Software Foundation, Inc. -# This file is distributed under the same license as the grub package. -# -# « Pli helpas guto da feliĉo, ol barelo da saÄo. » -# -# Erwin Poeze , 2009, 2010. -# Benno Schulenberg , 2010, 2011, 2012, 2013, 2017. -msgid "" -msgstr "" -"Project-Id-Version: grub-2.02-pre3\n" -"Report-Msgid-Bugs-To: bug-grub@gnu.org\n" -"POT-Creation-Date: 2019-07-04 16:09+0200\n" -"PO-Revision-Date: 2017-02-04 19:27+0100\n" -"Last-Translator: Benno Schulenberg \n" -"Language-Team: Dutch \n" -"Language: nl\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Bugs: Report translation errors to the Language-Team address.\n" -"X-Generator: Lokalize 1.0\n" -"Plural-Forms: nplurals=2; plural=(n != 1);\n" - -#: grub-core/bus/usb/serial/ftdi.c:145 grub-core/bus/usb/serial/pl2303.c:158 -#: grub-core/term/ieee1275/escc.c:169 grub-core/term/ns8250.c:202 -msgid "unsupported serial port speed" -msgstr "niet-ondersteunde snelheid van seriële poort" - -#: grub-core/bus/usb/serial/ftdi.c:151 grub-core/bus/usb/serial/pl2303.c:164 -#: grub-core/term/efi/serial.c:116 grub-core/term/ieee1275/escc.c:175 -#: grub-core/term/ns8250.c:208 grub-core/term/serial.c:227 -#: grub-core/term/serial.c:243 -msgid "unsupported serial port parity" -msgstr "niet-ondersteunde pariteit van seriële poort" - -#: grub-core/bus/usb/serial/ftdi.c:157 grub-core/bus/usb/serial/pl2303.c:170 -#: grub-core/term/efi/serial.c:122 grub-core/term/ieee1275/escc.c:181 -#: grub-core/term/ns8250.c:213 grub-core/term/serial.c:267 -msgid "unsupported serial port stop bits number" -msgstr "niet-ondersteund aantal stopbits van seriële poort" - -#: grub-core/bus/usb/serial/ftdi.c:161 grub-core/bus/usb/serial/pl2303.c:174 -#: grub-core/term/efi/serial.c:126 grub-core/term/ieee1275/escc.c:185 -#: grub-core/term/ns8250.c:217 -msgid "unsupported serial port word length" -msgstr "niet-ondersteunde woordlengte van seriële poort" - -#: grub-core/commands/acpi.c:42 -msgid "Don't load host tables specified by comma-separated list." -msgstr "Host-tabellen die bestaan uit een kommagescheiden lijst niet laden." - -#: grub-core/commands/acpi.c:45 -msgid "Load only tables specified by comma-separated list." -msgstr "Alleen tabellen die bestaan uit een kommagescheiden lijst laden." - -#: grub-core/commands/acpi.c:46 -msgid "Export version 1 tables to the OS." -msgstr "Versie-1-tabellen naar beheersysteem exporteren." - -#: grub-core/commands/acpi.c:47 -msgid "Export version 2 and version 3 tables to the OS." -msgstr "Versie-2- en versie-3-tabellen naar beheersysteem exporteren." - -#: grub-core/commands/acpi.c:48 -msgid "Set OEMID of RSDP, XSDT and RSDT." -msgstr "OEMID van RSDP, XSDT en RSDT instellen." - -#: grub-core/commands/acpi.c:50 -msgid "Set OEMTABLE ID of RSDP, XSDT and RSDT." -msgstr "OEMTABLE-ID van RSDP, XSDT en RSDT instellen." - -#: grub-core/commands/acpi.c:52 -msgid "Set OEMTABLE revision of RSDP, XSDT and RSDT." -msgstr "OEMTABLE-revisie van RSDP, XSDT en RSDT instellen." - -#: grub-core/commands/acpi.c:54 -msgid "Set creator field of RSDP, XSDT and RSDT." -msgstr "Het 'creator'-veld van RSDP, XSDT en RSDT instellen." - -#: grub-core/commands/acpi.c:56 -msgid "Set creator revision of RSDP, XSDT and RSDT." -msgstr "De 'creator'-revisie van RSDP, XSDT en RSDT instellen." - -#. TRANSLATORS: "hangs" here is a noun, not a verb. -#: grub-core/commands/acpi.c:58 -msgid "" -"Don't update EBDA. May fix failures or hangs on some BIOSes but makes it " -"ineffective with OS not receiving RSDP from GRUB." -msgstr "" -"EBDA niet bijwerken. Dit kan storingen en vastlopers op sommige BIOS'en " -"verhelpen, maar maakt het functieloos bij besturingssystemen die geen RSDP " -"van GRUB ontvangen." - -#: grub-core/commands/acpi.c:650 grub-core/commands/acpi.c:667 -#: grub-core/commands/i386/pc/play.c:105 grub-core/commands/keylayouts.c:230 -#: grub-core/commands/keylayouts.c:245 grub-core/commands/keylayouts.c:263 -#: grub-core/commands/verifiers.c:156 grub-core/efiemu/loadcore.c:350 -#: grub-core/kern/elf.c:117 grub-core/kern/elfXX.c:29 -#: grub-core/kern/elfXX.c:156 grub-core/loader/arm/linux.c:319 -#: grub-core/loader/arm64/linux.c:330 grub-core/loader/arm64/xen_boot.c:356 -#: grub-core/loader/efi/chainloader.c:276 -#: grub-core/loader/efi/chainloader.c:297 -#: grub-core/loader/efi/chainloader.c:329 grub-core/loader/efi/fdt.c:138 -#: grub-core/loader/i386/bsd.c:1276 grub-core/loader/i386/bsd.c:2116 -#: grub-core/loader/i386/bsdXX.c:20 grub-core/loader/i386/bsdXX.c:36 -#: grub-core/loader/i386/bsdXX.c:63 grub-core/loader/i386/bsdXX.c:357 -#: grub-core/loader/i386/bsdXX.c:376 grub-core/loader/i386/bsdXX.c:519 -#: grub-core/loader/i386/bsdXX.c:535 grub-core/loader/i386/bsdXX.c:615 -#: grub-core/loader/i386/bsdXX.c:638 -#: grub-core/loader/i386/coreboot/chainloader.c:112 -#: grub-core/loader/i386/coreboot/chainloader.c:148 -#: grub-core/loader/i386/coreboot/chainloader.c:170 -#: grub-core/loader/i386/linux.c:667 grub-core/loader/i386/linux.c:788 -#: grub-core/loader/i386/linux.c:1005 grub-core/loader/i386/multiboot_mbi.c:171 -#: grub-core/loader/i386/pc/chainloader.c:202 -#: grub-core/loader/i386/pc/linux.c:149 grub-core/loader/i386/pc/linux.c:320 -#: grub-core/loader/i386/pc/linux.c:362 grub-core/loader/i386/pc/plan9.c:457 -#: grub-core/loader/i386/pc/plan9.c:550 grub-core/loader/i386/pc/plan9.c:566 -#: grub-core/loader/i386/xen.c:934 grub-core/loader/i386/xen_file.c:72 -#: grub-core/loader/i386/xen_fileXX.c:43 grub-core/loader/i386/xen_fileXX.c:186 -#: grub-core/loader/i386/xen_fileXX.c:339 grub-core/loader/ia64/efi/linux.c:423 -#: grub-core/loader/ia64/efi/linux.c:471 grub-core/loader/linux.c:286 -#: grub-core/loader/macho.c:84 grub-core/loader/macho.c:109 -#: grub-core/loader/machoXX.c:33 grub-core/loader/machoXX.c:46 -#: grub-core/loader/machoXX.c:76 grub-core/loader/machoXX.c:116 -#: grub-core/loader/machoXX.c:131 grub-core/loader/machoXX.c:147 -#: grub-core/loader/machoXX.c:196 grub-core/loader/machoXX.c:317 -#: grub-core/loader/multiboot.c:434 grub-core/loader/multiboot_elfxx.c:171 -#: grub-core/loader/multiboot_elfxx.c:234 -#: grub-core/loader/multiboot_elfxx.c:278 grub-core/loader/multiboot_mbi2.c:129 -#: grub-core/loader/xnu.c:737 grub-core/loader/xnu.c:795 -#: grub-core/loader/xnu.c:816 grub-core/loader/xnu.c:871 -#: grub-core/loader/xnu.c:914 grub-core/loader/xnu.c:952 -#: grub-core/loader/xnu_resume.c:68 grub-core/loader/xnu_resume.c:153 -#: grub-core/loader/xnu_resume.c:165 util/grub-mkimagexx.c:2288 -#, c-format -msgid "premature end of file %s" -msgstr "voortijdig einde van bestand %s" - -#: grub-core/commands/acpi.c:779 -msgid "" -"[-1|-2] [--exclude=TABLE1,TABLE2|--load-only=TABLE1,TABLE2] FILE1 [FILE2] " -"[...]" -msgstr "" -"[-1|-2] [--exclude=TABEL1,TABEL2|--load-only=TABEL1,TABEL2] BESTAND1 " -"[BESTAND2] [...]" - -#: grub-core/commands/acpi.c:782 -msgid "Load host ACPI tables and tables specified by arguments." -msgstr "Host-ACPI-tabellen laden, en tabellen opgegeven via argumenten." - -#: grub-core/commands/acpihalt.c:368 grub-core/kern/err.c:110 -#, c-format -msgid "error: %s.\n" -msgstr "fout: %s.\n" - -#: grub-core/commands/acpihalt.c:368 grub-core/kern/emu/misc.c:95 -#: grub-core/kern/emu/misc.c:105 grub-core/kern/emu/misc.c:134 -#: grub-core/kern/emu/mm.c:34 grub-core/kern/emu/mm.c:62 -#: grub-core/kern/mm.c:374 grub-core/lib/relocator.c:1282 -#: grub-core/lib/relocator.c:1439 grub-core/lib/relocator.c:1538 -#: grub-core/loader/arm/linux.c:259 grub-core/loader/arm64/linux.c:265 -#: grub-core/loader/arm64/linux.c:321 grub-core/loader/arm64/linux.c:340 -#: grub-core/loader/arm64/xen_boot.c:344 grub-core/loader/arm64/xen_boot.c:367 -#: grub-core/loader/efi/chainloader.c:289 grub-core/osdep/unix/dl.c:48 -#: grub-core/osdep/windows/dl.c:46 grub-core/script/lexer.c:156 -#: grub-core/script/lexer.c:182 -msgid "out of memory" -msgstr "onvoldoende geheugen beschikbaar" - -#: grub-core/commands/acpihalt.c:374 grub-core/disk/cryptodisk.c:587 -#: grub-core/disk/cryptodisk.c:632 grub-core/kern/emu/hostdisk.c:307 -#: grub-core/kern/emu/hostfs.c:149 grub-core/kern/emu/misc.c:200 -#: grub-core/osdep/linux/ofpath.c:195 grub-core/osdep/linux/ofpath.c:521 -#: grub-core/osdep/linux/ofpath.c:534 util/glue-efi.c:80 util/glue-efi.c:94 -#: util/grub-editenv.c:155 util/grub-fstest.c:577 -#: util/grub-install-common.c:943 util/grub-mkrescue.c:634 -#: util/grub-mkrescue.c:888 util/grub-mount.c:506 util/grub-render-label.c:176 -#: util/misc.c:95 util/setup.c:814 util/setup.c:833 -#, c-format -msgid "cannot read `%s': %s" -msgstr "kan '%s' niet lezen: %s" - -#. TRANSLATORS: It's computer shutdown using ACPI, not disabling ACPI. -#: grub-core/commands/acpihalt.c:452 -msgid "ACPI shutdown failed" -msgstr "uitschakeling via ACPI is mislukt" - -#: grub-core/commands/arc/lsdev.c:51 -msgid "List devices." -msgstr "Apparaten tonen." - -#: grub-core/commands/blocklist.c:122 grub-core/commands/cat.c:57 -#: grub-core/commands/configfile.c:35 grub-core/commands/efi/loadbios.c:168 -#: grub-core/commands/file.c:159 grub-core/commands/hexdump.c:47 -#: grub-core/commands/legacycfg.c:209 grub-core/commands/legacycfg.c:315 -#: grub-core/commands/minicmd.c:44 grub-core/commands/syslinuxcfg.c:146 -#: grub-core/commands/testload.c:58 grub-core/commands/testspeed.c:52 -#: grub-core/disk/loopback.c:93 grub-core/efiemu/main.c:293 -#: grub-core/font/font_cmd.c:32 grub-core/kern/emu/hostdisk.c:519 -#: grub-core/loader/arm/linux.c:364 grub-core/loader/arm/linux.c:409 -#: grub-core/loader/arm/linux.c:472 grub-core/loader/arm64/linux.c:243 -#: grub-core/loader/arm64/linux.c:297 grub-core/loader/arm64/xen_boot.c:398 -#: grub-core/loader/arm64/xen_boot.c:411 grub-core/loader/arm64/xen_boot.c:462 -#: grub-core/loader/efi/chainloader.c:216 grub-core/loader/i386/bsd.c:1462 -#: grub-core/loader/i386/bsd.c:1807 grub-core/loader/i386/bsd.c:2085 -#: grub-core/loader/i386/coreboot/chainloader.c:438 -#: grub-core/loader/i386/linux.c:656 grub-core/loader/i386/linux.c:1041 -#: grub-core/loader/i386/pc/chainloader.c:290 -#: grub-core/loader/i386/pc/freedos.c:105 grub-core/loader/i386/pc/linux.c:138 -#: grub-core/loader/i386/pc/linux.c:400 grub-core/loader/i386/pc/ntldr.c:85 -#: grub-core/loader/i386/pc/plan9.c:409 -#: grub-core/loader/i386/pc/pxechainloader.c:94 -#: grub-core/loader/i386/pc/truecrypt.c:96 grub-core/loader/i386/xen.c:641 -#: grub-core/loader/i386/xen.c:768 grub-core/loader/i386/xen.c:844 -#: grub-core/loader/i386/xen.c:854 grub-core/loader/i386/xnu.c:488 -#: grub-core/loader/ia64/efi/linux.c:459 grub-core/loader/ia64/efi/linux.c:539 -#: grub-core/loader/mips/linux.c:238 grub-core/loader/mips/linux.c:429 -#: grub-core/loader/multiboot.c:322 grub-core/loader/multiboot.c:374 -#: grub-core/loader/multiboot.c:384 -#: grub-core/loader/powerpc/ieee1275/linux.c:269 -#: grub-core/loader/powerpc/ieee1275/linux.c:341 -#: grub-core/loader/sparc64/ieee1275/linux.c:305 -#: grub-core/loader/sparc64/ieee1275/linux.c:381 grub-core/loader/xnu.c:351 -#: grub-core/loader/xnu.c:460 grub-core/loader/xnu.c:778 -#: grub-core/loader/xnu.c:892 grub-core/loader/xnu.c:1277 -#: grub-core/loader/xnu.c:1427 grub-core/loader/xnu.c:1453 -#: grub-core/video/readers/jpeg.c:812 grub-core/video/readers/png.c:1123 -msgid "filename expected" -msgstr "bestandsnaam werd verwacht" - -#. TRANSLATORS: "embed" is a verb (command description). " -#: grub-core/commands/blocklist.c:154 grub-core/commands/cat.c:163 -#: grub-core/commands/configfile.c:65 grub-core/commands/configfile.c:68 -#: grub-core/commands/configfile.c:74 grub-core/commands/configfile.c:80 -#: grub-core/commands/configfile.c:86 grub-core/commands/hashsum.c:34 -#: grub-core/commands/legacycfg.c:834 grub-core/commands/legacycfg.c:841 -#: grub-core/commands/legacycfg.c:846 grub-core/commands/legacycfg.c:851 -#: grub-core/commands/macbless.c:222 grub-core/commands/minicmd.c:198 -#: grub-core/commands/syslinuxcfg.c:186 grub-core/commands/syslinuxcfg.c:194 -#: grub-core/commands/syslinuxcfg.c:200 grub-core/commands/syslinuxcfg.c:206 -#: grub-core/commands/testload.c:163 grub-core/efiemu/main.c:312 -#: grub-core/kern/emu/main.c:100 grub-core/kern/emu/main.c:103 -#: grub-core/loader/i386/bsd.c:2137 grub-core/loader/i386/bsd.c:2140 -#: grub-core/loader/i386/bsd.c:2143 -#: grub-core/loader/i386/coreboot/chainloader.c:505 -#: grub-core/loader/ia64/efi/linux.c:594 include/grub/util/install.h:32 -#: include/grub/util/install.h:64 util/grub-glue-efi.c:52 -#: util/grub-glue-efi.c:54 util/grub-glue-efi.c:56 util/grub-install.c:254 -#: util/grub-install.c:301 util/grub-mkfont.c:936 util/grub-mkimage.c:68 -#: util/grub-mkimage.c:74 util/grub-mkimage.c:76 util/grub-mkimage.c:78 -#: util/grub-mkimage.c:81 util/grub-mklayout.c:52 util/grub-mklayout.c:54 -#: util/grub-mkrescue.c:97 util/grub-mkrescue.c:101 util/grub-mkrescue.c:104 -#: util/grub-mkrescue.c:105 util/grub-mkrescue.c:106 -#: util/grub-mkstandalone.c:47 util/grub-mkstandalone.c:49 -#: util/grub-probe.c:732 util/grub-render-label.c:59 -#: util/grub-render-label.c:70 util/grub-render-label.c:72 util/grub-setup.c:78 -#: util/grub-setup.c:80 util/grub-setup.c:84 util/grub-syslinux2cfg.c:74 -#: util/grub-syslinux2cfg.c:147 -msgid "FILE" -msgstr "BESTAND" - -#: grub-core/commands/blocklist.c:154 -msgid "Print a block list." -msgstr "Een blokkenlijst tonen." - -#: grub-core/commands/boot.c:147 grub-core/commands/legacycfg.c:533 -#: grub-core/commands/legacycfg.c:574 grub-core/loader/arm64/linux.c:250 -#: grub-core/loader/i386/bsd.c:1799 grub-core/loader/i386/bsd.c:1900 -#: grub-core/loader/i386/bsd.c:2007 grub-core/loader/i386/bsd.c:2040 -#: grub-core/loader/i386/bsd.c:2089 grub-core/loader/i386/linux.c:1047 -#: grub-core/loader/i386/pc/linux.c:406 grub-core/loader/i386/xen.c:775 -#: grub-core/loader/i386/xen.c:859 grub-core/loader/ia64/efi/linux.c:545 -#: grub-core/loader/mips/linux.c:432 grub-core/loader/multiboot.c:388 -#: grub-core/loader/powerpc/ieee1275/linux.c:347 -#: grub-core/loader/sparc64/ieee1275/linux.c:387 grub-core/loader/xnu.c:572 -#: grub-core/loader/xnu.c:665 grub-core/loader/xnu.c:781 -#: grub-core/loader/xnu.c:895 grub-core/loader/xnu.c:1091 -#: grub-core/loader/xnu.c:1258 grub-core/loader/xnu.c:1289 -#: grub-core/loader/xnu.c:1430 -msgid "you need to load the kernel first" -msgstr "u dient eerst de kernel te laden" - -#: grub-core/commands/boot.c:189 -msgid "Boot an operating system." -msgstr "Een besturingssysteem opstarten." - -#: grub-core/commands/boottime.c:36 -#: grub-core/commands/i386/coreboot/cb_timestamps.c:108 -msgid "No boot time statistics is available\n" -msgstr "Er zijn geen opstart-statistieken beschikbaar\n" - -#: grub-core/commands/boottime.c:59 -msgid "Show boot time statistics." -msgstr "Opstart-statistieken tonen." - -#: grub-core/commands/cacheinfo.c:40 -#, c-format -msgid "Disk cache statistics: hits = %lu (%lu.%02lu%%), misses = %lu\n" -msgstr "" -"Schijfcache-statistieken: treffers = %lu (%lu.%02lu%%), missers = %lu\n" - -#: grub-core/commands/cacheinfo.c:45 -msgid "No disk cache statistics available\n" -msgstr "Er zijn geen schijfcache-statistieken beschikbaar\n" - -#: grub-core/commands/cacheinfo.c:56 -msgid "Get disk cache info." -msgstr "Schijfcache-informatie ophalen." - -#: grub-core/commands/cat.c:33 -msgid "Accept DOS-style CR/NL line endings." -msgstr "DOS-regeleinden (CR+LF) accepteren." - -#: grub-core/commands/cat.c:163 grub-core/commands/minicmd.c:198 -msgid "Show the contents of a file." -msgstr "De inhoud van een bestand tonen." - -#: grub-core/commands/cmp.c:43 grub-core/commands/i386/pc/drivemap.c:239 -#: grub-core/commands/i386/wrmsr.c:60 grub-core/commands/iorw.c:85 -#: grub-core/commands/memrw.c:84 grub-core/commands/password.c:75 -#: grub-core/commands/password_pbkdf2.c:94 grub-core/commands/pgp.c:826 -#: grub-core/commands/regexp.c:113 grub-core/mmap/mmap.c:517 -#: grub-core/net/dns.c:639 -msgid "two arguments expected" -msgstr "twee argumenten werden verwacht" - -#: grub-core/commands/cmp.c:45 -#, c-format -msgid "Compare file `%s' with `%s':\n" -msgstr "Bestand '%s' vergelijken met '%s':\n" - -#: grub-core/commands/cmp.c:54 -#, c-format -msgid "Files differ in size: %llu [%s], %llu [%s]\n" -msgstr "Bestanden verschillen in grootte: %llu [%s], %llu [%s]\n" - -#: grub-core/commands/cmp.c:81 -#, c-format -msgid "Files differ at the offset %llu: 0x%x [%s], 0x%x [%s]\n" -msgstr "Bestanden verschillen op positie %llu: 0x%x [%s], 0x%x [%s]\n" - -#. TRANSLATORS: it's always exactly 2 files. -#: grub-core/commands/cmp.c:93 -msgid "The files are identical.\n" -msgstr "De bestanden zijn identiek.\n" - -#: grub-core/commands/cmp.c:113 -msgid "FILE1 FILE2" -msgstr "BESTAND1 BESTAND2" - -#: grub-core/commands/cmp.c:113 -msgid "Compare two files." -msgstr "Twee bestanden vergelijken." - -#: grub-core/commands/configfile.c:65 -msgid "Load another config file." -msgstr "Nog een configuratiebestand laden." - -#: grub-core/commands/configfile.c:69 grub-core/commands/configfile.c:87 -msgid "Load another config file without changing context." -msgstr "Nog een configuratiebestand laden zonder de context te wijzigen." - -#: grub-core/commands/configfile.c:75 -msgid "" -"Load another config file without changing context but take only menu entries." -msgstr "" -"Nog een configuratiebestand laden zonder de context te wijzigen, maar alleen " -"menu-items nemen." - -#: grub-core/commands/configfile.c:81 -msgid "Load another config file but take only menu entries." -msgstr "Nog een configuratiebestand laden, maar alleen menu-items nemen." - -#: grub-core/commands/date.c:141 -msgid "[[year-]month-day] [hour:minute[:second]]" -msgstr "[[jaar-]maand-dag] [uur:minuut[:seconde]]" - -#: grub-core/commands/date.c:142 -msgid "Display/set current datetime." -msgstr "De huidige datum en tijd tonen/instellen." - -#: grub-core/commands/echo.c:30 -msgid "Do not output the trailing newline." -msgstr "Het laatste regeleinde niet weergeven." - -#: grub-core/commands/echo.c:31 -msgid "Enable interpretation of backslash escapes." -msgstr "Verwerking van 'backslash escapes' inschakelen." - -#: grub-core/commands/echo.c:134 -msgid "[-e|-n] STRING" -msgstr "[-e|-n] TEKENREEKS" - -#: grub-core/commands/echo.c:134 -msgid "Display a line of text." -msgstr "Een regel tekst tonen." - -#: grub-core/commands/efi/efifwsetup.c:82 -msgid "Reboot into firmware setup menu." -msgstr "Herstarten naar instellingenmenu van firmware." - -#: grub-core/commands/efi/fixvideo.c:107 -msgid "Fix video problem." -msgstr "Videoprobleem oplossen." - -#: grub-core/commands/efi/loadbios.c:52 -msgid "ROM image is present." -msgstr "ROM-image is aanwezig." - -#: grub-core/commands/efi/loadbios.c:70 -msgid "Can't enable ROM area." -msgstr "Kan ROM-gebied niet inschakelen." - -#: grub-core/commands/efi/loadbios.c:209 -msgid "" -"Create BIOS-like structures for backward compatibility with existing OS." -msgstr "" -"BIOS-achtige structuren aanmaken voor terugwaartse compatibiliteit met " -"bestaande beheersystemen." - -#: grub-core/commands/efi/loadbios.c:214 -msgid "BIOS_DUMP [INT10_DUMP]" -msgstr "BIOS-DUMP [INT10-DUMP]" - -#: grub-core/commands/efi/loadbios.c:215 -msgid "Load BIOS dump." -msgstr "BIOS-dump laden." - -#: grub-core/commands/efi/shim_lock.c:76 -#, c-format -msgid "module cannot be loaded in UEFI secure boot mode: %s" -msgstr "" - -#: grub-core/commands/efi/shim_lock.c:98 -#, c-format -msgid "cannot boot due to dangerous module in memory: %s" -msgstr "" - -#: grub-core/commands/efi/shim_lock.c:116 -#, fuzzy -msgid "bad shim signature" -msgstr "onjuiste vingerafdruk" - -#: grub-core/commands/efi/tpm.c:149 grub-core/commands/efi/tpm.c:189 -#: grub-core/commands/efi/tpm.c:256 grub-core/commands/efi/tpm.c:306 -#, fuzzy -msgid "Command failed" -msgstr "onvoldoende geheugen beschikbaar" - -#: grub-core/commands/efi/tpm.c:151 grub-core/commands/efi/tpm.c:191 -#: grub-core/commands/efi/tpm.c:258 grub-core/commands/efi/tpm.c:308 -#, fuzzy -msgid "Invalid parameter" -msgstr "ongeldige parameter %s" - -#: grub-core/commands/efi/tpm.c:154 grub-core/commands/efi/tpm.c:194 -#: grub-core/commands/efi/tpm.c:261 grub-core/commands/efi/tpm.c:311 -msgid "Output buffer too small" -msgstr "" - -#: grub-core/commands/efi/tpm.c:156 grub-core/commands/efi/tpm.c:196 -#: grub-core/commands/efi/tpm.c:263 grub-core/commands/efi/tpm.c:313 -#, fuzzy -msgid "TPM unavailable" -msgstr "Pad: (niet beschikbaar)" - -#: grub-core/commands/efi/tpm.c:158 grub-core/commands/efi/tpm.c:198 -#: grub-core/commands/efi/tpm.c:265 grub-core/commands/efi/tpm.c:315 -#, fuzzy -msgid "Unknown TPM error" -msgstr "Onbekende systeemfout" - -#: grub-core/commands/efi/tpm.c:240 grub-core/commands/efi/tpm.c:288 -msgid "cannot allocate TPM event buffer" -msgstr "" - -#: grub-core/commands/eval.c:63 -msgid "STRING ..." -msgstr "TEKENREEKS..." - -# XXX add period? -#: grub-core/commands/eval.c:64 -msgid "Evaluate arguments as GRUB commands" -msgstr "Argumenten evalueren als GRUB-opdrachten." - -#: grub-core/commands/file.c:41 -msgid "Check if FILE can be booted as i386 PAE Xen unprivileged guest kernel" -msgstr "" -"Controleren of BESTAND als ongeprivilegieerde i386-PAE-Xen-gast-kernel " -"gestart kan worden" - -#: grub-core/commands/file.c:44 -msgid "Check if FILE can be booted as x86_64 Xen unprivileged guest kernel" -msgstr "" -"Controleren of BESTAND als ongeprivilegieerde x86_64-Xen-gast-kernel gestart " -"kan worden" - -#: grub-core/commands/file.c:46 -msgid "Check if FILE can be used as Xen x86 privileged guest kernel" -msgstr "" -"Controleren of BESTAND als geprivilegieerde x86-Xen-gast-kernel gebruikt kan " -"worden" - -#: grub-core/commands/file.c:48 -msgid "Check if FILE can be used as x86 multiboot kernel" -msgstr "Controleren of BESTAND als x86-multiboot-kernel gebruikt kan worden" - -#: grub-core/commands/file.c:50 -msgid "Check if FILE can be used as x86 multiboot2 kernel" -msgstr "Controleren of BESTAND als x86-multiboot2-kernel gebruikt kan worden" - -#: grub-core/commands/file.c:52 -msgid "Check if FILE is ARM Linux" -msgstr "Controleren of BESTAND een ARM-Linux-bestand is" - -#: grub-core/commands/file.c:54 -msgid "Check if FILE is ARM64 Linux" -msgstr "Controleren of BESTAND een ARM64-Linux-bestand is" - -#: grub-core/commands/file.c:56 -msgid "Check if FILE is IA64 Linux" -msgstr "Controleren of BESTAND een IA64-Linux-bestand is" - -#: grub-core/commands/file.c:58 -msgid "Check if FILE is MIPS Linux" -msgstr "Controleren of BESTAND een MIPS-Linux-bestand is" - -#: grub-core/commands/file.c:60 -msgid "Check if FILE is MIPSEL Linux" -msgstr "Controleren of BESTAND een MIPSEL-Linux-bestand is" - -#: grub-core/commands/file.c:62 -msgid "Check if FILE is SPARC64 Linux" -msgstr "Controleren of BESTAND een SPARC64-Linux-bestand is" - -#: grub-core/commands/file.c:64 -msgid "Check if FILE is POWERPC Linux" -msgstr "Controleren of BESTAND een POWERPC-Linux-bestand is" - -#: grub-core/commands/file.c:66 -msgid "Check if FILE is x86 Linux" -msgstr "Controleren of BESTAND een x86-Linux-bestand is" - -#: grub-core/commands/file.c:68 -msgid "Check if FILE is x86 Linux supporting 32-bit protocol" -msgstr "" -"Controleren of BESTAND een x86-Linux-bestand is dat het 32-bits-protocol " -"ondersteunt" - -#: grub-core/commands/file.c:70 -msgid "Check if FILE is x86 kFreeBSD" -msgstr "Controleren of BESTAND een x86-kFreeBSD-bestand is" - -#: grub-core/commands/file.c:72 -msgid "Check if FILE is i386 kFreeBSD" -msgstr "Controleren of BESTAND een i386-kFreeBSD-bestand is" - -#: grub-core/commands/file.c:74 -msgid "Check if FILE is x86_64 kFreeBSD" -msgstr "Controleren of BESTAND een x86_64-kFreeBSD-bestand is" - -#: grub-core/commands/file.c:77 -msgid "Check if FILE is x86 kNetBSD" -msgstr "Controleren of BESTAND een x86-kNetBSD-bestand is" - -#: grub-core/commands/file.c:79 -msgid "Check if FILE is i386 kNetBSD" -msgstr "Controleren of BESTAND een i386-kNetBSD-bestand is" - -#: grub-core/commands/file.c:81 -msgid "Check if FILE is x86_64 kNetBSD" -msgstr "Controleren of BESTAND een x86_64-kNetBSD-bestand is" - -#: grub-core/commands/file.c:84 -msgid "Check if FILE is i386 EFI file" -msgstr "Controleren of BESTAND een i386-EFI-bestand is" - -#: grub-core/commands/file.c:86 -msgid "Check if FILE is x86_64 EFI file" -msgstr "Controleren of BESTAND een x86_64-EFI-bestand is" - -#: grub-core/commands/file.c:88 -msgid "Check if FILE is IA64 EFI file" -msgstr "Controleren of BESTAND een IA64-EFI-bestand is" - -#: grub-core/commands/file.c:90 -msgid "Check if FILE is ARM64 EFI file" -msgstr "Controleren of BESTAND een ARM64-EFI-bestand is" - -#: grub-core/commands/file.c:92 -msgid "Check if FILE is ARM EFI file" -msgstr "Controleren of BESTAND een ARM-EFI-bestand is" - -#: grub-core/commands/file.c:94 -#, fuzzy -msgid "Check if FILE is RISC-V 32bit EFI file" -msgstr "Controleren of BESTAND een ARM-EFI-bestand is" - -#: grub-core/commands/file.c:96 -#, fuzzy -msgid "Check if FILE is RISC-V 64bit EFI file" -msgstr "Controleren of BESTAND een IA64-EFI-bestand is" - -#: grub-core/commands/file.c:98 -msgid "Check if FILE is hiberfil.sys in hibernated state" -msgstr "Controleren of BESTAND een hiberfil.sys-bestand in slaaptoestand is" - -#: grub-core/commands/file.c:100 -msgid "Check if FILE is x86_64 XNU (Mac OS X kernel)" -msgstr "Controleren of BESTAND een x86_64-XNU-bestand is (een Mac OS X-kernel)" - -#: grub-core/commands/file.c:102 -msgid "Check if FILE is i386 XNU (Mac OS X kernel)" -msgstr "Controleren of BESTAND een i386-XNU-bestand is (een Mac OS X-kernel)" - -#: grub-core/commands/file.c:104 -msgid "Check if FILE is XNU (Mac OS X kernel) hibernated image" -msgstr "" -"Controleren of BESTAND een XNU-bestand (Mac OS X-kernel) in slaaptoestand is" - -#: grub-core/commands/file.c:106 -msgid "Check if FILE is BIOS bootsector" -msgstr "Controleren of BESTAND een BIOS-opstartsector is" - -#. TRANSLATORS: it's a standalone boolean value, -#. opposite of "true". -#: grub-core/commands/file.c:675 grub-core/commands/i386/cmostest.c:63 -#: grub-core/commands/i386/cpuid.c:71 grub-core/commands/keystatus.c:83 -#: grub-core/commands/keystatus.c:87 grub-core/commands/keystatus.c:96 -#: grub-core/commands/test.c:436 grub-core/commands/true.c:39 -#: grub-core/script/execute.c:247 grub-core/script/execute.c:1039 -msgid "false" -msgstr "onwaar" - -#: grub-core/commands/file.c:684 -msgid "OPTIONS FILE" -msgstr "OPTIES BESTAND" - -#: grub-core/commands/file.c:685 -msgid "Check if FILE is of specified type." -msgstr "Controleert of BESTAND van het aangegeven type is." - -#. TRANSLATORS: It means that the specified partition e.g. -#. hd0,msdos1=/dev/sda1 doesn't exist. -#: grub-core/commands/gptsync.c:140 grub-core/kern/disk.c:258 -msgid "no such partition" -msgstr "die partitie bestaat niet" - -#: grub-core/commands/gptsync.c:240 -#, c-format -msgid "New MBR is written to `%s'\n" -msgstr "Nieuwe MBR is geschreven naar '%s'\n" - -#: grub-core/commands/gptsync.c:252 -msgid "DEVICE [PARTITION[+/-[TYPE]]] ..." -msgstr "APPARAAT [PARTITIE[+/-[TYPE]]] ..." - -#. TRANSLATORS: MBR type is one-byte partition -#. type id. -#: grub-core/commands/gptsync.c:255 -msgid "" -"Fill hybrid MBR of GPT drive DEVICE. Specified partitions will be a part of " -"hybrid MBR. Up to 3 partitions are allowed. TYPE is an MBR type. + means " -"that partition is active. Only one partition can be active." -msgstr "" -"Hybride MBR van GPT-APPARAAT vullen. Opgegeven partities zullen onderdeel " -"zijn van de hybride MBR. Maximaal drie partities zijn toegestaan. TYPE is " -"een MBR-soort; + betekent dat de partitie actief is; slechts één partitie " -"kan actief zijn." - -#: grub-core/commands/halt.c:40 -msgid "" -"Halts the computer. This command does not work on all firmware " -"implementations." -msgstr "" -"Stopt de computer. Deze opdracht werkt niet met alle firmware-" -"implementaties." - -#: grub-core/commands/hashsum.c:32 -msgid "Specify hash to use." -msgstr "Te gebruiken hash." - -#: grub-core/commands/hashsum.c:32 -msgid "HASH" -msgstr "HASH" - -#: grub-core/commands/hashsum.c:33 -msgid "Check hashes of files with hash list FILE." -msgstr "" -"Hashes van bestanden controleren aan de hand van dit hash-lijstbestand." - -#: grub-core/commands/hashsum.c:35 -msgid "Base directory for hash list." -msgstr "Basismap voor hash-lijst." - -#. TRANSLATORS: platform here isn't identifier. It can be translated. -#: grub-core/commands/hashsum.c:35 grub-core/commands/ls.c:150 -#: grub-core/commands/macbless.c:226 grub-core/commands/syslinuxcfg.c:51 -#: grub-core/commands/syslinuxcfg.c:54 grub-core/kern/emu/main.c:106 -#: include/grub/util/install.h:50 include/grub/util/install.h:53 -#: include/grub/util/install.h:56 include/grub/util/install.h:59 -#: util/grub-install.c:250 util/grub-install.c:252 util/grub-install.c:297 -#: util/grub-install.c:299 util/grub-mkimage.c:64 util/grub-mkimage.c:67 -#: util/grub-mknetdir.c:46 util/grub-mknetdir.c:48 util/grub-mkrescue.c:99 -#: util/grub-setup.c:82 util/grub-syslinux2cfg.c:63 util/grub-syslinux2cfg.c:65 -#: util/grub-syslinux2cfg.c:67 util/grub-syslinux2cfg.c:71 -msgid "DIR" -msgstr "MAP" - -#: grub-core/commands/hashsum.c:37 -msgid "Don't stop after first error." -msgstr "Niet stoppen na de eerste fout." - -#: grub-core/commands/hashsum.c:38 -msgid "Uncompress file before checksumming." -msgstr "Bestand decomprimeren vóór berekenen van controlesom." - -#: grub-core/commands/hashsum.c:163 -#, c-format -msgid "%s: READ ERROR\n" -msgstr "%s: LEESFOUT\n" - -#: grub-core/commands/hashsum.c:177 -#, c-format -msgid "%s: HASH MISMATCH\n" -msgstr "%s: NIET-OVEREENKOMENDE HASH\n" - -#: grub-core/commands/hashsum.c:188 -#, c-format -msgid "%s: OK\n" -msgstr "%s: OK\n" - -#: grub-core/commands/hashsum.c:282 -msgid "-h HASH [-c FILE [-p PREFIX]] [FILE1 [FILE2 ...]]" -msgstr "-h HASH [-c BESTAND [-p VOORVOEGSEL]] [BESTAND1 [BESTAND2 ...]]" - -#. TRANSLATORS: "hash checksum" is just to -#. be a bit more precise, you can treat it as -#. just "hash". -#: grub-core/commands/hashsum.c:287 grub-core/commands/hashsum.c:292 -#: grub-core/commands/hashsum.c:297 grub-core/commands/hashsum.c:302 -#: grub-core/commands/hashsum.c:307 grub-core/commands/hashsum.c:313 -msgid "Compute or check hash checksum." -msgstr "Hash-controlesom berekenen of controleren." - -#: grub-core/commands/hashsum.c:290 grub-core/commands/hashsum.c:295 -#: grub-core/commands/hashsum.c:300 grub-core/commands/hashsum.c:305 -#: grub-core/commands/hashsum.c:311 -msgid "[-c FILE [-p PREFIX]] [FILE1 [FILE2 ...]]" -msgstr "[-c BESTAND [-p VOORVOEGSEL]] [BESTAND1 [BESTAND2 ...]]" - -#: grub-core/commands/hdparm.c:33 -msgid "" -"Set Advanced Power Management\n" -"(1=low, ..., 254=high, 255=off)." -msgstr "" -"Advanced Power Management instellen\n" -"(1=laag, ..., 254=hoog, 255=uit)." - -#: grub-core/commands/hdparm.c:36 -msgid "Display power mode." -msgstr "Energiemodus tonen." - -#: grub-core/commands/hdparm.c:37 -msgid "Freeze ATA security settings until reset." -msgstr "ATA-beveiligingsinstellingen bevriezen tot herstart." - -#: grub-core/commands/hdparm.c:39 -msgid "Display SMART health status." -msgstr "SMART-gezondheidstoestand tonen." - -#: grub-core/commands/hdparm.c:40 -msgid "" -"Set Automatic Acoustic Management\n" -"(0=off, 128=quiet, ..., 254=fast)." -msgstr "" -"Automatic Acoustic Management instellen\n" -"(0=uit, 128=stil, ..., 254=snel)." - -#: grub-core/commands/hdparm.c:43 -msgid "" -"Set standby timeout\n" -"(0=off, 1=5s, 2=10s, ..., 240=20m, 241=30m, ...)." -msgstr "" -"Standby-wachttijd instellen\n" -"(0=uit, 1=5s, 2=10s, ..., 240=20m, 241=30m, ...)." - -#: grub-core/commands/hdparm.c:46 -msgid "Set drive to standby mode." -msgstr "Schijf in standby-toestand zetten." - -#: grub-core/commands/hdparm.c:47 -msgid "Set drive to sleep mode." -msgstr "Schijf in slaaptoestand zetten." - -#: grub-core/commands/hdparm.c:48 -msgid "Print drive identity and settings." -msgstr "Schijfidentiteit en -instellingen tonen." - -#: grub-core/commands/hdparm.c:50 -msgid "Show raw contents of ATA IDENTIFY sector." -msgstr "Onbewerkte inhoud van ATA IDENTIFY-sector tonen." - -#: grub-core/commands/hdparm.c:52 -msgid "Disable/enable SMART (0/1)." -msgstr "SMART in-/uitschakelen (1/0)." - -#: grub-core/commands/hdparm.c:53 -msgid "Do not print messages." -msgstr "Geen meldingen tonen." - -#: grub-core/commands/hdparm.c:286 grub-core/commands/i386/rdmsr.c:68 -#: grub-core/commands/iorw.c:47 grub-core/commands/legacycfg.c:760 -#: grub-core/commands/legacycfg.c:812 grub-core/commands/macbless.c:190 -#: grub-core/commands/memrw.c:47 grub-core/commands/pgp.c:738 -#: grub-core/commands/pgp.c:792 grub-core/commands/search.c:304 -#: grub-core/commands/search_wrap.c:179 grub-core/commands/setpci.c:243 -#: grub-core/commands/sleep.c:71 grub-core/fs/zfs/zfsinfo.c:279 -#: grub-core/fs/zfs/zfsinfo.c:358 grub-core/gettext/gettext.c:492 -#: grub-core/kern/corecmd.c:65 grub-core/kern/corecmd.c:79 -#: grub-core/mmap/mmap.c:430 grub-core/net/dns.c:713 grub-core/net/dns.c:745 -#: grub-core/net/net.c:694 grub-core/net/net.c:1052 -#: grub-core/normal/context.c:194 grub-core/script/execute.c:131 -#: grub-core/term/gfxterm_background.c:136 -msgid "one argument expected" -msgstr "één argument werd verwacht" - -#: grub-core/commands/hdparm.c:440 -msgid "[OPTIONS] DISK" -msgstr "[OPTIES] SCHIJF" - -#: grub-core/commands/hdparm.c:441 -msgid "Get/set ATA disk parameters." -msgstr "ATA-schijfparameters tonen/instellen" - -#: grub-core/commands/help.c:132 grub-core/lib/arg.c:109 -#: grub-core/lib/gnulib/argp-help.c:1616 -msgid "Usage:" -msgstr "Gebruik: " - -#: grub-core/commands/help.c:146 -msgid "[PATTERN ...]" -msgstr "[PATROON ...]" - -#: grub-core/commands/help.c:147 -msgid "Show a help message." -msgstr "Een hulptekst tonen." - -#: grub-core/commands/hexdump.c:31 -msgid "Skip offset bytes from the beginning of file." -msgstr "Dit aantal bytes vanaf begin van bestand overslaan." - -#: grub-core/commands/hexdump.c:33 -msgid "Read only LENGTH bytes." -msgstr "Dit aantal bytes lezen." - -#: grub-core/commands/hexdump.c:125 -msgid "[OPTIONS] FILE_OR_DEVICE" -msgstr "[OPTIES] BESTAND|APPARAAT" - -#: grub-core/commands/hexdump.c:126 -msgid "Show raw contents of a file or memory." -msgstr "Onbewerkte inhoud van bestand of geheugen tonen." - -#: grub-core/commands/i386/cmosdump.c:58 -msgid "Show raw dump of the CMOS contents." -msgstr "Onbewerkte inhoud van CMOS tonen." - -#: grub-core/commands/i386/cmostest.c:108 -#: grub-core/commands/i386/cmostest.c:111 -#: grub-core/commands/i386/cmostest.c:114 -msgid "BYTE:BIT" -msgstr "BYTE:BIT" - -#: grub-core/commands/i386/cmostest.c:109 -msgid "Test bit at BYTE:BIT in CMOS." -msgstr "Een bit testen op positie BYTE:BIT in CMOS." - -#: grub-core/commands/i386/cmostest.c:112 -msgid "Clear bit at BYTE:BIT in CMOS." -msgstr "Een bit wissen op positie BYTE:BIT in CMOS." - -#. TRANSLATORS: A bit may be either set (1) or clear (0). -#: grub-core/commands/i386/cmostest.c:116 -msgid "Set bit at BYTE:BIT in CMOS." -msgstr "Een bit zetten op positie BYTE:BIT in CMOS." - -#: grub-core/commands/i386/coreboot/cb_timestamps.c:120 -msgid "Show coreboot boot time statistics." -msgstr "Opstart-statistieken van coreboot tonen." - -#: grub-core/commands/i386/coreboot/cbls.c:137 -msgid "List coreboot tables." -msgstr "De coreboot-tabellen tonen." - -#. TRANSLATORS: "(default)" at the end means that this option is used if -#. no argument is specified. -#: grub-core/commands/i386/cpuid.c:36 -msgid "Check if CPU supports 64-bit (long) mode (default)." -msgstr "Controleren of de CPU 64-bits (\"lang\") ondersteunt (standaard)." - -#: grub-core/commands/i386/cpuid.c:37 -msgid "Check if CPU supports Physical Address Extension." -msgstr "" -"Controleren of de CPU verlenging van het fysieke adres (PAE) ondersteunt." - -#: grub-core/commands/i386/cpuid.c:119 -msgid "Check for CPU features." -msgstr "Beschikbare CPU-functies achterhalen." - -#. TRANSLATORS: In this file "mapping" refers to a change GRUB makes so if -#. your language doesn't have an equivalent of "mapping" you can -#. use the word like "rerouting". -#. -#: grub-core/commands/i386/pc/drivemap.c:43 -msgid "Show the current mappings." -msgstr "De huidige verwijzingen tonen." - -#: grub-core/commands/i386/pc/drivemap.c:44 -msgid "Reset all mappings to the default values." -msgstr "Alle verwijzingen op de standaardwaarden instellen." - -#: grub-core/commands/i386/pc/drivemap.c:45 -msgid "Perform both direct and reverse mappings." -msgstr "Zowel directe als inverse verwijzingen uitvoeren." - -#: grub-core/commands/i386/pc/drivemap.c:184 -msgid "No drives have been remapped" -msgstr "Er zijn geen schijven herverwezen" - -# XXX should translation have length equal to original? -#. TRANSLATORS: This is the header of mapping list. -#. On the left is how OS will see the disks and -#. on the right current GRUB vision. -#: grub-core/commands/i386/pc/drivemap.c:191 -msgid "OS disk #num ------> GRUB/BIOS device" -msgstr "beheersyteemschijfnummer ------> GRUB-/BIOS-apparaat" - -#: grub-core/commands/i386/pc/drivemap.c:413 -msgid "-l | -r | [-s] grubdev osdisk." -msgstr "-l | -r | [-s] GRUBAPPARAAT BEHEERSYSTEEMSCHIJF" - -#: grub-core/commands/i386/pc/drivemap.c:414 -msgid "Manage the BIOS drive mappings." -msgstr "De BIOS-schijftoewijzingen beheren." - -#: grub-core/commands/i386/pc/halt.c:31 -msgid "Do not use APM to halt the computer." -msgstr "Geen APM gebruiken om de computer te stoppen." - -#: grub-core/commands/i386/pc/halt.c:119 -msgid "Halt the system, if possible using APM." -msgstr "Het systeem stoppen, zo mogelijk met APM." - -#: grub-core/commands/i386/pc/lsapm.c:75 -msgid "no APM found" -msgstr "geen APM gevonden" - -#: grub-core/commands/i386/pc/lsapm.c:77 -#, c-format -msgid "" -"Version %u.%u\n" -"32-bit CS = 0x%x, len = 0x%x, offset = 0x%x\n" -"16-bit CS = 0x%x, len = 0x%x\n" -"DS = 0x%x, len = 0x%x\n" -msgstr "" -"Versie %u.%u\n" -"32-bit CS = 0x%x, lengte = 0x%x, positie = 0x%x\n" -"16-bit CS = 0x%x, lengte = 0x%x\n" -"DS = 0x%x, lengte = 0x%x\n" - -#: grub-core/commands/i386/pc/lsapm.c:86 -msgid "16-bit protected interface supported\n" -msgstr "16-bits beveiligde interface wordt ondersteund\n" - -#: grub-core/commands/i386/pc/lsapm.c:87 -msgid "16-bit protected interface unsupported\n" -msgstr "16-bits beveiligde interface wordt niet ondersteund\n" - -#: grub-core/commands/i386/pc/lsapm.c:89 -msgid "32-bit protected interface supported\n" -msgstr "32-bits beveiligde interface wordt ondersteund\n" - -#: grub-core/commands/i386/pc/lsapm.c:90 -msgid "32-bit protected interface unsupported\n" -msgstr "32-bits beveiligde interface wordt niet ondersteund\n" - -#: grub-core/commands/i386/pc/lsapm.c:92 -msgid "CPU Idle slows down processor\n" -msgstr "'CPU Idle' vertraagt de processor\n" - -#: grub-core/commands/i386/pc/lsapm.c:93 -msgid "CPU Idle doesn't slow down processor\n" -msgstr "'CPU Idle' vertraagt de processor niet\n" - -#: grub-core/commands/i386/pc/lsapm.c:95 -msgid "APM disabled\n" -msgstr "APM is uitgeschakeld\n" - -#: grub-core/commands/i386/pc/lsapm.c:95 -msgid "APM enabled\n" -msgstr "APM is ingeschakeld\n" - -#: grub-core/commands/i386/pc/lsapm.c:97 -msgid "APM disengaged\n" -msgstr "APM wordt niet gebruikt\n" - -#: grub-core/commands/i386/pc/lsapm.c:97 -msgid "APM engaged\n" -msgstr "APM wordt gebruikt\n" - -#: grub-core/commands/i386/pc/lsapm.c:107 -msgid "Show APM information." -msgstr "APM-informatie tonen." - -#. TRANSLATORS: It's musical notes, not the notes -#. you take. Play command expects arguments which can -#. be either a filename or tempo+notes. -#. This error happens if none is specified. -#: grub-core/commands/i386/pc/play.c:88 -msgid "filename or tempo and notes expected" -msgstr "bestandsnaam of tempo plus tonen werden verwacht" - -#: grub-core/commands/i386/pc/play.c:113 grub-core/commands/i386/pc/play.c:144 -#, c-format -msgid "Invalid tempo in %s" -msgstr "Ongeldig tempo in %s" - -#: grub-core/commands/i386/pc/play.c:151 grub-core/commands/macbless.c:172 -#: grub-core/fs/archelp.c:260 grub-core/fs/bfs.c:621 grub-core/fs/bfs.c:704 -#: grub-core/fs/btrfs.c:1726 grub-core/fs/btrfs.c:1755 -#: grub-core/fs/btrfs.c:1799 grub-core/fs/btrfs.c:1882 -#: grub-core/fs/btrfs.c:1906 grub-core/fs/fshelp.c:257 grub-core/fs/jfs.c:696 -#: grub-core/fs/minix.c:426 grub-core/fs/ufs.c:544 grub-core/fs/zfs/zfs.c:2083 -#: grub-core/fs/zfs/zfs.c:2095 grub-core/fs/zfs/zfs.c:2301 -#: grub-core/net/http.c:120 -#, c-format -msgid "file `%s' not found" -msgstr "bestand '%s' is niet gevonden" - -#: grub-core/commands/i386/pc/play.c:162 grub-core/commands/i386/pc/play.c:171 -#: grub-core/kern/misc.c:419 grub-core/script/execute.c:138 -#: grub-core/script/execute.c:244 -msgid "unrecognized number" -msgstr "niet-herkend getal" - -#: grub-core/commands/i386/pc/play.c:190 -msgid "FILE | TEMPO [PITCH1 DURATION1] [PITCH2 DURATION2] ... " -msgstr "BESTAND | TEMPO [HOOGTE1 DUUR1 [HOOGTE2 DUUR2] ...] " - -#: grub-core/commands/i386/pc/play.c:191 -msgid "Play a tune." -msgstr "Een deuntje afspelen." - -#: grub-core/commands/i386/pc/sendkey.c:39 -msgid "set numlock mode" -msgstr "NumLock-modus instellen" - -#: grub-core/commands/i386/pc/sendkey.c:40 -msgid "set capslock mode" -msgstr "CapsLock-modus instellen" - -#: grub-core/commands/i386/pc/sendkey.c:41 -msgid "set scrolllock mode" -msgstr "ScrollLock-modus instellen" - -#: grub-core/commands/i386/pc/sendkey.c:42 -msgid "set insert mode" -msgstr "Insert-toetsmodus instellen" - -#: grub-core/commands/i386/pc/sendkey.c:43 -msgid "set pause mode" -msgstr "Pause-toetsmodus instellen" - -#: grub-core/commands/i386/pc/sendkey.c:44 -msgid "press left shift" -msgstr "linker Shift indrukken" - -#: grub-core/commands/i386/pc/sendkey.c:45 -msgid "press right shift" -msgstr "rechter Shift indrukken" - -#: grub-core/commands/i386/pc/sendkey.c:46 -msgid "press SysRq" -msgstr "SysRq-toets indrukken" - -#: grub-core/commands/i386/pc/sendkey.c:47 -msgid "press NumLock key" -msgstr "NumLock-toets indrukken" - -#: grub-core/commands/i386/pc/sendkey.c:48 -msgid "press CapsLock key" -msgstr "CapsLock-toets indrukken" - -#: grub-core/commands/i386/pc/sendkey.c:49 -msgid "press ScrollLock key" -msgstr "ScrollLock-toets indrukken" - -#: grub-core/commands/i386/pc/sendkey.c:50 -msgid "press Insert key" -msgstr "Insert-toets indrukken" - -#: grub-core/commands/i386/pc/sendkey.c:51 -msgid "press left alt" -msgstr "linker Alt indrukken" - -#: grub-core/commands/i386/pc/sendkey.c:52 -msgid "press right alt" -msgstr "rechter Alt indrukken" - -#: grub-core/commands/i386/pc/sendkey.c:53 -msgid "press left ctrl" -msgstr "linker Ctrl indrukken" - -#: grub-core/commands/i386/pc/sendkey.c:54 -msgid "press right ctrl" -msgstr "rechter Ctrl indrukken" - -#: grub-core/commands/i386/pc/sendkey.c:55 -msgid "don't update LED state" -msgstr "LED-toestand niet bijwerken" - -#: grub-core/commands/i386/pc/sendkey.c:372 -msgid "[KEYSTROKE1] [KEYSTROKE2] ..." -msgstr "[TOETSAANSLAG1] [TOETSAANSLAG2 ...]" - -#. TRANSLATORS: It can emulate multiple -#. keypresses. -#: grub-core/commands/i386/pc/sendkey.c:375 -msgid "Emulate a keystroke sequence" -msgstr "Een reeks toetsaanslagen emuleren" - -#: grub-core/commands/i386/rdmsr.c:37 grub-core/commands/iorw.c:34 -#: grub-core/commands/memrw.c:33 grub-core/commands/setpci.c:73 -msgid "Save read value into variable VARNAME." -msgstr "Ingelezen waarde in variabele VARNAAM opslaan." - -#: grub-core/commands/i386/rdmsr.c:38 grub-core/commands/iorw.c:35 -#: grub-core/commands/memrw.c:34 grub-core/commands/probe.c:40 -#: grub-core/commands/search_wrap.c:40 grub-core/commands/setpci.c:74 -#: grub-core/commands/tr.c:32 -msgid "VARNAME" -msgstr "VARNAAM" - -#: grub-core/commands/i386/rdmsr.c:55 grub-core/commands/i386/rdmsr.c:60 -#: grub-core/commands/i386/rdmsr.c:65 grub-core/commands/i386/wrmsr.c:47 -#: grub-core/commands/i386/wrmsr.c:52 grub-core/commands/i386/wrmsr.c:57 -#, fuzzy -msgid "unsupported instruction" -msgstr "niet-ondersteunde GZIP-indeling" - -#: grub-core/commands/i386/rdmsr.c:77 grub-core/commands/i386/wrmsr.c:69 -#: grub-core/commands/i386/wrmsr.c:77 grub-core/net/dns.c:727 -msgid "invalid argument" -msgstr "ongeldig argument" - -#: grub-core/commands/i386/rdmsr.c:94 grub-core/commands/memrw.c:125 -#: grub-core/commands/memrw.c:129 grub-core/commands/memrw.c:133 -msgid "ADDR" -msgstr "ADRES" - -#: grub-core/commands/i386/rdmsr.c:95 -msgid "Read a CPU model specific register." -msgstr "" - -#: grub-core/commands/i386/wrmsr.c:86 -#, fuzzy -msgid "ADDR VALUE" -msgstr "ADRES WAARDE [MASKER]" - -#: grub-core/commands/i386/wrmsr.c:87 -msgid "Write a value to a CPU model specific register." -msgstr "" - -#: grub-core/commands/ieee1275/suspend.c:34 -msgid "Run `go' to resume GRUB." -msgstr "Typ 'go' om GRUB te hervatten." - -#: grub-core/commands/ieee1275/suspend.c:45 -msgid "Return to IEEE1275 prompt." -msgstr "Naar de IEEE1275-prompt terugkeren." - -#: grub-core/commands/iorw.c:123 grub-core/commands/iorw.c:127 -#: grub-core/commands/iorw.c:131 grub-core/gdb/gdb.c:79 -msgid "PORT" -msgstr "POORT" - -#: grub-core/commands/iorw.c:123 -msgid "Read 8-bit value from PORT." -msgstr "Een 8-bits waarde lezen uit POORT." - -#: grub-core/commands/iorw.c:127 -msgid "Read 16-bit value from PORT." -msgstr "Een 16-bits waarde lezen uit POORT." - -#: grub-core/commands/iorw.c:131 -msgid "Read 32-bit value from PORT." -msgstr "Een 32-bits waarde lezen uit POORT." - -#: grub-core/commands/iorw.c:135 grub-core/commands/iorw.c:139 -msgid "PORT VALUE [MASK]" -msgstr "POORT WAARDE [MASKER]" - -#: grub-core/commands/iorw.c:136 -msgid "Write 8-bit VALUE to PORT." -msgstr "Deze 8-bits WAARDE schrijven naar POORT." - -#: grub-core/commands/iorw.c:140 -msgid "Write 16-bit VALUE to PORT." -msgstr "Deze 16-bits WAARDE schrijven naar POORT." - -#: grub-core/commands/iorw.c:143 grub-core/commands/memrw.c:137 -#: grub-core/commands/memrw.c:141 grub-core/commands/memrw.c:145 -msgid "ADDR VALUE [MASK]" -msgstr "ADRES WAARDE [MASKER]" - -#: grub-core/commands/iorw.c:144 -msgid "Write 32-bit VALUE to PORT." -msgstr "Deze 32-bits WAARDE schrijven naar POORT." - -#: grub-core/commands/keylayouts.c:215 grub-core/commands/loadenv.c:61 -#: grub-core/commands/nativedisk.c:189 grub-core/efiemu/main.c:235 -#: grub-core/font/font.c:428 grub-core/gfxmenu/gfxmenu.c:63 -#: grub-core/kern/device.c:42 grub-core/kern/dl.c:740 -#, c-format -msgid "variable `%s' isn't set" -msgstr "variabele '%s' is niet ingesteld" - -#: grub-core/commands/keylayouts.c:301 -msgid "Load a keyboard layout." -msgstr "Een toetsenbordindeling laden." - -#. TRANSLATORS: "Check" in a sense that if this key is pressed then -#. "true" is returned, otherwise "false". -#: grub-core/commands/keystatus.c:32 -msgid "Check Shift key." -msgstr "Shift-toets controleren." - -#: grub-core/commands/keystatus.c:33 -msgid "Check Control key." -msgstr "Control-toets controleren." - -#: grub-core/commands/keystatus.c:34 -msgid "Check Alt key." -msgstr "Alt-toets controleren." - -#. TRANSLATORS: there are 3 modifiers. -#: grub-core/commands/keystatus.c:106 -msgid "Check key modifier status." -msgstr "Toestand van toetsaanpasser controleren." - -#: grub-core/commands/legacycfg.c:512 grub-core/commands/legacycfg.c:526 -#: grub-core/commands/legacycfg.c:546 grub-core/commands/legacycfg.c:559 -#: grub-core/commands/time.c:43 grub-core/script/function.c:109 -#: util/grub-file.c:100 util/grub-fstest.c:57 util/grub-mount.c:69 -#, c-format -msgid "can't find command `%s'" -msgstr "kan opdracht '%s' niet vinden" - -#: grub-core/commands/legacycfg.c:813 grub-core/normal/auth.c:225 -#: util/grub-mkpasswd-pbkdf2.c:139 -msgid "Enter password: " -msgstr "Voer wachtwoord in: " - -#. TRANSLATORS: "legacy config" means -#. "config as used by grub-legacy". -#: grub-core/commands/legacycfg.c:837 -msgid "Parse legacy config in same context" -msgstr "Een verouderde configuratie ontleden in dezelfde context" - -#: grub-core/commands/legacycfg.c:842 -msgid "Parse legacy config in new context" -msgstr "Een verouderde configuratie ontleden in nieuwe context" - -#: grub-core/commands/legacycfg.c:847 -msgid "Parse legacy config in same context taking only menu entries" -msgstr "" -"Een verouderde configuratie ontleden in dezelfde context, maar alleen menu-" -"items nemen" - -#: grub-core/commands/legacycfg.c:852 -msgid "Parse legacy config in new context taking only menu entries" -msgstr "" -"Een verouderde configuratie ontleden in nieuwe context, maar alleen menu-" -"items nemen" - -#: grub-core/commands/legacycfg.c:856 -msgid "[--no-mem-option] [--type=TYPE] FILE [ARG ...]" -msgstr "[--no-mem-option] [--type=TYPE] BESTAND [ARGUMENT...]" - -#: grub-core/commands/legacycfg.c:857 -msgid "Simulate grub-legacy `kernel' command" -msgstr "Een 'kernel'-opdracht van grub-legacy simuleren" - -#: grub-core/commands/legacycfg.c:861 grub-core/commands/legacycfg.c:865 -msgid "FILE [ARG ...]" -msgstr "BESTAND [ARGUMENT...]" - -#: grub-core/commands/legacycfg.c:862 -msgid "Simulate grub-legacy `initrd' command" -msgstr "Een 'initrd'-opdracht van grub-legacy simuleren" - -#: grub-core/commands/legacycfg.c:866 -msgid "Simulate grub-legacy `modulenounzip' command" -msgstr "Een 'modulenounzip'-opdracht van grub-legacy simuleren" - -#: grub-core/commands/legacycfg.c:870 grub-core/commands/legacycfg.c:875 -msgid "[--md5] PASSWD [FILE]" -msgstr "[--md5] WACHTWOORD [BESTAND]" - -#: grub-core/commands/legacycfg.c:871 -msgid "Simulate grub-legacy `password' command" -msgstr "Een 'password'-opdracht van grub-legacy simuleren" - -#: grub-core/commands/legacycfg.c:876 -msgid "Simulate grub-legacy `password' command in menu entry mode" -msgstr "Een 'password'-opdracht van grub-legacy in menu-itemmodus simuleren" - -#. TRANSLATORS: This option is used to override default filename -#. for loading and storing environment. -#: grub-core/commands/loadenv.c:37 -msgid "Specify filename." -msgstr "Bestandsnaam opgeven." - -#: grub-core/commands/loadenv.c:39 -msgid "Skip signature-checking of the environment file." -msgstr "Vingerafdrukcontrole van omgevingsbestand overslaan." - -#: grub-core/commands/loadenv.c:451 -msgid "[-f FILE] [-s|--skip-sig] [variable_name_to_whitelist] [...]" -msgstr "[-f BESTAND] [-s|--skip-sig] [TOE-TE-STANE-VARIABELENAAM...]" - -#: grub-core/commands/loadenv.c:452 -msgid "Load variables from environment block file." -msgstr "Variabelen uit omgevingsblokbestand laden." - -#: grub-core/commands/loadenv.c:455 -msgid "[-f FILE]" -msgstr "[-f BESTAND]" - -#: grub-core/commands/loadenv.c:456 -msgid "List variables from environment block file." -msgstr "Variabelen uit omgevingsblokbestand tonen." - -#: grub-core/commands/loadenv.c:460 -msgid "[-f FILE] variable_name [...]" -msgstr "[-f BESTAND] VARIABELENAAM..." - -#: grub-core/commands/loadenv.c:461 -msgid "Save variables to environment block file." -msgstr "Variabelen in omgevingsblokbestand opslaan." - -#: grub-core/commands/ls.c:40 -msgid "Show a long list with more detailed information." -msgstr "Een lijst met uitgebreidere informatie tonen." - -#: grub-core/commands/ls.c:41 -msgid "Print sizes in a human readable format." -msgstr "Grootten in leesbare vorm weergeven." - -#: grub-core/commands/ls.c:42 -msgid "List all files." -msgstr "Alle bestanden tonen." - -#: grub-core/commands/ls.c:73 -msgid "Network protocols:" -msgstr "Netwerkprotocollen:" - -#: grub-core/commands/ls.c:295 -msgid "[-l|-h|-a] [FILE ...]" -msgstr "[-l|-h|-a] [BESTAND ...]" - -#: grub-core/commands/ls.c:296 -msgid "List devices and files." -msgstr "Apparaten en bestanden tonen." - -#: grub-core/commands/lsacpi.c:255 -msgid "Show version 1 tables only." -msgstr "Alleen de versie-1-tabellen tonen." - -#: grub-core/commands/lsacpi.c:256 -msgid "Show version 2 and version 3 tables only." -msgstr "Alleen de versie-2- en versie-3-tabellen tonen." - -#: grub-core/commands/lsacpi.c:306 -msgid "Show ACPI information." -msgstr "ACPI-informatie tonen." - -#: grub-core/commands/lsmmap.c:31 -msgid "available RAM" -msgstr "beschikbare RAM" - -#: grub-core/commands/lsmmap.c:32 -msgid "reserved RAM" -msgstr "gereserveerde RAM" - -#. TRANSLATORS: this refers to memory where ACPI tables are stored -#. and which can be used by OS once it loads ACPI tables. -#: grub-core/commands/lsmmap.c:35 -msgid "ACPI reclaimable RAM" -msgstr "herbruikbare ACPI-RAM" - -#. TRANSLATORS: this refers to memory which ACPI-compliant OS -#. is required to save accross hibernations. -#: grub-core/commands/lsmmap.c:38 -msgid "ACPI non-volatile storage RAM" -msgstr "door ACPI gebruikte persistente RAM" - -#: grub-core/commands/lsmmap.c:39 -msgid "faulty RAM (BadRAM)" -msgstr "beschadigde RAM (BadRAM)" - -#: grub-core/commands/lsmmap.c:40 -msgid "persistent RAM" -msgstr "persistente RAM" - -#: grub-core/commands/lsmmap.c:41 -msgid "persistent RAM (legacy)" -msgstr "persistente RAM (verouderd)" - -#: grub-core/commands/lsmmap.c:42 -msgid "RAM holding coreboot tables" -msgstr "RAM die coreboot-tabellen bevat" - -#: grub-core/commands/lsmmap.c:43 -msgid "RAM holding firmware code" -msgstr "RAM die firmware bevat" - -#: grub-core/commands/lsmmap.c:52 -#, c-format -msgid "base_addr = 0x%llx, length = 0x%llx, %s\n" -msgstr "basisadres = 0x%llx, lengte = 0x%llx, %s\n" - -#: grub-core/commands/lsmmap.c:55 -#, c-format -msgid "base_addr = 0x%llx, length = 0x%llx, type = 0x%x\n" -msgstr "basisadres = 0x%llx, lengte = 0x%llx, type = 0x%x\n" - -#: grub-core/commands/lsmmap.c:79 -msgid "List memory map provided by firmware." -msgstr "Geheugentoewijzing geleverd door firmware tonen." - -#: grub-core/commands/lspci.c:232 -msgid "List PCI devices." -msgstr "PCI-apparaten tonen." - -# XXX s/intel macs/Intel Macs/ -#: grub-core/commands/macbless.c:224 -msgid "Bless FILE of HFS or HFS+ partition for intel macs." -msgstr "BESTAND op HFS- or HFS+-partitie \"zegenen\" voor Intel-Macs." - -# XXX what the donkey is a bless? -#: grub-core/commands/macbless.c:228 -msgid "Bless DIR of HFS or HFS+ partition for PPC macs." -msgstr "MAP op HFS- or HFS+-partitie \"zegenen\" voor PPC-Macs." - -#: grub-core/commands/memrw.c:125 -msgid "Read 8-bit value from ADDR." -msgstr "Een 8-bits waarde lezen van ADRES." - -#: grub-core/commands/memrw.c:129 -msgid "Read 16-bit value from ADDR." -msgstr "Een 16-bits waarde lezen van ADRES." - -#: grub-core/commands/memrw.c:133 -msgid "Read 32-bit value from ADDR." -msgstr "Een 32-bits waarde lezen van ADRES." - -#: grub-core/commands/memrw.c:138 -msgid "Write 8-bit VALUE to ADDR." -msgstr "Deze 8-bits WAARDE schrijven naar ADRES." - -#: grub-core/commands/memrw.c:142 -msgid "Write 16-bit VALUE to ADDR." -msgstr "Deze 16-bits WAARDE schrijven naar ADRES." - -#: grub-core/commands/memrw.c:146 -msgid "Write 32-bit VALUE to ADDR." -msgstr "Deze 32-bits WAARDE schrijven naar ADRES." - -#: grub-core/commands/menuentry.c:31 -msgid "Menu entry type." -msgstr "Menu-itemsoort." - -#: grub-core/commands/menuentry.c:31 grub-core/commands/menuentry.c:38 -#: grub-core/commands/menuentry.c:39 grub-core/gettext/gettext.c:520 -#: util/grub-fstest.c:520 util/grub-install.c:291 util/grub-install.c:304 -#: util/grub-mknetdir.c:51 util/grub-mkrescue.c:109 util/grub-mkrescue.c:110 -#: util/grub-mount.c:453 util/grub-render-label.c:65 -msgid "STRING" -msgstr "TEKENREEKS" - -#: grub-core/commands/menuentry.c:33 -msgid "List of users allowed to boot this entry." -msgstr "Lijst van gebruikers die dit item mogen starten." - -#: grub-core/commands/menuentry.c:33 -msgid "USERNAME[,USERNAME]" -msgstr "GEBRUIKERSNAAM[,GEBRUIKERSNAAM...]" - -#: grub-core/commands/menuentry.c:36 -msgid "Keyboard key to quickly boot this entry." -msgstr "Toetsenbordtoets waarmee dit item direct gestart kan worden." - -#: grub-core/commands/menuentry.c:36 -msgid "KEYBOARD_KEY" -msgstr "TOETS" - -#: grub-core/commands/menuentry.c:38 -msgid "Use STRING as menu entry body." -msgstr "Deze TEKENREEKS gebruiken als body van menu-item." - -#: grub-core/commands/menuentry.c:39 -msgid "Menu entry identifier." -msgstr "Menu-itemnaam." - -#. TRANSLATORS: menu entry can either be bootable by anyone or only by -#. handful of users. By default when security is active only superusers can -#. boot a given menu entry. With --unrestricted (this option) -#. anyone can boot it. -#: grub-core/commands/menuentry.c:44 -msgid "This entry can be booted by any user." -msgstr "Dit item kan gestart worden door elke gebruiker." - -#: grub-core/commands/menuentry.c:323 grub-core/commands/menuentry.c:328 -#: grub-core/tests/test_blockarg.c:46 -msgid "BLOCK" -msgstr "BLOK" - -#: grub-core/commands/menuentry.c:323 -msgid "Define a menu entry." -msgstr "Een menu-item definiëren." - -#: grub-core/commands/menuentry.c:328 -msgid "Define a submenu." -msgstr "Een submenu definiëren." - -#. TRANSLATORS: this is module list header. Name -#. is module name, Ref Count is a reference counter -#. (how many modules or open descriptors use it). -#. Dependencies are the other modules it uses. -#. -#: grub-core/commands/minicmd.c:162 -msgid "Name\tRef Count\tDependencies\n" -msgstr "Naam\tVerwijzingen\tAfhankelijkheden\n" - -#: grub-core/commands/minicmd.c:201 -msgid "Show this message." -msgstr "Deze tekst tonen." - -#: grub-core/commands/minicmd.c:204 -msgid "ADDR [SIZE]" -msgstr "ADRES [GROOTTE]" - -#: grub-core/commands/minicmd.c:204 -msgid "Show memory contents." -msgstr "Inhoud van geheugen tonen." - -#: grub-core/commands/minicmd.c:207 grub-core/kern/corecmd.c:188 -#: util/grub-install.c:275 -msgid "MODULE" -msgstr "MODULE" - -#: grub-core/commands/minicmd.c:207 -msgid "Remove a module." -msgstr "Een module verwijderen." - -#: grub-core/commands/minicmd.c:210 -msgid "Show loaded modules." -msgstr "Geladen modules tonen." - -#: grub-core/commands/minicmd.c:213 -msgid "Exit from GRUB." -msgstr "GRUB verlaten." - -#: grub-core/commands/mips/loongson/lsspd.c:42 -msgid "No CS5536 found" -msgstr "Geen CS5536 gevonden" - -#: grub-core/commands/mips/loongson/lsspd.c:45 -#, c-format -msgid "CS5536 at %d:%d.%d\n" -msgstr "CS5536 is op %d:%d.%d\n" - -#. TRANSLATORS: System management bus is often used to access components like -#. RAM (info only, not data) or batteries. I/O space is where in memory -#. its ports are. -#: grub-core/commands/mips/loongson/lsspd.c:55 -#, c-format -msgid "System management bus controller I/O space is at 0x%x\n" -msgstr "I/O-ruimte van SMBus-controller is op 0x%x\n" - -#. TRANSLATORS: it's shown in a report in a way -#. like number 1: ... number 2: ... -#. -#: grub-core/commands/mips/loongson/lsspd.c:66 -#, c-format -msgid "RAM slot number %d\n" -msgstr "RAM-sleufnummer %d\n" - -#: grub-core/commands/mips/loongson/lsspd.c:73 -#, c-format -msgid "Written SPD bytes: %d B.\n" -msgstr "Aantal geschreven SPD-bytes: %d B.\n" - -#: grub-core/commands/mips/loongson/lsspd.c:74 -#, c-format -msgid "Total flash size: %d B.\n" -msgstr "Totale flash-grootte: %d B.\n" - -#: grub-core/commands/mips/loongson/lsspd.c:79 -msgid "Memory type: DDR2." -msgstr "Geheugentype: DDR2." - -#: grub-core/commands/mips/loongson/lsspd.c:83 -#, c-format -msgid "Part no: %s.\n" -msgstr "Onderdeelnummer: %s.\n" - -#: grub-core/commands/mips/loongson/lsspd.c:86 -msgid "Memory type: Unknown." -msgstr "Geheugentype: (onbekend)." - -#: grub-core/commands/mips/loongson/lsspd.c:97 -msgid "Print Memory information." -msgstr "Geheugeninformatie tonen." - -#: grub-core/commands/nativedisk.c:118 grub-core/commands/probe.c:118 -#: grub-core/commands/probe.c:124 util/grub-probe.c:450 -#, c-format -msgid "%s does not support UUIDs" -msgstr "%s ondersteunt geen UUID's" - -#: grub-core/commands/nativedisk.c:325 -msgid "[MODULE1 MODULE2 ...]" -msgstr "[MODULE1 MODULE2 ...]" - -#: grub-core/commands/nativedisk.c:326 -msgid "" -"Switch to native disk drivers. If no modules are specified default set (pata," -"ahci,usbms,ohci,uhci,ehci) is used" -msgstr "" -"Naar originele schijfstuurprogramma's overschakelen. Als er geen modules " -"gegeven zijn, dan wordt de standaardset (pata,ahci,usbms,ohci,uhci,ehci) " -"gebruikt." - -#: grub-core/commands/parttool.c:40 -msgid "" -"Perform COMMANDS on partition.\n" -"Use `parttool PARTITION help' for the list of available commands." -msgstr "" -"Voert OPDRACHTEN uit op partitie.\n" -"Gebruik 'parttool PARTITIE help' voor een lijst van beschikbare opdrachten." - -#: grub-core/commands/parttool.c:123 -msgid "=VAL" -msgstr "=WAARDE" - -#: grub-core/commands/parttool.c:136 -#, c-format -msgid "Sorry, no parttool is available for %s\n" -msgstr "Sorry, 'parttool' werkt niet voor %s\n" - -#: grub-core/commands/parttool.c:288 grub-core/lib/arg.c:285 -#: grub-core/lib/arg.c:351 -#, c-format -msgid "unknown argument `%s'" -msgstr "onbekend argument '%s'" - -#: grub-core/commands/parttool.c:344 -msgid "PARTITION COMMANDS" -msgstr "PARTITIE OPDRACHTEN" - -#: grub-core/commands/password.c:85 -msgid "USER PASSWORD" -msgstr "GEBRUIKERSNAAM WACHTWOORD" - -#: grub-core/commands/password.c:86 -msgid "Set user password (plaintext). Unrecommended and insecure." -msgstr "Gebruikerswachtwoord instellen (platte tekst). Afgeraden en onveilig." - -#. TRANSLATORS: it means that the string which -#. was supposed to be a password hash doesn't -#. have a correct format, not to password -#. mismatch. -#: grub-core/commands/password_pbkdf2.c:98 -#: grub-core/commands/password_pbkdf2.c:115 -#: grub-core/commands/password_pbkdf2.c:123 -#: grub-core/commands/password_pbkdf2.c:150 -#: grub-core/commands/password_pbkdf2.c:179 -msgid "invalid PBKDF2 password" -msgstr "ongeldig PBKDF2-wachtwoord" - -#: grub-core/commands/password_pbkdf2.c:202 -msgid "USER PBKDF2_PASSWORD" -msgstr "GEBRUIKERSNAAM PBKDF2-WACHTWOORD" - -#: grub-core/commands/password_pbkdf2.c:203 -msgid "Set user password (PBKDF2). " -msgstr "Gebruikerswachtwoord instellen (met PBKDF2). " - -#: grub-core/commands/pcidump.c:39 grub-core/commands/setpci.c:69 -msgid "Select device by vendor and device IDs." -msgstr "Apparaat selecteren via ID's van producent en/of apparaat." - -#: grub-core/commands/pcidump.c:40 grub-core/commands/setpci.c:70 -msgid "[vendor]:[device]" -msgstr "[PRODUCENT]:[APPARAAT]" - -#: grub-core/commands/pcidump.c:41 grub-core/commands/setpci.c:71 -msgid "Select device by its position on the bus." -msgstr "Apparaat selecteren via de positie ervan op de bus." - -#: grub-core/commands/pcidump.c:42 grub-core/commands/setpci.c:72 -msgid "[bus]:[slot][.func]" -msgstr "[BUS]:[SLEUF][.FUNC]" - -#: grub-core/commands/pcidump.c:109 grub-core/commands/pcidump.c:138 -#: grub-core/commands/setpci.c:183 grub-core/commands/setpci.c:214 -#: grub-core/fs/zfs/zfs.c:3794 grub-core/kern/emu/hostdisk.c:458 -#: grub-core/kern/emu/hostdisk.c:473 grub-core/kern/file.c:44 -#, c-format -msgid "missing `%c' symbol" -msgstr "ontbrekend '%c'-symbool" - -#: grub-core/commands/pcidump.c:168 -msgid "[-s POSITION] [-d DEVICE]" -msgstr "[-s POSITIE] [-d APPARAAT]" - -#: grub-core/commands/pcidump.c:169 -msgid "Show raw dump of the PCI configuration space." -msgstr "Onbewerkte inhoud van PCI-instellingenruimte tonen." - -#: grub-core/commands/pgp.c:45 -msgid "Skip signature-checking of the public key file." -msgstr "Vingerafdrukcontrole van publiekesleutelbestand overslaan." - -#. TRANSLATORS: it's about GNUPG signatures. -#: grub-core/commands/pgp.c:71 grub-core/commands/pgp.c:81 -#: grub-core/commands/pgp.c:86 grub-core/commands/pgp.c:96 -#: grub-core/commands/pgp.c:103 grub-core/commands/pgp.c:107 -#: grub-core/commands/pgp.c:114 grub-core/commands/pgp.c:119 -#: grub-core/commands/pgp.c:124 grub-core/commands/pgp.c:128 -#: grub-core/commands/pgp.c:268 grub-core/commands/pgp.c:276 -#: grub-core/commands/pgp.c:281 grub-core/commands/pgp.c:289 -#: grub-core/commands/pgp.c:320 grub-core/commands/pgp.c:327 -#: grub-core/commands/pgp.c:332 grub-core/commands/pgp.c:342 -#: grub-core/commands/pgp.c:468 grub-core/commands/pgp.c:471 -#: grub-core/commands/pgp.c:474 grub-core/commands/pgp.c:477 -#: grub-core/commands/pgp.c:484 grub-core/commands/pgp.c:490 -#: grub-core/commands/pgp.c:665 -msgid "bad signature" -msgstr "onjuiste vingerafdruk" - -#. TRANSLATORS: %08x is 32-bit key id. -#: grub-core/commands/pgp.c:636 grub-core/commands/pgp.c:812 -#, c-format -msgid "public key %08x not found" -msgstr "publieke sleutel %08x is niet gevonden" - -#: grub-core/commands/pgp.c:651 grub-core/disk/diskfilter.c:772 -#: grub-core/disk/diskfilter.c:782 grub-core/fs/ntfs.c:404 -#: grub-core/fs/zfs/zfs.c:1933 grub-core/normal/menu.c:428 -#, c-format -msgid "module `%s' isn't loaded" -msgstr "module '%s' is niet geladen" - -#: grub-core/commands/pgp.c:994 -msgid "[-s|--skip-sig] FILE SIGNATURE_FILE [PUBKEY_FILE]" -msgstr "[-s|--skip-sig] BESTAND VINGERAFDRUKBESTAND [PUBLIEKESLEUTELBESTAND]" - -#: grub-core/commands/pgp.c:995 -msgid "Verify detached signature." -msgstr "Een losse vingerafdruk controleren." - -#: grub-core/commands/pgp.c:998 -msgid "[-s|--skip-sig] PUBKEY_FILE" -msgstr "[-s|--skip-sig] PUBLIEKESLEUTELBESTAND" - -# XXX should this not say: "add key *from* given file"? -#: grub-core/commands/pgp.c:999 -msgid "Add PUBKEY_FILE to trusted keys." -msgstr "Sleutel uit gegeven bestand aan vertrouwde sleutels toevoegen." - -#: grub-core/commands/pgp.c:1003 -msgid "Show the list of trusted keys." -msgstr "Lijst van vertrouwde sleutels tonen." - -#: grub-core/commands/pgp.c:1005 -msgid "PUBKEY_ID" -msgstr "PUBLIEKESLEUTEL-ID" - -#: grub-core/commands/pgp.c:1006 -msgid "Remove PUBKEY_ID from trusted keys." -msgstr "" -"Sleutel met gegeven PUBLIEKESLEUTEL-ID uit vertrouwde sleutels verwijderen." - -#: grub-core/commands/probe.c:40 grub-core/commands/tr.c:32 -msgid "Set a variable to return value." -msgstr "De afsluitwaarde aan variabele toekennen." - -#. TRANSLATORS: It's a driver that is currently in use to access -#. the diven disk. -#: grub-core/commands/probe.c:43 -msgid "Determine driver." -msgstr "Stuurprogramma achterhalen." - -#: grub-core/commands/probe.c:44 -msgid "Determine partition map type." -msgstr "Soort partitietabel achterhalen." - -#: grub-core/commands/probe.c:45 -msgid "Determine filesystem type." -msgstr "Soort bestandssysteem achterhalen." - -#: grub-core/commands/probe.c:46 -msgid "Determine filesystem UUID." -msgstr "UUID van bestandssysteem achterhalen." - -#: grub-core/commands/probe.c:47 -msgid "Determine filesystem label." -msgstr "Label van bestandssysteem achterhalen." - -#: grub-core/commands/probe.c:139 grub-core/commands/probe.c:146 -#: util/grub-probe.c:462 -#, c-format -msgid "filesystem `%s' does not support labels" -msgstr "bestandssysteem '%s' ondersteunt geen labels" - -#: grub-core/commands/probe.c:165 grub-core/fs/zfs/zfsinfo.c:430 -#: grub-core/loader/i386/bsd.c:169 util/grub-setup.c:223 -msgid "DEVICE" -msgstr "APPARAAT" - -#: grub-core/commands/probe.c:166 -msgid "Retrieve device info." -msgstr "Apparaatinformatie ophalen." - -#: grub-core/commands/read.c:85 -msgid "[ENVVAR]" -msgstr "[OMGEVINGSVARIABELE]" - -#: grub-core/commands/read.c:86 -msgid "Set variable with user input." -msgstr "Variabele met gebruikersinvoer instellen." - -#: grub-core/commands/reboot.c:40 -msgid "Reboot the computer." -msgstr "Computer herstarten." - -#. TRANSLATORS: in regexp you can mark some -#. groups with parentheses. These groups are -#. then numbered and you can save some of -#. them in variables. In other programs -#. those components aree often referenced with -#. back slash, e.g. \1. Compare -#. sed -e 's,\([a-z][a-z]*\),lowercase=\1,g' -#. The whole matching component is saved in VARNAME, not its number. -#. -#: grub-core/commands/regexp.c:44 -msgid "Store matched component NUMBER in VARNAME." -msgstr "Overeenkomende component (met dit NUMMER) opslaan in VARNAAM." - -#: grub-core/commands/regexp.c:45 -msgid "[NUMBER:]VARNAME" -msgstr "[NUMMER:]VARNAAM" - -#. TRANSLATORS: This are two arguments. So it's -#. two separate units to translate and pay -#. attention not to reverse them. -#: grub-core/commands/regexp.c:157 -msgid "REGEXP STRING" -msgstr "REGEXP TEKENREEKS" - -#: grub-core/commands/regexp.c:158 -msgid "Test if REGEXP matches STRING." -msgstr "Controleren of reguliere expressie REGEXP overeenkomt met TEKENREEKS." - -#: grub-core/commands/search.c:324 -msgid "NAME [VARIABLE] [HINTS]" -msgstr "NAAM [VARIABELE] [HINTS]" - -#: grub-core/commands/search_file.c:4 -msgid "" -"Search devices by file. If VARIABLE is specified, the first device found is " -"set to a variable." -msgstr "" -"Apparaten doorzoeken naar bestand. Als VARIABELE opgegeven is, wordt de " -"naam van het eerstgevonden apparaat daaraan toegekend." - -#: grub-core/commands/search_label.c:4 -msgid "" -"Search devices by label. If VARIABLE is specified, the first device found is " -"set to a variable." -msgstr "" -"Apparaten op label zoeken. Als VARIABELE opgegeven is, wordt de naam van " -"het eerstgevonden apparaat daaraan toegekend." - -#: grub-core/commands/search_uuid.c:4 -msgid "" -"Search devices by UUID. If VARIABLE is specified, the first device found is " -"set to a variable." -msgstr "" -"Apparaten op UUID zoeken. Als VARIABELE opgegeven is, wordt de naam van het " -"eerstgevonden apparaat daaraan toegekend." - -#: grub-core/commands/search_wrap.c:34 -msgid "Search devices by a file." -msgstr "Apparaten zoeken aan hand van bestand." - -#: grub-core/commands/search_wrap.c:35 -msgid "Search devices by a filesystem label." -msgstr "Apparaten zoeken aan hand van bestandssysteemlabel." - -#: grub-core/commands/search_wrap.c:37 -msgid "Search devices by a filesystem UUID." -msgstr "Apparaten zoeken aan hand van bestandssysteem-UUID." - -#: grub-core/commands/search_wrap.c:40 -msgid "Set a variable to the first device found." -msgstr "Eerstgevonden apparaat aan variabele toekennen." - -#: grub-core/commands/search_wrap.c:42 -msgid "Do not probe any floppy drive." -msgstr "Geen floppy-apparaten polsen." - -#: grub-core/commands/search_wrap.c:44 -msgid "" -"First try the device HINT. If HINT ends in comma, also try subpartitions" -msgstr "" -"Eerst apparaat HINT proberen. Als HINT eindigt op een komma, ook " -"subpartities proberen." - -#: grub-core/commands/search_wrap.c:45 grub-core/commands/search_wrap.c:49 -#: grub-core/commands/search_wrap.c:53 grub-core/commands/search_wrap.c:57 -#: grub-core/commands/search_wrap.c:61 grub-core/commands/search_wrap.c:65 -msgid "HINT" -msgstr "HINT" - -#: grub-core/commands/search_wrap.c:47 -msgid "" -"First try the device HINT if currently running on IEEE1275. If HINT ends in " -"comma, also try subpartitions" -msgstr "" -"Eerst apparaat HINT proberen, wanneer draaiend op IEE1275. Als HINT eindigt " -"op een komma, ook subpartities proberen." - -#: grub-core/commands/search_wrap.c:51 -msgid "" -"First try the device HINT if currently running on BIOS. If HINT ends in " -"comma, also try subpartitions" -msgstr "" -"Eerst apparaat HINT proberen, wanneer draaiend op BIOS. Als HINT eindigt op " -"een komma, ook subpartities proberen." - -#: grub-core/commands/search_wrap.c:55 -msgid "" -"First try the device HINT if direct hardware access is supported. If HINT " -"ends in comma, also try subpartitions" -msgstr "" -"Eerst apparaat HINT proberen wanneer directe hardwaretoegang ondersteund " -"wordt. Als HINT eindigt op een komma, ook subpartities proberen." - -#: grub-core/commands/search_wrap.c:59 -msgid "" -"First try the device HINT if currently running on EFI. If HINT ends in " -"comma, also try subpartitions" -msgstr "" -"Eerst apparaat HINT proberen, wanneer draaiend op EFI. Als HINT eindigt op " -"een komma, ook subpartities proberen." - -#: grub-core/commands/search_wrap.c:63 -msgid "" -"First try the device HINT if currently running on ARC. If HINT ends in " -"comma, also try subpartitions" -msgstr "" -"Eerst apparaat HINT proberen, wanneer draaiend op ARC. Als HINT eindigt op " -"een komma, ook subpartities proberen." - -#: grub-core/commands/search_wrap.c:207 -msgid "[-f|-l|-u|-s|-n] [--hint HINT [--hint HINT] ...] NAME" -msgstr "[-f|-l|-u|-s|-n] [--hint HINT [--hint HINT]...] NAAM" - -#: grub-core/commands/search_wrap.c:209 -msgid "" -"Search devices by file, filesystem label or filesystem UUID. If --set is " -"specified, the first device found is set to a variable. If no variable name " -"is specified, `root' is used." -msgstr "" -"Apparaten op bestand, label of UUID zoeken. Als '--set' gegeven is, dan " -"wordt het eerstgevonden apparaat toegekend aan een variabele; als geen " -"variabelenaam gegeven is, dan wordt hiervoor 'root' gebruikt." - -#: grub-core/commands/setpci.c:132 -#, c-format -msgid "Register %x of %x:%02x.%x is %x\n" -msgstr "Register %x van %x:%02x.%x is %x\n" - -#: grub-core/commands/setpci.c:333 -msgid "[-s POSITION] [-d DEVICE] [-v VAR] REGISTER[=VALUE[:MASK]]" -msgstr "[-s POSITIE] [-d APPARAAT] [-v VARIABELE] REGISTER[=WAARDE[:MASKER]]" - -#: grub-core/commands/setpci.c:335 -msgid "Manipulate PCI devices." -msgstr "PCI-apparaten manipuleren." - -#: grub-core/commands/sleep.c:32 -msgid "Verbose countdown." -msgstr "Uitgebreid aftellen." - -#: grub-core/commands/sleep.c:33 -msgid "Allow to interrupt with ESC." -msgstr "Afbreken met ESC toestaan." - -#: grub-core/commands/sleep.c:109 -msgid "NUMBER_OF_SECONDS" -msgstr "AANTAL_SECONDEN" - -#: grub-core/commands/sleep.c:110 -msgid "Wait for a specified number of seconds." -msgstr "Een opgegeven aantal seconden wachten." - -#: grub-core/commands/syslinuxcfg.c:50 util/grub-syslinux2cfg.c:66 -msgid "root directory of the syslinux disk [default=/]." -msgstr "hoofdmap van de syslinux-schijf [standaard=/]" - -#: grub-core/commands/syslinuxcfg.c:53 util/grub-syslinux2cfg.c:72 -msgid "" -"current directory of syslinux [default is parent directory of input file]." -msgstr "" -"huidige map van syslinux [standaard is de oudermap van het invoerbestand]" - -#: grub-core/commands/syslinuxcfg.c:55 util/grub-syslinux2cfg.c:75 -msgid "assume input is an isolinux configuration file." -msgstr "aannemen dat invoer een isolinux-configuratiebestand is" - -#: grub-core/commands/syslinuxcfg.c:56 util/grub-syslinux2cfg.c:76 -msgid "assume input is a pxelinux configuration file." -msgstr "aannemen dat invoer een pxelinux-configuratiebestand is" - -#: grub-core/commands/syslinuxcfg.c:57 util/grub-syslinux2cfg.c:77 -msgid "assume input is a syslinux configuration file." -msgstr "aannemen dat invoer een syslinux-configuratiebestand is" - -#. TRANSLATORS: "syslinux config" means -#. "config as used by syslinux". -#: grub-core/commands/syslinuxcfg.c:189 -msgid "Execute syslinux config in same context" -msgstr "Een syslinux-configuratie uitvoeren in dezelfde context" - -#: grub-core/commands/syslinuxcfg.c:195 -msgid "Execute syslinux config in new context" -msgstr "Een syslinux-configuratie uitvoeren in nieuwe context" - -#: grub-core/commands/syslinuxcfg.c:201 -msgid "Execute syslinux config in same context taking only menu entries" -msgstr "" -"Een syslinux-configuratie uitvoeren in dezelfde context, maar alleen menu-" -"items nemen" - -#: grub-core/commands/syslinuxcfg.c:207 -msgid "Execute syslinux config in new context taking only menu entries" -msgstr "" -"Een syslinux-configuratie uitvoeren in nieuwe context, maar alleen menu-" -"items nemen" - -#: grub-core/commands/terminal.c:90 -msgid "no terminal specified" -msgstr "geen terminal opgegeven" - -#: grub-core/commands/terminal.c:112 grub-core/commands/terminal.c:139 -#, c-format -msgid "terminal `%s' isn't found" -msgstr "terminal '%s' is niet gevonden" - -#: grub-core/commands/terminal.c:244 -msgid "Active input terminals:" -msgstr "Actieve invoerterminals:" - -#: grub-core/commands/terminal.c:245 -msgid "Available input terminals:" -msgstr "Beschikbare invoerterminals:" - -#: grub-core/commands/terminal.c:261 -msgid "Active output terminals:" -msgstr "Actieve uitvoerterminals:" - -#: grub-core/commands/terminal.c:262 -msgid "Available output terminals:" -msgstr "Beschikbare uitvoerterminals:" - -#: grub-core/commands/terminal.c:271 grub-core/commands/terminal.c:276 -msgid "[--append|--remove] [TERMINAL1] [TERMINAL2] ..." -msgstr "[--append|--remove] [TERMINAL1 [TERMINAL2 ...]]" - -#: grub-core/commands/terminal.c:273 -msgid "List or select an input terminal." -msgstr "Een invoerterminal tonen of selecteren." - -#: grub-core/commands/terminal.c:278 -msgid "List or select an output terminal." -msgstr "Een uitvoerterminal tonen of selecteren." - -#: grub-core/commands/test.c:444 -msgid "EXPRESSION ]" -msgstr "EXPRESSIE ]" - -#: grub-core/commands/test.c:444 grub-core/commands/test.c:447 -msgid "Evaluate an expression." -msgstr "Een expressie evalueren." - -#: grub-core/commands/test.c:447 -msgid "EXPRESSION" -msgstr "EXPRESSIE" - -#: grub-core/commands/testload.c:164 -msgid "Load the same file in multiple ways." -msgstr "Hetzelfde bestand op meerdere manieren laden." - -#: grub-core/commands/testspeed.c:35 -msgid "Specify size for each read operation" -msgstr "Grootte opgeven voor elke leesoperatie" - -#: grub-core/commands/testspeed.c:58 -msgid "invalid block size" -msgstr "ongeldige blokgrootte" - -#: grub-core/commands/testspeed.c:80 -#, c-format -msgid "File size: %s\n" -msgstr "Bestandsgrootte: %s\n" - -#: grub-core/commands/testspeed.c:83 -#, c-format -msgid "Elapsed time: %d.%03d s \n" -msgstr "Verstreken tijd: %d.%03d seconden \n" - -#: grub-core/commands/testspeed.c:92 -#, c-format -msgid "Speed: %s \n" -msgstr "Snelheid: %s\n" - -#: grub-core/commands/testspeed.c:107 -msgid "[-s SIZE] FILENAME" -msgstr "[-s GROOTTE] BESTANDSNAAM" - -#: grub-core/commands/testspeed.c:108 -msgid "Test file read speed." -msgstr "Leessnelheid van bestanden testen." - -#: grub-core/commands/time.c:38 grub-core/script/execute.c:974 -msgid "no command is specified" -msgstr "geen opdracht opgegeven" - -#: grub-core/commands/time.c:50 -#, c-format -msgid "Elapsed time: %d.%03d seconds \n" -msgstr "Verstreken tijd: %d.%03d seconden \n" - -#: grub-core/commands/time.c:61 -msgid "COMMAND [ARGS]" -msgstr "OPDRACHT [ARGUMENTEN]" - -#: grub-core/commands/time.c:62 -msgid "Measure time used by COMMAND" -msgstr "De tijd meten die OPDRACHT duurt" - -#: grub-core/commands/tr.c:33 -msgid "Translate to upper case." -msgstr "Omzetten naar hoofdletters." - -#: grub-core/commands/tr.c:34 -msgid "Translate to lower case." -msgstr "Omzetten naar kleine letters." - -# XXX how can SET1 be optional? -#: grub-core/commands/tr.c:119 -msgid "[OPTIONS] [SET1] [SET2] [STRING]" -msgstr "[OPTIE...] SET1 [SET2] [TEKENREEKS]" - -#: grub-core/commands/tr.c:120 -msgid "Translate SET1 characters to SET2 in STRING." -msgstr "In TEKENREEKS de tekens in SET1 omzetten naar SET2." - -#. TRANSLATORS: it's a command description. -#: grub-core/commands/true.c:50 -msgid "Do nothing, successfully." -msgstr "Niets doen, met succes." - -#. TRANSLATORS: it's a command description. -#: grub-core/commands/true.c:54 -msgid "Do nothing, unsuccessfully." -msgstr "Niets doen, met mislukking." - -#: grub-core/commands/usbtest.c:221 -msgid "Test USB support." -msgstr "USB-ondersteuning testen." - -#: grub-core/commands/verifiers.c:120 -#, c-format -msgid "verification requested but nobody cares: %s" -msgstr "" - -#: grub-core/commands/verifiers.c:140 -#, fuzzy -msgid "big file signature isn't implemented yet" -msgstr "relocatie 0x%x is nog niet geïmplenteerd" - -#: grub-core/commands/videoinfo.c:61 -msgid "Text-only " -msgstr "Alleen tekst " - -#. TRANSLATORS: "Direct color" is a mode when the color components -#. are written dirrectly into memory. -#: grub-core/commands/videoinfo.c:66 -#, c-format -msgid "Direct color, mask: %d/%d/%d/%d pos: %d/%d/%d/%d" -msgstr "Direct-color, masker: %d/%d/%d/%d positie: %d/%d/%d/%d" - -#. TRANSLATORS: In "paletted color" mode you write the index of the color -#. in the palette. Synonyms include "packed pixel". -#: grub-core/commands/videoinfo.c:78 -msgid "Paletted " -msgstr "Gepaletteerd " - -#: grub-core/commands/videoinfo.c:80 -msgid "YUV " -msgstr "YUV " - -#. TRANSLATORS: "Planar" is the video memory where you have to write -#. in several different banks "plans" to control the different color -#. components of the same pixel. -#: grub-core/commands/videoinfo.c:85 -msgid "Planar " -msgstr "Planar " - -#: grub-core/commands/videoinfo.c:87 -msgid "Hercules " -msgstr "Hercules " - -#: grub-core/commands/videoinfo.c:89 -msgid "CGA " -msgstr "CGA " - -#. TRANSLATORS: Non-chain 4 is a 256-color planar -#. (unchained) video memory mode. -#: grub-core/commands/videoinfo.c:93 -msgid "Non-chain 4 " -msgstr "Non-chain 4 " - -#: grub-core/commands/videoinfo.c:95 -msgid "Monochrome " -msgstr "Monochroom " - -#: grub-core/commands/videoinfo.c:97 -msgid "Unknown video mode " -msgstr "(onbekende videomodus) " - -#: grub-core/commands/videoinfo.c:111 -msgid " EDID checksum invalid" -msgstr " EDID-controlesom is ongeldig" - -#: grub-core/commands/videoinfo.c:116 -#, c-format -msgid " EDID version: %u.%u\n" -msgstr " EDID-versie: %u.%u\n" - -#: grub-core/commands/videoinfo.c:120 -#, c-format -msgid " Preferred mode: %ux%u\n" -msgstr " Voorkeursmodus: %ux%u\n" - -#: grub-core/commands/videoinfo.c:123 -msgid " No preferred mode available\n" -msgstr " Geen voorkeursmodus aanwezig\n" - -#: grub-core/commands/videoinfo.c:146 grub-core/video/video.c:490 -#: grub-core/video/video.c:498 grub-core/video/video.c:509 -#: grub-core/video/video.c:520 grub-core/video/video.c:528 -#, c-format -msgid "invalid video mode specification `%s'" -msgstr "ongeldige specificatie '%s' van videomodus" - -#: grub-core/commands/videoinfo.c:168 -msgid "List of supported video modes:" -msgstr "Lijst van ondersteunde videomodi:" - -#: grub-core/commands/videoinfo.c:169 -msgid "Legend: mask/position=red/green/blue/reserved" -msgstr "Legenda: masker/positie=rood/groen/blauw/gereserveerd" - -#: grub-core/commands/videoinfo.c:176 -#, c-format -msgid "Adapter `%s':\n" -msgstr "Adapter '%s':\n" - -#: grub-core/commands/videoinfo.c:180 -msgid " No info available" -msgstr " Geen info beschikbaar" - -#: grub-core/commands/videoinfo.c:198 -msgid " Failed to initialize video adapter" -msgstr " Initialiseren van video-adapter is mislukt" - -#. TRANSLATORS: "x" has to be entered in, -#. like an identifier, so please don't -#. use better Unicode codepoints. -#: grub-core/commands/videoinfo.c:239 grub-core/commands/videoinfo.c:248 -msgid "[WxH[xD]]" -msgstr "[BxH[xD]]" - -#: grub-core/commands/videoinfo.c:240 grub-core/commands/videoinfo.c:249 -msgid "" -"List available video modes. If resolution is given show only modes matching " -"it." -msgstr "" -"Beschikbare videomodi tonen. Als een resolutie gegeven is, alleen " -"overeenkomende modi tonen." - -#. TRANSLATORS: "x" has to be entered in, -#. like an identifier, so please don't -#. use better Unicode codepoints. -#: grub-core/commands/videotest.c:225 -msgid "[WxH]" -msgstr "[BxH]" - -#. TRANSLATORS: Here, on the other hand, it's -#. nicer to use unicode cross instead of x. -#: grub-core/commands/videotest.c:228 -msgid "Test video subsystem in mode WxH." -msgstr "Video-subsysteem testen in modus BxH." - -#: grub-core/commands/videotest.c:231 -msgid "Test video subsystem." -msgstr "Video-subsysteem testen." - -#: grub-core/commands/xen/lsxen.c:80 grub-core/commands/xen/lsxen.c:82 -msgid "[DIR]" -msgstr "[MAP]" - -#: grub-core/commands/xen/lsxen.c:81 grub-core/commands/xen/lsxen.c:83 -msgid "List Xen storage." -msgstr "Xen-opslag tonen." - -#. TRANSLATORS: GRUBUUID stands for "filesystem -#. UUID as used in GRUB". -#: grub-core/commands/xnu_uuid.c:110 -msgid "[-l] GRUBUUID [VARNAME]" -msgstr "[-l] GRUB-UUID [VARNAAM]" - -#: grub-core/commands/xnu_uuid.c:111 -msgid "" -"Transform 64-bit UUID to format suitable for XNU. If -l is given keep it " -"lowercase as done by blkid." -msgstr "" -"Een 64-bit UUID geschikt maken voor XNU. Als optie '-l' gegeven is, dan " -"alleen in kleine letters zoals 'blkid' doet." - -#: grub-core/disk/arc/arcdisk.c:248 grub-core/disk/efi/efidisk.c:603 -#: grub-core/disk/i386/pc/biosdisk.c:498 grub-core/disk/i386/pc/biosdisk.c:543 -#: grub-core/disk/ieee1275/nand.c:198 grub-core/disk/ieee1275/obdisk.c:527 -#: grub-core/disk/ieee1275/ofdisk.c:586 -#, c-format -msgid "failure reading sector 0x%llx from `%s'" -msgstr "lezen van sector 0x%llx van '%s' is mislukt" - -#: grub-core/disk/arc/arcdisk.c:284 grub-core/disk/efi/efidisk.c:626 -#: grub-core/disk/i386/pc/biosdisk.c:548 grub-core/disk/ieee1275/ofdisk.c:606 -#, c-format -msgid "failure writing sector 0x%llx to `%s'" -msgstr "schrijven van sector 0x%llx naar '%s' is mislukt" - -#: grub-core/disk/cryptodisk.c:40 -msgid "Mount by UUID." -msgstr "Aankoppelen via UUID." - -#. TRANSLATORS: It's still restricted to cryptodisks only. -#: grub-core/disk/cryptodisk.c:42 -msgid "Mount all." -msgstr "Alles aankoppelen." - -#: grub-core/disk/cryptodisk.c:43 -msgid "Mount all volumes with `boot' flag set." -msgstr "Alle volumens aankoppelen die 'opstart'-vlag gezet hebben." - -#. TRANSLATORS: The first %s is the file being looked at, the second %s is -#. the error message. -#: grub-core/disk/cryptodisk.c:526 grub-core/kern/emu/hostdisk.c:152 -#: grub-core/kern/emu/hostdisk.c:262 grub-core/kern/emu/hostdisk.c:434 -#: grub-core/kern/emu/misc.c:168 grub-core/kern/emu/misc.c:174 -#: grub-core/kern/emu/misc.c:196 grub-core/osdep/bsd/getroot.c:92 -#: grub-core/osdep/bsd/getroot.c:168 grub-core/osdep/hurd/getroot.c:68 -#: grub-core/osdep/linux/blocklist.c:65 grub-core/osdep/linux/getroot.c:150 -#: grub-core/osdep/linux/hostdisk.c:194 grub-core/osdep/linux/hostdisk.c:421 -#: grub-core/osdep/linux/ofpath.c:417 grub-core/osdep/linux/ofpath.c:422 -#: grub-core/osdep/linux/ofpath.c:517 grub-core/osdep/linux/ofpath.c:530 -#: grub-core/osdep/sun/getroot.c:110 grub-core/osdep/windows/blocklist.c:98 -#: grub-core/tests/video_checksum.c:279 util/editenv.c:46 util/glue-efi.c:115 -#: util/glue-efi.c:120 util/glue-efi.c:130 util/grub-editenv.c:138 -#: util/grub-editenv.c:192 util/grub-file.c:83 util/grub-fstest.c:128 -#: util/grub-fstest.c:568 util/grub-install-common.c:92 -#: util/grub-install-common.c:94 util/grub-install-common.c:101 -#: util/grub-install-common.c:529 util/grub-menulst2cfg.c:53 -#: util/grub-menulst2cfg.c:68 util/grub-mkimage.c:292 util/grub-mklayout.c:504 -#: util/grub-mklayout.c:516 util/grub-mknetdir.c:133 util/grub-mknetdir.c:151 -#: util/grub-mkrescue.c:627 util/grub-mkrescue.c:631 util/grub-mkrescue.c:879 -#: util/grub-mkrescue.c:883 util/grub-mkstandalone.c:253 util/grub-mount.c:498 -#: util/grub-render-label.c:169 util/grub-script-check.c:175 -#: util/grub-syslinux2cfg.c:181 util/grub-syslinux2cfg.c:191 -#: util/grub-syslinux2cfg.c:212 util/grub-syslinux2cfg.c:228 util/misc.c:91 -#: util/render-label.c:76 util/render-label.c:163 util/render-label.c:174 -#: util/resolve.c:246 util/setup.c:783 -#, c-format -msgid "cannot open `%s': %s" -msgstr "kan '%s' niet openen: %s" - -#: grub-core/disk/cryptodisk.c:583 grub-core/disk/cryptodisk.c:628 -#: grub-core/kern/emu/hostdisk.c:270 grub-core/kern/emu/hostfs.c:142 -#: grub-core/osdep/linux/hostdisk.c:456 util/grub-editenv.c:143 -#: util/grub-editenv.c:149 util/grub-fstest.c:320 util/misc.c:111 -#, c-format -msgid "cannot seek `%s': %s" -msgstr "kan niet springen in '%s': %s" - -#: grub-core/disk/cryptodisk.c:1144 -msgid "SOURCE|-u UUID|-a|-b" -msgstr "BRON|-u UUID|-a|-b" - -#: grub-core/disk/cryptodisk.c:1145 -msgid "Mount a crypto device." -msgstr "Een versleuteld apparaat aankoppelen." - -#. TRANSLATORS: This message kicks in during the detection of -#. which modules needs to be included in core image. This happens -#. in the case of degraded RAID and means that autodetection may -#. fail to include some of modules. It's an installation time -#. message, not runtime message. -#: grub-core/disk/diskfilter.c:343 grub-core/disk/diskfilter.c:376 -#, c-format -msgid "" -"Couldn't find physical volume `%s'. Some modules may be missing from core " -"image." -msgstr "" -"Kan fysiek volumen '%s' niet vinden. Mogelijk ontbreken er modules in de " -"core-image." - -#: grub-core/disk/diskfilter.c:480 -#, c-format -msgid "physical volume %s not found" -msgstr "fysiek volumen %s is niet gevonden" - -#: grub-core/disk/efi/efidisk.c:600 grub-core/disk/efi/efidisk.c:623 -#, c-format -msgid "no media in `%s'" -msgstr "geen medium in '%s'" - -#: grub-core/disk/geli.c:75 -msgid "Couldn't load sha256" -msgstr "Kan sha256 niet laden" - -#: grub-core/disk/geli.c:85 -msgid "Couldn't load sha512" -msgstr "Kan sha512 niet laden" - -#: grub-core/disk/geli.c:216 grub-core/disk/geli.c:220 -msgid "couldn't read ELI metadata" -msgstr "kan ELI-metagegevens niet lezen" - -#: grub-core/disk/geli.c:231 -msgid "wrong ELI magic or version" -msgstr "foutief magisch getal of verkeerde versie van ELI" - -#: grub-core/disk/geli.c:435 grub-core/disk/luks.c:329 -msgid "Attempting to decrypt master key..." -msgstr "Poging tot ontsleutelen van hoofdsleutel..." - -#: grub-core/disk/geli.c:441 grub-core/disk/luks.c:347 -#, c-format -msgid "Enter passphrase for %s%s%s (%s): " -msgstr "Voer wachtwoordzin in voor %s%s%s (%s): " - -#. TRANSLATORS: It's a cryptographic key slot: one element of an array -#. where each element is either empty or holds a key. -#: grub-core/disk/geli.c:530 grub-core/disk/luks.c:451 -#, c-format -msgid "Slot %d opened\n" -msgstr "Sleuf %d is geopend\n" - -#: grub-core/disk/i386/pc/biosdisk.c:470 grub-core/disk/i386/pc/biosdisk.c:524 -#: grub-core/disk/i386/pc/biosdisk.c:534 grub-core/kern/disk_common.c:47 -#, c-format -msgid "attempt to read or write outside of disk `%s'" -msgstr "poging tot lezen of schrijven buiten schijf '%s'" - -#: grub-core/disk/i386/pc/biosdisk.c:491 grub-core/disk/i386/pc/biosdisk.c:611 -#: grub-core/disk/scsi.c:726 -msgid "cannot write to CD-ROM" -msgstr "kan niet naar CD-rom schrijven" - -#: grub-core/disk/i386/pc/biosdisk.c:662 -msgid "" -"Native disk drivers are in use. Refusing to use firmware disk interface." -msgstr "" -"De eigen schijfstuurprogramma's worden gebruikt. De firmware-interface is " -"afgewezen." - -#. TRANSLATORS: it's a partition for embedding, -#. not a partition embed into something. GRUB -#. install tools put core.img into a place -#. usable for bootloaders (called generically -#. "embedding zone") and this operation is -#. called "embedding". -#: grub-core/disk/ldm.c:1015 -msgid "your LDM Embedding Partition is too small; embedding won't be possible" -msgstr "uw LDM-inbeddende partitie is te klein; inbedding is niet mogelijk" - -#. TRANSLATORS: it's a partition for embedding, -#. not a partition embed into something. -#: grub-core/disk/ldm.c:1033 -msgid "this LDM has no Embedding Partition; embedding won't be possible" -msgstr "deze LDM heeft geen inbeddende partitie; inbedding is niet mogelijk" - -#. TRANSLATORS: The disk is simply removed from the list of available ones, -#. not wiped, avoid to scare user. -#: grub-core/disk/loopback.c:45 -msgid "Delete the specified loopback drive." -msgstr "Het gegeven lus-apparaat verwijderen." - -#: grub-core/disk/loopback.c:237 -msgid "[-d] DEVICENAME FILE." -msgstr "[-d] APPARAATNAAM BESTAND" - -#. TRANSLATORS: The file itself is not destroyed -#. or transformed into drive. -#: grub-core/disk/loopback.c:240 -msgid "Make a virtual drive from a file." -msgstr "Van een bestand een virtuele schijf maken." - -#: grub-core/efiemu/i386/loadcore32.c:111 -#: grub-core/efiemu/i386/loadcore64.c:125 grub-core/kern/arm/dl.c:256 -#: grub-core/kern/arm64/dl.c:187 grub-core/kern/i386/dl.c:75 -#: grub-core/kern/ia64/dl.c:140 grub-core/kern/mips/dl.c:258 -#: grub-core/kern/powerpc/dl.c:163 grub-core/kern/riscv/dl.c:334 -#: grub-core/kern/sparc64/dl.c:180 grub-core/kern/x86_64/dl.c:110 -#: util/grub-mkimagexx.c:756 util/grub-mkimagexx.c:881 -#: util/grub-mkimagexx.c:945 util/grub-mkimagexx.c:1026 -#: util/grub-mkimagexx.c:1120 util/grub-mkimagexx.c:1222 -#: util/grub-mkimagexx.c:1413 util/grub-mkimagexx.c:1628 -#: util/grub-mkimagexx.c:1665 util/grub-mkimagexx.c:1697 -#: util/grub-mkimagexx.c:1767 util/grub-mkimagexx.c:1797 -#, c-format -msgid "relocation 0x%x is not implemented yet" -msgstr "relocatie 0x%x is nog niet geïmplenteerd" - -#: grub-core/efiemu/loadcore.c:200 grub-core/efiemu/loadcore.c:237 -#: grub-core/loader/i386/bsdXX.c:317 util/grub-mkimagexx.c:2360 -msgid "no symbol table" -msgstr "geen symbolentabel" - -#: grub-core/efiemu/loadcore.c:346 grub-core/kern/dl.c:609 -#: grub-core/loader/ia64/efi/linux.c:345 grub-core/loader/mips/linux.c:248 -#: grub-core/loader/multiboot_elfxx.c:76 -#: grub-core/loader/powerpc/ieee1275/linux.c:280 -#: grub-core/loader/sparc64/ieee1275/linux.c:320 -msgid "this ELF file is not of the right type" -msgstr "dit ELF-bestand is niet van het juiste type" - -#: grub-core/efiemu/main.c:313 -msgid "Load and initialize EFI emulator." -msgstr "EFI-emulator laden en initialiseren." - -#: grub-core/efiemu/main.c:317 -msgid "Finalize loading of EFI emulator." -msgstr "Het laden van de EFI-emulator afmaken." - -#: grub-core/efiemu/main.c:320 -msgid "Unload EFI emulator." -msgstr "De EFI-emulator de-activeren." - -#: grub-core/efiemu/symbols.c:92 grub-core/kern/dl.c:376 -#, c-format -msgid "symbol `%s' not found" -msgstr "symbool '%s' is niet gevonden" - -#: grub-core/font/font_cmd.c:52 -msgid "Loaded fonts:" -msgstr "Geladen lettertypes:" - -#: grub-core/font/font_cmd.c:74 -msgid "FILE..." -msgstr "BESTAND..." - -#: grub-core/font/font_cmd.c:75 -msgid "Specify one or more font files to load." -msgstr "Te laden lettertypebestanden." - -#: grub-core/font/font_cmd.c:78 -msgid "List the loaded fonts." -msgstr "De geladen lettertypes tonen." - -#: grub-core/fs/archelp.c:216 grub-core/fs/archelp.c:278 -#: grub-core/fs/btrfs.c:1815 grub-core/fs/fshelp.c:227 grub-core/fs/jfs.c:736 -#: grub-core/fs/minix.c:369 grub-core/fs/ufs.c:454 -msgid "too deep nesting of symlinks" -msgstr "te diepe nesting van symbolische koppelingen" - -#: grub-core/fs/bfs.c:228 grub-core/fs/fshelp.c:368 grub-core/fs/minix.c:270 -#: grub-core/kern/file.c:156 -msgid "attempt to read past the end of file" -msgstr "poging tot lezen voorbij einde van bestand" - -#: grub-core/fs/btrfs.c:1698 grub-core/fs/btrfs.c:1957 -#: grub-core/fs/fshelp.c:189 grub-core/fs/fshelp.c:309 grub-core/fs/jfs.c:431 -#: grub-core/fs/minix.c:414 grub-core/fs/minix.c:562 -#: grub-core/fs/reiserfs.c:732 grub-core/fs/ufs.c:531 grub-core/fs/ufs.c:671 -#: grub-core/fs/zfs/zfs.c:2831 grub-core/fs/zfs/zfs.c:4247 -msgid "not a directory" -msgstr "is geen map" - -#: grub-core/fs/btrfs.c:2063 grub-core/fs/fshelp.c:307 grub-core/fs/jfs.c:835 -#: grub-core/fs/zfs/zfs.c:3801 -msgid "not a regular file" -msgstr "is geen normaal bestand" - -#: grub-core/fs/btrfs.c:2157 grub-core/fs/zfs/zfs.c:4333 -#: grub-core/partmap/msdos.c:400 -msgid "your core.img is unusually large. It won't fit in the embedding area" -msgstr "" -"Uw core.img is ongebruikelijk groot. Het zal niet in de inbeddingsruimte " -"passen." - -#: grub-core/fs/fshelp.c:281 grub-core/fs/minix.c:630 grub-core/fs/ufs.c:661 -#: grub-core/fs/ufs.c:757 grub-core/kern/fs.c:168 grub-core/kern/fs.c:180 -#, c-format -msgid "invalid file name `%s'" -msgstr "ongeldige bestandsnaam '%s'" - -#: grub-core/fs/zfs/zfs.c:453 -msgid "checksum verification failed" -msgstr "controle van controlesom is mislukt" - -#: grub-core/fs/zfs/zfs.c:1465 -msgid "couldn't find a necessary member device of multi-device filesystem" -msgstr "" -"kan een benodigd deelapparaat van een multi-apparaat-bestandssysteem niet " -"vinden" - -#: grub-core/fs/zfs/zfscrypt.c:292 -msgid "no decryption key available" -msgstr "er is geen onsleutelingssleutel beschikbaar" - -#: grub-core/fs/zfs/zfscrypt.c:304 -msgid "MAC verification failed" -msgstr "MAC-controle is mislukt" - -#: grub-core/fs/zfs/zfscrypt.c:413 -msgid "Assume input is raw." -msgstr "Aannemen dat de invoer onbewerkt is." - -#: grub-core/fs/zfs/zfscrypt.c:414 -msgid "Assume input is hex." -msgstr "Aannemen dat de invoer hexadecimaal is." - -#: grub-core/fs/zfs/zfscrypt.c:415 -msgid "Assume input is passphrase." -msgstr "Aannemen dat de invoer een wachtwoordzin is." - -#: grub-core/fs/zfs/zfscrypt.c:437 util/grub-fstest.c:553 util/grub-mount.c:483 -msgid "Enter ZFS password: " -msgstr "Voer ZFS-wachtwoord in: " - -#: grub-core/fs/zfs/zfscrypt.c:476 -msgid "[-h|-p|-r] [FILE]" -msgstr "[-h|-p|-r] [BESTAND]" - -#: grub-core/fs/zfs/zfscrypt.c:477 -msgid "Import ZFS wrapping key stored in FILE." -msgstr "De ZFS-inpaksleutel opgeslagen in BESTAND importeren." - -#: grub-core/fs/zfs/zfsinfo.c:51 -msgid "Virtual device is removed" -msgstr "Virtueel apparaat is verwijderd" - -#: grub-core/fs/zfs/zfsinfo.c:57 -msgid "Virtual device is faulted" -msgstr "Virtueel apparaat is in fouttoestand" - -#: grub-core/fs/zfs/zfsinfo.c:63 -msgid "Virtual device is offline" -msgstr "Virtueel apparaat is offline" - -#. TRANSLATORS: degraded doesn't mean broken but that some of -#. component are missing but virtual device as whole is still usable. -#: grub-core/fs/zfs/zfsinfo.c:70 -msgid "Virtual device is degraded" -msgstr "Virtueel apparaat is beperkt functioneel" - -#: grub-core/fs/zfs/zfsinfo.c:73 -msgid "Virtual device is online" -msgstr "Virtueel apparaat is online" - -#: grub-core/fs/zfs/zfsinfo.c:89 -msgid "Incorrect virtual device: no type available" -msgstr "Onjuist virtueel apparaat: geen type bekend" - -#. TRANSLATORS: The virtual devices form a tree (in graph-theoretical -#. sense). The nodes like mirror or raidz have children: member devices. -#. The "real" devices which actually store data are called "leafs" -#. (again borrowed from graph theory) and can be either disks -#. (or partitions) or files. -#: grub-core/fs/zfs/zfsinfo.c:105 -msgid "Leaf virtual device (file or disk)" -msgstr "Feitelijk virtueel apparaat (bestand of schijf)" - -#: grub-core/fs/zfs/zfsinfo.c:113 -msgid "Bootpath: unavailable\n" -msgstr "Opstartpad: (niet beschikbaar)\n" - -#: grub-core/fs/zfs/zfsinfo.c:115 -#, c-format -msgid "Bootpath: %s\n" -msgstr "Opstartpad: %s\n" - -#: grub-core/fs/zfs/zfsinfo.c:120 -msgid "Path: unavailable" -msgstr "Pad: (niet beschikbaar)" - -#: grub-core/fs/zfs/zfsinfo.c:122 -#, c-format -msgid "Path: %s\n" -msgstr "Pad: %s\n" - -#: grub-core/fs/zfs/zfsinfo.c:127 -msgid "Devid: unavailable" -msgstr "Apparaat-ID: (niet beschikbaar)" - -#: grub-core/fs/zfs/zfsinfo.c:129 -#, c-format -msgid "Devid: %s\n" -msgstr "Apparaat-ID: %s\n" - -#: grub-core/fs/zfs/zfsinfo.c:148 -msgid "This VDEV is a mirror" -msgstr "Deze VDEV is een mirror" - -#: grub-core/fs/zfs/zfsinfo.c:153 -#, c-format -msgid "This VDEV is a RAIDZ%llu\n" -msgstr "Deze VDEV is een RAIDZ%llu\n" - -#: grub-core/fs/zfs/zfsinfo.c:158 -msgid "Incorrect VDEV" -msgstr "Onjuiste VDEV" - -#: grub-core/fs/zfs/zfsinfo.c:161 -#, c-format -msgid "VDEV with %d children\n" -msgstr "VDEV met %d dochters\n" - -#. TRANSLATORS: it's the element carying the number %d, not -#. total element number. And the number itself is fine, -#. only the element isn't. -#. -#: grub-core/fs/zfs/zfsinfo.c:177 -#, c-format -msgid "VDEV element number %d isn't correct\n" -msgstr "VDEV-elementnummer %d is niet correct\n" - -#. TRANSLATORS: it's the element carying the number %d, not -#. total element number. This is used in enumeration -#. "Element number 1", "Element number 2", ... -#: grub-core/fs/zfs/zfsinfo.c:184 -#, c-format -msgid "VDEV element number %d:\n" -msgstr "VDEV-elementnummer %d:\n" - -#: grub-core/fs/zfs/zfsinfo.c:193 -#, c-format -msgid "Unknown virtual device type: %s\n" -msgstr "Onbekend virtueel apparaattype: %s\n" - -#. TRANSLATORS: Here we speak about ZFS pools it's semi-marketing, -#. semi-technical term by Sun/Oracle and should be translated in sync with -#. other ZFS-related software and documentation. -#: grub-core/fs/zfs/zfsinfo.c:254 -msgid "Pool state: active" -msgstr "Pool-status: actief" - -#: grub-core/fs/zfs/zfsinfo.c:255 -msgid "Pool state: exported" -msgstr "Pool-status: geëxporteerd" - -#: grub-core/fs/zfs/zfsinfo.c:256 -msgid "Pool state: destroyed" -msgstr "Pool-status: vernietigd" - -#: grub-core/fs/zfs/zfsinfo.c:257 -msgid "Pool state: reserved for hot spare" -msgstr "Pool-status: gereserveerd als vervanger" - -#: grub-core/fs/zfs/zfsinfo.c:258 -msgid "Pool state: level 2 ARC device" -msgstr "Pool-status: niveau-2 ARC-apparaat" - -#: grub-core/fs/zfs/zfsinfo.c:259 -msgid "Pool state: uninitialized" -msgstr "Pool-status: ongeïnitialiseerd" - -#: grub-core/fs/zfs/zfsinfo.c:260 -msgid "Pool state: unavailable" -msgstr "Pool-status: (niet beschikbaar)" - -#: grub-core/fs/zfs/zfsinfo.c:261 -msgid "Pool state: potentially active" -msgstr "Pool-status: potentieel actief" - -#: grub-core/fs/zfs/zfsinfo.c:306 -msgid "Pool name: unavailable" -msgstr "Pool-naam: (niet beschikbaar)" - -#: grub-core/fs/zfs/zfsinfo.c:308 -#, c-format -msgid "Pool name: %s\n" -msgstr "Pool-naam: %s\n" - -#: grub-core/fs/zfs/zfsinfo.c:313 -msgid "Pool GUID: unavailable" -msgstr "Pool-GUID: (niet beschikbaar)" - -#: grub-core/fs/zfs/zfsinfo.c:315 -#, c-format -msgid "Pool GUID: %016llx\n" -msgstr "Pool-GUID: %016llx\n" - -#: grub-core/fs/zfs/zfsinfo.c:320 -msgid "Unable to retrieve pool state" -msgstr "Kan pool-status niet verkrijgen" - -#: grub-core/fs/zfs/zfsinfo.c:322 -msgid "Unrecognized pool state" -msgstr "Onbekende pool-status" - -#. TRANSLATORS: There are undetermined number of virtual devices -#. in a device tree, not just one. -#. -#: grub-core/fs/zfs/zfsinfo.c:332 -msgid "No virtual device tree available" -msgstr "Er is geen virtueleapparatenboom beschikbaar" - -#: grub-core/fs/zfs/zfsinfo.c:431 -msgid "Print ZFS info about DEVICE." -msgstr "ZFS-informatie tonen over APPARAAT." - -#: grub-core/fs/zfs/zfsinfo.c:433 -msgid "FILESYSTEM [VARIABLE]" -msgstr "BESTANDSSYSTEEM [VARIABELE]" - -#: grub-core/fs/zfs/zfsinfo.c:434 -msgid "Print ZFS-BOOTFSOBJ or store it into VARIABLE" -msgstr "Het ZFS-BOOTFSOBJ tonen of opslaan in VARIABELE" - -#. TRANSLATORS: at this position GRUB waits for the user to do an action -#. in remote debugger, namely to tell it to establish connection. -#: grub-core/gdb/gdb.c:48 -msgid "Now connect the remote debugger, please." -msgstr "Sluit nu de debugger op afstand aan." - -#. TRANSLATORS: GDB stub is a small part of -#. GDB functionality running on local host -#. which allows remote debugger to -#. connect to it. -#: grub-core/gdb/gdb.c:84 -msgid "Start GDB stub on given port" -msgstr "GDB-stub starten op de gegeven poort" - -#. TRANSLATORS: this refers to triggering -#. a breakpoint so that the user will land -#. into GDB. -#: grub-core/gdb/gdb.c:89 -msgid "Break into GDB" -msgstr "In GDB inbreken" - -#: grub-core/gdb/gdb.c:91 -msgid "Stop GDB stub" -msgstr "GDB-stub stoppen" - -#: grub-core/gettext/gettext.c:85 -msgid "premature end of file" -msgstr "voortijdig einde van bestand" - -#. TRANSLATORS: It refers to passing the string through gettext. -#. So it's "translate" in the same meaning as in what you're -#. doing now. -#. -#: grub-core/gettext/gettext.c:525 -msgid "Translates the string with the current settings." -msgstr "Vertaalt de tekenreeks met de huidige instellingen." - -#: grub-core/gfxmenu/gui_label.c:186 grub-core/normal/menu_text.c:184 -msgid "" -"Press enter to boot the selected OS, `e' to edit the commands before booting " -"or `c' for a command-line. ESC to return previous menu." -msgstr "" -"Druk op Enter om het geselecteerde systeem te starten, 'e' om de opdrachten " -"te bewerken, of 'c' voor een opdrachtregel. Druk op ESC voor het vorige " -"menu." - -#: grub-core/gfxmenu/gui_label.c:190 grub-core/normal/menu_text.c:192 -msgid "" -"Press enter to boot the selected OS, `e' to edit the commands before booting " -"or `c' for a command-line." -msgstr "" -"Druk op Enter om het geselecteerde systeem te starten, 'e' om de opdrachten " -"te bewerken, of 'c' voor een opdrachtregel." - -#: grub-core/gfxmenu/gui_label.c:194 -msgid "enter: boot, `e': options, `c': cmd-line" -msgstr "Enter: starten, 'e': opties, 'c': opdrachtregel" - -#: grub-core/gfxmenu/gui_progress_bar.c:339 grub-core/normal/menu_text.c:446 -#, c-format -msgid "The highlighted entry will be executed automatically in %ds." -msgstr "Over %d seconden wordt het geselecteerde item automatisch gestart." - -#. TRANSLATORS: 's' stands for seconds. -#. It's a standalone timeout notification. -#. Please use the short form in your language. -#: grub-core/gfxmenu/gui_progress_bar.c:344 -#, c-format -msgid "%ds remaining." -msgstr "Nog %d seconden." - -#. TRANSLATORS: 's' stands for seconds. -#. It's a standalone timeout notification. -#. Please use the shortest form available in you language. -#: grub-core/gfxmenu/gui_progress_bar.c:349 grub-core/normal/menu_text.c:444 -#: grub-core/normal/menu_text.c:462 -#, c-format -msgid "%ds" -msgstr "%ds" - -#: grub-core/gfxmenu/view.c:103 -msgid "GRUB Boot Menu" -msgstr "GRUB Opstartmenu" - -#: grub-core/hello/hello.c:36 -msgid "Hello World" -msgstr "Hallo wereld" - -#: grub-core/hello/hello.c:45 -msgid "Say `Hello World'." -msgstr "\"Hallo wereld\" melden." - -#: grub-core/io/gzio.c:409 grub-core/kern/file.c:210 -msgid "attempt to seek outside of the file" -msgstr "poging tot springen buiten het bestand" - -#. TRANSLATORS: It's about given file having some strange format, not -#. complete lack of gzip support. -#: grub-core/io/gzio.c:1228 grub-core/io/gzio.c:1237 grub-core/io/gzio.c:1244 -msgid "unsupported gzip format" -msgstr "niet-ondersteunde GZIP-indeling" - -#: grub-core/io/lzopio.c:511 -msgid "lzop file corrupted" -msgstr "LZOP-bestand is beschadigd" - -#: grub-core/io/xzio.c:278 -msgid "xz file corrupted or unsupported block options" -msgstr "XZ-bestand is beschadigd of gebruikt niet-ondersteunde blokopties" - -#: grub-core/kern/arm/dl.c:277 grub-core/kern/arm64/dl.c:44 -#: grub-core/kern/i386/dl.c:36 grub-core/kern/ia64/dl.c:41 -#: grub-core/kern/mips/dl.c:48 grub-core/kern/powerpc/dl.c:36 -#: grub-core/kern/riscv/dl.c:47 grub-core/kern/sparc64/dl.c:36 -#: grub-core/kern/x86_64/dl.c:36 grub-core/loader/i386/bsd.c:1445 -#: grub-core/loader/i386/bsdXX.c:49 grub-core/loader/ia64/efi/linux.c:341 -#: grub-core/loader/mips/linux.c:298 grub-core/loader/multiboot.c:232 -#: grub-core/loader/multiboot_elfxx.c:73 -#: grub-core/loader/powerpc/ieee1275/linux.c:294 -#: grub-core/loader/sparc64/ieee1275/linux.c:331 -msgid "invalid arch-dependent ELF magic" -msgstr "ongeldig architectuur-afhankelijk magisch getal in ELF-bestand" - -#: grub-core/kern/corecmd.c:178 -msgid "[ENVVAR=VALUE]" -msgstr "[OMGEVINGSVARIABELE=WAARDE]" - -#: grub-core/kern/corecmd.c:179 -msgid "Set an environment variable." -msgstr "Een omgevingsvariabele instellen." - -#: grub-core/kern/corecmd.c:183 -msgid "ENVVAR" -msgstr "OMGEVINGSVARIABELE" - -#: grub-core/kern/corecmd.c:184 -msgid "Remove an environment variable." -msgstr "Een omgevingsvariabele verwijderen." - -#: grub-core/kern/corecmd.c:186 -msgid "[ARG]" -msgstr "[ARGUMENT]" - -#: grub-core/kern/corecmd.c:186 -msgid "List devices or files." -msgstr "Apparaten of bestanden tonen." - -#: grub-core/kern/corecmd.c:188 -msgid "Insert a module." -msgstr "Een module laden." - -#: grub-core/kern/disk.c:236 grub-core/net/net.c:1390 -#, c-format -msgid "disk `%s' not found" -msgstr "schijf '%s' is niet gevonden" - -#: grub-core/kern/disk_common.c:27 -msgid "attempt to read or write outside of partition" -msgstr "poging tot lezen of schrijven buiten partitie" - -#: grub-core/kern/dl.c:212 grub-core/kern/elf.c:61 grub-core/kern/elf.c:79 -#: grub-core/loader/i386/bsdXX.c:46 grub-core/loader/ia64/efi/linux.c:335 -#: grub-core/loader/multiboot_elfxx.c:69 -msgid "invalid arch-independent ELF magic" -msgstr "ongeldig architectuur-onafhankelijk magisch getal in ELF-bestand" - -#. TRANSLATORS: it refers to the lack of free slots. -#: grub-core/kern/emu/hostdisk.c:208 grub-core/kern/emu/hostdisk.c:466 -msgid "device count exceeds limit" -msgstr "aantal apparaten overschrijdt limiet" - -#: grub-core/kern/emu/hostdisk.c:342 util/editenv.c:54 util/grub-editenv.c:197 -#: util/grub-fstest.c:191 util/grub-mkfont.c:796 util/misc.c:114 -#: util/misc.c:129 util/setup.c:788 -#, c-format -msgid "cannot write to `%s': %s" -msgstr "kan niet schrijven naar '%s': %s" - -#. TRANSLATORS: Only one entry is ignored. However the suggestion -#. is to correct/delete the whole file. -#. device.map is a file indicating which -#. devices are available at boot time. Fedora populated it with -#. entries like (hd0,1) /dev/sda1 which would mean that every -#. partition is a separate disk for BIOS. Such entries were -#. inactive in GRUB due to its bug which is now gone. Without -#. this additional check these entries would be harmful now. -#. -#: grub-core/kern/emu/hostdisk.c:503 -#, c-format -msgid "" -"the device.map entry `%s' is invalid. Ignoring it. Please correct or delete " -"your device.map" -msgstr "" -"het item '%s' in 'device.map' is ongeldig; het wordt genegeerd; corrigeer of " -"verwijder uw 'device.map'" - -#. TRANSLATORS: device.map is a filename. Not to be translated. -#. device.map specifies disk correspondance overrides. Previously -#. one could create any kind of device name with this. Due to -#. some problems we decided to limit it to just a handful -#. possibilities. -#: grub-core/kern/emu/hostdisk.c:555 -#, c-format -msgid "" -"the drive name `%s' in device.map is incorrect. Using %s instead. Please use " -"the form [hfc]d[0-9]* (E.g. `hd0' or `cd')" -msgstr "" -"apparaatnaam '%s' in 'device.map' is onjuist; daarvoor in de plaats wordt %s " -"gebruikt; gebruik de vorm [hfc]d[0-9]* (bijvoorbeeld 'hd0' of 'cd')" - -#: grub-core/kern/emu/hostfs.c:76 grub-core/kern/emu/hostfs.c:109 -#, c-format -msgid "can't open `%s': %s" -msgstr "kan '%s' niet openen: %s" - -#: grub-core/kern/emu/main.c:99 util/grub-fstest.c:516 util/grub-mount.c:452 -msgid "DEVICE_NAME" -msgstr "APPARAATNAAM" - -#: grub-core/kern/emu/main.c:99 grub-core/loader/i386/bsd.c:136 -#: grub-core/loader/i386/bsd.c:169 util/grub-fstest.c:516 util/grub-mount.c:452 -msgid "Set root device." -msgstr "Root-apparaat instellen." - -#. TRANSLATORS: There are many devices in device map. -#: grub-core/kern/emu/main.c:102 util/grub-probe.c:733 util/grub-setup.c:85 -#, c-format -msgid "use FILE as the device map [default=%s]" -msgstr "BESTAND als apparaattoewijzingstabel gebruiken [standaard %s]" - -#. TRANSLATORS: There are many devices in device map. -#: grub-core/kern/emu/main.c:105 -msgid "use FILE as memdisk" -msgstr "BESTAND gebruiken als geheugenschijf" - -#: grub-core/kern/emu/main.c:107 util/grub-setup.c:83 -#, c-format -msgid "use GRUB files in the directory DIR [default=%s]" -msgstr "de GRUB-bestanden uit MAP gebruiken [standaard %s]" - -#: grub-core/kern/emu/main.c:108 include/grub/util/install.h:67 -#: util/grub-editenv.c:58 util/grub-fstest.c:525 util/grub-glue-efi.c:58 -#: util/grub-macbless.c:104 util/grub-mkfont.c:962 util/grub-mkimage.c:84 -#: util/grub-mklayout.c:56 util/grub-mount.c:458 util/grub-probe.c:735 -#: util/grub-render-label.c:74 util/grub-script-check.c:52 util/grub-setup.c:90 -#: util/grub-syslinux2cfg.c:78 -msgid "print verbose messages." -msgstr "uitgebreide meldingen tonen" - -#: grub-core/kern/emu/main.c:109 grub-core/lib/gnulib/argp-parse.c:85 -msgid "SECS" -msgstr "SECONDEN" - -#: grub-core/kern/emu/main.c:109 -msgid "wait until a debugger will attach" -msgstr "wachten tot een debugger zich aanhecht" - -#: grub-core/kern/emu/main.c:171 util/grub-macbless.c:143 -#: util/grub-mkrelpath.c:61 util/grub-probe.c:874 util/grub-script-check.c:75 -#: util/grub-setup.c:203 -#, c-format -msgid "Unknown extra argument `%s'." -msgstr "Onbekend extra argument '%s'." - -#: grub-core/kern/emu/main.c:185 -msgid "GRUB emulator." -msgstr "GRUB-emulator." - -#: grub-core/kern/emu/main.c:213 util/grub-editenv.c:262 -#: util/grub-glue-efi.c:110 util/grub-macbless.c:173 util/grub-mkfont.c:1177 -#: util/grub-mkimage.c:266 util/grub-mklayout.c:494 -#: util/grub-mkpasswd-pbkdf2.c:132 util/grub-mkrelpath.c:96 -#: util/grub-probe.c:863 util/grub-render-label.c:152 -#: util/grub-script-check.c:160 util/grub-setup.c:262 -#: util/grub-syslinux2cfg.c:163 -msgid "Error in parsing command line arguments\n" -msgstr "Fout tijdens ontleden van de opdrachtregelargumenten.\n" - -#. TRANSLATORS: In this case GRUB tells user what he has to do. -#: grub-core/kern/emu/main.c:248 -#, c-format -msgid "Run `gdb %s %d', and set ARGS.HOLD to zero.\n" -msgstr "Voer 'gdb %s %d' uit, en zet ARGS.HOLD op nul.\n" - -#: grub-core/kern/emu/misc.c:48 -#, c-format -msgid "%s: warning:" -msgstr "%s: waarschuwing:" - -#: grub-core/kern/emu/misc.c:64 -#, c-format -msgid "%s: info:" -msgstr "%s: informatie:" - -#: grub-core/kern/emu/misc.c:79 util/grub-fstest.c:567 util/grub-fstest.c:576 -#: util/grub-mount.c:497 util/grub-mount.c:505 -#, c-format -msgid "%s: error:" -msgstr "%s: fout:" - -#: grub-core/kern/emu/misc.c:176 -#, c-format -msgid "file `%s' is too big" -msgstr "bestand '%s' is te groot" - -#: grub-core/kern/fs.c:120 -msgid "unknown filesystem" -msgstr "onbekend bestandssysteem" - -#: grub-core/kern/mips/arc/init.c:273 grub-core/kern/mips/loongson/init.c:301 -msgid "Shutdown failed" -msgstr "Uitschakeling is mislukt" - -#: grub-core/kern/mips/arc/init.c:285 -msgid "Exit failed" -msgstr "Afsluiten is mislukt" - -#: grub-core/kern/misc.c:351 grub-core/kern/misc.c:408 include/grub/misc.h:269 -#: include/grub/misc.h:278 -msgid "overflow is detected" -msgstr "overloop is gedetecteerd" - -#: grub-core/kern/partition.c:51 grub-core/partmap/bsdlabel.c:108 -#, c-format -msgid "Discarding improperly nested partition (%s,%s,%s%d)" -msgstr "Onjuist geneste partitie (%s,%s,%s%d) wordt weggelaten" - -#: grub-core/kern/rescue_parser.c:73 util/grub-editenv.c:292 -#, c-format -msgid "Unknown command `%s'.\n" -msgstr "Opdracht '%s' is onbekend.\n" - -#: grub-core/lib/arg.c:31 -msgid "Display this help and exit." -msgstr "Deze hulptekst tonen en stoppen." - -#: grub-core/lib/arg.c:33 -msgid "Display the usage of this command and exit." -msgstr "Gebruikssamenvatting van deze opdracht tonen en stoppen." - -#: grub-core/lib/arg.c:362 -#, c-format -msgid "missing mandatory option for `%s'" -msgstr "verplichte optie voor '%s' ontbreekt" - -#: grub-core/lib/arg.c:384 -#, c-format -msgid "the argument `%s' requires an integer" -msgstr "het argument '%s' vereist een geheel getal" - -#: grub-core/lib/arg.c:407 -#, c-format -msgid "" -"a value was assigned to the argument `%s' while it doesn't require an " -"argument" -msgstr "" -"er werd een waarde gegeven voor argument '%s' terwijl het geen waarde vereist" - -#: grub-core/lib/backtrace.c:64 -msgid "Print backtrace." -msgstr "Een backtrace tonen." - -#: grub-core/lib/gnulib/argp-help.c:149 -#, c-format -msgid "ARGP_HELP_FMT: %s value is less than or equal to %s" -msgstr "ARGP_HELP_FMT: waarde voor '%s' is kleiner of gelijk aan %s" - -#: grub-core/lib/gnulib/argp-help.c:225 -#, c-format -msgid "%.*s: ARGP_HELP_FMT parameter requires a value" -msgstr "%.*s: Parameter in ARGP_HELP_FMT vereist een waarde" - -#: grub-core/lib/gnulib/argp-help.c:235 -#, c-format -msgid "%.*s: Unknown ARGP_HELP_FMT parameter" -msgstr "%.*s: Onbekende parameter in ARGP_HELP_FMT" - -#: grub-core/lib/gnulib/argp-help.c:248 -#, c-format -msgid "Garbage in ARGP_HELP_FMT: %s" -msgstr "Rommel in ARGP_HELP_FMT: %s" - -#: grub-core/lib/gnulib/argp-help.c:1229 -msgid "" -"Mandatory or optional arguments to long options are also mandatory or " -"optional for any corresponding short options." -msgstr "" -"Een argument dat verplicht of optioneel is voor een lange optie,\n" -"is dat ook voor de overeenkomstige korte optie." - -#: grub-core/lib/gnulib/argp-help.c:1620 -msgid " or: " -msgstr " of: " - -#: grub-core/lib/gnulib/argp-help.c:1632 -msgid " [OPTION...]" -msgstr " [OPTIE...]" - -#: grub-core/lib/gnulib/argp-help.c:1659 -#, c-format -msgid "Try '%s --help' or '%s --usage' for more information.\n" -msgstr "Typ '%s --help' of '%s --usage' voor meer informatie.\n" - -#: grub-core/lib/gnulib/argp-help.c:1687 -#, c-format -msgid "Report bugs to %s.\n" -msgstr "" -"Rapporteer gebreken in het programma aan %s;\n" -"meld fouten in de vertaling aan .\n" - -#: grub-core/lib/gnulib/argp-help.c:1888 grub-core/lib/gnulib/error.c:195 -msgid "Unknown system error" -msgstr "Onbekende systeemfout" - -#: grub-core/lib/gnulib/argp-parse.c:81 -msgid "give this help list" -msgstr "deze hulptekst tonen" - -#: grub-core/lib/gnulib/argp-parse.c:82 -msgid "give a short usage message" -msgstr "een korte gebruikssamenvatting tonen" - -#: grub-core/lib/gnulib/argp-parse.c:83 util/grub-mkfont.c:946 -msgid "NAME" -msgstr "NAAM" - -#: grub-core/lib/gnulib/argp-parse.c:84 -msgid "set the program name" -msgstr "de programmanaam instellen" - -#: grub-core/lib/gnulib/argp-parse.c:86 -msgid "hang for SECS seconds (default 3600)" -msgstr "dit aantal seconden pauzeren (standaard 3600)" - -#: grub-core/lib/gnulib/argp-parse.c:143 -msgid "print program version" -msgstr "programmaversie tonen" - -#: grub-core/lib/gnulib/argp-parse.c:160 -msgid "(PROGRAM ERROR) No version known!?" -msgstr "**Interne programmafout**: geen versie bekend!?" - -#: grub-core/lib/gnulib/argp-parse.c:613 -#, c-format -msgid "%s: Too many arguments\n" -msgstr "%s: Te veel argumenten\n" - -#: grub-core/lib/gnulib/argp-parse.c:759 -msgid "(PROGRAM ERROR) Option should have been recognized!?" -msgstr "**Interne programmafout**: optie had herkend moeten worden!?" - -#: grub-core/lib/gnulib/getopt.c:278 -#, fuzzy, c-format -msgid "%s: option '%s%s' is ambiguous\n" -msgstr "%s: optie '-W %s' is niet eenduidig\n" - -#: grub-core/lib/gnulib/getopt.c:284 -#, fuzzy, c-format -msgid "%s: option '%s%s' is ambiguous; possibilities:" -msgstr "%s: optie '%s' is niet eenduidig; mogelijkheden zijn:" - -#: grub-core/lib/gnulib/getopt.c:319 -#, fuzzy, c-format -msgid "%s: unrecognized option '%s%s'\n" -msgstr "%s: onbekende optie '%c%s'\n" - -#: grub-core/lib/gnulib/getopt.c:345 -#, fuzzy, c-format -msgid "%s: option '%s%s' doesn't allow an argument\n" -msgstr "%s: optie '%c%s' staat geen argument toe\n" - -#: grub-core/lib/gnulib/getopt.c:360 -#, fuzzy, c-format -msgid "%s: option '%s%s' requires an argument\n" -msgstr "%s: optie '--%s' vereist een argument\n" - -#: grub-core/lib/gnulib/getopt.c:621 -#, c-format -msgid "%s: invalid option -- '%c'\n" -msgstr "%s: ongeldige optie -- '%c'\n" - -#: grub-core/lib/gnulib/getopt.c:636 grub-core/lib/gnulib/getopt.c:682 -#, c-format -msgid "%s: option requires an argument -- '%c'\n" -msgstr "%s: optie vereist een argument -- '%c'\n" - -#: grub-core/lib/gnulib/openat-die.c:38 -#, fuzzy, c-format -msgid "unable to record current working directory" -msgstr "Kan gevulde map niet verwijderen\n" - -#: grub-core/lib/gnulib/openat-die.c:57 -#, c-format -msgid "failed to return to initial working directory" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:135 grub-core/osdep/aros/hostdisk.c:523 -msgid "Success" -msgstr "Gelukt" - -#: grub-core/lib/gnulib/regcomp.c:138 -msgid "No match" -msgstr "Geen overeenkomsten" - -#: grub-core/lib/gnulib/regcomp.c:141 -msgid "Invalid regular expression" -msgstr "Ongeldige reguliere expressie" - -#: grub-core/lib/gnulib/regcomp.c:144 -msgid "Invalid collation character" -msgstr "Ongeldig samengesteld teken" - -#: grub-core/lib/gnulib/regcomp.c:147 -msgid "Invalid character class name" -msgstr "Ongeldige tekenklassenaam" - -#: grub-core/lib/gnulib/regcomp.c:150 -msgid "Trailing backslash" -msgstr "Backslash aan het eind" - -#: grub-core/lib/gnulib/regcomp.c:153 -msgid "Invalid back reference" -msgstr "Ongeldige terugverwijzing" - -#: grub-core/lib/gnulib/regcomp.c:156 -#, fuzzy -msgid "Unmatched [, [^, [:, [., or [=" -msgstr "Ongepaarde [ of [^" - -#: grub-core/lib/gnulib/regcomp.c:159 -msgid "Unmatched ( or \\(" -msgstr "Ongepaarde ( of \\(" - -#: grub-core/lib/gnulib/regcomp.c:162 -msgid "Unmatched \\{" -msgstr "Ongepaarde \\{" - -#: grub-core/lib/gnulib/regcomp.c:165 -msgid "Invalid content of \\{\\}" -msgstr "Ongeldige inhoud van \\{\\}" - -#: grub-core/lib/gnulib/regcomp.c:168 -msgid "Invalid range end" -msgstr "Ongeldig bereikeinde" - -#: grub-core/lib/gnulib/regcomp.c:171 -msgid "Memory exhausted" -msgstr "Onvoldoende geheugen beschikbaar" - -#: grub-core/lib/gnulib/regcomp.c:174 -msgid "Invalid preceding regular expression" -msgstr "Ongeldige voorafgaande reguliere expressie" - -#: grub-core/lib/gnulib/regcomp.c:177 -msgid "Premature end of regular expression" -msgstr "Voortijdig einde van reguliere expressie" - -#: grub-core/lib/gnulib/regcomp.c:180 -msgid "Regular expression too big" -msgstr "Reguliere expressie is te groot" - -#: grub-core/lib/gnulib/regcomp.c:183 -msgid "Unmatched ) or \\)" -msgstr "Ongepaarde ) of \\)" - -#: grub-core/lib/gnulib/regcomp.c:531 -msgid "unknown regexp error" -msgstr "Onbekende fout in reguliere expressie" - -#: grub-core/lib/gnulib/regcomp.c:676 -msgid "No previous regular expression" -msgstr "Geen eerdere reguliere expressie" - -#: grub-core/lib/i386/halt.c:77 -msgid "GRUB doesn't know how to halt this machine yet!" -msgstr "GRUB weet nog niet hoe deze machine te stoppen!" - -#: grub-core/lib/legacy_parse.c:75 -msgid "Default server is ${net_default_server}" -msgstr "Standaardserver is ${net_default_server}" - -#: grub-core/lib/legacy_parse.c:844 grub-core/video/colors.c:296 -#: grub-core/video/colors.c:305 grub-core/video/colors.c:311 -#: grub-core/video/colors.c:327 util/render-label.c:84 util/render-label.c:98 -#, c-format -msgid "invalid color specification `%s'" -msgstr "ongeldige kleurindicatie '%s'" - -#: grub-core/lib/mips/arc/reboot.c:32 grub-core/lib/mips/loongson/reboot.c:61 -msgid "Reboot failed" -msgstr "Herstarten is mislukt" - -#: grub-core/lib/random.c:113 -msgid "[LENGTH]" -msgstr "[LENGTE]" - -#: grub-core/lib/random.c:114 -msgid "Hexdump random data." -msgstr "Willekeurige gegevens genereren." - -#: grub-core/loader/arm/linux.c:242 -msgid "device tree must be supplied (see `devicetree' command)" -msgstr "apparatenboom moet gegeven zijn (zie opdracht 'devicetree')" - -#: grub-core/loader/arm/linux.c:334 -msgid "invalid zImage" -msgstr "ongeldige zImage" - -#: grub-core/loader/arm/linux.c:450 grub-core/loader/efi/fdt.c:144 -msgid "invalid device tree" -msgstr "ongeldige apparatenboom" - -#: grub-core/loader/arm/linux.c:493 grub-core/loader/arm64/linux.c:383 -#: grub-core/loader/i386/linux.c:1125 grub-core/loader/i386/pc/linux.c:479 -#: grub-core/loader/i386/xen.c:962 grub-core/loader/i386/xen.c:964 -#: grub-core/loader/ia64/efi/linux.c:591 grub-core/loader/mips/linux.c:501 -#: grub-core/loader/powerpc/ieee1275/linux.c:383 -#: grub-core/loader/riscv/linux.c:50 -#: grub-core/loader/sparc64/ieee1275/linux.c:511 -msgid "Load Linux." -msgstr "Linux laden." - -#: grub-core/loader/arm/linux.c:495 grub-core/loader/arm64/linux.c:385 -#: grub-core/loader/i386/linux.c:1127 grub-core/loader/i386/pc/linux.c:482 -#: grub-core/loader/i386/xen.c:966 grub-core/loader/ia64/efi/linux.c:594 -#: grub-core/loader/mips/linux.c:503 -#: grub-core/loader/powerpc/ieee1275/linux.c:385 -#: grub-core/loader/riscv/linux.c:52 -#: grub-core/loader/sparc64/ieee1275/linux.c:513 -msgid "Load initrd." -msgstr "Een initiële RAM-schijf laden." - -#. TRANSLATORS: DTB stands for device tree blob. -#: grub-core/loader/arm/linux.c:498 grub-core/loader/efi/fdt.c:169 -msgid "Load DTB file." -msgstr "Een DTB-bestand laden." - -#: grub-core/loader/arm64/linux.c:59 -msgid "" -"plain image kernel not supported - rebuild with CONFIG_(U)EFI_STUB enabled" -msgstr "" -"een gewone image-kernel wordt niet ondersteund; hercompileer grub met " -"'CONFIG_(U)EFI_STUB' ingeschakeld" - -#: grub-core/loader/arm64/xen_boot.c:156 -msgid "failed to get FDT" -msgstr "verkrijgen van FDT is mislukt" - -#: grub-core/loader/arm64/xen_boot.c:418 -msgid "you need to load the Xen Hypervisor first" -msgstr "u dient eerst de Xen-hypervisor te laden" - -#: grub-core/loader/arm64/xen_boot.c:516 -msgid "Load a xen hypervisor." -msgstr "Een Xen-hypervisor laden." - -#: grub-core/loader/arm64/xen_boot.c:519 -msgid "Load a xen module." -msgstr "Een Xen-module laden." - -#: grub-core/loader/efi/appleloader.c:231 -msgid "[OPTS]" -msgstr "[OPTIES]" - -#. TRANSLATORS: This command is used on EFI to -#. switch to BIOS mode and boot the OS requiring -#. BIOS. -#: grub-core/loader/efi/appleloader.c:235 -msgid "Boot BIOS-based system." -msgstr "Een BIOS-gebaseerd systeem opstarten." - -#: grub-core/loader/efi/chainloader.c:421 -#: grub-core/loader/i386/pc/chainloader.c:303 -msgid "Load another boot loader." -msgstr "Een andere boot-loader laden." - -#: grub-core/loader/i386/bsd.c:103 -msgid "Display output on all consoles." -msgstr "Uitvoer op alle consoles tonen." - -#: grub-core/loader/i386/bsd.c:104 grub-core/loader/i386/bsd.c:138 -#: grub-core/loader/i386/bsd.c:171 -msgid "Use serial console." -msgstr "Een seriële console gebruiken." - -#: grub-core/loader/i386/bsd.c:105 grub-core/loader/i386/bsd.c:131 -#: grub-core/loader/i386/bsd.c:159 -msgid "Ask for file name to reboot from." -msgstr "Vragen om naam van bestand waarvan herstart moet worden." - -#: grub-core/loader/i386/bsd.c:106 -msgid "Use CD-ROM as root." -msgstr "Een CD-ROM als root-apparaat gebruiken." - -# (doet momenteel niets) -#: grub-core/loader/i386/bsd.c:107 -#, fuzzy -msgid "Invoke user configuration routing." -msgstr "(doet momenteel niets)" - -#: grub-core/loader/i386/bsd.c:108 grub-core/loader/i386/bsd.c:135 -#: grub-core/loader/i386/bsd.c:162 -msgid "Enter in KDB on boot." -msgstr "KDB binnengaan bij opstarten." - -#: grub-core/loader/i386/bsd.c:109 -msgid "Use GDB remote debugger instead of DDB." -msgstr "GDB-debugger op afstand gebruiken in plaats van DDB." - -#: grub-core/loader/i386/bsd.c:110 -msgid "Disable all boot output." -msgstr "Alle opstartuitvoer onderdrukken." - -#: grub-core/loader/i386/bsd.c:112 -msgid "Wait for keypress after every line of output." -msgstr "Op een toetsaanslag wachten na elke uitvoerregel." - -#: grub-core/loader/i386/bsd.c:114 -msgid "Use compiled-in root device." -msgstr "Het bij compilatie aangegeven root-apparaat gebruiken." - -#: grub-core/loader/i386/bsd.c:115 grub-core/loader/i386/bsd.c:134 -#: grub-core/loader/i386/bsd.c:165 -msgid "Boot into single mode." -msgstr "Opstarten in ééngebruikermodus." - -#: grub-core/loader/i386/bsd.c:116 grub-core/loader/i386/bsd.c:166 -msgid "Boot with verbose messages." -msgstr "Opstarten met uitgebreide meldingen." - -#: grub-core/loader/i386/bsd.c:132 grub-core/loader/i386/bsd.c:160 -msgid "Don't reboot, just halt." -msgstr "Niet herstarten, computer alleen stoppen." - -#: grub-core/loader/i386/bsd.c:133 grub-core/loader/i386/bsd.c:161 -msgid "Change configured devices." -msgstr "Ingestelde apparaten wijzigen." - -#. TRANSLATORS: "com" is static and not to be translated. It refers to -#. serial ports e.g. com1. -#. -#: grub-core/loader/i386/bsd.c:142 -msgid "comUNIT[,SPEED]" -msgstr "comNUMMER[,SNELHEID]" - -#: grub-core/loader/i386/bsd.c:157 -msgid "Disable SMP." -msgstr "SMP uitschakelen." - -#: grub-core/loader/i386/bsd.c:158 -msgid "Disable ACPI." -msgstr "ACPI uitschakelen." - -#: grub-core/loader/i386/bsd.c:164 -msgid "Don't display boot diagnostic messages." -msgstr "Geen diagnostische meldingen tonen." - -#: grub-core/loader/i386/bsd.c:167 -msgid "Boot with debug messages." -msgstr "Opstarten met debug-meldingen." - -#: grub-core/loader/i386/bsd.c:168 -msgid "Suppress normal output (warnings remain)." -msgstr "Gewone uitvoer onderdrukken (maar waarschuwingen niet)." - -#. TRANSLATORS: "com" is static and not to be translated. It refers to -#. serial ports e.g. com1. -#. -#: grub-core/loader/i386/bsd.c:175 -msgid "[ADDR|comUNIT][,SPEED]" -msgstr "[ADRES|comNUMMER][,SNELHEID]" - -#: grub-core/loader/i386/bsd.c:489 grub-core/loader/i386/bsd.c:555 -msgid "name" -msgstr "naam" - -#: grub-core/loader/i386/bsd.c:489 grub-core/loader/i386/bsd.c:555 -msgid "type" -msgstr "type" - -#: grub-core/loader/i386/bsd.c:489 grub-core/loader/i386/bsd.c:555 -msgid "addr" -msgstr "adres" - -#: grub-core/loader/i386/bsd.c:490 grub-core/loader/i386/bsd.c:556 -msgid "size" -msgstr "grootte" - -#: grub-core/loader/i386/bsd.c:1147 grub-core/loader/i386/linux.c:466 -#: grub-core/loader/i386/xnu.c:1030 -msgid "Booting in blind mode" -msgstr "Opstarten in blinde modus." - -#: grub-core/loader/i386/bsd.c:2137 -msgid "Load kernel of FreeBSD." -msgstr "Een FreeBSD-kernel laden." - -#: grub-core/loader/i386/bsd.c:2140 -msgid "Load kernel of OpenBSD." -msgstr "Een OpenBSD-kernel laden." - -#: grub-core/loader/i386/bsd.c:2143 -msgid "Load kernel of NetBSD." -msgstr "Een NetBSD-kernel laden." - -#: grub-core/loader/i386/bsd.c:2147 -msgid "Load FreeBSD env." -msgstr "Een FreeBSD-omgeving laden." - -#: grub-core/loader/i386/bsd.c:2150 -msgid "Load FreeBSD kernel module." -msgstr "Een FreeBSD-kernelmodule laden." - -#: grub-core/loader/i386/bsd.c:2153 -msgid "Load NetBSD kernel module." -msgstr "Een NetBSD-kernelmodule laden." - -#: grub-core/loader/i386/bsd.c:2156 -msgid "Load NetBSD kernel module (ELF)." -msgstr "Een NetBSD-kernelmodule (ELF) laden." - -#: grub-core/loader/i386/bsd.c:2159 -msgid "Load FreeBSD kernel module (ELF)." -msgstr "Een FreeBSD-kernelmodule (ELF) laden." - -#. TRANSLATORS: ramdisk isn't identifier, -#. it can be translated. -#: grub-core/loader/i386/bsd.c:2165 -msgid "Load kOpenBSD ramdisk." -msgstr "Een kOpenBSD-RAM-schijf laden." - -#. TRANSLATORS: "payload" is a term used -#. by coreboot and must be translated in -#. sync with coreboot. If unsure, -#. let it untranslated. -#: grub-core/loader/i386/coreboot/chainloader.c:510 -msgid "Load another coreboot payload" -msgstr "Een andere payload van 'coreboot' laden." - -#: grub-core/loader/i386/linux.c:876 -msgid "Legacy `ask' parameter no longer supported." -msgstr "Verouderde parameter 'ask' wordt niet meer ondersteund." - -#: grub-core/loader/i386/linux.c:892 grub-core/loader/i386/linux.c:902 -#: grub-core/loader/i386/linux.c:932 -#, c-format -msgid "%s is deprecated. Use set gfxpayload=%s before linux command instead.\n" -msgstr "" -"%s wordt afgeraden. Gebruik in plaats daarvan 'set gfxpayload=%s' vóór de " -"'linux'-opdracht.\n" - -#. TRANSLATORS: "x" has to be entered in, like an identifier, -#. so please don't use better Unicode codepoints. -#: grub-core/loader/i386/linux.c:915 -#, c-format -msgid "" -"%s is deprecated. VGA mode %d isn't recognized. Use set " -"gfxpayload=WIDTHxHEIGHT[xDEPTH] before linux command instead.\n" -msgstr "" -"%s wordt afgeraden. VGA-modus %d wordt niet herkend. Gebruik in plaats " -"daarvan 'set gfxpayload=BREEDTExHOOGTE[xDIEPTE]' vóór de 'linux'-opdracht.\n" - -#: grub-core/loader/i386/pc/chainloader.c:302 -msgid "[--force|--bpb] FILE" -msgstr "[--force|--bpb] BESTAND" - -#: grub-core/loader/i386/pc/freedos.c:148 util/setup.c:293 -#, c-format -msgid "the size of `%s' is too large" -msgstr "de grootte van '%s' is te groot" - -#: grub-core/loader/i386/pc/freedos.c:183 -msgid "Load FreeDOS kernel.sys." -msgstr "Het kernel.sys-bestand van FreeDOS laden." - -#: grub-core/loader/i386/pc/ntldr.c:155 -msgid "Load NTLDR or BootMGR." -msgstr "NTLDR of BootMGR laden." - -#. TRANSLATORS: it's about guessing which GRUB disk -#. is which Plan9 disk. If your language has no -#. word "mapping" you can use another word which -#. means that the GRUBDEVICE and PLAN9DEVICE are -#. actually the same device, just named differently -#. in OS and GRUB. -#: grub-core/loader/i386/pc/plan9.c:59 -msgid "Override guessed mapping of Plan9 devices." -msgstr "Een Plan9-apparaatovereenkomst aanpassen." - -#: grub-core/loader/i386/pc/plan9.c:60 -msgid "GRUBDEVICE=PLAN9DEVICE" -msgstr "GRUB-APPARAAT=PLAN9-APPARAAT" - -#: grub-core/loader/i386/pc/plan9.c:599 -msgid "KERNEL ARGS" -msgstr "KERNEL ARGUMENTEN" - -#: grub-core/loader/i386/pc/plan9.c:599 -msgid "Load Plan9 kernel." -msgstr "Een Plan9-kernel laden." - -#: grub-core/loader/i386/pc/pxechainloader.c:161 -msgid "Load a PXE image." -msgstr "Een PXE-image laden." - -#: grub-core/loader/i386/pc/truecrypt.c:226 -msgid "Load Truecrypt ISO." -msgstr "Een Truecrypt-ISO laden." - -#: grub-core/loader/i386/xen.c:781 grub-core/loader/i386/xen.c:865 -msgid "initrd already loaded" -msgstr "initrd is al geladen" - -#: grub-core/loader/i386/xen.c:968 -msgid "Load module." -msgstr "Module laden." - -#: grub-core/loader/i386/xnu.c:1003 -msgid "Press any key to launch xnu" -msgstr "Druk op een toets om XNU te starten" - -#. TRANSLATORS: `device-properties' -#. is a variable name, -#. not a program. -#: grub-core/loader/i386/xnu.c:1159 -msgid "Load `device-properties' dump." -msgstr "Een dump van 'device-properties' laden." - -#: grub-core/loader/ia64/efi/linux.c:124 -msgid "Could not locate FPSWA driver" -msgstr "Kan FPSWA-stuurprogramma niet vinden" - -#: grub-core/loader/ia64/efi/linux.c:132 -msgid "FPSWA protocol wasn't able to find the interface" -msgstr "Het FPSWA-protocol kan de interface niet vinden" - -#: grub-core/loader/ia64/efi/linux.c:580 -msgid "No FPSWA found" -msgstr "Geen FPSWA gevonden" - -#: grub-core/loader/ia64/efi/linux.c:582 -#, c-format -msgid "FPSWA revision: %x\n" -msgstr "FPSWA-revisie: %x\n" - -#: grub-core/loader/ia64/efi/linux.c:591 -msgid "FILE [ARGS...]" -msgstr "BESTAND [ARGUMENT...]" - -#: grub-core/loader/ia64/efi/linux.c:597 -msgid "Display FPSWA version." -msgstr "FPSWA-versie tonen" - -#: grub-core/loader/multiboot.c:248 -msgid "WARNING: no console will be available to OS" -msgstr "" -"WAARSCHUWING: er zal geen console beschikbaar zijn voor het beheersysteem" - -#: grub-core/loader/multiboot.c:450 -msgid "Load a multiboot 2 kernel." -msgstr "Een multiboot-2-kernel laden." - -#: grub-core/loader/multiboot.c:453 -msgid "Load a multiboot 2 module." -msgstr "Een multiboot-2-module laden." - -#: grub-core/loader/multiboot.c:456 -msgid "Load a multiboot kernel." -msgstr "Een multiboot-kernel laden." - -#: grub-core/loader/multiboot.c:459 -msgid "Load a multiboot module." -msgstr "Een multiboot-module laden." - -#: grub-core/loader/riscv/linux.c:30 grub-core/loader/riscv/linux.c:40 -#, fuzzy -msgid "Linux not supported yet" -msgstr "'interpret' wordt niet ondersteund" - -#: grub-core/loader/xnu.c:1416 grub-core/term/gfxterm_background.c:45 -msgid "Background image mode." -msgstr "Modus voor achtergrondafbeelding." - -#. TRANSLATORS: This refers to background image mode (stretched or -#. in left-top corner). Note that GRUB will accept only original -#. keywords stretch and normal, not the translated ones. -#. So please put both in translation -#. e.g. stretch(=%STRETCH%)|normal(=%NORMAL%). -#. The percents mark the translated version. Since many people -#. may not know the word stretch or normal I recommend -#. putting the translation either here or in "Background image mode." -#. string. -#: grub-core/loader/xnu.c:1416 grub-core/term/gfxterm_background.c:55 -msgid "stretch|normal" -msgstr "stretch (=uitgerekt) | normal (=normaal)" - -#: grub-core/loader/xnu.c:1482 -msgid "Load XNU image." -msgstr "Een XNU-image laden." - -#: grub-core/loader/xnu.c:1484 -msgid "Load 64-bit XNU image." -msgstr "Een 64-bit XNU-image laden." - -#: grub-core/loader/xnu.c:1486 -msgid "Load XNU extension package." -msgstr "Een XNU-extensiepakket laden." - -#: grub-core/loader/xnu.c:1488 -msgid "Load XNU extension." -msgstr "Een XNU-extensie laden." - -#. TRANSLATORS: OSBundleRequired is a -#. variable name in xnu extensions -#. manifests. It behaves mostly like -#. GNU/Linux runlevels. -#. -#: grub-core/loader/xnu.c:1495 -msgid "DIRECTORY [OSBundleRequired]" -msgstr "MAP [OSBundleRequired]" - -#. TRANSLATORS: There are many extensions -#. in extension directory. -#: grub-core/loader/xnu.c:1498 -msgid "Load XNU extension directory." -msgstr "Een XNU-extensiemap laden." - -#. TRANSLATORS: ramdisk here isn't identifier. It can be translated. -#: grub-core/loader/xnu.c:1501 -msgid "Load XNU ramdisk. It will be available in OS as md0." -msgstr "Een XNU-RAM-schijf laden. Het zal beschikbaar zijn als 'md0'." - -#: grub-core/loader/xnu.c:1505 -msgid "Load a splash image for XNU." -msgstr "Een XNU-splash-afbeelding laden." - -#: grub-core/loader/xnu.c:1510 -msgid "Load an image of hibernated XNU." -msgstr "Een image van een slapende XNU laden." - -#: grub-core/mmap/mmap.c:538 -msgid "ADDR1,MASK1[,ADDR2,MASK2[,...]]" -msgstr "ADRES1,MASKER1[,ADRES2,MASKER2[,...]]" - -#: grub-core/mmap/mmap.c:539 -msgid "Declare memory regions as faulty (badram)." -msgstr "Geheugengebieden als slecht ('badram') declareren." - -#: grub-core/mmap/mmap.c:541 -msgid "FROM[K|M|G] TO[K|M|G]" -msgstr "VAN[K|M|G] TOT[K|M|G]" - -#: grub-core/mmap/mmap.c:542 -msgid "Remove any memory regions in specified range." -msgstr "Geheugengebieden in deze bereiken verwijderen." - -#: grub-core/net/bootp.c:653 -msgid "four arguments expected" -msgstr "vier argumenten werden verwacht" - -#: grub-core/net/bootp.c:661 grub-core/net/net.c:1155 -#, c-format -msgid "unrecognised network interface `%s'" -msgstr "onbekende netwerkinterface '%s'" - -#: grub-core/net/bootp.c:664 -msgid "no DHCP info found" -msgstr "geen DHCP-info gevonden" - -#: grub-core/net/bootp.c:674 -msgid "no DHCP options found" -msgstr "geen DHCP-opties gevonden" - -#: grub-core/net/bootp.c:682 -#, fuzzy -msgid "invalid DHCP option code" -msgstr "geen DHCP-opties gevonden" - -#: grub-core/net/bootp.c:686 -#, fuzzy, c-format -msgid "no DHCP option %u found" -msgstr "DHCP-optie %d is niet gevonden" - -#: grub-core/net/bootp.c:743 -#, c-format -msgid "unrecognised DHCP option format specification `%s'" -msgstr "onbekende DHCP-optie-opmaakspecificatie '%s'" - -#: grub-core/net/bootp.c:767 -msgid "no network card found" -msgstr "geen netwerkkaart gevonden" - -#: grub-core/net/bootp.c:859 grub-core/net/net.c:389 -#, c-format -msgid "couldn't autoconfigure %s" -msgstr "kan %s niet automatisch configureren" - -#: grub-core/net/bootp.c:873 grub-core/net/bootp.c:876 -msgid "[CARD]" -msgstr "[KAART]" - -#: grub-core/net/bootp.c:874 -msgid "perform a bootp autoconfiguration" -msgstr "een 'bootp'-autoconfiguratie uitvoeren" - -#: grub-core/net/bootp.c:877 -#, fuzzy -msgid "perform a DHCP autoconfiguration" -msgstr "een 'bootp'-autoconfiguratie uitvoeren" - -#: grub-core/net/bootp.c:879 -msgid "VAR INTERFACE NUMBER DESCRIPTION" -msgstr "VAR INTERFACE NUMMER OMSCHRIJVING" - -#: grub-core/net/bootp.c:880 -msgid "" -"retrieve DHCP option and save it into VAR. If VAR is - then print the value." -msgstr "" -"een DHCP-optie ophalen en opslaan in VAR; als VAR '-' is, dan de waarde tonen" - -#: grub-core/net/dns.c:459 -msgid "no DNS servers configured" -msgstr "geen DNS-servers geconfigureerd" - -#: grub-core/net/dns.c:522 -msgid "domain name component is too long" -msgstr "component van domeinnaam is te lang" - -#: grub-core/net/dns.c:618 grub-core/net/dns.c:666 -msgid "no DNS record found" -msgstr "geen DNS-record gevonden" - -#: grub-core/net/dns.c:626 -msgid "no DNS reply received" -msgstr "geen DNS-antwoord ontvangen" - -#: grub-core/net/dns.c:682 -msgid "only ipv4" -msgstr "alleen IPv4" - -#: grub-core/net/dns.c:686 -msgid "only ipv6" -msgstr "alleen IPv6" - -#: grub-core/net/dns.c:690 -msgid "prefer ipv4" -msgstr "IPv4 de voorkeur geven" - -#: grub-core/net/dns.c:694 -msgid "prefer ipv6" -msgstr "IPv6 de voorkeur geven" - -#: grub-core/net/dns.c:759 -msgid "ADDRESS DNSSERVER" -msgstr "ADRES DNS-SERVER" - -# XXX add period? -#: grub-core/net/dns.c:760 -msgid "Perform a DNS lookup" -msgstr "Een DNS-lookup uitvoeren." - -#: grub-core/net/dns.c:762 grub-core/net/dns.c:765 -msgid "DNSSERVER" -msgstr "DNS-SERVER" - -#: grub-core/net/dns.c:763 -msgid "Add a DNS server" -msgstr "Een DNS-server toevoegen" - -#: grub-core/net/dns.c:766 -msgid "Remove a DNS server" -msgstr "Een DNS-server verwijderen" - -# XXX add period? -#: grub-core/net/dns.c:768 -msgid "List DNS servers" -msgstr "DNS-servers tonen." - -#: grub-core/net/drivers/efi/efinet.c:49 grub-core/net/drivers/efi/efinet.c:65 -#: grub-core/net/drivers/efi/efinet.c:77 grub-core/net/drivers/emu/emunet.c:62 -#: grub-core/net/drivers/i386/pc/pxe.c:273 -#: grub-core/net/drivers/ieee1275/ofnet.c:75 -#: grub-core/net/drivers/uboot/ubootnet.c:62 -msgid "couldn't send network packet" -msgstr "kan netwerkpakketje niet verzenden" - -#: grub-core/net/drivers/ieee1275/ofnet.c:326 -#: grub-core/net/drivers/ieee1275/ofnet.c:359 -msgid "interpret is not supported" -msgstr "'interpret' wordt niet ondersteund" - -#: grub-core/net/drivers/ieee1275/ofnet.c:336 -msgid "alloc-mem failed" -msgstr "onvoldoende geheugen beschikbaar" - -#: grub-core/net/drivers/ieee1275/ofnet.c:370 -msgid "free-mem failed" -msgstr "functie 'free-mem()' is mislukt" - -#: grub-core/net/http.c:105 -msgid "unsupported HTTP response" -msgstr "niet-ondersteund HTTP-antwoord" - -#. TRANSLATORS: GRUB HTTP code is pretty young. So even perfectly -#. valid answers like 403 will trigger this very generic message. -#: grub-core/net/http.c:126 -#, c-format -msgid "unsupported HTTP error %d: %s" -msgstr "niet-ondersteunde HTTP-fout %d: %s" - -#: grub-core/net/http.c:429 grub-core/net/tftp.c:420 -#, c-format -msgid "time out opening `%s'" -msgstr "tijdslimiet is overschreden tijdens openen van '%s'" - -#: grub-core/net/net.c:179 -msgid "timeout: could not resolve hardware address" -msgstr "tijdslimiet is overschreden: kan hardware-adres niet herleiden" - -#: grub-core/net/net.c:548 -#, c-format -msgid "unresolvable address %s" -msgstr "niet-herleidbaar adres %s" - -#: grub-core/net/net.c:594 -#, c-format -msgid "unrecognised network address `%s'" -msgstr "onbekend netwerkadres '%s'" - -#: grub-core/net/net.c:661 -msgid "destination unreachable" -msgstr "doel is niet bereikbaar" - -#. TRANSLATORS: route loop is a condition when e.g. -#. to contact server A you need to go through B -#. and to contact B you need to go through A. -#: grub-core/net/net.c:684 -msgid "route loop detected" -msgstr "lus in de routering gedetecteerd" - -#: grub-core/net/net.c:700 -msgid "address not found" -msgstr "adres is niet gevonden" - -#: grub-core/net/net.c:704 -msgid "you can't delete this address" -msgstr "kan dit adres niet verwijderen" - -#: grub-core/net/net.c:776 grub-core/net/net.c:792 -#, c-format -msgid "Unsupported hw address type %d\n" -msgstr "Niet-ondersteund hardware-adrestype %d\n" - -#: grub-core/net/net.c:813 -#, c-format -msgid "Unsupported address type %d\n" -msgstr "Niet-ondersteund adrestype %d\n" - -#: grub-core/net/net.c:1017 grub-core/net/net.c:1131 -msgid "three arguments expected" -msgstr "drie argumenten werden verwacht" - -#: grub-core/net/net.c:1023 -msgid "card not found" -msgstr "kaart is niet gevonden" - -#. TRANSLATORS: it refers to the network address. -#: grub-core/net/net.c:1167 -msgid "temporary" -msgstr "tijdelijk" - -#: grub-core/net/net.c:1190 -#, c-format -msgid "Unknown address type %d\n" -msgstr "Onbekend adrestype %d\n" - -#: grub-core/net/net.c:1298 -msgid "no server is specified" -msgstr "geen server opgegeven" - -#: grub-core/net/net.c:1637 -#, c-format -msgid "timeout reading `%s'" -msgstr "tijdslimiet is overschreden tijdens lezen van '%s'" - -#. TRANSLATORS: HWADDRESS stands for -#. "hardware address". -#: grub-core/net/net.c:1762 -msgid "SHORTNAME CARD ADDRESS [HWADDRESS]" -msgstr "KORTE-NAAM KAART ADRES [HARDWARE-ADRES]" - -#: grub-core/net/net.c:1763 -msgid "Add a network address." -msgstr "Een netwerkadres toevoegen." - -#: grub-core/net/net.c:1766 -msgid "[CARD [HWADDRESS]]" -msgstr "[KAART [HARDWARE-ADRES]]" - -#: grub-core/net/net.c:1767 -msgid "Perform an IPV6 autoconfiguration" -msgstr "Een IPv6-autoconfiguratie uitvoeren." - -#: grub-core/net/net.c:1770 grub-core/net/net.c:1777 -msgid "SHORTNAME" -msgstr "KORTE-NAAM" - -#: grub-core/net/net.c:1771 -msgid "Delete a network address." -msgstr "Een netwerkadres verwijderen." - -#. TRANSLATORS: "gw" is a keyword. -#: grub-core/net/net.c:1774 -msgid "SHORTNAME NET [INTERFACE| gw GATEWAY]" -msgstr "KORTE-NAAM NETWERK [INTERFACE | gw GATEWAY]" - -#: grub-core/net/net.c:1775 -msgid "Add a network route." -msgstr "Een netwerkroute toevoegen." - -#: grub-core/net/net.c:1778 -msgid "Delete a network route." -msgstr "Een netwerkroute verwijderen." - -#: grub-core/net/net.c:1780 -msgid "list network routes" -msgstr "Netwerkroutes tonen" - -#: grub-core/net/net.c:1782 -msgid "list network cards" -msgstr "Netwerkkaarten tonen" - -#: grub-core/net/net.c:1784 -msgid "list network addresses" -msgstr "Netwerkadressen tonen" - -#: grub-core/net/tcp.c:681 -msgid "connection refused" -msgstr "verbinding is geweigerd" - -#: grub-core/net/tcp.c:684 -msgid "connection timeout" -msgstr "verbindingstijdslimiet is overschreden" - -#: grub-core/normal/auth.c:220 -msgid "Enter username: " -msgstr "Voer gebruikersnaam in: " - -#: grub-core/normal/auth.c:269 -msgid "[USERLIST]" -msgstr "[GEBRUIKERSLIJST]" - -#: grub-core/normal/auth.c:270 -msgid "Check whether user is in USERLIST." -msgstr "Controleren of gebruiker in GEBRUIKERSLIJST staat." - -#: grub-core/normal/cmdline.c:174 grub-core/normal/menu_entry.c:1068 -msgid "Possible commands are:" -msgstr "Mogelijke opdrachten zijn:" - -#: grub-core/normal/cmdline.c:177 grub-core/normal/menu_entry.c:1072 -msgid "Possible devices are:" -msgstr "Mogelijke apparaten zijn:" - -#: grub-core/normal/cmdline.c:180 grub-core/normal/menu_entry.c:1076 -msgid "Possible files are:" -msgstr "Mogelijke bestanden zijn:" - -#: grub-core/normal/cmdline.c:183 grub-core/normal/menu_entry.c:1080 -msgid "Possible partitions are:" -msgstr "Mogelijke partities zijn:" - -#: grub-core/normal/cmdline.c:186 grub-core/normal/menu_entry.c:1084 -msgid "Possible arguments are:" -msgstr "Mogelijke argumenten zijn:" - -#. TRANSLATORS: this message is used if none of above matches. -#. This shouldn't happen but please use the general term for -#. "thing" or "object". -#: grub-core/normal/cmdline.c:192 grub-core/normal/menu_entry.c:1088 -msgid "Possible things are:" -msgstr "Mogelijke dingen zijn:" - -#: grub-core/normal/color.c:81 -#, c-format -msgid "Warning: syntax error (missing slash) in `%s'\n" -msgstr "Waarschuwing: syntaxfout (ontbrekende '/') in '%s'\n" - -#: grub-core/normal/color.c:90 -#, c-format -msgid "Warning: invalid foreground color `%s'\n" -msgstr "Waarschuwing: ongeldige voorgrondkleur '%s'\n" - -#: grub-core/normal/color.c:96 -#, c-format -msgid "Warning: invalid background color `%s'\n" -msgstr "Waarschuwing: ongeldige achtergrondkleur '%s'\n" - -#: grub-core/normal/context.c:206 -msgid "ENVVAR [ENVVAR] ..." -msgstr "OMGEVINGSVARIABELE [OMGEVINGSVARIABELE ...]" - -#: grub-core/normal/context.c:207 -msgid "Export variables." -msgstr "Variabelen exporteren." - -#: grub-core/normal/datetime.c:25 -msgid "Sunday" -msgstr "zondag" - -#: grub-core/normal/datetime.c:26 -msgid "Monday" -msgstr "maandag" - -#: grub-core/normal/datetime.c:27 -msgid "Tuesday" -msgstr "dinsdag" - -#: grub-core/normal/datetime.c:28 -msgid "Wednesday" -msgstr "woensdag" - -#: grub-core/normal/datetime.c:29 -msgid "Thursday" -msgstr "donderdag" - -#: grub-core/normal/datetime.c:30 -msgid "Friday" -msgstr "vrijdag" - -#: grub-core/normal/datetime.c:31 -msgid "Saturday" -msgstr "zaterdag" - -#: grub-core/normal/dyncmd.c:187 -msgid "module isn't loaded" -msgstr "module is niet geladen" - -#: grub-core/normal/main.c:211 -#, c-format -msgid "GNU GRUB version %s" -msgstr "GNU GRUB versie %s" - -#: grub-core/normal/main.c:360 -msgid "ESC at any time exits." -msgstr "ESC annuleert op elk moment." - -#: grub-core/normal/main.c:363 -#, c-format -msgid "" -"Minimal BASH-like line editing is supported. For the first word, TAB lists " -"possible command completions. Anywhere else TAB lists possible device or " -"file completions. %s" -msgstr "" -"Minimale Bash-achtige regelbewerking is mogelijk. Voor het eerste woord " -"toont TAB de mogelijke opdrachten. Elders toont TAB de mogelijke apparaten " -"of bestanden. %s" - -#. TRANSLATORS: it's command line prompt. -#: grub-core/normal/main.c:395 -msgid ">" -msgstr ">" - -#. TRANSLATORS: it's command line prompt. -#: grub-core/normal/main.c:398 -msgid "grub>" -msgstr "grub>" - -#: grub-core/normal/main.c:518 -msgid "Clear the screen." -msgstr "Scherm wissen." - -#: grub-core/normal/main.c:527 -msgid "Enter normal mode." -msgstr "Op normale modus overgaan." - -#: grub-core/normal/main.c:529 -msgid "Exit from normal mode." -msgstr "Normale modus verlaten." - -#: grub-core/normal/menu.c:66 grub-core/normal/menu_entry.c:1449 -msgid "Press any key to continue..." -msgstr "Druk op een toets om verder te gaan..." - -#: grub-core/normal/menu.c:815 -#, c-format -msgid "Booting `%s'" -msgstr "Opstarten van '%s'" - -#: grub-core/normal/menu.c:827 -#, c-format -msgid "Falling back to `%s'" -msgstr "Terugvallend op '%s'" - -#: grub-core/normal/menu.c:843 -msgid "Failed to boot both default and fallback entries.\n" -msgstr "" -"Het opstarten van zowel het standaard- als het terugvalitem is mislukt.\n" - -#: grub-core/normal/menu_entry.c:1171 -msgid "Booting a command list" -msgstr "Opstarten van een opdrachtenlijst" - -#: grub-core/normal/menu_text.c:160 -msgid "" -"Minimum Emacs-like screen editing is supported. TAB lists completions. Press " -"Ctrl-x or F10 to boot, Ctrl-c or F2 for a command-line or ESC to discard " -"edits and return to the GRUB menu." -msgstr "" -"Minimale Emacs-achtige tekstbewerking is mogelijk. TAB toont de mogelijke " -"completeringen. Druk op Ctrl-x of F10 om op te starten, Ctrl-c of F2 voor " -"een opdrachtregel, of ESC voor het vorige menu." - -#: grub-core/normal/menu_text.c:170 -#, c-format -msgid "Use the %C and %C keys to select which entry is highlighted." -msgstr "Gebruik de %C- en %C-toetsen om een item te selecteren." - -#. TRANSLATORS: that's the list of binary unit prefixes. -#: grub-core/normal/misc.c:38 -msgid "B" -msgstr "B" - -#: grub-core/normal/misc.c:38 -msgid "KiB" -msgstr "KiB" - -#: grub-core/normal/misc.c:38 -msgid "MiB" -msgstr "MiB" - -#: grub-core/normal/misc.c:38 -msgid "GiB" -msgstr "GiB" - -#: grub-core/normal/misc.c:38 -msgid "TiB" -msgstr "TiB" - -#: grub-core/normal/misc.c:38 -msgid "PiB" -msgstr "PiB" - -#. TRANSLATORS: that's the list of binary unit prefixes. -#: grub-core/normal/misc.c:40 -msgid "K" -msgstr "K" - -#: grub-core/normal/misc.c:40 -msgid "M" -msgstr "M" - -#: grub-core/normal/misc.c:40 -msgid "G" -msgstr "G" - -#: grub-core/normal/misc.c:40 -msgid "T" -msgstr "T" - -#: grub-core/normal/misc.c:40 -msgid "P" -msgstr "P" - -#. TRANSLATORS: that's the list of binary unit prefixes. -#: grub-core/normal/misc.c:42 -msgid "B/s" -msgstr "B/s" - -#: grub-core/normal/misc.c:42 -msgid "KiB/s" -msgstr "KiB/s" - -#: grub-core/normal/misc.c:42 -msgid "MiB/s" -msgstr "MiB/s" - -#: grub-core/normal/misc.c:42 -msgid "GiB/s" -msgstr "GiB/s" - -#: grub-core/normal/misc.c:42 -msgid "TiB/s" -msgstr "TiB/s" - -#: grub-core/normal/misc.c:42 -msgid "PiB/s" -msgstr "PiB/s" - -#: grub-core/normal/misc.c:96 -#, c-format -msgid "Partition %s:" -msgstr "Partitie %s:" - -#: grub-core/normal/misc.c:101 -#, c-format -msgid "Device %s:" -msgstr "Apparaat %s:" - -#: grub-core/normal/misc.c:107 -msgid "Filesystem cannot be accessed" -msgstr "Toegang tot bestandssysteem is onmogelijk." - -#: grub-core/normal/misc.c:121 -#, c-format -msgid "Filesystem type %s" -msgstr "Bestandssysteemsoort %s" - -#: grub-core/normal/misc.c:131 -#, c-format -msgid "- Label `%s'" -msgstr "- Label \"%s\"" - -#. TRANSLATORS: Arguments are year, month, day, hour, minute, -#. second, day of the week (translated). -#: grub-core/normal/misc.c:148 -#, c-format -msgid "- Last modification time %d-%02d-%02d %02d:%02d:%02d %s" -msgstr "- Laatst gewijzigd op %d-%02d-%02d %02d:%02d:%02d %s" - -#: grub-core/normal/misc.c:171 -msgid "No known filesystem detected" -msgstr "Er is geen bekend bestandssysteem gedetecteerd" - -#: grub-core/normal/misc.c:174 -#, c-format -msgid " - Partition start at %llu%sKiB" -msgstr " - Partitie begint op %llu%sKiB" - -#: grub-core/normal/misc.c:178 -#, c-format -msgid " - Sector size %uB" -msgstr " - Sectorgrootte is %uB" - -#: grub-core/normal/misc.c:180 -msgid " - Total size unknown" -msgstr " - Totale grootte is onbekend" - -#: grub-core/normal/misc.c:182 -#, c-format -msgid " - Total size %llu%sKiB" -msgstr " - Totale grootte is %llu%sKiB" - -#. TRANSLATORS: Replace dot with appropriate decimal separator for -#. your language. -#: grub-core/normal/misc.c:186 -msgid ".5" -msgstr ",5" - -#. TRANSLATORS: This has to fit on one line. It's ok to include few -#. words but don't write poems. -#: grub-core/normal/term.c:82 -msgid "--MORE--" -msgstr "--Meer--" - -#: grub-core/osdep/aros/config.c:92 grub-core/osdep/unix/config.c:137 -#: grub-core/osdep/windows/config.c:55 -#, c-format -msgid "cannot open configuration file `%s': %s" -msgstr "kan configuratiebestand '%s' niet openen: %s" - -#: grub-core/osdep/basic/compress.c:8 grub-core/osdep/basic/compress.c:14 -#: grub-core/osdep/basic/compress.c:20 -msgid "no compression is available for your platform" -msgstr "er is geen compressie beschikbaar voor uw platform" - -#: grub-core/osdep/basic/no_platform.c:30 -#: grub-core/osdep/windows/platform.c:418 -msgid "no IEEE1275 routines are available for your platform" -msgstr "er zijn geen IEEE1275-routines beschikbaar voor uw platform" - -#: grub-core/osdep/basic/no_platform.c:38 -msgid "no EFI routines are available for your platform" -msgstr "er zijn geen EFI-routines beschikbaar voor uw platform" - -#: grub-core/osdep/basic/no_platform.c:45 -#: grub-core/osdep/windows/platform.c:425 -msgid "no SGI routines are available for your platform" -msgstr "er zijn geen SGI-routines beschikbaar voor uw platform" - -#. TRANSLATORS: The OS itself may very well have a random -#. number generator but GRUB doesn't know how to access it. -#: grub-core/osdep/basic/random.c:42 -msgid "no random number generator is available for your OS" -msgstr "er is geen willekeuriggetalgenerator beschikbaar voor uw beheersysteem" - -#: grub-core/osdep/devmapper/getroot.c:81 -msgid "Failed to create `device-mapper' tree" -msgstr "Aanmaken van apparaattoewijzingsboom is mislukt" - -#: grub-core/osdep/devmapper/getroot.c:197 -#: grub-core/osdep/freebsd/getroot.c:202 -#, c-format -msgid "can't mount encrypted volume `%s': %s" -msgstr "kan versleuteld volumen '%s' niet aankoppelen: %s" - -#. TRANSLATORS: geom is the name of (k)FreeBSD device framework. -#. Usually left untranslated. -#. -#: grub-core/osdep/freebsd/getroot.c:82 grub-core/osdep/freebsd/getroot.c:164 -#: grub-core/osdep/freebsd/getroot.c:258 grub-core/osdep/freebsd/getroot.c:316 -msgid "couldn't open geom" -msgstr "kan GEOM niet openen" - -#: grub-core/osdep/freebsd/getroot.c:182 grub-core/osdep/freebsd/getroot.c:277 -msgid "couldn't find geli consumer" -msgstr "kan GELI-consument niet vinden" - -#: grub-core/osdep/freebsd/getroot.c:282 -msgid "couldn't retrieve geli UUID" -msgstr "kan GELI-UUID niet verkrijgen" - -#. TRANSLATORS: geom is the name of (k)FreeBSD device framework. -#. Usually left untranslated. "part" is the identifier of one of its -#. classes. -#: grub-core/osdep/freebsd/getroot.c:325 -msgid "couldn't find geom `part' class" -msgstr "kan GEOM 'part'-klasse niet vinden" - -#: grub-core/osdep/freebsd/hostdisk.c:72 grub-core/osdep/linux/hostdisk.c:93 -msgid "unaligned device size" -msgstr "onuitgelijnde apparaatgrootte" - -#: grub-core/osdep/generic/blocklist.c:56 -#, c-format -msgid "attempting to read the core image `%s' from GRUB" -msgstr "poging om de core-image '%s' uit GRUB te lezen" - -#: grub-core/osdep/generic/blocklist.c:57 -#, c-format -msgid "attempting to read the core image `%s' from GRUB again" -msgstr "poging om de core-image '%s' uit GRUB opnieuw te lezen" - -#: grub-core/osdep/generic/blocklist.c:115 -#, c-format -msgid "cannot read `%s' correctly" -msgstr "kan '%s' niet foutloos lezen" - -#: grub-core/osdep/generic/blocklist.c:126 -msgid "failed to read the sectors of the core image" -msgstr "lezen van de sectoren van de core-image is mislukt" - -#. TRANSLATORS: On GNU/Hurd, a "translator" is similar to a filesystem -#. mount, but handled by a userland daemon, whose invocation command line -#. is being fetched here. First %s is the file being looked at (for which -#. we are fetching the "translator" command line), second %s is the error -#. message. -#. -#: grub-core/osdep/hurd/getroot.c:79 -#, c-format -msgid "cannot get translator command line for path `%s': %s" -msgstr "kan de translator-opdrachtregel voor pad '%s' niet verkrijgen: %s" - -#: grub-core/osdep/hurd/getroot.c:82 -#, c-format -msgid "translator command line is empty for path `%s'" -msgstr "de translator-opdrachtregel is leeg voor pad '%s'" - -#. TRANSLATORS: we expect to get something like -#. /hurd/foobar --option1 --option2=baz /dev/something -#. -#: grub-core/osdep/hurd/getroot.c:98 -#, c-format -msgid "" -"translator `%s' for path `%s' has several non-option words, at least `%s' " -"and `%s'" -msgstr "" -"translator '%s' voor pad '%s' bevat meerdere argumenten die geen opties " -"zijn, in elk geval '%s' en '%s'" - -#. TRANSLATORS: we expect to get something like -#. /hurd/foobar --option1 --option2=baz /dev/something -#. -#: grub-core/osdep/hurd/getroot.c:109 -#, c-format -msgid "" -"translator `%s' for path `%s' is given only options, cannot find device part" -msgstr "" -"translator '%s' voor pad '%s' bevat alleen opties, geen apparaatcomponent" - -#: grub-core/osdep/hurd/hostdisk.c:73 -#, c-format -msgid "Storage information for `%s' does not include type" -msgstr "Opslaginformatie voor '%s' bevat niet het type" - -#: grub-core/osdep/hurd/hostdisk.c:75 -#, c-format -msgid "`%s' is not a local disk" -msgstr "'%s' is geen lokale schijf" - -#: grub-core/osdep/hurd/hostdisk.c:78 -#, c-format -msgid "" -"Storage information for `%s' indicates neither a plain partition nor a plain " -"disk" -msgstr "" -"Opslaginformatie voor '%s' geeft noch een gewone partitie noch een gewone " -"schijf aan" - -#: grub-core/osdep/linux/blocklist.c:81 grub-core/osdep/linux/blocklist.c:96 -#: grub-core/osdep/linux/blocklist.c:122 -#, c-format -msgid "can't retrieve blocklists: %s" -msgstr "kan bloklijsten niet verkrijgen: %s" - -#: grub-core/osdep/linux/blocklist.c:84 -msgid "blocksize is not divisible by 512" -msgstr "blokgrootte is niet deelbaar door 512" - -#: grub-core/osdep/linux/blocklist.c:86 -msgid "invalid zero blocksize" -msgstr "ongeldige blokgrootte nul" - -#: grub-core/osdep/linux/blocklist.c:90 util/setup.c:744 -msgid "can't retrieve blocklists" -msgstr "kan bloklijsten niet verkrijgen" - -#: grub-core/osdep/linux/getroot.c:154 -#, c-format -msgid "ioctl RAID_VERSION error: %s" -msgstr "ioctl(RAID_VERSION)-fout: %s" - -#: grub-core/osdep/linux/getroot.c:160 grub-core/osdep/linux/getroot.c:164 -#, c-format -msgid "unsupported RAID version: %d.%d" -msgstr "niet-ondersteunde RAID-versie: %d.%d" - -#: grub-core/osdep/linux/getroot.c:169 -#, c-format -msgid "ioctl GET_ARRAY_INFO error: %s" -msgstr "ioctl(GET_ARRAY_INFO)-fout: %s" - -#: grub-core/osdep/linux/getroot.c:178 -#, c-format -msgid "ioctl GET_DISK_INFO error: %s" -msgstr "ioctl(GET_DISK_INFO)-fout: %s" - -#: grub-core/osdep/linux/getroot.c:608 grub-core/osdep/linux/getroot.c:678 -#: grub-core/osdep/linux/hostdisk.c:126 grub-core/osdep/unix/getroot.c:253 -#: grub-core/osdep/unix/getroot.c:642 grub-core/osdep/unix/platform.c:92 -#: grub-core/osdep/unix/platform.c:100 -#, c-format -msgid "Unable to open stream from %s: %s" -msgstr "Kan gegevensstroom uit %s niet openen: %s" - -#: grub-core/osdep/linux/getroot.c:1033 -#, c-format -msgid "unknown kind of RAID device `%s'" -msgstr "onbekend soort RAID-apparaat '%s'" - -#: grub-core/osdep/linux/ofpath.c:181 -#, c-format -msgid "`obppath' not found in parent dirs of `%s', no IEEE1275 name discovery" -msgstr "" -"'obppath' is niet gevonden in de omvattende mappen van '%s'; geen IEEE1275-" -"naamsherleiding" - -#: grub-core/osdep/linux/ofpath.c:222 grub-core/osdep/unix/getroot.c:505 -#: grub-core/osdep/unix/getroot.c:529 grub-core/osdep/unix/relpath.c:49 -#: util/grub-install.c:984 util/grub-install.c:1331 util/grub-probe.c:323 -#, c-format -msgid "failed to get canonical path of `%s'" -msgstr "kan canoniek pad van '%s' niet achterhalen" - -#: grub-core/osdep/linux/ofpath.c:740 -#, c-format -msgid "unknown device type %s" -msgstr "onbekend apparaattype %s" - -#: grub-core/osdep/linux/ofpath.c:758 util/ieee1275/grub-ofpathname.c:39 -#, c-format -msgid "Usage: %s DEVICE\n" -msgstr "Gebruik: %s APPARAAT\n" - -#: grub-core/osdep/unix/exec.c:86 grub-core/osdep/unix/exec.c:172 -#: grub-core/osdep/unix/exec.c:217 -#, c-format -msgid "Unable to fork: %s" -msgstr "Kan geen nieuw proces starten: %s" - -#: grub-core/osdep/unix/exec.c:166 grub-core/osdep/unix/exec.c:211 -#, c-format -msgid "Unable to create pipe: %s" -msgstr "Kan geen pijp aanmaken: %s" - -#: grub-core/osdep/unix/getroot.c:370 -#, fuzzy -msgid "cannot save the original directory" -msgstr "kan de originele map niet herstellen" - -#: grub-core/osdep/unix/getroot.c:423 grub-core/osdep/unix/getroot.c:480 -#: grub-core/osdep/unix/getroot.c:489 -msgid "cannot restore the original directory" -msgstr "kan de originele map niet herstellen" - -#. TRANSLATORS: "stat" comes from the name of POSIX function. -#: grub-core/osdep/unix/getroot.c:551 grub-core/osdep/unix/hostdisk.c:61 -#: grub-core/osdep/unix/relpath.c:73 grub-core/osdep/unix/relpath.c:97 -#: util/getroot.c:160 util/getroot.c:162 util/grub-install.c:774 -#: util/grub-macbless.c:70 -#, c-format -msgid "cannot stat `%s': %s" -msgstr "kan status van '%s' niet opvragen: %s" - -#: grub-core/osdep/unix/hostdisk.c:293 -#, c-format -msgid "cannot make temporary file: %s" -msgstr "kan geen tijdelijk bestand aanmaken: %s" - -#: grub-core/osdep/unix/hostdisk.c:311 -#, c-format -msgid "cannot make temporary directory: %s" -msgstr "kan geen tijdelijke map aanmaken: %s" - -#: grub-core/osdep/unix/platform.c:77 -#, c-format -msgid "" -"couldn't find IEEE1275 device path for %s.\n" -"You will have to set `boot-device' variable manually" -msgstr "" -"Kan geen IEEE1275-apparatenboompad vinden voor %s.\n" -"U zult de variabele 'boot-device' met de hand moeten instellen." - -#. TRANSLATORS: This message is shown when required executable `%s' -#. isn't found. -#: grub-core/osdep/unix/platform.c:149 grub-core/osdep/unix/platform.c:189 -#, c-format -msgid "%s: not found" -msgstr "%s: niet gevonden" - -#: grub-core/osdep/unix/platform.c:225 -#, c-format -msgid "" -"`nvsetenv' failed. \n" -"You will have to set `boot-device' variable manually. At the IEEE1275 " -"prompt, type:\n" -" %s\n" -msgstr "" -"Functie 'nvsetenv()' is mislukt.\n" -"U zult de variabele 'boot-device' met de hand moeten instellen.\n" -"Typ het volgende na de IEEE1275-prompt:\n" -" %s\n" - -#: grub-core/osdep/unix/platform.c:240 -msgid "You will have to set `SystemPartition' and `OSLoader' manually." -msgstr "U zult 'SystemPartition' en 'OSLoader' met de hand moeten instellen." - -#. TRANSLATORS: canonical pathname is the -#. complete one e.g. /etc/fstab. It has -#. to contain `/' normally, if it doesn't -#. we're in trouble and throw this error. -#: grub-core/osdep/unix/relpath.c:90 -msgid "no `/' in canonical filename" -msgstr "geen '/' in canonieke bestandsnaam" - -#: grub-core/osdep/windows/hostdisk.c:151 -msgid "cygwin_conv_path() failed" -msgstr "cygwin_conv_path() is mislukt" - -#: grub-core/osdep/windows/hostdisk.c:501 util/grub-install.c:570 -msgid "couldn't retrieve random data" -msgstr "kan geen willekeurige gegevens verkrijgen" - -#: grub-core/osdep/windows/platform.c:97 -msgid "Insufficient privileges to access firmware, assuming BIOS" -msgstr "onvoldoende rechten voor toegang tot firmware; BIOS wordt aangenomen" - -#: grub-core/osdep/windows/platform.c:225 -msgid "no EFI routines are available when running in BIOS mode" -msgstr "EFI-routines zijn niet beschikbaar in BIOS-modus" - -#: grub-core/osdep/windows/platform.c:240 -msgid "unexpected EFI error" -msgstr "onverwachte EFI-fout" - -#: grub-core/osdep/windows/platform.c:315 -msgid "Couldn't find a free BootNNNN slot" -msgstr "Kan geen vrije BootNNNN-plek vinden" - -#: grub-core/partmap/gpt.c:191 -msgid "" -"this GPT partition label contains no BIOS Boot Partition; embedding won't be " -"possible" -msgstr "" -"dit GPT-partitielabel bevat geen BIOS-opstartpartitie; inbedding is niet " -"mogelijk" - -#: grub-core/partmap/gpt.c:196 -msgid "your BIOS Boot Partition is too small; embedding won't be possible" -msgstr "uw BIOS-opstartpartitie is te klein; inbedding is niet mogelijk" - -#. TRANSLATORS: MBR gap and boot track is the same thing and is the space -#. between MBR and first partitition. If your language translates well only -#. "boot track", you can just use it everywhere. Next two messages are about -#. RAID controllers/software bugs which GRUB has to live with. Please spread -#. the message that these are bugs in other software and not merely -#. suboptimal behaviour. -#: grub-core/partmap/msdos.c:51 -#, c-format -msgid "" -"Sector %llu is already in use by raid controller `%s'; avoiding it. Please " -"ask the manufacturer not to store data in MBR gap" -msgstr "" -"Sector %llu wordt reeds gebruikt door de RAID-controller '%s'; de sector " -"wordt ontweken. Vraag de fabrikant om geen gegevens in het MBR-gat op te " -"slaan." - -#: grub-core/partmap/msdos.c:54 -#, c-format -msgid "" -"Sector %llu is already in use by the program `%s'; avoiding it. This " -"software may cause boot or other problems in future. Please ask its authors " -"not to store data in the boot track" -msgstr "" -"Sector %llu wordt reeds gebruikt door het programma '%s'; de sector wordt " -"ontweken. Deze software kan in de toekomst (opstart-)problemen " -"veroorzaken. Vraag de auteurs om geen gegevens in het opstartspoor op te " -"slaan." - -#: grub-core/partmap/msdos.c:384 -msgid "" -"other software is using the embedding area, and there is not enough room for " -"core.img. Such software is often trying to store data in a way that avoids " -"detection. We recommend you investigate" -msgstr "" -"Andere software gebruikt het inbeddingsgebied en er is niet genoeg ruimte " -"voor 'core.img'. Zulke software probeert meestal om gegevens op te slaan op " -"een manier die niet gedetecteerd wordt. We raden u aan om dit nader te " -"onderzoeken." - -#: grub-core/partmap/msdos.c:395 -msgid "" -"this msdos-style partition label has no post-MBR gap; embedding won't be " -"possible" -msgstr "" -"dit MSDOS-achtige partitielabel heeft geen ruimte na de MBR; inbedding is " -"niet mogelijk" - -#: grub-core/partmap/msdos.c:404 -msgid "your embedding area is unusually small. core.img won't fit in it." -msgstr "" -"Uw inbeddingsgebied is ongebruikelijk klein; core.img zal er niet in passen." - -#: grub-core/parttool/msdospart.c:39 -msgid "Make partition active" -msgstr "Partitie actief maken" - -#: grub-core/parttool/msdospart.c:51 -msgid "not a primary partition" -msgstr "is geen primaire partitie" - -#: grub-core/parttool/msdospart.c:69 -#, c-format -msgid "Partition %d is active now. \n" -msgstr "Partitie %d is nu actief. \n" - -#: grub-core/parttool/msdospart.c:74 -#, c-format -msgid "Cleared active flag on %d. \n" -msgstr "De 'actief'-vlag op %d is gewist. \n" - -#: grub-core/parttool/msdospart.c:87 -msgid "Change partition type" -msgstr "Partitietype wijzigen" - -#: grub-core/parttool/msdospart.c:88 -msgid "Set `hidden' flag in partition type" -msgstr "De 'verborgen'-vlag in partitietype zetten" - -#: grub-core/parttool/msdospart.c:130 -#, c-format -msgid "the partition type 0x%x isn't valid" -msgstr "partitietype 0x%x is ongeldig" - -#. TRANSLATORS: In this case we're actually writing to the disk and actively -#. modifying partition type rather than just defining it. -#: grub-core/parttool/msdospart.c:137 -#, c-format -msgid "Setting partition type to 0x%x\n" -msgstr "Instellen van partitietype op 0x%x\n" - -#. TRANSLATORS: 0 is a quantifier. "break" (similar to bash) -#. can be used e.g. to break 3 loops at once. -#. But asking it to break 0 loops makes no sense. -#: grub-core/script/execute.c:143 -msgid "can't break 0 loops" -msgstr "kan niet nul lussen verbreken" - -#. TRANSLATORS: It's about not being -#. inside a function. "return" can be used only -#. in a function and this error occurs if it's used -#. anywhere else. -#: grub-core/script/execute.c:227 -msgid "not in function body" -msgstr "valt niet binnen een functie" - -#: grub-core/script/execute.c:371 -#, c-format -msgid "invalid variable name `%s'" -msgstr "ongeldige variabelenaam '%s'" - -#: grub-core/script/execute.c:953 -msgid "cannot allocate command buffer" -msgstr "" - -#: grub-core/script/lexer.c:144 util/grub-fstest.c:330 -msgid "unexpected end of file" -msgstr "onverwacht einde van bestand" - -#: grub-core/script/main.c:55 grub-core/script/main.c:57 -#: grub-core/script/main.c:59 grub-core/script/main.c:67 -msgid "[NUM]" -msgstr "[NUMMER]" - -#: grub-core/script/main.c:55 -msgid "Exit from loops" -msgstr "Een lus verlaten." - -#: grub-core/script/main.c:57 -msgid "Continue loops" -msgstr "Doorgaan met een lus." - -#. TRANSLATORS: Positional arguments are -#. arguments $0, $1, $2, ... -#: grub-core/script/main.c:62 -msgid "Shift positional parameters." -msgstr "Positionele parameters opschuiven." - -#: grub-core/script/main.c:64 -msgid "[VALUE]..." -msgstr "[WAARDE...]" - -#: grub-core/script/main.c:65 -msgid "Set positional parameters." -msgstr "Positionele parameters instellen." - -#. TRANSLATORS: It's a command description -#. and "Return" is a verb, not a noun. The -#. command in question is "return" and -#. has exactly the same semanics as bash -#. equivalent. -#: grub-core/script/main.c:73 -msgid "Return from a function." -msgstr "Terugkeren uit een functie." - -#: grub-core/term/gfxterm_background.c:176 -msgid "[-m (stretch|normal)] FILE" -msgstr "[-m (stretch|normal)] BESTAND" - -#: grub-core/term/gfxterm_background.c:177 -msgid "Load background image for active terminal." -msgstr "De achtergrondafbeelding voor de actieve terminal laden." - -#: grub-core/term/gfxterm_background.c:182 util/grub-install.c:302 -#: util/grub-install.c:303 util/grub-mkrescue.c:107 util/grub-mkrescue.c:108 -#: util/grub-render-label.c:61 util/grub-render-label.c:63 -msgid "COLOR" -msgstr "KLEUR" - -#: grub-core/term/gfxterm_background.c:183 -msgid "Set background color for active terminal." -msgstr "De achtergrondkleur voor de actieve terminal instellen." - -#: grub-core/term/i386/coreboot/cbmemc.c:139 -msgid "Show CBMEM console content." -msgstr "Inhoud van CBMEM-console tonen." - -#: grub-core/term/serial.c:57 -msgid "Set the serial unit." -msgstr "De seriële eenheid instellen." - -#: grub-core/term/serial.c:58 -msgid "Set the serial port address." -msgstr "Het adres van de seriële poort instellen." - -#: grub-core/term/serial.c:59 -msgid "Set the serial port speed." -msgstr "De snelheid van de seriële poort instellen." - -#: grub-core/term/serial.c:60 -msgid "Set the serial port word length." -msgstr "De woordlengte van de seriële poort instellen." - -#: grub-core/term/serial.c:61 -msgid "Set the serial port parity." -msgstr "De pariteit van de seriële poort instellen." - -#: grub-core/term/serial.c:62 -msgid "Set the serial port stop bits." -msgstr "De stopbits van de seriële poort instellen." - -#: grub-core/term/serial.c:63 -msgid "Set the base frequency." -msgstr "De basisfrequentie instellen." - -#: grub-core/term/serial.c:64 -msgid "Enable/disable RTS/CTS." -msgstr "RTS/CTS inschakelen/uitschakelen." - -#: grub-core/term/serial.c:218 -#, c-format -msgid "serial port `%s' isn't found" -msgstr "seriële poort '%s' is niet gevonden" - -#: grub-core/term/serial.c:254 -msgid "unsupported serial port flow control" -msgstr "niet-ondersteunde flow-control van seriële poort" - -#: grub-core/term/serial.c:429 -msgid "[OPTIONS...]" -msgstr "[OPTIE...]" - -#: grub-core/term/serial.c:430 -msgid "Configure serial port." -msgstr "Seriële poort instellen." - -#: grub-core/term/terminfo.c:184 -#, c-format -msgid "unknown terminfo type `%s'" -msgstr "onbekend 'terminfo'-type '%s'" - -#: grub-core/term/terminfo.c:668 -msgid "ASCII" -msgstr "ASCII" - -#: grub-core/term/terminfo.c:671 -msgid "UTF-8" -msgstr "UTF-8" - -#. TRANSLATORS: visually ordered UTF-8 is a non-compliant encoding -#. based on UTF-8 with right-to-left languages written in reverse. -#. Used on some terminals. Normal UTF-8 is refered as -#. "logically-ordered UTF-8" by opposition. -#: grub-core/term/terminfo.c:677 -msgid "visually-ordered UTF-8" -msgstr "visueel-geordende UTF-8" - -#: grub-core/term/terminfo.c:680 -msgid "Unknown encoding" -msgstr "(onbekende codering)" - -#: grub-core/term/terminfo.c:684 -msgid "Current terminfo types:" -msgstr "Huidige 'terminfo'-types:" - -#: grub-core/term/terminfo.c:699 -msgid "Terminal is ASCII-only [default]." -msgstr "De terminal is alleen-ASCII [standaard]." - -#: grub-core/term/terminfo.c:700 -msgid "Terminal is logical-ordered UTF-8." -msgstr "De terminal is logisch-geordende UTF-8." - -#: grub-core/term/terminfo.c:701 -msgid "Terminal is visually-ordered UTF-8." -msgstr "De terminal is visueel-geordende UTF-8." - -#: grub-core/term/terminfo.c:703 -msgid "Terminal has specified geometry." -msgstr "De terminal heeft de gegeven afmetingen." - -#. TRANSLATORS: "x" has to be entered in, like an identifier, so please don't -#. use better Unicode codepoints. -#: grub-core/term/terminfo.c:706 -msgid "WIDTHxHEIGHT." -msgstr "BREEDTExHOOGTE" - -#: grub-core/term/terminfo.c:746 -msgid "incorrect terminal dimensions specification" -msgstr "onjuiste opgave van terminalafmetingen" - -#: grub-core/term/terminfo.c:776 -#, c-format -msgid "terminal %s isn't found or it's not handled by terminfo" -msgstr "terminal '%s' is niet gevonden of wordt niet behandeld door 'terminfo'" - -#: grub-core/term/terminfo.c:785 -msgid "[[-a|-u|-v] [-g WxH] TERM [TYPE]]" -msgstr "[[-a|-u|-v] [-g BxH] TERMINAL [TYPE]]" - -#: grub-core/term/terminfo.c:786 -msgid "Set terminfo type of TERM to TYPE.\n" -msgstr "Het 'terminfo'-type van TERMINAL op TYPE instellen.\n" - -#. TRANSLATORS: this is the BLOCK-argument, not -#. environment block. -#: grub-core/tests/test_blockarg.c:49 -msgid "Print and execute block argument." -msgstr "Een blokargument tonen en uitvoeren." - -#. TRANSLATORS: We're speaking about bitmap images like -#. JPEG or PNG. -#: grub-core/video/bitmap.c:209 -#, c-format -msgid "bitmap file `%s' is of unsupported format" -msgstr "bitkaartbestand '%s' heeft een niet-ondersteunde opmaak" - -#: grub-core/video/i386/pc/vbe.c:1191 -#, c-format -msgid " VBE info: version: %d.%d OEM software rev: %d.%d\n" -msgstr " VBE-info: versie: %d.%d OEM-softwarerevisie: %d.%d\n" - -#: grub-core/video/i386/pc/vbe.c:1198 -#, c-format -msgid " total memory: %d KiB\n" -msgstr " totaal geheugen: %d KiB\n" - -#: grub-core/video/video.c:596 grub-core/video/video.c:762 -msgid "no suitable video mode found" -msgstr "geen geschikte videomodus gevonden" - -#: include/grub/crypto.h:403 -msgid "access denied" -msgstr "toegang is geweigerd" - -#: include/grub/util/install.h:30 include/grub/util/install.h:35 -msgid "MODULES" -msgstr "MODULES" - -#: include/grub/util/install.h:31 -msgid "pre-load specified modules MODULES" -msgstr "de gegeven MODULES vooraf laden" - -#: include/grub/util/install.h:33 -msgid "embed a specific DTB" -msgstr "" - -#: include/grub/util/install.h:36 -msgid "install only MODULES and their dependencies [default=all]" -msgstr "" -"alleen deze MODULES en hun benodigdheden installeren [standaard allemaal]" - -#: include/grub/util/install.h:37 -msgid "THEMES" -msgstr "THEMA'S" - -#: include/grub/util/install.h:38 -#, c-format -msgid "install THEMES [default=%s]" -msgstr "deze THEMA'S installeren [standaard %s]" - -#: include/grub/util/install.h:39 -msgid "FONTS" -msgstr "LETTERTYPES" - -#: include/grub/util/install.h:40 -#, c-format -msgid "install FONTS [default=%s]" -msgstr "deze LETTERTYPES installeren [standaard %s]" - -#: include/grub/util/install.h:41 -msgid "LOCALES" -msgstr "TAALREGIO'S" - -#: include/grub/util/install.h:42 -msgid "install only LOCALES [default=all]" -msgstr "alleen deze TAALREGIO'S installeren [standaard is allemaal]" - -#: include/grub/util/install.h:45 -msgid "compress GRUB files [optional]" -msgstr "GRUB-bestanden comprimeren [optioneel]" - -#: include/grub/util/install.h:48 util/grub-mkimage.c:83 -msgid "choose the compression to use for core image" -msgstr "te gebruiken soort compressie voor core-image" - -#. TRANSLATORS: platform here isn't identifier. It can be translated. -#: include/grub/util/install.h:51 include/grub/util/install.h:54 -#: util/grub-mkimage.c:66 -#, c-format -msgid "use images and modules under DIR [default=%s/]" -msgstr "images en modules onder MAP gebruiken [standaard %s/]" - -#: include/grub/util/install.h:57 -#, c-format -msgid "use translations under DIR [default=%s]" -msgstr "vertalingen onder MAP gebruiken [standaard %s]" - -#: include/grub/util/install.h:60 -#, c-format -msgid "use themes under DIR [default=%s]" -msgstr "thema's onder MAP gebruiken [standaard %s]" - -#: include/grub/util/install.h:65 util/grub-mkimage.c:78 -msgid "embed FILE as public key for signature checking" -msgstr "BESTAND inbedden als publieke sleutel voor vingerafdrukcontrole" - -#: util/editenv.c:59 util/grub-editenv.c:201 util/grub-install-common.c:535 -#: util/grub-mkimage.c:315 util/setup.c:791 -#, fuzzy, c-format -msgid "cannot sync `%s': %s" -msgstr "kan niet springen in '%s': %s" - -#: util/editenv.c:64 -#, c-format -msgid "cannot rename the file %s to %s" -msgstr "kan bestand %s niet naar %s hernoemen" - -#: util/getroot.c:402 -#, c-format -msgid "disk does not exist, so falling back to partition device %s" -msgstr "schijf bestaat niet; teruggevallen op partitie-apparaat %s" - -#: util/grub-editenv.c:45 util/grub-fstest.c:506 -msgid "Commands:" -msgstr "Opdrachten:" - -#: util/grub-editenv.c:47 -msgid "Create a blank environment block file." -msgstr "Een leeg omgevingsblokbestand aanmaken." - -#: util/grub-editenv.c:49 -msgid "List the current variables." -msgstr "De huidige variabelen tonen." - -#. TRANSLATORS: "set" is a keyword. It's a summary of "set" subcommand. -#: util/grub-editenv.c:51 -msgid "set [NAME=VALUE ...]" -msgstr "set [NAAM=WAARDE ...]" - -#: util/grub-editenv.c:52 -msgid "Set variables." -msgstr "Variabelen instellen." - -#. TRANSLATORS: "unset" is a keyword. It's a summary of "unset" subcommand. -#: util/grub-editenv.c:54 -msgid "unset [NAME ...]" -msgstr "unset [NAAM ...]" - -#: util/grub-editenv.c:55 -msgid "Delete variables." -msgstr "Variabelen verwijderen." - -#: util/grub-editenv.c:57 -msgid "Options:" -msgstr "Opties:" - -#: util/grub-editenv.c:84 -msgid "You need to specify at least one command.\n" -msgstr "U dient minstens één opdracht te geven.\n" - -#: util/grub-editenv.c:113 -msgid "FILENAME COMMAND" -msgstr "BESTANDSNAAM OPDRACHT" - -#: util/grub-editenv.c:114 -msgid "Tool to edit environment block." -msgstr "Gereedschap om omgevingsblok mee te bewerken." - -#: util/grub-editenv.c:116 -#, c-format -msgid "" -"If FILENAME is `-', the default value %s is used.\n" -"\n" -"There is no `delete' command; if you want to delete the whole environment\n" -"block, use `rm %s'." -msgstr "" -"Als BESTANDSNAAM '-' is, dan wordt de standaardwaarde %s gebruikt.\n" -"\n" -"Er is geen 'delete'-opdracht; als u het gehele omgevingsblok\n" -"wilt verwijderen, gebruik dan 'rm %s'." - -#: util/grub-editenv.c:162 -msgid "invalid environment block" -msgstr "ongeldig omgevingsblok" - -#: util/grub-editenv.c:217 -#, c-format -msgid "invalid parameter %s" -msgstr "ongeldige parameter %s" - -#: util/grub-editenv.c:222 -msgid "environment block too small" -msgstr "omgevingsblok is te klein" - -#: util/grub-fstest.c:107 -#, c-format -msgid "disk read fails at offset %lld, length %lld" -msgstr "lezen van schijf is mislukt op positie %lld, lengte %lld" - -#: util/grub-fstest.c:138 -#, c-format -msgid "invalid skip value %lld" -msgstr "ongeldige sprongwaarde %lld" - -#: util/grub-fstest.c:160 util/grub-fstest.c:246 -#, c-format -msgid "read error at offset %llu: %s" -msgstr "leesfout op positie %llu: %s" - -#: util/grub-fstest.c:210 -#, c-format -msgid "cannot open OS file `%s': %s" -msgstr "kan bestand '%s' op beheersysteem niet openen: %s" - -#: util/grub-fstest.c:225 util/misc.c:126 -#, c-format -msgid "cannot write to the stdout: %s" -msgstr "kan niet naar standaarduitvoer schrijven: %s" - -#: util/grub-fstest.c:259 -#, c-format -msgid "compare fail at offset %llu" -msgstr "vergelijking is mislukt op positie %llu" - -#: util/grub-fstest.c:280 util/grub-fstest.c:314 -#, c-format -msgid "OS file %s open error: %s" -msgstr "beheersysteemfout bij openen van bestand %s: %s" - -#: util/grub-fstest.c:402 util/grub-mount.c:392 -#, c-format -msgid "`loopback' command fails: %s" -msgstr "de 'loopback'-opdracht is mislukt: %s" - -#: util/grub-fstest.c:413 util/grub-mount.c:402 -#, c-format -msgid "`cryptomount' command fails: %s" -msgstr "de 'cryptomount'-opdracht is mislukt: %s" - -#: util/grub-fstest.c:474 util/grub-fstest.c:478 -msgid "couldn't retrieve UUID" -msgstr "kan UUID niet verkrijgen" - -#: util/grub-fstest.c:507 -msgid "ls PATH" -msgstr "ls PAD" - -#: util/grub-fstest.c:507 -msgid "List files in PATH." -msgstr "De bestanden in de map PAD tonen." - -#: util/grub-fstest.c:508 -msgid "cp FILE LOCAL" -msgstr "cp BESTAND DEZE" - -#: util/grub-fstest.c:508 -msgid "Copy FILE to local file LOCAL." -msgstr "BESTAND naar lokaal bestand DEZE kopiëren." - -#: util/grub-fstest.c:509 -msgid "cat FILE" -msgstr "cat BESTAND" - -#: util/grub-fstest.c:509 -msgid "Copy FILE to standard output." -msgstr "Dit BESTAND naar standaarduitvoer kopiëren." - -#: util/grub-fstest.c:510 -msgid "cmp FILE LOCAL" -msgstr "cmp BESTAND DEZE" - -#: util/grub-fstest.c:510 -msgid "Compare FILE with local file LOCAL." -msgstr "BESTAND met lokaal bestand DEZE vergelijken." - -#: util/grub-fstest.c:511 -msgid "hex FILE" -msgstr "hex BESTAND" - -#: util/grub-fstest.c:511 -msgid "Show contents of FILE in hex." -msgstr "De inhoud van BESTAND in hexadecimaal tonen." - -#: util/grub-fstest.c:512 -msgid "crc FILE" -msgstr "crc BESTAND" - -#: util/grub-fstest.c:512 -msgid "Get crc32 checksum of FILE." -msgstr "De CRC32-controlesom van BESTAND berekenen." - -#: util/grub-fstest.c:513 -msgid "blocklist FILE" -msgstr "blocklist BESTAND" - -#: util/grub-fstest.c:513 -msgid "Display blocklist of FILE." -msgstr "De blokkenlijst van BESTAND tonen." - -#: util/grub-fstest.c:514 -msgid "xnu_uuid DEVICE" -msgstr "xnu_uuid APPARAAT" - -#: util/grub-fstest.c:514 -msgid "Compute XNU UUID of the device." -msgstr "De XNU-UUID van APPARAAT berekenen." - -#. TRANSLATORS: bitmaps are images like e.g. in JPEG. -#: util/grub-fstest.c:517 util/grub-fstest.c:518 util/grub-fstest.c:519 -#: util/grub-mkfont.c:938 util/grub-mkfont.c:951 util/grub-mkfont.c:952 -#: util/grub-mkpasswd-pbkdf2.c:46 util/grub-mkpasswd-pbkdf2.c:47 -#: util/grub-mkpasswd-pbkdf2.c:48 -msgid "NUM" -msgstr "NUMMER" - -#: util/grub-fstest.c:517 -msgid "Skip N bytes from output file." -msgstr "N bytes in uitvoerbestand overslaan." - -#: util/grub-fstest.c:518 -msgid "Handle N bytes in output file." -msgstr "N bytes in uitvoerbestand verwerken." - -#: util/grub-fstest.c:519 -msgid "Specify the number of input files." -msgstr "Te gebruiken aantal invoerbestanden." - -#: util/grub-fstest.c:520 util/grub-mount.c:453 -msgid "Set debug environment variable." -msgstr "Een debug-omgevingsvariabele instellen." - -#: util/grub-fstest.c:521 util/grub-mount.c:454 -msgid "Mount crypto devices." -msgstr "Versleutelde apparaten aankoppelen." - -#. TRANSLATORS: "prompt" is a keyword. -#: util/grub-fstest.c:524 util/grub-mount.c:457 -msgid "FILE|prompt" -msgstr "BESTAND|prompt" - -#: util/grub-fstest.c:524 util/grub-mount.c:457 -msgid "Load zfs crypto key." -msgstr "De ZFS-versleutelingsleutel laden." - -#: util/grub-fstest.c:526 -msgid "Uncompress data." -msgstr "Gegevens decomprimeren." - -#: util/grub-fstest.c:605 -msgid "Invalid disk count.\n" -msgstr "Ongeldig schijvenaantal.\n" - -#. TRANSLATORS: disk count is optional but if it's there it must -#. be before disk list. So please don't imply disk count as mandatory. -#. -#: util/grub-fstest.c:613 -msgid "Disk count must precede disks list.\n" -msgstr "Schijvenaantal moet voorafgaan aan schijvenlijst.\n" - -#: util/grub-fstest.c:633 -msgid "No command is specified.\n" -msgstr "Geen opdracht gegeven.\n" - -#: util/grub-fstest.c:638 -msgid "Not enough parameters to command.\n" -msgstr "Te weinig parameters voor de opdracht.\n" - -#: util/grub-fstest.c:711 -#, c-format -msgid "Invalid command %s.\n" -msgstr "Ongeldige opdracht: %s.\n" - -#: util/grub-fstest.c:724 -msgid "IMAGE_PATH COMMANDS" -msgstr "IMAGE-PAD OPDRACHTEN" - -#: util/grub-fstest.c:725 util/grub-mount.c:553 -msgid "Debug tool for filesystem driver." -msgstr "Debug-gereedschap voor bestandssysteem-stuurprogramma." - -#: util/grub-glue-efi.c:53 -msgid "set input filename for 32-bit part." -msgstr "invoerbestandsnaam voor 32-bit deel instellen" - -#: util/grub-glue-efi.c:55 -msgid "set input filename for 64-bit part." -msgstr "invoerbestandsnaam voor 64-bit deel instellen" - -#: util/grub-glue-efi.c:57 util/grub-mklayout.c:55 util/grub-render-label.c:71 -msgid "set output filename. Default is STDOUT" -msgstr "uitvoerbestandsnaam instellen (standaard is standaarduitvoer)" - -#: util/grub-glue-efi.c:94 util/grub-mklayout.c:476 -#: util/grub-mkpasswd-pbkdf2.c:86 util/grub-render-label.c:131 -msgid "[OPTIONS]" -msgstr "[OPTIE...]" - -#: util/grub-glue-efi.c:95 -msgid "Glue 32-bit and 64-bit binary into Apple universal one." -msgstr "" -"Een 32-bit en een 64-bit programma samenplakken tot een Apple «universele»." - -#: util/grub-glue-efi.c:116 -msgid "Missing input file\n" -msgstr "Invoerbestand ontbreekt\n" - -#: util/grub-install-common.c:127 util/grub-install-common.c:151 -#, c-format -msgid "cannot copy `%s' to `%s': %s" -msgstr "kan '%s' niet kopiëren naar '%s': %s" - -#: util/grub-install-common.c:147 -#, c-format -msgid "can't compress `%s' to `%s'" -msgstr "kan '%s' niet comprimeren naar '%s'" - -#: util/grub-install-common.c:196 util/grub-install-common.c:552 -#: util/grub-install-common.c:579 util/grub-install-common.c:621 -#, c-format -msgid "cannot open directory `%s': %s" -msgstr "kan map '%s' niet openen: %s" - -#: util/grub-install-common.c:212 -#, c-format -msgid "cannot delete `%s': %s" -msgstr "kan '%s' niet verwijderen: %s" - -#: util/grub-install-common.c:324 util/grub-mkimage.c:209 -msgid "grub-mkimage is compiled without XZ support" -msgstr "'grub-mkimage' is gecompileerd zonder ondersteuning voor XZ" - -#: util/grub-install-common.c:332 util/grub-mkimage.c:217 -#, c-format -msgid "Unknown compression format %s" -msgstr "Onbekende compressiespecificatie %s" - -#: util/grub-install-common.c:400 -#, c-format -msgid "Unrecognized compression `%s'" -msgstr "Onbekende compressie '%s'" - -#: util/grub-install-common.c:509 -#, c-format -msgid "unknown target format %s" -msgstr "onbekende doelindeling %s" - -#: util/grub-install-common.c:700 -#, c-format -msgid "cannot find locale `%s'" -msgstr "kan taalregio '%s' niet vinden" - -#: util/grub-install-common.c:939 -#, c-format -msgid "%s doesn't exist. Please specify --target or --directory" -msgstr "%s bestaat niet; gebruik optie '--target' of '--directory'" - -#: util/grub-install-common.c:948 util/grub-install-common.c:951 -#, c-format -msgid "invalid modinfo file `%s'" -msgstr "ongeldig 'modinfo'-bestand '%s'" - -#: util/grub-install-common.c:966 -#, c-format -msgid "Unknown platform `%s-%s'" -msgstr "onbekend platform '%s-%s'" - -#: util/grub-install.c:238 -msgid "More than one install device?" -msgstr "Meer dan één installatie-apparaat?" - -#: util/grub-install.c:251 -#, c-format -msgid "" -"install GRUB images under the directory DIR/%s instead of the %s directory" -msgstr "GRUB-images installeren onder MAP/%s in plaats van de map %s" - -#: util/grub-install.c:256 util/grub-probe.c:734 -msgid "TARGET" -msgstr "DOEL" - -#. TRANSLATORS: "TARGET" as in "target platform". -#: util/grub-install.c:258 -#, c-format -msgid "install GRUB for TARGET platform [default=%s]; available targets: %s" -msgstr "" -"GRUB installeren voor het platform DOEL [standaard=%s]; beschikbare doelen: " -"%s" - -#. TRANSLATORS: "may break" doesn't just mean that option wouldn't have any -#. effect but that it will make the resulting install unbootable from HDD. -#. TRANSLATORS: The potential breakage isn't limited to floppies but it's -#. likely to make the install unbootable from HDD. -#: util/grub-install.c:267 util/grub-setup.c:94 -msgid "" -"make the drive also bootable as floppy (default for fdX devices). May break " -"on some BIOSes." -msgstr "" -"de schijf ook opstartbaar maken als floppy (standaard voor fdX-apparaten); " -"kan falen op sommige BIOS'en" - -#: util/grub-install.c:270 -msgid "delete device map if it already exists" -msgstr "de apparaattoewijzingstabel verwijderen als deze reeds bestaat" - -#: util/grub-install.c:272 util/grub-setup.c:87 -msgid "install even if problems are detected" -msgstr "ook installeren als er problemen gevonden worden" - -#: util/grub-install.c:274 -msgid "use identifier file even if UUID is available" -msgstr "ID-bestand gebruiken zelfs als UUID beschikbaar is" - -#: util/grub-install.c:276 -msgid "" -"disk module to use (biosdisk or native). This option is only available on " -"BIOS target." -msgstr "" -"te gebruiken schijfmodule ('biosdisk' of 'native'); deze optie is alleen " -"beschikbaar op een BIOS-doel" - -#: util/grub-install.c:279 -msgid "" -"don't update the `boot-device'/`Boot*' NVRAM variables. This option is only " -"available on EFI and IEEE1275 targets." -msgstr "" -"de variabelen 'boot-device' en 'Boot*' in NVRAM niet bijwerken; deze optie " -"is alleen beschikbaar op EFI en IEEE1275" - -#: util/grub-install.c:282 util/grub-setup.c:89 -msgid "do not probe for filesystems in DEVICE" -msgstr "niet naar bestandssystemen zoeken op APPARAAT" - -#: util/grub-install.c:284 -msgid "do not install bootsector" -msgstr "geen bootsector installeren" - -# XXX capitalize Reed-Solomon -#: util/grub-install.c:286 util/grub-setup.c:96 -msgid "" -"Do not apply any reed-solomon codes when embedding core.img. This option is " -"only available on x86 BIOS targets." -msgstr "" -"geen Reed-Solomoncodes toepassen bij inbedden van core.img; deze optie is " -"alleen beschikbaar op x86 BIOS-doelen" - -# XXX use semicolon -#: util/grub-install.c:293 -msgid "" -"the installation device is removable. This option is only available on EFI." -msgstr "" -"het installatie-apparaat is verwijderbaar; deze optie is alleen beschikbaar " -"op EFI" - -#: util/grub-install.c:295 -msgid "ID" -msgstr "ID" - -#: util/grub-install.c:296 -msgid "the ID of bootloader. This option is only available on EFI and Macs." -msgstr "" -"het ID van de opstartlader; deze optie is alleen beschikbaar op EFI en Macs" - -# XXX no period -#: util/grub-install.c:298 -msgid "use DIR as the EFI System Partition root." -msgstr "deze MAP gebruiken als hoofdmap van EFI-systeempartitie" - -# XXX s/MAC/Mac/; no period -#: util/grub-install.c:300 -msgid "use DIR for PPC MAC install." -msgstr "deze MAP gebruiken voor PPC Mac-installatie" - -#: util/grub-install.c:301 util/grub-mkrescue.c:106 -msgid "use FILE as font for label" -msgstr "dit BESTAND gebruiken als lettertype voor label" - -#: util/grub-install.c:302 util/grub-mkrescue.c:107 -msgid "use COLOR for label" -msgstr "KLEUR gebruiken voor label" - -#: util/grub-install.c:303 util/grub-mkrescue.c:108 -msgid "use COLOR for label background" -msgstr "KLEUR gebruiken voor label-achtergrond" - -#: util/grub-install.c:304 util/grub-mkrescue.c:110 -msgid "use STRING as product version" -msgstr "TEKENREEKS gebruiken voor productversie" - -#: util/grub-install.c:361 -msgid "[OPTION] [INSTALL_DEVICE]" -msgstr "[OPTIE] [INSTALLATIE-APPARAAT]" - -#: util/grub-install.c:362 -msgid "Install GRUB on your drive." -msgstr "GRUB installeren op uw schijf." - -#: util/grub-install.c:363 -#, c-format -msgid "" -"INSTALL_DEVICE must be system device filename.\n" -"%s copies GRUB images into %s. On some platforms, it may also install GRUB " -"into the boot sector." -msgstr "" -"INSTALLATIE-APPARAAT dient de naam van een systeemapparaat te zijn.\n" -"%s kopieert GRUB-images naar %s. Op sommige platformen\n" -"installeert het ook GRUB in de opstartsector.\\n" - -#: util/grub-install.c:672 -#, c-format -msgid "the drive %s is defined multiple times in the device map %s" -msgstr "" -"schijf %s is meerdere keren gedefinieerd in apparaattoewijzingstabel %s" - -#: util/grub-install.c:878 -msgid "Unable to determine your platform. Use --target." -msgstr "Kan uw platform niet achterhalen. Gebruik optie '--target'." - -#: util/grub-install.c:891 -#, c-format -msgid "Installing for %s platform.\n" -msgstr "Installeren voor %s-platform.\n" - -#: util/grub-install.c:939 -msgid "install device isn't specified" -msgstr "geen installatie-apparaat opgegeven" - -#: util/grub-install.c:1057 -msgid "cannot find EFI directory" -msgstr "kan EFI-map niet vinden" - -#: util/grub-install.c:1060 util/grub-install.c:1209 util/grub-install.c:1254 -#: util/grub-macbless.c:76 util/grub-probe.c:329 util/setup.c:316 -#, c-format -msgid "cannot find a device for %s (is /dev mounted?)" -msgstr "kan geen apparaat vinden voor %s (is /dev wel aangekoppeld?)" - -#: util/grub-install.c:1069 util/grub-install.c:1217 util/grub-install.c:1270 -#: util/grub-install.c:1365 util/grub-macbless.c:80 util/grub-probe.c:372 -#, c-format -msgid "cannot find a GRUB drive for %s. Check your device.map" -msgstr "Kan geen GRUB-schijf vinden voor %s. Controleer uw 'device.map'." - -#: util/grub-install.c:1087 -#, c-format -msgid "%s doesn't look like an EFI partition" -msgstr "%s ziet er niet uit als een EFI-partitie" - -#: util/grub-install.c:1129 util/grub-install.c:1614 -msgid "You've found a bug" -msgstr "U hebt een programmafout gevonden." - -#: util/grub-install.c:1231 -#, c-format -msgid "filesystem on %s is neither HFS nor HFS+" -msgstr "bestandssysteem op %s is noch HFS noch HFS+" - -# XXX start with capital? -#: util/grub-install.c:1299 -#, c-format -msgid "" -"attempt to install to encrypted disk without cryptodisk enabled. Set `%s' in " -"file `%s'" -msgstr "" -"Poging tot installeren op een versleutelde schijf zonder dat 'cryptodisk' " -"ingeschakeld is. Zet '%s' in bestand '%s'." - -#: util/grub-install.c:1410 util/grub-install.c:1772 util/grub-install.c:1872 -#, c-format -msgid "Can't create file: %s" -msgstr "Kan geen bestand aanmaken: %s" - -#: util/grub-install.c:1491 -msgid "no hints available for your platform. Expect reduced performance" -msgstr "" -"Er zijn geen hints beschikbaar voor uw platform. Verwacht gereduceerde " -"prestaties." - -#. TRANSLATORS: This is a prefix in the log to indicate that usually -#. a command would be executed but due to an option was skipped. -#: util/grub-install.c:1702 -msgid "NOT RUNNING: " -msgstr "DRAAIT NIET: " - -#: util/grub-install.c:1806 -msgid "the chosen partition is not a PReP partition" -msgstr "de gekozen partitie is geen PReP-partitie" - -#: util/grub-install.c:1811 -msgid "failed to copy Grub to the PReP partition" -msgstr "het kopiëren van GRUB naar de PReP-partitie is mislukt" - -#: util/grub-install.c:1816 -#, c-format -msgid "" -"the PReP partition is not empty. If you are sure you want to use it, run dd " -"to clear it: `%s'" -msgstr "" -"De PReP-partitie is niet leeg. Als u zeker weet dat u deze wilt gebruiken, " -"wis deze dan met 'dd': '%s'" - -#: util/grub-install.c:1888 util/grub-install.c:1932 -#, c-format -msgid "efibootmgr failed to register the boot entry: %s" -msgstr "" - -#: util/grub-install.c:1916 -msgid "EFI bootloader id isn't specified." -msgstr "Geen EFI-opstartlader-ID opgegeven." - -#: util/grub-install.c:1950 -msgid "WARNING: no platform-specific install was performed" -msgstr "WAARSCHUWING: er werd geen platformspecifieke installatie uitgevoerd" - -#: util/grub-install.c:1957 -msgid "Installation finished. No error reported." -msgstr "Installatie is afgerond. Er werden geen fouten gerapporteerd." - -#: util/grub-macbless.c:101 -msgid "bless for x86-based macs" -msgstr "zegenen voor Macs die x86 gebruiken" - -#: util/grub-macbless.c:103 -msgid "bless for ppc-based macs" -msgstr "zegenen voor Macs die PPC gebruiken" - -#: util/grub-macbless.c:136 util/grub-probe.c:823 -msgid "No path or device is specified.\n" -msgstr "Geen pad of apparaat gegeven.\n" - -#: util/grub-macbless.c:157 -msgid "--ppc PATH|--x86 FILE" -msgstr "--ppc PAD | --x86 BESTAND" - -#: util/grub-macbless.c:158 -msgid "Mac-style bless on HFS or HFS+" -msgstr "een HFS of HFS+ \"zegenen\" zoals op een Mac" - -#: util/grub-menulst2cfg.c:44 -#, c-format -msgid "Usage: %s [INFILE [OUTFILE]]\n" -msgstr "Gebruik: %s [INVOERBESTAND [UITVOERBESTAND]]\n" - -#: util/grub-mkfont.c:157 -#, c-format -msgid "Freetype Error %d loading glyph 0x%x for U+0x%x%s" -msgstr "Freetype-fout %d bij laden van glyph 0x%x voor U+0x%x%s" - -#. TRANSLATORS: These qualifiers are used for cursive typography, -#. mainly Arabic. Note that the terms refer to the visual position -#. and not logical order and if used in left-to-right script then -#. leftmost is initial but with right-to-left script like Arabic -#. rightmost is the initial. -#: util/grub-mkfont.c:165 -msgid " (medial)" -msgstr " (centrum)" - -#: util/grub-mkfont.c:166 -msgid " (leftmost)" -msgstr " (uiterst links)" - -#: util/grub-mkfont.c:167 -msgid " (rightmost)" -msgstr " (uiterst rechts)" - -#: util/grub-mkfont.c:481 -#, c-format -msgid "Out of range substitution (%d, %d)\n" -msgstr "Vervanging valt buiten bereik (%d, %d)\n" - -#. TRANSLATORS: "lookup" is taken directly from font specifications -#. which are formulated as "Under condition X replace LOOKUP with -#. SUBSTITUITION". " -#: util/grub-mkfont.c:506 -#, c-format -msgid "Out of range lookup: %d\n" -msgstr "Het gezochte valt buiten bereik: %d\n" - -#: util/grub-mkfont.c:514 -#, c-format -msgid "Unsupported substitution type: %d\n" -msgstr "Niet-ondersteund vervangingstype: %d\n" - -#: util/grub-mkfont.c:550 -#, c-format -msgid "Unsupported substitution specification: %d\n" -msgstr "Niet-ondersteunde vervangingsspecificatie: %d\n" - -#: util/grub-mkfont.c:582 -#, c-format -msgid "Unsupported coverage specification: %d\n" -msgstr "Niet-ondersteunde dekkingsspecificatie: %d\n" - -#: util/grub-mkfont.c:622 -#, c-format -msgid "WARNING: unsupported font feature parameters: %x\n" -msgstr "WAARSCHUWING: niet-ondersteunde lettertypefunctieparameters: %x\n" - -#: util/grub-mkfont.c:936 util/grub-mkrescue.c:98 util/grub-mkstandalone.c:48 -msgid "save output in FILE [required]" -msgstr "uitvoer opslaan in BESTAND [vereist]" - -#. TRANSLATORS: some font files may have multiple faces (fonts). -#. This option is used to chose among them, the first face being '0'. -#. Rarely used. -#: util/grub-mkfont.c:942 -msgid "select face index" -msgstr "index van sublettertype" - -#: util/grub-mkfont.c:943 -msgid "FROM-TO[,FROM-TO]" -msgstr "VAN-TOT[,VAN-TOT]" - -#. TRANSLATORS: It refers to the range of characters in font. -#: util/grub-mkfont.c:945 -msgid "set font range" -msgstr "lettertypebereik instellen" - -#. TRANSLATORS: "family name" for font is just a generic name without suffix -#. like "Bold". -#: util/grub-mkfont.c:949 -msgid "set font family name" -msgstr "naam van lettertypefamilie instellen" - -#: util/grub-mkfont.c:950 -msgid "SIZE" -msgstr "GROOTTE" - -#: util/grub-mkfont.c:950 -msgid "set font size" -msgstr "grootte van lettertype instellen" - -#: util/grub-mkfont.c:951 -msgid "set font descent" -msgstr "staarten van lettertype instellen" - -#: util/grub-mkfont.c:952 -msgid "set font ascent" -msgstr "stokken van lettertype instellen" - -#: util/grub-mkfont.c:953 -msgid "convert to bold font" -msgstr "lettertype omzetten naar vet" - -#: util/grub-mkfont.c:954 -msgid "force autohint" -msgstr "autohinting afdwingen" - -#: util/grub-mkfont.c:955 -msgid "disable hinting" -msgstr "hinting uitschakelen" - -#. TRANSLATORS: some fonts contain bitmap rendering for -#. some sizes. This option forces rerendering even if -#. pre-rendered bitmap is available. -#. -#: util/grub-mkfont.c:961 -msgid "ignore bitmap strikes when loading" -msgstr "voorgebakken bitkaarten negeren" - -#. TRANSLATORS: It refers to the range of characters in font. -#: util/grub-mkfont.c:1059 util/grub-mkfont.c:1075 -msgid "invalid font range" -msgstr "ongeldig lettertypebereik" - -#: util/grub-mkfont.c:1151 -msgid "[OPTIONS] FONT_FILES" -msgstr "[OPTIES] LETTERTYPEBESTANDEN" - -#: util/grub-mkfont.c:1152 -msgid "Convert common font file formats into PF2" -msgstr "Gewone indelingen van lettertypebestanden omzetten naar PF2" - -#: util/grub-mkfont.c:1182 util/grub-mkrescue.c:483 -#: util/grub-mkstandalone.c:306 -msgid "output file must be specified" -msgstr "er moet een uitvoerbestand gegeven worden" - -#: util/grub-mkfont.c:1185 -msgid "FT_Init_FreeType fails" -msgstr "FT_Init_FreeType() is mislukt" - -#: util/grub-mkfont.c:1199 -#, c-format -msgid "can't open file %s, index %d: error %d" -msgstr "kan bestand %s niet openen, index %d: fout %d" - -#: util/grub-mkfont.c:1229 -#, c-format -msgid "can't set %dx%d font size: Freetype error %d: %s" -msgstr "kan lettertypegrootte %dx%d niet instellen: Freetype-fout %d: %s" - -#: util/grub-mkimage.c:67 -msgid "set prefix directory" -msgstr "de voorvoegmap instellen" - -#. TRANSLATORS: "memdisk" here isn't an identifier, it can be translated. -#. "embed" is a verb (command description). " -#: util/grub-mkimage.c:71 -msgid "" -"embed FILE as a memdisk image\n" -"Implies `-p (memdisk)/boot/grub' and overrides any prefix supplied " -"previously, but the prefix itself can be overridden by later options" -msgstr "" -"BESTAND inbedden als een geheugenschijf-image;\n" -"dit impliceert '-p (geheugenschijf)/boot/grub' en overstijgt een eerder " -"gegeven\n" -"voorvoegsel, maar het voorvoegsel zelf kan gewijzigd worden door latere " -"opties" - -#: util/grub-mkimage.c:74 -#, fuzzy -msgid "embed FILE as a device tree (DTB)\n" -msgstr "BESTAND inbedden als een vroege configuratie" - -#: util/grub-mkimage.c:76 -msgid "embed FILE as an early config" -msgstr "BESTAND inbedden als een vroege configuratie" - -#. TRANSLATORS: NOTE is a name of segment. -#: util/grub-mkimage.c:80 -msgid "add NOTE segment for CHRP IEEE1275" -msgstr "een 'NOTE'-segment toevoegen voor CHRP IEEE1275" - -#: util/grub-mkimage.c:81 -msgid "output a generated image to FILE [default=stdout]" -msgstr "" -"een gegenereerde image uitvoeren naar BESTAND [standaard is " -"standaarduitvoer]" - -#: util/grub-mkimage.c:82 -msgid "FORMAT" -msgstr "INDELING" - -#: util/grub-mkimage.c:100 util/grub-mkstandalone.c:62 -msgid "generate an image in FORMAT" -msgstr "een image in de gegeven indeling genereren" - -#: util/grub-mkimage.c:101 util/grub-mkstandalone.c:63 -msgid "available formats:" -msgstr "Beschikbare indelingen zijn:" - -#: util/grub-mkimage.c:152 util/grub-mkstandalone.c:96 -#, c-format -msgid "unknown target format %s\n" -msgstr "onbekende doelindeling %s\n" - -#: util/grub-mkimage.c:242 -msgid "[OPTION]... [MODULES]" -msgstr "[OPTIE...] [MODULES]" - -#: util/grub-mkimage.c:243 -msgid "Make a bootable image of GRUB." -msgstr "Een opstartbare image maken van GRUB." - -#: util/grub-mkimage.c:273 util/grub-mkstandalone.c:309 -msgid "Target format not specified (use the -O option)." -msgstr "Doelindeling is niet gegeven (gebruik optie '-O')." - -#: util/grub-mkimage.c:282 -msgid "Prefix not specified (use the -p option)." -msgstr "Voorvoegsel is niet gegeven (gebruik optie '-p')." - -#: util/grub-mkimage.c:318 util/setup.c:793 -#, fuzzy, c-format -msgid "cannot close `%s': %s" -msgstr "kan '%s' niet openen: %s" - -#: util/grub-mkimagexx.c:2191 -#, c-format -msgid "" -"`%s' is miscompiled: its start address is 0x%llx instead of 0x%llx: ld.gold " -"bug?" -msgstr "" -"miscompilatie van '%s': diens startadres is 0x%llx in plaats van 0x%llx: een " -"programmafout in ld.gold?" - -#: util/grub-mklayout.c:53 -msgid "set input filename. Default is STDIN" -msgstr "invoerbestandsnaam instellen [standaard is standaardinvoer]" - -#. TRANSLATORS: scan identifier is keyboard key symbolic name. -#: util/grub-mklayout.c:307 -#, c-format -msgid "Unknown keyboard scan identifier %s\n" -msgstr "Onbekende toetsnaam %s\n" - -#. TRANSLATORS: scan code is keyboard key numeric identifier. -#: util/grub-mklayout.c:390 util/grub-mklayout.c:418 -#, c-format -msgid "Unknown keyboard scan code 0x%02x\n" -msgstr "Onbekende scancode 0x%02x\n" - -#. TRANSLATORS: this error is triggered when input doesn't contain any -#. key descriptions. -#: util/grub-mklayout.c:438 -msgid "ERROR: no valid keyboard layout found. Check the input.\n" -msgstr "" -"FOUT: Geen geldige toetsenbordindeling gevonden. Controleer de invoer.\n" - -#. TRANSLATORS: "one" is a shortcut for "keyboard layout". -#: util/grub-mklayout.c:478 -msgid "Generate GRUB keyboard layout from Linux console one." -msgstr "Een GRUB-toetsenbordindeling genereren vanuit Linux-console één." - -#: util/grub-mknetdir.c:47 -msgid "root directory of TFTP server" -msgstr "hoofdmap van TFTP-server" - -#: util/grub-mknetdir.c:49 -msgid "relative subdirectory on network server" -msgstr "relatieve submap op netwerkserver" - -#: util/grub-mknetdir.c:88 -msgid "" -"Prepares GRUB network boot images at net_directory/subdir assuming " -"net_directory being TFTP root." -msgstr "" -"Maakt GRUB-netwerkopstart-images in 'netwerkmap/submap/', aannemend dat " -"'netwerkmap' de TFTP-hoofdmap is." - -#: util/grub-mknetdir.c:146 -#, c-format -msgid "unsupported platform %s" -msgstr "niet-ondersteund platform %s" - -#. TRANSLATORS: First %s is replaced by platform name. Second one by filename. -#: util/grub-mknetdir.c:165 -#, c-format -msgid "" -"Netboot directory for %s created. Configure your DHCP server to point to %s\n" -msgstr "" -"Een Netboot-map voor %s is aangemaakt. Laat uw DHCP-server naar %s wijzen.\n" - -#: util/grub-mkpasswd-pbkdf2.c:46 -msgid "Number of PBKDF2 iterations" -msgstr "Aantal PBKDF2-iteraties" - -#: util/grub-mkpasswd-pbkdf2.c:47 -msgid "Length of generated hash" -msgstr "Lengte van gegenereerde hash" - -#: util/grub-mkpasswd-pbkdf2.c:48 -msgid "Length of salt" -msgstr "Lengte van startwaarde ('salt')" - -#: util/grub-mkpasswd-pbkdf2.c:87 -msgid "Generate PBKDF2 password hash." -msgstr "Een PBKDF2-wachtwoord-hash genereren." - -#: util/grub-mkpasswd-pbkdf2.c:144 util/grub-mkpasswd-pbkdf2.c:151 -msgid "failure to read password" -msgstr "lezen van wachtwoord is mislukt" - -#: util/grub-mkpasswd-pbkdf2.c:146 -msgid "Reenter password: " -msgstr "Voer wachtwoord opnieuw in: " - -#: util/grub-mkpasswd-pbkdf2.c:160 -msgid "passwords don't match" -msgstr "de wachtwoorden komen niet overeen" - -#: util/grub-mkpasswd-pbkdf2.c:169 -msgid "couldn't retrieve random data for salt" -msgstr "kan geen willekeurige gegevens verkrijgen voor startwaarde ('salt')" - -#: util/grub-mkpasswd-pbkdf2.c:184 -#, c-format -msgid "cryptographic error number %d" -msgstr "versleutelingsfout, nummer %d" - -#: util/grub-mkpasswd-pbkdf2.c:203 -#, c-format -msgid "PBKDF2 hash of your password is %s\n" -msgstr "de PBKDF2-hash van uw wachtwoord is %s\n" - -#: util/grub-mkrelpath.c:67 -msgid "No path is specified.\n" -msgstr "Geen pad gegeven.\n" - -#: util/grub-mkrelpath.c:78 -msgid "PATH" -msgstr "PAD" - -#: util/grub-mkrelpath.c:79 -msgid "Transform a system filename into GRUB one." -msgstr "Een bestandsnaam uit het systeem omzetten naar eentje voor GRUB." - -#: util/grub-mkrescue.c:100 -msgid "save ROM images in DIR [optional]" -msgstr "ROM-images opslaan in MAP [optioneel]" - -#. TRANSLATORS: xorriso is a program for creating ISOs and burning CDs. -#: util/grub-mkrescue.c:103 -msgid "use FILE as xorriso [optional]" -msgstr "dit BESTAND gebruiken als 'xorriso' [optioneel]" - -#: util/grub-mkrescue.c:109 -msgid "use STRING as product name" -msgstr "TEKENREEKS gebruiken voor productnaam" - -#: util/grub-mkrescue.c:111 -msgid "" -"enable sparc boot. Disables HFS+, APM, ARCS and boot as disk image for i386-" -"pc" -msgstr "" -"SPARC-opstart inschakelen -- schakelt HFS+, APM, ARCS en opstarten als " -"schijf-image voor i386-pc uit" - -#: util/grub-mkrescue.c:112 -msgid "" -"enable ARCS (big-endian mips machines, mostly SGI) boot. Disables HFS+, APM, " -"sparc64 and boot as disk image for i386-pc" -msgstr "" -"ARCS-opstart inschakelen (big-endian MIPS-machines, meest SGI) -- schakelt " -"HFS+, APM, sparc64 en opstarten als schijf-image voor i386-pc uit" - -#. TRANSLATORS: it generates one single image which is bootable through any method. -#: util/grub-mkrescue.c:125 -msgid "Make GRUB CD-ROM, disk, pendrive and floppy bootable image." -msgstr "" -"Een opstartbare GRUB-image maken voor CD-rom, USB-stick, harde schijf, en " -"floppy." - -#: util/grub-mkrescue.c:130 -#, c-format -msgid "" -"Generates a bootable CD/USB/floppy image. Arguments other than options to " -"this program are passed to xorriso, and indicate source files, source " -"directories, or any of the mkisofs options listed by the output of `%s'." -msgstr "" -"Genereert een opstartbare image voor CD of USB of floppy.\n" -"Argumenten die geen opties van dit programma zijn worden doorgegeven aan\n" -"'xorriso'; het zijn bronbestanden, bronmappen, of opties van 'mkisofs'\n" -"(zoals getoond door de uitvoer van '%s')." - -#: util/grub-mkrescue.c:134 -msgid "Option -- switches to native xorriso command mode." -msgstr "" -"Optie '--' schakelt over naar de standaard opdrachtenmodus van 'xorriso'." - -#: util/grub-mkrescue.c:135 -msgid "Mail xorriso support requests to ." -msgstr "Stuur hulpvragen over 'xorriso' aan ." - -#: util/grub-mkrescue.c:221 util/grub-mkstandalone.c:114 -msgid "[OPTION] SOURCE..." -msgstr "[OPTIE] BRON..." - -#: util/grub-mkrescue.c:257 util/grub-mkrescue.c:300 util/grub-mkrescue.c:588 -#, c-format -msgid "enabling %s support ..." -msgstr "inschakelen van ondersteuning voor %s..." - -#: util/grub-mkrescue.c:486 -#, fuzzy -msgid "xorriso not found" -msgstr "%s: niet gevonden" - -#: util/grub-mkrescue.c:623 -msgid "" -"Your xorriso doesn't support `--grub2-boot-info'. Some features are " -"disabled. Please use xorriso 1.2.9 or later." -msgstr "" -"Uw 'xorriso' ondersteunt '--grub2-boot-info' niet. Sommige functies zijn " -"uitgeschakeld. Gebruik xorriso-1.2.9 of nieuwer." - -#: util/grub-mkrescue.c:650 -msgid "" -"Your xorriso doesn't support `--grub2-boot-info'. Your core image is too " -"big. Boot as disk is disabled. Please use xorriso 1.2.9 or later." -msgstr "" -"Uw 'xorriso' ondersteunt '--grub2-boot-info' niet. Uw core-image is te " -"groot. Opstarten als schijf is uitgeschakeld. Gebruik xorriso-1.2.9 of " -"nieuwer." - -#: util/grub-mkstandalone.c:115 -msgid "" -"Generate a standalone image (containing all modules) in the selected format" -msgstr "" -"Een complete image (inclusief alle modules) genereren in de gekozen indeling." - -# XXX lowercase "e.g.", plus period -#: util/grub-mkstandalone.c:115 -msgid "Graft point syntax (E.g. /boot/grub/grub.cfg=./grub.cfg) is accepted" -msgstr "" -"Entpunt-syntax (bijvoorbeeld '/boot/grub/grub.cfg=./grub.cfg') wordt " -"geaccepteerd." - -# XXX transform to IMAGE... -#: util/grub-mount.c:552 -msgid "IMAGE1 [IMAGE2 ...] MOUNTPOINT" -msgstr "IMAGE... AANKOPPELINGSPUNT" - -#: util/grub-mount.c:575 -msgid "need an image and mountpoint" -msgstr "een image en een aankoppelingspunt zijn vereist" - -#: util/grub-probe.c:731 -msgid "given argument is a system device, not a path" -msgstr "gegeven argument is een systeemapparaat, niet een pad" - -#: util/grub-probe.c:736 -msgid "separate items in output using ASCII NUL characters" -msgstr "items in uitvoer scheiden met ASCII NUL-tekens" - -#: util/grub-probe.c:754 -#, c-format -msgid "[default=%s]" -msgstr "[standaard %s]" - -#: util/grub-probe.c:756 -msgid "print TARGET" -msgstr "DOEL printen" - -#: util/grub-probe.c:757 -msgid "available targets:" -msgstr "beschikbare doelen zijn:" - -#: util/grub-probe.c:839 -msgid "[OPTION]... [PATH|DEVICE]" -msgstr "[OPTIE...] [PAD|APPARAAT]" - -#: util/grub-probe.c:840 -msgid "" -"Probe device information for a given path (or device, if the -d option is " -"given)." -msgstr "" -"Zoekt naar apparaatinformatie voor een gegeven pad (of apparaat met optie '-" -"d')." - -# XXX no period -#: util/grub-render-label.c:60 -msgid "read text from FILE." -msgstr "tekst lezen uit BESTAND" - -#: util/grub-render-label.c:62 -msgid "use COLOR for text" -msgstr "KLEUR gebruiken voor tekst" - -#: util/grub-render-label.c:64 -msgid "use COLOR for background" -msgstr "KLEUR gebruiken voor achtergrond" - -#. TRANSLATORS: The result is always stored to file and -#. never shown directly, so don't use "show" as synonym for render. Use "create" if -#. "render" doesn't translate directly. -#: util/grub-render-label.c:69 -msgid "set the label to render" -msgstr "het te gebruiken label" - -#: util/grub-render-label.c:73 -msgid "use FILE as font (PF2)." -msgstr "dit BESTAND gebruiken als lettertype (PF2)" - -#. TRANSLATORS: This file takes a text and creates a graphical representation of it, -#. putting the result into .disk_label file. The result is always stored to file and -#. never shown directly, so don't use "show" as synonym for render. Use "create" if -#. "render" doesn't translate directly. -#: util/grub-render-label.c:136 -msgid "Render Apple .disk_label." -msgstr "Een Apple .disk_label weergeven." - -#: util/grub-render-label.c:158 util/grub-syslinux2cfg.c:169 -msgid "Missing arguments\n" -msgstr "Ontbrekende argumenten\n" - -#: util/grub-script-check.c:87 -msgid "[PATH]" -msgstr "[PAD]" - -#: util/grub-script-check.c:88 -msgid "Checks GRUB script configuration file for syntax errors." -msgstr "Controleert een GRUB-scriptconfiguratiebestand op syntaxfouten." - -#: util/grub-script-check.c:207 -#, c-format -msgid "Syntax error at line %u\n" -msgstr "Syntaxfout in regelnummer %u\n" - -#: util/grub-script-check.c:212 -#, c-format -msgid "Script `%s' contains no commands and will do nothing\n" -msgstr "Script '%s' bevat geen opdrachten en zal dus niets doen\n" - -#: util/grub-setup.c:79 -#, c-format -msgid "use FILE as the boot image [default=%s]" -msgstr "BESTAND als opstart-image gebruiken [standaard %s]" - -#: util/grub-setup.c:81 -#, c-format -msgid "use FILE as the core image [default=%s]" -msgstr "BESTAND als core-image gebruiken [standaard %s]" - -#: util/grub-setup.c:210 -msgid "No device is specified.\n" -msgstr "Geen apparaat opgegeven.\n" - -#: util/grub-setup.c:224 -msgid "" -"Set up images to boot from DEVICE.\n" -"\n" -"You should not normally run this program directly. Use grub-install instead." -msgstr "" -"Images instellen om op te starten vanaf APPARAAT.\n" -"\n" -"Dit programma gebruikt u normaliter niet direct. Gebruik 'grub-install'." - -#: util/grub-setup.c:228 -msgid "DEVICE must be an OS device (e.g. /dev/sda)." -msgstr "" -"APPARAAT moet een besturingssyssteemnaam hebben (bijvoorbeeld /dev/sda)." - -#: util/grub-setup.c:297 -#, c-format -msgid "Invalid device `%s'.\n" -msgstr "Ongeldig apparaat '%s'.\n" - -#: util/grub-syslinux2cfg.c:64 -msgid "root directory as it will be seen on runtime [default=/]." -msgstr "hoofdmap tijdens draaien [standaard=/]." - -# XXX *at* runtime; single space; no period -#: util/grub-syslinux2cfg.c:69 -msgid "" -"current directory of syslinux as it will be seen on runtime [default is " -"parent directory of input file]." -msgstr "" -"huidige map van syslinux tijdens draaien [standaard is de oudermap van het " -"invoerbestand]" - -#: util/grub-syslinux2cfg.c:74 -msgid "write output to FILE [default=stdout]." -msgstr "uitvoer schrijven naar BESTAND [standaard is standaarduitvoer]" - -#: util/grub-syslinux2cfg.c:148 -msgid "Transform syslinux config into GRUB one." -msgstr "Een syslinux-configuratiebestand omzetten naar eentje voor GRUB." - -#: util/mkimage.c:688 util/mkimage.c:717 util/mkimage.c:734 -msgid "cannot compress the kernel image" -msgstr "de kernel-image kan niet worden gecomprimeerd" - -#: util/mkimage.c:766 util/mkimage.c:1077 -#, c-format -msgid "unknown compression %d" -msgstr "onbekende compressie %d" - -#: util/mkimage.c:1088 -msgid "Decompressor is too big" -msgstr "Decompressor is te groot" - -#: util/mkimage.c:1133 -#, c-format -msgid "core image is too big (0x%x > 0x%x)" -msgstr "de core-image is te groot (0x%x > 0x%x)" - -#: util/mkimage.c:1140 -#, c-format -msgid "kernel image is too big (0x%x > 0x%x)" -msgstr "de kernel-image is te groot (0x%x > 0x%x)" - -#: util/mkimage.c:1220 util/mkimage.c:1501 -#, c-format -msgid "diskboot.img size must be %u bytes" -msgstr "de grootte van diskboot.img moet %u bytes zijn" - -#: util/mkimage.c:1571 -msgid "" -"fwstart.img doesn't match the known good version. proceed at your own risk" -msgstr "" -"fwstart.img is niet de bekend-goede versie; doorgaan is op eigen risico" - -#: util/mkimage.c:1575 util/mkimage.c:1601 -msgid "firmware image is too big" -msgstr "de firmware-image is te groot" - -#: util/resolve.c:93 -#, c-format -msgid "invalid line format: %s" -msgstr "ongeldige regelopmaak: %s" - -#: util/setup.c:167 -msgid "the first sector of the core file is not sector-aligned" -msgstr "de eerste sector van het core-bestand is niet sector-uitgelijnd" - -#: util/setup.c:177 -msgid "non-sector-aligned data is found in the core file" -msgstr "niet-sector-uitgelijnde gegevens gevonden in het core-bestand" - -#: util/setup.c:199 -msgid "the sectors of the core file are too fragmented" -msgstr "de sectoren van het core-bestand zijn te gefragmenteerd" - -#: util/setup.c:280 -#, c-format -msgid "the size of `%s' is not %u" -msgstr "de grootte van '%s' is niet %u" - -#: util/setup.c:290 -#, c-format -msgid "the size of `%s' is too small" -msgstr "de grootte van '%s' is te klein" - -#: util/setup.c:428 -msgid "" -"Attempting to install GRUB to a disk with multiple partition labels or both " -"partition label and filesystem. This is not supported yet." -msgstr "" -"Poging om GRUB op een schijf te installeren met meerdere partitielabels of " -"met zowel partitielabel als een bestandssysteem. Dit wordt nog niet " -"ondersteund." - -#: util/setup.c:441 -#, c-format -msgid "unable to identify a filesystem in %s; safety check can't be performed" -msgstr "" -"bestandssysteem in %s wordt niet herkend; veiligheidscontrole kan niet " -"worden uitgevoerd" - -#. TRANSLATORS: Filesystem may reserve the space just GRUB isn't sure about it. -#: util/setup.c:445 -#, c-format -msgid "" -"%s appears to contain a %s filesystem which isn't known to reserve space for " -"DOS-style boot. Installing GRUB there could result in FILESYSTEM " -"DESTRUCTION if valuable data is overwritten by grub-setup (--skip-fs-probe " -"disables this check, use at your own risk)" -msgstr "" -"%s blijkt een %s-bestandssysteem te bevatten waarvan bekend is dat er geen " -"ruimte voor DOS-achtig opstarten wordt gereserveerd. Installeren van GRUB " -"daarin kan VERNIELING VAN HET BESTANDSSYSTEEM tot gevolg hebben als " -"waardevolle gegevens worden overschreven door grub-setup. (Optie '--skip-fs-" -"probe' schakelt deze controle uit, op uw eigen risico.)" - -#. TRANSLATORS: Partition map may reserve the space just GRUB isn't sure about it. -#: util/setup.c:458 -#, c-format -msgid "" -"%s appears to contain a %s partition map which isn't known to reserve space " -"for DOS-style boot. Installing GRUB there could result in FILESYSTEM " -"DESTRUCTION if valuable data is overwritten by grub-setup (--skip-fs-probe " -"disables this check, use at your own risk)" -msgstr "" -"%s blijkt een %s-partitietabel te bevatten waarvan bekend is dat er geen " -"ruimte voor DOS-achtig opstarten wordt gereserveerd. Installeren van GRUB " -"daarin kan VERNIELING VAN HET BESTANDSSYSTEEM tot gevolg hebben als " -"waardevolle gegevens worden overschreven door grub-setup. (Optie '--skip-fs-" -"probe' schakelt deze controle uit, op uw eigen risico.)" - -#: util/setup.c:465 -#, c-format -msgid "" -"%s appears to contain a %s partition map and LDM which isn't known to be a " -"safe combination. Installing GRUB there could result in FILESYSTEM " -"DESTRUCTION if valuable data is overwritten by grub-setup (--skip-fs-probe " -"disables this check, use at your own risk)" -msgstr "" -"%s blijkt een %s-partitietabel én een LDM te bevatten; dit is geen veilige " -"combinatie. Installeren van GRUB daarin kan VERNIELING VAN HET " -"BESTANDSSYSTEEM tot gevolg hebben als waardevolle gegevens overschreven " -"worden door 'grub-setup'. (Optie '--skip-fs-probe' schakelt deze controle " -"uit, op uw eigen risico.)" - -#: util/setup.c:478 -msgid "" -"Attempting to install GRUB to a partitionless disk or to a partition. This " -"is a BAD idea." -msgstr "" -"Poging om GRUB op een schijf zonder partities te installeren, of op een " -"partitie. Dit is een SLECHT idee." - -#: util/setup.c:483 -msgid "" -"Attempting to install GRUB to a disk with multiple partition labels. This " -"is not supported yet." -msgstr "" -"Poging om GRUB op een schijf te installeren met meerdere partitielabels. " -"Dit wordt nog niet ondersteund." - -#: util/setup.c:489 -#, c-format -msgid "Partition style `%s' doesn't support embedding" -msgstr "Partitiestijl '%s' kent geen inbedding" - -#: util/setup.c:496 -#, c-format -msgid "File system `%s' doesn't support embedding" -msgstr "Bestandssysteem '%s' kent geen inbedding" - -#: util/setup.c:537 -msgid "Your embedding area is unusually small. core.img won't fit in it." -msgstr "" -"Uw inbeddingsruimte is ongebruikelijk klein; core.img zal er niet in passen." - -#: util/setup.c:559 util/setup.c:725 util/setup.c:844 -msgid "no terminator in the core image" -msgstr "de core-image bevat geen eindteken" - -#: util/setup.c:622 -msgid "core.img version mismatch" -msgstr "Versie van core.img komt niet overeen" - -#: util/setup.c:675 -msgid "" -"embedding is not possible, but this is required for RAID and LVM install" -msgstr "" -"inbedding is niet mogelijk, maar dit is wel vereist bij RAID- en LVM-" -"installatie" - -#: util/setup.c:682 -#, c-format -msgid "can't determine filesystem on %s" -msgstr "kan bestandssysteem op %s niet achterhalen" - -#: util/setup.c:685 -#, c-format -msgid "filesystem `%s' doesn't support blocklists" -msgstr "bestandssysteem '%s' ondersteunt geen bloklijsten" - -#. TRANSLATORS: cross-disk refers to /boot being on one disk -#. but MBR on another. -#: util/setup.c:694 -msgid "embedding is not possible, but this is required for cross-disk install" -msgstr "" -"inbedding is niet mogelijk, maar dit is wel vereist bij installatie over " -"meerdere schijven" - -#: util/setup.c:700 -msgid "" -"Embedding is not possible. GRUB can only be installed in this setup by " -"using blocklists. However, blocklists are UNRELIABLE and their use is " -"discouraged." -msgstr "" -"Inbedden is niet mogelijk. GRUB kan in deze configuratie alleen worden " -"geïnstalleerd met bloklijsten. Bloklijsten zijn echter ONBETROUWBAAR en het " -"gebruik ervan wordt ontraden." - -#. TRANSLATORS: Here GRUB refuses to continue with blocklist install. -#: util/setup.c:705 -msgid "will not proceed with blocklists" -msgstr "zal niet verder gaan met bloklijsten" - -#: util/setup.c:817 util/setup.c:837 -msgid "blocklists are invalid" -msgstr "bloklijsten zijn ongeldig" - -#: util/setup.c:847 -msgid "blocklists are incomplete" -msgstr "bloklijsten zijn incompleet" - -#~ msgid "%.*s: ARGP_HELP_FMT parameter must be positive" -#~ msgstr "%.*s: Parameter in ARGP_HELP_FMT moet positief zijn" - -#~ msgid "%s: option '--%s' doesn't allow an argument\n" -#~ msgstr "%s: optie '--%s' staat geen argument toe\n" - -#~ msgid "%s: unrecognized option '--%s'\n" -#~ msgstr "%s: onbekende optie '--%s'\n" - -#~ msgid "%s: option '-W %s' doesn't allow an argument\n" -#~ msgstr "%s: optie '-W %s' staat geen argument toe\n" - -#~ msgid "%s: option '-W %s' requires an argument\n" -#~ msgstr "%s: optie '-W %s' vereist een argument\n" - -#~ msgid "Usage: %s -o OUTPUT CKBMAP_ARGUMENTS...\\n" -#~ msgstr "Gebruik: %s -o UITVOERBESTAND CKBMAP-ARGUMENTEN...\\n" - -#~ msgid "Make GRUB keyboard layout file." -#~ msgstr "Een GRUB-toetsenbordindelingsbestand maken." - -#~ msgid "print this message and exit" -#~ msgstr "deze hulptekst tonen en stoppen" - -#~ msgid "print the version information and exit" -#~ msgstr "programmaversie tonen en stoppen" - -#~ msgid "%s generates a keyboard layout for GRUB using ckbcomp\\n" -#~ msgstr "" -#~ "%s genereert een toetsenbordindeling voor GRUB met behulp van 'ckbcomp'\\n" - -#~ msgid "Report bugs to ." -#~ msgstr "" -#~ "Rapporteer gebreken in het programma aan ;\n" -#~ "meld fouten in de vertaling aan ." - -#~ msgid "%s: option requires an argument -- `%s'\\n" -#~ msgstr "%s: optie vereist een argument -- '%s'\\n" - -#~ msgid "Usage: %s [OPTION]\\n" -#~ msgstr "Gebruik: %s [OPTIE]\\n" - -# XXX add period? -#~ msgid "Generate a grub config file" -#~ msgstr "Een GRUB-configuratiebestand aanmaken." - -#~ msgid "output generated config to FILE [default=stdout]" -#~ msgstr "" -#~ "gegenereerd configuratiebestand uitvoeren naar BESTAND [standaard is " -#~ "standaarduitvoer]" - -#~ msgid "Unrecognized option `%s'\\n" -#~ msgstr "Onbekende optie '%s'\\n" - -#~ msgid "%s: You must run this as root\\n" -#~ msgstr "%s: U moet dit uitvoeren als root\\n" - -#~ msgid "%s: Not found.\\n" -#~ msgstr "%s: Niet gevonden.\\n" - -#~ msgid "Generating grub configuration file ..." -#~ msgstr "Aanmaken van GRUB-configuratiebestand..." - -#~ msgid "" -#~ "Syntax errors are detected in generated GRUB config file.\n" -#~ "Ensure that there are no errors in /etc/default/grub\n" -#~ "and /etc/grub.d/* files or please file a bug report with\n" -#~ "%s file attached." -#~ msgstr "" -#~ "Er zijn syntaxfouten gevonden in het aangemaakte GRUB-" -#~ "configuratiebestand.\n" -#~ "Verzeker u ervan dat er geen fouten zitten in het bestand /etc/default/" -#~ "grub\n" -#~ "noch in de bestanden in /etc/grub.d/. Rapporteer anders een fout, met " -#~ "het\n" -#~ "bestand %s als bijlage." - -#~ msgid "done" -#~ msgstr "voltooid" - -#~ msgid "Warning:" -#~ msgstr "Waarschuwing:" - -#~ msgid "Usage: %s [OPTION] MENU_ENTRY\\n" -#~ msgstr "Gebruik: %s [OPTIE] MENU-ITEM\\n" - -#~ msgid "Set the default boot menu entry for GRUB, for the next boot only." -#~ msgstr "" -#~ "Het standaardmenu-item voor GRUB instellen, alleen voor de volgende start." - -#~ msgid "" -#~ "expect GRUB images under the directory DIR/%s instead of the %s directory" -#~ msgstr "GRUB-images zoeken onder MAP/%s in plaats van de map %s" - -# XXX why such overlong lines? wrap at before eighty colums? -#~ msgid "" -#~ "MENU_ENTRY is a number, a menu item title or a menu item identifier. " -#~ "Please note that menu items in\n" -#~ "submenus or sub-submenus require specifying the submenu components and " -#~ "then the\n" -#~ "menu item component. The titles should be separated using the greater-" -#~ "than\n" -#~ "character (>) with no extra spaces. Depending on your shell some " -#~ "characters including > may need escaping. More information about this is " -#~ "available\n" -#~ "in the GRUB Manual in the section about the 'default' command. " -#~ msgstr "" -#~ "MENU-ITEM is het nummer, de titel, of het ID van een menu-item.\n" -#~ "Voor items in submenu's of subsubmenu's dient eerst de submenu-component\n" -#~ "en dan de item-component vermeld te worden. De titels dienen gescheiden\n" -#~ "te worden met een groterdan-teken (>) zonder extra spaties. Afhankelijk\n" -#~ "van uw shell dienen sommige tekens (waaronder >) aangehaald te worden.\n" -#~ "Meer informatie hierover vindt u in de Grub-handleiding, in de sectie\n" -#~ "over het 'default'-commando. " - -#~ msgid "More than one menu entry?" -#~ msgstr "Meer dan één menu-item?" - -#~ msgid "Menu entry not specified." -#~ msgstr "Geen menu-item gegeven." - -#~ msgid "Set the default boot menu entry for GRUB." -#~ msgstr "Het standaardmenu-item voor GRUB instellen." - -#~ msgid "This requires setting GRUB_DEFAULT=saved in %s/default/grub.\\n" -#~ msgstr "" -#~ "Dit vereist het instellen van GRUB_DEFAULT=saved in %s/default/grub.\\n" - -#~ msgid "MENU_ENTRY is a number, a menu item title or a menu item identifier." -#~ msgstr "MENU-ITEM is het nummer, de titel, of het ID van een menu-item." - -#~ msgid "" -#~ "Requested serial terminal but GRUB_SERIAL_COMMAND is unspecified. Default " -#~ "parameters will be used." -#~ msgstr "" -#~ "Een seriële terminal werd verzocht maar GRUB_SERIAL_COMMAND is niet " -#~ "gegeven. Standaard parameters worden gebruikt." - -#~ msgid "Found theme: %s\\n" -#~ msgstr "Gevonden thema: %s\\n" - -#~ msgid "Found background: %s\\n" -#~ msgstr "Gevonden achtergrond: %s\\n" - -#~ msgid "Unsupported image format" -#~ msgstr "Niet-ondersteunde image-indeling" - -#~ msgid "" -#~ "Setting GRUB_TIMEOUT to a non-zero value when GRUB_HIDDEN_TIMEOUT is set " -#~ "is no longer supported." -#~ msgstr "" -#~ "Het instellen van GRUB_TIMEOUT ongelijk aan nul terwijl " -#~ "GRUB_HIDDEN_TIMEOUT ingesteld is, wordt niet langer ondersteund." - -#~ msgid "Found GNU Mach: %s" -#~ msgstr "GNU Mach gevonden: %s" - -#~ msgid "Found Hurd module: %s" -#~ msgstr "Hurd-module gevonden: %s" - -#~ msgid "Some Hurd stuff found, but not enough to boot." -#~ msgstr "" -#~ "Enige Hurd-dingen zijn gevonden, maar niet genoeg om te kunnen starten." - -#~ msgid "%s, with Hurd %s (recovery mode)" -#~ msgstr "%s, met Hurd %s (herstelmodus)" - -#~ msgid "%s, with Hurd %s" -#~ msgstr "%s, met Hurd %s" - -#~ msgid "" -#~ "Please don't use old title `%s' for GRUB_DEFAULT, use `%s' (for versions " -#~ "before 2.00) or `%s' (for 2.00 or later)" -#~ msgstr "" -#~ "Gebruik niet de oude titel '%s' voor GRUB_DEFAULT; gebruik of '%s' (voor " -#~ "versies vóór 2.00) of '%s' (voor 2.00 of later)." - -#~ msgid "Loading GNU Mach ..." -#~ msgstr "Laden van GNU Mach..." - -#~ msgid "Loading the Hurd ..." -#~ msgstr "Laden van de Hurd..." - -#~ msgid "Advanced options for %s" -#~ msgstr "Geavanceerde opties voor %s" - -#~ msgid "Loading kernel of Illumos ..." -#~ msgstr "Laden van kernel van Illumos..." - -#~ msgid "%s, with kFreeBSD %s (recovery mode)" -#~ msgstr "%s, met kFreeBSD %s (herstelmodus)" - -#~ msgid "%s, with kFreeBSD %s" -#~ msgstr "%s, met kFreeBSD %s" - -#~ msgid "Loading kernel of FreeBSD %s ..." -#~ msgstr "Laden van kernel van FreeBSD %s..." - -#~ msgid "Found kernel of FreeBSD: %s\\n" -#~ msgstr "Kernel van FreeBSD gevonden: %s\\n" - -#~ msgid "Found kernel module directory: %s\\n" -#~ msgstr "Map voor kernelmodules gevonden: %s\\n" - -#~ msgid "%s, with Linux %s (recovery mode)" -#~ msgstr "%s, met Linux %s (herstelmodus)" - -#~ msgid "%s, with Linux %s" -#~ msgstr "%s, met Linux %s" - -#~ msgid "Loading Linux %s ..." -#~ msgstr "Laden van Linux %s..." - -#~ msgid "Loading initial ramdisk ..." -#~ msgstr "Laden van initiële RAM-schijf..." - -#~ msgid "Found linux image: %s\\n" -#~ msgstr "Linux-image gevonden: %s\\n" - -#~ msgid "Found initrd image: %s\\n" -#~ msgstr "Initiële RAM-schijf-image gevonden: %s\\n" - -#~ msgid "%s, with kernel %s (via %s, recovery mode)" -#~ msgstr "%s, met kernel %s (via %s, herstelmodus)" - -#~ msgid "%s, with kernel %s (via %s)" -#~ msgstr "%s, met kernel %s (via %s)" - -#~ msgid "Found NetBSD kernel: %s\\n" -#~ msgstr "Kernel van NetBSD gevonden: %s\\n" - -#~ msgid "Windows Vista/7 (loader)" -#~ msgstr "Windows Vista/7 (lader)" - -#~ msgid "Windows NT/2000/XP (loader)" -#~ msgstr "Windows NT/2000/XP (lader)" - -#~ msgid "Found %s on %s (%s)\\n" -#~ msgstr "%s gevonden op %s (%s)\\n" - -#~ msgid "(32-bit)" -#~ msgstr "(32-bits)" - -#~ msgid "(64-bit)" -#~ msgstr "(64-bits)" - -#~ msgid "(on %s)" -#~ msgstr "(op %s)" - -#~ msgid "%s, with Xen %s and Linux %s (recovery mode)" -#~ msgstr "%s, met Xen %s en Linux %s (herstelmodus)" - -#~ msgid "%s, with Xen %s and Linux %s" -#~ msgstr "%s, met Xen %s en Linux %s" - -#~ msgid "%s, with Xen hypervisor" -#~ msgstr "%s, met Xen-hypervisor" - -#~ msgid "Loading Xen %s ..." -#~ msgstr "Laden van Xen %s..." - -#~ msgid "Xen hypervisor, version %s" -#~ msgstr "Xen-hypervisor, versie %s" - -#~ msgid "Advanced options for %s (with Xen hypervisor)" -#~ msgstr "Geavanceerde opties voor %s (met Xen-hypervisor)" - -#~ msgid "Found %s on %s\\n" -#~ msgstr "%s gevonden op %s\\n" - -#~ msgid "%s is not yet supported by grub-mkconfig.\\n" -#~ msgstr "%s wordt nog niet ondersteund door 'grub-mkconfig'.\\n" - -#~ msgid "Unsupported substitution flag: 0x%x\n" -#~ msgstr "Niet-ondersteunde vervangingsvlag: 0x%x\n" - -#~ msgid "Unknown gsub font feature 0x%x (%s)\n" -#~ msgstr "Onbekende 'gsub'-lettertypefunctie 0x%x (%s)\n" - -#~ msgid "assume isolinux." -#~ msgstr "isolinux aannemen" - -#~ msgid "assume pxelinux." -#~ msgstr "pxelinux aannemen" - -#~ msgid "assume syslinux." -#~ msgstr "syslinux aannemen" - -#~ msgid "%s is neither hfs nor hfsplus" -#~ msgstr "%s is noch 'hfs' noch 'hfsplus'" - -#~ msgid "copies GRUB images into net_directory/subdir/target_cpu-platform." -#~ msgstr "Kopieert GRUB-images naar netwerkmap/submap/doelcpu-platform." - -#~ msgid "" -#~ "print filesystem module, GRUB drive, system device, partition map module, " -#~ "abstraction module or cryptographic container UUID [default=fs]" -#~ msgstr "" -#~ "tonen van bestandssysteemmodule, GRUB-schijf, systeemapparaat, " -#~ "partitietabelmodule, abstractiemodule, of UUID van " -#~ "versleutelingscontainer [standaard is 'fs' (bestandssysteem)]" - -#~ msgid "use DIR as root directory [default=/]" -#~ msgstr "MAP gebruiken als hoofdmap [standaard=/]" - -#~ msgid "Address range not associated with RAM" -#~ msgstr "Adresbereik waar geen RAM aanwezig is" - -#~ msgid "PUBKEY_FILE" -#~ msgstr "PUBLIEKESLEUTELBESTAND" - -#~ msgid "grub_memalign is not supported on your system" -#~ msgstr "'grub_memalign' wordt niet ondersteund op uw systeem" - -#~ msgid "If FILENAME is `-', the default value %s is used." -#~ msgstr "Als BESTANDSNAAM '-' is, wordt de standaardwaarde %s gebruikt." - -#~ msgid "save only the ASCII bitmaps" -#~ msgstr "alleen de ASCII-bitkaarten opslaan" - -#~ msgid "create width summary file" -#~ msgstr "een breedtesamenvattingsbestand aanmaken" - -#~ msgid "Option --ascii-bitmaps doesn't accept ranges (it always uses ASCII)." -#~ msgstr "" -#~ "Optie '--ascii-bitmaps' accepteert geen bereiken (het gebruikt altijd " -#~ "ASCII)." - -#~ msgid "WARNING: your random generator isn't known to be secure\n" -#~ msgstr "" -#~ "WAARSCHUWING: het is niet zeker dat uw generator van willekeurige " -#~ "gegevens veilig is\n" - -#~ msgid "failed to read the first sector of the core image" -#~ msgstr "lezen van de eerste sector van de core-image is mislukt" - -#~ msgid "use FILE as grub-setup" -#~ msgstr "dit BESTAND gebruiken als 'grub-setup'" - -#~ msgid "use FILE as grub-mkrelpath" -#~ msgstr "dit BESTAND gebruiken als 'grub-mkrelpath'" - -#~ msgid "use FILE as grub-probe" -#~ msgstr "dit BESTAND gebruiken als 'grub-probe'" - -#~ msgid "INSTALL_DEVICE must be system device filename." -#~ msgstr "INSTALLATIE-APPARAAT moet een systeemapparaat-bestandsnaam zijn" - -#~ msgid "" -#~ "Path `%s' is not readable by GRUB on boot. Installation is impossible. " -#~ "Aborting.\\n" -#~ msgstr "" -#~ "Pad '%s' is bij opstarten niet leesbaar voor GRUB. Installatie is " -#~ "onmogelijk. Gestopt.\\n" - -#~ msgid "Auto-detection of a filesystem of %s failed.\\n" -#~ msgstr "Automatische detectie van bestandssysteem van %s is mislukt.\\n" - -#~ msgid "Try with --recheck." -#~ msgstr "Probeer het met optie '--recheck'." - -#~ msgid "" -#~ "If the problem persists please report this together with the output of %s " -#~ "to <%s>" -#~ msgstr "" -#~ "Als de fout blijft optreden, rapporteer dit dan aan <%2$s> samen met de " -#~ "uitvoer van '%$1s'." - -#~ msgid "`%s' failed.\\n" -#~ msgstr "'%s' is mislukt.\\n" - -#~ msgid "" -#~ "Can't find GRUB drive for %s; unable to create EFI Boot Manager entry.\\n" -#~ msgstr "" -#~ "Kan geen GRUB-schijf vinden voor %s; kan geen EFI-opstartmanager-item " -#~ "aanmaken.\\n" - -#~ msgid "Generating grub.cfg ..." -#~ msgstr "Aanmaken van 'grub.cfg'..." - -#~ msgid "use FILE as grub-glue-efi" -#~ msgstr "dit BESTAND gebruiken als 'grub-glue-efi'" - -#~ msgid "use FILE as grub-render-label" -#~ msgstr "dit BESTAND gebruiken als 'grub-render-label'" - -#~ msgid "Packed pixel " -#~ msgstr "Packed pixel " - -#~ msgid "use GRUB images from DIR. Takes precedence over target" -#~ msgstr "GRUB-images uit MAP gebruiken; gaat voor DOEL" - -#~ msgid "Storage info for `%s' does not include name" -#~ msgstr "Opslaginfo voor '%s' bevat niet de naam" - -#~ msgid "Bogus name length for storage info for `%s'" -#~ msgstr "Ongeldige naamlengte voor opslaginfo voor '%s'" - -#~ msgid "Storage name for `%s' not NUL-terminated" -#~ msgstr "Opslagnaam voor '%s' eindigt niet op NUL-teken" - -#~ msgid "Couldn't find physical volume `%s'. Check your device.map" -#~ msgstr "Kan fysiek volumen '%s' niet vinden. Controleer uw 'device.map'." - -#~ msgid "diskboot.img is not one sector size" -#~ msgstr "de grootte van diskboot.img is niet één sector" - -#~ msgid "loopback command fails" -#~ msgstr "het 'loopback'-commando is mislukt" - -#~ msgid "cryptomount command fails: %s" -#~ msgstr "het 'cryptomount'-commando is mislukt: %s" - -#~ msgid "%s: option requires an argument -- `%s'" -#~ msgstr "%s: optie vereist een argument -- '%s'" - -#~ msgid "Make GRUB rescue image." -#~ msgstr "Een noodhulpafbeelding van GRUB maken." - -#~ msgid "Show v2 and v3 tablesv only." -#~ msgstr "Alleen de v2- en v3-tabellen tonen." - -#~ msgid "Unknown " -#~ msgstr "(onbekend) " - -#~ msgid "Try `%s --help' for more information.\n" -#~ msgstr "Typ '%s --help' voor meer informatie.\n" - -#~ msgid "Usage: %s [OPTION] install_device" -#~ msgstr "Gebruik: %s [OPTIE] INSTALLATIE-APPARAAT" - -#~ msgid "Usage: %s [OPTION] [install_device]" -#~ msgstr "Gebruik: %s [OPTIE] [INSTALLATIE-APPARAAT]" - -#~ msgid "Usage: %s [OPTION] install_device\\n" -#~ msgstr "Gebruik: %s [OPTIE] INSTALLATIE-APPARAAT\\n" - -#~ msgid "Usage: %s [OPTION] entry\\n" -#~ msgstr "Gebruik: %s [OPTIE] ITEM\\n" - -#~ msgid "Expose v1 tables." -#~ msgstr "De v1-tabellen tonen." - -#~ msgid "Fake BIOS." -#~ msgstr "Nep-BIOS." - -#~ msgid "Check hash list file." -#~ msgstr "Hash-lijstbestand controleren." - -#~ msgid "DIRECTORY" -#~ msgstr "MAP" - -#~ msgid "Unload PXE environment." -#~ msgstr "PXE-omgeving de-activeren." - -#~ msgid "Read word from PORT." -#~ msgstr "Een word lezen uit POORT." - -#~ msgid "Read dword from PORT." -#~ msgstr "Een dword lezen uit POORT." - -#~ msgid "Write word VALUE to PORT." -#~ msgstr "Het word WAARDE schrijven naar POORT." - -#~ msgid "Write dword VALUE to PORT." -#~ msgstr "Het dword WAARDE schrijven naar POORT." - -#~ msgid "Read word from ADDR." -#~ msgstr "Een word lezen uit ADRES." - -#~ msgid "Read dword from ADDR." -#~ msgstr "Een dword lezen uit ADRES." - -#~ msgid "Write word VALUE to ADDR." -#~ msgstr "Het word WAARDE schrijven naar ADRES." - -#~ msgid "Write dword VALUE to ADDR." -#~ msgstr "Het dword WAARDE schrijven naar ADRES." - -#~ msgid "Menu entry definition as a string." -#~ msgstr "Definitie van menu-item (in vorm van tekenreeks)." - -#~ msgid "[DEVICE]" -#~ msgstr "[APPARAAT]" - -#~ msgid "Variable names to update with matches." -#~ msgstr "Met overeenkomsten bij te werken variabelenamen." - -#~ msgid "Authenticate users" -#~ msgstr "Gebruikers authenticeren" - -#~ msgid "UTF-8 visual" -#~ msgstr "visuele UTF-8" - -#~ msgid "write error" -#~ msgstr "schrijffout" - -#~ msgid "open error" -#~ msgstr "fout bij openen" - -#~ msgid "seek error" -#~ msgstr "'seek'-fout" - -#~ msgid "Hex dump FILE." -#~ msgstr "Een hex-dump tonen van BESTAND." - -#~ msgid "Must use absolute path.\n" -#~ msgstr "U dient een absoluut pad te gebruiken.\n" - -#~ msgid "the core image is too small" -#~ msgstr "de core-afbeelding is te klein" - -#~ msgid "prefix is too long" -#~ msgstr "voorvoegsel is te lang" - -#~ msgid "" -#~ "Usage: %s [OPTION]... [MODULES]\n" -#~ "\n" -#~ "Make a bootable image of GRUB.\n" -#~ "\n" -#~ " -d, --directory=DIR use images and modules under DIR [default=%s/" -#~ "@platform@]\n" -#~ " -p, --prefix=DIR set grub_prefix directory [default=%s]\n" -#~ " -m, --memdisk=FILE embed FILE as a memdisk image\n" -#~ " -c, --config=FILE embed FILE as boot config\n" -#~ " -n, --note add NOTE segment for CHRP Open Firmware\n" -#~ " -o, --output=FILE output a generated image to FILE " -#~ "[default=stdout]\n" -#~ " -O, --format=FORMAT generate an image in format\n" -#~ " available formats: %s\n" -#~ " -C, --compression=(xz|none|auto) choose the compression to use\n" -#~ " -h, --help display this message and exit\n" -#~ " -V, --version print version information and exit\n" -#~ " -v, --verbose print verbose messages\n" -#~ "\n" -#~ "Report bugs to <%s>.\n" -#~ msgstr "" -#~ "Gebruik: %s [OPTIE...] [MODULES]\n" -#~ "\n" -#~ "Maakt een opstartbare afbeelding van GRUB.\n" -#~ "\n" -#~ " -d, --directory=MAP afbeeldingen en modules onder MAP gebruiken;\n" -#~ " [standaard=%s]\n" -#~ " -p, --prefix=MAP de grub_prefix-MAP instellen [standaard=%s]\n" -#~ " -m, --memdisk=BESTAND BESTAND als een memdisk-afbeelding inbedden\n" -#~ " -c, --config=BESTAND BESTAND als boot-configuratie inbedden\n" -#~ " -n, --note een NOTE-segment toevoegen voor CHRP Open " -#~ "Firmware\n" -#~ " -o, --output=BESTAND een aangemaakte afbeelding naar BESTAND " -#~ "schrijven;\n" -#~ " [standaard=standaarduitvoer]\n" -#~ " -O, --format=INDELING een afbeelding in INDELING aanmaken;\n" -#~ " mogelijk zijn: %s\n" -#~ " -C, --compression=(xz|none|auto) de te gebruiken compressie\n" -#~ " -h, --help deze hulptekst tonen en stoppen\n" -#~ " -V, --version programmaversie tonen en stoppen\n" -#~ " -v, --verbose uitgebreide meldingen weergeven\n" -#~ "\n" -#~ "Rapporteer programmafouten aan <%s>.\n" - -#~ msgid "cannot open %s" -#~ msgstr "kan %s niet openen" - -#~ msgid "" -#~ "embedding is not possible, but this is required when the root device is " -#~ "on a RAID array or LVM volume" -#~ msgstr "" -#~ "inbedding is niet mogelijk, maar dit is wel vereist als het root-device " -#~ "op een RAID-array of LVM-volumen staat" - -#~ msgid "DEV" -#~ msgstr "APP" - -#~ msgid "Use DEV as the root device [default=guessed]" -#~ msgstr "APP als root-apparaat gebruiken [standaard is raden (guessed)]" - -#~ msgid "cannot guess the root device. Specify the option `--root-device'" -#~ msgstr "kan het root-apparaat niet raden; gebruik de optie '--root-device'" - -#~ msgid "List compatible VESA BIOS extension video modes." -#~ msgstr "Met VESA-BIOS compatibele video-modussen tonen." - -#~ msgid "Test VESA BIOS Extension 2.0+ support." -#~ msgstr "VESA BIOS Extension 2.0+-ondersteuning testen." - -#~ msgid "Set the root device." -#~ msgstr "Het root-apparaat instellen." - -#~ msgid "Simulate a hard drive with partitions." -#~ msgstr "Een harde schijf met partities nabootsen." - -#~ msgid "" -#~ "Attempting to install GRUB to a partition instead of the MBR. This is a " -#~ "BAD idea." -#~ msgstr "" -#~ "Poging om GRUB in een partitie te installeren in plaats van de MBR. Dit " -#~ "is een SLECHT idee." - -#~ msgid "No DOS-style partitions found" -#~ msgstr "Geen DOS-achtige partities gevonden" - -#~ msgid "if you really want blocklists, use --force" -#~ msgstr "wanneer u toch echt bloklijsten wilt, gebruik dan optie '--force'" - -#~ msgid "A boot catalog exists and appears corrupted.\n" -#~ msgstr "Een opstartcatalogus bestaat en lijkt misvormd.\n" - -#~ msgid "Please check the following file: %s.\n" -#~ msgstr "Controleer het volgende bestand: %s.\n" - -#~ msgid "This file must be removed before a bootable CD can be done.\n" -#~ msgstr "" -#~ "Dit bestand moet worden verwijderd voordat een opstartbare CD gemaakt kan " -#~ "worden.\n" - -#~ msgid "Error creating boot catalog (%s)" -#~ msgstr "Aanmaken van boot-catalogus is mislukt (%s)" - -#~ msgid "Error writing to boot catalog (%s)" -#~ msgstr "Schrijven naar boot-catalogus is mislukt (%s)" - -#~ msgid "Boot catalog cannot be found!\n" -#~ msgstr "Boot-catalogus is niet gevonden!\n" - -#~ msgid "Boot image cannot be found!\n" -#~ msgstr "Boot-afbeelding is niet gevonden!\n" - -#~ msgid "" -#~ "\n" -#~ "Size of boot image is %d sectors" -#~ msgstr "" -#~ "\n" -#~ "Grootte van boot-afbeelding is %d sectoren" - -#~ msgid "No emulation\n" -#~ msgstr "Geen emulatie\n" - -#~ msgid "Emulating a 1.44 meg floppy\n" -#~ msgstr "Emuleren van een 1.44 Mb floppy\n" - -#~ msgid "Emulating a 2.88 meg floppy\n" -#~ msgstr "Emuleren van een 2.88 Mb floppy\n" - -#~ msgid "Emulating a 1.2 meg floppy\n" -#~ msgstr "Emuleren van een 1.2 Mb floppy\n" - -#~ msgid "" -#~ "\n" -#~ "Error - boot image is not the an allowable size.\n" -#~ msgstr "" -#~ "\n" -#~ "Fout -- grootte boot-afbeelding is niet toegestaan.\n" - -#~ msgid "Error opening boot catalog for update" -#~ msgstr "Openen van boot-catalogus voor bijwerken is mislukt" - -#~ msgid "Error writing to boot catalog" -#~ msgstr "Schrijven naar boot-catalogus is mislukt" - -#~ msgid "Error opening boot image file '%s' for update" -#~ msgstr "Openen van boot-afbeeldingsbestand `%s' voor bijwerken is mislukt" - -#~ msgid "Odd alignment at non-end-of-file in boot image '%s'" -#~ msgstr "" -#~ "Vreemde uitlijning bij niet-einde-van-bestand in boot-afbeelding `%s'" - -#~ msgid "Boot image file '%s' changed unexpectedly" -#~ msgstr "Boot-afbeeldingsbestand `%s' is onverwacht gewijzigd" - -#~ msgid "Error writing to boot image (%s)" -#~ msgstr "Schrijven naar boot-afbeelding (%s) is mislukt" - -#~ msgid "Unable to generate sane path tables - too many directories (%d)\n" -#~ msgstr "" -#~ "Genereren van degelijke padtabellen is mislukt - te veel mappen (%d)\n" - -#~ msgid "Entry %d not in path tables\n" -#~ msgstr "Invoer %d niet in padtabellen\n" - -#~ msgid "Fatal goof - directory has amnesia\n" -#~ msgstr "Fatale flater - map leidt aan geheugenverlies\n" - -#~ msgid "Joliet path table lengths do not match %d %d\n" -#~ msgstr "Lengten Joliet-padtabel komen niet overeen met %d %d\n" - -#~ msgid "Unable to locate relocated directory\n" -#~ msgstr "Kan verplaatste map niet vinden\n" - -#~ msgid "Fatal goof - unable to find directory location\n" -#~ msgstr "Fatale flater - maplocatie is niet gevonden\n" - -#~ msgid "Unexpected joliet directory length %d %d %s\n" -#~ msgstr "Onverwachte Joliet-maplengte %d %d %s\n" - -#~ msgid "Using \"%s\"\n" -#~ msgstr "Gebruikt \"%s\"\n" - -#~ msgid "%s:%d: name required\n" -#~ msgstr "%s:%d: naam is vereist\n" - -#~ msgid "%s:%d: equals sign required\n" -#~ msgstr "%s:%d: gelijkteken is vereist\n" - -#~ msgid "%s:%d: field name \"%s\" unknown\n" -#~ msgstr "%s:%d: veldnaam \"%s\" is onbekend\n" - -#~ msgid "Usage: %s [options] file...\n" -#~ msgstr "Gebruik: %s [opties] bestand...\n" - -#~ msgid "Required boot image pathname missing\n" -#~ msgstr "Vereiste padnaam van boot-afbeelding ontbreekt\n" - -#~ msgid "Required boot catalog pathname missing\n" -#~ msgstr "Vereiste padnaam boot-catalogus ontbreekt\n" - -#~ msgid "Ignoring -no-emul-boot (no-emulation is the default behaviour)\n" -#~ msgstr "-no-emul-boot negeren (geen emulatie is het standaardgedrag)\n" - -#~ msgid "Application-id string too long\n" -#~ msgstr "Tekenreeks voor Applicatie-ID is te lang\n" - -#~ msgid "Bibliographic filename string too long\n" -#~ msgstr "Tekenreeks voor Bibliografische bestandsnaam is te lang\n" - -#~ msgid "Copyright filename string too long\n" -#~ msgstr "Tekenreeks voor Copyright-bestandsnaam is te lang\n" - -#~ msgid "Preparer string too long\n" -#~ msgstr "Tekenreeks voor Voorbereider is te lang\n" - -#~ msgid "Publisher string too long\n" -#~ msgstr "Tekenreeks voor Uitgever is te lang\n" - -#~ msgid "System ID string too long\n" -#~ msgstr "Tekenreeks voor Systeem-ID is te lang\n" - -#~ msgid "Volume ID string too long\n" -#~ msgstr "Tekenreeks voor Schijf-ID is te lang\n" - -#~ msgid "Volume set ID string too long\n" -#~ msgstr "Tekenreeks voor Schijvenset-ID is te lang\n" - -#~ msgid "Volume set sequence number too big\n" -#~ msgstr "Volgordenummer schijvenset is te groot\n" - -#~ msgid "date string must be 16 characters.\n" -#~ msgstr "datumtekenreeks dient 16 tekens te bedragen.\n" - -#~ msgid "Multisession usage bug: Must specify -C if -M is used.\n" -#~ msgstr "" -#~ "Fout in gebruik multisessie: -C moet worden opgegeven bij gebruik van -" -#~ "M.\n" - -#~ msgid "" -#~ "Warning: -C specified without -M: old session data will not be merged.\n" -#~ msgstr "" -#~ "Waarschuwing: -C opgegeven zonder -M: oude sessiegegevens worden niet " -#~ "samengevoegd.\n" - -#~ msgid "re-directing all messages to %s\n" -#~ msgstr "alle meldingen worden doorgestuurd naar %s\n" - -#~ msgid "can't open logfile: %s\n" -#~ msgstr "kan logbestand %s niet openen\n" - -#~ msgid "Unable to open previous session image %s\n" -#~ msgstr "Openen van vorige sessieafbeelding %s is mislukt\n" - -#~ msgid "Joliet tree sort failed.\n" -#~ msgstr "Sorteren van Joliet-boom is mislukt.\n" - -#~ msgid "Unable to open /dev/null\n" -#~ msgstr "Kan /dev/null niet openen\n" - -#~ msgid "Unable to open disc image file\n" -#~ msgstr "Kan bestand met schijfafbeelding niet openen\n" - -#~ msgid "Max brk space used %x\n" -#~ msgstr "Maximaal gebruikte brk-ruimte %x\n" - -#~ msgid "%llu extents written (%llu MiB)\n" -#~ msgstr "%llu extents geschreven (%llu MiB)\n" - -#~ msgid "Seek error on old image\n" -#~ msgstr "Zoekfout op oude afbeelding\n" - -#~ msgid "**Bad RR version attribute" -#~ msgstr "**Slecht RR-versieattribuut" - -#~ msgid "" -#~ "Warning: Neither Rock Ridge (-R) nor TRANS.TBL (-T) name translations " -#~ "were found on previous session. ISO (8.3) file names have been used " -#~ "instead.\n" -#~ msgstr "" -#~ "Waarschuwing: noch Rock Ridge (-R), noch TRANS.TBL (-T) naamvertalingen " -#~ "zijn gevonden bij de vorige sessie. In plaats daarvan zijn ISO (8.3) " -#~ "bestandsnamen gebruikt.\n" - -#~ msgid "Read error on old image %s\n" -#~ msgstr "Leesfout op oude afbeelding %s\n" - -#~ msgid "Special parameters for cdwrite not specified with -C\n" -#~ msgstr "Speciale parameter voor cdwrite niet opgegeven met -C\n" - -#~ msgid "Malformed cdwrite parameters\n" -#~ msgstr "Misvormde cdwrite-parameters\n" - -#~ msgid "symbolic link ``%s'' to long for one SL System Use Field, splitting" -#~ msgstr "" -#~ "symbolische koppeling ``%s'' te lang voor een SL System Use Field, wordt " -#~ "opgesplitst" - -#~ msgid "Unable to insert transparent compressed file - name conflict\n" -#~ msgstr "" -#~ "Kan transparant gecomprimeerd bestand niet invoegen - naamconflict\n" - -#~ msgid "Extension record too long\n" -#~ msgstr "Extensie-record is te lang\n" - -#~ msgid "Fatal goof\n" -#~ msgstr "Fatale flater\n" - -#~ msgid "Unable to generate unique name for file %s\n" -#~ msgstr "Genereren unieke naam voor bestand %s is mislukt\n" - -#~ msgid "Fatal error - RR overflow for file %s\n" -#~ msgstr "Fatale fout - RR-overloop voor bestand %s\n" - -#~ msgid "Translation table size mismatch %d %d\n" -#~ msgstr "Grootte vertaaltabel komt niet overeen %d %d\n" - -#~ msgid "Unable to locate directory parent\n" -#~ msgstr "Vinden van bovenliggende map is mislukt\n" - -#~ msgid "Overflow of stat buffer\n" -#~ msgstr "Overloop van stat-buffer\n" - -#~ msgid "Excluded by match: %s\n" -#~ msgstr "Uitgesloten via overeenkomst: %s\n" - -#~ msgid "Excluded: %s\n" -#~ msgstr "Uitgesloten: %s\n" - -#~ msgid "Non-existant or inaccessible: %s\n" -#~ msgstr "Niet-bestaand of ontoegankelijk: %s\n" - -#~ msgid "Symlink %s ignored - continuing.\n" -#~ msgstr "Symbolische koppeling %s genegeerd - doorgaan.\n" - -#~ msgid "Already cached directory seen (%s)\n" -#~ msgstr "Reeds gebufferde map gezien (%s)\n" - -#~ msgid "File %s is not readable (%s) - ignoring\n" -#~ msgstr "Bestand %s is niet leesbaar (%s) - negeren\n" - -#~ msgid "Directory loop - fatal goof (%s %lx %lu).\n" -#~ msgstr "Mappenlus - fatale flater (%s %lx %lu).\n" - -#~ msgid "Unknown file type %s - ignoring and continuing.\n" -#~ msgstr "Onbekend bestandstype %s - negeren en doorgaan.\n" - -#~ msgid "Hidden from ISO9660 tree: %s\n" -#~ msgstr "Verborgen voor ISO9660-boom: %s\n" - -#~ msgid "Hidden from Joliet tree: %s\n" -#~ msgstr "Verborgen voor Joliet-boom: %s\n" - -#~ msgid "Directories too deep %s\n" -#~ msgstr "Mappenstructuur is te diep %s\n" - -#~ msgid "Unable to locate child directory in parent list\n" -#~ msgstr "Kan kind-map niet vinden in ouder-lijst\n" - -#~ msgid "Cannot open '%s'" -#~ msgstr "Openen van '%s' is mislukt" - -#~ msgid "%6.2f%% done, estimate finish %s" -#~ msgstr "%6.2f%% gedaan, verwachte afronding %s" - -#~ msgid "Cache hit for %s%s%s\n" -#~ msgstr "Bufferovereenkomst voor %s%s%s\n" - -#~ msgid "Unexpected directory length %d %d %s\n" -#~ msgstr "Onverwachte maplengte %d %d %s\n" - -#~ msgid "Continuation entry record length mismatch (%d %d).\n" -#~ msgstr "Recordlengtes van voortzettingsitem komt niet overeen (%d %d).\n" - -#~ msgid "Path table lengths do not match %d %d\n" -#~ msgstr "Lengtes van padtabel komen niet overeen %d %d\n" - -#~ msgid "Predicted = %d, written = %llu\n" -#~ msgstr "Verwacht = %d, weggeschreven = %llu\n" - -#~ msgid "Path table size(bytes): %d\n" -#~ msgstr "Grootte van padtabel (bytes): %d\n" diff --git a/thirdparty/grub-2.04/po/pa.gmo b/thirdparty/grub-2.04/po/pa.gmo deleted file mode 100644 index 3f3f6fb879361e25e1870fea82cd374245734f51..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 60190 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 diff --git a/thirdparty/grub-2.04/po/pa.po b/thirdparty/grub-2.04/po/pa.po deleted file mode 100644 index 064e09b9e..000000000 --- a/thirdparty/grub-2.04/po/pa.po +++ /dev/null @@ -1,6637 +0,0 @@ -# Punjabi Translation for grub -# Copyright (C) 2012 Free Software Foundation, Inc. -# This file is distributed under the same license as the grub package. -# -# A S Alam , 2012. -msgid "" -msgstr "" -"Project-Id-Version: grub 2.0.0-pre6\n" -"Report-Msgid-Bugs-To: bug-grub@gnu.org\n" -"POT-Creation-Date: 2019-07-04 16:09+0200\n" -"PO-Revision-Date: 2012-05-19 19:45+0530\n" -"Last-Translator: A S Alam \n" -"Language-Team: Punjabi \n" -"Language: pa\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Bugs: Report translation errors to the Language-Team address.\n" -"Plural-Forms: nplurals=2; plural=n != 1;\n" -"X-Generator: Lokalize 1.4\n" - -#: grub-core/bus/usb/serial/ftdi.c:145 grub-core/bus/usb/serial/pl2303.c:158 -#: grub-core/term/ieee1275/escc.c:169 grub-core/term/ns8250.c:202 -msgid "unsupported serial port speed" -msgstr "ਗ਼ੈਰ-ਸਹਾਇਕ ਸੀਰੀਅਲ ਪੋਰਟ ਸਪੀਡ" - -#: grub-core/bus/usb/serial/ftdi.c:151 grub-core/bus/usb/serial/pl2303.c:164 -#: grub-core/term/efi/serial.c:116 grub-core/term/ieee1275/escc.c:175 -#: grub-core/term/ns8250.c:208 grub-core/term/serial.c:227 -#: grub-core/term/serial.c:243 -msgid "unsupported serial port parity" -msgstr "" - -#: grub-core/bus/usb/serial/ftdi.c:157 grub-core/bus/usb/serial/pl2303.c:170 -#: grub-core/term/efi/serial.c:122 grub-core/term/ieee1275/escc.c:181 -#: grub-core/term/ns8250.c:213 grub-core/term/serial.c:267 -msgid "unsupported serial port stop bits number" -msgstr "ਗ਼ੈਰ-ਸਹਾਇਕ ਸੀਰੀਅਲ ਪੋਰਟ ਸਟਾਪ ਬਿੱਟ ਨੰਬਰ" - -#: grub-core/bus/usb/serial/ftdi.c:161 grub-core/bus/usb/serial/pl2303.c:174 -#: grub-core/term/efi/serial.c:126 grub-core/term/ieee1275/escc.c:185 -#: grub-core/term/ns8250.c:217 -msgid "unsupported serial port word length" -msgstr "ਗ਼ੈਰ-ਸਹਾਇਕ ਸੀਰੀਅਲ ਪੋਰਟ ਸ਼ਬਦ ਲੰਬਾਈ" - -#: grub-core/commands/acpi.c:42 -msgid "Don't load host tables specified by comma-separated list." -msgstr "ਕਾਮਿਆਂ ਨਾਲ ਵੱਖ ਕੀਤੀ ਲਿਸਟ ਤੋਂ ਹੋਸਟ ਟੇਬਲ ਲੋਡ ਨਾ ਕਰੋ।" - -#: grub-core/commands/acpi.c:45 -msgid "Load only tables specified by comma-separated list." -msgstr "ਕਾਮਿਆਂ-ਨਾਲ ਵੱਖ ਕੀਤੀ ਸੂਚੀ ਰਾਹੀਂ ਦਿੱਤੇ ਟੇਬਲ ਹੀ ਲੋਡ ਕਰੋ" - -#: grub-core/commands/acpi.c:46 -msgid "Export version 1 tables to the OS." -msgstr "ਵਰਜਨ 1 ਟੇਬਲ ਨੂੰ OS ਲਈ à¨à¨•ਸਪੋਰਟ ਕਰੋ।" - -#: grub-core/commands/acpi.c:47 -msgid "Export version 2 and version 3 tables to the OS." -msgstr "OS ਲਈ ਵਰਜਨ 2 ਅਤੇ ਵਰਜਨ 3 ਟੇਬਲ à¨à¨•ਸਪੋਰਟ ਕਰੋ।" - -#: grub-core/commands/acpi.c:48 -msgid "Set OEMID of RSDP, XSDT and RSDT." -msgstr "RSDP, XSDT ਅਤੇ RSDT ਦਾ OEMID ਸੈੱਟ ਕਰੋ।" - -#: grub-core/commands/acpi.c:50 -msgid "Set OEMTABLE ID of RSDP, XSDT and RSDT." -msgstr "" - -#: grub-core/commands/acpi.c:52 -msgid "Set OEMTABLE revision of RSDP, XSDT and RSDT." -msgstr "" - -#: grub-core/commands/acpi.c:54 -msgid "Set creator field of RSDP, XSDT and RSDT." -msgstr "RSDP, XSDT ਅਤੇ RSDT ਲਈ ਕਰੀà¨à¨Ÿà¨° ਖੇਤਰ ਦਿਉ।" - -#: grub-core/commands/acpi.c:56 -msgid "Set creator revision of RSDP, XSDT and RSDT." -msgstr "RSDP, XSDT ਅਤੇ RSDT ਲਈ ਕਰੀà¨à¨Ÿà¨° ਰੀਵਿਜ਼ਨ ਸੈੱਟ ਕਰੋ" - -#. TRANSLATORS: "hangs" here is a noun, not a verb. -#: grub-core/commands/acpi.c:58 -msgid "" -"Don't update EBDA. May fix failures or hangs on some BIOSes but makes it " -"ineffective with OS not receiving RSDP from GRUB." -msgstr "" - -#: grub-core/commands/acpi.c:650 grub-core/commands/acpi.c:667 -#: grub-core/commands/i386/pc/play.c:105 grub-core/commands/keylayouts.c:230 -#: grub-core/commands/keylayouts.c:245 grub-core/commands/keylayouts.c:263 -#: grub-core/commands/verifiers.c:156 grub-core/efiemu/loadcore.c:350 -#: grub-core/kern/elf.c:117 grub-core/kern/elfXX.c:29 -#: grub-core/kern/elfXX.c:156 grub-core/loader/arm/linux.c:319 -#: grub-core/loader/arm64/linux.c:330 grub-core/loader/arm64/xen_boot.c:356 -#: grub-core/loader/efi/chainloader.c:276 -#: grub-core/loader/efi/chainloader.c:297 -#: grub-core/loader/efi/chainloader.c:329 grub-core/loader/efi/fdt.c:138 -#: grub-core/loader/i386/bsd.c:1276 grub-core/loader/i386/bsd.c:2116 -#: grub-core/loader/i386/bsdXX.c:20 grub-core/loader/i386/bsdXX.c:36 -#: grub-core/loader/i386/bsdXX.c:63 grub-core/loader/i386/bsdXX.c:357 -#: grub-core/loader/i386/bsdXX.c:376 grub-core/loader/i386/bsdXX.c:519 -#: grub-core/loader/i386/bsdXX.c:535 grub-core/loader/i386/bsdXX.c:615 -#: grub-core/loader/i386/bsdXX.c:638 -#: grub-core/loader/i386/coreboot/chainloader.c:112 -#: grub-core/loader/i386/coreboot/chainloader.c:148 -#: grub-core/loader/i386/coreboot/chainloader.c:170 -#: grub-core/loader/i386/linux.c:667 grub-core/loader/i386/linux.c:788 -#: grub-core/loader/i386/linux.c:1005 grub-core/loader/i386/multiboot_mbi.c:171 -#: grub-core/loader/i386/pc/chainloader.c:202 -#: grub-core/loader/i386/pc/linux.c:149 grub-core/loader/i386/pc/linux.c:320 -#: grub-core/loader/i386/pc/linux.c:362 grub-core/loader/i386/pc/plan9.c:457 -#: grub-core/loader/i386/pc/plan9.c:550 grub-core/loader/i386/pc/plan9.c:566 -#: grub-core/loader/i386/xen.c:934 grub-core/loader/i386/xen_file.c:72 -#: grub-core/loader/i386/xen_fileXX.c:43 grub-core/loader/i386/xen_fileXX.c:186 -#: grub-core/loader/i386/xen_fileXX.c:339 grub-core/loader/ia64/efi/linux.c:423 -#: grub-core/loader/ia64/efi/linux.c:471 grub-core/loader/linux.c:286 -#: grub-core/loader/macho.c:84 grub-core/loader/macho.c:109 -#: grub-core/loader/machoXX.c:33 grub-core/loader/machoXX.c:46 -#: grub-core/loader/machoXX.c:76 grub-core/loader/machoXX.c:116 -#: grub-core/loader/machoXX.c:131 grub-core/loader/machoXX.c:147 -#: grub-core/loader/machoXX.c:196 grub-core/loader/machoXX.c:317 -#: grub-core/loader/multiboot.c:434 grub-core/loader/multiboot_elfxx.c:171 -#: grub-core/loader/multiboot_elfxx.c:234 -#: grub-core/loader/multiboot_elfxx.c:278 grub-core/loader/multiboot_mbi2.c:129 -#: grub-core/loader/xnu.c:737 grub-core/loader/xnu.c:795 -#: grub-core/loader/xnu.c:816 grub-core/loader/xnu.c:871 -#: grub-core/loader/xnu.c:914 grub-core/loader/xnu.c:952 -#: grub-core/loader/xnu_resume.c:68 grub-core/loader/xnu_resume.c:153 -#: grub-core/loader/xnu_resume.c:165 util/grub-mkimagexx.c:2288 -#, c-format -msgid "premature end of file %s" -msgstr "ਫਾਇਲ %s ਦਾ ਅਧੂਰਾ ਅੰਤ" - -#: grub-core/commands/acpi.c:779 -msgid "" -"[-1|-2] [--exclude=TABLE1,TABLE2|--load-only=TABLE1,TABLE2] FILE1 [FILE2] " -"[...]" -msgstr "" -"[-1|-2] [--exclude=TABLE1,TABLE2|--load-only=TABLE1,TABLE2] FILE1 [FILE2] " -"[...]" - -#: grub-core/commands/acpi.c:782 -msgid "Load host ACPI tables and tables specified by arguments." -msgstr "" - -#: grub-core/commands/acpihalt.c:368 grub-core/kern/err.c:110 -#, c-format -msgid "error: %s.\n" -msgstr "ਗਲਤੀ: %s\n" - -#: grub-core/commands/acpihalt.c:368 grub-core/kern/emu/misc.c:95 -#: grub-core/kern/emu/misc.c:105 grub-core/kern/emu/misc.c:134 -#: grub-core/kern/emu/mm.c:34 grub-core/kern/emu/mm.c:62 -#: grub-core/kern/mm.c:374 grub-core/lib/relocator.c:1282 -#: grub-core/lib/relocator.c:1439 grub-core/lib/relocator.c:1538 -#: grub-core/loader/arm/linux.c:259 grub-core/loader/arm64/linux.c:265 -#: grub-core/loader/arm64/linux.c:321 grub-core/loader/arm64/linux.c:340 -#: grub-core/loader/arm64/xen_boot.c:344 grub-core/loader/arm64/xen_boot.c:367 -#: grub-core/loader/efi/chainloader.c:289 grub-core/osdep/unix/dl.c:48 -#: grub-core/osdep/windows/dl.c:46 grub-core/script/lexer.c:156 -#: grub-core/script/lexer.c:182 -msgid "out of memory" -msgstr "ਮੈਮੋਰੀ ਖਤਮ ਹੋਈ" - -#: grub-core/commands/acpihalt.c:374 grub-core/disk/cryptodisk.c:587 -#: grub-core/disk/cryptodisk.c:632 grub-core/kern/emu/hostdisk.c:307 -#: grub-core/kern/emu/hostfs.c:149 grub-core/kern/emu/misc.c:200 -#: grub-core/osdep/linux/ofpath.c:195 grub-core/osdep/linux/ofpath.c:521 -#: grub-core/osdep/linux/ofpath.c:534 util/glue-efi.c:80 util/glue-efi.c:94 -#: util/grub-editenv.c:155 util/grub-fstest.c:577 -#: util/grub-install-common.c:943 util/grub-mkrescue.c:634 -#: util/grub-mkrescue.c:888 util/grub-mount.c:506 util/grub-render-label.c:176 -#: util/misc.c:95 util/setup.c:814 util/setup.c:833 -#, c-format -msgid "cannot read `%s': %s" -msgstr "`%s' ਨੂੰ ਪੜà©à¨¹à¨¿à¨† ਨਹੀਂ ਜਾ ਸਕਦਾ: %s" - -#. TRANSLATORS: It's computer shutdown using ACPI, not disabling ACPI. -#: grub-core/commands/acpihalt.c:452 -msgid "ACPI shutdown failed" -msgstr "ACPI ਬੰਦ ਕਰਨਾ ਫੇਲà©à¨¹ ਹੈ" - -#: grub-core/commands/arc/lsdev.c:51 -msgid "List devices." -msgstr "ਜੰਤਰ ਦੀ ਸੂਚੀ।" - -#: grub-core/commands/blocklist.c:122 grub-core/commands/cat.c:57 -#: grub-core/commands/configfile.c:35 grub-core/commands/efi/loadbios.c:168 -#: grub-core/commands/file.c:159 grub-core/commands/hexdump.c:47 -#: grub-core/commands/legacycfg.c:209 grub-core/commands/legacycfg.c:315 -#: grub-core/commands/minicmd.c:44 grub-core/commands/syslinuxcfg.c:146 -#: grub-core/commands/testload.c:58 grub-core/commands/testspeed.c:52 -#: grub-core/disk/loopback.c:93 grub-core/efiemu/main.c:293 -#: grub-core/font/font_cmd.c:32 grub-core/kern/emu/hostdisk.c:519 -#: grub-core/loader/arm/linux.c:364 grub-core/loader/arm/linux.c:409 -#: grub-core/loader/arm/linux.c:472 grub-core/loader/arm64/linux.c:243 -#: grub-core/loader/arm64/linux.c:297 grub-core/loader/arm64/xen_boot.c:398 -#: grub-core/loader/arm64/xen_boot.c:411 grub-core/loader/arm64/xen_boot.c:462 -#: grub-core/loader/efi/chainloader.c:216 grub-core/loader/i386/bsd.c:1462 -#: grub-core/loader/i386/bsd.c:1807 grub-core/loader/i386/bsd.c:2085 -#: grub-core/loader/i386/coreboot/chainloader.c:438 -#: grub-core/loader/i386/linux.c:656 grub-core/loader/i386/linux.c:1041 -#: grub-core/loader/i386/pc/chainloader.c:290 -#: grub-core/loader/i386/pc/freedos.c:105 grub-core/loader/i386/pc/linux.c:138 -#: grub-core/loader/i386/pc/linux.c:400 grub-core/loader/i386/pc/ntldr.c:85 -#: grub-core/loader/i386/pc/plan9.c:409 -#: grub-core/loader/i386/pc/pxechainloader.c:94 -#: grub-core/loader/i386/pc/truecrypt.c:96 grub-core/loader/i386/xen.c:641 -#: grub-core/loader/i386/xen.c:768 grub-core/loader/i386/xen.c:844 -#: grub-core/loader/i386/xen.c:854 grub-core/loader/i386/xnu.c:488 -#: grub-core/loader/ia64/efi/linux.c:459 grub-core/loader/ia64/efi/linux.c:539 -#: grub-core/loader/mips/linux.c:238 grub-core/loader/mips/linux.c:429 -#: grub-core/loader/multiboot.c:322 grub-core/loader/multiboot.c:374 -#: grub-core/loader/multiboot.c:384 -#: grub-core/loader/powerpc/ieee1275/linux.c:269 -#: grub-core/loader/powerpc/ieee1275/linux.c:341 -#: grub-core/loader/sparc64/ieee1275/linux.c:305 -#: grub-core/loader/sparc64/ieee1275/linux.c:381 grub-core/loader/xnu.c:351 -#: grub-core/loader/xnu.c:460 grub-core/loader/xnu.c:778 -#: grub-core/loader/xnu.c:892 grub-core/loader/xnu.c:1277 -#: grub-core/loader/xnu.c:1427 grub-core/loader/xnu.c:1453 -#: grub-core/video/readers/jpeg.c:812 grub-core/video/readers/png.c:1123 -msgid "filename expected" -msgstr "ਫਾਇਲ-ਨਾਂ ਦੀ ਲੋੜ ਸੀ" - -#. TRANSLATORS: "embed" is a verb (command description). " -#: grub-core/commands/blocklist.c:154 grub-core/commands/cat.c:163 -#: grub-core/commands/configfile.c:65 grub-core/commands/configfile.c:68 -#: grub-core/commands/configfile.c:74 grub-core/commands/configfile.c:80 -#: grub-core/commands/configfile.c:86 grub-core/commands/hashsum.c:34 -#: grub-core/commands/legacycfg.c:834 grub-core/commands/legacycfg.c:841 -#: grub-core/commands/legacycfg.c:846 grub-core/commands/legacycfg.c:851 -#: grub-core/commands/macbless.c:222 grub-core/commands/minicmd.c:198 -#: grub-core/commands/syslinuxcfg.c:186 grub-core/commands/syslinuxcfg.c:194 -#: grub-core/commands/syslinuxcfg.c:200 grub-core/commands/syslinuxcfg.c:206 -#: grub-core/commands/testload.c:163 grub-core/efiemu/main.c:312 -#: grub-core/kern/emu/main.c:100 grub-core/kern/emu/main.c:103 -#: grub-core/loader/i386/bsd.c:2137 grub-core/loader/i386/bsd.c:2140 -#: grub-core/loader/i386/bsd.c:2143 -#: grub-core/loader/i386/coreboot/chainloader.c:505 -#: grub-core/loader/ia64/efi/linux.c:594 include/grub/util/install.h:32 -#: include/grub/util/install.h:64 util/grub-glue-efi.c:52 -#: util/grub-glue-efi.c:54 util/grub-glue-efi.c:56 util/grub-install.c:254 -#: util/grub-install.c:301 util/grub-mkfont.c:936 util/grub-mkimage.c:68 -#: util/grub-mkimage.c:74 util/grub-mkimage.c:76 util/grub-mkimage.c:78 -#: util/grub-mkimage.c:81 util/grub-mklayout.c:52 util/grub-mklayout.c:54 -#: util/grub-mkrescue.c:97 util/grub-mkrescue.c:101 util/grub-mkrescue.c:104 -#: util/grub-mkrescue.c:105 util/grub-mkrescue.c:106 -#: util/grub-mkstandalone.c:47 util/grub-mkstandalone.c:49 -#: util/grub-probe.c:732 util/grub-render-label.c:59 -#: util/grub-render-label.c:70 util/grub-render-label.c:72 util/grub-setup.c:78 -#: util/grub-setup.c:80 util/grub-setup.c:84 util/grub-syslinux2cfg.c:74 -#: util/grub-syslinux2cfg.c:147 -msgid "FILE" -msgstr "ਫਾਇਲ" - -#: grub-core/commands/blocklist.c:154 -msgid "Print a block list." -msgstr "ਬਲਾਕ ਲਿਸਟ ਪਰਿੰਟ ਕਰੋ।" - -#: grub-core/commands/boot.c:147 grub-core/commands/legacycfg.c:533 -#: grub-core/commands/legacycfg.c:574 grub-core/loader/arm64/linux.c:250 -#: grub-core/loader/i386/bsd.c:1799 grub-core/loader/i386/bsd.c:1900 -#: grub-core/loader/i386/bsd.c:2007 grub-core/loader/i386/bsd.c:2040 -#: grub-core/loader/i386/bsd.c:2089 grub-core/loader/i386/linux.c:1047 -#: grub-core/loader/i386/pc/linux.c:406 grub-core/loader/i386/xen.c:775 -#: grub-core/loader/i386/xen.c:859 grub-core/loader/ia64/efi/linux.c:545 -#: grub-core/loader/mips/linux.c:432 grub-core/loader/multiboot.c:388 -#: grub-core/loader/powerpc/ieee1275/linux.c:347 -#: grub-core/loader/sparc64/ieee1275/linux.c:387 grub-core/loader/xnu.c:572 -#: grub-core/loader/xnu.c:665 grub-core/loader/xnu.c:781 -#: grub-core/loader/xnu.c:895 grub-core/loader/xnu.c:1091 -#: grub-core/loader/xnu.c:1258 grub-core/loader/xnu.c:1289 -#: grub-core/loader/xnu.c:1430 -msgid "you need to load the kernel first" -msgstr "ਤà©à¨¹à¨¾à¨¨à©‚à©° ਪਹਿਲਾਂ ਕਰਨਲ ਲੋਡ ਕਰਨ ਦੀ ਲੋੜ ਹੈ।" - -#: grub-core/commands/boot.c:189 -msgid "Boot an operating system." -msgstr "ਓਪਰੇਟਿੰਗ ਸਿਸਟਮ ਬੂਟ ਕਰੋ।" - -#: grub-core/commands/boottime.c:36 -#: grub-core/commands/i386/coreboot/cb_timestamps.c:108 -#, fuzzy -msgid "No boot time statistics is available\n" -msgstr "ਕੋਈ ਡਿਸਕ ਕੈਸ਼ ਅੰਕੜੇ ਉਪਲੱਬਧ ਨਹੀਂ ਹਨ\n" - -#: grub-core/commands/boottime.c:59 -msgid "Show boot time statistics." -msgstr "" - -#: grub-core/commands/cacheinfo.c:40 -#, c-format -msgid "Disk cache statistics: hits = %lu (%lu.%02lu%%), misses = %lu\n" -msgstr "ਡਿਸਕ ਕੈਸ਼ ਅੰਕੜੇ: ਸਹੀ = %lu (%lu.%02lu%%), ਖà©à©°à¨à©‡ = %lu\n" - -#: grub-core/commands/cacheinfo.c:45 -msgid "No disk cache statistics available\n" -msgstr "ਕੋਈ ਡਿਸਕ ਕੈਸ਼ ਅੰਕੜੇ ਉਪਲੱਬਧ ਨਹੀਂ ਹਨ\n" - -#: grub-core/commands/cacheinfo.c:56 -msgid "Get disk cache info." -msgstr "ਡਿਸਕ ਕੈਸ਼ ਜਾਣਕਾਰੀ ਲਵੋ।" - -#: grub-core/commands/cat.c:33 -msgid "Accept DOS-style CR/NL line endings." -msgstr "" - -#: grub-core/commands/cat.c:163 grub-core/commands/minicmd.c:198 -msgid "Show the contents of a file." -msgstr "ਫਾਇਲ ਦੀ ਸਮੱਗਰੀ ਵੇਖੋ।" - -#: grub-core/commands/cmp.c:43 grub-core/commands/i386/pc/drivemap.c:239 -#: grub-core/commands/i386/wrmsr.c:60 grub-core/commands/iorw.c:85 -#: grub-core/commands/memrw.c:84 grub-core/commands/password.c:75 -#: grub-core/commands/password_pbkdf2.c:94 grub-core/commands/pgp.c:826 -#: grub-core/commands/regexp.c:113 grub-core/mmap/mmap.c:517 -#: grub-core/net/dns.c:639 -msgid "two arguments expected" -msgstr "ਦੋ ਆਰਗੂਮੈਂਟ ਦੀ ਲੋੜ ਹੈ" - -#: grub-core/commands/cmp.c:45 -#, c-format -msgid "Compare file `%s' with `%s':\n" -msgstr "`%s' ਫਾਇਲ ਦੀ `%s' ਨਾਲ ਤà©à¨²à¨¨à¨¾:\n" - -#: grub-core/commands/cmp.c:54 -#, c-format -msgid "Files differ in size: %llu [%s], %llu [%s]\n" -msgstr "ਫਾਇਲ ਆਕਾਰ ਵਿੱਚ ਅੰਤਰ: %llu [%s], %llu [%s]\n" - -#: grub-core/commands/cmp.c:81 -#, c-format -msgid "Files differ at the offset %llu: 0x%x [%s], 0x%x [%s]\n" -msgstr "" - -#. TRANSLATORS: it's always exactly 2 files. -#: grub-core/commands/cmp.c:93 -msgid "The files are identical.\n" -msgstr "ਫਾਇਲਾਂ ਇਕੋ ਜੇਹੀਆਂ ਹਨ।\n" - -#: grub-core/commands/cmp.c:113 -msgid "FILE1 FILE2" -msgstr "ਫਾਇਲ1 ਫਾਇਲ2" - -#: grub-core/commands/cmp.c:113 -msgid "Compare two files." -msgstr "ਦੋ ਫਾਇਲਾਂ ਦੀ ਤà©à¨²à¨¨à¨¾à¥¤" - -#: grub-core/commands/configfile.c:65 -msgid "Load another config file." -msgstr "ਹੋਰ ਸੰਰਚਨਾ ਫਾਇਲ ਲੋਡ ਕਰੋ।" - -#: grub-core/commands/configfile.c:69 grub-core/commands/configfile.c:87 -msgid "Load another config file without changing context." -msgstr "ਬਿਨਾਂ ਪਰਸੰਗ ਬਦਲੇ ਹੋਰ ਸੰਰਚਨਾ ਫਾਇਲ ਲੋਡ ਕਰੋ।" - -#: grub-core/commands/configfile.c:75 -msgid "" -"Load another config file without changing context but take only menu entries." -msgstr "ਬਿਨਾਂ ਪਰਸੰਗ ਬਦਲੇ ਬਿਨਾਂ, ਪਰ ਕੇਵਲ ਮੇਨੂ à¨à¨Ÿà¨°à©€à¨†à¨‚ ਨਾਲ ਹੋਰ ਸੰਰਚਨਾ ਫਾਇਲ ਲੋਡ ਕਰੋ।" - -#: grub-core/commands/configfile.c:81 -#, fuzzy -msgid "Load another config file but take only menu entries." -msgstr "ਬਿਨਾਂ ਪਰਸੰਗ ਬਦਲੇ ਬਿਨਾਂ, ਪਰ ਕੇਵਲ ਮੇਨੂ à¨à¨Ÿà¨°à©€à¨†à¨‚ ਨਾਲ ਹੋਰ ਸੰਰਚਨਾ ਫਾਇਲ ਲੋਡ ਕਰੋ।" - -#: grub-core/commands/date.c:141 -msgid "[[year-]month-day] [hour:minute[:second]]" -msgstr "[[year-]month-day] [hour:minute[:second]]" - -#: grub-core/commands/date.c:142 -msgid "Display/set current datetime." -msgstr "ਮੌਜੂਦਾ ਸਮਾਂ-ਮਿਤੀ ਵੇਖਾਓ/ਸੈੱਟ ਕਰੋ।" - -#: grub-core/commands/echo.c:30 -msgid "Do not output the trailing newline." -msgstr "" - -#: grub-core/commands/echo.c:31 -msgid "Enable interpretation of backslash escapes." -msgstr "" - -#: grub-core/commands/echo.c:134 -msgid "[-e|-n] STRING" -msgstr "[-e|-n] ਲਾਈਨ" - -#: grub-core/commands/echo.c:134 -msgid "Display a line of text." -msgstr "ਟੈਕਸਟ ਦੀ ਲਾਈਨ ਵੇਖੋ।" - -#: grub-core/commands/efi/efifwsetup.c:82 -msgid "Reboot into firmware setup menu." -msgstr "" - -#: grub-core/commands/efi/fixvideo.c:107 -msgid "Fix video problem." -msgstr "ਵਿਡੀਓ ਸਮੱਸਿਆ ਠੀਕ ਕਰੋ।" - -#: grub-core/commands/efi/loadbios.c:52 -msgid "ROM image is present." -msgstr "ROM ਈਮੇਜ਼ ਮੌਜੂਦ ਹੈ।" - -#: grub-core/commands/efi/loadbios.c:70 -msgid "Can't enable ROM area." -msgstr "ROM ਖੇਤਰ ਚਾਲੂ ਨਹੀਂ ਕੀਤਾ ਜਾ ਸਕਦਾ।" - -#: grub-core/commands/efi/loadbios.c:209 -msgid "" -"Create BIOS-like structures for backward compatibility with existing OS." -msgstr "" - -#: grub-core/commands/efi/loadbios.c:214 -msgid "BIOS_DUMP [INT10_DUMP]" -msgstr "BIOS_DUMP [INT10_DUMP]" - -#: grub-core/commands/efi/loadbios.c:215 -msgid "Load BIOS dump." -msgstr "BIOS ਡੰਪ ਲੋਡ ਕਰੋ।" - -#: grub-core/commands/efi/shim_lock.c:76 -#, c-format -msgid "module cannot be loaded in UEFI secure boot mode: %s" -msgstr "" - -#: grub-core/commands/efi/shim_lock.c:98 -#, c-format -msgid "cannot boot due to dangerous module in memory: %s" -msgstr "" - -#: grub-core/commands/efi/shim_lock.c:116 -msgid "bad shim signature" -msgstr "" - -#: grub-core/commands/efi/tpm.c:149 grub-core/commands/efi/tpm.c:189 -#: grub-core/commands/efi/tpm.c:256 grub-core/commands/efi/tpm.c:306 -#, fuzzy -msgid "Command failed" -msgstr "ਬੰਦ ਕਰਨਾ ਫੇਲà©à¨¹ ਹੈ" - -#: grub-core/commands/efi/tpm.c:151 grub-core/commands/efi/tpm.c:191 -#: grub-core/commands/efi/tpm.c:258 grub-core/commands/efi/tpm.c:308 -#, fuzzy -msgid "Invalid parameter" -msgstr "ਗਲਤ ਪੈਰਾਮੀਟਰ %s" - -#: grub-core/commands/efi/tpm.c:154 grub-core/commands/efi/tpm.c:194 -#: grub-core/commands/efi/tpm.c:261 grub-core/commands/efi/tpm.c:311 -msgid "Output buffer too small" -msgstr "" - -#: grub-core/commands/efi/tpm.c:156 grub-core/commands/efi/tpm.c:196 -#: grub-core/commands/efi/tpm.c:263 grub-core/commands/efi/tpm.c:313 -#, fuzzy -msgid "TPM unavailable" -msgstr "ਪਾਥ: ਨਾ-ਉਪਲੱਬਧ" - -#: grub-core/commands/efi/tpm.c:158 grub-core/commands/efi/tpm.c:198 -#: grub-core/commands/efi/tpm.c:265 grub-core/commands/efi/tpm.c:315 -#, fuzzy -msgid "Unknown TPM error" -msgstr "ਅਣਜਾਣ ਸਿਸਟਮ ਗਲਤੀ" - -#: grub-core/commands/efi/tpm.c:240 grub-core/commands/efi/tpm.c:288 -msgid "cannot allocate TPM event buffer" -msgstr "" - -#: grub-core/commands/eval.c:63 -#, fuzzy -msgid "STRING ..." -msgstr "STRING" - -#: grub-core/commands/eval.c:64 -msgid "Evaluate arguments as GRUB commands" -msgstr "" - -#: grub-core/commands/file.c:41 -msgid "Check if FILE can be booted as i386 PAE Xen unprivileged guest kernel" -msgstr "" - -#: grub-core/commands/file.c:44 -msgid "Check if FILE can be booted as x86_64 Xen unprivileged guest kernel" -msgstr "" - -#: grub-core/commands/file.c:46 -msgid "Check if FILE can be used as Xen x86 privileged guest kernel" -msgstr "" - -#: grub-core/commands/file.c:48 -msgid "Check if FILE can be used as x86 multiboot kernel" -msgstr "" - -#: grub-core/commands/file.c:50 -msgid "Check if FILE can be used as x86 multiboot2 kernel" -msgstr "" - -#: grub-core/commands/file.c:52 -msgid "Check if FILE is ARM Linux" -msgstr "" - -#: grub-core/commands/file.c:54 -msgid "Check if FILE is ARM64 Linux" -msgstr "" - -#: grub-core/commands/file.c:56 -msgid "Check if FILE is IA64 Linux" -msgstr "" - -#: grub-core/commands/file.c:58 -msgid "Check if FILE is MIPS Linux" -msgstr "" - -#: grub-core/commands/file.c:60 -msgid "Check if FILE is MIPSEL Linux" -msgstr "" - -#: grub-core/commands/file.c:62 -msgid "Check if FILE is SPARC64 Linux" -msgstr "" - -#: grub-core/commands/file.c:64 -msgid "Check if FILE is POWERPC Linux" -msgstr "" - -#: grub-core/commands/file.c:66 -msgid "Check if FILE is x86 Linux" -msgstr "" - -#: grub-core/commands/file.c:68 -msgid "Check if FILE is x86 Linux supporting 32-bit protocol" -msgstr "" - -#: grub-core/commands/file.c:70 -msgid "Check if FILE is x86 kFreeBSD" -msgstr "" - -#: grub-core/commands/file.c:72 -msgid "Check if FILE is i386 kFreeBSD" -msgstr "" - -#: grub-core/commands/file.c:74 -msgid "Check if FILE is x86_64 kFreeBSD" -msgstr "" - -#: grub-core/commands/file.c:77 -msgid "Check if FILE is x86 kNetBSD" -msgstr "" - -#: grub-core/commands/file.c:79 -msgid "Check if FILE is i386 kNetBSD" -msgstr "" - -#: grub-core/commands/file.c:81 -msgid "Check if FILE is x86_64 kNetBSD" -msgstr "" - -#: grub-core/commands/file.c:84 -msgid "Check if FILE is i386 EFI file" -msgstr "" - -#: grub-core/commands/file.c:86 -msgid "Check if FILE is x86_64 EFI file" -msgstr "" - -#: grub-core/commands/file.c:88 -msgid "Check if FILE is IA64 EFI file" -msgstr "" - -#: grub-core/commands/file.c:90 -msgid "Check if FILE is ARM64 EFI file" -msgstr "" - -#: grub-core/commands/file.c:92 -msgid "Check if FILE is ARM EFI file" -msgstr "" - -#: grub-core/commands/file.c:94 -msgid "Check if FILE is RISC-V 32bit EFI file" -msgstr "" - -#: grub-core/commands/file.c:96 -msgid "Check if FILE is RISC-V 64bit EFI file" -msgstr "" - -#: grub-core/commands/file.c:98 -msgid "Check if FILE is hiberfil.sys in hibernated state" -msgstr "" - -#: grub-core/commands/file.c:100 -msgid "Check if FILE is x86_64 XNU (Mac OS X kernel)" -msgstr "" - -#: grub-core/commands/file.c:102 -msgid "Check if FILE is i386 XNU (Mac OS X kernel)" -msgstr "" - -#: grub-core/commands/file.c:104 -msgid "Check if FILE is XNU (Mac OS X kernel) hibernated image" -msgstr "" - -#: grub-core/commands/file.c:106 -msgid "Check if FILE is BIOS bootsector" -msgstr "" - -#. TRANSLATORS: it's a standalone boolean value, -#. opposite of "true". -#: grub-core/commands/file.c:675 grub-core/commands/i386/cmostest.c:63 -#: grub-core/commands/i386/cpuid.c:71 grub-core/commands/keystatus.c:83 -#: grub-core/commands/keystatus.c:87 grub-core/commands/keystatus.c:96 -#: grub-core/commands/test.c:436 grub-core/commands/true.c:39 -#: grub-core/script/execute.c:247 grub-core/script/execute.c:1039 -msgid "false" -msgstr "ਗਲਤ" - -#: grub-core/commands/file.c:684 -#, fuzzy -msgid "OPTIONS FILE" -msgstr "[OPTIONS] FONT_FILES" - -#: grub-core/commands/file.c:685 -msgid "Check if FILE is of specified type." -msgstr "" - -#. TRANSLATORS: It means that the specified partition e.g. -#. hd0,msdos1=/dev/sda1 doesn't exist. -#: grub-core/commands/gptsync.c:140 grub-core/kern/disk.c:258 -msgid "no such partition" -msgstr "ਇੰਠਦਾ ਕੋਈ ਭਾਗ ਨਹੀਂ" - -#: grub-core/commands/gptsync.c:240 -#, c-format -msgid "New MBR is written to `%s'\n" -msgstr "ਨਵਾਂ MBR `%s' ਉੱਤੇ ਲਿਖਿਆ ਗਿਆ ਹੈ\n" - -#: grub-core/commands/gptsync.c:252 -msgid "DEVICE [PARTITION[+/-[TYPE]]] ..." -msgstr "DEVICE [PARTITION[+/-[TYPE]]] ..." - -#. TRANSLATORS: MBR type is one-byte partition -#. type id. -#: grub-core/commands/gptsync.c:255 -msgid "" -"Fill hybrid MBR of GPT drive DEVICE. Specified partitions will be a part of " -"hybrid MBR. Up to 3 partitions are allowed. TYPE is an MBR type. + means " -"that partition is active. Only one partition can be active." -msgstr "" - -#: grub-core/commands/halt.c:40 -msgid "" -"Halts the computer. This command does not work on all firmware " -"implementations." -msgstr "ਕੰਪਿਊਟਰ ਬੰਦ ਕਰਦੀ ਹੈ। ਇਹ ਕਮਾਂਡ ਸਭ ਫਿਰਮਵੇਅਰ ਸਥਾਪਨ ਨਾਲ ਕੰਮ ਨਹੀਂ ਕਰਦੀ ਹੈ।" - -#: grub-core/commands/hashsum.c:32 -msgid "Specify hash to use." -msgstr "ਵਰਤਣ ਲਈ ਹੈਸ਼ ਦਿਉ।" - -#: grub-core/commands/hashsum.c:32 -msgid "HASH" -msgstr "ਹੈਸ਼" - -#: grub-core/commands/hashsum.c:33 -msgid "Check hashes of files with hash list FILE." -msgstr "" - -#: grub-core/commands/hashsum.c:35 -msgid "Base directory for hash list." -msgstr "ਹੈਸ਼ ਲਿਸਟ ਲਈ ਮà©à©±à¨¢à¨²à©€ ਡਾਇਰੈਕਟਰੀ।" - -#. TRANSLATORS: platform here isn't identifier. It can be translated. -#: grub-core/commands/hashsum.c:35 grub-core/commands/ls.c:150 -#: grub-core/commands/macbless.c:226 grub-core/commands/syslinuxcfg.c:51 -#: grub-core/commands/syslinuxcfg.c:54 grub-core/kern/emu/main.c:106 -#: include/grub/util/install.h:50 include/grub/util/install.h:53 -#: include/grub/util/install.h:56 include/grub/util/install.h:59 -#: util/grub-install.c:250 util/grub-install.c:252 util/grub-install.c:297 -#: util/grub-install.c:299 util/grub-mkimage.c:64 util/grub-mkimage.c:67 -#: util/grub-mknetdir.c:46 util/grub-mknetdir.c:48 util/grub-mkrescue.c:99 -#: util/grub-setup.c:82 util/grub-syslinux2cfg.c:63 util/grub-syslinux2cfg.c:65 -#: util/grub-syslinux2cfg.c:67 util/grub-syslinux2cfg.c:71 -msgid "DIR" -msgstr "ਡਾਇ" - -#: grub-core/commands/hashsum.c:37 -msgid "Don't stop after first error." -msgstr "ਪਹਿਲੀ ਗਲਤੀ ਦੇ ਬਾਅਦ ਨਾ ਰà©à¨•ੋ।" - -#: grub-core/commands/hashsum.c:38 -msgid "Uncompress file before checksumming." -msgstr "ਚੈਕ-ਸਮ ਕਰਨ ਤੋਂ ਪਹਿਲਾਂ ਫਾਇਲ ਅਣ-ਕੰਪਰੈਸ ਕਰੋ।" - -#: grub-core/commands/hashsum.c:163 -#, c-format -msgid "%s: READ ERROR\n" -msgstr "%s: ਪੜà©à¨¹à¨¨ ਗਲਤੀ\n" - -#: grub-core/commands/hashsum.c:177 -#, c-format -msgid "%s: HASH MISMATCH\n" -msgstr "%s: ਹੈਸ਼ ਮਿਲਦਾ ਨਹੀਂ\n" - -#: grub-core/commands/hashsum.c:188 -#, c-format -msgid "%s: OK\n" -msgstr "%s: ਠੀਕ ਹੈ\n" - -#: grub-core/commands/hashsum.c:282 -msgid "-h HASH [-c FILE [-p PREFIX]] [FILE1 [FILE2 ...]]" -msgstr "-h HASH [-c FILE [-p PREFIX]] [FILE1 [FILE2 ...]]" - -#. TRANSLATORS: "hash checksum" is just to -#. be a bit more precise, you can treat it as -#. just "hash". -#: grub-core/commands/hashsum.c:287 grub-core/commands/hashsum.c:292 -#: grub-core/commands/hashsum.c:297 grub-core/commands/hashsum.c:302 -#: grub-core/commands/hashsum.c:307 grub-core/commands/hashsum.c:313 -msgid "Compute or check hash checksum." -msgstr "ਹੈਸ਼ ਚੈਕ-ਸਮ ਕੱਢੋ ਜਾਂ ਚੈਕ ਕਰੋ।" - -#: grub-core/commands/hashsum.c:290 grub-core/commands/hashsum.c:295 -#: grub-core/commands/hashsum.c:300 grub-core/commands/hashsum.c:305 -#: grub-core/commands/hashsum.c:311 -msgid "[-c FILE [-p PREFIX]] [FILE1 [FILE2 ...]]" -msgstr "[-c FILE [-p PREFIX]] [FILE1 [FILE2 ...]]" - -#: grub-core/commands/hdparm.c:33 -msgid "" -"Set Advanced Power Management\n" -"(1=low, ..., 254=high, 255=off)." -msgstr "" -"ਤਕਨੀਕੀ ਪਾਵਰ ਪਰਬੰਧ ਸੈੱਟ ਕਰੋ\n" -"(1=ਘੱਟ, ..., 254=ਵੱਧ, 255=ਬੰਦ)" - -#: grub-core/commands/hdparm.c:36 -msgid "Display power mode." -msgstr "ਪਾਵਰਡ ਮੋਡ ਵੇਖਾਉ।" - -#: grub-core/commands/hdparm.c:37 -msgid "Freeze ATA security settings until reset." -msgstr "ATA ਸà©à¨°à©±à¨–ਿਆ ਸੈਟਿੰਗ ਮà©à©œ-ਸੈੱਟ ਕਰਨ ਤੱਕ ਫਰੀਜ਼ ਕਰੋ।" - -#: grub-core/commands/hdparm.c:39 -msgid "Display SMART health status." -msgstr "ਸਮਾਰਟ ਹੈਲਥ ਹਾਲਤ ਵੇਖਾਉ।" - -#: grub-core/commands/hdparm.c:40 -msgid "" -"Set Automatic Acoustic Management\n" -"(0=off, 128=quiet, ..., 254=fast)." -msgstr "" -"ਆਟੋਮੈਟਿਕ ਅਕà©à¨Ÿà¨¿à¨• ਪਰਬੰਧ ਸੈੱਟ ਕਰੋ\n" -"(0=ਬੰਦ, 128=ਸ਼ਾਤ, ..., 254=ਤੇਜ਼)।" - -#: grub-core/commands/hdparm.c:43 -msgid "" -"Set standby timeout\n" -"(0=off, 1=5s, 2=10s, ..., 240=20m, 241=30m, ...)." -msgstr "" -"ਸਟੈਂਡਬਾਠਸਮਾਂ-ਸਮਾਪਤੀ ਸੈੱਟ\n" -"(0=off, 1=5s, 2=10s, ..., 240=20m, 241=30m, ...)." - -#: grub-core/commands/hdparm.c:46 -msgid "Set drive to standby mode." -msgstr "ਸਟੈਂਡਬਾਠਮੋਡ ਲਈ ਡਰਾਇਵ ਸੈੱਟ ਕਰੋ।" - -#: grub-core/commands/hdparm.c:47 -msgid "Set drive to sleep mode." -msgstr "ਸਲੀਪ ਮੋਡ ਲਈ ਡਰਾਇਵ ਸੈੱਟ ਕਰੋ।" - -#: grub-core/commands/hdparm.c:48 -msgid "Print drive identity and settings." -msgstr "ਡਰਾਇਵ ਪਛਾਣ ਅਤੇ ਸੈਟਿੰਗ ਪਰਿੰਟ ਕਰੋ।" - -#: grub-core/commands/hdparm.c:50 -msgid "Show raw contents of ATA IDENTIFY sector." -msgstr "" - -#: grub-core/commands/hdparm.c:52 -msgid "Disable/enable SMART (0/1)." -msgstr "SMART ਬੰਦ/ਚਾਲੂ (0/1)।" - -#: grub-core/commands/hdparm.c:53 -msgid "Do not print messages." -msgstr "ਸà©à¨¨à©‡à¨¹à©‡ ਪਰਿੰਟ ਨਾ ਕਰੋ।" - -#: grub-core/commands/hdparm.c:286 grub-core/commands/i386/rdmsr.c:68 -#: grub-core/commands/iorw.c:47 grub-core/commands/legacycfg.c:760 -#: grub-core/commands/legacycfg.c:812 grub-core/commands/macbless.c:190 -#: grub-core/commands/memrw.c:47 grub-core/commands/pgp.c:738 -#: grub-core/commands/pgp.c:792 grub-core/commands/search.c:304 -#: grub-core/commands/search_wrap.c:179 grub-core/commands/setpci.c:243 -#: grub-core/commands/sleep.c:71 grub-core/fs/zfs/zfsinfo.c:279 -#: grub-core/fs/zfs/zfsinfo.c:358 grub-core/gettext/gettext.c:492 -#: grub-core/kern/corecmd.c:65 grub-core/kern/corecmd.c:79 -#: grub-core/mmap/mmap.c:430 grub-core/net/dns.c:713 grub-core/net/dns.c:745 -#: grub-core/net/net.c:694 grub-core/net/net.c:1052 -#: grub-core/normal/context.c:194 grub-core/script/execute.c:131 -#: grub-core/term/gfxterm_background.c:136 -msgid "one argument expected" -msgstr "ਇੱਕ ਆਰਗੂਮੈਂਟ ਚਾਹੀਦੀ ਸੀ" - -#: grub-core/commands/hdparm.c:440 -msgid "[OPTIONS] DISK" -msgstr "[OPTIONS] ਡਿਸਕ" - -#: grub-core/commands/hdparm.c:441 -msgid "Get/set ATA disk parameters." -msgstr "ATA ਡਿਸਕ ਪੈਰਾਮੀਟਰ ਲਵੋ/ਸੈੱਟ ਕਰੋ।" - -#: grub-core/commands/help.c:132 grub-core/lib/arg.c:109 -#: grub-core/lib/gnulib/argp-help.c:1616 -msgid "Usage:" -msgstr "ਵਰਤੋਂ:" - -#: grub-core/commands/help.c:146 -msgid "[PATTERN ...]" -msgstr "[ਪੈਟਰਨ ...]" - -#: grub-core/commands/help.c:147 -msgid "Show a help message." -msgstr "ਮੱਦਦ ਸà©à¨¨à©‡à¨¹à¨¾ ਵੇਖਾਉ।" - -#: grub-core/commands/hexdump.c:31 -msgid "Skip offset bytes from the beginning of file." -msgstr "ਫਾਇਲ ਦੇ ਸ਼à©à¨°à©‚ ਤੋਂ ਆਫਸੈੱਟ ਬਾਈਟ ਛੱਡੋ।" - -#: grub-core/commands/hexdump.c:33 -msgid "Read only LENGTH bytes." -msgstr "ਕੇਵਲ LENGTH ਬਾਈਟ ਪੜà©à¨¹à©‹à¥¤" - -#: grub-core/commands/hexdump.c:125 -msgid "[OPTIONS] FILE_OR_DEVICE" -msgstr "[OPTIONS] FILE_OR_DEVICE" - -#: grub-core/commands/hexdump.c:126 -msgid "Show raw contents of a file or memory." -msgstr "ਫਾਇਲ ਜਾਂ ਮੈਮੋਰੀ ਦੀ ਕੱਚੀ ਸਮੱਗਰੀ ਵੇਖਾਉ।" - -#: grub-core/commands/i386/cmosdump.c:58 -#, fuzzy -msgid "Show raw dump of the CMOS contents." -msgstr "ਮੈਮੋਰੀ ਸਮੱਗਰੀ ਵੇਖਾਉ।" - -#: grub-core/commands/i386/cmostest.c:108 -#: grub-core/commands/i386/cmostest.c:111 -#: grub-core/commands/i386/cmostest.c:114 -msgid "BYTE:BIT" -msgstr "BYTE:BIT" - -#: grub-core/commands/i386/cmostest.c:109 -msgid "Test bit at BYTE:BIT in CMOS." -msgstr "" - -#: grub-core/commands/i386/cmostest.c:112 -msgid "Clear bit at BYTE:BIT in CMOS." -msgstr "" - -#. TRANSLATORS: A bit may be either set (1) or clear (0). -#: grub-core/commands/i386/cmostest.c:116 -msgid "Set bit at BYTE:BIT in CMOS." -msgstr "" - -#: grub-core/commands/i386/coreboot/cb_timestamps.c:120 -msgid "Show coreboot boot time statistics." -msgstr "" - -#: grub-core/commands/i386/coreboot/cbls.c:137 -#, fuzzy -msgid "List coreboot tables." -msgstr "ਮੌਜੂਦਾ ਵੇਰੀਬਲ ਵੇਖਾਓ।" - -#. TRANSLATORS: "(default)" at the end means that this option is used if -#. no argument is specified. -#: grub-core/commands/i386/cpuid.c:36 -msgid "Check if CPU supports 64-bit (long) mode (default)." -msgstr "ਚੈੱਕ ਕਰੋ ਕਿ ਕੀ CPU 64-ਬਿੱਟ (ਲੰਮਾ) ਮੋਡ ਲਈ ਸਹਾਇਕ ਹੈ (ਡਿਫਾਲਟ)।" - -#: grub-core/commands/i386/cpuid.c:37 -#, fuzzy -msgid "Check if CPU supports Physical Address Extension." -msgstr "ਚੈੱਕ ਕਰੋ ਕਿ ਕੀ CPU 64-ਬਿੱਟ (ਲੰਮਾ) ਮੋਡ ਲਈ ਸਹਾਇਕ ਹੈ (ਡਿਫਾਲਟ)।" - -#: grub-core/commands/i386/cpuid.c:119 -msgid "Check for CPU features." -msgstr "CPU ਫੀਚਰਾਂ ਲਈ ਚੈੱਕ ਕਰੋ।" - -#. TRANSLATORS: In this file "mapping" refers to a change GRUB makes so if -#. your language doesn't have an equivalent of "mapping" you can -#. use the word like "rerouting". -#. -#: grub-core/commands/i386/pc/drivemap.c:43 -msgid "Show the current mappings." -msgstr "ਮੌਜੂਦਾ ਮੈਪਿੰਗ ਵੇਖੋ।" - -#: grub-core/commands/i386/pc/drivemap.c:44 -msgid "Reset all mappings to the default values." -msgstr "ਸਭ ਮੈਪਿੰਗ ਲਈ ਡਿਫਾਲਟ ਮà©à©±à¨² ਸੈੱਟ ਕਰੋ।" - -#: grub-core/commands/i386/pc/drivemap.c:45 -msgid "Perform both direct and reverse mappings." -msgstr "ਸਿੱਧੀ ਅਤੇ ਉਲਟ ਮੈਪਿੰਗ ਵਰਤੋਂ।" - -#: grub-core/commands/i386/pc/drivemap.c:184 -msgid "No drives have been remapped" -msgstr "ਕੋਈ ਡਰਾਇਵ ਮà©à©œ-ਮੈਪ ਨਹੀਂ ਕੀਤੀ ਗਈ ਹੈ" - -#. TRANSLATORS: This is the header of mapping list. -#. On the left is how OS will see the disks and -#. on the right current GRUB vision. -#: grub-core/commands/i386/pc/drivemap.c:191 -msgid "OS disk #num ------> GRUB/BIOS device" -msgstr "OS ਡਿਸਕ #num ------> GRUB/BIOS ਜੰਤਰ" - -#: grub-core/commands/i386/pc/drivemap.c:413 -msgid "-l | -r | [-s] grubdev osdisk." -msgstr "-l | -r | [-s] grubdev osdisk." - -#: grub-core/commands/i386/pc/drivemap.c:414 -msgid "Manage the BIOS drive mappings." -msgstr "BIOS ਡਰਾਇਵ ਮੈਪਿੰਗ ਪਰਬੰਧ।" - -#: grub-core/commands/i386/pc/halt.c:31 -msgid "Do not use APM to halt the computer." -msgstr "APM ਨੂੰ ਕੰਪਿਊਟਰ ਬੰਦ ਕਰਨ ਨਾ ਵਰਤੋਂ।" - -#: grub-core/commands/i386/pc/halt.c:119 -msgid "Halt the system, if possible using APM." -msgstr "ਜੇ APM ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਸੰਭਵ ਹੋਵੇ ਤਾਂ ਸਿਸਟਮ ਬੰਦ ਕਰੋ।" - -#: grub-core/commands/i386/pc/lsapm.c:75 -msgid "no APM found" -msgstr "APM ਨਹੀਂ ਲੱਭਿਆ" - -#: grub-core/commands/i386/pc/lsapm.c:77 -#, c-format -msgid "" -"Version %u.%u\n" -"32-bit CS = 0x%x, len = 0x%x, offset = 0x%x\n" -"16-bit CS = 0x%x, len = 0x%x\n" -"DS = 0x%x, len = 0x%x\n" -msgstr "" -"ਵਰਜਨ %u.%u\n" -"32-ਬਿੱਟ CS = 0x%x, len = 0x%x, ਆਫਸੈਟ = 0x%x\n" -"16-ਬਿੱਟ CS = 0x%x, len = 0x%x\n" -"DS = 0x%x, len = 0x%x\n" - -#: grub-core/commands/i386/pc/lsapm.c:86 -msgid "16-bit protected interface supported\n" -msgstr "16-ਬਿੱਟ ਸà©à¨°à©±à¨–ਿਅਤ ਇੰਟਰਫੇਸ ਸਹਾਇਕ ਹੈ\n" - -#: grub-core/commands/i386/pc/lsapm.c:87 -msgid "16-bit protected interface unsupported\n" -msgstr "16-ਬਿੱਟ ਸà©à¨°à©±à¨–ਿਅਤ ਇੰਟਰਫੇਸ ਗ਼ੈਰ-ਸਹਾਇਕ ਹੈ\n" - -#: grub-core/commands/i386/pc/lsapm.c:89 -msgid "32-bit protected interface supported\n" -msgstr "32-ਬਿੱਟ ਸà©à¨°à©±à¨–ਿਅਤ ਇੰਟਰਫੇਸ ਸਹਾਇਕ ਹੈ\n" - -#: grub-core/commands/i386/pc/lsapm.c:90 -msgid "32-bit protected interface unsupported\n" -msgstr "32-ਬਿੱਟ ਸà©à¨°à©±à¨–ਿਅਤ ਇੰਟਰਫੇਸ ਗ਼ੈਰ-ਸਹਾਇਕ ਹੈ\n" - -#: grub-core/commands/i386/pc/lsapm.c:92 -msgid "CPU Idle slows down processor\n" -msgstr "CPU ਆਈਡਲ ਪਰੋਸੈਸਰ ਨੂੰ ਹੌਲੀ ਕਰਦਾ ਹੈ\n" - -#: grub-core/commands/i386/pc/lsapm.c:93 -msgid "CPU Idle doesn't slow down processor\n" -msgstr "CPU ਆਈਡਲ ਪਰੋਸੈਸਰ ਨੂੰ ਹੌਲੀ ਨਹੀਂ ਕਰਦਾ\n" - -#: grub-core/commands/i386/pc/lsapm.c:95 -msgid "APM disabled\n" -msgstr "APM ਬੰਦ ਕਰੋ\n" - -#: grub-core/commands/i386/pc/lsapm.c:95 -msgid "APM enabled\n" -msgstr "APM ਚਾਲੂ ਹੈ\n" - -#: grub-core/commands/i386/pc/lsapm.c:97 -msgid "APM disengaged\n" -msgstr "APM ਰà©à©±à¨à¨¿à¨† ਨਹੀ ਹੈ\n" - -#: grub-core/commands/i386/pc/lsapm.c:97 -msgid "APM engaged\n" -msgstr "APM ਰà©à©±à¨à¨¿à¨† ਹੈ\n" - -#: grub-core/commands/i386/pc/lsapm.c:107 -msgid "Show APM information." -msgstr "APM ਜਾਣਕਾਰੀ ਵੇਖਾਉ।" - -#. TRANSLATORS: It's musical notes, not the notes -#. you take. Play command expects arguments which can -#. be either a filename or tempo+notes. -#. This error happens if none is specified. -#: grub-core/commands/i386/pc/play.c:88 -msgid "filename or tempo and notes expected" -msgstr "" - -#: grub-core/commands/i386/pc/play.c:113 grub-core/commands/i386/pc/play.c:144 -#, fuzzy, c-format -msgid "Invalid tempo in %s" -msgstr "ਗਲਤ ਕਮਾਂਡ %s।\n" - -#: grub-core/commands/i386/pc/play.c:151 grub-core/commands/macbless.c:172 -#: grub-core/fs/archelp.c:260 grub-core/fs/bfs.c:621 grub-core/fs/bfs.c:704 -#: grub-core/fs/btrfs.c:1726 grub-core/fs/btrfs.c:1755 -#: grub-core/fs/btrfs.c:1799 grub-core/fs/btrfs.c:1882 -#: grub-core/fs/btrfs.c:1906 grub-core/fs/fshelp.c:257 grub-core/fs/jfs.c:696 -#: grub-core/fs/minix.c:426 grub-core/fs/ufs.c:544 grub-core/fs/zfs/zfs.c:2083 -#: grub-core/fs/zfs/zfs.c:2095 grub-core/fs/zfs/zfs.c:2301 -#: grub-core/net/http.c:120 -#, c-format -msgid "file `%s' not found" -msgstr "ਫਾਇਲ `%s' ਨਹੀਂ ਲੱਭੀ" - -#: grub-core/commands/i386/pc/play.c:162 grub-core/commands/i386/pc/play.c:171 -#: grub-core/kern/misc.c:419 grub-core/script/execute.c:138 -#: grub-core/script/execute.c:244 -msgid "unrecognized number" -msgstr "ਬੇਪਛਾਣ ਨੰਬਰ" - -#: grub-core/commands/i386/pc/play.c:190 -msgid "FILE | TEMPO [PITCH1 DURATION1] [PITCH2 DURATION2] ... " -msgstr "FILE | TEMPO [PITCH1 DURATION1] [PITCH2 DURATION2] ... " - -#: grub-core/commands/i386/pc/play.c:191 -msgid "Play a tune." -msgstr "ਟਿਊਨ ਚਲਾਉ।" - -#: grub-core/commands/i386/pc/sendkey.c:39 -msgid "set numlock mode" -msgstr "numlock ਮੋਡ ਸੈੱਟ ਕਰੋ" - -#: grub-core/commands/i386/pc/sendkey.c:40 -msgid "set capslock mode" -msgstr "capslock ਮੋਡ ਸੈੱਟ ਕਰੋ" - -#: grub-core/commands/i386/pc/sendkey.c:41 -msgid "set scrolllock mode" -msgstr "scrolllock ਮੋਡ ਸੈੱਟ ਕਰੋ" - -#: grub-core/commands/i386/pc/sendkey.c:42 -msgid "set insert mode" -msgstr "" - -#: grub-core/commands/i386/pc/sendkey.c:43 -msgid "set pause mode" -msgstr "" - -#: grub-core/commands/i386/pc/sendkey.c:44 -msgid "press left shift" -msgstr "ਖੱਬੀ ਸਿਫਟ ਦੱਬੋ" - -#: grub-core/commands/i386/pc/sendkey.c:45 -msgid "press right shift" -msgstr "ਸੱਜੀ ਸਿਫਟ ਦੱਬੋ" - -#: grub-core/commands/i386/pc/sendkey.c:46 -msgid "press SysRq" -msgstr "SysRq ਦੱਬੋ" - -#: grub-core/commands/i386/pc/sendkey.c:47 -msgid "press NumLock key" -msgstr "NumLock ਸਵਿੱਚ ਦੱਬੋ" - -#: grub-core/commands/i386/pc/sendkey.c:48 -msgid "press CapsLock key" -msgstr "CapsLock ਸਵਿੱਚ ਦੱਬੋ" - -#: grub-core/commands/i386/pc/sendkey.c:49 -msgid "press ScrollLock key" -msgstr "ScrollLock ਸਵਿੱਚ ਦੱਬੋ" - -#: grub-core/commands/i386/pc/sendkey.c:50 -msgid "press Insert key" -msgstr "Insert ਸਵਿੱਚ ਦੱਬੋ" - -#: grub-core/commands/i386/pc/sendkey.c:51 -msgid "press left alt" -msgstr "ਖੱਬੀ alt ਦੱਬੋ" - -#: grub-core/commands/i386/pc/sendkey.c:52 -msgid "press right alt" -msgstr "ਸੱਜੀ alt ਦੱਬੋ" - -#: grub-core/commands/i386/pc/sendkey.c:53 -msgid "press left ctrl" -msgstr "ਖੱਬੀ ctrl ਦੱਬੋ" - -#: grub-core/commands/i386/pc/sendkey.c:54 -msgid "press right ctrl" -msgstr "ਸੱਜੀ ctrl ਦੱਬੋ" - -#: grub-core/commands/i386/pc/sendkey.c:55 -msgid "don't update LED state" -msgstr "LED ਹਾਲਤ ਅੱਪਡੇਟ ਨਾ ਕਰੋ" - -#: grub-core/commands/i386/pc/sendkey.c:372 -msgid "[KEYSTROKE1] [KEYSTROKE2] ..." -msgstr "[KEYSTROKE1] [KEYSTROKE2] ..." - -#. TRANSLATORS: It can emulate multiple -#. keypresses. -#: grub-core/commands/i386/pc/sendkey.c:375 -msgid "Emulate a keystroke sequence" -msgstr "" - -#: grub-core/commands/i386/rdmsr.c:37 grub-core/commands/iorw.c:34 -#: grub-core/commands/memrw.c:33 grub-core/commands/setpci.c:73 -msgid "Save read value into variable VARNAME." -msgstr "" - -#: grub-core/commands/i386/rdmsr.c:38 grub-core/commands/iorw.c:35 -#: grub-core/commands/memrw.c:34 grub-core/commands/probe.c:40 -#: grub-core/commands/search_wrap.c:40 grub-core/commands/setpci.c:74 -#: grub-core/commands/tr.c:32 -msgid "VARNAME" -msgstr "VARNAME" - -#: grub-core/commands/i386/rdmsr.c:55 grub-core/commands/i386/rdmsr.c:60 -#: grub-core/commands/i386/rdmsr.c:65 grub-core/commands/i386/wrmsr.c:47 -#: grub-core/commands/i386/wrmsr.c:52 grub-core/commands/i386/wrmsr.c:57 -#, fuzzy -msgid "unsupported instruction" -msgstr "ਗ਼ੈਰ-ਸਹਾਇਕ gzip ਫਾਰਮੈਟ" - -#: grub-core/commands/i386/rdmsr.c:77 grub-core/commands/i386/wrmsr.c:69 -#: grub-core/commands/i386/wrmsr.c:77 grub-core/net/dns.c:727 -#, fuzzy -msgid "invalid argument" -msgstr "ਗਲਤ ਪੈਰਾਮੀਟਰ %s" - -#: grub-core/commands/i386/rdmsr.c:94 grub-core/commands/memrw.c:125 -#: grub-core/commands/memrw.c:129 grub-core/commands/memrw.c:133 -msgid "ADDR" -msgstr "ADDR" - -#: grub-core/commands/i386/rdmsr.c:95 -msgid "Read a CPU model specific register." -msgstr "" - -#: grub-core/commands/i386/wrmsr.c:86 -#, fuzzy -msgid "ADDR VALUE" -msgstr "ADDR VALUE [MASK]" - -#: grub-core/commands/i386/wrmsr.c:87 -msgid "Write a value to a CPU model specific register." -msgstr "" - -#: grub-core/commands/ieee1275/suspend.c:34 -msgid "Run `go' to resume GRUB." -msgstr "GRUB ਨੂੰ ਮà©à©œ-ਪà©à¨°à¨¾à¨ªà¨¤ ਕਰਨ ਲਈ `go' ਚਲਾਉ।" - -#: grub-core/commands/ieee1275/suspend.c:45 -msgid "Return to IEEE1275 prompt." -msgstr "" - -#: grub-core/commands/iorw.c:123 grub-core/commands/iorw.c:127 -#: grub-core/commands/iorw.c:131 grub-core/gdb/gdb.c:79 -msgid "PORT" -msgstr "PORT" - -#: grub-core/commands/iorw.c:123 -msgid "Read 8-bit value from PORT." -msgstr "ਪੋਰਟ ਤੋਂ 8-ਬਿੱਟ ਮà©à©±à¨² ਪੜà©à¨¹à©‹à¥¤" - -#: grub-core/commands/iorw.c:127 -msgid "Read 16-bit value from PORT." -msgstr "ਪੋਰਟ ਤੋਂ 16-ਬਿੱਟ ਮà©à©±à¨² ਪੜà©à¨¹à©‹à¥¤" - -#: grub-core/commands/iorw.c:131 -msgid "Read 32-bit value from PORT." -msgstr "ਪੋਰਟ ਤੋਂ 32-ਬਿੱਟ ਮà©à©±à¨² ਪੜà©à¨¹à©‹à¥¤" - -#: grub-core/commands/iorw.c:135 grub-core/commands/iorw.c:139 -msgid "PORT VALUE [MASK]" -msgstr "PORT VALUE [MASK]" - -#: grub-core/commands/iorw.c:136 -msgid "Write 8-bit VALUE to PORT." -msgstr "ਪੋਰਟ ਉੱਤੇ 8-ਬਿੱਟ ਮà©à©±à¨² ਲਿਖੋ।" - -#: grub-core/commands/iorw.c:140 -msgid "Write 16-bit VALUE to PORT." -msgstr "ਪੋਰਟ ਉੱਤੇ 16-ਬਿੱਟ ਮà©à©±à¨² ਲਿਖੋ।" - -#: grub-core/commands/iorw.c:143 grub-core/commands/memrw.c:137 -#: grub-core/commands/memrw.c:141 grub-core/commands/memrw.c:145 -msgid "ADDR VALUE [MASK]" -msgstr "ADDR VALUE [MASK]" - -#: grub-core/commands/iorw.c:144 -msgid "Write 32-bit VALUE to PORT." -msgstr "ਪੋਰਟ ਉੱਤੇ 32-ਬਿੱਟ ਮà©à©±à¨² ਲਿਖੋ।" - -#: grub-core/commands/keylayouts.c:215 grub-core/commands/loadenv.c:61 -#: grub-core/commands/nativedisk.c:189 grub-core/efiemu/main.c:235 -#: grub-core/font/font.c:428 grub-core/gfxmenu/gfxmenu.c:63 -#: grub-core/kern/device.c:42 grub-core/kern/dl.c:740 -#, c-format -msgid "variable `%s' isn't set" -msgstr "ਵੇਰੀਬਲ `%s' ਸੈਟ ਨਹੀਂ ਹੈ।" - -#: grub-core/commands/keylayouts.c:301 -msgid "Load a keyboard layout." -msgstr "ਕੀਬੋਰਡ ਲੇਆਉਟ ਲੋਡ ਕਰੋ।" - -#. TRANSLATORS: "Check" in a sense that if this key is pressed then -#. "true" is returned, otherwise "false". -#: grub-core/commands/keystatus.c:32 -msgid "Check Shift key." -msgstr "ਸਿਫ਼ਟ ਸਵਿੱਚ ਵੇਖੋ।" - -#: grub-core/commands/keystatus.c:33 -msgid "Check Control key." -msgstr "ਕੰਟਰੋਲ ਸਵਿੱਚ ਵੇਖੋ।" - -#: grub-core/commands/keystatus.c:34 -msgid "Check Alt key." -msgstr "ਆਲਟ ਸਵਿੱਚ ਵੇਖੋ।" - -#. TRANSLATORS: there are 3 modifiers. -#: grub-core/commands/keystatus.c:106 -msgid "Check key modifier status." -msgstr "" - -#: grub-core/commands/legacycfg.c:512 grub-core/commands/legacycfg.c:526 -#: grub-core/commands/legacycfg.c:546 grub-core/commands/legacycfg.c:559 -#: grub-core/commands/time.c:43 grub-core/script/function.c:109 -#: util/grub-file.c:100 util/grub-fstest.c:57 util/grub-mount.c:69 -#, c-format -msgid "can't find command `%s'" -msgstr "ਕਮਾਂਡ `%s' ਲੱਭੀ ਨਹੀਂ ਜਾ ਸਕਦੀ।" - -#: grub-core/commands/legacycfg.c:813 grub-core/normal/auth.c:225 -#: util/grub-mkpasswd-pbkdf2.c:139 -msgid "Enter password: " -msgstr "ਪਾਸਵਰਡ ਦਿਓ: " - -#. TRANSLATORS: "legacy config" means -#. "config as used by grub-legacy". -#: grub-core/commands/legacycfg.c:837 -msgid "Parse legacy config in same context" -msgstr "" - -#: grub-core/commands/legacycfg.c:842 -msgid "Parse legacy config in new context" -msgstr "" - -#: grub-core/commands/legacycfg.c:847 -msgid "Parse legacy config in same context taking only menu entries" -msgstr "" - -#: grub-core/commands/legacycfg.c:852 -msgid "Parse legacy config in new context taking only menu entries" -msgstr "" - -#: grub-core/commands/legacycfg.c:856 -msgid "[--no-mem-option] [--type=TYPE] FILE [ARG ...]" -msgstr "[--no-mem-option] [--type=TYPE] FILE [ARG ...]" - -#: grub-core/commands/legacycfg.c:857 -msgid "Simulate grub-legacy `kernel' command" -msgstr "" - -#: grub-core/commands/legacycfg.c:861 grub-core/commands/legacycfg.c:865 -msgid "FILE [ARG ...]" -msgstr "ਫਾਇਲ [ARG ...]" - -#: grub-core/commands/legacycfg.c:862 -msgid "Simulate grub-legacy `initrd' command" -msgstr "" - -#: grub-core/commands/legacycfg.c:866 -msgid "Simulate grub-legacy `modulenounzip' command" -msgstr "" - -#: grub-core/commands/legacycfg.c:870 grub-core/commands/legacycfg.c:875 -msgid "[--md5] PASSWD [FILE]" -msgstr "[--md5] PASSWD [ਫਾਇਲ]" - -#: grub-core/commands/legacycfg.c:871 -msgid "Simulate grub-legacy `password' command" -msgstr "" - -#: grub-core/commands/legacycfg.c:876 -msgid "Simulate grub-legacy `password' command in menu entry mode" -msgstr "" - -#. TRANSLATORS: This option is used to override default filename -#. for loading and storing environment. -#: grub-core/commands/loadenv.c:37 -msgid "Specify filename." -msgstr "ਫਾਇਲ-ਨਾਂ ਦਿਉ।" - -#: grub-core/commands/loadenv.c:39 -msgid "Skip signature-checking of the environment file." -msgstr "" - -#: grub-core/commands/loadenv.c:451 -#, fuzzy -msgid "[-f FILE] [-s|--skip-sig] [variable_name_to_whitelist] [...]" -msgstr "[-f FILE] variable_name [...]" - -#: grub-core/commands/loadenv.c:452 -msgid "Load variables from environment block file." -msgstr "ਇੰਵਾਇਰਨਮੈਂਟ ਬਲਾਕ ਫਾਇਲ ਤੋਂ ਵੇਰੀਬਲ ਲੋਡ ਕਰੋ।" - -#: grub-core/commands/loadenv.c:455 -msgid "[-f FILE]" -msgstr "[-f ਫਾਇਲ]" - -#: grub-core/commands/loadenv.c:456 -msgid "List variables from environment block file." -msgstr "ਇੰਵਾਇਰਨਮੈਂਟ ਬਲਾਕ ਫਾਇਲ ਤੋਂ ਵੇਰੀਬਲ ਲੋਡ ਕਰੋ।" - -#: grub-core/commands/loadenv.c:460 -msgid "[-f FILE] variable_name [...]" -msgstr "[-f FILE] variable_name [...]" - -#: grub-core/commands/loadenv.c:461 -msgid "Save variables to environment block file." -msgstr "" - -#: grub-core/commands/ls.c:40 -msgid "Show a long list with more detailed information." -msgstr "ਹੋਰ ਵੇਰਵੇ ਸਮੇਤ ਜਾਣਕਾਰੀ ਲਈ ਲੰਮੀ ਸੂਚੀ ਵੇਖੋ।" - -#: grub-core/commands/ls.c:41 -msgid "Print sizes in a human readable format." -msgstr "ਮਨà©à©±à¨–à©€ ਪੜਨਯੋਗ ਫਾਰਮੈਟ 'ਚ ਆਕਾਰ ਪਰਿੰਟ ਕਰੋ।" - -#: grub-core/commands/ls.c:42 -msgid "List all files." -msgstr "ਸਭ ਫਾਇਲਾਂ ਦੀ ਸੂਚੀ" - -#: grub-core/commands/ls.c:73 -msgid "Network protocols:" -msgstr "ਨੈਟਵਰਕ ਪਰੋਟੋਕਾਲ:" - -#: grub-core/commands/ls.c:295 -msgid "[-l|-h|-a] [FILE ...]" -msgstr "[-l|-h|-a] [ਫਾਇਲ ...]" - -#: grub-core/commands/ls.c:296 -msgid "List devices and files." -msgstr "ਜੰਤਰ ਅਤੇ ਫਾਇਲਾਂ ਵੇਖੋ।" - -#: grub-core/commands/lsacpi.c:255 -msgid "Show version 1 tables only." -msgstr "ਕੇਵਲ ਵਰਜਨ 1 ਟੇਬਲ ਹੀ ਵੇਖੋ।" - -#: grub-core/commands/lsacpi.c:256 -msgid "Show version 2 and version 3 tables only." -msgstr "ਕੇਵਲ ਵਰਜਨ 2 ਅਤੇ ਵਰਜਨ 3 ਟੇਬਲ ਹੀ ਵੇਖੋ।" - -#: grub-core/commands/lsacpi.c:306 -msgid "Show ACPI information." -msgstr "ACPI ਜਾਣਕਾਰੀ ਵੇਖੋ।" - -#: grub-core/commands/lsmmap.c:31 -msgid "available RAM" -msgstr "ਉਪਲੱਬਧ RAM" - -#: grub-core/commands/lsmmap.c:32 -msgid "reserved RAM" -msgstr "ਰਾਖਵੀਂ RAM" - -#. TRANSLATORS: this refers to memory where ACPI tables are stored -#. and which can be used by OS once it loads ACPI tables. -#: grub-core/commands/lsmmap.c:35 -msgid "ACPI reclaimable RAM" -msgstr "ACPI ਵਲੋਂ ਮà©à©œ-ਦਾਅਵੇ-ਯੋਗ RAM" - -#. TRANSLATORS: this refers to memory which ACPI-compliant OS -#. is required to save accross hibernations. -#: grub-core/commands/lsmmap.c:38 -msgid "ACPI non-volatile storage RAM" -msgstr "" - -#: grub-core/commands/lsmmap.c:39 -msgid "faulty RAM (BadRAM)" -msgstr "ਖਰਾਬ RAM (BadRAM)" - -#: grub-core/commands/lsmmap.c:40 -msgid "persistent RAM" -msgstr "" - -#: grub-core/commands/lsmmap.c:41 -msgid "persistent RAM (legacy)" -msgstr "" - -#: grub-core/commands/lsmmap.c:42 -#, fuzzy -msgid "RAM holding coreboot tables" -msgstr "RAM ਕੋਲ ਫਿਰਮਵੇਅਰ ਕੋਡ ਹੈ" - -#: grub-core/commands/lsmmap.c:43 -msgid "RAM holding firmware code" -msgstr "RAM ਕੋਲ ਫਿਰਮਵੇਅਰ ਕੋਡ ਹੈ" - -#: grub-core/commands/lsmmap.c:52 -#, c-format -msgid "base_addr = 0x%llx, length = 0x%llx, %s\n" -msgstr "base_addr = 0x%llx, ਲੰਬਾਈ = 0x%llx, %s\n" - -#: grub-core/commands/lsmmap.c:55 -#, c-format -msgid "base_addr = 0x%llx, length = 0x%llx, type = 0x%x\n" -msgstr "base_addr = 0x%llx, ਲੰਬਾਈ = 0x%llx, type = 0x%x\n" - -#: grub-core/commands/lsmmap.c:79 -msgid "List memory map provided by firmware." -msgstr "ਫਿਰਮਵੇਅਰ ਵਲੋਂ ਦਿੱਤੇ ਮੈਮੋਰੀ ਮੈਪ ਵੇਖਾਓ।" - -#: grub-core/commands/lspci.c:232 -msgid "List PCI devices." -msgstr "PCI ਜੰਤਰਾਂ ਦੀ ਸੂਚੀ।" - -#: grub-core/commands/macbless.c:224 -msgid "Bless FILE of HFS or HFS+ partition for intel macs." -msgstr "" - -#: grub-core/commands/macbless.c:228 -msgid "Bless DIR of HFS or HFS+ partition for PPC macs." -msgstr "" - -#: grub-core/commands/memrw.c:125 -msgid "Read 8-bit value from ADDR." -msgstr "" - -#: grub-core/commands/memrw.c:129 -msgid "Read 16-bit value from ADDR." -msgstr "" - -#: grub-core/commands/memrw.c:133 -msgid "Read 32-bit value from ADDR." -msgstr "" - -#: grub-core/commands/memrw.c:138 -msgid "Write 8-bit VALUE to ADDR." -msgstr "" - -#: grub-core/commands/memrw.c:142 -msgid "Write 16-bit VALUE to ADDR." -msgstr "" - -#: grub-core/commands/memrw.c:146 -msgid "Write 32-bit VALUE to ADDR." -msgstr "" - -#: grub-core/commands/menuentry.c:31 -msgid "Menu entry type." -msgstr "ਮੇਨੂ à¨à¨‚ਟਰੀ ਕਿਸਮ।" - -#: grub-core/commands/menuentry.c:31 grub-core/commands/menuentry.c:38 -#: grub-core/commands/menuentry.c:39 grub-core/gettext/gettext.c:520 -#: util/grub-fstest.c:520 util/grub-install.c:291 util/grub-install.c:304 -#: util/grub-mknetdir.c:51 util/grub-mkrescue.c:109 util/grub-mkrescue.c:110 -#: util/grub-mount.c:453 util/grub-render-label.c:65 -msgid "STRING" -msgstr "STRING" - -#: grub-core/commands/menuentry.c:33 -msgid "List of users allowed to boot this entry." -msgstr "ਇਹ à¨à¨‚ਟਰੀ ਨੂੰ ਬੂਟ ਕਰਨ ਦੇ ਯੋਗ ਯੂਜ਼ਰ ਦੀ ਸੂਚੀ।" - -#: grub-core/commands/menuentry.c:33 -msgid "USERNAME[,USERNAME]" -msgstr "USERNAME[,USERNAME]" - -#: grub-core/commands/menuentry.c:36 -msgid "Keyboard key to quickly boot this entry." -msgstr "" - -#: grub-core/commands/menuentry.c:36 -msgid "KEYBOARD_KEY" -msgstr "KEYBOARD_KEY" - -#: grub-core/commands/menuentry.c:38 -msgid "Use STRING as menu entry body." -msgstr "" - -#: grub-core/commands/menuentry.c:39 -msgid "Menu entry identifier." -msgstr "ਮੇਨੂ à¨à¨‚ਟਰੀ ਪਛਾਣਕਰਤਾ।" - -#. TRANSLATORS: menu entry can either be bootable by anyone or only by -#. handful of users. By default when security is active only superusers can -#. boot a given menu entry. With --unrestricted (this option) -#. anyone can boot it. -#: grub-core/commands/menuentry.c:44 -msgid "This entry can be booted by any user." -msgstr "ਇਹ à¨à¨‚ਟਰੀ ਨੂੰ ਕਿਸੇ ਵੀ ਯੂਜ਼ਰ ਵਲੋਂ ਬੂਟ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ।" - -#: grub-core/commands/menuentry.c:323 grub-core/commands/menuentry.c:328 -#: grub-core/tests/test_blockarg.c:46 -msgid "BLOCK" -msgstr "ਬਲਾਕ" - -#: grub-core/commands/menuentry.c:323 -msgid "Define a menu entry." -msgstr "ਮੇਨੂ à¨à¨‚ਟਰੀ ਦਿਉ।" - -#: grub-core/commands/menuentry.c:328 -msgid "Define a submenu." -msgstr "ਸਬ-ਮੇਨੂ ਦਿਉ।" - -#. TRANSLATORS: this is module list header. Name -#. is module name, Ref Count is a reference counter -#. (how many modules or open descriptors use it). -#. Dependencies are the other modules it uses. -#. -#: grub-core/commands/minicmd.c:162 -msgid "Name\tRef Count\tDependencies\n" -msgstr "" - -#: grub-core/commands/minicmd.c:201 -msgid "Show this message." -msgstr "ਇਹ ਸà©à¨¨à©‡à¨¹à¨¾ ਵੇਖਾਉ।" - -#: grub-core/commands/minicmd.c:204 -msgid "ADDR [SIZE]" -msgstr "ADDR [SIZE]" - -#: grub-core/commands/minicmd.c:204 -msgid "Show memory contents." -msgstr "ਮੈਮੋਰੀ ਸਮੱਗਰੀ ਵੇਖਾਉ।" - -#: grub-core/commands/minicmd.c:207 grub-core/kern/corecmd.c:188 -#: util/grub-install.c:275 -msgid "MODULE" -msgstr "ਮੋਡੀਊਲ" - -#: grub-core/commands/minicmd.c:207 -msgid "Remove a module." -msgstr "ਮੋਡੀਊਲ ਹਟਾਉ।" - -#: grub-core/commands/minicmd.c:210 -msgid "Show loaded modules." -msgstr "ਲੋਡ ਕੀਤੇ ਮੋਡੀਊਲ ਵੇਖਾਉ।" - -#: grub-core/commands/minicmd.c:213 -msgid "Exit from GRUB." -msgstr "ਗਰੱਬ ਤੋਂ ਬਾਹਰ ਆਉ।" - -#: grub-core/commands/mips/loongson/lsspd.c:42 -msgid "No CS5536 found" -msgstr "" - -#: grub-core/commands/mips/loongson/lsspd.c:45 -#, c-format -msgid "CS5536 at %d:%d.%d\n" -msgstr "" - -#. TRANSLATORS: System management bus is often used to access components like -#. RAM (info only, not data) or batteries. I/O space is where in memory -#. its ports are. -#: grub-core/commands/mips/loongson/lsspd.c:55 -#, c-format -msgid "System management bus controller I/O space is at 0x%x\n" -msgstr "" - -#. TRANSLATORS: it's shown in a report in a way -#. like number 1: ... number 2: ... -#. -#: grub-core/commands/mips/loongson/lsspd.c:66 -#, c-format -msgid "RAM slot number %d\n" -msgstr "" - -#: grub-core/commands/mips/loongson/lsspd.c:73 -#, c-format -msgid "Written SPD bytes: %d B.\n" -msgstr "" - -#: grub-core/commands/mips/loongson/lsspd.c:74 -#, c-format -msgid "Total flash size: %d B.\n" -msgstr "" - -#: grub-core/commands/mips/loongson/lsspd.c:79 -msgid "Memory type: DDR2." -msgstr "" - -#: grub-core/commands/mips/loongson/lsspd.c:83 -#, c-format -msgid "Part no: %s.\n" -msgstr "" - -#: grub-core/commands/mips/loongson/lsspd.c:86 -msgid "Memory type: Unknown." -msgstr "" - -#: grub-core/commands/mips/loongson/lsspd.c:97 -msgid "Print Memory information." -msgstr "" - -#: grub-core/commands/nativedisk.c:118 grub-core/commands/probe.c:118 -#: grub-core/commands/probe.c:124 util/grub-probe.c:450 -#, c-format -msgid "%s does not support UUIDs" -msgstr "%s UUID ਲਈ ਸਹਾਇਕ ਨਹੀਂ ਹੈ।" - -#: grub-core/commands/nativedisk.c:325 -msgid "[MODULE1 MODULE2 ...]" -msgstr "" - -#: grub-core/commands/nativedisk.c:326 -msgid "" -"Switch to native disk drivers. If no modules are specified default set (pata," -"ahci,usbms,ohci,uhci,ehci) is used" -msgstr "" - -#: grub-core/commands/parttool.c:40 -msgid "" -"Perform COMMANDS on partition.\n" -"Use `parttool PARTITION help' for the list of available commands." -msgstr "" - -#: grub-core/commands/parttool.c:123 -msgid "=VAL" -msgstr "" - -#: grub-core/commands/parttool.c:136 -#, c-format -msgid "Sorry, no parttool is available for %s\n" -msgstr "" - -#: grub-core/commands/parttool.c:288 grub-core/lib/arg.c:285 -#: grub-core/lib/arg.c:351 -#, c-format -msgid "unknown argument `%s'" -msgstr "ਅਣਜਾਣ ਆਰਗੂਮੈਂਟ `%s'" - -#: grub-core/commands/parttool.c:344 -msgid "PARTITION COMMANDS" -msgstr "ਪਾਰਟੀਸ਼ਨ ਕਮਾਂਡ" - -#: grub-core/commands/password.c:85 -msgid "USER PASSWORD" -msgstr "ਯੂਜ਼ਰ ਪਾਸਵਰਡ" - -#: grub-core/commands/password.c:86 -msgid "Set user password (plaintext). Unrecommended and insecure." -msgstr "ਯੂਜ਼ਰ ਪਾਸਵਰਡ ਦਿਉ (ਪਲੇਨ-ਟੈਕਸਟ)। ਗ਼ੈਰ-ਸਿਫਾਰਸ਼ੀ ਅਤੇ ਅਸà©à¨°à©±à¨–ਿਅਤ" - -#. TRANSLATORS: it means that the string which -#. was supposed to be a password hash doesn't -#. have a correct format, not to password -#. mismatch. -#: grub-core/commands/password_pbkdf2.c:98 -#: grub-core/commands/password_pbkdf2.c:115 -#: grub-core/commands/password_pbkdf2.c:123 -#: grub-core/commands/password_pbkdf2.c:150 -#: grub-core/commands/password_pbkdf2.c:179 -msgid "invalid PBKDF2 password" -msgstr "ਗਲਤ PBKDF2 ਪਾਸਵਰਡ" - -#: grub-core/commands/password_pbkdf2.c:202 -msgid "USER PBKDF2_PASSWORD" -msgstr "USER PBKDF2_PASSWORD" - -#: grub-core/commands/password_pbkdf2.c:203 -msgid "Set user password (PBKDF2). " -msgstr "ਯੂਜ਼ਰ ਪਾਸਵਰਡ (PBKDF2) ਦਿਉ। " - -#: grub-core/commands/pcidump.c:39 grub-core/commands/setpci.c:69 -msgid "Select device by vendor and device IDs." -msgstr "" - -#: grub-core/commands/pcidump.c:40 grub-core/commands/setpci.c:70 -msgid "[vendor]:[device]" -msgstr "[vendor]:[device]" - -#: grub-core/commands/pcidump.c:41 grub-core/commands/setpci.c:71 -msgid "Select device by its position on the bus." -msgstr "ਜੰਤਰ ਨੂੰ ਬਸ ਉੱਤੇ ਇਸ ਦੀ ਸਥਿਤੀ ਨਾਲ ਚà©à¨£à©‹à¥¤" - -#: grub-core/commands/pcidump.c:42 grub-core/commands/setpci.c:72 -msgid "[bus]:[slot][.func]" -msgstr "[bus]:[slot][.func]" - -#: grub-core/commands/pcidump.c:109 grub-core/commands/pcidump.c:138 -#: grub-core/commands/setpci.c:183 grub-core/commands/setpci.c:214 -#: grub-core/fs/zfs/zfs.c:3794 grub-core/kern/emu/hostdisk.c:458 -#: grub-core/kern/emu/hostdisk.c:473 grub-core/kern/file.c:44 -#, c-format -msgid "missing `%c' symbol" -msgstr "ਨਾ-ਮੌਜੂਦ `%c' ਨਿਸ਼ਾਨ" - -#: grub-core/commands/pcidump.c:168 -#, fuzzy -msgid "[-s POSITION] [-d DEVICE]" -msgstr "[OPTION]... [PATH|DEVICE]" - -#: grub-core/commands/pcidump.c:169 -msgid "Show raw dump of the PCI configuration space." -msgstr "" - -#: grub-core/commands/pgp.c:45 -msgid "Skip signature-checking of the public key file." -msgstr "" - -#. TRANSLATORS: it's about GNUPG signatures. -#: grub-core/commands/pgp.c:71 grub-core/commands/pgp.c:81 -#: grub-core/commands/pgp.c:86 grub-core/commands/pgp.c:96 -#: grub-core/commands/pgp.c:103 grub-core/commands/pgp.c:107 -#: grub-core/commands/pgp.c:114 grub-core/commands/pgp.c:119 -#: grub-core/commands/pgp.c:124 grub-core/commands/pgp.c:128 -#: grub-core/commands/pgp.c:268 grub-core/commands/pgp.c:276 -#: grub-core/commands/pgp.c:281 grub-core/commands/pgp.c:289 -#: grub-core/commands/pgp.c:320 grub-core/commands/pgp.c:327 -#: grub-core/commands/pgp.c:332 grub-core/commands/pgp.c:342 -#: grub-core/commands/pgp.c:468 grub-core/commands/pgp.c:471 -#: grub-core/commands/pgp.c:474 grub-core/commands/pgp.c:477 -#: grub-core/commands/pgp.c:484 grub-core/commands/pgp.c:490 -#: grub-core/commands/pgp.c:665 -msgid "bad signature" -msgstr "" - -#. TRANSLATORS: %08x is 32-bit key id. -#: grub-core/commands/pgp.c:636 grub-core/commands/pgp.c:812 -#, fuzzy, c-format -msgid "public key %08x not found" -msgstr "ਫਿਜ਼ੀਕਲ ਵਾਲੀਅਮ %s ਨਹੀਂ ਲੱਭਿਆ" - -#: grub-core/commands/pgp.c:651 grub-core/disk/diskfilter.c:772 -#: grub-core/disk/diskfilter.c:782 grub-core/fs/ntfs.c:404 -#: grub-core/fs/zfs/zfs.c:1933 grub-core/normal/menu.c:428 -#, c-format -msgid "module `%s' isn't loaded" -msgstr "ਮੋਡੀਊਲ `%s' ਲੋਡ ਨਹੀਂ ਕੀਤਾ ਜਾ ਸਕਦਾ" - -#: grub-core/commands/pgp.c:994 -msgid "[-s|--skip-sig] FILE SIGNATURE_FILE [PUBKEY_FILE]" -msgstr "" - -#: grub-core/commands/pgp.c:995 -msgid "Verify detached signature." -msgstr "" - -#: grub-core/commands/pgp.c:998 -msgid "[-s|--skip-sig] PUBKEY_FILE" -msgstr "" - -#: grub-core/commands/pgp.c:999 -msgid "Add PUBKEY_FILE to trusted keys." -msgstr "" - -#: grub-core/commands/pgp.c:1003 -msgid "Show the list of trusted keys." -msgstr "" - -#: grub-core/commands/pgp.c:1005 -msgid "PUBKEY_ID" -msgstr "" - -#: grub-core/commands/pgp.c:1006 -msgid "Remove PUBKEY_ID from trusted keys." -msgstr "" - -#: grub-core/commands/probe.c:40 grub-core/commands/tr.c:32 -msgid "Set a variable to return value." -msgstr "" - -#. TRANSLATORS: It's a driver that is currently in use to access -#. the diven disk. -#: grub-core/commands/probe.c:43 -msgid "Determine driver." -msgstr "ਡਰਾਇਵਰ ਜਾਣੋ।" - -#: grub-core/commands/probe.c:44 -msgid "Determine partition map type." -msgstr "" - -#: grub-core/commands/probe.c:45 -msgid "Determine filesystem type." -msgstr "ਫਾਇਲ ਸਿਸਟਮ ਕਿਸਮ ਜਾਣੋ।" - -#: grub-core/commands/probe.c:46 -msgid "Determine filesystem UUID." -msgstr "ਫਾਇਲ ਸਿਸਟਮ UUID ਜਾਣੋ।" - -#: grub-core/commands/probe.c:47 -msgid "Determine filesystem label." -msgstr "ਫਾਇਲ ਸਿਸਟਮ ਲੇਬਲ ਜਾਣੋ।" - -#: grub-core/commands/probe.c:139 grub-core/commands/probe.c:146 -#: util/grub-probe.c:462 -#, c-format -msgid "filesystem `%s' does not support labels" -msgstr "ਫਾਇਲ ਸਿਸਟਮ `%s' ਲੇਬਲ ਲਈ ਸਹਾਇਕ ਨਹੀਂ ਹੈ" - -#: grub-core/commands/probe.c:165 grub-core/fs/zfs/zfsinfo.c:430 -#: grub-core/loader/i386/bsd.c:169 util/grub-setup.c:223 -msgid "DEVICE" -msgstr "ਜੰਤਰ" - -#: grub-core/commands/probe.c:166 -msgid "Retrieve device info." -msgstr "ਜੰਤਰ ਜਾਣਕਾਰੀ ਲਵੋ।" - -#: grub-core/commands/read.c:85 -msgid "[ENVVAR]" -msgstr "[ENVVAR]" - -#: grub-core/commands/read.c:86 -msgid "Set variable with user input." -msgstr "ਯੂਜ਼ਰ ਇੰਪà©à©±à¨Ÿ ਨਾਲ ਵੇਰੀਬਲ ਸੈੱਟ ਕਰੋ।" - -#: grub-core/commands/reboot.c:40 -msgid "Reboot the computer." -msgstr "ਕੰਪਿਊਟਰ ਮà©à©œ-ਚਾਲੂ ਕਰੋ।" - -#. TRANSLATORS: in regexp you can mark some -#. groups with parentheses. These groups are -#. then numbered and you can save some of -#. them in variables. In other programs -#. those components aree often referenced with -#. back slash, e.g. \1. Compare -#. sed -e 's,\([a-z][a-z]*\),lowercase=\1,g' -#. The whole matching component is saved in VARNAME, not its number. -#. -#: grub-core/commands/regexp.c:44 -msgid "Store matched component NUMBER in VARNAME." -msgstr "" - -#: grub-core/commands/regexp.c:45 -msgid "[NUMBER:]VARNAME" -msgstr "[NUMBER:]VARNAME" - -#. TRANSLATORS: This are two arguments. So it's -#. two separate units to translate and pay -#. attention not to reverse them. -#: grub-core/commands/regexp.c:157 -msgid "REGEXP STRING" -msgstr "REGEXP STRING" - -#: grub-core/commands/regexp.c:158 -msgid "Test if REGEXP matches STRING." -msgstr "" - -#: grub-core/commands/search.c:324 -msgid "NAME [VARIABLE] [HINTS]" -msgstr "NAME [VARIABLE] [HINTS]" - -#: grub-core/commands/search_file.c:4 -msgid "" -"Search devices by file. If VARIABLE is specified, the first device found is " -"set to a variable." -msgstr "" - -#: grub-core/commands/search_label.c:4 -msgid "" -"Search devices by label. If VARIABLE is specified, the first device found is " -"set to a variable." -msgstr "" - -#: grub-core/commands/search_uuid.c:4 -msgid "" -"Search devices by UUID. If VARIABLE is specified, the first device found is " -"set to a variable." -msgstr "" - -#: grub-core/commands/search_wrap.c:34 -msgid "Search devices by a file." -msgstr "ਜੰਤਰ ਫਾਇਲ ਨਾਲ ਲੱਭੋ।" - -#: grub-core/commands/search_wrap.c:35 -msgid "Search devices by a filesystem label." -msgstr "ਫਾਇਲ-ਸਿਸਟਮ ਲੇਬਲ ਰਾਹੀਂ ਜੰਤਰ ਲੱਭੋ।" - -#: grub-core/commands/search_wrap.c:37 -msgid "Search devices by a filesystem UUID." -msgstr "ਫਾਇਲ-ਸਿਸਟਮ UUID ਰਾਹੀਂ ਜੰਤਰ ਲੱਭੋ।" - -#: grub-core/commands/search_wrap.c:40 -msgid "Set a variable to the first device found." -msgstr "ਪਹਿਲੇ ਲੱਭੇ ਜੰਤਰ ਲਈ ਵੇਰੀਬਲ ਸੈੱਟ ਕਰੋ।" - -#: grub-core/commands/search_wrap.c:42 -msgid "Do not probe any floppy drive." -msgstr "ਕਿਸੇ ਫਲਾਪੀ ਡਰਾਇਵ ਦੀ ਖੋਜ ਨਾ ਕਰੋ।" - -#: grub-core/commands/search_wrap.c:44 -msgid "" -"First try the device HINT. If HINT ends in comma, also try subpartitions" -msgstr "" - -#: grub-core/commands/search_wrap.c:45 grub-core/commands/search_wrap.c:49 -#: grub-core/commands/search_wrap.c:53 grub-core/commands/search_wrap.c:57 -#: grub-core/commands/search_wrap.c:61 grub-core/commands/search_wrap.c:65 -msgid "HINT" -msgstr "HINT" - -#: grub-core/commands/search_wrap.c:47 -msgid "" -"First try the device HINT if currently running on IEEE1275. If HINT ends in " -"comma, also try subpartitions" -msgstr "" - -#: grub-core/commands/search_wrap.c:51 -msgid "" -"First try the device HINT if currently running on BIOS. If HINT ends in " -"comma, also try subpartitions" -msgstr "" - -#: grub-core/commands/search_wrap.c:55 -msgid "" -"First try the device HINT if direct hardware access is supported. If HINT " -"ends in comma, also try subpartitions" -msgstr "" - -#: grub-core/commands/search_wrap.c:59 -msgid "" -"First try the device HINT if currently running on EFI. If HINT ends in " -"comma, also try subpartitions" -msgstr "" - -#: grub-core/commands/search_wrap.c:63 -msgid "" -"First try the device HINT if currently running on ARC. If HINT ends in " -"comma, also try subpartitions" -msgstr "" - -#: grub-core/commands/search_wrap.c:207 -msgid "[-f|-l|-u|-s|-n] [--hint HINT [--hint HINT] ...] NAME" -msgstr "[-f|-l|-u|-s|-n] [--hint HINT [--hint HINT] ...] ਨਾਂ" - -#: grub-core/commands/search_wrap.c:209 -msgid "" -"Search devices by file, filesystem label or filesystem UUID. If --set is " -"specified, the first device found is set to a variable. If no variable name " -"is specified, `root' is used." -msgstr "" - -#: grub-core/commands/setpci.c:132 -#, c-format -msgid "Register %x of %x:%02x.%x is %x\n" -msgstr "" - -#: grub-core/commands/setpci.c:333 -#, fuzzy -msgid "[-s POSITION] [-d DEVICE] [-v VAR] REGISTER[=VALUE[:MASK]]" -msgstr "[-s POSITION] [-d DEVICE] [-v VAR] [REGISTER][=VALUE[:MASK]]" - -#: grub-core/commands/setpci.c:335 -msgid "Manipulate PCI devices." -msgstr "" - -#: grub-core/commands/sleep.c:32 -msgid "Verbose countdown." -msgstr "ਵਰਬੋਸ ਗਿਣਤੀ।" - -#: grub-core/commands/sleep.c:33 -msgid "Allow to interrupt with ESC." -msgstr "" - -#: grub-core/commands/sleep.c:109 -msgid "NUMBER_OF_SECONDS" -msgstr "NUMBER_OF_SECONDS" - -#: grub-core/commands/sleep.c:110 -msgid "Wait for a specified number of seconds." -msgstr "ਦਿੱਤੇ ਸਕਿੰਟ ਲਈ ਉਡੀਕੋ ਜੀ।" - -#: grub-core/commands/syslinuxcfg.c:50 util/grub-syslinux2cfg.c:66 -msgid "root directory of the syslinux disk [default=/]." -msgstr "" - -#: grub-core/commands/syslinuxcfg.c:53 util/grub-syslinux2cfg.c:72 -msgid "" -"current directory of syslinux [default is parent directory of input file]." -msgstr "" - -#: grub-core/commands/syslinuxcfg.c:55 util/grub-syslinux2cfg.c:75 -msgid "assume input is an isolinux configuration file." -msgstr "" - -#: grub-core/commands/syslinuxcfg.c:56 util/grub-syslinux2cfg.c:76 -msgid "assume input is a pxelinux configuration file." -msgstr "" - -#: grub-core/commands/syslinuxcfg.c:57 util/grub-syslinux2cfg.c:77 -#, fuzzy -msgid "assume input is a syslinux configuration file." -msgstr "ਇੰਪà©à©±à¨Ÿ ਨੂੰ ਵਾਕ ਮੰਨੋ।" - -#. TRANSLATORS: "syslinux config" means -#. "config as used by syslinux". -#: grub-core/commands/syslinuxcfg.c:189 -msgid "Execute syslinux config in same context" -msgstr "" - -#: grub-core/commands/syslinuxcfg.c:195 -msgid "Execute syslinux config in new context" -msgstr "" - -#: grub-core/commands/syslinuxcfg.c:201 -#, fuzzy -msgid "Execute syslinux config in same context taking only menu entries" -msgstr "ਬਿਨਾਂ ਪਰਸੰਗ ਬਦਲੇ ਬਿਨਾਂ, ਪਰ ਕੇਵਲ ਮੇਨੂ à¨à¨Ÿà¨°à©€à¨†à¨‚ ਨਾਲ ਹੋਰ ਸੰਰਚਨਾ ਫਾਇਲ ਲੋਡ ਕਰੋ।" - -#: grub-core/commands/syslinuxcfg.c:207 -#, fuzzy -msgid "Execute syslinux config in new context taking only menu entries" -msgstr "ਬਿਨਾਂ ਪਰਸੰਗ ਬਦਲੇ ਬਿਨਾਂ, ਪਰ ਕੇਵਲ ਮੇਨੂ à¨à¨Ÿà¨°à©€à¨†à¨‚ ਨਾਲ ਹੋਰ ਸੰਰਚਨਾ ਫਾਇਲ ਲੋਡ ਕਰੋ।" - -#: grub-core/commands/terminal.c:90 -msgid "no terminal specified" -msgstr "ਕੋਈ ਟਰਮੀਨਲ ਨਹੀਂ ਦਿੱਤਾ।" - -#: grub-core/commands/terminal.c:112 grub-core/commands/terminal.c:139 -#, c-format -msgid "terminal `%s' isn't found" -msgstr "ਟਰਮੀਨਲ `%s' ਨਹੀਂ ਲੱਭਿਆ" - -#: grub-core/commands/terminal.c:244 -msgid "Active input terminals:" -msgstr "ਸਰਗਰਮ ਇੰਪà©à©±à¨Ÿ ਟਰਮੀਨਲ:" - -#: grub-core/commands/terminal.c:245 -msgid "Available input terminals:" -msgstr "ਉਪਲੱਬਧ ਇੰਪà©à©±à¨Ÿ ਟਰਮੀਨਲ:" - -#: grub-core/commands/terminal.c:261 -msgid "Active output terminals:" -msgstr "ਉਪਲੱਬਧ ਆਉਟਪà©à©±à¨Ÿ ਟਰਮੀਨਲ:" - -#: grub-core/commands/terminal.c:262 -msgid "Available output terminals:" -msgstr "ਉਪਲੱਬਧ ਆਉਟਪà©à©±à¨Ÿ ਟਰਮੀਨਲ:" - -#: grub-core/commands/terminal.c:271 grub-core/commands/terminal.c:276 -msgid "[--append|--remove] [TERMINAL1] [TERMINAL2] ..." -msgstr "[--append|--remove] [TERMINAL1] [TERMINAL2] ..." - -#: grub-core/commands/terminal.c:273 -msgid "List or select an input terminal." -msgstr "ਇੰਪà©à©±à¨Ÿ ਟਰਮੀਨਲ ਵੇਖਾਉ ਜਾਂ ਚà©à¨£à©‹à¥¤" - -#: grub-core/commands/terminal.c:278 -msgid "List or select an output terminal." -msgstr "ਆਉਟਪà©à©±à¨Ÿ ਟਰਮੀਨਲ ਵੇਖਾਉ ਜਾਂ ਚà©à¨£à©‹à¥¤" - -#: grub-core/commands/test.c:444 -msgid "EXPRESSION ]" -msgstr "ਸਮੀਕਰਨ ]" - -#: grub-core/commands/test.c:444 grub-core/commands/test.c:447 -msgid "Evaluate an expression." -msgstr "" - -#: grub-core/commands/test.c:447 -msgid "EXPRESSION" -msgstr "ਸਮੀਕਰਨ" - -#: grub-core/commands/testload.c:164 -msgid "Load the same file in multiple ways." -msgstr "ਇੱਕੋ ਫਾਇਲ ਨੂੰ ਕੋਈ ਢੰਗਾਂ ਨਾਲ ਲੋਡ ਕਰੋ।" - -#: grub-core/commands/testspeed.c:35 -msgid "Specify size for each read operation" -msgstr "" - -#: grub-core/commands/testspeed.c:58 -#, fuzzy -msgid "invalid block size" -msgstr "ਗਲਤ ਫੋਂਟ ਰੇਜ਼" - -#: grub-core/commands/testspeed.c:80 -#, c-format -msgid "File size: %s\n" -msgstr "" - -#: grub-core/commands/testspeed.c:83 -#, fuzzy, c-format -msgid "Elapsed time: %d.%03d s \n" -msgstr "ਬਾਕੀ ਸਮਾਂ: %d.%03d ਸਕਿੰਟ \n" - -#: grub-core/commands/testspeed.c:92 -#, fuzzy, c-format -msgid "Speed: %s \n" -msgstr "Devid: %s\n" - -#: grub-core/commands/testspeed.c:107 -msgid "[-s SIZE] FILENAME" -msgstr "" - -#: grub-core/commands/testspeed.c:108 -msgid "Test file read speed." -msgstr "" - -#: grub-core/commands/time.c:38 grub-core/script/execute.c:974 -msgid "no command is specified" -msgstr "ਕੋਈ ਕਮਾਂਡ ਨਹੀਂ ਦਿੱਤੀ" - -#: grub-core/commands/time.c:50 -#, c-format -msgid "Elapsed time: %d.%03d seconds \n" -msgstr "ਬਾਕੀ ਸਮਾਂ: %d.%03d ਸਕਿੰਟ \n" - -#: grub-core/commands/time.c:61 -msgid "COMMAND [ARGS]" -msgstr "COMMAND [ARGS]" - -#: grub-core/commands/time.c:62 -msgid "Measure time used by COMMAND" -msgstr "" - -#: grub-core/commands/tr.c:33 -msgid "Translate to upper case." -msgstr "" - -#: grub-core/commands/tr.c:34 -msgid "Translate to lower case." -msgstr "" - -#: grub-core/commands/tr.c:119 -msgid "[OPTIONS] [SET1] [SET2] [STRING]" -msgstr "" - -#: grub-core/commands/tr.c:120 -msgid "Translate SET1 characters to SET2 in STRING." -msgstr "" - -#. TRANSLATORS: it's a command description. -#: grub-core/commands/true.c:50 -msgid "Do nothing, successfully." -msgstr "ਕà©à¨ ਨਾ ਕਰੋ, ਸਫ਼ਲ ਰਿਹਾ।" - -#. TRANSLATORS: it's a command description. -#: grub-core/commands/true.c:54 -msgid "Do nothing, unsuccessfully." -msgstr "ਕà©à¨ ਨਾ ਕਰੋ, ਅਸਫ਼ਲ ਰਿਹਾ।" - -#: grub-core/commands/usbtest.c:221 -msgid "Test USB support." -msgstr "USB ਸਹਿਯੋਗ ਟੈਸਟ ਕਰੋ।" - -#: grub-core/commands/verifiers.c:120 -#, c-format -msgid "verification requested but nobody cares: %s" -msgstr "" - -#: grub-core/commands/verifiers.c:140 -msgid "big file signature isn't implemented yet" -msgstr "" - -#: grub-core/commands/videoinfo.c:61 -msgid "Text-only " -msgstr "ਕੇਵਲ ਟੈਕਸਟ " - -#. TRANSLATORS: "Direct color" is a mode when the color components -#. are written dirrectly into memory. -#: grub-core/commands/videoinfo.c:66 -#, c-format -msgid "Direct color, mask: %d/%d/%d/%d pos: %d/%d/%d/%d" -msgstr "ਸਿੱਧਾ ਰੰਗ, ਮਾਸਕ: %d/%d/%d/%d pos: %d/%d/%d/%d" - -#. TRANSLATORS: In "paletted color" mode you write the index of the color -#. in the palette. Synonyms include "packed pixel". -#: grub-core/commands/videoinfo.c:78 -msgid "Paletted " -msgstr "" - -#: grub-core/commands/videoinfo.c:80 -msgid "YUV " -msgstr "YUV " - -#. TRANSLATORS: "Planar" is the video memory where you have to write -#. in several different banks "plans" to control the different color -#. components of the same pixel. -#: grub-core/commands/videoinfo.c:85 -msgid "Planar " -msgstr "ਪਲੇਨਰ " - -#: grub-core/commands/videoinfo.c:87 -msgid "Hercules " -msgstr "ਹਰੀਕà©à¨²à¨¸ " - -#: grub-core/commands/videoinfo.c:89 -msgid "CGA " -msgstr "CGA " - -#. TRANSLATORS: Non-chain 4 is a 256-color planar -#. (unchained) video memory mode. -#: grub-core/commands/videoinfo.c:93 -msgid "Non-chain 4 " -msgstr "ਗੈਰ-ਚੇਨ 4 " - -#: grub-core/commands/videoinfo.c:95 -msgid "Monochrome " -msgstr "ਇਕਹੇਰਾ ਰੰਗ " - -#: grub-core/commands/videoinfo.c:97 -msgid "Unknown video mode " -msgstr "ਅਣਜਾਣ ਵਿਡੀਓ ਮੋਡ " - -#: grub-core/commands/videoinfo.c:111 -msgid " EDID checksum invalid" -msgstr "" - -#: grub-core/commands/videoinfo.c:116 -#, c-format -msgid " EDID version: %u.%u\n" -msgstr " EDID ਵਰਜਨ: %u.%u\n" - -#: grub-core/commands/videoinfo.c:120 -#, c-format -msgid " Preferred mode: %ux%u\n" -msgstr " ਪਸੰਦੀਦਾ ਮੋਡ: %ux%u\n" - -#: grub-core/commands/videoinfo.c:123 -msgid " No preferred mode available\n" -msgstr " ਕੋਈ ਪਸੰਦੀਦਾ ਮੋਡ ਉਪਲੱਬਧ ਨਹੀਂ\n" - -#: grub-core/commands/videoinfo.c:146 grub-core/video/video.c:490 -#: grub-core/video/video.c:498 grub-core/video/video.c:509 -#: grub-core/video/video.c:520 grub-core/video/video.c:528 -#, c-format -msgid "invalid video mode specification `%s'" -msgstr "ਗਲਤ ਵਿਡੀਓ ਮੋਡ ਹਦਾਇਤ `%s'" - -#: grub-core/commands/videoinfo.c:168 -msgid "List of supported video modes:" -msgstr "ਸਹਾਇਕ ਵਿਡੀਓ ਮੋਡ ਦੀ ਸੂਚੀ:" - -#: grub-core/commands/videoinfo.c:169 -msgid "Legend: mask/position=red/green/blue/reserved" -msgstr "ਸੰਕੇਤ: ਮਾਸਕ/ਸਥਿਤੀ=ਲਾਲ/ਹਰਾ/ਨੀਲਾ/ਰਾਖਵਾਂ" - -#: grub-core/commands/videoinfo.c:176 -#, c-format -msgid "Adapter `%s':\n" -msgstr "ਅਡੈਪਟਰ `%s':\n" - -#: grub-core/commands/videoinfo.c:180 -msgid " No info available" -msgstr " ਕੋਈ ਜਾਣਕਾਰੀ ਨਹੀਂ" - -#: grub-core/commands/videoinfo.c:198 -msgid " Failed to initialize video adapter" -msgstr " ਵਿਡੀਓ ਅਡੈਪਟਰ ਸ਼à©à¨°à©‚ ਕਰਨ ਲਈ ਫੇਲà©à¨¹ ਹੈ" - -#. TRANSLATORS: "x" has to be entered in, -#. like an identifier, so please don't -#. use better Unicode codepoints. -#: grub-core/commands/videoinfo.c:239 grub-core/commands/videoinfo.c:248 -msgid "[WxH[xD]]" -msgstr "[WxH[xD]]" - -#: grub-core/commands/videoinfo.c:240 grub-core/commands/videoinfo.c:249 -msgid "" -"List available video modes. If resolution is given show only modes matching " -"it." -msgstr "" - -#. TRANSLATORS: "x" has to be entered in, -#. like an identifier, so please don't -#. use better Unicode codepoints. -#: grub-core/commands/videotest.c:225 -msgid "[WxH]" -msgstr "[WxH]" - -#. TRANSLATORS: Here, on the other hand, it's -#. nicer to use unicode cross instead of x. -#: grub-core/commands/videotest.c:228 -msgid "Test video subsystem in mode WxH." -msgstr "" - -#: grub-core/commands/videotest.c:231 -msgid "Test video subsystem." -msgstr "ਵਿਡੀਓ ਸਬ-ਸਿਸਟਮ ਟੈਸਟ।" - -#: grub-core/commands/xen/lsxen.c:80 grub-core/commands/xen/lsxen.c:82 -msgid "[DIR]" -msgstr "" - -#: grub-core/commands/xen/lsxen.c:81 grub-core/commands/xen/lsxen.c:83 -msgid "List Xen storage." -msgstr "" - -#. TRANSLATORS: GRUBUUID stands for "filesystem -#. UUID as used in GRUB". -#: grub-core/commands/xnu_uuid.c:110 -msgid "[-l] GRUBUUID [VARNAME]" -msgstr "[-l] GRUBUUID [VARNAME]" - -#: grub-core/commands/xnu_uuid.c:111 -msgid "" -"Transform 64-bit UUID to format suitable for XNU. If -l is given keep it " -"lowercase as done by blkid." -msgstr "" - -#: grub-core/disk/arc/arcdisk.c:248 grub-core/disk/efi/efidisk.c:603 -#: grub-core/disk/i386/pc/biosdisk.c:498 grub-core/disk/i386/pc/biosdisk.c:543 -#: grub-core/disk/ieee1275/nand.c:198 grub-core/disk/ieee1275/obdisk.c:527 -#: grub-core/disk/ieee1275/ofdisk.c:586 -#, c-format -msgid "failure reading sector 0x%llx from `%s'" -msgstr "" - -#: grub-core/disk/arc/arcdisk.c:284 grub-core/disk/efi/efidisk.c:626 -#: grub-core/disk/i386/pc/biosdisk.c:548 grub-core/disk/ieee1275/ofdisk.c:606 -#, c-format -msgid "failure writing sector 0x%llx to `%s'" -msgstr "" - -#: grub-core/disk/cryptodisk.c:40 -msgid "Mount by UUID." -msgstr "UUID ਰਾਹੀਂ ਮਾਊਂਟ।" - -#. TRANSLATORS: It's still restricted to cryptodisks only. -#: grub-core/disk/cryptodisk.c:42 -msgid "Mount all." -msgstr "ਸਭ ਮਾਊਂਟ।" - -#: grub-core/disk/cryptodisk.c:43 -msgid "Mount all volumes with `boot' flag set." -msgstr "" - -#. TRANSLATORS: The first %s is the file being looked at, the second %s is -#. the error message. -#: grub-core/disk/cryptodisk.c:526 grub-core/kern/emu/hostdisk.c:152 -#: grub-core/kern/emu/hostdisk.c:262 grub-core/kern/emu/hostdisk.c:434 -#: grub-core/kern/emu/misc.c:168 grub-core/kern/emu/misc.c:174 -#: grub-core/kern/emu/misc.c:196 grub-core/osdep/bsd/getroot.c:92 -#: grub-core/osdep/bsd/getroot.c:168 grub-core/osdep/hurd/getroot.c:68 -#: grub-core/osdep/linux/blocklist.c:65 grub-core/osdep/linux/getroot.c:150 -#: grub-core/osdep/linux/hostdisk.c:194 grub-core/osdep/linux/hostdisk.c:421 -#: grub-core/osdep/linux/ofpath.c:417 grub-core/osdep/linux/ofpath.c:422 -#: grub-core/osdep/linux/ofpath.c:517 grub-core/osdep/linux/ofpath.c:530 -#: grub-core/osdep/sun/getroot.c:110 grub-core/osdep/windows/blocklist.c:98 -#: grub-core/tests/video_checksum.c:279 util/editenv.c:46 util/glue-efi.c:115 -#: util/glue-efi.c:120 util/glue-efi.c:130 util/grub-editenv.c:138 -#: util/grub-editenv.c:192 util/grub-file.c:83 util/grub-fstest.c:128 -#: util/grub-fstest.c:568 util/grub-install-common.c:92 -#: util/grub-install-common.c:94 util/grub-install-common.c:101 -#: util/grub-install-common.c:529 util/grub-menulst2cfg.c:53 -#: util/grub-menulst2cfg.c:68 util/grub-mkimage.c:292 util/grub-mklayout.c:504 -#: util/grub-mklayout.c:516 util/grub-mknetdir.c:133 util/grub-mknetdir.c:151 -#: util/grub-mkrescue.c:627 util/grub-mkrescue.c:631 util/grub-mkrescue.c:879 -#: util/grub-mkrescue.c:883 util/grub-mkstandalone.c:253 util/grub-mount.c:498 -#: util/grub-render-label.c:169 util/grub-script-check.c:175 -#: util/grub-syslinux2cfg.c:181 util/grub-syslinux2cfg.c:191 -#: util/grub-syslinux2cfg.c:212 util/grub-syslinux2cfg.c:228 util/misc.c:91 -#: util/render-label.c:76 util/render-label.c:163 util/render-label.c:174 -#: util/resolve.c:246 util/setup.c:783 -#, c-format -msgid "cannot open `%s': %s" -msgstr "`%s' ਖੋਲà©à¨¹à¨¿à¨† ਨਹੀਂ ਜਾ ਸਕਦਾ: %s" - -#: grub-core/disk/cryptodisk.c:583 grub-core/disk/cryptodisk.c:628 -#: grub-core/kern/emu/hostdisk.c:270 grub-core/kern/emu/hostfs.c:142 -#: grub-core/osdep/linux/hostdisk.c:456 util/grub-editenv.c:143 -#: util/grub-editenv.c:149 util/grub-fstest.c:320 util/misc.c:111 -#, c-format -msgid "cannot seek `%s': %s" -msgstr "" - -#: grub-core/disk/cryptodisk.c:1144 -msgid "SOURCE|-u UUID|-a|-b" -msgstr "SOURCE|-u UUID|-a|-b" - -#: grub-core/disk/cryptodisk.c:1145 -msgid "Mount a crypto device." -msgstr "ਕà©à¨°à¨¿à¨ªà¨Ÿà©‚ ਜੰਤਰ ਮਾਊਂਟ ਕਰੋ।" - -#. TRANSLATORS: This message kicks in during the detection of -#. which modules needs to be included in core image. This happens -#. in the case of degraded RAID and means that autodetection may -#. fail to include some of modules. It's an installation time -#. message, not runtime message. -#: grub-core/disk/diskfilter.c:343 grub-core/disk/diskfilter.c:376 -#, c-format -msgid "" -"Couldn't find physical volume `%s'. Some modules may be missing from core " -"image." -msgstr "" - -#: grub-core/disk/diskfilter.c:480 -#, c-format -msgid "physical volume %s not found" -msgstr "ਫਿਜ਼ੀਕਲ ਵਾਲੀਅਮ %s ਨਹੀਂ ਲੱਭਿਆ" - -#: grub-core/disk/efi/efidisk.c:600 grub-core/disk/efi/efidisk.c:623 -#, c-format -msgid "no media in `%s'" -msgstr "" - -#: grub-core/disk/geli.c:75 -msgid "Couldn't load sha256" -msgstr "sha256 ਲੋਡ ਨਹੀਂ ਕੀਤਾ ਜਾ ਸਕਿਆ" - -#: grub-core/disk/geli.c:85 -msgid "Couldn't load sha512" -msgstr "sha512 ਲੋਡ ਨਹੀਂ ਕੀਤਾ ਜਾ ਸਕਿਆ" - -#: grub-core/disk/geli.c:216 grub-core/disk/geli.c:220 -msgid "couldn't read ELI metadata" -msgstr "ELI ਮੇਟਾਡਾਟਾ ਪੜਿਆ ਨਹੀਂ ਜਾ ਸਕਿਆ" - -#: grub-core/disk/geli.c:231 -msgid "wrong ELI magic or version" -msgstr "" - -#: grub-core/disk/geli.c:435 grub-core/disk/luks.c:329 -msgid "Attempting to decrypt master key..." -msgstr "...ਮਾਸਟਰ ਕà©à©°à¨œà©€ ਡਿ-ਕà©à¨°à¨¿à¨ªà¨Ÿ ਦੀ ਕੋਸ਼ਿਸ਼ ਜਾਰੀ" - -#: grub-core/disk/geli.c:441 grub-core/disk/luks.c:347 -#, c-format -msgid "Enter passphrase for %s%s%s (%s): " -msgstr "%s%s%s (%s) ਲਈ ਸ਼ਬਦ ਦਿਉ: " - -#. TRANSLATORS: It's a cryptographic key slot: one element of an array -#. where each element is either empty or holds a key. -#: grub-core/disk/geli.c:530 grub-core/disk/luks.c:451 -#, c-format -msgid "Slot %d opened\n" -msgstr "ਸਲਾਟ %d ਖà©à©±à¨²à©à¨¹à©€ ਹੈ\n" - -#: grub-core/disk/i386/pc/biosdisk.c:470 grub-core/disk/i386/pc/biosdisk.c:524 -#: grub-core/disk/i386/pc/biosdisk.c:534 grub-core/kern/disk_common.c:47 -#, c-format -msgid "attempt to read or write outside of disk `%s'" -msgstr "ਡਿਸਕ `%s' ਤੋਂ ਬਾਹਰ ਪੜਨ ਜਾਂ ਲਿਖਣ ਦੀ ਕੋਸ਼ਿਸ਼" - -#: grub-core/disk/i386/pc/biosdisk.c:491 grub-core/disk/i386/pc/biosdisk.c:611 -#: grub-core/disk/scsi.c:726 -msgid "cannot write to CD-ROM" -msgstr "CD-ROM ਉੱਤੇ ਲਿਖਿਆ ਨਹੀਂ ਜਾ ਸਕਦਾ" - -#: grub-core/disk/i386/pc/biosdisk.c:662 -msgid "" -"Native disk drivers are in use. Refusing to use firmware disk interface." -msgstr "" - -#. TRANSLATORS: it's a partition for embedding, -#. not a partition embed into something. GRUB -#. install tools put core.img into a place -#. usable for bootloaders (called generically -#. "embedding zone") and this operation is -#. called "embedding". -#: grub-core/disk/ldm.c:1015 -msgid "your LDM Embedding Partition is too small; embedding won't be possible" -msgstr "" - -#. TRANSLATORS: it's a partition for embedding, -#. not a partition embed into something. -#: grub-core/disk/ldm.c:1033 -msgid "this LDM has no Embedding Partition; embedding won't be possible" -msgstr "" - -#. TRANSLATORS: The disk is simply removed from the list of available ones, -#. not wiped, avoid to scare user. -#: grub-core/disk/loopback.c:45 -msgid "Delete the specified loopback drive." -msgstr "ਦਿੱਤਾ ਲੂਪ-ਬੈਕ ਜੰਤਰ ਹਟਾਉ।" - -#: grub-core/disk/loopback.c:237 -msgid "[-d] DEVICENAME FILE." -msgstr "[-d] DEVICENAME ਫਾਇਲ।" - -#. TRANSLATORS: The file itself is not destroyed -#. or transformed into drive. -#: grub-core/disk/loopback.c:240 -msgid "Make a virtual drive from a file." -msgstr "ਫਾਇਲ ਤੋਂ ਵਰਚà©à¨…ਲ ਡਰਾਇਵ ਬਣਾਉ।" - -#: grub-core/efiemu/i386/loadcore32.c:111 -#: grub-core/efiemu/i386/loadcore64.c:125 grub-core/kern/arm/dl.c:256 -#: grub-core/kern/arm64/dl.c:187 grub-core/kern/i386/dl.c:75 -#: grub-core/kern/ia64/dl.c:140 grub-core/kern/mips/dl.c:258 -#: grub-core/kern/powerpc/dl.c:163 grub-core/kern/riscv/dl.c:334 -#: grub-core/kern/sparc64/dl.c:180 grub-core/kern/x86_64/dl.c:110 -#: util/grub-mkimagexx.c:756 util/grub-mkimagexx.c:881 -#: util/grub-mkimagexx.c:945 util/grub-mkimagexx.c:1026 -#: util/grub-mkimagexx.c:1120 util/grub-mkimagexx.c:1222 -#: util/grub-mkimagexx.c:1413 util/grub-mkimagexx.c:1628 -#: util/grub-mkimagexx.c:1665 util/grub-mkimagexx.c:1697 -#: util/grub-mkimagexx.c:1767 util/grub-mkimagexx.c:1797 -#, c-format -msgid "relocation 0x%x is not implemented yet" -msgstr "" - -#: grub-core/efiemu/loadcore.c:200 grub-core/efiemu/loadcore.c:237 -#: grub-core/loader/i386/bsdXX.c:317 util/grub-mkimagexx.c:2360 -msgid "no symbol table" -msgstr "ਕੋਈ ਸਿੰਬਲ ਟੇਬਲ ਨਹੀਂ" - -#: grub-core/efiemu/loadcore.c:346 grub-core/kern/dl.c:609 -#: grub-core/loader/ia64/efi/linux.c:345 grub-core/loader/mips/linux.c:248 -#: grub-core/loader/multiboot_elfxx.c:76 -#: grub-core/loader/powerpc/ieee1275/linux.c:280 -#: grub-core/loader/sparc64/ieee1275/linux.c:320 -msgid "this ELF file is not of the right type" -msgstr "" - -#: grub-core/efiemu/main.c:313 -msgid "Load and initialize EFI emulator." -msgstr "" - -#: grub-core/efiemu/main.c:317 -msgid "Finalize loading of EFI emulator." -msgstr "" - -#: grub-core/efiemu/main.c:320 -msgid "Unload EFI emulator." -msgstr "" - -#: grub-core/efiemu/symbols.c:92 grub-core/kern/dl.c:376 -#, c-format -msgid "symbol `%s' not found" -msgstr "ਸਿੰਬਲ `%s' ਨਹੀਂ ਲੱਭਿਆ" - -#: grub-core/font/font_cmd.c:52 -msgid "Loaded fonts:" -msgstr "ਲੋਡ ਕੀਤੇ ਫੋਂਟ:" - -#: grub-core/font/font_cmd.c:74 -msgid "FILE..." -msgstr "...ਫਾਇਲ" - -#: grub-core/font/font_cmd.c:75 -msgid "Specify one or more font files to load." -msgstr "ਲੋਡ ਕਰਨ ਲਈ ਇੱਕ ਜਾਂ ਵੱਧ ਫੋਂਟ ਫਾਇਲਾਂ ਦਿਉ।" - -#: grub-core/font/font_cmd.c:78 -msgid "List the loaded fonts." -msgstr "ਲੋਡ ਕੀਤੇ ਫੋਂਟ ਦੀ ਸੂਚੀ।" - -#: grub-core/fs/archelp.c:216 grub-core/fs/archelp.c:278 -#: grub-core/fs/btrfs.c:1815 grub-core/fs/fshelp.c:227 grub-core/fs/jfs.c:736 -#: grub-core/fs/minix.c:369 grub-core/fs/ufs.c:454 -msgid "too deep nesting of symlinks" -msgstr "" - -#: grub-core/fs/bfs.c:228 grub-core/fs/fshelp.c:368 grub-core/fs/minix.c:270 -#: grub-core/kern/file.c:156 -msgid "attempt to read past the end of file" -msgstr "" - -#: grub-core/fs/btrfs.c:1698 grub-core/fs/btrfs.c:1957 -#: grub-core/fs/fshelp.c:189 grub-core/fs/fshelp.c:309 grub-core/fs/jfs.c:431 -#: grub-core/fs/minix.c:414 grub-core/fs/minix.c:562 -#: grub-core/fs/reiserfs.c:732 grub-core/fs/ufs.c:531 grub-core/fs/ufs.c:671 -#: grub-core/fs/zfs/zfs.c:2831 grub-core/fs/zfs/zfs.c:4247 -msgid "not a directory" -msgstr "ਡਾਇਰੈਕਟਰੀ ਨਹੀਂ ਹੈ" - -#: grub-core/fs/btrfs.c:2063 grub-core/fs/fshelp.c:307 grub-core/fs/jfs.c:835 -#: grub-core/fs/zfs/zfs.c:3801 -msgid "not a regular file" -msgstr "ਨਿਯਮਤ ਫਾਇਲ ਨਹੀਂ" - -#: grub-core/fs/btrfs.c:2157 grub-core/fs/zfs/zfs.c:4333 -#: grub-core/partmap/msdos.c:400 -msgid "your core.img is unusually large. It won't fit in the embedding area" -msgstr "" - -#: grub-core/fs/fshelp.c:281 grub-core/fs/minix.c:630 grub-core/fs/ufs.c:661 -#: grub-core/fs/ufs.c:757 grub-core/kern/fs.c:168 grub-core/kern/fs.c:180 -#, c-format -msgid "invalid file name `%s'" -msgstr "ਗਲਤ ਫਾਇਲ ਨਾਂ `%s'" - -#: grub-core/fs/zfs/zfs.c:453 -msgid "checksum verification failed" -msgstr "ਚੈਕਸਮ ਜਾਂਚ ਫੇਲà©à¨¹ ਹੋਈ" - -#: grub-core/fs/zfs/zfs.c:1465 -msgid "couldn't find a necessary member device of multi-device filesystem" -msgstr "" - -#: grub-core/fs/zfs/zfscrypt.c:292 -msgid "no decryption key available" -msgstr "ਕੋਈ ਡਿ-ਕà©à¨°à¨¿à¨ªà¨Ÿà¨¶à¨¨ ਕà©à©°à¨œà©€ ਉਪਲੱਬਧ ਨਹੀਂ" - -#: grub-core/fs/zfs/zfscrypt.c:304 -msgid "MAC verification failed" -msgstr "MAC ਜਾਂਚ ਫੇਲà©à¨¹ ਹੋਈ" - -#: grub-core/fs/zfs/zfscrypt.c:413 -msgid "Assume input is raw." -msgstr "ਇੰਪà©à©±à¨Ÿ ਨੂੰ ਰਾਅ ਮੰਨੋ।" - -#: grub-core/fs/zfs/zfscrypt.c:414 -msgid "Assume input is hex." -msgstr "ਇੰਪà©à©±à¨Ÿ ਨੂੰ ਹੈਕਸਾ ਮੰਨੋ।" - -#: grub-core/fs/zfs/zfscrypt.c:415 -msgid "Assume input is passphrase." -msgstr "ਇੰਪà©à©±à¨Ÿ ਨੂੰ ਵਾਕ ਮੰਨੋ।" - -#: grub-core/fs/zfs/zfscrypt.c:437 util/grub-fstest.c:553 util/grub-mount.c:483 -msgid "Enter ZFS password: " -msgstr "ZFS ਪਾਸਵਰਡ ਦਿਉ: " - -#: grub-core/fs/zfs/zfscrypt.c:476 -msgid "[-h|-p|-r] [FILE]" -msgstr "[-h|-p|-r] [FILE]" - -#: grub-core/fs/zfs/zfscrypt.c:477 -msgid "Import ZFS wrapping key stored in FILE." -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:51 -msgid "Virtual device is removed" -msgstr "ਵਰਚà©à¨…ਲ ਜੰਤਰ ਹਟਾਇਆ ਗਿਆ" - -#: grub-core/fs/zfs/zfsinfo.c:57 -msgid "Virtual device is faulted" -msgstr "ਵਰਚà©à¨…ਲ ਜੰਤਰ ਖਰਾਬ ਹੈ" - -#: grub-core/fs/zfs/zfsinfo.c:63 -msgid "Virtual device is offline" -msgstr "ਵਰਚà©à¨…ਲ ਜੰਤਰ ਆਫਲਾਈਨ ਹੈ" - -#. TRANSLATORS: degraded doesn't mean broken but that some of -#. component are missing but virtual device as whole is still usable. -#: grub-core/fs/zfs/zfsinfo.c:70 -msgid "Virtual device is degraded" -msgstr "ਵਰਚà©à¨…ਲ ਜੰਤਰ ਡੀ-ਗਰੇਡ ਕੀਤਾ" - -#: grub-core/fs/zfs/zfsinfo.c:73 -msgid "Virtual device is online" -msgstr "ਵਰਚà©à¨…ਲ ਜੰਤਰ ਆਨਲਾਈਨ ਹੈ" - -#: grub-core/fs/zfs/zfsinfo.c:89 -msgid "Incorrect virtual device: no type available" -msgstr "ਗਲਤ ਵਰਚà©à¨…ਲ ਜੰਤਰ: ਕੋਈ ਕਿਸਮ ਉਪਲੱਬਧ ਨਹੀਂ" - -#. TRANSLATORS: The virtual devices form a tree (in graph-theoretical -#. sense). The nodes like mirror or raidz have children: member devices. -#. The "real" devices which actually store data are called "leafs" -#. (again borrowed from graph theory) and can be either disks -#. (or partitions) or files. -#: grub-core/fs/zfs/zfsinfo.c:105 -msgid "Leaf virtual device (file or disk)" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:113 -msgid "Bootpath: unavailable\n" -msgstr "ਬੂਟ-ਪਾਥ: ਨਾ-ਉਪਲੱਬਧ\n" - -#: grub-core/fs/zfs/zfsinfo.c:115 -#, c-format -msgid "Bootpath: %s\n" -msgstr "ਬੂਟ-ਪਾਥ: %s\n" - -#: grub-core/fs/zfs/zfsinfo.c:120 -msgid "Path: unavailable" -msgstr "ਪਾਥ: ਨਾ-ਉਪਲੱਬਧ" - -#: grub-core/fs/zfs/zfsinfo.c:122 -#, c-format -msgid "Path: %s\n" -msgstr "ਪਾਥ: %s\n" - -#: grub-core/fs/zfs/zfsinfo.c:127 -msgid "Devid: unavailable" -msgstr "Devid: ਨਾ-ਉਪਲੱਬਧ" - -#: grub-core/fs/zfs/zfsinfo.c:129 -#, c-format -msgid "Devid: %s\n" -msgstr "Devid: %s\n" - -#: grub-core/fs/zfs/zfsinfo.c:148 -msgid "This VDEV is a mirror" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:153 -#, c-format -msgid "This VDEV is a RAIDZ%llu\n" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:158 -#, fuzzy -msgid "Incorrect VDEV" -msgstr "ਗਲਤ ਮਿੱਰਰ" - -#: grub-core/fs/zfs/zfsinfo.c:161 -#, c-format -msgid "VDEV with %d children\n" -msgstr "" - -#. TRANSLATORS: it's the element carying the number %d, not -#. total element number. And the number itself is fine, -#. only the element isn't. -#. -#: grub-core/fs/zfs/zfsinfo.c:177 -#, c-format -msgid "VDEV element number %d isn't correct\n" -msgstr "" - -#. TRANSLATORS: it's the element carying the number %d, not -#. total element number. This is used in enumeration -#. "Element number 1", "Element number 2", ... -#: grub-core/fs/zfs/zfsinfo.c:184 -#, c-format -msgid "VDEV element number %d:\n" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:193 -#, c-format -msgid "Unknown virtual device type: %s\n" -msgstr "ਅਣਜਾਣ ਵਰਚà©à¨…ਲ ਜੰਤਰ ਕਿਸਮ: %s\n" - -#. TRANSLATORS: Here we speak about ZFS pools it's semi-marketing, -#. semi-technical term by Sun/Oracle and should be translated in sync with -#. other ZFS-related software and documentation. -#: grub-core/fs/zfs/zfsinfo.c:254 -msgid "Pool state: active" -msgstr "ਪੂਲ ਹਾਲਤ: ਸਰਗਰਮ" - -#: grub-core/fs/zfs/zfsinfo.c:255 -msgid "Pool state: exported" -msgstr "ਪੂਲ ਹਾਲਤ: à¨à¨•ਸਪੋਰਟ" - -#: grub-core/fs/zfs/zfsinfo.c:256 -msgid "Pool state: destroyed" -msgstr "ਪੂਲ ਹਾਲਤ: ਨਸ਼ਟ ਕੀਤਾ" - -#: grub-core/fs/zfs/zfsinfo.c:257 -msgid "Pool state: reserved for hot spare" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:258 -msgid "Pool state: level 2 ARC device" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:259 -msgid "Pool state: uninitialized" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:260 -msgid "Pool state: unavailable" -msgstr "ਪੂਲ ਹਾਲਤ: ਨਾ-ਉਪਲੱਬਧ" - -#: grub-core/fs/zfs/zfsinfo.c:261 -msgid "Pool state: potentially active" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:306 -msgid "Pool name: unavailable" -msgstr "ਪੂਲ ਨਾਂ: ਨਾ-ਉਪਲੱਬਧ" - -#: grub-core/fs/zfs/zfsinfo.c:308 -#, c-format -msgid "Pool name: %s\n" -msgstr "ਪੂਲ ਨਾਂ: %s\n" - -#: grub-core/fs/zfs/zfsinfo.c:313 -msgid "Pool GUID: unavailable" -msgstr "ਪੂਲ GUID: ਨਾ-ਮੌਜੂਦ" - -#: grub-core/fs/zfs/zfsinfo.c:315 -#, c-format -msgid "Pool GUID: %016llx\n" -msgstr "ਪੂਲ GUID: %016llx\n" - -#: grub-core/fs/zfs/zfsinfo.c:320 -msgid "Unable to retrieve pool state" -msgstr "ਪੂਲ ਹਾਲਤ ਲੈਣ ਲਈ ਅਸਮਰੱਥ" - -#: grub-core/fs/zfs/zfsinfo.c:322 -msgid "Unrecognized pool state" -msgstr "" - -#. TRANSLATORS: There are undetermined number of virtual devices -#. in a device tree, not just one. -#. -#: grub-core/fs/zfs/zfsinfo.c:332 -msgid "No virtual device tree available" -msgstr "ਕੋਈ ਵਰਚà©à¨…ਲ ਜੰਤਰ ਟਰੀ ਉਪਲੱਬਧ ਨਹੀਂ" - -#: grub-core/fs/zfs/zfsinfo.c:431 -msgid "Print ZFS info about DEVICE." -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:433 -msgid "FILESYSTEM [VARIABLE]" -msgstr "FILESYSTEM [VARIABLE]" - -#: grub-core/fs/zfs/zfsinfo.c:434 -msgid "Print ZFS-BOOTFSOBJ or store it into VARIABLE" -msgstr "" - -#. TRANSLATORS: at this position GRUB waits for the user to do an action -#. in remote debugger, namely to tell it to establish connection. -#: grub-core/gdb/gdb.c:48 -msgid "Now connect the remote debugger, please." -msgstr "" - -#. TRANSLATORS: GDB stub is a small part of -#. GDB functionality running on local host -#. which allows remote debugger to -#. connect to it. -#: grub-core/gdb/gdb.c:84 -msgid "Start GDB stub on given port" -msgstr "" - -#. TRANSLATORS: this refers to triggering -#. a breakpoint so that the user will land -#. into GDB. -#: grub-core/gdb/gdb.c:89 -msgid "Break into GDB" -msgstr "" - -#: grub-core/gdb/gdb.c:91 -msgid "Stop GDB stub" -msgstr "" - -#: grub-core/gettext/gettext.c:85 -msgid "premature end of file" -msgstr "ਫਾਇਲ ਦਾ ਅੰਤ ਅਚਾਨਕ ਹੈ।" - -#. TRANSLATORS: It refers to passing the string through gettext. -#. So it's "translate" in the same meaning as in what you're -#. doing now. -#. -#: grub-core/gettext/gettext.c:525 -msgid "Translates the string with the current settings." -msgstr "ਲਾਈਨਾਂ ਨੂੰ ਮੌਜੂਦਾ ਸੈਟਿੰਗ ਨਾਲ ਅਨà©à¨µà¨¾à¨¦ ਕਰੋ।" - -#: grub-core/gfxmenu/gui_label.c:186 grub-core/normal/menu_text.c:184 -msgid "" -"Press enter to boot the selected OS, `e' to edit the commands before booting " -"or `c' for a command-line. ESC to return previous menu." -msgstr "" - -#: grub-core/gfxmenu/gui_label.c:190 grub-core/normal/menu_text.c:192 -msgid "" -"Press enter to boot the selected OS, `e' to edit the commands before booting " -"or `c' for a command-line." -msgstr "" -"ਚà©à¨£à©‡ ਓਪਰੇਟਿੰਗ ਸਿਸਟਮ (OS) ਵਿੱਚ ਬੂਟ ਕਰਨ ਲਈ Enter, ਬੂਟ ਕਰਨ ਤੋਂ ਪਹਿਲਾਂ ਕਮਾਂਡ ਸੋਧਣ ਲਈ `e' ਜਾਂ " -"ਕਮਾਂਡ-ਲਾਈਨ ਲਈ `c' ਦੱਬੋ।" - -#: grub-core/gfxmenu/gui_label.c:194 -msgid "enter: boot, `e': options, `c': cmd-line" -msgstr "enter: ਬੂਟ, `e': ਚੋਣਾਂ, `c': ਕਮਾਂਡ-ਲਾਈਨ" - -#: grub-core/gfxmenu/gui_progress_bar.c:339 grub-core/normal/menu_text.c:446 -#, c-format -msgid "The highlighted entry will be executed automatically in %ds." -msgstr "" - -#. TRANSLATORS: 's' stands for seconds. -#. It's a standalone timeout notification. -#. Please use the short form in your language. -#: grub-core/gfxmenu/gui_progress_bar.c:344 -#, c-format -msgid "%ds remaining." -msgstr "%ds ਬਾਕੀ।" - -#. TRANSLATORS: 's' stands for seconds. -#. It's a standalone timeout notification. -#. Please use the shortest form available in you language. -#: grub-core/gfxmenu/gui_progress_bar.c:349 grub-core/normal/menu_text.c:444 -#: grub-core/normal/menu_text.c:462 -#, c-format -msgid "%ds" -msgstr "%ds" - -#: grub-core/gfxmenu/view.c:103 -msgid "GRUB Boot Menu" -msgstr "ਗਰੱਬ ਬੂਟ ਮੇਨੂ" - -#: grub-core/hello/hello.c:36 -msgid "Hello World" -msgstr "ਹੈਲੋ ਵਰਲਡ" - -#: grub-core/hello/hello.c:45 -msgid "Say `Hello World'." -msgstr "`Hello World' ਕਹੋ।" - -#: grub-core/io/gzio.c:409 grub-core/kern/file.c:210 -msgid "attempt to seek outside of the file" -msgstr "" - -#. TRANSLATORS: It's about given file having some strange format, not -#. complete lack of gzip support. -#: grub-core/io/gzio.c:1228 grub-core/io/gzio.c:1237 grub-core/io/gzio.c:1244 -msgid "unsupported gzip format" -msgstr "ਗ਼ੈਰ-ਸਹਾਇਕ gzip ਫਾਰਮੈਟ" - -#: grub-core/io/lzopio.c:511 -msgid "lzop file corrupted" -msgstr "lzop ਫਾਇਲ ਨਿਕਾਰਾ ਹੈ" - -#: grub-core/io/xzio.c:278 -msgid "xz file corrupted or unsupported block options" -msgstr "" - -#: grub-core/kern/arm/dl.c:277 grub-core/kern/arm64/dl.c:44 -#: grub-core/kern/i386/dl.c:36 grub-core/kern/ia64/dl.c:41 -#: grub-core/kern/mips/dl.c:48 grub-core/kern/powerpc/dl.c:36 -#: grub-core/kern/riscv/dl.c:47 grub-core/kern/sparc64/dl.c:36 -#: grub-core/kern/x86_64/dl.c:36 grub-core/loader/i386/bsd.c:1445 -#: grub-core/loader/i386/bsdXX.c:49 grub-core/loader/ia64/efi/linux.c:341 -#: grub-core/loader/mips/linux.c:298 grub-core/loader/multiboot.c:232 -#: grub-core/loader/multiboot_elfxx.c:73 -#: grub-core/loader/powerpc/ieee1275/linux.c:294 -#: grub-core/loader/sparc64/ieee1275/linux.c:331 -msgid "invalid arch-dependent ELF magic" -msgstr "" - -#: grub-core/kern/corecmd.c:178 -msgid "[ENVVAR=VALUE]" -msgstr "[ENVVAR=VALUE]" - -#: grub-core/kern/corecmd.c:179 -msgid "Set an environment variable." -msgstr "ਇੰਵਾਇਰਨਮੈਂਟ ਵੇਰੀਬਲ ਸੈੱਟ ਕਰੋ।" - -#: grub-core/kern/corecmd.c:183 -msgid "ENVVAR" -msgstr "ENVVAR" - -#: grub-core/kern/corecmd.c:184 -msgid "Remove an environment variable." -msgstr "ਇੰਵਾਇਰਨਮੈਂਟ ਵੇਰੀਬਲ ਹਟਾਉ।" - -#: grub-core/kern/corecmd.c:186 -msgid "[ARG]" -msgstr "[ARG]" - -#: grub-core/kern/corecmd.c:186 -msgid "List devices or files." -msgstr "ਜੰਤਰ ਜਾਂ ਫਾਇਲਾਂ ਦੀ ਸੂਚੀ।" - -#: grub-core/kern/corecmd.c:188 -msgid "Insert a module." -msgstr "ਮੋਡੀਊਲ ਸ਼ਾਮਿਲ ਕਰੋ।" - -#: grub-core/kern/disk.c:236 grub-core/net/net.c:1390 -#, c-format -msgid "disk `%s' not found" -msgstr "ਡਿਸਕ `%s' ਨਹੀਂ ਲੱਭੀ" - -#: grub-core/kern/disk_common.c:27 -msgid "attempt to read or write outside of partition" -msgstr "" - -#: grub-core/kern/dl.c:212 grub-core/kern/elf.c:61 grub-core/kern/elf.c:79 -#: grub-core/loader/i386/bsdXX.c:46 grub-core/loader/ia64/efi/linux.c:335 -#: grub-core/loader/multiboot_elfxx.c:69 -msgid "invalid arch-independent ELF magic" -msgstr "" - -#. TRANSLATORS: it refers to the lack of free slots. -#: grub-core/kern/emu/hostdisk.c:208 grub-core/kern/emu/hostdisk.c:466 -msgid "device count exceeds limit" -msgstr "" - -#: grub-core/kern/emu/hostdisk.c:342 util/editenv.c:54 util/grub-editenv.c:197 -#: util/grub-fstest.c:191 util/grub-mkfont.c:796 util/misc.c:114 -#: util/misc.c:129 util/setup.c:788 -#, c-format -msgid "cannot write to `%s': %s" -msgstr "`%s' ਉੱਤੇ ਲਿਖਿਆ ਨਹੀਂ ਜਾ ਸਕਦਾ: %s" - -#. TRANSLATORS: Only one entry is ignored. However the suggestion -#. is to correct/delete the whole file. -#. device.map is a file indicating which -#. devices are available at boot time. Fedora populated it with -#. entries like (hd0,1) /dev/sda1 which would mean that every -#. partition is a separate disk for BIOS. Such entries were -#. inactive in GRUB due to its bug which is now gone. Without -#. this additional check these entries would be harmful now. -#. -#: grub-core/kern/emu/hostdisk.c:503 -#, c-format -msgid "" -"the device.map entry `%s' is invalid. Ignoring it. Please correct or delete " -"your device.map" -msgstr "" - -#. TRANSLATORS: device.map is a filename. Not to be translated. -#. device.map specifies disk correspondance overrides. Previously -#. one could create any kind of device name with this. Due to -#. some problems we decided to limit it to just a handful -#. possibilities. -#: grub-core/kern/emu/hostdisk.c:555 -#, c-format -msgid "" -"the drive name `%s' in device.map is incorrect. Using %s instead. Please use " -"the form [hfc]d[0-9]* (E.g. `hd0' or `cd')" -msgstr "" - -#: grub-core/kern/emu/hostfs.c:76 grub-core/kern/emu/hostfs.c:109 -#, c-format -msgid "can't open `%s': %s" -msgstr "`%s' ਨੂੰ ਖੋਲà©à¨¹à¨¿à¨† ਨਹੀਂ ਜਾ ਸਕਦਾ: %s" - -#: grub-core/kern/emu/main.c:99 util/grub-fstest.c:516 util/grub-mount.c:452 -msgid "DEVICE_NAME" -msgstr "DEVICE_NAME" - -#: grub-core/kern/emu/main.c:99 grub-core/loader/i386/bsd.c:136 -#: grub-core/loader/i386/bsd.c:169 util/grub-fstest.c:516 util/grub-mount.c:452 -msgid "Set root device." -msgstr "ਰੂਟ ਜੰਤਰ ਸੈੱਟ ਕਰੋ।" - -#. TRANSLATORS: There are many devices in device map. -#: grub-core/kern/emu/main.c:102 util/grub-probe.c:733 util/grub-setup.c:85 -#, c-format -msgid "use FILE as the device map [default=%s]" -msgstr "" - -#. TRANSLATORS: There are many devices in device map. -#: grub-core/kern/emu/main.c:105 -msgid "use FILE as memdisk" -msgstr "" - -#: grub-core/kern/emu/main.c:107 util/grub-setup.c:83 -#, c-format -msgid "use GRUB files in the directory DIR [default=%s]" -msgstr "" - -#: grub-core/kern/emu/main.c:108 include/grub/util/install.h:67 -#: util/grub-editenv.c:58 util/grub-fstest.c:525 util/grub-glue-efi.c:58 -#: util/grub-macbless.c:104 util/grub-mkfont.c:962 util/grub-mkimage.c:84 -#: util/grub-mklayout.c:56 util/grub-mount.c:458 util/grub-probe.c:735 -#: util/grub-render-label.c:74 util/grub-script-check.c:52 util/grub-setup.c:90 -#: util/grub-syslinux2cfg.c:78 -msgid "print verbose messages." -msgstr "ਵੇਰਵੇ ਸਮੇਤ ਸà©à¨¨à©‡à¨¹à©‡ ਛਾਪੋ।" - -#: grub-core/kern/emu/main.c:109 grub-core/lib/gnulib/argp-parse.c:85 -msgid "SECS" -msgstr "ਸਕਿੰਟ" - -#: grub-core/kern/emu/main.c:109 -msgid "wait until a debugger will attach" -msgstr "" - -#: grub-core/kern/emu/main.c:171 util/grub-macbless.c:143 -#: util/grub-mkrelpath.c:61 util/grub-probe.c:874 util/grub-script-check.c:75 -#: util/grub-setup.c:203 -#, c-format -msgid "Unknown extra argument `%s'." -msgstr "" - -#: grub-core/kern/emu/main.c:185 -msgid "GRUB emulator." -msgstr "" - -#: grub-core/kern/emu/main.c:213 util/grub-editenv.c:262 -#: util/grub-glue-efi.c:110 util/grub-macbless.c:173 util/grub-mkfont.c:1177 -#: util/grub-mkimage.c:266 util/grub-mklayout.c:494 -#: util/grub-mkpasswd-pbkdf2.c:132 util/grub-mkrelpath.c:96 -#: util/grub-probe.c:863 util/grub-render-label.c:152 -#: util/grub-script-check.c:160 util/grub-setup.c:262 -#: util/grub-syslinux2cfg.c:163 -msgid "Error in parsing command line arguments\n" -msgstr "ਕਮਾਂਡ ਲਾਈਨ ਆਰਗੂਮੈਂਟ ਪਾਰਸ ਕਰਨ ਵਿੱਚ ਗਲਤੀ।\n" - -#. TRANSLATORS: In this case GRUB tells user what he has to do. -#: grub-core/kern/emu/main.c:248 -#, c-format -msgid "Run `gdb %s %d', and set ARGS.HOLD to zero.\n" -msgstr "" - -#: grub-core/kern/emu/misc.c:48 -#, c-format -msgid "%s: warning:" -msgstr "%s: ਚੇਤਾਵਨੀ:" - -#: grub-core/kern/emu/misc.c:64 -#, c-format -msgid "%s: info:" -msgstr "%s: ਜਾਣਕਾਰੀ:" - -#: grub-core/kern/emu/misc.c:79 util/grub-fstest.c:567 util/grub-fstest.c:576 -#: util/grub-mount.c:497 util/grub-mount.c:505 -#, c-format -msgid "%s: error:" -msgstr "%s: ਗਲਤੀ:" - -#: grub-core/kern/emu/misc.c:176 -#, fuzzy, c-format -msgid "file `%s' is too big" -msgstr "ਫਿਰਮਵੇਅਰ ਈਮੇਜ਼ ਬਹà©à¨¤ ਵੱਡਾ ਹੈ" - -#: grub-core/kern/fs.c:120 -msgid "unknown filesystem" -msgstr "ਅਣਜਾਣ ਫਾਇਲ ਸਿਸਟਮ" - -#: grub-core/kern/mips/arc/init.c:273 grub-core/kern/mips/loongson/init.c:301 -msgid "Shutdown failed" -msgstr "ਬੰਦ ਕਰਨਾ ਫੇਲà©à¨¹ ਹੈ" - -#: grub-core/kern/mips/arc/init.c:285 -msgid "Exit failed" -msgstr "ਬਾਹਰ ਜਾਣ ਲਈ ਫੇਲà©à¨¹" - -#: grub-core/kern/misc.c:351 grub-core/kern/misc.c:408 include/grub/misc.h:269 -#: include/grub/misc.h:278 -msgid "overflow is detected" -msgstr "ਓਵਰਫਲੋ ਖੋਜਿਆ" - -#: grub-core/kern/partition.c:51 grub-core/partmap/bsdlabel.c:108 -#, c-format -msgid "Discarding improperly nested partition (%s,%s,%s%d)" -msgstr "" - -#: grub-core/kern/rescue_parser.c:73 util/grub-editenv.c:292 -#, c-format -msgid "Unknown command `%s'.\n" -msgstr "ਅਣਜਾਣ ਕਮਾਂਡ `%s'।\n" - -#: grub-core/lib/arg.c:31 -msgid "Display this help and exit." -msgstr "ਇਹ ਮੱਦਦ ਵੇਖਾਉ ਅਤੇ ਬੰਦ ਕਰੋ।" - -#: grub-core/lib/arg.c:33 -msgid "Display the usage of this command and exit." -msgstr "ਇਸ ਕਮਾਂਡ ਦੀ ਵਰਤੋਂ ਵੇਖਾਉ ਅਤੇ ਬੰਦ ਕਰੋ।" - -#: grub-core/lib/arg.c:362 -#, c-format -msgid "missing mandatory option for `%s'" -msgstr "" - -#: grub-core/lib/arg.c:384 -#, c-format -msgid "the argument `%s' requires an integer" -msgstr "" - -#: grub-core/lib/arg.c:407 -#, c-format -msgid "" -"a value was assigned to the argument `%s' while it doesn't require an " -"argument" -msgstr "" - -#: grub-core/lib/backtrace.c:64 -msgid "Print backtrace." -msgstr "" - -#: grub-core/lib/gnulib/argp-help.c:149 -#, c-format -msgid "ARGP_HELP_FMT: %s value is less than or equal to %s" -msgstr "" - -#: grub-core/lib/gnulib/argp-help.c:225 -#, c-format -msgid "%.*s: ARGP_HELP_FMT parameter requires a value" -msgstr "" - -#: grub-core/lib/gnulib/argp-help.c:235 -#, c-format -msgid "%.*s: Unknown ARGP_HELP_FMT parameter" -msgstr "" - -#: grub-core/lib/gnulib/argp-help.c:248 -#, c-format -msgid "Garbage in ARGP_HELP_FMT: %s" -msgstr "" - -#: grub-core/lib/gnulib/argp-help.c:1229 -msgid "" -"Mandatory or optional arguments to long options are also mandatory or " -"optional for any corresponding short options." -msgstr "" - -#: grub-core/lib/gnulib/argp-help.c:1620 -msgid " or: " -msgstr " ਜਾਂ: " - -#: grub-core/lib/gnulib/argp-help.c:1632 -msgid " [OPTION...]" -msgstr "[ਚੋਣ...]" - -#: grub-core/lib/gnulib/argp-help.c:1659 -#, fuzzy, c-format -msgid "Try '%s --help' or '%s --usage' for more information.\n" -msgstr "ਹੋਰ ਜਾਣਕਾਰੀ ਲਈ `%s --help' ਜਾਂ `%s --usage' ਨਾਲ ਕੋਸ਼ਿਸ਼ ਕਰੋ।\n" - -#: grub-core/lib/gnulib/argp-help.c:1687 -#, c-format -msgid "Report bugs to %s.\n" -msgstr "ਬੱਗ ਜਾਣਕਾਰੀ %s ਨੂੰ ਭੇਜੋ।\n" - -#: grub-core/lib/gnulib/argp-help.c:1888 grub-core/lib/gnulib/error.c:195 -msgid "Unknown system error" -msgstr "ਅਣਜਾਣ ਸਿਸਟਮ ਗਲਤੀ" - -#: grub-core/lib/gnulib/argp-parse.c:81 -msgid "give this help list" -msgstr "ਇਹ ਮੱਦਦ ਸੂਚੀ ਦਿਉ" - -#: grub-core/lib/gnulib/argp-parse.c:82 -msgid "give a short usage message" -msgstr "ਸੰਖੇਪ ਵਰਤੋਂ ਸà©à¨¨à©‡à¨¹à¨¾ ਦਿਉ" - -#: grub-core/lib/gnulib/argp-parse.c:83 util/grub-mkfont.c:946 -msgid "NAME" -msgstr "ਨਾਂ" - -#: grub-core/lib/gnulib/argp-parse.c:84 -msgid "set the program name" -msgstr "ਪਰੋਗਰਾਮ ਨਾਂ ਸੈੱਟ ਕਰੋ" - -#: grub-core/lib/gnulib/argp-parse.c:86 -msgid "hang for SECS seconds (default 3600)" -msgstr "ਸਕਿੰਟ ਸਕਿੰਟਾਂ ਲਈ ਰੋਕੋ (ਮੂਲ 3600)" - -#: grub-core/lib/gnulib/argp-parse.c:143 -msgid "print program version" -msgstr "ਪਰੋਗਰਾਮ ਵਰਜਨ ਛਾਪੋ" - -#: grub-core/lib/gnulib/argp-parse.c:160 -msgid "(PROGRAM ERROR) No version known!?" -msgstr "(PROGRAM ERROR) ਕੋਈ ਜਾਣਿਆ ਵਰਜਨ ਨਹੀਂ!?" - -#: grub-core/lib/gnulib/argp-parse.c:613 -#, c-format -msgid "%s: Too many arguments\n" -msgstr "%s: ਬਹà©à¨¤ ਆਰਗੂਮੈਂਟ\n" - -#: grub-core/lib/gnulib/argp-parse.c:759 -msgid "(PROGRAM ERROR) Option should have been recognized!?" -msgstr "" - -#: grub-core/lib/gnulib/getopt.c:278 -#, fuzzy, c-format -msgid "%s: option '%s%s' is ambiguous\n" -msgstr "%s: ਚੋਣ '%s' ਗਲਤ ਹੈ\n" - -#: grub-core/lib/gnulib/getopt.c:284 -#, fuzzy, c-format -msgid "%s: option '%s%s' is ambiguous; possibilities:" -msgstr "%s: ਚੋਣ '%s' ਗਲਤ ਹੈ\n" - -#: grub-core/lib/gnulib/getopt.c:319 -#, fuzzy, c-format -msgid "%s: unrecognized option '%s%s'\n" -msgstr "%s: ਬੇ-ਪਛਾਣ ਚੋਣ '%c%s'\n" - -#: grub-core/lib/gnulib/getopt.c:345 -#, fuzzy, c-format -msgid "%s: option '%s%s' doesn't allow an argument\n" -msgstr "'%s: ਚੋਣ '%c%s' ਇੱਕ ਆਰਗੂਮੈਂਟ ਨਹੀਂ ਲੈਂਦੀ\n" - -#: grub-core/lib/gnulib/getopt.c:360 -#, fuzzy, c-format -msgid "%s: option '%s%s' requires an argument\n" -msgstr "%s: ਚੋਣ '--%s' ਲਈ ਇੱਕ ਆਰਗੂਮੈਂਟ ਚਾਹੀਦਾ\n" - -#: grub-core/lib/gnulib/getopt.c:621 -#, c-format -msgid "%s: invalid option -- '%c'\n" -msgstr "%s: ਗਲਤ ਚੋਣ -- '%c'\n" - -#: grub-core/lib/gnulib/getopt.c:636 grub-core/lib/gnulib/getopt.c:682 -#, c-format -msgid "%s: option requires an argument -- '%c'\n" -msgstr "%s: ਚੋਣ ਲਈ ਆਰਗੂਮੈਂਟ ਚਾਹੀਦਾ ਹੈ --'%c'\n" - -#: grub-core/lib/gnulib/openat-die.c:38 -#, fuzzy, c-format -msgid "unable to record current working directory" -msgstr "ਅਸਲੀ ਡਾਇਰੈਕਟਰੀ ਰੀ-ਸਟੋਰ ਨਹੀਂ ਕੀਤੀ ਜਾ ਸਕਦੀ" - -#: grub-core/lib/gnulib/openat-die.c:57 -#, c-format -msgid "failed to return to initial working directory" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:135 grub-core/osdep/aros/hostdisk.c:523 -msgid "Success" -msgstr "ਸਫ਼ਲ" - -#: grub-core/lib/gnulib/regcomp.c:138 -msgid "No match" -msgstr "ਕੋਈ ਮੇਲ ਨਹੀਂ" - -#: grub-core/lib/gnulib/regcomp.c:141 -msgid "Invalid regular expression" -msgstr "ਗਲਤ ਰੈਗੂਲਰ ਸਮੀਕਰਨ" - -#: grub-core/lib/gnulib/regcomp.c:144 -msgid "Invalid collation character" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:147 -msgid "Invalid character class name" -msgstr "ਗਲਤ ਕਰੈਕਟਰ ਕਲਾਸ ਨਾਂ" - -#: grub-core/lib/gnulib/regcomp.c:150 -msgid "Trailing backslash" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:153 -msgid "Invalid back reference" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:156 -#, fuzzy -msgid "Unmatched [, [^, [:, [., or [=" -msgstr "ਨਾ ਮਿਲਦੇ [ ਜਾਂ [^" - -#: grub-core/lib/gnulib/regcomp.c:159 -msgid "Unmatched ( or \\(" -msgstr "ਨਾ ਮਿਲਦੇ ( ਜਾਂ \\(" - -#: grub-core/lib/gnulib/regcomp.c:162 -msgid "Unmatched \\{" -msgstr "ਨਾ-ਮਿਲਦੇ \\{" - -#: grub-core/lib/gnulib/regcomp.c:165 -msgid "Invalid content of \\{\\}" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:168 -msgid "Invalid range end" -msgstr "ਗਲਤ ਅੰਤ ਰੇਜ਼" - -#: grub-core/lib/gnulib/regcomp.c:171 -msgid "Memory exhausted" -msgstr "ਮੈਮੋਰੀ ਖਤਮ ਹੋਈ" - -#: grub-core/lib/gnulib/regcomp.c:174 -msgid "Invalid preceding regular expression" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:177 -msgid "Premature end of regular expression" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:180 -msgid "Regular expression too big" -msgstr "ਨਿਯਮਤ ਸਮੀਕਰਨ ਬਹà©à¨¤ ਵੱਡੀ ਹੈ" - -#: grub-core/lib/gnulib/regcomp.c:183 -msgid "Unmatched ) or \\)" -msgstr "ਨਾ ਮਿਲਦੇ ) ਜਾਂ \\)" - -#: grub-core/lib/gnulib/regcomp.c:531 -msgid "unknown regexp error" -msgstr "ਅਣਜਾਣ regexp ਗਲਤੀ" - -#: grub-core/lib/gnulib/regcomp.c:676 -msgid "No previous regular expression" -msgstr "ਕੋਈ ਪਿਛਲਾ ਨਿਯਮਤ ਸਮੀਕਰਨ ਨਹੀਂ" - -#: grub-core/lib/i386/halt.c:77 -msgid "GRUB doesn't know how to halt this machine yet!" -msgstr "ਗਰੱਬ ਨਹੀਂ ਜਾਣਦਾ ਹੈ ਕਿ ਇਹ ਮਸ਼ੀਨ ਨੂੰ ਕਿਵੇਂ ਰੋਕਣਾ ਹੈ!" - -#: grub-core/lib/legacy_parse.c:75 -msgid "Default server is ${net_default_server}" -msgstr "" - -#: grub-core/lib/legacy_parse.c:844 grub-core/video/colors.c:296 -#: grub-core/video/colors.c:305 grub-core/video/colors.c:311 -#: grub-core/video/colors.c:327 util/render-label.c:84 util/render-label.c:98 -#, c-format -msgid "invalid color specification `%s'" -msgstr "" - -#: grub-core/lib/mips/arc/reboot.c:32 grub-core/lib/mips/loongson/reboot.c:61 -msgid "Reboot failed" -msgstr "ਮà©à©œ-ਚਾਲੂ ਕਰਨ ਲਈ ਫੇਲà©à¨¹" - -#: grub-core/lib/random.c:113 -msgid "[LENGTH]" -msgstr "" - -#: grub-core/lib/random.c:114 -msgid "Hexdump random data." -msgstr "" - -#: grub-core/loader/arm/linux.c:242 -msgid "device tree must be supplied (see `devicetree' command)" -msgstr "" - -#: grub-core/loader/arm/linux.c:334 -#, fuzzy -msgid "invalid zImage" -msgstr "ਗਲਤ ਫੋਂਟ ਰੇਜ਼" - -#: grub-core/loader/arm/linux.c:450 grub-core/loader/efi/fdt.c:144 -#, fuzzy -msgid "invalid device tree" -msgstr "ਗਲਤ ਜੰਤਰ `%s'।\n" - -#: grub-core/loader/arm/linux.c:493 grub-core/loader/arm64/linux.c:383 -#: grub-core/loader/i386/linux.c:1125 grub-core/loader/i386/pc/linux.c:479 -#: grub-core/loader/i386/xen.c:962 grub-core/loader/i386/xen.c:964 -#: grub-core/loader/ia64/efi/linux.c:591 grub-core/loader/mips/linux.c:501 -#: grub-core/loader/powerpc/ieee1275/linux.c:383 -#: grub-core/loader/riscv/linux.c:50 -#: grub-core/loader/sparc64/ieee1275/linux.c:511 -msgid "Load Linux." -msgstr "ਲੀਨਕਸ ਲੋਡ ਕਰੋ।" - -#: grub-core/loader/arm/linux.c:495 grub-core/loader/arm64/linux.c:385 -#: grub-core/loader/i386/linux.c:1127 grub-core/loader/i386/pc/linux.c:482 -#: grub-core/loader/i386/xen.c:966 grub-core/loader/ia64/efi/linux.c:594 -#: grub-core/loader/mips/linux.c:503 -#: grub-core/loader/powerpc/ieee1275/linux.c:385 -#: grub-core/loader/riscv/linux.c:52 -#: grub-core/loader/sparc64/ieee1275/linux.c:513 -msgid "Load initrd." -msgstr "initrd ਲੋਡ ਕਰੋ।" - -#. TRANSLATORS: DTB stands for device tree blob. -#: grub-core/loader/arm/linux.c:498 grub-core/loader/efi/fdt.c:169 -#, fuzzy -msgid "Load DTB file." -msgstr "XNU ਈਮੇਜ਼ ਲੋਡ ਕਰੋ।" - -#: grub-core/loader/arm64/linux.c:59 -msgid "" -"plain image kernel not supported - rebuild with CONFIG_(U)EFI_STUB enabled" -msgstr "" - -#: grub-core/loader/arm64/xen_boot.c:156 -msgid "failed to get FDT" -msgstr "" - -#: grub-core/loader/arm64/xen_boot.c:418 -#, fuzzy -msgid "you need to load the Xen Hypervisor first" -msgstr "ਤà©à¨¹à¨¾à¨¨à©‚à©° ਪਹਿਲਾਂ ਕਰਨਲ ਲੋਡ ਕਰਨ ਦੀ ਲੋੜ ਹੈ।" - -#: grub-core/loader/arm64/xen_boot.c:516 -#, fuzzy -msgid "Load a xen hypervisor." -msgstr "%s, Xen ਹਾਈਪਰਵਾਈਜ਼ਰ ਨਾਲ" - -#: grub-core/loader/arm64/xen_boot.c:519 -#, fuzzy -msgid "Load a xen module." -msgstr "ਮੋਡੀਊਲ ਹਟਾਉ।" - -#: grub-core/loader/efi/appleloader.c:231 -msgid "[OPTS]" -msgstr "[OPTS]" - -#. TRANSLATORS: This command is used on EFI to -#. switch to BIOS mode and boot the OS requiring -#. BIOS. -#: grub-core/loader/efi/appleloader.c:235 -msgid "Boot BIOS-based system." -msgstr "BIOS-ਅਧਾਰਿਤ ਸਿਸਟਮ ਬੂਟ ਕਰੋ।" - -#: grub-core/loader/efi/chainloader.c:421 -#: grub-core/loader/i386/pc/chainloader.c:303 -msgid "Load another boot loader." -msgstr "ਹੋਰ ਬੂਟ ਲੋਡਰ ਲੋਡ ਕਰੋ।" - -#: grub-core/loader/i386/bsd.c:103 -msgid "Display output on all consoles." -msgstr "ਸਭ ਕਨਸੋਲ ਉੱਤੇ ਆਉਟਪà©à©±à¨Ÿ ਵੇਖੋ।" - -#: grub-core/loader/i386/bsd.c:104 grub-core/loader/i386/bsd.c:138 -#: grub-core/loader/i386/bsd.c:171 -msgid "Use serial console." -msgstr "ਸੀਰੀਅਥ ਕਨਸੋਲ ਵਰਤੋਂ।" - -#: grub-core/loader/i386/bsd.c:105 grub-core/loader/i386/bsd.c:131 -#: grub-core/loader/i386/bsd.c:159 -msgid "Ask for file name to reboot from." -msgstr "ਮà©à©œ-ਚਾਲੂ ਕਰਨ ਲਈ ਫਾਇਲ ਨਾਂ ਪà©à©±à¨›à©‹à¥¤" - -#: grub-core/loader/i386/bsd.c:106 -msgid "Use CD-ROM as root." -msgstr "CD-ROM ਨੂੰ ਰੂਟ ਵਜੋਂ ਵਰਤੋਂ।" - -#: grub-core/loader/i386/bsd.c:107 -msgid "Invoke user configuration routing." -msgstr "" - -#: grub-core/loader/i386/bsd.c:108 grub-core/loader/i386/bsd.c:135 -#: grub-core/loader/i386/bsd.c:162 -msgid "Enter in KDB on boot." -msgstr "" - -#: grub-core/loader/i386/bsd.c:109 -msgid "Use GDB remote debugger instead of DDB." -msgstr "" - -#: grub-core/loader/i386/bsd.c:110 -msgid "Disable all boot output." -msgstr "ਸਭ ਬੂਟ ਆਉਟਪà©à©±à¨Ÿ ਬੰਦ ਕਰੋ।" - -#: grub-core/loader/i386/bsd.c:112 -msgid "Wait for keypress after every line of output." -msgstr "" - -#: grub-core/loader/i386/bsd.c:114 -msgid "Use compiled-in root device." -msgstr "" - -#: grub-core/loader/i386/bsd.c:115 grub-core/loader/i386/bsd.c:134 -#: grub-core/loader/i386/bsd.c:165 -msgid "Boot into single mode." -msgstr "ਸਿੰਗਲ ਮੋਡ ਵਿੱਚ ਬੂਟ ਕਰੋ।" - -#: grub-core/loader/i386/bsd.c:116 grub-core/loader/i386/bsd.c:166 -msgid "Boot with verbose messages." -msgstr "" - -#: grub-core/loader/i386/bsd.c:132 grub-core/loader/i386/bsd.c:160 -msgid "Don't reboot, just halt." -msgstr "ਮà©à©œ-ਚਾਲੂ ਨਾ ਕਰੋ, ਸਿਰਫ਼ ਰੋਕੋ।" - -#: grub-core/loader/i386/bsd.c:133 grub-core/loader/i386/bsd.c:161 -msgid "Change configured devices." -msgstr "ਸੰਰਚਿਤ ਜੰਤਰ ਬਦਲੋ।" - -#. TRANSLATORS: "com" is static and not to be translated. It refers to -#. serial ports e.g. com1. -#. -#: grub-core/loader/i386/bsd.c:142 -msgid "comUNIT[,SPEED]" -msgstr "comUNIT[,SPEED]" - -#: grub-core/loader/i386/bsd.c:157 -msgid "Disable SMP." -msgstr "SMP ਬੰਦ।" - -#: grub-core/loader/i386/bsd.c:158 -msgid "Disable ACPI." -msgstr "ACPI ਬੰਦ।" - -#: grub-core/loader/i386/bsd.c:164 -msgid "Don't display boot diagnostic messages." -msgstr "ਬੂਟ ਜਾਂਚ-ਪੜਤਾਲ ਸà©à¨¨à©‡à¨¹à©‡ ਨਾ ਵੇਖਾਉ।" - -#: grub-core/loader/i386/bsd.c:167 -msgid "Boot with debug messages." -msgstr "ਡੀਬੱਗ ਸà©à¨¨à©‡à¨¹à¨¿à¨†à¨‚ ਨਾਲ ਬੂਟ ਕਰੋ।" - -#: grub-core/loader/i386/bsd.c:168 -msgid "Suppress normal output (warnings remain)." -msgstr "" - -#. TRANSLATORS: "com" is static and not to be translated. It refers to -#. serial ports e.g. com1. -#. -#: grub-core/loader/i386/bsd.c:175 -msgid "[ADDR|comUNIT][,SPEED]" -msgstr "[ADDR|comUNIT][,SPEED]" - -#: grub-core/loader/i386/bsd.c:489 grub-core/loader/i386/bsd.c:555 -msgid "name" -msgstr "ਨਾਂ" - -#: grub-core/loader/i386/bsd.c:489 grub-core/loader/i386/bsd.c:555 -msgid "type" -msgstr "ਕਿਸਮ" - -#: grub-core/loader/i386/bsd.c:489 grub-core/loader/i386/bsd.c:555 -msgid "addr" -msgstr "addr" - -#: grub-core/loader/i386/bsd.c:490 grub-core/loader/i386/bsd.c:556 -msgid "size" -msgstr "ਸਾਈਜ਼" - -#: grub-core/loader/i386/bsd.c:1147 grub-core/loader/i386/linux.c:466 -#: grub-core/loader/i386/xnu.c:1030 -msgid "Booting in blind mode" -msgstr "" - -#: grub-core/loader/i386/bsd.c:2137 -msgid "Load kernel of FreeBSD." -msgstr "" - -#: grub-core/loader/i386/bsd.c:2140 -msgid "Load kernel of OpenBSD." -msgstr "" - -#: grub-core/loader/i386/bsd.c:2143 -msgid "Load kernel of NetBSD." -msgstr "" - -#: grub-core/loader/i386/bsd.c:2147 -msgid "Load FreeBSD env." -msgstr "" - -#: grub-core/loader/i386/bsd.c:2150 -msgid "Load FreeBSD kernel module." -msgstr "" - -#: grub-core/loader/i386/bsd.c:2153 -msgid "Load NetBSD kernel module." -msgstr "" - -#: grub-core/loader/i386/bsd.c:2156 -msgid "Load NetBSD kernel module (ELF)." -msgstr "" - -#: grub-core/loader/i386/bsd.c:2159 -msgid "Load FreeBSD kernel module (ELF)." -msgstr "" - -#. TRANSLATORS: ramdisk isn't identifier, -#. it can be translated. -#: grub-core/loader/i386/bsd.c:2165 -msgid "Load kOpenBSD ramdisk." -msgstr "" - -#. TRANSLATORS: "payload" is a term used -#. by coreboot and must be translated in -#. sync with coreboot. If unsure, -#. let it untranslated. -#: grub-core/loader/i386/coreboot/chainloader.c:510 -msgid "Load another coreboot payload" -msgstr "ਹੋਰ ਕੋਰਬੂਟ ਪਲੇਅਲੋਡ ਲੋਡ ਕਰੋ" - -#: grub-core/loader/i386/linux.c:876 -msgid "Legacy `ask' parameter no longer supported." -msgstr "" - -#: grub-core/loader/i386/linux.c:892 grub-core/loader/i386/linux.c:902 -#: grub-core/loader/i386/linux.c:932 -#, c-format -msgid "%s is deprecated. Use set gfxpayload=%s before linux command instead.\n" -msgstr "" - -#. TRANSLATORS: "x" has to be entered in, like an identifier, -#. so please don't use better Unicode codepoints. -#: grub-core/loader/i386/linux.c:915 -#, c-format -msgid "" -"%s is deprecated. VGA mode %d isn't recognized. Use set " -"gfxpayload=WIDTHxHEIGHT[xDEPTH] before linux command instead.\n" -msgstr "" - -#: grub-core/loader/i386/pc/chainloader.c:302 -msgid "[--force|--bpb] FILE" -msgstr "[--force|--bpb] FILE" - -#: grub-core/loader/i386/pc/freedos.c:148 util/setup.c:293 -#, c-format -msgid "the size of `%s' is too large" -msgstr "`%s' ਦਾ ਆਕਾਰ ਬਹà©à¨¤ ਵੱਡਾ ਹੈ" - -#: grub-core/loader/i386/pc/freedos.c:183 -msgid "Load FreeDOS kernel.sys." -msgstr "" - -#: grub-core/loader/i386/pc/ntldr.c:155 -msgid "Load NTLDR or BootMGR." -msgstr "NTLDR ਜਾਂ BootMGR ਲੋਡ ਕਰੋ।" - -#. TRANSLATORS: it's about guessing which GRUB disk -#. is which Plan9 disk. If your language has no -#. word "mapping" you can use another word which -#. means that the GRUBDEVICE and PLAN9DEVICE are -#. actually the same device, just named differently -#. in OS and GRUB. -#: grub-core/loader/i386/pc/plan9.c:59 -msgid "Override guessed mapping of Plan9 devices." -msgstr "" - -#: grub-core/loader/i386/pc/plan9.c:60 -msgid "GRUBDEVICE=PLAN9DEVICE" -msgstr "GRUBDEVICE=PLAN9DEVICE" - -#: grub-core/loader/i386/pc/plan9.c:599 -msgid "KERNEL ARGS" -msgstr "KERNEL ARGS" - -#: grub-core/loader/i386/pc/plan9.c:599 -msgid "Load Plan9 kernel." -msgstr "Plan9 ਕਰਨਲ ਲੋਡ ਕਰੋ।" - -#: grub-core/loader/i386/pc/pxechainloader.c:161 -msgid "Load a PXE image." -msgstr "" - -#: grub-core/loader/i386/pc/truecrypt.c:226 -msgid "Load Truecrypt ISO." -msgstr "" - -#: grub-core/loader/i386/xen.c:781 grub-core/loader/i386/xen.c:865 -msgid "initrd already loaded" -msgstr "" - -#: grub-core/loader/i386/xen.c:968 -#, fuzzy -msgid "Load module." -msgstr "ਮੋਡੀਊਲ ਹਟਾਉ।" - -#: grub-core/loader/i386/xnu.c:1003 -msgid "Press any key to launch xnu" -msgstr "xnu ਚਲਾਉਣ ਲਈ ਕੋਈ ਵੀ ਸਵਿੱਚ ਦੱਬੋ।" - -#. TRANSLATORS: `device-properties' -#. is a variable name, -#. not a program. -#: grub-core/loader/i386/xnu.c:1159 -msgid "Load `device-properties' dump." -msgstr "" - -#: grub-core/loader/ia64/efi/linux.c:124 -msgid "Could not locate FPSWA driver" -msgstr "" - -#: grub-core/loader/ia64/efi/linux.c:132 -msgid "FPSWA protocol wasn't able to find the interface" -msgstr "" - -#: grub-core/loader/ia64/efi/linux.c:580 -msgid "No FPSWA found" -msgstr "FPSWA ਨਹੀਂ ਲੱਭਿਆ" - -#: grub-core/loader/ia64/efi/linux.c:582 -#, c-format -msgid "FPSWA revision: %x\n" -msgstr "FPSWA ਰੀਵਿਜ਼ਨ: %x\n" - -#: grub-core/loader/ia64/efi/linux.c:591 -msgid "FILE [ARGS...]" -msgstr "FILE [ARGS...]" - -#: grub-core/loader/ia64/efi/linux.c:597 -msgid "Display FPSWA version." -msgstr "FPSWA ਵਰਜਨ ਵੇਖਾਉ।" - -#: grub-core/loader/multiboot.c:248 -msgid "WARNING: no console will be available to OS" -msgstr "" - -#: grub-core/loader/multiboot.c:450 -msgid "Load a multiboot 2 kernel." -msgstr "" - -#: grub-core/loader/multiboot.c:453 -msgid "Load a multiboot 2 module." -msgstr "" - -#: grub-core/loader/multiboot.c:456 -msgid "Load a multiboot kernel." -msgstr "" - -#: grub-core/loader/multiboot.c:459 -msgid "Load a multiboot module." -msgstr "" - -#: grub-core/loader/riscv/linux.c:30 grub-core/loader/riscv/linux.c:40 -#, fuzzy -msgid "Linux not supported yet" -msgstr "ਸਹਾਇਕ ਵਿਡੀਓ ਮੋਡ ਦੀ ਸੂਚੀ:" - -#: grub-core/loader/xnu.c:1416 grub-core/term/gfxterm_background.c:45 -msgid "Background image mode." -msgstr "ਬੈਕਗਰਾਊਂਡ ਚਿੱਤਰ ਮੋਡ।" - -#. TRANSLATORS: This refers to background image mode (stretched or -#. in left-top corner). Note that GRUB will accept only original -#. keywords stretch and normal, not the translated ones. -#. So please put both in translation -#. e.g. stretch(=%STRETCH%)|normal(=%NORMAL%). -#. The percents mark the translated version. Since many people -#. may not know the word stretch or normal I recommend -#. putting the translation either here or in "Background image mode." -#. string. -#: grub-core/loader/xnu.c:1416 grub-core/term/gfxterm_background.c:55 -msgid "stretch|normal" -msgstr "stretch|normal" - -#: grub-core/loader/xnu.c:1482 -msgid "Load XNU image." -msgstr "XNU ਈਮੇਜ਼ ਲੋਡ ਕਰੋ।" - -#: grub-core/loader/xnu.c:1484 -msgid "Load 64-bit XNU image." -msgstr "64-ਬਿੱਜ਼ XNU ਈਮੇਜ਼ ਲੋਡ ਕਰੋ।" - -#: grub-core/loader/xnu.c:1486 -msgid "Load XNU extension package." -msgstr "" - -#: grub-core/loader/xnu.c:1488 -msgid "Load XNU extension." -msgstr "" - -#. TRANSLATORS: OSBundleRequired is a -#. variable name in xnu extensions -#. manifests. It behaves mostly like -#. GNU/Linux runlevels. -#. -#: grub-core/loader/xnu.c:1495 -msgid "DIRECTORY [OSBundleRequired]" -msgstr "ਡਾਇਰੈਕਟਰੀ [OSBundleRequired]" - -#. TRANSLATORS: There are many extensions -#. in extension directory. -#: grub-core/loader/xnu.c:1498 -msgid "Load XNU extension directory." -msgstr "" - -#. TRANSLATORS: ramdisk here isn't identifier. It can be translated. -#: grub-core/loader/xnu.c:1501 -msgid "Load XNU ramdisk. It will be available in OS as md0." -msgstr "" - -#: grub-core/loader/xnu.c:1505 -msgid "Load a splash image for XNU." -msgstr "" - -#: grub-core/loader/xnu.c:1510 -msgid "Load an image of hibernated XNU." -msgstr "" - -#: grub-core/mmap/mmap.c:538 -msgid "ADDR1,MASK1[,ADDR2,MASK2[,...]]" -msgstr "ADDR1,MASK1[,ADDR2,MASK2[,...]]" - -#: grub-core/mmap/mmap.c:539 -msgid "Declare memory regions as faulty (badram)." -msgstr "" - -#: grub-core/mmap/mmap.c:541 -msgid "FROM[K|M|G] TO[K|M|G]" -msgstr "ਤੋਂ[K|M|G] ਤੱਕ[K|M|G]" - -#: grub-core/mmap/mmap.c:542 -msgid "Remove any memory regions in specified range." -msgstr "ਦਿੱਤੀ ਰੇਜ਼ ਵਿੱਚ ਕੋਈ ਵੀ ਮੈਮੋਰੀ ਖੇਤਰ ਹਟਾਉ।" - -#: grub-core/net/bootp.c:653 -msgid "four arguments expected" -msgstr "" - -#: grub-core/net/bootp.c:661 grub-core/net/net.c:1155 -#, c-format -msgid "unrecognised network interface `%s'" -msgstr "" - -#: grub-core/net/bootp.c:664 -msgid "no DHCP info found" -msgstr "DHCP ਜਾਣਕਾਰੀ ਨਹੀਂ ਲੱਭੀ" - -#: grub-core/net/bootp.c:674 -msgid "no DHCP options found" -msgstr "" - -#: grub-core/net/bootp.c:682 -#, fuzzy -msgid "invalid DHCP option code" -msgstr "%s: ਗਲਤ ਚੋਣ -- '%c'\n" - -#: grub-core/net/bootp.c:686 -#, fuzzy, c-format -msgid "no DHCP option %u found" -msgstr "DHCP ਜਾਣਕਾਰੀ ਨਹੀਂ ਲੱਭੀ" - -#: grub-core/net/bootp.c:743 -#, c-format -msgid "unrecognised DHCP option format specification `%s'" -msgstr "" - -#: grub-core/net/bootp.c:767 -msgid "no network card found" -msgstr "" - -#: grub-core/net/bootp.c:859 grub-core/net/net.c:389 -#, c-format -msgid "couldn't autoconfigure %s" -msgstr "" - -#: grub-core/net/bootp.c:873 grub-core/net/bootp.c:876 -msgid "[CARD]" -msgstr "[CARD]" - -#: grub-core/net/bootp.c:874 -msgid "perform a bootp autoconfiguration" -msgstr "ਬੂਟ ਆਟੋ-ਸੰਰਚਨਾ ਕਰੋ" - -#: grub-core/net/bootp.c:877 -#, fuzzy -msgid "perform a DHCP autoconfiguration" -msgstr "ਬੂਟ ਆਟੋ-ਸੰਰਚਨਾ ਕਰੋ" - -#: grub-core/net/bootp.c:879 -msgid "VAR INTERFACE NUMBER DESCRIPTION" -msgstr "" - -#: grub-core/net/bootp.c:880 -msgid "" -"retrieve DHCP option and save it into VAR. If VAR is - then print the value." -msgstr "" - -#: grub-core/net/dns.c:459 -msgid "no DNS servers configured" -msgstr "" - -#: grub-core/net/dns.c:522 -msgid "domain name component is too long" -msgstr "" - -#: grub-core/net/dns.c:618 grub-core/net/dns.c:666 -msgid "no DNS record found" -msgstr "" - -#: grub-core/net/dns.c:626 -msgid "no DNS reply received" -msgstr "" - -#: grub-core/net/dns.c:682 -msgid "only ipv4" -msgstr "" - -#: grub-core/net/dns.c:686 -msgid "only ipv6" -msgstr "" - -#: grub-core/net/dns.c:690 -msgid "prefer ipv4" -msgstr "" - -#: grub-core/net/dns.c:694 -msgid "prefer ipv6" -msgstr "" - -#: grub-core/net/dns.c:759 -msgid "ADDRESS DNSSERVER" -msgstr "ADDRESS DNSSERVER" - -#: grub-core/net/dns.c:760 -msgid "Perform a DNS lookup" -msgstr "" - -#: grub-core/net/dns.c:762 grub-core/net/dns.c:765 -msgid "DNSSERVER" -msgstr "DNSSERVER" - -#: grub-core/net/dns.c:763 -msgid "Add a DNS server" -msgstr "" - -#: grub-core/net/dns.c:766 -msgid "Remove a DNS server" -msgstr "" - -#: grub-core/net/dns.c:768 -msgid "List DNS servers" -msgstr "" - -#: grub-core/net/drivers/efi/efinet.c:49 grub-core/net/drivers/efi/efinet.c:65 -#: grub-core/net/drivers/efi/efinet.c:77 grub-core/net/drivers/emu/emunet.c:62 -#: grub-core/net/drivers/i386/pc/pxe.c:273 -#: grub-core/net/drivers/ieee1275/ofnet.c:75 -#: grub-core/net/drivers/uboot/ubootnet.c:62 -msgid "couldn't send network packet" -msgstr "" - -#: grub-core/net/drivers/ieee1275/ofnet.c:326 -#: grub-core/net/drivers/ieee1275/ofnet.c:359 -#, fuzzy -msgid "interpret is not supported" -msgstr "16-ਬਿੱਟ ਸà©à¨°à©±à¨–ਿਅਤ ਇੰਟਰਫੇਸ ਸਹਾਇਕ ਹੈ\n" - -#: grub-core/net/drivers/ieee1275/ofnet.c:336 -msgid "alloc-mem failed" -msgstr "" - -#: grub-core/net/drivers/ieee1275/ofnet.c:370 -msgid "free-mem failed" -msgstr "" - -#: grub-core/net/http.c:105 -msgid "unsupported HTTP response" -msgstr "" - -#. TRANSLATORS: GRUB HTTP code is pretty young. So even perfectly -#. valid answers like 403 will trigger this very generic message. -#: grub-core/net/http.c:126 -#, c-format -msgid "unsupported HTTP error %d: %s" -msgstr "" - -#: grub-core/net/http.c:429 grub-core/net/tftp.c:420 -#, c-format -msgid "time out opening `%s'" -msgstr "" - -#: grub-core/net/net.c:179 -msgid "timeout: could not resolve hardware address" -msgstr "" - -#: grub-core/net/net.c:548 -#, c-format -msgid "unresolvable address %s" -msgstr "" - -#: grub-core/net/net.c:594 -#, c-format -msgid "unrecognised network address `%s'" -msgstr "" - -#: grub-core/net/net.c:661 -msgid "destination unreachable" -msgstr "ਟਿਕਾਣਾ ਵਰਤਿਆ ਨਹੀਂ ਜਾ ਸਕਦਾ" - -#. TRANSLATORS: route loop is a condition when e.g. -#. to contact server A you need to go through B -#. and to contact B you need to go through A. -#: grub-core/net/net.c:684 -msgid "route loop detected" -msgstr "ਰੂਟ ਲੂਪ ਖੋਜਿਆ" - -#: grub-core/net/net.c:700 -msgid "address not found" -msgstr "à¨à¨¡à¨°à©ˆà¨¸ ਨਹੀਂ ਲੱਭਿਆ" - -#: grub-core/net/net.c:704 -msgid "you can't delete this address" -msgstr "" - -#: grub-core/net/net.c:776 grub-core/net/net.c:792 -#, c-format -msgid "Unsupported hw address type %d\n" -msgstr "" - -#: grub-core/net/net.c:813 -#, c-format -msgid "Unsupported address type %d\n" -msgstr "" - -#: grub-core/net/net.c:1017 grub-core/net/net.c:1131 -msgid "three arguments expected" -msgstr "" - -#: grub-core/net/net.c:1023 -msgid "card not found" -msgstr "ਕਾਰਡ ਨਹੀਂ ਲੱਭਿਆ" - -#. TRANSLATORS: it refers to the network address. -#: grub-core/net/net.c:1167 -msgid "temporary" -msgstr "ਆਰਜ਼ੀ" - -#: grub-core/net/net.c:1190 -#, c-format -msgid "Unknown address type %d\n" -msgstr "ਅਣਜਾਣ à¨à¨¡à¨°à©ˆà¨¸ ਕਿਸਮ %d\n" - -#: grub-core/net/net.c:1298 -msgid "no server is specified" -msgstr "" - -#: grub-core/net/net.c:1637 -#, c-format -msgid "timeout reading `%s'" -msgstr "" - -#. TRANSLATORS: HWADDRESS stands for -#. "hardware address". -#: grub-core/net/net.c:1762 -msgid "SHORTNAME CARD ADDRESS [HWADDRESS]" -msgstr "" - -#: grub-core/net/net.c:1763 -msgid "Add a network address." -msgstr "" - -#: grub-core/net/net.c:1766 -msgid "[CARD [HWADDRESS]]" -msgstr "" - -#: grub-core/net/net.c:1767 -msgid "Perform an IPV6 autoconfiguration" -msgstr "" - -#: grub-core/net/net.c:1770 grub-core/net/net.c:1777 -msgid "SHORTNAME" -msgstr "" - -#: grub-core/net/net.c:1771 -msgid "Delete a network address." -msgstr "" - -#. TRANSLATORS: "gw" is a keyword. -#: grub-core/net/net.c:1774 -msgid "SHORTNAME NET [INTERFACE| gw GATEWAY]" -msgstr "" - -#: grub-core/net/net.c:1775 -msgid "Add a network route." -msgstr "" - -#: grub-core/net/net.c:1778 -msgid "Delete a network route." -msgstr "" - -#: grub-core/net/net.c:1780 -msgid "list network routes" -msgstr "" - -#: grub-core/net/net.c:1782 -msgid "list network cards" -msgstr "" - -#: grub-core/net/net.c:1784 -msgid "list network addresses" -msgstr "" - -#: grub-core/net/tcp.c:681 -msgid "connection refused" -msgstr "ਕà©à¨¨à©ˆà¨•ਸ਼ਨ ਤੋਂ ਇਨਕਾਰ ਕੀਤਾ" - -#: grub-core/net/tcp.c:684 -msgid "connection timeout" -msgstr "ਕà©à¨¨à©ˆà¨•ਸ਼ਨ ਸਮਾਂ-ਸਮਾਪਤ" - -#: grub-core/normal/auth.c:220 -msgid "Enter username: " -msgstr "ਯੂਜ਼ਰ ਨਾਂ ਦਿਉ: " - -#: grub-core/normal/auth.c:269 -msgid "[USERLIST]" -msgstr "[USERLIST]" - -#: grub-core/normal/auth.c:270 -msgid "Check whether user is in USERLIST." -msgstr "" - -#: grub-core/normal/cmdline.c:174 grub-core/normal/menu_entry.c:1068 -msgid "Possible commands are:" -msgstr "ਸੰਭਾਵਿਤ ਕਮਾਂਡ ਹਨ:" - -#: grub-core/normal/cmdline.c:177 grub-core/normal/menu_entry.c:1072 -msgid "Possible devices are:" -msgstr "ਸੰਭਾਵਿਤ ਜੰਤਰ:" - -#: grub-core/normal/cmdline.c:180 grub-core/normal/menu_entry.c:1076 -msgid "Possible files are:" -msgstr "ਸੰਭਾਵਿਤ ਫਾਇਲਾਂ:" - -#: grub-core/normal/cmdline.c:183 grub-core/normal/menu_entry.c:1080 -msgid "Possible partitions are:" -msgstr "ਸੰਭਾਵਿਤ ਪਾਰਟੀਸ਼ਨ:" - -#: grub-core/normal/cmdline.c:186 grub-core/normal/menu_entry.c:1084 -msgid "Possible arguments are:" -msgstr "ਸੰਭਾਵਿਤ ਆਰਗੂਮੈਂਟ:" - -#. TRANSLATORS: this message is used if none of above matches. -#. This shouldn't happen but please use the general term for -#. "thing" or "object". -#: grub-core/normal/cmdline.c:192 grub-core/normal/menu_entry.c:1088 -msgid "Possible things are:" -msgstr "" - -#: grub-core/normal/color.c:81 -#, c-format -msgid "Warning: syntax error (missing slash) in `%s'\n" -msgstr "" - -#: grub-core/normal/color.c:90 -#, c-format -msgid "Warning: invalid foreground color `%s'\n" -msgstr "" - -#: grub-core/normal/color.c:96 -#, c-format -msgid "Warning: invalid background color `%s'\n" -msgstr "" - -#: grub-core/normal/context.c:206 -msgid "ENVVAR [ENVVAR] ..." -msgstr "ENVVAR [ENVVAR] ..." - -#: grub-core/normal/context.c:207 -msgid "Export variables." -msgstr "" - -#: grub-core/normal/datetime.c:25 -msgid "Sunday" -msgstr "à¨à¨¤à¨µà¨¾à¨°" - -#: grub-core/normal/datetime.c:26 -msgid "Monday" -msgstr "ਸੋਮਵਾਰ" - -#: grub-core/normal/datetime.c:27 -msgid "Tuesday" -msgstr "ਮੰਗਲਵਾਰ" - -#: grub-core/normal/datetime.c:28 -msgid "Wednesday" -msgstr "ਬà©à©±à¨§à¨µà¨¾à¨°" - -#: grub-core/normal/datetime.c:29 -msgid "Thursday" -msgstr "ਵੀਰਵਾਰ" - -#: grub-core/normal/datetime.c:30 -msgid "Friday" -msgstr "ਸ਼à©à©±à¨•ਰਵਾਰ" - -#: grub-core/normal/datetime.c:31 -msgid "Saturday" -msgstr "ਸ਼ਨਿੱਚਰਵਾਰ" - -#: grub-core/normal/dyncmd.c:187 -msgid "module isn't loaded" -msgstr "ਮੋਡੀਊਲ ਲੋਡ ਨਹੀਂ ਹੈ" - -#: grub-core/normal/main.c:211 -#, c-format -msgid "GNU GRUB version %s" -msgstr "ਗਨੂ ਗਰਬ ਵਰਜਨ %s" - -#: grub-core/normal/main.c:360 -msgid "ESC at any time exits." -msgstr "ਕਿਸੇ ਵੀ ਸਮੇਂ ਬਾਹਰ ਜਾਣ ਲਈ ESC।" - -#: grub-core/normal/main.c:363 -#, c-format -msgid "" -"Minimal BASH-like line editing is supported. For the first word, TAB lists " -"possible command completions. Anywhere else TAB lists possible device or " -"file completions. %s" -msgstr "" - -#. TRANSLATORS: it's command line prompt. -#: grub-core/normal/main.c:395 -msgid ">" -msgstr ">" - -#. TRANSLATORS: it's command line prompt. -#: grub-core/normal/main.c:398 -msgid "grub>" -msgstr "grub>" - -#: grub-core/normal/main.c:518 -msgid "Clear the screen." -msgstr "ਸਕਰੀਨ ਸਾਫ਼ ਕਰੋ।" - -#: grub-core/normal/main.c:527 -msgid "Enter normal mode." -msgstr "ਸਧਾਰਨ ਮੋਡ 'ਚ ਜਾਉ।" - -#: grub-core/normal/main.c:529 -msgid "Exit from normal mode." -msgstr "ਸਧਾਰਨ ਮੋਡ ਵਿੱਚੋਂ ਬਾਹਰ ਆਉ।" - -#: grub-core/normal/menu.c:66 grub-core/normal/menu_entry.c:1449 -msgid "Press any key to continue..." -msgstr "ਜਾਰੀ ਰੱਖਣ ਲਈ ਕੋਈ ਵੀ ਸਵਿੱਚ ਦੱਬੋ..." - -#: grub-core/normal/menu.c:815 -#, c-format -msgid "Booting `%s'" -msgstr "`%s' ਬੂਟ ਕੀਤਾ ਜਾ ਰਿਹਾ ਹੈ" - -#: grub-core/normal/menu.c:827 -#, c-format -msgid "Falling back to `%s'" -msgstr "`%s' ਲਈ ਫਾਲਬੈਕ" - -#: grub-core/normal/menu.c:843 -msgid "Failed to boot both default and fallback entries.\n" -msgstr "" - -#: grub-core/normal/menu_entry.c:1171 -msgid "Booting a command list" -msgstr "ਕਮਾਂਡ ਸੂਚੀ ਬੂਟ ਕੀਤੀ ਜਾ ਰਹੀ ਹੈ" - -#: grub-core/normal/menu_text.c:160 -msgid "" -"Minimum Emacs-like screen editing is supported. TAB lists completions. Press " -"Ctrl-x or F10 to boot, Ctrl-c or F2 for a command-line or ESC to discard " -"edits and return to the GRUB menu." -msgstr "" - -#: grub-core/normal/menu_text.c:170 -#, c-format -msgid "Use the %C and %C keys to select which entry is highlighted." -msgstr "" - -#. TRANSLATORS: that's the list of binary unit prefixes. -#: grub-core/normal/misc.c:38 -msgid "B" -msgstr "" - -#: grub-core/normal/misc.c:38 -msgid "KiB" -msgstr "" - -#: grub-core/normal/misc.c:38 -msgid "MiB" -msgstr "" - -#: grub-core/normal/misc.c:38 -msgid "GiB" -msgstr "" - -#: grub-core/normal/misc.c:38 -msgid "TiB" -msgstr "" - -#: grub-core/normal/misc.c:38 -msgid "PiB" -msgstr "" - -#. TRANSLATORS: that's the list of binary unit prefixes. -#: grub-core/normal/misc.c:40 -msgid "K" -msgstr "" - -#: grub-core/normal/misc.c:40 -msgid "M" -msgstr "" - -#: grub-core/normal/misc.c:40 -msgid "G" -msgstr "" - -#: grub-core/normal/misc.c:40 -msgid "T" -msgstr "" - -#: grub-core/normal/misc.c:40 -msgid "P" -msgstr "" - -#. TRANSLATORS: that's the list of binary unit prefixes. -#: grub-core/normal/misc.c:42 -msgid "B/s" -msgstr "" - -#: grub-core/normal/misc.c:42 -msgid "KiB/s" -msgstr "" - -#: grub-core/normal/misc.c:42 -msgid "MiB/s" -msgstr "" - -#: grub-core/normal/misc.c:42 -msgid "GiB/s" -msgstr "" - -#: grub-core/normal/misc.c:42 -msgid "TiB/s" -msgstr "" - -#: grub-core/normal/misc.c:42 -msgid "PiB/s" -msgstr "" - -#: grub-core/normal/misc.c:96 -#, c-format -msgid "Partition %s:" -msgstr "ਪਾਰਟੀਸ਼ਨ %s:" - -#: grub-core/normal/misc.c:101 -#, c-format -msgid "Device %s:" -msgstr "ਜੰਤਰ %s:" - -#: grub-core/normal/misc.c:107 -msgid "Filesystem cannot be accessed" -msgstr "ਫਾਇਲ-ਸਿਸਟਮ ਵਰਤਿਆ ਨਹੀਂ ਜਾ ਸਕਦਾ" - -#: grub-core/normal/misc.c:121 -#, c-format -msgid "Filesystem type %s" -msgstr "ਫਾਇਲ ਸਿਸਟਮ ਕਿਸਮ %s" - -#: grub-core/normal/misc.c:131 -#, c-format -msgid "- Label `%s'" -msgstr "- ਲੇਬਲ `%s'" - -#. TRANSLATORS: Arguments are year, month, day, hour, minute, -#. second, day of the week (translated). -#: grub-core/normal/misc.c:148 -#, c-format -msgid "- Last modification time %d-%02d-%02d %02d:%02d:%02d %s" -msgstr "- ਆਖਰੀ ਸੋਧ ਸਮਾਂ %d-%02d-%02d %02d:%02d:%02d %s" - -#: grub-core/normal/misc.c:171 -msgid "No known filesystem detected" -msgstr "ਅਣਜਾਣ ਫਾਇਲ ਸਿਸਟਮ ਕਿਸਮ ਖੋਜੀ" - -#: grub-core/normal/misc.c:174 -#, c-format -msgid " - Partition start at %llu%sKiB" -msgstr "" - -#: grub-core/normal/misc.c:178 -#, c-format -msgid " - Sector size %uB" -msgstr "" - -#: grub-core/normal/misc.c:180 -msgid " - Total size unknown" -msgstr " - ਕà©à©±à¨² ਆਕਾਰ ਅਣਜਾਣ" - -#: grub-core/normal/misc.c:182 -#, fuzzy, c-format -msgid " - Total size %llu%sKiB" -msgstr " - ਕà©à©±à¨² ਆਕਾਰ %llu ਸੈਕਟਰ" - -#. TRANSLATORS: Replace dot with appropriate decimal separator for -#. your language. -#: grub-core/normal/misc.c:186 -msgid ".5" -msgstr "" - -#. TRANSLATORS: This has to fit on one line. It's ok to include few -#. words but don't write poems. -#: grub-core/normal/term.c:82 -msgid "--MORE--" -msgstr "--ਹੋਰ--" - -#: grub-core/osdep/aros/config.c:92 grub-core/osdep/unix/config.c:137 -#: grub-core/osdep/windows/config.c:55 -#, fuzzy, c-format -msgid "cannot open configuration file `%s': %s" -msgstr "OS ਫਾਇਲ `%s' ਖੋਲà©à¨¹à©€ ਨਹੀਂ ਜਾ ਸਕਦੀ: %s" - -#: grub-core/osdep/basic/compress.c:8 grub-core/osdep/basic/compress.c:14 -#: grub-core/osdep/basic/compress.c:20 -#, fuzzy -msgid "no compression is available for your platform" -msgstr "ਤà©à¨¹à¨¾à¨¡à©‡ ਪਲੇਟਫਾਰਮ ਲਈ ਕੋਈ ਇਸ਼ਾਰਾ ਨਹੀਂ ਹੈ। ਕਾਰਗà©à©›à¨¾à¨°à©€ ਘਟਣ ਦੀ ਉਮੀਦ ਹੈ।" - -#: grub-core/osdep/basic/no_platform.c:30 -#: grub-core/osdep/windows/platform.c:418 -msgid "no IEEE1275 routines are available for your platform" -msgstr "" - -#: grub-core/osdep/basic/no_platform.c:38 -msgid "no EFI routines are available for your platform" -msgstr "" - -#: grub-core/osdep/basic/no_platform.c:45 -#: grub-core/osdep/windows/platform.c:425 -msgid "no SGI routines are available for your platform" -msgstr "" - -#. TRANSLATORS: The OS itself may very well have a random -#. number generator but GRUB doesn't know how to access it. -#: grub-core/osdep/basic/random.c:42 -msgid "no random number generator is available for your OS" -msgstr "" - -#: grub-core/osdep/devmapper/getroot.c:81 -msgid "Failed to create `device-mapper' tree" -msgstr "" - -#: grub-core/osdep/devmapper/getroot.c:197 -#: grub-core/osdep/freebsd/getroot.c:202 -#, c-format -msgid "can't mount encrypted volume `%s': %s" -msgstr "ਇੰਕà©à¨°à¨¿à¨ªà¨Ÿ ਕੀਤੇ ਵਾਲੀਅਮ `%s' ਨੂੰ ਮਾਊਂਟ ਨਹੀਂ ਕੀਤਾ ਜਾ ਸਕਦਾ: %s" - -#. TRANSLATORS: geom is the name of (k)FreeBSD device framework. -#. Usually left untranslated. -#. -#: grub-core/osdep/freebsd/getroot.c:82 grub-core/osdep/freebsd/getroot.c:164 -#: grub-core/osdep/freebsd/getroot.c:258 grub-core/osdep/freebsd/getroot.c:316 -msgid "couldn't open geom" -msgstr "geom ਖੋਲà©à¨¹à¨¿à¨† ਨਹੀਂ ਸਕਿਆ" - -#: grub-core/osdep/freebsd/getroot.c:182 grub-core/osdep/freebsd/getroot.c:277 -msgid "couldn't find geli consumer" -msgstr "" - -#: grub-core/osdep/freebsd/getroot.c:282 -msgid "couldn't retrieve geli UUID" -msgstr "" - -#. TRANSLATORS: geom is the name of (k)FreeBSD device framework. -#. Usually left untranslated. "part" is the identifier of one of its -#. classes. -#: grub-core/osdep/freebsd/getroot.c:325 -msgid "couldn't find geom `part' class" -msgstr "" - -#: grub-core/osdep/freebsd/hostdisk.c:72 grub-core/osdep/linux/hostdisk.c:93 -msgid "unaligned device size" -msgstr "" - -#: grub-core/osdep/generic/blocklist.c:56 -#, c-format -msgid "attempting to read the core image `%s' from GRUB" -msgstr "" - -#: grub-core/osdep/generic/blocklist.c:57 -#, c-format -msgid "attempting to read the core image `%s' from GRUB again" -msgstr "" - -#: grub-core/osdep/generic/blocklist.c:115 -#, c-format -msgid "cannot read `%s' correctly" -msgstr "`%s' ਨੂੰ ਠੀਕ ਤਰà©à¨¹à¨¾à¨‚ ਪੜਿਆ ਨਹੀਂ ਜਾ ਸਕਦਾ" - -#: grub-core/osdep/generic/blocklist.c:126 -#, fuzzy -msgid "failed to read the sectors of the core image" -msgstr "ਕੋਰ ਈਮੇਜ਼ ਵਿੱਚ ਕੋਈ ਟਰਮੀਨੇਟਰ ਨਹੀਂ ਹੈ" - -#. TRANSLATORS: On GNU/Hurd, a "translator" is similar to a filesystem -#. mount, but handled by a userland daemon, whose invocation command line -#. is being fetched here. First %s is the file being looked at (for which -#. we are fetching the "translator" command line), second %s is the error -#. message. -#. -#: grub-core/osdep/hurd/getroot.c:79 -#, c-format -msgid "cannot get translator command line for path `%s': %s" -msgstr "" - -#: grub-core/osdep/hurd/getroot.c:82 -#, c-format -msgid "translator command line is empty for path `%s'" -msgstr "" - -#. TRANSLATORS: we expect to get something like -#. /hurd/foobar --option1 --option2=baz /dev/something -#. -#: grub-core/osdep/hurd/getroot.c:98 -#, c-format -msgid "" -"translator `%s' for path `%s' has several non-option words, at least `%s' " -"and `%s'" -msgstr "" - -#. TRANSLATORS: we expect to get something like -#. /hurd/foobar --option1 --option2=baz /dev/something -#. -#: grub-core/osdep/hurd/getroot.c:109 -#, c-format -msgid "" -"translator `%s' for path `%s' is given only options, cannot find device part" -msgstr "" - -#: grub-core/osdep/hurd/hostdisk.c:73 -#, c-format -msgid "Storage information for `%s' does not include type" -msgstr "" - -#: grub-core/osdep/hurd/hostdisk.c:75 -#, c-format -msgid "`%s' is not a local disk" -msgstr "" - -#: grub-core/osdep/hurd/hostdisk.c:78 -#, c-format -msgid "" -"Storage information for `%s' indicates neither a plain partition nor a plain " -"disk" -msgstr "" - -#: grub-core/osdep/linux/blocklist.c:81 grub-core/osdep/linux/blocklist.c:96 -#: grub-core/osdep/linux/blocklist.c:122 -#, c-format -msgid "can't retrieve blocklists: %s" -msgstr "" - -#: grub-core/osdep/linux/blocklist.c:84 -msgid "blocksize is not divisible by 512" -msgstr "" - -#: grub-core/osdep/linux/blocklist.c:86 -msgid "invalid zero blocksize" -msgstr "" - -#: grub-core/osdep/linux/blocklist.c:90 util/setup.c:744 -msgid "can't retrieve blocklists" -msgstr "" - -#: grub-core/osdep/linux/getroot.c:154 -#, c-format -msgid "ioctl RAID_VERSION error: %s" -msgstr "ioctl RAID_VERSION ਗਲਤੀ: %s" - -#: grub-core/osdep/linux/getroot.c:160 grub-core/osdep/linux/getroot.c:164 -#, c-format -msgid "unsupported RAID version: %d.%d" -msgstr "ਗ਼ੈਰ-ਸਹਾਇਕ ਰੇਡ ਵਰਜਨ: %d.%d" - -#: grub-core/osdep/linux/getroot.c:169 -#, c-format -msgid "ioctl GET_ARRAY_INFO error: %s" -msgstr "ioctl GET_ARRAY_INFO ਗਲਤੀ: %s" - -#: grub-core/osdep/linux/getroot.c:178 -#, c-format -msgid "ioctl GET_DISK_INFO error: %s" -msgstr "ioctl GET_DISK_INFO ਗਲਤੀ: %s" - -#: grub-core/osdep/linux/getroot.c:608 grub-core/osdep/linux/getroot.c:678 -#: grub-core/osdep/linux/hostdisk.c:126 grub-core/osdep/unix/getroot.c:253 -#: grub-core/osdep/unix/getroot.c:642 grub-core/osdep/unix/platform.c:92 -#: grub-core/osdep/unix/platform.c:100 -#, c-format -msgid "Unable to open stream from %s: %s" -msgstr "%s ਤੋਂ ਸਟਰੀਮ ਖੋਲà©à¨¹à¨£ ਲਈ ਅਸਮਰੱਥ: %s" - -#: grub-core/osdep/linux/getroot.c:1033 -#, c-format -msgid "unknown kind of RAID device `%s'" -msgstr "" - -#: grub-core/osdep/linux/ofpath.c:181 -#, c-format -msgid "`obppath' not found in parent dirs of `%s', no IEEE1275 name discovery" -msgstr "" - -#: grub-core/osdep/linux/ofpath.c:222 grub-core/osdep/unix/getroot.c:505 -#: grub-core/osdep/unix/getroot.c:529 grub-core/osdep/unix/relpath.c:49 -#: util/grub-install.c:984 util/grub-install.c:1331 util/grub-probe.c:323 -#, c-format -msgid "failed to get canonical path of `%s'" -msgstr "" - -#: grub-core/osdep/linux/ofpath.c:740 -#, fuzzy, c-format -msgid "unknown device type %s" -msgstr "ਅਣਜਾਣ ਜੰਤਰ ਕਿਸਮ %s\n" - -#: grub-core/osdep/linux/ofpath.c:758 util/ieee1275/grub-ofpathname.c:39 -#, c-format -msgid "Usage: %s DEVICE\n" -msgstr "ਵਰਤੋਂUsage: %s ਜੰਤਰ\n" - -#: grub-core/osdep/unix/exec.c:86 grub-core/osdep/unix/exec.c:172 -#: grub-core/osdep/unix/exec.c:217 -#, c-format -msgid "Unable to fork: %s" -msgstr "" - -#: grub-core/osdep/unix/exec.c:166 grub-core/osdep/unix/exec.c:211 -#, c-format -msgid "Unable to create pipe: %s" -msgstr "ਪਾਈਪ ਬਣਾਉਣ ਲਈ ਅਸਮਰੱਥ: %s" - -#: grub-core/osdep/unix/getroot.c:370 -#, fuzzy -msgid "cannot save the original directory" -msgstr "ਅਸਲੀ ਡਾਇਰੈਕਟਰੀ ਰੀ-ਸਟੋਰ ਨਹੀਂ ਕੀਤੀ ਜਾ ਸਕਦੀ" - -#: grub-core/osdep/unix/getroot.c:423 grub-core/osdep/unix/getroot.c:480 -#: grub-core/osdep/unix/getroot.c:489 -msgid "cannot restore the original directory" -msgstr "ਅਸਲੀ ਡਾਇਰੈਕਟਰੀ ਰੀ-ਸਟੋਰ ਨਹੀਂ ਕੀਤੀ ਜਾ ਸਕਦੀ" - -#. TRANSLATORS: "stat" comes from the name of POSIX function. -#: grub-core/osdep/unix/getroot.c:551 grub-core/osdep/unix/hostdisk.c:61 -#: grub-core/osdep/unix/relpath.c:73 grub-core/osdep/unix/relpath.c:97 -#: util/getroot.c:160 util/getroot.c:162 util/grub-install.c:774 -#: util/grub-macbless.c:70 -#, c-format -msgid "cannot stat `%s': %s" -msgstr "" - -#: grub-core/osdep/unix/hostdisk.c:293 -#, fuzzy, c-format -msgid "cannot make temporary file: %s" -msgstr "ਫਾਇਲ %s ਦਾ ਨਾਂ %s ਬਦਲਿਆ ਨਹੀਂ ਜਾ ਸਕਦਾ" - -#: grub-core/osdep/unix/hostdisk.c:311 -#, fuzzy, c-format -msgid "cannot make temporary directory: %s" -msgstr "ਅਸਲੀ ਡਾਇਰੈਕਟਰੀ ਰੀ-ਸਟੋਰ ਨਹੀਂ ਕੀਤੀ ਜਾ ਸਕਦੀ" - -#: grub-core/osdep/unix/platform.c:77 -#, c-format -msgid "" -"couldn't find IEEE1275 device path for %s.\n" -"You will have to set `boot-device' variable manually" -msgstr "" - -#. TRANSLATORS: This message is shown when required executable `%s' -#. isn't found. -#: grub-core/osdep/unix/platform.c:149 grub-core/osdep/unix/platform.c:189 -#, fuzzy, c-format -msgid "%s: not found" -msgstr "%s: ਨਹੀਂ ਲੱਭਿਆ\\n" - -#: grub-core/osdep/unix/platform.c:225 -#, c-format -msgid "" -"`nvsetenv' failed. \n" -"You will have to set `boot-device' variable manually. At the IEEE1275 " -"prompt, type:\n" -" %s\n" -msgstr "" - -#: grub-core/osdep/unix/platform.c:240 -msgid "You will have to set `SystemPartition' and `OSLoader' manually." -msgstr "ਤà©à¨¹à¨¾à¨¨à©‚à©° `SystemPartition' ਅਤੇ `OSLoader' ਖà©à¨¦ ਸੈੱਟ ਕਰਨਾ ਪਵੇਗਾ।" - -#. TRANSLATORS: canonical pathname is the -#. complete one e.g. /etc/fstab. It has -#. to contain `/' normally, if it doesn't -#. we're in trouble and throw this error. -#: grub-core/osdep/unix/relpath.c:90 -msgid "no `/' in canonical filename" -msgstr "" - -#: grub-core/osdep/windows/hostdisk.c:151 -msgid "cygwin_conv_path() failed" -msgstr "cygwin_conv_path() ਫੇਲà©à¨¹ ਹੈ" - -#: grub-core/osdep/windows/hostdisk.c:501 util/grub-install.c:570 -#, fuzzy -msgid "couldn't retrieve random data" -msgstr "ELI ਮੇਟਾਡਾਟਾ ਪੜਿਆ ਨਹੀਂ ਜਾ ਸਕਿਆ" - -#: grub-core/osdep/windows/platform.c:97 -msgid "Insufficient privileges to access firmware, assuming BIOS" -msgstr "" - -#: grub-core/osdep/windows/platform.c:225 -msgid "no EFI routines are available when running in BIOS mode" -msgstr "" - -#: grub-core/osdep/windows/platform.c:240 -#, fuzzy -msgid "unexpected EFI error" -msgstr "ਫਾਇਲ ਦਾ ਅਸਧਾਰਨ ਅੰਤ" - -#: grub-core/osdep/windows/platform.c:315 -msgid "Couldn't find a free BootNNNN slot" -msgstr "" - -#: grub-core/partmap/gpt.c:191 -msgid "" -"this GPT partition label contains no BIOS Boot Partition; embedding won't be " -"possible" -msgstr "" - -#: grub-core/partmap/gpt.c:196 -msgid "your BIOS Boot Partition is too small; embedding won't be possible" -msgstr "" - -#. TRANSLATORS: MBR gap and boot track is the same thing and is the space -#. between MBR and first partitition. If your language translates well only -#. "boot track", you can just use it everywhere. Next two messages are about -#. RAID controllers/software bugs which GRUB has to live with. Please spread -#. the message that these are bugs in other software and not merely -#. suboptimal behaviour. -#: grub-core/partmap/msdos.c:51 -#, c-format -msgid "" -"Sector %llu is already in use by raid controller `%s'; avoiding it. Please " -"ask the manufacturer not to store data in MBR gap" -msgstr "" - -#: grub-core/partmap/msdos.c:54 -#, c-format -msgid "" -"Sector %llu is already in use by the program `%s'; avoiding it. This " -"software may cause boot or other problems in future. Please ask its authors " -"not to store data in the boot track" -msgstr "" - -#: grub-core/partmap/msdos.c:384 -msgid "" -"other software is using the embedding area, and there is not enough room for " -"core.img. Such software is often trying to store data in a way that avoids " -"detection. We recommend you investigate" -msgstr "" - -#: grub-core/partmap/msdos.c:395 -msgid "" -"this msdos-style partition label has no post-MBR gap; embedding won't be " -"possible" -msgstr "" - -#: grub-core/partmap/msdos.c:404 -msgid "your embedding area is unusually small. core.img won't fit in it." -msgstr "" - -#: grub-core/parttool/msdospart.c:39 -msgid "Make partition active" -msgstr "ਪਾਰਟੀਸ਼ ਨੂੰ à¨à¨•ਟਿਵ ਬਣਾਓ" - -#: grub-core/parttool/msdospart.c:51 -msgid "not a primary partition" -msgstr "ਕੋਈ ਪà©à¨°à¨¾à¨ˆà¨®à¨°à©€ ਪਾਰਟੀਸ਼ਨ ਨਹੀਂ" - -#: grub-core/parttool/msdospart.c:69 -#, c-format -msgid "Partition %d is active now. \n" -msgstr "" - -#: grub-core/parttool/msdospart.c:74 -#, c-format -msgid "Cleared active flag on %d. \n" -msgstr "" - -#: grub-core/parttool/msdospart.c:87 -msgid "Change partition type" -msgstr "ਪਾਰਟੀਸ਼ਨ ਕਿਸਮ ਬਦਲੋ" - -#: grub-core/parttool/msdospart.c:88 -msgid "Set `hidden' flag in partition type" -msgstr "" - -#: grub-core/parttool/msdospart.c:130 -#, c-format -msgid "the partition type 0x%x isn't valid" -msgstr "" - -#. TRANSLATORS: In this case we're actually writing to the disk and actively -#. modifying partition type rather than just defining it. -#: grub-core/parttool/msdospart.c:137 -#, c-format -msgid "Setting partition type to 0x%x\n" -msgstr "" - -#. TRANSLATORS: 0 is a quantifier. "break" (similar to bash) -#. can be used e.g. to break 3 loops at once. -#. But asking it to break 0 loops makes no sense. -#: grub-core/script/execute.c:143 -msgid "can't break 0 loops" -msgstr "" - -#. TRANSLATORS: It's about not being -#. inside a function. "return" can be used only -#. in a function and this error occurs if it's used -#. anywhere else. -#: grub-core/script/execute.c:227 -msgid "not in function body" -msgstr "" - -#: grub-core/script/execute.c:371 -#, c-format -msgid "invalid variable name `%s'" -msgstr "ਗਲਤ ਵੇਰੀਬਲ ਨਾਂ `%s'" - -#: grub-core/script/execute.c:953 -msgid "cannot allocate command buffer" -msgstr "" - -#: grub-core/script/lexer.c:144 util/grub-fstest.c:330 -msgid "unexpected end of file" -msgstr "ਫਾਇਲ ਦਾ ਅਸਧਾਰਨ ਅੰਤ" - -#: grub-core/script/main.c:55 grub-core/script/main.c:57 -#: grub-core/script/main.c:59 grub-core/script/main.c:67 -msgid "[NUM]" -msgstr "[NUM]" - -#: grub-core/script/main.c:55 -msgid "Exit from loops" -msgstr "ਲੂਪਾਂ ਤੋਂ ਬਾਹਰ" - -#: grub-core/script/main.c:57 -msgid "Continue loops" -msgstr "ਲੂਪਾਂ ਨਾਲ ਜਾਰੀ" - -#. TRANSLATORS: Positional arguments are -#. arguments $0, $1, $2, ... -#: grub-core/script/main.c:62 -msgid "Shift positional parameters." -msgstr "" - -#: grub-core/script/main.c:64 -msgid "[VALUE]..." -msgstr "[VALUE]..." - -#: grub-core/script/main.c:65 -msgid "Set positional parameters." -msgstr "" - -#. TRANSLATORS: It's a command description -#. and "Return" is a verb, not a noun. The -#. command in question is "return" and -#. has exactly the same semanics as bash -#. equivalent. -#: grub-core/script/main.c:73 -msgid "Return from a function." -msgstr "" - -#: grub-core/term/gfxterm_background.c:176 -msgid "[-m (stretch|normal)] FILE" -msgstr "[-m (stretch|normal)] ਫਾਇਲ" - -#: grub-core/term/gfxterm_background.c:177 -msgid "Load background image for active terminal." -msgstr "" - -#: grub-core/term/gfxterm_background.c:182 util/grub-install.c:302 -#: util/grub-install.c:303 util/grub-mkrescue.c:107 util/grub-mkrescue.c:108 -#: util/grub-render-label.c:61 util/grub-render-label.c:63 -msgid "COLOR" -msgstr "ਰੰਗ" - -#: grub-core/term/gfxterm_background.c:183 -msgid "Set background color for active terminal." -msgstr "" - -#: grub-core/term/i386/coreboot/cbmemc.c:139 -#, fuzzy -msgid "Show CBMEM console content." -msgstr "ਮੈਮੋਰੀ ਸਮੱਗਰੀ ਵੇਖਾਉ।" - -#: grub-core/term/serial.c:57 -msgid "Set the serial unit." -msgstr "ਸੀਰੀਅਲ ਯੂਨਿਟ ਦਿਉ।" - -#: grub-core/term/serial.c:58 -msgid "Set the serial port address." -msgstr "" - -#: grub-core/term/serial.c:59 -msgid "Set the serial port speed." -msgstr "" - -#: grub-core/term/serial.c:60 -msgid "Set the serial port word length." -msgstr "" - -#: grub-core/term/serial.c:61 -msgid "Set the serial port parity." -msgstr "" - -#: grub-core/term/serial.c:62 -msgid "Set the serial port stop bits." -msgstr "" - -#: grub-core/term/serial.c:63 -#, fuzzy -msgid "Set the base frequency." -msgstr "ਸੀਰੀਅਲ ਯੂਨਿਟ ਦਿਉ।" - -#: grub-core/term/serial.c:64 -msgid "Enable/disable RTS/CTS." -msgstr "" - -#: grub-core/term/serial.c:218 -#, c-format -msgid "serial port `%s' isn't found" -msgstr "" - -#: grub-core/term/serial.c:254 -#, fuzzy -msgid "unsupported serial port flow control" -msgstr "ਗ਼ੈਰ-ਸਹਾਇਕ ਸੀਰੀਅਲ ਪੋਰਟ ਸ਼ਬਦ ਲੰਬਾਈ" - -#: grub-core/term/serial.c:429 -msgid "[OPTIONS...]" -msgstr "[OPTIONS...]" - -#: grub-core/term/serial.c:430 -msgid "Configure serial port." -msgstr "ਸੀਰੀਅਲ ਪੋਰਟ ਸੰਰਚਨਾ।" - -#: grub-core/term/terminfo.c:184 -#, c-format -msgid "unknown terminfo type `%s'" -msgstr "" - -#: grub-core/term/terminfo.c:668 -msgid "ASCII" -msgstr "ASCII" - -#: grub-core/term/terminfo.c:671 -msgid "UTF-8" -msgstr "UTF-8" - -#. TRANSLATORS: visually ordered UTF-8 is a non-compliant encoding -#. based on UTF-8 with right-to-left languages written in reverse. -#. Used on some terminals. Normal UTF-8 is refered as -#. "logically-ordered UTF-8" by opposition. -#: grub-core/term/terminfo.c:677 -msgid "visually-ordered UTF-8" -msgstr "" - -#: grub-core/term/terminfo.c:680 -msgid "Unknown encoding" -msgstr "ਅਣਜਾਣ ਇੰਕੋਡਿੰਗ" - -#: grub-core/term/terminfo.c:684 -msgid "Current terminfo types:" -msgstr "" - -#: grub-core/term/terminfo.c:699 -msgid "Terminal is ASCII-only [default]." -msgstr "" - -#: grub-core/term/terminfo.c:700 -msgid "Terminal is logical-ordered UTF-8." -msgstr "" - -#: grub-core/term/terminfo.c:701 -msgid "Terminal is visually-ordered UTF-8." -msgstr "" - -#: grub-core/term/terminfo.c:703 -msgid "Terminal has specified geometry." -msgstr "" - -#. TRANSLATORS: "x" has to be entered in, like an identifier, so please don't -#. use better Unicode codepoints. -#: grub-core/term/terminfo.c:706 -msgid "WIDTHxHEIGHT." -msgstr "WIDTHxHEIGHT" - -#: grub-core/term/terminfo.c:746 -msgid "incorrect terminal dimensions specification" -msgstr "" - -#: grub-core/term/terminfo.c:776 -#, c-format -msgid "terminal %s isn't found or it's not handled by terminfo" -msgstr "" - -#: grub-core/term/terminfo.c:785 -msgid "[[-a|-u|-v] [-g WxH] TERM [TYPE]]" -msgstr "[[-a|-u|-v] [-g WxH] TERM [TYPE]]" - -#: grub-core/term/terminfo.c:786 -msgid "Set terminfo type of TERM to TYPE.\n" -msgstr "" - -#. TRANSLATORS: this is the BLOCK-argument, not -#. environment block. -#: grub-core/tests/test_blockarg.c:49 -msgid "Print and execute block argument." -msgstr "" - -#. TRANSLATORS: We're speaking about bitmap images like -#. JPEG or PNG. -#: grub-core/video/bitmap.c:209 -#, c-format -msgid "bitmap file `%s' is of unsupported format" -msgstr "" - -#: grub-core/video/i386/pc/vbe.c:1191 -#, c-format -msgid " VBE info: version: %d.%d OEM software rev: %d.%d\n" -msgstr "" - -#: grub-core/video/i386/pc/vbe.c:1198 -#, c-format -msgid " total memory: %d KiB\n" -msgstr " ਕà©à©±à¨² ਮੈਮੋਰੀ: %d KiB\n" - -#: grub-core/video/video.c:596 grub-core/video/video.c:762 -msgid "no suitable video mode found" -msgstr "ਕੋਈ ਢà©à©±à¨•ਵਾਂ ਵਿਡੀਓ ਮੋਡ ਨਹੀਂ ਲੱਭਿਆ" - -#: include/grub/crypto.h:403 -msgid "access denied" -msgstr "ਅਸੈੱਸ ਪਾਬੰਦੀ ਹੈ" - -#: include/grub/util/install.h:30 include/grub/util/install.h:35 -msgid "MODULES" -msgstr "ਮੋਡੀਊਲ" - -#: include/grub/util/install.h:31 -msgid "pre-load specified modules MODULES" -msgstr "" - -#: include/grub/util/install.h:33 -msgid "embed a specific DTB" -msgstr "" - -#: include/grub/util/install.h:36 -msgid "install only MODULES and their dependencies [default=all]" -msgstr "" - -#: include/grub/util/install.h:37 -msgid "THEMES" -msgstr "" - -#: include/grub/util/install.h:38 -#, c-format -msgid "install THEMES [default=%s]" -msgstr "" - -#: include/grub/util/install.h:39 -msgid "FONTS" -msgstr "" - -#: include/grub/util/install.h:40 -#, c-format -msgid "install FONTS [default=%s]" -msgstr "" - -#: include/grub/util/install.h:41 -msgid "LOCALES" -msgstr "" - -#: include/grub/util/install.h:42 -msgid "install only LOCALES [default=all]" -msgstr "" - -#: include/grub/util/install.h:45 -msgid "compress GRUB files [optional]" -msgstr "" - -#: include/grub/util/install.h:48 util/grub-mkimage.c:83 -#, fuzzy -msgid "choose the compression to use for core image" -msgstr "ਵਰਤਣ ਲਈ ਕੰਪਰੈਸ਼ਨ ਚà©à¨£à©‹" - -#. TRANSLATORS: platform here isn't identifier. It can be translated. -#: include/grub/util/install.h:51 include/grub/util/install.h:54 -#: util/grub-mkimage.c:66 -#, c-format -msgid "use images and modules under DIR [default=%s/]" -msgstr "" - -#: include/grub/util/install.h:57 -#, c-format -msgid "use translations under DIR [default=%s]" -msgstr "" - -#: include/grub/util/install.h:60 -#, c-format -msgid "use themes under DIR [default=%s]" -msgstr "" - -#: include/grub/util/install.h:65 util/grub-mkimage.c:78 -msgid "embed FILE as public key for signature checking" -msgstr "" - -#: util/editenv.c:59 util/grub-editenv.c:201 util/grub-install-common.c:535 -#: util/grub-mkimage.c:315 util/setup.c:791 -#, fuzzy, c-format -msgid "cannot sync `%s': %s" -msgstr "`%s' ਖੋਲà©à¨¹à¨¿à¨† ਨਹੀਂ ਜਾ ਸਕਦਾ: %s" - -#: util/editenv.c:64 -#, c-format -msgid "cannot rename the file %s to %s" -msgstr "ਫਾਇਲ %s ਦਾ ਨਾਂ %s ਬਦਲਿਆ ਨਹੀਂ ਜਾ ਸਕਦਾ" - -#: util/getroot.c:402 -#, c-format -msgid "disk does not exist, so falling back to partition device %s" -msgstr "ਡਿਸਕ ਮੌਜੂਦ ਨਹੀਂ ਹੈ, ਪਾਰਟੀਸ਼ਨ ਜੰਤਰ %s ਉੱਤੇ ਵਾਪਸ ਆਇਆ ਜਾ ਰਿਹਾ ਹੈ" - -#: util/grub-editenv.c:45 util/grub-fstest.c:506 -msgid "Commands:" -msgstr "ਕਮਾਂਡਾਂ:" - -#: util/grub-editenv.c:47 -msgid "Create a blank environment block file." -msgstr "" - -#: util/grub-editenv.c:49 -msgid "List the current variables." -msgstr "ਮੌਜੂਦਾ ਵੇਰੀਬਲ ਵੇਖਾਓ।" - -#. TRANSLATORS: "set" is a keyword. It's a summary of "set" subcommand. -#: util/grub-editenv.c:51 -msgid "set [NAME=VALUE ...]" -msgstr "set [NAME=VALUE ...]" - -#: util/grub-editenv.c:52 -msgid "Set variables." -msgstr "ਵੇਰੀਬਲ ਸੈੱਟ।" - -#. TRANSLATORS: "unset" is a keyword. It's a summary of "unset" subcommand. -#: util/grub-editenv.c:54 -msgid "unset [NAME ...]" -msgstr "unset [NAME ...]" - -#: util/grub-editenv.c:55 -msgid "Delete variables." -msgstr "ਵੇਰੀਬਲ ਹਟਾਓ।" - -#: util/grub-editenv.c:57 -msgid "Options:" -msgstr "ਚੋਣਾਂ:" - -#: util/grub-editenv.c:84 -msgid "You need to specify at least one command.\n" -msgstr "ਤà©à¨¹à¨¾à¨¨à©‚à©° ਘੱਟੋ-ਘੱਟ ਇੱਕ ਕਮਾਂਡ ਦੇਣਾ ਪਵੇਗੀ।\n" - -#: util/grub-editenv.c:113 -msgid "FILENAME COMMAND" -msgstr "FILENAME COMMAND" - -#: util/grub-editenv.c:114 -msgid "Tool to edit environment block." -msgstr "" - -#: util/grub-editenv.c:116 -#, c-format -msgid "" -"If FILENAME is `-', the default value %s is used.\n" -"\n" -"There is no `delete' command; if you want to delete the whole environment\n" -"block, use `rm %s'." -msgstr "" - -#: util/grub-editenv.c:162 -msgid "invalid environment block" -msgstr "" - -#: util/grub-editenv.c:217 -#, c-format -msgid "invalid parameter %s" -msgstr "ਗਲਤ ਪੈਰਾਮੀਟਰ %s" - -#: util/grub-editenv.c:222 -msgid "environment block too small" -msgstr "" - -#: util/grub-fstest.c:107 -#, c-format -msgid "disk read fails at offset %lld, length %lld" -msgstr "" - -#: util/grub-fstest.c:138 -#, c-format -msgid "invalid skip value %lld" -msgstr "" - -#: util/grub-fstest.c:160 util/grub-fstest.c:246 -#, c-format -msgid "read error at offset %llu: %s" -msgstr "" - -#: util/grub-fstest.c:210 -#, c-format -msgid "cannot open OS file `%s': %s" -msgstr "OS ਫਾਇਲ `%s' ਖੋਲà©à¨¹à©€ ਨਹੀਂ ਜਾ ਸਕਦੀ: %s" - -#: util/grub-fstest.c:225 util/misc.c:126 -#, c-format -msgid "cannot write to the stdout: %s" -msgstr "stdout ਲਈ ਲਿਖਿਆ ਨਹੀਂ ਜਾ ਸਕਦਾ: %s" - -#: util/grub-fstest.c:259 -#, c-format -msgid "compare fail at offset %llu" -msgstr "" - -#: util/grub-fstest.c:280 util/grub-fstest.c:314 -#, c-format -msgid "OS file %s open error: %s" -msgstr "OS ਫਾਇਲ %s ਖੋਲà©à¨¹à¨£ 'ਚ ਗਲਤੀ: %s" - -#: util/grub-fstest.c:402 util/grub-mount.c:392 -#, c-format -msgid "`loopback' command fails: %s" -msgstr "" - -#: util/grub-fstest.c:413 util/grub-mount.c:402 -#, c-format -msgid "`cryptomount' command fails: %s" -msgstr "" - -#: util/grub-fstest.c:474 util/grub-fstest.c:478 -msgid "couldn't retrieve UUID" -msgstr "" - -#: util/grub-fstest.c:507 -msgid "ls PATH" -msgstr "ls PATH" - -#: util/grub-fstest.c:507 -msgid "List files in PATH." -msgstr "" - -#: util/grub-fstest.c:508 -msgid "cp FILE LOCAL" -msgstr "cp FILE LOCAL" - -#: util/grub-fstest.c:508 -msgid "Copy FILE to local file LOCAL." -msgstr "" - -#: util/grub-fstest.c:509 -msgid "cat FILE" -msgstr "cat FILE" - -#: util/grub-fstest.c:509 -msgid "Copy FILE to standard output." -msgstr "" - -#: util/grub-fstest.c:510 -msgid "cmp FILE LOCAL" -msgstr "cmp FILE LOCAL" - -#: util/grub-fstest.c:510 -msgid "Compare FILE with local file LOCAL." -msgstr "" - -#: util/grub-fstest.c:511 -msgid "hex FILE" -msgstr "hex FILE" - -#: util/grub-fstest.c:511 -msgid "Show contents of FILE in hex." -msgstr "" - -#: util/grub-fstest.c:512 -msgid "crc FILE" -msgstr "crc FILE" - -#: util/grub-fstest.c:512 -msgid "Get crc32 checksum of FILE." -msgstr "" - -#: util/grub-fstest.c:513 -msgid "blocklist FILE" -msgstr "blocklist FILE" - -#: util/grub-fstest.c:513 -msgid "Display blocklist of FILE." -msgstr "" - -#: util/grub-fstest.c:514 -msgid "xnu_uuid DEVICE" -msgstr "xnu_uuid ਜੰਤਰ" - -#: util/grub-fstest.c:514 -msgid "Compute XNU UUID of the device." -msgstr "" - -#. TRANSLATORS: bitmaps are images like e.g. in JPEG. -#: util/grub-fstest.c:517 util/grub-fstest.c:518 util/grub-fstest.c:519 -#: util/grub-mkfont.c:938 util/grub-mkfont.c:951 util/grub-mkfont.c:952 -#: util/grub-mkpasswd-pbkdf2.c:46 util/grub-mkpasswd-pbkdf2.c:47 -#: util/grub-mkpasswd-pbkdf2.c:48 -msgid "NUM" -msgstr "NUM" - -#: util/grub-fstest.c:517 -msgid "Skip N bytes from output file." -msgstr "" - -#: util/grub-fstest.c:518 -msgid "Handle N bytes in output file." -msgstr "" - -#: util/grub-fstest.c:519 -msgid "Specify the number of input files." -msgstr "ਇੰਪà©à©±à¨Ÿ ਫਾਇਲਾਂ ਦੀ ਗਿਣਤੀ ਦਿਉ।" - -#: util/grub-fstest.c:520 util/grub-mount.c:453 -msgid "Set debug environment variable." -msgstr "ਡੀਬੱਗ ਇੰਵਾਇਰਨਮੈਂਟ ਵੇਰੀਬਲ ਦਿਉ।" - -#: util/grub-fstest.c:521 util/grub-mount.c:454 -msgid "Mount crypto devices." -msgstr "ਕà©à¨°à¨¿à¨ªà¨Ÿà©‚ ਜੰਤਰ ਮਾਊਂਟ ਕਰੋ।" - -#. TRANSLATORS: "prompt" is a keyword. -#: util/grub-fstest.c:524 util/grub-mount.c:457 -msgid "FILE|prompt" -msgstr "FILE|prompt" - -#: util/grub-fstest.c:524 util/grub-mount.c:457 -msgid "Load zfs crypto key." -msgstr "" - -#: util/grub-fstest.c:526 -msgid "Uncompress data." -msgstr "ਅਣ-ਕੰਪਰੈਸ ਡਾਟਾ।" - -#: util/grub-fstest.c:605 -msgid "Invalid disk count.\n" -msgstr "ਗਲਤ ਡਿਸਕ ਗਿਣਤੀ।\n" - -#. TRANSLATORS: disk count is optional but if it's there it must -#. be before disk list. So please don't imply disk count as mandatory. -#. -#: util/grub-fstest.c:613 -msgid "Disk count must precede disks list.\n" -msgstr "" - -#: util/grub-fstest.c:633 -msgid "No command is specified.\n" -msgstr "ਕਮਾਂਡ ਨਹੀਂ ਦਿੱਤੀ।\n" - -#: util/grub-fstest.c:638 -msgid "Not enough parameters to command.\n" -msgstr "ਕਮਾਂਡ ਲਈ ਲੋੜੀਦੇ ਪੈਰਾਮੀਟਰ ਨਹੀਂ।\n" - -#: util/grub-fstest.c:711 -#, c-format -msgid "Invalid command %s.\n" -msgstr "ਗਲਤ ਕਮਾਂਡ %s।\n" - -#: util/grub-fstest.c:724 -msgid "IMAGE_PATH COMMANDS" -msgstr "IMAGE_PATH COMMANDS" - -#: util/grub-fstest.c:725 util/grub-mount.c:553 -msgid "Debug tool for filesystem driver." -msgstr "ਫਾਇਲ-ਸਿਸਟਮ ਡਰਾਇਵਰ ਲਈ ਡੀਬੱਗ ਟੂਲ।" - -#: util/grub-glue-efi.c:53 -msgid "set input filename for 32-bit part." -msgstr "" - -#: util/grub-glue-efi.c:55 -msgid "set input filename for 64-bit part." -msgstr "" - -#: util/grub-glue-efi.c:57 util/grub-mklayout.c:55 util/grub-render-label.c:71 -msgid "set output filename. Default is STDOUT" -msgstr "" - -#: util/grub-glue-efi.c:94 util/grub-mklayout.c:476 -#: util/grub-mkpasswd-pbkdf2.c:86 util/grub-render-label.c:131 -msgid "[OPTIONS]" -msgstr "[ਚੋਣਾਂ]" - -#: util/grub-glue-efi.c:95 -msgid "Glue 32-bit and 64-bit binary into Apple universal one." -msgstr "" - -#: util/grub-glue-efi.c:116 -msgid "Missing input file\n" -msgstr "" - -#: util/grub-install-common.c:127 util/grub-install-common.c:151 -#, fuzzy, c-format -msgid "cannot copy `%s' to `%s': %s" -msgstr "`%s' ਖੋਲà©à¨¹à¨¿à¨† ਨਹੀਂ ਜਾ ਸਕਦਾ: %s" - -#: util/grub-install-common.c:147 -#, fuzzy, c-format -msgid "can't compress `%s' to `%s'" -msgstr "`%s' ਨੂੰ ਖੋਲà©à¨¹à¨¿à¨† ਨਹੀਂ ਜਾ ਸਕਦਾ: %s" - -#: util/grub-install-common.c:196 util/grub-install-common.c:552 -#: util/grub-install-common.c:579 util/grub-install-common.c:621 -#, fuzzy, c-format -msgid "cannot open directory `%s': %s" -msgstr "`%s' ਖੋਲà©à¨¹à¨¿à¨† ਨਹੀਂ ਜਾ ਸਕਦਾ: %s" - -#: util/grub-install-common.c:212 -#, fuzzy, c-format -msgid "cannot delete `%s': %s" -msgstr "`%s' ਖੋਲà©à¨¹à¨¿à¨† ਨਹੀਂ ਜਾ ਸਕਦਾ: %s" - -#: util/grub-install-common.c:324 util/grub-mkimage.c:209 -msgid "grub-mkimage is compiled without XZ support" -msgstr "" - -#: util/grub-install-common.c:332 util/grub-mkimage.c:217 -#, c-format -msgid "Unknown compression format %s" -msgstr "ਅਣਜਾਣ ਕੰਪਰੈਸ਼ਨ ਫਾਰਮੈਟ %s" - -#: util/grub-install-common.c:400 -#, fuzzy, c-format -msgid "Unrecognized compression `%s'" -msgstr "%s: ਬੇ-ਪਛਾਣ ਚੋਣ '--%s'\n" - -#: util/grub-install-common.c:509 -#, fuzzy, c-format -msgid "unknown target format %s" -msgstr "ਅਣਜਾਣ ਟਾਰਗੇਟ ਫਾਰਮੈਟ %s\n" - -#: util/grub-install-common.c:700 -#, fuzzy, c-format -msgid "cannot find locale `%s'" -msgstr "ਕਮਾਂਡ `%s' ਲੱਭੀ ਨਹੀਂ ਜਾ ਸਕਦੀ।" - -#: util/grub-install-common.c:939 -#, c-format -msgid "%s doesn't exist. Please specify --target or --directory" -msgstr "" - -#: util/grub-install-common.c:948 util/grub-install-common.c:951 -#, fuzzy, c-format -msgid "invalid modinfo file `%s'" -msgstr "ਗਲਤ ਫਾਇਲ ਨਾਂ `%s'" - -#: util/grub-install-common.c:966 -#, fuzzy, c-format -msgid "Unknown platform `%s-%s'" -msgstr "ਅਣਜਾਣ ਆਰਗੂਮੈਂਟ `%s'" - -#: util/grub-install.c:238 -msgid "More than one install device?" -msgstr "ਇੱਕ ਤੋਂ ਵੱਧ ਇੰਸਟਾਲ ਜੰਤਰ ਹਨ?" - -#: util/grub-install.c:251 -#, c-format -msgid "" -"install GRUB images under the directory DIR/%s instead of the %s directory" -msgstr "" - -#: util/grub-install.c:256 util/grub-probe.c:734 -msgid "TARGET" -msgstr "ਟਾਰਗੇਟ" - -#. TRANSLATORS: "TARGET" as in "target platform". -#: util/grub-install.c:258 -#, c-format -msgid "install GRUB for TARGET platform [default=%s]; available targets: %s" -msgstr "" - -#. TRANSLATORS: "may break" doesn't just mean that option wouldn't have any -#. effect but that it will make the resulting install unbootable from HDD. -#. TRANSLATORS: The potential breakage isn't limited to floppies but it's -#. likely to make the install unbootable from HDD. -#: util/grub-install.c:267 util/grub-setup.c:94 -msgid "" -"make the drive also bootable as floppy (default for fdX devices). May break " -"on some BIOSes." -msgstr "" - -#: util/grub-install.c:270 -msgid "delete device map if it already exists" -msgstr "ਜੰਤਰ ਮੈਪ ਜੇ ਮੌਜੂਦ ਹੋਵੇ ਤਾਂ ਹਟਾ ਦਿਉ" - -#: util/grub-install.c:272 util/grub-setup.c:87 -msgid "install even if problems are detected" -msgstr "ਭਾਵੇਂ ਸਮੱਸਿਆ ਆਵੇ ਤਾਂ ਵੀ ਇੰਸਟਾਲ ਕਰੋ" - -#: util/grub-install.c:274 -msgid "use identifier file even if UUID is available" -msgstr "" - -#: util/grub-install.c:276 -msgid "" -"disk module to use (biosdisk or native). This option is only available on " -"BIOS target." -msgstr "" - -#: util/grub-install.c:279 -msgid "" -"don't update the `boot-device'/`Boot*' NVRAM variables. This option is only " -"available on EFI and IEEE1275 targets." -msgstr "" - -#: util/grub-install.c:282 util/grub-setup.c:89 -msgid "do not probe for filesystems in DEVICE" -msgstr "ਜੰਤਰ ਵਿੱਚ ਫਾਇਲ-ਸਿਸਟਮ ਲਈ ਜਾਂਚ ਨਾ ਕਰੋ" - -#: util/grub-install.c:284 -msgid "do not install bootsector" -msgstr "" - -#: util/grub-install.c:286 util/grub-setup.c:96 -msgid "" -"Do not apply any reed-solomon codes when embedding core.img. This option is " -"only available on x86 BIOS targets." -msgstr "" - -#: util/grub-install.c:293 -msgid "" -"the installation device is removable. This option is only available on EFI." -msgstr "" - -#: util/grub-install.c:295 -msgid "ID" -msgstr "ID" - -#: util/grub-install.c:296 -#, fuzzy -msgid "the ID of bootloader. This option is only available on EFI and Macs." -msgstr "ਬੂਟ ਲੋਡ ਦਾ ID ਹੈ। ਇਹ ਚੋਣ ਕੇਵਲ EFI ਲਈ ਹੀ ਉਪਲੱਬਧ ਹੈ।" - -#: util/grub-install.c:298 -msgid "use DIR as the EFI System Partition root." -msgstr "" - -#: util/grub-install.c:300 -msgid "use DIR for PPC MAC install." -msgstr "" - -#: util/grub-install.c:301 util/grub-mkrescue.c:106 -msgid "use FILE as font for label" -msgstr "" - -#: util/grub-install.c:302 util/grub-mkrescue.c:107 -msgid "use COLOR for label" -msgstr "" - -#: util/grub-install.c:303 util/grub-mkrescue.c:108 -msgid "use COLOR for label background" -msgstr "" - -#: util/grub-install.c:304 util/grub-mkrescue.c:110 -msgid "use STRING as product version" -msgstr "" - -#: util/grub-install.c:361 -#, fuzzy -msgid "[OPTION] [INSTALL_DEVICE]" -msgstr "ਵਰਤੋ: %s [OPTION] [INSTALL_DEVICE]" - -#: util/grub-install.c:362 -msgid "Install GRUB on your drive." -msgstr "ਆਪਣੀ ਡਰਾਇਵ ਉੱਤੇ ਗਰਬ ਇੰਸਟਾਲ ਕਰੋ" - -#: util/grub-install.c:363 -#, c-format -msgid "" -"INSTALL_DEVICE must be system device filename.\n" -"%s copies GRUB images into %s. On some platforms, it may also install GRUB " -"into the boot sector." -msgstr "" - -#: util/grub-install.c:672 -#, c-format -msgid "the drive %s is defined multiple times in the device map %s" -msgstr "" - -#: util/grub-install.c:878 -msgid "Unable to determine your platform. Use --target." -msgstr "" - -#: util/grub-install.c:891 -#, c-format -msgid "Installing for %s platform.\n" -msgstr "" - -#: util/grub-install.c:939 -#, fuzzy -msgid "install device isn't specified" -msgstr "ਇੰਸਟਾਲ ਜੰਤਰ ਨਹੀਂ ਦਿੱਤਾ ਹੈ।" - -#: util/grub-install.c:1057 -#, fuzzy -msgid "cannot find EFI directory" -msgstr "ਡਾਇਰੈਕਟਰੀ ਨਹੀਂ ਹੈ" - -#: util/grub-install.c:1060 util/grub-install.c:1209 util/grub-install.c:1254 -#: util/grub-macbless.c:76 util/grub-probe.c:329 util/setup.c:316 -#, c-format -msgid "cannot find a device for %s (is /dev mounted?)" -msgstr "%s ਲਈ ਜੰਤਰ ਲੱਭਿਆ ਨਹੀਂ ਜਾ ਸਕਦਾ ਹੈ (ਕੀ /dev ਮਾਊਂਟ ਹੈ?)" - -#: util/grub-install.c:1069 util/grub-install.c:1217 util/grub-install.c:1270 -#: util/grub-install.c:1365 util/grub-macbless.c:80 util/grub-probe.c:372 -#, c-format -msgid "cannot find a GRUB drive for %s. Check your device.map" -msgstr "%s ਲਈ ਗਰਬ ਡਰਾਇਵ ਲੱਭੀ ਨਹੀਂ ਜਾ ਸਕਦੀ। ਆਪਣੀ device.map ਵੇਖੋ" - -#: util/grub-install.c:1087 -#, c-format -msgid "%s doesn't look like an EFI partition" -msgstr "" - -#: util/grub-install.c:1129 util/grub-install.c:1614 -msgid "You've found a bug" -msgstr "" - -#: util/grub-install.c:1231 -#, c-format -msgid "filesystem on %s is neither HFS nor HFS+" -msgstr "" - -#: util/grub-install.c:1299 -#, c-format -msgid "" -"attempt to install to encrypted disk without cryptodisk enabled. Set `%s' in " -"file `%s'" -msgstr "" - -#: util/grub-install.c:1410 util/grub-install.c:1772 util/grub-install.c:1872 -#, fuzzy, c-format -msgid "Can't create file: %s" -msgstr "ਪਾਈਪ ਬਣਾਉਣ ਲਈ ਅਸਮਰੱਥ: %s" - -#: util/grub-install.c:1491 -#, fuzzy -msgid "no hints available for your platform. Expect reduced performance" -msgstr "ਤà©à¨¹à¨¾à¨¡à©‡ ਪਲੇਟਫਾਰਮ ਲਈ ਕੋਈ ਇਸ਼ਾਰਾ ਨਹੀਂ ਹੈ। ਕਾਰਗà©à©›à¨¾à¨°à©€ ਘਟਣ ਦੀ ਉਮੀਦ ਹੈ।" - -#. TRANSLATORS: This is a prefix in the log to indicate that usually -#. a command would be executed but due to an option was skipped. -#: util/grub-install.c:1702 -msgid "NOT RUNNING: " -msgstr "" - -#: util/grub-install.c:1806 -msgid "the chosen partition is not a PReP partition" -msgstr "" - -#: util/grub-install.c:1811 -msgid "failed to copy Grub to the PReP partition" -msgstr "" - -#: util/grub-install.c:1816 -#, c-format -msgid "" -"the PReP partition is not empty. If you are sure you want to use it, run dd " -"to clear it: `%s'" -msgstr "" - -#: util/grub-install.c:1888 util/grub-install.c:1932 -#, c-format -msgid "efibootmgr failed to register the boot entry: %s" -msgstr "" - -#: util/grub-install.c:1916 -#, fuzzy -msgid "EFI bootloader id isn't specified." -msgstr "ਇੰਸਟਾਲ ਜੰਤਰ ਨਹੀਂ ਦਿੱਤਾ ਹੈ।" - -#: util/grub-install.c:1950 -msgid "WARNING: no platform-specific install was performed" -msgstr "" - -#: util/grub-install.c:1957 -msgid "Installation finished. No error reported." -msgstr "ਇੰਸਟਾਲੇਸ਼ਨ ਪੂਰੀ ਹੋਈ। ਕੋਈ ਗਲਤੀ ਨਹੀਂ ਮਿਲੀ।" - -#: util/grub-macbless.c:101 -msgid "bless for x86-based macs" -msgstr "" - -#: util/grub-macbless.c:103 -msgid "bless for ppc-based macs" -msgstr "" - -#: util/grub-macbless.c:136 util/grub-probe.c:823 -msgid "No path or device is specified.\n" -msgstr "ਕੋਈ ਪਾਥ ਜਾਂ ਜੰਤਰ ਨਹੀਂ ਦਿੱਤਾ ਹੈ।\n" - -#: util/grub-macbless.c:157 -msgid "--ppc PATH|--x86 FILE" -msgstr "" - -#: util/grub-macbless.c:158 -msgid "Mac-style bless on HFS or HFS+" -msgstr "" - -#: util/grub-menulst2cfg.c:44 -#, c-format -msgid "Usage: %s [INFILE [OUTFILE]]\n" -msgstr "ਵਰਤੋ: %s [INFILE [OUTFILE]]\n" - -#: util/grub-mkfont.c:157 -#, c-format -msgid "Freetype Error %d loading glyph 0x%x for U+0x%x%s" -msgstr "" - -#. TRANSLATORS: These qualifiers are used for cursive typography, -#. mainly Arabic. Note that the terms refer to the visual position -#. and not logical order and if used in left-to-right script then -#. leftmost is initial but with right-to-left script like Arabic -#. rightmost is the initial. -#: util/grub-mkfont.c:165 -msgid " (medial)" -msgstr "" - -#: util/grub-mkfont.c:166 -msgid " (leftmost)" -msgstr "" - -#: util/grub-mkfont.c:167 -msgid " (rightmost)" -msgstr "" - -#: util/grub-mkfont.c:481 -#, c-format -msgid "Out of range substitution (%d, %d)\n" -msgstr "" - -#. TRANSLATORS: "lookup" is taken directly from font specifications -#. which are formulated as "Under condition X replace LOOKUP with -#. SUBSTITUITION". " -#: util/grub-mkfont.c:506 -#, c-format -msgid "Out of range lookup: %d\n" -msgstr "" - -#: util/grub-mkfont.c:514 -#, c-format -msgid "Unsupported substitution type: %d\n" -msgstr "" - -#: util/grub-mkfont.c:550 -#, c-format -msgid "Unsupported substitution specification: %d\n" -msgstr "" - -#: util/grub-mkfont.c:582 -#, c-format -msgid "Unsupported coverage specification: %d\n" -msgstr "" - -#: util/grub-mkfont.c:622 -#, c-format -msgid "WARNING: unsupported font feature parameters: %x\n" -msgstr "" - -#: util/grub-mkfont.c:936 util/grub-mkrescue.c:98 util/grub-mkstandalone.c:48 -msgid "save output in FILE [required]" -msgstr "" - -#. TRANSLATORS: some font files may have multiple faces (fonts). -#. This option is used to chose among them, the first face being '0'. -#. Rarely used. -#: util/grub-mkfont.c:942 -msgid "select face index" -msgstr "" - -#: util/grub-mkfont.c:943 -msgid "FROM-TO[,FROM-TO]" -msgstr "FROM-TO[,FROM-TO]" - -#. TRANSLATORS: It refers to the range of characters in font. -#: util/grub-mkfont.c:945 -msgid "set font range" -msgstr "ਫੋਂਟ ਰੇਜ਼ ਦਿਓ" - -#. TRANSLATORS: "family name" for font is just a generic name without suffix -#. like "Bold". -#: util/grub-mkfont.c:949 -msgid "set font family name" -msgstr "ਫੋਂਟ ਫੈਮਲੀ ਨਾਂ ਦਿਓ" - -#: util/grub-mkfont.c:950 -msgid "SIZE" -msgstr "ਆਕਾਰ" - -#: util/grub-mkfont.c:950 -msgid "set font size" -msgstr "ਫੋਂਟ ਆਕਾਰ ਸੈੱਟ ਕਰੋ" - -#: util/grub-mkfont.c:951 -msgid "set font descent" -msgstr "" - -#: util/grub-mkfont.c:952 -msgid "set font ascent" -msgstr "" - -#: util/grub-mkfont.c:953 -msgid "convert to bold font" -msgstr "ਗੂੜੇ ਫੋਂਟ ਵਿੱਚ ਬਦਲੋ" - -#: util/grub-mkfont.c:954 -msgid "force autohint" -msgstr "ਆਟੋ-ਹਿੰਟ ਲਈ ਮਜ਼ਬੂਰ" - -#: util/grub-mkfont.c:955 -msgid "disable hinting" -msgstr "ਹਿੰਟਿੰਗ ਬੰਦ ਹੈ" - -#. TRANSLATORS: some fonts contain bitmap rendering for -#. some sizes. This option forces rerendering even if -#. pre-rendered bitmap is available. -#. -#: util/grub-mkfont.c:961 -msgid "ignore bitmap strikes when loading" -msgstr "ਲੋਡ ਕਰਨ ਦੇ ਦੌਰਾਨ ਬਿਟਮੈਪ ਅਣਡਿੱਠਾ ਕਰੋ" - -#. TRANSLATORS: It refers to the range of characters in font. -#: util/grub-mkfont.c:1059 util/grub-mkfont.c:1075 -msgid "invalid font range" -msgstr "ਗਲਤ ਫੋਂਟ ਰੇਜ਼" - -#: util/grub-mkfont.c:1151 -msgid "[OPTIONS] FONT_FILES" -msgstr "[OPTIONS] FONT_FILES" - -#: util/grub-mkfont.c:1152 -msgid "Convert common font file formats into PF2" -msgstr "" - -#: util/grub-mkfont.c:1182 util/grub-mkrescue.c:483 -#: util/grub-mkstandalone.c:306 -msgid "output file must be specified" -msgstr "ਆਉਟਪà©à©±à¨Ÿ ਫਾਇਲ ਦੇਣਾ ਲਾਜ਼ਮੀ ਹੈ" - -#: util/grub-mkfont.c:1185 -msgid "FT_Init_FreeType fails" -msgstr "FT_Init_FreeType ਫੇਲà©à¨¹ ਹੈ" - -#: util/grub-mkfont.c:1199 -#, c-format -msgid "can't open file %s, index %d: error %d" -msgstr "ਫਾਇਲ %s, ਇੰਡੈਕਸ %d ਖੋਲੀ ਨਹੀਂ ਜਾ ਸਕਦੀ: ਗਲਤੀ %d" - -#: util/grub-mkfont.c:1229 -#, c-format -msgid "can't set %dx%d font size: Freetype error %d: %s" -msgstr "" - -#: util/grub-mkimage.c:67 -#, fuzzy -msgid "set prefix directory" -msgstr "ਡਾਇਰੈਕਟਰੀ ਨਹੀਂ ਹੈ" - -#. TRANSLATORS: "memdisk" here isn't an identifier, it can be translated. -#. "embed" is a verb (command description). " -#: util/grub-mkimage.c:71 -msgid "" -"embed FILE as a memdisk image\n" -"Implies `-p (memdisk)/boot/grub' and overrides any prefix supplied " -"previously, but the prefix itself can be overridden by later options" -msgstr "" - -#: util/grub-mkimage.c:74 -msgid "embed FILE as a device tree (DTB)\n" -msgstr "" - -#: util/grub-mkimage.c:76 -msgid "embed FILE as an early config" -msgstr "" - -#. TRANSLATORS: NOTE is a name of segment. -#: util/grub-mkimage.c:80 -msgid "add NOTE segment for CHRP IEEE1275" -msgstr "" - -#: util/grub-mkimage.c:81 -msgid "output a generated image to FILE [default=stdout]" -msgstr "" - -#: util/grub-mkimage.c:82 -msgid "FORMAT" -msgstr "ਫਾਰਮੈਟ" - -#: util/grub-mkimage.c:100 util/grub-mkstandalone.c:62 -msgid "generate an image in FORMAT" -msgstr "ਫਾਰਮੈਟ ਵਿੱਚ ਈਮੇਜ਼ ਤਿਆਰ ਕੀਤਾ" - -#: util/grub-mkimage.c:101 util/grub-mkstandalone.c:63 -msgid "available formats:" -msgstr "ਉਪਲੱਬਧ ਫਾਰਮੈਟ:" - -#: util/grub-mkimage.c:152 util/grub-mkstandalone.c:96 -#, c-format -msgid "unknown target format %s\n" -msgstr "ਅਣਜਾਣ ਟਾਰਗੇਟ ਫਾਰਮੈਟ %s\n" - -#: util/grub-mkimage.c:242 -msgid "[OPTION]... [MODULES]" -msgstr "[OPTION]... [MODULES]" - -#: util/grub-mkimage.c:243 -msgid "Make a bootable image of GRUB." -msgstr "ਗਰਬ ਦਾ ਬੂਟ ਹੋਣਯੋਗ ਈਮੇਜ਼ ਬਣਾਉ।" - -#: util/grub-mkimage.c:273 util/grub-mkstandalone.c:309 -msgid "Target format not specified (use the -O option)." -msgstr "" - -#: util/grub-mkimage.c:282 -msgid "Prefix not specified (use the -p option)." -msgstr "" - -#: util/grub-mkimage.c:318 util/setup.c:793 -#, fuzzy, c-format -msgid "cannot close `%s': %s" -msgstr "`%s' ਖੋਲà©à¨¹à¨¿à¨† ਨਹੀਂ ਜਾ ਸਕਦਾ: %s" - -#: util/grub-mkimagexx.c:2191 -#, c-format -msgid "" -"`%s' is miscompiled: its start address is 0x%llx instead of 0x%llx: ld.gold " -"bug?" -msgstr "" - -#: util/grub-mklayout.c:53 -msgid "set input filename. Default is STDIN" -msgstr "" - -#. TRANSLATORS: scan identifier is keyboard key symbolic name. -#: util/grub-mklayout.c:307 -#, c-format -msgid "Unknown keyboard scan identifier %s\n" -msgstr "" - -#. TRANSLATORS: scan code is keyboard key numeric identifier. -#: util/grub-mklayout.c:390 util/grub-mklayout.c:418 -#, c-format -msgid "Unknown keyboard scan code 0x%02x\n" -msgstr "" - -#. TRANSLATORS: this error is triggered when input doesn't contain any -#. key descriptions. -#: util/grub-mklayout.c:438 -msgid "ERROR: no valid keyboard layout found. Check the input.\n" -msgstr "" - -#. TRANSLATORS: "one" is a shortcut for "keyboard layout". -#: util/grub-mklayout.c:478 -msgid "Generate GRUB keyboard layout from Linux console one." -msgstr "" - -#: util/grub-mknetdir.c:47 -msgid "root directory of TFTP server" -msgstr "TFP ਸਰਵਰ ਲਈ ਰੂਟ ਡਾਇਰੈਕਟਰੀ" - -#: util/grub-mknetdir.c:49 -msgid "relative subdirectory on network server" -msgstr "" - -#: util/grub-mknetdir.c:88 -msgid "" -"Prepares GRUB network boot images at net_directory/subdir assuming " -"net_directory being TFTP root." -msgstr "" - -#: util/grub-mknetdir.c:146 -#, fuzzy, c-format -msgid "unsupported platform %s" -msgstr "ਗੈਰ ਸਹਾਇਕ ਪਲੇਟਫਾਰਮ %s\\n" - -#. TRANSLATORS: First %s is replaced by platform name. Second one by filename. -#: util/grub-mknetdir.c:165 -#, c-format -msgid "" -"Netboot directory for %s created. Configure your DHCP server to point to %s\n" -msgstr "" - -#: util/grub-mkpasswd-pbkdf2.c:46 -msgid "Number of PBKDF2 iterations" -msgstr "" - -#: util/grub-mkpasswd-pbkdf2.c:47 -msgid "Length of generated hash" -msgstr "ਤਿਆਰ ਕੀਤੇ ਹੈਸ਼ ਦੀ ਲੰਬਾਈ" - -#: util/grub-mkpasswd-pbkdf2.c:48 -msgid "Length of salt" -msgstr "ਸਾਲਟ ਦੀ ਲੰਬਾਈ" - -#: util/grub-mkpasswd-pbkdf2.c:87 -msgid "Generate PBKDF2 password hash." -msgstr "PBKDF2 ਪਾਸਵਰਡ ਹੈਸ਼ ਬਣਾਉ।" - -#: util/grub-mkpasswd-pbkdf2.c:144 util/grub-mkpasswd-pbkdf2.c:151 -msgid "failure to read password" -msgstr "ਪਾਸਵਰਡ ਪੜà©à¨¹à¨¨ ਲਈ ਫੇਲà©à¨¹ ਹੈ" - -#: util/grub-mkpasswd-pbkdf2.c:146 -msgid "Reenter password: " -msgstr "ਪਾਸਵਰਡ ਮà©à©œ-ਦਿਓ: " - -#: util/grub-mkpasswd-pbkdf2.c:160 -msgid "passwords don't match" -msgstr "ਪਾਸਵਰਡ ਮੇਲ ਨਹੀਂ ਖਾ ਰਿਹਾ" - -#: util/grub-mkpasswd-pbkdf2.c:169 -msgid "couldn't retrieve random data for salt" -msgstr "" - -#: util/grub-mkpasswd-pbkdf2.c:184 -#, c-format -msgid "cryptographic error number %d" -msgstr "ਕà©à¨°à¨¿à¨ªà¨Ÿà©‹à¨—ਰਾਫਿਕ ਗਲਤੀ ਨੰਬਰ %d" - -#: util/grub-mkpasswd-pbkdf2.c:203 -#, c-format -msgid "PBKDF2 hash of your password is %s\n" -msgstr "ਤà©à¨¹à¨¾à¨¡à©‡ ਪਾਸਵਰਡ ਦਾ PBKDF2 ਹੈਸ਼ %s ਹੈ\n" - -#: util/grub-mkrelpath.c:67 -msgid "No path is specified.\n" -msgstr "ਕੋਈ ਪਾਥ ਨਹੀਂ ਦਿੱਤਾ।\n" - -#: util/grub-mkrelpath.c:78 -msgid "PATH" -msgstr "ਪਾਥ" - -#: util/grub-mkrelpath.c:79 -msgid "Transform a system filename into GRUB one." -msgstr "ਸਿਸਟਮ ਫਾਇਲ-ਨਾਂ ਨੂੰ ਗਰਬ ਵਿੱਚ ਬਦਲੋ।" - -#: util/grub-mkrescue.c:100 -msgid "save ROM images in DIR [optional]" -msgstr "" - -#. TRANSLATORS: xorriso is a program for creating ISOs and burning CDs. -#: util/grub-mkrescue.c:103 -msgid "use FILE as xorriso [optional]" -msgstr "" - -#: util/grub-mkrescue.c:109 -msgid "use STRING as product name" -msgstr "" - -#: util/grub-mkrescue.c:111 -msgid "" -"enable sparc boot. Disables HFS+, APM, ARCS and boot as disk image for i386-" -"pc" -msgstr "" - -#: util/grub-mkrescue.c:112 -msgid "" -"enable ARCS (big-endian mips machines, mostly SGI) boot. Disables HFS+, APM, " -"sparc64 and boot as disk image for i386-pc" -msgstr "" - -#. TRANSLATORS: it generates one single image which is bootable through any method. -#: util/grub-mkrescue.c:125 -msgid "Make GRUB CD-ROM, disk, pendrive and floppy bootable image." -msgstr "" - -#: util/grub-mkrescue.c:130 -#, c-format -msgid "" -"Generates a bootable CD/USB/floppy image. Arguments other than options to " -"this program are passed to xorriso, and indicate source files, source " -"directories, or any of the mkisofs options listed by the output of `%s'." -msgstr "" - -#: util/grub-mkrescue.c:134 -msgid "Option -- switches to native xorriso command mode." -msgstr "" - -#: util/grub-mkrescue.c:135 -msgid "Mail xorriso support requests to ." -msgstr "" - -#: util/grub-mkrescue.c:221 util/grub-mkstandalone.c:114 -#, fuzzy -msgid "[OPTION] SOURCE..." -msgstr "ਵਰਤੋਂ: %s [OPTION] SOURCE...\\n" - -#: util/grub-mkrescue.c:257 util/grub-mkrescue.c:300 util/grub-mkrescue.c:588 -#, fuzzy, c-format -msgid "enabling %s support ..." -msgstr "%s ਸਹਿਯੋਗ ਚਾਲੂ ਕੀਤਾ ਜਾ ਰਿਹਾ ਹੈ ...\\n" - -#: util/grub-mkrescue.c:486 -#, fuzzy -msgid "xorriso not found" -msgstr "ਕਾਰਡ ਨਹੀਂ ਲੱਭਿਆ" - -#: util/grub-mkrescue.c:623 -msgid "" -"Your xorriso doesn't support `--grub2-boot-info'. Some features are " -"disabled. Please use xorriso 1.2.9 or later." -msgstr "" - -#: util/grub-mkrescue.c:650 -msgid "" -"Your xorriso doesn't support `--grub2-boot-info'. Your core image is too " -"big. Boot as disk is disabled. Please use xorriso 1.2.9 or later." -msgstr "" - -#: util/grub-mkstandalone.c:115 -msgid "" -"Generate a standalone image (containing all modules) in the selected format" -msgstr "" - -#: util/grub-mkstandalone.c:115 -msgid "Graft point syntax (E.g. /boot/grub/grub.cfg=./grub.cfg) is accepted" -msgstr "" - -#: util/grub-mount.c:552 -msgid "IMAGE1 [IMAGE2 ...] MOUNTPOINT" -msgstr "IMAGE1 [IMAGE2 ...] MOUNTPOINT" - -#: util/grub-mount.c:575 -msgid "need an image and mountpoint" -msgstr "ਈਮੇਜ਼ ਅਤੇ ਮਾਊਂਟ-ਪà©à¨†à¨‡à©°à¨Ÿ ਚਾਹੀਦਾ ਹੈ" - -#: util/grub-probe.c:731 -msgid "given argument is a system device, not a path" -msgstr "ਦਿੱਤਾ ਆਰਗੂਮੈਂਟ ਸਿਸਟਮ ਜੰਤਰ ਹੈ ਨਾ ਕਿ ਪਾਥ" - -#: util/grub-probe.c:736 -msgid "separate items in output using ASCII NUL characters" -msgstr "" - -#: util/grub-probe.c:754 -#, c-format -msgid "[default=%s]" -msgstr "" - -#: util/grub-probe.c:756 -#, fuzzy -msgid "print TARGET" -msgstr "ਟਾਰਗੇਟ" - -#: util/grub-probe.c:757 -#, fuzzy -msgid "available targets:" -msgstr "ਉਪਲੱਬਧ ਫਾਰਮੈਟ:" - -#: util/grub-probe.c:839 -msgid "[OPTION]... [PATH|DEVICE]" -msgstr "[OPTION]... [PATH|DEVICE]" - -#: util/grub-probe.c:840 -msgid "" -"Probe device information for a given path (or device, if the -d option is " -"given)." -msgstr "" - -#: util/grub-render-label.c:60 -msgid "read text from FILE." -msgstr "" - -#: util/grub-render-label.c:62 -msgid "use COLOR for text" -msgstr "" - -#: util/grub-render-label.c:64 -msgid "use COLOR for background" -msgstr "" - -#. TRANSLATORS: The result is always stored to file and -#. never shown directly, so don't use "show" as synonym for render. Use "create" if -#. "render" doesn't translate directly. -#: util/grub-render-label.c:69 -msgid "set the label to render" -msgstr "" - -#: util/grub-render-label.c:73 -msgid "use FILE as font (PF2)." -msgstr "" - -#. TRANSLATORS: This file takes a text and creates a graphical representation of it, -#. putting the result into .disk_label file. The result is always stored to file and -#. never shown directly, so don't use "show" as synonym for render. Use "create" if -#. "render" doesn't translate directly. -#: util/grub-render-label.c:136 -msgid "Render Apple .disk_label." -msgstr "" - -#: util/grub-render-label.c:158 util/grub-syslinux2cfg.c:169 -#, fuzzy -msgid "Missing arguments\n" -msgstr "%s: ਬਹà©à¨¤ ਆਰਗੂਮੈਂਟ\n" - -#: util/grub-script-check.c:87 -msgid "[PATH]" -msgstr "[ਪਾਥ]" - -#: util/grub-script-check.c:88 -msgid "Checks GRUB script configuration file for syntax errors." -msgstr "" - -#: util/grub-script-check.c:207 -#, c-format -msgid "Syntax error at line %u\n" -msgstr "ਲਾਈਨ %u ਉੱਤੇ ਸੰਟੈਕਸ ਗਲਤੀ\n" - -#: util/grub-script-check.c:212 -#, c-format -msgid "Script `%s' contains no commands and will do nothing\n" -msgstr "" - -#: util/grub-setup.c:79 -#, c-format -msgid "use FILE as the boot image [default=%s]" -msgstr "" - -#: util/grub-setup.c:81 -#, c-format -msgid "use FILE as the core image [default=%s]" -msgstr "" - -#: util/grub-setup.c:210 -msgid "No device is specified.\n" -msgstr "ਕੋਈ ਜੰਤਰ ਨਹੀਂ ਦਿੱਤਾ।\n" - -#: util/grub-setup.c:224 -msgid "" -"Set up images to boot from DEVICE.\n" -"\n" -"You should not normally run this program directly. Use grub-install instead." -msgstr "" - -#: util/grub-setup.c:228 -msgid "DEVICE must be an OS device (e.g. /dev/sda)." -msgstr "ਜੰਤਰ OS ਜੰਤਰ ਹੋਣਾ ਚਾਹੀਦਾ ਹੈ (ਜਿਵੇਂ ਕਿ /dev/sda)।" - -#: util/grub-setup.c:297 -#, c-format -msgid "Invalid device `%s'.\n" -msgstr "ਗਲਤ ਜੰਤਰ `%s'।\n" - -#: util/grub-syslinux2cfg.c:64 -msgid "root directory as it will be seen on runtime [default=/]." -msgstr "" - -#: util/grub-syslinux2cfg.c:69 -msgid "" -"current directory of syslinux as it will be seen on runtime [default is " -"parent directory of input file]." -msgstr "" - -#: util/grub-syslinux2cfg.c:74 -msgid "write output to FILE [default=stdout]." -msgstr "" - -#: util/grub-syslinux2cfg.c:148 -#, fuzzy -msgid "Transform syslinux config into GRUB one." -msgstr "ਸਿਸਟਮ ਫਾਇਲ-ਨਾਂ ਨੂੰ ਗਰਬ ਵਿੱਚ ਬਦਲੋ।" - -#: util/mkimage.c:688 util/mkimage.c:717 util/mkimage.c:734 -msgid "cannot compress the kernel image" -msgstr "ਕਰਨਲ ਈਮੇਜ਼ ਕੰਪਰੈਸ ਨਹੀਂ ਕੀਤਾ ਜਾ ਸਕਦਾ" - -#: util/mkimage.c:766 util/mkimage.c:1077 -#, fuzzy, c-format -msgid "unknown compression %d" -msgstr "ਅਣਜਾਣ ਕੰਪਰੈਸ਼ਨ %d\n" - -#: util/mkimage.c:1088 -msgid "Decompressor is too big" -msgstr "" - -#: util/mkimage.c:1133 -#, c-format -msgid "core image is too big (0x%x > 0x%x)" -msgstr "" - -#: util/mkimage.c:1140 -#, fuzzy, c-format -msgid "kernel image is too big (0x%x > 0x%x)" -msgstr "ਫਿਰਮਵੇਅਰ ਈਮੇਜ਼ ਬਹà©à¨¤ ਵੱਡਾ ਹੈ" - -#: util/mkimage.c:1220 util/mkimage.c:1501 -#, c-format -msgid "diskboot.img size must be %u bytes" -msgstr "" - -#: util/mkimage.c:1571 -msgid "" -"fwstart.img doesn't match the known good version. proceed at your own risk" -msgstr "" - -#: util/mkimage.c:1575 util/mkimage.c:1601 -msgid "firmware image is too big" -msgstr "ਫਿਰਮਵੇਅਰ ਈਮੇਜ਼ ਬਹà©à¨¤ ਵੱਡਾ ਹੈ" - -#: util/resolve.c:93 -#, c-format -msgid "invalid line format: %s" -msgstr "ਗਲਤ ਲਾਈਨ ਫਾਰਮੈਟ: %s" - -#: util/setup.c:167 -msgid "the first sector of the core file is not sector-aligned" -msgstr "" - -#: util/setup.c:177 -msgid "non-sector-aligned data is found in the core file" -msgstr "" - -#: util/setup.c:199 -msgid "the sectors of the core file are too fragmented" -msgstr "" - -#: util/setup.c:280 -#, c-format -msgid "the size of `%s' is not %u" -msgstr "" - -#: util/setup.c:290 -#, c-format -msgid "the size of `%s' is too small" -msgstr "`%s' ਦਾ ਆਕਾਰ ਬਹà©à¨¤ ਛੋਟਾ ਹੈ" - -#: util/setup.c:428 -msgid "" -"Attempting to install GRUB to a disk with multiple partition labels or both " -"partition label and filesystem. This is not supported yet." -msgstr "" - -#: util/setup.c:441 -#, c-format -msgid "unable to identify a filesystem in %s; safety check can't be performed" -msgstr "" - -#. TRANSLATORS: Filesystem may reserve the space just GRUB isn't sure about it. -#: util/setup.c:445 -#, c-format -msgid "" -"%s appears to contain a %s filesystem which isn't known to reserve space for " -"DOS-style boot. Installing GRUB there could result in FILESYSTEM " -"DESTRUCTION if valuable data is overwritten by grub-setup (--skip-fs-probe " -"disables this check, use at your own risk)" -msgstr "" - -#. TRANSLATORS: Partition map may reserve the space just GRUB isn't sure about it. -#: util/setup.c:458 -#, c-format -msgid "" -"%s appears to contain a %s partition map which isn't known to reserve space " -"for DOS-style boot. Installing GRUB there could result in FILESYSTEM " -"DESTRUCTION if valuable data is overwritten by grub-setup (--skip-fs-probe " -"disables this check, use at your own risk)" -msgstr "" - -#: util/setup.c:465 -#, c-format -msgid "" -"%s appears to contain a %s partition map and LDM which isn't known to be a " -"safe combination. Installing GRUB there could result in FILESYSTEM " -"DESTRUCTION if valuable data is overwritten by grub-setup (--skip-fs-probe " -"disables this check, use at your own risk)" -msgstr "" - -#: util/setup.c:478 -msgid "" -"Attempting to install GRUB to a partitionless disk or to a partition. This " -"is a BAD idea." -msgstr "" - -#: util/setup.c:483 -msgid "" -"Attempting to install GRUB to a disk with multiple partition labels. This " -"is not supported yet." -msgstr "" - -#: util/setup.c:489 -#, c-format -msgid "Partition style `%s' doesn't support embedding" -msgstr "" - -#: util/setup.c:496 -#, c-format -msgid "File system `%s' doesn't support embedding" -msgstr "ਫਾਇਲ ਸਿਸਟਮ `%s' ਇੰਬੈਡ ਕਰਨ ਲਈ ਸਹਾਇਕ ਨਹੀਂ ਹੈ" - -#: util/setup.c:537 -msgid "Your embedding area is unusually small. core.img won't fit in it." -msgstr "" - -#: util/setup.c:559 util/setup.c:725 util/setup.c:844 -msgid "no terminator in the core image" -msgstr "ਕੋਰ ਈਮੇਜ਼ ਵਿੱਚ ਕੋਈ ਟਰਮੀਨੇਟਰ ਨਹੀਂ ਹੈ" - -#: util/setup.c:622 -msgid "core.img version mismatch" -msgstr "core.img ਵਰਜਨ ਮਿਲਦਾ ਨਹੀਂ ਹੈ" - -#: util/setup.c:675 -msgid "" -"embedding is not possible, but this is required for RAID and LVM install" -msgstr "" - -#: util/setup.c:682 -#, c-format -msgid "can't determine filesystem on %s" -msgstr "%s ਉੱਤੇ ਫਾਇਲ-ਸਿਸਟਮ ਜਾਣਿਆ ਨਹੀਂ ਜਾ ਸਕਦਾ" - -#: util/setup.c:685 -#, c-format -msgid "filesystem `%s' doesn't support blocklists" -msgstr "ਫਾਇਲ-ਸਿਸਟਮ `%s' ਬਲਾਕ-ਲਿਸਟ ਲਈ ਸਹਾਇਕ ਨਹੀਂ ਹੈ" - -#. TRANSLATORS: cross-disk refers to /boot being on one disk -#. but MBR on another. -#: util/setup.c:694 -msgid "embedding is not possible, but this is required for cross-disk install" -msgstr "" - -#: util/setup.c:700 -msgid "" -"Embedding is not possible. GRUB can only be installed in this setup by " -"using blocklists. However, blocklists are UNRELIABLE and their use is " -"discouraged." -msgstr "" - -#. TRANSLATORS: Here GRUB refuses to continue with blocklist install. -#: util/setup.c:705 -msgid "will not proceed with blocklists" -msgstr "" - -#: util/setup.c:817 util/setup.c:837 -msgid "blocklists are invalid" -msgstr "" - -#: util/setup.c:847 -msgid "blocklists are incomplete" -msgstr "" - -#~ msgid "Address range not associated with RAM" -#~ msgstr "à¨à¨¡à¨°à©ˆà¨¸ ਰੇਜ਼ RAM ਨਾਲ ਸਬੰਧਿਤ ਨਹੀਂ ਹੈ" - -#~ msgid "Packed pixel " -#~ msgstr "ਪੈਕ ਕੀਤੇ ਪਿਕਸਲ " - -#~ msgid "%s: option '--%s' doesn't allow an argument\n" -#~ msgstr "%s: ਚੋਣ '--%s' ਇੱਕ ਆਰਗੂਮੈਂਟ ਨਹੀਂ ਲੈਂਦੀ\n" - -#~ msgid "%s: option '-W %s' is ambiguous\n" -#~ msgstr "%s: ਚੋਣ '-W %s' ਸਧਾਰਨ ਹੈ।\n" - -#~ msgid "%s: option '-W %s' doesn't allow an argument\n" -#~ msgstr "%s: ਚੋਣ '-W %s' ਲਈ ਇੱਕ ਆਰਗੂਮੈਂਟ ਨਹੀਂ ਚਾਹੀਦਾ\n" - -#~ msgid "create width summary file" -#~ msgstr "ਚੌੜਾਈ ਸਾਰ ਫਾਇਲ ਬਣਾਓ" - -#~ msgid "Found theme: %s\\n" -#~ msgstr "ਥੀਮ ਲੱਭਿਆ: %s\\n" - -#~ msgid "Found background: %s\\n" -#~ msgstr "ਬੈਕਗਰਾਊਂਡ ਲੱਭੀ: %s\\n" - -#~ msgid "Unsupported image format" -#~ msgstr "ਗ਼ੈਰ-ਸਹਾਇਕ ਈਮੇਜ਼ ਫਾਰਮੈਟ" - -#~ msgid "Found GNU Mach: %s" -#~ msgstr "ਗਨੂ ਮੈਸ਼ ਲੱਭਿਆ: %s" - -#~ msgid "Found Hurd module: %s" -#~ msgstr "ਹà©à¨°à¨¡ ਮੋਡੀਊਲ ਲੱਭਿਆ: %s" - -#~ msgid "Loading GNU Mach ..." -#~ msgstr "...ਗਨੂ ਮੈਸ਼ ਲੋਡ ਕੀਤਾ ਜਾ ਰਿਹਾ ਹੈ" - -#~ msgid "Advanced options for %s" -#~ msgstr "% ਲਈ ਤਕਨੀਕੀ ਚੋਣਾਂ" - -#~ msgid "Found kernel module directory: %s\\n" -#~ msgstr "ਕਰਨਲ ਮੋਡੀਊਲ ਡਾਇਰੈਕਟਰੀ ਲੱਭੀ: %s\\n" - -#~ msgid "%s, with Linux %s (recovery mode)" -#~ msgstr "%s, ਲੀਨਕਸ %s ਨਾਲ (ਰਿਕਵਰੀ ਮੋਡ)" - -#~ msgid "%s, with Linux %s" -#~ msgstr "%s, ਲੀਨਕਸ %s ਨਾਲ" - -#~ msgid "Loading Linux %s ..." -#~ msgstr "ਲੀਨਕਸ %s ਲੋਡ ਕੀਤਾ ਜਾ ਰਿਹਾ ਹੈ ..." - -#~ msgid "Loading initial ramdisk ..." -#~ msgstr "initial ramdisk ਲੋਡ ਕੀਤਾ ਜਾ ਰਿਹਾ ਹੈ ..." - -#~ msgid "Found linux image: %s\\n" -#~ msgstr "linux ਈਮੇਜ਼ ਲੱਭਿਆ: %s\\n" - -#~ msgid "Found initrd image: %s\\n" -#~ msgstr "initrd ਈਮੇਜ਼ ਲੱਭਿਆ: %s\\n" - -#~ msgid "Windows Vista/7 (loader)" -#~ msgstr "Windows Vista/7 (ਲੋਡਰ)" - -#~ msgid "Windows NT/2000/XP (loader)" -#~ msgstr "Windows NT/2000/XP (ਲੋਡਰ)" - -#~ msgid "Found %s on %s (%s)\\n" -#~ msgstr "%2$s (%3$s) ਉੱਤੇ %1$s ਲੱਭਿਆ\\n" - -#~ msgid "Loading Xen %s ..." -#~ msgstr "Xen %s ਲੋਡ ਕੀਤਾ ਜਾ ਰਿਹਾ ਹੈ..." - -#~ msgid "Xen hypervisor, version %s" -#~ msgstr "Xen ਹਾਈਪਰਵਾਈਜ਼ਰ, ਵਰਜਨ %s" - -#~ msgid "Advanced options for %s (with Xen hypervisor)" -#~ msgstr "%s ਲਈ ਤਕਨੀਕੀ ਚੋਣਾਂ (Xen ਹਾਈਪਰਵਾਈਜ਼ਰ ਨਾਲ)" - -#~ msgid "(32-bit)" -#~ msgstr "(32-ਬਿੱਟ)" - -#~ msgid "(64-bit)" -#~ msgstr "(64-ਬਿੱਟ)" - -#~ msgid "(on %s)" -#~ msgstr "(%s ਉੱਤੇ)" - -#~ msgid "Found %s on %s\\n" -#~ msgstr "%2$s ਉੱਤੇ %1$s ਲੱਭਿਆ\\n" - -#~ msgid "print this message and exit" -#~ msgstr "ਇਹ ਸà©à¨¨à©‡à¨¹à¨¾ ਛਾਪੋ ਅਤੇ ਬੰਦ ਕਰੋ" - -#~ msgid "print the version information and exit" -#~ msgstr "ਵਰਜਨ ਜਾਣਕਾਰੀ ਛਾਪੋ ਅਤੇ ਬੰਦ ਕਰੋ" - -#~ msgid "INSTALL_DEVICE must be system device filename." -#~ msgstr "INSTALL_DEVICE ਸਿਸਟਮ ਜੰਤਰ ਫਾਇਲ-ਨਾਂ ਹੋਣਾ ਚਾਹੀਦਾ ਹੈ।" - -#~ msgid "Report bugs to ." -#~ msgstr "ਬੱਗ ਜਾਣਕਾਰੀ ਨੂੰ ਭੇਜੋ" - -#~ msgid "" -#~ "Path `%s' is not readable by GRUB on boot. Installation is impossible. " -#~ "Aborting.\\n" -#~ msgstr "" -#~ "ਬੂਟ (boot) ਉੱਤੇ ਪਾਥ `%s' ਗਰਬ ਵਲੋਂ ਪੜਨਯੋਗ ਨਹੀਂ ਹੈ। ਇੰਸਟਾਲੇਸ਼ਨ ਅਸੰਭਵ ਹੈ। ਅਧੂਰਾ ਛੱਡਿਆ।\\n" - -#~ msgid "Auto-detection of a filesystem of %s failed.\\n" -#~ msgstr "%s ਦੇ ਫਾਇਲ-ਸਿਸਟਮ ਦੀ ਆਪੇ-ਖੋਜ ਫੇਲà©à¨¹ ਹੋਈ।\\n" - -#~ msgid "Try with --recheck." -#~ msgstr "--recheck ਨਾਲ ਕੋਸ਼ਿਸ਼ ਕਰੋ।" - -#~ msgid "`%s' failed.\\n" -#~ msgstr "`%s' ਫੇਲà©à¨¹ ਹੈ\\n" - -#~ msgid "Usage: %s -o OUTPUT CKBMAP_ARGUMENTS...\\n" -#~ msgstr "ਵਰਤੋ: %s -o OUTPUT CKBMAP_ARGUMENTS...\\n" - -#~ msgid "Make GRUB keyboard layout file." -#~ msgstr "GRUB ਕੀਬੋਰਡ ਲੇਆਉਟ ਫਾਇਲ ਬਣਾਉ।" - -#~ msgid "Usage: %s [OPTION]\\n" -#~ msgstr "ਵਰਤੋ: %s [OPTION]\\n" - -#~ msgid "Generate a grub config file" -#~ msgstr "grub ਸੰਰਚਨਾ ਫਾਇਲ ਤਿਆਰ ਕਰੋ" - -#~ msgid "%s: You must run this as root\\n" -#~ msgstr "%s: ਇਹ ਚਲਾਉਣ ਲਈ ਤà©à¨¹à¨¾à¨¨à©‚à©° ਰੂਟ ਹੋਣਾ ਚਾਹੀਦਾ ਹੈ\\n" - -#~ msgid "Generating grub.cfg ..." -#~ msgstr "...grub.cfg ਤਿਆਰ ਕੀਤੀ ਜਾ ਰਹੀ ਹੈ" - -#~ msgid "done" -#~ msgstr "ਸਮਾਪਤ" - -#~ msgid "Warning:" -#~ msgstr "ਚੇਤਾਵਨੀ:" - -#~ msgid "Usage: %s [OPTION] MENU_ENTRY\\n" -#~ msgstr "ਵਰਤੋ: %s [OPTION] MENU_ENTRY\\n" - -#~ msgid "Set the default boot menu entry for GRUB, for the next boot only." -#~ msgstr "ਗਰਬ ਲਈ ਮੂਲ ਬੂਟ ਮੇਨੂ à¨à¨‚ਟਰੀ ਸੈੱਟ ਕਰੋ, ਕੇਵਲ ਅਗਲੇ ਬੂਟ ਲਈ ਹੀ।" - -#~ msgid "More than one menu entry?" -#~ msgstr "ਇੱਕ ਤੋਂ ਵੱਧ ਮੇਨੂ à¨à¨‚ਟਰੀਆਂ?" - -#~ msgid "Menu entry not specified." -#~ msgstr "ਮੇਨੂ à¨à¨‚ਟਰੀ ਨਹੀਂ ਦਿੱਤੀ ਗਈ।" - -#~ msgid "Set the default boot menu entry for GRUB." -#~ msgstr "ਗਰਬ ਲਈ ਮੂਲ ਬੂਟ ਮੇਨੂ à¨à¨‚ਟਰੀ ਸੈੱਟ ਕਰੋ।" diff --git a/thirdparty/grub-2.04/po/piglatin.sed b/thirdparty/grub-2.04/po/piglatin.sed deleted file mode 100644 index 041688c7d..000000000 --- a/thirdparty/grub-2.04/po/piglatin.sed +++ /dev/null @@ -1,21 +0,0 @@ -/^Project-Id-Version:/ b -/^Report-Msgid-Bugs-To:/ b -/^POT-Creation-Date:/ b -/^PO-Revision-Date:/ b -/^Last-Translator:/ b -/^Language-Team:/ b -/^Language:/ b -/^MIME-Version:/ b -/^Content-Type:/ b -/^Content-Transfer-Encoding:/ b -/^Plural-Forms:/ b - -s/"\([^"]*\)"/“\1â€/g -s/`\([^`']*\)'/‘\1’/g -s/ '\([^`']*\)' / ‘\1’ /g -s/ '\([^`']*\)'$/ ‘\1’/g -s/^'\([^`']*\)' /‘\1’ /g -s/“â€/""/g - -s,\(^\|[^a-zA-Z0-9%\\]\)\([aoeuiAOEUI]\)\([a-zA-Z]*\),\1\2\3way,g -s,\(^\|[^a-zA-Z0-9%\\]\)\([bcdfghj-np-tvwxzBCDFGHJ-NP-TVWXZ][bcdfghj-np-tvwxzBCDFGHJ-NP-TVWXZ]*\)\([a-zA-Z]*\),\1\3\2ay,g diff --git a/thirdparty/grub-2.04/po/pl.gmo b/thirdparty/grub-2.04/po/pl.gmo deleted file mode 100644 index 324274771d92fddc71581af7a1f86bfa1bd2b634..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 125159 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 ohe<3qYm1rhWXl3ww(qm4K!C23kZQL2m~A}{Zr, 2010. -# Jakub Bogusz , 2010-2019. -# -msgid "" -msgstr "" -"Project-Id-Version: grub 2.04-pre1\n" -"Report-Msgid-Bugs-To: bug-grub@gnu.org\n" -"POT-Creation-Date: 2019-07-04 16:09+0200\n" -"PO-Revision-Date: 2019-04-09 21:15+0200\n" -"Last-Translator: Jakub Bogusz \n" -"Language-Team: Polish \n" -"Language: pl\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Bugs: Report translation errors to the Language-Team address.\n" - -#: grub-core/bus/usb/serial/ftdi.c:145 grub-core/bus/usb/serial/pl2303.c:158 -#: grub-core/term/ieee1275/escc.c:169 grub-core/term/ns8250.c:202 -msgid "unsupported serial port speed" -msgstr "nieobsÅ‚ugiwana prÄ™dkość portu szeregowego" - -#: grub-core/bus/usb/serial/ftdi.c:151 grub-core/bus/usb/serial/pl2303.c:164 -#: grub-core/term/efi/serial.c:116 grub-core/term/ieee1275/escc.c:175 -#: grub-core/term/ns8250.c:208 grub-core/term/serial.c:227 -#: grub-core/term/serial.c:243 -msgid "unsupported serial port parity" -msgstr "nieobsÅ‚ugiwany tryb parzystoÅ›ci portu szeregowego" - -#: grub-core/bus/usb/serial/ftdi.c:157 grub-core/bus/usb/serial/pl2303.c:170 -#: grub-core/term/efi/serial.c:122 grub-core/term/ieee1275/escc.c:181 -#: grub-core/term/ns8250.c:213 grub-core/term/serial.c:267 -msgid "unsupported serial port stop bits number" -msgstr "nieobsÅ‚ugiwana liczba bitów stopu portu szeregowego" - -#: grub-core/bus/usb/serial/ftdi.c:161 grub-core/bus/usb/serial/pl2303.c:174 -#: grub-core/term/efi/serial.c:126 grub-core/term/ieee1275/escc.c:185 -#: grub-core/term/ns8250.c:217 -msgid "unsupported serial port word length" -msgstr "nieobsÅ‚ugiwana dÅ‚ugość sÅ‚owa portu szeregowego" - -#: grub-core/commands/acpi.c:42 -msgid "Don't load host tables specified by comma-separated list." -msgstr "" -"Bez wczytywania tablic komputera podanych przez listÄ™ tablic oddzielonych " -"przecinkami." - -#: grub-core/commands/acpi.c:45 -msgid "Load only tables specified by comma-separated list." -msgstr "" -"Wczytuje tylko tablice podane przez listÄ™ tablic oddzielonych przecinkami." - -#: grub-core/commands/acpi.c:46 -msgid "Export version 1 tables to the OS." -msgstr "Eksportuje tablice w wersji 1 do OS." - -#: grub-core/commands/acpi.c:47 -msgid "Export version 2 and version 3 tables to the OS." -msgstr "Eksportuje tablic w wersjach 2 i 3 do OS." - -#: grub-core/commands/acpi.c:48 -msgid "Set OEMID of RSDP, XSDT and RSDT." -msgstr "Ustawia OEMID z RSDP, XSDT i RSDT." - -#: grub-core/commands/acpi.c:50 -msgid "Set OEMTABLE ID of RSDP, XSDT and RSDT." -msgstr "Ustawia identyfikator OEMTABLE z RSDP, XSDT i RSDT." - -#: grub-core/commands/acpi.c:52 -msgid "Set OEMTABLE revision of RSDP, XSDT and RSDT." -msgstr "Ustawia wersjÄ™ OEMTABLE z RSDP, XSDT i RSDT." - -#: grub-core/commands/acpi.c:54 -msgid "Set creator field of RSDP, XSDT and RSDT." -msgstr "Ustawia pole twórcy z RSDP, XSDT i RSDT." - -#: grub-core/commands/acpi.c:56 -msgid "Set creator revision of RSDP, XSDT and RSDT." -msgstr "Ustawia wersjÄ™ twórcy z RSDP, XSDT i RSDT." - -#. TRANSLATORS: "hangs" here is a noun, not a verb. -#: grub-core/commands/acpi.c:58 -msgid "" -"Don't update EBDA. May fix failures or hangs on some BIOSes but makes it " -"ineffective with OS not receiving RSDP from GRUB." -msgstr "" -"Bez aktualizowania EBDA. Może naprawić niektóre błędy lub awarie w " -"niektórych BIOS-ach, ale jest bezużyteczne w systemach operacyjnych nie " -"pobierajÄ…cych RSDP z programu GRUB." - -#: grub-core/commands/acpi.c:650 grub-core/commands/acpi.c:667 -#: grub-core/commands/i386/pc/play.c:105 grub-core/commands/keylayouts.c:230 -#: grub-core/commands/keylayouts.c:245 grub-core/commands/keylayouts.c:263 -#: grub-core/commands/verifiers.c:156 grub-core/efiemu/loadcore.c:350 -#: grub-core/kern/elf.c:117 grub-core/kern/elfXX.c:29 -#: grub-core/kern/elfXX.c:156 grub-core/loader/arm/linux.c:319 -#: grub-core/loader/arm64/linux.c:330 grub-core/loader/arm64/xen_boot.c:356 -#: grub-core/loader/efi/chainloader.c:276 -#: grub-core/loader/efi/chainloader.c:297 -#: grub-core/loader/efi/chainloader.c:329 grub-core/loader/efi/fdt.c:138 -#: grub-core/loader/i386/bsd.c:1276 grub-core/loader/i386/bsd.c:2116 -#: grub-core/loader/i386/bsdXX.c:20 grub-core/loader/i386/bsdXX.c:36 -#: grub-core/loader/i386/bsdXX.c:63 grub-core/loader/i386/bsdXX.c:357 -#: grub-core/loader/i386/bsdXX.c:376 grub-core/loader/i386/bsdXX.c:519 -#: grub-core/loader/i386/bsdXX.c:535 grub-core/loader/i386/bsdXX.c:615 -#: grub-core/loader/i386/bsdXX.c:638 -#: grub-core/loader/i386/coreboot/chainloader.c:112 -#: grub-core/loader/i386/coreboot/chainloader.c:148 -#: grub-core/loader/i386/coreboot/chainloader.c:170 -#: grub-core/loader/i386/linux.c:667 grub-core/loader/i386/linux.c:788 -#: grub-core/loader/i386/linux.c:1005 grub-core/loader/i386/multiboot_mbi.c:171 -#: grub-core/loader/i386/pc/chainloader.c:202 -#: grub-core/loader/i386/pc/linux.c:149 grub-core/loader/i386/pc/linux.c:320 -#: grub-core/loader/i386/pc/linux.c:362 grub-core/loader/i386/pc/plan9.c:457 -#: grub-core/loader/i386/pc/plan9.c:550 grub-core/loader/i386/pc/plan9.c:566 -#: grub-core/loader/i386/xen.c:934 grub-core/loader/i386/xen_file.c:72 -#: grub-core/loader/i386/xen_fileXX.c:43 grub-core/loader/i386/xen_fileXX.c:186 -#: grub-core/loader/i386/xen_fileXX.c:339 grub-core/loader/ia64/efi/linux.c:423 -#: grub-core/loader/ia64/efi/linux.c:471 grub-core/loader/linux.c:286 -#: grub-core/loader/macho.c:84 grub-core/loader/macho.c:109 -#: grub-core/loader/machoXX.c:33 grub-core/loader/machoXX.c:46 -#: grub-core/loader/machoXX.c:76 grub-core/loader/machoXX.c:116 -#: grub-core/loader/machoXX.c:131 grub-core/loader/machoXX.c:147 -#: grub-core/loader/machoXX.c:196 grub-core/loader/machoXX.c:317 -#: grub-core/loader/multiboot.c:434 grub-core/loader/multiboot_elfxx.c:171 -#: grub-core/loader/multiboot_elfxx.c:234 -#: grub-core/loader/multiboot_elfxx.c:278 grub-core/loader/multiboot_mbi2.c:129 -#: grub-core/loader/xnu.c:737 grub-core/loader/xnu.c:795 -#: grub-core/loader/xnu.c:816 grub-core/loader/xnu.c:871 -#: grub-core/loader/xnu.c:914 grub-core/loader/xnu.c:952 -#: grub-core/loader/xnu_resume.c:68 grub-core/loader/xnu_resume.c:153 -#: grub-core/loader/xnu_resume.c:165 util/grub-mkimagexx.c:2288 -#, c-format -msgid "premature end of file %s" -msgstr "przedwczesny koniec pliku %s" - -#: grub-core/commands/acpi.c:779 -msgid "" -"[-1|-2] [--exclude=TABLE1,TABLE2|--load-only=TABLE1,TABLE2] FILE1 [FILE2] " -"[...]" -msgstr "" -"[-1|-2] [--exclude=TABLICA1,TABLICA2|--load-only=TABLICA1,TABLICA2] PLIK1 " -"[PLIK2] [...]" - -#: grub-core/commands/acpi.c:782 -msgid "Load host ACPI tables and tables specified by arguments." -msgstr "Wczytuje tablice ACPI komputera i tablice podane w parametrach." - -#: grub-core/commands/acpihalt.c:368 grub-core/kern/err.c:110 -#, c-format -msgid "error: %s.\n" -msgstr "błąd: %s.\n" - -#: grub-core/commands/acpihalt.c:368 grub-core/kern/emu/misc.c:95 -#: grub-core/kern/emu/misc.c:105 grub-core/kern/emu/misc.c:134 -#: grub-core/kern/emu/mm.c:34 grub-core/kern/emu/mm.c:62 -#: grub-core/kern/mm.c:374 grub-core/lib/relocator.c:1282 -#: grub-core/lib/relocator.c:1439 grub-core/lib/relocator.c:1538 -#: grub-core/loader/arm/linux.c:259 grub-core/loader/arm64/linux.c:265 -#: grub-core/loader/arm64/linux.c:321 grub-core/loader/arm64/linux.c:340 -#: grub-core/loader/arm64/xen_boot.c:344 grub-core/loader/arm64/xen_boot.c:367 -#: grub-core/loader/efi/chainloader.c:289 grub-core/osdep/unix/dl.c:48 -#: grub-core/osdep/windows/dl.c:46 grub-core/script/lexer.c:156 -#: grub-core/script/lexer.c:182 -msgid "out of memory" -msgstr "brak pamiÄ™ci" - -#: grub-core/commands/acpihalt.c:374 grub-core/disk/cryptodisk.c:587 -#: grub-core/disk/cryptodisk.c:632 grub-core/kern/emu/hostdisk.c:307 -#: grub-core/kern/emu/hostfs.c:149 grub-core/kern/emu/misc.c:200 -#: grub-core/osdep/linux/ofpath.c:195 grub-core/osdep/linux/ofpath.c:521 -#: grub-core/osdep/linux/ofpath.c:534 util/glue-efi.c:80 util/glue-efi.c:94 -#: util/grub-editenv.c:155 util/grub-fstest.c:577 -#: util/grub-install-common.c:943 util/grub-mkrescue.c:634 -#: util/grub-mkrescue.c:888 util/grub-mount.c:506 util/grub-render-label.c:176 -#: util/misc.c:95 util/setup.c:814 util/setup.c:833 -#, c-format -msgid "cannot read `%s': %s" -msgstr "nie można odczytać \"%s\": %s" - -#. TRANSLATORS: It's computer shutdown using ACPI, not disabling ACPI. -#: grub-core/commands/acpihalt.c:452 -msgid "ACPI shutdown failed" -msgstr "Wyłączenie przez ACPI nie powiodÅ‚o siÄ™" - -#: grub-core/commands/arc/lsdev.c:51 -msgid "List devices." -msgstr "WyÅ›wietla listÄ™ urzÄ…dzeÅ„." - -#: grub-core/commands/blocklist.c:122 grub-core/commands/cat.c:57 -#: grub-core/commands/configfile.c:35 grub-core/commands/efi/loadbios.c:168 -#: grub-core/commands/file.c:159 grub-core/commands/hexdump.c:47 -#: grub-core/commands/legacycfg.c:209 grub-core/commands/legacycfg.c:315 -#: grub-core/commands/minicmd.c:44 grub-core/commands/syslinuxcfg.c:146 -#: grub-core/commands/testload.c:58 grub-core/commands/testspeed.c:52 -#: grub-core/disk/loopback.c:93 grub-core/efiemu/main.c:293 -#: grub-core/font/font_cmd.c:32 grub-core/kern/emu/hostdisk.c:519 -#: grub-core/loader/arm/linux.c:364 grub-core/loader/arm/linux.c:409 -#: grub-core/loader/arm/linux.c:472 grub-core/loader/arm64/linux.c:243 -#: grub-core/loader/arm64/linux.c:297 grub-core/loader/arm64/xen_boot.c:398 -#: grub-core/loader/arm64/xen_boot.c:411 grub-core/loader/arm64/xen_boot.c:462 -#: grub-core/loader/efi/chainloader.c:216 grub-core/loader/i386/bsd.c:1462 -#: grub-core/loader/i386/bsd.c:1807 grub-core/loader/i386/bsd.c:2085 -#: grub-core/loader/i386/coreboot/chainloader.c:438 -#: grub-core/loader/i386/linux.c:656 grub-core/loader/i386/linux.c:1041 -#: grub-core/loader/i386/pc/chainloader.c:290 -#: grub-core/loader/i386/pc/freedos.c:105 grub-core/loader/i386/pc/linux.c:138 -#: grub-core/loader/i386/pc/linux.c:400 grub-core/loader/i386/pc/ntldr.c:85 -#: grub-core/loader/i386/pc/plan9.c:409 -#: grub-core/loader/i386/pc/pxechainloader.c:94 -#: grub-core/loader/i386/pc/truecrypt.c:96 grub-core/loader/i386/xen.c:641 -#: grub-core/loader/i386/xen.c:768 grub-core/loader/i386/xen.c:844 -#: grub-core/loader/i386/xen.c:854 grub-core/loader/i386/xnu.c:488 -#: grub-core/loader/ia64/efi/linux.c:459 grub-core/loader/ia64/efi/linux.c:539 -#: grub-core/loader/mips/linux.c:238 grub-core/loader/mips/linux.c:429 -#: grub-core/loader/multiboot.c:322 grub-core/loader/multiboot.c:374 -#: grub-core/loader/multiboot.c:384 -#: grub-core/loader/powerpc/ieee1275/linux.c:269 -#: grub-core/loader/powerpc/ieee1275/linux.c:341 -#: grub-core/loader/sparc64/ieee1275/linux.c:305 -#: grub-core/loader/sparc64/ieee1275/linux.c:381 grub-core/loader/xnu.c:351 -#: grub-core/loader/xnu.c:460 grub-core/loader/xnu.c:778 -#: grub-core/loader/xnu.c:892 grub-core/loader/xnu.c:1277 -#: grub-core/loader/xnu.c:1427 grub-core/loader/xnu.c:1453 -#: grub-core/video/readers/jpeg.c:812 grub-core/video/readers/png.c:1123 -msgid "filename expected" -msgstr "oczekiwano nazwy pliku" - -#. TRANSLATORS: "embed" is a verb (command description). " -#: grub-core/commands/blocklist.c:154 grub-core/commands/cat.c:163 -#: grub-core/commands/configfile.c:65 grub-core/commands/configfile.c:68 -#: grub-core/commands/configfile.c:74 grub-core/commands/configfile.c:80 -#: grub-core/commands/configfile.c:86 grub-core/commands/hashsum.c:34 -#: grub-core/commands/legacycfg.c:834 grub-core/commands/legacycfg.c:841 -#: grub-core/commands/legacycfg.c:846 grub-core/commands/legacycfg.c:851 -#: grub-core/commands/macbless.c:222 grub-core/commands/minicmd.c:198 -#: grub-core/commands/syslinuxcfg.c:186 grub-core/commands/syslinuxcfg.c:194 -#: grub-core/commands/syslinuxcfg.c:200 grub-core/commands/syslinuxcfg.c:206 -#: grub-core/commands/testload.c:163 grub-core/efiemu/main.c:312 -#: grub-core/kern/emu/main.c:100 grub-core/kern/emu/main.c:103 -#: grub-core/loader/i386/bsd.c:2137 grub-core/loader/i386/bsd.c:2140 -#: grub-core/loader/i386/bsd.c:2143 -#: grub-core/loader/i386/coreboot/chainloader.c:505 -#: grub-core/loader/ia64/efi/linux.c:594 include/grub/util/install.h:32 -#: include/grub/util/install.h:64 util/grub-glue-efi.c:52 -#: util/grub-glue-efi.c:54 util/grub-glue-efi.c:56 util/grub-install.c:254 -#: util/grub-install.c:301 util/grub-mkfont.c:936 util/grub-mkimage.c:68 -#: util/grub-mkimage.c:74 util/grub-mkimage.c:76 util/grub-mkimage.c:78 -#: util/grub-mkimage.c:81 util/grub-mklayout.c:52 util/grub-mklayout.c:54 -#: util/grub-mkrescue.c:97 util/grub-mkrescue.c:101 util/grub-mkrescue.c:104 -#: util/grub-mkrescue.c:105 util/grub-mkrescue.c:106 -#: util/grub-mkstandalone.c:47 util/grub-mkstandalone.c:49 -#: util/grub-probe.c:732 util/grub-render-label.c:59 -#: util/grub-render-label.c:70 util/grub-render-label.c:72 util/grub-setup.c:78 -#: util/grub-setup.c:80 util/grub-setup.c:84 util/grub-syslinux2cfg.c:74 -#: util/grub-syslinux2cfg.c:147 -msgid "FILE" -msgstr "PLIK" - -#: grub-core/commands/blocklist.c:154 -msgid "Print a block list." -msgstr "WyÅ›wietla listÄ™ bloków." - -#: grub-core/commands/boot.c:147 grub-core/commands/legacycfg.c:533 -#: grub-core/commands/legacycfg.c:574 grub-core/loader/arm64/linux.c:250 -#: grub-core/loader/i386/bsd.c:1799 grub-core/loader/i386/bsd.c:1900 -#: grub-core/loader/i386/bsd.c:2007 grub-core/loader/i386/bsd.c:2040 -#: grub-core/loader/i386/bsd.c:2089 grub-core/loader/i386/linux.c:1047 -#: grub-core/loader/i386/pc/linux.c:406 grub-core/loader/i386/xen.c:775 -#: grub-core/loader/i386/xen.c:859 grub-core/loader/ia64/efi/linux.c:545 -#: grub-core/loader/mips/linux.c:432 grub-core/loader/multiboot.c:388 -#: grub-core/loader/powerpc/ieee1275/linux.c:347 -#: grub-core/loader/sparc64/ieee1275/linux.c:387 grub-core/loader/xnu.c:572 -#: grub-core/loader/xnu.c:665 grub-core/loader/xnu.c:781 -#: grub-core/loader/xnu.c:895 grub-core/loader/xnu.c:1091 -#: grub-core/loader/xnu.c:1258 grub-core/loader/xnu.c:1289 -#: grub-core/loader/xnu.c:1430 -msgid "you need to load the kernel first" -msgstr "najpierw należy wczytać jÄ…dro" - -#: grub-core/commands/boot.c:189 -msgid "Boot an operating system." -msgstr "Uruchamia system operacyjny." - -#: grub-core/commands/boottime.c:36 -#: grub-core/commands/i386/coreboot/cb_timestamps.c:108 -msgid "No boot time statistics is available\n" -msgstr "Brak dostÄ™pnych statystyk czasu rozruchu\n" - -#: grub-core/commands/boottime.c:59 -msgid "Show boot time statistics." -msgstr "Pokazuje statystyki czasu rozruchu." - -#: grub-core/commands/cacheinfo.c:40 -#, c-format -msgid "Disk cache statistics: hits = %lu (%lu.%02lu%%), misses = %lu\n" -msgstr "" -"Statystyki bufora dysku: trafienia = %lu (%lu.%02lu%%), chybienia = %lu\n" - -#: grub-core/commands/cacheinfo.c:45 -msgid "No disk cache statistics available\n" -msgstr "Brak dostÄ™pnych statystyk bufora dysku\n" - -#: grub-core/commands/cacheinfo.c:56 -msgid "Get disk cache info." -msgstr "Pobiera informacje o buforze dysku." - -#: grub-core/commands/cat.c:33 -msgid "Accept DOS-style CR/NL line endings." -msgstr "Akceptuje znaki koÅ„ca wiersza CR/NL w stylu systemu DOS." - -#: grub-core/commands/cat.c:163 grub-core/commands/minicmd.c:198 -msgid "Show the contents of a file." -msgstr "WyÅ›wietla zawartość pliku." - -#: grub-core/commands/cmp.c:43 grub-core/commands/i386/pc/drivemap.c:239 -#: grub-core/commands/i386/wrmsr.c:60 grub-core/commands/iorw.c:85 -#: grub-core/commands/memrw.c:84 grub-core/commands/password.c:75 -#: grub-core/commands/password_pbkdf2.c:94 grub-core/commands/pgp.c:826 -#: grub-core/commands/regexp.c:113 grub-core/mmap/mmap.c:517 -#: grub-core/net/dns.c:639 -msgid "two arguments expected" -msgstr "oczekiwano dwóch argumentów" - -#: grub-core/commands/cmp.c:45 -#, c-format -msgid "Compare file `%s' with `%s':\n" -msgstr "Porównuje plik \"%s\" z \"%s\":\n" - -#: grub-core/commands/cmp.c:54 -#, c-format -msgid "Files differ in size: %llu [%s], %llu [%s]\n" -msgstr "Pliki różniÄ… siÄ™ rozmiarem: %llu [%s], %llu [%s]\n" - -#: grub-core/commands/cmp.c:81 -#, c-format -msgid "Files differ at the offset %llu: 0x%x [%s], 0x%x [%s]\n" -msgstr "Pliki różniÄ… siÄ™ na pozycji %llu: 0x%x [%s], 0x%x [%s]\n" - -#. TRANSLATORS: it's always exactly 2 files. -#: grub-core/commands/cmp.c:93 -msgid "The files are identical.\n" -msgstr "Pliki sÄ… identyczne.\n" - -#: grub-core/commands/cmp.c:113 -msgid "FILE1 FILE2" -msgstr "PLIK1 PLIK2" - -#: grub-core/commands/cmp.c:113 -msgid "Compare two files." -msgstr "Porównuje dwa pliki." - -#: grub-core/commands/configfile.c:65 -msgid "Load another config file." -msgstr "Wczytuje inny plik konfiguracji." - -#: grub-core/commands/configfile.c:69 grub-core/commands/configfile.c:87 -msgid "Load another config file without changing context." -msgstr "Wczytuje inny plik konfiguracji bez zmieniania kontekstu." - -#: grub-core/commands/configfile.c:75 -msgid "" -"Load another config file without changing context but take only menu entries." -msgstr "" -"Wczytuje inny plik konfiguracji bez zmieniania kontekstu, ale przyjmuje " -"tylko wpisy menu." - -#: grub-core/commands/configfile.c:81 -msgid "Load another config file but take only menu entries." -msgstr "Wczytuje inny plik konfiguracji, ale przyjmuje tylko wpisy menu." - -#: grub-core/commands/date.c:141 -msgid "[[year-]month-day] [hour:minute[:second]]" -msgstr "[[rok-]miesiÄ…c-dzieÅ„] [godzina:minuta[:sekunda]]" - -#: grub-core/commands/date.c:142 -msgid "Display/set current datetime." -msgstr "WyÅ›wietla/ustawia bieżącÄ… datÄ™ i czas." - -#: grub-core/commands/echo.c:30 -msgid "Do not output the trailing newline." -msgstr "Bez wyÅ›wietlania koÅ„cowych znaków nowych wierszy." - -#: grub-core/commands/echo.c:31 -msgid "Enable interpretation of backslash escapes." -msgstr "Włącza interpretowanie sekwencji sterujÄ…cych lewego ukoÅ›nika." - -#: grub-core/commands/echo.c:134 -msgid "[-e|-n] STRING" -msgstr "[-e|-n] CIÄ„G" - -#: grub-core/commands/echo.c:134 -msgid "Display a line of text." -msgstr "WyÅ›wietla wiersz tekstu." - -#: grub-core/commands/efi/efifwsetup.c:82 -msgid "Reboot into firmware setup menu." -msgstr "PrzeÅ‚adowuje do menu konfiguracji firmware." - -#: grub-core/commands/efi/fixvideo.c:107 -msgid "Fix video problem." -msgstr "Naprawia problem obrazu." - -#: grub-core/commands/efi/loadbios.c:52 -msgid "ROM image is present." -msgstr "Obraz ROM jest dostÄ™pny." - -#: grub-core/commands/efi/loadbios.c:70 -msgid "Can't enable ROM area." -msgstr "Nie można włączyć obszaru ROM." - -#: grub-core/commands/efi/loadbios.c:209 -msgid "" -"Create BIOS-like structures for backward compatibility with existing OS." -msgstr "" -"Tworzy struktury BIOS-owe dla wstecznej kompatybilnoÅ›ci z istniejÄ…cym OS." - -#: grub-core/commands/efi/loadbios.c:214 -msgid "BIOS_DUMP [INT10_DUMP]" -msgstr "ZRZUT_BIOSU [ZRZUT_INT10]" - -#: grub-core/commands/efi/loadbios.c:215 -msgid "Load BIOS dump." -msgstr "Wczytuje zrzut BIOS-u." - -#: grub-core/commands/efi/shim_lock.c:76 -#, c-format -msgid "module cannot be loaded in UEFI secure boot mode: %s" -msgstr "moduÅ‚ nie może być zaÅ‚adowany w trybie bezpiecznego rozruchu UEFI: %s" - -#: grub-core/commands/efi/shim_lock.c:98 -#, c-format -msgid "cannot boot due to dangerous module in memory: %s" -msgstr "" -"nie można wykonać rozruchu z powodu niebezpiecznego moduÅ‚u w pamiÄ™ci: %s" - -#: grub-core/commands/efi/shim_lock.c:116 -msgid "bad shim signature" -msgstr "błędny podpis shim" - -#: grub-core/commands/efi/tpm.c:149 grub-core/commands/efi/tpm.c:189 -#: grub-core/commands/efi/tpm.c:256 grub-core/commands/efi/tpm.c:306 -msgid "Command failed" -msgstr "Polecenie nie powiodÅ‚o siÄ™" - -#: grub-core/commands/efi/tpm.c:151 grub-core/commands/efi/tpm.c:191 -#: grub-core/commands/efi/tpm.c:258 grub-core/commands/efi/tpm.c:308 -msgid "Invalid parameter" -msgstr "Błędny parametr" - -#: grub-core/commands/efi/tpm.c:154 grub-core/commands/efi/tpm.c:194 -#: grub-core/commands/efi/tpm.c:261 grub-core/commands/efi/tpm.c:311 -msgid "Output buffer too small" -msgstr "Bufor wyjÅ›ciowy zbyt maÅ‚y" - -#: grub-core/commands/efi/tpm.c:156 grub-core/commands/efi/tpm.c:196 -#: grub-core/commands/efi/tpm.c:263 grub-core/commands/efi/tpm.c:313 -msgid "TPM unavailable" -msgstr "TPM niedostÄ™pny" - -#: grub-core/commands/efi/tpm.c:158 grub-core/commands/efi/tpm.c:198 -#: grub-core/commands/efi/tpm.c:265 grub-core/commands/efi/tpm.c:315 -msgid "Unknown TPM error" -msgstr "Nieznany błąd TPM" - -#: grub-core/commands/efi/tpm.c:240 grub-core/commands/efi/tpm.c:288 -msgid "cannot allocate TPM event buffer" -msgstr "nie można przydzielić bufora zdarzeÅ„ TPM" - -#: grub-core/commands/eval.c:63 -msgid "STRING ..." -msgstr "ÅAŃCUCH ..." - -#: grub-core/commands/eval.c:64 -msgid "Evaluate arguments as GRUB commands" -msgstr "Wykonuje argumenty jako poleceÅ„ GRUB-a" - -#: grub-core/commands/file.c:41 -msgid "Check if FILE can be booted as i386 PAE Xen unprivileged guest kernel" -msgstr "" -"Sprawdza, czy PLIK może być uruchomiony jako nieuprzywilejowane jÄ…dro goÅ›cia " -"Xen i386 PAE" - -#: grub-core/commands/file.c:44 -msgid "Check if FILE can be booted as x86_64 Xen unprivileged guest kernel" -msgstr "" -"Srawdza, czy PLIK może być uruchomiony jako nieuprzywilejowane jÄ…dro goÅ›cia " -"Xen x86_64" - -#: grub-core/commands/file.c:46 -msgid "Check if FILE can be used as Xen x86 privileged guest kernel" -msgstr "" -"Sprawdza, czy PLIK może być użyty jako uprzywilejowane jÄ…dro goÅ›cia Xen x86" - -#: grub-core/commands/file.c:48 -msgid "Check if FILE can be used as x86 multiboot kernel" -msgstr "Sprawdza, czy PLIK może być użyty jako jÄ…dro multiboot x86" - -#: grub-core/commands/file.c:50 -msgid "Check if FILE can be used as x86 multiboot2 kernel" -msgstr "Sprawdza, czy PLIK może być użyty jako jÄ…dro multiboot2 x86" - -#: grub-core/commands/file.c:52 -msgid "Check if FILE is ARM Linux" -msgstr "Sprawdza, czy PLIK jest Linuksem na ARM" - -#: grub-core/commands/file.c:54 -msgid "Check if FILE is ARM64 Linux" -msgstr "Sprawdza, czy PLIK jest Linuksem na ARM64" - -#: grub-core/commands/file.c:56 -msgid "Check if FILE is IA64 Linux" -msgstr "Sprawdza, czy PLIK jest Linuksem na IA64" - -#: grub-core/commands/file.c:58 -msgid "Check if FILE is MIPS Linux" -msgstr "Sprawdza, czy PLIK jest Linuksem na MIPS" - -#: grub-core/commands/file.c:60 -msgid "Check if FILE is MIPSEL Linux" -msgstr "Sprawdza, czy PLIK jest Linuksem na MIPSEL" - -#: grub-core/commands/file.c:62 -msgid "Check if FILE is SPARC64 Linux" -msgstr "Sprawdza, czy PLIK jest Linuksem na SPARC64" - -#: grub-core/commands/file.c:64 -msgid "Check if FILE is POWERPC Linux" -msgstr "Sprawdza, czy PLIK jest Linuksem na POWERPC" - -#: grub-core/commands/file.c:66 -msgid "Check if FILE is x86 Linux" -msgstr "Sprawdza, czy PLIK jest Linuksem na x86" - -#: grub-core/commands/file.c:68 -msgid "Check if FILE is x86 Linux supporting 32-bit protocol" -msgstr "" -"Sprawdza, czy PLIK jest Linuksem na x86 z obsÅ‚ugÄ… protokoÅ‚u 32-bitowego" - -#: grub-core/commands/file.c:70 -msgid "Check if FILE is x86 kFreeBSD" -msgstr "Sprawdza, czy PLIK jest kFreeBSD na x86" - -#: grub-core/commands/file.c:72 -msgid "Check if FILE is i386 kFreeBSD" -msgstr "Sprawdza, czy PLIK jest kFreeBSD na i386" - -#: grub-core/commands/file.c:74 -msgid "Check if FILE is x86_64 kFreeBSD" -msgstr "Sprawdza, czy PLIK jest kFreeBSD na x86_64" - -#: grub-core/commands/file.c:77 -msgid "Check if FILE is x86 kNetBSD" -msgstr "Sprawdza, czy PLIK jest kNetBSD na x86" - -#: grub-core/commands/file.c:79 -msgid "Check if FILE is i386 kNetBSD" -msgstr "Sprawdza, czy PLIK jest kNetBSD na i386" - -#: grub-core/commands/file.c:81 -msgid "Check if FILE is x86_64 kNetBSD" -msgstr "Sprawdza, czy PLIK jest kNetBSD na x86_64" - -#: grub-core/commands/file.c:84 -msgid "Check if FILE is i386 EFI file" -msgstr "Sprawdza, czy PLIK jest plikiem EFI i386" - -#: grub-core/commands/file.c:86 -msgid "Check if FILE is x86_64 EFI file" -msgstr "Sprawdza, czy PLIK jest plikiem EFI x86_64" - -#: grub-core/commands/file.c:88 -msgid "Check if FILE is IA64 EFI file" -msgstr "Sprawdza, czy PLIK jest plikiem EFI IA64" - -#: grub-core/commands/file.c:90 -msgid "Check if FILE is ARM64 EFI file" -msgstr "Sprawdza, czy PLIK jest plikiem EFI ARM64" - -#: grub-core/commands/file.c:92 -msgid "Check if FILE is ARM EFI file" -msgstr "Sprawdza, czy PLIK jest plikiem EFI ARM" - -#: grub-core/commands/file.c:94 -msgid "Check if FILE is RISC-V 32bit EFI file" -msgstr "Sprawdza, czy PLIK jest 32-bitowym plikiem EFI RISC-V" - -#: grub-core/commands/file.c:96 -msgid "Check if FILE is RISC-V 64bit EFI file" -msgstr "Sprawdza, czy PLIK jest 64-bitowym plikiem EFI RISC-V" - -#: grub-core/commands/file.c:98 -msgid "Check if FILE is hiberfil.sys in hibernated state" -msgstr "Sprawdza, czy PLIK to hiberfil.sys w stanie hibernacji" - -#: grub-core/commands/file.c:100 -msgid "Check if FILE is x86_64 XNU (Mac OS X kernel)" -msgstr "Sprawdza, czy PLIK to XNU (jÄ…dro Mac OS X) x86_64" - -#: grub-core/commands/file.c:102 -msgid "Check if FILE is i386 XNU (Mac OS X kernel)" -msgstr "Sprawdza, czy PLIK to XNU (jÄ…dro Mac OS X) i386" - -#: grub-core/commands/file.c:104 -msgid "Check if FILE is XNU (Mac OS X kernel) hibernated image" -msgstr "Sprawdza, czy PLIK to obraz zahibernowanego XNU (jÄ…dra Mac OS X)" - -#: grub-core/commands/file.c:106 -msgid "Check if FILE is BIOS bootsector" -msgstr "Sprawdza, czy PLIK to rekord rozruchowy BIOS" - -#. TRANSLATORS: it's a standalone boolean value, -#. opposite of "true". -#: grub-core/commands/file.c:675 grub-core/commands/i386/cmostest.c:63 -#: grub-core/commands/i386/cpuid.c:71 grub-core/commands/keystatus.c:83 -#: grub-core/commands/keystatus.c:87 grub-core/commands/keystatus.c:96 -#: grub-core/commands/test.c:436 grub-core/commands/true.c:39 -#: grub-core/script/execute.c:247 grub-core/script/execute.c:1039 -msgid "false" -msgstr "faÅ‚sz" - -#: grub-core/commands/file.c:684 -msgid "OPTIONS FILE" -msgstr "OPCJE PLIK" - -#: grub-core/commands/file.c:685 -msgid "Check if FILE is of specified type." -msgstr "Sprawdza, czy PLIK jest okreÅ›lonego typu." - -#. TRANSLATORS: It means that the specified partition e.g. -#. hd0,msdos1=/dev/sda1 doesn't exist. -#: grub-core/commands/gptsync.c:140 grub-core/kern/disk.c:258 -msgid "no such partition" -msgstr "partycja nie istnieje" - -#: grub-core/commands/gptsync.c:240 -#, c-format -msgid "New MBR is written to `%s'\n" -msgstr "Zapisano nowy MBR do \"%s\"\n" - -#: grub-core/commands/gptsync.c:252 -msgid "DEVICE [PARTITION[+/-[TYPE]]] ..." -msgstr "URZÄ„DZENIE [PARTYCJA[+/-[TYP]]]..." - -#. TRANSLATORS: MBR type is one-byte partition -#. type id. -#: grub-core/commands/gptsync.c:255 -msgid "" -"Fill hybrid MBR of GPT drive DEVICE. Specified partitions will be a part of " -"hybrid MBR. Up to 3 partitions are allowed. TYPE is an MBR type. + means " -"that partition is active. Only one partition can be active." -msgstr "" -"WypeÅ‚nia hybrydÄ™ MBR napÄ™du GPT URZÄ„DZENIA. Podane partycje bÄ™dÄ… częściÄ… " -"hybrydy MBR. Dozwolone jest do 3 partycji. TYP jest typem MBR. + oznacza, że " -"partycja jest aktywna. Tylko jedna partycja może być aktywna." - -#: grub-core/commands/halt.c:40 -msgid "" -"Halts the computer. This command does not work on all firmware " -"implementations." -msgstr "" -"Wyłącza komputer. To polecenie nie dziaÅ‚a ze wszystkimi implementacjami " -"oprogramowania sprzÄ™tu." - -#: grub-core/commands/hashsum.c:32 -msgid "Specify hash to use." -msgstr "Podaje sumÄ™ do użycia." - -#: grub-core/commands/hashsum.c:32 -msgid "HASH" -msgstr "SUMA" - -#: grub-core/commands/hashsum.c:33 -msgid "Check hashes of files with hash list FILE." -msgstr "Sprawdza skróty plików z listÄ… skrótów z PLIKU." - -#: grub-core/commands/hashsum.c:35 -msgid "Base directory for hash list." -msgstr "Podstawowy katalog dla listy sum." - -#. TRANSLATORS: platform here isn't identifier. It can be translated. -#: grub-core/commands/hashsum.c:35 grub-core/commands/ls.c:150 -#: grub-core/commands/macbless.c:226 grub-core/commands/syslinuxcfg.c:51 -#: grub-core/commands/syslinuxcfg.c:54 grub-core/kern/emu/main.c:106 -#: include/grub/util/install.h:50 include/grub/util/install.h:53 -#: include/grub/util/install.h:56 include/grub/util/install.h:59 -#: util/grub-install.c:250 util/grub-install.c:252 util/grub-install.c:297 -#: util/grub-install.c:299 util/grub-mkimage.c:64 util/grub-mkimage.c:67 -#: util/grub-mknetdir.c:46 util/grub-mknetdir.c:48 util/grub-mkrescue.c:99 -#: util/grub-setup.c:82 util/grub-syslinux2cfg.c:63 util/grub-syslinux2cfg.c:65 -#: util/grub-syslinux2cfg.c:67 util/grub-syslinux2cfg.c:71 -msgid "DIR" -msgstr "KATALOG" - -#: grub-core/commands/hashsum.c:37 -msgid "Don't stop after first error." -msgstr "Bez zatrzymywania po pierwszym błędzie." - -#: grub-core/commands/hashsum.c:38 -msgid "Uncompress file before checksumming." -msgstr "Dekompresuje plik przed sprawdzeniem sum." - -#: grub-core/commands/hashsum.c:163 -#, c-format -msgid "%s: READ ERROR\n" -msgstr "%s: BÅÄ„D ODCZYTU\n" - -#: grub-core/commands/hashsum.c:177 -#, c-format -msgid "%s: HASH MISMATCH\n" -msgstr "%s: NIEZGODNOŚĆ SKRÓTU\n" - -#: grub-core/commands/hashsum.c:188 -#, c-format -msgid "%s: OK\n" -msgstr "%s: OK\n" - -#: grub-core/commands/hashsum.c:282 -msgid "-h HASH [-c FILE [-p PREFIX]] [FILE1 [FILE2 ...]]" -msgstr "-h SKRÓT [-c PLIK [-p PRZEDROSTEK]] [PLIK1 [PLIK2...]]" - -#. TRANSLATORS: "hash checksum" is just to -#. be a bit more precise, you can treat it as -#. just "hash". -#: grub-core/commands/hashsum.c:287 grub-core/commands/hashsum.c:292 -#: grub-core/commands/hashsum.c:297 grub-core/commands/hashsum.c:302 -#: grub-core/commands/hashsum.c:307 grub-core/commands/hashsum.c:313 -msgid "Compute or check hash checksum." -msgstr "Oblicza lub sprawdza sumÄ™ kontrolnÄ…." - -#: grub-core/commands/hashsum.c:290 grub-core/commands/hashsum.c:295 -#: grub-core/commands/hashsum.c:300 grub-core/commands/hashsum.c:305 -#: grub-core/commands/hashsum.c:311 -msgid "[-c FILE [-p PREFIX]] [FILE1 [FILE2 ...]]" -msgstr "[-c PLIK [-p PRZEDROSTEK]] [PLIK1 [PLIK2...]]" - -#: grub-core/commands/hdparm.c:33 -msgid "" -"Set Advanced Power Management\n" -"(1=low, ..., 254=high, 255=off)." -msgstr "" -"Ustawia APM (Zaawansowane zarzÄ…dzanie zasilaniem)\n" -"(1=niskie, ..., 254=wysokie, 255=wyłączone)." - -#: grub-core/commands/hdparm.c:36 -msgid "Display power mode." -msgstr "WyÅ›wietla tryb zasilania." - -#: grub-core/commands/hdparm.c:37 -msgid "Freeze ATA security settings until reset." -msgstr "Zatrzymuje ustawienia bezpieczeÅ„stwa ATA do czasu przywrócenia." - -#: grub-core/commands/hdparm.c:39 -msgid "Display SMART health status." -msgstr "WyÅ›wietla stan SMART." - -#: grub-core/commands/hdparm.c:40 -msgid "" -"Set Automatic Acoustic Management\n" -"(0=off, 128=quiet, ..., 254=fast)." -msgstr "" -"Ustawia AAM (Automatyczne zarzÄ…dzanie akustykÄ…)\n" -"(0=wyłączone, 128=ciche, ..., 254=szybkie)." - -#: grub-core/commands/hdparm.c:43 -msgid "" -"Set standby timeout\n" -"(0=off, 1=5s, 2=10s, ..., 240=20m, 241=30m, ...)." -msgstr "" -"Ustawia czas oczekiwania przed przejÅ›ciem do stanu oczekiwania\n" -"(0=wyłączone, 1=5 sekund, 2=10 sekund, ..., 240=20 minut, 241=30 minut, ...)." - -#: grub-core/commands/hdparm.c:46 -msgid "Set drive to standby mode." -msgstr "Ustawia napÄ™d w trybie oczekiwania." - -#: grub-core/commands/hdparm.c:47 -msgid "Set drive to sleep mode." -msgstr "Ustawia napÄ™d w tryb uÅ›pienia." - -#: grub-core/commands/hdparm.c:48 -msgid "Print drive identity and settings." -msgstr "WyÅ›wietla tożsamość i ustawienia napÄ™du." - -#: grub-core/commands/hdparm.c:50 -msgid "Show raw contents of ATA IDENTIFY sector." -msgstr "Pokazuje surowÄ… zawartość sektora IDENTIFY ATA." - -#: grub-core/commands/hdparm.c:52 -msgid "Disable/enable SMART (0/1)." -msgstr "Wyłącza/włącza SMART (0/1)." - -#: grub-core/commands/hdparm.c:53 -msgid "Do not print messages." -msgstr "Bez wyÅ›wietlania komunikatów." - -#: grub-core/commands/hdparm.c:286 grub-core/commands/i386/rdmsr.c:68 -#: grub-core/commands/iorw.c:47 grub-core/commands/legacycfg.c:760 -#: grub-core/commands/legacycfg.c:812 grub-core/commands/macbless.c:190 -#: grub-core/commands/memrw.c:47 grub-core/commands/pgp.c:738 -#: grub-core/commands/pgp.c:792 grub-core/commands/search.c:304 -#: grub-core/commands/search_wrap.c:179 grub-core/commands/setpci.c:243 -#: grub-core/commands/sleep.c:71 grub-core/fs/zfs/zfsinfo.c:279 -#: grub-core/fs/zfs/zfsinfo.c:358 grub-core/gettext/gettext.c:492 -#: grub-core/kern/corecmd.c:65 grub-core/kern/corecmd.c:79 -#: grub-core/mmap/mmap.c:430 grub-core/net/dns.c:713 grub-core/net/dns.c:745 -#: grub-core/net/net.c:694 grub-core/net/net.c:1052 -#: grub-core/normal/context.c:194 grub-core/script/execute.c:131 -#: grub-core/term/gfxterm_background.c:136 -msgid "one argument expected" -msgstr "oczekiwano jednego argumentu" - -#: grub-core/commands/hdparm.c:440 -msgid "[OPTIONS] DISK" -msgstr "[OPCJE] DYSK" - -#: grub-core/commands/hdparm.c:441 -msgid "Get/set ATA disk parameters." -msgstr "Uzyskuje/ustawia parametry dysku ATA." - -#: grub-core/commands/help.c:132 grub-core/lib/arg.c:109 -#: grub-core/lib/gnulib/argp-help.c:1616 -msgid "Usage:" -msgstr "SkÅ‚adnia:" - -#: grub-core/commands/help.c:146 -msgid "[PATTERN ...]" -msgstr "[WZORZEC...]" - -#: grub-core/commands/help.c:147 -msgid "Show a help message." -msgstr "WyÅ›wietla komunikat pomocy." - -#: grub-core/commands/hexdump.c:31 -msgid "Skip offset bytes from the beginning of file." -msgstr "Pomija bajty wyrównania z poczÄ…tku pliku." - -#: grub-core/commands/hexdump.c:33 -msgid "Read only LENGTH bytes." -msgstr "Odczytuje tylko bajty DÅUGOÅšCI." - -#: grub-core/commands/hexdump.c:125 -msgid "[OPTIONS] FILE_OR_DEVICE" -msgstr "[OPCJE] PLIK_LUB_URZÄ„DZENIE" - -#: grub-core/commands/hexdump.c:126 -msgid "Show raw contents of a file or memory." -msgstr "Pokazuje surowÄ… zawartość pliku lub pamiÄ™ci." - -#: grub-core/commands/i386/cmosdump.c:58 -msgid "Show raw dump of the CMOS contents." -msgstr "Pokazuje surowy zrzut zawartoÅ›ci CMOS." - -#: grub-core/commands/i386/cmostest.c:108 -#: grub-core/commands/i386/cmostest.c:111 -#: grub-core/commands/i386/cmostest.c:114 -msgid "BYTE:BIT" -msgstr "BAJT:BIT" - -#: grub-core/commands/i386/cmostest.c:109 -msgid "Test bit at BYTE:BIT in CMOS." -msgstr "Sprawdza bit BAJT:BIT w CMOS-ie." - -#: grub-core/commands/i386/cmostest.c:112 -msgid "Clear bit at BYTE:BIT in CMOS." -msgstr "Zeruje bit BAJT:BIT w CMOS-ie." - -#. TRANSLATORS: A bit may be either set (1) or clear (0). -#: grub-core/commands/i386/cmostest.c:116 -msgid "Set bit at BYTE:BIT in CMOS." -msgstr "Ustawia bit BAJT:BIT w CMOS-ie." - -#: grub-core/commands/i386/coreboot/cb_timestamps.c:120 -msgid "Show coreboot boot time statistics." -msgstr "Pokazuje statystyki czasu rozruchu coreboot." - -#: grub-core/commands/i386/coreboot/cbls.c:137 -msgid "List coreboot tables." -msgstr "WyÅ›wietla listÄ™ tablic coreboot." - -#. TRANSLATORS: "(default)" at the end means that this option is used if -#. no argument is specified. -#: grub-core/commands/i386/cpuid.c:36 -msgid "Check if CPU supports 64-bit (long) mode (default)." -msgstr "Sprawdza flagÄ™ 64-bitowego trybu procesora (domyÅ›lne)." - -#: grub-core/commands/i386/cpuid.c:37 -msgid "Check if CPU supports Physical Address Extension." -msgstr "Sprawdza, czy procesor obsÅ‚uguje Physical Address Extension." - -#: grub-core/commands/i386/cpuid.c:119 -msgid "Check for CPU features." -msgstr "Sprawdza funkcje procesora." - -#. TRANSLATORS: In this file "mapping" refers to a change GRUB makes so if -#. your language doesn't have an equivalent of "mapping" you can -#. use the word like "rerouting". -#. -#: grub-core/commands/i386/pc/drivemap.c:43 -msgid "Show the current mappings." -msgstr "WyÅ›wietla bieżące mapowania." - -#: grub-core/commands/i386/pc/drivemap.c:44 -msgid "Reset all mappings to the default values." -msgstr "Przywraca wszystkie mapowania do domyÅ›lnych wartoÅ›ci." - -#: grub-core/commands/i386/pc/drivemap.c:45 -msgid "Perform both direct and reverse mappings." -msgstr "Wykonuje bezpoÅ›rednie i odwrotne mapowania." - -#: grub-core/commands/i386/pc/drivemap.c:184 -msgid "No drives have been remapped" -msgstr "Nie przemapowano żadnych dysków" - -#. TRANSLATORS: This is the header of mapping list. -#. On the left is how OS will see the disks and -#. on the right current GRUB vision. -#: grub-core/commands/i386/pc/drivemap.c:191 -msgid "OS disk #num ------> GRUB/BIOS device" -msgstr "Numer dysku OS ---> UrzÄ…dzenie GRUB-a/BIOS-u" - -#: grub-core/commands/i386/pc/drivemap.c:413 -msgid "-l | -r | [-s] grubdev osdisk." -msgstr "-l | -r | [-s] urzÄ…dzenie_gruba dysk_systemu_operacyjnego." - -#: grub-core/commands/i386/pc/drivemap.c:414 -msgid "Manage the BIOS drive mappings." -msgstr "ZarzÄ…dza mapowaniami napÄ™dów BIOS-u." - -#: grub-core/commands/i386/pc/halt.c:31 -msgid "Do not use APM to halt the computer." -msgstr "Bez używania APM do wyłączania komputera." - -#: grub-core/commands/i386/pc/halt.c:119 -msgid "Halt the system, if possible using APM." -msgstr "Wyłącza komputer, jeÅ›li to możliwe używa APM." - -#: grub-core/commands/i386/pc/lsapm.c:75 -msgid "no APM found" -msgstr "nie znaleziono APM" - -#: grub-core/commands/i386/pc/lsapm.c:77 -#, c-format -msgid "" -"Version %u.%u\n" -"32-bit CS = 0x%x, len = 0x%x, offset = 0x%x\n" -"16-bit CS = 0x%x, len = 0x%x\n" -"DS = 0x%x, len = 0x%x\n" -msgstr "" -"Wersja %u.%u\n" -"32-bitowy CS = 0x%x, dÅ‚ugość = 0x%x, offset = 0x%x\n" -"16-bitowy CS = 0x%x, dÅ‚ugość = 0x%x\n" -"DS = 0x%x, dÅ‚ugość = 0x%x\n" - -#: grub-core/commands/i386/pc/lsapm.c:86 -msgid "16-bit protected interface supported\n" -msgstr "interfejs 16-bitowego trybu chronionego jest obsÅ‚ugiwany\n" - -#: grub-core/commands/i386/pc/lsapm.c:87 -msgid "16-bit protected interface unsupported\n" -msgstr "interfejs 16-bitowego trybu chronionego nie jest obsÅ‚ugiwany\n" - -#: grub-core/commands/i386/pc/lsapm.c:89 -msgid "32-bit protected interface supported\n" -msgstr "interfejs 32-bitowego trybu chronionego jest obsÅ‚ugiwany\n" - -#: grub-core/commands/i386/pc/lsapm.c:90 -msgid "32-bit protected interface unsupported\n" -msgstr "interfejs 32-bitowego trybu chronionego nie jest obsÅ‚ugiwany\n" - -#: grub-core/commands/i386/pc/lsapm.c:92 -msgid "CPU Idle slows down processor\n" -msgstr "Stan bezczynnoÅ›ci spowalnia procesor\n" - -#: grub-core/commands/i386/pc/lsapm.c:93 -msgid "CPU Idle doesn't slow down processor\n" -msgstr "Stan bezczynnoÅ›ci nie spowalnia procesora\n" - -#: grub-core/commands/i386/pc/lsapm.c:95 -msgid "APM disabled\n" -msgstr "APM wyłączony\n" - -#: grub-core/commands/i386/pc/lsapm.c:95 -msgid "APM enabled\n" -msgstr "APM włączony\n" - -#: grub-core/commands/i386/pc/lsapm.c:97 -msgid "APM disengaged\n" -msgstr "APM odłączony\n" - -#: grub-core/commands/i386/pc/lsapm.c:97 -msgid "APM engaged\n" -msgstr "APM podłączony\n" - -#: grub-core/commands/i386/pc/lsapm.c:107 -msgid "Show APM information." -msgstr "WyÅ›wietla informacje APM." - -#. TRANSLATORS: It's musical notes, not the notes -#. you take. Play command expects arguments which can -#. be either a filename or tempo+notes. -#. This error happens if none is specified. -#: grub-core/commands/i386/pc/play.c:88 -msgid "filename or tempo and notes expected" -msgstr "oczekiwano nazwy pliku lub tempa i nut" - -#: grub-core/commands/i386/pc/play.c:113 grub-core/commands/i386/pc/play.c:144 -#, c-format -msgid "Invalid tempo in %s" -msgstr "NieprawidÅ‚owe tempo w %s" - -#: grub-core/commands/i386/pc/play.c:151 grub-core/commands/macbless.c:172 -#: grub-core/fs/archelp.c:260 grub-core/fs/bfs.c:621 grub-core/fs/bfs.c:704 -#: grub-core/fs/btrfs.c:1726 grub-core/fs/btrfs.c:1755 -#: grub-core/fs/btrfs.c:1799 grub-core/fs/btrfs.c:1882 -#: grub-core/fs/btrfs.c:1906 grub-core/fs/fshelp.c:257 grub-core/fs/jfs.c:696 -#: grub-core/fs/minix.c:426 grub-core/fs/ufs.c:544 grub-core/fs/zfs/zfs.c:2083 -#: grub-core/fs/zfs/zfs.c:2095 grub-core/fs/zfs/zfs.c:2301 -#: grub-core/net/http.c:120 -#, c-format -msgid "file `%s' not found" -msgstr "nie znaleziono pliku \"%s\"" - -#: grub-core/commands/i386/pc/play.c:162 grub-core/commands/i386/pc/play.c:171 -#: grub-core/kern/misc.c:419 grub-core/script/execute.c:138 -#: grub-core/script/execute.c:244 -msgid "unrecognized number" -msgstr "nierozpoznana liczba" - -#: grub-core/commands/i386/pc/play.c:190 -msgid "FILE | TEMPO [PITCH1 DURATION1] [PITCH2 DURATION2] ... " -msgstr "PLIK | TEMPO [TONACJA1 CZAS_TRWANIA1] [TONACJA2 CZAS_TRWANIA2]... " - -#: grub-core/commands/i386/pc/play.c:191 -msgid "Play a tune." -msgstr "Odtwarza dźwiÄ™k." - -#: grub-core/commands/i386/pc/sendkey.c:39 -msgid "set numlock mode" -msgstr "ustawia tryb NumLock" - -#: grub-core/commands/i386/pc/sendkey.c:40 -msgid "set capslock mode" -msgstr "ustawia tryb CapsLock" - -#: grub-core/commands/i386/pc/sendkey.c:41 -msgid "set scrolllock mode" -msgstr "ustawia tryb ScrollLock" - -#: grub-core/commands/i386/pc/sendkey.c:42 -msgid "set insert mode" -msgstr "ustawia tryb wstawiania" - -#: grub-core/commands/i386/pc/sendkey.c:43 -msgid "set pause mode" -msgstr "ustawia tryb pauzy" - -#: grub-core/commands/i386/pc/sendkey.c:44 -msgid "press left shift" -msgstr "wciska lewy Shift" - -#: grub-core/commands/i386/pc/sendkey.c:45 -msgid "press right shift" -msgstr "wciska prawy Shift" - -#: grub-core/commands/i386/pc/sendkey.c:46 -msgid "press SysRq" -msgstr "wciska SysRq" - -#: grub-core/commands/i386/pc/sendkey.c:47 -msgid "press NumLock key" -msgstr "wciska klawisz NumLock" - -#: grub-core/commands/i386/pc/sendkey.c:48 -msgid "press CapsLock key" -msgstr "wciska klawisz CapsLock" - -#: grub-core/commands/i386/pc/sendkey.c:49 -msgid "press ScrollLock key" -msgstr "wciska klawisz ScrollLock" - -#: grub-core/commands/i386/pc/sendkey.c:50 -msgid "press Insert key" -msgstr "wciska klawisz Insert" - -#: grub-core/commands/i386/pc/sendkey.c:51 -msgid "press left alt" -msgstr "wciska lewy Alt" - -#: grub-core/commands/i386/pc/sendkey.c:52 -msgid "press right alt" -msgstr "wciska prawy Alt" - -#: grub-core/commands/i386/pc/sendkey.c:53 -msgid "press left ctrl" -msgstr "wciska lewy Ctrl" - -#: grub-core/commands/i386/pc/sendkey.c:54 -msgid "press right ctrl" -msgstr "wciska prawy Ctrl" - -#: grub-core/commands/i386/pc/sendkey.c:55 -msgid "don't update LED state" -msgstr "pomija uaktualnienie stanu diod" - -#: grub-core/commands/i386/pc/sendkey.c:372 -msgid "[KEYSTROKE1] [KEYSTROKE2] ..." -msgstr "[KLAWISZ1] [KLAWISZ2] ..." - -#. TRANSLATORS: It can emulate multiple -#. keypresses. -#: grub-core/commands/i386/pc/sendkey.c:375 -msgid "Emulate a keystroke sequence" -msgstr "Emuluje sekwencjÄ™ klawiszy" - -#: grub-core/commands/i386/rdmsr.c:37 grub-core/commands/iorw.c:34 -#: grub-core/commands/memrw.c:33 grub-core/commands/setpci.c:73 -msgid "Save read value into variable VARNAME." -msgstr "Zapisuje odczytanÄ… wartość do zmiennej NAZWA_ZMIENNEJ." - -#: grub-core/commands/i386/rdmsr.c:38 grub-core/commands/iorw.c:35 -#: grub-core/commands/memrw.c:34 grub-core/commands/probe.c:40 -#: grub-core/commands/search_wrap.c:40 grub-core/commands/setpci.c:74 -#: grub-core/commands/tr.c:32 -msgid "VARNAME" -msgstr "NAZWA_ZMIENNEJ" - -#: grub-core/commands/i386/rdmsr.c:55 grub-core/commands/i386/rdmsr.c:60 -#: grub-core/commands/i386/rdmsr.c:65 grub-core/commands/i386/wrmsr.c:47 -#: grub-core/commands/i386/wrmsr.c:52 grub-core/commands/i386/wrmsr.c:57 -msgid "unsupported instruction" -msgstr "nieobsÅ‚ugiwana instrukcja" - -#: grub-core/commands/i386/rdmsr.c:77 grub-core/commands/i386/wrmsr.c:69 -#: grub-core/commands/i386/wrmsr.c:77 grub-core/net/dns.c:727 -msgid "invalid argument" -msgstr "błędny argument" - -#: grub-core/commands/i386/rdmsr.c:94 grub-core/commands/memrw.c:125 -#: grub-core/commands/memrw.c:129 grub-core/commands/memrw.c:133 -msgid "ADDR" -msgstr "ADRES" - -#: grub-core/commands/i386/rdmsr.c:95 -msgid "Read a CPU model specific register." -msgstr "Odczyt rejestru specyficznego dla modelu CPU." - -#: grub-core/commands/i386/wrmsr.c:86 -msgid "ADDR VALUE" -msgstr "ADRES WARTOŚĆ" - -#: grub-core/commands/i386/wrmsr.c:87 -msgid "Write a value to a CPU model specific register." -msgstr "Zapis wartoÅ›ci do rejestru specyficznego dla modelu CPU." - -#: grub-core/commands/ieee1275/suspend.c:34 -msgid "Run `go' to resume GRUB." -msgstr "Wpisanie \"go\" wznowi GRUB-a." - -#: grub-core/commands/ieee1275/suspend.c:45 -msgid "Return to IEEE1275 prompt." -msgstr "Wraca do znaku zachÄ™ty IEEE1275." - -#: grub-core/commands/iorw.c:123 grub-core/commands/iorw.c:127 -#: grub-core/commands/iorw.c:131 grub-core/gdb/gdb.c:79 -msgid "PORT" -msgstr "PORT" - -#: grub-core/commands/iorw.c:123 -msgid "Read 8-bit value from PORT." -msgstr "Odczytuje z PORTU wartość 8-bitowÄ…." - -#: grub-core/commands/iorw.c:127 -msgid "Read 16-bit value from PORT." -msgstr "Odczytuje z PORTU wartość 16-bitowÄ…." - -#: grub-core/commands/iorw.c:131 -msgid "Read 32-bit value from PORT." -msgstr "Odczytuje z PORTU wartość 32-bitowÄ…." - -#: grub-core/commands/iorw.c:135 grub-core/commands/iorw.c:139 -msgid "PORT VALUE [MASK]" -msgstr "PORT WARTOŚĆ [MASKA]" - -#: grub-core/commands/iorw.c:136 -msgid "Write 8-bit VALUE to PORT." -msgstr "Zapisuje WARTOŚĆ 8-bitowÄ… do PORTU." - -#: grub-core/commands/iorw.c:140 -msgid "Write 16-bit VALUE to PORT." -msgstr "Zapisuje WARTOŚĆ 16-bitowÄ… do PORTU." - -#: grub-core/commands/iorw.c:143 grub-core/commands/memrw.c:137 -#: grub-core/commands/memrw.c:141 grub-core/commands/memrw.c:145 -msgid "ADDR VALUE [MASK]" -msgstr "ADRES WARTOŚĆ [MASKA]" - -#: grub-core/commands/iorw.c:144 -msgid "Write 32-bit VALUE to PORT." -msgstr "Zapisuje WARTOŚĆ 32-bitowÄ… do PORTU." - -#: grub-core/commands/keylayouts.c:215 grub-core/commands/loadenv.c:61 -#: grub-core/commands/nativedisk.c:189 grub-core/efiemu/main.c:235 -#: grub-core/font/font.c:428 grub-core/gfxmenu/gfxmenu.c:63 -#: grub-core/kern/device.c:42 grub-core/kern/dl.c:740 -#, c-format -msgid "variable `%s' isn't set" -msgstr "zmienna \"%s\" nie jest ustawiona" - -#: grub-core/commands/keylayouts.c:301 -msgid "Load a keyboard layout." -msgstr "Wczytuje ukÅ‚ad klawiatury." - -#. TRANSLATORS: "Check" in a sense that if this key is pressed then -#. "true" is returned, otherwise "false". -#: grub-core/commands/keystatus.c:32 -msgid "Check Shift key." -msgstr "Sprawdza klawisz Shift." - -#: grub-core/commands/keystatus.c:33 -msgid "Check Control key." -msgstr "Sprawdza klawisz Ctrl." - -#: grub-core/commands/keystatus.c:34 -msgid "Check Alt key." -msgstr "Sprawdza klawisz Alt." - -#. TRANSLATORS: there are 3 modifiers. -#: grub-core/commands/keystatus.c:106 -msgid "Check key modifier status." -msgstr "Sprawdza stan klawisza modyfikacji." - -#: grub-core/commands/legacycfg.c:512 grub-core/commands/legacycfg.c:526 -#: grub-core/commands/legacycfg.c:546 grub-core/commands/legacycfg.c:559 -#: grub-core/commands/time.c:43 grub-core/script/function.c:109 -#: util/grub-file.c:100 util/grub-fstest.c:57 util/grub-mount.c:69 -#, c-format -msgid "can't find command `%s'" -msgstr "nie można odnaleźć polecenia \"%s\"" - -#: grub-core/commands/legacycfg.c:813 grub-core/normal/auth.c:225 -#: util/grub-mkpasswd-pbkdf2.c:139 -msgid "Enter password: " -msgstr "HasÅ‚o: " - -#. TRANSLATORS: "legacy config" means -#. "config as used by grub-legacy". -#: grub-core/commands/legacycfg.c:837 -msgid "Parse legacy config in same context" -msgstr "Przetwarza przestarzałą konfiguracjÄ™ w tym samym kontekÅ›cie" - -#: grub-core/commands/legacycfg.c:842 -msgid "Parse legacy config in new context" -msgstr "Przetwarza przestarzałą konfiguracjÄ™ w nowym kontekÅ›cie" - -#: grub-core/commands/legacycfg.c:847 -msgid "Parse legacy config in same context taking only menu entries" -msgstr "" -"Przetwarza przestarzałą konfiguracjÄ™ w tym samym kontekÅ›cie, przyjmujÄ…c " -"tylko wpisy menu" - -#: grub-core/commands/legacycfg.c:852 -msgid "Parse legacy config in new context taking only menu entries" -msgstr "" -"Przetwarza przestarzałą konfiguracjÄ™ w nowym kontekÅ›cie, przyjmujÄ…c tylko " -"wpisy menu" - -#: grub-core/commands/legacycfg.c:856 -msgid "[--no-mem-option] [--type=TYPE] FILE [ARG ...]" -msgstr "[--no-mem-option] [--type=TYP] PLIK [PARAMETR...]" - -#: grub-core/commands/legacycfg.c:857 -msgid "Simulate grub-legacy `kernel' command" -msgstr "Symuluje polecenie \"kernel\" programu grub-legacy" - -#: grub-core/commands/legacycfg.c:861 grub-core/commands/legacycfg.c:865 -msgid "FILE [ARG ...]" -msgstr "PIK [PARAMETR...]" - -#: grub-core/commands/legacycfg.c:862 -msgid "Simulate grub-legacy `initrd' command" -msgstr "Symuluje polecenie \"initrd\" programu grub-legacy" - -#: grub-core/commands/legacycfg.c:866 -msgid "Simulate grub-legacy `modulenounzip' command" -msgstr "Symuluje polecenie \"modulenounzip\" programu grub-legacy" - -#: grub-core/commands/legacycfg.c:870 grub-core/commands/legacycfg.c:875 -msgid "[--md5] PASSWD [FILE]" -msgstr "[--md5] HASÅO [PLIK]" - -#: grub-core/commands/legacycfg.c:871 -msgid "Simulate grub-legacy `password' command" -msgstr "Symuluje polecenie \"password\" programu grub-legacy" - -#: grub-core/commands/legacycfg.c:876 -msgid "Simulate grub-legacy `password' command in menu entry mode" -msgstr "" -"Symuluje polecenie \"password\" programu grub-legacy w trybie wpisu menu" - -#. TRANSLATORS: This option is used to override default filename -#. for loading and storing environment. -#: grub-core/commands/loadenv.c:37 -msgid "Specify filename." -msgstr "Podaje nazwÄ™ pliku." - -#: grub-core/commands/loadenv.c:39 -msgid "Skip signature-checking of the environment file." -msgstr "Pomija sprawdzanie podpisu pliku Å›rodowiska." - -#: grub-core/commands/loadenv.c:451 -msgid "[-f FILE] [-s|--skip-sig] [variable_name_to_whitelist] [...]" -msgstr "[-f PLIK] [-s|--skip-sig] [nazwa_zmiennej_do_zezwolenia] [...]" - -#: grub-core/commands/loadenv.c:452 -msgid "Load variables from environment block file." -msgstr "Wczytuje zmienne z pliku blokowego Å›rodowiska." - -#: grub-core/commands/loadenv.c:455 -msgid "[-f FILE]" -msgstr "[-f PLIK]" - -#: grub-core/commands/loadenv.c:456 -msgid "List variables from environment block file." -msgstr "WyÅ›wietla listÄ™ zmiennych z pliku blokowego Å›rodowiska." - -#: grub-core/commands/loadenv.c:460 -msgid "[-f FILE] variable_name [...]" -msgstr "[-f PLIK] nazwa_zmiennej [...]" - -#: grub-core/commands/loadenv.c:461 -msgid "Save variables to environment block file." -msgstr "Zapisuje zmienne do pliku blokowego Å›rodowiska." - -#: grub-core/commands/ls.c:40 -msgid "Show a long list with more detailed information." -msgstr "WyÅ›wietla dÅ‚ugÄ… listÄ™ z bardziej szczegółowymi informacjami." - -#: grub-core/commands/ls.c:41 -msgid "Print sizes in a human readable format." -msgstr "WyÅ›wietla rozmiary w formacie czytelnym dla czÅ‚owieka." - -#: grub-core/commands/ls.c:42 -msgid "List all files." -msgstr "WyÅ›wietla listÄ™ wszystkich plików." - -#: grub-core/commands/ls.c:73 -msgid "Network protocols:" -msgstr "ProtokoÅ‚y sieciowe:" - -#: grub-core/commands/ls.c:295 -msgid "[-l|-h|-a] [FILE ...]" -msgstr "[-l|-h|-a] [PLIK...]" - -#: grub-core/commands/ls.c:296 -msgid "List devices and files." -msgstr "WyÅ›wietla listÄ™ urzÄ…dzeÅ„ i plików." - -#: grub-core/commands/lsacpi.c:255 -msgid "Show version 1 tables only." -msgstr "WyÅ›wietla tylko tablice w wersji 1." - -#: grub-core/commands/lsacpi.c:256 -msgid "Show version 2 and version 3 tables only." -msgstr "WyÅ›wietla tylko tablice w wersjach 2 i 3." - -#: grub-core/commands/lsacpi.c:306 -msgid "Show ACPI information." -msgstr "WyÅ›wietla informacje ACPI." - -#: grub-core/commands/lsmmap.c:31 -msgid "available RAM" -msgstr "RAM dostÄ™pny" - -#: grub-core/commands/lsmmap.c:32 -msgid "reserved RAM" -msgstr "RAM zarezerwowany" - -#. TRANSLATORS: this refers to memory where ACPI tables are stored -#. and which can be used by OS once it loads ACPI tables. -#: grub-core/commands/lsmmap.c:35 -msgid "ACPI reclaimable RAM" -msgstr "RAM dostÄ™pny dla ACPI" - -#. TRANSLATORS: this refers to memory which ACPI-compliant OS -#. is required to save accross hibernations. -#: grub-core/commands/lsmmap.c:38 -msgid "ACPI non-volatile storage RAM" -msgstr "RAM na dane nieulotne ACPI" - -#: grub-core/commands/lsmmap.c:39 -msgid "faulty RAM (BadRAM)" -msgstr "wadliwy RAM (BadRAM)" - -#: grub-core/commands/lsmmap.c:40 -msgid "persistent RAM" -msgstr "trwaÅ‚y RAM" - -#: grub-core/commands/lsmmap.c:41 -msgid "persistent RAM (legacy)" -msgstr "trwaÅ‚y RAM (tradycyjny)" - -#: grub-core/commands/lsmmap.c:42 -msgid "RAM holding coreboot tables" -msgstr "RAM przechowujÄ…cy tablice coreboot" - -#: grub-core/commands/lsmmap.c:43 -msgid "RAM holding firmware code" -msgstr "RAM przechowujÄ…cy kod firmware" - -#: grub-core/commands/lsmmap.c:52 -#, c-format -msgid "base_addr = 0x%llx, length = 0x%llx, %s\n" -msgstr "adres_pocz = 0x%llx, dÅ‚ugość = 0x%llx, %s\n" - -#: grub-core/commands/lsmmap.c:55 -#, c-format -msgid "base_addr = 0x%llx, length = 0x%llx, type = 0x%x\n" -msgstr "adres_pocz = 0x%llx, dÅ‚ugość = 0x%llx, typ = 0x%x\n" - -#: grub-core/commands/lsmmap.c:79 -msgid "List memory map provided by firmware." -msgstr "" -"WyÅ›wietla listÄ™ map pamiÄ™ci dostarczanych przez oprogramowanie sprzÄ™tu." - -#: grub-core/commands/lspci.c:232 -msgid "List PCI devices." -msgstr "WyÅ›wietla listÄ™ urzÄ…dzeÅ„ PCI." - -#: grub-core/commands/macbless.c:224 -msgid "Bless FILE of HFS or HFS+ partition for intel macs." -msgstr "BÅ‚ogosÅ‚awi PLIK na partycji HFS lub HFS+ dla Maców opartych na Intelu" - -#: grub-core/commands/macbless.c:228 -msgid "Bless DIR of HFS or HFS+ partition for PPC macs." -msgstr "BÅ‚ogosÅ‚awi KATALOG na partycji HFS lub HFS+ dla Maców opartych na PPC" - -#: grub-core/commands/memrw.c:125 -msgid "Read 8-bit value from ADDR." -msgstr "Odczytuje spod ADRESU wartość 8-bitowÄ…." - -#: grub-core/commands/memrw.c:129 -msgid "Read 16-bit value from ADDR." -msgstr "Odczytuje spod ADRESU wartość 16-bitowÄ…." - -#: grub-core/commands/memrw.c:133 -msgid "Read 32-bit value from ADDR." -msgstr "Odczytuje spod ADRESU wartość 32-bitowÄ…." - -#: grub-core/commands/memrw.c:138 -msgid "Write 8-bit VALUE to ADDR." -msgstr "Zapisuje WARTOŚĆ 8-bitowÄ… pod ADRES." - -#: grub-core/commands/memrw.c:142 -msgid "Write 16-bit VALUE to ADDR." -msgstr "Zapisuje WARTOŚĆ 16-bitowÄ… pod ADRES." - -#: grub-core/commands/memrw.c:146 -msgid "Write 32-bit VALUE to ADDR." -msgstr "Zapisuje WARTOŚĆ 32-bitowÄ… pod ADRES." - -#: grub-core/commands/menuentry.c:31 -msgid "Menu entry type." -msgstr "Typ wpisu menu." - -#: grub-core/commands/menuentry.c:31 grub-core/commands/menuentry.c:38 -#: grub-core/commands/menuentry.c:39 grub-core/gettext/gettext.c:520 -#: util/grub-fstest.c:520 util/grub-install.c:291 util/grub-install.c:304 -#: util/grub-mknetdir.c:51 util/grub-mkrescue.c:109 util/grub-mkrescue.c:110 -#: util/grub-mount.c:453 util/grub-render-label.c:65 -msgid "STRING" -msgstr "CIÄ„G" - -#: grub-core/commands/menuentry.c:33 -msgid "List of users allowed to boot this entry." -msgstr "Lista użytkowników, którzy mogÄ… uruchamiać ten wpis." - -#: grub-core/commands/menuentry.c:33 -msgid "USERNAME[,USERNAME]" -msgstr "UÅ»YTKOWNIK[,UÅ»YTKOWNIK]" - -#: grub-core/commands/menuentry.c:36 -msgid "Keyboard key to quickly boot this entry." -msgstr "Klawisz do szybkiego wystartowania tego wpisu." - -#: grub-core/commands/menuentry.c:36 -msgid "KEYBOARD_KEY" -msgstr "KLAWISZ" - -#: grub-core/commands/menuentry.c:38 -msgid "Use STRING as menu entry body." -msgstr "Użycie ÅAŃCUCHA jako ciaÅ‚a wpisu menu." - -#: grub-core/commands/menuentry.c:39 -msgid "Menu entry identifier." -msgstr "Identyfikator wpisu menu." - -#. TRANSLATORS: menu entry can either be bootable by anyone or only by -#. handful of users. By default when security is active only superusers can -#. boot a given menu entry. With --unrestricted (this option) -#. anyone can boot it. -#: grub-core/commands/menuentry.c:44 -msgid "This entry can be booted by any user." -msgstr "Ta pozycja może być uruchomiona przez dowolnego użytkownika." - -#: grub-core/commands/menuentry.c:323 grub-core/commands/menuentry.c:328 -#: grub-core/tests/test_blockarg.c:46 -msgid "BLOCK" -msgstr "BLOK" - -#: grub-core/commands/menuentry.c:323 -msgid "Define a menu entry." -msgstr "OkreÅ›la wpis menu." - -#: grub-core/commands/menuentry.c:328 -msgid "Define a submenu." -msgstr "OkreÅ›la podmenu." - -#. TRANSLATORS: this is module list header. Name -#. is module name, Ref Count is a reference counter -#. (how many modules or open descriptors use it). -#. Dependencies are the other modules it uses. -#. -#: grub-core/commands/minicmd.c:162 -msgid "Name\tRef Count\tDependencies\n" -msgstr "Nazwa\tLiczba użyć\tZależnoÅ›ci\n" - -#: grub-core/commands/minicmd.c:201 -msgid "Show this message." -msgstr "WyÅ›wietla ten komunikat." - -#: grub-core/commands/minicmd.c:204 -msgid "ADDR [SIZE]" -msgstr "ADRES [ROZMIAR]" - -#: grub-core/commands/minicmd.c:204 -msgid "Show memory contents." -msgstr "WyÅ›wietla zawartość pamiÄ™ci." - -#: grub-core/commands/minicmd.c:207 grub-core/kern/corecmd.c:188 -#: util/grub-install.c:275 -msgid "MODULE" -msgstr "MODUÅ" - -#: grub-core/commands/minicmd.c:207 -msgid "Remove a module." -msgstr "Usuwa moduÅ‚." - -#: grub-core/commands/minicmd.c:210 -msgid "Show loaded modules." -msgstr "WyÅ›wietla wczytane moduÅ‚y." - -#: grub-core/commands/minicmd.c:213 -msgid "Exit from GRUB." -msgstr "KoÅ„czy dziaÅ‚anie programu GRUB." - -#: grub-core/commands/mips/loongson/lsspd.c:42 -msgid "No CS5536 found" -msgstr "Nie znaleziono CS5536" - -#: grub-core/commands/mips/loongson/lsspd.c:45 -#, c-format -msgid "CS5536 at %d:%d.%d\n" -msgstr "CS5536 pod %d:%d.%d\n" - -#. TRANSLATORS: System management bus is often used to access components like -#. RAM (info only, not data) or batteries. I/O space is where in memory -#. its ports are. -#: grub-core/commands/mips/loongson/lsspd.c:55 -#, c-format -msgid "System management bus controller I/O space is at 0x%x\n" -msgstr "PrzestrzeÅ„ we/wy kontrolera SM-bus jest pod 0x%x\n" - -#. TRANSLATORS: it's shown in a report in a way -#. like number 1: ... number 2: ... -#. -#: grub-core/commands/mips/loongson/lsspd.c:66 -#, c-format -msgid "RAM slot number %d\n" -msgstr "Slot RAM numer %d\n" - -#: grub-core/commands/mips/loongson/lsspd.c:73 -#, c-format -msgid "Written SPD bytes: %d B.\n" -msgstr "Zapisano bajty SPD: %d B.\n" - -#: grub-core/commands/mips/loongson/lsspd.c:74 -#, c-format -msgid "Total flash size: %d B.\n" -msgstr "CaÅ‚kowity rozmiar flasha: %d B.\n" - -#: grub-core/commands/mips/loongson/lsspd.c:79 -msgid "Memory type: DDR2." -msgstr "Rodzaj pamiÄ™ci: DDR2." - -#: grub-core/commands/mips/loongson/lsspd.c:83 -#, c-format -msgid "Part no: %s.\n" -msgstr "Nr części: %s.\n" - -#: grub-core/commands/mips/loongson/lsspd.c:86 -msgid "Memory type: Unknown." -msgstr "Rodzaj pamiÄ™ci: nieznany." - -#: grub-core/commands/mips/loongson/lsspd.c:97 -msgid "Print Memory information." -msgstr "WyÅ›wietla informacje o pamiÄ™ci." - -#: grub-core/commands/nativedisk.c:118 grub-core/commands/probe.c:118 -#: grub-core/commands/probe.c:124 util/grub-probe.c:450 -#, c-format -msgid "%s does not support UUIDs" -msgstr "%s nie obsÅ‚uguje UUID-ów" - -#: grub-core/commands/nativedisk.c:325 -msgid "[MODULE1 MODULE2 ...]" -msgstr "[MODUÅ1 MODUÅ2 ...]" - -#: grub-core/commands/nativedisk.c:326 -msgid "" -"Switch to native disk drivers. If no modules are specified default set (pata," -"ahci,usbms,ohci,uhci,ehci) is used" -msgstr "" -"Przełącza na natywne sterowniki dysku. JeÅ›li nie podano modułów, używany " -"jest zestaw domyÅ›lny (pata,ahci,usbms,ohci,uhci,ehci)" - -#: grub-core/commands/parttool.c:40 -msgid "" -"Perform COMMANDS on partition.\n" -"Use `parttool PARTITION help' for the list of available commands." -msgstr "" -"Wykonuje POLECENIA na partycji.\n" -"\"parttool PARTYCJA help\" wyÅ›wietli listÄ™ dostÄ™pnych poleceÅ„." - -#: grub-core/commands/parttool.c:123 -msgid "=VAL" -msgstr "=WARTOŚĆ" - -#: grub-core/commands/parttool.c:136 -#, c-format -msgid "Sorry, no parttool is available for %s\n" -msgstr "Niestety parttool nie jest dostÄ™pny dla %s\n" - -#: grub-core/commands/parttool.c:288 grub-core/lib/arg.c:285 -#: grub-core/lib/arg.c:351 -#, c-format -msgid "unknown argument `%s'" -msgstr "nieznany argument \"%s\"" - -#: grub-core/commands/parttool.c:344 -msgid "PARTITION COMMANDS" -msgstr "PARTYCJA POLECENIA" - -#: grub-core/commands/password.c:85 -msgid "USER PASSWORD" -msgstr "UÅ»YTKOWNIK HASÅO" - -#: grub-core/commands/password.c:86 -msgid "Set user password (plaintext). Unrecommended and insecure." -msgstr "" -"Ustawia hasÅ‚o użytkownika (w zwykÅ‚ym tekÅ›cie). Niezalecane i potencjalnie " -"niebezpieczne." - -#. TRANSLATORS: it means that the string which -#. was supposed to be a password hash doesn't -#. have a correct format, not to password -#. mismatch. -#: grub-core/commands/password_pbkdf2.c:98 -#: grub-core/commands/password_pbkdf2.c:115 -#: grub-core/commands/password_pbkdf2.c:123 -#: grub-core/commands/password_pbkdf2.c:150 -#: grub-core/commands/password_pbkdf2.c:179 -msgid "invalid PBKDF2 password" -msgstr "błędne hasÅ‚o PBKDF2" - -#: grub-core/commands/password_pbkdf2.c:202 -msgid "USER PBKDF2_PASSWORD" -msgstr "UÅ»YTKOWNIK HASÅO_PBKDF2" - -#: grub-core/commands/password_pbkdf2.c:203 -msgid "Set user password (PBKDF2). " -msgstr "Ustawia hasÅ‚o użytkownika (PBKDF2). " - -#: grub-core/commands/pcidump.c:39 grub-core/commands/setpci.c:69 -msgid "Select device by vendor and device IDs." -msgstr "Wybiera urzÄ…dzenie wg ID producenta i urzÄ…dzenia." - -#: grub-core/commands/pcidump.c:40 grub-core/commands/setpci.c:70 -msgid "[vendor]:[device]" -msgstr "[producent]:[urzÄ…dzenie]" - -#: grub-core/commands/pcidump.c:41 grub-core/commands/setpci.c:71 -msgid "Select device by its position on the bus." -msgstr "Wybiera urzÄ…dzenie wg poÅ‚ożenia na szynie." - -#: grub-core/commands/pcidump.c:42 grub-core/commands/setpci.c:72 -msgid "[bus]:[slot][.func]" -msgstr "[szyna]:[slot][.funkcja]" - -#: grub-core/commands/pcidump.c:109 grub-core/commands/pcidump.c:138 -#: grub-core/commands/setpci.c:183 grub-core/commands/setpci.c:214 -#: grub-core/fs/zfs/zfs.c:3794 grub-core/kern/emu/hostdisk.c:458 -#: grub-core/kern/emu/hostdisk.c:473 grub-core/kern/file.c:44 -#, c-format -msgid "missing `%c' symbol" -msgstr "brak symbolu \"%c\"" - -#: grub-core/commands/pcidump.c:168 -msgid "[-s POSITION] [-d DEVICE]" -msgstr "[-s POÅOÅ»ENIE] [-d URZÄ„DZENIE]" - -#: grub-core/commands/pcidump.c:169 -msgid "Show raw dump of the PCI configuration space." -msgstr "Pokazuje surowy zrzut przestrzeni konfiguracji PCI." - -#: grub-core/commands/pgp.c:45 -msgid "Skip signature-checking of the public key file." -msgstr "Pomija sprawdzanie podpisu pliku klucza publicznego." - -#. TRANSLATORS: it's about GNUPG signatures. -#: grub-core/commands/pgp.c:71 grub-core/commands/pgp.c:81 -#: grub-core/commands/pgp.c:86 grub-core/commands/pgp.c:96 -#: grub-core/commands/pgp.c:103 grub-core/commands/pgp.c:107 -#: grub-core/commands/pgp.c:114 grub-core/commands/pgp.c:119 -#: grub-core/commands/pgp.c:124 grub-core/commands/pgp.c:128 -#: grub-core/commands/pgp.c:268 grub-core/commands/pgp.c:276 -#: grub-core/commands/pgp.c:281 grub-core/commands/pgp.c:289 -#: grub-core/commands/pgp.c:320 grub-core/commands/pgp.c:327 -#: grub-core/commands/pgp.c:332 grub-core/commands/pgp.c:342 -#: grub-core/commands/pgp.c:468 grub-core/commands/pgp.c:471 -#: grub-core/commands/pgp.c:474 grub-core/commands/pgp.c:477 -#: grub-core/commands/pgp.c:484 grub-core/commands/pgp.c:490 -#: grub-core/commands/pgp.c:665 -msgid "bad signature" -msgstr "błędny podpis" - -#. TRANSLATORS: %08x is 32-bit key id. -#: grub-core/commands/pgp.c:636 grub-core/commands/pgp.c:812 -#, c-format -msgid "public key %08x not found" -msgstr "nie znaleziono klucza publicznego %08x" - -#: grub-core/commands/pgp.c:651 grub-core/disk/diskfilter.c:772 -#: grub-core/disk/diskfilter.c:782 grub-core/fs/ntfs.c:404 -#: grub-core/fs/zfs/zfs.c:1933 grub-core/normal/menu.c:428 -#, c-format -msgid "module `%s' isn't loaded" -msgstr "moduÅ‚ \"%s\" nie jest zaÅ‚adowany" - -#: grub-core/commands/pgp.c:994 -msgid "[-s|--skip-sig] FILE SIGNATURE_FILE [PUBKEY_FILE]" -msgstr "[-s|--skip-sig] PLIK PLIK_PODPISUU [PLIK_KLUCZA_PUBLICZNEGO]" - -#: grub-core/commands/pgp.c:995 -msgid "Verify detached signature." -msgstr "Sprawdza oddzielony podpis." - -#: grub-core/commands/pgp.c:998 -msgid "[-s|--skip-sig] PUBKEY_FILE" -msgstr "[-s|--skip-sig] PLIK_KLUCZA_PUBLICZNEGO" - -#: grub-core/commands/pgp.c:999 -msgid "Add PUBKEY_FILE to trusted keys." -msgstr "Dodaje PLIK_KP do zaufanych kluczy." - -#: grub-core/commands/pgp.c:1003 -msgid "Show the list of trusted keys." -msgstr "Wypisuje listÄ™ zaufanych kluczy." - -#: grub-core/commands/pgp.c:1005 -msgid "PUBKEY_ID" -msgstr "ID_KLUCZA_PUBLICZNEGO" - -#: grub-core/commands/pgp.c:1006 -msgid "Remove PUBKEY_ID from trusted keys." -msgstr "Usuwa ID_KP z zaufanych kluczy." - -#: grub-core/commands/probe.c:40 grub-core/commands/tr.c:32 -msgid "Set a variable to return value." -msgstr "Ustawia zmiennÄ… na wartość zwrotnÄ…." - -#. TRANSLATORS: It's a driver that is currently in use to access -#. the diven disk. -#: grub-core/commands/probe.c:43 -msgid "Determine driver." -msgstr "OkreÅ›la sterownik." - -#: grub-core/commands/probe.c:44 -msgid "Determine partition map type." -msgstr "OkreÅ›la typ mapy partycji." - -#: grub-core/commands/probe.c:45 -msgid "Determine filesystem type." -msgstr "OkreÅ›la typ systemu plików." - -#: grub-core/commands/probe.c:46 -msgid "Determine filesystem UUID." -msgstr "OkreÅ›la UUID systemu plików." - -#: grub-core/commands/probe.c:47 -msgid "Determine filesystem label." -msgstr "OkreÅ›la etykietÄ™ systemu plików." - -#: grub-core/commands/probe.c:139 grub-core/commands/probe.c:146 -#: util/grub-probe.c:462 -#, c-format -msgid "filesystem `%s' does not support labels" -msgstr "system plików \"%s\" nie obsÅ‚uguje etykiet" - -#: grub-core/commands/probe.c:165 grub-core/fs/zfs/zfsinfo.c:430 -#: grub-core/loader/i386/bsd.c:169 util/grub-setup.c:223 -msgid "DEVICE" -msgstr "URZÄ„DZENIE" - -#: grub-core/commands/probe.c:166 -msgid "Retrieve device info." -msgstr "Pobiera informacje o urzÄ…dzeniu." - -#: grub-core/commands/read.c:85 -msgid "[ENVVAR]" -msgstr "[ZMIENNA_ÅšRODOWISKOWA]" - -#: grub-core/commands/read.c:86 -msgid "Set variable with user input." -msgstr "Ustawia zmiennÄ… za pomocÄ… danych wprowadzonych przez użytkownika." - -#: grub-core/commands/reboot.c:40 -msgid "Reboot the computer." -msgstr "Ponownie uruchamia komputer." - -#. TRANSLATORS: in regexp you can mark some -#. groups with parentheses. These groups are -#. then numbered and you can save some of -#. them in variables. In other programs -#. those components aree often referenced with -#. back slash, e.g. \1. Compare -#. sed -e 's,\([a-z][a-z]*\),lowercase=\1,g' -#. The whole matching component is saved in VARNAME, not its number. -#. -#: grub-core/commands/regexp.c:44 -msgid "Store matched component NUMBER in VARNAME." -msgstr "Zapisuje NUMER dopasowanego elementu w ZMIENNEJ." - -#: grub-core/commands/regexp.c:45 -msgid "[NUMBER:]VARNAME" -msgstr "[NUMER:]NAZWA_ZMIENNEJ" - -#. TRANSLATORS: This are two arguments. So it's -#. two separate units to translate and pay -#. attention not to reverse them. -#: grub-core/commands/regexp.c:157 -msgid "REGEXP STRING" -msgstr "WYRAÅ»ENIE_REGULARNE CIÄ„G" - -#: grub-core/commands/regexp.c:158 -msgid "Test if REGEXP matches STRING." -msgstr "Testuje, czy WYRAÅ»ENIE_REGULARNE pasuje do CIÄ„GU." - -#: grub-core/commands/search.c:324 -msgid "NAME [VARIABLE] [HINTS]" -msgstr "NAZWA [ZMIENNA] [WSKAZÓWKI]" - -#: grub-core/commands/search_file.c:4 -msgid "" -"Search devices by file. If VARIABLE is specified, the first device found is " -"set to a variable." -msgstr "" -"Wyszukuje urzÄ…dzenia wedÅ‚ug pliku. JeÅ›li podano ZMIENNÄ„, pierwsze " -"odnalezione urzÄ…dzenie jest ustawiane na ZMIENNÄ„." - -#: grub-core/commands/search_label.c:4 -msgid "" -"Search devices by label. If VARIABLE is specified, the first device found is " -"set to a variable." -msgstr "" -"Wyszukuje urzÄ…dzenia wedÅ‚ug etykiety. JeÅ›li podano ZMIENNÄ„, pierwsze " -"odnalezione urzÄ…dzenie jest ustawiane na ZMIENNÄ„." - -#: grub-core/commands/search_uuid.c:4 -msgid "" -"Search devices by UUID. If VARIABLE is specified, the first device found is " -"set to a variable." -msgstr "" -"Wyszukuje urzÄ…dzenia wedÅ‚ug UUID. JeÅ›li podano ZMIENNÄ„, pierwsze odnalezione " -"urzÄ…dzenie jest ustawiane na ZMIENNÄ„." - -#: grub-core/commands/search_wrap.c:34 -msgid "Search devices by a file." -msgstr "Wyszukuje urzÄ…dzenia wedÅ‚ug pliku." - -#: grub-core/commands/search_wrap.c:35 -msgid "Search devices by a filesystem label." -msgstr "Wyszukuje urzÄ…dzenia wedÅ‚ug etykiety systemu plików." - -#: grub-core/commands/search_wrap.c:37 -msgid "Search devices by a filesystem UUID." -msgstr "Wyszukuje urzÄ…dzenia wedÅ‚ug UUID systemu plików." - -#: grub-core/commands/search_wrap.c:40 -msgid "Set a variable to the first device found." -msgstr "Ustawia zmiennÄ… na pierwsze odnalezione urzÄ…dzenie." - -#: grub-core/commands/search_wrap.c:42 -msgid "Do not probe any floppy drive." -msgstr "Bez wykrywania napÄ™du dyskietek." - -#: grub-core/commands/search_wrap.c:44 -msgid "" -"First try the device HINT. If HINT ends in comma, also try subpartitions" -msgstr "" -"Najpierw wypróbowuje WSKAZÓWKĘ urzÄ…dzenia. JeÅ›li WSKAZÓWKA koÅ„czy siÄ™ " -"przecinkiem, próbuje także podpartycje" - -#: grub-core/commands/search_wrap.c:45 grub-core/commands/search_wrap.c:49 -#: grub-core/commands/search_wrap.c:53 grub-core/commands/search_wrap.c:57 -#: grub-core/commands/search_wrap.c:61 grub-core/commands/search_wrap.c:65 -msgid "HINT" -msgstr "WSKAZÓWKA" - -#: grub-core/commands/search_wrap.c:47 -msgid "" -"First try the device HINT if currently running on IEEE1275. If HINT ends in " -"comma, also try subpartitions" -msgstr "" -"Najpierw wypróbowuje WSKAZÓWKĘ urzÄ…dzenia, jeÅ›li uruchomiono przez IEEE1275. " -"JeÅ›li WSKAZÓWKA koÅ„czy siÄ™ przecinkiem, próbuje także podpartycje" - -#: grub-core/commands/search_wrap.c:51 -msgid "" -"First try the device HINT if currently running on BIOS. If HINT ends in " -"comma, also try subpartitions" -msgstr "" -"Najpierw wypróbowuje WSKAZÓWKĘ urzÄ…dzenia, jeÅ›li uruchomiono przez BIOS. " -"JeÅ›li WSKAZÓWKA koÅ„czy siÄ™ przecinkiem, próbuje także podpartycje" - -#: grub-core/commands/search_wrap.c:55 -msgid "" -"First try the device HINT if direct hardware access is supported. If HINT " -"ends in comma, also try subpartitions" -msgstr "" -"Najpierw wypróbowuje WSKAZÓWKĘ urzÄ…dzenia, jeÅ›li obsÅ‚ugiwany jest " -"bezpoÅ›redni dostÄ™p do sprzÄ™tu. JeÅ›li WSKAZÓWKA koÅ„czy siÄ™ przecinkiem, " -"próbuje także podpartycje" - -#: grub-core/commands/search_wrap.c:59 -msgid "" -"First try the device HINT if currently running on EFI. If HINT ends in " -"comma, also try subpartitions" -msgstr "" -"Najpierw wypróbowuje WSKAZÓWKĘ urzÄ…dzenia, jeÅ›li uruchomiono przez EFI. " -"JeÅ›li WSKAZÓWKA koÅ„czy siÄ™ przecinkiem, próbuje także podpartycje" - -#: grub-core/commands/search_wrap.c:63 -msgid "" -"First try the device HINT if currently running on ARC. If HINT ends in " -"comma, also try subpartitions" -msgstr "" -"Najpierw wypróbowuje WSKAZÓWKĘ urzÄ…dzenia, jeÅ›li uruchomiono przez ARC. " -"JeÅ›li WSKAZÓWKA koÅ„czy siÄ™ przecinkiem, próbuje także podpartycje" - -#: grub-core/commands/search_wrap.c:207 -msgid "[-f|-l|-u|-s|-n] [--hint HINT [--hint HINT] ...] NAME" -msgstr "[-f|-l|-u|-s|-n] [--hint WSKAZÓWKA [--hint WSKAZÓWKA]...] NAZWA" - -#: grub-core/commands/search_wrap.c:209 -msgid "" -"Search devices by file, filesystem label or filesystem UUID. If --set is " -"specified, the first device found is set to a variable. If no variable name " -"is specified, `root' is used." -msgstr "" -"Wyszukuje urzÄ…dzenia wedÅ‚ug pliku, etykiety systemu plików lub UUID systemu " -"plików. JeÅ›li podano --set, pierwsze odnalezione urzÄ…dzenie jest ustawiane " -"na ZMIENNÄ„. JeÅ›li nie podano nazwy zmiennej, to zostanie użyta \"root\"." - -#: grub-core/commands/setpci.c:132 -#, c-format -msgid "Register %x of %x:%02x.%x is %x\n" -msgstr "Rejestr %x urzÄ…dzenia %x:%02x.%x zawiera %x\n" - -#: grub-core/commands/setpci.c:333 -msgid "[-s POSITION] [-d DEVICE] [-v VAR] REGISTER[=VALUE[:MASK]]" -msgstr "[-s POÅOÅ»ENIE] [-d URZÄ„DZENIE] [-v ZMIENNA] REJESTR[=WARTOŚĆ[:MASKA]]" - -#: grub-core/commands/setpci.c:335 -msgid "Manipulate PCI devices." -msgstr "Manipuluje urzÄ…dzeniami PCI." - -#: grub-core/commands/sleep.c:32 -msgid "Verbose countdown." -msgstr "Widoczne odliczanie." - -#: grub-core/commands/sleep.c:33 -msgid "Allow to interrupt with ESC." -msgstr "Zezwala na przerwanie za pomocÄ… klawisza Esc." - -#: grub-core/commands/sleep.c:109 -msgid "NUMBER_OF_SECONDS" -msgstr "LICZBA_SEKUND" - -#: grub-core/commands/sleep.c:110 -msgid "Wait for a specified number of seconds." -msgstr "Czeka przez podanÄ… liczbÄ™ sekund." - -#: grub-core/commands/syslinuxcfg.c:50 util/grub-syslinux2cfg.c:66 -msgid "root directory of the syslinux disk [default=/]." -msgstr "katalog główny na dysku syslinuksa [domyÅ›lnie=/]." - -#: grub-core/commands/syslinuxcfg.c:53 util/grub-syslinux2cfg.c:72 -msgid "" -"current directory of syslinux [default is parent directory of input file]." -msgstr "" -"katalog bieżący syslinuksa [domyÅ›lnie katalog nadrzÄ™dny do pliku " -"wejÅ›ciowego]." - -#: grub-core/commands/syslinuxcfg.c:55 util/grub-syslinux2cfg.c:75 -msgid "assume input is an isolinux configuration file." -msgstr "przyjÄ™cie wejÅ›cia jako pliku konfiguracyjnego isolinuksa." - -#: grub-core/commands/syslinuxcfg.c:56 util/grub-syslinux2cfg.c:76 -msgid "assume input is a pxelinux configuration file." -msgstr "przyjÄ™cie wejÅ›cia jako pliku konfiguracyjnego pxelinuksa." - -#: grub-core/commands/syslinuxcfg.c:57 util/grub-syslinux2cfg.c:77 -msgid "assume input is a syslinux configuration file." -msgstr "przyjÄ™cie wejÅ›cia jako pliku konfiguracyjnego syslinuksa." - -#. TRANSLATORS: "syslinux config" means -#. "config as used by syslinux". -#: grub-core/commands/syslinuxcfg.c:189 -msgid "Execute syslinux config in same context" -msgstr "Wykonuje konfiguracjÄ™ syslinuksa w tym samym kontekÅ›cie" - -#: grub-core/commands/syslinuxcfg.c:195 -msgid "Execute syslinux config in new context" -msgstr "Wykonuje konfiguracjÄ™ syslinuksa w nowym kontekÅ›cie" - -#: grub-core/commands/syslinuxcfg.c:201 -msgid "Execute syslinux config in same context taking only menu entries" -msgstr "" -"Wykonuje konfiguracjÄ™ syslinuksa w tym samym kontekÅ›cie, przyjmujÄ…c tylko " -"wpisy menu" - -#: grub-core/commands/syslinuxcfg.c:207 -msgid "Execute syslinux config in new context taking only menu entries" -msgstr "" -"Wykonuje konfiguracjÄ™ syslinuksa w nowym kontekÅ›cie, przyjmujÄ…c tylko wpisy " -"menu" - -#: grub-core/commands/terminal.c:90 -msgid "no terminal specified" -msgstr "nie podano terminala" - -#: grub-core/commands/terminal.c:112 grub-core/commands/terminal.c:139 -#, c-format -msgid "terminal `%s' isn't found" -msgstr "nie znaleziono terminala \"%s\"" - -#: grub-core/commands/terminal.c:244 -msgid "Active input terminals:" -msgstr "Aktywne terminale wejÅ›ciowe:" - -#: grub-core/commands/terminal.c:245 -msgid "Available input terminals:" -msgstr "DostÄ™pne terminale wejÅ›ciowe:" - -#: grub-core/commands/terminal.c:261 -msgid "Active output terminals:" -msgstr "Aktywne terminale wyjÅ›ciowe:" - -#: grub-core/commands/terminal.c:262 -msgid "Available output terminals:" -msgstr "DostÄ™pne terminale wyjÅ›ciowe:" - -#: grub-core/commands/terminal.c:271 grub-core/commands/terminal.c:276 -msgid "[--append|--remove] [TERMINAL1] [TERMINAL2] ..." -msgstr "[--append|--remove] [TERMINAL1] [TERMINAL2]..." - -#: grub-core/commands/terminal.c:273 -msgid "List or select an input terminal." -msgstr "WyÅ›wietla listÄ™ terminali wejÅ›ciowych lub wybiera jeden." - -#: grub-core/commands/terminal.c:278 -msgid "List or select an output terminal." -msgstr "WyÅ›wietla listÄ™ terminali wyjÅ›ciowych lub wybiera jeden." - -#: grub-core/commands/test.c:444 -msgid "EXPRESSION ]" -msgstr "WYRAÅ»ENIE ]" - -#: grub-core/commands/test.c:444 grub-core/commands/test.c:447 -msgid "Evaluate an expression." -msgstr "Oblicza wyrażenie." - -#: grub-core/commands/test.c:447 -msgid "EXPRESSION" -msgstr "WYRAÅ»ENIE" - -#: grub-core/commands/testload.c:164 -msgid "Load the same file in multiple ways." -msgstr "Wczytuje ten sam plik na różne sposoby." - -#: grub-core/commands/testspeed.c:35 -msgid "Specify size for each read operation" -msgstr "OkreÅ›la rozmiar dla każdej operacji odczytu" - -#: grub-core/commands/testspeed.c:58 -msgid "invalid block size" -msgstr "błędny rozmiar bloku" - -#: grub-core/commands/testspeed.c:80 -#, c-format -msgid "File size: %s\n" -msgstr "Rozmiar pliku: %s\n" - -#: grub-core/commands/testspeed.c:83 -#, c-format -msgid "Elapsed time: %d.%03d s \n" -msgstr "MinÄ…Å‚ czas: %d.%03d s \n" - -#: grub-core/commands/testspeed.c:92 -#, c-format -msgid "Speed: %s \n" -msgstr "Szybkość: %s \n" - -#: grub-core/commands/testspeed.c:107 -msgid "[-s SIZE] FILENAME" -msgstr "[-s ROZMIAR] NAZWA_PLIKU" - -#: grub-core/commands/testspeed.c:108 -msgid "Test file read speed." -msgstr "Testuje szybkość odczytu pliku." - -#: grub-core/commands/time.c:38 grub-core/script/execute.c:974 -msgid "no command is specified" -msgstr "nie podano polecenia" - -#: grub-core/commands/time.c:50 -#, c-format -msgid "Elapsed time: %d.%03d seconds \n" -msgstr "MinÄ…Å‚ czas: %d.%03d s\n" - -#: grub-core/commands/time.c:61 -msgid "COMMAND [ARGS]" -msgstr "POLECENIE [ARGUMENTY]" - -#: grub-core/commands/time.c:62 -msgid "Measure time used by COMMAND" -msgstr "Mierzenie czasu wykonania POLECENIA" - -#: grub-core/commands/tr.c:33 -msgid "Translate to upper case." -msgstr "TÅ‚umaczy na wielkie litery." - -#: grub-core/commands/tr.c:34 -msgid "Translate to lower case." -msgstr "TÅ‚umaczy na maÅ‚e litery." - -#: grub-core/commands/tr.c:119 -msgid "[OPTIONS] [SET1] [SET2] [STRING]" -msgstr "[OPCJE] [ZBIÓR1] [ZBIÓR2] [ÅAŃCUCH]" - -#: grub-core/commands/tr.c:120 -msgid "Translate SET1 characters to SET2 in STRING." -msgstr "TÅ‚umaczy znaki ZBIÓR1 na ZBIÓR2 w ÅAŃCUCHU." - -#. TRANSLATORS: it's a command description. -#: grub-core/commands/true.c:50 -msgid "Do nothing, successfully." -msgstr "Nic nie robi, pomyÅ›lnie koÅ„czÄ…c dziaÅ‚anie." - -#. TRANSLATORS: it's a command description. -#: grub-core/commands/true.c:54 -msgid "Do nothing, unsuccessfully." -msgstr "Nic nie robi, niepomyÅ›lnie koÅ„czÄ…c dziaÅ‚anie." - -#: grub-core/commands/usbtest.c:221 -msgid "Test USB support." -msgstr "Testuje obsÅ‚ugÄ™ USB." - -#: grub-core/commands/verifiers.c:120 -#, c-format -msgid "verification requested but nobody cares: %s" -msgstr "żądano weryfikacji, ale nikt o niÄ… nie zadbaÅ‚: %s" - -#: grub-core/commands/verifiers.c:140 -msgid "big file signature isn't implemented yet" -msgstr "podpis dużych plików nie jest jeszcze zaimplementowany" - -#: grub-core/commands/videoinfo.c:61 -msgid "Text-only " -msgstr "Tylko tekst" - -#. TRANSLATORS: "Direct color" is a mode when the color components -#. are written dirrectly into memory. -#: grub-core/commands/videoinfo.c:66 -#, c-format -msgid "Direct color, mask: %d/%d/%d/%d pos: %d/%d/%d/%d" -msgstr "BezpoÅ›redni kolor, maska: %d/%d/%d/%d poz: %d/%d/%d/%d" - -#. TRANSLATORS: In "paletted color" mode you write the index of the color -#. in the palette. Synonyms include "packed pixel". -#: grub-core/commands/videoinfo.c:78 -msgid "Paletted " -msgstr "Z paletÄ… " - -#: grub-core/commands/videoinfo.c:80 -msgid "YUV " -msgstr "YUV " - -#. TRANSLATORS: "Planar" is the video memory where you have to write -#. in several different banks "plans" to control the different color -#. components of the same pixel. -#: grub-core/commands/videoinfo.c:85 -msgid "Planar " -msgstr "Planowy " - -#: grub-core/commands/videoinfo.c:87 -msgid "Hercules " -msgstr "Hercules " - -#: grub-core/commands/videoinfo.c:89 -msgid "CGA " -msgstr "CGA " - -#. TRANSLATORS: Non-chain 4 is a 256-color planar -#. (unchained) video memory mode. -#: grub-core/commands/videoinfo.c:93 -msgid "Non-chain 4 " -msgstr "Nie-chain 4 " - -#: grub-core/commands/videoinfo.c:95 -msgid "Monochrome " -msgstr "Monochromatyczny " - -#: grub-core/commands/videoinfo.c:97 -msgid "Unknown video mode " -msgstr "Nieznany tryb obrazu " - -#: grub-core/commands/videoinfo.c:111 -msgid " EDID checksum invalid" -msgstr " błędna suma kontrolna EDID" - -#: grub-core/commands/videoinfo.c:116 -#, c-format -msgid " EDID version: %u.%u\n" -msgstr " Wersja EDID: %u.%u\n" - -#: grub-core/commands/videoinfo.c:120 -#, c-format -msgid " Preferred mode: %ux%u\n" -msgstr " Preferowany tryb: %ux%u\n" - -#: grub-core/commands/videoinfo.c:123 -msgid " No preferred mode available\n" -msgstr " Tryb preferowany niedostÄ™pny\n" - -#: grub-core/commands/videoinfo.c:146 grub-core/video/video.c:490 -#: grub-core/video/video.c:498 grub-core/video/video.c:509 -#: grub-core/video/video.c:520 grub-core/video/video.c:528 -#, c-format -msgid "invalid video mode specification `%s'" -msgstr "błędne okreÅ›lenie trybu graficznego \"%s\"" - -#: grub-core/commands/videoinfo.c:168 -msgid "List of supported video modes:" -msgstr "Lista obsÅ‚ugiwanych trybów graficznych:" - -#: grub-core/commands/videoinfo.c:169 -msgid "Legend: mask/position=red/green/blue/reserved" -msgstr "Legenda: maska/pozycja=czerwieÅ„/zieleÅ„/błękit/zarezerwowane" - -#: grub-core/commands/videoinfo.c:176 -#, c-format -msgid "Adapter `%s':\n" -msgstr "Karta \"%s\":\n" - -#: grub-core/commands/videoinfo.c:180 -msgid " No info available" -msgstr " Informacje niedostÄ™pne" - -#: grub-core/commands/videoinfo.c:198 -msgid " Failed to initialize video adapter" -msgstr " Nie udaÅ‚o siÄ™ zainicjować karty graficznej" - -#. TRANSLATORS: "x" has to be entered in, -#. like an identifier, so please don't -#. use better Unicode codepoints. -#: grub-core/commands/videoinfo.c:239 grub-core/commands/videoinfo.c:248 -msgid "[WxH[xD]]" -msgstr "[SZERxWYS[xGÅĘB]]" - -#: grub-core/commands/videoinfo.c:240 grub-core/commands/videoinfo.c:249 -msgid "" -"List available video modes. If resolution is given show only modes matching " -"it." -msgstr "" -"WyÅ›wietla listÄ™ dostÄ™pnych trybów obrazu. JeÅ›li podano rozdzielczość, to " -"wyÅ›wietla tylko tryby pasujÄ…ce do niej." - -#. TRANSLATORS: "x" has to be entered in, -#. like an identifier, so please don't -#. use better Unicode codepoints. -#: grub-core/commands/videotest.c:225 -msgid "[WxH]" -msgstr "[SZERxWYS]" - -#. TRANSLATORS: Here, on the other hand, it's -#. nicer to use unicode cross instead of x. -#: grub-core/commands/videotest.c:228 -msgid "Test video subsystem in mode WxH." -msgstr "Testuje podsystem obrazu w trybie SxW." - -#: grub-core/commands/videotest.c:231 -msgid "Test video subsystem." -msgstr "Testuje podsystem obrazu." - -#: grub-core/commands/xen/lsxen.c:80 grub-core/commands/xen/lsxen.c:82 -msgid "[DIR]" -msgstr "[KATALOG]" - -#: grub-core/commands/xen/lsxen.c:81 grub-core/commands/xen/lsxen.c:83 -msgid "List Xen storage." -msgstr "WyÅ›wietla listÄ™ przestrzeni danych Xen." - -#. TRANSLATORS: GRUBUUID stands for "filesystem -#. UUID as used in GRUB". -#: grub-core/commands/xnu_uuid.c:110 -msgid "[-l] GRUBUUID [VARNAME]" -msgstr "[-l] UUID_GRUBA [NAZWA_ZMIENNEJ]" - -#: grub-core/commands/xnu_uuid.c:111 -msgid "" -"Transform 64-bit UUID to format suitable for XNU. If -l is given keep it " -"lowercase as done by blkid." -msgstr "" -"PrzeksztaÅ‚ca 64-bitowy UUID do formatu odpowiedniego dla XNU. JeÅ›li podano -" -"l, zachowuje maÅ‚e litery, jak blkid." - -#: grub-core/disk/arc/arcdisk.c:248 grub-core/disk/efi/efidisk.c:603 -#: grub-core/disk/i386/pc/biosdisk.c:498 grub-core/disk/i386/pc/biosdisk.c:543 -#: grub-core/disk/ieee1275/nand.c:198 grub-core/disk/ieee1275/obdisk.c:527 -#: grub-core/disk/ieee1275/ofdisk.c:586 -#, c-format -msgid "failure reading sector 0x%llx from `%s'" -msgstr "błąd podczas odczytu sektora 0x%llx z \"%s\"" - -#: grub-core/disk/arc/arcdisk.c:284 grub-core/disk/efi/efidisk.c:626 -#: grub-core/disk/i386/pc/biosdisk.c:548 grub-core/disk/ieee1275/ofdisk.c:606 -#, c-format -msgid "failure writing sector 0x%llx to `%s'" -msgstr "błąd podczas zapisu sektora 0x%llx na \"%s\"" - -#: grub-core/disk/cryptodisk.c:40 -msgid "Mount by UUID." -msgstr "Montuje wg UUID-a." - -#. TRANSLATORS: It's still restricted to cryptodisks only. -#: grub-core/disk/cryptodisk.c:42 -msgid "Mount all." -msgstr "Montuje wszystko." - -#: grub-core/disk/cryptodisk.c:43 -msgid "Mount all volumes with `boot' flag set." -msgstr "Montuje wszystkie wolumeny z ustawionÄ… flagÄ… \"boot\"." - -#. TRANSLATORS: The first %s is the file being looked at, the second %s is -#. the error message. -#: grub-core/disk/cryptodisk.c:526 grub-core/kern/emu/hostdisk.c:152 -#: grub-core/kern/emu/hostdisk.c:262 grub-core/kern/emu/hostdisk.c:434 -#: grub-core/kern/emu/misc.c:168 grub-core/kern/emu/misc.c:174 -#: grub-core/kern/emu/misc.c:196 grub-core/osdep/bsd/getroot.c:92 -#: grub-core/osdep/bsd/getroot.c:168 grub-core/osdep/hurd/getroot.c:68 -#: grub-core/osdep/linux/blocklist.c:65 grub-core/osdep/linux/getroot.c:150 -#: grub-core/osdep/linux/hostdisk.c:194 grub-core/osdep/linux/hostdisk.c:421 -#: grub-core/osdep/linux/ofpath.c:417 grub-core/osdep/linux/ofpath.c:422 -#: grub-core/osdep/linux/ofpath.c:517 grub-core/osdep/linux/ofpath.c:530 -#: grub-core/osdep/sun/getroot.c:110 grub-core/osdep/windows/blocklist.c:98 -#: grub-core/tests/video_checksum.c:279 util/editenv.c:46 util/glue-efi.c:115 -#: util/glue-efi.c:120 util/glue-efi.c:130 util/grub-editenv.c:138 -#: util/grub-editenv.c:192 util/grub-file.c:83 util/grub-fstest.c:128 -#: util/grub-fstest.c:568 util/grub-install-common.c:92 -#: util/grub-install-common.c:94 util/grub-install-common.c:101 -#: util/grub-install-common.c:529 util/grub-menulst2cfg.c:53 -#: util/grub-menulst2cfg.c:68 util/grub-mkimage.c:292 util/grub-mklayout.c:504 -#: util/grub-mklayout.c:516 util/grub-mknetdir.c:133 util/grub-mknetdir.c:151 -#: util/grub-mkrescue.c:627 util/grub-mkrescue.c:631 util/grub-mkrescue.c:879 -#: util/grub-mkrescue.c:883 util/grub-mkstandalone.c:253 util/grub-mount.c:498 -#: util/grub-render-label.c:169 util/grub-script-check.c:175 -#: util/grub-syslinux2cfg.c:181 util/grub-syslinux2cfg.c:191 -#: util/grub-syslinux2cfg.c:212 util/grub-syslinux2cfg.c:228 util/misc.c:91 -#: util/render-label.c:76 util/render-label.c:163 util/render-label.c:174 -#: util/resolve.c:246 util/setup.c:783 -#, c-format -msgid "cannot open `%s': %s" -msgstr "nie można otworzyć \"%s\": %s" - -#: grub-core/disk/cryptodisk.c:583 grub-core/disk/cryptodisk.c:628 -#: grub-core/kern/emu/hostdisk.c:270 grub-core/kern/emu/hostfs.c:142 -#: grub-core/osdep/linux/hostdisk.c:456 util/grub-editenv.c:143 -#: util/grub-editenv.c:149 util/grub-fstest.c:320 util/misc.c:111 -#, c-format -msgid "cannot seek `%s': %s" -msgstr "nie można przemieÅ›cić siÄ™ w \"%s\": %s" - -#: grub-core/disk/cryptodisk.c:1144 -msgid "SOURCE|-u UUID|-a|-b" -msgstr "ŹRÓDÅO|-u UUID|-a|-b" - -#: grub-core/disk/cryptodisk.c:1145 -msgid "Mount a crypto device." -msgstr "Montuje urzÄ…dzenie kryptograficzne." - -#. TRANSLATORS: This message kicks in during the detection of -#. which modules needs to be included in core image. This happens -#. in the case of degraded RAID and means that autodetection may -#. fail to include some of modules. It's an installation time -#. message, not runtime message. -#: grub-core/disk/diskfilter.c:343 grub-core/disk/diskfilter.c:376 -#, c-format -msgid "" -"Couldn't find physical volume `%s'. Some modules may be missing from core " -"image." -msgstr "" -"Nie udaÅ‚o siÄ™ odnaleźć wolumenu fizycznego \"%s\". Na obrazie core może " -"brakować niektórych modułów." - -#: grub-core/disk/diskfilter.c:480 -#, c-format -msgid "physical volume %s not found" -msgstr "nie znaleziono wolumenu fizycznego %s" - -#: grub-core/disk/efi/efidisk.c:600 grub-core/disk/efi/efidisk.c:623 -#, c-format -msgid "no media in `%s'" -msgstr "brak noÅ›nika w \"%s\"" - -#: grub-core/disk/geli.c:75 -msgid "Couldn't load sha256" -msgstr "Nie udaÅ‚o siÄ™ zaÅ‚adować sha256" - -#: grub-core/disk/geli.c:85 -msgid "Couldn't load sha512" -msgstr "Nie udaÅ‚o siÄ™ zaÅ‚adować sha512" - -#: grub-core/disk/geli.c:216 grub-core/disk/geli.c:220 -msgid "couldn't read ELI metadata" -msgstr "nie udaÅ‚o siÄ™ odczytać metadanych ELI" - -#: grub-core/disk/geli.c:231 -msgid "wrong ELI magic or version" -msgstr "błędny znacznik magiczny lub wersja ELI" - -#: grub-core/disk/geli.c:435 grub-core/disk/luks.c:329 -msgid "Attempting to decrypt master key..." -msgstr "Próba odszyfrowania klucza głównego..." - -#: grub-core/disk/geli.c:441 grub-core/disk/luks.c:347 -#, c-format -msgid "Enter passphrase for %s%s%s (%s): " -msgstr "HasÅ‚o dla %s%s%s (%s): " - -#. TRANSLATORS: It's a cryptographic key slot: one element of an array -#. where each element is either empty or holds a key. -#: grub-core/disk/geli.c:530 grub-core/disk/luks.c:451 -#, c-format -msgid "Slot %d opened\n" -msgstr "Slot %d otwarty\n" - -#: grub-core/disk/i386/pc/biosdisk.c:470 grub-core/disk/i386/pc/biosdisk.c:524 -#: grub-core/disk/i386/pc/biosdisk.c:534 grub-core/kern/disk_common.c:47 -#, c-format -msgid "attempt to read or write outside of disk `%s'" -msgstr "próba odczytu lub zapisu poza dyskiem \"%s\"" - -#: grub-core/disk/i386/pc/biosdisk.c:491 grub-core/disk/i386/pc/biosdisk.c:611 -#: grub-core/disk/scsi.c:726 -msgid "cannot write to CD-ROM" -msgstr "nie można zapisać na CD-ROM" - -#: grub-core/disk/i386/pc/biosdisk.c:662 -msgid "" -"Native disk drivers are in use. Refusing to use firmware disk interface." -msgstr "" -"Używane sÄ… natywne sterowniki dysku. Odmowa użycia interfejsu firmware dysku." - -#. TRANSLATORS: it's a partition for embedding, -#. not a partition embed into something. GRUB -#. install tools put core.img into a place -#. usable for bootloaders (called generically -#. "embedding zone") and this operation is -#. called "embedding". -#: grub-core/disk/ldm.c:1015 -msgid "your LDM Embedding Partition is too small; embedding won't be possible" -msgstr "partycja osadzajÄ…ca LDM jest zbyt maÅ‚a; osadzanie nie bÄ™dzie możliwe" - -#. TRANSLATORS: it's a partition for embedding, -#. not a partition embed into something. -#: grub-core/disk/ldm.c:1033 -msgid "this LDM has no Embedding Partition; embedding won't be possible" -msgstr "ten LDM nie ma partycji osadzajÄ…cej; osadzanie nie bÄ™dzie możliwe" - -#. TRANSLATORS: The disk is simply removed from the list of available ones, -#. not wiped, avoid to scare user. -#: grub-core/disk/loopback.c:45 -msgid "Delete the specified loopback drive." -msgstr "Usuwa podany wpis urzÄ…dzenia loopback." - -#: grub-core/disk/loopback.c:237 -msgid "[-d] DEVICENAME FILE." -msgstr "[-d] NAZWA_URZÄ„DZENIA PLIK." - -#. TRANSLATORS: The file itself is not destroyed -#. or transformed into drive. -#: grub-core/disk/loopback.c:240 -msgid "Make a virtual drive from a file." -msgstr "Tworzy urzÄ…dzenie wirtualne z pliku." - -#: grub-core/efiemu/i386/loadcore32.c:111 -#: grub-core/efiemu/i386/loadcore64.c:125 grub-core/kern/arm/dl.c:256 -#: grub-core/kern/arm64/dl.c:187 grub-core/kern/i386/dl.c:75 -#: grub-core/kern/ia64/dl.c:140 grub-core/kern/mips/dl.c:258 -#: grub-core/kern/powerpc/dl.c:163 grub-core/kern/riscv/dl.c:334 -#: grub-core/kern/sparc64/dl.c:180 grub-core/kern/x86_64/dl.c:110 -#: util/grub-mkimagexx.c:756 util/grub-mkimagexx.c:881 -#: util/grub-mkimagexx.c:945 util/grub-mkimagexx.c:1026 -#: util/grub-mkimagexx.c:1120 util/grub-mkimagexx.c:1222 -#: util/grub-mkimagexx.c:1413 util/grub-mkimagexx.c:1628 -#: util/grub-mkimagexx.c:1665 util/grub-mkimagexx.c:1697 -#: util/grub-mkimagexx.c:1767 util/grub-mkimagexx.c:1797 -#, c-format -msgid "relocation 0x%x is not implemented yet" -msgstr "relokacja 0x%x jeszcze nie jest zaimplementowana" - -#: grub-core/efiemu/loadcore.c:200 grub-core/efiemu/loadcore.c:237 -#: grub-core/loader/i386/bsdXX.c:317 util/grub-mkimagexx.c:2360 -msgid "no symbol table" -msgstr "brak tablicy symboli" - -#: grub-core/efiemu/loadcore.c:346 grub-core/kern/dl.c:609 -#: grub-core/loader/ia64/efi/linux.c:345 grub-core/loader/mips/linux.c:248 -#: grub-core/loader/multiboot_elfxx.c:76 -#: grub-core/loader/powerpc/ieee1275/linux.c:280 -#: grub-core/loader/sparc64/ieee1275/linux.c:320 -msgid "this ELF file is not of the right type" -msgstr "ten plik ELF jest jest wÅ‚aÅ›ciwego typu" - -#: grub-core/efiemu/main.c:313 -msgid "Load and initialize EFI emulator." -msgstr "Wczytuje i inicjuje emulator EFI." - -#: grub-core/efiemu/main.c:317 -msgid "Finalize loading of EFI emulator." -msgstr "KoÅ„czy wczytywanie emulatora EFI." - -#: grub-core/efiemu/main.c:320 -msgid "Unload EFI emulator." -msgstr "Usuwa emulator EFI z pamiÄ™ci." - -#: grub-core/efiemu/symbols.c:92 grub-core/kern/dl.c:376 -#, c-format -msgid "symbol `%s' not found" -msgstr "nie znaleziono symbolu \"%s\"" - -#: grub-core/font/font_cmd.c:52 -msgid "Loaded fonts:" -msgstr "Wczytane fonty:" - -#: grub-core/font/font_cmd.c:74 -msgid "FILE..." -msgstr "PLIK..." - -#: grub-core/font/font_cmd.c:75 -msgid "Specify one or more font files to load." -msgstr "Podaje jeden lub wiÄ™cej plików czcionek do wczytania." - -#: grub-core/font/font_cmd.c:78 -msgid "List the loaded fonts." -msgstr "WyÅ›wietla listÄ™ wczytanych czcionek." - -#: grub-core/fs/archelp.c:216 grub-core/fs/archelp.c:278 -#: grub-core/fs/btrfs.c:1815 grub-core/fs/fshelp.c:227 grub-core/fs/jfs.c:736 -#: grub-core/fs/minix.c:369 grub-core/fs/ufs.c:454 -msgid "too deep nesting of symlinks" -msgstr "za duże zagnieżdżenie dowiÄ…zaÅ„ symbolicznych" - -#: grub-core/fs/bfs.c:228 grub-core/fs/fshelp.c:368 grub-core/fs/minix.c:270 -#: grub-core/kern/file.c:156 -msgid "attempt to read past the end of file" -msgstr "próba odczytu za koÅ„cem pliku" - -#: grub-core/fs/btrfs.c:1698 grub-core/fs/btrfs.c:1957 -#: grub-core/fs/fshelp.c:189 grub-core/fs/fshelp.c:309 grub-core/fs/jfs.c:431 -#: grub-core/fs/minix.c:414 grub-core/fs/minix.c:562 -#: grub-core/fs/reiserfs.c:732 grub-core/fs/ufs.c:531 grub-core/fs/ufs.c:671 -#: grub-core/fs/zfs/zfs.c:2831 grub-core/fs/zfs/zfs.c:4247 -msgid "not a directory" -msgstr "to nie jest katalog" - -#: grub-core/fs/btrfs.c:2063 grub-core/fs/fshelp.c:307 grub-core/fs/jfs.c:835 -#: grub-core/fs/zfs/zfs.c:3801 -msgid "not a regular file" -msgstr "to nie jest zwykÅ‚y plik" - -#: grub-core/fs/btrfs.c:2157 grub-core/fs/zfs/zfs.c:4333 -#: grub-core/partmap/msdos.c:400 -msgid "your core.img is unusually large. It won't fit in the embedding area" -msgstr "ten core.img jest niezwykle duży. Nie zmieÅ›ci siÄ™ w obszarze osadzenia" - -#: grub-core/fs/fshelp.c:281 grub-core/fs/minix.c:630 grub-core/fs/ufs.c:661 -#: grub-core/fs/ufs.c:757 grub-core/kern/fs.c:168 grub-core/kern/fs.c:180 -#, c-format -msgid "invalid file name `%s'" -msgstr "nieprawidÅ‚owa nazwa pliku \"%s\"" - -#: grub-core/fs/zfs/zfs.c:453 -msgid "checksum verification failed" -msgstr "weryfikacja sumy kontrolnej nie powiodÅ‚a siÄ™" - -#: grub-core/fs/zfs/zfs.c:1465 -msgid "couldn't find a necessary member device of multi-device filesystem" -msgstr "" -"nie udaÅ‚o siÄ™ odnaleźć wymaganego urzÄ…dzenia skÅ‚adowego systemu plików na " -"wielu urzÄ…dzeniach" - -#: grub-core/fs/zfs/zfscrypt.c:292 -msgid "no decryption key available" -msgstr "niedostÄ™pny klucz deszyfrujÄ…cy" - -#: grub-core/fs/zfs/zfscrypt.c:304 -msgid "MAC verification failed" -msgstr "weryfikacja MAC nie powiodÅ‚a siÄ™" - -#: grub-core/fs/zfs/zfscrypt.c:413 -msgid "Assume input is raw." -msgstr "ZakÅ‚ada surowe wejÅ›cie." - -#: grub-core/fs/zfs/zfscrypt.c:414 -msgid "Assume input is hex." -msgstr "ZakÅ‚ada wejÅ›cie szesnastkowe." - -#: grub-core/fs/zfs/zfscrypt.c:415 -msgid "Assume input is passphrase." -msgstr "ZakÅ‚ada, że wejÅ›cie jest hasÅ‚em." - -#: grub-core/fs/zfs/zfscrypt.c:437 util/grub-fstest.c:553 util/grub-mount.c:483 -msgid "Enter ZFS password: " -msgstr "HasÅ‚o ZFS: " - -#: grub-core/fs/zfs/zfscrypt.c:476 -msgid "[-h|-p|-r] [FILE]" -msgstr "[-h|-p|-r] [PLIK]" - -#: grub-core/fs/zfs/zfscrypt.c:477 -msgid "Import ZFS wrapping key stored in FILE." -msgstr "Importuje klucz obudowujÄ…cy ZFS zapisany w PLIKU." - -#: grub-core/fs/zfs/zfsinfo.c:51 -msgid "Virtual device is removed" -msgstr "UrzÄ…dzenie wirtualne usuniÄ™te" - -#: grub-core/fs/zfs/zfsinfo.c:57 -msgid "Virtual device is faulted" -msgstr "UrzÄ…dzenie wirtualne zawiodÅ‚o" - -#: grub-core/fs/zfs/zfsinfo.c:63 -msgid "Virtual device is offline" -msgstr "UrzÄ…dzenie wirtualne odłączone" - -#. TRANSLATORS: degraded doesn't mean broken but that some of -#. component are missing but virtual device as whole is still usable. -#: grub-core/fs/zfs/zfsinfo.c:70 -msgid "Virtual device is degraded" -msgstr "UrzÄ…dzenie wirtualne zdegradowane" - -#: grub-core/fs/zfs/zfsinfo.c:73 -msgid "Virtual device is online" -msgstr "UrzÄ…dzenie wirtualne podłączone" - -#: grub-core/fs/zfs/zfsinfo.c:89 -msgid "Incorrect virtual device: no type available" -msgstr "Niepoprawne urzÄ…dzenie wirtualne; typ niedostÄ™pny" - -#. TRANSLATORS: The virtual devices form a tree (in graph-theoretical -#. sense). The nodes like mirror or raidz have children: member devices. -#. The "real" devices which actually store data are called "leafs" -#. (again borrowed from graph theory) and can be either disks -#. (or partitions) or files. -#: grub-core/fs/zfs/zfsinfo.c:105 -msgid "Leaf virtual device (file or disk)" -msgstr "KoÅ„cowe urzÄ…dzenie wirtualne (plik lub dysk)" - -#: grub-core/fs/zfs/zfsinfo.c:113 -msgid "Bootpath: unavailable\n" -msgstr "Åšcieżka rozruchowa: niedostÄ™pna\n" - -#: grub-core/fs/zfs/zfsinfo.c:115 -#, c-format -msgid "Bootpath: %s\n" -msgstr "Åšcieżka rozruchowa: %s\n" - -#: grub-core/fs/zfs/zfsinfo.c:120 -msgid "Path: unavailable" -msgstr "Åšcieżka: niedostÄ™pna" - -#: grub-core/fs/zfs/zfsinfo.c:122 -#, c-format -msgid "Path: %s\n" -msgstr "Åšcieżka: %s\n" - -#: grub-core/fs/zfs/zfsinfo.c:127 -msgid "Devid: unavailable" -msgstr "ID urzÄ…dzenia: niedostÄ™pny" - -#: grub-core/fs/zfs/zfsinfo.c:129 -#, c-format -msgid "Devid: %s\n" -msgstr "ID urzÄ…dzenia: %s\n" - -#: grub-core/fs/zfs/zfsinfo.c:148 -msgid "This VDEV is a mirror" -msgstr "To VDEV jest kopiÄ… lustrzanÄ…" - -#: grub-core/fs/zfs/zfsinfo.c:153 -#, c-format -msgid "This VDEV is a RAIDZ%llu\n" -msgstr "To VDEV to RAIDZ%llu\n" - -#: grub-core/fs/zfs/zfsinfo.c:158 -msgid "Incorrect VDEV" -msgstr "Niepoprawne VDEV" - -#: grub-core/fs/zfs/zfsinfo.c:161 -#, c-format -msgid "VDEV with %d children\n" -msgstr "VDEV o %d potomkach\n" - -#. TRANSLATORS: it's the element carying the number %d, not -#. total element number. And the number itself is fine, -#. only the element isn't. -#. -#: grub-core/fs/zfs/zfsinfo.c:177 -#, c-format -msgid "VDEV element number %d isn't correct\n" -msgstr "Element VDEV %d jest niepoprawny\n" - -#. TRANSLATORS: it's the element carying the number %d, not -#. total element number. This is used in enumeration -#. "Element number 1", "Element number 2", ... -#: grub-core/fs/zfs/zfsinfo.c:184 -#, c-format -msgid "VDEV element number %d:\n" -msgstr "Element VDEV %d:\n" - -#: grub-core/fs/zfs/zfsinfo.c:193 -#, c-format -msgid "Unknown virtual device type: %s\n" -msgstr "Nieznany typ urzÄ…dzenia wirtualnego: %s\n" - -#. TRANSLATORS: Here we speak about ZFS pools it's semi-marketing, -#. semi-technical term by Sun/Oracle and should be translated in sync with -#. other ZFS-related software and documentation. -#: grub-core/fs/zfs/zfsinfo.c:254 -msgid "Pool state: active" -msgstr "Stan puli: aktywna" - -#: grub-core/fs/zfs/zfsinfo.c:255 -msgid "Pool state: exported" -msgstr "Stan puli: wyeksportowana" - -#: grub-core/fs/zfs/zfsinfo.c:256 -msgid "Pool state: destroyed" -msgstr "Stan puli: zniszczona" - -#: grub-core/fs/zfs/zfsinfo.c:257 -msgid "Pool state: reserved for hot spare" -msgstr "Stan puli: zarezerwowana dla hot spare'a" - -#: grub-core/fs/zfs/zfsinfo.c:258 -msgid "Pool state: level 2 ARC device" -msgstr "Stan puli: urzÄ…dzenie ARC poziomu 2" - -#: grub-core/fs/zfs/zfsinfo.c:259 -msgid "Pool state: uninitialized" -msgstr "Stan puli: nie zainicjowana" - -#: grub-core/fs/zfs/zfsinfo.c:260 -msgid "Pool state: unavailable" -msgstr "Stan puli: niedostÄ™pna" - -#: grub-core/fs/zfs/zfsinfo.c:261 -msgid "Pool state: potentially active" -msgstr "Stan puli: potencjalnie aktywna" - -#: grub-core/fs/zfs/zfsinfo.c:306 -msgid "Pool name: unavailable" -msgstr "Nazwa puli: niedostÄ™pna" - -#: grub-core/fs/zfs/zfsinfo.c:308 -#, c-format -msgid "Pool name: %s\n" -msgstr "Nazwa puli: %s\n" - -#: grub-core/fs/zfs/zfsinfo.c:313 -msgid "Pool GUID: unavailable" -msgstr "GUID puli: niedostÄ™pny" - -#: grub-core/fs/zfs/zfsinfo.c:315 -#, c-format -msgid "Pool GUID: %016llx\n" -msgstr "GUID puli: %016llx\n" - -#: grub-core/fs/zfs/zfsinfo.c:320 -msgid "Unable to retrieve pool state" -msgstr "Nie można pobrać stanu puli" - -#: grub-core/fs/zfs/zfsinfo.c:322 -msgid "Unrecognized pool state" -msgstr "Nieznany stan puli" - -#. TRANSLATORS: There are undetermined number of virtual devices -#. in a device tree, not just one. -#. -#: grub-core/fs/zfs/zfsinfo.c:332 -msgid "No virtual device tree available" -msgstr "Brak dostÄ™pnego drzewa urzÄ…dzeÅ„ wirtualnych" - -#: grub-core/fs/zfs/zfsinfo.c:431 -msgid "Print ZFS info about DEVICE." -msgstr "Wypisuje informacje ZFS o URZÄ„DZENIU." - -#: grub-core/fs/zfs/zfsinfo.c:433 -msgid "FILESYSTEM [VARIABLE]" -msgstr "SYSTEM_PLIKÓW [ZMIENNA]" - -#: grub-core/fs/zfs/zfsinfo.c:434 -msgid "Print ZFS-BOOTFSOBJ or store it into VARIABLE" -msgstr "Wypisuje ZFS-BOOTFSOBJ lub zapisuje do ZMIENNEJ" - -#. TRANSLATORS: at this position GRUB waits for the user to do an action -#. in remote debugger, namely to tell it to establish connection. -#: grub-core/gdb/gdb.c:48 -msgid "Now connect the remote debugger, please." -msgstr "Teraz proszÄ™ podłączyć zdalny debugger." - -#. TRANSLATORS: GDB stub is a small part of -#. GDB functionality running on local host -#. which allows remote debugger to -#. connect to it. -#: grub-core/gdb/gdb.c:84 -msgid "Start GDB stub on given port" -msgstr "Uruchamia zaÅ›lepkÄ™ GDB na podanym porcie" - -#. TRANSLATORS: this refers to triggering -#. a breakpoint so that the user will land -#. into GDB. -#: grub-core/gdb/gdb.c:89 -msgid "Break into GDB" -msgstr "Zatrzymuje w GDB" - -#: grub-core/gdb/gdb.c:91 -msgid "Stop GDB stub" -msgstr "Zatrzymuje zaÅ›lepkÄ™ GDB" - -#: grub-core/gettext/gettext.c:85 -msgid "premature end of file" -msgstr "przedwczesny koniec pliku" - -#. TRANSLATORS: It refers to passing the string through gettext. -#. So it's "translate" in the same meaning as in what you're -#. doing now. -#. -#: grub-core/gettext/gettext.c:525 -msgid "Translates the string with the current settings." -msgstr "TÅ‚umaczy ciÄ…g za pomocÄ… bieżących ustawieÅ„." - -#: grub-core/gfxmenu/gui_label.c:186 grub-core/normal/menu_text.c:184 -msgid "" -"Press enter to boot the selected OS, `e' to edit the commands before booting " -"or `c' for a command-line. ESC to return previous menu." -msgstr "" -"NaciÅ›niÄ™cie klawisza Enter uruchamia wybrany system operacyjny, \"e\" " -"modyfikuje polecenia przed uruchomieniem, a \"c\" przechodzi do wiersza " -"poleceÅ„. Klawisz Esc powoduje przejÅ›cie do poprzedniego menu." - -#: grub-core/gfxmenu/gui_label.c:190 grub-core/normal/menu_text.c:192 -msgid "" -"Press enter to boot the selected OS, `e' to edit the commands before booting " -"or `c' for a command-line." -msgstr "" -"NaciÅ›niÄ™cie klawisza Enter uruchamia wybrany system operacyjny, \"e\" " -"modyfikuje polecenia przed uruchomieniem, a \"c\" przechodzi do wiersza " -"poleceÅ„." - -#: grub-core/gfxmenu/gui_label.c:194 -msgid "enter: boot, `e': options, `c': cmd-line" -msgstr "Enter: uruchomienie, \"e\": opcje, \"c\": linia poleceÅ„" - -#: grub-core/gfxmenu/gui_progress_bar.c:339 grub-core/normal/menu_text.c:446 -#, c-format -msgid "The highlighted entry will be executed automatically in %ds." -msgstr "Wyróżniony wpis zostanie wykonany automatycznie za %ds." - -#. TRANSLATORS: 's' stands for seconds. -#. It's a standalone timeout notification. -#. Please use the short form in your language. -#: grub-core/gfxmenu/gui_progress_bar.c:344 -#, c-format -msgid "%ds remaining." -msgstr "PozostaÅ‚o: %d s." - -#. TRANSLATORS: 's' stands for seconds. -#. It's a standalone timeout notification. -#. Please use the shortest form available in you language. -#: grub-core/gfxmenu/gui_progress_bar.c:349 grub-core/normal/menu_text.c:444 -#: grub-core/normal/menu_text.c:462 -#, c-format -msgid "%ds" -msgstr "%d s" - -#: grub-core/gfxmenu/view.c:103 -msgid "GRUB Boot Menu" -msgstr "Menu startowe GRUB-a" - -#: grub-core/hello/hello.c:36 -msgid "Hello World" -msgstr "Witaj, Åšwiecie" - -#: grub-core/hello/hello.c:45 -msgid "Say `Hello World'." -msgstr "Wypisuje tekst \"Witaj, Åšwiecie\"." - -#: grub-core/io/gzio.c:409 grub-core/kern/file.c:210 -msgid "attempt to seek outside of the file" -msgstr "próba ustawienia poza plikiem" - -#. TRANSLATORS: It's about given file having some strange format, not -#. complete lack of gzip support. -#: grub-core/io/gzio.c:1228 grub-core/io/gzio.c:1237 grub-core/io/gzio.c:1244 -msgid "unsupported gzip format" -msgstr "nieobsÅ‚ugiwany format gzip" - -#: grub-core/io/lzopio.c:511 -msgid "lzop file corrupted" -msgstr "plik lzop uszkodzony" - -#: grub-core/io/xzio.c:278 -msgid "xz file corrupted or unsupported block options" -msgstr "plik xz uszkodzony lub nieobsÅ‚ugiwane opcje bloku" - -#: grub-core/kern/arm/dl.c:277 grub-core/kern/arm64/dl.c:44 -#: grub-core/kern/i386/dl.c:36 grub-core/kern/ia64/dl.c:41 -#: grub-core/kern/mips/dl.c:48 grub-core/kern/powerpc/dl.c:36 -#: grub-core/kern/riscv/dl.c:47 grub-core/kern/sparc64/dl.c:36 -#: grub-core/kern/x86_64/dl.c:36 grub-core/loader/i386/bsd.c:1445 -#: grub-core/loader/i386/bsdXX.c:49 grub-core/loader/ia64/efi/linux.c:341 -#: grub-core/loader/mips/linux.c:298 grub-core/loader/multiboot.c:232 -#: grub-core/loader/multiboot_elfxx.c:73 -#: grub-core/loader/powerpc/ieee1275/linux.c:294 -#: grub-core/loader/sparc64/ieee1275/linux.c:331 -msgid "invalid arch-dependent ELF magic" -msgstr "błędny znacznik magiczny ELF zależny od architektury" - -#: grub-core/kern/corecmd.c:178 -msgid "[ENVVAR=VALUE]" -msgstr "[ZMIENNA_ÅšRODOWISKOWA=WARTOŚĆ]" - -#: grub-core/kern/corecmd.c:179 -msgid "Set an environment variable." -msgstr "Ustawia zmiennÄ… Å›rodowiskowÄ…." - -#: grub-core/kern/corecmd.c:183 -msgid "ENVVAR" -msgstr "ZMIENNA_ÅšRODOWISKOWA" - -#: grub-core/kern/corecmd.c:184 -msgid "Remove an environment variable." -msgstr "Usuwa zmiennÄ… Å›rodowiskowÄ…." - -#: grub-core/kern/corecmd.c:186 -msgid "[ARG]" -msgstr "[PARAMETR]" - -#: grub-core/kern/corecmd.c:186 -msgid "List devices or files." -msgstr "WyÅ›wietla listÄ™ urzÄ…dzeÅ„ lub plików." - -#: grub-core/kern/corecmd.c:188 -msgid "Insert a module." -msgstr "Wstawia moduÅ‚." - -#: grub-core/kern/disk.c:236 grub-core/net/net.c:1390 -#, c-format -msgid "disk `%s' not found" -msgstr "nie znaleziono dysku \"%s\"" - -#: grub-core/kern/disk_common.c:27 -msgid "attempt to read or write outside of partition" -msgstr "próba odczytu lub zapisu poza partycjÄ…" - -#: grub-core/kern/dl.c:212 grub-core/kern/elf.c:61 grub-core/kern/elf.c:79 -#: grub-core/loader/i386/bsdXX.c:46 grub-core/loader/ia64/efi/linux.c:335 -#: grub-core/loader/multiboot_elfxx.c:69 -msgid "invalid arch-independent ELF magic" -msgstr "błędny znacznik magiczny ELF niezależny od architektury" - -#. TRANSLATORS: it refers to the lack of free slots. -#: grub-core/kern/emu/hostdisk.c:208 grub-core/kern/emu/hostdisk.c:466 -msgid "device count exceeds limit" -msgstr "licznik urzÄ…dzenia przekracza ograniczenie" - -#: grub-core/kern/emu/hostdisk.c:342 util/editenv.c:54 util/grub-editenv.c:197 -#: util/grub-fstest.c:191 util/grub-mkfont.c:796 util/misc.c:114 -#: util/misc.c:129 util/setup.c:788 -#, c-format -msgid "cannot write to `%s': %s" -msgstr "nie można zapisać do \"%s\": %s" - -#. TRANSLATORS: Only one entry is ignored. However the suggestion -#. is to correct/delete the whole file. -#. device.map is a file indicating which -#. devices are available at boot time. Fedora populated it with -#. entries like (hd0,1) /dev/sda1 which would mean that every -#. partition is a separate disk for BIOS. Such entries were -#. inactive in GRUB due to its bug which is now gone. Without -#. this additional check these entries would be harmful now. -#. -#: grub-core/kern/emu/hostdisk.c:503 -#, c-format -msgid "" -"the device.map entry `%s' is invalid. Ignoring it. Please correct or delete " -"your device.map" -msgstr "" -"wpis device.map \"%s\" jest błędny - zignorowano go. ProszÄ™ poprawić lub " -"usunąć device.map" - -#. TRANSLATORS: device.map is a filename. Not to be translated. -#. device.map specifies disk correspondance overrides. Previously -#. one could create any kind of device name with this. Due to -#. some problems we decided to limit it to just a handful -#. possibilities. -#: grub-core/kern/emu/hostdisk.c:555 -#, c-format -msgid "" -"the drive name `%s' in device.map is incorrect. Using %s instead. Please use " -"the form [hfc]d[0-9]* (E.g. `hd0' or `cd')" -msgstr "" -"nazwa napÄ™du \"%s\" w device.map jest błędna. Zamiast niej użyto %s. ProszÄ™ " -"użyć postaci [hfc]d[0-9]* (np. \"hd0\" lub \"cd\")" - -#: grub-core/kern/emu/hostfs.c:76 grub-core/kern/emu/hostfs.c:109 -#, c-format -msgid "can't open `%s': %s" -msgstr "nie można otworzyć \"%s\": %s" - -#: grub-core/kern/emu/main.c:99 util/grub-fstest.c:516 util/grub-mount.c:452 -msgid "DEVICE_NAME" -msgstr "NAZWA_URZÄ„DZENIA" - -#: grub-core/kern/emu/main.c:99 grub-core/loader/i386/bsd.c:136 -#: grub-core/loader/i386/bsd.c:169 util/grub-fstest.c:516 util/grub-mount.c:452 -msgid "Set root device." -msgstr "Ustawia urzÄ…dzenie główne." - -#. TRANSLATORS: There are many devices in device map. -#: grub-core/kern/emu/main.c:102 util/grub-probe.c:733 util/grub-setup.c:85 -#, c-format -msgid "use FILE as the device map [default=%s]" -msgstr "używa PLIKU jako mapy urzÄ…dzeÅ„ [domyÅ›lnie=%s]" - -#. TRANSLATORS: There are many devices in device map. -#: grub-core/kern/emu/main.c:105 -msgid "use FILE as memdisk" -msgstr "używa PLIKU jako dysku w pamiÄ™ci" - -#: grub-core/kern/emu/main.c:107 util/grub-setup.c:83 -#, c-format -msgid "use GRUB files in the directory DIR [default=%s]" -msgstr "używa plików programu GRUB w KATALOGU [domyÅ›lnie=%s]" - -#: grub-core/kern/emu/main.c:108 include/grub/util/install.h:67 -#: util/grub-editenv.c:58 util/grub-fstest.c:525 util/grub-glue-efi.c:58 -#: util/grub-macbless.c:104 util/grub-mkfont.c:962 util/grub-mkimage.c:84 -#: util/grub-mklayout.c:56 util/grub-mount.c:458 util/grub-probe.c:735 -#: util/grub-render-label.c:74 util/grub-script-check.c:52 util/grub-setup.c:90 -#: util/grub-syslinux2cfg.c:78 -msgid "print verbose messages." -msgstr "wyÅ›wietla wiÄ™cej komunikatów." - -#: grub-core/kern/emu/main.c:109 grub-core/lib/gnulib/argp-parse.c:85 -msgid "SECS" -msgstr "SEK" - -#: grub-core/kern/emu/main.c:109 -msgid "wait until a debugger will attach" -msgstr "czeka na podłączenie debuggera" - -#: grub-core/kern/emu/main.c:171 util/grub-macbless.c:143 -#: util/grub-mkrelpath.c:61 util/grub-probe.c:874 util/grub-script-check.c:75 -#: util/grub-setup.c:203 -#, c-format -msgid "Unknown extra argument `%s'." -msgstr "Nieznany dodatkowy parametr \"%s\"." - -#: grub-core/kern/emu/main.c:185 -msgid "GRUB emulator." -msgstr "Emulator GRUB-a." - -#: grub-core/kern/emu/main.c:213 util/grub-editenv.c:262 -#: util/grub-glue-efi.c:110 util/grub-macbless.c:173 util/grub-mkfont.c:1177 -#: util/grub-mkimage.c:266 util/grub-mklayout.c:494 -#: util/grub-mkpasswd-pbkdf2.c:132 util/grub-mkrelpath.c:96 -#: util/grub-probe.c:863 util/grub-render-label.c:152 -#: util/grub-script-check.c:160 util/grub-setup.c:262 -#: util/grub-syslinux2cfg.c:163 -msgid "Error in parsing command line arguments\n" -msgstr "Błąd podczas przetwarzania parametrów wiersza poleceÅ„\n" - -#. TRANSLATORS: In this case GRUB tells user what he has to do. -#: grub-core/kern/emu/main.c:248 -#, c-format -msgid "Run `gdb %s %d', and set ARGS.HOLD to zero.\n" -msgstr "ProszÄ™ uruchomić \"gdb %s %d\" i ustawić ARGS.HOLD na zero.\n" - -#: grub-core/kern/emu/misc.c:48 -#, c-format -msgid "%s: warning:" -msgstr "%s: uwaga:" - -#: grub-core/kern/emu/misc.c:64 -#, c-format -msgid "%s: info:" -msgstr "%s: informacja:" - -#: grub-core/kern/emu/misc.c:79 util/grub-fstest.c:567 util/grub-fstest.c:576 -#: util/grub-mount.c:497 util/grub-mount.c:505 -#, c-format -msgid "%s: error:" -msgstr "%s: błąd:" - -#: grub-core/kern/emu/misc.c:176 -#, c-format -msgid "file `%s' is too big" -msgstr "plik \"%s\" jest zbyt duży" - -#: grub-core/kern/fs.c:120 -msgid "unknown filesystem" -msgstr "nieznany system plików" - -#: grub-core/kern/mips/arc/init.c:273 grub-core/kern/mips/loongson/init.c:301 -msgid "Shutdown failed" -msgstr "ZamkniÄ™cie nie powiodÅ‚o siÄ™" - -#: grub-core/kern/mips/arc/init.c:285 -msgid "Exit failed" -msgstr "WyjÅ›cie nie powiodÅ‚o siÄ™" - -#: grub-core/kern/misc.c:351 grub-core/kern/misc.c:408 include/grub/misc.h:269 -#: include/grub/misc.h:278 -msgid "overflow is detected" -msgstr "wykryto przepeÅ‚nienie" - -#: grub-core/kern/partition.c:51 grub-core/partmap/bsdlabel.c:108 -#, c-format -msgid "Discarding improperly nested partition (%s,%s,%s%d)" -msgstr "Porzucanie niewÅ‚aÅ›ciwie zagnieżdżonej partycji (%s,%s,%s%d)" - -#: grub-core/kern/rescue_parser.c:73 util/grub-editenv.c:292 -#, c-format -msgid "Unknown command `%s'.\n" -msgstr "Nieznane polecenie \"%s\".\n" - -#: grub-core/lib/arg.c:31 -msgid "Display this help and exit." -msgstr "WyÅ›wietla tÄ™ pomoc i koÅ„czy dziaÅ‚anie." - -#: grub-core/lib/arg.c:33 -msgid "Display the usage of this command and exit." -msgstr "WyÅ›wietla użycie tego polecenia i koÅ„czy dziaÅ‚anie." - -#: grub-core/lib/arg.c:362 -#, c-format -msgid "missing mandatory option for `%s'" -msgstr "brak obowiÄ…zkowej opcji dla \"%s\"" - -#: grub-core/lib/arg.c:384 -#, c-format -msgid "the argument `%s' requires an integer" -msgstr "argument \"%s\" wymaga liczby caÅ‚kowitej" - -#: grub-core/lib/arg.c:407 -#, c-format -msgid "" -"a value was assigned to the argument `%s' while it doesn't require an " -"argument" -msgstr "" -"przypisano argumentowi \"%s\" wartość, podczas gdy nie wymaga on wartoÅ›ci" - -#: grub-core/lib/backtrace.c:64 -msgid "Print backtrace." -msgstr "WyÅ›wietla stos wywoÅ‚aÅ„." - -#: grub-core/lib/gnulib/argp-help.c:149 -#, c-format -msgid "ARGP_HELP_FMT: %s value is less than or equal to %s" -msgstr "ARGP_HELP_FMT: wartość %s jest mniejsza lub równa %s" - -#: grub-core/lib/gnulib/argp-help.c:225 -#, c-format -msgid "%.*s: ARGP_HELP_FMT parameter requires a value" -msgstr "%.*s: Parametr ARGP_HELP_FMT wymaga podania wartoÅ›ci" - -#: grub-core/lib/gnulib/argp-help.c:235 -#, c-format -msgid "%.*s: Unknown ARGP_HELP_FMT parameter" -msgstr "%.*s: Nieznany parametr ARGP_HELP_FMT" - -#: grub-core/lib/gnulib/argp-help.c:248 -#, c-format -msgid "Garbage in ARGP_HELP_FMT: %s" -msgstr "Błędne dane w ARGP_HELP_FMT: %s" - -#: grub-core/lib/gnulib/argp-help.c:1229 -msgid "" -"Mandatory or optional arguments to long options are also mandatory or " -"optional for any corresponding short options." -msgstr "" -"Argumenty obowiÄ…zkowe lub opcjonalne dla dÅ‚ugich opcji sÄ… również " -"obowiÄ…zkowe lub opcjonalne dla odpowiednich krótkich opcji." - -#: grub-core/lib/gnulib/argp-help.c:1620 -msgid " or: " -msgstr " lub: " - -#: grub-core/lib/gnulib/argp-help.c:1632 -msgid " [OPTION...]" -msgstr " [OPCJA...]" - -#: grub-core/lib/gnulib/argp-help.c:1659 -#, c-format -msgid "Try '%s --help' or '%s --usage' for more information.\n" -msgstr "" -"Polecenie \"%s --help\" lub \"%s --usage\" pozwoli uzyskać wiÄ™cej " -"informacji.\n" - -#: grub-core/lib/gnulib/argp-help.c:1687 -#, c-format -msgid "Report bugs to %s.\n" -msgstr "Prosimy zgÅ‚aszać błędy na adres %s.\n" - -#: grub-core/lib/gnulib/argp-help.c:1888 grub-core/lib/gnulib/error.c:195 -msgid "Unknown system error" -msgstr "Nieznany błąd systemowy" - -#: grub-core/lib/gnulib/argp-parse.c:81 -msgid "give this help list" -msgstr "wyÅ›wietla ten tekst pomocy" - -#: grub-core/lib/gnulib/argp-parse.c:82 -msgid "give a short usage message" -msgstr "wyÅ›wietla krótkÄ… informacjÄ™ o skÅ‚adni polecenia" - -#: grub-core/lib/gnulib/argp-parse.c:83 util/grub-mkfont.c:946 -msgid "NAME" -msgstr "NAZWA" - -#: grub-core/lib/gnulib/argp-parse.c:84 -msgid "set the program name" -msgstr "okreÅ›la nazwÄ™ programu" - -#: grub-core/lib/gnulib/argp-parse.c:86 -msgid "hang for SECS seconds (default 3600)" -msgstr "zatrzymuje na SEK sekund (domyÅ›lnie 3600)" - -#: grub-core/lib/gnulib/argp-parse.c:143 -msgid "print program version" -msgstr "wyÅ›wietla wersjÄ™ programu" - -#: grub-core/lib/gnulib/argp-parse.c:160 -msgid "(PROGRAM ERROR) No version known!?" -msgstr "(BÅÄ„D PROGRAMU) Nieznana wersja!?" - -#: grub-core/lib/gnulib/argp-parse.c:613 -#, c-format -msgid "%s: Too many arguments\n" -msgstr "%s: Za dużo argumentów\n" - -#: grub-core/lib/gnulib/argp-parse.c:759 -msgid "(PROGRAM ERROR) Option should have been recognized!?" -msgstr "(BÅÄ„D PROGRAMU) Opcja powinna zostać rozpoznana!?" - -#: grub-core/lib/gnulib/getopt.c:278 -#, c-format -msgid "%s: option '%s%s' is ambiguous\n" -msgstr "%s: opcja \"%s%s\" jest niejednoznaczna\n" - -#: grub-core/lib/gnulib/getopt.c:284 -#, c-format -msgid "%s: option '%s%s' is ambiguous; possibilities:" -msgstr "%s: opcja \"%s%s\" jest niejednoznaczna; możliwoÅ›ci:" - -#: grub-core/lib/gnulib/getopt.c:319 -#, c-format -msgid "%s: unrecognized option '%s%s'\n" -msgstr "%s: nieznana opcja \"%s%s\"\n" - -#: grub-core/lib/gnulib/getopt.c:345 -#, c-format -msgid "%s: option '%s%s' doesn't allow an argument\n" -msgstr "%s: opcja \"%s%s\" nie może mieć argumentów\n" - -#: grub-core/lib/gnulib/getopt.c:360 -#, c-format -msgid "%s: option '%s%s' requires an argument\n" -msgstr "%s: opcja \"%s%s\" musi mieć argument\n" - -#: grub-core/lib/gnulib/getopt.c:621 -#, c-format -msgid "%s: invalid option -- '%c'\n" -msgstr "%s: błędna opcja -- \"%c\"\n" - -#: grub-core/lib/gnulib/getopt.c:636 grub-core/lib/gnulib/getopt.c:682 -#, c-format -msgid "%s: option requires an argument -- '%c'\n" -msgstr "%s: opcja musi mieć argument -- \"%c\"\n" - -#: grub-core/lib/gnulib/openat-die.c:38 -#, c-format -msgid "unable to record current working directory" -msgstr "nie można zapisać bieżącego katalogu roboczego" - -#: grub-core/lib/gnulib/openat-die.c:57 -#, c-format -msgid "failed to return to initial working directory" -msgstr "nie udaÅ‚o siÄ™ powrócić do poczÄ…tkowego katalogu roboczego" - -#: grub-core/lib/gnulib/regcomp.c:135 grub-core/osdep/aros/hostdisk.c:523 -msgid "Success" -msgstr "Sukces" - -#: grub-core/lib/gnulib/regcomp.c:138 -msgid "No match" -msgstr "Nic nie pasuje" - -#: grub-core/lib/gnulib/regcomp.c:141 -msgid "Invalid regular expression" -msgstr "Błędne wyrażenie regularne" - -#: grub-core/lib/gnulib/regcomp.c:144 -msgid "Invalid collation character" -msgstr "Błędny znak sortowany" - -#: grub-core/lib/gnulib/regcomp.c:147 -msgid "Invalid character class name" -msgstr "Błędna nazwa klasy znaków" - -#: grub-core/lib/gnulib/regcomp.c:150 -msgid "Trailing backslash" -msgstr "KoÅ„czÄ…cy znak \"\\\"" - -#: grub-core/lib/gnulib/regcomp.c:153 -msgid "Invalid back reference" -msgstr "Błędne odniesienie wstecz" - -#: grub-core/lib/gnulib/regcomp.c:156 -msgid "Unmatched [, [^, [:, [., or [=" -msgstr "Niesparowane [, [^, [:, [. lub [=" - -#: grub-core/lib/gnulib/regcomp.c:159 -msgid "Unmatched ( or \\(" -msgstr "Niesparowane ( lub \\(" - -#: grub-core/lib/gnulib/regcomp.c:162 -msgid "Unmatched \\{" -msgstr "Niesparowane \\{" - -#: grub-core/lib/gnulib/regcomp.c:165 -msgid "Invalid content of \\{\\}" -msgstr "Błędna zawartość \\{\\}" - -#: grub-core/lib/gnulib/regcomp.c:168 -msgid "Invalid range end" -msgstr "Błędny koniec zakresu" - -#: grub-core/lib/gnulib/regcomp.c:171 -msgid "Memory exhausted" -msgstr "Pamięć wyczerpana" - -#: grub-core/lib/gnulib/regcomp.c:174 -msgid "Invalid preceding regular expression" -msgstr "Błędne poprzedzajÄ…ce wyrażenie regularne" - -#: grub-core/lib/gnulib/regcomp.c:177 -msgid "Premature end of regular expression" -msgstr "Przedwczesny koniec wyrażenia regularnego" - -#: grub-core/lib/gnulib/regcomp.c:180 -msgid "Regular expression too big" -msgstr "Wyrażenie regularne zbyt duże" - -#: grub-core/lib/gnulib/regcomp.c:183 -msgid "Unmatched ) or \\)" -msgstr "Niesparowane ) lub \\)" - -#: grub-core/lib/gnulib/regcomp.c:531 -msgid "unknown regexp error" -msgstr "nieznany błąd wyrażenia regularnego" - -#: grub-core/lib/gnulib/regcomp.c:676 -msgid "No previous regular expression" -msgstr "Brak poprzedniego wyrażenia regularnego" - -#: grub-core/lib/i386/halt.c:77 -msgid "GRUB doesn't know how to halt this machine yet!" -msgstr "GRUB nie wie jeszcze, jak wytrzymać tÄ™ maszynÄ™!" - -#: grub-core/lib/legacy_parse.c:75 -msgid "Default server is ${net_default_server}" -msgstr "DomyÅ›lny serwer to ${net_default_server}" - -#: grub-core/lib/legacy_parse.c:844 grub-core/video/colors.c:296 -#: grub-core/video/colors.c:305 grub-core/video/colors.c:311 -#: grub-core/video/colors.c:327 util/render-label.c:84 util/render-label.c:98 -#, c-format -msgid "invalid color specification `%s'" -msgstr "nieprawidÅ‚owe okreÅ›lenie koloru \"%s\"" - -#: grub-core/lib/mips/arc/reboot.c:32 grub-core/lib/mips/loongson/reboot.c:61 -msgid "Reboot failed" -msgstr "Restart nie powiódÅ‚ siÄ™" - -#: grub-core/lib/random.c:113 -msgid "[LENGTH]" -msgstr "[DÅUGOŚĆ]" - -#: grub-core/lib/random.c:114 -msgid "Hexdump random data." -msgstr "Zrzut szesnastkowy danych losowych." - -#: grub-core/loader/arm/linux.c:242 -msgid "device tree must be supplied (see `devicetree' command)" -msgstr "drzewo urzÄ…dzeÅ„ musi być podane (p. polecenie \"devicetree\")" - -#: grub-core/loader/arm/linux.c:334 -msgid "invalid zImage" -msgstr "błędny zImage" - -#: grub-core/loader/arm/linux.c:450 grub-core/loader/efi/fdt.c:144 -msgid "invalid device tree" -msgstr "nieprawidÅ‚owe drzewo urzÄ…dzeÅ„" - -#: grub-core/loader/arm/linux.c:493 grub-core/loader/arm64/linux.c:383 -#: grub-core/loader/i386/linux.c:1125 grub-core/loader/i386/pc/linux.c:479 -#: grub-core/loader/i386/xen.c:962 grub-core/loader/i386/xen.c:964 -#: grub-core/loader/ia64/efi/linux.c:591 grub-core/loader/mips/linux.c:501 -#: grub-core/loader/powerpc/ieee1275/linux.c:383 -#: grub-core/loader/riscv/linux.c:50 -#: grub-core/loader/sparc64/ieee1275/linux.c:511 -msgid "Load Linux." -msgstr "Wczytuje system Linux." - -#: grub-core/loader/arm/linux.c:495 grub-core/loader/arm64/linux.c:385 -#: grub-core/loader/i386/linux.c:1127 grub-core/loader/i386/pc/linux.c:482 -#: grub-core/loader/i386/xen.c:966 grub-core/loader/ia64/efi/linux.c:594 -#: grub-core/loader/mips/linux.c:503 -#: grub-core/loader/powerpc/ieee1275/linux.c:385 -#: grub-core/loader/riscv/linux.c:52 -#: grub-core/loader/sparc64/ieee1275/linux.c:513 -msgid "Load initrd." -msgstr "Wczytuje obraz initrd." - -#. TRANSLATORS: DTB stands for device tree blob. -#: grub-core/loader/arm/linux.c:498 grub-core/loader/efi/fdt.c:169 -msgid "Load DTB file." -msgstr "Wczytuje plik DTB." - -#: grub-core/loader/arm64/linux.c:59 -msgid "" -"plain image kernel not supported - rebuild with CONFIG_(U)EFI_STUB enabled" -msgstr "" -"zwykÅ‚y obraz jÄ…dra nie jest obsÅ‚ugiwany - należy przebudować z włączonÄ… " -"opcjÄ… CONFIG_(U)EFI_STUB" - -#: grub-core/loader/arm64/xen_boot.c:156 -msgid "failed to get FDT" -msgstr "nie udaÅ‚o siÄ™ pobrać FDT" - -#: grub-core/loader/arm64/xen_boot.c:418 -msgid "you need to load the Xen Hypervisor first" -msgstr "najpierw należy wczytać hipernadzorcÄ™ Xen" - -#: grub-core/loader/arm64/xen_boot.c:516 -msgid "Load a xen hypervisor." -msgstr "Wczytuje hipernadzorcÄ™ xen." - -#: grub-core/loader/arm64/xen_boot.c:519 -msgid "Load a xen module." -msgstr "Wczytuje moduÅ‚ xen." - -#: grub-core/loader/efi/appleloader.c:231 -msgid "[OPTS]" -msgstr "[OPCJE]" - -#. TRANSLATORS: This command is used on EFI to -#. switch to BIOS mode and boot the OS requiring -#. BIOS. -#: grub-core/loader/efi/appleloader.c:235 -msgid "Boot BIOS-based system." -msgstr "Uruchamia system oparty na BIOS-ie." - -#: grub-core/loader/efi/chainloader.c:421 -#: grub-core/loader/i386/pc/chainloader.c:303 -msgid "Load another boot loader." -msgstr "Wczytuje inny program startowy." - -#: grub-core/loader/i386/bsd.c:103 -msgid "Display output on all consoles." -msgstr "WyÅ›wietla wyjÅ›cie na wszystkich konsolach." - -#: grub-core/loader/i386/bsd.c:104 grub-core/loader/i386/bsd.c:138 -#: grub-core/loader/i386/bsd.c:171 -msgid "Use serial console." -msgstr "Używa konsoli szeregowej." - -#: grub-core/loader/i386/bsd.c:105 grub-core/loader/i386/bsd.c:131 -#: grub-core/loader/i386/bsd.c:159 -msgid "Ask for file name to reboot from." -msgstr "Pyta, z jakiego pliku uruchomić." - -#: grub-core/loader/i386/bsd.c:106 -msgid "Use CD-ROM as root." -msgstr "Używa napÄ™du CD-ROM jako root." - -#: grub-core/loader/i386/bsd.c:107 -msgid "Invoke user configuration routing." -msgstr "WywoÅ‚uje trasowanie konfiguracji użytkownika." - -#: grub-core/loader/i386/bsd.c:108 grub-core/loader/i386/bsd.c:135 -#: grub-core/loader/i386/bsd.c:162 -msgid "Enter in KDB on boot." -msgstr "Przechodzi do KDB podczas uruchamiania." - -#: grub-core/loader/i386/bsd.c:109 -msgid "Use GDB remote debugger instead of DDB." -msgstr "Używa zdalnego debuggera GDB zamiast DDB." - -#: grub-core/loader/i386/bsd.c:110 -msgid "Disable all boot output." -msgstr "Wyłącza caÅ‚e wyjÅ›cie uruchamiania." - -#: grub-core/loader/i386/bsd.c:112 -msgid "Wait for keypress after every line of output." -msgstr "Czeka na naciÅ›niÄ™cie klawisza po każdym wierszu wyjÅ›cia." - -#: grub-core/loader/i386/bsd.c:114 -msgid "Use compiled-in root device." -msgstr "Używa wkompilowanego urzÄ…dzenia root." - -#: grub-core/loader/i386/bsd.c:115 grub-core/loader/i386/bsd.c:134 -#: grub-core/loader/i386/bsd.c:165 -msgid "Boot into single mode." -msgstr "Uruchamia w trybie pojedynczego użytkownika." - -#: grub-core/loader/i386/bsd.c:116 grub-core/loader/i386/bsd.c:166 -msgid "Boot with verbose messages." -msgstr "Uruchamia z wiÄ™kszÄ… iloÅ›ciÄ… komunikatów." - -#: grub-core/loader/i386/bsd.c:132 grub-core/loader/i386/bsd.c:160 -msgid "Don't reboot, just halt." -msgstr "Nie uruchamia ponownie, tylko wyłącza." - -#: grub-core/loader/i386/bsd.c:133 grub-core/loader/i386/bsd.c:161 -msgid "Change configured devices." -msgstr "Zmienia skonfigurowane urzÄ…dzenia." - -#. TRANSLATORS: "com" is static and not to be translated. It refers to -#. serial ports e.g. com1. -#. -#: grub-core/loader/i386/bsd.c:142 -msgid "comUNIT[,SPEED]" -msgstr "comJEDNOSTKA[,PRĘDKOŚĆ]" - -#: grub-core/loader/i386/bsd.c:157 -msgid "Disable SMP." -msgstr "Wyłącza SMP." - -#: grub-core/loader/i386/bsd.c:158 -msgid "Disable ACPI." -msgstr "Wyłącza ACPI." - -#: grub-core/loader/i386/bsd.c:164 -msgid "Don't display boot diagnostic messages." -msgstr "Bez wyÅ›wietlania komunikatów diagnostycznych uruchamiania." - -#: grub-core/loader/i386/bsd.c:167 -msgid "Boot with debug messages." -msgstr "Uruchamia z komunikatami debugowania." - -#: grub-core/loader/i386/bsd.c:168 -msgid "Suppress normal output (warnings remain)." -msgstr "Ogranicza zwykÅ‚e wyjÅ›cie (ostrzeżenia pozostajÄ…)." - -#. TRANSLATORS: "com" is static and not to be translated. It refers to -#. serial ports e.g. com1. -#. -#: grub-core/loader/i386/bsd.c:175 -msgid "[ADDR|comUNIT][,SPEED]" -msgstr "[ADRES|comJEDNOSTKA][,PRĘDKOŚĆ]" - -#: grub-core/loader/i386/bsd.c:489 grub-core/loader/i386/bsd.c:555 -msgid "name" -msgstr "nazwa" - -#: grub-core/loader/i386/bsd.c:489 grub-core/loader/i386/bsd.c:555 -msgid "type" -msgstr "typ" - -#: grub-core/loader/i386/bsd.c:489 grub-core/loader/i386/bsd.c:555 -msgid "addr" -msgstr "adres" - -#: grub-core/loader/i386/bsd.c:490 grub-core/loader/i386/bsd.c:556 -msgid "size" -msgstr "rozmiar" - -#: grub-core/loader/i386/bsd.c:1147 grub-core/loader/i386/linux.c:466 -#: grub-core/loader/i386/xnu.c:1030 -msgid "Booting in blind mode" -msgstr "Uruchamia w trybie Å›lepym" - -#: grub-core/loader/i386/bsd.c:2137 -msgid "Load kernel of FreeBSD." -msgstr "Wczytuje jÄ…dro systemu FreeBSD." - -#: grub-core/loader/i386/bsd.c:2140 -msgid "Load kernel of OpenBSD." -msgstr "Wczytuje jÄ…dro systemu OpenBSD." - -#: grub-core/loader/i386/bsd.c:2143 -msgid "Load kernel of NetBSD." -msgstr "Wczytuje jÄ…dro systemu NetBSD." - -#: grub-core/loader/i386/bsd.c:2147 -msgid "Load FreeBSD env." -msgstr "Wczytuje Å›rodowisko systemu FreeBSD." - -#: grub-core/loader/i386/bsd.c:2150 -msgid "Load FreeBSD kernel module." -msgstr "Wczytuje moduÅ‚ jÄ…dra FreeBSD." - -#: grub-core/loader/i386/bsd.c:2153 -msgid "Load NetBSD kernel module." -msgstr "Wczytuje moduÅ‚ jÄ…dra NetBSD." - -#: grub-core/loader/i386/bsd.c:2156 -msgid "Load NetBSD kernel module (ELF)." -msgstr "Wczytuje moduÅ‚ jÄ…dra NetBSD (ELF)." - -#: grub-core/loader/i386/bsd.c:2159 -msgid "Load FreeBSD kernel module (ELF)." -msgstr "Wczytuje moduÅ‚ jÄ…dra FreeBSD (ELF)." - -#. TRANSLATORS: ramdisk isn't identifier, -#. it can be translated. -#: grub-core/loader/i386/bsd.c:2165 -msgid "Load kOpenBSD ramdisk." -msgstr "Wczytuje ramdysk kOpenBSD." - -#. TRANSLATORS: "payload" is a term used -#. by coreboot and must be translated in -#. sync with coreboot. If unsure, -#. let it untranslated. -#: grub-core/loader/i386/coreboot/chainloader.c:510 -msgid "Load another coreboot payload" -msgstr "Wczytuje inny payload coreboot." - -#: grub-core/loader/i386/linux.c:876 -msgid "Legacy `ask' parameter no longer supported." -msgstr "PrzestarzaÅ‚y parametr \"ask\" nie jest już obsÅ‚ugiwany." - -#: grub-core/loader/i386/linux.c:892 grub-core/loader/i386/linux.c:902 -#: grub-core/loader/i386/linux.c:932 -#, c-format -msgid "%s is deprecated. Use set gfxpayload=%s before linux command instead.\n" -msgstr "" -"%s jest przestarzaÅ‚y. Zamiast tego należy ustawić gfxpayload=%s przed " -"polecenim \"linux\".\n" - -#. TRANSLATORS: "x" has to be entered in, like an identifier, -#. so please don't use better Unicode codepoints. -#: grub-core/loader/i386/linux.c:915 -#, c-format -msgid "" -"%s is deprecated. VGA mode %d isn't recognized. Use set " -"gfxpayload=WIDTHxHEIGHT[xDEPTH] before linux command instead.\n" -msgstr "" -"%s jest przestarzaÅ‚y. Tryb VGA %d nie zostaÅ‚ rozpoznany. Zamiast tego należy " -"ustawić gfxpayload=SZERxWYS[xGÅĘB] przed poleceniem \"linux\".\n" - -#: grub-core/loader/i386/pc/chainloader.c:302 -msgid "[--force|--bpb] FILE" -msgstr "[--force|--bpb] PLIK" - -#: grub-core/loader/i386/pc/freedos.c:148 util/setup.c:293 -#, c-format -msgid "the size of `%s' is too large" -msgstr "rozmiar \"%s\" jest za duży" - -#: grub-core/loader/i386/pc/freedos.c:183 -msgid "Load FreeDOS kernel.sys." -msgstr "Wczytuje kernel.sys FreeDOS-a." - -#: grub-core/loader/i386/pc/ntldr.c:155 -msgid "Load NTLDR or BootMGR." -msgstr "Wczytuje NTLDR lub BootMGR." - -#. TRANSLATORS: it's about guessing which GRUB disk -#. is which Plan9 disk. If your language has no -#. word "mapping" you can use another word which -#. means that the GRUBDEVICE and PLAN9DEVICE are -#. actually the same device, just named differently -#. in OS and GRUB. -#: grub-core/loader/i386/pc/plan9.c:59 -msgid "Override guessed mapping of Plan9 devices." -msgstr "Nadpisuje odgadniÄ™te mapowania urzÄ…dzeÅ„ Plan9." - -#: grub-core/loader/i386/pc/plan9.c:60 -msgid "GRUBDEVICE=PLAN9DEVICE" -msgstr "URZÄ„DZENIE_GRUBA=URZÄ„DZENIE_PLAN9" - -#: grub-core/loader/i386/pc/plan9.c:599 -msgid "KERNEL ARGS" -msgstr "JÄ„DRO ARGUMENTY" - -#: grub-core/loader/i386/pc/plan9.c:599 -msgid "Load Plan9 kernel." -msgstr "Wczytuje jÄ…dro Plan9." - -#: grub-core/loader/i386/pc/pxechainloader.c:161 -msgid "Load a PXE image." -msgstr "Wczytuje obraz PXE." - -#: grub-core/loader/i386/pc/truecrypt.c:226 -msgid "Load Truecrypt ISO." -msgstr "Wczytuje ISO Truecrypta." - -#: grub-core/loader/i386/xen.c:781 grub-core/loader/i386/xen.c:865 -msgid "initrd already loaded" -msgstr "initrd już wczytane" - -#: grub-core/loader/i386/xen.c:968 -msgid "Load module." -msgstr "Wczytuje moduÅ‚." - -#: grub-core/loader/i386/xnu.c:1003 -msgid "Press any key to launch xnu" -msgstr "NaciÅ›niÄ™cie dowolnego klawisza uruchomi xnu" - -#. TRANSLATORS: `device-properties' -#. is a variable name, -#. not a program. -#: grub-core/loader/i386/xnu.c:1159 -msgid "Load `device-properties' dump." -msgstr "Wczytuje zrzut \"device-properties\"." - -#: grub-core/loader/ia64/efi/linux.c:124 -msgid "Could not locate FPSWA driver" -msgstr "Nie udaÅ‚o siÄ™ zlokalizować sterownika FPSWA" - -#: grub-core/loader/ia64/efi/linux.c:132 -msgid "FPSWA protocol wasn't able to find the interface" -msgstr "Protokół FPSWA nie mógÅ‚ odnaleźć interfejsu" - -#: grub-core/loader/ia64/efi/linux.c:580 -msgid "No FPSWA found" -msgstr "Nie znaleziono FPSWA" - -#: grub-core/loader/ia64/efi/linux.c:582 -#, c-format -msgid "FPSWA revision: %x\n" -msgstr "Wersja FPSWA: %x\n" - -#: grub-core/loader/ia64/efi/linux.c:591 -msgid "FILE [ARGS...]" -msgstr "PLIK [ARGUMENTY...]" - -#: grub-core/loader/ia64/efi/linux.c:597 -msgid "Display FPSWA version." -msgstr "WyÅ›wietla wersjÄ™ FPSWA." - -#: grub-core/loader/multiboot.c:248 -msgid "WARNING: no console will be available to OS" -msgstr "UWAGA: konsola nie bÄ™dzie dostÄ™pna dla systemu operacyjnego" - -#: grub-core/loader/multiboot.c:450 -msgid "Load a multiboot 2 kernel." -msgstr "Wczytuje jÄ…dro Multiboot 2." - -#: grub-core/loader/multiboot.c:453 -msgid "Load a multiboot 2 module." -msgstr "Wczytuje moduÅ‚ Multiboot 2." - -#: grub-core/loader/multiboot.c:456 -msgid "Load a multiboot kernel." -msgstr "Wczytuje jÄ…dro Multiboot." - -#: grub-core/loader/multiboot.c:459 -msgid "Load a multiboot module." -msgstr "Wczytuje moduÅ‚ Multiboot." - -#: grub-core/loader/riscv/linux.c:30 grub-core/loader/riscv/linux.c:40 -msgid "Linux not supported yet" -msgstr "Linux nie jest jeszcze obsÅ‚ugiwany" - -#: grub-core/loader/xnu.c:1416 grub-core/term/gfxterm_background.c:45 -msgid "Background image mode." -msgstr "Tryb obrazu w tle." - -#. TRANSLATORS: This refers to background image mode (stretched or -#. in left-top corner). Note that GRUB will accept only original -#. keywords stretch and normal, not the translated ones. -#. So please put both in translation -#. e.g. stretch(=%STRETCH%)|normal(=%NORMAL%). -#. The percents mark the translated version. Since many people -#. may not know the word stretch or normal I recommend -#. putting the translation either here or in "Background image mode." -#. string. -#: grub-core/loader/xnu.c:1416 grub-core/term/gfxterm_background.c:55 -msgid "stretch|normal" -msgstr "stretch|normal" - -#: grub-core/loader/xnu.c:1482 -msgid "Load XNU image." -msgstr "Wczytuje obraz systemu XNU." - -#: grub-core/loader/xnu.c:1484 -msgid "Load 64-bit XNU image." -msgstr "Wczytuje 64 bitowy obraz systemu XNU." - -#: grub-core/loader/xnu.c:1486 -msgid "Load XNU extension package." -msgstr "Wczytuje pakiet rozszerzeÅ„ systemu XNU." - -#: grub-core/loader/xnu.c:1488 -msgid "Load XNU extension." -msgstr "Wczytuje rozszerzenie systemu XNU." - -#. TRANSLATORS: OSBundleRequired is a -#. variable name in xnu extensions -#. manifests. It behaves mostly like -#. GNU/Linux runlevels. -#. -#: grub-core/loader/xnu.c:1495 -msgid "DIRECTORY [OSBundleRequired]" -msgstr "KATALOG [zmienna OSBundleRequired]" - -#. TRANSLATORS: There are many extensions -#. in extension directory. -#: grub-core/loader/xnu.c:1498 -msgid "Load XNU extension directory." -msgstr "Wczytuje katalog rozszerzeÅ„ systemu XNU." - -#. TRANSLATORS: ramdisk here isn't identifier. It can be translated. -#: grub-core/loader/xnu.c:1501 -msgid "Load XNU ramdisk. It will be available in OS as md0." -msgstr "" -"Wczytuje ramdysk XNU. BÄ™dzie dostÄ™pny dla systemu operacyjnego jako md0." - -#: grub-core/loader/xnu.c:1505 -msgid "Load a splash image for XNU." -msgstr "Wczytuje obraz powitalny dla systemu XNU." - -#: grub-core/loader/xnu.c:1510 -msgid "Load an image of hibernated XNU." -msgstr "Wczytuje obraz zahibernowanego systemu XNU." - -#: grub-core/mmap/mmap.c:538 -msgid "ADDR1,MASK1[,ADDR2,MASK2[,...]]" -msgstr "ADRES1,MASKA1[,ADRES2,MASKA2[,...]]" - -#: grub-core/mmap/mmap.c:539 -msgid "Declare memory regions as faulty (badram)." -msgstr "OkreÅ›la obszary pamiÄ™ci jako wadliwe (badram)." - -#: grub-core/mmap/mmap.c:541 -msgid "FROM[K|M|G] TO[K|M|G]" -msgstr "OD[K|M|G] DO[K|M|G]" - -#: grub-core/mmap/mmap.c:542 -msgid "Remove any memory regions in specified range." -msgstr "Usuwa wszystkie obszary pamiÄ™ci w podanym zakresie." - -#: grub-core/net/bootp.c:653 -msgid "four arguments expected" -msgstr "oczekiwano czterech argumentów" - -#: grub-core/net/bootp.c:661 grub-core/net/net.c:1155 -#, c-format -msgid "unrecognised network interface `%s'" -msgstr "nieznany interfejs sieciowy \"%s\"" - -#: grub-core/net/bootp.c:664 -msgid "no DHCP info found" -msgstr "nie znaleziono informacji DHCP" - -#: grub-core/net/bootp.c:674 -msgid "no DHCP options found" -msgstr "nie znaleziono opcji DHCP" - -#: grub-core/net/bootp.c:682 -msgid "invalid DHCP option code" -msgstr "błędny kod opcji DHCP" - -#: grub-core/net/bootp.c:686 -#, c-format -msgid "no DHCP option %u found" -msgstr "nie znaleziono opcji DHCP %u" - -#: grub-core/net/bootp.c:743 -#, c-format -msgid "unrecognised DHCP option format specification `%s'" -msgstr "nieznane okreÅ›lenie formatu opcji DHCP \"%s\"" - -#: grub-core/net/bootp.c:767 -msgid "no network card found" -msgstr "nie znaleziono karty sieciowej" - -#: grub-core/net/bootp.c:859 grub-core/net/net.c:389 -#, c-format -msgid "couldn't autoconfigure %s" -msgstr "nie udaÅ‚o siÄ™ automatycznie skonfigurować %s" - -#: grub-core/net/bootp.c:873 grub-core/net/bootp.c:876 -msgid "[CARD]" -msgstr "[KARTA]" - -#: grub-core/net/bootp.c:874 -msgid "perform a bootp autoconfiguration" -msgstr "wykonuje autokonfiguracjÄ™ bootp" - -#: grub-core/net/bootp.c:877 -msgid "perform a DHCP autoconfiguration" -msgstr "wykonuje autokonfiguracjÄ™ DHCP" - -#: grub-core/net/bootp.c:879 -msgid "VAR INTERFACE NUMBER DESCRIPTION" -msgstr "ZMIENNA INTERFEJS NUMER OPIS" - -#: grub-core/net/bootp.c:880 -msgid "" -"retrieve DHCP option and save it into VAR. If VAR is - then print the value." -msgstr "" -"pobiera opcjÄ™ DHCP i zapisuje do ZMIENNEJ. JeÅ›li ZMIENNA to -, wypisuje " -"wartość." - -#: grub-core/net/dns.c:459 -msgid "no DNS servers configured" -msgstr "brak skonfigurowanych serwerów DNS" - -#: grub-core/net/dns.c:522 -msgid "domain name component is too long" -msgstr "element nazwy domeny jest zbyt dÅ‚ugi" - -#: grub-core/net/dns.c:618 grub-core/net/dns.c:666 -msgid "no DNS record found" -msgstr "nie znaleziono rekordu DNS" - -#: grub-core/net/dns.c:626 -msgid "no DNS reply received" -msgstr "nie otrzymano odpowiedzi DNS" - -#: grub-core/net/dns.c:682 -msgid "only ipv4" -msgstr "tylko IPv4" - -#: grub-core/net/dns.c:686 -msgid "only ipv6" -msgstr "tylko IPv6" - -#: grub-core/net/dns.c:690 -msgid "prefer ipv4" -msgstr "preferowane IPv4" - -#: grub-core/net/dns.c:694 -msgid "prefer ipv6" -msgstr "preferowane IPv6" - -#: grub-core/net/dns.c:759 -msgid "ADDRESS DNSSERVER" -msgstr "ADRES SERWER_DNS" - -#: grub-core/net/dns.c:760 -msgid "Perform a DNS lookup" -msgstr "Wykonuje zapytanie DNS" - -#: grub-core/net/dns.c:762 grub-core/net/dns.c:765 -msgid "DNSSERVER" -msgstr "SERWER_DNS" - -#: grub-core/net/dns.c:763 -msgid "Add a DNS server" -msgstr "Dodaje serwer DNS" - -#: grub-core/net/dns.c:766 -msgid "Remove a DNS server" -msgstr "Usuwa serwer DNS" - -#: grub-core/net/dns.c:768 -msgid "List DNS servers" -msgstr "WyÅ›wietla listÄ™ serwerów DNS" - -#: grub-core/net/drivers/efi/efinet.c:49 grub-core/net/drivers/efi/efinet.c:65 -#: grub-core/net/drivers/efi/efinet.c:77 grub-core/net/drivers/emu/emunet.c:62 -#: grub-core/net/drivers/i386/pc/pxe.c:273 -#: grub-core/net/drivers/ieee1275/ofnet.c:75 -#: grub-core/net/drivers/uboot/ubootnet.c:62 -msgid "couldn't send network packet" -msgstr "nie udaÅ‚o siÄ™ wysÅ‚ać pakietu sieciowego" - -#: grub-core/net/drivers/ieee1275/ofnet.c:326 -#: grub-core/net/drivers/ieee1275/ofnet.c:359 -msgid "interpret is not supported" -msgstr "interpret nie jest obsÅ‚ugiwane" - -#: grub-core/net/drivers/ieee1275/ofnet.c:336 -msgid "alloc-mem failed" -msgstr "alloc-mem nie powiodÅ‚o siÄ™" - -#: grub-core/net/drivers/ieee1275/ofnet.c:370 -msgid "free-mem failed" -msgstr "free-mem nie powiodÅ‚o siÄ™" - -#: grub-core/net/http.c:105 -msgid "unsupported HTTP response" -msgstr "nieobsÅ‚ugiwana odpowiedź HTTP" - -#. TRANSLATORS: GRUB HTTP code is pretty young. So even perfectly -#. valid answers like 403 will trigger this very generic message. -#: grub-core/net/http.c:126 -#, c-format -msgid "unsupported HTTP error %d: %s" -msgstr "nieobsÅ‚ugiwany błąd HTTP %d: %s" - -#: grub-core/net/http.c:429 grub-core/net/tftp.c:420 -#, c-format -msgid "time out opening `%s'" -msgstr "przekroczony limit czasu przy otwieraniu \"%s\"" - -#: grub-core/net/net.c:179 -msgid "timeout: could not resolve hardware address" -msgstr "przekroczony limit czasu: nie udaÅ‚o siÄ™ rozwiÄ…zać adresu sprzÄ™towego" - -#: grub-core/net/net.c:548 -#, c-format -msgid "unresolvable address %s" -msgstr "adres niemożliwy do rozwiÄ…zania: %s" - -#: grub-core/net/net.c:594 -#, c-format -msgid "unrecognised network address `%s'" -msgstr "nieznany adres sieciowy \"%s\"" - -#: grub-core/net/net.c:661 -msgid "destination unreachable" -msgstr "cel nieosiÄ…galny" - -#. TRANSLATORS: route loop is a condition when e.g. -#. to contact server A you need to go through B -#. and to contact B you need to go through A. -#: grub-core/net/net.c:684 -msgid "route loop detected" -msgstr "wykryto pÄ™tlÄ™ na trasie" - -#: grub-core/net/net.c:700 -msgid "address not found" -msgstr "nie znaleziono adresu" - -#: grub-core/net/net.c:704 -msgid "you can't delete this address" -msgstr "tego adresu nie można usunąć" - -#: grub-core/net/net.c:776 grub-core/net/net.c:792 -#, c-format -msgid "Unsupported hw address type %d\n" -msgstr "NieobsÅ‚ugiwany typ adresu sprzÄ™towego %d\n" - -#: grub-core/net/net.c:813 -#, c-format -msgid "Unsupported address type %d\n" -msgstr "NieobsÅ‚ugiwany typ adresu %d\n" - -#: grub-core/net/net.c:1017 grub-core/net/net.c:1131 -msgid "three arguments expected" -msgstr "oczekiwano trzech argumentów" - -#: grub-core/net/net.c:1023 -msgid "card not found" -msgstr "nie znaleziono karty" - -#. TRANSLATORS: it refers to the network address. -#: grub-core/net/net.c:1167 -msgid "temporary" -msgstr "tymczasowy" - -#: grub-core/net/net.c:1190 -#, c-format -msgid "Unknown address type %d\n" -msgstr "Nieznany typ adresu %d\n" - -#: grub-core/net/net.c:1298 -msgid "no server is specified" -msgstr "nie podano serwera" - -#: grub-core/net/net.c:1637 -#, c-format -msgid "timeout reading `%s'" -msgstr "przekroczony limit czasu podczas odczytu \"%s\"" - -#. TRANSLATORS: HWADDRESS stands for -#. "hardware address". -#: grub-core/net/net.c:1762 -msgid "SHORTNAME CARD ADDRESS [HWADDRESS]" -msgstr "KRÓTKA_NAZWA KARTA ADRES [ADRES_SPRZĘTOWY]" - -#: grub-core/net/net.c:1763 -msgid "Add a network address." -msgstr "Dodaje adres sieciowy." - -#: grub-core/net/net.c:1766 -msgid "[CARD [HWADDRESS]]" -msgstr "[KARTA [ADRES_SPRZĘTOWY]]" - -#: grub-core/net/net.c:1767 -msgid "Perform an IPV6 autoconfiguration" -msgstr "Wykonuje autokonfiguracjÄ™ IPV6" - -#: grub-core/net/net.c:1770 grub-core/net/net.c:1777 -msgid "SHORTNAME" -msgstr "KRÓTKA_NAZWA" - -#: grub-core/net/net.c:1771 -msgid "Delete a network address." -msgstr "Usuwa adres sieciowy." - -#. TRANSLATORS: "gw" is a keyword. -#: grub-core/net/net.c:1774 -msgid "SHORTNAME NET [INTERFACE| gw GATEWAY]" -msgstr "KRÓTKA_NAZWA SIEĆ [INTERFEJS| gw BRAMKA]" - -#: grub-core/net/net.c:1775 -msgid "Add a network route." -msgstr "Dodaje trasÄ™ sieciowÄ…." - -#: grub-core/net/net.c:1778 -msgid "Delete a network route." -msgstr "Usuwa trasÄ™ sieciowÄ…." - -#: grub-core/net/net.c:1780 -msgid "list network routes" -msgstr "wypisuje listÄ™ tras" - -#: grub-core/net/net.c:1782 -msgid "list network cards" -msgstr "wypisuje karty sieciowe" - -#: grub-core/net/net.c:1784 -msgid "list network addresses" -msgstr "wypisuje adresy sieciowe" - -#: grub-core/net/tcp.c:681 -msgid "connection refused" -msgstr "połączenie odrzucone" - -#: grub-core/net/tcp.c:684 -msgid "connection timeout" -msgstr "przekroczony limit czasu połączenia" - -#: grub-core/normal/auth.c:220 -msgid "Enter username: " -msgstr "Nazwa użytkownika: " - -#: grub-core/normal/auth.c:269 -msgid "[USERLIST]" -msgstr "[LISTA_UÅ»YTKOWNIKÓW]" - -#: grub-core/normal/auth.c:270 -msgid "Check whether user is in USERLIST." -msgstr "Sprawdza, czy użytkownik jest na LIÅšCIE_UÅ»YTKOWNIKÓW." - -#: grub-core/normal/cmdline.c:174 grub-core/normal/menu_entry.c:1068 -msgid "Possible commands are:" -msgstr "Możliwe polecenia:" - -#: grub-core/normal/cmdline.c:177 grub-core/normal/menu_entry.c:1072 -msgid "Possible devices are:" -msgstr "Możliwe urzÄ…dzenia:" - -#: grub-core/normal/cmdline.c:180 grub-core/normal/menu_entry.c:1076 -msgid "Possible files are:" -msgstr "Możliwe pliki:" - -#: grub-core/normal/cmdline.c:183 grub-core/normal/menu_entry.c:1080 -msgid "Possible partitions are:" -msgstr "Możliwe partycje:" - -#: grub-core/normal/cmdline.c:186 grub-core/normal/menu_entry.c:1084 -msgid "Possible arguments are:" -msgstr "Możliwe parametry:" - -#. TRANSLATORS: this message is used if none of above matches. -#. This shouldn't happen but please use the general term for -#. "thing" or "object". -#: grub-core/normal/cmdline.c:192 grub-core/normal/menu_entry.c:1088 -msgid "Possible things are:" -msgstr "Możliwe sÄ…:" - -#: grub-core/normal/color.c:81 -#, c-format -msgid "Warning: syntax error (missing slash) in `%s'\n" -msgstr "Ostrzeżenie: błąd skÅ‚adni (brak ukoÅ›nika) w \"%s\"\n" - -#: grub-core/normal/color.c:90 -#, c-format -msgid "Warning: invalid foreground color `%s'\n" -msgstr "Ostrzeżenie: nieprawidÅ‚owy kolor tekstu \"%s\"\n" - -#: grub-core/normal/color.c:96 -#, c-format -msgid "Warning: invalid background color `%s'\n" -msgstr "Ostrzeżenie: nieprawidÅ‚owy kolor tÅ‚a \"%s\"\n" - -#: grub-core/normal/context.c:206 -msgid "ENVVAR [ENVVAR] ..." -msgstr "ZMIENNA_ÅšRODOWISKOWA [ZMIENNA_ÅšRODOWISKOWA]..." - -#: grub-core/normal/context.c:207 -msgid "Export variables." -msgstr "Eksportuje zmienne." - -#: grub-core/normal/datetime.c:25 -msgid "Sunday" -msgstr "Niedziela" - -#: grub-core/normal/datetime.c:26 -msgid "Monday" -msgstr "PoniedziaÅ‚ek" - -#: grub-core/normal/datetime.c:27 -msgid "Tuesday" -msgstr "Wtorek" - -#: grub-core/normal/datetime.c:28 -msgid "Wednesday" -msgstr "Åšroda" - -#: grub-core/normal/datetime.c:29 -msgid "Thursday" -msgstr "Czwartek" - -#: grub-core/normal/datetime.c:30 -msgid "Friday" -msgstr "PiÄ…tek" - -#: grub-core/normal/datetime.c:31 -msgid "Saturday" -msgstr "Sobota" - -#: grub-core/normal/dyncmd.c:187 -msgid "module isn't loaded" -msgstr "nie wczytano moduÅ‚u" - -#: grub-core/normal/main.c:211 -#, c-format -msgid "GNU GRUB version %s" -msgstr "GNU GRUB wersja %s" - -#: grub-core/normal/main.c:360 -msgid "ESC at any time exits." -msgstr "WciÅ›niÄ™cie klawisza Esc w każdej chwili powoduje zakoÅ„czenie." - -#: grub-core/normal/main.c:363 -#, c-format -msgid "" -"Minimal BASH-like line editing is supported. For the first word, TAB lists " -"possible command completions. Anywhere else TAB lists possible device or " -"file completions. %s" -msgstr "" -"ObsÅ‚ugiwane jest minimalne modyfikowanie wierszy w stylu powÅ‚oki Bash. " -"NaciÅ›niÄ™cie klawisza Tab wyÅ›wietla listÄ™ możliwych uzupeÅ‚nieÅ„ polecenia po " -"wpisaniu pierwszego sÅ‚owa. W innych miejscach naciÅ›niÄ™cie klawisza Tab " -"wyÅ›wietla listÄ™ możliwych uzupeÅ‚nieÅ„ urzÄ…dzeÅ„ lub plików. %s" - -#. TRANSLATORS: it's command line prompt. -#: grub-core/normal/main.c:395 -msgid ">" -msgstr ">" - -#. TRANSLATORS: it's command line prompt. -#: grub-core/normal/main.c:398 -msgid "grub>" -msgstr "grub>" - -#: grub-core/normal/main.c:518 -msgid "Clear the screen." -msgstr "CzyÅ›ci ekran." - -#: grub-core/normal/main.c:527 -msgid "Enter normal mode." -msgstr "Przechodzi do zwykÅ‚ego trybu." - -#: grub-core/normal/main.c:529 -msgid "Exit from normal mode." -msgstr "Wychodzi ze zwykÅ‚ego trybu." - -#: grub-core/normal/menu.c:66 grub-core/normal/menu_entry.c:1449 -msgid "Press any key to continue..." -msgstr "NaciÅ›niÄ™cie dowolnego klawisza kontynuuje..." - -#: grub-core/normal/menu.c:815 -#, c-format -msgid "Booting `%s'" -msgstr "Uruchamianie \"%s\"" - -#: grub-core/normal/menu.c:827 -#, c-format -msgid "Falling back to `%s'" -msgstr "Powracanie do \"%s\"" - -#: grub-core/normal/menu.c:843 -msgid "Failed to boot both default and fallback entries.\n" -msgstr "Uruchomienie domyÅ›lnych i zapasowych wpisów siÄ™ nie powiodÅ‚o.\n" - -#: grub-core/normal/menu_entry.c:1171 -msgid "Booting a command list" -msgstr "Uruchamianie listy poleceÅ„" - -#: grub-core/normal/menu_text.c:160 -msgid "" -"Minimum Emacs-like screen editing is supported. TAB lists completions. Press " -"Ctrl-x or F10 to boot, Ctrl-c or F2 for a command-line or ESC to discard " -"edits and return to the GRUB menu." -msgstr "" -"ObsÅ‚ugiwane jest minimalne modyfikowanie ekrany w stylu programu Emacs. " -"NaciÅ›niÄ™cie klawisza Tab wyÅ›wietla uzupeÅ‚nienia. NaciÅ›niÄ™cie Ctrl-X " -"uruchamia, Ctrl-C lub F2 powoduje przejÅ›cie do wiersza poleceÅ„, a Esc " -"odrzuca zmiany i powoduje powrót do menu programu GRUB." - -#: grub-core/normal/menu_text.c:170 -#, c-format -msgid "Use the %C and %C keys to select which entry is highlighted." -msgstr "Należy użyć klawiszy %C i %C, aby wybrać wyróżniony wpis." - -#. TRANSLATORS: that's the list of binary unit prefixes. -#: grub-core/normal/misc.c:38 -msgid "B" -msgstr "B" - -#: grub-core/normal/misc.c:38 -msgid "KiB" -msgstr "KiB" - -#: grub-core/normal/misc.c:38 -msgid "MiB" -msgstr "MiB" - -#: grub-core/normal/misc.c:38 -msgid "GiB" -msgstr "GiB" - -#: grub-core/normal/misc.c:38 -msgid "TiB" -msgstr "TiB" - -#: grub-core/normal/misc.c:38 -msgid "PiB" -msgstr "PiB" - -#. TRANSLATORS: that's the list of binary unit prefixes. -#: grub-core/normal/misc.c:40 -msgid "K" -msgstr "k" - -#: grub-core/normal/misc.c:40 -msgid "M" -msgstr "M" - -#: grub-core/normal/misc.c:40 -msgid "G" -msgstr "G" - -#: grub-core/normal/misc.c:40 -msgid "T" -msgstr "T" - -#: grub-core/normal/misc.c:40 -msgid "P" -msgstr "P" - -#. TRANSLATORS: that's the list of binary unit prefixes. -#: grub-core/normal/misc.c:42 -msgid "B/s" -msgstr "B/s" - -#: grub-core/normal/misc.c:42 -msgid "KiB/s" -msgstr "KiB/s" - -#: grub-core/normal/misc.c:42 -msgid "MiB/s" -msgstr "MiB/s" - -#: grub-core/normal/misc.c:42 -msgid "GiB/s" -msgstr "GiB/s" - -#: grub-core/normal/misc.c:42 -msgid "TiB/s" -msgstr "TiB/s" - -#: grub-core/normal/misc.c:42 -msgid "PiB/s" -msgstr "PiB/s" - -#: grub-core/normal/misc.c:96 -#, c-format -msgid "Partition %s:" -msgstr "Partycja %s:" - -#: grub-core/normal/misc.c:101 -#, c-format -msgid "Device %s:" -msgstr "UrzÄ…dzenie %s:" - -#: grub-core/normal/misc.c:107 -msgid "Filesystem cannot be accessed" -msgstr "Nie można uzyskać dostÄ™pu do systemu plików" - -#: grub-core/normal/misc.c:121 -#, c-format -msgid "Filesystem type %s" -msgstr "Typ systemu plików %s" - -#: grub-core/normal/misc.c:131 -#, c-format -msgid "- Label `%s'" -msgstr "- etykieta \"%s\"" - -#. TRANSLATORS: Arguments are year, month, day, hour, minute, -#. second, day of the week (translated). -#: grub-core/normal/misc.c:148 -#, c-format -msgid "- Last modification time %d-%02d-%02d %02d:%02d:%02d %s" -msgstr "- czas ostatniej modyfikacji %d-%02d-%02d %02d:%02d:%02d %s" - -#: grub-core/normal/misc.c:171 -msgid "No known filesystem detected" -msgstr "Nie wykryto żadnego znanego systemu plików" - -#: grub-core/normal/misc.c:174 -#, c-format -msgid " - Partition start at %llu%sKiB" -msgstr " - partycja zaczyna siÄ™ od %llu%sKiB" - -#: grub-core/normal/misc.c:178 -#, c-format -msgid " - Sector size %uB" -msgstr " - rozmiar sektora %uB" - -#: grub-core/normal/misc.c:180 -msgid " - Total size unknown" -msgstr " - caÅ‚kowity rozmiar jest nieznany" - -#: grub-core/normal/misc.c:182 -#, c-format -msgid " - Total size %llu%sKiB" -msgstr " - caÅ‚kowity rozmiar w sektorach: %llu%sKiB" - -#. TRANSLATORS: Replace dot with appropriate decimal separator for -#. your language. -#: grub-core/normal/misc.c:186 -msgid ".5" -msgstr ",5" - -#. TRANSLATORS: This has to fit on one line. It's ok to include few -#. words but don't write poems. -#: grub-core/normal/term.c:82 -msgid "--MORE--" -msgstr "--DALEJ--" - -#: grub-core/osdep/aros/config.c:92 grub-core/osdep/unix/config.c:137 -#: grub-core/osdep/windows/config.c:55 -#, c-format -msgid "cannot open configuration file `%s': %s" -msgstr "nie można otworzyć pliku konfiguracyjnego \"%s\": %s" - -#: grub-core/osdep/basic/compress.c:8 grub-core/osdep/basic/compress.c:14 -#: grub-core/osdep/basic/compress.c:20 -msgid "no compression is available for your platform" -msgstr "brak kompresji dla tej platformy" - -#: grub-core/osdep/basic/no_platform.c:30 -#: grub-core/osdep/windows/platform.c:418 -msgid "no IEEE1275 routines are available for your platform" -msgstr "brak funkcji IEEE1275 dla tej platformy" - -#: grub-core/osdep/basic/no_platform.c:38 -msgid "no EFI routines are available for your platform" -msgstr "brak funkcji EFI dla tej platformy" - -#: grub-core/osdep/basic/no_platform.c:45 -#: grub-core/osdep/windows/platform.c:425 -msgid "no SGI routines are available for your platform" -msgstr "brak funkcji SGI dla tej platformy" - -#. TRANSLATORS: The OS itself may very well have a random -#. number generator but GRUB doesn't know how to access it. -#: grub-core/osdep/basic/random.c:42 -msgid "no random number generator is available for your OS" -msgstr "brak generatora liczb losowych dla tego systemu operacyjnego" - -#: grub-core/osdep/devmapper/getroot.c:81 -msgid "Failed to create `device-mapper' tree" -msgstr "Nie udaÅ‚o siÄ™ utworzyć drzewa device-mappera" - -#: grub-core/osdep/devmapper/getroot.c:197 -#: grub-core/osdep/freebsd/getroot.c:202 -#, c-format -msgid "can't mount encrypted volume `%s': %s" -msgstr "nie można zamontować zaszyfrowanego wolumenu \"%s\": %s" - -#. TRANSLATORS: geom is the name of (k)FreeBSD device framework. -#. Usually left untranslated. -#. -#: grub-core/osdep/freebsd/getroot.c:82 grub-core/osdep/freebsd/getroot.c:164 -#: grub-core/osdep/freebsd/getroot.c:258 grub-core/osdep/freebsd/getroot.c:316 -msgid "couldn't open geom" -msgstr "nie udaÅ‚o siÄ™ otworzyć geom" - -#: grub-core/osdep/freebsd/getroot.c:182 grub-core/osdep/freebsd/getroot.c:277 -msgid "couldn't find geli consumer" -msgstr "nie udaÅ‚o siÄ™ odnaleźć konsumenta geli" - -#: grub-core/osdep/freebsd/getroot.c:282 -msgid "couldn't retrieve geli UUID" -msgstr "nie udaÅ‚o siÄ™ odczytać UUID-a geli" - -#. TRANSLATORS: geom is the name of (k)FreeBSD device framework. -#. Usually left untranslated. "part" is the identifier of one of its -#. classes. -#: grub-core/osdep/freebsd/getroot.c:325 -msgid "couldn't find geom `part' class" -msgstr "nie udaÅ‚o siÄ™ odnaleźć klasy \"part\" geom" - -#: grub-core/osdep/freebsd/hostdisk.c:72 grub-core/osdep/linux/hostdisk.c:93 -msgid "unaligned device size" -msgstr "niewyrównany rozmiar urzÄ…dzenia" - -#: grub-core/osdep/generic/blocklist.c:56 -#, c-format -msgid "attempting to read the core image `%s' from GRUB" -msgstr "próba odczytania obrazu core \"%s\" z programu GRUB" - -#: grub-core/osdep/generic/blocklist.c:57 -#, c-format -msgid "attempting to read the core image `%s' from GRUB again" -msgstr "ponowna próba odczytania obrazu core \"%s\" z programu GRUB" - -#: grub-core/osdep/generic/blocklist.c:115 -#, c-format -msgid "cannot read `%s' correctly" -msgstr "nie można poprawnie odczytać \"%s\"" - -#: grub-core/osdep/generic/blocklist.c:126 -msgid "failed to read the sectors of the core image" -msgstr "odczytanie sektorów obrazu core nie powiodÅ‚o siÄ™" - -#. TRANSLATORS: On GNU/Hurd, a "translator" is similar to a filesystem -#. mount, but handled by a userland daemon, whose invocation command line -#. is being fetched here. First %s is the file being looked at (for which -#. we are fetching the "translator" command line), second %s is the error -#. message. -#. -#: grub-core/osdep/hurd/getroot.c:79 -#, c-format -msgid "cannot get translator command line for path `%s': %s" -msgstr "nie można uzyskać linii poleceÅ„ translatora dla Å›cieżki \"%s\": %s" - -#: grub-core/osdep/hurd/getroot.c:82 -#, c-format -msgid "translator command line is empty for path `%s'" -msgstr "linia poleceÅ„ translatora dla Å›cieżki \"%s\" jest pusta" - -#. TRANSLATORS: we expect to get something like -#. /hurd/foobar --option1 --option2=baz /dev/something -#. -#: grub-core/osdep/hurd/getroot.c:98 -#, c-format -msgid "" -"translator `%s' for path `%s' has several non-option words, at least `%s' " -"and `%s'" -msgstr "" -"translator \"%s\" dla Å›cieżki \"%s\" ma kilka parametrów nie bÄ™dÄ…cych " -"opcjami, co najmniej \"%s\" i \"%s\"" - -#. TRANSLATORS: we expect to get something like -#. /hurd/foobar --option1 --option2=baz /dev/something -#. -#: grub-core/osdep/hurd/getroot.c:109 -#, c-format -msgid "" -"translator `%s' for path `%s' is given only options, cannot find device part" -msgstr "" -"translator \"%s\" dla Å›cieżki \"%s\" ma tylko opcje, nie znaleziono " -"urzÄ…dzenia" - -#: grub-core/osdep/hurd/hostdisk.c:73 -#, c-format -msgid "Storage information for `%s' does not include type" -msgstr "Informacje o przestrzeni danych dla \"%s\" nie zawierajÄ… typu" - -#: grub-core/osdep/hurd/hostdisk.c:75 -#, c-format -msgid "`%s' is not a local disk" -msgstr "\"%s\" nie jest dyskiem lokalnym" - -#: grub-core/osdep/hurd/hostdisk.c:78 -#, c-format -msgid "" -"Storage information for `%s' indicates neither a plain partition nor a plain " -"disk" -msgstr "" -"Informacje o przestrzeni danych dla \"%s\" nie okreÅ›lajÄ… zwykÅ‚ej partycji " -"ani zwykÅ‚ego dysku" - -#: grub-core/osdep/linux/blocklist.c:81 grub-core/osdep/linux/blocklist.c:96 -#: grub-core/osdep/linux/blocklist.c:122 -#, c-format -msgid "can't retrieve blocklists: %s" -msgstr "nie udaÅ‚o siÄ™ odczytać list bloków: %s" - -#: grub-core/osdep/linux/blocklist.c:84 -msgid "blocksize is not divisible by 512" -msgstr "rozmiar bloku nie jest podzielny przez 512" - -#: grub-core/osdep/linux/blocklist.c:86 -msgid "invalid zero blocksize" -msgstr "błędny zerowy rozmiar bloku" - -#: grub-core/osdep/linux/blocklist.c:90 util/setup.c:744 -msgid "can't retrieve blocklists" -msgstr "nie udaÅ‚o siÄ™ odczytać list bloków" - -#: grub-core/osdep/linux/getroot.c:154 -#, c-format -msgid "ioctl RAID_VERSION error: %s" -msgstr "błąd ioctl-a RAID_VERSION: %s" - -#: grub-core/osdep/linux/getroot.c:160 grub-core/osdep/linux/getroot.c:164 -#, c-format -msgid "unsupported RAID version: %d.%d" -msgstr "nieobsÅ‚ugiwana wersja RAID: %d.%d" - -#: grub-core/osdep/linux/getroot.c:169 -#, c-format -msgid "ioctl GET_ARRAY_INFO error: %s" -msgstr "błąd ioctl-a GET_ARRAY_INFO: %s" - -#: grub-core/osdep/linux/getroot.c:178 -#, c-format -msgid "ioctl GET_DISK_INFO error: %s" -msgstr "błąd ioctl-a GET_DISK_INFO: %s" - -#: grub-core/osdep/linux/getroot.c:608 grub-core/osdep/linux/getroot.c:678 -#: grub-core/osdep/linux/hostdisk.c:126 grub-core/osdep/unix/getroot.c:253 -#: grub-core/osdep/unix/getroot.c:642 grub-core/osdep/unix/platform.c:92 -#: grub-core/osdep/unix/platform.c:100 -#, c-format -msgid "Unable to open stream from %s: %s" -msgstr "Nie udaÅ‚o siÄ™ otworzyć strumienia z polecenia %s: %s" - -#: grub-core/osdep/linux/getroot.c:1033 -#, c-format -msgid "unknown kind of RAID device `%s'" -msgstr "nieznany rodzaj urzÄ…dzenia RAID \"%s\"" - -#: grub-core/osdep/linux/ofpath.c:181 -#, c-format -msgid "`obppath' not found in parent dirs of `%s', no IEEE1275 name discovery" -msgstr "" -"nie znaleziono \"obppath\" w katalogach powyżej %s ani przy wykrywaniu nazw " -"IEEE1275" - -#: grub-core/osdep/linux/ofpath.c:222 grub-core/osdep/unix/getroot.c:505 -#: grub-core/osdep/unix/getroot.c:529 grub-core/osdep/unix/relpath.c:49 -#: util/grub-install.c:984 util/grub-install.c:1331 util/grub-probe.c:323 -#, c-format -msgid "failed to get canonical path of `%s'" -msgstr "nie udaÅ‚o siÄ™ uzyskać znormalizowanej Å›cieżki \"%s\"" - -#: grub-core/osdep/linux/ofpath.c:740 -#, c-format -msgid "unknown device type %s" -msgstr "nieznany typ urzÄ…dzenia %s" - -#: grub-core/osdep/linux/ofpath.c:758 util/ieee1275/grub-ofpathname.c:39 -#, c-format -msgid "Usage: %s DEVICE\n" -msgstr "SkÅ‚adnia: %s URZÄ„DZENIE\n" - -#: grub-core/osdep/unix/exec.c:86 grub-core/osdep/unix/exec.c:172 -#: grub-core/osdep/unix/exec.c:217 -#, c-format -msgid "Unable to fork: %s" -msgstr "Nie udaÅ‚o siÄ™ utworzyć procesu: %s" - -#: grub-core/osdep/unix/exec.c:166 grub-core/osdep/unix/exec.c:211 -#, c-format -msgid "Unable to create pipe: %s" -msgstr "Nie udaÅ‚o siÄ™ utworzyć potoku: %s" - -#: grub-core/osdep/unix/getroot.c:370 -msgid "cannot save the original directory" -msgstr "nie można zapisać pierwotnego katalogu" - -#: grub-core/osdep/unix/getroot.c:423 grub-core/osdep/unix/getroot.c:480 -#: grub-core/osdep/unix/getroot.c:489 -msgid "cannot restore the original directory" -msgstr "nie można przywrócić pierwotnego katalogu" - -#. TRANSLATORS: "stat" comes from the name of POSIX function. -#: grub-core/osdep/unix/getroot.c:551 grub-core/osdep/unix/hostdisk.c:61 -#: grub-core/osdep/unix/relpath.c:73 grub-core/osdep/unix/relpath.c:97 -#: util/getroot.c:160 util/getroot.c:162 util/grub-install.c:774 -#: util/grub-macbless.c:70 -#, c-format -msgid "cannot stat `%s': %s" -msgstr "nie można wykonać stat na \"%s\": %s" - -#: grub-core/osdep/unix/hostdisk.c:293 -#, c-format -msgid "cannot make temporary file: %s" -msgstr "nie można utworzyć pliku tymczasowego: %s" - -#: grub-core/osdep/unix/hostdisk.c:311 -#, c-format -msgid "cannot make temporary directory: %s" -msgstr "nie można utworzyć katalogu tymczasowego: %s" - -#: grub-core/osdep/unix/platform.c:77 -#, c-format -msgid "" -"couldn't find IEEE1275 device path for %s.\n" -"You will have to set `boot-device' variable manually" -msgstr "" -"nie udaÅ‚o siÄ™ odnaleźć Å›cieżki urzÄ…dzenia IEEE1275 dla %s.\n" -"Należy rÄ™cznie ustawić zmiennÄ… \"boot-device\"" - -#. TRANSLATORS: This message is shown when required executable `%s' -#. isn't found. -#: grub-core/osdep/unix/platform.c:149 grub-core/osdep/unix/platform.c:189 -#, c-format -msgid "%s: not found" -msgstr "%s: nie odnaleziono" - -#: grub-core/osdep/unix/platform.c:225 -#, c-format -msgid "" -"`nvsetenv' failed. \n" -"You will have to set `boot-device' variable manually. At the IEEE1275 " -"prompt, type:\n" -" %s\n" -msgstr "" -"\"nvsetenv\" nie powiodÅ‚o siÄ™.\n" -"Należy rÄ™cznie ustawić zmiennÄ… \"boot-device\". Po znaku zachÄ™ty IEEE1275 " -"proszÄ™ wpisać:\n" -" %s\n" - -#: grub-core/osdep/unix/platform.c:240 -msgid "You will have to set `SystemPartition' and `OSLoader' manually." -msgstr "Należy rÄ™cznie ustawić \"SystemPartition\" i \"OSLoader\"." - -#. TRANSLATORS: canonical pathname is the -#. complete one e.g. /etc/fstab. It has -#. to contain `/' normally, if it doesn't -#. we're in trouble and throw this error. -#: grub-core/osdep/unix/relpath.c:90 -msgid "no `/' in canonical filename" -msgstr "brak \"/\" w znormalizowanej nazwie pliku" - -#: grub-core/osdep/windows/hostdisk.c:151 -msgid "cygwin_conv_path() failed" -msgstr "cygwin_conv_path() nie powiodÅ‚o siÄ™" - -#: grub-core/osdep/windows/hostdisk.c:501 util/grub-install.c:570 -msgid "couldn't retrieve random data" -msgstr "nie udaÅ‚o siÄ™ odczytać danych losowych" - -#: grub-core/osdep/windows/platform.c:97 -msgid "Insufficient privileges to access firmware, assuming BIOS" -msgstr "" -"NiewystarczajÄ…ce uprawnienia do dostÄ™pu do firmware, przyjÄ™cie trybu BIOS" - -#: grub-core/osdep/windows/platform.c:225 -msgid "no EFI routines are available when running in BIOS mode" -msgstr "funkcje EFI nie sÄ… dostÄ™pne przy dziaÅ‚aniu w trybie BIOS" - -#: grub-core/osdep/windows/platform.c:240 -msgid "unexpected EFI error" -msgstr "nieoczekiwany błąd EFI" - -#: grub-core/osdep/windows/platform.c:315 -msgid "Couldn't find a free BootNNNN slot" -msgstr "Nie udaÅ‚o siÄ™ odnaleźć wolnego miejsca BootNNNN" - -#: grub-core/partmap/gpt.c:191 -msgid "" -"this GPT partition label contains no BIOS Boot Partition; embedding won't be " -"possible" -msgstr "" -"ta etykieta partycji GPT nie ma BIOS-wej partycji rozruchowej; osadzanie nie " -"bÄ™dzie możliwe" - -#: grub-core/partmap/gpt.c:196 -msgid "your BIOS Boot Partition is too small; embedding won't be possible" -msgstr "" -"BIOS-owa partycja rozruchowa jest zbyt maÅ‚a; osadzanie nie bÄ™dzie możliwe" - -#. TRANSLATORS: MBR gap and boot track is the same thing and is the space -#. between MBR and first partitition. If your language translates well only -#. "boot track", you can just use it everywhere. Next two messages are about -#. RAID controllers/software bugs which GRUB has to live with. Please spread -#. the message that these are bugs in other software and not merely -#. suboptimal behaviour. -#: grub-core/partmap/msdos.c:51 -#, c-format -msgid "" -"Sector %llu is already in use by raid controller `%s'; avoiding it. Please " -"ask the manufacturer not to store data in MBR gap" -msgstr "" -"Sektor %llu jest już używany przez kontroler RAID \"%s\"; pominiÄ™to go. " -"ProszÄ™ skontaktować siÄ™ z producentem, aby nie zapisywaÅ‚ danych w odstÄ™pie " -"za MBR" - -#: grub-core/partmap/msdos.c:54 -#, c-format -msgid "" -"Sector %llu is already in use by the program `%s'; avoiding it. This " -"software may cause boot or other problems in future. Please ask its authors " -"not to store data in the boot track" -msgstr "" -"Sektor %llu jest już używany przez program \"%s\"; pominiÄ™to go. To " -"oprogramowanie może powodować w przyszÅ‚oÅ›ci problemy z uruchomieniem systemu " -"lub innego rodzaju. ProszÄ™ poprosić autorów o nie zapisywanie danych na " -"Å›cieżce rozruchowej" - -#: grub-core/partmap/msdos.c:384 -msgid "" -"other software is using the embedding area, and there is not enough room for " -"core.img. Such software is often trying to store data in a way that avoids " -"detection. We recommend you investigate" -msgstr "" -"inne oprogramowanie używa obszaru osadzania i nie ma wystarczajÄ…co dużo " -"miejsca na core.img. Takie oprogramowanie zwykle próbuje zapisać dane w " -"sposób zapobiegajÄ…cy wykryciu. Zalecamy to wyjaÅ›nić" - -#: grub-core/partmap/msdos.c:395 -msgid "" -"this msdos-style partition label has no post-MBR gap; embedding won't be " -"possible" -msgstr "" -"ta etykieta partycji typu MSDOS nie ma przerwy za MBR; osadzanie nie bÄ™dzie " -"możliwe" - -#: grub-core/partmap/msdos.c:404 -msgid "your embedding area is unusually small. core.img won't fit in it." -msgstr "obszar osadzania jest niezwykle maÅ‚y. core.img nie zmieÅ›ci siÄ™ w nim." - -#: grub-core/parttool/msdospart.c:39 -msgid "Make partition active" -msgstr "Czyni partycjÄ™ aktywnÄ…" - -#: grub-core/parttool/msdospart.c:51 -msgid "not a primary partition" -msgstr "to nie jest partycja główna" - -#: grub-core/parttool/msdospart.c:69 -#, c-format -msgid "Partition %d is active now. \n" -msgstr "Partycja %d jest teraz aktywna. \n" - -#: grub-core/parttool/msdospart.c:74 -#, c-format -msgid "Cleared active flag on %d. \n" -msgstr "UsuniÄ™to flagÄ™ aktywnoÅ›ci z %d. \n" - -#: grub-core/parttool/msdospart.c:87 -msgid "Change partition type" -msgstr "Zmienia typ partycji" - -#: grub-core/parttool/msdospart.c:88 -msgid "Set `hidden' flag in partition type" -msgstr "Ustawia flagÄ™ partycji ukrytej" - -#: grub-core/parttool/msdospart.c:130 -#, c-format -msgid "the partition type 0x%x isn't valid" -msgstr "typ partycji 0x%x jest nieprawidÅ‚owy" - -#. TRANSLATORS: In this case we're actually writing to the disk and actively -#. modifying partition type rather than just defining it. -#: grub-core/parttool/msdospart.c:137 -#, c-format -msgid "Setting partition type to 0x%x\n" -msgstr "Ustawia typ partycji na 0x%x\n" - -#. TRANSLATORS: 0 is a quantifier. "break" (similar to bash) -#. can be used e.g. to break 3 loops at once. -#. But asking it to break 0 loops makes no sense. -#: grub-core/script/execute.c:143 -msgid "can't break 0 loops" -msgstr "nie można przerwać 0 pÄ™tli" - -#. TRANSLATORS: It's about not being -#. inside a function. "return" can be used only -#. in a function and this error occurs if it's used -#. anywhere else. -#: grub-core/script/execute.c:227 -msgid "not in function body" -msgstr "poza ciaÅ‚em funkcji" - -#: grub-core/script/execute.c:371 -#, c-format -msgid "invalid variable name `%s'" -msgstr "błędna nazwa zmiennej \"%s\"" - -#: grub-core/script/execute.c:953 -msgid "cannot allocate command buffer" -msgstr "nie można przydzielić bufora polecenia" - -#: grub-core/script/lexer.c:144 util/grub-fstest.c:330 -msgid "unexpected end of file" -msgstr "nieoczekiwany koniec pliku" - -#: grub-core/script/main.c:55 grub-core/script/main.c:57 -#: grub-core/script/main.c:59 grub-core/script/main.c:67 -msgid "[NUM]" -msgstr "[LICZBA]" - -#: grub-core/script/main.c:55 -msgid "Exit from loops" -msgstr "KoÅ„czy dziaÅ‚anie pÄ™tli" - -#: grub-core/script/main.c:57 -msgid "Continue loops" -msgstr "Kontynuuje pÄ™tle" - -#. TRANSLATORS: Positional arguments are -#. arguments $0, $1, $2, ... -#: grub-core/script/main.c:62 -msgid "Shift positional parameters." -msgstr "Przesuwa parametry pozycyjne." - -#: grub-core/script/main.c:64 -msgid "[VALUE]..." -msgstr "[WARTOŚĆ]..." - -#: grub-core/script/main.c:65 -msgid "Set positional parameters." -msgstr "Ustawia parametry pozycyjne." - -#. TRANSLATORS: It's a command description -#. and "Return" is a verb, not a noun. The -#. command in question is "return" and -#. has exactly the same semanics as bash -#. equivalent. -#: grub-core/script/main.c:73 -msgid "Return from a function." -msgstr "Powraca z funkcji." - -#: grub-core/term/gfxterm_background.c:176 -msgid "[-m (stretch|normal)] FILE" -msgstr "[-m (stretch|normal)] PLIK" - -#: grub-core/term/gfxterm_background.c:177 -msgid "Load background image for active terminal." -msgstr "Wczytuje obraz tÅ‚a dla aktywnego terminala." - -#: grub-core/term/gfxterm_background.c:182 util/grub-install.c:302 -#: util/grub-install.c:303 util/grub-mkrescue.c:107 util/grub-mkrescue.c:108 -#: util/grub-render-label.c:61 util/grub-render-label.c:63 -msgid "COLOR" -msgstr "KOLOR" - -#: grub-core/term/gfxterm_background.c:183 -msgid "Set background color for active terminal." -msgstr "Ustawia kolor tÅ‚a dla aktywnego terminala." - -#: grub-core/term/i386/coreboot/cbmemc.c:139 -msgid "Show CBMEM console content." -msgstr "WyÅ›wietla zawartość konsoli CBMEM." - -#: grub-core/term/serial.c:57 -msgid "Set the serial unit." -msgstr "Ustawia jednostkÄ™ szeregowÄ…." - -#: grub-core/term/serial.c:58 -msgid "Set the serial port address." -msgstr "Ustawia adres portu szeregowego." - -#: grub-core/term/serial.c:59 -msgid "Set the serial port speed." -msgstr "Ustawia prÄ™dkość portu szeregowego." - -#: grub-core/term/serial.c:60 -msgid "Set the serial port word length." -msgstr "Ustawia dÅ‚ugość sÅ‚owa portu szeregowego." - -#: grub-core/term/serial.c:61 -msgid "Set the serial port parity." -msgstr "Ustawia parzystość portu szeregowego." - -#: grub-core/term/serial.c:62 -msgid "Set the serial port stop bits." -msgstr "Ustawia bity zatrzymania portu szeregowego." - -#: grub-core/term/serial.c:63 -msgid "Set the base frequency." -msgstr "Ustawia czÄ™stotliwość podstawowÄ…." - -#: grub-core/term/serial.c:64 -msgid "Enable/disable RTS/CTS." -msgstr "Włącza/wyłącza RTS/CTS." - -#: grub-core/term/serial.c:218 -#, c-format -msgid "serial port `%s' isn't found" -msgstr "nie znaleziono portu szeregowego \"%s\"" - -#: grub-core/term/serial.c:254 -msgid "unsupported serial port flow control" -msgstr "nieobsÅ‚ugiwane sterowanie przepÅ‚ywem danych dla portu szeregowego" - -#: grub-core/term/serial.c:429 -msgid "[OPTIONS...]" -msgstr "[OPCJE...]" - -#: grub-core/term/serial.c:430 -msgid "Configure serial port." -msgstr "Konfiguruje port szeregowy." - -#: grub-core/term/terminfo.c:184 -#, c-format -msgid "unknown terminfo type `%s'" -msgstr "nieznany typ terminfo \"%s\"" - -#: grub-core/term/terminfo.c:668 -msgid "ASCII" -msgstr "ASCII" - -#: grub-core/term/terminfo.c:671 -msgid "UTF-8" -msgstr "UTF-8" - -#. TRANSLATORS: visually ordered UTF-8 is a non-compliant encoding -#. based on UTF-8 with right-to-left languages written in reverse. -#. Used on some terminals. Normal UTF-8 is refered as -#. "logically-ordered UTF-8" by opposition. -#: grub-core/term/terminfo.c:677 -msgid "visually-ordered UTF-8" -msgstr "wizualnie porzÄ…dkowane UTF-8" - -#: grub-core/term/terminfo.c:680 -msgid "Unknown encoding" -msgstr "Nieznane kodowanie" - -#: grub-core/term/terminfo.c:684 -msgid "Current terminfo types:" -msgstr "Obecne typy terminfo:" - -#: grub-core/term/terminfo.c:699 -msgid "Terminal is ASCII-only [default]." -msgstr "Terminal obsÅ‚uguje tylko ASCII [domyÅ›lne]." - -#: grub-core/term/terminfo.c:700 -msgid "Terminal is logical-ordered UTF-8." -msgstr "Terminal obsÅ‚uguje logicznie porzÄ…dkowane UTF-8." - -#: grub-core/term/terminfo.c:701 -msgid "Terminal is visually-ordered UTF-8." -msgstr "Terminal obsÅ‚uguje wizualnie porzÄ…dkowane UTF-8." - -#: grub-core/term/terminfo.c:703 -msgid "Terminal has specified geometry." -msgstr "Terminal posiada podane wymiary." - -#. TRANSLATORS: "x" has to be entered in, like an identifier, so please don't -#. use better Unicode codepoints. -#: grub-core/term/terminfo.c:706 -msgid "WIDTHxHEIGHT." -msgstr "SZEROKOŚĆxWYSOKOŚĆ" - -#: grub-core/term/terminfo.c:746 -msgid "incorrect terminal dimensions specification" -msgstr "błędne okreÅ›lenie wymiarów terminala" - -#: grub-core/term/terminfo.c:776 -#, c-format -msgid "terminal %s isn't found or it's not handled by terminfo" -msgstr "nie znaleziono terminala %s lub nie jest obsÅ‚ugiwany przez terminfo" - -#: grub-core/term/terminfo.c:785 -msgid "[[-a|-u|-v] [-g WxH] TERM [TYPE]]" -msgstr "[[-a|-u|-v] [-g SxW] TERMINAL [TYP]]" - -#: grub-core/term/terminfo.c:786 -msgid "Set terminfo type of TERM to TYPE.\n" -msgstr "Ustawia TYP terminfo TERMINALA.\n" - -#. TRANSLATORS: this is the BLOCK-argument, not -#. environment block. -#: grub-core/tests/test_blockarg.c:49 -msgid "Print and execute block argument." -msgstr "WyÅ›wietla i wykonuje parametr blokowy." - -#. TRANSLATORS: We're speaking about bitmap images like -#. JPEG or PNG. -#: grub-core/video/bitmap.c:209 -#, c-format -msgid "bitmap file `%s' is of unsupported format" -msgstr "plik bitmapy \"%s\" nie jest w obsÅ‚ugiwanym formacie" - -#: grub-core/video/i386/pc/vbe.c:1191 -#, c-format -msgid " VBE info: version: %d.%d OEM software rev: %d.%d\n" -msgstr " informacje VBE: wersja %d.%d wer.oprogramowania OEM: %d.%d\n" - -#: grub-core/video/i386/pc/vbe.c:1198 -#, c-format -msgid " total memory: %d KiB\n" -msgstr " pamięć caÅ‚kowita: %d KiB\n" - -#: grub-core/video/video.c:596 grub-core/video/video.c:762 -msgid "no suitable video mode found" -msgstr "nie znaleziono pasujÄ…cego trybu graficznego" - -#: include/grub/crypto.h:403 -msgid "access denied" -msgstr "brak dostÄ™pu" - -#: include/grub/util/install.h:30 include/grub/util/install.h:35 -msgid "MODULES" -msgstr "MODUÅY" - -#: include/grub/util/install.h:31 -msgid "pre-load specified modules MODULES" -msgstr "zaÅ‚adowanie na poczÄ…tku podanych MODUÅÓW" - -#: include/grub/util/install.h:33 -msgid "embed a specific DTB" -msgstr "osadza okreÅ›lone DTB" - -#: include/grub/util/install.h:36 -msgid "install only MODULES and their dependencies [default=all]" -msgstr "instaluje tylko MODUÅY i ich zależnoÅ›ci [domyÅ›lnie=wszystkie]" - -#: include/grub/util/install.h:37 -msgid "THEMES" -msgstr "MOTYWY" - -#: include/grub/util/install.h:38 -#, c-format -msgid "install THEMES [default=%s]" -msgstr "instaluje MOTYWY [domyÅ›lnie=%s]" - -#: include/grub/util/install.h:39 -msgid "FONTS" -msgstr "FONTY" - -#: include/grub/util/install.h:40 -#, c-format -msgid "install FONTS [default=%s]" -msgstr "instaluje FONTY [domyÅ›lnie=%s]" - -#: include/grub/util/install.h:41 -msgid "LOCALES" -msgstr "LOKALIZACJE" - -#: include/grub/util/install.h:42 -msgid "install only LOCALES [default=all]" -msgstr "instaluje tylko LOKALIZACJE [domyÅ›lnie=wszystkie]" - -#: include/grub/util/install.h:45 -msgid "compress GRUB files [optional]" -msgstr "kompresuje pliki GRUB-a [opcjonalne]" - -#: include/grub/util/install.h:48 util/grub-mkimage.c:83 -msgid "choose the compression to use for core image" -msgstr "wybiera rodzaj kompresji dla obrazu core" - -#. TRANSLATORS: platform here isn't identifier. It can be translated. -#: include/grub/util/install.h:51 include/grub/util/install.h:54 -#: util/grub-mkimage.c:66 -#, c-format -msgid "use images and modules under DIR [default=%s/]" -msgstr "" -"używa obrazów i modułów umieszczonych w KATALOGU [domyÅ›lny=%s/]" - -#: include/grub/util/install.h:57 -#, c-format -msgid "use translations under DIR [default=%s]" -msgstr "używa tÅ‚umaczy umieszczonych w KATALOGU [domyÅ›lny=%s]" - -#: include/grub/util/install.h:60 -#, c-format -msgid "use themes under DIR [default=%s]" -msgstr "używa motywów umieszczonych w KATALOGU [domyÅ›lny=%s]" - -#: include/grub/util/install.h:65 util/grub-mkimage.c:78 -msgid "embed FILE as public key for signature checking" -msgstr "osadza PLIK jako klucz publiczny do kontroli podpisu" - -#: util/editenv.c:59 util/grub-editenv.c:201 util/grub-install-common.c:535 -#: util/grub-mkimage.c:315 util/setup.c:791 -#, c-format -msgid "cannot sync `%s': %s" -msgstr "nie można zsynchronizować \"%s\": %s" - -#: util/editenv.c:64 -#, c-format -msgid "cannot rename the file %s to %s" -msgstr "nie można zmienić nazwy pliku %s na %s" - -#: util/getroot.c:402 -#, c-format -msgid "disk does not exist, so falling back to partition device %s" -msgstr "dysk nie istnieje, wiÄ™c próba przejÅ›cia do partycji %s" - -#: util/grub-editenv.c:45 util/grub-fstest.c:506 -msgid "Commands:" -msgstr "Polecenia:" - -#: util/grub-editenv.c:47 -msgid "Create a blank environment block file." -msgstr "Tworzy pusty plik blokowy Å›rodowiska." - -#: util/grub-editenv.c:49 -msgid "List the current variables." -msgstr "WyÅ›wietla listÄ™ bieżących zmiennych." - -#. TRANSLATORS: "set" is a keyword. It's a summary of "set" subcommand. -#: util/grub-editenv.c:51 -msgid "set [NAME=VALUE ...]" -msgstr "set [NAZWA=WARTOŚĆ ...]" - -#: util/grub-editenv.c:52 -msgid "Set variables." -msgstr "Ustawia zmienne." - -#. TRANSLATORS: "unset" is a keyword. It's a summary of "unset" subcommand. -#: util/grub-editenv.c:54 -msgid "unset [NAME ...]" -msgstr "unset [NAZWA ...]" - -#: util/grub-editenv.c:55 -msgid "Delete variables." -msgstr "Usuwa zmienne." - -#: util/grub-editenv.c:57 -msgid "Options:" -msgstr "Opcje:" - -#: util/grub-editenv.c:84 -msgid "You need to specify at least one command.\n" -msgstr "Należy podać co najmniej jedno polecenie.\n" - -#: util/grub-editenv.c:113 -msgid "FILENAME COMMAND" -msgstr "NAZWA_PLIKU POLECENIE" - -#: util/grub-editenv.c:114 -msgid "Tool to edit environment block." -msgstr "NarzÄ™dzie do modyfikacji pliku blokowego Å›rodowiska." - -#: util/grub-editenv.c:116 -#, c-format -msgid "" -"If FILENAME is `-', the default value %s is used.\n" -"\n" -"There is no `delete' command; if you want to delete the whole environment\n" -"block, use `rm %s'." -msgstr "" -"JeÅ›li NAZWA_PLIKU to \"-\", używana jest domyÅ›lna wartość %s.\n" -"\n" -"Nie ma polecenia \"delete\"; aby usunąć caÅ‚y blok Å›rodowiska, należy użyć\n" -"\"rm %s\"." - -#: util/grub-editenv.c:162 -msgid "invalid environment block" -msgstr "błędny blok Å›rodowiska" - -#: util/grub-editenv.c:217 -#, c-format -msgid "invalid parameter %s" -msgstr "błędny parametr %s" - -#: util/grub-editenv.c:222 -msgid "environment block too small" -msgstr "blok Å›rodowiska zbyt maÅ‚y" - -#: util/grub-fstest.c:107 -#, c-format -msgid "disk read fails at offset %lld, length %lld" -msgstr "odczyt dysku siÄ™ nie powiódÅ‚ w offsecie %lld, dÅ‚ugoÅ›ci %lld" - -#: util/grub-fstest.c:138 -#, c-format -msgid "invalid skip value %lld" -msgstr "nieprawidÅ‚owa wartość pominiÄ™cia %lld" - -#: util/grub-fstest.c:160 util/grub-fstest.c:246 -#, c-format -msgid "read error at offset %llu: %s" -msgstr "błąd odczytu w offsecie %llu: %s" - -#: util/grub-fstest.c:210 -#, c-format -msgid "cannot open OS file `%s': %s" -msgstr "nie można otworzyć pliku OS \"%s\": %s" - -#: util/grub-fstest.c:225 util/misc.c:126 -#, c-format -msgid "cannot write to the stdout: %s" -msgstr "nie można pisać na standardowe wyjÅ›cie: %s" - -#: util/grub-fstest.c:259 -#, c-format -msgid "compare fail at offset %llu" -msgstr "porównanie siÄ™ nie powiodÅ‚o w offsecie %llu" - -#: util/grub-fstest.c:280 util/grub-fstest.c:314 -#, c-format -msgid "OS file %s open error: %s" -msgstr "błąd otwarcia pliku OS %s: %s" - -#: util/grub-fstest.c:402 util/grub-mount.c:392 -#, c-format -msgid "`loopback' command fails: %s" -msgstr "polecenie \"loopback\" nie powiodÅ‚o siÄ™: %s" - -#: util/grub-fstest.c:413 util/grub-mount.c:402 -#, c-format -msgid "`cryptomount' command fails: %s" -msgstr "polecenie \"cryptomount\" nie powiodÅ‚o siÄ™: %s" - -#: util/grub-fstest.c:474 util/grub-fstest.c:478 -msgid "couldn't retrieve UUID" -msgstr "nie udaÅ‚o siÄ™ uzyskać UUID-a" - -#: util/grub-fstest.c:507 -msgid "ls PATH" -msgstr "ls ÅšCIEÅ»KA" - -#: util/grub-fstest.c:507 -msgid "List files in PATH." -msgstr "WyÅ›wietla listÄ™ plików w ÅšCIEÅ»CE." - -#: util/grub-fstest.c:508 -msgid "cp FILE LOCAL" -msgstr "cp PLIK LOKALNY" - -#: util/grub-fstest.c:508 -msgid "Copy FILE to local file LOCAL." -msgstr "Kopiuje PLIK do LOKALNEGO pliku." - -#: util/grub-fstest.c:509 -msgid "cat FILE" -msgstr "cat PLIK" - -#: util/grub-fstest.c:509 -msgid "Copy FILE to standard output." -msgstr "Kopiuje PLIK na standardowe wyjÅ›cie." - -#: util/grub-fstest.c:510 -msgid "cmp FILE LOCAL" -msgstr "cmp PLIK LOKALNY" - -#: util/grub-fstest.c:510 -msgid "Compare FILE with local file LOCAL." -msgstr "Porównuje PLIK z LOKALNYM plikiem." - -#: util/grub-fstest.c:511 -msgid "hex FILE" -msgstr "hex PLIK" - -#: util/grub-fstest.c:511 -msgid "Show contents of FILE in hex." -msgstr "WyÅ›wietla szesnastkowo zawartość PLIKU." - -#: util/grub-fstest.c:512 -msgid "crc FILE" -msgstr "crc PLIK" - -#: util/grub-fstest.c:512 -msgid "Get crc32 checksum of FILE." -msgstr "Uzyskuje sumÄ™ kontrolnÄ… CRC32 PLIKU." - -#: util/grub-fstest.c:513 -msgid "blocklist FILE" -msgstr "blocklist PLIK" - -#: util/grub-fstest.c:513 -msgid "Display blocklist of FILE." -msgstr "WyÅ›wietla listÄ™ blokowÄ… PLIKU." - -#: util/grub-fstest.c:514 -msgid "xnu_uuid DEVICE" -msgstr "xnu_uuid URZÄ„DZENIE" - -#: util/grub-fstest.c:514 -msgid "Compute XNU UUID of the device." -msgstr "Liczy UUID XNU urzÄ…dzenia." - -#. TRANSLATORS: bitmaps are images like e.g. in JPEG. -#: util/grub-fstest.c:517 util/grub-fstest.c:518 util/grub-fstest.c:519 -#: util/grub-mkfont.c:938 util/grub-mkfont.c:951 util/grub-mkfont.c:952 -#: util/grub-mkpasswd-pbkdf2.c:46 util/grub-mkpasswd-pbkdf2.c:47 -#: util/grub-mkpasswd-pbkdf2.c:48 -msgid "NUM" -msgstr "LICZBA" - -#: util/grub-fstest.c:517 -msgid "Skip N bytes from output file." -msgstr "Pomija N bajtów z pliku wyjÅ›ciowego." - -#: util/grub-fstest.c:518 -msgid "Handle N bytes in output file." -msgstr "ObsÅ‚uguje N bajtów w pliku wyjÅ›ciowym." - -#: util/grub-fstest.c:519 -msgid "Specify the number of input files." -msgstr "Podaje liczbÄ™ plików wejÅ›ciowych." - -#: util/grub-fstest.c:520 util/grub-mount.c:453 -msgid "Set debug environment variable." -msgstr "Ustawia zmiennÄ… Å›rodowiskowÄ… debugowania." - -#: util/grub-fstest.c:521 util/grub-mount.c:454 -msgid "Mount crypto devices." -msgstr "Montuje urzÄ…dzenia kryptograficzne." - -#. TRANSLATORS: "prompt" is a keyword. -#: util/grub-fstest.c:524 util/grub-mount.c:457 -msgid "FILE|prompt" -msgstr "PLIK|prompt" - -#: util/grub-fstest.c:524 util/grub-mount.c:457 -msgid "Load zfs crypto key." -msgstr "Wczytuje klucz kryptograficzny zfs" - -#: util/grub-fstest.c:526 -msgid "Uncompress data." -msgstr "Dekompresuje dane." - -#: util/grub-fstest.c:605 -msgid "Invalid disk count.\n" -msgstr "NieprawidÅ‚owy licznik dysku.\n" - -#. TRANSLATORS: disk count is optional but if it's there it must -#. be before disk list. So please don't imply disk count as mandatory. -#. -#: util/grub-fstest.c:613 -msgid "Disk count must precede disks list.\n" -msgstr "Licznik dysku musi poprzedzać listÄ™ dysków.\n" - -#: util/grub-fstest.c:633 -msgid "No command is specified.\n" -msgstr "Nie podano polecenia.\n" - -#: util/grub-fstest.c:638 -msgid "Not enough parameters to command.\n" -msgstr "Za maÅ‚o parametrów dla polecenia.\n" - -#: util/grub-fstest.c:711 -#, c-format -msgid "Invalid command %s.\n" -msgstr "NieprawidÅ‚owe polecenie %s.\n" - -#: util/grub-fstest.c:724 -msgid "IMAGE_PATH COMMANDS" -msgstr "ÅšCIEÅ»KA_DO_OBRAZU POLECENIA" - -#: util/grub-fstest.c:725 util/grub-mount.c:553 -msgid "Debug tool for filesystem driver." -msgstr "NarzÄ™dzie debugowania sterownika systemu plików." - -#: util/grub-glue-efi.c:53 -msgid "set input filename for 32-bit part." -msgstr "ustawia nazwÄ™ pliku wejÅ›ciowego dla części 32-bitowej." - -#: util/grub-glue-efi.c:55 -msgid "set input filename for 64-bit part." -msgstr "ustawia nazwÄ™ pliku wejÅ›ciowego dla części 64-bitowej." - -#: util/grub-glue-efi.c:57 util/grub-mklayout.c:55 util/grub-render-label.c:71 -msgid "set output filename. Default is STDOUT" -msgstr "ustawia nazwÄ™ pliku wyjÅ›ciowego. DomyÅ›lny to standardowe wyjÅ›cie" - -#: util/grub-glue-efi.c:94 util/grub-mklayout.c:476 -#: util/grub-mkpasswd-pbkdf2.c:86 util/grub-render-label.c:131 -msgid "[OPTIONS]" -msgstr "[OPCJE]" - -#: util/grub-glue-efi.c:95 -msgid "Glue 32-bit and 64-bit binary into Apple universal one." -msgstr "Skleja 32-bitowÄ… i 64-bitowÄ… binarkÄ™ do uniwersalnej binarki Apple'a." - -#: util/grub-glue-efi.c:116 -msgid "Missing input file\n" -msgstr "Brak pliku wejÅ›ciowego\n" - -#: util/grub-install-common.c:127 util/grub-install-common.c:151 -#, c-format -msgid "cannot copy `%s' to `%s': %s" -msgstr "nie można skopiować \"%s\" do \"%s\": %s" - -#: util/grub-install-common.c:147 -#, c-format -msgid "can't compress `%s' to `%s'" -msgstr "nie można skompresować \"%s\" do \"%s\"" - -#: util/grub-install-common.c:196 util/grub-install-common.c:552 -#: util/grub-install-common.c:579 util/grub-install-common.c:621 -#, c-format -msgid "cannot open directory `%s': %s" -msgstr "nie można otworzyć katalogu \"%s\": %s" - -#: util/grub-install-common.c:212 -#, c-format -msgid "cannot delete `%s': %s" -msgstr "nie można usunąć \"%s\": %s" - -#: util/grub-install-common.c:324 util/grub-mkimage.c:209 -msgid "grub-mkimage is compiled without XZ support" -msgstr "grub-mkimage zostaÅ‚ skompilowany bez obsÅ‚ugi XZ" - -#: util/grub-install-common.c:332 util/grub-mkimage.c:217 -#, c-format -msgid "Unknown compression format %s" -msgstr "Nieznany format kompresji %s" - -#: util/grub-install-common.c:400 -#, c-format -msgid "Unrecognized compression `%s'" -msgstr "Nieznana kompresja \"%s\"" - -#: util/grub-install-common.c:509 -#, c-format -msgid "unknown target format %s" -msgstr "nieznany format docelowy %s" - -#: util/grub-install-common.c:700 -#, c-format -msgid "cannot find locale `%s'" -msgstr "nie można odnaleźć lokalizacji \"%s\"" - -#: util/grub-install-common.c:939 -#, c-format -msgid "%s doesn't exist. Please specify --target or --directory" -msgstr "%s nie istnieje. ProszÄ™ okreÅ›lić --target lub --directory" - -#: util/grub-install-common.c:948 util/grub-install-common.c:951 -#, c-format -msgid "invalid modinfo file `%s'" -msgstr "nieprawidÅ‚owy plik modinfo \"%s\"" - -#: util/grub-install-common.c:966 -#, c-format -msgid "Unknown platform `%s-%s'" -msgstr "Nieznana platforma \"%s-%s\"" - -#: util/grub-install.c:238 -msgid "More than one install device?" -msgstr "WiÄ™cej niż jedno urzÄ…dzenie instalacji?" - -#: util/grub-install.c:251 -#, c-format -msgid "" -"install GRUB images under the directory DIR/%s instead of the %s directory" -msgstr "instaluje obrazy GRUB-a poniżej KATALOGU/%s zamiast katalogu %s" - -#: util/grub-install.c:256 util/grub-probe.c:734 -msgid "TARGET" -msgstr "CEL" - -#. TRANSLATORS: "TARGET" as in "target platform". -#: util/grub-install.c:258 -#, c-format -msgid "install GRUB for TARGET platform [default=%s]; available targets: %s" -msgstr "" -"instaluje GRUB-a dla platformy DOCELOWEJ [domyÅ›lnie=%s]; dostÄ™pne platformy: " -"%s" - -#. TRANSLATORS: "may break" doesn't just mean that option wouldn't have any -#. effect but that it will make the resulting install unbootable from HDD. -#. TRANSLATORS: The potential breakage isn't limited to floppies but it's -#. likely to make the install unbootable from HDD. -#: util/grub-install.c:267 util/grub-setup.c:94 -msgid "" -"make the drive also bootable as floppy (default for fdX devices). May break " -"on some BIOSes." -msgstr "" -"sprawia, żeby napÄ™d byÅ‚ uruchamialny także jako dyskietka (domyÅ›lne dla " -"urzÄ…dzeÅ„ fdX). Może źle dziaÅ‚ać z niektórymi BIOS-ami." - -#: util/grub-install.c:270 -msgid "delete device map if it already exists" -msgstr "usuwa mapÄ™ urzÄ…dzeÅ„, jeÅ›li już istnieje" - -#: util/grub-install.c:272 util/grub-setup.c:87 -msgid "install even if problems are detected" -msgstr "instaluje nawet, jeÅ›li wykryto problemy" - -#: util/grub-install.c:274 -msgid "use identifier file even if UUID is available" -msgstr "używa pliku ID nawet jeÅ›li dostÄ™pny jest UUID" - -#: util/grub-install.c:276 -msgid "" -"disk module to use (biosdisk or native). This option is only available on " -"BIOS target." -msgstr "" -"moduÅ‚ dysku do użycia (biosdisk lub natywny). Ta opcja jest dostÄ™pna tylko " -"na platformach z BIOS-em." - -#: util/grub-install.c:279 -msgid "" -"don't update the `boot-device'/`Boot*' NVRAM variables. This option is only " -"available on EFI and IEEE1275 targets." -msgstr "" -"bez uaktualniania zmiennych NVRAM \"boot-device\"/\"Boot*\". Ta opcja jest " -"dostÄ™pna tylko na platformach EFI i IEEE1275." - -#: util/grub-install.c:282 util/grub-setup.c:89 -msgid "do not probe for filesystems in DEVICE" -msgstr "nie wykrywa systemów plików w URZÄ„DZENIU" - -#: util/grub-install.c:284 -msgid "do not install bootsector" -msgstr "bez instalowania sektora rozruchowego" - -#: util/grub-install.c:286 util/grub-setup.c:96 -msgid "" -"Do not apply any reed-solomon codes when embedding core.img. This option is " -"only available on x86 BIOS targets." -msgstr "" -"Bez stosowania kodów reeda-solomona przy osadzaniu core.img. Ta opcja jest " -"dostÄ™pna tylko na platformach z BIOS-em." - -#: util/grub-install.c:293 -msgid "" -"the installation device is removable. This option is only available on EFI." -msgstr "" -"urzÄ…dzenie instalacji jest wymienne. Ta opcja jest dostÄ™pna tylko na " -"platformach z EFI." - -#: util/grub-install.c:295 -msgid "ID" -msgstr "ID" - -#: util/grub-install.c:296 -msgid "the ID of bootloader. This option is only available on EFI and Macs." -msgstr "" -"IDentyfikator bootloadera. Ta opcja jest dostÄ™pna tylko na platformach EFI i " -"Mac." - -#: util/grub-install.c:298 -msgid "use DIR as the EFI System Partition root." -msgstr "używa KATALOGU jako głównego partycji systemowej EFI." - -#: util/grub-install.c:300 -msgid "use DIR for PPC MAC install." -msgstr "używa KATALOGU do instalacji PPC MAC." - -#: util/grub-install.c:301 util/grub-mkrescue.c:106 -msgid "use FILE as font for label" -msgstr "używa PLIKU jako fontu dla etykiety" - -#: util/grub-install.c:302 util/grub-mkrescue.c:107 -msgid "use COLOR for label" -msgstr "używa KOLORU dla etykiety" - -#: util/grub-install.c:303 util/grub-mkrescue.c:108 -msgid "use COLOR for label background" -msgstr "używa KOLORU dla tÅ‚a etykiety" - -#: util/grub-install.c:304 util/grub-mkrescue.c:110 -msgid "use STRING as product version" -msgstr "używa ÅAŃCUCHA jako wersji produktu" - -#: util/grub-install.c:361 -msgid "[OPTION] [INSTALL_DEVICE]" -msgstr "[OPCJA] [URZÄ„DZENIE_INSTALACJI]" - -#: util/grub-install.c:362 -msgid "Install GRUB on your drive." -msgstr "Instaluje GRUB-a na dysku." - -#: util/grub-install.c:363 -#, c-format -msgid "" -"INSTALL_DEVICE must be system device filename.\n" -"%s copies GRUB images into %s. On some platforms, it may also install GRUB " -"into the boot sector." -msgstr "" -"URZÄ„DZENIE_INSTALACJI musi być nazwÄ… pliku urzÄ…dzenia systemowego.\n" -"%s kopiuje obrazy GRUB-a do %s. Na niektórych platformach może także " -"instalować GRUB-a w sektorze rozruchowym." - -#: util/grub-install.c:672 -#, c-format -msgid "the drive %s is defined multiple times in the device map %s" -msgstr "napÄ™d %s jest zdefiniowany wielokrotnie w mapie urzÄ…dzeÅ„ %s" - -#: util/grub-install.c:878 -msgid "Unable to determine your platform. Use --target." -msgstr "Nie udaÅ‚o siÄ™ okreÅ›lić platformy. ProszÄ™ użyć --target." - -#: util/grub-install.c:891 -#, c-format -msgid "Installing for %s platform.\n" -msgstr "Instalowanie dla platformy %s.\n" - -#: util/grub-install.c:939 -msgid "install device isn't specified" -msgstr "nie podano urzÄ…dzenia instalacji" - -#: util/grub-install.c:1057 -msgid "cannot find EFI directory" -msgstr "nie można odnaleźć katalogu EFI" - -#: util/grub-install.c:1060 util/grub-install.c:1209 util/grub-install.c:1254 -#: util/grub-macbless.c:76 util/grub-probe.c:329 util/setup.c:316 -#, c-format -msgid "cannot find a device for %s (is /dev mounted?)" -msgstr "nie można odnaleźć urzÄ…dzenia dla %s (czy /dev jest zamontowany?)" - -#: util/grub-install.c:1069 util/grub-install.c:1217 util/grub-install.c:1270 -#: util/grub-install.c:1365 util/grub-macbless.c:80 util/grub-probe.c:372 -#, c-format -msgid "cannot find a GRUB drive for %s. Check your device.map" -msgstr "" -"nie można odnaleźć urzÄ…dzenia GRUB-a dla %s. ProszÄ™ sprawdzić device.map" - -#: util/grub-install.c:1087 -#, c-format -msgid "%s doesn't look like an EFI partition" -msgstr "%s nie wyglÄ…da na partycjÄ™ EFI" - -#: util/grub-install.c:1129 util/grub-install.c:1614 -msgid "You've found a bug" -msgstr "Znaleziono błąd" - -#: util/grub-install.c:1231 -#, c-format -msgid "filesystem on %s is neither HFS nor HFS+" -msgstr "system plików na %s nie jest typu HFS ani HFS+" - -#: util/grub-install.c:1299 -#, c-format -msgid "" -"attempt to install to encrypted disk without cryptodisk enabled. Set `%s' in " -"file `%s'" -msgstr "" -"próba instalacji na dysk zaszyfrowany bez włączonej opcji cryptodisk. ProszÄ™ " -"ustawić \"%s\" w pliku \"%s\"" - -#: util/grub-install.c:1410 util/grub-install.c:1772 util/grub-install.c:1872 -#, c-format -msgid "Can't create file: %s" -msgstr "Nie można utworzyć pliku: %s" - -#: util/grub-install.c:1491 -msgid "no hints available for your platform. Expect reduced performance" -msgstr "" -"brak podpowiedzi dla tej platformy. Można oczekiwać mniejszej wydajnoÅ›ci." - -#. TRANSLATORS: This is a prefix in the log to indicate that usually -#. a command would be executed but due to an option was skipped. -#: util/grub-install.c:1702 -msgid "NOT RUNNING: " -msgstr "BEZ URUCHAMIANIA: " - -#: util/grub-install.c:1806 -msgid "the chosen partition is not a PReP partition" -msgstr "wybrana partycja nie jest partycjÄ… PReP" - -#: util/grub-install.c:1811 -msgid "failed to copy Grub to the PReP partition" -msgstr "nie udaÅ‚o siÄ™ skopiować Gruba na partycjÄ™ PReP" - -#: util/grub-install.c:1816 -#, c-format -msgid "" -"the PReP partition is not empty. If you are sure you want to use it, run dd " -"to clear it: `%s'" -msgstr "" -"partycja PReP nie jest pusta. Jeżeli na pewno ma być użyta, proszÄ™ wyczyÅ›cić " -"jÄ… przy użyciu dd: \"%s\"" - -#: util/grub-install.c:1888 util/grub-install.c:1932 -#, c-format -msgid "efibootmgr failed to register the boot entry: %s" -msgstr "efibootmgr nie mógÅ‚ zarejestrować wpisu rozruchowego: %s" - -#: util/grub-install.c:1916 -msgid "EFI bootloader id isn't specified." -msgstr "Nie podano identyfikatora bootloadera EFI." - -#: util/grub-install.c:1950 -msgid "WARNING: no platform-specific install was performed" -msgstr "UWAGA: nie wykonano instalacji specyficznej dla platformy" - -#: util/grub-install.c:1957 -msgid "Installation finished. No error reported." -msgstr "Instalacja zakoÅ„czona. Nie zgÅ‚oszono błędów." - -#: util/grub-macbless.c:101 -msgid "bless for x86-based macs" -msgstr "bÅ‚ogosÅ‚awi dla Maców opartych na x86" - -#: util/grub-macbless.c:103 -msgid "bless for ppc-based macs" -msgstr "bÅ‚ogosÅ‚awi dla Maców opartych na PPC" - -#: util/grub-macbless.c:136 util/grub-probe.c:823 -msgid "No path or device is specified.\n" -msgstr "Nie podano Å›cieżki ani urzÄ…dzenia.\n" - -#: util/grub-macbless.c:157 -msgid "--ppc PATH|--x86 FILE" -msgstr "--ppc ÅšCIEÅ»KA|--x86 ÅšCIEÅ»KA" - -#: util/grub-macbless.c:158 -msgid "Mac-style bless on HFS or HFS+" -msgstr "Macowe bÅ‚ogosÅ‚awienie na HFS lub HFS+" - -#: util/grub-menulst2cfg.c:44 -#, c-format -msgid "Usage: %s [INFILE [OUTFILE]]\n" -msgstr "SkÅ‚adnia: %s [PLIK_WEJÅšCIOWY [PLIK_WYJÅšCIOWY]]\n" - -#: util/grub-mkfont.c:157 -#, c-format -msgid "Freetype Error %d loading glyph 0x%x for U+0x%x%s" -msgstr "Błąd Freetype %d podczas Å‚adowania glifu 0x%x dla U+0x%x%s" - -#. TRANSLATORS: These qualifiers are used for cursive typography, -#. mainly Arabic. Note that the terms refer to the visual position -#. and not logical order and if used in left-to-right script then -#. leftmost is initial but with right-to-left script like Arabic -#. rightmost is the initial. -#: util/grub-mkfont.c:165 -msgid " (medial)" -msgstr " (Å›rodkowego)" - -#: util/grub-mkfont.c:166 -msgid " (leftmost)" -msgstr " (lewego)" - -#: util/grub-mkfont.c:167 -msgid " (rightmost)" -msgstr " (prawego)" - -#: util/grub-mkfont.c:481 -#, c-format -msgid "Out of range substitution (%d, %d)\n" -msgstr "Podstawienie spoza zakresu (%d, %d)\n" - -#. TRANSLATORS: "lookup" is taken directly from font specifications -#. which are formulated as "Under condition X replace LOOKUP with -#. SUBSTITUITION". " -#: util/grub-mkfont.c:506 -#, c-format -msgid "Out of range lookup: %d\n" -msgstr "Wyszukiwanie spoza zakresu: %d\n" - -#: util/grub-mkfont.c:514 -#, c-format -msgid "Unsupported substitution type: %d\n" -msgstr "NieobsÅ‚ugiwany rodzaj podstawienia: %d\n" - -#: util/grub-mkfont.c:550 -#, c-format -msgid "Unsupported substitution specification: %d\n" -msgstr "NieobsÅ‚ugiwane okreÅ›lenie podstawienia: %d\n" - -#: util/grub-mkfont.c:582 -#, c-format -msgid "Unsupported coverage specification: %d\n" -msgstr "NieobsÅ‚ugiwane okreÅ›lenie pokrycia: %d\n" - -#: util/grub-mkfont.c:622 -#, c-format -msgid "WARNING: unsupported font feature parameters: %x\n" -msgstr "UWAGA: nieobsÅ‚ugiwane parametry cechy fontu: %x\n" - -#: util/grub-mkfont.c:936 util/grub-mkrescue.c:98 util/grub-mkstandalone.c:48 -msgid "save output in FILE [required]" -msgstr "zapisuje wyjÅ›cie do PLIKU [wymagane]" - -#. TRANSLATORS: some font files may have multiple faces (fonts). -#. This option is used to chose among them, the first face being '0'. -#. Rarely used. -#: util/grub-mkfont.c:942 -msgid "select face index" -msgstr "wybiera indeks fontu" - -#: util/grub-mkfont.c:943 -msgid "FROM-TO[,FROM-TO]" -msgstr "OD-DO[,OD-DO]" - -#. TRANSLATORS: It refers to the range of characters in font. -#: util/grub-mkfont.c:945 -msgid "set font range" -msgstr "ustawia zakres fontu" - -#. TRANSLATORS: "family name" for font is just a generic name without suffix -#. like "Bold". -#: util/grub-mkfont.c:949 -msgid "set font family name" -msgstr "ustawia nazwÄ™ rodziny fontu" - -#: util/grub-mkfont.c:950 -msgid "SIZE" -msgstr "ROZMIAR" - -#: util/grub-mkfont.c:950 -msgid "set font size" -msgstr "ustawia rozmiar fontu" - -#: util/grub-mkfont.c:951 -msgid "set font descent" -msgstr "ustawia opuszczenie fontu" - -#: util/grub-mkfont.c:952 -msgid "set font ascent" -msgstr "ustawia podniesienie fontu" - -#: util/grub-mkfont.c:953 -msgid "convert to bold font" -msgstr "przeksztaÅ‚ca do fontu pogrubionego" - -#: util/grub-mkfont.c:954 -msgid "force autohint" -msgstr "wymusza autohinting" - -#: util/grub-mkfont.c:955 -msgid "disable hinting" -msgstr "wyłącza hinting" - -#. TRANSLATORS: some fonts contain bitmap rendering for -#. some sizes. This option forces rerendering even if -#. pre-rendered bitmap is available. -#. -#: util/grub-mkfont.c:961 -msgid "ignore bitmap strikes when loading" -msgstr "ignoruje bitmapy przy wczytywaniu" - -#. TRANSLATORS: It refers to the range of characters in font. -#: util/grub-mkfont.c:1059 util/grub-mkfont.c:1075 -msgid "invalid font range" -msgstr "błędny zakres fontu" - -#: util/grub-mkfont.c:1151 -msgid "[OPTIONS] FONT_FILES" -msgstr "[OPCJE] PLIKI_FONTÓW" - -#: util/grub-mkfont.c:1152 -msgid "Convert common font file formats into PF2" -msgstr "Konwertuje fonty z popularnych formatów plików do PF2" - -#: util/grub-mkfont.c:1182 util/grub-mkrescue.c:483 -#: util/grub-mkstandalone.c:306 -msgid "output file must be specified" -msgstr "plik wyjÅ›ciowy musi być podany" - -#: util/grub-mkfont.c:1185 -msgid "FT_Init_FreeType fails" -msgstr "FT_Init_FreeType nie powiodÅ‚o siÄ™" - -#: util/grub-mkfont.c:1199 -#, c-format -msgid "can't open file %s, index %d: error %d" -msgstr "nie można otworzyć pliku %s, indeks %d: błąd %d" - -#: util/grub-mkfont.c:1229 -#, c-format -msgid "can't set %dx%d font size: Freetype error %d: %s" -msgstr "nie można ustawić rozmiaru fontu %dx%d: błąd Freetype %d: %s" - -#: util/grub-mkimage.c:67 -msgid "set prefix directory" -msgstr "ustawia katalog przedrostka" - -#. TRANSLATORS: "memdisk" here isn't an identifier, it can be translated. -#. "embed" is a verb (command description). " -#: util/grub-mkimage.c:71 -msgid "" -"embed FILE as a memdisk image\n" -"Implies `-p (memdisk)/boot/grub' and overrides any prefix supplied " -"previously, but the prefix itself can be overridden by later options" -msgstr "" -"osadza PLIK jako obraz ramdysku\n" -"Włącza \"-p (memdisk)/boot/grub\" i nadpisuje prefiks podany wczeÅ›niej, ale " -"prefiks może być nadpisany późniejszymi opcjami" - -#: util/grub-mkimage.c:74 -msgid "embed FILE as a device tree (DTB)\n" -msgstr "osadza PLIK jako drzewo urzÄ…dzeÅ„ (DTB)\n" - -#: util/grub-mkimage.c:76 -msgid "embed FILE as an early config" -msgstr "osadza plik jako wczesnÄ… konfiguracjÄ™" - -#. TRANSLATORS: NOTE is a name of segment. -#: util/grub-mkimage.c:80 -msgid "add NOTE segment for CHRP IEEE1275" -msgstr "dodaje segment NOTE dla CHRP IEEE1275" - -#: util/grub-mkimage.c:81 -msgid "output a generated image to FILE [default=stdout]" -msgstr "" -"zapisuje wygenerowany obraz do PLIKU [domyÅ›lnie na standardowe wyjÅ›cie]" - -#: util/grub-mkimage.c:82 -msgid "FORMAT" -msgstr "FORMAT" - -#: util/grub-mkimage.c:100 util/grub-mkstandalone.c:62 -msgid "generate an image in FORMAT" -msgstr "generuje obraz w FORMACIE" - -#: util/grub-mkimage.c:101 util/grub-mkstandalone.c:63 -msgid "available formats:" -msgstr "dostÄ™pne formaty:" - -#: util/grub-mkimage.c:152 util/grub-mkstandalone.c:96 -#, c-format -msgid "unknown target format %s\n" -msgstr "nieznany format docelowy %s\n" - -#: util/grub-mkimage.c:242 -msgid "[OPTION]... [MODULES]" -msgstr "[OPCJA]... [MODUÅY]" - -#: util/grub-mkimage.c:243 -msgid "Make a bootable image of GRUB." -msgstr "Tworzy rozruchowy obraz GRUB-a." - -#: util/grub-mkimage.c:273 util/grub-mkstandalone.c:309 -msgid "Target format not specified (use the -O option)." -msgstr "Nie okreÅ›lono formatu docelowego (opcji -O)." - -#: util/grub-mkimage.c:282 -msgid "Prefix not specified (use the -p option)." -msgstr "Nie okreÅ›lono przedrostka (opcji -p)." - -#: util/grub-mkimage.c:318 util/setup.c:793 -#, c-format -msgid "cannot close `%s': %s" -msgstr "nie można zamknąć \"%s\": %s" - -#: util/grub-mkimagexx.c:2191 -#, c-format -msgid "" -"`%s' is miscompiled: its start address is 0x%llx instead of 0x%llx: ld.gold " -"bug?" -msgstr "" -"\"%s\" jest błędnie skompilowany: adres startowy to 0x%llx zamiast 0x%llx: " -"błąd ld.gold?" - -#: util/grub-mklayout.c:53 -msgid "set input filename. Default is STDIN" -msgstr "ustawia nazwÄ™ pliku wejÅ›ciowego. DomyÅ›lny to standardowe wejÅ›cie" - -#. TRANSLATORS: scan identifier is keyboard key symbolic name. -#: util/grub-mklayout.c:307 -#, c-format -msgid "Unknown keyboard scan identifier %s\n" -msgstr "Nieznany identyfikator kodu klawisza %s\n" - -#. TRANSLATORS: scan code is keyboard key numeric identifier. -#: util/grub-mklayout.c:390 util/grub-mklayout.c:418 -#, c-format -msgid "Unknown keyboard scan code 0x%02x\n" -msgstr "Nieznany kod skaningowy klawisza 0x%02x\n" - -#. TRANSLATORS: this error is triggered when input doesn't contain any -#. key descriptions. -#: util/grub-mklayout.c:438 -msgid "ERROR: no valid keyboard layout found. Check the input.\n" -msgstr "" -"BÅÄ„D: nie znaleziono poprawnego ukÅ‚adu klawiatury. ProszÄ™ sprawdzić " -"wejÅ›cie.\n" - -#. TRANSLATORS: "one" is a shortcut for "keyboard layout". -#: util/grub-mklayout.c:478 -msgid "Generate GRUB keyboard layout from Linux console one." -msgstr "Generuje ukÅ‚ad klawiatury GRUB-a z ukÅ‚adu dla konsoli Linuksa." - -#: util/grub-mknetdir.c:47 -msgid "root directory of TFTP server" -msgstr "katalog główny serwera TFTP" - -#: util/grub-mknetdir.c:49 -msgid "relative subdirectory on network server" -msgstr "podkatalog wzglÄ™dny na serwerze sieciowym" - -#: util/grub-mknetdir.c:88 -msgid "" -"Prepares GRUB network boot images at net_directory/subdir assuming " -"net_directory being TFTP root." -msgstr "" -"Przygotowuje obrazy GRUB-a do rozruchu sieciowego w katalogu_sieciowym/" -"podkatalogu, gdzie katalog_sieciowy to główny katalog TFTP." - -#: util/grub-mknetdir.c:146 -#, c-format -msgid "unsupported platform %s" -msgstr "nieobsÅ‚ugiwana platforma %s" - -#. TRANSLATORS: First %s is replaced by platform name. Second one by filename. -#: util/grub-mknetdir.c:165 -#, c-format -msgid "" -"Netboot directory for %s created. Configure your DHCP server to point to %s\n" -msgstr "" -"Utworzono katalog rozruchu sieciowego dla %s. ProszÄ™ skonfigurować serwer " -"DHCP, aby wskazywaÅ‚ na %s\n" - -#: util/grub-mkpasswd-pbkdf2.c:46 -msgid "Number of PBKDF2 iterations" -msgstr "Liczba iteracji PBKDF2" - -#: util/grub-mkpasswd-pbkdf2.c:47 -msgid "Length of generated hash" -msgstr "DÅ‚ugość wygenerowanego skrótu" - -#: util/grub-mkpasswd-pbkdf2.c:48 -msgid "Length of salt" -msgstr "DÅ‚ugość zarodka" - -#: util/grub-mkpasswd-pbkdf2.c:87 -msgid "Generate PBKDF2 password hash." -msgstr "Generuje skrót hasÅ‚a PBKDF2." - -#: util/grub-mkpasswd-pbkdf2.c:144 util/grub-mkpasswd-pbkdf2.c:151 -msgid "failure to read password" -msgstr "nie udaÅ‚o siÄ™ odczytać hasÅ‚a" - -#: util/grub-mkpasswd-pbkdf2.c:146 -msgid "Reenter password: " -msgstr "Potwierdzenie hasÅ‚a: " - -#: util/grub-mkpasswd-pbkdf2.c:160 -msgid "passwords don't match" -msgstr "hasÅ‚a nie zgadzajÄ… siÄ™" - -#: util/grub-mkpasswd-pbkdf2.c:169 -msgid "couldn't retrieve random data for salt" -msgstr "nie udaÅ‚o siÄ™ odczytać danych losowych na zarodek" - -#: util/grub-mkpasswd-pbkdf2.c:184 -#, c-format -msgid "cryptographic error number %d" -msgstr "błąd kryptograficzny numer %d" - -#: util/grub-mkpasswd-pbkdf2.c:203 -#, c-format -msgid "PBKDF2 hash of your password is %s\n" -msgstr "skrót PBKDF2 hasÅ‚a to %s\n" - -#: util/grub-mkrelpath.c:67 -msgid "No path is specified.\n" -msgstr "Nie podano Å›cieżki.\n" - -#: util/grub-mkrelpath.c:78 -msgid "PATH" -msgstr "ÅšCIEÅ»KA" - -#: util/grub-mkrelpath.c:79 -msgid "Transform a system filename into GRUB one." -msgstr "PrzeksztaÅ‚ca nazwÄ™ pliku w systemie na nazwÄ™ dla GRUB-a." - -#: util/grub-mkrescue.c:100 -msgid "save ROM images in DIR [optional]" -msgstr "zapisuje obrazy ROM do KATALOGU [opcjonalne]" - -#. TRANSLATORS: xorriso is a program for creating ISOs and burning CDs. -#: util/grub-mkrescue.c:103 -msgid "use FILE as xorriso [optional]" -msgstr "używa PLIKU jako programu xorriso [opcjonalne]" - -#: util/grub-mkrescue.c:109 -msgid "use STRING as product name" -msgstr "używa ÅAŃCUCHA jako nazwy produktu" - -#: util/grub-mkrescue.c:111 -msgid "" -"enable sparc boot. Disables HFS+, APM, ARCS and boot as disk image for i386-" -"pc" -msgstr "" -"włącza rozruch typu sparc; wyłącza HFS+, APM, ARCS oraz rozruch jako obraz " -"dysku dla i386-pc" - -#: util/grub-mkrescue.c:112 -msgid "" -"enable ARCS (big-endian mips machines, mostly SGI) boot. Disables HFS+, APM, " -"sparc64 and boot as disk image for i386-pc" -msgstr "" -"włącza rozruch ARCS (maszyny mips big-endian, głównie SGI); wyłącza HFS+, " -"APM, sparc64 i rozruch jako obraz dysku dla i386-pc" - -#. TRANSLATORS: it generates one single image which is bootable through any method. -#: util/grub-mkrescue.c:125 -msgid "Make GRUB CD-ROM, disk, pendrive and floppy bootable image." -msgstr "" -"Tworzy uruchamialny obraz pÅ‚yty CD, dysku, pendrive'a lub dyskietki z GRUB-" -"em." - -#: util/grub-mkrescue.c:130 -#, c-format -msgid "" -"Generates a bootable CD/USB/floppy image. Arguments other than options to " -"this program are passed to xorriso, and indicate source files, source " -"directories, or any of the mkisofs options listed by the output of `%s'." -msgstr "" -"Generuje uruchamialny obraz CD/USB/dyskietki. Argumenty inne niż opcje tego " -"programu sÄ… przekazywane do xorriso i oznaczajÄ… pliki źródÅ‚owe, katalogi " -"źródÅ‚owe lub dowolne opcje mkisofs wymienione w wyjÅ›ciu \"%s\"." - -#: util/grub-mkrescue.c:134 -msgid "Option -- switches to native xorriso command mode." -msgstr "Opcja -- przełącza w natywny tryb polecenia xorriso." - -#: util/grub-mkrescue.c:135 -msgid "Mail xorriso support requests to ." -msgstr "W sprawie xorriso prosimy pisać na adres ." - -#: util/grub-mkrescue.c:221 util/grub-mkstandalone.c:114 -msgid "[OPTION] SOURCE..." -msgstr "[OPCJA] ŹRÓDÅO..." - -#: util/grub-mkrescue.c:257 util/grub-mkrescue.c:300 util/grub-mkrescue.c:588 -#, c-format -msgid "enabling %s support ..." -msgstr "włączanie obsÅ‚ugi %s..." - -#: util/grub-mkrescue.c:486 -msgid "xorriso not found" -msgstr "nie odnaleziono xorriso" - -#: util/grub-mkrescue.c:623 -msgid "" -"Your xorriso doesn't support `--grub2-boot-info'. Some features are " -"disabled. Please use xorriso 1.2.9 or later." -msgstr "" -"Zainstalowana wersja xorriso nie obsÅ‚uguje \"--grub2-boot-info\". Niektóre " -"opcje sÄ… wyłączone. ProszÄ™ użyć xorriso 1.2.9 lub nowszego." - -#: util/grub-mkrescue.c:650 -msgid "" -"Your xorriso doesn't support `--grub2-boot-info'. Your core image is too " -"big. Boot as disk is disabled. Please use xorriso 1.2.9 or later." -msgstr "" -"Zainstalowana wersja xorriso nie obsÅ‚uguje \"--grub2-boot-info\". Obraz core " -"jest zbyt duży. Rozruch jako dysk jest wyłączony. ProszÄ™ użyć xorriso 1.2.9 " -"lub nowszego." - -#: util/grub-mkstandalone.c:115 -msgid "" -"Generate a standalone image (containing all modules) in the selected format" -msgstr "" -"Generuje samodzielny (zawierajÄ…cy wszystkie moduÅ‚y) obraz w wybranym formacie" - -#: util/grub-mkstandalone.c:115 -msgid "Graft point syntax (E.g. /boot/grub/grub.cfg=./grub.cfg) is accepted" -msgstr "" -"Akceptowana jest skÅ‚adnia z punktem podmiany (np. /boot/grub/grub.cfg=./grub." -"cfg)" - -#: util/grub-mount.c:552 -msgid "IMAGE1 [IMAGE2 ...] MOUNTPOINT" -msgstr "OBRAZ1 [OBRAZ2 ...] PUNKT_MONTOWANIA" - -#: util/grub-mount.c:575 -msgid "need an image and mountpoint" -msgstr "wymagany jest obraz i punkt montowania" - -#: util/grub-probe.c:731 -msgid "given argument is a system device, not a path" -msgstr "podany argument jest urzÄ…dzeniem systemowym, a nie Å›cieżkÄ…" - -#: util/grub-probe.c:736 -msgid "separate items in output using ASCII NUL characters" -msgstr "oddziela elementy wyjÅ›cia przy użyciu znaków ASCII NUL" - -#: util/grub-probe.c:754 -#, c-format -msgid "[default=%s]" -msgstr "[domyÅ›lnie=%s]" - -#: util/grub-probe.c:756 -msgid "print TARGET" -msgstr "wypisuje CEL" - -#: util/grub-probe.c:757 -msgid "available targets:" -msgstr "dostÄ™pne cele:" - -#: util/grub-probe.c:839 -msgid "[OPTION]... [PATH|DEVICE]" -msgstr "[OPCJA]... [PLIK|URZÄ„DZENIE]" - -#: util/grub-probe.c:840 -msgid "" -"Probe device information for a given path (or device, if the -d option is " -"given)." -msgstr "" -"Wyszukanie informacji o urzÄ…dzeniu dla podanej Å›cieżki (lub urzÄ…dzenia, " -"jeÅ›li podano -d)" - -#: util/grub-render-label.c:60 -msgid "read text from FILE." -msgstr "czyta tekst z PLIKU." - -#: util/grub-render-label.c:62 -msgid "use COLOR for text" -msgstr "używa KOLORU dla tekstu" - -#: util/grub-render-label.c:64 -msgid "use COLOR for background" -msgstr "używa KOLORU dla tÅ‚a" - -#. TRANSLATORS: The result is always stored to file and -#. never shown directly, so don't use "show" as synonym for render. Use "create" if -#. "render" doesn't translate directly. -#: util/grub-render-label.c:69 -msgid "set the label to render" -msgstr "ustawia etykietÄ™ do renderowania" - -#: util/grub-render-label.c:73 -msgid "use FILE as font (PF2)." -msgstr "używa PLIKU jako fontu (PF2)." - -#. TRANSLATORS: This file takes a text and creates a graphical representation of it, -#. putting the result into .disk_label file. The result is always stored to file and -#. never shown directly, so don't use "show" as synonym for render. Use "create" if -#. "render" doesn't translate directly. -#: util/grub-render-label.c:136 -msgid "Render Apple .disk_label." -msgstr "Renderowanie .disk_label Apple'a." - -#: util/grub-render-label.c:158 util/grub-syslinux2cfg.c:169 -msgid "Missing arguments\n" -msgstr "Za maÅ‚o argumentów\n" - -#: util/grub-script-check.c:87 -msgid "[PATH]" -msgstr "[ÅšCIEÅ»KA]" - -#: util/grub-script-check.c:88 -msgid "Checks GRUB script configuration file for syntax errors." -msgstr "Sprawdza plik konfiguracyjny skryptu GRUB-a pod kÄ…tem błędów skÅ‚adni." - -#: util/grub-script-check.c:207 -#, c-format -msgid "Syntax error at line %u\n" -msgstr "Błąd skÅ‚adni w linii %u\n" - -#: util/grub-script-check.c:212 -#, c-format -msgid "Script `%s' contains no commands and will do nothing\n" -msgstr "Skrypt \"%s\" nie zawiera poleceÅ„, wiÄ™c niczego nie zrobi\n" - -#: util/grub-setup.c:79 -#, c-format -msgid "use FILE as the boot image [default=%s]" -msgstr "używa PLIKU jako obrazu startowego [domyÅ›lny=%s]" - -#: util/grub-setup.c:81 -#, c-format -msgid "use FILE as the core image [default=%s]" -msgstr "używa PLIKU jako obrazu core [domyÅ›lny=%s]" - -#: util/grub-setup.c:210 -msgid "No device is specified.\n" -msgstr "Nie podano urzÄ…dzenia.\n" - -#: util/grub-setup.c:224 -msgid "" -"Set up images to boot from DEVICE.\n" -"\n" -"You should not normally run this program directly. Use grub-install instead." -msgstr "" -"Ustawia obrazy do uruchomienia z URZÄ„DZENIA.\n" -"\n" -"Zwykle ten problem nie powinien być bezpoÅ›rednio uruchamiany. ProszÄ™ użyć " -"programu grub-install zamiast tego." - -#: util/grub-setup.c:228 -msgid "DEVICE must be an OS device (e.g. /dev/sda)." -msgstr "URZÄ„DZENIE musi być urzÄ…dzeniem systemu operacyjnego (np. /dev/sda)." - -#: util/grub-setup.c:297 -#, c-format -msgid "Invalid device `%s'.\n" -msgstr "NieprawidÅ‚owe urzÄ…dzenie \"%s\".\n" - -#: util/grub-syslinux2cfg.c:64 -msgid "root directory as it will be seen on runtime [default=/]." -msgstr "katalog główny, jaki bÄ™dzie widziany w czasie dziaÅ‚ania [domyÅ›lnie=/]." - -#: util/grub-syslinux2cfg.c:69 -msgid "" -"current directory of syslinux as it will be seen on runtime [default is " -"parent directory of input file]." -msgstr "" -"katalog bieżący syslinuksa, jaki bÄ™dzie widziany w czasie dziaÅ‚ania " -"[domyÅ›lnie: katalog rodzica pliku wejÅ›ciowego]." - -#: util/grub-syslinux2cfg.c:74 -msgid "write output to FILE [default=stdout]." -msgstr "zapisuje wyjÅ›cie do PLIKU [domyÅ›lnie=standardowe wyjÅ›cie]." - -#: util/grub-syslinux2cfg.c:148 -msgid "Transform syslinux config into GRUB one." -msgstr "PrzeksztaÅ‚ca konfiguracjÄ™ syslinuksa na konfiguracjÄ™ GRUB-a." - -#: util/mkimage.c:688 util/mkimage.c:717 util/mkimage.c:734 -msgid "cannot compress the kernel image" -msgstr "nie można skompresować obrazu jÄ…dra" - -#: util/mkimage.c:766 util/mkimage.c:1077 -#, c-format -msgid "unknown compression %d" -msgstr "nieznana kompresja %d" - -#: util/mkimage.c:1088 -msgid "Decompressor is too big" -msgstr "Dekompresor zbyt duży" - -#: util/mkimage.c:1133 -#, c-format -msgid "core image is too big (0x%x > 0x%x)" -msgstr "obraz core jest za duży (0x%x > 0x%x)" - -#: util/mkimage.c:1140 -#, c-format -msgid "kernel image is too big (0x%x > 0x%x)" -msgstr "obraz jÄ…dra jest za duży (0x%x > 0x%x)" - -#: util/mkimage.c:1220 util/mkimage.c:1501 -#, c-format -msgid "diskboot.img size must be %u bytes" -msgstr "rozmiar pliku diskboot.img musi wynosić %u bajtów" - -#: util/mkimage.c:1571 -msgid "" -"fwstart.img doesn't match the known good version. proceed at your own risk" -msgstr "" -"fwstart.img nie pasuje do żadnej znanej dobrej wersji. Ewentualna " -"kontynuacja na wÅ‚asne ryzyko" - -#: util/mkimage.c:1575 util/mkimage.c:1601 -msgid "firmware image is too big" -msgstr "obraz firmware jest za duży" - -#: util/resolve.c:93 -#, c-format -msgid "invalid line format: %s" -msgstr "błędny format linii: %sn" - -#: util/setup.c:167 -msgid "the first sector of the core file is not sector-aligned" -msgstr "pierwszy sektor pliku core nie jest wyrównany do sektora" - -#: util/setup.c:177 -msgid "non-sector-aligned data is found in the core file" -msgstr "odnaleziono dane nie wyrównane do sektora w pliku core" - -#: util/setup.c:199 -msgid "the sectors of the core file are too fragmented" -msgstr "sektory pliku core sÄ… zbyt pofragmentowane" - -#: util/setup.c:280 -#, c-format -msgid "the size of `%s' is not %u" -msgstr "rozmiar \"%s\" nie wynosi %u" - -#: util/setup.c:290 -#, c-format -msgid "the size of `%s' is too small" -msgstr "rozmiar \"%s\" jest za maÅ‚y" - -#: util/setup.c:428 -msgid "" -"Attempting to install GRUB to a disk with multiple partition labels or both " -"partition label and filesystem. This is not supported yet." -msgstr "" -"Próba zainstalowania programu GRUB na dysku z wieloma etykietami partycji " -"lub zarówno z etykietÄ…, jak i systemem plików. To nie jest jeszcze " -"obsÅ‚ugiwane." - -#: util/setup.c:441 -#, c-format -msgid "unable to identify a filesystem in %s; safety check can't be performed" -msgstr "" -"nie można zidentyfikować systemu plików w %s; nie można wykonać sprawdzania " -"bezpieczeÅ„stwa" - -#. TRANSLATORS: Filesystem may reserve the space just GRUB isn't sure about it. -#: util/setup.c:445 -#, c-format -msgid "" -"%s appears to contain a %s filesystem which isn't known to reserve space for " -"DOS-style boot. Installing GRUB there could result in FILESYSTEM " -"DESTRUCTION if valuable data is overwritten by grub-setup (--skip-fs-probe " -"disables this check, use at your own risk)" -msgstr "" -"%s zawiera system plików %s, który nie jest znany z rezerwowania miejsca na " -"uruchamianie w stylu systemu DOS. Instalowanie programu GRUB może spowodować " -"USZKODZENIE SYSTEMU PLIKÓW, jeÅ›li ważne dane zostanÄ… zastÄ…pione przez " -"program grub-setup (parametr --skip-fs-probe wyłącza to sprawdzanie; należy " -"go używać na wÅ‚asne ryzyko)" - -#. TRANSLATORS: Partition map may reserve the space just GRUB isn't sure about it. -#: util/setup.c:458 -#, c-format -msgid "" -"%s appears to contain a %s partition map which isn't known to reserve space " -"for DOS-style boot. Installing GRUB there could result in FILESYSTEM " -"DESTRUCTION if valuable data is overwritten by grub-setup (--skip-fs-probe " -"disables this check, use at your own risk)" -msgstr "" -"%s zawiera mapÄ™ partycji %s, która nie jest znana z rezerwowania miejsca na " -"uruchamianie w stylu systemu DOS. Instalowanie programu GRUB może spowodować " -"USZKODZENIE SYSTEMU PLIKÓW, jeÅ›li ważne dane zostanÄ… zastÄ…pione przez " -"program grub-setup (parametr --skip-fs-probe wyłącza to sprawdzanie; należy " -"go używać na wÅ‚asne ryzyko)" - -#: util/setup.c:465 -#, c-format -msgid "" -"%s appears to contain a %s partition map and LDM which isn't known to be a " -"safe combination. Installing GRUB there could result in FILESYSTEM " -"DESTRUCTION if valuable data is overwritten by grub-setup (--skip-fs-probe " -"disables this check, use at your own risk)" -msgstr "" -"%s zawiera mapÄ™ partycji %s oraz LDM, co nie jest znane jako bezpieczne " -"połączenie. Instalowanie programu GRUB może spowodować USZKODZENIE SYSTEMU " -"PLIKÓW, jeÅ›li ważne dane zostanÄ… zastÄ…pione przez program grub-setup " -"(parametr --skip-fs-probe wyłącza to sprawdzanie; należy go używać na wÅ‚asne " -"ryzyko)" - -#: util/setup.c:478 -msgid "" -"Attempting to install GRUB to a partitionless disk or to a partition. This " -"is a BAD idea." -msgstr "" -"Próba zainstalowania programu GRUB na dysku bez partycji lub na partycji. To " -"jest ZÅY pomysÅ‚." - -#: util/setup.c:483 -msgid "" -"Attempting to install GRUB to a disk with multiple partition labels. This " -"is not supported yet." -msgstr "" -"Próba zainstalowania programu GRUB na dysku z wieloma etykietami partycji. " -"To nie jest jeszcze obsÅ‚ugiwane." - -#: util/setup.c:489 -#, c-format -msgid "Partition style `%s' doesn't support embedding" -msgstr "Partycje typu \"%s\" nie obsÅ‚ugujÄ… osadzania" - -#: util/setup.c:496 -#, c-format -msgid "File system `%s' doesn't support embedding" -msgstr "System plików \"%s\" nie obsÅ‚uguje osadzania" - -#: util/setup.c:537 -msgid "Your embedding area is unusually small. core.img won't fit in it." -msgstr "Obszar osadzania jest niezwykle maÅ‚y, nie pomieÅ›ci core.img." - -#: util/setup.c:559 util/setup.c:725 util/setup.c:844 -msgid "no terminator in the core image" -msgstr "brak odstÄ™pu w obrazie core" - -#: util/setup.c:622 -msgid "core.img version mismatch" -msgstr "niezgodność wersji core.img" - -#: util/setup.c:675 -msgid "" -"embedding is not possible, but this is required for RAID and LVM install" -msgstr "" -"osadzanie nie jest możliwe, ale jest wymagane przy instalacji na RAID-ie lub " -"LVM-ie" - -#: util/setup.c:682 -#, c-format -msgid "can't determine filesystem on %s" -msgstr "nie można okreÅ›lić systemu plików na %s" - -#: util/setup.c:685 -#, c-format -msgid "filesystem `%s' doesn't support blocklists" -msgstr "system plików \"%s\" nie obsÅ‚uguje list bloków" - -#. TRANSLATORS: cross-disk refers to /boot being on one disk -#. but MBR on another. -#: util/setup.c:694 -msgid "embedding is not possible, but this is required for cross-disk install" -msgstr "" -"osadzanie nie jest możliwe, ale jest wymagane dla instalacji na wielu dyskach" - -#: util/setup.c:700 -msgid "" -"Embedding is not possible. GRUB can only be installed in this setup by " -"using blocklists. However, blocklists are UNRELIABLE and their use is " -"discouraged." -msgstr "" -"Osadzanie nie jest możliwe. Program GRUB może być instalowany z tymi " -"ustawieniami tylko używajÄ…c list blokowania. Jednakże, listy blokowania sÄ… " -"NIEPEWNE, a ich używanie jest niezalecane." - -#. TRANSLATORS: Here GRUB refuses to continue with blocklist install. -#: util/setup.c:705 -msgid "will not proceed with blocklists" -msgstr "nie zostanie kontynuowane za pomocÄ… list blokowania" - -#: util/setup.c:817 util/setup.c:837 -msgid "blocklists are invalid" -msgstr "listy bloków sÄ… błędne" - -#: util/setup.c:847 -msgid "blocklists are incomplete" -msgstr "niekompletne listy bloków" diff --git a/thirdparty/grub-2.04/po/pt.gmo b/thirdparty/grub-2.04/po/pt.gmo deleted file mode 100644 index 797778529bcb353199b6ccae0f3f0498f7783e91..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 123717 zcmdqKcYKsZ+qb`=7il620(wzGkt9IqO-M)rku;OgM1)OtQzY4qy9p%r2H3DGRzwAR zM+F;ptk}@|wioQZqFA_nkMGRvCQl(Qw?Rq|E{Bm3!jII-#X&+Wx-)^DU3kn|2b?6|A1X!tEer{KClD!B&hO_gS}xI z>;xCWB)9~sK9|50xCsu1pF%|I>r!j|$3xYB9_$Z;a5Oy4xjzKQVSg63gDvW;JUYUW z*!#f)U=eHqBT)6KgUau6XMfz;KZmVw??z=2i*H}p7xskvz_E_Apu#PNs&5c>gEdg? zcQRD{&UWs%LDl~eD0#gARj+p)zl5W(?}VtBFKL<8lT@g7o(p@zFjPC920geMc7>bZ zzVI2Sa=s6xr#oOjxOcsE9}U$W+0Gt>(%YlqO1K6thJzY>zQf>3C_UZ|6>k@mTzVaC z^{O{iz6U~;dn{BtOm^;>Q1Uw*j(|r))$?Y!AAAq?g1xm6MF-k4j+b-VawyK|1_A2Jp%i}^-%df4y8Bm z!andn(1X2Cu;rc%dt+bVxC|=(1)|lC#o2#= zO0U~VRxgG_m8%GjfgvdWbx`Gd40`ZAm<)X%3#uMtp~6pt z(w7pb^j1NQL+hdP-wGv6`=MASnM?jtilYFO*)K;q2Ez)%Q`T@##Is zFQDYN1CE64PP6@JB2+({346lXQ0axB^!f~VFx(7Pj$Kgl?ti+i=LD#7&VedV2&#Qf zhuz_gPr zf=c&scr^R~s+|u%%eLDIP~}+xrH7Y6<+lxXfM3A9;0~z#TCB45=mRguJ{hWAUx&jK z4yxY$&bIA00ct$SgOYOqD*t6r1-f?Z+z^K5Kf{+``wMJ;dJ_h){{e&0f1$NM1uL;9U1as^VmK3fn~QBa`EVrm5;zoI z2vwiWFabUZ)gPaND&O01IQ-Jtd#|?jItWT1(%=|)1eD%h2xq|!@D2DUl-|E_iA{G0 zRJ;zC+VNsAlw60wad0HefR#|~cAMh{D1F!j3*h@u`Hj5Hwod_UkNt3{@|VFD@EE9Y z$3wN#mGE46r(-(Gt#r3R)%SNO`FFU&>cLp3^3Q;hS1IfRSHTJJCb%#B$hrRx6~5<{ zwj873e%Q02^uq7lm%(n>&w>Nt8fSkT?vMR7sPcXXrO&O_*!CF=rH@0Q`s)~|{*(?| z!X;4h3`6O49aQ||pz5_2Cd22U#*N>g>fQY+Th9KlEB1*{<(uWW5USsWVLm(osy;75 z)$d~{IqZU+;67_@`TIlZ{aAPaJRC}n$3V>s>!Hf`6qMY)fJ&#$)waBSq3qdE`7eel zZw*xWPJsR3c~J2;K-KF-C^>xw75^vb!H(Bh`6fa2s~J#oJ`DDSA*giDa_%=k<@+EU z4WEaqN5Zu>e-EnusZi~9h+`0{949(n3j1Kc3#vRXLgoJn^x&_sAKZVP9e*c73V~ z`q6r*_Pie^z^9?odlt5V+oAOAb11od568i-*E6=knNaShLe=kDD7|?S9thupQTRJl zy5SqFoK`~V;W{We-2)ZxX{dU=>-=}Xme||eX!X7W#L3qcZi4qg#gE)%+j%)uxi5v% zkF`+kehXB(&%(j*1K0t!zuD^BK2Z4&fUV#JsPY~RC7(G^1)i4LX z4^^JzTdbZtS1XGc@vo8Xq2klJBdqGyKxoe}k%L zx4W!<41~&OB9#2|9Yav{S_LJqJD}wIw6kxAO8++~J?pl?<~tZl-jkrxEru$0C6rt) zfPT0UN-uidZQFA!EXQ65PlfkGh zz_C#JavD^6>!9LqhMnLmum^k}syshCcHe02BOG&~(mB#`1yp^mf&0NNQ0cu3J@^&e z2X>-U?+yDyxsQPwcjrLGKMJZm7eUqIMyPS-eyIAs303ZP_t|j$q2xIhs@#jA@?Q#- z?%6O2-Uxfbe?jTZTGoQ?c4w*r>mjl`64_J{s@&$_eX3yPJyx?=Ip0B`_)kLdJZbyPAIwc zeALQwq+SPxad%~10H5K4c3hrMCX$87x3@Br-j(1Rf;IiCZMg6p8-?fW== z5RQTxCqhvD_AID!T@DrQ0k|)G9jg7mh03q>6E@v`a0K?TaDP}1mEOs409*@|{}WL0 z-++?Kw@~fd>q#4K8kAfEQ2Cw@mEP@8^?4Sm{Xd7w{|~5idTz1vLpn^vUg%g4CFeCz z?e-j0eSd^XFXbtlUoKSnkAcJCEwBrG8xDqF!ESJ$r)@n3LAg(Y17Rub4^M*~;muIx z-v~RwS79pL4mCdXc*f2H<*+UG^I;o!85|0)hGF;|lwM4F7TLmLm;ld&3ct$nLa6dy z4ponvp$FfF{opRB@*Vh`m2)~&eafKPsUE6bE{2lJEl}~EbM9Zm4%k~hZ~IwiI2rp8 zXAeTfKLJYq7r}P$0oW2g0b9eTq4eqnsCs<^)t+s)+I`vn@F46bz#;G^m;|>$h4;N+ z*$b+ksZeq$g_7fCuoJunO5g5)8t0yb%Kr`63%&;x|5vE|4|>tocM6m|7QwFYIH>kL z8%kaqpvv(iRDXCED*O(p@ZDds?LH7n-f2+r15oi!hbq@KQ03YPJ@}k+{|YLfgqJP5 zL$yaD+zVzv<##Al{|`gy*-9vVTn8oJ=ixB;6;wHTzGC%d66}UO9V(q-sB%Q0;;(?p z?>4A(w>tkXpxXOC(1Vk$>bVi7!)IX)?DRUafX73n)BX+H?h{}S?0Hb- z3&4DM0aU;L(D`?I(~iRfV0+wCq2xaqs@)pk7`Pg$J-5RB;CoQ%{{r`io!+wL9|9+0 zPlqb+ad0F&7xspa!F}PoQ2k^FRJh-v#+lAT@AfI%}ZX{Z_aS+yXuL7F7O!z+SM+J2u^+Q1+=%<(luf7)me7p~k5? z#}lFQI}@rL7eS3{mqW?>A=n*$3RS+}q2$@_U3-4AKUDdaK=rFrVIQ~-hTx+x3yye? zHigTe%CQBi-@OW3!C#=#{R2uao!__Zf1qO?l%5<1=fGQ`^t#mtmZ?zV$YQAZbU7RW zZ-isvn^5_7+ivA{pku0ICY1j?sByIns{PM#_D7-Q@dZ?U_xaE=8LFMKpyWOqN>9SD zA6x+?zZ+n0_#pJ)>rndmE7bVV?IRm*92|sw7F2o>*cYA!RiB%n2j7ARz(1hM+52PL z{<%>8rBLl~DpYx{hDvV}90y;4DX_yQwj2}SXzYi=0dNIW`ZqzP^9+>!eF8PE{Ovjgw;aE7Z2g%n-~Lc?9SN21Ay9IygzaEGR5?z9n(x*? z`9BA{z&D}f`vp||HlN#ePIMd(RlZqJ^;--jk5e7jz(v?M!F1U33!B~osQN5}>Tj!| z#*LexBn-Y z{H}y*w@py>{SHd6d|xxyfPLT`SOAB?>!IYn4JzHAp~}_u8>^S&pvpfVMqmw;etifP zZ=Y|OYv4Gj^1cIy!{4FgIP5!n9x)AOVLu%%gD=56IP-g3{?%{@_S>Q4^g8Sae}Y4y z?+4rO4}t@+PKHU)50l~9a4>ujNeDDFxu?S}@Gz)$Iufe<_dvDB%dk8A3aXsG9aiosP~|!dD&NIW z?YoF2a4w-OYxCkoTQn(*H-T7Y)_rd;vbAJh{{GUOU zujQ{+jzgi+84p$dd?-B%LG|Oapu*n>74Ai-{62w_>#wja?DU(p_katq4|VqCupjnI zVNdt~91UM}{_TIa^GaW+{QASa;8du5a-iz92&x^HLFK#3*{_DZuy2IY`%^9mh}Mqu9TPo#2K)ZF-NwzSw_+ir>wb zVB!yg9`?yl@?Ho#!xNzLJsYaL*Fp7@$D#DCb3%gY=OZ1bK$RyOs=XFLmA4*BE@wj3 z{|c!5Z-W{q9*4^BMX36|3l;twXaCdLyR@+JJ*ak0h01R#R5@ouwP!U{Jy$~IvmR<( zxF2eK+zu7Leai%M&blw0fV~td-j#3!d;psM4<#3U6m$US4^@vesP-*_lFv%0{MI@D z`=ILc98`VYa{gaI)iNB%_g6Th1aDVJqK*@Kb<7-g$`4P^B`*%q2O@lS?PkKHlM`0m67v{hZVG10vSAreqpyaR=Y92cVYJPYON*-TBrQ5QT4c`;W zeYmq{Ivx(C&r#^X6;Sc6hbrfTP;z_?s=nXCRM?@j)t@O)a#;k`UZ+5{*J`Nty&XzE zk3gmKF4VeYCseqeT`Wg9&V=94h`gsCn-(sQkW!DqokbHs2vo;U`1YX93ha z9fFeQB~ba@167Z$Q04s$svrH~IIx?w=Rl=b3)OEffQt77RC(Tm8ZURj@o?DQRvrPU z^j1LScNVZ63aK8ej_u>8QICl|Lew(1$WgArazJ}@-t$Nz}kAzdP7r-{~ zT&VGFHB^7Q7IuKQLZ!b6s$JfNO8*zfy?fblAsI@Zlc3~M1zW;Poc|RtGl6v~oCv?$ zpZ*Jn^|AU}(>KAK->!hl?@6fs{UtmZjyS-!{|2aeVhfZ$zY0~J&!NiQ>Od>s&QR^_ zLFvO(I2;y1$@dgE60V2pU;lP&;o0^}hN^!al>dA<0iFsqK5d3$;Z~^iRI7egA3MP* z*bjorzXH-szLik*Is+=bJDmM3XHV#F`+X8bEWVLY?KTRko`*oya}iWMkA~8xQ=R*T zQ1!eWs$P#njSD-V`fJAlmVKb)m+UwRN)NMPYgiAZ=f^|o<#kZ~>ANN4j?^USueuir2 zUI*FyMnlf*p$Nt0Yyf+`t$9@kif?bkq|0;zFe+~5DcBp(? zCR+}IDsMK_xEzAYZ#C5Te4pbxQ1VJhvE$resP@f+(x-aoemzuvFF^I5&ckhbGvO%g zM?#I0YoOA55-R?eQ03ZxM1n63PJ!}20jhlKp~~|tRQrAdRo;OktzP9qg|CD1zZ~Yl zm!aChOSS!H8kD^NO22EM`qxQNdUPf<^@fuFJJ5qaL)CY`QMP^3pyD46RnKZD|LdXZ z_cBy}*a=6##L)?6e?JGR-`wl?3e>vg8>svb8DsUW9%?)~7b?BWq4IeQD&Id~YuIV5 zEoXPA@jMA;!tqe^+3`^Nv=M4Ndy zm2(HwxHe$Cb!8a07SuTQ6;!+a0o5M;CfIdb8qCLj92^I? zLiNMeOd<-`2dcc2q2w|TDxDLc+G`z@+#iCf&lk{xttTaz^T0t+`h5{p_>EBQ{Ss7q zKS7Oyy(hcz0&1N!7Z$@apwfL0N{+w5R`0JtM`Y2Sp{0mAx-$9MzZKqi|4~Lo$ra`sm9H?>Z zG^l>E*12zihhX0cRnO^ZcAdNwcEbLc<4aKO`z}=eUpux)x9RN%mCqEY@i`2&eyevp z6G|V~KR~r{7F0dgK-KSVI1xS% zrLS!>Y&k|iwfA(Wap-WUaOXmeqt8Lxj{~8`i!o63D}zRk zQ1UqwPJ!#8^x;ET2>*m1z`|Kpk4ER%c9{pw{0>{9WV=i4qL$yxt3#~ z`olyx5Bj0{+5J%c`#r}mp!&lO*aCLVv-x+2YL9X70hkY0!;blOJh&EWJb2yNKZk19 z0}8DCQ=!J0La6?FBFuo-K+U6{Lg{gvLv8ycLG^=tD7lnD^{bPe{VFIqKL90~t?yw|zk52dG%K#j9c!(nhIRQnGsvgJDh zYW%B%%6~ajyRU`P&wHWd_M-Fu6qaLeQEdH>gdX-&pyaX+s$N^5>hTto{_KQmuc5PT z{&`UHJPoS+_d<XQYf9|5TO_!OvoZ-t8g3{?E>Q1WSanAP)Sn1j6-mcXmwG}vl^o#!&4@~eT8@3~On zABF0loe#J5=m%Af=}_(AclP6<`tudA2;K&zCoLA*^-3y~+$x~bI|U}di=p)T5-9z; z9cp~t2sJJ}0@L7!a28BF!q)33sQO0XPnx3^m`} z4>c}44b^UMz*cYvRQvtr{JWQ0_kmF3#!#sAra(Vj01t%^LHTzHSiKkk)!)*g^lTnX zh1F2;*Fx#fW+=UT2TBfYf>ut0pyFji$@K^*IX6IsyB4Z{JP!AQKS1@jKjA?zsm$gx z7fRlBP~*f(D1F=jHD0_9+rz!fZF%}Y#h>KtWl;0hawt7{5UQS=q4eYxsPeoC)lR=b z>5;F(%6C7gaeN4rK97RgFaSrw+u$MaeW-RDR%!dqB&c6eN zUSp56`jZdU?ngoC&!tf1x)Q3q*Fx$2%~0dcW~g>}9ZKH6IQw2ptp6~m_R56nXQfbb zJQ1qhZh>RqYtVxotE_yJpwc}QDqang|0<~TZiABB^UnV(sBx@)wVl_-!4UQZQ1j!n zQ1$vA9u0ei5`0&{3!(be$gpkyVmJ!>Nl^LT1En{wK*{M3D81=XW7ErkLF`pf{;xpw zhcBV}XWOG}e>o6JKFP2jOoysRz}ZiB_I1$1{V}NgKZMdtU&OXsGL-x?;Al7(Dxb5U z+J7CCT<&&!6{_F-1Ql*@)au_Id(@MA)v*>Q4%k{*Q%i;2}`q4|V%b263BFUXp99Z_-5U~oFT?Ag%3pu9UGLotbFqI0 z=fJVY*m|vkYX3W-=7F~yJ05G>WfD}r6;N`z4oVN7fgbz?N?&>&XZ!06sB{{j#*rHx zUw|I=AEElyKF24R--V_?g+CoiukM42_ZpPke}j_m0Vmjgl>wE14OBX7;K^_kR6m$> zq8&dt|5oK%Z0WyfPCi{S%?|cOBID@C4L&^)*yFtxmOiH2`W{&VvfK7^)nn zLyeOgpwj;cX2Gt@t(@jU&11(w>CHV*`u{zYo{d^z<7Ywj&t*{a$3;;3d0VL9A!K2$rO0wv$o&V3`4UVPx}?as9IPKE7pFMyK! zVNmjFfYOJ1pvH@rq2&1mRDbS&mYp|-LX|TaN^YZ|;vE4sz8nqf;JHxo+pMzv<6tOz z4V2t(aC{s}U*Cn2Ysa%~epyiKkX*PQJi>7)RQ_i}$@4;}@#9XYa(@P;=LzRnxeb7l zPc|G07ebZu9H@T19;*CLL&@tSsPc6@*Xr#cD7`xbYWz9|O3v3p<^QLK{98s=t&#)%!$P4c9vN z&KFttBq%xNK*g_ss_!Xqg2F@f*EgZ^?{~44PbpMAqfp^4hpNwO&iz*?`S)9G^`a1} zo#sQ;>qKY2*4dwh>MvhI)vx;{b{-f5Rjvq>{8mB9^L#i7J_Ob8euagw~br|l~DcbA=nwd4LiXvq2%x@RQab}VZ)a~wcn*s z`hGi<9z6w>&IeHP_g$G_eh=?K`3IoVJ040dPeKoV1=UYFt+D0p4%N;{j-#QpGvI{`|+bD+{a z3M%~RQ0d$PmG4HV_3Wci{q_atzuozN4OOpSpxSvCl)evGYtzkviWh(?M?F-#TmYq? z-$Lcv@oFp26d1;y2M>jt;Vjto8e7l9q4eZPsPbI|CHJeK>U|%S-ahNt>RM|*7%sxS z9!hUscWk%Lj(6js+A9b(Zkz?j!TVts_yg4Z*kZk{PcO%0sCG+(Ltz1w{v8da$G1X_ zbDu-WrT2BVz8O&SU^!I3JQ_+KtD(YefYP(Kq1x$pI0|~#TYE87JsP0odLz_2@(HMZ z_A69P}H$$zbwn63F?M9n#GE_Uxfzt0|q0+ko9s)PRblCnTJ1*qF zgR$2@rGGnA`}`Y99xZOR!9X|r=a4!4^{4tx7hSkp~ky8j^U^{nxnBr1{$39~_#o6c_m1;VxXp&!2TBfu zq2|RIQ01+K%6}DH25*7$;K19h{EmYu*sq1sn^&O1f9~wT)EWQw?UPw^#fK;iBSFMV5srp zFetem>D-@zO8;Z1{8~O}`^^DR531Z-pyc~4RDA|MWc6kOEX2ML zj)8YT^{Y>y#GH4*HwY?zA=LPNB2>9Agc=`i zhaP+lDxII9Y}hSJY{AGP5JLxr0G%{mP# zpOc~Lu?DK0o`ve~A36R8r6*kj`bU??ZF%RyR@j$9 z$^958JzEDoxDl#euS1pZ7pU^}c*2$^6{@~Da2%|H)8RTe8Gh#66Q8tlTnN?APJv_L z6;R{mHmG@T7nJ<7x7d6Z!gTCMLk~U#Rj+rU#?2j2a_;k#EzfAEdgj427=apB?uIJ& z7N~ap5USk&fs*F|Puq3KXvZn=P297f;`e*T>d`1DIn_ex<&{wNxeH29o`Wja_fY+! z=d;#-2<(SF4N8AYq5A8+Q0tku96yI@=U<@8+wD19z7#0AWI*LR531hPQ2l1P^FQDD zUk6pM2cX*XW#|8q^WO=TZ>Q(2p7n;xZyc2TilO>dJ(RpJhpN|IFcrQ56@Ra-cD&o) z(GR7!H$ctbPe93MCsh1yFIYK^htjJfp!&mcQ1ZDAs(vp)mH%U?a{Ug~ZarVL;YLB( zXG5i51Eo)=J3ayr#{LVG+{V6S(>(-E!oCPfE|){azYR*BPeIB5J;z^RTkPFmw(FkW zQ2pQ_*b&Zz<6*ILUj;L<-wdna_fT?N^oo_+$*>&zJunOQ-Im}x5eA_8<;QR?On%k& zi{)@K_S>Q4@D-Gt+P`Mg9R@X?=D`Zs01tuNojv(qR!$c~wd0*o@_ia=e18XyhWq{7 z-b>`bBe1W9nqU8fl1I|(cAUt9M`E7^li|Hk_4^1)&TZeY`Spgfp{*&{a-F$b76s7lrX(9ukd~x<~!$q3YDVU|W)ksd zVNS!mj9VB!i~C7%Gl8GRt(7ac;@*RK4*SiRE|_2C$dgQ*&X{v>dld60=1Ss9N3Sv= z?4N<8`!nJGaBgb5yRqw8Z{honxO#qq4bIQHH21bGu`H}ZuFb@!}5BBfLcRXpwo*#JM z3-d7UZ{oi<9_JCZAAA7&WZd=abnH&pa{TpV!7H%0a(;IZ{t4`}Fm2GQ*YUr}g%)Yci?|5VJG1C2PTAj8uosepLst3a{^(4m}=bgJcru^>^1Vot(|rDbtnFO z+;7F`IR&FJH1-_D%jcM5@ZW%WA?5+!!G0j|TT%9tdEddio;jF~=`A^}KKXQg__-97>p@;YQ-z>*5&?{!DaX<`MTx%q95mi#d@v8jI_po{=ux2>jMN zH;t(gm**+Cvy3uNZ~QeL9|e2h|B`j~4I_;@%wgDvW9GRu+Y)B3OS7eOo9E(8C(XN@ zpPaH?erFL*-)QUEiMiLkU&(tf;&|{!+#Z0j=MC)BNvl0_{TGfOVedoOGf69q`z-7i zU@~|=(UqeE{(4&A{t0{w_keTTNVwlIixq(9N8Gcq>zP9Mo3XEe^KeTbURU1rY=M(; zi^BP^#^v=m_N_LE`S*Vw!Crw`j@u)c2GV0mVxD^3+uPS>e>1SL%=Uece>>9sko2E` zUtn@@pAGxqHp<01mT2FyJ^R61@EZhI6TW+saKDpIChp&2dSO!V*K-)}3tjnS z|CIMT@jD;)6Xnq4xe@mlF@It@(jF1Q9!oeq*N_)m0docr#s4GB;keDP-e#|%S3mBt z=TTmw#2-eyRKnI_zZ-r4kHY;;!q#G*!R-m$SW=tkXLucMpJDV|+a%3{iMIlCBW4Ef zX@nVx8BLtWT)59+jZ5nu_%!}3lYINYD=>YVr1u`_TxzrNO;b9&?~lLVxjl$~Depp7Qj#iV%>?=Rtguyap^KjEk6 zF_+E;-g9uf1s3D>yF3Zkj(k5Ljf?QR27Az@aVz#?aR1Q7Kft-ajr(xi<`R9i^V=7< z3!Q(i(sj>x;uk9&jGoir0L)3mW6AEj68~R#-y3$P9C|LnY{%5&b_#xMIeb53ABue+ zjP?n?z$5Wn#rs0u(@66i-XDRlxpFMvUC*cZx8*(P?DxVc*2{MwejDApvS)ed`xXD; zunUImhIxL(Eysl`hm)|sf=R-EDQUb-C#lMFzZ(vv!``S6TZwU7= z0V|2iGTrwi{sG)hgR7dPp|rkp2_BC7H2mjd&mi9UFd2H7OEG%Jkk&ewPPi*wUdDqz z+X-_MCe67IB)ylhUxa-V{!jA0m-E{n&c@!2Fc-m}@P8e%3-_nY*=H}cVwfB?@V z>~**;!fhqyF3f9~H8zNE2>xw|dnV==-Y>zg6mu5#ec@L43jFKSp0EpWKZ>+J$Ncqa ziQBP+i9J^|2{Rn`3_!bantV{m~+^)s#dhB1iuoK`e%on(S z>B1Ef?g-)?>(YJRg}s_E)7`tgZX?WNxasMPZdAfQ@V^)KhaGUcgZJ&E`#Po;x1fvv zH13~b^jw5FkhHcEW*TM_Y3>7G!)+2q&rHX|iT|ieqZ@7?6Rrdv?aHwpzmo}Hjk%Ba zZTN4%?|vo1GuVY&?$R5NTgbUxj9V?H1h>w(y#`;$-jy`Elh*Or_rm02*YgM5iT{nf zf9=xPkM~b;(^RW<>J&i_cO4sCf+Cb-|gHEAfBF!EzI9k z=a)(NuX(S*^s&ZWx{VT9N+mq#^@R9(iwogw@c%9cn*?4N~A-tQ;uv)DUhwvf&MnC0SUkpE@w zy*+-hr!Oy|CU&_8F(tSiL7WI|0~3fl2qr23&qm7eh>Q0foQ>P*E`9l5&if(oF%5`j?dzD0Y*<6{5He8 zNaJ^=CE^Zq#gr}KUU?+=sLAovb$|KU9!b2stU;J*vE`>}7s{sH!b zFjr%L0kZ(VwYclK2J;7gv1d8y=_!CSF^PoB!#@{u0&!!{HTd0z{ZITi@qRVtA)@KRp**A9)2q^Z#%o^((3K(!Z`d-BJZDFnonZyhHkxz{m>@imJ?dkOJoVE>QH^LoN9#y$eSWw^c1dk-Sb=6wu)@4_~i z({VePFnSUQvjo3mpq?W93NUwKzZUmQ+-~4~Gj44$dQQXr4&45QnT6YDusv=Qp`IZw z+`r+Sm@6R-oh8aeF<(0@ryl!c>fjCfctg$>v@#4FLrT{!tZ(9-otFi z|5p5l@ctC;Fr1n@i_O;^^6ra9v=T%j;qMQ?U1U;S?sH z_nR?a@IH;S^!$tPrMNu~XSjUjeu(ow!^OV_|DO223lGKUsl|Na{AIri|24$hAOAye z|JJ4Vsta?XOY>~pf8+gW!i~Uh2fQ7wz->FGBmPre9*c4RT8Z;KXJPJ`2IGGhVe>Hi zx%6Ll{=%J@zWC``McA(}C%JI@lKy4*9givC{RtSdLCxQOgv-KR&u7Fd#=imkK;F}N zUj|na<|+I;!FRB)#=YrtKlTSOmH1cUKhyd5A^m?I5a)5iuYf%;XSr|}!pljwD}D#!9@aZ<=Mp!sN!knX({q*MrH;2+ zXWw+#pEPcRzmbNXSBbxiaO0hQ2k(EnH1FU&8FO@#Jjw`n0&e$V{=>T;^C0P*Yf@wE z!2Nx~--;eBqu@n6J$h)9Jl z?Dd3+Jwx#uf_Wal*0|qBoc1o>c`ke`Y=wIX5MIwxxRp4C@Fn;Z;oDNaRNh;V#!l>~ z@V<`s+c8ICSJXF6Z2PAZ{(BMU2Rv@({cfB)^S%=E0dao7%{*SSr#4*cukxyc)!|6P zL@zPm&8kfA;8T#iuvZfamIWh`V8E*m2ZEk|slT$yUs4sc0ScP=61lEEu})r@8QB?L zX+^MfNwluos|+pmS5*dL?n{G_Xk|F0;3+nE7O9d&ZJ3~ywUq=uI_NE}36r;j-Fg{z%Y^1edCAc&K>c$VAWQ z4XFy2)mDe2wL^KY4hG0qZ;{IKikNeopCBQ0<|tpgEn!m3oQwSmxX-Zg8YKw?EJixl$3?O#FT@g6TP&;83l`G zX66(u%E~SFYWxv@br1nigQMyyBf+TW_mE~?&;_4uQ`%EBUt%CCL-cAt!VQ(D_!3E@ zrY7i*L?!XkaHtj^lEuA@c8E4aYlGF^vWm*m3a>I68eHp{!YVNN2O~>^UbMzv8uZGj zct(Cvaxnn<{WD3wt~rCt?8H2Rn1)kV?UTCX8o7x9p}7paUc8TwB`K<2K=tNk^e zKNRqCGIDn>5AyVTQGb~#SY1*X@=H_x9~8p>`^pdqqc)*%trxAUsR`53XV1>gpzB0E z`KS{F>no!uctKUrk48mnf~A#Z4PJ6G!$NtmmNA9*06kRWK||AsRpIawuc~qhx)Sm- zv$EBxt%4~OiW&$q%$E9VgMk!pw$diK^0N9Ge?wK+ADBX*k|2F8NFt%SdZ}8qw6c<( z7W4;FI_xHyIWyAih|Nf7`!G3#%R>xPyU%29c1H2c`k9&8GiDYqsL#kOD4x0S|DNqc zZ)RH2OfNUPC^xNm`b?E%qL)9*vM@6(!^K3)h7LCXNd+I5CO7?R6 zCBZ6hF~T&KXsr~fvaAvX)ihXJS(N1`{(lHn z7ito2RO){vwSNfJEVU_f(sI~srcE!%W{3$TFAY~AOQyIeLxsOQ=+TbWm!_!lS5}+( zFYXwvsH+WV<|;GGBwt!aMxpuRk?!owCa>Ot+_a)u3$4q7qU^&m?fb|ixsP0sq^POJ zlDZ(tidIgUMMYjlUQtnI;hap8F363|q=?Mff}wIs>g>UgN*K4qe44IYSZzh^LPaAS zbFwC7x+B9R3mF!itR~Quw4&+R*}k;W(qK((leNV3!r^&28t#H#Fcd)HqbUTctwd!j zLp61^9&KCAbX!F~bnfB0+P`|(rK3^hiBu#I@Cs(9&&r&?NE)UB)JEzULId8CV1qIs zfM0T80A`UBaSowi?XqxW2`kY6>z8=Am~(`TgG4st4QU#^i_}q_WtFuRUS`pBJflm@ zVoA#@FT{e*uBEhM^2#FNYK35-9IG4xs|eQr-Lb|Wjn-5|n12557x6E{kwsE9y_~fd zB?$yeBMp?J+D|1Tsw6G`moS<`7%JUTjm5QEeu*u5HEXrX8cH0WuRPZN!77$y5mtLt z?k^r@t<<=LWF1tjbr}COnOG5bL$LOLq#XbMGKd%6D5t45^+Im`#(Fi$!SAIrov|nJ zQ});vWH;Iv_xig+ru))|M}6tp`9+H|X6F`o3$pWyM~*P>3w`N1`O|0l(&ravPE5}( z_NDtvmz1Mhn&+!EMri+)f-~!b_$tFFRfRuVL04gI;!8JG$;dAB!e!pftRgiO7}i)J z6QiJDI!aNBD%%LAJN#n|DK&dU8%J8JN+g$1n1E;Z3#27?_3)Ztgy9VxZ017}VYW%3 zaumwdMG;IV2?R^(%GrWOqtsNziu=$FOTtvSxt|g@6O;nV;*T$iBnT5<&TKSF7)0#m z)wtI9Yb!J~b!cL%3&ppTI7fp1CF;asZ$?JCZ#wHJ-}L;P{6hZb=BDLkcnjE}6)p5l zFPQCR2dGSJeHhh(!;I5RLZ#Ft9O=*)O1@f4GK@F%E*djt)L65rWD2$0)9HS#HcKf- zEn6%`43*bsUG2c@73Sx%u8}5AXG}#o*u<5wjL|-wd9jk*<6dz!_i7tzf<$0b?xnE{ z(|F*l)7b+?!c|S3iYhA0nuXD3PjxP%Tx4W2P*PIAAVWf#-8|X`jq9YD-(%UZyHg5o zo{f5AN1Iu8NL4sgKGZH(hXjIUe#V`ldx}#~(GX=RQspsPYdH2Y>)9CUJfTSpqtK=3 zBKtE9vWUgcI5dg{NI_brH;+Y6U8p8fxfJO#sd?pfL6$j7f{{?L%87)s?miV(F^k5I z{{NB&8&OjZWv{i+f2#no$cktNX4UH-i@e(ysk@KD5S>=YT9VC)H101laK1U(eeBi? zdHiEk{Pz%974WRToL!iCvI z)05|Tqf)iv+;hcUu(6~6IapCaTH*9POK4u+Y;Q=eztlre^IYo<^(rb$&{l03?ey?> z!I=;=W(uRQ2EryWnDT3P)5fNM?72F|d$*Q>7zvks(GN-fWx)evPEf6&&@B2d6Tb4s_ZhIi$*}ZjxVe7 zmwW6dne{y8Nq45Yg`du%I1`&0?V{tl{4jizQQ94k^1Z#!c%2I|=EHb$`s4 zRlJ>|Yy?*Ao?1lbJes{!R6BPz`ZML3Lqs#l#m}?l@1|Sr6gW2KXduG!OVcQ0BiX*O$sw zN2^+4D<-wdDkz$p<^`DE*uxlKEhx&g4)U|z2nIbZoAP)(RwcE62~rcAVA-W=OCl+z zctv4eS+>>bbhX;wpqaJ0lJgMymUb{yl14HsRaYYAspBgzTH#L}Gqy38nB$m{RNSs| z%xcn{kVV;&m74X1(YX>N_VlH}Hm^C4Q~pNXY(jq4d;ZW8HjPUwBjJz^ znQ#fSOp$I-vO4ZEaI@P-E)z7opk*1EbF!yrI(Q2hk&Cl+AiZGN@Z<%>^9wQ;axkIY zlMToW%z8nGzab6FR&Bf?!Ibh8Z#cH$(SV;7j19afFD;j(vkPT1rx)iJ&ga;_D4nH! zRj|;W>IWA38u#BBW;I+JWVw4`*2%;A`>J;0-D9 z2e>#;894T<=6F%dQFVTjrPG$Nsk1tG)4Lm-^{tI@p(sZ96)v zQShcNO(dmWy$3I|huwppooyQPXk0w&Dj?>o1vYDP)P}Woz-}kpYm>c%FT)%Lqq8^WIy&il9pOB_nY7zP*=j9&*Aoqa3k4(cR2*$#4Z7$8~BfwWCEfoiH4MC?e# zFlE>8WNn;n9V&wUD$W>Ub6L#OZ;ypEVh8IPbYt$On=5?{=32TpdbyoAW3Z&h^cD?U zU2^%=gqJZh+D&OJIq7Acwxf1#pnqr>*Ri_{V^5Q;&23Xfu*zN*HS-&;v;0yw>TshK z)bS}L3!4F(YdG3NN8*gifnJ)m!qZ71^H&AUW@b|jJj}9@SfC2BOJY&RVP7;_R##P}k;D|t`smEGxu52c zfNLb9^xV;whq$q=ENxc8_*_$gpI2*!iY9AFZVgT2aczjwn?JGjG0IlI+-Odi^h_$rdK*6y1{hAq?F>>GXnJh zbJ$9Ue(GiH`|UqR*t4Gt?y6 z1%VWR8IwtLc3xp-PIg*)PNwPFRJ+owl{F`#eB4~?j6OhZ*>|hO{gN9Cl`uDYQReSp zs5I!yG)LkT1Z`o=V*#$q5{4p8XVEI1(FGZdS#6Mz2|Jv`rKw(FanbPU#YJ+LsvX9; zolbf=bY^aGj#O|~M!J+qtse^-(n6ARIde2g}=o5h1J#S)_o+0mi#wEmX3HU>JC zRtVk2Nt|>PBf{9Ir!gXam&Wl~ranS2(qNFPHwz4N2Gi&syX4cd#C!?hl8X8=>w~3Q zezU3}S#zVQ^|Z2OG|~XAq5Z!YjPAZfJ;f+Re38Np-9N>T>J0wBkWbTa|CAAZ+3j31 z=^4#BY}{@)1&#jA8?WA6IyYJ9WI7i+IeH^w!x|&3dZre=e+iOm^w-U%-l*L~(6s0? z$67kXG z7iIJD(IOpM6tgQZ4I1?|ewt(^Aam{E*2qTOWh^Poid9Qvw2r~DF^W6HU2Hc9$*dt+ zfemKv4N_JjN^ebMs-u0DFH4(keK}+omDXy%$B}>IS+n~{A-+5?F*RN>pF}iNOEBTG zGA%#!z0yQ)M15ktw;(aPFsbpCvTAb?i$?!*c@x8hRb=z(!rHgMJ`!)RkNd?Ue9 zJdA=jiJ*ZTfilE1e`&*}(VMA4*_vg$H;fg7pG^|CkjyHvFEC6nGXbY~`C3SY8Ri;& z-5IhyvOu|Y<)|;cH2s=Er_3Dt1kKD4W~Gy5)(LEqOas_<_hxd>qfeXMI*?o@?>yW~fY}Mp0c-Hn3|NZT+nK@lq3F8!2ei&|NVsO-M5fhgI5K)E!G%iI+>lW6SZ-+ z3Rzy&P*Y($xXun{4^y{SS0n~{n^v60k_A1iJy?n3w)fkh_{O1m=PZ{Ww~ zGdLVG^LG5h64Ega=`2CKT=xCe8oL0~SAt#zhR*3W0SK^~t)$itT>AF2;TwC4QnTa0 zl!BbJyb1Q*H^Uz((awwUsM*($8Wepqf+5{625s5?wu04JR8DMBp?#iubV_5ag7jG# zS*dh!yTGEL(TXPCe9dRh*SL}*e{=CVMC%0m?WEa1x>K;BDxOB!C`TXWixYdS7tf0E z$1K*&d^J5|`0S$e;co9_&&fP5ExtzLHa*DYv-v{8e5Rw58te#=Rxjr)$E;OVY^|%q zUVS*ihm2vy2)3gf?dkIz%EDq*A7*M)XRBpxvFl=HrzGu5w2IgEnX*?eA&oLNDK1Z~ zib1eLEek^EXM+f?l%Q%`1u++|YGKjJAV!CD( zJcAEtF~ez6K4*=c(5pJ`UQpjtGWMBM(lmC;Y{)}8(~Pp@wT&8KbH)xq8&-EZJtWhd z!D+4@t}jK+pOn(F@+m3tS6Ys?F`t|;Z|MUzp9Wvw%-F`&p0*`v$c}A4+=hZJZi)$~ zdBlA5X?M8pONZEEIsP%B`EZ0mUgr*MA*;>cQdv!1SgG1Q0+N_XrKw#WaN}Gg~4(umN!!>A=?Se*` z-C=g3Hd^^^$IDqxt@;F7$C_A&#%4Zi_Q{E9T#3@GuIwcs)v#J+){eB*;^e_eM&7Z7 zm-Zf7VW=T>&6(1nL$UeH7(1I=)>}G_9Bg;}p}-`yBpX~-kZ1~>$NHNjmsMztXmVcM z!E74sXTysl)#QTaXIGo$xwdA@BCO&xck9MQA8^rMXffLhvO^rxuzRod<{(U8qm|?6 zT7C6oR|IAYZU*r9xea02g|WqUr|jg}^wS)4hzdkvr!LMfc0&`Y;|yD89eIHHkXq8Un%a(`)qx0nOz!CLFu z5m_BaA7apEjcXo-rS=oe>Gg01L-SLJDd;?-DYtsVOX!HhwQ}Htxd5R<o<&*#zkLHxNj$&iydIisjdkT z?^kZ=q$3i>CI%J?%f*&aKSqmkCKS@rs>L24n4?#2=d@_yM1lp8Nl&M*R{G{}(Yaa$ z)J7v<=iI-zBXTnpH+Ob6<0Ey^VC>x7g^n&8nD+Gx7&95idZ7!2d>iFve1G$3I)q3PB*f4R;_pWxIhE@UtH{0 zK5mrthGgbsaZzHDh{b6ZqKO|rb#dQc=$i`XVN}_@=N0E7U(UM1 zRJvKrCT>k-tuTxd8a?Pj`ex7V&f}L3XfeX!pszYG!X?5ata~#3GKWJCeKODSMPqyU zy@Gjc(yJRwVvbdt9!I-`m=X0Ms?p%s=S#cwvJ3Owc-aQsjmKYN==OP5 zCl^FeSz~;)U$;ZcdbGqR6tFeiTX_$)>UBNIpP3G(0WEWssIiC}RBjpFD z5D%p`2M*ISk~yVqTf%uu5(>jV2QrA{P*a^r))VVHw2$jO0jTj@ZW&yjYX3-zlIaO9`toVN0 z9$RwAr<>)!M>P7*ZryAuqBY!+sjISDVWZ%->?Y638hbO1a}w9Z5YVH^q^*uS+tvi@_Xe>&a9%gr1s;rJ(RVv zT+LD{V2K&^rq@QQlIx`hStCcpmS9QNxzsqPnmH!^={gxA6~gPX6-8mX)yEqqZ@a|g zTCpy|p_9Dt)Vz;+sajPksxun;ZGwh%Ee8(Jk#TIKO zky!sx=Zjsyuw5oO*GG2a(RjMoB<1)<%SP6C$gh{0{I<|sdIglS{S~=XF@CaSf2$`? zv*pr@exYH;gyzLE&UB7F7LWb>(n@~Exx4K=$;O9zdzz&yxWm)YsFcnt)o@N|Mo#9MI;4{xjaK}+o?jVIIA$_-(9BWhSHkE@9Un9>6_k1I z;JK2-%t1iZXMg%%WR8w}ET4^@4G1v+C7b79Gx-g-6OAdhLYa{ZWn)#%&Aa*OtPULV z?ThYX13Vm8*6n|BIvP=g2Lsq=A(r6utUFAuB*{k8y%W^a0i7l z)!MD|kVM91J{L1#^t-zf4w8&|^CKSy`zl{P+Rjx%(EPYUvyYo4jV#Qr#x^DWzQ7m% z;4(Hr72#Ao)8~X{eojIOO>c@H-J_!FK?V7R#paLwIb`fNknX2`*%`h9KQn}mwRwxs zvH8u1&Oh85nl^9x(ZT;ch?d8ixBj-=-c#~TKO*?Ag!#t|YB{ITJqSujQQf~&kf_gq zVk={AVf00H6JMIR(Psa#28|~FaGP8Z|CyA1Yx-GZ0hjHZ>c(3NK{Vc&rgWH%gcsLP zH1h##W5eqEI3@?WusTeY4t8kK`0x?yTv7*@f&DF})yGE1ke6LBho4Nxi$?3Rs$8hDUwcUUTv%aysqR*6FUOKwsX@-~&?RJYwY7sw%!B zXyVpP77D7vO*M%NWvzb;r7@FWcKc$}b55L0@i9>Y=VvAt=gMiMIl^t`SVdi`yi{Ep zyOFS&cMXFOD>AwtwK2Ea&Aemhbfy(5boxd+1)BxgQ?a>uiT}$iDyM!4&oV5&;LuEp zmc`uNKw~D@CeE(M|0S@Q5&q&P1u|!ie@%kZPhDBs>^OMln>%xk7@IA;A)33TV*IAu zu8}$4VM)dWqt!4A0yEbA{TP=p5{J9h2)TLLOs8h|K&Es)eIgw@UK!4ih^6spyqPcG zFKC!3&MGeOBCL!|DOecl`puo|YSXPB4CuodyJ~FWS>>+_@h`B{hw7XkO=}krc8aHp z@vF!Dq9kuI7amMfT2`C-$J@aD;}MEw#;u6AxYYK<=4;Pb8UEMviLG$mdNw|D+r?~w z`2f{zK6H<$A4`~T%dC$sVeCHyRH73MdugSz>lzTxAp*3Sj>;{c6Du@p391l#d&MQL;$rM3$I<^gl2 zjneC1hv0TA{`Ig`8*_f$%rCys)py6nM?VYkScqupqIE!F<_tdd^!RsrSbh8S>r=a* zCNml@io%c^74qD_uVC-z%xyFpkk;dm=C$ie?0;rMb zknVfvLat8Kmt#vAHZ+AUV~?-2m=_c4^)G7Fr(n}EhZ%?ff4QZix7*)x6tencl^0*} z*prOr|G0q*)9l|jh`Ys3reY2(ESvm*CU&Bvx|@tNNLAaz0m(~0JwdbM`v|*`RA@F| z5zk)Tr)YJ%$o=-B&|FWlW@IF%SDMvKp*}ycA6U4FT3(V{vs+)*2Zcd>X-9=)dja#U z0j}B{8>QnA=l`_#F3oWzSDxqHHb2EJ*uWB$5CM|;s1#I8H3$SrwD2kfz)T53BLfiu z5MlsY2HKe1fv+~>H-XRkJ%&{?tn`;)i=JU<96;0t?|6&NY z<&}qqV}W^vM!7Bt;j>+|p99J!zoy^HWz2b{;9u!A_MU$oe%-Gsmm94e%L35ae!8^W zdS4!YS3XGQs(Mqw~ITScH4%|5#X3Tf|MWeOr>3a7)a+ zp%AlpfI@$oW7Dg}&vpj+fjin0SyoLfg_#Ee#_+a>2^tG23WnHZX7@yJw2fvX=q2y| zdqtaYLC9HT0ir5ECb@`}Yhs^U{9O$c4%%c~s|2L5E@eXVz#t|y(S6k9-Bc2UP*+IY zQ7ORfWG!vdyvbytJF6+eV_c2^A#ci)QD_(UJ! zgV1YFpR!p(|L1JGZ`EJ#SS`Jtd7-kV&Oop&pCD7w07QhbC^`^xI9>%{8$snS5i5o# zM)xq_mN8`)_HM%`kl!mbIbsJdjCllp-b-Aw`U()9sEIYa$Gmid!=)n&n(AGWaN%`_NC%SWSh&=>slp+0m-pr#KF0HQ zUYKaUeDwKek6)5PQNMlu7#CzX5o?aXCPuDXE)h~;Av}2(4^(x&eE8_g$9OyR3CBsj z9g)8#bV5!?kJeRO%zXJxdu7Mw%AYV28ipFEW!GBeht`YU;-b1Y_WJG1lOBr1pxgvP zl6+#`#Wr$j);1Tc~*x{nY|9qnJe&I)CUfMDP^BC}uSg1Q1y! zW3yFgx=KS+eWHhNTYIeeK^x_nTykQPqiA5#3?>5LLB9`=WQr)wrz(*DB`{kRMaad3 zz_tf{obQy7T>w=7fbeXsr2s`bxHlK!>hb5ep*?#1@B#lgWPSGF@uLT)eEjU;<4^Sq zp97frJ|4k-$djGT*=dm-L&qxDa+m?l*e+3r%Y0@XseOiXV%=i0sd&C;h+ zFT@rvo%JuS|A82Vl)I=hHeOMm3h## zV`ft!DX;ikcq}EzogBfjzEbi@ZRFbi&{r4^O|g4Z(%RFC+3?As>6RYM^}v!R$>lV3 z8yNrCd-zKFF{8q)&jyso@9IixV`ug0Zvah^(Hm+ynd`eHCKOdd9!@NeDf(s}=Ou-@5BU@^USv*K+5VyK1=vh|%Nh-3e;i zz{=myWfWUKx}HE#Vlm>SqF03Ci#8d2lk2ldZ{TfN6oUMr;t?$K69hjNJQ8Nz5h z`4n5M+M|>eNoOgdz!GM$$LQBIe#?r&~zentMUuBq!neQ8Eex6AsX1c+_iec#TD zDHlpHmABZ`Xlpa#EX{D+^plDa1}#Ivm}>Z9wha&vSgZP|=mXsd-Tss}#N;&H$*P{z zN;XEHC<~YSn3)@x(g@nCpv(d6D}%6Zv`CC}*BA`imfxDBXP}a+L$QhO94R$4g%F%r zroSw2WrmMz7A6uV=l7Gd?%)aokcjB*O=A24>}?-QGU%JYFX8`;&w~7Ls1HjFND(DX448rp?7YkErPY<+N=jC@wUW~l z*@*qCj}U?yMfe#NR$KZ!F-_|A>Vn)gZ;KsFWc;@Q+*Qc|QfGv9UN;9I)0|1V$PTY%&zm=THZWy_LS&-wRR}vZ! zYZT~t(e1!|1BN|eOO|mscy*#9O@k23~UC(sD+Cq5q`H6hSW=B~G9IGJ;!v5p{11`5nAUJuBET&9vW(_!SWyi_; zFb4;=qEGCb(R}3=uhl@tc17^HVASlUbSX8vVRvbBG)DShw?A0Jj5R=ui@Z!MMtns< z_|beS(wC6O$R$D9LSogxBALR8t<65$=;HqZRNI{0`2}Aja%rC(r|RH|iw=~-6QX-( zsSqon`$OXh=2>Bc)-elI!_}))4tZ=;RVi-2x^JK#O9O=KQD1QtP*A3d^8iYYsAZ^i`{? z-okLoIJ8*o+CQ9O5XL#m^o69siZvsJ7}t?s_V-nafMh9$n^$7TC-$~K~U!( zVASwr2sQDyB%Bn1*fR>)Ea2Em-2L1f5;-{@2wC1$h7 zf0jHS915=+at>$eKduW{Fn_e7S$y4rGZ5zh-A`O| z`#titiD-X~rm!C^?3VdooRizvrj?u)XJ4)P36T|N1s!mh&q;oFY?7<^wK!%$#VHRjp8PgNhu z=G(S$fLjRX=1%m9A*F9O+X|>qE*2Ss#8@}g{u7L+Ze+wW7pETz+a zX@qvK@$!A+{C(qs`f=+A`zAw~@Fq`vmk##SIh8x1X59JHa!y=4YMS@1Z@HgNc2sU{ zwk^@BWOm@`*RKhfi#$!xHK{Y3x&b z_1VVK&hB>09|PITUIwvFYI~m*7JI_D??F4e8>>6}d-LtBR%?YO=vnw_J|CH{NBG1) zB!A_nXXEoZr$70HsBf6C&0n{4Ez%$HUbqJm)jZwFmsjgtAETjEcFg#o8t;&$2L@| z=b5M~Qwy(cizy?}Bg}i>zHaI1pad2yLKXDU{{a9t0-Q-qRZ43L3?kIN*h5FdYgU2_ ze&gq!JZQK9ubEEcSSlQHfXTQQviwrxEuJKe{ZsgkmksDH6^WF*SVT}HXWibSvk~eM z4cz|Xo_yu@_nLAz;#*L2@n#o)xG|kNZc5)TMAC&tA@-4{UNqx8va51G1nGhraFF;N z=ghi)Su6*=<}prvqEEj{9m+l@+mSM3n{xD9kF7ZsBb(Ipp3)2gJ1V}7nRcfZp1p>4 zqU%ACV1_6B$srO`sH@Q}U)?8_6)w?KGTgZBa?JG#uNR3t_e!R6ulRO&crM4rPfP(B zoP136D?KO1MYAYr?@ZC2`ZDhqR%`Ox+amHDVk*fwff2yj1_>iI0b5V`p$3FTM|vFI z<$^azHH(k{1FJvU+=8PiH#T=#FcrrpbBNDee!jhxyvkJN!hX1BS*$3$UjcJ5?21yw z41tzNgW>HRBaRwX_Z!f7rF&+iX{cY#BCj;+_g{&fkK+m;@;cJBv1Xg6soN@6$QEYGCn*hMryty) z>>Oi9C@SGdZ+caK0Yj)oh|Z`!g^az61qr+{zMq^{)-3-NZCm^`>K_Q^T*d@jn8d04 z8zyDi2VJiZs%Q$0Ae|QE2lt~)!fp_(Q|2N7L-{&Twqq=M6_5WQmDs{@LtfOiK8%M@C(bT0mE< z<0~-dVURJ3#1w%oDhO!T&>J=<6We`j9hK7r? zo0a9)HdwAX)wkhB~AL_;CbI^17u%{F|h{;ezdtQL` z1y6uDMRnL6=oP4ZU+ilUn;ylPxh5M?oQ#i!D&yWRbyi+?rWo1Zl9A3yC{gnjJcrTYBW%66ei%t%kT#T`H!J*FElyiXP0-snmG`ipW)%{v^qvZjahE0{F z4sG!nDgx}UQSx<#h21P@=)@MCDu~`P6J02oT3S=S5o2`(X?d}MWQ;r<->nIF)w$S5 zv@Mw@hJo+Y#%W3ub2p5vHj=NE(q!;9?olerCyEYF4zUrxb22*i3T(O3Y@AmZ^31cc zc~(0TyB^7fT7BG7MHFRxF|t2Qetdh@o%raKkg2)OHV&LVkN2DkG^-Jc$*aq-Y}~xG z-_B`pBVA;UwvDN|8@extx=QLQqB+?rn9UWR1xJ-Cpy-ld&cr24FICV$Qcn_k)Pbzt z;u1?n4_Z#yAywCLsF~XgSC)G&tak?c6rU-2RznlT#n51}>Qivv(_G5;Ajq4$AH|12wE}F2{la~L zaieQIsrgB(QYfet{AL&I3JV$53+WK~Zm*ZH&8!q%7`jzG%W-;g8H>=>;8vrz5YX#O zQ#p`3%N*-bVnwx9jU+eTFW}=Xl1<7a*)|hjpW!C^mOO)Oj>=EUqUu?&6PI6xiGsbY zZD0-pnwmR2@wb1a_;lAC+(gaup^Aeu$CHY+<}56f-dXIXcWZzz^aWd)<1eDy-G5fu zvwK!oOpBouV=ChY&0e|My6{++Bt)sU`#r`IdHFknHDqXdX><8^^#;}CbY#)QrI4q4 zGXa)T#>y>}8p2!Q-HElFv0(W(n3V>!u)^itkz!05gA^D6b#n;M|RY`U@+dX zm%2Z8;|?FhoVR&c>g2cqWWtDsMH&@ z^LihKJI@X8@_L=%%3uU=sE*mzqQ?Up=iS0p4Bq0F9&KJ9+MPsq*urRlk&Y0Q-@jP2 z0W64mF`hMlbrHk5r#(x}Lq*&mYLANPW_q>@lad7K7^12hVdBR#EIeXhbThZM`&*Sy zV^&kV{nM45u`j^m@XTI2HSPntCDt&jWa!JdLZetFeLH6tS)^KJoMMgB3$gr4uVn7A zi8NYmJZDWAqP=ny7S)la2}x5>J-ha(Dxynp>Oef}WCv6a&B@S2U3;udXld?Ar^mnd zizFuq#Df_s`&eW#DuL}%xDHAsjTW2_Q>*%`J-6D;k~e;OL-hxG=uat_N`K+YMIFq&xyL!xYAb(s0(vxCl9&hOr)+z zA4jVQQcqF%&2QtTTive;r7Sc=p~zc7sJ$ID7aeXt{o=uc`vniEyD)^pO!7idRmrtZ zk1yHdS~B?w3*)F9vNpTdnn{Idc_lc2E8LgBy@IH#e1VDEQWt<;RGr%MC5h8BD?luA zF$hp_kKE)FSF5eaMd+!qQ&ANNM5X?%lMu9nayii2bbT@DY%d4^D<2OFoTW zmbYu7B}W9&wkTRbQMiwG2JW9>*|q`~Xc-Nn#qr>&<#SM4Pqj`U(jI5$z~}oUTXgX2Fs3+m6In`UU2FYhzJ#}|``xN8 ze_DY8?n~Q0aoWYn5XDc46Z^r^_V&_m4)A~5%o1N!#j{1mP@0$9DOf0waA<~P;eXv5F2?P8T{-}L$- zCA_uAX@r{iGm2UUj-EwXiPq?u+aVr8cNL!2<{2%Ges1dNmik6|&=j% ztu>0pxwV64*)pDvv*}$a;ym~WD*Rj>oDz#*ary?ce2BNx@@1wo4*I2_2?`7jhc$in zI4#nXpZ>(+d6?3Y0lE{JRg9qu8H!6I`+f76K2=U^MQumJSLyOOjWME$#t8>ZGo=f^nWsVYJrc&rQ91yqblu@dSbtXn#n)RZa2q$ynE-rGXnb&&_H z_-7;8C+Dv}qnz8rZ(kIi#UQ0QV2UA;CaA5FLAf;@PqD&Mxj|IZ6ho#({ED%VvlUTu zi&3SmUC+B6@)jpMb@5h`1+s*z^L<~GT8T8s>?6Fb<$sWetauWDkj}oAPy-Od*I~TG zn*s7A9oaE2#x}H<>!?kaS5y^*Yk8h@A`c!lM$*H;2FTo8|FfL)=+XPd z_&eV)i8>C4VNeNCk1;}Q( z=78`MkF60{H~EONOTwNfwlnmD7F-!JJxi^lN7a-4SJ>UGF5xPVy9aO{_AZFQVX{u= z{JBWK+1t!vmg|KJn+1LGuWn02Xc1Q+Tf8tNoG9t?3XejFdHCd@dW+^g-PQ$E_+u@( z^p>D6E=*d>ghGW9G-xswn4)T|J3VA7-+}68+k#S(G)ZHU%W~tF)d*OIQpYJ#pSNFx zKnZ0VrZLujzKA1dBs@MnPfTd-h}Hrv371&QBGYJ7<)FwIItLEf{P*M?>8^YScH4~&aQty~OAe;PZlzbd1O$uC0t!3SMr zs%gVasS}<8xv35c$MC2f~lfi!gk z9*}l90gKfkT{vi@-n}5mluE8Flhkf?^*!El-!@4*bywLUa1wTY6?#tg{33A{pl|21 zojVXuarud(bo3=WFNV4m;%HHMN5iV!1Y~Gho;ybb#@PIekFXW2JM^>leQ%FBFOP|E^YG(34oMm1h+e|LKnApEojlD6!o4s6I(#IJ8+dyE%do~ zl-L|Fc4J4Zn4dU{&e-g%vWwqx+<@LFKS9_VdNcu;Sxc8B-a~1nf-inl9kJuVG-tv< z)tUEgd2j5HsD_1>^GL5Z$UbOjLJJE@0L=n4ZC|Xd-4ve@+hTS&n<}uL^jC_n)buot ztANrpwW;ciyLO64>rr>VxA&m&i~XPR1dg7}`}Sq;!6&k&ecSDQa^J@F^h7}e98jUS zGZ$k6&ad;R)-EW3oIZr*P}?E^#1niNG&v9@w$%eL1GSN0YDZ$@`4sB9Z{x%ST~Z+* z5#1-JO}G(lf!Xg^Pdr}TtJ$lmMP_;f)cQA;y87QVpi&&!xM6F;mN}u9FBP3oq$hBz zWjSU*g_+XmnLPMJglG$7Xi+P_%-Cp;FhK&3Rw3_oZG~i?&_Se)Rti}8m<~=yz2PW4 z<1s$H&@m%kHbQQ+yQU-~a=fFN`rS<7AY5}15~%7Bis0@6i1;g}`9};ea%?c>6oz6r zfIX?+X?2h3Lg&;|Y&e!EGdr;NpiUHDued{yq2M!RM=o+>_7wZe5*aA;3$3q&uAo*> z3MGtMa84d;WOc=^_}p&ol0)`zbrX?-K4M<-wxMuHdc5V@=zM;XPc(>W?C6FULnF%L!1 zWc;k_=SxkWFmQQ(GjxD)+wBZv8zf;S>uSN&%9ZbiEdhaSgz64~ycb&NYRrG|)}y@5Vf=N$vP0)%<`^>OWD2sN;ki6t{; z(AmJ;efRke*{f?VpcAF^imw9Zyu3sj*JyP@-sm;$>?-;3m^4FScWdoLJ1(wFX0LsZ zx-~zFs-K+6H4$5w6dtVBIIqNwBjMVO#heIKB40_~7=44MU90wV`c$$6Y=tQA^5)v+ zw%y|@dUUM72*I>(<&9009nD%uya4x$xJmKY_N*5P`=cCG`f*J}HHA*Lww6o1?i6UX z7n&R*y|Xy}xvi&<$bh3pweMDX*s&MLAuiSsDi82co^q0_MQ# zNq1^}*{a34rc7(4oAyj-tR}VackvQ@<@?7H#5Yc@9BKqIg`j?8y=1)+#tJe72%%s> z)w^Hfuc53GBB0%8Ln#O$99(@>%VUzIy$hKKKkI_kmA_i? zUm8xmbus)sYN^I*ukpft8Wu}=5R{La4?b%klRv!Y$;BJ%qvMla;|VFo8#}z10`OU^ zb$nm$-qz+$V;P21TCBzjx|PN9(SwJ-Xgv7a#)HoYvtNAhi=RJu^xy#%8{4opat5f? z`=asS)AHfpE`I*S&mTOb-Wp*@jhNzRh)2;@zlR}nX>fSO<+Aye5 z<8RP}#rcZXXUA7qK^r^dyP+*f*RGDab2N(lt0q7$&C|yD<-eEpan$q&-oeP60K7ug z%VK$cd2fAny;bef!{&o~%OG~-pvI1(?@$K3xm++!?=MYn#I1j9DSoPY!XKz+8?BJH zX0iMdM~Zvj*uE~7A&+}DLFW|&R|fdCRmJ$m=Dn=}L2HA?Q@9`y$l1C5IePr)mv}{} zDQzht0iu7cNoKI_Y?Z-KobA32w)eAxW-i+e>``yYhp`bQLB%m5!au^uH4 zBzvtkL3rqI$kk^G=M#QIqX+YX%5&gV)@#Kyzj~weYee{qSH{u0Y^}iApb@zKo@5Xm zN(6`3e?aV_KnH)?8yFju^~PNq>D9L>c?`KUXgM3Wz)^DWA`{z!n> z>)hw})9XKBMAL7gf~4Kz*G9Q|cKt*5gyH3!gYfB-VRCZmpB?GBX=?4z``JrLTxHM> z%wE+BZ11PH@glf1_LBoBO2U1w|I77%-ozDeznE?Q41lm?ir4?QGRkp(wx4YsJa4US z9Xws%VTD>k$vGhZlh(`|FxTnTrKU_nkvFa2Kl;FHii^-J(38*<1F)>UFwpAPY$vCp zSKw(*9hX17GsPR+WKq=7T>nY6efkLD7wQkpt_Q?%ZoK}Z&0aa3xIAh^M-oa07@{}Z z=#b2-(qO?jlFs!H^g<=N!5xl*GmJkin2+66+ZdXaZN<8;FYz5_Z25U>bsM4pZs-9? zBU6P8NBjaN;H*YNTmsNUo?PO$zGzM)&$&3|ydw=RKqQ0^%j8OFd!l5pxSx_+NbM{x|&H0)KWf5yhaIolFtDC@SQ-WK0bOA-ZRD% z5C&i0p*hfdn0 z+nY~!H=s;QE3N(8rm$F&eqz}$%yZsp)vOi~Ter7c%R8I?S8IEFQy6HiwW`kjV-FMU z=)}-aRNxE=I#z3`4HoUUoPPP2;kjS!L`d2Ea%Q$W<4yhKU^)=y>DxN#pfmJFGqa=F z(Twj5d;qa4ePQl2zV|UvpOfmG9$xg*>Ao=zl5_;=5k5M9^Q&o9m(tWFM8hC~Y6*!S zLU{6)jdJ_?$IC0I1`D1k8s+uB@cKFg5zfg3LO+AqUV}`8{)1=o9`*EIk^d-XM@6Ht zzO>qIH28&pZ=S*-=g;#^lBy8pok&>Gcv%YANX4N@E~jh!an1s{UEgf(lYAq7w-h{H z<&k)W{er}x@5{yoKgbueZ$yrjl^z(>EapEiDyg2zm7A&t z%jF#%hFaqt%KTb>wdi&RCM9fhz{X079|W zMQdZFwcWb@FPjD3qHwDIPQPJcSIOS`^*^;qR$m6}AHXG)i#Z2; zE-xN#v(yW~oLRw(CEWSMMPXx;w~eqY+f{L3t6u*%914|}%tqt7 z9T7lt{l`u-YbxGT8Uo1%ws)yhwB=WC0{XOEn9uxpO zcEJyWo9c2}nj=QIQNJOtCr$tMUJozuYN8f63Qkj^5>{M$b&5Y=4lTnQx-W=>B6xOG zi-WU0aE&JQhOY5L`z>jzYjn3fz5WSoc1|{d5^h##&Q2sF>(cJ9Q=wE_k`>B$h#G86 zJb*JrGhE^_1(etgXU!2Gu#Ugx{QgQ~jX1lwF7f89nvKe(zA#WYy{+qiZnsyFK+tWT z0JgRJ5uu_IT2F4cLiHL?3MH79g6m*qcYVuVLVNhYe%~*itZn}NZfkY3i0{|%?6?GW z)T{Cq=THG$be}`XwLB{XHnCO6vNAw%y@fi4EPeo;7D{p?4$c4sgCDOWH;X6zGd#_e zSB|$T>c_089d<-PJKk98a-}Ott>QhutD&yoAT(VyMSzH|gOKJ1bE9jdJ!lrOf-pg- zL#(#40lfx_Vky;4iE;fC{bk<;wF+8ca~$&#uYlNOm%nOVuLbLXKUs%$ak620M)s>e z1r=%UXf4(iT$`%L>2&+Y!(tgPpr9Ezaa96Z2-v}C-?=TOd@&`*y`m-5qW8FzwYFG> z`7K~S`45tW1g!jO z5MK(vXLBLV(Frq&SWzpe6+5}QD6hXqeJB9H*NY7tz);c57B#|b4;>Lp<~cCfv#JUR z$N)KBz&{KNlt{*03BBR7I_RJ`#AGx1d08y+5M(=9WRKV61@h+=Sqdzyv^s1}Uc>K# zU8SV!5QNCjHLzo>FCBlpI@Q?RE>G|og)alm;HWjHsO91PIn-_D^Wy3x?&dA+w_d&- zS;XT~uu!(%Km??G9cz{*Xv!1GXAZzzC|1C0^Zko6t{x`f^)}!+pF#6#tR%L_2k8^+ZAel@mZ(|Y9n6Y#xrVf5mJ5k{suDq z@`ThSXQIB}Z0weE;o9K_SfZl*=KjsYSVLyg#9>1;5Gt;l5c|tVxK~DNIfkhRPvHs`03_fG-fwS33YQ9wB67 zmyyIp8<%L5Lv(3(XLW7$w@XN|E%>t73aU}QR4o)+CN|(~dD(dbGolzuw-tz%CaUj( z7qB30{Q0E`B+X(CKY17hT}Hq@vbXwunMcl2IqT?NT>k-<6CMXMgs~dVdq9!tLM`+L z!KNU>G>TFU46lmiz@;tfH!;7JTx!6R%~pQ=gVLgOn^oZToJh&*-mhD&UE~<;h{tr5ZSKXrpUMo>Gfn zoalNAVA`8OVb51i+xkWvO2@+f$s5DiXOy`oh@J`xd3VAJc3`WqJV!S?uF4haoyCH< z;4NjDezBSTT9QS0d&ezodp}=j?Cq>>p>MR**H+CEQ@_}xKNB_G0FZO{n(JI&zS9e+ z9T&*a4`;ivx!yX^fT4L|;-&w@)Y*Q5#5(A2W5vYk+T)S$Oj-6++C2Fw+fC1;H-}kM z@K%5XQVB95dlL7Dd$=O$L04Yscx;C$PgZe`LVI_Fj_gW;9|>Im-_9vhUy-fUbGCsG zPl<1o;ZV2-43jidiI?ZF;OG92f5h+LAUG)GLz z-@W*2P2dKpNmfO%%*%A(hVOY}=)!yk7G`_?|57Fpc@d;9^b~Zt7p8DFpo!vedwr|+ zH;IDLnMN$h(FBb^UTI-T3Rkwhz0PeU@P6STkhlbdYC2N=fk2`g0yOVpC{y*EhU$mh8m*7Haguo~$3-L2U%W1Tzi@O9tRdg)g;4vNwSF|4Bvhm;% z{tdJDdCFbd^;CMVaDN464=L*!dNFhWzGHI1q?aj3ycR~ib$sP@3k}cx0eMTtlZ%WOEqg@$q?8LO%V@&x+QNq}fg9f74%>Ymt_ ziR%m@FPmd2_F@4y%9*3U!!ThnHqK{g)+Z>3V`Z(T?EL;(^%)Ku2jpsYcSIg_&Zz)rs@M_38EX52Pb9 z(6LUFg<#$m3#V}XV_1N%yK~Njz@`uX$4|yDhe9LD?hDm=va;ly3a9Rk?DCm1T7R1! zlcOQC3bWQRf~fe7nE0~}?koTYq@>$k%7J?5@^FE5*BAw_@(vq@@k z^brS&J_pH-eN=8Y}?W`8(mAPelGX^#xvM!`eME-7@E;eumWvwUGZZq052 zUcdq)@cakv07XFJKwOjV6SV0Y?4Ip5&QRH}Ft4X_g zq{x1whz?;A9Q>PqX3QZb|9!k(YANm3(Grg>B>hE zx0oQey;J`7X&d*spr7XKe$A_DhMMHp$EB`H44Yz@G;3JuC9`}vW{~^BEUee;=sq2% zdNx}1As0_IK0>F4g$8=s*vj9*=$zv+mK~5ZR!N1(g}o!f1rA$>z|zC_tTb>DhJN*AF#P9r~lv^5OHOPTBhNYwcy5vY%EA*5la13kyh!=Xw1;N4vzaby2G z{g}}wn%q46(`aHBnJe1-s1S+&#WuVA84GJiPx=yhB7rtDCNq7EcsQ~K4;?CmzyPM$ zbiCFhu1sw4Y2G4I{v!U8y?a#q)HWB(^yxhhpR8|TS=rfKe^{>I(PQq0_Ab-r`lIU0 zBYTP^buWu+?Brn*pC6g%6Tjm*WM-Q}j*IbQ+wke?^*_C6t?j2S-UHA?xfN@zo$aM| z;VI`fi_J{2WxP{x_qqOmbhDGdtUJxcSEzhpUfM!4Rv*Td7vff04dlF~z4`FVK412J z{eJ!Zv;A^u=lY++@5R%d1MF*;2U7pZJKFd_R4EA(qIC=)P0(7&LgIUvmpdw&VgFv$ z)Xhm9*^6*L>z6a~zv+_5Pmg0=%)stKvZT@w(Q~hx%)>T{c5X;(PZ2(>iEmG|!UVR- z5O%Sd>1p5<@aMLxD^yE9RCCi^^gIrGgyzgwzoJ^2)|A$l?g7l4@Cz=zS^8BPscEuI zI6?WkN}A@#dh!64*lwFQZE3TkVv8d=gNMH;6?#hJOuV*WTFai*ESF5TW5R;;3K?;4wI14GI z&P}*R{|l&99xVT}_vSBJGC?RNX+cMbeMU9|MF7JDRzOX~G^M9Z@TP@ z$_vMM>ZRQMxl#;(bzo-6Y!6aKw*~I!)(EN8a6ANLi2!kM!u5ZX2!ry)E?2W?!w+?e zXT>wL;O69?C^tQ?>xo@DN&y1KZUsiXQ~3~)RNa_4!&*$lcySapoYGn6Z=5j}MxZMf zafBE3+hhH*wYIeJ3rr1fggfd%6rv=>v)oz1aRMEg>j8MgCLO$i7{O!!X%0#=QZ++s zY3qGU#3p-s%~&QOIaml;Qp}v$FXvz5GTSLjI5c7*J?{3;RbOc>sj27ZjvW&ki2DC4q; zJk!9iv>cW(Mo=OqUU+(dJh?|GIJPgT*9080}1-Bd% zu{`{@AW#>a6K(;6f-6K!#nUf?8;3mT#Hlaw6abFaik7mxHbdqwW{K(rB=YQn zmvp02ToSkCX15>B?$Pn%X8QHMNGT`?*X=?sz^L4pm+;wgl}X?p$QG`ilUojQ9NHDg z9}|_+50XyQtVk=AL?1ux==~!2PZ}_UUw<@OVq&<_F)g!!F0B5BXY?Pp>iLne!8qrZ z>k_St=UAmMdVv^<6^9*?MO-TWjBUgY(j**nzs&l4bDU&D>IE5 z9W1z)=pt!M(3vQfi~AVdg!slZ?%gv@lMJo^V32CXJnPl38IoA&2Jv*ISfV`tTP~zH!>hum7sJ6Xwyd&X%OhkKB{w* z9e($Zzxz*BY3*QyU#lV-?kF%+^D$&t?-T?S0}0bu63K(^1S;=YGx?w`67wDFbzt1> zKAJ!(h)zXPjZAb=wQ~(#{M+a?1bX=;GL}d}bnYJ0!?5tmeW6+Wy7)D3q2gR5KgnXJ zwY;{3YLLx$sWOVMype$n_Y%y!1V>F>yymsYp5@BfHLyx^!kH3XG28sf7-)T1wT(0x{&<4fm%s zL3~kPN|My_SAXHbaGH;%>ohMlnq`v4v!N9@utyUf=l;#y2`>KlN90|{` z)~4B^l64o8snu&0y)*Ot3mqypI`1k78maS*owb#1A)6-v`1-T$TIH$Zx)0lj&eChw zdaYKxHRzoEA}d>MZZmQk@)c4vbr6sxX8 zTCE5=$^V#S9o138+r{I%u|hbBRDMVET5%FXIhM$nI!&w}4fA+|yY{; z1y%QU)|LBeR!dBR5R_~6>Z-g1;N-ZuNXm&I*9Su`Xk)Bejxg$cftyIhp2!9&0unHs z5h58^KB6-aC#Qp1-`IMS+%fe0D-7`wbDXFesUU~^Ru2*!BtmT#RA)lR~fVX36pQ;8%KCvg2^)vY`YkaYZquRxaXjzneM*R$({6T-V#tXF}v@RcFhh7@SU`t|?0vb(k!|7|NU%<&l- zH>K@Z$CsUZkOhTd@_l`R_-O_VyIAi05&$ZykL=ICQ|6)YB_<#G3JaP!flTVNj920)7ncU>B83l*>QIpi)N% z{Bsd}g9V@%7KZLpEyRWz->+5%>);8Tm@bKQf0_jZ#N(_=+vc3p!GrE>NX~H7`sTa^ ztg`8TA+!C{m!Q+JqyClJX=>ctyqcpx`Q=$@5>4Gl+}u2XghToC%E4tu!r}~_%fcb2 zn7m#3OSoOWujxZJB3)j*J(qK$)O_|MH}aQzQtJ}7xq(kp+4`onyt_kC1>P(h*Z;C^ zKU&+H2P>_EcI(+LVV>{ks*j9JrQ=IMPk6A$iktB5VxP>GA|j$8R+_ zTj+zGzQU!hblbZ8^7vEODY*-%X%t0+=~U6QTNXA!zPc+!^nXAdqK~o+Wj?P2smRfi=?DJNVI(LX?iCy6!zh`+9Jw;$K14mH4zm-c z^W;YzizmkOBd}Iuqg2%9Xn4Y&%ISfiXJAd^O!X2-2-B)m$lQUzKZY>lDRaYEV-d() z<-1lfsgsMb2*ve3xvK_ynDv6RZ(3fiXx*23gUoy|A*2=kth5Po_{r=tp#jx?Ey*cNe6vUH(YT|UcNB>%~uc;?&GomfpQuv<9E&2EKdQTxAI?WC_R zHt@XkgFyf!;f((GRk@NW^@P0^WPz_(BO<0D@DWuDhG?wBH=yjzkVvA@Fqyz197Gtx z@*_O?P1KbNTn{FbK;aj48KBZ+gD?n{ij<{DS;`26GPSP`;khoa0!5psh0h!>Gvnud zuXu8Gg#KAG47N0nSU6XLxHImBlAvk#m|)^nP(fRe5_20r*&yO?5vmcxLMjtXP;v3{ zBnHp$j3Br~{)_G+$R)O`zPY`F6-z%S^Q`a$T`egH7F@Ov6;Y?OZNWVcv;p+z-gc%) zg;5yywbMR+OaqeyIiU$@@Xnzp+~z*M#Vv!IKhD|z_(=e!>mZ}qfKgV-L}!M4)#Rg-Mq+m&5O zA4sJ-Aig|7j~+ywQB`NtoMB>;;hsPZl2u4b!!(dM6Erb)O{ADk1=4vo#^7Uh>%|vU zjSAA$yBVqAS;z{B!B(^lCX)Xa@ZCY71+c;D!{eA`9gREroxsa6%mv(vja2vY!NV^G z1AOTwO2(0(vdKWjQbTsttw7nwdK->T7Qnof3*kD{@e(*Pg3Pd+V^5hZ?YraT^ui2@ z%kK$ugvALwn%2=d8ag={2fwMC=aXy_e#j`Tc}35)dm}>Bu**&B{>}|BQ;Bn~9-Jz! zr_v}SgE&-3k`l~>F?Q~{o3ZYxFk3tlS1_mNts}ahQo3X^TJ(aO+Io1XjJya`6J2lF z6FKl^#*t-wL^&sGY!$`PI7g2x^BGpM(+&>thMzgnF}oY6$21OgyES(zDfal?7&jqI z1*Z8WxOltZFIoi~rrb|z#k!Q@=u~jgIeBM~LUCbCut=^Qo|waKG}qAMP~{DKbG0CV zK!iv`9qP42@*HHUVyJ9oq>vB&Oh4cbqz|!^>~BIGA?zrs6)C(bXSy|9Qx|OF6#p%T zt|Y24*(owx$i*=%XWX|X3fMPQk+t5ko#MopLN2q)lsBGiZtgs7Z$9}C+NEH`yZ)Xh z=|ohC?{I(QFb8QuCc>+-4yD--Zt)mTqKZSzgqdx!nnc3Nt4?Q4aBEiJ$>A+l5p-E| zE=$aERy}yylFU*%n&2EY=pP#b)43Xxt zq~1z(<0My8>FLBgMD<`)v8I9$zom_cGF7o1;+WN#C}ZPY#p7+ao)PGR*>I(`syOJ5 zEUJ1gO}AYLRO&mq&dVo+4j+EeP^dh=r5tlN)-cvMn2>V)14z~g9qh7F@-iLE#iON4^BPj`x$BYCgCWUZ3bcaCM|5H588i^|GsY5d z#_TvIdO#U^Z3B}N;+bE*e3rQ1kK>Z&doii5?~%(u~isg-&&u(c^hZwP>folP=F zUA7I;=I-Uz)muy-!hHG+g`g3Q-O$p+z7?Q7=6n4}EuD%jfK7x@gR4hj~ffO0>- zTP~|cI~Lgk=W`N5M;I&YS`(t?+9%vigX(IS9t>9Gh%gh(=yC6m86qXkSX6?-8_g@E z`FwM2#R-p|*k%b;lVPA9iLODiT)Bm22CWR*o#ox_oz3dE5)V@x$J3oG_w?)E@2+m~ zsvv%CD1Bn1a=S&^*u7Ok>b9RQEw|p6$KT=nhLl7cNC12SKPZ0RxH4VS`$p$|;}DlP z!x8?EC~f=td*an`2)*D9jff*iZzcUt1{fL{)Q&@6te1@R;F`$pXn&_z+gDIlmot@@ z-wdZ#h6Elnawal%MjIus_(YV0kLi&dnk=}}G(Y0vImikbi%kmpv=R@HM1Tz4X8H{D zv-nFyKmV))Bsh&NHGwW?gsn=@NcSV74q1DjfQU&@P~Kk6(&!uk&!1#u>f1 zGgDFLY-Hd6xIA+M`nLjtu(SUPa}alH-k}yGB!@6$IsG&>t@{NTREIPv@Zdd@-hYXd zK(rKf;n)-{9MoYlgpohhTok3V;z1TrU-I-0d>#xI*F^YO@E~!vJiq>Nq&Mtzr|+B+ zVz_&V>)ww|1rbyZs9pi{oQ%qnT!N!)m)AnM`Bbo=1k?Q{DFskAb3dk#zv7D8$z{HV zakRUxt3p5viZwRm@CtHtV-wrww6A&*)K-wevC=rmZg7DIp6lG%f{;c)FB~Zfjs(AR z4<8?PPTqjdz~A%bqt8EkEc=Ll`}{EyJ*rQt!DEj1*6CjVq=VDWnOt6;^soX#MDRP9OamD=L1aJS6-Vs^4eISfDKw3>sHQ!o@|~pP zrq(Q@VyTwhd~V4X9KaTI;|WQw?>lBf(i$ppOgko5k#ZNbi6Rmd)oDH^I0H$O8)ICAr; z05^K~InaY%9zOmYZ~RA(A3oq8zf_++c>L(WDIY(3`1n)(!siV31E~3l9og2yiII_g zY0Xblv5l~U@qm=9xr(({n%ZibU{b7yAsaP{N-@R=FrJ;O>VS>l{%ON+u0y7dA#S0! z)&hA0PlkJRI+pkMrXE>l^bM9O*sR>QjUW9W;_R2B>K$oXQYmo}ARj&BA|)x1pB$6F7`Qb>x{Rp3O27f{r*LpSOXh)%6$fHvB#b>($VPI01i{(_CM!#Ay#$bU zO~VXgn#5=xS_iUY@47>Qm|hnbVZ7<4#GEoU8A%>jvOjxHomvq9Mo>^H6BiM}0;;IB z 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

2NaaUJlA< zt(}9V?d_%C@BrphTz9#CW2MMnzn)qsPWIqMYrDO=x#726(=c0VdR0h~OTpk**Qy!n zCgv$-ywG)lZ$@DfN=%(O@l`MOrH{>GKseG8**2bUR{X)>-S8a54RZ$WW;;>K`d|0$e*Sg>aU1%}@C*TRy>DQIwd4l$U2ZrXR6^rbR6^^WNaOSo52CI>Wu~5VU+Ct7}V2t;h5Y4O^a;PkA z*bl5M$(2w9R}m;S9GFAf2?HiE#I}uV<10v*3Sdlg7SoiR-xF&yi2TIZ zc4<_X&>0WK8pm$FBtbH-+S|ycZu@}6NKJzPU?8eaPjSyh&;h{^&d6jnsuMw2y&#(C zn;TIADyjgfQ?1S(#e|4aC+KMj1g~_++1$d4-F8WcL%6~r23k5hi;O5E5Q?5eIgua? zQx!tFZLaYWzxEJc9K-=4!BEOrXw^K6tmYQ6kKcgACsq_WY(glJ`kv7Lz>NFawEpG51ipdjzDcfE4&KMJFC_f)m zCUB~DC7R_n5q5OJGo>7bcv%QPL+GK4B5Lv&GrXvTlFD60WM>cO>kqs7tdkS(m}dX6 zn-=$rpwq1&$Baq&NqZnmfjZ#~M5{~^iLu5B2v7lRf-Kt|BB_w4`4oDh2p<-wdDYEl ze)Wat@2(}?B>lboBdtRp_0UMh%t|sU_ot1*FPZYTTrRr%IX?b&%TAt zO1UO<{*iGWmJLx7Y+vNfmvBq$^XA6W)n^BDyZ0fh2kjjsDAz(2$iRPUM4>Kv5w`_L zDILOyN_zB}P-}zL{I4(IZOm?w_MB3jz@Xw2C9{INSg7CV(4&u*ku=wEYtlf~*Ht~4 zeOdpuadkRbv5jSWFv!0Xyt4fdvE|a>lJx+L7vPmJf?kH2_}G4V!aMfkRn=T+ykwls zTaSJ7#_?lj}4YoF(R7 zhQupEKTs8g@5yp)Jd{*so*#^Q@lwGBl6b)d+Y53`O{~7^bQ` z{lK))ykeF<#v=H5A(7j^Xr<9Wy`!9&3f4My4IMvBF6aY4b` zpfgmT7QknhpWDr4xBLj6jAUbXtq?AxmSymBA+L^X#DiXXScpd@cnpYn%5raw=BH~L zoz=+jI5-JVlBO05#oq+RDb6|;C6=y(v5X!h0QkCMjZ9P?FG@20ctPqlb3%$nEaOf^ z5H*%o>k!XXXM(bU)$3-MHI5IXdhMB+AuTXP7v7aD z**>)lw}qoA>On)f^f|>SZF+BWKtn!`Iz(tk9X^LSq=P2&zT><862qG8d^h5fozLPLN7elrM#Ex6LOC!+4*ea5|f+Q zcr*8aeM24_W?A_#I!2&P)Z4I>B_8L5*)^P9OJFR0#)&)<@Qar-!`T#{$jXh9lXRxm z0gCx$FTcp9o{%=8(MAwxT|F?>=dr?Kwc)v0zo%Co%y{Mts`CWUzXB zFORzWy}bvGU+n*^oa;A_o8`>Q-h&w}ZKm79yF$Q?mRr8!LCOI167Rz`icVV&tp*BF zHgUUyS;Xik)84T0Y_#c>6Lx?R8X{1Umgyrvvq`@(zeEO`MzA9kxbrvq88N>~&drwG zum)`;7tBpvN2Fnua3C>2!&I78JA&B#?A4S)0I6m#n{1wHBm*YCDAmSFUmQnZvbIKn zofc3qO*oZnM@qtEm8kk`YscHc4O?b3G4#@6*n9HjmTD?yRY|^ei=f4R0yda47^r95 z8y@8+1Ffy-T@$uN_qug@*zci#J^t9PZkRK|D+{1d4-lV@B+sU?qG%UWnSa=v#mGzU zBoW31VP};U3SFwZB%&td|Mmc&PO|n{jAQL12I?#n0N9Disgtr)z=Q(e5zF-+E|!kOEDl2V$$Zdtl=FY+Hcx*Kp4V<*(EW|=xY2=9dJ zwNZm=6-9L_y&>XwGF=doL3$X;1Zil0I0zJD;^=haFMBdO`lW*k#z51xCK+~$Ly4(b z<)DT|E*mOvqCpj+wInM%3?%XXxjiLYJ2kN;xB|w-5s^vgK!CjoNiZu)OZT&)r)aSq z7VIQkNl39&OViXzX>{^w%u4&7wV!Gzuhodi(xd>r6JQ=N1~s*MW_DmdP~~!K>Z3dj zF+b+EHa>;SiZiX8bU?=8V85}cOpcs&pzX{puAy>LPMct5=)$D`knt+Jm@d!xMo-i; z4*Q5eL!G<$$f@Y7NZ(2Jgi#^8cIbX*~$nA5=4LJRMHtM!#*0n#nEYN58E_r!aPDd2`!Q zmgD65w?J>F)f5GoUhL@{ts@tMO-PC2wvYyj8)5iFn43O;*M_i*OlOP|d$F~(T&^!I zhl)vdww~RlI=7|t>E6+_a_hD>;d-s$YdEcgq_t!s$=EiotW=P;t-0Q9-ZpZLAJ}vn zcl?1(V+Iuz5Mq2f#4Xs|A`ctF8kB0+bRoX;H+JqZ{4Q)p$rLIs((V1`72@3mK5BL1 z*jS?TM0U9Q^+)J=TwbzAfW$V*HzKpV*zBW@1w*tO9nE*+rnxWtU3J&L3hM{z;3x!o za{id`h)8E>dB@m2&usj$iZ%@ICi9 ztef+`25tiR1{T+L3&)}AO=+_7vV(==CySr*CoIvOaY=~6Mb6|(ndREN8Q=_Kc=I%+ z6tnVm7#5AH_-4Y)$V$=416dg_N^GPf7bdEWhcWmCs3CgXMKJys(!$ zP1XxFJFHz!0dRq?ibv#@$#9B9QRVju`Hen|UHASZV@we({-QpE#enrjWaHv}mWc`e y58E&K5=0%V{7c{h81B9?x4DoM7C*I2Q$=@>b)L2%nxdS, 2019. -# -msgid "" -msgstr "" -"Project-Id-Version: grub 2.04-pre1\n" -"Report-Msgid-Bugs-To: bug-grub@gnu.org\n" -"POT-Creation-Date: 2019-07-04 16:09+0200\n" -"PO-Revision-Date: 2019-06-03 17:56+0100\n" -"Last-Translator: Pedro Albuquerque \n" -"Language-Team: Portuguese \n" -"Language: pt\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Bugs: Report translation errors to the Language-Team address.\n" -"Plural-Forms: nplurals=2; plural=n != 1;\n" -"X-Generator: Geany / PoHelper 1.36\n" - -#: grub-core/bus/usb/serial/ftdi.c:145 grub-core/bus/usb/serial/pl2303.c:158 -#: grub-core/term/ieee1275/escc.c:169 grub-core/term/ns8250.c:202 -msgid "unsupported serial port speed" -msgstr "velocidade de porta série não suportada" - -#: grub-core/bus/usb/serial/ftdi.c:151 grub-core/bus/usb/serial/pl2303.c:164 -#: grub-core/term/efi/serial.c:116 grub-core/term/ieee1275/escc.c:175 -#: grub-core/term/ns8250.c:208 grub-core/term/serial.c:227 -#: grub-core/term/serial.c:243 -msgid "unsupported serial port parity" -msgstr "paridade de porta série não suportada" - -#: grub-core/bus/usb/serial/ftdi.c:157 grub-core/bus/usb/serial/pl2303.c:170 -#: grub-core/term/efi/serial.c:122 grub-core/term/ieee1275/escc.c:181 -#: grub-core/term/ns8250.c:213 grub-core/term/serial.c:267 -msgid "unsupported serial port stop bits number" -msgstr "número de bits de paragem de porta série não suportado" - -#: grub-core/bus/usb/serial/ftdi.c:161 grub-core/bus/usb/serial/pl2303.c:174 -#: grub-core/term/efi/serial.c:126 grub-core/term/ieee1275/escc.c:185 -#: grub-core/term/ns8250.c:217 -msgid "unsupported serial port word length" -msgstr "tamanho de palavra de porta série não suportada" - -#: grub-core/commands/acpi.c:42 -msgid "Don't load host tables specified by comma-separated list." -msgstr "" -"Não carregar tabelas de anfitriões especificadas por lista separada por " -"vírgulas." - -#: grub-core/commands/acpi.c:45 -msgid "Load only tables specified by comma-separated list." -msgstr "" -"Carregar só tabelas de anfitriões especificadas por lista separada por " -"vírgulas." - -#: grub-core/commands/acpi.c:46 -msgid "Export version 1 tables to the OS." -msgstr "Exportar tabelas versão 1 para o SO." - -#: grub-core/commands/acpi.c:47 -msgid "Export version 2 and version 3 tables to the OS." -msgstr "Exportar tabelas versão 2 e versão 3 para o SO." - -#: grub-core/commands/acpi.c:48 -msgid "Set OEMID of RSDP, XSDT and RSDT." -msgstr "Definir OEMID de RSDP, XSDT e RSDT." - -#: grub-core/commands/acpi.c:50 -msgid "Set OEMTABLE ID of RSDP, XSDT and RSDT." -msgstr "Definir OEMTABLE ID de RSDP, XSDT e RSDT." - -#: grub-core/commands/acpi.c:52 -msgid "Set OEMTABLE revision of RSDP, XSDT and RSDT." -msgstr "Definir revisão OEMTABLE de RSDP, XSDT e RSDT." - -#: grub-core/commands/acpi.c:54 -msgid "Set creator field of RSDP, XSDT and RSDT." -msgstr "Definir campo de criador de RSDP, XSDT e RSDT." - -#: grub-core/commands/acpi.c:56 -msgid "Set creator revision of RSDP, XSDT and RSDT." -msgstr "Definir revisão de criador de RSDP, XSDT e RSDT." - -#. TRANSLATORS: "hangs" here is a noun, not a verb. -#: grub-core/commands/acpi.c:58 -msgid "" -"Don't update EBDA. May fix failures or hangs on some BIOSes but makes it " -"ineffective with OS not receiving RSDP from GRUB." -msgstr "" -"Não actualizar EBDA. Pode reparar falhas ou paragens nalgumas BIOS, mas " -"torna-se ineficaz com o SO sem receber RSDP do GRUB." - -#: grub-core/commands/acpi.c:650 grub-core/commands/acpi.c:667 -#: grub-core/commands/i386/pc/play.c:105 grub-core/commands/keylayouts.c:230 -#: grub-core/commands/keylayouts.c:245 grub-core/commands/keylayouts.c:263 -#: grub-core/commands/verifiers.c:156 grub-core/efiemu/loadcore.c:350 -#: grub-core/kern/elf.c:117 grub-core/kern/elfXX.c:29 -#: grub-core/kern/elfXX.c:156 grub-core/loader/arm/linux.c:319 -#: grub-core/loader/arm64/linux.c:330 grub-core/loader/arm64/xen_boot.c:356 -#: grub-core/loader/efi/chainloader.c:276 -#: grub-core/loader/efi/chainloader.c:297 -#: grub-core/loader/efi/chainloader.c:329 grub-core/loader/efi/fdt.c:138 -#: grub-core/loader/i386/bsd.c:1276 grub-core/loader/i386/bsd.c:2116 -#: grub-core/loader/i386/bsdXX.c:20 grub-core/loader/i386/bsdXX.c:36 -#: grub-core/loader/i386/bsdXX.c:63 grub-core/loader/i386/bsdXX.c:357 -#: grub-core/loader/i386/bsdXX.c:376 grub-core/loader/i386/bsdXX.c:519 -#: grub-core/loader/i386/bsdXX.c:535 grub-core/loader/i386/bsdXX.c:615 -#: grub-core/loader/i386/bsdXX.c:638 -#: grub-core/loader/i386/coreboot/chainloader.c:112 -#: grub-core/loader/i386/coreboot/chainloader.c:148 -#: grub-core/loader/i386/coreboot/chainloader.c:170 -#: grub-core/loader/i386/linux.c:667 grub-core/loader/i386/linux.c:788 -#: grub-core/loader/i386/linux.c:1005 grub-core/loader/i386/multiboot_mbi.c:171 -#: grub-core/loader/i386/pc/chainloader.c:202 -#: grub-core/loader/i386/pc/linux.c:149 grub-core/loader/i386/pc/linux.c:320 -#: grub-core/loader/i386/pc/linux.c:362 grub-core/loader/i386/pc/plan9.c:457 -#: grub-core/loader/i386/pc/plan9.c:550 grub-core/loader/i386/pc/plan9.c:566 -#: grub-core/loader/i386/xen.c:934 grub-core/loader/i386/xen_file.c:72 -#: grub-core/loader/i386/xen_fileXX.c:43 grub-core/loader/i386/xen_fileXX.c:186 -#: grub-core/loader/i386/xen_fileXX.c:339 grub-core/loader/ia64/efi/linux.c:423 -#: grub-core/loader/ia64/efi/linux.c:471 grub-core/loader/linux.c:286 -#: grub-core/loader/macho.c:84 grub-core/loader/macho.c:109 -#: grub-core/loader/machoXX.c:33 grub-core/loader/machoXX.c:46 -#: grub-core/loader/machoXX.c:76 grub-core/loader/machoXX.c:116 -#: grub-core/loader/machoXX.c:131 grub-core/loader/machoXX.c:147 -#: grub-core/loader/machoXX.c:196 grub-core/loader/machoXX.c:317 -#: grub-core/loader/multiboot.c:434 grub-core/loader/multiboot_elfxx.c:171 -#: grub-core/loader/multiboot_elfxx.c:234 -#: grub-core/loader/multiboot_elfxx.c:278 grub-core/loader/multiboot_mbi2.c:129 -#: grub-core/loader/xnu.c:737 grub-core/loader/xnu.c:795 -#: grub-core/loader/xnu.c:816 grub-core/loader/xnu.c:871 -#: grub-core/loader/xnu.c:914 grub-core/loader/xnu.c:952 -#: grub-core/loader/xnu_resume.c:68 grub-core/loader/xnu_resume.c:153 -#: grub-core/loader/xnu_resume.c:165 util/grub-mkimagexx.c:2288 -#, c-format -msgid "premature end of file %s" -msgstr "fim de ficheiro %s prematuro" - -#: grub-core/commands/acpi.c:779 -msgid "" -"[-1|-2] [--exclude=TABLE1,TABLE2|--load-only=TABLE1,TABLE2] FILE1 [FILE2] " -"[...]" -msgstr "" -"[-1|-2] [--exclude=TABELA1,TABELA2|--load-only=TABELA1,TABELA2] FICHEIRO1 " -"[FICHEIRO2] [...]" - -#: grub-core/commands/acpi.c:782 -msgid "Load host ACPI tables and tables specified by arguments." -msgstr "" -"Carregar tabelas de anfitriões ACPI e tabelas especificadas por argumentos." - -#: grub-core/commands/acpihalt.c:368 grub-core/kern/err.c:110 -#, c-format -msgid "error: %s.\n" -msgstr "erro: %s.\n" - -#: grub-core/commands/acpihalt.c:368 grub-core/kern/emu/misc.c:95 -#: grub-core/kern/emu/misc.c:105 grub-core/kern/emu/misc.c:134 -#: grub-core/kern/emu/mm.c:34 grub-core/kern/emu/mm.c:62 -#: grub-core/kern/mm.c:374 grub-core/lib/relocator.c:1282 -#: grub-core/lib/relocator.c:1439 grub-core/lib/relocator.c:1538 -#: grub-core/loader/arm/linux.c:259 grub-core/loader/arm64/linux.c:265 -#: grub-core/loader/arm64/linux.c:321 grub-core/loader/arm64/linux.c:340 -#: grub-core/loader/arm64/xen_boot.c:344 grub-core/loader/arm64/xen_boot.c:367 -#: grub-core/loader/efi/chainloader.c:289 grub-core/osdep/unix/dl.c:48 -#: grub-core/osdep/windows/dl.c:46 grub-core/script/lexer.c:156 -#: grub-core/script/lexer.c:182 -msgid "out of memory" -msgstr "memória esgotada" - -#: grub-core/commands/acpihalt.c:374 grub-core/disk/cryptodisk.c:587 -#: grub-core/disk/cryptodisk.c:632 grub-core/kern/emu/hostdisk.c:307 -#: grub-core/kern/emu/hostfs.c:149 grub-core/kern/emu/misc.c:200 -#: grub-core/osdep/linux/ofpath.c:195 grub-core/osdep/linux/ofpath.c:521 -#: grub-core/osdep/linux/ofpath.c:534 util/glue-efi.c:80 util/glue-efi.c:94 -#: util/grub-editenv.c:155 util/grub-fstest.c:577 -#: util/grub-install-common.c:943 util/grub-mkrescue.c:634 -#: util/grub-mkrescue.c:888 util/grub-mount.c:506 util/grub-render-label.c:176 -#: util/misc.c:95 util/setup.c:814 util/setup.c:833 -#, c-format -msgid "cannot read `%s': %s" -msgstr "impossível ler \"%s\": %s" - -#. TRANSLATORS: It's computer shutdown using ACPI, not disabling ACPI. -#: grub-core/commands/acpihalt.c:452 -msgid "ACPI shutdown failed" -msgstr "falha ao encerrar com ACPI" - -#: grub-core/commands/arc/lsdev.c:51 -msgid "List devices." -msgstr "Listar dispositivos." - -#: grub-core/commands/blocklist.c:122 grub-core/commands/cat.c:57 -#: grub-core/commands/configfile.c:35 grub-core/commands/efi/loadbios.c:168 -#: grub-core/commands/file.c:159 grub-core/commands/hexdump.c:47 -#: grub-core/commands/legacycfg.c:209 grub-core/commands/legacycfg.c:315 -#: grub-core/commands/minicmd.c:44 grub-core/commands/syslinuxcfg.c:146 -#: grub-core/commands/testload.c:58 grub-core/commands/testspeed.c:52 -#: grub-core/disk/loopback.c:93 grub-core/efiemu/main.c:293 -#: grub-core/font/font_cmd.c:32 grub-core/kern/emu/hostdisk.c:519 -#: grub-core/loader/arm/linux.c:364 grub-core/loader/arm/linux.c:409 -#: grub-core/loader/arm/linux.c:472 grub-core/loader/arm64/linux.c:243 -#: grub-core/loader/arm64/linux.c:297 grub-core/loader/arm64/xen_boot.c:398 -#: grub-core/loader/arm64/xen_boot.c:411 grub-core/loader/arm64/xen_boot.c:462 -#: grub-core/loader/efi/chainloader.c:216 grub-core/loader/i386/bsd.c:1462 -#: grub-core/loader/i386/bsd.c:1807 grub-core/loader/i386/bsd.c:2085 -#: grub-core/loader/i386/coreboot/chainloader.c:438 -#: grub-core/loader/i386/linux.c:656 grub-core/loader/i386/linux.c:1041 -#: grub-core/loader/i386/pc/chainloader.c:290 -#: grub-core/loader/i386/pc/freedos.c:105 grub-core/loader/i386/pc/linux.c:138 -#: grub-core/loader/i386/pc/linux.c:400 grub-core/loader/i386/pc/ntldr.c:85 -#: grub-core/loader/i386/pc/plan9.c:409 -#: grub-core/loader/i386/pc/pxechainloader.c:94 -#: grub-core/loader/i386/pc/truecrypt.c:96 grub-core/loader/i386/xen.c:641 -#: grub-core/loader/i386/xen.c:768 grub-core/loader/i386/xen.c:844 -#: grub-core/loader/i386/xen.c:854 grub-core/loader/i386/xnu.c:488 -#: grub-core/loader/ia64/efi/linux.c:459 grub-core/loader/ia64/efi/linux.c:539 -#: grub-core/loader/mips/linux.c:238 grub-core/loader/mips/linux.c:429 -#: grub-core/loader/multiboot.c:322 grub-core/loader/multiboot.c:374 -#: grub-core/loader/multiboot.c:384 -#: grub-core/loader/powerpc/ieee1275/linux.c:269 -#: grub-core/loader/powerpc/ieee1275/linux.c:341 -#: grub-core/loader/sparc64/ieee1275/linux.c:305 -#: grub-core/loader/sparc64/ieee1275/linux.c:381 grub-core/loader/xnu.c:351 -#: grub-core/loader/xnu.c:460 grub-core/loader/xnu.c:778 -#: grub-core/loader/xnu.c:892 grub-core/loader/xnu.c:1277 -#: grub-core/loader/xnu.c:1427 grub-core/loader/xnu.c:1453 -#: grub-core/video/readers/jpeg.c:812 grub-core/video/readers/png.c:1123 -msgid "filename expected" -msgstr "nome de ficheiro esperado" - -#. TRANSLATORS: "embed" is a verb (command description). " -#: grub-core/commands/blocklist.c:154 grub-core/commands/cat.c:163 -#: grub-core/commands/configfile.c:65 grub-core/commands/configfile.c:68 -#: grub-core/commands/configfile.c:74 grub-core/commands/configfile.c:80 -#: grub-core/commands/configfile.c:86 grub-core/commands/hashsum.c:34 -#: grub-core/commands/legacycfg.c:834 grub-core/commands/legacycfg.c:841 -#: grub-core/commands/legacycfg.c:846 grub-core/commands/legacycfg.c:851 -#: grub-core/commands/macbless.c:222 grub-core/commands/minicmd.c:198 -#: grub-core/commands/syslinuxcfg.c:186 grub-core/commands/syslinuxcfg.c:194 -#: grub-core/commands/syslinuxcfg.c:200 grub-core/commands/syslinuxcfg.c:206 -#: grub-core/commands/testload.c:163 grub-core/efiemu/main.c:312 -#: grub-core/kern/emu/main.c:100 grub-core/kern/emu/main.c:103 -#: grub-core/loader/i386/bsd.c:2137 grub-core/loader/i386/bsd.c:2140 -#: grub-core/loader/i386/bsd.c:2143 -#: grub-core/loader/i386/coreboot/chainloader.c:505 -#: grub-core/loader/ia64/efi/linux.c:594 include/grub/util/install.h:32 -#: include/grub/util/install.h:64 util/grub-glue-efi.c:52 -#: util/grub-glue-efi.c:54 util/grub-glue-efi.c:56 util/grub-install.c:254 -#: util/grub-install.c:301 util/grub-mkfont.c:936 util/grub-mkimage.c:68 -#: util/grub-mkimage.c:74 util/grub-mkimage.c:76 util/grub-mkimage.c:78 -#: util/grub-mkimage.c:81 util/grub-mklayout.c:52 util/grub-mklayout.c:54 -#: util/grub-mkrescue.c:97 util/grub-mkrescue.c:101 util/grub-mkrescue.c:104 -#: util/grub-mkrescue.c:105 util/grub-mkrescue.c:106 -#: util/grub-mkstandalone.c:47 util/grub-mkstandalone.c:49 -#: util/grub-probe.c:732 util/grub-render-label.c:59 -#: util/grub-render-label.c:70 util/grub-render-label.c:72 util/grub-setup.c:78 -#: util/grub-setup.c:80 util/grub-setup.c:84 util/grub-syslinux2cfg.c:74 -#: util/grub-syslinux2cfg.c:147 -msgid "FILE" -msgstr "FICHEIRO" - -#: grub-core/commands/blocklist.c:154 -msgid "Print a block list." -msgstr "Imprime uma lista de blocos." - -#: grub-core/commands/boot.c:147 grub-core/commands/legacycfg.c:533 -#: grub-core/commands/legacycfg.c:574 grub-core/loader/arm64/linux.c:250 -#: grub-core/loader/i386/bsd.c:1799 grub-core/loader/i386/bsd.c:1900 -#: grub-core/loader/i386/bsd.c:2007 grub-core/loader/i386/bsd.c:2040 -#: grub-core/loader/i386/bsd.c:2089 grub-core/loader/i386/linux.c:1047 -#: grub-core/loader/i386/pc/linux.c:406 grub-core/loader/i386/xen.c:775 -#: grub-core/loader/i386/xen.c:859 grub-core/loader/ia64/efi/linux.c:545 -#: grub-core/loader/mips/linux.c:432 grub-core/loader/multiboot.c:388 -#: grub-core/loader/powerpc/ieee1275/linux.c:347 -#: grub-core/loader/sparc64/ieee1275/linux.c:387 grub-core/loader/xnu.c:572 -#: grub-core/loader/xnu.c:665 grub-core/loader/xnu.c:781 -#: grub-core/loader/xnu.c:895 grub-core/loader/xnu.c:1091 -#: grub-core/loader/xnu.c:1258 grub-core/loader/xnu.c:1289 -#: grub-core/loader/xnu.c:1430 -msgid "you need to load the kernel first" -msgstr "Primeiro tem de aprender o kernel" - -#: grub-core/commands/boot.c:189 -msgid "Boot an operating system." -msgstr "Iniciar um sistema operativo." - -#: grub-core/commands/boottime.c:36 -#: grub-core/commands/i386/coreboot/cb_timestamps.c:108 -msgid "No boot time statistics is available\n" -msgstr "Sem estatísticas de hora de início disponíveis\n" - -#: grub-core/commands/boottime.c:59 -msgid "Show boot time statistics." -msgstr "Mostrar estatísticas de hora de início." - -#: grub-core/commands/cacheinfo.c:40 -#, c-format -msgid "Disk cache statistics: hits = %lu (%lu.%02lu%%), misses = %lu\n" -msgstr "" -"Estatísticas da cache do disco: acertados = %lu (%lu.%02lu%%), falhados = " -"%lu\n" - -#: grub-core/commands/cacheinfo.c:45 -msgid "No disk cache statistics available\n" -msgstr "Sem estatísticas de disco disponíveis\n" - -#: grub-core/commands/cacheinfo.c:56 -msgid "Get disk cache info." -msgstr "Obter informação da cache do disco." - -#: grub-core/commands/cat.c:33 -msgid "Accept DOS-style CR/NL line endings." -msgstr "Aceitar fins de linha estilo DOS CR/NL." - -#: grub-core/commands/cat.c:163 grub-core/commands/minicmd.c:198 -msgid "Show the contents of a file." -msgstr "Mostrar o conteúdo de um ficheiro." - -#: grub-core/commands/cmp.c:43 grub-core/commands/i386/pc/drivemap.c:239 -#: grub-core/commands/i386/wrmsr.c:60 grub-core/commands/iorw.c:85 -#: grub-core/commands/memrw.c:84 grub-core/commands/password.c:75 -#: grub-core/commands/password_pbkdf2.c:94 grub-core/commands/pgp.c:826 -#: grub-core/commands/regexp.c:113 grub-core/mmap/mmap.c:517 -#: grub-core/net/dns.c:639 -msgid "two arguments expected" -msgstr "esperados dois argumentos" - -#: grub-core/commands/cmp.c:45 -#, c-format -msgid "Compare file `%s' with `%s':\n" -msgstr "Comparar o ficheiro \"%s\" com \"%s\":\n" - -#: grub-core/commands/cmp.c:54 -#, c-format -msgid "Files differ in size: %llu [%s], %llu [%s]\n" -msgstr "Os ficheiros diferem em tamanho: %llu [%s], %llu [%s]\n" - -#: grub-core/commands/cmp.c:81 -#, c-format -msgid "Files differ at the offset %llu: 0x%x [%s], 0x%x [%s]\n" -msgstr "Os ficheiros diferem no desvio %llu: 0x%x [%s], 0x%x [%s]\n" - -#. TRANSLATORS: it's always exactly 2 files. -#: grub-core/commands/cmp.c:93 -msgid "The files are identical.\n" -msgstr "Os ficheiros são idênticos.\n" - -#: grub-core/commands/cmp.c:113 -msgid "FILE1 FILE2" -msgstr "FICHEIRO1 FICHEIRO2" - -#: grub-core/commands/cmp.c:113 -msgid "Compare two files." -msgstr "Comparar dois ficheiros." - -#: grub-core/commands/configfile.c:65 -msgid "Load another config file." -msgstr "Carregar outro ficheiro de configuração." - -#: grub-core/commands/configfile.c:69 grub-core/commands/configfile.c:87 -msgid "Load another config file without changing context." -msgstr "Carregar outro ficheiro de configuração sem mudar de contexto." - -#: grub-core/commands/configfile.c:75 -msgid "" -"Load another config file without changing context but take only menu entries." -msgstr "" -"Carregar outro ficheiro de configuração sem mudar de contexto, mas receber " -"só entradas de menu." - -#: grub-core/commands/configfile.c:81 -msgid "Load another config file but take only menu entries." -msgstr "" -"Carregar outro ficheiro de configuração, mas receber só entradas de menu." - -#: grub-core/commands/date.c:141 -msgid "[[year-]month-day] [hour:minute[:second]]" -msgstr "[[ano-]mês-dia] [hora:minuto[:segundo]]" - -#: grub-core/commands/date.c:142 -msgid "Display/set current datetime." -msgstr "Mostra/Definir data/hora actual." - -#: grub-core/commands/echo.c:30 -msgid "Do not output the trailing newline." -msgstr "Não imprimir a nova linha final." - -#: grub-core/commands/echo.c:31 -msgid "Enable interpretation of backslash escapes." -msgstr "Activar interpretação de escapes com barra invertida." - -#: grub-core/commands/echo.c:134 -msgid "[-e|-n] STRING" -msgstr "[-e|-n] CADEIA" - -#: grub-core/commands/echo.c:134 -msgid "Display a line of text." -msgstr "Mostrar uma linha de texto." - -#: grub-core/commands/efi/efifwsetup.c:82 -msgid "Reboot into firmware setup menu." -msgstr "Reiniciar para o menu de configuração do firmware." - -#: grub-core/commands/efi/fixvideo.c:107 -msgid "Fix video problem." -msgstr "Reparar problema de vídeo." - -#: grub-core/commands/efi/loadbios.c:52 -msgid "ROM image is present." -msgstr "Imagem ROM presente." - -#: grub-core/commands/efi/loadbios.c:70 -msgid "Can't enable ROM area." -msgstr "Impossível activar área de ROM." - -#: grub-core/commands/efi/loadbios.c:209 -msgid "" -"Create BIOS-like structures for backward compatibility with existing OS." -msgstr "" -"Criar estruturas de tipo BIOS para compatibilidade com versões anteriores do " -"SO existente." - -#: grub-core/commands/efi/loadbios.c:214 -msgid "BIOS_DUMP [INT10_DUMP]" -msgstr "BIOS_DUMP [INT10_DUMP]" - -#: grub-core/commands/efi/loadbios.c:215 -msgid "Load BIOS dump." -msgstr "Carregar despejo da BIOS." - -#: grub-core/commands/efi/shim_lock.c:76 -#, c-format -msgid "module cannot be loaded in UEFI secure boot mode: %s" -msgstr "o módulo não pode ser carregado em modo de início seguro da UEFI: %s" - -#: grub-core/commands/efi/shim_lock.c:98 -#, c-format -msgid "cannot boot due to dangerous module in memory: %s" -msgstr "impossível iniciar devido a módulo perigoso em memória: %s" - -#: grub-core/commands/efi/shim_lock.c:116 -msgid "bad shim signature" -msgstr "má assinatura shim" - -#: grub-core/commands/efi/tpm.c:149 grub-core/commands/efi/tpm.c:189 -#: grub-core/commands/efi/tpm.c:256 grub-core/commands/efi/tpm.c:306 -msgid "Command failed" -msgstr "O comando falhou" - -#: grub-core/commands/efi/tpm.c:151 grub-core/commands/efi/tpm.c:191 -#: grub-core/commands/efi/tpm.c:258 grub-core/commands/efi/tpm.c:308 -msgid "Invalid parameter" -msgstr "Parâmetro inválido" - -#: grub-core/commands/efi/tpm.c:154 grub-core/commands/efi/tpm.c:194 -#: grub-core/commands/efi/tpm.c:261 grub-core/commands/efi/tpm.c:311 -msgid "Output buffer too small" -msgstr "Buffer de saída muito pequeno" - -#: grub-core/commands/efi/tpm.c:156 grub-core/commands/efi/tpm.c:196 -#: grub-core/commands/efi/tpm.c:263 grub-core/commands/efi/tpm.c:313 -msgid "TPM unavailable" -msgstr "TPM indisponível" - -#: grub-core/commands/efi/tpm.c:158 grub-core/commands/efi/tpm.c:198 -#: grub-core/commands/efi/tpm.c:265 grub-core/commands/efi/tpm.c:315 -msgid "Unknown TPM error" -msgstr "Erro TPM desconhecido" - -#: grub-core/commands/efi/tpm.c:240 grub-core/commands/efi/tpm.c:288 -msgid "cannot allocate TPM event buffer" -msgstr "impossível alocar buffer de evento TPM" - -#: grub-core/commands/eval.c:63 -msgid "STRING ..." -msgstr "CADEIA..." - -#: grub-core/commands/eval.c:64 -msgid "Evaluate arguments as GRUB commands" -msgstr "Avaliar argumentos como comandos GRUB" - -#: grub-core/commands/file.c:41 -msgid "Check if FILE can be booted as i386 PAE Xen unprivileged guest kernel" -msgstr "" -"Verificar se FICHEIRO pode ser iniciado como kernel convidado i386 PAE Xen " -"sem privilégios" - -#: grub-core/commands/file.c:44 -msgid "Check if FILE can be booted as x86_64 Xen unprivileged guest kernel" -msgstr "" -"Verificar se FICHEIRO pode ser iniciado como kernel convidado x86_64 Xen sem " -"privilégios" - -#: grub-core/commands/file.c:46 -msgid "Check if FILE can be used as Xen x86 privileged guest kernel" -msgstr "" -"Verificar se FICHEIRO pode ser usado como kernel convidado Xen x86 com " -"privilégios" - -#: grub-core/commands/file.c:48 -msgid "Check if FILE can be used as x86 multiboot kernel" -msgstr "Verificar se FICHEIRO pode ser usado como kernel x86 multiboot" - -#: grub-core/commands/file.c:50 -msgid "Check if FILE can be used as x86 multiboot2 kernel" -msgstr "Verificar se FICHEIRO pode ser usado como kernel x86 multiboot2" - -#: grub-core/commands/file.c:52 -msgid "Check if FILE is ARM Linux" -msgstr "Verificar se FICHEIRO é ARM Linux" - -#: grub-core/commands/file.c:54 -msgid "Check if FILE is ARM64 Linux" -msgstr "Verificar se FICHEIRO é ARM64 Linux" - -#: grub-core/commands/file.c:56 -msgid "Check if FILE is IA64 Linux" -msgstr "Verificar se FICHEIRO é IA64 Linux" - -#: grub-core/commands/file.c:58 -msgid "Check if FILE is MIPS Linux" -msgstr "Verificar se FICHEIRO é MIPS Linux" - -#: grub-core/commands/file.c:60 -msgid "Check if FILE is MIPSEL Linux" -msgstr "Verificar se FICHEIRO é MIPSEL Linux" - -#: grub-core/commands/file.c:62 -msgid "Check if FILE is SPARC64 Linux" -msgstr "Verificar se FICHEIRO é SPARC64 Linux" - -#: grub-core/commands/file.c:64 -msgid "Check if FILE is POWERPC Linux" -msgstr "Verificar se FICHEIRO é POWERPC Linux" - -#: grub-core/commands/file.c:66 -msgid "Check if FILE is x86 Linux" -msgstr "Verificar se FICHEIRO é x86 Linux" - -#: grub-core/commands/file.c:68 -msgid "Check if FILE is x86 Linux supporting 32-bit protocol" -msgstr "Verificar se FICHEIRO é x86 Linux com suporte a protocolo 32-bit" - -#: grub-core/commands/file.c:70 -msgid "Check if FILE is x86 kFreeBSD" -msgstr "Verificar se FICHEIRO é x86 kFreeBSD" - -#: grub-core/commands/file.c:72 -msgid "Check if FILE is i386 kFreeBSD" -msgstr "Verificar se FICHEIRO é i386 kFreeBSD" - -#: grub-core/commands/file.c:74 -msgid "Check if FILE is x86_64 kFreeBSD" -msgstr "Verificar se FICHEIRO é x86_64 kFreeBSD" - -#: grub-core/commands/file.c:77 -msgid "Check if FILE is x86 kNetBSD" -msgstr "Verificar se FICHEIRO é x86 kNetBSD" - -#: grub-core/commands/file.c:79 -msgid "Check if FILE is i386 kNetBSD" -msgstr "Verificar se FICHEIRO é i386 kNetBSD" - -#: grub-core/commands/file.c:81 -msgid "Check if FILE is x86_64 kNetBSD" -msgstr "Verificar se FICHEIRO é x86_64 kNetBSD" - -#: grub-core/commands/file.c:84 -msgid "Check if FILE is i386 EFI file" -msgstr "Verificar se FICHEIRO é i386 EFI" - -#: grub-core/commands/file.c:86 -msgid "Check if FILE is x86_64 EFI file" -msgstr "Verificar se FICHEIRO é x86_64 EFI" - -#: grub-core/commands/file.c:88 -msgid "Check if FILE is IA64 EFI file" -msgstr "Verificar se FICHEIRO é IA64 EFI" - -#: grub-core/commands/file.c:90 -msgid "Check if FILE is ARM64 EFI file" -msgstr "Verificar se FICHEIRO é ARM64 EFI" - -#: grub-core/commands/file.c:92 -msgid "Check if FILE is ARM EFI file" -msgstr "Verificar se FICHEIRO é ARM EFI" - -#: grub-core/commands/file.c:94 -msgid "Check if FILE is RISC-V 32bit EFI file" -msgstr "Verificar se FICHEIRO é RISC-V 32bit EFI" - -#: grub-core/commands/file.c:96 -msgid "Check if FILE is RISC-V 64bit EFI file" -msgstr "Verificar se FICHEIRO é RISC-V 64bit EFI file" - -#: grub-core/commands/file.c:98 -msgid "Check if FILE is hiberfil.sys in hibernated state" -msgstr "Verificar se FICHEIRO é hiberfil.sys em estado hibernado" - -#: grub-core/commands/file.c:100 -msgid "Check if FILE is x86_64 XNU (Mac OS X kernel)" -msgstr "Verificar se FICHEIRO é x86_64 XNU (kernel Mac OS X)" - -#: grub-core/commands/file.c:102 -msgid "Check if FILE is i386 XNU (Mac OS X kernel)" -msgstr "Verificar se FICHEIRO é i386 XNU (kernel Mac OS X)" - -#: grub-core/commands/file.c:104 -msgid "Check if FILE is XNU (Mac OS X kernel) hibernated image" -msgstr "Verificar se FICHEIRO é imagem hibernada XNU (kernel Mac OS X)" - -#: grub-core/commands/file.c:106 -msgid "Check if FILE is BIOS bootsector" -msgstr "Verificar se FICHEIRO é BIOS bootsector" - -#. TRANSLATORS: it's a standalone boolean value, -#. opposite of "true". -#: grub-core/commands/file.c:675 grub-core/commands/i386/cmostest.c:63 -#: grub-core/commands/i386/cpuid.c:71 grub-core/commands/keystatus.c:83 -#: grub-core/commands/keystatus.c:87 grub-core/commands/keystatus.c:96 -#: grub-core/commands/test.c:436 grub-core/commands/true.c:39 -#: grub-core/script/execute.c:247 grub-core/script/execute.c:1039 -msgid "false" -msgstr "falso" - -#: grub-core/commands/file.c:684 -msgid "OPTIONS FILE" -msgstr "OPÇÕES FICHEIRO" - -#: grub-core/commands/file.c:685 -msgid "Check if FILE is of specified type." -msgstr "Verificar se FICHEIRO é do tipo especificado." - -#. TRANSLATORS: It means that the specified partition e.g. -#. hd0,msdos1=/dev/sda1 doesn't exist. -#: grub-core/commands/gptsync.c:140 grub-core/kern/disk.c:258 -msgid "no such partition" -msgstr "partição inexistente" - -#: grub-core/commands/gptsync.c:240 -#, c-format -msgid "New MBR is written to `%s'\n" -msgstr "O novo MBR é escrito em \"%s\"\n" - -#: grub-core/commands/gptsync.c:252 -msgid "DEVICE [PARTITION[+/-[TYPE]]] ..." -msgstr "DISPSITIVO [PARTIÇÃO[+/-[TIPO]]] ..." - -#. TRANSLATORS: MBR type is one-byte partition -#. type id. -#: grub-core/commands/gptsync.c:255 -msgid "" -"Fill hybrid MBR of GPT drive DEVICE. Specified partitions will be a part of " -"hybrid MBR. Up to 3 partitions are allowed. TYPE is an MBR type. + means " -"that partition is active. Only one partition can be active." -msgstr "" -"Preencher MBR de DISPOSITIVO GPT drive. As partições especificadas serão " -"parte do MBR híbrido. São permitidas até 3 partições. TIPO é um tipo de MBR. " -"+ significa que a partição está activa. Só uma partição pode estar activa." - -#: grub-core/commands/halt.c:40 -msgid "" -"Halts the computer. This command does not work on all firmware " -"implementations." -msgstr "" -"Pára o computador. Este comando não funciona em todas as implementações de " -"firmware." - -#: grub-core/commands/hashsum.c:32 -msgid "Specify hash to use." -msgstr "Especificar a hash a usar." - -#: grub-core/commands/hashsum.c:32 -msgid "HASH" -msgstr "HASH" - -#: grub-core/commands/hashsum.c:33 -msgid "Check hashes of files with hash list FILE." -msgstr "Verificar hashes de ficheiros com o FICHEIRO de lista de hashes." - -#: grub-core/commands/hashsum.c:35 -msgid "Base directory for hash list." -msgstr "Pasta base para lista de hashes." - -#. TRANSLATORS: platform here isn't identifier. It can be translated. -#: grub-core/commands/hashsum.c:35 grub-core/commands/ls.c:150 -#: grub-core/commands/macbless.c:226 grub-core/commands/syslinuxcfg.c:51 -#: grub-core/commands/syslinuxcfg.c:54 grub-core/kern/emu/main.c:106 -#: include/grub/util/install.h:50 include/grub/util/install.h:53 -#: include/grub/util/install.h:56 include/grub/util/install.h:59 -#: util/grub-install.c:250 util/grub-install.c:252 util/grub-install.c:297 -#: util/grub-install.c:299 util/grub-mkimage.c:64 util/grub-mkimage.c:67 -#: util/grub-mknetdir.c:46 util/grub-mknetdir.c:48 util/grub-mkrescue.c:99 -#: util/grub-setup.c:82 util/grub-syslinux2cfg.c:63 util/grub-syslinux2cfg.c:65 -#: util/grub-syslinux2cfg.c:67 util/grub-syslinux2cfg.c:71 -msgid "DIR" -msgstr "PASTA" - -#: grub-core/commands/hashsum.c:37 -msgid "Don't stop after first error." -msgstr "Não parar após o 1º erro." - -#: grub-core/commands/hashsum.c:38 -msgid "Uncompress file before checksumming." -msgstr "Descomprimir ficheiros antes de fazer a checksum." - -#: grub-core/commands/hashsum.c:163 -#, c-format -msgid "%s: READ ERROR\n" -msgstr "%s: ERRO DE LEITURA\n" - -#: grub-core/commands/hashsum.c:177 -#, c-format -msgid "%s: HASH MISMATCH\n" -msgstr "%s: TROCA DE HASH\n" - -#: grub-core/commands/hashsum.c:188 -#, c-format -msgid "%s: OK\n" -msgstr "%s: CORRECTO\n" - -#: grub-core/commands/hashsum.c:282 -msgid "-h HASH [-c FILE [-p PREFIX]] [FILE1 [FILE2 ...]]" -msgstr "-h HASH [-c FICHEIRO [-p PREFIXO]] [FICHEIRO1 [FICHEIRO2...]]" - -#. TRANSLATORS: "hash checksum" is just to -#. be a bit more precise, you can treat it as -#. just "hash". -#: grub-core/commands/hashsum.c:287 grub-core/commands/hashsum.c:292 -#: grub-core/commands/hashsum.c:297 grub-core/commands/hashsum.c:302 -#: grub-core/commands/hashsum.c:307 grub-core/commands/hashsum.c:313 -msgid "Compute or check hash checksum." -msgstr "Calcular ou verificar a checksum da hash." - -#: grub-core/commands/hashsum.c:290 grub-core/commands/hashsum.c:295 -#: grub-core/commands/hashsum.c:300 grub-core/commands/hashsum.c:305 -#: grub-core/commands/hashsum.c:311 -msgid "[-c FILE [-p PREFIX]] [FILE1 [FILE2 ...]]" -msgstr "[-c FICHEIRO [-p PREFIXO]] [FICHEIRO1 [FICHEIRO2...]]" - -#: grub-core/commands/hdparm.c:33 -msgid "" -"Set Advanced Power Management\n" -"(1=low, ..., 254=high, 255=off)." -msgstr "" -"Definir gestão de energia avançada\n" -"(1=baixa, ..., 254=alta, 255=desligada)." - -#: grub-core/commands/hdparm.c:36 -msgid "Display power mode." -msgstr "Mostrar modo de energia." - -#: grub-core/commands/hdparm.c:37 -msgid "Freeze ATA security settings until reset." -msgstr "Congelar definições de segurança ATA até à reposição." - -#: grub-core/commands/hdparm.c:39 -msgid "Display SMART health status." -msgstr "Mostrar estado de saúde SMART." - -#: grub-core/commands/hdparm.c:40 -msgid "" -"Set Automatic Acoustic Management\n" -"(0=off, 128=quiet, ..., 254=fast)." -msgstr "" -"Definir gestão acústica automática\n" -"(0=desligada, 128=silenciosa, ..., 254=rápida)." - -#: grub-core/commands/hdparm.c:43 -msgid "" -"Set standby timeout\n" -"(0=off, 1=5s, 2=10s, ..., 240=20m, 241=30m, ...)." -msgstr "" -"Definir tempo de entrada em espera\n" -"(0=desligado, 1=5s, 2=10s, ..., 240=20m, 241=30m, ...)." - -#: grub-core/commands/hdparm.c:46 -msgid "Set drive to standby mode." -msgstr "Definir unidade para modo de espera." - -#: grub-core/commands/hdparm.c:47 -msgid "Set drive to sleep mode." -msgstr "Definir unidade para modo de dormir." - -#: grub-core/commands/hdparm.c:48 -msgid "Print drive identity and settings." -msgstr "Imprimir identidade e definições da unidade." - -#: grub-core/commands/hdparm.c:50 -msgid "Show raw contents of ATA IDENTIFY sector." -msgstr "Mostrar conteúdo bruto do sector ATA IDENTIFY." - -#: grub-core/commands/hdparm.c:52 -msgid "Disable/enable SMART (0/1)." -msgstr "Desactivar/Activar SMART (0/1)." - -#: grub-core/commands/hdparm.c:53 -msgid "Do not print messages." -msgstr "Não imprimir mensagens." - -#: grub-core/commands/hdparm.c:286 grub-core/commands/i386/rdmsr.c:68 -#: grub-core/commands/iorw.c:47 grub-core/commands/legacycfg.c:760 -#: grub-core/commands/legacycfg.c:812 grub-core/commands/macbless.c:190 -#: grub-core/commands/memrw.c:47 grub-core/commands/pgp.c:738 -#: grub-core/commands/pgp.c:792 grub-core/commands/search.c:304 -#: grub-core/commands/search_wrap.c:179 grub-core/commands/setpci.c:243 -#: grub-core/commands/sleep.c:71 grub-core/fs/zfs/zfsinfo.c:279 -#: grub-core/fs/zfs/zfsinfo.c:358 grub-core/gettext/gettext.c:492 -#: grub-core/kern/corecmd.c:65 grub-core/kern/corecmd.c:79 -#: grub-core/mmap/mmap.c:430 grub-core/net/dns.c:713 grub-core/net/dns.c:745 -#: grub-core/net/net.c:694 grub-core/net/net.c:1052 -#: grub-core/normal/context.c:194 grub-core/script/execute.c:131 -#: grub-core/term/gfxterm_background.c:136 -msgid "one argument expected" -msgstr "esperado um argumento" - -#: grub-core/commands/hdparm.c:440 -msgid "[OPTIONS] DISK" -msgstr "[OPÇÕES] DISCO" - -#: grub-core/commands/hdparm.c:441 -msgid "Get/set ATA disk parameters." -msgstr "Obter/Definir parâmetros de disco ATA." - -#: grub-core/commands/help.c:132 grub-core/lib/arg.c:109 -#: grub-core/lib/gnulib/argp-help.c:1616 -msgid "Usage:" -msgstr "Uso:" - -#: grub-core/commands/help.c:146 -msgid "[PATTERN ...]" -msgstr "[PADRÃO...]" - -#: grub-core/commands/help.c:147 -msgid "Show a help message." -msgstr "Mostrar uma mensagem de ajuda." - -#: grub-core/commands/hexdump.c:31 -msgid "Skip offset bytes from the beginning of file." -msgstr "Saltar bytes de desvio a partir do início do ficheiro." - -#: grub-core/commands/hexdump.c:33 -msgid "Read only LENGTH bytes." -msgstr "Ler só TAMANHO bytes." - -#: grub-core/commands/hexdump.c:125 -msgid "[OPTIONS] FILE_OR_DEVICE" -msgstr "[OPÇÕES] FICHEIRO_OU_DISPOSITIVO" - -#: grub-core/commands/hexdump.c:126 -msgid "Show raw contents of a file or memory." -msgstr "Mostrar conteúdo bruto de um ficheiro ou memória." - -#: grub-core/commands/i386/cmosdump.c:58 -msgid "Show raw dump of the CMOS contents." -msgstr "Mostrar despejo bruto do conteúdo de CMOS." - -#: grub-core/commands/i386/cmostest.c:108 -#: grub-core/commands/i386/cmostest.c:111 -#: grub-core/commands/i386/cmostest.c:114 -msgid "BYTE:BIT" -msgstr "BYTE:BIT" - -#: grub-core/commands/i386/cmostest.c:109 -msgid "Test bit at BYTE:BIT in CMOS." -msgstr "Testar bit em BYTE:BIT em CMOS." - -#: grub-core/commands/i386/cmostest.c:112 -msgid "Clear bit at BYTE:BIT in CMOS." -msgstr "Limpar bit em BYTE:BIT em CMOS." - -#. TRANSLATORS: A bit may be either set (1) or clear (0). -#: grub-core/commands/i386/cmostest.c:116 -msgid "Set bit at BYTE:BIT in CMOS." -msgstr "Definir bit em BYTE:BIT em CMOS." - -#: grub-core/commands/i386/coreboot/cb_timestamps.c:120 -msgid "Show coreboot boot time statistics." -msgstr "Mostrar estatísticas de hora de início coreboot." - -#: grub-core/commands/i386/coreboot/cbls.c:137 -msgid "List coreboot tables." -msgstr "Listar tabelas coreboot." - -#. TRANSLATORS: "(default)" at the end means that this option is used if -#. no argument is specified. -#: grub-core/commands/i386/cpuid.c:36 -msgid "Check if CPU supports 64-bit (long) mode (default)." -msgstr "Verificar se a CPU suporta modo 64-bit (longo)(predefinição)." - -#: grub-core/commands/i386/cpuid.c:37 -msgid "Check if CPU supports Physical Address Extension." -msgstr "Verificar se a CPU suporta Physical Address Extension." - -#: grub-core/commands/i386/cpuid.c:119 -msgid "Check for CPU features." -msgstr "Verificar funcionalidades da CPU." - -#. TRANSLATORS: In this file "mapping" refers to a change GRUB makes so if -#. your language doesn't have an equivalent of "mapping" you can -#. use the word like "rerouting". -#. -#: grub-core/commands/i386/pc/drivemap.c:43 -msgid "Show the current mappings." -msgstr "Mostrar os mapeamentos actuais." - -#: grub-core/commands/i386/pc/drivemap.c:44 -msgid "Reset all mappings to the default values." -msgstr "Repor todos os mapeamentos nos valores predefinidos." - -#: grub-core/commands/i386/pc/drivemap.c:45 -msgid "Perform both direct and reverse mappings." -msgstr "Realizar mapeamentos directo e reverso." - -#: grub-core/commands/i386/pc/drivemap.c:184 -msgid "No drives have been remapped" -msgstr "Nenhuma unidade foi re-mapeada." - -#. TRANSLATORS: This is the header of mapping list. -#. On the left is how OS will see the disks and -#. on the right current GRUB vision. -#: grub-core/commands/i386/pc/drivemap.c:191 -msgid "OS disk #num ------> GRUB/BIOS device" -msgstr "Nº disco SO ------> Dispositivo GRUB/BIOS" - -#: grub-core/commands/i386/pc/drivemap.c:413 -msgid "-l | -r | [-s] grubdev osdisk." -msgstr "-l | -r | [-s] grubdev osdisk." - -#: grub-core/commands/i386/pc/drivemap.c:414 -msgid "Manage the BIOS drive mappings." -msgstr "Gerir os mapeamentos de unidades da BIOS." - -#: grub-core/commands/i386/pc/halt.c:31 -msgid "Do not use APM to halt the computer." -msgstr "Não usar APM para parar o computador." - -#: grub-core/commands/i386/pc/halt.c:119 -msgid "Halt the system, if possible using APM." -msgstr "Parar o sistema, se possível com APM." - -#: grub-core/commands/i386/pc/lsapm.c:75 -msgid "no APM found" -msgstr "Sem APM encontrada" - -#: grub-core/commands/i386/pc/lsapm.c:77 -#, c-format -msgid "" -"Version %u.%u\n" -"32-bit CS = 0x%x, len = 0x%x, offset = 0x%x\n" -"16-bit CS = 0x%x, len = 0x%x\n" -"DS = 0x%x, len = 0x%x\n" -msgstr "" -"Versão %u.%u\n" -"32-bit CS = 0x%x, tam = 0x%x, desvio = 0x%x\n" -"16-bit CS = 0x%x, tam = 0x%x\n" -"DS = 0x%x, tam = 0x%x\n" - -#: grub-core/commands/i386/pc/lsapm.c:86 -msgid "16-bit protected interface supported\n" -msgstr "interface protegida 16-bit suportada\n" - -#: grub-core/commands/i386/pc/lsapm.c:87 -msgid "16-bit protected interface unsupported\n" -msgstr "interface protegida 16-bit não suportada\n" - -#: grub-core/commands/i386/pc/lsapm.c:89 -msgid "32-bit protected interface supported\n" -msgstr "interface protegida 32-bit suportada\n" - -#: grub-core/commands/i386/pc/lsapm.c:90 -msgid "32-bit protected interface unsupported\n" -msgstr "interface protegida 32-bit não suportada\n" - -#: grub-core/commands/i386/pc/lsapm.c:92 -msgid "CPU Idle slows down processor\n" -msgstr "CPU Idle abranda o processador\n" - -#: grub-core/commands/i386/pc/lsapm.c:93 -msgid "CPU Idle doesn't slow down processor\n" -msgstr "CPU Idle não abranda o processador\n" - -#: grub-core/commands/i386/pc/lsapm.c:95 -msgid "APM disabled\n" -msgstr "APM desactivada\n" - -#: grub-core/commands/i386/pc/lsapm.c:95 -msgid "APM enabled\n" -msgstr "APM activada\n" - -#: grub-core/commands/i386/pc/lsapm.c:97 -msgid "APM disengaged\n" -msgstr "APM desengatada\n" - -#: grub-core/commands/i386/pc/lsapm.c:97 -msgid "APM engaged\n" -msgstr "APM engatada\n" - -#: grub-core/commands/i386/pc/lsapm.c:107 -msgid "Show APM information." -msgstr "Mostrar informação da APM" - -#. TRANSLATORS: It's musical notes, not the notes -#. you take. Play command expects arguments which can -#. be either a filename or tempo+notes. -#. This error happens if none is specified. -#: grub-core/commands/i386/pc/play.c:88 -msgid "filename or tempo and notes expected" -msgstr "esperado nome de ficheiro ou tempo e notas musicais" - -#: grub-core/commands/i386/pc/play.c:113 grub-core/commands/i386/pc/play.c:144 -#, c-format -msgid "Invalid tempo in %s" -msgstr "Tempo inválido em %s" - -#: grub-core/commands/i386/pc/play.c:151 grub-core/commands/macbless.c:172 -#: grub-core/fs/archelp.c:260 grub-core/fs/bfs.c:621 grub-core/fs/bfs.c:704 -#: grub-core/fs/btrfs.c:1726 grub-core/fs/btrfs.c:1755 -#: grub-core/fs/btrfs.c:1799 grub-core/fs/btrfs.c:1882 -#: grub-core/fs/btrfs.c:1906 grub-core/fs/fshelp.c:257 grub-core/fs/jfs.c:696 -#: grub-core/fs/minix.c:426 grub-core/fs/ufs.c:544 grub-core/fs/zfs/zfs.c:2083 -#: grub-core/fs/zfs/zfs.c:2095 grub-core/fs/zfs/zfs.c:2301 -#: grub-core/net/http.c:120 -#, c-format -msgid "file `%s' not found" -msgstr "ficheiro \"%s\" não encontrado" - -#: grub-core/commands/i386/pc/play.c:162 grub-core/commands/i386/pc/play.c:171 -#: grub-core/kern/misc.c:419 grub-core/script/execute.c:138 -#: grub-core/script/execute.c:244 -msgid "unrecognized number" -msgstr "número não reconhecido" - -#: grub-core/commands/i386/pc/play.c:190 -msgid "FILE | TEMPO [PITCH1 DURATION1] [PITCH2 DURATION2] ... " -msgstr "FICHEIRO | TEMPO [TOM1 DURAÇÃO1] [TOM2 DURAÇÃO2]... " - -#: grub-core/commands/i386/pc/play.c:191 -msgid "Play a tune." -msgstr "Tocar uma melodia." - -#: grub-core/commands/i386/pc/sendkey.c:39 -msgid "set numlock mode" -msgstr "definir modo NumLock" - -#: grub-core/commands/i386/pc/sendkey.c:40 -msgid "set capslock mode" -msgstr "Definir modo CapsLock" - -#: grub-core/commands/i386/pc/sendkey.c:41 -msgid "set scrolllock mode" -msgstr "Definir modo ScrollLock" - -#: grub-core/commands/i386/pc/sendkey.c:42 -msgid "set insert mode" -msgstr "Definir modo Insert" - -#: grub-core/commands/i386/pc/sendkey.c:43 -msgid "set pause mode" -msgstr "Definir modo Pause" - -#: grub-core/commands/i386/pc/sendkey.c:44 -msgid "press left shift" -msgstr "premir Shift esquerdo" - -#: grub-core/commands/i386/pc/sendkey.c:45 -msgid "press right shift" -msgstr "premir Shift direito" - -#: grub-core/commands/i386/pc/sendkey.c:46 -msgid "press SysRq" -msgstr "premir SysRq" - -#: grub-core/commands/i386/pc/sendkey.c:47 -msgid "press NumLock key" -msgstr "premir tecla NumLock" - -#: grub-core/commands/i386/pc/sendkey.c:48 -msgid "press CapsLock key" -msgstr "premir tecla CapsLock" - -#: grub-core/commands/i386/pc/sendkey.c:49 -msgid "press ScrollLock key" -msgstr "premir tecla ScrollLock" - -#: grub-core/commands/i386/pc/sendkey.c:50 -msgid "press Insert key" -msgstr "premir tecla Insert" - -#: grub-core/commands/i386/pc/sendkey.c:51 -msgid "press left alt" -msgstr "premir Alt esquerdo" - -#: grub-core/commands/i386/pc/sendkey.c:52 -msgid "press right alt" -msgstr "premir Alt direito" - -#: grub-core/commands/i386/pc/sendkey.c:53 -msgid "press left ctrl" -msgstr "premir Ctrl esquerdo" - -#: grub-core/commands/i386/pc/sendkey.c:54 -msgid "press right ctrl" -msgstr "premir Ctrl direito" - -#: grub-core/commands/i386/pc/sendkey.c:55 -msgid "don't update LED state" -msgstr "não actualizar estado do LED" - -#: grub-core/commands/i386/pc/sendkey.c:372 -msgid "[KEYSTROKE1] [KEYSTROKE2] ..." -msgstr "[TECLA1] [TECLA2] ..." - -#. TRANSLATORS: It can emulate multiple -#. keypresses. -#: grub-core/commands/i386/pc/sendkey.c:375 -msgid "Emulate a keystroke sequence" -msgstr "Emular uma sequência de teclas" - -#: grub-core/commands/i386/rdmsr.c:37 grub-core/commands/iorw.c:34 -#: grub-core/commands/memrw.c:33 grub-core/commands/setpci.c:73 -msgid "Save read value into variable VARNAME." -msgstr "Gravar valor lido na variável NOMEVAR." - -#: grub-core/commands/i386/rdmsr.c:38 grub-core/commands/iorw.c:35 -#: grub-core/commands/memrw.c:34 grub-core/commands/probe.c:40 -#: grub-core/commands/search_wrap.c:40 grub-core/commands/setpci.c:74 -#: grub-core/commands/tr.c:32 -msgid "VARNAME" -msgstr "NOMEVAR" - -#: grub-core/commands/i386/rdmsr.c:55 grub-core/commands/i386/rdmsr.c:60 -#: grub-core/commands/i386/rdmsr.c:65 grub-core/commands/i386/wrmsr.c:47 -#: grub-core/commands/i386/wrmsr.c:52 grub-core/commands/i386/wrmsr.c:57 -msgid "unsupported instruction" -msgstr "instrução não suportada" - -#: grub-core/commands/i386/rdmsr.c:77 grub-core/commands/i386/wrmsr.c:69 -#: grub-core/commands/i386/wrmsr.c:77 grub-core/net/dns.c:727 -msgid "invalid argument" -msgstr "argumento inválido" - -#: grub-core/commands/i386/rdmsr.c:94 grub-core/commands/memrw.c:125 -#: grub-core/commands/memrw.c:129 grub-core/commands/memrw.c:133 -msgid "ADDR" -msgstr "ENDEREÇO" - -#: grub-core/commands/i386/rdmsr.c:95 -msgid "Read a CPU model specific register." -msgstr "Ler um registo específico do modelo de CPU." - -#: grub-core/commands/i386/wrmsr.c:86 -msgid "ADDR VALUE" -msgstr "VALOR ENDEREÇO" - -#: grub-core/commands/i386/wrmsr.c:87 -msgid "Write a value to a CPU model specific register." -msgstr "Escrever uma valor num registo específico do modelo de CPU." - -#: grub-core/commands/ieee1275/suspend.c:34 -msgid "Run `go' to resume GRUB." -msgstr "Execute \"go\" para continuar o GRUB." - -#: grub-core/commands/ieee1275/suspend.c:45 -msgid "Return to IEEE1275 prompt." -msgstr "Voltar à linha do IEEE1275." - -#: grub-core/commands/iorw.c:123 grub-core/commands/iorw.c:127 -#: grub-core/commands/iorw.c:131 grub-core/gdb/gdb.c:79 -msgid "PORT" -msgstr "PORTA" - -#: grub-core/commands/iorw.c:123 -msgid "Read 8-bit value from PORT." -msgstr "Ler valor de 8-bit de PORTA." - -#: grub-core/commands/iorw.c:127 -msgid "Read 16-bit value from PORT." -msgstr "Ler valor de 16-bit de PORTA." - -#: grub-core/commands/iorw.c:131 -msgid "Read 32-bit value from PORT." -msgstr "Ler valor de 32-bit de PORTA." - -#: grub-core/commands/iorw.c:135 grub-core/commands/iorw.c:139 -msgid "PORT VALUE [MASK]" -msgstr "PORTA VALOR [MÃSCARA]" - -#: grub-core/commands/iorw.c:136 -msgid "Write 8-bit VALUE to PORT." -msgstr "Escrever VALOR de 8-bit em PORTA." - -#: grub-core/commands/iorw.c:140 -msgid "Write 16-bit VALUE to PORT." -msgstr "Escrever VALOR de 16-bit em PORTA." - -#: grub-core/commands/iorw.c:143 grub-core/commands/memrw.c:137 -#: grub-core/commands/memrw.c:141 grub-core/commands/memrw.c:145 -msgid "ADDR VALUE [MASK]" -msgstr "ENDEREÇO VALOR [MÃSCARA]" - -#: grub-core/commands/iorw.c:144 -msgid "Write 32-bit VALUE to PORT." -msgstr "Escrever VALOR de 32-bit em PORTA." - -#: grub-core/commands/keylayouts.c:215 grub-core/commands/loadenv.c:61 -#: grub-core/commands/nativedisk.c:189 grub-core/efiemu/main.c:235 -#: grub-core/font/font.c:428 grub-core/gfxmenu/gfxmenu.c:63 -#: grub-core/kern/device.c:42 grub-core/kern/dl.c:740 -#, c-format -msgid "variable `%s' isn't set" -msgstr "variável \"%s\" não definida" - -#: grub-core/commands/keylayouts.c:301 -msgid "Load a keyboard layout." -msgstr "Carregar uma disposição de teclado." - -#. TRANSLATORS: "Check" in a sense that if this key is pressed then -#. "true" is returned, otherwise "false". -#: grub-core/commands/keystatus.c:32 -msgid "Check Shift key." -msgstr "Verificar a tecla Shift." - -#: grub-core/commands/keystatus.c:33 -msgid "Check Control key." -msgstr "Verificar a tecla Control." - -#: grub-core/commands/keystatus.c:34 -msgid "Check Alt key." -msgstr "Verificar a tecla Alt." - -#. TRANSLATORS: there are 3 modifiers. -#: grub-core/commands/keystatus.c:106 -msgid "Check key modifier status." -msgstr "Verificar o estado dos modificadores." - -#: grub-core/commands/legacycfg.c:512 grub-core/commands/legacycfg.c:526 -#: grub-core/commands/legacycfg.c:546 grub-core/commands/legacycfg.c:559 -#: grub-core/commands/time.c:43 grub-core/script/function.c:109 -#: util/grub-file.c:100 util/grub-fstest.c:57 util/grub-mount.c:69 -#, c-format -msgid "can't find command `%s'" -msgstr "impossível encontrar o comando \"%s\"" - -#: grub-core/commands/legacycfg.c:813 grub-core/normal/auth.c:225 -#: util/grub-mkpasswd-pbkdf2.c:139 -msgid "Enter password: " -msgstr "Insira a senha: " - -#. TRANSLATORS: "legacy config" means -#. "config as used by grub-legacy". -#: grub-core/commands/legacycfg.c:837 -msgid "Parse legacy config in same context" -msgstr "Processar configuração antiga no mesmo contexto" - -#: grub-core/commands/legacycfg.c:842 -msgid "Parse legacy config in new context" -msgstr "Processar configuração antiga em novo contexto" - -#: grub-core/commands/legacycfg.c:847 -msgid "Parse legacy config in same context taking only menu entries" -msgstr "" -"Processar configuração antiga no mesmo contexto só com entradas de menu" - -#: grub-core/commands/legacycfg.c:852 -msgid "Parse legacy config in new context taking only menu entries" -msgstr "Processar configuração antiga em novo contexto só com entradas de menu" - -#: grub-core/commands/legacycfg.c:856 -msgid "[--no-mem-option] [--type=TYPE] FILE [ARG ...]" -msgstr "[--no-mem-option] [--type=TIPO] FICHEIRO [ARG ...]" - -#: grub-core/commands/legacycfg.c:857 -msgid "Simulate grub-legacy `kernel' command" -msgstr "Simular o comando \"kernel\" do grub-legacy" - -#: grub-core/commands/legacycfg.c:861 grub-core/commands/legacycfg.c:865 -msgid "FILE [ARG ...]" -msgstr "FICHEIRO [ARG ...]" - -#: grub-core/commands/legacycfg.c:862 -msgid "Simulate grub-legacy `initrd' command" -msgstr "Simular o comando \"inird\" do grub-legacy" - -#: grub-core/commands/legacycfg.c:866 -msgid "Simulate grub-legacy `modulenounzip' command" -msgstr "Simular o comando \"modulenounzip\" do grub-legacy" - -#: grub-core/commands/legacycfg.c:870 grub-core/commands/legacycfg.c:875 -msgid "[--md5] PASSWD [FILE]" -msgstr "[--md5] SENHA [FICHEIRO]" - -#: grub-core/commands/legacycfg.c:871 -msgid "Simulate grub-legacy `password' command" -msgstr "Simular o comando \"password\" do grub-legacy" - -#: grub-core/commands/legacycfg.c:876 -msgid "Simulate grub-legacy `password' command in menu entry mode" -msgstr "" -"Simular o comando \"password\" do grub-legacy em modo de entrada de menu" - -#. TRANSLATORS: This option is used to override default filename -#. for loading and storing environment. -#: grub-core/commands/loadenv.c:37 -msgid "Specify filename." -msgstr "Especificar nome de ficheiro." - -#: grub-core/commands/loadenv.c:39 -msgid "Skip signature-checking of the environment file." -msgstr "Saltar verificação de assinatura do ficheiro de ambiente." - -#: grub-core/commands/loadenv.c:451 -msgid "[-f FILE] [-s|--skip-sig] [variable_name_to_whitelist] [...]" -msgstr "[-f FICHEIRO] [-s|--skip-sig] [nome_variável_para_lista_branca] [...]" - -#: grub-core/commands/loadenv.c:452 -msgid "Load variables from environment block file." -msgstr "Carregar variáveis de ficheiro de bloco de ambiente." - -#: grub-core/commands/loadenv.c:455 -msgid "[-f FILE]" -msgstr "[-f FICHEIRO]" - -#: grub-core/commands/loadenv.c:456 -msgid "List variables from environment block file." -msgstr "Listar variáveis de ficheiro de bloco de ambiente." - -#: grub-core/commands/loadenv.c:460 -msgid "[-f FILE] variable_name [...]" -msgstr "[-f FICHEIRO] nome_variável [...]" - -#: grub-core/commands/loadenv.c:461 -msgid "Save variables to environment block file." -msgstr "Gravar variáveis em ficheiro de bloco de ambiente." - -#: grub-core/commands/ls.c:40 -msgid "Show a long list with more detailed information." -msgstr "Mostrar uma longa lista com informação mais detalhada." - -#: grub-core/commands/ls.c:41 -msgid "Print sizes in a human readable format." -msgstr "Imprimir tamanhos num formato legível." - -#: grub-core/commands/ls.c:42 -msgid "List all files." -msgstr "Listar todos os ficheiros." - -#: grub-core/commands/ls.c:73 -msgid "Network protocols:" -msgstr "Protocolos de rede:" - -#: grub-core/commands/ls.c:295 -msgid "[-l|-h|-a] [FILE ...]" -msgstr "[-l|-h|-a] [FICHEIRO ...]" - -#: grub-core/commands/ls.c:296 -msgid "List devices and files." -msgstr "Listar dispositivos e ficheiros." - -#: grub-core/commands/lsacpi.c:255 -msgid "Show version 1 tables only." -msgstr "Mostrar só tabelas versão 1." - -#: grub-core/commands/lsacpi.c:256 -msgid "Show version 2 and version 3 tables only." -msgstr "Mostrar só tabelas versão 2 e versão 3." - -#: grub-core/commands/lsacpi.c:306 -msgid "Show ACPI information." -msgstr "Mostrar informação ACPI." - -#: grub-core/commands/lsmmap.c:31 -msgid "available RAM" -msgstr "RAM disponível" - -#: grub-core/commands/lsmmap.c:32 -msgid "reserved RAM" -msgstr "RAM reservada" - -#. TRANSLATORS: this refers to memory where ACPI tables are stored -#. and which can be used by OS once it loads ACPI tables. -#: grub-core/commands/lsmmap.c:35 -msgid "ACPI reclaimable RAM" -msgstr "RAM ACPI reclamável" - -#. TRANSLATORS: this refers to memory which ACPI-compliant OS -#. is required to save accross hibernations. -#: grub-core/commands/lsmmap.c:38 -msgid "ACPI non-volatile storage RAM" -msgstr "RAM ACPI não-volátil" - -#: grub-core/commands/lsmmap.c:39 -msgid "faulty RAM (BadRAM)" -msgstr "RAM deficiente (BadRAM)" - -#: grub-core/commands/lsmmap.c:40 -msgid "persistent RAM" -msgstr "RAM persistente" - -#: grub-core/commands/lsmmap.c:41 -msgid "persistent RAM (legacy)" -msgstr "RAM persistente (antiga)" - -#: grub-core/commands/lsmmap.c:42 -msgid "RAM holding coreboot tables" -msgstr "RAM com tabelas coreboot" - -#: grub-core/commands/lsmmap.c:43 -msgid "RAM holding firmware code" -msgstr "RAM com código de firmware" - -#: grub-core/commands/lsmmap.c:52 -#, c-format -msgid "base_addr = 0x%llx, length = 0x%llx, %s\n" -msgstr "base_addr = 0x%llx, tamanho = 0x%llx, %s\n" - -#: grub-core/commands/lsmmap.c:55 -#, c-format -msgid "base_addr = 0x%llx, length = 0x%llx, type = 0x%x\n" -msgstr "base_addr = 0x%llx, tamanho = 0x%llx, tipo = 0x%x\n" - -#: grub-core/commands/lsmmap.c:79 -msgid "List memory map provided by firmware." -msgstr "Listar mapa de memória fornecido pelo firmware." - -#: grub-core/commands/lspci.c:232 -msgid "List PCI devices." -msgstr "Listar dispositivos PCI." - -#: grub-core/commands/macbless.c:224 -msgid "Bless FILE of HFS or HFS+ partition for intel macs." -msgstr "Benzer FICHEIRO de partição HFS ou HFS+ para intel macs." - -#: grub-core/commands/macbless.c:228 -msgid "Bless DIR of HFS or HFS+ partition for PPC macs." -msgstr "Benzer PASTA de partição HFS ou HFS+ para PPC macs." - -#: grub-core/commands/memrw.c:125 -msgid "Read 8-bit value from ADDR." -msgstr "Ler valor de 8-bit de ENDEREÇO." - -#: grub-core/commands/memrw.c:129 -msgid "Read 16-bit value from ADDR." -msgstr "Ler valor de 16-bit de ENDEREÇO." - -#: grub-core/commands/memrw.c:133 -msgid "Read 32-bit value from ADDR." -msgstr "Ler valor de 32-bit de ENDEREÇO." - -#: grub-core/commands/memrw.c:138 -msgid "Write 8-bit VALUE to ADDR." -msgstr "Escrever VALOR de 8-bit em ENDEREÇO." - -#: grub-core/commands/memrw.c:142 -msgid "Write 16-bit VALUE to ADDR." -msgstr "Escrever VALOR de 16-bit em ENDEREÇO." - -#: grub-core/commands/memrw.c:146 -msgid "Write 32-bit VALUE to ADDR." -msgstr "Escrever VALOR de 32-bit em ENDEREÇO." - -#: grub-core/commands/menuentry.c:31 -msgid "Menu entry type." -msgstr "Tipo de entrada de menu." - -#: grub-core/commands/menuentry.c:31 grub-core/commands/menuentry.c:38 -#: grub-core/commands/menuentry.c:39 grub-core/gettext/gettext.c:520 -#: util/grub-fstest.c:520 util/grub-install.c:291 util/grub-install.c:304 -#: util/grub-mknetdir.c:51 util/grub-mkrescue.c:109 util/grub-mkrescue.c:110 -#: util/grub-mount.c:453 util/grub-render-label.c:65 -msgid "STRING" -msgstr "CADEIA" - -#: grub-core/commands/menuentry.c:33 -msgid "List of users allowed to boot this entry." -msgstr "Lista de utilizadores autorizados a iniciar esta entrada." - -#: grub-core/commands/menuentry.c:33 -msgid "USERNAME[,USERNAME]" -msgstr "UTILIZADOR[,UTILIZADOR]" - -#: grub-core/commands/menuentry.c:36 -msgid "Keyboard key to quickly boot this entry." -msgstr "Tecla para iniciar rapidamente esta entrada." - -#: grub-core/commands/menuentry.c:36 -msgid "KEYBOARD_KEY" -msgstr "TECLA" - -#: grub-core/commands/menuentry.c:38 -msgid "Use STRING as menu entry body." -msgstr "Usar CADEIA como corpo da entrada de menu." - -#: grub-core/commands/menuentry.c:39 -msgid "Menu entry identifier." -msgstr "Identificador da entrada de menu." - -#. TRANSLATORS: menu entry can either be bootable by anyone or only by -#. handful of users. By default when security is active only superusers can -#. boot a given menu entry. With --unrestricted (this option) -#. anyone can boot it. -#: grub-core/commands/menuentry.c:44 -msgid "This entry can be booted by any user." -msgstr "Esta entrada pode ser iniciada por qualquer utilizador." - -#: grub-core/commands/menuentry.c:323 grub-core/commands/menuentry.c:328 -#: grub-core/tests/test_blockarg.c:46 -msgid "BLOCK" -msgstr "BLOQUEIO" - -#: grub-core/commands/menuentry.c:323 -msgid "Define a menu entry." -msgstr "Definir uma entrada de menu." - -#: grub-core/commands/menuentry.c:328 -msgid "Define a submenu." -msgstr "Definir um sub-menu." - -#. TRANSLATORS: this is module list header. Name -#. is module name, Ref Count is a reference counter -#. (how many modules or open descriptors use it). -#. Dependencies are the other modules it uses. -#. -#: grub-core/commands/minicmd.c:162 -msgid "Name\tRef Count\tDependencies\n" -msgstr "Nome\tTotal ref\tDependências\n" - -#: grub-core/commands/minicmd.c:201 -msgid "Show this message." -msgstr "Mostrar esta mensagem." - -#: grub-core/commands/minicmd.c:204 -msgid "ADDR [SIZE]" -msgstr "ENDEREÇO [TAMANHO]" - -#: grub-core/commands/minicmd.c:204 -msgid "Show memory contents." -msgstr "Mostrar conteúdo da memória." - -#: grub-core/commands/minicmd.c:207 grub-core/kern/corecmd.c:188 -#: util/grub-install.c:275 -msgid "MODULE" -msgstr "MÓDULO" - -#: grub-core/commands/minicmd.c:207 -msgid "Remove a module." -msgstr "Remover um módulo." - -#: grub-core/commands/minicmd.c:210 -msgid "Show loaded modules." -msgstr "Mostrar módulos carregados." - -#: grub-core/commands/minicmd.c:213 -msgid "Exit from GRUB." -msgstr "Sair do GRUB." - -#: grub-core/commands/mips/loongson/lsspd.c:42 -msgid "No CS5536 found" -msgstr "Sem CS5536 encontrado" - -#: grub-core/commands/mips/loongson/lsspd.c:45 -#, c-format -msgid "CS5536 at %d:%d.%d\n" -msgstr "CS5536 em %d:%d.%d\n" - -#. TRANSLATORS: System management bus is often used to access components like -#. RAM (info only, not data) or batteries. I/O space is where in memory -#. its ports are. -#: grub-core/commands/mips/loongson/lsspd.c:55 -#, c-format -msgid "System management bus controller I/O space is at 0x%x\n" -msgstr "" -"O espaço de E/S do controlador do bus de gestão do sistema está em 0x%x\n" - -#. TRANSLATORS: it's shown in a report in a way -#. like number 1: ... number 2: ... -#. -#: grub-core/commands/mips/loongson/lsspd.c:66 -#, c-format -msgid "RAM slot number %d\n" -msgstr "Ranhura RAM número %d\n" - -#: grub-core/commands/mips/loongson/lsspd.c:73 -#, c-format -msgid "Written SPD bytes: %d B.\n" -msgstr "Bytes SPD escritos: %d B.\n" - -#: grub-core/commands/mips/loongson/lsspd.c:74 -#, c-format -msgid "Total flash size: %d B.\n" -msgstr "Tamanho flash total: %d B.\n" - -#: grub-core/commands/mips/loongson/lsspd.c:79 -msgid "Memory type: DDR2." -msgstr "Tipo de memória: DDR2." - -#: grub-core/commands/mips/loongson/lsspd.c:83 -#, c-format -msgid "Part no: %s.\n" -msgstr "Parte nº: %s.\n" - -#: grub-core/commands/mips/loongson/lsspd.c:86 -msgid "Memory type: Unknown." -msgstr "Tipo de memória: desconhecido." - -#: grub-core/commands/mips/loongson/lsspd.c:97 -msgid "Print Memory information." -msgstr "Imprimir informação da memória." - -#: grub-core/commands/nativedisk.c:118 grub-core/commands/probe.c:118 -#: grub-core/commands/probe.c:124 util/grub-probe.c:450 -#, c-format -msgid "%s does not support UUIDs" -msgstr "%s não suporta UUIDs" - -#: grub-core/commands/nativedisk.c:325 -msgid "[MODULE1 MODULE2 ...]" -msgstr "[MÓDULO1 MÓDULO2 ...]" - -#: grub-core/commands/nativedisk.c:326 -msgid "" -"Switch to native disk drivers. If no modules are specified default set (pata," -"ahci,usbms,ohci,uhci,ehci) is used" -msgstr "" -"Mudar para controladores de disco nativos. Se não especificar módulos, é " -"usado o conjunto predefinido (pata,ahci,usbms,ohci,uhci,ehci)" - -#: grub-core/commands/parttool.c:40 -msgid "" -"Perform COMMANDS on partition.\n" -"Use `parttool PARTITION help' for the list of available commands." -msgstr "" -"Realizar COMANDOS na partição.\n" -"Use \"parttool PARTIÇÃO help\" para uma lista de comandos disponíveis." - -#: grub-core/commands/parttool.c:123 -msgid "=VAL" -msgstr "=VAL" - -#: grub-core/commands/parttool.c:136 -#, c-format -msgid "Sorry, no parttool is available for %s\n" -msgstr "Desculpe, não há parttool disponível para %s\n" - -#: grub-core/commands/parttool.c:288 grub-core/lib/arg.c:285 -#: grub-core/lib/arg.c:351 -#, c-format -msgid "unknown argument `%s'" -msgstr "argumento \"%s\" desconhecido" - -#: grub-core/commands/parttool.c:344 -msgid "PARTITION COMMANDS" -msgstr "PARTIÇÃO COMANDOS" - -#: grub-core/commands/password.c:85 -msgid "USER PASSWORD" -msgstr "UTILIZADOR SENHA" - -#: grub-core/commands/password.c:86 -msgid "Set user password (plaintext). Unrecommended and insecure." -msgstr "" -"Definir senha do utilizador (texto simples). Inseguro e não recomendado." - -#. TRANSLATORS: it means that the string which -#. was supposed to be a password hash doesn't -#. have a correct format, not to password -#. mismatch. -#: grub-core/commands/password_pbkdf2.c:98 -#: grub-core/commands/password_pbkdf2.c:115 -#: grub-core/commands/password_pbkdf2.c:123 -#: grub-core/commands/password_pbkdf2.c:150 -#: grub-core/commands/password_pbkdf2.c:179 -msgid "invalid PBKDF2 password" -msgstr "senha PBKDF2 inválida" - -#: grub-core/commands/password_pbkdf2.c:202 -msgid "USER PBKDF2_PASSWORD" -msgstr "UTILIZADOR SENHA_PBKDF2" - -#: grub-core/commands/password_pbkdf2.c:203 -msgid "Set user password (PBKDF2). " -msgstr "Definir senha do utilizador (PBKDF2). " - -#: grub-core/commands/pcidump.c:39 grub-core/commands/setpci.c:69 -msgid "Select device by vendor and device IDs." -msgstr "Seleccionar dispositivo por fabricante e IDs de dispositivo." - -#: grub-core/commands/pcidump.c:40 grub-core/commands/setpci.c:70 -msgid "[vendor]:[device]" -msgstr "[fabricante]:[dispositivo]" - -#: grub-core/commands/pcidump.c:41 grub-core/commands/setpci.c:71 -msgid "Select device by its position on the bus." -msgstr "Seleccionar dispositivo pela sua posição no bus." - -#: grub-core/commands/pcidump.c:42 grub-core/commands/setpci.c:72 -msgid "[bus]:[slot][.func]" -msgstr "[bus]:[ranhura][.funç]" - -#: grub-core/commands/pcidump.c:109 grub-core/commands/pcidump.c:138 -#: grub-core/commands/setpci.c:183 grub-core/commands/setpci.c:214 -#: grub-core/fs/zfs/zfs.c:3794 grub-core/kern/emu/hostdisk.c:458 -#: grub-core/kern/emu/hostdisk.c:473 grub-core/kern/file.c:44 -#, c-format -msgid "missing `%c' symbol" -msgstr "símbolo \"%c\" em falta" - -#: grub-core/commands/pcidump.c:168 -msgid "[-s POSITION] [-d DEVICE]" -msgstr "[-s POSIÇÃO] [-d DISPOSITIVO]" - -#: grub-core/commands/pcidump.c:169 -msgid "Show raw dump of the PCI configuration space." -msgstr "Mostrar despejo bruto do espaço de configuração PCI." - -#: grub-core/commands/pgp.c:45 -msgid "Skip signature-checking of the public key file." -msgstr "Saltar verificação de assinatura do ficheiro de chave pública." - -#. TRANSLATORS: it's about GNUPG signatures. -#: grub-core/commands/pgp.c:71 grub-core/commands/pgp.c:81 -#: grub-core/commands/pgp.c:86 grub-core/commands/pgp.c:96 -#: grub-core/commands/pgp.c:103 grub-core/commands/pgp.c:107 -#: grub-core/commands/pgp.c:114 grub-core/commands/pgp.c:119 -#: grub-core/commands/pgp.c:124 grub-core/commands/pgp.c:128 -#: grub-core/commands/pgp.c:268 grub-core/commands/pgp.c:276 -#: grub-core/commands/pgp.c:281 grub-core/commands/pgp.c:289 -#: grub-core/commands/pgp.c:320 grub-core/commands/pgp.c:327 -#: grub-core/commands/pgp.c:332 grub-core/commands/pgp.c:342 -#: grub-core/commands/pgp.c:468 grub-core/commands/pgp.c:471 -#: grub-core/commands/pgp.c:474 grub-core/commands/pgp.c:477 -#: grub-core/commands/pgp.c:484 grub-core/commands/pgp.c:490 -#: grub-core/commands/pgp.c:665 -msgid "bad signature" -msgstr "má assinatura" - -#. TRANSLATORS: %08x is 32-bit key id. -#: grub-core/commands/pgp.c:636 grub-core/commands/pgp.c:812 -#, c-format -msgid "public key %08x not found" -msgstr "chave pública %08x não encontrada" - -#: grub-core/commands/pgp.c:651 grub-core/disk/diskfilter.c:772 -#: grub-core/disk/diskfilter.c:782 grub-core/fs/ntfs.c:404 -#: grub-core/fs/zfs/zfs.c:1933 grub-core/normal/menu.c:428 -#, c-format -msgid "module `%s' isn't loaded" -msgstr "o módulo \"%s\" não está carregado" - -#: grub-core/commands/pgp.c:994 -msgid "[-s|--skip-sig] FILE SIGNATURE_FILE [PUBKEY_FILE]" -msgstr "[-s|--skip-sig] FICHEIRO FICHEIRO_ASSINATURA [FICHEIRO_CHAVE_PÚBLICA]" - -#: grub-core/commands/pgp.c:995 -msgid "Verify detached signature." -msgstr "Verificar assinatura destacada." - -#: grub-core/commands/pgp.c:998 -msgid "[-s|--skip-sig] PUBKEY_FILE" -msgstr "[-s|--skip-sig] FICHEIRO_CHAVEPÚBLICA" - -#: grub-core/commands/pgp.c:999 -msgid "Add PUBKEY_FILE to trusted keys." -msgstr "Adicionar FICHEIRO_CHAVEPÚBLICA às chaves de confiança." - -#: grub-core/commands/pgp.c:1003 -msgid "Show the list of trusted keys." -msgstr "Mostrar a lista de chaves de confiança." - -#: grub-core/commands/pgp.c:1005 -msgid "PUBKEY_ID" -msgstr "ID_CHAVEPÚBLICA" - -#: grub-core/commands/pgp.c:1006 -msgid "Remove PUBKEY_ID from trusted keys." -msgstr "Remover ID_CHAVEPÚBLICA das chaves de confiança." - -#: grub-core/commands/probe.c:40 grub-core/commands/tr.c:32 -msgid "Set a variable to return value." -msgstr "Definir uma variável para devolver o valor." - -#. TRANSLATORS: It's a driver that is currently in use to access -#. the diven disk. -#: grub-core/commands/probe.c:43 -msgid "Determine driver." -msgstr "Determinar o controlador." - -#: grub-core/commands/probe.c:44 -msgid "Determine partition map type." -msgstr "Determinar o tipo de mapa de partição." - -#: grub-core/commands/probe.c:45 -msgid "Determine filesystem type." -msgstr "Determinar o tipo de sistema de ficheiros." - -#: grub-core/commands/probe.c:46 -msgid "Determine filesystem UUID." -msgstr "Determinar UUID do sistema de ficheiros." - -#: grub-core/commands/probe.c:47 -msgid "Determine filesystem label." -msgstr "Determinar o rótulo do sistema de ficheiros." - -#: grub-core/commands/probe.c:139 grub-core/commands/probe.c:146 -#: util/grub-probe.c:462 -#, c-format -msgid "filesystem `%s' does not support labels" -msgstr "o sistema de ficheiros \"%s\" não suporta rótulos" - -#: grub-core/commands/probe.c:165 grub-core/fs/zfs/zfsinfo.c:430 -#: grub-core/loader/i386/bsd.c:169 util/grub-setup.c:223 -msgid "DEVICE" -msgstr "DISPSITIVO" - -#: grub-core/commands/probe.c:166 -msgid "Retrieve device info." -msgstr "Obter informação do dispositivo." - -#: grub-core/commands/read.c:85 -msgid "[ENVVAR]" -msgstr "[VARAMB]" - -#: grub-core/commands/read.c:86 -msgid "Set variable with user input." -msgstr "Definir variável com entrada do utilizador." - -#: grub-core/commands/reboot.c:40 -msgid "Reboot the computer." -msgstr "Reiniciar o computador." - -#. TRANSLATORS: in regexp you can mark some -#. groups with parentheses. These groups are -#. then numbered and you can save some of -#. them in variables. In other programs -#. those components aree often referenced with -#. back slash, e.g. \1. Compare -#. sed -e 's,\([a-z][a-z]*\),lowercase=\1,g' -#. The whole matching component is saved in VARNAME, not its number. -#. -#: grub-core/commands/regexp.c:44 -msgid "Store matched component NUMBER in VARNAME." -msgstr "Armazenar NÚMERO do componente comparado em NOMEVAR." - -#: grub-core/commands/regexp.c:45 -msgid "[NUMBER:]VARNAME" -msgstr "[NÚMERO:]NOMEVAR" - -#. TRANSLATORS: This are two arguments. So it's -#. two separate units to translate and pay -#. attention not to reverse them. -#: grub-core/commands/regexp.c:157 -msgid "REGEXP STRING" -msgstr "REGEXP CADEIA" - -#: grub-core/commands/regexp.c:158 -msgid "Test if REGEXP matches STRING." -msgstr "Testar se REGEXP corresponde a CADEIA." - -#: grub-core/commands/search.c:324 -msgid "NAME [VARIABLE] [HINTS]" -msgstr "NOME [VARIÃVEL] [DICAS]" - -#: grub-core/commands/search_file.c:4 -msgid "" -"Search devices by file. If VARIABLE is specified, the first device found is " -"set to a variable." -msgstr "" -"Procurar dispositivos por ficheiro. Se VARIÃVEL for especificada, o primeiro " -"dispositivo encontrado é definido para uma variável." - -#: grub-core/commands/search_label.c:4 -msgid "" -"Search devices by label. If VARIABLE is specified, the first device found is " -"set to a variable." -msgstr "" -"Procurar dispositivos por rótulo. Se VARIÃVEL for especificada, o primeiro " -"dispositivo encontrado é definido para uma variável." - -#: grub-core/commands/search_uuid.c:4 -msgid "" -"Search devices by UUID. If VARIABLE is specified, the first device found is " -"set to a variable." -msgstr "" -"Procurar dispositivos por UUID. Se VARIÃVEL for especificada, o primeiro " -"dispositivo encontrado é definido para uma variável." - -#: grub-core/commands/search_wrap.c:34 -msgid "Search devices by a file." -msgstr "Procurar dispositivos por um ficheiro." - -#: grub-core/commands/search_wrap.c:35 -msgid "Search devices by a filesystem label." -msgstr "Procurar dispositivos por um rótulo de sistema de ficheiros." - -#: grub-core/commands/search_wrap.c:37 -msgid "Search devices by a filesystem UUID." -msgstr "Procurar dispositivos por uma UUID de sistema de ficheiros." - -#: grub-core/commands/search_wrap.c:40 -msgid "Set a variable to the first device found." -msgstr "Definir uma variável para o primeiro dispositivo encontrado." - -#: grub-core/commands/search_wrap.c:42 -msgid "Do not probe any floppy drive." -msgstr "Não testar nenhuma unidade floppy." - -#: grub-core/commands/search_wrap.c:44 -msgid "" -"First try the device HINT. If HINT ends in comma, also try subpartitions" -msgstr "" -"Primeiro tente a DICA do dispositivo. Se DICA termina em vírgula, tente " -"também sub-partições" - -#: grub-core/commands/search_wrap.c:45 grub-core/commands/search_wrap.c:49 -#: grub-core/commands/search_wrap.c:53 grub-core/commands/search_wrap.c:57 -#: grub-core/commands/search_wrap.c:61 grub-core/commands/search_wrap.c:65 -msgid "HINT" -msgstr "DICA" - -#: grub-core/commands/search_wrap.c:47 -msgid "" -"First try the device HINT if currently running on IEEE1275. If HINT ends in " -"comma, also try subpartitions" -msgstr "" -"Primeiro tente a DICA do dispositivo se actualmente em execução em IEEE1275. " -"Se DICA termina em vírgula, tente também sub-partições" - -#: grub-core/commands/search_wrap.c:51 -msgid "" -"First try the device HINT if currently running on BIOS. If HINT ends in " -"comma, also try subpartitions" -msgstr "" -"Primeiro tente a DICA do dispositivo se actualmente em execução na BIOS. Se " -"DICA termina em vírgula, tente também sub-partições" - -#: grub-core/commands/search_wrap.c:55 -msgid "" -"First try the device HINT if direct hardware access is supported. If HINT " -"ends in comma, also try subpartitions" -msgstr "" -"Primeiro tente a DICA do dispositivo se o acesso directo ao equipamento for " -"suportado. Se DICA termina em vírgula, tente também sub-partições" - -#: grub-core/commands/search_wrap.c:59 -msgid "" -"First try the device HINT if currently running on EFI. If HINT ends in " -"comma, also try subpartitions" -msgstr "" -"Primeiro tente a DICA do dispositivo se actualmente em execução em EFI. Se " -"DICA termina em vírgula, tente também sub-partições" - -#: grub-core/commands/search_wrap.c:63 -msgid "" -"First try the device HINT if currently running on ARC. If HINT ends in " -"comma, also try subpartitions" -msgstr "" -"Primeiro tente a DICA do dispositivo se actualmente em execução em ARC. Se " -"DICA termina em vírgula, tente também sub-partições" - -#: grub-core/commands/search_wrap.c:207 -msgid "[-f|-l|-u|-s|-n] [--hint HINT [--hint HINT] ...] NAME" -msgstr "[-f|-l|-u|-s|-n] [--hint DICA [--hint DICA] ...] NOME" - -#: grub-core/commands/search_wrap.c:209 -msgid "" -"Search devices by file, filesystem label or filesystem UUID. If --set is " -"specified, the first device found is set to a variable. If no variable name " -"is specified, `root' is used." -msgstr "" -"Procurar dispositivos por ficheiro, rótulo ou UUID de sistema de ficheiros. " -"Se --set for especificada, o 1º dispositivo encontrado é definido para uma " -"variável. Se não especificar um nome de variável, é usado \"root\"" - -#: grub-core/commands/setpci.c:132 -#, c-format -msgid "Register %x of %x:%02x.%x is %x\n" -msgstr "Registo %x de %x:%02x.%x é %x\n" - -#: grub-core/commands/setpci.c:333 -msgid "[-s POSITION] [-d DEVICE] [-v VAR] REGISTER[=VALUE[:MASK]]" -msgstr "[-s POSIÇÃO] [-d DISPOSITIVO] [-v VAR] REGISTO[=VALOR[:MÃSCARA]]" - -#: grub-core/commands/setpci.c:335 -msgid "Manipulate PCI devices." -msgstr "Manipular dispositivos PCI." - -#: grub-core/commands/sleep.c:32 -msgid "Verbose countdown." -msgstr "Contagem decrescente verbosa." - -#: grub-core/commands/sleep.c:33 -msgid "Allow to interrupt with ESC." -msgstr "Permitir interrupção com ESC." - -#: grub-core/commands/sleep.c:109 -msgid "NUMBER_OF_SECONDS" -msgstr "NÚMERO_DE_SEGUNDOS" - -#: grub-core/commands/sleep.c:110 -msgid "Wait for a specified number of seconds." -msgstr "Esperar um determinado nº de segundos." - -#: grub-core/commands/syslinuxcfg.c:50 util/grub-syslinux2cfg.c:66 -msgid "root directory of the syslinux disk [default=/]." -msgstr "pasta raiz de um disco syslinux [predefinição=/]." - -#: grub-core/commands/syslinuxcfg.c:53 util/grub-syslinux2cfg.c:72 -msgid "" -"current directory of syslinux [default is parent directory of input file]." -msgstr "" -"pasta actual de syslinux [predefindo como a pasta-mãe do ficheiro de " -"entrada]." - -#: grub-core/commands/syslinuxcfg.c:55 util/grub-syslinux2cfg.c:75 -msgid "assume input is an isolinux configuration file." -msgstr "assumir entrada como ficheiro de configuração isolinux." - -#: grub-core/commands/syslinuxcfg.c:56 util/grub-syslinux2cfg.c:76 -msgid "assume input is a pxelinux configuration file." -msgstr "assumir entrada como ficheiro de configuração pxelinux." - -#: grub-core/commands/syslinuxcfg.c:57 util/grub-syslinux2cfg.c:77 -msgid "assume input is a syslinux configuration file." -msgstr "assumir entrada como ficheiro de configuração syslinux." - -#. TRANSLATORS: "syslinux config" means -#. "config as used by syslinux". -#: grub-core/commands/syslinuxcfg.c:189 -msgid "Execute syslinux config in same context" -msgstr "Executar configuração syslinux no mesmo contexto" - -#: grub-core/commands/syslinuxcfg.c:195 -msgid "Execute syslinux config in new context" -msgstr "Executar configuração syslinux em novo contexto" - -#: grub-core/commands/syslinuxcfg.c:201 -msgid "Execute syslinux config in same context taking only menu entries" -msgstr "" -"Executar configuração syslinux no mesmo contexto só com entradas de menu" - -#: grub-core/commands/syslinuxcfg.c:207 -msgid "Execute syslinux config in new context taking only menu entries" -msgstr "" -"Executar configuração syslinux em novo contexto só com entradas de menu" - -#: grub-core/commands/terminal.c:90 -msgid "no terminal specified" -msgstr "sem terminal especificado" - -#: grub-core/commands/terminal.c:112 grub-core/commands/terminal.c:139 -#, c-format -msgid "terminal `%s' isn't found" -msgstr "terminal \"%s\" não encontrado" - -#: grub-core/commands/terminal.c:244 -msgid "Active input terminals:" -msgstr "Terminais de entrada activos:" - -#: grub-core/commands/terminal.c:245 -msgid "Available input terminals:" -msgstr "Terminais de entrada disponíveis:" - -#: grub-core/commands/terminal.c:261 -msgid "Active output terminals:" -msgstr "Terminais de saída activos:" - -#: grub-core/commands/terminal.c:262 -msgid "Available output terminals:" -msgstr "Terminais de saída disponíveis:" - -#: grub-core/commands/terminal.c:271 grub-core/commands/terminal.c:276 -msgid "[--append|--remove] [TERMINAL1] [TERMINAL2] ..." -msgstr "[--append|--remove] [TERMINAL1] [TERMINAL2] ..." - -#: grub-core/commands/terminal.c:273 -msgid "List or select an input terminal." -msgstr "Listar ou seleccionar um terminal de entrada." - -#: grub-core/commands/terminal.c:278 -msgid "List or select an output terminal." -msgstr "Listar ou seleccionar um terminal de saída." - -#: grub-core/commands/test.c:444 -msgid "EXPRESSION ]" -msgstr "EXPRESSÃO ]" - -#: grub-core/commands/test.c:444 grub-core/commands/test.c:447 -msgid "Evaluate an expression." -msgstr "Avaliar uma expressão." - -#: grub-core/commands/test.c:447 -msgid "EXPRESSION" -msgstr "EXPRESSÃO" - -#: grub-core/commands/testload.c:164 -msgid "Load the same file in multiple ways." -msgstr "Carregar o mesmo ficheiro de múltiplas formas." - -#: grub-core/commands/testspeed.c:35 -msgid "Specify size for each read operation" -msgstr "Especificar tamanho para cada operação de leitura" - -#: grub-core/commands/testspeed.c:58 -msgid "invalid block size" -msgstr "tamanho de bloco inválido" - -#: grub-core/commands/testspeed.c:80 -#, c-format -msgid "File size: %s\n" -msgstr "Tamanho de ficheiro: %s\n" - -#: grub-core/commands/testspeed.c:83 -#, c-format -msgid "Elapsed time: %d.%03d s \n" -msgstr "Tempo decorrido: %d.%03d s \n" - -#: grub-core/commands/testspeed.c:92 -#, c-format -msgid "Speed: %s \n" -msgstr "Velocidade: %s \n" - -#: grub-core/commands/testspeed.c:107 -msgid "[-s SIZE] FILENAME" -msgstr "[-s TAMANHO] NOMEFICHEIRO" - -#: grub-core/commands/testspeed.c:108 -msgid "Test file read speed." -msgstr "Testar velocidade de leitura do ficheiro." - -#: grub-core/commands/time.c:38 grub-core/script/execute.c:974 -msgid "no command is specified" -msgstr "sem comando especificado" - -#: grub-core/commands/time.c:50 -#, c-format -msgid "Elapsed time: %d.%03d seconds \n" -msgstr "Tempo decorrido: %d.%03d segundos \n" - -#: grub-core/commands/time.c:61 -msgid "COMMAND [ARGS]" -msgstr "COMANDO [ARGS]" - -#: grub-core/commands/time.c:62 -msgid "Measure time used by COMMAND" -msgstr "Unidade de tempo usada por COMANDO" - -#: grub-core/commands/tr.c:33 -msgid "Translate to upper case." -msgstr "Traduzir para maiúsculas." - -#: grub-core/commands/tr.c:34 -msgid "Translate to lower case." -msgstr "Traduzir para minúsculas." - -#: grub-core/commands/tr.c:119 -msgid "[OPTIONS] [SET1] [SET2] [STRING]" -msgstr "[OPÇÕES] [CONJUNTO1] [CONJUNTO2] [CADEIA]" - -#: grub-core/commands/tr.c:120 -msgid "Translate SET1 characters to SET2 in STRING." -msgstr "Traduzir caracteres CONJUNTO1 para CONJUNTO2 em CADEIA." - -#. TRANSLATORS: it's a command description. -#: grub-core/commands/true.c:50 -msgid "Do nothing, successfully." -msgstr "Não fazer nada, com sucesso." - -#. TRANSLATORS: it's a command description. -#: grub-core/commands/true.c:54 -msgid "Do nothing, unsuccessfully." -msgstr "Não fazer nada, sem sucesso." - -#: grub-core/commands/usbtest.c:221 -msgid "Test USB support." -msgstr "Testar suporte USB." - -#: grub-core/commands/verifiers.c:120 -#, c-format -msgid "verification requested but nobody cares: %s" -msgstr "verificação pedida, mas ninguém se preocupa: %s" - -#: grub-core/commands/verifiers.c:140 -msgid "big file signature isn't implemented yet" -msgstr "assinatura de ficheiro grande ainda não está implementado" - -#: grub-core/commands/videoinfo.c:61 -msgid "Text-only " -msgstr "Só texto" - -#. TRANSLATORS: "Direct color" is a mode when the color components -#. are written dirrectly into memory. -#: grub-core/commands/videoinfo.c:66 -#, c-format -msgid "Direct color, mask: %d/%d/%d/%d pos: %d/%d/%d/%d" -msgstr "Cor directa, máscara: %d/%d/%d/%d pos: %d/%d/%d/%d" - -#. TRANSLATORS: In "paletted color" mode you write the index of the color -#. in the palette. Synonyms include "packed pixel". -#: grub-core/commands/videoinfo.c:78 -msgid "Paletted " -msgstr "Em paleta " - -#: grub-core/commands/videoinfo.c:80 -msgid "YUV " -msgstr "YUV " - -#. TRANSLATORS: "Planar" is the video memory where you have to write -#. in several different banks "plans" to control the different color -#. components of the same pixel. -#: grub-core/commands/videoinfo.c:85 -msgid "Planar " -msgstr "Planar " - -#: grub-core/commands/videoinfo.c:87 -msgid "Hercules " -msgstr "Hércules " - -#: grub-core/commands/videoinfo.c:89 -msgid "CGA " -msgstr "CGA " - -#. TRANSLATORS: Non-chain 4 is a 256-color planar -#. (unchained) video memory mode. -#: grub-core/commands/videoinfo.c:93 -msgid "Non-chain 4 " -msgstr "Non-chain 4 " - -#: grub-core/commands/videoinfo.c:95 -msgid "Monochrome " -msgstr "Monocromático " - -#: grub-core/commands/videoinfo.c:97 -msgid "Unknown video mode " -msgstr "Modo de vídeo desconhecido " - -#: grub-core/commands/videoinfo.c:111 -msgid " EDID checksum invalid" -msgstr " checksum EDID inválida" - -#: grub-core/commands/videoinfo.c:116 -#, c-format -msgid " EDID version: %u.%u\n" -msgstr " Versão EDID: %u.%u\n" - -#: grub-core/commands/videoinfo.c:120 -#, c-format -msgid " Preferred mode: %ux%u\n" -msgstr " Modo preferido: %ux%u\n" - -#: grub-core/commands/videoinfo.c:123 -msgid " No preferred mode available\n" -msgstr " Sem modo preferido disponivel\n" - -#: grub-core/commands/videoinfo.c:146 grub-core/video/video.c:490 -#: grub-core/video/video.c:498 grub-core/video/video.c:509 -#: grub-core/video/video.c:520 grub-core/video/video.c:528 -#, c-format -msgid "invalid video mode specification `%s'" -msgstr "Especificação \"%s\" de modo de vídeo inválida" - -#: grub-core/commands/videoinfo.c:168 -msgid "List of supported video modes:" -msgstr "Lista de modos de vídeo suportados:" - -#: grub-core/commands/videoinfo.c:169 -msgid "Legend: mask/position=red/green/blue/reserved" -msgstr "Legenda: máscara/posição=vermelho/verde/azul/reservado" - -#: grub-core/commands/videoinfo.c:176 -#, c-format -msgid "Adapter `%s':\n" -msgstr "Adaptador \"%s\":\n" - -#: grub-core/commands/videoinfo.c:180 -msgid " No info available" -msgstr " Sem informação disponível" - -#: grub-core/commands/videoinfo.c:198 -msgid " Failed to initialize video adapter" -msgstr " Falha ao inicializar o adaptador de vídeo" - -#. TRANSLATORS: "x" has to be entered in, -#. like an identifier, so please don't -#. use better Unicode codepoints. -#: grub-core/commands/videoinfo.c:239 grub-core/commands/videoinfo.c:248 -msgid "[WxH[xD]]" -msgstr "[WxH[xD]]" - -#: grub-core/commands/videoinfo.c:240 grub-core/commands/videoinfo.c:249 -msgid "" -"List available video modes. If resolution is given show only modes matching " -"it." -msgstr "" -"Listar modos de vídeo disponíveis. Se for dada a resolução, mostrar só modos " -"que lhe correspondam." - -#. TRANSLATORS: "x" has to be entered in, -#. like an identifier, so please don't -#. use better Unicode codepoints. -#: grub-core/commands/videotest.c:225 -msgid "[WxH]" -msgstr "[WxH]" - -#. TRANSLATORS: Here, on the other hand, it's -#. nicer to use unicode cross instead of x. -#: grub-core/commands/videotest.c:228 -msgid "Test video subsystem in mode WxH." -msgstr "Testar sub-sistema de vídeo em modo WxH." - -#: grub-core/commands/videotest.c:231 -msgid "Test video subsystem." -msgstr "Testar sub-sistema de vídeo." - -#: grub-core/commands/xen/lsxen.c:80 grub-core/commands/xen/lsxen.c:82 -msgid "[DIR]" -msgstr "[PASTA]" - -#: grub-core/commands/xen/lsxen.c:81 grub-core/commands/xen/lsxen.c:83 -msgid "List Xen storage." -msgstr "Listar armazenagem Xen." - -#. TRANSLATORS: GRUBUUID stands for "filesystem -#. UUID as used in GRUB". -#: grub-core/commands/xnu_uuid.c:110 -msgid "[-l] GRUBUUID [VARNAME]" -msgstr "[-l] UUIDGRUB [NOMEVAR]" - -#: grub-core/commands/xnu_uuid.c:111 -msgid "" -"Transform 64-bit UUID to format suitable for XNU. If -l is given keep it " -"lowercase as done by blkid." -msgstr "" -"Transformar UUID 64-bit em formato adequado para XNU. Se -l for dada, manter " -"em minúsculas tal como feito por blkid." - -#: grub-core/disk/arc/arcdisk.c:248 grub-core/disk/efi/efidisk.c:603 -#: grub-core/disk/i386/pc/biosdisk.c:498 grub-core/disk/i386/pc/biosdisk.c:543 -#: grub-core/disk/ieee1275/nand.c:198 grub-core/disk/ieee1275/obdisk.c:527 -#: grub-core/disk/ieee1275/ofdisk.c:586 -#, c-format -msgid "failure reading sector 0x%llx from `%s'" -msgstr "falha ao ler o sector 0x%llx de \"%s\"" - -#: grub-core/disk/arc/arcdisk.c:284 grub-core/disk/efi/efidisk.c:626 -#: grub-core/disk/i386/pc/biosdisk.c:548 grub-core/disk/ieee1275/ofdisk.c:606 -#, c-format -msgid "failure writing sector 0x%llx to `%s'" -msgstr "falha ao excrever osector 0x%llx em \"%s\"" - -#: grub-core/disk/cryptodisk.c:40 -msgid "Mount by UUID." -msgstr "Montar por UUID." - -#. TRANSLATORS: It's still restricted to cryptodisks only. -#: grub-core/disk/cryptodisk.c:42 -msgid "Mount all." -msgstr "Montar todos." - -#: grub-core/disk/cryptodisk.c:43 -msgid "Mount all volumes with `boot' flag set." -msgstr "Montar todos os volumes com a bandeira \"boot\" definida." - -#. TRANSLATORS: The first %s is the file being looked at, the second %s is -#. the error message. -#: grub-core/disk/cryptodisk.c:526 grub-core/kern/emu/hostdisk.c:152 -#: grub-core/kern/emu/hostdisk.c:262 grub-core/kern/emu/hostdisk.c:434 -#: grub-core/kern/emu/misc.c:168 grub-core/kern/emu/misc.c:174 -#: grub-core/kern/emu/misc.c:196 grub-core/osdep/bsd/getroot.c:92 -#: grub-core/osdep/bsd/getroot.c:168 grub-core/osdep/hurd/getroot.c:68 -#: grub-core/osdep/linux/blocklist.c:65 grub-core/osdep/linux/getroot.c:150 -#: grub-core/osdep/linux/hostdisk.c:194 grub-core/osdep/linux/hostdisk.c:421 -#: grub-core/osdep/linux/ofpath.c:417 grub-core/osdep/linux/ofpath.c:422 -#: grub-core/osdep/linux/ofpath.c:517 grub-core/osdep/linux/ofpath.c:530 -#: grub-core/osdep/sun/getroot.c:110 grub-core/osdep/windows/blocklist.c:98 -#: grub-core/tests/video_checksum.c:279 util/editenv.c:46 util/glue-efi.c:115 -#: util/glue-efi.c:120 util/glue-efi.c:130 util/grub-editenv.c:138 -#: util/grub-editenv.c:192 util/grub-file.c:83 util/grub-fstest.c:128 -#: util/grub-fstest.c:568 util/grub-install-common.c:92 -#: util/grub-install-common.c:94 util/grub-install-common.c:101 -#: util/grub-install-common.c:529 util/grub-menulst2cfg.c:53 -#: util/grub-menulst2cfg.c:68 util/grub-mkimage.c:292 util/grub-mklayout.c:504 -#: util/grub-mklayout.c:516 util/grub-mknetdir.c:133 util/grub-mknetdir.c:151 -#: util/grub-mkrescue.c:627 util/grub-mkrescue.c:631 util/grub-mkrescue.c:879 -#: util/grub-mkrescue.c:883 util/grub-mkstandalone.c:253 util/grub-mount.c:498 -#: util/grub-render-label.c:169 util/grub-script-check.c:175 -#: util/grub-syslinux2cfg.c:181 util/grub-syslinux2cfg.c:191 -#: util/grub-syslinux2cfg.c:212 util/grub-syslinux2cfg.c:228 util/misc.c:91 -#: util/render-label.c:76 util/render-label.c:163 util/render-label.c:174 -#: util/resolve.c:246 util/setup.c:783 -#, c-format -msgid "cannot open `%s': %s" -msgstr "impossível abrir \"%s\": %s" - -#: grub-core/disk/cryptodisk.c:583 grub-core/disk/cryptodisk.c:628 -#: grub-core/kern/emu/hostdisk.c:270 grub-core/kern/emu/hostfs.c:142 -#: grub-core/osdep/linux/hostdisk.c:456 util/grub-editenv.c:143 -#: util/grub-editenv.c:149 util/grub-fstest.c:320 util/misc.c:111 -#, c-format -msgid "cannot seek `%s': %s" -msgstr "impossível procurar \"%s\": %s" - -#: grub-core/disk/cryptodisk.c:1144 -msgid "SOURCE|-u UUID|-a|-b" -msgstr "FONTE|-u UUID|-a|-b" - -#: grub-core/disk/cryptodisk.c:1145 -msgid "Mount a crypto device." -msgstr "Montar um dispositivo crypto." - -#. TRANSLATORS: This message kicks in during the detection of -#. which modules needs to be included in core image. This happens -#. in the case of degraded RAID and means that autodetection may -#. fail to include some of modules. It's an installation time -#. message, not runtime message. -#: grub-core/disk/diskfilter.c:343 grub-core/disk/diskfilter.c:376 -#, c-format -msgid "" -"Couldn't find physical volume `%s'. Some modules may be missing from core " -"image." -msgstr "" -"Impossível encontrar o volume físico \"%s\". Podem faltar alguns módulos da " -"imagem de núcleo." - -#: grub-core/disk/diskfilter.c:480 -#, c-format -msgid "physical volume %s not found" -msgstr "volume físico %s não encontrado" - -#: grub-core/disk/efi/efidisk.c:600 grub-core/disk/efi/efidisk.c:623 -#, c-format -msgid "no media in `%s'" -msgstr "sem suporte em \"%s\"" - -#: grub-core/disk/geli.c:75 -msgid "Couldn't load sha256" -msgstr "Impossível carregar sha256" - -#: grub-core/disk/geli.c:85 -msgid "Couldn't load sha512" -msgstr "Impossível carregar sha512" - -#: grub-core/disk/geli.c:216 grub-core/disk/geli.c:220 -msgid "couldn't read ELI metadata" -msgstr "Impossível ler meta-dados ELI" - -#: grub-core/disk/geli.c:231 -msgid "wrong ELI magic or version" -msgstr "versão ou magia ELI erradas" - -#: grub-core/disk/geli.c:435 grub-core/disk/luks.c:329 -msgid "Attempting to decrypt master key..." -msgstr "A tentar desencriptar a chave mestra..." - -#: grub-core/disk/geli.c:441 grub-core/disk/luks.c:347 -#, c-format -msgid "Enter passphrase for %s%s%s (%s): " -msgstr "Insira a frase-passe para %s%s%s (%s): " - -#. TRANSLATORS: It's a cryptographic key slot: one element of an array -#. where each element is either empty or holds a key. -#: grub-core/disk/geli.c:530 grub-core/disk/luks.c:451 -#, c-format -msgid "Slot %d opened\n" -msgstr "Ranhura %d aberta\n" - -#: grub-core/disk/i386/pc/biosdisk.c:470 grub-core/disk/i386/pc/biosdisk.c:524 -#: grub-core/disk/i386/pc/biosdisk.c:534 grub-core/kern/disk_common.c:47 -#, c-format -msgid "attempt to read or write outside of disk `%s'" -msgstr "tentativa de ler ou escrever fora do disco \"%s\"" - -#: grub-core/disk/i386/pc/biosdisk.c:491 grub-core/disk/i386/pc/biosdisk.c:611 -#: grub-core/disk/scsi.c:726 -msgid "cannot write to CD-ROM" -msgstr "impossível escrever no CD-ROM" - -#: grub-core/disk/i386/pc/biosdisk.c:662 -msgid "" -"Native disk drivers are in use. Refusing to use firmware disk interface." -msgstr "" -"Os controladores de disco nativos estão em uso. A recusar uso da interface " -"de firmware do disco." - -#. TRANSLATORS: it's a partition for embedding, -#. not a partition embed into something. GRUB -#. install tools put core.img into a place -#. usable for bootloaders (called generically -#. "embedding zone") and this operation is -#. called "embedding". -#: grub-core/disk/ldm.c:1015 -msgid "your LDM Embedding Partition is too small; embedding won't be possible" -msgstr "" -"a sua LDM Embedding Partition é muito pequena; a integração não será possível" - -#. TRANSLATORS: it's a partition for embedding, -#. not a partition embed into something. -#: grub-core/disk/ldm.c:1033 -msgid "this LDM has no Embedding Partition; embedding won't be possible" -msgstr "Este LDM não tem Embedding Partition; a integração não será possível" - -#. TRANSLATORS: The disk is simply removed from the list of available ones, -#. not wiped, avoid to scare user. -#: grub-core/disk/loopback.c:45 -msgid "Delete the specified loopback drive." -msgstr "Remover a unidade loopback especificada da lista." - -#: grub-core/disk/loopback.c:237 -msgid "[-d] DEVICENAME FILE." -msgstr "[-d] NOMEDISPOSITIVO FICHEIRO." - -#. TRANSLATORS: The file itself is not destroyed -#. or transformed into drive. -#: grub-core/disk/loopback.c:240 -msgid "Make a virtual drive from a file." -msgstr "Fazer uma unidade virtual de um ficheiro." - -#: grub-core/efiemu/i386/loadcore32.c:111 -#: grub-core/efiemu/i386/loadcore64.c:125 grub-core/kern/arm/dl.c:256 -#: grub-core/kern/arm64/dl.c:187 grub-core/kern/i386/dl.c:75 -#: grub-core/kern/ia64/dl.c:140 grub-core/kern/mips/dl.c:258 -#: grub-core/kern/powerpc/dl.c:163 grub-core/kern/riscv/dl.c:334 -#: grub-core/kern/sparc64/dl.c:180 grub-core/kern/x86_64/dl.c:110 -#: util/grub-mkimagexx.c:756 util/grub-mkimagexx.c:881 -#: util/grub-mkimagexx.c:945 util/grub-mkimagexx.c:1026 -#: util/grub-mkimagexx.c:1120 util/grub-mkimagexx.c:1222 -#: util/grub-mkimagexx.c:1413 util/grub-mkimagexx.c:1628 -#: util/grub-mkimagexx.c:1665 util/grub-mkimagexx.c:1697 -#: util/grub-mkimagexx.c:1767 util/grub-mkimagexx.c:1797 -#, c-format -msgid "relocation 0x%x is not implemented yet" -msgstr "relocalização 0x%x ainda não está implementada" - -#: grub-core/efiemu/loadcore.c:200 grub-core/efiemu/loadcore.c:237 -#: grub-core/loader/i386/bsdXX.c:317 util/grub-mkimagexx.c:2360 -msgid "no symbol table" -msgstr "sem tabela de símbolos" - -#: grub-core/efiemu/loadcore.c:346 grub-core/kern/dl.c:609 -#: grub-core/loader/ia64/efi/linux.c:345 grub-core/loader/mips/linux.c:248 -#: grub-core/loader/multiboot_elfxx.c:76 -#: grub-core/loader/powerpc/ieee1275/linux.c:280 -#: grub-core/loader/sparc64/ieee1275/linux.c:320 -msgid "this ELF file is not of the right type" -msgstr "este ficheiro ELF não é do tipo correcto" - -#: grub-core/efiemu/main.c:313 -msgid "Load and initialize EFI emulator." -msgstr "Carregar e inicializar emulador EFI." - -#: grub-core/efiemu/main.c:317 -msgid "Finalize loading of EFI emulator." -msgstr "Finalizar a carga do emulador EFI." - -#: grub-core/efiemu/main.c:320 -msgid "Unload EFI emulator." -msgstr "Descarregar emulador EFI." - -#: grub-core/efiemu/symbols.c:92 grub-core/kern/dl.c:376 -#, c-format -msgid "symbol `%s' not found" -msgstr "símbolo \"%s\" não encontrado" - -#: grub-core/font/font_cmd.c:52 -msgid "Loaded fonts:" -msgstr "Letras carregadas:" - -#: grub-core/font/font_cmd.c:74 -msgid "FILE..." -msgstr "FICHEIRO..." - -#: grub-core/font/font_cmd.c:75 -msgid "Specify one or more font files to load." -msgstr "Especificar uma ou mais letras a carregar." - -#: grub-core/font/font_cmd.c:78 -msgid "List the loaded fonts." -msgstr "Lista de letras carregadas." - -#: grub-core/fs/archelp.c:216 grub-core/fs/archelp.c:278 -#: grub-core/fs/btrfs.c:1815 grub-core/fs/fshelp.c:227 grub-core/fs/jfs.c:736 -#: grub-core/fs/minix.c:369 grub-core/fs/ufs.c:454 -msgid "too deep nesting of symlinks" -msgstr "aninhamento de ligações simbólicas muito profundo" - -#: grub-core/fs/bfs.c:228 grub-core/fs/fshelp.c:368 grub-core/fs/minix.c:270 -#: grub-core/kern/file.c:156 -msgid "attempt to read past the end of file" -msgstr "tentativa de ler para lá do fim do ficheiro" - -#: grub-core/fs/btrfs.c:1698 grub-core/fs/btrfs.c:1957 -#: grub-core/fs/fshelp.c:189 grub-core/fs/fshelp.c:309 grub-core/fs/jfs.c:431 -#: grub-core/fs/minix.c:414 grub-core/fs/minix.c:562 -#: grub-core/fs/reiserfs.c:732 grub-core/fs/ufs.c:531 grub-core/fs/ufs.c:671 -#: grub-core/fs/zfs/zfs.c:2831 grub-core/fs/zfs/zfs.c:4247 -msgid "not a directory" -msgstr "não é uma pasta" - -#: grub-core/fs/btrfs.c:2063 grub-core/fs/fshelp.c:307 grub-core/fs/jfs.c:835 -#: grub-core/fs/zfs/zfs.c:3801 -msgid "not a regular file" -msgstr "não é um ficheiro normal" - -#: grub-core/fs/btrfs.c:2157 grub-core/fs/zfs/zfs.c:4333 -#: grub-core/partmap/msdos.c:400 -msgid "your core.img is unusually large. It won't fit in the embedding area" -msgstr "" -"a sua imagem de núcleo é invulgarmente grando. Não vai caber na área de " -"integração" - -#: grub-core/fs/fshelp.c:281 grub-core/fs/minix.c:630 grub-core/fs/ufs.c:661 -#: grub-core/fs/ufs.c:757 grub-core/kern/fs.c:168 grub-core/kern/fs.c:180 -#, c-format -msgid "invalid file name `%s'" -msgstr "nome de ficheiro \"%s\" inválido" - -#: grub-core/fs/zfs/zfs.c:453 -msgid "checksum verification failed" -msgstr "falha ao verificar a checksum" - -#: grub-core/fs/zfs/zfs.c:1465 -msgid "couldn't find a necessary member device of multi-device filesystem" -msgstr "" -"impossível encontrar um dispositivo-membro de um sistema de ficheiros multi-" -"dispositivo" - -#: grub-core/fs/zfs/zfscrypt.c:292 -msgid "no decryption key available" -msgstr "sem chave de desencriptação disponível" - -#: grub-core/fs/zfs/zfscrypt.c:304 -msgid "MAC verification failed" -msgstr "falha ao verificar MAC" - -#: grub-core/fs/zfs/zfscrypt.c:413 -msgid "Assume input is raw." -msgstr "Assumir que a entrada está em bruto." - -#: grub-core/fs/zfs/zfscrypt.c:414 -msgid "Assume input is hex." -msgstr "Assumir que a entrada está em hexadecimal." - -#: grub-core/fs/zfs/zfscrypt.c:415 -msgid "Assume input is passphrase." -msgstr "Assumir que a entrada é uma frase-passe." - -#: grub-core/fs/zfs/zfscrypt.c:437 util/grub-fstest.c:553 util/grub-mount.c:483 -msgid "Enter ZFS password: " -msgstr "Insira a senha ZFS: " - -#: grub-core/fs/zfs/zfscrypt.c:476 -msgid "[-h|-p|-r] [FILE]" -msgstr "[-h|-p|-r] [FICHEIRO]" - -#: grub-core/fs/zfs/zfscrypt.c:477 -msgid "Import ZFS wrapping key stored in FILE." -msgstr "Importar chave de ajuste ZFS armazenada em FICHEIRO." - -#: grub-core/fs/zfs/zfsinfo.c:51 -msgid "Virtual device is removed" -msgstr "Dispositivo virtual removido" - -#: grub-core/fs/zfs/zfsinfo.c:57 -msgid "Virtual device is faulted" -msgstr "Dispositivo virtual com defeito" - -#: grub-core/fs/zfs/zfsinfo.c:63 -msgid "Virtual device is offline" -msgstr "Dispositivo virtual offline" - -#. TRANSLATORS: degraded doesn't mean broken but that some of -#. component are missing but virtual device as whole is still usable. -#: grub-core/fs/zfs/zfsinfo.c:70 -msgid "Virtual device is degraded" -msgstr "Dispositivo virtual degradado" - -#: grub-core/fs/zfs/zfsinfo.c:73 -msgid "Virtual device is online" -msgstr "Dispositivo virtual online" - -#: grub-core/fs/zfs/zfsinfo.c:89 -msgid "Incorrect virtual device: no type available" -msgstr "Dispositivo virtual incorrecto: sem tipo disponível" - -#. TRANSLATORS: The virtual devices form a tree (in graph-theoretical -#. sense). The nodes like mirror or raidz have children: member devices. -#. The "real" devices which actually store data are called "leafs" -#. (again borrowed from graph theory) and can be either disks -#. (or partitions) or files. -#: grub-core/fs/zfs/zfsinfo.c:105 -msgid "Leaf virtual device (file or disk)" -msgstr "Dispositivo virtual \"folha\" (ficheiro ou disco)" - -#: grub-core/fs/zfs/zfsinfo.c:113 -msgid "Bootpath: unavailable\n" -msgstr "Caminho de início: indisponível\n" - -#: grub-core/fs/zfs/zfsinfo.c:115 -#, c-format -msgid "Bootpath: %s\n" -msgstr "Caminho de início: %s\n" - -#: grub-core/fs/zfs/zfsinfo.c:120 -msgid "Path: unavailable" -msgstr "Caminho: indisponível" - -#: grub-core/fs/zfs/zfsinfo.c:122 -#, c-format -msgid "Path: %s\n" -msgstr "Caminho: %s\n" - -#: grub-core/fs/zfs/zfsinfo.c:127 -msgid "Devid: unavailable" -msgstr "Devid: indisponível" - -#: grub-core/fs/zfs/zfsinfo.c:129 -#, c-format -msgid "Devid: %s\n" -msgstr "Devid: %s\n" - -#: grub-core/fs/zfs/zfsinfo.c:148 -msgid "This VDEV is a mirror" -msgstr "Este DISPV é um espelho" - -#: grub-core/fs/zfs/zfsinfo.c:153 -#, c-format -msgid "This VDEV is a RAIDZ%llu\n" -msgstr "Este DISPV é um RAIDZ%llu\n" - -#: grub-core/fs/zfs/zfsinfo.c:158 -msgid "Incorrect VDEV" -msgstr "DISPV incorrecto" - -#: grub-core/fs/zfs/zfsinfo.c:161 -#, c-format -msgid "VDEV with %d children\n" -msgstr "DISPV com %d filhos\n" - -#. TRANSLATORS: it's the element carying the number %d, not -#. total element number. And the number itself is fine, -#. only the element isn't. -#. -#: grub-core/fs/zfs/zfsinfo.c:177 -#, c-format -msgid "VDEV element number %d isn't correct\n" -msgstr "O elemento com o nº %d de DISPV não está correcto\n" - -#. TRANSLATORS: it's the element carying the number %d, not -#. total element number. This is used in enumeration -#. "Element number 1", "Element number 2", ... -#: grub-core/fs/zfs/zfsinfo.c:184 -#, c-format -msgid "VDEV element number %d:\n" -msgstr "Elemento nº %d de DISPV:\n" - -#: grub-core/fs/zfs/zfsinfo.c:193 -#, c-format -msgid "Unknown virtual device type: %s\n" -msgstr "Tipo de dispositivo virtual desconhecido: %s\n" - -#. TRANSLATORS: Here we speak about ZFS pools it's semi-marketing, -#. semi-technical term by Sun/Oracle and should be translated in sync with -#. other ZFS-related software and documentation. -#: grub-core/fs/zfs/zfsinfo.c:254 -msgid "Pool state: active" -msgstr "Estado do espaço: activo" - -#: grub-core/fs/zfs/zfsinfo.c:255 -msgid "Pool state: exported" -msgstr "Estado do espaço: exportado" - -#: grub-core/fs/zfs/zfsinfo.c:256 -msgid "Pool state: destroyed" -msgstr "Estado do espaço: destruído" - -#: grub-core/fs/zfs/zfsinfo.c:257 -msgid "Pool state: reserved for hot spare" -msgstr "Estado do espaço: reservado para suplente de socorro" - -#: grub-core/fs/zfs/zfsinfo.c:258 -msgid "Pool state: level 2 ARC device" -msgstr "Estado do espaço: dispositivo ARC nível 2" - -#: grub-core/fs/zfs/zfsinfo.c:259 -msgid "Pool state: uninitialized" -msgstr "Estado do espaço: não inicializado" - -#: grub-core/fs/zfs/zfsinfo.c:260 -msgid "Pool state: unavailable" -msgstr "Estado do espaço: indisponível" - -#: grub-core/fs/zfs/zfsinfo.c:261 -msgid "Pool state: potentially active" -msgstr "Estado do espaço: potencialmente activo" - -#: grub-core/fs/zfs/zfsinfo.c:306 -msgid "Pool name: unavailable" -msgstr "Nome do espaço: indisponível" - -#: grub-core/fs/zfs/zfsinfo.c:308 -#, c-format -msgid "Pool name: %s\n" -msgstr "Nome do espaço: %s\n" - -#: grub-core/fs/zfs/zfsinfo.c:313 -msgid "Pool GUID: unavailable" -msgstr "UUID do espaço: indisponível" - -#: grub-core/fs/zfs/zfsinfo.c:315 -#, c-format -msgid "Pool GUID: %016llx\n" -msgstr "UUID do espaço: %016llx\n" - -#: grub-core/fs/zfs/zfsinfo.c:320 -msgid "Unable to retrieve pool state" -msgstr "Impossível obter o estado do espaço" - -#: grub-core/fs/zfs/zfsinfo.c:322 -msgid "Unrecognized pool state" -msgstr "Estado do espaço não reconhecido" - -#. TRANSLATORS: There are undetermined number of virtual devices -#. in a device tree, not just one. -#. -#: grub-core/fs/zfs/zfsinfo.c:332 -msgid "No virtual device tree available" -msgstr "Ãrvore de dispositivos virtuais indisponível" - -#: grub-core/fs/zfs/zfsinfo.c:431 -msgid "Print ZFS info about DEVICE." -msgstr "Imprimir informação ZFS sobre DISPOSITIVO." - -#: grub-core/fs/zfs/zfsinfo.c:433 -msgid "FILESYSTEM [VARIABLE]" -msgstr "SISTFICHEIROS [VARIÃVEL]" - -#: grub-core/fs/zfs/zfsinfo.c:434 -msgid "Print ZFS-BOOTFSOBJ or store it into VARIABLE" -msgstr "Imprimir ZFS-BOOTFSOBJ ou armazená-lo em VARIÃVEL" - -#. TRANSLATORS: at this position GRUB waits for the user to do an action -#. in remote debugger, namely to tell it to establish connection. -#: grub-core/gdb/gdb.c:48 -msgid "Now connect the remote debugger, please." -msgstr "Agora ligue o depurador remoto, por favor." - -#. TRANSLATORS: GDB stub is a small part of -#. GDB functionality running on local host -#. which allows remote debugger to -#. connect to it. -#: grub-core/gdb/gdb.c:84 -msgid "Start GDB stub on given port" -msgstr "Inicie a parte GDB na porta indicada" - -#. TRANSLATORS: this refers to triggering -#. a breakpoint so that the user will land -#. into GDB. -#: grub-core/gdb/gdb.c:89 -msgid "Break into GDB" -msgstr "Entrar no GDB" - -#: grub-core/gdb/gdb.c:91 -msgid "Stop GDB stub" -msgstr "Parar a parte GDB" - -#: grub-core/gettext/gettext.c:85 -msgid "premature end of file" -msgstr "fim de ficheiro prematuro" - -#. TRANSLATORS: It refers to passing the string through gettext. -#. So it's "translate" in the same meaning as in what you're -#. doing now. -#. -#: grub-core/gettext/gettext.c:525 -msgid "Translates the string with the current settings." -msgstr "Traduz a cadeia com as definições actuais." - -#: grub-core/gfxmenu/gui_label.c:186 grub-core/normal/menu_text.c:184 -msgid "" -"Press enter to boot the selected OS, `e' to edit the commands before booting " -"or `c' for a command-line. ESC to return previous menu." -msgstr "" -"Prima Enter para iniciar o SO seleccionado, \"e\" para editar os comandos " -"antes de iniciar ou \"c\" para uma linha de comando. ESC para voltar ao menu " -"anterior." - -#: grub-core/gfxmenu/gui_label.c:190 grub-core/normal/menu_text.c:192 -msgid "" -"Press enter to boot the selected OS, `e' to edit the commands before booting " -"or `c' for a command-line." -msgstr "" -"Prima Enter para iniciar o SO seleccionado, \"e\" para editar os comandos " -"antes de iniciar ou \"c\" para uma linha de comando." - -#: grub-core/gfxmenu/gui_label.c:194 -msgid "enter: boot, `e': options, `c': cmd-line" -msgstr "Enter: iniciar, \"e\": opções, \"c\": lin.-com." - -#: grub-core/gfxmenu/gui_progress_bar.c:339 grub-core/normal/menu_text.c:446 -#, c-format -msgid "The highlighted entry will be executed automatically in %ds." -msgstr "A entrada realçada será executada automaticamente em %ds." - -#. TRANSLATORS: 's' stands for seconds. -#. It's a standalone timeout notification. -#. Please use the short form in your language. -#: grub-core/gfxmenu/gui_progress_bar.c:344 -#, c-format -msgid "%ds remaining." -msgstr "%ds restante." - -#. TRANSLATORS: 's' stands for seconds. -#. It's a standalone timeout notification. -#. Please use the shortest form available in you language. -#: grub-core/gfxmenu/gui_progress_bar.c:349 grub-core/normal/menu_text.c:444 -#: grub-core/normal/menu_text.c:462 -#, c-format -msgid "%ds" -msgstr "%ds" - -#: grub-core/gfxmenu/view.c:103 -msgid "GRUB Boot Menu" -msgstr "Menu de arranque GRUB" - -#: grub-core/hello/hello.c:36 -msgid "Hello World" -msgstr "Olá Mundo" - -#: grub-core/hello/hello.c:45 -msgid "Say `Hello World'." -msgstr "Diga \"Olá Mundo\"." - -#: grub-core/io/gzio.c:409 grub-core/kern/file.c:210 -msgid "attempt to seek outside of the file" -msgstr "tentativa de procurar fora do ficheiro" - -#. TRANSLATORS: It's about given file having some strange format, not -#. complete lack of gzip support. -#: grub-core/io/gzio.c:1228 grub-core/io/gzio.c:1237 grub-core/io/gzio.c:1244 -msgid "unsupported gzip format" -msgstr "formato gzip não suportado" - -#: grub-core/io/lzopio.c:511 -msgid "lzop file corrupted" -msgstr "ficheiro lzop corrompido" - -#: grub-core/io/xzio.c:278 -msgid "xz file corrupted or unsupported block options" -msgstr "ficheiro xz corrompido ou opções de bloco não suportadas" - -#: grub-core/kern/arm/dl.c:277 grub-core/kern/arm64/dl.c:44 -#: grub-core/kern/i386/dl.c:36 grub-core/kern/ia64/dl.c:41 -#: grub-core/kern/mips/dl.c:48 grub-core/kern/powerpc/dl.c:36 -#: grub-core/kern/riscv/dl.c:47 grub-core/kern/sparc64/dl.c:36 -#: grub-core/kern/x86_64/dl.c:36 grub-core/loader/i386/bsd.c:1445 -#: grub-core/loader/i386/bsdXX.c:49 grub-core/loader/ia64/efi/linux.c:341 -#: grub-core/loader/mips/linux.c:298 grub-core/loader/multiboot.c:232 -#: grub-core/loader/multiboot_elfxx.c:73 -#: grub-core/loader/powerpc/ieee1275/linux.c:294 -#: grub-core/loader/sparc64/ieee1275/linux.c:331 -msgid "invalid arch-dependent ELF magic" -msgstr "magia ELF dependente de arch não suportada" - -#: grub-core/kern/corecmd.c:178 -msgid "[ENVVAR=VALUE]" -msgstr "[VARAMB=VALOR]" - -#: grub-core/kern/corecmd.c:179 -msgid "Set an environment variable." -msgstr "Definir uma variável de ambiente." - -#: grub-core/kern/corecmd.c:183 -msgid "ENVVAR" -msgstr "VARAMB" - -#: grub-core/kern/corecmd.c:184 -msgid "Remove an environment variable." -msgstr "Remover uma variável de ambiente." - -#: grub-core/kern/corecmd.c:186 -msgid "[ARG]" -msgstr "[ARG]" - -#: grub-core/kern/corecmd.c:186 -msgid "List devices or files." -msgstr "Listar dispositivos ou ficheiros." - -#: grub-core/kern/corecmd.c:188 -msgid "Insert a module." -msgstr "Inserir um módulo." - -#: grub-core/kern/disk.c:236 grub-core/net/net.c:1390 -#, c-format -msgid "disk `%s' not found" -msgstr "disco \"%s\" não encontrado" - -#: grub-core/kern/disk_common.c:27 -msgid "attempt to read or write outside of partition" -msgstr "tentativa de ler ou escrever fora da partição" - -#: grub-core/kern/dl.c:212 grub-core/kern/elf.c:61 grub-core/kern/elf.c:79 -#: grub-core/loader/i386/bsdXX.c:46 grub-core/loader/ia64/efi/linux.c:335 -#: grub-core/loader/multiboot_elfxx.c:69 -msgid "invalid arch-independent ELF magic" -msgstr "magia ELF independente de arch não suportada" - -#. TRANSLATORS: it refers to the lack of free slots. -#: grub-core/kern/emu/hostdisk.c:208 grub-core/kern/emu/hostdisk.c:466 -msgid "device count exceeds limit" -msgstr "total de dispositivos excede o limite" - -#: grub-core/kern/emu/hostdisk.c:342 util/editenv.c:54 util/grub-editenv.c:197 -#: util/grub-fstest.c:191 util/grub-mkfont.c:796 util/misc.c:114 -#: util/misc.c:129 util/setup.c:788 -#, c-format -msgid "cannot write to `%s': %s" -msgstr "impossível escrever em \"%s\": %s" - -#. TRANSLATORS: Only one entry is ignored. However the suggestion -#. is to correct/delete the whole file. -#. device.map is a file indicating which -#. devices are available at boot time. Fedora populated it with -#. entries like (hd0,1) /dev/sda1 which would mean that every -#. partition is a separate disk for BIOS. Such entries were -#. inactive in GRUB due to its bug which is now gone. Without -#. this additional check these entries would be harmful now. -#. -#: grub-core/kern/emu/hostdisk.c:503 -#, c-format -msgid "" -"the device.map entry `%s' is invalid. Ignoring it. Please correct or delete " -"your device.map" -msgstr "" -"a entrada em device.map \"%s\" é inválida. A ignorá-la. Por favor, corrija " -"ou elimine o seu device.map" - -#. TRANSLATORS: device.map is a filename. Not to be translated. -#. device.map specifies disk correspondance overrides. Previously -#. one could create any kind of device name with this. Due to -#. some problems we decided to limit it to just a handful -#. possibilities. -#: grub-core/kern/emu/hostdisk.c:555 -#, c-format -msgid "" -"the drive name `%s' in device.map is incorrect. Using %s instead. Please use " -"the form [hfc]d[0-9]* (E.g. `hd0' or `cd')" -msgstr "" -"o nome de unidade \"%s\" em device.map está incorrecto. A usar antes %s. Por " -"favor, use a forma [hfc]d[0-9]* (e.g. \"hd0\" ou \"cd\")" - -#: grub-core/kern/emu/hostfs.c:76 grub-core/kern/emu/hostfs.c:109 -#, c-format -msgid "can't open `%s': %s" -msgstr "impossível abrir \"%s\": %s" - -#: grub-core/kern/emu/main.c:99 util/grub-fstest.c:516 util/grub-mount.c:452 -msgid "DEVICE_NAME" -msgstr "NOME_DISPOSITIVO" - -#: grub-core/kern/emu/main.c:99 grub-core/loader/i386/bsd.c:136 -#: grub-core/loader/i386/bsd.c:169 util/grub-fstest.c:516 util/grub-mount.c:452 -msgid "Set root device." -msgstr "Definir dispositivo raiz." - -#. TRANSLATORS: There are many devices in device map. -#: grub-core/kern/emu/main.c:102 util/grub-probe.c:733 util/grub-setup.c:85 -#, c-format -msgid "use FILE as the device map [default=%s]" -msgstr "usar FICHEIRO como mapa do dispositivo [predefinição=%s]" - -#. TRANSLATORS: There are many devices in device map. -#: grub-core/kern/emu/main.c:105 -msgid "use FILE as memdisk" -msgstr "usar FICHEIRO como memdisk" - -#: grub-core/kern/emu/main.c:107 util/grub-setup.c:83 -#, c-format -msgid "use GRUB files in the directory DIR [default=%s]" -msgstr "usar ficheiros GRUB na pasta PASTA [predefinição=%s]" - -#: grub-core/kern/emu/main.c:108 include/grub/util/install.h:67 -#: util/grub-editenv.c:58 util/grub-fstest.c:525 util/grub-glue-efi.c:58 -#: util/grub-macbless.c:104 util/grub-mkfont.c:962 util/grub-mkimage.c:84 -#: util/grub-mklayout.c:56 util/grub-mount.c:458 util/grub-probe.c:735 -#: util/grub-render-label.c:74 util/grub-script-check.c:52 util/grub-setup.c:90 -#: util/grub-syslinux2cfg.c:78 -msgid "print verbose messages." -msgstr "imprimir mensagens verbosas." - -#: grub-core/kern/emu/main.c:109 grub-core/lib/gnulib/argp-parse.c:85 -msgid "SECS" -msgstr "SEGS" - -#: grub-core/kern/emu/main.c:109 -msgid "wait until a debugger will attach" -msgstr "esperar até que um depurador ataque" - -#: grub-core/kern/emu/main.c:171 util/grub-macbless.c:143 -#: util/grub-mkrelpath.c:61 util/grub-probe.c:874 util/grub-script-check.c:75 -#: util/grub-setup.c:203 -#, c-format -msgid "Unknown extra argument `%s'." -msgstr "Argumento extra desconhecido: \"%s\"." - -#: grub-core/kern/emu/main.c:185 -msgid "GRUB emulator." -msgstr "Emulador de GRUB." - -#: grub-core/kern/emu/main.c:213 util/grub-editenv.c:262 -#: util/grub-glue-efi.c:110 util/grub-macbless.c:173 util/grub-mkfont.c:1177 -#: util/grub-mkimage.c:266 util/grub-mklayout.c:494 -#: util/grub-mkpasswd-pbkdf2.c:132 util/grub-mkrelpath.c:96 -#: util/grub-probe.c:863 util/grub-render-label.c:152 -#: util/grub-script-check.c:160 util/grub-setup.c:262 -#: util/grub-syslinux2cfg.c:163 -msgid "Error in parsing command line arguments\n" -msgstr "Erro ao processar argumentos da linha de comando\n" - -#. TRANSLATORS: In this case GRUB tells user what he has to do. -#: grub-core/kern/emu/main.c:248 -#, c-format -msgid "Run `gdb %s %d', and set ARGS.HOLD to zero.\n" -msgstr "Execute \"gdb %s %d\" e defina ARGS.HOLD para zero.\n" - -#: grub-core/kern/emu/misc.c:48 -#, c-format -msgid "%s: warning:" -msgstr "%s: aviso:" - -#: grub-core/kern/emu/misc.c:64 -#, c-format -msgid "%s: info:" -msgstr "%s: informação:" - -#: grub-core/kern/emu/misc.c:79 util/grub-fstest.c:567 util/grub-fstest.c:576 -#: util/grub-mount.c:497 util/grub-mount.c:505 -#, c-format -msgid "%s: error:" -msgstr "%s: erro:" - -#: grub-core/kern/emu/misc.c:176 -#, c-format -msgid "file `%s' is too big" -msgstr "ficheiro \"%s\" muito grande" - -#: grub-core/kern/fs.c:120 -msgid "unknown filesystem" -msgstr "sistema de ficheiros desconhecido" - -#: grub-core/kern/mips/arc/init.c:273 grub-core/kern/mips/loongson/init.c:301 -msgid "Shutdown failed" -msgstr "Falha ao encerrar" - -#: grub-core/kern/mips/arc/init.c:285 -msgid "Exit failed" -msgstr "Falha ao sair" - -#: grub-core/kern/misc.c:351 grub-core/kern/misc.c:408 include/grub/misc.h:269 -#: include/grub/misc.h:278 -msgid "overflow is detected" -msgstr "transporte detectado" - -#: grub-core/kern/partition.c:51 grub-core/partmap/bsdlabel.c:108 -#, c-format -msgid "Discarding improperly nested partition (%s,%s,%s%d)" -msgstr "A descartar partição impropriamente aninhada (%s,%s,%s%d)" - -#: grub-core/kern/rescue_parser.c:73 util/grub-editenv.c:292 -#, c-format -msgid "Unknown command `%s'.\n" -msgstr "Comando \"%s\" desconhecido.\n" - -#: grub-core/lib/arg.c:31 -msgid "Display this help and exit." -msgstr "Mostrar esta ajuda e sair." - -#: grub-core/lib/arg.c:33 -msgid "Display the usage of this command and exit." -msgstr "Mostrar a utilização deste comando e sair." - -#: grub-core/lib/arg.c:362 -#, c-format -msgid "missing mandatory option for `%s'" -msgstr "opção obrigatória para \"%s\" em falta" - -#: grub-core/lib/arg.c:384 -#, c-format -msgid "the argument `%s' requires an integer" -msgstr "o argumento \"%s\" requer um inteiro" - -#: grub-core/lib/arg.c:407 -#, c-format -msgid "" -"a value was assigned to the argument `%s' while it doesn't require an " -"argument" -msgstr "" -"foi atribuído um valor ao argumento \"%s\", mas ele não requer um argumento" - -#: grub-core/lib/backtrace.c:64 -msgid "Print backtrace." -msgstr "Imprimir rasto anterior." - -#: grub-core/lib/gnulib/argp-help.c:149 -#, c-format -msgid "ARGP_HELP_FMT: %s value is less than or equal to %s" -msgstr "ARGP_HELP_FMT: valor %s é menor ou igual a %s" - -#: grub-core/lib/gnulib/argp-help.c:225 -#, c-format -msgid "%.*s: ARGP_HELP_FMT parameter requires a value" -msgstr "%.*s: o parâmetro ARGP_HELP_FMT requer um valor" - -#: grub-core/lib/gnulib/argp-help.c:235 -#, c-format -msgid "%.*s: Unknown ARGP_HELP_FMT parameter" -msgstr "%.*s: parâmetro ARGP_HELP_FMT desconhecido" - -#: grub-core/lib/gnulib/argp-help.c:248 -#, c-format -msgid "Garbage in ARGP_HELP_FMT: %s" -msgstr "Lixo em ARGP_HELP_FMT: %s" - -#: grub-core/lib/gnulib/argp-help.c:1229 -msgid "" -"Mandatory or optional arguments to long options are also mandatory or " -"optional for any corresponding short options." -msgstr "" -"Argumentos obrigatórios ou opcionais para opções longas são igualmente " -"obrigatórios ou opcionais para opções curtas correspondentes" - -#: grub-core/lib/gnulib/argp-help.c:1620 -msgid " or: " -msgstr " ou: " - -#: grub-core/lib/gnulib/argp-help.c:1632 -msgid " [OPTION...]" -msgstr " [OPÇÃO...]" - -#: grub-core/lib/gnulib/argp-help.c:1659 -#, c-format -msgid "Try '%s --help' or '%s --usage' for more information.\n" -msgstr "Tente \"%s --help\" ou \"%s --usage\" para mais informação.\n" - -#: grub-core/lib/gnulib/argp-help.c:1687 -#, c-format -msgid "Report bugs to %s.\n" -msgstr "Reportar erros a %s.\n" - -#: grub-core/lib/gnulib/argp-help.c:1888 grub-core/lib/gnulib/error.c:195 -msgid "Unknown system error" -msgstr "Erro de sistema desconhecido" - -#: grub-core/lib/gnulib/argp-parse.c:81 -msgid "give this help list" -msgstr "mostra esta lista de ajuda" - -#: grub-core/lib/gnulib/argp-parse.c:82 -msgid "give a short usage message" -msgstr "mostrar mensagem curta de uso" - -#: grub-core/lib/gnulib/argp-parse.c:83 util/grub-mkfont.c:946 -msgid "NAME" -msgstr "NOME" - -#: grub-core/lib/gnulib/argp-parse.c:84 -msgid "set the program name" -msgstr "define o nome do programa" - -#: grub-core/lib/gnulib/argp-parse.c:86 -msgid "hang for SECS seconds (default 3600)" -msgstr "espera SEGS segundos (predefinição 3600)" - -#: grub-core/lib/gnulib/argp-parse.c:143 -msgid "print program version" -msgstr "Mostrar versão do programa" - -#: grub-core/lib/gnulib/argp-parse.c:160 -msgid "(PROGRAM ERROR) No version known!?" -msgstr "(ERRO DO PROGRAMA) Sem versão conhecida!?" - -#: grub-core/lib/gnulib/argp-parse.c:613 -#, c-format -msgid "%s: Too many arguments\n" -msgstr "%s: demasiados argumentos\n" - -#: grub-core/lib/gnulib/argp-parse.c:759 -msgid "(PROGRAM ERROR) Option should have been recognized!?" -msgstr "(ERRO DO PROGRAMA) A opção devia ter sido reconhecida!?" - -#: grub-core/lib/gnulib/getopt.c:278 -#, c-format -msgid "%s: option '%s%s' is ambiguous\n" -msgstr "%s: a opção \"%s%s\" é ambígua\n" - -#: grub-core/lib/gnulib/getopt.c:284 -#, c-format -msgid "%s: option '%s%s' is ambiguous; possibilities:" -msgstr "%s: a opção \"%s%s\" é ambígua; possibilidades:" - -#: grub-core/lib/gnulib/getopt.c:319 -#, c-format -msgid "%s: unrecognized option '%s%s'\n" -msgstr "%s: opção \"%s%s\" desconhecida\n" - -#: grub-core/lib/gnulib/getopt.c:345 -#, c-format -msgid "%s: option '%s%s' doesn't allow an argument\n" -msgstr "%s: a opção \"%s%s\" não permite um argumento\n" - -#: grub-core/lib/gnulib/getopt.c:360 -#, c-format -msgid "%s: option '%s%s' requires an argument\n" -msgstr "\"%s: a opção \"%s%s\" requer um argumento\n" - -#: grub-core/lib/gnulib/getopt.c:621 -#, c-format -msgid "%s: invalid option -- '%c'\n" -msgstr "%s: opção inválida -- \"%c\"\n" - -#: grub-core/lib/gnulib/getopt.c:636 grub-core/lib/gnulib/getopt.c:682 -#, c-format -msgid "%s: option requires an argument -- '%c'\n" -msgstr "%s: a opção requer um argumento -- \"%c\"\n" - -#: grub-core/lib/gnulib/openat-die.c:38 -#, c-format -msgid "unable to record current working directory" -msgstr "impossível gravar a pasta de trabalho actual" - -#: grub-core/lib/gnulib/openat-die.c:57 -#, c-format -msgid "failed to return to initial working directory" -msgstr "falha ao voltar à pasta de trabalho inicial" - -#: grub-core/lib/gnulib/regcomp.c:135 grub-core/osdep/aros/hostdisk.c:523 -msgid "Success" -msgstr "Sucesso" - -#: grub-core/lib/gnulib/regcomp.c:138 -msgid "No match" -msgstr "Sem correspondência" - -#: grub-core/lib/gnulib/regcomp.c:141 -msgid "Invalid regular expression" -msgstr "Expressão regular inválida" - -#: grub-core/lib/gnulib/regcomp.c:144 -msgid "Invalid collation character" -msgstr "Carácter de agrupamento inválido" - -#: grub-core/lib/gnulib/regcomp.c:147 -msgid "Invalid character class name" -msgstr "Nome de classe de carácter inválido" - -#: grub-core/lib/gnulib/regcomp.c:150 -msgid "Trailing backslash" -msgstr "Barra invertida final" - -#: grub-core/lib/gnulib/regcomp.c:153 -msgid "Invalid back reference" -msgstr "Referência de recuo inválida" - -#: grub-core/lib/gnulib/regcomp.c:156 -msgid "Unmatched [, [^, [:, [., or [=" -msgstr "[, [^, [:, [., ou [= sem par" - -#: grub-core/lib/gnulib/regcomp.c:159 -msgid "Unmatched ( or \\(" -msgstr "( ou \\( sem par" - -#: grub-core/lib/gnulib/regcomp.c:162 -msgid "Unmatched \\{" -msgstr "\\{ sem par" - -#: grub-core/lib/gnulib/regcomp.c:165 -msgid "Invalid content of \\{\\}" -msgstr "Conteúdo de \\{\\} inválido" - -#: grub-core/lib/gnulib/regcomp.c:168 -msgid "Invalid range end" -msgstr "Fim de intervalo inválido" - -#: grub-core/lib/gnulib/regcomp.c:171 -msgid "Memory exhausted" -msgstr "Memória esgotada" - -#: grub-core/lib/gnulib/regcomp.c:174 -msgid "Invalid preceding regular expression" -msgstr "Expressão regular precedente inválida" - -#: grub-core/lib/gnulib/regcomp.c:177 -msgid "Premature end of regular expression" -msgstr "Fim prematuro de expressão regular" - -#: grub-core/lib/gnulib/regcomp.c:180 -msgid "Regular expression too big" -msgstr "Expressão regular muito grande" - -#: grub-core/lib/gnulib/regcomp.c:183 -msgid "Unmatched ) or \\)" -msgstr ") ou \\) sem par" - -#: grub-core/lib/gnulib/regcomp.c:531 -msgid "unknown regexp error" -msgstr "erro de regexp desconhecido" - -#: grub-core/lib/gnulib/regcomp.c:676 -msgid "No previous regular expression" -msgstr "Sem expressão regular anterior" - -#: grub-core/lib/i386/halt.c:77 -msgid "GRUB doesn't know how to halt this machine yet!" -msgstr "O GRUB ainda não sabe como parar esta máquina!" - -#: grub-core/lib/legacy_parse.c:75 -msgid "Default server is ${net_default_server}" -msgstr "O servidor predefinido é ${net_default_server}" - -#: grub-core/lib/legacy_parse.c:844 grub-core/video/colors.c:296 -#: grub-core/video/colors.c:305 grub-core/video/colors.c:311 -#: grub-core/video/colors.c:327 util/render-label.c:84 util/render-label.c:98 -#, c-format -msgid "invalid color specification `%s'" -msgstr "especificação de cor \"%s\" inválida" - -#: grub-core/lib/mips/arc/reboot.c:32 grub-core/lib/mips/loongson/reboot.c:61 -msgid "Reboot failed" -msgstr "Falha ao reiniciar" - -#: grub-core/lib/random.c:113 -msgid "[LENGTH]" -msgstr "[TAMANHO]" - -#: grub-core/lib/random.c:114 -msgid "Hexdump random data." -msgstr "Dados aleatórios hexdump." - -#: grub-core/loader/arm/linux.c:242 -msgid "device tree must be supplied (see `devicetree' command)" -msgstr "" -"tem de indicar uma árvore de dispositivo (veja o comando \"devicetree\")" - -#: grub-core/loader/arm/linux.c:334 -msgid "invalid zImage" -msgstr "zImage inválido" - -#: grub-core/loader/arm/linux.c:450 grub-core/loader/efi/fdt.c:144 -msgid "invalid device tree" -msgstr "árvore de dispositivo inválida" - -#: grub-core/loader/arm/linux.c:493 grub-core/loader/arm64/linux.c:383 -#: grub-core/loader/i386/linux.c:1125 grub-core/loader/i386/pc/linux.c:479 -#: grub-core/loader/i386/xen.c:962 grub-core/loader/i386/xen.c:964 -#: grub-core/loader/ia64/efi/linux.c:591 grub-core/loader/mips/linux.c:501 -#: grub-core/loader/powerpc/ieee1275/linux.c:383 -#: grub-core/loader/riscv/linux.c:50 -#: grub-core/loader/sparc64/ieee1275/linux.c:511 -msgid "Load Linux." -msgstr "Carregar o Linux." - -#: grub-core/loader/arm/linux.c:495 grub-core/loader/arm64/linux.c:385 -#: grub-core/loader/i386/linux.c:1127 grub-core/loader/i386/pc/linux.c:482 -#: grub-core/loader/i386/xen.c:966 grub-core/loader/ia64/efi/linux.c:594 -#: grub-core/loader/mips/linux.c:503 -#: grub-core/loader/powerpc/ieee1275/linux.c:385 -#: grub-core/loader/riscv/linux.c:52 -#: grub-core/loader/sparc64/ieee1275/linux.c:513 -msgid "Load initrd." -msgstr "Carregar o initrd." - -#. TRANSLATORS: DTB stands for device tree blob. -#: grub-core/loader/arm/linux.c:498 grub-core/loader/efi/fdt.c:169 -msgid "Load DTB file." -msgstr "Carregar o ficheiro LTB." - -#: grub-core/loader/arm64/linux.c:59 -msgid "" -"plain image kernel not supported - rebuild with CONFIG_(U)EFI_STUB enabled" -msgstr "" -"kernel de imagem simples não suportado - reconstrua com CONFIG_(U)EFI_STUB " -"activa" - -#: grub-core/loader/arm64/xen_boot.c:156 -msgid "failed to get FDT" -msgstr "falha ao obter FDT" - -#: grub-core/loader/arm64/xen_boot.c:418 -msgid "you need to load the Xen Hypervisor first" -msgstr "primeiro tem de carregar o Xen Hypervisor" - -#: grub-core/loader/arm64/xen_boot.c:516 -msgid "Load a xen hypervisor." -msgstr "Carregar um xen hypervisor." - -#: grub-core/loader/arm64/xen_boot.c:519 -msgid "Load a xen module." -msgstr "Carregar um módulo xen." - -#: grub-core/loader/efi/appleloader.c:231 -msgid "[OPTS]" -msgstr "[OPÇÕES]" - -#. TRANSLATORS: This command is used on EFI to -#. switch to BIOS mode and boot the OS requiring -#. BIOS. -#: grub-core/loader/efi/appleloader.c:235 -msgid "Boot BIOS-based system." -msgstr "Iniciar sistema baseado em BIOS." - -#: grub-core/loader/efi/chainloader.c:421 -#: grub-core/loader/i386/pc/chainloader.c:303 -msgid "Load another boot loader." -msgstr "Carregar outro carregador de inícios." - -#: grub-core/loader/i386/bsd.c:103 -msgid "Display output on all consoles." -msgstr "Mostrar saída em todas as consolas." - -#: grub-core/loader/i386/bsd.c:104 grub-core/loader/i386/bsd.c:138 -#: grub-core/loader/i386/bsd.c:171 -msgid "Use serial console." -msgstr "Usar consola série." - -#: grub-core/loader/i386/bsd.c:105 grub-core/loader/i386/bsd.c:131 -#: grub-core/loader/i386/bsd.c:159 -msgid "Ask for file name to reboot from." -msgstr "Pedir um nome de ficheiro de onde reiniciar." - -#: grub-core/loader/i386/bsd.c:106 -msgid "Use CD-ROM as root." -msgstr "Usar CDROM como raiz." - -#: grub-core/loader/i386/bsd.c:107 -msgid "Invoke user configuration routing." -msgstr "Chamar a rota de configuração do utilizador." - -#: grub-core/loader/i386/bsd.c:108 grub-core/loader/i386/bsd.c:135 -#: grub-core/loader/i386/bsd.c:162 -msgid "Enter in KDB on boot." -msgstr "Entrar em KDB ao iniciar." - -#: grub-core/loader/i386/bsd.c:109 -msgid "Use GDB remote debugger instead of DDB." -msgstr "Usar depurador GDB remoto em vez de DDB." - -#: grub-core/loader/i386/bsd.c:110 -msgid "Disable all boot output." -msgstr "Desactivar toda a saída de início." - -#: grub-core/loader/i386/bsd.c:112 -msgid "Wait for keypress after every line of output." -msgstr "Esperar por uma pressão de tecla a cada linha de saída." - -#: grub-core/loader/i386/bsd.c:114 -msgid "Use compiled-in root device." -msgstr "Usar o dispositivo raiz compilado." - -#: grub-core/loader/i386/bsd.c:115 grub-core/loader/i386/bsd.c:134 -#: grub-core/loader/i386/bsd.c:165 -msgid "Boot into single mode." -msgstr "Iniciar em modo único." - -#: grub-core/loader/i386/bsd.c:116 grub-core/loader/i386/bsd.c:166 -msgid "Boot with verbose messages." -msgstr "Iniciar com mensagens verbosas." - -#: grub-core/loader/i386/bsd.c:132 grub-core/loader/i386/bsd.c:160 -msgid "Don't reboot, just halt." -msgstr "Não reiniciar, parar só." - -#: grub-core/loader/i386/bsd.c:133 grub-core/loader/i386/bsd.c:161 -msgid "Change configured devices." -msgstr "Alterar dispositivos configurados." - -#. TRANSLATORS: "com" is static and not to be translated. It refers to -#. serial ports e.g. com1. -#. -#: grub-core/loader/i386/bsd.c:142 -msgid "comUNIT[,SPEED]" -msgstr "comUNID[,VELOCIDADE]" - -#: grub-core/loader/i386/bsd.c:157 -msgid "Disable SMP." -msgstr "Desactivar SMP." - -#: grub-core/loader/i386/bsd.c:158 -msgid "Disable ACPI." -msgstr "Desactivar ACPI." - -#: grub-core/loader/i386/bsd.c:164 -msgid "Don't display boot diagnostic messages." -msgstr "Não mostrar mensagens de diagnóstico de início." - -#: grub-core/loader/i386/bsd.c:167 -msgid "Boot with debug messages." -msgstr "Iniciar com mensagens de depuração." - -#: grub-core/loader/i386/bsd.c:168 -msgid "Suppress normal output (warnings remain)." -msgstr "Suprimir saída normal (mantém os avisos)." - -#. TRANSLATORS: "com" is static and not to be translated. It refers to -#. serial ports e.g. com1. -#. -#: grub-core/loader/i386/bsd.c:175 -msgid "[ADDR|comUNIT][,SPEED]" -msgstr "[ENDEREÇO|comUNID][,VELOCIDADE]" - -#: grub-core/loader/i386/bsd.c:489 grub-core/loader/i386/bsd.c:555 -msgid "name" -msgstr "nome" - -#: grub-core/loader/i386/bsd.c:489 grub-core/loader/i386/bsd.c:555 -msgid "type" -msgstr "tipo" - -#: grub-core/loader/i386/bsd.c:489 grub-core/loader/i386/bsd.c:555 -msgid "addr" -msgstr "endereço" - -#: grub-core/loader/i386/bsd.c:490 grub-core/loader/i386/bsd.c:556 -msgid "size" -msgstr "tamanho" - -#: grub-core/loader/i386/bsd.c:1147 grub-core/loader/i386/linux.c:466 -#: grub-core/loader/i386/xnu.c:1030 -msgid "Booting in blind mode" -msgstr "A iniciar em modo cego" - -#: grub-core/loader/i386/bsd.c:2137 -msgid "Load kernel of FreeBSD." -msgstr "Carregar o kernel de FreeBSD." - -#: grub-core/loader/i386/bsd.c:2140 -msgid "Load kernel of OpenBSD." -msgstr "Carregar o kernel de OpenBSD." - -#: grub-core/loader/i386/bsd.c:2143 -msgid "Load kernel of NetBSD." -msgstr "Carregar o kernel de NetBSD." - -#: grub-core/loader/i386/bsd.c:2147 -msgid "Load FreeBSD env." -msgstr "Carregar o ambiente de FreeBSD." - -#: grub-core/loader/i386/bsd.c:2150 -msgid "Load FreeBSD kernel module." -msgstr "Carregar o módulo de kernel de FreeBSD." - -#: grub-core/loader/i386/bsd.c:2153 -msgid "Load NetBSD kernel module." -msgstr "Carregar o módulo de kernel de NetBSD." - -#: grub-core/loader/i386/bsd.c:2156 -msgid "Load NetBSD kernel module (ELF)." -msgstr "Carregar o módulo de kernel de NetBSD (ELF)." - -#: grub-core/loader/i386/bsd.c:2159 -msgid "Load FreeBSD kernel module (ELF)." -msgstr "Carregar o módulo de kernel de FreeBSD (ELF)." - -#. TRANSLATORS: ramdisk isn't identifier, -#. it can be translated. -#: grub-core/loader/i386/bsd.c:2165 -msgid "Load kOpenBSD ramdisk." -msgstr "Carregar o disco ram de kOpenBSD." - -#. TRANSLATORS: "payload" is a term used -#. by coreboot and must be translated in -#. sync with coreboot. If unsure, -#. let it untranslated. -#: grub-core/loader/i386/coreboot/chainloader.c:510 -msgid "Load another coreboot payload" -msgstr "Carregar outro coreboot payload" - -#: grub-core/loader/i386/linux.c:876 -msgid "Legacy `ask' parameter no longer supported." -msgstr "Parâmetro antigo \"ask\" já não suportado." - -#: grub-core/loader/i386/linux.c:892 grub-core/loader/i386/linux.c:902 -#: grub-core/loader/i386/linux.c:932 -#, c-format -msgid "%s is deprecated. Use set gfxpayload=%s before linux command instead.\n" -msgstr "%s é obsoleto. Use antes set gfxpayload=%s antes do comando linux.\n" - -#. TRANSLATORS: "x" has to be entered in, like an identifier, -#. so please don't use better Unicode codepoints. -#: grub-core/loader/i386/linux.c:915 -#, c-format -msgid "" -"%s is deprecated. VGA mode %d isn't recognized. Use set " -"gfxpayload=WIDTHxHEIGHT[xDEPTH] before linux command instead.\n" -msgstr "" -"%s é obsoleto. O modo VGA %d não é reconhecido. Use antes set " -"gfxpayload=LARGURAxALTURA[xPROFUNDIDADE] antes do comando linux.\n" - -#: grub-core/loader/i386/pc/chainloader.c:302 -msgid "[--force|--bpb] FILE" -msgstr "[--force|--bpb] FICHEIRO" - -#: grub-core/loader/i386/pc/freedos.c:148 util/setup.c:293 -#, c-format -msgid "the size of `%s' is too large" -msgstr "o tamanho de \"%s\" é muito grande" - -#: grub-core/loader/i386/pc/freedos.c:183 -msgid "Load FreeDOS kernel.sys." -msgstr "Carregar o kernel.sys de FreeDOS." - -#: grub-core/loader/i386/pc/ntldr.c:155 -msgid "Load NTLDR or BootMGR." -msgstr "Carregar NTLDR ou BootMGR." - -#. TRANSLATORS: it's about guessing which GRUB disk -#. is which Plan9 disk. If your language has no -#. word "mapping" you can use another word which -#. means that the GRUBDEVICE and PLAN9DEVICE are -#. actually the same device, just named differently -#. in OS and GRUB. -#: grub-core/loader/i386/pc/plan9.c:59 -msgid "Override guessed mapping of Plan9 devices." -msgstr "Sobrepor o mapeamento calculado de dispositivos Plan9." - -#: grub-core/loader/i386/pc/plan9.c:60 -msgid "GRUBDEVICE=PLAN9DEVICE" -msgstr "DISPGRUB=DISPPLAN9" - -#: grub-core/loader/i386/pc/plan9.c:599 -msgid "KERNEL ARGS" -msgstr "KERNEL ARGS" - -#: grub-core/loader/i386/pc/plan9.c:599 -msgid "Load Plan9 kernel." -msgstr "Carregar o kernel de Plan9." - -#: grub-core/loader/i386/pc/pxechainloader.c:161 -msgid "Load a PXE image." -msgstr "Carregar uma imagem PXE." - -#: grub-core/loader/i386/pc/truecrypt.c:226 -msgid "Load Truecrypt ISO." -msgstr "Carregar ISO Truecrypt." - -#: grub-core/loader/i386/xen.c:781 grub-core/loader/i386/xen.c:865 -msgid "initrd already loaded" -msgstr "initrd já carregado" - -#: grub-core/loader/i386/xen.c:968 -msgid "Load module." -msgstr "Carregar módulo." - -#: grub-core/loader/i386/xnu.c:1003 -msgid "Press any key to launch xnu" -msgstr "Prima qualquer tecla para iniciar o xnu" - -#. TRANSLATORS: `device-properties' -#. is a variable name, -#. not a program. -#: grub-core/loader/i386/xnu.c:1159 -msgid "Load `device-properties' dump." -msgstr "Carregar despejo de \"device-properties\"." - -#: grub-core/loader/ia64/efi/linux.c:124 -msgid "Could not locate FPSWA driver" -msgstr "Impossível localizar o controlador de FPSWA" - -#: grub-core/loader/ia64/efi/linux.c:132 -msgid "FPSWA protocol wasn't able to find the interface" -msgstr "O protocolo FPSWA não pôde encontrar a interface" - -#: grub-core/loader/ia64/efi/linux.c:580 -msgid "No FPSWA found" -msgstr "Sem FPSWA encontrado" - -#: grub-core/loader/ia64/efi/linux.c:582 -#, c-format -msgid "FPSWA revision: %x\n" -msgstr "Revisão FPSWA: %x\n" - -#: grub-core/loader/ia64/efi/linux.c:591 -msgid "FILE [ARGS...]" -msgstr "FICHEIRO [ARGS...]" - -#: grub-core/loader/ia64/efi/linux.c:597 -msgid "Display FPSWA version." -msgstr "Mostrar versão FPSWA." - -#: grub-core/loader/multiboot.c:248 -msgid "WARNING: no console will be available to OS" -msgstr "AVISO: não haverá nenhuma consola disponível para o SO" - -#: grub-core/loader/multiboot.c:450 -msgid "Load a multiboot 2 kernel." -msgstr "Carregar um kernel multiboot 2." - -#: grub-core/loader/multiboot.c:453 -msgid "Load a multiboot 2 module." -msgstr "Carregar um módulo multiboot 2." - -#: grub-core/loader/multiboot.c:456 -msgid "Load a multiboot kernel." -msgstr "Carregar um kernel multiboot." - -#: grub-core/loader/multiboot.c:459 -msgid "Load a multiboot module." -msgstr "Carregar um módulo multiboot." - -#: grub-core/loader/riscv/linux.c:30 grub-core/loader/riscv/linux.c:40 -msgid "Linux not supported yet" -msgstr "Linux ainda não suportado" - -# pt_PT note: Parenthesis added as per note in the next string. -#: grub-core/loader/xnu.c:1416 grub-core/term/gfxterm_background.c:45 -msgid "Background image mode." -msgstr "Modo de imagem de fundo (esticada ou normal)." - -#. TRANSLATORS: This refers to background image mode (stretched or -#. in left-top corner). Note that GRUB will accept only original -#. keywords stretch and normal, not the translated ones. -#. So please put both in translation -#. e.g. stretch(=%STRETCH%)|normal(=%NORMAL%). -#. The percents mark the translated version. Since many people -#. may not know the word stretch or normal I recommend -#. putting the translation either here or in "Background image mode." -#. string. -#: grub-core/loader/xnu.c:1416 grub-core/term/gfxterm_background.c:55 -msgid "stretch|normal" -msgstr "stretch|normal" - -#: grub-core/loader/xnu.c:1482 -msgid "Load XNU image." -msgstr "Carregar imagem XNU." - -#: grub-core/loader/xnu.c:1484 -msgid "Load 64-bit XNU image." -msgstr "Carregar imagem XNU 64-bit." - -#: grub-core/loader/xnu.c:1486 -msgid "Load XNU extension package." -msgstr "Carregar pacote de extensão XNU." - -#: grub-core/loader/xnu.c:1488 -msgid "Load XNU extension." -msgstr "Carregar extensão XNU." - -#. TRANSLATORS: OSBundleRequired is a -#. variable name in xnu extensions -#. manifests. It behaves mostly like -#. GNU/Linux runlevels. -#. -#: grub-core/loader/xnu.c:1495 -msgid "DIRECTORY [OSBundleRequired]" -msgstr "PASTA [OSBundleRequired]" - -#. TRANSLATORS: There are many extensions -#. in extension directory. -#: grub-core/loader/xnu.c:1498 -msgid "Load XNU extension directory." -msgstr "Carregar pasta de extensão XNU." - -#. TRANSLATORS: ramdisk here isn't identifier. It can be translated. -#: grub-core/loader/xnu.c:1501 -msgid "Load XNU ramdisk. It will be available in OS as md0." -msgstr "Carregar disco ram XNU. Estará disponível no SO como md0." - -#: grub-core/loader/xnu.c:1505 -msgid "Load a splash image for XNU." -msgstr "Carregar uma imagem de arranque para XNU." - -#: grub-core/loader/xnu.c:1510 -msgid "Load an image of hibernated XNU." -msgstr "Carregar uma imagem do XNU hibernado." - -#: grub-core/mmap/mmap.c:538 -msgid "ADDR1,MASK1[,ADDR2,MASK2[,...]]" -msgstr "ENDEREÇO1,MÃSCARA1[,ENDEREÇO2,MÃSCARA2[,...]]" - -#: grub-core/mmap/mmap.c:539 -msgid "Declare memory regions as faulty (badram)." -msgstr "Declarar regiões de memória como defeituosas (badram)." - -#: grub-core/mmap/mmap.c:541 -msgid "FROM[K|M|G] TO[K|M|G]" -msgstr "DE[K|M|G] ATÉ[K|M|G]" - -#: grub-core/mmap/mmap.c:542 -msgid "Remove any memory regions in specified range." -msgstr "Remover quaisquer regiões de memória no intervalo especificado." - -#: grub-core/net/bootp.c:653 -msgid "four arguments expected" -msgstr "esperados quatro argumentos" - -#: grub-core/net/bootp.c:661 grub-core/net/net.c:1155 -#, c-format -msgid "unrecognised network interface `%s'" -msgstr "interface de rede \"%s\" não reconhecida" - -#: grub-core/net/bootp.c:664 -msgid "no DHCP info found" -msgstr "sem informação DHCP encontrada" - -#: grub-core/net/bootp.c:674 -msgid "no DHCP options found" -msgstr "sem opções DHCP encontradas" - -#: grub-core/net/bootp.c:682 -msgid "invalid DHCP option code" -msgstr "código de opção DHCP inválido" - -#: grub-core/net/bootp.c:686 -#, c-format -msgid "no DHCP option %u found" -msgstr "sem opção %u DHCP encontrada" - -#: grub-core/net/bootp.c:743 -#, c-format -msgid "unrecognised DHCP option format specification `%s'" -msgstr "formato de especificação \"%s\" de opção DHCP não reconhecido" - -#: grub-core/net/bootp.c:767 -msgid "no network card found" -msgstr "sem placa de rede encontrada" - -#: grub-core/net/bootp.c:859 grub-core/net/net.c:389 -#, c-format -msgid "couldn't autoconfigure %s" -msgstr "impossível auto-configurar %s" - -#: grub-core/net/bootp.c:873 grub-core/net/bootp.c:876 -msgid "[CARD]" -msgstr "[PLACA]" - -#: grub-core/net/bootp.c:874 -msgid "perform a bootp autoconfiguration" -msgstr "realizar uma auto-configuração bootp" - -#: grub-core/net/bootp.c:877 -msgid "perform a DHCP autoconfiguration" -msgstr "realizar uma auto-configuração DHCP" - -#: grub-core/net/bootp.c:879 -msgid "VAR INTERFACE NUMBER DESCRIPTION" -msgstr "VAR INTERFACE NÚMERO DESCRIÇÃO" - -#: grub-core/net/bootp.c:880 -msgid "" -"retrieve DHCP option and save it into VAR. If VAR is - then print the value." -msgstr "obter opção DHCP e gravá-la em VAR. Se VAR for -, imprimir o valor." - -#: grub-core/net/dns.c:459 -msgid "no DNS servers configured" -msgstr "sem servidores DNS configurados" - -#: grub-core/net/dns.c:522 -msgid "domain name component is too long" -msgstr "componente de nome de domínio muito longa" - -#: grub-core/net/dns.c:618 grub-core/net/dns.c:666 -msgid "no DNS record found" -msgstr "sem registos DNS encontrados" - -#: grub-core/net/dns.c:626 -msgid "no DNS reply received" -msgstr "sem resposta DNS recebida" - -#: grub-core/net/dns.c:682 -msgid "only ipv4" -msgstr "só ipv4" - -#: grub-core/net/dns.c:686 -msgid "only ipv6" -msgstr "só ipv6" - -#: grub-core/net/dns.c:690 -msgid "prefer ipv4" -msgstr "preferir ipv4" - -#: grub-core/net/dns.c:694 -msgid "prefer ipv6" -msgstr "preferir ipv6" - -#: grub-core/net/dns.c:759 -msgid "ADDRESS DNSSERVER" -msgstr "ENDEREÇO SERVIDORDNS" - -#: grub-core/net/dns.c:760 -msgid "Perform a DNS lookup" -msgstr "Realizar uma procura DNS" - -#: grub-core/net/dns.c:762 grub-core/net/dns.c:765 -msgid "DNSSERVER" -msgstr "SERVIDORDNS" - -#: grub-core/net/dns.c:763 -msgid "Add a DNS server" -msgstr "Adicionar um servidor DNS" - -#: grub-core/net/dns.c:766 -msgid "Remove a DNS server" -msgstr "Remover um servidor DNS" - -#: grub-core/net/dns.c:768 -msgid "List DNS servers" -msgstr "Listar servidores DNS" - -#: grub-core/net/drivers/efi/efinet.c:49 grub-core/net/drivers/efi/efinet.c:65 -#: grub-core/net/drivers/efi/efinet.c:77 grub-core/net/drivers/emu/emunet.c:62 -#: grub-core/net/drivers/i386/pc/pxe.c:273 -#: grub-core/net/drivers/ieee1275/ofnet.c:75 -#: grub-core/net/drivers/uboot/ubootnet.c:62 -msgid "couldn't send network packet" -msgstr "impossível enviar pacote de rede" - -#: grub-core/net/drivers/ieee1275/ofnet.c:326 -#: grub-core/net/drivers/ieee1275/ofnet.c:359 -msgid "interpret is not supported" -msgstr "interpret não é suportado" - -#: grub-core/net/drivers/ieee1275/ofnet.c:336 -msgid "alloc-mem failed" -msgstr "alloc-mem falhou" - -#: grub-core/net/drivers/ieee1275/ofnet.c:370 -msgid "free-mem failed" -msgstr "free-mem falhou" - -#: grub-core/net/http.c:105 -msgid "unsupported HTTP response" -msgstr "resposta HTTP não suportada" - -#. TRANSLATORS: GRUB HTTP code is pretty young. So even perfectly -#. valid answers like 403 will trigger this very generic message. -#: grub-core/net/http.c:126 -#, c-format -msgid "unsupported HTTP error %d: %s" -msgstr "erro HTTP %d não suportado: %s" - -#: grub-core/net/http.c:429 grub-core/net/tftp.c:420 -#, c-format -msgid "time out opening `%s'" -msgstr "expirado ao abrir \"%s\"" - -#: grub-core/net/net.c:179 -msgid "timeout: could not resolve hardware address" -msgstr "expirado: impossível resolver o endereço do equipamento" - -#: grub-core/net/net.c:548 -#, c-format -msgid "unresolvable address %s" -msgstr "endereço %s insolúvel" - -#: grub-core/net/net.c:594 -#, c-format -msgid "unrecognised network address `%s'" -msgstr "endereço de rede \"%s\" não reconhecido" - -#: grub-core/net/net.c:661 -msgid "destination unreachable" -msgstr "destino inalcançável" - -#. TRANSLATORS: route loop is a condition when e.g. -#. to contact server A you need to go through B -#. and to contact B you need to go through A. -#: grub-core/net/net.c:684 -msgid "route loop detected" -msgstr "ciclo de rotas detectado" - -#: grub-core/net/net.c:700 -msgid "address not found" -msgstr "endereço não encontrado" - -#: grub-core/net/net.c:704 -msgid "you can't delete this address" -msgstr "impossível eliminar este endereço" - -#: grub-core/net/net.c:776 grub-core/net/net.c:792 -#, c-format -msgid "Unsupported hw address type %d\n" -msgstr "tipo de endereço hw %d não suportado\n" - -#: grub-core/net/net.c:813 -#, c-format -msgid "Unsupported address type %d\n" -msgstr "tipo de endereço %d não suportado\n" - -#: grub-core/net/net.c:1017 grub-core/net/net.c:1131 -msgid "three arguments expected" -msgstr "esperados três argumentos" - -#: grub-core/net/net.c:1023 -msgid "card not found" -msgstr "placa não encontrada" - -#. TRANSLATORS: it refers to the network address. -#: grub-core/net/net.c:1167 -msgid "temporary" -msgstr "temporário" - -#: grub-core/net/net.c:1190 -#, c-format -msgid "Unknown address type %d\n" -msgstr "tipo de endereço %d desconhecido\n" - -#: grub-core/net/net.c:1298 -msgid "no server is specified" -msgstr "não especificou nenhum servidor" - -#: grub-core/net/net.c:1637 -#, c-format -msgid "timeout reading `%s'" -msgstr "expirado ao ler \"%s\"" - -#. TRANSLATORS: HWADDRESS stands for -#. "hardware address". -#: grub-core/net/net.c:1762 -msgid "SHORTNAME CARD ADDRESS [HWADDRESS]" -msgstr "NOMECURTO PLACA ENDEREÇO [ENDEQUIPAMENTO]" - -#: grub-core/net/net.c:1763 -msgid "Add a network address." -msgstr "Adicionar endereço de rede." - -#: grub-core/net/net.c:1766 -msgid "[CARD [HWADDRESS]]" -msgstr "[PLACA [ENDEQUIPAMENTO]]" - -#: grub-core/net/net.c:1767 -msgid "Perform an IPV6 autoconfiguration" -msgstr "Realizar auto-configuração IPV6" - -#: grub-core/net/net.c:1770 grub-core/net/net.c:1777 -msgid "SHORTNAME" -msgstr "NOMECURTO" - -#: grub-core/net/net.c:1771 -msgid "Delete a network address." -msgstr "Eliminar endereço de rede." - -#. TRANSLATORS: "gw" is a keyword. -#: grub-core/net/net.c:1774 -msgid "SHORTNAME NET [INTERFACE| gw GATEWAY]" -msgstr "NOMECURTO REDE [INTERFACE| gw PORTAL]" - -#: grub-core/net/net.c:1775 -msgid "Add a network route." -msgstr "Adicionar uma rota de rede." - -#: grub-core/net/net.c:1778 -msgid "Delete a network route." -msgstr "Eliminar uma rota de rede." - -#: grub-core/net/net.c:1780 -msgid "list network routes" -msgstr "listar rotas de rede." - -#: grub-core/net/net.c:1782 -msgid "list network cards" -msgstr "listar placas de rede" - -#: grub-core/net/net.c:1784 -msgid "list network addresses" -msgstr "listar endereços de rede" - -#: grub-core/net/tcp.c:681 -msgid "connection refused" -msgstr "ligação recusada" - -#: grub-core/net/tcp.c:684 -msgid "connection timeout" -msgstr "ligação expirada" - -#: grub-core/normal/auth.c:220 -msgid "Enter username: " -msgstr "Insira o utilizador: " - -#: grub-core/normal/auth.c:269 -msgid "[USERLIST]" -msgstr "[LISTAUTILIZADORES]" - -#: grub-core/normal/auth.c:270 -msgid "Check whether user is in USERLIST." -msgstr "Verificar se o utilizador está em LISTAUTILIZADORES." - -#: grub-core/normal/cmdline.c:174 grub-core/normal/menu_entry.c:1068 -msgid "Possible commands are:" -msgstr "Os comandos possíveis são:" - -#: grub-core/normal/cmdline.c:177 grub-core/normal/menu_entry.c:1072 -msgid "Possible devices are:" -msgstr "Os dispositivos possíveis são:" - -#: grub-core/normal/cmdline.c:180 grub-core/normal/menu_entry.c:1076 -msgid "Possible files are:" -msgstr "Os ficheiros possíveis são:" - -#: grub-core/normal/cmdline.c:183 grub-core/normal/menu_entry.c:1080 -msgid "Possible partitions are:" -msgstr "As partições possíveis são:" - -#: grub-core/normal/cmdline.c:186 grub-core/normal/menu_entry.c:1084 -msgid "Possible arguments are:" -msgstr "Os argumentos possíveis são:" - -#. TRANSLATORS: this message is used if none of above matches. -#. This shouldn't happen but please use the general term for -#. "thing" or "object". -#: grub-core/normal/cmdline.c:192 grub-core/normal/menu_entry.c:1088 -msgid "Possible things are:" -msgstr "Os objectos possíveis são:" - -#: grub-core/normal/color.c:81 -#, c-format -msgid "Warning: syntax error (missing slash) in `%s'\n" -msgstr "Aviso: erro de sintaxe em \"%s\" (barra em falta)\n" - -#: grub-core/normal/color.c:90 -#, c-format -msgid "Warning: invalid foreground color `%s'\n" -msgstr "Aviso: cor de 1º plano \"%s\" inválida\n" - -#: grub-core/normal/color.c:96 -#, c-format -msgid "Warning: invalid background color `%s'\n" -msgstr "Aviso: cor de fundo \"%s\" inválida\n" - -#: grub-core/normal/context.c:206 -msgid "ENVVAR [ENVVAR] ..." -msgstr "VARAMBIENTE [VARAMBIENTE] ..." - -#: grub-core/normal/context.c:207 -msgid "Export variables." -msgstr "Exportar variáveis." - -#: grub-core/normal/datetime.c:25 -msgid "Sunday" -msgstr "Domingo" - -#: grub-core/normal/datetime.c:26 -msgid "Monday" -msgstr "Segunda" - -#: grub-core/normal/datetime.c:27 -msgid "Tuesday" -msgstr "Terça" - -#: grub-core/normal/datetime.c:28 -msgid "Wednesday" -msgstr "Quarta" - -#: grub-core/normal/datetime.c:29 -msgid "Thursday" -msgstr "Quinta" - -#: grub-core/normal/datetime.c:30 -msgid "Friday" -msgstr "Sexta" - -#: grub-core/normal/datetime.c:31 -msgid "Saturday" -msgstr "Sábado" - -#: grub-core/normal/dyncmd.c:187 -msgid "module isn't loaded" -msgstr "o módulo não está carregado" - -#: grub-core/normal/main.c:211 -#, c-format -msgid "GNU GRUB version %s" -msgstr "GNU GRUB versão %s" - -#: grub-core/normal/main.c:360 -msgid "ESC at any time exits." -msgstr "ESC em qualquer altura sai." - -#: grub-core/normal/main.c:363 -#, c-format -msgid "" -"Minimal BASH-like line editing is supported. For the first word, TAB lists " -"possible command completions. Anywhere else TAB lists possible device or " -"file completions. %s" -msgstr "" -"É suportada uma edição tipo BASH minimalista. Para a primeira palavra, TAB " -"lista as conclusões possíveis para comandos. De resto, lista conclusões " -"possíveis para dispositivos ou ficheiros. %s" - -#. TRANSLATORS: it's command line prompt. -#: grub-core/normal/main.c:395 -msgid ">" -msgstr ">" - -#. TRANSLATORS: it's command line prompt. -#: grub-core/normal/main.c:398 -msgid "grub>" -msgstr "grub>" - -#: grub-core/normal/main.c:518 -msgid "Clear the screen." -msgstr "Limpar o ecrã." - -#: grub-core/normal/main.c:527 -msgid "Enter normal mode." -msgstr "Entrar em modo normal." - -#: grub-core/normal/main.c:529 -msgid "Exit from normal mode." -msgstr "Sair do modo normal." - -#: grub-core/normal/menu.c:66 grub-core/normal/menu_entry.c:1449 -msgid "Press any key to continue..." -msgstr "Prima qualquer tecla para continuar..." - -#: grub-core/normal/menu.c:815 -#, c-format -msgid "Booting `%s'" -msgstr "A iniciar \"%s\"" - -#: grub-core/normal/menu.c:827 -#, c-format -msgid "Falling back to `%s'" -msgstr "A recuar para \"%s\"" - -#: grub-core/normal/menu.c:843 -msgid "Failed to boot both default and fallback entries.\n" -msgstr "Falha ao iniciar as entradas predefinida e de segurança.\n" - -#: grub-core/normal/menu_entry.c:1171 -msgid "Booting a command list" -msgstr "A iniciar uma lista de comandos" - -#: grub-core/normal/menu_text.c:160 -msgid "" -"Minimum Emacs-like screen editing is supported. TAB lists completions. Press " -"Ctrl-x or F10 to boot, Ctrl-c or F2 for a command-line or ESC to discard " -"edits and return to the GRUB menu." -msgstr "" -"É suportada uma edição tipo Emacs minimalista. TAB lista as conclusões. " -"Prima Ctrl+x ou F10 para iniciar, Ctrl+c ou F2 para uma linha de comando ou " -"ESC para descartar edições e voltar ao menu GRUB." - -#: grub-core/normal/menu_text.c:170 -#, c-format -msgid "Use the %C and %C keys to select which entry is highlighted." -msgstr "Use as teclas %C e %C para seleccionar qual entrada é realçada." - -#. TRANSLATORS: that's the list of binary unit prefixes. -#: grub-core/normal/misc.c:38 -msgid "B" -msgstr "B" - -#: grub-core/normal/misc.c:38 -msgid "KiB" -msgstr "KiB" - -#: grub-core/normal/misc.c:38 -msgid "MiB" -msgstr "MiB" - -#: grub-core/normal/misc.c:38 -msgid "GiB" -msgstr "GiB" - -#: grub-core/normal/misc.c:38 -msgid "TiB" -msgstr "TiB" - -#: grub-core/normal/misc.c:38 -msgid "PiB" -msgstr "PiB" - -#. TRANSLATORS: that's the list of binary unit prefixes. -#: grub-core/normal/misc.c:40 -msgid "K" -msgstr "K" - -#: grub-core/normal/misc.c:40 -msgid "M" -msgstr "M" - -#: grub-core/normal/misc.c:40 -msgid "G" -msgstr "G" - -#: grub-core/normal/misc.c:40 -msgid "T" -msgstr "T" - -#: grub-core/normal/misc.c:40 -msgid "P" -msgstr "P" - -#. TRANSLATORS: that's the list of binary unit prefixes. -#: grub-core/normal/misc.c:42 -msgid "B/s" -msgstr "B/s" - -#: grub-core/normal/misc.c:42 -msgid "KiB/s" -msgstr "KiB/s" - -#: grub-core/normal/misc.c:42 -msgid "MiB/s" -msgstr "MiB/s" - -#: grub-core/normal/misc.c:42 -msgid "GiB/s" -msgstr "GiB/s" - -#: grub-core/normal/misc.c:42 -msgid "TiB/s" -msgstr "TiB/s" - -#: grub-core/normal/misc.c:42 -msgid "PiB/s" -msgstr "PiB/s" - -#: grub-core/normal/misc.c:96 -#, c-format -msgid "Partition %s:" -msgstr "Partição %s:" - -#: grub-core/normal/misc.c:101 -#, c-format -msgid "Device %s:" -msgstr "Dispositivo %s" - -#: grub-core/normal/misc.c:107 -msgid "Filesystem cannot be accessed" -msgstr "O sistema de ficheiros não pode ser acedido" - -#: grub-core/normal/misc.c:121 -#, c-format -msgid "Filesystem type %s" -msgstr "Tipo de sistema de ficheiros %s" - -#: grub-core/normal/misc.c:131 -#, c-format -msgid "- Label `%s'" -msgstr "- Rótulo \"%s\"" - -#. TRANSLATORS: Arguments are year, month, day, hour, minute, -#. second, day of the week (translated). -#: grub-core/normal/misc.c:148 -#, c-format -msgid "- Last modification time %d-%02d-%02d %02d:%02d:%02d %s" -msgstr "- Última modificação %d-%02d-%02d %02d:%02d:%02d %s" - -#: grub-core/normal/misc.c:171 -msgid "No known filesystem detected" -msgstr "Sem sistema de ficheiros conhecido" - -#: grub-core/normal/misc.c:174 -#, c-format -msgid " - Partition start at %llu%sKiB" -msgstr " - Início da partição em %llu%sKiB" - -#: grub-core/normal/misc.c:178 -#, c-format -msgid " - Sector size %uB" -msgstr " - Tamanho de sector %uB" - -#: grub-core/normal/misc.c:180 -msgid " - Total size unknown" -msgstr " - Tamanho total conhecido" - -#: grub-core/normal/misc.c:182 -#, c-format -msgid " - Total size %llu%sKiB" -msgstr " - Tamanho total %llu%sKiB" - -#. TRANSLATORS: Replace dot with appropriate decimal separator for -#. your language. -#: grub-core/normal/misc.c:186 -msgid ".5" -msgstr ",5" - -#. TRANSLATORS: This has to fit on one line. It's ok to include few -#. words but don't write poems. -#: grub-core/normal/term.c:82 -msgid "--MORE--" -msgstr "--MAIS--" - -#: grub-core/osdep/aros/config.c:92 grub-core/osdep/unix/config.c:137 -#: grub-core/osdep/windows/config.c:55 -#, c-format -msgid "cannot open configuration file `%s': %s" -msgstr "impossível abrir o ficheiro de configuração \"%s\": %s" - -#: grub-core/osdep/basic/compress.c:8 grub-core/osdep/basic/compress.c:14 -#: grub-core/osdep/basic/compress.c:20 -msgid "no compression is available for your platform" -msgstr "não há compressão disponível para a sua plataforma" - -#: grub-core/osdep/basic/no_platform.c:30 -#: grub-core/osdep/windows/platform.c:418 -msgid "no IEEE1275 routines are available for your platform" -msgstr "não há rotinas IEEE1275 disponíveis para a sua plataforma" - -#: grub-core/osdep/basic/no_platform.c:38 -msgid "no EFI routines are available for your platform" -msgstr "não há rotinas EFI disponíveis para a sua plataforma" - -#: grub-core/osdep/basic/no_platform.c:45 -#: grub-core/osdep/windows/platform.c:425 -msgid "no SGI routines are available for your platform" -msgstr "não há rotinas SGI disponíveis para a sua plataforma" - -#. TRANSLATORS: The OS itself may very well have a random -#. number generator but GRUB doesn't know how to access it. -#: grub-core/osdep/basic/random.c:42 -msgid "no random number generator is available for your OS" -msgstr "não há gerador de números aleatórios disponível para o seu SO" - -#: grub-core/osdep/devmapper/getroot.c:81 -msgid "Failed to create `device-mapper' tree" -msgstr "Falha ao criar a árvore \"device-mapper\"" - -#: grub-core/osdep/devmapper/getroot.c:197 -#: grub-core/osdep/freebsd/getroot.c:202 -#, c-format -msgid "can't mount encrypted volume `%s': %s" -msgstr "impossível montar o volume encriptado \"%s\": %s" - -#. TRANSLATORS: geom is the name of (k)FreeBSD device framework. -#. Usually left untranslated. -#. -#: grub-core/osdep/freebsd/getroot.c:82 grub-core/osdep/freebsd/getroot.c:164 -#: grub-core/osdep/freebsd/getroot.c:258 grub-core/osdep/freebsd/getroot.c:316 -msgid "couldn't open geom" -msgstr "impossível abrir geom" - -#: grub-core/osdep/freebsd/getroot.c:182 grub-core/osdep/freebsd/getroot.c:277 -msgid "couldn't find geli consumer" -msgstr "impossível encontrar consumidor geli" - -#: grub-core/osdep/freebsd/getroot.c:282 -msgid "couldn't retrieve geli UUID" -msgstr "impossível obter UUID geli" - -#. TRANSLATORS: geom is the name of (k)FreeBSD device framework. -#. Usually left untranslated. "part" is the identifier of one of its -#. classes. -#: grub-core/osdep/freebsd/getroot.c:325 -msgid "couldn't find geom `part' class" -msgstr "impossível encontrar ca classe \"part\" do geom" - -#: grub-core/osdep/freebsd/hostdisk.c:72 grub-core/osdep/linux/hostdisk.c:93 -msgid "unaligned device size" -msgstr "tamanho de dispositivo desalinhado" - -#: grub-core/osdep/generic/blocklist.c:56 -#, c-format -msgid "attempting to read the core image `%s' from GRUB" -msgstr "a tentar ler a imagem de núcleo \"%s\" do GRUB" - -#: grub-core/osdep/generic/blocklist.c:57 -#, c-format -msgid "attempting to read the core image `%s' from GRUB again" -msgstr "a tentar ler a imagem de núcleo \"%s\" do GRUB novamente" - -#: grub-core/osdep/generic/blocklist.c:115 -#, c-format -msgid "cannot read `%s' correctly" -msgstr "impossível ler \"%s\" correctamente" - -#: grub-core/osdep/generic/blocklist.c:126 -msgid "failed to read the sectors of the core image" -msgstr "falha ao ler os sectores da imagem de núcleo" - -#. TRANSLATORS: On GNU/Hurd, a "translator" is similar to a filesystem -#. mount, but handled by a userland daemon, whose invocation command line -#. is being fetched here. First %s is the file being looked at (for which -#. we are fetching the "translator" command line), second %s is the error -#. message. -#. -#: grub-core/osdep/hurd/getroot.c:79 -#, c-format -msgid "cannot get translator command line for path `%s': %s" -msgstr "impossível obter a linha de comando do tradutor para \"%s\": %s" - -#: grub-core/osdep/hurd/getroot.c:82 -#, c-format -msgid "translator command line is empty for path `%s'" -msgstr "linha de comando do tradutor vazia para \"%s\"" - -#. TRANSLATORS: we expect to get something like -#. /hurd/foobar --option1 --option2=baz /dev/something -#. -#: grub-core/osdep/hurd/getroot.c:98 -#, c-format -msgid "" -"translator `%s' for path `%s' has several non-option words, at least `%s' " -"and `%s'" -msgstr "" -"o tradutor \"%s\" para \"%s\" tem várias palavras não-opção, pelo menos \"%s" -"\" e \"%s\"" - -#. TRANSLATORS: we expect to get something like -#. /hurd/foobar --option1 --option2=baz /dev/something -#. -#: grub-core/osdep/hurd/getroot.c:109 -#, c-format -msgid "" -"translator `%s' for path `%s' is given only options, cannot find device part" -msgstr "" -"o tradutor \"%s\" para \"%s\" só recebeu opções, impossível encontrar o " -"caminho do dispositivo" - -#: grub-core/osdep/hurd/hostdisk.c:73 -#, c-format -msgid "Storage information for `%s' does not include type" -msgstr "A informação de armazenamento de \"%s\" não inclui o tipo" - -#: grub-core/osdep/hurd/hostdisk.c:75 -#, c-format -msgid "`%s' is not a local disk" -msgstr "\"%s\" não é um disco local" - -#: grub-core/osdep/hurd/hostdisk.c:78 -#, c-format -msgid "" -"Storage information for `%s' indicates neither a plain partition nor a plain " -"disk" -msgstr "" -"A informação de armazenamento de \"%s\" não indica nem uma partição simples " -"nem um disco simples" - -#: grub-core/osdep/linux/blocklist.c:81 grub-core/osdep/linux/blocklist.c:96 -#: grub-core/osdep/linux/blocklist.c:122 -#, c-format -msgid "can't retrieve blocklists: %s" -msgstr "impossível obter listas de blocos: %s" - -#: grub-core/osdep/linux/blocklist.c:84 -msgid "blocksize is not divisible by 512" -msgstr "tamanho de bloco não divisível por 512" - -#: grub-core/osdep/linux/blocklist.c:86 -msgid "invalid zero blocksize" -msgstr "tamanho de bloco zero inválido" - -#: grub-core/osdep/linux/blocklist.c:90 util/setup.c:744 -msgid "can't retrieve blocklists" -msgstr "impossível obter listas de bloco" - -#: grub-core/osdep/linux/getroot.c:154 -#, c-format -msgid "ioctl RAID_VERSION error: %s" -msgstr "erro ioctl RAID_VERSION: %s" - -#: grub-core/osdep/linux/getroot.c:160 grub-core/osdep/linux/getroot.c:164 -#, c-format -msgid "unsupported RAID version: %d.%d" -msgstr "versão RAID não suportada: %d.%d" - -#: grub-core/osdep/linux/getroot.c:169 -#, c-format -msgid "ioctl GET_ARRAY_INFO error: %s" -msgstr "erro ioctl GET_ARRAY_INFO: %s" - -#: grub-core/osdep/linux/getroot.c:178 -#, c-format -msgid "ioctl GET_DISK_INFO error: %s" -msgstr "erro ioctl GET_DISK_INFO: %s" - -#: grub-core/osdep/linux/getroot.c:608 grub-core/osdep/linux/getroot.c:678 -#: grub-core/osdep/linux/hostdisk.c:126 grub-core/osdep/unix/getroot.c:253 -#: grub-core/osdep/unix/getroot.c:642 grub-core/osdep/unix/platform.c:92 -#: grub-core/osdep/unix/platform.c:100 -#, c-format -msgid "Unable to open stream from %s: %s" -msgstr "Impossível abrir fluxo de %s: %s" - -#: grub-core/osdep/linux/getroot.c:1033 -#, c-format -msgid "unknown kind of RAID device `%s'" -msgstr "tipo de serviço RAID \"%s\" desconhecido" - -#: grub-core/osdep/linux/ofpath.c:181 -#, c-format -msgid "`obppath' not found in parent dirs of `%s', no IEEE1275 name discovery" -msgstr "" -"\"obppath\" não encontrado em pastas-mãe de \"%s\", sem descoberta de nome " -"IEEE1275" - -#: grub-core/osdep/linux/ofpath.c:222 grub-core/osdep/unix/getroot.c:505 -#: grub-core/osdep/unix/getroot.c:529 grub-core/osdep/unix/relpath.c:49 -#: util/grub-install.c:984 util/grub-install.c:1331 util/grub-probe.c:323 -#, c-format -msgid "failed to get canonical path of `%s'" -msgstr "falha ao obter o caminho canónico de \"%s\"" - -#: grub-core/osdep/linux/ofpath.c:740 -#, c-format -msgid "unknown device type %s" -msgstr "tipo de dispositivo %s desconhecido" - -#: grub-core/osdep/linux/ofpath.c:758 util/ieee1275/grub-ofpathname.c:39 -#, c-format -msgid "Usage: %s DEVICE\n" -msgstr "Uso: %s DISPOSITIVO\n" - -#: grub-core/osdep/unix/exec.c:86 grub-core/osdep/unix/exec.c:172 -#: grub-core/osdep/unix/exec.c:217 -#, c-format -msgid "Unable to fork: %s" -msgstr "Impossível bifurcar: %s" - -#: grub-core/osdep/unix/exec.c:166 grub-core/osdep/unix/exec.c:211 -#, c-format -msgid "Unable to create pipe: %s" -msgstr "Impossível criar túnel: %s" - -#: grub-core/osdep/unix/getroot.c:370 -msgid "cannot save the original directory" -msgstr "impossível gravar a pasta original" - -#: grub-core/osdep/unix/getroot.c:423 grub-core/osdep/unix/getroot.c:480 -#: grub-core/osdep/unix/getroot.c:489 -msgid "cannot restore the original directory" -msgstr "impossível restaurar a pasta original" - -#. TRANSLATORS: "stat" comes from the name of POSIX function. -#: grub-core/osdep/unix/getroot.c:551 grub-core/osdep/unix/hostdisk.c:61 -#: grub-core/osdep/unix/relpath.c:73 grub-core/osdep/unix/relpath.c:97 -#: util/getroot.c:160 util/getroot.c:162 util/grub-install.c:774 -#: util/grub-macbless.c:70 -#, c-format -msgid "cannot stat `%s': %s" -msgstr "impossível analisar \"%s\": %s" - -#: grub-core/osdep/unix/hostdisk.c:293 -#, c-format -msgid "cannot make temporary file: %s" -msgstr "impossível fazer ficheiro temporário: %s" - -#: grub-core/osdep/unix/hostdisk.c:311 -#, c-format -msgid "cannot make temporary directory: %s" -msgstr "impossível fazer pasta temporária: %s" - -#: grub-core/osdep/unix/platform.c:77 -#, c-format -msgid "" -"couldn't find IEEE1275 device path for %s.\n" -"You will have to set `boot-device' variable manually" -msgstr "" -"impossível encontrar o caminho de dispositivo IEEE1275 para %s.\n" -"Terá de definir a variável \"boot-device\" manualmente" - -#. TRANSLATORS: This message is shown when required executable `%s' -#. isn't found. -#: grub-core/osdep/unix/platform.c:149 grub-core/osdep/unix/platform.c:189 -#, c-format -msgid "%s: not found" -msgstr "%s: não encontrado" - -#: grub-core/osdep/unix/platform.c:225 -#, c-format -msgid "" -"`nvsetenv' failed. \n" -"You will have to set `boot-device' variable manually. At the IEEE1275 " -"prompt, type:\n" -" %s\n" -msgstr "" -"\"nvsetenv\" falhou. \n" -"Terá de definir a variável \"boot-device\" manualmente. Na linha do " -"IEEE1275, digite:\n" -" %s\n" - -#: grub-core/osdep/unix/platform.c:240 -msgid "You will have to set `SystemPartition' and `OSLoader' manually." -msgstr "Terá de definir \"SystemPartition\" e \"OSLoader\" manualmente" - -#. TRANSLATORS: canonical pathname is the -#. complete one e.g. /etc/fstab. It has -#. to contain `/' normally, if it doesn't -#. we're in trouble and throw this error. -#: grub-core/osdep/unix/relpath.c:90 -msgid "no `/' in canonical filename" -msgstr "sem \"/\" no nome de ficheiro canónico" - -#: grub-core/osdep/windows/hostdisk.c:151 -msgid "cygwin_conv_path() failed" -msgstr "cygwin_conv_path() falhou" - -#: grub-core/osdep/windows/hostdisk.c:501 util/grub-install.c:570 -msgid "couldn't retrieve random data" -msgstr "impossível obter dados aleatórios" - -#: grub-core/osdep/windows/platform.c:97 -msgid "Insufficient privileges to access firmware, assuming BIOS" -msgstr "Privilégios insuficientes para aceder ao firmware, a assumir a BIOS" - -#: grub-core/osdep/windows/platform.c:225 -msgid "no EFI routines are available when running in BIOS mode" -msgstr "não há rotinas EFI disponíveis quando em execução em modo BIOS" - -#: grub-core/osdep/windows/platform.c:240 -msgid "unexpected EFI error" -msgstr "erro EFI inesperado" - -#: grub-core/osdep/windows/platform.c:315 -msgid "Couldn't find a free BootNNNN slot" -msgstr "Impossível encontrar uma ranhura BootNNNN livre" - -#: grub-core/partmap/gpt.c:191 -msgid "" -"this GPT partition label contains no BIOS Boot Partition; embedding won't be " -"possible" -msgstr "" -"este rótulo de partição GPT não contém uma BIOS Boot Partition; a integração " -"não será possível" - -#: grub-core/partmap/gpt.c:196 -msgid "your BIOS Boot Partition is too small; embedding won't be possible" -msgstr "" -"a sua BIOS Boot Partition é muito pequena; a integração não será possível" - -#. TRANSLATORS: MBR gap and boot track is the same thing and is the space -#. between MBR and first partitition. If your language translates well only -#. "boot track", you can just use it everywhere. Next two messages are about -#. RAID controllers/software bugs which GRUB has to live with. Please spread -#. the message that these are bugs in other software and not merely -#. suboptimal behaviour. -#: grub-core/partmap/msdos.c:51 -#, c-format -msgid "" -"Sector %llu is already in use by raid controller `%s'; avoiding it. Please " -"ask the manufacturer not to store data in MBR gap" -msgstr "" -"O sector %llu já está em uso pelo controlador raid \"%s\"; a evitá-lo. Por " -"favor, peça ao fabricante que não armazene dados no espaço pós-MBR" - -#: grub-core/partmap/msdos.c:54 -#, c-format -msgid "" -"Sector %llu is already in use by the program `%s'; avoiding it. This " -"software may cause boot or other problems in future. Please ask its authors " -"not to store data in the boot track" -msgstr "" -"O sector %llu já está em uso pelo programa \"%s\"; a evitá-lo. Este " -"programa, de futuro, pode causar problemas de arranque ou outros. Por favor, " -"peça ao fabricante que não armazene dados no espaço pós-MBR" - -#: grub-core/partmap/msdos.c:384 -msgid "" -"other software is using the embedding area, and there is not enough room for " -"core.img. Such software is often trying to store data in a way that avoids " -"detection. We recommend you investigate" -msgstr "" -"outro programa está a usar a área de integração e não há espaço suficiente " -"para core.img. Tais programas estão frequentemente a tentar armazenar dados " -"de forma a evitar a detecção. Recomendamos que investigue" - -#: grub-core/partmap/msdos.c:395 -msgid "" -"this msdos-style partition label has no post-MBR gap; embedding won't be " -"possible" -msgstr "" -"este rótulo de partiçao de estilo msdos não tem espaço pós-MBR; a integração " -"não será possível" - -#: grub-core/partmap/msdos.c:404 -msgid "your embedding area is unusually small. core.img won't fit in it." -msgstr "" -"a sua área de integração é invulgarmente pequena; core.img não vai lá caber." - -#: grub-core/parttool/msdospart.c:39 -msgid "Make partition active" -msgstr "Tornar a partição activa" - -#: grub-core/parttool/msdospart.c:51 -msgid "not a primary partition" -msgstr "não é partição primária" - -#: grub-core/parttool/msdospart.c:69 -#, c-format -msgid "Partition %d is active now. \n" -msgstr "A partição %d está activa agora. \n" - -#: grub-core/parttool/msdospart.c:74 -#, c-format -msgid "Cleared active flag on %d. \n" -msgstr "Bandeira de activa limpa em %d\n" - -#: grub-core/parttool/msdospart.c:87 -msgid "Change partition type" -msgstr "Alterar tipo de partição" - -#: grub-core/parttool/msdospart.c:88 -msgid "Set `hidden' flag in partition type" -msgstr "Definir bandeira \"hidden\" no tipo de partição" - -#: grub-core/parttool/msdospart.c:130 -#, c-format -msgid "the partition type 0x%x isn't valid" -msgstr "o tipo de partição 0x%x não é válido" - -#. TRANSLATORS: In this case we're actually writing to the disk and actively -#. modifying partition type rather than just defining it. -#: grub-core/parttool/msdospart.c:137 -#, c-format -msgid "Setting partition type to 0x%x\n" -msgstr "A escrever o tipo de partição 0x%x no disco\n" - -#. TRANSLATORS: 0 is a quantifier. "break" (similar to bash) -#. can be used e.g. to break 3 loops at once. -#. But asking it to break 0 loops makes no sense. -#: grub-core/script/execute.c:143 -msgid "can't break 0 loops" -msgstr "impossível saltar de 0 ciclos" - -#. TRANSLATORS: It's about not being -#. inside a function. "return" can be used only -#. in a function and this error occurs if it's used -#. anywhere else. -#: grub-core/script/execute.c:227 -msgid "not in function body" -msgstr "não está no corpo da função" - -#: grub-core/script/execute.c:371 -#, c-format -msgid "invalid variable name `%s'" -msgstr "nome de variável \"%s\" invaĺido" - -#: grub-core/script/execute.c:953 -msgid "cannot allocate command buffer" -msgstr "impossível alocar o buffer de comandos" - -#: grub-core/script/lexer.c:144 util/grub-fstest.c:330 -msgid "unexpected end of file" -msgstr "fim de ficheiro inesperado" - -#: grub-core/script/main.c:55 grub-core/script/main.c:57 -#: grub-core/script/main.c:59 grub-core/script/main.c:67 -msgid "[NUM]" -msgstr "[NÚM]" - -#: grub-core/script/main.c:55 -msgid "Exit from loops" -msgstr "Sair de ciclos" - -#: grub-core/script/main.c:57 -msgid "Continue loops" -msgstr "Continuar ciclos" - -#. TRANSLATORS: Positional arguments are -#. arguments $0, $1, $2, ... -#: grub-core/script/main.c:62 -msgid "Shift positional parameters." -msgstr "Deslocar parâmetros posicionais." - -#: grub-core/script/main.c:64 -msgid "[VALUE]..." -msgstr "[VALOR]..." - -#: grub-core/script/main.c:65 -msgid "Set positional parameters." -msgstr "Definir parâmetros posicionais." - -#. TRANSLATORS: It's a command description -#. and "Return" is a verb, not a noun. The -#. command in question is "return" and -#. has exactly the same semanics as bash -#. equivalent. -#: grub-core/script/main.c:73 -msgid "Return from a function." -msgstr "Regressar de uma função." - -#: grub-core/term/gfxterm_background.c:176 -msgid "[-m (stretch|normal)] FILE" -msgstr "[-m (stretch|normal)] FICHEIRO" - -#: grub-core/term/gfxterm_background.c:177 -msgid "Load background image for active terminal." -msgstr "Carregar imagem de fundo para o terminal activo." - -#: grub-core/term/gfxterm_background.c:182 util/grub-install.c:302 -#: util/grub-install.c:303 util/grub-mkrescue.c:107 util/grub-mkrescue.c:108 -#: util/grub-render-label.c:61 util/grub-render-label.c:63 -msgid "COLOR" -msgstr "COR" - -#: grub-core/term/gfxterm_background.c:183 -msgid "Set background color for active terminal." -msgstr "Carregar cor de fundo para o terminal activo." - -#: grub-core/term/i386/coreboot/cbmemc.c:139 -msgid "Show CBMEM console content." -msgstr "Mostrar conteúdo da consola CBMEM." - -#: grub-core/term/serial.c:57 -msgid "Set the serial unit." -msgstr "Definir a unidade série." - -#: grub-core/term/serial.c:58 -msgid "Set the serial port address." -msgstr "Definir o endereço da porta série." - -#: grub-core/term/serial.c:59 -msgid "Set the serial port speed." -msgstr "Definir a velocidade da porta série." - -#: grub-core/term/serial.c:60 -msgid "Set the serial port word length." -msgstr "Definir o tamanho de palavra da porta série." - -#: grub-core/term/serial.c:61 -msgid "Set the serial port parity." -msgstr "Definir a paridade da porta série." - -#: grub-core/term/serial.c:62 -msgid "Set the serial port stop bits." -msgstr "Definir os bits de paragem da porta série." - -#: grub-core/term/serial.c:63 -msgid "Set the base frequency." -msgstr "Definir a frequência base." - -#: grub-core/term/serial.c:64 -msgid "Enable/disable RTS/CTS." -msgstr "Activar/Desactivar RTS/CTS." - -#: grub-core/term/serial.c:218 -#, c-format -msgid "serial port `%s' isn't found" -msgstr "porta série \"%s\" não encontrada" - -#: grub-core/term/serial.c:254 -msgid "unsupported serial port flow control" -msgstr "controlo de fluxo de porta série não suportado" - -#: grub-core/term/serial.c:429 -msgid "[OPTIONS...]" -msgstr "[OPÇÕES...]" - -#: grub-core/term/serial.c:430 -msgid "Configure serial port." -msgstr "Configurar a porta série." - -#: grub-core/term/terminfo.c:184 -#, c-format -msgid "unknown terminfo type `%s'" -msgstr "terminfo tipo \"%s\" desconhecido" - -#: grub-core/term/terminfo.c:668 -msgid "ASCII" -msgstr "ASCII" - -#: grub-core/term/terminfo.c:671 -msgid "UTF-8" -msgstr "UTF-8" - -#. TRANSLATORS: visually ordered UTF-8 is a non-compliant encoding -#. based on UTF-8 with right-to-left languages written in reverse. -#. Used on some terminals. Normal UTF-8 is refered as -#. "logically-ordered UTF-8" by opposition. -#: grub-core/term/terminfo.c:677 -msgid "visually-ordered UTF-8" -msgstr "UTF-8 visualmente ordenado" - -#: grub-core/term/terminfo.c:680 -msgid "Unknown encoding" -msgstr "Codificação desconhecida" - -#: grub-core/term/terminfo.c:684 -msgid "Current terminfo types:" -msgstr "Tipos terminfo actuais:" - -#: grub-core/term/terminfo.c:699 -msgid "Terminal is ASCII-only [default]." -msgstr "O terminal é só ASCII [predefinição]." - -#: grub-core/term/terminfo.c:700 -msgid "Terminal is logical-ordered UTF-8." -msgstr "O terminal é UTF-8 logicamente ordenado." - -#: grub-core/term/terminfo.c:701 -msgid "Terminal is visually-ordered UTF-8." -msgstr "O terminal é UTF-8 visualmente ordenado." - -#: grub-core/term/terminfo.c:703 -msgid "Terminal has specified geometry." -msgstr "O terminal tem geometria específica." - -#. TRANSLATORS: "x" has to be entered in, like an identifier, so please don't -#. use better Unicode codepoints. -#: grub-core/term/terminfo.c:706 -msgid "WIDTHxHEIGHT." -msgstr "LARGURAxALTURA." - -#: grub-core/term/terminfo.c:746 -msgid "incorrect terminal dimensions specification" -msgstr "especificação de dimensões do terminal incorrecta" - -#: grub-core/term/terminfo.c:776 -#, c-format -msgid "terminal %s isn't found or it's not handled by terminfo" -msgstr "terminal %s não encontrado ou não gerido pelo terminfo" - -#: grub-core/term/terminfo.c:785 -msgid "[[-a|-u|-v] [-g WxH] TERM [TYPE]]" -msgstr "[[-a|-u|-v] [-g WxH] TERMINAL [TIPO]]" - -#: grub-core/term/terminfo.c:786 -msgid "Set terminfo type of TERM to TYPE.\n" -msgstr "Definir o tipo terminfo de TERMINAL para TIPO.\n" - -#. TRANSLATORS: this is the BLOCK-argument, not -#. environment block. -#: grub-core/tests/test_blockarg.c:49 -msgid "Print and execute block argument." -msgstr "Imprimir e executar o argumento de bloco." - -#. TRANSLATORS: We're speaking about bitmap images like -#. JPEG or PNG. -#: grub-core/video/bitmap.c:209 -#, c-format -msgid "bitmap file `%s' is of unsupported format" -msgstr "ficheiro de imagem \"%s\" de formato não suportado" - -#: grub-core/video/i386/pc/vbe.c:1191 -#, c-format -msgid " VBE info: version: %d.%d OEM software rev: %d.%d\n" -msgstr " informação VBE: versão: %d.%d OEM rev. programa: %d.%d\n" - -#: grub-core/video/i386/pc/vbe.c:1198 -#, c-format -msgid " total memory: %d KiB\n" -msgstr " memória total: %d KiB\n" - -#: grub-core/video/video.c:596 grub-core/video/video.c:762 -msgid "no suitable video mode found" -msgstr "sem modo de vídeo adequado encontrado" - -#: include/grub/crypto.h:403 -msgid "access denied" -msgstr "acesso negado" - -#: include/grub/util/install.h:30 include/grub/util/install.h:35 -msgid "MODULES" -msgstr "MÓDULOS" - -#: include/grub/util/install.h:31 -msgid "pre-load specified modules MODULES" -msgstr "pré-carregar MÓDULOS especificados" - -#: include/grub/util/install.h:33 -msgid "embed a specific DTB" -msgstr "integrar um DTB específico" - -#: include/grub/util/install.h:36 -msgid "install only MODULES and their dependencies [default=all]" -msgstr "instalar só MÓDULOS e suas dependências [predefinição=tudo]" - -#: include/grub/util/install.h:37 -msgid "THEMES" -msgstr "TEMAS" - -#: include/grub/util/install.h:38 -#, c-format -msgid "install THEMES [default=%s]" -msgstr "instalar TEMAS [predefinição=%s]" - -#: include/grub/util/install.h:39 -msgid "FONTS" -msgstr "LETRAS" - -#: include/grub/util/install.h:40 -#, c-format -msgid "install FONTS [default=%s]" -msgstr "instalar LETRAS [predefinição=%s]" - -#: include/grub/util/install.h:41 -msgid "LOCALES" -msgstr "IDIOMAS" - -#: include/grub/util/install.h:42 -msgid "install only LOCALES [default=all]" -msgstr "instalar só IDIOMAS [predefinição=todos]" - -#: include/grub/util/install.h:45 -msgid "compress GRUB files [optional]" -msgstr "comprimir ficheiros GRUB [opcional]" - -#: include/grub/util/install.h:48 util/grub-mkimage.c:83 -msgid "choose the compression to use for core image" -msgstr "escolher a compressão a usar para a imagem de núcleo" - -#. TRANSLATORS: platform here isn't identifier. It can be translated. -#: include/grub/util/install.h:51 include/grub/util/install.h:54 -#: util/grub-mkimage.c:66 -#, c-format -msgid "use images and modules under DIR [default=%s/]" -msgstr "usar imagens e módulos em PASTA [predefinição=%s/]" - -#: include/grub/util/install.h:57 -#, c-format -msgid "use translations under DIR [default=%s]" -msgstr "usar traduções em PASTA [predefinição=%s]" - -#: include/grub/util/install.h:60 -#, c-format -msgid "use themes under DIR [default=%s]" -msgstr "usar temas em PASTA [predefinição=%s]" - -#: include/grub/util/install.h:65 util/grub-mkimage.c:78 -msgid "embed FILE as public key for signature checking" -msgstr "integrar ficheiro como chave pública para verificação de assinatura" - -#: util/editenv.c:59 util/grub-editenv.c:201 util/grub-install-common.c:535 -#: util/grub-mkimage.c:315 util/setup.c:791 -#, c-format -msgid "cannot sync `%s': %s" -msgstr "impossível sincronizar \"%s\": %s" - -#: util/editenv.c:64 -#, c-format -msgid "cannot rename the file %s to %s" -msgstr "impossível renomear o ficheiro %s como %s" - -#: util/getroot.c:402 -#, c-format -msgid "disk does not exist, so falling back to partition device %s" -msgstr "o disco não existe, a recuar para o dispositivo de partição %s" - -#: util/grub-editenv.c:45 util/grub-fstest.c:506 -msgid "Commands:" -msgstr "Comandos:" - -#: util/grub-editenv.c:47 -msgid "Create a blank environment block file." -msgstr "Criar um ficheiro de bloco de ambiente vazio." - -#: util/grub-editenv.c:49 -msgid "List the current variables." -msgstr "Listar as variáveis actuais." - -#. TRANSLATORS: "set" is a keyword. It's a summary of "set" subcommand. -#: util/grub-editenv.c:51 -msgid "set [NAME=VALUE ...]" -msgstr "set [NOME=VALOR ...]" - -#: util/grub-editenv.c:52 -msgid "Set variables." -msgstr "Definir variáveis." - -#. TRANSLATORS: "unset" is a keyword. It's a summary of "unset" subcommand. -#: util/grub-editenv.c:54 -msgid "unset [NAME ...]" -msgstr "unset [NOME ...]" - -#: util/grub-editenv.c:55 -msgid "Delete variables." -msgstr "Eliminar variáveis." - -#: util/grub-editenv.c:57 -msgid "Options:" -msgstr "Opções:" - -#: util/grub-editenv.c:84 -msgid "You need to specify at least one command.\n" -msgstr "Tem de especificar pelo menos um comando.\n" - -#: util/grub-editenv.c:113 -msgid "FILENAME COMMAND" -msgstr "NOMEFICHEIRO COMANDO" - -#: util/grub-editenv.c:114 -msgid "Tool to edit environment block." -msgstr "Ferramenta para editar o bloco de ambiente" - -#: util/grub-editenv.c:116 -#, c-format -msgid "" -"If FILENAME is `-', the default value %s is used.\n" -"\n" -"There is no `delete' command; if you want to delete the whole environment\n" -"block, use `rm %s'." -msgstr "" -"Se NOMEFICHEIRO for \"-\", será usado o valor predefinido %s.\n" -"\n" -"Não há um comando \"delete\"; se pretende eliminar todo o bloco de " -"ambiente,\n" -"use \"rm %s\"." - -#: util/grub-editenv.c:162 -msgid "invalid environment block" -msgstr "bloco de ambiente inválido" - -#: util/grub-editenv.c:217 -#, c-format -msgid "invalid parameter %s" -msgstr "parâmetro %s inválido" - -#: util/grub-editenv.c:222 -msgid "environment block too small" -msgstr "bloco de ambiente muito pequeno" - -#: util/grub-fstest.c:107 -#, c-format -msgid "disk read fails at offset %lld, length %lld" -msgstr "falha ao ler o disco no desvio %lld, tamanho %lld" - -#: util/grub-fstest.c:138 -#, c-format -msgid "invalid skip value %lld" -msgstr "valor de salto %lld inválido" - -#: util/grub-fstest.c:160 util/grub-fstest.c:246 -#, c-format -msgid "read error at offset %llu: %s" -msgstr "erro de leitura no desvio %llu: %s" - -#: util/grub-fstest.c:210 -#, c-format -msgid "cannot open OS file `%s': %s" -msgstr "impossível abrir ficheiro de SO \"%s\": %s" - -#: util/grub-fstest.c:225 util/misc.c:126 -#, c-format -msgid "cannot write to the stdout: %s" -msgstr "impossível escrever bloco em stdout: %s" - -#: util/grub-fstest.c:259 -#, c-format -msgid "compare fail at offset %llu" -msgstr "falha ao comparar no desvio %llu" - -#: util/grub-fstest.c:280 util/grub-fstest.c:314 -#, c-format -msgid "OS file %s open error: %s" -msgstr "falha ao abrir ficheiro de SO %s: %s" - -#: util/grub-fstest.c:402 util/grub-mount.c:392 -#, c-format -msgid "`loopback' command fails: %s" -msgstr "falha no comando \"loopback\": %s" - -#: util/grub-fstest.c:413 util/grub-mount.c:402 -#, c-format -msgid "`cryptomount' command fails: %s" -msgstr "falha no comando \"cryptomount\": %s" - -#: util/grub-fstest.c:474 util/grub-fstest.c:478 -msgid "couldn't retrieve UUID" -msgstr "impossível obter UUID" - -#: util/grub-fstest.c:507 -msgid "ls PATH" -msgstr "ls CAMINHO" - -#: util/grub-fstest.c:507 -msgid "List files in PATH." -msgstr "Listar ficheiros em CAMINHO." - -#: util/grub-fstest.c:508 -msgid "cp FILE LOCAL" -msgstr "cp FICHEIRO LOCAL" - -#: util/grub-fstest.c:508 -msgid "Copy FILE to local file LOCAL." -msgstr "Copiar FICHEIRO para ficheiro local LOCAL" - -#: util/grub-fstest.c:509 -msgid "cat FILE" -msgstr "cat FICHEIRO" - -#: util/grub-fstest.c:509 -msgid "Copy FILE to standard output." -msgstr "Copiar FICHEIRO para a saída padrão." - -#: util/grub-fstest.c:510 -msgid "cmp FILE LOCAL" -msgstr "cmp FICHEIRO LOCAL" - -#: util/grub-fstest.c:510 -msgid "Compare FILE with local file LOCAL." -msgstr "Comparar FICHEIRO com o ficheiro local LOCAL." - -#: util/grub-fstest.c:511 -msgid "hex FILE" -msgstr "hex FICHEIRO" - -#: util/grub-fstest.c:511 -msgid "Show contents of FILE in hex." -msgstr "Mostrar conteúdo de FICHEIRO em hexadecimal." - -#: util/grub-fstest.c:512 -msgid "crc FILE" -msgstr "crc FICHEIRO" - -#: util/grub-fstest.c:512 -msgid "Get crc32 checksum of FILE." -msgstr "Obter a checksum crc32 de FICHEIRO." - -#: util/grub-fstest.c:513 -msgid "blocklist FILE" -msgstr "blocklist FICHEIRO" - -#: util/grub-fstest.c:513 -msgid "Display blocklist of FILE." -msgstr "Mostrar a lista de blocos de FICHEIRO." - -#: util/grub-fstest.c:514 -msgid "xnu_uuid DEVICE" -msgstr "xnu_uuid DISPSITIVO" - -#: util/grub-fstest.c:514 -msgid "Compute XNU UUID of the device." -msgstr "Calcular UUID XNU do dispsitivo." - -#. TRANSLATORS: bitmaps are images like e.g. in JPEG. -#: util/grub-fstest.c:517 util/grub-fstest.c:518 util/grub-fstest.c:519 -#: util/grub-mkfont.c:938 util/grub-mkfont.c:951 util/grub-mkfont.c:952 -#: util/grub-mkpasswd-pbkdf2.c:46 util/grub-mkpasswd-pbkdf2.c:47 -#: util/grub-mkpasswd-pbkdf2.c:48 -msgid "NUM" -msgstr "NÚM" - -#: util/grub-fstest.c:517 -msgid "Skip N bytes from output file." -msgstr "Saltar N bytes do ficheiro de saída." - -#: util/grub-fstest.c:518 -msgid "Handle N bytes in output file." -msgstr "Gerir N bytes no ficheiro de saída." - -#: util/grub-fstest.c:519 -msgid "Specify the number of input files." -msgstr "Especificar o número de ficheiros de entrada." - -#: util/grub-fstest.c:520 util/grub-mount.c:453 -msgid "Set debug environment variable." -msgstr "Definir a variável de ambiente de depuração." - -#: util/grub-fstest.c:521 util/grub-mount.c:454 -msgid "Mount crypto devices." -msgstr "Montar dispositivos crypto." - -#. TRANSLATORS: "prompt" is a keyword. -#: util/grub-fstest.c:524 util/grub-mount.c:457 -msgid "FILE|prompt" -msgstr "FICHEIRO|prompt" - -#: util/grub-fstest.c:524 util/grub-mount.c:457 -msgid "Load zfs crypto key." -msgstr "Carregar chave crypto zfs." - -#: util/grub-fstest.c:526 -msgid "Uncompress data." -msgstr "Descomprimir dados." - -#: util/grub-fstest.c:605 -msgid "Invalid disk count.\n" -msgstr "Total de discos inválido.\n" - -#. TRANSLATORS: disk count is optional but if it's there it must -#. be before disk list. So please don't imply disk count as mandatory. -#. -#: util/grub-fstest.c:613 -msgid "Disk count must precede disks list.\n" -msgstr "total de discos tem de estar antes da lista de discos.\n" - -#: util/grub-fstest.c:633 -msgid "No command is specified.\n" -msgstr "Nenhum comando especificado.\n" - -#: util/grub-fstest.c:638 -msgid "Not enough parameters to command.\n" -msgstr "Sem parâmetros suficientes para o comando.\n" - -#: util/grub-fstest.c:711 -#, c-format -msgid "Invalid command %s.\n" -msgstr "Comando %s inválido.\n" - -#: util/grub-fstest.c:724 -msgid "IMAGE_PATH COMMANDS" -msgstr "CAMINHO_IMAGEM COMANDOS" - -#: util/grub-fstest.c:725 util/grub-mount.c:553 -msgid "Debug tool for filesystem driver." -msgstr "Ferramenta de depuração para o controlador do sistema de ficheiros." - -#: util/grub-glue-efi.c:53 -msgid "set input filename for 32-bit part." -msgstr "definir nome de ficheiro de entrada para parte 32-bit." - -#: util/grub-glue-efi.c:55 -msgid "set input filename for 64-bit part." -msgstr "definir nome de ficheiro de entrada para parte 64-bit." - -#: util/grub-glue-efi.c:57 util/grub-mklayout.c:55 util/grub-render-label.c:71 -msgid "set output filename. Default is STDOUT" -msgstr "definir nome de ficheiro de saída. Predefinido como STDOUT" - -#: util/grub-glue-efi.c:94 util/grub-mklayout.c:476 -#: util/grub-mkpasswd-pbkdf2.c:86 util/grub-render-label.c:131 -msgid "[OPTIONS]" -msgstr "[OPÇÕES]" - -#: util/grub-glue-efi.c:95 -msgid "Glue 32-bit and 64-bit binary into Apple universal one." -msgstr "Colar binários 32-bit e 64-bit num só Apple universal." - -#: util/grub-glue-efi.c:116 -msgid "Missing input file\n" -msgstr "Ficheiro de entrada em falta\n" - -#: util/grub-install-common.c:127 util/grub-install-common.c:151 -#, c-format -msgid "cannot copy `%s' to `%s': %s" -msgstr "impossível copiar \"%s\" para \"%s\": %s" - -#: util/grub-install-common.c:147 -#, c-format -msgid "can't compress `%s' to `%s'" -msgstr "impossível comprimir \"%s\" para \"%s\"" - -#: util/grub-install-common.c:196 util/grub-install-common.c:552 -#: util/grub-install-common.c:579 util/grub-install-common.c:621 -#, c-format -msgid "cannot open directory `%s': %s" -msgstr "impossível abrir a pasta \"%s\": \"%s\"" - -#: util/grub-install-common.c:212 -#, c-format -msgid "cannot delete `%s': %s" -msgstr "impossível eliminar \"%s\": \"%s\"" - -#: util/grub-install-common.c:324 util/grub-mkimage.c:209 -msgid "grub-mkimage is compiled without XZ support" -msgstr "grub-mkimage está compilado se suporte XZ" - -#: util/grub-install-common.c:332 util/grub-mkimage.c:217 -#, c-format -msgid "Unknown compression format %s" -msgstr "Formato de compressão %s desconhecido" - -#: util/grub-install-common.c:400 -#, c-format -msgid "Unrecognized compression `%s'" -msgstr "Compressão \"%s\" não reconhecida" - -#: util/grub-install-common.c:509 -#, c-format -msgid "unknown target format %s" -msgstr "Formato alvo %s desconhecido" - -#: util/grub-install-common.c:700 -#, c-format -msgid "cannot find locale `%s'" -msgstr "impossível encontrar o idioma \"%s\"" - -#: util/grub-install-common.c:939 -#, c-format -msgid "%s doesn't exist. Please specify --target or --directory" -msgstr "%s não existe. Por favor, especifique --target ou --directory" - -#: util/grub-install-common.c:948 util/grub-install-common.c:951 -#, c-format -msgid "invalid modinfo file `%s'" -msgstr "ficheiro modinfo \"%s\" inválido" - -#: util/grub-install-common.c:966 -#, c-format -msgid "Unknown platform `%s-%s'" -msgstr "Plataforma \"%s-%s\" desconhecida" - -#: util/grub-install.c:238 -msgid "More than one install device?" -msgstr "Mais de um dispositivo de instalação?" - -#: util/grub-install.c:251 -#, c-format -msgid "" -"install GRUB images under the directory DIR/%s instead of the %s directory" -msgstr "instalar imagens GRUB sob PASTA/%s em vez da pasta %s" - -#: util/grub-install.c:256 util/grub-probe.c:734 -msgid "TARGET" -msgstr "ALVO" - -#. TRANSLATORS: "TARGET" as in "target platform". -#: util/grub-install.c:258 -#, c-format -msgid "install GRUB for TARGET platform [default=%s]; available targets: %s" -msgstr "" -"instalar o GRUB para a plataforma ALVO [predefinição=%s]; alvos disponíveis: " -"%s" - -#. TRANSLATORS: "may break" doesn't just mean that option wouldn't have any -#. effect but that it will make the resulting install unbootable from HDD. -#. TRANSLATORS: The potential breakage isn't limited to floppies but it's -#. likely to make the install unbootable from HDD. -#: util/grub-install.c:267 util/grub-setup.c:94 -msgid "" -"make the drive also bootable as floppy (default for fdX devices). May break " -"on some BIOSes." -msgstr "" -"tornar a unidade iniciável como floppy (predefinição para dispositivos fdX). " -"Pode quebrar o arranque nalgumas BIOSs." - -#: util/grub-install.c:270 -msgid "delete device map if it already exists" -msgstr "eliminar mapa do dispositivo, se já existir" - -#: util/grub-install.c:272 util/grub-setup.c:87 -msgid "install even if problems are detected" -msgstr "instalar mesmo que seja detectados problemas" - -#: util/grub-install.c:274 -msgid "use identifier file even if UUID is available" -msgstr "usar ficheirod identificador, mesmo que a UUID esteja disponível" - -#: util/grub-install.c:276 -msgid "" -"disk module to use (biosdisk or native). This option is only available on " -"BIOS target." -msgstr "" -"módulo de disco a usar (biosdisk ou nativo). Esta opção só está disponível " -"em alvo BIOS." - -#: util/grub-install.c:279 -msgid "" -"don't update the `boot-device'/`Boot*' NVRAM variables. This option is only " -"available on EFI and IEEE1275 targets." -msgstr "" -"não actualizar as variáveis NVRAM \"boot-device\"/\"Boot*\". Esta opção só " -"está disponível em alvos EFI e IEEE1275." - -#: util/grub-install.c:282 util/grub-setup.c:89 -msgid "do not probe for filesystems in DEVICE" -msgstr "não procurar sistemas de ficheiros em DISPOSITIVO" - -#: util/grub-install.c:284 -msgid "do not install bootsector" -msgstr "não instalar bootsector" - -#: util/grub-install.c:286 util/grub-setup.c:96 -msgid "" -"Do not apply any reed-solomon codes when embedding core.img. This option is " -"only available on x86 BIOS targets." -msgstr "" -"Não aplicar códigos reed-solomon ao integrar core.img. Esta opção só está " -"disponível em alvos x86 BIOS." - -#: util/grub-install.c:293 -msgid "" -"the installation device is removable. This option is only available on EFI." -msgstr "" -"o dispositivo de instalação é removível. Esta opção só está disponível em " -"EFI." - -#: util/grub-install.c:295 -msgid "ID" -msgstr "ID" - -#: util/grub-install.c:296 -msgid "the ID of bootloader. This option is only available on EFI and Macs." -msgstr "a ID do bootloader. Esta opção só está disponível em EFI e Macs." - -#: util/grub-install.c:298 -msgid "use DIR as the EFI System Partition root." -msgstr "usar PASTA como raiz de EFI System Partition." - -#: util/grub-install.c:300 -msgid "use DIR for PPC MAC install." -msgstr "usar PASTA para instalação de PPC MAC." - -#: util/grub-install.c:301 util/grub-mkrescue.c:106 -msgid "use FILE as font for label" -msgstr "usar FICHEIRO como letra para rótulo" - -#: util/grub-install.c:302 util/grub-mkrescue.c:107 -msgid "use COLOR for label" -msgstr "usar COR para rótulo" - -#: util/grub-install.c:303 util/grub-mkrescue.c:108 -msgid "use COLOR for label background" -msgstr "usar COR para fundo do rótulo" - -#: util/grub-install.c:304 util/grub-mkrescue.c:110 -msgid "use STRING as product version" -msgstr "usar CADEIA como versão do produto" - -#: util/grub-install.c:361 -msgid "[OPTION] [INSTALL_DEVICE]" -msgstr "[OPÇÃO] [DSIPOSITIVO_INSTALAÇÃO]" - -#: util/grub-install.c:362 -msgid "Install GRUB on your drive." -msgstr "Instalar o GRUB na sua unidade." - -#: util/grub-install.c:363 -#, c-format -msgid "" -"INSTALL_DEVICE must be system device filename.\n" -"%s copies GRUB images into %s. On some platforms, it may also install GRUB " -"into the boot sector." -msgstr "" -"DSIPOSITIVO_INSTALAÇÃO tem de ser um nome de ficheiro de dispositivo de " -"sistema.\n" -"%s copia imagens GRUB para %s. Nalgumas plataformas, pode também instalar o " -"GRUB no sector de arranque." - -#: util/grub-install.c:672 -#, c-format -msgid "the drive %s is defined multiple times in the device map %s" -msgstr "a unidade %s está definida múltiplas vezes no mapa do dispositivo %s" - -#: util/grub-install.c:878 -msgid "Unable to determine your platform. Use --target." -msgstr "Impossível determinar a sua plataforma. Use --target." - -#: util/grub-install.c:891 -#, c-format -msgid "Installing for %s platform.\n" -msgstr "A instalar para a plataforma %s.\n" - -#: util/grub-install.c:939 -msgid "install device isn't specified" -msgstr "dispositivo de instalação não especificado" - -#: util/grub-install.c:1057 -msgid "cannot find EFI directory" -msgstr "impossível encontrar a pasta EFI" - -#: util/grub-install.c:1060 util/grub-install.c:1209 util/grub-install.c:1254 -#: util/grub-macbless.c:76 util/grub-probe.c:329 util/setup.c:316 -#, c-format -msgid "cannot find a device for %s (is /dev mounted?)" -msgstr "impossível encontrar um dispositivo para %s (/dev está montada?)" - -#: util/grub-install.c:1069 util/grub-install.c:1217 util/grub-install.c:1270 -#: util/grub-install.c:1365 util/grub-macbless.c:80 util/grub-probe.c:372 -#, c-format -msgid "cannot find a GRUB drive for %s. Check your device.map" -msgstr "" -"impossível encontrar uma unidade GRUB para %s. Verifique o seu device.map" - -#: util/grub-install.c:1087 -#, c-format -msgid "%s doesn't look like an EFI partition" -msgstr "%s não parece ser uma partição EFI" - -#: util/grub-install.c:1129 util/grub-install.c:1614 -msgid "You've found a bug" -msgstr "Encontrou um erro" - -#: util/grub-install.c:1231 -#, c-format -msgid "filesystem on %s is neither HFS nor HFS+" -msgstr "o sistema de ficheiros em %s não é HFS nem HFS+" - -#: util/grub-install.c:1299 -#, c-format -msgid "" -"attempt to install to encrypted disk without cryptodisk enabled. Set `%s' in " -"file `%s'" -msgstr "" -"tentativa de instalar em disco encriptado sem cryptodisk activado. Defina " -"\"%s\" no ficheiro \"%s\"" - -#: util/grub-install.c:1410 util/grub-install.c:1772 util/grub-install.c:1872 -#, c-format -msgid "Can't create file: %s" -msgstr "Impossível criar ficheiro: %s" - -#: util/grub-install.c:1491 -msgid "no hints available for your platform. Expect reduced performance" -msgstr "" -"sem dicas disponíveis para a sua plataforma. Espere um desempenho reduzido" - -#. TRANSLATORS: This is a prefix in the log to indicate that usually -#. a command would be executed but due to an option was skipped. -#: util/grub-install.c:1702 -msgid "NOT RUNNING: " -msgstr "NÃO EXECUTADO: " - -#: util/grub-install.c:1806 -msgid "the chosen partition is not a PReP partition" -msgstr "a partição escolhida não é uma partição PReP" - -#: util/grub-install.c:1811 -msgid "failed to copy Grub to the PReP partition" -msgstr "falha ao copiar o Grub para a partição PReP" - -#: util/grub-install.c:1816 -#, c-format -msgid "" -"the PReP partition is not empty. If you are sure you want to use it, run dd " -"to clear it: `%s'" -msgstr "" -"a partição PReP não está vazia. Se tem a certeza de que a deseja utilizar, " -"execute dd para a limpar: \"%s\"" - -#: util/grub-install.c:1888 util/grub-install.c:1932 -#, c-format -msgid "efibootmgr failed to register the boot entry: %s" -msgstr "efibootmgr falhou ao registar a entrada de arranque: %s" - -#: util/grub-install.c:1916 -msgid "EFI bootloader id isn't specified." -msgstr "bootloader EFI não especificado." - -#: util/grub-install.c:1950 -msgid "WARNING: no platform-specific install was performed" -msgstr "AVISO: não se realizou nenhuma instalação específica da plataforma" - -#: util/grub-install.c:1957 -msgid "Installation finished. No error reported." -msgstr "Instalação terminada. Sem erros reportados." - -#: util/grub-macbless.c:101 -msgid "bless for x86-based macs" -msgstr "benção para macs baseados em x86" - -#: util/grub-macbless.c:103 -msgid "bless for ppc-based macs" -msgstr "benção para macs baseados em ppc-based" - -#: util/grub-macbless.c:136 util/grub-probe.c:823 -msgid "No path or device is specified.\n" -msgstr "Sem caminho ou dispositivo especificado.\n" - -#: util/grub-macbless.c:157 -msgid "--ppc PATH|--x86 FILE" -msgstr "--ppc CAMINHO|--x86 FICHEIRO" - -#: util/grub-macbless.c:158 -msgid "Mac-style bless on HFS or HFS+" -msgstr "Benção estilo Mac em HFS ou HFS+" - -#: util/grub-menulst2cfg.c:44 -#, c-format -msgid "Usage: %s [INFILE [OUTFILE]]\n" -msgstr "Uso: %s [FICHENTRADA [FICHSAÃDA]]\n" - -#: util/grub-mkfont.c:157 -#, c-format -msgid "Freetype Error %d loading glyph 0x%x for U+0x%x%s" -msgstr "Erro Freetype %d ao carregar carácter 0x%x para U+0x%x%s" - -#. TRANSLATORS: These qualifiers are used for cursive typography, -#. mainly Arabic. Note that the terms refer to the visual position -#. and not logical order and if used in left-to-right script then -#. leftmost is initial but with right-to-left script like Arabic -#. rightmost is the initial. -#: util/grub-mkfont.c:165 -msgid " (medial)" -msgstr " (média)" - -#: util/grub-mkfont.c:166 -msgid " (leftmost)" -msgstr " (esquerda)" - -#: util/grub-mkfont.c:167 -msgid " (rightmost)" -msgstr " (direita)" - -#: util/grub-mkfont.c:481 -#, c-format -msgid "Out of range substitution (%d, %d)\n" -msgstr "Substituição fora do intervalo (%d, %d)\n" - -#. TRANSLATORS: "lookup" is taken directly from font specifications -#. which are formulated as "Under condition X replace LOOKUP with -#. SUBSTITUITION". " -#: util/grub-mkfont.c:506 -#, c-format -msgid "Out of range lookup: %d\n" -msgstr "Procura fora do intervalo: %d\n" - -#: util/grub-mkfont.c:514 -#, c-format -msgid "Unsupported substitution type: %d\n" -msgstr "Tipo de substituição não suportado: %d\n" - -#: util/grub-mkfont.c:550 -#, c-format -msgid "Unsupported substitution specification: %d\n" -msgstr "Especificação de substituição não suportada: %d\n" - -#: util/grub-mkfont.c:582 -#, c-format -msgid "Unsupported coverage specification: %d\n" -msgstr "Cobertura de substituição não suportada: %d\n" - -#: util/grub-mkfont.c:622 -#, c-format -msgid "WARNING: unsupported font feature parameters: %x\n" -msgstr "AVISO: parâmetros e funcionalidade de letra não suportados: %x\n" - -#: util/grub-mkfont.c:936 util/grub-mkrescue.c:98 util/grub-mkstandalone.c:48 -msgid "save output in FILE [required]" -msgstr "gravar saída em FICHEIRO [requerido]" - -#. TRANSLATORS: some font files may have multiple faces (fonts). -#. This option is used to chose among them, the first face being '0'. -#. Rarely used. -#: util/grub-mkfont.c:942 -msgid "select face index" -msgstr "seleccionar o índice da letra" - -#: util/grub-mkfont.c:943 -msgid "FROM-TO[,FROM-TO]" -msgstr "DE-PARA[,DE-PARA]" - -#. TRANSLATORS: It refers to the range of characters in font. -#: util/grub-mkfont.c:945 -msgid "set font range" -msgstr "definir intervalo da letra" - -#. TRANSLATORS: "family name" for font is just a generic name without suffix -#. like "Bold". -#: util/grub-mkfont.c:949 -msgid "set font family name" -msgstr "definir nome de família da letra" - -#: util/grub-mkfont.c:950 -msgid "SIZE" -msgstr "TAMANHO" - -#: util/grub-mkfont.c:950 -msgid "set font size" -msgstr "definir tamanho da letra" - -#: util/grub-mkfont.c:951 -msgid "set font descent" -msgstr "definir redução da letra" - -#: util/grub-mkfont.c:952 -msgid "set font ascent" -msgstr "definir ampliação da letra" - -#: util/grub-mkfont.c:953 -msgid "convert to bold font" -msgstr "converter para letra em negrito" - -#: util/grub-mkfont.c:954 -msgid "force autohint" -msgstr "forçar dica automática" - -#: util/grub-mkfont.c:955 -msgid "disable hinting" -msgstr "desactivar dicas" - -#. TRANSLATORS: some fonts contain bitmap rendering for -#. some sizes. This option forces rerendering even if -#. pre-rendered bitmap is available. -#. -#: util/grub-mkfont.c:961 -msgid "ignore bitmap strikes when loading" -msgstr "ignorar bitmaps disponíveis ao carregar" - -#. TRANSLATORS: It refers to the range of characters in font. -#: util/grub-mkfont.c:1059 util/grub-mkfont.c:1075 -msgid "invalid font range" -msgstr "intervalo de letra inválido" - -#: util/grub-mkfont.c:1151 -msgid "[OPTIONS] FONT_FILES" -msgstr "[OPÇÕES] FICHEIROS_LETRA" - -#: util/grub-mkfont.c:1152 -msgid "Convert common font file formats into PF2" -msgstr "Converter formatos comuns de ficheiros de letras para PF2" - -#: util/grub-mkfont.c:1182 util/grub-mkrescue.c:483 -#: util/grub-mkstandalone.c:306 -msgid "output file must be specified" -msgstr "tem de especificar um ficheiro de saída" - -#: util/grub-mkfont.c:1185 -msgid "FT_Init_FreeType fails" -msgstr "FT_Init_FreeType falhou" - -#: util/grub-mkfont.c:1199 -#, c-format -msgid "can't open file %s, index %d: error %d" -msgstr "impossível abrir o ficheiro %s, índice %d: erro %d" - -#: util/grub-mkfont.c:1229 -#, c-format -msgid "can't set %dx%d font size: Freetype error %d: %s" -msgstr "impossível definir tamanho de letra %dx%d: erro Freetype %d: %s" - -#: util/grub-mkimage.c:67 -msgid "set prefix directory" -msgstr "definir pasta de prefixo" - -#. TRANSLATORS: "memdisk" here isn't an identifier, it can be translated. -#. "embed" is a verb (command description). " -#: util/grub-mkimage.c:71 -msgid "" -"embed FILE as a memdisk image\n" -"Implies `-p (memdisk)/boot/grub' and overrides any prefix supplied " -"previously, but the prefix itself can be overridden by later options" -msgstr "" -"integrar FICHEIRO como imagem de disco de memória\n" -"Implica \"-p (memdisk)/boot/grub\" e sobrepõe quaisquer prefixos dados " -"anteriormente, mas o prefixo pode ser sobreposto por opções posteriores" - -#: util/grub-mkimage.c:74 -msgid "embed FILE as a device tree (DTB)\n" -msgstr "integrar FICHEIRO como árvore de dispositivo (DTB)\n" - -#: util/grub-mkimage.c:76 -msgid "embed FILE as an early config" -msgstr "integrar FICHEIRO como configuração inicial" - -#. TRANSLATORS: NOTE is a name of segment. -#: util/grub-mkimage.c:80 -msgid "add NOTE segment for CHRP IEEE1275" -msgstr "adicionar segmento NOTA para CHRP IEEE1275" - -#: util/grub-mkimage.c:81 -msgid "output a generated image to FILE [default=stdout]" -msgstr "imprimir uma imagem gerada para FICHEIRO [predefinição=stdout]" - -#: util/grub-mkimage.c:82 -msgid "FORMAT" -msgstr "FORMATO" - -#: util/grub-mkimage.c:100 util/grub-mkstandalone.c:62 -msgid "generate an image in FORMAT" -msgstr "gerar uma imagem em FORMATO" - -#: util/grub-mkimage.c:101 util/grub-mkstandalone.c:63 -msgid "available formats:" -msgstr "formatos disponíveis:" - -#: util/grub-mkimage.c:152 util/grub-mkstandalone.c:96 -#, c-format -msgid "unknown target format %s\n" -msgstr "formato de alvo %s desconhecido\n" - -#: util/grub-mkimage.c:242 -msgid "[OPTION]... [MODULES]" -msgstr "[OPÇÃO]... [MÓDULOS]" - -#: util/grub-mkimage.c:243 -msgid "Make a bootable image of GRUB." -msgstr "Fazer uma imagem iniciável do GRUB." - -#: util/grub-mkimage.c:273 util/grub-mkstandalone.c:309 -msgid "Target format not specified (use the -O option)." -msgstr "Formato de alvo não especificado (use a opção -O)." - -#: util/grub-mkimage.c:282 -msgid "Prefix not specified (use the -p option)." -msgstr "Prefixo não especificado (use a opção -p)." - -#: util/grub-mkimage.c:318 util/setup.c:793 -#, c-format -msgid "cannot close `%s': %s" -msgstr "impossível fechar \"%s\": %s" - -#: util/grub-mkimagexx.c:2191 -#, c-format -msgid "" -"`%s' is miscompiled: its start address is 0x%llx instead of 0x%llx: ld.gold " -"bug?" -msgstr "" -"\"%s\" está mal compilado: o seu endereço inicial é 0x%llx em vez de 0x%llx: " -"erro ld.gold?" - -#: util/grub-mklayout.c:53 -msgid "set input filename. Default is STDIN" -msgstr "definir nome do ficheiro de entrada. A predefinição é STDIN" - -#. TRANSLATORS: scan identifier is keyboard key symbolic name. -#: util/grub-mklayout.c:307 -#, c-format -msgid "Unknown keyboard scan identifier %s\n" -msgstr "Identificador de tecla %s desconhecido\n" - -#. TRANSLATORS: scan code is keyboard key numeric identifier. -#: util/grub-mklayout.c:390 util/grub-mklayout.c:418 -#, c-format -msgid "Unknown keyboard scan code 0x%02x\n" -msgstr "Código de leitura de tecla 0x%02x desconhecido\n" - -#. TRANSLATORS: this error is triggered when input doesn't contain any -#. key descriptions. -#: util/grub-mklayout.c:438 -msgid "ERROR: no valid keyboard layout found. Check the input.\n" -msgstr "ERRO: sem disposição de teclado válida. Verifique a entrada.\n" - -#. TRANSLATORS: "one" is a shortcut for "keyboard layout". -#: util/grub-mklayout.c:478 -msgid "Generate GRUB keyboard layout from Linux console one." -msgstr "Gerar disposição de teclado GRUB a partir da consola Linux." - -#: util/grub-mknetdir.c:47 -msgid "root directory of TFTP server" -msgstr "pasta raiz do servidor TFTP" - -#: util/grub-mknetdir.c:49 -msgid "relative subdirectory on network server" -msgstr "sub-pasta relativa em servidor de rede" - -#: util/grub-mknetdir.c:88 -msgid "" -"Prepares GRUB network boot images at net_directory/subdir assuming " -"net_directory being TFTP root." -msgstr "" -"Prepara imagens GRUB de arranque de rede em net_directory/subdir assumindo " -"net_directory como sendo raiz TFTP." - -#: util/grub-mknetdir.c:146 -#, c-format -msgid "unsupported platform %s" -msgstr "plataforma %s não suportada" - -#. TRANSLATORS: First %s is replaced by platform name. Second one by filename. -#: util/grub-mknetdir.c:165 -#, c-format -msgid "" -"Netboot directory for %s created. Configure your DHCP server to point to %s\n" -msgstr "" -"Pasta de rede para %s criada. Configure o seu servidor DHCP para apontar " -"para %s\n" - -#: util/grub-mkpasswd-pbkdf2.c:46 -msgid "Number of PBKDF2 iterations" -msgstr "Número de iterações PBKDF2" - -#: util/grub-mkpasswd-pbkdf2.c:47 -msgid "Length of generated hash" -msgstr "Tamanho da hash gerada" - -#: util/grub-mkpasswd-pbkdf2.c:48 -msgid "Length of salt" -msgstr "Tamanho de salt" - -#: util/grub-mkpasswd-pbkdf2.c:87 -msgid "Generate PBKDF2 password hash." -msgstr "Gerar hash de senha PBKDF2." - -#: util/grub-mkpasswd-pbkdf2.c:144 util/grub-mkpasswd-pbkdf2.c:151 -msgid "failure to read password" -msgstr "falha ao ler a senha" - -#: util/grub-mkpasswd-pbkdf2.c:146 -msgid "Reenter password: " -msgstr "Senha recente: " - -#: util/grub-mkpasswd-pbkdf2.c:160 -msgid "passwords don't match" -msgstr "as senhas não coincidem" - -#: util/grub-mkpasswd-pbkdf2.c:169 -msgid "couldn't retrieve random data for salt" -msgstr "impossível encontrar dados aleatórios para salt" - -#: util/grub-mkpasswd-pbkdf2.c:184 -#, c-format -msgid "cryptographic error number %d" -msgstr "erro criptográfico número %d" - -#: util/grub-mkpasswd-pbkdf2.c:203 -#, c-format -msgid "PBKDF2 hash of your password is %s\n" -msgstr "hash PBKDF2 da sua senha é %s\n" - -#: util/grub-mkrelpath.c:67 -msgid "No path is specified.\n" -msgstr "Sem caminho especificado.\n" - -#: util/grub-mkrelpath.c:78 -msgid "PATH" -msgstr "CAMINHO" - -#: util/grub-mkrelpath.c:79 -msgid "Transform a system filename into GRUB one." -msgstr "Transformar um nome de ficheiro de sistema num do GRUB." - -#: util/grub-mkrescue.c:100 -msgid "save ROM images in DIR [optional]" -msgstr "gravar imagens ROM em PASTA [opcional]" - -#. TRANSLATORS: xorriso is a program for creating ISOs and burning CDs. -#: util/grub-mkrescue.c:103 -msgid "use FILE as xorriso [optional]" -msgstr "usar FICHEIRO como xorriso [optional]" - -#: util/grub-mkrescue.c:109 -msgid "use STRING as product name" -msgstr "usar CADEIA como nome de produto" - -#: util/grub-mkrescue.c:111 -msgid "" -"enable sparc boot. Disables HFS+, APM, ARCS and boot as disk image for i386-" -"pc" -msgstr "" -"activar arranque sparc. Desactiva HFS+, APM, ARCS e arranque como imagem de " -"disco para PCs i386" - -#: util/grub-mkrescue.c:112 -msgid "" -"enable ARCS (big-endian mips machines, mostly SGI) boot. Disables HFS+, APM, " -"sparc64 and boot as disk image for i386-pc" -msgstr "" -"activa o arranque ARCS (máquinas big-endian mips, maioritariamente SGI). " -"Desactiva HFS+, APM, sparc64 e arranque como imagem de disco em PCs i386-pc" - -#. TRANSLATORS: it generates one single image which is bootable through any method. -#: util/grub-mkrescue.c:125 -msgid "Make GRUB CD-ROM, disk, pendrive and floppy bootable image." -msgstr "" -"Fazer imagem iniciável a partir de GRUB CD-ROM, disco, pen USB e disquete." - -#: util/grub-mkrescue.c:130 -#, c-format -msgid "" -"Generates a bootable CD/USB/floppy image. Arguments other than options to " -"this program are passed to xorriso, and indicate source files, source " -"directories, or any of the mkisofs options listed by the output of `%s'." -msgstr "" -"Gera uma imagem iniciável CD/USB/disquete. Outros argumentos que não opções " -"deste programa são passados ao xorriso e indicam ficheiros fonte, pastas " -"fonte ou qualquer uma das opções mkisofs listada pela saída de \"%s\"." - -#: util/grub-mkrescue.c:134 -msgid "Option -- switches to native xorriso command mode." -msgstr "Opção -- muda para o modo de comando nativo do xorriso." - -#: util/grub-mkrescue.c:135 -msgid "Mail xorriso support requests to ." -msgstr "Envie pedidos de ajuda para o xorriso para ." - -#: util/grub-mkrescue.c:221 util/grub-mkstandalone.c:114 -msgid "[OPTION] SOURCE..." -msgstr "[OPÇÃO] FONTE..." - -#: util/grub-mkrescue.c:257 util/grub-mkrescue.c:300 util/grub-mkrescue.c:588 -#, c-format -msgid "enabling %s support ..." -msgstr "a activar suporte %s..." - -#: util/grub-mkrescue.c:486 -msgid "xorriso not found" -msgstr "xorriso não encontrado" - -#: util/grub-mkrescue.c:623 -msgid "" -"Your xorriso doesn't support `--grub2-boot-info'. Some features are " -"disabled. Please use xorriso 1.2.9 or later." -msgstr "" -"O seu xorriso não suporta \"--grub2-boot-info\". Algumas funcionalidades " -"foram desactivadas. Por favor, use o xorriso 1.2.9 ou posterior." - -#: util/grub-mkrescue.c:650 -msgid "" -"Your xorriso doesn't support `--grub2-boot-info'. Your core image is too " -"big. Boot as disk is disabled. Please use xorriso 1.2.9 or later." -msgstr "" -"O seu xorriso não suporta \"--grub2-boot-info\". A sua imagem de núcleo é " -"muito grande. O arranque como disco está desactivado. Por favor, use o " -"xorriso 1.2.9 ou posterior." - -#: util/grub-mkstandalone.c:115 -msgid "" -"Generate a standalone image (containing all modules) in the selected format" -msgstr "" -"Gerar uma imagem independente (contendo todos os módulos) no formato " -"seleccionado" - -#: util/grub-mkstandalone.c:115 -msgid "Graft point syntax (E.g. /boot/grub/grub.cfg=./grub.cfg) is accepted" -msgstr "Sintaxe de ponto Graft (e.g. /boot/grub/grub.cfg=./grub.cfg) é aceite" - -#: util/grub-mount.c:552 -msgid "IMAGE1 [IMAGE2 ...] MOUNTPOINT" -msgstr "IMAGEM1 [IMAGEM2 ...] PONTOMONTAGEM" - -#: util/grub-mount.c:575 -msgid "need an image and mountpoint" -msgstr "requer uma imagem e um ponto de montagem" - -#: util/grub-probe.c:731 -msgid "given argument is a system device, not a path" -msgstr "o argumento dado é um dispositivo de sistema, não um caminho" - -#: util/grub-probe.c:736 -msgid "separate items in output using ASCII NUL characters" -msgstr "separar itens na saída com caracteres ASCII NUL" - -#: util/grub-probe.c:754 -#, c-format -msgid "[default=%s]" -msgstr "[predefinição=%s]" - -#: util/grub-probe.c:756 -msgid "print TARGET" -msgstr "imprimir ALVO" - -#: util/grub-probe.c:757 -msgid "available targets:" -msgstr "alvos disponíveis:" - -#: util/grub-probe.c:839 -msgid "[OPTION]... [PATH|DEVICE]" -msgstr "[OPÇÃO]... [CAMINHO|DISPOSITIVO]" - -#: util/grub-probe.c:840 -msgid "" -"Probe device information for a given path (or device, if the -d option is " -"given)." -msgstr "" -"Procurar informação do dispositivo para um dado caminho (ou dispositivo, se " -"a opção -d for dada)." - -#: util/grub-render-label.c:60 -msgid "read text from FILE." -msgstr "ler texto de FICHEIRO." - -#: util/grub-render-label.c:62 -msgid "use COLOR for text" -msgstr "usar COR para texto" - -#: util/grub-render-label.c:64 -msgid "use COLOR for background" -msgstr "usar COR para fundo" - -#. TRANSLATORS: The result is always stored to file and -#. never shown directly, so don't use "show" as synonym for render. Use "create" if -#. "render" doesn't translate directly. -#: util/grub-render-label.c:69 -msgid "set the label to render" -msgstr "definir o rótulo a criar" - -#: util/grub-render-label.c:73 -msgid "use FILE as font (PF2)." -msgstr "usar FICHEIRO como letra (PF2)." - -#. TRANSLATORS: This file takes a text and creates a graphical representation of it, -#. putting the result into .disk_label file. The result is always stored to file and -#. never shown directly, so don't use "show" as synonym for render. Use "create" if -#. "render" doesn't translate directly. -#: util/grub-render-label.c:136 -msgid "Render Apple .disk_label." -msgstr "Criar Apple .disk_label." - -#: util/grub-render-label.c:158 util/grub-syslinux2cfg.c:169 -msgid "Missing arguments\n" -msgstr "Argumentos em falta\n" - -#: util/grub-script-check.c:87 -msgid "[PATH]" -msgstr "[CAMINHO]" - -#: util/grub-script-check.c:88 -msgid "Checks GRUB script configuration file for syntax errors." -msgstr "" -"Verifica se há erros de sintaxe no ficheiro de configuração do script GRUB." - -#: util/grub-script-check.c:207 -#, c-format -msgid "Syntax error at line %u\n" -msgstr "Erro de sintaxe na linha %u\n" - -#: util/grub-script-check.c:212 -#, c-format -msgid "Script `%s' contains no commands and will do nothing\n" -msgstr "O script \"%s\" não contém comandos e não fará nada\n" - -#: util/grub-setup.c:79 -#, c-format -msgid "use FILE as the boot image [default=%s]" -msgstr "usar FICHEIRO como a imagem de arranque [predefinição=%s]" - -#: util/grub-setup.c:81 -#, c-format -msgid "use FILE as the core image [default=%s]" -msgstr "usar FICHEIRO como a imagem de núcleo [predefinição=%s]" - -#: util/grub-setup.c:210 -msgid "No device is specified.\n" -msgstr "Sem dispositivo especificado.\n" - -#: util/grub-setup.c:224 -msgid "" -"Set up images to boot from DEVICE.\n" -"\n" -"You should not normally run this program directly. Use grub-install instead." -msgstr "" -"Configurar imagens a arrancar do dispositivo.\n" -"\n" -"Normalmente, não deve executar este programa directamente. Use antes grub-" -"install." - -#: util/grub-setup.c:228 -msgid "DEVICE must be an OS device (e.g. /dev/sda)." -msgstr "DISPOSITIVO tem de ser um dispositivo SO (e.g. /dev/sda)." - -#: util/grub-setup.c:297 -#, c-format -msgid "Invalid device `%s'.\n" -msgstr "Dispositivo \"%s\" inválido.\n" - -#: util/grub-syslinux2cfg.c:64 -msgid "root directory as it will be seen on runtime [default=/]." -msgstr "pasta raiz como será vista em tempo de execução [predefinição=/]." - -#: util/grub-syslinux2cfg.c:69 -msgid "" -"current directory of syslinux as it will be seen on runtime [default is " -"parent directory of input file]." -msgstr "" -"pasta actual de syslinux como será vista em tempo de execução [predefinição " -"é a pasta-mãe do ficheiro de entrada]." - -#: util/grub-syslinux2cfg.c:74 -msgid "write output to FILE [default=stdout]." -msgstr "escrever saída em FICHEIRO [predefinição=stdout]." - -#: util/grub-syslinux2cfg.c:148 -msgid "Transform syslinux config into GRUB one." -msgstr "Transformar configuração syslinux numa do GRUB." - -#: util/mkimage.c:688 util/mkimage.c:717 util/mkimage.c:734 -msgid "cannot compress the kernel image" -msgstr "impossível comprimir a imagem do kernel" - -#: util/mkimage.c:766 util/mkimage.c:1077 -#, c-format -msgid "unknown compression %d" -msgstr "compressão %d desconhecida" - -#: util/mkimage.c:1088 -msgid "Decompressor is too big" -msgstr "Descompressor muito grande" - -#: util/mkimage.c:1133 -#, c-format -msgid "core image is too big (0x%x > 0x%x)" -msgstr "imagem de núcleo muito grande (0x%x > 0x%x)" - -#: util/mkimage.c:1140 -#, c-format -msgid "kernel image is too big (0x%x > 0x%x)" -msgstr "imagem do kernel muito grande (0x%x > 0x%x)" - -#: util/mkimage.c:1220 util/mkimage.c:1501 -#, c-format -msgid "diskboot.img size must be %u bytes" -msgstr "o tamanho de diskboot.img tem de ser %u bytes" - -#: util/mkimage.c:1571 -msgid "" -"fwstart.img doesn't match the known good version. proceed at your own risk" -msgstr "" -"fwstart.img não corresponde à versão boa conhecida. Continue por sua própria " -"conta e risco" - -#: util/mkimage.c:1575 util/mkimage.c:1601 -msgid "firmware image is too big" -msgstr "imagem de firmware muito grande" - -#: util/resolve.c:93 -#, c-format -msgid "invalid line format: %s" -msgstr "formato de linha inválido: %s" - -#: util/setup.c:167 -msgid "the first sector of the core file is not sector-aligned" -msgstr "o primeiro sector do ficheiro de núcleo não está alinhado por sector" - -#: util/setup.c:177 -msgid "non-sector-aligned data is found in the core file" -msgstr "dados não alinhados ao sector encontrados no ficheiro de núcleo" - -#: util/setup.c:199 -msgid "the sectors of the core file are too fragmented" -msgstr "os sectores do ficheiro de núcleo estão muito fragmentados" - -#: util/setup.c:280 -#, c-format -msgid "the size of `%s' is not %u" -msgstr "o tamanho de \"%s\" não é %u" - -#: util/setup.c:290 -#, c-format -msgid "the size of `%s' is too small" -msgstr "o tamanho de \"%s\" é muito pequeno" - -#: util/setup.c:428 -msgid "" -"Attempting to install GRUB to a disk with multiple partition labels or both " -"partition label and filesystem. This is not supported yet." -msgstr "" -"Tentativa de instalar o GRUB num disco com múltiplos rótulos de partição ou " -"com rótulo de partição e sistema de ficheiros. Isto ainda não é suportado." - -#: util/setup.c:441 -#, c-format -msgid "unable to identify a filesystem in %s; safety check can't be performed" -msgstr "" -"impossível identificar um sistema de ficheiros em %s; não se pode realizar a " -"verificação de segurança" - -#. TRANSLATORS: Filesystem may reserve the space just GRUB isn't sure about it. -#: util/setup.c:445 -#, c-format -msgid "" -"%s appears to contain a %s filesystem which isn't known to reserve space for " -"DOS-style boot. Installing GRUB there could result in FILESYSTEM " -"DESTRUCTION if valuable data is overwritten by grub-setup (--skip-fs-probe " -"disables this check, use at your own risk)" -msgstr "" -"%s parece conter um sistema de ficheiros %s que não é conhecido por reservar " -"espaço para arranque de estilo DOS. Instalar o GRUB aí pode resultar na " -"DESTRUIÇÃO DO SISTEMA DE FICHEIROS se dados valiosos forem sobrescritos pelo " -"grub-setup (--skip-fs-probe desactiva esta verificação, use por sua própria " -"conta e risco)" - -#. TRANSLATORS: Partition map may reserve the space just GRUB isn't sure about it. -#: util/setup.c:458 -#, c-format -msgid "" -"%s appears to contain a %s partition map which isn't known to reserve space " -"for DOS-style boot. Installing GRUB there could result in FILESYSTEM " -"DESTRUCTION if valuable data is overwritten by grub-setup (--skip-fs-probe " -"disables this check, use at your own risk)" -msgstr "" -"%s parece conter um mapa de partições %s que não é conhecido por reservar " -"espaço para arranque de estilo DOS. Instalar o GRUB aí pode resultar na " -"DESTRUIÇÃO DO SISTEMA DE FICHEIROS se dados valiosos forem sobrescritos pelo " -"grub-setup (--skip-fs-probe desactiva esta verificação, use por sua própria " -"conta e risco)" - -#: util/setup.c:465 -#, c-format -msgid "" -"%s appears to contain a %s partition map and LDM which isn't known to be a " -"safe combination. Installing GRUB there could result in FILESYSTEM " -"DESTRUCTION if valuable data is overwritten by grub-setup (--skip-fs-probe " -"disables this check, use at your own risk)" -msgstr "" -"%s parece conter um mapa de partições %s e LDM, que não é conhecida por ser " -"uma combinação segura. Instalar o GRUB aí pode resultar na DESTRUIÇÃO DO " -"SISTEMA DE FICHEIROS se dados valiosos forem sobrescritos pelo grub-setup (--" -"skip-fs-probe desactiva esta verificação, use por sua própria conta e risco)" - -#: util/setup.c:478 -msgid "" -"Attempting to install GRUB to a partitionless disk or to a partition. This " -"is a BAD idea." -msgstr "" -"Tentativa de instalar o GRUB num disco sem partições ou numa partição. Isto " -"é uma PÉSSIMA ideia." - -#: util/setup.c:483 -msgid "" -"Attempting to install GRUB to a disk with multiple partition labels. This " -"is not supported yet." -msgstr "" -"Tentativa de instalar o GRUB num disco com múltiplos rótulos de partição. " -"Isto ainda não é suportado." - -#: util/setup.c:489 -#, c-format -msgid "Partition style `%s' doesn't support embedding" -msgstr "Estilo de particionamento \"%s\" não suporta integração" - -#: util/setup.c:496 -#, c-format -msgid "File system `%s' doesn't support embedding" -msgstr "Sistema de ficheiros \"%s\" não suporta integração" - -#: util/setup.c:537 -msgid "Your embedding area is unusually small. core.img won't fit in it." -msgstr "" -"A sua área de integração é invulgarmente pequena. core.img não vai caber lá." - -#: util/setup.c:559 util/setup.c:725 util/setup.c:844 -msgid "no terminator in the core image" -msgstr "sem terminador na imagem de núcleo" - -#: util/setup.c:622 -msgid "core.img version mismatch" -msgstr "versão core.img trocada" - -#: util/setup.c:675 -msgid "" -"embedding is not possible, but this is required for RAID and LVM install" -msgstr "" -"integração impossível, embora seja requerida para instalação RAID e LVM" - -#: util/setup.c:682 -#, c-format -msgid "can't determine filesystem on %s" -msgstr "impossível determinar o sistema de ficheiros em %s" - -#: util/setup.c:685 -#, c-format -msgid "filesystem `%s' doesn't support blocklists" -msgstr "o sistema de ficheiros \"%s\" não suporta listas de blocos" - -#. TRANSLATORS: cross-disk refers to /boot being on one disk -#. but MBR on another. -#: util/setup.c:694 -msgid "embedding is not possible, but this is required for cross-disk install" -msgstr "" -"integração impossível, embora seja requerida para instalação com /boot num " -"disco e MBR noutro" - -#: util/setup.c:700 -msgid "" -"Embedding is not possible. GRUB can only be installed in this setup by " -"using blocklists. However, blocklists are UNRELIABLE and their use is " -"discouraged." -msgstr "" -"Integração impossível. O GRUB só pode ser instalado nesta configuração " -"usando listas de blocos. Contudo, as listas de blocos são instáveis e a sua " -"utilização é desaconselhada." - -#. TRANSLATORS: Here GRUB refuses to continue with blocklist install. -#: util/setup.c:705 -msgid "will not proceed with blocklists" -msgstr "não se continuará com as listas de blocos" - -#: util/setup.c:817 util/setup.c:837 -msgid "blocklists are invalid" -msgstr "listas de blocos inválidas" - -#: util/setup.c:847 -msgid "blocklists are incomplete" -msgstr "listas de blocos incompletas" diff --git a/thirdparty/grub-2.04/po/pt_BR.gmo b/thirdparty/grub-2.04/po/pt_BR.gmo deleted file mode 100644 index 03ea84b0eb1db30f1daaa11512eb53a2945de359..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 82223 zcmcG%31A#${r^AZZn&Y`*AysCpqn=7K?yB1SKH8B&88P2w43ZES-RN`d$b7@P!16g zIph{ZE&=5f1O*SI+^07pBA}p%iXbAO9KYB5d7jzbG)ck#-|x1Q*F5Ju^BkY&^Bgnt zyPY<>*yH!@O+9aKc*{PX_t9paH|KEKdfv1a&pQBCKp!rFd%`vFKzIS%8QueD!6)Dr za9peBZ4I}A+rSBMKR6NY1gqh0upRCK6Hxw6h2`)(I0^m`k~HsCxE*{Q?g8I}^Wlz* zNef&K74NffOZa=ZJ$wV|I{$_xaHlrU8xQw^d%?+YTUZNA;bN$CoB;QSXTllqo6i0v zcqrz-!mZ$eVVnLCtiW6g_k}sQ3A_mEJ}!lm;SZeoHD}(s-Sfz9Z#otAZ2Y za>srsf2YD7;h9kRdpT6T-r(#XhPt2Upzi-QsQY=>ag!xn3-k7Hb65*ijtx-xl!Uv( zFF@t@)zF8x!5!eUa98*;oB-d0syEv#rEFmtl>H*8{9WbD>!9k<1yJ?pJI?(lQ1|^; zsB(T2?h5|_mA>)IY(8%fWxqRA{!E3t!6vBs5QB0*#hEXGy8azd_y3f0e;)3F`7Nk? z+G4p4Hv#H?4}r?(DyZup>Fn#F%CQ})d{2No!^@$rdn?p^Jp>j1OHlE>3wMH>t+4sG z8{7?ZDLfd?gDQ{JQ1$0(SPy>+YvFE3(-vU|l>23{5IX(*&{x4AOD{c4# zp~|5SD&ITczVJ9G|7SVg2oW9L!%+2f*HxB>z=fFSLCLSPpz8DaQ0?s7Q1$bNQ1|m7 zRJvY*D#t%VweJZL8{ZtL^e={cz;38=KMAV6UF_WNb9@Tw{(lEmP9He)E?qYL(_jhq z&5kRe?mr4uPHUm+^UYB8{a&~`dr) z3jZopK6+7G4*NpIQv;RHE8u}}5bA!ff(mypRKENi9tQsdm9CjF8(%X#0doQ>-~R-4 z{WqcF-=xRh_a0F9bs$vy6;SD21XUiZq0;+BsQbAas(hbg?CU%`ra;?ch!X7AHcL_cW;b)db}) z?(9#7n_~VdRK8pdmCrXgeiN$vZilV#Ik+_}9kA_r2HXVm5m5P84Rzfm@DLbbg1io6)Io91(mM*pu#@| zm9K9?$%&Gj&4&Y^(lZtMa6VLi^}?Otsc>g_F_fIT87iJfo&6u6uKOOG0k>RZuR8~- zT$-Wc>v8-%)b+1){0>w(KLdUE7pU}Zv)0O^a;SJ0!X|hUtb|WG_mAOh%)1ZT@>~pe z#e6K>4d$HrTxY%>s@%U1r^Cmg>dQw^`MLj)Eth6E4)ZZk@f-`)j@Cfci<97?@C>N( z`T`KjZZa4XDPpKQ}N0s5E^fy&25 zXI>3e-@gRaK5vIAw_ihD=QU{JImMRK1gP}w3Uz;Fj^$AIGaZhH^^Pr2@vne~!*x*U z{VtpXe+!i_dwkC3=VT~zJybklsCYZ!Dwu*3;7_3H!D~?McgxS)e64^gznM_==WwX| zsf8-XR;codLgnX)&U`l1eO&`pKkkOQ&J%E7_>$wtQ1`RXskU6_L6yUDXHG-Ke>PM+ z*FatOUbs7a5-Q$Tq4MDasB+uqG+W+Puov@Ecsl$cRQ$CVl^iRon{(g(OZNT`h02c@RQNNX%H?*) zr=0zt;S}t5KG){MJg9tG0hO;=SP##D3jZXmg0I7U-~nH@^}QOZezrp8b1zgmp9Ga( zm&0lBHmLYtf(rj{sPf$XJnL@`RQSbE>F$Nf&kLaZeHSVnzlDnD1E_X1;e4CV)1j_A zA1Zto+#Y@jDxa@(d=TosUx$<7E*IGQnhQgi2jMjM4LB7(2Nlnj7h32k7TyaFh7ZFn;agDk=Y6PjegenAvaeYCLmVri(s3Bn^^Swew{=kY zbOqG?-vLz*o^|$bL)FVIFS7M*CpZW56lab@g+C1{UoMAR!5_g*;bU-f_!Lw<`WaL^ z`3KwyZhf)UYxjk^uhU>DybYT6>S zx*q|z!`u#)o^Ch?_QQSPH{ne97*xJ~43+;oe9eY0g-YKMQ0ZC$t6&ByUAMss_+z*i zdr|+Ebs1DWy&0;0+zxdg--inS z2voWJ5-MNbgi7b8U$^n>17)5Lb^RvCcBpdefNH;S$1GI*r$AlzEU5N=9#p>G302=- zfXc7GLtTH|HMXAa3HQca1)JeAsOx+Ks^7aCD%|&AIeZd^;J+P9ueI%MDU=*O5i0!E zQ2BVPGd}<&2cCfy@I9#fD7(&<-)yM*-U^l8HBk9;HdH;m+L<49{H^2LQ02G9_4dB@ zf%{^f1r`4isPc+J-DkhEKO0JJUk>H}W~lT&=J*0sIlKvL;8r)-{8|L%Z#7gsI~gk8 z%c1W39;oX*1Qq^ico6&(R6X798#dfQ@KDUvQ1?3o<^Nnb5#9)OUynoO+sjb(b^MLC zADIM|FBNbSTmd(Sr$EJb22}oC?##DAmE(i(K==zd8GZnD-HA8Z^c@a$oiNn>rJ&+F z8%lnB4eB~iK*jSDxD|XCsvUd`6>h@Ko_7?S3Kic8Q0cq`?hn5Y4}&j3<;x!5wDPY4 z%DoM$J>{VC`wPzfa;Ws&2bJz;pz`T;sCYhsy6@e-Wv@2{svfjK`HMisHwYEaIdDsO zwKL!7ct2D*JPXxc-gfpSx7c>EFWd(E1EAuY26g|nQ1PyC=6x0hPWNpvv(LsOx+TH-kHW+q&-#m9EK9`8gLV zT?=3xj6l`*Z@>fKQ&8!73o5hyp{Lggequ@@MS2_C(RJy(hE8(?J`S44qbiD_6hI@U-=I>OfbS{7j7jyQfK*`BV zo%=no6!R~j;`s(7K`m={8&KMhrW=RwJb8=>NR5bAobz}fHwfEZ! zmEK;caA!f4*Y&U*-VGK04^aNbeb#4XE@y2-QAbhN>?+uebMc7~BtY1Re}O z5BG<+z=`l#I1auIH-+y&-N$=S>D%rho6i%V@?#&U{Fwz6&#_SPe;%q{T?2Lf??J`? z5>&a3d)WHh0V@7!&b$DIF!w^qzl-5!@LH(!+z3^Vz6Gbi2cWM1H>mvIRQlJ$1K@Arkd&-6{gKDp>Q0e#_RQT(i`|D8Y+5Type>34>n7d#Zyb_keN1XZZQ1R^Xj4ijh za6INlcnDkyeRwKVzFr4a|L%v%-{+y^&Oe~iz4^2D`qQ8Z54*8H6{`OH(Q*7wY`-@J zZjJpA)P0@-RnE7<68K}N>pcaxfp5Sn_#P~Wl|QxZC;}DkWGMd^LbabepwjV#bN?4q zdP{z0^JgE&qoDFgC zr(q-9>Q}b>mO#b72A&NsgS)^3p0nvb3`!my2bJ$ZGOy!m6*HXVt5IZzt>?K-1|3H zuBIGMg4*EisnaKa1rdV4$0fa+fwq3-(}xFfv8x!(kp{|`W2 z=ViDB{5w>9|AMpN$8cvj^S3s9162NYz&+scQ1a&-sQh>mD!u=Ny8rPnTK9=?Cgup7 z0xyNi--qD1ar8gV{x$p!y{$<8g@N{?~-0T&*UVACr8}mo79`5;j z+wN9DqV*C`=}$uWI~6J)u7*ngop36A5=xH!2ObRf|AUp=O>lF}i=pKCGRI?}+GzwH z4bO*a?|*@kGw;Do;J8<9z1R#YpZ9~x*K(+I#o&H$2u_5T!@c1BQ04m^JOGY+&DOg~ zQ0{Y}@^3kmd|3H zFnAtRxjznfhc7{;<9(=nobV_5K3EQwj!WSF@J{H%UqH2+ccH><^SW)HrEn7F6|f4P z0(JfSpya@xpzdeqKim2<4Jv#ORD7qxo#5qA{%(OPm&ai#d><-bC%$3xzZS}08w|k| zoD8pmiuYltcwd3K{`*kj5B!U*&-0<`_pxvu%s}PG-B9KDwBz3#xBaV?Um>XSS_GA^ z$3flqm9Pvx2$i0{!e+SV-)#Mk!+DsWh4Qz<2{XOfORhZD*t=o6!=p( z1V4t#&%w8CzFY*Aj=Q1c!XwW9cToBJF;qVK|FHG)Ft|D9x$yU}7V5qZddJGiTDTqN z#Zcw93LXf*2)BW^!X4p#a5MN6RQx}MJHR)f?(aWvXSnGvt^U-hyJQ*tg?t&_xm!Z?b*`Ew`{})4ryAhi7z{Qwfh121z_ig`k98`Qi zfXc^TK;`cTQ2Dvl2loDVficWeo%v#@^xh7q!WW?A%GUq3>DeA`fq56W6Wkl>I#Z$Y zX+BgsW6r!5?t=LexF@^??g1Z#y3Q+5>D%@{_Ij1j$J_-~PNzY|djnK`dC0lH;>??T zXzSyCQ1KrLO*z1WF`o=|otxol@R#srxZ)#wolQTs<#ZsdzVS= zKXmjzvDd4EyJNo+D%>F47hde#?{?;Ao%v0u_BftWS3XRJinkgnKVxtj9E7{Uo1qVX z?D%`Aa^G~Eb)N-QubZLrs|y|uPlqa(2jFb@9MpAo*kqhZ?+myX<|ZinI8?hj7nZ;a zq00X%sP_0YRK0u`PJkal)z6(a9cSv}?ojUg!$aZ0a3<`6y06RNnebas*PFhX^|uUG zVLlJiq`W8K+32D}ze+QmFF(0-Ou) zgzCTk?(BCOZ}WLBRJ%z+-RHGX^6&|$@_7dy1Gg<1XX?Rmum)s1>KQBP#|EAlGGyTo3j`N`E*>O* zJ_BwKABW}ed8l-5wSz6^QmA}B7D~=t2`9l@o%!dm4)d!}^`vY^%L=Iaau^&3k9YPN zsQPsxRC+!SmCyG<)$?bd`p>tZ%5Tq|?EN-F<;xnlE&K{pd%FhCfj@#Orw^gp*KRx8 z^iPG7i!rzyV!a@6Y4qx zP;&AlsB$|Gs@!gXy6)pp>3tR|pSRi7-tQEs@>~ifui{Yk`m0da{UJOEKJU!lZq|J- zsCbTm%AaE$PlO@NmqFd%BT(_Y=IHHi)3+B?_zI}{wiv4ZtbvjnH$usUTcGmm$58U; zZ&2-NvpuYP2&!JzK=otCLDi=$RJyK%D(45F((?i%AY zD&K!X)u#jZv77@{uiN1&_$8=%`ZuWfC+=(OXDw8E7Q>_9u~65&8A^UW1C_6v?Pt@s z2UPt#5~^M=hbosfP~k6u%Ewn=E&Ld&KGgWOe#PO|n9qgscR5shyay^BKZJ_+NvQkz zGt_;In`q64LG>Gpp~|lxs-3NcCGZTW_J2OqeO?0<-+HKWe+4Su@%!6)IT0#c9aMZR zQ1PvRy6;}+zRtOy3DrI>fGWRBq3Xd8pvvcuj^hrn>D(Kteawc+rw-TxPlUS8lTg=v z9!lQ-0oK5epwc_iU0#N>|BbTkk5N{@F=*|!M1$DQ00|`YL}NnrT1~De0d$}y89nu>qQOJeK$dcJ07b1uYfA=uS3=2 z`yGD`Ro~u)Q{c{1telz$RS%AbO7BIEcR-cHQ_lP*RDW9%ve&7Gy8i`G_nU&czZ0RZ zdp>M~w?f71m0NkbH&nQz;5?Xyswa0j_a~s_#`{q6u5_xspE*$Nbs6;G$x!iL4V6## zJN^c$Tt9%4!#hs13jhyA2zM9*O>%2!(0cI zz6L0NolyCB22^@(g39klp~~$wsQz&CN-KYkfO9dQ3T6KQ^x+5aP`KxGTTX3I_NTx) z_;slJcnzw*+hm5#pIxBrr$N>GCg{U%sQWz~svTbiRbKZxu7~pfEG&bsLFL=_GwprP zgEDtP$%U^tUIP{H?NH_LnB%KZ*YRfAbnOY14>O_KM;OXI>fBF;3V%6NeBW{I&p7wj zq3&zbL#;m_s@~6mO7|)#xv~Z-eK*6S;l0p@JI%J`IUTAU9t9`DHBjY$8B{!XK$ZI= zQ1$plsC53raht>h~X@@48Ym& zbSU>9K&AihQ0d<8NXzL^`LrA!2~TwP_e0&!%TVe0&~fj1wtVKmBd}i#m2c-m z9^T6FeGdH+#Q6&LKjVDsqWDuq=Wn`eY>wSLXOGzP-oSpki3PcY{goVl!d}0-9cdQc zD*PS9@f++Xz-NpPJ6~`Q=EE>|;ZOOYwdov3jDxPy+kvCbT~omjbLO`OPREaa-{SmT zcfK6IjqY4-TX3KXcu&c|?+3X35cBKS=zYX_@H+yxCo$~p?7EBG9>eWJj`uhyV)MI_ z^Qj!SV7>*O#jhFw{YQB$RodR zTbRECx(@E@mw(4`p>ylN?l#W9KpfxUe7&<5da-++L%*lt8N`vrPlWRyVb_K^_^Cd> z@BA*tUV6aaoLREqm+t&1+_of+R_wmT`M){8m-FBk;bcD-?}_kM7w#wcyB@cF;QjFP zxT)>TfT%U*cRJ^B&i{ZZ#`!~>OAhLn;`~wK`T*X`5&ULh_Xg%2;NP(PE9VW0$6fb7 zj%VYxl;bkoKjFBW^Ot4Exqk1%AHa7wPH}esAndWkwF5`+dlI{{B6B6?pW%NW>~6+W zIpza7{>AxqaGmq}KIS3J`u&t+ygQfq7aV8kgkQ#8yA$^>VE%~XXGMNb!2A}+#~fko z|AGG;*Qn>{=IFt0D~?vq8}Ty<>i0GHdHm{G{XWdKoPU911%7veGqHaSo`Ty?v8&-c z3Xg@Wag!c$0p~YzoW%Jn99!VNHOHwOf5&`3OyaKJbsSBEn~&WeIsX&99dq$7>C9ho zmQNA(dJf5a{ZK2tJ@GS*V;$l3TZrA);8{?=N3j2;JvDPxFJu2J=XW>4UG3Z+f(PPu zo^z{n_FFps!r4dhqrRoWrL6?MiaF!l&xDoE?e{JX3*ea?$78<+zm1%qz%h}d--UCR z@h-)#0=w~8NEgtr!TC|2@kiXhK|Bv(Hw#u{_l|S_Gj8W%_g(C!Vb{;OewTC5)eZZ- z>cZ6GXC5x+IQQ>3`(n?(FS5HB|9`+d9X1f=VLTq`+`j_P!){w=-WmSJ#oL8{)IKxc zcNSqjhui0{)9>4y@5=eRxbMOF4cNWMaWiJ=7y9*Zd;vc=n>|3X`v}ALIsSsb8*uv~ z)UORLb8)|hc_PP&3dnC;+!o>XBIhSyH|YG;z}-2vcX1fc`s2)3IDb21{yOK6!&Z(I zaqP>n4zJI`Lvh<0`vWllheP^9Id;dx18`4s3}If%@fPP_!fzGlA8=mHv4(T~mSe9U zDy{cN?Dadu+0C&=@1K}|#rZ|fUDj7|oaM}C6xquy_+1v9I4*>rxbtrl=Ov_JnY-3( zm!2TVoz8w@QQT)^_bto}6TC0M=kZ*_u?J>U*m0+ygViJM+67KhJRf zD5gGmI_6H?Tj7qFXJP+!&R^$v2lHOI>GuNX3GDQ1;uw$pRvepgY|F6??mZm8p*&pn}eii8@F)1Y z)0tfm?`>z^gfJbP-vHls@kZbf9^d9TnYcQg{pE0P{D$F8*z30!<|Uke)A^CzgB)>= zJ2(b$-yOGuo&RGo>vszLp*xrPK#nQ+yM%+`lXnf~YjD4q^IZu0XU-?-9Q!24o!FJZ zy|DWn$6OabR_1py{_ny54!D>j`0eUWCgApUj%B!Q2M=}j4{&}3cK_t~4aY6me}%Yz zi@ko$oL`3h=Zp!ti~X}4i!px%?u~l~$2Ty4g1>6c^?RIi{WMO~FURp)j@cZ)CfrH* zyMpst{GE>Z431qm|1!J;`_nmo#kqdFy0~8h536tVRz#w<+zUHV*Fn1{2jyjW7z5U4bBhc_&4XPv3rj5 zpL4#9ql)7P*qwvjqi`+UlH)nfFU3v2Gl}zdSc2Wf@L%xP`0+Vk!toNvJj}uGEc_qg z((y9(o8x~b$2OdA#_=FW6!$F0T+a2|nd5kOejxVeVE!S;yBt$7AI|YF-2cjP9p~F~ ze4g{~5%12N--y4j!do#v$GLthG3)0$-s;#*xQU#XDm;hh?6>7~2IdoqL%&BXyt`np zJD&u1a_1M}uL}RmIR>%YpLpKF?jRT6HJopc+a2&>j%LoI_$%l5Cg-O+M0fsU;`%avR=6;WFu#G@xh@@F!@h*`NgN5z zZ-58kejH)iT^s>^j{D}g*SWaf#Gw>_zlOiS?oaTia0~1<#ov6+H{-Yf`yaun9RK88 zzn$=N8hikM#lHzfhEwsACX9Yx&)N5yo0k7u5kA29Ums1^GVABsNYVo*STE_f6Nia zzQwrOKW+Fqk}w@bb~-)I#j%$2EXN#Ye$U0X4lW?vOzdakz76NWFNxjm9Q$MOALsu{ z&X;1h67!ev8|JtGvwk1L?Kn=r?(3Mp>%w%&k)NVoi`~Z@m*DRZ%o$no`zm&uV5i@A z;RA5Mg_qqE&Mo5n%kDhRKg7?j9GhW|aa@bP59G-2cFsc_KJGgfh5Hh2M`M2>$5k9R zbL_^U-zttJ`2QlDK$tSlKjd7$+gu#0@!RG6TNm;Oe=l+9cOkqU_oFzz%yALn>fm7< z-^cAZ=kFwVK6aB8$RGC0rm~TQ-yiEwrH88gNl|}Myr#tXX-@eA=~z!JosLEQ{!}#P zN7h8*iAYx>W<9hHb0u(Ya8gcA^YKQQY|4)(WyWU@B3?F=}bJ8RGP|3mfup}*=_81c`-o_&M|HTip~0)}?v4#){koQLD3cxHhHKlVHaAK>#Qaz?N-fWn<0%`b zp2m{{xvWot_Q#WvM5ZdRPvx>3I#_{k>TeY{5{>$;OKKL?uUM&Sr37TtIb=@MUmY9L z1@I72J|MBuv><1ZjAhrR(yQq|qKMDDzrZ@pg<}LxBvNZ_zeC#6Ic{fdJlp5jhih@n ztfqyh{T`Kc5`ip_=~!1vEkB*=myZlG#N8Yj))yNbX*m$dWCr@uk&LdlL4b5*Etc7A zte>Wx?9~OLvF`K`>FAGelWE-~CGJ%Ro!%%pnRgnQnKfR`)Qnft&=Ou*x1_1n?`UXl zub5`eJH495mfA&L&5HK=s+xv&uO`yHx|e*BQ14fzRu^85HJw3}K1e;@kjap~NT!cs z&SY^_W+?tp7yhDtW{6aiGsa#OXCRiQsc>tv+=dqHbE%#Mll*vVE%YB}JxOGOu4? zosLCT6OhC%sH^d6>Ce2{md2Jg{x&sLH`ny-}UWkBtV!eT=}87^a9aMy!mCy`g%eksIeR z;%;ha4UctQxz#t0<=Wb^tiG+ab}Z*`Yjs=g*!Q%&d5K@z6zTT4wdF3q%ly807xhbO zwUw$PZ`Jsqk10n&N=OxjVDOO*+Agig)J#gn)abEu-Z+n%nvoYbepk;=$6__%y0M&_ zW7$z%Y5bXiSU0LAcPBBkVOu1vs<>kmRNg62@Fb;+RI*feYQtvfA{;xxigWc?>BUiP zc7_#Z2105|@Mb6|zG8#!U)-oEQ z;?f{Tqb!9aE%RH$%c}h-;u|H;xTS__6qB4N7Ge5-N3raFz08IiVj zzjWHv3KcR#ZNEE0D>iaRHL;sZ_QkUqe=hS|Ilq)Y1A#MABGjI>xO;!3Pqw zBHIq#T!o3%SldhW#UcsDPk~$u!bI$-kPago8$?h9_HM+&tc30abvBc-O41(~R2HW|OhCu;2$pj-Z9Xhzp8FkD$>MQ%@o_fQU0yGaobhnXl0~BC(IW z;tr(8_cIEPr2|iWTy6@zA_MG9rYDz3sFj(7Sr<)C40n^{in>fQDq=Jq=}j`X8SfsJ z!n}m*!_Ci{W>nOPcMaLh3}s?eb}}XE#(8xqg|vg;DgJQ`z)k9vEIBX_LKgREz}gc} z<7lSS0@vJt^4G7gsjDvco2WuP@j){eq5*~a7>#B)VYXEwTap#~E+!26Bda;1TO{9m zde9X$mtZS~m!stT>otLGawADA<&NozHGC`B2Q#wjqEv`M z!_Ij1gRySuBgk{2HPg>hKy+DJCH}~V!R%-BMzvq98k0&UP{o3dEFRnFWip!o`3%=7 z_P4PMQK#K(U_G^OSjEkotrk^qA6|HaW(vQkGpu(ub{)j82%0yNMnXm^#|B<1jaYP| z+@C&501Y`jGw#q#hndVR7{i*2w8nLQdwo-D3tCJAQ}7jj-IBIy=`s~e2OF!(yj7)X zguV$U?MAUz`1)IE&ZXw~ZhpmBgja-#-0z?{H&oX&GCL~I>yWd|ntAhEn%l$tZDaD^ zvwagTSq&ciwGlHJW7-V4V01-gg=uq|T6O_g9g4fPqrnnyKJzT0_Lhz*?u6@M)3In> z)4BznJ`VQGo8P{&f#s@|8a=f$`Y{EX@d}GsMi6(U=ntJ9WwN`6uFhyRQlF@GES(gB zpx&#Atg_QNA@mF;&?eId#YigwRc}pTZbw?KH{VP{v!Y@Z4;h(RiX$x3l5x7*R8Nok zIxS#T`O^j`4f-9EGM!TjrzD^_7>!EHSVTw&=Qn@q{F-S#l!>H-u(~_b9mS$HChIEo z3B^cO3BPZsE6qwuQ%##h+=AA2+b#N5w?$dcYkhewOOr~{ZzMlusepxOSfxS-OHpf! z0!ZB@m(UtmV3GFp{Ll3@T$r+^6Wq=bKIt?bsB6ElhtQldqZ#b4mwSN#~MU43dy$YN6b3 z=&_!dJvUPUMwCwBjxw6{9zrAN$|p+ss-E`0xrln!|NE;jzW%?zNJD*neMRM=GykVo zveVqCBk8DFHMX@{btu2I^gp}ae;?7HTN0Oonb0J=1P`^ay1g2$f?B0vCM{h9%nUP~ ztWcpJVIiOKXk>`3J`0$nGF@wav5^L9ENV2d*hFt=jfJ|rAd>EqwvAXAwn{C5<1LU9 zo$j7qY3B);98fEjd@eU`Xe_~)L(8hh(rDgFv~i?D)3u_;pyn)Kb)92s#?y+frv~FK z43uO$mYbp$#84>{mm-ui8VBlhx$&oFU8GI>etYroAiw-=7KUhZ8grno_M5Vf_YaV% z$Yi63k(h-s1c|>al}0l7y+$1zKGmoOi;48~% zKix<}(k@q<4#MoUFp6ei-A%nlgwZiDFTfPK6u5jCx=XETa=E;>A~!p}nxwueADeV8 z#y=GIF()2#Qr_N{ILk=cBG1}d5Hq5ZSqOAumJ{FY*@Ew>2|| ztA!WNSJbprx7DrW#9I^_>Pl(iMN@3_4D6ifUX7GB-LM%6s>fw0rA-_hR5LR_Rv-2n zW04+OS8-AKr9J9e$zhnNj{!Dy!K_ zGM8nVslA%Mo7%-rj;U&zELcXpMn>X(VF8m=$)dHkp|Gf9Y_x#j7M#niA6tRVh}rna zFI_oFAvHf^1PvEsYRr@`(yW(Z6mj*jMrD;?`6IR2ZjCP)Z@Kt2L1uH$&9|7V*s834 zHA?d-Ts^QS%SN$wQ5qM?615*^=O(B$se)|NzMrViNHl1g&KDIepT))ZS7q}8XN^io zmhJyl14fj*Nk8e!FhNCIMKc(_FdbZ~*herG;MT647YQ15|0K1CmVmr4ap%=>tI@}j zRH{@`Vui)W6jNEcfBb5a(XE4Nw%JWW8f&vQ63z7wIB#|BHN~OaTs@O-Yn+F`#x7(z zG2)ljH_m6$$3!`*k0Ljg@ZExi79pHNqXt^;yt%!x4#h3)tCwh6&=y#mg#j0Iv9PV1;E5<+gQ{lATE>;yO$Gc9KJ z`M9|;3Axdx$@1IBTtH=DI_eCoTLxlDmdx^X%Vw5qpi+?N25=9&n-yr4k8Lj_tX*`@ zepu0)JRU89X6!Ix9?uk-WS5zzFvUd;H?ve?bP? zy?*F)`8uEkOAByL^g(7E%B^W$dSpPUZkl~GI%8&l*+SKL`eO}p%_cv4&G>+wKOCkD zG{qtrCQj|trCIH#uMFl(n#{gjBxYa4Y?AVvg$BP>zV?xEGuDr_ayv<78?5N~bifQA zSk7(kIRj%O!r}pX^Gn;HC?5SvkBx7Ov71KM7+)7d$WT(<%psNFXy(R^_HEa~ zY%Qd9Q%A~u!r8$R*?|SE!Hs)Ni2Q^Y$#fg%f=M(Mwwjq@)eH*7xt2jDov|`i(@$JC z<=5JMOLj9XW;+R&H(Di3n@+VVWLKTcv`o;)nn;3KV^x`8Du@9D(U}BpxNKDzKUqI& zuk61o+7fG~&Z3IIY^OEN-z^758E$HesT_^cs}pSoGb8=sS2xzwGF!f*dC=rxDyO~H zBStnvn-@i*}}Cpm?H>Q_8L|LI=Fo--dKZ1IHqSV<`Mv(XD= z8P926gM8<5ZUfyU)FT>`U3_8#e>p2VMXt)e{6<21R=n=p$|h!p=lN{aWZys#cX`PY zvTT*i*%TAjg;LO>87g+3Ih>Q zZ36qCFr_yXSqB5^;kN3pjBGFRnXgbAIxy{_$v_)}o(9oA6+{mEYBYq?V+ZNx)Mc#6L&#!^PgbkV^~ofM?} zqa_L@O$d3rs@vB7;r)G(hX3>H1X_jDA(+3iLf$G6t!Cxl=~0^3WKmVxjFP840a}o? z&nk6kOykx#3XY+gmX`MU;g*`CbgP=vLBG%p zHkkGeyl4T(EFnbvz8rZ>S@R^7rc7;O%RN1M(w9mY&2xi!o?&izMWLHXBICmDW#nY8 zpN);IhL?D4^$S=!_rvXNXfK{NDO;@^p-H}FC@ZeU<$d>vht`3eR<6ew#&lHI;~d?t zz|ljFbSw%v+w3(SJ>UqpqHtzh)mY!WfLY$Ip)AvA+=HprZb0Kqrp)qrL^0$B%$joE zyTmu`+wJdYV-uFy*Uu^(EpXDHp1T<=$3$*TLUQ6^gZWWf4DBi2i&KA!;Y_~kwF8^s zPeV9A!ybsp+XVy1z=C!7qWP&{z^9a(3rPy}+pz+=jg)n2XhAz;aLc@>e4B-6)Dfe( zn9j3J%MNCKz29{sYWK>DU?tR)h{;qff^u7df@M|-+N|oXr!44adXO@C}))Xb)m?*P?zUgf`!?^7na=B z_#!L~Rc$eN%0^8-$a%GWrLo+43#?7H7ME1HYpjW| z*@0GtWXNnk^}LhKoMQn<{JY3gq(u$G(MVG+`lM{{g z{%7?UY#7;Stc6CSCX}`!&B#4_)#2{S-jQw4`5a49EAeCQ8keKlPh#3gjNQ~5%Y(q@ zXSy}3fpAxuL@Y*!XPy+(^$HH!&rK~VIH|d~`eE-1&E0s>zB<&TlG30!=g!Pf5$0A* z1Gak1m^Qa^T0fRED&|ht3D&N3X?$r0RCf29U)ox;sBV5`S-Ectb^}Ky$u-k4NX_t< zBw0#e75XD+B!|AxBy=Jtm9E6`c>NZ}Yh zZOWlA(e3&Tbd#cR!9aVsR%NortRN3B zmtf~yeyg3dMi*P)HpU*iz~}HMgTqXynjNEhKsw~6QdZfug~{BMS%>#V_hnZXKFyca z0hw}2o)Bk(VdGH-&Fa7Qr%I)v5(=jFCrJo+;ni^!o7szIG-{{6s#`(5bUUH!^MvG~ zd}rdlJUT^_44Fqy%+S!5d$BrXy4g<)Fp%Tn&u%lSb^bMqVQPmbRFir_I?Q6k&=ht0 z`Pmq{_QHgV=Ik|TVK=I2bvnT&duDM^2#X4}4i3rW)CDKdd3obU*K-`R}WVHy9*SF0ftyYwn!8>jcS!_0o|QebRr zwQJ{W-xb34IHzi=`cdcnWrOT7FcECvL$-t2kQwE9?WXH>vnp;}%_CGy0?I{tNkVT2 zA){?|4pxa{c2_dJN1&#dsU$AWyEnLkHXms_kaWa|-&WmFceM6VD%xQ#{c-J~wzl>P z!yjU$8`W4$eUM_!r86qXcBbVxre-|eXgtL;lZ%_xMwxxBAscNwpFx;Cg2nTw zngO@bl~^5Dk>)QFanFV4n-f)+i@B{&w4;Joigts&-y=O5*=gFAo*U8CT?~N(6>+2k z11!p!Sw#sL)4vw?5*fFnPB9Jf0+0-Y3p+bY4p^gk9L3I8nTB56A(P82YO27N@TLZ4 zc*EgkEp2tqWV99bk`-BM1lTb}o^{sgEoq-0n(ZyIPYZBwTD`E(Jh9UN)rVVC+1R(X zghI#=T4{Mv09^H~QKrZWWz>$k2UK;;6e_L~BSti^WXVJ3MHZ$}y7#{XPXY4S6|a>E z-bCY`@UolRG%FN1xE{tV7g6Pktj)Ew#!>SgqEJ^m}z0+9Jk^F+IjV$jN zWPz+h+7umJ#7P75FiPIiN&+JuitL7M{jy7=lJ-lI64M*(?p>1XH$o`tmrAxDQ;N61 zrp(xs71t3NtfWuWl-xwsP$Yp7+|lI7QHf?TDg`dQDYi_6;c%h9_BZn z=ALz-1XHi;6f+kmGg$4)+D9mg4d#KPPTz>5j!@sa(7?J-8vjAoCpwM7VKg1>&9MD$ zha$&w#Q6+zzTYoJRfwU5uCpq1S-xa5errqEJj1QjL|r~97shbG*BWW+oziX_c+9D- zL+_eeQr}V4q<2EupyriOCa2vk49`g;;=>IKnycHFwAI_!By|+MGs#3UEbogPy$-d@ zb@b9pnj6|XJEnwN>+9hjh*4fyti#*8Ef--D&RYf{nBc+Oi zDO82`IvA7iZaWn%XZ-EZq5+k7jp|IVhAcc}hEPGAn0El+V~833P-j2G$G#AnBp%r- znXW+C4kvI%x}b{1}T?*9>*z3gwVpX znGlnN@fee$v6*Kmi*IgPg8{``Jy**n7U&_YqG^ug1}C7aBNHT5c7VkLLrU_ zY}V3LUd1t*%pGCLj*=0RtY&Y|mMtGaYP&_At^CB3t)w;}RSd}B=cLbYHJMo^>rZ81+p7mjJAX;qYCe^Xx zH7Y8&;vGQdvCO=SDN?4-PrANr+i)D@1Oh=#8;jYxXiB zAM}J#!QB+G+zVEw;OZM2xLTI23E4=&i7f+UX0Q*DP5rT~*F8L|(pF#bx`%q##*-__ zi#00;BH6yuvf#1mC}R$@Pfq(XwVO!~jv;g+30--JEwX4D8Be>3c%0K@V~$}OugB0f z3G7WcGrquYH&ao(5Ha2#&jwED0K}^|A@GE%hH44D2C0;~7d*ZzA9+z(=H*38QALT` z*G&YQOEv3mr^US}3t!A6nT1Ey1UtXSI78b3v>bpBm8*NXLSucM8^<%wit&D1MP+u} zR0Ug#F?G{Sy8EMM@2pomhiaFU6?LYcNi5F{nN_nHvTMVGb`2@tG(%z&s8JQd#ZKa? zndJScjg0h18*{!AnHYY}8)&o%rL-mzg=L;9mhq#>q+ruS!Lrc0WM}e)OC%yV!9tYjcKPReY2pNA+r1-P=~UzQ2u}}8n9-azIs}6^KX{{_KYiA;X=NTOJXRptwS;^tuxmM9Q2)%s^gfz` zDIZ??+nIMVLdYab&zAB8i0Rq$59FYRwM}IbLNRH315!gG5}Ul2d{lNmdGyOLwj>XE z#M3_HiY{SSx@czfwI3LC~Jk84Ht;{Qef|0pa5Bx{1h+_7Eq3M7kUrmOYN!A?avJ7tu|jEY{-WBYOpbqi}-eNF0aVCA0G zD6-`>w3_Ne87Krcb_06c-@L4b`%skm7uM==2&?8;7d?Nayr6t+?H{HC+NXho8BfKu z5&vuZXiULN1`tVR@3&??6)wMn>c6>Ic)@>{IK-C~iEq4P50EIzPi2JTcP z&SrV)4y2u#J$f=}ADF(c(X~c%`4PT;%=q_}*D57RYsc?&0 zU^9=zI~nWYMK2vOX)K)2l07n}Xxp*5%TaA5a&XY&K)iCPQP0a#-p;DQJ||zWXwLO- z;3eG6>ueJnS`KB}j(2hBjsNt0* z_XqD+AR^gPu{L;hanXYGq-nDUi}KoN#@eM~bt{b!%Dr@q(U?_J%`04}$SR%uTMN(- zhES8qJo8Yw89e4!d5rwB!pd}o8SO$u7dC5cOt%D^)KvFF>bLb?VkKK$xZAO0x9TlV&u?#ajm9&=8@Ygip-_ejvPPEYo$>Uh z)6tTmJLQoMR{J%1<-(t1YPjbzGA%w`gZc+3W&(pK$X9BDs1F+q^v8S0{mAziMp znv0-|@_O2Qe;Q^l1aSU5S4bjk2dtX)N z!zX@a`LxOqdQN4DeRd+$l5o+i8L)IEYngU1i=PJC(W_PabaGS42IWYpPwrpV?v* zONZ*+R+1`zHiDpJxyj}#-#xWblr}5CH1lK%bJz_AyD!R1TA2!qBtr9%*1S76Ibe*L zxs`{r5l1d_OOyT)enr{gTxo%w7E=DUrp)H7it^dz6&3btSbVa|{ZQc7-^KO{F3lt6 z$j{=BYQ>T~z@=syd|gXVd^6TyHW7ik{#KrFwDC1<=!J+1AJ|Itv3}+$N(wUU14AA9yfEU*K|98Z)uQ44aT&ZAVJ>QVbbm z>u)4Xzj-lX{##t_5k{DOq*5a|Ds%pWT+ZHP>gYkN6H~y9z|3~*d>`Ih!#?v1%NL%5Vt1S04 z=u(z5pG-T7_*#?37y42ryZ#zK)ur7x*;Kh-t+HIR{${qwOQKJfZanOBU6WBJHT_Ap zkaMP4Pc}l+lYb!=XLUw@3^(9}FC<{D{x zd7UnW5~YuTNhJxs8Pz|y z9;&GJUumX+wLglqP%a7^^4r$mmCYqm+K;HOel6s)RJ_#MUw@{&`V|)zE zNHV=6ZB1&Wx;=@u?$pW*Zws6<(`(49s1>uUDu+hH=tm{yT1hmb*U|-=>_~6LEo!)5 z-dkw2!%vBFq_+*D)DDQ2Hhm+ET6Th2ozOm3t#25wEQhYYM!FEG*0Um>TqwjG^D^tN z(NpSy18;d{Fe6!wv|uE{`5H>z1gdYYt8c4ce`X82>$n`B-tzNSY*$$S`7rx6s(E8| z;Ez27)qJODVM~!6pA~Z+`LtNxC*K!yw)t<2<=uRJVyvM~n<|>a_S0f9UPP_$8qhS{ z$HwUJ`PkTT(Yy`oXv2IMXX{!lLitpm6`npq35ml#LG?*`eV-QQeZFs`SMA`M|LmCh z2R-(eR3}2SN37Ai*{_djv`0JOjb`O+@iw0uv!1lEnm*4*4_U*T_J=!WB6NTSx9WV~ zsP<&OLKg2veL(;O4Pa&M!s?~G1#{TcZ7-1YiUqAw_8*hAI9g@WiGknwYuZRVNy!~t$ zuD$5pM5)`6r(#7~H@r@UJGD2Pv4P6z99io#&oh%JrX zh>*laeD&z#X51Z*kZIrWn6Y)Gb8>Iz0;WGwcbJY3WHn*dqdIT1kSd_L7;TmrwFC>A zPkfAW9PZ;&KZ4d$_z0R&qR1^XLh4t(v5O{(Bx*5}xmoFHJdLgUH5sW78_;>nqaOb# zM-C}prC?=nVCK_!rrNWTYv$hzUQ{ETA9QP8&8ZqjJ_k`S&0^HP_4g4cNeJv!(zFuo z^5v0iuFQfHs;80dWBWq0?4$luCv7~^^G$D2F!G{+!tFSvAyec%NKkjIH^rC9*nT9n zi_FT`C6fk}J^J5`xf_vKC?phER3=zLV@TJ1zFx1CvGVTai z63F`m`?5z`>or-U*_-dS6&xgvwEfG}D0)h6T;hWdxfS^#wW_mn;xv*r@H`{mrvUND)QiK zQnBQxM$Nu}F%zxw7?xSV>qsJ)L67wx{>6VPtbj~)D(TKZtTPqeYS4n zp7P(X8{6CP57~|FZ}=DO#`d?I*QA!Z3Pe3+g@T6){N-gqH|aiE7maKrzlMG04na>J zuR2fOyU-g-!eK3((lTxJvt@YU3wWa>dLwBZ{x!U@^TYaUwx7it+Z(rMWIa>g<~hl3 zZnz);N7hF*>`!Y2c|S%@+W`=g)O361qZfP;!F>C8Be$tI@?WhRJNd@jr`{yK^pU&I zRxr-T&0JZ z0B*REk1U$fG@0v}&E;6)m!gr=RJl_b^dTv!p0&YlSu}q$d1O~Yi~~zxIfY{nWAJG{ zX{o`;T}ekA2I<)#wF7ytHD)S|ffDbJH6te1)t7stC`-ZYiIidcN=o}`$WQa@whs5K zzm-qES|ydarv!rxVSPG>js_M=^c9U?5i;n#iLZRD>v4raIuJcq>>aB-c1^3F`mw+kA@WtucK25>KN@Akw77iIgQlg$gTV6I4Oa z8etowT;R4vw3&$9NWv-Y*49NiI9sOJXN<|U>zhRb8?4Js&Azf?rEtC;k+f`z!>5)9 zCy!vmqq!+xrHSA)Q&8h)y^g)kXIHL)qyO7GrwDNSo;Wa@1^`$Kp@GF#Sp$*lKD8-q zwe_h>Vgrv|YN{3la0h#U=KW$y*}toAl}dLirG39Xp-U^h=j>Rjf0`_BKC%HwXp$m|Mj419^=06| zmWUsGKNIsGQi*i=$c1GNlb(26W}_F!0Igai=UkFWnw@|n;+~r71c;m-qq*@O;-yB@ zUtL1jtRcr_`~0>Ebm#)FCB-mAPY;=|6PHAY8&v2!t$!MZxpq1$R9L=dP`5{1v*Bu|s9y*q8TiC^ZYkWgl zqfWr;A71@Q;K63IF$+qH7`PyOk{UqK4UjAce1knejNA?vh`lZ%!|4%LGgNK76@#T# zjikJk?R#mX`PW7V?Er9g%DUJSgt{3n$*{rzWAw12ky0+IC2mQwg`(k#BM4RLR@6AW zeMu@|+=uvP!8ltog+R_|5k<24q9i<+Nt!-G0+6#KV9cr~ z0@9u`50|iwtKWSwCN6Gsf9>(78>n8!is)W`>SfuMI$NllGIKNIuYoq^QxX(gu0R(E z^=gY)+M1tKTih}CeUy&+XjUYPV%A$+XcHoeMzSWN&?+?-^_5X*5#706NJXSn#KL7a zD)XmTO$>FGN-&Bw>1)XNdg)kA z;boWJ14)I^eYl=R)h|xJE~9mn2F0dj%6v1`z4$AjpgIN*T7^bQ2;^P^h?$jrDt0To z8wGC#dO>d{-!Zxx4fj$#Fk9%b;(7DFu@3Q~*KGtVsazwkn=brCDkqiegQ+Ori2Mh> zF#}jZmGAgUUNOTez5q{s3yPSa{7VAWE z4?sMmYF!_%Y^`DF{xE(}dwZN!BCR3oL<(gKDm5t;E^X3$nBX*t zGuskAas2QTx03eAl4T*$$2Q10GVhorDgg@6o6Eg^aBP7U_mMEiMx&MugB-G5@*`vq zmPwPYjWvTkK$tZoEz=PIVI?akB0|=^2u^@Yaz^kVKryS}@Sk0MC&tYySfcD>i~ho? z!;m)mznFV&TlRl3HQSmYJF9=Q`QaLj4+j$9l=w@^rl^i7ht%}Iz$58zaTo8`|z28hv_5vZm`0SQ*(PieYh(O>~C?7N~fKpi^fPN?3Q0(c_?@o~YrYq0k z?5AzP&7{4cr^iaL#DEp+o9^3~0nPUcropVF6{qg#<3;TAzh;m~$&-_1KFWUqD$ z6+49pq!CCFFYq(soQDFq6&0CKD1?QnaA$NEqC$lh0^w+k)~raoMxxW6sjVnlgcAQE zCO*z7<9GQGoNfrwX0pHQdL=x=r)htEZQrVSK2~`SnVPZqSi(M-0F;Fn^PY|+Yq=a} zD-NJ000%m6^eGmsQ*n}@(ypyx!$rL0eLXeDHBK9Pzby|$ z)&)(z`h(m+0ip0-qm+y?RL7s9)*LHtQggYD*&kl}^XMGQeEhWM^Vu`ReTSIxdMdV? z0c`;f`ghaGz&KCtuA!;>Y39N7FZ#Cm*qiC}YJ0J%V2XnowEKp5Pri-CRrFLSO0^5R{g|w_{@y)8I zQ3>^y-FuVzU@D5Lp_gZVWIhYc$WbWua`Y*oe^w~9X&hXon<=wg>+O0EtWoRRQc2a) zHlm2?sFYMKk41irnR8b*fsB<`b?P~{oUZlsD5>hz#SGGxC6_On^9_iiqD%MEkV(lgJU_jElse+LCM5&>bw)VDDC^~0URG?-$; zcq8UAo#5YQmfJ70>6tW&!>k2kfx1w$^>qiL60O3u8HW?FqOoPCn){J8WSi~-$nBa| zM=IAeZgOT;e6~y*kl*wVdd<0B`%&p5c%4b4j4so!)T|8vz!t)nirm19K>bT!p1li| zdALZfRD#w_B;v07;t=XS}H!c4ofq?hI+nRqA{nC-Zf5 z{sLEc9L-V#m~2@Vw_SdY-V&7J;avz>QQKC&ShmN3w?vX0ZRH3{4Yl&^_%IZ2Y^xlB zM6V!Y3OpFk2;Y~IFL}NxdOr%^+HRdV$1XXSD6SA$qXI76+!3{Jy<-8JDYnFi_dc=e zxL8FW{?LC?3F+aFa?G$fhY3ceK^fj`LVY{nBDetsng4N|snU6weNa9f=KQ0t*Dkne zVl9|4pfERrdu3s26e=)tTPiuMW-d_(<~K6$9!FFL6uCKQfwRXvJK0kKUDFIMbZY_v zMCzi`#bxt{L52e3u$f{buzy+$z=+(W57zJ$e}ZvwH2%f-!P6bd_7t+c`me|1?alnZ zObC_6P$fI9+c9emdsbEk0W?dE!$FP<^|QRE@O;YbD99A+`k&)Tst7yW zdL6d^{$&JMX7S+linI+yd}RL7n}PMIMViqXlhOK`7qT@2U>5?l6%k(Ze@S_)@UJVxQ7Q?;^*5r47<*jDi+l<(^3?tCqV&VOF-nxto zdj*#O5K07Kdbu_GD~J-|yAIKYo<>u_L#bKp8z*nE2M*b8^DBRtnyQ7pu;mv8sTeCw z?UQ){<2!ml#+4{wZ0BxutnR3*G?_;Eglz(KwD7Gsx#BS(-U-+}Cp{!~r6;gwZgVn| z7Y)7RSJ{>DR@~SkAyyd$Wr0{4G%Q+$4k3r+SvLQ4h;^84Oik(b=K#TzCpS#}yUN+vO&Zj+}l6 zTI@7EBuOU_BKAGm@0KR8lE?}S6bp%{Dgw9Esi+|RbRA(Zay(z^|JIMS4wd}C-fgxL z6BrB47?}>FIhFZc%>|H#8ko zY;%;$gg~Zg!qvs=6}Kq&MYoFrfV-!*Tq17n>f0r4PAR`^!`>N-)WpTBolvI~rQzZH z!_gfw)7q5EOW~qJ+0jTGAa*5#L>+BFL++4y(cWA18EV)2w^~CwELOaNN-25Y!rx-E zG~PC8u&|AJbyhFy1WsHD1e+W){4BtCk>3-=*b6hf z;RQ|9d8+?qXG-DTHqiC$OMMQ|t;&p{;UY6G476uo;F(o}W?33qb$_Z~-##@Bo{|)T zZ1%s{*@UMJ#hp^ZIf2sZg=f$}W5=`<8f3GPl30RBi9i48K=YJR3)?$u?VBE@-+ObY zdEm{TEKS+I7_GhcLO(JWS=`ztTMey{N)xmi?|+U76l9TXBCfaA|5?&(m-^Z+Z&&aA1~Ca_WNo7%H6M0&u`$v`z-9JB`Kujws3; zZ4ygp4uhjpS_6~+-RxNKs;~-~suZwOzU0(Kj;OD9lfI9oUor+XD_qNqFLI`oBaY5NEZMqy1 zn|-Kg6j83I?dhEJ*6+=(u6tRKh9q@(DBqHxWKHtgixzRF;0JRF)46(3+sG=MTOa3_ zzza%OW1d|Wr&b0KP`dHGfS^4SNB-FRE<%K{_tw9`Owswv06fR+j@boma#bHd|QP-@zp-gOXh! z&ve+9Q?LD{polX;9?=^n3u0(V1`Gxux$OGd$h>iKhTb52m50CUi;#c&jeR?1=`w3n zZwhNmP?N)Wk$Hzijo3CFuH+;GoU+Uiyg2-nU19hPt$cioJ{I`0>Twg;#6+OnS2b#? zi`fk|$mk9*gmqqZVk~WIlw%+2>25-|=?RpPG{2NzfBVq21p8m!SG>1@w@{)xI_je& zgLWG)h&^-tkM<%1JPcyIN;^G|(HTNZ^-{7}<;5j4JLijr%j&k9qjUltlUI_H)4t2w z1}me}t3RufJ7{kb72NTZS>Q#i+Ke;bW)Ry)#f^ixR$o?NWLHY=9{C zDG9$}8aRQam4sLQcj@0Py+b-8l4%$vd)udEAv_y}$y1ydfbCVJ^b<5x+%IKSG(i%3 zXyH`ZUk}0U*5{bO$oMt646PL__v{ZIwum1rA9%<;ya;0{A{x3c6%?C626u>yn(S;m z*~A}L4z&+0)4A@Rt{?hNv}586SWromGO~j5|&oaVnqj^Gi(K=^#)m)stb` zB@eS9q1g%Lb9#`rTxo`m`Px#*e*8P;?`@$c+Z}z!*<70 z<$!mOBgrU-M=Vz=sj_X*F8{xV37!Us5p-&`gp1c+e4B`Ymf zwg*m`Z2_qW+7e6{nGQT~MbM7rtJcksj}HXAHFW8<44t+23~tMdZm=@M)+`a&M7d$M zEN_|~=jxj#@k{`nzDHl$PAujt3Ab`K9+4iG`XDPRR`z|lnfRY<){CR>yXa!LuCj0F zrQZYc&kzP9AZ9Xt^7)$bmOh<4z51O}nB&2K&$hTsn;Jw0thfCXXRc^;S$o| zRiXN@3<$^8o_y1TNP6TZou(B_JLwFBG5EUIKz#qzFNqmN`%*TuZJnwpz>0!O$Eao7 z7DMv^^LX=U$1>e`zgw3d-wJ8z6xXa$!M9NFb-v1ZX>H$<_Z8q8+hTV5=iSGKDV_u z;fNFuGp+JI#)s`SoG!|P$=cO_tgr3usW0&EwM})!NgRz|`YMl)oPha5c1W^3__)s< zsw3|MK1x+0eg(@g8O+uq5yYryn+u--seeGLGN{`nHkELSzC^eZ++(!{xBD4yxa7GC!H(VQ@8d75dr*U$fs9}*eI4gnvr2%?3J z&CvV@5hGic4}Y2RhMghdEe%g>pya2=m1KgwCS8pRMJ3dqjSA6&c@nvi8VQG{o<$(7v*Qba8M* z_h+Zi_KJHLz0>gVVwea`8-ZyY%$C zD~Ed_5A_nS{xPLg^Pxadg zsngD;`_p|>i0nUu2|SqAwKqd8y;(l+`8O*kRzRM)SQA_M6}-2{wew~p|F0?k_@hwbHc^vr$#tzf$7kVFKGKM^e4s5%b|N$|+>%HkLMJ{R z#SgFN(Cvnf;r`wdxRf?#OFrVblVCOd17{KIqNf8SKDD*2*XTnKLC<$Zgewe)wW zCWk8>*ti~lD)!=9`FpjCj3#88mmpzOm|_(2xt4Ha8)kX+`~47CFo5xn_cZ-S_|Uc^ zW^OoBWi-mE?1Phudqm`fp;+wXeq~4LELlhUjM82(OC>9TswFh4*|W>zS>369t7%{i zF;(52C6?EO&Y(V(KI95d*LHism=g%;7!@Ky+HKMJuD@!fcx4p1iaTljxN-7;|qdr8oiwLO`TF50avcn z#y52hQ002MKsfY8(Z?9m+l*CI!4XL%4llRcCUlvlh-qO?Zh%ucap<;lw2gq^4Y_2zrqO!qrt7DU11I zP1$>Be|lw;twj0&SmZ|=wzB&d-q$e5&rpv@F^<=!((`GxsSyP46f=RvAcNs+F^Sco z<%HnbN9fU9wlyq znc|nagQep;D{Oc}B!2Va-;Q7Iv)!*?gD<}N;BM!#37H}-+pUF2$#X@%@VI^-jeccn zZt%zPS%;WzwgXH}wwN54{r?8HZ3dV)2$-J?5qJKly&>b{KnP(Sy5i@-PGDL33Q9g3>?=+St+3n%RR%}nO@eZPci^5+5Asff|> zafYQ0GSglc6Q7C%znph+z0^fVx$74h`fWfHUq=aIXo$pgZAtAD$R#%+x)ofbj^}fu zWUNH~l$N3CeDuMm(?jUn-7fL0uxi~8hQ+tFG!7mEo98#3`&M^4iD%oIr;u|&;~iPR zhY)&t&Or@b*g9+I{YK#dcHV{CGux5Ay-RC{*^xtK;cQ$pBHzUG4&N%fWf(hVrsD#E zKiu4YyoTuM0J`jBaY@2pi^DBFq_(MMck{vMRBUZ!_O%Vm_P7dec8WS%SP9K(ehL<) z#IC>iS9|SeooB-`DpmO%cXz6L-+z zC}plIh5eL&uE?M#rLzkOaY^dImZKBd3pOq-2ZRGhx{B+*SY+!`wur^^AN)=@j}*c4 zNZhGRcQ>zC4izTllZ7o4`<%KGRG*ei!Q5b;c2%} zo&{pNhy+g0uD+{Ud$3}0f2?G$Pzw=KppBG=j;YO?;|C**S16)33vypts0J|&DAYV}nlJ90T5M9M3U4d(y#XbLBi ziUOlBHJv9oTq-TlkYziZc9CzYc!W8*0JcwHFjkaR=i8x)~dPTTazzUTqAhCGNP>t!d>?G7}aiX z=xzofO}oPqO<|Ox!0W>EfYpVk38xE>x26;aUmUpsTl<`h#v_GY zBP014u!z#EU?4`h!EbZJX+LZlc@fDF>Cj?ZUUkSy#6sx}x|n_vfULy8Vbj1GbnNV__2hO$#nV9nl=W0}B(6M% z;2zj4;os0%$4Bcxi=a_HX3gX*1uYQ{rDs3&c3_6j%wTiyg|~JWBsP&_Y02j#wC*C~ zwc0Hy+Kb-Pk4kXuZ@P*^iLXMQ*H>QK3C94fzOTCFy3S9etF268un@X7TOFzqvLi8&R2Bvs zltPK&y0Ud_LE|E29P*He-}VAa8Yb5kz@g$2D8MbFOeJ?q|E}HTxhbleb`dEw>4gXu zKDoSB!QBv@eGS}gI31b4)g5-T*<%SCekQfw+*IIQFYVA!zYuJa(OQ^|?JE;Sla5)C zBJoLE`}xk!R)FiJp*po4n%Gqs^yNNvn_j#*K3#af<5IxN+XhO_00s#3X=_OLs%h7E z?7gX{1(w@Ym)9&K-_*I0bxA}seP#Y|H@<;t8D}dJ+puzExhpFO*7cvdi?2QFkqX#9 z?p=!r6rj|qhb>kA@{2Z?1TNE}1R%{vTU!s5?rznmPb;_0V*clZAU(W?Pqhs=(7gN! zy-t}7uTiqwNFGFN)AV_ZL+q12S&~cgEo4;80@bVvppX8kiWxuKLuFeWCt4cnbil|b zY=gOlen=uEB)3RoGADa7Wu@lb)IE$mal0<33TI2oz*+tE^bAn)SQ3=IYaMY< z&pT3W>|b6U_k0(?BX0e9{iYGoWgBE0imp}A<|>mu^q#{{%Vo!&ntOHXz>P|jix=HM zItL^l$)Eut+DLetG0rH9G&A+nk7qByouZMrurBcOgs7%z^*|96bc2I} NZXemr2r9GM{SU4X!KeTL diff --git a/thirdparty/grub-2.04/po/pt_BR.po b/thirdparty/grub-2.04/po/pt_BR.po deleted file mode 100644 index f8bece8e8..000000000 --- a/thirdparty/grub-2.04/po/pt_BR.po +++ /dev/null @@ -1,6940 +0,0 @@ -# Brazilian Portuguese translations for grub package -# Traduções em português brasileiro para o pacote grub -# Copyright (C) 2017 Free Software Foundation, Inc. -# This file is distributed under the same license as the grub package. -# -# Luiz Fernando Ranghetti , 2012, 2013, 2014. -msgid "" -msgstr "" -"Project-Id-Version: grub 2.02-pre2\n" -"Report-Msgid-Bugs-To: bug-grub@gnu.org\n" -"POT-Creation-Date: 2019-07-04 16:09+0200\n" -"PO-Revision-Date: 2016-10-21 14:29-0200\n" -"Last-Translator: Luiz Fernando Ranghetti \n" -"Language-Team: Brazilian Portuguese \n" -"Language: pt_BR\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Bugs: Report translation errors to the Language-Team address.\n" -"Plural-Forms: nplurals=2; plural=(n > 1);\n" -"X-Generator: Poedit 1.8.11\n" - -#: grub-core/bus/usb/serial/ftdi.c:145 grub-core/bus/usb/serial/pl2303.c:158 -#: grub-core/term/ieee1275/escc.c:169 grub-core/term/ns8250.c:202 -msgid "unsupported serial port speed" -msgstr "velocidade de porta serial não suportada" - -#: grub-core/bus/usb/serial/ftdi.c:151 grub-core/bus/usb/serial/pl2303.c:164 -#: grub-core/term/efi/serial.c:116 grub-core/term/ieee1275/escc.c:175 -#: grub-core/term/ns8250.c:208 grub-core/term/serial.c:227 -#: grub-core/term/serial.c:243 -msgid "unsupported serial port parity" -msgstr "paridade de porta serial não suportada" - -#: grub-core/bus/usb/serial/ftdi.c:157 grub-core/bus/usb/serial/pl2303.c:170 -#: grub-core/term/efi/serial.c:122 grub-core/term/ieee1275/escc.c:181 -#: grub-core/term/ns8250.c:213 grub-core/term/serial.c:267 -msgid "unsupported serial port stop bits number" -msgstr "bit de parada de porta serial não suportada" - -#: grub-core/bus/usb/serial/ftdi.c:161 grub-core/bus/usb/serial/pl2303.c:174 -#: grub-core/term/efi/serial.c:126 grub-core/term/ieee1275/escc.c:185 -#: grub-core/term/ns8250.c:217 -msgid "unsupported serial port word length" -msgstr "tamanho de palavra de porta serial não suportada" - -#: grub-core/commands/acpi.c:42 -msgid "Don't load host tables specified by comma-separated list." -msgstr "" -"Não carregar tabelas de host especificado por lista separada por vírgulas." - -#: grub-core/commands/acpi.c:45 -msgid "Load only tables specified by comma-separated list." -msgstr "" -"Carregar apenas as tabelas especificadas pela lista separada por vírgulas." - -#: grub-core/commands/acpi.c:46 -msgid "Export version 1 tables to the OS." -msgstr "Exportar tabelas versão 1 para o SO." - -#: grub-core/commands/acpi.c:47 -msgid "Export version 2 and version 3 tables to the OS." -msgstr "Exportar tabelas versão 2 e 3 para o SO." - -#: grub-core/commands/acpi.c:48 -msgid "Set OEMID of RSDP, XSDT and RSDT." -msgstr "Definir OEMID de RSDP, XSDT e RSDT." - -#: grub-core/commands/acpi.c:50 -msgid "Set OEMTABLE ID of RSDP, XSDT and RSDT." -msgstr "Definir ID do OEMTABLE de RSDP, XSDT e RSDT." - -#: grub-core/commands/acpi.c:52 -msgid "Set OEMTABLE revision of RSDP, XSDT and RSDT." -msgstr "Definir revisão OEMTABLE de RSDP, XSDT e RSDT." - -#: grub-core/commands/acpi.c:54 -msgid "Set creator field of RSDP, XSDT and RSDT." -msgstr "Definir o campo do criador de RSDP, XSDT e RSDT." - -#: grub-core/commands/acpi.c:56 -msgid "Set creator revision of RSDP, XSDT and RSDT." -msgstr "Definir a revisão do criador de RSDP, XSDT e RSDT." - -#. TRANSLATORS: "hangs" here is a noun, not a verb. -#: grub-core/commands/acpi.c:58 -msgid "" -"Don't update EBDA. May fix failures or hangs on some BIOSes but makes it " -"ineffective with OS not receiving RSDP from GRUB." -msgstr "" -"Não atualizar EBDA. Pode corrigir as falhas ou travamentos em algumas BIOS, " -"mas, torna-se ineficaz em um SO que não recebe RSDP do GRUB." - -#: grub-core/commands/acpi.c:650 grub-core/commands/acpi.c:667 -#: grub-core/commands/i386/pc/play.c:105 grub-core/commands/keylayouts.c:230 -#: grub-core/commands/keylayouts.c:245 grub-core/commands/keylayouts.c:263 -#: grub-core/commands/verifiers.c:156 grub-core/efiemu/loadcore.c:350 -#: grub-core/kern/elf.c:117 grub-core/kern/elfXX.c:29 -#: grub-core/kern/elfXX.c:156 grub-core/loader/arm/linux.c:319 -#: grub-core/loader/arm64/linux.c:330 grub-core/loader/arm64/xen_boot.c:356 -#: grub-core/loader/efi/chainloader.c:276 -#: grub-core/loader/efi/chainloader.c:297 -#: grub-core/loader/efi/chainloader.c:329 grub-core/loader/efi/fdt.c:138 -#: grub-core/loader/i386/bsd.c:1276 grub-core/loader/i386/bsd.c:2116 -#: grub-core/loader/i386/bsdXX.c:20 grub-core/loader/i386/bsdXX.c:36 -#: grub-core/loader/i386/bsdXX.c:63 grub-core/loader/i386/bsdXX.c:357 -#: grub-core/loader/i386/bsdXX.c:376 grub-core/loader/i386/bsdXX.c:519 -#: grub-core/loader/i386/bsdXX.c:535 grub-core/loader/i386/bsdXX.c:615 -#: grub-core/loader/i386/bsdXX.c:638 -#: grub-core/loader/i386/coreboot/chainloader.c:112 -#: grub-core/loader/i386/coreboot/chainloader.c:148 -#: grub-core/loader/i386/coreboot/chainloader.c:170 -#: grub-core/loader/i386/linux.c:667 grub-core/loader/i386/linux.c:788 -#: grub-core/loader/i386/linux.c:1005 grub-core/loader/i386/multiboot_mbi.c:171 -#: grub-core/loader/i386/pc/chainloader.c:202 -#: grub-core/loader/i386/pc/linux.c:149 grub-core/loader/i386/pc/linux.c:320 -#: grub-core/loader/i386/pc/linux.c:362 grub-core/loader/i386/pc/plan9.c:457 -#: grub-core/loader/i386/pc/plan9.c:550 grub-core/loader/i386/pc/plan9.c:566 -#: grub-core/loader/i386/xen.c:934 grub-core/loader/i386/xen_file.c:72 -#: grub-core/loader/i386/xen_fileXX.c:43 grub-core/loader/i386/xen_fileXX.c:186 -#: grub-core/loader/i386/xen_fileXX.c:339 grub-core/loader/ia64/efi/linux.c:423 -#: grub-core/loader/ia64/efi/linux.c:471 grub-core/loader/linux.c:286 -#: grub-core/loader/macho.c:84 grub-core/loader/macho.c:109 -#: grub-core/loader/machoXX.c:33 grub-core/loader/machoXX.c:46 -#: grub-core/loader/machoXX.c:76 grub-core/loader/machoXX.c:116 -#: grub-core/loader/machoXX.c:131 grub-core/loader/machoXX.c:147 -#: grub-core/loader/machoXX.c:196 grub-core/loader/machoXX.c:317 -#: grub-core/loader/multiboot.c:434 grub-core/loader/multiboot_elfxx.c:171 -#: grub-core/loader/multiboot_elfxx.c:234 -#: grub-core/loader/multiboot_elfxx.c:278 grub-core/loader/multiboot_mbi2.c:129 -#: grub-core/loader/xnu.c:737 grub-core/loader/xnu.c:795 -#: grub-core/loader/xnu.c:816 grub-core/loader/xnu.c:871 -#: grub-core/loader/xnu.c:914 grub-core/loader/xnu.c:952 -#: grub-core/loader/xnu_resume.c:68 grub-core/loader/xnu_resume.c:153 -#: grub-core/loader/xnu_resume.c:165 util/grub-mkimagexx.c:2288 -#, c-format -msgid "premature end of file %s" -msgstr "fim de arquivo prematuro %s" - -#: grub-core/commands/acpi.c:779 -msgid "" -"[-1|-2] [--exclude=TABLE1,TABLE2|--load-only=TABLE1,TABLE2] FILE1 [FILE2] " -"[...]" -msgstr "" -"[-1|-2] [--excluir=TABELA1,TABELA2|--carregar somente=TABELA1,TABELA2] " -"ARQUIVO1 [ARQUIVO2] [...]" - -#: grub-core/commands/acpi.c:782 -msgid "Load host ACPI tables and tables specified by arguments." -msgstr "" -"Carregar tabelas de host ACPI e tabelas especificadas pelos argumentos." - -#: grub-core/commands/acpihalt.c:368 grub-core/kern/err.c:110 -#, c-format -msgid "error: %s.\n" -msgstr "erro: %s.\n" - -#: grub-core/commands/acpihalt.c:368 grub-core/kern/emu/misc.c:95 -#: grub-core/kern/emu/misc.c:105 grub-core/kern/emu/misc.c:134 -#: grub-core/kern/emu/mm.c:34 grub-core/kern/emu/mm.c:62 -#: grub-core/kern/mm.c:374 grub-core/lib/relocator.c:1282 -#: grub-core/lib/relocator.c:1439 grub-core/lib/relocator.c:1538 -#: grub-core/loader/arm/linux.c:259 grub-core/loader/arm64/linux.c:265 -#: grub-core/loader/arm64/linux.c:321 grub-core/loader/arm64/linux.c:340 -#: grub-core/loader/arm64/xen_boot.c:344 grub-core/loader/arm64/xen_boot.c:367 -#: grub-core/loader/efi/chainloader.c:289 grub-core/osdep/unix/dl.c:48 -#: grub-core/osdep/windows/dl.c:46 grub-core/script/lexer.c:156 -#: grub-core/script/lexer.c:182 -msgid "out of memory" -msgstr "memória insuficiente" - -#: grub-core/commands/acpihalt.c:374 grub-core/disk/cryptodisk.c:587 -#: grub-core/disk/cryptodisk.c:632 grub-core/kern/emu/hostdisk.c:307 -#: grub-core/kern/emu/hostfs.c:149 grub-core/kern/emu/misc.c:200 -#: grub-core/osdep/linux/ofpath.c:195 grub-core/osdep/linux/ofpath.c:521 -#: grub-core/osdep/linux/ofpath.c:534 util/glue-efi.c:80 util/glue-efi.c:94 -#: util/grub-editenv.c:155 util/grub-fstest.c:577 -#: util/grub-install-common.c:943 util/grub-mkrescue.c:634 -#: util/grub-mkrescue.c:888 util/grub-mount.c:506 util/grub-render-label.c:176 -#: util/misc.c:95 util/setup.c:814 util/setup.c:833 -#, c-format -msgid "cannot read `%s': %s" -msgstr "não foi possível ler '%s': %s" - -#. TRANSLATORS: It's computer shutdown using ACPI, not disabling ACPI. -#: grub-core/commands/acpihalt.c:452 -msgid "ACPI shutdown failed" -msgstr "Falhar ao desligar via ACPI" - -#: grub-core/commands/arc/lsdev.c:51 -msgid "List devices." -msgstr "Lista de dispositivos." - -#: grub-core/commands/blocklist.c:122 grub-core/commands/cat.c:57 -#: grub-core/commands/configfile.c:35 grub-core/commands/efi/loadbios.c:168 -#: grub-core/commands/file.c:159 grub-core/commands/hexdump.c:47 -#: grub-core/commands/legacycfg.c:209 grub-core/commands/legacycfg.c:315 -#: grub-core/commands/minicmd.c:44 grub-core/commands/syslinuxcfg.c:146 -#: grub-core/commands/testload.c:58 grub-core/commands/testspeed.c:52 -#: grub-core/disk/loopback.c:93 grub-core/efiemu/main.c:293 -#: grub-core/font/font_cmd.c:32 grub-core/kern/emu/hostdisk.c:519 -#: grub-core/loader/arm/linux.c:364 grub-core/loader/arm/linux.c:409 -#: grub-core/loader/arm/linux.c:472 grub-core/loader/arm64/linux.c:243 -#: grub-core/loader/arm64/linux.c:297 grub-core/loader/arm64/xen_boot.c:398 -#: grub-core/loader/arm64/xen_boot.c:411 grub-core/loader/arm64/xen_boot.c:462 -#: grub-core/loader/efi/chainloader.c:216 grub-core/loader/i386/bsd.c:1462 -#: grub-core/loader/i386/bsd.c:1807 grub-core/loader/i386/bsd.c:2085 -#: grub-core/loader/i386/coreboot/chainloader.c:438 -#: grub-core/loader/i386/linux.c:656 grub-core/loader/i386/linux.c:1041 -#: grub-core/loader/i386/pc/chainloader.c:290 -#: grub-core/loader/i386/pc/freedos.c:105 grub-core/loader/i386/pc/linux.c:138 -#: grub-core/loader/i386/pc/linux.c:400 grub-core/loader/i386/pc/ntldr.c:85 -#: grub-core/loader/i386/pc/plan9.c:409 -#: grub-core/loader/i386/pc/pxechainloader.c:94 -#: grub-core/loader/i386/pc/truecrypt.c:96 grub-core/loader/i386/xen.c:641 -#: grub-core/loader/i386/xen.c:768 grub-core/loader/i386/xen.c:844 -#: grub-core/loader/i386/xen.c:854 grub-core/loader/i386/xnu.c:488 -#: grub-core/loader/ia64/efi/linux.c:459 grub-core/loader/ia64/efi/linux.c:539 -#: grub-core/loader/mips/linux.c:238 grub-core/loader/mips/linux.c:429 -#: grub-core/loader/multiboot.c:322 grub-core/loader/multiboot.c:374 -#: grub-core/loader/multiboot.c:384 -#: grub-core/loader/powerpc/ieee1275/linux.c:269 -#: grub-core/loader/powerpc/ieee1275/linux.c:341 -#: grub-core/loader/sparc64/ieee1275/linux.c:305 -#: grub-core/loader/sparc64/ieee1275/linux.c:381 grub-core/loader/xnu.c:351 -#: grub-core/loader/xnu.c:460 grub-core/loader/xnu.c:778 -#: grub-core/loader/xnu.c:892 grub-core/loader/xnu.c:1277 -#: grub-core/loader/xnu.c:1427 grub-core/loader/xnu.c:1453 -#: grub-core/video/readers/jpeg.c:812 grub-core/video/readers/png.c:1123 -msgid "filename expected" -msgstr "é esperado o nome de arquivo" - -#. TRANSLATORS: "embed" is a verb (command description). " -#: grub-core/commands/blocklist.c:154 grub-core/commands/cat.c:163 -#: grub-core/commands/configfile.c:65 grub-core/commands/configfile.c:68 -#: grub-core/commands/configfile.c:74 grub-core/commands/configfile.c:80 -#: grub-core/commands/configfile.c:86 grub-core/commands/hashsum.c:34 -#: grub-core/commands/legacycfg.c:834 grub-core/commands/legacycfg.c:841 -#: grub-core/commands/legacycfg.c:846 grub-core/commands/legacycfg.c:851 -#: grub-core/commands/macbless.c:222 grub-core/commands/minicmd.c:198 -#: grub-core/commands/syslinuxcfg.c:186 grub-core/commands/syslinuxcfg.c:194 -#: grub-core/commands/syslinuxcfg.c:200 grub-core/commands/syslinuxcfg.c:206 -#: grub-core/commands/testload.c:163 grub-core/efiemu/main.c:312 -#: grub-core/kern/emu/main.c:100 grub-core/kern/emu/main.c:103 -#: grub-core/loader/i386/bsd.c:2137 grub-core/loader/i386/bsd.c:2140 -#: grub-core/loader/i386/bsd.c:2143 -#: grub-core/loader/i386/coreboot/chainloader.c:505 -#: grub-core/loader/ia64/efi/linux.c:594 include/grub/util/install.h:32 -#: include/grub/util/install.h:64 util/grub-glue-efi.c:52 -#: util/grub-glue-efi.c:54 util/grub-glue-efi.c:56 util/grub-install.c:254 -#: util/grub-install.c:301 util/grub-mkfont.c:936 util/grub-mkimage.c:68 -#: util/grub-mkimage.c:74 util/grub-mkimage.c:76 util/grub-mkimage.c:78 -#: util/grub-mkimage.c:81 util/grub-mklayout.c:52 util/grub-mklayout.c:54 -#: util/grub-mkrescue.c:97 util/grub-mkrescue.c:101 util/grub-mkrescue.c:104 -#: util/grub-mkrescue.c:105 util/grub-mkrescue.c:106 -#: util/grub-mkstandalone.c:47 util/grub-mkstandalone.c:49 -#: util/grub-probe.c:732 util/grub-render-label.c:59 -#: util/grub-render-label.c:70 util/grub-render-label.c:72 util/grub-setup.c:78 -#: util/grub-setup.c:80 util/grub-setup.c:84 util/grub-syslinux2cfg.c:74 -#: util/grub-syslinux2cfg.c:147 -msgid "FILE" -msgstr "ARQUIVO" - -#: grub-core/commands/blocklist.c:154 -msgid "Print a block list." -msgstr "Imprimir uma lista de bloco." - -#: grub-core/commands/boot.c:147 grub-core/commands/legacycfg.c:533 -#: grub-core/commands/legacycfg.c:574 grub-core/loader/arm64/linux.c:250 -#: grub-core/loader/i386/bsd.c:1799 grub-core/loader/i386/bsd.c:1900 -#: grub-core/loader/i386/bsd.c:2007 grub-core/loader/i386/bsd.c:2040 -#: grub-core/loader/i386/bsd.c:2089 grub-core/loader/i386/linux.c:1047 -#: grub-core/loader/i386/pc/linux.c:406 grub-core/loader/i386/xen.c:775 -#: grub-core/loader/i386/xen.c:859 grub-core/loader/ia64/efi/linux.c:545 -#: grub-core/loader/mips/linux.c:432 grub-core/loader/multiboot.c:388 -#: grub-core/loader/powerpc/ieee1275/linux.c:347 -#: grub-core/loader/sparc64/ieee1275/linux.c:387 grub-core/loader/xnu.c:572 -#: grub-core/loader/xnu.c:665 grub-core/loader/xnu.c:781 -#: grub-core/loader/xnu.c:895 grub-core/loader/xnu.c:1091 -#: grub-core/loader/xnu.c:1258 grub-core/loader/xnu.c:1289 -#: grub-core/loader/xnu.c:1430 -msgid "you need to load the kernel first" -msgstr "você precisa carregar o kernel primeiro" - -#: grub-core/commands/boot.c:189 -msgid "Boot an operating system." -msgstr "Iniciar um sistema operacional." - -#: grub-core/commands/boottime.c:36 -#: grub-core/commands/i386/coreboot/cb_timestamps.c:108 -msgid "No boot time statistics is available\n" -msgstr "Nenhuma estatística de tempo de inicialização está disponível\n" - -#: grub-core/commands/boottime.c:59 -msgid "Show boot time statistics." -msgstr "Exibir as estatísticas do tempo de inicialização." - -#: grub-core/commands/cacheinfo.c:40 -#, c-format -msgid "Disk cache statistics: hits = %lu (%lu.%02lu%%), misses = %lu\n" -msgstr "" -"Estatísticas de cache do disco: acertos = %lu (%lu.%02lu%%), erros = %lu\n" - -#: grub-core/commands/cacheinfo.c:45 -msgid "No disk cache statistics available\n" -msgstr "Nenhuma estatística de cache do disco disponível\n" - -#: grub-core/commands/cacheinfo.c:56 -msgid "Get disk cache info." -msgstr "Obter informações do cache do disco." - -#: grub-core/commands/cat.c:33 -msgid "Accept DOS-style CR/NL line endings." -msgstr "Aceitar finais de linha CR/NL estilo DOS." - -#: grub-core/commands/cat.c:163 grub-core/commands/minicmd.c:198 -msgid "Show the contents of a file." -msgstr "Exibe os conteúdos de um arquivo." - -#: grub-core/commands/cmp.c:43 grub-core/commands/i386/pc/drivemap.c:239 -#: grub-core/commands/i386/wrmsr.c:60 grub-core/commands/iorw.c:85 -#: grub-core/commands/memrw.c:84 grub-core/commands/password.c:75 -#: grub-core/commands/password_pbkdf2.c:94 grub-core/commands/pgp.c:826 -#: grub-core/commands/regexp.c:113 grub-core/mmap/mmap.c:517 -#: grub-core/net/dns.c:639 -msgid "two arguments expected" -msgstr "são esperados dois argumentos" - -#: grub-core/commands/cmp.c:45 -#, c-format -msgid "Compare file `%s' with `%s':\n" -msgstr "Comparar arquivo '%s' com '%s':\n" - -#: grub-core/commands/cmp.c:54 -#, c-format -msgid "Files differ in size: %llu [%s], %llu [%s]\n" -msgstr "Os arquivos diferem no tamanho: %llu [%s], %llu [%s]\n" - -#: grub-core/commands/cmp.c:81 -#, c-format -msgid "Files differ at the offset %llu: 0x%x [%s], 0x%x [%s]\n" -msgstr "Os arquivos diferem no deslocamento %llu: 0x%x [%s], 0x%x [%s]\n" - -#. TRANSLATORS: it's always exactly 2 files. -#: grub-core/commands/cmp.c:93 -msgid "The files are identical.\n" -msgstr "Os arquivos são idênticos.\n" - -#: grub-core/commands/cmp.c:113 -msgid "FILE1 FILE2" -msgstr "ARQUIVO1 ARQUIVO2" - -#: grub-core/commands/cmp.c:113 -msgid "Compare two files." -msgstr "Comparar dois arquivos." - -#: grub-core/commands/configfile.c:65 -msgid "Load another config file." -msgstr "Carregar outro arquivo de configuração." - -#: grub-core/commands/configfile.c:69 grub-core/commands/configfile.c:87 -msgid "Load another config file without changing context." -msgstr "Carregar outro arquivo de configuração sem alterar o contexto." - -#: grub-core/commands/configfile.c:75 -msgid "" -"Load another config file without changing context but take only menu entries." -msgstr "" -"Carregar outro arquivo de configuração sem alterar o contexto mas obter " -"apenas as entradas de menu." - -#: grub-core/commands/configfile.c:81 -msgid "Load another config file but take only menu entries." -msgstr "" -"Carregar outro arquivo de configuração mas obter apenas as entradas de menu." - -#: grub-core/commands/date.c:141 -msgid "[[year-]month-day] [hour:minute[:second]]" -msgstr "[[ano-]mês-dia] [hora:minuto[:segundo]]" - -#: grub-core/commands/date.c:142 -msgid "Display/set current datetime." -msgstr "Exibir/definir a data e hora atual." - -#: grub-core/commands/echo.c:30 -msgid "Do not output the trailing newline." -msgstr "Não exibir a nova linha final." - -#: grub-core/commands/echo.c:31 -msgid "Enable interpretation of backslash escapes." -msgstr "Habilitar a interpretação invertida de escapes." - -#: grub-core/commands/echo.c:134 -msgid "[-e|-n] STRING" -msgstr "[-e|-n] TEXTO" - -#: grub-core/commands/echo.c:134 -msgid "Display a line of text." -msgstr "Exibe uma linha de texto." - -#: grub-core/commands/efi/efifwsetup.c:82 -msgid "Reboot into firmware setup menu." -msgstr "Reiniciar no menu de configuração do firmware." - -#: grub-core/commands/efi/fixvideo.c:107 -msgid "Fix video problem." -msgstr "Corrigir problema de vídeo." - -#: grub-core/commands/efi/loadbios.c:52 -msgid "ROM image is present." -msgstr "A imagem ROM está presente." - -#: grub-core/commands/efi/loadbios.c:70 -msgid "Can't enable ROM area." -msgstr "Não foi possível habilitar a área ROM." - -#: grub-core/commands/efi/loadbios.c:209 -msgid "" -"Create BIOS-like structures for backward compatibility with existing OS." -msgstr "" -"Criar estruturas parecidas com a BIOS para compatibilidade com SO existente." - -#: grub-core/commands/efi/loadbios.c:214 -msgid "BIOS_DUMP [INT10_DUMP]" -msgstr "BIOS_DUMP [INT10_DUMP]" - -#: grub-core/commands/efi/loadbios.c:215 -msgid "Load BIOS dump." -msgstr "Carregar dump da BIOS." - -#: grub-core/commands/efi/shim_lock.c:76 -#, c-format -msgid "module cannot be loaded in UEFI secure boot mode: %s" -msgstr "" - -#: grub-core/commands/efi/shim_lock.c:98 -#, c-format -msgid "cannot boot due to dangerous module in memory: %s" -msgstr "" - -#: grub-core/commands/efi/shim_lock.c:116 -#, fuzzy -msgid "bad shim signature" -msgstr "assinatura ruim" - -#: grub-core/commands/efi/tpm.c:149 grub-core/commands/efi/tpm.c:189 -#: grub-core/commands/efi/tpm.c:256 grub-core/commands/efi/tpm.c:306 -#, fuzzy -msgid "Command failed" -msgstr "Falhar ao desligar" - -#: grub-core/commands/efi/tpm.c:151 grub-core/commands/efi/tpm.c:191 -#: grub-core/commands/efi/tpm.c:258 grub-core/commands/efi/tpm.c:308 -#, fuzzy -msgid "Invalid parameter" -msgstr "parâmetro inválido %s" - -#: grub-core/commands/efi/tpm.c:154 grub-core/commands/efi/tpm.c:194 -#: grub-core/commands/efi/tpm.c:261 grub-core/commands/efi/tpm.c:311 -msgid "Output buffer too small" -msgstr "" - -#: grub-core/commands/efi/tpm.c:156 grub-core/commands/efi/tpm.c:196 -#: grub-core/commands/efi/tpm.c:263 grub-core/commands/efi/tpm.c:313 -#, fuzzy -msgid "TPM unavailable" -msgstr "Caminho: não disponível" - -#: grub-core/commands/efi/tpm.c:158 grub-core/commands/efi/tpm.c:198 -#: grub-core/commands/efi/tpm.c:265 grub-core/commands/efi/tpm.c:315 -#, fuzzy -msgid "Unknown TPM error" -msgstr "Erro desconhecido de sistema" - -#: grub-core/commands/efi/tpm.c:240 grub-core/commands/efi/tpm.c:288 -msgid "cannot allocate TPM event buffer" -msgstr "" - -#: grub-core/commands/eval.c:63 -msgid "STRING ..." -msgstr "TEXTO ..." - -#: grub-core/commands/eval.c:64 -msgid "Evaluate arguments as GRUB commands" -msgstr "Avaliar argumentos como comandos GRUB" - -#: grub-core/commands/file.c:41 -msgid "Check if FILE can be booted as i386 PAE Xen unprivileged guest kernel" -msgstr "" -"Verificar se o ARQUIVO pode ser iniciado como kernel convidado sem " -"privilégios i386 PAE Xen" - -#: grub-core/commands/file.c:44 -msgid "Check if FILE can be booted as x86_64 Xen unprivileged guest kernel" -msgstr "" -"Verificar se o ARQUIVO pode ser iniciado como kernel convidado sem " -"privilégios x86_64 Xen" - -#: grub-core/commands/file.c:46 -msgid "Check if FILE can be used as Xen x86 privileged guest kernel" -msgstr "" -"Verificar se o ARQUIVO pode ser usado como kernel convidado com privilégios " -"x86 Xen" - -#: grub-core/commands/file.c:48 -msgid "Check if FILE can be used as x86 multiboot kernel" -msgstr "Verificar se o ARQUIVO pode ser usado como um kernel multiboot x86" - -#: grub-core/commands/file.c:50 -msgid "Check if FILE can be used as x86 multiboot2 kernel" -msgstr "Verificar se o ARQUIVO pode ser usado como um kernel multiboot2 x86" - -#: grub-core/commands/file.c:52 -msgid "Check if FILE is ARM Linux" -msgstr "Verificar se o ARQUIVO é ARM Linux" - -#: grub-core/commands/file.c:54 -msgid "Check if FILE is ARM64 Linux" -msgstr "Verificar se o ARQUIVO é ARM64 Linux" - -#: grub-core/commands/file.c:56 -msgid "Check if FILE is IA64 Linux" -msgstr "Verificar se o ARQUIVO é IA64 Linux" - -#: grub-core/commands/file.c:58 -msgid "Check if FILE is MIPS Linux" -msgstr "Verificar se o ARQUIVO é MIPS Linux" - -#: grub-core/commands/file.c:60 -msgid "Check if FILE is MIPSEL Linux" -msgstr "Verificar se o ARQUIVO é MIPSEL Linux" - -#: grub-core/commands/file.c:62 -msgid "Check if FILE is SPARC64 Linux" -msgstr "Verificar se o ARQUIVO é SPARC64 Linux" - -#: grub-core/commands/file.c:64 -msgid "Check if FILE is POWERPC Linux" -msgstr "Verificar se o ARQUIVO é POWERPC Linux" - -#: grub-core/commands/file.c:66 -msgid "Check if FILE is x86 Linux" -msgstr "Verificar se o ARQUIVO é x86 Linux" - -#: grub-core/commands/file.c:68 -msgid "Check if FILE is x86 Linux supporting 32-bit protocol" -msgstr "Verificar se o ARQUIVO é x86 Linux com suporte ao protocolo 32-bit" - -#: grub-core/commands/file.c:70 -msgid "Check if FILE is x86 kFreeBSD" -msgstr "Verificar se o ARQUIVO é x86 kFreeBSD" - -#: grub-core/commands/file.c:72 -msgid "Check if FILE is i386 kFreeBSD" -msgstr "Verificar se o ARQUIVO é i386 kFreeBSD" - -#: grub-core/commands/file.c:74 -msgid "Check if FILE is x86_64 kFreeBSD" -msgstr "Verificar se o ARQUIVO é x86_64 kFreeBSD" - -#: grub-core/commands/file.c:77 -msgid "Check if FILE is x86 kNetBSD" -msgstr "Verificar se o ARQUIVO é x86 kNetBSD" - -#: grub-core/commands/file.c:79 -msgid "Check if FILE is i386 kNetBSD" -msgstr "Verificar se o ARQUIVO é i386 kNetBSD" - -#: grub-core/commands/file.c:81 -msgid "Check if FILE is x86_64 kNetBSD" -msgstr "Verificar se o ARQUIVO é x86_64 kNetBSD" - -#: grub-core/commands/file.c:84 -msgid "Check if FILE is i386 EFI file" -msgstr "Verificar se o ARQUIVO é i386 arquivo EFI" - -#: grub-core/commands/file.c:86 -msgid "Check if FILE is x86_64 EFI file" -msgstr "Verificar se o ARQUIVO é x86_64 arquivo EFI" - -#: grub-core/commands/file.c:88 -msgid "Check if FILE is IA64 EFI file" -msgstr "Verificar se o ARQUIVO é IA64 arquivo EFI" - -#: grub-core/commands/file.c:90 -msgid "Check if FILE is ARM64 EFI file" -msgstr "Verificar se o ARQUIVO é ARM64 arquivo EFI" - -#: grub-core/commands/file.c:92 -msgid "Check if FILE is ARM EFI file" -msgstr "Verificar se o ARQUIVO é ARM arquivo EFI" - -#: grub-core/commands/file.c:94 -#, fuzzy -msgid "Check if FILE is RISC-V 32bit EFI file" -msgstr "Verificar se o ARQUIVO é ARM arquivo EFI" - -#: grub-core/commands/file.c:96 -#, fuzzy -msgid "Check if FILE is RISC-V 64bit EFI file" -msgstr "Verificar se o ARQUIVO é IA64 arquivo EFI" - -#: grub-core/commands/file.c:98 -msgid "Check if FILE is hiberfil.sys in hibernated state" -msgstr "Verificar se o ARQUIVO é hiberfil.sys no estado de hibernação" - -#: grub-core/commands/file.c:100 -msgid "Check if FILE is x86_64 XNU (Mac OS X kernel)" -msgstr "Verificar se o ARQUIVO é x86_64 XNU (kernel do Mac OS X)" - -#: grub-core/commands/file.c:102 -msgid "Check if FILE is i386 XNU (Mac OS X kernel)" -msgstr "Verificar se o ARQUIVO é i386 XNU (kernel do Mac OS X)" - -#: grub-core/commands/file.c:104 -msgid "Check if FILE is XNU (Mac OS X kernel) hibernated image" -msgstr "Verificar se o ARQUIVO é XNU (kernel do Mac OS X) imagem hibernada" - -#: grub-core/commands/file.c:106 -msgid "Check if FILE is BIOS bootsector" -msgstr "Verificar se o ARQUIVO é o setor de inicialização da BIOS" - -#. TRANSLATORS: it's a standalone boolean value, -#. opposite of "true". -#: grub-core/commands/file.c:675 grub-core/commands/i386/cmostest.c:63 -#: grub-core/commands/i386/cpuid.c:71 grub-core/commands/keystatus.c:83 -#: grub-core/commands/keystatus.c:87 grub-core/commands/keystatus.c:96 -#: grub-core/commands/test.c:436 grub-core/commands/true.c:39 -#: grub-core/script/execute.c:247 grub-core/script/execute.c:1039 -msgid "false" -msgstr "falso" - -#: grub-core/commands/file.c:684 -msgid "OPTIONS FILE" -msgstr "OPÇÕES ARQUIVO" - -#: grub-core/commands/file.c:685 -msgid "Check if FILE is of specified type." -msgstr "Verificar se o ARQUIVO é do tipo especificado." - -#. TRANSLATORS: It means that the specified partition e.g. -#. hd0,msdos1=/dev/sda1 doesn't exist. -#: grub-core/commands/gptsync.c:140 grub-core/kern/disk.c:258 -msgid "no such partition" -msgstr "nenhuma partição" - -#: grub-core/commands/gptsync.c:240 -#, c-format -msgid "New MBR is written to `%s'\n" -msgstr "A nova MBR está escrita em '%s'\n" - -#: grub-core/commands/gptsync.c:252 -msgid "DEVICE [PARTITION[+/-[TYPE]]] ..." -msgstr "DISPOSITIVO [PARTIÇÃO[+/-[TIPO]]] ..." - -#. TRANSLATORS: MBR type is one-byte partition -#. type id. -#: grub-core/commands/gptsync.c:255 -msgid "" -"Fill hybrid MBR of GPT drive DEVICE. Specified partitions will be a part of " -"hybrid MBR. Up to 3 partitions are allowed. TYPE is an MBR type. + means " -"that partition is active. Only one partition can be active." -msgstr "" -"Preencha a MBR híbrida do DISPOSITIVO da unidade GPT. Partições " -"especificadas serão uma parte da MBR híbrida. Até 3 partições são " -"permitidas. TIPO é um tipo de MBR. + significa que a partição está ativa. " -"Somente uma partição pode estar ativa." - -#: grub-core/commands/halt.c:40 -msgid "" -"Halts the computer. This command does not work on all firmware " -"implementations." -msgstr "" -"Desliga o computador. Este comando não funciona em todas as implementações " -"de firmware." - -#: grub-core/commands/hashsum.c:32 -msgid "Specify hash to use." -msgstr "Especifica o hash (soma de verificação) a utilizar." - -#: grub-core/commands/hashsum.c:32 -msgid "HASH" -msgstr "HASH" - -#: grub-core/commands/hashsum.c:33 -msgid "Check hashes of files with hash list FILE." -msgstr "Verifica os hashes dos arquivos com a lista de hash em ARQUIVO." - -#: grub-core/commands/hashsum.c:35 -msgid "Base directory for hash list." -msgstr "O diretório base para a lista de hash." - -#. TRANSLATORS: platform here isn't identifier. It can be translated. -#: grub-core/commands/hashsum.c:35 grub-core/commands/ls.c:150 -#: grub-core/commands/macbless.c:226 grub-core/commands/syslinuxcfg.c:51 -#: grub-core/commands/syslinuxcfg.c:54 grub-core/kern/emu/main.c:106 -#: include/grub/util/install.h:50 include/grub/util/install.h:53 -#: include/grub/util/install.h:56 include/grub/util/install.h:59 -#: util/grub-install.c:250 util/grub-install.c:252 util/grub-install.c:297 -#: util/grub-install.c:299 util/grub-mkimage.c:64 util/grub-mkimage.c:67 -#: util/grub-mknetdir.c:46 util/grub-mknetdir.c:48 util/grub-mkrescue.c:99 -#: util/grub-setup.c:82 util/grub-syslinux2cfg.c:63 util/grub-syslinux2cfg.c:65 -#: util/grub-syslinux2cfg.c:67 util/grub-syslinux2cfg.c:71 -msgid "DIR" -msgstr "DIRETÓRIO" - -#: grub-core/commands/hashsum.c:37 -msgid "Don't stop after first error." -msgstr "Não parar após o primeiro erro." - -#: grub-core/commands/hashsum.c:38 -msgid "Uncompress file before checksumming." -msgstr "Descompactar o arquivo antes de verificar o hash." - -#: grub-core/commands/hashsum.c:163 -#, c-format -msgid "%s: READ ERROR\n" -msgstr "%s: ERRO DE LEITURA\n" - -#: grub-core/commands/hashsum.c:177 -#, c-format -msgid "%s: HASH MISMATCH\n" -msgstr "%s: HASH COINCIDE\n" - -#: grub-core/commands/hashsum.c:188 -#, c-format -msgid "%s: OK\n" -msgstr "%s: OK\n" - -#: grub-core/commands/hashsum.c:282 -msgid "-h HASH [-c FILE [-p PREFIX]] [FILE1 [FILE2 ...]]" -msgstr "-h HASH [-c ARQUIVO [-p PREFIXO]] [ARQUIVO1 [ARQUIVO2 ...]]" - -#. TRANSLATORS: "hash checksum" is just to -#. be a bit more precise, you can treat it as -#. just "hash". -#: grub-core/commands/hashsum.c:287 grub-core/commands/hashsum.c:292 -#: grub-core/commands/hashsum.c:297 grub-core/commands/hashsum.c:302 -#: grub-core/commands/hashsum.c:307 grub-core/commands/hashsum.c:313 -msgid "Compute or check hash checksum." -msgstr "Computar ou verificar o hash." - -#: grub-core/commands/hashsum.c:290 grub-core/commands/hashsum.c:295 -#: grub-core/commands/hashsum.c:300 grub-core/commands/hashsum.c:305 -#: grub-core/commands/hashsum.c:311 -msgid "[-c FILE [-p PREFIX]] [FILE1 [FILE2 ...]]" -msgstr "[-c ARQUIVO [-p PREFIXO]] [ARQUIVO1 [ARQUIVO2 ...]]" - -#: grub-core/commands/hdparm.c:33 -msgid "" -"Set Advanced Power Management\n" -"(1=low, ..., 254=high, 255=off)." -msgstr "" -"Definir o gerenciamento avançado de energia (APM)\n" -"(1=baixo, ..., 254=alto, 255=desligado)." - -#: grub-core/commands/hdparm.c:36 -msgid "Display power mode." -msgstr "Exibir o modo de energia." - -#: grub-core/commands/hdparm.c:37 -msgid "Freeze ATA security settings until reset." -msgstr "Congelar as configurações de segurança do ATA até ser reiniciado." - -#: grub-core/commands/hdparm.c:39 -msgid "Display SMART health status." -msgstr "Exibir o status da saúde do SMART." - -#: grub-core/commands/hdparm.c:40 -msgid "" -"Set Automatic Acoustic Management\n" -"(0=off, 128=quiet, ..., 254=fast)." -msgstr "" -"Definir o gerenciamento acústico automático\n" -"(0=desligado, 128=silencioso, ..., 254=rápido)." - -#: grub-core/commands/hdparm.c:43 -msgid "" -"Set standby timeout\n" -"(0=off, 1=5s, 2=10s, ..., 240=20m, 241=30m, ...)." -msgstr "" -"Definir o tempo limite de espera\n" -"(0=desligado, 1=5s, 2=10s, ..., 240=20min, 241=30min, ...)." - -#: grub-core/commands/hdparm.c:46 -msgid "Set drive to standby mode." -msgstr "Definir a unidade para o modo de espera." - -#: grub-core/commands/hdparm.c:47 -msgid "Set drive to sleep mode." -msgstr "Definir a unidade para o modo suspenso." - -#: grub-core/commands/hdparm.c:48 -msgid "Print drive identity and settings." -msgstr "Configurações e identidade da unidade de impressão." - -#: grub-core/commands/hdparm.c:50 -msgid "Show raw contents of ATA IDENTIFY sector." -msgstr "Exibir o conteúdo bruto do setor ATA IDENTIFY." - -#: grub-core/commands/hdparm.c:52 -msgid "Disable/enable SMART (0/1)." -msgstr "Habilitar/desabilitar o SMART (0/1)" - -#: grub-core/commands/hdparm.c:53 -msgid "Do not print messages." -msgstr "Não exibir mensagens." - -#: grub-core/commands/hdparm.c:286 grub-core/commands/i386/rdmsr.c:68 -#: grub-core/commands/iorw.c:47 grub-core/commands/legacycfg.c:760 -#: grub-core/commands/legacycfg.c:812 grub-core/commands/macbless.c:190 -#: grub-core/commands/memrw.c:47 grub-core/commands/pgp.c:738 -#: grub-core/commands/pgp.c:792 grub-core/commands/search.c:304 -#: grub-core/commands/search_wrap.c:179 grub-core/commands/setpci.c:243 -#: grub-core/commands/sleep.c:71 grub-core/fs/zfs/zfsinfo.c:279 -#: grub-core/fs/zfs/zfsinfo.c:358 grub-core/gettext/gettext.c:492 -#: grub-core/kern/corecmd.c:65 grub-core/kern/corecmd.c:79 -#: grub-core/mmap/mmap.c:430 grub-core/net/dns.c:713 grub-core/net/dns.c:745 -#: grub-core/net/net.c:694 grub-core/net/net.c:1052 -#: grub-core/normal/context.c:194 grub-core/script/execute.c:131 -#: grub-core/term/gfxterm_background.c:136 -msgid "one argument expected" -msgstr "é esperado um parâmetro" - -#: grub-core/commands/hdparm.c:440 -msgid "[OPTIONS] DISK" -msgstr "[OPÇÕES] DISCO" - -#: grub-core/commands/hdparm.c:441 -msgid "Get/set ATA disk parameters." -msgstr "Obter/definir os parâmetros ATA do disco." - -#: grub-core/commands/help.c:132 grub-core/lib/arg.c:109 -#: grub-core/lib/gnulib/argp-help.c:1616 -msgid "Usage:" -msgstr "Uso:" - -#: grub-core/commands/help.c:146 -msgid "[PATTERN ...]" -msgstr "[PADRÃO ...]" - -#: grub-core/commands/help.c:147 -msgid "Show a help message." -msgstr "Exibe uma mensagem de ajuda." - -#: grub-core/commands/hexdump.c:31 -msgid "Skip offset bytes from the beginning of file." -msgstr "Ignorar os deslocamentos de bytes do início do arquivo." - -#: grub-core/commands/hexdump.c:33 -msgid "Read only LENGTH bytes." -msgstr "Ler apenas o COMPRIMENTO dos bytes." - -#: grub-core/commands/hexdump.c:125 -msgid "[OPTIONS] FILE_OR_DEVICE" -msgstr "[OPÇÕES] ARQUIVO_OU_DISPOSITIVO" - -#: grub-core/commands/hexdump.c:126 -msgid "Show raw contents of a file or memory." -msgstr "Exibir os conteúdos brutos de um arquivo ou memória." - -#: grub-core/commands/i386/cmosdump.c:58 -msgid "Show raw dump of the CMOS contents." -msgstr "Exibir o dump bruto dos conteúdos do CMOS." - -#: grub-core/commands/i386/cmostest.c:108 -#: grub-core/commands/i386/cmostest.c:111 -#: grub-core/commands/i386/cmostest.c:114 -msgid "BYTE:BIT" -msgstr "BYTE:BIT" - -#: grub-core/commands/i386/cmostest.c:109 -msgid "Test bit at BYTE:BIT in CMOS." -msgstr "Bit de teste em BYTE:BIT na CMOS." - -#: grub-core/commands/i386/cmostest.c:112 -msgid "Clear bit at BYTE:BIT in CMOS." -msgstr "Bit de limpeza em BYTE:BIT na CMOS." - -#. TRANSLATORS: A bit may be either set (1) or clear (0). -#: grub-core/commands/i386/cmostest.c:116 -msgid "Set bit at BYTE:BIT in CMOS." -msgstr "Bit de configuração em BYTE:BIT na CMOS." - -#: grub-core/commands/i386/coreboot/cb_timestamps.c:120 -msgid "Show coreboot boot time statistics." -msgstr "Exibir as estatísticas de tempo de inicialização do coreboot." - -#: grub-core/commands/i386/coreboot/cbls.c:137 -msgid "List coreboot tables." -msgstr "Lista as tabelas coreboot." - -#. TRANSLATORS: "(default)" at the end means that this option is used if -#. no argument is specified. -#: grub-core/commands/i386/cpuid.c:36 -msgid "Check if CPU supports 64-bit (long) mode (default)." -msgstr "Verifica se a CPU suporta o modo (padrão) de 64-bit (longo)." - -#: grub-core/commands/i386/cpuid.c:37 -msgid "Check if CPU supports Physical Address Extension." -msgstr "Verifica se a CPU suporta o PAE (Physical Address Extension)." - -#: grub-core/commands/i386/cpuid.c:119 -msgid "Check for CPU features." -msgstr "Verifica as funcionalidades da CPU." - -#. TRANSLATORS: In this file "mapping" refers to a change GRUB makes so if -#. your language doesn't have an equivalent of "mapping" you can -#. use the word like "rerouting". -#. -#: grub-core/commands/i386/pc/drivemap.c:43 -msgid "Show the current mappings." -msgstr "Exibe os mapeamentos atuais." - -#: grub-core/commands/i386/pc/drivemap.c:44 -msgid "Reset all mappings to the default values." -msgstr "Redefinir todos os mapeamentos para os valores padrões." - -#: grub-core/commands/i386/pc/drivemap.c:45 -msgid "Perform both direct and reverse mappings." -msgstr "Executar ambos os mapeamentos direto e inverso." - -#: grub-core/commands/i386/pc/drivemap.c:184 -msgid "No drives have been remapped" -msgstr "Nenhuma unidade foi remapeada." - -#. TRANSLATORS: This is the header of mapping list. -#. On the left is how OS will see the disks and -#. on the right current GRUB vision. -#: grub-core/commands/i386/pc/drivemap.c:191 -msgid "OS disk #num ------> GRUB/BIOS device" -msgstr "OS disco #número ------> Dispositivo GRUB/BIOS" - -#: grub-core/commands/i386/pc/drivemap.c:413 -msgid "-l | -r | [-s] grubdev osdisk." -msgstr "-l | -r | [-s] dispositivo_grub disco_so." - -#: grub-core/commands/i386/pc/drivemap.c:414 -msgid "Manage the BIOS drive mappings." -msgstr "Gerenciar os mapeamento de unidades da BIOS." - -#: grub-core/commands/i386/pc/halt.c:31 -msgid "Do not use APM to halt the computer." -msgstr "Não usar o APM para desligar o computador." - -#: grub-core/commands/i386/pc/halt.c:119 -msgid "Halt the system, if possible using APM." -msgstr "Desligar o sistema, se possível usando o APM." - -#: grub-core/commands/i386/pc/lsapm.c:75 -msgid "no APM found" -msgstr "APM não encontrado" - -#: grub-core/commands/i386/pc/lsapm.c:77 -#, c-format -msgid "" -"Version %u.%u\n" -"32-bit CS = 0x%x, len = 0x%x, offset = 0x%x\n" -"16-bit CS = 0x%x, len = 0x%x\n" -"DS = 0x%x, len = 0x%x\n" -msgstr "" -"Versão %u.%u\n" -"32 bit CS = 0x%x, comp. = 0x%x, desloc. = 0x%x\n" -"16 bit CS = 0x%x, comp. = 0x%x\n" -"DS = 0x%x, comp. = 0x%x\n" - -#: grub-core/commands/i386/pc/lsapm.c:86 -msgid "16-bit protected interface supported\n" -msgstr "Interface 16 bits protegida suportada\n" - -#: grub-core/commands/i386/pc/lsapm.c:87 -msgid "16-bit protected interface unsupported\n" -msgstr "Interface 16 bits protegida não suportada\n" - -#: grub-core/commands/i386/pc/lsapm.c:89 -msgid "32-bit protected interface supported\n" -msgstr "Interface 32 bits protegida suportada\n" - -#: grub-core/commands/i386/pc/lsapm.c:90 -msgid "32-bit protected interface unsupported\n" -msgstr "Interface 32 bits protegida não suportada\n" - -#: grub-core/commands/i386/pc/lsapm.c:92 -msgid "CPU Idle slows down processor\n" -msgstr "A CPU inativa desacelera o processador\n" - -#: grub-core/commands/i386/pc/lsapm.c:93 -msgid "CPU Idle doesn't slow down processor\n" -msgstr "A CPU inativa não desacelera o processador\n" - -#: grub-core/commands/i386/pc/lsapm.c:95 -msgid "APM disabled\n" -msgstr "APM desabilitado\n" - -#: grub-core/commands/i386/pc/lsapm.c:95 -msgid "APM enabled\n" -msgstr "APM habilitado\n" - -#: grub-core/commands/i386/pc/lsapm.c:97 -msgid "APM disengaged\n" -msgstr "APM desengajdado\n" - -#: grub-core/commands/i386/pc/lsapm.c:97 -msgid "APM engaged\n" -msgstr "APM engajado\n" - -#: grub-core/commands/i386/pc/lsapm.c:107 -msgid "Show APM information." -msgstr "Exibir informações APM." - -#. TRANSLATORS: It's musical notes, not the notes -#. you take. Play command expects arguments which can -#. be either a filename or tempo+notes. -#. This error happens if none is specified. -#: grub-core/commands/i386/pc/play.c:88 -msgid "filename or tempo and notes expected" -msgstr "é esperado nome de arquivo ou tempo e notas" - -#: grub-core/commands/i386/pc/play.c:113 grub-core/commands/i386/pc/play.c:144 -#, fuzzy, c-format -msgid "Invalid tempo in %s" -msgstr "Comando inválido %s.\n" - -#: grub-core/commands/i386/pc/play.c:151 grub-core/commands/macbless.c:172 -#: grub-core/fs/archelp.c:260 grub-core/fs/bfs.c:621 grub-core/fs/bfs.c:704 -#: grub-core/fs/btrfs.c:1726 grub-core/fs/btrfs.c:1755 -#: grub-core/fs/btrfs.c:1799 grub-core/fs/btrfs.c:1882 -#: grub-core/fs/btrfs.c:1906 grub-core/fs/fshelp.c:257 grub-core/fs/jfs.c:696 -#: grub-core/fs/minix.c:426 grub-core/fs/ufs.c:544 grub-core/fs/zfs/zfs.c:2083 -#: grub-core/fs/zfs/zfs.c:2095 grub-core/fs/zfs/zfs.c:2301 -#: grub-core/net/http.c:120 -#, c-format -msgid "file `%s' not found" -msgstr "arquivo '%s' não encontrado" - -#: grub-core/commands/i386/pc/play.c:162 grub-core/commands/i386/pc/play.c:171 -#: grub-core/kern/misc.c:419 grub-core/script/execute.c:138 -#: grub-core/script/execute.c:244 -msgid "unrecognized number" -msgstr "número não reconhecido" - -#: grub-core/commands/i386/pc/play.c:190 -msgid "FILE | TEMPO [PITCH1 DURATION1] [PITCH2 DURATION2] ... " -msgstr "ARQUIVO | TEMPO [TIMBRE1 DURAÇÃO1] [TIMBRE2 DURAÇÃO2] ... " - -#: grub-core/commands/i386/pc/play.c:191 -msgid "Play a tune." -msgstr "Reproduzir um tom." - -#: grub-core/commands/i386/pc/sendkey.c:39 -msgid "set numlock mode" -msgstr "definir o modo NumLock" - -#: grub-core/commands/i386/pc/sendkey.c:40 -msgid "set capslock mode" -msgstr "definir o modo CapsLock" - -#: grub-core/commands/i386/pc/sendkey.c:41 -msgid "set scrolllock mode" -msgstr "definir o modo ScrollLock" - -#: grub-core/commands/i386/pc/sendkey.c:42 -msgid "set insert mode" -msgstr "definir o modo Insert" - -#: grub-core/commands/i386/pc/sendkey.c:43 -msgid "set pause mode" -msgstr "definir o modo Pause" - -#: grub-core/commands/i386/pc/sendkey.c:44 -msgid "press left shift" -msgstr "pressionar o Shift esquerdo" - -#: grub-core/commands/i386/pc/sendkey.c:45 -msgid "press right shift" -msgstr "pressionar o Shift direito" - -#: grub-core/commands/i386/pc/sendkey.c:46 -msgid "press SysRq" -msgstr "pressionar SysRq" - -#: grub-core/commands/i386/pc/sendkey.c:47 -msgid "press NumLock key" -msgstr "pressionar a tecla NumLock" - -#: grub-core/commands/i386/pc/sendkey.c:48 -msgid "press CapsLock key" -msgstr "pressionar a tecla CapsLock" - -#: grub-core/commands/i386/pc/sendkey.c:49 -msgid "press ScrollLock key" -msgstr "pressionar a tecla ScrollLock" - -#: grub-core/commands/i386/pc/sendkey.c:50 -msgid "press Insert key" -msgstr "pressionar a tecla Insert" - -#: grub-core/commands/i386/pc/sendkey.c:51 -msgid "press left alt" -msgstr "pressionar o Alt esquerdo" - -#: grub-core/commands/i386/pc/sendkey.c:52 -msgid "press right alt" -msgstr "pressionar o Alt direito" - -#: grub-core/commands/i386/pc/sendkey.c:53 -msgid "press left ctrl" -msgstr "pressionar o Ctrl esquerdo" - -#: grub-core/commands/i386/pc/sendkey.c:54 -msgid "press right ctrl" -msgstr "pressionar o Ctrl direito" - -#: grub-core/commands/i386/pc/sendkey.c:55 -msgid "don't update LED state" -msgstr "não atualizar o estado do LED" - -#: grub-core/commands/i386/pc/sendkey.c:372 -msgid "[KEYSTROKE1] [KEYSTROKE2] ..." -msgstr "[COMBINAÇÃO_DE_TECLAS1] [COMBINAÇÃO_DE_TECLAS2] ..." - -#. TRANSLATORS: It can emulate multiple -#. keypresses. -#: grub-core/commands/i386/pc/sendkey.c:375 -msgid "Emulate a keystroke sequence" -msgstr "Emula um sequencia de teclas" - -#: grub-core/commands/i386/rdmsr.c:37 grub-core/commands/iorw.c:34 -#: grub-core/commands/memrw.c:33 grub-core/commands/setpci.c:73 -msgid "Save read value into variable VARNAME." -msgstr "Salvar o valor lido para dentro da variável NOMEDAVAR." - -#: grub-core/commands/i386/rdmsr.c:38 grub-core/commands/iorw.c:35 -#: grub-core/commands/memrw.c:34 grub-core/commands/probe.c:40 -#: grub-core/commands/search_wrap.c:40 grub-core/commands/setpci.c:74 -#: grub-core/commands/tr.c:32 -msgid "VARNAME" -msgstr "NOMEDAVAR" - -#: grub-core/commands/i386/rdmsr.c:55 grub-core/commands/i386/rdmsr.c:60 -#: grub-core/commands/i386/rdmsr.c:65 grub-core/commands/i386/wrmsr.c:47 -#: grub-core/commands/i386/wrmsr.c:52 grub-core/commands/i386/wrmsr.c:57 -#, fuzzy -msgid "unsupported instruction" -msgstr "formato gzip não suportado" - -#: grub-core/commands/i386/rdmsr.c:77 grub-core/commands/i386/wrmsr.c:69 -#: grub-core/commands/i386/wrmsr.c:77 grub-core/net/dns.c:727 -msgid "invalid argument" -msgstr "argumento inválido" - -#: grub-core/commands/i386/rdmsr.c:94 grub-core/commands/memrw.c:125 -#: grub-core/commands/memrw.c:129 grub-core/commands/memrw.c:133 -msgid "ADDR" -msgstr "ENDEREÇO" - -#: grub-core/commands/i386/rdmsr.c:95 -msgid "Read a CPU model specific register." -msgstr "" - -#: grub-core/commands/i386/wrmsr.c:86 -#, fuzzy -msgid "ADDR VALUE" -msgstr "VALOR DO ENDEREÇO [MÃSCARA]" - -#: grub-core/commands/i386/wrmsr.c:87 -msgid "Write a value to a CPU model specific register." -msgstr "" - -#: grub-core/commands/ieee1275/suspend.c:34 -msgid "Run `go' to resume GRUB." -msgstr "Execute 'go' para continuar o GRUB." - -#: grub-core/commands/ieee1275/suspend.c:45 -msgid "Return to IEEE1275 prompt." -msgstr "Retorna ao prompt IEEE1275." - -#: grub-core/commands/iorw.c:123 grub-core/commands/iorw.c:127 -#: grub-core/commands/iorw.c:131 grub-core/gdb/gdb.c:79 -msgid "PORT" -msgstr "PORTA" - -#: grub-core/commands/iorw.c:123 -msgid "Read 8-bit value from PORT." -msgstr "Ler valor 8 bit da PORTA." - -#: grub-core/commands/iorw.c:127 -msgid "Read 16-bit value from PORT." -msgstr "Ler valor 16 bit da PORTA." - -#: grub-core/commands/iorw.c:131 -msgid "Read 32-bit value from PORT." -msgstr "Ler valor 32 bit da PORTA." - -#: grub-core/commands/iorw.c:135 grub-core/commands/iorw.c:139 -msgid "PORT VALUE [MASK]" -msgstr "PORTA VALOR [MÃSCARA]" - -#: grub-core/commands/iorw.c:136 -msgid "Write 8-bit VALUE to PORT." -msgstr "Gravar VALOR 8 bit para a PORTA." - -#: grub-core/commands/iorw.c:140 -msgid "Write 16-bit VALUE to PORT." -msgstr "Gravar VALOR 16 bit para a PORTA." - -#: grub-core/commands/iorw.c:143 grub-core/commands/memrw.c:137 -#: grub-core/commands/memrw.c:141 grub-core/commands/memrw.c:145 -msgid "ADDR VALUE [MASK]" -msgstr "VALOR DO ENDEREÇO [MÃSCARA]" - -#: grub-core/commands/iorw.c:144 -msgid "Write 32-bit VALUE to PORT." -msgstr "Gravar VALOR 32 bit para a PORTA." - -#: grub-core/commands/keylayouts.c:215 grub-core/commands/loadenv.c:61 -#: grub-core/commands/nativedisk.c:189 grub-core/efiemu/main.c:235 -#: grub-core/font/font.c:428 grub-core/gfxmenu/gfxmenu.c:63 -#: grub-core/kern/device.c:42 grub-core/kern/dl.c:740 -#, c-format -msgid "variable `%s' isn't set" -msgstr "a variável '%s' não está definida" - -#: grub-core/commands/keylayouts.c:301 -msgid "Load a keyboard layout." -msgstr "Carregar um leiaute de teclado." - -#. TRANSLATORS: "Check" in a sense that if this key is pressed then -#. "true" is returned, otherwise "false". -#: grub-core/commands/keystatus.c:32 -msgid "Check Shift key." -msgstr "Verificar a tecla Shift." - -#: grub-core/commands/keystatus.c:33 -msgid "Check Control key." -msgstr "Verificar a tecla Ctrl." - -#: grub-core/commands/keystatus.c:34 -msgid "Check Alt key." -msgstr "Verificar a tecla Alt." - -#. TRANSLATORS: there are 3 modifiers. -#: grub-core/commands/keystatus.c:106 -msgid "Check key modifier status." -msgstr "Verificar o status da tecla modificadora." - -#: grub-core/commands/legacycfg.c:512 grub-core/commands/legacycfg.c:526 -#: grub-core/commands/legacycfg.c:546 grub-core/commands/legacycfg.c:559 -#: grub-core/commands/time.c:43 grub-core/script/function.c:109 -#: util/grub-file.c:100 util/grub-fstest.c:57 util/grub-mount.c:69 -#, c-format -msgid "can't find command `%s'" -msgstr "não foi possível encontrar o comando '%s'" - -#: grub-core/commands/legacycfg.c:813 grub-core/normal/auth.c:225 -#: util/grub-mkpasswd-pbkdf2.c:139 -msgid "Enter password: " -msgstr "Digite a senha: " - -#. TRANSLATORS: "legacy config" means -#. "config as used by grub-legacy". -#: grub-core/commands/legacycfg.c:837 -msgid "Parse legacy config in same context" -msgstr "Analisar a configuração antiga no mesmo contexto." - -#: grub-core/commands/legacycfg.c:842 -msgid "Parse legacy config in new context" -msgstr "Analisar a configuração antiga no novo contexto." - -#: grub-core/commands/legacycfg.c:847 -msgid "Parse legacy config in same context taking only menu entries" -msgstr "" -"Analisar a configuração antiga no mesmo contexto apenas para as entradas de " -"menu" - -#: grub-core/commands/legacycfg.c:852 -msgid "Parse legacy config in new context taking only menu entries" -msgstr "" -"Analisar a configuração antiga no novo contexto apenas para as entradas de " -"menu" - -#: grub-core/commands/legacycfg.c:856 -msgid "[--no-mem-option] [--type=TYPE] FILE [ARG ...]" -msgstr "[--no-mem-option] [--type=TIPO] ARQUIVO [ARGUMENTO ...]" - -#: grub-core/commands/legacycfg.c:857 -msgid "Simulate grub-legacy `kernel' command" -msgstr "Simular o comando 'kernel' do grub-legacy" - -#: grub-core/commands/legacycfg.c:861 grub-core/commands/legacycfg.c:865 -msgid "FILE [ARG ...]" -msgstr "ARQUIVO [ARGUMENTO ...]" - -#: grub-core/commands/legacycfg.c:862 -msgid "Simulate grub-legacy `initrd' command" -msgstr "Simular o comando 'initrd' do grub-legacy" - -#: grub-core/commands/legacycfg.c:866 -msgid "Simulate grub-legacy `modulenounzip' command" -msgstr "Simular o comando 'modulenounzip' do grub-legacy" - -#: grub-core/commands/legacycfg.c:870 grub-core/commands/legacycfg.c:875 -msgid "[--md5] PASSWD [FILE]" -msgstr "[--md5] SENHA [ARQUIVO]" - -#: grub-core/commands/legacycfg.c:871 -msgid "Simulate grub-legacy `password' command" -msgstr "Simular o comando 'password' do grub-legacy" - -#: grub-core/commands/legacycfg.c:876 -msgid "Simulate grub-legacy `password' command in menu entry mode" -msgstr "Simular o comando 'password' do grub-legacy no modo de entrada do menu" - -#. TRANSLATORS: This option is used to override default filename -#. for loading and storing environment. -#: grub-core/commands/loadenv.c:37 -msgid "Specify filename." -msgstr "Especificar um nome de arquivo." - -#: grub-core/commands/loadenv.c:39 -msgid "Skip signature-checking of the environment file." -msgstr "Ignorar a verificação de assinatura do arquivo de ambiente." - -#: grub-core/commands/loadenv.c:451 -msgid "[-f FILE] [-s|--skip-sig] [variable_name_to_whitelist] [...]" -msgstr "" -"[-f ARQUIVO] [-s|--skip-sig] [nome_da_variável_para_a_lista_branca] [...]" - -#: grub-core/commands/loadenv.c:452 -msgid "Load variables from environment block file." -msgstr "Carregar as variáveis do arquivo de bloco de ambiente." - -#: grub-core/commands/loadenv.c:455 -msgid "[-f FILE]" -msgstr "[-f ARQUIVO]" - -#: grub-core/commands/loadenv.c:456 -msgid "List variables from environment block file." -msgstr "Listar as variáveis do arquivo de bloco de ambiente." - -#: grub-core/commands/loadenv.c:460 -msgid "[-f FILE] variable_name [...]" -msgstr "[-f ARQUIVO] nome_da_variável [...]" - -#: grub-core/commands/loadenv.c:461 -msgid "Save variables to environment block file." -msgstr "Salvar as variáveis no arquivo de bloco de ambiente." - -#: grub-core/commands/ls.c:40 -msgid "Show a long list with more detailed information." -msgstr "Exibir uma lista longa com informações mais detalhadas." - -#: grub-core/commands/ls.c:41 -msgid "Print sizes in a human readable format." -msgstr "Imprimir tamanhos de forma legível." - -#: grub-core/commands/ls.c:42 -msgid "List all files." -msgstr "Listar todos os arquivos." - -#: grub-core/commands/ls.c:73 -msgid "Network protocols:" -msgstr "Protocolos de rede:" - -#: grub-core/commands/ls.c:295 -msgid "[-l|-h|-a] [FILE ...]" -msgstr "[-l|-h|-a] [ARQUIVO ...]" - -#: grub-core/commands/ls.c:296 -msgid "List devices and files." -msgstr "Listar os dispositivos e arquivos." - -#: grub-core/commands/lsacpi.c:255 -msgid "Show version 1 tables only." -msgstr "Exibir apenas as tabelas versão 1." - -#: grub-core/commands/lsacpi.c:256 -msgid "Show version 2 and version 3 tables only." -msgstr "Exibir apenas as tabelas versão 2 e 3." - -#: grub-core/commands/lsacpi.c:306 -msgid "Show ACPI information." -msgstr "Exibir informações ACPI." - -#: grub-core/commands/lsmmap.c:31 -msgid "available RAM" -msgstr "RAM disponível" - -#: grub-core/commands/lsmmap.c:32 -msgid "reserved RAM" -msgstr "RAM reservada" - -#. TRANSLATORS: this refers to memory where ACPI tables are stored -#. and which can be used by OS once it loads ACPI tables. -#: grub-core/commands/lsmmap.c:35 -msgid "ACPI reclaimable RAM" -msgstr "RAM recuperável da ACPI" - -#. TRANSLATORS: this refers to memory which ACPI-compliant OS -#. is required to save accross hibernations. -#: grub-core/commands/lsmmap.c:38 -msgid "ACPI non-volatile storage RAM" -msgstr "Armazenamento RAM não volátil da ACPI" - -#: grub-core/commands/lsmmap.c:39 -msgid "faulty RAM (BadRAM)" -msgstr "RAM com problemas (BadRAM)" - -#: grub-core/commands/lsmmap.c:40 -msgid "persistent RAM" -msgstr "" - -#: grub-core/commands/lsmmap.c:41 -msgid "persistent RAM (legacy)" -msgstr "" - -#: grub-core/commands/lsmmap.c:42 -msgid "RAM holding coreboot tables" -msgstr "RAM armazenando tabelas de coreboot" - -#: grub-core/commands/lsmmap.c:43 -msgid "RAM holding firmware code" -msgstr "RAM armazenando código de firmware" - -#: grub-core/commands/lsmmap.c:52 -#, c-format -msgid "base_addr = 0x%llx, length = 0x%llx, %s\n" -msgstr "endereço_base = 0x%llx, comprimento = 0x%llx, %s\n" - -#: grub-core/commands/lsmmap.c:55 -#, c-format -msgid "base_addr = 0x%llx, length = 0x%llx, type = 0x%x\n" -msgstr "endereço_base = 0x%llx, comprimento = 0x%llx, tipo = 0x%x\n" - -#: grub-core/commands/lsmmap.c:79 -msgid "List memory map provided by firmware." -msgstr "Listar mapa de memória fornecido pelo firmware." - -#: grub-core/commands/lspci.c:232 -msgid "List PCI devices." -msgstr "Listar dispositivos PCI." - -#: grub-core/commands/macbless.c:224 -msgid "Bless FILE of HFS or HFS+ partition for intel macs." -msgstr "" - -#: grub-core/commands/macbless.c:228 -msgid "Bless DIR of HFS or HFS+ partition for PPC macs." -msgstr "" - -#: grub-core/commands/memrw.c:125 -msgid "Read 8-bit value from ADDR." -msgstr "Ler valor 8 bit do ENDEREÇO." - -#: grub-core/commands/memrw.c:129 -msgid "Read 16-bit value from ADDR." -msgstr "Ler valor 16 bit do ENDEREÇO;" - -#: grub-core/commands/memrw.c:133 -msgid "Read 32-bit value from ADDR." -msgstr "Ler valor 32 bit do ENDEREÇO." - -#: grub-core/commands/memrw.c:138 -msgid "Write 8-bit VALUE to ADDR." -msgstr "Gravar VALOR 8 bit para o ENDEREÇO." - -#: grub-core/commands/memrw.c:142 -msgid "Write 16-bit VALUE to ADDR." -msgstr "Gravar VALOR 16 bit para o ENDEREÇO." - -#: grub-core/commands/memrw.c:146 -msgid "Write 32-bit VALUE to ADDR." -msgstr "Gravar VALOR 32 bit para o ENDEREÇO." - -#: grub-core/commands/menuentry.c:31 -msgid "Menu entry type." -msgstr "Tipo de entrada do menu." - -#: grub-core/commands/menuentry.c:31 grub-core/commands/menuentry.c:38 -#: grub-core/commands/menuentry.c:39 grub-core/gettext/gettext.c:520 -#: util/grub-fstest.c:520 util/grub-install.c:291 util/grub-install.c:304 -#: util/grub-mknetdir.c:51 util/grub-mkrescue.c:109 util/grub-mkrescue.c:110 -#: util/grub-mount.c:453 util/grub-render-label.c:65 -msgid "STRING" -msgstr "TEXTO" - -#: grub-core/commands/menuentry.c:33 -msgid "List of users allowed to boot this entry." -msgstr "Lista de usuários com permissão de iniciar esta entrada." - -#: grub-core/commands/menuentry.c:33 -msgid "USERNAME[,USERNAME]" -msgstr "NOME_DE_USUÃRIO[,NOME_DE_USUÃRIO]" - -#: grub-core/commands/menuentry.c:36 -msgid "Keyboard key to quickly boot this entry." -msgstr "Tecla para iniciar rapidamente esta entrada." - -#: grub-core/commands/menuentry.c:36 -msgid "KEYBOARD_KEY" -msgstr "TECLA" - -#: grub-core/commands/menuentry.c:38 -msgid "Use STRING as menu entry body." -msgstr "Use TEXTO como corpo da entrada do menu." - -#: grub-core/commands/menuentry.c:39 -msgid "Menu entry identifier." -msgstr "Identificador de entrada do menu." - -#. TRANSLATORS: menu entry can either be bootable by anyone or only by -#. handful of users. By default when security is active only superusers can -#. boot a given menu entry. With --unrestricted (this option) -#. anyone can boot it. -#: grub-core/commands/menuentry.c:44 -msgid "This entry can be booted by any user." -msgstr "Esta entrada pode ser iniciada por qualquer usuário." - -#: grub-core/commands/menuentry.c:323 grub-core/commands/menuentry.c:328 -#: grub-core/tests/test_blockarg.c:46 -msgid "BLOCK" -msgstr "BLOCO" - -#: grub-core/commands/menuentry.c:323 -msgid "Define a menu entry." -msgstr "Definir uma entrada do menu." - -#: grub-core/commands/menuentry.c:328 -msgid "Define a submenu." -msgstr "Definir um submenu." - -#. TRANSLATORS: this is module list header. Name -#. is module name, Ref Count is a reference counter -#. (how many modules or open descriptors use it). -#. Dependencies are the other modules it uses. -#. -#: grub-core/commands/minicmd.c:162 -msgid "Name\tRef Count\tDependencies\n" -msgstr "Nome\tContador Ref\tDependências\n" - -#: grub-core/commands/minicmd.c:201 -msgid "Show this message." -msgstr "Exibir esta mensagem." - -#: grub-core/commands/minicmd.c:204 -msgid "ADDR [SIZE]" -msgstr "ENDEREÇO [TAMANHO]" - -#: grub-core/commands/minicmd.c:204 -msgid "Show memory contents." -msgstr "Exibir o conteúdo da memória." - -#: grub-core/commands/minicmd.c:207 grub-core/kern/corecmd.c:188 -#: util/grub-install.c:275 -msgid "MODULE" -msgstr "MÓDULO" - -#: grub-core/commands/minicmd.c:207 -msgid "Remove a module." -msgstr "Remover um módulo." - -#: grub-core/commands/minicmd.c:210 -msgid "Show loaded modules." -msgstr "Exibir os módulos carregados." - -#: grub-core/commands/minicmd.c:213 -msgid "Exit from GRUB." -msgstr "Sair do GRUB." - -#: grub-core/commands/mips/loongson/lsspd.c:42 -msgid "No CS5536 found" -msgstr "Nenhum CS5536 encontrado." - -#: grub-core/commands/mips/loongson/lsspd.c:45 -#, c-format -msgid "CS5536 at %d:%d.%d\n" -msgstr "CS5536 em %d:%d.%d\n" - -#. TRANSLATORS: System management bus is often used to access components like -#. RAM (info only, not data) or batteries. I/O space is where in memory -#. its ports are. -#: grub-core/commands/mips/loongson/lsspd.c:55 -#, c-format -msgid "System management bus controller I/O space is at 0x%x\n" -msgstr "" - -#. TRANSLATORS: it's shown in a report in a way -#. like number 1: ... number 2: ... -#. -#: grub-core/commands/mips/loongson/lsspd.c:66 -#, c-format -msgid "RAM slot number %d\n" -msgstr "Número de slot da RAM %d\n" - -#: grub-core/commands/mips/loongson/lsspd.c:73 -#, c-format -msgid "Written SPD bytes: %d B.\n" -msgstr "Bytes SPD gravados: %d B.\n" - -#: grub-core/commands/mips/loongson/lsspd.c:74 -#, c-format -msgid "Total flash size: %d B.\n" -msgstr "Tamanho total da flash: %d B.\n" - -#: grub-core/commands/mips/loongson/lsspd.c:79 -msgid "Memory type: DDR2." -msgstr "Tipo de memória: DDR2." - -#: grub-core/commands/mips/loongson/lsspd.c:83 -#, c-format -msgid "Part no: %s.\n" -msgstr "Número da parte: %s.\n" - -#: grub-core/commands/mips/loongson/lsspd.c:86 -msgid "Memory type: Unknown." -msgstr "Tipo de memória: desconhecido." - -#: grub-core/commands/mips/loongson/lsspd.c:97 -msgid "Print Memory information." -msgstr "Exibir informação de memória." - -#: grub-core/commands/nativedisk.c:118 grub-core/commands/probe.c:118 -#: grub-core/commands/probe.c:124 util/grub-probe.c:450 -#, c-format -msgid "%s does not support UUIDs" -msgstr "%s não suporta UUIDs" - -#: grub-core/commands/nativedisk.c:325 -msgid "[MODULE1 MODULE2 ...]" -msgstr "[MÓDULO1 MÓDULO2 ...]" - -#: grub-core/commands/nativedisk.c:326 -msgid "" -"Switch to native disk drivers. If no modules are specified default set (pata," -"ahci,usbms,ohci,uhci,ehci) is used" -msgstr "" - -#: grub-core/commands/parttool.c:40 -msgid "" -"Perform COMMANDS on partition.\n" -"Use `parttool PARTITION help' for the list of available commands." -msgstr "" -"Executa COMANDOS na partição.\n" -"Use 'parttool PARTIÇÃO help' para a lista de comandos disponíveis." - -#: grub-core/commands/parttool.c:123 -msgid "=VAL" -msgstr "=VALOR" - -#: grub-core/commands/parttool.c:136 -#, c-format -msgid "Sorry, no parttool is available for %s\n" -msgstr "Desculpe, nenhum parttool disponível para %s\n" - -#: grub-core/commands/parttool.c:288 grub-core/lib/arg.c:285 -#: grub-core/lib/arg.c:351 -#, c-format -msgid "unknown argument `%s'" -msgstr "argumento desconhecido '%s'" - -#: grub-core/commands/parttool.c:344 -msgid "PARTITION COMMANDS" -msgstr "COMANDOS DA PARTIÇÃO" - -#: grub-core/commands/password.c:85 -msgid "USER PASSWORD" -msgstr "SENHA DO USUÃRIO" - -#: grub-core/commands/password.c:86 -msgid "Set user password (plaintext). Unrecommended and insecure." -msgstr "Definir senha de usuário (texto puro). Desaconselhado e inseguro." - -#. TRANSLATORS: it means that the string which -#. was supposed to be a password hash doesn't -#. have a correct format, not to password -#. mismatch. -#: grub-core/commands/password_pbkdf2.c:98 -#: grub-core/commands/password_pbkdf2.c:115 -#: grub-core/commands/password_pbkdf2.c:123 -#: grub-core/commands/password_pbkdf2.c:150 -#: grub-core/commands/password_pbkdf2.c:179 -msgid "invalid PBKDF2 password" -msgstr "senha PBKDF2 inválida" - -#: grub-core/commands/password_pbkdf2.c:202 -msgid "USER PBKDF2_PASSWORD" -msgstr "USUÃRIO SENHA_PBKDF2" - -#: grub-core/commands/password_pbkdf2.c:203 -msgid "Set user password (PBKDF2). " -msgstr "Definir senha de usuário (PBKDF2). " - -#: grub-core/commands/pcidump.c:39 grub-core/commands/setpci.c:69 -msgid "Select device by vendor and device IDs." -msgstr "Selecionar dispositivo pelo fabricante e ID do dispositivo." - -#: grub-core/commands/pcidump.c:40 grub-core/commands/setpci.c:70 -msgid "[vendor]:[device]" -msgstr "[fabricante]:[dispositivo]" - -#: grub-core/commands/pcidump.c:41 grub-core/commands/setpci.c:71 -msgid "Select device by its position on the bus." -msgstr "Selecionar dispositivo por sua posição no barramento." - -#: grub-core/commands/pcidump.c:42 grub-core/commands/setpci.c:72 -msgid "[bus]:[slot][.func]" -msgstr "[barramento]:[slot][.func]" - -#: grub-core/commands/pcidump.c:109 grub-core/commands/pcidump.c:138 -#: grub-core/commands/setpci.c:183 grub-core/commands/setpci.c:214 -#: grub-core/fs/zfs/zfs.c:3794 grub-core/kern/emu/hostdisk.c:458 -#: grub-core/kern/emu/hostdisk.c:473 grub-core/kern/file.c:44 -#, c-format -msgid "missing `%c' symbol" -msgstr "símbolo '%c' faltando" - -#: grub-core/commands/pcidump.c:168 -msgid "[-s POSITION] [-d DEVICE]" -msgstr "[-s POSIÇÃO] [-d DISPOSITIVO]" - -#: grub-core/commands/pcidump.c:169 -msgid "Show raw dump of the PCI configuration space." -msgstr "" - -#: grub-core/commands/pgp.c:45 -msgid "Skip signature-checking of the public key file." -msgstr "Ignorar a verificação de assinatura do arquivo de chave público." - -#. TRANSLATORS: it's about GNUPG signatures. -#: grub-core/commands/pgp.c:71 grub-core/commands/pgp.c:81 -#: grub-core/commands/pgp.c:86 grub-core/commands/pgp.c:96 -#: grub-core/commands/pgp.c:103 grub-core/commands/pgp.c:107 -#: grub-core/commands/pgp.c:114 grub-core/commands/pgp.c:119 -#: grub-core/commands/pgp.c:124 grub-core/commands/pgp.c:128 -#: grub-core/commands/pgp.c:268 grub-core/commands/pgp.c:276 -#: grub-core/commands/pgp.c:281 grub-core/commands/pgp.c:289 -#: grub-core/commands/pgp.c:320 grub-core/commands/pgp.c:327 -#: grub-core/commands/pgp.c:332 grub-core/commands/pgp.c:342 -#: grub-core/commands/pgp.c:468 grub-core/commands/pgp.c:471 -#: grub-core/commands/pgp.c:474 grub-core/commands/pgp.c:477 -#: grub-core/commands/pgp.c:484 grub-core/commands/pgp.c:490 -#: grub-core/commands/pgp.c:665 -msgid "bad signature" -msgstr "assinatura ruim" - -#. TRANSLATORS: %08x is 32-bit key id. -#: grub-core/commands/pgp.c:636 grub-core/commands/pgp.c:812 -#, c-format -msgid "public key %08x not found" -msgstr "chave pública %08x não encontrads" - -#: grub-core/commands/pgp.c:651 grub-core/disk/diskfilter.c:772 -#: grub-core/disk/diskfilter.c:782 grub-core/fs/ntfs.c:404 -#: grub-core/fs/zfs/zfs.c:1933 grub-core/normal/menu.c:428 -#, c-format -msgid "module `%s' isn't loaded" -msgstr "módulo '%s' não está carregado" - -#: grub-core/commands/pgp.c:994 -msgid "[-s|--skip-sig] FILE SIGNATURE_FILE [PUBKEY_FILE]" -msgstr "[-s|--skip-sig] ARQUIVO ARQUIVO_ASSINATURA [ARQUIVO_CHAVE_PÚBLICA]" - -#: grub-core/commands/pgp.c:995 -msgid "Verify detached signature." -msgstr "" - -#: grub-core/commands/pgp.c:998 -msgid "[-s|--skip-sig] PUBKEY_FILE" -msgstr "[-s|--skip-sig] ARQUIVO_CHAVE_PÚBLICA" - -#: grub-core/commands/pgp.c:999 -msgid "Add PUBKEY_FILE to trusted keys." -msgstr "Adiciona o ARQUIVO_CHAVE_PÚBLICA as chaves confiáveis." - -#: grub-core/commands/pgp.c:1003 -msgid "Show the list of trusted keys." -msgstr "Exibe a lista de chaves confiáveis." - -#: grub-core/commands/pgp.c:1005 -msgid "PUBKEY_ID" -msgstr "ID_CHAVE_PÚBLICA" - -#: grub-core/commands/pgp.c:1006 -msgid "Remove PUBKEY_ID from trusted keys." -msgstr "Remove a ID_CHAVE_PÚBLICA das chaves confiáveis." - -#: grub-core/commands/probe.c:40 grub-core/commands/tr.c:32 -msgid "Set a variable to return value." -msgstr "Definir uma variável para retornar valor." - -#. TRANSLATORS: It's a driver that is currently in use to access -#. the diven disk. -#: grub-core/commands/probe.c:43 -msgid "Determine driver." -msgstr "Determinar driver." - -#: grub-core/commands/probe.c:44 -msgid "Determine partition map type." -msgstr "Determinar o tipo de mapa da partição." - -#: grub-core/commands/probe.c:45 -msgid "Determine filesystem type." -msgstr "Determinar o tipo de sistema de arquivos." - -#: grub-core/commands/probe.c:46 -msgid "Determine filesystem UUID." -msgstr "Determinar o UUID do de sistema de arquivos." - -#: grub-core/commands/probe.c:47 -msgid "Determine filesystem label." -msgstr "Determinar o rótulo do sistema de arquivos." - -#: grub-core/commands/probe.c:139 grub-core/commands/probe.c:146 -#: util/grub-probe.c:462 -#, c-format -msgid "filesystem `%s' does not support labels" -msgstr "o sistema de arquivos '%s' não suporta rótulos" - -#: grub-core/commands/probe.c:165 grub-core/fs/zfs/zfsinfo.c:430 -#: grub-core/loader/i386/bsd.c:169 util/grub-setup.c:223 -msgid "DEVICE" -msgstr "DISPOSITIVO" - -#: grub-core/commands/probe.c:166 -msgid "Retrieve device info." -msgstr "Obter informações do dispositivo." - -#: grub-core/commands/read.c:85 -msgid "[ENVVAR]" -msgstr "[VARIÃVEL_DO_AMBIENTE]" - -#: grub-core/commands/read.c:86 -msgid "Set variable with user input." -msgstr "Definir variável com entrada do usuário." - -#: grub-core/commands/reboot.c:40 -msgid "Reboot the computer." -msgstr "Reiniciar o computador." - -#. TRANSLATORS: in regexp you can mark some -#. groups with parentheses. These groups are -#. then numbered and you can save some of -#. them in variables. In other programs -#. those components aree often referenced with -#. back slash, e.g. \1. Compare -#. sed -e 's,\([a-z][a-z]*\),lowercase=\1,g' -#. The whole matching component is saved in VARNAME, not its number. -#. -#: grub-core/commands/regexp.c:44 -msgid "Store matched component NUMBER in VARNAME." -msgstr "Armazenar NÚMERO de componente correspondente em NOME_DE_VARIÃVEL." - -#: grub-core/commands/regexp.c:45 -msgid "[NUMBER:]VARNAME" -msgstr "[NÚMERO:]NOME_DA_VARIÃVEL" - -#. TRANSLATORS: This are two arguments. So it's -#. two separate units to translate and pay -#. attention not to reverse them. -#: grub-core/commands/regexp.c:157 -msgid "REGEXP STRING" -msgstr "EXPRESSÃO_REGULAR TEXTO" - -#: grub-core/commands/regexp.c:158 -msgid "Test if REGEXP matches STRING." -msgstr "Testa se a EXPRESSÃO_REGULAR corresponde ao TEXTO." - -#: grub-core/commands/search.c:324 -msgid "NAME [VARIABLE] [HINTS]" -msgstr "NOME [VARIÃVEL] [DICAS]" - -#: grub-core/commands/search_file.c:4 -msgid "" -"Search devices by file. If VARIABLE is specified, the first device found is " -"set to a variable." -msgstr "" -"Procurar dispositivos pelo arquivo. Se a VARIÃVEL estiver especificada, o " -"primeiro dispositivo encontrado é definido para uma variável." - -#: grub-core/commands/search_label.c:4 -msgid "" -"Search devices by label. If VARIABLE is specified, the first device found is " -"set to a variable." -msgstr "" -"Procurar dispositivos pelo rótulo. Se a VARIÃVEL estiver especificada, o " -"primeiro dispositivo encontrado é definido para uma variável." - -#: grub-core/commands/search_uuid.c:4 -msgid "" -"Search devices by UUID. If VARIABLE is specified, the first device found is " -"set to a variable." -msgstr "" -"Procurar dispositivos pelo UUID. Se a VARIÃVEL estiver especificada, o " -"primeiro dispositivo encontrado é definido para uma variável." - -#: grub-core/commands/search_wrap.c:34 -msgid "Search devices by a file." -msgstr "Procurar dispositivos pelo arquivo." - -#: grub-core/commands/search_wrap.c:35 -msgid "Search devices by a filesystem label." -msgstr "Procurar dispositivos pelo rótulo do sistema de arquivos." - -#: grub-core/commands/search_wrap.c:37 -msgid "Search devices by a filesystem UUID." -msgstr "Procurar dispositivos pelo UUID do sistema de arquivos." - -#: grub-core/commands/search_wrap.c:40 -msgid "Set a variable to the first device found." -msgstr "Definir uma variável para o primeiro dispositivo encontrado." - -#: grub-core/commands/search_wrap.c:42 -msgid "Do not probe any floppy drive." -msgstr "Não testar nenhuma unidade de disquete." - -#: grub-core/commands/search_wrap.c:44 -msgid "" -"First try the device HINT. If HINT ends in comma, also try subpartitions" -msgstr "" -"Tentar primeiro a DICA do dispositivo. Se a DICA terminar em vírgula, tentar " -"também subpartições." - -#: grub-core/commands/search_wrap.c:45 grub-core/commands/search_wrap.c:49 -#: grub-core/commands/search_wrap.c:53 grub-core/commands/search_wrap.c:57 -#: grub-core/commands/search_wrap.c:61 grub-core/commands/search_wrap.c:65 -msgid "HINT" -msgstr "DICA" - -#: grub-core/commands/search_wrap.c:47 -msgid "" -"First try the device HINT if currently running on IEEE1275. If HINT ends in " -"comma, also try subpartitions" -msgstr "" -"Tentar primeiro a DICA do dispositivo se executando em IEEE1275. Se a DICA " -"terminar em vírgula, tentar também subpartições." - -#: grub-core/commands/search_wrap.c:51 -msgid "" -"First try the device HINT if currently running on BIOS. If HINT ends in " -"comma, also try subpartitions" -msgstr "" -"Tentar primeiro a DICA do dispositivo se executando na BIOS. Se a DICA " -"terminar em vírgula, tentar também subpartições." - -#: grub-core/commands/search_wrap.c:55 -msgid "" -"First try the device HINT if direct hardware access is supported. If HINT " -"ends in comma, also try subpartitions" -msgstr "" -"Tentar primeiro a DICA do dispositivo se o acesso direto ao hardware for " -"suportado. Se a DICA terminar em vírgula, tentar também subpartições." - -#: grub-core/commands/search_wrap.c:59 -msgid "" -"First try the device HINT if currently running on EFI. If HINT ends in " -"comma, also try subpartitions" -msgstr "" -"Tentar primeiro a DICA do dispositivo se executando no EFI. Se a DICA " -"terminar em vírgula, tentar também subpartições." - -#: grub-core/commands/search_wrap.c:63 -msgid "" -"First try the device HINT if currently running on ARC. If HINT ends in " -"comma, also try subpartitions" -msgstr "" -"Tentar primeiro a DICA do dispositivo se executando no ARC. Se a DICA " -"terminar em vírgula, tentar também subpartições." - -#: grub-core/commands/search_wrap.c:207 -msgid "[-f|-l|-u|-s|-n] [--hint HINT [--hint HINT] ...] NAME" -msgstr "[-f|-l|-u|-s|-n] [--hint DICA [--hint DICA] ...] NOME" - -#: grub-core/commands/search_wrap.c:209 -msgid "" -"Search devices by file, filesystem label or filesystem UUID. If --set is " -"specified, the first device found is set to a variable. If no variable name " -"is specified, `root' is used." -msgstr "" -"Procurar dispositivos pelo arquivo, sistema de arquivos ou UUID do sistema " -"de arquivos. Se '--set' for especificado, o primeiro dispositivo encontrado " -"é definido para uma variável. Se nenhum nome de variável for especificado, " -"'root' é usado." - -#: grub-core/commands/setpci.c:132 -#, c-format -msgid "Register %x of %x:%02x.%x is %x\n" -msgstr "Registro %x de %x:%02x.%x é %x\n" - -#: grub-core/commands/setpci.c:333 -msgid "[-s POSITION] [-d DEVICE] [-v VAR] REGISTER[=VALUE[:MASK]]" -msgstr "[-s POSIÇÃO] [-d DISPOSITIVO] [-v VARIÃVEL] REGISTRO[=VALOR[:MÃSCARA]]" - -#: grub-core/commands/setpci.c:335 -msgid "Manipulate PCI devices." -msgstr "Manipular dispositivos PCI." - -#: grub-core/commands/sleep.c:32 -msgid "Verbose countdown." -msgstr "Contagem regressiva detalhada." - -#: grub-core/commands/sleep.c:33 -msgid "Allow to interrupt with ESC." -msgstr "Permitir interromper com ESC." - -#: grub-core/commands/sleep.c:109 -msgid "NUMBER_OF_SECONDS" -msgstr "NÚMERO_DE_SEGUNDOS" - -#: grub-core/commands/sleep.c:110 -msgid "Wait for a specified number of seconds." -msgstr "Aguardar por um número de segundos especificado." - -#: grub-core/commands/syslinuxcfg.c:50 util/grub-syslinux2cfg.c:66 -msgid "root directory of the syslinux disk [default=/]." -msgstr "" - -#: grub-core/commands/syslinuxcfg.c:53 util/grub-syslinux2cfg.c:72 -msgid "" -"current directory of syslinux [default is parent directory of input file]." -msgstr "" - -#: grub-core/commands/syslinuxcfg.c:55 util/grub-syslinux2cfg.c:75 -msgid "assume input is an isolinux configuration file." -msgstr "" - -#: grub-core/commands/syslinuxcfg.c:56 util/grub-syslinux2cfg.c:76 -msgid "assume input is a pxelinux configuration file." -msgstr "" - -#: grub-core/commands/syslinuxcfg.c:57 util/grub-syslinux2cfg.c:77 -msgid "assume input is a syslinux configuration file." -msgstr "assumir que a entrada é um arquivo de configuração do syslinux." - -#. TRANSLATORS: "syslinux config" means -#. "config as used by syslinux". -#: grub-core/commands/syslinuxcfg.c:189 -msgid "Execute syslinux config in same context" -msgstr "Executar configuração syslinux no mesmo contexto." - -#: grub-core/commands/syslinuxcfg.c:195 -msgid "Execute syslinux config in new context" -msgstr "Executar configuração syslinux no novo contexto." - -#: grub-core/commands/syslinuxcfg.c:201 -msgid "Execute syslinux config in same context taking only menu entries" -msgstr "" -"Executar configuração syslinux no mesmo contexto apenas para as entradas de " -"menu" - -#: grub-core/commands/syslinuxcfg.c:207 -msgid "Execute syslinux config in new context taking only menu entries" -msgstr "" -"Executar configuração syslinux no novo contexto apenas para as entradas de " -"menu" - -#: grub-core/commands/terminal.c:90 -msgid "no terminal specified" -msgstr "nenhum terminal especificado" - -#: grub-core/commands/terminal.c:112 grub-core/commands/terminal.c:139 -#, c-format -msgid "terminal `%s' isn't found" -msgstr "terminal '%s' não foi encontrado" - -#: grub-core/commands/terminal.c:244 -msgid "Active input terminals:" -msgstr "Terminais de entrada ativos:" - -#: grub-core/commands/terminal.c:245 -msgid "Available input terminals:" -msgstr "Terminais de entrada disponíveis:" - -#: grub-core/commands/terminal.c:261 -msgid "Active output terminals:" -msgstr "Terminais de saída ativos:" - -#: grub-core/commands/terminal.c:262 -msgid "Available output terminals:" -msgstr "Terminais de saída disponíveis:" - -#: grub-core/commands/terminal.c:271 grub-core/commands/terminal.c:276 -msgid "[--append|--remove] [TERMINAL1] [TERMINAL2] ..." -msgstr "[--append|--remove] [TERMINAL1] [TERMINAL2] ..." - -#: grub-core/commands/terminal.c:273 -msgid "List or select an input terminal." -msgstr "Listar ou selecionar um terminal de entrada." - -#: grub-core/commands/terminal.c:278 -msgid "List or select an output terminal." -msgstr "Listar ou selecionar um terminal de saída." - -#: grub-core/commands/test.c:444 -msgid "EXPRESSION ]" -msgstr "EXPRESSÃO ]" - -#: grub-core/commands/test.c:444 grub-core/commands/test.c:447 -msgid "Evaluate an expression." -msgstr "Avaliar uma expressão." - -#: grub-core/commands/test.c:447 -msgid "EXPRESSION" -msgstr "EXPRESSÃO" - -#: grub-core/commands/testload.c:164 -msgid "Load the same file in multiple ways." -msgstr "Carregar o mesmo arquivo de várias formas." - -#: grub-core/commands/testspeed.c:35 -msgid "Specify size for each read operation" -msgstr "" - -#: grub-core/commands/testspeed.c:58 -msgid "invalid block size" -msgstr "tamanho de bloco inválido" - -#: grub-core/commands/testspeed.c:80 -#, c-format -msgid "File size: %s\n" -msgstr "Tamanho do arquivo: %s\n" - -#: grub-core/commands/testspeed.c:83 -#, c-format -msgid "Elapsed time: %d.%03d s \n" -msgstr "Tempo decorrido %d.%03d s \n" - -#: grub-core/commands/testspeed.c:92 -#, c-format -msgid "Speed: %s \n" -msgstr "Velocidade: %s \n" - -#: grub-core/commands/testspeed.c:107 -msgid "[-s SIZE] FILENAME" -msgstr "[-s TAMANHO] NOME_DO_ARQUIVO" - -#: grub-core/commands/testspeed.c:108 -msgid "Test file read speed." -msgstr "Testa a velocidade de leitura do arquivo." - -#: grub-core/commands/time.c:38 grub-core/script/execute.c:974 -msgid "no command is specified" -msgstr "nenhuma comando foi especificado" - -#: grub-core/commands/time.c:50 -#, c-format -msgid "Elapsed time: %d.%03d seconds \n" -msgstr "Tempo decorrido: %d.%03d segundos \n" - -#: grub-core/commands/time.c:61 -msgid "COMMAND [ARGS]" -msgstr "COMANDO [ARGUMENTOS]" - -#: grub-core/commands/time.c:62 -msgid "Measure time used by COMMAND" -msgstr "Tempo medido usado pelo COMANDO" - -#: grub-core/commands/tr.c:33 -msgid "Translate to upper case." -msgstr "Traduzir para maiúsculas." - -#: grub-core/commands/tr.c:34 -msgid "Translate to lower case." -msgstr "Traduzir para minúsculas." - -#: grub-core/commands/tr.c:119 -msgid "[OPTIONS] [SET1] [SET2] [STRING]" -msgstr "" - -#: grub-core/commands/tr.c:120 -msgid "Translate SET1 characters to SET2 in STRING." -msgstr "" - -#. TRANSLATORS: it's a command description. -#: grub-core/commands/true.c:50 -msgid "Do nothing, successfully." -msgstr "Não fazer nada, sucesso." - -#. TRANSLATORS: it's a command description. -#: grub-core/commands/true.c:54 -msgid "Do nothing, unsuccessfully." -msgstr "Não fazer nada, sem sucesso." - -#: grub-core/commands/usbtest.c:221 -msgid "Test USB support." -msgstr "Testar suporte USB." - -#: grub-core/commands/verifiers.c:120 -#, c-format -msgid "verification requested but nobody cares: %s" -msgstr "" - -#: grub-core/commands/verifiers.c:140 -#, fuzzy -msgid "big file signature isn't implemented yet" -msgstr "realocação de 0x%x ainda não está implementada" - -#: grub-core/commands/videoinfo.c:61 -msgid "Text-only " -msgstr "Somente texto" - -#. TRANSLATORS: "Direct color" is a mode when the color components -#. are written dirrectly into memory. -#: grub-core/commands/videoinfo.c:66 -#, c-format -msgid "Direct color, mask: %d/%d/%d/%d pos: %d/%d/%d/%d" -msgstr "Cor direta, máscara: %d/%d/%d/%d posição: %d/%d/%d/%d" - -#. TRANSLATORS: In "paletted color" mode you write the index of the color -#. in the palette. Synonyms include "packed pixel". -#: grub-core/commands/videoinfo.c:78 -msgid "Paletted " -msgstr "Na paleta" - -#: grub-core/commands/videoinfo.c:80 -msgid "YUV " -msgstr "YUV" - -#. TRANSLATORS: "Planar" is the video memory where you have to write -#. in several different banks "plans" to control the different color -#. components of the same pixel. -#: grub-core/commands/videoinfo.c:85 -msgid "Planar " -msgstr "Planar" - -#: grub-core/commands/videoinfo.c:87 -msgid "Hercules " -msgstr "Hercules " - -#: grub-core/commands/videoinfo.c:89 -msgid "CGA " -msgstr "CGA " - -#. TRANSLATORS: Non-chain 4 is a 256-color planar -#. (unchained) video memory mode. -#: grub-core/commands/videoinfo.c:93 -#, fuzzy -msgid "Non-chain 4 " -msgstr "Cadeia de chamadas:" - -#: grub-core/commands/videoinfo.c:95 -msgid "Monochrome " -msgstr "Monocromático" - -#: grub-core/commands/videoinfo.c:97 -msgid "Unknown video mode " -msgstr "Modo de vídeo desconhecido " - -#: grub-core/commands/videoinfo.c:111 -#, fuzzy -msgid " EDID checksum invalid" -msgstr "Chamada de procedimento incorreta." - -#: grub-core/commands/videoinfo.c:116 -#, fuzzy, c-format -msgid " EDID version: %u.%u\n" -msgstr "Versão atual" - -#: grub-core/commands/videoinfo.c:120 -#, c-format -msgid " Preferred mode: %ux%u\n" -msgstr " Modo preferencial: %ux%u\n" - -#: grub-core/commands/videoinfo.c:123 -msgid " No preferred mode available\n" -msgstr " Nenhum modo preferencial disponível\n" - -#: grub-core/commands/videoinfo.c:146 grub-core/video/video.c:490 -#: grub-core/video/video.c:498 grub-core/video/video.c:509 -#: grub-core/video/video.c:520 grub-core/video/video.c:528 -#, c-format -msgid "invalid video mode specification `%s'" -msgstr "especificação de modo de vídeo inválida '%s'" - -#: grub-core/commands/videoinfo.c:168 -msgid "List of supported video modes:" -msgstr "Lista dos modos de vídeo suportados:" - -#: grub-core/commands/videoinfo.c:169 -msgid "Legend: mask/position=red/green/blue/reserved" -msgstr "Legenda: máscara/posição=vermelho/verde/azul/reservado" - -#: grub-core/commands/videoinfo.c:176 -#, c-format -msgid "Adapter `%s':\n" -msgstr "Adaptador '%s':\n" - -#: grub-core/commands/videoinfo.c:180 -msgid " No info available" -msgstr " Nenhuma informação disponível" - -#: grub-core/commands/videoinfo.c:198 -msgid " Failed to initialize video adapter" -msgstr " Falha ao iniciar o adaptador de vídeo" - -#. TRANSLATORS: "x" has to be entered in, -#. like an identifier, so please don't -#. use better Unicode codepoints. -#: grub-core/commands/videoinfo.c:239 grub-core/commands/videoinfo.c:248 -msgid "[WxH[xD]]" -msgstr "[LxA[xP]]" - -#: grub-core/commands/videoinfo.c:240 grub-core/commands/videoinfo.c:249 -msgid "" -"List available video modes. If resolution is given show only modes matching " -"it." -msgstr "" -"Lista os modos de vídeo disponíveis. Se a resolução for dada exibe apenas os " -"modos correspondentes." - -#. TRANSLATORS: "x" has to be entered in, -#. like an identifier, so please don't -#. use better Unicode codepoints. -#: grub-core/commands/videotest.c:225 -msgid "[WxH]" -msgstr "[LxA]" - -#. TRANSLATORS: Here, on the other hand, it's -#. nicer to use unicode cross instead of x. -#: grub-core/commands/videotest.c:228 -msgid "Test video subsystem in mode WxH." -msgstr "Testar subsistema de vídeo no modo LxA" - -#: grub-core/commands/videotest.c:231 -msgid "Test video subsystem." -msgstr "Testar subsistema de vídeo." - -#: grub-core/commands/xen/lsxen.c:80 grub-core/commands/xen/lsxen.c:82 -msgid "[DIR]" -msgstr "[DIRETÓRIO]" - -#: grub-core/commands/xen/lsxen.c:81 grub-core/commands/xen/lsxen.c:83 -msgid "List Xen storage." -msgstr "Listar o armazenamento Xen." - -#. TRANSLATORS: GRUBUUID stands for "filesystem -#. UUID as used in GRUB". -#: grub-core/commands/xnu_uuid.c:110 -msgid "[-l] GRUBUUID [VARNAME]" -msgstr "[-l] UUID_DO_GRUB [NOME_DA_VARIÃVEL]" - -#: grub-core/commands/xnu_uuid.c:111 -msgid "" -"Transform 64-bit UUID to format suitable for XNU. If -l is given keep it " -"lowercase as done by blkid." -msgstr "" -"Transforma UUID de 64 bit num formato adequado ao XNU. Se '-l' for usado " -"mantem as letras minúsculas como feito pelo blkid." - -#: grub-core/disk/arc/arcdisk.c:248 grub-core/disk/efi/efidisk.c:603 -#: grub-core/disk/i386/pc/biosdisk.c:498 grub-core/disk/i386/pc/biosdisk.c:543 -#: grub-core/disk/ieee1275/nand.c:198 grub-core/disk/ieee1275/obdisk.c:527 -#: grub-core/disk/ieee1275/ofdisk.c:586 -#, c-format -msgid "failure reading sector 0x%llx from `%s'" -msgstr "falha ao ler o setor 0x%llx de '%s'" - -#: grub-core/disk/arc/arcdisk.c:284 grub-core/disk/efi/efidisk.c:626 -#: grub-core/disk/i386/pc/biosdisk.c:548 grub-core/disk/ieee1275/ofdisk.c:606 -#, c-format -msgid "failure writing sector 0x%llx to `%s'" -msgstr "falha ao gravar o setor 0x%llx para '%s'" - -#: grub-core/disk/cryptodisk.c:40 -msgid "Mount by UUID." -msgstr "Montar pelo UUID." - -#. TRANSLATORS: It's still restricted to cryptodisks only. -#: grub-core/disk/cryptodisk.c:42 -msgid "Mount all." -msgstr "Montar tudo." - -#: grub-core/disk/cryptodisk.c:43 -msgid "Mount all volumes with `boot' flag set." -msgstr "" - -#. TRANSLATORS: The first %s is the file being looked at, the second %s is -#. the error message. -#: grub-core/disk/cryptodisk.c:526 grub-core/kern/emu/hostdisk.c:152 -#: grub-core/kern/emu/hostdisk.c:262 grub-core/kern/emu/hostdisk.c:434 -#: grub-core/kern/emu/misc.c:168 grub-core/kern/emu/misc.c:174 -#: grub-core/kern/emu/misc.c:196 grub-core/osdep/bsd/getroot.c:92 -#: grub-core/osdep/bsd/getroot.c:168 grub-core/osdep/hurd/getroot.c:68 -#: grub-core/osdep/linux/blocklist.c:65 grub-core/osdep/linux/getroot.c:150 -#: grub-core/osdep/linux/hostdisk.c:194 grub-core/osdep/linux/hostdisk.c:421 -#: grub-core/osdep/linux/ofpath.c:417 grub-core/osdep/linux/ofpath.c:422 -#: grub-core/osdep/linux/ofpath.c:517 grub-core/osdep/linux/ofpath.c:530 -#: grub-core/osdep/sun/getroot.c:110 grub-core/osdep/windows/blocklist.c:98 -#: grub-core/tests/video_checksum.c:279 util/editenv.c:46 util/glue-efi.c:115 -#: util/glue-efi.c:120 util/glue-efi.c:130 util/grub-editenv.c:138 -#: util/grub-editenv.c:192 util/grub-file.c:83 util/grub-fstest.c:128 -#: util/grub-fstest.c:568 util/grub-install-common.c:92 -#: util/grub-install-common.c:94 util/grub-install-common.c:101 -#: util/grub-install-common.c:529 util/grub-menulst2cfg.c:53 -#: util/grub-menulst2cfg.c:68 util/grub-mkimage.c:292 util/grub-mklayout.c:504 -#: util/grub-mklayout.c:516 util/grub-mknetdir.c:133 util/grub-mknetdir.c:151 -#: util/grub-mkrescue.c:627 util/grub-mkrescue.c:631 util/grub-mkrescue.c:879 -#: util/grub-mkrescue.c:883 util/grub-mkstandalone.c:253 util/grub-mount.c:498 -#: util/grub-render-label.c:169 util/grub-script-check.c:175 -#: util/grub-syslinux2cfg.c:181 util/grub-syslinux2cfg.c:191 -#: util/grub-syslinux2cfg.c:212 util/grub-syslinux2cfg.c:228 util/misc.c:91 -#: util/render-label.c:76 util/render-label.c:163 util/render-label.c:174 -#: util/resolve.c:246 util/setup.c:783 -#, c-format -msgid "cannot open `%s': %s" -msgstr "não foi possível abrir '%s': %s" - -#: grub-core/disk/cryptodisk.c:583 grub-core/disk/cryptodisk.c:628 -#: grub-core/kern/emu/hostdisk.c:270 grub-core/kern/emu/hostfs.c:142 -#: grub-core/osdep/linux/hostdisk.c:456 util/grub-editenv.c:143 -#: util/grub-editenv.c:149 util/grub-fstest.c:320 util/misc.c:111 -#, c-format -msgid "cannot seek `%s': %s" -msgstr "não foi possível procurar '%s': %s" - -#: grub-core/disk/cryptodisk.c:1144 -msgid "SOURCE|-u UUID|-a|-b" -msgstr "ORIGEM|-u UUID|-a|-b" - -#: grub-core/disk/cryptodisk.c:1145 -msgid "Mount a crypto device." -msgstr "Montar um dispositivo criptografado." - -#. TRANSLATORS: This message kicks in during the detection of -#. which modules needs to be included in core image. This happens -#. in the case of degraded RAID and means that autodetection may -#. fail to include some of modules. It's an installation time -#. message, not runtime message. -#: grub-core/disk/diskfilter.c:343 grub-core/disk/diskfilter.c:376 -#, c-format -msgid "" -"Couldn't find physical volume `%s'. Some modules may be missing from core " -"image." -msgstr "" -"Não foi possível encontrar o volume físico '%s'. Alguns módulos poderão " -"faltar na imagem core." - -#: grub-core/disk/diskfilter.c:480 -#, c-format -msgid "physical volume %s not found" -msgstr "volume físico %s não encontrado" - -#: grub-core/disk/efi/efidisk.c:600 grub-core/disk/efi/efidisk.c:623 -#, fuzzy, c-format -msgid "no media in `%s'" -msgstr "tempo de espera excedido ao ler `%s'" - -#: grub-core/disk/geli.c:75 -msgid "Couldn't load sha256" -msgstr "Não foi possível carregar sha256" - -#: grub-core/disk/geli.c:85 -msgid "Couldn't load sha512" -msgstr "Não foi possível carregar sha512" - -#: grub-core/disk/geli.c:216 grub-core/disk/geli.c:220 -msgid "couldn't read ELI metadata" -msgstr "Não foi possível ler os metadados ELI" - -#: grub-core/disk/geli.c:231 -msgid "wrong ELI magic or version" -msgstr "versão ou magia ELI incorretas" - -#: grub-core/disk/geli.c:435 grub-core/disk/luks.c:329 -msgid "Attempting to decrypt master key..." -msgstr "Tentando descriptografar a chave mestre..." - -#: grub-core/disk/geli.c:441 grub-core/disk/luks.c:347 -#, c-format -msgid "Enter passphrase for %s%s%s (%s): " -msgstr "Digitar frase secreta para %s%s%s (%s): " - -#. TRANSLATORS: It's a cryptographic key slot: one element of an array -#. where each element is either empty or holds a key. -#: grub-core/disk/geli.c:530 grub-core/disk/luks.c:451 -#, c-format -msgid "Slot %d opened\n" -msgstr "Slot %d aberto\n" - -#: grub-core/disk/i386/pc/biosdisk.c:470 grub-core/disk/i386/pc/biosdisk.c:524 -#: grub-core/disk/i386/pc/biosdisk.c:534 grub-core/kern/disk_common.c:47 -#, c-format -msgid "attempt to read or write outside of disk `%s'" -msgstr "tentar ler ou gravar fora do disco '%s'" - -#: grub-core/disk/i386/pc/biosdisk.c:491 grub-core/disk/i386/pc/biosdisk.c:611 -#: grub-core/disk/scsi.c:726 -msgid "cannot write to CD-ROM" -msgstr "não foi possível gravar no CD-ROM" - -#: grub-core/disk/i386/pc/biosdisk.c:662 -msgid "" -"Native disk drivers are in use. Refusing to use firmware disk interface." -msgstr "" -"Unidades de disco nativas estão em uso. Recusando usar firmware da interface " -"de disco." - -#. TRANSLATORS: it's a partition for embedding, -#. not a partition embed into something. GRUB -#. install tools put core.img into a place -#. usable for bootloaders (called generically -#. "embedding zone") and this operation is -#. called "embedding". -#: grub-core/disk/ldm.c:1015 -#, fuzzy -msgid "your LDM Embedding Partition is too small; embedding won't be possible" -msgstr "sua partição de embutir LDM é muito pequena; não será possível embutir" - -#. TRANSLATORS: it's a partition for embedding, -#. not a partition embed into something. -#: grub-core/disk/ldm.c:1033 -msgid "this LDM has no Embedding Partition; embedding won't be possible" -msgstr "este LDM não tem partição de embutir; não será possível embutir" - -#. TRANSLATORS: The disk is simply removed from the list of available ones, -#. not wiped, avoid to scare user. -#: grub-core/disk/loopback.c:45 -msgid "Delete the specified loopback drive." -msgstr "Remover a unidade de loopback especificada." - -#: grub-core/disk/loopback.c:237 -msgid "[-d] DEVICENAME FILE." -msgstr "[-d] NOME_DO_DISPOSITIVO ARQUIVO." - -#. TRANSLATORS: The file itself is not destroyed -#. or transformed into drive. -#: grub-core/disk/loopback.c:240 -msgid "Make a virtual drive from a file." -msgstr "Fazer uma unidade virtual a partir de um arquivo." - -#: grub-core/efiemu/i386/loadcore32.c:111 -#: grub-core/efiemu/i386/loadcore64.c:125 grub-core/kern/arm/dl.c:256 -#: grub-core/kern/arm64/dl.c:187 grub-core/kern/i386/dl.c:75 -#: grub-core/kern/ia64/dl.c:140 grub-core/kern/mips/dl.c:258 -#: grub-core/kern/powerpc/dl.c:163 grub-core/kern/riscv/dl.c:334 -#: grub-core/kern/sparc64/dl.c:180 grub-core/kern/x86_64/dl.c:110 -#: util/grub-mkimagexx.c:756 util/grub-mkimagexx.c:881 -#: util/grub-mkimagexx.c:945 util/grub-mkimagexx.c:1026 -#: util/grub-mkimagexx.c:1120 util/grub-mkimagexx.c:1222 -#: util/grub-mkimagexx.c:1413 util/grub-mkimagexx.c:1628 -#: util/grub-mkimagexx.c:1665 util/grub-mkimagexx.c:1697 -#: util/grub-mkimagexx.c:1767 util/grub-mkimagexx.c:1797 -#, c-format -msgid "relocation 0x%x is not implemented yet" -msgstr "realocação de 0x%x ainda não está implementada" - -#: grub-core/efiemu/loadcore.c:200 grub-core/efiemu/loadcore.c:237 -#: grub-core/loader/i386/bsdXX.c:317 util/grub-mkimagexx.c:2360 -msgid "no symbol table" -msgstr "nenhuma tabela de símbolo" - -#: grub-core/efiemu/loadcore.c:346 grub-core/kern/dl.c:609 -#: grub-core/loader/ia64/efi/linux.c:345 grub-core/loader/mips/linux.c:248 -#: grub-core/loader/multiboot_elfxx.c:76 -#: grub-core/loader/powerpc/ieee1275/linux.c:280 -#: grub-core/loader/sparc64/ieee1275/linux.c:320 -msgid "this ELF file is not of the right type" -msgstr "este arquivo ELF não é do tipo correto" - -#: grub-core/efiemu/main.c:313 -msgid "Load and initialize EFI emulator." -msgstr "Carregar e inicializar o emulador de EFI." - -#: grub-core/efiemu/main.c:317 -msgid "Finalize loading of EFI emulator." -msgstr "Finalizar o carregamento do emulador de EFI." - -#: grub-core/efiemu/main.c:320 -msgid "Unload EFI emulator." -msgstr "Descarregar o emulador de EFI." - -#: grub-core/efiemu/symbols.c:92 grub-core/kern/dl.c:376 -#, c-format -msgid "symbol `%s' not found" -msgstr "símbolo '%s' não foi encontrado" - -#: grub-core/font/font_cmd.c:52 -msgid "Loaded fonts:" -msgstr "Fontes carregadas:" - -#: grub-core/font/font_cmd.c:74 -msgid "FILE..." -msgstr "ARQUIVO..." - -#: grub-core/font/font_cmd.c:75 -msgid "Specify one or more font files to load." -msgstr "Especificar um ou mais arquivos de fontes a serem carregados." - -#: grub-core/font/font_cmd.c:78 -msgid "List the loaded fonts." -msgstr "Listar as fontes carregadas." - -#: grub-core/fs/archelp.c:216 grub-core/fs/archelp.c:278 -#: grub-core/fs/btrfs.c:1815 grub-core/fs/fshelp.c:227 grub-core/fs/jfs.c:736 -#: grub-core/fs/minix.c:369 grub-core/fs/ufs.c:454 -msgid "too deep nesting of symlinks" -msgstr "encadeamento de link simbólico muito profundo" - -#: grub-core/fs/bfs.c:228 grub-core/fs/fshelp.c:368 grub-core/fs/minix.c:270 -#: grub-core/kern/file.c:156 -msgid "attempt to read past the end of file" -msgstr "tentar ler após o final do arquivo" - -#: grub-core/fs/btrfs.c:1698 grub-core/fs/btrfs.c:1957 -#: grub-core/fs/fshelp.c:189 grub-core/fs/fshelp.c:309 grub-core/fs/jfs.c:431 -#: grub-core/fs/minix.c:414 grub-core/fs/minix.c:562 -#: grub-core/fs/reiserfs.c:732 grub-core/fs/ufs.c:531 grub-core/fs/ufs.c:671 -#: grub-core/fs/zfs/zfs.c:2831 grub-core/fs/zfs/zfs.c:4247 -msgid "not a directory" -msgstr "não é um diretório" - -#: grub-core/fs/btrfs.c:2063 grub-core/fs/fshelp.c:307 grub-core/fs/jfs.c:835 -#: grub-core/fs/zfs/zfs.c:3801 -msgid "not a regular file" -msgstr "não é um arquivo comum" - -#: grub-core/fs/btrfs.c:2157 grub-core/fs/zfs/zfs.c:4333 -#: grub-core/partmap/msdos.c:400 -msgid "your core.img is unusually large. It won't fit in the embedding area" -msgstr "" -"seu core.img está maior que de costume. Ele não caberá na área de embutir." - -#: grub-core/fs/fshelp.c:281 grub-core/fs/minix.c:630 grub-core/fs/ufs.c:661 -#: grub-core/fs/ufs.c:757 grub-core/kern/fs.c:168 grub-core/kern/fs.c:180 -#, c-format -msgid "invalid file name `%s'" -msgstr "nome de arquivo inválido '%s'" - -#: grub-core/fs/zfs/zfs.c:453 -msgid "checksum verification failed" -msgstr "falha na soma de verificação" - -#: grub-core/fs/zfs/zfs.c:1465 -msgid "couldn't find a necessary member device of multi-device filesystem" -msgstr "" -"não foi possível encontrar um dispositivo membro necessário do sistema de " -"arquivos multi-dispositivos." - -#: grub-core/fs/zfs/zfscrypt.c:292 -msgid "no decryption key available" -msgstr "nenhuma chave de descriptografia disponível" - -#: grub-core/fs/zfs/zfscrypt.c:304 -msgid "MAC verification failed" -msgstr "falha na verificação do MAC" - -#: grub-core/fs/zfs/zfscrypt.c:413 -msgid "Assume input is raw." -msgstr "Assumir que a entrada é bruta." - -#: grub-core/fs/zfs/zfscrypt.c:414 -msgid "Assume input is hex." -msgstr "Assumir que a entrada é hexadecimal." - -#: grub-core/fs/zfs/zfscrypt.c:415 -msgid "Assume input is passphrase." -msgstr "Assumir que a entrada é frase secreta." - -#: grub-core/fs/zfs/zfscrypt.c:437 util/grub-fstest.c:553 util/grub-mount.c:483 -msgid "Enter ZFS password: " -msgstr "Digitar a senha ZFS: " - -#: grub-core/fs/zfs/zfscrypt.c:476 -msgid "[-h|-p|-r] [FILE]" -msgstr "[-h|-p|-r] [ARQUIVO]" - -#: grub-core/fs/zfs/zfscrypt.c:477 -msgid "Import ZFS wrapping key stored in FILE." -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:51 -msgid "Virtual device is removed" -msgstr "O dispositivo virtual está removido" - -#: grub-core/fs/zfs/zfsinfo.c:57 -msgid "Virtual device is faulted" -msgstr "O dispositivo virtual está com falhas" - -#: grub-core/fs/zfs/zfsinfo.c:63 -msgid "Virtual device is offline" -msgstr "O dispositivo virtual está desconectado" - -#. TRANSLATORS: degraded doesn't mean broken but that some of -#. component are missing but virtual device as whole is still usable. -#: grub-core/fs/zfs/zfsinfo.c:70 -msgid "Virtual device is degraded" -msgstr "O dispositivo virtual está degradado" - -#: grub-core/fs/zfs/zfsinfo.c:73 -msgid "Virtual device is online" -msgstr "O dispositivo virtual está conectado" - -#: grub-core/fs/zfs/zfsinfo.c:89 -msgid "Incorrect virtual device: no type available" -msgstr "Dispositivo virtual incorreto: nenhum tipo disponível" - -#. TRANSLATORS: The virtual devices form a tree (in graph-theoretical -#. sense). The nodes like mirror or raidz have children: member devices. -#. The "real" devices which actually store data are called "leafs" -#. (again borrowed from graph theory) and can be either disks -#. (or partitions) or files. -#: grub-core/fs/zfs/zfsinfo.c:105 -msgid "Leaf virtual device (file or disk)" -msgstr "Dispositivo virtual folha (arquivo ou disco)" - -#: grub-core/fs/zfs/zfsinfo.c:113 -msgid "Bootpath: unavailable\n" -msgstr "Caminho de inicialização: não disponível\n" - -#: grub-core/fs/zfs/zfsinfo.c:115 -#, c-format -msgid "Bootpath: %s\n" -msgstr "Caminho de inicialização: %s\n" - -#: grub-core/fs/zfs/zfsinfo.c:120 -msgid "Path: unavailable" -msgstr "Caminho: não disponível" - -#: grub-core/fs/zfs/zfsinfo.c:122 -#, c-format -msgid "Path: %s\n" -msgstr "Caminho: %s\n" - -#: grub-core/fs/zfs/zfsinfo.c:127 -msgid "Devid: unavailable" -msgstr "ID do dispositivo: não disponível" - -#: grub-core/fs/zfs/zfsinfo.c:129 -#, c-format -msgid "Devid: %s\n" -msgstr "ID do dispositivo: %s\n" - -#: grub-core/fs/zfs/zfsinfo.c:148 -msgid "This VDEV is a mirror" -msgstr "Este VDEV é um espelho" - -#: grub-core/fs/zfs/zfsinfo.c:153 -#, c-format -msgid "This VDEV is a RAIDZ%llu\n" -msgstr "Este VDEV é um RAIDZ%llu\n" - -#: grub-core/fs/zfs/zfsinfo.c:158 -msgid "Incorrect VDEV" -msgstr "VDEV incorreto" - -#: grub-core/fs/zfs/zfsinfo.c:161 -#, c-format -msgid "VDEV with %d children\n" -msgstr "VDEV com %d filhos\n" - -#. TRANSLATORS: it's the element carying the number %d, not -#. total element number. And the number itself is fine, -#. only the element isn't. -#. -#: grub-core/fs/zfs/zfsinfo.c:177 -#, c-format -msgid "VDEV element number %d isn't correct\n" -msgstr "O elemento VDEV número %d não está correto\n" - -#. TRANSLATORS: it's the element carying the number %d, not -#. total element number. This is used in enumeration -#. "Element number 1", "Element number 2", ... -#: grub-core/fs/zfs/zfsinfo.c:184 -#, c-format -msgid "VDEV element number %d:\n" -msgstr "O elemento VDEV número %d:\n" - -#: grub-core/fs/zfs/zfsinfo.c:193 -#, c-format -msgid "Unknown virtual device type: %s\n" -msgstr "Tipo de dispositivo virtual desconhecido: %s\n" - -#. TRANSLATORS: Here we speak about ZFS pools it's semi-marketing, -#. semi-technical term by Sun/Oracle and should be translated in sync with -#. other ZFS-related software and documentation. -#: grub-core/fs/zfs/zfsinfo.c:254 -msgid "Pool state: active" -msgstr "Estado da fila: ativo" - -#: grub-core/fs/zfs/zfsinfo.c:255 -msgid "Pool state: exported" -msgstr "Estado da fila: exportado" - -#: grub-core/fs/zfs/zfsinfo.c:256 -msgid "Pool state: destroyed" -msgstr "Estado da fila: destruído" - -#: grub-core/fs/zfs/zfsinfo.c:257 -msgid "Pool state: reserved for hot spare" -msgstr "Estado da fila: reservado para disco de reserva" - -#: grub-core/fs/zfs/zfsinfo.c:258 -msgid "Pool state: level 2 ARC device" -msgstr "Estado da fila: dispositivo de nível 2 ARC" - -#: grub-core/fs/zfs/zfsinfo.c:259 -msgid "Pool state: uninitialized" -msgstr "Estado da fila: não inicializada" - -#: grub-core/fs/zfs/zfsinfo.c:260 -msgid "Pool state: unavailable" -msgstr "Estado da fila: não disponível" - -#: grub-core/fs/zfs/zfsinfo.c:261 -msgid "Pool state: potentially active" -msgstr "Estado da fila: potencialmente ativa" - -#: grub-core/fs/zfs/zfsinfo.c:306 -msgid "Pool name: unavailable" -msgstr "Nome da fila: não disponível" - -#: grub-core/fs/zfs/zfsinfo.c:308 -#, c-format -msgid "Pool name: %s\n" -msgstr "Nome da fila: %s\n" - -#: grub-core/fs/zfs/zfsinfo.c:313 -msgid "Pool GUID: unavailable" -msgstr "GUID da fila: não disponível" - -#: grub-core/fs/zfs/zfsinfo.c:315 -#, c-format -msgid "Pool GUID: %016llx\n" -msgstr "GUID da fila: %016llx\n" - -#: grub-core/fs/zfs/zfsinfo.c:320 -msgid "Unable to retrieve pool state" -msgstr "Não foi possível obter o estado da fila" - -#: grub-core/fs/zfs/zfsinfo.c:322 -msgid "Unrecognized pool state" -msgstr "Estado da fila não reconhecido" - -#. TRANSLATORS: There are undetermined number of virtual devices -#. in a device tree, not just one. -#. -#: grub-core/fs/zfs/zfsinfo.c:332 -msgid "No virtual device tree available" -msgstr "Nenhuma árvore de dispositivos virtuais disponível" - -#: grub-core/fs/zfs/zfsinfo.c:431 -msgid "Print ZFS info about DEVICE." -msgstr "Exibir informação ZFS sobre o DISPOSITIVO." - -#: grub-core/fs/zfs/zfsinfo.c:433 -msgid "FILESYSTEM [VARIABLE]" -msgstr "SISTEMA_DE_ARQUIVOS [VARIÃVEL]" - -#: grub-core/fs/zfs/zfsinfo.c:434 -msgid "Print ZFS-BOOTFSOBJ or store it into VARIABLE" -msgstr "Exibir ZFS-BOOTFSOBJ ou armazená-lo na VARIÃVEL" - -#. TRANSLATORS: at this position GRUB waits for the user to do an action -#. in remote debugger, namely to tell it to establish connection. -#: grub-core/gdb/gdb.c:48 -msgid "Now connect the remote debugger, please." -msgstr "Agora conecte o depurador remoto por favor." - -#. TRANSLATORS: GDB stub is a small part of -#. GDB functionality running on local host -#. which allows remote debugger to -#. connect to it. -#: grub-core/gdb/gdb.c:84 -msgid "Start GDB stub on given port" -msgstr "Iniciar o stub GDB na porta fornecida" - -#. TRANSLATORS: this refers to triggering -#. a breakpoint so that the user will land -#. into GDB. -#: grub-core/gdb/gdb.c:89 -msgid "Break into GDB" -msgstr "Parar no GDB" - -#: grub-core/gdb/gdb.c:91 -msgid "Stop GDB stub" -msgstr "Parar o stub GDB" - -#: grub-core/gettext/gettext.c:85 -msgid "premature end of file" -msgstr "fim prematuro do arquivo" - -#. TRANSLATORS: It refers to passing the string through gettext. -#. So it's "translate" in the same meaning as in what you're -#. doing now. -#. -#: grub-core/gettext/gettext.c:525 -msgid "Translates the string with the current settings." -msgstr "Traduzir o texto com as configurações atuais." - -#: grub-core/gfxmenu/gui_label.c:186 grub-core/normal/menu_text.c:184 -msgid "" -"Press enter to boot the selected OS, `e' to edit the commands before booting " -"or `c' for a command-line. ESC to return previous menu." -msgstr "" -"Pressione 'Enter' para iniciar o SO selecionado, 'e' para editar os comandos " -"antes da inicialização or 'c' para a linha de comando. ESC para retornar ao " -"menu anterior." - -#: grub-core/gfxmenu/gui_label.c:190 grub-core/normal/menu_text.c:192 -msgid "" -"Press enter to boot the selected OS, `e' to edit the commands before booting " -"or `c' for a command-line." -msgstr "" -"Pressione 'Enter' para iniciar o SO selecionado, 'e' para editar os comandos " -"antes da inicialização or 'c' para linha de comando." - -#: grub-core/gfxmenu/gui_label.c:194 -msgid "enter: boot, `e': options, `c': cmd-line" -msgstr "'Enter': inicializa, 'e': opções, 'c': linha de comando" - -#: grub-core/gfxmenu/gui_progress_bar.c:339 grub-core/normal/menu_text.c:446 -#, c-format -msgid "The highlighted entry will be executed automatically in %ds." -msgstr "A entrada destacada será executada automaticamente em %d s." - -#. TRANSLATORS: 's' stands for seconds. -#. It's a standalone timeout notification. -#. Please use the short form in your language. -#: grub-core/gfxmenu/gui_progress_bar.c:344 -#, c-format -msgid "%ds remaining." -msgstr "%d s restantes." - -#. TRANSLATORS: 's' stands for seconds. -#. It's a standalone timeout notification. -#. Please use the shortest form available in you language. -#: grub-core/gfxmenu/gui_progress_bar.c:349 grub-core/normal/menu_text.c:444 -#: grub-core/normal/menu_text.c:462 -#, c-format -msgid "%ds" -msgstr "%d s" - -#: grub-core/gfxmenu/view.c:103 -msgid "GRUB Boot Menu" -msgstr "Menu de inicialização GRUB" - -#: grub-core/hello/hello.c:36 -msgid "Hello World" -msgstr "Olá mundo!" - -#: grub-core/hello/hello.c:45 -msgid "Say `Hello World'." -msgstr "Diz 'Olá mundo!'." - -#: grub-core/io/gzio.c:409 grub-core/kern/file.c:210 -msgid "attempt to seek outside of the file" -msgstr "tentar procurar fora do arquivo" - -#. TRANSLATORS: It's about given file having some strange format, not -#. complete lack of gzip support. -#: grub-core/io/gzio.c:1228 grub-core/io/gzio.c:1237 grub-core/io/gzio.c:1244 -msgid "unsupported gzip format" -msgstr "formato gzip não suportado" - -#: grub-core/io/lzopio.c:511 -msgid "lzop file corrupted" -msgstr "arquivo lzop corrompido" - -#: grub-core/io/xzio.c:278 -msgid "xz file corrupted or unsupported block options" -msgstr "arquivo xz corrompido ou com opções de bloco não suportadas" - -#: grub-core/kern/arm/dl.c:277 grub-core/kern/arm64/dl.c:44 -#: grub-core/kern/i386/dl.c:36 grub-core/kern/ia64/dl.c:41 -#: grub-core/kern/mips/dl.c:48 grub-core/kern/powerpc/dl.c:36 -#: grub-core/kern/riscv/dl.c:47 grub-core/kern/sparc64/dl.c:36 -#: grub-core/kern/x86_64/dl.c:36 grub-core/loader/i386/bsd.c:1445 -#: grub-core/loader/i386/bsdXX.c:49 grub-core/loader/ia64/efi/linux.c:341 -#: grub-core/loader/mips/linux.c:298 grub-core/loader/multiboot.c:232 -#: grub-core/loader/multiboot_elfxx.c:73 -#: grub-core/loader/powerpc/ieee1275/linux.c:294 -#: grub-core/loader/sparc64/ieee1275/linux.c:331 -msgid "invalid arch-dependent ELF magic" -msgstr "magia ELF dependente de arquitetura inválida" - -#: grub-core/kern/corecmd.c:178 -msgid "[ENVVAR=VALUE]" -msgstr "[VARIÃVEL_DO_AMBIENTE=VALOR]" - -#: grub-core/kern/corecmd.c:179 -msgid "Set an environment variable." -msgstr "Definir uma variável do ambiente." - -#: grub-core/kern/corecmd.c:183 -msgid "ENVVAR" -msgstr "VARIÃVEL_DO_AMBIENTE" - -#: grub-core/kern/corecmd.c:184 -msgid "Remove an environment variable." -msgstr "Remover uma variável do ambiente" - -#: grub-core/kern/corecmd.c:186 -msgid "[ARG]" -msgstr "[ARGUMENTO]" - -#: grub-core/kern/corecmd.c:186 -msgid "List devices or files." -msgstr "Listar dispositivos ou arquivos." - -#: grub-core/kern/corecmd.c:188 -msgid "Insert a module." -msgstr "Inserir um módulo." - -#: grub-core/kern/disk.c:236 grub-core/net/net.c:1390 -#, c-format -msgid "disk `%s' not found" -msgstr "disco '%s' não encontrado" - -#: grub-core/kern/disk_common.c:27 -msgid "attempt to read or write outside of partition" -msgstr "tentar ler ou escrever fora da partição" - -#: grub-core/kern/dl.c:212 grub-core/kern/elf.c:61 grub-core/kern/elf.c:79 -#: grub-core/loader/i386/bsdXX.c:46 grub-core/loader/ia64/efi/linux.c:335 -#: grub-core/loader/multiboot_elfxx.c:69 -msgid "invalid arch-independent ELF magic" -msgstr "magia ELF independente de arquitetura inválida" - -#. TRANSLATORS: it refers to the lack of free slots. -#: grub-core/kern/emu/hostdisk.c:208 grub-core/kern/emu/hostdisk.c:466 -msgid "device count exceeds limit" -msgstr "o contador de dispositivo excedeu o limite" - -#: grub-core/kern/emu/hostdisk.c:342 util/editenv.c:54 util/grub-editenv.c:197 -#: util/grub-fstest.c:191 util/grub-mkfont.c:796 util/misc.c:114 -#: util/misc.c:129 util/setup.c:788 -#, c-format -msgid "cannot write to `%s': %s" -msgstr "não foi possível gravar para '%s': %s" - -#. TRANSLATORS: Only one entry is ignored. However the suggestion -#. is to correct/delete the whole file. -#. device.map is a file indicating which -#. devices are available at boot time. Fedora populated it with -#. entries like (hd0,1) /dev/sda1 which would mean that every -#. partition is a separate disk for BIOS. Such entries were -#. inactive in GRUB due to its bug which is now gone. Without -#. this additional check these entries would be harmful now. -#. -#: grub-core/kern/emu/hostdisk.c:503 -#, c-format -msgid "" -"the device.map entry `%s' is invalid. Ignoring it. Please correct or delete " -"your device.map" -msgstr "" - -#. TRANSLATORS: device.map is a filename. Not to be translated. -#. device.map specifies disk correspondance overrides. Previously -#. one could create any kind of device name with this. Due to -#. some problems we decided to limit it to just a handful -#. possibilities. -#: grub-core/kern/emu/hostdisk.c:555 -#, c-format -msgid "" -"the drive name `%s' in device.map is incorrect. Using %s instead. Please use " -"the form [hfc]d[0-9]* (E.g. `hd0' or `cd')" -msgstr "" - -#: grub-core/kern/emu/hostfs.c:76 grub-core/kern/emu/hostfs.c:109 -#, c-format -msgid "can't open `%s': %s" -msgstr "não foi possível abrir `%s': %s" - -#: grub-core/kern/emu/main.c:99 util/grub-fstest.c:516 util/grub-mount.c:452 -msgid "DEVICE_NAME" -msgstr "NOME_DO_DISPOSITIVO" - -#: grub-core/kern/emu/main.c:99 grub-core/loader/i386/bsd.c:136 -#: grub-core/loader/i386/bsd.c:169 util/grub-fstest.c:516 util/grub-mount.c:452 -msgid "Set root device." -msgstr "Definir dispositivo raiz." - -#. TRANSLATORS: There are many devices in device map. -#: grub-core/kern/emu/main.c:102 util/grub-probe.c:733 util/grub-setup.c:85 -#, c-format -msgid "use FILE as the device map [default=%s]" -msgstr "" - -#. TRANSLATORS: There are many devices in device map. -#: grub-core/kern/emu/main.c:105 -#, fuzzy -msgid "use FILE as memdisk" -msgstr "Usar uma imagem como imagem de fundo de tela." - -#: grub-core/kern/emu/main.c:107 util/grub-setup.c:83 -#, c-format -msgid "use GRUB files in the directory DIR [default=%s]" -msgstr "" - -#: grub-core/kern/emu/main.c:108 include/grub/util/install.h:67 -#: util/grub-editenv.c:58 util/grub-fstest.c:525 util/grub-glue-efi.c:58 -#: util/grub-macbless.c:104 util/grub-mkfont.c:962 util/grub-mkimage.c:84 -#: util/grub-mklayout.c:56 util/grub-mount.c:458 util/grub-probe.c:735 -#: util/grub-render-label.c:74 util/grub-script-check.c:52 util/grub-setup.c:90 -#: util/grub-syslinux2cfg.c:78 -msgid "print verbose messages." -msgstr "exibe mensagens detalhadas." - -#: grub-core/kern/emu/main.c:109 grub-core/lib/gnulib/argp-parse.c:85 -msgid "SECS" -msgstr "SEGS" - -#: grub-core/kern/emu/main.c:109 -msgid "wait until a debugger will attach" -msgstr "aguarda até o depurador anexar" - -#: grub-core/kern/emu/main.c:171 util/grub-macbless.c:143 -#: util/grub-mkrelpath.c:61 util/grub-probe.c:874 util/grub-script-check.c:75 -#: util/grub-setup.c:203 -#, c-format -msgid "Unknown extra argument `%s'." -msgstr "Argumento extra desconhecido `%s'." - -#: grub-core/kern/emu/main.c:185 -msgid "GRUB emulator." -msgstr "Emulador do GRUB." - -#: grub-core/kern/emu/main.c:213 util/grub-editenv.c:262 -#: util/grub-glue-efi.c:110 util/grub-macbless.c:173 util/grub-mkfont.c:1177 -#: util/grub-mkimage.c:266 util/grub-mklayout.c:494 -#: util/grub-mkpasswd-pbkdf2.c:132 util/grub-mkrelpath.c:96 -#: util/grub-probe.c:863 util/grub-render-label.c:152 -#: util/grub-script-check.c:160 util/grub-setup.c:262 -#: util/grub-syslinux2cfg.c:163 -msgid "Error in parsing command line arguments\n" -msgstr "Erro ao analisar os argumentos da linha de comando\n" - -#. TRANSLATORS: In this case GRUB tells user what he has to do. -#: grub-core/kern/emu/main.c:248 -#, c-format -msgid "Run `gdb %s %d', and set ARGS.HOLD to zero.\n" -msgstr "" - -#: grub-core/kern/emu/misc.c:48 -#, c-format -msgid "%s: warning:" -msgstr "%s: aviso:" - -#: grub-core/kern/emu/misc.c:64 -#, c-format -msgid "%s: info:" -msgstr "%s: informação:" - -#: grub-core/kern/emu/misc.c:79 util/grub-fstest.c:567 util/grub-fstest.c:576 -#: util/grub-mount.c:497 util/grub-mount.c:505 -#, c-format -msgid "%s: error:" -msgstr "%s: erro:" - -#: grub-core/kern/emu/misc.c:176 -#, c-format -msgid "file `%s' is too big" -msgstr "arquivo `%s' é muito grande" - -#: grub-core/kern/fs.c:120 -msgid "unknown filesystem" -msgstr "sistema de arquivos desconhecido" - -#: grub-core/kern/mips/arc/init.c:273 grub-core/kern/mips/loongson/init.c:301 -msgid "Shutdown failed" -msgstr "Falhar ao desligar" - -#: grub-core/kern/mips/arc/init.c:285 -msgid "Exit failed" -msgstr "Falha ao sair" - -#: grub-core/kern/misc.c:351 grub-core/kern/misc.c:408 include/grub/misc.h:269 -#: include/grub/misc.h:278 -#, fuzzy -msgid "overflow is detected" -msgstr "Criptografia detectada como: %1" - -#: grub-core/kern/partition.c:51 grub-core/partmap/bsdlabel.c:108 -#, c-format -msgid "Discarding improperly nested partition (%s,%s,%s%d)" -msgstr "" - -#: grub-core/kern/rescue_parser.c:73 util/grub-editenv.c:292 -#, c-format -msgid "Unknown command `%s'.\n" -msgstr "Comando desconhecido '%s'\n" - -#: grub-core/lib/arg.c:31 -msgid "Display this help and exit." -msgstr "Exibe esta ajuda e sai." - -#: grub-core/lib/arg.c:33 -msgid "Display the usage of this command and exit." -msgstr "Exibe o uso desse comando e sair." - -#: grub-core/lib/arg.c:362 -#, c-format -msgid "missing mandatory option for `%s'" -msgstr "faltando opção obrigatória para '%s'" - -#: grub-core/lib/arg.c:384 -#, c-format -msgid "the argument `%s' requires an integer" -msgstr "o argumento '%s' requer um inteiro" - -#: grub-core/lib/arg.c:407 -#, c-format -msgid "" -"a value was assigned to the argument `%s' while it doesn't require an " -"argument" -msgstr "" -"um valor foi atribuído ao argumento '%s' enquanto ele não requer um argumento" - -#: grub-core/lib/backtrace.c:64 -msgid "Print backtrace." -msgstr "" - -#: grub-core/lib/gnulib/argp-help.c:149 -#, c-format -msgid "ARGP_HELP_FMT: %s value is less than or equal to %s" -msgstr "ARGP_HELP_FMT: O valor %s é menor do que ou igual a %s" - -#: grub-core/lib/gnulib/argp-help.c:225 -#, c-format -msgid "%.*s: ARGP_HELP_FMT parameter requires a value" -msgstr "%.*s: O parâmetro ARGP_HELP_FMT exige um valor" - -#: grub-core/lib/gnulib/argp-help.c:235 -#, c-format -msgid "%.*s: Unknown ARGP_HELP_FMT parameter" -msgstr "%.*s: Parâmetro ARGP_HELP_FMT desconhecido" - -#: grub-core/lib/gnulib/argp-help.c:248 -#, c-format -msgid "Garbage in ARGP_HELP_FMT: %s" -msgstr "Lixo em ARGP_HELP_FMT: %s" - -#: grub-core/lib/gnulib/argp-help.c:1229 -msgid "" -"Mandatory or optional arguments to long options are also mandatory or " -"optional for any corresponding short options." -msgstr "" -"Argumentos obrigatórios ou opcionais para opções longas também o são para " -"quaisquer opções curtas correspondentes." - -#: grub-core/lib/gnulib/argp-help.c:1620 -msgid " or: " -msgstr " ou: " - -#: grub-core/lib/gnulib/argp-help.c:1632 -msgid " [OPTION...]" -msgstr " [OPÇÃO...]" - -#: grub-core/lib/gnulib/argp-help.c:1659 -#, c-format -msgid "Try '%s --help' or '%s --usage' for more information.\n" -msgstr "Tente \"%s --help\" ou \"%s --usage\" para mais informação.\n" - -#: grub-core/lib/gnulib/argp-help.c:1687 -#, c-format -msgid "Report bugs to %s.\n" -msgstr "Relate erros para %s.\n" - -#: grub-core/lib/gnulib/argp-help.c:1888 grub-core/lib/gnulib/error.c:195 -msgid "Unknown system error" -msgstr "Erro desconhecido de sistema" - -#: grub-core/lib/gnulib/argp-parse.c:81 -msgid "give this help list" -msgstr "fornece esta lista de ajuda" - -#: grub-core/lib/gnulib/argp-parse.c:82 -msgid "give a short usage message" -msgstr "fornece uma mensagem de uso curta" - -#: grub-core/lib/gnulib/argp-parse.c:83 util/grub-mkfont.c:946 -msgid "NAME" -msgstr "NOME" - -#: grub-core/lib/gnulib/argp-parse.c:84 -msgid "set the program name" -msgstr "define o nome do programa" - -#: grub-core/lib/gnulib/argp-parse.c:86 -msgid "hang for SECS seconds (default 3600)" -msgstr "segura por SEGS segundos (padrão 3600)" - -#: grub-core/lib/gnulib/argp-parse.c:143 -msgid "print program version" -msgstr "mostra a versão do programa" - -#: grub-core/lib/gnulib/argp-parse.c:160 -msgid "(PROGRAM ERROR) No version known!?" -msgstr "(PROGRAMA ERRO) Nenhuma versão conhecida!?" - -#: grub-core/lib/gnulib/argp-parse.c:613 -#, c-format -msgid "%s: Too many arguments\n" -msgstr "%s: Número excessivo de argumentos\n" - -#: grub-core/lib/gnulib/argp-parse.c:759 -msgid "(PROGRAM ERROR) Option should have been recognized!?" -msgstr "(ERRO NO PROGRAMA) A opção deveria ter sido reconhecida!?" - -#: grub-core/lib/gnulib/getopt.c:278 -#, fuzzy, c-format -msgid "%s: option '%s%s' is ambiguous\n" -msgstr "%s: a opção \"-W %s\" é ambígua\n" - -#: grub-core/lib/gnulib/getopt.c:284 -#, fuzzy, c-format -msgid "%s: option '%s%s' is ambiguous; possibilities:" -msgstr "%s: a opção \"%s\" é ambígua; possibilidades:" - -#: grub-core/lib/gnulib/getopt.c:319 -#, fuzzy, c-format -msgid "%s: unrecognized option '%s%s'\n" -msgstr "%s: opção desconhecida \"%c%s\"\n" - -#: grub-core/lib/gnulib/getopt.c:345 -#, fuzzy, c-format -msgid "%s: option '%s%s' doesn't allow an argument\n" -msgstr "%s: a opção \"%c%s\" não permite um argumento\n" - -#: grub-core/lib/gnulib/getopt.c:360 -#, fuzzy, c-format -msgid "%s: option '%s%s' requires an argument\n" -msgstr "%s: a opção \"--%s\" exige um argumento\n" - -#: grub-core/lib/gnulib/getopt.c:621 -#, c-format -msgid "%s: invalid option -- '%c'\n" -msgstr "%s: opção inválida -- \"%c\"\n" - -#: grub-core/lib/gnulib/getopt.c:636 grub-core/lib/gnulib/getopt.c:682 -#, c-format -msgid "%s: option requires an argument -- '%c'\n" -msgstr "%s: a opção exige um argumento -- \"%c\"\n" - -#: grub-core/lib/gnulib/openat-die.c:38 -#, fuzzy, c-format -msgid "unable to record current working directory" -msgstr "Restaura o papel de parede original" - -#: grub-core/lib/gnulib/openat-die.c:57 -#, c-format -msgid "failed to return to initial working directory" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:135 grub-core/osdep/aros/hostdisk.c:523 -msgid "Success" -msgstr "Sucesso" - -#: grub-core/lib/gnulib/regcomp.c:138 -msgid "No match" -msgstr "Nenhuma ocorrência do padrão" - -#: grub-core/lib/gnulib/regcomp.c:141 -msgid "Invalid regular expression" -msgstr "Expressão regular inválida" - -#: grub-core/lib/gnulib/regcomp.c:144 -msgid "Invalid collation character" -msgstr "Caractere de combinação inválido" - -#: grub-core/lib/gnulib/regcomp.c:147 -msgid "Invalid character class name" -msgstr "Nome inválido de categoria de caracteres" - -#: grub-core/lib/gnulib/regcomp.c:150 -msgid "Trailing backslash" -msgstr "Barra invertida no final" - -#: grub-core/lib/gnulib/regcomp.c:153 -msgid "Invalid back reference" -msgstr "Retrorreferência inválida" - -#: grub-core/lib/gnulib/regcomp.c:156 -#, fuzzy -msgid "Unmatched [, [^, [:, [., or [=" -msgstr "[ ou [^ sem correspondente" - -#: grub-core/lib/gnulib/regcomp.c:159 -msgid "Unmatched ( or \\(" -msgstr "( ou \\( sem correspondente" - -#: grub-core/lib/gnulib/regcomp.c:162 -msgid "Unmatched \\{" -msgstr "\\{ sem correspondente" - -#: grub-core/lib/gnulib/regcomp.c:165 -msgid "Invalid content of \\{\\}" -msgstr "Conteúdo inválido de \\{\\}" - -#: grub-core/lib/gnulib/regcomp.c:168 -msgid "Invalid range end" -msgstr "Fim de intervalo inválido" - -#: grub-core/lib/gnulib/regcomp.c:171 -msgid "Memory exhausted" -msgstr "Memória esgotada" - -#: grub-core/lib/gnulib/regcomp.c:174 -msgid "Invalid preceding regular expression" -msgstr "Expressão regular precedente inválida" - -#: grub-core/lib/gnulib/regcomp.c:177 -msgid "Premature end of regular expression" -msgstr "Fim prematuro da expressão regular" - -#: grub-core/lib/gnulib/regcomp.c:180 -msgid "Regular expression too big" -msgstr "Expressão regular grande demais" - -#: grub-core/lib/gnulib/regcomp.c:183 -msgid "Unmatched ) or \\)" -msgstr ") ou \\) sem correspondente" - -#: grub-core/lib/gnulib/regcomp.c:531 -msgid "unknown regexp error" -msgstr "expressão regular desconhecida" - -#: grub-core/lib/gnulib/regcomp.c:676 -msgid "No previous regular expression" -msgstr "Nenhuma expressão regular anterior" - -#: grub-core/lib/i386/halt.c:77 -msgid "GRUB doesn't know how to halt this machine yet!" -msgstr "" - -#: grub-core/lib/legacy_parse.c:75 -msgid "Default server is ${net_default_server}" -msgstr "O servidor padrão é ${servidor_padrão_rede}" - -#: grub-core/lib/legacy_parse.c:844 grub-core/video/colors.c:296 -#: grub-core/video/colors.c:305 grub-core/video/colors.c:311 -#: grub-core/video/colors.c:327 util/render-label.c:84 util/render-label.c:98 -#, c-format -msgid "invalid color specification `%s'" -msgstr "especificação de cor inválida: '%s'" - -#: grub-core/lib/mips/arc/reboot.c:32 grub-core/lib/mips/loongson/reboot.c:61 -msgid "Reboot failed" -msgstr "Falha ao reiniciar" - -#: grub-core/lib/random.c:113 -msgid "[LENGTH]" -msgstr "" - -#: grub-core/lib/random.c:114 -msgid "Hexdump random data." -msgstr "" - -#: grub-core/loader/arm/linux.c:242 -msgid "device tree must be supplied (see `devicetree' command)" -msgstr "" -"a árvore de dispositivos deve ser fornecida (veja o comando `devicetree')" - -#: grub-core/loader/arm/linux.c:334 -msgid "invalid zImage" -msgstr "zImage inválida" - -#: grub-core/loader/arm/linux.c:450 grub-core/loader/efi/fdt.c:144 -msgid "invalid device tree" -msgstr "árvore de dispositivo inválida" - -#: grub-core/loader/arm/linux.c:493 grub-core/loader/arm64/linux.c:383 -#: grub-core/loader/i386/linux.c:1125 grub-core/loader/i386/pc/linux.c:479 -#: grub-core/loader/i386/xen.c:962 grub-core/loader/i386/xen.c:964 -#: grub-core/loader/ia64/efi/linux.c:591 grub-core/loader/mips/linux.c:501 -#: grub-core/loader/powerpc/ieee1275/linux.c:383 -#: grub-core/loader/riscv/linux.c:50 -#: grub-core/loader/sparc64/ieee1275/linux.c:511 -msgid "Load Linux." -msgstr "Carregar Linux" - -#: grub-core/loader/arm/linux.c:495 grub-core/loader/arm64/linux.c:385 -#: grub-core/loader/i386/linux.c:1127 grub-core/loader/i386/pc/linux.c:482 -#: grub-core/loader/i386/xen.c:966 grub-core/loader/ia64/efi/linux.c:594 -#: grub-core/loader/mips/linux.c:503 -#: grub-core/loader/powerpc/ieee1275/linux.c:385 -#: grub-core/loader/riscv/linux.c:52 -#: grub-core/loader/sparc64/ieee1275/linux.c:513 -msgid "Load initrd." -msgstr "Carregar initrd." - -#. TRANSLATORS: DTB stands for device tree blob. -#: grub-core/loader/arm/linux.c:498 grub-core/loader/efi/fdt.c:169 -msgid "Load DTB file." -msgstr "Arquivo DTB local." - -#: grub-core/loader/arm64/linux.c:59 -msgid "" -"plain image kernel not supported - rebuild with CONFIG_(U)EFI_STUB enabled" -msgstr "" - -#: grub-core/loader/arm64/xen_boot.c:156 -msgid "failed to get FDT" -msgstr "" - -#: grub-core/loader/arm64/xen_boot.c:418 -#, fuzzy -msgid "you need to load the Xen Hypervisor first" -msgstr "você precisa carregar o kernel primeiro" - -#: grub-core/loader/arm64/xen_boot.c:516 -#, fuzzy -msgid "Load a xen hypervisor." -msgstr "%s, com o hipervisor Xen" - -#: grub-core/loader/arm64/xen_boot.c:519 -#, fuzzy -msgid "Load a xen module." -msgstr "Carregar módulo." - -#: grub-core/loader/efi/appleloader.c:231 -msgid "[OPTS]" -msgstr "[OPÇÕES]" - -#. TRANSLATORS: This command is used on EFI to -#. switch to BIOS mode and boot the OS requiring -#. BIOS. -#: grub-core/loader/efi/appleloader.c:235 -msgid "Boot BIOS-based system." -msgstr "Iniciar o sistema baseado na BIOS." - -#: grub-core/loader/efi/chainloader.c:421 -#: grub-core/loader/i386/pc/chainloader.c:303 -msgid "Load another boot loader." -msgstr "Carregar outro carregador de inicialização." - -#: grub-core/loader/i386/bsd.c:103 -msgid "Display output on all consoles." -msgstr "Exibir a saída em todos os consoles." - -#: grub-core/loader/i386/bsd.c:104 grub-core/loader/i386/bsd.c:138 -#: grub-core/loader/i386/bsd.c:171 -msgid "Use serial console." -msgstr "Usar console serial." - -#: grub-core/loader/i386/bsd.c:105 grub-core/loader/i386/bsd.c:131 -#: grub-core/loader/i386/bsd.c:159 -msgid "Ask for file name to reboot from." -msgstr "Perguntar pelo nome de arquivo para reinicializar." - -#: grub-core/loader/i386/bsd.c:106 -msgid "Use CD-ROM as root." -msgstr "Usar CD-ROM como root." - -#: grub-core/loader/i386/bsd.c:107 -#, fuzzy -msgid "Invoke user configuration routing." -msgstr "A configuração de roteamento foi salva com sucesso." - -#: grub-core/loader/i386/bsd.c:108 grub-core/loader/i386/bsd.c:135 -#: grub-core/loader/i386/bsd.c:162 -msgid "Enter in KDB on boot." -msgstr "Entrar no KDB na inicialização." - -#: grub-core/loader/i386/bsd.c:109 -#, fuzzy -msgid "Use GDB remote debugger instead of DDB." -msgstr "Usar GDB depurador remote em vez de DDB." - -#: grub-core/loader/i386/bsd.c:110 -msgid "Disable all boot output." -msgstr "Desabilitar todas as saídas de inicialização." - -#: grub-core/loader/i386/bsd.c:112 -msgid "Wait for keypress after every line of output." -msgstr "Aguardar pressionamento de tecla depois de cada linha de saída." - -#: grub-core/loader/i386/bsd.c:114 -#, fuzzy -msgid "Use compiled-in root device." -msgstr "Usar o diretório atual no caminho do usuário root" - -#: grub-core/loader/i386/bsd.c:115 grub-core/loader/i386/bsd.c:134 -#: grub-core/loader/i386/bsd.c:165 -msgid "Boot into single mode." -msgstr "Iniciar no modo único." - -#: grub-core/loader/i386/bsd.c:116 grub-core/loader/i386/bsd.c:166 -msgid "Boot with verbose messages." -msgstr "Iniciar com mensagens detalhadas." - -#: grub-core/loader/i386/bsd.c:132 grub-core/loader/i386/bsd.c:160 -msgid "Don't reboot, just halt." -msgstr "Não reiniciar, apenas desligar." - -#: grub-core/loader/i386/bsd.c:133 grub-core/loader/i386/bsd.c:161 -msgid "Change configured devices." -msgstr "Alterar os dispositivos configurados." - -#. TRANSLATORS: "com" is static and not to be translated. It refers to -#. serial ports e.g. com1. -#. -#: grub-core/loader/i386/bsd.c:142 -msgid "comUNIT[,SPEED]" -msgstr "comUNIDADE[,VELOCIDADE]" - -#: grub-core/loader/i386/bsd.c:157 -msgid "Disable SMP." -msgstr "Desabilitar SMP." - -#: grub-core/loader/i386/bsd.c:158 -msgid "Disable ACPI." -msgstr "Desabilitar ACPI." - -#: grub-core/loader/i386/bsd.c:164 -msgid "Don't display boot diagnostic messages." -msgstr "Não exibir mensagens de diagnósticos da inicialização." - -#: grub-core/loader/i386/bsd.c:167 -msgid "Boot with debug messages." -msgstr "Iniciar com mensagens de depuração." - -#: grub-core/loader/i386/bsd.c:168 -msgid "Suppress normal output (warnings remain)." -msgstr "Suprimir a saída normal (as advertências permanecem)." - -#. TRANSLATORS: "com" is static and not to be translated. It refers to -#. serial ports e.g. com1. -#. -#: grub-core/loader/i386/bsd.c:175 -msgid "[ADDR|comUNIT][,SPEED]" -msgstr "[ENDEREÇO|comUNIDADE][,VELOCIDADE]" - -#: grub-core/loader/i386/bsd.c:489 grub-core/loader/i386/bsd.c:555 -msgid "name" -msgstr "nome" - -#: grub-core/loader/i386/bsd.c:489 grub-core/loader/i386/bsd.c:555 -msgid "type" -msgstr "tipo" - -#: grub-core/loader/i386/bsd.c:489 grub-core/loader/i386/bsd.c:555 -msgid "addr" -msgstr "endereço" - -#: grub-core/loader/i386/bsd.c:490 grub-core/loader/i386/bsd.c:556 -msgid "size" -msgstr "tamanho" - -#: grub-core/loader/i386/bsd.c:1147 grub-core/loader/i386/linux.c:466 -#: grub-core/loader/i386/xnu.c:1030 -msgid "Booting in blind mode" -msgstr "Iniciando no modo cego" - -#: grub-core/loader/i386/bsd.c:2137 -msgid "Load kernel of FreeBSD." -msgstr "Carregar o kernel do FreeBSD." - -#: grub-core/loader/i386/bsd.c:2140 -msgid "Load kernel of OpenBSD." -msgstr "Carregar o kernel do OpenBSD." - -#: grub-core/loader/i386/bsd.c:2143 -msgid "Load kernel of NetBSD." -msgstr "Carregar o kernel do NetBSD." - -#: grub-core/loader/i386/bsd.c:2147 -msgid "Load FreeBSD env." -msgstr "Carregar o ambiente FreeBSD." - -#: grub-core/loader/i386/bsd.c:2150 -msgid "Load FreeBSD kernel module." -msgstr "Carregar o módulo do kernel do FreeBSD." - -#: grub-core/loader/i386/bsd.c:2153 -msgid "Load NetBSD kernel module." -msgstr "Carregar o módulo do kernel do NetBSD." - -#: grub-core/loader/i386/bsd.c:2156 -msgid "Load NetBSD kernel module (ELF)." -msgstr "Carregar o módulo do kernel do NetBSD (ELF)." - -#: grub-core/loader/i386/bsd.c:2159 -msgid "Load FreeBSD kernel module (ELF)." -msgstr "Carregar o módulo do kernel do FreeBSD (ELF)." - -#. TRANSLATORS: ramdisk isn't identifier, -#. it can be translated. -#: grub-core/loader/i386/bsd.c:2165 -msgid "Load kOpenBSD ramdisk." -msgstr "Carregar ramdisk do kOpenBSD." - -#. TRANSLATORS: "payload" is a term used -#. by coreboot and must be translated in -#. sync with coreboot. If unsure, -#. let it untranslated. -#: grub-core/loader/i386/coreboot/chainloader.c:510 -#, fuzzy -msgid "Load another coreboot payload" -msgstr "Carregar outro arquivo de configuração." - -#: grub-core/loader/i386/linux.c:876 -msgid "Legacy `ask' parameter no longer supported." -msgstr "O parâmetro antigo 'ask' não é mais suportado." - -#: grub-core/loader/i386/linux.c:892 grub-core/loader/i386/linux.c:902 -#: grub-core/loader/i386/linux.c:932 -#, c-format -msgid "%s is deprecated. Use set gfxpayload=%s before linux command instead.\n" -msgstr "" -"%s está obsoleto. Ao invés, use 'set gfxpayload=%s' antes do comando " -"'linux'.\n" - -#. TRANSLATORS: "x" has to be entered in, like an identifier, -#. so please don't use better Unicode codepoints. -#: grub-core/loader/i386/linux.c:915 -#, c-format -msgid "" -"%s is deprecated. VGA mode %d isn't recognized. Use set " -"gfxpayload=WIDTHxHEIGHT[xDEPTH] before linux command instead.\n" -msgstr "" -"%s está obsoleto. O modo VGA %d não é reconhecido. Ao invés, use 'set " -"gfxpayload=LARGURAxALTURA[xPROFUNDIDADE' antes do comando 'linux'.\n" - -#: grub-core/loader/i386/pc/chainloader.c:302 -msgid "[--force|--bpb] FILE" -msgstr "[--force|--bpb] ARQUIVO" - -#: grub-core/loader/i386/pc/freedos.c:148 util/setup.c:293 -#, c-format -msgid "the size of `%s' is too large" -msgstr "o tamanho de `%s' é muito grande" - -#: grub-core/loader/i386/pc/freedos.c:183 -msgid "Load FreeDOS kernel.sys." -msgstr "Carregar o kernel.sys do FreeBSD." - -#: grub-core/loader/i386/pc/ntldr.c:155 -msgid "Load NTLDR or BootMGR." -msgstr "Carregar o NTLDR ou BootMGR." - -#. TRANSLATORS: it's about guessing which GRUB disk -#. is which Plan9 disk. If your language has no -#. word "mapping" you can use another word which -#. means that the GRUBDEVICE and PLAN9DEVICE are -#. actually the same device, just named differently -#. in OS and GRUB. -#: grub-core/loader/i386/pc/plan9.c:59 -msgid "Override guessed mapping of Plan9 devices." -msgstr "" - -#: grub-core/loader/i386/pc/plan9.c:60 -msgid "GRUBDEVICE=PLAN9DEVICE" -msgstr "" - -#: grub-core/loader/i386/pc/plan9.c:599 -msgid "KERNEL ARGS" -msgstr "KERNEL ARGUMENTOS" - -#: grub-core/loader/i386/pc/plan9.c:599 -msgid "Load Plan9 kernel." -msgstr "Carregar o kernel do Plan9." - -#: grub-core/loader/i386/pc/pxechainloader.c:161 -msgid "Load a PXE image." -msgstr "Carregar uma imagem PXE." - -#: grub-core/loader/i386/pc/truecrypt.c:226 -msgid "Load Truecrypt ISO." -msgstr "Carrega ISO Truecrypt." - -#: grub-core/loader/i386/xen.c:781 grub-core/loader/i386/xen.c:865 -msgid "initrd already loaded" -msgstr "initrd já carregado" - -#: grub-core/loader/i386/xen.c:968 -msgid "Load module." -msgstr "Carregar módulo." - -#: grub-core/loader/i386/xnu.c:1003 -msgid "Press any key to launch xnu" -msgstr "Pressione qualquer tecla para iniciar o xnu" - -#. TRANSLATORS: `device-properties' -#. is a variable name, -#. not a program. -#: grub-core/loader/i386/xnu.c:1159 -#, fuzzy -msgid "Load `device-properties' dump." -msgstr "Adicionar Novo Dispositivo de Dump" - -#: grub-core/loader/ia64/efi/linux.c:124 -msgid "Could not locate FPSWA driver" -msgstr "Não foi possível encontrar o driver FPSWA" - -#: grub-core/loader/ia64/efi/linux.c:132 -msgid "FPSWA protocol wasn't able to find the interface" -msgstr "O protocolo FPSWA não conseguiu encontrar a interface" - -#: grub-core/loader/ia64/efi/linux.c:580 -msgid "No FPSWA found" -msgstr "Nenhum FPSWA encontrado" - -#: grub-core/loader/ia64/efi/linux.c:582 -#, c-format -msgid "FPSWA revision: %x\n" -msgstr "FPSWA revisão: %x\n" - -#: grub-core/loader/ia64/efi/linux.c:591 -msgid "FILE [ARGS...]" -msgstr "ARQUIVO [ARGUMENTOS...]" - -#: grub-core/loader/ia64/efi/linux.c:597 -msgid "Display FPSWA version." -msgstr "Exibir a versão do FPSWA." - -#: grub-core/loader/multiboot.c:248 -msgid "WARNING: no console will be available to OS" -msgstr "AVISO: nenhum console estará disponível no SO" - -#: grub-core/loader/multiboot.c:450 -msgid "Load a multiboot 2 kernel." -msgstr "Carregar um kernel multiboot 2." - -#: grub-core/loader/multiboot.c:453 -msgid "Load a multiboot 2 module." -msgstr "Carregar um módulo multiboot 2" - -#: grub-core/loader/multiboot.c:456 -msgid "Load a multiboot kernel." -msgstr "Carregar um kernel multiboot." - -#: grub-core/loader/multiboot.c:459 -msgid "Load a multiboot module." -msgstr "Carregar um módulo multiboot." - -#: grub-core/loader/riscv/linux.c:30 grub-core/loader/riscv/linux.c:40 -#, fuzzy -msgid "Linux not supported yet" -msgstr "Lista dos modos de vídeo suportados:" - -#: grub-core/loader/xnu.c:1416 grub-core/term/gfxterm_background.c:45 -msgid "Background image mode." -msgstr "Modo de imagem de fundo." - -#. TRANSLATORS: This refers to background image mode (stretched or -#. in left-top corner). Note that GRUB will accept only original -#. keywords stretch and normal, not the translated ones. -#. So please put both in translation -#. e.g. stretch(=%STRETCH%)|normal(=%NORMAL%). -#. The percents mark the translated version. Since many people -#. may not know the word stretch or normal I recommend -#. putting the translation either here or in "Background image mode." -#. string. -#: grub-core/loader/xnu.c:1416 grub-core/term/gfxterm_background.c:55 -msgid "stretch|normal" -msgstr "stretch|normal" - -#: grub-core/loader/xnu.c:1482 -msgid "Load XNU image." -msgstr "Carregar imagem XNU." - -#: grub-core/loader/xnu.c:1484 -msgid "Load 64-bit XNU image." -msgstr "Carregar imagem XNU 64 bit." - -#: grub-core/loader/xnu.c:1486 -msgid "Load XNU extension package." -msgstr "Carregar pacote de extensão XNU." - -#: grub-core/loader/xnu.c:1488 -msgid "Load XNU extension." -msgstr "Carregar extensão XNU." - -#. TRANSLATORS: OSBundleRequired is a -#. variable name in xnu extensions -#. manifests. It behaves mostly like -#. GNU/Linux runlevels. -#. -#: grub-core/loader/xnu.c:1495 -msgid "DIRECTORY [OSBundleRequired]" -msgstr "DIRETÓRIO [OSBundleRequired]" - -#. TRANSLATORS: There are many extensions -#. in extension directory. -#: grub-core/loader/xnu.c:1498 -msgid "Load XNU extension directory." -msgstr "Carregar o diretório de extensões do XNU." - -#. TRANSLATORS: ramdisk here isn't identifier. It can be translated. -#: grub-core/loader/xnu.c:1501 -msgid "Load XNU ramdisk. It will be available in OS as md0." -msgstr "Carregar ramdisk do XNU. Ela estará disponível no SO como md0." - -#: grub-core/loader/xnu.c:1505 -msgid "Load a splash image for XNU." -msgstr "Carregar uma imagem de apresentação para o XNU." - -#: grub-core/loader/xnu.c:1510 -msgid "Load an image of hibernated XNU." -msgstr "Carregar uma imagem do XNU hibernado." - -#: grub-core/mmap/mmap.c:538 -msgid "ADDR1,MASK1[,ADDR2,MASK2[,...]]" -msgstr "ENDEREÇO1,MÃSCARA1[,ENDEREÇO2,MÃSCARA2[,...]]" - -#: grub-core/mmap/mmap.c:539 -msgid "Declare memory regions as faulty (badram)." -msgstr "Declarar regiões da memória como problemática (badram)." - -#: grub-core/mmap/mmap.c:541 -msgid "FROM[K|M|G] TO[K|M|G]" -msgstr "DE[K|M|G] PARA[K|M|G]" - -#: grub-core/mmap/mmap.c:542 -msgid "Remove any memory regions in specified range." -msgstr "Remover qualquer região da memória na faixa especificada." - -#: grub-core/net/bootp.c:653 -msgid "four arguments expected" -msgstr "quatro argumentos esperados" - -#: grub-core/net/bootp.c:661 grub-core/net/net.c:1155 -#, c-format -msgid "unrecognised network interface `%s'" -msgstr "interface de rede não reconhecida '%s'" - -#: grub-core/net/bootp.c:664 -msgid "no DHCP info found" -msgstr "nenhuma informação de DHCP encontrada" - -#: grub-core/net/bootp.c:674 -msgid "no DHCP options found" -msgstr "nenhuma opção de DHCP encontrada" - -#: grub-core/net/bootp.c:682 -#, fuzzy -msgid "invalid DHCP option code" -msgstr "nenhuma opção de DHCP encontrada" - -#: grub-core/net/bootp.c:686 -#, fuzzy, c-format -msgid "no DHCP option %u found" -msgstr "nenhuma opção DHCP %d encontrada" - -#: grub-core/net/bootp.c:743 -#, c-format -msgid "unrecognised DHCP option format specification `%s'" -msgstr "especificação de formato da opção DHCP não reconhecida `%s'" - -#: grub-core/net/bootp.c:767 -msgid "no network card found" -msgstr "nenhuma placa de rede encontrada" - -#: grub-core/net/bootp.c:859 grub-core/net/net.c:389 -#, c-format -msgid "couldn't autoconfigure %s" -msgstr "não foi possível autoconfigurar %s" - -#: grub-core/net/bootp.c:873 grub-core/net/bootp.c:876 -msgid "[CARD]" -msgstr "[PLACA]" - -#: grub-core/net/bootp.c:874 -msgid "perform a bootp autoconfiguration" -msgstr "executar uma configuração automática do bootp" - -#: grub-core/net/bootp.c:877 -#, fuzzy -msgid "perform a DHCP autoconfiguration" -msgstr "executar uma configuração automática do bootp" - -#: grub-core/net/bootp.c:879 -msgid "VAR INTERFACE NUMBER DESCRIPTION" -msgstr "VARIÃVEL INTERFACE NÚMERO DESCRIÇÃO" - -#: grub-core/net/bootp.c:880 -msgid "" -"retrieve DHCP option and save it into VAR. If VAR is - then print the value." -msgstr "" -"obter a opção DHCP e salvá-la na VARIÃVEL. Se a VARIÃVEL for - então exibir " -"o valor." - -#: grub-core/net/dns.c:459 -msgid "no DNS servers configured" -msgstr "nenhum servidor DNS configurado" - -#: grub-core/net/dns.c:522 -msgid "domain name component is too long" -msgstr "o nome de domínio do componente é muito extenso" - -#: grub-core/net/dns.c:618 grub-core/net/dns.c:666 -msgid "no DNS record found" -msgstr "nenhum registro DNS encontrado" - -#: grub-core/net/dns.c:626 -msgid "no DNS reply received" -msgstr "nenhuma resposta DNS recebida" - -#: grub-core/net/dns.c:682 -msgid "only ipv4" -msgstr "apenas ipv4" - -#: grub-core/net/dns.c:686 -msgid "only ipv6" -msgstr "apenas ipv6" - -#: grub-core/net/dns.c:690 -msgid "prefer ipv4" -msgstr "preferir ipv4" - -#: grub-core/net/dns.c:694 -msgid "prefer ipv6" -msgstr "preferir ipv6" - -#: grub-core/net/dns.c:759 -msgid "ADDRESS DNSSERVER" -msgstr "ENDEREÇO SERVIDOR_DNS" - -#: grub-core/net/dns.c:760 -msgid "Perform a DNS lookup" -msgstr "Executar uma consulta DNS" - -#: grub-core/net/dns.c:762 grub-core/net/dns.c:765 -msgid "DNSSERVER" -msgstr "SERVIDOR_DNS" - -#: grub-core/net/dns.c:763 -msgid "Add a DNS server" -msgstr "Adicionar um servidor DNS" - -#: grub-core/net/dns.c:766 -msgid "Remove a DNS server" -msgstr "Remover um servidor DNS" - -#: grub-core/net/dns.c:768 -msgid "List DNS servers" -msgstr "Listar servidores DNS" - -#: grub-core/net/drivers/efi/efinet.c:49 grub-core/net/drivers/efi/efinet.c:65 -#: grub-core/net/drivers/efi/efinet.c:77 grub-core/net/drivers/emu/emunet.c:62 -#: grub-core/net/drivers/i386/pc/pxe.c:273 -#: grub-core/net/drivers/ieee1275/ofnet.c:75 -#: grub-core/net/drivers/uboot/ubootnet.c:62 -msgid "couldn't send network packet" -msgstr "não foi possível enviar um pacotes de rede" - -#: grub-core/net/drivers/ieee1275/ofnet.c:326 -#: grub-core/net/drivers/ieee1275/ofnet.c:359 -#, fuzzy -msgid "interpret is not supported" -msgstr "Interface 16 bits protegida suportada\n" - -#: grub-core/net/drivers/ieee1275/ofnet.c:336 -msgid "alloc-mem failed" -msgstr "" - -#: grub-core/net/drivers/ieee1275/ofnet.c:370 -msgid "free-mem failed" -msgstr "" - -#: grub-core/net/http.c:105 -msgid "unsupported HTTP response" -msgstr "resposta HTTP não suportada" - -#. TRANSLATORS: GRUB HTTP code is pretty young. So even perfectly -#. valid answers like 403 will trigger this very generic message. -#: grub-core/net/http.c:126 -#, c-format -msgid "unsupported HTTP error %d: %s" -msgstr "erro HTTP não suportado %d: %s" - -#: grub-core/net/http.c:429 grub-core/net/tftp.c:420 -#, c-format -msgid "time out opening `%s'" -msgstr "tempo de espera excedido ao abrir `%s'" - -#: grub-core/net/net.c:179 -msgid "timeout: could not resolve hardware address" -msgstr "" -"tempo de espera excedido: não foi possível resolver o endereço de hardware" - -#: grub-core/net/net.c:548 -#, c-format -msgid "unresolvable address %s" -msgstr "endereço não resolvido %s" - -#: grub-core/net/net.c:594 -#, c-format -msgid "unrecognised network address `%s'" -msgstr "endereço de rede não reconhecido `%s'" - -#: grub-core/net/net.c:661 -msgid "destination unreachable" -msgstr "destino inacessível" - -#. TRANSLATORS: route loop is a condition when e.g. -#. to contact server A you need to go through B -#. and to contact B you need to go through A. -#: grub-core/net/net.c:684 -msgid "route loop detected" -msgstr "loop de rota detectado" - -#: grub-core/net/net.c:700 -msgid "address not found" -msgstr "endereço não encontrado" - -#: grub-core/net/net.c:704 -msgid "you can't delete this address" -msgstr "você não pode remover este endereço" - -#: grub-core/net/net.c:776 grub-core/net/net.c:792 -#, c-format -msgid "Unsupported hw address type %d\n" -msgstr "Tipo de endereço de hardware não suportado %d\n" - -#: grub-core/net/net.c:813 -#, c-format -msgid "Unsupported address type %d\n" -msgstr "Tipo de endereço não suportado %d\n" - -#: grub-core/net/net.c:1017 grub-core/net/net.c:1131 -msgid "three arguments expected" -msgstr "três argumentos esperados" - -#: grub-core/net/net.c:1023 -msgid "card not found" -msgstr "placa não encontrada" - -#. TRANSLATORS: it refers to the network address. -#: grub-core/net/net.c:1167 -msgid "temporary" -msgstr "temporário" - -#: grub-core/net/net.c:1190 -#, c-format -msgid "Unknown address type %d\n" -msgstr "Tipo de endereço desconhecido %d\n" - -#: grub-core/net/net.c:1298 -msgid "no server is specified" -msgstr "nenhum servidor especificado" - -#: grub-core/net/net.c:1637 -#, c-format -msgid "timeout reading `%s'" -msgstr "tempo de espera excedido ao ler `%s'" - -#. TRANSLATORS: HWADDRESS stands for -#. "hardware address". -#: grub-core/net/net.c:1762 -msgid "SHORTNAME CARD ADDRESS [HWADDRESS]" -msgstr "NOME_CURTO PLACA ENDEREÇO [ENDEREÇO_HARDWARE]" - -#: grub-core/net/net.c:1763 -msgid "Add a network address." -msgstr "Adiciona um endereço de rede." - -#: grub-core/net/net.c:1766 -msgid "[CARD [HWADDRESS]]" -msgstr "[PLACA [ENDEREÇO_HARDWARE]]" - -#: grub-core/net/net.c:1767 -msgid "Perform an IPV6 autoconfiguration" -msgstr "Executa uma configuração automática IPv6" - -#: grub-core/net/net.c:1770 grub-core/net/net.c:1777 -msgid "SHORTNAME" -msgstr "NOME_CURTO" - -#: grub-core/net/net.c:1771 -msgid "Delete a network address." -msgstr "Remover um endereço da rede." - -#. TRANSLATORS: "gw" is a keyword. -#: grub-core/net/net.c:1774 -msgid "SHORTNAME NET [INTERFACE| gw GATEWAY]" -msgstr "NOME_CURTO REDE [INTERFACE| gw GATEWAY]" - -#: grub-core/net/net.c:1775 -msgid "Add a network route." -msgstr "Adicionar uma rota da rede." - -#: grub-core/net/net.c:1778 -msgid "Delete a network route." -msgstr "Remover uma rota da rede." - -#: grub-core/net/net.c:1780 -msgid "list network routes" -msgstr "listar as rotas da rede" - -#: grub-core/net/net.c:1782 -msgid "list network cards" -msgstr "listar as placas de rede" - -#: grub-core/net/net.c:1784 -msgid "list network addresses" -msgstr "listar os endereços de rede" - -#: grub-core/net/tcp.c:681 -msgid "connection refused" -msgstr "conexão recusada" - -#: grub-core/net/tcp.c:684 -msgid "connection timeout" -msgstr "tempo de espera excedido na conexão" - -#: grub-core/normal/auth.c:220 -msgid "Enter username: " -msgstr "Digitar nome de usuário: " - -#: grub-core/normal/auth.c:269 -msgid "[USERLIST]" -msgstr "[LISTA_DE_USUÃRIOS]" - -#: grub-core/normal/auth.c:270 -#, fuzzy -msgid "Check whether user is in USERLIST." -msgstr "Marque se este ponto está em um polígono" - -#: grub-core/normal/cmdline.c:174 grub-core/normal/menu_entry.c:1068 -msgid "Possible commands are:" -msgstr "Os comandos possíveis são:" - -#: grub-core/normal/cmdline.c:177 grub-core/normal/menu_entry.c:1072 -msgid "Possible devices are:" -msgstr "Os dispositivos possíveis são:" - -#: grub-core/normal/cmdline.c:180 grub-core/normal/menu_entry.c:1076 -msgid "Possible files are:" -msgstr "Os arquivos possíveis são:" - -#: grub-core/normal/cmdline.c:183 grub-core/normal/menu_entry.c:1080 -msgid "Possible partitions are:" -msgstr "As partições possíveis são:" - -#: grub-core/normal/cmdline.c:186 grub-core/normal/menu_entry.c:1084 -msgid "Possible arguments are:" -msgstr "Os argumentos possíveis são:" - -#. TRANSLATORS: this message is used if none of above matches. -#. This shouldn't happen but please use the general term for -#. "thing" or "object". -#: grub-core/normal/cmdline.c:192 grub-core/normal/menu_entry.c:1088 -msgid "Possible things are:" -msgstr "As coisas possíveis são:" - -#: grub-core/normal/color.c:81 -#, fuzzy, c-format -msgid "Warning: syntax error (missing slash) in `%s'\n" -msgstr "Alerta: erro de sintax (faltando barra '/') em '%s'\n" - -#: grub-core/normal/color.c:90 -#, fuzzy, c-format -msgid "Warning: invalid foreground color `%s'\n" -msgstr "Coluna do nome da cor do primeiro plano" - -#: grub-core/normal/color.c:96 -#, fuzzy, c-format -msgid "Warning: invalid background color `%s'\n" -msgstr "Coluna do nome da cor do segundo plano" - -#: grub-core/normal/context.c:206 -msgid "ENVVAR [ENVVAR] ..." -msgstr "VARIÃVEL_DO_AMBIENTE [VARIÃVEL_DO_AMBIENTE]..." - -#: grub-core/normal/context.c:207 -msgid "Export variables." -msgstr "Exportar variáveis." - -#: grub-core/normal/datetime.c:25 -msgid "Sunday" -msgstr "Domingo" - -#: grub-core/normal/datetime.c:26 -msgid "Monday" -msgstr "Segunda-feira" - -#: grub-core/normal/datetime.c:27 -msgid "Tuesday" -msgstr "Terça-feira" - -#: grub-core/normal/datetime.c:28 -msgid "Wednesday" -msgstr "Quarta-feira" - -#: grub-core/normal/datetime.c:29 -msgid "Thursday" -msgstr "Quinta-feira" - -#: grub-core/normal/datetime.c:30 -msgid "Friday" -msgstr "Sexta-feira" - -#: grub-core/normal/datetime.c:31 -msgid "Saturday" -msgstr "Sábado" - -#: grub-core/normal/dyncmd.c:187 -msgid "module isn't loaded" -msgstr "O módulo não está carregado" - -#: grub-core/normal/main.c:211 -#, c-format -msgid "GNU GRUB version %s" -msgstr "GNU GRUB versão %s" - -#: grub-core/normal/main.c:360 -msgid "ESC at any time exits." -msgstr "ESC em qualquer momento sai." - -#: grub-core/normal/main.c:363 -#, fuzzy, c-format -msgid "" -"Minimal BASH-like line editing is supported. For the first word, TAB lists " -"possible command completions. Anywhere else TAB lists possible device or " -"file completions. %s" -msgstr "" -"Edição mínima de linha tipo BASH é suportada. Para a primeira palavra, TAB " -"lista as possibilidades de complementação do comando. Em qualquer outro " -"lugar TAB lista as conclusões possíveis de arquivo ou dispositivo. %s" - -#. TRANSLATORS: it's command line prompt. -#: grub-core/normal/main.c:395 -msgid ">" -msgstr ">" - -#. TRANSLATORS: it's command line prompt. -#: grub-core/normal/main.c:398 -msgid "grub>" -msgstr "grub>" - -#: grub-core/normal/main.c:518 -msgid "Clear the screen." -msgstr "Limpar a tela." - -#: grub-core/normal/main.c:527 -msgid "Enter normal mode." -msgstr "Entrar no modo normal." - -#: grub-core/normal/main.c:529 -msgid "Exit from normal mode." -msgstr "Sair do modo normal." - -#: grub-core/normal/menu.c:66 grub-core/normal/menu_entry.c:1449 -msgid "Press any key to continue..." -msgstr "Pressione qualquer tecla para continuar..." - -#: grub-core/normal/menu.c:815 -#, c-format -msgid "Booting `%s'" -msgstr "Iniciando '%s'" - -#: grub-core/normal/menu.c:827 -#, c-format -msgid "Falling back to `%s'" -msgstr "Alternando para `%s'" - -#: grub-core/normal/menu.c:843 -msgid "Failed to boot both default and fallback entries.\n" -msgstr "Falha ao inicializar ambas as entradas, padrão e alternativa.\n" - -#: grub-core/normal/menu_entry.c:1171 -msgid "Booting a command list" -msgstr "Iniciando uma lista de comandos" - -#: grub-core/normal/menu_text.c:160 -msgid "" -"Minimum Emacs-like screen editing is supported. TAB lists completions. Press " -"Ctrl-x or F10 to boot, Ctrl-c or F2 for a command-line or ESC to discard " -"edits and return to the GRUB menu." -msgstr "" -"Edição da tela no estilo Emacs é suportada. TAB para listar completações. " -"Pressione F1 para inicializar, F2=Ctrl-a, F3=Ctrl-e, F4 para linha de " -"comando ou ESC para descartar as alterações e retornar para o menu do GRUB." - -#: grub-core/normal/menu_text.c:170 -#, fuzzy, c-format -msgid "Use the %C and %C keys to select which entry is highlighted." -msgstr "Use as teclas %C e %C para selecionar qual a entrada está destacada.\n" - -#. TRANSLATORS: that's the list of binary unit prefixes. -#: grub-core/normal/misc.c:38 -msgid "B" -msgstr "B" - -#: grub-core/normal/misc.c:38 -msgid "KiB" -msgstr "KiB" - -#: grub-core/normal/misc.c:38 -msgid "MiB" -msgstr "MiB" - -#: grub-core/normal/misc.c:38 -msgid "GiB" -msgstr "GiB" - -#: grub-core/normal/misc.c:38 -msgid "TiB" -msgstr "TiB" - -#: grub-core/normal/misc.c:38 -msgid "PiB" -msgstr "PiB" - -#. TRANSLATORS: that's the list of binary unit prefixes. -#: grub-core/normal/misc.c:40 -msgid "K" -msgstr "K" - -#: grub-core/normal/misc.c:40 -msgid "M" -msgstr "M" - -#: grub-core/normal/misc.c:40 -msgid "G" -msgstr "G" - -#: grub-core/normal/misc.c:40 -msgid "T" -msgstr "T" - -#: grub-core/normal/misc.c:40 -msgid "P" -msgstr "P" - -#. TRANSLATORS: that's the list of binary unit prefixes. -#: grub-core/normal/misc.c:42 -msgid "B/s" -msgstr "B/s" - -#: grub-core/normal/misc.c:42 -msgid "KiB/s" -msgstr "KiB/s" - -#: grub-core/normal/misc.c:42 -msgid "MiB/s" -msgstr "MiB/s" - -#: grub-core/normal/misc.c:42 -msgid "GiB/s" -msgstr "GiB/s" - -#: grub-core/normal/misc.c:42 -msgid "TiB/s" -msgstr "TiB/s" - -#: grub-core/normal/misc.c:42 -msgid "PiB/s" -msgstr "PiB/s" - -#: grub-core/normal/misc.c:96 -#, c-format -msgid "Partition %s:" -msgstr "Partição %s:" - -#: grub-core/normal/misc.c:101 -#, c-format -msgid "Device %s:" -msgstr "Dispositivo %s:" - -#: grub-core/normal/misc.c:107 -msgid "Filesystem cannot be accessed" -msgstr "O sistema de arquivos não pode ser acessado" - -#: grub-core/normal/misc.c:121 -#, c-format -msgid "Filesystem type %s" -msgstr "Tipo de sistema de arquivos %s" - -#: grub-core/normal/misc.c:131 -#, c-format -msgid "- Label `%s'" -msgstr "- Rótulo '%s'" - -#. TRANSLATORS: Arguments are year, month, day, hour, minute, -#. second, day of the week (translated). -#: grub-core/normal/misc.c:148 -#, c-format -msgid "- Last modification time %d-%02d-%02d %02d:%02d:%02d %s" -msgstr "- Hora da última modificação %d-%02d-%02d %02d:%02d:%02d %s" - -#: grub-core/normal/misc.c:171 -msgid "No known filesystem detected" -msgstr "Nenhum sistema de arquivos conhecido foi detectado" - -#: grub-core/normal/misc.c:174 -#, c-format -msgid " - Partition start at %llu%sKiB" -msgstr " - A partição começa em %llu%sKiB" - -#: grub-core/normal/misc.c:178 -#, c-format -msgid " - Sector size %uB" -msgstr " - Tamanho do setor %uB" - -#: grub-core/normal/misc.c:180 -msgid " - Total size unknown" -msgstr " - Tamanho total desconhecido" - -#: grub-core/normal/misc.c:182 -#, c-format -msgid " - Total size %llu%sKiB" -msgstr " - Tamanho total %llu%sKiB" - -#. TRANSLATORS: Replace dot with appropriate decimal separator for -#. your language. -#: grub-core/normal/misc.c:186 -msgid ".5" -msgstr ",5" - -#. TRANSLATORS: This has to fit on one line. It's ok to include few -#. words but don't write poems. -#: grub-core/normal/term.c:82 -msgid "--MORE--" -msgstr "--MAIS--" - -#: grub-core/osdep/aros/config.c:92 grub-core/osdep/unix/config.c:137 -#: grub-core/osdep/windows/config.c:55 -#, c-format -msgid "cannot open configuration file `%s': %s" -msgstr "não foi possível abrir o arquivo de configuração `%s': %s" - -#: grub-core/osdep/basic/compress.c:8 grub-core/osdep/basic/compress.c:14 -#: grub-core/osdep/basic/compress.c:20 -msgid "no compression is available for your platform" -msgstr "nenhuma compressão está disponível em sua plataforma" - -#: grub-core/osdep/basic/no_platform.c:30 -#: grub-core/osdep/windows/platform.c:418 -msgid "no IEEE1275 routines are available for your platform" -msgstr "nenhuma rotina IEEE1275 está disponível para sua plataforma" - -#: grub-core/osdep/basic/no_platform.c:38 -msgid "no EFI routines are available for your platform" -msgstr "nenhuma rotina EFI está disponível para sua plataforma" - -#: grub-core/osdep/basic/no_platform.c:45 -#: grub-core/osdep/windows/platform.c:425 -msgid "no SGI routines are available for your platform" -msgstr "nenhuma rotina SGI está disponível para sua plataforma" - -#. TRANSLATORS: The OS itself may very well have a random -#. number generator but GRUB doesn't know how to access it. -#: grub-core/osdep/basic/random.c:42 -msgid "no random number generator is available for your OS" -msgstr "nenhum gerador de número aleatório está disponível para o seu SO" - -#: grub-core/osdep/devmapper/getroot.c:81 -msgid "Failed to create `device-mapper' tree" -msgstr "Falha ao criar a árvore `device-mapper'" - -#: grub-core/osdep/devmapper/getroot.c:197 -#: grub-core/osdep/freebsd/getroot.c:202 -#, c-format -msgid "can't mount encrypted volume `%s': %s" -msgstr "não foi possível montar o volume criptografado `%s': %s" - -#. TRANSLATORS: geom is the name of (k)FreeBSD device framework. -#. Usually left untranslated. -#. -#: grub-core/osdep/freebsd/getroot.c:82 grub-core/osdep/freebsd/getroot.c:164 -#: grub-core/osdep/freebsd/getroot.c:258 grub-core/osdep/freebsd/getroot.c:316 -msgid "couldn't open geom" -msgstr "não foi possível abrir o geom" - -#: grub-core/osdep/freebsd/getroot.c:182 grub-core/osdep/freebsd/getroot.c:277 -#, fuzzy -msgid "couldn't find geli consumer" -msgstr "Impossível encontrar arquivo pixmap: %s" - -#: grub-core/osdep/freebsd/getroot.c:282 -msgid "couldn't retrieve geli UUID" -msgstr "" - -#. TRANSLATORS: geom is the name of (k)FreeBSD device framework. -#. Usually left untranslated. "part" is the identifier of one of its -#. classes. -#: grub-core/osdep/freebsd/getroot.c:325 -msgid "couldn't find geom `part' class" -msgstr "não foi possível encontrar a classe 'part' do geom" - -#: grub-core/osdep/freebsd/hostdisk.c:72 grub-core/osdep/linux/hostdisk.c:93 -msgid "unaligned device size" -msgstr "tamanho de dispositivo não alinhado" - -#: grub-core/osdep/generic/blocklist.c:56 -#, fuzzy, c-format -msgid "attempting to read the core image `%s' from GRUB" -msgstr "tentando ler a imagem de núcleo `%s' do GRUB" - -#: grub-core/osdep/generic/blocklist.c:57 -#, fuzzy, c-format -msgid "attempting to read the core image `%s' from GRUB again" -msgstr "tentando ler a imagem de núcleo `%s' do GRUB novamente" - -#: grub-core/osdep/generic/blocklist.c:115 -#, fuzzy, c-format -msgid "cannot read `%s' correctly" -msgstr "%s não pode ler \"%s\" a partir de %s." - -#: grub-core/osdep/generic/blocklist.c:126 -#, fuzzy -msgid "failed to read the sectors of the core image" -msgstr "falha na leitura dos setores de repouso da imagem de núcleo" - -#. TRANSLATORS: On GNU/Hurd, a "translator" is similar to a filesystem -#. mount, but handled by a userland daemon, whose invocation command line -#. is being fetched here. First %s is the file being looked at (for which -#. we are fetching the "translator" command line), second %s is the error -#. message. -#. -#: grub-core/osdep/hurd/getroot.c:79 -#, c-format -msgid "cannot get translator command line for path `%s': %s" -msgstr "" - -#: grub-core/osdep/hurd/getroot.c:82 -#, c-format -msgid "translator command line is empty for path `%s'" -msgstr "" - -#. TRANSLATORS: we expect to get something like -#. /hurd/foobar --option1 --option2=baz /dev/something -#. -#: grub-core/osdep/hurd/getroot.c:98 -#, c-format -msgid "" -"translator `%s' for path `%s' has several non-option words, at least `%s' " -"and `%s'" -msgstr "" - -#. TRANSLATORS: we expect to get something like -#. /hurd/foobar --option1 --option2=baz /dev/something -#. -#: grub-core/osdep/hurd/getroot.c:109 -#, c-format -msgid "" -"translator `%s' for path `%s' is given only options, cannot find device part" -msgstr "" - -#: grub-core/osdep/hurd/hostdisk.c:73 -#, c-format -msgid "Storage information for `%s' does not include type" -msgstr "" - -#: grub-core/osdep/hurd/hostdisk.c:75 -#, c-format -msgid "`%s' is not a local disk" -msgstr "`%s' não é um disco local" - -#: grub-core/osdep/hurd/hostdisk.c:78 -#, c-format -msgid "" -"Storage information for `%s' indicates neither a plain partition nor a plain " -"disk" -msgstr "" - -#: grub-core/osdep/linux/blocklist.c:81 grub-core/osdep/linux/blocklist.c:96 -#: grub-core/osdep/linux/blocklist.c:122 -#, fuzzy, c-format -msgid "can't retrieve blocklists: %s" -msgstr "Não foi possível obter arquivo %s\n" - -#: grub-core/osdep/linux/blocklist.c:84 -msgid "blocksize is not divisible by 512" -msgstr "" - -#: grub-core/osdep/linux/blocklist.c:86 -#, fuzzy -msgid "invalid zero blocksize" -msgstr "tamanho de bloco inválido" - -#: grub-core/osdep/linux/blocklist.c:90 util/setup.c:744 -#, fuzzy -msgid "can't retrieve blocklists" -msgstr "Não foi possível obter arquivo %s\n" - -#: grub-core/osdep/linux/getroot.c:154 -#, fuzzy, c-format -msgid "ioctl RAID_VERSION error: %s" -msgstr "Erro no protocolo SOCKS versão 5" - -#: grub-core/osdep/linux/getroot.c:160 grub-core/osdep/linux/getroot.c:164 -#, fuzzy, c-format -msgid "unsupported RAID version: %d.%d" -msgstr "Versão do RAID exibe a versão do RAID." - -#: grub-core/osdep/linux/getroot.c:169 -#, c-format -msgid "ioctl GET_ARRAY_INFO error: %s" -msgstr "" - -#: grub-core/osdep/linux/getroot.c:178 -#, c-format -msgid "ioctl GET_DISK_INFO error: %s" -msgstr "" - -#: grub-core/osdep/linux/getroot.c:608 grub-core/osdep/linux/getroot.c:678 -#: grub-core/osdep/linux/hostdisk.c:126 grub-core/osdep/unix/getroot.c:253 -#: grub-core/osdep/unix/getroot.c:642 grub-core/osdep/unix/platform.c:92 -#: grub-core/osdep/unix/platform.c:100 -#, fuzzy, c-format -msgid "Unable to open stream from %s: %s" -msgstr "" -"Não foi possível ler de \"%s\"\n" -"\n" -"Detalhes: %s" - -#: grub-core/osdep/linux/getroot.c:1033 -#, fuzzy, c-format -msgid "unknown kind of RAID device `%s'" -msgstr "Dispositivo de CD-ROM desconhecido" - -#: grub-core/osdep/linux/ofpath.c:181 -#, c-format -msgid "`obppath' not found in parent dirs of `%s', no IEEE1275 name discovery" -msgstr "" - -#: grub-core/osdep/linux/ofpath.c:222 grub-core/osdep/unix/getroot.c:505 -#: grub-core/osdep/unix/getroot.c:529 grub-core/osdep/unix/relpath.c:49 -#: util/grub-install.c:984 util/grub-install.c:1331 util/grub-probe.c:323 -#, fuzzy, c-format -msgid "failed to get canonical path of `%s'" -msgstr "Falha ao obter o arquivo do caminho de configuração a partir de \"%s\"" - -#: grub-core/osdep/linux/ofpath.c:740 -#, fuzzy, c-format -msgid "unknown device type %s" -msgstr "Tipo de dispositivo desconhecido" - -#: grub-core/osdep/linux/ofpath.c:758 util/ieee1275/grub-ofpathname.c:39 -#, c-format -msgid "Usage: %s DEVICE\n" -msgstr "Uso: %s DISPOSITIVO\n" - -#: grub-core/osdep/unix/exec.c:86 grub-core/osdep/unix/exec.c:172 -#: grub-core/osdep/unix/exec.c:217 -#, c-format -msgid "Unable to fork: %s" -msgstr "Não foi possível bifurcar: %s" - -#: grub-core/osdep/unix/exec.c:166 grub-core/osdep/unix/exec.c:211 -#, fuzzy, c-format -msgid "Unable to create pipe: %s" -msgstr "Falha ao criar um pipe para '%s': %s" - -#: grub-core/osdep/unix/getroot.c:370 -#, fuzzy -msgid "cannot save the original directory" -msgstr "Restaura o papel de parede original" - -#: grub-core/osdep/unix/getroot.c:423 grub-core/osdep/unix/getroot.c:480 -#: grub-core/osdep/unix/getroot.c:489 -#, fuzzy -msgid "cannot restore the original directory" -msgstr "Restaura o papel de parede original" - -#. TRANSLATORS: "stat" comes from the name of POSIX function. -#: grub-core/osdep/unix/getroot.c:551 grub-core/osdep/unix/hostdisk.c:61 -#: grub-core/osdep/unix/relpath.c:73 grub-core/osdep/unix/relpath.c:97 -#: util/getroot.c:160 util/getroot.c:162 util/grub-install.c:774 -#: util/grub-macbless.c:70 -#, c-format -msgid "cannot stat `%s': %s" -msgstr "não foi possível obter o status '%s': %s" - -#: grub-core/osdep/unix/hostdisk.c:293 -#, fuzzy, c-format -msgid "cannot make temporary file: %s" -msgstr "Não foi possível renomear o arquivo '%1' para '%2'." - -#: grub-core/osdep/unix/hostdisk.c:311 -#, fuzzy, c-format -msgid "cannot make temporary directory: %s" -msgstr "Restaura o papel de parede original" - -#: grub-core/osdep/unix/platform.c:77 -#, c-format -msgid "" -"couldn't find IEEE1275 device path for %s.\n" -"You will have to set `boot-device' variable manually" -msgstr "" - -#. TRANSLATORS: This message is shown when required executable `%s' -#. isn't found. -#: grub-core/osdep/unix/platform.c:149 grub-core/osdep/unix/platform.c:189 -#, c-format -msgid "%s: not found" -msgstr "%s: não encontrado" - -#: grub-core/osdep/unix/platform.c:225 -#, c-format -msgid "" -"`nvsetenv' failed. \n" -"You will have to set `boot-device' variable manually. At the IEEE1275 " -"prompt, type:\n" -" %s\n" -msgstr "" - -#: grub-core/osdep/unix/platform.c:240 -msgid "You will have to set `SystemPartition' and `OSLoader' manually." -msgstr "" - -#. TRANSLATORS: canonical pathname is the -#. complete one e.g. /etc/fstab. It has -#. to contain `/' normally, if it doesn't -#. we're in trouble and throw this error. -#: grub-core/osdep/unix/relpath.c:90 -#, fuzzy -msgid "no `/' in canonical filename" -msgstr "" -"\n" -"Falta um nome de arquivo em --file\n" -"\n" - -#: grub-core/osdep/windows/hostdisk.c:151 -msgid "cygwin_conv_path() failed" -msgstr "Falha no cygwin_conv_path()" - -#: grub-core/osdep/windows/hostdisk.c:501 util/grub-install.c:570 -#, fuzzy -msgid "couldn't retrieve random data" -msgstr "Não foi possível recuperar a consulta." - -#: grub-core/osdep/windows/platform.c:97 -msgid "Insufficient privileges to access firmware, assuming BIOS" -msgstr "" - -#: grub-core/osdep/windows/platform.c:225 -msgid "no EFI routines are available when running in BIOS mode" -msgstr "nenhuma rotina EFI está disponível quando executando no modo BIOS" - -#: grub-core/osdep/windows/platform.c:240 -msgid "unexpected EFI error" -msgstr "erro EFI inesperado" - -#: grub-core/osdep/windows/platform.c:315 -msgid "Couldn't find a free BootNNNN slot" -msgstr "" - -#: grub-core/partmap/gpt.c:191 -#, fuzzy -msgid "" -"this GPT partition label contains no BIOS Boot Partition; embedding won't be " -"possible" -msgstr "" -"Este rótulo de partição GPT não tem Partição de Boot BIOS: não será possível " -"embuti-lo!" - -#: grub-core/partmap/gpt.c:196 -msgid "your BIOS Boot Partition is too small; embedding won't be possible" -msgstr "" - -#. TRANSLATORS: MBR gap and boot track is the same thing and is the space -#. between MBR and first partitition. If your language translates well only -#. "boot track", you can just use it everywhere. Next two messages are about -#. RAID controllers/software bugs which GRUB has to live with. Please spread -#. the message that these are bugs in other software and not merely -#. suboptimal behaviour. -#: grub-core/partmap/msdos.c:51 -#, c-format -msgid "" -"Sector %llu is already in use by raid controller `%s'; avoiding it. Please " -"ask the manufacturer not to store data in MBR gap" -msgstr "" - -#: grub-core/partmap/msdos.c:54 -#, c-format -msgid "" -"Sector %llu is already in use by the program `%s'; avoiding it. This " -"software may cause boot or other problems in future. Please ask its authors " -"not to store data in the boot track" -msgstr "" - -#: grub-core/partmap/msdos.c:384 -msgid "" -"other software is using the embedding area, and there is not enough room for " -"core.img. Such software is often trying to store data in a way that avoids " -"detection. We recommend you investigate" -msgstr "" - -#: grub-core/partmap/msdos.c:395 -#, fuzzy -msgid "" -"this msdos-style partition label has no post-MBR gap; embedding won't be " -"possible" -msgstr "" -"Este rótulo de partição estilo msdos não tem espaço vago pós-MBR; não será " -"possível embuti-lo!" - -#: grub-core/partmap/msdos.c:404 -#, fuzzy -msgid "your embedding area is unusually small. core.img won't fit in it." -msgstr "" -"Sua área de embutidura está menor que de costume. O core.img não caberá nela." - -#: grub-core/parttool/msdospart.c:39 -msgid "Make partition active" -msgstr "Tornar a partição ativa" - -#: grub-core/parttool/msdospart.c:51 -msgid "not a primary partition" -msgstr "não é uma partição primária" - -#: grub-core/parttool/msdospart.c:69 -#, c-format -msgid "Partition %d is active now. \n" -msgstr "A partição %d está ativa agora. \n" - -#: grub-core/parttool/msdospart.c:74 -#, fuzzy, c-format -msgid "Cleared active flag on %d. \n" -msgstr "Texto ativo no plano de fundo normal" - -#: grub-core/parttool/msdospart.c:87 -msgid "Change partition type" -msgstr "Alterar tipo de partição" - -#: grub-core/parttool/msdospart.c:88 -#, fuzzy -msgid "Set `hidden' flag in partition type" -msgstr "" -"Definir indicador &ativo na tabela de partição para a partição de " -"inicialização" - -#: grub-core/parttool/msdospart.c:130 -#, c-format -msgid "the partition type 0x%x isn't valid" -msgstr "o tipo de partição 0x%x não é válido" - -#. TRANSLATORS: In this case we're actually writing to the disk and actively -#. modifying partition type rather than just defining it. -#: grub-core/parttool/msdospart.c:137 -#, fuzzy, c-format -msgid "Setting partition type to 0x%x\n" -msgstr "Configurando o tipo da partição de caminhos múltiplos %1$s como %2$X" - -#. TRANSLATORS: 0 is a quantifier. "break" (similar to bash) -#. can be used e.g. to break 3 loops at once. -#. But asking it to break 0 loops makes no sense. -#: grub-core/script/execute.c:143 -#, fuzzy -msgid "can't break 0 loops" -msgstr "Caracteres após a quebra" - -#. TRANSLATORS: It's about not being -#. inside a function. "return" can be used only -#. in a function and this error occurs if it's used -#. anywhere else. -#: grub-core/script/execute.c:227 -#, fuzzy -msgid "not in function body" -msgstr "A função '%1' não foi encontrada no script: %2" - -#: grub-core/script/execute.c:371 -#, fuzzy, c-format -msgid "invalid variable name `%s'" -msgstr "&Copiar o nome da variável" - -#: grub-core/script/execute.c:953 -msgid "cannot allocate command buffer" -msgstr "" - -#: grub-core/script/lexer.c:144 util/grub-fstest.c:330 -#, fuzzy -msgid "unexpected end of file" -msgstr "fim de arquivo inesperado" - -#: grub-core/script/main.c:55 grub-core/script/main.c:57 -#: grub-core/script/main.c:59 grub-core/script/main.c:67 -msgid "[NUM]" -msgstr "[NÚMERO]" - -#: grub-core/script/main.c:55 -msgid "Exit from loops" -msgstr "Sair dos loops" - -#: grub-core/script/main.c:57 -msgid "Continue loops" -msgstr "Continuar os loops" - -#. TRANSLATORS: Positional arguments are -#. arguments $0, $1, $2, ... -#: grub-core/script/main.c:62 -#, fuzzy -msgid "Shift positional parameters." -msgstr "Atualizar os parâmetros dos juros (Shift+Enter)" - -#: grub-core/script/main.c:64 -msgid "[VALUE]..." -msgstr "[VALOR]..." - -#: grub-core/script/main.c:65 -#, fuzzy -msgid "Set positional parameters." -msgstr "Define os parâmetros a passar à folha de estilo." - -#. TRANSLATORS: It's a command description -#. and "Return" is a verb, not a noun. The -#. command in question is "return" and -#. has exactly the same semanics as bash -#. equivalent. -#: grub-core/script/main.c:73 -msgid "Return from a function." -msgstr "Retornar de uma função" - -#: grub-core/term/gfxterm_background.c:176 -msgid "[-m (stretch|normal)] FILE" -msgstr "[-m (stretch|normal)] ARQUIVO" - -#: grub-core/term/gfxterm_background.c:177 -msgid "Load background image for active terminal." -msgstr "" - -#: grub-core/term/gfxterm_background.c:182 util/grub-install.c:302 -#: util/grub-install.c:303 util/grub-mkrescue.c:107 util/grub-mkrescue.c:108 -#: util/grub-render-label.c:61 util/grub-render-label.c:63 -msgid "COLOR" -msgstr "COR" - -#: grub-core/term/gfxterm_background.c:183 -msgid "Set background color for active terminal." -msgstr "" - -#: grub-core/term/i386/coreboot/cbmemc.c:139 -msgid "Show CBMEM console content." -msgstr "Exibir o conteúdo do console CBMEM" - -#: grub-core/term/serial.c:57 -#, fuzzy -msgid "Set the serial unit." -msgstr "Exibição da unidade de medida" - -#: grub-core/term/serial.c:58 -#, fuzzy -msgid "Set the serial port address." -msgstr "Varre as portas de um endereço de rede" - -#: grub-core/term/serial.c:59 -#, fuzzy -msgid "Set the serial port speed." -msgstr "Gerenciamento de configurações de portas serial" - -#: grub-core/term/serial.c:60 -#, fuzzy -msgid "Set the serial port word length." -msgstr "Definir o tamanho de palavra da porta serial" - -#: grub-core/term/serial.c:61 -#, fuzzy -msgid "Set the serial port parity." -msgstr "Gerenciamento de configurações de portas serial" - -#: grub-core/term/serial.c:62 -#, fuzzy -msgid "Set the serial port stop bits." -msgstr "Definir os bits de parada da porta serial" - -#: grub-core/term/serial.c:63 -#, fuzzy -msgid "Set the base frequency." -msgstr "Exibição da unidade de medida" - -#: grub-core/term/serial.c:64 -msgid "Enable/disable RTS/CTS." -msgstr "Habilitar/desabilitar RTS/CTS." - -#: grub-core/term/serial.c:218 -#, c-format -msgid "serial port `%s' isn't found" -msgstr "porta serial '%s' não encontrada" - -#: grub-core/term/serial.c:254 -#, fuzzy -msgid "unsupported serial port flow control" -msgstr "tamanho de palavra de porta serial não suportada" - -#: grub-core/term/serial.c:429 -msgid "[OPTIONS...]" -msgstr "[OPÇÕES...]" - -#: grub-core/term/serial.c:430 -msgid "Configure serial port." -msgstr "Configurar porta serial." - -#: grub-core/term/terminfo.c:184 -#, fuzzy, c-format -msgid "unknown terminfo type `%s'" -msgstr "Controle (tipo desconhecido)" - -#: grub-core/term/terminfo.c:668 -msgid "ASCII" -msgstr "ASCII" - -#: grub-core/term/terminfo.c:671 -msgid "UTF-8" -msgstr "UTF-8" - -#. TRANSLATORS: visually ordered UTF-8 is a non-compliant encoding -#. based on UTF-8 with right-to-left languages written in reverse. -#. Used on some terminals. Normal UTF-8 is refered as -#. "logically-ordered UTF-8" by opposition. -#: grub-core/term/terminfo.c:677 -msgid "visually-ordered UTF-8" -msgstr "UTF-8, visualmente ordenado" - -#: grub-core/term/terminfo.c:680 -msgid "Unknown encoding" -msgstr "Codificação desconhecida" - -#: grub-core/term/terminfo.c:684 -#, fuzzy -msgid "Current terminfo types:" -msgstr "Contagem de tipos de controle" - -#: grub-core/term/terminfo.c:699 -#, fuzzy -msgid "Terminal is ASCII-only [default]." -msgstr "" -"Servir como um ActivationContext (padrão é como um ObjectDirectory apenas)" - -#: grub-core/term/terminfo.c:700 -msgid "Terminal is logical-ordered UTF-8." -msgstr "" - -#: grub-core/term/terminfo.c:701 -msgid "Terminal is visually-ordered UTF-8." -msgstr "" - -#: grub-core/term/terminfo.c:703 -#, fuzzy -msgid "Terminal has specified geometry." -msgstr "<%s> geometria \"%s\" não foi definida" - -#. TRANSLATORS: "x" has to be entered in, like an identifier, so please don't -#. use better Unicode codepoints. -#: grub-core/term/terminfo.c:706 -msgid "WIDTHxHEIGHT." -msgstr "LARGURAxALTURA" - -#: grub-core/term/terminfo.c:746 -msgid "incorrect terminal dimensions specification" -msgstr "" - -#: grub-core/term/terminfo.c:776 -#, c-format -msgid "terminal %s isn't found or it's not handled by terminfo" -msgstr "" - -#: grub-core/term/terminfo.c:785 -msgid "[[-a|-u|-v] [-g WxH] TERM [TYPE]]" -msgstr "[[-a|-u|-v] [-g WxH] TERMINAL [TIPO]]" - -#: grub-core/term/terminfo.c:786 -#, fuzzy -msgid "Set terminfo type of TERM to TYPE.\n" -msgstr "Configurar o tipo da partição de caminhos múltiplos %1$s como %2$X" - -#. TRANSLATORS: this is the BLOCK-argument, not -#. environment block. -#: grub-core/tests/test_blockarg.c:49 -msgid "Print and execute block argument." -msgstr "" - -#. TRANSLATORS: We're speaking about bitmap images like -#. JPEG or PNG. -#: grub-core/video/bitmap.c:209 -#, fuzzy, c-format -msgid "bitmap file `%s' is of unsupported format" -msgstr "O formato da imagem de destino \"%1\" não é suportado." - -#: grub-core/video/i386/pc/vbe.c:1191 -#, c-format -msgid " VBE info: version: %d.%d OEM software rev: %d.%d\n" -msgstr " Informação VBE: versão: %d.%d Software OEM rev: %d.%d\n" - -#: grub-core/video/i386/pc/vbe.c:1198 -#, c-format -msgid " total memory: %d KiB\n" -msgstr " memória total: %d KiB\n" - -#: grub-core/video/video.c:596 grub-core/video/video.c:762 -#, fuzzy -msgid "no suitable video mode found" -msgstr "Nenhum dado em Modo Final encontrado." - -#: include/grub/crypto.h:403 -msgid "access denied" -msgstr "acesso negado" - -#: include/grub/util/install.h:30 include/grub/util/install.h:35 -msgid "MODULES" -msgstr "MÓDULOS" - -#: include/grub/util/install.h:31 -msgid "pre-load specified modules MODULES" -msgstr "pré-carregar os módulos MÓDULOS especificados" - -#: include/grub/util/install.h:33 -msgid "embed a specific DTB" -msgstr "" - -#: include/grub/util/install.h:36 -msgid "install only MODULES and their dependencies [default=all]" -msgstr "instalar apenas os MÓDULOS e suas dependências [padrão=todas]" - -#: include/grub/util/install.h:37 -msgid "THEMES" -msgstr "TEMAS" - -#: include/grub/util/install.h:38 -#, c-format -msgid "install THEMES [default=%s]" -msgstr "instalar TEMAS [padrão=%s]" - -#: include/grub/util/install.h:39 -msgid "FONTS" -msgstr "FONTES" - -#: include/grub/util/install.h:40 -#, c-format -msgid "install FONTS [default=%s]" -msgstr "instalar FONTES [padrão=%s]" - -#: include/grub/util/install.h:41 -msgid "LOCALES" -msgstr "IDIOMAS" - -#: include/grub/util/install.h:42 -msgid "install only LOCALES [default=all]" -msgstr "instalar apenas IDIOMAS [padrão=todos]" - -#: include/grub/util/install.h:45 -msgid "compress GRUB files [optional]" -msgstr "comprimir arquivos do GRUB [opcional]" - -#: include/grub/util/install.h:48 util/grub-mkimage.c:83 -#, fuzzy -msgid "choose the compression to use for core image" -msgstr "escolha a compressão a usar" - -#. TRANSLATORS: platform here isn't identifier. It can be translated. -#: include/grub/util/install.h:51 include/grub/util/install.h:54 -#: util/grub-mkimage.c:66 -#, c-format -msgid "use images and modules under DIR [default=%s/]" -msgstr "usar imagens e módulos no DIRETÓRIO [padrão=%s/]" - -#: include/grub/util/install.h:57 -#, fuzzy, c-format -msgid "use translations under DIR [default=%s]" -msgstr "Defina o diretório padrão de saída" - -#: include/grub/util/install.h:60 -#, fuzzy, c-format -msgid "use themes under DIR [default=%s]" -msgstr "Usar este arquivo como imagem de fundo" - -#: include/grub/util/install.h:65 util/grub-mkimage.c:78 -msgid "embed FILE as public key for signature checking" -msgstr "" - -#: util/editenv.c:59 util/grub-editenv.c:201 util/grub-install-common.c:535 -#: util/grub-mkimage.c:315 util/setup.c:791 -#, fuzzy, c-format -msgid "cannot sync `%s': %s" -msgstr "não foi possível procurar '%s': %s" - -#: util/editenv.c:64 -#, fuzzy, c-format -msgid "cannot rename the file %s to %s" -msgstr "Não foi possível renomear o arquivo '%1' para '%2'." - -#: util/getroot.c:402 -#, c-format -msgid "disk does not exist, so falling back to partition device %s" -msgstr "" - -#: util/grub-editenv.c:45 util/grub-fstest.c:506 -msgid "Commands:" -msgstr "Comandos:" - -#: util/grub-editenv.c:47 -#, fuzzy -msgid "Create a blank environment block file." -msgstr "Carregar variáveis do arquivo de bloco de ambiente" - -#: util/grub-editenv.c:49 -#, fuzzy -msgid "List the current variables." -msgstr "Lista de endereços atual: %1" - -#. TRANSLATORS: "set" is a keyword. It's a summary of "set" subcommand. -#: util/grub-editenv.c:51 -#, fuzzy -msgid "set [NAME=VALUE ...]" -msgstr "Mapa nome-valor: %1" - -#: util/grub-editenv.c:52 -msgid "Set variables." -msgstr "Definir variáveis." - -#. TRANSLATORS: "unset" is a keyword. It's a summary of "unset" subcommand. -#: util/grub-editenv.c:54 -#, fuzzy -msgid "unset [NAME ...]" -msgstr "unset NAME" - -#: util/grub-editenv.c:55 -msgid "Delete variables." -msgstr "Remover variáveis." - -#: util/grub-editenv.c:57 -msgid "Options:" -msgstr "Opções:" - -#: util/grub-editenv.c:84 -#, fuzzy -msgid "You need to specify at least one command.\n" -msgstr "Você precisa adicionar pelo menos um servidor à rede." - -#: util/grub-editenv.c:113 -msgid "FILENAME COMMAND" -msgstr "NOME_DE_ARQUIVO COMANDO" - -#: util/grub-editenv.c:114 -msgid "Tool to edit environment block." -msgstr "Ferramenta para editar o bloco do ambiente." - -#: util/grub-editenv.c:116 -#, c-format -msgid "" -"If FILENAME is `-', the default value %s is used.\n" -"\n" -"There is no `delete' command; if you want to delete the whole environment\n" -"block, use `rm %s'." -msgstr "" - -#: util/grub-editenv.c:162 -msgid "invalid environment block" -msgstr "bloco do ambiente inválido" - -#: util/grub-editenv.c:217 -#, c-format -msgid "invalid parameter %s" -msgstr "parâmetro inválido %s" - -#: util/grub-editenv.c:222 -msgid "environment block too small" -msgstr "bloco do ambiente muito pequeno" - -#: util/grub-fstest.c:107 -#, c-format -msgid "disk read fails at offset %lld, length %lld" -msgstr "" - -#: util/grub-fstest.c:138 -#, fuzzy, c-format -msgid "invalid skip value %lld" -msgstr "Valor fornecido de link simbólico inválido" - -#: util/grub-fstest.c:160 util/grub-fstest.c:246 -#, fuzzy, c-format -msgid "read error at offset %llu: %s" -msgstr "Erro: falha ao ler o arquivo temporário em %1" - -#: util/grub-fstest.c:210 -#, fuzzy, c-format -msgid "cannot open OS file `%s': %s" -msgstr "Visualizar: Não foi possível abrir o arquivo %s: %s\n" - -#: util/grub-fstest.c:225 util/misc.c:126 -#, c-format -msgid "cannot write to the stdout: %s" -msgstr "não foi possível gravar na saída padrão: %s" - -#: util/grub-fstest.c:259 -#, c-format -msgid "compare fail at offset %llu" -msgstr "" - -#: util/grub-fstest.c:280 util/grub-fstest.c:314 -#, fuzzy, c-format -msgid "OS file %s open error: %s" -msgstr "%s: erro: não é possível abrir o arquivo \"%s\"" - -#: util/grub-fstest.c:402 util/grub-mount.c:392 -#, c-format -msgid "`loopback' command fails: %s" -msgstr "Falha no comando `loopback': %s" - -#: util/grub-fstest.c:413 util/grub-mount.c:402 -#, c-format -msgid "`cryptomount' command fails: %s" -msgstr "Falha no comando `cryptomount': %s" - -#: util/grub-fstest.c:474 util/grub-fstest.c:478 -#, fuzzy -msgid "couldn't retrieve UUID" -msgstr "Não foi possível recuperar a consulta." - -#: util/grub-fstest.c:507 -msgid "ls PATH" -msgstr "ls CAMINHO" - -#: util/grub-fstest.c:507 -msgid "List files in PATH." -msgstr "Listar arquivos no CAMINHO." - -#: util/grub-fstest.c:508 -msgid "cp FILE LOCAL" -msgstr "cp ARQUIVO LOCAL" - -#: util/grub-fstest.c:508 -msgid "Copy FILE to local file LOCAL." -msgstr "Copiar ARQUIVO para o arquivo local LOCAL." - -#: util/grub-fstest.c:509 -msgid "cat FILE" -msgstr "cat ARQUIVO" - -#: util/grub-fstest.c:509 -msgid "Copy FILE to standard output." -msgstr "Copiar ARQUIBO para a saída padrão." - -#: util/grub-fstest.c:510 -msgid "cmp FILE LOCAL" -msgstr "cmp ARQUIVO LOCAL" - -#: util/grub-fstest.c:510 -msgid "Compare FILE with local file LOCAL." -msgstr "Comparar ARQUIVO com o arquivo local LOCAL." - -#: util/grub-fstest.c:511 -msgid "hex FILE" -msgstr "hex ARQUIVO" - -#: util/grub-fstest.c:511 -msgid "Show contents of FILE in hex." -msgstr "Exibir o conteúdo do ARQUIVO no modo hexadecimal." - -#: util/grub-fstest.c:512 -msgid "crc FILE" -msgstr "crc ARQUIVO" - -#: util/grub-fstest.c:512 -msgid "Get crc32 checksum of FILE." -msgstr "Obter a soma de verificação crc32 do ARQUIVO." - -#: util/grub-fstest.c:513 -msgid "blocklist FILE" -msgstr "blocklist ARQUIVO" - -#: util/grub-fstest.c:513 -#, fuzzy -msgid "Display blocklist of FILE." -msgstr "Exibir o arquivo agora" - -#: util/grub-fstest.c:514 -msgid "xnu_uuid DEVICE" -msgstr "xnu_uuid DISPOSITIVO" - -#: util/grub-fstest.c:514 -msgid "Compute XNU UUID of the device." -msgstr "" - -#. TRANSLATORS: bitmaps are images like e.g. in JPEG. -#: util/grub-fstest.c:517 util/grub-fstest.c:518 util/grub-fstest.c:519 -#: util/grub-mkfont.c:938 util/grub-mkfont.c:951 util/grub-mkfont.c:952 -#: util/grub-mkpasswd-pbkdf2.c:46 util/grub-mkpasswd-pbkdf2.c:47 -#: util/grub-mkpasswd-pbkdf2.c:48 -msgid "NUM" -msgstr "NÚMERO" - -#: util/grub-fstest.c:517 -#, fuzzy -msgid "Skip N bytes from output file." -msgstr "Misturando saída do diff de %1 para o arquivo %2" - -#: util/grub-fstest.c:518 -#, fuzzy -msgid "Handle N bytes in output file." -msgstr " Incluir notas no arquivo de saída" - -#: util/grub-fstest.c:519 -#, fuzzy -msgid "Specify the number of input files." -msgstr "Modificar arquivos de entrada originais" - -#: util/grub-fstest.c:520 util/grub-mount.c:453 -#, fuzzy -msgid "Set debug environment variable." -msgstr "Configura o ambiente do programa a ser depurado" - -#: util/grub-fstest.c:521 util/grub-mount.c:454 -#, fuzzy -msgid "Mount crypto devices." -msgstr "Carregando lista de dispositivos..." - -#. TRANSLATORS: "prompt" is a keyword. -#: util/grub-fstest.c:524 util/grub-mount.c:457 -msgid "FILE|prompt" -msgstr "ARQUIVO|prompt" - -#: util/grub-fstest.c:524 util/grub-mount.c:457 -#, fuzzy -msgid "Load zfs crypto key." -msgstr "Carrega um conjunto de associações de teclas" - -#: util/grub-fstest.c:526 -msgid "Uncompress data." -msgstr "Descomprimir dados" - -#: util/grub-fstest.c:605 -msgid "Invalid disk count.\n" -msgstr "Contagem de discos inválida.\n" - -#. TRANSLATORS: disk count is optional but if it's there it must -#. be before disk list. So please don't imply disk count as mandatory. -#. -#: util/grub-fstest.c:613 -msgid "Disk count must precede disks list.\n" -msgstr "" - -#: util/grub-fstest.c:633 -msgid "No command is specified.\n" -msgstr "Nenhum comando foi especificado.\n" - -#: util/grub-fstest.c:638 -msgid "Not enough parameters to command.\n" -msgstr "Sem parâmetros suficientes para o comando.\n" - -#: util/grub-fstest.c:711 -#, c-format -msgid "Invalid command %s.\n" -msgstr "Comando inválido %s.\n" - -#: util/grub-fstest.c:724 -msgid "IMAGE_PATH COMMANDS" -msgstr "CAMINHO_DA_IMAGEM COMANDOS" - -#: util/grub-fstest.c:725 util/grub-mount.c:553 -msgid "Debug tool for filesystem driver." -msgstr "" - -#: util/grub-glue-efi.c:53 -msgid "set input filename for 32-bit part." -msgstr "" - -#: util/grub-glue-efi.c:55 -msgid "set input filename for 64-bit part." -msgstr "" - -#: util/grub-glue-efi.c:57 util/grub-mklayout.c:55 util/grub-render-label.c:71 -msgid "set output filename. Default is STDOUT" -msgstr "" - -#: util/grub-glue-efi.c:94 util/grub-mklayout.c:476 -#: util/grub-mkpasswd-pbkdf2.c:86 util/grub-render-label.c:131 -msgid "[OPTIONS]" -msgstr "[OPÇÕES]" - -#: util/grub-glue-efi.c:95 -msgid "Glue 32-bit and 64-bit binary into Apple universal one." -msgstr "" - -#: util/grub-glue-efi.c:116 -msgid "Missing input file\n" -msgstr "Arquivo de entrada faltante\n" - -#: util/grub-install-common.c:127 util/grub-install-common.c:151 -#, fuzzy, c-format -msgid "cannot copy `%s' to `%s': %s" -msgstr "não foi possível abrir '%s': %s" - -#: util/grub-install-common.c:147 -#, fuzzy, c-format -msgid "can't compress `%s' to `%s'" -msgstr "não foi possível abrir o arquivo \"%s\": %s" - -#: util/grub-install-common.c:196 util/grub-install-common.c:552 -#: util/grub-install-common.c:579 util/grub-install-common.c:621 -#, fuzzy, c-format -msgid "cannot open directory `%s': %s" -msgstr "não foi possível abrir '%s': %s" - -#: util/grub-install-common.c:212 -#, fuzzy, c-format -msgid "cannot delete `%s': %s" -msgstr "não foi possível procurar '%s': %s" - -#: util/grub-install-common.c:324 util/grub-mkimage.c:209 -msgid "grub-mkimage is compiled without XZ support" -msgstr "grub-mkimage está compilado sem suporta a arquivos XZ" - -#: util/grub-install-common.c:332 util/grub-mkimage.c:217 -#, c-format -msgid "Unknown compression format %s" -msgstr "Formato de compressão desconhecido %s" - -#: util/grub-install-common.c:400 -#, fuzzy, c-format -msgid "Unrecognized compression `%s'" -msgstr "Opção não reconhecida '%s'\\n" - -#: util/grub-install-common.c:509 -#, fuzzy, c-format -msgid "unknown target format %s" -msgstr "formato de destino desconhecido %s\n" - -#: util/grub-install-common.c:700 -#, fuzzy, c-format -msgid "cannot find locale `%s'" -msgstr "não foi possível encontrar o comando '%s'" - -#: util/grub-install-common.c:939 -#, fuzzy, c-format -msgid "%s doesn't exist. Please specify --target or --directory" -msgstr "%s não existe. Por favor especifique --target ou --directory\\n" - -#: util/grub-install-common.c:948 util/grub-install-common.c:951 -#, fuzzy, c-format -msgid "invalid modinfo file `%s'" -msgstr "nome de arquivo inválido '%s'" - -#: util/grub-install-common.c:966 -#, c-format -msgid "Unknown platform `%s-%s'" -msgstr "Plataforma desconhecida `%s-%s'" - -#: util/grub-install.c:238 -msgid "More than one install device?" -msgstr "Mais de um dispositivo de instalação?" - -#: util/grub-install.c:251 -#, c-format -msgid "" -"install GRUB images under the directory DIR/%s instead of the %s directory" -msgstr "" -"instalar as imagens do GRUB no diretório DIRETÓRIO/%s ao invés do diretório " -"%s" - -#: util/grub-install.c:256 util/grub-probe.c:734 -msgid "TARGET" -msgstr "DESTINO" - -#. TRANSLATORS: "TARGET" as in "target platform". -#: util/grub-install.c:258 -#, fuzzy, c-format -msgid "install GRUB for TARGET platform [default=%s]; available targets: %s" -msgstr "instalar o GRUB para a plataforma de DESTINO [padrão=%s]" - -#. TRANSLATORS: "may break" doesn't just mean that option wouldn't have any -#. effect but that it will make the resulting install unbootable from HDD. -#. TRANSLATORS: The potential breakage isn't limited to floppies but it's -#. likely to make the install unbootable from HDD. -#: util/grub-install.c:267 util/grub-setup.c:94 -msgid "" -"make the drive also bootable as floppy (default for fdX devices). May break " -"on some BIOSes." -msgstr "" - -#: util/grub-install.c:270 -msgid "delete device map if it already exists" -msgstr "remover mapa de dispositivos se já existir" - -#: util/grub-install.c:272 util/grub-setup.c:87 -msgid "install even if problems are detected" -msgstr "instalar mesmo se problemas forem encontrados" - -#: util/grub-install.c:274 -msgid "use identifier file even if UUID is available" -msgstr "" - -#: util/grub-install.c:276 -msgid "" -"disk module to use (biosdisk or native). This option is only available on " -"BIOS target." -msgstr "" - -#: util/grub-install.c:279 -msgid "" -"don't update the `boot-device'/`Boot*' NVRAM variables. This option is only " -"available on EFI and IEEE1275 targets." -msgstr "" - -#: util/grub-install.c:282 util/grub-setup.c:89 -msgid "do not probe for filesystems in DEVICE" -msgstr "" - -#: util/grub-install.c:284 -msgid "do not install bootsector" -msgstr "não instalar o setor de inicialização" - -#: util/grub-install.c:286 util/grub-setup.c:96 -msgid "" -"Do not apply any reed-solomon codes when embedding core.img. This option is " -"only available on x86 BIOS targets." -msgstr "" - -#: util/grub-install.c:293 -msgid "" -"the installation device is removable. This option is only available on EFI." -msgstr "" - -#: util/grub-install.c:295 -msgid "ID" -msgstr "ID" - -#: util/grub-install.c:296 -msgid "the ID of bootloader. This option is only available on EFI and Macs." -msgstr "" -"o ID do carregador de inicialização. Esta opção somente está disponível no " -"EFI e Macs." - -#: util/grub-install.c:298 -msgid "use DIR as the EFI System Partition root." -msgstr "usar o DIRETÓRIO como a partição raiz do sistema EFI." - -#: util/grub-install.c:300 -msgid "use DIR for PPC MAC install." -msgstr "usar o DIRETÓRIO para a instalação do PPC MAC." - -#: util/grub-install.c:301 util/grub-mkrescue.c:106 -msgid "use FILE as font for label" -msgstr "usar ARQUIVO como fonte para rótulo" - -#: util/grub-install.c:302 util/grub-mkrescue.c:107 -msgid "use COLOR for label" -msgstr "usar COR para rótulo" - -#: util/grub-install.c:303 util/grub-mkrescue.c:108 -msgid "use COLOR for label background" -msgstr "" - -#: util/grub-install.c:304 util/grub-mkrescue.c:110 -msgid "use STRING as product version" -msgstr "usar TEXTO como versão do produto" - -#: util/grub-install.c:361 -msgid "[OPTION] [INSTALL_DEVICE]" -msgstr "[OPÇÃO] [DISPOSITIVO_DE_INSTALAÇÃO]" - -#: util/grub-install.c:362 -msgid "Install GRUB on your drive." -msgstr "Instalar o GRUB na sua unidade." - -#: util/grub-install.c:363 -#, c-format -msgid "" -"INSTALL_DEVICE must be system device filename.\n" -"%s copies GRUB images into %s. On some platforms, it may also install GRUB " -"into the boot sector." -msgstr "" - -#: util/grub-install.c:672 -#, c-format -msgid "the drive %s is defined multiple times in the device map %s" -msgstr "" - -#: util/grub-install.c:878 -msgid "Unable to determine your platform. Use --target." -msgstr "Não foi possível determinar sua plataforma. Usar --target." - -#: util/grub-install.c:891 -#, c-format -msgid "Installing for %s platform.\n" -msgstr "Instalando para a plataforma %s.\n" - -#: util/grub-install.c:939 -#, fuzzy -msgid "install device isn't specified" -msgstr "O dispositivo de instalação não foi especificado." - -#: util/grub-install.c:1057 -#, fuzzy -msgid "cannot find EFI directory" -msgstr "não é um diretório" - -#: util/grub-install.c:1060 util/grub-install.c:1209 util/grub-install.c:1254 -#: util/grub-macbless.c:76 util/grub-probe.c:329 util/setup.c:316 -#, c-format -msgid "cannot find a device for %s (is /dev mounted?)" -msgstr "" - -#: util/grub-install.c:1069 util/grub-install.c:1217 util/grub-install.c:1270 -#: util/grub-install.c:1365 util/grub-macbless.c:80 util/grub-probe.c:372 -#, c-format -msgid "cannot find a GRUB drive for %s. Check your device.map" -msgstr "" - -#: util/grub-install.c:1087 -#, c-format -msgid "%s doesn't look like an EFI partition" -msgstr "" - -#: util/grub-install.c:1129 util/grub-install.c:1614 -msgid "You've found a bug" -msgstr "Você encontrou um bug" - -#: util/grub-install.c:1231 -#, c-format -msgid "filesystem on %s is neither HFS nor HFS+" -msgstr "" - -#: util/grub-install.c:1299 -#, c-format -msgid "" -"attempt to install to encrypted disk without cryptodisk enabled. Set `%s' in " -"file `%s'" -msgstr "" - -#: util/grub-install.c:1410 util/grub-install.c:1772 util/grub-install.c:1872 -#, fuzzy, c-format -msgid "Can't create file: %s" -msgstr "Falha ao criar um pipe para '%s': %s" - -#: util/grub-install.c:1491 -#, fuzzy -msgid "no hints available for your platform. Expect reduced performance" -msgstr "" -"Nenhuma dica disponível para a sua plataforma. É esperado uma performance " -"reduzida." - -#. TRANSLATORS: This is a prefix in the log to indicate that usually -#. a command would be executed but due to an option was skipped. -#: util/grub-install.c:1702 -msgid "NOT RUNNING: " -msgstr "NÃO EXECUTANDO:" - -#: util/grub-install.c:1806 -#, fuzzy -msgid "the chosen partition is not a PReP partition" -msgstr "A partição é criptografada: a verificação não é suportada" - -#: util/grub-install.c:1811 -msgid "failed to copy Grub to the PReP partition" -msgstr "" - -#: util/grub-install.c:1816 -#, c-format -msgid "" -"the PReP partition is not empty. If you are sure you want to use it, run dd " -"to clear it: `%s'" -msgstr "" - -#: util/grub-install.c:1888 util/grub-install.c:1932 -#, c-format -msgid "efibootmgr failed to register the boot entry: %s" -msgstr "" - -#: util/grub-install.c:1916 -#, fuzzy -msgid "EFI bootloader id isn't specified." -msgstr "O dispositivo de instalação não foi especificado." - -#: util/grub-install.c:1950 -msgid "WARNING: no platform-specific install was performed" -msgstr "" - -#: util/grub-install.c:1957 -#, fuzzy -msgid "Installation finished. No error reported." -msgstr "Erro na instalação: Lista de temas não foi encontrada" - -#: util/grub-macbless.c:101 -msgid "bless for x86-based macs" -msgstr "" - -#: util/grub-macbless.c:103 -msgid "bless for ppc-based macs" -msgstr "" - -#: util/grub-macbless.c:136 util/grub-probe.c:823 -msgid "No path or device is specified.\n" -msgstr "Nenhum caminho ou dispositivo está especificado.\n" - -#: util/grub-macbless.c:157 -msgid "--ppc PATH|--x86 FILE" -msgstr "--ppc CAMINHO|--x86 ARQUIVO" - -#: util/grub-macbless.c:158 -msgid "Mac-style bless on HFS or HFS+" -msgstr "" - -#: util/grub-menulst2cfg.c:44 -#, c-format -msgid "Usage: %s [INFILE [OUTFILE]]\n" -msgstr "Uso: %s [ARQUIVO_ENTRADA [ARQUIVO_SAÃDA]]\n" - -#: util/grub-mkfont.c:157 -#, c-format -msgid "Freetype Error %d loading glyph 0x%x for U+0x%x%s" -msgstr "" - -#. TRANSLATORS: These qualifiers are used for cursive typography, -#. mainly Arabic. Note that the terms refer to the visual position -#. and not logical order and if used in left-to-right script then -#. leftmost is initial but with right-to-left script like Arabic -#. rightmost is the initial. -#: util/grub-mkfont.c:165 -#, fuzzy -msgid " (medial)" -msgstr "Triacontaedro disdiakis medial" - -#: util/grub-mkfont.c:166 -msgid " (leftmost)" -msgstr " (mais a esquerda)" - -#: util/grub-mkfont.c:167 -msgid " (rightmost)" -msgstr " (mais a direita)" - -#: util/grub-mkfont.c:481 -#, fuzzy, c-format -msgid "Out of range substitution (%d, %d)\n" -msgstr "%s: valor fora dos limites" - -#. TRANSLATORS: "lookup" is taken directly from font specifications -#. which are formulated as "Under condition X replace LOOKUP with -#. SUBSTITUITION". " -#: util/grub-mkfont.c:506 -#, fuzzy, c-format -msgid "Out of range lookup: %d\n" -msgstr "%s: valor fora dos limites" - -#: util/grub-mkfont.c:514 -#, fuzzy, c-format -msgid "Unsupported substitution type: %d\n" -msgstr "Tipo de gráfico sem suporte" - -#: util/grub-mkfont.c:550 -#, fuzzy, c-format -msgid "Unsupported substitution specification: %d\n" -msgstr "Especificação de geometria não suportada" - -#: util/grub-mkfont.c:582 -#, fuzzy, c-format -msgid "Unsupported coverage specification: %d\n" -msgstr "Especificação de geometria não suportada" - -#: util/grub-mkfont.c:622 -#, c-format -msgid "WARNING: unsupported font feature parameters: %x\n" -msgstr "" - -#: util/grub-mkfont.c:936 util/grub-mkrescue.c:98 util/grub-mkstandalone.c:48 -#, fuzzy -msgid "save output in FILE [required]" -msgstr " Incluir notas no arquivo de saída" - -#. TRANSLATORS: some font files may have multiple faces (fonts). -#. This option is used to chose among them, the first face being '0'. -#. Rarely used. -#: util/grub-mkfont.c:942 -#, fuzzy -msgid "select face index" -msgstr "Selecione uma nova aparência:" - -#: util/grub-mkfont.c:943 -msgid "FROM-TO[,FROM-TO]" -msgstr "DE-PARA[,DE-PARA]" - -#. TRANSLATORS: It refers to the range of characters in font. -#: util/grub-mkfont.c:945 -#, fuzzy -msgid "set font range" -msgstr "Definir família da fonte" - -#. TRANSLATORS: "family name" for font is just a generic name without suffix -#. like "Bold". -#: util/grub-mkfont.c:949 -#, fuzzy -msgid "set font family name" -msgstr "Fonte para os números das linhas" - -#: util/grub-mkfont.c:950 -msgid "SIZE" -msgstr "TAMANHO" - -#: util/grub-mkfont.c:950 -#, fuzzy -msgid "set font size" -msgstr "Definir o tamanho da fonte" - -#: util/grub-mkfont.c:951 -#, fuzzy -msgid "set font descent" -msgstr "Definir família da fonte" - -#: util/grub-mkfont.c:952 -#, fuzzy -msgid "set font ascent" -msgstr "Definir família da fonte" - -#: util/grub-mkfont.c:953 -#, fuzzy -msgid "convert to bold font" -msgstr "Configurar série de fontes com negrito." - -#: util/grub-mkfont.c:954 -#, fuzzy -msgid "force autohint" -msgstr "Forçar visibilidade" - -#: util/grub-mkfont.c:955 -#, fuzzy -msgid "disable hinting" -msgstr "Hinting do Xft" - -#. TRANSLATORS: some fonts contain bitmap rendering for -#. some sizes. This option forces rerendering even if -#. pre-rendered bitmap is available. -#. -#: util/grub-mkfont.c:961 -msgid "ignore bitmap strikes when loading" -msgstr "" - -#. TRANSLATORS: It refers to the range of characters in font. -#: util/grub-mkfont.c:1059 util/grub-mkfont.c:1075 -#, fuzzy -msgid "invalid font range" -msgstr "Faixa de portas inválido '%1'" - -#: util/grub-mkfont.c:1151 -msgid "[OPTIONS] FONT_FILES" -msgstr "[OPÇÕES] ARQUIVOS_DE_FONTES" - -#: util/grub-mkfont.c:1152 -msgid "Convert common font file formats into PF2" -msgstr "" - -#: util/grub-mkfont.c:1182 util/grub-mkrescue.c:483 -#: util/grub-mkstandalone.c:306 -msgid "output file must be specified" -msgstr "o arquivo de saída deve ser especificado" - -#: util/grub-mkfont.c:1185 -msgid "FT_Init_FreeType fails" -msgstr "Falha no FT_Init_FreeType" - -#: util/grub-mkfont.c:1199 -#, fuzzy, c-format -msgid "can't open file %s, index %d: error %d" -msgstr "Erro: Não foi possível abrir arquivo local %s: %s\n" - -#: util/grub-mkfont.c:1229 -#, fuzzy, c-format -msgid "can't set %dx%d font size: Freetype error %d: %s" -msgstr "Define o tamanho da fonte do documento." - -#: util/grub-mkimage.c:67 -#, fuzzy -msgid "set prefix directory" -msgstr "Defina o diretório padrão de saída" - -#. TRANSLATORS: "memdisk" here isn't an identifier, it can be translated. -#. "embed" is a verb (command description). " -#: util/grub-mkimage.c:71 -msgid "" -"embed FILE as a memdisk image\n" -"Implies `-p (memdisk)/boot/grub' and overrides any prefix supplied " -"previously, but the prefix itself can be overridden by later options" -msgstr "" - -#: util/grub-mkimage.c:74 -#, fuzzy -msgid "embed FILE as a device tree (DTB)\n" -msgstr "Usar uma imagem como imagem de fundo de tela." - -#: util/grub-mkimage.c:76 -msgid "embed FILE as an early config" -msgstr "" - -#. TRANSLATORS: NOTE is a name of segment. -#: util/grub-mkimage.c:80 -msgid "add NOTE segment for CHRP IEEE1275" -msgstr "" - -#: util/grub-mkimage.c:81 -msgid "output a generated image to FILE [default=stdout]" -msgstr "" - -#: util/grub-mkimage.c:82 -msgid "FORMAT" -msgstr "FORMATO" - -#: util/grub-mkimage.c:100 util/grub-mkstandalone.c:62 -msgid "generate an image in FORMAT" -msgstr "gerar uma imagem no FORMATO" - -#: util/grub-mkimage.c:101 util/grub-mkstandalone.c:63 -msgid "available formats:" -msgstr "formatos disponíveis:" - -#: util/grub-mkimage.c:152 util/grub-mkstandalone.c:96 -#, c-format -msgid "unknown target format %s\n" -msgstr "formato de destino desconhecido %s\n" - -#: util/grub-mkimage.c:242 -msgid "[OPTION]... [MODULES]" -msgstr "[OPÇÃO]... [MÓDULOS]" - -#: util/grub-mkimage.c:243 -msgid "Make a bootable image of GRUB." -msgstr "Fazer uma imagem inicializável do GRUB." - -#: util/grub-mkimage.c:273 util/grub-mkstandalone.c:309 -msgid "Target format not specified (use the -O option)." -msgstr "Formato de destino não especificado (use a opção -O)." - -#: util/grub-mkimage.c:282 -#, fuzzy -msgid "Prefix not specified (use the -p option)." -msgstr "Formato de destino não especificado (use a opção -O)." - -#: util/grub-mkimage.c:318 util/setup.c:793 -#, fuzzy, c-format -msgid "cannot close `%s': %s" -msgstr "não foi possível abrir '%s': %s" - -#: util/grub-mkimagexx.c:2191 -#, c-format -msgid "" -"`%s' is miscompiled: its start address is 0x%llx instead of 0x%llx: ld.gold " -"bug?" -msgstr "" - -#: util/grub-mklayout.c:53 -msgid "set input filename. Default is STDIN" -msgstr "" - -#. TRANSLATORS: scan identifier is keyboard key symbolic name. -#: util/grub-mklayout.c:307 -#, c-format -msgid "Unknown keyboard scan identifier %s\n" -msgstr "" - -#. TRANSLATORS: scan code is keyboard key numeric identifier. -#: util/grub-mklayout.c:390 util/grub-mklayout.c:418 -#, c-format -msgid "Unknown keyboard scan code 0x%02x\n" -msgstr "" - -#. TRANSLATORS: this error is triggered when input doesn't contain any -#. key descriptions. -#: util/grub-mklayout.c:438 -msgid "ERROR: no valid keyboard layout found. Check the input.\n" -msgstr "" - -#. TRANSLATORS: "one" is a shortcut for "keyboard layout". -#: util/grub-mklayout.c:478 -msgid "Generate GRUB keyboard layout from Linux console one." -msgstr "" - -#: util/grub-mknetdir.c:47 -msgid "root directory of TFTP server" -msgstr "diretório raiz do servidor TFTP" - -#: util/grub-mknetdir.c:49 -#, fuzzy -msgid "relative subdirectory on network server" -msgstr "A porta de rede em que o servidor está esperando pedidos." - -#: util/grub-mknetdir.c:88 -msgid "" -"Prepares GRUB network boot images at net_directory/subdir assuming " -"net_directory being TFTP root." -msgstr "" - -#: util/grub-mknetdir.c:146 -#, fuzzy, c-format -msgid "unsupported platform %s" -msgstr "plataforma não suportada %s\n" - -#. TRANSLATORS: First %s is replaced by platform name. Second one by filename. -#: util/grub-mknetdir.c:165 -#, c-format -msgid "" -"Netboot directory for %s created. Configure your DHCP server to point to %s\n" -msgstr "" - -#: util/grub-mkpasswd-pbkdf2.c:46 -#, fuzzy -msgid "Number of PBKDF2 iterations" -msgstr "1: Iterações até bailout" - -#: util/grub-mkpasswd-pbkdf2.c:47 -#, fuzzy -msgid "Length of generated hash" -msgstr "Hash regenerado" - -#: util/grub-mkpasswd-pbkdf2.c:48 -#, fuzzy -msgid "Length of salt" -msgstr "Counta|salt" - -#: util/grub-mkpasswd-pbkdf2.c:87 -#, fuzzy -msgid "Generate PBKDF2 password hash." -msgstr "Método hash de senha LDAP" - -#: util/grub-mkpasswd-pbkdf2.c:144 util/grub-mkpasswd-pbkdf2.c:151 -#, fuzzy -msgid "failure to read password" -msgstr "Por favor, digite a senha para ler o documento:" - -#: util/grub-mkpasswd-pbkdf2.c:146 -#, fuzzy -msgid "Reenter password: " -msgstr "Digite novamente a senha: " - -#: util/grub-mkpasswd-pbkdf2.c:160 -#, fuzzy -msgid "passwords don't match" -msgstr "As senhas não conferem" - -#: util/grub-mkpasswd-pbkdf2.c:169 -msgid "couldn't retrieve random data for salt" -msgstr "" - -#: util/grub-mkpasswd-pbkdf2.c:184 -#, fuzzy, c-format -msgid "cryptographic error number %d" -msgstr "Número de erro desconhecido: %1." - -#: util/grub-mkpasswd-pbkdf2.c:203 -#, fuzzy, c-format -msgid "PBKDF2 hash of your password is %s\n" -msgstr "é baseada na sua senha" - -#: util/grub-mkrelpath.c:67 -msgid "No path is specified.\n" -msgstr "Nenhum caminho está especificado.\n" - -#: util/grub-mkrelpath.c:78 -msgid "PATH" -msgstr "CAMINHO" - -#: util/grub-mkrelpath.c:79 -msgid "Transform a system filename into GRUB one." -msgstr "Transformar um nome de arquivo do sistema em um do GRUB." - -#: util/grub-mkrescue.c:100 -msgid "save ROM images in DIR [optional]" -msgstr "salvar imagens ROM no DIRETÓRIO [opcional]" - -#. TRANSLATORS: xorriso is a program for creating ISOs and burning CDs. -#: util/grub-mkrescue.c:103 -msgid "use FILE as xorriso [optional]" -msgstr "usar ARQUIVO como xorriso [opcional]" - -#: util/grub-mkrescue.c:109 -msgid "use STRING as product name" -msgstr "" - -#: util/grub-mkrescue.c:111 -msgid "" -"enable sparc boot. Disables HFS+, APM, ARCS and boot as disk image for i386-" -"pc" -msgstr "" - -#: util/grub-mkrescue.c:112 -msgid "" -"enable ARCS (big-endian mips machines, mostly SGI) boot. Disables HFS+, APM, " -"sparc64 and boot as disk image for i386-pc" -msgstr "" - -#. TRANSLATORS: it generates one single image which is bootable through any method. -#: util/grub-mkrescue.c:125 -msgid "Make GRUB CD-ROM, disk, pendrive and floppy bootable image." -msgstr "" - -#: util/grub-mkrescue.c:130 -#, c-format -msgid "" -"Generates a bootable CD/USB/floppy image. Arguments other than options to " -"this program are passed to xorriso, and indicate source files, source " -"directories, or any of the mkisofs options listed by the output of `%s'." -msgstr "" - -#: util/grub-mkrescue.c:134 -msgid "Option -- switches to native xorriso command mode." -msgstr "" - -#: util/grub-mkrescue.c:135 -msgid "Mail xorriso support requests to ." -msgstr "" -"Envie um e-mail de pedido de suporte do xorriso para ." - -#: util/grub-mkrescue.c:221 util/grub-mkstandalone.c:114 -#, fuzzy -msgid "[OPTION] SOURCE..." -msgstr "Uso: %s [OPÇÃO] ORIGEM...\\n" - -#: util/grub-mkrescue.c:257 util/grub-mkrescue.c:300 util/grub-mkrescue.c:588 -#, fuzzy, c-format -msgid "enabling %s support ..." -msgstr "Habilitando o suporte a %s...\\n" - -#: util/grub-mkrescue.c:486 -#, fuzzy -msgid "xorriso not found" -msgstr "%s: não encontrado" - -#: util/grub-mkrescue.c:623 -msgid "" -"Your xorriso doesn't support `--grub2-boot-info'. Some features are " -"disabled. Please use xorriso 1.2.9 or later." -msgstr "" - -#: util/grub-mkrescue.c:650 -msgid "" -"Your xorriso doesn't support `--grub2-boot-info'. Your core image is too " -"big. Boot as disk is disabled. Please use xorriso 1.2.9 or later." -msgstr "" - -#: util/grub-mkstandalone.c:115 -msgid "" -"Generate a standalone image (containing all modules) in the selected format" -msgstr "" - -#: util/grub-mkstandalone.c:115 -msgid "Graft point syntax (E.g. /boot/grub/grub.cfg=./grub.cfg) is accepted" -msgstr "" - -#: util/grub-mount.c:552 -#, fuzzy -msgid "IMAGE1 [IMAGE2 ...] MOUNTPOINT" -msgstr "" -"A desmontagem de \"%1\" falhou.\n" -"%2" - -#: util/grub-mount.c:575 -#, fuzzy -msgid "need an image and mountpoint" -msgstr "Imagem e rótulo personalizados:" - -#: util/grub-probe.c:731 -msgid "given argument is a system device, not a path" -msgstr "" - -#: util/grub-probe.c:736 -msgid "separate items in output using ASCII NUL characters" -msgstr "" - -#: util/grub-probe.c:754 -#, fuzzy, c-format -msgid "[default=%s]" -msgstr "instalar FONTES [padrão=%s]" - -#: util/grub-probe.c:756 -#, fuzzy -msgid "print TARGET" -msgstr "DESTINO" - -#: util/grub-probe.c:757 -#, fuzzy -msgid "available targets:" -msgstr "formatos disponíveis:" - -#: util/grub-probe.c:839 -msgid "[OPTION]... [PATH|DEVICE]" -msgstr "[OPÇÃO]... [CAMINHO|DISPOSITIVO]" - -#: util/grub-probe.c:840 -msgid "" -"Probe device information for a given path (or device, if the -d option is " -"given)." -msgstr "" - -#: util/grub-render-label.c:60 -msgid "read text from FILE." -msgstr "ler texto do ARQUIVO." - -#: util/grub-render-label.c:62 -msgid "use COLOR for text" -msgstr "usar COR para texto" - -#: util/grub-render-label.c:64 -msgid "use COLOR for background" -msgstr "" - -#. TRANSLATORS: The result is always stored to file and -#. never shown directly, so don't use "show" as synonym for render. Use "create" if -#. "render" doesn't translate directly. -#: util/grub-render-label.c:69 -msgid "set the label to render" -msgstr "" - -#: util/grub-render-label.c:73 -msgid "use FILE as font (PF2)." -msgstr "usar ARQUIVO como fonte (PF2)." - -#. TRANSLATORS: This file takes a text and creates a graphical representation of it, -#. putting the result into .disk_label file. The result is always stored to file and -#. never shown directly, so don't use "show" as synonym for render. Use "create" if -#. "render" doesn't translate directly. -#: util/grub-render-label.c:136 -msgid "Render Apple .disk_label." -msgstr "" - -#: util/grub-render-label.c:158 util/grub-syslinux2cfg.c:169 -#, fuzzy -msgid "Missing arguments\n" -msgstr "%s: Excesso de argumentos\n" - -#: util/grub-script-check.c:87 -msgid "[PATH]" -msgstr "[CAMINHO]" - -#: util/grub-script-check.c:88 -msgid "Checks GRUB script configuration file for syntax errors." -msgstr "" - -#: util/grub-script-check.c:207 -#, fuzzy, c-format -msgid "Syntax error at line %u\n" -msgstr "Erro de sintaxe na linha" - -#: util/grub-script-check.c:212 -#, c-format -msgid "Script `%s' contains no commands and will do nothing\n" -msgstr "" - -#: util/grub-setup.c:79 -#, fuzzy, c-format -msgid "use FILE as the boot image [default=%s]" -msgstr "Usar este arquivo como imagem de fundo" - -#: util/grub-setup.c:81 -#, fuzzy, c-format -msgid "use FILE as the core image [default=%s]" -msgstr "Usar este arquivo como imagem de fundo" - -#: util/grub-setup.c:210 -#, fuzzy -msgid "No device is specified.\n" -msgstr "O dispositivo especificado é inválido." - -#: util/grub-setup.c:224 -msgid "" -"Set up images to boot from DEVICE.\n" -"\n" -"You should not normally run this program directly. Use grub-install instead." -msgstr "" - -#: util/grub-setup.c:228 -msgid "DEVICE must be an OS device (e.g. /dev/sda)." -msgstr "" - -#: util/grub-setup.c:297 -#, fuzzy, c-format -msgid "Invalid device `%s'.\n" -msgstr "dispositivo inválido" - -#: util/grub-syslinux2cfg.c:64 -msgid "root directory as it will be seen on runtime [default=/]." -msgstr "" - -#: util/grub-syslinux2cfg.c:69 -msgid "" -"current directory of syslinux as it will be seen on runtime [default is " -"parent directory of input file]." -msgstr "" - -#: util/grub-syslinux2cfg.c:74 -msgid "write output to FILE [default=stdout]." -msgstr "" - -#: util/grub-syslinux2cfg.c:148 -msgid "Transform syslinux config into GRUB one." -msgstr "Transformar a configuração do syslinux em uma do GRUB." - -#: util/mkimage.c:688 util/mkimage.c:717 util/mkimage.c:734 -#, fuzzy -msgid "cannot compress the kernel image" -msgstr "Não foi possível criar a imagem ISO %1." - -#: util/mkimage.c:766 util/mkimage.c:1077 -#, fuzzy, c-format -msgid "unknown compression %d" -msgstr "compressão desconhecida %d\n" - -#: util/mkimage.c:1088 -#, fuzzy -msgid "Decompressor is too big" -msgstr "A imagem é muito grande!" - -#: util/mkimage.c:1133 -#, fuzzy, c-format -msgid "core image is too big (0x%x > 0x%x)" -msgstr "A imagem é muito grande para o segmento de memória compartilhado" - -#: util/mkimage.c:1140 -#, fuzzy, c-format -msgid "kernel image is too big (0x%x > 0x%x)" -msgstr "A imagem é muito grande para o segmento de memória compartilhado" - -#: util/mkimage.c:1220 util/mkimage.c:1501 -#, fuzzy, c-format -msgid "diskboot.img size must be %u bytes" -msgstr "O tamanho do volume deve ter pelo menos 10240 bytes." - -#: util/mkimage.c:1571 -msgid "" -"fwstart.img doesn't match the known good version. proceed at your own risk" -msgstr "" - -#: util/mkimage.c:1575 util/mkimage.c:1601 -msgid "firmware image is too big" -msgstr "imagem de firmware é muito grande" - -#: util/resolve.c:93 -#, c-format -msgid "invalid line format: %s" -msgstr "formato de linha inválido: %s" - -#: util/setup.c:167 -#, fuzzy -msgid "the first sector of the core file is not sector-aligned" -msgstr "" -"A partição %1 não está alinhada adequadamente (primeiro " -"setor: %2, módulo: %3)." - -#: util/setup.c:177 -#, fuzzy -msgid "non-sector-aligned data is found in the core file" -msgstr "dados não alinhados com o setor encontrados no arquivo de núcleo" - -#: util/setup.c:199 -#, fuzzy -msgid "the sectors of the core file are too fragmented" -msgstr "os setores do arquivo de núcleo estão fragmentados demais" - -#: util/setup.c:280 -#, fuzzy, c-format -msgid "the size of `%s' is not %u" -msgstr "'<1>' não é um diretório!" - -#: util/setup.c:290 -#, fuzzy, c-format -msgid "the size of `%s' is too small" -msgstr "O inteiro \"%s\" é muito grande ou pequeno" - -#: util/setup.c:428 -msgid "" -"Attempting to install GRUB to a disk with multiple partition labels or both " -"partition label and filesystem. This is not supported yet." -msgstr "" - -#: util/setup.c:441 -#, fuzzy, c-format -msgid "unable to identify a filesystem in %s; safety check can't be performed" -msgstr "" -"não foi possível identificar um sistema de arquivos em %s; a verificação de " -"segurança não pode ser feita" - -#. TRANSLATORS: Filesystem may reserve the space just GRUB isn't sure about it. -#: util/setup.c:445 -#, fuzzy, c-format -msgid "" -"%s appears to contain a %s filesystem which isn't known to reserve space for " -"DOS-style boot. Installing GRUB there could result in FILESYSTEM " -"DESTRUCTION if valuable data is overwritten by grub-setup (--skip-fs-probe " -"disables this check, use at your own risk)" -msgstr "" -"%s parece conter um sistema de arquivos %s que não se sabe se reserva espaço " -"para iniciar estilo DOS. Instalar o GRUB lá pode resultar na DESTRUIÇÃO DO " -"SISTEMA DE ARQUIVOS se dados valiosos forem sobrescritos pelo grub-setup (--" -"skip-fs-probe desativa esta verificação, use por sua conta e risco)" - -#. TRANSLATORS: Partition map may reserve the space just GRUB isn't sure about it. -#: util/setup.c:458 -#, c-format -msgid "" -"%s appears to contain a %s partition map which isn't known to reserve space " -"for DOS-style boot. Installing GRUB there could result in FILESYSTEM " -"DESTRUCTION if valuable data is overwritten by grub-setup (--skip-fs-probe " -"disables this check, use at your own risk)" -msgstr "" - -#: util/setup.c:465 -#, c-format -msgid "" -"%s appears to contain a %s partition map and LDM which isn't known to be a " -"safe combination. Installing GRUB there could result in FILESYSTEM " -"DESTRUCTION if valuable data is overwritten by grub-setup (--skip-fs-probe " -"disables this check, use at your own risk)" -msgstr "" - -#: util/setup.c:478 -msgid "" -"Attempting to install GRUB to a partitionless disk or to a partition. This " -"is a BAD idea." -msgstr "" - -#: util/setup.c:483 -msgid "" -"Attempting to install GRUB to a disk with multiple partition labels. This " -"is not supported yet." -msgstr "" - -#: util/setup.c:489 -#, c-format -msgid "Partition style `%s' doesn't support embedding" -msgstr "" - -#: util/setup.c:496 -#, fuzzy, c-format -msgid "File system `%s' doesn't support embedding" -msgstr "Ver informação de suporte aos sistemas de arquivos" - -#: util/setup.c:537 -#, fuzzy -msgid "Your embedding area is unusually small. core.img won't fit in it." -msgstr "" -"Sua área de embutidura está menor que de costume. O core.img não caberá nela." - -#: util/setup.c:559 util/setup.c:725 util/setup.c:844 -#, fuzzy -msgid "no terminator in the core image" -msgstr "" -"Nenhum vetor encontrado na imagem:\n" -"'%s'" - -#: util/setup.c:622 -#, fuzzy -msgid "core.img version mismatch" -msgstr "" -"Incompatibilidade na versão do KGame!\n" -"Versão esperada: %1\n" -"Versão recebida: %2\n" - -#: util/setup.c:675 -msgid "" -"embedding is not possible, but this is required for RAID and LVM install" -msgstr "" - -#: util/setup.c:682 -#, fuzzy, c-format -msgid "can't determine filesystem on %s" -msgstr "Aumentando o sistema de arquivos ISO 9660 no %1." - -#: util/setup.c:685 -#, fuzzy, c-format -msgid "filesystem `%s' doesn't support blocklists" -msgstr "O GPGME não tem suporte a OpenPGP: %s" - -#. TRANSLATORS: cross-disk refers to /boot being on one disk -#. but MBR on another. -#: util/setup.c:694 -msgid "embedding is not possible, but this is required for cross-disk install" -msgstr "" - -#: util/setup.c:700 -#, fuzzy -msgid "" -"Embedding is not possible. GRUB can only be installed in this setup by " -"using blocklists. However, blocklists are UNRELIABLE and their use is " -"discouraged." -msgstr "" -"Incorporação não permitida. O GRUB só pode ser instalado neste setup usando " -"blocklists. Porém. blocklists são INSTÃVEIS e seu uso não é aconselhado." - -#. TRANSLATORS: Here GRUB refuses to continue with blocklist install. -#: util/setup.c:705 -#, fuzzy -msgid "will not proceed with blocklists" -msgstr "Prosseguir com o relatório do erro" - -#: util/setup.c:817 util/setup.c:837 -#, fuzzy -msgid "blocklists are invalid" -msgstr "Chamada de procedimento incorreta." - -#: util/setup.c:847 -#, fuzzy -msgid "blocklists are incomplete" -msgstr "Chamada de procedimento incorreta." - -#~ msgid "%.*s: ARGP_HELP_FMT parameter must be positive" -#~ msgstr "%.*s: O parâmetro ARGP_HELP_FMT deve ser positivo" - -#~ msgid "%s: option '--%s' doesn't allow an argument\n" -#~ msgstr "%s: a opção \"--%s\" não permite um argumento\n" - -#~ msgid "%s: unrecognized option '--%s'\n" -#~ msgstr "%s: opção não reconhecida '--%s'\n" - -#~ msgid "%s: option '-W %s' doesn't allow an argument\n" -#~ msgstr "%s: a opção \"-W %s\" não permite um argumento\n" - -#~ msgid "%s: option '-W %s' requires an argument\n" -#~ msgstr "%s: a opção \"-W %s\" exige um argumento\n" - -#, fuzzy -#~ msgid "Usage: %s -o OUTPUT CKBMAP_ARGUMENTS...\\n" -#~ msgstr "" -#~ " Uso:\n" -#~ "\tzypper [--opções-globais] [--opções-do-comando] [argumentos]\n" - -#, fuzzy -#~ msgid "Make GRUB keyboard layout file." -#~ msgstr "" -#~ "Arquivo Editar a Disposição do Teclado..." -#~ "" - -#~ msgid "print this message and exit" -#~ msgstr "exibir esta mensagem de ajuda e sair" - -#~ msgid "print the version information and exit" -#~ msgstr "exibir a informação da versão e sair" - -#~ msgid "Report bugs to ." -#~ msgstr "Relate erros em ." - -#~ msgid "%s: option requires an argument -- `%s'\\n" -#~ msgstr "%s: a opção requer um argumento -- '%s'\\n" - -#~ msgid "Usage: %s [OPTION]\\n" -#~ msgstr "Uso: %s [OPÇÃO]\\n" - -#, fuzzy -#~ msgid "Generate a grub config file" -#~ msgstr "O arquivo de configuração \"%s\" está vazio" - -#~ msgid "Unrecognized option `%s'\\n" -#~ msgstr "Opção não reconhecida '%s'\\n" - -#~ msgid "%s: You must run this as root\\n" -#~ msgstr "%s: você deve executar isto como root\\n" - -#, fuzzy -#~ msgid "Generating grub configuration file ..." -#~ msgstr "O arquivo de configuração \"%s\" está vazio" - -#~ msgid "done" -#~ msgstr "concluído" - -#~ msgid "Warning:" -#~ msgstr "Aviso:" - -#~ msgid "Usage: %s [OPTION] MENU_ENTRY\\n" -#~ msgstr "Uso: %s [OPÇÃO] ENTRADA_DO_MENU\\n" - -#~ msgid "Set the default boot menu entry for GRUB, for the next boot only." -#~ msgstr "" -#~ "Definir a entrada do menu padrão para o GRUB, para a próxima " -#~ "inicialização apenas." - -#~ msgid "More than one menu entry?" -#~ msgstr "Mais de uma entrada do menu?" - -#~ msgid "Menu entry not specified." -#~ msgstr "Entrada do menu não especificada." - -#~ msgid "Set the default boot menu entry for GRUB." -#~ msgstr "Definir a entrada do menu padrão para o GRUB." - -#~ msgid "MENU_ENTRY is a number, a menu item title or a menu item identifier." -#~ msgstr "" -#~ "ENTRADA_DO_MENU é um número, um título de item do menu ou um " -#~ "identificador de item do menu." - -#~ msgid "Found theme: %s\\n" -#~ msgstr "Tema encontrado: %s\\n" - -#~ msgid "Found background: %s\\n" -#~ msgstr "Plano de fundo encontrado: %s\\n" - -#~ msgid "Unsupported image format" -#~ msgstr "Formato de imagem não suportado" - -#~ msgid "Found GNU Mach: %s" -#~ msgstr "GNU Mach encontrado: %s" - -#~ msgid "Found Hurd module: %s" -#~ msgstr "Módulo do Hurd encontrado: %s" - -#~ msgid "Some Hurd stuff found, but not enough to boot." -#~ msgstr "" -#~ "Algumas partes do Hurd encontrado, mas não o suficiente para inicializar." - -#~ msgid "%s, with Hurd %s (recovery mode)" -#~ msgstr "%s, com o Hurd %s (modo de recuperação)" - -#~ msgid "%s, with Hurd %s" -#~ msgstr "%s, com o Hurd %s" - -#~ msgid "" -#~ "Please don't use old title `%s' for GRUB_DEFAULT, use `%s' (for versions " -#~ "before 2.00) or `%s' (for 2.00 or later)" -#~ msgstr "" -#~ "Por favor, não use o título antigo '%s' para o GRUB_DEFAULT, use " -#~ "'%s' (para versões antes da 2.00) ou '%s' (para a 2.00 ou posterior)" - -#~ msgid "Loading GNU Mach ..." -#~ msgstr "Carregando o GNU Mach..." - -#~ msgid "Loading the Hurd ..." -#~ msgstr "Carregando o Hurd..." - -#~ msgid "Advanced options for %s" -#~ msgstr "Opções avançadas para %s" - -#~ msgid "Loading kernel of Illumos ..." -#~ msgstr "Carregando o kernel do Illumos..." - -#~ msgid "%s, with kFreeBSD %s (recovery mode)" -#~ msgstr "%s, com o kFreeBSD %s (modo de recuperação)" - -#~ msgid "%s, with kFreeBSD %s" -#~ msgstr "%s, com o kFreeBSD %s" - -#~ msgid "Loading kernel of FreeBSD %s ..." -#~ msgstr "Carregando o kernel do FreeBSD %s..." - -#~ msgid "Found kernel of FreeBSD: %s\\n" -#~ msgstr "Kernel do FreeBSD encontrado: %s\\n" - -#~ msgid "Found kernel module directory: %s\\n" -#~ msgstr "Diretório de módulos do kernel encontrado: %s\\n" - -#~ msgid "%s, with Linux %s (recovery mode)" -#~ msgstr "%s, com o Linux %s (modo de recuperação)" - -#~ msgid "%s, with Linux %s" -#~ msgstr "%s, com o Linux %s" - -#~ msgid "Loading Linux %s ..." -#~ msgstr "Carregando o Linux %s..." - -#~ msgid "Loading initial ramdisk ..." -#~ msgstr "Carregando o ramdisk inicial..." - -#~ msgid "Found linux image: %s\\n" -#~ msgstr "Imagem Linux encontrada: %s\\n" - -#~ msgid "Found initrd image: %s\\n" -#~ msgstr "Imagem initrd encontrada: %s\\n" - -#~ msgid "%s, with kernel %s (via %s, recovery mode)" -#~ msgstr "%s, com o kernel %s (via %s, modo de recuperação)" - -#~ msgid "%s, with kernel %s (via %s)" -#~ msgstr "%s, com o kernel %s (via %s)" - -#~ msgid "Found NetBSD kernel: %s\\n" -#~ msgstr "Kernel NetBSD encontrado: %s\\n" - -#~ msgid "Windows Vista/7 (loader)" -#~ msgstr "Windows Vista/7 (carregador)" - -#~ msgid "Windows NT/2000/XP (loader)" -#~ msgstr "Windows NT/2000/XP (carregador)" - -#~ msgid "Found %s on %s (%s)\\n" -#~ msgstr "%s encontrado em %s (%s)\\n" - -#~ msgid "(32-bit)" -#~ msgstr "(32 bits)" - -#~ msgid "(64-bit)" -#~ msgstr "(64 bits)" - -#~ msgid "(on %s)" -#~ msgstr "(em %s)" - -#~ msgid "%s, with Xen %s and Linux %s (recovery mode)" -#~ msgstr "%s, com o Xen %s e Linux %s (modo de recuperação)" - -#~ msgid "%s, with Xen %s and Linux %s" -#~ msgstr "%s, com o Xen %s e Linux %s" - -#~ msgid "Loading Xen %s ..." -#~ msgstr "Carregando o XEN %s..." - -#~ msgid "Xen hypervisor, version %s" -#~ msgstr "Hipervisor xen, versão %s" - -#~ msgid "Advanced options for %s (with Xen hypervisor)" -#~ msgstr "Opções avançadas para %s (com o hipervisor Xen)" - -#~ msgid "Found %s on %s\\n" -#~ msgstr "Encontrado %s em %s\\n" - -#~ msgid "%s is not yet supported by grub-mkconfig.\\n" -#~ msgstr "%s ainda não está suportado pelo grub-mkconfig.\\n" - -#~ msgid "Address range not associated with RAM" -#~ msgstr "Faixa de endereços não associados com a RAM" - -#, fuzzy -#~ msgid "Packed pixel " -#~ msgstr "Modo de pixel" - -#, fuzzy -#~ msgid "save only the ASCII bitmaps" -#~ msgstr "Tamanho de saída (salvar apenas)" - -#, fuzzy -#~ msgid "create width summary file" -#~ msgstr "Salvar Resumo em Arquivo" - -#, fuzzy -#~ msgid "failed to read the first sector of the core image" -#~ msgstr "falha na leitura do primeiro setor da imagem de núcleo" - -#~ msgid "use GRUB images from DIR. Takes precedence over target" -#~ msgstr "" -#~ "usar as imagens do GRUB a partir do DIRETÓRIO. Tem precedência sobre o " -#~ "destino" - -#~ msgid "use FILE as grub-mkimage" -#~ msgstr "usar ARQUIVO como grub-mkimage" - -#~ msgid "use FILE as grub-mkrelpath" -#~ msgstr "usar ARQUIVO como grub-mkrelpath" - -#~ msgid "use FILE as grub-probe" -#~ msgstr "usar ARQUIVO como grub-probe" - -#~ msgid "INSTALL_DEVICE must be system device filename." -#~ msgstr "" -#~ "o DISPOSITIVO_DE_INSTALAÇÃO deve ser o nome do arquivo do dispositivo do " -#~ "sistema." - -#~ msgid "" -#~ "%s copies GRUB images into %s, and uses grub-setup\n" -#~ "to install grub into the boot sector.\\n" -#~ msgstr "" -#~ "%s copia as imagens do GRUB em %s e usa o grub-setup\n" -#~ "para instalar o grub no setor de inicialização.\\n" - -#, fuzzy -#~ msgid "Auto-detection of a filesystem of %s failed.\\n" -#~ msgstr "%1 porque o serviço de IP automático falhou" - -#~ msgid "Try with --recheck." -#~ msgstr "Tente com --recheck." - -#~ msgid "`%s' failed.\\n" -#~ msgstr "`%s' falhou.\\n" - -#~ msgid "Generating grub.cfg ..." -#~ msgstr "Gerando grub.cfg..." diff --git a/thirdparty/grub-2.04/po/quot.sed b/thirdparty/grub-2.04/po/quot.sed deleted file mode 100644 index 0122c4631..000000000 --- a/thirdparty/grub-2.04/po/quot.sed +++ /dev/null @@ -1,6 +0,0 @@ -s/"\([^"]*\)"/“\1â€/g -s/`\([^`']*\)'/‘\1’/g -s/ '\([^`']*\)' / ‘\1’ /g -s/ '\([^`']*\)'$/ ‘\1’/g -s/^'\([^`']*\)' /‘\1’ /g -s/“â€/""/g diff --git a/thirdparty/grub-2.04/po/remove-potcdate.sin b/thirdparty/grub-2.04/po/remove-potcdate.sin deleted file mode 100644 index 2436c49e7..000000000 --- a/thirdparty/grub-2.04/po/remove-potcdate.sin +++ /dev/null @@ -1,19 +0,0 @@ -# Sed script that remove the POT-Creation-Date line in the header entry -# from a POT file. -# -# The distinction between the first and the following occurrences of the -# pattern is achieved by looking at the hold space. -/^"POT-Creation-Date: .*"$/{ -x -# Test if the hold space is empty. -s/P/P/ -ta -# Yes it was empty. First occurrence. Remove the line. -g -d -bb -:a -# The hold space was nonempty. Following occurrences. Do nothing. -x -:b -} diff --git a/thirdparty/grub-2.04/po/ro.gmo b/thirdparty/grub-2.04/po/ro.gmo deleted file mode 100644 index d385e1bb14d0ca29fe26c7173740b985bf80e5ac..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5328 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 diff --git a/thirdparty/grub-2.04/po/ro.po b/thirdparty/grub-2.04/po/ro.po deleted file mode 100644 index 5abf2d597..000000000 --- a/thirdparty/grub-2.04/po/ro.po +++ /dev/null @@ -1,6422 +0,0 @@ -# SOME DESCRIPTIVE TITLE. -# Copyright (C) 2019 Free Software Foundation, Inc. -# This file is distributed under the same license as the grub package. -# Daniel Șerbănescu , 2019. -# -msgid "" -msgstr "" -"Project-Id-Version: grub 2.04-pre1\n" -"Report-Msgid-Bugs-To: bug-grub@gnu.org\n" -"POT-Creation-Date: 2019-07-04 16:09+0200\n" -"PO-Revision-Date: 2019-04-16 19:25+0200\n" -"Last-Translator: Daniel Șerbănescu \n" -"Language-Team: Romanian \n" -"Language: ro\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Bugs: Report translation errors to the Language-Team address.\n" -"X-Generator: Poedit 2.2.1\n" -"Plural-Forms: nplurals=3; plural=(n==1 ? 0 : n==0 || (n!=1 && n%100>=1 && n" -"%100<=19) ? 1 : 2);\n" - -#: grub-core/bus/usb/serial/ftdi.c:145 grub-core/bus/usb/serial/pl2303.c:158 -#: grub-core/term/ieee1275/escc.c:169 grub-core/term/ns8250.c:202 -msgid "unsupported serial port speed" -msgstr "" - -#: grub-core/bus/usb/serial/ftdi.c:151 grub-core/bus/usb/serial/pl2303.c:164 -#: grub-core/term/efi/serial.c:116 grub-core/term/ieee1275/escc.c:175 -#: grub-core/term/ns8250.c:208 grub-core/term/serial.c:227 -#: grub-core/term/serial.c:243 -msgid "unsupported serial port parity" -msgstr "" - -#: grub-core/bus/usb/serial/ftdi.c:157 grub-core/bus/usb/serial/pl2303.c:170 -#: grub-core/term/efi/serial.c:122 grub-core/term/ieee1275/escc.c:181 -#: grub-core/term/ns8250.c:213 grub-core/term/serial.c:267 -msgid "unsupported serial port stop bits number" -msgstr "" - -#: grub-core/bus/usb/serial/ftdi.c:161 grub-core/bus/usb/serial/pl2303.c:174 -#: grub-core/term/efi/serial.c:126 grub-core/term/ieee1275/escc.c:185 -#: grub-core/term/ns8250.c:217 -msgid "unsupported serial port word length" -msgstr "" - -#: grub-core/commands/acpi.c:42 -msgid "Don't load host tables specified by comma-separated list." -msgstr "" - -#: grub-core/commands/acpi.c:45 -msgid "Load only tables specified by comma-separated list." -msgstr "" - -#: grub-core/commands/acpi.c:46 -msgid "Export version 1 tables to the OS." -msgstr "" - -#: grub-core/commands/acpi.c:47 -msgid "Export version 2 and version 3 tables to the OS." -msgstr "" - -#: grub-core/commands/acpi.c:48 -msgid "Set OEMID of RSDP, XSDT and RSDT." -msgstr "" - -#: grub-core/commands/acpi.c:50 -msgid "Set OEMTABLE ID of RSDP, XSDT and RSDT." -msgstr "" - -#: grub-core/commands/acpi.c:52 -msgid "Set OEMTABLE revision of RSDP, XSDT and RSDT." -msgstr "" - -#: grub-core/commands/acpi.c:54 -msgid "Set creator field of RSDP, XSDT and RSDT." -msgstr "" - -#: grub-core/commands/acpi.c:56 -msgid "Set creator revision of RSDP, XSDT and RSDT." -msgstr "" - -#. TRANSLATORS: "hangs" here is a noun, not a verb. -#: grub-core/commands/acpi.c:58 -msgid "" -"Don't update EBDA. May fix failures or hangs on some BIOSes but makes it " -"ineffective with OS not receiving RSDP from GRUB." -msgstr "" - -#: grub-core/commands/acpi.c:650 grub-core/commands/acpi.c:667 -#: grub-core/commands/i386/pc/play.c:105 grub-core/commands/keylayouts.c:230 -#: grub-core/commands/keylayouts.c:245 grub-core/commands/keylayouts.c:263 -#: grub-core/commands/verifiers.c:156 grub-core/efiemu/loadcore.c:350 -#: grub-core/kern/elf.c:117 grub-core/kern/elfXX.c:29 -#: grub-core/kern/elfXX.c:156 grub-core/loader/arm/linux.c:319 -#: grub-core/loader/arm64/linux.c:330 grub-core/loader/arm64/xen_boot.c:356 -#: grub-core/loader/efi/chainloader.c:276 -#: grub-core/loader/efi/chainloader.c:297 -#: grub-core/loader/efi/chainloader.c:329 grub-core/loader/efi/fdt.c:138 -#: grub-core/loader/i386/bsd.c:1276 grub-core/loader/i386/bsd.c:2116 -#: grub-core/loader/i386/bsdXX.c:20 grub-core/loader/i386/bsdXX.c:36 -#: grub-core/loader/i386/bsdXX.c:63 grub-core/loader/i386/bsdXX.c:357 -#: grub-core/loader/i386/bsdXX.c:376 grub-core/loader/i386/bsdXX.c:519 -#: grub-core/loader/i386/bsdXX.c:535 grub-core/loader/i386/bsdXX.c:615 -#: grub-core/loader/i386/bsdXX.c:638 -#: grub-core/loader/i386/coreboot/chainloader.c:112 -#: grub-core/loader/i386/coreboot/chainloader.c:148 -#: grub-core/loader/i386/coreboot/chainloader.c:170 -#: grub-core/loader/i386/linux.c:667 grub-core/loader/i386/linux.c:788 -#: grub-core/loader/i386/linux.c:1005 grub-core/loader/i386/multiboot_mbi.c:171 -#: grub-core/loader/i386/pc/chainloader.c:202 -#: grub-core/loader/i386/pc/linux.c:149 grub-core/loader/i386/pc/linux.c:320 -#: grub-core/loader/i386/pc/linux.c:362 grub-core/loader/i386/pc/plan9.c:457 -#: grub-core/loader/i386/pc/plan9.c:550 grub-core/loader/i386/pc/plan9.c:566 -#: grub-core/loader/i386/xen.c:934 grub-core/loader/i386/xen_file.c:72 -#: grub-core/loader/i386/xen_fileXX.c:43 grub-core/loader/i386/xen_fileXX.c:186 -#: grub-core/loader/i386/xen_fileXX.c:339 grub-core/loader/ia64/efi/linux.c:423 -#: grub-core/loader/ia64/efi/linux.c:471 grub-core/loader/linux.c:286 -#: grub-core/loader/macho.c:84 grub-core/loader/macho.c:109 -#: grub-core/loader/machoXX.c:33 grub-core/loader/machoXX.c:46 -#: grub-core/loader/machoXX.c:76 grub-core/loader/machoXX.c:116 -#: grub-core/loader/machoXX.c:131 grub-core/loader/machoXX.c:147 -#: grub-core/loader/machoXX.c:196 grub-core/loader/machoXX.c:317 -#: grub-core/loader/multiboot.c:434 grub-core/loader/multiboot_elfxx.c:171 -#: grub-core/loader/multiboot_elfxx.c:234 -#: grub-core/loader/multiboot_elfxx.c:278 grub-core/loader/multiboot_mbi2.c:129 -#: grub-core/loader/xnu.c:737 grub-core/loader/xnu.c:795 -#: grub-core/loader/xnu.c:816 grub-core/loader/xnu.c:871 -#: grub-core/loader/xnu.c:914 grub-core/loader/xnu.c:952 -#: grub-core/loader/xnu_resume.c:68 grub-core/loader/xnu_resume.c:153 -#: grub-core/loader/xnu_resume.c:165 util/grub-mkimagexx.c:2288 -#, c-format -msgid "premature end of file %s" -msgstr "" - -#: grub-core/commands/acpi.c:779 -msgid "" -"[-1|-2] [--exclude=TABLE1,TABLE2|--load-only=TABLE1,TABLE2] FILE1 [FILE2] " -"[...]" -msgstr "" - -#: grub-core/commands/acpi.c:782 -msgid "Load host ACPI tables and tables specified by arguments." -msgstr "" - -#: grub-core/commands/acpihalt.c:368 grub-core/kern/err.c:110 -#, c-format -msgid "error: %s.\n" -msgstr "" - -#: grub-core/commands/acpihalt.c:368 grub-core/kern/emu/misc.c:95 -#: grub-core/kern/emu/misc.c:105 grub-core/kern/emu/misc.c:134 -#: grub-core/kern/emu/mm.c:34 grub-core/kern/emu/mm.c:62 -#: grub-core/kern/mm.c:374 grub-core/lib/relocator.c:1282 -#: grub-core/lib/relocator.c:1439 grub-core/lib/relocator.c:1538 -#: grub-core/loader/arm/linux.c:259 grub-core/loader/arm64/linux.c:265 -#: grub-core/loader/arm64/linux.c:321 grub-core/loader/arm64/linux.c:340 -#: grub-core/loader/arm64/xen_boot.c:344 grub-core/loader/arm64/xen_boot.c:367 -#: grub-core/loader/efi/chainloader.c:289 grub-core/osdep/unix/dl.c:48 -#: grub-core/osdep/windows/dl.c:46 grub-core/script/lexer.c:156 -#: grub-core/script/lexer.c:182 -msgid "out of memory" -msgstr "" - -#: grub-core/commands/acpihalt.c:374 grub-core/disk/cryptodisk.c:587 -#: grub-core/disk/cryptodisk.c:632 grub-core/kern/emu/hostdisk.c:307 -#: grub-core/kern/emu/hostfs.c:149 grub-core/kern/emu/misc.c:200 -#: grub-core/osdep/linux/ofpath.c:195 grub-core/osdep/linux/ofpath.c:521 -#: grub-core/osdep/linux/ofpath.c:534 util/glue-efi.c:80 util/glue-efi.c:94 -#: util/grub-editenv.c:155 util/grub-fstest.c:577 -#: util/grub-install-common.c:943 util/grub-mkrescue.c:634 -#: util/grub-mkrescue.c:888 util/grub-mount.c:506 util/grub-render-label.c:176 -#: util/misc.c:95 util/setup.c:814 util/setup.c:833 -#, c-format -msgid "cannot read `%s': %s" -msgstr "" - -#. TRANSLATORS: It's computer shutdown using ACPI, not disabling ACPI. -#: grub-core/commands/acpihalt.c:452 -msgid "ACPI shutdown failed" -msgstr "" - -#: grub-core/commands/arc/lsdev.c:51 -msgid "List devices." -msgstr "" - -#: grub-core/commands/blocklist.c:122 grub-core/commands/cat.c:57 -#: grub-core/commands/configfile.c:35 grub-core/commands/efi/loadbios.c:168 -#: grub-core/commands/file.c:159 grub-core/commands/hexdump.c:47 -#: grub-core/commands/legacycfg.c:209 grub-core/commands/legacycfg.c:315 -#: grub-core/commands/minicmd.c:44 grub-core/commands/syslinuxcfg.c:146 -#: grub-core/commands/testload.c:58 grub-core/commands/testspeed.c:52 -#: grub-core/disk/loopback.c:93 grub-core/efiemu/main.c:293 -#: grub-core/font/font_cmd.c:32 grub-core/kern/emu/hostdisk.c:519 -#: grub-core/loader/arm/linux.c:364 grub-core/loader/arm/linux.c:409 -#: grub-core/loader/arm/linux.c:472 grub-core/loader/arm64/linux.c:243 -#: grub-core/loader/arm64/linux.c:297 grub-core/loader/arm64/xen_boot.c:398 -#: grub-core/loader/arm64/xen_boot.c:411 grub-core/loader/arm64/xen_boot.c:462 -#: grub-core/loader/efi/chainloader.c:216 grub-core/loader/i386/bsd.c:1462 -#: grub-core/loader/i386/bsd.c:1807 grub-core/loader/i386/bsd.c:2085 -#: grub-core/loader/i386/coreboot/chainloader.c:438 -#: grub-core/loader/i386/linux.c:656 grub-core/loader/i386/linux.c:1041 -#: grub-core/loader/i386/pc/chainloader.c:290 -#: grub-core/loader/i386/pc/freedos.c:105 grub-core/loader/i386/pc/linux.c:138 -#: grub-core/loader/i386/pc/linux.c:400 grub-core/loader/i386/pc/ntldr.c:85 -#: grub-core/loader/i386/pc/plan9.c:409 -#: grub-core/loader/i386/pc/pxechainloader.c:94 -#: grub-core/loader/i386/pc/truecrypt.c:96 grub-core/loader/i386/xen.c:641 -#: grub-core/loader/i386/xen.c:768 grub-core/loader/i386/xen.c:844 -#: grub-core/loader/i386/xen.c:854 grub-core/loader/i386/xnu.c:488 -#: grub-core/loader/ia64/efi/linux.c:459 grub-core/loader/ia64/efi/linux.c:539 -#: grub-core/loader/mips/linux.c:238 grub-core/loader/mips/linux.c:429 -#: grub-core/loader/multiboot.c:322 grub-core/loader/multiboot.c:374 -#: grub-core/loader/multiboot.c:384 -#: grub-core/loader/powerpc/ieee1275/linux.c:269 -#: grub-core/loader/powerpc/ieee1275/linux.c:341 -#: grub-core/loader/sparc64/ieee1275/linux.c:305 -#: grub-core/loader/sparc64/ieee1275/linux.c:381 grub-core/loader/xnu.c:351 -#: grub-core/loader/xnu.c:460 grub-core/loader/xnu.c:778 -#: grub-core/loader/xnu.c:892 grub-core/loader/xnu.c:1277 -#: grub-core/loader/xnu.c:1427 grub-core/loader/xnu.c:1453 -#: grub-core/video/readers/jpeg.c:812 grub-core/video/readers/png.c:1123 -msgid "filename expected" -msgstr "" - -#. TRANSLATORS: "embed" is a verb (command description). " -#: grub-core/commands/blocklist.c:154 grub-core/commands/cat.c:163 -#: grub-core/commands/configfile.c:65 grub-core/commands/configfile.c:68 -#: grub-core/commands/configfile.c:74 grub-core/commands/configfile.c:80 -#: grub-core/commands/configfile.c:86 grub-core/commands/hashsum.c:34 -#: grub-core/commands/legacycfg.c:834 grub-core/commands/legacycfg.c:841 -#: grub-core/commands/legacycfg.c:846 grub-core/commands/legacycfg.c:851 -#: grub-core/commands/macbless.c:222 grub-core/commands/minicmd.c:198 -#: grub-core/commands/syslinuxcfg.c:186 grub-core/commands/syslinuxcfg.c:194 -#: grub-core/commands/syslinuxcfg.c:200 grub-core/commands/syslinuxcfg.c:206 -#: grub-core/commands/testload.c:163 grub-core/efiemu/main.c:312 -#: grub-core/kern/emu/main.c:100 grub-core/kern/emu/main.c:103 -#: grub-core/loader/i386/bsd.c:2137 grub-core/loader/i386/bsd.c:2140 -#: grub-core/loader/i386/bsd.c:2143 -#: grub-core/loader/i386/coreboot/chainloader.c:505 -#: grub-core/loader/ia64/efi/linux.c:594 include/grub/util/install.h:32 -#: include/grub/util/install.h:64 util/grub-glue-efi.c:52 -#: util/grub-glue-efi.c:54 util/grub-glue-efi.c:56 util/grub-install.c:254 -#: util/grub-install.c:301 util/grub-mkfont.c:936 util/grub-mkimage.c:68 -#: util/grub-mkimage.c:74 util/grub-mkimage.c:76 util/grub-mkimage.c:78 -#: util/grub-mkimage.c:81 util/grub-mklayout.c:52 util/grub-mklayout.c:54 -#: util/grub-mkrescue.c:97 util/grub-mkrescue.c:101 util/grub-mkrescue.c:104 -#: util/grub-mkrescue.c:105 util/grub-mkrescue.c:106 -#: util/grub-mkstandalone.c:47 util/grub-mkstandalone.c:49 -#: util/grub-probe.c:732 util/grub-render-label.c:59 -#: util/grub-render-label.c:70 util/grub-render-label.c:72 util/grub-setup.c:78 -#: util/grub-setup.c:80 util/grub-setup.c:84 util/grub-syslinux2cfg.c:74 -#: util/grub-syslinux2cfg.c:147 -msgid "FILE" -msgstr "" - -#: grub-core/commands/blocklist.c:154 -msgid "Print a block list." -msgstr "" - -#: grub-core/commands/boot.c:147 grub-core/commands/legacycfg.c:533 -#: grub-core/commands/legacycfg.c:574 grub-core/loader/arm64/linux.c:250 -#: grub-core/loader/i386/bsd.c:1799 grub-core/loader/i386/bsd.c:1900 -#: grub-core/loader/i386/bsd.c:2007 grub-core/loader/i386/bsd.c:2040 -#: grub-core/loader/i386/bsd.c:2089 grub-core/loader/i386/linux.c:1047 -#: grub-core/loader/i386/pc/linux.c:406 grub-core/loader/i386/xen.c:775 -#: grub-core/loader/i386/xen.c:859 grub-core/loader/ia64/efi/linux.c:545 -#: grub-core/loader/mips/linux.c:432 grub-core/loader/multiboot.c:388 -#: grub-core/loader/powerpc/ieee1275/linux.c:347 -#: grub-core/loader/sparc64/ieee1275/linux.c:387 grub-core/loader/xnu.c:572 -#: grub-core/loader/xnu.c:665 grub-core/loader/xnu.c:781 -#: grub-core/loader/xnu.c:895 grub-core/loader/xnu.c:1091 -#: grub-core/loader/xnu.c:1258 grub-core/loader/xnu.c:1289 -#: grub-core/loader/xnu.c:1430 -msgid "you need to load the kernel first" -msgstr "" - -#: grub-core/commands/boot.c:189 -msgid "Boot an operating system." -msgstr "" - -#: grub-core/commands/boottime.c:36 -#: grub-core/commands/i386/coreboot/cb_timestamps.c:108 -msgid "No boot time statistics is available\n" -msgstr "" - -#: grub-core/commands/boottime.c:59 -msgid "Show boot time statistics." -msgstr "" - -#: grub-core/commands/cacheinfo.c:40 -#, c-format -msgid "Disk cache statistics: hits = %lu (%lu.%02lu%%), misses = %lu\n" -msgstr "" - -#: grub-core/commands/cacheinfo.c:45 -msgid "No disk cache statistics available\n" -msgstr "" - -#: grub-core/commands/cacheinfo.c:56 -msgid "Get disk cache info." -msgstr "" - -#: grub-core/commands/cat.c:33 -msgid "Accept DOS-style CR/NL line endings." -msgstr "" - -#: grub-core/commands/cat.c:163 grub-core/commands/minicmd.c:198 -msgid "Show the contents of a file." -msgstr "" - -#: grub-core/commands/cmp.c:43 grub-core/commands/i386/pc/drivemap.c:239 -#: grub-core/commands/i386/wrmsr.c:60 grub-core/commands/iorw.c:85 -#: grub-core/commands/memrw.c:84 grub-core/commands/password.c:75 -#: grub-core/commands/password_pbkdf2.c:94 grub-core/commands/pgp.c:826 -#: grub-core/commands/regexp.c:113 grub-core/mmap/mmap.c:517 -#: grub-core/net/dns.c:639 -msgid "two arguments expected" -msgstr "" - -#: grub-core/commands/cmp.c:45 -#, c-format -msgid "Compare file `%s' with `%s':\n" -msgstr "" - -#: grub-core/commands/cmp.c:54 -#, c-format -msgid "Files differ in size: %llu [%s], %llu [%s]\n" -msgstr "" - -#: grub-core/commands/cmp.c:81 -#, c-format -msgid "Files differ at the offset %llu: 0x%x [%s], 0x%x [%s]\n" -msgstr "" - -#. TRANSLATORS: it's always exactly 2 files. -#: grub-core/commands/cmp.c:93 -msgid "The files are identical.\n" -msgstr "" - -#: grub-core/commands/cmp.c:113 -msgid "FILE1 FILE2" -msgstr "" - -#: grub-core/commands/cmp.c:113 -msgid "Compare two files." -msgstr "" - -#: grub-core/commands/configfile.c:65 -msgid "Load another config file." -msgstr "" - -#: grub-core/commands/configfile.c:69 grub-core/commands/configfile.c:87 -msgid "Load another config file without changing context." -msgstr "" - -#: grub-core/commands/configfile.c:75 -msgid "" -"Load another config file without changing context but take only menu entries." -msgstr "" - -#: grub-core/commands/configfile.c:81 -msgid "Load another config file but take only menu entries." -msgstr "" - -#: grub-core/commands/date.c:141 -msgid "[[year-]month-day] [hour:minute[:second]]" -msgstr "" - -#: grub-core/commands/date.c:142 -msgid "Display/set current datetime." -msgstr "" - -#: grub-core/commands/echo.c:30 -msgid "Do not output the trailing newline." -msgstr "" - -#: grub-core/commands/echo.c:31 -msgid "Enable interpretation of backslash escapes." -msgstr "" - -#: grub-core/commands/echo.c:134 -msgid "[-e|-n] STRING" -msgstr "" - -#: grub-core/commands/echo.c:134 -msgid "Display a line of text." -msgstr "" - -#: grub-core/commands/efi/efifwsetup.c:82 -msgid "Reboot into firmware setup menu." -msgstr "" - -#: grub-core/commands/efi/fixvideo.c:107 -msgid "Fix video problem." -msgstr "" - -#: grub-core/commands/efi/loadbios.c:52 -msgid "ROM image is present." -msgstr "" - -#: grub-core/commands/efi/loadbios.c:70 -msgid "Can't enable ROM area." -msgstr "" - -#: grub-core/commands/efi/loadbios.c:209 -msgid "" -"Create BIOS-like structures for backward compatibility with existing OS." -msgstr "" - -#: grub-core/commands/efi/loadbios.c:214 -msgid "BIOS_DUMP [INT10_DUMP]" -msgstr "" - -#: grub-core/commands/efi/loadbios.c:215 -msgid "Load BIOS dump." -msgstr "" - -#: grub-core/commands/efi/shim_lock.c:76 -#, c-format -msgid "module cannot be loaded in UEFI secure boot mode: %s" -msgstr "" - -#: grub-core/commands/efi/shim_lock.c:98 -#, c-format -msgid "cannot boot due to dangerous module in memory: %s" -msgstr "" - -#: grub-core/commands/efi/shim_lock.c:116 -msgid "bad shim signature" -msgstr "" - -#: grub-core/commands/efi/tpm.c:149 grub-core/commands/efi/tpm.c:189 -#: grub-core/commands/efi/tpm.c:256 grub-core/commands/efi/tpm.c:306 -msgid "Command failed" -msgstr "" - -#: grub-core/commands/efi/tpm.c:151 grub-core/commands/efi/tpm.c:191 -#: grub-core/commands/efi/tpm.c:258 grub-core/commands/efi/tpm.c:308 -msgid "Invalid parameter" -msgstr "" - -#: grub-core/commands/efi/tpm.c:154 grub-core/commands/efi/tpm.c:194 -#: grub-core/commands/efi/tpm.c:261 grub-core/commands/efi/tpm.c:311 -msgid "Output buffer too small" -msgstr "" - -#: grub-core/commands/efi/tpm.c:156 grub-core/commands/efi/tpm.c:196 -#: grub-core/commands/efi/tpm.c:263 grub-core/commands/efi/tpm.c:313 -msgid "TPM unavailable" -msgstr "" - -#: grub-core/commands/efi/tpm.c:158 grub-core/commands/efi/tpm.c:198 -#: grub-core/commands/efi/tpm.c:265 grub-core/commands/efi/tpm.c:315 -msgid "Unknown TPM error" -msgstr "" - -#: grub-core/commands/efi/tpm.c:240 grub-core/commands/efi/tpm.c:288 -msgid "cannot allocate TPM event buffer" -msgstr "" - -#: grub-core/commands/eval.c:63 -msgid "STRING ..." -msgstr "" - -#: grub-core/commands/eval.c:64 -msgid "Evaluate arguments as GRUB commands" -msgstr "" - -#: grub-core/commands/file.c:41 -msgid "Check if FILE can be booted as i386 PAE Xen unprivileged guest kernel" -msgstr "" - -#: grub-core/commands/file.c:44 -msgid "Check if FILE can be booted as x86_64 Xen unprivileged guest kernel" -msgstr "" - -#: grub-core/commands/file.c:46 -msgid "Check if FILE can be used as Xen x86 privileged guest kernel" -msgstr "" - -#: grub-core/commands/file.c:48 -msgid "Check if FILE can be used as x86 multiboot kernel" -msgstr "" - -#: grub-core/commands/file.c:50 -msgid "Check if FILE can be used as x86 multiboot2 kernel" -msgstr "" - -#: grub-core/commands/file.c:52 -msgid "Check if FILE is ARM Linux" -msgstr "" - -#: grub-core/commands/file.c:54 -msgid "Check if FILE is ARM64 Linux" -msgstr "" - -#: grub-core/commands/file.c:56 -msgid "Check if FILE is IA64 Linux" -msgstr "" - -#: grub-core/commands/file.c:58 -msgid "Check if FILE is MIPS Linux" -msgstr "" - -#: grub-core/commands/file.c:60 -msgid "Check if FILE is MIPSEL Linux" -msgstr "" - -#: grub-core/commands/file.c:62 -msgid "Check if FILE is SPARC64 Linux" -msgstr "" - -#: grub-core/commands/file.c:64 -msgid "Check if FILE is POWERPC Linux" -msgstr "" - -#: grub-core/commands/file.c:66 -msgid "Check if FILE is x86 Linux" -msgstr "" - -#: grub-core/commands/file.c:68 -msgid "Check if FILE is x86 Linux supporting 32-bit protocol" -msgstr "" - -#: grub-core/commands/file.c:70 -msgid "Check if FILE is x86 kFreeBSD" -msgstr "" - -#: grub-core/commands/file.c:72 -msgid "Check if FILE is i386 kFreeBSD" -msgstr "" - -#: grub-core/commands/file.c:74 -msgid "Check if FILE is x86_64 kFreeBSD" -msgstr "" - -#: grub-core/commands/file.c:77 -msgid "Check if FILE is x86 kNetBSD" -msgstr "" - -#: grub-core/commands/file.c:79 -msgid "Check if FILE is i386 kNetBSD" -msgstr "" - -#: grub-core/commands/file.c:81 -msgid "Check if FILE is x86_64 kNetBSD" -msgstr "" - -#: grub-core/commands/file.c:84 -msgid "Check if FILE is i386 EFI file" -msgstr "" - -#: grub-core/commands/file.c:86 -msgid "Check if FILE is x86_64 EFI file" -msgstr "" - -#: grub-core/commands/file.c:88 -msgid "Check if FILE is IA64 EFI file" -msgstr "" - -#: grub-core/commands/file.c:90 -msgid "Check if FILE is ARM64 EFI file" -msgstr "" - -#: grub-core/commands/file.c:92 -msgid "Check if FILE is ARM EFI file" -msgstr "" - -#: grub-core/commands/file.c:94 -msgid "Check if FILE is RISC-V 32bit EFI file" -msgstr "" - -#: grub-core/commands/file.c:96 -msgid "Check if FILE is RISC-V 64bit EFI file" -msgstr "" - -#: grub-core/commands/file.c:98 -msgid "Check if FILE is hiberfil.sys in hibernated state" -msgstr "" - -#: grub-core/commands/file.c:100 -msgid "Check if FILE is x86_64 XNU (Mac OS X kernel)" -msgstr "" - -#: grub-core/commands/file.c:102 -msgid "Check if FILE is i386 XNU (Mac OS X kernel)" -msgstr "" - -#: grub-core/commands/file.c:104 -msgid "Check if FILE is XNU (Mac OS X kernel) hibernated image" -msgstr "" - -#: grub-core/commands/file.c:106 -msgid "Check if FILE is BIOS bootsector" -msgstr "" - -#. TRANSLATORS: it's a standalone boolean value, -#. opposite of "true". -#: grub-core/commands/file.c:675 grub-core/commands/i386/cmostest.c:63 -#: grub-core/commands/i386/cpuid.c:71 grub-core/commands/keystatus.c:83 -#: grub-core/commands/keystatus.c:87 grub-core/commands/keystatus.c:96 -#: grub-core/commands/test.c:436 grub-core/commands/true.c:39 -#: grub-core/script/execute.c:247 grub-core/script/execute.c:1039 -msgid "false" -msgstr "" - -#: grub-core/commands/file.c:684 -msgid "OPTIONS FILE" -msgstr "" - -#: grub-core/commands/file.c:685 -msgid "Check if FILE is of specified type." -msgstr "" - -#. TRANSLATORS: It means that the specified partition e.g. -#. hd0,msdos1=/dev/sda1 doesn't exist. -#: grub-core/commands/gptsync.c:140 grub-core/kern/disk.c:258 -msgid "no such partition" -msgstr "" - -#: grub-core/commands/gptsync.c:240 -#, c-format -msgid "New MBR is written to `%s'\n" -msgstr "" - -#: grub-core/commands/gptsync.c:252 -msgid "DEVICE [PARTITION[+/-[TYPE]]] ..." -msgstr "" - -#. TRANSLATORS: MBR type is one-byte partition -#. type id. -#: grub-core/commands/gptsync.c:255 -msgid "" -"Fill hybrid MBR of GPT drive DEVICE. Specified partitions will be a part of " -"hybrid MBR. Up to 3 partitions are allowed. TYPE is an MBR type. + means " -"that partition is active. Only one partition can be active." -msgstr "" - -#: grub-core/commands/halt.c:40 -msgid "" -"Halts the computer. This command does not work on all firmware " -"implementations." -msgstr "" - -#: grub-core/commands/hashsum.c:32 -msgid "Specify hash to use." -msgstr "" - -#: grub-core/commands/hashsum.c:32 -msgid "HASH" -msgstr "" - -#: grub-core/commands/hashsum.c:33 -msgid "Check hashes of files with hash list FILE." -msgstr "" - -#: grub-core/commands/hashsum.c:35 -msgid "Base directory for hash list." -msgstr "" - -#. TRANSLATORS: platform here isn't identifier. It can be translated. -#: grub-core/commands/hashsum.c:35 grub-core/commands/ls.c:150 -#: grub-core/commands/macbless.c:226 grub-core/commands/syslinuxcfg.c:51 -#: grub-core/commands/syslinuxcfg.c:54 grub-core/kern/emu/main.c:106 -#: include/grub/util/install.h:50 include/grub/util/install.h:53 -#: include/grub/util/install.h:56 include/grub/util/install.h:59 -#: util/grub-install.c:250 util/grub-install.c:252 util/grub-install.c:297 -#: util/grub-install.c:299 util/grub-mkimage.c:64 util/grub-mkimage.c:67 -#: util/grub-mknetdir.c:46 util/grub-mknetdir.c:48 util/grub-mkrescue.c:99 -#: util/grub-setup.c:82 util/grub-syslinux2cfg.c:63 util/grub-syslinux2cfg.c:65 -#: util/grub-syslinux2cfg.c:67 util/grub-syslinux2cfg.c:71 -msgid "DIR" -msgstr "" - -#: grub-core/commands/hashsum.c:37 -msgid "Don't stop after first error." -msgstr "" - -#: grub-core/commands/hashsum.c:38 -msgid "Uncompress file before checksumming." -msgstr "" - -#: grub-core/commands/hashsum.c:163 -#, c-format -msgid "%s: READ ERROR\n" -msgstr "" - -#: grub-core/commands/hashsum.c:177 -#, c-format -msgid "%s: HASH MISMATCH\n" -msgstr "" - -#: grub-core/commands/hashsum.c:188 -#, c-format -msgid "%s: OK\n" -msgstr "" - -#: grub-core/commands/hashsum.c:282 -msgid "-h HASH [-c FILE [-p PREFIX]] [FILE1 [FILE2 ...]]" -msgstr "" - -#. TRANSLATORS: "hash checksum" is just to -#. be a bit more precise, you can treat it as -#. just "hash". -#: grub-core/commands/hashsum.c:287 grub-core/commands/hashsum.c:292 -#: grub-core/commands/hashsum.c:297 grub-core/commands/hashsum.c:302 -#: grub-core/commands/hashsum.c:307 grub-core/commands/hashsum.c:313 -msgid "Compute or check hash checksum." -msgstr "" - -#: grub-core/commands/hashsum.c:290 grub-core/commands/hashsum.c:295 -#: grub-core/commands/hashsum.c:300 grub-core/commands/hashsum.c:305 -#: grub-core/commands/hashsum.c:311 -msgid "[-c FILE [-p PREFIX]] [FILE1 [FILE2 ...]]" -msgstr "" - -#: grub-core/commands/hdparm.c:33 -msgid "" -"Set Advanced Power Management\n" -"(1=low, ..., 254=high, 255=off)." -msgstr "" - -#: grub-core/commands/hdparm.c:36 -msgid "Display power mode." -msgstr "" - -#: grub-core/commands/hdparm.c:37 -msgid "Freeze ATA security settings until reset." -msgstr "" - -#: grub-core/commands/hdparm.c:39 -msgid "Display SMART health status." -msgstr "" - -#: grub-core/commands/hdparm.c:40 -msgid "" -"Set Automatic Acoustic Management\n" -"(0=off, 128=quiet, ..., 254=fast)." -msgstr "" - -#: grub-core/commands/hdparm.c:43 -msgid "" -"Set standby timeout\n" -"(0=off, 1=5s, 2=10s, ..., 240=20m, 241=30m, ...)." -msgstr "" - -#: grub-core/commands/hdparm.c:46 -msgid "Set drive to standby mode." -msgstr "" - -#: grub-core/commands/hdparm.c:47 -msgid "Set drive to sleep mode." -msgstr "" - -#: grub-core/commands/hdparm.c:48 -msgid "Print drive identity and settings." -msgstr "" - -#: grub-core/commands/hdparm.c:50 -msgid "Show raw contents of ATA IDENTIFY sector." -msgstr "" - -#: grub-core/commands/hdparm.c:52 -msgid "Disable/enable SMART (0/1)." -msgstr "" - -#: grub-core/commands/hdparm.c:53 -msgid "Do not print messages." -msgstr "" - -#: grub-core/commands/hdparm.c:286 grub-core/commands/i386/rdmsr.c:68 -#: grub-core/commands/iorw.c:47 grub-core/commands/legacycfg.c:760 -#: grub-core/commands/legacycfg.c:812 grub-core/commands/macbless.c:190 -#: grub-core/commands/memrw.c:47 grub-core/commands/pgp.c:738 -#: grub-core/commands/pgp.c:792 grub-core/commands/search.c:304 -#: grub-core/commands/search_wrap.c:179 grub-core/commands/setpci.c:243 -#: grub-core/commands/sleep.c:71 grub-core/fs/zfs/zfsinfo.c:279 -#: grub-core/fs/zfs/zfsinfo.c:358 grub-core/gettext/gettext.c:492 -#: grub-core/kern/corecmd.c:65 grub-core/kern/corecmd.c:79 -#: grub-core/mmap/mmap.c:430 grub-core/net/dns.c:713 grub-core/net/dns.c:745 -#: grub-core/net/net.c:694 grub-core/net/net.c:1052 -#: grub-core/normal/context.c:194 grub-core/script/execute.c:131 -#: grub-core/term/gfxterm_background.c:136 -msgid "one argument expected" -msgstr "" - -#: grub-core/commands/hdparm.c:440 -msgid "[OPTIONS] DISK" -msgstr "[OPÈšIUNI] DISC" - -#: grub-core/commands/hdparm.c:441 -msgid "Get/set ATA disk parameters." -msgstr "" - -#: grub-core/commands/help.c:132 grub-core/lib/arg.c:109 -#: grub-core/lib/gnulib/argp-help.c:1616 -msgid "Usage:" -msgstr "Utilizare:" - -#: grub-core/commands/help.c:146 -msgid "[PATTERN ...]" -msgstr "[MOSTRÄ‚...]" - -#: grub-core/commands/help.c:147 -msgid "Show a help message." -msgstr "" - -#: grub-core/commands/hexdump.c:31 -msgid "Skip offset bytes from the beginning of file." -msgstr "" - -#: grub-core/commands/hexdump.c:33 -msgid "Read only LENGTH bytes." -msgstr "" - -#: grub-core/commands/hexdump.c:125 -msgid "[OPTIONS] FILE_OR_DEVICE" -msgstr "[OPÈšIUNI] FIȘIER_SAU_DISPOZITIV" - -#: grub-core/commands/hexdump.c:126 -msgid "Show raw contents of a file or memory." -msgstr "" - -#: grub-core/commands/i386/cmosdump.c:58 -msgid "Show raw dump of the CMOS contents." -msgstr "" - -#: grub-core/commands/i386/cmostest.c:108 -#: grub-core/commands/i386/cmostest.c:111 -#: grub-core/commands/i386/cmostest.c:114 -msgid "BYTE:BIT" -msgstr "OCTET:BIT" - -#: grub-core/commands/i386/cmostest.c:109 -msgid "Test bit at BYTE:BIT in CMOS." -msgstr "" - -#: grub-core/commands/i386/cmostest.c:112 -msgid "Clear bit at BYTE:BIT in CMOS." -msgstr "" - -#. TRANSLATORS: A bit may be either set (1) or clear (0). -#: grub-core/commands/i386/cmostest.c:116 -msgid "Set bit at BYTE:BIT in CMOS." -msgstr "" - -#: grub-core/commands/i386/coreboot/cb_timestamps.c:120 -msgid "Show coreboot boot time statistics." -msgstr "" - -#: grub-core/commands/i386/coreboot/cbls.c:137 -msgid "List coreboot tables." -msgstr "" - -#. TRANSLATORS: "(default)" at the end means that this option is used if -#. no argument is specified. -#: grub-core/commands/i386/cpuid.c:36 -msgid "Check if CPU supports 64-bit (long) mode (default)." -msgstr "" - -#: grub-core/commands/i386/cpuid.c:37 -msgid "Check if CPU supports Physical Address Extension." -msgstr "" - -#: grub-core/commands/i386/cpuid.c:119 -msgid "Check for CPU features." -msgstr "" - -#. TRANSLATORS: In this file "mapping" refers to a change GRUB makes so if -#. your language doesn't have an equivalent of "mapping" you can -#. use the word like "rerouting". -#. -#: grub-core/commands/i386/pc/drivemap.c:43 -msgid "Show the current mappings." -msgstr "" - -#: grub-core/commands/i386/pc/drivemap.c:44 -msgid "Reset all mappings to the default values." -msgstr "" - -#: grub-core/commands/i386/pc/drivemap.c:45 -msgid "Perform both direct and reverse mappings." -msgstr "" - -#: grub-core/commands/i386/pc/drivemap.c:184 -msgid "No drives have been remapped" -msgstr "" - -#. TRANSLATORS: This is the header of mapping list. -#. On the left is how OS will see the disks and -#. on the right current GRUB vision. -#: grub-core/commands/i386/pc/drivemap.c:191 -msgid "OS disk #num ------> GRUB/BIOS device" -msgstr "" - -#: grub-core/commands/i386/pc/drivemap.c:413 -msgid "-l | -r | [-s] grubdev osdisk." -msgstr "" - -#: grub-core/commands/i386/pc/drivemap.c:414 -msgid "Manage the BIOS drive mappings." -msgstr "" - -#: grub-core/commands/i386/pc/halt.c:31 -msgid "Do not use APM to halt the computer." -msgstr "" - -#: grub-core/commands/i386/pc/halt.c:119 -msgid "Halt the system, if possible using APM." -msgstr "" - -#: grub-core/commands/i386/pc/lsapm.c:75 -msgid "no APM found" -msgstr "" - -#: grub-core/commands/i386/pc/lsapm.c:77 -#, c-format -msgid "" -"Version %u.%u\n" -"32-bit CS = 0x%x, len = 0x%x, offset = 0x%x\n" -"16-bit CS = 0x%x, len = 0x%x\n" -"DS = 0x%x, len = 0x%x\n" -msgstr "" - -#: grub-core/commands/i386/pc/lsapm.c:86 -msgid "16-bit protected interface supported\n" -msgstr "" - -#: grub-core/commands/i386/pc/lsapm.c:87 -msgid "16-bit protected interface unsupported\n" -msgstr "" - -#: grub-core/commands/i386/pc/lsapm.c:89 -msgid "32-bit protected interface supported\n" -msgstr "" - -#: grub-core/commands/i386/pc/lsapm.c:90 -msgid "32-bit protected interface unsupported\n" -msgstr "" - -#: grub-core/commands/i386/pc/lsapm.c:92 -msgid "CPU Idle slows down processor\n" -msgstr "" - -#: grub-core/commands/i386/pc/lsapm.c:93 -msgid "CPU Idle doesn't slow down processor\n" -msgstr "" - -#: grub-core/commands/i386/pc/lsapm.c:95 -msgid "APM disabled\n" -msgstr "" - -#: grub-core/commands/i386/pc/lsapm.c:95 -msgid "APM enabled\n" -msgstr "" - -#: grub-core/commands/i386/pc/lsapm.c:97 -msgid "APM disengaged\n" -msgstr "" - -#: grub-core/commands/i386/pc/lsapm.c:97 -msgid "APM engaged\n" -msgstr "" - -#: grub-core/commands/i386/pc/lsapm.c:107 -msgid "Show APM information." -msgstr "" - -#. TRANSLATORS: It's musical notes, not the notes -#. you take. Play command expects arguments which can -#. be either a filename or tempo+notes. -#. This error happens if none is specified. -#: grub-core/commands/i386/pc/play.c:88 -msgid "filename or tempo and notes expected" -msgstr "" - -#: grub-core/commands/i386/pc/play.c:113 grub-core/commands/i386/pc/play.c:144 -#, c-format -msgid "Invalid tempo in %s" -msgstr "" - -#: grub-core/commands/i386/pc/play.c:151 grub-core/commands/macbless.c:172 -#: grub-core/fs/archelp.c:260 grub-core/fs/bfs.c:621 grub-core/fs/bfs.c:704 -#: grub-core/fs/btrfs.c:1726 grub-core/fs/btrfs.c:1755 -#: grub-core/fs/btrfs.c:1799 grub-core/fs/btrfs.c:1882 -#: grub-core/fs/btrfs.c:1906 grub-core/fs/fshelp.c:257 grub-core/fs/jfs.c:696 -#: grub-core/fs/minix.c:426 grub-core/fs/ufs.c:544 grub-core/fs/zfs/zfs.c:2083 -#: grub-core/fs/zfs/zfs.c:2095 grub-core/fs/zfs/zfs.c:2301 -#: grub-core/net/http.c:120 -#, c-format -msgid "file `%s' not found" -msgstr "" - -#: grub-core/commands/i386/pc/play.c:162 grub-core/commands/i386/pc/play.c:171 -#: grub-core/kern/misc.c:419 grub-core/script/execute.c:138 -#: grub-core/script/execute.c:244 -msgid "unrecognized number" -msgstr "" - -#: grub-core/commands/i386/pc/play.c:190 -msgid "FILE | TEMPO [PITCH1 DURATION1] [PITCH2 DURATION2] ... " -msgstr "" - -#: grub-core/commands/i386/pc/play.c:191 -msgid "Play a tune." -msgstr "" - -#: grub-core/commands/i386/pc/sendkey.c:39 -msgid "set numlock mode" -msgstr "" - -#: grub-core/commands/i386/pc/sendkey.c:40 -msgid "set capslock mode" -msgstr "" - -#: grub-core/commands/i386/pc/sendkey.c:41 -msgid "set scrolllock mode" -msgstr "" - -#: grub-core/commands/i386/pc/sendkey.c:42 -msgid "set insert mode" -msgstr "" - -#: grub-core/commands/i386/pc/sendkey.c:43 -msgid "set pause mode" -msgstr "" - -#: grub-core/commands/i386/pc/sendkey.c:44 -msgid "press left shift" -msgstr "" - -#: grub-core/commands/i386/pc/sendkey.c:45 -msgid "press right shift" -msgstr "" - -#: grub-core/commands/i386/pc/sendkey.c:46 -msgid "press SysRq" -msgstr "" - -#: grub-core/commands/i386/pc/sendkey.c:47 -msgid "press NumLock key" -msgstr "" - -#: grub-core/commands/i386/pc/sendkey.c:48 -msgid "press CapsLock key" -msgstr "" - -#: grub-core/commands/i386/pc/sendkey.c:49 -msgid "press ScrollLock key" -msgstr "" - -#: grub-core/commands/i386/pc/sendkey.c:50 -msgid "press Insert key" -msgstr "" - -#: grub-core/commands/i386/pc/sendkey.c:51 -msgid "press left alt" -msgstr "" - -#: grub-core/commands/i386/pc/sendkey.c:52 -msgid "press right alt" -msgstr "" - -#: grub-core/commands/i386/pc/sendkey.c:53 -msgid "press left ctrl" -msgstr "" - -#: grub-core/commands/i386/pc/sendkey.c:54 -msgid "press right ctrl" -msgstr "" - -#: grub-core/commands/i386/pc/sendkey.c:55 -msgid "don't update LED state" -msgstr "" - -#: grub-core/commands/i386/pc/sendkey.c:372 -msgid "[KEYSTROKE1] [KEYSTROKE2] ..." -msgstr "" - -#. TRANSLATORS: It can emulate multiple -#. keypresses. -#: grub-core/commands/i386/pc/sendkey.c:375 -msgid "Emulate a keystroke sequence" -msgstr "" - -#: grub-core/commands/i386/rdmsr.c:37 grub-core/commands/iorw.c:34 -#: grub-core/commands/memrw.c:33 grub-core/commands/setpci.c:73 -msgid "Save read value into variable VARNAME." -msgstr "" - -#: grub-core/commands/i386/rdmsr.c:38 grub-core/commands/iorw.c:35 -#: grub-core/commands/memrw.c:34 grub-core/commands/probe.c:40 -#: grub-core/commands/search_wrap.c:40 grub-core/commands/setpci.c:74 -#: grub-core/commands/tr.c:32 -msgid "VARNAME" -msgstr "" - -#: grub-core/commands/i386/rdmsr.c:55 grub-core/commands/i386/rdmsr.c:60 -#: grub-core/commands/i386/rdmsr.c:65 grub-core/commands/i386/wrmsr.c:47 -#: grub-core/commands/i386/wrmsr.c:52 grub-core/commands/i386/wrmsr.c:57 -msgid "unsupported instruction" -msgstr "" - -#: grub-core/commands/i386/rdmsr.c:77 grub-core/commands/i386/wrmsr.c:69 -#: grub-core/commands/i386/wrmsr.c:77 grub-core/net/dns.c:727 -msgid "invalid argument" -msgstr "" - -#: grub-core/commands/i386/rdmsr.c:94 grub-core/commands/memrw.c:125 -#: grub-core/commands/memrw.c:129 grub-core/commands/memrw.c:133 -msgid "ADDR" -msgstr "" - -#: grub-core/commands/i386/rdmsr.c:95 -msgid "Read a CPU model specific register." -msgstr "" - -#: grub-core/commands/i386/wrmsr.c:86 -msgid "ADDR VALUE" -msgstr "" - -#: grub-core/commands/i386/wrmsr.c:87 -msgid "Write a value to a CPU model specific register." -msgstr "" - -#: grub-core/commands/ieee1275/suspend.c:34 -msgid "Run `go' to resume GRUB." -msgstr "" - -#: grub-core/commands/ieee1275/suspend.c:45 -msgid "Return to IEEE1275 prompt." -msgstr "" - -#: grub-core/commands/iorw.c:123 grub-core/commands/iorw.c:127 -#: grub-core/commands/iorw.c:131 grub-core/gdb/gdb.c:79 -msgid "PORT" -msgstr "" - -#: grub-core/commands/iorw.c:123 -msgid "Read 8-bit value from PORT." -msgstr "" - -#: grub-core/commands/iorw.c:127 -msgid "Read 16-bit value from PORT." -msgstr "" - -#: grub-core/commands/iorw.c:131 -msgid "Read 32-bit value from PORT." -msgstr "" - -#: grub-core/commands/iorw.c:135 grub-core/commands/iorw.c:139 -msgid "PORT VALUE [MASK]" -msgstr "" - -#: grub-core/commands/iorw.c:136 -msgid "Write 8-bit VALUE to PORT." -msgstr "" - -#: grub-core/commands/iorw.c:140 -msgid "Write 16-bit VALUE to PORT." -msgstr "" - -#: grub-core/commands/iorw.c:143 grub-core/commands/memrw.c:137 -#: grub-core/commands/memrw.c:141 grub-core/commands/memrw.c:145 -msgid "ADDR VALUE [MASK]" -msgstr "" - -#: grub-core/commands/iorw.c:144 -msgid "Write 32-bit VALUE to PORT." -msgstr "" - -#: grub-core/commands/keylayouts.c:215 grub-core/commands/loadenv.c:61 -#: grub-core/commands/nativedisk.c:189 grub-core/efiemu/main.c:235 -#: grub-core/font/font.c:428 grub-core/gfxmenu/gfxmenu.c:63 -#: grub-core/kern/device.c:42 grub-core/kern/dl.c:740 -#, c-format -msgid "variable `%s' isn't set" -msgstr "" - -#: grub-core/commands/keylayouts.c:301 -msgid "Load a keyboard layout." -msgstr "" - -#. TRANSLATORS: "Check" in a sense that if this key is pressed then -#. "true" is returned, otherwise "false". -#: grub-core/commands/keystatus.c:32 -msgid "Check Shift key." -msgstr "" - -#: grub-core/commands/keystatus.c:33 -msgid "Check Control key." -msgstr "" - -#: grub-core/commands/keystatus.c:34 -msgid "Check Alt key." -msgstr "" - -#. TRANSLATORS: there are 3 modifiers. -#: grub-core/commands/keystatus.c:106 -msgid "Check key modifier status." -msgstr "" - -#: grub-core/commands/legacycfg.c:512 grub-core/commands/legacycfg.c:526 -#: grub-core/commands/legacycfg.c:546 grub-core/commands/legacycfg.c:559 -#: grub-core/commands/time.c:43 grub-core/script/function.c:109 -#: util/grub-file.c:100 util/grub-fstest.c:57 util/grub-mount.c:69 -#, c-format -msgid "can't find command `%s'" -msgstr "" - -#: grub-core/commands/legacycfg.c:813 grub-core/normal/auth.c:225 -#: util/grub-mkpasswd-pbkdf2.c:139 -msgid "Enter password: " -msgstr "" - -#. TRANSLATORS: "legacy config" means -#. "config as used by grub-legacy". -#: grub-core/commands/legacycfg.c:837 -msgid "Parse legacy config in same context" -msgstr "" - -#: grub-core/commands/legacycfg.c:842 -msgid "Parse legacy config in new context" -msgstr "" - -#: grub-core/commands/legacycfg.c:847 -msgid "Parse legacy config in same context taking only menu entries" -msgstr "" - -#: grub-core/commands/legacycfg.c:852 -msgid "Parse legacy config in new context taking only menu entries" -msgstr "" - -#: grub-core/commands/legacycfg.c:856 -msgid "[--no-mem-option] [--type=TYPE] FILE [ARG ...]" -msgstr "" - -#: grub-core/commands/legacycfg.c:857 -msgid "Simulate grub-legacy `kernel' command" -msgstr "" - -#: grub-core/commands/legacycfg.c:861 grub-core/commands/legacycfg.c:865 -msgid "FILE [ARG ...]" -msgstr "" - -#: grub-core/commands/legacycfg.c:862 -msgid "Simulate grub-legacy `initrd' command" -msgstr "" - -#: grub-core/commands/legacycfg.c:866 -msgid "Simulate grub-legacy `modulenounzip' command" -msgstr "" - -#: grub-core/commands/legacycfg.c:870 grub-core/commands/legacycfg.c:875 -msgid "[--md5] PASSWD [FILE]" -msgstr "" - -#: grub-core/commands/legacycfg.c:871 -msgid "Simulate grub-legacy `password' command" -msgstr "" - -#: grub-core/commands/legacycfg.c:876 -msgid "Simulate grub-legacy `password' command in menu entry mode" -msgstr "" - -#. TRANSLATORS: This option is used to override default filename -#. for loading and storing environment. -#: grub-core/commands/loadenv.c:37 -msgid "Specify filename." -msgstr "" - -#: grub-core/commands/loadenv.c:39 -msgid "Skip signature-checking of the environment file." -msgstr "" - -#: grub-core/commands/loadenv.c:451 -msgid "[-f FILE] [-s|--skip-sig] [variable_name_to_whitelist] [...]" -msgstr "" - -#: grub-core/commands/loadenv.c:452 -msgid "Load variables from environment block file." -msgstr "" - -#: grub-core/commands/loadenv.c:455 -msgid "[-f FILE]" -msgstr "" - -#: grub-core/commands/loadenv.c:456 -msgid "List variables from environment block file." -msgstr "" - -#: grub-core/commands/loadenv.c:460 -msgid "[-f FILE] variable_name [...]" -msgstr "" - -#: grub-core/commands/loadenv.c:461 -msgid "Save variables to environment block file." -msgstr "" - -#: grub-core/commands/ls.c:40 -msgid "Show a long list with more detailed information." -msgstr "" - -#: grub-core/commands/ls.c:41 -msgid "Print sizes in a human readable format." -msgstr "" - -#: grub-core/commands/ls.c:42 -msgid "List all files." -msgstr "" - -#: grub-core/commands/ls.c:73 -msgid "Network protocols:" -msgstr "" - -#: grub-core/commands/ls.c:295 -msgid "[-l|-h|-a] [FILE ...]" -msgstr "" - -#: grub-core/commands/ls.c:296 -msgid "List devices and files." -msgstr "" - -#: grub-core/commands/lsacpi.c:255 -msgid "Show version 1 tables only." -msgstr "" - -#: grub-core/commands/lsacpi.c:256 -msgid "Show version 2 and version 3 tables only." -msgstr "" - -#: grub-core/commands/lsacpi.c:306 -msgid "Show ACPI information." -msgstr "" - -#: grub-core/commands/lsmmap.c:31 -msgid "available RAM" -msgstr "" - -#: grub-core/commands/lsmmap.c:32 -msgid "reserved RAM" -msgstr "" - -#. TRANSLATORS: this refers to memory where ACPI tables are stored -#. and which can be used by OS once it loads ACPI tables. -#: grub-core/commands/lsmmap.c:35 -msgid "ACPI reclaimable RAM" -msgstr "" - -#. TRANSLATORS: this refers to memory which ACPI-compliant OS -#. is required to save accross hibernations. -#: grub-core/commands/lsmmap.c:38 -msgid "ACPI non-volatile storage RAM" -msgstr "" - -#: grub-core/commands/lsmmap.c:39 -msgid "faulty RAM (BadRAM)" -msgstr "" - -#: grub-core/commands/lsmmap.c:40 -msgid "persistent RAM" -msgstr "" - -#: grub-core/commands/lsmmap.c:41 -msgid "persistent RAM (legacy)" -msgstr "" - -#: grub-core/commands/lsmmap.c:42 -msgid "RAM holding coreboot tables" -msgstr "" - -#: grub-core/commands/lsmmap.c:43 -msgid "RAM holding firmware code" -msgstr "" - -#: grub-core/commands/lsmmap.c:52 -#, c-format -msgid "base_addr = 0x%llx, length = 0x%llx, %s\n" -msgstr "" - -#: grub-core/commands/lsmmap.c:55 -#, c-format -msgid "base_addr = 0x%llx, length = 0x%llx, type = 0x%x\n" -msgstr "" - -#: grub-core/commands/lsmmap.c:79 -msgid "List memory map provided by firmware." -msgstr "" - -#: grub-core/commands/lspci.c:232 -msgid "List PCI devices." -msgstr "" - -#: grub-core/commands/macbless.c:224 -msgid "Bless FILE of HFS or HFS+ partition for intel macs." -msgstr "" - -#: grub-core/commands/macbless.c:228 -msgid "Bless DIR of HFS or HFS+ partition for PPC macs." -msgstr "" - -#: grub-core/commands/memrw.c:125 -msgid "Read 8-bit value from ADDR." -msgstr "" - -#: grub-core/commands/memrw.c:129 -msgid "Read 16-bit value from ADDR." -msgstr "" - -#: grub-core/commands/memrw.c:133 -msgid "Read 32-bit value from ADDR." -msgstr "" - -#: grub-core/commands/memrw.c:138 -msgid "Write 8-bit VALUE to ADDR." -msgstr "" - -#: grub-core/commands/memrw.c:142 -msgid "Write 16-bit VALUE to ADDR." -msgstr "" - -#: grub-core/commands/memrw.c:146 -msgid "Write 32-bit VALUE to ADDR." -msgstr "" - -#: grub-core/commands/menuentry.c:31 -msgid "Menu entry type." -msgstr "" - -#: grub-core/commands/menuentry.c:31 grub-core/commands/menuentry.c:38 -#: grub-core/commands/menuentry.c:39 grub-core/gettext/gettext.c:520 -#: util/grub-fstest.c:520 util/grub-install.c:291 util/grub-install.c:304 -#: util/grub-mknetdir.c:51 util/grub-mkrescue.c:109 util/grub-mkrescue.c:110 -#: util/grub-mount.c:453 util/grub-render-label.c:65 -msgid "STRING" -msgstr "" - -#: grub-core/commands/menuentry.c:33 -msgid "List of users allowed to boot this entry." -msgstr "" - -#: grub-core/commands/menuentry.c:33 -msgid "USERNAME[,USERNAME]" -msgstr "" - -#: grub-core/commands/menuentry.c:36 -msgid "Keyboard key to quickly boot this entry." -msgstr "" - -#: grub-core/commands/menuentry.c:36 -msgid "KEYBOARD_KEY" -msgstr "" - -#: grub-core/commands/menuentry.c:38 -msgid "Use STRING as menu entry body." -msgstr "" - -#: grub-core/commands/menuentry.c:39 -msgid "Menu entry identifier." -msgstr "" - -#. TRANSLATORS: menu entry can either be bootable by anyone or only by -#. handful of users. By default when security is active only superusers can -#. boot a given menu entry. With --unrestricted (this option) -#. anyone can boot it. -#: grub-core/commands/menuentry.c:44 -msgid "This entry can be booted by any user." -msgstr "" - -#: grub-core/commands/menuentry.c:323 grub-core/commands/menuentry.c:328 -#: grub-core/tests/test_blockarg.c:46 -msgid "BLOCK" -msgstr "" - -#: grub-core/commands/menuentry.c:323 -msgid "Define a menu entry." -msgstr "" - -#: grub-core/commands/menuentry.c:328 -msgid "Define a submenu." -msgstr "" - -#. TRANSLATORS: this is module list header. Name -#. is module name, Ref Count is a reference counter -#. (how many modules or open descriptors use it). -#. Dependencies are the other modules it uses. -#. -#: grub-core/commands/minicmd.c:162 -msgid "Name\tRef Count\tDependencies\n" -msgstr "" - -#: grub-core/commands/minicmd.c:201 -msgid "Show this message." -msgstr "" - -#: grub-core/commands/minicmd.c:204 -msgid "ADDR [SIZE]" -msgstr "" - -#: grub-core/commands/minicmd.c:204 -msgid "Show memory contents." -msgstr "" - -#: grub-core/commands/minicmd.c:207 grub-core/kern/corecmd.c:188 -#: util/grub-install.c:275 -msgid "MODULE" -msgstr "" - -#: grub-core/commands/minicmd.c:207 -msgid "Remove a module." -msgstr "" - -#: grub-core/commands/minicmd.c:210 -msgid "Show loaded modules." -msgstr "" - -#: grub-core/commands/minicmd.c:213 -msgid "Exit from GRUB." -msgstr "" - -#: grub-core/commands/mips/loongson/lsspd.c:42 -msgid "No CS5536 found" -msgstr "" - -#: grub-core/commands/mips/loongson/lsspd.c:45 -#, c-format -msgid "CS5536 at %d:%d.%d\n" -msgstr "" - -#. TRANSLATORS: System management bus is often used to access components like -#. RAM (info only, not data) or batteries. I/O space is where in memory -#. its ports are. -#: grub-core/commands/mips/loongson/lsspd.c:55 -#, c-format -msgid "System management bus controller I/O space is at 0x%x\n" -msgstr "" - -#. TRANSLATORS: it's shown in a report in a way -#. like number 1: ... number 2: ... -#. -#: grub-core/commands/mips/loongson/lsspd.c:66 -#, c-format -msgid "RAM slot number %d\n" -msgstr "" - -#: grub-core/commands/mips/loongson/lsspd.c:73 -#, c-format -msgid "Written SPD bytes: %d B.\n" -msgstr "" - -#: grub-core/commands/mips/loongson/lsspd.c:74 -#, c-format -msgid "Total flash size: %d B.\n" -msgstr "" - -#: grub-core/commands/mips/loongson/lsspd.c:79 -msgid "Memory type: DDR2." -msgstr "" - -#: grub-core/commands/mips/loongson/lsspd.c:83 -#, c-format -msgid "Part no: %s.\n" -msgstr "" - -#: grub-core/commands/mips/loongson/lsspd.c:86 -msgid "Memory type: Unknown." -msgstr "" - -#: grub-core/commands/mips/loongson/lsspd.c:97 -msgid "Print Memory information." -msgstr "" - -#: grub-core/commands/nativedisk.c:118 grub-core/commands/probe.c:118 -#: grub-core/commands/probe.c:124 util/grub-probe.c:450 -#, c-format -msgid "%s does not support UUIDs" -msgstr "" - -#: grub-core/commands/nativedisk.c:325 -msgid "[MODULE1 MODULE2 ...]" -msgstr "" - -#: grub-core/commands/nativedisk.c:326 -msgid "" -"Switch to native disk drivers. If no modules are specified default set (pata," -"ahci,usbms,ohci,uhci,ehci) is used" -msgstr "" - -#: grub-core/commands/parttool.c:40 -msgid "" -"Perform COMMANDS on partition.\n" -"Use `parttool PARTITION help' for the list of available commands." -msgstr "" - -#: grub-core/commands/parttool.c:123 -msgid "=VAL" -msgstr "" - -#: grub-core/commands/parttool.c:136 -#, c-format -msgid "Sorry, no parttool is available for %s\n" -msgstr "" - -#: grub-core/commands/parttool.c:288 grub-core/lib/arg.c:285 -#: grub-core/lib/arg.c:351 -#, c-format -msgid "unknown argument `%s'" -msgstr "" - -#: grub-core/commands/parttool.c:344 -msgid "PARTITION COMMANDS" -msgstr "" - -#: grub-core/commands/password.c:85 -msgid "USER PASSWORD" -msgstr "" - -#: grub-core/commands/password.c:86 -msgid "Set user password (plaintext). Unrecommended and insecure." -msgstr "" - -#. TRANSLATORS: it means that the string which -#. was supposed to be a password hash doesn't -#. have a correct format, not to password -#. mismatch. -#: grub-core/commands/password_pbkdf2.c:98 -#: grub-core/commands/password_pbkdf2.c:115 -#: grub-core/commands/password_pbkdf2.c:123 -#: grub-core/commands/password_pbkdf2.c:150 -#: grub-core/commands/password_pbkdf2.c:179 -msgid "invalid PBKDF2 password" -msgstr "" - -#: grub-core/commands/password_pbkdf2.c:202 -msgid "USER PBKDF2_PASSWORD" -msgstr "" - -#: grub-core/commands/password_pbkdf2.c:203 -msgid "Set user password (PBKDF2). " -msgstr "" - -#: grub-core/commands/pcidump.c:39 grub-core/commands/setpci.c:69 -msgid "Select device by vendor and device IDs." -msgstr "" - -#: grub-core/commands/pcidump.c:40 grub-core/commands/setpci.c:70 -msgid "[vendor]:[device]" -msgstr "" - -#: grub-core/commands/pcidump.c:41 grub-core/commands/setpci.c:71 -msgid "Select device by its position on the bus." -msgstr "" - -#: grub-core/commands/pcidump.c:42 grub-core/commands/setpci.c:72 -msgid "[bus]:[slot][.func]" -msgstr "" - -#: grub-core/commands/pcidump.c:109 grub-core/commands/pcidump.c:138 -#: grub-core/commands/setpci.c:183 grub-core/commands/setpci.c:214 -#: grub-core/fs/zfs/zfs.c:3794 grub-core/kern/emu/hostdisk.c:458 -#: grub-core/kern/emu/hostdisk.c:473 grub-core/kern/file.c:44 -#, c-format -msgid "missing `%c' symbol" -msgstr "" - -#: grub-core/commands/pcidump.c:168 -msgid "[-s POSITION] [-d DEVICE]" -msgstr "" - -#: grub-core/commands/pcidump.c:169 -msgid "Show raw dump of the PCI configuration space." -msgstr "" - -#: grub-core/commands/pgp.c:45 -msgid "Skip signature-checking of the public key file." -msgstr "" - -#. TRANSLATORS: it's about GNUPG signatures. -#: grub-core/commands/pgp.c:71 grub-core/commands/pgp.c:81 -#: grub-core/commands/pgp.c:86 grub-core/commands/pgp.c:96 -#: grub-core/commands/pgp.c:103 grub-core/commands/pgp.c:107 -#: grub-core/commands/pgp.c:114 grub-core/commands/pgp.c:119 -#: grub-core/commands/pgp.c:124 grub-core/commands/pgp.c:128 -#: grub-core/commands/pgp.c:268 grub-core/commands/pgp.c:276 -#: grub-core/commands/pgp.c:281 grub-core/commands/pgp.c:289 -#: grub-core/commands/pgp.c:320 grub-core/commands/pgp.c:327 -#: grub-core/commands/pgp.c:332 grub-core/commands/pgp.c:342 -#: grub-core/commands/pgp.c:468 grub-core/commands/pgp.c:471 -#: grub-core/commands/pgp.c:474 grub-core/commands/pgp.c:477 -#: grub-core/commands/pgp.c:484 grub-core/commands/pgp.c:490 -#: grub-core/commands/pgp.c:665 -msgid "bad signature" -msgstr "" - -#. TRANSLATORS: %08x is 32-bit key id. -#: grub-core/commands/pgp.c:636 grub-core/commands/pgp.c:812 -#, c-format -msgid "public key %08x not found" -msgstr "" - -#: grub-core/commands/pgp.c:651 grub-core/disk/diskfilter.c:772 -#: grub-core/disk/diskfilter.c:782 grub-core/fs/ntfs.c:404 -#: grub-core/fs/zfs/zfs.c:1933 grub-core/normal/menu.c:428 -#, c-format -msgid "module `%s' isn't loaded" -msgstr "" - -#: grub-core/commands/pgp.c:994 -msgid "[-s|--skip-sig] FILE SIGNATURE_FILE [PUBKEY_FILE]" -msgstr "" - -#: grub-core/commands/pgp.c:995 -msgid "Verify detached signature." -msgstr "" - -#: grub-core/commands/pgp.c:998 -msgid "[-s|--skip-sig] PUBKEY_FILE" -msgstr "" - -#: grub-core/commands/pgp.c:999 -msgid "Add PUBKEY_FILE to trusted keys." -msgstr "" - -#: grub-core/commands/pgp.c:1003 -msgid "Show the list of trusted keys." -msgstr "" - -#: grub-core/commands/pgp.c:1005 -msgid "PUBKEY_ID" -msgstr "" - -#: grub-core/commands/pgp.c:1006 -msgid "Remove PUBKEY_ID from trusted keys." -msgstr "" - -#: grub-core/commands/probe.c:40 grub-core/commands/tr.c:32 -msgid "Set a variable to return value." -msgstr "" - -#. TRANSLATORS: It's a driver that is currently in use to access -#. the diven disk. -#: grub-core/commands/probe.c:43 -msgid "Determine driver." -msgstr "" - -#: grub-core/commands/probe.c:44 -msgid "Determine partition map type." -msgstr "" - -#: grub-core/commands/probe.c:45 -msgid "Determine filesystem type." -msgstr "" - -#: grub-core/commands/probe.c:46 -msgid "Determine filesystem UUID." -msgstr "" - -#: grub-core/commands/probe.c:47 -msgid "Determine filesystem label." -msgstr "" - -#: grub-core/commands/probe.c:139 grub-core/commands/probe.c:146 -#: util/grub-probe.c:462 -#, c-format -msgid "filesystem `%s' does not support labels" -msgstr "" - -#: grub-core/commands/probe.c:165 grub-core/fs/zfs/zfsinfo.c:430 -#: grub-core/loader/i386/bsd.c:169 util/grub-setup.c:223 -msgid "DEVICE" -msgstr "" - -#: grub-core/commands/probe.c:166 -msgid "Retrieve device info." -msgstr "" - -#: grub-core/commands/read.c:85 -msgid "[ENVVAR]" -msgstr "" - -#: grub-core/commands/read.c:86 -msgid "Set variable with user input." -msgstr "" - -#: grub-core/commands/reboot.c:40 -msgid "Reboot the computer." -msgstr "" - -#. TRANSLATORS: in regexp you can mark some -#. groups with parentheses. These groups are -#. then numbered and you can save some of -#. them in variables. In other programs -#. those components aree often referenced with -#. back slash, e.g. \1. Compare -#. sed -e 's,\([a-z][a-z]*\),lowercase=\1,g' -#. The whole matching component is saved in VARNAME, not its number. -#. -#: grub-core/commands/regexp.c:44 -msgid "Store matched component NUMBER in VARNAME." -msgstr "" - -#: grub-core/commands/regexp.c:45 -msgid "[NUMBER:]VARNAME" -msgstr "" - -#. TRANSLATORS: This are two arguments. So it's -#. two separate units to translate and pay -#. attention not to reverse them. -#: grub-core/commands/regexp.c:157 -msgid "REGEXP STRING" -msgstr "" - -#: grub-core/commands/regexp.c:158 -msgid "Test if REGEXP matches STRING." -msgstr "" - -#: grub-core/commands/search.c:324 -msgid "NAME [VARIABLE] [HINTS]" -msgstr "" - -#: grub-core/commands/search_file.c:4 -msgid "" -"Search devices by file. If VARIABLE is specified, the first device found is " -"set to a variable." -msgstr "" - -#: grub-core/commands/search_label.c:4 -msgid "" -"Search devices by label. If VARIABLE is specified, the first device found is " -"set to a variable." -msgstr "" - -#: grub-core/commands/search_uuid.c:4 -msgid "" -"Search devices by UUID. If VARIABLE is specified, the first device found is " -"set to a variable." -msgstr "" - -#: grub-core/commands/search_wrap.c:34 -msgid "Search devices by a file." -msgstr "" - -#: grub-core/commands/search_wrap.c:35 -msgid "Search devices by a filesystem label." -msgstr "" - -#: grub-core/commands/search_wrap.c:37 -msgid "Search devices by a filesystem UUID." -msgstr "" - -#: grub-core/commands/search_wrap.c:40 -msgid "Set a variable to the first device found." -msgstr "" - -#: grub-core/commands/search_wrap.c:42 -msgid "Do not probe any floppy drive." -msgstr "" - -#: grub-core/commands/search_wrap.c:44 -msgid "" -"First try the device HINT. If HINT ends in comma, also try subpartitions" -msgstr "" - -#: grub-core/commands/search_wrap.c:45 grub-core/commands/search_wrap.c:49 -#: grub-core/commands/search_wrap.c:53 grub-core/commands/search_wrap.c:57 -#: grub-core/commands/search_wrap.c:61 grub-core/commands/search_wrap.c:65 -msgid "HINT" -msgstr "" - -#: grub-core/commands/search_wrap.c:47 -msgid "" -"First try the device HINT if currently running on IEEE1275. If HINT ends in " -"comma, also try subpartitions" -msgstr "" - -#: grub-core/commands/search_wrap.c:51 -msgid "" -"First try the device HINT if currently running on BIOS. If HINT ends in " -"comma, also try subpartitions" -msgstr "" - -#: grub-core/commands/search_wrap.c:55 -msgid "" -"First try the device HINT if direct hardware access is supported. If HINT " -"ends in comma, also try subpartitions" -msgstr "" - -#: grub-core/commands/search_wrap.c:59 -msgid "" -"First try the device HINT if currently running on EFI. If HINT ends in " -"comma, also try subpartitions" -msgstr "" - -#: grub-core/commands/search_wrap.c:63 -msgid "" -"First try the device HINT if currently running on ARC. If HINT ends in " -"comma, also try subpartitions" -msgstr "" - -#: grub-core/commands/search_wrap.c:207 -msgid "[-f|-l|-u|-s|-n] [--hint HINT [--hint HINT] ...] NAME" -msgstr "" - -#: grub-core/commands/search_wrap.c:209 -msgid "" -"Search devices by file, filesystem label or filesystem UUID. If --set is " -"specified, the first device found is set to a variable. If no variable name " -"is specified, `root' is used." -msgstr "" - -#: grub-core/commands/setpci.c:132 -#, c-format -msgid "Register %x of %x:%02x.%x is %x\n" -msgstr "" - -#: grub-core/commands/setpci.c:333 -msgid "[-s POSITION] [-d DEVICE] [-v VAR] REGISTER[=VALUE[:MASK]]" -msgstr "" - -#: grub-core/commands/setpci.c:335 -msgid "Manipulate PCI devices." -msgstr "" - -#: grub-core/commands/sleep.c:32 -msgid "Verbose countdown." -msgstr "" - -#: grub-core/commands/sleep.c:33 -msgid "Allow to interrupt with ESC." -msgstr "" - -#: grub-core/commands/sleep.c:109 -msgid "NUMBER_OF_SECONDS" -msgstr "" - -#: grub-core/commands/sleep.c:110 -msgid "Wait for a specified number of seconds." -msgstr "" - -#: grub-core/commands/syslinuxcfg.c:50 util/grub-syslinux2cfg.c:66 -msgid "root directory of the syslinux disk [default=/]." -msgstr "" - -#: grub-core/commands/syslinuxcfg.c:53 util/grub-syslinux2cfg.c:72 -msgid "" -"current directory of syslinux [default is parent directory of input file]." -msgstr "" - -#: grub-core/commands/syslinuxcfg.c:55 util/grub-syslinux2cfg.c:75 -msgid "assume input is an isolinux configuration file." -msgstr "" - -#: grub-core/commands/syslinuxcfg.c:56 util/grub-syslinux2cfg.c:76 -msgid "assume input is a pxelinux configuration file." -msgstr "" - -#: grub-core/commands/syslinuxcfg.c:57 util/grub-syslinux2cfg.c:77 -msgid "assume input is a syslinux configuration file." -msgstr "" - -#. TRANSLATORS: "syslinux config" means -#. "config as used by syslinux". -#: grub-core/commands/syslinuxcfg.c:189 -msgid "Execute syslinux config in same context" -msgstr "" - -#: grub-core/commands/syslinuxcfg.c:195 -msgid "Execute syslinux config in new context" -msgstr "" - -#: grub-core/commands/syslinuxcfg.c:201 -msgid "Execute syslinux config in same context taking only menu entries" -msgstr "" - -#: grub-core/commands/syslinuxcfg.c:207 -msgid "Execute syslinux config in new context taking only menu entries" -msgstr "" - -#: grub-core/commands/terminal.c:90 -msgid "no terminal specified" -msgstr "" - -#: grub-core/commands/terminal.c:112 grub-core/commands/terminal.c:139 -#, c-format -msgid "terminal `%s' isn't found" -msgstr "" - -#: grub-core/commands/terminal.c:244 -msgid "Active input terminals:" -msgstr "" - -#: grub-core/commands/terminal.c:245 -msgid "Available input terminals:" -msgstr "" - -#: grub-core/commands/terminal.c:261 -msgid "Active output terminals:" -msgstr "" - -#: grub-core/commands/terminal.c:262 -msgid "Available output terminals:" -msgstr "" - -#: grub-core/commands/terminal.c:271 grub-core/commands/terminal.c:276 -msgid "[--append|--remove] [TERMINAL1] [TERMINAL2] ..." -msgstr "" - -#: grub-core/commands/terminal.c:273 -msgid "List or select an input terminal." -msgstr "" - -#: grub-core/commands/terminal.c:278 -msgid "List or select an output terminal." -msgstr "" - -#: grub-core/commands/test.c:444 -msgid "EXPRESSION ]" -msgstr "" - -#: grub-core/commands/test.c:444 grub-core/commands/test.c:447 -msgid "Evaluate an expression." -msgstr "" - -#: grub-core/commands/test.c:447 -msgid "EXPRESSION" -msgstr "" - -#: grub-core/commands/testload.c:164 -msgid "Load the same file in multiple ways." -msgstr "" - -#: grub-core/commands/testspeed.c:35 -msgid "Specify size for each read operation" -msgstr "" - -#: grub-core/commands/testspeed.c:58 -msgid "invalid block size" -msgstr "" - -#: grub-core/commands/testspeed.c:80 -#, c-format -msgid "File size: %s\n" -msgstr "" - -#: grub-core/commands/testspeed.c:83 -#, c-format -msgid "Elapsed time: %d.%03d s \n" -msgstr "" - -#: grub-core/commands/testspeed.c:92 -#, c-format -msgid "Speed: %s \n" -msgstr "" - -#: grub-core/commands/testspeed.c:107 -msgid "[-s SIZE] FILENAME" -msgstr "" - -#: grub-core/commands/testspeed.c:108 -msgid "Test file read speed." -msgstr "" - -#: grub-core/commands/time.c:38 grub-core/script/execute.c:974 -msgid "no command is specified" -msgstr "" - -#: grub-core/commands/time.c:50 -#, c-format -msgid "Elapsed time: %d.%03d seconds \n" -msgstr "" - -#: grub-core/commands/time.c:61 -msgid "COMMAND [ARGS]" -msgstr "" - -#: grub-core/commands/time.c:62 -msgid "Measure time used by COMMAND" -msgstr "" - -#: grub-core/commands/tr.c:33 -msgid "Translate to upper case." -msgstr "" - -#: grub-core/commands/tr.c:34 -msgid "Translate to lower case." -msgstr "" - -#: grub-core/commands/tr.c:119 -msgid "[OPTIONS] [SET1] [SET2] [STRING]" -msgstr "[OPÈšIUNI] [SET1] [SET2] [ȘIR_DE_CARACTERE]" - -#: grub-core/commands/tr.c:120 -msgid "Translate SET1 characters to SET2 in STRING." -msgstr "" - -#. TRANSLATORS: it's a command description. -#: grub-core/commands/true.c:50 -msgid "Do nothing, successfully." -msgstr "" - -#. TRANSLATORS: it's a command description. -#: grub-core/commands/true.c:54 -msgid "Do nothing, unsuccessfully." -msgstr "" - -#: grub-core/commands/usbtest.c:221 -msgid "Test USB support." -msgstr "" - -#: grub-core/commands/verifiers.c:120 -#, c-format -msgid "verification requested but nobody cares: %s" -msgstr "" - -#: grub-core/commands/verifiers.c:140 -msgid "big file signature isn't implemented yet" -msgstr "" - -#: grub-core/commands/videoinfo.c:61 -msgid "Text-only " -msgstr "" - -#. TRANSLATORS: "Direct color" is a mode when the color components -#. are written dirrectly into memory. -#: grub-core/commands/videoinfo.c:66 -#, c-format -msgid "Direct color, mask: %d/%d/%d/%d pos: %d/%d/%d/%d" -msgstr "" - -#. TRANSLATORS: In "paletted color" mode you write the index of the color -#. in the palette. Synonyms include "packed pixel". -#: grub-core/commands/videoinfo.c:78 -msgid "Paletted " -msgstr "" - -#: grub-core/commands/videoinfo.c:80 -msgid "YUV " -msgstr "" - -#. TRANSLATORS: "Planar" is the video memory where you have to write -#. in several different banks "plans" to control the different color -#. components of the same pixel. -#: grub-core/commands/videoinfo.c:85 -msgid "Planar " -msgstr "" - -#: grub-core/commands/videoinfo.c:87 -msgid "Hercules " -msgstr "" - -#: grub-core/commands/videoinfo.c:89 -msgid "CGA " -msgstr "" - -#. TRANSLATORS: Non-chain 4 is a 256-color planar -#. (unchained) video memory mode. -#: grub-core/commands/videoinfo.c:93 -msgid "Non-chain 4 " -msgstr "" - -#: grub-core/commands/videoinfo.c:95 -msgid "Monochrome " -msgstr "" - -#: grub-core/commands/videoinfo.c:97 -msgid "Unknown video mode " -msgstr "" - -#: grub-core/commands/videoinfo.c:111 -msgid " EDID checksum invalid" -msgstr "" - -#: grub-core/commands/videoinfo.c:116 -#, c-format -msgid " EDID version: %u.%u\n" -msgstr "" - -#: grub-core/commands/videoinfo.c:120 -#, c-format -msgid " Preferred mode: %ux%u\n" -msgstr "" - -#: grub-core/commands/videoinfo.c:123 -msgid " No preferred mode available\n" -msgstr "" - -#: grub-core/commands/videoinfo.c:146 grub-core/video/video.c:490 -#: grub-core/video/video.c:498 grub-core/video/video.c:509 -#: grub-core/video/video.c:520 grub-core/video/video.c:528 -#, c-format -msgid "invalid video mode specification `%s'" -msgstr "" - -#: grub-core/commands/videoinfo.c:168 -msgid "List of supported video modes:" -msgstr "" - -#: grub-core/commands/videoinfo.c:169 -msgid "Legend: mask/position=red/green/blue/reserved" -msgstr "" - -#: grub-core/commands/videoinfo.c:176 -#, c-format -msgid "Adapter `%s':\n" -msgstr "" - -#: grub-core/commands/videoinfo.c:180 -msgid " No info available" -msgstr "" - -#: grub-core/commands/videoinfo.c:198 -msgid " Failed to initialize video adapter" -msgstr "" - -#. TRANSLATORS: "x" has to be entered in, -#. like an identifier, so please don't -#. use better Unicode codepoints. -#: grub-core/commands/videoinfo.c:239 grub-core/commands/videoinfo.c:248 -msgid "[WxH[xD]]" -msgstr "" - -#: grub-core/commands/videoinfo.c:240 grub-core/commands/videoinfo.c:249 -msgid "" -"List available video modes. If resolution is given show only modes matching " -"it." -msgstr "" - -#. TRANSLATORS: "x" has to be entered in, -#. like an identifier, so please don't -#. use better Unicode codepoints. -#: grub-core/commands/videotest.c:225 -msgid "[WxH]" -msgstr "" - -#. TRANSLATORS: Here, on the other hand, it's -#. nicer to use unicode cross instead of x. -#: grub-core/commands/videotest.c:228 -msgid "Test video subsystem in mode WxH." -msgstr "" - -#: grub-core/commands/videotest.c:231 -msgid "Test video subsystem." -msgstr "" - -#: grub-core/commands/xen/lsxen.c:80 grub-core/commands/xen/lsxen.c:82 -msgid "[DIR]" -msgstr "" - -#: grub-core/commands/xen/lsxen.c:81 grub-core/commands/xen/lsxen.c:83 -msgid "List Xen storage." -msgstr "" - -#. TRANSLATORS: GRUBUUID stands for "filesystem -#. UUID as used in GRUB". -#: grub-core/commands/xnu_uuid.c:110 -msgid "[-l] GRUBUUID [VARNAME]" -msgstr "" - -#: grub-core/commands/xnu_uuid.c:111 -msgid "" -"Transform 64-bit UUID to format suitable for XNU. If -l is given keep it " -"lowercase as done by blkid." -msgstr "" - -#: grub-core/disk/arc/arcdisk.c:248 grub-core/disk/efi/efidisk.c:603 -#: grub-core/disk/i386/pc/biosdisk.c:498 grub-core/disk/i386/pc/biosdisk.c:543 -#: grub-core/disk/ieee1275/nand.c:198 grub-core/disk/ieee1275/obdisk.c:527 -#: grub-core/disk/ieee1275/ofdisk.c:586 -#, c-format -msgid "failure reading sector 0x%llx from `%s'" -msgstr "" - -#: grub-core/disk/arc/arcdisk.c:284 grub-core/disk/efi/efidisk.c:626 -#: grub-core/disk/i386/pc/biosdisk.c:548 grub-core/disk/ieee1275/ofdisk.c:606 -#, c-format -msgid "failure writing sector 0x%llx to `%s'" -msgstr "" - -#: grub-core/disk/cryptodisk.c:40 -msgid "Mount by UUID." -msgstr "" - -#. TRANSLATORS: It's still restricted to cryptodisks only. -#: grub-core/disk/cryptodisk.c:42 -msgid "Mount all." -msgstr "" - -#: grub-core/disk/cryptodisk.c:43 -msgid "Mount all volumes with `boot' flag set." -msgstr "" - -#. TRANSLATORS: The first %s is the file being looked at, the second %s is -#. the error message. -#: grub-core/disk/cryptodisk.c:526 grub-core/kern/emu/hostdisk.c:152 -#: grub-core/kern/emu/hostdisk.c:262 grub-core/kern/emu/hostdisk.c:434 -#: grub-core/kern/emu/misc.c:168 grub-core/kern/emu/misc.c:174 -#: grub-core/kern/emu/misc.c:196 grub-core/osdep/bsd/getroot.c:92 -#: grub-core/osdep/bsd/getroot.c:168 grub-core/osdep/hurd/getroot.c:68 -#: grub-core/osdep/linux/blocklist.c:65 grub-core/osdep/linux/getroot.c:150 -#: grub-core/osdep/linux/hostdisk.c:194 grub-core/osdep/linux/hostdisk.c:421 -#: grub-core/osdep/linux/ofpath.c:417 grub-core/osdep/linux/ofpath.c:422 -#: grub-core/osdep/linux/ofpath.c:517 grub-core/osdep/linux/ofpath.c:530 -#: grub-core/osdep/sun/getroot.c:110 grub-core/osdep/windows/blocklist.c:98 -#: grub-core/tests/video_checksum.c:279 util/editenv.c:46 util/glue-efi.c:115 -#: util/glue-efi.c:120 util/glue-efi.c:130 util/grub-editenv.c:138 -#: util/grub-editenv.c:192 util/grub-file.c:83 util/grub-fstest.c:128 -#: util/grub-fstest.c:568 util/grub-install-common.c:92 -#: util/grub-install-common.c:94 util/grub-install-common.c:101 -#: util/grub-install-common.c:529 util/grub-menulst2cfg.c:53 -#: util/grub-menulst2cfg.c:68 util/grub-mkimage.c:292 util/grub-mklayout.c:504 -#: util/grub-mklayout.c:516 util/grub-mknetdir.c:133 util/grub-mknetdir.c:151 -#: util/grub-mkrescue.c:627 util/grub-mkrescue.c:631 util/grub-mkrescue.c:879 -#: util/grub-mkrescue.c:883 util/grub-mkstandalone.c:253 util/grub-mount.c:498 -#: util/grub-render-label.c:169 util/grub-script-check.c:175 -#: util/grub-syslinux2cfg.c:181 util/grub-syslinux2cfg.c:191 -#: util/grub-syslinux2cfg.c:212 util/grub-syslinux2cfg.c:228 util/misc.c:91 -#: util/render-label.c:76 util/render-label.c:163 util/render-label.c:174 -#: util/resolve.c:246 util/setup.c:783 -#, c-format -msgid "cannot open `%s': %s" -msgstr "" - -#: grub-core/disk/cryptodisk.c:583 grub-core/disk/cryptodisk.c:628 -#: grub-core/kern/emu/hostdisk.c:270 grub-core/kern/emu/hostfs.c:142 -#: grub-core/osdep/linux/hostdisk.c:456 util/grub-editenv.c:143 -#: util/grub-editenv.c:149 util/grub-fstest.c:320 util/misc.c:111 -#, c-format -msgid "cannot seek `%s': %s" -msgstr "" - -#: grub-core/disk/cryptodisk.c:1144 -msgid "SOURCE|-u UUID|-a|-b" -msgstr "" - -#: grub-core/disk/cryptodisk.c:1145 -msgid "Mount a crypto device." -msgstr "" - -#. TRANSLATORS: This message kicks in during the detection of -#. which modules needs to be included in core image. This happens -#. in the case of degraded RAID and means that autodetection may -#. fail to include some of modules. It's an installation time -#. message, not runtime message. -#: grub-core/disk/diskfilter.c:343 grub-core/disk/diskfilter.c:376 -#, c-format -msgid "" -"Couldn't find physical volume `%s'. Some modules may be missing from core " -"image." -msgstr "" - -#: grub-core/disk/diskfilter.c:480 -#, c-format -msgid "physical volume %s not found" -msgstr "" - -#: grub-core/disk/efi/efidisk.c:600 grub-core/disk/efi/efidisk.c:623 -#, c-format -msgid "no media in `%s'" -msgstr "" - -#: grub-core/disk/geli.c:75 -msgid "Couldn't load sha256" -msgstr "" - -#: grub-core/disk/geli.c:85 -msgid "Couldn't load sha512" -msgstr "" - -#: grub-core/disk/geli.c:216 grub-core/disk/geli.c:220 -msgid "couldn't read ELI metadata" -msgstr "" - -#: grub-core/disk/geli.c:231 -msgid "wrong ELI magic or version" -msgstr "" - -#: grub-core/disk/geli.c:435 grub-core/disk/luks.c:329 -msgid "Attempting to decrypt master key..." -msgstr "" - -#: grub-core/disk/geli.c:441 grub-core/disk/luks.c:347 -#, c-format -msgid "Enter passphrase for %s%s%s (%s): " -msgstr "" - -#. TRANSLATORS: It's a cryptographic key slot: one element of an array -#. where each element is either empty or holds a key. -#: grub-core/disk/geli.c:530 grub-core/disk/luks.c:451 -#, c-format -msgid "Slot %d opened\n" -msgstr "" - -#: grub-core/disk/i386/pc/biosdisk.c:470 grub-core/disk/i386/pc/biosdisk.c:524 -#: grub-core/disk/i386/pc/biosdisk.c:534 grub-core/kern/disk_common.c:47 -#, c-format -msgid "attempt to read or write outside of disk `%s'" -msgstr "" - -#: grub-core/disk/i386/pc/biosdisk.c:491 grub-core/disk/i386/pc/biosdisk.c:611 -#: grub-core/disk/scsi.c:726 -msgid "cannot write to CD-ROM" -msgstr "" - -#: grub-core/disk/i386/pc/biosdisk.c:662 -msgid "" -"Native disk drivers are in use. Refusing to use firmware disk interface." -msgstr "" - -#. TRANSLATORS: it's a partition for embedding, -#. not a partition embed into something. GRUB -#. install tools put core.img into a place -#. usable for bootloaders (called generically -#. "embedding zone") and this operation is -#. called "embedding". -#: grub-core/disk/ldm.c:1015 -msgid "your LDM Embedding Partition is too small; embedding won't be possible" -msgstr "" - -#. TRANSLATORS: it's a partition for embedding, -#. not a partition embed into something. -#: grub-core/disk/ldm.c:1033 -msgid "this LDM has no Embedding Partition; embedding won't be possible" -msgstr "" - -#. TRANSLATORS: The disk is simply removed from the list of available ones, -#. not wiped, avoid to scare user. -#: grub-core/disk/loopback.c:45 -msgid "Delete the specified loopback drive." -msgstr "" - -#: grub-core/disk/loopback.c:237 -msgid "[-d] DEVICENAME FILE." -msgstr "" - -#. TRANSLATORS: The file itself is not destroyed -#. or transformed into drive. -#: grub-core/disk/loopback.c:240 -msgid "Make a virtual drive from a file." -msgstr "" - -#: grub-core/efiemu/i386/loadcore32.c:111 -#: grub-core/efiemu/i386/loadcore64.c:125 grub-core/kern/arm/dl.c:256 -#: grub-core/kern/arm64/dl.c:187 grub-core/kern/i386/dl.c:75 -#: grub-core/kern/ia64/dl.c:140 grub-core/kern/mips/dl.c:258 -#: grub-core/kern/powerpc/dl.c:163 grub-core/kern/riscv/dl.c:334 -#: grub-core/kern/sparc64/dl.c:180 grub-core/kern/x86_64/dl.c:110 -#: util/grub-mkimagexx.c:756 util/grub-mkimagexx.c:881 -#: util/grub-mkimagexx.c:945 util/grub-mkimagexx.c:1026 -#: util/grub-mkimagexx.c:1120 util/grub-mkimagexx.c:1222 -#: util/grub-mkimagexx.c:1413 util/grub-mkimagexx.c:1628 -#: util/grub-mkimagexx.c:1665 util/grub-mkimagexx.c:1697 -#: util/grub-mkimagexx.c:1767 util/grub-mkimagexx.c:1797 -#, c-format -msgid "relocation 0x%x is not implemented yet" -msgstr "" - -#: grub-core/efiemu/loadcore.c:200 grub-core/efiemu/loadcore.c:237 -#: grub-core/loader/i386/bsdXX.c:317 util/grub-mkimagexx.c:2360 -msgid "no symbol table" -msgstr "" - -#: grub-core/efiemu/loadcore.c:346 grub-core/kern/dl.c:609 -#: grub-core/loader/ia64/efi/linux.c:345 grub-core/loader/mips/linux.c:248 -#: grub-core/loader/multiboot_elfxx.c:76 -#: grub-core/loader/powerpc/ieee1275/linux.c:280 -#: grub-core/loader/sparc64/ieee1275/linux.c:320 -msgid "this ELF file is not of the right type" -msgstr "" - -#: grub-core/efiemu/main.c:313 -msgid "Load and initialize EFI emulator." -msgstr "" - -#: grub-core/efiemu/main.c:317 -msgid "Finalize loading of EFI emulator." -msgstr "" - -#: grub-core/efiemu/main.c:320 -msgid "Unload EFI emulator." -msgstr "" - -#: grub-core/efiemu/symbols.c:92 grub-core/kern/dl.c:376 -#, c-format -msgid "symbol `%s' not found" -msgstr "" - -#: grub-core/font/font_cmd.c:52 -msgid "Loaded fonts:" -msgstr "" - -#: grub-core/font/font_cmd.c:74 -msgid "FILE..." -msgstr "" - -#: grub-core/font/font_cmd.c:75 -msgid "Specify one or more font files to load." -msgstr "" - -#: grub-core/font/font_cmd.c:78 -msgid "List the loaded fonts." -msgstr "" - -#: grub-core/fs/archelp.c:216 grub-core/fs/archelp.c:278 -#: grub-core/fs/btrfs.c:1815 grub-core/fs/fshelp.c:227 grub-core/fs/jfs.c:736 -#: grub-core/fs/minix.c:369 grub-core/fs/ufs.c:454 -msgid "too deep nesting of symlinks" -msgstr "" - -#: grub-core/fs/bfs.c:228 grub-core/fs/fshelp.c:368 grub-core/fs/minix.c:270 -#: grub-core/kern/file.c:156 -msgid "attempt to read past the end of file" -msgstr "" - -#: grub-core/fs/btrfs.c:1698 grub-core/fs/btrfs.c:1957 -#: grub-core/fs/fshelp.c:189 grub-core/fs/fshelp.c:309 grub-core/fs/jfs.c:431 -#: grub-core/fs/minix.c:414 grub-core/fs/minix.c:562 -#: grub-core/fs/reiserfs.c:732 grub-core/fs/ufs.c:531 grub-core/fs/ufs.c:671 -#: grub-core/fs/zfs/zfs.c:2831 grub-core/fs/zfs/zfs.c:4247 -msgid "not a directory" -msgstr "" - -#: grub-core/fs/btrfs.c:2063 grub-core/fs/fshelp.c:307 grub-core/fs/jfs.c:835 -#: grub-core/fs/zfs/zfs.c:3801 -msgid "not a regular file" -msgstr "" - -#: grub-core/fs/btrfs.c:2157 grub-core/fs/zfs/zfs.c:4333 -#: grub-core/partmap/msdos.c:400 -msgid "your core.img is unusually large. It won't fit in the embedding area" -msgstr "" - -#: grub-core/fs/fshelp.c:281 grub-core/fs/minix.c:630 grub-core/fs/ufs.c:661 -#: grub-core/fs/ufs.c:757 grub-core/kern/fs.c:168 grub-core/kern/fs.c:180 -#, c-format -msgid "invalid file name `%s'" -msgstr "" - -#: grub-core/fs/zfs/zfs.c:453 -msgid "checksum verification failed" -msgstr "" - -#: grub-core/fs/zfs/zfs.c:1465 -msgid "couldn't find a necessary member device of multi-device filesystem" -msgstr "" - -#: grub-core/fs/zfs/zfscrypt.c:292 -msgid "no decryption key available" -msgstr "" - -#: grub-core/fs/zfs/zfscrypt.c:304 -msgid "MAC verification failed" -msgstr "" - -#: grub-core/fs/zfs/zfscrypt.c:413 -msgid "Assume input is raw." -msgstr "" - -#: grub-core/fs/zfs/zfscrypt.c:414 -msgid "Assume input is hex." -msgstr "" - -#: grub-core/fs/zfs/zfscrypt.c:415 -msgid "Assume input is passphrase." -msgstr "" - -#: grub-core/fs/zfs/zfscrypt.c:437 util/grub-fstest.c:553 util/grub-mount.c:483 -msgid "Enter ZFS password: " -msgstr "" - -#: grub-core/fs/zfs/zfscrypt.c:476 -msgid "[-h|-p|-r] [FILE]" -msgstr "" - -#: grub-core/fs/zfs/zfscrypt.c:477 -msgid "Import ZFS wrapping key stored in FILE." -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:51 -msgid "Virtual device is removed" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:57 -msgid "Virtual device is faulted" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:63 -msgid "Virtual device is offline" -msgstr "" - -#. TRANSLATORS: degraded doesn't mean broken but that some of -#. component are missing but virtual device as whole is still usable. -#: grub-core/fs/zfs/zfsinfo.c:70 -msgid "Virtual device is degraded" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:73 -msgid "Virtual device is online" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:89 -msgid "Incorrect virtual device: no type available" -msgstr "" - -#. TRANSLATORS: The virtual devices form a tree (in graph-theoretical -#. sense). The nodes like mirror or raidz have children: member devices. -#. The "real" devices which actually store data are called "leafs" -#. (again borrowed from graph theory) and can be either disks -#. (or partitions) or files. -#: grub-core/fs/zfs/zfsinfo.c:105 -msgid "Leaf virtual device (file or disk)" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:113 -msgid "Bootpath: unavailable\n" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:115 -#, c-format -msgid "Bootpath: %s\n" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:120 -msgid "Path: unavailable" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:122 -#, c-format -msgid "Path: %s\n" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:127 -msgid "Devid: unavailable" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:129 -#, c-format -msgid "Devid: %s\n" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:148 -msgid "This VDEV is a mirror" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:153 -#, c-format -msgid "This VDEV is a RAIDZ%llu\n" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:158 -msgid "Incorrect VDEV" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:161 -#, c-format -msgid "VDEV with %d children\n" -msgstr "" - -#. TRANSLATORS: it's the element carying the number %d, not -#. total element number. And the number itself is fine, -#. only the element isn't. -#. -#: grub-core/fs/zfs/zfsinfo.c:177 -#, c-format -msgid "VDEV element number %d isn't correct\n" -msgstr "" - -#. TRANSLATORS: it's the element carying the number %d, not -#. total element number. This is used in enumeration -#. "Element number 1", "Element number 2", ... -#: grub-core/fs/zfs/zfsinfo.c:184 -#, c-format -msgid "VDEV element number %d:\n" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:193 -#, c-format -msgid "Unknown virtual device type: %s\n" -msgstr "" - -#. TRANSLATORS: Here we speak about ZFS pools it's semi-marketing, -#. semi-technical term by Sun/Oracle and should be translated in sync with -#. other ZFS-related software and documentation. -#: grub-core/fs/zfs/zfsinfo.c:254 -msgid "Pool state: active" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:255 -msgid "Pool state: exported" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:256 -msgid "Pool state: destroyed" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:257 -msgid "Pool state: reserved for hot spare" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:258 -msgid "Pool state: level 2 ARC device" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:259 -msgid "Pool state: uninitialized" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:260 -msgid "Pool state: unavailable" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:261 -msgid "Pool state: potentially active" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:306 -msgid "Pool name: unavailable" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:308 -#, c-format -msgid "Pool name: %s\n" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:313 -msgid "Pool GUID: unavailable" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:315 -#, c-format -msgid "Pool GUID: %016llx\n" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:320 -msgid "Unable to retrieve pool state" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:322 -msgid "Unrecognized pool state" -msgstr "" - -#. TRANSLATORS: There are undetermined number of virtual devices -#. in a device tree, not just one. -#. -#: grub-core/fs/zfs/zfsinfo.c:332 -msgid "No virtual device tree available" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:431 -msgid "Print ZFS info about DEVICE." -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:433 -msgid "FILESYSTEM [VARIABLE]" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:434 -msgid "Print ZFS-BOOTFSOBJ or store it into VARIABLE" -msgstr "" - -#. TRANSLATORS: at this position GRUB waits for the user to do an action -#. in remote debugger, namely to tell it to establish connection. -#: grub-core/gdb/gdb.c:48 -msgid "Now connect the remote debugger, please." -msgstr "" - -#. TRANSLATORS: GDB stub is a small part of -#. GDB functionality running on local host -#. which allows remote debugger to -#. connect to it. -#: grub-core/gdb/gdb.c:84 -msgid "Start GDB stub on given port" -msgstr "" - -#. TRANSLATORS: this refers to triggering -#. a breakpoint so that the user will land -#. into GDB. -#: grub-core/gdb/gdb.c:89 -msgid "Break into GDB" -msgstr "" - -#: grub-core/gdb/gdb.c:91 -msgid "Stop GDB stub" -msgstr "" - -#: grub-core/gettext/gettext.c:85 -msgid "premature end of file" -msgstr "" - -#. TRANSLATORS: It refers to passing the string through gettext. -#. So it's "translate" in the same meaning as in what you're -#. doing now. -#. -#: grub-core/gettext/gettext.c:525 -msgid "Translates the string with the current settings." -msgstr "" - -#: grub-core/gfxmenu/gui_label.c:186 grub-core/normal/menu_text.c:184 -msgid "" -"Press enter to boot the selected OS, `e' to edit the commands before booting " -"or `c' for a command-line. ESC to return previous menu." -msgstr "" -"ApăsaÈ›i enter pentru a iniÈ›ializa (boot) sistemul de operare selectat, „e†" -"pentru a edita comenzile înaintea iniÈ›ializării sau „c†pentru o linie de " -"comandă. ESC pentru a reveni la meniul anterior." - -#: grub-core/gfxmenu/gui_label.c:190 grub-core/normal/menu_text.c:192 -msgid "" -"Press enter to boot the selected OS, `e' to edit the commands before booting " -"or `c' for a command-line." -msgstr "" -"ApăsaÈ›i enter pentru a iniÈ›ializa (boot) sistemul de operare selectat, „e†" -"pentru a edita comenzile înaintea iniÈ›ializării sau „c†pentru o linie de " -"comandă." - -#: grub-core/gfxmenu/gui_label.c:194 -msgid "enter: boot, `e': options, `c': cmd-line" -msgstr "enter: boot, `e': opÈ›iuni, `c': linia-de-comandă" - -#: grub-core/gfxmenu/gui_progress_bar.c:339 grub-core/normal/menu_text.c:446 -#, c-format -msgid "The highlighted entry will be executed automatically in %ds." -msgstr "Intrarea evidenÈ›iată va fi executată automat în %ds." - -#. TRANSLATORS: 's' stands for seconds. -#. It's a standalone timeout notification. -#. Please use the short form in your language. -#: grub-core/gfxmenu/gui_progress_bar.c:344 -#, c-format -msgid "%ds remaining." -msgstr "%ds rămase." - -#. TRANSLATORS: 's' stands for seconds. -#. It's a standalone timeout notification. -#. Please use the shortest form available in you language. -#: grub-core/gfxmenu/gui_progress_bar.c:349 grub-core/normal/menu_text.c:444 -#: grub-core/normal/menu_text.c:462 -#, c-format -msgid "%ds" -msgstr "%ds" - -#: grub-core/gfxmenu/view.c:103 -msgid "GRUB Boot Menu" -msgstr "Meniul de Boot GRUB" - -#: grub-core/hello/hello.c:36 -msgid "Hello World" -msgstr "Salutări lume" - -#: grub-core/hello/hello.c:45 -msgid "Say `Hello World'." -msgstr "" - -#: grub-core/io/gzio.c:409 grub-core/kern/file.c:210 -msgid "attempt to seek outside of the file" -msgstr "" - -#. TRANSLATORS: It's about given file having some strange format, not -#. complete lack of gzip support. -#: grub-core/io/gzio.c:1228 grub-core/io/gzio.c:1237 grub-core/io/gzio.c:1244 -msgid "unsupported gzip format" -msgstr "format gzip nesuportat" - -#: grub-core/io/lzopio.c:511 -msgid "lzop file corrupted" -msgstr "fiÈ™ier corupt lzop" - -#: grub-core/io/xzio.c:278 -msgid "xz file corrupted or unsupported block options" -msgstr "" - -#: grub-core/kern/arm/dl.c:277 grub-core/kern/arm64/dl.c:44 -#: grub-core/kern/i386/dl.c:36 grub-core/kern/ia64/dl.c:41 -#: grub-core/kern/mips/dl.c:48 grub-core/kern/powerpc/dl.c:36 -#: grub-core/kern/riscv/dl.c:47 grub-core/kern/sparc64/dl.c:36 -#: grub-core/kern/x86_64/dl.c:36 grub-core/loader/i386/bsd.c:1445 -#: grub-core/loader/i386/bsdXX.c:49 grub-core/loader/ia64/efi/linux.c:341 -#: grub-core/loader/mips/linux.c:298 grub-core/loader/multiboot.c:232 -#: grub-core/loader/multiboot_elfxx.c:73 -#: grub-core/loader/powerpc/ieee1275/linux.c:294 -#: grub-core/loader/sparc64/ieee1275/linux.c:331 -msgid "invalid arch-dependent ELF magic" -msgstr "" - -#: grub-core/kern/corecmd.c:178 -msgid "[ENVVAR=VALUE]" -msgstr "[VARIABILÄ‚_DE_MEDIU=VALOARE]" - -#: grub-core/kern/corecmd.c:179 -msgid "Set an environment variable." -msgstr "" - -#: grub-core/kern/corecmd.c:183 -msgid "ENVVAR" -msgstr "" - -#: grub-core/kern/corecmd.c:184 -msgid "Remove an environment variable." -msgstr "" - -#: grub-core/kern/corecmd.c:186 -msgid "[ARG]" -msgstr "" - -#: grub-core/kern/corecmd.c:186 -msgid "List devices or files." -msgstr "" - -#: grub-core/kern/corecmd.c:188 -msgid "Insert a module." -msgstr "" - -#: grub-core/kern/disk.c:236 grub-core/net/net.c:1390 -#, c-format -msgid "disk `%s' not found" -msgstr "" - -#: grub-core/kern/disk_common.c:27 -msgid "attempt to read or write outside of partition" -msgstr "" - -#: grub-core/kern/dl.c:212 grub-core/kern/elf.c:61 grub-core/kern/elf.c:79 -#: grub-core/loader/i386/bsdXX.c:46 grub-core/loader/ia64/efi/linux.c:335 -#: grub-core/loader/multiboot_elfxx.c:69 -msgid "invalid arch-independent ELF magic" -msgstr "" - -#. TRANSLATORS: it refers to the lack of free slots. -#: grub-core/kern/emu/hostdisk.c:208 grub-core/kern/emu/hostdisk.c:466 -msgid "device count exceeds limit" -msgstr "" - -#: grub-core/kern/emu/hostdisk.c:342 util/editenv.c:54 util/grub-editenv.c:197 -#: util/grub-fstest.c:191 util/grub-mkfont.c:796 util/misc.c:114 -#: util/misc.c:129 util/setup.c:788 -#, c-format -msgid "cannot write to `%s': %s" -msgstr "" - -#. TRANSLATORS: Only one entry is ignored. However the suggestion -#. is to correct/delete the whole file. -#. device.map is a file indicating which -#. devices are available at boot time. Fedora populated it with -#. entries like (hd0,1) /dev/sda1 which would mean that every -#. partition is a separate disk for BIOS. Such entries were -#. inactive in GRUB due to its bug which is now gone. Without -#. this additional check these entries would be harmful now. -#. -#: grub-core/kern/emu/hostdisk.c:503 -#, c-format -msgid "" -"the device.map entry `%s' is invalid. Ignoring it. Please correct or delete " -"your device.map" -msgstr "" - -#. TRANSLATORS: device.map is a filename. Not to be translated. -#. device.map specifies disk correspondance overrides. Previously -#. one could create any kind of device name with this. Due to -#. some problems we decided to limit it to just a handful -#. possibilities. -#: grub-core/kern/emu/hostdisk.c:555 -#, c-format -msgid "" -"the drive name `%s' in device.map is incorrect. Using %s instead. Please use " -"the form [hfc]d[0-9]* (E.g. `hd0' or `cd')" -msgstr "" - -#: grub-core/kern/emu/hostfs.c:76 grub-core/kern/emu/hostfs.c:109 -#, c-format -msgid "can't open `%s': %s" -msgstr "" - -#: grub-core/kern/emu/main.c:99 util/grub-fstest.c:516 util/grub-mount.c:452 -msgid "DEVICE_NAME" -msgstr "" - -#: grub-core/kern/emu/main.c:99 grub-core/loader/i386/bsd.c:136 -#: grub-core/loader/i386/bsd.c:169 util/grub-fstest.c:516 util/grub-mount.c:452 -msgid "Set root device." -msgstr "" - -#. TRANSLATORS: There are many devices in device map. -#: grub-core/kern/emu/main.c:102 util/grub-probe.c:733 util/grub-setup.c:85 -#, c-format -msgid "use FILE as the device map [default=%s]" -msgstr "" - -#. TRANSLATORS: There are many devices in device map. -#: grub-core/kern/emu/main.c:105 -msgid "use FILE as memdisk" -msgstr "" - -#: grub-core/kern/emu/main.c:107 util/grub-setup.c:83 -#, c-format -msgid "use GRUB files in the directory DIR [default=%s]" -msgstr "" - -#: grub-core/kern/emu/main.c:108 include/grub/util/install.h:67 -#: util/grub-editenv.c:58 util/grub-fstest.c:525 util/grub-glue-efi.c:58 -#: util/grub-macbless.c:104 util/grub-mkfont.c:962 util/grub-mkimage.c:84 -#: util/grub-mklayout.c:56 util/grub-mount.c:458 util/grub-probe.c:735 -#: util/grub-render-label.c:74 util/grub-script-check.c:52 util/grub-setup.c:90 -#: util/grub-syslinux2cfg.c:78 -msgid "print verbose messages." -msgstr "" - -#: grub-core/kern/emu/main.c:109 grub-core/lib/gnulib/argp-parse.c:85 -msgid "SECS" -msgstr "" - -#: grub-core/kern/emu/main.c:109 -msgid "wait until a debugger will attach" -msgstr "" - -#: grub-core/kern/emu/main.c:171 util/grub-macbless.c:143 -#: util/grub-mkrelpath.c:61 util/grub-probe.c:874 util/grub-script-check.c:75 -#: util/grub-setup.c:203 -#, c-format -msgid "Unknown extra argument `%s'." -msgstr "" - -#: grub-core/kern/emu/main.c:185 -msgid "GRUB emulator." -msgstr "" - -#: grub-core/kern/emu/main.c:213 util/grub-editenv.c:262 -#: util/grub-glue-efi.c:110 util/grub-macbless.c:173 util/grub-mkfont.c:1177 -#: util/grub-mkimage.c:266 util/grub-mklayout.c:494 -#: util/grub-mkpasswd-pbkdf2.c:132 util/grub-mkrelpath.c:96 -#: util/grub-probe.c:863 util/grub-render-label.c:152 -#: util/grub-script-check.c:160 util/grub-setup.c:262 -#: util/grub-syslinux2cfg.c:163 -msgid "Error in parsing command line arguments\n" -msgstr "" - -#. TRANSLATORS: In this case GRUB tells user what he has to do. -#: grub-core/kern/emu/main.c:248 -#, c-format -msgid "Run `gdb %s %d', and set ARGS.HOLD to zero.\n" -msgstr "" - -#: grub-core/kern/emu/misc.c:48 -#, c-format -msgid "%s: warning:" -msgstr "" - -#: grub-core/kern/emu/misc.c:64 -#, c-format -msgid "%s: info:" -msgstr "" - -#: grub-core/kern/emu/misc.c:79 util/grub-fstest.c:567 util/grub-fstest.c:576 -#: util/grub-mount.c:497 util/grub-mount.c:505 -#, c-format -msgid "%s: error:" -msgstr "" - -#: grub-core/kern/emu/misc.c:176 -#, c-format -msgid "file `%s' is too big" -msgstr "" - -#: grub-core/kern/fs.c:120 -msgid "unknown filesystem" -msgstr "" - -#: grub-core/kern/mips/arc/init.c:273 grub-core/kern/mips/loongson/init.c:301 -msgid "Shutdown failed" -msgstr "" - -#: grub-core/kern/mips/arc/init.c:285 -msgid "Exit failed" -msgstr "" - -#: grub-core/kern/misc.c:351 grub-core/kern/misc.c:408 include/grub/misc.h:269 -#: include/grub/misc.h:278 -msgid "overflow is detected" -msgstr "" - -#: grub-core/kern/partition.c:51 grub-core/partmap/bsdlabel.c:108 -#, c-format -msgid "Discarding improperly nested partition (%s,%s,%s%d)" -msgstr "" - -#: grub-core/kern/rescue_parser.c:73 util/grub-editenv.c:292 -#, c-format -msgid "Unknown command `%s'.\n" -msgstr "" - -#: grub-core/lib/arg.c:31 -msgid "Display this help and exit." -msgstr "" - -#: grub-core/lib/arg.c:33 -msgid "Display the usage of this command and exit." -msgstr "" - -#: grub-core/lib/arg.c:362 -#, c-format -msgid "missing mandatory option for `%s'" -msgstr "" - -#: grub-core/lib/arg.c:384 -#, c-format -msgid "the argument `%s' requires an integer" -msgstr "" - -#: grub-core/lib/arg.c:407 -#, c-format -msgid "" -"a value was assigned to the argument `%s' while it doesn't require an " -"argument" -msgstr "" - -#: grub-core/lib/backtrace.c:64 -msgid "Print backtrace." -msgstr "" - -#: grub-core/lib/gnulib/argp-help.c:149 -#, c-format -msgid "ARGP_HELP_FMT: %s value is less than or equal to %s" -msgstr "" - -#: grub-core/lib/gnulib/argp-help.c:225 -#, c-format -msgid "%.*s: ARGP_HELP_FMT parameter requires a value" -msgstr "" - -#: grub-core/lib/gnulib/argp-help.c:235 -#, c-format -msgid "%.*s: Unknown ARGP_HELP_FMT parameter" -msgstr "" - -#: grub-core/lib/gnulib/argp-help.c:248 -#, c-format -msgid "Garbage in ARGP_HELP_FMT: %s" -msgstr "" - -#: grub-core/lib/gnulib/argp-help.c:1229 -msgid "" -"Mandatory or optional arguments to long options are also mandatory or " -"optional for any corresponding short options." -msgstr "" - -#: grub-core/lib/gnulib/argp-help.c:1620 -msgid " or: " -msgstr "" - -#: grub-core/lib/gnulib/argp-help.c:1632 -msgid " [OPTION...]" -msgstr "" - -#: grub-core/lib/gnulib/argp-help.c:1659 -#, c-format -msgid "Try '%s --help' or '%s --usage' for more information.\n" -msgstr "" - -#: grub-core/lib/gnulib/argp-help.c:1687 -#, c-format -msgid "Report bugs to %s.\n" -msgstr "" - -#: grub-core/lib/gnulib/argp-help.c:1888 grub-core/lib/gnulib/error.c:195 -msgid "Unknown system error" -msgstr "" - -#: grub-core/lib/gnulib/argp-parse.c:81 -msgid "give this help list" -msgstr "" - -#: grub-core/lib/gnulib/argp-parse.c:82 -msgid "give a short usage message" -msgstr "" - -#: grub-core/lib/gnulib/argp-parse.c:83 util/grub-mkfont.c:946 -msgid "NAME" -msgstr "" - -#: grub-core/lib/gnulib/argp-parse.c:84 -msgid "set the program name" -msgstr "" - -#: grub-core/lib/gnulib/argp-parse.c:86 -msgid "hang for SECS seconds (default 3600)" -msgstr "" - -#: grub-core/lib/gnulib/argp-parse.c:143 -msgid "print program version" -msgstr "afiÈ™ează versiunea programului" - -#: grub-core/lib/gnulib/argp-parse.c:160 -msgid "(PROGRAM ERROR) No version known!?" -msgstr "" - -#: grub-core/lib/gnulib/argp-parse.c:613 -#, c-format -msgid "%s: Too many arguments\n" -msgstr "" - -#: grub-core/lib/gnulib/argp-parse.c:759 -msgid "(PROGRAM ERROR) Option should have been recognized!?" -msgstr "" - -#: grub-core/lib/gnulib/getopt.c:278 -#, c-format -msgid "%s: option '%s%s' is ambiguous\n" -msgstr "" - -#: grub-core/lib/gnulib/getopt.c:284 -#, c-format -msgid "%s: option '%s%s' is ambiguous; possibilities:" -msgstr "" - -#: grub-core/lib/gnulib/getopt.c:319 -#, c-format -msgid "%s: unrecognized option '%s%s'\n" -msgstr "" - -#: grub-core/lib/gnulib/getopt.c:345 -#, c-format -msgid "%s: option '%s%s' doesn't allow an argument\n" -msgstr "" - -#: grub-core/lib/gnulib/getopt.c:360 -#, c-format -msgid "%s: option '%s%s' requires an argument\n" -msgstr "" - -#: grub-core/lib/gnulib/getopt.c:621 -#, c-format -msgid "%s: invalid option -- '%c'\n" -msgstr "" - -#: grub-core/lib/gnulib/getopt.c:636 grub-core/lib/gnulib/getopt.c:682 -#, c-format -msgid "%s: option requires an argument -- '%c'\n" -msgstr "" - -#: grub-core/lib/gnulib/openat-die.c:38 -#, c-format -msgid "unable to record current working directory" -msgstr "" - -#: grub-core/lib/gnulib/openat-die.c:57 -#, c-format -msgid "failed to return to initial working directory" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:135 grub-core/osdep/aros/hostdisk.c:523 -msgid "Success" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:138 -msgid "No match" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:141 -msgid "Invalid regular expression" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:144 -msgid "Invalid collation character" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:147 -msgid "Invalid character class name" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:150 -msgid "Trailing backslash" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:153 -msgid "Invalid back reference" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:156 -msgid "Unmatched [, [^, [:, [., or [=" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:159 -msgid "Unmatched ( or \\(" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:162 -msgid "Unmatched \\{" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:165 -msgid "Invalid content of \\{\\}" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:168 -msgid "Invalid range end" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:171 -msgid "Memory exhausted" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:174 -msgid "Invalid preceding regular expression" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:177 -msgid "Premature end of regular expression" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:180 -msgid "Regular expression too big" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:183 -msgid "Unmatched ) or \\)" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:531 -msgid "unknown regexp error" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:676 -msgid "No previous regular expression" -msgstr "" - -#: grub-core/lib/i386/halt.c:77 -msgid "GRUB doesn't know how to halt this machine yet!" -msgstr "" - -#: grub-core/lib/legacy_parse.c:75 -msgid "Default server is ${net_default_server}" -msgstr "" - -#: grub-core/lib/legacy_parse.c:844 grub-core/video/colors.c:296 -#: grub-core/video/colors.c:305 grub-core/video/colors.c:311 -#: grub-core/video/colors.c:327 util/render-label.c:84 util/render-label.c:98 -#, c-format -msgid "invalid color specification `%s'" -msgstr "" - -#: grub-core/lib/mips/arc/reboot.c:32 grub-core/lib/mips/loongson/reboot.c:61 -msgid "Reboot failed" -msgstr "" - -#: grub-core/lib/random.c:113 -msgid "[LENGTH]" -msgstr "" - -#: grub-core/lib/random.c:114 -msgid "Hexdump random data." -msgstr "" - -#: grub-core/loader/arm/linux.c:242 -msgid "device tree must be supplied (see `devicetree' command)" -msgstr "" - -#: grub-core/loader/arm/linux.c:334 -msgid "invalid zImage" -msgstr "" - -#: grub-core/loader/arm/linux.c:450 grub-core/loader/efi/fdt.c:144 -msgid "invalid device tree" -msgstr "" - -#: grub-core/loader/arm/linux.c:493 grub-core/loader/arm64/linux.c:383 -#: grub-core/loader/i386/linux.c:1125 grub-core/loader/i386/pc/linux.c:479 -#: grub-core/loader/i386/xen.c:962 grub-core/loader/i386/xen.c:964 -#: grub-core/loader/ia64/efi/linux.c:591 grub-core/loader/mips/linux.c:501 -#: grub-core/loader/powerpc/ieee1275/linux.c:383 -#: grub-core/loader/riscv/linux.c:50 -#: grub-core/loader/sparc64/ieee1275/linux.c:511 -msgid "Load Linux." -msgstr "" - -#: grub-core/loader/arm/linux.c:495 grub-core/loader/arm64/linux.c:385 -#: grub-core/loader/i386/linux.c:1127 grub-core/loader/i386/pc/linux.c:482 -#: grub-core/loader/i386/xen.c:966 grub-core/loader/ia64/efi/linux.c:594 -#: grub-core/loader/mips/linux.c:503 -#: grub-core/loader/powerpc/ieee1275/linux.c:385 -#: grub-core/loader/riscv/linux.c:52 -#: grub-core/loader/sparc64/ieee1275/linux.c:513 -msgid "Load initrd." -msgstr "" - -#. TRANSLATORS: DTB stands for device tree blob. -#: grub-core/loader/arm/linux.c:498 grub-core/loader/efi/fdt.c:169 -msgid "Load DTB file." -msgstr "" - -#: grub-core/loader/arm64/linux.c:59 -msgid "" -"plain image kernel not supported - rebuild with CONFIG_(U)EFI_STUB enabled" -msgstr "" - -#: grub-core/loader/arm64/xen_boot.c:156 -msgid "failed to get FDT" -msgstr "" - -#: grub-core/loader/arm64/xen_boot.c:418 -msgid "you need to load the Xen Hypervisor first" -msgstr "" - -#: grub-core/loader/arm64/xen_boot.c:516 -msgid "Load a xen hypervisor." -msgstr "" - -#: grub-core/loader/arm64/xen_boot.c:519 -msgid "Load a xen module." -msgstr "" - -#: grub-core/loader/efi/appleloader.c:231 -msgid "[OPTS]" -msgstr "" - -#. TRANSLATORS: This command is used on EFI to -#. switch to BIOS mode and boot the OS requiring -#. BIOS. -#: grub-core/loader/efi/appleloader.c:235 -msgid "Boot BIOS-based system." -msgstr "" - -#: grub-core/loader/efi/chainloader.c:421 -#: grub-core/loader/i386/pc/chainloader.c:303 -msgid "Load another boot loader." -msgstr "" - -#: grub-core/loader/i386/bsd.c:103 -msgid "Display output on all consoles." -msgstr "" - -#: grub-core/loader/i386/bsd.c:104 grub-core/loader/i386/bsd.c:138 -#: grub-core/loader/i386/bsd.c:171 -msgid "Use serial console." -msgstr "" - -#: grub-core/loader/i386/bsd.c:105 grub-core/loader/i386/bsd.c:131 -#: grub-core/loader/i386/bsd.c:159 -msgid "Ask for file name to reboot from." -msgstr "" - -#: grub-core/loader/i386/bsd.c:106 -msgid "Use CD-ROM as root." -msgstr "" - -#: grub-core/loader/i386/bsd.c:107 -msgid "Invoke user configuration routing." -msgstr "" - -#: grub-core/loader/i386/bsd.c:108 grub-core/loader/i386/bsd.c:135 -#: grub-core/loader/i386/bsd.c:162 -msgid "Enter in KDB on boot." -msgstr "" - -#: grub-core/loader/i386/bsd.c:109 -msgid "Use GDB remote debugger instead of DDB." -msgstr "" - -#: grub-core/loader/i386/bsd.c:110 -msgid "Disable all boot output." -msgstr "" - -#: grub-core/loader/i386/bsd.c:112 -msgid "Wait for keypress after every line of output." -msgstr "" - -#: grub-core/loader/i386/bsd.c:114 -msgid "Use compiled-in root device." -msgstr "" - -#: grub-core/loader/i386/bsd.c:115 grub-core/loader/i386/bsd.c:134 -#: grub-core/loader/i386/bsd.c:165 -msgid "Boot into single mode." -msgstr "" - -#: grub-core/loader/i386/bsd.c:116 grub-core/loader/i386/bsd.c:166 -msgid "Boot with verbose messages." -msgstr "" - -#: grub-core/loader/i386/bsd.c:132 grub-core/loader/i386/bsd.c:160 -msgid "Don't reboot, just halt." -msgstr "" - -#: grub-core/loader/i386/bsd.c:133 grub-core/loader/i386/bsd.c:161 -msgid "Change configured devices." -msgstr "" - -#. TRANSLATORS: "com" is static and not to be translated. It refers to -#. serial ports e.g. com1. -#. -#: grub-core/loader/i386/bsd.c:142 -msgid "comUNIT[,SPEED]" -msgstr "" - -#: grub-core/loader/i386/bsd.c:157 -msgid "Disable SMP." -msgstr "" - -#: grub-core/loader/i386/bsd.c:158 -msgid "Disable ACPI." -msgstr "" - -#: grub-core/loader/i386/bsd.c:164 -msgid "Don't display boot diagnostic messages." -msgstr "" - -#: grub-core/loader/i386/bsd.c:167 -msgid "Boot with debug messages." -msgstr "" - -#: grub-core/loader/i386/bsd.c:168 -msgid "Suppress normal output (warnings remain)." -msgstr "" - -#. TRANSLATORS: "com" is static and not to be translated. It refers to -#. serial ports e.g. com1. -#. -#: grub-core/loader/i386/bsd.c:175 -msgid "[ADDR|comUNIT][,SPEED]" -msgstr "" - -#: grub-core/loader/i386/bsd.c:489 grub-core/loader/i386/bsd.c:555 -msgid "name" -msgstr "" - -#: grub-core/loader/i386/bsd.c:489 grub-core/loader/i386/bsd.c:555 -msgid "type" -msgstr "" - -#: grub-core/loader/i386/bsd.c:489 grub-core/loader/i386/bsd.c:555 -msgid "addr" -msgstr "" - -#: grub-core/loader/i386/bsd.c:490 grub-core/loader/i386/bsd.c:556 -msgid "size" -msgstr "" - -#: grub-core/loader/i386/bsd.c:1147 grub-core/loader/i386/linux.c:466 -#: grub-core/loader/i386/xnu.c:1030 -msgid "Booting in blind mode" -msgstr "" - -#: grub-core/loader/i386/bsd.c:2137 -msgid "Load kernel of FreeBSD." -msgstr "" - -#: grub-core/loader/i386/bsd.c:2140 -msgid "Load kernel of OpenBSD." -msgstr "" - -#: grub-core/loader/i386/bsd.c:2143 -msgid "Load kernel of NetBSD." -msgstr "" - -#: grub-core/loader/i386/bsd.c:2147 -msgid "Load FreeBSD env." -msgstr "" - -#: grub-core/loader/i386/bsd.c:2150 -msgid "Load FreeBSD kernel module." -msgstr "" - -#: grub-core/loader/i386/bsd.c:2153 -msgid "Load NetBSD kernel module." -msgstr "" - -#: grub-core/loader/i386/bsd.c:2156 -msgid "Load NetBSD kernel module (ELF)." -msgstr "" - -#: grub-core/loader/i386/bsd.c:2159 -msgid "Load FreeBSD kernel module (ELF)." -msgstr "" - -#. TRANSLATORS: ramdisk isn't identifier, -#. it can be translated. -#: grub-core/loader/i386/bsd.c:2165 -msgid "Load kOpenBSD ramdisk." -msgstr "" - -#. TRANSLATORS: "payload" is a term used -#. by coreboot and must be translated in -#. sync with coreboot. If unsure, -#. let it untranslated. -#: grub-core/loader/i386/coreboot/chainloader.c:510 -msgid "Load another coreboot payload" -msgstr "" - -#: grub-core/loader/i386/linux.c:876 -msgid "Legacy `ask' parameter no longer supported." -msgstr "" - -#: grub-core/loader/i386/linux.c:892 grub-core/loader/i386/linux.c:902 -#: grub-core/loader/i386/linux.c:932 -#, c-format -msgid "%s is deprecated. Use set gfxpayload=%s before linux command instead.\n" -msgstr "" - -#. TRANSLATORS: "x" has to be entered in, like an identifier, -#. so please don't use better Unicode codepoints. -#: grub-core/loader/i386/linux.c:915 -#, c-format -msgid "" -"%s is deprecated. VGA mode %d isn't recognized. Use set " -"gfxpayload=WIDTHxHEIGHT[xDEPTH] before linux command instead.\n" -msgstr "" - -#: grub-core/loader/i386/pc/chainloader.c:302 -msgid "[--force|--bpb] FILE" -msgstr "" - -#: grub-core/loader/i386/pc/freedos.c:148 util/setup.c:293 -#, c-format -msgid "the size of `%s' is too large" -msgstr "" - -#: grub-core/loader/i386/pc/freedos.c:183 -msgid "Load FreeDOS kernel.sys." -msgstr "" - -#: grub-core/loader/i386/pc/ntldr.c:155 -msgid "Load NTLDR or BootMGR." -msgstr "" - -#. TRANSLATORS: it's about guessing which GRUB disk -#. is which Plan9 disk. If your language has no -#. word "mapping" you can use another word which -#. means that the GRUBDEVICE and PLAN9DEVICE are -#. actually the same device, just named differently -#. in OS and GRUB. -#: grub-core/loader/i386/pc/plan9.c:59 -msgid "Override guessed mapping of Plan9 devices." -msgstr "" - -#: grub-core/loader/i386/pc/plan9.c:60 -msgid "GRUBDEVICE=PLAN9DEVICE" -msgstr "" - -#: grub-core/loader/i386/pc/plan9.c:599 -msgid "KERNEL ARGS" -msgstr "" - -#: grub-core/loader/i386/pc/plan9.c:599 -msgid "Load Plan9 kernel." -msgstr "" - -#: grub-core/loader/i386/pc/pxechainloader.c:161 -msgid "Load a PXE image." -msgstr "" - -#: grub-core/loader/i386/pc/truecrypt.c:226 -msgid "Load Truecrypt ISO." -msgstr "" - -#: grub-core/loader/i386/xen.c:781 grub-core/loader/i386/xen.c:865 -msgid "initrd already loaded" -msgstr "" - -#: grub-core/loader/i386/xen.c:968 -msgid "Load module." -msgstr "" - -#: grub-core/loader/i386/xnu.c:1003 -msgid "Press any key to launch xnu" -msgstr "" - -#. TRANSLATORS: `device-properties' -#. is a variable name, -#. not a program. -#: grub-core/loader/i386/xnu.c:1159 -msgid "Load `device-properties' dump." -msgstr "" - -#: grub-core/loader/ia64/efi/linux.c:124 -msgid "Could not locate FPSWA driver" -msgstr "" - -#: grub-core/loader/ia64/efi/linux.c:132 -msgid "FPSWA protocol wasn't able to find the interface" -msgstr "" - -#: grub-core/loader/ia64/efi/linux.c:580 -msgid "No FPSWA found" -msgstr "" - -#: grub-core/loader/ia64/efi/linux.c:582 -#, c-format -msgid "FPSWA revision: %x\n" -msgstr "" - -#: grub-core/loader/ia64/efi/linux.c:591 -msgid "FILE [ARGS...]" -msgstr "" - -#: grub-core/loader/ia64/efi/linux.c:597 -msgid "Display FPSWA version." -msgstr "" - -#: grub-core/loader/multiboot.c:248 -msgid "WARNING: no console will be available to OS" -msgstr "" - -#: grub-core/loader/multiboot.c:450 -msgid "Load a multiboot 2 kernel." -msgstr "" - -#: grub-core/loader/multiboot.c:453 -msgid "Load a multiboot 2 module." -msgstr "" - -#: grub-core/loader/multiboot.c:456 -msgid "Load a multiboot kernel." -msgstr "" - -#: grub-core/loader/multiboot.c:459 -msgid "Load a multiboot module." -msgstr "" - -#: grub-core/loader/riscv/linux.c:30 grub-core/loader/riscv/linux.c:40 -msgid "Linux not supported yet" -msgstr "" - -#: grub-core/loader/xnu.c:1416 grub-core/term/gfxterm_background.c:45 -msgid "Background image mode." -msgstr "" - -#. TRANSLATORS: This refers to background image mode (stretched or -#. in left-top corner). Note that GRUB will accept only original -#. keywords stretch and normal, not the translated ones. -#. So please put both in translation -#. e.g. stretch(=%STRETCH%)|normal(=%NORMAL%). -#. The percents mark the translated version. Since many people -#. may not know the word stretch or normal I recommend -#. putting the translation either here or in "Background image mode." -#. string. -#: grub-core/loader/xnu.c:1416 grub-core/term/gfxterm_background.c:55 -msgid "stretch|normal" -msgstr "" - -#: grub-core/loader/xnu.c:1482 -msgid "Load XNU image." -msgstr "" - -#: grub-core/loader/xnu.c:1484 -msgid "Load 64-bit XNU image." -msgstr "" - -#: grub-core/loader/xnu.c:1486 -msgid "Load XNU extension package." -msgstr "" - -#: grub-core/loader/xnu.c:1488 -msgid "Load XNU extension." -msgstr "" - -#. TRANSLATORS: OSBundleRequired is a -#. variable name in xnu extensions -#. manifests. It behaves mostly like -#. GNU/Linux runlevels. -#. -#: grub-core/loader/xnu.c:1495 -msgid "DIRECTORY [OSBundleRequired]" -msgstr "" - -#. TRANSLATORS: There are many extensions -#. in extension directory. -#: grub-core/loader/xnu.c:1498 -msgid "Load XNU extension directory." -msgstr "" - -#. TRANSLATORS: ramdisk here isn't identifier. It can be translated. -#: grub-core/loader/xnu.c:1501 -msgid "Load XNU ramdisk. It will be available in OS as md0." -msgstr "" - -#: grub-core/loader/xnu.c:1505 -msgid "Load a splash image for XNU." -msgstr "" - -#: grub-core/loader/xnu.c:1510 -msgid "Load an image of hibernated XNU." -msgstr "" - -#: grub-core/mmap/mmap.c:538 -msgid "ADDR1,MASK1[,ADDR2,MASK2[,...]]" -msgstr "" - -#: grub-core/mmap/mmap.c:539 -msgid "Declare memory regions as faulty (badram)." -msgstr "" - -#: grub-core/mmap/mmap.c:541 -msgid "FROM[K|M|G] TO[K|M|G]" -msgstr "" - -#: grub-core/mmap/mmap.c:542 -msgid "Remove any memory regions in specified range." -msgstr "" - -#: grub-core/net/bootp.c:653 -msgid "four arguments expected" -msgstr "" - -#: grub-core/net/bootp.c:661 grub-core/net/net.c:1155 -#, c-format -msgid "unrecognised network interface `%s'" -msgstr "" - -#: grub-core/net/bootp.c:664 -msgid "no DHCP info found" -msgstr "" - -#: grub-core/net/bootp.c:674 -msgid "no DHCP options found" -msgstr "" - -#: grub-core/net/bootp.c:682 -msgid "invalid DHCP option code" -msgstr "" - -#: grub-core/net/bootp.c:686 -#, c-format -msgid "no DHCP option %u found" -msgstr "" - -#: grub-core/net/bootp.c:743 -#, c-format -msgid "unrecognised DHCP option format specification `%s'" -msgstr "" - -#: grub-core/net/bootp.c:767 -msgid "no network card found" -msgstr "" - -#: grub-core/net/bootp.c:859 grub-core/net/net.c:389 -#, c-format -msgid "couldn't autoconfigure %s" -msgstr "" - -#: grub-core/net/bootp.c:873 grub-core/net/bootp.c:876 -msgid "[CARD]" -msgstr "" - -#: grub-core/net/bootp.c:874 -msgid "perform a bootp autoconfiguration" -msgstr "" - -#: grub-core/net/bootp.c:877 -msgid "perform a DHCP autoconfiguration" -msgstr "" - -#: grub-core/net/bootp.c:879 -msgid "VAR INTERFACE NUMBER DESCRIPTION" -msgstr "" - -#: grub-core/net/bootp.c:880 -msgid "" -"retrieve DHCP option and save it into VAR. If VAR is - then print the value." -msgstr "" - -#: grub-core/net/dns.c:459 -msgid "no DNS servers configured" -msgstr "" - -#: grub-core/net/dns.c:522 -msgid "domain name component is too long" -msgstr "" - -#: grub-core/net/dns.c:618 grub-core/net/dns.c:666 -msgid "no DNS record found" -msgstr "" - -#: grub-core/net/dns.c:626 -msgid "no DNS reply received" -msgstr "" - -#: grub-core/net/dns.c:682 -msgid "only ipv4" -msgstr "" - -#: grub-core/net/dns.c:686 -msgid "only ipv6" -msgstr "" - -#: grub-core/net/dns.c:690 -msgid "prefer ipv4" -msgstr "" - -#: grub-core/net/dns.c:694 -msgid "prefer ipv6" -msgstr "" - -#: grub-core/net/dns.c:759 -msgid "ADDRESS DNSSERVER" -msgstr "" - -#: grub-core/net/dns.c:760 -msgid "Perform a DNS lookup" -msgstr "" - -#: grub-core/net/dns.c:762 grub-core/net/dns.c:765 -msgid "DNSSERVER" -msgstr "" - -#: grub-core/net/dns.c:763 -msgid "Add a DNS server" -msgstr "" - -#: grub-core/net/dns.c:766 -msgid "Remove a DNS server" -msgstr "" - -#: grub-core/net/dns.c:768 -msgid "List DNS servers" -msgstr "" - -#: grub-core/net/drivers/efi/efinet.c:49 grub-core/net/drivers/efi/efinet.c:65 -#: grub-core/net/drivers/efi/efinet.c:77 grub-core/net/drivers/emu/emunet.c:62 -#: grub-core/net/drivers/i386/pc/pxe.c:273 -#: grub-core/net/drivers/ieee1275/ofnet.c:75 -#: grub-core/net/drivers/uboot/ubootnet.c:62 -msgid "couldn't send network packet" -msgstr "" - -#: grub-core/net/drivers/ieee1275/ofnet.c:326 -#: grub-core/net/drivers/ieee1275/ofnet.c:359 -msgid "interpret is not supported" -msgstr "" - -#: grub-core/net/drivers/ieee1275/ofnet.c:336 -msgid "alloc-mem failed" -msgstr "" - -#: grub-core/net/drivers/ieee1275/ofnet.c:370 -msgid "free-mem failed" -msgstr "" - -#: grub-core/net/http.c:105 -msgid "unsupported HTTP response" -msgstr "" - -#. TRANSLATORS: GRUB HTTP code is pretty young. So even perfectly -#. valid answers like 403 will trigger this very generic message. -#: grub-core/net/http.c:126 -#, c-format -msgid "unsupported HTTP error %d: %s" -msgstr "" - -#: grub-core/net/http.c:429 grub-core/net/tftp.c:420 -#, c-format -msgid "time out opening `%s'" -msgstr "" - -#: grub-core/net/net.c:179 -msgid "timeout: could not resolve hardware address" -msgstr "" - -#: grub-core/net/net.c:548 -#, c-format -msgid "unresolvable address %s" -msgstr "" - -#: grub-core/net/net.c:594 -#, c-format -msgid "unrecognised network address `%s'" -msgstr "" - -#: grub-core/net/net.c:661 -msgid "destination unreachable" -msgstr "" - -#. TRANSLATORS: route loop is a condition when e.g. -#. to contact server A you need to go through B -#. and to contact B you need to go through A. -#: grub-core/net/net.c:684 -msgid "route loop detected" -msgstr "" - -#: grub-core/net/net.c:700 -msgid "address not found" -msgstr "" - -#: grub-core/net/net.c:704 -msgid "you can't delete this address" -msgstr "" - -#: grub-core/net/net.c:776 grub-core/net/net.c:792 -#, c-format -msgid "Unsupported hw address type %d\n" -msgstr "" - -#: grub-core/net/net.c:813 -#, c-format -msgid "Unsupported address type %d\n" -msgstr "" - -#: grub-core/net/net.c:1017 grub-core/net/net.c:1131 -msgid "three arguments expected" -msgstr "" - -#: grub-core/net/net.c:1023 -msgid "card not found" -msgstr "" - -#. TRANSLATORS: it refers to the network address. -#: grub-core/net/net.c:1167 -msgid "temporary" -msgstr "" - -#: grub-core/net/net.c:1190 -#, c-format -msgid "Unknown address type %d\n" -msgstr "" - -#: grub-core/net/net.c:1298 -msgid "no server is specified" -msgstr "" - -#: grub-core/net/net.c:1637 -#, c-format -msgid "timeout reading `%s'" -msgstr "" - -#. TRANSLATORS: HWADDRESS stands for -#. "hardware address". -#: grub-core/net/net.c:1762 -msgid "SHORTNAME CARD ADDRESS [HWADDRESS]" -msgstr "" - -#: grub-core/net/net.c:1763 -msgid "Add a network address." -msgstr "" - -#: grub-core/net/net.c:1766 -msgid "[CARD [HWADDRESS]]" -msgstr "" - -#: grub-core/net/net.c:1767 -msgid "Perform an IPV6 autoconfiguration" -msgstr "" - -#: grub-core/net/net.c:1770 grub-core/net/net.c:1777 -msgid "SHORTNAME" -msgstr "" - -#: grub-core/net/net.c:1771 -msgid "Delete a network address." -msgstr "" - -#. TRANSLATORS: "gw" is a keyword. -#: grub-core/net/net.c:1774 -msgid "SHORTNAME NET [INTERFACE| gw GATEWAY]" -msgstr "" - -#: grub-core/net/net.c:1775 -msgid "Add a network route." -msgstr "" - -#: grub-core/net/net.c:1778 -msgid "Delete a network route." -msgstr "" - -#: grub-core/net/net.c:1780 -msgid "list network routes" -msgstr "" - -#: grub-core/net/net.c:1782 -msgid "list network cards" -msgstr "" - -#: grub-core/net/net.c:1784 -msgid "list network addresses" -msgstr "" - -#: grub-core/net/tcp.c:681 -msgid "connection refused" -msgstr "conexiune refuzată" - -#: grub-core/net/tcp.c:684 -msgid "connection timeout" -msgstr "conexiunea a expirat" - -#: grub-core/normal/auth.c:220 -msgid "Enter username: " -msgstr "IntroduceÈ›i numele de utilizator: " - -#: grub-core/normal/auth.c:269 -msgid "[USERLIST]" -msgstr "[LISTA_DE_UTILIZATORI]" - -#: grub-core/normal/auth.c:270 -msgid "Check whether user is in USERLIST." -msgstr "VerificaÈ›i dacă utilizatorul se află în LISTA_DE_UTILIZATORI." - -#: grub-core/normal/cmdline.c:174 grub-core/normal/menu_entry.c:1068 -msgid "Possible commands are:" -msgstr "Comenzile posibile sunt:" - -#: grub-core/normal/cmdline.c:177 grub-core/normal/menu_entry.c:1072 -msgid "Possible devices are:" -msgstr "Dispozitivele posibile sunt:" - -#: grub-core/normal/cmdline.c:180 grub-core/normal/menu_entry.c:1076 -msgid "Possible files are:" -msgstr "FiÈ™ierele posibile sunt:" - -#: grub-core/normal/cmdline.c:183 grub-core/normal/menu_entry.c:1080 -msgid "Possible partitions are:" -msgstr "PartiÈ›iile posibile sunt:" - -#: grub-core/normal/cmdline.c:186 grub-core/normal/menu_entry.c:1084 -msgid "Possible arguments are:" -msgstr "Argumentele posibile sunt:" - -#. TRANSLATORS: this message is used if none of above matches. -#. This shouldn't happen but please use the general term for -#. "thing" or "object". -#: grub-core/normal/cmdline.c:192 grub-core/normal/menu_entry.c:1088 -msgid "Possible things are:" -msgstr "Lucrurile posibile sunt:" - -#: grub-core/normal/color.c:81 -#, c-format -msgid "Warning: syntax error (missing slash) in `%s'\n" -msgstr "Avertisment: eroare de sintaxă (lipseÈ™te un slash) în „%sâ€\n" - -#: grub-core/normal/color.c:90 -#, c-format -msgid "Warning: invalid foreground color `%s'\n" -msgstr "Avertisment: culoare de prim-plan nevalidă „%sâ€\n" - -#: grub-core/normal/color.c:96 -#, c-format -msgid "Warning: invalid background color `%s'\n" -msgstr "Avertisment: culoare de fundal nevalidă „%sâ€\n" - -#: grub-core/normal/context.c:206 -msgid "ENVVAR [ENVVAR] ..." -msgstr "" - -#: grub-core/normal/context.c:207 -msgid "Export variables." -msgstr "Exportă variabilele." - -#: grub-core/normal/datetime.c:25 -msgid "Sunday" -msgstr "Duminică" - -#: grub-core/normal/datetime.c:26 -msgid "Monday" -msgstr "Luni" - -#: grub-core/normal/datetime.c:27 -msgid "Tuesday" -msgstr "MarÅ£i" - -#: grub-core/normal/datetime.c:28 -msgid "Wednesday" -msgstr "Miercuri" - -#: grub-core/normal/datetime.c:29 -msgid "Thursday" -msgstr "Joi" - -#: grub-core/normal/datetime.c:30 -msgid "Friday" -msgstr "Vineri" - -#: grub-core/normal/datetime.c:31 -msgid "Saturday" -msgstr "Sâmbătă" - -#: grub-core/normal/dyncmd.c:187 -msgid "module isn't loaded" -msgstr "" - -#: grub-core/normal/main.c:211 -#, c-format -msgid "GNU GRUB version %s" -msgstr "GNU GRUB versiunea %s" - -#: grub-core/normal/main.c:360 -msgid "ESC at any time exits." -msgstr "ESC oricând pentru a ieÈ™i." - -#: grub-core/normal/main.c:363 -#, c-format -msgid "" -"Minimal BASH-like line editing is supported. For the first word, TAB lists " -"possible command completions. Anywhere else TAB lists possible device or " -"file completions. %s" -msgstr "" - -#. TRANSLATORS: it's command line prompt. -#: grub-core/normal/main.c:395 -msgid ">" -msgstr "" - -#. TRANSLATORS: it's command line prompt. -#: grub-core/normal/main.c:398 -msgid "grub>" -msgstr "" - -#: grub-core/normal/main.c:518 -msgid "Clear the screen." -msgstr "Curăță ecranul." - -#: grub-core/normal/main.c:527 -msgid "Enter normal mode." -msgstr "Intră în modul normal." - -#: grub-core/normal/main.c:529 -msgid "Exit from normal mode." -msgstr "IeÈ™ire din modul normal." - -#: grub-core/normal/menu.c:66 grub-core/normal/menu_entry.c:1449 -msgid "Press any key to continue..." -msgstr "ApăsaÈ›i orice tastă pentru a continua..." - -#: grub-core/normal/menu.c:815 -#, c-format -msgid "Booting `%s'" -msgstr "Se iniÈ›ializează „%sâ€" - -#: grub-core/normal/menu.c:827 -#, c-format -msgid "Falling back to `%s'" -msgstr "" - -#: grub-core/normal/menu.c:843 -msgid "Failed to boot both default and fallback entries.\n" -msgstr "" - -#: grub-core/normal/menu_entry.c:1171 -msgid "Booting a command list" -msgstr "" - -#: grub-core/normal/menu_text.c:160 -msgid "" -"Minimum Emacs-like screen editing is supported. TAB lists completions. Press " -"Ctrl-x or F10 to boot, Ctrl-c or F2 for a command-line or ESC to discard " -"edits and return to the GRUB menu." -msgstr "" -"Editare minimă în stilul Emacs este suportată. TAB listează completări. " -"ApăsaÈ›i Ctrl-x sau F10 pentru a iniÈ›ializa sistemul (boot), Ctrl-c sau F2 " -"pentru o linie de comandă sau ESC pentru a renunÈ›a la modificări È™i a reveni " -"în meniul GRUB." - -#: grub-core/normal/menu_text.c:170 -#, c-format -msgid "Use the %C and %C keys to select which entry is highlighted." -msgstr "" -"UtilizaÈ›i tastele %C È™i %C pentru a selecta care intrare este evidenÈ›iată." - -#. TRANSLATORS: that's the list of binary unit prefixes. -#: grub-core/normal/misc.c:38 -msgid "B" -msgstr "" - -#: grub-core/normal/misc.c:38 -msgid "KiB" -msgstr "" - -#: grub-core/normal/misc.c:38 -msgid "MiB" -msgstr "" - -#: grub-core/normal/misc.c:38 -msgid "GiB" -msgstr "" - -#: grub-core/normal/misc.c:38 -msgid "TiB" -msgstr "" - -#: grub-core/normal/misc.c:38 -msgid "PiB" -msgstr "" - -#. TRANSLATORS: that's the list of binary unit prefixes. -#: grub-core/normal/misc.c:40 -msgid "K" -msgstr "" - -#: grub-core/normal/misc.c:40 -msgid "M" -msgstr "" - -#: grub-core/normal/misc.c:40 -msgid "G" -msgstr "" - -#: grub-core/normal/misc.c:40 -msgid "T" -msgstr "" - -#: grub-core/normal/misc.c:40 -msgid "P" -msgstr "" - -#. TRANSLATORS: that's the list of binary unit prefixes. -#: grub-core/normal/misc.c:42 -msgid "B/s" -msgstr "" - -#: grub-core/normal/misc.c:42 -msgid "KiB/s" -msgstr "" - -#: grub-core/normal/misc.c:42 -msgid "MiB/s" -msgstr "" - -#: grub-core/normal/misc.c:42 -msgid "GiB/s" -msgstr "" - -#: grub-core/normal/misc.c:42 -msgid "TiB/s" -msgstr "" - -#: grub-core/normal/misc.c:42 -msgid "PiB/s" -msgstr "" - -#: grub-core/normal/misc.c:96 -#, c-format -msgid "Partition %s:" -msgstr "" - -#: grub-core/normal/misc.c:101 -#, c-format -msgid "Device %s:" -msgstr "" - -#: grub-core/normal/misc.c:107 -msgid "Filesystem cannot be accessed" -msgstr "" - -#: grub-core/normal/misc.c:121 -#, c-format -msgid "Filesystem type %s" -msgstr "" - -#: grub-core/normal/misc.c:131 -#, c-format -msgid "- Label `%s'" -msgstr "" - -#. TRANSLATORS: Arguments are year, month, day, hour, minute, -#. second, day of the week (translated). -#: grub-core/normal/misc.c:148 -#, c-format -msgid "- Last modification time %d-%02d-%02d %02d:%02d:%02d %s" -msgstr "" - -#: grub-core/normal/misc.c:171 -msgid "No known filesystem detected" -msgstr "" - -#: grub-core/normal/misc.c:174 -#, c-format -msgid " - Partition start at %llu%sKiB" -msgstr "" - -#: grub-core/normal/misc.c:178 -#, c-format -msgid " - Sector size %uB" -msgstr "" - -#: grub-core/normal/misc.c:180 -msgid " - Total size unknown" -msgstr "" - -#: grub-core/normal/misc.c:182 -#, c-format -msgid " - Total size %llu%sKiB" -msgstr "" - -#. TRANSLATORS: Replace dot with appropriate decimal separator for -#. your language. -#: grub-core/normal/misc.c:186 -msgid ".5" -msgstr ".5" - -#. TRANSLATORS: This has to fit on one line. It's ok to include few -#. words but don't write poems. -#: grub-core/normal/term.c:82 -msgid "--MORE--" -msgstr "--MAI MULT--" - -#: grub-core/osdep/aros/config.c:92 grub-core/osdep/unix/config.c:137 -#: grub-core/osdep/windows/config.c:55 -#, c-format -msgid "cannot open configuration file `%s': %s" -msgstr "" - -#: grub-core/osdep/basic/compress.c:8 grub-core/osdep/basic/compress.c:14 -#: grub-core/osdep/basic/compress.c:20 -msgid "no compression is available for your platform" -msgstr "" - -#: grub-core/osdep/basic/no_platform.c:30 -#: grub-core/osdep/windows/platform.c:418 -msgid "no IEEE1275 routines are available for your platform" -msgstr "" - -#: grub-core/osdep/basic/no_platform.c:38 -msgid "no EFI routines are available for your platform" -msgstr "" - -#: grub-core/osdep/basic/no_platform.c:45 -#: grub-core/osdep/windows/platform.c:425 -msgid "no SGI routines are available for your platform" -msgstr "" - -#. TRANSLATORS: The OS itself may very well have a random -#. number generator but GRUB doesn't know how to access it. -#: grub-core/osdep/basic/random.c:42 -msgid "no random number generator is available for your OS" -msgstr "" - -#: grub-core/osdep/devmapper/getroot.c:81 -msgid "Failed to create `device-mapper' tree" -msgstr "" - -#: grub-core/osdep/devmapper/getroot.c:197 -#: grub-core/osdep/freebsd/getroot.c:202 -#, c-format -msgid "can't mount encrypted volume `%s': %s" -msgstr "" - -#. TRANSLATORS: geom is the name of (k)FreeBSD device framework. -#. Usually left untranslated. -#. -#: grub-core/osdep/freebsd/getroot.c:82 grub-core/osdep/freebsd/getroot.c:164 -#: grub-core/osdep/freebsd/getroot.c:258 grub-core/osdep/freebsd/getroot.c:316 -msgid "couldn't open geom" -msgstr "" - -#: grub-core/osdep/freebsd/getroot.c:182 grub-core/osdep/freebsd/getroot.c:277 -msgid "couldn't find geli consumer" -msgstr "" - -#: grub-core/osdep/freebsd/getroot.c:282 -msgid "couldn't retrieve geli UUID" -msgstr "" - -#. TRANSLATORS: geom is the name of (k)FreeBSD device framework. -#. Usually left untranslated. "part" is the identifier of one of its -#. classes. -#: grub-core/osdep/freebsd/getroot.c:325 -msgid "couldn't find geom `part' class" -msgstr "" - -#: grub-core/osdep/freebsd/hostdisk.c:72 grub-core/osdep/linux/hostdisk.c:93 -msgid "unaligned device size" -msgstr "" - -#: grub-core/osdep/generic/blocklist.c:56 -#, c-format -msgid "attempting to read the core image `%s' from GRUB" -msgstr "" - -#: grub-core/osdep/generic/blocklist.c:57 -#, c-format -msgid "attempting to read the core image `%s' from GRUB again" -msgstr "" - -#: grub-core/osdep/generic/blocklist.c:115 -#, c-format -msgid "cannot read `%s' correctly" -msgstr "" - -#: grub-core/osdep/generic/blocklist.c:126 -msgid "failed to read the sectors of the core image" -msgstr "" - -#. TRANSLATORS: On GNU/Hurd, a "translator" is similar to a filesystem -#. mount, but handled by a userland daemon, whose invocation command line -#. is being fetched here. First %s is the file being looked at (for which -#. we are fetching the "translator" command line), second %s is the error -#. message. -#. -#: grub-core/osdep/hurd/getroot.c:79 -#, c-format -msgid "cannot get translator command line for path `%s': %s" -msgstr "" - -#: grub-core/osdep/hurd/getroot.c:82 -#, c-format -msgid "translator command line is empty for path `%s'" -msgstr "" - -#. TRANSLATORS: we expect to get something like -#. /hurd/foobar --option1 --option2=baz /dev/something -#. -#: grub-core/osdep/hurd/getroot.c:98 -#, c-format -msgid "" -"translator `%s' for path `%s' has several non-option words, at least `%s' " -"and `%s'" -msgstr "" - -#. TRANSLATORS: we expect to get something like -#. /hurd/foobar --option1 --option2=baz /dev/something -#. -#: grub-core/osdep/hurd/getroot.c:109 -#, c-format -msgid "" -"translator `%s' for path `%s' is given only options, cannot find device part" -msgstr "" - -#: grub-core/osdep/hurd/hostdisk.c:73 -#, c-format -msgid "Storage information for `%s' does not include type" -msgstr "" - -#: grub-core/osdep/hurd/hostdisk.c:75 -#, c-format -msgid "`%s' is not a local disk" -msgstr "" - -#: grub-core/osdep/hurd/hostdisk.c:78 -#, c-format -msgid "" -"Storage information for `%s' indicates neither a plain partition nor a plain " -"disk" -msgstr "" - -#: grub-core/osdep/linux/blocklist.c:81 grub-core/osdep/linux/blocklist.c:96 -#: grub-core/osdep/linux/blocklist.c:122 -#, c-format -msgid "can't retrieve blocklists: %s" -msgstr "" - -#: grub-core/osdep/linux/blocklist.c:84 -msgid "blocksize is not divisible by 512" -msgstr "" - -#: grub-core/osdep/linux/blocklist.c:86 -msgid "invalid zero blocksize" -msgstr "" - -#: grub-core/osdep/linux/blocklist.c:90 util/setup.c:744 -msgid "can't retrieve blocklists" -msgstr "" - -#: grub-core/osdep/linux/getroot.c:154 -#, c-format -msgid "ioctl RAID_VERSION error: %s" -msgstr "" - -#: grub-core/osdep/linux/getroot.c:160 grub-core/osdep/linux/getroot.c:164 -#, c-format -msgid "unsupported RAID version: %d.%d" -msgstr "versiune RAID nesuportată: %d.%d" - -#: grub-core/osdep/linux/getroot.c:169 -#, c-format -msgid "ioctl GET_ARRAY_INFO error: %s" -msgstr "" - -#: grub-core/osdep/linux/getroot.c:178 -#, c-format -msgid "ioctl GET_DISK_INFO error: %s" -msgstr "" - -#: grub-core/osdep/linux/getroot.c:608 grub-core/osdep/linux/getroot.c:678 -#: grub-core/osdep/linux/hostdisk.c:126 grub-core/osdep/unix/getroot.c:253 -#: grub-core/osdep/unix/getroot.c:642 grub-core/osdep/unix/platform.c:92 -#: grub-core/osdep/unix/platform.c:100 -#, c-format -msgid "Unable to open stream from %s: %s" -msgstr "" - -#: grub-core/osdep/linux/getroot.c:1033 -#, c-format -msgid "unknown kind of RAID device `%s'" -msgstr "" - -#: grub-core/osdep/linux/ofpath.c:181 -#, c-format -msgid "`obppath' not found in parent dirs of `%s', no IEEE1275 name discovery" -msgstr "" - -#: grub-core/osdep/linux/ofpath.c:222 grub-core/osdep/unix/getroot.c:505 -#: grub-core/osdep/unix/getroot.c:529 grub-core/osdep/unix/relpath.c:49 -#: util/grub-install.c:984 util/grub-install.c:1331 util/grub-probe.c:323 -#, c-format -msgid "failed to get canonical path of `%s'" -msgstr "" - -#: grub-core/osdep/linux/ofpath.c:740 -#, c-format -msgid "unknown device type %s" -msgstr "" - -#: grub-core/osdep/linux/ofpath.c:758 util/ieee1275/grub-ofpathname.c:39 -#, c-format -msgid "Usage: %s DEVICE\n" -msgstr "" - -#: grub-core/osdep/unix/exec.c:86 grub-core/osdep/unix/exec.c:172 -#: grub-core/osdep/unix/exec.c:217 -#, c-format -msgid "Unable to fork: %s" -msgstr "" - -#: grub-core/osdep/unix/exec.c:166 grub-core/osdep/unix/exec.c:211 -#, c-format -msgid "Unable to create pipe: %s" -msgstr "" - -#: grub-core/osdep/unix/getroot.c:370 -msgid "cannot save the original directory" -msgstr "" - -#: grub-core/osdep/unix/getroot.c:423 grub-core/osdep/unix/getroot.c:480 -#: grub-core/osdep/unix/getroot.c:489 -msgid "cannot restore the original directory" -msgstr "" - -#. TRANSLATORS: "stat" comes from the name of POSIX function. -#: grub-core/osdep/unix/getroot.c:551 grub-core/osdep/unix/hostdisk.c:61 -#: grub-core/osdep/unix/relpath.c:73 grub-core/osdep/unix/relpath.c:97 -#: util/getroot.c:160 util/getroot.c:162 util/grub-install.c:774 -#: util/grub-macbless.c:70 -#, c-format -msgid "cannot stat `%s': %s" -msgstr "" - -#: grub-core/osdep/unix/hostdisk.c:293 -#, c-format -msgid "cannot make temporary file: %s" -msgstr "" - -#: grub-core/osdep/unix/hostdisk.c:311 -#, c-format -msgid "cannot make temporary directory: %s" -msgstr "" - -#: grub-core/osdep/unix/platform.c:77 -#, c-format -msgid "" -"couldn't find IEEE1275 device path for %s.\n" -"You will have to set `boot-device' variable manually" -msgstr "" - -#. TRANSLATORS: This message is shown when required executable `%s' -#. isn't found. -#: grub-core/osdep/unix/platform.c:149 grub-core/osdep/unix/platform.c:189 -#, c-format -msgid "%s: not found" -msgstr "" - -#: grub-core/osdep/unix/platform.c:225 -#, c-format -msgid "" -"`nvsetenv' failed. \n" -"You will have to set `boot-device' variable manually. At the IEEE1275 " -"prompt, type:\n" -" %s\n" -msgstr "" - -#: grub-core/osdep/unix/platform.c:240 -msgid "You will have to set `SystemPartition' and `OSLoader' manually." -msgstr "" - -#. TRANSLATORS: canonical pathname is the -#. complete one e.g. /etc/fstab. It has -#. to contain `/' normally, if it doesn't -#. we're in trouble and throw this error. -#: grub-core/osdep/unix/relpath.c:90 -msgid "no `/' in canonical filename" -msgstr "" - -#: grub-core/osdep/windows/hostdisk.c:151 -msgid "cygwin_conv_path() failed" -msgstr "" - -#: grub-core/osdep/windows/hostdisk.c:501 util/grub-install.c:570 -msgid "couldn't retrieve random data" -msgstr "" - -#: grub-core/osdep/windows/platform.c:97 -msgid "Insufficient privileges to access firmware, assuming BIOS" -msgstr "" - -#: grub-core/osdep/windows/platform.c:225 -msgid "no EFI routines are available when running in BIOS mode" -msgstr "" - -#: grub-core/osdep/windows/platform.c:240 -msgid "unexpected EFI error" -msgstr "" - -#: grub-core/osdep/windows/platform.c:315 -msgid "Couldn't find a free BootNNNN slot" -msgstr "" - -#: grub-core/partmap/gpt.c:191 -msgid "" -"this GPT partition label contains no BIOS Boot Partition; embedding won't be " -"possible" -msgstr "" - -#: grub-core/partmap/gpt.c:196 -msgid "your BIOS Boot Partition is too small; embedding won't be possible" -msgstr "" - -#. TRANSLATORS: MBR gap and boot track is the same thing and is the space -#. between MBR and first partitition. If your language translates well only -#. "boot track", you can just use it everywhere. Next two messages are about -#. RAID controllers/software bugs which GRUB has to live with. Please spread -#. the message that these are bugs in other software and not merely -#. suboptimal behaviour. -#: grub-core/partmap/msdos.c:51 -#, c-format -msgid "" -"Sector %llu is already in use by raid controller `%s'; avoiding it. Please " -"ask the manufacturer not to store data in MBR gap" -msgstr "" - -#: grub-core/partmap/msdos.c:54 -#, c-format -msgid "" -"Sector %llu is already in use by the program `%s'; avoiding it. This " -"software may cause boot or other problems in future. Please ask its authors " -"not to store data in the boot track" -msgstr "" - -#: grub-core/partmap/msdos.c:384 -msgid "" -"other software is using the embedding area, and there is not enough room for " -"core.img. Such software is often trying to store data in a way that avoids " -"detection. We recommend you investigate" -msgstr "" - -#: grub-core/partmap/msdos.c:395 -msgid "" -"this msdos-style partition label has no post-MBR gap; embedding won't be " -"possible" -msgstr "" - -#: grub-core/partmap/msdos.c:404 -msgid "your embedding area is unusually small. core.img won't fit in it." -msgstr "" - -#: grub-core/parttool/msdospart.c:39 -msgid "Make partition active" -msgstr "" - -#: grub-core/parttool/msdospart.c:51 -msgid "not a primary partition" -msgstr "" - -#: grub-core/parttool/msdospart.c:69 -#, c-format -msgid "Partition %d is active now. \n" -msgstr "" - -#: grub-core/parttool/msdospart.c:74 -#, c-format -msgid "Cleared active flag on %d. \n" -msgstr "" - -#: grub-core/parttool/msdospart.c:87 -msgid "Change partition type" -msgstr "" - -#: grub-core/parttool/msdospart.c:88 -msgid "Set `hidden' flag in partition type" -msgstr "" - -#: grub-core/parttool/msdospart.c:130 -#, c-format -msgid "the partition type 0x%x isn't valid" -msgstr "" - -#. TRANSLATORS: In this case we're actually writing to the disk and actively -#. modifying partition type rather than just defining it. -#: grub-core/parttool/msdospart.c:137 -#, c-format -msgid "Setting partition type to 0x%x\n" -msgstr "" - -#. TRANSLATORS: 0 is a quantifier. "break" (similar to bash) -#. can be used e.g. to break 3 loops at once. -#. But asking it to break 0 loops makes no sense. -#: grub-core/script/execute.c:143 -msgid "can't break 0 loops" -msgstr "" - -#. TRANSLATORS: It's about not being -#. inside a function. "return" can be used only -#. in a function and this error occurs if it's used -#. anywhere else. -#: grub-core/script/execute.c:227 -msgid "not in function body" -msgstr "" - -#: grub-core/script/execute.c:371 -#, c-format -msgid "invalid variable name `%s'" -msgstr "" - -#: grub-core/script/execute.c:953 -msgid "cannot allocate command buffer" -msgstr "" - -#: grub-core/script/lexer.c:144 util/grub-fstest.c:330 -msgid "unexpected end of file" -msgstr "" - -#: grub-core/script/main.c:55 grub-core/script/main.c:57 -#: grub-core/script/main.c:59 grub-core/script/main.c:67 -msgid "[NUM]" -msgstr "" - -#: grub-core/script/main.c:55 -msgid "Exit from loops" -msgstr "" - -#: grub-core/script/main.c:57 -msgid "Continue loops" -msgstr "" - -#. TRANSLATORS: Positional arguments are -#. arguments $0, $1, $2, ... -#: grub-core/script/main.c:62 -msgid "Shift positional parameters." -msgstr "" - -#: grub-core/script/main.c:64 -msgid "[VALUE]..." -msgstr "[VALOARE]..." - -#: grub-core/script/main.c:65 -msgid "Set positional parameters." -msgstr "" - -#. TRANSLATORS: It's a command description -#. and "Return" is a verb, not a noun. The -#. command in question is "return" and -#. has exactly the same semanics as bash -#. equivalent. -#: grub-core/script/main.c:73 -msgid "Return from a function." -msgstr "" - -#: grub-core/term/gfxterm_background.c:176 -msgid "[-m (stretch|normal)] FILE" -msgstr "" - -#: grub-core/term/gfxterm_background.c:177 -msgid "Load background image for active terminal." -msgstr "" - -#: grub-core/term/gfxterm_background.c:182 util/grub-install.c:302 -#: util/grub-install.c:303 util/grub-mkrescue.c:107 util/grub-mkrescue.c:108 -#: util/grub-render-label.c:61 util/grub-render-label.c:63 -msgid "COLOR" -msgstr "" - -#: grub-core/term/gfxterm_background.c:183 -msgid "Set background color for active terminal." -msgstr "" - -#: grub-core/term/i386/coreboot/cbmemc.c:139 -msgid "Show CBMEM console content." -msgstr "" - -#: grub-core/term/serial.c:57 -msgid "Set the serial unit." -msgstr "" - -#: grub-core/term/serial.c:58 -msgid "Set the serial port address." -msgstr "" - -#: grub-core/term/serial.c:59 -msgid "Set the serial port speed." -msgstr "" - -#: grub-core/term/serial.c:60 -msgid "Set the serial port word length." -msgstr "" - -#: grub-core/term/serial.c:61 -msgid "Set the serial port parity." -msgstr "" - -#: grub-core/term/serial.c:62 -msgid "Set the serial port stop bits." -msgstr "" - -#: grub-core/term/serial.c:63 -msgid "Set the base frequency." -msgstr "" - -#: grub-core/term/serial.c:64 -msgid "Enable/disable RTS/CTS." -msgstr "" - -#: grub-core/term/serial.c:218 -#, c-format -msgid "serial port `%s' isn't found" -msgstr "" - -#: grub-core/term/serial.c:254 -msgid "unsupported serial port flow control" -msgstr "" - -#: grub-core/term/serial.c:429 -msgid "[OPTIONS...]" -msgstr "[OPÈšIUNI...]" - -#: grub-core/term/serial.c:430 -msgid "Configure serial port." -msgstr "" - -#: grub-core/term/terminfo.c:184 -#, c-format -msgid "unknown terminfo type `%s'" -msgstr "" - -#: grub-core/term/terminfo.c:668 -msgid "ASCII" -msgstr "ASCII" - -#: grub-core/term/terminfo.c:671 -msgid "UTF-8" -msgstr "UTF-8" - -#. TRANSLATORS: visually ordered UTF-8 is a non-compliant encoding -#. based on UTF-8 with right-to-left languages written in reverse. -#. Used on some terminals. Normal UTF-8 is refered as -#. "logically-ordered UTF-8" by opposition. -#: grub-core/term/terminfo.c:677 -msgid "visually-ordered UTF-8" -msgstr "" - -#: grub-core/term/terminfo.c:680 -msgid "Unknown encoding" -msgstr "Codare necunoscută" - -#: grub-core/term/terminfo.c:684 -msgid "Current terminfo types:" -msgstr "" - -#: grub-core/term/terminfo.c:699 -msgid "Terminal is ASCII-only [default]." -msgstr "" - -#: grub-core/term/terminfo.c:700 -msgid "Terminal is logical-ordered UTF-8." -msgstr "" - -#: grub-core/term/terminfo.c:701 -msgid "Terminal is visually-ordered UTF-8." -msgstr "" - -#: grub-core/term/terminfo.c:703 -msgid "Terminal has specified geometry." -msgstr "" - -#. TRANSLATORS: "x" has to be entered in, like an identifier, so please don't -#. use better Unicode codepoints. -#: grub-core/term/terminfo.c:706 -msgid "WIDTHxHEIGHT." -msgstr "" - -#: grub-core/term/terminfo.c:746 -msgid "incorrect terminal dimensions specification" -msgstr "" - -#: grub-core/term/terminfo.c:776 -#, c-format -msgid "terminal %s isn't found or it's not handled by terminfo" -msgstr "" - -#: grub-core/term/terminfo.c:785 -msgid "[[-a|-u|-v] [-g WxH] TERM [TYPE]]" -msgstr "" - -#: grub-core/term/terminfo.c:786 -msgid "Set terminfo type of TERM to TYPE.\n" -msgstr "" - -#. TRANSLATORS: this is the BLOCK-argument, not -#. environment block. -#: grub-core/tests/test_blockarg.c:49 -msgid "Print and execute block argument." -msgstr "" - -#. TRANSLATORS: We're speaking about bitmap images like -#. JPEG or PNG. -#: grub-core/video/bitmap.c:209 -#, c-format -msgid "bitmap file `%s' is of unsupported format" -msgstr "" - -#: grub-core/video/i386/pc/vbe.c:1191 -#, c-format -msgid " VBE info: version: %d.%d OEM software rev: %d.%d\n" -msgstr "" - -#: grub-core/video/i386/pc/vbe.c:1198 -#, c-format -msgid " total memory: %d KiB\n" -msgstr "" - -#: grub-core/video/video.c:596 grub-core/video/video.c:762 -msgid "no suitable video mode found" -msgstr "" - -#: include/grub/crypto.h:403 -msgid "access denied" -msgstr "" - -#: include/grub/util/install.h:30 include/grub/util/install.h:35 -msgid "MODULES" -msgstr "" - -#: include/grub/util/install.h:31 -msgid "pre-load specified modules MODULES" -msgstr "" - -#: include/grub/util/install.h:33 -msgid "embed a specific DTB" -msgstr "" - -#: include/grub/util/install.h:36 -msgid "install only MODULES and their dependencies [default=all]" -msgstr "" - -#: include/grub/util/install.h:37 -msgid "THEMES" -msgstr "" - -#: include/grub/util/install.h:38 -#, c-format -msgid "install THEMES [default=%s]" -msgstr "" - -#: include/grub/util/install.h:39 -msgid "FONTS" -msgstr "" - -#: include/grub/util/install.h:40 -#, c-format -msgid "install FONTS [default=%s]" -msgstr "" - -#: include/grub/util/install.h:41 -msgid "LOCALES" -msgstr "" - -#: include/grub/util/install.h:42 -msgid "install only LOCALES [default=all]" -msgstr "" - -#: include/grub/util/install.h:45 -msgid "compress GRUB files [optional]" -msgstr "" - -#: include/grub/util/install.h:48 util/grub-mkimage.c:83 -msgid "choose the compression to use for core image" -msgstr "" - -#. TRANSLATORS: platform here isn't identifier. It can be translated. -#: include/grub/util/install.h:51 include/grub/util/install.h:54 -#: util/grub-mkimage.c:66 -#, c-format -msgid "use images and modules under DIR [default=%s/]" -msgstr "" - -#: include/grub/util/install.h:57 -#, c-format -msgid "use translations under DIR [default=%s]" -msgstr "" - -#: include/grub/util/install.h:60 -#, c-format -msgid "use themes under DIR [default=%s]" -msgstr "" - -#: include/grub/util/install.h:65 util/grub-mkimage.c:78 -msgid "embed FILE as public key for signature checking" -msgstr "" - -#: util/editenv.c:59 util/grub-editenv.c:201 util/grub-install-common.c:535 -#: util/grub-mkimage.c:315 util/setup.c:791 -#, c-format -msgid "cannot sync `%s': %s" -msgstr "" - -#: util/editenv.c:64 -#, c-format -msgid "cannot rename the file %s to %s" -msgstr "" - -#: util/getroot.c:402 -#, c-format -msgid "disk does not exist, so falling back to partition device %s" -msgstr "" - -#: util/grub-editenv.c:45 util/grub-fstest.c:506 -msgid "Commands:" -msgstr "" - -#: util/grub-editenv.c:47 -msgid "Create a blank environment block file." -msgstr "" - -#: util/grub-editenv.c:49 -msgid "List the current variables." -msgstr "" - -#. TRANSLATORS: "set" is a keyword. It's a summary of "set" subcommand. -#: util/grub-editenv.c:51 -msgid "set [NAME=VALUE ...]" -msgstr "" - -#: util/grub-editenv.c:52 -msgid "Set variables." -msgstr "" - -#. TRANSLATORS: "unset" is a keyword. It's a summary of "unset" subcommand. -#: util/grub-editenv.c:54 -msgid "unset [NAME ...]" -msgstr "" - -#: util/grub-editenv.c:55 -msgid "Delete variables." -msgstr "" - -#: util/grub-editenv.c:57 -msgid "Options:" -msgstr "" - -#: util/grub-editenv.c:84 -msgid "You need to specify at least one command.\n" -msgstr "" - -#: util/grub-editenv.c:113 -msgid "FILENAME COMMAND" -msgstr "" - -#: util/grub-editenv.c:114 -msgid "Tool to edit environment block." -msgstr "" - -#: util/grub-editenv.c:116 -#, c-format -msgid "" -"If FILENAME is `-', the default value %s is used.\n" -"\n" -"There is no `delete' command; if you want to delete the whole environment\n" -"block, use `rm %s'." -msgstr "" - -#: util/grub-editenv.c:162 -msgid "invalid environment block" -msgstr "" - -#: util/grub-editenv.c:217 -#, c-format -msgid "invalid parameter %s" -msgstr "" - -#: util/grub-editenv.c:222 -msgid "environment block too small" -msgstr "" - -#: util/grub-fstest.c:107 -#, c-format -msgid "disk read fails at offset %lld, length %lld" -msgstr "" - -#: util/grub-fstest.c:138 -#, c-format -msgid "invalid skip value %lld" -msgstr "" - -#: util/grub-fstest.c:160 util/grub-fstest.c:246 -#, c-format -msgid "read error at offset %llu: %s" -msgstr "" - -#: util/grub-fstest.c:210 -#, c-format -msgid "cannot open OS file `%s': %s" -msgstr "" - -#: util/grub-fstest.c:225 util/misc.c:126 -#, c-format -msgid "cannot write to the stdout: %s" -msgstr "" - -#: util/grub-fstest.c:259 -#, c-format -msgid "compare fail at offset %llu" -msgstr "" - -#: util/grub-fstest.c:280 util/grub-fstest.c:314 -#, c-format -msgid "OS file %s open error: %s" -msgstr "" - -#: util/grub-fstest.c:402 util/grub-mount.c:392 -#, c-format -msgid "`loopback' command fails: %s" -msgstr "" - -#: util/grub-fstest.c:413 util/grub-mount.c:402 -#, c-format -msgid "`cryptomount' command fails: %s" -msgstr "" - -#: util/grub-fstest.c:474 util/grub-fstest.c:478 -msgid "couldn't retrieve UUID" -msgstr "" - -#: util/grub-fstest.c:507 -msgid "ls PATH" -msgstr "" - -#: util/grub-fstest.c:507 -msgid "List files in PATH." -msgstr "" - -#: util/grub-fstest.c:508 -msgid "cp FILE LOCAL" -msgstr "" - -#: util/grub-fstest.c:508 -msgid "Copy FILE to local file LOCAL." -msgstr "" - -#: util/grub-fstest.c:509 -msgid "cat FILE" -msgstr "" - -#: util/grub-fstest.c:509 -msgid "Copy FILE to standard output." -msgstr "" - -#: util/grub-fstest.c:510 -msgid "cmp FILE LOCAL" -msgstr "" - -#: util/grub-fstest.c:510 -msgid "Compare FILE with local file LOCAL." -msgstr "" - -#: util/grub-fstest.c:511 -msgid "hex FILE" -msgstr "" - -#: util/grub-fstest.c:511 -msgid "Show contents of FILE in hex." -msgstr "" - -#: util/grub-fstest.c:512 -msgid "crc FILE" -msgstr "" - -#: util/grub-fstest.c:512 -msgid "Get crc32 checksum of FILE." -msgstr "" - -#: util/grub-fstest.c:513 -msgid "blocklist FILE" -msgstr "" - -#: util/grub-fstest.c:513 -msgid "Display blocklist of FILE." -msgstr "" - -#: util/grub-fstest.c:514 -msgid "xnu_uuid DEVICE" -msgstr "" - -#: util/grub-fstest.c:514 -msgid "Compute XNU UUID of the device." -msgstr "" - -#. TRANSLATORS: bitmaps are images like e.g. in JPEG. -#: util/grub-fstest.c:517 util/grub-fstest.c:518 util/grub-fstest.c:519 -#: util/grub-mkfont.c:938 util/grub-mkfont.c:951 util/grub-mkfont.c:952 -#: util/grub-mkpasswd-pbkdf2.c:46 util/grub-mkpasswd-pbkdf2.c:47 -#: util/grub-mkpasswd-pbkdf2.c:48 -msgid "NUM" -msgstr "" - -#: util/grub-fstest.c:517 -msgid "Skip N bytes from output file." -msgstr "" - -#: util/grub-fstest.c:518 -msgid "Handle N bytes in output file." -msgstr "" - -#: util/grub-fstest.c:519 -msgid "Specify the number of input files." -msgstr "" - -#: util/grub-fstest.c:520 util/grub-mount.c:453 -msgid "Set debug environment variable." -msgstr "" - -#: util/grub-fstest.c:521 util/grub-mount.c:454 -msgid "Mount crypto devices." -msgstr "" - -#. TRANSLATORS: "prompt" is a keyword. -#: util/grub-fstest.c:524 util/grub-mount.c:457 -msgid "FILE|prompt" -msgstr "" - -#: util/grub-fstest.c:524 util/grub-mount.c:457 -msgid "Load zfs crypto key." -msgstr "" - -#: util/grub-fstest.c:526 -msgid "Uncompress data." -msgstr "" - -#: util/grub-fstest.c:605 -msgid "Invalid disk count.\n" -msgstr "" - -#. TRANSLATORS: disk count is optional but if it's there it must -#. be before disk list. So please don't imply disk count as mandatory. -#. -#: util/grub-fstest.c:613 -msgid "Disk count must precede disks list.\n" -msgstr "" - -#: util/grub-fstest.c:633 -msgid "No command is specified.\n" -msgstr "" - -#: util/grub-fstest.c:638 -msgid "Not enough parameters to command.\n" -msgstr "" - -#: util/grub-fstest.c:711 -#, c-format -msgid "Invalid command %s.\n" -msgstr "" - -#: util/grub-fstest.c:724 -msgid "IMAGE_PATH COMMANDS" -msgstr "" - -#: util/grub-fstest.c:725 util/grub-mount.c:553 -msgid "Debug tool for filesystem driver." -msgstr "" - -#: util/grub-glue-efi.c:53 -msgid "set input filename for 32-bit part." -msgstr "" - -#: util/grub-glue-efi.c:55 -msgid "set input filename for 64-bit part." -msgstr "" - -#: util/grub-glue-efi.c:57 util/grub-mklayout.c:55 util/grub-render-label.c:71 -msgid "set output filename. Default is STDOUT" -msgstr "" - -#: util/grub-glue-efi.c:94 util/grub-mklayout.c:476 -#: util/grub-mkpasswd-pbkdf2.c:86 util/grub-render-label.c:131 -msgid "[OPTIONS]" -msgstr "" - -#: util/grub-glue-efi.c:95 -msgid "Glue 32-bit and 64-bit binary into Apple universal one." -msgstr "" - -#: util/grub-glue-efi.c:116 -msgid "Missing input file\n" -msgstr "" - -#: util/grub-install-common.c:127 util/grub-install-common.c:151 -#, c-format -msgid "cannot copy `%s' to `%s': %s" -msgstr "" - -#: util/grub-install-common.c:147 -#, c-format -msgid "can't compress `%s' to `%s'" -msgstr "" - -#: util/grub-install-common.c:196 util/grub-install-common.c:552 -#: util/grub-install-common.c:579 util/grub-install-common.c:621 -#, c-format -msgid "cannot open directory `%s': %s" -msgstr "" - -#: util/grub-install-common.c:212 -#, c-format -msgid "cannot delete `%s': %s" -msgstr "" - -#: util/grub-install-common.c:324 util/grub-mkimage.c:209 -msgid "grub-mkimage is compiled without XZ support" -msgstr "" - -#: util/grub-install-common.c:332 util/grub-mkimage.c:217 -#, c-format -msgid "Unknown compression format %s" -msgstr "" - -#: util/grub-install-common.c:400 -#, c-format -msgid "Unrecognized compression `%s'" -msgstr "" - -#: util/grub-install-common.c:509 -#, c-format -msgid "unknown target format %s" -msgstr "" - -#: util/grub-install-common.c:700 -#, c-format -msgid "cannot find locale `%s'" -msgstr "" - -#: util/grub-install-common.c:939 -#, c-format -msgid "%s doesn't exist. Please specify --target or --directory" -msgstr "" - -#: util/grub-install-common.c:948 util/grub-install-common.c:951 -#, c-format -msgid "invalid modinfo file `%s'" -msgstr "" - -#: util/grub-install-common.c:966 -#, c-format -msgid "Unknown platform `%s-%s'" -msgstr "" - -#: util/grub-install.c:238 -msgid "More than one install device?" -msgstr "" - -#: util/grub-install.c:251 -#, c-format -msgid "" -"install GRUB images under the directory DIR/%s instead of the %s directory" -msgstr "" - -#: util/grub-install.c:256 util/grub-probe.c:734 -msgid "TARGET" -msgstr "" - -#. TRANSLATORS: "TARGET" as in "target platform". -#: util/grub-install.c:258 -#, c-format -msgid "install GRUB for TARGET platform [default=%s]; available targets: %s" -msgstr "" - -#. TRANSLATORS: "may break" doesn't just mean that option wouldn't have any -#. effect but that it will make the resulting install unbootable from HDD. -#. TRANSLATORS: The potential breakage isn't limited to floppies but it's -#. likely to make the install unbootable from HDD. -#: util/grub-install.c:267 util/grub-setup.c:94 -msgid "" -"make the drive also bootable as floppy (default for fdX devices). May break " -"on some BIOSes." -msgstr "" - -#: util/grub-install.c:270 -msgid "delete device map if it already exists" -msgstr "" - -#: util/grub-install.c:272 util/grub-setup.c:87 -msgid "install even if problems are detected" -msgstr "" - -#: util/grub-install.c:274 -msgid "use identifier file even if UUID is available" -msgstr "" - -#: util/grub-install.c:276 -msgid "" -"disk module to use (biosdisk or native). This option is only available on " -"BIOS target." -msgstr "" - -#: util/grub-install.c:279 -msgid "" -"don't update the `boot-device'/`Boot*' NVRAM variables. This option is only " -"available on EFI and IEEE1275 targets." -msgstr "" - -#: util/grub-install.c:282 util/grub-setup.c:89 -msgid "do not probe for filesystems in DEVICE" -msgstr "" - -#: util/grub-install.c:284 -msgid "do not install bootsector" -msgstr "" - -#: util/grub-install.c:286 util/grub-setup.c:96 -msgid "" -"Do not apply any reed-solomon codes when embedding core.img. This option is " -"only available on x86 BIOS targets." -msgstr "" - -#: util/grub-install.c:293 -msgid "" -"the installation device is removable. This option is only available on EFI." -msgstr "" - -#: util/grub-install.c:295 -msgid "ID" -msgstr "" - -#: util/grub-install.c:296 -msgid "the ID of bootloader. This option is only available on EFI and Macs." -msgstr "" - -#: util/grub-install.c:298 -msgid "use DIR as the EFI System Partition root." -msgstr "" - -#: util/grub-install.c:300 -msgid "use DIR for PPC MAC install." -msgstr "" - -#: util/grub-install.c:301 util/grub-mkrescue.c:106 -msgid "use FILE as font for label" -msgstr "" - -#: util/grub-install.c:302 util/grub-mkrescue.c:107 -msgid "use COLOR for label" -msgstr "" - -#: util/grub-install.c:303 util/grub-mkrescue.c:108 -msgid "use COLOR for label background" -msgstr "" - -#: util/grub-install.c:304 util/grub-mkrescue.c:110 -msgid "use STRING as product version" -msgstr "" - -#: util/grub-install.c:361 -msgid "[OPTION] [INSTALL_DEVICE]" -msgstr "" - -#: util/grub-install.c:362 -msgid "Install GRUB on your drive." -msgstr "" - -#: util/grub-install.c:363 -#, c-format -msgid "" -"INSTALL_DEVICE must be system device filename.\n" -"%s copies GRUB images into %s. On some platforms, it may also install GRUB " -"into the boot sector." -msgstr "" - -#: util/grub-install.c:672 -#, c-format -msgid "the drive %s is defined multiple times in the device map %s" -msgstr "" - -#: util/grub-install.c:878 -msgid "Unable to determine your platform. Use --target." -msgstr "" - -#: util/grub-install.c:891 -#, c-format -msgid "Installing for %s platform.\n" -msgstr "" - -#: util/grub-install.c:939 -msgid "install device isn't specified" -msgstr "" - -#: util/grub-install.c:1057 -msgid "cannot find EFI directory" -msgstr "" - -#: util/grub-install.c:1060 util/grub-install.c:1209 util/grub-install.c:1254 -#: util/grub-macbless.c:76 util/grub-probe.c:329 util/setup.c:316 -#, c-format -msgid "cannot find a device for %s (is /dev mounted?)" -msgstr "" - -#: util/grub-install.c:1069 util/grub-install.c:1217 util/grub-install.c:1270 -#: util/grub-install.c:1365 util/grub-macbless.c:80 util/grub-probe.c:372 -#, c-format -msgid "cannot find a GRUB drive for %s. Check your device.map" -msgstr "" - -#: util/grub-install.c:1087 -#, c-format -msgid "%s doesn't look like an EFI partition" -msgstr "" - -#: util/grub-install.c:1129 util/grub-install.c:1614 -msgid "You've found a bug" -msgstr "" - -#: util/grub-install.c:1231 -#, c-format -msgid "filesystem on %s is neither HFS nor HFS+" -msgstr "" - -#: util/grub-install.c:1299 -#, c-format -msgid "" -"attempt to install to encrypted disk without cryptodisk enabled. Set `%s' in " -"file `%s'" -msgstr "" - -#: util/grub-install.c:1410 util/grub-install.c:1772 util/grub-install.c:1872 -#, c-format -msgid "Can't create file: %s" -msgstr "" - -#: util/grub-install.c:1491 -msgid "no hints available for your platform. Expect reduced performance" -msgstr "" - -#. TRANSLATORS: This is a prefix in the log to indicate that usually -#. a command would be executed but due to an option was skipped. -#: util/grub-install.c:1702 -msgid "NOT RUNNING: " -msgstr "" - -#: util/grub-install.c:1806 -msgid "the chosen partition is not a PReP partition" -msgstr "" - -#: util/grub-install.c:1811 -msgid "failed to copy Grub to the PReP partition" -msgstr "" - -#: util/grub-install.c:1816 -#, c-format -msgid "" -"the PReP partition is not empty. If you are sure you want to use it, run dd " -"to clear it: `%s'" -msgstr "" - -#: util/grub-install.c:1888 util/grub-install.c:1932 -#, c-format -msgid "efibootmgr failed to register the boot entry: %s" -msgstr "" - -#: util/grub-install.c:1916 -msgid "EFI bootloader id isn't specified." -msgstr "" - -#: util/grub-install.c:1950 -msgid "WARNING: no platform-specific install was performed" -msgstr "" - -#: util/grub-install.c:1957 -msgid "Installation finished. No error reported." -msgstr "" - -#: util/grub-macbless.c:101 -msgid "bless for x86-based macs" -msgstr "" - -#: util/grub-macbless.c:103 -msgid "bless for ppc-based macs" -msgstr "" - -#: util/grub-macbless.c:136 util/grub-probe.c:823 -msgid "No path or device is specified.\n" -msgstr "" - -#: util/grub-macbless.c:157 -msgid "--ppc PATH|--x86 FILE" -msgstr "" - -#: util/grub-macbless.c:158 -msgid "Mac-style bless on HFS or HFS+" -msgstr "" - -#: util/grub-menulst2cfg.c:44 -#, c-format -msgid "Usage: %s [INFILE [OUTFILE]]\n" -msgstr "" - -#: util/grub-mkfont.c:157 -#, c-format -msgid "Freetype Error %d loading glyph 0x%x for U+0x%x%s" -msgstr "" - -#. TRANSLATORS: These qualifiers are used for cursive typography, -#. mainly Arabic. Note that the terms refer to the visual position -#. and not logical order and if used in left-to-right script then -#. leftmost is initial but with right-to-left script like Arabic -#. rightmost is the initial. -#: util/grub-mkfont.c:165 -msgid " (medial)" -msgstr "" - -#: util/grub-mkfont.c:166 -msgid " (leftmost)" -msgstr "" - -#: util/grub-mkfont.c:167 -msgid " (rightmost)" -msgstr "" - -#: util/grub-mkfont.c:481 -#, c-format -msgid "Out of range substitution (%d, %d)\n" -msgstr "" - -#. TRANSLATORS: "lookup" is taken directly from font specifications -#. which are formulated as "Under condition X replace LOOKUP with -#. SUBSTITUITION". " -#: util/grub-mkfont.c:506 -#, c-format -msgid "Out of range lookup: %d\n" -msgstr "" - -#: util/grub-mkfont.c:514 -#, c-format -msgid "Unsupported substitution type: %d\n" -msgstr "" - -#: util/grub-mkfont.c:550 -#, c-format -msgid "Unsupported substitution specification: %d\n" -msgstr "" - -#: util/grub-mkfont.c:582 -#, c-format -msgid "Unsupported coverage specification: %d\n" -msgstr "" - -#: util/grub-mkfont.c:622 -#, c-format -msgid "WARNING: unsupported font feature parameters: %x\n" -msgstr "" - -#: util/grub-mkfont.c:936 util/grub-mkrescue.c:98 util/grub-mkstandalone.c:48 -msgid "save output in FILE [required]" -msgstr "" - -#. TRANSLATORS: some font files may have multiple faces (fonts). -#. This option is used to chose among them, the first face being '0'. -#. Rarely used. -#: util/grub-mkfont.c:942 -msgid "select face index" -msgstr "" - -#: util/grub-mkfont.c:943 -msgid "FROM-TO[,FROM-TO]" -msgstr "" - -#. TRANSLATORS: It refers to the range of characters in font. -#: util/grub-mkfont.c:945 -msgid "set font range" -msgstr "" - -#. TRANSLATORS: "family name" for font is just a generic name without suffix -#. like "Bold". -#: util/grub-mkfont.c:949 -msgid "set font family name" -msgstr "" - -#: util/grub-mkfont.c:950 -msgid "SIZE" -msgstr "" - -#: util/grub-mkfont.c:950 -msgid "set font size" -msgstr "" - -#: util/grub-mkfont.c:951 -msgid "set font descent" -msgstr "" - -#: util/grub-mkfont.c:952 -msgid "set font ascent" -msgstr "" - -#: util/grub-mkfont.c:953 -msgid "convert to bold font" -msgstr "" - -#: util/grub-mkfont.c:954 -msgid "force autohint" -msgstr "" - -#: util/grub-mkfont.c:955 -msgid "disable hinting" -msgstr "" - -#. TRANSLATORS: some fonts contain bitmap rendering for -#. some sizes. This option forces rerendering even if -#. pre-rendered bitmap is available. -#. -#: util/grub-mkfont.c:961 -msgid "ignore bitmap strikes when loading" -msgstr "" - -#. TRANSLATORS: It refers to the range of characters in font. -#: util/grub-mkfont.c:1059 util/grub-mkfont.c:1075 -msgid "invalid font range" -msgstr "" - -#: util/grub-mkfont.c:1151 -msgid "[OPTIONS] FONT_FILES" -msgstr "" - -#: util/grub-mkfont.c:1152 -msgid "Convert common font file formats into PF2" -msgstr "" - -#: util/grub-mkfont.c:1182 util/grub-mkrescue.c:483 -#: util/grub-mkstandalone.c:306 -msgid "output file must be specified" -msgstr "" - -#: util/grub-mkfont.c:1185 -msgid "FT_Init_FreeType fails" -msgstr "" - -#: util/grub-mkfont.c:1199 -#, c-format -msgid "can't open file %s, index %d: error %d" -msgstr "" - -#: util/grub-mkfont.c:1229 -#, c-format -msgid "can't set %dx%d font size: Freetype error %d: %s" -msgstr "" - -#: util/grub-mkimage.c:67 -msgid "set prefix directory" -msgstr "" - -#. TRANSLATORS: "memdisk" here isn't an identifier, it can be translated. -#. "embed" is a verb (command description). " -#: util/grub-mkimage.c:71 -msgid "" -"embed FILE as a memdisk image\n" -"Implies `-p (memdisk)/boot/grub' and overrides any prefix supplied " -"previously, but the prefix itself can be overridden by later options" -msgstr "" - -#: util/grub-mkimage.c:74 -msgid "embed FILE as a device tree (DTB)\n" -msgstr "" - -#: util/grub-mkimage.c:76 -msgid "embed FILE as an early config" -msgstr "" - -#. TRANSLATORS: NOTE is a name of segment. -#: util/grub-mkimage.c:80 -msgid "add NOTE segment for CHRP IEEE1275" -msgstr "" - -#: util/grub-mkimage.c:81 -msgid "output a generated image to FILE [default=stdout]" -msgstr "" - -#: util/grub-mkimage.c:82 -msgid "FORMAT" -msgstr "" - -#: util/grub-mkimage.c:100 util/grub-mkstandalone.c:62 -msgid "generate an image in FORMAT" -msgstr "" - -#: util/grub-mkimage.c:101 util/grub-mkstandalone.c:63 -msgid "available formats:" -msgstr "" - -#: util/grub-mkimage.c:152 util/grub-mkstandalone.c:96 -#, c-format -msgid "unknown target format %s\n" -msgstr "" - -#: util/grub-mkimage.c:242 -msgid "[OPTION]... [MODULES]" -msgstr "" - -#: util/grub-mkimage.c:243 -msgid "Make a bootable image of GRUB." -msgstr "" - -#: util/grub-mkimage.c:273 util/grub-mkstandalone.c:309 -msgid "Target format not specified (use the -O option)." -msgstr "" - -#: util/grub-mkimage.c:282 -msgid "Prefix not specified (use the -p option)." -msgstr "" - -#: util/grub-mkimage.c:318 util/setup.c:793 -#, c-format -msgid "cannot close `%s': %s" -msgstr "" - -#: util/grub-mkimagexx.c:2191 -#, c-format -msgid "" -"`%s' is miscompiled: its start address is 0x%llx instead of 0x%llx: ld.gold " -"bug?" -msgstr "" - -#: util/grub-mklayout.c:53 -msgid "set input filename. Default is STDIN" -msgstr "" - -#. TRANSLATORS: scan identifier is keyboard key symbolic name. -#: util/grub-mklayout.c:307 -#, c-format -msgid "Unknown keyboard scan identifier %s\n" -msgstr "" - -#. TRANSLATORS: scan code is keyboard key numeric identifier. -#: util/grub-mklayout.c:390 util/grub-mklayout.c:418 -#, c-format -msgid "Unknown keyboard scan code 0x%02x\n" -msgstr "" - -#. TRANSLATORS: this error is triggered when input doesn't contain any -#. key descriptions. -#: util/grub-mklayout.c:438 -msgid "ERROR: no valid keyboard layout found. Check the input.\n" -msgstr "" - -#. TRANSLATORS: "one" is a shortcut for "keyboard layout". -#: util/grub-mklayout.c:478 -msgid "Generate GRUB keyboard layout from Linux console one." -msgstr "" - -#: util/grub-mknetdir.c:47 -msgid "root directory of TFTP server" -msgstr "" - -#: util/grub-mknetdir.c:49 -msgid "relative subdirectory on network server" -msgstr "" - -#: util/grub-mknetdir.c:88 -msgid "" -"Prepares GRUB network boot images at net_directory/subdir assuming " -"net_directory being TFTP root." -msgstr "" - -#: util/grub-mknetdir.c:146 -#, c-format -msgid "unsupported platform %s" -msgstr "" - -#. TRANSLATORS: First %s is replaced by platform name. Second one by filename. -#: util/grub-mknetdir.c:165 -#, c-format -msgid "" -"Netboot directory for %s created. Configure your DHCP server to point to %s\n" -msgstr "" - -#: util/grub-mkpasswd-pbkdf2.c:46 -msgid "Number of PBKDF2 iterations" -msgstr "" - -#: util/grub-mkpasswd-pbkdf2.c:47 -msgid "Length of generated hash" -msgstr "" - -#: util/grub-mkpasswd-pbkdf2.c:48 -msgid "Length of salt" -msgstr "" - -#: util/grub-mkpasswd-pbkdf2.c:87 -msgid "Generate PBKDF2 password hash." -msgstr "" - -#: util/grub-mkpasswd-pbkdf2.c:144 util/grub-mkpasswd-pbkdf2.c:151 -msgid "failure to read password" -msgstr "" - -#: util/grub-mkpasswd-pbkdf2.c:146 -msgid "Reenter password: " -msgstr "" - -#: util/grub-mkpasswd-pbkdf2.c:160 -msgid "passwords don't match" -msgstr "" - -#: util/grub-mkpasswd-pbkdf2.c:169 -msgid "couldn't retrieve random data for salt" -msgstr "" - -#: util/grub-mkpasswd-pbkdf2.c:184 -#, c-format -msgid "cryptographic error number %d" -msgstr "" - -#: util/grub-mkpasswd-pbkdf2.c:203 -#, c-format -msgid "PBKDF2 hash of your password is %s\n" -msgstr "" - -#: util/grub-mkrelpath.c:67 -msgid "No path is specified.\n" -msgstr "" - -#: util/grub-mkrelpath.c:78 -msgid "PATH" -msgstr "" - -#: util/grub-mkrelpath.c:79 -msgid "Transform a system filename into GRUB one." -msgstr "" - -#: util/grub-mkrescue.c:100 -msgid "save ROM images in DIR [optional]" -msgstr "" - -#. TRANSLATORS: xorriso is a program for creating ISOs and burning CDs. -#: util/grub-mkrescue.c:103 -msgid "use FILE as xorriso [optional]" -msgstr "" - -#: util/grub-mkrescue.c:109 -msgid "use STRING as product name" -msgstr "" - -#: util/grub-mkrescue.c:111 -msgid "" -"enable sparc boot. Disables HFS+, APM, ARCS and boot as disk image for i386-" -"pc" -msgstr "" - -#: util/grub-mkrescue.c:112 -msgid "" -"enable ARCS (big-endian mips machines, mostly SGI) boot. Disables HFS+, APM, " -"sparc64 and boot as disk image for i386-pc" -msgstr "" - -#. TRANSLATORS: it generates one single image which is bootable through any method. -#: util/grub-mkrescue.c:125 -msgid "Make GRUB CD-ROM, disk, pendrive and floppy bootable image." -msgstr "" - -#: util/grub-mkrescue.c:130 -#, c-format -msgid "" -"Generates a bootable CD/USB/floppy image. Arguments other than options to " -"this program are passed to xorriso, and indicate source files, source " -"directories, or any of the mkisofs options listed by the output of `%s'." -msgstr "" - -#: util/grub-mkrescue.c:134 -msgid "Option -- switches to native xorriso command mode." -msgstr "" - -#: util/grub-mkrescue.c:135 -msgid "Mail xorriso support requests to ." -msgstr "" - -#: util/grub-mkrescue.c:221 util/grub-mkstandalone.c:114 -msgid "[OPTION] SOURCE..." -msgstr "" - -#: util/grub-mkrescue.c:257 util/grub-mkrescue.c:300 util/grub-mkrescue.c:588 -#, c-format -msgid "enabling %s support ..." -msgstr "" - -#: util/grub-mkrescue.c:486 -msgid "xorriso not found" -msgstr "" - -#: util/grub-mkrescue.c:623 -msgid "" -"Your xorriso doesn't support `--grub2-boot-info'. Some features are " -"disabled. Please use xorriso 1.2.9 or later." -msgstr "" - -#: util/grub-mkrescue.c:650 -msgid "" -"Your xorriso doesn't support `--grub2-boot-info'. Your core image is too " -"big. Boot as disk is disabled. Please use xorriso 1.2.9 or later." -msgstr "" - -#: util/grub-mkstandalone.c:115 -msgid "" -"Generate a standalone image (containing all modules) in the selected format" -msgstr "" - -#: util/grub-mkstandalone.c:115 -msgid "Graft point syntax (E.g. /boot/grub/grub.cfg=./grub.cfg) is accepted" -msgstr "" - -#: util/grub-mount.c:552 -msgid "IMAGE1 [IMAGE2 ...] MOUNTPOINT" -msgstr "" - -#: util/grub-mount.c:575 -msgid "need an image and mountpoint" -msgstr "" - -#: util/grub-probe.c:731 -msgid "given argument is a system device, not a path" -msgstr "" - -#: util/grub-probe.c:736 -msgid "separate items in output using ASCII NUL characters" -msgstr "" - -#: util/grub-probe.c:754 -#, c-format -msgid "[default=%s]" -msgstr "" - -#: util/grub-probe.c:756 -msgid "print TARGET" -msgstr "" - -#: util/grub-probe.c:757 -msgid "available targets:" -msgstr "" - -#: util/grub-probe.c:839 -msgid "[OPTION]... [PATH|DEVICE]" -msgstr "" - -#: util/grub-probe.c:840 -msgid "" -"Probe device information for a given path (or device, if the -d option is " -"given)." -msgstr "" - -#: util/grub-render-label.c:60 -msgid "read text from FILE." -msgstr "" - -#: util/grub-render-label.c:62 -msgid "use COLOR for text" -msgstr "" - -#: util/grub-render-label.c:64 -msgid "use COLOR for background" -msgstr "" - -#. TRANSLATORS: The result is always stored to file and -#. never shown directly, so don't use "show" as synonym for render. Use "create" if -#. "render" doesn't translate directly. -#: util/grub-render-label.c:69 -msgid "set the label to render" -msgstr "" - -#: util/grub-render-label.c:73 -msgid "use FILE as font (PF2)." -msgstr "" - -#. TRANSLATORS: This file takes a text and creates a graphical representation of it, -#. putting the result into .disk_label file. The result is always stored to file and -#. never shown directly, so don't use "show" as synonym for render. Use "create" if -#. "render" doesn't translate directly. -#: util/grub-render-label.c:136 -msgid "Render Apple .disk_label." -msgstr "" - -#: util/grub-render-label.c:158 util/grub-syslinux2cfg.c:169 -msgid "Missing arguments\n" -msgstr "" - -#: util/grub-script-check.c:87 -msgid "[PATH]" -msgstr "" - -#: util/grub-script-check.c:88 -msgid "Checks GRUB script configuration file for syntax errors." -msgstr "" - -#: util/grub-script-check.c:207 -#, c-format -msgid "Syntax error at line %u\n" -msgstr "" - -#: util/grub-script-check.c:212 -#, c-format -msgid "Script `%s' contains no commands and will do nothing\n" -msgstr "" - -#: util/grub-setup.c:79 -#, c-format -msgid "use FILE as the boot image [default=%s]" -msgstr "" - -#: util/grub-setup.c:81 -#, c-format -msgid "use FILE as the core image [default=%s]" -msgstr "" - -#: util/grub-setup.c:210 -msgid "No device is specified.\n" -msgstr "" - -#: util/grub-setup.c:224 -msgid "" -"Set up images to boot from DEVICE.\n" -"\n" -"You should not normally run this program directly. Use grub-install instead." -msgstr "" - -#: util/grub-setup.c:228 -msgid "DEVICE must be an OS device (e.g. /dev/sda)." -msgstr "" - -#: util/grub-setup.c:297 -#, c-format -msgid "Invalid device `%s'.\n" -msgstr "" - -#: util/grub-syslinux2cfg.c:64 -msgid "root directory as it will be seen on runtime [default=/]." -msgstr "" - -#: util/grub-syslinux2cfg.c:69 -msgid "" -"current directory of syslinux as it will be seen on runtime [default is " -"parent directory of input file]." -msgstr "" - -#: util/grub-syslinux2cfg.c:74 -msgid "write output to FILE [default=stdout]." -msgstr "" - -#: util/grub-syslinux2cfg.c:148 -msgid "Transform syslinux config into GRUB one." -msgstr "" - -#: util/mkimage.c:688 util/mkimage.c:717 util/mkimage.c:734 -msgid "cannot compress the kernel image" -msgstr "" - -#: util/mkimage.c:766 util/mkimage.c:1077 -#, c-format -msgid "unknown compression %d" -msgstr "" - -#: util/mkimage.c:1088 -msgid "Decompressor is too big" -msgstr "" - -#: util/mkimage.c:1133 -#, c-format -msgid "core image is too big (0x%x > 0x%x)" -msgstr "" - -#: util/mkimage.c:1140 -#, c-format -msgid "kernel image is too big (0x%x > 0x%x)" -msgstr "" - -#: util/mkimage.c:1220 util/mkimage.c:1501 -#, c-format -msgid "diskboot.img size must be %u bytes" -msgstr "" - -#: util/mkimage.c:1571 -msgid "" -"fwstart.img doesn't match the known good version. proceed at your own risk" -msgstr "" - -#: util/mkimage.c:1575 util/mkimage.c:1601 -msgid "firmware image is too big" -msgstr "" - -#: util/resolve.c:93 -#, c-format -msgid "invalid line format: %s" -msgstr "" - -#: util/setup.c:167 -msgid "the first sector of the core file is not sector-aligned" -msgstr "" - -#: util/setup.c:177 -msgid "non-sector-aligned data is found in the core file" -msgstr "" - -#: util/setup.c:199 -msgid "the sectors of the core file are too fragmented" -msgstr "" - -#: util/setup.c:280 -#, c-format -msgid "the size of `%s' is not %u" -msgstr "" - -#: util/setup.c:290 -#, c-format -msgid "the size of `%s' is too small" -msgstr "" - -#: util/setup.c:428 -msgid "" -"Attempting to install GRUB to a disk with multiple partition labels or both " -"partition label and filesystem. This is not supported yet." -msgstr "" - -#: util/setup.c:441 -#, c-format -msgid "unable to identify a filesystem in %s; safety check can't be performed" -msgstr "" - -#. TRANSLATORS: Filesystem may reserve the space just GRUB isn't sure about it. -#: util/setup.c:445 -#, c-format -msgid "" -"%s appears to contain a %s filesystem which isn't known to reserve space for " -"DOS-style boot. Installing GRUB there could result in FILESYSTEM " -"DESTRUCTION if valuable data is overwritten by grub-setup (--skip-fs-probe " -"disables this check, use at your own risk)" -msgstr "" - -#. TRANSLATORS: Partition map may reserve the space just GRUB isn't sure about it. -#: util/setup.c:458 -#, c-format -msgid "" -"%s appears to contain a %s partition map which isn't known to reserve space " -"for DOS-style boot. Installing GRUB there could result in FILESYSTEM " -"DESTRUCTION if valuable data is overwritten by grub-setup (--skip-fs-probe " -"disables this check, use at your own risk)" -msgstr "" - -#: util/setup.c:465 -#, c-format -msgid "" -"%s appears to contain a %s partition map and LDM which isn't known to be a " -"safe combination. Installing GRUB there could result in FILESYSTEM " -"DESTRUCTION if valuable data is overwritten by grub-setup (--skip-fs-probe " -"disables this check, use at your own risk)" -msgstr "" - -#: util/setup.c:478 -msgid "" -"Attempting to install GRUB to a partitionless disk or to a partition. This " -"is a BAD idea." -msgstr "" - -#: util/setup.c:483 -msgid "" -"Attempting to install GRUB to a disk with multiple partition labels. This " -"is not supported yet." -msgstr "" - -#: util/setup.c:489 -#, c-format -msgid "Partition style `%s' doesn't support embedding" -msgstr "" - -#: util/setup.c:496 -#, c-format -msgid "File system `%s' doesn't support embedding" -msgstr "" - -#: util/setup.c:537 -msgid "Your embedding area is unusually small. core.img won't fit in it." -msgstr "" - -#: util/setup.c:559 util/setup.c:725 util/setup.c:844 -msgid "no terminator in the core image" -msgstr "" - -#: util/setup.c:622 -msgid "core.img version mismatch" -msgstr "" - -#: util/setup.c:675 -msgid "" -"embedding is not possible, but this is required for RAID and LVM install" -msgstr "" - -#: util/setup.c:682 -#, c-format -msgid "can't determine filesystem on %s" -msgstr "" - -#: util/setup.c:685 -#, c-format -msgid "filesystem `%s' doesn't support blocklists" -msgstr "" - -#. TRANSLATORS: cross-disk refers to /boot being on one disk -#. but MBR on another. -#: util/setup.c:694 -msgid "embedding is not possible, but this is required for cross-disk install" -msgstr "" - -#: util/setup.c:700 -msgid "" -"Embedding is not possible. GRUB can only be installed in this setup by " -"using blocklists. However, blocklists are UNRELIABLE and their use is " -"discouraged." -msgstr "" - -#. TRANSLATORS: Here GRUB refuses to continue with blocklist install. -#: util/setup.c:705 -msgid "will not proceed with blocklists" -msgstr "" - -#: util/setup.c:817 util/setup.c:837 -msgid "blocklists are invalid" -msgstr "" - -#: util/setup.c:847 -msgid "blocklists are incomplete" -msgstr "" diff --git a/thirdparty/grub-2.04/po/ru.gmo b/thirdparty/grub-2.04/po/ru.gmo deleted file mode 100644 index a941609b6ef54b42a68908e9219f8c5ebf7e2cb4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 161186 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

laeK;}rs8ZQ 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 diff --git a/thirdparty/grub-2.04/po/ru.po b/thirdparty/grub-2.04/po/ru.po deleted file mode 100644 index e205ee7c4..000000000 --- a/thirdparty/grub-2.04/po/ru.po +++ /dev/null @@ -1,7531 +0,0 @@ -# translation of grub-1.97+20100124.ru.po to Russian -# Copyright (C) 2009, 2010 Free Software Foundation, Inc. -# This file is distributed under the same license as the grub package. -# -# Yuri Kozlov , 2009, 2010, 2011, 2012, 2013, 2014, 2017, 2019. -# Vladimir 'φ-coder/phcoder' Serbinenko , 2012. -msgid "" -msgstr "" -"Project-Id-Version: grub 2.04-pre1\n" -"Report-Msgid-Bugs-To: bug-grub@gnu.org\n" -"POT-Creation-Date: 2019-07-04 16:09+0200\n" -"PO-Revision-Date: 2019-04-11 18:56+0300\n" -"Last-Translator: Yuri Kozlov \n" -"Language-Team: Russian \n" -"Language: ru\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Bugs: Report translation errors to the Language-Team address.\n" -"X-Generator: Lokalize 2.0\n" -"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n" -"%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n" - -#: grub-core/bus/usb/serial/ftdi.c:145 grub-core/bus/usb/serial/pl2303.c:158 -#: grub-core/term/ieee1275/escc.c:169 grub-core/term/ns8250.c:202 -msgid "unsupported serial port speed" -msgstr "Ð½ÐµÐ¿Ð¾Ð´Ð´ÐµÑ€Ð¶Ð¸Ð²Ð°ÐµÐ¼Ð°Ñ ÑкороÑть поÑледовательного порта" - -#: grub-core/bus/usb/serial/ftdi.c:151 grub-core/bus/usb/serial/pl2303.c:164 -#: grub-core/term/efi/serial.c:116 grub-core/term/ieee1275/escc.c:175 -#: grub-core/term/ns8250.c:208 grub-core/term/serial.c:227 -#: grub-core/term/serial.c:243 -msgid "unsupported serial port parity" -msgstr "Ð½ÐµÐ¿Ð¾Ð´Ð´ÐµÑ€Ð¶Ð¸Ð²Ð°ÐµÐ¼Ð°Ñ Ñ‡Ñ‘Ñ‚Ð½Ð¾Ñть поÑледовательного порта" - -#: grub-core/bus/usb/serial/ftdi.c:157 grub-core/bus/usb/serial/pl2303.c:170 -#: grub-core/term/efi/serial.c:122 grub-core/term/ieee1275/escc.c:181 -#: grub-core/term/ns8250.c:213 grub-core/term/serial.c:267 -msgid "unsupported serial port stop bits number" -msgstr "неподдерживаемое количеÑтво Ñтоп-битов поÑледовательного порта" - -#: grub-core/bus/usb/serial/ftdi.c:161 grub-core/bus/usb/serial/pl2303.c:174 -#: grub-core/term/efi/serial.c:126 grub-core/term/ieee1275/escc.c:185 -#: grub-core/term/ns8250.c:217 -msgid "unsupported serial port word length" -msgstr "Ð½ÐµÐ¿Ð¾Ð´Ð´ÐµÑ€Ð¶Ð¸Ð²Ð°ÐµÐ¼Ð°Ñ Ð´Ð»Ð¸Ð½Ð° Ñлова поÑледовательного порта" - -#: grub-core/commands/acpi.c:42 -msgid "Don't load host tables specified by comma-separated list." -msgstr "Ðе загружать таблицы компьютера, указанные через запÑтую." - -#: grub-core/commands/acpi.c:45 -msgid "Load only tables specified by comma-separated list." -msgstr "Загружать только таблицы, указанные через запÑтую." - -#: grub-core/commands/acpi.c:46 -msgid "Export version 1 tables to the OS." -msgstr "ЭкÑпортировать таблицы верÑии 1 в ОС." - -#: grub-core/commands/acpi.c:47 -msgid "Export version 2 and version 3 tables to the OS." -msgstr "ЭкÑпортировать таблицы верÑии 2 и 3 в ОС." - -#: grub-core/commands/acpi.c:48 -msgid "Set OEMID of RSDP, XSDT and RSDT." -msgstr "Задать OEMID в RSDP, XSDT и RSDT." - -#: grub-core/commands/acpi.c:50 -msgid "Set OEMTABLE ID of RSDP, XSDT and RSDT." -msgstr "Задать OEMTABLE ID в RSDP, XSDT и RSDT." - -#: grub-core/commands/acpi.c:52 -msgid "Set OEMTABLE revision of RSDP, XSDT and RSDT." -msgstr "Задать ревизию OEMTABLE в RSDP, XSDT и RSDT." - -#: grub-core/commands/acpi.c:54 -msgid "Set creator field of RSDP, XSDT and RSDT." -msgstr "Задать название Ñоздавшей программы в RSDP, XSDT и RSDT." - -#: grub-core/commands/acpi.c:56 -msgid "Set creator revision of RSDP, XSDT and RSDT." -msgstr "Задать верÑию редакции Ñоздавшей программы в RSDP, XSDT и RSDT." - -#. TRANSLATORS: "hangs" here is a noun, not a verb. -#: grub-core/commands/acpi.c:58 -msgid "" -"Don't update EBDA. May fix failures or hangs on some BIOSes but makes it " -"ineffective with OS not receiving RSDP from GRUB." -msgstr "" -"Ðе обновлÑть EBDA. Может помочь при ошибках и подвиÑаниÑÑ… Ñ Ð½ÐµÐºÐ¾Ñ‚Ð¾Ñ€Ñ‹Ð¼Ð¸ BIOS, " -"но не оказывает влиÑниÑ, еÑли ОС не принимает RSDP от GRUB." - -#: grub-core/commands/acpi.c:650 grub-core/commands/acpi.c:667 -#: grub-core/commands/i386/pc/play.c:105 grub-core/commands/keylayouts.c:230 -#: grub-core/commands/keylayouts.c:245 grub-core/commands/keylayouts.c:263 -#: grub-core/commands/verifiers.c:156 grub-core/efiemu/loadcore.c:350 -#: grub-core/kern/elf.c:117 grub-core/kern/elfXX.c:29 -#: grub-core/kern/elfXX.c:156 grub-core/loader/arm/linux.c:319 -#: grub-core/loader/arm64/linux.c:330 grub-core/loader/arm64/xen_boot.c:356 -#: grub-core/loader/efi/chainloader.c:276 -#: grub-core/loader/efi/chainloader.c:297 -#: grub-core/loader/efi/chainloader.c:329 grub-core/loader/efi/fdt.c:138 -#: grub-core/loader/i386/bsd.c:1276 grub-core/loader/i386/bsd.c:2116 -#: grub-core/loader/i386/bsdXX.c:20 grub-core/loader/i386/bsdXX.c:36 -#: grub-core/loader/i386/bsdXX.c:63 grub-core/loader/i386/bsdXX.c:357 -#: grub-core/loader/i386/bsdXX.c:376 grub-core/loader/i386/bsdXX.c:519 -#: grub-core/loader/i386/bsdXX.c:535 grub-core/loader/i386/bsdXX.c:615 -#: grub-core/loader/i386/bsdXX.c:638 -#: grub-core/loader/i386/coreboot/chainloader.c:112 -#: grub-core/loader/i386/coreboot/chainloader.c:148 -#: grub-core/loader/i386/coreboot/chainloader.c:170 -#: grub-core/loader/i386/linux.c:667 grub-core/loader/i386/linux.c:788 -#: grub-core/loader/i386/linux.c:1005 grub-core/loader/i386/multiboot_mbi.c:171 -#: grub-core/loader/i386/pc/chainloader.c:202 -#: grub-core/loader/i386/pc/linux.c:149 grub-core/loader/i386/pc/linux.c:320 -#: grub-core/loader/i386/pc/linux.c:362 grub-core/loader/i386/pc/plan9.c:457 -#: grub-core/loader/i386/pc/plan9.c:550 grub-core/loader/i386/pc/plan9.c:566 -#: grub-core/loader/i386/xen.c:934 grub-core/loader/i386/xen_file.c:72 -#: grub-core/loader/i386/xen_fileXX.c:43 grub-core/loader/i386/xen_fileXX.c:186 -#: grub-core/loader/i386/xen_fileXX.c:339 grub-core/loader/ia64/efi/linux.c:423 -#: grub-core/loader/ia64/efi/linux.c:471 grub-core/loader/linux.c:286 -#: grub-core/loader/macho.c:84 grub-core/loader/macho.c:109 -#: grub-core/loader/machoXX.c:33 grub-core/loader/machoXX.c:46 -#: grub-core/loader/machoXX.c:76 grub-core/loader/machoXX.c:116 -#: grub-core/loader/machoXX.c:131 grub-core/loader/machoXX.c:147 -#: grub-core/loader/machoXX.c:196 grub-core/loader/machoXX.c:317 -#: grub-core/loader/multiboot.c:434 grub-core/loader/multiboot_elfxx.c:171 -#: grub-core/loader/multiboot_elfxx.c:234 -#: grub-core/loader/multiboot_elfxx.c:278 grub-core/loader/multiboot_mbi2.c:129 -#: grub-core/loader/xnu.c:737 grub-core/loader/xnu.c:795 -#: grub-core/loader/xnu.c:816 grub-core/loader/xnu.c:871 -#: grub-core/loader/xnu.c:914 grub-core/loader/xnu.c:952 -#: grub-core/loader/xnu_resume.c:68 grub-core/loader/xnu_resume.c:153 -#: grub-core/loader/xnu_resume.c:165 util/grub-mkimagexx.c:2288 -#, c-format -msgid "premature end of file %s" -msgstr "преждевременный конец файла %s" - -#: grub-core/commands/acpi.c:779 -msgid "" -"[-1|-2] [--exclude=TABLE1,TABLE2|--load-only=TABLE1,TABLE2] FILE1 [FILE2] " -"[...]" -msgstr "" -"[-1|-2] [--exclude=ТÐБЛИЦÐ1,ТÐБЛИЦÐ2|--load-only=ТÐБЛИЦÐ1,ТÐБЛИЦÐ2] ФÐЙЛ1 " -"[ФÐЙЛ2] […]" - -#: grub-core/commands/acpi.c:782 -msgid "Load host ACPI tables and tables specified by arguments." -msgstr "Загружать таблицы ACPI машины и таблицы, указанные в параметрах." - -#: grub-core/commands/acpihalt.c:368 grub-core/kern/err.c:110 -#, c-format -msgid "error: %s.\n" -msgstr "ошибка: %s.\n" - -#: grub-core/commands/acpihalt.c:368 grub-core/kern/emu/misc.c:95 -#: grub-core/kern/emu/misc.c:105 grub-core/kern/emu/misc.c:134 -#: grub-core/kern/emu/mm.c:34 grub-core/kern/emu/mm.c:62 -#: grub-core/kern/mm.c:374 grub-core/lib/relocator.c:1282 -#: grub-core/lib/relocator.c:1439 grub-core/lib/relocator.c:1538 -#: grub-core/loader/arm/linux.c:259 grub-core/loader/arm64/linux.c:265 -#: grub-core/loader/arm64/linux.c:321 grub-core/loader/arm64/linux.c:340 -#: grub-core/loader/arm64/xen_boot.c:344 grub-core/loader/arm64/xen_boot.c:367 -#: grub-core/loader/efi/chainloader.c:289 grub-core/osdep/unix/dl.c:48 -#: grub-core/osdep/windows/dl.c:46 grub-core/script/lexer.c:156 -#: grub-core/script/lexer.c:182 -msgid "out of memory" -msgstr "недоÑтаточно памÑти" - -#: grub-core/commands/acpihalt.c:374 grub-core/disk/cryptodisk.c:587 -#: grub-core/disk/cryptodisk.c:632 grub-core/kern/emu/hostdisk.c:307 -#: grub-core/kern/emu/hostfs.c:149 grub-core/kern/emu/misc.c:200 -#: grub-core/osdep/linux/ofpath.c:195 grub-core/osdep/linux/ofpath.c:521 -#: grub-core/osdep/linux/ofpath.c:534 util/glue-efi.c:80 util/glue-efi.c:94 -#: util/grub-editenv.c:155 util/grub-fstest.c:577 -#: util/grub-install-common.c:943 util/grub-mkrescue.c:634 -#: util/grub-mkrescue.c:888 util/grub-mount.c:506 util/grub-render-label.c:176 -#: util/misc.c:95 util/setup.c:814 util/setup.c:833 -#, c-format -msgid "cannot read `%s': %s" -msgstr "не удалоÑÑŒ прочитать «%s»: %s" - -#. TRANSLATORS: It's computer shutdown using ACPI, not disabling ACPI. -#: grub-core/commands/acpihalt.c:452 -msgid "ACPI shutdown failed" -msgstr "Ðе удалоÑÑŒ выключить через ACPI" - -#: grub-core/commands/arc/lsdev.c:51 -msgid "List devices." -msgstr "ВывеÑти ÑпиÑок уÑтройÑтв." - -#: grub-core/commands/blocklist.c:122 grub-core/commands/cat.c:57 -#: grub-core/commands/configfile.c:35 grub-core/commands/efi/loadbios.c:168 -#: grub-core/commands/file.c:159 grub-core/commands/hexdump.c:47 -#: grub-core/commands/legacycfg.c:209 grub-core/commands/legacycfg.c:315 -#: grub-core/commands/minicmd.c:44 grub-core/commands/syslinuxcfg.c:146 -#: grub-core/commands/testload.c:58 grub-core/commands/testspeed.c:52 -#: grub-core/disk/loopback.c:93 grub-core/efiemu/main.c:293 -#: grub-core/font/font_cmd.c:32 grub-core/kern/emu/hostdisk.c:519 -#: grub-core/loader/arm/linux.c:364 grub-core/loader/arm/linux.c:409 -#: grub-core/loader/arm/linux.c:472 grub-core/loader/arm64/linux.c:243 -#: grub-core/loader/arm64/linux.c:297 grub-core/loader/arm64/xen_boot.c:398 -#: grub-core/loader/arm64/xen_boot.c:411 grub-core/loader/arm64/xen_boot.c:462 -#: grub-core/loader/efi/chainloader.c:216 grub-core/loader/i386/bsd.c:1462 -#: grub-core/loader/i386/bsd.c:1807 grub-core/loader/i386/bsd.c:2085 -#: grub-core/loader/i386/coreboot/chainloader.c:438 -#: grub-core/loader/i386/linux.c:656 grub-core/loader/i386/linux.c:1041 -#: grub-core/loader/i386/pc/chainloader.c:290 -#: grub-core/loader/i386/pc/freedos.c:105 grub-core/loader/i386/pc/linux.c:138 -#: grub-core/loader/i386/pc/linux.c:400 grub-core/loader/i386/pc/ntldr.c:85 -#: grub-core/loader/i386/pc/plan9.c:409 -#: grub-core/loader/i386/pc/pxechainloader.c:94 -#: grub-core/loader/i386/pc/truecrypt.c:96 grub-core/loader/i386/xen.c:641 -#: grub-core/loader/i386/xen.c:768 grub-core/loader/i386/xen.c:844 -#: grub-core/loader/i386/xen.c:854 grub-core/loader/i386/xnu.c:488 -#: grub-core/loader/ia64/efi/linux.c:459 grub-core/loader/ia64/efi/linux.c:539 -#: grub-core/loader/mips/linux.c:238 grub-core/loader/mips/linux.c:429 -#: grub-core/loader/multiboot.c:322 grub-core/loader/multiboot.c:374 -#: grub-core/loader/multiboot.c:384 -#: grub-core/loader/powerpc/ieee1275/linux.c:269 -#: grub-core/loader/powerpc/ieee1275/linux.c:341 -#: grub-core/loader/sparc64/ieee1275/linux.c:305 -#: grub-core/loader/sparc64/ieee1275/linux.c:381 grub-core/loader/xnu.c:351 -#: grub-core/loader/xnu.c:460 grub-core/loader/xnu.c:778 -#: grub-core/loader/xnu.c:892 grub-core/loader/xnu.c:1277 -#: grub-core/loader/xnu.c:1427 grub-core/loader/xnu.c:1453 -#: grub-core/video/readers/jpeg.c:812 grub-core/video/readers/png.c:1123 -msgid "filename expected" -msgstr "ожидаетÑÑ Ð¸Ð¼Ñ Ñ„Ð°Ð¹Ð»Ð°" - -#. TRANSLATORS: "embed" is a verb (command description). " -#: grub-core/commands/blocklist.c:154 grub-core/commands/cat.c:163 -#: grub-core/commands/configfile.c:65 grub-core/commands/configfile.c:68 -#: grub-core/commands/configfile.c:74 grub-core/commands/configfile.c:80 -#: grub-core/commands/configfile.c:86 grub-core/commands/hashsum.c:34 -#: grub-core/commands/legacycfg.c:834 grub-core/commands/legacycfg.c:841 -#: grub-core/commands/legacycfg.c:846 grub-core/commands/legacycfg.c:851 -#: grub-core/commands/macbless.c:222 grub-core/commands/minicmd.c:198 -#: grub-core/commands/syslinuxcfg.c:186 grub-core/commands/syslinuxcfg.c:194 -#: grub-core/commands/syslinuxcfg.c:200 grub-core/commands/syslinuxcfg.c:206 -#: grub-core/commands/testload.c:163 grub-core/efiemu/main.c:312 -#: grub-core/kern/emu/main.c:100 grub-core/kern/emu/main.c:103 -#: grub-core/loader/i386/bsd.c:2137 grub-core/loader/i386/bsd.c:2140 -#: grub-core/loader/i386/bsd.c:2143 -#: grub-core/loader/i386/coreboot/chainloader.c:505 -#: grub-core/loader/ia64/efi/linux.c:594 include/grub/util/install.h:32 -#: include/grub/util/install.h:64 util/grub-glue-efi.c:52 -#: util/grub-glue-efi.c:54 util/grub-glue-efi.c:56 util/grub-install.c:254 -#: util/grub-install.c:301 util/grub-mkfont.c:936 util/grub-mkimage.c:68 -#: util/grub-mkimage.c:74 util/grub-mkimage.c:76 util/grub-mkimage.c:78 -#: util/grub-mkimage.c:81 util/grub-mklayout.c:52 util/grub-mklayout.c:54 -#: util/grub-mkrescue.c:97 util/grub-mkrescue.c:101 util/grub-mkrescue.c:104 -#: util/grub-mkrescue.c:105 util/grub-mkrescue.c:106 -#: util/grub-mkstandalone.c:47 util/grub-mkstandalone.c:49 -#: util/grub-probe.c:732 util/grub-render-label.c:59 -#: util/grub-render-label.c:70 util/grub-render-label.c:72 util/grub-setup.c:78 -#: util/grub-setup.c:80 util/grub-setup.c:84 util/grub-syslinux2cfg.c:74 -#: util/grub-syslinux2cfg.c:147 -msgid "FILE" -msgstr "ФÐЙЛ" - -#: grub-core/commands/blocklist.c:154 -msgid "Print a block list." -msgstr "Показать ÑпиÑок блоков." - -#: grub-core/commands/boot.c:147 grub-core/commands/legacycfg.c:533 -#: grub-core/commands/legacycfg.c:574 grub-core/loader/arm64/linux.c:250 -#: grub-core/loader/i386/bsd.c:1799 grub-core/loader/i386/bsd.c:1900 -#: grub-core/loader/i386/bsd.c:2007 grub-core/loader/i386/bsd.c:2040 -#: grub-core/loader/i386/bsd.c:2089 grub-core/loader/i386/linux.c:1047 -#: grub-core/loader/i386/pc/linux.c:406 grub-core/loader/i386/xen.c:775 -#: grub-core/loader/i386/xen.c:859 grub-core/loader/ia64/efi/linux.c:545 -#: grub-core/loader/mips/linux.c:432 grub-core/loader/multiboot.c:388 -#: grub-core/loader/powerpc/ieee1275/linux.c:347 -#: grub-core/loader/sparc64/ieee1275/linux.c:387 grub-core/loader/xnu.c:572 -#: grub-core/loader/xnu.c:665 grub-core/loader/xnu.c:781 -#: grub-core/loader/xnu.c:895 grub-core/loader/xnu.c:1091 -#: grub-core/loader/xnu.c:1258 grub-core/loader/xnu.c:1289 -#: grub-core/loader/xnu.c:1430 -msgid "you need to load the kernel first" -msgstr "Ñначала вам нужно загрузить Ñдро" - -#: grub-core/commands/boot.c:189 -msgid "Boot an operating system." -msgstr "Загрузить операционную ÑиÑтему." - -#: grub-core/commands/boottime.c:36 -#: grub-core/commands/i386/coreboot/cb_timestamps.c:108 -msgid "No boot time statistics is available\n" -msgstr "Ðет ÑтатиÑтики по времени загрузки\n" - -#: grub-core/commands/boottime.c:59 -msgid "Show boot time statistics." -msgstr "Показать ÑтатиÑтику по загрузке." - -#: grub-core/commands/cacheinfo.c:40 -#, c-format -msgid "Disk cache statistics: hits = %lu (%lu.%02lu%%), misses = %lu\n" -msgstr "" -"СтатиÑтика диÑкового кÑша: попаданий = %lu (%lu.%02lu%%), промахов = %lu\n" - -#: grub-core/commands/cacheinfo.c:45 -msgid "No disk cache statistics available\n" -msgstr "Ðет ÑтатиÑтики по диÑковому кÑшу\n" - -#: grub-core/commands/cacheinfo.c:56 -msgid "Get disk cache info." -msgstr "Получить информацию о кÑше диÑка." - -#: grub-core/commands/cat.c:33 -msgid "Accept DOS-style CR/NL line endings." -msgstr "ИÑпользовать DOS-Ñтиль CR/NL Ð´Ð»Ñ Ð¾ÐºÐ¾Ð½Ñ‡Ð°Ð½Ð¸Ð¹ Ñтрок." - -#: grub-core/commands/cat.c:163 grub-core/commands/minicmd.c:198 -msgid "Show the contents of a file." -msgstr "Показать Ñодержимое файла." - -#: grub-core/commands/cmp.c:43 grub-core/commands/i386/pc/drivemap.c:239 -#: grub-core/commands/i386/wrmsr.c:60 grub-core/commands/iorw.c:85 -#: grub-core/commands/memrw.c:84 grub-core/commands/password.c:75 -#: grub-core/commands/password_pbkdf2.c:94 grub-core/commands/pgp.c:826 -#: grub-core/commands/regexp.c:113 grub-core/mmap/mmap.c:517 -#: grub-core/net/dns.c:639 -msgid "two arguments expected" -msgstr "ожидаетÑÑ Ð´Ð²Ð° аргумента" - -#: grub-core/commands/cmp.c:45 -#, c-format -msgid "Compare file `%s' with `%s':\n" -msgstr "Сравнить файл «%s» Ñ Â«%s»:\n" - -#: grub-core/commands/cmp.c:54 -#, c-format -msgid "Files differ in size: %llu [%s], %llu [%s]\n" -msgstr "Файлы различаютÑÑ Ð¿Ð¾ размеру: %llu [%s], %llu [%s]\n" - -#: grub-core/commands/cmp.c:81 -#, c-format -msgid "Files differ at the offset %llu: 0x%x [%s], 0x%x [%s]\n" -msgstr "Файлы различаютÑÑ Ð½Ð°Ñ‡Ð¸Ð½Ð°Ñ Ñо ÑÐ¼ÐµÑ‰ÐµÐ½Ð¸Ñ %llu: 0x%x [%s], 0x%x [%s]\n" - -#. TRANSLATORS: it's always exactly 2 files. -#: grub-core/commands/cmp.c:93 -msgid "The files are identical.\n" -msgstr "Файлы одинаковы.\n" - -#: grub-core/commands/cmp.c:113 -msgid "FILE1 FILE2" -msgstr "ФÐЙЛ1 ФÐЙЛ2" - -#: grub-core/commands/cmp.c:113 -msgid "Compare two files." -msgstr "Сравнить два файла." - -#: grub-core/commands/configfile.c:65 -msgid "Load another config file." -msgstr "Загрузить другой файл наÑтройки." - -#: grub-core/commands/configfile.c:69 grub-core/commands/configfile.c:87 -msgid "Load another config file without changing context." -msgstr "Загрузить другой файл наÑтройки без Ñмены контекÑта." - -#: grub-core/commands/configfile.c:75 -msgid "" -"Load another config file without changing context but take only menu entries." -msgstr "" -"Загрузить другой файл наÑтройки без Ñмены контекÑта, но взÑть только пункты " -"меню." - -#: grub-core/commands/configfile.c:81 -msgid "Load another config file but take only menu entries." -msgstr "Загрузить другой файл наÑтройки, но взÑть только пункты меню." - -#: grub-core/commands/date.c:141 -msgid "[[year-]month-day] [hour:minute[:second]]" -msgstr "[[год-]меÑÑц-день] [чаÑÑ‹:минуты[:Ñекунды]]" - -#: grub-core/commands/date.c:142 -msgid "Display/set current datetime." -msgstr "Показать/наÑтроить текущую дату/времÑ." - -#: grub-core/commands/echo.c:30 -msgid "Do not output the trailing newline." -msgstr "Ðе выдавать конечный Ñимвол новой Ñтроки." - -#: grub-core/commands/echo.c:31 -msgid "Enable interpretation of backslash escapes." -msgstr "Включить обработку Ñкранирующих Ñимволов обратной коÑой черты." - -#: grub-core/commands/echo.c:134 -msgid "[-e|-n] STRING" -msgstr "[-e|-n] СТРОКÐ" - -#: grub-core/commands/echo.c:134 -msgid "Display a line of text." -msgstr "Показать Ñтроку текÑта." - -#: grub-core/commands/efi/efifwsetup.c:82 -msgid "Reboot into firmware setup menu." -msgstr "Перезагрузить машину в меню наÑтройки микропрограммы." - -#: grub-core/commands/efi/fixvideo.c:107 -msgid "Fix video problem." -msgstr "ИÑправить проблему Ñ Ð²Ð¸Ð´ÐµÐ¾." - -#: grub-core/commands/efi/loadbios.c:52 -msgid "ROM image is present." -msgstr "Обнаружен образ ROM." - -#: grub-core/commands/efi/loadbios.c:70 -msgid "Can't enable ROM area." -msgstr "Ðе удалоÑÑŒ включить облаÑть ROM." - -#: grub-core/commands/efi/loadbios.c:209 -msgid "" -"Create BIOS-like structures for backward compatibility with existing OS." -msgstr "" -"Создать BIOS-подобные Ñтруктуры Ð´Ð»Ñ Ð¾Ð±Ñ€Ð°Ñ‚Ð½Ð¾Ð¹ ÑовмеÑтимоÑти Ñ ÑущеÑтвующей ОС." - -#: grub-core/commands/efi/loadbios.c:214 -msgid "BIOS_DUMP [INT10_DUMP]" -msgstr "ДÐМП_BIOSа [ДÐМП_INT10]" - -#: grub-core/commands/efi/loadbios.c:215 -msgid "Load BIOS dump." -msgstr "Загрузить дамп BIOS." - -#: grub-core/commands/efi/shim_lock.c:76 -#, c-format -msgid "module cannot be loaded in UEFI secure boot mode: %s" -msgstr "модуль Ð½ÐµÐ»ÑŒÐ·Ñ Ð·Ð°Ð³Ñ€ÑƒÐ·Ð¸Ñ‚ÑŒ в режиме безопаÑной загрузки UEFI: %s" - -#: grub-core/commands/efi/shim_lock.c:98 -#, c-format -msgid "cannot boot due to dangerous module in memory: %s" -msgstr "невозможно загрузитьÑÑ Ð¸Ð·-за опаÑного Ð¼Ð¾Ð´ÑƒÐ»Ñ Ð² памÑти: %s" - -#: grub-core/commands/efi/shim_lock.c:116 -msgid "bad shim signature" -msgstr "Ð½ÐµÐºÐ¾Ñ€Ñ€ÐµÐºÑ‚Ð½Ð°Ñ Ð¿Ð¾Ð´Ð¿Ð¸ÑÑŒ shim" - -#: grub-core/commands/efi/tpm.c:149 grub-core/commands/efi/tpm.c:189 -#: grub-core/commands/efi/tpm.c:256 grub-core/commands/efi/tpm.c:306 -msgid "Command failed" -msgstr "Сбой команды" - -#: grub-core/commands/efi/tpm.c:151 grub-core/commands/efi/tpm.c:191 -#: grub-core/commands/efi/tpm.c:258 grub-core/commands/efi/tpm.c:308 -msgid "Invalid parameter" -msgstr "Ðекорректный параметр" - -#: grub-core/commands/efi/tpm.c:154 grub-core/commands/efi/tpm.c:194 -#: grub-core/commands/efi/tpm.c:261 grub-core/commands/efi/tpm.c:311 -msgid "Output buffer too small" -msgstr "Выходной буфер Ñлишком мал" - -#: grub-core/commands/efi/tpm.c:156 grub-core/commands/efi/tpm.c:196 -#: grub-core/commands/efi/tpm.c:263 grub-core/commands/efi/tpm.c:313 -msgid "TPM unavailable" -msgstr "TPM недоÑтупен" - -#: grub-core/commands/efi/tpm.c:158 grub-core/commands/efi/tpm.c:198 -#: grub-core/commands/efi/tpm.c:265 grub-core/commands/efi/tpm.c:315 -msgid "Unknown TPM error" -msgstr "ÐеизвеÑÑ‚Ð½Ð°Ñ Ð¾ÑˆÐ¸Ð±ÐºÐ° TPM" - -#: grub-core/commands/efi/tpm.c:240 grub-core/commands/efi/tpm.c:288 -msgid "cannot allocate TPM event buffer" -msgstr "невозможно выделить буфер под ÑÐ¾Ð±Ñ‹Ñ‚Ð¸Ñ TPM" - -#: grub-core/commands/eval.c:63 -msgid "STRING ..." -msgstr "СТРОКР…" - -#: grub-core/commands/eval.c:64 -msgid "Evaluate arguments as GRUB commands" -msgstr "ВычиÑлить аргументы как команды GRUB" - -#: grub-core/commands/file.c:41 -msgid "Check if FILE can be booted as i386 PAE Xen unprivileged guest kernel" -msgstr "" -"Проверить, можно ли загрузить ФÐЙЛ как непривилегированное гоÑтевое Ñдро " -"i386 PAE Xen" - -#: grub-core/commands/file.c:44 -msgid "Check if FILE can be booted as x86_64 Xen unprivileged guest kernel" -msgstr "" -"Проверить, можно ли загрузить ФÐЙЛ как непривилегированное гоÑтевое Ñдро " -"x86_64 Xen" - -#: grub-core/commands/file.c:46 -msgid "Check if FILE can be used as Xen x86 privileged guest kernel" -msgstr "" -"Проверить, можно ли иÑпользовать ФÐЙЛ как привилегированное гоÑтевое Ñдро " -"Xen x86" - -#: grub-core/commands/file.c:48 -msgid "Check if FILE can be used as x86 multiboot kernel" -msgstr "Проверить, можно ли иÑпользовать ФÐЙЛ как Ñдро x86 multiboot" - -#: grub-core/commands/file.c:50 -msgid "Check if FILE can be used as x86 multiboot2 kernel" -msgstr "Проверить, можно ли иÑпользовать ФÐЙЛ как Ñдро x86 multiboot2" - -#: grub-core/commands/file.c:52 -msgid "Check if FILE is ARM Linux" -msgstr "Проверить, ÑвлÑетÑÑ Ð»Ð¸ ФÐЙЛ Ñдром ARM Linux" - -#: grub-core/commands/file.c:54 -msgid "Check if FILE is ARM64 Linux" -msgstr "Проверить, ÑвлÑетÑÑ Ð»Ð¸ ФÐЙЛ Ñдром ARM64 Linux" - -#: grub-core/commands/file.c:56 -msgid "Check if FILE is IA64 Linux" -msgstr "Проверить, ÑвлÑетÑÑ Ð»Ð¸ ФÐЙЛ Ñдром IA64 Linux" - -#: grub-core/commands/file.c:58 -msgid "Check if FILE is MIPS Linux" -msgstr "Проверить, ÑвлÑетÑÑ Ð»Ð¸ ФÐЙЛ Ñдром MIPS Linux" - -#: grub-core/commands/file.c:60 -msgid "Check if FILE is MIPSEL Linux" -msgstr "Проверить, ÑвлÑетÑÑ Ð»Ð¸ ФÐЙЛ Ñдром MIPSEL Linux" - -#: grub-core/commands/file.c:62 -msgid "Check if FILE is SPARC64 Linux" -msgstr "Проверить, ÑвлÑетÑÑ Ð»Ð¸ ФÐЙЛ Ñдром SPARC64 Linux" - -#: grub-core/commands/file.c:64 -msgid "Check if FILE is POWERPC Linux" -msgstr "Проверить, ÑвлÑетÑÑ Ð»Ð¸ ФÐЙЛ Ñдром POWERPC Linux" - -#: grub-core/commands/file.c:66 -msgid "Check if FILE is x86 Linux" -msgstr "Проверить, ÑвлÑетÑÑ Ð»Ð¸ ФÐЙЛ Ñдром x86 Linux" - -#: grub-core/commands/file.c:68 -msgid "Check if FILE is x86 Linux supporting 32-bit protocol" -msgstr "" -"Проверить, ÑвлÑетÑÑ Ð»Ð¸ ФÐЙЛ Ñдром x86 Linux Ñ Ð¿Ð¾Ð´Ð´ÐµÑ€Ð¶ÐºÐ¾Ð¹ 32-битного протокола" - -#: grub-core/commands/file.c:70 -msgid "Check if FILE is x86 kFreeBSD" -msgstr "Проверить, ÑвлÑетÑÑ Ð»Ð¸ ФÐЙЛ Ñдром x86 kFreeBSD" - -#: grub-core/commands/file.c:72 -msgid "Check if FILE is i386 kFreeBSD" -msgstr "Проверить, ÑвлÑетÑÑ Ð»Ð¸ ФÐЙЛ Ñдром i386 kFreeBSD" - -#: grub-core/commands/file.c:74 -msgid "Check if FILE is x86_64 kFreeBSD" -msgstr "Проверить, ÑвлÑетÑÑ Ð»Ð¸ ФÐЙЛ Ñдром x86_64 kFreeBSD" - -#: grub-core/commands/file.c:77 -msgid "Check if FILE is x86 kNetBSD" -msgstr "Проверить, ÑвлÑетÑÑ Ð»Ð¸ ФÐЙЛ Ñдром x86 kNetBSD" - -#: grub-core/commands/file.c:79 -msgid "Check if FILE is i386 kNetBSD" -msgstr "Проверить, ÑвлÑетÑÑ Ð»Ð¸ ФÐЙЛ Ñдром i386 kNetBSD" - -#: grub-core/commands/file.c:81 -msgid "Check if FILE is x86_64 kNetBSD" -msgstr "Проверить, ÑвлÑетÑÑ Ð»Ð¸ ФÐЙЛ Ñдром x86_64 kNetBSD" - -#: grub-core/commands/file.c:84 -msgid "Check if FILE is i386 EFI file" -msgstr "Проверить, ÑвлÑетÑÑ Ð»Ð¸ ФÐЙЛ файлом i386 EFI" - -#: grub-core/commands/file.c:86 -msgid "Check if FILE is x86_64 EFI file" -msgstr "Проверить, ÑвлÑетÑÑ Ð»Ð¸ ФÐЙЛ файлом x86_64 EFI" - -#: grub-core/commands/file.c:88 -msgid "Check if FILE is IA64 EFI file" -msgstr "Проверить, ÑвлÑетÑÑ Ð»Ð¸ ФÐЙЛ файлом IA64 EFI" - -#: grub-core/commands/file.c:90 -msgid "Check if FILE is ARM64 EFI file" -msgstr "Проверить, ÑвлÑетÑÑ Ð»Ð¸ ФÐЙЛ файлом ARM64 EFI" - -#: grub-core/commands/file.c:92 -msgid "Check if FILE is ARM EFI file" -msgstr "Проверить, ÑвлÑетÑÑ Ð»Ð¸ ФÐЙЛ файлом ARM EFI" - -#: grub-core/commands/file.c:94 -msgid "Check if FILE is RISC-V 32bit EFI file" -msgstr "Проверить, ÑвлÑетÑÑ Ð»Ð¸ ФÐЙЛ 32-битным файлом RISC-V EFI" - -#: grub-core/commands/file.c:96 -msgid "Check if FILE is RISC-V 64bit EFI file" -msgstr "Проверить, ÑвлÑетÑÑ Ð»Ð¸ ФÐЙЛ 64-битным файлом RISC-V EFI" - -#: grub-core/commands/file.c:98 -msgid "Check if FILE is hiberfil.sys in hibernated state" -msgstr "Проверить, ÑвлÑетÑÑ Ð»Ð¸ ФÐЙЛ hiberfil.sys Ñ ÑоÑтоÑнием ÑпÑщего режима" - -#: grub-core/commands/file.c:100 -msgid "Check if FILE is x86_64 XNU (Mac OS X kernel)" -msgstr "Проверить, ÑвлÑетÑÑ Ð»Ð¸ ФÐЙЛ файлом x86_64 XNU (Ñдро Mac OS X)" - -#: grub-core/commands/file.c:102 -msgid "Check if FILE is i386 XNU (Mac OS X kernel)" -msgstr "Проверить, ÑвлÑетÑÑ Ð»Ð¸ ФÐЙЛ файлом i386 XNU (Ñдро Mac OS X)" - -#: grub-core/commands/file.c:104 -msgid "Check if FILE is XNU (Mac OS X kernel) hibernated image" -msgstr "" -"Проверить, ÑвлÑетÑÑ Ð»Ð¸ ФÐЙЛ образом XNU в ÑпÑщем режиме (Ñдро Mac OS X)" - -#: grub-core/commands/file.c:106 -msgid "Check if FILE is BIOS bootsector" -msgstr "Проверить, ÑвлÑетÑÑ Ð»Ð¸ ФÐЙЛ загрузочным Ñектором BIOS" - -#. TRANSLATORS: it's a standalone boolean value, -#. opposite of "true". -#: grub-core/commands/file.c:675 grub-core/commands/i386/cmostest.c:63 -#: grub-core/commands/i386/cpuid.c:71 grub-core/commands/keystatus.c:83 -#: grub-core/commands/keystatus.c:87 grub-core/commands/keystatus.c:96 -#: grub-core/commands/test.c:436 grub-core/commands/true.c:39 -#: grub-core/script/execute.c:247 grub-core/script/execute.c:1039 -msgid "false" -msgstr "ложь" - -#: grub-core/commands/file.c:684 -msgid "OPTIONS FILE" -msgstr "ПÐРÐМЕТРЫ ФÐЙЛ" - -#: grub-core/commands/file.c:685 -msgid "Check if FILE is of specified type." -msgstr "Проверить, имеет ли ФÐЙЛ указанный тип." - -#. TRANSLATORS: It means that the specified partition e.g. -#. hd0,msdos1=/dev/sda1 doesn't exist. -#: grub-core/commands/gptsync.c:140 grub-core/kern/disk.c:258 -msgid "no such partition" -msgstr "нет такого раздела" - -#: grub-core/commands/gptsync.c:240 -#, c-format -msgid "New MBR is written to `%s'\n" -msgstr "Ðовый MBR запиÑан в «%s»\n" - -#: grub-core/commands/gptsync.c:252 -msgid "DEVICE [PARTITION[+/-[TYPE]]] ..." -msgstr "УСТРОЙСТВО [РÐЗДЕЛ[+/-[ТИП]]] …" - -#. TRANSLATORS: MBR type is one-byte partition -#. type id. -#: grub-core/commands/gptsync.c:255 -msgid "" -"Fill hybrid MBR of GPT drive DEVICE. Specified partitions will be a part of " -"hybrid MBR. Up to 3 partitions are allowed. TYPE is an MBR type. + means " -"that partition is active. Only one partition can be active." -msgstr "" -"Укомплектовать GPT гибридным MBR Ð´Ð»Ñ Ð£Ð¡Ð¢Ð ÐžÐ™Ð¡Ð¢Ð’Ð. Указанные разделы будут " -"чаÑтью гибридного MBR. Можно указать до 3 разделов. Ð’ ТИПЕ задаётÑÑ Ñ‚Ð¸Ð¿ MBR. " -"Символ + означает, что раздел активный. Ðктивным может быть только один " -"раздел." - -#: grub-core/commands/halt.c:40 -msgid "" -"Halts the computer. This command does not work on all firmware " -"implementations." -msgstr "ОÑтановить компьютер. Эта команда работает не везде." - -#: grub-core/commands/hashsum.c:32 -msgid "Specify hash to use." -msgstr "ИÑпользовать указанный Ñ…Ñш." - -#: grub-core/commands/hashsum.c:32 -msgid "HASH" -msgstr "ХЭШ" - -#: grub-core/commands/hashsum.c:33 -msgid "Check hashes of files with hash list FILE." -msgstr "Проверить Ñ…Ñши файлов по ÑпиÑку Ñ…Ñшей из ФÐЙЛÐ." - -#: grub-core/commands/hashsum.c:35 -msgid "Base directory for hash list." -msgstr "Базовый каталог Ð´Ð»Ñ ÑпиÑка Ñ…Ñшей." - -#. TRANSLATORS: platform here isn't identifier. It can be translated. -#: grub-core/commands/hashsum.c:35 grub-core/commands/ls.c:150 -#: grub-core/commands/macbless.c:226 grub-core/commands/syslinuxcfg.c:51 -#: grub-core/commands/syslinuxcfg.c:54 grub-core/kern/emu/main.c:106 -#: include/grub/util/install.h:50 include/grub/util/install.h:53 -#: include/grub/util/install.h:56 include/grub/util/install.h:59 -#: util/grub-install.c:250 util/grub-install.c:252 util/grub-install.c:297 -#: util/grub-install.c:299 util/grub-mkimage.c:64 util/grub-mkimage.c:67 -#: util/grub-mknetdir.c:46 util/grub-mknetdir.c:48 util/grub-mkrescue.c:99 -#: util/grub-setup.c:82 util/grub-syslinux2cfg.c:63 util/grub-syslinux2cfg.c:65 -#: util/grub-syslinux2cfg.c:67 util/grub-syslinux2cfg.c:71 -msgid "DIR" -msgstr "КÐТÐЛОГ" - -#: grub-core/commands/hashsum.c:37 -msgid "Don't stop after first error." -msgstr "Ðе оÑтанавливатьÑÑ Ð¿Ð¾Ñле первой ошибки." - -#: grub-core/commands/hashsum.c:38 -msgid "Uncompress file before checksumming." -msgstr "РаÑжать файл перед проверкой контрольной Ñуммы." - -#: grub-core/commands/hashsum.c:163 -#, c-format -msgid "%s: READ ERROR\n" -msgstr "%s: ОШИБКРЧТЕÐИЯ\n" - -#: grub-core/commands/hashsum.c:177 -#, c-format -msgid "%s: HASH MISMATCH\n" -msgstr "%s: ÐЕСОВПÐДЕÐИЕ ХЭШÐ\n" - -#: grub-core/commands/hashsum.c:188 -#, c-format -msgid "%s: OK\n" -msgstr "%s: OK\n" - -#: grub-core/commands/hashsum.c:282 -msgid "-h HASH [-c FILE [-p PREFIX]] [FILE1 [FILE2 ...]]" -msgstr "-h ХЭШ [-c ФÐЙЛ [-p ПРЕФИКС]] [ФÐЙЛ1 [ФÐЙЛ2 …]]" - -#. TRANSLATORS: "hash checksum" is just to -#. be a bit more precise, you can treat it as -#. just "hash". -#: grub-core/commands/hashsum.c:287 grub-core/commands/hashsum.c:292 -#: grub-core/commands/hashsum.c:297 grub-core/commands/hashsum.c:302 -#: grub-core/commands/hashsum.c:307 grub-core/commands/hashsum.c:313 -msgid "Compute or check hash checksum." -msgstr "ВычиÑлить и проверить Ñ…Ñш контрольной Ñуммы." - -#: grub-core/commands/hashsum.c:290 grub-core/commands/hashsum.c:295 -#: grub-core/commands/hashsum.c:300 grub-core/commands/hashsum.c:305 -#: grub-core/commands/hashsum.c:311 -msgid "[-c FILE [-p PREFIX]] [FILE1 [FILE2 ...]]" -msgstr "[-c ФÐЙЛ [-p ПРЕФИКС]] [ФÐЙЛ1 [ФÐЙЛ2 …]]" - -#: grub-core/commands/hdparm.c:33 -msgid "" -"Set Advanced Power Management\n" -"(1=low, ..., 254=high, 255=off)." -msgstr "" -"ÐаÑтроить Advanced Power Management\n" -"(1=мин, …, 254=макÑ, 255=выкл)." - -#: grub-core/commands/hdparm.c:36 -msgid "Display power mode." -msgstr "Показать режим питаниÑ." - -#: grub-core/commands/hdparm.c:37 -msgid "Freeze ATA security settings until reset." -msgstr "ЗафикÑировать наÑтройки безопаÑноÑти ATA до перезагрузки." - -#: grub-core/commands/hdparm.c:39 -msgid "Display SMART health status." -msgstr "Показать ÑоÑтоÑние работоÑпоÑобноÑти по SMART." - -#: grub-core/commands/hdparm.c:40 -msgid "" -"Set Automatic Acoustic Management\n" -"(0=off, 128=quiet, ..., 254=fast)." -msgstr "" -"ÐаÑтроить Automatic Acoustic Management\n" -"(0=выкл, 128=тихо, …, 254=быÑтро)." - -#: grub-core/commands/hdparm.c:43 -msgid "" -"Set standby timeout\n" -"(0=off, 1=5s, 2=10s, ..., 240=20m, 241=30m, ...)." -msgstr "" -"ÐаÑтроить задержку до перехода в дежурный режим (standby)\n" -"(0=выкл, 1=5Ñ, 2=10Ñ, …, 240=20мин, 241=30мин, …)." - -#: grub-core/commands/hdparm.c:46 -msgid "Set drive to standby mode." -msgstr "ПеревеÑти уÑтройÑтво в дежурный режим." - -#: grub-core/commands/hdparm.c:47 -msgid "Set drive to sleep mode." -msgstr "ПеревеÑти уÑтройÑтво в ÑпÑщий (sleep) режим." - -#: grub-core/commands/hdparm.c:48 -msgid "Print drive identity and settings." -msgstr "Показать идентификационную информацию и наÑтройки уÑтройÑтва." - -#: grub-core/commands/hdparm.c:50 -msgid "Show raw contents of ATA IDENTIFY sector." -msgstr "Показать необработанное Ñодержимое Ñектора ATA IDENTIFY." - -#: grub-core/commands/hdparm.c:52 -msgid "Disable/enable SMART (0/1)." -msgstr "Выключить/включить SMART (0/1)." - -#: grub-core/commands/hdparm.c:53 -msgid "Do not print messages." -msgstr "Ðе показывать ÑообщениÑ." - -#: grub-core/commands/hdparm.c:286 grub-core/commands/i386/rdmsr.c:68 -#: grub-core/commands/iorw.c:47 grub-core/commands/legacycfg.c:760 -#: grub-core/commands/legacycfg.c:812 grub-core/commands/macbless.c:190 -#: grub-core/commands/memrw.c:47 grub-core/commands/pgp.c:738 -#: grub-core/commands/pgp.c:792 grub-core/commands/search.c:304 -#: grub-core/commands/search_wrap.c:179 grub-core/commands/setpci.c:243 -#: grub-core/commands/sleep.c:71 grub-core/fs/zfs/zfsinfo.c:279 -#: grub-core/fs/zfs/zfsinfo.c:358 grub-core/gettext/gettext.c:492 -#: grub-core/kern/corecmd.c:65 grub-core/kern/corecmd.c:79 -#: grub-core/mmap/mmap.c:430 grub-core/net/dns.c:713 grub-core/net/dns.c:745 -#: grub-core/net/net.c:694 grub-core/net/net.c:1052 -#: grub-core/normal/context.c:194 grub-core/script/execute.c:131 -#: grub-core/term/gfxterm_background.c:136 -msgid "one argument expected" -msgstr "ожидаетÑÑ Ð¾Ð´Ð¸Ð½ аргумент" - -#: grub-core/commands/hdparm.c:440 -msgid "[OPTIONS] DISK" -msgstr "[ПÐРÐМЕТРЫ] ДИСК" - -#: grub-core/commands/hdparm.c:441 -msgid "Get/set ATA disk parameters." -msgstr "Получить/Задать параметры ATA-диÑка." - -#: grub-core/commands/help.c:132 grub-core/lib/arg.c:109 -#: grub-core/lib/gnulib/argp-help.c:1616 -msgid "Usage:" -msgstr "ИÑпользование:" - -#: grub-core/commands/help.c:146 -msgid "[PATTERN ...]" -msgstr "[ШÐБЛОР…]" - -#: grub-core/commands/help.c:147 -msgid "Show a help message." -msgstr "Показать Ñправочное Ñообщение." - -#: grub-core/commands/hexdump.c:31 -msgid "Skip offset bytes from the beginning of file." -msgstr "ПропуÑтить указанное чиÑло байт от начала файла." - -#: grub-core/commands/hexdump.c:33 -msgid "Read only LENGTH bytes." -msgstr "Прочитать только ЗÐДÐÐÐОЕ чиÑло байт." - -#: grub-core/commands/hexdump.c:125 -msgid "[OPTIONS] FILE_OR_DEVICE" -msgstr "[ПÐРÐМЕТРЫ] ФÐЙЛ_ИЛИ_УСТРОЙСТВО" - -#: grub-core/commands/hexdump.c:126 -msgid "Show raw contents of a file or memory." -msgstr "Показать необработанное Ñодержимое файла или памÑти." - -#: grub-core/commands/i386/cmosdump.c:58 -msgid "Show raw dump of the CMOS contents." -msgstr "Показать дамп Ñодержимого CMOS." - -#: grub-core/commands/i386/cmostest.c:108 -#: grub-core/commands/i386/cmostest.c:111 -#: grub-core/commands/i386/cmostest.c:114 -msgid "BYTE:BIT" -msgstr "БÐЙТ:БИТ" - -#: grub-core/commands/i386/cmostest.c:109 -msgid "Test bit at BYTE:BIT in CMOS." -msgstr "Проверить бит по адреÑу БÐЙТ:БИТ в CMOS." - -#: grub-core/commands/i386/cmostest.c:112 -msgid "Clear bit at BYTE:BIT in CMOS." -msgstr "СброÑить бит по адреÑу БÐЙТ:БИТ в CMOS." - -#. TRANSLATORS: A bit may be either set (1) or clear (0). -#: grub-core/commands/i386/cmostest.c:116 -msgid "Set bit at BYTE:BIT in CMOS." -msgstr "УÑтановить бит по адреÑу БÐЙТ:БИТ в CMOS." - -#: grub-core/commands/i386/coreboot/cb_timestamps.c:120 -msgid "Show coreboot boot time statistics." -msgstr "Показать ÑтатиÑтику по загрузке coreboot." - -#: grub-core/commands/i386/coreboot/cbls.c:137 -msgid "List coreboot tables." -msgstr "СпиÑок таблиц coreboot." - -#. TRANSLATORS: "(default)" at the end means that this option is used if -#. no argument is specified. -#: grub-core/commands/i386/cpuid.c:36 -msgid "Check if CPU supports 64-bit (long) mode (default)." -msgstr "" -"Проверить, поддерживаетÑÑ Ð»Ð¸ процеÑÑором 64-битный («длинный») режим (по " -"умолчанию)." - -#: grub-core/commands/i386/cpuid.c:37 -msgid "Check if CPU supports Physical Address Extension." -msgstr "" -"Проверить, поддерживаетÑÑ Ð»Ð¸ процеÑÑором раÑширение физичеÑких адреÑов (PAE)." - -#: grub-core/commands/i386/cpuid.c:119 -msgid "Check for CPU features." -msgstr "Проверить возможноÑти ЦП." - -#. TRANSLATORS: In this file "mapping" refers to a change GRUB makes so if -#. your language doesn't have an equivalent of "mapping" you can -#. use the word like "rerouting". -#. -#: grub-core/commands/i386/pc/drivemap.c:43 -msgid "Show the current mappings." -msgstr "Показать текущие переназначениÑ." - -#: grub-core/commands/i386/pc/drivemap.c:44 -msgid "Reset all mappings to the default values." -msgstr "СброÑить вÑе Ð¿ÐµÑ€ÐµÐ½Ð°Ð·Ð½Ð°Ñ‡ÐµÐ½Ð¸Ñ Ð² Ð·Ð½Ð°Ñ‡ÐµÐ½Ð¸Ñ Ð¿Ð¾ умолчанию." - -#: grub-core/commands/i386/pc/drivemap.c:45 -msgid "Perform both direct and reverse mappings." -msgstr "Выполнить прÑмые и обратные переназначениÑ." - -#: grub-core/commands/i386/pc/drivemap.c:184 -msgid "No drives have been remapped" -msgstr "Преобразованные уÑтройÑтва отÑутÑтвуют" - -#. TRANSLATORS: This is the header of mapping list. -#. On the left is how OS will see the disks and -#. on the right current GRUB vision. -#: grub-core/commands/i386/pc/drivemap.c:191 -msgid "OS disk #num ------> GRUB/BIOS device" -msgstr "диÑк #ном ОС ------> уÑтройÑтво GRUB/BIOS" - -#: grub-core/commands/i386/pc/drivemap.c:413 -msgid "-l | -r | [-s] grubdev osdisk." -msgstr "-l | -r | [-s] уÑтройÑтво_grub диÑк_оÑ." - -#: grub-core/commands/i386/pc/drivemap.c:414 -msgid "Manage the BIOS drive mappings." -msgstr "УправлÑть BIOS переназначениÑми уÑтройÑтв." - -#: grub-core/commands/i386/pc/halt.c:31 -msgid "Do not use APM to halt the computer." -msgstr "Ðе иÑпользовать APM Ð´Ð»Ñ Ð¾Ñтанова компьютера." - -#: grub-core/commands/i386/pc/halt.c:119 -msgid "Halt the system, if possible using APM." -msgstr "ОÑтановить ÑиÑтему, еÑли возможно, Ñ Ð¿Ð¾Ð¼Ð¾Ñ‰ÑŒÑŽ APM." - -#: grub-core/commands/i386/pc/lsapm.c:75 -msgid "no APM found" -msgstr "APM не найден" - -#: grub-core/commands/i386/pc/lsapm.c:77 -#, c-format -msgid "" -"Version %u.%u\n" -"32-bit CS = 0x%x, len = 0x%x, offset = 0x%x\n" -"16-bit CS = 0x%x, len = 0x%x\n" -"DS = 0x%x, len = 0x%x\n" -msgstr "" -"ВерÑÐ¸Ñ %u.%u\n" -"32-битный CS = 0x%x, длина = 0x%x, Ñмещение = 0x%x\n" -"16-битный CS = 0x%x, длина = 0x%x\n" -"DS = 0x%x, длина = 0x%x\n" - -#: grub-core/commands/i386/pc/lsapm.c:86 -msgid "16-bit protected interface supported\n" -msgstr "поддерживаетÑÑ 16-битный защищённый интерфейÑ\n" - -#: grub-core/commands/i386/pc/lsapm.c:87 -msgid "16-bit protected interface unsupported\n" -msgstr "16-битный защищённый Ð¸Ð½Ñ‚ÐµÑ€Ñ„ÐµÐ¹Ñ Ð½Ðµ поддерживаетÑÑ\n" - -#: grub-core/commands/i386/pc/lsapm.c:89 -msgid "32-bit protected interface supported\n" -msgstr "поддерживаетÑÑ 32-битный защищённый интерфейÑ\n" - -#: grub-core/commands/i386/pc/lsapm.c:90 -msgid "32-bit protected interface unsupported\n" -msgstr "32-битный защищённый Ð¸Ð½Ñ‚ÐµÑ€Ñ„ÐµÐ¹Ñ Ð½Ðµ поддерживаетÑÑ\n" - -#: grub-core/commands/i386/pc/lsapm.c:92 -msgid "CPU Idle slows down processor\n" -msgstr "CPU Idle замедлÑет процеÑÑор\n" - -#: grub-core/commands/i386/pc/lsapm.c:93 -msgid "CPU Idle doesn't slow down processor\n" -msgstr "CPU Idle не замедлÑет процеÑÑор\n" - -#: grub-core/commands/i386/pc/lsapm.c:95 -msgid "APM disabled\n" -msgstr "APM запрещён\n" - -#: grub-core/commands/i386/pc/lsapm.c:95 -msgid "APM enabled\n" -msgstr "APM разрешён\n" - -#: grub-core/commands/i386/pc/lsapm.c:97 -msgid "APM disengaged\n" -msgstr "APM не активирован\n" - -#: grub-core/commands/i386/pc/lsapm.c:97 -msgid "APM engaged\n" -msgstr "APM активирован\n" - -#: grub-core/commands/i386/pc/lsapm.c:107 -msgid "Show APM information." -msgstr "Показать информацию APM." - -#. TRANSLATORS: It's musical notes, not the notes -#. you take. Play command expects arguments which can -#. be either a filename or tempo+notes. -#. This error happens if none is specified. -#: grub-core/commands/i386/pc/play.c:88 -msgid "filename or tempo and notes expected" -msgstr "ожидаетÑÑ Ð¸Ð¼Ñ Ñ„Ð°Ð¹Ð»Ð° или темп и ноты" - -#: grub-core/commands/i386/pc/play.c:113 grub-core/commands/i386/pc/play.c:144 -#, c-format -msgid "Invalid tempo in %s" -msgstr "Ðеверный темп в %s" - -#: grub-core/commands/i386/pc/play.c:151 grub-core/commands/macbless.c:172 -#: grub-core/fs/archelp.c:260 grub-core/fs/bfs.c:621 grub-core/fs/bfs.c:704 -#: grub-core/fs/btrfs.c:1726 grub-core/fs/btrfs.c:1755 -#: grub-core/fs/btrfs.c:1799 grub-core/fs/btrfs.c:1882 -#: grub-core/fs/btrfs.c:1906 grub-core/fs/fshelp.c:257 grub-core/fs/jfs.c:696 -#: grub-core/fs/minix.c:426 grub-core/fs/ufs.c:544 grub-core/fs/zfs/zfs.c:2083 -#: grub-core/fs/zfs/zfs.c:2095 grub-core/fs/zfs/zfs.c:2301 -#: grub-core/net/http.c:120 -#, c-format -msgid "file `%s' not found" -msgstr "файл «%s» не найден" - -#: grub-core/commands/i386/pc/play.c:162 grub-core/commands/i386/pc/play.c:171 -#: grub-core/kern/misc.c:419 grub-core/script/execute.c:138 -#: grub-core/script/execute.c:244 -msgid "unrecognized number" -msgstr "нераÑпознанное чиÑло" - -#: grub-core/commands/i386/pc/play.c:190 -msgid "FILE | TEMPO [PITCH1 DURATION1] [PITCH2 DURATION2] ... " -msgstr "ФÐЙЛ | ТЕМП [ТОÐ1 ДЛИТЕЛЬÐОСТЬ1] [ТОÐ2 ДЛИТЕЛЬÐОСТЬ2] … " - -#: grub-core/commands/i386/pc/play.c:191 -msgid "Play a tune." -msgstr "Проиграть мелодию." - -#: grub-core/commands/i386/pc/sendkey.c:39 -msgid "set numlock mode" -msgstr "включить режим numlock" - -#: grub-core/commands/i386/pc/sendkey.c:40 -msgid "set capslock mode" -msgstr "включить режим capslock" - -#: grub-core/commands/i386/pc/sendkey.c:41 -msgid "set scrolllock mode" -msgstr "включить режим scrolllock" - -#: grub-core/commands/i386/pc/sendkey.c:42 -msgid "set insert mode" -msgstr "включить режим вÑтавки" - -#: grub-core/commands/i386/pc/sendkey.c:43 -msgid "set pause mode" -msgstr "включить режим паузы" - -#: grub-core/commands/i386/pc/sendkey.c:44 -msgid "press left shift" -msgstr "нажать левый shift" - -#: grub-core/commands/i386/pc/sendkey.c:45 -msgid "press right shift" -msgstr "нажать правый shift" - -#: grub-core/commands/i386/pc/sendkey.c:46 -msgid "press SysRq" -msgstr "нажать SysRq" - -#: grub-core/commands/i386/pc/sendkey.c:47 -msgid "press NumLock key" -msgstr "нажать клавишу NumLock" - -#: grub-core/commands/i386/pc/sendkey.c:48 -msgid "press CapsLock key" -msgstr "нажать клавишу CapsLock" - -#: grub-core/commands/i386/pc/sendkey.c:49 -msgid "press ScrollLock key" -msgstr "нажать клавишу ScrollLock" - -#: grub-core/commands/i386/pc/sendkey.c:50 -msgid "press Insert key" -msgstr "нажать клавишу Insert" - -#: grub-core/commands/i386/pc/sendkey.c:51 -msgid "press left alt" -msgstr "нажать левый alt" - -#: grub-core/commands/i386/pc/sendkey.c:52 -msgid "press right alt" -msgstr "нажать правый alt" - -#: grub-core/commands/i386/pc/sendkey.c:53 -msgid "press left ctrl" -msgstr "нажать левый ctrl" - -#: grub-core/commands/i386/pc/sendkey.c:54 -msgid "press right ctrl" -msgstr "нажать правый ctrl" - -#: grub-core/commands/i386/pc/sendkey.c:55 -msgid "don't update LED state" -msgstr "не обновлÑть ÑоÑтоÑние Ñветодиодов" - -#: grub-core/commands/i386/pc/sendkey.c:372 -msgid "[KEYSTROKE1] [KEYSTROKE2] ..." -msgstr "[ÐÐБОРÐÐЖÐТИЙ1] [ÐÐБОРÐÐЖÐТИЙ2] …" - -#. TRANSLATORS: It can emulate multiple -#. keypresses. -#: grub-core/commands/i386/pc/sendkey.c:375 -msgid "Emulate a keystroke sequence" -msgstr "Эмулировать набор нажатий" - -#: grub-core/commands/i386/rdmsr.c:37 grub-core/commands/iorw.c:34 -#: grub-core/commands/memrw.c:33 grub-core/commands/setpci.c:73 -msgid "Save read value into variable VARNAME." -msgstr "Сохранить прочитанное значение в переменную ИМЯ_ПЕРЕМЕÐÐОЙ." - -#: grub-core/commands/i386/rdmsr.c:38 grub-core/commands/iorw.c:35 -#: grub-core/commands/memrw.c:34 grub-core/commands/probe.c:40 -#: grub-core/commands/search_wrap.c:40 grub-core/commands/setpci.c:74 -#: grub-core/commands/tr.c:32 -msgid "VARNAME" -msgstr "ИМЯ_ПЕРЕМЕÐÐОЙ" - -#: grub-core/commands/i386/rdmsr.c:55 grub-core/commands/i386/rdmsr.c:60 -#: grub-core/commands/i386/rdmsr.c:65 grub-core/commands/i386/wrmsr.c:47 -#: grub-core/commands/i386/wrmsr.c:52 grub-core/commands/i386/wrmsr.c:57 -msgid "unsupported instruction" -msgstr "Ð½ÐµÐ¿Ð¾Ð´Ð´ÐµÑ€Ð¶Ð¸Ð²Ð°ÐµÐ¼Ð°Ñ Ð¸Ð½ÑтрукциÑ" - -#: grub-core/commands/i386/rdmsr.c:77 grub-core/commands/i386/wrmsr.c:69 -#: grub-core/commands/i386/wrmsr.c:77 grub-core/net/dns.c:727 -msgid "invalid argument" -msgstr "неверный аргумент" - -#: grub-core/commands/i386/rdmsr.c:94 grub-core/commands/memrw.c:125 -#: grub-core/commands/memrw.c:129 grub-core/commands/memrw.c:133 -msgid "ADDR" -msgstr "ÐДРЕС" - -#: grub-core/commands/i386/rdmsr.c:95 -msgid "Read a CPU model specific register." -msgstr "Прочитать Ñпециальный региÑтр модели ЦП." - -#: grub-core/commands/i386/wrmsr.c:86 -msgid "ADDR VALUE" -msgstr "ÐДРЕС ЗÐÐЧЕÐИЕ" - -#: grub-core/commands/i386/wrmsr.c:87 -msgid "Write a value to a CPU model specific register." -msgstr "ЗапиÑать в Ñпециальный региÑтр модели ЦП." - -#: grub-core/commands/ieee1275/suspend.c:34 -msgid "Run `go' to resume GRUB." -msgstr "Введите «go» Ð´Ð»Ñ Ð²Ð¾Ð·Ð¾Ð±Ð½Ð¾Ð²Ð»ÐµÐ½Ð¸Ñ Ñ€Ð°Ð±Ð¾Ñ‚Ñ‹ GRUB." - -#: grub-core/commands/ieee1275/suspend.c:45 -msgid "Return to IEEE1275 prompt." -msgstr "ВернутьÑÑ Ð² приглашение IEEE1275." - -#: grub-core/commands/iorw.c:123 grub-core/commands/iorw.c:127 -#: grub-core/commands/iorw.c:131 grub-core/gdb/gdb.c:79 -msgid "PORT" -msgstr "ПОРТ" - -#: grub-core/commands/iorw.c:123 -msgid "Read 8-bit value from PORT." -msgstr "Прочитать 8-битное значение из ПОРТÐ." - -#: grub-core/commands/iorw.c:127 -msgid "Read 16-bit value from PORT." -msgstr "Прочитать 16-битное значение из ПОРТÐ." - -#: grub-core/commands/iorw.c:131 -msgid "Read 32-bit value from PORT." -msgstr "Прочитать 32-битное значение из ПОРТÐ." - -#: grub-core/commands/iorw.c:135 grub-core/commands/iorw.c:139 -msgid "PORT VALUE [MASK]" -msgstr "ПОРТ ЗÐÐЧЕÐИЕ [МÐСКÐ]" - -#: grub-core/commands/iorw.c:136 -msgid "Write 8-bit VALUE to PORT." -msgstr "ЗапиÑать 8-битное ЗÐÐЧЕÐИЕ в ПОРТ." - -#: grub-core/commands/iorw.c:140 -msgid "Write 16-bit VALUE to PORT." -msgstr "ЗапиÑать 16-битное ЗÐÐЧЕÐИЕ в ПОРТ." - -#: grub-core/commands/iorw.c:143 grub-core/commands/memrw.c:137 -#: grub-core/commands/memrw.c:141 grub-core/commands/memrw.c:145 -msgid "ADDR VALUE [MASK]" -msgstr "ÐДРЕС ЗÐÐЧЕÐИЕ [МÐСКÐ]" - -#: grub-core/commands/iorw.c:144 -msgid "Write 32-bit VALUE to PORT." -msgstr "ЗапиÑать 32-битное ЗÐÐЧЕÐИЕ в ПОРТ." - -#: grub-core/commands/keylayouts.c:215 grub-core/commands/loadenv.c:61 -#: grub-core/commands/nativedisk.c:189 grub-core/efiemu/main.c:235 -#: grub-core/font/font.c:428 grub-core/gfxmenu/gfxmenu.c:63 -#: grub-core/kern/device.c:42 grub-core/kern/dl.c:740 -#, c-format -msgid "variable `%s' isn't set" -msgstr "Ð¿ÐµÑ€ÐµÐ¼ÐµÐ½Ð½Ð°Ñ Â«%s» не определена" - -#: grub-core/commands/keylayouts.c:301 -msgid "Load a keyboard layout." -msgstr "Загрузить раÑкладку клавиатуры." - -#. TRANSLATORS: "Check" in a sense that if this key is pressed then -#. "true" is returned, otherwise "false". -#: grub-core/commands/keystatus.c:32 -msgid "Check Shift key." -msgstr "Проверить клавишу Shift." - -#: grub-core/commands/keystatus.c:33 -msgid "Check Control key." -msgstr "Проверить клавишу Control." - -#: grub-core/commands/keystatus.c:34 -msgid "Check Alt key." -msgstr "Проверить клавишу Alt." - -#. TRANSLATORS: there are 3 modifiers. -#: grub-core/commands/keystatus.c:106 -msgid "Check key modifier status." -msgstr "Проверить ÑоÑтоÑние модификаторов клавиш." - -#: grub-core/commands/legacycfg.c:512 grub-core/commands/legacycfg.c:526 -#: grub-core/commands/legacycfg.c:546 grub-core/commands/legacycfg.c:559 -#: grub-core/commands/time.c:43 grub-core/script/function.c:109 -#: util/grub-file.c:100 util/grub-fstest.c:57 util/grub-mount.c:69 -#, c-format -msgid "can't find command `%s'" -msgstr "не удалоÑÑŒ найти команду «%s»" - -#: grub-core/commands/legacycfg.c:813 grub-core/normal/auth.c:225 -#: util/grub-mkpasswd-pbkdf2.c:139 -msgid "Enter password: " -msgstr "Введите пароль: " - -#. TRANSLATORS: "legacy config" means -#. "config as used by grub-legacy". -#: grub-core/commands/legacycfg.c:837 -msgid "Parse legacy config in same context" -msgstr "Разобрать Ñтарый формат наÑтройки в том же контекÑте" - -#: grub-core/commands/legacycfg.c:842 -msgid "Parse legacy config in new context" -msgstr "Разобрать Ñтарый формат наÑтройки в новом контекÑте" - -#: grub-core/commands/legacycfg.c:847 -msgid "Parse legacy config in same context taking only menu entries" -msgstr "" -"Разобрать Ñтарый формат наÑтройки в том же контекÑте, взÑв только пункты меню" - -#: grub-core/commands/legacycfg.c:852 -msgid "Parse legacy config in new context taking only menu entries" -msgstr "" -"Разобрать Ñтарый формат наÑтройки в новом контекÑте, взÑв только пункты меню" - -#: grub-core/commands/legacycfg.c:856 -msgid "[--no-mem-option] [--type=TYPE] FILE [ARG ...]" -msgstr "[--no-mem-option] [--type=ТИП] ФÐЙЛ [ÐРГУМЕÐТ …]" - -#: grub-core/commands/legacycfg.c:857 -msgid "Simulate grub-legacy `kernel' command" -msgstr "Имитировать команду «kernel» как в grub-legacy" - -#: grub-core/commands/legacycfg.c:861 grub-core/commands/legacycfg.c:865 -msgid "FILE [ARG ...]" -msgstr "ФÐЙЛ [ÐРГУМЕÐТ …]" - -#: grub-core/commands/legacycfg.c:862 -msgid "Simulate grub-legacy `initrd' command" -msgstr "Имитировать команду «initrd» как в grub-legacy" - -#: grub-core/commands/legacycfg.c:866 -msgid "Simulate grub-legacy `modulenounzip' command" -msgstr "Имитировать команду «modulenounzip» как в grub-legacy" - -#: grub-core/commands/legacycfg.c:870 grub-core/commands/legacycfg.c:875 -msgid "[--md5] PASSWD [FILE]" -msgstr "[--md5] ПÐРОЛЬ [ФÐЙЛ]" - -#: grub-core/commands/legacycfg.c:871 -msgid "Simulate grub-legacy `password' command" -msgstr "Имитировать команду «password» как в grub-legacy" - -#: grub-core/commands/legacycfg.c:876 -msgid "Simulate grub-legacy `password' command in menu entry mode" -msgstr "Имитировать команду «password» как в grub-legacy в режиме пункта меню" - -#. TRANSLATORS: This option is used to override default filename -#. for loading and storing environment. -#: grub-core/commands/loadenv.c:37 -msgid "Specify filename." -msgstr "Указать Ð¸Ð¼Ñ Ñ„Ð°Ð¹Ð»Ð°." - -#: grub-core/commands/loadenv.c:39 -msgid "Skip signature-checking of the environment file." -msgstr "ПропуÑтить проверку подпиÑи файла окружениÑ." - -#: grub-core/commands/loadenv.c:451 -msgid "[-f FILE] [-s|--skip-sig] [variable_name_to_whitelist] [...]" -msgstr "[-f ФÐЙЛ] [-s|--skip-sig] [имÑ_переменной_длÑ_белого_ÑпиÑка] […]" - -#: grub-core/commands/loadenv.c:452 -msgid "Load variables from environment block file." -msgstr "Загрузить переменные из файла блока окружениÑ." - -#: grub-core/commands/loadenv.c:455 -msgid "[-f FILE]" -msgstr "[-f ФÐЙЛ]" - -#: grub-core/commands/loadenv.c:456 -msgid "List variables from environment block file." -msgstr "Показать ÑпиÑок переменных из файла блока окружениÑ." - -#: grub-core/commands/loadenv.c:460 -msgid "[-f FILE] variable_name [...]" -msgstr "[-f ФÐЙЛ] имÑ_переменной […]" - -#: grub-core/commands/loadenv.c:461 -msgid "Save variables to environment block file." -msgstr "Сохранить переменные в файл блока окружениÑ." - -#: grub-core/commands/ls.c:40 -msgid "Show a long list with more detailed information." -msgstr "Показать длинный ÑпиÑок Ñ Ð±Ð¾Ð»ÐµÐµ подробной информацией." - -#: grub-core/commands/ls.c:41 -msgid "Print sizes in a human readable format." -msgstr "Показать размеры в понÑтном человеку формате." - -#: grub-core/commands/ls.c:42 -msgid "List all files." -msgstr "Показать ÑпиÑок вÑех файлов." - -#: grub-core/commands/ls.c:73 -msgid "Network protocols:" -msgstr "Сетевые протоколы:" - -#: grub-core/commands/ls.c:295 -msgid "[-l|-h|-a] [FILE ...]" -msgstr "[-l|-h|-a] [ФÐЙЛ …]" - -#: grub-core/commands/ls.c:296 -msgid "List devices and files." -msgstr "ВывеÑти ÑпиÑок уÑтройÑтв и файлов." - -#: grub-core/commands/lsacpi.c:255 -msgid "Show version 1 tables only." -msgstr "Показать только таблицы верÑии 1." - -#: grub-core/commands/lsacpi.c:256 -msgid "Show version 2 and version 3 tables only." -msgstr "Показать только таблицы верÑии 2 и 3." - -#: grub-core/commands/lsacpi.c:306 -msgid "Show ACPI information." -msgstr "Показать информацию ACPI." - -#: grub-core/commands/lsmmap.c:31 -msgid "available RAM" -msgstr "доÑÑ‚ÑƒÐ¿Ð½Ð°Ñ Ð¿Ð°Ð¼Ñть" - -#: grub-core/commands/lsmmap.c:32 -msgid "reserved RAM" -msgstr "Ð·Ð°Ñ€ÐµÐ·ÐµÑ€Ð²Ð¸Ñ€Ð¾Ð²Ð°Ð½Ð½Ð°Ñ Ð¿Ð°Ð¼Ñть" - -#. TRANSLATORS: this refers to memory where ACPI tables are stored -#. and which can be used by OS once it loads ACPI tables. -#: grub-core/commands/lsmmap.c:35 -msgid "ACPI reclaimable RAM" -msgstr "памÑть, Ñ€ÐµÐ³ÐµÐ½ÐµÑ€Ð¸Ñ€ÑƒÐµÐ¼Ð°Ñ ACPI" - -#. TRANSLATORS: this refers to memory which ACPI-compliant OS -#. is required to save accross hibernations. -#: grub-core/commands/lsmmap.c:38 -msgid "ACPI non-volatile storage RAM" -msgstr "памÑть долговременного Ñ…Ñ€Ð°Ð½ÐµÐ½Ð¸Ñ ACPI" - -#: grub-core/commands/lsmmap.c:39 -msgid "faulty RAM (BadRAM)" -msgstr "ÑÐ±Ð¾Ð¹Ð½Ð°Ñ Ð¿Ð°Ð¼Ñть (BadRAM)" - -#: grub-core/commands/lsmmap.c:40 -msgid "persistent RAM" -msgstr "ÑохранÑющаÑÑÑ Ð¿Ð°Ð¼Ñть" - -#: grub-core/commands/lsmmap.c:41 -msgid "persistent RAM (legacy)" -msgstr "ÑохранÑющаÑÑÑ Ð¿Ð°Ð¼Ñть (ÑтараÑ)" - -#: grub-core/commands/lsmmap.c:42 -msgid "RAM holding coreboot tables" -msgstr "памÑть, ÑÐ¾Ð´ÐµÑ€Ð¶Ð°Ñ‰Ð°Ñ Ñ‚Ð°Ð±Ð»Ð¸Ñ†Ñ‹ coreboot" - -#: grub-core/commands/lsmmap.c:43 -msgid "RAM holding firmware code" -msgstr "памÑть, ÑÐ¾Ð´ÐµÑ€Ð¶Ð°Ñ‰Ð°Ñ Ð¼Ð¸ÐºÑ€Ð¾Ð¿Ñ€Ð¾Ð³Ñ€Ð°Ð¼Ð¼Ñƒ" - -#: grub-core/commands/lsmmap.c:52 -#, c-format -msgid "base_addr = 0x%llx, length = 0x%llx, %s\n" -msgstr "базовый_Ð°Ð´Ñ€ÐµÑ = 0x%llx, длина = 0x%llx, %s\n" - -#: grub-core/commands/lsmmap.c:55 -#, c-format -msgid "base_addr = 0x%llx, length = 0x%llx, type = 0x%x\n" -msgstr "базовый_Ð°Ð´Ñ€ÐµÑ = 0x%llx, длина = 0x%llx, тип = 0x%x\n" - -#: grub-core/commands/lsmmap.c:79 -msgid "List memory map provided by firmware." -msgstr "Показать карту памÑти, предоÑтавлÑемую микропрограммой (firmware)." - -#: grub-core/commands/lspci.c:232 -msgid "List PCI devices." -msgstr "ВывеÑти ÑпиÑок уÑтройÑтв PCI." - -#: grub-core/commands/macbless.c:224 -msgid "Bless FILE of HFS or HFS+ partition for intel macs." -msgstr "Сделать ФÐЙЛ на разделе HFS или HFS+ загрузочным Ð´Ð»Ñ Intel Mac." - -#: grub-core/commands/macbless.c:228 -msgid "Bless DIR of HFS or HFS+ partition for PPC macs." -msgstr "Сделать КÐТ на разделе HFS или HFS+ загрузочным Ð´Ð»Ñ PPC Mac." - -#: grub-core/commands/memrw.c:125 -msgid "Read 8-bit value from ADDR." -msgstr "Прочитать 8-битное значение по ÐДРЕСУ." - -#: grub-core/commands/memrw.c:129 -msgid "Read 16-bit value from ADDR." -msgstr "Прочитать 16-битное значение по ÐДРЕСУ." - -#: grub-core/commands/memrw.c:133 -msgid "Read 32-bit value from ADDR." -msgstr "Прочитать 32-битное значение по ÐДРЕСУ." - -#: grub-core/commands/memrw.c:138 -msgid "Write 8-bit VALUE to ADDR." -msgstr "ЗапиÑать 8-битное ЗÐÐЧЕÐИЕ по ÐДРЕСУ." - -#: grub-core/commands/memrw.c:142 -msgid "Write 16-bit VALUE to ADDR." -msgstr "ЗапиÑать 16-битное ЗÐÐЧЕÐИЕ по ÐДРЕСУ." - -#: grub-core/commands/memrw.c:146 -msgid "Write 32-bit VALUE to ADDR." -msgstr "ЗапиÑать 32-битное ЗÐÐЧЕÐИЕ по ÐДРЕСУ." - -#: grub-core/commands/menuentry.c:31 -msgid "Menu entry type." -msgstr "Тип пункта меню." - -#: grub-core/commands/menuentry.c:31 grub-core/commands/menuentry.c:38 -#: grub-core/commands/menuentry.c:39 grub-core/gettext/gettext.c:520 -#: util/grub-fstest.c:520 util/grub-install.c:291 util/grub-install.c:304 -#: util/grub-mknetdir.c:51 util/grub-mkrescue.c:109 util/grub-mkrescue.c:110 -#: util/grub-mount.c:453 util/grub-render-label.c:65 -msgid "STRING" -msgstr "СТРОКÐ" - -#: grub-core/commands/menuentry.c:33 -msgid "List of users allowed to boot this entry." -msgstr "СпиÑок пользователей, которым разрешено загружать Ñтот пункт." - -#: grub-core/commands/menuentry.c:33 -msgid "USERNAME[,USERNAME]" -msgstr "ИМЯ_ПОЛЬЗОВÐТЕЛЯ[,ИМЯ_ПОЛЬЗОВÐТЕЛЯ]" - -#: grub-core/commands/menuentry.c:36 -msgid "Keyboard key to quickly boot this entry." -msgstr "Клавиша клавиатуры Ð´Ð»Ñ Ð±Ñ‹Ñтрого запуÑка Ñтого пункта." - -#: grub-core/commands/menuentry.c:36 -msgid "KEYBOARD_KEY" -msgstr "КЛÐВИШÐ_КЛÐВИÐТУРЫ" - -#: grub-core/commands/menuentry.c:38 -msgid "Use STRING as menu entry body." -msgstr "ИÑпользовать СТРОКУ в качеÑтве Ñодержимого Ñлемента меню." - -#: grub-core/commands/menuentry.c:39 -msgid "Menu entry identifier." -msgstr "Идентификатор пункта меню." - -#. TRANSLATORS: menu entry can either be bootable by anyone or only by -#. handful of users. By default when security is active only superusers can -#. boot a given menu entry. With --unrestricted (this option) -#. anyone can boot it. -#: grub-core/commands/menuentry.c:44 -msgid "This entry can be booted by any user." -msgstr "Этот пункт может быть загружен любым пользователем." - -#: grub-core/commands/menuentry.c:323 grub-core/commands/menuentry.c:328 -#: grub-core/tests/test_blockarg.c:46 -msgid "BLOCK" -msgstr "БЛОК" - -#: grub-core/commands/menuentry.c:323 -msgid "Define a menu entry." -msgstr "Определить пункт меню." - -#: grub-core/commands/menuentry.c:328 -msgid "Define a submenu." -msgstr "Определить подменю." - -#. TRANSLATORS: this is module list header. Name -#. is module name, Ref Count is a reference counter -#. (how many modules or open descriptors use it). -#. Dependencies are the other modules it uses. -#. -#: grub-core/commands/minicmd.c:162 -msgid "Name\tRef Count\tDependencies\n" -msgstr "ИмÑ\tСчётчик ÑÑылок\tЗавиÑимоÑти\n" - -#: grub-core/commands/minicmd.c:201 -msgid "Show this message." -msgstr "Показать Ñто Ñообщение." - -#: grub-core/commands/minicmd.c:204 -msgid "ADDR [SIZE]" -msgstr "ÐДРЕС [РÐЗМЕР]" - -#: grub-core/commands/minicmd.c:204 -msgid "Show memory contents." -msgstr "Показать Ñодержимое памÑти." - -#: grub-core/commands/minicmd.c:207 grub-core/kern/corecmd.c:188 -#: util/grub-install.c:275 -msgid "MODULE" -msgstr "МОДУЛЬ" - -#: grub-core/commands/minicmd.c:207 -msgid "Remove a module." -msgstr "Удалить модуль." - -#: grub-core/commands/minicmd.c:210 -msgid "Show loaded modules." -msgstr "Показать загруженные модули." - -#: grub-core/commands/minicmd.c:213 -msgid "Exit from GRUB." -msgstr "Выйти из GRUB." - -#: grub-core/commands/mips/loongson/lsspd.c:42 -msgid "No CS5536 found" -msgstr "CS5536 не найден" - -#: grub-core/commands/mips/loongson/lsspd.c:45 -#, c-format -msgid "CS5536 at %d:%d.%d\n" -msgstr "CS5536 по адреÑу %d:%d.%d\n" - -#. TRANSLATORS: System management bus is often used to access components like -#. RAM (info only, not data) or batteries. I/O space is where in memory -#. its ports are. -#: grub-core/commands/mips/loongson/lsspd.c:55 -#, c-format -msgid "System management bus controller I/O space is at 0x%x\n" -msgstr "" -"Контроллер ÑиÑтемной шины ÑƒÐ¿Ñ€Ð°Ð²Ð»ÐµÐ½Ð¸Ñ Ð²Ð²Ð¾Ð´Ð¾Ð¼-выводом находитÑÑ Ð¿Ð¾ адреÑу 0x" -"%x\n" - -#. TRANSLATORS: it's shown in a report in a way -#. like number 1: ... number 2: ... -#. -#: grub-core/commands/mips/loongson/lsspd.c:66 -#, c-format -msgid "RAM slot number %d\n" -msgstr "Слот памÑти â„– %d\n" - -#: grub-core/commands/mips/loongson/lsspd.c:73 -#, c-format -msgid "Written SPD bytes: %d B.\n" -msgstr "ЗапиÑано байт SPD: %d Б.\n" - -#: grub-core/commands/mips/loongson/lsspd.c:74 -#, c-format -msgid "Total flash size: %d B.\n" -msgstr "Общий размер флÑш: %d Б.\n" - -#: grub-core/commands/mips/loongson/lsspd.c:79 -msgid "Memory type: DDR2." -msgstr "Тип памÑти: DDR2." - -#: grub-core/commands/mips/loongson/lsspd.c:83 -#, c-format -msgid "Part no: %s.\n" -msgstr "Ðомер по каталогу: %s.\n" - -#: grub-core/commands/mips/loongson/lsspd.c:86 -msgid "Memory type: Unknown." -msgstr "Тип памÑти: неизвеÑтен." - -#: grub-core/commands/mips/loongson/lsspd.c:97 -msgid "Print Memory information." -msgstr "Показать информацию о памÑти." - -#: grub-core/commands/nativedisk.c:118 grub-core/commands/probe.c:118 -#: grub-core/commands/probe.c:124 util/grub-probe.c:450 -#, c-format -msgid "%s does not support UUIDs" -msgstr "%s не поддерживает UUID" - -#: grub-core/commands/nativedisk.c:325 -msgid "[MODULE1 MODULE2 ...]" -msgstr "[МОДУЛЬ1 МОДУЛЬ2 …]" - -#: grub-core/commands/nativedisk.c:326 -msgid "" -"Switch to native disk drivers. If no modules are specified default set (pata," -"ahci,usbms,ohci,uhci,ehci) is used" -msgstr "" -"Перейти на родные диÑковые драйверы. ЕÑли модули не указаны, то иÑпользуетÑÑ " -"набор по умолчанию (pata,ahci,usbms,ohci,uhci,ehci)" - -#: grub-core/commands/parttool.c:40 -msgid "" -"Perform COMMANDS on partition.\n" -"Use `parttool PARTITION help' for the list of available commands." -msgstr "" -"Выполнить КОМÐÐДЫ Ð´Ð»Ñ Ñ€Ð°Ð·Ð´ÐµÐ»Ð°.\n" -"СпиÑок возможных команд доÑтупен по команде «parttool РÐЗДЕЛ help»." - -#: grub-core/commands/parttool.c:123 -msgid "=VAL" -msgstr "=ЗÐÐЧЕÐИЕ" - -#: grub-core/commands/parttool.c:136 -#, c-format -msgid "Sorry, no parttool is available for %s\n" -msgstr "Команда parttool недоÑтупна Ð´Ð»Ñ %s\n" - -#: grub-core/commands/parttool.c:288 grub-core/lib/arg.c:285 -#: grub-core/lib/arg.c:351 -#, c-format -msgid "unknown argument `%s'" -msgstr "неизвеÑтный аргумент «%s»" - -#: grub-core/commands/parttool.c:344 -msgid "PARTITION COMMANDS" -msgstr "КОМÐÐДЫ РÐБОТЫ С РÐЗДЕЛÐМИ" - -#: grub-core/commands/password.c:85 -msgid "USER PASSWORD" -msgstr "ПÐРОЛЬ ПОЛЬЗОВÐТЕЛЯ" - -#: grub-core/commands/password.c:86 -msgid "Set user password (plaintext). Unrecommended and insecure." -msgstr "" -"Задать пароль Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ (в открытом виде). Ðе рекомендуетÑÑ Ð¸ небезопаÑно." - -#. TRANSLATORS: it means that the string which -#. was supposed to be a password hash doesn't -#. have a correct format, not to password -#. mismatch. -#: grub-core/commands/password_pbkdf2.c:98 -#: grub-core/commands/password_pbkdf2.c:115 -#: grub-core/commands/password_pbkdf2.c:123 -#: grub-core/commands/password_pbkdf2.c:150 -#: grub-core/commands/password_pbkdf2.c:179 -msgid "invalid PBKDF2 password" -msgstr "некорректный формат Ð¿Ð°Ñ€Ð¾Ð»Ñ PBKDF2" - -#: grub-core/commands/password_pbkdf2.c:202 -msgid "USER PBKDF2_PASSWORD" -msgstr "ПОЛЬЗОВÐТЕЛЬ ПÐРОЛЬ_PBKDF2" - -#: grub-core/commands/password_pbkdf2.c:203 -msgid "Set user password (PBKDF2). " -msgstr "Задать пароль Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ (PBKDF2). " - -#: grub-core/commands/pcidump.c:39 grub-core/commands/setpci.c:69 -msgid "Select device by vendor and device IDs." -msgstr "Выбрать уÑтройÑтво по производителю и ID уÑтройÑтва." - -#: grub-core/commands/pcidump.c:40 grub-core/commands/setpci.c:70 -msgid "[vendor]:[device]" -msgstr "[производитель]:[уÑтройÑтво]" - -#: grub-core/commands/pcidump.c:41 grub-core/commands/setpci.c:71 -msgid "Select device by its position on the bus." -msgstr "Выбрать уÑтройÑтво по его раÑположению на шине." - -#: grub-core/commands/pcidump.c:42 grub-core/commands/setpci.c:72 -msgid "[bus]:[slot][.func]" -msgstr "[шина]:[Ñлот][.функциÑ]" - -#: grub-core/commands/pcidump.c:109 grub-core/commands/pcidump.c:138 -#: grub-core/commands/setpci.c:183 grub-core/commands/setpci.c:214 -#: grub-core/fs/zfs/zfs.c:3794 grub-core/kern/emu/hostdisk.c:458 -#: grub-core/kern/emu/hostdisk.c:473 grub-core/kern/file.c:44 -#, c-format -msgid "missing `%c' symbol" -msgstr "отÑутÑтвует Ñимвол «%c»" - -#: grub-core/commands/pcidump.c:168 -msgid "[-s POSITION] [-d DEVICE]" -msgstr "[-s ПОЗИЦИЯ] [-d УСТРОЙСТВО]" - -#: grub-core/commands/pcidump.c:169 -msgid "Show raw dump of the PCI configuration space." -msgstr "Показать дамп проÑтранÑтва наÑтроек PCI." - -#: grub-core/commands/pgp.c:45 -msgid "Skip signature-checking of the public key file." -msgstr "ПропуÑтить проверку подпиÑи файла открытого ключа." - -#. TRANSLATORS: it's about GNUPG signatures. -#: grub-core/commands/pgp.c:71 grub-core/commands/pgp.c:81 -#: grub-core/commands/pgp.c:86 grub-core/commands/pgp.c:96 -#: grub-core/commands/pgp.c:103 grub-core/commands/pgp.c:107 -#: grub-core/commands/pgp.c:114 grub-core/commands/pgp.c:119 -#: grub-core/commands/pgp.c:124 grub-core/commands/pgp.c:128 -#: grub-core/commands/pgp.c:268 grub-core/commands/pgp.c:276 -#: grub-core/commands/pgp.c:281 grub-core/commands/pgp.c:289 -#: grub-core/commands/pgp.c:320 grub-core/commands/pgp.c:327 -#: grub-core/commands/pgp.c:332 grub-core/commands/pgp.c:342 -#: grub-core/commands/pgp.c:468 grub-core/commands/pgp.c:471 -#: grub-core/commands/pgp.c:474 grub-core/commands/pgp.c:477 -#: grub-core/commands/pgp.c:484 grub-core/commands/pgp.c:490 -#: grub-core/commands/pgp.c:665 -msgid "bad signature" -msgstr "Ð½ÐµÐºÐ¾Ñ€Ñ€ÐµÐºÑ‚Ð½Ð°Ñ Ð¿Ð¾Ð´Ð¿Ð¸ÑÑŒ" - -#. TRANSLATORS: %08x is 32-bit key id. -#: grub-core/commands/pgp.c:636 grub-core/commands/pgp.c:812 -#, c-format -msgid "public key %08x not found" -msgstr "открытый ключ %08x не найден" - -#: grub-core/commands/pgp.c:651 grub-core/disk/diskfilter.c:772 -#: grub-core/disk/diskfilter.c:782 grub-core/fs/ntfs.c:404 -#: grub-core/fs/zfs/zfs.c:1933 grub-core/normal/menu.c:428 -#, c-format -msgid "module `%s' isn't loaded" -msgstr "модуль «%s» не загружен" - -#: grub-core/commands/pgp.c:994 -msgid "[-s|--skip-sig] FILE SIGNATURE_FILE [PUBKEY_FILE]" -msgstr "[-s|--skip-sig] ФÐЙЛ ФÐЙЛ_С_ПОДПИСЬЮ [ФÐЙЛ_С_ОТКРЫТЫМ_КЛЮЧОМ]" - -#: grub-core/commands/pgp.c:995 -msgid "Verify detached signature." -msgstr "Проверить отÑоединённую подпиÑÑŒ." - -#: grub-core/commands/pgp.c:998 -msgid "[-s|--skip-sig] PUBKEY_FILE" -msgstr "[-s|--skip-sig] ФÐЙЛ_С_ОТКРЫТЫМ_КЛЮЧОМ" - -#: grub-core/commands/pgp.c:999 -msgid "Add PUBKEY_FILE to trusted keys." -msgstr "Добавить ФÐЙЛ_С_ОТКРЫТЫМ_КЛЮЧОМ к доверительным ключам." - -#: grub-core/commands/pgp.c:1003 -msgid "Show the list of trusted keys." -msgstr "Показать ÑпиÑок доверительных ключей." - -#: grub-core/commands/pgp.c:1005 -msgid "PUBKEY_ID" -msgstr "ID_ОТКРЫТОГО_КЛЮЧÐ" - -#: grub-core/commands/pgp.c:1006 -msgid "Remove PUBKEY_ID from trusted keys." -msgstr "Удалить ID_ОТКРЫТОГО_КЛЮЧРиз доверительных ключей." - -#: grub-core/commands/probe.c:40 grub-core/commands/tr.c:32 -msgid "Set a variable to return value." -msgstr "Задать переменную Ð´Ð»Ñ Ð²Ð¾Ð·Ð²Ñ€Ð°Ñ‚Ð° значениÑ." - -#. TRANSLATORS: It's a driver that is currently in use to access -#. the diven disk. -#: grub-core/commands/probe.c:43 -msgid "Determine driver." -msgstr "Определить драйвер." - -#: grub-core/commands/probe.c:44 -msgid "Determine partition map type." -msgstr "Определить тип карты разделов." - -#: grub-core/commands/probe.c:45 -msgid "Determine filesystem type." -msgstr "Определить тип файловой ÑиÑтемы." - -#: grub-core/commands/probe.c:46 -msgid "Determine filesystem UUID." -msgstr "Определить UUID файловой ÑиÑтемы." - -#: grub-core/commands/probe.c:47 -msgid "Determine filesystem label." -msgstr "Определить метку файловой ÑиÑтемы." - -#: grub-core/commands/probe.c:139 grub-core/commands/probe.c:146 -#: util/grub-probe.c:462 -#, c-format -msgid "filesystem `%s' does not support labels" -msgstr "Ñ„Ð°Ð¹Ð»Ð¾Ð²Ð°Ñ ÑиÑтема «%s» не поддерживает метки" - -#: grub-core/commands/probe.c:165 grub-core/fs/zfs/zfsinfo.c:430 -#: grub-core/loader/i386/bsd.c:169 util/grub-setup.c:223 -msgid "DEVICE" -msgstr "УСТРОЙСТВО" - -#: grub-core/commands/probe.c:166 -msgid "Retrieve device info." -msgstr "Получить информацию об уÑтройÑтве." - -#: grub-core/commands/read.c:85 -msgid "[ENVVAR]" -msgstr "[ПЕРЕМ_ОКРУЖ]" - -#: grub-core/commands/read.c:86 -msgid "Set variable with user input." -msgstr "Задать переменную Ñ Ð²Ð²ÐµÐ´Ñ‘Ð½Ð½Ñ‹Ð¼Ð¸ данными пользователÑ." - -#: grub-core/commands/reboot.c:40 -msgid "Reboot the computer." -msgstr "Перезагрузить компьютер." - -#. TRANSLATORS: in regexp you can mark some -#. groups with parentheses. These groups are -#. then numbered and you can save some of -#. them in variables. In other programs -#. those components aree often referenced with -#. back slash, e.g. \1. Compare -#. sed -e 's,\([a-z][a-z]*\),lowercase=\1,g' -#. The whole matching component is saved in VARNAME, not its number. -#. -#: grub-core/commands/regexp.c:44 -msgid "Store matched component NUMBER in VARNAME." -msgstr "Сохранить Ñовпавший компонент Ñ ÐОМЕРОМ в ИМЯ_ПЕРЕМЕÐÐОЙ." - -#: grub-core/commands/regexp.c:45 -msgid "[NUMBER:]VARNAME" -msgstr "[ÐОМЕР:]ИМЯ_ПЕРЕМЕÐÐОЙ" - -#. TRANSLATORS: This are two arguments. So it's -#. two separate units to translate and pay -#. attention not to reverse them. -#: grub-core/commands/regexp.c:157 -msgid "REGEXP STRING" -msgstr "РЕГУЛЯРÐОЕ_ВЫРÐЖЕÐИЕ СТРОКÐ" - -#: grub-core/commands/regexp.c:158 -msgid "Test if REGEXP matches STRING." -msgstr "Проверить, Ñовпадает ли РЕГВЫР Ñо СТРОКОЙ." - -#: grub-core/commands/search.c:324 -msgid "NAME [VARIABLE] [HINTS]" -msgstr "ИМЯ [ПЕРЕМЕÐÐÐЯ] [ПОДСКÐЗКÐ]" - -#: grub-core/commands/search_file.c:4 -msgid "" -"Search devices by file. If VARIABLE is specified, the first device found is " -"set to a variable." -msgstr "" -"ИÑкать уÑтройÑтва по файлу. ЕÑли указана ПЕРЕМЕÐÐÐЯ, то ей приÑвоитÑÑ Ð¿ÐµÑ€Ð²Ð¾Ðµ " -"найденное уÑтройÑтво." - -#: grub-core/commands/search_label.c:4 -msgid "" -"Search devices by label. If VARIABLE is specified, the first device found is " -"set to a variable." -msgstr "" -"ИÑкать уÑтройÑтва по метке. ЕÑли указана ПЕРЕМЕÐÐÐЯ, то ей приÑвоитÑÑ Ð¿ÐµÑ€Ð²Ð¾Ðµ " -"найденное уÑтройÑтво." - -#: grub-core/commands/search_uuid.c:4 -msgid "" -"Search devices by UUID. If VARIABLE is specified, the first device found is " -"set to a variable." -msgstr "" -"ИÑкать уÑтройÑтва по UUID. ЕÑли указана ПЕРЕМЕÐÐÐЯ, то ей приÑвоитÑÑ Ð¿ÐµÑ€Ð²Ð¾Ðµ " -"найденное уÑтройÑтво." - -#: grub-core/commands/search_wrap.c:34 -msgid "Search devices by a file." -msgstr "ИÑкать уÑтройÑтва по файлу." - -#: grub-core/commands/search_wrap.c:35 -msgid "Search devices by a filesystem label." -msgstr "ИÑкать уÑтройÑтва по метке файловой ÑиÑтемы." - -#: grub-core/commands/search_wrap.c:37 -msgid "Search devices by a filesystem UUID." -msgstr "ИÑкать уÑтройÑтва по UUID файловой ÑиÑтемы." - -#: grub-core/commands/search_wrap.c:40 -msgid "Set a variable to the first device found." -msgstr "Задать переменную Ð´Ð»Ñ Ð¿ÐµÑ€Ð²Ð¾Ð³Ð¾ найденного уÑтройÑтва." - -#: grub-core/commands/search_wrap.c:42 -msgid "Do not probe any floppy drive." -msgstr "Ðе проверÑть диÑководы гибких диÑков." - -#: grub-core/commands/search_wrap.c:44 -msgid "" -"First try the device HINT. If HINT ends in comma, also try subpartitions" -msgstr "" -"Сначала попробовать уÑтройÑтво ÑоглаÑно ПОДСКÐЗКЕ. ЕÑли ПОДСКÐЗКР" -"заканчиваетÑÑ Ð·Ð°Ð¿Ñтой, то также попробовать подразделы." - -#: grub-core/commands/search_wrap.c:45 grub-core/commands/search_wrap.c:49 -#: grub-core/commands/search_wrap.c:53 grub-core/commands/search_wrap.c:57 -#: grub-core/commands/search_wrap.c:61 grub-core/commands/search_wrap.c:65 -msgid "HINT" -msgstr "ПОДСКÐЗКÐ" - -#: grub-core/commands/search_wrap.c:47 -msgid "" -"First try the device HINT if currently running on IEEE1275. If HINT ends in " -"comma, also try subpartitions" -msgstr "" -"Сначала попробовать уÑтройÑтво ÑоглаÑно ПОДСКÐЗКЕ, еÑли в данный момент " -"работает в IEEE1275. ЕÑли ПОДСКÐЗКРзаканчиваетÑÑ Ð·Ð°Ð¿Ñтой, то также " -"попробовать подразделы." - -#: grub-core/commands/search_wrap.c:51 -msgid "" -"First try the device HINT if currently running on BIOS. If HINT ends in " -"comma, also try subpartitions" -msgstr "" -"Сначала попробовать уÑтройÑтво ÑоглаÑно ПОДСКÐЗКЕ, еÑли в данный момент " -"работает в BIOS. ЕÑли ПОДСКÐЗКРзаканчиваетÑÑ Ð·Ð°Ð¿Ñтой, то также попробовать " -"подразделы." - -#: grub-core/commands/search_wrap.c:55 -msgid "" -"First try the device HINT if direct hardware access is supported. If HINT " -"ends in comma, also try subpartitions" -msgstr "" -"Сначала попробовать уÑтройÑтво ÑоглаÑно ПОДСКÐЗКЕ, еÑли поддерживаетÑÑ " -"прÑмой доÑтуп к оборудованию. ЕÑли ПОДСКÐЗКРзаканчиваетÑÑ Ð·Ð°Ð¿Ñтой, то также " -"попробовать подразделы." - -#: grub-core/commands/search_wrap.c:59 -msgid "" -"First try the device HINT if currently running on EFI. If HINT ends in " -"comma, also try subpartitions" -msgstr "" -"Сначала попробовать уÑтройÑтво ÑоглаÑно ПОДСКÐЗКЕ, еÑли в данный момент " -"работает в EFI. ЕÑли ПОДСКÐЗКРзаканчиваетÑÑ Ð·Ð°Ð¿Ñтой, то также попробовать " -"подразделы." - -#: grub-core/commands/search_wrap.c:63 -msgid "" -"First try the device HINT if currently running on ARC. If HINT ends in " -"comma, also try subpartitions" -msgstr "" -"Сначала попробовать уÑтройÑтво ÑоглаÑно ПОДСКÐЗКЕ, еÑли в данный момент " -"работает в ARC. ЕÑли ПОДСКÐЗКРзаканчиваетÑÑ Ð·Ð°Ð¿Ñтой, то также попробовать " -"подразделы." - -#: grub-core/commands/search_wrap.c:207 -msgid "[-f|-l|-u|-s|-n] [--hint HINT [--hint HINT] ...] NAME" -msgstr "[-f|-l|-u|-s|-n] [--hint ПОДСКÐЗКР[--hint ПОДСКÐЗКÐ] …] ИМЯ" - -#: grub-core/commands/search_wrap.c:209 -msgid "" -"Search devices by file, filesystem label or filesystem UUID. If --set is " -"specified, the first device found is set to a variable. If no variable name " -"is specified, `root' is used." -msgstr "" -"ИÑкать уÑтройÑтва по файлу, по метке или UUID файловой ÑиÑтемы. ЕÑли указан " -"параметр --set, то переменной приÑвоитÑÑ Ð¿ÐµÑ€Ð²Ð¾Ðµ найденное уÑтройÑтво. ЕÑли " -"Ð¸Ð¼Ñ Ð¿ÐµÑ€ÐµÐ¼ÐµÐ½Ð½Ð¾Ð¹ не указано, то иÑпользуетÑÑ Â«root»." - -#: grub-core/commands/setpci.c:132 -#, c-format -msgid "Register %x of %x:%02x.%x is %x\n" -msgstr "РегиÑтр %x у %x:%02x.%x равен %x\n" - -#: grub-core/commands/setpci.c:333 -msgid "[-s POSITION] [-d DEVICE] [-v VAR] REGISTER[=VALUE[:MASK]]" -msgstr "" -"[-s ПОЗИЦИЯ] [-d УСТРОЙСТВО] [-v ПЕРЕМЕÐÐÐЯ] РЕГИСТР[=ЗÐÐЧЕÐИЕ[:МÐСКÐ]]" - -#: grub-core/commands/setpci.c:335 -msgid "Manipulate PCI devices." -msgstr "УправлÑть уÑтройÑтвами PCI." - -#: grub-core/commands/sleep.c:32 -msgid "Verbose countdown." -msgstr "Детальный обратный отÑчёт." - -#: grub-core/commands/sleep.c:33 -msgid "Allow to interrupt with ESC." -msgstr "Разрешить прерывание по ESC." - -#: grub-core/commands/sleep.c:109 -msgid "NUMBER_OF_SECONDS" -msgstr "ЧИСЛО_СЕКУÐД" - -#: grub-core/commands/sleep.c:110 -msgid "Wait for a specified number of seconds." -msgstr "Подождать указанное чиÑло Ñекунд." - -#: grub-core/commands/syslinuxcfg.c:50 util/grub-syslinux2cfg.c:66 -msgid "root directory of the syslinux disk [default=/]." -msgstr "корневой каталог диÑка syslinux [по умолчанию /]." - -#: grub-core/commands/syslinuxcfg.c:53 util/grub-syslinux2cfg.c:72 -msgid "" -"current directory of syslinux [default is parent directory of input file]." -msgstr "" -"текущий каталог syslinux [по умолчанию родительÑкий каталог входного файла]." - -#: grub-core/commands/syslinuxcfg.c:55 util/grub-syslinux2cfg.c:75 -msgid "assume input is an isolinux configuration file." -msgstr "Ñчитать входные данные файлом наÑтройки isolinux." - -#: grub-core/commands/syslinuxcfg.c:56 util/grub-syslinux2cfg.c:76 -msgid "assume input is a pxelinux configuration file." -msgstr "Ñчитать входные данные файлом наÑтройки pxelinux." - -#: grub-core/commands/syslinuxcfg.c:57 util/grub-syslinux2cfg.c:77 -msgid "assume input is a syslinux configuration file." -msgstr "Ñчитать входные данные файлом наÑтройки syslinux." - -#. TRANSLATORS: "syslinux config" means -#. "config as used by syslinux". -#: grub-core/commands/syslinuxcfg.c:189 -msgid "Execute syslinux config in same context" -msgstr "Выполнить наÑтройки syslinux в том же контекÑте" - -#: grub-core/commands/syslinuxcfg.c:195 -msgid "Execute syslinux config in new context" -msgstr "Выполнить наÑтройки syslinux в новом контекÑте" - -#: grub-core/commands/syslinuxcfg.c:201 -msgid "Execute syslinux config in same context taking only menu entries" -msgstr "" -"Выполнить наÑтройки syslinux в том же контекÑте, взÑв только пункты меню" - -#: grub-core/commands/syslinuxcfg.c:207 -msgid "Execute syslinux config in new context taking only menu entries" -msgstr "" -"Выполнить наÑтройки syslinux в новом контекÑте, взÑв только пункты меню" - -#: grub-core/commands/terminal.c:90 -msgid "no terminal specified" -msgstr "не указан терминал" - -#: grub-core/commands/terminal.c:112 grub-core/commands/terminal.c:139 -#, c-format -msgid "terminal `%s' isn't found" -msgstr "терминал «%s» не найден" - -#: grub-core/commands/terminal.c:244 -msgid "Active input terminals:" -msgstr "Ðктивные терминалы ввода:" - -#: grub-core/commands/terminal.c:245 -msgid "Available input terminals:" -msgstr "ДоÑтупные терминалы ввода:" - -#: grub-core/commands/terminal.c:261 -msgid "Active output terminals:" -msgstr "Ðктивные терминалы вывода:" - -#: grub-core/commands/terminal.c:262 -msgid "Available output terminals:" -msgstr "ДоÑтупные терминалы вывода:" - -#: grub-core/commands/terminal.c:271 grub-core/commands/terminal.c:276 -msgid "[--append|--remove] [TERMINAL1] [TERMINAL2] ..." -msgstr "[--append|--remove] [ТЕРМИÐÐЛ1] [ТЕРМИÐÐЛ2] …" - -#: grub-core/commands/terminal.c:273 -msgid "List or select an input terminal." -msgstr "Показать или выбрать терминал ввода." - -#: grub-core/commands/terminal.c:278 -msgid "List or select an output terminal." -msgstr "Показать или выбрать терминал вывода." - -#: grub-core/commands/test.c:444 -msgid "EXPRESSION ]" -msgstr "ВЫРÐЖЕÐИЕ ]" - -#: grub-core/commands/test.c:444 grub-core/commands/test.c:447 -msgid "Evaluate an expression." -msgstr "ВычиÑлить выражение." - -#: grub-core/commands/test.c:447 -msgid "EXPRESSION" -msgstr "ВЫРÐЖЕÐИЕ" - -#: grub-core/commands/testload.c:164 -msgid "Load the same file in multiple ways." -msgstr "Загрузить один и тот же файл неÑколькими ÑпоÑобами." - -#: grub-core/commands/testspeed.c:35 -msgid "Specify size for each read operation" -msgstr "Укажите объём данных каждой операции чтениÑ" - -#: grub-core/commands/testspeed.c:58 -msgid "invalid block size" -msgstr "неверный размер блока" - -#: grub-core/commands/testspeed.c:80 -#, c-format -msgid "File size: %s\n" -msgstr "Размер файла: %s\n" - -#: grub-core/commands/testspeed.c:83 -#, c-format -msgid "Elapsed time: %d.%03d s \n" -msgstr "Затраченное времÑ: %d.%03d Ñ \n" - -#: grub-core/commands/testspeed.c:92 -#, c-format -msgid "Speed: %s \n" -msgstr "СкороÑть: %s \n" - -#: grub-core/commands/testspeed.c:107 -msgid "[-s SIZE] FILENAME" -msgstr "[-s РÐЗМЕР] ИМЯФÐЙЛÐ" - -#: grub-core/commands/testspeed.c:108 -msgid "Test file read speed." -msgstr "ТеÑÑ‚ ÑкороÑти Ñ‡Ñ‚ÐµÐ½Ð¸Ñ Ñ„Ð°Ð¹Ð»Ð°." - -#: grub-core/commands/time.c:38 grub-core/script/execute.c:974 -msgid "no command is specified" -msgstr "команда не указана" - -#: grub-core/commands/time.c:50 -#, c-format -msgid "Elapsed time: %d.%03d seconds \n" -msgstr "Затраченное времÑ: %d.%03d Ñекунд \n" - -#: grub-core/commands/time.c:61 -msgid "COMMAND [ARGS]" -msgstr "КОМÐÐДР[ÐРГУМЕÐТЫ]" - -#: grub-core/commands/time.c:62 -msgid "Measure time used by COMMAND" -msgstr "Замерить времÑ, затраченное КОМÐÐДОЙ" - -#: grub-core/commands/tr.c:33 -msgid "Translate to upper case." -msgstr "ПривеÑти к верхнему региÑтру." - -#: grub-core/commands/tr.c:34 -msgid "Translate to lower case." -msgstr "ПривеÑти к нижнему региÑтру." - -#: grub-core/commands/tr.c:119 -msgid "[OPTIONS] [SET1] [SET2] [STRING]" -msgstr "[ПÐРÐМЕТРЫ] [ÐÐБОР1] [ÐÐБОР2] [СТРОКÐ]" - -#: grub-core/commands/tr.c:120 -msgid "Translate SET1 characters to SET2 in STRING." -msgstr "Преобразовать Ñимволы в СТРОКЕ из ÐÐБОРÐ1 в Ñимволы из ÐÐБОРÐ2." - -#. TRANSLATORS: it's a command description. -#: grub-core/commands/true.c:50 -msgid "Do nothing, successfully." -msgstr "Ðичего не делать, уÑпешное завершение." - -#. TRANSLATORS: it's a command description. -#: grub-core/commands/true.c:54 -msgid "Do nothing, unsuccessfully." -msgstr "Ðичего не делать, неудачное завершение." - -#: grub-core/commands/usbtest.c:221 -msgid "Test USB support." -msgstr "ПротеÑтировать поддержку USB." - -#: grub-core/commands/verifiers.c:120 -#, c-format -msgid "verification requested but nobody cares: %s" -msgstr "проверка запрошена, но никому не нужна: %s" - -#: grub-core/commands/verifiers.c:140 -msgid "big file signature isn't implemented yet" -msgstr "подпиÑÑŒ больших файлов ещё не реализована" - -#: grub-core/commands/videoinfo.c:61 -msgid "Text-only " -msgstr "Только-текÑÑ‚ " - -#. TRANSLATORS: "Direct color" is a mode when the color components -#. are written dirrectly into memory. -#: grub-core/commands/videoinfo.c:66 -#, c-format -msgid "Direct color, mask: %d/%d/%d/%d pos: %d/%d/%d/%d" -msgstr "Явно заданный цвет, маÑка: %d/%d/%d/%d положение: %d/%d/%d/%d" - -#. TRANSLATORS: In "paletted color" mode you write the index of the color -#. in the palette. Synonyms include "packed pixel". -#: grub-core/commands/videoinfo.c:78 -msgid "Paletted " -msgstr "Из палитры " - -#: grub-core/commands/videoinfo.c:80 -msgid "YUV " -msgstr "YUV " - -#. TRANSLATORS: "Planar" is the video memory where you have to write -#. in several different banks "plans" to control the different color -#. components of the same pixel. -#: grub-core/commands/videoinfo.c:85 -msgid "Planar " -msgstr "Планарный " - -#: grub-core/commands/videoinfo.c:87 -msgid "Hercules " -msgstr "Hercules " - -#: grub-core/commands/videoinfo.c:89 -msgid "CGA " -msgstr "CGA " - -#. TRANSLATORS: Non-chain 4 is a 256-color planar -#. (unchained) video memory mode. -#: grub-core/commands/videoinfo.c:93 -msgid "Non-chain 4 " -msgstr "Non-chain 4 " - -#: grub-core/commands/videoinfo.c:95 -msgid "Monochrome " -msgstr "Монохромный " - -#: grub-core/commands/videoinfo.c:97 -msgid "Unknown video mode " -msgstr "ÐеизвеÑтный видео-режим" - -#: grub-core/commands/videoinfo.c:111 -msgid " EDID checksum invalid" -msgstr " Ð½ÐµÐºÐ¾Ñ€Ñ€ÐµÐºÑ‚Ð½Ð°Ñ ÐºÐ¾Ð½Ñ‚Ñ€Ð¾Ð»ÑŒÐ½Ð°Ñ Ñумма Ð´Ð»Ñ EDID" - -#: grub-core/commands/videoinfo.c:116 -#, c-format -msgid " EDID version: %u.%u\n" -msgstr " верÑÐ¸Ñ EDID: %u.%u\n" - -#: grub-core/commands/videoinfo.c:120 -#, c-format -msgid " Preferred mode: %ux%u\n" -msgstr " Предпочтительный режим: %ux%u\n" - -#: grub-core/commands/videoinfo.c:123 -msgid " No preferred mode available\n" -msgstr " Предпочтительный режим недоÑтупен\n" - -#: grub-core/commands/videoinfo.c:146 grub-core/video/video.c:490 -#: grub-core/video/video.c:498 grub-core/video/video.c:509 -#: grub-core/video/video.c:520 grub-core/video/video.c:528 -#, c-format -msgid "invalid video mode specification `%s'" -msgstr "неправильное указание видео-режима Ñкрана «%s»" - -#: grub-core/commands/videoinfo.c:168 -msgid "List of supported video modes:" -msgstr "СпиÑок поддерживаемых видео-режимов:" - -#: grub-core/commands/videoinfo.c:169 -msgid "Legend: mask/position=red/green/blue/reserved" -msgstr "ОбозначениÑ: маÑка/положение=краÑный/зеленый/Ñиний/зарезервированный" - -#: grub-core/commands/videoinfo.c:176 -#, c-format -msgid "Adapter `%s':\n" -msgstr "Ðдаптер «%s»:\n" - -#: grub-core/commands/videoinfo.c:180 -msgid " No info available" -msgstr " Ð˜Ð½Ñ„Ð¾Ñ€Ð¼Ð°Ñ†Ð¸Ñ Ð½ÐµÐ´Ð¾Ñтупна" - -#: grub-core/commands/videoinfo.c:198 -msgid " Failed to initialize video adapter" -msgstr " Ðе удалоÑÑŒ инициализировать видеоадаптер" - -#. TRANSLATORS: "x" has to be entered in, -#. like an identifier, so please don't -#. use better Unicode codepoints. -#: grub-core/commands/videoinfo.c:239 grub-core/commands/videoinfo.c:248 -msgid "[WxH[xD]]" -msgstr "[ШxÐ’[xГ]]" - -#: grub-core/commands/videoinfo.c:240 grub-core/commands/videoinfo.c:249 -msgid "" -"List available video modes. If resolution is given show only modes matching " -"it." -msgstr "" -"СпиÑок доÑтупных видео-режимов. ЕÑли указано разрешение, то показываютÑÑ " -"только подходÑщие режимы." - -#. TRANSLATORS: "x" has to be entered in, -#. like an identifier, so please don't -#. use better Unicode codepoints. -#: grub-core/commands/videotest.c:225 -msgid "[WxH]" -msgstr "[ШхВ]" - -#. TRANSLATORS: Here, on the other hand, it's -#. nicer to use unicode cross instead of x. -#: grub-core/commands/videotest.c:228 -msgid "Test video subsystem in mode WxH." -msgstr "ТеÑÑ‚ видеоподÑиÑтемы в режиме ШxÐ’." - -#: grub-core/commands/videotest.c:231 -msgid "Test video subsystem." -msgstr "ТеÑÑ‚ видеоподÑиÑтемы." - -#: grub-core/commands/xen/lsxen.c:80 grub-core/commands/xen/lsxen.c:82 -msgid "[DIR]" -msgstr "[КÐТ]" - -#: grub-core/commands/xen/lsxen.c:81 grub-core/commands/xen/lsxen.c:83 -msgid "List Xen storage." -msgstr "ВывеÑти хранилище Xen." - -#. TRANSLATORS: GRUBUUID stands for "filesystem -#. UUID as used in GRUB". -#: grub-core/commands/xnu_uuid.c:110 -msgid "[-l] GRUBUUID [VARNAME]" -msgstr "[-l] GRUBUUID [ИМЯ_ПЕРЕМЕÐÐОЙ]" - -#: grub-core/commands/xnu_uuid.c:111 -msgid "" -"Transform 64-bit UUID to format suitable for XNU. If -l is given keep it " -"lowercase as done by blkid." -msgstr "" -"Преобразовать 64-бит UUID в формат, пригодный Ð´Ð»Ñ XNU. ЕÑли указан -l, то " -"оÑтавить в нижнем региÑтре, как Ñто делает blkid." - -#: grub-core/disk/arc/arcdisk.c:248 grub-core/disk/efi/efidisk.c:603 -#: grub-core/disk/i386/pc/biosdisk.c:498 grub-core/disk/i386/pc/biosdisk.c:543 -#: grub-core/disk/ieee1275/nand.c:198 grub-core/disk/ieee1275/obdisk.c:527 -#: grub-core/disk/ieee1275/ofdisk.c:586 -#, c-format -msgid "failure reading sector 0x%llx from `%s'" -msgstr "ошибка при чтении Ñектора 0x%llx на «%s»" - -#: grub-core/disk/arc/arcdisk.c:284 grub-core/disk/efi/efidisk.c:626 -#: grub-core/disk/i386/pc/biosdisk.c:548 grub-core/disk/ieee1275/ofdisk.c:606 -#, c-format -msgid "failure writing sector 0x%llx to `%s'" -msgstr "ошибка запиÑи в Ñектор 0x%llx на «%s»" - -#: grub-core/disk/cryptodisk.c:40 -msgid "Mount by UUID." -msgstr "Смонтировать по UUID." - -#. TRANSLATORS: It's still restricted to cryptodisks only. -#: grub-core/disk/cryptodisk.c:42 -msgid "Mount all." -msgstr "Смонтировать вÑÑ‘." - -#: grub-core/disk/cryptodisk.c:43 -msgid "Mount all volumes with `boot' flag set." -msgstr "Смонтировать вÑе тома Ñ ÑƒÑтановленным флагом «boot»." - -#. TRANSLATORS: The first %s is the file being looked at, the second %s is -#. the error message. -#: grub-core/disk/cryptodisk.c:526 grub-core/kern/emu/hostdisk.c:152 -#: grub-core/kern/emu/hostdisk.c:262 grub-core/kern/emu/hostdisk.c:434 -#: grub-core/kern/emu/misc.c:168 grub-core/kern/emu/misc.c:174 -#: grub-core/kern/emu/misc.c:196 grub-core/osdep/bsd/getroot.c:92 -#: grub-core/osdep/bsd/getroot.c:168 grub-core/osdep/hurd/getroot.c:68 -#: grub-core/osdep/linux/blocklist.c:65 grub-core/osdep/linux/getroot.c:150 -#: grub-core/osdep/linux/hostdisk.c:194 grub-core/osdep/linux/hostdisk.c:421 -#: grub-core/osdep/linux/ofpath.c:417 grub-core/osdep/linux/ofpath.c:422 -#: grub-core/osdep/linux/ofpath.c:517 grub-core/osdep/linux/ofpath.c:530 -#: grub-core/osdep/sun/getroot.c:110 grub-core/osdep/windows/blocklist.c:98 -#: grub-core/tests/video_checksum.c:279 util/editenv.c:46 util/glue-efi.c:115 -#: util/glue-efi.c:120 util/glue-efi.c:130 util/grub-editenv.c:138 -#: util/grub-editenv.c:192 util/grub-file.c:83 util/grub-fstest.c:128 -#: util/grub-fstest.c:568 util/grub-install-common.c:92 -#: util/grub-install-common.c:94 util/grub-install-common.c:101 -#: util/grub-install-common.c:529 util/grub-menulst2cfg.c:53 -#: util/grub-menulst2cfg.c:68 util/grub-mkimage.c:292 util/grub-mklayout.c:504 -#: util/grub-mklayout.c:516 util/grub-mknetdir.c:133 util/grub-mknetdir.c:151 -#: util/grub-mkrescue.c:627 util/grub-mkrescue.c:631 util/grub-mkrescue.c:879 -#: util/grub-mkrescue.c:883 util/grub-mkstandalone.c:253 util/grub-mount.c:498 -#: util/grub-render-label.c:169 util/grub-script-check.c:175 -#: util/grub-syslinux2cfg.c:181 util/grub-syslinux2cfg.c:191 -#: util/grub-syslinux2cfg.c:212 util/grub-syslinux2cfg.c:228 util/misc.c:91 -#: util/render-label.c:76 util/render-label.c:163 util/render-label.c:174 -#: util/resolve.c:246 util/setup.c:783 -#, c-format -msgid "cannot open `%s': %s" -msgstr "не удалоÑÑŒ открыть «%s»: %s" - -#: grub-core/disk/cryptodisk.c:583 grub-core/disk/cryptodisk.c:628 -#: grub-core/kern/emu/hostdisk.c:270 grub-core/kern/emu/hostfs.c:142 -#: grub-core/osdep/linux/hostdisk.c:456 util/grub-editenv.c:143 -#: util/grub-editenv.c:149 util/grub-fstest.c:320 util/misc.c:111 -#, c-format -msgid "cannot seek `%s': %s" -msgstr "невозможно ÑмеÑтитьÑÑ Ð² «%s»: %s" - -#: grub-core/disk/cryptodisk.c:1144 -msgid "SOURCE|-u UUID|-a|-b" -msgstr "ИСТОЧÐИК|-u UUID|-a|-b" - -#: grub-core/disk/cryptodisk.c:1145 -msgid "Mount a crypto device." -msgstr "Смонтировать крипто-уÑтройÑтво." - -#. TRANSLATORS: This message kicks in during the detection of -#. which modules needs to be included in core image. This happens -#. in the case of degraded RAID and means that autodetection may -#. fail to include some of modules. It's an installation time -#. message, not runtime message. -#: grub-core/disk/diskfilter.c:343 grub-core/disk/diskfilter.c:376 -#, c-format -msgid "" -"Couldn't find physical volume `%s'. Some modules may be missing from core " -"image." -msgstr "" -"Ðевозможно найти физичеÑкий том «%s». Ðекоторые модули в базовом образе " -"могут отÑутÑтвовать." - -#: grub-core/disk/diskfilter.c:480 -#, c-format -msgid "physical volume %s not found" -msgstr "физичеÑкий том %s не найден" - -#: grub-core/disk/efi/efidisk.c:600 grub-core/disk/efi/efidisk.c:623 -#, c-format -msgid "no media in `%s'" -msgstr "нет ноÑÐ¸Ñ‚ÐµÐ»Ñ Ð² «%s»" - -#: grub-core/disk/geli.c:75 -msgid "Couldn't load sha256" -msgstr "Ðевозможно загрузить sha256" - -#: grub-core/disk/geli.c:85 -msgid "Couldn't load sha512" -msgstr "Ðевозможно загрузить sha512" - -#: grub-core/disk/geli.c:216 grub-core/disk/geli.c:220 -msgid "couldn't read ELI metadata" -msgstr "невозможно прочитать метаданные ELI" - -#: grub-core/disk/geli.c:231 -msgid "wrong ELI magic or version" -msgstr "неверный отличительный Ñимвол ELI или верÑиÑ" - -#: grub-core/disk/geli.c:435 grub-core/disk/luks.c:329 -msgid "Attempting to decrypt master key..." -msgstr "ВыполнÑетÑÑ Ð¿Ð¾Ð¿Ñ‹Ñ‚ÐºÐ° раÑшифровать маÑтер-ключ…" - -#: grub-core/disk/geli.c:441 grub-core/disk/luks.c:347 -#, c-format -msgid "Enter passphrase for %s%s%s (%s): " -msgstr "Введите ключевую фразу Ð´Ð»Ñ %s%s%s (%s): " - -#. TRANSLATORS: It's a cryptographic key slot: one element of an array -#. where each element is either empty or holds a key. -#: grub-core/disk/geli.c:530 grub-core/disk/luks.c:451 -#, c-format -msgid "Slot %d opened\n" -msgstr "Открыт Ñлот %d\n" - -#: grub-core/disk/i386/pc/biosdisk.c:470 grub-core/disk/i386/pc/biosdisk.c:524 -#: grub-core/disk/i386/pc/biosdisk.c:534 grub-core/kern/disk_common.c:47 -#, c-format -msgid "attempt to read or write outside of disk `%s'" -msgstr "попытка Ñ‡Ñ‚ÐµÐ½Ð¸Ñ Ð¸Ð»Ð¸ запиÑи вне пределов диÑка «%s»" - -#: grub-core/disk/i386/pc/biosdisk.c:491 grub-core/disk/i386/pc/biosdisk.c:611 -#: grub-core/disk/scsi.c:726 -msgid "cannot write to CD-ROM" -msgstr "невозможно запиÑать на компакт-диÑк" - -#: grub-core/disk/i386/pc/biosdisk.c:662 -msgid "" -"Native disk drivers are in use. Refusing to use firmware disk interface." -msgstr "" -"ИÑпользуютÑÑ Ñ€Ð¾Ð´Ð½Ñ‹Ðµ диÑковые драйверы. ИÑпользование микропрограммного " -"интерфейÑа диÑка отклонÑетÑÑ." - -#. TRANSLATORS: it's a partition for embedding, -#. not a partition embed into something. GRUB -#. install tools put core.img into a place -#. usable for bootloaders (called generically -#. "embedding zone") and this operation is -#. called "embedding". -#: grub-core/disk/ldm.c:1015 -msgid "your LDM Embedding Partition is too small; embedding won't be possible" -msgstr "LDM Embedding Partition Ñлишком мал; вÑтраивание невозможно" - -#. TRANSLATORS: it's a partition for embedding, -#. not a partition embed into something. -#: grub-core/disk/ldm.c:1033 -msgid "this LDM has no Embedding Partition; embedding won't be possible" -msgstr "данный LDM не Ñодержит вÑтраиваемого раздела; вÑтраивание невозможно" - -#. TRANSLATORS: The disk is simply removed from the list of available ones, -#. not wiped, avoid to scare user. -#: grub-core/disk/loopback.c:45 -msgid "Delete the specified loopback drive." -msgstr "Удалить указанный привод обратной петли." - -#: grub-core/disk/loopback.c:237 -msgid "[-d] DEVICENAME FILE." -msgstr "[-d] ИМЯ_УСТРОЙСТВРФÐЙЛ." - -#. TRANSLATORS: The file itself is not destroyed -#. or transformed into drive. -#: grub-core/disk/loopback.c:240 -msgid "Make a virtual drive from a file." -msgstr "Создать виртуальный привод из файла." - -#: grub-core/efiemu/i386/loadcore32.c:111 -#: grub-core/efiemu/i386/loadcore64.c:125 grub-core/kern/arm/dl.c:256 -#: grub-core/kern/arm64/dl.c:187 grub-core/kern/i386/dl.c:75 -#: grub-core/kern/ia64/dl.c:140 grub-core/kern/mips/dl.c:258 -#: grub-core/kern/powerpc/dl.c:163 grub-core/kern/riscv/dl.c:334 -#: grub-core/kern/sparc64/dl.c:180 grub-core/kern/x86_64/dl.c:110 -#: util/grub-mkimagexx.c:756 util/grub-mkimagexx.c:881 -#: util/grub-mkimagexx.c:945 util/grub-mkimagexx.c:1026 -#: util/grub-mkimagexx.c:1120 util/grub-mkimagexx.c:1222 -#: util/grub-mkimagexx.c:1413 util/grub-mkimagexx.c:1628 -#: util/grub-mkimagexx.c:1665 util/grub-mkimagexx.c:1697 -#: util/grub-mkimagexx.c:1767 util/grub-mkimagexx.c:1797 -#, c-format -msgid "relocation 0x%x is not implemented yet" -msgstr "возможноÑть Ð¿ÐµÑ€ÐµÐ¼ÐµÑ‰ÐµÐ½Ð¸Ñ 0x%x ещё не реализована" - -#: grub-core/efiemu/loadcore.c:200 grub-core/efiemu/loadcore.c:237 -#: grub-core/loader/i386/bsdXX.c:317 util/grub-mkimagexx.c:2360 -msgid "no symbol table" -msgstr "отÑутÑтвует таблица Ñимволов" - -#: grub-core/efiemu/loadcore.c:346 grub-core/kern/dl.c:609 -#: grub-core/loader/ia64/efi/linux.c:345 grub-core/loader/mips/linux.c:248 -#: grub-core/loader/multiboot_elfxx.c:76 -#: grub-core/loader/powerpc/ieee1275/linux.c:280 -#: grub-core/loader/sparc64/ieee1275/linux.c:320 -msgid "this ELF file is not of the right type" -msgstr "ELF-файл неправильного типа" - -#: grub-core/efiemu/main.c:313 -msgid "Load and initialize EFI emulator." -msgstr "Загрузить и инициализировать ÑмулÑтор EFI." - -#: grub-core/efiemu/main.c:317 -msgid "Finalize loading of EFI emulator." -msgstr "Завершить загрузку ÑмулÑтора EFI." - -#: grub-core/efiemu/main.c:320 -msgid "Unload EFI emulator." -msgstr "Выгрузить ÑмулÑтор EFI." - -#: grub-core/efiemu/symbols.c:92 grub-core/kern/dl.c:376 -#, c-format -msgid "symbol `%s' not found" -msgstr "Ñимвол «%s» не найден" - -#: grub-core/font/font_cmd.c:52 -msgid "Loaded fonts:" -msgstr "Загруженные шрифты:" - -#: grub-core/font/font_cmd.c:74 -msgid "FILE..." -msgstr "ФÐЙЛ…" - -#: grub-core/font/font_cmd.c:75 -msgid "Specify one or more font files to load." -msgstr "Указать один или неÑколько файлов шрифтов Ð´Ð»Ñ Ð·Ð°Ð³Ñ€ÑƒÐ·ÐºÐ¸." - -#: grub-core/font/font_cmd.c:78 -msgid "List the loaded fonts." -msgstr "ВывеÑти ÑпиÑок загруженных шрифтов." - -#: grub-core/fs/archelp.c:216 grub-core/fs/archelp.c:278 -#: grub-core/fs/btrfs.c:1815 grub-core/fs/fshelp.c:227 grub-core/fs/jfs.c:736 -#: grub-core/fs/minix.c:369 grub-core/fs/ufs.c:454 -msgid "too deep nesting of symlinks" -msgstr "Ñлишком Ð±Ð¾Ð»ÑŒÑˆÐ°Ñ Ð²Ð»Ð¾Ð¶ÐµÐ½Ð½Ð¾Ñть Ñимвольных ÑÑылок" - -#: grub-core/fs/bfs.c:228 grub-core/fs/fshelp.c:368 grub-core/fs/minix.c:270 -#: grub-core/kern/file.c:156 -msgid "attempt to read past the end of file" -msgstr "попытка Ñ‡Ñ‚ÐµÐ½Ð¸Ñ Ð·Ð° концом файла" - -#: grub-core/fs/btrfs.c:1698 grub-core/fs/btrfs.c:1957 -#: grub-core/fs/fshelp.c:189 grub-core/fs/fshelp.c:309 grub-core/fs/jfs.c:431 -#: grub-core/fs/minix.c:414 grub-core/fs/minix.c:562 -#: grub-core/fs/reiserfs.c:732 grub-core/fs/ufs.c:531 grub-core/fs/ufs.c:671 -#: grub-core/fs/zfs/zfs.c:2831 grub-core/fs/zfs/zfs.c:4247 -msgid "not a directory" -msgstr "не каталог" - -#: grub-core/fs/btrfs.c:2063 grub-core/fs/fshelp.c:307 grub-core/fs/jfs.c:835 -#: grub-core/fs/zfs/zfs.c:3801 -msgid "not a regular file" -msgstr "не обычный файл" - -#: grub-core/fs/btrfs.c:2157 grub-core/fs/zfs/zfs.c:4333 -#: grub-core/partmap/msdos.c:400 -msgid "your core.img is unusually large. It won't fit in the embedding area" -msgstr "" -"данный core.img необычно большого размера. Он не влезет во вÑтраиваемую " -"облаÑть" - -#: grub-core/fs/fshelp.c:281 grub-core/fs/minix.c:630 grub-core/fs/ufs.c:661 -#: grub-core/fs/ufs.c:757 grub-core/kern/fs.c:168 grub-core/kern/fs.c:180 -#, c-format -msgid "invalid file name `%s'" -msgstr "неверное Ð¸Ð¼Ñ Ñ„Ð°Ð¹Ð»Ð° «%s»" - -#: grub-core/fs/zfs/zfs.c:453 -msgid "checksum verification failed" -msgstr "ошибка при Ñверке контрольной Ñуммы" - -#: grub-core/fs/zfs/zfs.c:1465 -msgid "couldn't find a necessary member device of multi-device filesystem" -msgstr "" -"невозможно найти необходимое уÑтройÑтво-компонент в файловой ÑиÑтеме Ñ " -"неÑколькими уÑтройÑтвами" - -#: grub-core/fs/zfs/zfscrypt.c:292 -msgid "no decryption key available" -msgstr "недоÑтупен ключ раÑшифровки" - -#: grub-core/fs/zfs/zfscrypt.c:304 -msgid "MAC verification failed" -msgstr "ошибка Ñверки MAC" - -#: grub-core/fs/zfs/zfscrypt.c:413 -msgid "Assume input is raw." -msgstr "Предполагать, что ввод не обработан." - -#: grub-core/fs/zfs/zfscrypt.c:414 -msgid "Assume input is hex." -msgstr "Предполагать, что ввод в шеÑтнадцатеричной ÑиÑтеме." - -#: grub-core/fs/zfs/zfscrypt.c:415 -msgid "Assume input is passphrase." -msgstr "Предполагать, что ввод ÑвлÑетÑÑ ÐºÐ»ÑŽÑ‡ÐµÐ²Ð¾Ð¹ фразой." - -#: grub-core/fs/zfs/zfscrypt.c:437 util/grub-fstest.c:553 util/grub-mount.c:483 -msgid "Enter ZFS password: " -msgstr "Введите пароль ZFS: " - -#: grub-core/fs/zfs/zfscrypt.c:476 -msgid "[-h|-p|-r] [FILE]" -msgstr "[-h|-p|-r] [ФÐЙЛ]" - -#: grub-core/fs/zfs/zfscrypt.c:477 -msgid "Import ZFS wrapping key stored in FILE." -msgstr "Импортировать обёрточный ключ ZFS, хранÑщийÑÑ Ð² ФÐЙЛЕ." - -#: grub-core/fs/zfs/zfsinfo.c:51 -msgid "Virtual device is removed" -msgstr "Виртуальное уÑтройÑтво удалено" - -#: grub-core/fs/zfs/zfsinfo.c:57 -msgid "Virtual device is faulted" -msgstr "Сбой виртуального уÑтройÑтва" - -#: grub-core/fs/zfs/zfsinfo.c:63 -msgid "Virtual device is offline" -msgstr "Виртуальное уÑтройÑтво не в работе" - -#. TRANSLATORS: degraded doesn't mean broken but that some of -#. component are missing but virtual device as whole is still usable. -#: grub-core/fs/zfs/zfsinfo.c:70 -msgid "Virtual device is degraded" -msgstr "Виртуальное уÑтройÑтво деградировано" - -#: grub-core/fs/zfs/zfsinfo.c:73 -msgid "Virtual device is online" -msgstr "Виртуальное уÑтройÑтво в работе" - -#: grub-core/fs/zfs/zfsinfo.c:89 -msgid "Incorrect virtual device: no type available" -msgstr "Ðекорректное виртуальное уÑтройÑтво: тип недоÑтупен" - -#. TRANSLATORS: The virtual devices form a tree (in graph-theoretical -#. sense). The nodes like mirror or raidz have children: member devices. -#. The "real" devices which actually store data are called "leafs" -#. (again borrowed from graph theory) and can be either disks -#. (or partitions) or files. -#: grub-core/fs/zfs/zfsinfo.c:105 -msgid "Leaf virtual device (file or disk)" -msgstr "Виртуальное уÑтройÑтво-лиÑÑ‚ (файл или диÑк)" - -#: grub-core/fs/zfs/zfsinfo.c:113 -msgid "Bootpath: unavailable\n" -msgstr "Bootpath: недоÑтупен\n" - -#: grub-core/fs/zfs/zfsinfo.c:115 -#, c-format -msgid "Bootpath: %s\n" -msgstr "Bootpath: %s\n" - -#: grub-core/fs/zfs/zfsinfo.c:120 -msgid "Path: unavailable" -msgstr "Path: недоÑтупен" - -#: grub-core/fs/zfs/zfsinfo.c:122 -#, c-format -msgid "Path: %s\n" -msgstr "Path: %s\n" - -#: grub-core/fs/zfs/zfsinfo.c:127 -msgid "Devid: unavailable" -msgstr "Devid: недоÑтупен" - -#: grub-core/fs/zfs/zfsinfo.c:129 -#, c-format -msgid "Devid: %s\n" -msgstr "Devid: %s\n" - -#: grub-core/fs/zfs/zfsinfo.c:148 -msgid "This VDEV is a mirror" -msgstr "Данное VDEV ÑвлÑетÑÑ Ð·ÐµÑ€ÐºÐ°Ð»Ð¾Ð¼" - -#: grub-core/fs/zfs/zfsinfo.c:153 -#, c-format -msgid "This VDEV is a RAIDZ%llu\n" -msgstr "Данное VDEV ÑвлÑетÑÑ RAIDZ%llu\n" - -#: grub-core/fs/zfs/zfsinfo.c:158 -msgid "Incorrect VDEV" -msgstr "Ðекорректное VDEV" - -#: grub-core/fs/zfs/zfsinfo.c:161 -#, c-format -msgid "VDEV with %d children\n" -msgstr "VDEV Ñ %d потомками\n" - -#. TRANSLATORS: it's the element carying the number %d, not -#. total element number. And the number itself is fine, -#. only the element isn't. -#. -#: grub-core/fs/zfs/zfsinfo.c:177 -#, c-format -msgid "VDEV element number %d isn't correct\n" -msgstr "Элемент VDEV â„–%d некорректен\n" - -#. TRANSLATORS: it's the element carying the number %d, not -#. total element number. This is used in enumeration -#. "Element number 1", "Element number 2", ... -#: grub-core/fs/zfs/zfsinfo.c:184 -#, c-format -msgid "VDEV element number %d:\n" -msgstr "Элемент VDEV â„–%d:\n" - -#: grub-core/fs/zfs/zfsinfo.c:193 -#, c-format -msgid "Unknown virtual device type: %s\n" -msgstr "ÐеизвеÑтный тип виртуального уÑтройÑтва: %s\n" - -#. TRANSLATORS: Here we speak about ZFS pools it's semi-marketing, -#. semi-technical term by Sun/Oracle and should be translated in sync with -#. other ZFS-related software and documentation. -#: grub-core/fs/zfs/zfsinfo.c:254 -msgid "Pool state: active" -msgstr "СоÑтоÑние пула: активен" - -#: grub-core/fs/zfs/zfsinfo.c:255 -msgid "Pool state: exported" -msgstr "СоÑтоÑние пула: ÑкÑпортирован" - -#: grub-core/fs/zfs/zfsinfo.c:256 -msgid "Pool state: destroyed" -msgstr "СоÑтоÑние пула: разрушен" - -#: grub-core/fs/zfs/zfsinfo.c:257 -msgid "Pool state: reserved for hot spare" -msgstr "СоÑтоÑние пула: зарезервирован как горÑÑ‡Ð°Ñ Ð·Ð°Ð¼ÐµÐ½Ð°" - -#: grub-core/fs/zfs/zfsinfo.c:258 -msgid "Pool state: level 2 ARC device" -msgstr "СоÑтоÑние пула: уровень 2 уÑтройÑтва ARC" - -#: grub-core/fs/zfs/zfsinfo.c:259 -msgid "Pool state: uninitialized" -msgstr "СоÑтоÑние пула: не инициализирован" - -#: grub-core/fs/zfs/zfsinfo.c:260 -msgid "Pool state: unavailable" -msgstr "СоÑтоÑние пула: недоÑтупен" - -#: grub-core/fs/zfs/zfsinfo.c:261 -msgid "Pool state: potentially active" -msgstr "СоÑтоÑние пула: потенциально активен" - -#: grub-core/fs/zfs/zfsinfo.c:306 -msgid "Pool name: unavailable" -msgstr "Ð˜Ð¼Ñ Ð¿ÑƒÐ»Ð°: недоÑтупно" - -#: grub-core/fs/zfs/zfsinfo.c:308 -#, c-format -msgid "Pool name: %s\n" -msgstr "Ð˜Ð¼Ñ Ð¿ÑƒÐ»Ð°: %s\n" - -#: grub-core/fs/zfs/zfsinfo.c:313 -msgid "Pool GUID: unavailable" -msgstr "Пул GUID: недоÑтупен" - -#: grub-core/fs/zfs/zfsinfo.c:315 -#, c-format -msgid "Pool GUID: %016llx\n" -msgstr "Пул GUID: %016llx\n" - -#: grub-core/fs/zfs/zfsinfo.c:320 -msgid "Unable to retrieve pool state" -msgstr "Ðе удалоÑÑŒ получить ÑоÑтоÑние пула" - -#: grub-core/fs/zfs/zfsinfo.c:322 -msgid "Unrecognized pool state" -msgstr "ÐераÑпознанное ÑоÑтоÑние пула" - -#. TRANSLATORS: There are undetermined number of virtual devices -#. in a device tree, not just one. -#. -#: grub-core/fs/zfs/zfsinfo.c:332 -msgid "No virtual device tree available" -msgstr "ÐедоÑтупно дерево виртуальных уÑтройÑтв" - -#: grub-core/fs/zfs/zfsinfo.c:431 -msgid "Print ZFS info about DEVICE." -msgstr "Показать информацию ZFS об УСТРОЙСТВЕ." - -#: grub-core/fs/zfs/zfsinfo.c:433 -msgid "FILESYSTEM [VARIABLE]" -msgstr "ФÐЙЛОВÐЯ_СИСТЕМР[ПЕРЕМЕÐÐÐЯ]" - -#: grub-core/fs/zfs/zfsinfo.c:434 -msgid "Print ZFS-BOOTFSOBJ or store it into VARIABLE" -msgstr "Показать ZFS-BOOTFSOBJ или Ñохранить его значение в ПЕРЕМЕÐÐОЙ" - -#. TRANSLATORS: at this position GRUB waits for the user to do an action -#. in remote debugger, namely to tell it to establish connection. -#: grub-core/gdb/gdb.c:48 -msgid "Now connect the remote debugger, please." -msgstr "Теперь подключитеÑÑŒ удалённым отладчиком." - -#. TRANSLATORS: GDB stub is a small part of -#. GDB functionality running on local host -#. which allows remote debugger to -#. connect to it. -#: grub-core/gdb/gdb.c:84 -msgid "Start GDB stub on given port" -msgstr "ЗапуÑтить заглушку GDB на указанном порту" - -#. TRANSLATORS: this refers to triggering -#. a breakpoint so that the user will land -#. into GDB. -#: grub-core/gdb/gdb.c:89 -msgid "Break into GDB" -msgstr "ПрерватьÑÑ Ð² GDB" - -#: grub-core/gdb/gdb.c:91 -msgid "Stop GDB stub" -msgstr "ОÑтановить заглушку GDB" - -#: grub-core/gettext/gettext.c:85 -msgid "premature end of file" -msgstr "преждевременный конец файла" - -#. TRANSLATORS: It refers to passing the string through gettext. -#. So it's "translate" in the same meaning as in what you're -#. doing now. -#. -#: grub-core/gettext/gettext.c:525 -msgid "Translates the string with the current settings." -msgstr "ПеревеÑти Ñтроку Ñ Ñ‚ÐµÐºÑƒÑ‰Ð¸Ð¼Ð¸ наÑтройками." - -#: grub-core/gfxmenu/gui_label.c:186 grub-core/normal/menu_text.c:184 -msgid "" -"Press enter to boot the selected OS, `e' to edit the commands before booting " -"or `c' for a command-line. ESC to return previous menu." -msgstr "" -"Ðажмите «enter» Ð´Ð»Ñ Ð·Ð°Ð³Ñ€ÑƒÐ·ÐºÐ¸ выбранной ОС, «e» Ð´Ð»Ñ Ñ€ÐµÐ´Ð°ÐºÑ‚Ð¸Ñ€Ð¾Ð²Ð°Ð½Ð¸Ñ ÐºÐ¾Ð¼Ð°Ð½Ð´ до " -"загрузки или «c» Ð´Ð»Ñ Ð¿Ð¾Ð»ÑƒÑ‡ÐµÐ½Ð¸Ñ ÐºÐ¾Ð¼Ð°Ð½Ð´Ð½Ð¾Ð¹ Ñтроки. По ESC оÑущеÑтвлÑетÑÑ " -"возврат в предыдущее меню." - -#: grub-core/gfxmenu/gui_label.c:190 grub-core/normal/menu_text.c:192 -msgid "" -"Press enter to boot the selected OS, `e' to edit the commands before booting " -"or `c' for a command-line." -msgstr "" -"Ðажмите «enter» Ð´Ð»Ñ Ð·Ð°Ð³Ñ€ÑƒÐ·ÐºÐ¸ выбранной ОС, «e» Ð´Ð»Ñ Ñ€ÐµÐ´Ð°ÐºÑ‚Ð¸Ñ€Ð¾Ð²Ð°Ð½Ð¸Ñ ÐºÐ¾Ð¼Ð°Ð½Ð´ до " -"загрузки или «c» Ð´Ð»Ñ Ð¿Ð¾Ð»ÑƒÑ‡ÐµÐ½Ð¸Ñ ÐºÐ¾Ð¼Ð°Ð½Ð´Ð½Ð¾Ð¹ Ñтроки." - -#: grub-core/gfxmenu/gui_label.c:194 -msgid "enter: boot, `e': options, `c': cmd-line" -msgstr "«enter»: загрузка, «e»: параметры, «c»: ÐºÐ¾Ð¼Ð°Ð½Ð´Ð½Ð°Ñ Ñтрока" - -#: grub-core/gfxmenu/gui_progress_bar.c:339 grub-core/normal/menu_text.c:446 -#, c-format -msgid "The highlighted entry will be executed automatically in %ds." -msgstr "Выделенный пункт будет выполнен автоматичеÑки через %dÑ." - -#. TRANSLATORS: 's' stands for seconds. -#. It's a standalone timeout notification. -#. Please use the short form in your language. -#: grub-core/gfxmenu/gui_progress_bar.c:344 -#, c-format -msgid "%ds remaining." -msgstr "оÑталоÑÑŒ %dÑ." - -#. TRANSLATORS: 's' stands for seconds. -#. It's a standalone timeout notification. -#. Please use the shortest form available in you language. -#: grub-core/gfxmenu/gui_progress_bar.c:349 grub-core/normal/menu_text.c:444 -#: grub-core/normal/menu_text.c:462 -#, c-format -msgid "%ds" -msgstr "%dÑ" - -#: grub-core/gfxmenu/view.c:103 -msgid "GRUB Boot Menu" -msgstr "Загрузочное меню GRUB" - -#: grub-core/hello/hello.c:36 -msgid "Hello World" -msgstr "Привет, мир" - -#: grub-core/hello/hello.c:45 -msgid "Say `Hello World'." -msgstr "Сказать «Привет, мир»." - -#: grub-core/io/gzio.c:409 grub-core/kern/file.c:210 -msgid "attempt to seek outside of the file" -msgstr "попытка Ð¿ÐµÑ€ÐµÐ¼ÐµÑ‰ÐµÐ½Ð¸Ñ Ð·Ð° пределы файла" - -#. TRANSLATORS: It's about given file having some strange format, not -#. complete lack of gzip support. -#: grub-core/io/gzio.c:1228 grub-core/io/gzio.c:1237 grub-core/io/gzio.c:1244 -msgid "unsupported gzip format" -msgstr "неподдерживаемый формат gzip" - -#: grub-core/io/lzopio.c:511 -msgid "lzop file corrupted" -msgstr "файл lzop повреждён" - -#: grub-core/io/xzio.c:278 -msgid "xz file corrupted or unsupported block options" -msgstr "файл xz повреждён или имеютÑÑ Ð½ÐµÐ¿Ð¾Ð´Ð´ÐµÑ€Ð¶Ð¸Ð²Ð°ÐµÐ¼Ñ‹Ðµ параметры блока" - -#: grub-core/kern/arm/dl.c:277 grub-core/kern/arm64/dl.c:44 -#: grub-core/kern/i386/dl.c:36 grub-core/kern/ia64/dl.c:41 -#: grub-core/kern/mips/dl.c:48 grub-core/kern/powerpc/dl.c:36 -#: grub-core/kern/riscv/dl.c:47 grub-core/kern/sparc64/dl.c:36 -#: grub-core/kern/x86_64/dl.c:36 grub-core/loader/i386/bsd.c:1445 -#: grub-core/loader/i386/bsdXX.c:49 grub-core/loader/ia64/efi/linux.c:341 -#: grub-core/loader/mips/linux.c:298 grub-core/loader/multiboot.c:232 -#: grub-core/loader/multiboot_elfxx.c:73 -#: grub-core/loader/powerpc/ieee1275/linux.c:294 -#: grub-core/loader/sparc64/ieee1275/linux.c:331 -msgid "invalid arch-dependent ELF magic" -msgstr "неверный архитектурно-завиÑимый отличительный идентификатор ELF" - -#: grub-core/kern/corecmd.c:178 -msgid "[ENVVAR=VALUE]" -msgstr "[ПЕРЕМЕÐÐÐЯ_ОКРУЖЕÐИЯ=ЗÐÐЧЕÐИЕ]" - -#: grub-core/kern/corecmd.c:179 -msgid "Set an environment variable." -msgstr "Задать переменную окружениÑ." - -#: grub-core/kern/corecmd.c:183 -msgid "ENVVAR" -msgstr "ПЕРЕМЕÐÐÐЯ_ОКРУЖЕÐИЯ" - -#: grub-core/kern/corecmd.c:184 -msgid "Remove an environment variable." -msgstr "Удалить переменную окружениÑ." - -#: grub-core/kern/corecmd.c:186 -msgid "[ARG]" -msgstr "[ÐРГУМЕÐТ]" - -#: grub-core/kern/corecmd.c:186 -msgid "List devices or files." -msgstr "ВывеÑти ÑпиÑок уÑтройÑтв или файлов." - -#: grub-core/kern/corecmd.c:188 -msgid "Insert a module." -msgstr "Ð’Ñтавить модуль." - -#: grub-core/kern/disk.c:236 grub-core/net/net.c:1390 -#, c-format -msgid "disk `%s' not found" -msgstr "диÑк «%s» не найден" - -#: grub-core/kern/disk_common.c:27 -msgid "attempt to read or write outside of partition" -msgstr "попытка Ñ‡Ñ‚ÐµÐ½Ð¸Ñ Ð¸Ð»Ð¸ запиÑи вне пределов раздела" - -#: grub-core/kern/dl.c:212 grub-core/kern/elf.c:61 grub-core/kern/elf.c:79 -#: grub-core/loader/i386/bsdXX.c:46 grub-core/loader/ia64/efi/linux.c:335 -#: grub-core/loader/multiboot_elfxx.c:69 -msgid "invalid arch-independent ELF magic" -msgstr "неверный архитектурно-незавиÑимый отличительный идентификатор ELF" - -#. TRANSLATORS: it refers to the lack of free slots. -#: grub-core/kern/emu/hostdisk.c:208 grub-core/kern/emu/hostdisk.c:466 -msgid "device count exceeds limit" -msgstr "превышен предел Ñчётчика уÑтройÑтв" - -#: grub-core/kern/emu/hostdisk.c:342 util/editenv.c:54 util/grub-editenv.c:197 -#: util/grub-fstest.c:191 util/grub-mkfont.c:796 util/misc.c:114 -#: util/misc.c:129 util/setup.c:788 -#, c-format -msgid "cannot write to `%s': %s" -msgstr "невозможно запиÑать в «%s»: %s" - -#. TRANSLATORS: Only one entry is ignored. However the suggestion -#. is to correct/delete the whole file. -#. device.map is a file indicating which -#. devices are available at boot time. Fedora populated it with -#. entries like (hd0,1) /dev/sda1 which would mean that every -#. partition is a separate disk for BIOS. Such entries were -#. inactive in GRUB due to its bug which is now gone. Without -#. this additional check these entries would be harmful now. -#. -#: grub-core/kern/emu/hostdisk.c:503 -#, c-format -msgid "" -"the device.map entry `%s' is invalid. Ignoring it. Please correct or delete " -"your device.map" -msgstr "" -"Ð½ÐµÐºÐ¾Ñ€Ñ€ÐµÐºÑ‚Ð½Ð°Ñ Ð·Ð°Ð¿Ð¸ÑÑŒ «%s» в device.map. ИгнорируетÑÑ. ИÑправьте или удалите " -"device.map" - -#. TRANSLATORS: device.map is a filename. Not to be translated. -#. device.map specifies disk correspondance overrides. Previously -#. one could create any kind of device name with this. Due to -#. some problems we decided to limit it to just a handful -#. possibilities. -#: grub-core/kern/emu/hostdisk.c:555 -#, c-format -msgid "" -"the drive name `%s' in device.map is incorrect. Using %s instead. Please use " -"the form [hfc]d[0-9]* (E.g. `hd0' or `cd')" -msgstr "" -"некорректное Ð¸Ð¼Ñ ÑƒÑтройÑтва «%s» в device.map. ВмеÑто него будет " -"иÑпользовано %s. ИÑпользуйте формат [hfc]d[0-9]* (например «hd0» или «cd»)" - -#: grub-core/kern/emu/hostfs.c:76 grub-core/kern/emu/hostfs.c:109 -#, c-format -msgid "can't open `%s': %s" -msgstr "не удалоÑÑŒ открыть «%s»: %s" - -#: grub-core/kern/emu/main.c:99 util/grub-fstest.c:516 util/grub-mount.c:452 -msgid "DEVICE_NAME" -msgstr "ИМЯ_УСТРОЙСТВÐ" - -#: grub-core/kern/emu/main.c:99 grub-core/loader/i386/bsd.c:136 -#: grub-core/loader/i386/bsd.c:169 util/grub-fstest.c:516 util/grub-mount.c:452 -msgid "Set root device." -msgstr "Задать корневое уÑтройÑтво." - -#. TRANSLATORS: There are many devices in device map. -#: grub-core/kern/emu/main.c:102 util/grub-probe.c:733 util/grub-setup.c:85 -#, c-format -msgid "use FILE as the device map [default=%s]" -msgstr "иÑпользовать ФÐЙЛ в качеÑтве карты уÑтройÑтв [по умолчанию %s]" - -#. TRANSLATORS: There are many devices in device map. -#: grub-core/kern/emu/main.c:105 -msgid "use FILE as memdisk" -msgstr "иÑпользовать ФÐЙЛ как memdisk" - -#: grub-core/kern/emu/main.c:107 util/grub-setup.c:83 -#, c-format -msgid "use GRUB files in the directory DIR [default=%s]" -msgstr "иÑпользовать файлы GRUB в каталоге, заданном в КÐТ [по умолчанию %s]" - -#: grub-core/kern/emu/main.c:108 include/grub/util/install.h:67 -#: util/grub-editenv.c:58 util/grub-fstest.c:525 util/grub-glue-efi.c:58 -#: util/grub-macbless.c:104 util/grub-mkfont.c:962 util/grub-mkimage.c:84 -#: util/grub-mklayout.c:56 util/grub-mount.c:458 util/grub-probe.c:735 -#: util/grub-render-label.c:74 util/grub-script-check.c:52 util/grub-setup.c:90 -#: util/grub-syslinux2cfg.c:78 -msgid "print verbose messages." -msgstr "показывать подробные ÑообщениÑ." - -#: grub-core/kern/emu/main.c:109 grub-core/lib/gnulib/argp-parse.c:85 -msgid "SECS" -msgstr "СЕКУÐД" - -#: grub-core/kern/emu/main.c:109 -msgid "wait until a debugger will attach" -msgstr "подождать пока подключитьÑÑ Ð¾Ñ‚Ð»Ð°Ð´Ñ‡Ð¸Ðº" - -#: grub-core/kern/emu/main.c:171 util/grub-macbless.c:143 -#: util/grub-mkrelpath.c:61 util/grub-probe.c:874 util/grub-script-check.c:75 -#: util/grub-setup.c:203 -#, c-format -msgid "Unknown extra argument `%s'." -msgstr "ÐеизвеÑтный дополнительный параметр «%s»." - -#: grub-core/kern/emu/main.c:185 -msgid "GRUB emulator." -msgstr "ЭмулÑтор GRUB." - -#: grub-core/kern/emu/main.c:213 util/grub-editenv.c:262 -#: util/grub-glue-efi.c:110 util/grub-macbless.c:173 util/grub-mkfont.c:1177 -#: util/grub-mkimage.c:266 util/grub-mklayout.c:494 -#: util/grub-mkpasswd-pbkdf2.c:132 util/grub-mkrelpath.c:96 -#: util/grub-probe.c:863 util/grub-render-label.c:152 -#: util/grub-script-check.c:160 util/grub-setup.c:262 -#: util/grub-syslinux2cfg.c:163 -msgid "Error in parsing command line arguments\n" -msgstr "Ошибка при разборе аргументов командной Ñтроки\n" - -#. TRANSLATORS: In this case GRUB tells user what he has to do. -#: grub-core/kern/emu/main.c:248 -#, c-format -msgid "Run `gdb %s %d', and set ARGS.HOLD to zero.\n" -msgstr "ЗапуÑтите «gdb %s %d», и уÑтановите значение ARGS.HOLD равным нулю.\n" - -#: grub-core/kern/emu/misc.c:48 -#, c-format -msgid "%s: warning:" -msgstr "%s: предупреждение:" - -#: grub-core/kern/emu/misc.c:64 -#, c-format -msgid "%s: info:" -msgstr "%s: информациÑ:" - -#: grub-core/kern/emu/misc.c:79 util/grub-fstest.c:567 util/grub-fstest.c:576 -#: util/grub-mount.c:497 util/grub-mount.c:505 -#, c-format -msgid "%s: error:" -msgstr "%s: ошибка:" - -#: grub-core/kern/emu/misc.c:176 -#, c-format -msgid "file `%s' is too big" -msgstr "файл «%s» Ñлишком большой" - -#: grub-core/kern/fs.c:120 -msgid "unknown filesystem" -msgstr "неизвеÑÑ‚Ð½Ð°Ñ Ñ„Ð°Ð¹Ð»Ð¾Ð²Ð°Ñ ÑиÑтема" - -#: grub-core/kern/mips/arc/init.c:273 grub-core/kern/mips/loongson/init.c:301 -msgid "Shutdown failed" -msgstr "Ðе удалоÑÑŒ выполнить выключение" - -#: grub-core/kern/mips/arc/init.c:285 -msgid "Exit failed" -msgstr "Ðе удалоÑÑŒ выполнить выход" - -#: grub-core/kern/misc.c:351 grub-core/kern/misc.c:408 include/grub/misc.h:269 -#: include/grub/misc.h:278 -msgid "overflow is detected" -msgstr "обнаружено переполнение" - -#: grub-core/kern/partition.c:51 grub-core/partmap/bsdlabel.c:108 -#, c-format -msgid "Discarding improperly nested partition (%s,%s,%s%d)" -msgstr "ОтбраÑываетÑÑ Ð½ÐµÐ¿Ñ€Ð°Ð²Ð¸Ð»ÑŒÐ½Ð¾ вложенный раздел (%s,%s,%s%d)" - -#: grub-core/kern/rescue_parser.c:73 util/grub-editenv.c:292 -#, c-format -msgid "Unknown command `%s'.\n" -msgstr "ÐеизвеÑÑ‚Ð½Ð°Ñ ÐºÐ¾Ð¼Ð°Ð½Ð´Ð° «%s».\n" - -#: grub-core/lib/arg.c:31 -msgid "Display this help and exit." -msgstr "Показать Ñту Ñправку и закончить работу." - -#: grub-core/lib/arg.c:33 -msgid "Display the usage of this command and exit." -msgstr "Показать Ñправку по Ñтой команде и закончить работу." - -#: grub-core/lib/arg.c:362 -#, c-format -msgid "missing mandatory option for `%s'" -msgstr "отÑутÑтвует обÑзательный параметр Ð´Ð»Ñ Â«%s»" - -#: grub-core/lib/arg.c:384 -#, c-format -msgid "the argument `%s' requires an integer" -msgstr "Ð´Ð»Ñ Ð°Ñ€Ð³ÑƒÐ¼ÐµÐ½Ñ‚Ð° «%s» требуетÑÑ Ñ†ÐµÐ»Ð¾Ðµ чиÑло" - -#: grub-core/lib/arg.c:407 -#, c-format -msgid "" -"a value was assigned to the argument `%s' while it doesn't require an " -"argument" -msgstr "" -"Ð´Ð»Ñ Ð°Ñ€Ð³ÑƒÐ¼ÐµÐ½Ñ‚Ð° «%s» назначено значение, но Ñто не требуетÑÑ Ð´Ð»Ñ Ð°Ñ€Ð³ÑƒÐ¼ÐµÐ½Ñ‚Ð°" - -#: grub-core/lib/backtrace.c:64 -msgid "Print backtrace." -msgstr "Показать Ñтек вызовов." - -#: grub-core/lib/gnulib/argp-help.c:149 -#, c-format -msgid "ARGP_HELP_FMT: %s value is less than or equal to %s" -msgstr "ARGP_HELP_FMT: значение %s меньше или равно %s" - -#: grub-core/lib/gnulib/argp-help.c:225 -#, c-format -msgid "%.*s: ARGP_HELP_FMT parameter requires a value" -msgstr "%.*s: параметр ARGP_HELP_FMT требует значение" - -#: grub-core/lib/gnulib/argp-help.c:235 -#, c-format -msgid "%.*s: Unknown ARGP_HELP_FMT parameter" -msgstr "%.*s: неизвеÑтный параметр ARGP_HELP_FMT" - -#: grub-core/lib/gnulib/argp-help.c:248 -#, c-format -msgid "Garbage in ARGP_HELP_FMT: %s" -msgstr "МуÑор в ARGP_HELP_FMT: %s" - -#: grub-core/lib/gnulib/argp-help.c:1229 -msgid "" -"Mandatory or optional arguments to long options are also mandatory or " -"optional for any corresponding short options." -msgstr "" -"ОбÑзательные или необÑзательные аргументы Ð´Ð»Ñ Ð´Ð»Ð¸Ð½Ð½Ñ‹Ñ… параметров также " -"ÑвлÑÑŽÑ‚ÑÑ Ð¾Ð±Ñзательными или необÑзательными Ð´Ð»Ñ ÑоответÑтвующих коротких " -"параметров." - -#: grub-core/lib/gnulib/argp-help.c:1620 -msgid " or: " -msgstr " или: " - -#: grub-core/lib/gnulib/argp-help.c:1632 -msgid " [OPTION...]" -msgstr " [ПÐРÐМЕТР…]" - -#: grub-core/lib/gnulib/argp-help.c:1659 -#, c-format -msgid "Try '%s --help' or '%s --usage' for more information.\n" -msgstr "" -"Попробуйте «%s --help» или «%s --usage» Ð´Ð»Ñ Ð¿Ð¾Ð»ÑƒÑ‡ÐµÐ½Ð¸Ñ Ð±Ð¾Ð»ÐµÐµ подробного " -"опиÑаниÑ.\n" - -#: grub-core/lib/gnulib/argp-help.c:1687 -#, c-format -msgid "Report bugs to %s.\n" -msgstr "Ð¡Ð¾Ð¾Ð±Ñ‰ÐµÐ½Ð¸Ñ Ð¾Ð± ошибках отправлÑйте на %s.\n" - -#: grub-core/lib/gnulib/argp-help.c:1888 grub-core/lib/gnulib/error.c:195 -msgid "Unknown system error" -msgstr "ÐеизвеÑÑ‚Ð½Ð°Ñ ÑиÑÑ‚ÐµÐ¼Ð½Ð°Ñ Ð¾ÑˆÐ¸Ð±ÐºÐ°" - -#: grub-core/lib/gnulib/argp-parse.c:81 -msgid "give this help list" -msgstr "показать Ñту Ñправку" - -#: grub-core/lib/gnulib/argp-parse.c:82 -msgid "give a short usage message" -msgstr "показать короткую Ñправку по иÑпользованию" - -#: grub-core/lib/gnulib/argp-parse.c:83 util/grub-mkfont.c:946 -msgid "NAME" -msgstr "ИМЯ" - -#: grub-core/lib/gnulib/argp-parse.c:84 -msgid "set the program name" -msgstr "задать Ð¸Ð¼Ñ Ð¿Ñ€Ð¾Ð³Ñ€Ð°Ð¼Ð¼Ñ‹" - -#: grub-core/lib/gnulib/argp-parse.c:86 -msgid "hang for SECS seconds (default 3600)" -msgstr "оÑтановитьÑÑ Ð½Ð° заданное чиÑло СЕКУÐД (по умолчанию 3600)" - -#: grub-core/lib/gnulib/argp-parse.c:143 -msgid "print program version" -msgstr "показать номер верÑии программы" - -#: grub-core/lib/gnulib/argp-parse.c:160 -msgid "(PROGRAM ERROR) No version known!?" -msgstr "(ОШИБКРПРОГРÐММЫ) ВерÑÐ¸Ñ Ð½ÐµÐ¸Ð·Ð²ÐµÑтна!?" - -#: grub-core/lib/gnulib/argp-parse.c:613 -#, c-format -msgid "%s: Too many arguments\n" -msgstr "%s: Слишком много аргументов\n" - -#: grub-core/lib/gnulib/argp-parse.c:759 -msgid "(PROGRAM ERROR) Option should have been recognized!?" -msgstr "(ОШИБКРПРОГРÐММЫ) Параметр должен быть раÑпознан!?" - -#: grub-core/lib/gnulib/getopt.c:278 -#, c-format -msgid "%s: option '%s%s' is ambiguous\n" -msgstr "%s: двуÑмыÑленный параметр «%s%s»\n" - -#: grub-core/lib/gnulib/getopt.c:284 -#, c-format -msgid "%s: option '%s%s' is ambiguous; possibilities:" -msgstr "%s: двуÑмыÑленный параметр «%s%s»; возможные варианты:" - -#: grub-core/lib/gnulib/getopt.c:319 -#, c-format -msgid "%s: unrecognized option '%s%s'\n" -msgstr "%s: нераÑпознанный параметр «%s%s»\n" - -#: grub-core/lib/gnulib/getopt.c:345 -#, c-format -msgid "%s: option '%s%s' doesn't allow an argument\n" -msgstr "%s: Ð´Ð»Ñ Ð¿Ð°Ñ€Ð°Ð¼ÐµÑ‚Ñ€Ð° «%s%s» Ð½ÐµÐ»ÑŒÐ·Ñ Ð¸Ñпользовать аргумент\n" - -#: grub-core/lib/gnulib/getopt.c:360 -#, c-format -msgid "%s: option '%s%s' requires an argument\n" -msgstr "%s: Ð´Ð»Ñ Ð¿Ð°Ñ€Ð°Ð¼ÐµÑ‚Ñ€Ð° «%s%s» требуетÑÑ Ð°Ñ€Ð³ÑƒÐ¼ÐµÐ½Ñ‚\n" - -#: grub-core/lib/gnulib/getopt.c:621 -#, c-format -msgid "%s: invalid option -- '%c'\n" -msgstr "%s: неверный параметр «%c»\n" - -#: grub-core/lib/gnulib/getopt.c:636 grub-core/lib/gnulib/getopt.c:682 -#, c-format -msgid "%s: option requires an argument -- '%c'\n" -msgstr "%s: параметру требуетÑÑ Ð°Ñ€Ð³ÑƒÐ¼ÐµÐ½Ñ‚ «%c»\n" - -#: grub-core/lib/gnulib/openat-die.c:38 -#, c-format -msgid "unable to record current working directory" -msgstr "не удалоÑÑŒ запомнить текущий рабочий каталог" - -#: grub-core/lib/gnulib/openat-die.c:57 -#, c-format -msgid "failed to return to initial working directory" -msgstr "не удалоÑÑŒ вернутьÑÑ Ð² первоначальный рабочий каталог" - -#: grub-core/lib/gnulib/regcomp.c:135 grub-core/osdep/aros/hostdisk.c:523 -msgid "Success" -msgstr "УÑпешно" - -#: grub-core/lib/gnulib/regcomp.c:138 -msgid "No match" -msgstr "Ðет ÑовпадениÑ" - -#: grub-core/lib/gnulib/regcomp.c:141 -msgid "Invalid regular expression" -msgstr "Ðеправильное регулÑрное выражение" - -#: grub-core/lib/gnulib/regcomp.c:144 -msgid "Invalid collation character" -msgstr "Ðеправильный Ñимвол ÑравнениÑ" - -#: grub-core/lib/gnulib/regcomp.c:147 -msgid "Invalid character class name" -msgstr "Ðеправильное Ð¸Ð¼Ñ ÐºÐ»Ð°ÑÑа Ñимволов" - -#: grub-core/lib/gnulib/regcomp.c:150 -msgid "Trailing backslash" -msgstr "ÐžÐ±Ñ€Ð°Ñ‚Ð½Ð°Ñ ÐºÐ¾ÑÐ°Ñ Ñ‡ÐµÑ€Ñ‚Ð° в конце" - -#: grub-core/lib/gnulib/regcomp.c:153 -msgid "Invalid back reference" -msgstr "ÐÐµÐ¿Ñ€Ð°Ð²Ð¸Ð»ÑŒÐ½Ð°Ñ Ð¾Ð±Ñ€Ð°Ñ‚Ð½Ð°Ñ ÑÑылка" - -#: grub-core/lib/gnulib/regcomp.c:156 -msgid "Unmatched [, [^, [:, [., or [=" -msgstr "ÐÐµÐ¿Ð°Ñ€Ð½Ð°Ñ [, [^, [:, [. или [=" - -#: grub-core/lib/gnulib/regcomp.c:159 -msgid "Unmatched ( or \\(" -msgstr "ÐÐµÐ¿Ð°Ñ€Ð½Ð°Ñ ( или \\(" - -#: grub-core/lib/gnulib/regcomp.c:162 -msgid "Unmatched \\{" -msgstr "ÐÐµÐ¿Ð°Ñ€Ð½Ð°Ñ \\{" - -#: grub-core/lib/gnulib/regcomp.c:165 -msgid "Invalid content of \\{\\}" -msgstr "Ðеверное Ñодержимое \\{\\}" - -#: grub-core/lib/gnulib/regcomp.c:168 -msgid "Invalid range end" -msgstr "Ðеверный конец диапазона" - -#: grub-core/lib/gnulib/regcomp.c:171 -msgid "Memory exhausted" -msgstr "ЗакончилаÑÑŒ памÑть" - -#: grub-core/lib/gnulib/regcomp.c:174 -msgid "Invalid preceding regular expression" -msgstr "Ðеверное предшеÑтвующее регулÑрное выражение" - -#: grub-core/lib/gnulib/regcomp.c:177 -msgid "Premature end of regular expression" -msgstr "Преждевременный конец регулÑрного выражениÑ" - -#: grub-core/lib/gnulib/regcomp.c:180 -msgid "Regular expression too big" -msgstr "РегулÑрное выражение Ñлишком велико" - -#: grub-core/lib/gnulib/regcomp.c:183 -msgid "Unmatched ) or \\)" -msgstr "ÐÐµÐ¿Ð°Ñ€Ð½Ð°Ñ ) или \\)" - -#: grub-core/lib/gnulib/regcomp.c:531 -msgid "unknown regexp error" -msgstr "неизвеÑÑ‚Ð½Ð°Ñ Ð¾ÑˆÐ¸Ð±ÐºÐ° в регулÑрном выражении" - -#: grub-core/lib/gnulib/regcomp.c:676 -msgid "No previous regular expression" -msgstr "ОтÑутÑтвует предыдущее регулÑрное выражение" - -#: grub-core/lib/i386/halt.c:77 -msgid "GRUB doesn't know how to halt this machine yet!" -msgstr "GRUB пока не знает как оÑтановить Ñту машину!" - -#: grub-core/lib/legacy_parse.c:75 -msgid "Default server is ${net_default_server}" -msgstr "Сервер по умолчанию — ${net_default_server}" - -#: grub-core/lib/legacy_parse.c:844 grub-core/video/colors.c:296 -#: grub-core/video/colors.c:305 grub-core/video/colors.c:311 -#: grub-core/video/colors.c:327 util/render-label.c:84 util/render-label.c:98 -#, c-format -msgid "invalid color specification `%s'" -msgstr "неправильное указание цвета «%s»" - -#: grub-core/lib/mips/arc/reboot.c:32 grub-core/lib/mips/loongson/reboot.c:61 -msgid "Reboot failed" -msgstr "Ðе удалоÑÑŒ выполнить перезагрузку" - -#: grub-core/lib/random.c:113 -msgid "[LENGTH]" -msgstr "[ДЛИÐÐ]" - -#: grub-core/lib/random.c:114 -msgid "Hexdump random data." -msgstr "ШеÑтнадцатеричный дамп произвольных данных." - -#: grub-core/loader/arm/linux.c:242 -msgid "device tree must be supplied (see `devicetree' command)" -msgstr "должно быть указано дерево уÑтройÑтв (Ñмотрите команду «devicetree»)" - -#: grub-core/loader/arm/linux.c:334 -msgid "invalid zImage" -msgstr "неверный zImage" - -#: grub-core/loader/arm/linux.c:450 grub-core/loader/efi/fdt.c:144 -msgid "invalid device tree" -msgstr "неверное дерево уÑтройÑтв" - -#: grub-core/loader/arm/linux.c:493 grub-core/loader/arm64/linux.c:383 -#: grub-core/loader/i386/linux.c:1125 grub-core/loader/i386/pc/linux.c:479 -#: grub-core/loader/i386/xen.c:962 grub-core/loader/i386/xen.c:964 -#: grub-core/loader/ia64/efi/linux.c:591 grub-core/loader/mips/linux.c:501 -#: grub-core/loader/powerpc/ieee1275/linux.c:383 -#: grub-core/loader/riscv/linux.c:50 -#: grub-core/loader/sparc64/ieee1275/linux.c:511 -msgid "Load Linux." -msgstr "Загрузить Linux." - -#: grub-core/loader/arm/linux.c:495 grub-core/loader/arm64/linux.c:385 -#: grub-core/loader/i386/linux.c:1127 grub-core/loader/i386/pc/linux.c:482 -#: grub-core/loader/i386/xen.c:966 grub-core/loader/ia64/efi/linux.c:594 -#: grub-core/loader/mips/linux.c:503 -#: grub-core/loader/powerpc/ieee1275/linux.c:385 -#: grub-core/loader/riscv/linux.c:52 -#: grub-core/loader/sparc64/ieee1275/linux.c:513 -msgid "Load initrd." -msgstr "Загрузить initrd." - -#. TRANSLATORS: DTB stands for device tree blob. -#: grub-core/loader/arm/linux.c:498 grub-core/loader/efi/fdt.c:169 -msgid "Load DTB file." -msgstr "Загрузить файл DTB." - -#: grub-core/loader/arm64/linux.c:59 -msgid "" -"plain image kernel not supported - rebuild with CONFIG_(U)EFI_STUB enabled" -msgstr "" -"обычный образ Ñдра не поддерживаетÑÑ â€” переÑоберите его Ñ Ð²ÐºÐ»ÑŽÑ‡Ñ‘Ð½Ð½Ñ‹Ð¼ " -"параметром CONFIG_(U)EFI_STUB" - -#: grub-core/loader/arm64/xen_boot.c:156 -msgid "failed to get FDT" -msgstr "не удалоÑÑŒ получить FDT" - -#: grub-core/loader/arm64/xen_boot.c:418 -msgid "you need to load the Xen Hypervisor first" -msgstr "Ñначала нужно загрузить Xen Hypervisor" - -#: grub-core/loader/arm64/xen_boot.c:516 -msgid "Load a xen hypervisor." -msgstr "Загрузить гипервизор xen." - -#: grub-core/loader/arm64/xen_boot.c:519 -msgid "Load a xen module." -msgstr "Загрузить модуль xen." - -#: grub-core/loader/efi/appleloader.c:231 -msgid "[OPTS]" -msgstr "[ПÐРÐМЕТРЫ]" - -#. TRANSLATORS: This command is used on EFI to -#. switch to BIOS mode and boot the OS requiring -#. BIOS. -#: grub-core/loader/efi/appleloader.c:235 -msgid "Boot BIOS-based system." -msgstr "Загрузить ÑиÑтему, указанную в BIOS" - -#: grub-core/loader/efi/chainloader.c:421 -#: grub-core/loader/i386/pc/chainloader.c:303 -msgid "Load another boot loader." -msgstr "Загрузить другой загрузчик." - -#: grub-core/loader/i386/bsd.c:103 -msgid "Display output on all consoles." -msgstr "Выводить ÑÐ¾Ð¾Ð±Ñ‰ÐµÐ½Ð¸Ñ Ð½Ð° вÑех конÑолÑÑ…." - -#: grub-core/loader/i386/bsd.c:104 grub-core/loader/i386/bsd.c:138 -#: grub-core/loader/i386/bsd.c:171 -msgid "Use serial console." -msgstr "ИÑпользовать конÑоль на поÑледовательном порту." - -#: grub-core/loader/i386/bsd.c:105 grub-core/loader/i386/bsd.c:131 -#: grub-core/loader/i386/bsd.c:159 -msgid "Ask for file name to reboot from." -msgstr "ЗапроÑить Ð¸Ð¼Ñ Ñ„Ð°Ð¹Ð»Ð° Ð´Ð»Ñ Ð¿ÐµÑ€ÐµÐ·Ð°Ð³Ñ€ÑƒÐ·ÐºÐ¸." - -#: grub-core/loader/i386/bsd.c:106 -msgid "Use CD-ROM as root." -msgstr "ИÑпользовать компакт-диÑк в качеÑтве корнÑ." - -#: grub-core/loader/i386/bsd.c:107 -msgid "Invoke user configuration routing." -msgstr "Выполнить пользовательÑкую наÑтройку маршрутизации." - -#: grub-core/loader/i386/bsd.c:108 grub-core/loader/i386/bsd.c:135 -#: grub-core/loader/i386/bsd.c:162 -msgid "Enter in KDB on boot." -msgstr "Войти в KDB при загрузке." - -#: grub-core/loader/i386/bsd.c:109 -msgid "Use GDB remote debugger instead of DDB." -msgstr "ИÑпользовать удалённый отладчик GDB вмеÑто DDB." - -#: grub-core/loader/i386/bsd.c:110 -msgid "Disable all boot output." -msgstr "Выключить вывод при загрузке." - -#: grub-core/loader/i386/bsd.c:112 -msgid "Wait for keypress after every line of output." -msgstr "Ждать Ð½Ð°Ð¶Ð°Ñ‚Ð¸Ñ Ð»ÑŽÐ±Ð¾Ð¹ клавиши поÑле каждой выводимой Ñтроки." - -#: grub-core/loader/i386/bsd.c:114 -msgid "Use compiled-in root device." -msgstr "ИÑпользовать вкомпилированное корневое уÑтройÑтво." - -#: grub-core/loader/i386/bsd.c:115 grub-core/loader/i386/bsd.c:134 -#: grub-core/loader/i386/bsd.c:165 -msgid "Boot into single mode." -msgstr "ЗагрузитьÑÑ Ð² однопользовательÑкий режим." - -#: grub-core/loader/i386/bsd.c:116 grub-core/loader/i386/bsd.c:166 -msgid "Boot with verbose messages." -msgstr "Показывать подробные ÑÐ¾Ð¾Ð±Ñ‰ÐµÐ½Ð¸Ñ Ð¿Ñ€Ð¸ загрузке." - -#: grub-core/loader/i386/bsd.c:132 grub-core/loader/i386/bsd.c:160 -msgid "Don't reboot, just halt." -msgstr "Ðе перезагружатьÑÑ, а выполнить оÑтанов." - -#: grub-core/loader/i386/bsd.c:133 grub-core/loader/i386/bsd.c:161 -msgid "Change configured devices." -msgstr "Изменить наÑтроенные уÑтройÑтва." - -#. TRANSLATORS: "com" is static and not to be translated. It refers to -#. serial ports e.g. com1. -#. -#: grub-core/loader/i386/bsd.c:142 -msgid "comUNIT[,SPEED]" -msgstr "comÐОМЕР[,СКОРОСТЬ]" - -#: grub-core/loader/i386/bsd.c:157 -msgid "Disable SMP." -msgstr "Выключить SMP." - -#: grub-core/loader/i386/bsd.c:158 -msgid "Disable ACPI." -msgstr "Выключить ACPI." - -#: grub-core/loader/i386/bsd.c:164 -msgid "Don't display boot diagnostic messages." -msgstr "Ðе выводить отладочные загрузочные ÑообщениÑ." - -#: grub-core/loader/i386/bsd.c:167 -msgid "Boot with debug messages." -msgstr "ЗагружатьÑÑ Ñ Ð²Ñ‹Ð²Ð¾Ð´Ð¾Ð¼ отладочных Ñообщений." - -#: grub-core/loader/i386/bsd.c:168 -msgid "Suppress normal output (warnings remain)." -msgstr "Ðе показывать обычные ÑÐ¾Ð¾Ð±Ñ‰ÐµÐ½Ð¸Ñ (только предупреждениÑ)." - -#. TRANSLATORS: "com" is static and not to be translated. It refers to -#. serial ports e.g. com1. -#. -#: grub-core/loader/i386/bsd.c:175 -msgid "[ADDR|comUNIT][,SPEED]" -msgstr "[ÐДРЕС|comÐОМЕР][,СКОРОСТЬ]" - -#: grub-core/loader/i386/bsd.c:489 grub-core/loader/i386/bsd.c:555 -msgid "name" -msgstr "имÑ" - -#: grub-core/loader/i386/bsd.c:489 grub-core/loader/i386/bsd.c:555 -msgid "type" -msgstr "тип" - -#: grub-core/loader/i386/bsd.c:489 grub-core/loader/i386/bsd.c:555 -msgid "addr" -msgstr "адреÑ" - -#: grub-core/loader/i386/bsd.c:490 grub-core/loader/i386/bsd.c:556 -msgid "size" -msgstr "размер" - -#: grub-core/loader/i386/bsd.c:1147 grub-core/loader/i386/linux.c:466 -#: grub-core/loader/i386/xnu.c:1030 -msgid "Booting in blind mode" -msgstr "Загрузка в Ñлепом режиме" - -#: grub-core/loader/i386/bsd.c:2137 -msgid "Load kernel of FreeBSD." -msgstr "Загрузить Ñдро FreeBSD." - -#: grub-core/loader/i386/bsd.c:2140 -msgid "Load kernel of OpenBSD." -msgstr "Загрузить Ñдро OpenBSD." - -#: grub-core/loader/i386/bsd.c:2143 -msgid "Load kernel of NetBSD." -msgstr "Загрузить Ñдро NetBSD." - -#: grub-core/loader/i386/bsd.c:2147 -msgid "Load FreeBSD env." -msgstr "Загрузить окружение FreeBSD." - -#: grub-core/loader/i386/bsd.c:2150 -msgid "Load FreeBSD kernel module." -msgstr "Загрузить модуль Ñдра FreeBSD." - -#: grub-core/loader/i386/bsd.c:2153 -msgid "Load NetBSD kernel module." -msgstr "Загрузить модуль Ñдра NetBSD." - -#: grub-core/loader/i386/bsd.c:2156 -msgid "Load NetBSD kernel module (ELF)." -msgstr "Загрузить модуль Ñдра NetBSD (ELF)." - -#: grub-core/loader/i386/bsd.c:2159 -msgid "Load FreeBSD kernel module (ELF)." -msgstr "Загрузить модуль Ñдра FreeBSD (ELF)." - -#. TRANSLATORS: ramdisk isn't identifier, -#. it can be translated. -#: grub-core/loader/i386/bsd.c:2165 -msgid "Load kOpenBSD ramdisk." -msgstr "Загрузить виртуальный диÑк kOpenBSD." - -#. TRANSLATORS: "payload" is a term used -#. by coreboot and must be translated in -#. sync with coreboot. If unsure, -#. let it untranslated. -#: grub-core/loader/i386/coreboot/chainloader.c:510 -msgid "Load another coreboot payload" -msgstr "Загрузить другой coreboot payload" - -#: grub-core/loader/i386/linux.c:876 -msgid "Legacy `ask' parameter no longer supported." -msgstr "УÑтаревший параметр «ask» больше не поддерживаетÑÑ." - -#: grub-core/loader/i386/linux.c:892 grub-core/loader/i386/linux.c:902 -#: grub-core/loader/i386/linux.c:932 -#, c-format -msgid "%s is deprecated. Use set gfxpayload=%s before linux command instead.\n" -msgstr "" -"%s уÑтарел. ИÑпользуйте вмеÑто него set gfxpayload=%s до команды linux.\n" - -#. TRANSLATORS: "x" has to be entered in, like an identifier, -#. so please don't use better Unicode codepoints. -#: grub-core/loader/i386/linux.c:915 -#, c-format -msgid "" -"%s is deprecated. VGA mode %d isn't recognized. Use set " -"gfxpayload=WIDTHxHEIGHT[xDEPTH] before linux command instead.\n" -msgstr "" -"%s уÑтарел. Режим VGA %d не раÑпознан. ИÑпользуйте вмеÑто него set " -"gfxpayload=ШИРИÐÐxВЫСОТÐ[xГЛУБИÐÐ] до команды linux.\n" - -#: grub-core/loader/i386/pc/chainloader.c:302 -msgid "[--force|--bpb] FILE" -msgstr "[--force|--bpb] ФÐЙЛ" - -#: grub-core/loader/i386/pc/freedos.c:148 util/setup.c:293 -#, c-format -msgid "the size of `%s' is too large" -msgstr "размер «%s» Ñлишком велик" - -#: grub-core/loader/i386/pc/freedos.c:183 -msgid "Load FreeDOS kernel.sys." -msgstr "Загрузить FreeBSD kernel.sys." - -#: grub-core/loader/i386/pc/ntldr.c:155 -msgid "Load NTLDR or BootMGR." -msgstr "Загрузить NTLDR или BootMGR." - -#. TRANSLATORS: it's about guessing which GRUB disk -#. is which Plan9 disk. If your language has no -#. word "mapping" you can use another word which -#. means that the GRUBDEVICE and PLAN9DEVICE are -#. actually the same device, just named differently -#. in OS and GRUB. -#: grub-core/loader/i386/pc/plan9.c:59 -msgid "Override guessed mapping of Plan9 devices." -msgstr "Заменить предугаданное ÑоответÑтвие уÑтройÑтв Plan9." - -#: grub-core/loader/i386/pc/plan9.c:60 -msgid "GRUBDEVICE=PLAN9DEVICE" -msgstr "УСТРОЙСТВО_GRUB=УСТРОЙСТВО_PLAN9" - -#: grub-core/loader/i386/pc/plan9.c:599 -msgid "KERNEL ARGS" -msgstr "ÐРГУМЕÐТЫ ЯДРÐ" - -#: grub-core/loader/i386/pc/plan9.c:599 -msgid "Load Plan9 kernel." -msgstr "Загрузить Ñдро Plan9." - -#: grub-core/loader/i386/pc/pxechainloader.c:161 -msgid "Load a PXE image." -msgstr "Загрузить образ PXE." - -#: grub-core/loader/i386/pc/truecrypt.c:226 -msgid "Load Truecrypt ISO." -msgstr "Загрузить Truecrypt ISO." - -#: grub-core/loader/i386/xen.c:781 grub-core/loader/i386/xen.c:865 -msgid "initrd already loaded" -msgstr "initrd уже загружен" - -#: grub-core/loader/i386/xen.c:968 -msgid "Load module." -msgstr "Загрузить модуль." - -#: grub-core/loader/i386/xnu.c:1003 -msgid "Press any key to launch xnu" -msgstr "Ðажмите любую клавишу Ð´Ð»Ñ Ð·Ð°Ð¿ÑƒÑка xnu" - -#. TRANSLATORS: `device-properties' -#. is a variable name, -#. not a program. -#: grub-core/loader/i386/xnu.c:1159 -msgid "Load `device-properties' dump." -msgstr "Загрузить дамп «device-properties»." - -#: grub-core/loader/ia64/efi/linux.c:124 -msgid "Could not locate FPSWA driver" -msgstr "Ðе удалоÑÑŒ найти драйвер FPSWA" - -#: grub-core/loader/ia64/efi/linux.c:132 -msgid "FPSWA protocol wasn't able to find the interface" -msgstr "Протоколом FPSWA не удалоÑÑŒ найти интерфейÑ" - -#: grub-core/loader/ia64/efi/linux.c:580 -msgid "No FPSWA found" -msgstr "FPSWA не найден" - -#: grub-core/loader/ia64/efi/linux.c:582 -#, c-format -msgid "FPSWA revision: %x\n" -msgstr "Ð ÐµÐ´Ð°ÐºÑ†Ð¸Ñ FPSWA: %x\n" - -#: grub-core/loader/ia64/efi/linux.c:591 -msgid "FILE [ARGS...]" -msgstr "ФÐЙЛ [ÐРГУМЕÐТЫ…]" - -#: grub-core/loader/ia64/efi/linux.c:597 -msgid "Display FPSWA version." -msgstr "Показать верÑию FPSWA." - -#: grub-core/loader/multiboot.c:248 -msgid "WARNING: no console will be available to OS" -msgstr "ПРЕДУПРЕЖДЕÐИЕ: конÑоль в ОС будет недоÑтупна" - -#: grub-core/loader/multiboot.c:450 -msgid "Load a multiboot 2 kernel." -msgstr "Загрузить Ñдро multiboot 2." - -#: grub-core/loader/multiboot.c:453 -msgid "Load a multiboot 2 module." -msgstr "Загрузить модуль multiboot 2." - -#: grub-core/loader/multiboot.c:456 -msgid "Load a multiboot kernel." -msgstr "Загрузить Ñдро multiboot." - -#: grub-core/loader/multiboot.c:459 -msgid "Load a multiboot module." -msgstr "Загрузить модуль multiboot." - -#: grub-core/loader/riscv/linux.c:30 grub-core/loader/riscv/linux.c:40 -msgid "Linux not supported yet" -msgstr "Пока не поддерживаетÑÑ Ð² Linux" - -#: grub-core/loader/xnu.c:1416 grub-core/term/gfxterm_background.c:45 -msgid "Background image mode." -msgstr "Режим фонового изображениÑ." - -#. TRANSLATORS: This refers to background image mode (stretched or -#. in left-top corner). Note that GRUB will accept only original -#. keywords stretch and normal, not the translated ones. -#. So please put both in translation -#. e.g. stretch(=%STRETCH%)|normal(=%NORMAL%). -#. The percents mark the translated version. Since many people -#. may not know the word stretch or normal I recommend -#. putting the translation either here or in "Background image mode." -#. string. -#: grub-core/loader/xnu.c:1416 grub-core/term/gfxterm_background.c:55 -msgid "stretch|normal" -msgstr "stretch|normal" - -#: grub-core/loader/xnu.c:1482 -msgid "Load XNU image." -msgstr "Загрузить образ XNU." - -#: grub-core/loader/xnu.c:1484 -msgid "Load 64-bit XNU image." -msgstr "Загрузить 64-битный образ XNU." - -#: grub-core/loader/xnu.c:1486 -msgid "Load XNU extension package." -msgstr "Загрузить пакет раÑÑˆÐ¸Ñ€ÐµÐ½Ð¸Ñ XNU." - -#: grub-core/loader/xnu.c:1488 -msgid "Load XNU extension." -msgstr "Загрузить раÑширение XNU." - -#. TRANSLATORS: OSBundleRequired is a -#. variable name in xnu extensions -#. manifests. It behaves mostly like -#. GNU/Linux runlevels. -#. -#: grub-core/loader/xnu.c:1495 -msgid "DIRECTORY [OSBundleRequired]" -msgstr "КÐТÐЛОГ [OSBundleRequired]" - -#. TRANSLATORS: There are many extensions -#. in extension directory. -#: grub-core/loader/xnu.c:1498 -msgid "Load XNU extension directory." -msgstr "Загрузить каталог раÑширений XNU." - -#. TRANSLATORS: ramdisk here isn't identifier. It can be translated. -#: grub-core/loader/xnu.c:1501 -msgid "Load XNU ramdisk. It will be available in OS as md0." -msgstr "Загрузить виртуальный диÑк XNU. Он будет доÑтупен в ОС как md0." - -#: grub-core/loader/xnu.c:1505 -msgid "Load a splash image for XNU." -msgstr "Загрузить образ заÑтавки Ð´Ð»Ñ XNU." - -#: grub-core/loader/xnu.c:1510 -msgid "Load an image of hibernated XNU." -msgstr "Загрузить образ XNU, находÑщегоÑÑ Ð² ÑпÑщем режиме." - -#: grub-core/mmap/mmap.c:538 -msgid "ADDR1,MASK1[,ADDR2,MASK2[,...]]" -msgstr "ÐДРЕС1,МÐСКÐ1[,ÐДРЕС2,МÐСКÐ2[,…]]" - -#: grub-core/mmap/mmap.c:539 -msgid "Declare memory regions as faulty (badram)." -msgstr "ОбъÑвить облаÑти памÑти как Ñбойную (badram)." - -#: grub-core/mmap/mmap.c:541 -msgid "FROM[K|M|G] TO[K|M|G]" -msgstr "С[K|M|G] ПО[K|M|G]" - -#: grub-core/mmap/mmap.c:542 -msgid "Remove any memory regions in specified range." -msgstr "Удалить вÑе облаÑти памÑти в указанном диапазоне." - -#: grub-core/net/bootp.c:653 -msgid "four arguments expected" -msgstr "ожидаетÑÑ Ñ‡ÐµÑ‚Ñ‹Ñ€Ðµ аргумента" - -#: grub-core/net/bootp.c:661 grub-core/net/net.c:1155 -#, c-format -msgid "unrecognised network interface `%s'" -msgstr "нераÑпознанный Ñетевой Ð¸Ð½Ñ‚ÐµÑ€Ñ„ÐµÐ¹Ñ Â«%s»" - -#: grub-core/net/bootp.c:664 -msgid "no DHCP info found" -msgstr "Ð¸Ð½Ñ„Ð¾Ñ€Ð¼Ð°Ñ†Ð¸Ñ Ð¾ DHCP не найдена" - -#: grub-core/net/bootp.c:674 -msgid "no DHCP options found" -msgstr "параметры DHCP не найдены" - -#: grub-core/net/bootp.c:682 -msgid "invalid DHCP option code" -msgstr "неправильный код параметра DHCP" - -#: grub-core/net/bootp.c:686 -#, c-format -msgid "no DHCP option %u found" -msgstr "параметр DHCP %u не найден" - -#: grub-core/net/bootp.c:743 -#, c-format -msgid "unrecognised DHCP option format specification `%s'" -msgstr "неопознанный формат ÑƒÐºÐ°Ð·Ð°Ð½Ð¸Ñ Ð¿Ð°Ñ€Ð°Ð¼ÐµÑ‚Ñ€Ð° DHCP «%s»" - -#: grub-core/net/bootp.c:767 -msgid "no network card found" -msgstr "ÑÐµÑ‚ÐµÐ²Ð°Ñ ÐºÐ°Ñ€Ñ‚Ð° не найдена" - -#: grub-core/net/bootp.c:859 grub-core/net/net.c:389 -#, c-format -msgid "couldn't autoconfigure %s" -msgstr "не удалоÑÑŒ выполнить автоматичеÑкую наÑтройку %s" - -#: grub-core/net/bootp.c:873 grub-core/net/bootp.c:876 -msgid "[CARD]" -msgstr "[КÐРТÐ]" - -#: grub-core/net/bootp.c:874 -msgid "perform a bootp autoconfiguration" -msgstr "выполнить автоматичеÑкую наÑтройку по bootp" - -#: grub-core/net/bootp.c:877 -msgid "perform a DHCP autoconfiguration" -msgstr "выполнить автоматичеÑкую наÑтройку по DHCP" - -#: grub-core/net/bootp.c:879 -msgid "VAR INTERFACE NUMBER DESCRIPTION" -msgstr "ПЕРЕМЕÐÐÐЯ ИÐТЕРФЕЙС ÐОМЕР ОПИСÐÐИЕ" - -#: grub-core/net/bootp.c:880 -msgid "" -"retrieve DHCP option and save it into VAR. If VAR is - then print the value." -msgstr "" -"получить параметр DHCP и Ñохранить его в ПЕРЕМЕÐÐУЮ. ЕÑли значение " -"ПЕРЕМЕÐÐОЙ равно -, то показать значение." - -#: grub-core/net/dns.c:459 -msgid "no DNS servers configured" -msgstr "не наÑтроены Ñерверы DNS" - -#: grub-core/net/dns.c:522 -msgid "domain name component is too long" -msgstr "компонент доменного имени Ñлишком длинен" - -#: grub-core/net/dns.c:618 grub-core/net/dns.c:666 -msgid "no DNS record found" -msgstr "не найдена DNS-запиÑÑŒ" - -#: grub-core/net/dns.c:626 -msgid "no DNS reply received" -msgstr "не получен ответ DNS" - -#: grub-core/net/dns.c:682 -msgid "only ipv4" -msgstr "только ipv4" - -#: grub-core/net/dns.c:686 -msgid "only ipv6" -msgstr "только ipv6" - -#: grub-core/net/dns.c:690 -msgid "prefer ipv4" -msgstr "предпочитать ipv4" - -#: grub-core/net/dns.c:694 -msgid "prefer ipv6" -msgstr "предпочитать ipv6" - -#: grub-core/net/dns.c:759 -msgid "ADDRESS DNSSERVER" -msgstr "ÐДРЕС СЕРВЕР_DNS" - -#: grub-core/net/dns.c:760 -msgid "Perform a DNS lookup" -msgstr "Выполнить поиÑк в DNS" - -#: grub-core/net/dns.c:762 grub-core/net/dns.c:765 -msgid "DNSSERVER" -msgstr "СЕРВЕР_DNS" - -#: grub-core/net/dns.c:763 -msgid "Add a DNS server" -msgstr "Добавить Ñервер DNS" - -#: grub-core/net/dns.c:766 -msgid "Remove a DNS server" -msgstr "Удалить Ñервер DNS" - -#: grub-core/net/dns.c:768 -msgid "List DNS servers" -msgstr "СпиÑок Ñерверов DNS" - -#: grub-core/net/drivers/efi/efinet.c:49 grub-core/net/drivers/efi/efinet.c:65 -#: grub-core/net/drivers/efi/efinet.c:77 grub-core/net/drivers/emu/emunet.c:62 -#: grub-core/net/drivers/i386/pc/pxe.c:273 -#: grub-core/net/drivers/ieee1275/ofnet.c:75 -#: grub-core/net/drivers/uboot/ubootnet.c:62 -msgid "couldn't send network packet" -msgstr "не удалоÑÑŒ поÑлать Ñетевой пакет" - -#: grub-core/net/drivers/ieee1275/ofnet.c:326 -#: grub-core/net/drivers/ieee1275/ofnet.c:359 -msgid "interpret is not supported" -msgstr "Ð¸Ð½Ñ‚ÐµÑ€Ð¿Ñ€ÐµÑ‚Ð°Ñ†Ð¸Ñ Ð½Ðµ поддерживаетÑÑ" - -#: grub-core/net/drivers/ieee1275/ofnet.c:336 -msgid "alloc-mem failed" -msgstr "ошибка в alloc-mem" - -#: grub-core/net/drivers/ieee1275/ofnet.c:370 -msgid "free-mem failed" -msgstr "ошибка в free-mem" - -#: grub-core/net/http.c:105 -msgid "unsupported HTTP response" -msgstr "неподдерживаемый ответ HTTP" - -#. TRANSLATORS: GRUB HTTP code is pretty young. So even perfectly -#. valid answers like 403 will trigger this very generic message. -#: grub-core/net/http.c:126 -#, c-format -msgid "unsupported HTTP error %d: %s" -msgstr "Ð½ÐµÐ¿Ð¾Ð´Ð´ÐµÑ€Ð¶Ð¸Ð²Ð°ÐµÐ¼Ð°Ñ Ð¾ÑˆÐ¸Ð±ÐºÐ° HTTP %d: %s" - -#: grub-core/net/http.c:429 grub-core/net/tftp.c:420 -#, c-format -msgid "time out opening `%s'" -msgstr "иÑтекло Ð²Ñ€ÐµÐ¼Ñ Ð¾Ð¶Ð¸Ð´Ð°Ð½Ð¸Ñ Ð¿Ñ€Ð¸ открытии «%s»" - -#: grub-core/net/net.c:179 -msgid "timeout: could not resolve hardware address" -msgstr "иÑтекло Ð²Ñ€ÐµÐ¼Ñ Ð¾Ð¶Ð¸Ð´Ð°Ð½Ð¸Ñ: невозможно определить аппаратный адреÑ" - -#: grub-core/net/net.c:548 -#, c-format -msgid "unresolvable address %s" -msgstr "неопределимый Ð°Ð´Ñ€ÐµÑ %s" - -#: grub-core/net/net.c:594 -#, c-format -msgid "unrecognised network address `%s'" -msgstr "нераÑпознанный Ñетевой Ð°Ð´Ñ€ÐµÑ Â«%s»" - -#: grub-core/net/net.c:661 -msgid "destination unreachable" -msgstr "пункт Ð½Ð°Ð·Ð½Ð°Ñ‡ÐµÐ½Ð¸Ñ Ð½ÐµÐ´Ð¾Ñтупен" - -#. TRANSLATORS: route loop is a condition when e.g. -#. to contact server A you need to go through B -#. and to contact B you need to go through A. -#: grub-core/net/net.c:684 -msgid "route loop detected" -msgstr "обнаружено зацикливание маршрута" - -#: grub-core/net/net.c:700 -msgid "address not found" -msgstr "Ð°Ð´Ñ€ÐµÑ Ð½Ðµ найден" - -#: grub-core/net/net.c:704 -msgid "you can't delete this address" -msgstr "вы не можете удалить Ñтот адреÑ" - -#: grub-core/net/net.c:776 grub-core/net/net.c:792 -#, c-format -msgid "Unsupported hw address type %d\n" -msgstr "Ðеподдерживаемый тип аппаратного адреÑа %d\n" - -#: grub-core/net/net.c:813 -#, c-format -msgid "Unsupported address type %d\n" -msgstr "Ðеподдерживаемый тип адреÑа %d\n" - -#: grub-core/net/net.c:1017 grub-core/net/net.c:1131 -msgid "three arguments expected" -msgstr "ожидаетÑÑ Ñ‚Ñ€Ð¸ аргумента" - -#: grub-core/net/net.c:1023 -msgid "card not found" -msgstr "карта не найдена" - -#. TRANSLATORS: it refers to the network address. -#: grub-core/net/net.c:1167 -msgid "temporary" -msgstr "временный" - -#: grub-core/net/net.c:1190 -#, c-format -msgid "Unknown address type %d\n" -msgstr "ÐеизвеÑтный тип адреÑа %d\n" - -#: grub-core/net/net.c:1298 -msgid "no server is specified" -msgstr "Ñервер не указан" - -#: grub-core/net/net.c:1637 -#, c-format -msgid "timeout reading `%s'" -msgstr "иÑтекло Ð²Ñ€ÐµÐ¼Ñ Ð¾Ð¶Ð¸Ð´Ð°Ð½Ð¸Ñ Ð¿Ñ€Ð¸ чтении «%s»" - -#. TRANSLATORS: HWADDRESS stands for -#. "hardware address". -#: grub-core/net/net.c:1762 -msgid "SHORTNAME CARD ADDRESS [HWADDRESS]" -msgstr "КОРОТКОЕ_ИМЯ КÐРТРÐДРЕС [ÐППÐРÐТÐЫЙ_ÐДРЕС]" - -#: grub-core/net/net.c:1763 -msgid "Add a network address." -msgstr "Добавить Ñетевой адреÑ." - -#: grub-core/net/net.c:1766 -msgid "[CARD [HWADDRESS]]" -msgstr "[КÐРТР[ÐППÐРÐТÐЫЙ_ÐДРЕС]]" - -#: grub-core/net/net.c:1767 -msgid "Perform an IPV6 autoconfiguration" -msgstr "Выполнить автоматичеÑкую наÑтройку IPV6" - -#: grub-core/net/net.c:1770 grub-core/net/net.c:1777 -msgid "SHORTNAME" -msgstr "КОРОТКОЕ_ИМЯ" - -#: grub-core/net/net.c:1771 -msgid "Delete a network address." -msgstr "Удалить Ñетевой адреÑ." - -#. TRANSLATORS: "gw" is a keyword. -#: grub-core/net/net.c:1774 -msgid "SHORTNAME NET [INTERFACE| gw GATEWAY]" -msgstr "КОРОТКОЕ_ИМЯ СЕТЬ [ИÐТЕРФЕЙС| gw ШЛЮЗ]" - -#: grub-core/net/net.c:1775 -msgid "Add a network route." -msgstr "Добавить Ñетевой маршрут." - -#: grub-core/net/net.c:1778 -msgid "Delete a network route." -msgstr "Удалить Ñетевой маршрут." - -#: grub-core/net/net.c:1780 -msgid "list network routes" -msgstr "вывеÑти ÑпиÑок Ñетевых маршрутов" - -#: grub-core/net/net.c:1782 -msgid "list network cards" -msgstr "вывеÑти ÑпиÑок Ñетевых карт" - -#: grub-core/net/net.c:1784 -msgid "list network addresses" -msgstr "вывеÑти ÑпиÑок Ñетевых адреÑов" - -#: grub-core/net/tcp.c:681 -msgid "connection refused" -msgstr "в Ñоединении отказано" - -#: grub-core/net/tcp.c:684 -msgid "connection timeout" -msgstr "иÑтекло Ð²Ñ€ÐµÐ¼Ñ Ð¾Ð¶Ð¸Ð´Ð°Ð½Ð¸Ñ ÑоединениÑ" - -#: grub-core/normal/auth.c:220 -msgid "Enter username: " -msgstr "Введите Ð¸Ð¼Ñ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ: " - -#: grub-core/normal/auth.c:269 -msgid "[USERLIST]" -msgstr "[СПИСОК_ПОЛЬЗОВÐТЕЛЕЙ]" - -#: grub-core/normal/auth.c:270 -msgid "Check whether user is in USERLIST." -msgstr "Проверьте, что пользователь в СПИСКЕ_ПОЛЬЗОВÐТЕЛЕЙ." - -#: grub-core/normal/cmdline.c:174 grub-core/normal/menu_entry.c:1068 -msgid "Possible commands are:" -msgstr "Возможные команды:" - -#: grub-core/normal/cmdline.c:177 grub-core/normal/menu_entry.c:1072 -msgid "Possible devices are:" -msgstr "Возможные уÑтройÑтва:" - -#: grub-core/normal/cmdline.c:180 grub-core/normal/menu_entry.c:1076 -msgid "Possible files are:" -msgstr "Возможные файлы:" - -#: grub-core/normal/cmdline.c:183 grub-core/normal/menu_entry.c:1080 -msgid "Possible partitions are:" -msgstr "Возможные разделы:" - -#: grub-core/normal/cmdline.c:186 grub-core/normal/menu_entry.c:1084 -msgid "Possible arguments are:" -msgstr "Возможные параметры:" - -#. TRANSLATORS: this message is used if none of above matches. -#. This shouldn't happen but please use the general term for -#. "thing" or "object". -#: grub-core/normal/cmdline.c:192 grub-core/normal/menu_entry.c:1088 -msgid "Possible things are:" -msgstr "Возможные Ñлементы:" - -#: grub-core/normal/color.c:81 -#, c-format -msgid "Warning: syntax error (missing slash) in `%s'\n" -msgstr "" -"Предупреждение: ÑинтакÑичеÑÐºÐ°Ñ Ð¾ÑˆÐ¸Ð±ÐºÐ° (отÑутÑтвует коÑÐ°Ñ Ñ‡ÐµÑ€Ñ‚Ð°) в «%s»\n" - -#: grub-core/normal/color.c:90 -#, c-format -msgid "Warning: invalid foreground color `%s'\n" -msgstr "Предупреждение: неправильный цвет текÑта (foreground) «%s»\n" - -#: grub-core/normal/color.c:96 -#, c-format -msgid "Warning: invalid background color `%s'\n" -msgstr "Предупреждение: неправильный цвет фона (background) «%s»\n" - -#: grub-core/normal/context.c:206 -msgid "ENVVAR [ENVVAR] ..." -msgstr "ПЕРЕМЕÐÐÐЯ_ОКРУЖЕÐИЯ [ПЕРЕМЕÐÐÐЯ_ОКРУЖЕÐИЯ] …" - -#: grub-core/normal/context.c:207 -msgid "Export variables." -msgstr "ЭкÑпортировать переменные." - -#: grub-core/normal/datetime.c:25 -msgid "Sunday" -msgstr "ВоÑкреÑенье" - -#: grub-core/normal/datetime.c:26 -msgid "Monday" -msgstr "Понедельник" - -#: grub-core/normal/datetime.c:27 -msgid "Tuesday" -msgstr "Вторник" - -#: grub-core/normal/datetime.c:28 -msgid "Wednesday" -msgstr "Среда" - -#: grub-core/normal/datetime.c:29 -msgid "Thursday" -msgstr "Четверг" - -#: grub-core/normal/datetime.c:30 -msgid "Friday" -msgstr "ПÑтница" - -#: grub-core/normal/datetime.c:31 -msgid "Saturday" -msgstr "Суббота" - -#: grub-core/normal/dyncmd.c:187 -msgid "module isn't loaded" -msgstr "модуль не загружен" - -#: grub-core/normal/main.c:211 -#, c-format -msgid "GNU GRUB version %s" -msgstr "GNU GRUB, верÑÐ¸Ñ %s" - -#: grub-core/normal/main.c:360 -msgid "ESC at any time exits." -msgstr "Ð”Ð»Ñ Ð²Ñ‹Ñ…Ð¾Ð´Ð° нажмите ESC в любой момент." - -#: grub-core/normal/main.c:363 -#, c-format -msgid "" -"Minimal BASH-like line editing is supported. For the first word, TAB lists " -"possible command completions. Anywhere else TAB lists possible device or " -"file completions. %s" -msgstr "" -"ПоддерживаетÑÑ Ð½ÐµÑколько BASH-подобных команд Ñ€ÐµÐ´Ð°ÐºÑ‚Ð¸Ñ€Ð¾Ð²Ð°Ð½Ð¸Ñ Ñтроки. ЕÑть " -"вывод ÑпиÑка команд по TAB Ð´Ð»Ñ Ð´Ð¾Ð¿Ð¾Ð»Ð½ÐµÐ½Ð¸Ñ. Также еÑть везде, где возможно, " -"вывод ÑпиÑка по TAB Ð´Ð»Ñ ÑƒÑтройÑтв или файлов. %s" - -#. TRANSLATORS: it's command line prompt. -#: grub-core/normal/main.c:395 -msgid ">" -msgstr ">" - -#. TRANSLATORS: it's command line prompt. -#: grub-core/normal/main.c:398 -msgid "grub>" -msgstr "grub>" - -#: grub-core/normal/main.c:518 -msgid "Clear the screen." -msgstr "ОчиÑтить Ñкран." - -#: grub-core/normal/main.c:527 -msgid "Enter normal mode." -msgstr "Войти в нормальный режим." - -#: grub-core/normal/main.c:529 -msgid "Exit from normal mode." -msgstr "Выйти из нормального режима." - -#: grub-core/normal/menu.c:66 grub-core/normal/menu_entry.c:1449 -msgid "Press any key to continue..." -msgstr "Ðажмите любую клавишу Ð´Ð»Ñ Ð¿Ñ€Ð¾Ð´Ð¾Ð»Ð¶ÐµÐ½Ð¸Ñ…" - -#: grub-core/normal/menu.c:815 -#, c-format -msgid "Booting `%s'" -msgstr "ЗагружаетÑÑ Â«%s»" - -#: grub-core/normal/menu.c:827 -#, c-format -msgid "Falling back to `%s'" -msgstr "Откат к резервному «%s»" - -#: grub-core/normal/menu.c:843 -msgid "Failed to boot both default and fallback entries.\n" -msgstr "Ðе удалоÑÑŒ загрузитьÑÑ ÑоглаÑно пунктам по умолчанию и резервному.\n" - -#: grub-core/normal/menu_entry.c:1171 -msgid "Booting a command list" -msgstr "ЗагружаетÑÑ ÑпиÑок команд" - -#: grub-core/normal/menu_text.c:160 -msgid "" -"Minimum Emacs-like screen editing is supported. TAB lists completions. Press " -"Ctrl-x or F10 to boot, Ctrl-c or F2 for a command-line or ESC to discard " -"edits and return to the GRUB menu." -msgstr "" -"ПоддерживаетÑÑ Ð½ÐµÑколько Emacs-подобных команд Ñ€ÐµÐ´Ð°ÐºÑ‚Ð¸Ñ€Ð¾Ð²Ð°Ð½Ð¸Ñ Ð½Ð° Ñкране. " -"ЕÑть ÑпиÑки дополнений по TAB. Ðажмите Ctrl-x или F10 Ð´Ð»Ñ Ð·Ð°Ð³Ñ€ÑƒÐ·ÐºÐ¸, Ctrl-c " -"или F2 Ð´Ð»Ñ Ð¿Ð¾Ð»ÑƒÑ‡ÐµÐ½Ð¸Ñ ÐºÐ¾Ð¼Ð°Ð½Ð´Ð½Ð¾Ð¹ Ñтроки или ESC Ð´Ð»Ñ Ð¾Ñ‚Ð¼ÐµÐ½Ñ‹ изменений и " -"возврата в меню GRUB." - -#: grub-core/normal/menu_text.c:170 -#, c-format -msgid "Use the %C and %C keys to select which entry is highlighted." -msgstr "ИÑпользуйте клавиши %C и %C Ð´Ð»Ñ Ð¿ÐµÑ€ÐµÐ¼ÐµÑ‰ÐµÐ½Ð¸Ñ Ð¿Ð¾ пунктам." - -#. TRANSLATORS: that's the list of binary unit prefixes. -#: grub-core/normal/misc.c:38 -msgid "B" -msgstr "Б" - -#: grub-core/normal/misc.c:38 -msgid "KiB" -msgstr "КиБ" - -#: grub-core/normal/misc.c:38 -msgid "MiB" -msgstr "МиБ" - -#: grub-core/normal/misc.c:38 -msgid "GiB" -msgstr "ГиБ" - -#: grub-core/normal/misc.c:38 -msgid "TiB" -msgstr "ТиБ" - -#: grub-core/normal/misc.c:38 -msgid "PiB" -msgstr "ПиБ" - -#. TRANSLATORS: that's the list of binary unit prefixes. -#: grub-core/normal/misc.c:40 -msgid "K" -msgstr "К" - -#: grub-core/normal/misc.c:40 -msgid "M" -msgstr "М" - -#: grub-core/normal/misc.c:40 -msgid "G" -msgstr "Г" - -#: grub-core/normal/misc.c:40 -msgid "T" -msgstr "Т" - -#: grub-core/normal/misc.c:40 -msgid "P" -msgstr "П" - -#. TRANSLATORS: that's the list of binary unit prefixes. -#: grub-core/normal/misc.c:42 -msgid "B/s" -msgstr "Б/Ñ" - -#: grub-core/normal/misc.c:42 -msgid "KiB/s" -msgstr "КиБ/Ñ" - -#: grub-core/normal/misc.c:42 -msgid "MiB/s" -msgstr "МиБ/Ñ" - -#: grub-core/normal/misc.c:42 -msgid "GiB/s" -msgstr "ГиБ/Ñ" - -#: grub-core/normal/misc.c:42 -msgid "TiB/s" -msgstr "ТиБ/Ñ" - -#: grub-core/normal/misc.c:42 -msgid "PiB/s" -msgstr "ПиБ/Ñ" - -#: grub-core/normal/misc.c:96 -#, c-format -msgid "Partition %s:" -msgstr "Раздел %s:" - -#: grub-core/normal/misc.c:101 -#, c-format -msgid "Device %s:" -msgstr "УÑтройÑтво %s:" - -#: grub-core/normal/misc.c:107 -msgid "Filesystem cannot be accessed" -msgstr "Ð¤Ð°Ð¹Ð»Ð¾Ð²Ð°Ñ ÑиÑтема недоÑтупна" - -#: grub-core/normal/misc.c:121 -#, c-format -msgid "Filesystem type %s" -msgstr "Тип файловой ÑиÑтемы %s" - -#: grub-core/normal/misc.c:131 -#, c-format -msgid "- Label `%s'" -msgstr "- Метка «%s»" - -#. TRANSLATORS: Arguments are year, month, day, hour, minute, -#. second, day of the week (translated). -#: grub-core/normal/misc.c:148 -#, c-format -msgid "- Last modification time %d-%02d-%02d %02d:%02d:%02d %s" -msgstr "- Ð’Ñ€ÐµÐ¼Ñ Ð¿Ð¾Ñледнего Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ %d-%02d-%02d %02d:%02d:%02d %s" - -#: grub-core/normal/misc.c:171 -msgid "No known filesystem detected" -msgstr "Обнаружена неизвеÑÑ‚Ð½Ð°Ñ Ñ„Ð°Ð¹Ð»Ð¾Ð²Ð°Ñ ÑиÑтема" - -#: grub-core/normal/misc.c:174 -#, c-format -msgid " - Partition start at %llu%sKiB" -msgstr " - Раздел начинаетÑÑ Ñ %llu%sКиБ" - -#: grub-core/normal/misc.c:178 -#, c-format -msgid " - Sector size %uB" -msgstr " - Размер Ñектора %uБ" - -#: grub-core/normal/misc.c:180 -msgid " - Total size unknown" -msgstr " - Общий размер неизвеÑтен" - -#: grub-core/normal/misc.c:182 -#, c-format -msgid " - Total size %llu%sKiB" -msgstr " - Общий размер %llu%sКиБ" - -#. TRANSLATORS: Replace dot with appropriate decimal separator for -#. your language. -#: grub-core/normal/misc.c:186 -msgid ".5" -msgstr ",5" - -#. TRANSLATORS: This has to fit on one line. It's ok to include few -#. words but don't write poems. -#: grub-core/normal/term.c:82 -msgid "--MORE--" -msgstr "--ДÐЛЬШЕ--" - -#: grub-core/osdep/aros/config.c:92 grub-core/osdep/unix/config.c:137 -#: grub-core/osdep/windows/config.c:55 -#, c-format -msgid "cannot open configuration file `%s': %s" -msgstr "не удалоÑÑŒ открыть файл наÑтройки «%s»: %s" - -#: grub-core/osdep/basic/compress.c:8 grub-core/osdep/basic/compress.c:14 -#: grub-core/osdep/basic/compress.c:20 -msgid "no compression is available for your platform" -msgstr "Ð´Ð»Ñ Ð²Ð°ÑˆÐµÐ¹ платформы Ñжатие не поддерживаетÑÑ" - -#: grub-core/osdep/basic/no_platform.c:30 -#: grub-core/osdep/windows/platform.c:418 -msgid "no IEEE1275 routines are available for your platform" -msgstr "Ð´Ð»Ñ Ð²Ð°ÑˆÐµÐ¹ платформы процедуры IEEE1275 не поддерживаютÑÑ" - -#: grub-core/osdep/basic/no_platform.c:38 -msgid "no EFI routines are available for your platform" -msgstr "Ð´Ð»Ñ Ð²Ð°ÑˆÐµÐ¹ платформы процедуры EFI не поддерживаютÑÑ" - -#: grub-core/osdep/basic/no_platform.c:45 -#: grub-core/osdep/windows/platform.c:425 -msgid "no SGI routines are available for your platform" -msgstr "Ð´Ð»Ñ Ð²Ð°ÑˆÐµÐ¹ платформы процедуры SGI не поддерживаютÑÑ" - -#. TRANSLATORS: The OS itself may very well have a random -#. number generator but GRUB doesn't know how to access it. -#: grub-core/osdep/basic/random.c:42 -msgid "no random number generator is available for your OS" -msgstr "Ð´Ð»Ñ Ð²Ð°ÑˆÐµÐ¹ ОС генератор Ñлучайных чиÑел недоÑтупен" - -#: grub-core/osdep/devmapper/getroot.c:81 -msgid "Failed to create `device-mapper' tree" -msgstr "Ðе удалоÑÑŒ Ñоздать дерево «device-mapper»" - -#: grub-core/osdep/devmapper/getroot.c:197 -#: grub-core/osdep/freebsd/getroot.c:202 -#, c-format -msgid "can't mount encrypted volume `%s': %s" -msgstr "не удалоÑÑŒ Ñмонтировать шифрованный том «%s»: %s" - -#. TRANSLATORS: geom is the name of (k)FreeBSD device framework. -#. Usually left untranslated. -#. -#: grub-core/osdep/freebsd/getroot.c:82 grub-core/osdep/freebsd/getroot.c:164 -#: grub-core/osdep/freebsd/getroot.c:258 grub-core/osdep/freebsd/getroot.c:316 -msgid "couldn't open geom" -msgstr "не удалоÑÑŒ открыть geom" - -#: grub-core/osdep/freebsd/getroot.c:182 grub-core/osdep/freebsd/getroot.c:277 -msgid "couldn't find geli consumer" -msgstr "не удалоÑÑŒ найти Ð¿Ð¾Ñ‚Ñ€ÐµÐ±Ð¸Ñ‚ÐµÐ»Ñ geli" - -#: grub-core/osdep/freebsd/getroot.c:282 -msgid "couldn't retrieve geli UUID" -msgstr "не удалоÑÑŒ получить geli UUID" - -#. TRANSLATORS: geom is the name of (k)FreeBSD device framework. -#. Usually left untranslated. "part" is the identifier of one of its -#. classes. -#: grub-core/osdep/freebsd/getroot.c:325 -msgid "couldn't find geom `part' class" -msgstr "не удалоÑÑŒ найти клаÑÑ geom «part»" - -#: grub-core/osdep/freebsd/hostdisk.c:72 grub-core/osdep/linux/hostdisk.c:93 -msgid "unaligned device size" -msgstr "невыровненный размер уÑтройÑтва" - -#: grub-core/osdep/generic/blocklist.c:56 -#, c-format -msgid "attempting to read the core image `%s' from GRUB" -msgstr "попытка прочитать базовый образ «%s» из GRUB" - -#: grub-core/osdep/generic/blocklist.c:57 -#, c-format -msgid "attempting to read the core image `%s' from GRUB again" -msgstr "Ð¿Ð¾Ð²Ñ‚Ð¾Ñ€Ð½Ð°Ñ Ð¿Ð¾Ð¿Ñ‹Ñ‚ÐºÐ° прочитать базовый образ «%s» из GRUB" - -#: grub-core/osdep/generic/blocklist.c:115 -#, c-format -msgid "cannot read `%s' correctly" -msgstr "не удалоÑÑŒ прочитать «%s» правильно" - -#: grub-core/osdep/generic/blocklist.c:126 -msgid "failed to read the sectors of the core image" -msgstr "не удалоÑÑŒ прочитать Ñекторы базового образа" - -#. TRANSLATORS: On GNU/Hurd, a "translator" is similar to a filesystem -#. mount, but handled by a userland daemon, whose invocation command line -#. is being fetched here. First %s is the file being looked at (for which -#. we are fetching the "translator" command line), second %s is the error -#. message. -#. -#: grub-core/osdep/hurd/getroot.c:79 -#, c-format -msgid "cannot get translator command line for path `%s': %s" -msgstr "не удалоÑÑŒ получить командную Ñтроку транÑлÑтора Ð´Ð»Ñ Ð¿ÑƒÑ‚Ð¸ «%s»: %s" - -#: grub-core/osdep/hurd/getroot.c:82 -#, c-format -msgid "translator command line is empty for path `%s'" -msgstr "ÐºÐ¾Ð¼Ð°Ð½Ð´Ð½Ð°Ñ Ñтрока транÑлÑтора Ð´Ð»Ñ Ð¿ÑƒÑ‚Ð¸ «%s» пуÑта" - -#. TRANSLATORS: we expect to get something like -#. /hurd/foobar --option1 --option2=baz /dev/something -#. -#: grub-core/osdep/hurd/getroot.c:98 -#, c-format -msgid "" -"translator `%s' for path `%s' has several non-option words, at least `%s' " -"and `%s'" -msgstr "" -"транÑлÑтору «%s» Ð´Ð»Ñ Ð¿ÑƒÑ‚Ð¸ «%s» передаётÑÑ Ð½ÐµÑколько Ñлов, не параметров, по " -"крайней мере «%s» и «%s»" - -#. TRANSLATORS: we expect to get something like -#. /hurd/foobar --option1 --option2=baz /dev/something -#. -#: grub-core/osdep/hurd/getroot.c:109 -#, c-format -msgid "" -"translator `%s' for path `%s' is given only options, cannot find device part" -msgstr "" -"транÑлÑтору «%s» Ð´Ð»Ñ Ð¿ÑƒÑ‚Ð¸ «%s» переданы только параметры, не удалоÑÑŒ найти " -"чаÑть, отноÑÑщуюÑÑ Ðº уÑтройÑтву" - -#: grub-core/osdep/hurd/hostdisk.c:73 -#, c-format -msgid "Storage information for `%s' does not include type" -msgstr "Ð˜Ð½Ñ„Ð¾Ñ€Ð¼Ð°Ñ†Ð¸Ñ Ð¾ хранилище «%s» не Ñодержит тип" - -#: grub-core/osdep/hurd/hostdisk.c:75 -#, c-format -msgid "`%s' is not a local disk" -msgstr "«%s» не ÑвлÑетÑÑ Ð»Ð¾ÐºÐ°Ð»ÑŒÐ½Ñ‹Ð¼ диÑком" - -#: grub-core/osdep/hurd/hostdisk.c:78 -#, c-format -msgid "" -"Storage information for `%s' indicates neither a plain partition nor a plain " -"disk" -msgstr "" -"Ð’ информации о хранилище Ð´Ð»Ñ Â«%s» должен быть указан обычный раздел или " -"обычный диÑк" - -#: grub-core/osdep/linux/blocklist.c:81 grub-core/osdep/linux/blocklist.c:96 -#: grub-core/osdep/linux/blocklist.c:122 -#, c-format -msgid "can't retrieve blocklists: %s" -msgstr "не удалоÑÑŒ получить ÑпиÑок блоков: %s" - -#: grub-core/osdep/linux/blocklist.c:84 -msgid "blocksize is not divisible by 512" -msgstr "размер блока не делитÑÑ Ð½Ð° 512" - -#: grub-core/osdep/linux/blocklist.c:86 -msgid "invalid zero blocksize" -msgstr "неверный нулевой размер блока" - -#: grub-core/osdep/linux/blocklist.c:90 util/setup.c:744 -msgid "can't retrieve blocklists" -msgstr "не удалоÑÑŒ получить ÑпиÑок блоков" - -#: grub-core/osdep/linux/getroot.c:154 -#, c-format -msgid "ioctl RAID_VERSION error: %s" -msgstr "ошибка ioctl RAID_VERSION: %s" - -#: grub-core/osdep/linux/getroot.c:160 grub-core/osdep/linux/getroot.c:164 -#, c-format -msgid "unsupported RAID version: %d.%d" -msgstr "Ð½ÐµÐ¿Ð¾Ð´Ð´ÐµÑ€Ð¶Ð¸Ð²Ð°ÐµÐ¼Ð°Ñ Ð²ÐµÑ€ÑÐ¸Ñ RAID: %d.%d" - -#: grub-core/osdep/linux/getroot.c:169 -#, c-format -msgid "ioctl GET_ARRAY_INFO error: %s" -msgstr "ошибка ioctl GET_ARRAY_INFO: %s" - -#: grub-core/osdep/linux/getroot.c:178 -#, c-format -msgid "ioctl GET_DISK_INFO error: %s" -msgstr "ошибка ioctl GET_DISK_INFO: %s" - -#: grub-core/osdep/linux/getroot.c:608 grub-core/osdep/linux/getroot.c:678 -#: grub-core/osdep/linux/hostdisk.c:126 grub-core/osdep/unix/getroot.c:253 -#: grub-core/osdep/unix/getroot.c:642 grub-core/osdep/unix/platform.c:92 -#: grub-core/osdep/unix/platform.c:100 -#, c-format -msgid "Unable to open stream from %s: %s" -msgstr "Ðе удалоÑÑŒ открыть поток из %s: %s" - -#: grub-core/osdep/linux/getroot.c:1033 -#, c-format -msgid "unknown kind of RAID device `%s'" -msgstr "неизвеÑтный тип RAID-уÑтройÑтва «%s»" - -#: grub-core/osdep/linux/ofpath.c:181 -#, c-format -msgid "`obppath' not found in parent dirs of `%s', no IEEE1275 name discovery" -msgstr "" -"«obppath» не найден в родительÑких каталогах «%s», обнаружение имени по " -"IEEE1275 отÑутÑтвует" - -#: grub-core/osdep/linux/ofpath.c:222 grub-core/osdep/unix/getroot.c:505 -#: grub-core/osdep/unix/getroot.c:529 grub-core/osdep/unix/relpath.c:49 -#: util/grub-install.c:984 util/grub-install.c:1331 util/grub-probe.c:323 -#, c-format -msgid "failed to get canonical path of `%s'" -msgstr "не удалоÑÑŒ получить каноничеÑкий путь «%s»" - -#: grub-core/osdep/linux/ofpath.c:740 -#, c-format -msgid "unknown device type %s" -msgstr "неизвеÑтный тип уÑтройÑтва %s" - -#: grub-core/osdep/linux/ofpath.c:758 util/ieee1275/grub-ofpathname.c:39 -#, c-format -msgid "Usage: %s DEVICE\n" -msgstr "ИÑпользование: %s УСТРОЙСТВО\n" - -#: grub-core/osdep/unix/exec.c:86 grub-core/osdep/unix/exec.c:172 -#: grub-core/osdep/unix/exec.c:217 -#, c-format -msgid "Unable to fork: %s" -msgstr "Ðе удалоÑÑŒ выполнить fork: %s" - -#: grub-core/osdep/unix/exec.c:166 grub-core/osdep/unix/exec.c:211 -#, c-format -msgid "Unable to create pipe: %s" -msgstr "Ðе удалоÑÑŒ Ñоздать канал: %s" - -#: grub-core/osdep/unix/getroot.c:370 -msgid "cannot save the original directory" -msgstr "не удалоÑÑŒ Ñохранить первоначальный каталог" - -#: grub-core/osdep/unix/getroot.c:423 grub-core/osdep/unix/getroot.c:480 -#: grub-core/osdep/unix/getroot.c:489 -msgid "cannot restore the original directory" -msgstr "не удалоÑÑŒ воÑÑтановить первоначальный каталог" - -#. TRANSLATORS: "stat" comes from the name of POSIX function. -#: grub-core/osdep/unix/getroot.c:551 grub-core/osdep/unix/hostdisk.c:61 -#: grub-core/osdep/unix/relpath.c:73 grub-core/osdep/unix/relpath.c:97 -#: util/getroot.c:160 util/getroot.c:162 util/grub-install.c:774 -#: util/grub-macbless.c:70 -#, c-format -msgid "cannot stat `%s': %s" -msgstr "невозможно выполнить stat «%s»: %s" - -#: grub-core/osdep/unix/hostdisk.c:293 -#, c-format -msgid "cannot make temporary file: %s" -msgstr "не удалоÑÑŒ Ñоздать временный файл: %s" - -#: grub-core/osdep/unix/hostdisk.c:311 -#, c-format -msgid "cannot make temporary directory: %s" -msgstr "не удалоÑÑŒ Ñоздать временный каталог: %s" - -#: grub-core/osdep/unix/platform.c:77 -#, c-format -msgid "" -"couldn't find IEEE1275 device path for %s.\n" -"You will have to set `boot-device' variable manually" -msgstr "" -"не удалоÑÑŒ найти путь дерева уÑтройÑтв IEEE1275 Ð´Ð»Ñ %s.\n" -"Вам придётÑÑ ÑƒÑтановить переменную «boot-device» вручную" - -#. TRANSLATORS: This message is shown when required executable `%s' -#. isn't found. -#: grub-core/osdep/unix/platform.c:149 grub-core/osdep/unix/platform.c:189 -#, c-format -msgid "%s: not found" -msgstr "%s: не найдено" - -#: grub-core/osdep/unix/platform.c:225 -#, c-format -msgid "" -"`nvsetenv' failed. \n" -"You will have to set `boot-device' variable manually. At the IEEE1275 " -"prompt, type:\n" -" %s\n" -msgstr "" -"ошибка в «nvsetenv». \n" -"Вам нужно уÑтановить переменную «boot-device» вручную.\n" -"Ð’ приглашении IEEE1275 наберите:\n" -" %s\n" - -#: grub-core/osdep/unix/platform.c:240 -msgid "You will have to set `SystemPartition' and `OSLoader' manually." -msgstr "Вам нужно уÑтановить «SystemPartition» и «OSLoader» вручную." - -#. TRANSLATORS: canonical pathname is the -#. complete one e.g. /etc/fstab. It has -#. to contain `/' normally, if it doesn't -#. we're in trouble and throw this error. -#: grub-core/osdep/unix/relpath.c:90 -msgid "no `/' in canonical filename" -msgstr "в каноничеÑком имени файла отÑутÑтвует «/»" - -#: grub-core/osdep/windows/hostdisk.c:151 -msgid "cygwin_conv_path() failed" -msgstr "cygwin_conv_path() завершилаÑÑŒ Ñ Ð¾ÑˆÐ¸Ð±ÐºÐ¾Ð¹" - -#: grub-core/osdep/windows/hostdisk.c:501 util/grub-install.c:570 -msgid "couldn't retrieve random data" -msgstr "не удалоÑÑŒ получить произвольные данные" - -#: grub-core/osdep/windows/platform.c:97 -msgid "Insufficient privileges to access firmware, assuming BIOS" -msgstr "ÐедоÑтаточно прав Ð´Ð»Ñ Ð´Ð¾Ñтупа к микропрограмме, Ñчитаем что BIOS" - -#: grub-core/osdep/windows/platform.c:225 -msgid "no EFI routines are available when running in BIOS mode" -msgstr "процедуры EFI недоÑтупны при работе в режиме BIOS" - -#: grub-core/osdep/windows/platform.c:240 -msgid "unexpected EFI error" -msgstr "Ð½ÐµÐ¾Ð¶Ð¸Ð´Ð°Ð½Ð½Ð°Ñ Ð¾ÑˆÐ¸Ð±ÐºÐ° EFI" - -#: grub-core/osdep/windows/platform.c:315 -msgid "Couldn't find a free BootNNNN slot" -msgstr "Ðевозможно найти Ñвободный Ñлот BootNNNN" - -#: grub-core/partmap/gpt.c:191 -msgid "" -"this GPT partition label contains no BIOS Boot Partition; embedding won't be " -"possible" -msgstr "метка раздела GPT не имеет BIOS Boot Partition; вÑтраивание невозможно" - -#: grub-core/partmap/gpt.c:196 -msgid "your BIOS Boot Partition is too small; embedding won't be possible" -msgstr "BIOS Boot Partition Ñлишком мал; вÑтраивание невозможно" - -#. TRANSLATORS: MBR gap and boot track is the same thing and is the space -#. between MBR and first partitition. If your language translates well only -#. "boot track", you can just use it everywhere. Next two messages are about -#. RAID controllers/software bugs which GRUB has to live with. Please spread -#. the message that these are bugs in other software and not merely -#. suboptimal behaviour. -#: grub-core/partmap/msdos.c:51 -#, c-format -msgid "" -"Sector %llu is already in use by raid controller `%s'; avoiding it. Please " -"ask the manufacturer not to store data in MBR gap" -msgstr "" -"Сектор %llu уже иÑпользуетÑÑ raid-контроллером «%s»; пропуÑкаем его. " -"ПопроÑите Ð¿Ñ€Ð¾Ð¸Ð·Ð²Ð¾Ð´Ð¸Ñ‚ÐµÐ»Ñ Ð½Ðµ хранить данные в промежутке MBR" - -#: grub-core/partmap/msdos.c:54 -#, c-format -msgid "" -"Sector %llu is already in use by the program `%s'; avoiding it. This " -"software may cause boot or other problems in future. Please ask its authors " -"not to store data in the boot track" -msgstr "" -"Сектор %llu уже иÑпользуетÑÑ Ð¿Ñ€Ð¾Ð³Ñ€Ð°Ð¼Ð¼Ð¾Ð¹ «%s»; пропуÑкаем его. Данное ПО в " -"будущем может Ñоздать проблемы Ñ Ð·Ð°Ð³Ñ€ÑƒÐ·ÐºÐ¾Ð¹. ПопроÑите его авторов не хранить " -"данные на загрузочной дорожке" - -#: grub-core/partmap/msdos.c:384 -msgid "" -"other software is using the embedding area, and there is not enough room for " -"core.img. Such software is often trying to store data in a way that avoids " -"detection. We recommend you investigate" -msgstr "" -"другое ПО иÑпользует вÑтраиваемую облаÑть, и в ней недоÑтаточно меÑта Ð´Ð»Ñ " -"core.img. Подобное ПО таким ÑпоÑобом чаÑто пытаетÑÑ Ñохранить данные, чтобы " -"их не обнаружили. Мы рекомендуем вам иÑÑледовать Ñто" - -#: grub-core/partmap/msdos.c:395 -msgid "" -"this msdos-style partition label has no post-MBR gap; embedding won't be " -"possible" -msgstr "" -"метка раздела в Ñтиле msdos не имеет промежутка поÑле MBR; вÑтраивание " -"невозможно" - -#: grub-core/partmap/msdos.c:404 -msgid "your embedding area is unusually small. core.img won't fit in it." -msgstr "" -"вÑÑ‚Ñ€Ð°Ð¸Ð²Ð°ÐµÐ¼Ð°Ñ Ð¾Ð±Ð»Ð°Ñть необычно маленького размера. core.img не влезет в неё." - -#: grub-core/parttool/msdospart.c:39 -msgid "Make partition active" -msgstr "Сделать раздел активным" - -#: grub-core/parttool/msdospart.c:51 -msgid "not a primary partition" -msgstr "не оÑновной раздел" - -#: grub-core/parttool/msdospart.c:69 -#, c-format -msgid "Partition %d is active now. \n" -msgstr "Раздел %d Ñделан активным. \n" - -#: grub-core/parttool/msdospart.c:74 -#, c-format -msgid "Cleared active flag on %d. \n" -msgstr "Флаг активноÑти на разделе %d Ñброшен. \n" - -#: grub-core/parttool/msdospart.c:87 -msgid "Change partition type" -msgstr "Изменить тип раздела" - -#: grub-core/parttool/msdospart.c:88 -msgid "Set `hidden' flag in partition type" -msgstr "УÑтановить флаг «hidden» в типе раздела" - -#: grub-core/parttool/msdospart.c:130 -#, c-format -msgid "the partition type 0x%x isn't valid" -msgstr "некорректный тип раздела 0x%x" - -#. TRANSLATORS: In this case we're actually writing to the disk and actively -#. modifying partition type rather than just defining it. -#: grub-core/parttool/msdospart.c:137 -#, c-format -msgid "Setting partition type to 0x%x\n" -msgstr "Ðазначение типа раздела равным 0x%x\n" - -#. TRANSLATORS: 0 is a quantifier. "break" (similar to bash) -#. can be used e.g. to break 3 loops at once. -#. But asking it to break 0 loops makes no sense. -#: grub-core/script/execute.c:143 -msgid "can't break 0 loops" -msgstr "невозможно разорвать 0 циклов" - -#. TRANSLATORS: It's about not being -#. inside a function. "return" can be used only -#. in a function and this error occurs if it's used -#. anywhere else. -#: grub-core/script/execute.c:227 -msgid "not in function body" -msgstr "не в функции" - -#: grub-core/script/execute.c:371 -#, c-format -msgid "invalid variable name `%s'" -msgstr "некорректное Ð¸Ð¼Ñ Ð¿ÐµÑ€ÐµÐ¼ÐµÐ½Ð½Ð¾Ð¹ «%s»" - -#: grub-core/script/execute.c:953 -msgid "cannot allocate command buffer" -msgstr "невозможно выделить буфер под команды" - -#: grub-core/script/lexer.c:144 util/grub-fstest.c:330 -msgid "unexpected end of file" -msgstr "неожиданный конец файла" - -#: grub-core/script/main.c:55 grub-core/script/main.c:57 -#: grub-core/script/main.c:59 grub-core/script/main.c:67 -msgid "[NUM]" -msgstr "[ÐОМЕР]" - -#: grub-core/script/main.c:55 -msgid "Exit from loops" -msgstr "Выйти из циклов" - -#: grub-core/script/main.c:57 -msgid "Continue loops" -msgstr "Продолжить циклы" - -#. TRANSLATORS: Positional arguments are -#. arguments $0, $1, $2, ... -#: grub-core/script/main.c:62 -msgid "Shift positional parameters." -msgstr "Сдвинуть позиционные параметры." - -#: grub-core/script/main.c:64 -msgid "[VALUE]..." -msgstr "[ЗÐÐЧЕÐИЕ]…" - -#: grub-core/script/main.c:65 -msgid "Set positional parameters." -msgstr "Задать позиционные параметры." - -#. TRANSLATORS: It's a command description -#. and "Return" is a verb, not a noun. The -#. command in question is "return" and -#. has exactly the same semanics as bash -#. equivalent. -#: grub-core/script/main.c:73 -msgid "Return from a function." -msgstr "ВернутьÑÑ Ð¸Ð· функции." - -#: grub-core/term/gfxterm_background.c:176 -msgid "[-m (stretch|normal)] FILE" -msgstr "[-m (stretch|normal)] ФÐЙЛ" - -#: grub-core/term/gfxterm_background.c:177 -msgid "Load background image for active terminal." -msgstr "Загрузить фоновое изображение на активный терминал." - -#: grub-core/term/gfxterm_background.c:182 util/grub-install.c:302 -#: util/grub-install.c:303 util/grub-mkrescue.c:107 util/grub-mkrescue.c:108 -#: util/grub-render-label.c:61 util/grub-render-label.c:63 -msgid "COLOR" -msgstr "ЦВЕТ" - -#: grub-core/term/gfxterm_background.c:183 -msgid "Set background color for active terminal." -msgstr "Ðазначить цвет фона активного терминала." - -#: grub-core/term/i386/coreboot/cbmemc.c:139 -msgid "Show CBMEM console content." -msgstr "Показать Ñодержимое конÑоли CBMEM." - -#: grub-core/term/serial.c:57 -msgid "Set the serial unit." -msgstr "Задать номер поÑледовательного порта." - -#: grub-core/term/serial.c:58 -msgid "Set the serial port address." -msgstr "Задать Ð°Ð´Ñ€ÐµÑ Ð¿Ð¾Ñледовательного порта." - -#: grub-core/term/serial.c:59 -msgid "Set the serial port speed." -msgstr "Задать ÑкороÑть поÑледовательного порта." - -#: grub-core/term/serial.c:60 -msgid "Set the serial port word length." -msgstr "Задать длину Ñлова поÑледовательного порта." - -#: grub-core/term/serial.c:61 -msgid "Set the serial port parity." -msgstr "Задать чётноÑть поÑледовательного порта." - -#: grub-core/term/serial.c:62 -msgid "Set the serial port stop bits." -msgstr "Задать количеÑтво Ñтоп-битов поÑледовательного порта." - -#: grub-core/term/serial.c:63 -msgid "Set the base frequency." -msgstr "Задать базовую чаÑтоту." - -#: grub-core/term/serial.c:64 -msgid "Enable/disable RTS/CTS." -msgstr "Включить/выключить RTS/CTS." - -#: grub-core/term/serial.c:218 -#, c-format -msgid "serial port `%s' isn't found" -msgstr "поÑледовательный порт «%s» не найден" - -#: grub-core/term/serial.c:254 -msgid "unsupported serial port flow control" -msgstr "управление потоком поÑледовательного порта не поддерживаетÑÑ" - -#: grub-core/term/serial.c:429 -msgid "[OPTIONS...]" -msgstr "[ПÐРÐМЕТРЫ…]" - -#: grub-core/term/serial.c:430 -msgid "Configure serial port." -msgstr "ÐаÑтроить поÑледовательный порт." - -#: grub-core/term/terminfo.c:184 -#, c-format -msgid "unknown terminfo type `%s'" -msgstr "неизвеÑтный terminfo-тип «%s»" - -#: grub-core/term/terminfo.c:668 -msgid "ASCII" -msgstr "ASCII" - -#: grub-core/term/terminfo.c:671 -msgid "UTF-8" -msgstr "UTF-8" - -#. TRANSLATORS: visually ordered UTF-8 is a non-compliant encoding -#. based on UTF-8 with right-to-left languages written in reverse. -#. Used on some terminals. Normal UTF-8 is refered as -#. "logically-ordered UTF-8" by opposition. -#: grub-core/term/terminfo.c:677 -msgid "visually-ordered UTF-8" -msgstr "визуально упорÑÐ´Ð¾Ñ‡ÐµÐ½Ð½Ð°Ñ UTF-8" - -#: grub-core/term/terminfo.c:680 -msgid "Unknown encoding" -msgstr "ÐеизвеÑÑ‚Ð½Ð°Ñ ÐºÐ¾Ð´Ð¸Ñ€Ð¾Ð²ÐºÐ°" - -#: grub-core/term/terminfo.c:684 -msgid "Current terminfo types:" -msgstr "Текущие типы terminfo:" - -#: grub-core/term/terminfo.c:699 -msgid "Terminal is ASCII-only [default]." -msgstr "Терминал только в ASCII [по умолчанию]." - -#: grub-core/term/terminfo.c:700 -msgid "Terminal is logical-ordered UTF-8." -msgstr "Терминал в логичеÑки упорÑдоченной UTF-8." - -#: grub-core/term/terminfo.c:701 -msgid "Terminal is visually-ordered UTF-8." -msgstr "Терминал в визуально упорÑдоченной UTF-8." - -#: grub-core/term/terminfo.c:703 -msgid "Terminal has specified geometry." -msgstr "Терминал имеет указанные размеры." - -#. TRANSLATORS: "x" has to be entered in, like an identifier, so please don't -#. use better Unicode codepoints. -#: grub-core/term/terminfo.c:706 -msgid "WIDTHxHEIGHT." -msgstr "ШИРИÐÐxВЫСОТÐ." - -#: grub-core/term/terminfo.c:746 -msgid "incorrect terminal dimensions specification" -msgstr "неверное задание размеров терминала" - -#: grub-core/term/terminfo.c:776 -#, c-format -msgid "terminal %s isn't found or it's not handled by terminfo" -msgstr "терминал %s не найден или не поддерживаетÑÑ terminfo" - -#: grub-core/term/terminfo.c:785 -msgid "[[-a|-u|-v] [-g WxH] TERM [TYPE]]" -msgstr "[[-a|-u|-v] [-g ШxÐ’] TERM [ТИП]]" - -#: grub-core/term/terminfo.c:786 -msgid "Set terminfo type of TERM to TYPE.\n" -msgstr "Задать тип terminfo type Ð´Ð»Ñ TERM равным TYPE.\n" - -#. TRANSLATORS: this is the BLOCK-argument, not -#. environment block. -#: grub-core/tests/test_blockarg.c:49 -msgid "Print and execute block argument." -msgstr "Показать и выполнить блочный аргумент." - -#. TRANSLATORS: We're speaking about bitmap images like -#. JPEG or PNG. -#: grub-core/video/bitmap.c:209 -#, c-format -msgid "bitmap file `%s' is of unsupported format" -msgstr "Файл битовой карты «%s» неподдерживаемого формата" - -#: grub-core/video/i386/pc/vbe.c:1191 -#, c-format -msgid " VBE info: version: %d.%d OEM software rev: %d.%d\n" -msgstr " Ð˜Ð½Ñ„Ð¾Ñ€Ð¼Ð°Ñ†Ð¸Ñ VBE: верÑиÑ: %d.%d издание ПО OEM: %d.%d\n" - -#: grub-core/video/i386/pc/vbe.c:1198 -#, c-format -msgid " total memory: %d KiB\n" -msgstr " вÑего памÑти: %d КиБ\n" - -#: grub-core/video/video.c:596 grub-core/video/video.c:762 -msgid "no suitable video mode found" -msgstr "не найден подходÑщий видео-режим" - -#: include/grub/crypto.h:403 -msgid "access denied" -msgstr "доÑтуп запрещён" - -#: include/grub/util/install.h:30 include/grub/util/install.h:35 -msgid "MODULES" -msgstr "МОДУЛИ" - -#: include/grub/util/install.h:31 -msgid "pre-load specified modules MODULES" -msgstr "заранее загрузить указанные МОДУЛИ" - -#: include/grub/util/install.h:33 -msgid "embed a specific DTB" -msgstr "вÑтроить Ñпециальное DTB" - -#: include/grub/util/install.h:36 -msgid "install only MODULES and their dependencies [default=all]" -msgstr "уÑтановить только МОДУЛИ и их завиÑимоÑти [по умолчанию all]" - -#: include/grub/util/install.h:37 -msgid "THEMES" -msgstr "ТЕМЫ" - -#: include/grub/util/install.h:38 -#, c-format -msgid "install THEMES [default=%s]" -msgstr "уÑтановить ТЕМЫ [по умолчанию %s]" - -#: include/grub/util/install.h:39 -msgid "FONTS" -msgstr "ШРИФТЫ" - -#: include/grub/util/install.h:40 -#, c-format -msgid "install FONTS [default=%s]" -msgstr "уÑтановить ШРИФТЫ [по умолчанию %s]" - -#: include/grub/util/install.h:41 -msgid "LOCALES" -msgstr "ЛОКÐЛИ" - -#: include/grub/util/install.h:42 -msgid "install only LOCALES [default=all]" -msgstr "уÑтановить только ЛОКÐЛИ [по умолчанию all]" - -#: include/grub/util/install.h:45 -msgid "compress GRUB files [optional]" -msgstr "Ñжимать файлы GRUB [необÑзательно]" - -#: include/grub/util/install.h:48 util/grub-mkimage.c:83 -msgid "choose the compression to use for core image" -msgstr "выбрать алгоритм ÑжатиÑ, применÑемый Ð´Ð»Ñ Ð±Ð°Ð·Ð¾Ð²Ð¾Ð³Ð¾ образа" - -#. TRANSLATORS: platform here isn't identifier. It can be translated. -#: include/grub/util/install.h:51 include/grub/util/install.h:54 -#: util/grub-mkimage.c:66 -#, c-format -msgid "use images and modules under DIR [default=%s/]" -msgstr "иÑпользовать образы и модули из КÐТÐЛОГР[по умолчанию %s/<платформа>]" - -#: include/grub/util/install.h:57 -#, c-format -msgid "use translations under DIR [default=%s]" -msgstr "иÑпользовать переводы из КÐТÐЛОГР[по умолчанию %s]" - -#: include/grub/util/install.h:60 -#, c-format -msgid "use themes under DIR [default=%s]" -msgstr "иÑпользовать темы из КÐТÐЛОГР[по умолчанию %s]" - -#: include/grub/util/install.h:65 util/grub-mkimage.c:78 -msgid "embed FILE as public key for signature checking" -msgstr "вÑтраивать ФÐЙЛ как открытый ключ Ð´Ð»Ñ Ð¿Ñ€Ð¾Ð²ÐµÑ€ÐºÐ¸ подпиÑи" - -#: util/editenv.c:59 util/grub-editenv.c:201 util/grub-install-common.c:535 -#: util/grub-mkimage.c:315 util/setup.c:791 -#, c-format -msgid "cannot sync `%s': %s" -msgstr "невозможно выполнить sync «%s»: %s" - -#: util/editenv.c:64 -#, c-format -msgid "cannot rename the file %s to %s" -msgstr "не удалоÑÑŒ переименовать файл %s в %s" - -#: util/getroot.c:402 -#, c-format -msgid "disk does not exist, so falling back to partition device %s" -msgstr "диÑк не ÑущеÑтвует, переходим обратно к разделу диÑка %s" - -#: util/grub-editenv.c:45 util/grub-fstest.c:506 -msgid "Commands:" -msgstr "Команды:" - -#: util/grub-editenv.c:47 -msgid "Create a blank environment block file." -msgstr "Создать пуÑтой файл блока окружениÑ." - -#: util/grub-editenv.c:49 -msgid "List the current variables." -msgstr "Показать текущие переменные." - -#. TRANSLATORS: "set" is a keyword. It's a summary of "set" subcommand. -#: util/grub-editenv.c:51 -msgid "set [NAME=VALUE ...]" -msgstr "set [ИМЯ=ЗÐÐЧЕÐИЕ …]" - -#: util/grub-editenv.c:52 -msgid "Set variables." -msgstr "Задать переменные." - -#. TRANSLATORS: "unset" is a keyword. It's a summary of "unset" subcommand. -#: util/grub-editenv.c:54 -msgid "unset [NAME ...]" -msgstr "unset [ИМЯ …]" - -#: util/grub-editenv.c:55 -msgid "Delete variables." -msgstr "Удалить переменные." - -#: util/grub-editenv.c:57 -msgid "Options:" -msgstr "Параметры:" - -#: util/grub-editenv.c:84 -msgid "You need to specify at least one command.\n" -msgstr "Вам нужно указать Ñ…Ð¾Ñ‚Ñ Ð±Ñ‹ одну команду.\n" - -#: util/grub-editenv.c:113 -msgid "FILENAME COMMAND" -msgstr "ИМЯ_ФÐЙЛРКОМÐÐДÐ" - -#: util/grub-editenv.c:114 -msgid "Tool to edit environment block." -msgstr "ИнÑтрумент Ñ€ÐµÐ´Ð°ÐºÑ‚Ð¸Ñ€Ð¾Ð²Ð°Ð½Ð¸Ñ Ð±Ð»Ð¾ÐºÐ° окружениÑ." - -#: util/grub-editenv.c:116 -#, c-format -msgid "" -"If FILENAME is `-', the default value %s is used.\n" -"\n" -"There is no `delete' command; if you want to delete the whole environment\n" -"block, use `rm %s'." -msgstr "" -"ЕÑли ИМЯ_ФÐЙЛРравно «-», то иÑпользуетÑÑ Ð·Ð½Ð°Ñ‡ÐµÐ½Ð¸Ðµ по умолчанию %s.\n" -"\n" -"ЗдеÑÑŒ команда «delete» не работает; еÑли вы хотите удалить блок окружениÑ\n" -"целиком, иÑпользуйте «rm %s»." - -#: util/grub-editenv.c:162 -msgid "invalid environment block" -msgstr "неправильный блок окружениÑ" - -#: util/grub-editenv.c:217 -#, c-format -msgid "invalid parameter %s" -msgstr "некорректный параметр %s" - -#: util/grub-editenv.c:222 -msgid "environment block too small" -msgstr "блок Ð¾ÐºÑ€ÑƒÐ¶ÐµÐ½Ð¸Ñ Ñлишком мал" - -#: util/grub-fstest.c:107 -#, c-format -msgid "disk read fails at offset %lld, length %lld" -msgstr "ошибка при чтении диÑка по Ñмещению %lld, длина %lld" - -#: util/grub-fstest.c:138 -#, c-format -msgid "invalid skip value %lld" -msgstr "неверное значение пропуÑка %lld" - -#: util/grub-fstest.c:160 util/grub-fstest.c:246 -#, c-format -msgid "read error at offset %llu: %s" -msgstr "ошибка при чтении по Ñмещению %llu: %s" - -#: util/grub-fstest.c:210 -#, c-format -msgid "cannot open OS file `%s': %s" -msgstr "не удалоÑÑŒ открыть файл ОС «%s»: %s" - -#: util/grub-fstest.c:225 util/misc.c:126 -#, c-format -msgid "cannot write to the stdout: %s" -msgstr "не удалоÑÑŒ запиÑать в stdout: %s" - -#: util/grub-fstest.c:259 -#, c-format -msgid "compare fail at offset %llu" -msgstr "Ñравнение по Ñмещению %llu завершилоÑÑŒ неудачно" - -#: util/grub-fstest.c:280 util/grub-fstest.c:314 -#, c-format -msgid "OS file %s open error: %s" -msgstr "Ошибка Ð¾Ñ‚ÐºÑ€Ñ‹Ñ‚Ð¸Ñ Ñ„Ð°Ð¹Ð»Ð° ОС %s: %s" - -#: util/grub-fstest.c:402 util/grub-mount.c:392 -#, c-format -msgid "`loopback' command fails: %s" -msgstr "команда «loopback» завершилаÑÑŒ Ñ Ð¾ÑˆÐ¸Ð±ÐºÐ¾Ð¹: %s" - -#: util/grub-fstest.c:413 util/grub-mount.c:402 -#, c-format -msgid "`cryptomount' command fails: %s" -msgstr "команда «cryptomount» завершилаÑÑŒ Ñ Ð¾ÑˆÐ¸Ð±ÐºÐ¾Ð¹: %s" - -#: util/grub-fstest.c:474 util/grub-fstest.c:478 -msgid "couldn't retrieve UUID" -msgstr "не удалоÑÑŒ получить UUID" - -#: util/grub-fstest.c:507 -msgid "ls PATH" -msgstr "ls ПУТЬ" - -#: util/grub-fstest.c:507 -msgid "List files in PATH." -msgstr "ВывеÑти ÑпиÑок файлов в ПУТИ." - -#: util/grub-fstest.c:508 -msgid "cp FILE LOCAL" -msgstr "cp ФÐЙЛ ЛОКÐЛЬÐЫЙ_ФÐЙЛ" - -#: util/grub-fstest.c:508 -msgid "Copy FILE to local file LOCAL." -msgstr "Скопировать ФÐЙЛ в ЛОКÐЛЬÐЫЙ_ФÐЙЛ." - -#: util/grub-fstest.c:509 -msgid "cat FILE" -msgstr "cat ФÐЙЛ" - -#: util/grub-fstest.c:509 -msgid "Copy FILE to standard output." -msgstr "Скопировать ФÐЙЛ в Ñтандартный вывод." - -#: util/grub-fstest.c:510 -msgid "cmp FILE LOCAL" -msgstr "cmp ФÐЙЛ ЛОКÐЛЬÐЫЙ_ФÐЙЛ" - -#: util/grub-fstest.c:510 -msgid "Compare FILE with local file LOCAL." -msgstr "Сравнить ФÐЙЛ Ñ Ð›ÐžÐšÐЛЬÐЫМ_ФÐЙЛОМ." - -#: util/grub-fstest.c:511 -msgid "hex FILE" -msgstr "hex ФÐЙЛ" - -#: util/grub-fstest.c:511 -msgid "Show contents of FILE in hex." -msgstr "Показать Ñодержимое ФÐЙЛРв шеÑтнадцатеричном коде." - -#: util/grub-fstest.c:512 -msgid "crc FILE" -msgstr "crc ФÐЙЛ" - -#: util/grub-fstest.c:512 -msgid "Get crc32 checksum of FILE." -msgstr "ВычиÑлить контрольную Ñумму crc32 Ð´Ð»Ñ Ð¤ÐЙЛÐ." - -#: util/grub-fstest.c:513 -msgid "blocklist FILE" -msgstr "blocklist ФÐЙЛ" - -#: util/grub-fstest.c:513 -msgid "Display blocklist of FILE." -msgstr "Показать ÑпиÑок блоков ФÐЙЛÐ." - -#: util/grub-fstest.c:514 -msgid "xnu_uuid DEVICE" -msgstr "xnu_uuid УСТРОЙСТВО" - -#: util/grub-fstest.c:514 -msgid "Compute XNU UUID of the device." -msgstr "ВычиÑлить XNU UUID Ð´Ð»Ñ ÑƒÑтройÑтва." - -#. TRANSLATORS: bitmaps are images like e.g. in JPEG. -#: util/grub-fstest.c:517 util/grub-fstest.c:518 util/grub-fstest.c:519 -#: util/grub-mkfont.c:938 util/grub-mkfont.c:951 util/grub-mkfont.c:952 -#: util/grub-mkpasswd-pbkdf2.c:46 util/grub-mkpasswd-pbkdf2.c:47 -#: util/grub-mkpasswd-pbkdf2.c:48 -msgid "NUM" -msgstr "ÐОМЕР" - -#: util/grub-fstest.c:517 -msgid "Skip N bytes from output file." -msgstr "ПропуÑтить N байт из выходного файла." - -#: util/grub-fstest.c:518 -msgid "Handle N bytes in output file." -msgstr "Обработать N байт выходного файла." - -#: util/grub-fstest.c:519 -msgid "Specify the number of input files." -msgstr "Задать количеÑтво входных файлов." - -#: util/grub-fstest.c:520 util/grub-mount.c:453 -msgid "Set debug environment variable." -msgstr "Задать переменную Ð¾ÐºÑ€ÑƒÐ¶ÐµÐ½Ð¸Ñ Ð¾Ñ‚Ð»Ð°Ð´ÐºÐ¸." - -#: util/grub-fstest.c:521 util/grub-mount.c:454 -msgid "Mount crypto devices." -msgstr "Смонтировать крипто-уÑтройÑтва." - -#. TRANSLATORS: "prompt" is a keyword. -#: util/grub-fstest.c:524 util/grub-mount.c:457 -msgid "FILE|prompt" -msgstr "ФÐЙЛ|prompt" - -#: util/grub-fstest.c:524 util/grub-mount.c:457 -msgid "Load zfs crypto key." -msgstr "Загрузить ключ ÑˆÐ¸Ñ„Ñ€Ð¾Ð²Ð°Ð½Ð¸Ñ zfs." - -#: util/grub-fstest.c:526 -msgid "Uncompress data." -msgstr "РаÑжать данные." - -#: util/grub-fstest.c:605 -msgid "Invalid disk count.\n" -msgstr "Ðеверное количеÑтво диÑков.\n" - -#. TRANSLATORS: disk count is optional but if it's there it must -#. be before disk list. So please don't imply disk count as mandatory. -#. -#: util/grub-fstest.c:613 -msgid "Disk count must precede disks list.\n" -msgstr "КоличеÑтво диÑков должно быть перед ÑпиÑком диÑков.\n" - -#: util/grub-fstest.c:633 -msgid "No command is specified.\n" -msgstr "Ðе указана команда.\n" - -#: util/grub-fstest.c:638 -msgid "Not enough parameters to command.\n" -msgstr "ÐедоÑтаточно параметров Ð´Ð»Ñ ÐºÐ¾Ð¼Ð°Ð½Ð´Ñ‹.\n" - -#: util/grub-fstest.c:711 -#, c-format -msgid "Invalid command %s.\n" -msgstr "ÐÐµÐ²ÐµÑ€Ð½Ð°Ñ ÐºÐ¾Ð¼Ð°Ð½Ð´Ð° %s.\n" - -#: util/grub-fstest.c:724 -msgid "IMAGE_PATH COMMANDS" -msgstr "ПУТЬ_К_ОБРÐЗУ КОМÐÐДЫ" - -#: util/grub-fstest.c:725 util/grub-mount.c:553 -msgid "Debug tool for filesystem driver." -msgstr "ИнÑтрумент отладки драйвера файловой ÑиÑтемы." - -#: util/grub-glue-efi.c:53 -msgid "set input filename for 32-bit part." -msgstr "задать Ð¸Ð¼Ñ Ð²Ñ…Ð¾Ð´Ð½Ð¾Ð³Ð¾ файла Ð´Ð»Ñ 32-битной чаÑти." - -#: util/grub-glue-efi.c:55 -msgid "set input filename for 64-bit part." -msgstr "задать Ð¸Ð¼Ñ Ð²Ñ…Ð¾Ð´Ð½Ð¾Ð³Ð¾ файла Ð´Ð»Ñ 64-битной чаÑти." - -#: util/grub-glue-efi.c:57 util/grub-mklayout.c:55 util/grub-render-label.c:71 -msgid "set output filename. Default is STDOUT" -msgstr "задать Ð¸Ð¼Ñ Ð²Ñ‹Ñ…Ð¾Ð´Ð½Ð¾Ð³Ð¾ файла. По умолчанию STDOUT" - -#: util/grub-glue-efi.c:94 util/grub-mklayout.c:476 -#: util/grub-mkpasswd-pbkdf2.c:86 util/grub-render-label.c:131 -msgid "[OPTIONS]" -msgstr "[ПÐРÐМЕТРЫ]" - -#: util/grub-glue-efi.c:95 -msgid "Glue 32-bit and 64-bit binary into Apple universal one." -msgstr "" -"Объединить 32-битный и 64-битный двоичный файл в один универÑальный в " -"формате Apple." - -#: util/grub-glue-efi.c:116 -msgid "Missing input file\n" -msgstr "ОтÑутÑтвует входной файл\n" - -#: util/grub-install-common.c:127 util/grub-install-common.c:151 -#, c-format -msgid "cannot copy `%s' to `%s': %s" -msgstr "не удалоÑÑŒ Ñкопировать «%s» в «%s»: %s" - -#: util/grub-install-common.c:147 -#, c-format -msgid "can't compress `%s' to `%s'" -msgstr "не удалоÑÑŒ Ñжать «%s» в «%s»" - -#: util/grub-install-common.c:196 util/grub-install-common.c:552 -#: util/grub-install-common.c:579 util/grub-install-common.c:621 -#, c-format -msgid "cannot open directory `%s': %s" -msgstr "не удалоÑÑŒ открыть каталог «%s»: %s" - -#: util/grub-install-common.c:212 -#, c-format -msgid "cannot delete `%s': %s" -msgstr "не удалоÑÑŒ удалить «%s»: %s" - -#: util/grub-install-common.c:324 util/grub-mkimage.c:209 -msgid "grub-mkimage is compiled without XZ support" -msgstr "grub-mkimage Ñобран без поддержки XZ" - -#: util/grub-install-common.c:332 util/grub-mkimage.c:217 -#, c-format -msgid "Unknown compression format %s" -msgstr "ÐеизвеÑтный формат ÑÐ¶Ð°Ñ‚Ð¸Ñ %s" - -#: util/grub-install-common.c:400 -#, c-format -msgid "Unrecognized compression `%s'" -msgstr "Тип ÑÐ¶Ð°Ñ‚Ð¸Ñ Â«%s» не раÑпознано" - -#: util/grub-install-common.c:509 -#, c-format -msgid "unknown target format %s" -msgstr "неизвеÑтный целевой формат %s" - -#: util/grub-install-common.c:700 -#, c-format -msgid "cannot find locale `%s'" -msgstr "не удалоÑÑŒ найти локаль «%s»" - -#: util/grub-install-common.c:939 -#, c-format -msgid "%s doesn't exist. Please specify --target or --directory" -msgstr "%s не ÑущеÑтвует. Укажите --target или --directory" - -#: util/grub-install-common.c:948 util/grub-install-common.c:951 -#, c-format -msgid "invalid modinfo file `%s'" -msgstr "некорректный файл modinfo «%s»" - -#: util/grub-install-common.c:966 -#, c-format -msgid "Unknown platform `%s-%s'" -msgstr "ÐеизвеÑÑ‚Ð½Ð°Ñ Ð¿Ð»Ð°Ñ‚Ñ„Ð¾Ñ€Ð¼Ð° «%s-%s»" - -#: util/grub-install.c:238 -msgid "More than one install device?" -msgstr "Более одного уÑтройÑтва Ð´Ð»Ñ ÑƒÑтановки?" - -#: util/grub-install.c:251 -#, c-format -msgid "" -"install GRUB images under the directory DIR/%s instead of the %s directory" -msgstr "уÑтанавливать образы GRUB в каталог КÐТ/%s, а не в каталог %s" - -#: util/grub-install.c:256 util/grub-probe.c:734 -msgid "TARGET" -msgstr "ЦЕЛЬ" - -#. TRANSLATORS: "TARGET" as in "target platform". -#: util/grub-install.c:258 -#, c-format -msgid "install GRUB for TARGET platform [default=%s]; available targets: %s" -msgstr "" -"уÑтановить GRUB Ð´Ð»Ñ Ð¦Ð•Ð›Ð•Ð’ÐžÐ™ платформы [по умолчанию %s]; доÑтупные " -"платформы: %s" - -#. TRANSLATORS: "may break" doesn't just mean that option wouldn't have any -#. effect but that it will make the resulting install unbootable from HDD. -#. TRANSLATORS: The potential breakage isn't limited to floppies but it's -#. likely to make the install unbootable from HDD. -#: util/grub-install.c:267 util/grub-setup.c:94 -msgid "" -"make the drive also bootable as floppy (default for fdX devices). May break " -"on some BIOSes." -msgstr "" -"Ñделать уÑтройÑтво загрузочным как диÑкета (по умолчанию Ð´Ð»Ñ ÑƒÑтройÑтв fdX). " -"Может не работать Ñ Ð½ÐµÐºÐ¾Ñ‚Ð¾Ñ€Ñ‹Ð¼Ð¸ BIOS." - -#: util/grub-install.c:270 -msgid "delete device map if it already exists" -msgstr "удалить карту уÑтройÑтв, еÑли она уже ÑущеÑтвует" - -#: util/grub-install.c:272 util/grub-setup.c:87 -msgid "install even if problems are detected" -msgstr "уÑтановить даже еÑли обнаружены проблемы" - -#: util/grub-install.c:274 -msgid "use identifier file even if UUID is available" -msgstr "иÑпользовать файл идентификации даже еÑли доÑтупен UUID" - -#: util/grub-install.c:276 -msgid "" -"disk module to use (biosdisk or native). This option is only available on " -"BIOS target." -msgstr "" -"иÑпользуемый диÑковый модуль (biosdisk или native). Этот параметр доÑтупен " -"только Ð´Ð»Ñ BIOS цели." - -#: util/grub-install.c:279 -msgid "" -"don't update the `boot-device'/`Boot*' NVRAM variables. This option is only " -"available on EFI and IEEE1275 targets." -msgstr "" -"не обновлÑть переменные «boot-device/Boot*» в NVRAM. Этот параметр доÑтупен " -"только Ð´Ð»Ñ Ñ†ÐµÐ»ÐµÐ¹ EFI и IEEE1275." - -#: util/grub-install.c:282 util/grub-setup.c:89 -msgid "do not probe for filesystems in DEVICE" -msgstr "не проверÑть файловые ÑиÑтемы на УСТРОЙСТВЕ" - -#: util/grub-install.c:284 -msgid "do not install bootsector" -msgstr "не уÑтанавливать загрузочный Ñектор" - -#: util/grub-install.c:286 util/grub-setup.c:96 -msgid "" -"Do not apply any reed-solomon codes when embedding core.img. This option is " -"only available on x86 BIOS targets." -msgstr "" -"Ðе применÑть любые коды Рида-Соломона при вÑтраивании core.img. Этот " -"параметр доÑтупен только Ð´Ð»Ñ Ñ†ÐµÐ»ÐµÐ¹ x86 BIOS." - -#: util/grub-install.c:293 -msgid "" -"the installation device is removable. This option is only available on EFI." -msgstr "" -"уÑтройÑтво, на которое производитÑÑ ÑƒÑтановка, ÑвлÑетÑÑ Ð¿ÐµÑ€ÐµÐ½Ð¾Ñным. Этот " -"параметр доÑтупен только Ð´Ð»Ñ EFI." - -#: util/grub-install.c:295 -msgid "ID" -msgstr "ID" - -#: util/grub-install.c:296 -msgid "the ID of bootloader. This option is only available on EFI and Macs." -msgstr "ID ÑиÑтемного загрузчика. Этот параметр доÑтупен только Ð´Ð»Ñ EFI и Mac." - -#: util/grub-install.c:298 -msgid "use DIR as the EFI System Partition root." -msgstr "иÑпользовать КÐТÐЛОГ в качеÑтве ÐºÐ¾Ñ€Ð½Ñ ÑиÑтемного раздела EFI." - -#: util/grub-install.c:300 -msgid "use DIR for PPC MAC install." -msgstr "иÑпользовать КÐТÐЛОГ Ð´Ð»Ñ ÑƒÑтановки PPC MAC." - -#: util/grub-install.c:301 util/grub-mkrescue.c:106 -msgid "use FILE as font for label" -msgstr "иÑпользовать ФÐЙЛ в качеÑтве файла шрифта Ð´Ð»Ñ Ð¼ÐµÑ‚ÐºÐ¸" - -#: util/grub-install.c:302 util/grub-mkrescue.c:107 -msgid "use COLOR for label" -msgstr "иÑпользовать ЦВЕТ Ð´Ð»Ñ Ð¼ÐµÑ‚ÐºÐ¸" - -#: util/grub-install.c:303 util/grub-mkrescue.c:108 -msgid "use COLOR for label background" -msgstr "иÑпользовать ЦВЕТ Ð´Ð»Ñ Ñ„Ð¾Ð½Ð° метки" - -#: util/grub-install.c:304 util/grub-mkrescue.c:110 -msgid "use STRING as product version" -msgstr "иÑпользовать СТРОКУ в качеÑтве верÑии продукта" - -#: util/grub-install.c:361 -msgid "[OPTION] [INSTALL_DEVICE]" -msgstr "[ПÐРÐМЕТР] [УСТРОЙСТВО_ДЛЯ_УСТÐÐОВКИ]" - -#: util/grub-install.c:362 -msgid "Install GRUB on your drive." -msgstr "УÑтанавливает GRUB на уÑтройÑтво." - -#: util/grub-install.c:363 -#, c-format -msgid "" -"INSTALL_DEVICE must be system device filename.\n" -"%s copies GRUB images into %s. On some platforms, it may also install GRUB " -"into the boot sector." -msgstr "" -"Ð’ значении УСТРОЙСТВО_ДЛЯ_УСТÐÐОВКИ должно задаватьÑÑ Ð¸Ð¼Ñ Ñ„Ð°Ð¹Ð»Ð° ÑиÑтемного\n" -"уÑтройÑтва. %s копирует образы GRUB на %s.\n" -"Ðа некоторых платформах он также может уÑтановить GRUB в загрузочный Ñектор." - -#: util/grub-install.c:672 -#, c-format -msgid "the drive %s is defined multiple times in the device map %s" -msgstr "привод %s объÑвлен неÑколько раз в карте уÑтройÑтв %s" - -#: util/grub-install.c:878 -msgid "Unable to determine your platform. Use --target." -msgstr "Ðе удалоÑÑŒ определить вашу платформу. ИÑпользуйте --target." - -#: util/grub-install.c:891 -#, c-format -msgid "Installing for %s platform.\n" -msgstr "ВыполнÑетÑÑ ÑƒÑтановка Ð´Ð»Ñ Ð¿Ð»Ð°Ñ‚Ñ„Ð¾Ñ€Ð¼Ñ‹ %s.\n" - -#: util/grub-install.c:939 -msgid "install device isn't specified" -msgstr "не указано уÑтройÑтво, на которое нужно выполнить уÑтановку" - -#: util/grub-install.c:1057 -msgid "cannot find EFI directory" -msgstr "не удалоÑÑŒ найти каталог EFI" - -#: util/grub-install.c:1060 util/grub-install.c:1209 util/grub-install.c:1254 -#: util/grub-macbless.c:76 util/grub-probe.c:329 util/setup.c:316 -#, c-format -msgid "cannot find a device for %s (is /dev mounted?)" -msgstr "не удалоÑÑŒ найти уÑтройÑтво Ð´Ð»Ñ %s (/dev Ñмонтирован?)" - -#: util/grub-install.c:1069 util/grub-install.c:1217 util/grub-install.c:1270 -#: util/grub-install.c:1365 util/grub-macbless.c:80 util/grub-probe.c:372 -#, c-format -msgid "cannot find a GRUB drive for %s. Check your device.map" -msgstr "не удалоÑÑŒ найти привод GRUB Ð´Ð»Ñ %s. Проверьте device.map" - -#: util/grub-install.c:1087 -#, c-format -msgid "%s doesn't look like an EFI partition" -msgstr "%s не похоже на раздел EFI" - -#: util/grub-install.c:1129 util/grub-install.c:1614 -msgid "You've found a bug" -msgstr "Ð’Ñ‹ нашли ошибку" - -#: util/grub-install.c:1231 -#, c-format -msgid "filesystem on %s is neither HFS nor HFS+" -msgstr "Ñ„Ð°Ð¹Ð»Ð¾Ð²Ð°Ñ ÑиÑтема на %s не ÑвлÑетÑÑ HFS или HFS+" - -#: util/grub-install.c:1299 -#, c-format -msgid "" -"attempt to install to encrypted disk without cryptodisk enabled. Set `%s' in " -"file `%s'" -msgstr "" -"попытка уÑтановки на шифрованный диÑк без включённого cryptodisk. Задайте " -"«%s» в файле «%s»" - -#: util/grub-install.c:1410 util/grub-install.c:1772 util/grub-install.c:1872 -#, c-format -msgid "Can't create file: %s" -msgstr "Ðе удалоÑÑŒ Ñоздать файл: %s" - -#: util/grub-install.c:1491 -msgid "no hints available for your platform. Expect reduced performance" -msgstr "" -"Ð´Ð»Ñ Ð²Ð°ÑˆÐµÐ¹ платформы нет рекомендаций. ОжидаетÑÑ Ñнижение производительноÑти" - -#. TRANSLATORS: This is a prefix in the log to indicate that usually -#. a command would be executed but due to an option was skipped. -#: util/grub-install.c:1702 -msgid "NOT RUNNING: " -msgstr "ÐЕ ЗÐПУЩЕÐО: " - -#: util/grub-install.c:1806 -msgid "the chosen partition is not a PReP partition" -msgstr "выбранный раздел не ÑвлÑетÑÑ Ñ€Ð°Ð·Ð´ÐµÐ»Ð¾Ð¼ PReP" - -#: util/grub-install.c:1811 -msgid "failed to copy Grub to the PReP partition" -msgstr "не удалоÑÑŒ Ñкопировать Grub на раздел PReP" - -#: util/grub-install.c:1816 -#, c-format -msgid "" -"the PReP partition is not empty. If you are sure you want to use it, run dd " -"to clear it: `%s'" -msgstr "" -"раздел PReP не пуÑÑ‚. ЕÑли вы уверены, что хотите иÑпользовать его, запуÑтите " -"dd Ð´Ð»Ñ ÐµÐ³Ð¾ очиÑтки: «%s»" - -#: util/grub-install.c:1888 util/grub-install.c:1932 -#, c-format -msgid "efibootmgr failed to register the boot entry: %s" -msgstr "efibootmgr не удалоÑÑŒ зарегиÑтрировать загрузочную запиÑÑŒ: %s" - -#: util/grub-install.c:1916 -msgid "EFI bootloader id isn't specified." -msgstr "Ðе указан загрузчик EFI." - -#: util/grub-install.c:1950 -msgid "WARNING: no platform-specific install was performed" -msgstr "" -"ПРЕДУПРЕЖДЕÐИЕ: никаких Ñпециальных уÑтановок Ð´Ð»Ñ Ð¿Ð»Ð°Ñ‚Ñ„Ð¾Ñ€Ð¼Ñ‹ не произведено" - -#: util/grub-install.c:1957 -msgid "Installation finished. No error reported." -msgstr "УÑтановка завершена. Ошибок нет." - -#: util/grub-macbless.c:101 -msgid "bless for x86-based macs" -msgstr "загрузка Ð´Ð»Ñ mac на оÑнове x86" - -#: util/grub-macbless.c:103 -msgid "bless for ppc-based macs" -msgstr "загрузка Ð´Ð»Ñ mac на оÑнове ppc" - -#: util/grub-macbless.c:136 util/grub-probe.c:823 -msgid "No path or device is specified.\n" -msgstr "Ðе указан путь или уÑтройÑтво.\n" - -#: util/grub-macbless.c:157 -msgid "--ppc PATH|--x86 FILE" -msgstr "--ppc ПУТЬ|--x86 ФÐЙЛ" - -#: util/grub-macbless.c:158 -msgid "Mac-style bless on HFS or HFS+" -msgstr "Загрузка в Ñтиле MacÂ Ñ HFS или HFS+" - -#: util/grub-menulst2cfg.c:44 -#, c-format -msgid "Usage: %s [INFILE [OUTFILE]]\n" -msgstr "ИÑпользование: %s [ВХОДÐОЙ_ФÐЙЛ [ВЫХОДÐОЙ_ФÐЙЛ]]\n" - -#: util/grub-mkfont.c:157 -#, c-format -msgid "Freetype Error %d loading glyph 0x%x for U+0x%x%s" -msgstr "Ошибка Freetype %d при загрузке образа Ñимвола 0x%x Ð´Ð»Ñ U+0x%x%s" - -#. TRANSLATORS: These qualifiers are used for cursive typography, -#. mainly Arabic. Note that the terms refer to the visual position -#. and not logical order and if used in left-to-right script then -#. leftmost is initial but with right-to-left script like Arabic -#. rightmost is the initial. -#: util/grub-mkfont.c:165 -msgid " (medial)" -msgstr " (Ñерединный)" - -#: util/grub-mkfont.c:166 -msgid " (leftmost)" -msgstr " (крайний Ñлева)" - -#: util/grub-mkfont.c:167 -msgid " (rightmost)" -msgstr " (крайний Ñправа)" - -#: util/grub-mkfont.c:481 -#, c-format -msgid "Out of range substitution (%d, %d)\n" -msgstr "ПодÑтановка вне диапазона (%d, %d)\n" - -#. TRANSLATORS: "lookup" is taken directly from font specifications -#. which are formulated as "Under condition X replace LOOKUP with -#. SUBSTITUITION". " -#: util/grub-mkfont.c:506 -#, c-format -msgid "Out of range lookup: %d\n" -msgstr "ПоиÑк вне диапазона: %d\n" - -#: util/grub-mkfont.c:514 -#, c-format -msgid "Unsupported substitution type: %d\n" -msgstr "Ðеподдерживаемый тип подÑтановки: %d\n" - -#: util/grub-mkfont.c:550 -#, c-format -msgid "Unsupported substitution specification: %d\n" -msgstr "Ðеподдерживаемое подÑтановочное обозначение: %d\n" - -#: util/grub-mkfont.c:582 -#, c-format -msgid "Unsupported coverage specification: %d\n" -msgstr "ÐÐµÐ¿Ð¾Ð´Ð´ÐµÑ€Ð¶Ð¸Ð²Ð°ÐµÐ¼Ð°Ñ Ð¿Ð¾Ð´ÑÑ‚Ð°Ð½Ð¾Ð²Ð¾Ñ‡Ð½Ð°Ñ Ð·Ð¾Ð½Ð° дейÑтвиÑ: %d\n" - -#: util/grub-mkfont.c:622 -#, c-format -msgid "WARNING: unsupported font feature parameters: %x\n" -msgstr "ПРЕДУПРЕЖДЕÐИЕ: неподдерживаемые параметры ÑвойÑтв шрифта: %x\n" - -#: util/grub-mkfont.c:936 util/grub-mkrescue.c:98 util/grub-mkstandalone.c:48 -msgid "save output in FILE [required]" -msgstr "Ñохранить вывод в ФÐЙЛ [требуетÑÑ]" - -#. TRANSLATORS: some font files may have multiple faces (fonts). -#. This option is used to chose among them, the first face being '0'. -#. Rarely used. -#: util/grub-mkfont.c:942 -msgid "select face index" -msgstr "выбрать Ð¸Ð½Ð´ÐµÐºÑ Ð½Ð°Ñ‡ÐµÑ€Ñ‚Ð°Ð½Ð¸Ñ" - -#: util/grub-mkfont.c:943 -msgid "FROM-TO[,FROM-TO]" -msgstr "ИЗ-Ð’[,ИЗ-Ð’]" - -#. TRANSLATORS: It refers to the range of characters in font. -#: util/grub-mkfont.c:945 -msgid "set font range" -msgstr "назначить диапазон шрифта" - -#. TRANSLATORS: "family name" for font is just a generic name without suffix -#. like "Bold". -#: util/grub-mkfont.c:949 -msgid "set font family name" -msgstr "назначить гарнитуру шрифта" - -#: util/grub-mkfont.c:950 -msgid "SIZE" -msgstr "РÐЗМЕР" - -#: util/grub-mkfont.c:950 -msgid "set font size" -msgstr "назначить размер шрифта" - -#: util/grub-mkfont.c:951 -msgid "set font descent" -msgstr "назначить ÑпуÑк шрифта" - -#: util/grub-mkfont.c:952 -msgid "set font ascent" -msgstr "назначить подъём шрифта" - -#: util/grub-mkfont.c:953 -msgid "convert to bold font" -msgstr "преобразовать в жирный шрифт" - -#: util/grub-mkfont.c:954 -msgid "force autohint" -msgstr "принудительный автохинтинг" - -#: util/grub-mkfont.c:955 -msgid "disable hinting" -msgstr "отключить хинтинг" - -#. TRANSLATORS: some fonts contain bitmap rendering for -#. some sizes. This option forces rerendering even if -#. pre-rendered bitmap is available. -#. -#: util/grub-mkfont.c:961 -msgid "ignore bitmap strikes when loading" -msgstr "игнорировать заданный в битовой карте размер при загрузке" - -#. TRANSLATORS: It refers to the range of characters in font. -#: util/grub-mkfont.c:1059 util/grub-mkfont.c:1075 -msgid "invalid font range" -msgstr "неверный диапазон шрифта" - -#: util/grub-mkfont.c:1151 -msgid "[OPTIONS] FONT_FILES" -msgstr "[ПÐРÐМЕТРЫ] ФÐЙЛЫ_ШРИФТÐ" - -#: util/grub-mkfont.c:1152 -msgid "Convert common font file formats into PF2" -msgstr "Преобразует файлы шрифтов раÑпроÑтранённых форматов в PF2" - -#: util/grub-mkfont.c:1182 util/grub-mkrescue.c:483 -#: util/grub-mkstandalone.c:306 -msgid "output file must be specified" -msgstr "требуетÑÑ ÑƒÐºÐ°Ð·Ð°Ñ‚ÑŒ выходной файл" - -#: util/grub-mkfont.c:1185 -msgid "FT_Init_FreeType fails" -msgstr "FT_Init_FreeType завершилаÑÑŒ Ñ Ð¾ÑˆÐ¸Ð±ÐºÐ¾Ð¹" - -#: util/grub-mkfont.c:1199 -#, c-format -msgid "can't open file %s, index %d: error %d" -msgstr "не удалоÑÑŒ открыть файл %s, Ð¸Ð½Ð´ÐµÐºÑ %d: ошибка %d" - -#: util/grub-mkfont.c:1229 -#, c-format -msgid "can't set %dx%d font size: Freetype error %d: %s" -msgstr "не удалоÑÑŒ задать размер шрифта %dx%d: ошибка Freetype %d: %s" - -#: util/grub-mkimage.c:67 -msgid "set prefix directory" -msgstr "назначить префикÑ-каталог" - -#. TRANSLATORS: "memdisk" here isn't an identifier, it can be translated. -#. "embed" is a verb (command description). " -#: util/grub-mkimage.c:71 -msgid "" -"embed FILE as a memdisk image\n" -"Implies `-p (memdisk)/boot/grub' and overrides any prefix supplied " -"previously, but the prefix itself can be overridden by later options" -msgstr "" -"вÑтраивать ФÐЙЛ как образ виртуального диÑка\n" -"Означает «-p (memdisk)/boot/grub» и заменÑет любой префикÑ, указанный " -"ранее,\n" -"но Ð¿Ñ€ÐµÑ„Ð¸ÐºÑ Ð²ÑÑ‘ ещё можно изменить в поÑледующих параметрах" - -#: util/grub-mkimage.c:74 -msgid "embed FILE as a device tree (DTB)\n" -msgstr "вÑтраивать ФÐЙЛ как дерево уÑтройÑтв (DTB)\n" - -#: util/grub-mkimage.c:76 -msgid "embed FILE as an early config" -msgstr "вÑтраивать ФÐЙЛ как файл ранней наÑтройки" - -#. TRANSLATORS: NOTE is a name of segment. -#: util/grub-mkimage.c:80 -msgid "add NOTE segment for CHRP IEEE1275" -msgstr "добавить Ñегмент NOTE в CHRP IEEE1275" - -#: util/grub-mkimage.c:81 -msgid "output a generated image to FILE [default=stdout]" -msgstr "" -"запиÑать Ñгенерированный образ в ФÐЙЛ [по умолчанию: на Ñтандартный вывод]" - -#: util/grub-mkimage.c:82 -msgid "FORMAT" -msgstr "ФОРМÐТ" - -#: util/grub-mkimage.c:100 util/grub-mkstandalone.c:62 -msgid "generate an image in FORMAT" -msgstr "генерировать образ в ФОРМÐТЕ" - -#: util/grub-mkimage.c:101 util/grub-mkstandalone.c:63 -msgid "available formats:" -msgstr "ДоÑтупные форматы:" - -#: util/grub-mkimage.c:152 util/grub-mkstandalone.c:96 -#, c-format -msgid "unknown target format %s\n" -msgstr "неизвеÑтный целевой формат %s\n" - -#: util/grub-mkimage.c:242 -msgid "[OPTION]... [MODULES]" -msgstr "[ПÐРÐМЕТР]… [МОДУЛИ]" - -#: util/grub-mkimage.c:243 -msgid "Make a bootable image of GRUB." -msgstr "Создаёт загрузочный образ GRUB." - -#: util/grub-mkimage.c:273 util/grub-mkstandalone.c:309 -msgid "Target format not specified (use the -O option)." -msgstr "Целевой формат не указан (иÑпользуйте параметр -O)." - -#: util/grub-mkimage.c:282 -msgid "Prefix not specified (use the -p option)." -msgstr "ÐŸÑ€ÐµÑ„Ð¸ÐºÑ Ð½Ðµ указан (иÑпользуйте параметр -p)." - -#: util/grub-mkimage.c:318 util/setup.c:793 -#, c-format -msgid "cannot close `%s': %s" -msgstr "не удалоÑÑŒ закрыть «%s»: %s" - -#: util/grub-mkimagexx.c:2191 -#, c-format -msgid "" -"`%s' is miscompiled: its start address is 0x%llx instead of 0x%llx: ld.gold " -"bug?" -msgstr "" -"Ð½ÐµÐºÐ¾Ñ€Ñ€ÐµÐºÑ‚Ð½Ð°Ñ ÐºÐ¾Ð¼Ð¿Ð¸Ð»ÑÑ†Ð¸Ñ Â«%s»: начальный Ð°Ð´Ñ€ÐµÑ Ñ€Ð°Ð²ÐµÐ½ 0x%llx вмеÑто 0x%llx: " -"ошибка в ld.gold?" - -#: util/grub-mklayout.c:53 -msgid "set input filename. Default is STDIN" -msgstr "задать Ð¸Ð¼Ñ Ð²Ñ…Ð¾Ð´Ð½Ð¾Ð³Ð¾ файла. По умолчанию STDIN" - -#. TRANSLATORS: scan identifier is keyboard key symbolic name. -#: util/grub-mklayout.c:307 -#, c-format -msgid "Unknown keyboard scan identifier %s\n" -msgstr "ÐеизвеÑтный Ñкан-идентификатор клавиатуры %s\n" - -#. TRANSLATORS: scan code is keyboard key numeric identifier. -#: util/grub-mklayout.c:390 util/grub-mklayout.c:418 -#, c-format -msgid "Unknown keyboard scan code 0x%02x\n" -msgstr "ÐеизвеÑтный Ñкан-код клавиатуры 0x%02x\n" - -#. TRANSLATORS: this error is triggered when input doesn't contain any -#. key descriptions. -#: util/grub-mklayout.c:438 -msgid "ERROR: no valid keyboard layout found. Check the input.\n" -msgstr "ОШИБКÐ: допуÑÑ‚Ð¸Ð¼Ð°Ñ Ñ€Ð°Ñкладка клавиатуры не найдена. Проверьте ввод.\n" - -#. TRANSLATORS: "one" is a shortcut for "keyboard layout". -#: util/grub-mklayout.c:478 -msgid "Generate GRUB keyboard layout from Linux console one." -msgstr "Генерирует раÑкладку клавиатуры GRUB из конÑоли Linux." - -#: util/grub-mknetdir.c:47 -msgid "root directory of TFTP server" -msgstr "корневой каталог Ñервера TFTP" - -#: util/grub-mknetdir.c:49 -msgid "relative subdirectory on network server" -msgstr "отноÑительный подкаталог на Ñетевом Ñервере" - -#: util/grub-mknetdir.c:88 -msgid "" -"Prepares GRUB network boot images at net_directory/subdir assuming " -"net_directory being TFTP root." -msgstr "" -"Подготавливает образы Ð´Ð»Ñ Ñетевой загрузки GRUB в net_directory/subdir; " -"предполагаетÑÑ, что net_directory ÑвлÑетÑÑ ÐºÐ¾Ñ€Ð½ÐµÐ¼ TFTP." - -#: util/grub-mknetdir.c:146 -#, c-format -msgid "unsupported platform %s" -msgstr "Ð½ÐµÐ¿Ð¾Ð´Ð´ÐµÑ€Ð¶Ð¸Ð²Ð°ÐµÐ¼Ð°Ñ Ð¿Ð»Ð°Ñ‚Ñ„Ð¾Ñ€Ð¼Ð° %s" - -#. TRANSLATORS: First %s is replaced by platform name. Second one by filename. -#: util/grub-mknetdir.c:165 -#, c-format -msgid "" -"Netboot directory for %s created. Configure your DHCP server to point to %s\n" -msgstr "" -"Создан каталог netboot Ð´Ð»Ñ %s. ÐаÑтройте Ñервер DHCP так, чтобы он указывал " -"на %s\n" - -#: util/grub-mkpasswd-pbkdf2.c:46 -msgid "Number of PBKDF2 iterations" -msgstr "КоличеÑтво итераций PBKDF2" - -#: util/grub-mkpasswd-pbkdf2.c:47 -msgid "Length of generated hash" -msgstr "Длина генерируемого Ñ…Ñша" - -#: util/grub-mkpasswd-pbkdf2.c:48 -msgid "Length of salt" -msgstr "Длина Ñоли" - -#: util/grub-mkpasswd-pbkdf2.c:87 -msgid "Generate PBKDF2 password hash." -msgstr "Генерирует Ñ…Ñш Ð¿Ð°Ñ€Ð¾Ð»Ñ PBKDF2." - -#: util/grub-mkpasswd-pbkdf2.c:144 util/grub-mkpasswd-pbkdf2.c:151 -msgid "failure to read password" -msgstr "не удалоÑÑŒ прочитать пароль" - -#: util/grub-mkpasswd-pbkdf2.c:146 -msgid "Reenter password: " -msgstr "Повторно введите пароль: " - -#: util/grub-mkpasswd-pbkdf2.c:160 -msgid "passwords don't match" -msgstr "пароли не Ñовпадают" - -#: util/grub-mkpasswd-pbkdf2.c:169 -msgid "couldn't retrieve random data for salt" -msgstr "не удалоÑÑŒ получить произвольные данные Ð´Ð»Ñ Ñоли" - -#: util/grub-mkpasswd-pbkdf2.c:184 -#, c-format -msgid "cryptographic error number %d" -msgstr "номер ошибки ÑˆÐ¸Ñ„Ñ€Ð¾Ð²Ð°Ð½Ð¸Ñ %d" - -#: util/grub-mkpasswd-pbkdf2.c:203 -#, c-format -msgid "PBKDF2 hash of your password is %s\n" -msgstr "Ð¥Ñш PBKDF2 вашего паролÑ: %s\n" - -#: util/grub-mkrelpath.c:67 -msgid "No path is specified.\n" -msgstr "Ðе указан путь.\n" - -#: util/grub-mkrelpath.c:78 -msgid "PATH" -msgstr "ПУТЬ" - -#: util/grub-mkrelpath.c:79 -msgid "Transform a system filename into GRUB one." -msgstr "Преобразовать ÑиÑтемное Ð¸Ð¼Ñ Ñ„Ð°Ð¹Ð»Ð° в Ð¸Ð¼Ñ Ñ„Ð°Ð¹Ð»Ð° GRUB." - -#: util/grub-mkrescue.c:100 -msgid "save ROM images in DIR [optional]" -msgstr "Ñохранить образы ROM в КÐТÐЛОГ [необÑзательный]" - -#. TRANSLATORS: xorriso is a program for creating ISOs and burning CDs. -#: util/grub-mkrescue.c:103 -msgid "use FILE as xorriso [optional]" -msgstr "в качеÑтве xorriso иÑпользовать ФÐЙЛ [необÑзательный]" - -#: util/grub-mkrescue.c:109 -msgid "use STRING as product name" -msgstr "иÑпользовать СТРОКУ в качеÑтве имени продукта" - -#: util/grub-mkrescue.c:111 -msgid "" -"enable sparc boot. Disables HFS+, APM, ARCS and boot as disk image for i386-" -"pc" -msgstr "" -"включить sparc boot. Выключить HFS+, APM, ARCS и boot из диÑкового образа " -"Ð´Ð»Ñ i386-pc" - -#: util/grub-mkrescue.c:112 -msgid "" -"enable ARCS (big-endian mips machines, mostly SGI) boot. Disables HFS+, APM, " -"sparc64 and boot as disk image for i386-pc" -msgstr "" -"включить ARCS (машины Ñ big-endian mips, в оÑновном SGI) boot. Выключить HFS" -"+, APM, sparc64 и boot из диÑкового образа Ð´Ð»Ñ i386-pc" - -#. TRANSLATORS: it generates one single image which is bootable through any method. -#: util/grub-mkrescue.c:125 -msgid "Make GRUB CD-ROM, disk, pendrive and floppy bootable image." -msgstr "" -"Создать загрузочный образ GRUB Ð´Ð»Ñ ÐºÐ¾Ð¼Ð¿Ð°ÐºÑ‚-диÑка, диÑка, USB-Ð½Ð°ÐºÐ¾Ð¿Ð¸Ñ‚ÐµÐ»Ñ Ð¸Ð»Ð¸ " -"диÑкеты." - -#: util/grub-mkrescue.c:130 -#, c-format -msgid "" -"Generates a bootable CD/USB/floppy image. Arguments other than options to " -"this program are passed to xorriso, and indicate source files, source " -"directories, or any of the mkisofs options listed by the output of `%s'." -msgstr "" -"Генерирует загрузочный образ CD/USB/диÑкеты. Ðргументы, отличные от " -"параметров Ñтой программы, передаютÑÑ xorriso, и задают иÑходные файлы, " -"каталоги или любые параметры mkisofs, перечиÑленные в выводе «%s»." - -#: util/grub-mkrescue.c:134 -msgid "Option -- switches to native xorriso command mode." -msgstr "Параметр -- переключает в родной режим команд xorriso." - -#: util/grub-mkrescue.c:135 -msgid "Mail xorriso support requests to ." -msgstr "ОтправлÑйте запроÑÑ‹ поддержки xorriso по адреÑу ." - -#: util/grub-mkrescue.c:221 util/grub-mkstandalone.c:114 -msgid "[OPTION] SOURCE..." -msgstr "[ПÐРÐМЕТР] ИСХОДÐЫЕ…" - -#: util/grub-mkrescue.c:257 util/grub-mkrescue.c:300 util/grub-mkrescue.c:588 -#, c-format -msgid "enabling %s support ..." -msgstr "включение поддержки %s …" - -#: util/grub-mkrescue.c:486 -msgid "xorriso not found" -msgstr "xorriso не найдена" - -#: util/grub-mkrescue.c:623 -msgid "" -"Your xorriso doesn't support `--grub2-boot-info'. Some features are " -"disabled. Please use xorriso 1.2.9 or later." -msgstr "" -"ИмеющийÑÑ xorriso не поддерживает «--grub2-boot-info». Ðекоторые " -"возможноÑти отключены. ИÑпользуйте xorriso 1.2.9 или новее." - -#: util/grub-mkrescue.c:650 -msgid "" -"Your xorriso doesn't support `--grub2-boot-info'. Your core image is too " -"big. Boot as disk is disabled. Please use xorriso 1.2.9 or later." -msgstr "" -"ИмеющийÑÑ xorriso не поддерживает «--grub2-boot-info». Базовый образ " -"Ñлишком большой. Загрузка Ñ Ð´Ð¸Ñка отключена. ИÑпользуйте xorriso 1.2.9 или " -"новее." - -#: util/grub-mkstandalone.c:115 -msgid "" -"Generate a standalone image (containing all modules) in the selected format" -msgstr "" -"Сгенерировать автономный образ (Ñодержащий вÑе модули) в заданном формате" - -#: util/grub-mkstandalone.c:115 -msgid "Graft point syntax (E.g. /boot/grub/grub.cfg=./grub.cfg) is accepted" -msgstr "" -"ПринимаетÑÑ ÑинтакÑÐ¸Ñ Ñ Ð½Ð°Ñ‡Ð°Ð»ÑŒÐ½Ð¾Ð¹ точкой (например, /boot/grub/grub.cfg=./" -"grub.cfg)" - -#: util/grub-mount.c:552 -msgid "IMAGE1 [IMAGE2 ...] MOUNTPOINT" -msgstr "ОБРÐЗ1 [ОБРÐЗ2 …] ТОЧКÐ_МОÐТИРОВÐÐИЯ" - -#: util/grub-mount.c:575 -msgid "need an image and mountpoint" -msgstr "требуетÑÑ Ð¾Ð±Ñ€Ð°Ð· и точка монтированиÑ" - -#: util/grub-probe.c:731 -msgid "given argument is a system device, not a path" -msgstr "указанный аргумент ÑвлÑетÑÑ ÑиÑтемным уÑтройÑтвом, а не путём" - -#: util/grub-probe.c:736 -msgid "separate items in output using ASCII NUL characters" -msgstr "разделение Ñлементов в выводе Ñимволами ASCII NUL" - -#: util/grub-probe.c:754 -#, c-format -msgid "[default=%s]" -msgstr "[по умолчанию %s]" - -#: util/grub-probe.c:756 -msgid "print TARGET" -msgstr "печатать ЦЕЛЬ" - -#: util/grub-probe.c:757 -msgid "available targets:" -msgstr "доÑтупные цели:" - -#: util/grub-probe.c:839 -msgid "[OPTION]... [PATH|DEVICE]" -msgstr "[ПÐРÐМЕТР]… [ПУТЬ|УСТРОЙСТВО]" - -#: util/grub-probe.c:840 -msgid "" -"Probe device information for a given path (or device, if the -d option is " -"given)." -msgstr "" -"Собирает информацию об уÑтройÑтве Ð´Ð»Ñ Ð·Ð°Ð´Ð°Ð½Ð½Ð¾Ð³Ð¾ пути (или уÑтройÑтва, еÑли " -"указан параметр -d)." - -#: util/grub-render-label.c:60 -msgid "read text from FILE." -msgstr "прочитать текÑÑ‚ из ФÐЙЛÐ." - -#: util/grub-render-label.c:62 -msgid "use COLOR for text" -msgstr "иÑпользовать ЦВЕТ Ð´Ð»Ñ Ñ‚ÐµÐºÑта" - -#: util/grub-render-label.c:64 -msgid "use COLOR for background" -msgstr "ИÑпользовать ЦВЕТ Ð´Ð»Ñ Ñ„Ð¾Ð½Ð°" - -#. TRANSLATORS: The result is always stored to file and -#. never shown directly, so don't use "show" as synonym for render. Use "create" if -#. "render" doesn't translate directly. -#: util/grub-render-label.c:69 -msgid "set the label to render" -msgstr "задать Ñрлык Ð´Ð»Ñ Ð³ÐµÐ½ÐµÑ€Ð°Ñ†Ð¸Ð¸" - -#: util/grub-render-label.c:73 -msgid "use FILE as font (PF2)." -msgstr "иÑпользовать ФÐЙЛ как файл Ñо шрифтом (PF2)." - -#. TRANSLATORS: This file takes a text and creates a graphical representation of it, -#. putting the result into .disk_label file. The result is always stored to file and -#. never shown directly, so don't use "show" as synonym for render. Use "create" if -#. "render" doesn't translate directly. -#: util/grub-render-label.c:136 -msgid "Render Apple .disk_label." -msgstr "Сгенерировать Apple .disk_label." - -#: util/grub-render-label.c:158 util/grub-syslinux2cfg.c:169 -msgid "Missing arguments\n" -msgstr "ОтÑутÑтвуют аргументы\n" - -#: util/grub-script-check.c:87 -msgid "[PATH]" -msgstr "[ПУТЬ]" - -#: util/grub-script-check.c:88 -msgid "Checks GRUB script configuration file for syntax errors." -msgstr "ПроверÑет файл ÑÑ†ÐµÐ½Ð°Ñ€Ð¸Ñ Ð½Ð°Ñтройки GRUB на ÑинтакÑичеÑкие ошибки." - -#: util/grub-script-check.c:207 -#, c-format -msgid "Syntax error at line %u\n" -msgstr "СинтакÑичеÑÐºÐ°Ñ Ð¾ÑˆÐ¸Ð±ÐºÐ° в Ñтроке %u\n" - -#: util/grub-script-check.c:212 -#, c-format -msgid "Script `%s' contains no commands and will do nothing\n" -msgstr "" -"Сценарий «%s» не Ñодержит команд; никаких дейÑтвие выполнено не будет\n" - -#: util/grub-setup.c:79 -#, c-format -msgid "use FILE as the boot image [default=%s]" -msgstr "иÑпользовать ФÐЙЛ в качеÑтве загрузочного образа [по умолчанию %s]" - -#: util/grub-setup.c:81 -#, c-format -msgid "use FILE as the core image [default=%s]" -msgstr "иÑпользовать ФÐЙЛ в качеÑтве базового образа [по умолчанию %s]" - -#: util/grub-setup.c:210 -msgid "No device is specified.\n" -msgstr "Ðе указано уÑтройÑтво.\n" - -#: util/grub-setup.c:224 -msgid "" -"Set up images to boot from DEVICE.\n" -"\n" -"You should not normally run this program directly. Use grub-install instead." -msgstr "" -"УÑтановка образов Ð´Ð»Ñ Ð·Ð°Ð³Ñ€ÑƒÐ·ÐºÐ¸ Ñ Ð£Ð¡Ð¢Ð ÐžÐ™Ð¡Ð¢Ð’Ð.\n" -"\n" -"Обычно не нужно вызывать Ñту программу вручную. ВмеÑто неё иÑпользуйте grub-" -"install." - -#: util/grub-setup.c:228 -msgid "DEVICE must be an OS device (e.g. /dev/sda)." -msgstr "" -"УСТРОЙСТВО должно задаватьÑÑ Ð² формате операционной ÑиÑтемы (например, /dev/" -"sda)." - -#: util/grub-setup.c:297 -#, c-format -msgid "Invalid device `%s'.\n" -msgstr "Ðеверное уÑтройÑтво «%s».\n" - -#: util/grub-syslinux2cfg.c:64 -msgid "root directory as it will be seen on runtime [default=/]." -msgstr "" -"корневой каталог — как он будет виден во Ð²Ñ€ÐµÐ¼Ñ Ð²Ñ‹Ð¿Ð¾Ð»Ð½ÐµÐ½Ð¸Ñ [по умолчанию /]." - -#: util/grub-syslinux2cfg.c:69 -msgid "" -"current directory of syslinux as it will be seen on runtime [default is " -"parent directory of input file]." -msgstr "" -"текущий каталог syslinux, как он будет виден во Ð²Ñ€ÐµÐ¼Ñ Ð²Ñ‹Ð¿Ð¾Ð»Ð½ÐµÐ½Ð¸Ñ [по " -"умолчанию родительÑкий каталог входного файла]." - -#: util/grub-syslinux2cfg.c:74 -msgid "write output to FILE [default=stdout]." -msgstr "запиÑать вывод в ФÐЙЛ [по умолчанию stdout]" - -#: util/grub-syslinux2cfg.c:148 -msgid "Transform syslinux config into GRUB one." -msgstr "Преобразовать наÑтройки syslinux в GRUB." - -#: util/mkimage.c:688 util/mkimage.c:717 util/mkimage.c:734 -msgid "cannot compress the kernel image" -msgstr "не удалоÑÑŒ Ñжать образ Ñдра" - -#: util/mkimage.c:766 util/mkimage.c:1077 -#, c-format -msgid "unknown compression %d" -msgstr "неизвеÑтный тип ÑÐ¶Ð°Ñ‚Ð¸Ñ %d" - -#: util/mkimage.c:1088 -msgid "Decompressor is too big" -msgstr "ДекомпреÑÑор Ñлишком большой" - -#: util/mkimage.c:1133 -#, c-format -msgid "core image is too big (0x%x > 0x%x)" -msgstr "базовый образ Ñлишком большой (0x%x > 0x%x)" - -#: util/mkimage.c:1140 -#, c-format -msgid "kernel image is too big (0x%x > 0x%x)" -msgstr "образ Ñдра Ñлишком большой (0x%x > 0x%x)" - -#: util/mkimage.c:1220 util/mkimage.c:1501 -#, c-format -msgid "diskboot.img size must be %u bytes" -msgstr "размер diskboot.img должен быть %u байт" - -#: util/mkimage.c:1571 -msgid "" -"fwstart.img doesn't match the known good version. proceed at your own risk" -msgstr "" -"fwstart.img не подходит ни под одну проверенную верÑию. Продолжаем на ваш " -"Ñтрах и риÑк" - -#: util/mkimage.c:1575 util/mkimage.c:1601 -msgid "firmware image is too big" -msgstr "размер образа микропрограммы Ñлишком большой" - -#: util/resolve.c:93 -#, c-format -msgid "invalid line format: %s" -msgstr "неверный формат Ñтроки: %s" - -#: util/setup.c:167 -msgid "the first sector of the core file is not sector-aligned" -msgstr "первый Ñектор базового файла не выровнен поÑекторно" - -#: util/setup.c:177 -msgid "non-sector-aligned data is found in the core file" -msgstr "в базовом файле найдены не выровненные поÑекторно данные" - -#: util/setup.c:199 -msgid "the sectors of the core file are too fragmented" -msgstr "Ñекторы базового файла Ñлишком фрагментированы" - -#: util/setup.c:280 -#, c-format -msgid "the size of `%s' is not %u" -msgstr "размер «%s» не равен %u" - -#: util/setup.c:290 -#, c-format -msgid "the size of `%s' is too small" -msgstr "размер «%s» Ñлишком мал" - -#: util/setup.c:428 -msgid "" -"Attempting to install GRUB to a disk with multiple partition labels or both " -"partition label and filesystem. This is not supported yet." -msgstr "" -"Попытка уÑтановить GRUB на диÑк Ñ Ð½ÐµÑколькими разметками разделов или Ñ " -"разметкой разделов и файловой ÑиÑтемой. Лучше Ñтого ÐЕ ДЕЛÐТЬ." - -#: util/setup.c:441 -#, c-format -msgid "unable to identify a filesystem in %s; safety check can't be performed" -msgstr "" -"не удалоÑÑŒ определить файловую ÑиÑтему в %s; невозможно выполнить безопаÑную " -"проверку" - -#. TRANSLATORS: Filesystem may reserve the space just GRUB isn't sure about it. -#: util/setup.c:445 -#, c-format -msgid "" -"%s appears to contain a %s filesystem which isn't known to reserve space for " -"DOS-style boot. Installing GRUB there could result in FILESYSTEM " -"DESTRUCTION if valuable data is overwritten by grub-setup (--skip-fs-probe " -"disables this check, use at your own risk)" -msgstr "" -"КажетÑÑ, что %s Ñодержит файловую ÑиÑтему %s, на которой неизвеÑтно о " -"наличии меÑта Ð´Ð»Ñ Ð·Ð°Ð³Ñ€ÑƒÐ·Ñ‡Ð¸ÐºÐ° в Ñтиле DOS. УÑтановка GRUB в Ñтом Ñлучае может " -"привеÑти к ПОВРЕЖДЕÐИЮ ФÐЙЛОВОЙ СИСТЕМЫ, еÑли важные данные будут " -"перезапиÑаны grub-setup (параметр --skip-fs-probe выключает Ñту проверку, но " -"Ð²Ð°Ñ Ð¿Ñ€ÐµÐ´ÑƒÐ¿Ñ€ÐµÐ´Ð¸Ð»Ð¸)" - -#. TRANSLATORS: Partition map may reserve the space just GRUB isn't sure about it. -#: util/setup.c:458 -#, c-format -msgid "" -"%s appears to contain a %s partition map which isn't known to reserve space " -"for DOS-style boot. Installing GRUB there could result in FILESYSTEM " -"DESTRUCTION if valuable data is overwritten by grub-setup (--skip-fs-probe " -"disables this check, use at your own risk)" -msgstr "" -"КажетÑÑ, что %s Ñодержит карту разделов %s, на которой неизвеÑтно о наличии " -"меÑта Ð´Ð»Ñ Ð·Ð°Ð³Ñ€ÑƒÐ·Ñ‡Ð¸ÐºÐ° в Ñтиле DOS. УÑтановка GRUB в Ñтом Ñлучае может " -"привеÑти к ПОВРЕЖДЕÐИЮ ФÐЙЛОВОЙ СИСТЕМЫ, еÑли важные данные будут " -"перезапиÑаны grub-setup (параметр --skip-fs-probe выключает Ñту проверку, но " -"Ð²Ð°Ñ Ð¿Ñ€ÐµÐ´ÑƒÐ¿Ñ€ÐµÐ´Ð¸Ð»Ð¸)" - -#: util/setup.c:465 -#, c-format -msgid "" -"%s appears to contain a %s partition map and LDM which isn't known to be a " -"safe combination. Installing GRUB there could result in FILESYSTEM " -"DESTRUCTION if valuable data is overwritten by grub-setup (--skip-fs-probe " -"disables this check, use at your own risk)" -msgstr "" -"КажетÑÑ, что %s Ñодержит карту разделов %s и LDM, что не ÑвлÑетÑÑ Ð±ÐµÐ·Ð¾Ð¿Ð°Ñной " -"комбинацией. УÑтановка GRUB в Ñтом Ñлучае может привеÑти к ПОВРЕЖДЕÐИЮ " -"ФÐЙЛОВОЙ СИСТЕМЫ, еÑли важные данные будут перезапиÑаны grub-setup (параметр " -"--skip-fs-probe выключает Ñту проверку, но Ð²Ð°Ñ Ð¿Ñ€ÐµÐ´ÑƒÐ¿Ñ€ÐµÐ´Ð¸Ð»Ð¸)" - -#: util/setup.c:478 -msgid "" -"Attempting to install GRUB to a partitionless disk or to a partition. This " -"is a BAD idea." -msgstr "" -"Попытка уÑтановить GRUB на диÑк без разделов или на раздел. Лучше Ñтого ÐЕ " -"ДЕЛÐТЬ." - -#: util/setup.c:483 -msgid "" -"Attempting to install GRUB to a disk with multiple partition labels. This " -"is not supported yet." -msgstr "" -"Попытка уÑтановить GRUB на диÑк Ñ Ð½ÐµÑколькими разметками разделов. Это пока " -"не поддерживаетÑÑ." - -#: util/setup.c:489 -#, c-format -msgid "Partition style `%s' doesn't support embedding" -msgstr "Стиль раздела «%s» не поддерживает вÑтраивание" - -#: util/setup.c:496 -#, c-format -msgid "File system `%s' doesn't support embedding" -msgstr "Ð¤Ð°Ð¹Ð»Ð¾Ð²Ð°Ñ ÑиÑтема «%s» не поддерживает вÑтраивание" - -#: util/setup.c:537 -msgid "Your embedding area is unusually small. core.img won't fit in it." -msgstr "" -"Ð’ÑÑ‚Ñ€Ð°Ð¸Ð²Ð°ÐµÐ¼Ð°Ñ Ð¾Ð±Ð»Ð°Ñть необычно маленького размера. core.img не влезет в неё." - -#: util/setup.c:559 util/setup.c:725 util/setup.c:844 -msgid "no terminator in the core image" -msgstr "в базовом образе нет метки окончаниÑ" - -#: util/setup.c:622 -msgid "core.img version mismatch" -msgstr "ÐеÑоответÑтвие верÑии core.img" - -#: util/setup.c:675 -msgid "" -"embedding is not possible, but this is required for RAID and LVM install" -msgstr "вÑтраивание невозможно, но оно необходимо при уÑтановке на RAID и LVM" - -#: util/setup.c:682 -#, c-format -msgid "can't determine filesystem on %s" -msgstr "невозможно определить тип файловой ÑиÑтемы на %s" - -#: util/setup.c:685 -#, c-format -msgid "filesystem `%s' doesn't support blocklists" -msgstr "Ñ„Ð°Ð¹Ð»Ð¾Ð²Ð°Ñ ÑиÑтема «%s» не поддерживает ÑпиÑки блоков" - -#. TRANSLATORS: cross-disk refers to /boot being on one disk -#. but MBR on another. -#: util/setup.c:694 -msgid "embedding is not possible, but this is required for cross-disk install" -msgstr "вÑтраивание невозможно, но оно необходимо Ð´Ð»Ñ Ð¼ÐµÐ¶Ð´Ð¸Ñковой уÑтановки" - -#: util/setup.c:700 -msgid "" -"Embedding is not possible. GRUB can only be installed in this setup by " -"using blocklists. However, blocklists are UNRELIABLE and their use is " -"discouraged." -msgstr "" -"Ð’Ñтраивание невозможно. При имеющихÑÑ Ð¿Ð°Ñ€Ð°Ð¼ÐµÑ‚Ñ€Ð°Ñ… GRUB можно уÑтановить " -"только Ñ Ð¿Ð¾Ð¼Ð¾Ñ‰ÑŒÑŽ ÑпиÑка блоков (blocklists). Однако, ÑпиÑок блоков ÑвлÑетÑÑ " -"ÐЕÐÐДÐЖÐЫМ механизмом и его лучше не иÑпользовать." - -#. TRANSLATORS: Here GRUB refuses to continue with blocklist install. -#: util/setup.c:705 -msgid "will not proceed with blocklists" -msgstr "не будет продолжена Ñ Ð¸Ñпользованием blocklists" - -#: util/setup.c:817 util/setup.c:837 -msgid "blocklists are invalid" -msgstr "некорректный ÑпиÑок блоков" - -#: util/setup.c:847 -msgid "blocklists are incomplete" -msgstr "незавершённый ÑпиÑок блоков" - -#~ msgid "%.*s: ARGP_HELP_FMT parameter must be positive" -#~ msgstr "%.*s: значение параметра ARGP_HELP_FMT должно быть положительным" - -#~ msgid "%s: option '--%s' doesn't allow an argument\n" -#~ msgstr "%s: у параметра «--%s» не может быть аргумента\n" - -#~ msgid "%s: unrecognized option '--%s'\n" -#~ msgstr "%s: неизвеÑтный параметр «--%s»\n" - -#~ msgid "%s: option '-W %s' doesn't allow an argument\n" -#~ msgstr "%s: у параметра «-W %s» не может быть аргумента\n" - -#~ msgid "%s: option '-W %s' requires an argument\n" -#~ msgstr "%s: параметру «-W %s» требуетÑÑ Ð°Ñ€Ð³ÑƒÐ¼ÐµÐ½Ñ‚\n" - -#~ msgid "Usage: %s -o OUTPUT CKBMAP_ARGUMENTS...\\n" -#~ msgstr "ИÑпользование: %s -o ВЫВОД ÐРГУМЕÐТЫ_CKBMAP…\\n" - -#~ msgid "Make GRUB keyboard layout file." -#~ msgstr "Создаёт файл раÑкладки клавиатуры GRUB." - -#~ msgid "print this message and exit" -#~ msgstr "показать Ñту Ñправку и закончить работу" - -#~ msgid "print the version information and exit" -#~ msgstr "показать информацию о верÑии и завершить работу" - -#~ msgid "%s generates a keyboard layout for GRUB using ckbcomp\\n" -#~ msgstr "%s генерирует раÑкладку клавиатуры GRUB Ñ Ð¿Ð¾Ð¼Ð¾Ñ‰ÑŒÑŽ ckbcomp\\n" - -#~ msgid "Report bugs to ." -#~ msgstr "Ð¡Ð¾Ð¾Ð±Ñ‰ÐµÐ½Ð¸Ñ Ð¾Ð± ошибках отправлÑйте на ." - -#~ msgid "%s: option requires an argument -- `%s'\\n" -#~ msgstr "%s: параметр должен иÑпользоватьÑÑ Ñ Ð°Ñ€Ð³ÑƒÐ¼ÐµÐ½Ñ‚Ð¾Ð¼ — «%s»\\n" - -#~ msgid "Usage: %s [OPTION]\\n" -#~ msgstr "ИÑпользование: %s [ПÐРÐМЕТР]\\n" - -#~ msgid "Generate a grub config file" -#~ msgstr "Генерирует файл наÑтройки grub" - -#~ msgid "output generated config to FILE [default=stdout]" -#~ msgstr "вывеÑти Ñгенерированные наÑтройки в ФÐЙЛ [по умолчанию stdout]" - -#~ msgid "Unrecognized option `%s'\\n" -#~ msgstr "ÐеизвеÑтный параметр «%s»\\n" - -#~ msgid "%s: You must run this as root\\n" -#~ msgstr "%s: Ð’Ñ‹ должны запуÑкать программу Ð¸Ð¼ÐµÑ Ð¿Ñ€Ð°Ð²Ð° ÑуперпользователÑ\\n" - -#~ msgid "%s: Not found.\\n" -#~ msgstr "%s: не найдено.\\n" - -#~ msgid "Generating grub configuration file ..." -#~ msgstr "ГенерируетÑÑ Ñ„Ð°Ð¹Ð» наÑтройки grub …" - -#~ msgid "" -#~ "Syntax errors are detected in generated GRUB config file.\n" -#~ "Ensure that there are no errors in /etc/default/grub\n" -#~ "and /etc/grub.d/* files or please file a bug report with\n" -#~ "%s file attached." -#~ msgstr "" -#~ "Ð’ Ñгенерированном файле наÑтроек GRUB обнаружены ÑинтакÑичеÑкие ошибки.\n" -#~ "УбедитеÑÑŒ, что в файлах /etc/default/grub\n" -#~ "и /etc/grub.d/* ошибки отÑутÑтвуют или пошлите Ñообщение об ошибке\n" -#~ "в прикреплённым файлом %s." - -#~ msgid "done" -#~ msgstr "завершено" - -#~ msgid "Warning:" -#~ msgstr "Предупреждение:" - -#~ msgid "Usage: %s [OPTION] MENU_ENTRY\\n" -#~ msgstr "ИÑпользование: %s [ПÐРÐМЕТР] ПУÐКТ_МЕÐЮ\\n" - -#~ msgid "Set the default boot menu entry for GRUB, for the next boot only." -#~ msgstr "" -#~ "Ðазначает пункт меню в GRUB Ð´Ð»Ñ Ð·Ð°Ð³Ñ€ÑƒÐ·ÐºÐ¸ по умолчанию, только Ð´Ð»Ñ " -#~ "Ñледующей загрузки." - -#~ msgid "" -#~ "expect GRUB images under the directory DIR/%s instead of the %s directory" -#~ msgstr "образы GRUB находÑÑ‚ÑÑ Ð² каталоге КÐТ/%s, а не в каталоге %s" - -#~ msgid "" -#~ "MENU_ENTRY is a number, a menu item title or a menu item identifier. " -#~ "Please note that menu items in\n" -#~ "submenus or sub-submenus require specifying the submenu components and " -#~ "then the\n" -#~ "menu item component. The titles should be separated using the greater-" -#~ "than\n" -#~ "character (>) with no extra spaces. Depending on your shell some " -#~ "characters including > may need escaping. More information about this is " -#~ "available\n" -#~ "in the GRUB Manual in the section about the 'default' command. " -#~ msgstr "" -#~ "ПУÐКТ_МЕÐЮ — Ñто чиÑло, заголовок или идентификатор пункта меню.\n" -#~ "Заметим, что пункты меню в подменю или под-подменю требуют указаниÑ\n" -#~ "компонентов подменю и Ñамого компонента пункта меню. Заголовки должны\n" -#~ "отделÑтьÑÑ Ñ Ð¿Ð¾Ð¼Ð¾Ñ‰ÑŒÑŽ Ñимвола «больше» (>) без дополнительных пробелов.\n" -#~ "Ð’ завиÑимоÑти от вашей оболочки некоторые Ñимволы, Ð²ÐºÐ»ÑŽÑ‡Ð°Ñ >, могут\n" -#~ "ÑкранироватьÑÑ. Дополнительную информацию об Ñтом можно найти в\n" -#~ "руководÑтве GRUB, в разделе о команде «default». " - -#~ msgid "More than one menu entry?" -#~ msgstr "Более одного пункта меню?" - -#~ msgid "Menu entry not specified." -#~ msgstr "Пункт меню не задан." - -#~ msgid "Set the default boot menu entry for GRUB." -#~ msgstr "Ðазначает пункт меню GRUB Ð´Ð»Ñ Ð·Ð°Ð³Ñ€ÑƒÐ·ÐºÐ¸ по умолчанию." - -#~ msgid "This requires setting GRUB_DEFAULT=saved in %s/default/grub.\\n" -#~ msgstr "Ð”Ð»Ñ Ñтого требуетÑÑ Ñтрока GRUB_DEFAULT=saved в %s/default/grub.\\n" - -#~ msgid "MENU_ENTRY is a number, a menu item title or a menu item identifier." -#~ msgstr "" -#~ "ПУÐКТ_МЕÐЮ задаётÑÑ Ð½Ð¾Ð¼ÐµÑ€Ð¾Ð¼, заголовком или идентификатором пункта меню." - -#~ msgid "" -#~ "Requested serial terminal but GRUB_SERIAL_COMMAND is unspecified. Default " -#~ "parameters will be used." -#~ msgstr "" -#~ "ЗапрашиваетÑÑ Ð¿Ð¾Ñледовательный терминал, но GRUB_SERIAL_COMMAND не " -#~ "задана. Будут иÑпользованы параметры по умолчанию." - -#~ msgid "Found theme: %s\\n" -#~ msgstr "Ðайдена тема: %s\\n" - -#~ msgid "Found background: %s\\n" -#~ msgstr "Ðайден фон: %s\\n" - -#~ msgid "Unsupported image format" -#~ msgstr "Ðеподдерживаемый формат изображениÑ" - -#~ msgid "" -#~ "Setting GRUB_TIMEOUT to a non-zero value when GRUB_HIDDEN_TIMEOUT is set " -#~ "is no longer supported." -#~ msgstr "" -#~ "Ðазначение GRUB_TIMEOUT ненулевого Ð·Ð½Ð°Ñ‡ÐµÐ½Ð¸Ñ Ð¿Ñ€Ð¸ заданной " -#~ "GRUB_HIDDEN_TIMEOUT больше не поддерживаетÑÑ." - -#~ msgid "Found GNU Mach: %s" -#~ msgstr "Ðайден GNU Mach: %s" - -#~ msgid "Found Hurd module: %s" -#~ msgstr "Ðайден модуль Hurd: %s" - -#~ msgid "Some Hurd stuff found, but not enough to boot." -#~ msgstr "" -#~ "Ðайдены некоторые компоненты Hurd, но их недоÑтаточно Ð´Ð»Ñ Ð·Ð°Ð³Ñ€ÑƒÐ·ÐºÐ¸ " -#~ "ÑиÑтемы." - -#~ msgid "%s, with Hurd %s (recovery mode)" -#~ msgstr "%s, Ñ Hurd %s (режим воÑÑтановлениÑ)" - -#~ msgid "%s, with Hurd %s" -#~ msgstr "%s, Ñ Hurd %s" - -#~ msgid "" -#~ "Please don't use old title `%s' for GRUB_DEFAULT, use `%s' (for versions " -#~ "before 2.00) or `%s' (for 2.00 or later)" -#~ msgstr "" -#~ "Ðе иÑпользуйте Ñтарое название «%s» Ð´Ð»Ñ GRUB_DEFAULT, иÑпользуйте " -#~ "«%s» (Ð´Ð»Ñ Ð²ÐµÑ€Ñий Ñтарее 2.00) или «%s» (Ð´Ð»Ñ 2.00 или новее)" - -#~ msgid "Loading GNU Mach ..." -#~ msgstr "ЗагружаетÑÑ GNU Mach …" - -#~ msgid "Loading the Hurd ..." -#~ msgstr "ЗагружаетÑÑ Hurd …" - -#~ msgid "Advanced options for %s" -#~ msgstr "Дополнительные параметры Ð´Ð»Ñ %s" - -#~ msgid "Loading kernel of Illumos ..." -#~ msgstr "ЗагружаетÑÑ Ñдро Illumos …" - -#~ msgid "%s, with kFreeBSD %s (recovery mode)" -#~ msgstr "%s, Ñ kFreeBSD %s (режим воÑÑтановлениÑ)" - -#~ msgid "%s, with kFreeBSD %s" -#~ msgstr "%s, Ñ kFreeBSD %s" - -#~ msgid "Loading kernel of FreeBSD %s ..." -#~ msgstr "ЗагружаетÑÑ Ñдро FreeBSD %s …" - -#~ msgid "Found kernel of FreeBSD: %s\\n" -#~ msgstr "Ðайдено Ñдро FreeBSD: %s\\n" - -#~ msgid "Found kernel module directory: %s\\n" -#~ msgstr "Ðайден каталог модулей Ñдра: %s\\n" - -#~ msgid "%s, with Linux %s (recovery mode)" -#~ msgstr "%s, Ñ Linux %s (режим воÑÑтановлениÑ)" - -#~ msgid "%s, with Linux %s" -#~ msgstr "%s, Ñ Linux %s" - -#~ msgid "Loading Linux %s ..." -#~ msgstr "ЗагружаетÑÑ Linux %s …" - -#~ msgid "Loading initial ramdisk ..." -#~ msgstr "ЗагружаетÑÑ Ð½Ð°Ñ‡Ð°Ð»ÑŒÐ½Ñ‹Ð¹ виртуальный диÑк …" - -#~ msgid "Found linux image: %s\\n" -#~ msgstr "Ðайден образ linux: %s\\n" - -#~ msgid "Found initrd image: %s\\n" -#~ msgstr "Ðайден образ initrd: %s\\n" - -#~ msgid "%s, with kernel %s (via %s, recovery mode)" -#~ msgstr "%s, Ñ Ñдром %s (Ñ Ð¸Ñпользованием %s, режим воÑÑтановлениÑ)" - -#~ msgid "%s, with kernel %s (via %s)" -#~ msgstr "%s, Ñ Ñдром %s (Ñ Ð¸Ñпользованием %s)" - -#~ msgid "Found NetBSD kernel: %s\\n" -#~ msgstr "Ðайдено Ñдро NetBSD: %s\\n" - -#~ msgid "Windows Vista/7 (loader)" -#~ msgstr "Windows Vista/7 (загрузчик)" - -#~ msgid "Windows NT/2000/XP (loader)" -#~ msgstr "Windows NT/2000/XP (загрузчик)" - -#~ msgid "Found %s on %s (%s)\\n" -#~ msgstr "Ðайден %s на %s (%s)\\n" - -#~ msgid "(32-bit)" -#~ msgstr "(32-бит)" - -#~ msgid "(64-bit)" -#~ msgstr "(64-бит)" - -#~ msgid "(on %s)" -#~ msgstr "(на %s)" - -#~ msgid "%s, with Xen %s and Linux %s (recovery mode)" -#~ msgstr "%s, Ñ Xen %s и Linux %s (режим воÑÑтановлениÑ)" - -#~ msgid "%s, with Xen %s and Linux %s" -#~ msgstr "%s, Ñ Xen %s и Linux %s" - -#~ msgid "%s, with Xen hypervisor" -#~ msgstr "%s, Ñ Ð³Ð¸Ð¿ÐµÑ€Ð²Ð¸Ð·Ð¾Ñ€Ð¾Ð¼ Xen" - -#~ msgid "Loading Xen %s ..." -#~ msgstr "ЗагружаетÑÑ Xen %s …" - -#~ msgid "Xen hypervisor, version %s" -#~ msgstr "Гипервизор Xen, верÑÐ¸Ñ %s" - -#~ msgid "Advanced options for %s (with Xen hypervisor)" -#~ msgstr "Дополнительные параметры Ð´Ð»Ñ %s (Ñ Ð³Ð¸Ð¿ÐµÑ€Ð²Ð¸Ð·Ð¾Ñ€Ð¾Ð¼ Xen)" - -#~ msgid "Found %s on %s\\n" -#~ msgstr "Ðайден %s на %s\\n" - -#~ msgid "%s is not yet supported by grub-mkconfig.\\n" -#~ msgstr "%s пока не поддерживаетÑÑ grub-mkconfig.\\n" - -#~ msgid "Unsupported substitution flag: 0x%x\n" -#~ msgstr "Ðеподдерживаемый флаг подÑтановки: 0x%x\n" - -#~ msgid "Unknown gsub font feature 0x%x (%s)\n" -#~ msgstr "ÐеизвеÑтное шрифтовое ÑвойÑтво gsub 0x%x (%s)\n" - -#~ msgid "Address range not associated with RAM" -#~ msgstr "ÐдреÑный диапазон не ÑопоÑтавленный Ñ Ð¿Ð°Ð¼Ñтью" - -#~ msgid "PUBKEY_FILE" -#~ msgstr "ФÐЙЛ_С_ОТКРЫТЫМ_КЛЮЧОМ" - -#~ msgid "grub_memalign is not supported on your system" -#~ msgstr "grub_memalign не поддерживаетÑÑ Ð² вашей ÑиÑтеме" - -#~ msgid "If FILENAME is `-', the default value %s is used." -#~ msgstr "" -#~ "ЕÑли в ИМЕÐИ_ФÐЙЛРуказано «-», то иÑпользуетÑÑ Ð·Ð½Ð°Ñ‡ÐµÐ½Ð¸Ðµ по умолчанию %s." - -#~ msgid "save only the ASCII bitmaps" -#~ msgstr "Ñохранить только битовые карты ASCII" - -#~ msgid "create width summary file" -#~ msgstr "Ñоздать широкий обзорный файл" - -#~ msgid "Option --ascii-bitmaps doesn't accept ranges (it always uses ASCII)." -#~ msgstr "" -#~ "Параметр --ascii-bitmaps не воÑпринимает диапазоны (вÑегда иÑпользуетÑÑ " -#~ "ASCII)." - -#~ msgid "WARNING: your random generator isn't known to be secure\n" -#~ msgstr "ПРЕДУПРЕЖДЕÐИЕ: возможно небезопаÑный генератор Ñлучайных чиÑел\n" - -#~ msgid "" -#~ "print filesystem module, GRUB drive, system device, partition map module, " -#~ "abstraction module or cryptographic container UUID [default=fs]" -#~ msgstr "" -#~ "показать модуль файловой ÑиÑтемы, привод GRUB, ÑиÑтемное уÑтройÑтво, " -#~ "модуль карты разделов, модуль абÑтракции или UUID зашифрованного " -#~ "контейнера [по умолчанию fs]" - -#~ msgid "failed to read the first sector of the core image" -#~ msgstr "не удалоÑÑŒ прочитать первый Ñектор базового образа" - -#~ msgid "use FILE as grub-setup" -#~ msgstr "в качеÑтве grub-setup иÑпользовать ФÐЙЛ" - -#~ msgid "use FILE as grub-mkrelpath" -#~ msgstr "в качеÑтве grub-mkrelpath иÑпользовать ФÐЙЛ" - -#~ msgid "use FILE as grub-probe" -#~ msgstr "в качеÑтве grub-probe иÑпользовать ФÐЙЛ" - -#~ msgid "INSTALL_DEVICE must be system device filename." -#~ msgstr "" -#~ "Значение УСТРОЙСТВÐ_ДЛЯ_УСТÐÐОВКИ должно быть именем файла ÑиÑтемного " -#~ "уÑтройÑтва." - -#~ msgid "" -#~ "Path `%s' is not readable by GRUB on boot. Installation is impossible. " -#~ "Aborting.\\n" -#~ msgstr "" -#~ "GRUB не может прочитать путь «%s» при загрузке. УÑтановка невозможна. " -#~ "Выполнение оÑтановлено.\\n" - -#~ msgid "Auto-detection of a filesystem of %s failed.\\n" -#~ msgstr "Ðвтоопределение файловой ÑиÑтемы %s завершилоÑÑŒ Ñ Ð¾ÑˆÐ¸Ð±ÐºÐ¾Ð¹.\\n" - -#~ msgid "Try with --recheck." -#~ msgstr "Попробуйте Ñ --recheck." - -#~ msgid "" -#~ "If the problem persists please report this together with the output of %s " -#~ "to <%s>" -#~ msgstr "" -#~ "ЕÑли проблема оÑталаÑÑŒ, пошлите Ñообщение об ошибке вмеÑте Ñ Ð²Ñ‹Ð²Ð¾Ð´Ð¾Ð¼ %s " -#~ "по адреÑу <%s>" - -#~ msgid "`%s' failed.\\n" -#~ msgstr "«%s» завершилаÑÑŒ Ñ Ð¾ÑˆÐ¸Ð±ÐºÐ¾Ð¹.\\n" - -#~ msgid "" -#~ "Can't find GRUB drive for %s; unable to create EFI Boot Manager entry.\\n" -#~ msgstr "" -#~ "Ðе удалоÑÑŒ найти привод GRUB Ð´Ð»Ñ %s; невозможно Ñоздать Ñлемент EFI Boot " -#~ "Manager.\\n" - -#~ msgid "Generating grub.cfg ..." -#~ msgstr "ГенерируетÑÑ grub.cfg …" - -#~ msgid "" -#~ "%s copies GRUB images into net_directory/subdir/target_cpu-platform\\n" -#~ msgstr "" -#~ "%s копирует образы GRUB в net_directory/subdir/target_cpu-platform\\n" - -#~ msgid "use FILE as grub-glue-efi" -#~ msgstr "в качеÑтве grub-glue-efi иÑпользовать ФÐЙЛ" - -#~ msgid "use FILE as grub-render-label" -#~ msgstr "в качеÑтве grub-render-label иÑпользовать ФÐЙЛ" - -#~ msgid "Packed pixel " -#~ msgstr "Упакованный пикÑель" - -#~ msgid "use GRUB images from DIR. Takes precedence over target" -#~ msgstr "" -#~ "иÑпользовать образы GRUB из КÐТÐЛОГÐ. Имеет преимущеÑтво перед параметром " -#~ "ЦЕЛИ" - -#~ msgid "Storage info for `%s' does not include name" -#~ msgstr "Ð˜Ð½Ñ„Ð¾Ñ€Ð¼Ð°Ñ†Ð¸Ñ Ð¾ хранилище «%s» не Ñодержит имени" - -#~ msgid "Bogus name length for storage info for `%s'" -#~ msgstr "ÐŸÐ¾Ð´Ð´ÐµÐ»ÑŒÐ½Ð°Ñ Ð´Ð»Ð¸Ð½Ð° имени информации о хранилище «%s»" - -#~ msgid "Storage name for `%s' not NUL-terminated" -#~ msgstr "Ð˜Ð¼Ñ Ñ…Ñ€Ð°Ð½Ð¸Ð»Ð¸Ñ‰Ð° Ð´Ð»Ñ Â«%s» не заканчиваетÑÑ NUL" - -#~ msgid "Couldn't find physical volume `%s'. Check your device.map" -#~ msgstr "Ðевозможно найти физичеÑкий том «%s». Проверьте device.map" - -#~ msgid "diskboot.img is not one sector size" -#~ msgstr "размер diskboot.img не равен размеру одного Ñектора" - -#~ msgid "loopback command fails" -#~ msgstr "команда loopback завершилаÑÑŒ неудачно" - -#~ msgid "cryptomount command fails: %s" -#~ msgstr "команда cryptomount завершилаÑÑŒ Ñ Ð¾ÑˆÐ¸Ð±ÐºÐ¾Ð¹: %s" - -#~ msgid "%s: option requires an argument -- `%s'" -#~ msgstr "%s: параметру требуетÑÑ Ð°Ñ€Ð³ÑƒÐ¼ÐµÐ½Ñ‚ — «%s»" - -#~ msgid "Legend: P=Packed pixel, D=Direct color, mask/pos=R/G/B/reserved" -#~ msgstr "" -#~ "ОбозначениÑ: P=Упакованный пикÑель, D=ПрÑмой цвет, маÑка/положение=R/G/B/" -#~ "reserved" - -#~ msgid "FIXME: no / in buf. (make_system_path_relative_to_its_root)" -#~ msgstr "FIXME: no / in buf. (make_system_path_relative_to_its_root)" - -#~ msgid "Make GRUB rescue image." -#~ msgstr "Создаёт образ воÑÑÑ‚Ð°Ð½Ð¾Ð²Ð»ÐµÐ½Ð¸Ñ GRUB." - -#~ msgid "Show v2 and v3 tablesv only." -#~ msgstr "Показать только tablesv v2 и v3." - -#~ msgid "Unknown " -#~ msgstr "ÐеизвеÑтно " - -#~ msgid "Map table size exceeded" -#~ msgstr "Превышен размер таблицы отображениÑ" - -#~ msgid "Try `%s --help' for more information.\n" -#~ msgstr "По команде «%s --help» можно получить дополнительную информацию.\n" - -#~ msgid "" -#~ "Usage: %s [OPTION]...\n" -#~ "\n" -#~ "GRUB emulator.\n" -#~ "\n" -#~ " -r, --root-device=DEV use DEV as the root device [default=host]\n" -#~ " -m, --device-map=FILE use FILE as the device map [default=%s]\n" -#~ " -d, --directory=DIR use GRUB files in the directory DIR [default=" -#~ "%s]\n" -#~ " -v, --verbose print verbose messages\n" -#~ " -H, --hold[=SECONDS] wait until a debugger will attach\n" -#~ " -h, --help display this message and exit\n" -#~ " -V, --version print version information and exit\n" -#~ "\n" -#~ "Report bugs to <%s>.\n" -#~ msgstr "" -#~ "ИÑпользование: %s [ПÐРÐМЕТР]…\n" -#~ "\n" -#~ "ЭмулÑтор GRUB.\n" -#~ "\n" -#~ " -r, --root-device=УСТР иÑпользовать УСТРойÑтво в качеÑтве корневого\n" -#~ " уÑтройÑтва [по умолчанию — узел]\n" -#~ " -m, --device-map=ФÐЙЛ иÑпользовать ФÐЙЛ в качеÑтве карты уÑтройÑтва\n" -#~ " [по умолчанию — %s]\n" -#~ " -d, --directory=КÐТ иÑпользовать файлы GRUB из КÐТалога\n" -#~ " [по умолчанию — %s]\n" -#~ " -v, --verbose выводить доп. информацию при работе\n" -#~ " -H, --hold[=СЕКУÐД] ждать приÑÐ¾ÐµÐ´Ð¸Ð½ÐµÐ½Ð¸Ñ Ð¾Ñ‚Ð»Ð°Ð´Ñ‡Ð¸ÐºÐ°\n" -#~ " -h, --help показать Ñту Ñправку и завершить работу\n" -#~ " -V, --version показать верÑию и завершить работу\n" -#~ "\n" -#~ "Ð¡Ð¾Ð¾Ð±Ñ‰ÐµÐ½Ð¸Ñ Ð¾Ð± ошибках направлÑйте на <%s>.\n" - -#~ msgid "" -#~ "%s is deprecated. Use set gfxpayload=text before linux command instead.\n" -#~ msgstr "" -#~ "%s уÑтарел. ИÑпользуйте вмеÑто него set gfxpayload=text до команды " -#~ "linux.\n" - -#~ msgid "Serial terminal not available on this platform." -#~ msgstr "ПоÑледовательный терминал недоÑтупен на Ñтой платформе." - -#~ msgid "Usage: %s [OPTION] install_device" -#~ msgstr "ИÑпользование: %s [ПÐРÐМЕТР] install_device" - -#~ msgid "Usage: %s [OPTION] [install_device]" -#~ msgstr "ИÑпользование: %s [ПÐРÐМЕТР] [install_device]" - -#~ msgid "the ID of bootloader." -#~ msgstr "ID ÑиÑтемного загрузчика." - -#~ msgid "" -#~ "UUID needed with ata mod, but the filesystem containing %s does not " -#~ "support UUIDs.\\n" -#~ msgstr "" -#~ "Ð”Ð»Ñ Ð¼Ð¾Ð´ÑƒÐ»Ñ ata требуетÑÑ UUID, но Ñ„Ð°Ð¹Ð»Ð¾Ð²Ð°Ñ ÑиÑтема на %s не поддерживает " -#~ "UUID.\\n" - -#~ msgid "" -#~ "UUID needed with cross-disk installs, but the filesystem containing %s " -#~ "does not support UUIDs.\\n" -#~ msgstr "" -#~ "Ð”Ð»Ñ ÑƒÑтановки на неÑколько диÑков требуетÑÑ UUID, но Ñ„Ð°Ð¹Ð»Ð¾Ð²Ð°Ñ ÑиÑтема на " -#~ "%s не поддерживает UUID.\\n" - -#~ msgid "No font for video terminal found." -#~ msgstr "Ðе найден шрифт Ð´Ð»Ñ Ð²Ð¸Ð´ÐµÐ¾Ñ‚ÐµÑ€Ð¼Ð¸Ð½Ð°Ð»Ð°." - -#~ msgid "Usage: %s [OPTION] install_device\\n" -#~ msgstr "ИÑпользование: %s [ПÐРÐМЕТР] install_device\\n" - -#~ msgid "Usage: %s [OPTION] entry\\n" -#~ msgstr "ИÑпользование: %s [ПÐРÐМЕТР] Ñлемент\\n" - -#~ msgid "Expose v1 tables." -#~ msgstr "Обработать таблицы v1." - -#~ msgid "(N/A)" -#~ msgstr "(Ð/Д)" - -#~ msgid "Fake BIOS." -#~ msgstr "ÐенаÑтоÑщий BIOS." - -#~ msgid "Check hash list file." -#~ msgstr "Проверить файл Ñо ÑпиÑком Ñ…Ñшей." - -#~ msgid "DIRECTORY" -#~ msgstr "КÐТÐЛОГ" - -#~ msgid "Read word from PORT." -#~ msgstr "Прочитать Ñлово из ПОРТа." - -#~ msgid "Read dword from PORT." -#~ msgstr "Прочитать двойное Ñлово из ПОРТа." - -#~ msgid "Write word VALUE to PORT." -#~ msgstr "ЗапиÑать ЗÐÐЧЕÐИЕ размером Ñ Ñлово в ПОРТ." - -#~ msgid "Write dword VALUE to PORT." -#~ msgstr "ЗапиÑать ЗÐÐЧЕÐИЕ размером Ñ Ð´Ð²Ð¾Ð¹Ð½Ð¾Ðµ Ñлово в ПОРТ." - -#~ msgid "[--shift] [--ctrl] [--alt]" -#~ msgstr "[--shift] [--ctrl] [--alt]" - -#~ msgid "[-1|-2]" -#~ msgstr "[-1|-2]" - -#~ msgid "BadRAM" -#~ msgstr "BadRAM" - -#~ msgid "hole" -#~ msgstr "дыра" - -#~ msgid "Read word from ADDR." -#~ msgstr "Прочитать Ñлово по ÐДРЕСУ." - -#~ msgid "Read dword from ADDR." -#~ msgstr "Прочитать двойное Ñлово по ÐДРЕСУ." - -#~ msgid "Write word VALUE to ADDR." -#~ msgstr "ЗапиÑать ЗÐÐЧЕÐИЕ размером Ñ Ñлово по ÐДРЕСУ." - -#~ msgid "Write dword VALUE to ADDR." -#~ msgstr "ЗапиÑать ЗÐÐЧЕÐИЕ размером Ñ Ð´Ð²Ð¾Ð¹Ð½Ð¾Ðµ Ñлово по ÐДРЕСУ." - -#~ msgid "USERNAME" -#~ msgstr "ИМЯ_ПОЛЬЗОВÐТЕЛЯ" - -#~ msgid "KEY" -#~ msgstr "КЛÐВИШÐ" - -#~ msgid "Menu entry definition as a string." -#~ msgstr "Определение пункта меню в виде Ñтроки." - -#~ msgid "Dump memory." -#~ msgstr "Сделать дамп памÑти." - -#~ msgid "SMB base = 0x%x\n" -#~ msgstr "База SMB = 0x%x\n" - -#~ msgid "Device %d\n" -#~ msgstr "УÑтройÑтво %d\n" - -#~ msgid "Variable names to update with matches." -#~ msgstr "Имена переменной Ð´Ð»Ñ Ð¾Ð±Ð½Ð¾Ð²Ð»ÐµÐ½Ð¸Ñ Ñ ÑовпадениÑми." - -#~ msgid " Failed" -#~ msgstr " ЗавершилоÑÑŒ неудачно" - -#~ msgid "Firmware is marked as tainted, refusing to initialize." -#~ msgstr "" -#~ "Микропрограмма помечена как бойкотируемаÑ, отклонение инициализации." - -#~ msgid "State: " -#~ msgstr "СоÑтоÑние: " - -#~ msgid "removed " -#~ msgstr "удалён " - -#~ msgid "offline " -#~ msgstr "не в работе " - -#~ msgid "degraded " -#~ msgstr "разрушен " - -#~ msgid "online" -#~ msgstr "в работе" - -#~ msgid "Leaf VDEV" -#~ msgstr "Слой VDEV" - -#~ msgid "Unknown VDEV type: %s\n" -#~ msgstr "ÐеизвеÑтный тип VDEV: %s\n" - -#~ msgid "fstat failed" -#~ msgstr "fstat завершилÑÑ Ð½ÐµÑƒÐ´Ð°Ñ‡Ð½Ð¾" - -#~ msgid "no device.map" -#~ msgstr "отÑутÑтвует device.map" - -#~ msgid "No open parenthesis found" -#~ msgstr "Ðе найдена Ð¾Ñ‚ÐºÑ€Ñ‹Ð²Ð°ÑŽÑ‰Ð°Ñ Ñкобка" - -#~ msgid "No close parenthesis found" -#~ msgstr "Ðе найдена Ð·Ð°ÐºÑ€Ñ‹Ð²Ð°ÑŽÑ‰Ð°Ñ Ñкобка" - -#~ msgid "No filename found" -#~ msgstr "Ðе найдено Ð¸Ð¼Ñ Ñ„Ð°Ð¹Ð»Ð°" - -#~ msgid "cannot get the real path of `%s'" -#~ msgstr "невозможно получить реальный путь «%s»" - -#~ msgid "relocate is %s\n" -#~ msgstr "перемещение равно %s\n" - -#~ msgid "Load an additional file." -#~ msgstr "Загрузить дополнительный файл." - -#~ msgid "[on|off|force]" -#~ msgstr "[on|off|force]" - -#~ msgid "Set relocate feature." -#~ msgstr "ÐаÑтроить ÑвойÑтво перемещениÑ." - -#~ msgid "premature end of file %s: " -#~ msgstr "преждевременный конец файла %s: " - -#~ msgid "At least 3 arguments are expected" -#~ msgstr "ОжидаетÑÑ Ð½Ðµ менее 3 аргументов" - -#~ msgid "Authenticate users" -#~ msgstr "ÐÑƒÑ‚ÐµÐ½Ñ‚Ð¸Ñ„Ð¸ÐºÐ°Ñ†Ð¸Ñ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»ÐµÐ¹" - -#~ msgid "Make partition hidden" -#~ msgstr "Сделать раздел Ñкрытым" - -#~ msgid "[n]" -#~ msgstr "[n]" - -#~ msgid "UTF-8 visual" -#~ msgstr "UTF-8 видимаÑ" - -#~ msgid "Unknown" -#~ msgstr "ÐеизвеÑтно" - -#~ msgid "cannot stat `%s'" -#~ msgstr "невозможно выполнить stat «%s»" - -#~ msgid "Print verbose messages." -#~ msgstr "Показывать подробные ÑообщениÑ." - -#~ msgid "cannot seek the file %s" -#~ msgstr "не удалоÑÑŒ ÑмеÑтитÑÑ Ð¿Ð¾ файлу %s" - -#~ msgid "cannot read the file %s" -#~ msgstr "не удалоÑÑŒ прочитать файл %s" - -#~ msgid "can't open device" -#~ msgstr "не удалоÑÑŒ открыть уÑтройÑтво" - -#~ msgid "write error" -#~ msgstr "ошибка запиÑи" - -#~ msgid "seek error" -#~ msgstr "ошибка позиционированиÑ" - -#~ msgid "Hex dump FILE." -#~ msgstr "ШеÑтнадцатеричный дамп ФÐЙЛÐ." - -#~ msgid "Error loading file %s: %s\n" -#~ msgstr "Ошибка загрузки файла %s: %s\n" - -#~ msgid "Couldn't open %s for reading: %s\n" -#~ msgstr "Ðе удалоÑÑŒ открыть %s Ð´Ð»Ñ Ñ‡Ñ‚ÐµÐ½Ð¸Ñ: %s\n" - -#~ msgid "Couldn't open %s for writing: %s\n" -#~ msgstr "Ðе удалоÑÑŒ открыть %s Ð´Ð»Ñ Ð·Ð°Ð¿Ð¸Ñи: %s\n" - -#~ msgid "" -#~ "\n" -#~ "Glyph #%d, U+%04x\n" -#~ msgstr "" -#~ "\n" -#~ "Глиф #%d, U+%04x\n" - -#~ msgid "Width %d, Height %d, X offset %d, Y offset %d, Device width %d\n" -#~ msgstr "" -#~ "Ширина %d, Ð’Ñ‹Ñота %d, X-Ñмещение %d, Y-Ñмещение %d, Ширина уÑтройÑтва %d\n" - -#~ msgid "set output file" -#~ msgstr "задать выходной файл" - -#~ msgid "STR" -#~ msgstr "СТРОКÐ" - -#~ msgid "no output file is specified" -#~ msgstr "не указан выходной файл" - -#~ msgid "the core image is too big" -#~ msgstr "базовый образ Ñлишком большой" - -#~ msgid "use images and modules under DIR [default=%s/@platform@]" -#~ msgstr "" -#~ "иÑпользовать образы и модули из КÐТÐЛОГР[по умолчанию %s/@platform@]" - -#~ msgid "" -#~ "generate an image in format.\n" -#~ "available formats: %s" -#~ msgstr "" -#~ "генерирует образ в заданном формате.\n" -#~ "доÑтупные форматы: %s" - -#~ msgid "cannot open %s" -#~ msgstr "не удалоÑÑŒ открыть %s" - -#~ msgid "" -#~ "Usage: %s [OPTIONS]\n" -#~ "\n" -#~ "Report bugs to <%s>.\n" -#~ msgstr "" -#~ "ИÑпользование: %s [ПÐРÐМЕТРЫ]\n" -#~ "\n" -#~ "Ð¡Ð¾Ð¾Ð±Ñ‰ÐµÐ½Ð¸Ñ Ð¾Ð± ошибках: <%s>.\n" - -#~ msgid "Unknown key %s\n" -#~ msgstr "ÐеизвеÑÑ‚Ð½Ð°Ñ ÐºÐ»Ð°Ð²Ð¸ÑˆÐ° %s\n" - -#~ msgid "Couldn't open input file: %s\n" -#~ msgstr "Ðе удалоÑÑŒ открыть входной файл: %s\n" - -#~ msgid "Couldn't open output file: %s\n" -#~ msgstr "Ðе удалоÑÑŒ открыть выходной файл: %s\n" - -#~ msgid "Your PBKDF2 is grub.pbkdf2.sha512.%d.%s.%s\n" -#~ msgstr "Ваш PBKDF2 — grub.pbkdf2.sha512.%d.%s.%s\n" - -#~ msgid "Make a system path relative to its root." -#~ msgstr "Делает ÑиÑтемный путь отноÑительным его корнÑ." - -#~ msgid "No terminator in the core image" -#~ msgstr "Ð’ базовом образе нет метки окончаниÑ" - -#~ msgid "Use FILE as the device map [default=%s]" -#~ msgstr "ИÑпользовать ФÐЙЛ в качеÑтве карты уÑтройÑтва [по умолчанию %s]" - -#~ msgid "DEV" -#~ msgstr "УСТР" - -#~ msgid "Use DEV as the root device [default=guessed]" -#~ msgstr "" -#~ "ИÑпользовать УСТР в качеÑтве корневого уÑтройÑтва [по умолчанию " -#~ "выполнÑетÑÑ Ð¾Ð¿Ñ€ÐµÐ´ÐµÐ»ÐµÐ½Ð¸Ðµ]" - -#~ msgid "Install even if problems are detected" -#~ msgstr "УÑтановить даже еÑли обнаружены проблемы" - -#~ msgid "cannot open 'vendor' node of `%s'" -#~ msgstr "не удалоÑÑŒ открыть узел «vendor» у «%s»" - -#~ msgid "cannot read 'vendor' node of `%s'" -#~ msgstr "не удалоÑÑŒ прочитать узел «vendor» у «%s»" - -#~ msgid "cannot open SAS PHY ID `%s'\n" -#~ msgstr "не удалоÑÑŒ открыть SAS PHY ID «%s»\n" - -#~ msgid "fflush failed" -#~ msgstr "Ð¾Ð¿ÐµÑ€Ð°Ñ†Ð¸Ñ fflush завершилаÑÑŒ неудачно" - -#~ msgid "cannot stat %s" -#~ msgstr "не удалоÑÑŒ выполнить stat Ð´Ð»Ñ %s" - -#~ msgid "write failed" -#~ msgstr "запиÑÑŒ завершилаÑÑŒ неудачно" - -#~ msgid "do not probe any floppy drive" -#~ msgstr "не проверÑть диÑководы гибких диÑков" - -#~ msgid "output file must be given" -#~ msgstr "должен быть указан выходной файл" - -#~ msgid "format must be specified" -#~ msgstr "требуетÑÑ ÑƒÐºÐ°Ð·Ð°Ñ‚ÑŒ формат" - -#~ msgid "Unload PXE environment." -#~ msgstr "Выгрузить окружение PXE." - -#~ msgid "[DEVICE]" -#~ msgstr "[УСТРОЙСТВО]" - -#~ msgid "open error" -#~ msgstr "ошибка открытиÑ" - -#~ msgid "Must use absolute path.\n" -#~ msgstr "Должен иÑпользоватьÑÑ Ð°Ð±Ñолютный путь.\n" - -#~ msgid "the core image is too small" -#~ msgstr "базовый образ Ñлишком мал" - -#~ msgid "prefix is too long" -#~ msgstr "Ñлишком длинный префикÑ" - -#~ msgid "" -#~ "Usage: %s [OPTION]... [MODULES]\n" -#~ "\n" -#~ "Make a bootable image of GRUB.\n" -#~ "\n" -#~ " -d, --directory=DIR use images and modules under DIR [default=%s/" -#~ "@platform@]\n" -#~ " -p, --prefix=DIR set grub_prefix directory [default=%s]\n" -#~ " -m, --memdisk=FILE embed FILE as a memdisk image\n" -#~ " -c, --config=FILE embed FILE as boot config\n" -#~ " -n, --note add NOTE segment for CHRP Open Firmware\n" -#~ " -o, --output=FILE output a generated image to FILE " -#~ "[default=stdout]\n" -#~ " -O, --format=FORMAT generate an image in format\n" -#~ " available formats: %s\n" -#~ " -C, --compression=(xz|none|auto) choose the compression to use\n" -#~ " -h, --help display this message and exit\n" -#~ " -V, --version print version information and exit\n" -#~ " -v, --verbose print verbose messages\n" -#~ "\n" -#~ "Report bugs to <%s>.\n" -#~ msgstr "" -#~ "ИÑпользование: %s [ПÐРÐМЕТР]... [МОДУЛИ]\n" -#~ "\n" -#~ "Создаёт загрузочный образ GRUB.\n" -#~ "\n" -#~ " -d, --directory=КÐТ иÑпользовать образы и модули из КÐТалога\n" -#~ " [по умолчанию %s/@platform@]\n" -#~ " -p, --prefix=КÐТ задать каталог Ð´Ð»Ñ grub_prefix [по умолчанию " -#~ "%s]\n" -#~ " -m, --memdisk=ФÐЙЛ вÑтроить ФÐЙЛ в качеÑтве образа memdisk\n" -#~ " -c, --config=ФÐЙЛ вÑтроить ФÐЙЛ в качеÑтве загрузочного\n" -#~ " файла наÑтройки\n" -#~ " -n, --note добавить Ñегмент NOTE Ð´Ð»Ñ CHRP Open Firmware\n" -#~ " -o, --output=ФÐЙЛ запиÑать Ñозданный образ в ФÐЙЛ\n" -#~ " [по умолчанию stdout]\n" -#~ " -O, --format=ФОРМÐТ Ñгенерировать образ в указанном ФОРМÐТЕ\n" -#~ " доÑтупные форматы: %s\n" -#~ " -C, --compression=(xz|none|auto) алгоритм ÑжатиÑ\n" -#~ " -h, --help показать Ñту Ñправку и закончить работу\n" -#~ " -V, --version показать информацию о верÑии и закончить " -#~ "работу\n" -#~ " -v, --verbose выводить подробные ÑообщениÑ\n" -#~ "\n" -#~ "ОтправлÑйте ÑÐ¾Ð¾Ð±Ñ‰ÐµÐ½Ð¸Ñ Ð¾Ð± ошибках по адреÑу <%s>.\n" - -#~ msgid "" -#~ "embedding is not possible, but this is required when the root device is " -#~ "on a RAID array or LVM volume" -#~ msgstr "" -#~ "вÑтраивание невозможно, но оно необходимо, еÑли корневое уÑтройÑтво " -#~ "раÑполагаетÑÑ Ð² RAID-маÑÑиве или томе LVM." - -#~ msgid "cannot guess the root device. Specify the option `--root-device'" -#~ msgstr "" -#~ "не удалоÑÑŒ вычиÑлить корневое уÑтройÑтво. Укажите его параметром --root-" -#~ "device." - -#~ msgid "[class [handler]]" -#~ msgstr "[клаÑÑ [обработчик]]" - -#~ msgid "List compatible VESA BIOS extension video modes." -#~ msgstr "Показать ÑпиÑок видеорежимов раÑÑˆÐ¸Ñ€ÐµÐ½Ð¸Ñ VESA BIOS." - -#~ msgid "Test VESA BIOS Extension 2.0+ support." -#~ msgstr "ПровеÑти теÑÑ‚ поддержки VESA BIOS Extension 2.0+." - -#~ msgid "Set the root device." -#~ msgstr "Задать корневое уÑтройÑтво." - -#~ msgid "Simulate a hard drive with partitions." -#~ msgstr "Имитировать жёÑткий диÑк Ñ Ñ€Ð°Ð·Ð´ÐµÐ»Ð°Ð¼Ð¸." - -#~ msgid "" -#~ "Attempting to install GRUB to a partition instead of the MBR. This is a " -#~ "BAD idea." -#~ msgstr "" -#~ "Попытка уÑтановить GRUB на раздел вмеÑто MBR. Лучше Ñтого ÐЕ ДЕЛÐТЬ." - -#~ msgid "if you really want blocklists, use --force" -#~ msgstr "" -#~ "еÑли вы вÑÑ‘ равно хотите иÑпользовать ÑпиÑок блоков, укажите --force." diff --git a/thirdparty/grub-2.04/po/sl.gmo b/thirdparty/grub-2.04/po/sl.gmo deleted file mode 100644 index ce57f247c9b62767cc52f33bbf3be7f5c51abf37..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 91780 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

>ZNxW`XP&It6S!+npaahcV0{D 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 z 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 diff --git a/thirdparty/grub-2.04/po/sl.po b/thirdparty/grub-2.04/po/sl.po deleted file mode 100644 index 8ca4be70c..000000000 --- a/thirdparty/grub-2.04/po/sl.po +++ /dev/null @@ -1,7144 +0,0 @@ -# -*- mode:po; coding:utf-8; -*- Slovenian message catalogue for gst-plugins-bad. -# This file is distributed under the same license as the grub package. -# Copyright (C) 2005 Free Software Foundation, Inc. -# -# Andrej ŽnidarÅ¡iÄ , 2010-2012. -# -msgid "" -msgstr "" -"Project-Id-Version: grub-2.0.0-pre6\n" -"Report-Msgid-Bugs-To: bug-grub@gnu.org\n" -"POT-Creation-Date: 2019-07-04 16:09+0200\n" -"PO-Revision-Date: 2012-12-11 21:02+0100\n" -"Last-Translator: Andrej ŽnidarÅ¡iÄ \n" -"Language-Team: Slovenian \n" -"Language: sl\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Bugs: Report translation errors to the Language-Team address.\n" -"Plural-Forms: nplurals=4; plural=(n%100==1 ? 1 : n%100==2 ? 2 : n%100==3 || n" -"%100==4 ? 3 : 0);\n" -"X-Launchpad-Export-Date: 2012-12-03 07:20+0000\n" -"X-Generator: Poedit 1.5.4\n" -"X-Poedit-SourceCharset: utf-8\n" - -#: grub-core/bus/usb/serial/ftdi.c:145 grub-core/bus/usb/serial/pl2303.c:158 -#: grub-core/term/ieee1275/escc.c:169 grub-core/term/ns8250.c:202 -msgid "unsupported serial port speed" -msgstr "nepodprta hitrost zaporednih vrat" - -#: grub-core/bus/usb/serial/ftdi.c:151 grub-core/bus/usb/serial/pl2303.c:164 -#: grub-core/term/efi/serial.c:116 grub-core/term/ieee1275/escc.c:175 -#: grub-core/term/ns8250.c:208 grub-core/term/serial.c:227 -#: grub-core/term/serial.c:243 -msgid "unsupported serial port parity" -msgstr "nepodprta parnost zaporednih vrat" - -#: grub-core/bus/usb/serial/ftdi.c:157 grub-core/bus/usb/serial/pl2303.c:170 -#: grub-core/term/efi/serial.c:122 grub-core/term/ieee1275/escc.c:181 -#: grub-core/term/ns8250.c:213 grub-core/term/serial.c:267 -msgid "unsupported serial port stop bits number" -msgstr "nepodprto Å¡tevilo zaustavitvenih bitov zaporednih vrat" - -#: grub-core/bus/usb/serial/ftdi.c:161 grub-core/bus/usb/serial/pl2303.c:174 -#: grub-core/term/efi/serial.c:126 grub-core/term/ieee1275/escc.c:185 -#: grub-core/term/ns8250.c:217 -msgid "unsupported serial port word length" -msgstr "nepodprta dolžina besede zaporednih vrat" - -#: grub-core/commands/acpi.c:42 -msgid "Don't load host tables specified by comma-separated list." -msgstr "" -"Ne naloži preglednic gostitelja, navedenih v seznamu z vejico loÄenih " -"vrednosti." - -#: grub-core/commands/acpi.c:45 -msgid "Load only tables specified by comma-separated list." -msgstr "" -"Naloži le preglednice gostitelja, navedene v seznamu z vejico loÄenih " -"vrednosti." - -#: grub-core/commands/acpi.c:46 -msgid "Export version 1 tables to the OS." -msgstr "Izvozi preglednice razliÄice 1 v OS." - -#: grub-core/commands/acpi.c:47 -msgid "Export version 2 and version 3 tables to the OS." -msgstr "Izvozi preglednice razliÄice 2 in 3 v OS." - -#: grub-core/commands/acpi.c:48 -msgid "Set OEMID of RSDP, XSDT and RSDT." -msgstr "Nastavi OEMID podatkovnih struktur RSDP, XSDT in RSDT." - -#: grub-core/commands/acpi.c:50 -msgid "Set OEMTABLE ID of RSDP, XSDT and RSDT." -msgstr "Nastavi OEMTABLE ID podatkovnih struktur RSDP, XSDT in RSDT." - -#: grub-core/commands/acpi.c:52 -msgid "Set OEMTABLE revision of RSDP, XSDT and RSDT." -msgstr "Nastavi predelavo OEMTABLE podatkovnih struktur RSDP, XSDT in RSDT." - -#: grub-core/commands/acpi.c:54 -msgid "Set creator field of RSDP, XSDT and RSDT." -msgstr "Nastavi polje ustvarjalca podatkovnih struktur RSDP, XSDT in RSDT." - -#: grub-core/commands/acpi.c:56 -msgid "Set creator revision of RSDP, XSDT and RSDT." -msgstr "Nastavi predelavo ustvarjalca podatkovnih struktur RSDP, XSDT in RSDT." - -#. TRANSLATORS: "hangs" here is a noun, not a verb. -#: grub-core/commands/acpi.c:58 -msgid "" -"Don't update EBDA. May fix failures or hangs on some BIOSes but makes it " -"ineffective with OS not receiving RSDP from GRUB." -msgstr "" -"Ne posodobi polja EBDA. Možnost lahko odpravi napake in zastoje v delovanju " -"na nekaterih sistemih BIOS, vendar jih naredi neuÄinkovite, ker operacijski " -"sistem ne sprejema podatkov RSDP iz nalagalnika GRUB." - -#: grub-core/commands/acpi.c:650 grub-core/commands/acpi.c:667 -#: grub-core/commands/i386/pc/play.c:105 grub-core/commands/keylayouts.c:230 -#: grub-core/commands/keylayouts.c:245 grub-core/commands/keylayouts.c:263 -#: grub-core/commands/verifiers.c:156 grub-core/efiemu/loadcore.c:350 -#: grub-core/kern/elf.c:117 grub-core/kern/elfXX.c:29 -#: grub-core/kern/elfXX.c:156 grub-core/loader/arm/linux.c:319 -#: grub-core/loader/arm64/linux.c:330 grub-core/loader/arm64/xen_boot.c:356 -#: grub-core/loader/efi/chainloader.c:276 -#: grub-core/loader/efi/chainloader.c:297 -#: grub-core/loader/efi/chainloader.c:329 grub-core/loader/efi/fdt.c:138 -#: grub-core/loader/i386/bsd.c:1276 grub-core/loader/i386/bsd.c:2116 -#: grub-core/loader/i386/bsdXX.c:20 grub-core/loader/i386/bsdXX.c:36 -#: grub-core/loader/i386/bsdXX.c:63 grub-core/loader/i386/bsdXX.c:357 -#: grub-core/loader/i386/bsdXX.c:376 grub-core/loader/i386/bsdXX.c:519 -#: grub-core/loader/i386/bsdXX.c:535 grub-core/loader/i386/bsdXX.c:615 -#: grub-core/loader/i386/bsdXX.c:638 -#: grub-core/loader/i386/coreboot/chainloader.c:112 -#: grub-core/loader/i386/coreboot/chainloader.c:148 -#: grub-core/loader/i386/coreboot/chainloader.c:170 -#: grub-core/loader/i386/linux.c:667 grub-core/loader/i386/linux.c:788 -#: grub-core/loader/i386/linux.c:1005 grub-core/loader/i386/multiboot_mbi.c:171 -#: grub-core/loader/i386/pc/chainloader.c:202 -#: grub-core/loader/i386/pc/linux.c:149 grub-core/loader/i386/pc/linux.c:320 -#: grub-core/loader/i386/pc/linux.c:362 grub-core/loader/i386/pc/plan9.c:457 -#: grub-core/loader/i386/pc/plan9.c:550 grub-core/loader/i386/pc/plan9.c:566 -#: grub-core/loader/i386/xen.c:934 grub-core/loader/i386/xen_file.c:72 -#: grub-core/loader/i386/xen_fileXX.c:43 grub-core/loader/i386/xen_fileXX.c:186 -#: grub-core/loader/i386/xen_fileXX.c:339 grub-core/loader/ia64/efi/linux.c:423 -#: grub-core/loader/ia64/efi/linux.c:471 grub-core/loader/linux.c:286 -#: grub-core/loader/macho.c:84 grub-core/loader/macho.c:109 -#: grub-core/loader/machoXX.c:33 grub-core/loader/machoXX.c:46 -#: grub-core/loader/machoXX.c:76 grub-core/loader/machoXX.c:116 -#: grub-core/loader/machoXX.c:131 grub-core/loader/machoXX.c:147 -#: grub-core/loader/machoXX.c:196 grub-core/loader/machoXX.c:317 -#: grub-core/loader/multiboot.c:434 grub-core/loader/multiboot_elfxx.c:171 -#: grub-core/loader/multiboot_elfxx.c:234 -#: grub-core/loader/multiboot_elfxx.c:278 grub-core/loader/multiboot_mbi2.c:129 -#: grub-core/loader/xnu.c:737 grub-core/loader/xnu.c:795 -#: grub-core/loader/xnu.c:816 grub-core/loader/xnu.c:871 -#: grub-core/loader/xnu.c:914 grub-core/loader/xnu.c:952 -#: grub-core/loader/xnu_resume.c:68 grub-core/loader/xnu_resume.c:153 -#: grub-core/loader/xnu_resume.c:165 util/grub-mkimagexx.c:2288 -#, c-format -msgid "premature end of file %s" -msgstr "predÄasen konec datoteke %s" - -#: grub-core/commands/acpi.c:779 -msgid "" -"[-1|-2] [--exclude=TABLE1,TABLE2|--load-only=TABLE1,TABLE2] FILE1 [FILE2] " -"[...]" -msgstr "" -"[-1|-2] [--exclude=PREGLEDNICA1,PREGLEDNICA2|--load-only=PREGLEDNICA1," -"PREGLEDNICA2] DATOTEKA1 [DATOTEKA2] [...]" - -#: grub-core/commands/acpi.c:782 -msgid "Load host ACPI tables and tables specified by arguments." -msgstr "" -"Naloži gostiteljeve preglednice ACPI in preglednice navedene z argumenti." - -#: grub-core/commands/acpihalt.c:368 grub-core/kern/err.c:110 -#, c-format -msgid "error: %s.\n" -msgstr "napaka: %s.\n" - -#: grub-core/commands/acpihalt.c:368 grub-core/kern/emu/misc.c:95 -#: grub-core/kern/emu/misc.c:105 grub-core/kern/emu/misc.c:134 -#: grub-core/kern/emu/mm.c:34 grub-core/kern/emu/mm.c:62 -#: grub-core/kern/mm.c:374 grub-core/lib/relocator.c:1282 -#: grub-core/lib/relocator.c:1439 grub-core/lib/relocator.c:1538 -#: grub-core/loader/arm/linux.c:259 grub-core/loader/arm64/linux.c:265 -#: grub-core/loader/arm64/linux.c:321 grub-core/loader/arm64/linux.c:340 -#: grub-core/loader/arm64/xen_boot.c:344 grub-core/loader/arm64/xen_boot.c:367 -#: grub-core/loader/efi/chainloader.c:289 grub-core/osdep/unix/dl.c:48 -#: grub-core/osdep/windows/dl.c:46 grub-core/script/lexer.c:156 -#: grub-core/script/lexer.c:182 -msgid "out of memory" -msgstr "primanjkuje pomnilnika" - -#: grub-core/commands/acpihalt.c:374 grub-core/disk/cryptodisk.c:587 -#: grub-core/disk/cryptodisk.c:632 grub-core/kern/emu/hostdisk.c:307 -#: grub-core/kern/emu/hostfs.c:149 grub-core/kern/emu/misc.c:200 -#: grub-core/osdep/linux/ofpath.c:195 grub-core/osdep/linux/ofpath.c:521 -#: grub-core/osdep/linux/ofpath.c:534 util/glue-efi.c:80 util/glue-efi.c:94 -#: util/grub-editenv.c:155 util/grub-fstest.c:577 -#: util/grub-install-common.c:943 util/grub-mkrescue.c:634 -#: util/grub-mkrescue.c:888 util/grub-mount.c:506 util/grub-render-label.c:176 -#: util/misc.c:95 util/setup.c:814 util/setup.c:833 -#, c-format -msgid "cannot read `%s': %s" -msgstr "ni mogoÄe prebrati `%s': %s" - -#. TRANSLATORS: It's computer shutdown using ACPI, not disabling ACPI. -#: grub-core/commands/acpihalt.c:452 -msgid "ACPI shutdown failed" -msgstr "Izklop ACPI je spodletel" - -#: grub-core/commands/arc/lsdev.c:51 -msgid "List devices." -msgstr "IzpiÅ¡i naprave." - -#: grub-core/commands/blocklist.c:122 grub-core/commands/cat.c:57 -#: grub-core/commands/configfile.c:35 grub-core/commands/efi/loadbios.c:168 -#: grub-core/commands/file.c:159 grub-core/commands/hexdump.c:47 -#: grub-core/commands/legacycfg.c:209 grub-core/commands/legacycfg.c:315 -#: grub-core/commands/minicmd.c:44 grub-core/commands/syslinuxcfg.c:146 -#: grub-core/commands/testload.c:58 grub-core/commands/testspeed.c:52 -#: grub-core/disk/loopback.c:93 grub-core/efiemu/main.c:293 -#: grub-core/font/font_cmd.c:32 grub-core/kern/emu/hostdisk.c:519 -#: grub-core/loader/arm/linux.c:364 grub-core/loader/arm/linux.c:409 -#: grub-core/loader/arm/linux.c:472 grub-core/loader/arm64/linux.c:243 -#: grub-core/loader/arm64/linux.c:297 grub-core/loader/arm64/xen_boot.c:398 -#: grub-core/loader/arm64/xen_boot.c:411 grub-core/loader/arm64/xen_boot.c:462 -#: grub-core/loader/efi/chainloader.c:216 grub-core/loader/i386/bsd.c:1462 -#: grub-core/loader/i386/bsd.c:1807 grub-core/loader/i386/bsd.c:2085 -#: grub-core/loader/i386/coreboot/chainloader.c:438 -#: grub-core/loader/i386/linux.c:656 grub-core/loader/i386/linux.c:1041 -#: grub-core/loader/i386/pc/chainloader.c:290 -#: grub-core/loader/i386/pc/freedos.c:105 grub-core/loader/i386/pc/linux.c:138 -#: grub-core/loader/i386/pc/linux.c:400 grub-core/loader/i386/pc/ntldr.c:85 -#: grub-core/loader/i386/pc/plan9.c:409 -#: grub-core/loader/i386/pc/pxechainloader.c:94 -#: grub-core/loader/i386/pc/truecrypt.c:96 grub-core/loader/i386/xen.c:641 -#: grub-core/loader/i386/xen.c:768 grub-core/loader/i386/xen.c:844 -#: grub-core/loader/i386/xen.c:854 grub-core/loader/i386/xnu.c:488 -#: grub-core/loader/ia64/efi/linux.c:459 grub-core/loader/ia64/efi/linux.c:539 -#: grub-core/loader/mips/linux.c:238 grub-core/loader/mips/linux.c:429 -#: grub-core/loader/multiboot.c:322 grub-core/loader/multiboot.c:374 -#: grub-core/loader/multiboot.c:384 -#: grub-core/loader/powerpc/ieee1275/linux.c:269 -#: grub-core/loader/powerpc/ieee1275/linux.c:341 -#: grub-core/loader/sparc64/ieee1275/linux.c:305 -#: grub-core/loader/sparc64/ieee1275/linux.c:381 grub-core/loader/xnu.c:351 -#: grub-core/loader/xnu.c:460 grub-core/loader/xnu.c:778 -#: grub-core/loader/xnu.c:892 grub-core/loader/xnu.c:1277 -#: grub-core/loader/xnu.c:1427 grub-core/loader/xnu.c:1453 -#: grub-core/video/readers/jpeg.c:812 grub-core/video/readers/png.c:1123 -msgid "filename expected" -msgstr "priÄakovano je ime datoteke" - -#. TRANSLATORS: "embed" is a verb (command description). " -#: grub-core/commands/blocklist.c:154 grub-core/commands/cat.c:163 -#: grub-core/commands/configfile.c:65 grub-core/commands/configfile.c:68 -#: grub-core/commands/configfile.c:74 grub-core/commands/configfile.c:80 -#: grub-core/commands/configfile.c:86 grub-core/commands/hashsum.c:34 -#: grub-core/commands/legacycfg.c:834 grub-core/commands/legacycfg.c:841 -#: grub-core/commands/legacycfg.c:846 grub-core/commands/legacycfg.c:851 -#: grub-core/commands/macbless.c:222 grub-core/commands/minicmd.c:198 -#: grub-core/commands/syslinuxcfg.c:186 grub-core/commands/syslinuxcfg.c:194 -#: grub-core/commands/syslinuxcfg.c:200 grub-core/commands/syslinuxcfg.c:206 -#: grub-core/commands/testload.c:163 grub-core/efiemu/main.c:312 -#: grub-core/kern/emu/main.c:100 grub-core/kern/emu/main.c:103 -#: grub-core/loader/i386/bsd.c:2137 grub-core/loader/i386/bsd.c:2140 -#: grub-core/loader/i386/bsd.c:2143 -#: grub-core/loader/i386/coreboot/chainloader.c:505 -#: grub-core/loader/ia64/efi/linux.c:594 include/grub/util/install.h:32 -#: include/grub/util/install.h:64 util/grub-glue-efi.c:52 -#: util/grub-glue-efi.c:54 util/grub-glue-efi.c:56 util/grub-install.c:254 -#: util/grub-install.c:301 util/grub-mkfont.c:936 util/grub-mkimage.c:68 -#: util/grub-mkimage.c:74 util/grub-mkimage.c:76 util/grub-mkimage.c:78 -#: util/grub-mkimage.c:81 util/grub-mklayout.c:52 util/grub-mklayout.c:54 -#: util/grub-mkrescue.c:97 util/grub-mkrescue.c:101 util/grub-mkrescue.c:104 -#: util/grub-mkrescue.c:105 util/grub-mkrescue.c:106 -#: util/grub-mkstandalone.c:47 util/grub-mkstandalone.c:49 -#: util/grub-probe.c:732 util/grub-render-label.c:59 -#: util/grub-render-label.c:70 util/grub-render-label.c:72 util/grub-setup.c:78 -#: util/grub-setup.c:80 util/grub-setup.c:84 util/grub-syslinux2cfg.c:74 -#: util/grub-syslinux2cfg.c:147 -msgid "FILE" -msgstr "DATOTEKA" - -#: grub-core/commands/blocklist.c:154 -msgid "Print a block list." -msgstr "IzpiÅ¡i seznam blokov." - -#: grub-core/commands/boot.c:147 grub-core/commands/legacycfg.c:533 -#: grub-core/commands/legacycfg.c:574 grub-core/loader/arm64/linux.c:250 -#: grub-core/loader/i386/bsd.c:1799 grub-core/loader/i386/bsd.c:1900 -#: grub-core/loader/i386/bsd.c:2007 grub-core/loader/i386/bsd.c:2040 -#: grub-core/loader/i386/bsd.c:2089 grub-core/loader/i386/linux.c:1047 -#: grub-core/loader/i386/pc/linux.c:406 grub-core/loader/i386/xen.c:775 -#: grub-core/loader/i386/xen.c:859 grub-core/loader/ia64/efi/linux.c:545 -#: grub-core/loader/mips/linux.c:432 grub-core/loader/multiboot.c:388 -#: grub-core/loader/powerpc/ieee1275/linux.c:347 -#: grub-core/loader/sparc64/ieee1275/linux.c:387 grub-core/loader/xnu.c:572 -#: grub-core/loader/xnu.c:665 grub-core/loader/xnu.c:781 -#: grub-core/loader/xnu.c:895 grub-core/loader/xnu.c:1091 -#: grub-core/loader/xnu.c:1258 grub-core/loader/xnu.c:1289 -#: grub-core/loader/xnu.c:1430 -msgid "you need to load the kernel first" -msgstr "najprej je treba naložiti jedro" - -#: grub-core/commands/boot.c:189 -msgid "Boot an operating system." -msgstr "Zaženi operacijski sistem." - -#: grub-core/commands/boottime.c:36 -#: grub-core/commands/i386/coreboot/cb_timestamps.c:108 -#, fuzzy -msgid "No boot time statistics is available\n" -msgstr "Statistika predpomnjenja diskov ni na voljo.\n" - -#: grub-core/commands/boottime.c:59 -msgid "Show boot time statistics." -msgstr "" - -#: grub-core/commands/cacheinfo.c:40 -#, c-format -msgid "Disk cache statistics: hits = %lu (%lu.%02lu%%), misses = %lu\n" -msgstr "" -"Statistika predpomniknka diska: zadetki = %lu (%lu.%02lu%%), zgreÅ¡eno = %lu\n" - -#: grub-core/commands/cacheinfo.c:45 -msgid "No disk cache statistics available\n" -msgstr "Statistika predpomnjenja diskov ni na voljo.\n" - -#: grub-core/commands/cacheinfo.c:56 -msgid "Get disk cache info." -msgstr "Pridobi podatke o predpomnilniku diska." - -#: grub-core/commands/cat.c:33 -msgid "Accept DOS-style CR/NL line endings." -msgstr "Sprejmi konÄanje vrstic CR/NL v slogu DOS" - -#: grub-core/commands/cat.c:163 grub-core/commands/minicmd.c:198 -msgid "Show the contents of a file." -msgstr "Pokaži vsebino datoteke." - -#: grub-core/commands/cmp.c:43 grub-core/commands/i386/pc/drivemap.c:239 -#: grub-core/commands/i386/wrmsr.c:60 grub-core/commands/iorw.c:85 -#: grub-core/commands/memrw.c:84 grub-core/commands/password.c:75 -#: grub-core/commands/password_pbkdf2.c:94 grub-core/commands/pgp.c:826 -#: grub-core/commands/regexp.c:113 grub-core/mmap/mmap.c:517 -#: grub-core/net/dns.c:639 -msgid "two arguments expected" -msgstr "priÄakovana sta dva argumenta" - -#: grub-core/commands/cmp.c:45 -#, c-format -msgid "Compare file `%s' with `%s':\n" -msgstr "Primerjaj datoteko `%s' z `%s':\n" - -#: grub-core/commands/cmp.c:54 -#, c-format -msgid "Files differ in size: %llu [%s], %llu [%s]\n" -msgstr "Datoteki se razlikujeta v velikosti: %llu [%s], %llu [%s]\n" - -#: grub-core/commands/cmp.c:81 -#, c-format -msgid "Files differ at the offset %llu: 0x%x [%s], 0x%x [%s]\n" -msgstr "Datoteki sta razliÄni pri odmiku %llu: 0x%x [%s], 0x%x [%s]\n" - -#. TRANSLATORS: it's always exactly 2 files. -#: grub-core/commands/cmp.c:93 -msgid "The files are identical.\n" -msgstr "Datoteki sta enaki.\n" - -#: grub-core/commands/cmp.c:113 -msgid "FILE1 FILE2" -msgstr "DATOTEKA1 DATOTEKA2" - -#: grub-core/commands/cmp.c:113 -msgid "Compare two files." -msgstr "Primerjaj dve datoteki." - -#: grub-core/commands/configfile.c:65 -msgid "Load another config file." -msgstr "Naloži dodatno datoteko z nastavitvami." - -#: grub-core/commands/configfile.c:69 grub-core/commands/configfile.c:87 -msgid "Load another config file without changing context." -msgstr "Naloži dodatno datoteko z nastavitvami brez spreminjanja konteksta." - -#: grub-core/commands/configfile.c:75 -msgid "" -"Load another config file without changing context but take only menu entries." -msgstr "" -"Naloži dodatno nastavitveno datoteko brez spreminjanja vsebine, vzemi pa " -"vnose menija." - -#: grub-core/commands/configfile.c:81 -#, fuzzy -msgid "Load another config file but take only menu entries." -msgstr "" -"Naloži dodatno nastavitveno datoteko brez spreminjanja vsebine, vzemi pa " -"vnose menija." - -#: grub-core/commands/date.c:141 -msgid "[[year-]month-day] [hour:minute[:second]]" -msgstr "[[leto-]mesec-dan] [ura:minuta[:sekunda]]" - -#: grub-core/commands/date.c:142 -msgid "Display/set current datetime." -msgstr "Prikaži/nastavi trenutni datum in Äas." - -#: grub-core/commands/echo.c:30 -msgid "Do not output the trailing newline." -msgstr "Ne izpisuj sledeÄe nove vrstice." - -#: grub-core/commands/echo.c:31 -msgid "Enable interpretation of backslash escapes." -msgstr "OmogoÄi tolmaÄenje leve poÅ¡evnice kot ubežnega znaka." - -#: grub-core/commands/echo.c:134 -msgid "[-e|-n] STRING" -msgstr "[-e|-n] NIZ" - -#: grub-core/commands/echo.c:134 -msgid "Display a line of text." -msgstr "Prikaži vrstico besedila." - -#: grub-core/commands/efi/efifwsetup.c:82 -msgid "Reboot into firmware setup menu." -msgstr "" - -#: grub-core/commands/efi/fixvideo.c:107 -msgid "Fix video problem." -msgstr "Popravi težavo z videom." - -#: grub-core/commands/efi/loadbios.c:52 -msgid "ROM image is present." -msgstr "Prisoten je odtis ROM." - -#: grub-core/commands/efi/loadbios.c:70 -msgid "Can't enable ROM area." -msgstr "Ni mogoÄe omogoÄiti podroÄja ROM." - -#: grub-core/commands/efi/loadbios.c:209 -msgid "" -"Create BIOS-like structures for backward compatibility with existing OS." -msgstr "" -"Ustvari strukture, podobne strukturam BIOS, za povratno združljivost z " -"obstojeÄim operacijskim sistemom." - -#: grub-core/commands/efi/loadbios.c:214 -msgid "BIOS_DUMP [INT10_DUMP]" -msgstr "BIOS_IZPIS [INT10_IZPIS]" - -#: grub-core/commands/efi/loadbios.c:215 -msgid "Load BIOS dump." -msgstr "Naloži izpis nalagalnika BIOS." - -#: grub-core/commands/efi/shim_lock.c:76 -#, c-format -msgid "module cannot be loaded in UEFI secure boot mode: %s" -msgstr "" - -#: grub-core/commands/efi/shim_lock.c:98 -#, c-format -msgid "cannot boot due to dangerous module in memory: %s" -msgstr "" - -#: grub-core/commands/efi/shim_lock.c:116 -msgid "bad shim signature" -msgstr "" - -#: grub-core/commands/efi/tpm.c:149 grub-core/commands/efi/tpm.c:189 -#: grub-core/commands/efi/tpm.c:256 grub-core/commands/efi/tpm.c:306 -#, fuzzy -msgid "Command failed" -msgstr "Izklop je spodletel" - -#: grub-core/commands/efi/tpm.c:151 grub-core/commands/efi/tpm.c:191 -#: grub-core/commands/efi/tpm.c:258 grub-core/commands/efi/tpm.c:308 -#, fuzzy -msgid "Invalid parameter" -msgstr "neveljaven parameter %s" - -#: grub-core/commands/efi/tpm.c:154 grub-core/commands/efi/tpm.c:194 -#: grub-core/commands/efi/tpm.c:261 grub-core/commands/efi/tpm.c:311 -msgid "Output buffer too small" -msgstr "" - -#: grub-core/commands/efi/tpm.c:156 grub-core/commands/efi/tpm.c:196 -#: grub-core/commands/efi/tpm.c:263 grub-core/commands/efi/tpm.c:313 -#, fuzzy -msgid "TPM unavailable" -msgstr "Pot: ni na voljo" - -#: grub-core/commands/efi/tpm.c:158 grub-core/commands/efi/tpm.c:198 -#: grub-core/commands/efi/tpm.c:265 grub-core/commands/efi/tpm.c:315 -#, fuzzy -msgid "Unknown TPM error" -msgstr "Neznana sistemska napaka" - -#: grub-core/commands/efi/tpm.c:240 grub-core/commands/efi/tpm.c:288 -msgid "cannot allocate TPM event buffer" -msgstr "" - -#: grub-core/commands/eval.c:63 -#, fuzzy -msgid "STRING ..." -msgstr "NIZ" - -#: grub-core/commands/eval.c:64 -msgid "Evaluate arguments as GRUB commands" -msgstr "" - -#: grub-core/commands/file.c:41 -msgid "Check if FILE can be booted as i386 PAE Xen unprivileged guest kernel" -msgstr "" - -#: grub-core/commands/file.c:44 -msgid "Check if FILE can be booted as x86_64 Xen unprivileged guest kernel" -msgstr "" - -#: grub-core/commands/file.c:46 -msgid "Check if FILE can be used as Xen x86 privileged guest kernel" -msgstr "" - -#: grub-core/commands/file.c:48 -#, fuzzy -msgid "Check if FILE can be used as x86 multiboot kernel" -msgstr "Naloži jedro multiboot." - -#: grub-core/commands/file.c:50 -#, fuzzy -msgid "Check if FILE can be used as x86 multiboot2 kernel" -msgstr "Naloži jedro multiboot 2." - -#: grub-core/commands/file.c:52 -msgid "Check if FILE is ARM Linux" -msgstr "" - -#: grub-core/commands/file.c:54 -msgid "Check if FILE is ARM64 Linux" -msgstr "" - -#: grub-core/commands/file.c:56 -msgid "Check if FILE is IA64 Linux" -msgstr "" - -#: grub-core/commands/file.c:58 -msgid "Check if FILE is MIPS Linux" -msgstr "" - -#: grub-core/commands/file.c:60 -msgid "Check if FILE is MIPSEL Linux" -msgstr "" - -#: grub-core/commands/file.c:62 -msgid "Check if FILE is SPARC64 Linux" -msgstr "" - -#: grub-core/commands/file.c:64 -msgid "Check if FILE is POWERPC Linux" -msgstr "" - -#: grub-core/commands/file.c:66 -msgid "Check if FILE is x86 Linux" -msgstr "" - -#: grub-core/commands/file.c:68 -msgid "Check if FILE is x86 Linux supporting 32-bit protocol" -msgstr "" - -#: grub-core/commands/file.c:70 -msgid "Check if FILE is x86 kFreeBSD" -msgstr "" - -#: grub-core/commands/file.c:72 -msgid "Check if FILE is i386 kFreeBSD" -msgstr "" - -#: grub-core/commands/file.c:74 -msgid "Check if FILE is x86_64 kFreeBSD" -msgstr "" - -#: grub-core/commands/file.c:77 -msgid "Check if FILE is x86 kNetBSD" -msgstr "" - -#: grub-core/commands/file.c:79 -msgid "Check if FILE is i386 kNetBSD" -msgstr "" - -#: grub-core/commands/file.c:81 -msgid "Check if FILE is x86_64 kNetBSD" -msgstr "" - -#: grub-core/commands/file.c:84 -msgid "Check if FILE is i386 EFI file" -msgstr "" - -#: grub-core/commands/file.c:86 -msgid "Check if FILE is x86_64 EFI file" -msgstr "" - -#: grub-core/commands/file.c:88 -msgid "Check if FILE is IA64 EFI file" -msgstr "" - -#: grub-core/commands/file.c:90 -msgid "Check if FILE is ARM64 EFI file" -msgstr "" - -#: grub-core/commands/file.c:92 -msgid "Check if FILE is ARM EFI file" -msgstr "" - -#: grub-core/commands/file.c:94 -msgid "Check if FILE is RISC-V 32bit EFI file" -msgstr "" - -#: grub-core/commands/file.c:96 -msgid "Check if FILE is RISC-V 64bit EFI file" -msgstr "" - -#: grub-core/commands/file.c:98 -msgid "Check if FILE is hiberfil.sys in hibernated state" -msgstr "" - -#: grub-core/commands/file.c:100 -msgid "Check if FILE is x86_64 XNU (Mac OS X kernel)" -msgstr "" - -#: grub-core/commands/file.c:102 -msgid "Check if FILE is i386 XNU (Mac OS X kernel)" -msgstr "" - -#: grub-core/commands/file.c:104 -msgid "Check if FILE is XNU (Mac OS X kernel) hibernated image" -msgstr "" - -#: grub-core/commands/file.c:106 -msgid "Check if FILE is BIOS bootsector" -msgstr "" - -#. TRANSLATORS: it's a standalone boolean value, -#. opposite of "true". -#: grub-core/commands/file.c:675 grub-core/commands/i386/cmostest.c:63 -#: grub-core/commands/i386/cpuid.c:71 grub-core/commands/keystatus.c:83 -#: grub-core/commands/keystatus.c:87 grub-core/commands/keystatus.c:96 -#: grub-core/commands/test.c:436 grub-core/commands/true.c:39 -#: grub-core/script/execute.c:247 grub-core/script/execute.c:1039 -msgid "false" -msgstr "napak" - -#: grub-core/commands/file.c:684 -#, fuzzy -msgid "OPTIONS FILE" -msgstr "[MOŽNOSTI] DATOTEKE_PISAVE" - -#: grub-core/commands/file.c:685 -msgid "Check if FILE is of specified type." -msgstr "" - -#. TRANSLATORS: It means that the specified partition e.g. -#. hd0,msdos1=/dev/sda1 doesn't exist. -#: grub-core/commands/gptsync.c:140 grub-core/kern/disk.c:258 -msgid "no such partition" -msgstr "ni takÅ¡nega razdelka" - -#: grub-core/commands/gptsync.c:240 -#, c-format -msgid "New MBR is written to `%s'\n" -msgstr "Novi MBR ja zapisan na `%s'\n" - -#: grub-core/commands/gptsync.c:252 -msgid "DEVICE [PARTITION[+/-[TYPE]]] ..." -msgstr "NAPRAVA [RAZDELEK[+/-[VRSTA]]] ..." - -#. TRANSLATORS: MBR type is one-byte partition -#. type id. -#: grub-core/commands/gptsync.c:255 -msgid "" -"Fill hybrid MBR of GPT drive DEVICE. Specified partitions will be a part of " -"hybrid MBR. Up to 3 partitions are allowed. TYPE is an MBR type. + means " -"that partition is active. Only one partition can be active." -msgstr "" -"Zapolnite hibridni MBR pogona NAPRAVE GPT. Navedeni razdelki bodo del " -"hibridnega zapisa MBR. Dovoljeni so do 3 razdelki. VRSTA je vrsta MBR. Znak " -"+ pomeni, da je razdelek dejaven. Dejaven je lahko le en razdelek." - -#: grub-core/commands/halt.c:40 -msgid "" -"Halts the computer. This command does not work on all firmware " -"implementations." -msgstr "" -"Ustavi raÄunalnik. Ukaz ne deluje na vseh izvedbah programske strojne opreme." - -#: grub-core/commands/hashsum.c:32 -msgid "Specify hash to use." -msgstr "Navedite razprÅ¡ilo za uporabo." - -#: grub-core/commands/hashsum.c:32 -msgid "HASH" -msgstr "RAZPRÅ ILO" - -#: grub-core/commands/hashsum.c:33 -msgid "Check hashes of files with hash list FILE." -msgstr "Preveri razprÅ¡ila datotek z datoteko seznama razprÅ¡il DATOTEK:" - -#: grub-core/commands/hashsum.c:35 -msgid "Base directory for hash list." -msgstr "Osnovna mapa za seznam razprÅ¡il." - -#. TRANSLATORS: platform here isn't identifier. It can be translated. -#: grub-core/commands/hashsum.c:35 grub-core/commands/ls.c:150 -#: grub-core/commands/macbless.c:226 grub-core/commands/syslinuxcfg.c:51 -#: grub-core/commands/syslinuxcfg.c:54 grub-core/kern/emu/main.c:106 -#: include/grub/util/install.h:50 include/grub/util/install.h:53 -#: include/grub/util/install.h:56 include/grub/util/install.h:59 -#: util/grub-install.c:250 util/grub-install.c:252 util/grub-install.c:297 -#: util/grub-install.c:299 util/grub-mkimage.c:64 util/grub-mkimage.c:67 -#: util/grub-mknetdir.c:46 util/grub-mknetdir.c:48 util/grub-mkrescue.c:99 -#: util/grub-setup.c:82 util/grub-syslinux2cfg.c:63 util/grub-syslinux2cfg.c:65 -#: util/grub-syslinux2cfg.c:67 util/grub-syslinux2cfg.c:71 -msgid "DIR" -msgstr "MAPA" - -#: grub-core/commands/hashsum.c:37 -msgid "Don't stop after first error." -msgstr "Ne zaustavi po prvi napaki" - -#: grub-core/commands/hashsum.c:38 -msgid "Uncompress file before checksumming." -msgstr "RazÅ¡iri datoteko pred izraÄunom nadzorne vsote." - -#: grub-core/commands/hashsum.c:163 -#, c-format -msgid "%s: READ ERROR\n" -msgstr "%s: NAPAKA BRANJA\n" - -#: grub-core/commands/hashsum.c:177 -#, c-format -msgid "%s: HASH MISMATCH\n" -msgstr "%s: NEUJEMANJE RAZPRÅ IL\n" - -#: grub-core/commands/hashsum.c:188 -#, c-format -msgid "%s: OK\n" -msgstr "%s: v redu\n" - -#: grub-core/commands/hashsum.c:282 -msgid "-h HASH [-c FILE [-p PREFIX]] [FILE1 [FILE2 ...]]" -msgstr "-h RAZPRÅ ILO [-c DATOTEKA [-p PRIPONA]] [DATOTEKA1 [DATOTEKA2 ...]]" - -#. TRANSLATORS: "hash checksum" is just to -#. be a bit more precise, you can treat it as -#. just "hash". -#: grub-core/commands/hashsum.c:287 grub-core/commands/hashsum.c:292 -#: grub-core/commands/hashsum.c:297 grub-core/commands/hashsum.c:302 -#: grub-core/commands/hashsum.c:307 grub-core/commands/hashsum.c:313 -msgid "Compute or check hash checksum." -msgstr "IzraÄunaj ali preveri navzorno vsoto razprÅ¡ila." - -#: grub-core/commands/hashsum.c:290 grub-core/commands/hashsum.c:295 -#: grub-core/commands/hashsum.c:300 grub-core/commands/hashsum.c:305 -#: grub-core/commands/hashsum.c:311 -msgid "[-c FILE [-p PREFIX]] [FILE1 [FILE2 ...]]" -msgstr "[-c DATOTEKA [-p PREDPONA]] [DATOTEKA1 [DATOTEKA2 ...]]" - -#: grub-core/commands/hdparm.c:33 -msgid "" -"Set Advanced Power Management\n" -"(1=low, ..., 254=high, 255=off)." -msgstr "" -"Nastavi napredno upravljanje porabe\n" -"(1=nizko, ..., 254=visoko, 255=izkljuÄeno)." - -#: grub-core/commands/hdparm.c:36 -msgid "Display power mode." -msgstr "Prikaz naÄin porabe." - -#: grub-core/commands/hdparm.c:37 -msgid "Freeze ATA security settings until reset." -msgstr "Zamrzni varnostne nastavitve ATA do ponastavitve." - -#: grub-core/commands/hdparm.c:39 -msgid "Display SMART health status." -msgstr "Prikaži stanje zdravja SMART." - -#: grub-core/commands/hdparm.c:40 -msgid "" -"Set Automatic Acoustic Management\n" -"(0=off, 128=quiet, ..., 254=fast)." -msgstr "" -"Nastavi samodejno akustiÄno upravljanje\n" -"(0 = izklopljeno, 128 = tiho, ..., 254 = hitro)." - -#: grub-core/commands/hdparm.c:43 -msgid "" -"Set standby timeout\n" -"(0=off, 1=5s, 2=10s, ..., 240=20m, 241=30m, ...)." -msgstr "" -"Nastavi zakasnitev pripravljenosti.\n" -"(0=izklopljeno, 1=5s, 2=10s, ..., 240=20m, 241=30m, ...)." - -#: grub-core/commands/hdparm.c:46 -msgid "Set drive to standby mode." -msgstr "Nastavi pogon v naÄin pripravljenosti." - -#: grub-core/commands/hdparm.c:47 -msgid "Set drive to sleep mode." -msgstr "Nastavi pogon v pripravljenost." - -#: grub-core/commands/hdparm.c:48 -msgid "Print drive identity and settings." -msgstr "IzpiÅ¡i identiteto in nastavitve pogona." - -#: grub-core/commands/hdparm.c:50 -msgid "Show raw contents of ATA IDENTIFY sector." -msgstr "Pokaži surovo vsebino odseka ATA IDENTIFY." - -#: grub-core/commands/hdparm.c:52 -msgid "Disable/enable SMART (0/1)." -msgstr "OnemogoÄi/OmogoÄi SMART (0/1)." - -#: grub-core/commands/hdparm.c:53 -msgid "Do not print messages." -msgstr "Ne izpisuj sporoÄil." - -#: grub-core/commands/hdparm.c:286 grub-core/commands/i386/rdmsr.c:68 -#: grub-core/commands/iorw.c:47 grub-core/commands/legacycfg.c:760 -#: grub-core/commands/legacycfg.c:812 grub-core/commands/macbless.c:190 -#: grub-core/commands/memrw.c:47 grub-core/commands/pgp.c:738 -#: grub-core/commands/pgp.c:792 grub-core/commands/search.c:304 -#: grub-core/commands/search_wrap.c:179 grub-core/commands/setpci.c:243 -#: grub-core/commands/sleep.c:71 grub-core/fs/zfs/zfsinfo.c:279 -#: grub-core/fs/zfs/zfsinfo.c:358 grub-core/gettext/gettext.c:492 -#: grub-core/kern/corecmd.c:65 grub-core/kern/corecmd.c:79 -#: grub-core/mmap/mmap.c:430 grub-core/net/dns.c:713 grub-core/net/dns.c:745 -#: grub-core/net/net.c:694 grub-core/net/net.c:1052 -#: grub-core/normal/context.c:194 grub-core/script/execute.c:131 -#: grub-core/term/gfxterm_background.c:136 -msgid "one argument expected" -msgstr "priÄakovan je en argument" - -#: grub-core/commands/hdparm.c:440 -msgid "[OPTIONS] DISK" -msgstr "[MOŽNOSTI] DISK" - -#: grub-core/commands/hdparm.c:441 -msgid "Get/set ATA disk parameters." -msgstr "Pridobi/Nastavi parametre diskov ATA." - -#: grub-core/commands/help.c:132 grub-core/lib/arg.c:109 -#: grub-core/lib/gnulib/argp-help.c:1616 -msgid "Usage:" -msgstr "Uporaba:" - -#: grub-core/commands/help.c:146 -msgid "[PATTERN ...]" -msgstr "[VZOREC ...]" - -#: grub-core/commands/help.c:147 -msgid "Show a help message." -msgstr "Prikaži sporoÄilo pomoÄi." - -#: grub-core/commands/hexdump.c:31 -msgid "Skip offset bytes from the beginning of file." -msgstr "PreskoÄi bajte odmika na zaÄetku datoteke." - -#: grub-core/commands/hexdump.c:33 -msgid "Read only LENGTH bytes." -msgstr "Beri le bajte DOLŽINE." - -#: grub-core/commands/hexdump.c:125 -msgid "[OPTIONS] FILE_OR_DEVICE" -msgstr "[MOŽNOSTI] DATOTEKA_ALI_NAPRAVA" - -#: grub-core/commands/hexdump.c:126 -msgid "Show raw contents of a file or memory." -msgstr "Pokaži surovo vsebino datoteke ali pomnilnika." - -#: grub-core/commands/i386/cmosdump.c:58 -#, fuzzy -msgid "Show raw dump of the CMOS contents." -msgstr "Pokaži vsebino pomnilnika." - -#: grub-core/commands/i386/cmostest.c:108 -#: grub-core/commands/i386/cmostest.c:111 -#: grub-core/commands/i386/cmostest.c:114 -msgid "BYTE:BIT" -msgstr "BAJT:BIT" - -#: grub-core/commands/i386/cmostest.c:109 -msgid "Test bit at BYTE:BIT in CMOS." -msgstr "Preizkusi bit na BAJT:BIT v CMOS." - -#: grub-core/commands/i386/cmostest.c:112 -#, fuzzy -msgid "Clear bit at BYTE:BIT in CMOS." -msgstr "PoÄisti bit na BAJT:BIT v CMOS." - -#. TRANSLATORS: A bit may be either set (1) or clear (0). -#: grub-core/commands/i386/cmostest.c:116 -#, fuzzy -msgid "Set bit at BYTE:BIT in CMOS." -msgstr "Preizkusi bit na BAJT:BIT v CMOS." - -#: grub-core/commands/i386/coreboot/cb_timestamps.c:120 -msgid "Show coreboot boot time statistics." -msgstr "" - -#: grub-core/commands/i386/coreboot/cbls.c:137 -#, fuzzy -msgid "List coreboot tables." -msgstr "IzpiÅ¡e trenutne spremenljivke." - -#. TRANSLATORS: "(default)" at the end means that this option is used if -#. no argument is specified. -#: grub-core/commands/i386/cpuid.c:36 -msgid "Check if CPU supports 64-bit (long) mode (default)." -msgstr "Preveri, ali CPE podpira 64-bitni (dolgi) naÄin (privzeto)." - -#: grub-core/commands/i386/cpuid.c:37 -#, fuzzy -msgid "Check if CPU supports Physical Address Extension." -msgstr "Preveri, ali CPE podpira 64-bitni (dolgi) naÄin (privzeto)." - -#: grub-core/commands/i386/cpuid.c:119 -msgid "Check for CPU features." -msgstr "Preveri zmožnosti CPE." - -#. TRANSLATORS: In this file "mapping" refers to a change GRUB makes so if -#. your language doesn't have an equivalent of "mapping" you can -#. use the word like "rerouting". -#. -#: grub-core/commands/i386/pc/drivemap.c:43 -msgid "Show the current mappings." -msgstr "Pokaži trenutne preslikave." - -#: grub-core/commands/i386/pc/drivemap.c:44 -msgid "Reset all mappings to the default values." -msgstr "Ponastavi vse preslikave na privzete vrednosti." - -#: grub-core/commands/i386/pc/drivemap.c:45 -msgid "Perform both direct and reverse mappings." -msgstr "Izvedi neposredne in povratne preslikave." - -#: grub-core/commands/i386/pc/drivemap.c:184 -msgid "No drives have been remapped" -msgstr "Pogoni niso bili preslikani" - -#. TRANSLATORS: This is the header of mapping list. -#. On the left is how OS will see the disks and -#. on the right current GRUB vision. -#: grub-core/commands/i386/pc/drivemap.c:191 -msgid "OS disk #num ------> GRUB/BIOS device" -msgstr "OS disk #Å¡t ------> naprava GRUB/BIOS" - -#: grub-core/commands/i386/pc/drivemap.c:413 -msgid "-l | -r | [-s] grubdev osdisk." -msgstr "-l | -r | [-s] grubdev osdisk." - -#: grub-core/commands/i386/pc/drivemap.c:414 -msgid "Manage the BIOS drive mappings." -msgstr "Uredi preslikave pogona BIOS." - -#: grub-core/commands/i386/pc/halt.c:31 -msgid "Do not use APM to halt the computer." -msgstr "Ne uporabljaj APM za ustavljanje raÄunalnika." - -#: grub-core/commands/i386/pc/halt.c:119 -msgid "Halt the system, if possible using APM." -msgstr "Ustavi sistem z uporabo APM, Äe je mogoÄe." - -#: grub-core/commands/i386/pc/lsapm.c:75 -msgid "no APM found" -msgstr "Sistema APM ni mogoÄe najti" - -#: grub-core/commands/i386/pc/lsapm.c:77 -#, c-format -msgid "" -"Version %u.%u\n" -"32-bit CS = 0x%x, len = 0x%x, offset = 0x%x\n" -"16-bit CS = 0x%x, len = 0x%x\n" -"DS = 0x%x, len = 0x%x\n" -msgstr "" -"RazliÄica %u.%u\n" -"32-bitni CS = 0x%x, dolžina = 0x%x, odmik = 0x%x\n" -"16-bitni CS = 0x%x, dolžina = 0x%x\n" -"DS = 0x%x, dolžina = 0x%x\n" - -#: grub-core/commands/i386/pc/lsapm.c:86 -msgid "16-bit protected interface supported\n" -msgstr "32-bitni zaÅ¡Äiten vmesnik je podprt\n" - -#: grub-core/commands/i386/pc/lsapm.c:87 -msgid "16-bit protected interface unsupported\n" -msgstr "16-bitni zaÅ¡Äiten vmesnik ni podprt\n" - -#: grub-core/commands/i386/pc/lsapm.c:89 -msgid "32-bit protected interface supported\n" -msgstr "32-bitni zaÅ¡Äiten vmesnik je podprt\n" - -#: grub-core/commands/i386/pc/lsapm.c:90 -msgid "32-bit protected interface unsupported\n" -msgstr "32-bitni zaÅ¡Äiten vmesnik ni podprt\n" - -#: grub-core/commands/i386/pc/lsapm.c:92 -msgid "CPU Idle slows down processor\n" -msgstr "Nedejavna CPE upoÄasni delovanje procesorja\n" - -#: grub-core/commands/i386/pc/lsapm.c:93 -msgid "CPU Idle doesn't slow down processor\n" -msgstr "Nedejavna CPE ne upoÄasni delovanja procesorja\n" - -#: grub-core/commands/i386/pc/lsapm.c:95 -msgid "APM disabled\n" -msgstr "Upravljanje APM je onemogoÄeno.\n" - -#: grub-core/commands/i386/pc/lsapm.c:95 -msgid "APM enabled\n" -msgstr "Upravljanje APM je omogoÄeno.\n" - -#: grub-core/commands/i386/pc/lsapm.c:97 -msgid "APM disengaged\n" -msgstr "APM je izklopljen\n" - -#: grub-core/commands/i386/pc/lsapm.c:97 -msgid "APM engaged\n" -msgstr "Upravljanje APM je vklopljeno.\n" - -#: grub-core/commands/i386/pc/lsapm.c:107 -msgid "Show APM information." -msgstr "Pokaži podrobnosti APM." - -#. TRANSLATORS: It's musical notes, not the notes -#. you take. Play command expects arguments which can -#. be either a filename or tempo+notes. -#. This error happens if none is specified. -#: grub-core/commands/i386/pc/play.c:88 -msgid "filename or tempo and notes expected" -msgstr "priÄakovano je ime datoteke oziroma tempo in note" - -#: grub-core/commands/i386/pc/play.c:113 grub-core/commands/i386/pc/play.c:144 -#, fuzzy, c-format -msgid "Invalid tempo in %s" -msgstr "Neveljaven ukaz %s.\n" - -#: grub-core/commands/i386/pc/play.c:151 grub-core/commands/macbless.c:172 -#: grub-core/fs/archelp.c:260 grub-core/fs/bfs.c:621 grub-core/fs/bfs.c:704 -#: grub-core/fs/btrfs.c:1726 grub-core/fs/btrfs.c:1755 -#: grub-core/fs/btrfs.c:1799 grub-core/fs/btrfs.c:1882 -#: grub-core/fs/btrfs.c:1906 grub-core/fs/fshelp.c:257 grub-core/fs/jfs.c:696 -#: grub-core/fs/minix.c:426 grub-core/fs/ufs.c:544 grub-core/fs/zfs/zfs.c:2083 -#: grub-core/fs/zfs/zfs.c:2095 grub-core/fs/zfs/zfs.c:2301 -#: grub-core/net/http.c:120 -#, c-format -msgid "file `%s' not found" -msgstr "datoteke`%s' ni bilo mogoÄe najti" - -#: grub-core/commands/i386/pc/play.c:162 grub-core/commands/i386/pc/play.c:171 -#: grub-core/kern/misc.c:419 grub-core/script/execute.c:138 -#: grub-core/script/execute.c:244 -msgid "unrecognized number" -msgstr "neprepoznano Å¡tevilo" - -#: grub-core/commands/i386/pc/play.c:190 -msgid "FILE | TEMPO [PITCH1 DURATION1] [PITCH2 DURATION2] ... " -msgstr "" -"DATOTEKA | TEMPO [VIÅ INA_TONA1 TRAJANJE1] [VIÅ INA_TONA2 TRAJANJE2] ... " - -#: grub-core/commands/i386/pc/play.c:191 -msgid "Play a tune." -msgstr "Predvajaj melodijo." - -#: grub-core/commands/i386/pc/sendkey.c:39 -msgid "set numlock mode" -msgstr "nastavi naÄin zaklepa Å¡tevilÄnice" - -#: grub-core/commands/i386/pc/sendkey.c:40 -msgid "set capslock mode" -msgstr "zakleni naÄin zaklepa velikih Ärk" - -#: grub-core/commands/i386/pc/sendkey.c:41 -msgid "set scrolllock mode" -msgstr "nastavi naÄin zaklepa drsenja" - -#: grub-core/commands/i386/pc/sendkey.c:42 -msgid "set insert mode" -msgstr "nastavi naÄin vstavljanja" - -#: grub-core/commands/i386/pc/sendkey.c:43 -msgid "set pause mode" -msgstr "nastavi naÄin premora" - -#: grub-core/commands/i386/pc/sendkey.c:44 -msgid "press left shift" -msgstr "pritisnite levo tipko Shift" - -#: grub-core/commands/i386/pc/sendkey.c:45 -msgid "press right shift" -msgstr "pritisnite desno tipko Shift" - -#: grub-core/commands/i386/pc/sendkey.c:46 -msgid "press SysRq" -msgstr "pritisnite tipko SysRq" - -#: grub-core/commands/i386/pc/sendkey.c:47 -msgid "press NumLock key" -msgstr "pritisnite tipko NumLock" - -#: grub-core/commands/i386/pc/sendkey.c:48 -msgid "press CapsLock key" -msgstr "pritisnite tipko CapsLock" - -#: grub-core/commands/i386/pc/sendkey.c:49 -msgid "press ScrollLock key" -msgstr "pritisnite tipko ScrollLock" - -#: grub-core/commands/i386/pc/sendkey.c:50 -msgid "press Insert key" -msgstr "pritisnite tipko Insert" - -#: grub-core/commands/i386/pc/sendkey.c:51 -msgid "press left alt" -msgstr "pritisnite levo tipko Alt" - -#: grub-core/commands/i386/pc/sendkey.c:52 -msgid "press right alt" -msgstr "pritisnite desno tipko Alt" - -#: grub-core/commands/i386/pc/sendkey.c:53 -msgid "press left ctrl" -msgstr "pritisnite levo tipko Ctrl" - -#: grub-core/commands/i386/pc/sendkey.c:54 -msgid "press right ctrl" -msgstr "pritisnite desno tipko Ctrl" - -#: grub-core/commands/i386/pc/sendkey.c:55 -msgid "don't update LED state" -msgstr "ne posodobi stanja LED" - -#: grub-core/commands/i386/pc/sendkey.c:372 -msgid "[KEYSTROKE1] [KEYSTROKE2] ..." -msgstr "[PRITISKTIPKE1] [[PRITISKTIPKE2] ..." - -#. TRANSLATORS: It can emulate multiple -#. keypresses. -#: grub-core/commands/i386/pc/sendkey.c:375 -msgid "Emulate a keystroke sequence" -msgstr "Posnemaj zaporedje pritiska tipk" - -#: grub-core/commands/i386/rdmsr.c:37 grub-core/commands/iorw.c:34 -#: grub-core/commands/memrw.c:33 grub-core/commands/setpci.c:73 -msgid "Save read value into variable VARNAME." -msgstr "Shrani vrednost branja v spremenljivko IME_SPREMENLJIVKE." - -#: grub-core/commands/i386/rdmsr.c:38 grub-core/commands/iorw.c:35 -#: grub-core/commands/memrw.c:34 grub-core/commands/probe.c:40 -#: grub-core/commands/search_wrap.c:40 grub-core/commands/setpci.c:74 -#: grub-core/commands/tr.c:32 -msgid "VARNAME" -msgstr "IME_SPREMENLJIVKE" - -#: grub-core/commands/i386/rdmsr.c:55 grub-core/commands/i386/rdmsr.c:60 -#: grub-core/commands/i386/rdmsr.c:65 grub-core/commands/i386/wrmsr.c:47 -#: grub-core/commands/i386/wrmsr.c:52 grub-core/commands/i386/wrmsr.c:57 -#, fuzzy -msgid "unsupported instruction" -msgstr "nepodprta oblika gzip" - -#: grub-core/commands/i386/rdmsr.c:77 grub-core/commands/i386/wrmsr.c:69 -#: grub-core/commands/i386/wrmsr.c:77 grub-core/net/dns.c:727 -#, fuzzy -msgid "invalid argument" -msgstr "neveljaven parameter %s" - -#: grub-core/commands/i386/rdmsr.c:94 grub-core/commands/memrw.c:125 -#: grub-core/commands/memrw.c:129 grub-core/commands/memrw.c:133 -msgid "ADDR" -msgstr "ADDR" - -#: grub-core/commands/i386/rdmsr.c:95 -msgid "Read a CPU model specific register." -msgstr "" - -#: grub-core/commands/i386/wrmsr.c:86 -#, fuzzy -msgid "ADDR VALUE" -msgstr "ADDR VREDNOST [MASKA]" - -#: grub-core/commands/i386/wrmsr.c:87 -msgid "Write a value to a CPU model specific register." -msgstr "" - -#: grub-core/commands/ieee1275/suspend.c:34 -msgid "Run `go' to resume GRUB." -msgstr "Zaženite `go' za nadaljevanje nalagalnika GRUB." - -#: grub-core/commands/ieee1275/suspend.c:45 -msgid "Return to IEEE1275 prompt." -msgstr "Vrni se na poziv IEEE1275." - -#: grub-core/commands/iorw.c:123 grub-core/commands/iorw.c:127 -#: grub-core/commands/iorw.c:131 grub-core/gdb/gdb.c:79 -msgid "PORT" -msgstr "VRATA" - -#: grub-core/commands/iorw.c:123 -msgid "Read 8-bit value from PORT." -msgstr "Preberi 8-bitno vrednost z VRAT." - -#: grub-core/commands/iorw.c:127 -msgid "Read 16-bit value from PORT." -msgstr "Preberi 16-bitno vrednost z VRAT." - -#: grub-core/commands/iorw.c:131 -msgid "Read 32-bit value from PORT." -msgstr "Preberi 32-bitno vrednost z VRAT." - -#: grub-core/commands/iorw.c:135 grub-core/commands/iorw.c:139 -msgid "PORT VALUE [MASK]" -msgstr "VREDNOST VRAT [MASKA]" - -#: grub-core/commands/iorw.c:136 -msgid "Write 8-bit VALUE to PORT." -msgstr "ZapiÅ¡i 8-bitno VREDNOST na VRATA." - -#: grub-core/commands/iorw.c:140 -msgid "Write 16-bit VALUE to PORT." -msgstr "ZapiÅ¡i 16-bitno VREDNOST na VRATA." - -#: grub-core/commands/iorw.c:143 grub-core/commands/memrw.c:137 -#: grub-core/commands/memrw.c:141 grub-core/commands/memrw.c:145 -msgid "ADDR VALUE [MASK]" -msgstr "ADDR VREDNOST [MASKA]" - -#: grub-core/commands/iorw.c:144 -msgid "Write 32-bit VALUE to PORT." -msgstr "ZapiÅ¡i 32-bitno VREDNOST na VRATA." - -#: grub-core/commands/keylayouts.c:215 grub-core/commands/loadenv.c:61 -#: grub-core/commands/nativedisk.c:189 grub-core/efiemu/main.c:235 -#: grub-core/font/font.c:428 grub-core/gfxmenu/gfxmenu.c:63 -#: grub-core/kern/device.c:42 grub-core/kern/dl.c:740 -#, c-format -msgid "variable `%s' isn't set" -msgstr "spremenljivka `%s' ni nastavljena" - -#: grub-core/commands/keylayouts.c:301 -msgid "Load a keyboard layout." -msgstr "Naloži razporeditev tipk." - -#. TRANSLATORS: "Check" in a sense that if this key is pressed then -#. "true" is returned, otherwise "false". -#: grub-core/commands/keystatus.c:32 -msgid "Check Shift key." -msgstr "Preverite tipko Shift." - -#: grub-core/commands/keystatus.c:33 -msgid "Check Control key." -msgstr "Preverite tipko Control." - -#: grub-core/commands/keystatus.c:34 -msgid "Check Alt key." -msgstr "Preverite tipko Alt." - -#. TRANSLATORS: there are 3 modifiers. -#: grub-core/commands/keystatus.c:106 -msgid "Check key modifier status." -msgstr "Preverite stanje pomožnih tipk" - -#: grub-core/commands/legacycfg.c:512 grub-core/commands/legacycfg.c:526 -#: grub-core/commands/legacycfg.c:546 grub-core/commands/legacycfg.c:559 -#: grub-core/commands/time.c:43 grub-core/script/function.c:109 -#: util/grub-file.c:100 util/grub-fstest.c:57 util/grub-mount.c:69 -#, c-format -msgid "can't find command `%s'" -msgstr "ni mogoÄe najti ukaza `%s'" - -#: grub-core/commands/legacycfg.c:813 grub-core/normal/auth.c:225 -#: util/grub-mkpasswd-pbkdf2.c:139 -msgid "Enter password: " -msgstr "Vnesite geslo: " - -#. TRANSLATORS: "legacy config" means -#. "config as used by grub-legacy". -#: grub-core/commands/legacycfg.c:837 -msgid "Parse legacy config in same context" -msgstr "RazÄleni opuÅ¡Äeno nastavitev v enaki vsebini." - -#: grub-core/commands/legacycfg.c:842 -msgid "Parse legacy config in new context" -msgstr "RazÄleni opuÅ¡Äeno nastavitev v novi vsebini." - -#: grub-core/commands/legacycfg.c:847 -msgid "Parse legacy config in same context taking only menu entries" -msgstr "RazÄleni opuÅ¡Äeno nastavitev v enaki vsebini in vzame le vnose menija" - -#: grub-core/commands/legacycfg.c:852 -msgid "Parse legacy config in new context taking only menu entries" -msgstr "RazÄleni opuÅ¡Äeno nastavitev v novi vsebini in vzame le vnose menija" - -#: grub-core/commands/legacycfg.c:856 -msgid "[--no-mem-option] [--type=TYPE] FILE [ARG ...]" -msgstr "[--no-mem-option] [--type=VRSTA] DATOTEKA [ARG ...]" - -#: grub-core/commands/legacycfg.c:857 -msgid "Simulate grub-legacy `kernel' command" -msgstr "Simulira ukaz `kernel' grub-legacy" - -#: grub-core/commands/legacycfg.c:861 grub-core/commands/legacycfg.c:865 -msgid "FILE [ARG ...]" -msgstr "DATOTEKA [ARG ...]" - -#: grub-core/commands/legacycfg.c:862 -msgid "Simulate grub-legacy `initrd' command" -msgstr "Simulira ukaz `initrd' grub-legacy" - -#: grub-core/commands/legacycfg.c:866 -msgid "Simulate grub-legacy `modulenounzip' command" -msgstr "Simulira ukaz `modulenounzip' grub-legacy" - -#: grub-core/commands/legacycfg.c:870 grub-core/commands/legacycfg.c:875 -msgid "[--md5] PASSWD [FILE]" -msgstr "[--md5] PASSWD [DATOTEKA]" - -#: grub-core/commands/legacycfg.c:871 -msgid "Simulate grub-legacy `password' command" -msgstr "Simulira ukaz `password' grub-legacy" - -#: grub-core/commands/legacycfg.c:876 -msgid "Simulate grub-legacy `password' command in menu entry mode" -msgstr "Simulira ukaz `password' grub-legacy v naÄinu vnosa menijev" - -#. TRANSLATORS: This option is used to override default filename -#. for loading and storing environment. -#: grub-core/commands/loadenv.c:37 -msgid "Specify filename." -msgstr "Navedite ime datoteke." - -#: grub-core/commands/loadenv.c:39 -msgid "Skip signature-checking of the environment file." -msgstr "" - -#: grub-core/commands/loadenv.c:451 -#, fuzzy -msgid "[-f FILE] [-s|--skip-sig] [variable_name_to_whitelist] [...]" -msgstr "[-f DATOTEKA] ime_spremenljivke [...]" - -#: grub-core/commands/loadenv.c:452 -msgid "Load variables from environment block file." -msgstr "Naloži spremenljivke iz okoljske bloÄne datoteke." - -#: grub-core/commands/loadenv.c:455 -msgid "[-f FILE]" -msgstr "[-f DATOTEKA]" - -#: grub-core/commands/loadenv.c:456 -msgid "List variables from environment block file." -msgstr "IzpiÅ¡i spremenljivke iz okoljske bloÄne datoteke." - -#: grub-core/commands/loadenv.c:460 -msgid "[-f FILE] variable_name [...]" -msgstr "[-f DATOTEKA] ime_spremenljivke [...]" - -#: grub-core/commands/loadenv.c:461 -msgid "Save variables to environment block file." -msgstr "Shrani spremenljivke v okoljsko bloÄno datoteko." - -#: grub-core/commands/ls.c:40 -msgid "Show a long list with more detailed information." -msgstr "Prikaži dolg seznam s podrobnejÅ¡imi podatki." - -#: grub-core/commands/ls.c:41 -msgid "Print sizes in a human readable format." -msgstr "IzpiÅ¡i velikosti v Äloveku berljivi obliki." - -#: grub-core/commands/ls.c:42 -msgid "List all files." -msgstr "Natisni vse datoteke." - -#: grub-core/commands/ls.c:73 -msgid "Network protocols:" -msgstr "Omrežni protokoli:" - -#: grub-core/commands/ls.c:295 -msgid "[-l|-h|-a] [FILE ...]" -msgstr "[-l|-h|-a] [DATOTEKA ...]" - -#: grub-core/commands/ls.c:296 -msgid "List devices and files." -msgstr "IzpiÅ¡i naprave in datoteke." - -#: grub-core/commands/lsacpi.c:255 -msgid "Show version 1 tables only." -msgstr "Pokaži le preglednice razliÄice 1." - -#: grub-core/commands/lsacpi.c:256 -msgid "Show version 2 and version 3 tables only." -msgstr "Pokaži le preglednice razliÄic 2 in 3." - -#: grub-core/commands/lsacpi.c:306 -msgid "Show ACPI information." -msgstr "Pokaži podrobnosti ACPI." - -#: grub-core/commands/lsmmap.c:31 -msgid "available RAM" -msgstr "razpoložljivi RAM" - -#: grub-core/commands/lsmmap.c:32 -msgid "reserved RAM" -msgstr "rezerviran RAM" - -#. TRANSLATORS: this refers to memory where ACPI tables are stored -#. and which can be used by OS once it loads ACPI tables. -#: grub-core/commands/lsmmap.c:35 -msgid "ACPI reclaimable RAM" -msgstr "dodeljiv RAM za ACPI" - -#. TRANSLATORS: this refers to memory which ACPI-compliant OS -#. is required to save accross hibernations. -#: grub-core/commands/lsmmap.c:38 -msgid "ACPI non-volatile storage RAM" -msgstr "obstojni pomnilnik RAM za ACPI" - -#: grub-core/commands/lsmmap.c:39 -msgid "faulty RAM (BadRAM)" -msgstr "okvarjen RAM (BadRAM)" - -#: grub-core/commands/lsmmap.c:40 -msgid "persistent RAM" -msgstr "" - -#: grub-core/commands/lsmmap.c:41 -msgid "persistent RAM (legacy)" -msgstr "" - -#: grub-core/commands/lsmmap.c:42 -#, fuzzy -msgid "RAM holding coreboot tables" -msgstr "strojna programska oprema za RAM" - -#: grub-core/commands/lsmmap.c:43 -msgid "RAM holding firmware code" -msgstr "strojna programska oprema za RAM" - -#: grub-core/commands/lsmmap.c:52 -#, c-format -msgid "base_addr = 0x%llx, length = 0x%llx, %s\n" -msgstr "base_addr = 0x%llx, dolžina = 0x%llx, %s\n" - -#: grub-core/commands/lsmmap.c:55 -#, c-format -msgid "base_addr = 0x%llx, length = 0x%llx, type = 0x%x\n" -msgstr "base_addr = 0x%llx, dolžina = 0x%llx, vrsta = 0x%x\n" - -#: grub-core/commands/lsmmap.c:79 -msgid "List memory map provided by firmware." -msgstr "" -"Navedi preslikavo pomnilnika, zagotovljenega s strani programske strojne " -"opreme." - -#: grub-core/commands/lspci.c:232 -msgid "List PCI devices." -msgstr "IzpiÅ¡i naprave PCI." - -#: grub-core/commands/macbless.c:224 -msgid "Bless FILE of HFS or HFS+ partition for intel macs." -msgstr "" - -#: grub-core/commands/macbless.c:228 -msgid "Bless DIR of HFS or HFS+ partition for PPC macs." -msgstr "" - -#: grub-core/commands/memrw.c:125 -msgid "Read 8-bit value from ADDR." -msgstr "Preberi 8-bitno vrednost in NASLOVA." - -#: grub-core/commands/memrw.c:129 -msgid "Read 16-bit value from ADDR." -msgstr "Preberi 16-bitno vrednost in NASLOVA." - -#: grub-core/commands/memrw.c:133 -msgid "Read 32-bit value from ADDR." -msgstr "Preberi 32-bitno vrednost in NASLOVA." - -#: grub-core/commands/memrw.c:138 -msgid "Write 8-bit VALUE to ADDR." -msgstr "ZapiÅ¡i 8-bitno VREDNOST na NASLOV." - -#: grub-core/commands/memrw.c:142 -msgid "Write 16-bit VALUE to ADDR." -msgstr "ZapiÅ¡i 16-bitno VREDNOST na NASLOV." - -#: grub-core/commands/memrw.c:146 -msgid "Write 32-bit VALUE to ADDR." -msgstr "ZapiÅ¡i 32-bitno VREDNOST na NASLOV." - -#: grub-core/commands/menuentry.c:31 -msgid "Menu entry type." -msgstr "Vrsta vnosa menija." - -#: grub-core/commands/menuentry.c:31 grub-core/commands/menuentry.c:38 -#: grub-core/commands/menuentry.c:39 grub-core/gettext/gettext.c:520 -#: util/grub-fstest.c:520 util/grub-install.c:291 util/grub-install.c:304 -#: util/grub-mknetdir.c:51 util/grub-mkrescue.c:109 util/grub-mkrescue.c:110 -#: util/grub-mount.c:453 util/grub-render-label.c:65 -msgid "STRING" -msgstr "NIZ" - -#: grub-core/commands/menuentry.c:33 -msgid "List of users allowed to boot this entry." -msgstr "Seznamov uporabnikov, ki lahko zaženejo ta vnos." - -#: grub-core/commands/menuentry.c:33 -msgid "USERNAME[,USERNAME]" -msgstr "UPORABNIÅ KO_IME[,UPORABNIÅ KO_IME]" - -#: grub-core/commands/menuentry.c:36 -msgid "Keyboard key to quickly boot this entry." -msgstr "Tipka za hiter zagon tega vnosa." - -#: grub-core/commands/menuentry.c:36 -msgid "KEYBOARD_KEY" -msgstr "TIPKA" - -#: grub-core/commands/menuentry.c:38 -msgid "Use STRING as menu entry body." -msgstr "Uporabi NIZ kot telo vnosa menija." - -#: grub-core/commands/menuentry.c:39 -msgid "Menu entry identifier." -msgstr "DoloÄilo vnosa menija." - -#. TRANSLATORS: menu entry can either be bootable by anyone or only by -#. handful of users. By default when security is active only superusers can -#. boot a given menu entry. With --unrestricted (this option) -#. anyone can boot it. -#: grub-core/commands/menuentry.c:44 -msgid "This entry can be booted by any user." -msgstr "Ta vnos lahko zažene katerikoli uporabnik." - -#: grub-core/commands/menuentry.c:323 grub-core/commands/menuentry.c:328 -#: grub-core/tests/test_blockarg.c:46 -msgid "BLOCK" -msgstr "BLOK" - -#: grub-core/commands/menuentry.c:323 -msgid "Define a menu entry." -msgstr "DoloÄi vnos menija." - -#: grub-core/commands/menuentry.c:328 -msgid "Define a submenu." -msgstr "DoloÄi podrejeni meni." - -#. TRANSLATORS: this is module list header. Name -#. is module name, Ref Count is a reference counter -#. (how many modules or open descriptors use it). -#. Dependencies are the other modules it uses. -#. -#: grub-core/commands/minicmd.c:162 -msgid "Name\tRef Count\tDependencies\n" -msgstr "Ime\tSklicno Å¡tevilo\tOdvisnosti\n" - -#: grub-core/commands/minicmd.c:201 -msgid "Show this message." -msgstr "Pokaži to sporoÄilo." - -#: grub-core/commands/minicmd.c:204 -msgid "ADDR [SIZE]" -msgstr "ADDR [VELIKOST]" - -#: grub-core/commands/minicmd.c:204 -msgid "Show memory contents." -msgstr "Pokaži vsebino pomnilnika." - -#: grub-core/commands/minicmd.c:207 grub-core/kern/corecmd.c:188 -#: util/grub-install.c:275 -msgid "MODULE" -msgstr "MODUL" - -#: grub-core/commands/minicmd.c:207 -msgid "Remove a module." -msgstr "Odstrani modul." - -#: grub-core/commands/minicmd.c:210 -msgid "Show loaded modules." -msgstr "Pokaži naložene module." - -#: grub-core/commands/minicmd.c:213 -msgid "Exit from GRUB." -msgstr "KonÄaj zaganjalnik GRUB." - -#: grub-core/commands/mips/loongson/lsspd.c:42 -msgid "No CS5536 found" -msgstr "Ni najdene naprave CS5536" - -#: grub-core/commands/mips/loongson/lsspd.c:45 -#, c-format -msgid "CS5536 at %d:%d.%d\n" -msgstr "Naprava CS5536 pri %d:%d.%d\n" - -#. TRANSLATORS: System management bus is often used to access components like -#. RAM (info only, not data) or batteries. I/O space is where in memory -#. its ports are. -#: grub-core/commands/mips/loongson/lsspd.c:55 -#, c-format -msgid "System management bus controller I/O space is at 0x%x\n" -msgstr "Prostor V/I nadzornika upravljanja vodila je na 0x%x\n" - -#. TRANSLATORS: it's shown in a report in a way -#. like number 1: ... number 2: ... -#. -#: grub-core/commands/mips/loongson/lsspd.c:66 -#, c-format -msgid "RAM slot number %d\n" -msgstr "Å tevilka %d mesta RAM\n" - -#: grub-core/commands/mips/loongson/lsspd.c:73 -#, c-format -msgid "Written SPD bytes: %d B.\n" -msgstr "Zapisani bajti SPD: %d B.\n" - -#: grub-core/commands/mips/loongson/lsspd.c:74 -#, c-format -msgid "Total flash size: %d B.\n" -msgstr "Celotna velikost bliskovnega pogona: %d B.\n" - -#: grub-core/commands/mips/loongson/lsspd.c:79 -msgid "Memory type: DDR2." -msgstr "Vrsta pomnilnika: DDR2." - -#: grub-core/commands/mips/loongson/lsspd.c:83 -#, c-format -msgid "Part no: %s.\n" -msgstr "Del Å¡t.: %s.\n" - -#: grub-core/commands/mips/loongson/lsspd.c:86 -msgid "Memory type: Unknown." -msgstr "Vrsta pomnilnika: neznana." - -#: grub-core/commands/mips/loongson/lsspd.c:97 -msgid "Print Memory information." -msgstr "IzpiÅ¡i podrobnosti o pomnilniku." - -#: grub-core/commands/nativedisk.c:118 grub-core/commands/probe.c:118 -#: grub-core/commands/probe.c:124 util/grub-probe.c:450 -#, c-format -msgid "%s does not support UUIDs" -msgstr "%s ne podpira vrednosti UUID" - -#: grub-core/commands/nativedisk.c:325 -msgid "[MODULE1 MODULE2 ...]" -msgstr "" - -#: grub-core/commands/nativedisk.c:326 -msgid "" -"Switch to native disk drivers. If no modules are specified default set (pata," -"ahci,usbms,ohci,uhci,ehci) is used" -msgstr "" - -#: grub-core/commands/parttool.c:40 -msgid "" -"Perform COMMANDS on partition.\n" -"Use `parttool PARTITION help' for the list of available commands." -msgstr "" -"Izvedi UKAZE na razdelku.\n" -"Uporabi `parttool RAZDELEK help' za seznam razpoložljivih ukazov." - -#: grub-core/commands/parttool.c:123 -msgid "=VAL" -msgstr "=VREDNOST" - -#: grub-core/commands/parttool.c:136 -#, fuzzy, c-format -msgid "Sorry, no parttool is available for %s\n" -msgstr "Orodje parttool za %s ni na voljo.\n" - -#: grub-core/commands/parttool.c:288 grub-core/lib/arg.c:285 -#: grub-core/lib/arg.c:351 -#, c-format -msgid "unknown argument `%s'" -msgstr "neznan argument `%s'" - -#: grub-core/commands/parttool.c:344 -msgid "PARTITION COMMANDS" -msgstr "RAZDELEK UKAZI" - -#: grub-core/commands/password.c:85 -msgid "USER PASSWORD" -msgstr "UPORABNIÅ KO GESLO" - -#: grub-core/commands/password.c:86 -msgid "Set user password (plaintext). Unrecommended and insecure." -msgstr "" -"Nastavi uporabniÅ¡ko geslo (obiÄajno besedilo). NepriporoÄljivo in nevarno." - -#. TRANSLATORS: it means that the string which -#. was supposed to be a password hash doesn't -#. have a correct format, not to password -#. mismatch. -#: grub-core/commands/password_pbkdf2.c:98 -#: grub-core/commands/password_pbkdf2.c:115 -#: grub-core/commands/password_pbkdf2.c:123 -#: grub-core/commands/password_pbkdf2.c:150 -#: grub-core/commands/password_pbkdf2.c:179 -msgid "invalid PBKDF2 password" -msgstr "neveljavno geslo PBKDF2" - -#: grub-core/commands/password_pbkdf2.c:202 -msgid "USER PBKDF2_PASSWORD" -msgstr "USER PBKDF2_PASSWORD" - -#: grub-core/commands/password_pbkdf2.c:203 -msgid "Set user password (PBKDF2). " -msgstr "Nastavi geslo uporabnika (PBKDF2). " - -#: grub-core/commands/pcidump.c:39 grub-core/commands/setpci.c:69 -msgid "Select device by vendor and device IDs." -msgstr "Izberite napravo po ponudniku in ID naprave." - -#: grub-core/commands/pcidump.c:40 grub-core/commands/setpci.c:70 -msgid "[vendor]:[device]" -msgstr "[ponudnik]:[naprava]" - -#: grub-core/commands/pcidump.c:41 grub-core/commands/setpci.c:71 -msgid "Select device by its position on the bus." -msgstr "Izberite napravo z njenim položajem na vodilu." - -#: grub-core/commands/pcidump.c:42 grub-core/commands/setpci.c:72 -msgid "[bus]:[slot][.func]" -msgstr "[vodilo]:[mesto][.funk]" - -#: grub-core/commands/pcidump.c:109 grub-core/commands/pcidump.c:138 -#: grub-core/commands/setpci.c:183 grub-core/commands/setpci.c:214 -#: grub-core/fs/zfs/zfs.c:3794 grub-core/kern/emu/hostdisk.c:458 -#: grub-core/kern/emu/hostdisk.c:473 grub-core/kern/file.c:44 -#, c-format -msgid "missing `%c' symbol" -msgstr "manjka simbol `%c'" - -#: grub-core/commands/pcidump.c:168 -#, fuzzy -msgid "[-s POSITION] [-d DEVICE]" -msgstr "[MOŽNOST] ...[POT|NAPRAVA]" - -#: grub-core/commands/pcidump.c:169 -msgid "Show raw dump of the PCI configuration space." -msgstr "" - -#: grub-core/commands/pgp.c:45 -msgid "Skip signature-checking of the public key file." -msgstr "" - -#. TRANSLATORS: it's about GNUPG signatures. -#: grub-core/commands/pgp.c:71 grub-core/commands/pgp.c:81 -#: grub-core/commands/pgp.c:86 grub-core/commands/pgp.c:96 -#: grub-core/commands/pgp.c:103 grub-core/commands/pgp.c:107 -#: grub-core/commands/pgp.c:114 grub-core/commands/pgp.c:119 -#: grub-core/commands/pgp.c:124 grub-core/commands/pgp.c:128 -#: grub-core/commands/pgp.c:268 grub-core/commands/pgp.c:276 -#: grub-core/commands/pgp.c:281 grub-core/commands/pgp.c:289 -#: grub-core/commands/pgp.c:320 grub-core/commands/pgp.c:327 -#: grub-core/commands/pgp.c:332 grub-core/commands/pgp.c:342 -#: grub-core/commands/pgp.c:468 grub-core/commands/pgp.c:471 -#: grub-core/commands/pgp.c:474 grub-core/commands/pgp.c:477 -#: grub-core/commands/pgp.c:484 grub-core/commands/pgp.c:490 -#: grub-core/commands/pgp.c:665 -msgid "bad signature" -msgstr "" - -#. TRANSLATORS: %08x is 32-bit key id. -#: grub-core/commands/pgp.c:636 grub-core/commands/pgp.c:812 -#, fuzzy, c-format -msgid "public key %08x not found" -msgstr "fiziÄnega nosilca %s ni bilo mogoÄe najti." - -#: grub-core/commands/pgp.c:651 grub-core/disk/diskfilter.c:772 -#: grub-core/disk/diskfilter.c:782 grub-core/fs/ntfs.c:404 -#: grub-core/fs/zfs/zfs.c:1933 grub-core/normal/menu.c:428 -#, c-format -msgid "module `%s' isn't loaded" -msgstr "modul `%s' ni naložen" - -#: grub-core/commands/pgp.c:994 -msgid "[-s|--skip-sig] FILE SIGNATURE_FILE [PUBKEY_FILE]" -msgstr "" - -#: grub-core/commands/pgp.c:995 -msgid "Verify detached signature." -msgstr "" - -#: grub-core/commands/pgp.c:998 -msgid "[-s|--skip-sig] PUBKEY_FILE" -msgstr "" - -#: grub-core/commands/pgp.c:999 -msgid "Add PUBKEY_FILE to trusted keys." -msgstr "" - -#: grub-core/commands/pgp.c:1003 -msgid "Show the list of trusted keys." -msgstr "" - -#: grub-core/commands/pgp.c:1005 -msgid "PUBKEY_ID" -msgstr "" - -#: grub-core/commands/pgp.c:1006 -msgid "Remove PUBKEY_ID from trusted keys." -msgstr "" - -#: grub-core/commands/probe.c:40 grub-core/commands/tr.c:32 -msgid "Set a variable to return value." -msgstr "Nastavi spremenljivko na vraÄanje vrednosti." - -#. TRANSLATORS: It's a driver that is currently in use to access -#. the diven disk. -#: grub-core/commands/probe.c:43 -msgid "Determine driver." -msgstr "DoloÄite gonilnik." - -#: grub-core/commands/probe.c:44 -msgid "Determine partition map type." -msgstr "DoloÄi vrsto preslikave razdelkov." - -#: grub-core/commands/probe.c:45 -msgid "Determine filesystem type." -msgstr "DoloÄi vrsto datoteÄnega sistema." - -#: grub-core/commands/probe.c:46 -msgid "Determine filesystem UUID." -msgstr "DoloÄitev UUID datoteÄnega sistema." - -#: grub-core/commands/probe.c:47 -msgid "Determine filesystem label." -msgstr "DoloÄitev oznake datoteÄnega sistema." - -#: grub-core/commands/probe.c:139 grub-core/commands/probe.c:146 -#: util/grub-probe.c:462 -#, c-format -msgid "filesystem `%s' does not support labels" -msgstr "datoteÄni sistem `%s' ne podpira oznak" - -#: grub-core/commands/probe.c:165 grub-core/fs/zfs/zfsinfo.c:430 -#: grub-core/loader/i386/bsd.c:169 util/grub-setup.c:223 -msgid "DEVICE" -msgstr "NAPRAVA" - -#: grub-core/commands/probe.c:166 -msgid "Retrieve device info." -msgstr "Pridobitev podrobnosti o napravi." - -#: grub-core/commands/read.c:85 -msgid "[ENVVAR]" -msgstr "[OKOLJSPRE]" - -#: grub-core/commands/read.c:86 -msgid "Set variable with user input." -msgstr "Nastavi spremenljivko z vnosom uporabnika." - -#: grub-core/commands/reboot.c:40 -msgid "Reboot the computer." -msgstr "Znova zaženite raÄunalnik." - -#. TRANSLATORS: in regexp you can mark some -#. groups with parentheses. These groups are -#. then numbered and you can save some of -#. them in variables. In other programs -#. those components aree often referenced with -#. back slash, e.g. \1. Compare -#. sed -e 's,\([a-z][a-z]*\),lowercase=\1,g' -#. The whole matching component is saved in VARNAME, not its number. -#. -#: grub-core/commands/regexp.c:44 -msgid "Store matched component NUMBER in VARNAME." -msgstr "Shramba se ujema s sestavnim delom Å TEVILO v IMENU_SPREMENLJIVKE" - -#: grub-core/commands/regexp.c:45 -msgid "[NUMBER:]VARNAME" -msgstr "[Å TEVILO:]IME_SPREMENLJIVKE" - -#. TRANSLATORS: This are two arguments. So it's -#. two separate units to translate and pay -#. attention not to reverse them. -#: grub-core/commands/regexp.c:157 -msgid "REGEXP STRING" -msgstr "REGEXP NIZ" - -#: grub-core/commands/regexp.c:158 -msgid "Test if REGEXP matches STRING." -msgstr "Preizkusi, ali je REGEXP skladen z NIZEM." - -#: grub-core/commands/search.c:324 -msgid "NAME [VARIABLE] [HINTS]" -msgstr "IME [SPREMENLJIVKA] [NAMIGI]" - -#: grub-core/commands/search_file.c:4 -msgid "" -"Search devices by file. If VARIABLE is specified, the first device found is " -"set to a variable." -msgstr "" -"IÅ¡Äi naprave po datotekah. ÄŒe je SPREMENLJIVKA navedena, bo prva najdena " -"naprava nastavljena na spremenljivko." - -#: grub-core/commands/search_label.c:4 -msgid "" -"Search devices by label. If VARIABLE is specified, the first device found is " -"set to a variable." -msgstr "" -"IÅ¡Äi naprave po oznakah. ÄŒe je SPREMENLJIVKA navedena, bo prva najdena " -"naprava nastavljena na spremenljivko." - -#: grub-core/commands/search_uuid.c:4 -msgid "" -"Search devices by UUID. If VARIABLE is specified, the first device found is " -"set to a variable." -msgstr "" -"PoiÅ¡Äi naprave po UUID. ÄŒe je SPREMENLJIVKA navedena, bo prva najdena " -"naprava nastavljena na spremenljivko." - -#: grub-core/commands/search_wrap.c:34 -msgid "Search devices by a file." -msgstr "PoiÅ¡Äi naprave po datoteki" - -#: grub-core/commands/search_wrap.c:35 -msgid "Search devices by a filesystem label." -msgstr "PoiÅ¡Äi naprave po oznaki datoteÄnega sistema." - -#: grub-core/commands/search_wrap.c:37 -msgid "Search devices by a filesystem UUID." -msgstr "PoiÅ¡Äi naprave po UUID datoteÄnega sistema." - -#: grub-core/commands/search_wrap.c:40 -msgid "Set a variable to the first device found." -msgstr "Nastavi spremenljivko za prvo najdeno napravo." - -#: grub-core/commands/search_wrap.c:42 -msgid "Do not probe any floppy drive." -msgstr "Ne preizkuÅ¡aj kateregakoli disketnega pogona." - -#: grub-core/commands/search_wrap.c:44 -msgid "" -"First try the device HINT. If HINT ends in comma, also try subpartitions" -msgstr "" -"Najprej preizkusi napravo NAMIG. V primeru, da se NAMIG konÄa z vejico, " -"preizkusi tudi podrejene razdelke" - -#: grub-core/commands/search_wrap.c:45 grub-core/commands/search_wrap.c:49 -#: grub-core/commands/search_wrap.c:53 grub-core/commands/search_wrap.c:57 -#: grub-core/commands/search_wrap.c:61 grub-core/commands/search_wrap.c:65 -msgid "HINT" -msgstr "NAMIG" - -#: grub-core/commands/search_wrap.c:47 -msgid "" -"First try the device HINT if currently running on IEEE1275. If HINT ends in " -"comma, also try subpartitions" -msgstr "" -"Najprej preizkusi napravo NAMIG, ali se trenutno izvaja na IEEE1275. V " -"primeru, da se NAMIG konÄa z vejico, preizkusi tudi podrejene razdelke." - -#: grub-core/commands/search_wrap.c:51 -msgid "" -"First try the device HINT if currently running on BIOS. If HINT ends in " -"comma, also try subpartitions" -msgstr "" -"Najprej preizkusi napravo NAMIG, Äe se trenutno izvaja na BIOS. V primeru, " -"da se NAMIG konÄa z vejico, preizkusi tudi podrejene razdelke." - -#: grub-core/commands/search_wrap.c:55 -msgid "" -"First try the device HINT if direct hardware access is supported. If HINT " -"ends in comma, also try subpartitions" -msgstr "" -"Najprej preizkusi napravo NAMIG, Äe je podprt neposreden dostop do strojne " -"opreme. V primeru, da se NAMIG konÄa z vejico, preizkusi tudi podrejene " -"razdelke." - -#: grub-core/commands/search_wrap.c:59 -msgid "" -"First try the device HINT if currently running on EFI. If HINT ends in " -"comma, also try subpartitions" -msgstr "" -"Najprej preizkusi napravo NAMIG, Äe se trenutno izvaja na EFI. V primeru, da " -"se NAMIG konÄa z vejico, preizkusi tudi podrejene razdelke." - -#: grub-core/commands/search_wrap.c:63 -msgid "" -"First try the device HINT if currently running on ARC. If HINT ends in " -"comma, also try subpartitions" -msgstr "" -"Najprej preizkusi napravo NAMIG, Äe se izvaja na ARC. V primeru, da se NAMIG " -"konÄa z vejico, preizkusi tudi podrejene razdelke." - -#: grub-core/commands/search_wrap.c:207 -msgid "[-f|-l|-u|-s|-n] [--hint HINT [--hint HINT] ...] NAME" -msgstr "[-f|-l|-u|-s|-n] [--hint NAMIG [--hint NAMIG] ...] IME" - -#: grub-core/commands/search_wrap.c:209 -msgid "" -"Search devices by file, filesystem label or filesystem UUID. If --set is " -"specified, the first device found is set to a variable. If no variable name " -"is specified, `root' is used." -msgstr "" -"PoiÅ¡Äi naprave po datoteki, oznaki datoteÄnega sistema ali UUID datoteÄnega " -"sistema. ÄŒe je doloÄena možnost --set, je prva najdena naprava nastavljena " -"na spremenljivko. V primeru, da ime spremenljivke ni navedeno, je " -"uporabljena `korenska mapa`." - -#: grub-core/commands/setpci.c:132 -#, fuzzy, c-format -msgid "Register %x of %x:%02x.%x is %x\n" -msgstr "Register %x v %d:%d.%d je %x\n" - -#: grub-core/commands/setpci.c:333 -#, fuzzy -msgid "[-s POSITION] [-d DEVICE] [-v VAR] REGISTER[=VALUE[:MASK]]" -msgstr "" -"[-s POLOŽAJ] [-d NAPRAVA] [-v SPREMENLJIVKA] [REGISTER][=VREDNOST[:MASKA]]" - -#: grub-core/commands/setpci.c:335 -msgid "Manipulate PCI devices." -msgstr "Upravljaj naprave PCI." - -#: grub-core/commands/sleep.c:32 -msgid "Verbose countdown." -msgstr "OdÅ¡tevanje s podrobnim izpisom." - -#: grub-core/commands/sleep.c:33 -msgid "Allow to interrupt with ESC." -msgstr "Dovoli prekinitev s tipko ESC." - -#: grub-core/commands/sleep.c:109 -msgid "NUMBER_OF_SECONDS" -msgstr "Å TEVILO_SEKUND" - -#: grub-core/commands/sleep.c:110 -msgid "Wait for a specified number of seconds." -msgstr "PoÄakajte navedeno Å¡tevilo sekund." - -#: grub-core/commands/syslinuxcfg.c:50 util/grub-syslinux2cfg.c:66 -msgid "root directory of the syslinux disk [default=/]." -msgstr "" - -#: grub-core/commands/syslinuxcfg.c:53 util/grub-syslinux2cfg.c:72 -msgid "" -"current directory of syslinux [default is parent directory of input file]." -msgstr "" - -#: grub-core/commands/syslinuxcfg.c:55 util/grub-syslinux2cfg.c:75 -msgid "assume input is an isolinux configuration file." -msgstr "" - -#: grub-core/commands/syslinuxcfg.c:56 util/grub-syslinux2cfg.c:76 -msgid "assume input is a pxelinux configuration file." -msgstr "" - -#: grub-core/commands/syslinuxcfg.c:57 util/grub-syslinux2cfg.c:77 -#, fuzzy -msgid "assume input is a syslinux configuration file." -msgstr "Predpostavi, da je vhod Å¡ifrirana fraza." - -#. TRANSLATORS: "syslinux config" means -#. "config as used by syslinux". -#: grub-core/commands/syslinuxcfg.c:189 -#, fuzzy -msgid "Execute syslinux config in same context" -msgstr "RazÄleni opuÅ¡Äeno nastavitev v enaki vsebini." - -#: grub-core/commands/syslinuxcfg.c:195 -#, fuzzy -msgid "Execute syslinux config in new context" -msgstr "RazÄleni opuÅ¡Äeno nastavitev v novi vsebini." - -#: grub-core/commands/syslinuxcfg.c:201 -#, fuzzy -msgid "Execute syslinux config in same context taking only menu entries" -msgstr "RazÄleni opuÅ¡Äeno nastavitev v enaki vsebini in vzame le vnose menija" - -#: grub-core/commands/syslinuxcfg.c:207 -#, fuzzy -msgid "Execute syslinux config in new context taking only menu entries" -msgstr "RazÄleni opuÅ¡Äeno nastavitev v novi vsebini in vzame le vnose menija" - -#: grub-core/commands/terminal.c:90 -msgid "no terminal specified" -msgstr "ni navedenega terminala" - -#: grub-core/commands/terminal.c:112 grub-core/commands/terminal.c:139 -#, c-format -msgid "terminal `%s' isn't found" -msgstr "terminala `%s' ni mogoÄe najti" - -#: grub-core/commands/terminal.c:244 -msgid "Active input terminals:" -msgstr "Dejavni terminali vnosa:" - -#: grub-core/commands/terminal.c:245 -msgid "Available input terminals:" -msgstr "Razpoložljivi terminali vnosa" - -#: grub-core/commands/terminal.c:261 -msgid "Active output terminals:" -msgstr "Dejavni terminali izhoda:" - -#: grub-core/commands/terminal.c:262 -msgid "Available output terminals:" -msgstr "Razpoložljivi terminali izhoda:" - -#: grub-core/commands/terminal.c:271 grub-core/commands/terminal.c:276 -msgid "[--append|--remove] [TERMINAL1] [TERMINAL2] ..." -msgstr "[--append|--remove] [TERMINAL1] [TERMINAL2] ..." - -#: grub-core/commands/terminal.c:273 -msgid "List or select an input terminal." -msgstr "IzpiÅ¡e ali izbere vhodni terminal." - -#: grub-core/commands/terminal.c:278 -msgid "List or select an output terminal." -msgstr "IzpiÅ¡e ali izbere izhodni terminal." - -#: grub-core/commands/test.c:444 -msgid "EXPRESSION ]" -msgstr "IZRAZ ]" - -#: grub-core/commands/test.c:444 grub-core/commands/test.c:447 -msgid "Evaluate an expression." -msgstr "Oceni izraz." - -#: grub-core/commands/test.c:447 -msgid "EXPRESSION" -msgstr "IZRAZ" - -#: grub-core/commands/testload.c:164 -msgid "Load the same file in multiple ways." -msgstr "Naloži isto datoteko na veÄ naÄinov." - -#: grub-core/commands/testspeed.c:35 -msgid "Specify size for each read operation" -msgstr "" - -#: grub-core/commands/testspeed.c:58 -#, fuzzy -msgid "invalid block size" -msgstr "neporavnana velikost naprave" - -#: grub-core/commands/testspeed.c:80 -#, c-format -msgid "File size: %s\n" -msgstr "" - -#: grub-core/commands/testspeed.c:83 -#, fuzzy, c-format -msgid "Elapsed time: %d.%03d s \n" -msgstr "PreteÄeni Äas: %d.%03d sekund \n" - -#: grub-core/commands/testspeed.c:92 -#, fuzzy, c-format -msgid "Speed: %s \n" -msgstr "ID naprave: %s\n" - -#: grub-core/commands/testspeed.c:107 -msgid "[-s SIZE] FILENAME" -msgstr "" - -#: grub-core/commands/testspeed.c:108 -msgid "Test file read speed." -msgstr "" - -#: grub-core/commands/time.c:38 grub-core/script/execute.c:974 -msgid "no command is specified" -msgstr "ukaz ni doloÄen" - -#: grub-core/commands/time.c:50 -#, c-format -msgid "Elapsed time: %d.%03d seconds \n" -msgstr "PreteÄeni Äas: %d.%03d sekund \n" - -#: grub-core/commands/time.c:61 -msgid "COMMAND [ARGS]" -msgstr "UKAZ [ARGUMENTI]" - -#: grub-core/commands/time.c:62 -msgid "Measure time used by COMMAND" -msgstr "Izmeri Äas, ki ga uporabi UKAZ" - -#: grub-core/commands/tr.c:33 -msgid "Translate to upper case." -msgstr "" - -#: grub-core/commands/tr.c:34 -msgid "Translate to lower case." -msgstr "" - -#: grub-core/commands/tr.c:119 -msgid "[OPTIONS] [SET1] [SET2] [STRING]" -msgstr "" - -#: grub-core/commands/tr.c:120 -msgid "Translate SET1 characters to SET2 in STRING." -msgstr "" - -#. TRANSLATORS: it's a command description. -#: grub-core/commands/true.c:50 -msgid "Do nothing, successfully." -msgstr "Ne poÄni niÄesar, uspeÅ¡no." - -#. TRANSLATORS: it's a command description. -#: grub-core/commands/true.c:54 -msgid "Do nothing, unsuccessfully." -msgstr "Ne poÄni niÄesar, neuspeÅ¡no." - -#: grub-core/commands/usbtest.c:221 -msgid "Test USB support." -msgstr "Preizkusi podporo za USB." - -#: grub-core/commands/verifiers.c:120 -#, c-format -msgid "verification requested but nobody cares: %s" -msgstr "" - -#: grub-core/commands/verifiers.c:140 -#, fuzzy -msgid "big file signature isn't implemented yet" -msgstr "selitev 0x%x Å¡e ni podprta" - -#: grub-core/commands/videoinfo.c:61 -msgid "Text-only " -msgstr "Le besedilo" - -#. TRANSLATORS: "Direct color" is a mode when the color components -#. are written dirrectly into memory. -#: grub-core/commands/videoinfo.c:66 -#, c-format -msgid "Direct color, mask: %d/%d/%d/%d pos: %d/%d/%d/%d" -msgstr "Neposredna barva, maska: %d/%d/%d/%d položaj: %d/%d/%d/%d" - -#. TRANSLATORS: In "paletted color" mode you write the index of the color -#. in the palette. Synonyms include "packed pixel". -#: grub-core/commands/videoinfo.c:78 -msgid "Paletted " -msgstr "" - -#: grub-core/commands/videoinfo.c:80 -msgid "YUV " -msgstr "YUV " - -#. TRANSLATORS: "Planar" is the video memory where you have to write -#. in several different banks "plans" to control the different color -#. components of the same pixel. -#: grub-core/commands/videoinfo.c:85 -msgid "Planar " -msgstr "Ravninsko" - -#: grub-core/commands/videoinfo.c:87 -msgid "Hercules " -msgstr "Hercules " - -#: grub-core/commands/videoinfo.c:89 -msgid "CGA " -msgstr "CGA " - -#. TRANSLATORS: Non-chain 4 is a 256-color planar -#. (unchained) video memory mode. -#: grub-core/commands/videoinfo.c:93 -msgid "Non-chain 4 " -msgstr "Ne-verižni naÄin 4" - -#: grub-core/commands/videoinfo.c:95 -msgid "Monochrome " -msgstr "Enobarvno" - -#: grub-core/commands/videoinfo.c:97 -msgid "Unknown video mode " -msgstr "Neznan naÄin videa" - -#: grub-core/commands/videoinfo.c:111 -msgid " EDID checksum invalid" -msgstr " Nadzorna vsota EDID je neveljavna" - -#: grub-core/commands/videoinfo.c:116 -#, c-format -msgid " EDID version: %u.%u\n" -msgstr " RazliÄica EDID: %u.%u\n" - -#: grub-core/commands/videoinfo.c:120 -#, c-format -msgid " Preferred mode: %ux%u\n" -msgstr " Prednostni naÄin: %ux%u\n" - -#: grub-core/commands/videoinfo.c:123 -msgid " No preferred mode available\n" -msgstr " Prednostni naÄin ni na voljo\n" - -#: grub-core/commands/videoinfo.c:146 grub-core/video/video.c:490 -#: grub-core/video/video.c:498 grub-core/video/video.c:509 -#: grub-core/video/video.c:520 grub-core/video/video.c:528 -#, c-format -msgid "invalid video mode specification `%s'" -msgstr "Neveljavno doloÄilo naÄina videa `%s'" - -#: grub-core/commands/videoinfo.c:168 -msgid "List of supported video modes:" -msgstr "Seznam podprtih naÄinov videa:" - -#: grub-core/commands/videoinfo.c:169 -msgid "Legend: mask/position=red/green/blue/reserved" -msgstr "Legenda: maska/položaj=rdeÄe/zeleno/modro/rezervirano" - -#: grub-core/commands/videoinfo.c:176 -#, c-format -msgid "Adapter `%s':\n" -msgstr "Vmesnik `%s':\n" - -#: grub-core/commands/videoinfo.c:180 -msgid " No info available" -msgstr " Podrobnosti niso na voljo" - -#: grub-core/commands/videoinfo.c:198 -msgid " Failed to initialize video adapter" -msgstr " ZaÄenjanje vmesnika videa je spodletelo" - -#. TRANSLATORS: "x" has to be entered in, -#. like an identifier, so please don't -#. use better Unicode codepoints. -#: grub-core/commands/videoinfo.c:239 grub-core/commands/videoinfo.c:248 -msgid "[WxH[xD]]" -msgstr "[WxH[xD]]" - -#: grub-core/commands/videoinfo.c:240 grub-core/commands/videoinfo.c:249 -msgid "" -"List available video modes. If resolution is given show only modes matching " -"it." -msgstr "" -"IzpiÅ¡i vse razpoložljive naÄine videa. V primeru podane loÄljivosti so " -"prikazani le naÄini, ki se z njo ujemajo." - -#. TRANSLATORS: "x" has to be entered in, -#. like an identifier, so please don't -#. use better Unicode codepoints. -#: grub-core/commands/videotest.c:225 -msgid "[WxH]" -msgstr "[WxH]" - -#. TRANSLATORS: Here, on the other hand, it's -#. nicer to use unicode cross instead of x. -#: grub-core/commands/videotest.c:228 -msgid "Test video subsystem in mode WxH." -msgstr "Preizkusi video podsistem v naÄinu WxH." - -#: grub-core/commands/videotest.c:231 -msgid "Test video subsystem." -msgstr "Preizkusi video podsistem." - -#: grub-core/commands/xen/lsxen.c:80 grub-core/commands/xen/lsxen.c:82 -msgid "[DIR]" -msgstr "" - -#: grub-core/commands/xen/lsxen.c:81 grub-core/commands/xen/lsxen.c:83 -msgid "List Xen storage." -msgstr "" - -#. TRANSLATORS: GRUBUUID stands for "filesystem -#. UUID as used in GRUB". -#: grub-core/commands/xnu_uuid.c:110 -msgid "[-l] GRUBUUID [VARNAME]" -msgstr "[-l] GRUBUUID [IME_SPREMENLJIVKE]" - -#: grub-core/commands/xnu_uuid.c:111 -msgid "" -"Transform 64-bit UUID to format suitable for XNU. If -l is given keep it " -"lowercase as done by blkid." -msgstr "" -"Pretvori 64-bitni UUID v zapis, primeren za XNU. ÄŒe je -l podan, ga obdrži v " -"pisavi malih Ärk, kot bi to storil blkid." - -#: grub-core/disk/arc/arcdisk.c:248 grub-core/disk/efi/efidisk.c:603 -#: grub-core/disk/i386/pc/biosdisk.c:498 grub-core/disk/i386/pc/biosdisk.c:543 -#: grub-core/disk/ieee1275/nand.c:198 grub-core/disk/ieee1275/obdisk.c:527 -#: grub-core/disk/ieee1275/ofdisk.c:586 -#, c-format -msgid "failure reading sector 0x%llx from `%s'" -msgstr "napaka branja odseka 0x%llx od `%s'" - -#: grub-core/disk/arc/arcdisk.c:284 grub-core/disk/efi/efidisk.c:626 -#: grub-core/disk/i386/pc/biosdisk.c:548 grub-core/disk/ieee1275/ofdisk.c:606 -#, c-format -msgid "failure writing sector 0x%llx to `%s'" -msgstr "napaka pisanja odseka 0x%llx na `%s'" - -#: grub-core/disk/cryptodisk.c:40 -msgid "Mount by UUID." -msgstr "Priklopi po UUID." - -#. TRANSLATORS: It's still restricted to cryptodisks only. -#: grub-core/disk/cryptodisk.c:42 -msgid "Mount all." -msgstr "Priklopi vse." - -#: grub-core/disk/cryptodisk.c:43 -msgid "Mount all volumes with `boot' flag set." -msgstr "Priklopi vse nosilce z nastavljeno zastavico `boot'." - -#. TRANSLATORS: The first %s is the file being looked at, the second %s is -#. the error message. -#: grub-core/disk/cryptodisk.c:526 grub-core/kern/emu/hostdisk.c:152 -#: grub-core/kern/emu/hostdisk.c:262 grub-core/kern/emu/hostdisk.c:434 -#: grub-core/kern/emu/misc.c:168 grub-core/kern/emu/misc.c:174 -#: grub-core/kern/emu/misc.c:196 grub-core/osdep/bsd/getroot.c:92 -#: grub-core/osdep/bsd/getroot.c:168 grub-core/osdep/hurd/getroot.c:68 -#: grub-core/osdep/linux/blocklist.c:65 grub-core/osdep/linux/getroot.c:150 -#: grub-core/osdep/linux/hostdisk.c:194 grub-core/osdep/linux/hostdisk.c:421 -#: grub-core/osdep/linux/ofpath.c:417 grub-core/osdep/linux/ofpath.c:422 -#: grub-core/osdep/linux/ofpath.c:517 grub-core/osdep/linux/ofpath.c:530 -#: grub-core/osdep/sun/getroot.c:110 grub-core/osdep/windows/blocklist.c:98 -#: grub-core/tests/video_checksum.c:279 util/editenv.c:46 util/glue-efi.c:115 -#: util/glue-efi.c:120 util/glue-efi.c:130 util/grub-editenv.c:138 -#: util/grub-editenv.c:192 util/grub-file.c:83 util/grub-fstest.c:128 -#: util/grub-fstest.c:568 util/grub-install-common.c:92 -#: util/grub-install-common.c:94 util/grub-install-common.c:101 -#: util/grub-install-common.c:529 util/grub-menulst2cfg.c:53 -#: util/grub-menulst2cfg.c:68 util/grub-mkimage.c:292 util/grub-mklayout.c:504 -#: util/grub-mklayout.c:516 util/grub-mknetdir.c:133 util/grub-mknetdir.c:151 -#: util/grub-mkrescue.c:627 util/grub-mkrescue.c:631 util/grub-mkrescue.c:879 -#: util/grub-mkrescue.c:883 util/grub-mkstandalone.c:253 util/grub-mount.c:498 -#: util/grub-render-label.c:169 util/grub-script-check.c:175 -#: util/grub-syslinux2cfg.c:181 util/grub-syslinux2cfg.c:191 -#: util/grub-syslinux2cfg.c:212 util/grub-syslinux2cfg.c:228 util/misc.c:91 -#: util/render-label.c:76 util/render-label.c:163 util/render-label.c:174 -#: util/resolve.c:246 util/setup.c:783 -#, c-format -msgid "cannot open `%s': %s" -msgstr "ni mogoÄe odpreti `%s': %s" - -#: grub-core/disk/cryptodisk.c:583 grub-core/disk/cryptodisk.c:628 -#: grub-core/kern/emu/hostdisk.c:270 grub-core/kern/emu/hostfs.c:142 -#: grub-core/osdep/linux/hostdisk.c:456 util/grub-editenv.c:143 -#: util/grub-editenv.c:149 util/grub-fstest.c:320 util/misc.c:111 -#, c-format -msgid "cannot seek `%s': %s" -msgstr "ni mogoÄe iskati `%s': %s." - -#: grub-core/disk/cryptodisk.c:1144 -msgid "SOURCE|-u UUID|-a|-b" -msgstr "VIR|-u UUID|-a|-b" - -#: grub-core/disk/cryptodisk.c:1145 -msgid "Mount a crypto device." -msgstr "Priklopi Å¡ifrirno napravo." - -#. TRANSLATORS: This message kicks in during the detection of -#. which modules needs to be included in core image. This happens -#. in the case of degraded RAID and means that autodetection may -#. fail to include some of modules. It's an installation time -#. message, not runtime message. -#: grub-core/disk/diskfilter.c:343 grub-core/disk/diskfilter.c:376 -#, c-format -msgid "" -"Couldn't find physical volume `%s'. Some modules may be missing from core " -"image." -msgstr "" -"Ni mogoÄe najti fiziÄnega nosilca `%s'. Nekateri moduli morda manjkajo iz " -"osnovnega odtisa." - -#: grub-core/disk/diskfilter.c:480 -#, c-format -msgid "physical volume %s not found" -msgstr "fiziÄnega nosilca %s ni bilo mogoÄe najti." - -#: grub-core/disk/efi/efidisk.c:600 grub-core/disk/efi/efidisk.c:623 -#, fuzzy, c-format -msgid "no media in `%s'" -msgstr "zakasnitev med branjem `%s'" - -#: grub-core/disk/geli.c:75 -msgid "Couldn't load sha256" -msgstr "Ni mogoÄe naložiti sha256" - -#: grub-core/disk/geli.c:85 -msgid "Couldn't load sha512" -msgstr "Ni mogoÄe naložiti sha512" - -#: grub-core/disk/geli.c:216 grub-core/disk/geli.c:220 -msgid "couldn't read ELI metadata" -msgstr "ni mogoÄe prebrati metapodatkov ELI" - -#: grub-core/disk/geli.c:231 -msgid "wrong ELI magic or version" -msgstr "napaÄna Äarovnija ali razliÄica ELI" - -#: grub-core/disk/geli.c:435 grub-core/disk/luks.c:329 -msgid "Attempting to decrypt master key..." -msgstr "Poteka poskus odÅ¡ifriranja glavnega kljuÄa ..." - -#: grub-core/disk/geli.c:441 grub-core/disk/luks.c:347 -#, c-format -msgid "Enter passphrase for %s%s%s (%s): " -msgstr "Vnesite Å¡ifrirno frazo za %s%s%s (%s):" - -#. TRANSLATORS: It's a cryptographic key slot: one element of an array -#. where each element is either empty or holds a key. -#: grub-core/disk/geli.c:530 grub-core/disk/luks.c:451 -#, c-format -msgid "Slot %d opened\n" -msgstr "Mesto %d je odprto\n" - -#: grub-core/disk/i386/pc/biosdisk.c:470 grub-core/disk/i386/pc/biosdisk.c:524 -#: grub-core/disk/i386/pc/biosdisk.c:534 grub-core/kern/disk_common.c:47 -#, c-format -msgid "attempt to read or write outside of disk `%s'" -msgstr "poskus branja ali pisanja zunaj diska `%s'" - -#: grub-core/disk/i386/pc/biosdisk.c:491 grub-core/disk/i386/pc/biosdisk.c:611 -#: grub-core/disk/scsi.c:726 -msgid "cannot write to CD-ROM" -msgstr "ni mogoÄe zapisati za CD-ROM" - -#: grub-core/disk/i386/pc/biosdisk.c:662 -msgid "" -"Native disk drivers are in use. Refusing to use firmware disk interface." -msgstr "" -"Lastni gonilniki diska so v uporabi. ZavraÄanje uporabe vmesnika programske " -"strojne opreme diska." - -#. TRANSLATORS: it's a partition for embedding, -#. not a partition embed into something. GRUB -#. install tools put core.img into a place -#. usable for bootloaders (called generically -#. "embedding zone") and this operation is -#. called "embedding". -#: grub-core/disk/ldm.c:1015 -#, fuzzy -msgid "your LDM Embedding Partition is too small; embedding won't be possible" -msgstr "vaÅ¡ razdelek vstavljanja LDM je premajhen, vstavljanje ne bo mogoÄe" - -#. TRANSLATORS: it's a partition for embedding, -#. not a partition embed into something. -#: grub-core/disk/ldm.c:1033 -msgid "this LDM has no Embedding Partition; embedding won't be possible" -msgstr "ta LDM nima vstavljenega razdelka, vstavljanje ne bo mogoÄe" - -#. TRANSLATORS: The disk is simply removed from the list of available ones, -#. not wiped, avoid to scare user. -#: grub-core/disk/loopback.c:45 -msgid "Delete the specified loopback drive." -msgstr "IzbriÅ¡i doloÄeni pogon povratne zanke." - -#: grub-core/disk/loopback.c:237 -msgid "[-d] DEVICENAME FILE." -msgstr "[-d] IME_NAPRAVE DATOTEKA ." - -#. TRANSLATORS: The file itself is not destroyed -#. or transformed into drive. -#: grub-core/disk/loopback.c:240 -msgid "Make a virtual drive from a file." -msgstr "Ustvari navidezni pogon iz datoteke." - -#: grub-core/efiemu/i386/loadcore32.c:111 -#: grub-core/efiemu/i386/loadcore64.c:125 grub-core/kern/arm/dl.c:256 -#: grub-core/kern/arm64/dl.c:187 grub-core/kern/i386/dl.c:75 -#: grub-core/kern/ia64/dl.c:140 grub-core/kern/mips/dl.c:258 -#: grub-core/kern/powerpc/dl.c:163 grub-core/kern/riscv/dl.c:334 -#: grub-core/kern/sparc64/dl.c:180 grub-core/kern/x86_64/dl.c:110 -#: util/grub-mkimagexx.c:756 util/grub-mkimagexx.c:881 -#: util/grub-mkimagexx.c:945 util/grub-mkimagexx.c:1026 -#: util/grub-mkimagexx.c:1120 util/grub-mkimagexx.c:1222 -#: util/grub-mkimagexx.c:1413 util/grub-mkimagexx.c:1628 -#: util/grub-mkimagexx.c:1665 util/grub-mkimagexx.c:1697 -#: util/grub-mkimagexx.c:1767 util/grub-mkimagexx.c:1797 -#, c-format -msgid "relocation 0x%x is not implemented yet" -msgstr "selitev 0x%x Å¡e ni podprta" - -#: grub-core/efiemu/loadcore.c:200 grub-core/efiemu/loadcore.c:237 -#: grub-core/loader/i386/bsdXX.c:317 util/grub-mkimagexx.c:2360 -msgid "no symbol table" -msgstr "ni preglednice simbolov" - -#: grub-core/efiemu/loadcore.c:346 grub-core/kern/dl.c:609 -#: grub-core/loader/ia64/efi/linux.c:345 grub-core/loader/mips/linux.c:248 -#: grub-core/loader/multiboot_elfxx.c:76 -#: grub-core/loader/powerpc/ieee1275/linux.c:280 -#: grub-core/loader/sparc64/ieee1275/linux.c:320 -msgid "this ELF file is not of the right type" -msgstr "ta datoteka ELF ni prave vrste" - -#: grub-core/efiemu/main.c:313 -msgid "Load and initialize EFI emulator." -msgstr "Naloži in zaÄni posnemovalnik EFI." - -#: grub-core/efiemu/main.c:317 -msgid "Finalize loading of EFI emulator." -msgstr "KonÄaj nalaganje posnemovalnika EFI." - -#: grub-core/efiemu/main.c:320 -msgid "Unload EFI emulator." -msgstr "Razloži posnemovalnik EFI." - -#: grub-core/efiemu/symbols.c:92 grub-core/kern/dl.c:376 -#, c-format -msgid "symbol `%s' not found" -msgstr "simbola `%s' ni bilo mogoÄe najti" - -#: grub-core/font/font_cmd.c:52 -msgid "Loaded fonts:" -msgstr "Naložene pisave:" - -#: grub-core/font/font_cmd.c:74 -msgid "FILE..." -msgstr "DATOTEKA ..." - -#: grub-core/font/font_cmd.c:75 -msgid "Specify one or more font files to load." -msgstr "Navedite eno ali veÄ datotek pisav za nalaganje." - -#: grub-core/font/font_cmd.c:78 -msgid "List the loaded fonts." -msgstr "IzpiÅ¡e naložene pisave." - -#: grub-core/fs/archelp.c:216 grub-core/fs/archelp.c:278 -#: grub-core/fs/btrfs.c:1815 grub-core/fs/fshelp.c:227 grub-core/fs/jfs.c:736 -#: grub-core/fs/minix.c:369 grub-core/fs/ufs.c:454 -msgid "too deep nesting of symlinks" -msgstr "pregloboko gnezdenje simbolnih povezav" - -#: grub-core/fs/bfs.c:228 grub-core/fs/fshelp.c:368 grub-core/fs/minix.c:270 -#: grub-core/kern/file.c:156 -msgid "attempt to read past the end of file" -msgstr "poskus branja preko konca datoteke" - -#: grub-core/fs/btrfs.c:1698 grub-core/fs/btrfs.c:1957 -#: grub-core/fs/fshelp.c:189 grub-core/fs/fshelp.c:309 grub-core/fs/jfs.c:431 -#: grub-core/fs/minix.c:414 grub-core/fs/minix.c:562 -#: grub-core/fs/reiserfs.c:732 grub-core/fs/ufs.c:531 grub-core/fs/ufs.c:671 -#: grub-core/fs/zfs/zfs.c:2831 grub-core/fs/zfs/zfs.c:4247 -msgid "not a directory" -msgstr "ni mapa" - -#: grub-core/fs/btrfs.c:2063 grub-core/fs/fshelp.c:307 grub-core/fs/jfs.c:835 -#: grub-core/fs/zfs/zfs.c:3801 -msgid "not a regular file" -msgstr "ni obiÄajna datoteka" - -#: grub-core/fs/btrfs.c:2157 grub-core/fs/zfs/zfs.c:4333 -#: grub-core/partmap/msdos.c:400 -msgid "your core.img is unusually large. It won't fit in the embedding area" -msgstr "" -"vaÅ¡a datoteka core.img je nenavadno velika in je ne bo mogoÄe vstaviti v " -"doloÄeno podroÄje." - -#: grub-core/fs/fshelp.c:281 grub-core/fs/minix.c:630 grub-core/fs/ufs.c:661 -#: grub-core/fs/ufs.c:757 grub-core/kern/fs.c:168 grub-core/kern/fs.c:180 -#, c-format -msgid "invalid file name `%s'" -msgstr "neveljavno ime datoteke `%s'" - -#: grub-core/fs/zfs/zfs.c:453 -msgid "checksum verification failed" -msgstr "preverjanje potrditvene vsote je spodletelo" - -#: grub-core/fs/zfs/zfs.c:1465 -msgid "couldn't find a necessary member device of multi-device filesystem" -msgstr "" -"ni mogoÄe najti zahtevane naprave Älana datoteÄnega sistema veÄ naprav." - -#: grub-core/fs/zfs/zfscrypt.c:292 -msgid "no decryption key available" -msgstr "kljuÄ odÅ¡ifiranja ni na voljo" - -#: grub-core/fs/zfs/zfscrypt.c:304 -msgid "MAC verification failed" -msgstr "Potrjevanje veljavnosti MAC je spodletelo" - -#: grub-core/fs/zfs/zfscrypt.c:413 -msgid "Assume input is raw." -msgstr "Predpostavi, da je vhod surov." - -#: grub-core/fs/zfs/zfscrypt.c:414 -msgid "Assume input is hex." -msgstr "Predpostavi, da je vhod Å¡estnajstiÅ¡ki." - -#: grub-core/fs/zfs/zfscrypt.c:415 -msgid "Assume input is passphrase." -msgstr "Predpostavi, da je vhod Å¡ifrirana fraza." - -#: grub-core/fs/zfs/zfscrypt.c:437 util/grub-fstest.c:553 util/grub-mount.c:483 -msgid "Enter ZFS password: " -msgstr "Vnesite geslo ZFS:" - -#: grub-core/fs/zfs/zfscrypt.c:476 -msgid "[-h|-p|-r] [FILE]" -msgstr "[-h|-p|-r] [DATOTEKA]" - -#: grub-core/fs/zfs/zfscrypt.c:477 -msgid "Import ZFS wrapping key stored in FILE." -msgstr "Uvozi kljuÄ ovijanja ZFS shranjen v DATOTEKO." - -#: grub-core/fs/zfs/zfsinfo.c:51 -msgid "Virtual device is removed" -msgstr "Navidezna naprava je odstranjena" - -#: grub-core/fs/zfs/zfsinfo.c:57 -msgid "Virtual device is faulted" -msgstr "Navidezna naprava je pokvarjena" - -#: grub-core/fs/zfs/zfsinfo.c:63 -msgid "Virtual device is offline" -msgstr "Navidezna naprava ni povezana" - -#. TRANSLATORS: degraded doesn't mean broken but that some of -#. component are missing but virtual device as whole is still usable. -#: grub-core/fs/zfs/zfsinfo.c:70 -msgid "Virtual device is degraded" -msgstr "Navidezna naprava je degradirana" - -#: grub-core/fs/zfs/zfsinfo.c:73 -msgid "Virtual device is online" -msgstr "Navidezna naprava je povezana" - -#: grub-core/fs/zfs/zfsinfo.c:89 -msgid "Incorrect virtual device: no type available" -msgstr "Nepravilna navidezna naprava: ni vrste na voljo" - -#. TRANSLATORS: The virtual devices form a tree (in graph-theoretical -#. sense). The nodes like mirror or raidz have children: member devices. -#. The "real" devices which actually store data are called "leafs" -#. (again borrowed from graph theory) and can be either disks -#. (or partitions) or files. -#: grub-core/fs/zfs/zfsinfo.c:105 -msgid "Leaf virtual device (file or disk)" -msgstr "Navidezna naprava leaf (datoteka ali disk)" - -#: grub-core/fs/zfs/zfsinfo.c:113 -msgid "Bootpath: unavailable\n" -msgstr "Pot zagona: ni na voljo\n" - -#: grub-core/fs/zfs/zfsinfo.c:115 -#, c-format -msgid "Bootpath: %s\n" -msgstr "Pot zagona: %s\n" - -#: grub-core/fs/zfs/zfsinfo.c:120 -msgid "Path: unavailable" -msgstr "Pot: ni na voljo" - -#: grub-core/fs/zfs/zfsinfo.c:122 -#, c-format -msgid "Path: %s\n" -msgstr "Pot: %s\n" - -#: grub-core/fs/zfs/zfsinfo.c:127 -msgid "Devid: unavailable" -msgstr "ID naprave: ni na voljo" - -#: grub-core/fs/zfs/zfsinfo.c:129 -#, c-format -msgid "Devid: %s\n" -msgstr "ID naprave: %s\n" - -#: grub-core/fs/zfs/zfsinfo.c:148 -msgid "This VDEV is a mirror" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:153 -#, c-format -msgid "This VDEV is a RAIDZ%llu\n" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:158 -#, fuzzy -msgid "Incorrect VDEV" -msgstr "Nepravilno zrcaljenje" - -#: grub-core/fs/zfs/zfsinfo.c:161 -#, fuzzy, c-format -msgid "VDEV with %d children\n" -msgstr "Zrcaljenje z %d podrejenimi predmeti\n" - -#. TRANSLATORS: it's the element carying the number %d, not -#. total element number. And the number itself is fine, -#. only the element isn't. -#. -#: grub-core/fs/zfs/zfsinfo.c:177 -#, fuzzy, c-format -msgid "VDEV element number %d isn't correct\n" -msgstr "Å tevilo manjÅ¡ega elementa %d ni pravilno\n" - -#. TRANSLATORS: it's the element carying the number %d, not -#. total element number. This is used in enumeration -#. "Element number 1", "Element number 2", ... -#: grub-core/fs/zfs/zfsinfo.c:184 -#, fuzzy, c-format -msgid "VDEV element number %d:\n" -msgstr "Å tevilo zrcalnega predmeta %d:\n" - -#: grub-core/fs/zfs/zfsinfo.c:193 -#, c-format -msgid "Unknown virtual device type: %s\n" -msgstr "Neznana vrsta navidezne naprave: %s\n" - -#. TRANSLATORS: Here we speak about ZFS pools it's semi-marketing, -#. semi-technical term by Sun/Oracle and should be translated in sync with -#. other ZFS-related software and documentation. -#: grub-core/fs/zfs/zfsinfo.c:254 -msgid "Pool state: active" -msgstr "Stanje zaloge vrednosti: dejavno" - -#: grub-core/fs/zfs/zfsinfo.c:255 -msgid "Pool state: exported" -msgstr "Stanje zaloge vrednosti: izvoženo" - -#: grub-core/fs/zfs/zfsinfo.c:256 -msgid "Pool state: destroyed" -msgstr "Stanje zaloge vrednosti: uniÄeno" - -#: grub-core/fs/zfs/zfsinfo.c:257 -msgid "Pool state: reserved for hot spare" -msgstr "Stanje zaloge vrednosti: rezervirano za vroÄo rezervo" - -#: grub-core/fs/zfs/zfsinfo.c:258 -msgid "Pool state: level 2 ARC device" -msgstr "Stanje zaloge vrednosti: naprava ARC stopnje 2" - -#: grub-core/fs/zfs/zfsinfo.c:259 -msgid "Pool state: uninitialized" -msgstr "Stanje zaloge vrednosti: nezaÄeto" - -#: grub-core/fs/zfs/zfsinfo.c:260 -msgid "Pool state: unavailable" -msgstr "Stanje zaloge vrednosti: ni na voljo" - -#: grub-core/fs/zfs/zfsinfo.c:261 -msgid "Pool state: potentially active" -msgstr "Stanje zaloge vrednosti: potencialno dejavna" - -#: grub-core/fs/zfs/zfsinfo.c:306 -msgid "Pool name: unavailable" -msgstr "Ime zaloge vrednosti: ni na voljo" - -#: grub-core/fs/zfs/zfsinfo.c:308 -#, c-format -msgid "Pool name: %s\n" -msgstr "Ime zaloge vrednosti: %s\n" - -#: grub-core/fs/zfs/zfsinfo.c:313 -msgid "Pool GUID: unavailable" -msgstr "GUID zaloge vrednosti: ni na voljo" - -#: grub-core/fs/zfs/zfsinfo.c:315 -#, c-format -msgid "Pool GUID: %016llx\n" -msgstr "GUID zaloge vrednosti: %016llx\n" - -#: grub-core/fs/zfs/zfsinfo.c:320 -msgid "Unable to retrieve pool state" -msgstr "Ni mogoÄe pridobiti stanja zaloge vrednosti" - -#: grub-core/fs/zfs/zfsinfo.c:322 -msgid "Unrecognized pool state" -msgstr "Neprepoznano stanje zaloge vrednosti" - -#. TRANSLATORS: There are undetermined number of virtual devices -#. in a device tree, not just one. -#. -#: grub-core/fs/zfs/zfsinfo.c:332 -msgid "No virtual device tree available" -msgstr "Drevo navideznih naprav ni na voljo" - -#: grub-core/fs/zfs/zfsinfo.c:431 -msgid "Print ZFS info about DEVICE." -msgstr "IzpiÅ¡i podatke ZFS o NAPRAVI." - -#: grub-core/fs/zfs/zfsinfo.c:433 -msgid "FILESYSTEM [VARIABLE]" -msgstr "DATOTEÄŒNISISTEM [SPREMENLJIVKA]" - -#: grub-core/fs/zfs/zfsinfo.c:434 -msgid "Print ZFS-BOOTFSOBJ or store it into VARIABLE" -msgstr "IzpiÅ¡i ZFS-BOOTFSOBJ ali ga shrani v SPREMENLJIVKO" - -#. TRANSLATORS: at this position GRUB waits for the user to do an action -#. in remote debugger, namely to tell it to establish connection. -#: grub-core/gdb/gdb.c:48 -msgid "Now connect the remote debugger, please." -msgstr "Sedaj povežite oddaljen razhroÅ¡Äevalnik." - -#. TRANSLATORS: GDB stub is a small part of -#. GDB functionality running on local host -#. which allows remote debugger to -#. connect to it. -#: grub-core/gdb/gdb.c:84 -msgid "Start GDB stub on given port" -msgstr "Zaženi GDB na danih vratih" - -#. TRANSLATORS: this refers to triggering -#. a breakpoint so that the user will land -#. into GDB. -#: grub-core/gdb/gdb.c:89 -msgid "Break into GDB" -msgstr "Prelomi v GDB" - -#: grub-core/gdb/gdb.c:91 -msgid "Stop GDB stub" -msgstr "Zaustavi nastavek GDB" - -#: grub-core/gettext/gettext.c:85 -msgid "premature end of file" -msgstr "predÄasen konec datoteke" - -#. TRANSLATORS: It refers to passing the string through gettext. -#. So it's "translate" in the same meaning as in what you're -#. doing now. -#. -#: grub-core/gettext/gettext.c:525 -msgid "Translates the string with the current settings." -msgstr "Prevede niz s trenutnimi nastavitvami." - -#: grub-core/gfxmenu/gui_label.c:186 grub-core/normal/menu_text.c:184 -msgid "" -"Press enter to boot the selected OS, `e' to edit the commands before booting " -"or `c' for a command-line. ESC to return previous menu." -msgstr "" -"Za zagon izbranega operacijskega sistema pritisnite vnosno tipko, za " -"urejanje ukazov pred zagonom pritisnite tipko `e' , za ukazno vrstico " -"pritisnite `'c'. S pritiskom na ubežno tipko, se pojavi predhodni meni." - -#: grub-core/gfxmenu/gui_label.c:190 grub-core/normal/menu_text.c:192 -msgid "" -"Press enter to boot the selected OS, `e' to edit the commands before booting " -"or `c' for a command-line." -msgstr "" -"Za zagon izbranega operacijskega sistema pritisnite vnosno tipko, za " -"urejanje ukazov pred zagonom pritisnite tipko `e' , za ukazno vrstico pa " -"pritisnite `c'." - -#: grub-core/gfxmenu/gui_label.c:194 -msgid "enter: boot, `e': options, `c': cmd-line" -msgstr "vnesite: boot, `e': možnosti, `c': ukazna vrstica" - -#: grub-core/gfxmenu/gui_progress_bar.c:339 grub-core/normal/menu_text.c:446 -#, c-format -msgid "The highlighted entry will be executed automatically in %ds." -msgstr "Osvetljen vnos bo v %ds samodejno izvrÅ¡en." - -#. TRANSLATORS: 's' stands for seconds. -#. It's a standalone timeout notification. -#. Please use the short form in your language. -#: grub-core/gfxmenu/gui_progress_bar.c:344 -#, c-format -msgid "%ds remaining." -msgstr "%ds preostalo." - -#. TRANSLATORS: 's' stands for seconds. -#. It's a standalone timeout notification. -#. Please use the shortest form available in you language. -#: grub-core/gfxmenu/gui_progress_bar.c:349 grub-core/normal/menu_text.c:444 -#: grub-core/normal/menu_text.c:462 -#, c-format -msgid "%ds" -msgstr "%ds" - -#: grub-core/gfxmenu/view.c:103 -msgid "GRUB Boot Menu" -msgstr "Zagonski meni GRUB" - -#: grub-core/hello/hello.c:36 -msgid "Hello World" -msgstr "Pozdravljen svet" - -#: grub-core/hello/hello.c:45 -msgid "Say `Hello World'." -msgstr "Recite 'Pozdravljen svet'." - -#: grub-core/io/gzio.c:409 grub-core/kern/file.c:210 -msgid "attempt to seek outside of the file" -msgstr "poskus iskanja izven datoteke" - -#. TRANSLATORS: It's about given file having some strange format, not -#. complete lack of gzip support. -#: grub-core/io/gzio.c:1228 grub-core/io/gzio.c:1237 grub-core/io/gzio.c:1244 -msgid "unsupported gzip format" -msgstr "nepodprta oblika gzip" - -#: grub-core/io/lzopio.c:511 -msgid "lzop file corrupted" -msgstr "Datoteka lzop je bila pokvarjena" - -#: grub-core/io/xzio.c:278 -msgid "xz file corrupted or unsupported block options" -msgstr "datoteka xz je pokvarjena ali pa so možnosti bloka nepodprte" - -#: grub-core/kern/arm/dl.c:277 grub-core/kern/arm64/dl.c:44 -#: grub-core/kern/i386/dl.c:36 grub-core/kern/ia64/dl.c:41 -#: grub-core/kern/mips/dl.c:48 grub-core/kern/powerpc/dl.c:36 -#: grub-core/kern/riscv/dl.c:47 grub-core/kern/sparc64/dl.c:36 -#: grub-core/kern/x86_64/dl.c:36 grub-core/loader/i386/bsd.c:1445 -#: grub-core/loader/i386/bsdXX.c:49 grub-core/loader/ia64/efi/linux.c:341 -#: grub-core/loader/mips/linux.c:298 grub-core/loader/multiboot.c:232 -#: grub-core/loader/multiboot_elfxx.c:73 -#: grub-core/loader/powerpc/ieee1275/linux.c:294 -#: grub-core/loader/sparc64/ieee1275/linux.c:331 -msgid "invalid arch-dependent ELF magic" -msgstr "neveljaven okoljsko odvisen ELF magic" - -#: grub-core/kern/corecmd.c:178 -msgid "[ENVVAR=VALUE]" -msgstr "[ENVVAR=VREDNOST]" - -#: grub-core/kern/corecmd.c:179 -msgid "Set an environment variable." -msgstr "Nastavi vrednost okoljske spremenljivke." - -#: grub-core/kern/corecmd.c:183 -msgid "ENVVAR" -msgstr "ENVVAR" - -#: grub-core/kern/corecmd.c:184 -msgid "Remove an environment variable." -msgstr "Odstrani okoljsko spremenljivko." - -#: grub-core/kern/corecmd.c:186 -msgid "[ARG]" -msgstr "[ARG]" - -#: grub-core/kern/corecmd.c:186 -msgid "List devices or files." -msgstr "IzpiÅ¡e naprave ali datoteke." - -#: grub-core/kern/corecmd.c:188 -msgid "Insert a module." -msgstr "Vstavi modul." - -#: grub-core/kern/disk.c:236 grub-core/net/net.c:1390 -#, c-format -msgid "disk `%s' not found" -msgstr "diska `%s' ni mogoÄe najti" - -#: grub-core/kern/disk_common.c:27 -msgid "attempt to read or write outside of partition" -msgstr "poskus branja ali pisanje izven razdelka" - -#: grub-core/kern/dl.c:212 grub-core/kern/elf.c:61 grub-core/kern/elf.c:79 -#: grub-core/loader/i386/bsdXX.c:46 grub-core/loader/ia64/efi/linux.c:335 -#: grub-core/loader/multiboot_elfxx.c:69 -msgid "invalid arch-independent ELF magic" -msgstr "neveljavna od arhitekture neodvisna Äarovnija ELF" - -#. TRANSLATORS: it refers to the lack of free slots. -#: grub-core/kern/emu/hostdisk.c:208 grub-core/kern/emu/hostdisk.c:466 -msgid "device count exceeds limit" -msgstr "Å¡tevilo naprav presega omejitev" - -#: grub-core/kern/emu/hostdisk.c:342 util/editenv.c:54 util/grub-editenv.c:197 -#: util/grub-fstest.c:191 util/grub-mkfont.c:796 util/misc.c:114 -#: util/misc.c:129 util/setup.c:788 -#, c-format -msgid "cannot write to `%s': %s" -msgstr "ni mogoÄe pisati v `%s': %s." - -#. TRANSLATORS: Only one entry is ignored. However the suggestion -#. is to correct/delete the whole file. -#. device.map is a file indicating which -#. devices are available at boot time. Fedora populated it with -#. entries like (hd0,1) /dev/sda1 which would mean that every -#. partition is a separate disk for BIOS. Such entries were -#. inactive in GRUB due to its bug which is now gone. Without -#. this additional check these entries would be harmful now. -#. -#: grub-core/kern/emu/hostdisk.c:503 -#, c-format -msgid "" -"the device.map entry `%s' is invalid. Ignoring it. Please correct or delete " -"your device.map" -msgstr "" -"vnos `%s' v datoteki device.map je neveljaven, zato bo prezrt. Pred " -"nadaljevanjem je treba popraviti ali izbrisati to datoteko." - -#. TRANSLATORS: device.map is a filename. Not to be translated. -#. device.map specifies disk correspondance overrides. Previously -#. one could create any kind of device name with this. Due to -#. some problems we decided to limit it to just a handful -#. possibilities. -#: grub-core/kern/emu/hostdisk.c:555 -#, c-format -msgid "" -"the drive name `%s' in device.map is incorrect. Using %s instead. Please use " -"the form [hfc]d[0-9]* (E.g. `hd0' or `cd')" -msgstr "" -"ime pogona `%s' v datoteki device.map je nepravilno. Namesto tega bo " -"uporabljen %s. Uporabite obliko [hfc]d[0-9]* (Npr. `hd0' or `cd')" - -#: grub-core/kern/emu/hostfs.c:76 grub-core/kern/emu/hostfs.c:109 -#, c-format -msgid "can't open `%s': %s" -msgstr "ni mogoÄe odpreti `%s': %s" - -#: grub-core/kern/emu/main.c:99 util/grub-fstest.c:516 util/grub-mount.c:452 -msgid "DEVICE_NAME" -msgstr "IME_NAPRAVE" - -#: grub-core/kern/emu/main.c:99 grub-core/loader/i386/bsd.c:136 -#: grub-core/loader/i386/bsd.c:169 util/grub-fstest.c:516 util/grub-mount.c:452 -msgid "Set root device." -msgstr "Nastavi korensko napravo." - -#. TRANSLATORS: There are many devices in device map. -#: grub-core/kern/emu/main.c:102 util/grub-probe.c:733 util/grub-setup.c:85 -#, c-format -msgid "use FILE as the device map [default=%s]" -msgstr "uporabi DATOTEKO kot preslikavo naprave [privzeto=%s]" - -#. TRANSLATORS: There are many devices in device map. -#: grub-core/kern/emu/main.c:105 -#, fuzzy -msgid "use FILE as memdisk" -msgstr "vstavi DATOTEKO kot odtis memdisk" - -#: grub-core/kern/emu/main.c:107 util/grub-setup.c:83 -#, c-format -msgid "use GRUB files in the directory DIR [default=%s]" -msgstr "uporabi datoteke GRUB v mapi DIR [privzeto=%s]" - -#: grub-core/kern/emu/main.c:108 include/grub/util/install.h:67 -#: util/grub-editenv.c:58 util/grub-fstest.c:525 util/grub-glue-efi.c:58 -#: util/grub-macbless.c:104 util/grub-mkfont.c:962 util/grub-mkimage.c:84 -#: util/grub-mklayout.c:56 util/grub-mount.c:458 util/grub-probe.c:735 -#: util/grub-render-label.c:74 util/grub-script-check.c:52 util/grub-setup.c:90 -#: util/grub-syslinux2cfg.c:78 -msgid "print verbose messages." -msgstr "izpiÅ¡i podrobna sporoÄila." - -#: grub-core/kern/emu/main.c:109 grub-core/lib/gnulib/argp-parse.c:85 -msgid "SECS" -msgstr "SEKUND" - -#: grub-core/kern/emu/main.c:109 -msgid "wait until a debugger will attach" -msgstr "poÄakaj dokler se ne pripne razhroÅ¡Äevalnik" - -#: grub-core/kern/emu/main.c:171 util/grub-macbless.c:143 -#: util/grub-mkrelpath.c:61 util/grub-probe.c:874 util/grub-script-check.c:75 -#: util/grub-setup.c:203 -#, c-format -msgid "Unknown extra argument `%s'." -msgstr "Neznan dodaten argument `%s'." - -#: grub-core/kern/emu/main.c:185 -msgid "GRUB emulator." -msgstr "Posnemovalnik GRUB." - -#: grub-core/kern/emu/main.c:213 util/grub-editenv.c:262 -#: util/grub-glue-efi.c:110 util/grub-macbless.c:173 util/grub-mkfont.c:1177 -#: util/grub-mkimage.c:266 util/grub-mklayout.c:494 -#: util/grub-mkpasswd-pbkdf2.c:132 util/grub-mkrelpath.c:96 -#: util/grub-probe.c:863 util/grub-render-label.c:152 -#: util/grub-script-check.c:160 util/grub-setup.c:262 -#: util/grub-syslinux2cfg.c:163 -msgid "Error in parsing command line arguments\n" -msgstr "Napaka pri razÄlenjevanju argumentov ukazne vrstice\n" - -#. TRANSLATORS: In this case GRUB tells user what he has to do. -#: grub-core/kern/emu/main.c:248 -#, c-format -msgid "Run `gdb %s %d', and set ARGS.HOLD to zero.\n" -msgstr "Zaženi `gdb %s %d' in nastavi ARGS.HOLD na niÄ.\n" - -#: grub-core/kern/emu/misc.c:48 -#, c-format -msgid "%s: warning:" -msgstr "%s: opozorilo:" - -#: grub-core/kern/emu/misc.c:64 -#, c-format -msgid "%s: info:" -msgstr "%s: podrobnosti:" - -#: grub-core/kern/emu/misc.c:79 util/grub-fstest.c:567 util/grub-fstest.c:576 -#: util/grub-mount.c:497 util/grub-mount.c:505 -#, c-format -msgid "%s: error:" -msgstr "%s: napaka:" - -#: grub-core/kern/emu/misc.c:176 -#, fuzzy, c-format -msgid "file `%s' is too big" -msgstr "odtis strojne programske opreme je prevelik" - -#: grub-core/kern/fs.c:120 -msgid "unknown filesystem" -msgstr "neznani datoteÄni sistem" - -#: grub-core/kern/mips/arc/init.c:273 grub-core/kern/mips/loongson/init.c:301 -msgid "Shutdown failed" -msgstr "Izklop je spodletel" - -#: grub-core/kern/mips/arc/init.c:285 -msgid "Exit failed" -msgstr "KonÄanje je spodletelo" - -#: grub-core/kern/misc.c:351 grub-core/kern/misc.c:408 include/grub/misc.h:269 -#: include/grub/misc.h:278 -msgid "overflow is detected" -msgstr "zaznana je prekoraÄitev" - -#: grub-core/kern/partition.c:51 grub-core/partmap/bsdlabel.c:108 -#, c-format -msgid "Discarding improperly nested partition (%s,%s,%s%d)" -msgstr "ZavraÄanje nepravilno gnezdenega razdelka (%s, %s, %s%d)" - -#: grub-core/kern/rescue_parser.c:73 util/grub-editenv.c:292 -#, c-format -msgid "Unknown command `%s'.\n" -msgstr "Neznan ukaz `%s'.\n" - -#: grub-core/lib/arg.c:31 -msgid "Display this help and exit." -msgstr "Prikaži to pomoÄ in konÄaj." - -#: grub-core/lib/arg.c:33 -msgid "Display the usage of this command and exit." -msgstr "Prikaži uporabo tega ukaza in konÄaj." - -#: grub-core/lib/arg.c:362 -#, c-format -msgid "missing mandatory option for `%s'" -msgstr "Manjka obvezna možnost za `%s'" - -#: grub-core/lib/arg.c:384 -#, c-format -msgid "the argument `%s' requires an integer" -msgstr "Argument `%s' zahteva celo Å¡tevilo" - -#: grub-core/lib/arg.c:407 -#, c-format -msgid "" -"a value was assigned to the argument `%s' while it doesn't require an " -"argument" -msgstr "vrednost je bila dodeljena argumentu `%s', Äeprav ne zahteva argumenta" - -#: grub-core/lib/backtrace.c:64 -msgid "Print backtrace." -msgstr "IzpiÅ¡i povratno sled." - -#: grub-core/lib/gnulib/argp-help.c:149 -#, c-format -msgid "ARGP_HELP_FMT: %s value is less than or equal to %s" -msgstr "ARGP_HELP_FMT: vrednost %s je manj ali enaka %s" - -#: grub-core/lib/gnulib/argp-help.c:225 -#, c-format -msgid "%.*s: ARGP_HELP_FMT parameter requires a value" -msgstr "%.*s: parameter ARGP_HELP_FMT zahteva vrednost" - -#: grub-core/lib/gnulib/argp-help.c:235 -#, c-format -msgid "%.*s: Unknown ARGP_HELP_FMT parameter" -msgstr "%.*s: neznan parameter ARGP_HELP_FMT" - -#: grub-core/lib/gnulib/argp-help.c:248 -#, c-format -msgid "Garbage in ARGP_HELP_FMT: %s" -msgstr "Smeti v ARGP_HELP_FMT: %s" - -#: grub-core/lib/gnulib/argp-help.c:1229 -msgid "" -"Mandatory or optional arguments to long options are also mandatory or " -"optional for any corresponding short options." -msgstr "" -"Obvezni ali izbirni argumenti dolgih možnosti so obvezni ali izbirni tudi za " -"morebitne ustrezne kratke možnosti." - -#: grub-core/lib/gnulib/argp-help.c:1620 -msgid " or: " -msgstr " ali:" - -#: grub-core/lib/gnulib/argp-help.c:1632 -msgid " [OPTION...]" -msgstr " [MOŽNOST ...]" - -#: grub-core/lib/gnulib/argp-help.c:1659 -#, fuzzy, c-format -msgid "Try '%s --help' or '%s --usage' for more information.\n" -msgstr "Za veÄ podrobnosti poskusite s `%s --help' ali `%s --usage'.\n" - -#: grub-core/lib/gnulib/argp-help.c:1687 -#, c-format -msgid "Report bugs to %s.\n" -msgstr "PoroÄila o hroÅ¡Äih poÅ¡ljite na %s.\n" - -#: grub-core/lib/gnulib/argp-help.c:1888 grub-core/lib/gnulib/error.c:195 -msgid "Unknown system error" -msgstr "Neznana sistemska napaka" - -#: grub-core/lib/gnulib/argp-parse.c:81 -msgid "give this help list" -msgstr "pridobi ta seznam pomoÄi" - -#: grub-core/lib/gnulib/argp-parse.c:82 -msgid "give a short usage message" -msgstr "izpiÅ¡i kratko sporoÄilo o uporabi" - -#: grub-core/lib/gnulib/argp-parse.c:83 util/grub-mkfont.c:946 -msgid "NAME" -msgstr "IME" - -#: grub-core/lib/gnulib/argp-parse.c:84 -msgid "set the program name" -msgstr "nastavi ime programa" - -#: grub-core/lib/gnulib/argp-parse.c:86 -msgid "hang for SECS seconds (default 3600)" -msgstr "odloži za SECS sekund (privzeto 3600)" - -#: grub-core/lib/gnulib/argp-parse.c:143 -msgid "print program version" -msgstr "izpiÅ¡i razliÄico programa" - -#: grub-core/lib/gnulib/argp-parse.c:160 -msgid "(PROGRAM ERROR) No version known!?" -msgstr "(NAPAKA PROGRAMA) Ni znane razliÄice!?" - -#: grub-core/lib/gnulib/argp-parse.c:613 -#, c-format -msgid "%s: Too many arguments\n" -msgstr "%s: preveÄ argumentov\n" - -#: grub-core/lib/gnulib/argp-parse.c:759 -msgid "(PROGRAM ERROR) Option should have been recognized!?" -msgstr "(NAPAKA PROGRAMA) Možnost bi morala biti prepoznana!?" - -#: grub-core/lib/gnulib/getopt.c:278 -#, fuzzy, c-format -msgid "%s: option '%s%s' is ambiguous\n" -msgstr "%s: možnost '%s' je dvoumna\n" - -#: grub-core/lib/gnulib/getopt.c:284 -#, fuzzy, c-format -msgid "%s: option '%s%s' is ambiguous; possibilities:" -msgstr "%s: možnost '%s' je dvoumna\n" - -#: grub-core/lib/gnulib/getopt.c:319 -#, fuzzy, c-format -msgid "%s: unrecognized option '%s%s'\n" -msgstr "%s: neprepoznana možnost '%c%s'\n" - -#: grub-core/lib/gnulib/getopt.c:345 -#, fuzzy, c-format -msgid "%s: option '%s%s' doesn't allow an argument\n" -msgstr "%s: možnost '%c%s' ne dovoli argumenta\n" - -#: grub-core/lib/gnulib/getopt.c:360 -#, fuzzy, c-format -msgid "%s: option '%s%s' requires an argument\n" -msgstr "%s: možnost '--%s' zahteva argument.\n" - -#: grub-core/lib/gnulib/getopt.c:621 -#, c-format -msgid "%s: invalid option -- '%c'\n" -msgstr "%s: neveljavna možnost -- '%c'\n" - -#: grub-core/lib/gnulib/getopt.c:636 grub-core/lib/gnulib/getopt.c:682 -#, c-format -msgid "%s: option requires an argument -- '%c'\n" -msgstr "%s: možnost zahteva argument -- '%c'\n" - -#: grub-core/lib/gnulib/openat-die.c:38 -#, fuzzy, c-format -msgid "unable to record current working directory" -msgstr "izvorne mape ni mogoÄe obnoviti" - -#: grub-core/lib/gnulib/openat-die.c:57 -#, c-format -msgid "failed to return to initial working directory" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:135 grub-core/osdep/aros/hostdisk.c:523 -msgid "Success" -msgstr "UspeÅ¡no zakljuÄeno" - -#: grub-core/lib/gnulib/regcomp.c:138 -msgid "No match" -msgstr "Ni zadetkov" - -#: grub-core/lib/gnulib/regcomp.c:141 -msgid "Invalid regular expression" -msgstr "Neveljavni logiÄni izraz" - -#: grub-core/lib/gnulib/regcomp.c:144 -msgid "Invalid collation character" -msgstr "Neveljaven znak zbiranja" - -#: grub-core/lib/gnulib/regcomp.c:147 -msgid "Invalid character class name" -msgstr "Neveljavno ime razreda znaka." - -#: grub-core/lib/gnulib/regcomp.c:150 -msgid "Trailing backslash" -msgstr "SledeÄa povratna poÅ¡evnica" - -#: grub-core/lib/gnulib/regcomp.c:153 -msgid "Invalid back reference" -msgstr "Neveljaven povratni sklic" - -#: grub-core/lib/gnulib/regcomp.c:156 -#, fuzzy -msgid "Unmatched [, [^, [:, [., or [=" -msgstr "NeujemajoÄi [ ali [^" - -#: grub-core/lib/gnulib/regcomp.c:159 -msgid "Unmatched ( or \\(" -msgstr "NeujemajoÄi ( ali \\(" - -#: grub-core/lib/gnulib/regcomp.c:162 -msgid "Unmatched \\{" -msgstr "NeujemajoÄi \\{" - -#: grub-core/lib/gnulib/regcomp.c:165 -msgid "Invalid content of \\{\\}" -msgstr "Neveljavna vsebina \\{\\}" - -#: grub-core/lib/gnulib/regcomp.c:168 -msgid "Invalid range end" -msgstr "Neveljaven konec obsega" - -#: grub-core/lib/gnulib/regcomp.c:171 -msgid "Memory exhausted" -msgstr "Pomnilnik je izÄrpan" - -#: grub-core/lib/gnulib/regcomp.c:174 -msgid "Invalid preceding regular expression" -msgstr "Neveljaven predhodni logiÄni izraz" - -#: grub-core/lib/gnulib/regcomp.c:177 -msgid "Premature end of regular expression" -msgstr "Prehiter konec logiÄnega izraza" - -#: grub-core/lib/gnulib/regcomp.c:180 -msgid "Regular expression too big" -msgstr "LogiÄni izraz je predolg" - -#: grub-core/lib/gnulib/regcomp.c:183 -msgid "Unmatched ) or \\)" -msgstr "NeujemajoÄi ) ali \\)" - -#: grub-core/lib/gnulib/regcomp.c:531 -msgid "unknown regexp error" -msgstr "neznana napaka logiÄnega izraza" - -#: grub-core/lib/gnulib/regcomp.c:676 -msgid "No previous regular expression" -msgstr "Ni predhodnega logiÄnega izraza" - -#: grub-core/lib/i386/halt.c:77 -msgid "GRUB doesn't know how to halt this machine yet!" -msgstr "Z nalagalnikom GRUB Å¡e ni mogoÄe ustaviti tega raÄunalnika!" - -#: grub-core/lib/legacy_parse.c:75 -msgid "Default server is ${net_default_server}" -msgstr "" - -#: grub-core/lib/legacy_parse.c:844 grub-core/video/colors.c:296 -#: grub-core/video/colors.c:305 grub-core/video/colors.c:311 -#: grub-core/video/colors.c:327 util/render-label.c:84 util/render-label.c:98 -#, c-format -msgid "invalid color specification `%s'" -msgstr "neveljavno doloÄilo barve `%s'" - -#: grub-core/lib/mips/arc/reboot.c:32 grub-core/lib/mips/loongson/reboot.c:61 -msgid "Reboot failed" -msgstr "Ponovni zagon je spodletel" - -#: grub-core/lib/random.c:113 -msgid "[LENGTH]" -msgstr "" - -#: grub-core/lib/random.c:114 -msgid "Hexdump random data." -msgstr "" - -#: grub-core/loader/arm/linux.c:242 -msgid "device tree must be supplied (see `devicetree' command)" -msgstr "" - -#: grub-core/loader/arm/linux.c:334 -#, fuzzy -msgid "invalid zImage" -msgstr "Neveljaven obseg pisav" - -#: grub-core/loader/arm/linux.c:450 grub-core/loader/efi/fdt.c:144 -#, fuzzy -msgid "invalid device tree" -msgstr "Neveljavna naprava `%s'.\n" - -#: grub-core/loader/arm/linux.c:493 grub-core/loader/arm64/linux.c:383 -#: grub-core/loader/i386/linux.c:1125 grub-core/loader/i386/pc/linux.c:479 -#: grub-core/loader/i386/xen.c:962 grub-core/loader/i386/xen.c:964 -#: grub-core/loader/ia64/efi/linux.c:591 grub-core/loader/mips/linux.c:501 -#: grub-core/loader/powerpc/ieee1275/linux.c:383 -#: grub-core/loader/riscv/linux.c:50 -#: grub-core/loader/sparc64/ieee1275/linux.c:511 -msgid "Load Linux." -msgstr "Naloži Linux." - -#: grub-core/loader/arm/linux.c:495 grub-core/loader/arm64/linux.c:385 -#: grub-core/loader/i386/linux.c:1127 grub-core/loader/i386/pc/linux.c:482 -#: grub-core/loader/i386/xen.c:966 grub-core/loader/ia64/efi/linux.c:594 -#: grub-core/loader/mips/linux.c:503 -#: grub-core/loader/powerpc/ieee1275/linux.c:385 -#: grub-core/loader/riscv/linux.c:52 -#: grub-core/loader/sparc64/ieee1275/linux.c:513 -msgid "Load initrd." -msgstr "Naloži initrd." - -#. TRANSLATORS: DTB stands for device tree blob. -#: grub-core/loader/arm/linux.c:498 grub-core/loader/efi/fdt.c:169 -#, fuzzy -msgid "Load DTB file." -msgstr "Naloži odtis XNU." - -#: grub-core/loader/arm64/linux.c:59 -msgid "" -"plain image kernel not supported - rebuild with CONFIG_(U)EFI_STUB enabled" -msgstr "" - -#: grub-core/loader/arm64/xen_boot.c:156 -msgid "failed to get FDT" -msgstr "" - -#: grub-core/loader/arm64/xen_boot.c:418 -#, fuzzy -msgid "you need to load the Xen Hypervisor first" -msgstr "najprej je treba naložiti jedro" - -#: grub-core/loader/arm64/xen_boot.c:516 -#, fuzzy -msgid "Load a xen hypervisor." -msgstr "%s, s hipervizorjem Xen" - -#: grub-core/loader/arm64/xen_boot.c:519 -#, fuzzy -msgid "Load a xen module." -msgstr "Naloži jedrni modul NetBSD." - -#: grub-core/loader/efi/appleloader.c:231 -msgid "[OPTS]" -msgstr "[MOŽNOSTI]" - -#. TRANSLATORS: This command is used on EFI to -#. switch to BIOS mode and boot the OS requiring -#. BIOS. -#: grub-core/loader/efi/appleloader.c:235 -msgid "Boot BIOS-based system." -msgstr "Zaženi v naÄinu BIOS." - -#: grub-core/loader/efi/chainloader.c:421 -#: grub-core/loader/i386/pc/chainloader.c:303 -msgid "Load another boot loader." -msgstr "Naloži drugi zagonski nalagalnik." - -#: grub-core/loader/i386/bsd.c:103 -msgid "Display output on all consoles." -msgstr "Prikaži izpis na vseh konzolah." - -#: grub-core/loader/i386/bsd.c:104 grub-core/loader/i386/bsd.c:138 -#: grub-core/loader/i386/bsd.c:171 -msgid "Use serial console." -msgstr "Uporabi zaporedno konzolo." - -#: grub-core/loader/i386/bsd.c:105 grub-core/loader/i386/bsd.c:131 -#: grub-core/loader/i386/bsd.c:159 -msgid "Ask for file name to reboot from." -msgstr "VpraÅ¡aj po imenu datoteke za ponoven zagon raÄunalnika." - -#: grub-core/loader/i386/bsd.c:106 -msgid "Use CD-ROM as root." -msgstr "Uporabi nosilec CDROM s skrbniÅ¡kimi dovoljenji." - -#: grub-core/loader/i386/bsd.c:107 -msgid "Invoke user configuration routing." -msgstr "Uveljavi usmerjanje po nastavitvah uporabnika." - -#: grub-core/loader/i386/bsd.c:108 grub-core/loader/i386/bsd.c:135 -#: grub-core/loader/i386/bsd.c:162 -msgid "Enter in KDB on boot." -msgstr "Vstopi v KDB ob zagonu." - -#: grub-core/loader/i386/bsd.c:109 -msgid "Use GDB remote debugger instead of DDB." -msgstr "Uporabi GDB oddaljeni razhroÅ¡Äevalnik namesto DDB." - -#: grub-core/loader/i386/bsd.c:110 -msgid "Disable all boot output." -msgstr "OnemogoÄi vse izhode zagona." - -#: grub-core/loader/i386/bsd.c:112 -msgid "Wait for keypress after every line of output." -msgstr "ÄŒakaj na pritisk tipke po vsaki vrstici izhoda." - -#: grub-core/loader/i386/bsd.c:114 -msgid "Use compiled-in root device." -msgstr "Uporabi kodno prevedeno skrbniÅ¡ko napravo." - -#: grub-core/loader/i386/bsd.c:115 grub-core/loader/i386/bsd.c:134 -#: grub-core/loader/i386/bsd.c:165 -msgid "Boot into single mode." -msgstr "Zaženi v enojni naÄin." - -#: grub-core/loader/i386/bsd.c:116 grub-core/loader/i386/bsd.c:166 -msgid "Boot with verbose messages." -msgstr "Zaženi s podrobno izpisanimi sporoÄili." - -#: grub-core/loader/i386/bsd.c:132 grub-core/loader/i386/bsd.c:160 -msgid "Don't reboot, just halt." -msgstr "Ne zaženi znova, zgolj ustavi." - -#: grub-core/loader/i386/bsd.c:133 grub-core/loader/i386/bsd.c:161 -msgid "Change configured devices." -msgstr "Spremeni nastavljene naprave." - -#. TRANSLATORS: "com" is static and not to be translated. It refers to -#. serial ports e.g. com1. -#. -#: grub-core/loader/i386/bsd.c:142 -msgid "comUNIT[,SPEED]" -msgstr "comUNIT[,HITROST]" - -#: grub-core/loader/i386/bsd.c:157 -msgid "Disable SMP." -msgstr "OnemogoÄi SMP." - -#: grub-core/loader/i386/bsd.c:158 -msgid "Disable ACPI." -msgstr "OnemogoÄi ACPI." - -#: grub-core/loader/i386/bsd.c:164 -msgid "Don't display boot diagnostic messages." -msgstr "Ne prikazuj zagonskih diagnostiÄnih sporoÄil." - -#: grub-core/loader/i386/bsd.c:167 -msgid "Boot with debug messages." -msgstr "Zaženi s sporoÄili razhroÅ¡Äevanja." - -#: grub-core/loader/i386/bsd.c:168 -msgid "Suppress normal output (warnings remain)." -msgstr "PrepreÄi obiÄajen izpis (opozorila ostanejo)." - -#. TRANSLATORS: "com" is static and not to be translated. It refers to -#. serial ports e.g. com1. -#. -#: grub-core/loader/i386/bsd.c:175 -msgid "[ADDR|comUNIT][,SPEED]" -msgstr "[NASLOV|comUNIT][,HITROST]" - -#: grub-core/loader/i386/bsd.c:489 grub-core/loader/i386/bsd.c:555 -msgid "name" -msgstr "ime" - -#: grub-core/loader/i386/bsd.c:489 grub-core/loader/i386/bsd.c:555 -msgid "type" -msgstr "vrsta" - -#: grub-core/loader/i386/bsd.c:489 grub-core/loader/i386/bsd.c:555 -msgid "addr" -msgstr "naslov" - -#: grub-core/loader/i386/bsd.c:490 grub-core/loader/i386/bsd.c:556 -msgid "size" -msgstr "velikost" - -#: grub-core/loader/i386/bsd.c:1147 grub-core/loader/i386/linux.c:466 -#: grub-core/loader/i386/xnu.c:1030 -msgid "Booting in blind mode" -msgstr "Zaganjanje v slepem naÄinu" - -#: grub-core/loader/i386/bsd.c:2137 -msgid "Load kernel of FreeBSD." -msgstr "Naloži jedro FreeBSD." - -#: grub-core/loader/i386/bsd.c:2140 -msgid "Load kernel of OpenBSD." -msgstr "Naloži jedro OpenBSD." - -#: grub-core/loader/i386/bsd.c:2143 -msgid "Load kernel of NetBSD." -msgstr "Naloži jedro NetBSD." - -#: grub-core/loader/i386/bsd.c:2147 -msgid "Load FreeBSD env." -msgstr "Naloži okolje FreeBSD." - -#: grub-core/loader/i386/bsd.c:2150 -msgid "Load FreeBSD kernel module." -msgstr "Naloži modul jedra FreeBSD." - -#: grub-core/loader/i386/bsd.c:2153 -msgid "Load NetBSD kernel module." -msgstr "Naloži jedrni modul NetBSD." - -#: grub-core/loader/i386/bsd.c:2156 -msgid "Load NetBSD kernel module (ELF)." -msgstr "Naloži jedrni modul NetBSD (ELF)." - -#: grub-core/loader/i386/bsd.c:2159 -msgid "Load FreeBSD kernel module (ELF)." -msgstr "Naloži modul jedra FreeBSD (ELF)." - -#. TRANSLATORS: ramdisk isn't identifier, -#. it can be translated. -#: grub-core/loader/i386/bsd.c:2165 -msgid "Load kOpenBSD ramdisk." -msgstr "Naloži ramdisk kOpenBSD." - -#. TRANSLATORS: "payload" is a term used -#. by coreboot and must be translated in -#. sync with coreboot. If unsure, -#. let it untranslated. -#: grub-core/loader/i386/coreboot/chainloader.c:510 -msgid "Load another coreboot payload" -msgstr "Naloži drugo obremenitev coreboot" - -#: grub-core/loader/i386/linux.c:876 -msgid "Legacy `ask' parameter no longer supported." -msgstr "OpuÅ¡Äen parameter `ask' ni veÄ podprt." - -#: grub-core/loader/i386/linux.c:892 grub-core/loader/i386/linux.c:902 -#: grub-core/loader/i386/linux.c:932 -#, c-format -msgid "%s is deprecated. Use set gfxpayload=%s before linux command instead.\n" -msgstr "" -"%s je zastarel. Namesto tega pred ukazom linux uporabite set gfxpayload=%s.\n" - -#. TRANSLATORS: "x" has to be entered in, like an identifier, -#. so please don't use better Unicode codepoints. -#: grub-core/loader/i386/linux.c:915 -#, c-format -msgid "" -"%s is deprecated. VGA mode %d isn't recognized. Use set " -"gfxpayload=WIDTHxHEIGHT[xDEPTH] before linux command instead.\n" -msgstr "" -"%s je zastarel. NaÄin VGA %d ni prepoznan. Namesto tega pred ukazom linux " -"uporabite gfxpayload=Å IRINAxVIÅ INA[xGLOBINA].\n" - -#: grub-core/loader/i386/pc/chainloader.c:302 -msgid "[--force|--bpb] FILE" -msgstr "[--force|--bpb] DATOTEKA" - -#: grub-core/loader/i386/pc/freedos.c:148 util/setup.c:293 -#, c-format -msgid "the size of `%s' is too large" -msgstr "velikost `%s' je prevelika" - -#: grub-core/loader/i386/pc/freedos.c:183 -msgid "Load FreeDOS kernel.sys." -msgstr "Naloži kernel.sys FreeBSD." - -#: grub-core/loader/i386/pc/ntldr.c:155 -msgid "Load NTLDR or BootMGR." -msgstr "Naloži NTLDR ali BootMGR." - -#. TRANSLATORS: it's about guessing which GRUB disk -#. is which Plan9 disk. If your language has no -#. word "mapping" you can use another word which -#. means that the GRUBDEVICE and PLAN9DEVICE are -#. actually the same device, just named differently -#. in OS and GRUB. -#: grub-core/loader/i386/pc/plan9.c:59 -msgid "Override guessed mapping of Plan9 devices." -msgstr "PrepiÅ¡i predvideno preslikavo naprav Plan9." - -#: grub-core/loader/i386/pc/plan9.c:60 -msgid "GRUBDEVICE=PLAN9DEVICE" -msgstr "NAPRAVAGRUB=NAPRAVAPLAN9" - -#: grub-core/loader/i386/pc/plan9.c:599 -msgid "KERNEL ARGS" -msgstr "ARGUMENTI JEDRA" - -#: grub-core/loader/i386/pc/plan9.c:599 -msgid "Load Plan9 kernel." -msgstr "Naloži jedro Plan9." - -#: grub-core/loader/i386/pc/pxechainloader.c:161 -msgid "Load a PXE image." -msgstr "Naloži odtis PXE." - -#: grub-core/loader/i386/pc/truecrypt.c:226 -#, fuzzy -msgid "Load Truecrypt ISO." -msgstr "Naloži kljuÄi Å¡ifriranja zfs." - -#: grub-core/loader/i386/xen.c:781 grub-core/loader/i386/xen.c:865 -msgid "initrd already loaded" -msgstr "" - -#: grub-core/loader/i386/xen.c:968 -#, fuzzy -msgid "Load module." -msgstr "Odstrani modul." - -#: grub-core/loader/i386/xnu.c:1003 -msgid "Press any key to launch xnu" -msgstr "Pritisnite katerokoli tipko za zagon xnu" - -#. TRANSLATORS: `device-properties' -#. is a variable name, -#. not a program. -#: grub-core/loader/i386/xnu.c:1159 -msgid "Load `device-properties' dump." -msgstr "Naloži izpis `device-properties'." - -#: grub-core/loader/ia64/efi/linux.c:124 -msgid "Could not locate FPSWA driver" -msgstr "Ni mogoÄe najti gonilnika FPSWA" - -#: grub-core/loader/ia64/efi/linux.c:132 -msgid "FPSWA protocol wasn't able to find the interface" -msgstr "Protokol FPSWA ni mogel najti vmesnika" - -#: grub-core/loader/ia64/efi/linux.c:580 -msgid "No FPSWA found" -msgstr "Protokola FPSWA ni mogoÄe najti" - -#: grub-core/loader/ia64/efi/linux.c:582 -#, c-format -msgid "FPSWA revision: %x\n" -msgstr "Predelava FPSWA: %x\n" - -#: grub-core/loader/ia64/efi/linux.c:591 -msgid "FILE [ARGS...]" -msgstr "DATOTEKA [ARGUMENTI ...]" - -#: grub-core/loader/ia64/efi/linux.c:597 -msgid "Display FPSWA version." -msgstr "Prikaži razliÄico FPSWA." - -#: grub-core/loader/multiboot.c:248 -msgid "WARNING: no console will be available to OS" -msgstr "OPOZORILO: na bolje ne bo nobena konzola" - -#: grub-core/loader/multiboot.c:450 -msgid "Load a multiboot 2 kernel." -msgstr "Naloži jedro multiboot 2." - -#: grub-core/loader/multiboot.c:453 -msgid "Load a multiboot 2 module." -msgstr "Naloži modul multiboot 2." - -#: grub-core/loader/multiboot.c:456 -msgid "Load a multiboot kernel." -msgstr "Naloži jedro multiboot." - -#: grub-core/loader/multiboot.c:459 -msgid "Load a multiboot module." -msgstr "Naloži modul multiboot." - -#: grub-core/loader/riscv/linux.c:30 grub-core/loader/riscv/linux.c:40 -#, fuzzy -msgid "Linux not supported yet" -msgstr "Seznam podprtih naÄinov videa:" - -#: grub-core/loader/xnu.c:1416 grub-core/term/gfxterm_background.c:45 -msgid "Background image mode." -msgstr "NaÄin slike ozadja." - -#. TRANSLATORS: This refers to background image mode (stretched or -#. in left-top corner). Note that GRUB will accept only original -#. keywords stretch and normal, not the translated ones. -#. So please put both in translation -#. e.g. stretch(=%STRETCH%)|normal(=%NORMAL%). -#. The percents mark the translated version. Since many people -#. may not know the word stretch or normal I recommend -#. putting the translation either here or in "Background image mode." -#. string. -#: grub-core/loader/xnu.c:1416 grub-core/term/gfxterm_background.c:55 -msgid "stretch|normal" -msgstr "razteg|obiÄajno" - -#: grub-core/loader/xnu.c:1482 -msgid "Load XNU image." -msgstr "Naloži odtis XNU." - -#: grub-core/loader/xnu.c:1484 -msgid "Load 64-bit XNU image." -msgstr "Naloži odtis 64-bitnega XNU." - -#: grub-core/loader/xnu.c:1486 -msgid "Load XNU extension package." -msgstr "Naloži paket razÅ¡iritve XNU." - -#: grub-core/loader/xnu.c:1488 -msgid "Load XNU extension." -msgstr "Naloži razÅ¡iritev XNU." - -#. TRANSLATORS: OSBundleRequired is a -#. variable name in xnu extensions -#. manifests. It behaves mostly like -#. GNU/Linux runlevels. -#. -#: grub-core/loader/xnu.c:1495 -msgid "DIRECTORY [OSBundleRequired]" -msgstr "MAPA [OSBundleRequired]" - -#. TRANSLATORS: There are many extensions -#. in extension directory. -#: grub-core/loader/xnu.c:1498 -msgid "Load XNU extension directory." -msgstr "Naloži razÅ¡iritev mape XNU." - -#. TRANSLATORS: ramdisk here isn't identifier. It can be translated. -#: grub-core/loader/xnu.c:1501 -msgid "Load XNU ramdisk. It will be available in OS as md0." -msgstr "Naloži ramdisk XNU. Na voljo bo kot md0." - -#: grub-core/loader/xnu.c:1505 -msgid "Load a splash image for XNU." -msgstr "Naloži pozdravno sliko za XNU." - -#: grub-core/loader/xnu.c:1510 -msgid "Load an image of hibernated XNU." -msgstr "Naloži odtis XNU v mirovanju." - -#: grub-core/mmap/mmap.c:538 -msgid "ADDR1,MASK1[,ADDR2,MASK2[,...]]" -msgstr "NASLOV1,MASKA1[,NASLOV2,MASKA2[,...]]" - -#: grub-core/mmap/mmap.c:539 -msgid "Declare memory regions as faulty (badram)." -msgstr "DoloÄi odseke pomnilnika kot pokvarjene (badram)." - -#: grub-core/mmap/mmap.c:541 -msgid "FROM[K|M|G] TO[K|M|G]" -msgstr "OD[K|M|G] DO[K|M|G]" - -#: grub-core/mmap/mmap.c:542 -msgid "Remove any memory regions in specified range." -msgstr "Odstrani vsa obmoÄja pomnilnika v navedenem obsegu." - -#: grub-core/net/bootp.c:653 -msgid "four arguments expected" -msgstr "priÄakovani so Å¡tirje argumenti" - -#: grub-core/net/bootp.c:661 grub-core/net/net.c:1155 -#, c-format -msgid "unrecognised network interface `%s'" -msgstr "neprepoznani omrežni vmesnik `%s'" - -#: grub-core/net/bootp.c:664 -msgid "no DHCP info found" -msgstr "podatkov DHCP ni mogoÄe najti" - -#: grub-core/net/bootp.c:674 -msgid "no DHCP options found" -msgstr "možnosti DHCP ni mogoÄe najti" - -#: grub-core/net/bootp.c:682 -#, fuzzy -msgid "invalid DHCP option code" -msgstr "možnosti DHCP ni mogoÄe najti" - -#: grub-core/net/bootp.c:686 -#, fuzzy, c-format -msgid "no DHCP option %u found" -msgstr "možnosti DHCP %d ni mogoÄe najti" - -#: grub-core/net/bootp.c:743 -#, c-format -msgid "unrecognised DHCP option format specification `%s'" -msgstr "neprepoznana možnost DHCP doloÄila oblike `%s'" - -#: grub-core/net/bootp.c:767 -#, fuzzy -msgid "no network card found" -msgstr "Pokaži omrežne kartice" - -#: grub-core/net/bootp.c:859 grub-core/net/net.c:389 -#, c-format -msgid "couldn't autoconfigure %s" -msgstr "ni mogoÄe samodejno nastaviti %s" - -#: grub-core/net/bootp.c:873 grub-core/net/bootp.c:876 -msgid "[CARD]" -msgstr "[KARTICA]" - -#: grub-core/net/bootp.c:874 -msgid "perform a bootp autoconfiguration" -msgstr "izvedi samostojno nastavite bootp" - -#: grub-core/net/bootp.c:877 -#, fuzzy -msgid "perform a DHCP autoconfiguration" -msgstr "izvedi samostojno nastavite bootp" - -#: grub-core/net/bootp.c:879 -msgid "VAR INTERFACE NUMBER DESCRIPTION" -msgstr "SPREMENLJIVKA VMESNIK Å TEVILO OPIS" - -#: grub-core/net/bootp.c:880 -msgid "" -"retrieve DHCP option and save it into VAR. If VAR is - then print the value." -msgstr "" -"pridobi možnost DHCP in jo shrani v SPREMENLJIVKO. ÄŒe SPREMENLJIVKA obstaja, " -"izpiÅ¡i vrednost." - -#: grub-core/net/dns.c:459 -msgid "no DNS servers configured" -msgstr "ni nastavljenega strežnika DNS" - -#: grub-core/net/dns.c:522 -msgid "domain name component is too long" -msgstr "sestavni del imena domene je predolg" - -#: grub-core/net/dns.c:618 grub-core/net/dns.c:666 -msgid "no DNS record found" -msgstr "zapisa DNS ni mogoÄe najti" - -#: grub-core/net/dns.c:626 -msgid "no DNS reply received" -msgstr "odgovor DNS ni prejet" - -#: grub-core/net/dns.c:682 -msgid "only ipv4" -msgstr "" - -#: grub-core/net/dns.c:686 -msgid "only ipv6" -msgstr "" - -#: grub-core/net/dns.c:690 -msgid "prefer ipv4" -msgstr "" - -#: grub-core/net/dns.c:694 -msgid "prefer ipv6" -msgstr "" - -#: grub-core/net/dns.c:759 -msgid "ADDRESS DNSSERVER" -msgstr "NASLOV STREŽNIKDNS" - -#: grub-core/net/dns.c:760 -msgid "Perform a DNS lookup" -msgstr "Izvedi iskanje DNS" - -#: grub-core/net/dns.c:762 grub-core/net/dns.c:765 -msgid "DNSSERVER" -msgstr "STREŽNIK_DNS" - -#: grub-core/net/dns.c:763 -msgid "Add a DNS server" -msgstr "Dodaj strežnik DNS" - -#: grub-core/net/dns.c:766 -msgid "Remove a DNS server" -msgstr "Odstrani strežnik DNS" - -#: grub-core/net/dns.c:768 -msgid "List DNS servers" -msgstr "IzpiÅ¡i strežnike DNS" - -#: grub-core/net/drivers/efi/efinet.c:49 grub-core/net/drivers/efi/efinet.c:65 -#: grub-core/net/drivers/efi/efinet.c:77 grub-core/net/drivers/emu/emunet.c:62 -#: grub-core/net/drivers/i386/pc/pxe.c:273 -#: grub-core/net/drivers/ieee1275/ofnet.c:75 -#: grub-core/net/drivers/uboot/ubootnet.c:62 -msgid "couldn't send network packet" -msgstr "ni mogoÄe poslati omrežnega paketa" - -#: grub-core/net/drivers/ieee1275/ofnet.c:326 -#: grub-core/net/drivers/ieee1275/ofnet.c:359 -#, fuzzy -msgid "interpret is not supported" -msgstr "32-bitni zaÅ¡Äiten vmesnik je podprt\n" - -#: grub-core/net/drivers/ieee1275/ofnet.c:336 -msgid "alloc-mem failed" -msgstr "" - -#: grub-core/net/drivers/ieee1275/ofnet.c:370 -msgid "free-mem failed" -msgstr "" - -#: grub-core/net/http.c:105 -msgid "unsupported HTTP response" -msgstr "nepodprt odziv HTTP" - -#. TRANSLATORS: GRUB HTTP code is pretty young. So even perfectly -#. valid answers like 403 will trigger this very generic message. -#: grub-core/net/http.c:126 -#, c-format -msgid "unsupported HTTP error %d: %s" -msgstr "nepodprta napaka HTTP %d: %s" - -#: grub-core/net/http.c:429 grub-core/net/tftp.c:420 -#, c-format -msgid "time out opening `%s'" -msgstr "zakasnitev med odpiranjem `%s'" - -#: grub-core/net/net.c:179 -msgid "timeout: could not resolve hardware address" -msgstr "zakasnitev: ni mogoÄe razreÅ¡iti naslova strojne opreme" - -#: grub-core/net/net.c:548 -#, c-format -msgid "unresolvable address %s" -msgstr "nerazreÅ¡ljiv naslov %s" - -#: grub-core/net/net.c:594 -#, c-format -msgid "unrecognised network address `%s'" -msgstr "neprepoznan omrežni naslov `%s'" - -#: grub-core/net/net.c:661 -msgid "destination unreachable" -msgstr "cilj je nedosegljiv" - -#. TRANSLATORS: route loop is a condition when e.g. -#. to contact server A you need to go through B -#. and to contact B you need to go through A. -#: grub-core/net/net.c:684 -msgid "route loop detected" -msgstr "zaznana je bila zanka poti" - -#: grub-core/net/net.c:700 -msgid "address not found" -msgstr "naslova ni mogoÄe najti" - -#: grub-core/net/net.c:704 -msgid "you can't delete this address" -msgstr "tega naslova ni mogoÄe izbrisati" - -#: grub-core/net/net.c:776 grub-core/net/net.c:792 -#, c-format -msgid "Unsupported hw address type %d\n" -msgstr "Nepodprta vrsta naslova strojne opreme %d\n" - -#: grub-core/net/net.c:813 -#, c-format -msgid "Unsupported address type %d\n" -msgstr "Nepodprta vrsta naslova %d\n" - -#: grub-core/net/net.c:1017 grub-core/net/net.c:1131 -msgid "three arguments expected" -msgstr "priÄakovani so trije argumenti" - -#: grub-core/net/net.c:1023 -msgid "card not found" -msgstr "kartice ni mogoÄe najti" - -#. TRANSLATORS: it refers to the network address. -#: grub-core/net/net.c:1167 -msgid "temporary" -msgstr "zaÄasno" - -#: grub-core/net/net.c:1190 -#, c-format -msgid "Unknown address type %d\n" -msgstr "Neznana vrsta naslova %d\n" - -#: grub-core/net/net.c:1298 -msgid "no server is specified" -msgstr "ni doloÄenega strežnika" - -#: grub-core/net/net.c:1637 -#, c-format -msgid "timeout reading `%s'" -msgstr "zakasnitev med branjem `%s'" - -#. TRANSLATORS: HWADDRESS stands for -#. "hardware address". -#: grub-core/net/net.c:1762 -msgid "SHORTNAME CARD ADDRESS [HWADDRESS]" -msgstr "KRATKOIME NASLOV KARTICE [NASLOV_STROJNE_OPREME]" - -#: grub-core/net/net.c:1763 -msgid "Add a network address." -msgstr "Dodaj omrežni naslov." - -#: grub-core/net/net.c:1766 -msgid "[CARD [HWADDRESS]]" -msgstr "[KARTICA [NASLOV_STROJNE_OPREME]]" - -#: grub-core/net/net.c:1767 -msgid "Perform an IPV6 autoconfiguration" -msgstr "Izvajanje samodejne nastavitve IPV6" - -#: grub-core/net/net.c:1770 grub-core/net/net.c:1777 -msgid "SHORTNAME" -msgstr "KRATKOIME" - -#: grub-core/net/net.c:1771 -msgid "Delete a network address." -msgstr "IzbriÅ¡i omrežni naslov." - -#. TRANSLATORS: "gw" is a keyword. -#: grub-core/net/net.c:1774 -msgid "SHORTNAME NET [INTERFACE| gw GATEWAY]" -msgstr "KRATKOIME NET [VMESNIK|gw PREHOD]" - -#: grub-core/net/net.c:1775 -msgid "Add a network route." -msgstr "Dodaj omrežno pot." - -#: grub-core/net/net.c:1778 -msgid "Delete a network route." -msgstr "IzbriÅ¡i omrežno pot." - -#: grub-core/net/net.c:1780 -msgid "list network routes" -msgstr "Pokaži omrežne poti" - -#: grub-core/net/net.c:1782 -msgid "list network cards" -msgstr "Pokaži omrežne kartice" - -#: grub-core/net/net.c:1784 -msgid "list network addresses" -msgstr "Pokaži omrežne naslove" - -#: grub-core/net/tcp.c:681 -msgid "connection refused" -msgstr "Povezava je zavrnjena" - -#: grub-core/net/tcp.c:684 -msgid "connection timeout" -msgstr "Povezava je zakasnela" - -#: grub-core/normal/auth.c:220 -msgid "Enter username: " -msgstr "Vnesite uporabniÅ¡ko ime: " - -#: grub-core/normal/auth.c:269 -msgid "[USERLIST]" -msgstr "[SEZNAMUPORABNIKOV]" - -#: grub-core/normal/auth.c:270 -msgid "Check whether user is in USERLIST." -msgstr "Preveri ali je uporabnik na SEZNAMU_UPORABNIKOV." - -#: grub-core/normal/cmdline.c:174 grub-core/normal/menu_entry.c:1068 -msgid "Possible commands are:" -msgstr "MogoÄi ukazi so:" - -#: grub-core/normal/cmdline.c:177 grub-core/normal/menu_entry.c:1072 -msgid "Possible devices are:" -msgstr "MogoÄe naprave so:" - -#: grub-core/normal/cmdline.c:180 grub-core/normal/menu_entry.c:1076 -msgid "Possible files are:" -msgstr "MogoÄe datoteke so:" - -#: grub-core/normal/cmdline.c:183 grub-core/normal/menu_entry.c:1080 -msgid "Possible partitions are:" -msgstr "MogoÄi razdelki so:" - -#: grub-core/normal/cmdline.c:186 grub-core/normal/menu_entry.c:1084 -msgid "Possible arguments are:" -msgstr "MogoÄi argumenti so:" - -#. TRANSLATORS: this message is used if none of above matches. -#. This shouldn't happen but please use the general term for -#. "thing" or "object". -#: grub-core/normal/cmdline.c:192 grub-core/normal/menu_entry.c:1088 -msgid "Possible things are:" -msgstr "MogoÄe stvari so:" - -#: grub-core/normal/color.c:81 -#, c-format -msgid "Warning: syntax error (missing slash) in `%s'\n" -msgstr "Opozorilo: skladenjska napaka (manjkajoÄa poÅ¡evnica) v `%s'\n" - -#: grub-core/normal/color.c:90 -#, c-format -msgid "Warning: invalid foreground color `%s'\n" -msgstr "Opozorilo: neveljavna barva ospredja `%s'\n" - -#: grub-core/normal/color.c:96 -#, c-format -msgid "Warning: invalid background color `%s'\n" -msgstr "Opozorilo: neveljavna barva ozadja `%s'\n" - -#: grub-core/normal/context.c:206 -msgid "ENVVAR [ENVVAR] ..." -msgstr "ENVVAR [ENVVAR] ..." - -#: grub-core/normal/context.c:207 -msgid "Export variables." -msgstr "Izvozi spremenljivke." - -#: grub-core/normal/datetime.c:25 -msgid "Sunday" -msgstr "nedelja" - -#: grub-core/normal/datetime.c:26 -msgid "Monday" -msgstr "ponedeljek" - -#: grub-core/normal/datetime.c:27 -msgid "Tuesday" -msgstr "torek" - -#: grub-core/normal/datetime.c:28 -msgid "Wednesday" -msgstr "sreda" - -#: grub-core/normal/datetime.c:29 -msgid "Thursday" -msgstr "Äetrtek" - -#: grub-core/normal/datetime.c:30 -msgid "Friday" -msgstr "petek" - -#: grub-core/normal/datetime.c:31 -msgid "Saturday" -msgstr "sobota" - -#: grub-core/normal/dyncmd.c:187 -msgid "module isn't loaded" -msgstr "modul ni naložen" - -#: grub-core/normal/main.c:211 -#, c-format -msgid "GNU GRUB version %s" -msgstr "RazliÄica GNU GRUB %s" - -#: grub-core/normal/main.c:360 -msgid "ESC at any time exits." -msgstr "ESC kadarkoli konÄa program." - -#: grub-core/normal/main.c:363 -#, c-format -msgid "" -"Minimal BASH-like line editing is supported. For the first word, TAB lists " -"possible command completions. Anywhere else TAB lists possible device or " -"file completions. %s" -msgstr "" -"Podprt je enostaven naÄin urejanja, podoben BASH. Za prvo besedo TABULATOR " -"izpiÅ¡e mogoÄa dokonÄanja ukazov. Povsod drugod TABULATOR naÅ¡teje mogoÄa " -"dokonÄanja naprav ali datotek. %s" - -#. TRANSLATORS: it's command line prompt. -#: grub-core/normal/main.c:395 -msgid ">" -msgstr " >" - -#. TRANSLATORS: it's command line prompt. -#: grub-core/normal/main.c:398 -msgid "grub>" -msgstr "grub >" - -#: grub-core/normal/main.c:518 -msgid "Clear the screen." -msgstr "PoÄisti zaslon." - -#: grub-core/normal/main.c:527 -msgid "Enter normal mode." -msgstr "Vstopi v obiÄajni naÄin." - -#: grub-core/normal/main.c:529 -msgid "Exit from normal mode." -msgstr "Zapusti obiÄajni naÄin." - -#: grub-core/normal/menu.c:66 grub-core/normal/menu_entry.c:1449 -msgid "Press any key to continue..." -msgstr "Pritisnite katerokoli tipko za nadaljevanje ..." - -#: grub-core/normal/menu.c:815 -#, c-format -msgid "Booting `%s'" -msgstr "Zaganjanje ` %s'" - -#: grub-core/normal/menu.c:827 -#, c-format -msgid "Falling back to `%s'" -msgstr "uporaba zasilne možnosti : `%s'" - -#: grub-core/normal/menu.c:843 -msgid "Failed to boot both default and fallback entries.\n" -msgstr "Zaganjanje tako privzetih kot povratnih vnosov je spodletelo.\n" - -#: grub-core/normal/menu_entry.c:1171 -msgid "Booting a command list" -msgstr "Zaganjanje seznama ukazov" - -#: grub-core/normal/menu_text.c:160 -msgid "" -"Minimum Emacs-like screen editing is supported. TAB lists completions. Press " -"Ctrl-x or F10 to boot, Ctrl-c or F2 for a command-line or ESC to discard " -"edits and return to the GRUB menu." -msgstr "" -"Podprt je enostaven naÄin urejanja, podoben Emacs. Tipka TAB izpiÅ¡e možnosti " -"dopolnjevanja. Pritisnite tipki Ctrl-x ali F10 za zagon, Ctrl-c ali F2 za " -"ukazno vrstico ali ESC za zavraÄanje urejanja in vrnitev v meni GRUB." - -#: grub-core/normal/menu_text.c:170 -#, c-format -msgid "Use the %C and %C keys to select which entry is highlighted." -msgstr "Uporabite tipki %C in %C za izbiro poudarjenega vnosa." - -#. TRANSLATORS: that's the list of binary unit prefixes. -#: grub-core/normal/misc.c:38 -msgid "B" -msgstr "" - -#: grub-core/normal/misc.c:38 -msgid "KiB" -msgstr "" - -#: grub-core/normal/misc.c:38 -msgid "MiB" -msgstr "" - -#: grub-core/normal/misc.c:38 -msgid "GiB" -msgstr "" - -#: grub-core/normal/misc.c:38 -msgid "TiB" -msgstr "" - -#: grub-core/normal/misc.c:38 -msgid "PiB" -msgstr "" - -#. TRANSLATORS: that's the list of binary unit prefixes. -#: grub-core/normal/misc.c:40 -msgid "K" -msgstr "" - -#: grub-core/normal/misc.c:40 -msgid "M" -msgstr "" - -#: grub-core/normal/misc.c:40 -msgid "G" -msgstr "" - -#: grub-core/normal/misc.c:40 -msgid "T" -msgstr "" - -#: grub-core/normal/misc.c:40 -msgid "P" -msgstr "" - -#. TRANSLATORS: that's the list of binary unit prefixes. -#: grub-core/normal/misc.c:42 -msgid "B/s" -msgstr "" - -#: grub-core/normal/misc.c:42 -msgid "KiB/s" -msgstr "" - -#: grub-core/normal/misc.c:42 -msgid "MiB/s" -msgstr "" - -#: grub-core/normal/misc.c:42 -msgid "GiB/s" -msgstr "" - -#: grub-core/normal/misc.c:42 -msgid "TiB/s" -msgstr "" - -#: grub-core/normal/misc.c:42 -msgid "PiB/s" -msgstr "" - -#: grub-core/normal/misc.c:96 -#, c-format -msgid "Partition %s:" -msgstr "Razdelek %s:" - -#: grub-core/normal/misc.c:101 -#, c-format -msgid "Device %s:" -msgstr "Naprava %s:" - -#: grub-core/normal/misc.c:107 -msgid "Filesystem cannot be accessed" -msgstr "Do datoteÄnega sistema ni mogoÄ dostop" - -#: grub-core/normal/misc.c:121 -#, c-format -msgid "Filesystem type %s" -msgstr "Vrsta datoteÄnega sistema %s" - -#: grub-core/normal/misc.c:131 -#, c-format -msgid "- Label `%s'" -msgstr " - Oznaka `%s'" - -#. TRANSLATORS: Arguments are year, month, day, hour, minute, -#. second, day of the week (translated). -#: grub-core/normal/misc.c:148 -#, c-format -msgid "- Last modification time %d-%02d-%02d %02d:%02d:%02d %s" -msgstr "- ÄŒas zadnje spremembe %d-%02d-%02d %02d:%02d:%02d %s" - -#: grub-core/normal/misc.c:171 -msgid "No known filesystem detected" -msgstr "Ni zaznanega datoteÄnega sistema" - -#: grub-core/normal/misc.c:174 -#, fuzzy, c-format -msgid " - Partition start at %llu%sKiB" -msgstr " - Razdelek se zaÄne na %llu" - -#: grub-core/normal/misc.c:178 -#, c-format -msgid " - Sector size %uB" -msgstr "" - -#: grub-core/normal/misc.c:180 -msgid " - Total size unknown" -msgstr " - Skupna velikost je neznana" - -#: grub-core/normal/misc.c:182 -#, fuzzy, c-format -msgid " - Total size %llu%sKiB" -msgstr " - Skupna velikost %llu odsekov" - -#. TRANSLATORS: Replace dot with appropriate decimal separator for -#. your language. -#: grub-core/normal/misc.c:186 -msgid ".5" -msgstr "" - -#. TRANSLATORS: This has to fit on one line. It's ok to include few -#. words but don't write poems. -#: grub-core/normal/term.c:82 -msgid "--MORE--" -msgstr "--VEÄŒ--" - -#: grub-core/osdep/aros/config.c:92 grub-core/osdep/unix/config.c:137 -#: grub-core/osdep/windows/config.c:55 -#, fuzzy, c-format -msgid "cannot open configuration file `%s': %s" -msgstr "Ni mogoÄe odpreti datoteke OS `%s': %s" - -#: grub-core/osdep/basic/compress.c:8 grub-core/osdep/basic/compress.c:14 -#: grub-core/osdep/basic/compress.c:20 -#, fuzzy -msgid "no compression is available for your platform" -msgstr "" -"Za vaÅ¡e okolje namigi niso na voljo. PriÄakujte zmanjÅ¡ano hitrost delovanja." - -#: grub-core/osdep/basic/no_platform.c:30 -#: grub-core/osdep/windows/platform.c:418 -msgid "no IEEE1275 routines are available for your platform" -msgstr "" - -#: grub-core/osdep/basic/no_platform.c:38 -msgid "no EFI routines are available for your platform" -msgstr "" - -#: grub-core/osdep/basic/no_platform.c:45 -#: grub-core/osdep/windows/platform.c:425 -msgid "no SGI routines are available for your platform" -msgstr "" - -#. TRANSLATORS: The OS itself may very well have a random -#. number generator but GRUB doesn't know how to access it. -#: grub-core/osdep/basic/random.c:42 -msgid "no random number generator is available for your OS" -msgstr "" - -#: grub-core/osdep/devmapper/getroot.c:81 -msgid "Failed to create `device-mapper' tree" -msgstr "Drevesa `device-mapper' ni mogoÄe ustvariti" - -#: grub-core/osdep/devmapper/getroot.c:197 -#: grub-core/osdep/freebsd/getroot.c:202 -#, c-format -msgid "can't mount encrypted volume `%s': %s" -msgstr "Å¡ifriranega nosilca `%s' ni mogoÄe priklopiti: %s" - -#. TRANSLATORS: geom is the name of (k)FreeBSD device framework. -#. Usually left untranslated. -#. -#: grub-core/osdep/freebsd/getroot.c:82 grub-core/osdep/freebsd/getroot.c:164 -#: grub-core/osdep/freebsd/getroot.c:258 grub-core/osdep/freebsd/getroot.c:316 -msgid "couldn't open geom" -msgstr "ni mogoÄe odpreti geom" - -#: grub-core/osdep/freebsd/getroot.c:182 grub-core/osdep/freebsd/getroot.c:277 -msgid "couldn't find geli consumer" -msgstr "stranke geli ni mogoÄe najti" - -#: grub-core/osdep/freebsd/getroot.c:282 -msgid "couldn't retrieve geli UUID" -msgstr "ni mogoÄe pridobiti UUID geli" - -#. TRANSLATORS: geom is the name of (k)FreeBSD device framework. -#. Usually left untranslated. "part" is the identifier of one of its -#. classes. -#: grub-core/osdep/freebsd/getroot.c:325 -msgid "couldn't find geom `part' class" -msgstr "ni mogoÄe najti razreda geom `part'" - -#: grub-core/osdep/freebsd/hostdisk.c:72 grub-core/osdep/linux/hostdisk.c:93 -msgid "unaligned device size" -msgstr "neporavnana velikost naprave" - -#: grub-core/osdep/generic/blocklist.c:56 -#, c-format -msgid "attempting to read the core image `%s' from GRUB" -msgstr "izvaja se poskus branja odtisa jedra `%s 'iz nalagalnika GRUB" - -#: grub-core/osdep/generic/blocklist.c:57 -#, c-format -msgid "attempting to read the core image `%s' from GRUB again" -msgstr "ponovno se izvaja poskus branja odtisa jedra `%s 'iz nalagalnika GRUB" - -#: grub-core/osdep/generic/blocklist.c:115 -#, c-format -msgid "cannot read `%s' correctly" -msgstr "`%s' ni mogoÄe pravilno prebrati" - -#: grub-core/osdep/generic/blocklist.c:126 -#, fuzzy -msgid "failed to read the sectors of the core image" -msgstr "branje ostalih odsekov v datoteki jedra je spodletelo" - -#. TRANSLATORS: On GNU/Hurd, a "translator" is similar to a filesystem -#. mount, but handled by a userland daemon, whose invocation command line -#. is being fetched here. First %s is the file being looked at (for which -#. we are fetching the "translator" command line), second %s is the error -#. message. -#. -#: grub-core/osdep/hurd/getroot.c:79 -#, c-format -msgid "cannot get translator command line for path `%s': %s" -msgstr "ni mogoÄe dobiti ukazne vrstice prevajalnika za pot `%s': %s" - -#: grub-core/osdep/hurd/getroot.c:82 -#, c-format -msgid "translator command line is empty for path `%s'" -msgstr "ukazna vrstica prevajalnika je prazna za pot `%s'" - -#. TRANSLATORS: we expect to get something like -#. /hurd/foobar --option1 --option2=baz /dev/something -#. -#: grub-core/osdep/hurd/getroot.c:98 -#, c-format -msgid "" -"translator `%s' for path `%s' has several non-option words, at least `%s' " -"and `%s'" -msgstr "" -"prevajalnik `%s' za pot `%s' ima veÄ besed, ki niso možnosti, vsaj `%s' in `" -"%s'" - -#. TRANSLATORS: we expect to get something like -#. /hurd/foobar --option1 --option2=baz /dev/something -#. -#: grub-core/osdep/hurd/getroot.c:109 -#, c-format -msgid "" -"translator `%s' for path `%s' is given only options, cannot find device part" -msgstr "" -"prevajalniku `%s' za pot `%s' so podane le možnosti in ni mogoÄe najti dela " -"naprave" - -#: grub-core/osdep/hurd/hostdisk.c:73 -#, c-format -msgid "Storage information for `%s' does not include type" -msgstr "" - -#: grub-core/osdep/hurd/hostdisk.c:75 -#, c-format -msgid "`%s' is not a local disk" -msgstr "" - -#: grub-core/osdep/hurd/hostdisk.c:78 -#, c-format -msgid "" -"Storage information for `%s' indicates neither a plain partition nor a plain " -"disk" -msgstr "" - -#: grub-core/osdep/linux/blocklist.c:81 grub-core/osdep/linux/blocklist.c:96 -#: grub-core/osdep/linux/blocklist.c:122 -#, c-format -msgid "can't retrieve blocklists: %s" -msgstr "seznamov blokiranja ni mogoÄe pridobiti: %s" - -#: grub-core/osdep/linux/blocklist.c:84 -msgid "blocksize is not divisible by 512" -msgstr "velikost blokov ni deljiva s 512" - -#: grub-core/osdep/linux/blocklist.c:86 -#, fuzzy -msgid "invalid zero blocksize" -msgstr "neveljaven blok okolja" - -#: grub-core/osdep/linux/blocklist.c:90 util/setup.c:744 -#, fuzzy -msgid "can't retrieve blocklists" -msgstr "seznamov blokiranja ni mogoÄe pridobiti: %s" - -#: grub-core/osdep/linux/getroot.c:154 -#, c-format -msgid "ioctl RAID_VERSION error: %s" -msgstr "napaka ioctl RAID_VERSION: %s" - -#: grub-core/osdep/linux/getroot.c:160 grub-core/osdep/linux/getroot.c:164 -#, c-format -msgid "unsupported RAID version: %d.%d" -msgstr "nepodprta razliÄica RAID: %d.%d" - -#: grub-core/osdep/linux/getroot.c:169 -#, c-format -msgid "ioctl GET_ARRAY_INFO error: %s" -msgstr "napaka ioctl GET_ARRAY_INFO: %s" - -#: grub-core/osdep/linux/getroot.c:178 -#, c-format -msgid "ioctl GET_DISK_INFO error: %s" -msgstr "napaka ioctl GET_DISK_INFO: %s" - -#: grub-core/osdep/linux/getroot.c:608 grub-core/osdep/linux/getroot.c:678 -#: grub-core/osdep/linux/hostdisk.c:126 grub-core/osdep/unix/getroot.c:253 -#: grub-core/osdep/unix/getroot.c:642 grub-core/osdep/unix/platform.c:92 -#: grub-core/osdep/unix/platform.c:100 -#, c-format -msgid "Unable to open stream from %s: %s" -msgstr "Pretoka iz %s ni mogoÄe odpreti: %s" - -#: grub-core/osdep/linux/getroot.c:1033 -#, c-format -msgid "unknown kind of RAID device `%s'" -msgstr "neznana vrsta naprave RAID `%s'" - -#: grub-core/osdep/linux/ofpath.c:181 -#, fuzzy, c-format -msgid "`obppath' not found in parent dirs of `%s', no IEEE1275 name discovery" -msgstr "" -"'obppath' ni bil najden v nadrejenih mapah %s, ni odkrivanja imen IEEE1275" - -#: grub-core/osdep/linux/ofpath.c:222 grub-core/osdep/unix/getroot.c:505 -#: grub-core/osdep/unix/getroot.c:529 grub-core/osdep/unix/relpath.c:49 -#: util/grub-install.c:984 util/grub-install.c:1331 util/grub-probe.c:323 -#, fuzzy, c-format -msgid "failed to get canonical path of `%s'" -msgstr "pridobivanje kanoniÄne poti %s je spodletelo" - -#: grub-core/osdep/linux/ofpath.c:740 -#, fuzzy, c-format -msgid "unknown device type %s" -msgstr "neznana vrsta naprave %s\n" - -#: grub-core/osdep/linux/ofpath.c:758 util/ieee1275/grub-ofpathname.c:39 -#, c-format -msgid "Usage: %s DEVICE\n" -msgstr "Uporaba: %s NAPRAVA\n" - -#: grub-core/osdep/unix/exec.c:86 grub-core/osdep/unix/exec.c:172 -#: grub-core/osdep/unix/exec.c:217 -#, c-format -msgid "Unable to fork: %s" -msgstr "Ni mogoÄa razvejitev: %s" - -#: grub-core/osdep/unix/exec.c:166 grub-core/osdep/unix/exec.c:211 -#, c-format -msgid "Unable to create pipe: %s" -msgstr "Napaka med ustvarjanjem cevi: %s" - -#: grub-core/osdep/unix/getroot.c:370 -#, fuzzy -msgid "cannot save the original directory" -msgstr "izvorne mape ni mogoÄe obnoviti" - -#: grub-core/osdep/unix/getroot.c:423 grub-core/osdep/unix/getroot.c:480 -#: grub-core/osdep/unix/getroot.c:489 -msgid "cannot restore the original directory" -msgstr "izvorne mape ni mogoÄe obnoviti" - -#. TRANSLATORS: "stat" comes from the name of POSIX function. -#: grub-core/osdep/unix/getroot.c:551 grub-core/osdep/unix/hostdisk.c:61 -#: grub-core/osdep/unix/relpath.c:73 grub-core/osdep/unix/relpath.c:97 -#: util/getroot.c:160 util/getroot.c:162 util/grub-install.c:774 -#: util/grub-macbless.c:70 -#, c-format -msgid "cannot stat `%s': %s" -msgstr "ni mogoÄe stat `%s': %s" - -#: grub-core/osdep/unix/hostdisk.c:293 -#, fuzzy, c-format -msgid "cannot make temporary file: %s" -msgstr "datoteke %s ni mogoÄe preimenovati v %s" - -#: grub-core/osdep/unix/hostdisk.c:311 -#, fuzzy, c-format -msgid "cannot make temporary directory: %s" -msgstr "izvorne mape ni mogoÄe obnoviti" - -#: grub-core/osdep/unix/platform.c:77 -#, fuzzy, c-format -msgid "" -"couldn't find IEEE1275 device path for %s.\n" -"You will have to set `boot-device' variable manually" -msgstr "" -"NI mogoÄe najti poti drevesa naprav IEEE1275 za %s.\\nSpremenljivko `boot-" -"device' bo treba nastaviti roÄno.\\n" - -#. TRANSLATORS: This message is shown when required executable `%s' -#. isn't found. -#: grub-core/osdep/unix/platform.c:149 grub-core/osdep/unix/platform.c:189 -#, fuzzy, c-format -msgid "%s: not found" -msgstr "%s: ni mogoÄe najti.\\n" - -#: grub-core/osdep/unix/platform.c:225 -#, fuzzy, c-format -msgid "" -"`nvsetenv' failed. \n" -"You will have to set `boot-device' variable manually. At the IEEE1275 " -"prompt, type:\n" -" %s\n" -msgstr "" -"Spremenljivko `boot-device' bo treba nastaviti roÄno. Pri pozivu IEEE1275 " -"vnesite:" - -#: grub-core/osdep/unix/platform.c:240 -msgid "You will have to set `SystemPartition' and `OSLoader' manually." -msgstr "Možnosti `SystemPartition' in `OSLoader' bo treba nastaviti roÄno." - -#. TRANSLATORS: canonical pathname is the -#. complete one e.g. /etc/fstab. It has -#. to contain `/' normally, if it doesn't -#. we're in trouble and throw this error. -#: grub-core/osdep/unix/relpath.c:90 -msgid "no `/' in canonical filename" -msgstr "brez `/' v kanoniÄnem imenu datoteke" - -#: grub-core/osdep/windows/hostdisk.c:151 -msgid "cygwin_conv_path() failed" -msgstr "cygwin_conv_path() je spodletel" - -#: grub-core/osdep/windows/hostdisk.c:501 util/grub-install.c:570 -#, fuzzy -msgid "couldn't retrieve random data" -msgstr "nakljuÄnih podatkov za sol ni mogoÄe pridobiti" - -#: grub-core/osdep/windows/platform.c:97 -msgid "Insufficient privileges to access firmware, assuming BIOS" -msgstr "" - -#: grub-core/osdep/windows/platform.c:225 -msgid "no EFI routines are available when running in BIOS mode" -msgstr "" - -#: grub-core/osdep/windows/platform.c:240 -#, fuzzy -msgid "unexpected EFI error" -msgstr "nepriÄakovan konec datoteke" - -#: grub-core/osdep/windows/platform.c:315 -msgid "Couldn't find a free BootNNNN slot" -msgstr "" - -#: grub-core/partmap/gpt.c:191 -msgid "" -"this GPT partition label contains no BIOS Boot Partition; embedding won't be " -"possible" -msgstr "" -"ta razdelek GPT ne vsebuje zagonskega razdelka BIOS. Vstavljanje ne bo " -"mogoÄe." - -#: grub-core/partmap/gpt.c:196 -msgid "your BIOS Boot Partition is too small; embedding won't be possible" -msgstr "vaÅ¡ zagonski razdelek BIOS je premajhen. Vstavljanje ne bo mogoÄe." - -#. TRANSLATORS: MBR gap and boot track is the same thing and is the space -#. between MBR and first partitition. If your language translates well only -#. "boot track", you can just use it everywhere. Next two messages are about -#. RAID controllers/software bugs which GRUB has to live with. Please spread -#. the message that these are bugs in other software and not merely -#. suboptimal behaviour. -#: grub-core/partmap/msdos.c:51 -#, c-format -msgid "" -"Sector %llu is already in use by raid controller `%s'; avoiding it. Please " -"ask the manufacturer not to store data in MBR gap" -msgstr "" -"Odsek %llu je že v uporabi nadzornika raid `%s', zato bo izpuÅ¡Äen. PoÅ¡ljite " -"zahtevo proizvajalcu, da podatkov ne shranjujejo na mestu zapisa MBR." - -#: grub-core/partmap/msdos.c:54 -#, c-format -msgid "" -"Sector %llu is already in use by the program `%s'; avoiding it. This " -"software may cause boot or other problems in future. Please ask its authors " -"not to store data in the boot track" -msgstr "" -"Odsek %llu je že v uporabi programa `%s', zato bo izpuÅ¡Äen. Program lahko v " -"prihodnosti povzroÄi težave z zagonom ali druge težave. PoÅ¡ljite zahtevo " -"programerjem, da podatkov ne shranjujejo na mestu zagonske sledi. " - -#: grub-core/partmap/msdos.c:384 -msgid "" -"other software is using the embedding area, and there is not enough room for " -"core.img. Such software is often trying to store data in a way that avoids " -"detection. We recommend you investigate" -msgstr "" -"drugi programi že uporabljajo vstavljeno podroÄje, zato ni dovolj prostora " -"za core.img. Taki programi pogosto poskuÅ¡ajo shraniti programe na naÄin, ki " -"se izogiba zaznavanju. PriporoÄamo vam, da to raziÅ¡Äete." - -#: grub-core/partmap/msdos.c:395 -msgid "" -"this msdos-style partition label has no post-MBR gap; embedding won't be " -"possible" -msgstr "" -"ta oznaka razdelka v slogu msdos nima oznake za MBR, zato vstavljanje ne bo " -"mogoÄe." - -#: grub-core/partmap/msdos.c:404 -msgid "your embedding area is unusually small. core.img won't fit in it." -msgstr "" -"vaÅ¡e podroÄje vstavljanja je neobiÄajno majhno, zato datoteke core.img v " -"doloÄeno podroÄje ne bo mogoÄe vstaviti." - -#: grub-core/parttool/msdospart.c:39 -msgid "Make partition active" -msgstr "Naredi razdelek dejaven" - -#: grub-core/parttool/msdospart.c:51 -msgid "not a primary partition" -msgstr "ni osnovni razdelek" - -#: grub-core/parttool/msdospart.c:69 -#, c-format -msgid "Partition %d is active now. \n" -msgstr "Razdelek %d je zdaj dejaven.\n" - -#: grub-core/parttool/msdospart.c:74 -#, c-format -msgid "Cleared active flag on %d. \n" -msgstr "Zastavica dejavnosti pogona na %d je poÄiÅ¡Äena.\n" - -#: grub-core/parttool/msdospart.c:87 -msgid "Change partition type" -msgstr "Spremeni vrsto razdelka" - -#: grub-core/parttool/msdospart.c:88 -msgid "Set `hidden' flag in partition type" -msgstr "Nastavi zastavico `skrito' v vrsti razdelkov" - -#: grub-core/parttool/msdospart.c:130 -#, c-format -msgid "the partition type 0x%x isn't valid" -msgstr "vrsta razdelka 0x%x ni veljavna" - -#. TRANSLATORS: In this case we're actually writing to the disk and actively -#. modifying partition type rather than just defining it. -#: grub-core/parttool/msdospart.c:137 -#, c-format -msgid "Setting partition type to 0x%x\n" -msgstr "Nastavljanje vrste razdelkov na 0x%x\n" - -#. TRANSLATORS: 0 is a quantifier. "break" (similar to bash) -#. can be used e.g. to break 3 loops at once. -#. But asking it to break 0 loops makes no sense. -#: grub-core/script/execute.c:143 -msgid "can't break 0 loops" -msgstr "ni mogoÄe zlomiti 0 zank" - -#. TRANSLATORS: It's about not being -#. inside a function. "return" can be used only -#. in a function and this error occurs if it's used -#. anywhere else. -#: grub-core/script/execute.c:227 -msgid "not in function body" -msgstr "ni v telesu funkcije" - -#: grub-core/script/execute.c:371 -#, c-format -msgid "invalid variable name `%s'" -msgstr "neveljavno ime spremenljivke `%s'" - -#: grub-core/script/execute.c:953 -msgid "cannot allocate command buffer" -msgstr "" - -#: grub-core/script/lexer.c:144 util/grub-fstest.c:330 -msgid "unexpected end of file" -msgstr "nepriÄakovan konec datoteke" - -#: grub-core/script/main.c:55 grub-core/script/main.c:57 -#: grub-core/script/main.c:59 grub-core/script/main.c:67 -msgid "[NUM]" -msgstr "[Å TEVILO]" - -#: grub-core/script/main.c:55 -msgid "Exit from loops" -msgstr "Izhod iz zank" - -#: grub-core/script/main.c:57 -msgid "Continue loops" -msgstr "Nadaljuj zanke" - -#. TRANSLATORS: Positional arguments are -#. arguments $0, $1, $2, ... -#: grub-core/script/main.c:62 -msgid "Shift positional parameters." -msgstr "Zamakni parametre položajev ..." - -#: grub-core/script/main.c:64 -msgid "[VALUE]..." -msgstr "[VREDNOST] ..." - -#: grub-core/script/main.c:65 -msgid "Set positional parameters." -msgstr "Nastavi parametre položajev." - -#. TRANSLATORS: It's a command description -#. and "Return" is a verb, not a noun. The -#. command in question is "return" and -#. has exactly the same semanics as bash -#. equivalent. -#: grub-core/script/main.c:73 -msgid "Return from a function." -msgstr "Vrni se iz funkcije." - -#: grub-core/term/gfxterm_background.c:176 -msgid "[-m (stretch|normal)] FILE" -msgstr "[-m (stretch|normal)] DATOTEKA" - -#: grub-core/term/gfxterm_background.c:177 -msgid "Load background image for active terminal." -msgstr "Naloži sliko ozadja za dejavni terminal." - -#: grub-core/term/gfxterm_background.c:182 util/grub-install.c:302 -#: util/grub-install.c:303 util/grub-mkrescue.c:107 util/grub-mkrescue.c:108 -#: util/grub-render-label.c:61 util/grub-render-label.c:63 -msgid "COLOR" -msgstr "BARVA" - -#: grub-core/term/gfxterm_background.c:183 -msgid "Set background color for active terminal." -msgstr "Nastavi barvo ozadja za dejavni terminal." - -#: grub-core/term/i386/coreboot/cbmemc.c:139 -#, fuzzy -msgid "Show CBMEM console content." -msgstr "Pokaži vsebino pomnilnika." - -#: grub-core/term/serial.c:57 -msgid "Set the serial unit." -msgstr "Nastavi zaporedno enoto." - -#: grub-core/term/serial.c:58 -msgid "Set the serial port address." -msgstr "Nastavi naslov zaporednih vrat." - -#: grub-core/term/serial.c:59 -msgid "Set the serial port speed." -msgstr "Nastavi hitrost zaporednih vrat." - -#: grub-core/term/serial.c:60 -msgid "Set the serial port word length." -msgstr "Nastavi dolžino besed zaporednih vrat." - -#: grub-core/term/serial.c:61 -msgid "Set the serial port parity." -msgstr "Nastavi parnost zaporednih vrat." - -#: grub-core/term/serial.c:62 -msgid "Set the serial port stop bits." -msgstr "Nastavi zaustavitvene bite zaporednih vrat." - -#: grub-core/term/serial.c:63 -#, fuzzy -msgid "Set the base frequency." -msgstr "Nastavi zaporedno enoto." - -#: grub-core/term/serial.c:64 -msgid "Enable/disable RTS/CTS." -msgstr "" - -#: grub-core/term/serial.c:218 -#, c-format -msgid "serial port `%s' isn't found" -msgstr "zaporednih vrat `%s' ni mogoÄe najti" - -#: grub-core/term/serial.c:254 -#, fuzzy -msgid "unsupported serial port flow control" -msgstr "nepodprta dolžina besede zaporednih vrat" - -#: grub-core/term/serial.c:429 -msgid "[OPTIONS...]" -msgstr "[MOŽNOSTI ...]" - -#: grub-core/term/serial.c:430 -msgid "Configure serial port." -msgstr "Nastavitev zaporednih vrat." - -#: grub-core/term/terminfo.c:184 -#, c-format -msgid "unknown terminfo type `%s'" -msgstr "neznana vrsta terminfo `%s'" - -#: grub-core/term/terminfo.c:668 -msgid "ASCII" -msgstr "ASCII" - -#: grub-core/term/terminfo.c:671 -msgid "UTF-8" -msgstr "UTF-8" - -#. TRANSLATORS: visually ordered UTF-8 is a non-compliant encoding -#. based on UTF-8 with right-to-left languages written in reverse. -#. Used on some terminals. Normal UTF-8 is refered as -#. "logically-ordered UTF-8" by opposition. -#: grub-core/term/terminfo.c:677 -msgid "visually-ordered UTF-8" -msgstr "vidno urejen UTF-8" - -#: grub-core/term/terminfo.c:680 -msgid "Unknown encoding" -msgstr "Neznano kodiranje" - -#: grub-core/term/terminfo.c:684 -msgid "Current terminfo types:" -msgstr "Trenutne vrste terminfo:" - -#: grub-core/term/terminfo.c:699 -msgid "Terminal is ASCII-only [default]." -msgstr "Terminal je le ASCII [privzeto]." - -#: grub-core/term/terminfo.c:700 -msgid "Terminal is logical-ordered UTF-8." -msgstr "Terminal je logiÄno urejen UTF-8." - -#: grub-core/term/terminfo.c:701 -msgid "Terminal is visually-ordered UTF-8." -msgstr "Terminal je vidno urejen UTF-8." - -#: grub-core/term/terminfo.c:703 -msgid "Terminal has specified geometry." -msgstr "Terminal ima doloÄeno geometrijo." - -#. TRANSLATORS: "x" has to be entered in, like an identifier, so please don't -#. use better Unicode codepoints. -#: grub-core/term/terminfo.c:706 -msgid "WIDTHxHEIGHT." -msgstr "Å IRINAxVIÅ INA." - -#: grub-core/term/terminfo.c:746 -msgid "incorrect terminal dimensions specification" -msgstr "nepravilno doloÄilo mer terminala" - -#: grub-core/term/terminfo.c:776 -#, c-format -msgid "terminal %s isn't found or it's not handled by terminfo" -msgstr "terminala %s ni mogoÄe najti ali pa ga ne upravlja terminfo" - -#: grub-core/term/terminfo.c:785 -msgid "[[-a|-u|-v] [-g WxH] TERM [TYPE]]" -msgstr "[[-a|-u|-v] [-g WxH] IZRAZ [VRSTA]]" - -#: grub-core/term/terminfo.c:786 -msgid "Set terminfo type of TERM to TYPE.\n" -msgstr "Nastavi vrsto terminfo IZRAZA v VRSTA.\n" - -#. TRANSLATORS: this is the BLOCK-argument, not -#. environment block. -#: grub-core/tests/test_blockarg.c:49 -msgid "Print and execute block argument." -msgstr "IzpiÅ¡i in izvedi argument bloka." - -#. TRANSLATORS: We're speaking about bitmap images like -#. JPEG or PNG. -#: grub-core/video/bitmap.c:209 -#, c-format -msgid "bitmap file `%s' is of unsupported format" -msgstr "datoteka bitne slike `%s' je nepodprte vrste" - -#: grub-core/video/i386/pc/vbe.c:1191 -#, c-format -msgid " VBE info: version: %d.%d OEM software rev: %d.%d\n" -msgstr " VBE info: razliÄica: %d.%d predelava programa OEM: %d.%d\n" - -#: grub-core/video/i386/pc/vbe.c:1198 -#, c-format -msgid " total memory: %d KiB\n" -msgstr " skupni pomnilnik: %d KiB\n" - -#: grub-core/video/video.c:596 grub-core/video/video.c:762 -msgid "no suitable video mode found" -msgstr "ni mogoÄe najti ustreznega video modula" - -#: include/grub/crypto.h:403 -msgid "access denied" -msgstr "dostop je zavrnjen" - -#: include/grub/util/install.h:30 include/grub/util/install.h:35 -msgid "MODULES" -msgstr "MODULI" - -#: include/grub/util/install.h:31 -msgid "pre-load specified modules MODULES" -msgstr "predhodno naloži doloÄene module MODULE" - -#: include/grub/util/install.h:33 -msgid "embed a specific DTB" -msgstr "" - -#: include/grub/util/install.h:36 -msgid "install only MODULES and their dependencies [default=all]" -msgstr "" - -#: include/grub/util/install.h:37 -msgid "THEMES" -msgstr "" - -#: include/grub/util/install.h:38 -#, c-format -msgid "install THEMES [default=%s]" -msgstr "" - -#: include/grub/util/install.h:39 -msgid "FONTS" -msgstr "" - -#: include/grub/util/install.h:40 -#, c-format -msgid "install FONTS [default=%s]" -msgstr "" - -#: include/grub/util/install.h:41 -msgid "LOCALES" -msgstr "" - -#: include/grub/util/install.h:42 -msgid "install only LOCALES [default=all]" -msgstr "" - -#: include/grub/util/install.h:45 -msgid "compress GRUB files [optional]" -msgstr "" - -#: include/grub/util/install.h:48 util/grub-mkimage.c:83 -#, fuzzy -msgid "choose the compression to use for core image" -msgstr "izberite stiskanje, ki ga želite uporabiti" - -#. TRANSLATORS: platform here isn't identifier. It can be translated. -#: include/grub/util/install.h:51 include/grub/util/install.h:54 -#: util/grub-mkimage.c:66 -#, c-format -msgid "use images and modules under DIR [default=%s/]" -msgstr "uporabi odtise in module v MAPI [privzeto=%s/]" - -#: include/grub/util/install.h:57 -#, fuzzy, c-format -msgid "use translations under DIR [default=%s]" -msgstr "uporabi odtise in module v MAPI [privzeto=%s/]" - -#: include/grub/util/install.h:60 -#, fuzzy, c-format -msgid "use themes under DIR [default=%s]" -msgstr "uporabi odtise in module v MAPI [privzeto=%s/]" - -#: include/grub/util/install.h:65 util/grub-mkimage.c:78 -msgid "embed FILE as public key for signature checking" -msgstr "" - -#: util/editenv.c:59 util/grub-editenv.c:201 util/grub-install-common.c:535 -#: util/grub-mkimage.c:315 util/setup.c:791 -#, fuzzy, c-format -msgid "cannot sync `%s': %s" -msgstr "ni mogoÄe stat `%s': %s" - -#: util/editenv.c:64 -#, c-format -msgid "cannot rename the file %s to %s" -msgstr "datoteke %s ni mogoÄe preimenovati v %s" - -#: util/getroot.c:402 -#, c-format -msgid "disk does not exist, so falling back to partition device %s" -msgstr "disk ne obstaja, zato bo uporabljena naprava razdelka %s" - -#: util/grub-editenv.c:45 util/grub-fstest.c:506 -msgid "Commands:" -msgstr "Ukazi:" - -#: util/grub-editenv.c:47 -msgid "Create a blank environment block file." -msgstr "Ustvari bloÄno datoteko praznega okolja." - -#: util/grub-editenv.c:49 -msgid "List the current variables." -msgstr "IzpiÅ¡e trenutne spremenljivke." - -#. TRANSLATORS: "set" is a keyword. It's a summary of "set" subcommand. -#: util/grub-editenv.c:51 -msgid "set [NAME=VALUE ...]" -msgstr "set [IME=VREDNOST ...]" - -#: util/grub-editenv.c:52 -msgid "Set variables." -msgstr "Nastavi spremenljivke." - -#. TRANSLATORS: "unset" is a keyword. It's a summary of "unset" subcommand. -#: util/grub-editenv.c:54 -msgid "unset [NAME ...]" -msgstr "unset [IME ...]" - -#: util/grub-editenv.c:55 -msgid "Delete variables." -msgstr "IzbriÅ¡e spremenljivke" - -#: util/grub-editenv.c:57 -msgid "Options:" -msgstr "Možnosti:" - -#: util/grub-editenv.c:84 -msgid "You need to specify at least one command.\n" -msgstr "Navesti je treba vsaj en ukaz.\n" - -#: util/grub-editenv.c:113 -msgid "FILENAME COMMAND" -msgstr "IMEDATOTEKE UKAZ" - -#: util/grub-editenv.c:114 -msgid "Tool to edit environment block." -msgstr "Orodje za urajanje bloka okolja." - -#: util/grub-editenv.c:116 -#, c-format -msgid "" -"If FILENAME is `-', the default value %s is used.\n" -"\n" -"There is no `delete' command; if you want to delete the whole environment\n" -"block, use `rm %s'." -msgstr "" - -#: util/grub-editenv.c:162 -msgid "invalid environment block" -msgstr "neveljaven blok okolja" - -#: util/grub-editenv.c:217 -#, c-format -msgid "invalid parameter %s" -msgstr "neveljaven parameter %s" - -#: util/grub-editenv.c:222 -msgid "environment block too small" -msgstr "blok okolja je premajhen" - -#: util/grub-fstest.c:107 -#, fuzzy, c-format -msgid "disk read fails at offset %lld, length %lld" -msgstr "branje diska je spodletelo na odmiki %lld, dolžini %d" - -#: util/grub-fstest.c:138 -#, c-format -msgid "invalid skip value %lld" -msgstr "neveljavna vrednost preskoka %lld" - -#: util/grub-fstest.c:160 util/grub-fstest.c:246 -#, c-format -msgid "read error at offset %llu: %s" -msgstr "napaka branja na odmiku %llu:%s" - -#: util/grub-fstest.c:210 -#, c-format -msgid "cannot open OS file `%s': %s" -msgstr "Ni mogoÄe odpreti datoteke OS `%s': %s" - -#: util/grub-fstest.c:225 util/misc.c:126 -#, c-format -msgid "cannot write to the stdout: %s" -msgstr "Ni mogoÄe pisati v stdout: %s" - -#: util/grub-fstest.c:259 -#, c-format -msgid "compare fail at offset %llu" -msgstr "spodletela primerjava pri odmiku %llu" - -#: util/grub-fstest.c:280 util/grub-fstest.c:314 -#, c-format -msgid "OS file %s open error: %s" -msgstr "Napaka odpiranje datoteke OS %s: %s" - -#: util/grub-fstest.c:402 util/grub-mount.c:392 -#, c-format -msgid "`loopback' command fails: %s" -msgstr "ukaz `loopback' je spodletel: %s" - -#: util/grub-fstest.c:413 util/grub-mount.c:402 -#, c-format -msgid "`cryptomount' command fails: %s" -msgstr "ukaz `cryptomount' je spodletel: %s" - -#: util/grub-fstest.c:474 util/grub-fstest.c:478 -msgid "couldn't retrieve UUID" -msgstr "UUID ni mogoÄe pridobiti" - -#: util/grub-fstest.c:507 -msgid "ls PATH" -msgstr "ls POT" - -#: util/grub-fstest.c:507 -msgid "List files in PATH." -msgstr "IzpiÅ¡e datoteke v POTI." - -#: util/grub-fstest.c:508 -msgid "cp FILE LOCAL" -msgstr "cp DATOTEKA KRAJEVNO" - -#: util/grub-fstest.c:508 -msgid "Copy FILE to local file LOCAL." -msgstr "Kopira DATOTEKO v krajevno datoteko KRAJEVNO." - -#: util/grub-fstest.c:509 -msgid "cat FILE" -msgstr "cat DATOTEKA" - -#: util/grub-fstest.c:509 -msgid "Copy FILE to standard output." -msgstr "Kopira DATOTEKO na standardni izhod." - -#: util/grub-fstest.c:510 -msgid "cmp FILE LOCAL" -msgstr "cmp DATOTEKA KRAJEVNO" - -#: util/grub-fstest.c:510 -msgid "Compare FILE with local file LOCAL." -msgstr "Primerja DATOTEKO s krajevno datoteko KRAJEVNO." - -#: util/grub-fstest.c:511 -msgid "hex FILE" -msgstr "hex DATOTEKA" - -#: util/grub-fstest.c:511 -msgid "Show contents of FILE in hex." -msgstr "Pokaže vsebino DATOTEKE v Å¡estnajstiÅ¡kem zapisu." - -#: util/grub-fstest.c:512 -msgid "crc FILE" -msgstr "crc DATOTEKA" - -#: util/grub-fstest.c:512 -msgid "Get crc32 checksum of FILE." -msgstr "Pridobi nadzorno vsoto crc32 DATOTEKE." - -#: util/grub-fstest.c:513 -msgid "blocklist FILE" -msgstr "blocklist DATOTEKA" - -#: util/grub-fstest.c:513 -msgid "Display blocklist of FILE." -msgstr "Pokaže seznam blokov DATOTEKE." - -#: util/grub-fstest.c:514 -msgid "xnu_uuid DEVICE" -msgstr "xnu_uuid NAPRAVA" - -#: util/grub-fstest.c:514 -msgid "Compute XNU UUID of the device." -msgstr "IzraÄunaj UUID XNU naprave." - -#. TRANSLATORS: bitmaps are images like e.g. in JPEG. -#: util/grub-fstest.c:517 util/grub-fstest.c:518 util/grub-fstest.c:519 -#: util/grub-mkfont.c:938 util/grub-mkfont.c:951 util/grub-mkfont.c:952 -#: util/grub-mkpasswd-pbkdf2.c:46 util/grub-mkpasswd-pbkdf2.c:47 -#: util/grub-mkpasswd-pbkdf2.c:48 -msgid "NUM" -msgstr "Å TEVILO" - -#: util/grub-fstest.c:517 -msgid "Skip N bytes from output file." -msgstr "PreskoÄi N bajtov iz izhodne datoteke." - -#: util/grub-fstest.c:518 -msgid "Handle N bytes in output file." -msgstr "Upravljaj N bajtov v izhodni datoteki." - -#: util/grub-fstest.c:519 -msgid "Specify the number of input files." -msgstr "DoloÄi Å¡tevilo vhodnih datotek." - -#: util/grub-fstest.c:520 util/grub-mount.c:453 -msgid "Set debug environment variable." -msgstr "Nastavi spremenljivko razhroÅ¡Äevalnega okolja." - -#: util/grub-fstest.c:521 util/grub-mount.c:454 -msgid "Mount crypto devices." -msgstr "Priklopi Å¡ifrirne naprave." - -#. TRANSLATORS: "prompt" is a keyword. -#: util/grub-fstest.c:524 util/grub-mount.c:457 -msgid "FILE|prompt" -msgstr "DATOTEKA|poziv" - -#: util/grub-fstest.c:524 util/grub-mount.c:457 -msgid "Load zfs crypto key." -msgstr "Naloži kljuÄi Å¡ifriranja zfs." - -#: util/grub-fstest.c:526 -msgid "Uncompress data." -msgstr "RazÅ¡iri podatke." - -#: util/grub-fstest.c:605 -msgid "Invalid disk count.\n" -msgstr "Neveljavno Å¡tevilo diskov.\n" - -#. TRANSLATORS: disk count is optional but if it's there it must -#. be before disk list. So please don't imply disk count as mandatory. -#. -#: util/grub-fstest.c:613 -msgid "Disk count must precede disks list.\n" -msgstr "Å tevilo diskov mora biti pred seznamom diskov.\n" - -#: util/grub-fstest.c:633 -msgid "No command is specified.\n" -msgstr "Ni navedenega ukaza.\n" - -#: util/grub-fstest.c:638 -msgid "Not enough parameters to command.\n" -msgstr "Ni dovolj parametrov za ukaz.\n" - -#: util/grub-fstest.c:711 -#, c-format -msgid "Invalid command %s.\n" -msgstr "Neveljaven ukaz %s.\n" - -#: util/grub-fstest.c:724 -msgid "IMAGE_PATH COMMANDS" -msgstr "POT_ODTISA UKAZI" - -#: util/grub-fstest.c:725 util/grub-mount.c:553 -msgid "Debug tool for filesystem driver." -msgstr "Orodje razhroÅ¡Äevanja za gonilnik datoteÄnega sistema." - -#: util/grub-glue-efi.c:53 -#, fuzzy -msgid "set input filename for 32-bit part." -msgstr "nastavi vhodno ime datoteke. Privzeto je STDIN" - -#: util/grub-glue-efi.c:55 -#, fuzzy -msgid "set input filename for 64-bit part." -msgstr "nastavi vhodno ime datoteke. Privzeto je STDIN" - -#: util/grub-glue-efi.c:57 util/grub-mklayout.c:55 util/grub-render-label.c:71 -msgid "set output filename. Default is STDOUT" -msgstr "nastavi izhodno ime datoteke. Privzeto je STDOUT" - -#: util/grub-glue-efi.c:94 util/grub-mklayout.c:476 -#: util/grub-mkpasswd-pbkdf2.c:86 util/grub-render-label.c:131 -msgid "[OPTIONS]" -msgstr "[MOŽNOSTI]" - -#: util/grub-glue-efi.c:95 -msgid "Glue 32-bit and 64-bit binary into Apple universal one." -msgstr "" - -#: util/grub-glue-efi.c:116 -#, fuzzy -msgid "Missing input file\n" -msgstr "N vhodnih datotek." - -#: util/grub-install-common.c:127 util/grub-install-common.c:151 -#, fuzzy, c-format -msgid "cannot copy `%s' to `%s': %s" -msgstr "ni mogoÄe odpreti `%s': %s" - -#: util/grub-install-common.c:147 -#, fuzzy, c-format -msgid "can't compress `%s' to `%s'" -msgstr "ni mogoÄe odpreti `%s': %s" - -#: util/grub-install-common.c:196 util/grub-install-common.c:552 -#: util/grub-install-common.c:579 util/grub-install-common.c:621 -#, fuzzy, c-format -msgid "cannot open directory `%s': %s" -msgstr "ni mogoÄe odpreti `%s': %s" - -#: util/grub-install-common.c:212 -#, fuzzy, c-format -msgid "cannot delete `%s': %s" -msgstr "ni mogoÄe iskati `%s': %s." - -#: util/grub-install-common.c:324 util/grub-mkimage.c:209 -msgid "grub-mkimage is compiled without XZ support" -msgstr "grub-mkimage je kodno preveden brez podpore XZ" - -#: util/grub-install-common.c:332 util/grub-mkimage.c:217 -#, c-format -msgid "Unknown compression format %s" -msgstr "Neznana vrsta stiskanja %s" - -#: util/grub-install-common.c:400 -#, fuzzy, c-format -msgid "Unrecognized compression `%s'" -msgstr "Nepoznana možnost `%s'\\n" - -#: util/grub-install-common.c:509 -#, fuzzy, c-format -msgid "unknown target format %s" -msgstr "neznana vrsta cilja %s\n" - -#: util/grub-install-common.c:700 -#, fuzzy, c-format -msgid "cannot find locale `%s'" -msgstr "ni mogoÄe najti ukaza `%s'" - -#: util/grub-install-common.c:939 -#, fuzzy, c-format -msgid "%s doesn't exist. Please specify --target or --directory" -msgstr "%s ne obstaja. DoloÄiti je treba argumenta --target ali --directory\\n" - -#: util/grub-install-common.c:948 util/grub-install-common.c:951 -#, fuzzy, c-format -msgid "invalid modinfo file `%s'" -msgstr "neveljavno ime datoteke `%s'" - -#: util/grub-install-common.c:966 -#, fuzzy, c-format -msgid "Unknown platform `%s-%s'" -msgstr "neznan argument `%s'" - -#: util/grub-install.c:238 -msgid "More than one install device?" -msgstr "Ali obstaja veÄ kot ena naprava namestitve?" - -#: util/grub-install.c:251 -#, c-format -msgid "" -"install GRUB images under the directory DIR/%s instead of the %s directory" -msgstr "namesti odtise GRUB v mapi MAPA/%s namesto v mapi %s" - -#: util/grub-install.c:256 util/grub-probe.c:734 -msgid "TARGET" -msgstr "CILJ" - -#. TRANSLATORS: "TARGET" as in "target platform". -#: util/grub-install.c:258 -#, fuzzy, c-format -msgid "install GRUB for TARGET platform [default=%s]; available targets: %s" -msgstr "namesti GRUB za CILJNO okolje [privzeto=trenutno]" - -#. TRANSLATORS: "may break" doesn't just mean that option wouldn't have any -#. effect but that it will make the resulting install unbootable from HDD. -#. TRANSLATORS: The potential breakage isn't limited to floppies but it's -#. likely to make the install unbootable from HDD. -#: util/grub-install.c:267 util/grub-setup.c:94 -msgid "" -"make the drive also bootable as floppy (default for fdX devices). May break " -"on some BIOSes." -msgstr "" -"naredi pogon zagonljiv tudi kot disketo (privzeto za naprave fdX). Na " -"nekaterih sistemih BIOS se lahko okvari." - -#: util/grub-install.c:270 -msgid "delete device map if it already exists" -msgstr "izbriÅ¡i preslikavo naprave, Äe že obstaja" - -#: util/grub-install.c:272 util/grub-setup.c:87 -msgid "install even if problems are detected" -msgstr "namesti tudi, kadar so zaznane težave." - -#: util/grub-install.c:274 -msgid "use identifier file even if UUID is available" -msgstr "uporabi datoteko doloÄila tudi, Äe je UUID na voljo" - -#: util/grub-install.c:276 -msgid "" -"disk module to use (biosdisk or native). This option is only available on " -"BIOS target." -msgstr "" -"diskovni modul za uporabo (biosdisk ali lastni). Ta možnost je na voljo le " -"na cilju BIOS." - -#: util/grub-install.c:279 -#, fuzzy -msgid "" -"don't update the `boot-device'/`Boot*' NVRAM variables. This option is only " -"available on EFI and IEEE1275 targets." -msgstr "" -"ne posodobi spremenljivke NVRAM `boot-device'. Ta možnost je na voljo le na " -"ciljih IEEE1275." - -#: util/grub-install.c:282 util/grub-setup.c:89 -msgid "do not probe for filesystems in DEVICE" -msgstr "ne zaznaj datoteÄnih sistemov na NAPRAVI" - -#: util/grub-install.c:284 -msgid "do not install bootsector" -msgstr "" - -#: util/grub-install.c:286 util/grub-setup.c:96 -#, fuzzy -msgid "" -"Do not apply any reed-solomon codes when embedding core.img. This option is " -"only available on x86 BIOS targets." -msgstr "" -"diskovni modul za uporabo (biosdisk ali lastni). Ta možnost je na voljo le " -"na cilju BIOS." - -#: util/grub-install.c:293 -msgid "" -"the installation device is removable. This option is only available on EFI." -msgstr "" -"namestitvena naprava je odstranljiva. Ta možnost je na voljo le na sistemih " -"EFI." - -#: util/grub-install.c:295 -msgid "ID" -msgstr "ID" - -#: util/grub-install.c:296 -#, fuzzy -msgid "the ID of bootloader. This option is only available on EFI and Macs." -msgstr "ID zagonskega nalagalnika. Ta možnost je na voljo le na sistemih EFI." - -#: util/grub-install.c:298 -msgid "use DIR as the EFI System Partition root." -msgstr "uporabi MAPO kot korensko mapo razdelka sistema EFI." - -#: util/grub-install.c:300 -msgid "use DIR for PPC MAC install." -msgstr "" - -#: util/grub-install.c:301 util/grub-mkrescue.c:106 -#, fuzzy -msgid "use FILE as font for label" -msgstr "uporabi DATOTEKO kot grub-setup" - -#: util/grub-install.c:302 util/grub-mkrescue.c:107 -msgid "use COLOR for label" -msgstr "" - -#: util/grub-install.c:303 util/grub-mkrescue.c:108 -msgid "use COLOR for label background" -msgstr "" - -#: util/grub-install.c:304 util/grub-mkrescue.c:110 -#, fuzzy -msgid "use STRING as product version" -msgstr "Uporabi NIZ kot telo vnosa menija." - -#: util/grub-install.c:361 -#, fuzzy -msgid "[OPTION] [INSTALL_DEVICE]" -msgstr "Uporaba: %s [MOŽNOST] [NAPRAVA_NAMESTITVE]" - -#: util/grub-install.c:362 -msgid "Install GRUB on your drive." -msgstr "Namesti GRUB na vaÅ¡ pogon." - -#: util/grub-install.c:363 -#, c-format -msgid "" -"INSTALL_DEVICE must be system device filename.\n" -"%s copies GRUB images into %s. On some platforms, it may also install GRUB " -"into the boot sector." -msgstr "" - -#: util/grub-install.c:672 -#, fuzzy, c-format -msgid "the drive %s is defined multiple times in the device map %s" -msgstr "Pogon %s je veÄkrat doloÄen v preslikavi naprave %s\\n" - -#: util/grub-install.c:878 -msgid "Unable to determine your platform. Use --target." -msgstr "" -"Ni mogoÄe doloÄiti vaÅ¡ega okolja. Uporabiti je treba argument --target." - -#: util/grub-install.c:891 -#, c-format -msgid "Installing for %s platform.\n" -msgstr "" - -#: util/grub-install.c:939 -#, fuzzy -msgid "install device isn't specified" -msgstr "Naprava namestitve ni doloÄena." - -#: util/grub-install.c:1057 -#, fuzzy -msgid "cannot find EFI directory" -msgstr "ni mapa" - -#: util/grub-install.c:1060 util/grub-install.c:1209 util/grub-install.c:1254 -#: util/grub-macbless.c:76 util/grub-probe.c:329 util/setup.c:316 -#, c-format -msgid "cannot find a device for %s (is /dev mounted?)" -msgstr "ni mogoÄe najti naprave za %s (Ali je /dev priklopljen?)" - -#: util/grub-install.c:1069 util/grub-install.c:1217 util/grub-install.c:1270 -#: util/grub-install.c:1365 util/grub-macbless.c:80 util/grub-probe.c:372 -#, c-format -msgid "cannot find a GRUB drive for %s. Check your device.map" -msgstr "ni mogoÄe najti pogona GRUB za %s. Preverite datoteko device.map." - -#: util/grub-install.c:1087 -#, fuzzy, c-format -msgid "%s doesn't look like an EFI partition" -msgstr "%s ni videti kot razdelek EFI.\\n" - -#: util/grub-install.c:1129 util/grub-install.c:1614 -msgid "You've found a bug" -msgstr "" - -#: util/grub-install.c:1231 -#, c-format -msgid "filesystem on %s is neither HFS nor HFS+" -msgstr "" - -#: util/grub-install.c:1299 -#, c-format -msgid "" -"attempt to install to encrypted disk without cryptodisk enabled. Set `%s' in " -"file `%s'" -msgstr "" - -#: util/grub-install.c:1410 util/grub-install.c:1772 util/grub-install.c:1872 -#, fuzzy, c-format -msgid "Can't create file: %s" -msgstr "Napaka med ustvarjanjem cevi: %s" - -#: util/grub-install.c:1491 -#, fuzzy -msgid "no hints available for your platform. Expect reduced performance" -msgstr "" -"Za vaÅ¡e okolje namigi niso na voljo. PriÄakujte zmanjÅ¡ano hitrost delovanja." - -#. TRANSLATORS: This is a prefix in the log to indicate that usually -#. a command would be executed but due to an option was skipped. -#: util/grub-install.c:1702 -msgid "NOT RUNNING: " -msgstr "" - -#: util/grub-install.c:1806 -#, fuzzy -msgid "the chosen partition is not a PReP partition" -msgstr "Izbrani razdelek ni razdelek PReP." - -#: util/grub-install.c:1811 -#, fuzzy -msgid "failed to copy Grub to the PReP partition" -msgstr "Kopiranje nalagalnika GRUB na razdelek PReP je spodletelo." - -#: util/grub-install.c:1816 -#, fuzzy, c-format -msgid "" -"the PReP partition is not empty. If you are sure you want to use it, run dd " -"to clear it: `%s'" -msgstr "" -"Razdelek PReP ni prazen. ÄŒe ga res želite uporabiti, zaženite ukaz dd za " -"poÄiÅ¡Äenje:" - -#: util/grub-install.c:1888 util/grub-install.c:1932 -#, c-format -msgid "efibootmgr failed to register the boot entry: %s" -msgstr "" - -#: util/grub-install.c:1916 -#, fuzzy -msgid "EFI bootloader id isn't specified." -msgstr "Naprava namestitve ni doloÄena." - -#: util/grub-install.c:1950 -msgid "WARNING: no platform-specific install was performed" -msgstr "OPOZORILO: za okolje doloÄena namestitev ni izvedena" - -#: util/grub-install.c:1957 -msgid "Installation finished. No error reported." -msgstr "Namestitev je konÄana. Ni poroÄil o napakah." - -#: util/grub-macbless.c:101 -msgid "bless for x86-based macs" -msgstr "" - -#: util/grub-macbless.c:103 -msgid "bless for ppc-based macs" -msgstr "" - -#: util/grub-macbless.c:136 util/grub-probe.c:823 -msgid "No path or device is specified.\n" -msgstr "Ni doloÄene naprave ali poti.\n" - -#: util/grub-macbless.c:157 -msgid "--ppc PATH|--x86 FILE" -msgstr "" - -#: util/grub-macbless.c:158 -msgid "Mac-style bless on HFS or HFS+" -msgstr "" - -#: util/grub-menulst2cfg.c:44 -#, c-format -msgid "Usage: %s [INFILE [OUTFILE]]\n" -msgstr "Uporaba: %s [VHODNA DATOTEKA[IZHODNA DATOTEKA]]\n" - -#: util/grub-mkfont.c:157 -#, c-format -msgid "Freetype Error %d loading glyph 0x%x for U+0x%x%s" -msgstr "Napaka Freetype %d med nalaganjem pismenke 0x%x za U+0x%x%s" - -#. TRANSLATORS: These qualifiers are used for cursive typography, -#. mainly Arabic. Note that the terms refer to the visual position -#. and not logical order and if used in left-to-right script then -#. leftmost is initial but with right-to-left script like Arabic -#. rightmost is the initial. -#: util/grub-mkfont.c:165 -msgid " (medial)" -msgstr "(sredinsko)" - -#: util/grub-mkfont.c:166 -msgid " (leftmost)" -msgstr "(najbolj levo)" - -#: util/grub-mkfont.c:167 -msgid " (rightmost)" -msgstr "(najbolj desno)" - -#: util/grub-mkfont.c:481 -#, c-format -msgid "Out of range substitution (%d, %d)\n" -msgstr "Zamenjava izven obsega (%d, %d)\n" - -#. TRANSLATORS: "lookup" is taken directly from font specifications -#. which are formulated as "Under condition X replace LOOKUP with -#. SUBSTITUITION". " -#: util/grub-mkfont.c:506 -#, c-format -msgid "Out of range lookup: %d\n" -msgstr "Iskanje izven obsega: %d\n" - -#: util/grub-mkfont.c:514 -#, c-format -msgid "Unsupported substitution type: %d\n" -msgstr "Nepodprta vrsta zamenjave: %d\n" - -#: util/grub-mkfont.c:550 -#, c-format -msgid "Unsupported substitution specification: %d\n" -msgstr "Nepodprto doloÄilo zamenjave: %d\n" - -#: util/grub-mkfont.c:582 -#, c-format -msgid "Unsupported coverage specification: %d\n" -msgstr "Nepodprto doloÄilo pokritosti: %d\n" - -#: util/grub-mkfont.c:622 -#, c-format -msgid "WARNING: unsupported font feature parameters: %x\n" -msgstr "OPOZORILO: nepodprti parametri zmožnosti pisave: %x\n" - -#: util/grub-mkfont.c:936 util/grub-mkrescue.c:98 util/grub-mkstandalone.c:48 -msgid "save output in FILE [required]" -msgstr "shrani izhod v DATOTEKO [zahtevano]" - -#. TRANSLATORS: some font files may have multiple faces (fonts). -#. This option is used to chose among them, the first face being '0'. -#. Rarely used. -#: util/grub-mkfont.c:942 -msgid "select face index" -msgstr "izbor kazala sloga pisave" - -#: util/grub-mkfont.c:943 -msgid "FROM-TO[,FROM-TO]" -msgstr "OD-DO[,OD-DO]" - -#. TRANSLATORS: It refers to the range of characters in font. -#: util/grub-mkfont.c:945 -msgid "set font range" -msgstr "nastavi obseg pisave" - -#. TRANSLATORS: "family name" for font is just a generic name without suffix -#. like "Bold". -#: util/grub-mkfont.c:949 -msgid "set font family name" -msgstr "nastavi ime družine pisave" - -#: util/grub-mkfont.c:950 -msgid "SIZE" -msgstr "VELIKOST" - -#: util/grub-mkfont.c:950 -msgid "set font size" -msgstr "nastavi velikost pisave" - -#: util/grub-mkfont.c:951 -msgid "set font descent" -msgstr "nastavi zniževanje pisave" - -#: util/grub-mkfont.c:952 -msgid "set font ascent" -msgstr "nastavi zviÅ¡evanje pisave" - -#: util/grub-mkfont.c:953 -msgid "convert to bold font" -msgstr "pretvori v krepko pisavo" - -#: util/grub-mkfont.c:954 -msgid "force autohint" -msgstr "vsili samodejno glajenje" - -#: util/grub-mkfont.c:955 -msgid "disable hinting" -msgstr "onemogoÄi glajenje" - -#. TRANSLATORS: some fonts contain bitmap rendering for -#. some sizes. This option forces rerendering even if -#. pre-rendered bitmap is available. -#. -#: util/grub-mkfont.c:961 -msgid "ignore bitmap strikes when loading" -msgstr "prezri Ärke bitne slike med nalaganjem" - -#. TRANSLATORS: It refers to the range of characters in font. -#: util/grub-mkfont.c:1059 util/grub-mkfont.c:1075 -msgid "invalid font range" -msgstr "Neveljaven obseg pisav" - -#: util/grub-mkfont.c:1151 -msgid "[OPTIONS] FONT_FILES" -msgstr "[MOŽNOSTI] DATOTEKE_PISAVE" - -#: util/grub-mkfont.c:1152 -msgid "Convert common font file formats into PF2" -msgstr "Pretvori pogoste vrste datotek pisav v PF2" - -#: util/grub-mkfont.c:1182 util/grub-mkrescue.c:483 -#: util/grub-mkstandalone.c:306 -msgid "output file must be specified" -msgstr "doloÄena mora biti izhodna datoteka" - -#: util/grub-mkfont.c:1185 -msgid "FT_Init_FreeType fails" -msgstr "FT_Init_FreeType je spodletel" - -#: util/grub-mkfont.c:1199 -#, c-format -msgid "can't open file %s, index %d: error %d" -msgstr "ni mogoÄe odpreti datoteke %s, kazalo %d: napaka %d" - -#: util/grub-mkfont.c:1229 -#, fuzzy, c-format -msgid "can't set %dx%d font size: Freetype error %d: %s" -msgstr "ni mogoÄe nastaviti velikosti pisave %dx%d" - -#: util/grub-mkimage.c:67 -#, fuzzy -msgid "set prefix directory" -msgstr "doloÄitev mape predpon [privzeta=%s]" - -#. TRANSLATORS: "memdisk" here isn't an identifier, it can be translated. -#. "embed" is a verb (command description). " -#: util/grub-mkimage.c:71 -msgid "" -"embed FILE as a memdisk image\n" -"Implies `-p (memdisk)/boot/grub' and overrides any prefix supplied " -"previously, but the prefix itself can be overridden by later options" -msgstr "" - -#: util/grub-mkimage.c:74 -#, fuzzy -msgid "embed FILE as a device tree (DTB)\n" -msgstr "vstavi DATOTEKO kot odtis memdisk" - -#: util/grub-mkimage.c:76 -msgid "embed FILE as an early config" -msgstr "vstavi DATOTEKO kot zgodnjo nastavitveno datoteko" - -#. TRANSLATORS: NOTE is a name of segment. -#: util/grub-mkimage.c:80 -msgid "add NOTE segment for CHRP IEEE1275" -msgstr "dodaj odsek NOTE za CHRP IEEE1275" - -#: util/grub-mkimage.c:81 -msgid "output a generated image to FILE [default=stdout]" -msgstr "shrani ustvarjen odtis v DATOTEKO[privzeto=stdout]" - -#: util/grub-mkimage.c:82 -msgid "FORMAT" -msgstr "VRSTA" - -#: util/grub-mkimage.c:100 util/grub-mkstandalone.c:62 -msgid "generate an image in FORMAT" -msgstr "ustvari odtis v VRSTI" - -#: util/grub-mkimage.c:101 util/grub-mkstandalone.c:63 -msgid "available formats:" -msgstr "razpoložljive vrste:" - -#: util/grub-mkimage.c:152 util/grub-mkstandalone.c:96 -#, c-format -msgid "unknown target format %s\n" -msgstr "neznana vrsta cilja %s\n" - -#: util/grub-mkimage.c:242 -msgid "[OPTION]... [MODULES]" -msgstr "[MOŽNOST] ... [MODULI]" - -#: util/grub-mkimage.c:243 -msgid "Make a bootable image of GRUB." -msgstr "Naredi zagonljiv odtis GRUB." - -#: util/grub-mkimage.c:273 util/grub-mkstandalone.c:309 -msgid "Target format not specified (use the -O option)." -msgstr "Ciljna oblika ni doloÄena (uporabite možnost -O)." - -#: util/grub-mkimage.c:282 -#, fuzzy -msgid "Prefix not specified (use the -p option)." -msgstr "Ciljna oblika ni doloÄena (uporabite možnost -O)." - -#: util/grub-mkimage.c:318 util/setup.c:793 -#, fuzzy, c-format -msgid "cannot close `%s': %s" -msgstr "ni mogoÄe odpreti `%s': %s" - -#: util/grub-mkimagexx.c:2191 -#, c-format -msgid "" -"`%s' is miscompiled: its start address is 0x%llx instead of 0x%llx: ld.gold " -"bug?" -msgstr "" - -#: util/grub-mklayout.c:53 -msgid "set input filename. Default is STDIN" -msgstr "nastavi vhodno ime datoteke. Privzeto je STDIN" - -#. TRANSLATORS: scan identifier is keyboard key symbolic name. -#: util/grub-mklayout.c:307 -#, c-format -msgid "Unknown keyboard scan identifier %s\n" -msgstr "Neznano doloÄilo preiskovanja tipkovnice %s\n" - -#. TRANSLATORS: scan code is keyboard key numeric identifier. -#: util/grub-mklayout.c:390 util/grub-mklayout.c:418 -#, c-format -msgid "Unknown keyboard scan code 0x%02x\n" -msgstr "Neznana koda pritiska tipke 0x%02x\n" - -#. TRANSLATORS: this error is triggered when input doesn't contain any -#. key descriptions. -#: util/grub-mklayout.c:438 -msgid "ERROR: no valid keyboard layout found. Check the input.\n" -msgstr "" -"NAPAKA: veljavne razporeditve tipkovnice ni bilo mogoÄe najti. Preverite " -"vhod.\n" - -#. TRANSLATORS: "one" is a shortcut for "keyboard layout". -#: util/grub-mklayout.c:478 -msgid "Generate GRUB keyboard layout from Linux console one." -msgstr "Ustvari razporeditev tipkovnice GRUB iz razporeditve konzole Linux." - -#: util/grub-mknetdir.c:47 -msgid "root directory of TFTP server" -msgstr "korenska mapa strežnika TFTP" - -#: util/grub-mknetdir.c:49 -msgid "relative subdirectory on network server" -msgstr "relativna podmapa na omrežnem strežniku" - -#: util/grub-mknetdir.c:88 -msgid "" -"Prepares GRUB network boot images at net_directory/subdir assuming " -"net_directory being TFTP root." -msgstr "" - -#: util/grub-mknetdir.c:146 -#, fuzzy, c-format -msgid "unsupported platform %s" -msgstr "Nepodprto okolje $s\\n" - -#. TRANSLATORS: First %s is replaced by platform name. Second one by filename. -#: util/grub-mknetdir.c:165 -#, fuzzy, c-format -msgid "" -"Netboot directory for %s created. Configure your DHCP server to point to %s\n" -msgstr "" -"Mapa omrežnega zagona za %s je ustvarjena. Nastaviti je treba strežnik DHCP, " -"ki kaže na %s\\n" - -#: util/grub-mkpasswd-pbkdf2.c:46 -msgid "Number of PBKDF2 iterations" -msgstr "Å tevilo ponovitev PBKDF2" - -#: util/grub-mkpasswd-pbkdf2.c:47 -msgid "Length of generated hash" -msgstr "Dolžina ustvarjenega razprÅ¡ila" - -#: util/grub-mkpasswd-pbkdf2.c:48 -msgid "Length of salt" -msgstr "Dolžina soli" - -#: util/grub-mkpasswd-pbkdf2.c:87 -msgid "Generate PBKDF2 password hash." -msgstr "Ustvari geslo razprÅ¡ila PBKDF2." - -#: util/grub-mkpasswd-pbkdf2.c:144 util/grub-mkpasswd-pbkdf2.c:151 -msgid "failure to read password" -msgstr "napaka branja gesla" - -#: util/grub-mkpasswd-pbkdf2.c:146 -msgid "Reenter password: " -msgstr "Ponovno vnesite geslo:" - -#: util/grub-mkpasswd-pbkdf2.c:160 -msgid "passwords don't match" -msgstr "gesli se ne ujemata" - -#: util/grub-mkpasswd-pbkdf2.c:169 -msgid "couldn't retrieve random data for salt" -msgstr "nakljuÄnih podatkov za sol ni mogoÄe pridobiti" - -#: util/grub-mkpasswd-pbkdf2.c:184 -#, c-format -msgid "cryptographic error number %d" -msgstr "napaka Å¡ifriranja Å¡tevilka %d" - -#: util/grub-mkpasswd-pbkdf2.c:203 -#, c-format -msgid "PBKDF2 hash of your password is %s\n" -msgstr "RazprÅ¡ilo PBKDF2 vaÅ¡ega gesla je %s\n" - -#: util/grub-mkrelpath.c:67 -msgid "No path is specified.\n" -msgstr "Nobena pot ni doloÄena.\n" - -#: util/grub-mkrelpath.c:78 -msgid "PATH" -msgstr "POT" - -#: util/grub-mkrelpath.c:79 -msgid "Transform a system filename into GRUB one." -msgstr "Preoblikuj sistemski datoteÄni sistem v datoteÄni sistem GRUB." - -#: util/grub-mkrescue.c:100 -msgid "save ROM images in DIR [optional]" -msgstr "shrani odtise ROM v MAPI [izbirno]" - -#. TRANSLATORS: xorriso is a program for creating ISOs and burning CDs. -#: util/grub-mkrescue.c:103 -msgid "use FILE as xorriso [optional]" -msgstr "uporabi DATOTEKO kot xorriso [izbirno]" - -#: util/grub-mkrescue.c:109 -msgid "use STRING as product name" -msgstr "" - -#: util/grub-mkrescue.c:111 -msgid "" -"enable sparc boot. Disables HFS+, APM, ARCS and boot as disk image for i386-" -"pc" -msgstr "" - -#: util/grub-mkrescue.c:112 -msgid "" -"enable ARCS (big-endian mips machines, mostly SGI) boot. Disables HFS+, APM, " -"sparc64 and boot as disk image for i386-pc" -msgstr "" - -#. TRANSLATORS: it generates one single image which is bootable through any method. -#: util/grub-mkrescue.c:125 -msgid "Make GRUB CD-ROM, disk, pendrive and floppy bootable image." -msgstr "" -"Ustvari nosilec CD, disk, kljuÄ USB ali disketni zagonljiv odtis z " -"nalagalnikom GRUB." - -#: util/grub-mkrescue.c:130 -#, fuzzy, c-format -msgid "" -"Generates a bootable CD/USB/floppy image. Arguments other than options to " -"this program are passed to xorriso, and indicate source files, source " -"directories, or any of the mkisofs options listed by the output of `%s'." -msgstr "" -"%s ustvari zagonljiv reÅ¡ilni odtis z doloÄenimi izvornimi datotekami, " -"izvornimi mapami ali možnosti mkisofs, ki jih izpiÅ¡e izhod `%s'\\n" - -#: util/grub-mkrescue.c:134 -msgid "Option -- switches to native xorriso command mode." -msgstr "Možnost -- preklopi na lasten naÄin ukazov xorriso." - -#: util/grub-mkrescue.c:135 -msgid "Mail xorriso support requests to ." -msgstr "Zahteve po podpori za xorriso poÅ¡ljite na ." - -#: util/grub-mkrescue.c:221 util/grub-mkstandalone.c:114 -#, fuzzy -msgid "[OPTION] SOURCE..." -msgstr "Uporaba: %s [MOŽNOST] VIR ...\\n" - -#: util/grub-mkrescue.c:257 util/grub-mkrescue.c:300 util/grub-mkrescue.c:588 -#, fuzzy, c-format -msgid "enabling %s support ..." -msgstr "OmogoÄanje podpore %s ...\\n" - -#: util/grub-mkrescue.c:486 -#, fuzzy -msgid "xorriso not found" -msgstr "kartice ni mogoÄe najti" - -#: util/grub-mkrescue.c:623 -msgid "" -"Your xorriso doesn't support `--grub2-boot-info'. Some features are " -"disabled. Please use xorriso 1.2.9 or later." -msgstr "" - -#: util/grub-mkrescue.c:650 -msgid "" -"Your xorriso doesn't support `--grub2-boot-info'. Your core image is too " -"big. Boot as disk is disabled. Please use xorriso 1.2.9 or later." -msgstr "" - -#: util/grub-mkstandalone.c:115 -msgid "" -"Generate a standalone image (containing all modules) in the selected format" -msgstr "Ustvari samostojen odtis (ki vsebuje vse module) v izbrani obliki." - -#: util/grub-mkstandalone.c:115 -msgid "Graft point syntax (E.g. /boot/grub/grub.cfg=./grub.cfg) is accepted" -msgstr "" - -#: util/grub-mount.c:552 -msgid "IMAGE1 [IMAGE2 ...] MOUNTPOINT" -msgstr "ODTIS1 [ODTIS2 ...] TOÄŒKA_PRIKLOPA" - -#: util/grub-mount.c:575 -msgid "need an image and mountpoint" -msgstr "potrebuje odtis in toÄko priklopa" - -#: util/grub-probe.c:731 -msgid "given argument is a system device, not a path" -msgstr "dani argument je sistemska naprava, ne pot" - -#: util/grub-probe.c:736 -msgid "separate items in output using ASCII NUL characters" -msgstr "" - -#: util/grub-probe.c:754 -#, c-format -msgid "[default=%s]" -msgstr "" - -#: util/grub-probe.c:756 -#, fuzzy -msgid "print TARGET" -msgstr "CILJ" - -#: util/grub-probe.c:757 -#, fuzzy -msgid "available targets:" -msgstr "razpoložljive vrste:" - -#: util/grub-probe.c:839 -msgid "[OPTION]... [PATH|DEVICE]" -msgstr "[MOŽNOST] ...[POT|NAPRAVA]" - -#: util/grub-probe.c:840 -msgid "" -"Probe device information for a given path (or device, if the -d option is " -"given)." -msgstr "" -"Napravi poizvedbo o podatkih naprave za dano pot (ali napravo, Äe je podana " -"možnost -d)." - -#: util/grub-render-label.c:60 -msgid "read text from FILE." -msgstr "" - -#: util/grub-render-label.c:62 -msgid "use COLOR for text" -msgstr "" - -#: util/grub-render-label.c:64 -msgid "use COLOR for background" -msgstr "" - -#. TRANSLATORS: The result is always stored to file and -#. never shown directly, so don't use "show" as synonym for render. Use "create" if -#. "render" doesn't translate directly. -#: util/grub-render-label.c:69 -msgid "set the label to render" -msgstr "" - -#: util/grub-render-label.c:73 -msgid "use FILE as font (PF2)." -msgstr "" - -#. TRANSLATORS: This file takes a text and creates a graphical representation of it, -#. putting the result into .disk_label file. The result is always stored to file and -#. never shown directly, so don't use "show" as synonym for render. Use "create" if -#. "render" doesn't translate directly. -#: util/grub-render-label.c:136 -msgid "Render Apple .disk_label." -msgstr "" - -#: util/grub-render-label.c:158 util/grub-syslinux2cfg.c:169 -#, fuzzy -msgid "Missing arguments\n" -msgstr "%s: preveÄ argumentov\n" - -#: util/grub-script-check.c:87 -msgid "[PATH]" -msgstr "[POT]" - -#: util/grub-script-check.c:88 -msgid "Checks GRUB script configuration file for syntax errors." -msgstr "Preveri nastavitveno datoteko skripta GRUB za napake skladnje." - -#: util/grub-script-check.c:207 -#, c-format -msgid "Syntax error at line %u\n" -msgstr "Napaka skladnje v vrstici %u\n" - -#: util/grub-script-check.c:212 -#, c-format -msgid "Script `%s' contains no commands and will do nothing\n" -msgstr "" - -#: util/grub-setup.c:79 -#, c-format -msgid "use FILE as the boot image [default=%s]" -msgstr "Uporabi DATOTEKO kot zagonski odtis [privzeto=%s]" - -#: util/grub-setup.c:81 -#, c-format -msgid "use FILE as the core image [default=%s]" -msgstr "Uporabi DATOTEKO kot odtis jedra [privzeto=%s]" - -#: util/grub-setup.c:210 -msgid "No device is specified.\n" -msgstr "Nobena naprava ni navedena.\n" - -#: util/grub-setup.c:224 -msgid "" -"Set up images to boot from DEVICE.\n" -"\n" -"You should not normally run this program directly. Use grub-install instead." -msgstr "" -"Nastavi odtise za zagon iz NAPRAVE.\n" -"\n" -"Tega programa ni priporoÄljivo zagnati neposredno. Ta se izvede preko ukaza " -"grub-install." - -#: util/grub-setup.c:228 -msgid "DEVICE must be an OS device (e.g. /dev/sda)." -msgstr "NAPRAVA mora biti naprava OS (na primer /dev/sda)." - -#: util/grub-setup.c:297 -#, c-format -msgid "Invalid device `%s'.\n" -msgstr "Neveljavna naprava `%s'.\n" - -#: util/grub-syslinux2cfg.c:64 -msgid "root directory as it will be seen on runtime [default=/]." -msgstr "" - -#: util/grub-syslinux2cfg.c:69 -msgid "" -"current directory of syslinux as it will be seen on runtime [default is " -"parent directory of input file]." -msgstr "" - -#: util/grub-syslinux2cfg.c:74 -#, fuzzy -msgid "write output to FILE [default=stdout]." -msgstr "izhod je ustvaril nastavitev v DATOTEKI [privzeto=stdout]" - -#: util/grub-syslinux2cfg.c:148 -#, fuzzy -msgid "Transform syslinux config into GRUB one." -msgstr "Preoblikuj sistemski datoteÄni sistem v datoteÄni sistem GRUB." - -#: util/mkimage.c:688 util/mkimage.c:717 util/mkimage.c:734 -msgid "cannot compress the kernel image" -msgstr "ni mogoÄe stisniti odtisa jedra" - -#: util/mkimage.c:766 util/mkimage.c:1077 -#, fuzzy, c-format -msgid "unknown compression %d" -msgstr "Neznano stiskanje %d\n" - -#: util/mkimage.c:1088 -msgid "Decompressor is too big" -msgstr "Program za odpakiranje je prevelik" - -#: util/mkimage.c:1133 -#, c-format -msgid "core image is too big (0x%x > 0x%x)" -msgstr "osnovni odtis je prevelik (0x%x > 0x%x)" - -#: util/mkimage.c:1140 -#, fuzzy, c-format -msgid "kernel image is too big (0x%x > 0x%x)" -msgstr "osnovni odtis je prevelik (0x%x > 0x%x)" - -#: util/mkimage.c:1220 util/mkimage.c:1501 -#, c-format -msgid "diskboot.img size must be %u bytes" -msgstr "velikost diskboot.img mora biti %u bajtov" - -#: util/mkimage.c:1571 -msgid "" -"fwstart.img doesn't match the known good version. proceed at your own risk" -msgstr "" -"fwstart.img se ne ujema z znano dobro razliÄico. Nadaljujete na lastno " -"odgovornost." - -#: util/mkimage.c:1575 util/mkimage.c:1601 -msgid "firmware image is too big" -msgstr "odtis strojne programske opreme je prevelik" - -#: util/resolve.c:93 -#, c-format -msgid "invalid line format: %s" -msgstr "neveljavna oblika vrstice: %s" - -#: util/setup.c:167 -msgid "the first sector of the core file is not sector-aligned" -msgstr "prvi sektor datoteke jedra ni poravnan z odseki." - -#: util/setup.c:177 -msgid "non-sector-aligned data is found in the core file" -msgstr "v datoteki jedra so bili najdeni podatki, ki niso poravnani z odsekom" - -#: util/setup.c:199 -msgid "the sectors of the core file are too fragmented" -msgstr "odseki jedra so preveÄ razdrobljeni" - -#: util/setup.c:280 -#, c-format -msgid "the size of `%s' is not %u" -msgstr "velikost `%s' ni %u" - -#: util/setup.c:290 -#, c-format -msgid "the size of `%s' is too small" -msgstr "velikost `%s' je premajhna" - -#: util/setup.c:428 -msgid "" -"Attempting to install GRUB to a disk with multiple partition labels or both " -"partition label and filesystem. This is not supported yet." -msgstr "" -"Izvaja se poskus nameÅ¡Äanja nalagalnika GRUB na disk z veÄ oznakami " -"razdelkov, ali z oznako zagonskega razdelka in datoteÄnega sistema. To Å¡e ni " -"podprto." - -#: util/setup.c:441 -#, c-format -msgid "unable to identify a filesystem in %s; safety check can't be performed" -msgstr "" -"ni mogoÄe doloÄiti datoteÄnega sistema %s; varnostnega preverjanja ni mogoÄe " -"izvesti" - -#. TRANSLATORS: Filesystem may reserve the space just GRUB isn't sure about it. -#: util/setup.c:445 -#, c-format -msgid "" -"%s appears to contain a %s filesystem which isn't known to reserve space for " -"DOS-style boot. Installing GRUB there could result in FILESYSTEM " -"DESTRUCTION if valuable data is overwritten by grub-setup (--skip-fs-probe " -"disables this check, use at your own risk)" -msgstr "" -"Videti je, da vsebuje %s datoteÄni sistem %s, za katerega ni znano, ali " -"rezervira prostor za zagon v slogu sistema DOS. NameÅ¡Äanje nalagalnika GRUB " -"na to mesto lahko povzroÄi UNIÄŒENJE DATOTEÄŒNEGA SISTEMA, kadar program grub-" -"setup prepiÅ¡e pomembne podatke (možnost --skip-fs-probe onemogoÄi to " -"preverjanje, zato možnost uporabljate na lastno odgovornost)." - -#. TRANSLATORS: Partition map may reserve the space just GRUB isn't sure about it. -#: util/setup.c:458 -#, c-format -msgid "" -"%s appears to contain a %s partition map which isn't known to reserve space " -"for DOS-style boot. Installing GRUB there could result in FILESYSTEM " -"DESTRUCTION if valuable data is overwritten by grub-setup (--skip-fs-probe " -"disables this check, use at your own risk)" -msgstr "" -"Videti je, da vsebuje %s preslikavo razdelkov %s, ki, za zagon v slogu " -"sistema DOS, ne rezervira prostora. NameÅ¡Äanje nalagalnika GRUB na to mesto " -"lahko povzroÄi UNIÄŒENJE DATOTEÄŒNEGA SISTEMA, kadar program grub-setup " -"prepiÅ¡e pomembne podatke (možnost --skip-fs-probe onemogoÄi to preverjanje, " -"zato možnost uporabljate na lastno odgovornost)." - -#: util/setup.c:465 -#, c-format -msgid "" -"%s appears to contain a %s partition map and LDM which isn't known to be a " -"safe combination. Installing GRUB there could result in FILESYSTEM " -"DESTRUCTION if valuable data is overwritten by grub-setup (--skip-fs-probe " -"disables this check, use at your own risk)" -msgstr "" -"Videti je, da vsebuje %s preslikavo razdelkov %s in LDM, kar pa ni varna " -"kombinacija. NameÅ¡Äanje nalagalnika GRUB na to mesto lahko povzroÄi UNIÄŒENJE " -"DATOTEÄŒNEGA SISTEMA, kadar program grub-setup prepiÅ¡e pomembne podatke " -"(možnost --skip-fs-probe onemogoÄi to preverjanje, zato možnost uporabljate " -"na lastno odgovornost)." - -#: util/setup.c:478 -msgid "" -"Attempting to install GRUB to a partitionless disk or to a partition. This " -"is a BAD idea." -msgstr "" -"Izvaja se poskus nameÅ¡Äanja nalagalnika GRUB na disk brez razdelkov ali " -"neposredno na razdelek. To je SLABA ideja." - -#: util/setup.c:483 -msgid "" -"Attempting to install GRUB to a disk with multiple partition labels. This " -"is not supported yet." -msgstr "" -"Izvaja se poskus nameÅ¡Äanja nalagalnika GRUB na disk z veÄ oznakami " -"razdelkov. Možnost Å¡e ni podprta." - -#: util/setup.c:489 -#, c-format -msgid "Partition style `%s' doesn't support embedding" -msgstr "Slog razdelka `%s' ne podpira vstavljanja" - -#: util/setup.c:496 -#, c-format -msgid "File system `%s' doesn't support embedding" -msgstr "DatoteÄni sistem `%s' ne podpira vstavljanja" - -#: util/setup.c:537 -msgid "Your embedding area is unusually small. core.img won't fit in it." -msgstr "" -"VaÅ¡e podroÄje vstavljanja je nenavadno majhno, zato datoteke core.img v " -"doloÄeno podroÄje ne bo mogoÄe vstaviti." - -#: util/setup.c:559 util/setup.c:725 util/setup.c:844 -msgid "no terminator in the core image" -msgstr "brez zakljuÄnega bita v odtisu jedra" - -#: util/setup.c:622 -msgid "core.img version mismatch" -msgstr "neujemanje razliÄice core.img" - -#: util/setup.c:675 -msgid "" -"embedding is not possible, but this is required for RAID and LVM install" -msgstr "vstavljanje ni mogoÄe, to pa je zahtevano za namestitev RAID in LVM" - -#: util/setup.c:682 -#, c-format -msgid "can't determine filesystem on %s" -msgstr "datoteÄnega sistema na %s ni mogoÄe doloÄiti" - -#: util/setup.c:685 -#, c-format -msgid "filesystem `%s' doesn't support blocklists" -msgstr "datoteÄni sistem `%s' ne podpira seznamov blokiranja" - -#. TRANSLATORS: cross-disk refers to /boot being on one disk -#. but MBR on another. -#: util/setup.c:694 -msgid "embedding is not possible, but this is required for cross-disk install" -msgstr "vstavljanje ni mogoÄe, to pa je zahtevano za namestitev preko diska" - -#: util/setup.c:700 -msgid "" -"Embedding is not possible. GRUB can only be installed in this setup by " -"using blocklists. However, blocklists are UNRELIABLE and their use is " -"discouraged." -msgstr "" -"Vgrajevanje ni mogoÄe. Nalagalnik GRUB je v tem primeru mogoÄe namestiti s " -"seznami blokov. Seznami blokov so NEZANESLJIVI, zato je njihova uporaba " -"odsvetovana." - -#. TRANSLATORS: Here GRUB refuses to continue with blocklist install. -#: util/setup.c:705 -msgid "will not proceed with blocklists" -msgstr "ne bo nadaljevanja s seznami blokov" - -#: util/setup.c:817 util/setup.c:837 -msgid "blocklists are invalid" -msgstr "seznami blokiranja so neveljavni" - -#: util/setup.c:847 -#, fuzzy -msgid "blocklists are incomplete" -msgstr "seznami blokiranja so neveljavni" - -#~ msgid "Address range not associated with RAM" -#~ msgstr "Obseg naslova ni povezan s pomnilnikom RAM" - -#~ msgid "Packed pixel " -#~ msgstr "Pakirane toÄke" - -#~ msgid "%.*s: ARGP_HELP_FMT parameter must be positive" -#~ msgstr "%.*s: parameter ARGP_HELP_FMT mora biti pozitiven" - -#~ msgid "%s: option '--%s' doesn't allow an argument\n" -#~ msgstr "%s: možnost '--%s' ne dovoli argumenta\n" - -#~ msgid "%s: unrecognized option '--%s'\n" -#~ msgstr "%s: neprepoznana možnost '--%s'\n" - -#~ msgid "%s: option '-W %s' is ambiguous\n" -#~ msgstr "%s: možnost '-W %s' je dvoumna\n" - -#~ msgid "%s: option '-W %s' doesn't allow an argument\n" -#~ msgstr "%s: možnost '-W %s' ne dovoli argumenta\n" - -#~ msgid "%s: option '-W %s' requires an argument\n" -#~ msgstr "%s: možnost '-W %s' zahteva argument\n" - -#~ msgid "grub_memalign is not supported on your system" -#~ msgstr "grub_memalign na vaÅ¡em sistemu ni podprt" - -#~ msgid "If FILENAME is `-', the default value %s is used." -#~ msgstr "Kadar je IMEDATOTEKE `-', je uporabljena privzeta vrednost %s." - -#~ msgid "Unsupported substitution flag: 0x%x\n" -#~ msgstr "Nepodprta zastavica zamenjave: 0x%x\n" - -#~ msgid "Unknown gsub font feature 0x%x (%s)\n" -#~ msgstr "Neznana zmožnost pisave gsub 0x%x (%s)\n" - -#~ msgid "save only the ASCII bitmaps" -#~ msgstr "shrani le bitne slike ASCII" - -#~ msgid "create width summary file" -#~ msgstr "ustvari datoteko obnove Å¡irine" - -#~ msgid "Option --ascii-bitmaps doesn't accept ranges (it always uses ASCII)." -#~ msgstr "" -#~ "Možnosti --ascii-bitmaps ne sprejema obsegov (vedno uporablja ASCII)." - -#~ msgid "WARNING: your random generator isn't known to be secure\n" -#~ msgstr "OPOZORILO: vaÅ¡ ustvarjalnik nakljuÄnosti ni potrjeno varen\n" - -#~ msgid "" -#~ "print filesystem module, GRUB drive, system device, partition map module, " -#~ "abstraction module or cryptographic container UUID [default=fs]" -#~ msgstr "" -#~ "izpiÅ¡i modul datoteÄnega sistema, pogon GRUB, sistemsko napravo, modul " -#~ "preslikave razdelkov, abstrakcijski modul ali UUID kriptografskega " -#~ "vsebnika [privzeto=fs]" - -#~ msgid "failed to read the first sector of the core image" -#~ msgstr "branje prvega odseka v datoteki jedra je spodletelo" - -#~ msgid "" -#~ "Requested serial terminal but GRUB_SERIAL_COMMAND is unspecified. Default " -#~ "parameters will be used." -#~ msgstr "" -#~ "Zahtevan je zaporedni terminal, vendar GRUB_SERIAL_COMMAND ni doloÄen. " -#~ "Uporabljeni bodo privzeti parametri." - -#~ msgid "Found theme: %s\\n" -#~ msgstr "Najdena je tema: %s\\n" - -#~ msgid "Found background: %s\\n" -#~ msgstr "Najdeno je ozadje: %s\\n" - -#~ msgid "Unsupported image format" -#~ msgstr "Nepodprta vrsta odtisa" - -#~ msgid "Found GNU Mach: %s" -#~ msgstr "Najden je GNU Mach: %s" - -#~ msgid "Found Hurd module: %s" -#~ msgstr "Najden je modul Hurd: %s" - -#~ msgid "Some Hurd stuff found, but not enough to boot." -#~ msgstr "Najdenih je nekaj stvari Hurd, vendar ne dovolj za zagon." - -#~ msgid "%s, with Hurd %s (recovery mode)" -#~ msgstr "%s, s Hurd %s (obnovitveni naÄin)" - -#~ msgid "%s, with Hurd %s" -#~ msgstr "%s, s Hurd %s" - -#~ msgid "" -#~ "Please don't use old title `%s' for GRUB_DEFAULT, use `%s' (for versions " -#~ "before 2.00) or `%s' (for 2.00 or later)" -#~ msgstr "" -#~ "Za GRUB_DEFAULT ne uporabite starega naslova `%s', uporabite `%s' (za " -#~ "razliÄice pred 2.00) ali `%s' (od razliÄice 2.00 naprej)" - -#~ msgid "Loading GNU Mach ..." -#~ msgstr "Zaganjanje GNU Mach ..." - -#~ msgid "Loading the Hurd ..." -#~ msgstr "Zaganjanje Hurd ..." - -#~ msgid "Advanced options for %s" -#~ msgstr "Napredne možnosti za %s" - -#~ msgid "Loading kernel of Illumos ..." -#~ msgstr "Nalaganje jedra Illumos ..." - -#~ msgid "%s, with kFreeBSD %s (recovery mode)" -#~ msgstr "%s, s kFreeBSD %s (obnovitveni naÄin)" - -#~ msgid "%s, with kFreeBSD %s" -#~ msgstr "%s, s kFreeBSD %s" - -#~ msgid "Loading kernel of FreeBSD %s ..." -#~ msgstr "Nalaganje jedra FreeBDS %s ..." - -#~ msgid "Found kernel of FreeBSD: %s\\n" -#~ msgstr "Najdeno je jedro FreeBSD: %s\\n" - -#~ msgid "Found kernel module directory: %s\\n" -#~ msgstr "Najdena je mapa jedrnega modula: %s\\n" - -#~ msgid "%s, with Linux %s (recovery mode)" -#~ msgstr "%s, z Linuxom %s (obnovitveni naÄin)" - -#~ msgid "%s, with Linux %s" -#~ msgstr "%s, z Linuxom %s" - -#~ msgid "Loading Linux %s ..." -#~ msgstr "Nalaganje Linuxa %s ..." - -#~ msgid "Loading initial ramdisk ..." -#~ msgstr "Nalaganje zaÄetnega ramdiska ..." - -#~ msgid "Found linux image: %s\\n" -#~ msgstr "Najden je odtis linux: %s\\n" - -#~ msgid "Found initrd image: %s\\n" -#~ msgstr "Najden je odtis initrd: %s\\n" - -#~ msgid "%s, with kernel %s (via %s, recovery mode)" -#~ msgstr "%s, z jedrom %s (preko %s, obnovitveni naÄin)" - -#~ msgid "%s, with kernel %s (via %s)" -#~ msgstr "%s, z jedrom %s (preko %s)" - -#~ msgid "Found NetBSD kernel: %s\\n" -#~ msgstr "Najdeno je jedro NetBSD: %s\\n" - -#~ msgid "Windows Vista/7 (loader)" -#~ msgstr "Windows Vista/7 (nalagalnik)" - -#~ msgid "Windows NT/2000/XP (loader)" -#~ msgstr "Windows NT/2000/XP (nalagalnik)" - -#~ msgid "Found %s on %s (%s)\\n" -#~ msgstr "Najden je %s na %s (%s)\\n" - -#~ msgid "%s, with Xen %s and Linux %s (recovery mode)" -#~ msgstr "%s, s Xen %s in Linux %s (obnovitveni naÄin)" - -#~ msgid "%s, with Xen %s and Linux %s" -#~ msgstr "%s, s Xen %s in Linux %s" - -#~ msgid "Loading Xen %s ..." -#~ msgstr "Nalaganje Xen %s ..." - -#~ msgid "Xen hypervisor, version %s" -#~ msgstr "Xen hipervizor, razliÄica %s" - -#~ msgid "Advanced options for %s (with Xen hypervisor)" -#~ msgstr "Napredne možnosti za %s (s hipervizorjem Xen)" - -#~ msgid "(32-bit)" -#~ msgstr "(32-bitni)" - -#~ msgid "(64-bit)" -#~ msgstr "(64-bitni)" - -#~ msgid "(on %s)" -#~ msgstr "(na %s)" - -#~ msgid "Found %s on %s\\n" -#~ msgstr "Najden je %s na %s\\n" - -#~ msgid "%s is not yet supported by grub-mkconfig.\\n" -#~ msgstr "grub-mkconfig Å¡e ne podpira %s.\\n" - -#~ msgid "print this message and exit" -#~ msgstr "izpiÅ¡i to sporoÄilo in konÄaj" - -#~ msgid "print the version information and exit" -#~ msgstr "izpiÅ¡i podatke o razliÄici in konÄaj" - -#~ msgid "use GRUB images from DIR. Takes precedence over target" -#~ msgstr "uporabi odtise GRUB iz MAPE. Ima prednost pred ciljem" - -#~ msgid "use FILE as grub-mkimage" -#~ msgstr "uporabi DATOTEKO kot grub-mkimage" - -#~ msgid "use FILE as grub-mkrelpath" -#~ msgstr "uporabi DATOTEKO kot grub-mkrelpath" - -#~ msgid "use FILE as grub-probe" -#~ msgstr "uporabi DATOTEKO kot grub-probe" - -#~ msgid "INSTALL_DEVICE must be system device filename." -#~ msgstr "NAPRAVA_NAMESTITVE mora biti ime datoteke sistemske naprave." - -#~ msgid "" -#~ "%s copies GRUB images into %s, and uses grub-setup\n" -#~ "to install grub into the boot sector.\\n" -#~ msgstr "" -#~ "%s kopira odtise GRUB na %s in uporabi grub-setup\n" -#~ "za namestitev nalagalnika na zagonski odsek.\\n" - -#~ msgid "Report bugs to ." -#~ msgstr "PoroÄila o hroÅ¡Äih poÅ¡ljite na ." - -#~ msgid "%s: option requires an argument -- `%s'\\n" -#~ msgstr "%s: možnost zahteva argument -- `%s'\\n" - -#~ msgid "" -#~ "Path `%s' is not readable by GRUB on boot. Installation is impossible. " -#~ "Aborting.\\n" -#~ msgstr "" -#~ "Ni mogoÄe pridobiti poti `%s' preko nalagalnika GRUB ob zagonu. " -#~ "Namestitev ni mogoÄa. Dejanje je preklicano.\\n" - -#~ msgid "Auto-detection of a filesystem of %s failed.\\n" -#~ msgstr "Samodejno zaznavanje datoteÄnega sistema %s je spodletelo.\\n" - -#~ msgid "Try with --recheck." -#~ msgstr "Poskusite z -recheck." - -#~ msgid "" -#~ "If the problem persists please report this together with the output of %s " -#~ "to <%s>" -#~ msgstr "" -#~ "V kolikor se bodo težave nadaljevale, poÅ¡ljite poroÄilo o hroÅ¡Äu in " -#~ "priložite vsebino ukaza %s na <%s>." - -#~ msgid "`%s' failed.\\n" -#~ msgstr "`%s' je spodletel.\\n" - -#~ msgid "" -#~ "Can't find GRUB drive for %s; unable to create EFI Boot Manager entry.\\n" -#~ msgstr "" -#~ "Ni mogoÄe najti pogona GRUB za %s; ni mogoÄe ustvariti vnosa zagonskega " -#~ "upravljalnika EFI.\\n" - -#~ msgid "Usage: %s -o OUTPUT CKBMAP_ARGUMENTS...\\n" -#~ msgstr "Uporaba: %s -o OUTPUT CKBMAP_ARGUMENTI ...\\n" - -#~ msgid "Make GRUB keyboard layout file." -#~ msgstr "Naredi datoteko razporeditve tipkovnice GRUB." - -#~ msgid "%s generates a keyboard layout for GRUB using ckbcomp\\n" -#~ msgstr "%s ustvari razporeditev tipkovnice za GRUB z uporabo ckbcomp\\n" - -#~ msgid "Usage: %s [OPTION]\\n" -#~ msgstr "Uporaba: %s [MOŽNOST]\\n" - -#~ msgid "Generate a grub config file" -#~ msgstr "Ustvari nastavitveno datoteko grub" - -#~ msgid "%s: You must run this as root\\n" -#~ msgstr "%s: ukaz zahteva skrbniÅ¡ka dovoljenja\\n" - -#~ msgid "Generating grub.cfg ..." -#~ msgstr "Poteka ustvarjanje grub.cfg ..." - -#~ msgid "" -#~ "Syntax errors are detected in generated GRUB config file.\n" -#~ "Ensure that there are no errors in /etc/default/grub\n" -#~ "and /etc/grub.d/* files or please file a bug report with\n" -#~ "%s file attached." -#~ msgstr "" -#~ "V ustvarjeni nastavitveni datoteki GRUB so zaznane napake\n" -#~ " skladnje. PrepriÄajte se, da v datotekah /etc/default/grub in\n" -#~ "/etc/grub.d/* ni napak ali pa poÅ¡ljite poroÄilo o hroÅ¡Äu s pripeto\n" -#~ "datoteko %s." - -#~ msgid "done" -#~ msgstr "konÄano" - -#~ msgid "Warning:" -#~ msgstr "Opozorilo:" - -#~ msgid "" -#~ "%s copies GRUB images into net_directory/subdir/target_cpu-platform\\n" -#~ msgstr "%s kopira odtise GRUB v omrežna_mapa/podmapa/cliljno_okolje_cpu\\n" - -#~ msgid "Usage: %s [OPTION] MENU_ENTRY\\n" -#~ msgstr "Uporaba: %s [MOŽNOST] VNOS_MENIJA\\n" - -#~ msgid "Set the default boot menu entry for GRUB, for the next boot only." -#~ msgstr "" -#~ "Nastavi privzeti vnos zagonskega menija za GRUB le za naslednji zagon." - -#~ msgid "" -#~ "expect GRUB images under the directory DIR/%s instead of the %s directory" -#~ msgstr "priÄakuj odtise GRUB v mapi MAPA/%s namesto v mapi %s" - -#~ msgid "MENU_ENTRY is a number, a menu item title or a menu item identifier." -#~ msgstr "" -#~ "VNOS_MENIJA je Å¡tevilo, naslov predmeta menija ali doloÄilo predmeta " -#~ "menija." - -#~ msgid "More than one menu entry?" -#~ msgstr "Ali obstaja veÄ kot en vnos menija?" - -#~ msgid "Menu entry not specified." -#~ msgstr "Vnos menija ni doloÄen." - -#~ msgid "Set the default boot menu entry for GRUB." -#~ msgstr "Nastavi privzeti vnos menija zagona za GRUB." - -#~ msgid "Expose v1 tables." -#~ msgstr "Izpostavi preglednice v1." - -#~ msgid "Fake BIOS." -#~ msgstr "Lažni BIOS" - -#~ msgid "Check hash list file." -#~ msgstr "Preveri datoteko seznama razprÅ¡il" - -#~ msgid "DIRECTORY" -#~ msgstr "MAPA" - -#~ msgid "Unload PXE environment." -#~ msgstr "Razloži okolje PXE." - -#~ msgid "Read word from PORT." -#~ msgstr "Preberi besedo z VRAT." - -#~ msgid "Read dword from PORT." -#~ msgstr "Preberi dword z VRAT." - -#~ msgid "Write word VALUE to PORT." -#~ msgstr "ZapiÅ¡i VREDNOST besede na VRATA." - -#~ msgid "Write dword VALUE to PORT." -#~ msgstr "ZapiÅ¡i vrednost dword na VRATA." - -#~ msgid "[--shift] [--ctrl] [--alt]" -#~ msgstr "[--shift] [--ctrl] [--alt]" - -#~ msgid "[-1|-2]" -#~ msgstr "[-1|-2]" - -#~ msgid "Read word from ADDR." -#~ msgstr "Preberi besedo iz ADDR." - -#~ msgid "Read dword from ADDR." -#~ msgstr "Preberi dword iz ADDR." - -#~ msgid "Write word VALUE to ADDR." -#~ msgstr "ZapiÅ¡i besedo VREDNOST v ADDR." - -#~ msgid "Write dword VALUE to ADDR." -#~ msgstr "ZapiÅ¡i dword VREDNOST v ADDR." - -#~ msgid "Menu entry definition as a string." -#~ msgstr "DoloÄitev vnosa menija kot niz." - -#~ msgid "Variable names to update with matches." -#~ msgstr "Imena spremenljivk za posodobitev z ujemanji." - -#~ msgid "Load XNU hibernate image." -#~ msgstr "Naloži odtis hibernacije XNU." - -#~ msgid "Authenticate users" -#~ msgstr "Overi uporabnike" - -#~ msgid "[n]" -#~ msgstr "[n]" - -#~ msgid "UTF-8 visual" -#~ msgstr "UTF-8 vidno" - -#~ msgid "write error" -#~ msgstr "napaka pisanja" - -#~ msgid "open error" -#~ msgstr "napaka med odpiranjem" - -#~ msgid "seek error" -#~ msgstr "napaka med iskanjem" - -#~ msgid "Hex dump FILE." -#~ msgstr "Hex izpis DATOTEKE." - -#~ msgid "Must use absolute path.\n" -#~ msgstr "Mora uporabiti absolutno pot.\n" - -#~ msgid "the core image is too small" -#~ msgstr "odtis jedra je premajhen" - -#~ msgid "prefix is too long" -#~ msgstr "predpona je predolga" - -#~ msgid "" -#~ "Usage: %s [OPTION]... [MODULES]\n" -#~ "\n" -#~ "Make a bootable image of GRUB.\n" -#~ "\n" -#~ " -d, --directory=DIR use images and modules under DIR [default=%s/" -#~ "@platform@]\n" -#~ " -p, --prefix=DIR set grub_prefix directory [default=%s]\n" -#~ " -m, --memdisk=FILE embed FILE as a memdisk image\n" -#~ " -c, --config=FILE embed FILE as boot config\n" -#~ " -n, --note add NOTE segment for CHRP Open Firmware\n" -#~ " -o, --output=FILE output a generated image to FILE " -#~ "[default=stdout]\n" -#~ " -O, --format=FORMAT generate an image in format\n" -#~ " available formats: %s\n" -#~ " -C, --compression=(xz|none|auto) choose the compression to use\n" -#~ " -h, --help display this message and exit\n" -#~ " -V, --version print version information and exit\n" -#~ " -v, --verbose print verbose messages\n" -#~ "\n" -#~ "Report bugs to <%s>.\n" -#~ msgstr "" -#~ "Uporaba: %s [MOŽNOST] ... [MODULI]\n" -#~ "\n" -#~ "Naredi zagonljiv odtis GRUBa.\n" -#~ "\n" -#~ " -d, --directory=MAPA uporabi odtise in module v MAPI [privzeto=%s/" -#~ "@platform@]\n" -#~ " -p, --prefix=MAPA nastavi mapo grub_prefix [default=%s]\n" -#~ " -m, --memdisk=DATOTEKA vstavi DATOTEKO kot odtis memdisk\n" -#~ " -c, --config=DATOTEKA vstavi DATOTEKO kot možnost zagona\n" -#~ " -n, --note doda segment OPOMBA za Odprto programsko strojno opremo " -#~ "CHRP\n" -#~ " -o, --output=DATOTEKA izhod ustvarjenega odtisa v DATOTEKO " -#~ "[default=stdout]\n" -#~ " -O, --format=FORMAT ustvari odtis v obliki\n" -#~ " razpoložljivi zapisi:%s\n" -#~ " -C, --compression=(xz|none|auto) izbor stiskanja za uporabo\n" -#~ " -h, --help prikaže to sporoÄilo pomoÄi in konÄa\n" -#~ " -V, --version izpiÅ¡e podrobnosti razliÄice in konÄa\n" -#~ " -v, --verbose izpiÅ¡e podrobna sporoÄila\n" -#~ "\n" -#~ "HroÅ¡Äe poroÄajte na <%s>.\n" - -#~ msgid "cannot open %s" -#~ msgstr "ni mogoÄe odpreti %s" - -#~ msgid "" -#~ "embedding is not possible, but this is required when the root device is " -#~ "on a RAID array or LVM volume" -#~ msgstr "" -#~ "vgrajevanje ni mogoÄe, vendar je to zahtevano, ko je korenska naprava na " -#~ "polju RAID ali nosilcu LVM." - -#~ msgid "DEV" -#~ msgstr "NAPRAVA" - -#~ msgid "Use DEV as the root device [default=guessed]" -#~ msgstr "Uporabi NAPRAVO kot korensko napravo [privzeto=uganjena]" - -#~ msgid "cannot guess the root device. Specify the option `--root-device'" -#~ msgstr "" -#~ "ni mogoÄe uganiti korenske naprave. Navedite možnost `--root-device\"" diff --git a/thirdparty/grub-2.04/po/sr.gmo b/thirdparty/grub-2.04/po/sr.gmo deleted file mode 100644 index 9c29be4c9d8cb32f7c86bbaa92bee7135d4706b4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 154841 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, 2015—2017. -msgid "" -msgstr "" -"Project-Id-Version: grub 2.02-pre3\n" -"Report-Msgid-Bugs-To: bug-grub@gnu.org\n" -"POT-Creation-Date: 2019-07-04 16:09+0200\n" -"PO-Revision-Date: 2017-05-07 12:02+0200\n" -"Last-Translator: МироÑлав Ðиколић \n" -"Language-Team: Serbian <(nothing)>\n" -"Language: sr\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n" -"%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n" -"X-Bugs: Report translation errors to the Language-Team address.\n" - -#: grub-core/bus/usb/serial/ftdi.c:145 grub-core/bus/usb/serial/pl2303.c:158 -#: grub-core/term/ieee1275/escc.c:169 grub-core/term/ns8250.c:202 -msgid "unsupported serial port speed" -msgstr "неподржана брзина ÑеријÑког прикључника" - -#: grub-core/bus/usb/serial/ftdi.c:151 grub-core/bus/usb/serial/pl2303.c:164 -#: grub-core/term/efi/serial.c:116 grub-core/term/ieee1275/escc.c:175 -#: grub-core/term/ns8250.c:208 grub-core/term/serial.c:227 -#: grub-core/term/serial.c:243 -msgid "unsupported serial port parity" -msgstr "неподржана парноÑÑ‚ ÑеријÑког прикључника" - -#: grub-core/bus/usb/serial/ftdi.c:157 grub-core/bus/usb/serial/pl2303.c:170 -#: grub-core/term/efi/serial.c:122 grub-core/term/ieee1275/escc.c:181 -#: grub-core/term/ns8250.c:213 grub-core/term/serial.c:267 -msgid "unsupported serial port stop bits number" -msgstr "неподржан број зауÑтавних битова ÑеријÑког прикључника" - -#: grub-core/bus/usb/serial/ftdi.c:161 grub-core/bus/usb/serial/pl2303.c:174 -#: grub-core/term/efi/serial.c:126 grub-core/term/ieee1275/escc.c:185 -#: grub-core/term/ns8250.c:217 -msgid "unsupported serial port word length" -msgstr "неподржана дужина речи ÑеријÑког прикључника" - -#: grub-core/commands/acpi.c:42 -msgid "Don't load host tables specified by comma-separated list." -msgstr "Ðе учитава зарезом раздвојене табеле домаћина наведене на ÑпиÑку." - -#: grub-core/commands/acpi.c:45 -msgid "Load only tables specified by comma-separated list." -msgstr "Учитава Ñамо зарезом раздвојене табеле наведене на ÑпиÑку." - -#: grub-core/commands/acpi.c:46 -msgid "Export version 1 tables to the OS." -msgstr "Извози табеле издања 1 у ОС." - -#: grub-core/commands/acpi.c:47 -msgid "Export version 2 and version 3 tables to the OS." -msgstr "Извози табеле издања 2 и издања 3 у ОС." - -#: grub-core/commands/acpi.c:48 -msgid "Set OEMID of RSDP, XSDT and RSDT." -msgstr "Подешава ОЕМИБ РСДП-а, ИкÑДТ-а И РСДТ-а." - -#: grub-core/commands/acpi.c:50 -msgid "Set OEMTABLE ID of RSDP, XSDT and RSDT." -msgstr "Подешава ИБ ОЕМТÐБЕЛЕ РСДП-а, ИкÑДТ-а И РСДТ-а." - -#: grub-core/commands/acpi.c:52 -msgid "Set OEMTABLE revision of RSDP, XSDT and RSDT." -msgstr "Подешава ревизију ОЕМТÐБЕЛЕ РСДП-а, ИкÑДТ-а И РСДТ-а." - -#: grub-core/commands/acpi.c:54 -msgid "Set creator field of RSDP, XSDT and RSDT." -msgstr "Подешава поље творца РСДП-а, ИкÑДТ-а И РСДТ-а." - -#: grub-core/commands/acpi.c:56 -msgid "Set creator revision of RSDP, XSDT and RSDT." -msgstr "Подешава ревизију творца РСДП-а, ИкÑДТ-а И РСДТ-а." - -#. TRANSLATORS: "hangs" here is a noun, not a verb. -#: grub-core/commands/acpi.c:58 -msgid "" -"Don't update EBDA. May fix failures or hangs on some BIOSes but makes it " -"ineffective with OS not receiving RSDP from GRUB." -msgstr "" -"Ðе оÑвежава ЕБДÐ. Може да поправи неуÑпехе или заÑтоје неких БИОС-е али га " -"чини неделотворним Ñа ОС-ом који не прима РСДП Ñа ГРУБ-а." - -#: grub-core/commands/acpi.c:650 grub-core/commands/acpi.c:667 -#: grub-core/commands/i386/pc/play.c:105 grub-core/commands/keylayouts.c:230 -#: grub-core/commands/keylayouts.c:245 grub-core/commands/keylayouts.c:263 -#: grub-core/commands/verifiers.c:156 grub-core/efiemu/loadcore.c:350 -#: grub-core/kern/elf.c:117 grub-core/kern/elfXX.c:29 -#: grub-core/kern/elfXX.c:156 grub-core/loader/arm/linux.c:319 -#: grub-core/loader/arm64/linux.c:330 grub-core/loader/arm64/xen_boot.c:356 -#: grub-core/loader/efi/chainloader.c:276 -#: grub-core/loader/efi/chainloader.c:297 -#: grub-core/loader/efi/chainloader.c:329 grub-core/loader/efi/fdt.c:138 -#: grub-core/loader/i386/bsd.c:1276 grub-core/loader/i386/bsd.c:2116 -#: grub-core/loader/i386/bsdXX.c:20 grub-core/loader/i386/bsdXX.c:36 -#: grub-core/loader/i386/bsdXX.c:63 grub-core/loader/i386/bsdXX.c:357 -#: grub-core/loader/i386/bsdXX.c:376 grub-core/loader/i386/bsdXX.c:519 -#: grub-core/loader/i386/bsdXX.c:535 grub-core/loader/i386/bsdXX.c:615 -#: grub-core/loader/i386/bsdXX.c:638 -#: grub-core/loader/i386/coreboot/chainloader.c:112 -#: grub-core/loader/i386/coreboot/chainloader.c:148 -#: grub-core/loader/i386/coreboot/chainloader.c:170 -#: grub-core/loader/i386/linux.c:667 grub-core/loader/i386/linux.c:788 -#: grub-core/loader/i386/linux.c:1005 grub-core/loader/i386/multiboot_mbi.c:171 -#: grub-core/loader/i386/pc/chainloader.c:202 -#: grub-core/loader/i386/pc/linux.c:149 grub-core/loader/i386/pc/linux.c:320 -#: grub-core/loader/i386/pc/linux.c:362 grub-core/loader/i386/pc/plan9.c:457 -#: grub-core/loader/i386/pc/plan9.c:550 grub-core/loader/i386/pc/plan9.c:566 -#: grub-core/loader/i386/xen.c:934 grub-core/loader/i386/xen_file.c:72 -#: grub-core/loader/i386/xen_fileXX.c:43 grub-core/loader/i386/xen_fileXX.c:186 -#: grub-core/loader/i386/xen_fileXX.c:339 grub-core/loader/ia64/efi/linux.c:423 -#: grub-core/loader/ia64/efi/linux.c:471 grub-core/loader/linux.c:286 -#: grub-core/loader/macho.c:84 grub-core/loader/macho.c:109 -#: grub-core/loader/machoXX.c:33 grub-core/loader/machoXX.c:46 -#: grub-core/loader/machoXX.c:76 grub-core/loader/machoXX.c:116 -#: grub-core/loader/machoXX.c:131 grub-core/loader/machoXX.c:147 -#: grub-core/loader/machoXX.c:196 grub-core/loader/machoXX.c:317 -#: grub-core/loader/multiboot.c:434 grub-core/loader/multiboot_elfxx.c:171 -#: grub-core/loader/multiboot_elfxx.c:234 -#: grub-core/loader/multiboot_elfxx.c:278 grub-core/loader/multiboot_mbi2.c:129 -#: grub-core/loader/xnu.c:737 grub-core/loader/xnu.c:795 -#: grub-core/loader/xnu.c:816 grub-core/loader/xnu.c:871 -#: grub-core/loader/xnu.c:914 grub-core/loader/xnu.c:952 -#: grub-core/loader/xnu_resume.c:68 grub-core/loader/xnu_resume.c:153 -#: grub-core/loader/xnu_resume.c:165 util/grub-mkimagexx.c:2288 -#, c-format -msgid "premature end of file %s" -msgstr "прерани крај датотеке „%s“" - -#: grub-core/commands/acpi.c:779 -msgid "" -"[-1|-2] [--exclude=TABLE1,TABLE2|--load-only=TABLE1,TABLE2] FILE1 [FILE2] " -"[...]" -msgstr "" -"[-1|-2] [--exclude=ТЕБЕЛÐ1,ТЕБЕЛÐ2|--load-only=ТЕБЕЛÐ1,ТЕБЕЛÐ2] ДÐТОТЕКÐ1 " -"[ДÐТОТЕКÐ2] [...]" - -#: grub-core/commands/acpi.c:782 -msgid "Load host ACPI tables and tables specified by arguments." -msgstr "Учитава ÐЦПИ табеле домаћина и табеле наведене аргументима." - -#: grub-core/commands/acpihalt.c:368 grub-core/kern/err.c:110 -#, c-format -msgid "error: %s.\n" -msgstr "грешка: %s.\n" - -#: grub-core/commands/acpihalt.c:368 grub-core/kern/emu/misc.c:95 -#: grub-core/kern/emu/misc.c:105 grub-core/kern/emu/misc.c:134 -#: grub-core/kern/emu/mm.c:34 grub-core/kern/emu/mm.c:62 -#: grub-core/kern/mm.c:374 grub-core/lib/relocator.c:1282 -#: grub-core/lib/relocator.c:1439 grub-core/lib/relocator.c:1538 -#: grub-core/loader/arm/linux.c:259 grub-core/loader/arm64/linux.c:265 -#: grub-core/loader/arm64/linux.c:321 grub-core/loader/arm64/linux.c:340 -#: grub-core/loader/arm64/xen_boot.c:344 grub-core/loader/arm64/xen_boot.c:367 -#: grub-core/loader/efi/chainloader.c:289 grub-core/osdep/unix/dl.c:48 -#: grub-core/osdep/windows/dl.c:46 grub-core/script/lexer.c:156 -#: grub-core/script/lexer.c:182 -msgid "out of memory" -msgstr "нема више меморије" - -#: grub-core/commands/acpihalt.c:374 grub-core/disk/cryptodisk.c:587 -#: grub-core/disk/cryptodisk.c:632 grub-core/kern/emu/hostdisk.c:307 -#: grub-core/kern/emu/hostfs.c:149 grub-core/kern/emu/misc.c:200 -#: grub-core/osdep/linux/ofpath.c:195 grub-core/osdep/linux/ofpath.c:521 -#: grub-core/osdep/linux/ofpath.c:534 util/glue-efi.c:80 util/glue-efi.c:94 -#: util/grub-editenv.c:155 util/grub-fstest.c:577 -#: util/grub-install-common.c:943 util/grub-mkrescue.c:634 -#: util/grub-mkrescue.c:888 util/grub-mount.c:506 util/grub-render-label.c:176 -#: util/misc.c:95 util/setup.c:814 util/setup.c:833 -#, c-format -msgid "cannot read `%s': %s" -msgstr "не могу да прочитам „%s“: %s" - -#. TRANSLATORS: It's computer shutdown using ACPI, not disabling ACPI. -#: grub-core/commands/acpihalt.c:452 -msgid "ACPI shutdown failed" -msgstr "није уÑпело иÑкључивање ÐЦПИ-ја" - -#: grub-core/commands/arc/lsdev.c:51 -msgid "List devices." -msgstr "ИÑпиÑује уређаје." - -#: grub-core/commands/blocklist.c:122 grub-core/commands/cat.c:57 -#: grub-core/commands/configfile.c:35 grub-core/commands/efi/loadbios.c:168 -#: grub-core/commands/file.c:159 grub-core/commands/hexdump.c:47 -#: grub-core/commands/legacycfg.c:209 grub-core/commands/legacycfg.c:315 -#: grub-core/commands/minicmd.c:44 grub-core/commands/syslinuxcfg.c:146 -#: grub-core/commands/testload.c:58 grub-core/commands/testspeed.c:52 -#: grub-core/disk/loopback.c:93 grub-core/efiemu/main.c:293 -#: grub-core/font/font_cmd.c:32 grub-core/kern/emu/hostdisk.c:519 -#: grub-core/loader/arm/linux.c:364 grub-core/loader/arm/linux.c:409 -#: grub-core/loader/arm/linux.c:472 grub-core/loader/arm64/linux.c:243 -#: grub-core/loader/arm64/linux.c:297 grub-core/loader/arm64/xen_boot.c:398 -#: grub-core/loader/arm64/xen_boot.c:411 grub-core/loader/arm64/xen_boot.c:462 -#: grub-core/loader/efi/chainloader.c:216 grub-core/loader/i386/bsd.c:1462 -#: grub-core/loader/i386/bsd.c:1807 grub-core/loader/i386/bsd.c:2085 -#: grub-core/loader/i386/coreboot/chainloader.c:438 -#: grub-core/loader/i386/linux.c:656 grub-core/loader/i386/linux.c:1041 -#: grub-core/loader/i386/pc/chainloader.c:290 -#: grub-core/loader/i386/pc/freedos.c:105 grub-core/loader/i386/pc/linux.c:138 -#: grub-core/loader/i386/pc/linux.c:400 grub-core/loader/i386/pc/ntldr.c:85 -#: grub-core/loader/i386/pc/plan9.c:409 -#: grub-core/loader/i386/pc/pxechainloader.c:94 -#: grub-core/loader/i386/pc/truecrypt.c:96 grub-core/loader/i386/xen.c:641 -#: grub-core/loader/i386/xen.c:768 grub-core/loader/i386/xen.c:844 -#: grub-core/loader/i386/xen.c:854 grub-core/loader/i386/xnu.c:488 -#: grub-core/loader/ia64/efi/linux.c:459 grub-core/loader/ia64/efi/linux.c:539 -#: grub-core/loader/mips/linux.c:238 grub-core/loader/mips/linux.c:429 -#: grub-core/loader/multiboot.c:322 grub-core/loader/multiboot.c:374 -#: grub-core/loader/multiboot.c:384 -#: grub-core/loader/powerpc/ieee1275/linux.c:269 -#: grub-core/loader/powerpc/ieee1275/linux.c:341 -#: grub-core/loader/sparc64/ieee1275/linux.c:305 -#: grub-core/loader/sparc64/ieee1275/linux.c:381 grub-core/loader/xnu.c:351 -#: grub-core/loader/xnu.c:460 grub-core/loader/xnu.c:778 -#: grub-core/loader/xnu.c:892 grub-core/loader/xnu.c:1277 -#: grub-core/loader/xnu.c:1427 grub-core/loader/xnu.c:1453 -#: grub-core/video/readers/jpeg.c:812 grub-core/video/readers/png.c:1123 -msgid "filename expected" -msgstr "очекиван је назив датотеке" - -#. TRANSLATORS: "embed" is a verb (command description). " -#: grub-core/commands/blocklist.c:154 grub-core/commands/cat.c:163 -#: grub-core/commands/configfile.c:65 grub-core/commands/configfile.c:68 -#: grub-core/commands/configfile.c:74 grub-core/commands/configfile.c:80 -#: grub-core/commands/configfile.c:86 grub-core/commands/hashsum.c:34 -#: grub-core/commands/legacycfg.c:834 grub-core/commands/legacycfg.c:841 -#: grub-core/commands/legacycfg.c:846 grub-core/commands/legacycfg.c:851 -#: grub-core/commands/macbless.c:222 grub-core/commands/minicmd.c:198 -#: grub-core/commands/syslinuxcfg.c:186 grub-core/commands/syslinuxcfg.c:194 -#: grub-core/commands/syslinuxcfg.c:200 grub-core/commands/syslinuxcfg.c:206 -#: grub-core/commands/testload.c:163 grub-core/efiemu/main.c:312 -#: grub-core/kern/emu/main.c:100 grub-core/kern/emu/main.c:103 -#: grub-core/loader/i386/bsd.c:2137 grub-core/loader/i386/bsd.c:2140 -#: grub-core/loader/i386/bsd.c:2143 -#: grub-core/loader/i386/coreboot/chainloader.c:505 -#: grub-core/loader/ia64/efi/linux.c:594 include/grub/util/install.h:32 -#: include/grub/util/install.h:64 util/grub-glue-efi.c:52 -#: util/grub-glue-efi.c:54 util/grub-glue-efi.c:56 util/grub-install.c:254 -#: util/grub-install.c:301 util/grub-mkfont.c:936 util/grub-mkimage.c:68 -#: util/grub-mkimage.c:74 util/grub-mkimage.c:76 util/grub-mkimage.c:78 -#: util/grub-mkimage.c:81 util/grub-mklayout.c:52 util/grub-mklayout.c:54 -#: util/grub-mkrescue.c:97 util/grub-mkrescue.c:101 util/grub-mkrescue.c:104 -#: util/grub-mkrescue.c:105 util/grub-mkrescue.c:106 -#: util/grub-mkstandalone.c:47 util/grub-mkstandalone.c:49 -#: util/grub-probe.c:732 util/grub-render-label.c:59 -#: util/grub-render-label.c:70 util/grub-render-label.c:72 util/grub-setup.c:78 -#: util/grub-setup.c:80 util/grub-setup.c:84 util/grub-syslinux2cfg.c:74 -#: util/grub-syslinux2cfg.c:147 -msgid "FILE" -msgstr "ДÐТОТЕКÐ" - -#: grub-core/commands/blocklist.c:154 -msgid "Print a block list." -msgstr "ИÑпиÑује ÑпиÑак блокова." - -#: grub-core/commands/boot.c:147 grub-core/commands/legacycfg.c:533 -#: grub-core/commands/legacycfg.c:574 grub-core/loader/arm64/linux.c:250 -#: grub-core/loader/i386/bsd.c:1799 grub-core/loader/i386/bsd.c:1900 -#: grub-core/loader/i386/bsd.c:2007 grub-core/loader/i386/bsd.c:2040 -#: grub-core/loader/i386/bsd.c:2089 grub-core/loader/i386/linux.c:1047 -#: grub-core/loader/i386/pc/linux.c:406 grub-core/loader/i386/xen.c:775 -#: grub-core/loader/i386/xen.c:859 grub-core/loader/ia64/efi/linux.c:545 -#: grub-core/loader/mips/linux.c:432 grub-core/loader/multiboot.c:388 -#: grub-core/loader/powerpc/ieee1275/linux.c:347 -#: grub-core/loader/sparc64/ieee1275/linux.c:387 grub-core/loader/xnu.c:572 -#: grub-core/loader/xnu.c:665 grub-core/loader/xnu.c:781 -#: grub-core/loader/xnu.c:895 grub-core/loader/xnu.c:1091 -#: grub-core/loader/xnu.c:1258 grub-core/loader/xnu.c:1289 -#: grub-core/loader/xnu.c:1430 -msgid "you need to load the kernel first" -msgstr "прво треба да учитате језгро" - -#: grub-core/commands/boot.c:189 -msgid "Boot an operating system." -msgstr "Подиже оперативни ÑиÑтем." - -#: grub-core/commands/boottime.c:36 -#: grub-core/commands/i386/coreboot/cb_timestamps.c:108 -msgid "No boot time statistics is available\n" -msgstr "Ðије доÑтупна ÑтатиÑтика времена подизања\n" - -#: grub-core/commands/boottime.c:59 -msgid "Show boot time statistics." -msgstr "Приказује ÑтатиÑтику времена подизања." - -#: grub-core/commands/cacheinfo.c:40 -#, c-format -msgid "Disk cache statistics: hits = %lu (%lu.%02lu%%), misses = %lu\n" -msgstr "" -"СтатиÑтика оÑтаве диÑка: покушаја = %lu (%lu.%02lu%%), промашаја = %lu\n" - -#: grub-core/commands/cacheinfo.c:45 -msgid "No disk cache statistics available\n" -msgstr "Ðије доÑтупна ÑтатиÑтика оÑтаве диÑка\n" - -#: grub-core/commands/cacheinfo.c:56 -msgid "Get disk cache info." -msgstr "Добавља податке оÑтаве диÑка." - -#: grub-core/commands/cat.c:33 -msgid "Accept DOS-style CR/NL line endings." -msgstr "Прихвата Ñвршетке ЦР/ÐЛ линије у Ñтилу ДОС-а." - -#: grub-core/commands/cat.c:163 grub-core/commands/minicmd.c:198 -msgid "Show the contents of a file." -msgstr "Приказује Ñадржај датотеке." - -#: grub-core/commands/cmp.c:43 grub-core/commands/i386/pc/drivemap.c:239 -#: grub-core/commands/i386/wrmsr.c:60 grub-core/commands/iorw.c:85 -#: grub-core/commands/memrw.c:84 grub-core/commands/password.c:75 -#: grub-core/commands/password_pbkdf2.c:94 grub-core/commands/pgp.c:826 -#: grub-core/commands/regexp.c:113 grub-core/mmap/mmap.c:517 -#: grub-core/net/dns.c:639 -msgid "two arguments expected" -msgstr "очекивана Ñу два аргумента" - -#: grub-core/commands/cmp.c:45 -#, c-format -msgid "Compare file `%s' with `%s':\n" -msgstr "Упоређујем датотеку „%s“ Ñа „%s“:\n" - -#: grub-core/commands/cmp.c:54 -#, c-format -msgid "Files differ in size: %llu [%s], %llu [%s]\n" -msgstr "Датотеке Ñе разликују у величини: %llu [%s], %llu [%s]\n" - -#: grub-core/commands/cmp.c:81 -#, c-format -msgid "Files differ at the offset %llu: 0x%x [%s], 0x%x [%s]\n" -msgstr "Датотеке Ñе разликују на померају %llu: 0x%x [%s], 0x%x [%s]\n" - -#. TRANSLATORS: it's always exactly 2 files. -#: grub-core/commands/cmp.c:93 -msgid "The files are identical.\n" -msgstr "Датотеке Ñу иÑтоветне.\n" - -#: grub-core/commands/cmp.c:113 -msgid "FILE1 FILE2" -msgstr "ДÐТОТЕКÐ1 ДÐТОТЕКÐ2" - -#: grub-core/commands/cmp.c:113 -msgid "Compare two files." -msgstr "Упоређује две датотеке." - -#: grub-core/commands/configfile.c:65 -msgid "Load another config file." -msgstr "Учитава другу датотеку подешавања." - -#: grub-core/commands/configfile.c:69 grub-core/commands/configfile.c:87 -msgid "Load another config file without changing context." -msgstr "Учитава другу датотеку подешавања без промене контекÑта." - -#: grub-core/commands/configfile.c:75 -msgid "" -"Load another config file without changing context but take only menu entries." -msgstr "" -"Учитава другу датотеку подешавања без промене контекÑта али узима Ñамо уноÑе " -"изборника." - -#: grub-core/commands/configfile.c:81 -msgid "Load another config file but take only menu entries." -msgstr "Учитава другу датотеку подешавања али узима Ñамо уноÑе изборника." - -#: grub-core/commands/date.c:141 -msgid "[[year-]month-day] [hour:minute[:second]]" -msgstr "[[година-]меÑец-дан] [Ñат:минут[:Ñекунд]]" - -#: grub-core/commands/date.c:142 -msgid "Display/set current datetime." -msgstr "Приказује/подешава текући датум и време." - -#: grub-core/commands/echo.c:30 -msgid "Do not output the trailing newline." -msgstr "Ðе иÑпиÑује пратећи нови ред." - -#: grub-core/commands/echo.c:31 -msgid "Enable interpretation of backslash escapes." -msgstr "Укључује тумачење завршетака повратнице." - -#: grub-core/commands/echo.c:134 -msgid "[-e|-n] STRING" -msgstr "[-e|-n] ÐИСКÐ" - -#: grub-core/commands/echo.c:134 -msgid "Display a line of text." -msgstr "Приказује ред текÑта." - -#: grub-core/commands/efi/efifwsetup.c:82 -msgid "Reboot into firmware setup menu." -msgstr "Поново подиже у изборник подешавања уграђеног програма." - -#: grub-core/commands/efi/fixvideo.c:107 -msgid "Fix video problem." -msgstr "Поправља проблем Ñа видеом." - -#: grub-core/commands/efi/loadbios.c:52 -msgid "ROM image is present." -msgstr "РОМ Ñлика је приÑутна." - -#: grub-core/commands/efi/loadbios.c:70 -msgid "Can't enable ROM area." -msgstr "Ðе могу да укључим облаÑÑ‚ РОМ-а." - -#: grub-core/commands/efi/loadbios.c:209 -msgid "" -"Create BIOS-like structures for backward compatibility with existing OS." -msgstr "" -"Прави Ñтруктуре налик БИОС-у за повратном ÑаглаÑношћу Ñа поÑтојећим ОС-ом." - -#: grub-core/commands/efi/loadbios.c:214 -msgid "BIOS_DUMP [INT10_DUMP]" -msgstr "ИЗБÐЧÐЈ_БИОСР[ИÐТ10_ИЗБÐЧÐЈ]" - -#: grub-core/commands/efi/loadbios.c:215 -msgid "Load BIOS dump." -msgstr "Учитава избачај БИОС-а." - -#: grub-core/commands/efi/shim_lock.c:76 -#, c-format -msgid "module cannot be loaded in UEFI secure boot mode: %s" -msgstr "" - -#: grub-core/commands/efi/shim_lock.c:98 -#, c-format -msgid "cannot boot due to dangerous module in memory: %s" -msgstr "" - -#: grub-core/commands/efi/shim_lock.c:116 -#, fuzzy -msgid "bad shim signature" -msgstr "лош потпиÑ" - -#: grub-core/commands/efi/tpm.c:149 grub-core/commands/efi/tpm.c:189 -#: grub-core/commands/efi/tpm.c:256 grub-core/commands/efi/tpm.c:306 -#, fuzzy -msgid "Command failed" -msgstr "додела меморије није уÑпела" - -#: grub-core/commands/efi/tpm.c:151 grub-core/commands/efi/tpm.c:191 -#: grub-core/commands/efi/tpm.c:258 grub-core/commands/efi/tpm.c:308 -#, fuzzy -msgid "Invalid parameter" -msgstr "неиÑправан параметар „%s“" - -#: grub-core/commands/efi/tpm.c:154 grub-core/commands/efi/tpm.c:194 -#: grub-core/commands/efi/tpm.c:261 grub-core/commands/efi/tpm.c:311 -msgid "Output buffer too small" -msgstr "" - -#: grub-core/commands/efi/tpm.c:156 grub-core/commands/efi/tpm.c:196 -#: grub-core/commands/efi/tpm.c:263 grub-core/commands/efi/tpm.c:313 -#, fuzzy -msgid "TPM unavailable" -msgstr "Путања: недоÑтупно" - -#: grub-core/commands/efi/tpm.c:158 grub-core/commands/efi/tpm.c:198 -#: grub-core/commands/efi/tpm.c:265 grub-core/commands/efi/tpm.c:315 -#, fuzzy -msgid "Unknown TPM error" -msgstr "Ðепозната ÑиÑтемÑка грешка" - -#: grub-core/commands/efi/tpm.c:240 grub-core/commands/efi/tpm.c:288 -msgid "cannot allocate TPM event buffer" -msgstr "" - -#: grub-core/commands/eval.c:63 -msgid "STRING ..." -msgstr "ÐИСКР..." - -#: grub-core/commands/eval.c:64 -msgid "Evaluate arguments as GRUB commands" -msgstr "Процењује аргументе као наредбе ГРУБ-а" - -#: grub-core/commands/file.c:41 -msgid "Check if FILE can be booted as i386 PAE Xen unprivileged guest kernel" -msgstr "" -"Проверава да ли ДÐТОТЕКРможе бити подигнута као i386 ПÐЕ ИкÑен " -"непривилеговано језгро гоÑта" - -#: grub-core/commands/file.c:44 -msgid "Check if FILE can be booted as x86_64 Xen unprivileged guest kernel" -msgstr "" -"Проверава да ли ДÐТОТЕКРможе бити подигнута као x86_64 ИкÑен " -"непривилеговано језгро гоÑта" - -#: grub-core/commands/file.c:46 -msgid "Check if FILE can be used as Xen x86 privileged guest kernel" -msgstr "" -"Проверава да ли ДÐТОТЕКРможе бити коришћена као ИкÑен x86 привилеговано " -"језгро гоÑта" - -#: grub-core/commands/file.c:48 -msgid "Check if FILE can be used as x86 multiboot kernel" -msgstr "" -"Проверава да ли ДÐТОТЕКРможе бити коришћена као x86 вишеподизно језгро" - -#: grub-core/commands/file.c:50 -msgid "Check if FILE can be used as x86 multiboot2 kernel" -msgstr "" -"Проверава да ли ДÐТОТЕКРможе бити коришћена као x86 вишеподизно2 језгро" - -#: grub-core/commands/file.c:52 -msgid "Check if FILE is ARM Linux" -msgstr "Проверава да ли је ДÐТОТЕКРÐРМ ЛинукÑ" - -#: grub-core/commands/file.c:54 -msgid "Check if FILE is ARM64 Linux" -msgstr "Проверава да ли је ДÐТОТЕКРÐРМ64 ЛинукÑ" - -#: grub-core/commands/file.c:56 -msgid "Check if FILE is IA64 Linux" -msgstr "Проверава да ли је ДÐТОТЕКРИÐ64 ЛинукÑ" - -#: grub-core/commands/file.c:58 -msgid "Check if FILE is MIPS Linux" -msgstr "Проверава да ли је ДÐТОТЕКРМИПС ЛинукÑ" - -#: grub-core/commands/file.c:60 -msgid "Check if FILE is MIPSEL Linux" -msgstr "Проверава да ли је ДÐТОТЕКРМИПСЕЛ ЛинукÑ" - -#: grub-core/commands/file.c:62 -msgid "Check if FILE is SPARC64 Linux" -msgstr "Проверава да ли је ДÐТОТЕКРСПÐРК64 ЛинукÑ" - -#: grub-core/commands/file.c:64 -msgid "Check if FILE is POWERPC Linux" -msgstr "Проверава да ли је ДÐТОТЕКРПÐУЕРПЦ ЛинукÑ" - -#: grub-core/commands/file.c:66 -msgid "Check if FILE is x86 Linux" -msgstr "Проверава да ли је ДÐТОТЕКРх86 ЛинукÑ" - -#: grub-core/commands/file.c:68 -msgid "Check if FILE is x86 Linux supporting 32-bit protocol" -msgstr "Проверава да ли је ДÐТОТЕКРx86 Ð›Ð¸Ð½ÑƒÐºÑ ÐºÐ¾Ñ˜Ð¸ подржава 32-битни протокол" - -#: grub-core/commands/file.c:70 -msgid "Check if FILE is x86 kFreeBSD" -msgstr "Проверава да ли је ДÐТОТЕКРх86 кФриБСД" - -#: grub-core/commands/file.c:72 -msgid "Check if FILE is i386 kFreeBSD" -msgstr "Проверава да ли је ДÐТОТЕКРi386 кФриБСД" - -#: grub-core/commands/file.c:74 -msgid "Check if FILE is x86_64 kFreeBSD" -msgstr "Проверава да ли је ДÐТОТЕКРх86_64 кФриБСД" - -#: grub-core/commands/file.c:77 -msgid "Check if FILE is x86 kNetBSD" -msgstr "Проверава да ли је ДÐТОТЕКРх86 кÐетБСД" - -#: grub-core/commands/file.c:79 -msgid "Check if FILE is i386 kNetBSD" -msgstr "Проверава да ли је ДÐТОТЕКРi386 кÐетБСД" - -#: grub-core/commands/file.c:81 -msgid "Check if FILE is x86_64 kNetBSD" -msgstr "Проверава да ли је ДÐТОТЕКРх86_64 кÐетБСД" - -#: grub-core/commands/file.c:84 -msgid "Check if FILE is i386 EFI file" -msgstr "Проверава да ли је ДÐТОТЕКРi386 ЕФИ датотека" - -#: grub-core/commands/file.c:86 -msgid "Check if FILE is x86_64 EFI file" -msgstr "Проверава да ли је ДÐТОТЕКРх86_64 ЕФИ датотека" - -#: grub-core/commands/file.c:88 -msgid "Check if FILE is IA64 EFI file" -msgstr "Проверава да ли је ДÐТОТЕКРИÐ64 датотека" - -#: grub-core/commands/file.c:90 -msgid "Check if FILE is ARM64 EFI file" -msgstr "Проверава да ли је ДÐТОТЕКРÐРМ64 датотека" - -#: grub-core/commands/file.c:92 -msgid "Check if FILE is ARM EFI file" -msgstr "Проверава да ли је ДÐТОТЕКРÐРМ ЕФИ датотека" - -#: grub-core/commands/file.c:94 -#, fuzzy -msgid "Check if FILE is RISC-V 32bit EFI file" -msgstr "Проверава да ли је ДÐТОТЕКРÐРМ ЕФИ датотека" - -#: grub-core/commands/file.c:96 -#, fuzzy -msgid "Check if FILE is RISC-V 64bit EFI file" -msgstr "Проверава да ли је ДÐТОТЕКРИÐ64 датотека" - -#: grub-core/commands/file.c:98 -msgid "Check if FILE is hiberfil.sys in hibernated state" -msgstr "Проверава да ли је ДÐТОТЕКР„hiberfil.sys“ у тамрзнутом Ñтању" - -#: grub-core/commands/file.c:100 -msgid "Check if FILE is x86_64 XNU (Mac OS X kernel)" -msgstr "Проверава да ли је ДÐТОТЕКРx86_64 ИкÑÐУ (Ð˜ÐºÑ Ñ˜ÐµÐ·Ð³Ñ€Ð¾ Мек ОС-а)" - -#: grub-core/commands/file.c:102 -msgid "Check if FILE is i386 XNU (Mac OS X kernel)" -msgstr "Проверава да ли је ДÐТОТЕКРi386 ИкÑÐУ (Ð˜ÐºÑ Ñ˜ÐµÐ·Ð³Ñ€Ð¾ Мек ОС-а)" - -#: grub-core/commands/file.c:104 -msgid "Check if FILE is XNU (Mac OS X kernel) hibernated image" -msgstr "" -"Проверава да ли је ДÐТОТЕКРИкÑÐУ (Ð˜ÐºÑ Ñ˜ÐµÐ·Ð³Ñ€Ð¾ Мек ОС-а) замрзнута Ñлика" - -#: grub-core/commands/file.c:106 -msgid "Check if FILE is BIOS bootsector" -msgstr "Проверава да ли је ДÐТОТЕКРподизни одељак БИОС-а" - -#. TRANSLATORS: it's a standalone boolean value, -#. opposite of "true". -#: grub-core/commands/file.c:675 grub-core/commands/i386/cmostest.c:63 -#: grub-core/commands/i386/cpuid.c:71 grub-core/commands/keystatus.c:83 -#: grub-core/commands/keystatus.c:87 grub-core/commands/keystatus.c:96 -#: grub-core/commands/test.c:436 grub-core/commands/true.c:39 -#: grub-core/script/execute.c:247 grub-core/script/execute.c:1039 -msgid "false" -msgstr "нетачно" - -#: grub-core/commands/file.c:684 -msgid "OPTIONS FILE" -msgstr "ОПЦИЈЕ ДÐТОТЕКÐ" - -#: grub-core/commands/file.c:685 -msgid "Check if FILE is of specified type." -msgstr "Проерава да ли је ДÐТОТЕКРнаведене врÑте." - -#. TRANSLATORS: It means that the specified partition e.g. -#. hd0,msdos1=/dev/sda1 doesn't exist. -#: grub-core/commands/gptsync.c:140 grub-core/kern/disk.c:258 -msgid "no such partition" -msgstr "нема такве партиције" - -#: grub-core/commands/gptsync.c:240 -#, c-format -msgid "New MBR is written to `%s'\n" -msgstr "Ðови ГЗП је запиÑан у „%s“\n" - -#: grub-core/commands/gptsync.c:252 -msgid "DEVICE [PARTITION[+/-[TYPE]]] ..." -msgstr "УРЕЂÐЈ [ПÐРТИЦИЈÐ[+/-[ВРСТÐ]]] ..." - -#. TRANSLATORS: MBR type is one-byte partition -#. type id. -#: grub-core/commands/gptsync.c:255 -msgid "" -"Fill hybrid MBR of GPT drive DEVICE. Specified partitions will be a part of " -"hybrid MBR. Up to 3 partitions are allowed. TYPE is an MBR type. + means " -"that partition is active. Only one partition can be active." -msgstr "" -"Попуњава хибридни ГЗП ГПТ диÑка УРЕЂÐЈ. Ðаведене партиције биће део " -"хибридног ГЗП-а. Дозвољено је до 3 партиције. ВРСТРје ГЗП врÑта. + значи да " -"је партиција активна. Само једна партиција може бити активна." - -#: grub-core/commands/halt.c:40 -msgid "" -"Halts the computer. This command does not work on all firmware " -"implementations." -msgstr "" -"ЗауÑтавља рачунар. Ова наредба не ради на Ñвим применама уграђеног програма." - -#: grub-core/commands/hashsum.c:32 -msgid "Specify hash to use." -msgstr "Ðаводи хеш за коришћење." - -#: grub-core/commands/hashsum.c:32 -msgid "HASH" -msgstr "ХЕШ" - -#: grub-core/commands/hashsum.c:33 -msgid "Check hashes of files with hash list FILE." -msgstr "Проверава хеш датотека ДÐТОТЕКОМ ÑпиÑка хеша." - -#: grub-core/commands/hashsum.c:35 -msgid "Base directory for hash list." -msgstr "ОÑновни директоријум за ÑпиÑак хеша." - -#. TRANSLATORS: platform here isn't identifier. It can be translated. -#: grub-core/commands/hashsum.c:35 grub-core/commands/ls.c:150 -#: grub-core/commands/macbless.c:226 grub-core/commands/syslinuxcfg.c:51 -#: grub-core/commands/syslinuxcfg.c:54 grub-core/kern/emu/main.c:106 -#: include/grub/util/install.h:50 include/grub/util/install.h:53 -#: include/grub/util/install.h:56 include/grub/util/install.h:59 -#: util/grub-install.c:250 util/grub-install.c:252 util/grub-install.c:297 -#: util/grub-install.c:299 util/grub-mkimage.c:64 util/grub-mkimage.c:67 -#: util/grub-mknetdir.c:46 util/grub-mknetdir.c:48 util/grub-mkrescue.c:99 -#: util/grub-setup.c:82 util/grub-syslinux2cfg.c:63 util/grub-syslinux2cfg.c:65 -#: util/grub-syslinux2cfg.c:67 util/grub-syslinux2cfg.c:71 -msgid "DIR" -msgstr "ДИР" - -#: grub-core/commands/hashsum.c:37 -msgid "Don't stop after first error." -msgstr "Ðе Ñтаје након прве грешке." - -#: grub-core/commands/hashsum.c:38 -msgid "Uncompress file before checksumming." -msgstr "РаÑпакује датотеку пре провере Ñуме." - -#: grub-core/commands/hashsum.c:163 -#, c-format -msgid "%s: READ ERROR\n" -msgstr "%s: ГРЕШКРЧИТÐЊÐ\n" - -#: grub-core/commands/hashsum.c:177 -#, c-format -msgid "%s: HASH MISMATCH\n" -msgstr "%s: ХЕШ ÐЕ_ОДГОВÐРÐ\n" - -#: grub-core/commands/hashsum.c:188 -#, c-format -msgid "%s: OK\n" -msgstr "%s: У РЕДУ\n" - -#: grub-core/commands/hashsum.c:282 -msgid "-h HASH [-c FILE [-p PREFIX]] [FILE1 [FILE2 ...]]" -msgstr "-h ХЕШ [-c ДÐТОТЕКР[-p ПРЕФИКС]] [ДÐТОТЕКÐ1 [ДÐТОТЕКÐ2 ...]]" - -#. TRANSLATORS: "hash checksum" is just to -#. be a bit more precise, you can treat it as -#. just "hash". -#: grub-core/commands/hashsum.c:287 grub-core/commands/hashsum.c:292 -#: grub-core/commands/hashsum.c:297 grub-core/commands/hashsum.c:302 -#: grub-core/commands/hashsum.c:307 grub-core/commands/hashsum.c:313 -msgid "Compute or check hash checksum." -msgstr "Израчунава или проверава Ñуму провере хеша." - -#: grub-core/commands/hashsum.c:290 grub-core/commands/hashsum.c:295 -#: grub-core/commands/hashsum.c:300 grub-core/commands/hashsum.c:305 -#: grub-core/commands/hashsum.c:311 -msgid "[-c FILE [-p PREFIX]] [FILE1 [FILE2 ...]]" -msgstr "[-c ДÐТОТЕКР[-p ПРЕФИКС]] [ДÐТОТЕКÐ1 [ДÐТОТЕКÐ2 ...]]" - -#: grub-core/commands/hdparm.c:33 -msgid "" -"Set Advanced Power Management\n" -"(1=low, ..., 254=high, 255=off)." -msgstr "" -"Подешава напредно управљање напајањем\n" -"(1=ниÑко, ..., 254=виÑоко, 255=иÑкључено)." - -#: grub-core/commands/hdparm.c:36 -msgid "Display power mode." -msgstr "Приказује режим напајања." - -#: grub-core/commands/hdparm.c:37 -msgid "Freeze ATA security settings until reset." -msgstr "Замрзава подешавања ÐТРбезбедноÑти Ñве до повраћаја." - -#: grub-core/commands/hdparm.c:39 -msgid "Display SMART health status." -msgstr "Приказује СМÐРТ Ñтање иÑправноÑти." - -#: grub-core/commands/hdparm.c:40 -msgid "" -"Set Automatic Acoustic Management\n" -"(0=off, 128=quiet, ..., 254=fast)." -msgstr "" -"Подешава ÑамоÑтално акуÑтичко управљање\n" -"(0=иÑкљ., 128=тихо, ..., 254=брзо)." - -#: grub-core/commands/hdparm.c:43 -msgid "" -"Set standby timeout\n" -"(0=off, 1=5s, 2=10s, ..., 240=20m, 241=30m, ...)." -msgstr "" -"Подешава временÑки рок приправноÑти\n" -"(0=иÑкљ., 1=5s, 2=10s, ..., 240=20m, 241=30m, ...)." - -#: grub-core/commands/hdparm.c:46 -msgid "Set drive to standby mode." -msgstr "ПоÑтавља диÑк у режим приправноÑти." - -#: grub-core/commands/hdparm.c:47 -msgid "Set drive to sleep mode." -msgstr "ПоÑтавља диÑк у режим Ñпавања." - -#: grub-core/commands/hdparm.c:48 -msgid "Print drive identity and settings." -msgstr "ИÑпиÑује идентитет диÑка и подешавања." - -#: grub-core/commands/hdparm.c:50 -msgid "Show raw contents of ATA IDENTIFY sector." -msgstr "Приказује Ñирови Ñадржај одељка „ATA IDENTIFY“." - -#: grub-core/commands/hdparm.c:52 -msgid "Disable/enable SMART (0/1)." -msgstr "ИÑкључује/укључује СМÐРТ (0/1)." - -#: grub-core/commands/hdparm.c:53 -msgid "Do not print messages." -msgstr "Ðе иÑпиÑује поруке." - -#: grub-core/commands/hdparm.c:286 grub-core/commands/i386/rdmsr.c:68 -#: grub-core/commands/iorw.c:47 grub-core/commands/legacycfg.c:760 -#: grub-core/commands/legacycfg.c:812 grub-core/commands/macbless.c:190 -#: grub-core/commands/memrw.c:47 grub-core/commands/pgp.c:738 -#: grub-core/commands/pgp.c:792 grub-core/commands/search.c:304 -#: grub-core/commands/search_wrap.c:179 grub-core/commands/setpci.c:243 -#: grub-core/commands/sleep.c:71 grub-core/fs/zfs/zfsinfo.c:279 -#: grub-core/fs/zfs/zfsinfo.c:358 grub-core/gettext/gettext.c:492 -#: grub-core/kern/corecmd.c:65 grub-core/kern/corecmd.c:79 -#: grub-core/mmap/mmap.c:430 grub-core/net/dns.c:713 grub-core/net/dns.c:745 -#: grub-core/net/net.c:694 grub-core/net/net.c:1052 -#: grub-core/normal/context.c:194 grub-core/script/execute.c:131 -#: grub-core/term/gfxterm_background.c:136 -msgid "one argument expected" -msgstr "очекиван је један аргумент" - -#: grub-core/commands/hdparm.c:440 -msgid "[OPTIONS] DISK" -msgstr "[ОПЦИЈЕ] ДИСК" - -#: grub-core/commands/hdparm.c:441 -msgid "Get/set ATA disk parameters." -msgstr "Добавља/поÑтавља параметре ÐТРдиÑка." - -#: grub-core/commands/help.c:132 grub-core/lib/arg.c:109 -#: grub-core/lib/gnulib/argp-help.c:1616 -msgid "Usage:" -msgstr "Употреба:" - -#: grub-core/commands/help.c:146 -msgid "[PATTERN ...]" -msgstr "[ШÐБЛОР...]" - -#: grub-core/commands/help.c:147 -msgid "Show a help message." -msgstr "Приказује поруку помоћи." - -#: grub-core/commands/hexdump.c:31 -msgid "Skip offset bytes from the beginning of file." -msgstr "ПреÑкаче битове помераја од почетка датотеке." - -#: grub-core/commands/hexdump.c:33 -msgid "Read only LENGTH bytes." -msgstr "Чита Ñамо битове ДУЖИÐЕ." - -#: grub-core/commands/hexdump.c:125 -msgid "[OPTIONS] FILE_OR_DEVICE" -msgstr "[ОПЦИЈЕ] ДÐТОТЕКÐ_ИЛИ_УРЕЂÐЈ" - -#: grub-core/commands/hexdump.c:126 -msgid "Show raw contents of a file or memory." -msgstr "Приказује Ñирови Ñадржај датотеке или меморије." - -#: grub-core/commands/i386/cmosdump.c:58 -msgid "Show raw dump of the CMOS contents." -msgstr "Приказује Ñирови избачај ЦМОС Ñадржаја." - -#: grub-core/commands/i386/cmostest.c:108 -#: grub-core/commands/i386/cmostest.c:111 -#: grub-core/commands/i386/cmostest.c:114 -msgid "BYTE:BIT" -msgstr "БÐЈТ:БИТ" - -#: grub-core/commands/i386/cmostest.c:109 -msgid "Test bit at BYTE:BIT in CMOS." -msgstr "Проверава бит на БÐЈТУ:БИТУ у ЦМОС-у." - -#: grub-core/commands/i386/cmostest.c:112 -msgid "Clear bit at BYTE:BIT in CMOS." -msgstr "ЧиÑти бит на БÐЈТУ:БИТУ у ЦМОС-у." - -#. TRANSLATORS: A bit may be either set (1) or clear (0). -#: grub-core/commands/i386/cmostest.c:116 -msgid "Set bit at BYTE:BIT in CMOS." -msgstr "Подешава бит на БÐЈТУ:БИТУ у ЦМОС-у." - -#: grub-core/commands/i386/coreboot/cb_timestamps.c:120 -msgid "Show coreboot boot time statistics." -msgstr "Приказује ÑтатиÑтику времена подизања подизања језгра." - -#: grub-core/commands/i386/coreboot/cbls.c:137 -msgid "List coreboot tables." -msgstr "Ðаводи табеле подизања језгра." - -#. TRANSLATORS: "(default)" at the end means that this option is used if -#. no argument is specified. -#: grub-core/commands/i386/cpuid.c:36 -msgid "Check if CPU supports 64-bit (long) mode (default)." -msgstr "Проверава да ли процеÑор подржава 64-битни (дуги) режим (оÑновно)." - -#: grub-core/commands/i386/cpuid.c:37 -msgid "Check if CPU supports Physical Address Extension." -msgstr "Проверава да ли процеÑор подржава проширење физичке адреÑе." - -#: grub-core/commands/i386/cpuid.c:119 -msgid "Check for CPU features." -msgstr "Проверава функције процеÑора." - -#. TRANSLATORS: In this file "mapping" refers to a change GRUB makes so if -#. your language doesn't have an equivalent of "mapping" you can -#. use the word like "rerouting". -#. -#: grub-core/commands/i386/pc/drivemap.c:43 -msgid "Show the current mappings." -msgstr "Приказује текуће мапирање." - -#: grub-core/commands/i386/pc/drivemap.c:44 -msgid "Reset all mappings to the default values." -msgstr "Враћа Ñва мапирања на оÑновне вредноÑти." - -#: grub-core/commands/i386/pc/drivemap.c:45 -msgid "Perform both direct and reverse mappings." -msgstr "Обавља и директно и обратно мапирање." - -#: grub-core/commands/i386/pc/drivemap.c:184 -msgid "No drives have been remapped" -msgstr "Ðиједан диÑк није поново мапиран" - -#. TRANSLATORS: This is the header of mapping list. -#. On the left is how OS will see the disks and -#. on the right current GRUB vision. -#: grub-core/commands/i386/pc/drivemap.c:191 -msgid "OS disk #num ------> GRUB/BIOS device" -msgstr "ОС диÑк #бр. ——————> ГРУБ/БИОС уређај" - -#: grub-core/commands/i386/pc/drivemap.c:413 -msgid "-l | -r | [-s] grubdev osdisk." -msgstr "-l | -r | [-s] грубдев оÑдиÑк." - -#: grub-core/commands/i386/pc/drivemap.c:414 -msgid "Manage the BIOS drive mappings." -msgstr "Управља мапирањима диÑка БИОС-а." - -#: grub-core/commands/i386/pc/halt.c:31 -msgid "Do not use APM to halt the computer." -msgstr "Ðе кориÑти ÐПМ да зауÑтави рачунар." - -#: grub-core/commands/i386/pc/halt.c:119 -msgid "Halt the system, if possible using APM." -msgstr "ЗауÑтавља ÑиÑтем, ако је могуће кориÑтећи ÐПМ." - -#: grub-core/commands/i386/pc/lsapm.c:75 -msgid "no APM found" -msgstr "ниÑам нашао ÐПМ" - -#: grub-core/commands/i386/pc/lsapm.c:77 -#, c-format -msgid "" -"Version %u.%u\n" -"32-bit CS = 0x%x, len = 0x%x, offset = 0x%x\n" -"16-bit CS = 0x%x, len = 0x%x\n" -"DS = 0x%x, len = 0x%x\n" -msgstr "" -"Издање %u.%u\n" -"32-бита ЦС = 0x%x, дужина = 0x%x, померај = 0x%x\n" -"16-бита ЦС = 0x%x, дужина = 0x%x\n" -"ДС = 0x%x, дужина = 0x%x\n" - -#: grub-core/commands/i386/pc/lsapm.c:86 -msgid "16-bit protected interface supported\n" -msgstr "Сучеље заштићено Ñа 16 бита је подржано\n" - -#: grub-core/commands/i386/pc/lsapm.c:87 -msgid "16-bit protected interface unsupported\n" -msgstr "Сучеље заштићено Ñа 16 бита није подржано\n" - -#: grub-core/commands/i386/pc/lsapm.c:89 -msgid "32-bit protected interface supported\n" -msgstr "Сучеље заштићено Ñа 32 бита је подржано\n" - -#: grub-core/commands/i386/pc/lsapm.c:90 -msgid "32-bit protected interface unsupported\n" -msgstr "Сучеље заштићено Ñа 32 бита није подржано\n" - -#: grub-core/commands/i386/pc/lsapm.c:92 -msgid "CPU Idle slows down processor\n" -msgstr "Мировање процеÑора уÑпорава процеÑор\n" - -#: grub-core/commands/i386/pc/lsapm.c:93 -msgid "CPU Idle doesn't slow down processor\n" -msgstr "Мировање процеÑора не уÑпорава процеÑор\n" - -#: grub-core/commands/i386/pc/lsapm.c:95 -msgid "APM disabled\n" -msgstr "ÐПМ је иÑкључен\n" - -#: grub-core/commands/i386/pc/lsapm.c:95 -msgid "APM enabled\n" -msgstr "ÐПМ је укључен\n" - -#: grub-core/commands/i386/pc/lsapm.c:97 -msgid "APM disengaged\n" -msgstr "ÐПМ је иÑкопчан\n" - -#: grub-core/commands/i386/pc/lsapm.c:97 -msgid "APM engaged\n" -msgstr "ÐПМ је укопчан\n" - -#: grub-core/commands/i386/pc/lsapm.c:107 -msgid "Show APM information." -msgstr "Приказује ÐПМ податке." - -#. TRANSLATORS: It's musical notes, not the notes -#. you take. Play command expects arguments which can -#. be either a filename or tempo+notes. -#. This error happens if none is specified. -#: grub-core/commands/i386/pc/play.c:88 -msgid "filename or tempo and notes expected" -msgstr "очекиван је назив датотеке или темпо и ноте" - -#: grub-core/commands/i386/pc/play.c:113 grub-core/commands/i386/pc/play.c:144 -#, c-format -msgid "Invalid tempo in %s" -msgstr "ÐеиÑправн темпо у „%s“" - -#: grub-core/commands/i386/pc/play.c:151 grub-core/commands/macbless.c:172 -#: grub-core/fs/archelp.c:260 grub-core/fs/bfs.c:621 grub-core/fs/bfs.c:704 -#: grub-core/fs/btrfs.c:1726 grub-core/fs/btrfs.c:1755 -#: grub-core/fs/btrfs.c:1799 grub-core/fs/btrfs.c:1882 -#: grub-core/fs/btrfs.c:1906 grub-core/fs/fshelp.c:257 grub-core/fs/jfs.c:696 -#: grub-core/fs/minix.c:426 grub-core/fs/ufs.c:544 grub-core/fs/zfs/zfs.c:2083 -#: grub-core/fs/zfs/zfs.c:2095 grub-core/fs/zfs/zfs.c:2301 -#: grub-core/net/http.c:120 -#, c-format -msgid "file `%s' not found" -msgstr "ниÑам нашао датотеку „%s“" - -#: grub-core/commands/i386/pc/play.c:162 grub-core/commands/i386/pc/play.c:171 -#: grub-core/kern/misc.c:419 grub-core/script/execute.c:138 -#: grub-core/script/execute.c:244 -msgid "unrecognized number" -msgstr "непознат број" - -#: grub-core/commands/i386/pc/play.c:190 -msgid "FILE | TEMPO [PITCH1 DURATION1] [PITCH2 DURATION2] ... " -msgstr "ДÐТОТЕКР| ТЕМПО [ВРХУÐÐЦ1 ТРÐЈÐЊЕ1] [ВРХУÐÐЦ2 ТРÐЈÐЊЕ2] ... " - -#: grub-core/commands/i386/pc/play.c:191 -msgid "Play a tune." -msgstr "Пушта мелодију." - -#: grub-core/commands/i386/pc/sendkey.c:39 -msgid "set numlock mode" -msgstr "поÑтавља режим закључавања броја" - -#: grub-core/commands/i386/pc/sendkey.c:40 -msgid "set capslock mode" -msgstr "поÑтавља режим закључавања великих Ñлова" - -#: grub-core/commands/i386/pc/sendkey.c:41 -msgid "set scrolllock mode" -msgstr "поÑтавља режим закључавања клизања" - -#: grub-core/commands/i386/pc/sendkey.c:42 -msgid "set insert mode" -msgstr "поÑтавља режим уметања" - -#: grub-core/commands/i386/pc/sendkey.c:43 -msgid "set pause mode" -msgstr "поÑтавља режим паузе" - -#: grub-core/commands/i386/pc/sendkey.c:44 -msgid "press left shift" -msgstr "притиÑните леви помак" - -#: grub-core/commands/i386/pc/sendkey.c:45 -msgid "press right shift" -msgstr "притиÑните деÑни помак" - -#: grub-core/commands/i386/pc/sendkey.c:46 -msgid "press SysRq" -msgstr "притиÑните „SysRq“" - -#: grub-core/commands/i386/pc/sendkey.c:47 -msgid "press NumLock key" -msgstr "притиÑните таÑтер за закључавање бројева" - -#: grub-core/commands/i386/pc/sendkey.c:48 -msgid "press CapsLock key" -msgstr "притиÑните таÑтер за закључавање великих Ñлова" - -#: grub-core/commands/i386/pc/sendkey.c:49 -msgid "press ScrollLock key" -msgstr "притиÑните таÑтер за закључавање клизања" - -#: grub-core/commands/i386/pc/sendkey.c:50 -msgid "press Insert key" -msgstr "притиÑните таÑтер „Уметни“" - -#: grub-core/commands/i386/pc/sendkey.c:51 -msgid "press left alt" -msgstr "притиÑните леви алт" - -#: grub-core/commands/i386/pc/sendkey.c:52 -msgid "press right alt" -msgstr "притиÑните деÑни алт" - -#: grub-core/commands/i386/pc/sendkey.c:53 -msgid "press left ctrl" -msgstr "притиÑните леви ктрл" - -#: grub-core/commands/i386/pc/sendkey.c:54 -msgid "press right ctrl" -msgstr "притиÑните деÑни ктрл" - -#: grub-core/commands/i386/pc/sendkey.c:55 -msgid "don't update LED state" -msgstr "не оÑвежава Ñтање ЛЕД-а" - -#: grub-core/commands/i386/pc/sendkey.c:372 -msgid "[KEYSTROKE1] [KEYSTROKE2] ..." -msgstr "[ПРИТИСÐКТÐСТЕРÐ1] [ПРИТИСÐКТÐСТЕРÐ2] ..." - -#. TRANSLATORS: It can emulate multiple -#. keypresses. -#: grub-core/commands/i386/pc/sendkey.c:375 -msgid "Emulate a keystroke sequence" -msgstr "Опонаша низ притиÑака таÑтера" - -#: grub-core/commands/i386/rdmsr.c:37 grub-core/commands/iorw.c:34 -#: grub-core/commands/memrw.c:33 grub-core/commands/setpci.c:73 -msgid "Save read value into variable VARNAME." -msgstr "Чува вредноÑÑ‚ читања у променљивој ÐÐЗИВПРОМ." - -#: grub-core/commands/i386/rdmsr.c:38 grub-core/commands/iorw.c:35 -#: grub-core/commands/memrw.c:34 grub-core/commands/probe.c:40 -#: grub-core/commands/search_wrap.c:40 grub-core/commands/setpci.c:74 -#: grub-core/commands/tr.c:32 -msgid "VARNAME" -msgstr "ÐÐЗИВПРОМЕÐЉИВЕ" - -#: grub-core/commands/i386/rdmsr.c:55 grub-core/commands/i386/rdmsr.c:60 -#: grub-core/commands/i386/rdmsr.c:65 grub-core/commands/i386/wrmsr.c:47 -#: grub-core/commands/i386/wrmsr.c:52 grub-core/commands/i386/wrmsr.c:57 -#, fuzzy -msgid "unsupported instruction" -msgstr "неподржани Ð·Ð°Ð¿Ð¸Ñ Ð³Ð·Ð¸Ð¿-а" - -#: grub-core/commands/i386/rdmsr.c:77 grub-core/commands/i386/wrmsr.c:69 -#: grub-core/commands/i386/wrmsr.c:77 grub-core/net/dns.c:727 -msgid "invalid argument" -msgstr "неиÑправан аргумент" - -#: grub-core/commands/i386/rdmsr.c:94 grub-core/commands/memrw.c:125 -#: grub-core/commands/memrw.c:129 grub-core/commands/memrw.c:133 -msgid "ADDR" -msgstr "ÐДРЕСÐ" - -#: grub-core/commands/i386/rdmsr.c:95 -msgid "Read a CPU model specific register." -msgstr "" - -#: grub-core/commands/i386/wrmsr.c:86 -#, fuzzy -msgid "ADDR VALUE" -msgstr "ÐДРЕСРВРЕДÐОСТ [МÐСКÐ]" - -#: grub-core/commands/i386/wrmsr.c:87 -msgid "Write a value to a CPU model specific register." -msgstr "" - -#: grub-core/commands/ieee1275/suspend.c:34 -msgid "Run `go' to resume GRUB." -msgstr "Покреће „go“ да наÑтави Ñа ГРУБ-ом." - -#: grub-core/commands/ieee1275/suspend.c:45 -msgid "Return to IEEE1275 prompt." -msgstr "Враћа Ñе на ИЕЕЕ1275 упит." - -#: grub-core/commands/iorw.c:123 grub-core/commands/iorw.c:127 -#: grub-core/commands/iorw.c:131 grub-core/gdb/gdb.c:79 -msgid "PORT" -msgstr "ПРИКЉУЧÐИК" - -#: grub-core/commands/iorw.c:123 -msgid "Read 8-bit value from PORT." -msgstr "Чита 8-битну вредноÑÑ‚ Ñа ПРИКЉУЧÐИКÐ." - -#: grub-core/commands/iorw.c:127 -msgid "Read 16-bit value from PORT." -msgstr "Чита 16-битну вредноÑÑ‚ Ñа ПРИКЉУЧÐИКÐ." - -#: grub-core/commands/iorw.c:131 -msgid "Read 32-bit value from PORT." -msgstr "Чита 32-битну вредноÑÑ‚ Ñа ПРИКЉУЧÐИКÐ." - -#: grub-core/commands/iorw.c:135 grub-core/commands/iorw.c:139 -msgid "PORT VALUE [MASK]" -msgstr "ПРИКЉУЧÐИК ВРЕДÐОСТ [МÐСКÐ]" - -#: grub-core/commands/iorw.c:136 -msgid "Write 8-bit VALUE to PORT." -msgstr "Пише 8-битну ВРЕДÐОСТ на ПРИКЉУЧÐИК." - -#: grub-core/commands/iorw.c:140 -msgid "Write 16-bit VALUE to PORT." -msgstr "Пише 16-битну ВРЕДÐОСТ на ПРИКЉУЧÐИК." - -#: grub-core/commands/iorw.c:143 grub-core/commands/memrw.c:137 -#: grub-core/commands/memrw.c:141 grub-core/commands/memrw.c:145 -msgid "ADDR VALUE [MASK]" -msgstr "ÐДРЕСРВРЕДÐОСТ [МÐСКÐ]" - -#: grub-core/commands/iorw.c:144 -msgid "Write 32-bit VALUE to PORT." -msgstr "Пише 32-битну ВРЕДÐОСТ на ПРИКЉУЧÐИК." - -#: grub-core/commands/keylayouts.c:215 grub-core/commands/loadenv.c:61 -#: grub-core/commands/nativedisk.c:189 grub-core/efiemu/main.c:235 -#: grub-core/font/font.c:428 grub-core/gfxmenu/gfxmenu.c:63 -#: grub-core/kern/device.c:42 grub-core/kern/dl.c:740 -#, c-format -msgid "variable `%s' isn't set" -msgstr "није подешена променљива „%s“" - -#: grub-core/commands/keylayouts.c:301 -msgid "Load a keyboard layout." -msgstr "Учитава раÑпоред таÑтатуре." - -#. TRANSLATORS: "Check" in a sense that if this key is pressed then -#. "true" is returned, otherwise "false". -#: grub-core/commands/keystatus.c:32 -msgid "Check Shift key." -msgstr "Проверава таÑтер „Помак“." - -#: grub-core/commands/keystatus.c:33 -msgid "Check Control key." -msgstr "Проверава таÑтер „Контрол“." - -#: grub-core/commands/keystatus.c:34 -msgid "Check Alt key." -msgstr "Проверава таÑтер „Ðлт“." - -#. TRANSLATORS: there are 3 modifiers. -#: grub-core/commands/keystatus.c:106 -msgid "Check key modifier status." -msgstr "Проверава Ñтање таÑтера измењивача." - -#: grub-core/commands/legacycfg.c:512 grub-core/commands/legacycfg.c:526 -#: grub-core/commands/legacycfg.c:546 grub-core/commands/legacycfg.c:559 -#: grub-core/commands/time.c:43 grub-core/script/function.c:109 -#: util/grub-file.c:100 util/grub-fstest.c:57 util/grub-mount.c:69 -#, c-format -msgid "can't find command `%s'" -msgstr "не могу наћи наредбу „%s“" - -#: grub-core/commands/legacycfg.c:813 grub-core/normal/auth.c:225 -#: util/grub-mkpasswd-pbkdf2.c:139 -msgid "Enter password: " -msgstr "УнеÑите лозинку: " - -#. TRANSLATORS: "legacy config" means -#. "config as used by grub-legacy". -#: grub-core/commands/legacycfg.c:837 -msgid "Parse legacy config in same context" -msgstr "Обрађује Ñтаро подешавање у иÑтом контекÑту" - -#: grub-core/commands/legacycfg.c:842 -msgid "Parse legacy config in new context" -msgstr "Обрађује Ñтаро подешавање у новом контекÑту" - -#: grub-core/commands/legacycfg.c:847 -msgid "Parse legacy config in same context taking only menu entries" -msgstr "" -"Обрађује Ñтаро подешавање у иÑтом контекÑту узимајући Ñамо уноÑе изборника" - -#: grub-core/commands/legacycfg.c:852 -msgid "Parse legacy config in new context taking only menu entries" -msgstr "" -"Обрађује Ñтаро подешавање у новом контекÑту узимајући Ñамо уноÑе изборника" - -#: grub-core/commands/legacycfg.c:856 -msgid "[--no-mem-option] [--type=TYPE] FILE [ARG ...]" -msgstr "[--no-mem-option] [--type=ВРСТÐ] ДÐТОТЕКР[ÐРГ ...]" - -#: grub-core/commands/legacycfg.c:857 -msgid "Simulate grub-legacy `kernel' command" -msgstr "Симулира наредбу „kernel“ Ñтарог груба" - -#: grub-core/commands/legacycfg.c:861 grub-core/commands/legacycfg.c:865 -msgid "FILE [ARG ...]" -msgstr "ДÐТОТЕКР[ÐРГ ...]" - -#: grub-core/commands/legacycfg.c:862 -msgid "Simulate grub-legacy `initrd' command" -msgstr "Симулира наредбу „initrd“ Ñтарог груба" - -#: grub-core/commands/legacycfg.c:866 -msgid "Simulate grub-legacy `modulenounzip' command" -msgstr "Симулира наредбу „modulenounzip“ Ñтарог груба" - -#: grub-core/commands/legacycfg.c:870 grub-core/commands/legacycfg.c:875 -msgid "[--md5] PASSWD [FILE]" -msgstr "[--md5] ЛОЗИÐКР[ДÐТОТЕКÐ]" - -#: grub-core/commands/legacycfg.c:871 -msgid "Simulate grub-legacy `password' command" -msgstr "Симулира наредбу „password“ Ñтарог груба" - -#: grub-core/commands/legacycfg.c:876 -msgid "Simulate grub-legacy `password' command in menu entry mode" -msgstr "Симулира наредбу „password“ Ñтарог груба у режиму уноÑа изборника" - -#. TRANSLATORS: This option is used to override default filename -#. for loading and storing environment. -#: grub-core/commands/loadenv.c:37 -msgid "Specify filename." -msgstr "Ðаводи назив датотеке." - -#: grub-core/commands/loadenv.c:39 -msgid "Skip signature-checking of the environment file." -msgstr "ПреÑкаче проверу потпиÑа датотеке окружења." - -#: grub-core/commands/loadenv.c:451 -msgid "[-f FILE] [-s|--skip-sig] [variable_name_to_whitelist] [...]" -msgstr "" -"[-f ДÐТОТЕКÐ] [-s|--skip-sig] [назив_променљиве_за_ÑпиÑак_дозвољених] [...]" - -#: grub-core/commands/loadenv.c:452 -msgid "Load variables from environment block file." -msgstr "Учитава променљиве из датотеке блока окружења." - -#: grub-core/commands/loadenv.c:455 -msgid "[-f FILE]" -msgstr "[-f ДÐТОТЕКÐ]" - -#: grub-core/commands/loadenv.c:456 -msgid "List variables from environment block file." -msgstr "ИÑпиÑује променљиве из датотеке блока окружења." - -#: grub-core/commands/loadenv.c:460 -msgid "[-f FILE] variable_name [...]" -msgstr "[-f ДÐТОТЕКÐ] назив_променљиве [...]" - -#: grub-core/commands/loadenv.c:461 -msgid "Save variables to environment block file." -msgstr "Чува променљиве у датотеку блока окружења." - -#: grub-core/commands/ls.c:40 -msgid "Show a long list with more detailed information." -msgstr "Приказује дуги ÑпиÑак Ñа опширнијим подацима." - -#: grub-core/commands/ls.c:41 -msgid "Print sizes in a human readable format." -msgstr "ИÑпиÑује величине у запиÑу разумљивом човеку." - -#: grub-core/commands/ls.c:42 -msgid "List all files." -msgstr "Ðаводи Ñве датотеке." - -#: grub-core/commands/ls.c:73 -msgid "Network protocols:" -msgstr "Мрежни протоколи:" - -#: grub-core/commands/ls.c:295 -msgid "[-l|-h|-a] [FILE ...]" -msgstr "[-l|-h|-a] [ДÐТОТЕКР...]" - -#: grub-core/commands/ls.c:296 -msgid "List devices and files." -msgstr "ИÑпиÑује уређаје и датотеке." - -#: grub-core/commands/lsacpi.c:255 -msgid "Show version 1 tables only." -msgstr "Приказује Ñамо табеле издања 1." - -#: grub-core/commands/lsacpi.c:256 -msgid "Show version 2 and version 3 tables only." -msgstr "Приказује Ñамо табеле издања 2 и издања 3." - -#: grub-core/commands/lsacpi.c:306 -msgid "Show ACPI information." -msgstr "Приказује ÐЦПИ податке." - -#: grub-core/commands/lsmmap.c:31 -msgid "available RAM" -msgstr "доÑтупна РÐМ" - -#: grub-core/commands/lsmmap.c:32 -msgid "reserved RAM" -msgstr "резервиÑана РÐМ" - -#. TRANSLATORS: this refers to memory where ACPI tables are stored -#. and which can be used by OS once it loads ACPI tables. -#: grub-core/commands/lsmmap.c:35 -msgid "ACPI reclaimable RAM" -msgstr "ÐЦПИ повратна РÐМ" - -#. TRANSLATORS: this refers to memory which ACPI-compliant OS -#. is required to save accross hibernations. -#: grub-core/commands/lsmmap.c:38 -msgid "ACPI non-volatile storage RAM" -msgstr "ÐЦПИ РÐМ не-неÑталног Ñмештаја" - -#: grub-core/commands/lsmmap.c:39 -msgid "faulty RAM (BadRAM)" -msgstr "неиÑправна РÐМ (Лоша РÐМ)" - -#: grub-core/commands/lsmmap.c:40 -msgid "persistent RAM" -msgstr "трајна РÐМ" - -#: grub-core/commands/lsmmap.c:41 -msgid "persistent RAM (legacy)" -msgstr "трајна РÐМ (Ñтаро)" - -#: grub-core/commands/lsmmap.c:42 -msgid "RAM holding coreboot tables" -msgstr "РÐМ која Ñадржи табеле подизања језгра" - -#: grub-core/commands/lsmmap.c:43 -msgid "RAM holding firmware code" -msgstr "РÐМ која Ñадржи шифру уграђеног програма" - -#: grub-core/commands/lsmmap.c:52 -#, c-format -msgid "base_addr = 0x%llx, length = 0x%llx, %s\n" -msgstr "адреÑа_оÑнове = 0x%llx, дужина = 0x%llx, %s\n" - -#: grub-core/commands/lsmmap.c:55 -#, c-format -msgid "base_addr = 0x%llx, length = 0x%llx, type = 0x%x\n" -msgstr "адреÑа_оÑнове = 0x%llx, дужина = 0x%llx, врÑта = 0Ñ…%x\n" - -#: grub-core/commands/lsmmap.c:79 -msgid "List memory map provided by firmware." -msgstr "ИÑпиÑује мапу меморије коју доÑтавља уграђени програм." - -#: grub-core/commands/lspci.c:232 -msgid "List PCI devices." -msgstr "ИÑпиÑује ПЦИ уређаје." - -#: grub-core/commands/macbless.c:224 -msgid "Bless FILE of HFS or HFS+ partition for intel macs." -msgstr "" -"ДÐТОТЕКРомогућавања подизања ХФС или ХФС+ партиције за интелове мекове." - -#: grub-core/commands/macbless.c:228 -msgid "Bless DIR of HFS or HFS+ partition for PPC macs." -msgstr "" -"ДИРЕКТОРИЈУМ омогућавања подизања ХФС или ХФС+ партиције за ППЦ мекове." - -#: grub-core/commands/memrw.c:125 -msgid "Read 8-bit value from ADDR." -msgstr "Чита 8-битну вредноÑÑ‚ Ñа ÐДРЕСЕ." - -#: grub-core/commands/memrw.c:129 -msgid "Read 16-bit value from ADDR." -msgstr "Чита 16-битну вредноÑÑ‚ Ñа ÐДРЕСЕ." - -#: grub-core/commands/memrw.c:133 -msgid "Read 32-bit value from ADDR." -msgstr "Чита 32-битну вредноÑÑ‚ Ñа ÐДРЕСЕ." - -#: grub-core/commands/memrw.c:138 -msgid "Write 8-bit VALUE to ADDR." -msgstr "Пише 8-битну ВРЕДÐОСТ на ÐДРЕСИ." - -#: grub-core/commands/memrw.c:142 -msgid "Write 16-bit VALUE to ADDR." -msgstr "Пише 16-битну ВРЕДÐОСТ на ÐДРЕСИ." - -#: grub-core/commands/memrw.c:146 -msgid "Write 32-bit VALUE to ADDR." -msgstr "Пише 32-битну ВРЕДÐОСТ на ÐДРЕСИ." - -#: grub-core/commands/menuentry.c:31 -msgid "Menu entry type." -msgstr "Ð’Ñ€Ñта уноÑа изборника." - -#: grub-core/commands/menuentry.c:31 grub-core/commands/menuentry.c:38 -#: grub-core/commands/menuentry.c:39 grub-core/gettext/gettext.c:520 -#: util/grub-fstest.c:520 util/grub-install.c:291 util/grub-install.c:304 -#: util/grub-mknetdir.c:51 util/grub-mkrescue.c:109 util/grub-mkrescue.c:110 -#: util/grub-mount.c:453 util/grub-render-label.c:65 -msgid "STRING" -msgstr "ÐИСКÐ" - -#: grub-core/commands/menuentry.c:33 -msgid "List of users allowed to boot this entry." -msgstr "ИÑпиÑује кориÑнике којима је дозвољено да подигну овај уноÑ." - -#: grub-core/commands/menuentry.c:33 -msgid "USERNAME[,USERNAME]" -msgstr "КОРИСÐИК[,КОРИСÐИК]" - -#: grub-core/commands/menuentry.c:36 -msgid "Keyboard key to quickly boot this entry." -msgstr "ТаÑтер таÑтатуре за брзо подизање овог уноÑа." - -#: grub-core/commands/menuentry.c:36 -msgid "KEYBOARD_KEY" -msgstr "ТÐСТЕР_ТÐСТÐТУРЕ" - -#: grub-core/commands/menuentry.c:38 -msgid "Use STRING as menu entry body." -msgstr "КориÑти ÐИСКУ као трло уноÑа изборника." - -#: grub-core/commands/menuentry.c:39 -msgid "Menu entry identifier." -msgstr "Одредник уноÑа изборника." - -#. TRANSLATORS: menu entry can either be bootable by anyone or only by -#. handful of users. By default when security is active only superusers can -#. boot a given menu entry. With --unrestricted (this option) -#. anyone can boot it. -#: grub-core/commands/menuentry.c:44 -msgid "This entry can be booted by any user." -msgstr "Овај ÑƒÐ½Ð¾Ñ Ð¼Ð¾Ð¶Ðµ подићи било који кориÑник." - -#: grub-core/commands/menuentry.c:323 grub-core/commands/menuentry.c:328 -#: grub-core/tests/test_blockarg.c:46 -msgid "BLOCK" -msgstr "БЛОК" - -#: grub-core/commands/menuentry.c:323 -msgid "Define a menu entry." -msgstr "Одређује ÑƒÐ½Ð¾Ñ Ð¸Ð·Ð±Ð¾Ñ€Ð½Ð¸ÐºÐ°." - -#: grub-core/commands/menuentry.c:328 -msgid "Define a submenu." -msgstr "Одређује подизборник." - -#. TRANSLATORS: this is module list header. Name -#. is module name, Ref Count is a reference counter -#. (how many modules or open descriptors use it). -#. Dependencies are the other modules it uses. -#. -#: grub-core/commands/minicmd.c:162 -msgid "Name\tRef Count\tDependencies\n" -msgstr "Ðазив\tБрој упута\tЗавиÑноÑти\n" - -#: grub-core/commands/minicmd.c:201 -msgid "Show this message." -msgstr "Приказује ову поруку." - -#: grub-core/commands/minicmd.c:204 -msgid "ADDR [SIZE]" -msgstr "ÐДРС [ВЕЛИЧИÐÐ]" - -#: grub-core/commands/minicmd.c:204 -msgid "Show memory contents." -msgstr "Приказује Ñадржај меморије." - -#: grub-core/commands/minicmd.c:207 grub-core/kern/corecmd.c:188 -#: util/grub-install.c:275 -msgid "MODULE" -msgstr "МОДУЛ" - -#: grub-core/commands/minicmd.c:207 -msgid "Remove a module." -msgstr "Уклања модул." - -#: grub-core/commands/minicmd.c:210 -msgid "Show loaded modules." -msgstr "Приказује учитане модуле." - -#: grub-core/commands/minicmd.c:213 -msgid "Exit from GRUB." -msgstr "Излази из ГРУБ-а." - -#: grub-core/commands/mips/loongson/lsspd.c:42 -msgid "No CS5536 found" -msgstr "ÐиÑам нашао ЦС5536" - -#: grub-core/commands/mips/loongson/lsspd.c:45 -#, c-format -msgid "CS5536 at %d:%d.%d\n" -msgstr "ЦС5536 на %d:%d.%d\n" - -#. TRANSLATORS: System management bus is often used to access components like -#. RAM (info only, not data) or batteries. I/O space is where in memory -#. its ports are. -#: grub-core/commands/mips/loongson/lsspd.c:55 -#, c-format -msgid "System management bus controller I/O space is at 0x%x\n" -msgstr "У/И проÑтор контролера Ñабирнице управљања ÑиÑтемом је на 0x%x\n" - -#. TRANSLATORS: it's shown in a report in a way -#. like number 1: ... number 2: ... -#. -#: grub-core/commands/mips/loongson/lsspd.c:66 -#, c-format -msgid "RAM slot number %d\n" -msgstr "РÐМ подножје број %d\n" - -#: grub-core/commands/mips/loongson/lsspd.c:73 -#, c-format -msgid "Written SPD bytes: %d B.\n" -msgstr "ЗапиÑани СПД бајтови: %d B.\n" - -#: grub-core/commands/mips/loongson/lsspd.c:74 -#, c-format -msgid "Total flash size: %d B.\n" -msgstr "Укупна величина флеша: %d B.\n" - -#: grub-core/commands/mips/loongson/lsspd.c:79 -msgid "Memory type: DDR2." -msgstr "Ð’Ñ€Ñта меморије: DDR2." - -#: grub-core/commands/mips/loongson/lsspd.c:83 -#, c-format -msgid "Part no: %s.\n" -msgstr "Део бр.: %s.\n" - -#: grub-core/commands/mips/loongson/lsspd.c:86 -msgid "Memory type: Unknown." -msgstr "Ð’Ñ€Ñта меморије: Ðепозната." - -#: grub-core/commands/mips/loongson/lsspd.c:97 -msgid "Print Memory information." -msgstr "ИÑпиÑује податке о меморији." - -#: grub-core/commands/nativedisk.c:118 grub-core/commands/probe.c:118 -#: grub-core/commands/probe.c:124 util/grub-probe.c:450 -#, c-format -msgid "%s does not support UUIDs" -msgstr "„%s“ не подржава УУИБ-е" - -#: grub-core/commands/nativedisk.c:325 -msgid "[MODULE1 MODULE2 ...]" -msgstr "[МОДУЛ1 МОДУЛ2 ...]" - -#: grub-core/commands/nativedisk.c:326 -msgid "" -"Switch to native disk drivers. If no modules are specified default set (pata," -"ahci,usbms,ohci,uhci,ehci) is used" -msgstr "" -"Пребацује Ñе на изворне управљачке програме диÑка. Ðко ниÑу наведени модули " -"кориÑти Ñе оÑновни Ñкуп (pata,ahci,usbms,ohci,uhci,ehci)" - -#: grub-core/commands/parttool.c:40 -msgid "" -"Perform COMMANDS on partition.\n" -"Use `parttool PARTITION help' for the list of available commands." -msgstr "" -"Извршава ÐÐРЕДБЕ над партицијом.\n" -"КориÑтите „parttool PARTITION help“ за ÑпиÑак доÑтупних наредби." - -#: grub-core/commands/parttool.c:123 -msgid "=VAL" -msgstr "=ВРЕД" - -#: grub-core/commands/parttool.c:136 -#, c-format -msgid "Sorry, no parttool is available for %s\n" -msgstr "Извините, није доÑтупан ниједан алат партиције за %s\n" - -#: grub-core/commands/parttool.c:288 grub-core/lib/arg.c:285 -#: grub-core/lib/arg.c:351 -#, c-format -msgid "unknown argument `%s'" -msgstr "непознат аргумент „%s“" - -#: grub-core/commands/parttool.c:344 -msgid "PARTITION COMMANDS" -msgstr "ПÐРТИЦИЈРÐÐРЕДБЕ" - -#: grub-core/commands/password.c:85 -msgid "USER PASSWORD" -msgstr "КОРИСÐИК ЛОЗИÐКÐ" - -#: grub-core/commands/password.c:86 -msgid "Set user password (plaintext). Unrecommended and insecure." -msgstr "" -"Подешава кориÑничку лозинку (обичан текÑÑ‚). Ðепрепоручљиво и неÑигурно." - -#. TRANSLATORS: it means that the string which -#. was supposed to be a password hash doesn't -#. have a correct format, not to password -#. mismatch. -#: grub-core/commands/password_pbkdf2.c:98 -#: grub-core/commands/password_pbkdf2.c:115 -#: grub-core/commands/password_pbkdf2.c:123 -#: grub-core/commands/password_pbkdf2.c:150 -#: grub-core/commands/password_pbkdf2.c:179 -msgid "invalid PBKDF2 password" -msgstr "неиÑправна лозинка ПБКДФ2" - -#: grub-core/commands/password_pbkdf2.c:202 -msgid "USER PBKDF2_PASSWORD" -msgstr "КОРИСÐИК ПБКДФ2_ЛОЗИÐКÐ" - -#: grub-core/commands/password_pbkdf2.c:203 -msgid "Set user password (PBKDF2). " -msgstr "Подешава кориÑничку лозинку (ПБКДФ2). " - -#: grub-core/commands/pcidump.c:39 grub-core/commands/setpci.c:69 -msgid "Select device by vendor and device IDs." -msgstr "Бира уређај према продавцу и ИБ-у уређаја." - -#: grub-core/commands/pcidump.c:40 grub-core/commands/setpci.c:70 -msgid "[vendor]:[device]" -msgstr "[продавац]:[уређај]" - -#: grub-core/commands/pcidump.c:41 grub-core/commands/setpci.c:71 -msgid "Select device by its position on the bus." -msgstr "Бира уређај према његовом положају на Ñабирници." - -#: grub-core/commands/pcidump.c:42 grub-core/commands/setpci.c:72 -msgid "[bus]:[slot][.func]" -msgstr "[Ñабирница]:[подножје][.func]" - -#: grub-core/commands/pcidump.c:109 grub-core/commands/pcidump.c:138 -#: grub-core/commands/setpci.c:183 grub-core/commands/setpci.c:214 -#: grub-core/fs/zfs/zfs.c:3794 grub-core/kern/emu/hostdisk.c:458 -#: grub-core/kern/emu/hostdisk.c:473 grub-core/kern/file.c:44 -#, c-format -msgid "missing `%c' symbol" -msgstr "недоÑтаје Ñимбол „%c“" - -#: grub-core/commands/pcidump.c:168 -msgid "[-s POSITION] [-d DEVICE]" -msgstr "[-s ПОЛОЖÐЈ] [-d УРЕЂÐЈ]" - -#: grub-core/commands/pcidump.c:169 -msgid "Show raw dump of the PCI configuration space." -msgstr "Приказује Ñирови избачај проÑтора ПЦИ подешавања." - -#: grub-core/commands/pgp.c:45 -msgid "Skip signature-checking of the public key file." -msgstr "ПреÑкаче проверу потпиÑа датотеке јавног кључа." - -#. TRANSLATORS: it's about GNUPG signatures. -#: grub-core/commands/pgp.c:71 grub-core/commands/pgp.c:81 -#: grub-core/commands/pgp.c:86 grub-core/commands/pgp.c:96 -#: grub-core/commands/pgp.c:103 grub-core/commands/pgp.c:107 -#: grub-core/commands/pgp.c:114 grub-core/commands/pgp.c:119 -#: grub-core/commands/pgp.c:124 grub-core/commands/pgp.c:128 -#: grub-core/commands/pgp.c:268 grub-core/commands/pgp.c:276 -#: grub-core/commands/pgp.c:281 grub-core/commands/pgp.c:289 -#: grub-core/commands/pgp.c:320 grub-core/commands/pgp.c:327 -#: grub-core/commands/pgp.c:332 grub-core/commands/pgp.c:342 -#: grub-core/commands/pgp.c:468 grub-core/commands/pgp.c:471 -#: grub-core/commands/pgp.c:474 grub-core/commands/pgp.c:477 -#: grub-core/commands/pgp.c:484 grub-core/commands/pgp.c:490 -#: grub-core/commands/pgp.c:665 -msgid "bad signature" -msgstr "лош потпиÑ" - -#. TRANSLATORS: %08x is 32-bit key id. -#: grub-core/commands/pgp.c:636 grub-core/commands/pgp.c:812 -#, c-format -msgid "public key %08x not found" -msgstr "ниÑам нашао јавни кључ %08x" - -#: grub-core/commands/pgp.c:651 grub-core/disk/diskfilter.c:772 -#: grub-core/disk/diskfilter.c:782 grub-core/fs/ntfs.c:404 -#: grub-core/fs/zfs/zfs.c:1933 grub-core/normal/menu.c:428 -#, c-format -msgid "module `%s' isn't loaded" -msgstr "није учитан модул „%s“" - -#: grub-core/commands/pgp.c:994 -msgid "[-s|--skip-sig] FILE SIGNATURE_FILE [PUBKEY_FILE]" -msgstr "[-s|--skip-sig] ДÐТОТЕКРДÐТОТЕКÐ_ПОТПИСР[ДÐТОТЕКÐ_ЈÐÐ’ÐОГ_КЉУЧÐ]" - -#: grub-core/commands/pgp.c:995 -msgid "Verify detached signature." -msgstr "Проверава откачени потпиÑ." - -#: grub-core/commands/pgp.c:998 -msgid "[-s|--skip-sig] PUBKEY_FILE" -msgstr "[-s|--skip-sig] ДÐТОТЕКÐ_ЈÐÐ’ÐОГ_КЉУЧÐ" - -#: grub-core/commands/pgp.c:999 -msgid "Add PUBKEY_FILE to trusted keys." -msgstr "Додаје ДÐТОТЕКУ_ЈÐÐ’ÐОГ_КЉУЧРу поверљиве кључеве." - -#: grub-core/commands/pgp.c:1003 -msgid "Show the list of trusted keys." -msgstr "Приказује ÑпиÑак поверљивих кључева." - -#: grub-core/commands/pgp.c:1005 -msgid "PUBKEY_ID" -msgstr "ИБ_ЈÐÐ’ÐОГ_КЉУЧÐ" - -#: grub-core/commands/pgp.c:1006 -msgid "Remove PUBKEY_ID from trusted keys." -msgstr "Уклања ИБ_ЈÐÐ’ÐОГ_КЉУЧРиз поверљивих кључева." - -#: grub-core/commands/probe.c:40 grub-core/commands/tr.c:32 -msgid "Set a variable to return value." -msgstr "ПоÑтавља променљиву на вредноÑÑ‚ резултата." - -#. TRANSLATORS: It's a driver that is currently in use to access -#. the diven disk. -#: grub-core/commands/probe.c:43 -msgid "Determine driver." -msgstr "Одређује управљачки програм." - -#: grub-core/commands/probe.c:44 -msgid "Determine partition map type." -msgstr "Одређује врÑту карте партиције." - -#: grub-core/commands/probe.c:45 -msgid "Determine filesystem type." -msgstr "Одређује врÑту ÑиÑтема датотека." - -#: grub-core/commands/probe.c:46 -msgid "Determine filesystem UUID." -msgstr "Одређује УУИБ ÑиÑтема датотека." - -#: grub-core/commands/probe.c:47 -msgid "Determine filesystem label." -msgstr "Одређује Ð½Ð°Ñ‚Ð¿Ð¸Ñ ÑиÑтема датотека." - -#: grub-core/commands/probe.c:139 grub-core/commands/probe.c:146 -#: util/grub-probe.c:462 -#, c-format -msgid "filesystem `%s' does not support labels" -msgstr "ÑиÑтем датотека „%s“ не подржава натпиÑе" - -#: grub-core/commands/probe.c:165 grub-core/fs/zfs/zfsinfo.c:430 -#: grub-core/loader/i386/bsd.c:169 util/grub-setup.c:223 -msgid "DEVICE" -msgstr "УРЕЂÐЈ" - -#: grub-core/commands/probe.c:166 -msgid "Retrieve device info." -msgstr "Ðалази податке о уређају." - -#: grub-core/commands/read.c:85 -msgid "[ENVVAR]" -msgstr "[ПРОМЕÐЉИВÐ_ОКРУЖЕЊÐ]" - -#: grub-core/commands/read.c:86 -msgid "Set variable with user input." -msgstr "Подешава променљиву Ñа кориÑничким уноÑом." - -#: grub-core/commands/reboot.c:40 -msgid "Reboot the computer." -msgstr "Поново покреће рачунар." - -#. TRANSLATORS: in regexp you can mark some -#. groups with parentheses. These groups are -#. then numbered and you can save some of -#. them in variables. In other programs -#. those components aree often referenced with -#. back slash, e.g. \1. Compare -#. sed -e 's,\([a-z][a-z]*\),lowercase=\1,g' -#. The whole matching component is saved in VARNAME, not its number. -#. -#: grub-core/commands/regexp.c:44 -msgid "Store matched component NUMBER in VARNAME." -msgstr "Смешта поклопљену компоненту БРОЈ у ПРОМЕÐЉИВОЈ_ÐÐЗИВÐ." - -#: grub-core/commands/regexp.c:45 -msgid "[NUMBER:]VARNAME" -msgstr "[БРОЈ:]ÐÐЗИВПРОМЕÐЉИВЕ" - -#. TRANSLATORS: This are two arguments. So it's -#. two separate units to translate and pay -#. attention not to reverse them. -#: grub-core/commands/regexp.c:157 -msgid "REGEXP STRING" -msgstr "РЕГИЗРÐЗ ÐИСКÐ" - -#: grub-core/commands/regexp.c:158 -msgid "Test if REGEXP matches STRING." -msgstr "Проба да ли РЕГИЗРÐЗ одговара ÐИСКИ." - -#: grub-core/commands/search.c:324 -msgid "NAME [VARIABLE] [HINTS]" -msgstr "ÐÐЗИВ [ПРОМЕÐЉИВÐ] [ПОКУШÐЈИ]" - -#: grub-core/commands/search_file.c:4 -msgid "" -"Search devices by file. If VARIABLE is specified, the first device found is " -"set to a variable." -msgstr "" -"Тражи уређаје према датотеци. Ðко је ПРОМЕÐЉИВРнаведена, први пронађени " -"уређеј Ñе подешава на променљиву." - -#: grub-core/commands/search_label.c:4 -msgid "" -"Search devices by label. If VARIABLE is specified, the first device found is " -"set to a variable." -msgstr "" -"Тражи уређаје према натпиÑу. Ðко је ПРОМЕÐЉИВРнаведена, први пронађени " -"уређеј Ñе подешава на променљиву." - -#: grub-core/commands/search_uuid.c:4 -msgid "" -"Search devices by UUID. If VARIABLE is specified, the first device found is " -"set to a variable." -msgstr "" -"Тражи уређаје према УУИБ-у. Ðко је ПРОМЕÐЉИВРнаведена, први пронађени " -"уређеј Ñе подешава на променљиву." - -#: grub-core/commands/search_wrap.c:34 -msgid "Search devices by a file." -msgstr "Тражи уређаје према датотеци." - -#: grub-core/commands/search_wrap.c:35 -msgid "Search devices by a filesystem label." -msgstr "Тражи уређаје према натпиÑу ÑиÑтема датотека." - -#: grub-core/commands/search_wrap.c:37 -msgid "Search devices by a filesystem UUID." -msgstr "Тражи уређаје према УУИБ-у ÑиÑтема датотека." - -#: grub-core/commands/search_wrap.c:40 -msgid "Set a variable to the first device found." -msgstr "Подешава променљиву на први пронађени уређај." - -#: grub-core/commands/search_wrap.c:42 -msgid "Do not probe any floppy drive." -msgstr "Ðе иÑпробава ниједан уређај Ñа диÑкетом." - -#: grub-core/commands/search_wrap.c:44 -msgid "" -"First try the device HINT. If HINT ends in comma, also try subpartitions" -msgstr "" -"Прво проба уређај ПОКУШÐЈ. Ðко Ñе ПОКУШÐЈ заврши зарезом, такође проба " -"подпартиције." - -#: grub-core/commands/search_wrap.c:45 grub-core/commands/search_wrap.c:49 -#: grub-core/commands/search_wrap.c:53 grub-core/commands/search_wrap.c:57 -#: grub-core/commands/search_wrap.c:61 grub-core/commands/search_wrap.c:65 -msgid "HINT" -msgstr "ПОКУШÐЈ" - -#: grub-core/commands/search_wrap.c:47 -msgid "" -"First try the device HINT if currently running on IEEE1275. If HINT ends in " -"comma, also try subpartitions" -msgstr "" -"Прво проба уређај ПОКУШÐЈ да ли тренутно ради на ИЕЕЕ1275. Ðко Ñе ПОКУШÐЈ " -"заврши зарезом, такође проба подпартиције." - -#: grub-core/commands/search_wrap.c:51 -msgid "" -"First try the device HINT if currently running on BIOS. If HINT ends in " -"comma, also try subpartitions" -msgstr "" -"Прво проба уређај ПОКУШÐЈ да ли тренутно ради на БИОС-у. Ðко Ñе ПОКУШÐЈ " -"заврши зарезом, такође проба подпартиције." - -#: grub-core/commands/search_wrap.c:55 -msgid "" -"First try the device HINT if direct hardware access is supported. If HINT " -"ends in comma, also try subpartitions" -msgstr "" -"Прво проба уређај ПОКУШÐЈ да ли је подржан директан приÑтуп хардверу. Ðко Ñе " -"ПОКУШÐЈ заврши зарезом, такође проба подпартиције." - -#: grub-core/commands/search_wrap.c:59 -msgid "" -"First try the device HINT if currently running on EFI. If HINT ends in " -"comma, also try subpartitions" -msgstr "" -"Прво проба уређај ПОКУШÐЈ да ли тренутно ради на ЕФИ-ју. Ðко Ñе ПОКУШÐЈ " -"заврши зарезом, такође проба подпартиције." - -#: grub-core/commands/search_wrap.c:63 -msgid "" -"First try the device HINT if currently running on ARC. If HINT ends in " -"comma, also try subpartitions" -msgstr "" -"Прво проба уређај ПОКУШÐЈ да ли тренутно ради на ÐРЦ-у. Ðко Ñе ПОКУШÐЈ " -"заврши зарезом, такође проба подпартиције." - -#: grub-core/commands/search_wrap.c:207 -msgid "[-f|-l|-u|-s|-n] [--hint HINT [--hint HINT] ...] NAME" -msgstr "[-f|-l|-u|-s|-n] [--hint ПОКУШÐЈ [--hint ПОКУШÐЈ] ...] ÐÐЗИВ" - -#: grub-core/commands/search_wrap.c:209 -msgid "" -"Search devices by file, filesystem label or filesystem UUID. If --set is " -"specified, the first device found is set to a variable. If no variable name " -"is specified, `root' is used." -msgstr "" -"Тражи уређаје према датотеци, натпиÑу ÑиÑтема датотека или УУИБ-у ÑиÑтема " -"датотека. Ðко је наведено „--set“, први пронађени уређај Ñе подешава на " -"променљиву. Ðко није наведен ниједан назив променљиве, кориÑти Ñе „root“." - -#: grub-core/commands/setpci.c:132 -#, c-format -msgid "Register %x of %x:%02x.%x is %x\n" -msgstr "РегиÑтар %x за %x:%02x.%x је %x\n" - -#: grub-core/commands/setpci.c:333 -msgid "[-s POSITION] [-d DEVICE] [-v VAR] REGISTER[=VALUE[:MASK]]" -msgstr "[-s ПОЛОЖÐЈ] [-d УРЕЂÐЈ] [-v ПРОМЕÐЉИВÐ] РЕГИСТÐР[=ВРЕДÐОСТ[:МÐСКÐ]]" - -#: grub-core/commands/setpci.c:335 -msgid "Manipulate PCI devices." -msgstr "Управља ПЦИ уређајима." - -#: grub-core/commands/sleep.c:32 -msgid "Verbose countdown." -msgstr "Опширно одбројавање." - -#: grub-core/commands/sleep.c:33 -msgid "Allow to interrupt with ESC." -msgstr "Дозвољава прекидање Ñа ЕСЦ-ом." - -#: grub-core/commands/sleep.c:109 -msgid "NUMBER_OF_SECONDS" -msgstr "БРОЈ_СЕКУÐДИ" - -#: grub-core/commands/sleep.c:110 -msgid "Wait for a specified number of seconds." -msgstr "Чека наведени број Ñекунди." - -#: grub-core/commands/syslinuxcfg.c:50 util/grub-syslinux2cfg.c:66 -msgid "root directory of the syslinux disk [default=/]." -msgstr "корени директоријум ÑиÑÐ»Ð¸Ð½ÑƒÐºÑ Ð´Ð¸Ñка [оÑновно=/]." - -#: grub-core/commands/syslinuxcfg.c:53 util/grub-syslinux2cfg.c:72 -msgid "" -"current directory of syslinux [default is parent directory of input file]." -msgstr "" -"текући директоријум ÑиÑлинукÑа [оÑновни је матични директоријум улазне " -"датотеке]." - -#: grub-core/commands/syslinuxcfg.c:55 util/grub-syslinux2cfg.c:75 -msgid "assume input is an isolinux configuration file." -msgstr "Ñматра да је улаз датотека подешавања иÑолинукÑа." - -#: grub-core/commands/syslinuxcfg.c:56 util/grub-syslinux2cfg.c:76 -msgid "assume input is a pxelinux configuration file." -msgstr "Ñматра да је улаз датотека подешавања пикÑелинукÑа." - -#: grub-core/commands/syslinuxcfg.c:57 util/grub-syslinux2cfg.c:77 -msgid "assume input is a syslinux configuration file." -msgstr "Ñматра да је улаз датотека подешавања ÑиÑлинукÑа." - -#. TRANSLATORS: "syslinux config" means -#. "config as used by syslinux". -#: grub-core/commands/syslinuxcfg.c:189 -msgid "Execute syslinux config in same context" -msgstr "Извршава подешавање ÑиÑлинукÑа у иÑтом контекÑту" - -#: grub-core/commands/syslinuxcfg.c:195 -msgid "Execute syslinux config in new context" -msgstr "Извршава подешавање ÑиÑлинукÑа у новом контекÑту" - -#: grub-core/commands/syslinuxcfg.c:201 -msgid "Execute syslinux config in same context taking only menu entries" -msgstr "" -"Извршава подешавање ÑиÑлинукÑа у иÑтом контекÑту узимајући Ñамо уноÑе " -"изборника" - -#: grub-core/commands/syslinuxcfg.c:207 -msgid "Execute syslinux config in new context taking only menu entries" -msgstr "" -"Извршава подешавање ÑиÑлинукÑа у новом контекÑту узимајући Ñамо уноÑе " -"изборника" - -#: grub-core/commands/terminal.c:90 -msgid "no terminal specified" -msgstr "терминал није наведен" - -#: grub-core/commands/terminal.c:112 grub-core/commands/terminal.c:139 -#, c-format -msgid "terminal `%s' isn't found" -msgstr "ниÑам нашао терминал „%s“" - -#: grub-core/commands/terminal.c:244 -msgid "Active input terminals:" -msgstr "Ðктивни терминали улаза:" - -#: grub-core/commands/terminal.c:245 -msgid "Available input terminals:" -msgstr "ДоÑтупни терминали улаза:" - -#: grub-core/commands/terminal.c:261 -msgid "Active output terminals:" -msgstr "Ðктивни терминали излаза:" - -#: grub-core/commands/terminal.c:262 -msgid "Available output terminals:" -msgstr "ДоÑтупни терминали излаза:" - -#: grub-core/commands/terminal.c:271 grub-core/commands/terminal.c:276 -msgid "[--append|--remove] [TERMINAL1] [TERMINAL2] ..." -msgstr "[--append|--remove] [ТЕРМИÐÐЛ1] [ТЕРМИÐÐЛ2] ..." - -#: grub-core/commands/terminal.c:273 -msgid "List or select an input terminal." -msgstr "ИÑпиÑује или бира терминал улаза." - -#: grub-core/commands/terminal.c:278 -msgid "List or select an output terminal." -msgstr "ИÑпиÑује или бира терминал излаза." - -#: grub-core/commands/test.c:444 -msgid "EXPRESSION ]" -msgstr "ИЗРÐЗ ]" - -#: grub-core/commands/test.c:444 grub-core/commands/test.c:447 -msgid "Evaluate an expression." -msgstr "Процењује израз." - -#: grub-core/commands/test.c:447 -msgid "EXPRESSION" -msgstr "ИЗРÐЗ" - -#: grub-core/commands/testload.c:164 -msgid "Load the same file in multiple ways." -msgstr "Учитава иÑту датотеку на више начина." - -#: grub-core/commands/testspeed.c:35 -msgid "Specify size for each read operation" -msgstr "Ðаводи величину за Ñваку радњу читања" - -#: grub-core/commands/testspeed.c:58 -msgid "invalid block size" -msgstr "неиÑправна величина блока" - -#: grub-core/commands/testspeed.c:80 -#, c-format -msgid "File size: %s\n" -msgstr "Величина датотеке: %s\n" - -#: grub-core/commands/testspeed.c:83 -#, c-format -msgid "Elapsed time: %d.%03d s \n" -msgstr "Протекло време: %d.%03d s \n" - -#: grub-core/commands/testspeed.c:92 -#, c-format -msgid "Speed: %s \n" -msgstr "Брзина: %s \n" - -#: grub-core/commands/testspeed.c:107 -msgid "[-s SIZE] FILENAME" -msgstr "[-s ВЕЛИЧИÐÐ] ДÐТОТЕКÐ" - -#: grub-core/commands/testspeed.c:108 -msgid "Test file read speed." -msgstr "Проверава брзину читања датотеке." - -#: grub-core/commands/time.c:38 grub-core/script/execute.c:974 -msgid "no command is specified" -msgstr "није наведена ниједна наредба" - -#: grub-core/commands/time.c:50 -#, c-format -msgid "Elapsed time: %d.%03d seconds \n" -msgstr "Протекло време: %d.%03d Ñекунде \n" - -#: grub-core/commands/time.c:61 -msgid "COMMAND [ARGS]" -msgstr "ÐÐРЕДБР[ÐРГУМЕÐТИ]" - -#: grub-core/commands/time.c:62 -msgid "Measure time used by COMMAND" -msgstr "Мери време које кориÑти ÐÐРЕДБÐ" - -#: grub-core/commands/tr.c:33 -msgid "Translate to upper case." -msgstr "Преводи на велика Ñлова." - -#: grub-core/commands/tr.c:34 -msgid "Translate to lower case." -msgstr "Преводи на мала Ñлова." - -#: grub-core/commands/tr.c:119 -msgid "[OPTIONS] [SET1] [SET2] [STRING]" -msgstr "[ОПЦИЈЕ] [СКУП1] [СКУП2] [ÐИСКÐ]" - -#: grub-core/commands/tr.c:120 -msgid "Translate SET1 characters to SET2 in STRING." -msgstr "Преводи знакове СКУПÐ1 у СКУП2 у ÐИСКИ." - -#. TRANSLATORS: it's a command description. -#: grub-core/commands/true.c:50 -msgid "Do nothing, successfully." -msgstr "Ðе ради ништа, уÑпешно." - -#. TRANSLATORS: it's a command description. -#: grub-core/commands/true.c:54 -msgid "Do nothing, unsuccessfully." -msgstr "Ðе ради ништа, неуÑпешно." - -#: grub-core/commands/usbtest.c:221 -msgid "Test USB support." -msgstr "ИÑпробава УСБ подршку." - -#: grub-core/commands/verifiers.c:120 -#, c-format -msgid "verification requested but nobody cares: %s" -msgstr "" - -#: grub-core/commands/verifiers.c:140 -#, fuzzy -msgid "big file signature isn't implemented yet" -msgstr "премештање 0x%x још није примењено" - -#: grub-core/commands/videoinfo.c:61 -msgid "Text-only " -msgstr "Само текÑÑ‚ " - -#. TRANSLATORS: "Direct color" is a mode when the color components -#. are written dirrectly into memory. -#: grub-core/commands/videoinfo.c:66 -#, c-format -msgid "Direct color, mask: %d/%d/%d/%d pos: %d/%d/%d/%d" -msgstr "Директна боја, маÑка: %d/%d/%d/%d положај: %d/%d/%d/%d" - -#. TRANSLATORS: In "paletted color" mode you write the index of the color -#. in the palette. Synonyms include "packed pixel". -#: grub-core/commands/videoinfo.c:78 -msgid "Paletted " -msgstr "Палетирано " - -#: grub-core/commands/videoinfo.c:80 -msgid "YUV " -msgstr "ЈУВ " - -#. TRANSLATORS: "Planar" is the video memory where you have to write -#. in several different banks "plans" to control the different color -#. components of the same pixel. -#: grub-core/commands/videoinfo.c:85 -msgid "Planar " -msgstr "Планар " - -#: grub-core/commands/videoinfo.c:87 -msgid "Hercules " -msgstr "Ð¥ÐµÑ€ÐºÑƒÐ»ÐµÑ " - -#: grub-core/commands/videoinfo.c:89 -msgid "CGA " -msgstr "ЦГР" - -#. TRANSLATORS: Non-chain 4 is a 256-color planar -#. (unchained) video memory mode. -#: grub-core/commands/videoinfo.c:93 -msgid "Non-chain 4 " -msgstr "Ðе-ланчани 4 " - -#: grub-core/commands/videoinfo.c:95 -msgid "Monochrome " -msgstr "МонохроматÑки " - -#: grub-core/commands/videoinfo.c:97 -msgid "Unknown video mode " -msgstr "Ðепознати режим Ñнимка " - -#: grub-core/commands/videoinfo.c:111 -msgid " EDID checksum invalid" -msgstr " неиÑправна ЕДИД провера Ñуме" - -#: grub-core/commands/videoinfo.c:116 -#, c-format -msgid " EDID version: %u.%u\n" -msgstr " издање ЕДИБ-а: %u.%u\n" - -#: grub-core/commands/videoinfo.c:120 -#, c-format -msgid " Preferred mode: %ux%u\n" -msgstr " Жељени режим: %ux%u\n" - -#: grub-core/commands/videoinfo.c:123 -msgid " No preferred mode available\n" -msgstr " Жељени режим није доÑтупан\n" - -#: grub-core/commands/videoinfo.c:146 grub-core/video/video.c:490 -#: grub-core/video/video.c:498 grub-core/video/video.c:509 -#: grub-core/video/video.c:520 grub-core/video/video.c:528 -#, c-format -msgid "invalid video mode specification `%s'" -msgstr "неиÑправна одредба режима Ñнимка „%s“" - -#: grub-core/commands/videoinfo.c:168 -msgid "List of supported video modes:" -msgstr "СпиÑак подржаних режима Ñнимка:" - -#: grub-core/commands/videoinfo.c:169 -msgid "Legend: mask/position=red/green/blue/reserved" -msgstr "Легенда: маÑка/положај=црвена/зелена/плава/резервиÑана" - -#: grub-core/commands/videoinfo.c:176 -#, c-format -msgid "Adapter `%s':\n" -msgstr "Прилагођивач „%s“:\n" - -#: grub-core/commands/videoinfo.c:180 -msgid " No info available" -msgstr " ÐиÑу доÑтупни подаци" - -#: grub-core/commands/videoinfo.c:198 -msgid " Failed to initialize video adapter" -msgstr " ÐиÑам уÑпео да покренем прилагођивач Ñнимка" - -#. TRANSLATORS: "x" has to be entered in, -#. like an identifier, so please don't -#. use better Unicode codepoints. -#: grub-core/commands/videoinfo.c:239 grub-core/commands/videoinfo.c:248 -msgid "[WxH[xD]]" -msgstr "[ШxÐ’[xД]]" - -#: grub-core/commands/videoinfo.c:240 grub-core/commands/videoinfo.c:249 -msgid "" -"List available video modes. If resolution is given show only modes matching " -"it." -msgstr "" -"ИÑпиÑује доÑтупне режиме Ñнимка. Ðко је резолуција дата приказује Ñамо " -"режиме који јој одговарају." - -#. TRANSLATORS: "x" has to be entered in, -#. like an identifier, so please don't -#. use better Unicode codepoints. -#: grub-core/commands/videotest.c:225 -msgid "[WxH]" -msgstr "[ШxÐ’]" - -#. TRANSLATORS: Here, on the other hand, it's -#. nicer to use unicode cross instead of x. -#: grub-core/commands/videotest.c:228 -msgid "Test video subsystem in mode WxH." -msgstr "ИÑпробава подÑиÑтем Ñнимка у режиму ШxÐ’." - -#: grub-core/commands/videotest.c:231 -msgid "Test video subsystem." -msgstr "ИÑпробава подÑиÑтем Ñнимка." - -#: grub-core/commands/xen/lsxen.c:80 grub-core/commands/xen/lsxen.c:82 -msgid "[DIR]" -msgstr "[ДИР]" - -#: grub-core/commands/xen/lsxen.c:81 grub-core/commands/xen/lsxen.c:83 -msgid "List Xen storage." -msgstr "ИÑпиÑује ИкÑен Ñмештај." - -#. TRANSLATORS: GRUBUUID stands for "filesystem -#. UUID as used in GRUB". -#: grub-core/commands/xnu_uuid.c:110 -msgid "[-l] GRUBUUID [VARNAME]" -msgstr "[-l] ГРУБУУИБ [ÐÐЗИВПРОМЕÐЉИВЕ]" - -#: grub-core/commands/xnu_uuid.c:111 -msgid "" -"Transform 64-bit UUID to format suitable for XNU. If -l is given keep it " -"lowercase as done by blkid." -msgstr "" -"Претвара 64-битни УУИБ у Ð·Ð°Ð¿Ð¸Ñ Ð¿Ñ€Ð¸Ð³Ð¾Ð´Ð°Ð½ за ИкÑÐУ. Ðко је дато „-l“ држига " -"малим Ñловима као што је урађено блкид-ом." - -#: grub-core/disk/arc/arcdisk.c:248 grub-core/disk/efi/efidisk.c:603 -#: grub-core/disk/i386/pc/biosdisk.c:498 grub-core/disk/i386/pc/biosdisk.c:543 -#: grub-core/disk/ieee1275/nand.c:198 grub-core/disk/ieee1275/obdisk.c:527 -#: grub-core/disk/ieee1275/ofdisk.c:586 -#, c-format -msgid "failure reading sector 0x%llx from `%s'" -msgstr "неуÑпех читања Ñектора 0x%llx из „%s“" - -#: grub-core/disk/arc/arcdisk.c:284 grub-core/disk/efi/efidisk.c:626 -#: grub-core/disk/i386/pc/biosdisk.c:548 grub-core/disk/ieee1275/ofdisk.c:606 -#, c-format -msgid "failure writing sector 0x%llx to `%s'" -msgstr "неуÑпех пиÑања Ñектора 0x%llx у „%s“" - -#: grub-core/disk/cryptodisk.c:40 -msgid "Mount by UUID." -msgstr "Прикачиње УУИБ-ом." - -#. TRANSLATORS: It's still restricted to cryptodisks only. -#: grub-core/disk/cryptodisk.c:42 -msgid "Mount all." -msgstr "Прикачиње Ñве." - -#: grub-core/disk/cryptodisk.c:43 -msgid "Mount all volumes with `boot' flag set." -msgstr "Прикачиње Ñве уређаје Ñа поÑтављеном заÑтавицом „boot“." - -#. TRANSLATORS: The first %s is the file being looked at, the second %s is -#. the error message. -#: grub-core/disk/cryptodisk.c:526 grub-core/kern/emu/hostdisk.c:152 -#: grub-core/kern/emu/hostdisk.c:262 grub-core/kern/emu/hostdisk.c:434 -#: grub-core/kern/emu/misc.c:168 grub-core/kern/emu/misc.c:174 -#: grub-core/kern/emu/misc.c:196 grub-core/osdep/bsd/getroot.c:92 -#: grub-core/osdep/bsd/getroot.c:168 grub-core/osdep/hurd/getroot.c:68 -#: grub-core/osdep/linux/blocklist.c:65 grub-core/osdep/linux/getroot.c:150 -#: grub-core/osdep/linux/hostdisk.c:194 grub-core/osdep/linux/hostdisk.c:421 -#: grub-core/osdep/linux/ofpath.c:417 grub-core/osdep/linux/ofpath.c:422 -#: grub-core/osdep/linux/ofpath.c:517 grub-core/osdep/linux/ofpath.c:530 -#: grub-core/osdep/sun/getroot.c:110 grub-core/osdep/windows/blocklist.c:98 -#: grub-core/tests/video_checksum.c:279 util/editenv.c:46 util/glue-efi.c:115 -#: util/glue-efi.c:120 util/glue-efi.c:130 util/grub-editenv.c:138 -#: util/grub-editenv.c:192 util/grub-file.c:83 util/grub-fstest.c:128 -#: util/grub-fstest.c:568 util/grub-install-common.c:92 -#: util/grub-install-common.c:94 util/grub-install-common.c:101 -#: util/grub-install-common.c:529 util/grub-menulst2cfg.c:53 -#: util/grub-menulst2cfg.c:68 util/grub-mkimage.c:292 util/grub-mklayout.c:504 -#: util/grub-mklayout.c:516 util/grub-mknetdir.c:133 util/grub-mknetdir.c:151 -#: util/grub-mkrescue.c:627 util/grub-mkrescue.c:631 util/grub-mkrescue.c:879 -#: util/grub-mkrescue.c:883 util/grub-mkstandalone.c:253 util/grub-mount.c:498 -#: util/grub-render-label.c:169 util/grub-script-check.c:175 -#: util/grub-syslinux2cfg.c:181 util/grub-syslinux2cfg.c:191 -#: util/grub-syslinux2cfg.c:212 util/grub-syslinux2cfg.c:228 util/misc.c:91 -#: util/render-label.c:76 util/render-label.c:163 util/render-label.c:174 -#: util/resolve.c:246 util/setup.c:783 -#, c-format -msgid "cannot open `%s': %s" -msgstr "не могу да отворим „%s“: %s" - -#: grub-core/disk/cryptodisk.c:583 grub-core/disk/cryptodisk.c:628 -#: grub-core/kern/emu/hostdisk.c:270 grub-core/kern/emu/hostfs.c:142 -#: grub-core/osdep/linux/hostdisk.c:456 util/grub-editenv.c:143 -#: util/grub-editenv.c:149 util/grub-fstest.c:320 util/misc.c:111 -#, c-format -msgid "cannot seek `%s': %s" -msgstr "не могу да премотам „%s“: %s" - -#: grub-core/disk/cryptodisk.c:1144 -msgid "SOURCE|-u UUID|-a|-b" -msgstr "ИЗВОР|-u УУИБ|-a|-b" - -#: grub-core/disk/cryptodisk.c:1145 -msgid "Mount a crypto device." -msgstr "Прикачиње уређај шифровања." - -#. TRANSLATORS: This message kicks in during the detection of -#. which modules needs to be included in core image. This happens -#. in the case of degraded RAID and means that autodetection may -#. fail to include some of modules. It's an installation time -#. message, not runtime message. -#: grub-core/disk/diskfilter.c:343 grub-core/disk/diskfilter.c:376 -#, c-format -msgid "" -"Couldn't find physical volume `%s'. Some modules may be missing from core " -"image." -msgstr "" -"Ðе могу да пронађем физички волумен „%s“. Можда недоÑтају неки модули из " -"Ñлике језгра." - -#: grub-core/disk/diskfilter.c:480 -#, c-format -msgid "physical volume %s not found" -msgstr "ниÑам нашао физички волумен „%s“" - -#: grub-core/disk/efi/efidisk.c:600 grub-core/disk/efi/efidisk.c:623 -#, c-format -msgid "no media in `%s'" -msgstr "нема медија у „%s“" - -#: grub-core/disk/geli.c:75 -msgid "Couldn't load sha256" -msgstr "Ðе могу да учитам „sha256“" - -#: grub-core/disk/geli.c:85 -msgid "Couldn't load sha512" -msgstr "Ðе могу да учитам „sha512“" - -#: grub-core/disk/geli.c:216 grub-core/disk/geli.c:220 -msgid "couldn't read ELI metadata" -msgstr "не могу да прочитам ЕЛИ метаподатке" - -#: grub-core/disk/geli.c:231 -msgid "wrong ELI magic or version" -msgstr "погрешна ЕЛИ магија или издање" - -#: grub-core/disk/geli.c:435 grub-core/disk/luks.c:329 -msgid "Attempting to decrypt master key..." -msgstr "Покушавам да дешифрујем главни кључ..." - -#: grub-core/disk/geli.c:441 grub-core/disk/luks.c:347 -#, c-format -msgid "Enter passphrase for %s%s%s (%s): " -msgstr "УнеÑите лозинку за %s%s%s (%s): " - -#. TRANSLATORS: It's a cryptographic key slot: one element of an array -#. where each element is either empty or holds a key. -#: grub-core/disk/geli.c:530 grub-core/disk/luks.c:451 -#, c-format -msgid "Slot %d opened\n" -msgstr "Подножје „%d“ је отворено\n" - -#: grub-core/disk/i386/pc/biosdisk.c:470 grub-core/disk/i386/pc/biosdisk.c:524 -#: grub-core/disk/i386/pc/biosdisk.c:534 grub-core/kern/disk_common.c:47 -#, c-format -msgid "attempt to read or write outside of disk `%s'" -msgstr "покушавам да читам или пишем ван диÑка „%s“" - -#: grub-core/disk/i386/pc/biosdisk.c:491 grub-core/disk/i386/pc/biosdisk.c:611 -#: grub-core/disk/scsi.c:726 -msgid "cannot write to CD-ROM" -msgstr "не могу да пишем на ЦД-РОМ" - -#: grub-core/disk/i386/pc/biosdisk.c:662 -msgid "" -"Native disk drivers are in use. Refusing to use firmware disk interface." -msgstr "" -"Изворни управљачки програми диÑка Ñу у употреби. Одбијам да кориÑтим Ñучеље " -"диÑка уграђеног програма." - -#. TRANSLATORS: it's a partition for embedding, -#. not a partition embed into something. GRUB -#. install tools put core.img into a place -#. usable for bootloaders (called generically -#. "embedding zone") and this operation is -#. called "embedding". -#: grub-core/disk/ldm.c:1015 -msgid "your LDM Embedding Partition is too small; embedding won't be possible" -msgstr "ЛДМ партиција уграђивања је премала; уграђивање неће бити могуће" - -#. TRANSLATORS: it's a partition for embedding, -#. not a partition embed into something. -#: grub-core/disk/ldm.c:1033 -msgid "this LDM has no Embedding Partition; embedding won't be possible" -msgstr "овај ЛДМ нема партицију уграђивања; уграђивање неће бити могуће" - -#. TRANSLATORS: The disk is simply removed from the list of available ones, -#. not wiped, avoid to scare user. -#: grub-core/disk/loopback.c:45 -msgid "Delete the specified loopback drive." -msgstr "Брише наведени уређај повратне петље." - -#: grub-core/disk/loopback.c:237 -msgid "[-d] DEVICENAME FILE." -msgstr "[-d] ÐÐЗИВУРЕЂÐЈРДÐТОТЕКÐ." - -#. TRANSLATORS: The file itself is not destroyed -#. or transformed into drive. -#: grub-core/disk/loopback.c:240 -msgid "Make a virtual drive from a file." -msgstr "Прави виртуелни уређај из датотеке." - -#: grub-core/efiemu/i386/loadcore32.c:111 -#: grub-core/efiemu/i386/loadcore64.c:125 grub-core/kern/arm/dl.c:256 -#: grub-core/kern/arm64/dl.c:187 grub-core/kern/i386/dl.c:75 -#: grub-core/kern/ia64/dl.c:140 grub-core/kern/mips/dl.c:258 -#: grub-core/kern/powerpc/dl.c:163 grub-core/kern/riscv/dl.c:334 -#: grub-core/kern/sparc64/dl.c:180 grub-core/kern/x86_64/dl.c:110 -#: util/grub-mkimagexx.c:756 util/grub-mkimagexx.c:881 -#: util/grub-mkimagexx.c:945 util/grub-mkimagexx.c:1026 -#: util/grub-mkimagexx.c:1120 util/grub-mkimagexx.c:1222 -#: util/grub-mkimagexx.c:1413 util/grub-mkimagexx.c:1628 -#: util/grub-mkimagexx.c:1665 util/grub-mkimagexx.c:1697 -#: util/grub-mkimagexx.c:1767 util/grub-mkimagexx.c:1797 -#, c-format -msgid "relocation 0x%x is not implemented yet" -msgstr "премештање 0x%x још није примењено" - -#: grub-core/efiemu/loadcore.c:200 grub-core/efiemu/loadcore.c:237 -#: grub-core/loader/i386/bsdXX.c:317 util/grub-mkimagexx.c:2360 -msgid "no symbol table" -msgstr "нема табеле Ñимбола" - -#: grub-core/efiemu/loadcore.c:346 grub-core/kern/dl.c:609 -#: grub-core/loader/ia64/efi/linux.c:345 grub-core/loader/mips/linux.c:248 -#: grub-core/loader/multiboot_elfxx.c:76 -#: grub-core/loader/powerpc/ieee1275/linux.c:280 -#: grub-core/loader/sparc64/ieee1275/linux.c:320 -msgid "this ELF file is not of the right type" -msgstr "ова ЕЛФ датотека није праве врÑте" - -#: grub-core/efiemu/main.c:313 -msgid "Load and initialize EFI emulator." -msgstr "Учитава и покреће ЕФИ опонашавача." - -#: grub-core/efiemu/main.c:317 -msgid "Finalize loading of EFI emulator." -msgstr "Завршава учитавање ЕФИ опонашавача." - -#: grub-core/efiemu/main.c:320 -msgid "Unload EFI emulator." -msgstr "Поништава учитавање ЕФИ опонашавача." - -#: grub-core/efiemu/symbols.c:92 grub-core/kern/dl.c:376 -#, c-format -msgid "symbol `%s' not found" -msgstr "ниÑам нашао Ñимбол „%s“" - -#: grub-core/font/font_cmd.c:52 -msgid "Loaded fonts:" -msgstr "Учитани Ñловни ликови:" - -#: grub-core/font/font_cmd.c:74 -msgid "FILE..." -msgstr "ДÐТОТЕКÐ..." - -#: grub-core/font/font_cmd.c:75 -msgid "Specify one or more font files to load." -msgstr "Ðаводи једну или више датотека Ñловних ликова за учитавање." - -#: grub-core/font/font_cmd.c:78 -msgid "List the loaded fonts." -msgstr "ИÑпиÑује учитане Ñловне ликове." - -#: grub-core/fs/archelp.c:216 grub-core/fs/archelp.c:278 -#: grub-core/fs/btrfs.c:1815 grub-core/fs/fshelp.c:227 grub-core/fs/jfs.c:736 -#: grub-core/fs/minix.c:369 grub-core/fs/ufs.c:454 -msgid "too deep nesting of symlinks" -msgstr "предубоко угнежђење Ñимболичких веза" - -#: grub-core/fs/bfs.c:228 grub-core/fs/fshelp.c:368 grub-core/fs/minix.c:270 -#: grub-core/kern/file.c:156 -msgid "attempt to read past the end of file" -msgstr "покушава да чита прошли крај датотеке" - -#: grub-core/fs/btrfs.c:1698 grub-core/fs/btrfs.c:1957 -#: grub-core/fs/fshelp.c:189 grub-core/fs/fshelp.c:309 grub-core/fs/jfs.c:431 -#: grub-core/fs/minix.c:414 grub-core/fs/minix.c:562 -#: grub-core/fs/reiserfs.c:732 grub-core/fs/ufs.c:531 grub-core/fs/ufs.c:671 -#: grub-core/fs/zfs/zfs.c:2831 grub-core/fs/zfs/zfs.c:4247 -msgid "not a directory" -msgstr "није директоријум" - -#: grub-core/fs/btrfs.c:2063 grub-core/fs/fshelp.c:307 grub-core/fs/jfs.c:835 -#: grub-core/fs/zfs/zfs.c:3801 -msgid "not a regular file" -msgstr "није обична датотека" - -#: grub-core/fs/btrfs.c:2157 grub-core/fs/zfs/zfs.c:4333 -#: grub-core/partmap/msdos.c:400 -msgid "your core.img is unusually large. It won't fit in the embedding area" -msgstr "" -"ваша „core.img“ је неуобичајено велика. Ðеће Ñтати у облаÑти уграђивања" - -#: grub-core/fs/fshelp.c:281 grub-core/fs/minix.c:630 grub-core/fs/ufs.c:661 -#: grub-core/fs/ufs.c:757 grub-core/kern/fs.c:168 grub-core/kern/fs.c:180 -#, c-format -msgid "invalid file name `%s'" -msgstr "неиÑправан назив датотеке „%s“" - -#: grub-core/fs/zfs/zfs.c:453 -msgid "checksum verification failed" -msgstr "није уÑпело потврђивање провере Ñуме" - -#: grub-core/fs/zfs/zfs.c:1465 -msgid "couldn't find a necessary member device of multi-device filesystem" -msgstr "" -"не могу да нађем потребног уређаја члана ÑиÑтема датотека Ñа више уређаја" - -#: grub-core/fs/zfs/zfscrypt.c:292 -msgid "no decryption key available" -msgstr "није доÑтупан кључ опиÑа" - -#: grub-core/fs/zfs/zfscrypt.c:304 -msgid "MAC verification failed" -msgstr "није уÑпело МÐК потврђивање" - -#: grub-core/fs/zfs/zfscrypt.c:413 -msgid "Assume input is raw." -msgstr "Сматра да је улаз Ñиров." - -#: grub-core/fs/zfs/zfscrypt.c:414 -msgid "Assume input is hex." -msgstr "Сматра да је улаз хекÑадецимални." - -#: grub-core/fs/zfs/zfscrypt.c:415 -msgid "Assume input is passphrase." -msgstr "Сматра да је улаз пропуÑна реч." - -#: grub-core/fs/zfs/zfscrypt.c:437 util/grub-fstest.c:553 util/grub-mount.c:483 -msgid "Enter ZFS password: " -msgstr "УнеÑите ЗФС лозинку: " - -#: grub-core/fs/zfs/zfscrypt.c:476 -msgid "[-h|-p|-r] [FILE]" -msgstr "[-h|-p|-r] [ДÐТОТЕКÐ]" - -#: grub-core/fs/zfs/zfscrypt.c:477 -msgid "Import ZFS wrapping key stored in FILE." -msgstr "Кључ ЗФС омотавања увоза Ñмештен у ДÐТОТЕЦИ." - -#: grub-core/fs/zfs/zfsinfo.c:51 -msgid "Virtual device is removed" -msgstr "Виртуелни уређај је уклоњен" - -#: grub-core/fs/zfs/zfsinfo.c:57 -msgid "Virtual device is faulted" -msgstr "Виртуелни уређај је неуÑпео" - -#: grub-core/fs/zfs/zfsinfo.c:63 -msgid "Virtual device is offline" -msgstr "Виртуелни уређај је ван линије" - -#. TRANSLATORS: degraded doesn't mean broken but that some of -#. component are missing but virtual device as whole is still usable. -#: grub-core/fs/zfs/zfsinfo.c:70 -msgid "Virtual device is degraded" -msgstr "Виртуелни уређај је деградиран" - -#: grub-core/fs/zfs/zfsinfo.c:73 -msgid "Virtual device is online" -msgstr "Виртуелни уређај је на линији" - -#: grub-core/fs/zfs/zfsinfo.c:89 -msgid "Incorrect virtual device: no type available" -msgstr "ÐеиÑправан виртуелни уређај: није доÑтупна врÑта" - -#. TRANSLATORS: The virtual devices form a tree (in graph-theoretical -#. sense). The nodes like mirror or raidz have children: member devices. -#. The "real" devices which actually store data are called "leafs" -#. (again borrowed from graph theory) and can be either disks -#. (or partitions) or files. -#: grub-core/fs/zfs/zfsinfo.c:105 -msgid "Leaf virtual device (file or disk)" -msgstr "ЛиÑÑ‚ виртуелног уређаја (датотека или диÑк)" - -#: grub-core/fs/zfs/zfsinfo.c:113 -msgid "Bootpath: unavailable\n" -msgstr "Путања подизања: недоÑтупно\n" - -#: grub-core/fs/zfs/zfsinfo.c:115 -#, c-format -msgid "Bootpath: %s\n" -msgstr "Путања подизања: %s\n" - -#: grub-core/fs/zfs/zfsinfo.c:120 -msgid "Path: unavailable" -msgstr "Путања: недоÑтупно" - -#: grub-core/fs/zfs/zfsinfo.c:122 -#, c-format -msgid "Path: %s\n" -msgstr "Путања: %s\n" - -#: grub-core/fs/zfs/zfsinfo.c:127 -msgid "Devid: unavailable" -msgstr "Уређиб: недоÑтупно" - -#: grub-core/fs/zfs/zfsinfo.c:129 -#, c-format -msgid "Devid: %s\n" -msgstr "Уређиб: %s\n" - -#: grub-core/fs/zfs/zfsinfo.c:148 -msgid "This VDEV is a mirror" -msgstr "Овај ВУРЕЂÐЈ је огледало" - -#: grub-core/fs/zfs/zfsinfo.c:153 -#, c-format -msgid "This VDEV is a RAIDZ%llu\n" -msgstr "Овај ВУРЕЂÐЈ је РÐИДЗ%llu\n" - -#: grub-core/fs/zfs/zfsinfo.c:158 -msgid "Incorrect VDEV" -msgstr "ÐеиÑправан ВУРЕЂÐЈ" - -#: grub-core/fs/zfs/zfsinfo.c:161 -#, c-format -msgid "VDEV with %d children\n" -msgstr "ВУРЕЂÐЈ Ñа %d детета\n" - -#. TRANSLATORS: it's the element carying the number %d, not -#. total element number. And the number itself is fine, -#. only the element isn't. -#. -#: grub-core/fs/zfs/zfsinfo.c:177 -#, c-format -msgid "VDEV element number %d isn't correct\n" -msgstr "Елемент ВУРЕЂ-аја број %d није тачан\n" - -#. TRANSLATORS: it's the element carying the number %d, not -#. total element number. This is used in enumeration -#. "Element number 1", "Element number 2", ... -#: grub-core/fs/zfs/zfsinfo.c:184 -#, c-format -msgid "VDEV element number %d:\n" -msgstr "Елемент ВУРЕЂ-аја број %d:\n" - -#: grub-core/fs/zfs/zfsinfo.c:193 -#, c-format -msgid "Unknown virtual device type: %s\n" -msgstr "Ðепозната врÑта виртуелног уређаја: %s\n" - -#. TRANSLATORS: Here we speak about ZFS pools it's semi-marketing, -#. semi-technical term by Sun/Oracle and should be translated in sync with -#. other ZFS-related software and documentation. -#: grub-core/fs/zfs/zfsinfo.c:254 -msgid "Pool state: active" -msgstr "Стање Ñпремишта: активно" - -#: grub-core/fs/zfs/zfsinfo.c:255 -msgid "Pool state: exported" -msgstr "Стање Ñпремишта: извезено" - -#: grub-core/fs/zfs/zfsinfo.c:256 -msgid "Pool state: destroyed" -msgstr "Стање Ñпремишта: уништено" - -#: grub-core/fs/zfs/zfsinfo.c:257 -msgid "Pool state: reserved for hot spare" -msgstr "Стање Ñпремишта: резервиÑано за врућу замену" - -#: grub-core/fs/zfs/zfsinfo.c:258 -msgid "Pool state: level 2 ARC device" -msgstr "Стање Ñпремишта: ÐРЦ уређај 2. нивоа" - -#: grub-core/fs/zfs/zfsinfo.c:259 -msgid "Pool state: uninitialized" -msgstr "Стање Ñпремишта: непокренуто" - -#: grub-core/fs/zfs/zfsinfo.c:260 -msgid "Pool state: unavailable" -msgstr "Стање Ñпремишта: недоÑтупно" - -#: grub-core/fs/zfs/zfsinfo.c:261 -msgid "Pool state: potentially active" -msgstr "Стање Ñпремишта: потенцијално активно" - -#: grub-core/fs/zfs/zfsinfo.c:306 -msgid "Pool name: unavailable" -msgstr "Ðазив Ñпремишта: недоÑтупно" - -#: grub-core/fs/zfs/zfsinfo.c:308 -#, c-format -msgid "Pool name: %s\n" -msgstr "Ðазив Ñпремишта: %s\n" - -#: grub-core/fs/zfs/zfsinfo.c:313 -msgid "Pool GUID: unavailable" -msgstr "ГУИБ Ñпремишта: недоÑтупно" - -#: grub-core/fs/zfs/zfsinfo.c:315 -#, c-format -msgid "Pool GUID: %016llx\n" -msgstr "ГУИБ Ñпремишта: %016llx\n" - -#: grub-core/fs/zfs/zfsinfo.c:320 -msgid "Unable to retrieve pool state" -msgstr "Ðе могу да довучем Ñтање Ñпремишта" - -#: grub-core/fs/zfs/zfsinfo.c:322 -msgid "Unrecognized pool state" -msgstr "Ðепознато Ñтање Ñпремишта" - -#. TRANSLATORS: There are undetermined number of virtual devices -#. in a device tree, not just one. -#. -#: grub-core/fs/zfs/zfsinfo.c:332 -msgid "No virtual device tree available" -msgstr "Ðије доÑтупно Ñтабло виртуелног уређаја" - -#: grub-core/fs/zfs/zfsinfo.c:431 -msgid "Print ZFS info about DEVICE." -msgstr "ИÑпиÑује ЗСФ податке о УРЕЂÐЈУ." - -#: grub-core/fs/zfs/zfsinfo.c:433 -msgid "FILESYSTEM [VARIABLE]" -msgstr "СИСТЕМ_ДÐТОТЕКР[ПРОМЕÐЉИВÐ]" - -#: grub-core/fs/zfs/zfsinfo.c:434 -msgid "Print ZFS-BOOTFSOBJ or store it into VARIABLE" -msgstr "ИÑпиÑује ЗФС-ОБЈЕКÐТФСПОДИЗÐЊРили га Ñмешта у ПРОМЕÐЉИВОЈ" - -#. TRANSLATORS: at this position GRUB waits for the user to do an action -#. in remote debugger, namely to tell it to establish connection. -#: grub-core/gdb/gdb.c:48 -msgid "Now connect the remote debugger, please." -msgstr "Сада прикључите удаљеног прочишћавача." - -#. TRANSLATORS: GDB stub is a small part of -#. GDB functionality running on local host -#. which allows remote debugger to -#. connect to it. -#: grub-core/gdb/gdb.c:84 -msgid "Start GDB stub on given port" -msgstr "Покреће ГДБ одÑечак на датом прикључнику" - -#. TRANSLATORS: this refers to triggering -#. a breakpoint so that the user will land -#. into GDB. -#: grub-core/gdb/gdb.c:89 -msgid "Break into GDB" -msgstr "Прекида у ГДБ-у" - -#: grub-core/gdb/gdb.c:91 -msgid "Stop GDB stub" -msgstr "ЗауÑтавља ГДБ одÑечак" - -#: grub-core/gettext/gettext.c:85 -msgid "premature end of file" -msgstr "прерани крај датотеке" - -#. TRANSLATORS: It refers to passing the string through gettext. -#. So it's "translate" in the same meaning as in what you're -#. doing now. -#. -#: grub-core/gettext/gettext.c:525 -msgid "Translates the string with the current settings." -msgstr "Преводи ниÑку Ñа текућим подешавањима." - -#: grub-core/gfxmenu/gui_label.c:186 grub-core/normal/menu_text.c:184 -msgid "" -"Press enter to boot the selected OS, `e' to edit the commands before booting " -"or `c' for a command-line. ESC to return previous menu." -msgstr "" -"ПритиÑните „унеÑи“ да подигнете изабрани ОС, „e“ да измените наредбе пре " -"подизања или „c“ за линију наредби. „ЕСЦ“ да Ñе вратите на претходни " -"изборник." - -#: grub-core/gfxmenu/gui_label.c:190 grub-core/normal/menu_text.c:192 -msgid "" -"Press enter to boot the selected OS, `e' to edit the commands before booting " -"or `c' for a command-line." -msgstr "" -"ПритиÑните „унеÑи“ да подигнете изабрани ОС, „e“ да измените наредбе пре " -"подизања или „c“ за линију наредби." - -#: grub-core/gfxmenu/gui_label.c:194 -msgid "enter: boot, `e': options, `c': cmd-line" -msgstr "унеÑи: подизање, „e“: опције, „c“: линија наредби" - -#: grub-core/gfxmenu/gui_progress_bar.c:339 grub-core/normal/menu_text.c:446 -#, c-format -msgid "The highlighted entry will be executed automatically in %ds." -msgstr "ИÑтакнути ÑƒÐ½Ð¾Ñ Ð±Ð¸Ñ›Ðµ ÑамоÑтално извршен за %dÑ." - -#. TRANSLATORS: 's' stands for seconds. -#. It's a standalone timeout notification. -#. Please use the short form in your language. -#: grub-core/gfxmenu/gui_progress_bar.c:344 -#, c-format -msgid "%ds remaining." -msgstr "ПреоÑтало време: %d Ñек." - -#. TRANSLATORS: 's' stands for seconds. -#. It's a standalone timeout notification. -#. Please use the shortest form available in you language. -#: grub-core/gfxmenu/gui_progress_bar.c:349 grub-core/normal/menu_text.c:444 -#: grub-core/normal/menu_text.c:462 -#, c-format -msgid "%ds" -msgstr "%dÑек." - -#: grub-core/gfxmenu/view.c:103 -msgid "GRUB Boot Menu" -msgstr "Изборник подизања ГРУБ-а" - -#: grub-core/hello/hello.c:36 -msgid "Hello World" -msgstr "Здраво Ñвима" - -#: grub-core/hello/hello.c:45 -msgid "Say `Hello World'." -msgstr "Изговара „Поздрав Ñвима“." - -#: grub-core/io/gzio.c:409 grub-core/kern/file.c:210 -msgid "attempt to seek outside of the file" -msgstr "покушава да премота унутар датотеке" - -#. TRANSLATORS: It's about given file having some strange format, not -#. complete lack of gzip support. -#: grub-core/io/gzio.c:1228 grub-core/io/gzio.c:1237 grub-core/io/gzio.c:1244 -msgid "unsupported gzip format" -msgstr "неподржани Ð·Ð°Ð¿Ð¸Ñ Ð³Ð·Ð¸Ð¿-а" - -#: grub-core/io/lzopio.c:511 -msgid "lzop file corrupted" -msgstr "лзоп датотека је оштећена" - -#: grub-core/io/xzio.c:278 -msgid "xz file corrupted or unsupported block options" -msgstr "икÑз датотека је оштећена или ниÑу подржанеопције блока" - -#: grub-core/kern/arm/dl.c:277 grub-core/kern/arm64/dl.c:44 -#: grub-core/kern/i386/dl.c:36 grub-core/kern/ia64/dl.c:41 -#: grub-core/kern/mips/dl.c:48 grub-core/kern/powerpc/dl.c:36 -#: grub-core/kern/riscv/dl.c:47 grub-core/kern/sparc64/dl.c:36 -#: grub-core/kern/x86_64/dl.c:36 grub-core/loader/i386/bsd.c:1445 -#: grub-core/loader/i386/bsdXX.c:49 grub-core/loader/ia64/efi/linux.c:341 -#: grub-core/loader/mips/linux.c:298 grub-core/loader/multiboot.c:232 -#: grub-core/loader/multiboot_elfxx.c:73 -#: grub-core/loader/powerpc/ieee1275/linux.c:294 -#: grub-core/loader/sparc64/ieee1275/linux.c:331 -msgid "invalid arch-dependent ELF magic" -msgstr "неиÑправна ЕЛФ магија завиÑна од архитектуре" - -#: grub-core/kern/corecmd.c:178 -msgid "[ENVVAR=VALUE]" -msgstr "[ПРОМЕÐЉИВÐ_ОКРУЖЕЊÐ=ВРЕДÐОСТ]" - -#: grub-core/kern/corecmd.c:179 -msgid "Set an environment variable." -msgstr "ПоÑтавља променљиву окружења." - -#: grub-core/kern/corecmd.c:183 -msgid "ENVVAR" -msgstr "ПРОМЕÐЉИВÐ_ОКРУЖЕЊÐ" - -#: grub-core/kern/corecmd.c:184 -msgid "Remove an environment variable." -msgstr "Уклања променљиву окружења." - -#: grub-core/kern/corecmd.c:186 -msgid "[ARG]" -msgstr "[ÐРГ]" - -#: grub-core/kern/corecmd.c:186 -msgid "List devices or files." -msgstr "ИÑпиÑује уређаје или датотеке." - -#: grub-core/kern/corecmd.c:188 -msgid "Insert a module." -msgstr "Умеће модул." - -#: grub-core/kern/disk.c:236 grub-core/net/net.c:1390 -#, c-format -msgid "disk `%s' not found" -msgstr "ниÑам нашао диÑк „%s“" - -#: grub-core/kern/disk_common.c:27 -msgid "attempt to read or write outside of partition" -msgstr "покушавам да читам или пишем ван партиције" - -#: grub-core/kern/dl.c:212 grub-core/kern/elf.c:61 grub-core/kern/elf.c:79 -#: grub-core/loader/i386/bsdXX.c:46 grub-core/loader/ia64/efi/linux.c:335 -#: grub-core/loader/multiboot_elfxx.c:69 -msgid "invalid arch-independent ELF magic" -msgstr "неиÑправна ЕЛФ магија незавиÑна од архитектуре" - -#. TRANSLATORS: it refers to the lack of free slots. -#: grub-core/kern/emu/hostdisk.c:208 grub-core/kern/emu/hostdisk.c:466 -msgid "device count exceeds limit" -msgstr "број уређаја премашује ограничење" - -#: grub-core/kern/emu/hostdisk.c:342 util/editenv.c:54 util/grub-editenv.c:197 -#: util/grub-fstest.c:191 util/grub-mkfont.c:796 util/misc.c:114 -#: util/misc.c:129 util/setup.c:788 -#, c-format -msgid "cannot write to `%s': %s" -msgstr "не могу да пишем у „%s“: %s" - -#. TRANSLATORS: Only one entry is ignored. However the suggestion -#. is to correct/delete the whole file. -#. device.map is a file indicating which -#. devices are available at boot time. Fedora populated it with -#. entries like (hd0,1) /dev/sda1 which would mean that every -#. partition is a separate disk for BIOS. Such entries were -#. inactive in GRUB due to its bug which is now gone. Without -#. this additional check these entries would be harmful now. -#. -#: grub-core/kern/emu/hostdisk.c:503 -#, c-format -msgid "" -"the device.map entry `%s' is invalid. Ignoring it. Please correct or delete " -"your device.map" -msgstr "" -"ÑƒÐ½Ð¾Ñ â€ždevice.map“ „%s“ није иÑправан. Занемарујем га. ИÑправите или обришите " -"„device.map“" - -#. TRANSLATORS: device.map is a filename. Not to be translated. -#. device.map specifies disk correspondance overrides. Previously -#. one could create any kind of device name with this. Due to -#. some problems we decided to limit it to just a handful -#. possibilities. -#: grub-core/kern/emu/hostdisk.c:555 -#, c-format -msgid "" -"the drive name `%s' in device.map is incorrect. Using %s instead. Please use " -"the form [hfc]d[0-9]* (E.g. `hd0' or `cd')" -msgstr "" -"назив диÑка „%s“ у датотеци „device.map“ није иÑправан. КориÑтићу „%s“. " -"КориÑтите Ð·Ð°Ð¿Ð¸Ñ â€ž[hfc]d[0-9]*“ (Ðпр. „hd0“ или „cd“)" - -#: grub-core/kern/emu/hostfs.c:76 grub-core/kern/emu/hostfs.c:109 -#, c-format -msgid "can't open `%s': %s" -msgstr "не могу да отворим „%s“: %s" - -#: grub-core/kern/emu/main.c:99 util/grub-fstest.c:516 util/grub-mount.c:452 -msgid "DEVICE_NAME" -msgstr "ÐÐЗИВ_УРЕЂÐЈÐ" - -#: grub-core/kern/emu/main.c:99 grub-core/loader/i386/bsd.c:136 -#: grub-core/loader/i386/bsd.c:169 util/grub-fstest.c:516 util/grub-mount.c:452 -msgid "Set root device." -msgstr "ПоÑтавља корени уређај." - -#. TRANSLATORS: There are many devices in device map. -#: grub-core/kern/emu/main.c:102 util/grub-probe.c:733 util/grub-setup.c:85 -#, c-format -msgid "use FILE as the device map [default=%s]" -msgstr "кориÑти ДÐТОТЕКУ као карту уређаја [оÑновно=%s]" - -#. TRANSLATORS: There are many devices in device map. -#: grub-core/kern/emu/main.c:105 -msgid "use FILE as memdisk" -msgstr "кориÑти ДÐТОТЕКУ као меморијÑки диÑк" - -#: grub-core/kern/emu/main.c:107 util/grub-setup.c:83 -#, c-format -msgid "use GRUB files in the directory DIR [default=%s]" -msgstr "кориÑти датотеке ГРУБ-а у директоријуму ДИР [оÑновно=%s]" - -#: grub-core/kern/emu/main.c:108 include/grub/util/install.h:67 -#: util/grub-editenv.c:58 util/grub-fstest.c:525 util/grub-glue-efi.c:58 -#: util/grub-macbless.c:104 util/grub-mkfont.c:962 util/grub-mkimage.c:84 -#: util/grub-mklayout.c:56 util/grub-mount.c:458 util/grub-probe.c:735 -#: util/grub-render-label.c:74 util/grub-script-check.c:52 util/grub-setup.c:90 -#: util/grub-syslinux2cfg.c:78 -msgid "print verbose messages." -msgstr "иÑпиÑује опширне поруке." - -#: grub-core/kern/emu/main.c:109 grub-core/lib/gnulib/argp-parse.c:85 -msgid "SECS" -msgstr "СЕКУÐДЕ" - -#: grub-core/kern/emu/main.c:109 -msgid "wait until a debugger will attach" -msgstr "чека док Ñе не прикачи прочишћавач" - -#: grub-core/kern/emu/main.c:171 util/grub-macbless.c:143 -#: util/grub-mkrelpath.c:61 util/grub-probe.c:874 util/grub-script-check.c:75 -#: util/grub-setup.c:203 -#, c-format -msgid "Unknown extra argument `%s'." -msgstr "непознат додатни аргумент „%s“." - -#: grub-core/kern/emu/main.c:185 -msgid "GRUB emulator." -msgstr "Опонашавач ГРУБ-а." - -#: grub-core/kern/emu/main.c:213 util/grub-editenv.c:262 -#: util/grub-glue-efi.c:110 util/grub-macbless.c:173 util/grub-mkfont.c:1177 -#: util/grub-mkimage.c:266 util/grub-mklayout.c:494 -#: util/grub-mkpasswd-pbkdf2.c:132 util/grub-mkrelpath.c:96 -#: util/grub-probe.c:863 util/grub-render-label.c:152 -#: util/grub-script-check.c:160 util/grub-setup.c:262 -#: util/grub-syslinux2cfg.c:163 -msgid "Error in parsing command line arguments\n" -msgstr "Грешка аргументима обраде линије наредби\n" - -#. TRANSLATORS: In this case GRUB tells user what he has to do. -#: grub-core/kern/emu/main.c:248 -#, c-format -msgid "Run `gdb %s %d', and set ARGS.HOLD to zero.\n" -msgstr "Покреће „gdb %s %d“, и поÑтавља „ARGS.HOLD“ на нулу.\n" - -#: grub-core/kern/emu/misc.c:48 -#, c-format -msgid "%s: warning:" -msgstr "%s: упозорење:" - -#: grub-core/kern/emu/misc.c:64 -#, c-format -msgid "%s: info:" -msgstr "%s: подаци:" - -#: grub-core/kern/emu/misc.c:79 util/grub-fstest.c:567 util/grub-fstest.c:576 -#: util/grub-mount.c:497 util/grub-mount.c:505 -#, c-format -msgid "%s: error:" -msgstr "%s: грешка:" - -#: grub-core/kern/emu/misc.c:176 -#, c-format -msgid "file `%s' is too big" -msgstr "датотека „%s“ је превелика" - -#: grub-core/kern/fs.c:120 -msgid "unknown filesystem" -msgstr "непознат ÑиÑтем датотека" - -#: grub-core/kern/mips/arc/init.c:273 grub-core/kern/mips/loongson/init.c:301 -msgid "Shutdown failed" -msgstr "Ðије уÑпело иÑкључивање" - -#: grub-core/kern/mips/arc/init.c:285 -msgid "Exit failed" -msgstr "Излаз није уÑпео" - -#: grub-core/kern/misc.c:351 grub-core/kern/misc.c:408 include/grub/misc.h:269 -#: include/grub/misc.h:278 -msgid "overflow is detected" -msgstr "откривено је прекорачење" - -#: grub-core/kern/partition.c:51 grub-core/partmap/bsdlabel.c:108 -#, c-format -msgid "Discarding improperly nested partition (%s,%s,%s%d)" -msgstr "Одбацујем неправилно угнеждену партицију (%s,%s,%s%d)" - -#: grub-core/kern/rescue_parser.c:73 util/grub-editenv.c:292 -#, c-format -msgid "Unknown command `%s'.\n" -msgstr "Ðепозната наредба „%s“.\n" - -#: grub-core/lib/arg.c:31 -msgid "Display this help and exit." -msgstr "Приказује ову помоћ и излази." - -#: grub-core/lib/arg.c:33 -msgid "Display the usage of this command and exit." -msgstr "Приказује употребу ове наредбе и излази." - -#: grub-core/lib/arg.c:362 -#, c-format -msgid "missing mandatory option for `%s'" -msgstr "недоÑтаје обавезна опција за „%s“" - -#: grub-core/lib/arg.c:384 -#, c-format -msgid "the argument `%s' requires an integer" -msgstr "аргумент „%s“ захтева цео број" - -#: grub-core/lib/arg.c:407 -#, c-format -msgid "" -"a value was assigned to the argument `%s' while it doesn't require an " -"argument" -msgstr "вредноÑÑ‚ је додељена аргументу „%s“ иако не захтева аргумент" - -#: grub-core/lib/backtrace.c:64 -msgid "Print backtrace." -msgstr "ИÑпиÑује повратни траг." - -#: grub-core/lib/gnulib/argp-help.c:149 -#, c-format -msgid "ARGP_HELP_FMT: %s value is less than or equal to %s" -msgstr "ÐРГП_ПОМОЋ_ФМТ: %s вредноÑÑ‚ је мања или једнака Ñа %s" - -#: grub-core/lib/gnulib/argp-help.c:225 -#, c-format -msgid "%.*s: ARGP_HELP_FMT parameter requires a value" -msgstr "%.*s: ÐРГП_ПОМОЋ_ФМТ параметар захтева вредноÑÑ‚" - -#: grub-core/lib/gnulib/argp-help.c:235 -#, c-format -msgid "%.*s: Unknown ARGP_HELP_FMT parameter" -msgstr "%.*s: Ðепознат ÐРГП_ПОМОЋ_ФМТ параметар" - -#: grub-core/lib/gnulib/argp-help.c:248 -#, c-format -msgid "Garbage in ARGP_HELP_FMT: %s" -msgstr "Ђубре у „ÐРГП_ПОМОЋ_ФМТ“-у: %s" - -#: grub-core/lib/gnulib/argp-help.c:1229 -msgid "" -"Mandatory or optional arguments to long options are also mandatory or " -"optional for any corresponding short options." -msgstr "" -"Обавезни или изборни аргументи за дуге опције Ñу такође обавезни или изборни " -"за Ñваку одговарајућу кратку опцију." - -#: grub-core/lib/gnulib/argp-help.c:1620 -msgid " or: " -msgstr " или: " - -#: grub-core/lib/gnulib/argp-help.c:1632 -msgid " [OPTION...]" -msgstr " [ОПЦИЈÐ...]" - -#: grub-core/lib/gnulib/argp-help.c:1659 -#, c-format -msgid "Try '%s --help' or '%s --usage' for more information.\n" -msgstr "Пробајте „%s --help“ или „%s --usage“ за више података.\n" - -#: grub-core/lib/gnulib/argp-help.c:1687 -#, c-format -msgid "Report bugs to %s.\n" -msgstr "Грешке пријавите на %s.\n" - -#: grub-core/lib/gnulib/argp-help.c:1888 grub-core/lib/gnulib/error.c:195 -msgid "Unknown system error" -msgstr "Ðепозната ÑиÑтемÑка грешка" - -#: grub-core/lib/gnulib/argp-parse.c:81 -msgid "give this help list" -msgstr "даје овај ÑпиÑак помоћи" - -#: grub-core/lib/gnulib/argp-parse.c:82 -msgid "give a short usage message" -msgstr "даје кратку поруку о коришћењу" - -#: grub-core/lib/gnulib/argp-parse.c:83 util/grub-mkfont.c:946 -msgid "NAME" -msgstr "ÐÐЗИВ" - -#: grub-core/lib/gnulib/argp-parse.c:84 -msgid "set the program name" -msgstr "поÑтавља назив програма" - -#: grub-core/lib/gnulib/argp-parse.c:86 -msgid "hang for SECS seconds (default 3600)" -msgstr "заÑтаје на СЕК Ñекунде (оÑновно је 3600)" - -#: grub-core/lib/gnulib/argp-parse.c:143 -msgid "print program version" -msgstr "иÑпиÑује издање програма" - -#: grub-core/lib/gnulib/argp-parse.c:160 -msgid "(PROGRAM ERROR) No version known!?" -msgstr "(ГРЕШКРПРОГРÐМÐ) Издање није познато!?" - -#: grub-core/lib/gnulib/argp-parse.c:613 -#, c-format -msgid "%s: Too many arguments\n" -msgstr "%s: Превише аргумената\n" - -#: grub-core/lib/gnulib/argp-parse.c:759 -msgid "(PROGRAM ERROR) Option should have been recognized!?" -msgstr "(ГРЕШКРПРОГРÐМÐ) Опција би требало да буде препозната!?" - -#: grub-core/lib/gnulib/getopt.c:278 -#, fuzzy, c-format -msgid "%s: option '%s%s' is ambiguous\n" -msgstr "%s: опција „-W %s“ је нејаÑна\n" - -#: grub-core/lib/gnulib/getopt.c:284 -#, fuzzy, c-format -msgid "%s: option '%s%s' is ambiguous; possibilities:" -msgstr "%s: опција „%s“ је нејаÑна; могућноÑти:" - -#: grub-core/lib/gnulib/getopt.c:319 -#, fuzzy, c-format -msgid "%s: unrecognized option '%s%s'\n" -msgstr "%s: непозната опција „%c%s“\n" - -#: grub-core/lib/gnulib/getopt.c:345 -#, fuzzy, c-format -msgid "%s: option '%s%s' doesn't allow an argument\n" -msgstr "%s: опција „%c%s“ не допушта аргумент\n" - -#: grub-core/lib/gnulib/getopt.c:360 -#, fuzzy, c-format -msgid "%s: option '%s%s' requires an argument\n" -msgstr "%s: опција „--%s“ не захтева аргумент\n" - -#: grub-core/lib/gnulib/getopt.c:621 -#, c-format -msgid "%s: invalid option -- '%c'\n" -msgstr "%s: неиÑправна опција -- „%c“\n" - -#: grub-core/lib/gnulib/getopt.c:636 grub-core/lib/gnulib/getopt.c:682 -#, c-format -msgid "%s: option requires an argument -- '%c'\n" -msgstr "%s: опција захтева аргумент -- „%c“\n" - -#: grub-core/lib/gnulib/openat-die.c:38 -#, fuzzy, c-format -msgid "unable to record current working directory" -msgstr "не могу да повратим изворни директоријум" - -#: grub-core/lib/gnulib/openat-die.c:57 -#, c-format -msgid "failed to return to initial working directory" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:135 grub-core/osdep/aros/hostdisk.c:523 -msgid "Success" -msgstr "УÑпешно" - -#: grub-core/lib/gnulib/regcomp.c:138 -msgid "No match" -msgstr "Ðема поклапања" - -#: grub-core/lib/gnulib/regcomp.c:141 -msgid "Invalid regular expression" -msgstr "ÐеиÑправан регуларни израз" - -#: grub-core/lib/gnulib/regcomp.c:144 -msgid "Invalid collation character" -msgstr "ÐеиÑправан знак Ñравњивања" - -#: grub-core/lib/gnulib/regcomp.c:147 -msgid "Invalid character class name" -msgstr "ÐеиÑправан назив разреда знака" - -#: grub-core/lib/gnulib/regcomp.c:150 -msgid "Trailing backslash" -msgstr "Пратећа контра коÑа црта" - -#: grub-core/lib/gnulib/regcomp.c:153 -msgid "Invalid back reference" -msgstr "ÐеиÑправна повратна упута" - -#: grub-core/lib/gnulib/regcomp.c:156 -#, fuzzy -msgid "Unmatched [, [^, [:, [., or [=" -msgstr "Ðе одговара [ или [^" - -#: grub-core/lib/gnulib/regcomp.c:159 -msgid "Unmatched ( or \\(" -msgstr "Ðе одговара ( или \\(" - -#: grub-core/lib/gnulib/regcomp.c:162 -msgid "Unmatched \\{" -msgstr "Ðе одговара \\{" - -#: grub-core/lib/gnulib/regcomp.c:165 -msgid "Invalid content of \\{\\}" -msgstr "ÐеиÑправан Ñадржај за \\{\\}" - -#: grub-core/lib/gnulib/regcomp.c:168 -msgid "Invalid range end" -msgstr "ÐеиÑправан крај опÑега" - -#: grub-core/lib/gnulib/regcomp.c:171 -msgid "Memory exhausted" -msgstr "Меморија је потрошена" - -#: grub-core/lib/gnulib/regcomp.c:174 -msgid "Invalid preceding regular expression" -msgstr "ÐеиÑправан претходећи регуларни израз" - -#: grub-core/lib/gnulib/regcomp.c:177 -msgid "Premature end of regular expression" -msgstr "Прерани крај регуларног израза" - -#: grub-core/lib/gnulib/regcomp.c:180 -msgid "Regular expression too big" -msgstr "Регуларни израз је превелик" - -#: grub-core/lib/gnulib/regcomp.c:183 -msgid "Unmatched ) or \\)" -msgstr "Ðеодговара ) или \\)" - -#: grub-core/lib/gnulib/regcomp.c:531 -msgid "unknown regexp error" -msgstr "непозната грешка регизраза" - -#: grub-core/lib/gnulib/regcomp.c:676 -msgid "No previous regular expression" -msgstr "Ðема претходног регуларног израза" - -#: grub-core/lib/i386/halt.c:77 -msgid "GRUB doesn't know how to halt this machine yet!" -msgstr "ГРУБ још увек не зна како да зауÑтави овај рачунар!" - -#: grub-core/lib/legacy_parse.c:75 -msgid "Default server is ${net_default_server}" -msgstr "ОÑновни Ñервер је ${net_default_server}" - -#: grub-core/lib/legacy_parse.c:844 grub-core/video/colors.c:296 -#: grub-core/video/colors.c:305 grub-core/video/colors.c:311 -#: grub-core/video/colors.c:327 util/render-label.c:84 util/render-label.c:98 -#, c-format -msgid "invalid color specification `%s'" -msgstr "неиÑправна одредба боје „%s“" - -#: grub-core/lib/mips/arc/reboot.c:32 grub-core/lib/mips/loongson/reboot.c:61 -msgid "Reboot failed" -msgstr "Поновно подизање није уÑпело" - -#: grub-core/lib/random.c:113 -msgid "[LENGTH]" -msgstr "[ДУЖИÐÐ]" - -#: grub-core/lib/random.c:114 -msgid "Hexdump random data." -msgstr "ХекÑдамп наÑумични подаци." - -#: grub-core/loader/arm/linux.c:242 -msgid "device tree must be supplied (see `devicetree' command)" -msgstr "Ñтабло уређаја мора бити доÑтављено (видите наредбу „devicetree“)" - -#: grub-core/loader/arm/linux.c:334 -msgid "invalid zImage" -msgstr "неиÑправна зСлика" - -#: grub-core/loader/arm/linux.c:450 grub-core/loader/efi/fdt.c:144 -msgid "invalid device tree" -msgstr "неиÑправно Ñтабло уређаја" - -#: grub-core/loader/arm/linux.c:493 grub-core/loader/arm64/linux.c:383 -#: grub-core/loader/i386/linux.c:1125 grub-core/loader/i386/pc/linux.c:479 -#: grub-core/loader/i386/xen.c:962 grub-core/loader/i386/xen.c:964 -#: grub-core/loader/ia64/efi/linux.c:591 grub-core/loader/mips/linux.c:501 -#: grub-core/loader/powerpc/ieee1275/linux.c:383 -#: grub-core/loader/riscv/linux.c:50 -#: grub-core/loader/sparc64/ieee1275/linux.c:511 -msgid "Load Linux." -msgstr "Учитава ЛинукÑ." - -#: grub-core/loader/arm/linux.c:495 grub-core/loader/arm64/linux.c:385 -#: grub-core/loader/i386/linux.c:1127 grub-core/loader/i386/pc/linux.c:482 -#: grub-core/loader/i386/xen.c:966 grub-core/loader/ia64/efi/linux.c:594 -#: grub-core/loader/mips/linux.c:503 -#: grub-core/loader/powerpc/ieee1275/linux.c:385 -#: grub-core/loader/riscv/linux.c:52 -#: grub-core/loader/sparc64/ieee1275/linux.c:513 -msgid "Load initrd." -msgstr "Учитава инитрд." - -#. TRANSLATORS: DTB stands for device tree blob. -#: grub-core/loader/arm/linux.c:498 grub-core/loader/efi/fdt.c:169 -msgid "Load DTB file." -msgstr "Учитава ДТБ датотеку." - -#: grub-core/loader/arm64/linux.c:59 -msgid "" -"plain image kernel not supported - rebuild with CONFIG_(U)EFI_STUB enabled" -msgstr "" -"језгро обичне Ñлике није подржано — поново изграђујем Ñа укљученим " -"„CONFIG_(U)EFI_STUB“" - -#: grub-core/loader/arm64/xen_boot.c:156 -msgid "failed to get FDT" -msgstr "ниÑам уÑпео да добавим ФДТ" - -#: grub-core/loader/arm64/xen_boot.c:418 -msgid "you need to load the Xen Hypervisor first" -msgstr "прво треба да учитате ИкÑен Хипервизор" - -#: grub-core/loader/arm64/xen_boot.c:516 -msgid "Load a xen hypervisor." -msgstr "Учитајте икÑен хипервизор." - -#: grub-core/loader/arm64/xen_boot.c:519 -msgid "Load a xen module." -msgstr "Учитајте икÑен модул." - -#: grub-core/loader/efi/appleloader.c:231 -msgid "[OPTS]" -msgstr "[ОПЦИЈЕ]" - -#. TRANSLATORS: This command is used on EFI to -#. switch to BIOS mode and boot the OS requiring -#. BIOS. -#: grub-core/loader/efi/appleloader.c:235 -msgid "Boot BIOS-based system." -msgstr "Подиже ÑиÑтем заÑнован на БИОС-у." - -#: grub-core/loader/efi/chainloader.c:421 -#: grub-core/loader/i386/pc/chainloader.c:303 -msgid "Load another boot loader." -msgstr "Учитава други учитавач подизања." - -#: grub-core/loader/i386/bsd.c:103 -msgid "Display output on all consoles." -msgstr "Приказује излаз на Ñвим конзолама." - -#: grub-core/loader/i386/bsd.c:104 grub-core/loader/i386/bsd.c:138 -#: grub-core/loader/i386/bsd.c:171 -msgid "Use serial console." -msgstr "КориÑти ÑеријÑку конзолу." - -#: grub-core/loader/i386/bsd.c:105 grub-core/loader/i386/bsd.c:131 -#: grub-core/loader/i386/bsd.c:159 -msgid "Ask for file name to reboot from." -msgstr "Тражи назив датотеке из које ће поново подићи." - -#: grub-core/loader/i386/bsd.c:106 -msgid "Use CD-ROM as root." -msgstr "КориÑти ЦД-РОМ као админиÑтратор." - -#: grub-core/loader/i386/bsd.c:107 -msgid "Invoke user configuration routing." -msgstr "Призива уÑмеравање подешавања кориÑника." - -#: grub-core/loader/i386/bsd.c:108 grub-core/loader/i386/bsd.c:135 -#: grub-core/loader/i386/bsd.c:162 -msgid "Enter in KDB on boot." -msgstr "Улази у КБД при подизању." - -#: grub-core/loader/i386/bsd.c:109 -msgid "Use GDB remote debugger instead of DDB." -msgstr "КориÑти удаљени ГДБ прочишћавач умеÑто ДДБ-а." - -#: grub-core/loader/i386/bsd.c:110 -msgid "Disable all boot output." -msgstr "ИÑкључује Ñве излазе подизања." - -#: grub-core/loader/i386/bsd.c:112 -msgid "Wait for keypress after every line of output." -msgstr "Чека на притиÑак таÑтера након Ñваког реда излаза." - -#: grub-core/loader/i386/bsd.c:114 -msgid "Use compiled-in root device." -msgstr "КориÑти преведени корени уређај." - -#: grub-core/loader/i386/bsd.c:115 grub-core/loader/i386/bsd.c:134 -#: grub-core/loader/i386/bsd.c:165 -msgid "Boot into single mode." -msgstr "Подиже у једном режиму." - -#: grub-core/loader/i386/bsd.c:116 grub-core/loader/i386/bsd.c:166 -msgid "Boot with verbose messages." -msgstr "Подиже Ñа опширним порукама." - -#: grub-core/loader/i386/bsd.c:132 grub-core/loader/i386/bsd.c:160 -msgid "Don't reboot, just halt." -msgstr "Ðе подиже поново, једноÑтавно Ñтаје." - -#: grub-core/loader/i386/bsd.c:133 grub-core/loader/i386/bsd.c:161 -msgid "Change configured devices." -msgstr "Мења подешене уређаје." - -#. TRANSLATORS: "com" is static and not to be translated. It refers to -#. serial ports e.g. com1. -#. -#: grub-core/loader/i386/bsd.c:142 -msgid "comUNIT[,SPEED]" -msgstr "comЈЕДИÐИЦÐ[,БРЗИÐÐ]" - -#: grub-core/loader/i386/bsd.c:157 -msgid "Disable SMP." -msgstr "ИÑкључује СМП." - -#: grub-core/loader/i386/bsd.c:158 -msgid "Disable ACPI." -msgstr "ИÑкључује ÐЦПИ." - -#: grub-core/loader/i386/bsd.c:164 -msgid "Don't display boot diagnostic messages." -msgstr "Ðе приказује поруке дијагнозе подизања." - -#: grub-core/loader/i386/bsd.c:167 -msgid "Boot with debug messages." -msgstr "Подиже Ñа порукама прочишћавања." - -#: grub-core/loader/i386/bsd.c:168 -msgid "Suppress normal output (warnings remain)." -msgstr "ПотиÑкује обичан излаз (упозорења оÑтају)." - -#. TRANSLATORS: "com" is static and not to be translated. It refers to -#. serial ports e.g. com1. -#. -#: grub-core/loader/i386/bsd.c:175 -msgid "[ADDR|comUNIT][,SPEED]" -msgstr "[ÐДРЕСÐ|comЈЕДИÐИЦÐ][,БРЗИÐÐ]" - -#: grub-core/loader/i386/bsd.c:489 grub-core/loader/i386/bsd.c:555 -msgid "name" -msgstr "назив" - -#: grub-core/loader/i386/bsd.c:489 grub-core/loader/i386/bsd.c:555 -msgid "type" -msgstr "врÑта" - -#: grub-core/loader/i386/bsd.c:489 grub-core/loader/i386/bsd.c:555 -msgid "addr" -msgstr "адреÑа" - -#: grub-core/loader/i386/bsd.c:490 grub-core/loader/i386/bsd.c:556 -msgid "size" -msgstr "величина" - -#: grub-core/loader/i386/bsd.c:1147 grub-core/loader/i386/linux.c:466 -#: grub-core/loader/i386/xnu.c:1030 -msgid "Booting in blind mode" -msgstr "Учитавам у Ñлепом режиму" - -#: grub-core/loader/i386/bsd.c:2137 -msgid "Load kernel of FreeBSD." -msgstr "Учитава језгро ФриБСД-а." - -#: grub-core/loader/i386/bsd.c:2140 -msgid "Load kernel of OpenBSD." -msgstr "Учитава језгро ОпенБСД-а." - -#: grub-core/loader/i386/bsd.c:2143 -msgid "Load kernel of NetBSD." -msgstr "Учитава језгро ÐетБСД-а." - -#: grub-core/loader/i386/bsd.c:2147 -msgid "Load FreeBSD env." -msgstr "Учитава окружење ФриБСД-а." - -#: grub-core/loader/i386/bsd.c:2150 -msgid "Load FreeBSD kernel module." -msgstr "Учитава модул језгра ФриБСД-а." - -#: grub-core/loader/i386/bsd.c:2153 -msgid "Load NetBSD kernel module." -msgstr "Учитава модул језгра ÐетБСД-а." - -#: grub-core/loader/i386/bsd.c:2156 -msgid "Load NetBSD kernel module (ELF)." -msgstr "Учитава модул језгра ÐетБСД-а (ЕЛФ)." - -#: grub-core/loader/i386/bsd.c:2159 -msgid "Load FreeBSD kernel module (ELF)." -msgstr "Учитава модул језгра ФриБСД-а (ЕЛФ)." - -#. TRANSLATORS: ramdisk isn't identifier, -#. it can be translated. -#: grub-core/loader/i386/bsd.c:2165 -msgid "Load kOpenBSD ramdisk." -msgstr "Учитава рамдиÑк кОпенБСД-а." - -#. TRANSLATORS: "payload" is a term used -#. by coreboot and must be translated in -#. sync with coreboot. If unsure, -#. let it untranslated. -#: grub-core/loader/i386/coreboot/chainloader.c:510 -msgid "Load another coreboot payload" -msgstr "Учитава другог утоваривача подизног језгра" - -#: grub-core/loader/i386/linux.c:876 -msgid "Legacy `ask' parameter no longer supported." -msgstr "Стари параметар „ask“ није више подржан." - -#: grub-core/loader/i386/linux.c:892 grub-core/loader/i386/linux.c:902 -#: grub-core/loader/i386/linux.c:932 -#, c-format -msgid "%s is deprecated. Use set gfxpayload=%s before linux command instead.\n" -msgstr "„%s“ је заÑтарео. КориÑти Ñкуп „gfxpayload=%s“ пре наредбе линукÑа.\n" - -#. TRANSLATORS: "x" has to be entered in, like an identifier, -#. so please don't use better Unicode codepoints. -#: grub-core/loader/i386/linux.c:915 -#, c-format -msgid "" -"%s is deprecated. VGA mode %d isn't recognized. Use set " -"gfxpayload=WIDTHxHEIGHT[xDEPTH] before linux command instead.\n" -msgstr "" -"„%s“ је заÑтарело. ВГРрежим %d није препознат. КориÑтите Ñкуп " -"„gfxpayload=ШИРИÐÐxВИСИÐÐ[xДУБИÐÐ] пре наредбе линукÑа.\n" - -#: grub-core/loader/i386/pc/chainloader.c:302 -msgid "[--force|--bpb] FILE" -msgstr "[--force|--bpb] ДÐТОТЕКÐ" - -#: grub-core/loader/i386/pc/freedos.c:148 util/setup.c:293 -#, c-format -msgid "the size of `%s' is too large" -msgstr "величина за „%s“ је превелика" - -#: grub-core/loader/i386/pc/freedos.c:183 -msgid "Load FreeDOS kernel.sys." -msgstr "Учитава „kernel.sys“ ФриДОС-а." - -#: grub-core/loader/i386/pc/ntldr.c:155 -msgid "Load NTLDR or BootMGR." -msgstr "Учитава ÐТЛДР или ПодизниМГР." - -#. TRANSLATORS: it's about guessing which GRUB disk -#. is which Plan9 disk. If your language has no -#. word "mapping" you can use another word which -#. means that the GRUBDEVICE and PLAN9DEVICE are -#. actually the same device, just named differently -#. in OS and GRUB. -#: grub-core/loader/i386/pc/plan9.c:59 -msgid "Override guessed mapping of Plan9 devices." -msgstr "ПрепиÑује погођено мапирање План9 уређаја." - -#: grub-core/loader/i386/pc/plan9.c:60 -msgid "GRUBDEVICE=PLAN9DEVICE" -msgstr "ГРУБУРЕЂÐЈ=ПЛÐÐ9УРЕЂÐЈ" - -#: grub-core/loader/i386/pc/plan9.c:599 -msgid "KERNEL ARGS" -msgstr "ЈЕЗГРО ÐРГУМЕÐТИ" - -#: grub-core/loader/i386/pc/plan9.c:599 -msgid "Load Plan9 kernel." -msgstr "Учитава језгро План-а9." - -#: grub-core/loader/i386/pc/pxechainloader.c:161 -msgid "Load a PXE image." -msgstr "Учитава ПИкÑЕ Ñлику." - -#: grub-core/loader/i386/pc/truecrypt.c:226 -msgid "Load Truecrypt ISO." -msgstr "Учитава Трукрипт ИСО." - -#: grub-core/loader/i386/xen.c:781 grub-core/loader/i386/xen.c:865 -msgid "initrd already loaded" -msgstr "инитрд је већ учитан" - -#: grub-core/loader/i386/xen.c:968 -msgid "Load module." -msgstr "Учитава модул." - -#: grub-core/loader/i386/xnu.c:1003 -msgid "Press any key to launch xnu" -msgstr "ПритиÑните неки таÑтер да покренете икÑну" - -#. TRANSLATORS: `device-properties' -#. is a variable name, -#. not a program. -#: grub-core/loader/i386/xnu.c:1159 -msgid "Load `device-properties' dump." -msgstr "Учитава избачај „ÑвојÑтава-уређаја“." - -#: grub-core/loader/ia64/efi/linux.c:124 -msgid "Could not locate FPSWA driver" -msgstr "Ðе могу да нађем управљачки програм „FPSWA“" - -#: grub-core/loader/ia64/efi/linux.c:132 -msgid "FPSWA protocol wasn't able to find the interface" -msgstr "протокол „FPSWA“ није могао да нађе Ñучеље" - -#: grub-core/loader/ia64/efi/linux.c:580 -msgid "No FPSWA found" -msgstr "ÐиÑам нашао „FPSWA“" - -#: grub-core/loader/ia64/efi/linux.c:582 -#, c-format -msgid "FPSWA revision: %x\n" -msgstr "„FPSWA“ ревизија: %x\n" - -#: grub-core/loader/ia64/efi/linux.c:591 -msgid "FILE [ARGS...]" -msgstr "ДÐТОТЕКР[ÐРГУМЕÐТИ...]" - -#: grub-core/loader/ia64/efi/linux.c:597 -msgid "Display FPSWA version." -msgstr "Приказује издање „FPSWA“-а." - -#: grub-core/loader/multiboot.c:248 -msgid "WARNING: no console will be available to OS" -msgstr "УПОЗОРЕЊЕ: ниједна конзола неће бити доÑтупна ОС-у" - -#: grub-core/loader/multiboot.c:450 -msgid "Load a multiboot 2 kernel." -msgstr "Учитава вишеподизно 2 језгро." - -#: grub-core/loader/multiboot.c:453 -msgid "Load a multiboot 2 module." -msgstr "Учитава вишеподизни 2 модул." - -#: grub-core/loader/multiboot.c:456 -msgid "Load a multiboot kernel." -msgstr "Учитава вишеподизно језгро." - -#: grub-core/loader/multiboot.c:459 -msgid "Load a multiboot module." -msgstr "Учитава вишеподизни модул." - -#: grub-core/loader/riscv/linux.c:30 grub-core/loader/riscv/linux.c:40 -#, fuzzy -msgid "Linux not supported yet" -msgstr "тумачење није подржано" - -#: grub-core/loader/xnu.c:1416 grub-core/term/gfxterm_background.c:45 -msgid "Background image mode." -msgstr "Режим позадинÑке Ñлике." - -#. TRANSLATORS: This refers to background image mode (stretched or -#. in left-top corner). Note that GRUB will accept only original -#. keywords stretch and normal, not the translated ones. -#. So please put both in translation -#. e.g. stretch(=%STRETCH%)|normal(=%NORMAL%). -#. The percents mark the translated version. Since many people -#. may not know the word stretch or normal I recommend -#. putting the translation either here or in "Background image mode." -#. string. -#: grub-core/loader/xnu.c:1416 grub-core/term/gfxterm_background.c:55 -msgid "stretch|normal" -msgstr "stretch(=%развучено%)|normal(=%обично%)" - -#: grub-core/loader/xnu.c:1482 -msgid "Load XNU image." -msgstr "Учитава ИкÑÐУ Ñлику." - -#: grub-core/loader/xnu.c:1484 -msgid "Load 64-bit XNU image." -msgstr "Учитава 64-битну ИкÑÐУ Ñлику." - -#: grub-core/loader/xnu.c:1486 -msgid "Load XNU extension package." -msgstr "Учитава пакет ИкÑÐУ проширења." - -#: grub-core/loader/xnu.c:1488 -msgid "Load XNU extension." -msgstr "Учитава ИкÑÐУ проширење." - -#. TRANSLATORS: OSBundleRequired is a -#. variable name in xnu extensions -#. manifests. It behaves mostly like -#. GNU/Linux runlevels. -#. -#: grub-core/loader/xnu.c:1495 -msgid "DIRECTORY [OSBundleRequired]" -msgstr "ДИРЕКТОРИЈУМ [ОССкупЈеПотребан]" - -#. TRANSLATORS: There are many extensions -#. in extension directory. -#: grub-core/loader/xnu.c:1498 -msgid "Load XNU extension directory." -msgstr "Учитава директоријум ИкÑÐУ проширења." - -#. TRANSLATORS: ramdisk here isn't identifier. It can be translated. -#: grub-core/loader/xnu.c:1501 -msgid "Load XNU ramdisk. It will be available in OS as md0." -msgstr "Учитава рамдиÑк ИкÑÐУ-а. Биће доÑтупан у ОС-у као „md0“." - -#: grub-core/loader/xnu.c:1505 -msgid "Load a splash image for XNU." -msgstr "Учитава поздравну Ñлику за ИкÑÐУ." - -#: grub-core/loader/xnu.c:1510 -msgid "Load an image of hibernated XNU." -msgstr "Учитава Ñлику замрзнутог ИкÑÐУ-а." - -#: grub-core/mmap/mmap.c:538 -msgid "ADDR1,MASK1[,ADDR2,MASK2[,...]]" -msgstr "ÐДРЕСÐ1,МÐСКÐ1[,ÐДРЕСÐ2,МÐСКÐ2[,...]]" - -#: grub-core/mmap/mmap.c:539 -msgid "Declare memory regions as faulty (badram)." -msgstr "Проглашава облаÑти меморије неиÑправним (лошрам)." - -#: grub-core/mmap/mmap.c:541 -msgid "FROM[K|M|G] TO[K|M|G]" -msgstr "ОД[K|M|G] ДО[K|M|G]" - -#: grub-core/mmap/mmap.c:542 -msgid "Remove any memory regions in specified range." -msgstr "Уклања Ñве облаÑти меморије у наведеном опÑегу." - -#: grub-core/net/bootp.c:653 -msgid "four arguments expected" -msgstr "очекивана Ñу четири аргумента" - -#: grub-core/net/bootp.c:661 grub-core/net/net.c:1155 -#, c-format -msgid "unrecognised network interface `%s'" -msgstr "непознато мрежно Ñучеље „%s“" - -#: grub-core/net/bootp.c:664 -msgid "no DHCP info found" -msgstr "ниÑам нашао ДХЦП податке" - -#: grub-core/net/bootp.c:674 -msgid "no DHCP options found" -msgstr "ниÑам нашао ДХЦП опције" - -#: grub-core/net/bootp.c:682 -#, fuzzy -msgid "invalid DHCP option code" -msgstr "ниÑам нашао ДХЦП опције" - -#: grub-core/net/bootp.c:686 -#, fuzzy, c-format -msgid "no DHCP option %u found" -msgstr "ниÑам нашао ДХЦП опцију „%d“" - -#: grub-core/net/bootp.c:743 -#, c-format -msgid "unrecognised DHCP option format specification `%s'" -msgstr "непозната одредба запиÑа ДХЦП опције „%s“" - -#: grub-core/net/bootp.c:767 -msgid "no network card found" -msgstr "ниÑам нашао мрежну картицу" - -#: grub-core/net/bootp.c:859 grub-core/net/net.c:389 -#, c-format -msgid "couldn't autoconfigure %s" -msgstr "не могу ÑамоÑтално да подеÑим „%s“" - -#: grub-core/net/bootp.c:873 grub-core/net/bootp.c:876 -msgid "[CARD]" -msgstr "[КÐРТИЦÐ]" - -#: grub-core/net/bootp.c:874 -msgid "perform a bootp autoconfiguration" -msgstr "обавља Ñамоподешавање „bootp“-а" - -#: grub-core/net/bootp.c:877 -#, fuzzy -msgid "perform a DHCP autoconfiguration" -msgstr "обавља Ñамоподешавање „bootp“-а" - -#: grub-core/net/bootp.c:879 -msgid "VAR INTERFACE NUMBER DESCRIPTION" -msgstr "ПРОМЕÐЉИВРСУЧЕЉЕ БРОЈ ОПИС" - -#: grub-core/net/bootp.c:880 -msgid "" -"retrieve DHCP option and save it into VAR. If VAR is - then print the value." -msgstr "" -"налази ДХЦП опцију и чува је у ПРОМЕÐЉИВОЈ. Ðко је ПРОМЕÐЉИВР- онда " -"иÑпиÑује вредноÑÑ‚." - -#: grub-core/net/dns.c:459 -msgid "no DNS servers configured" -msgstr "нема подешених ДÐС Ñервера" - -#: grub-core/net/dns.c:522 -msgid "domain name component is too long" -msgstr "ÑаÑтојак назива домена је предуг" - -#: grub-core/net/dns.c:618 grub-core/net/dns.c:666 -msgid "no DNS record found" -msgstr "ниÑам нашао ДÐС запиÑ" - -#: grub-core/net/dns.c:626 -msgid "no DNS reply received" -msgstr "није добијен ДÐС одговор" - -#: grub-core/net/dns.c:682 -msgid "only ipv4" -msgstr "Ñамо ипв4" - -#: grub-core/net/dns.c:686 -msgid "only ipv6" -msgstr "Ñамо ипв6" - -#: grub-core/net/dns.c:690 -msgid "prefer ipv4" -msgstr "предноÑÑ‚ за ипв4" - -#: grub-core/net/dns.c:694 -msgid "prefer ipv6" -msgstr "предноÑÑ‚ за ипв6" - -#: grub-core/net/dns.c:759 -msgid "ADDRESS DNSSERVER" -msgstr "ÐДРЕСРДÐССЕРВЕР" - -#: grub-core/net/dns.c:760 -msgid "Perform a DNS lookup" -msgstr "Обавља ДÐС претрагу" - -#: grub-core/net/dns.c:762 grub-core/net/dns.c:765 -msgid "DNSSERVER" -msgstr "ДÐССЕРВЕР" - -#: grub-core/net/dns.c:763 -msgid "Add a DNS server" -msgstr "Додаје ДÐС Ñервер" - -#: grub-core/net/dns.c:766 -msgid "Remove a DNS server" -msgstr "Уклања ДÐС Ñервер" - -#: grub-core/net/dns.c:768 -msgid "List DNS servers" -msgstr "ИÑпиÑује ДÐС Ñервере" - -#: grub-core/net/drivers/efi/efinet.c:49 grub-core/net/drivers/efi/efinet.c:65 -#: grub-core/net/drivers/efi/efinet.c:77 grub-core/net/drivers/emu/emunet.c:62 -#: grub-core/net/drivers/i386/pc/pxe.c:273 -#: grub-core/net/drivers/ieee1275/ofnet.c:75 -#: grub-core/net/drivers/uboot/ubootnet.c:62 -msgid "couldn't send network packet" -msgstr "не могу да пошаљем мрежни пакет" - -#: grub-core/net/drivers/ieee1275/ofnet.c:326 -#: grub-core/net/drivers/ieee1275/ofnet.c:359 -msgid "interpret is not supported" -msgstr "тумачење није подржано" - -#: grub-core/net/drivers/ieee1275/ofnet.c:336 -msgid "alloc-mem failed" -msgstr "додела меморије није уÑпела" - -#: grub-core/net/drivers/ieee1275/ofnet.c:370 -msgid "free-mem failed" -msgstr "оÑлобађање меморије није уÑпело" - -#: grub-core/net/http.c:105 -msgid "unsupported HTTP response" -msgstr "неподржани ХТТП одговор" - -#. TRANSLATORS: GRUB HTTP code is pretty young. So even perfectly -#. valid answers like 403 will trigger this very generic message. -#: grub-core/net/http.c:126 -#, c-format -msgid "unsupported HTTP error %d: %s" -msgstr "неподржана ХТТП грешка %d: %s" - -#: grub-core/net/http.c:429 grub-core/net/tftp.c:420 -#, c-format -msgid "time out opening `%s'" -msgstr "иÑтекло је време за отварање „%s“" - -#: grub-core/net/net.c:179 -msgid "timeout: could not resolve hardware address" -msgstr "иÑтек времена: не могу да решим хардверÑку адреÑу" - -#: grub-core/net/net.c:548 -#, c-format -msgid "unresolvable address %s" -msgstr "нерешива адреÑа „%s“" - -#: grub-core/net/net.c:594 -#, c-format -msgid "unrecognised network address `%s'" -msgstr "непозната мрежна адреÑа „%s“" - -#: grub-core/net/net.c:661 -msgid "destination unreachable" -msgstr "недоÑтижно одредиште" - -#. TRANSLATORS: route loop is a condition when e.g. -#. to contact server A you need to go through B -#. and to contact B you need to go through A. -#: grub-core/net/net.c:684 -msgid "route loop detected" -msgstr "откривена је петља руте" - -#: grub-core/net/net.c:700 -msgid "address not found" -msgstr "ниÑам нашао адреÑу" - -#: grub-core/net/net.c:704 -msgid "you can't delete this address" -msgstr "не може обриÑати ову адреÑу" - -#: grub-core/net/net.c:776 grub-core/net/net.c:792 -#, c-format -msgid "Unsupported hw address type %d\n" -msgstr "Ðеподржана врÑта хв адреÑе „%d“\n" - -#: grub-core/net/net.c:813 -#, c-format -msgid "Unsupported address type %d\n" -msgstr "Ðеподржана врÑта адреÑе „%d“\n" - -#: grub-core/net/net.c:1017 grub-core/net/net.c:1131 -msgid "three arguments expected" -msgstr "очекивана Ñу три аргумента" - -#: grub-core/net/net.c:1023 -msgid "card not found" -msgstr "ниÑам нашао картицу" - -#. TRANSLATORS: it refers to the network address. -#: grub-core/net/net.c:1167 -msgid "temporary" -msgstr "привремено" - -#: grub-core/net/net.c:1190 -#, c-format -msgid "Unknown address type %d\n" -msgstr "Ðепозната врÑта адреÑе „%d“\n" - -#: grub-core/net/net.c:1298 -msgid "no server is specified" -msgstr "није наведен Ñервер" - -#: grub-core/net/net.c:1637 -#, c-format -msgid "timeout reading `%s'" -msgstr "иÑтекло је време за читање „%s“" - -#. TRANSLATORS: HWADDRESS stands for -#. "hardware address". -#: grub-core/net/net.c:1762 -msgid "SHORTNAME CARD ADDRESS [HWADDRESS]" -msgstr "КРÐТÐКÐÐЗИВ КÐРТИЦРÐДРЕСР[ХВÐДРЕСÐ]" - -#: grub-core/net/net.c:1763 -msgid "Add a network address." -msgstr "Додаје мрежну адреÑу." - -#: grub-core/net/net.c:1766 -msgid "[CARD [HWADDRESS]]" -msgstr "[КÐРТИЦР[ХВÐДРЕСÐ]]" - -#: grub-core/net/net.c:1767 -msgid "Perform an IPV6 autoconfiguration" -msgstr "Обавља ИПВ6 Ñамоподешавање" - -#: grub-core/net/net.c:1770 grub-core/net/net.c:1777 -msgid "SHORTNAME" -msgstr "КРÐТÐКÐÐЗИВ" - -#: grub-core/net/net.c:1771 -msgid "Delete a network address." -msgstr "Брише мрежну адреÑу." - -#. TRANSLATORS: "gw" is a keyword. -#: grub-core/net/net.c:1774 -msgid "SHORTNAME NET [INTERFACE| gw GATEWAY]" -msgstr "КРÐТÐКÐÐЗИВ МРЕЖР[СУЧЕЉЕ| gw МРЕЖÐИПРОЛÐЗ]" - -#: grub-core/net/net.c:1775 -msgid "Add a network route." -msgstr "Додаје мрежну руту." - -#: grub-core/net/net.c:1778 -msgid "Delete a network route." -msgstr "Брише мрежну руту." - -#: grub-core/net/net.c:1780 -msgid "list network routes" -msgstr "иÑпиÑује мрежне руте" - -#: grub-core/net/net.c:1782 -msgid "list network cards" -msgstr "иÑпиÑује мрежне картице" - -#: grub-core/net/net.c:1784 -msgid "list network addresses" -msgstr "иÑпиÑује мрежне адреÑе" - -#: grub-core/net/tcp.c:681 -msgid "connection refused" -msgstr "веза је одбијена" - -#: grub-core/net/tcp.c:684 -msgid "connection timeout" -msgstr "иÑтекло је време повезивања" - -#: grub-core/normal/auth.c:220 -msgid "Enter username: " -msgstr "УнеÑите кориÑника: " - -#: grub-core/normal/auth.c:269 -msgid "[USERLIST]" -msgstr "[СПИСÐККОРИСÐИКÐ]" - -#: grub-core/normal/auth.c:270 -msgid "Check whether user is in USERLIST." -msgstr "Проверава да ли је кориÑник на СПИСКУКОРИСÐИКÐ." - -#: grub-core/normal/cmdline.c:174 grub-core/normal/menu_entry.c:1068 -msgid "Possible commands are:" -msgstr "Могуће наредбе Ñу:" - -#: grub-core/normal/cmdline.c:177 grub-core/normal/menu_entry.c:1072 -msgid "Possible devices are:" -msgstr "Могући уређаји Ñу:" - -#: grub-core/normal/cmdline.c:180 grub-core/normal/menu_entry.c:1076 -msgid "Possible files are:" -msgstr "Могуће датотеке Ñу:" - -#: grub-core/normal/cmdline.c:183 grub-core/normal/menu_entry.c:1080 -msgid "Possible partitions are:" -msgstr "Могуће партиције Ñу:" - -#: grub-core/normal/cmdline.c:186 grub-core/normal/menu_entry.c:1084 -msgid "Possible arguments are:" -msgstr "Могући аргументи Ñу:" - -#. TRANSLATORS: this message is used if none of above matches. -#. This shouldn't happen but please use the general term for -#. "thing" or "object". -#: grub-core/normal/cmdline.c:192 grub-core/normal/menu_entry.c:1088 -msgid "Possible things are:" -msgstr "Могуће Ñтвари Ñу:" - -#: grub-core/normal/color.c:81 -#, c-format -msgid "Warning: syntax error (missing slash) in `%s'\n" -msgstr "Упозорење: грешка ÑинтакÑе (недоÑтаје коÑница) у „%s“\n" - -#: grub-core/normal/color.c:90 -#, c-format -msgid "Warning: invalid foreground color `%s'\n" -msgstr "Упозорење: неиÑправна боја иÑпиÑивања „%s“\n" - -#: grub-core/normal/color.c:96 -#, c-format -msgid "Warning: invalid background color `%s'\n" -msgstr "Упозорење: неиÑправна боја позадине „%s“\n" - -#: grub-core/normal/context.c:206 -msgid "ENVVAR [ENVVAR] ..." -msgstr "ПРОМЕÐЉИВÐОКРУЖЕЊР[ПРОМЕÐЉИВÐОКРУЖЕЊÐ] ..." - -#: grub-core/normal/context.c:207 -msgid "Export variables." -msgstr "Извози променљиве." - -#: grub-core/normal/datetime.c:25 -msgid "Sunday" -msgstr "Ðедеља" - -#: grub-core/normal/datetime.c:26 -msgid "Monday" -msgstr "Понедељак" - -#: grub-core/normal/datetime.c:27 -msgid "Tuesday" -msgstr "Уторак" - -#: grub-core/normal/datetime.c:28 -msgid "Wednesday" -msgstr "Среда" - -#: grub-core/normal/datetime.c:29 -msgid "Thursday" -msgstr "Четвртак" - -#: grub-core/normal/datetime.c:30 -msgid "Friday" -msgstr "Петак" - -#: grub-core/normal/datetime.c:31 -msgid "Saturday" -msgstr "Субота" - -#: grub-core/normal/dyncmd.c:187 -msgid "module isn't loaded" -msgstr "модул није учитан" - -#: grub-core/normal/main.c:211 -#, c-format -msgid "GNU GRUB version %s" -msgstr "Гну ГРУБ издање %s" - -#: grub-core/normal/main.c:360 -msgid "ESC at any time exits." -msgstr "ЕСЦ у било које време излази." - -#: grub-core/normal/main.c:363 -#, c-format -msgid "" -"Minimal BASH-like line editing is supported. For the first word, TAB lists " -"possible command completions. Anywhere else TAB lists possible device or " -"file completions. %s" -msgstr "" -"Подржано је минимално линијÑко уређивање налик БÐШ-у. За прву реч, ТÐБ " -"иÑпиÑује могућа довршавања наредбе. Било где другде ТÐБ иÑпиÑује могућа " -"довршавања уређаја или датотеке. %s" - -#. TRANSLATORS: it's command line prompt. -#: grub-core/normal/main.c:395 -msgid ">" -msgstr ">" - -#. TRANSLATORS: it's command line prompt. -#: grub-core/normal/main.c:398 -msgid "grub>" -msgstr "grub>" - -#: grub-core/normal/main.c:518 -msgid "Clear the screen." -msgstr "ЧиÑти екран." - -#: grub-core/normal/main.c:527 -msgid "Enter normal mode." -msgstr "Улази у нормалан режим." - -#: grub-core/normal/main.c:529 -msgid "Exit from normal mode." -msgstr "Улази из нормалног режима." - -#: grub-core/normal/menu.c:66 grub-core/normal/menu_entry.c:1449 -msgid "Press any key to continue..." -msgstr "ПритиÑните неки таÑтер да наÑтавите..." - -#: grub-core/normal/menu.c:815 -#, c-format -msgid "Booting `%s'" -msgstr "Подижем „%s“" - -#: grub-core/normal/menu.c:827 -#, c-format -msgid "Falling back to `%s'" -msgstr "Пребацујем Ñе на „%s“" - -#: grub-core/normal/menu.c:843 -msgid "Failed to boot both default and fallback entries.\n" -msgstr "ÐиÑам уÑпео да подигнем ни оÑновне ни одÑтупајуће уноÑе.\n" - -#: grub-core/normal/menu_entry.c:1171 -msgid "Booting a command list" -msgstr "Подижем ÑпиÑак наредби" - -#: grub-core/normal/menu_text.c:160 -msgid "" -"Minimum Emacs-like screen editing is supported. TAB lists completions. Press " -"Ctrl-x or F10 to boot, Ctrl-c or F2 for a command-line or ESC to discard " -"edits and return to the GRUB menu." -msgstr "" -"Подржано је минимално екранÑко уређивање налик ЕмакÑ-у. ПритиÑните Ктрл-Ñ… " -"или Ф10 за подизање, Ктрл-ц или Ф2 за линију наредби или ЕСЦ да одбаците " -"уређивања и да Ñе вратите на изборник ГРУБ-а." - -#: grub-core/normal/menu_text.c:170 -#, c-format -msgid "Use the %C and %C keys to select which entry is highlighted." -msgstr "КориÑтите таÑтере „%C“ и „%C“ да изаберете који уноÑи Ñу иÑтакнути." - -#. TRANSLATORS: that's the list of binary unit prefixes. -#: grub-core/normal/misc.c:38 -msgid "B" -msgstr "B" - -#: grub-core/normal/misc.c:38 -msgid "KiB" -msgstr "KiB" - -#: grub-core/normal/misc.c:38 -msgid "MiB" -msgstr "MiB" - -#: grub-core/normal/misc.c:38 -msgid "GiB" -msgstr "GiB" - -#: grub-core/normal/misc.c:38 -msgid "TiB" -msgstr "TiB" - -#: grub-core/normal/misc.c:38 -msgid "PiB" -msgstr "PiB" - -#. TRANSLATORS: that's the list of binary unit prefixes. -#: grub-core/normal/misc.c:40 -msgid "K" -msgstr "K" - -#: grub-core/normal/misc.c:40 -msgid "M" -msgstr "M" - -#: grub-core/normal/misc.c:40 -msgid "G" -msgstr "G" - -#: grub-core/normal/misc.c:40 -msgid "T" -msgstr "T" - -#: grub-core/normal/misc.c:40 -msgid "P" -msgstr "P" - -#. TRANSLATORS: that's the list of binary unit prefixes. -#: grub-core/normal/misc.c:42 -msgid "B/s" -msgstr "B/s" - -#: grub-core/normal/misc.c:42 -msgid "KiB/s" -msgstr "KiB/s" - -#: grub-core/normal/misc.c:42 -msgid "MiB/s" -msgstr "MiB/s" - -#: grub-core/normal/misc.c:42 -msgid "GiB/s" -msgstr "GiB/s" - -#: grub-core/normal/misc.c:42 -msgid "TiB/s" -msgstr "TiB/s" - -#: grub-core/normal/misc.c:42 -msgid "PiB/s" -msgstr "PiB/s" - -#: grub-core/normal/misc.c:96 -#, c-format -msgid "Partition %s:" -msgstr "Партиција „%s“:" - -#: grub-core/normal/misc.c:101 -#, c-format -msgid "Device %s:" -msgstr "Уређај „%s“:" - -#: grub-core/normal/misc.c:107 -msgid "Filesystem cannot be accessed" -msgstr "Ðе могу да приÑтупим ÑиÑтему датотека" - -#: grub-core/normal/misc.c:121 -#, c-format -msgid "Filesystem type %s" -msgstr "СиÑтем датотека врÑте „%s“" - -#: grub-core/normal/misc.c:131 -#, c-format -msgid "- Label `%s'" -msgstr "— ÐÐ°Ñ‚Ð¸Ñ â€ž%s“" - -#. TRANSLATORS: Arguments are year, month, day, hour, minute, -#. second, day of the week (translated). -#: grub-core/normal/misc.c:148 -#, c-format -msgid "- Last modification time %d-%02d-%02d %02d:%02d:%02d %s" -msgstr "— Време поÑледње измене %d-%02d-%02d %02d:%02d:%02d %s" - -#: grub-core/normal/misc.c:171 -msgid "No known filesystem detected" -msgstr "ÐИÑам открио познати Ñитем датотека" - -#: grub-core/normal/misc.c:174 -#, c-format -msgid " - Partition start at %llu%sKiB" -msgstr " — Партиција почиње на %llu%sKiB" - -#: grub-core/normal/misc.c:178 -#, c-format -msgid " - Sector size %uB" -msgstr " — Величина Ñектора %uB" - -#: grub-core/normal/misc.c:180 -msgid " - Total size unknown" -msgstr " — Укупна величина није позната" - -#: grub-core/normal/misc.c:182 -#, c-format -msgid " - Total size %llu%sKiB" -msgstr " — Укупна величина %llu%sKiB" - -#. TRANSLATORS: Replace dot with appropriate decimal separator for -#. your language. -#: grub-core/normal/misc.c:186 -msgid ".5" -msgstr ",5" - -#. TRANSLATORS: This has to fit on one line. It's ok to include few -#. words but don't write poems. -#: grub-core/normal/term.c:82 -msgid "--MORE--" -msgstr "——ЈОШ ÐЕШТО——" - -#: grub-core/osdep/aros/config.c:92 grub-core/osdep/unix/config.c:137 -#: grub-core/osdep/windows/config.c:55 -#, c-format -msgid "cannot open configuration file `%s': %s" -msgstr "не могу да отворим датотеку подешавања „%s“: %s" - -#: grub-core/osdep/basic/compress.c:8 grub-core/osdep/basic/compress.c:14 -#: grub-core/osdep/basic/compress.c:20 -msgid "no compression is available for your platform" -msgstr "Ñажимање није доÑтупно за вашу платформу" - -#: grub-core/osdep/basic/no_platform.c:30 -#: grub-core/osdep/windows/platform.c:418 -msgid "no IEEE1275 routines are available for your platform" -msgstr "ниÑу доÑтупне ИЕЕЕ1275 рутине за вашу платформу" - -#: grub-core/osdep/basic/no_platform.c:38 -msgid "no EFI routines are available for your platform" -msgstr "ниÑу доÑтупне ЕФИ рутине за вашу платформу" - -#: grub-core/osdep/basic/no_platform.c:45 -#: grub-core/osdep/windows/platform.c:425 -msgid "no SGI routines are available for your platform" -msgstr "ниÑу доÑтупне СГИ рутине за вашу платформу" - -#. TRANSLATORS: The OS itself may very well have a random -#. number generator but GRUB doesn't know how to access it. -#: grub-core/osdep/basic/random.c:42 -msgid "no random number generator is available for your OS" -msgstr "није доÑтупан Ñтваралац наÑумичног броја за ваш ОС" - -#: grub-core/osdep/devmapper/getroot.c:81 -msgid "Failed to create `device-mapper' tree" -msgstr "ÐиÑам уÑпео да направим Ñтабло „device-mapper“" - -#: grub-core/osdep/devmapper/getroot.c:197 -#: grub-core/osdep/freebsd/getroot.c:202 -#, c-format -msgid "can't mount encrypted volume `%s': %s" -msgstr "не могу да прикачим шифровани волумен „%s“: %s" - -#. TRANSLATORS: geom is the name of (k)FreeBSD device framework. -#. Usually left untranslated. -#. -#: grub-core/osdep/freebsd/getroot.c:82 grub-core/osdep/freebsd/getroot.c:164 -#: grub-core/osdep/freebsd/getroot.c:258 grub-core/osdep/freebsd/getroot.c:316 -msgid "couldn't open geom" -msgstr "не могу да отворим геом" - -#: grub-core/osdep/freebsd/getroot.c:182 grub-core/osdep/freebsd/getroot.c:277 -msgid "couldn't find geli consumer" -msgstr "не могу да нађем гели потрошача" - -#: grub-core/osdep/freebsd/getroot.c:282 -msgid "couldn't retrieve geli UUID" -msgstr "не могу да довучем гели УУИБ" - -#. TRANSLATORS: geom is the name of (k)FreeBSD device framework. -#. Usually left untranslated. "part" is the identifier of one of its -#. classes. -#: grub-core/osdep/freebsd/getroot.c:325 -msgid "couldn't find geom `part' class" -msgstr "не могу да нађем геом разред „part“" - -#: grub-core/osdep/freebsd/hostdisk.c:72 grub-core/osdep/linux/hostdisk.c:93 -msgid "unaligned device size" -msgstr "непоравната величина уређаја" - -#: grub-core/osdep/generic/blocklist.c:56 -#, c-format -msgid "attempting to read the core image `%s' from GRUB" -msgstr "покушава да прочита језгрену Ñлику „%s“ из ГРУБ-а" - -#: grub-core/osdep/generic/blocklist.c:57 -#, c-format -msgid "attempting to read the core image `%s' from GRUB again" -msgstr "опет покушава да прочита језгрену Ñлику „%s“ из ГРУБ-а" - -#: grub-core/osdep/generic/blocklist.c:115 -#, c-format -msgid "cannot read `%s' correctly" -msgstr "не могу тачно да прочитам „%s“" - -#: grub-core/osdep/generic/blocklist.c:126 -msgid "failed to read the sectors of the core image" -msgstr "ниÑам уÑпео да прочитам Ñекторе језгрене Ñлике" - -#. TRANSLATORS: On GNU/Hurd, a "translator" is similar to a filesystem -#. mount, but handled by a userland daemon, whose invocation command line -#. is being fetched here. First %s is the file being looked at (for which -#. we are fetching the "translator" command line), second %s is the error -#. message. -#. -#: grub-core/osdep/hurd/getroot.c:79 -#, c-format -msgid "cannot get translator command line for path `%s': %s" -msgstr "не могу да добавим линију наредбе преводиоца за путању „%s“: %s" - -#: grub-core/osdep/hurd/getroot.c:82 -#, c-format -msgid "translator command line is empty for path `%s'" -msgstr "линија наредбе преводиоца је празна за путању „%s“" - -#. TRANSLATORS: we expect to get something like -#. /hurd/foobar --option1 --option2=baz /dev/something -#. -#: grub-core/osdep/hurd/getroot.c:98 -#, c-format -msgid "" -"translator `%s' for path `%s' has several non-option words, at least `%s' " -"and `%s'" -msgstr "" -"преводилац „%s“ за путању „%s“ има неколико не-опционих речи, барем „%s“ и " -"„%s“" - -#. TRANSLATORS: we expect to get something like -#. /hurd/foobar --option1 --option2=baz /dev/something -#. -#: grub-core/osdep/hurd/getroot.c:109 -#, c-format -msgid "" -"translator `%s' for path `%s' is given only options, cannot find device part" -msgstr "" -"преводиоцу „%s“ за путању „%s“ Ñу дате Ñамо опције, не могу да нађем " -"партицију уређаја" - -#: grub-core/osdep/hurd/hostdisk.c:73 -#, c-format -msgid "Storage information for `%s' does not include type" -msgstr "Подаци Ñкладиштења за „%s“ не Ñадрже врÑту" - -#: grub-core/osdep/hurd/hostdisk.c:75 -#, c-format -msgid "`%s' is not a local disk" -msgstr "„%s“ није меÑни диÑк" - -#: grub-core/osdep/hurd/hostdisk.c:78 -#, c-format -msgid "" -"Storage information for `%s' indicates neither a plain partition nor a plain " -"disk" -msgstr "" -"Подаци Ñкладиштења за „%s“ не указују ни на обичну партицију ни на обичан " -"диÑк" - -#: grub-core/osdep/linux/blocklist.c:81 grub-core/osdep/linux/blocklist.c:96 -#: grub-core/osdep/linux/blocklist.c:122 -#, c-format -msgid "can't retrieve blocklists: %s" -msgstr "не могу да довучем ÑпиÑкове блокова: %s" - -#: grub-core/osdep/linux/blocklist.c:84 -msgid "blocksize is not divisible by 512" -msgstr "величина блока није дељива Ñа 512" - -#: grub-core/osdep/linux/blocklist.c:86 -msgid "invalid zero blocksize" -msgstr "неиÑправна нулта величина блока" - -#: grub-core/osdep/linux/blocklist.c:90 util/setup.c:744 -msgid "can't retrieve blocklists" -msgstr "не могу да довучем ÑпиÑкове блокова" - -#: grub-core/osdep/linux/getroot.c:154 -#, c-format -msgid "ioctl RAID_VERSION error: %s" -msgstr "грешка иоцтл РÐИД_ИЗДÐЊÐ: %s" - -#: grub-core/osdep/linux/getroot.c:160 grub-core/osdep/linux/getroot.c:164 -#, c-format -msgid "unsupported RAID version: %d.%d" -msgstr "неподржано издање РÐИД-а: %d.%d" - -#: grub-core/osdep/linux/getroot.c:169 -#, c-format -msgid "ioctl GET_ARRAY_INFO error: %s" -msgstr "грешка иоцтл ДОБÐВИ_ПОДÐТКЕ_ÐИЗÐ: %s" - -#: grub-core/osdep/linux/getroot.c:178 -#, c-format -msgid "ioctl GET_DISK_INFO error: %s" -msgstr "грешка иоцтл ДОБÐВИ_ПОДÐТКЕ_ДИСКÐ: %s" - -#: grub-core/osdep/linux/getroot.c:608 grub-core/osdep/linux/getroot.c:678 -#: grub-core/osdep/linux/hostdisk.c:126 grub-core/osdep/unix/getroot.c:253 -#: grub-core/osdep/unix/getroot.c:642 grub-core/osdep/unix/platform.c:92 -#: grub-core/osdep/unix/platform.c:100 -#, c-format -msgid "Unable to open stream from %s: %s" -msgstr "Ðе могу да отворим ток из „%s“: %s" - -#: grub-core/osdep/linux/getroot.c:1033 -#, c-format -msgid "unknown kind of RAID device `%s'" -msgstr "непозната врÑта РÐИД уређаја „%s“" - -#: grub-core/osdep/linux/ofpath.c:181 -#, c-format -msgid "`obppath' not found in parent dirs of `%s', no IEEE1275 name discovery" -msgstr "" -"ниÑам нашао „obppath“ у родитељÑким директоријумима „%s“, нема откривања " -"ИЕЕЕ1275 назива" - -#: grub-core/osdep/linux/ofpath.c:222 grub-core/osdep/unix/getroot.c:505 -#: grub-core/osdep/unix/getroot.c:529 grub-core/osdep/unix/relpath.c:49 -#: util/grub-install.c:984 util/grub-install.c:1331 util/grub-probe.c:323 -#, c-format -msgid "failed to get canonical path of `%s'" -msgstr "ниÑам уÑпео да добавим пропиÑну путању за „%s“" - -#: grub-core/osdep/linux/ofpath.c:740 -#, c-format -msgid "unknown device type %s" -msgstr "непозната врÑта уређаја „%s“" - -#: grub-core/osdep/linux/ofpath.c:758 util/ieee1275/grub-ofpathname.c:39 -#, c-format -msgid "Usage: %s DEVICE\n" -msgstr "Употреба: %s УРЕЂÐЈ\n" - -#: grub-core/osdep/unix/exec.c:86 grub-core/osdep/unix/exec.c:172 -#: grub-core/osdep/unix/exec.c:217 -#, c-format -msgid "Unable to fork: %s" -msgstr "Ðе могу да иÑцепим: %s" - -#: grub-core/osdep/unix/exec.c:166 grub-core/osdep/unix/exec.c:211 -#, c-format -msgid "Unable to create pipe: %s" -msgstr "Ðе могу да направим Ñпојку: %s" - -#: grub-core/osdep/unix/getroot.c:370 -#, fuzzy -msgid "cannot save the original directory" -msgstr "не могу да повратим изворни директоријум" - -#: grub-core/osdep/unix/getroot.c:423 grub-core/osdep/unix/getroot.c:480 -#: grub-core/osdep/unix/getroot.c:489 -msgid "cannot restore the original directory" -msgstr "не могу да повратим изворни директоријум" - -#. TRANSLATORS: "stat" comes from the name of POSIX function. -#: grub-core/osdep/unix/getroot.c:551 grub-core/osdep/unix/hostdisk.c:61 -#: grub-core/osdep/unix/relpath.c:73 grub-core/osdep/unix/relpath.c:97 -#: util/getroot.c:160 util/getroot.c:162 util/grub-install.c:774 -#: util/grub-macbless.c:70 -#, c-format -msgid "cannot stat `%s': %s" -msgstr "не могу да добавим податке „%s“: %s" - -#: grub-core/osdep/unix/hostdisk.c:293 -#, c-format -msgid "cannot make temporary file: %s" -msgstr "не могу да направим привремену датотеку: %s" - -#: grub-core/osdep/unix/hostdisk.c:311 -#, c-format -msgid "cannot make temporary directory: %s" -msgstr "не могу да направим привремени директоријум: %s" - -#: grub-core/osdep/unix/platform.c:77 -#, c-format -msgid "" -"couldn't find IEEE1275 device path for %s.\n" -"You will have to set `boot-device' variable manually" -msgstr "" -"не могу да нађем путању ИЕЕЕ1275 уређаја за „%s“.\n" -"Мораћете ручно да поÑтавите променљиву „boot-device“." - -#. TRANSLATORS: This message is shown when required executable `%s' -#. isn't found. -#: grub-core/osdep/unix/platform.c:149 grub-core/osdep/unix/platform.c:189 -#, c-format -msgid "%s: not found" -msgstr "%s: ниÑам нашао" - -#: grub-core/osdep/unix/platform.c:225 -#, c-format -msgid "" -"`nvsetenv' failed. \n" -"You will have to set `boot-device' variable manually. At the IEEE1275 " -"prompt, type:\n" -" %s\n" -msgstr "" -"„nvsetenv“ није уÑпело. \n" -"Мораћете ручно да поÑтавите променљиву „boot-device“. Ðа упиту ИЕЕЕ1275, " -"укуцајте:\n" -" %s\n" - -#: grub-core/osdep/unix/platform.c:240 -msgid "You will have to set `SystemPartition' and `OSLoader' manually." -msgstr "Мораћете ручно да поÑтавите „SystemPartition“ и „OSLoader“." - -#. TRANSLATORS: canonical pathname is the -#. complete one e.g. /etc/fstab. It has -#. to contain `/' normally, if it doesn't -#. we're in trouble and throw this error. -#: grub-core/osdep/unix/relpath.c:90 -msgid "no `/' in canonical filename" -msgstr "нема / у пропиÑном називу датотеке" - -#: grub-core/osdep/windows/hostdisk.c:151 -msgid "cygwin_conv_path() failed" -msgstr "није уÑпело „cygwin_conv_path()“" - -#: grub-core/osdep/windows/hostdisk.c:501 util/grub-install.c:570 -msgid "couldn't retrieve random data" -msgstr "не могу да довучем наÑумичне податке" - -#: grub-core/osdep/windows/platform.c:97 -msgid "Insufficient privileges to access firmware, assuming BIOS" -msgstr "Ðедовољно овлашћења за приÑтуп уграђеном програму, подразумевам БИОС" - -#: grub-core/osdep/windows/platform.c:225 -msgid "no EFI routines are available when running in BIOS mode" -msgstr "ниÑу доÑтупне ЕФИ рутине приликом рада у режиму БИОС-а" - -#: grub-core/osdep/windows/platform.c:240 -msgid "unexpected EFI error" -msgstr "неочекивана грешка ЕФИ-а" - -#: grub-core/osdep/windows/platform.c:315 -msgid "Couldn't find a free BootNNNN slot" -msgstr "Ðе могу да нађем Ñлободно ПодизноÐÐÐРподножје" - -#: grub-core/partmap/gpt.c:191 -msgid "" -"this GPT partition label contains no BIOS Boot Partition; embedding won't be " -"possible" -msgstr "" -"овај Ð½Ð°Ñ‚Ð¿Ð¸Ñ Ð“ÐŸÐ¢ партиције не Ñадржи БИОС подизну партицију; уграђивање неће " -"бити могуће" - -#: grub-core/partmap/gpt.c:196 -msgid "your BIOS Boot Partition is too small; embedding won't be possible" -msgstr "ваша БИОС подизна партиција је премала; уграђивање неће бити могуће" - -#. TRANSLATORS: MBR gap and boot track is the same thing and is the space -#. between MBR and first partitition. If your language translates well only -#. "boot track", you can just use it everywhere. Next two messages are about -#. RAID controllers/software bugs which GRUB has to live with. Please spread -#. the message that these are bugs in other software and not merely -#. suboptimal behaviour. -#: grub-core/partmap/msdos.c:51 -#, c-format -msgid "" -"Sector %llu is already in use by raid controller `%s'; avoiding it. Please " -"ask the manufacturer not to store data in MBR gap" -msgstr "" -"Сектор %llu Ñе већ кориÑти раид контролером „%s“; избегавам га. Затражите " -"од произвођача да не Ñмешта податке у празнини ГЗП-а" - -#: grub-core/partmap/msdos.c:54 -#, c-format -msgid "" -"Sector %llu is already in use by the program `%s'; avoiding it. This " -"software may cause boot or other problems in future. Please ask its authors " -"not to store data in the boot track" -msgstr "" -"Сектор %llu Ñе већ кориÑти програмом „%s“; избегавам га. Овај Ñофтвер може " -"у будућноÑти да доведе до подизних или других проблема. Затражите од " -"његових аутора да не Ñмештају податке у подизној Ñтази." - -#: grub-core/partmap/msdos.c:384 -msgid "" -"other software is using the embedding area, and there is not enough room for " -"core.img. Such software is often trying to store data in a way that avoids " -"detection. We recommend you investigate" -msgstr "" -"други програм кориÑти облаÑÑ‚ уграђивања, и нема довољно меÑта за „core." -"img“. Такав програм обично покушава да ÑмеÑти податке на начин који " -"избегава откривање. Препоручујемо вам да иÑпитате." - -#: grub-core/partmap/msdos.c:395 -msgid "" -"this msdos-style partition label has no post-MBR gap; embedding won't be " -"possible" -msgstr "" -"овај Ð½Ð°Ñ‚Ð¿Ð¸Ñ Ð¿Ð°Ñ€Ñ‚Ð¸Ñ†Ð¸Ñ˜Ðµ у Ñтилу мÑдоÑ-а нема празнину поÑÑ‚-ГЗП-а; уграђивање " -"неће бити могуће" - -#: grub-core/partmap/msdos.c:404 -msgid "your embedding area is unusually small. core.img won't fit in it." -msgstr "ваша облаÑÑ‚ уграђивања је необично мала. „core.img“ неће Ñтати у њу." - -#: grub-core/parttool/msdospart.c:39 -msgid "Make partition active" -msgstr "Чини партицију активном" - -#: grub-core/parttool/msdospart.c:51 -msgid "not a primary partition" -msgstr "није главна партиција" - -#: grub-core/parttool/msdospart.c:69 -#, c-format -msgid "Partition %d is active now. \n" -msgstr "Партиција „%d“ је Ñада активна. \n" - -#: grub-core/parttool/msdospart.c:74 -#, c-format -msgid "Cleared active flag on %d. \n" -msgstr "Очишћена је активна заÑтавица на %d. \n" - -#: grub-core/parttool/msdospart.c:87 -msgid "Change partition type" -msgstr "Мења врÑту партиције" - -#: grub-core/parttool/msdospart.c:88 -msgid "Set `hidden' flag in partition type" -msgstr "ПоÑтавља заÑтавицу „hidden“ у врÑти партиције" - -#: grub-core/parttool/msdospart.c:130 -#, c-format -msgid "the partition type 0x%x isn't valid" -msgstr "врÑта партиције 0x%x није иÑправна" - -#. TRANSLATORS: In this case we're actually writing to the disk and actively -#. modifying partition type rather than just defining it. -#: grub-core/parttool/msdospart.c:137 -#, c-format -msgid "Setting partition type to 0x%x\n" -msgstr "Подешавам врÑту партиције на 0x%x\n" - -#. TRANSLATORS: 0 is a quantifier. "break" (similar to bash) -#. can be used e.g. to break 3 loops at once. -#. But asking it to break 0 loops makes no sense. -#: grub-core/script/execute.c:143 -msgid "can't break 0 loops" -msgstr "не могу да прекинем 0 петље" - -#. TRANSLATORS: It's about not being -#. inside a function. "return" can be used only -#. in a function and this error occurs if it's used -#. anywhere else. -#: grub-core/script/execute.c:227 -msgid "not in function body" -msgstr "није у телу функције" - -#: grub-core/script/execute.c:371 -#, c-format -msgid "invalid variable name `%s'" -msgstr "неиÑправан назив променљиве „%s“" - -#: grub-core/script/execute.c:953 -msgid "cannot allocate command buffer" -msgstr "" - -#: grub-core/script/lexer.c:144 util/grub-fstest.c:330 -msgid "unexpected end of file" -msgstr "неочекивани крај датотеке" - -#: grub-core/script/main.c:55 grub-core/script/main.c:57 -#: grub-core/script/main.c:59 grub-core/script/main.c:67 -msgid "[NUM]" -msgstr "[БРОЈ]" - -#: grub-core/script/main.c:55 -msgid "Exit from loops" -msgstr "Излази из петље" - -#: grub-core/script/main.c:57 -msgid "Continue loops" -msgstr "ÐаÑтавља петљу" - -#. TRANSLATORS: Positional arguments are -#. arguments $0, $1, $2, ... -#: grub-core/script/main.c:62 -msgid "Shift positional parameters." -msgstr "Мења положајне параметре." - -#: grub-core/script/main.c:64 -msgid "[VALUE]..." -msgstr "[ВРЕДÐОСТ]..." - -#: grub-core/script/main.c:65 -msgid "Set positional parameters." -msgstr "ПоÑтавља положајне параметре." - -#. TRANSLATORS: It's a command description -#. and "Return" is a verb, not a noun. The -#. command in question is "return" and -#. has exactly the same semanics as bash -#. equivalent. -#: grub-core/script/main.c:73 -msgid "Return from a function." -msgstr "Враћа Ñе из функције." - -#: grub-core/term/gfxterm_background.c:176 -msgid "[-m (stretch|normal)] FILE" -msgstr "[-m (stretch|normal)] ДÐТОТЕКÐ" - -#: grub-core/term/gfxterm_background.c:177 -msgid "Load background image for active terminal." -msgstr "Учитава Ñлику позадине за активни терминал." - -#: grub-core/term/gfxterm_background.c:182 util/grub-install.c:302 -#: util/grub-install.c:303 util/grub-mkrescue.c:107 util/grub-mkrescue.c:108 -#: util/grub-render-label.c:61 util/grub-render-label.c:63 -msgid "COLOR" -msgstr "БОЈÐ" - -#: grub-core/term/gfxterm_background.c:183 -msgid "Set background color for active terminal." -msgstr "ПоÑтавља боју позадине за активни терминал." - -#: grub-core/term/i386/coreboot/cbmemc.c:139 -msgid "Show CBMEM console content." -msgstr "Приказује Ñадржај ЦБМЕМ конзоле." - -#: grub-core/term/serial.c:57 -msgid "Set the serial unit." -msgstr "ПоÑтавља ÑеријÑку јединицу." - -#: grub-core/term/serial.c:58 -msgid "Set the serial port address." -msgstr "ПоÑтавља адреÑу ÑеријÑког прикључника." - -#: grub-core/term/serial.c:59 -msgid "Set the serial port speed." -msgstr "ПоÑтавља брзину ÑеријÑког прикључника." - -#: grub-core/term/serial.c:60 -msgid "Set the serial port word length." -msgstr "ПоÑтавља дужину речи ÑеријÑког прикључника." - -#: grub-core/term/serial.c:61 -msgid "Set the serial port parity." -msgstr "ПоÑтавља парноÑÑ‚ ÑеријÑког прикључника." - -#: grub-core/term/serial.c:62 -msgid "Set the serial port stop bits." -msgstr "ПоÑтавља зауÑтавне битове ÑеријÑког прикључника." - -#: grub-core/term/serial.c:63 -msgid "Set the base frequency." -msgstr "ПоÑтавља учеÑталоÑÑ‚ оÑнове." - -#: grub-core/term/serial.c:64 -msgid "Enable/disable RTS/CTS." -msgstr "Укључује/иÑкључује РТС/ЦТС." - -#: grub-core/term/serial.c:218 -#, c-format -msgid "serial port `%s' isn't found" -msgstr "ниÑам нашао ÑеријÑки прикључник „%s“" - -#: grub-core/term/serial.c:254 -msgid "unsupported serial port flow control" -msgstr "неподржана контрола протока ÑеријÑког прикључника" - -#: grub-core/term/serial.c:429 -msgid "[OPTIONS...]" -msgstr "[ОПЦИЈЕ...]" - -#: grub-core/term/serial.c:430 -msgid "Configure serial port." -msgstr "Подешава ÑеријÑки прикључник." - -#: grub-core/term/terminfo.c:184 -#, c-format -msgid "unknown terminfo type `%s'" -msgstr "непозната врÑта података терминала „%s“" - -#: grub-core/term/terminfo.c:668 -msgid "ASCII" -msgstr "ÐСКРИ" - -#: grub-core/term/terminfo.c:671 -msgid "UTF-8" -msgstr "УТФ-8" - -#. TRANSLATORS: visually ordered UTF-8 is a non-compliant encoding -#. based on UTF-8 with right-to-left languages written in reverse. -#. Used on some terminals. Normal UTF-8 is refered as -#. "logically-ordered UTF-8" by opposition. -#: grub-core/term/terminfo.c:677 -msgid "visually-ordered UTF-8" -msgstr "визуелно-уређени УТФ-8" - -#: grub-core/term/terminfo.c:680 -msgid "Unknown encoding" -msgstr "Ðепознато кодирање" - -#: grub-core/term/terminfo.c:684 -msgid "Current terminfo types:" -msgstr "Тренутне врÑте података терминала:" - -#: grub-core/term/terminfo.c:699 -msgid "Terminal is ASCII-only [default]." -msgstr "Терминал је Ñамо ÐСКРИ [оÑновно]." - -#: grub-core/term/terminfo.c:700 -msgid "Terminal is logical-ordered UTF-8." -msgstr "Терминал је логички-уређени УТФ-8." - -#: grub-core/term/terminfo.c:701 -msgid "Terminal is visually-ordered UTF-8." -msgstr "Терминал је визуелно-уређени УТФ-8." - -#: grub-core/term/terminfo.c:703 -msgid "Terminal has specified geometry." -msgstr "Терминал има наведену геометрију." - -#. TRANSLATORS: "x" has to be entered in, like an identifier, so please don't -#. use better Unicode codepoints. -#: grub-core/term/terminfo.c:706 -msgid "WIDTHxHEIGHT." -msgstr "ШИРИÐÐxВИСИÐÐ." - -#: grub-core/term/terminfo.c:746 -msgid "incorrect terminal dimensions specification" -msgstr "неиÑправна одредба димензија терминала" - -#: grub-core/term/terminfo.c:776 -#, c-format -msgid "terminal %s isn't found or it's not handled by terminfo" -msgstr "ниÑам нашао терминал „%s“ или њиме не рукују подаци терминала" - -#: grub-core/term/terminfo.c:785 -msgid "[[-a|-u|-v] [-g WxH] TERM [TYPE]]" -msgstr "[[-a|-u|-v] [-g ШxÐ’] ТЕРМ [ВРСТÐ]]" - -#: grub-core/term/terminfo.c:786 -msgid "Set terminfo type of TERM to TYPE.\n" -msgstr "ПоÑтавља врÑту података терминала ТЕРМИÐÐЛРна ВРСТУ.\n" - -#. TRANSLATORS: this is the BLOCK-argument, not -#. environment block. -#: grub-core/tests/test_blockarg.c:49 -msgid "Print and execute block argument." -msgstr "ИÑпиÑује и извршава аргумент блока." - -#. TRANSLATORS: We're speaking about bitmap images like -#. JPEG or PNG. -#: grub-core/video/bitmap.c:209 -#, c-format -msgid "bitmap file `%s' is of unsupported format" -msgstr "датотека битмапе „%s“ је у неподржаном запиÑу" - -#: grub-core/video/i386/pc/vbe.c:1191 -#, c-format -msgid " VBE info: version: %d.%d OEM software rev: %d.%d\n" -msgstr " ВБЕ подаци: издање: %d.%d ОЕМ Ñофтвер рев: %d.%d\n" - -#: grub-core/video/i386/pc/vbe.c:1198 -#, c-format -msgid " total memory: %d KiB\n" -msgstr " укупно меморије: %d KiB\n" - -#: grub-core/video/video.c:596 grub-core/video/video.c:762 -msgid "no suitable video mode found" -msgstr "ниÑам нашао одговарајући режим Ñнимка" - -#: include/grub/crypto.h:403 -msgid "access denied" -msgstr "приÑтуп је одбијен" - -#: include/grub/util/install.h:30 include/grub/util/install.h:35 -msgid "MODULES" -msgstr "МОДУЛИ" - -#: include/grub/util/install.h:31 -msgid "pre-load specified modules MODULES" -msgstr "предучитавањем наведени модули МОДУЛИ" - -#: include/grub/util/install.h:33 -msgid "embed a specific DTB" -msgstr "" - -#: include/grub/util/install.h:36 -msgid "install only MODULES and their dependencies [default=all]" -msgstr "инÑталира Ñамо МОДУЛЕ и њихове завиÑноÑти [оÑновно=all]" - -#: include/grub/util/install.h:37 -msgid "THEMES" -msgstr "ТЕМЕ" - -#: include/grub/util/install.h:38 -#, c-format -msgid "install THEMES [default=%s]" -msgstr "инÑталира ТЕМЕ [оÑновно=%s]" - -#: include/grub/util/install.h:39 -msgid "FONTS" -msgstr "СЛОВÐИ ЛИКОВИ" - -#: include/grub/util/install.h:40 -#, c-format -msgid "install FONTS [default=%s]" -msgstr "инÑталира СЛОВÐЕ ЛИКОВЕ [оÑновно=%s]" - -#: include/grub/util/install.h:41 -msgid "LOCALES" -msgstr "ЈЕЗИЦИ" - -#: include/grub/util/install.h:42 -msgid "install only LOCALES [default=all]" -msgstr "инÑталира Ñамо ЈЕЗИКЕ [оÑновно=all]" - -#: include/grub/util/install.h:45 -msgid "compress GRUB files [optional]" -msgstr "Ñажима ГРУБ датотеке [изборно]" - -#: include/grub/util/install.h:48 util/grub-mkimage.c:83 -msgid "choose the compression to use for core image" -msgstr "бира Ñажимање за Ñлику језгра" - -#. TRANSLATORS: platform here isn't identifier. It can be translated. -#: include/grub/util/install.h:51 include/grub/util/install.h:54 -#: util/grub-mkimage.c:66 -#, c-format -msgid "use images and modules under DIR [default=%s/]" -msgstr "кориÑти Ñлике и модуле под ДИР [оÑновно=%s/<платформа>]" - -#: include/grub/util/install.h:57 -#, c-format -msgid "use translations under DIR [default=%s]" -msgstr "кориÑти преводе под ДИР [оÑновно=%s]" - -#: include/grub/util/install.h:60 -#, c-format -msgid "use themes under DIR [default=%s]" -msgstr "кориÑти теме под ДИР [оÑновно=%s]" - -#: include/grub/util/install.h:65 util/grub-mkimage.c:78 -msgid "embed FILE as public key for signature checking" -msgstr "уграђује ДÐТОТЕКУ као јавни кључ за проверавање потпиÑа" - -#: util/editenv.c:59 util/grub-editenv.c:201 util/grub-install-common.c:535 -#: util/grub-mkimage.c:315 util/setup.c:791 -#, fuzzy, c-format -msgid "cannot sync `%s': %s" -msgstr "не могу да премотам „%s“: %s" - -#: util/editenv.c:64 -#, c-format -msgid "cannot rename the file %s to %s" -msgstr "не могу да преименујем датотеку „%s“ у „%s“" - -#: util/getroot.c:402 -#, c-format -msgid "disk does not exist, so falling back to partition device %s" -msgstr "диÑк не поÑтоји, тако да Ñе пребацујем на партициони уређај „%s“" - -#: util/grub-editenv.c:45 util/grub-fstest.c:506 -msgid "Commands:" -msgstr "Ðаредбе:" - -#: util/grub-editenv.c:47 -msgid "Create a blank environment block file." -msgstr "Прави празну датотеку блока окружења." - -#: util/grub-editenv.c:49 -msgid "List the current variables." -msgstr "ИÑпиÑује текуће променљиве." - -#. TRANSLATORS: "set" is a keyword. It's a summary of "set" subcommand. -#: util/grub-editenv.c:51 -msgid "set [NAME=VALUE ...]" -msgstr "set [ÐÐЗИВ=ВРЕДÐОСТ ...]" - -#: util/grub-editenv.c:52 -msgid "Set variables." -msgstr "ПоÑтавља променљиве." - -#. TRANSLATORS: "unset" is a keyword. It's a summary of "unset" subcommand. -#: util/grub-editenv.c:54 -msgid "unset [NAME ...]" -msgstr "unset [ÐÐЗИВ ...]" - -#: util/grub-editenv.c:55 -msgid "Delete variables." -msgstr "Брише променљиве." - -#: util/grub-editenv.c:57 -msgid "Options:" -msgstr "Опције:" - -#: util/grub-editenv.c:84 -msgid "You need to specify at least one command.\n" -msgstr "Морате навеÑти барем једну наредбу.\n" - -#: util/grub-editenv.c:113 -msgid "FILENAME COMMAND" -msgstr "ДÐТОТЕКРÐÐРЕДБÐ" - -#: util/grub-editenv.c:114 -msgid "Tool to edit environment block." -msgstr "Ðлат за уређивање блока окружења." - -#: util/grub-editenv.c:116 -#, c-format -msgid "" -"If FILENAME is `-', the default value %s is used.\n" -"\n" -"There is no `delete' command; if you want to delete the whole environment\n" -"block, use `rm %s'." -msgstr "" -"Ðко је ДÐТОТЕКР-, кориÑти Ñе оÑновна вредноÑÑ‚ %s.\n" -"\n" -"Ðема наредбе „delete“; ако желите да обришете читав блок\n" -"окружења, кориÑтите „rm %s“." - -#: util/grub-editenv.c:162 -msgid "invalid environment block" -msgstr "неиÑправан блок окружења" - -#: util/grub-editenv.c:217 -#, c-format -msgid "invalid parameter %s" -msgstr "неиÑправан параметар „%s“" - -#: util/grub-editenv.c:222 -msgid "environment block too small" -msgstr "блок окружења је премали" - -#: util/grub-fstest.c:107 -#, c-format -msgid "disk read fails at offset %lld, length %lld" -msgstr "читање диÑка није уÑпело на померају %lld, дужина %lld" - -#: util/grub-fstest.c:138 -#, c-format -msgid "invalid skip value %lld" -msgstr "неиÑправна вредноÑÑ‚ преÑкакања %lld" - -#: util/grub-fstest.c:160 util/grub-fstest.c:246 -#, c-format -msgid "read error at offset %llu: %s" -msgstr "грешка читања на померају %llu: %s" - -#: util/grub-fstest.c:210 -#, c-format -msgid "cannot open OS file `%s': %s" -msgstr "не могу да отворим датотеку ОС-а „%s“: %s" - -#: util/grub-fstest.c:225 util/misc.c:126 -#, c-format -msgid "cannot write to the stdout: %s" -msgstr "не могу да пишем на Ñтандардни излаз: %s" - -#: util/grub-fstest.c:259 -#, c-format -msgid "compare fail at offset %llu" -msgstr "поређење није уÑпело на померају %llu" - -#: util/grub-fstest.c:280 util/grub-fstest.c:314 -#, c-format -msgid "OS file %s open error: %s" -msgstr "грешка отварања датотеке „%s“ ОС-а: %s" - -#: util/grub-fstest.c:402 util/grub-mount.c:392 -#, c-format -msgid "`loopback' command fails: %s" -msgstr "није уÑпела наредба „loopback“: %s" - -#: util/grub-fstest.c:413 util/grub-mount.c:402 -#, c-format -msgid "`cryptomount' command fails: %s" -msgstr "није уÑпела наредба „cryptomount“: %s" - -#: util/grub-fstest.c:474 util/grub-fstest.c:478 -msgid "couldn't retrieve UUID" -msgstr "не могу да довучем УУИБ" - -#: util/grub-fstest.c:507 -msgid "ls PATH" -msgstr "ls ПУТÐЊÐ" - -#: util/grub-fstest.c:507 -msgid "List files in PATH." -msgstr "ИÑпиÑује датотеке из ПУТÐЊЕ." - -#: util/grub-fstest.c:508 -msgid "cp FILE LOCAL" -msgstr "cp ДÐТОТЕКРМЕСÐÐ" - -#: util/grub-fstest.c:508 -msgid "Copy FILE to local file LOCAL." -msgstr "Умножава ДÐТОТЕКУ у меÑну датотеку МЕСÐÐ." - -#: util/grub-fstest.c:509 -msgid "cat FILE" -msgstr "cat ДÐТОТЕКÐ" - -#: util/grub-fstest.c:509 -msgid "Copy FILE to standard output." -msgstr "Умножава ДÐТОТЕКУ на Ñтандардни излаз." - -#: util/grub-fstest.c:510 -msgid "cmp FILE LOCAL" -msgstr "cmp ДÐТОТЕКРМЕСÐÐ" - -#: util/grub-fstest.c:510 -msgid "Compare FILE with local file LOCAL." -msgstr "Упоређује ДÐТОТЕКУ Ñа меÑном датотеком МЕСÐÐ." - -#: util/grub-fstest.c:511 -msgid "hex FILE" -msgstr "hex ДÐТОТЕКÐ" - -#: util/grub-fstest.c:511 -msgid "Show contents of FILE in hex." -msgstr "Приказује Ñадржај ДÐТОТЕКЕ хекÑадецимално." - -#: util/grub-fstest.c:512 -msgid "crc FILE" -msgstr "crc ДÐТОТЕКÐ" - -#: util/grub-fstest.c:512 -msgid "Get crc32 checksum of FILE." -msgstr "Добавља „crc32“ проверу Ñуме ДÐТОТЕКЕ." - -#: util/grub-fstest.c:513 -msgid "blocklist FILE" -msgstr "blocklist ДÐТОТЕКÐ" - -#: util/grub-fstest.c:513 -msgid "Display blocklist of FILE." -msgstr "Приказује ÑпиÑак блокова ДÐТОТЕКЕ." - -#: util/grub-fstest.c:514 -msgid "xnu_uuid DEVICE" -msgstr "xnu_uuid УРЕЂÐЈ" - -#: util/grub-fstest.c:514 -msgid "Compute XNU UUID of the device." -msgstr "Упоређује ИкÑÐУ УУИБ уређаја." - -#. TRANSLATORS: bitmaps are images like e.g. in JPEG. -#: util/grub-fstest.c:517 util/grub-fstest.c:518 util/grub-fstest.c:519 -#: util/grub-mkfont.c:938 util/grub-mkfont.c:951 util/grub-mkfont.c:952 -#: util/grub-mkpasswd-pbkdf2.c:46 util/grub-mkpasswd-pbkdf2.c:47 -#: util/grub-mkpasswd-pbkdf2.c:48 -msgid "NUM" -msgstr "БРОЈ" - -#: util/grub-fstest.c:517 -msgid "Skip N bytes from output file." -msgstr "ПреÑкаче N бајтова из излазне датотеке." - -#: util/grub-fstest.c:518 -msgid "Handle N bytes in output file." -msgstr "Рукује Ñа N бајтова у излазној датотеци." - -#: util/grub-fstest.c:519 -msgid "Specify the number of input files." -msgstr "Ðаводи број улазних датотека." - -#: util/grub-fstest.c:520 util/grub-mount.c:453 -msgid "Set debug environment variable." -msgstr "ПоÑтавља променљиву окружења прочишћавања." - -#: util/grub-fstest.c:521 util/grub-mount.c:454 -msgid "Mount crypto devices." -msgstr "Прикачиње уређаје шифровања." - -#. TRANSLATORS: "prompt" is a keyword. -#: util/grub-fstest.c:524 util/grub-mount.c:457 -msgid "FILE|prompt" -msgstr "ДÐТОТЕКÐ|prompt" - -#: util/grub-fstest.c:524 util/grub-mount.c:457 -msgid "Load zfs crypto key." -msgstr "Учитава зÑÑ„ крипто кључ." - -#: util/grub-fstest.c:526 -msgid "Uncompress data." -msgstr "РаÑпакује податке." - -#: util/grub-fstest.c:605 -msgid "Invalid disk count.\n" -msgstr "ÐеиÑправан број диÑкова.\n" - -#. TRANSLATORS: disk count is optional but if it's there it must -#. be before disk list. So please don't imply disk count as mandatory. -#. -#: util/grub-fstest.c:613 -msgid "Disk count must precede disks list.\n" -msgstr "Број диÑкова мора да претходи ÑпиÑку диÑкова.\n" - -#: util/grub-fstest.c:633 -msgid "No command is specified.\n" -msgstr "Ðије наведена ниједна наредба.\n" - -#: util/grub-fstest.c:638 -msgid "Not enough parameters to command.\n" -msgstr "Ðема довољно параметара за наредбу.\n" - -#: util/grub-fstest.c:711 -#, c-format -msgid "Invalid command %s.\n" -msgstr "ÐеиÑправн наредба „%s“.\n" - -#: util/grub-fstest.c:724 -msgid "IMAGE_PATH COMMANDS" -msgstr "ПУТÐЊÐ_СЛИКЕ ÐÐРЕДБЕ" - -#: util/grub-fstest.c:725 util/grub-mount.c:553 -msgid "Debug tool for filesystem driver." -msgstr "Прочишћавачки алат за управљачке програме ÑиÑтема датотека." - -#: util/grub-glue-efi.c:53 -msgid "set input filename for 32-bit part." -msgstr "поÑтавља назив улазне датотеке за 32-битне партиције." - -#: util/grub-glue-efi.c:55 -msgid "set input filename for 64-bit part." -msgstr "поÑтавља назив улазне датотеке за 64-битне партиције." - -#: util/grub-glue-efi.c:57 util/grub-mklayout.c:55 util/grub-render-label.c:71 -msgid "set output filename. Default is STDOUT" -msgstr "поÑтавља назив излазне датотеке. ОÑновно је СТÐДИЗЛÐЗ." - -#: util/grub-glue-efi.c:94 util/grub-mklayout.c:476 -#: util/grub-mkpasswd-pbkdf2.c:86 util/grub-render-label.c:131 -msgid "[OPTIONS]" -msgstr "[ОПЦИЈЕ]" - -#: util/grub-glue-efi.c:95 -msgid "Glue 32-bit and 64-bit binary into Apple universal one." -msgstr "Прилепљује 32-битну и 64-битну извршну на Ејплову Ñвеопшту." - -#: util/grub-glue-efi.c:116 -msgid "Missing input file\n" -msgstr "ÐедоÑтаје улазна датотека\n" - -#: util/grub-install-common.c:127 util/grub-install-common.c:151 -#, c-format -msgid "cannot copy `%s' to `%s': %s" -msgstr "не могу да умножим „%s“ у „%s“: %s" - -#: util/grub-install-common.c:147 -#, c-format -msgid "can't compress `%s' to `%s'" -msgstr "не могу да Ñажмем „%s“ у „%s“" - -#: util/grub-install-common.c:196 util/grub-install-common.c:552 -#: util/grub-install-common.c:579 util/grub-install-common.c:621 -#, c-format -msgid "cannot open directory `%s': %s" -msgstr "не могу да отворим директоријум „%s“: %s" - -#: util/grub-install-common.c:212 -#, c-format -msgid "cannot delete `%s': %s" -msgstr "не могу да обришем „%s“: %s" - -#: util/grub-install-common.c:324 util/grub-mkimage.c:209 -msgid "grub-mkimage is compiled without XZ support" -msgstr "„grub-mkimage“ је преведен без ИкÑЗ подршке" - -#: util/grub-install-common.c:332 util/grub-mkimage.c:217 -#, c-format -msgid "Unknown compression format %s" -msgstr "Ðепознат Ð·Ð°Ð¿Ð¸Ñ Ñажимања „%s“" - -#: util/grub-install-common.c:400 -#, c-format -msgid "Unrecognized compression `%s'" -msgstr "Ðепознато Ñажимање „%s“" - -#: util/grub-install-common.c:509 -#, c-format -msgid "unknown target format %s" -msgstr "непознат циљни Ð·Ð°Ð¿Ð¸Ñ â€ž%s“" - -#: util/grub-install-common.c:700 -#, c-format -msgid "cannot find locale `%s'" -msgstr "не могу да нађем језик „%s“" - -#: util/grub-install-common.c:939 -#, c-format -msgid "%s doesn't exist. Please specify --target or --directory" -msgstr "„%s“ не поÑтоји. Ðаведите „--target“ или „--directory“" - -#: util/grub-install-common.c:948 util/grub-install-common.c:951 -#, c-format -msgid "invalid modinfo file `%s'" -msgstr "неиÑправна датотека података режима „%s“" - -#: util/grub-install-common.c:966 -#, c-format -msgid "Unknown platform `%s-%s'" -msgstr "Ðепозната платформа „%s-%s“" - -#: util/grub-install.c:238 -msgid "More than one install device?" -msgstr "Више од једног инÑталационог уређаја?" - -#: util/grub-install.c:251 -#, c-format -msgid "" -"install GRUB images under the directory DIR/%s instead of the %s directory" -msgstr "" -"инÑталира ГРУБ Ñлике под директоријумом ДИР/%s умеÑто под %s директоријумом" - -#: util/grub-install.c:256 util/grub-probe.c:734 -msgid "TARGET" -msgstr "МЕТÐ" - -#. TRANSLATORS: "TARGET" as in "target platform". -#: util/grub-install.c:258 -#, c-format -msgid "install GRUB for TARGET platform [default=%s]; available targets: %s" -msgstr "инÑталира ГРУБ за ЦИЉÐУ платформу [оÑновно=%s]; доÑтупне мете: %s" - -#. TRANSLATORS: "may break" doesn't just mean that option wouldn't have any -#. effect but that it will make the resulting install unbootable from HDD. -#. TRANSLATORS: The potential breakage isn't limited to floppies but it's -#. likely to make the install unbootable from HDD. -#: util/grub-install.c:267 util/grub-setup.c:94 -msgid "" -"make the drive also bootable as floppy (default for fdX devices). May break " -"on some BIOSes." -msgstr "" -"чини диÑк такође подизним као флопи (оÑновно за Ñ„Ð´Ð˜ÐºÑ ÑƒÑ€ÐµÑ’Ð°Ñ˜Ðµ). Може да Ñе " -"оштети на неким БИОС-има." - -#: util/grub-install.c:270 -msgid "delete device map if it already exists" -msgstr "брише мапу уређаја ако већ поÑтоји" - -#: util/grub-install.c:272 util/grub-setup.c:87 -msgid "install even if problems are detected" -msgstr "инÑталира чак и ако Ñу откривени проблеми" - -#: util/grub-install.c:274 -msgid "use identifier file even if UUID is available" -msgstr "кориÑти датотеку одредника чак и ако је доÑтупан УУИБ" - -#: util/grub-install.c:276 -msgid "" -"disk module to use (biosdisk or native). This option is only available on " -"BIOS target." -msgstr "" -"модул диÑка за коришћење (биоÑдиÑк или изворни). Ова опција је доÑтупна Ñамо " -"на метама БИОС-а." - -#: util/grub-install.c:279 -msgid "" -"don't update the `boot-device'/`Boot*' NVRAM variables. This option is only " -"available on EFI and IEEE1275 targets." -msgstr "" -"не оÑвежава ÐВРÐМ променљиве „boot-device“/„Boot*“. Ова опција је доÑтупна " -"Ñамо на ЕФИ и ИЕЕЕ1275 метама." - -#: util/grub-install.c:282 util/grub-setup.c:89 -msgid "do not probe for filesystems in DEVICE" -msgstr "не иÑпробава ÑиÑтеме датотека у УРЕЂÐЈУ" - -#: util/grub-install.c:284 -msgid "do not install bootsector" -msgstr "не инÑталира подизни Ñектор" - -#: util/grub-install.c:286 util/grub-setup.c:96 -msgid "" -"Do not apply any reed-solomon codes when embedding core.img. This option is " -"only available on x86 BIOS targets." -msgstr "" -"Ðе примењује никакво мудро читање шифре када уграђује „core.img“. Ова опција " -"је доÑтупна једнино на метама x86 БИОС-а." - -#: util/grub-install.c:293 -msgid "" -"the installation device is removable. This option is only available on EFI." -msgstr "инÑталациони уређај је уклоњив. Ова опција је доÑтупна Ñамо на ЕФИ-ју." - -#: util/grub-install.c:295 -msgid "ID" -msgstr "ИБ" - -#: util/grub-install.c:296 -msgid "the ID of bootloader. This option is only available on EFI and Macs." -msgstr "ИБ подизног учитавача. Ова опција је доÑтупна Ñамо на ЕФИ-ју и Мек-у." - -#: util/grub-install.c:298 -msgid "use DIR as the EFI System Partition root." -msgstr "кориÑти ДИР као корен ЕФИ ÑиÑтема партиција." - -#: util/grub-install.c:300 -msgid "use DIR for PPC MAC install." -msgstr "кориÑти ДИР за ППЦ МÐК инÑталацију." - -#: util/grub-install.c:301 util/grub-mkrescue.c:106 -msgid "use FILE as font for label" -msgstr "кориÑти ДÐТОТЕКУ као Ñловни лик за натпиÑ" - -#: util/grub-install.c:302 util/grub-mkrescue.c:107 -msgid "use COLOR for label" -msgstr "кориÑти БОЈУ за натпиÑ" - -#: util/grub-install.c:303 util/grub-mkrescue.c:108 -msgid "use COLOR for label background" -msgstr "кориÑти БОЈУ за позадину натпиÑа" - -#: util/grub-install.c:304 util/grub-mkrescue.c:110 -msgid "use STRING as product version" -msgstr "кориÑти ÐИСКУ као издање производа" - -#: util/grub-install.c:361 -msgid "[OPTION] [INSTALL_DEVICE]" -msgstr "[ОПЦИЈÐ] [ИÐСТÐЛÐЦИОÐИ_УРЕЂÐЈ]" - -#: util/grub-install.c:362 -msgid "Install GRUB on your drive." -msgstr "ИнÑталира ГРУБ на вашем диÑку." - -#: util/grub-install.c:363 -#, c-format -msgid "" -"INSTALL_DEVICE must be system device filename.\n" -"%s copies GRUB images into %s. On some platforms, it may also install GRUB " -"into the boot sector." -msgstr "" -"ИÐСТÐЛÐЦИОÐИ_УРЕЂÐЈ мора бити назив датотеке ÑиÑтемÑког уређаја.\n" -"„%s“ умножава Ñлике ГРУБ-а у „%s“. Ðа неким платформама, може такође да " -"инÑталира ГРУБ у подизном Ñектору." - -#: util/grub-install.c:672 -#, c-format -msgid "the drive %s is defined multiple times in the device map %s" -msgstr "уређај „%s“ је одређен више пута у мапи уређаја „%s“" - -#: util/grub-install.c:878 -msgid "Unable to determine your platform. Use --target." -msgstr "Ðе могу да одредим вашу платформу. КориÑтите „--target“." - -#: util/grub-install.c:891 -#, c-format -msgid "Installing for %s platform.\n" -msgstr "ИнÑталирам за платформу „%s“.\n" - -#: util/grub-install.c:939 -msgid "install device isn't specified" -msgstr "уређај инÑталације није наведен" - -#: util/grub-install.c:1057 -msgid "cannot find EFI directory" -msgstr "не могу да нађем ЕФИ директоријум" - -#: util/grub-install.c:1060 util/grub-install.c:1209 util/grub-install.c:1254 -#: util/grub-macbless.c:76 util/grub-probe.c:329 util/setup.c:316 -#, c-format -msgid "cannot find a device for %s (is /dev mounted?)" -msgstr "не могу да нађем уређај за „%s“ (да ли је „/dev“ прикачен?)" - -#: util/grub-install.c:1069 util/grub-install.c:1217 util/grub-install.c:1270 -#: util/grub-install.c:1365 util/grub-macbless.c:80 util/grub-probe.c:372 -#, c-format -msgid "cannot find a GRUB drive for %s. Check your device.map" -msgstr "Ðе могу да нађем уређај ГРУБ-а за „%s“. Проверите „device.map“" - -#: util/grub-install.c:1087 -#, c-format -msgid "%s doesn't look like an EFI partition" -msgstr "„%s“ не изгледа као ЕФИ партиција" - -#: util/grub-install.c:1129 util/grub-install.c:1614 -msgid "You've found a bug" -msgstr "Ðашли Ñте грешку" - -#: util/grub-install.c:1231 -#, c-format -msgid "filesystem on %s is neither HFS nor HFS+" -msgstr "ÑиÑтем датотека на „%s“ није ни ХФС ни ХФС+" - -#: util/grub-install.c:1299 -#, c-format -msgid "" -"attempt to install to encrypted disk without cryptodisk enabled. Set `%s' in " -"file `%s'" -msgstr "" -"покушавам да инÑталирам на шифровани диÑк без укљученог криптодиÑка. " -"ПоÑтавите „%s“ у датотеци „%s“" - -#: util/grub-install.c:1410 util/grub-install.c:1772 util/grub-install.c:1872 -#, c-format -msgid "Can't create file: %s" -msgstr "Ðе могу да направим датотеку: %s" - -#: util/grub-install.c:1491 -msgid "no hints available for your platform. Expect reduced performance" -msgstr "Ñавети ниÑу доÑтупни за вашу платформу. Очекујте умањену делотворноÑÑ‚" - -#. TRANSLATORS: This is a prefix in the log to indicate that usually -#. a command would be executed but due to an option was skipped. -#: util/grub-install.c:1702 -msgid "NOT RUNNING: " -msgstr "ÐИЈЕ ПОКРЕÐУТÐ: " - -#: util/grub-install.c:1806 -msgid "the chosen partition is not a PReP partition" -msgstr "изабрана партиција није ПРеП партиција" - -#: util/grub-install.c:1811 -msgid "failed to copy Grub to the PReP partition" -msgstr "ниÑам уÑпео да умножим Груб на ПРеП партицију" - -#: util/grub-install.c:1816 -#, c-format -msgid "" -"the PReP partition is not empty. If you are sure you want to use it, run dd " -"to clear it: `%s'" -msgstr "" -"ПРеП партиција није празна. Ðко Ñте Ñигурни желећете да је кориÑтите, " -"покрените „dd“ да је очиÑтите: „%s“" - -#: util/grub-install.c:1888 util/grub-install.c:1932 -#, c-format -msgid "efibootmgr failed to register the boot entry: %s" -msgstr "" - -#: util/grub-install.c:1916 -msgid "EFI bootloader id isn't specified." -msgstr "није наведен иб ЕФИ подизног учитавача." - -#: util/grub-install.c:1950 -msgid "WARNING: no platform-specific install was performed" -msgstr "УПОЗОРЕЊЕ: никаква платформно оÑобена инÑталација није обављена" - -#: util/grub-install.c:1957 -msgid "Installation finished. No error reported." -msgstr "ИнÑталација је завршена. Без пријављених грешака." - -#: util/grub-macbless.c:101 -msgid "bless for x86-based macs" -msgstr "омогућава подизање за Ñ…86-заÑноване мекове" - -#: util/grub-macbless.c:103 -msgid "bless for ppc-based macs" -msgstr "омогућава подизање за ппц-заÑноване мекове" - -#: util/grub-macbless.c:136 util/grub-probe.c:823 -msgid "No path or device is specified.\n" -msgstr "Ðије наведена ни путања ни уређај.\n" - -#: util/grub-macbless.c:157 -msgid "--ppc PATH|--x86 FILE" -msgstr "--ppc ПУТÐЊÐ|--x86 ДÐТОТЕКÐ" - -#: util/grub-macbless.c:158 -msgid "Mac-style bless on HFS or HFS+" -msgstr "Омогућавање подизања у Ñтилу Мека за ХФС или ХФС+" - -#: util/grub-menulst2cfg.c:44 -#, c-format -msgid "Usage: %s [INFILE [OUTFILE]]\n" -msgstr "Употреба: %s [УЛÐЗÐÐДÐТОТЕКР[ИЗЛÐЗÐÐДÐТОТЕКÐ]]\n" - -#: util/grub-mkfont.c:157 -#, c-format -msgid "Freetype Error %d loading glyph 0x%x for U+0x%x%s" -msgstr "Грешка фритајпа %d учитавјући глиф 0x%x за U+0x%x%s" - -#. TRANSLATORS: These qualifiers are used for cursive typography, -#. mainly Arabic. Note that the terms refer to the visual position -#. and not logical order and if used in left-to-right script then -#. leftmost is initial but with right-to-left script like Arabic -#. rightmost is the initial. -#: util/grub-mkfont.c:165 -msgid " (medial)" -msgstr " (по Ñредини)" - -#: util/grub-mkfont.c:166 -msgid " (leftmost)" -msgstr " (Ñ Ð»ÐµÐ²Ð°)" - -#: util/grub-mkfont.c:167 -msgid " (rightmost)" -msgstr " (Ñ Ð´ÐµÑна)" - -#: util/grub-mkfont.c:481 -#, c-format -msgid "Out of range substitution (%d, %d)\n" -msgstr "Замена ван опÑега (%d, %d)\n" - -#. TRANSLATORS: "lookup" is taken directly from font specifications -#. which are formulated as "Under condition X replace LOOKUP with -#. SUBSTITUITION". " -#: util/grub-mkfont.c:506 -#, c-format -msgid "Out of range lookup: %d\n" -msgstr "Претрага ван опÑега: %d\n" - -#: util/grub-mkfont.c:514 -#, c-format -msgid "Unsupported substitution type: %d\n" -msgstr "Ðеподржана врÑта замене: %d\n" - -#: util/grub-mkfont.c:550 -#, c-format -msgid "Unsupported substitution specification: %d\n" -msgstr "Ðеподржана одредба замене: %d\n" - -#: util/grub-mkfont.c:582 -#, c-format -msgid "Unsupported coverage specification: %d\n" -msgstr "Ðеподржана одредба покрића: %d\n" - -#: util/grub-mkfont.c:622 -#, c-format -msgid "WARNING: unsupported font feature parameters: %x\n" -msgstr "УПОЗОРЕЊЕ: неподржани параметри функције Ñловног лика: %x\n" - -#: util/grub-mkfont.c:936 util/grub-mkrescue.c:98 util/grub-mkstandalone.c:48 -msgid "save output in FILE [required]" -msgstr "чува излаз у ДÐТОТЕКУ [потребно]" - -#. TRANSLATORS: some font files may have multiple faces (fonts). -#. This option is used to chose among them, the first face being '0'. -#. Rarely used. -#: util/grub-mkfont.c:942 -msgid "select face index" -msgstr "бира Ð¸Ð½Ð´ÐµÐºÑ Ð¸Ð·Ð³Ð»ÐµÐ´Ð°" - -#: util/grub-mkfont.c:943 -msgid "FROM-TO[,FROM-TO]" -msgstr "ОД-ДО[,ОД-ДО]" - -#. TRANSLATORS: It refers to the range of characters in font. -#: util/grub-mkfont.c:945 -msgid "set font range" -msgstr "поÑтавља опÑег Ñловног лика" - -#. TRANSLATORS: "family name" for font is just a generic name without suffix -#. like "Bold". -#: util/grub-mkfont.c:949 -msgid "set font family name" -msgstr "поÑтавља назив породице Ñловног лика" - -#: util/grub-mkfont.c:950 -msgid "SIZE" -msgstr "ВЕЛИЧИÐÐ" - -#: util/grub-mkfont.c:950 -msgid "set font size" -msgstr "поÑтавља величину Ñловног лика" - -#: util/grub-mkfont.c:951 -msgid "set font descent" -msgstr "подешава Ñловни лик Ñилазно" - -#: util/grub-mkfont.c:952 -msgid "set font ascent" -msgstr "подешава Ñловни лик узлазно" - -#: util/grub-mkfont.c:953 -msgid "convert to bold font" -msgstr "претвара у подебљани Ñловни лик" - -#: util/grub-mkfont.c:954 -msgid "force autohint" -msgstr "приморава Ñамонаговештавање" - -#: util/grub-mkfont.c:955 -msgid "disable hinting" -msgstr "иÑкључује наговештавање" - -#. TRANSLATORS: some fonts contain bitmap rendering for -#. some sizes. This option forces rerendering even if -#. pre-rendered bitmap is available. -#. -#: util/grub-mkfont.c:961 -msgid "ignore bitmap strikes when loading" -msgstr "занемарује наноÑе битмапе приликом учитавања" - -#. TRANSLATORS: It refers to the range of characters in font. -#: util/grub-mkfont.c:1059 util/grub-mkfont.c:1075 -msgid "invalid font range" -msgstr "неиÑправан опÑег Ñловног лика" - -#: util/grub-mkfont.c:1151 -msgid "[OPTIONS] FONT_FILES" -msgstr "[ОПЦИЈЕ] ДÐТОТЕКЕ_СЛОВОЛИКÐ" - -#: util/grub-mkfont.c:1152 -msgid "Convert common font file formats into PF2" -msgstr "Претвара запиÑе датотека општих Ñловних ликова у ПФ2" - -#: util/grub-mkfont.c:1182 util/grub-mkrescue.c:483 -#: util/grub-mkstandalone.c:306 -msgid "output file must be specified" -msgstr "излазна датотека мора бити наведена" - -#: util/grub-mkfont.c:1185 -msgid "FT_Init_FreeType fails" -msgstr "„FT_Init_FreeType“ није уÑпело" - -#: util/grub-mkfont.c:1199 -#, c-format -msgid "can't open file %s, index %d: error %d" -msgstr "не могу да отворим датотеку „%s“, Ð¸Ð½Ð´ÐµÐºÑ %d: грешка %d" - -#: util/grub-mkfont.c:1229 -#, c-format -msgid "can't set %dx%d font size: Freetype error %d: %s" -msgstr "" -"не могу да подеÑим величину Ñловног лика %dx%d: Грешка Ñлободне врÑте %d: %s" - -#: util/grub-mkimage.c:67 -msgid "set prefix directory" -msgstr "поÑтавља директоријум префикÑа" - -#. TRANSLATORS: "memdisk" here isn't an identifier, it can be translated. -#. "embed" is a verb (command description). " -#: util/grub-mkimage.c:71 -msgid "" -"embed FILE as a memdisk image\n" -"Implies `-p (memdisk)/boot/grub' and overrides any prefix supplied " -"previously, but the prefix itself can be overridden by later options" -msgstr "" -"уграђује ДÐТОТЕКУ као Ñлику мемдиÑка\n" -"Подразумева „-p (memdisk)/boot/grub“ и препиÑује Ñваки претходно доÑтављени " -"префикÑ, али Ñам Ð¿Ñ€ÐµÑ„Ð¸ÐºÑ Ð¼Ð¾Ð¶Ðµ бити препиÑан каÑнијим опцијама" - -#: util/grub-mkimage.c:74 -#, fuzzy -msgid "embed FILE as a device tree (DTB)\n" -msgstr "уграђује ДÐТОТЕКУ као раније подешавање" - -#: util/grub-mkimage.c:76 -msgid "embed FILE as an early config" -msgstr "уграђује ДÐТОТЕКУ као раније подешавање" - -#. TRANSLATORS: NOTE is a name of segment. -#: util/grub-mkimage.c:80 -msgid "add NOTE segment for CHRP IEEE1275" -msgstr "додаје подеок ÐÐПОМЕÐРза ЦХРП ИЕЕЕ1275" - -#: util/grub-mkimage.c:81 -msgid "output a generated image to FILE [default=stdout]" -msgstr "шаље Ñтворену Ñлику у ДÐТОТЕКУ [оÑновно=stdout]" - -#: util/grub-mkimage.c:82 -msgid "FORMAT" -msgstr "ЗÐПИС" - -#: util/grub-mkimage.c:100 util/grub-mkstandalone.c:62 -msgid "generate an image in FORMAT" -msgstr "Ñтвара Ñлику у ЗÐПИСУ" - -#: util/grub-mkimage.c:101 util/grub-mkstandalone.c:63 -msgid "available formats:" -msgstr "доÑтупни запиÑи:" - -#: util/grub-mkimage.c:152 util/grub-mkstandalone.c:96 -#, c-format -msgid "unknown target format %s\n" -msgstr "непознат циљни Ð·Ð°Ð¿Ð¸Ñ â€ž%s“\n" - -#: util/grub-mkimage.c:242 -msgid "[OPTION]... [MODULES]" -msgstr "[ОПЦИЈÐ]... [МОДУЛИ]" - -#: util/grub-mkimage.c:243 -msgid "Make a bootable image of GRUB." -msgstr "Прави подизну Ñлику ГРУБ-а." - -#: util/grub-mkimage.c:273 util/grub-mkstandalone.c:309 -msgid "Target format not specified (use the -O option)." -msgstr "Циљни Ð·Ð°Ð¿Ð¸Ñ Ð½Ð¸Ñ˜Ðµ наведен (кориÑтите опцију „-O“)." - -#: util/grub-mkimage.c:282 -msgid "Prefix not specified (use the -p option)." -msgstr "ÐŸÑ€ÐµÑ„Ð¸ÐºÑ Ð½Ð¸Ñ˜Ðµ наведен (кориÑтите опцију „-p“)." - -#: util/grub-mkimage.c:318 util/setup.c:793 -#, fuzzy, c-format -msgid "cannot close `%s': %s" -msgstr "не могу да отворим „%s“: %s" - -#: util/grub-mkimagexx.c:2191 -#, c-format -msgid "" -"`%s' is miscompiled: its start address is 0x%llx instead of 0x%llx: ld.gold " -"bug?" -msgstr "" -"„%s“ је лоше преведен: његова почетна адреÑа је 0x%llx умеÑто 0x%llx: грешка " -"„ld.gold“-а?" - -#: util/grub-mklayout.c:53 -msgid "set input filename. Default is STDIN" -msgstr "поÑтавља назив улазне датотеке. ОÑновно је СТÐДУЛÐЗ." - -#. TRANSLATORS: scan identifier is keyboard key symbolic name. -#: util/grub-mklayout.c:307 -#, c-format -msgid "Unknown keyboard scan identifier %s\n" -msgstr "Ðепознат одредник Ñкенирања таÑтатуре „%s“\n" - -#. TRANSLATORS: scan code is keyboard key numeric identifier. -#: util/grub-mklayout.c:390 util/grub-mklayout.c:418 -#, c-format -msgid "Unknown keyboard scan code 0x%02x\n" -msgstr "Ðепозната шифра Ñкенирања таÑтатуре 0x%02x\n" - -#. TRANSLATORS: this error is triggered when input doesn't contain any -#. key descriptions. -#: util/grub-mklayout.c:438 -msgid "ERROR: no valid keyboard layout found. Check the input.\n" -msgstr "ГРЕШКÐ: ниÑам нашао иÑправан раÑпоред таÑтатуре. Проверите улаз.\n" - -#. TRANSLATORS: "one" is a shortcut for "keyboard layout". -#: util/grub-mklayout.c:478 -msgid "Generate GRUB keyboard layout from Linux console one." -msgstr "Ствара раÑпоред таÑтатуре ГРУБ-а из једне ЛинукÑове конзоле." - -#: util/grub-mknetdir.c:47 -msgid "root directory of TFTP server" -msgstr "корени директоријум ТФТП Ñервера" - -#: util/grub-mknetdir.c:49 -msgid "relative subdirectory on network server" -msgstr "релативни поддиректоријум на мрежном Ñерверу" - -#: util/grub-mknetdir.c:88 -msgid "" -"Prepares GRUB network boot images at net_directory/subdir assuming " -"net_directory being TFTP root." -msgstr "" -"Припрема мрежне подизне Ñлике ГРУБ-а на „net_directory/subdir“ " -"подразумевајући да је „net_directory“ ТФТП корен." - -#: util/grub-mknetdir.c:146 -#, c-format -msgid "unsupported platform %s" -msgstr "неподржана платформа „%s“" - -#. TRANSLATORS: First %s is replaced by platform name. Second one by filename. -#: util/grub-mknetdir.c:165 -#, c-format -msgid "" -"Netboot directory for %s created. Configure your DHCP server to point to %s\n" -msgstr "" -"Директоријум мрежног подизања за „%s“ је направљен. ПодеÑите ваш ДХЦП Ñервер " -"да показује на „%s“\n" - -#: util/grub-mkpasswd-pbkdf2.c:46 -msgid "Number of PBKDF2 iterations" -msgstr "Број ПБКДФ2 понављања" - -#: util/grub-mkpasswd-pbkdf2.c:47 -msgid "Length of generated hash" -msgstr "Дужина Ñтвореног хеша" - -#: util/grub-mkpasswd-pbkdf2.c:48 -msgid "Length of salt" -msgstr "Дужина приÑолка" - -#: util/grub-mkpasswd-pbkdf2.c:87 -msgid "Generate PBKDF2 password hash." -msgstr "Ствара хеш ПБКДФ2 лозинке." - -#: util/grub-mkpasswd-pbkdf2.c:144 util/grub-mkpasswd-pbkdf2.c:151 -msgid "failure to read password" -msgstr "ниÑам уÑпео да прочитам лозинку" - -#: util/grub-mkpasswd-pbkdf2.c:146 -msgid "Reenter password: " -msgstr "Поново унеÑите лозинку: " - -#: util/grub-mkpasswd-pbkdf2.c:160 -msgid "passwords don't match" -msgstr "лозинке ниÑу иÑте" - -#: util/grub-mkpasswd-pbkdf2.c:169 -msgid "couldn't retrieve random data for salt" -msgstr "не могу да довучем наÑумичне податке за приÑолак" - -#: util/grub-mkpasswd-pbkdf2.c:184 -#, c-format -msgid "cryptographic error number %d" -msgstr "криптографÑка грешка број %d" - -#: util/grub-mkpasswd-pbkdf2.c:203 -#, c-format -msgid "PBKDF2 hash of your password is %s\n" -msgstr "ПБКДФ2 хеш ваше лозинке је %s\n" - -#: util/grub-mkrelpath.c:67 -msgid "No path is specified.\n" -msgstr "Ðије наведена ниједна путања.\n" - -#: util/grub-mkrelpath.c:78 -msgid "PATH" -msgstr "ПУТÐЊÐ" - -#: util/grub-mkrelpath.c:79 -msgid "Transform a system filename into GRUB one." -msgstr "Претвара ÑаÑтемÑки назив датотеке у онај ГРУБ-ов." - -#: util/grub-mkrescue.c:100 -msgid "save ROM images in DIR [optional]" -msgstr "чува РОМ Ñлике у ДИР-у [изборно]" - -#. TRANSLATORS: xorriso is a program for creating ISOs and burning CDs. -#: util/grub-mkrescue.c:103 -msgid "use FILE as xorriso [optional]" -msgstr "кориÑти ДÐТОТЕКУ као „xorriso“ [изборно]" - -#: util/grub-mkrescue.c:109 -msgid "use STRING as product name" -msgstr "кориÑти ÐИСКУ као назив производа" - -#: util/grub-mkrescue.c:111 -msgid "" -"enable sparc boot. Disables HFS+, APM, ARCS and boot as disk image for i386-" -"pc" -msgstr "" -"укључује Ñпарк подизање. ИÑкључује ХФС+, ÐПМ, ÐРЦС и подиже као диÑк Ñлику " -"за „i386-pc“" - -#: util/grub-mkrescue.c:112 -msgid "" -"enable ARCS (big-endian mips machines, mostly SGI) boot. Disables HFS+, APM, " -"sparc64 and boot as disk image for i386-pc" -msgstr "" -"укључује ÐРЦС подизање (рачунаре мипÑа велике крајњоÑти, углавном СГИ). " -"ИÑкључује ХФС+,ÐПМ, Ñпарк64 и подиже као диÑк Ñлику за „i386-pc“." - -#. TRANSLATORS: it generates one single image which is bootable through any method. -#: util/grub-mkrescue.c:125 -msgid "Make GRUB CD-ROM, disk, pendrive and floppy bootable image." -msgstr "" -"Прави ГРУБ-ову подизну Ñлику ЦД-РОМ-а, диÑка, меморијÑког штапића и диÑкете." - -#: util/grub-mkrescue.c:130 -#, c-format -msgid "" -"Generates a bootable CD/USB/floppy image. Arguments other than options to " -"this program are passed to xorriso, and indicate source files, source " -"directories, or any of the mkisofs options listed by the output of `%s'." -msgstr "" -"Ствара подизну ЦД/УСБ/флопи Ñлику. Ðргументи другачији од опција овог " -"програма Ñе проÑлеђују икÑориÑо-у, и означавају изворне датотеке, изворне " -"директоријуме, или било коју опцију „mkisofs“-а наведену излазом „%s“-а." - -#: util/grub-mkrescue.c:134 -msgid "Option -- switches to native xorriso command mode." -msgstr "Опција —— пребацује у изворни режим наредби „xorriso“-а." - -#: util/grub-mkrescue.c:135 -msgid "Mail xorriso support requests to ." -msgstr "" -"Пошаљите поруку Ñа захтевом подршке за икÑориÑо на ." - -#: util/grub-mkrescue.c:221 util/grub-mkstandalone.c:114 -msgid "[OPTION] SOURCE..." -msgstr "[ОПЦИЈÐ] ИЗВОР..." - -#: util/grub-mkrescue.c:257 util/grub-mkrescue.c:300 util/grub-mkrescue.c:588 -#, c-format -msgid "enabling %s support ..." -msgstr "укључујем „%s“ подршку ..." - -#: util/grub-mkrescue.c:486 -#, fuzzy -msgid "xorriso not found" -msgstr "%s: ниÑам нашао" - -#: util/grub-mkrescue.c:623 -msgid "" -"Your xorriso doesn't support `--grub2-boot-info'. Some features are " -"disabled. Please use xorriso 1.2.9 or later." -msgstr "" -"Ваш икÑориÑо не подржава „--grub2-boot-info“. Ðеке функције Ñу иÑкључене. " -"КориÑтите икÑориÑо 1.2.9 или новији." - -#: util/grub-mkrescue.c:650 -msgid "" -"Your xorriso doesn't support `--grub2-boot-info'. Your core image is too " -"big. Boot as disk is disabled. Please use xorriso 1.2.9 or later." -msgstr "" -"Ваш икÑориÑо не подржава „--grub2-boot-info“. Ваша кључна Ñлика је " -"превелика. Подизање као диÑка је иÑкључено. КориÑтите икÑориÑо 1.2.9 или " -"новији." - -#: util/grub-mkstandalone.c:115 -msgid "" -"Generate a standalone image (containing all modules) in the selected format" -msgstr "Ствара ÑамоÑталну Ñлику (која Ñадржи Ñве модуле) у изабраном запиÑу" - -#: util/grub-mkstandalone.c:115 -msgid "Graft point syntax (E.g. /boot/grub/grub.cfg=./grub.cfg) is accepted" -msgstr "" -"СинтакÑа тачке накалемљивања (нпр. „/boot/grub/grub.cfg=./grub.cfg“) Ñе " -"прихвата" - -#: util/grub-mount.c:552 -msgid "IMAGE1 [IMAGE2 ...] MOUNTPOINT" -msgstr "СЛИКÐ1 [СЛИКÐ2 ...] ТÐЧКÐ_КÐЧЕЊÐ" - -#: util/grub-mount.c:575 -msgid "need an image and mountpoint" -msgstr "захтева Ñлику и тачку качења" - -#: util/grub-probe.c:731 -msgid "given argument is a system device, not a path" -msgstr "дати аргумент је ÑиÑтемÑки уређај, а не путања" - -#: util/grub-probe.c:736 -msgid "separate items in output using ASCII NUL characters" -msgstr "одваја Ñтавке на излазу кориÑтећи ÐСКРИ ÐИШТÐÐ’ÐЕ знакове" - -#: util/grub-probe.c:754 -#, c-format -msgid "[default=%s]" -msgstr "[оÑновно=%s]" - -#: util/grub-probe.c:756 -msgid "print TARGET" -msgstr "иÑпиÑује МЕТУ" - -#: util/grub-probe.c:757 -msgid "available targets:" -msgstr "доÑтупни мете:" - -#: util/grub-probe.c:839 -msgid "[OPTION]... [PATH|DEVICE]" -msgstr "[ОПЦИЈÐ]... [ПУТÐЊÐ|УРЕЂÐЈ]" - -#: util/grub-probe.c:840 -msgid "" -"Probe device information for a given path (or device, if the -d option is " -"given)." -msgstr "" -"ИÑпробава податке уређаја за датом путањом (или уређајем, ако је дата опција " -"„-d“)." - -#: util/grub-render-label.c:60 -msgid "read text from FILE." -msgstr "чита текÑÑ‚ из ДÐТОТЕКЕ." - -#: util/grub-render-label.c:62 -msgid "use COLOR for text" -msgstr "кориÑти БОЈУ за текÑÑ‚" - -#: util/grub-render-label.c:64 -msgid "use COLOR for background" -msgstr "кориÑти БОЈУ за позадину" - -#. TRANSLATORS: The result is always stored to file and -#. never shown directly, so don't use "show" as synonym for render. Use "create" if -#. "render" doesn't translate directly. -#: util/grub-render-label.c:69 -msgid "set the label to render" -msgstr "поÑтавља Ð½Ð°Ñ‚Ð¿Ð¸Ñ Ð·Ð° Ñтварање" - -#: util/grub-render-label.c:73 -msgid "use FILE as font (PF2)." -msgstr "кориÑти ДÐТОТЕКУ као Ñловни лик (ПФ2)." - -#. TRANSLATORS: This file takes a text and creates a graphical representation of it, -#. putting the result into .disk_label file. The result is always stored to file and -#. never shown directly, so don't use "show" as synonym for render. Use "create" if -#. "render" doesn't translate directly. -#: util/grub-render-label.c:136 -msgid "Render Apple .disk_label." -msgstr "Ствара Ејпол „.disk_label“." - -#: util/grub-render-label.c:158 util/grub-syslinux2cfg.c:169 -msgid "Missing arguments\n" -msgstr "ÐедоÑтају аргументи\n" - -#: util/grub-script-check.c:87 -msgid "[PATH]" -msgstr "[ПУТÐЊÐ]" - -#: util/grub-script-check.c:88 -msgid "Checks GRUB script configuration file for syntax errors." -msgstr "" -"Проверава да ли има грешака ÑинтакÑе у датотеке подешавања Ñкрипте ГРУБ-а." - -#: util/grub-script-check.c:207 -#, c-format -msgid "Syntax error at line %u\n" -msgstr "Грешка ÑинтакÑе у %u. реду\n" - -#: util/grub-script-check.c:212 -#, c-format -msgid "Script `%s' contains no commands and will do nothing\n" -msgstr "Скрипта „%s“ не Ñадржи наредбе и неће урадити ништа\n" - -#: util/grub-setup.c:79 -#, c-format -msgid "use FILE as the boot image [default=%s]" -msgstr "кориÑти ДÐТОТЕКУ као подизну Ñлику [оÑновно=%s]" - -#: util/grub-setup.c:81 -#, c-format -msgid "use FILE as the core image [default=%s]" -msgstr "кориÑти ДÐТОТЕКУ као кључну Ñлику [оÑновно=%s]" - -#: util/grub-setup.c:210 -msgid "No device is specified.\n" -msgstr "Ðије наведен ниједан уређај.\n" - -#: util/grub-setup.c:224 -msgid "" -"Set up images to boot from DEVICE.\n" -"\n" -"You should not normally run this program directly. Use grub-install instead." -msgstr "" -"Подешава Ñлике за подизање из УРЕЂÐЈÐ.\n" -"\n" -"Ðе би требало директно да покренете овај програм. УмеÑто тога кориÑтите " -"„grub-install“." - -#: util/grub-setup.c:228 -msgid "DEVICE must be an OS device (e.g. /dev/sda)." -msgstr "УРЕЂÐЈ мора бити уређај ОС-а (нпр. „/dev/sda“)." - -#: util/grub-setup.c:297 -#, c-format -msgid "Invalid device `%s'.\n" -msgstr "ÐеиÑправан уређај „%s“.\n" - -#: util/grub-syslinux2cfg.c:64 -msgid "root directory as it will be seen on runtime [default=/]." -msgstr "" -"корени директоријум као што ће бити виђен у време покретања [оÑновно=/]." - -#: util/grub-syslinux2cfg.c:69 -msgid "" -"current directory of syslinux as it will be seen on runtime [default is " -"parent directory of input file]." -msgstr "" -"текући директоријум ÑиÑлинукÑа као што ће бити виђен у време покретања " -"[оÑновни је матични директоријум улазне датотеке]." - -#: util/grub-syslinux2cfg.c:74 -msgid "write output to FILE [default=stdout]." -msgstr "пише излаз у ДÐТОТЕКУ [оÑновно=stdout]." - -#: util/grub-syslinux2cfg.c:148 -msgid "Transform syslinux config into GRUB one." -msgstr "Претвара подешавања ÑиÑлинукÑа у оно ГРУБ-ово." - -#: util/mkimage.c:688 util/mkimage.c:717 util/mkimage.c:734 -msgid "cannot compress the kernel image" -msgstr "не могу да Ñажмем Ñлику језгра" - -#: util/mkimage.c:766 util/mkimage.c:1077 -#, c-format -msgid "unknown compression %d" -msgstr "непознато Ñажимање %d" - -#: util/mkimage.c:1088 -msgid "Decompressor is too big" -msgstr "РаÑпакивач је превелик" - -#: util/mkimage.c:1133 -#, c-format -msgid "core image is too big (0x%x > 0x%x)" -msgstr "кључна Ñлика је превелика (0x%x > 0x%x)" - -#: util/mkimage.c:1140 -#, c-format -msgid "kernel image is too big (0x%x > 0x%x)" -msgstr "Ñлика језгра је превелика (0x%x > 0x%x)" - -#: util/mkimage.c:1220 util/mkimage.c:1501 -#, c-format -msgid "diskboot.img size must be %u bytes" -msgstr "величина „diskboot.img“ мора бити %u бајта" - -#: util/mkimage.c:1571 -msgid "" -"fwstart.img doesn't match the known good version. proceed at your own risk" -msgstr "" -"„fwstart.img“ не одговара познатом добром издању. наÑтавите на ÑопÑтвени " -"ризик" - -#: util/mkimage.c:1575 util/mkimage.c:1601 -msgid "firmware image is too big" -msgstr "Ñлика уграђеног програма је превелика" - -#: util/resolve.c:93 -#, c-format -msgid "invalid line format: %s" -msgstr "неиÑправан Ð·Ð°Ð¿Ð¸Ñ Ñ€ÐµÐ´Ð°: %s" - -#: util/setup.c:167 -msgid "the first sector of the core file is not sector-aligned" -msgstr "први Ñектор кључне датотеке није поравнат на Ñектор" - -#: util/setup.c:177 -msgid "non-sector-aligned data is found in the core file" -msgstr "пронађени Ñу подаци који ниÑу поравнати-на-Ñектору у кључној датотеци" - -#: util/setup.c:199 -msgid "the sectors of the core file are too fragmented" -msgstr "Ñектори кључне датотеке Ñу превише иÑцепкани" - -#: util/setup.c:280 -#, c-format -msgid "the size of `%s' is not %u" -msgstr "величина за „%s“ није %u" - -#: util/setup.c:290 -#, c-format -msgid "the size of `%s' is too small" -msgstr "величина за „%s“ је премала" - -#: util/setup.c:428 -msgid "" -"Attempting to install GRUB to a disk with multiple partition labels or both " -"partition label and filesystem. This is not supported yet." -msgstr "" -"Покушавам да инÑталирам ГРУБ на диÑк Ñа вишенатпиÑном партицијом или и Ñа " -"натпиÑом партиције и ÑиÑтемом датотека. Ово још није подржано." - -#: util/setup.c:441 -#, c-format -msgid "unable to identify a filesystem in %s; safety check can't be performed" -msgstr "" -"не могу да одредим ÑиÑтем датотека на „%s“; провера безбедноÑти не може бити " -"обављена" - -#. TRANSLATORS: Filesystem may reserve the space just GRUB isn't sure about it. -#: util/setup.c:445 -#, c-format -msgid "" -"%s appears to contain a %s filesystem which isn't known to reserve space for " -"DOS-style boot. Installing GRUB there could result in FILESYSTEM " -"DESTRUCTION if valuable data is overwritten by grub-setup (--skip-fs-probe " -"disables this check, use at your own risk)" -msgstr "" -"Изгледа да „%s“ Ñадржи „%s“ ÑиÑтем датотека који није познат по томе да " -"резервише проÑтор за подизање у Ñтилу ДОС-а. ИнÑталирање ГРУБ-а на том " -"меÑту може довеÑти до УÐИШТЕЊРСИСТЕМРДÐТОТЕКРако „grub-setup“ препише " -"кориÑне податке („--skip-fs-probe“ иÑкључује ову проверу, кориÑтите на " -"ÑопÑтвену одговорноÑÑ‚)" - -#. TRANSLATORS: Partition map may reserve the space just GRUB isn't sure about it. -#: util/setup.c:458 -#, c-format -msgid "" -"%s appears to contain a %s partition map which isn't known to reserve space " -"for DOS-style boot. Installing GRUB there could result in FILESYSTEM " -"DESTRUCTION if valuable data is overwritten by grub-setup (--skip-fs-probe " -"disables this check, use at your own risk)" -msgstr "" -"Изгледа да „%s“ Ñадржи „%s“ мапу партиција која није позната по томе да " -"резервише проÑтор за подизање у Ñтилу ДОС-а. ИнÑталирање ГРУБ-а на том " -"меÑту може довеÑти до УÐИШТЕЊРСИСТЕМРДÐТОТЕКРако „grub-setup“ препише " -"кориÑне податке („--skip-fs-probe“ иÑкључује ову проверу, кориÑтите на " -"ÑопÑтвену одговорноÑÑ‚)" - -#: util/setup.c:465 -#, c-format -msgid "" -"%s appears to contain a %s partition map and LDM which isn't known to be a " -"safe combination. Installing GRUB there could result in FILESYSTEM " -"DESTRUCTION if valuable data is overwritten by grub-setup (--skip-fs-probe " -"disables this check, use at your own risk)" -msgstr "" -"Изгледа да „%s“ Ñадржи „%s“ мапу партиција и ЛДМ који ниÑу познати по томе " -"да резервишу проÑтор за подизање у Ñтилу ДОС-а. ИнÑталирање ГРУБ-а на том " -"меÑту може довеÑти до УÐИШТЕЊРСИСТЕМРДÐТОТЕКРако „grub-setup“ препише " -"кориÑне податке („--skip-fs-probe“ иÑкључује ову проверу, кориÑтите на " -"ÑопÑтвену одговорноÑÑ‚)" - -#: util/setup.c:478 -msgid "" -"Attempting to install GRUB to a partitionless disk or to a partition. This " -"is a BAD idea." -msgstr "" -"Покушавам да инÑталирам ГРУБ на диÑк без париција или на партицију. Ово је " -"ЛОШРзамиÑао." - -#: util/setup.c:483 -msgid "" -"Attempting to install GRUB to a disk with multiple partition labels. This " -"is not supported yet." -msgstr "" -"Покушавам да инÑталирам ГРУБ на диÑк Ñа вишенатпиÑном партицијом. Ово још " -"није подржано." - -#: util/setup.c:489 -#, c-format -msgid "Partition style `%s' doesn't support embedding" -msgstr "ПартицијÑки Ñтил „%s“ не подржава уграђивање" - -#: util/setup.c:496 -#, c-format -msgid "File system `%s' doesn't support embedding" -msgstr "СиÑтем датотека „%s“ не подржава уграђивање" - -#: util/setup.c:537 -msgid "Your embedding area is unusually small. core.img won't fit in it." -msgstr "Ваша облаÑÑ‚ уграђивања је необично мала. „core.img“ неће Ñтати у њу." - -#: util/setup.c:559 util/setup.c:725 util/setup.c:844 -msgid "no terminator in the core image" -msgstr "нема завршника у Ñлици језгра" - -#: util/setup.c:622 -msgid "core.img version mismatch" -msgstr "издање „core.img“-а не одговара" - -#: util/setup.c:675 -msgid "" -"embedding is not possible, but this is required for RAID and LVM install" -msgstr "уграђивање није могуће, али је потребно за РÐИД и ЛВМ инÑталацију" - -#: util/setup.c:682 -#, c-format -msgid "can't determine filesystem on %s" -msgstr "не могу да одредим ÑиÑтем датотека на „%s“" - -#: util/setup.c:685 -#, c-format -msgid "filesystem `%s' doesn't support blocklists" -msgstr "ÑиÑтем датотека „%s“ не подржава ÑпиÑкове блокова" - -#. TRANSLATORS: cross-disk refers to /boot being on one disk -#. but MBR on another. -#: util/setup.c:694 -msgid "embedding is not possible, but this is required for cross-disk install" -msgstr "" -"уграђивање није могуће, али је потребно за инÑталацију унакрÑних диÑкова" - -#: util/setup.c:700 -msgid "" -"Embedding is not possible. GRUB can only be installed in this setup by " -"using blocklists. However, blocklists are UNRELIABLE and their use is " -"discouraged." -msgstr "" -"Уграђивање није могуће. ГРУБ може једино бити инÑталиран у овом подешавању " -"коришћењем ÑпиÑкова блокова. Међутим, ÑпиÑкови блокова Ñу ÐЕПОУЗДÐÐИ и " -"њихова употреба Ñе не препоручује." - -#. TRANSLATORS: Here GRUB refuses to continue with blocklist install. -#: util/setup.c:705 -msgid "will not proceed with blocklists" -msgstr "нећу наÑтавити Ñа ÑпиÑковима блокова" - -#: util/setup.c:817 util/setup.c:837 -msgid "blocklists are invalid" -msgstr "ÑпиÑкови блокова Ñу неиÑправни" - -#: util/setup.c:847 -msgid "blocklists are incomplete" -msgstr "ÑпиÑкови блокова Ñу непотпуни" - -#~ msgid "%.*s: ARGP_HELP_FMT parameter must be positive" -#~ msgstr "%.*s: ÐРГП_ПОМОЋ_ФМТ параметар мора бити позитиван" - -#~ msgid "%s: option '--%s' doesn't allow an argument\n" -#~ msgstr "%s: опција „--%s“ не допушта аргумент\n" - -#~ msgid "%s: unrecognized option '--%s'\n" -#~ msgstr "%s: непозната опција „--%s“\n" - -#~ msgid "%s: option '-W %s' doesn't allow an argument\n" -#~ msgstr "%s: опција „-W %s“ не допушта аргумент\n" - -#~ msgid "%s: option '-W %s' requires an argument\n" -#~ msgstr "%s: опција „-W %s“ не захтева аргумент\n" - -#~ msgid "Usage: %s -o OUTPUT CKBMAP_ARGUMENTS...\\n" -#~ msgstr "Употреба: %s -o ИЗЛÐЗ ЦКБМÐПÐ_ÐРГУМЕÐТИ...\\n" - -#~ msgid "Make GRUB keyboard layout file." -#~ msgstr "Прави датотеку раÑпореда таÑтатуре ГРУБ-а." - -#~ msgid "print this message and exit" -#~ msgstr "иÑпиÑује ову поруку и излази" - -#~ msgid "print the version information and exit" -#~ msgstr "иÑпиÑује податке о издању и излази" - -#~ msgid "%s generates a keyboard layout for GRUB using ckbcomp\\n" -#~ msgstr "„%s“ Ñтвара раÑпоред таÑтатуре за ГРУБ кориÑтећи „ckbcomp“\\n" - -#~ msgid "Report bugs to ." -#~ msgstr "Грешке пријавите на ." - -#~ msgid "%s: option requires an argument -- `%s'\\n" -#~ msgstr "%s: опција захтева аргумент -- „%s“\\n" - -#~ msgid "Usage: %s [OPTION]\\n" -#~ msgstr "Употреба: %s [ОПЦИЈÐ]\\n" - -#~ msgid "Generate a grub config file" -#~ msgstr "Ствара датотеку подешавања груба" - -#~ msgid "output generated config to FILE [default=stdout]" -#~ msgstr "шаље Ñтворено подешавање у ДÐТОТЕКУ [оÑновно=stdout]" - -#~ msgid "Unrecognized option `%s'\\n" -#~ msgstr "Ðепозната опција „%s“\\n" - -#~ msgid "%s: You must run this as root\\n" -#~ msgstr "%s: Ово морате покренути као админиÑтратор\\n" - -#~ msgid "%s: Not found.\\n" -#~ msgstr "%s: ÐиÑам нашао.\\n" - -#~ msgid "Generating grub configuration file ..." -#~ msgstr "Стварам датотеку подешавања груба ..." - -#~ msgid "" -#~ "Syntax errors are detected in generated GRUB config file.\n" -#~ "Ensure that there are no errors in /etc/default/grub\n" -#~ "and /etc/grub.d/* files or please file a bug report with\n" -#~ "%s file attached." -#~ msgstr "" -#~ "Откривене Ñу грешке ÑинтакÑе у Ñтвореној датотеци подешавања ГРУБ-а.\n" -#~ "Проверите да ли има грешака у датотекама „/etc/default/grub“\n" -#~ "и „/etc/grub.d/*“ или попуните извештај о грешкама\n" -#~ "и приложите датотеку „%s“." - -#~ msgid "done" -#~ msgstr "готово" - -#~ msgid "Warning:" -#~ msgstr "Упозорење:" - -#~ msgid "Usage: %s [OPTION] MENU_ENTRY\\n" -#~ msgstr "Употреба: %s [ОПЦИЈÐ] УÐОС_ИЗБОРÐИКÐ\\n" - -#~ msgid "Set the default boot menu entry for GRUB, for the next boot only." -#~ msgstr "" -#~ "Подешава оÑновни ÑƒÐ½Ð¾Ñ Ð¸Ð·Ð±Ð¾Ñ€Ð½Ð¸ÐºÐ° подизања за ГРУБ, Ñамо за Ñледеће " -#~ "подизање." - -#~ msgid "" -#~ "expect GRUB images under the directory DIR/%s instead of the %s directory" -#~ msgstr "" -#~ "очекује ГРУБ Ñлике под директоријумом ДИР/%s умеÑто под %s директоријумом" - -#~ msgid "" -#~ "MENU_ENTRY is a number, a menu item title or a menu item identifier. " -#~ "Please note that menu items in\n" -#~ "submenus or sub-submenus require specifying the submenu components and " -#~ "then the\n" -#~ "menu item component. The titles should be separated using the greater-" -#~ "than\n" -#~ "character (>) with no extra spaces. Depending on your shell some " -#~ "characters including > may need escaping. More information about this is " -#~ "available\n" -#~ "in the GRUB Manual in the section about the 'default' command. " -#~ msgstr "" -#~ "УÐОС_ИЗБОРÐИКРје број, наÑлов Ñтавке изборника или одредник Ñтавке " -#~ "изборника. Знајте да Ñтавке изборника у\n" -#~ "подизборницима или под-подизборницима захтевају навођење ÑаÑтојака " -#~ "подизборника а затим\n" -#~ "ÑаÑтојак Ñтавке изборника. ÐаÑлови требају бити одвојени знаком > (веће-" -#~ "од) без додатних размака. У завиÑноÑти од ваше конзоле неким знацима " -#~ "укључујући > можда је потребан знак за излазак. Више информација о овоме " -#~ "је доÑтупно\n" -#~ "у грубовом упутÑтву у одељку о наредби „default“. " - -#~ msgid "More than one menu entry?" -#~ msgstr "Више од једног уноÑа изборника?" - -#~ msgid "Menu entry not specified." -#~ msgstr "Ð£Ð½Ð¾Ñ Ð¸Ð·Ð±Ð¾Ñ€Ð½Ð¸ÐºÐ° није наведен." - -#~ msgid "Set the default boot menu entry for GRUB." -#~ msgstr "Подешава оÑновни ÑƒÐ½Ð¾Ñ Ð¸Ð·Ð±Ð¾Ñ€Ð½Ð¸ÐºÐ° подизања за ГРУБ." - -#~ msgid "This requires setting GRUB_DEFAULT=saved in %s/default/grub.\\n" -#~ msgstr "Ово захтева подешавање „GRUB_DEFAULT=saved“ у „%s/default/grub“.\\n" - -#~ msgid "MENU_ENTRY is a number, a menu item title or a menu item identifier." -#~ msgstr "" -#~ "УÐОС_ИЗБОРÐИКРје број, наÑлов Ñтавке изборника или одредник Ñтавке " -#~ "изборника." - -#~ msgid "" -#~ "Requested serial terminal but GRUB_SERIAL_COMMAND is unspecified. Default " -#~ "parameters will be used." -#~ msgstr "" -#~ "Затражен је ÑеријÑки терминал али „ГРУБОВÐ_СЕРИЈСКÐ_ÐÐРЕДБГ није " -#~ "наведена. КориÑтиће Ñе оÑновни параметри." - -#~ msgid "Found theme: %s\\n" -#~ msgstr "Ðађох тему: %s\\n" - -#~ msgid "Found background: %s\\n" -#~ msgstr "Ðађох позадину: %s\\n" - -#~ msgid "Unsupported image format" -#~ msgstr "Ðеподржани Ð·Ð°Ð¿Ð¸Ñ Ñлике" - -#~ msgid "" -#~ "Setting GRUB_TIMEOUT to a non-zero value when GRUB_HIDDEN_TIMEOUT is set " -#~ "is no longer supported." -#~ msgstr "" -#~ "Подешавам „GRUB_TIMEOUT“ (време иÑтека груба) на не-нулту вредноÑÑ‚ када " -#~ "подешавање „GRUB_HIDDEN_TIMEOUT“ (Ñкривено време иÑтека груба) више није " -#~ "подржано." - -#~ msgid "Found GNU Mach: %s" -#~ msgstr "Ðађох Гну Мак: %s" - -#~ msgid "Found Hurd module: %s" -#~ msgstr "Ðађох модул Хурда: %s" - -#~ msgid "Some Hurd stuff found, but not enough to boot." -#~ msgstr "Ðађох неке Ñтвари Хурда, али недовољно за подизање." - -#~ msgid "%s, with Hurd %s (recovery mode)" -#~ msgstr "%s, Ñа Хурдом %s (режим опоравка)" - -#~ msgid "%s, with Hurd %s" -#~ msgstr "%s, Ñа Хурдом %s" - -#~ msgid "" -#~ "Please don't use old title `%s' for GRUB_DEFAULT, use `%s' (for versions " -#~ "before 2.00) or `%s' (for 2.00 or later)" -#~ msgstr "" -#~ "Ðемојте кориÑтити Ñтари наÑлов „%s“ за „GRUB_DEFAULT“, кориÑтите „%s“ (за " -#~ "издања пре 2.00) или „%s“ (за 2.00 или новије)" - -#~ msgid "Loading GNU Mach ..." -#~ msgstr "Учитавам Гну Мак ..." - -#~ msgid "Loading the Hurd ..." -#~ msgstr "Учитавам Хурд ..." - -#~ msgid "Advanced options for %s" -#~ msgstr "Ðапредне опције за „%s“" - -#~ msgid "Loading kernel of Illumos ..." -#~ msgstr "Учитавам језгро ИлумоÑ-а ..." - -#~ msgid "%s, with kFreeBSD %s (recovery mode)" -#~ msgstr "%s, Ñа кФриБСД-ом %s (режим опоравка)" - -#~ msgid "%s, with kFreeBSD %s" -#~ msgstr "%s, Ñа кФриБСД-ом %s" - -#~ msgid "Loading kernel of FreeBSD %s ..." -#~ msgstr "Учитавам језгро ФриБСД-а %s ..." - -#~ msgid "Found kernel of FreeBSD: %s\\n" -#~ msgstr "Ðађох језгро ФриБСД-а: %s\\n" - -#~ msgid "Found kernel module directory: %s\\n" -#~ msgstr "Ðађох директоријум модула језгра: %s\\n" - -#~ msgid "%s, with Linux %s (recovery mode)" -#~ msgstr "%s, Ñа ЛинукÑом %s (режим опоравка)" - -#~ msgid "%s, with Linux %s" -#~ msgstr "%s, Ñа ЛинукÑом %s" - -#~ msgid "Loading Linux %s ..." -#~ msgstr "Учитавам Ð›Ð¸Ð½ÑƒÐºÑ %s ..." - -#~ msgid "Loading initial ramdisk ..." -#~ msgstr "Учитавам почетни рамдиÑк ..." - -#~ msgid "Found linux image: %s\\n" -#~ msgstr "Ðађох Ñлику линукÑа: %s\\n" - -#~ msgid "Found initrd image: %s\\n" -#~ msgstr "Ðађох Ñлику инитрд-а: %s\\n" - -#~ msgid "%s, with kernel %s (via %s, recovery mode)" -#~ msgstr "%s, Ñа језгром %s (путем %s, режим опоравка)" - -#~ msgid "%s, with kernel %s (via %s)" -#~ msgstr "%s, Ñа језгром %s (путем %s)" - -#~ msgid "Found NetBSD kernel: %s\\n" -#~ msgstr "Ðађох ÐетБСД језгро: %s\\n" - -#~ msgid "Windows Vista/7 (loader)" -#~ msgstr "Виндоуз ВиÑта/7 (учитавач)" - -#~ msgid "Windows NT/2000/XP (loader)" -#~ msgstr "Виндоуз ÐТ/2000/ИкÑП (учитавач)" - -#~ msgid "Found %s on %s (%s)\\n" -#~ msgstr "Ðађох %s на %s (%s)\\n" - -#~ msgid "(32-bit)" -#~ msgstr "(32-бита)" - -#~ msgid "(64-bit)" -#~ msgstr "(64-бита)" - -#~ msgid "(on %s)" -#~ msgstr "(на %s)" - -#~ msgid "%s, with Xen %s and Linux %s (recovery mode)" -#~ msgstr "%s, Ñа ИкÑеном %s и ЛинукÑом %s (режим опоравка)" - -#~ msgid "%s, with Xen %s and Linux %s" -#~ msgstr "%s, Ñа ИкÑеном %s и ЛинукÑом %s" - -#~ msgid "%s, with Xen hypervisor" -#~ msgstr "%s, Ñа ИкÑен хипервизором" - -#~ msgid "Loading Xen %s ..." -#~ msgstr "Учитавам ИкÑен %s ..." - -#~ msgid "Xen hypervisor, version %s" -#~ msgstr "ИкÑен хипервизор, издање %s" - -#~ msgid "Advanced options for %s (with Xen hypervisor)" -#~ msgstr "Ðапредне опције за %s (Ñа ИкÑен хипервизором)" - -#~ msgid "Found %s on %s\\n" -#~ msgstr "Ðађох %s на %s\\n" - -#~ msgid "%s is not yet supported by grub-mkconfig.\\n" -#~ msgstr "„%s“ још није подржано „grub-mkconfig“-ом.\\n" - -#~ msgid "Unsupported substitution flag: 0x%x\n" -#~ msgstr "Ðеподржана заÑтавица замене: 0x%x\n" - -#~ msgid "Unknown gsub font feature 0x%x (%s)\n" -#~ msgstr "Ðепозната функција Ñловног лика гÑуб-а 0x%x (%s)\n" diff --git a/thirdparty/grub-2.04/po/stamp-po b/thirdparty/grub-2.04/po/stamp-po deleted file mode 100644 index 9788f7023..000000000 --- a/thirdparty/grub-2.04/po/stamp-po +++ /dev/null @@ -1 +0,0 @@ -timestamp diff --git a/thirdparty/grub-2.04/po/sv.gmo b/thirdparty/grub-2.04/po/sv.gmo deleted file mode 100644 index 5811935b064090dcaeddf1c59dea49cd88792fba..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 120421 zcmdqKcYKt^+qbMN=k#lF%f2ly_VILW;XT6`@w{2pRXI-ANGeMU}sni$HE{aIp1oy zH@qIUfp@`u;KQ&t+yM85UqPk26Ly7NLpIz{n2dcqOoSD%1w0$Jhv&nV3FPB=ZP@4A z3;Vhn%7*`)3yBL~fQsKL;`2>|L*XJAfy)0&xEK5bc7QFTwme;6TkON2%0CVs08?Q* zI0p`c3!v(A8BB)v!-4Q~h-iHsYOVixsQMoc`@#Sm4Nr6K55sZTH^A0#k2))lz2Qjg zePAzG2={;ysCv~w<+sAwpLF&wVN2XQQCY;|>jrzm?yw6S>o^lC+&rlI24E*x1J!;f zLe=ja=YA_x{U3vp*Naf~+T!>%9EJT?h>H1!Ew*}+0@cok!R{~&)sCk@4_*p8!uw%2 z_&iiOKZMfL?XVBrx8AyshH8&2XAeN>?Gkt@Tm|RB0S!Lik?>R~J>CixZzq&o_FrQ4 z>Hw&Gdqb6bEL1y8cJ7%_@|z7uz$H-iyb10HKY;tgU!cXg_B{6W3B(eFa>)A_Jr3$<@+R*-fV#f z!at!04>-=2donx#dx_&>sQ4E;|2yCS>@Pe1;@o>3Z~MsN zl>D~Ck+Ah?wjWJ|>Sr@xcUTOSUI&mM+K_e-eqwK@acfc;=Ucp+4}_d)5$i%|J}10|1r&$RJ}!GYLkzzMJhs@&_K z(tQ#xfgeG&^X#*1yB!Bro>QRo@CvB>UW0AnS8yM=9V)*)&bIY95U#*J8LC}3!=VZX zRqsCM*!G(MHJ;=`$+-+F|HV+_#ubh?!9m#9L&g6Ts{T9S0NCeT#w0ics-CC8gW>IP zZ}!9R& zGgNzShWo;w;mfeig|sVhr4RSReE1<$ej~52?UN7NV4n?D{&KhnTnZKL zSg3Yd3D1LfIHsZ8O7}IW`tE>|f7>gq9*l)5|8yvMmBItz*>D0}2fM*focj)_@ZDG1 za*T%iVb6ln3%_$;3_D>z3-*Vroc&4I1N$3L<^3K?pIff7?K2Qc9|uGA*D+B2DGj!O z3!vl~hSKXgsQAY~)oV3Of-gXg8^1%=U8NH`8$rRKE+uJa`;beO`j9 z-=|P=*a_RgE~{<%`$FmcSlA2BhLYn_sCnU9sPa7vCAY7j(%Ey3EpJaKdlppw^PtLG z1697`U>|rsRQ$W3>h%(ooW6jH{}c4!-d9`s4uk4f)1l;iB|lyaz$aXBJdB%AoYJ5~{tIz!~sTm<>OK zDo@hQR?iNG(y!T2dR+w*;ZnFiTmz*?55a!$b*OZIb?kbJ-FKuwm46cSU;&ieqt1Q- z+z0zzurGWJ4uT&;>H9vnTK_>%`Hz9hzXVF}>R@Yl15|nLfGW=hC^>u!hrm5=vwAWT zs-B~uQYwt=TOo(EOFE1>k}VW@b&!O5`a?N;7LLbY3^v!4Q!v0nt0 z-jh)2Z-VpS2T=Na@EukUi{W7Gi(w162DXCN!oA>4(8vpFe0U5>zOTdf@M~xP9jcz4 z?zH;RA1a@TQ1Z`n3_;cFY$$o%4kh2`oP8@)`oBZzS*N>fz5}7;Jqaq^BB*i)q2zKQ z^uzn0^kVys{rE|37DNyyf8tw<5fl6-+^x!tw z1-7G8?+g1vxsQPwcV|JxUkFv6i=paqBh)zaAXI(dfhu?F2W+^$Q1ToLRqlCE`7eS> z_Z&D3-Uz$HH=*?TJ19N-2}(|XLiL+I4_g1}Q02{r8gKki<4Gk{KZ?Qua2Zto*Fe>4 z6C49Sgh#<{583k8!T#9Kh05n{h^qMBfeLr_dY^AD+y;+<*$=b!gd3pJKj9JEjyJ)B zu)hW~;J%OAc0UZNog1L!v<6C^FTvjMN2qi;^YOwf}ce`L%k=rrQUOz&;lCfE7^boe2BE)lm6A1r`5o zD7kzG)xP^bZNnW5CD$^jd@q1X?>4CVY=CP2FQM}P11g>F&)E4P4JKkQaIA-t^D3xz z+Xz+PAEDAqe%9uf16BT|a5%gfc7X4}fp8n_1iL(E>oEYzeG=>sOJQGl8r&P+1Xcd~ zU_1CaOo3aW#)q!Y+j*b@?uGpVxF@^<4u)%B7;c2pi%A=hEi8fw@Jy)iXFFa5Ro)d) z^|%Ro@IBZE?u05|?~PW@X;Aekhia#KsCKyoN-j4;#oOrIzkzMBw|K$!v-WT@_Cd}b zfQo+{l>9G-t>Htk1$+v&g3m$e)r(N|`WC7^_u6FlWj){!?8m`Da2*^5UxNzod(m=# zsCuSA$)yxZj#t2T@MC0pMqQ1X}yJHlh2+V>nN zdEEt7j;Epe!xpIU+o8gDe%ZEre<*pULd7qGig!9xxvqvP*L~1~8=d<$sC*J$vFr@h z9*J-tm;sgFp-}xl45eqMLh0jLDEYnshr(@8<>>yZ)t5=I6ZSNybc&$L5rK+-3RHf# zLZ!RO`F{n~-hV<5PI}GCdp1;imqFF<3@Eu=1NVgwLiOKGuo`~h?6Y3C?Xb}COsM$R zI{PC~<=+fP!Ip2>{rGsO_B|S^y!9{%u6Fhp9e;+&xc7R~&ObR&NXEvM)7em$aK9~kKz#7U{~z9P~|Iw zdGJE0e*dxaZ}*NJhx@@cxTiqLe==0NHNY|OQmFRa1owj;c=oYs)_fPQ;!D zRo-LZNO&GR06qb`!7WhzWII&29Z=&;`}eGSSJ)o=0Z{#W2vm7SIs2hd`5y^8!WyXb zPJq(iQ=#f}5mY*>pxXTw*abcVJ@_tE{(r#zVTbo^x`UzYQ=!UrgyTFYy{Ld1r|KM! zhsy6vsB&BkHLk6IlJ~=~GyEK?d^@1z*?NmTKj{Hgz6DVI>STBzTnj_+aX1Z*_<%Nr zi=oQ#3{<~+9kztOK&AT!lw8_>XxqQHV=k1Q90O;;TcGs1|UJRutVb}+r z0wup2-~n(w^x$SFef$k-eCYIv4L1%Bz&;Zyy$I|H&w{GYI_SZ7VK4XxR5=g$)V6;P zlz%ByJDdzvo;6VE-4DmXS79=2`S>!HeV0@QrB3d(;Y z>;T_^lJ8eg@%Q}FwsWH6c&PHtgsR^>D0!UhxC+k2em_iu-M_Nwl|a>JF;suM6l&a9 z2PN01q4IqXs-1p?17NqWZF#3a>D7_2HLQdRw-6oz&xJww4pezEw%PbcLFvbGsQgw! zwcGtr_5B`7uYBJy*MKf?7R-l3;q_2*e+??#pP|at@ms5xhQ9yU zem?~E$2u7fgMOF<&w&HsdMN$)1WK=V!d9@~k5&$Yp~^MI*$ZGN?B!7D)hk5^!4xDBeDzU@}-$x!7w5-Q($Q0=}P zO0MTXwa*=}D|{a+y&qu)Z2z;(uMjG~RZ#l;AXL5IhDzrzI05$k#m1ivC7;DmEEUIro>L%Krsa`C9yD z2NV9V`AmRv z4?(5B3M##ap!DH2cmPb;Y44qSLdpLqsQkik6kHBf{|BJ-^<}8^wnFLOUr^yY{AtIb zL^u+ACY1kTsC-X_s@GLe?Q_`c)k@Nw)vz;^JizifJs!=BiGgo@wEmtf)# zfFAbAQ1YGw+r#6a@;wKtyw^eXlP96{t$jj*>E|OIr$Ch_3#z^5LY223N-k$Y)&EMU z{BMOCC!U1L?>c*7@ja+^PJzmADpWa(q1v+=s-CAp<#R36xbPs< z__!4+ew!8v=A5+~oPfO)D&9&s0zL#y|A&%`J__mu`a;zs6{>v;q2zNaRDNrn{{v9< z*$7picb)$>sQME)1sQk7ew&3QOSKa1!j;I>F2b z*-+^`1!uxPpz1TDO@iq^Rj>#4E1~3jpW_=)_4yGN!yauDd;dnT7Un`F?sPs;O z%I{XFc6|nFy!;PTziZRk%6ll3zGOqCABE~4=RozxRZ#7IJ2d%1)oUkIIs>~Tm~~$k zlpdS~GvRB_egCcrz8?~}UxAWa?tWHJB2ekAgp$ugQ03bURp0NR2fglg97%=hUrV9J zx8=@$zT*n0@$*_J{do?mKJP=#C%;0CPhIv;F!MkksCF)dEnq!Vy_dlQDDPRY8@!Z>Ca=Zs>oZ9T{e>!^~gwYcB=@7B_vZ3PVLgil#r5|TN$@Om77Tyn4 zzbB#Q&o`jz{V`NOZPC}V3sks7sPT22<1{!CdogSU&x0!8B~baUcYGVF-akXhtxZ2$ z-^ozrEQShS>)g+W8n@O#>B$>V_5Z=yyY#p9839kn{Ya?s`V$z02Pay+Ug!8ClwAG; zRsWx$^!it*a(5VD+rKN6KJB$q${vlNR{RmZ_U!mmuCzQUm8)WlMfl9Xks(ckt`JV`t-WuosD3m_E z4kg!bpz76ju$5IK*w@2U_y<%wA2c+<=fN_l zdM}4+r(2-f?`5cQYzOQE`wp|rfEstoq3U-ARC#W5+~VBZCE4<&K=r>GsPtCDk?>il z_`gA=*DKljr$G;U5T?O1p!_#MqeoElMwj7sT{8tL-Gxx~x(uqnJ_03|ub}k2-v}$e zqoCSn36y+KhiZ@Op!(J0Q0007D%~HT+O7LY+fGSP{c$Fg9@atix3i$+uo9a1Q0@8y z^k9b+Tka81`hEmdzV|r33};~f8Y0&6qi__w2u^~}LB(r1&dvj4q58)m zQ0bIHyZ}q2`(OjvJuLu^B4;?NII3cB<{S2SMrO2~hEtL(QufI{(#B z^7$C5{$D}0=TA`SwK~}9PY>7{dm>c$WH9PhIo<>{K0XUa!&a%b zyc40;C5J)Py8>#QxCm;T+5{!SyV24>%u6j{;Ejx)830H^3`k)=caF36y^9n{DOqLCHNI zDm_2cxOzP718;*f;VV$%SI-x^#2d2 zaD9qxyn~_ST>=$uAyhpsg&uqaYQ6LUEP=geSvf9+lH>hQa(NF9fqz2juR{;M30uKm;9hViR6SZ9 zVduM{Q0dNrs{b`m<$VrH|G$DB{0kljy(6uhS3~7{KUDeNf@<&2pvv(JRC~28vEz6j zD7{aHDo+a3I5{5v3H#5s@%zoO@*WLU-b0|qivp;1#B3<}EQ2HAWl-b62B?0v+4*mS zEwQ&g%9f)YR66~kDF;-!Q=s%Y70!bt@KCrOD!uk|ZM*b^(u1i`aw&$=gQKDJ=zJ(W zz0J9AfGXz?P;zQF&&pvKRQL%{?ROZIyiaiUYvA74H$my?+faIu;J5v)7nJ`vsP;;S z%C{0~d^rhf{(BHg|DJ?u@6Vz7YrFY&d>H@}uopqqa~4#*qoMMRLdkCh)Ht&mO3rse zwaa5r^Wk$a6>f(bx5ky)`8)tMf8PLA{(GR}zY0^}htA%)%*v?`jN(28sy*(2D*r~P zbiadYx1Is3KYbhrLbYQOR6Qm`)iWO|zo4@(hHAg_pyYL(St|_w(0eR6R>B&!{A9!`tdGQJNXvaawb8^D-|lA ze5ig^1wD9{v)|(Eo1pafTj$=c%I2R0C68H9{h=C8f+s@h%OgHby-$Jl*jq#se2>6oQ1zZvYgqv`E??;QHdH_EU1$9>q4Z)QRR6dJ zs=Z%pug^z6fgFdZFW!Q1bW@s@w-GwsM*Z)gE)9^koS=6rK)Mj(4H@ zSwg*)e-EhmQ=t6)Q1Uv}*>8nv@7Lim@GGc%D;w;1aUPWYHK_L30nNT-iEZamQ2Le! zl}sf)W2tSwzEJUVpyHQ7$!Q5x|F{jBaR90v{)E!6A9l)iL0#&RN*e*mhTE`tZbXQ1la>R9WZ1XYd_C_O(7 zs$V7jV9!g#nC)oAiF)#u9{jeo`5VnGkLXCq@!?EyfsB(2Y(bjV;lztoq zr57hctru>D(#r>-#)r3{2e(6o?{<={??kA6S>WtP!Kv66LB+opN*`Z?lK(cS`s{bI zoi}92rl=ewcg^dd}$dz@m|@zbEj zlug<4h`vjt-nb=N!L)s$c7~t-dG1 z@!03VDe!WrbXG7KNNvQtz9#p^h2Xv;SXN}tYxN_Qnx{ClAEVgpq9KY@zB z)A^6T$hLP5RK1Ub(&trB{p10tc6<~{ey=$9%~0jq0#&YWq2%$4vmbD=t!ICza*c;d zFAJ*O@}Twsv!VJ^IaE38pvrkJ>;rFr>VF%c`q%qV`o057KRR7v(@BPHv5$vJFC8l1 z0;v8{3YA|NsvHf_gU3Ow|5rn`%Lb_NeG61R+h7UY<5H^+M?r-@7OI_YfJ@;^&<|%` zX3vjqfhxzJP!8ZN9;#liLg~Y2Q0=w@DxJNrw0b!Tj=)|D)$cEY(uW5f--eRQuTXN| zbER#keo)~jL$%+0sQNB*?$<-L<0h!|zk`bJt+L^!K!IZS4OIK>fGS_dwFyRllc3ylq3Tl#C5JO%61)+rJa0MoA7K!Cr)%xG_EM;F zJOvg1W2p4@zRsrOLFwy3Q0Wvy_49>L>0b;z_#{-n{sgKXKR}i9H#iG+yWZ}*s-fig zIaEFOy20w_NGSJAsBu2v+*d)>=T4XgUxpR1^NqG$m%?Q1w?l>d07~C>LY1@kI_sVe zmtptAgWwjZ`Ksql3BH@*G${Lza11=~W~gZbXL{Uf z<&^{5U@wDOUxc8_bsd}ppMw)%%iHYw<{+qWOQH1bE@yuSw!*&e?Ka)+P;wpam<`p> zgHU>Q98|x#2}&-Toqex6Y`UYN`hN*jxfek7+f(5oa1B&DY=fFt_qo&NI~R}4h_*V#}#{nokSmNxf9PfgP{~VMYwnC-*r?Ypx*Tx?S zH6Klb%4aTAy^e(%-*0vP4@0%fn^5Wf2sI9MxX<>JAyD)3;ZXIcfoivt;ok5HsCKyy z9tH1(Do@w@tzHg;l3y{L3Kv6_>prOU$jeaUiM8`KO9OQ&Vee|9dIms4yyhCg3_M>4_W_(P;xj8D%@HqdA|!K zr|nSb?YrKVcMMdzGoZ%dxlr+zL&;@5RQwm9>h~E`J${3dLx+d090xg$hHv72FjPD3 z_lT{>04O=khRSa-H1&eglRKdF?+vJUzeCBX&7)So`oQVf)1bzSGoZ%jyBr^fO8+IO z@#rh4^0j`<=GO-*z41`>$%ktHqoL}x2ueRrhtl7bQ1io`Pw^8ErTy`Q1< zqy6KSBcSA80F_P%s=OybjT1LR)o(LYyL}F)z?3I!yc#HdItwbl`=I2r0ZL!Kg-W;G zlXjl!3nj-wsCHQd<$o4bebzw9;U1{?FG7{?8>nz?p0e{nFUJ{B`A4AgUkR1Y?NH;} zQ&4*GgL6-K+UDC8O0Gkpa=bK;)_$(}f8=>^T+hpaG z4W(ygj&)G&bqZ8Jxe7}D_d5R#Q2D;=>^q^_vHgp-9r{7#I{|83DTb2!nNan=2}*xo zhHBp}Q2GA=6>pE1Y&yN5`q5~p_AGEb8mfFJLXAHwp!DwvsC+(!(vwy%+x$|X(mf1H zo>6G}Jyg1PK*{%csPuL~rPKEn+fHdv;VPllJ;y_>Uv7oUXERiKtzNZyG6*XE5m4?8 za2&i6PKB>S$*;?6HvU*BeJF*}`_rN1em7M7jZopgb^aY+xAm9=rPs5d`dt7jpQX@) zcR}_0*P-I?gc-2+8+QFy2IpbF1}(VA7S=!ZgRhZ z_YZKppRi*wQ?R$d{#gRwuE1{zb0pMLiJR)Ol5kx}Zz%4=34b9b7x$a-S6}@A>Un^0 zdhW;nQ;eQz_}v7LA?`c4?L!!~M^_i;HU;9j2=_N#zDDtJixTDl%&WW~gZbY1p9GH} zEv+-w@-F9D{Fw`5Pa5{ggqcMAnV8csuizGj8*o1XK0@Hbblt?AI>cg-i=+)wHChbiL2))*x>xEOY^@e zSm%;n8a#|}-N|o(3;zw2-kgP7Ih>984zn7gr>)E52i~9J{RYBoeAKfIGY_{yxCB;X ze&qcZ%tM4b5c?10JD#*-&wqH|2gCH}dk24w0p}C84}1vwWZd=q>e!jE75M9!2Cu~4 z()ry^_@}VX#O#S)ZN`6{3%lA;@qWO69p)|GwYL1$`L*SJ3r5eS&h2c{JdpQuTplg3 z55YbJdq?sZ!TVa36LTDHvoUAN*kpVklF#|PZ^!={!cM^N4@?O6RP22)Kl9!Ta~xp; zm}=bgY{YE>_8R%)*4jGzIurj0+;73?ISHdNF!n6u{!W`z(Y~kDvcX855^G@d{r!1G>S%llyz5j~)z3zP_@B0(SgFoW-5R5%@ zDTKcX`zi2n+!Bb_k#{}Mz{$8p;SsRL<@F@?O*V-6j_on*m6+wYJ%(u@J*EWn)Z?x- z(chm899Z7?e!#yq>3&T5PrE{vZ2;LZ3AfR_@!bCYm8 zNGB8b?=bsglJVDbB=2)v`DFi`_dD>r0QckN(B!!h_m?n#VfLmyB7|K=I6YUB7fUg7 zmlDPQ6U=Pfrdw}cs-qwG*z-6qQQ{9JUJ7CBu-^?of(vnfhp@Gn=W%-qH)cVHKIC8lSS^gbY+%WXEk zgOv{NJ@EHCxApj!@;(f=Jum|aqsLEr?U2#4vSU`^H_G|R|6}}jVt*a5>b(mX%nmhHk-z)9F&#SFuL5ovr#S=#abK4uK=v1hr9 ze-B~a#=MKYwR8KHaE}r&NZhw^dm8^T+)jgMH%UWjeeV*Sjr+m)AAvoCco)DV=wU9$ z=ov#=YhfDUR=T{52Y(~??jl3;ZOK)#_Ys> z8+JYOdHY>EbQIjCip7+ z`_qQ7CAcpn?JqHZe_G(Sj4-k1$|hlk<9>{@zv9xq1U~HCjwjF9b2@Itn75j^#r(uy z@GHk?ZNGsqH(;K@eh3^*nmusugI!Oe%S-PooZGR^?Ow;5DceDqw_Vw53D*j95b529 z(Q~fz`-C`I_@z1by?I~k-W6^t??>x}=QsTHEP$Qtt8Y@1@{Glet(~ugIAdM<|H17V z+^)y|wF^4|?!H+>E^=X>=y7 zW3lgp$-%DY5BMwoH}d|COJhIYKgVqv97UYpFx@fzaGUGm{eV4>@MpU?b z7WNlixLEw3nxwT2{}p(2fu9ln1q@quUncw(!!e5QQ;eR$E}eeZ4{&MhfahY*hUefv z(uGy{(=f;2{vzpY!Cb}rbW8`#!)Wk0L0A@aJM-e9i_k;<=9RL#*fagBS@tBMEJuJrU zbeF#TSMYuad_oqUPc6(@n0t+50%4EBb_nULCy&_kIqnBL%VoU($N3G0-(rrT41eN( z5q{Ue3hW=ldi(~!Q!rC8vFEke3moOrGLt0sam1ZL{tdjp=IZr3>FUgB6r2h5l=FUr zeKmh`vG*sgo^F^ui2Ez%9GAwsxV2(j*q8jy;eAisU&36$d+eD)8p~XHik#yH+%ClE zX-)bcxIAVNH%QnEoL@fv_u+OI_FlXX#k@z@)y^NQuLk>L#OVV^U~c67N8+4_X-T+h zm-o?*C&CK|SBc*v@J`a$jN4wA1F)Zr{d(TlVZI>DJ(y0U^)~KfVKQNQV)T4M7(M5~ zO_(crA48a-_UkfxSBbNj_d?zufQtw}5x0|FUJBRr z2^058mq&M(_6^uux-=E`cHS?>yoGx!%u?KzUeQE31Gm-R;#pub#zkqNhm?K^MBXQI70QOa+bCq*HnfL2)zry*qgLh)`@o$Iw z_waF-ZX)i3ar*+J=SJ*nUbz$$puY&g{@jspSqj-OmyavGcar=|^Jj~t1 zTZR8l+#baK8upK{55cU#{vxIXztyFLRbGcbvS%f&wja~yGF&(-+d ziv2JA@8^9D=3&e%>>lnf^L{iu3;QtQc7i>zpN#ux>{%rA6K-L65$>_)TKx1}h&k51 z%l-@|0sDKz$-(H^4*{Oeqtqp<7w6#M1)ze_$HFqdJUihUgK1%$bT_v>64l6fCPocD0|yZFhD zN%-lRglUUgYvRl$t+CF17;fM3UWGZ8Fd_miI!J&iQZ_rVzglwD(3hn)v$v65Z<3d73zS_9I*e zSnl$A6#r!GeO)+($>aSd%vZc0Oj>&0Bz!4uPr~UgU%4OR{LgUlug1SS{#)Ro7(KO^ z&z!&PSK+^kcs=kx1o!V;dat`M$GbGo!TopMpCjA|{IFm#q5p$RF}s*+`m!c zJR2>{o!dbC?<8z4W%wCkcNF?20+dg}Vr@Al;7m^~OD{cihe+ zZf=vb=isO3D#yzmZ?Vq4bl8_PZiT;-hMw1nzmss|oqap+f4MYo=RFCtq)8s-ggXwm z2QYu~?#HYro%2j;j2*atNcdYYrR1e&y-WLP{QmxwD!y}XK|hE+w-JAvbFUzsD&Eh< z?PQnc*N$%z|6w8(xUkm~CiV=*ZxH4M{956DD{R-3Phs8a7e+EZSZNNN*1+Yf(C1Y z1YQ#G76r=!Vb5RYuc-}0h)ZdLp>kYeWx#D#TBdQF=y_gavSrEC!pqCd@uK1K+Qt4z zz>5SHscv|vc;U!I&*u%Q3Y6DYhoiNFd9MzXk+0q&!HUY5bCQ?ukJM76aL9|+^6L3( zy~L`jy2L0_@_9*KVW6}&9Py$mablfuDl!7KE=_|rajy$42!$7id|pXjeokK`E#e`6nQoNh`&030I0#jx?m&__52>vtP8l{#WtngMe`+= zMP-Oy?MJwwiez6RY1GsN{E?_6UK$S7;zP2ym(vc>hG=b|+FM*1EUol{(a^wJ&lFaH z$v+TT6!4-o{?dR~PQ^3w3X`I>4OIbeemGp4?0H!s1XWcmnjWRL|iwcUq z6_L96Nzp)UU5z&=DJi-jSd&y9O{$56=MyCuRaEL#NkpT6!@RmEdRyx?gzF+6GWR0E z=z_ujCIn>en!MUyuPGkboAoltPHwN)RT`oL7+YuMZxo{0)8|qS`#P@mN$4wNel}Wfm+5C-plBr8V?$p zMyv{l7kE{{1?Wo1%bb>_PHh!Tp-|Ma0K;slzcx^o>=i3*lB+1Mukkljh5cny2sA%H zUki{(sIFeBRxPaz($fO|vgEeANM_dbR6Alb652jY4&jOr!_=-bIV>xqXh!{v%&h4% zic0D;GV_aO%=y1(JJFkwS~$bY$tuiAElQuEl1%jSW?B|xre=7V1qFEp)?O42dlbCE zLtu5)flzJKx--8pAe*Qf;A3xQ&hWxDX7Ei)@&+cB4zv-}Oy%LaP??G2LJUldCPoLw zTZnblZx$aGfj5?)@iuHQ{J9I6qj$bP$NzQZ^6XI7IIz+g$}f zYnoK8F4WjgvAWxu+43`)X%L_28q}Eq`GeJF{);Da<-D z)4q=!Cijsg!xS~eSW-%cS<%WVv#`+1$So|)ESQx^()l^DnG}&ZTOd?HNu50qQVHXh zm`~G{3#+ZDU8rb;V@}qjOm}3MWFfa1n^4^48SaMBF-Tcs9hY6EMO&C#`+~5F6JB|;{cJ(cte^-?;>?n zXK}E$(#tGN$1}RXES9vq@{?1ICa*jau2u*Z%CX8Ju*yLFKOJlQ(P&L&gz4v> zei8p-99bk))5}?VQIfJiX{3R2RQsu9M3tn){}x7b2t%b?s(379QDv>mw!jyS-zd%}YR}ZfV zL>S)C!Dc=r5oVhdsz9M!T@=A|lCr@3x(c?S(I_=lvEn{-!}(#V+}uxzn+Zw*W%0)s zMG}OGFK0Fy^BF|!=GC~?_-iXQG_`GFs|&@qlsHEM{srp9VQ+dynlGJolrKFmJFkGh zIXS7h8D0rHw8A;Q^!#EktBlIT)`w9oILtWBBveXW!jZO(q2#NzB*S=9@4_)-MvXO_ zN~Tb|Jx%v(wOL9zYT05jVyL|Qqa9`qY6f1fATNh?jWjWxF%{)t6IaeMM*DQ;#UQ!I zz2a)_)i%@wh`^@YOJx_P@xWQr*#kzxRZX1=D}&|D!f3OnI+s%}GBOz`DXCw8A)(xE z9&Llhb<)i5v257gDFrvrM!m74%`7{pDjcd9Y?rHp$^zwn#+|{ti<4j35M?P+QdCerl$7IE$XTP)#Jb2zn>LIAZ zUF!|@DueUUR&5#W^zcu?nGiH)GNZ5t!X`18@@sd|#-@MlzB$5~n3^TrGou!FH#EL4Rx{F`F2WJ=8@ zWf#V{X+oF*KuVag7NSiVS})zwtA9A8^(rqXJEtr~(=M*g%ELe@0c8sf04 z`Ze*UZ9`@LNSSBXm&#Q~t6E_zCbgQDUwBxmSH|?l9>(};=}@k9ke}^FAmC})l*{9> zDyjWjkeb*8%Pv)05=k-HD-83>vaL?1tJVGn&8*cy&O_*1+QCps8p*6wU5S*Zj<39E zr9WlN*v4F9j$=kral6Vft4VW07G+CTYStG<=jO8t=E$Q=GGysyPhT2r^P2NG`c|@-ydfFrnR(4af}4dO?T3Aq~q`ZM;E&KO)0%E>eV6!GiZCGoU z+3kdTZL*i}WthWYRJSS|8KzzM0)mzekNxNAK(Uz%G0gpir;{Q|=xl{K`HdEB*3Hr{ z*8N?m;r2|%;~=)6$Qv|b_((N=Fj`9QFE=pb zgSnROjb3gi&KNA|F}+2@R+n6UHQ~j~jCNBROHO)Or|qbn8|WVz#&zs2!`Ra#YjfLF z8K|ny+2jXK&i#A!V+SjM8&QTM^>MHdxxMgz>qi58h*klY%Y#^c%$ zr8kRadtQgZ?&aldd~~j9);3Hgn#k2>*qqWj z1%(;;c7oMqYO+s@OqEuXs8(|<|IOu8e8EhR+*z|y3mm)>YqhhNxr~`e7CM>;Y~!ZBKmVj;jfZ#O@sH~}nk`Y-OBd#D&#qCmt2Y{tHoC)0GGf_jI-$K6 zroHRT$|OD}M2S9wUd~W6%q|F|0L++7qQ$udnb}#XY1x^kYg6r@Su1N!MESV6)){>n zwPoL}7WYeTEL6hW=tY^o1EJD@FVmjP(02k6#yl3_x-4NR(sUNB(ivTV!I;$s37N3N zNnD!h6%-W?PcJHzyHxE+&h2#4%b_!Ki*uxcGc(epOltjD(2y3AoXeS`K^wdAjMyw5 zbSah?Wyp>Wj;HmH#I-TdskB1qE>7a4qZkp!Mm>!Y@w+sR&ocE9f{_M;RJ~bXm@}A0 z_t+($mL=v(0GCwMmsuYu)$*HF4au4tO|7SuEu)bJXbtWE#b9*z1?nkADdLM1Zs`6k zepF}h|Al;-hWodS=*w>Bl1a~K)?wpzyD4b&Z{B$I=F+*zLMPL?*vZiw85`CZVbwFW z=>1!e6r;axHuXmBB7&wxpE=gjA*Q)oYqS>XKFC^^d3>0WpT|Nti(B21UPf_2s+Pke zxt%jkDRHM1GqQLlo)*YTeWa(qDdt^^U(X$#8VC2)M+sw;>2x;BWy~+!T==Ht#6@x7crnI@4#6g4xj6L5gmpn?4tTZ+(L91Ec!3zG)nmCKctC40A8! zhfB%KWjV{H&++iEZ@y_obF=vPXs!+|ir5vH295d}KTR?dkh%77Yh)wta+VZk#j2$- zTE}477{wjp&a)eYB-W6uzy>n+1}G~LrMD(B)zLo7H%*&ueK}+omDXy%$B}>IS+n~{ zA-+5?F*RN>pF}iNOEBT`axFjfz0yQ)M15ktSCSZ=GpzBIvTAb?i$?!*c@x8hRb=z( z!rH9=^|73)yvm085vH1)G;=92J-^7V96Y-@VrLm&{Kprh ztbG(yshgV%4Wo_8@QnmZ@h}SBB!UKV1j-Q4{G|<>MsKDHWowr0-cVKyel|(mLNcqw zzQ8cS%mke5WE#M> zyElV-9(~&6)`8>_sSD{EU*kE4f5~1J*EI^nWv4lxF+=4rY82HaWdn<*`SC(Yu3C)z zcQVo9<9|OF7AODvnPg>VW{yl5H|BpdCwrsDiY-!RJ{PoFE#-)R6!1Tm-+w=$diO1) z*5FkEZi_WWnNDV>>qKpwtwL5*HPlqv4z9C<;-TvH>WaibZ&Qm>S+byqK@JHR8+3UV zZPy@InGvsP8HwXP0(_2CE~GKLu=*p70vr_XaJ3yW2Kn5j{nt(LXLu8WzShG}1- zRlK&(%n;QJNTZxhipx{0V$x>;ZRQXANd;jw`AAB-mnq}AdC%Lq|VoGxSm6oGz%qJ(zTl#>_r@_}ZBerq1 zr)|SDWXHB2ZbQKqH`#>KJYqijv^!k)r9*779RHZmd^o}&uX6{skkw{z306}VR;qT7 zfFx#6X=;~?+-tQlWZz&VuXe;cz{KVq7LHU=+CZe#oWb%|UshLL<3)&!&g*O0WM5W> zFDoZ?x;~#WwBJv8IeEpoMfrKEq;Z~`&lg#-Rav1gE4Q#HH9LE*?SApY&Df!%xllGb zrAV>6#M`{cwlu0&~8SN0N+ zYFMo@Ye(8@Uedr}M&7Z7m-Zf7VW=T>&6(V`ZISuR7(1I=)>}G_9B6m_p|VM8NjA8w zAkh>$kM%c6F0RxV(d4|it=Tl%&xYqks>ub-&#E@db8XEQM_9#a?$(WqKH#Fi&|8Cm95EY2TPF|91VhQ9LUf9V32ji!^BNkO{}j?eTX1Po)SxeCiH^koP9d_&(%+q^*O(F zG=m9J;V*6Q=5ZiBP-|T~BCF%*Lk!xiam}N!)PABly&leBXnqPY1)XO!lq^HwYD}8gg=v=J=YNJtR=iI-!BXTnpH+Ob6<0Ey^VC>x7g^n&8nD+Gx7&95i zdZ7!2d>iFve1G$3I)q3 zN;9%{R;_pWxIhE@-(2ihK5mrt24!YXf*k?&^Hy%!>F=*&n?Q% zV3!*)_p3S63u4aZI|mnaR~g$63z`RTar3#(oDj>^7PBZ)=RWMrD$H}iBpr^-?1xZv zb4@|~3SpPN{B&o5zk+pzsdTfLP28HwT45L^GXViexoC~yXp(-Y8tiKN>Go%k~YhblDE znK`zeBOQHQ{Xdo3?hEh_A2+F>QCw=EFd<*RjJ&EO^}A_TYawyX2gEGc_@d zwW|V}J;Xn5s!Z`Tnwk@7GoRDvOvlj1Xt6&&ApLj7)+KEH%s1j;h8QV&41&MKinaAPF_YaC&?Ctz8rsP>^FeSz~;)U$;ZcdbGqR6tFeiTX_$)>UBNIp zP3G(0Bp2Y|3O*+YM=B0VCLT&{4jj@mk~p&+X4WsmJle=yKH6#5-bSjcn2oj@QB2$> z`|o&{RC+FHen=TxC+SlHI~VbVjM;RV1mb6IPU|RANL^bEVJ9FHQRlk!Ayf)~He!st zng#5pnnizH=Tup(vEut}du+)epKg}_8PVuFyLGdvh}LjNrmo6rg^hySvYR}EHTGtz z*-9yg->GpGX)o-wOVYMJb`qase(uYhQRz27f$%v8ZAvD3`jrR?+c4J2{mxXbvF||i zF+3+nORTt}wT(O3Rh_Df8w$kH9tf9K za!?lVc$bElV<#PWxhaIq*Tp#3n%`ZPj86>Lmde6+>W+_RhQq5XCUsZx8!QF=$R zM?8CLOigi+2HNu)6T@8W>XM0K25QaB9A9RccGRhe`3OxH=<)9Z8?m$4HXgu9(l5%{bWg}}mob{S~=XF@CaSf2$`?v*pr@exYH;gyzLE&UB957LWb>q9DKH+|_oTWaC4uU7XM%(5d+(DsCwRY<~D3NiQ&&5m_{qAl)2T4Y~`H>HUeU&c{ZRaW>V18Vo z*~iV2MiypQW1EtGpYMx*a2cDR3UMl$;d4SWKPRDtrZ>fp?omR*!<>0=O1njO`A9U=-~ezM9X8%TmM*Y?=JbK9})al!u)Fn zwVc!F9t0(%sP5k>NYrOQv6V5mF#4jpi7!puXtV!VgGQ5oxlPWG|4hohHT|qHpUZYm zb>l6CAR2E>liL;};dwO_&3wSx*s%IOj>&;8tPWG9gB@BlK77PFm(;;!V1J8g^|8@0 z~3-n*^I^wIee3mAd;ZdKq*PQ%`oKAbSb-F9c z*O#}``G6ETj~F?&s*0}&nz%KSg@WpEQ%&MRS?fPSY0M;;-M-lLoD(Ngd`#59`I*VZ zxpEq5j&PefR#BHKFGZKeZX|5xUBe*6ij3|@ZOpB9Gw;|rooR(ioxagdfo4H=S8Q%x z;{P&>%Bf$%vkZ$bI5d-@WifX*(3lCfiL>kRe+z78gul5-fy`Os-;?0IbOJjNxA#Nlo=LT+9*)2Z1#kSU!{ zpGe1!SB5hrVre`YZ|2MQ3mPVhrWNIT5mrW~6f6vN{pQYfwdvLm2K3>KT{SlGtn$}| z_!n5}Lv_xNrnL(QJH=DQ_|;=x;V^F=7amMfT2`C-$J@aD;}MEw#;u4quhjO$=4;Pb z8UEMviLG$mdNw|D+r@0Y`2f{zK6H<$A4`~T%dC$sVeCHyG+!qe_R>ma*EJxXNojd` zMbirN(hkvL+T76CZ!Hl{?4u(WT0a-ij{`Is#Zu6a5pW-KqF$3o~>g3o8Q6ttPz z-KgCSaj&ivVt4DYAo{LGcVrAQm33_P7?t>!jnsu~{S?mp3pRFn(xlp^v-;gZwOIuX ziZ6rA6{XR2l-e!;mr!($D|aJDcM{@k z<{C3DM;f1hoycml3!p}#L%Q#w3%EK_Uydzh*w7TXj6J^6VqQ$F*T1MypNvh*9A+Q_ z{Oy*C-fn-(QNZexRbG6>V^1=g|KkQOOtXLAAnq1BnTk2Eux#=Jn%Iew>TWX9AXRM- z2P7~3^aRb0?<4F&QlZ&=MLc_TpRCpGT=(0H0&_jdnvs#5UTIb{1^WENeqiAyYI#X+ z&2D{J9~1=ir5zQH?FG!Y2DoZ-Y?O{e9L7#NXgGJ$ihVhxs};UAB%!*HH?N{>J_SI{ zxnp)c*WAb@&&bQpP!W~{{!e*tw;b1T<@xU0;Zy968HUI<3;eL8V?#}QKmsITf&c;q zQc}Yh3Pcq^h(G~@0w}`GiI@xf6?`{$mLtv!=mq#D^Cai@|F6v4dsh`e(mgZhVmjI) zYUg+6%Jscgo*u((Mdf4TSYTeEQK3sh`0Q8xCxEi$*Ya2W5OZEF_*Z(3tta26KewC8 z_3F~5vj8k@JX(0T^uFHzseZh$x%BPA_tYYNN7Y|@zCl6n+=BD_-p>2pt18{Y_{U*M zeGxaw_I*iS!Yw)XhCOO1oE-OhwXecB;QYpdhbS-VtEz4x7JJ%H9F;^4*kRCz{C0`jc=R%je@_DONAEVZJ ziq)Lx?gz0NU+5!z5PI#|Q?@1af6unZR{gI#R;Smq7b_MF(OI z$EyHrBdGiavEul^bPoe=ol|yU?>0Vx{GOx95j%Kl<`GZ|HbG7_>RZ~E{hbpw?<1oN zJ%LT^pEYabO*wFtB!qH-*+t))yj=j2u=CJ^{Q8VV_s%u1?xYoZg}j5>H)0~D=BsH0 zb%!l^!?fj*meC`dqz%i;Zo16 z3Wvy@UAuAjKAyL?go$p|_rCh_{%cYw>aVZvkvMLw~2u}5yOk#N&#kR!7tF|%&Dj$j(OrJ9$~UoEg@6mw)@@P`pY z1W%ESVy=lGfXFf(o2^3YDvhRwL=RuJ_FVImHYzf?w24U@MFW#ImWP3&It5c0-6nVDK2L-6!bkM6vhjYHBL&Vwp`)bIBQJs%s>9SRc&=9yJNJ zEG(E>dCw++>e{vM@t8}=;v`~6yb78HoYz@Ah%IBj5QquqtDU~k89K8mLH~lX(}+y6 zFunDS(C*!wt7AIdLTvHUxxeG;*Uz05?+9cghZrFzx|JKV7!+2LVJz$rAXtSk!E1L* zW3wy+cdxGwR({f)tFzu*25|BcvW>YVo-u?!6Z<&*_2GkOBshgS*%4V(%A%56AP6dA zGzD6wZU}CbdC=N1+f+!(D?S$Wb-_~+i!SJID}3bQ^BD39Oe#iiBFh%s%HOI zW-su5NLGn5!XA^ zLIT9-G5XU1YTCrgU(#h3TR*#=Ku}^a;-#WjgyO3{8GMWDv!yriwk!%s{!noWWD56a z*U_Q8LiS8yG?9FYEmrOE!9I2mkOL+iGE`aT6+qOcORerNZ*X!>{;*xE>r#DbMo_oQ z`l1AgecXL7Ziy)uO0mjYY-+Z(nK(-`+_!#GF~Xo_NElO1Uu@d|0fDuekBUCfjnM5c zc|$Cx=}tEFq*n46L!vA~?qgfl1l}q z;pCn@>(I8+c5Kg8?HY&2`%324gI~dKV^BZeeAN3*w+ildIL;qlOxMAJL`+TgC{ioF zT$+%`rMiA`O<1RxD}OzJ^A8Q@k)dgvG@Yq9JZxqDj6)C-19R2izQb+T9Zb~F*LP>J z@M@FWr(pv=LP^Y$VIox`N$F4t=UIFp#q3;}bkMLnS#Yvhhrvnb&In?_6lCD@t~VBz z7yngKvbyb*9399;9A9IE6x1lf¸(&ve3Qm^NyHZhU$zuV(#QzkAhfb9xx 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%0AqQIL~iO7{0dQ#$0 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 HAUXt(E zRBKb_md&COdlkVtITqKI^m36-;Od%Pju^ocKe|X6{X} zZJug7GY{I90XIM_Ygx*S@^rOIl@>NX4fZD)nH?4{j;kY z&G+`d=o;$Q{;t_&+v@-Jf)r$)s5XTDX2` zKbo|ZjbR{gP=%0Kcnm}h2QUTi8x%tolCl|A%E?&k@7RzhgoT~5cM3qXm@=zk+^FE{ z$7lHHj=~`3ds)zj57779?0J_nEh0d2ZFDDMpO=na;Yp)iUB_Y@4>+pwXLXdV1D-<3 unj%(1;!*J)_vxB1hG`1pf)rPg%o%, 2009. -# Daniel Nylander , 2009, 2010, 2012. -# Josef Andersson , 2014, 2016, 2017, 2019. -# -msgid "" -msgstr "" -"Project-Id-Version: grub 2.04-pre1\n" -"Report-Msgid-Bugs-To: bug-grub@gnu.org\n" -"POT-Creation-Date: 2019-07-04 16:09+0200\n" -"PO-Revision-Date: 2019-05-08 22:53+0100\n" -"Last-Translator: Josef Andersson \n" -"Language-Team: Swedish \n" -"Language: sv\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Bugs: Report translation errors to the Language-Team address.\n" -"Plural-Forms: nplurals=2; plural=(n != 1);\n" -"X-Generator: Poedit 1.8.9\n" - -#: grub-core/bus/usb/serial/ftdi.c:145 grub-core/bus/usb/serial/pl2303.c:158 -#: grub-core/term/ieee1275/escc.c:169 grub-core/term/ns8250.c:202 -msgid "unsupported serial port speed" -msgstr "serieportshastigheten stöds ej" - -#: grub-core/bus/usb/serial/ftdi.c:151 grub-core/bus/usb/serial/pl2303.c:164 -#: grub-core/term/efi/serial.c:116 grub-core/term/ieee1275/escc.c:175 -#: grub-core/term/ns8250.c:208 grub-core/term/serial.c:227 -#: grub-core/term/serial.c:243 -msgid "unsupported serial port parity" -msgstr "paritet för serieporten stöds ej" - -#: grub-core/bus/usb/serial/ftdi.c:157 grub-core/bus/usb/serial/pl2303.c:170 -#: grub-core/term/efi/serial.c:122 grub-core/term/ieee1275/escc.c:181 -#: grub-core/term/ns8250.c:213 grub-core/term/serial.c:267 -msgid "unsupported serial port stop bits number" -msgstr "stoppbitarsnumret för serieporten stöds ej" - -#: grub-core/bus/usb/serial/ftdi.c:161 grub-core/bus/usb/serial/pl2303.c:174 -#: grub-core/term/efi/serial.c:126 grub-core/term/ieee1275/escc.c:185 -#: grub-core/term/ns8250.c:217 -msgid "unsupported serial port word length" -msgstr "ordlängd för serieporten stöds ej" - -#: grub-core/commands/acpi.c:42 -msgid "Don't load host tables specified by comma-separated list." -msgstr "Ladda inte värdtabeller specificerade med en kommaseparerad lista." - -#: grub-core/commands/acpi.c:45 -msgid "Load only tables specified by comma-separated list." -msgstr "Ladda endast värdtabeller specificerade med en kommaseparerad lista." - -#: grub-core/commands/acpi.c:46 -msgid "Export version 1 tables to the OS." -msgstr "Exportera version 1-tabeller till operativsystemet." - -#: grub-core/commands/acpi.c:47 -msgid "Export version 2 and version 3 tables to the OS." -msgstr "Exportera version 2- och version 3-tabeller till operativsystemet." - -#: grub-core/commands/acpi.c:48 -msgid "Set OEMID of RSDP, XSDT and RSDT." -msgstr "Sätt OEMID för RSDP, XSDT och RSDT." - -#: grub-core/commands/acpi.c:50 -msgid "Set OEMTABLE ID of RSDP, XSDT and RSDT." -msgstr "Sätt OEMTABLE ID för RSDP, XSDT och RSDT." - -#: grub-core/commands/acpi.c:52 -msgid "Set OEMTABLE revision of RSDP, XSDT and RSDT." -msgstr "Sätt OEMTABLE-revision för RSDP, XSDT and RSDT." - -#: grub-core/commands/acpi.c:54 -msgid "Set creator field of RSDP, XSDT and RSDT." -msgstr "Sätt fältet skapare för RSDP, XSDT och RSDT." - -#: grub-core/commands/acpi.c:56 -msgid "Set creator revision of RSDP, XSDT and RSDT." -msgstr "Sätt skaparrevision för RSDP, XSDT för RSDT." - -#. TRANSLATORS: "hangs" here is a noun, not a verb. -#: grub-core/commands/acpi.c:58 -msgid "" -"Don't update EBDA. May fix failures or hangs on some BIOSes but makes it " -"ineffective with OS not receiving RSDP from GRUB." -msgstr "" -"Uppdatera inte EBDA. Kan fixa fel eller hängningar pÃ¥ en del BIOS, men gör " -"det ineffektivt med OS som inte erhÃ¥ller RSDP frÃ¥n GRUB." - -#: grub-core/commands/acpi.c:650 grub-core/commands/acpi.c:667 -#: grub-core/commands/i386/pc/play.c:105 grub-core/commands/keylayouts.c:230 -#: grub-core/commands/keylayouts.c:245 grub-core/commands/keylayouts.c:263 -#: grub-core/commands/verifiers.c:156 grub-core/efiemu/loadcore.c:350 -#: grub-core/kern/elf.c:117 grub-core/kern/elfXX.c:29 -#: grub-core/kern/elfXX.c:156 grub-core/loader/arm/linux.c:319 -#: grub-core/loader/arm64/linux.c:330 grub-core/loader/arm64/xen_boot.c:356 -#: grub-core/loader/efi/chainloader.c:276 -#: grub-core/loader/efi/chainloader.c:297 -#: grub-core/loader/efi/chainloader.c:329 grub-core/loader/efi/fdt.c:138 -#: grub-core/loader/i386/bsd.c:1276 grub-core/loader/i386/bsd.c:2116 -#: grub-core/loader/i386/bsdXX.c:20 grub-core/loader/i386/bsdXX.c:36 -#: grub-core/loader/i386/bsdXX.c:63 grub-core/loader/i386/bsdXX.c:357 -#: grub-core/loader/i386/bsdXX.c:376 grub-core/loader/i386/bsdXX.c:519 -#: grub-core/loader/i386/bsdXX.c:535 grub-core/loader/i386/bsdXX.c:615 -#: grub-core/loader/i386/bsdXX.c:638 -#: grub-core/loader/i386/coreboot/chainloader.c:112 -#: grub-core/loader/i386/coreboot/chainloader.c:148 -#: grub-core/loader/i386/coreboot/chainloader.c:170 -#: grub-core/loader/i386/linux.c:667 grub-core/loader/i386/linux.c:788 -#: grub-core/loader/i386/linux.c:1005 grub-core/loader/i386/multiboot_mbi.c:171 -#: grub-core/loader/i386/pc/chainloader.c:202 -#: grub-core/loader/i386/pc/linux.c:149 grub-core/loader/i386/pc/linux.c:320 -#: grub-core/loader/i386/pc/linux.c:362 grub-core/loader/i386/pc/plan9.c:457 -#: grub-core/loader/i386/pc/plan9.c:550 grub-core/loader/i386/pc/plan9.c:566 -#: grub-core/loader/i386/xen.c:934 grub-core/loader/i386/xen_file.c:72 -#: grub-core/loader/i386/xen_fileXX.c:43 grub-core/loader/i386/xen_fileXX.c:186 -#: grub-core/loader/i386/xen_fileXX.c:339 grub-core/loader/ia64/efi/linux.c:423 -#: grub-core/loader/ia64/efi/linux.c:471 grub-core/loader/linux.c:286 -#: grub-core/loader/macho.c:84 grub-core/loader/macho.c:109 -#: grub-core/loader/machoXX.c:33 grub-core/loader/machoXX.c:46 -#: grub-core/loader/machoXX.c:76 grub-core/loader/machoXX.c:116 -#: grub-core/loader/machoXX.c:131 grub-core/loader/machoXX.c:147 -#: grub-core/loader/machoXX.c:196 grub-core/loader/machoXX.c:317 -#: grub-core/loader/multiboot.c:434 grub-core/loader/multiboot_elfxx.c:171 -#: grub-core/loader/multiboot_elfxx.c:234 -#: grub-core/loader/multiboot_elfxx.c:278 grub-core/loader/multiboot_mbi2.c:129 -#: grub-core/loader/xnu.c:737 grub-core/loader/xnu.c:795 -#: grub-core/loader/xnu.c:816 grub-core/loader/xnu.c:871 -#: grub-core/loader/xnu.c:914 grub-core/loader/xnu.c:952 -#: grub-core/loader/xnu_resume.c:68 grub-core/loader/xnu_resume.c:153 -#: grub-core/loader/xnu_resume.c:165 util/grub-mkimagexx.c:2288 -#, c-format -msgid "premature end of file %s" -msgstr "för tidigt slut pÃ¥ filen %s" - -#: grub-core/commands/acpi.c:779 -msgid "" -"[-1|-2] [--exclude=TABLE1,TABLE2|--load-only=TABLE1,TABLE2] FILE1 [FILE2] " -"[...]" -msgstr "" -"[-1|-2] [--exclude=TABELL1,TABELL2|--load-only=TABELL1,TABELL2] FIL1 [FIL2] " -"[…]" - -#: grub-core/commands/acpi.c:782 -msgid "Load host ACPI tables and tables specified by arguments." -msgstr "" -"Läs in ACPI-tabeller för värd och tabeller specificerade genom argument." - -#: grub-core/commands/acpihalt.c:368 grub-core/kern/err.c:110 -#, c-format -msgid "error: %s.\n" -msgstr "fel: %s.\n" - -#: grub-core/commands/acpihalt.c:368 grub-core/kern/emu/misc.c:95 -#: grub-core/kern/emu/misc.c:105 grub-core/kern/emu/misc.c:134 -#: grub-core/kern/emu/mm.c:34 grub-core/kern/emu/mm.c:62 -#: grub-core/kern/mm.c:374 grub-core/lib/relocator.c:1282 -#: grub-core/lib/relocator.c:1439 grub-core/lib/relocator.c:1538 -#: grub-core/loader/arm/linux.c:259 grub-core/loader/arm64/linux.c:265 -#: grub-core/loader/arm64/linux.c:321 grub-core/loader/arm64/linux.c:340 -#: grub-core/loader/arm64/xen_boot.c:344 grub-core/loader/arm64/xen_boot.c:367 -#: grub-core/loader/efi/chainloader.c:289 grub-core/osdep/unix/dl.c:48 -#: grub-core/osdep/windows/dl.c:46 grub-core/script/lexer.c:156 -#: grub-core/script/lexer.c:182 -msgid "out of memory" -msgstr "slut pÃ¥ minne" - -#: grub-core/commands/acpihalt.c:374 grub-core/disk/cryptodisk.c:587 -#: grub-core/disk/cryptodisk.c:632 grub-core/kern/emu/hostdisk.c:307 -#: grub-core/kern/emu/hostfs.c:149 grub-core/kern/emu/misc.c:200 -#: grub-core/osdep/linux/ofpath.c:195 grub-core/osdep/linux/ofpath.c:521 -#: grub-core/osdep/linux/ofpath.c:534 util/glue-efi.c:80 util/glue-efi.c:94 -#: util/grub-editenv.c:155 util/grub-fstest.c:577 -#: util/grub-install-common.c:943 util/grub-mkrescue.c:634 -#: util/grub-mkrescue.c:888 util/grub-mount.c:506 util/grub-render-label.c:176 -#: util/misc.c:95 util/setup.c:814 util/setup.c:833 -#, c-format -msgid "cannot read `%s': %s" -msgstr "kan inte läsa â€%sâ€: %s" - -#. TRANSLATORS: It's computer shutdown using ACPI, not disabling ACPI. -#: grub-core/commands/acpihalt.c:452 -msgid "ACPI shutdown failed" -msgstr "Misslyckades med nedstängning genom ACPI" - -#: grub-core/commands/arc/lsdev.c:51 -msgid "List devices." -msgstr "Lista enheter." - -#: grub-core/commands/blocklist.c:122 grub-core/commands/cat.c:57 -#: grub-core/commands/configfile.c:35 grub-core/commands/efi/loadbios.c:168 -#: grub-core/commands/file.c:159 grub-core/commands/hexdump.c:47 -#: grub-core/commands/legacycfg.c:209 grub-core/commands/legacycfg.c:315 -#: grub-core/commands/minicmd.c:44 grub-core/commands/syslinuxcfg.c:146 -#: grub-core/commands/testload.c:58 grub-core/commands/testspeed.c:52 -#: grub-core/disk/loopback.c:93 grub-core/efiemu/main.c:293 -#: grub-core/font/font_cmd.c:32 grub-core/kern/emu/hostdisk.c:519 -#: grub-core/loader/arm/linux.c:364 grub-core/loader/arm/linux.c:409 -#: grub-core/loader/arm/linux.c:472 grub-core/loader/arm64/linux.c:243 -#: grub-core/loader/arm64/linux.c:297 grub-core/loader/arm64/xen_boot.c:398 -#: grub-core/loader/arm64/xen_boot.c:411 grub-core/loader/arm64/xen_boot.c:462 -#: grub-core/loader/efi/chainloader.c:216 grub-core/loader/i386/bsd.c:1462 -#: grub-core/loader/i386/bsd.c:1807 grub-core/loader/i386/bsd.c:2085 -#: grub-core/loader/i386/coreboot/chainloader.c:438 -#: grub-core/loader/i386/linux.c:656 grub-core/loader/i386/linux.c:1041 -#: grub-core/loader/i386/pc/chainloader.c:290 -#: grub-core/loader/i386/pc/freedos.c:105 grub-core/loader/i386/pc/linux.c:138 -#: grub-core/loader/i386/pc/linux.c:400 grub-core/loader/i386/pc/ntldr.c:85 -#: grub-core/loader/i386/pc/plan9.c:409 -#: grub-core/loader/i386/pc/pxechainloader.c:94 -#: grub-core/loader/i386/pc/truecrypt.c:96 grub-core/loader/i386/xen.c:641 -#: grub-core/loader/i386/xen.c:768 grub-core/loader/i386/xen.c:844 -#: grub-core/loader/i386/xen.c:854 grub-core/loader/i386/xnu.c:488 -#: grub-core/loader/ia64/efi/linux.c:459 grub-core/loader/ia64/efi/linux.c:539 -#: grub-core/loader/mips/linux.c:238 grub-core/loader/mips/linux.c:429 -#: grub-core/loader/multiboot.c:322 grub-core/loader/multiboot.c:374 -#: grub-core/loader/multiboot.c:384 -#: grub-core/loader/powerpc/ieee1275/linux.c:269 -#: grub-core/loader/powerpc/ieee1275/linux.c:341 -#: grub-core/loader/sparc64/ieee1275/linux.c:305 -#: grub-core/loader/sparc64/ieee1275/linux.c:381 grub-core/loader/xnu.c:351 -#: grub-core/loader/xnu.c:460 grub-core/loader/xnu.c:778 -#: grub-core/loader/xnu.c:892 grub-core/loader/xnu.c:1277 -#: grub-core/loader/xnu.c:1427 grub-core/loader/xnu.c:1453 -#: grub-core/video/readers/jpeg.c:812 grub-core/video/readers/png.c:1123 -msgid "filename expected" -msgstr "filnamn förväntades" - -#. TRANSLATORS: "embed" is a verb (command description). " -#: grub-core/commands/blocklist.c:154 grub-core/commands/cat.c:163 -#: grub-core/commands/configfile.c:65 grub-core/commands/configfile.c:68 -#: grub-core/commands/configfile.c:74 grub-core/commands/configfile.c:80 -#: grub-core/commands/configfile.c:86 grub-core/commands/hashsum.c:34 -#: grub-core/commands/legacycfg.c:834 grub-core/commands/legacycfg.c:841 -#: grub-core/commands/legacycfg.c:846 grub-core/commands/legacycfg.c:851 -#: grub-core/commands/macbless.c:222 grub-core/commands/minicmd.c:198 -#: grub-core/commands/syslinuxcfg.c:186 grub-core/commands/syslinuxcfg.c:194 -#: grub-core/commands/syslinuxcfg.c:200 grub-core/commands/syslinuxcfg.c:206 -#: grub-core/commands/testload.c:163 grub-core/efiemu/main.c:312 -#: grub-core/kern/emu/main.c:100 grub-core/kern/emu/main.c:103 -#: grub-core/loader/i386/bsd.c:2137 grub-core/loader/i386/bsd.c:2140 -#: grub-core/loader/i386/bsd.c:2143 -#: grub-core/loader/i386/coreboot/chainloader.c:505 -#: grub-core/loader/ia64/efi/linux.c:594 include/grub/util/install.h:32 -#: include/grub/util/install.h:64 util/grub-glue-efi.c:52 -#: util/grub-glue-efi.c:54 util/grub-glue-efi.c:56 util/grub-install.c:254 -#: util/grub-install.c:301 util/grub-mkfont.c:936 util/grub-mkimage.c:68 -#: util/grub-mkimage.c:74 util/grub-mkimage.c:76 util/grub-mkimage.c:78 -#: util/grub-mkimage.c:81 util/grub-mklayout.c:52 util/grub-mklayout.c:54 -#: util/grub-mkrescue.c:97 util/grub-mkrescue.c:101 util/grub-mkrescue.c:104 -#: util/grub-mkrescue.c:105 util/grub-mkrescue.c:106 -#: util/grub-mkstandalone.c:47 util/grub-mkstandalone.c:49 -#: util/grub-probe.c:732 util/grub-render-label.c:59 -#: util/grub-render-label.c:70 util/grub-render-label.c:72 util/grub-setup.c:78 -#: util/grub-setup.c:80 util/grub-setup.c:84 util/grub-syslinux2cfg.c:74 -#: util/grub-syslinux2cfg.c:147 -msgid "FILE" -msgstr "FIL" - -#: grub-core/commands/blocklist.c:154 -msgid "Print a block list." -msgstr "Skriv ut en blocklista." - -#: grub-core/commands/boot.c:147 grub-core/commands/legacycfg.c:533 -#: grub-core/commands/legacycfg.c:574 grub-core/loader/arm64/linux.c:250 -#: grub-core/loader/i386/bsd.c:1799 grub-core/loader/i386/bsd.c:1900 -#: grub-core/loader/i386/bsd.c:2007 grub-core/loader/i386/bsd.c:2040 -#: grub-core/loader/i386/bsd.c:2089 grub-core/loader/i386/linux.c:1047 -#: grub-core/loader/i386/pc/linux.c:406 grub-core/loader/i386/xen.c:775 -#: grub-core/loader/i386/xen.c:859 grub-core/loader/ia64/efi/linux.c:545 -#: grub-core/loader/mips/linux.c:432 grub-core/loader/multiboot.c:388 -#: grub-core/loader/powerpc/ieee1275/linux.c:347 -#: grub-core/loader/sparc64/ieee1275/linux.c:387 grub-core/loader/xnu.c:572 -#: grub-core/loader/xnu.c:665 grub-core/loader/xnu.c:781 -#: grub-core/loader/xnu.c:895 grub-core/loader/xnu.c:1091 -#: grub-core/loader/xnu.c:1258 grub-core/loader/xnu.c:1289 -#: grub-core/loader/xnu.c:1430 -msgid "you need to load the kernel first" -msgstr "du mÃ¥ste läsa in kärnan först" - -#: grub-core/commands/boot.c:189 -msgid "Boot an operating system." -msgstr "Starta ett operativsystem." - -#: grub-core/commands/boottime.c:36 -#: grub-core/commands/i386/coreboot/cb_timestamps.c:108 -msgid "No boot time statistics is available\n" -msgstr "Ingen startstatistik är tillgänglig\n" - -#: grub-core/commands/boottime.c:59 -msgid "Show boot time statistics." -msgstr "Visa startstatistik." - -#: grub-core/commands/cacheinfo.c:40 -#, c-format -msgid "Disk cache statistics: hits = %lu (%lu.%02lu%%), misses = %lu\n" -msgstr "Diskcachestatistik: hits = %lu (%lu.%02lu%%), misses = %lu\n" - -#: grub-core/commands/cacheinfo.c:45 -msgid "No disk cache statistics available\n" -msgstr "Ingen diskcachestatistik tillgänglig\n" - -#: grub-core/commands/cacheinfo.c:56 -msgid "Get disk cache info." -msgstr "Hämta diskcacheinfo." - -#: grub-core/commands/cat.c:33 -msgid "Accept DOS-style CR/NL line endings." -msgstr "Acceptera CR/NL-radavslut i DOS-stil." - -#: grub-core/commands/cat.c:163 grub-core/commands/minicmd.c:198 -msgid "Show the contents of a file." -msgstr "Visa innehÃ¥llet av en fil." - -#: grub-core/commands/cmp.c:43 grub-core/commands/i386/pc/drivemap.c:239 -#: grub-core/commands/i386/wrmsr.c:60 grub-core/commands/iorw.c:85 -#: grub-core/commands/memrw.c:84 grub-core/commands/password.c:75 -#: grub-core/commands/password_pbkdf2.c:94 grub-core/commands/pgp.c:826 -#: grub-core/commands/regexp.c:113 grub-core/mmap/mmap.c:517 -#: grub-core/net/dns.c:639 -msgid "two arguments expected" -msgstr "tvÃ¥ argument förväntades" - -#: grub-core/commands/cmp.c:45 -#, c-format -msgid "Compare file `%s' with `%s':\n" -msgstr "Jämför filen â€%s†med â€%sâ€:\n" - -#: grub-core/commands/cmp.c:54 -#, c-format -msgid "Files differ in size: %llu [%s], %llu [%s]\n" -msgstr "Filer varierar i storlek: %llu [%s], %llu [%s]\n" - -#: grub-core/commands/cmp.c:81 -#, c-format -msgid "Files differ at the offset %llu: 0x%x [%s], 0x%x [%s]\n" -msgstr "Filer skiljer sig vid offset %llu: 0x%x [%s], 0x%x [%s]\n" - -#. TRANSLATORS: it's always exactly 2 files. -#: grub-core/commands/cmp.c:93 -msgid "The files are identical.\n" -msgstr "Filerna är identiska.\n" - -#: grub-core/commands/cmp.c:113 -msgid "FILE1 FILE2" -msgstr "FIL1 FIL2" - -#: grub-core/commands/cmp.c:113 -msgid "Compare two files." -msgstr "Jämför tvÃ¥ filer." - -#: grub-core/commands/configfile.c:65 -msgid "Load another config file." -msgstr "Läs in en annan konfigurationsfil." - -#: grub-core/commands/configfile.c:69 grub-core/commands/configfile.c:87 -msgid "Load another config file without changing context." -msgstr "Läs in en annan konfigurationsfil utan att byta sammanhang." - -#: grub-core/commands/configfile.c:75 -msgid "" -"Load another config file without changing context but take only menu entries." -msgstr "" -"Läs in en annan konfigurationsfil utan att ändra sammanhang, men hantera " -"bara menyposter." - -#: grub-core/commands/configfile.c:81 -msgid "Load another config file but take only menu entries." -msgstr "Läs in en annan konfigurationsfil men hantera bara menyposter." - -#: grub-core/commands/date.c:141 -msgid "[[year-]month-day] [hour:minute[:second]]" -msgstr "[[Ã¥r-]mÃ¥nad-dag] [timme:minut[:sekund]]" - -#: grub-core/commands/date.c:142 -msgid "Display/set current datetime." -msgstr "Visa/ställ in aktuellt datum/tid." - -#: grub-core/commands/echo.c:30 -msgid "Do not output the trailing newline." -msgstr "Mata inte ut eftersläpande radavslut." - -#: grub-core/commands/echo.c:31 -msgid "Enable interpretation of backslash escapes." -msgstr "Aktivera tolkning av avbrottstecknet omvänt snedstreck." - -#: grub-core/commands/echo.c:134 -msgid "[-e|-n] STRING" -msgstr "[-e|-n] STRÄNG" - -#: grub-core/commands/echo.c:134 -msgid "Display a line of text." -msgstr "Visa en textrad." - -#: grub-core/commands/efi/efifwsetup.c:82 -msgid "Reboot into firmware setup menu." -msgstr "Starta om till menyn för inställning av fast programvara." - -#: grub-core/commands/efi/fixvideo.c:107 -msgid "Fix video problem." -msgstr "Fixa videoproblem." - -#: grub-core/commands/efi/loadbios.c:52 -msgid "ROM image is present." -msgstr "ROM-avbild är närvarande." - -#: grub-core/commands/efi/loadbios.c:70 -msgid "Can't enable ROM area." -msgstr "Kan inte aktivera ROM-omrÃ¥de." - -#: grub-core/commands/efi/loadbios.c:209 -msgid "" -"Create BIOS-like structures for backward compatibility with existing OS." -msgstr "Skapa BIOS-lika strukturer för bakÃ¥tkompatibilitet med existerande OS." - -#: grub-core/commands/efi/loadbios.c:214 -msgid "BIOS_DUMP [INT10_DUMP]" -msgstr "BIOS_DUMP [INT10_DUMP]" - -#: grub-core/commands/efi/loadbios.c:215 -msgid "Load BIOS dump." -msgstr "Läs in BIOS-dump." - -#: grub-core/commands/efi/shim_lock.c:76 -#, c-format -msgid "module cannot be loaded in UEFI secure boot mode: %s" -msgstr "det gÃ¥r inte att läsa in modulen i UEFI secure boot-läge: %s" - -#: grub-core/commands/efi/shim_lock.c:98 -#, c-format -msgid "cannot boot due to dangerous module in memory: %s" -msgstr "det gÃ¥r inte att starta pÃ¥ grund av farlig modul i minnet: %s" - -#: grub-core/commands/efi/shim_lock.c:116 -msgid "bad shim signature" -msgstr "dÃ¥lig shim-signatur" - -#: grub-core/commands/efi/tpm.c:149 grub-core/commands/efi/tpm.c:189 -#: grub-core/commands/efi/tpm.c:256 grub-core/commands/efi/tpm.c:306 -msgid "Command failed" -msgstr "Misslyckades med alloc-mem" - -#: grub-core/commands/efi/tpm.c:151 grub-core/commands/efi/tpm.c:191 -#: grub-core/commands/efi/tpm.c:258 grub-core/commands/efi/tpm.c:308 -msgid "Invalid parameter" -msgstr "Ogiltig parameter" - -#: grub-core/commands/efi/tpm.c:154 grub-core/commands/efi/tpm.c:194 -#: grub-core/commands/efi/tpm.c:261 grub-core/commands/efi/tpm.c:311 -msgid "Output buffer too small" -msgstr "Utdatabuffert för liten" - -#: grub-core/commands/efi/tpm.c:156 grub-core/commands/efi/tpm.c:196 -#: grub-core/commands/efi/tpm.c:263 grub-core/commands/efi/tpm.c:313 -msgid "TPM unavailable" -msgstr "TPM ej tillgänglig" - -#: grub-core/commands/efi/tpm.c:158 grub-core/commands/efi/tpm.c:198 -#: grub-core/commands/efi/tpm.c:265 grub-core/commands/efi/tpm.c:315 -msgid "Unknown TPM error" -msgstr "Okänt TPM-fel" - -#: grub-core/commands/efi/tpm.c:240 grub-core/commands/efi/tpm.c:288 -msgid "cannot allocate TPM event buffer" -msgstr "det gÃ¥r inte att allokera TPM event-buffert" - -#: grub-core/commands/eval.c:63 -msgid "STRING ..." -msgstr "STRÄNG …" - -#: grub-core/commands/eval.c:64 -msgid "Evaluate arguments as GRUB commands" -msgstr "Utvärdera argument som GRUB-kommandon" - -#: grub-core/commands/file.c:41 -msgid "Check if FILE can be booted as i386 PAE Xen unprivileged guest kernel" -msgstr "" -"Kontrollera om FIL kan startas som en i386 Xen oprivilegierad gästkärna" - -#: grub-core/commands/file.c:44 -msgid "Check if FILE can be booted as x86_64 Xen unprivileged guest kernel" -msgstr "Kontrollera om FIL kan startas som x86_64 oprivilegierad gästkärna" - -#: grub-core/commands/file.c:46 -msgid "Check if FILE can be used as Xen x86 privileged guest kernel" -msgstr "Kontrollera om FIL kan användas som Xen x86 privilegierad gästkärna" - -#: grub-core/commands/file.c:48 -msgid "Check if FILE can be used as x86 multiboot kernel" -msgstr "Kontrollera om FIL kan användas som en x86-flervalsstartkärna" - -#: grub-core/commands/file.c:50 -msgid "Check if FILE can be used as x86 multiboot2 kernel" -msgstr "Kontrollera om FIL kan användas som en x86-flervalsstart2-kärna" - -#: grub-core/commands/file.c:52 -msgid "Check if FILE is ARM Linux" -msgstr "Kontrollera om FIL är ARM Linux" - -#: grub-core/commands/file.c:54 -msgid "Check if FILE is ARM64 Linux" -msgstr "Kontrollera om FIL är ARM64 Linux" - -#: grub-core/commands/file.c:56 -msgid "Check if FILE is IA64 Linux" -msgstr "Kontrollera om FIL är IA64 Linux" - -#: grub-core/commands/file.c:58 -msgid "Check if FILE is MIPS Linux" -msgstr "Kontrollera om FIL är MIPS Linux" - -#: grub-core/commands/file.c:60 -msgid "Check if FILE is MIPSEL Linux" -msgstr "Kontrollera om FIL är MIPSEL Linux" - -#: grub-core/commands/file.c:62 -msgid "Check if FILE is SPARC64 Linux" -msgstr "Kontrollera om FIL är SPARC64 Linux" - -#: grub-core/commands/file.c:64 -msgid "Check if FILE is POWERPC Linux" -msgstr "Kontrollera om FIL är POWERPC Linux" - -#: grub-core/commands/file.c:66 -msgid "Check if FILE is x86 Linux" -msgstr "Kontrollera om FIL är x86 Linux" - -#: grub-core/commands/file.c:68 -msgid "Check if FILE is x86 Linux supporting 32-bit protocol" -msgstr "Kontrollera om FIL är x86 Linux med stöd för 32-bitarsprotokoll" - -#: grub-core/commands/file.c:70 -msgid "Check if FILE is x86 kFreeBSD" -msgstr "Kontrollera om FIL är x86 kFreeBSD" - -#: grub-core/commands/file.c:72 -msgid "Check if FILE is i386 kFreeBSD" -msgstr "Kontrollera om FIL är i386 kFreeBSD" - -#: grub-core/commands/file.c:74 -msgid "Check if FILE is x86_64 kFreeBSD" -msgstr "Kontrollera om FIL är x86_64 kFreeBSD" - -#: grub-core/commands/file.c:77 -msgid "Check if FILE is x86 kNetBSD" -msgstr "Kontrollera om FIL är x86 kNetBSD" - -#: grub-core/commands/file.c:79 -msgid "Check if FILE is i386 kNetBSD" -msgstr "Kontrollera om FIL är i386 kNetBSD" - -#: grub-core/commands/file.c:81 -msgid "Check if FILE is x86_64 kNetBSD" -msgstr "Kontrollera om FIL är x86_64 kNetBSD" - -#: grub-core/commands/file.c:84 -msgid "Check if FILE is i386 EFI file" -msgstr "Kontrollera om FIL är en i386 EFI-fil" - -#: grub-core/commands/file.c:86 -msgid "Check if FILE is x86_64 EFI file" -msgstr "Kontrollera om FIL är en x86_64 EFI-fil" - -#: grub-core/commands/file.c:88 -msgid "Check if FILE is IA64 EFI file" -msgstr "Kontrollera om FIL är en IA64 EFI-fil" - -#: grub-core/commands/file.c:90 -msgid "Check if FILE is ARM64 EFI file" -msgstr "Kontrollera om FIL är en ARM64 EFI-fil" - -#: grub-core/commands/file.c:92 -msgid "Check if FILE is ARM EFI file" -msgstr "Kontrollera om FIL är en ARM EFI-fil" - -#: grub-core/commands/file.c:94 -msgid "Check if FILE is RISC-V 32bit EFI file" -msgstr "Kontrollera om FIL är en RISC-V 32bit EFI-fil" - -#: grub-core/commands/file.c:96 -msgid "Check if FILE is RISC-V 64bit EFI file" -msgstr "Kontrollera om FIL är en RISC-V 64bit EFI-fil" - -#: grub-core/commands/file.c:98 -msgid "Check if FILE is hiberfil.sys in hibernated state" -msgstr "Kontrollera om FIL är hiberfil.sys i viloläge" - -#: grub-core/commands/file.c:100 -msgid "Check if FILE is x86_64 XNU (Mac OS X kernel)" -msgstr "Kontrollera om FIL är x86_64 XNU (Mac OS X-kärna)" - -#: grub-core/commands/file.c:102 -msgid "Check if FILE is i386 XNU (Mac OS X kernel)" -msgstr "Kontrollera om FIL är x386 XNU (Mac OS X-kärna)" - -#: grub-core/commands/file.c:104 -msgid "Check if FILE is XNU (Mac OS X kernel) hibernated image" -msgstr "Kontrollera om FIL är XNU (Mac OS X-kärna) vilolägesavbild" - -#: grub-core/commands/file.c:106 -msgid "Check if FILE is BIOS bootsector" -msgstr "Kontrollera om FIL är en BIOS-startsektor" - -#. TRANSLATORS: it's a standalone boolean value, -#. opposite of "true". -#: grub-core/commands/file.c:675 grub-core/commands/i386/cmostest.c:63 -#: grub-core/commands/i386/cpuid.c:71 grub-core/commands/keystatus.c:83 -#: grub-core/commands/keystatus.c:87 grub-core/commands/keystatus.c:96 -#: grub-core/commands/test.c:436 grub-core/commands/true.c:39 -#: grub-core/script/execute.c:247 grub-core/script/execute.c:1039 -msgid "false" -msgstr "false" - -#: grub-core/commands/file.c:684 -msgid "OPTIONS FILE" -msgstr "FLAGGOR FIL" - -#: grub-core/commands/file.c:685 -msgid "Check if FILE is of specified type." -msgstr "Kontrollera om FIL är av angiven typ." - -#. TRANSLATORS: It means that the specified partition e.g. -#. hd0,msdos1=/dev/sda1 doesn't exist. -#: grub-core/commands/gptsync.c:140 grub-core/kern/disk.c:258 -msgid "no such partition" -msgstr "ingen sÃ¥dan partition finns" - -#: grub-core/commands/gptsync.c:240 -#, c-format -msgid "New MBR is written to `%s'\n" -msgstr "Ny MBR skrivs till â€%sâ€\n" - -#: grub-core/commands/gptsync.c:252 -msgid "DEVICE [PARTITION[+/-[TYPE]]] ..." -msgstr "ENHET [PARTITION[+/-[TYP]]] …" - -#. TRANSLATORS: MBR type is one-byte partition -#. type id. -#: grub-core/commands/gptsync.c:255 -msgid "" -"Fill hybrid MBR of GPT drive DEVICE. Specified partitions will be a part of " -"hybrid MBR. Up to 3 partitions are allowed. TYPE is an MBR type. + means " -"that partition is active. Only one partition can be active." -msgstr "" -"Fyll hybrid-MBR pÃ¥ GPT-enheten ENHET. Specificerade partitioner kommer att " -"vara en del av hybrid-MBR. Upp till tre partitioner är tillÃ¥tna. TYP är en " -"MBR-typ. + betyder att partitionen är aktiv. Endast en partition kan vara " -"aktiv." - -#: grub-core/commands/halt.c:40 -msgid "" -"Halts the computer. This command does not work on all firmware " -"implementations." -msgstr "" -"Stoppar datorn. Detta kommando fungerar inte pÃ¥ alla implementationer av " -"fast programvara." - -#: grub-core/commands/hashsum.c:32 -msgid "Specify hash to use." -msgstr "Ange hash att använda." - -#: grub-core/commands/hashsum.c:32 -msgid "HASH" -msgstr "HASH" - -#: grub-core/commands/hashsum.c:33 -msgid "Check hashes of files with hash list FILE." -msgstr "Kontrollera hashar pÃ¥ filer med hashlisteFIL." - -#: grub-core/commands/hashsum.c:35 -msgid "Base directory for hash list." -msgstr "Baskatalog för hashlista." - -#. TRANSLATORS: platform here isn't identifier. It can be translated. -#: grub-core/commands/hashsum.c:35 grub-core/commands/ls.c:150 -#: grub-core/commands/macbless.c:226 grub-core/commands/syslinuxcfg.c:51 -#: grub-core/commands/syslinuxcfg.c:54 grub-core/kern/emu/main.c:106 -#: include/grub/util/install.h:50 include/grub/util/install.h:53 -#: include/grub/util/install.h:56 include/grub/util/install.h:59 -#: util/grub-install.c:250 util/grub-install.c:252 util/grub-install.c:297 -#: util/grub-install.c:299 util/grub-mkimage.c:64 util/grub-mkimage.c:67 -#: util/grub-mknetdir.c:46 util/grub-mknetdir.c:48 util/grub-mkrescue.c:99 -#: util/grub-setup.c:82 util/grub-syslinux2cfg.c:63 util/grub-syslinux2cfg.c:65 -#: util/grub-syslinux2cfg.c:67 util/grub-syslinux2cfg.c:71 -msgid "DIR" -msgstr "KAT" - -#: grub-core/commands/hashsum.c:37 -msgid "Don't stop after first error." -msgstr "Stoppa inte efter första felet." - -#: grub-core/commands/hashsum.c:38 -msgid "Uncompress file before checksumming." -msgstr "Dekomprimera fil innan kontrollsumma." - -#: grub-core/commands/hashsum.c:163 -#, c-format -msgid "%s: READ ERROR\n" -msgstr "%s: LÄSFEL\n" - -#: grub-core/commands/hashsum.c:177 -#, c-format -msgid "%s: HASH MISMATCH\n" -msgstr "%s: HASH MISSMATCH\n" - -#: grub-core/commands/hashsum.c:188 -#, c-format -msgid "%s: OK\n" -msgstr "%s: OK\n" - -#: grub-core/commands/hashsum.c:282 -msgid "-h HASH [-c FILE [-p PREFIX]] [FILE1 [FILE2 ...]]" -msgstr "-h HASH [-c FIL [-p PREFIX]] [FIL1 [FIL2 …]]" - -#. TRANSLATORS: "hash checksum" is just to -#. be a bit more precise, you can treat it as -#. just "hash". -#: grub-core/commands/hashsum.c:287 grub-core/commands/hashsum.c:292 -#: grub-core/commands/hashsum.c:297 grub-core/commands/hashsum.c:302 -#: grub-core/commands/hashsum.c:307 grub-core/commands/hashsum.c:313 -msgid "Compute or check hash checksum." -msgstr "Beräkna eller kontrollera kontrollsumma." - -#: grub-core/commands/hashsum.c:290 grub-core/commands/hashsum.c:295 -#: grub-core/commands/hashsum.c:300 grub-core/commands/hashsum.c:305 -#: grub-core/commands/hashsum.c:311 -msgid "[-c FILE [-p PREFIX]] [FILE1 [FILE2 ...]]" -msgstr "[-c FIL [-p PREFIX]] [FIL1 [FIL2 …]]" - -#: grub-core/commands/hdparm.c:33 -msgid "" -"Set Advanced Power Management\n" -"(1=low, ..., 254=high, 255=off)." -msgstr "" -"Ange Avancerad strömhantering (APM)\n" -"(1=lÃ¥g, …, 254=hög, 255=av)." - -#: grub-core/commands/hdparm.c:36 -msgid "Display power mode." -msgstr "Visa strömläge." - -#: grub-core/commands/hdparm.c:37 -msgid "Freeze ATA security settings until reset." -msgstr "Frys säkerhetsinställningar för ATA till omstart." - -#: grub-core/commands/hdparm.c:39 -msgid "Display SMART health status." -msgstr "Visa SMART-hälsostatus." - -#: grub-core/commands/hdparm.c:40 -msgid "" -"Set Automatic Acoustic Management\n" -"(0=off, 128=quiet, ..., 254=fast)." -msgstr "" -"Ange Automatisk ljudhantering (AAM)\n" -"(0=av, 128=tyst, …, 254=snabb)." - -#: grub-core/commands/hdparm.c:43 -msgid "" -"Set standby timeout\n" -"(0=off, 1=5s, 2=10s, ..., 240=20m, 241=30m, ...)." -msgstr "" -"Ange tidsgräns för vänteläge\n" -"(0=av, 1=5s, 2=10s, …, 240=20m, 241=30m, …)." - -#: grub-core/commands/hdparm.c:46 -msgid "Set drive to standby mode." -msgstr "Försätt disken i vänteläge." - -#: grub-core/commands/hdparm.c:47 -msgid "Set drive to sleep mode." -msgstr "Försätt disken i strömsparläge." - -#: grub-core/commands/hdparm.c:48 -msgid "Print drive identity and settings." -msgstr "Skriv ut diskidentitet och -inställningar." - -#: grub-core/commands/hdparm.c:50 -msgid "Show raw contents of ATA IDENTIFY sector." -msgstr "Visa det rÃ¥a innehÃ¥llet av en ATA IDENTIFY-sektor." - -#: grub-core/commands/hdparm.c:52 -msgid "Disable/enable SMART (0/1)." -msgstr "Inaktivera/aktivera SMART (0/1)." - -#: grub-core/commands/hdparm.c:53 -msgid "Do not print messages." -msgstr "Skriv inte ut meddelanden." - -#: grub-core/commands/hdparm.c:286 grub-core/commands/i386/rdmsr.c:68 -#: grub-core/commands/iorw.c:47 grub-core/commands/legacycfg.c:760 -#: grub-core/commands/legacycfg.c:812 grub-core/commands/macbless.c:190 -#: grub-core/commands/memrw.c:47 grub-core/commands/pgp.c:738 -#: grub-core/commands/pgp.c:792 grub-core/commands/search.c:304 -#: grub-core/commands/search_wrap.c:179 grub-core/commands/setpci.c:243 -#: grub-core/commands/sleep.c:71 grub-core/fs/zfs/zfsinfo.c:279 -#: grub-core/fs/zfs/zfsinfo.c:358 grub-core/gettext/gettext.c:492 -#: grub-core/kern/corecmd.c:65 grub-core/kern/corecmd.c:79 -#: grub-core/mmap/mmap.c:430 grub-core/net/dns.c:713 grub-core/net/dns.c:745 -#: grub-core/net/net.c:694 grub-core/net/net.c:1052 -#: grub-core/normal/context.c:194 grub-core/script/execute.c:131 -#: grub-core/term/gfxterm_background.c:136 -msgid "one argument expected" -msgstr "ett argument förväntat" - -#: grub-core/commands/hdparm.c:440 -msgid "[OPTIONS] DISK" -msgstr "[FLAGGOR] DISK" - -#: grub-core/commands/hdparm.c:441 -msgid "Get/set ATA disk parameters." -msgstr "Hämta/ange parametrar för ATA-disk." - -#: grub-core/commands/help.c:132 grub-core/lib/arg.c:109 -#: grub-core/lib/gnulib/argp-help.c:1616 -msgid "Usage:" -msgstr "Användning:" - -#: grub-core/commands/help.c:146 -msgid "[PATTERN ...]" -msgstr "[MÖNSTER …]" - -#: grub-core/commands/help.c:147 -msgid "Show a help message." -msgstr "Visa ett hjälpmeddelande." - -#: grub-core/commands/hexdump.c:31 -msgid "Skip offset bytes from the beginning of file." -msgstr "Hoppa över offset-byte frÃ¥n början av fil." - -#: grub-core/commands/hexdump.c:33 -msgid "Read only LENGTH bytes." -msgstr "Läs bara LÄNGD byte." - -#: grub-core/commands/hexdump.c:125 -msgid "[OPTIONS] FILE_OR_DEVICE" -msgstr "[FLAGGOR] FIL_ELLER_ENHET" - -#: grub-core/commands/hexdump.c:126 -msgid "Show raw contents of a file or memory." -msgstr "Visa rÃ¥a innehÃ¥llet av en fil eller minne." - -#: grub-core/commands/i386/cmosdump.c:58 -msgid "Show raw dump of the CMOS contents." -msgstr "Visa rÃ¥dump av CMOS-innehÃ¥llet." - -#: grub-core/commands/i386/cmostest.c:108 -#: grub-core/commands/i386/cmostest.c:111 -#: grub-core/commands/i386/cmostest.c:114 -msgid "BYTE:BIT" -msgstr "BYTE:BIT" - -#: grub-core/commands/i386/cmostest.c:109 -msgid "Test bit at BYTE:BIT in CMOS." -msgstr "Testa bit i BYTE:BIT i CMOS." - -#: grub-core/commands/i386/cmostest.c:112 -msgid "Clear bit at BYTE:BIT in CMOS." -msgstr "Töm bit i BYTE:BIT i CMOS." - -#. TRANSLATORS: A bit may be either set (1) or clear (0). -#: grub-core/commands/i386/cmostest.c:116 -msgid "Set bit at BYTE:BIT in CMOS." -msgstr "Sätt bit i BYTE:BIT i CMOS." - -#: grub-core/commands/i386/coreboot/cb_timestamps.c:120 -msgid "Show coreboot boot time statistics." -msgstr "Visa statistik för coreboot uppstartstid." - -#: grub-core/commands/i386/coreboot/cbls.c:137 -msgid "List coreboot tables." -msgstr "Lista coreboot-tabeller." - -#. TRANSLATORS: "(default)" at the end means that this option is used if -#. no argument is specified. -#: grub-core/commands/i386/cpuid.c:36 -msgid "Check if CPU supports 64-bit (long) mode (default)." -msgstr "Kontrollera om CPU stöder 64-bitars (long)-läge (standard)." - -#: grub-core/commands/i386/cpuid.c:37 -msgid "Check if CPU supports Physical Address Extension." -msgstr "Kontrollera om CPU stöder fysiskt adresstillägg (PAE)." - -#: grub-core/commands/i386/cpuid.c:119 -msgid "Check for CPU features." -msgstr "Kontrollera CPU-egenskaper." - -#. TRANSLATORS: In this file "mapping" refers to a change GRUB makes so if -#. your language doesn't have an equivalent of "mapping" you can -#. use the word like "rerouting". -#. -#: grub-core/commands/i386/pc/drivemap.c:43 -msgid "Show the current mappings." -msgstr "Visa aktuella mappningar." - -#: grub-core/commands/i386/pc/drivemap.c:44 -msgid "Reset all mappings to the default values." -msgstr "Ã…terställ alla mappningar till deras standardvärden." - -#: grub-core/commands/i386/pc/drivemap.c:45 -msgid "Perform both direct and reverse mappings." -msgstr "Utför bÃ¥de direkta och omvända mappningar." - -#: grub-core/commands/i386/pc/drivemap.c:184 -msgid "No drives have been remapped" -msgstr "Inga enheter har mappats om" - -#. TRANSLATORS: This is the header of mapping list. -#. On the left is how OS will see the disks and -#. on the right current GRUB vision. -#: grub-core/commands/i386/pc/drivemap.c:191 -msgid "OS disk #num ------> GRUB/BIOS device" -msgstr "OS disk #num ------> GRUB/BIOS-enhet" - -#: grub-core/commands/i386/pc/drivemap.c:413 -msgid "-l | -r | [-s] grubdev osdisk." -msgstr "-l | -r | [-s] grubdev osdisk." - -#: grub-core/commands/i386/pc/drivemap.c:414 -msgid "Manage the BIOS drive mappings." -msgstr "Hantera BIOS-enhetsmappningarna." - -#: grub-core/commands/i386/pc/halt.c:31 -msgid "Do not use APM to halt the computer." -msgstr "Använd inte APM för att stoppa datorn." - -#: grub-core/commands/i386/pc/halt.c:119 -msgid "Halt the system, if possible using APM." -msgstr "Stoppa datorn, om möjligt använd APM." - -#: grub-core/commands/i386/pc/lsapm.c:75 -msgid "no APM found" -msgstr "ingen APM hittades" - -#: grub-core/commands/i386/pc/lsapm.c:77 -#, c-format -msgid "" -"Version %u.%u\n" -"32-bit CS = 0x%x, len = 0x%x, offset = 0x%x\n" -"16-bit CS = 0x%x, len = 0x%x\n" -"DS = 0x%x, len = 0x%x\n" -msgstr "" -"Version %u.%u\n" -"32-bit CS = 0x%x, len = 0x%x, offset = 0x%x\n" -"16-bit CS = 0x%x, len = 0x%x\n" -"DS = 0x%x, len = 0x%x\n" - -#: grub-core/commands/i386/pc/lsapm.c:86 -msgid "16-bit protected interface supported\n" -msgstr "16-bit protected interface stöds\n" - -#: grub-core/commands/i386/pc/lsapm.c:87 -msgid "16-bit protected interface unsupported\n" -msgstr "16-bit protected interface stöds ej\n" - -#: grub-core/commands/i386/pc/lsapm.c:89 -msgid "32-bit protected interface supported\n" -msgstr "32-bit protected interface stöds\n" - -#: grub-core/commands/i386/pc/lsapm.c:90 -msgid "32-bit protected interface unsupported\n" -msgstr "32-bit protected interface stöds ej\n" - -#: grub-core/commands/i386/pc/lsapm.c:92 -msgid "CPU Idle slows down processor\n" -msgstr "CPU Idle saktar ned processorn\n" - -#: grub-core/commands/i386/pc/lsapm.c:93 -msgid "CPU Idle doesn't slow down processor\n" -msgstr "CPU Idle saktar inte ned processorn\n" - -#: grub-core/commands/i386/pc/lsapm.c:95 -msgid "APM disabled\n" -msgstr "APM inaktiverad\n" - -#: grub-core/commands/i386/pc/lsapm.c:95 -msgid "APM enabled\n" -msgstr "APM aktiverad\n" - -#: grub-core/commands/i386/pc/lsapm.c:97 -msgid "APM disengaged\n" -msgstr "APM frÃ¥nkopplad\n" - -#: grub-core/commands/i386/pc/lsapm.c:97 -msgid "APM engaged\n" -msgstr "APM aktiverad\n" - -#: grub-core/commands/i386/pc/lsapm.c:107 -msgid "Show APM information." -msgstr "Visa APM-information." - -#. TRANSLATORS: It's musical notes, not the notes -#. you take. Play command expects arguments which can -#. be either a filename or tempo+notes. -#. This error happens if none is specified. -#: grub-core/commands/i386/pc/play.c:88 -msgid "filename or tempo and notes expected" -msgstr "filnamn eller tempo och noter förväntades" - -#: grub-core/commands/i386/pc/play.c:113 grub-core/commands/i386/pc/play.c:144 -#, c-format -msgid "Invalid tempo in %s" -msgstr "Ogiltigt tempo %s" - -#: grub-core/commands/i386/pc/play.c:151 grub-core/commands/macbless.c:172 -#: grub-core/fs/archelp.c:260 grub-core/fs/bfs.c:621 grub-core/fs/bfs.c:704 -#: grub-core/fs/btrfs.c:1726 grub-core/fs/btrfs.c:1755 -#: grub-core/fs/btrfs.c:1799 grub-core/fs/btrfs.c:1882 -#: grub-core/fs/btrfs.c:1906 grub-core/fs/fshelp.c:257 grub-core/fs/jfs.c:696 -#: grub-core/fs/minix.c:426 grub-core/fs/ufs.c:544 grub-core/fs/zfs/zfs.c:2083 -#: grub-core/fs/zfs/zfs.c:2095 grub-core/fs/zfs/zfs.c:2301 -#: grub-core/net/http.c:120 -#, c-format -msgid "file `%s' not found" -msgstr "filen â€%s†hittades inte" - -#: grub-core/commands/i386/pc/play.c:162 grub-core/commands/i386/pc/play.c:171 -#: grub-core/kern/misc.c:419 grub-core/script/execute.c:138 -#: grub-core/script/execute.c:244 -msgid "unrecognized number" -msgstr "okänt nummer" - -#: grub-core/commands/i386/pc/play.c:190 -msgid "FILE | TEMPO [PITCH1 DURATION1] [PITCH2 DURATION2] ... " -msgstr "FIL | TEMPO [TONHÖJD1 VARAKTIGHET1] [TONHÖJD2 VARAKTIGHET2] … " - -#: grub-core/commands/i386/pc/play.c:191 -msgid "Play a tune." -msgstr "Spela en lÃ¥t." - -#: grub-core/commands/i386/pc/sendkey.c:39 -msgid "set numlock mode" -msgstr "sätt numlock-läge" - -#: grub-core/commands/i386/pc/sendkey.c:40 -msgid "set capslock mode" -msgstr "sätt capslock-läge" - -#: grub-core/commands/i386/pc/sendkey.c:41 -msgid "set scrolllock mode" -msgstr "sätt scrollock-läge" - -#: grub-core/commands/i386/pc/sendkey.c:42 -msgid "set insert mode" -msgstr "sätt insert-läge" - -#: grub-core/commands/i386/pc/sendkey.c:43 -msgid "set pause mode" -msgstr "sätt pausläge" - -#: grub-core/commands/i386/pc/sendkey.c:44 -msgid "press left shift" -msgstr "tryck vänster skift" - -#: grub-core/commands/i386/pc/sendkey.c:45 -msgid "press right shift" -msgstr "tryck höger skift" - -#: grub-core/commands/i386/pc/sendkey.c:46 -msgid "press SysRq" -msgstr "tryck sysrq" - -#: grub-core/commands/i386/pc/sendkey.c:47 -msgid "press NumLock key" -msgstr "tryck numlock-tangenten" - -#: grub-core/commands/i386/pc/sendkey.c:48 -msgid "press CapsLock key" -msgstr "tryck capsLock-tangenten" - -#: grub-core/commands/i386/pc/sendkey.c:49 -msgid "press ScrollLock key" -msgstr "tryck scrollock-tangenten" - -#: grub-core/commands/i386/pc/sendkey.c:50 -msgid "press Insert key" -msgstr "tryck insert-tangenten" - -#: grub-core/commands/i386/pc/sendkey.c:51 -msgid "press left alt" -msgstr "tryck vänster alt" - -#: grub-core/commands/i386/pc/sendkey.c:52 -msgid "press right alt" -msgstr "tryck höger alt" - -#: grub-core/commands/i386/pc/sendkey.c:53 -msgid "press left ctrl" -msgstr "tryck vänster ctrl" - -#: grub-core/commands/i386/pc/sendkey.c:54 -msgid "press right ctrl" -msgstr "tryck höger ctrl" - -#: grub-core/commands/i386/pc/sendkey.c:55 -msgid "don't update LED state" -msgstr "uppdatera inte LED-tillstÃ¥nd" - -#: grub-core/commands/i386/pc/sendkey.c:372 -msgid "[KEYSTROKE1] [KEYSTROKE2] ..." -msgstr "[TANGENTTRYCK1] [TANGENTTRYCK2] …" - -#. TRANSLATORS: It can emulate multiple -#. keypresses. -#: grub-core/commands/i386/pc/sendkey.c:375 -msgid "Emulate a keystroke sequence" -msgstr "Emulera en tangenttryckningssekvens" - -#: grub-core/commands/i386/rdmsr.c:37 grub-core/commands/iorw.c:34 -#: grub-core/commands/memrw.c:33 grub-core/commands/setpci.c:73 -msgid "Save read value into variable VARNAME." -msgstr "Spara läst värde till variabeln VARNAMN." - -#: grub-core/commands/i386/rdmsr.c:38 grub-core/commands/iorw.c:35 -#: grub-core/commands/memrw.c:34 grub-core/commands/probe.c:40 -#: grub-core/commands/search_wrap.c:40 grub-core/commands/setpci.c:74 -#: grub-core/commands/tr.c:32 -msgid "VARNAME" -msgstr "VARNAMN" - -#: grub-core/commands/i386/rdmsr.c:55 grub-core/commands/i386/rdmsr.c:60 -#: grub-core/commands/i386/rdmsr.c:65 grub-core/commands/i386/wrmsr.c:47 -#: grub-core/commands/i386/wrmsr.c:52 grub-core/commands/i386/wrmsr.c:57 -msgid "unsupported instruction" -msgstr "instruktionen stöds ej" - -#: grub-core/commands/i386/rdmsr.c:77 grub-core/commands/i386/wrmsr.c:69 -#: grub-core/commands/i386/wrmsr.c:77 grub-core/net/dns.c:727 -msgid "invalid argument" -msgstr "ogiltigt argument" - -#: grub-core/commands/i386/rdmsr.c:94 grub-core/commands/memrw.c:125 -#: grub-core/commands/memrw.c:129 grub-core/commands/memrw.c:133 -msgid "ADDR" -msgstr "ADR" - -#: grub-core/commands/i386/rdmsr.c:95 -msgid "Read a CPU model specific register." -msgstr "Läs av ett processorspecifikt register." - -#: grub-core/commands/i386/wrmsr.c:86 -msgid "ADDR VALUE" -msgstr "ADDR VALUE" - -#: grub-core/commands/i386/wrmsr.c:87 -msgid "Write a value to a CPU model specific register." -msgstr "Skriv ett värde til ett processorspecifikt register." - -#: grub-core/commands/ieee1275/suspend.c:34 -msgid "Run `go' to resume GRUB." -msgstr "Kör â€go†för att Ã¥teruppta GRUB." - -#: grub-core/commands/ieee1275/suspend.c:45 -msgid "Return to IEEE1275 prompt." -msgstr "Ã…tervänd till IEEE1275-prompten." - -#: grub-core/commands/iorw.c:123 grub-core/commands/iorw.c:127 -#: grub-core/commands/iorw.c:131 grub-core/gdb/gdb.c:79 -msgid "PORT" -msgstr "PORT" - -#: grub-core/commands/iorw.c:123 -msgid "Read 8-bit value from PORT." -msgstr "Läs 8-bitarsvärde frÃ¥n PORT." - -#: grub-core/commands/iorw.c:127 -msgid "Read 16-bit value from PORT." -msgstr "Läs 16-bitarsvärde frÃ¥n PORT." - -#: grub-core/commands/iorw.c:131 -msgid "Read 32-bit value from PORT." -msgstr "Läs 32-bitarsvärde frÃ¥n PORT." - -#: grub-core/commands/iorw.c:135 grub-core/commands/iorw.c:139 -msgid "PORT VALUE [MASK]" -msgstr "PORTVÄRDE [MASK]" - -#: grub-core/commands/iorw.c:136 -msgid "Write 8-bit VALUE to PORT." -msgstr "Skriv 8-bitarsVÄRDE till PORT." - -#: grub-core/commands/iorw.c:140 -msgid "Write 16-bit VALUE to PORT." -msgstr "Skriv 16-bitarsVÄRDE till PORT." - -#: grub-core/commands/iorw.c:143 grub-core/commands/memrw.c:137 -#: grub-core/commands/memrw.c:141 grub-core/commands/memrw.c:145 -msgid "ADDR VALUE [MASK]" -msgstr "ADDR VALUE [MASK]" - -#: grub-core/commands/iorw.c:144 -msgid "Write 32-bit VALUE to PORT." -msgstr "Skriv 32-bitarsVÄRDE till PORT." - -#: grub-core/commands/keylayouts.c:215 grub-core/commands/loadenv.c:61 -#: grub-core/commands/nativedisk.c:189 grub-core/efiemu/main.c:235 -#: grub-core/font/font.c:428 grub-core/gfxmenu/gfxmenu.c:63 -#: grub-core/kern/device.c:42 grub-core/kern/dl.c:740 -#, c-format -msgid "variable `%s' isn't set" -msgstr "variabeln â€%s†är inte inställd" - -#: grub-core/commands/keylayouts.c:301 -msgid "Load a keyboard layout." -msgstr "Läs in en tangentbordslayout." - -#. TRANSLATORS: "Check" in a sense that if this key is pressed then -#. "true" is returned, otherwise "false". -#: grub-core/commands/keystatus.c:32 -msgid "Check Shift key." -msgstr "Kontrollera skifttangent." - -#: grub-core/commands/keystatus.c:33 -msgid "Check Control key." -msgstr "Kontrollera control-tangent." - -#: grub-core/commands/keystatus.c:34 -msgid "Check Alt key." -msgstr "Kontrollera alt-tangent." - -#. TRANSLATORS: there are 3 modifiers. -#: grub-core/commands/keystatus.c:106 -msgid "Check key modifier status." -msgstr "Kontrollera status för tangentmodifierare." - -#: grub-core/commands/legacycfg.c:512 grub-core/commands/legacycfg.c:526 -#: grub-core/commands/legacycfg.c:546 grub-core/commands/legacycfg.c:559 -#: grub-core/commands/time.c:43 grub-core/script/function.c:109 -#: util/grub-file.c:100 util/grub-fstest.c:57 util/grub-mount.c:69 -#, c-format -msgid "can't find command `%s'" -msgstr "kan inte hitta kommandot â€%sâ€" - -#: grub-core/commands/legacycfg.c:813 grub-core/normal/auth.c:225 -#: util/grub-mkpasswd-pbkdf2.c:139 -msgid "Enter password: " -msgstr "Ange lösenord: " - -#. TRANSLATORS: "legacy config" means -#. "config as used by grub-legacy". -#: grub-core/commands/legacycfg.c:837 -msgid "Parse legacy config in same context" -msgstr "Tolka gammal konfiguration i samma sammanhang" - -#: grub-core/commands/legacycfg.c:842 -msgid "Parse legacy config in new context" -msgstr "Tolka gammal konfiguration i nytt sammanhang" - -#: grub-core/commands/legacycfg.c:847 -msgid "Parse legacy config in same context taking only menu entries" -msgstr "Tolka gammal konfiguration i samma sammanhang bara för menyposter" - -#: grub-core/commands/legacycfg.c:852 -msgid "Parse legacy config in new context taking only menu entries" -msgstr "Tolka gammal konfiguration i nytt sammanhang bara för menyposter" - -#: grub-core/commands/legacycfg.c:856 -msgid "[--no-mem-option] [--type=TYPE] FILE [ARG ...]" -msgstr "[--no-mem-option] [--type=TYP] FIL [ARG …]" - -#: grub-core/commands/legacycfg.c:857 -msgid "Simulate grub-legacy `kernel' command" -msgstr "Simulera grub-legacy â€kernelâ€-kommando" - -#: grub-core/commands/legacycfg.c:861 grub-core/commands/legacycfg.c:865 -msgid "FILE [ARG ...]" -msgstr "FIL [ARG …]" - -#: grub-core/commands/legacycfg.c:862 -msgid "Simulate grub-legacy `initrd' command" -msgstr "Simulera grub-legacy â€initrdâ€-kommando" - -#: grub-core/commands/legacycfg.c:866 -msgid "Simulate grub-legacy `modulenounzip' command" -msgstr "Simulera grub-legacy â€modulenounzipâ€-kommandot" - -#: grub-core/commands/legacycfg.c:870 grub-core/commands/legacycfg.c:875 -msgid "[--md5] PASSWD [FILE]" -msgstr "[--md5] LÖSENORD [FIL]" - -#: grub-core/commands/legacycfg.c:871 -msgid "Simulate grub-legacy `password' command" -msgstr "Simulera grub-legacy â€passwordâ€-kommandot" - -#: grub-core/commands/legacycfg.c:876 -msgid "Simulate grub-legacy `password' command in menu entry mode" -msgstr "Simulera grub-legacy â€passwordâ€-kommandot i menypostsläge" - -#. TRANSLATORS: This option is used to override default filename -#. for loading and storing environment. -#: grub-core/commands/loadenv.c:37 -msgid "Specify filename." -msgstr "Ange filnamn." - -#: grub-core/commands/loadenv.c:39 -msgid "Skip signature-checking of the environment file." -msgstr "Hoppa över signaturkontroll av miljöfilen." - -#: grub-core/commands/loadenv.c:451 -msgid "[-f FILE] [-s|--skip-sig] [variable_name_to_whitelist] [...]" -msgstr "[-f FIL] [-s|--skip-sig] [variabelnamn_att_vitlista] […]" - -#: grub-core/commands/loadenv.c:452 -msgid "Load variables from environment block file." -msgstr "Läs in variabler frÃ¥n miljöblockfilen." - -#: grub-core/commands/loadenv.c:455 -msgid "[-f FILE]" -msgstr "[-f FIL]" - -#: grub-core/commands/loadenv.c:456 -msgid "List variables from environment block file." -msgstr "Lista variabler frÃ¥n miljöblockfilen." - -#: grub-core/commands/loadenv.c:460 -msgid "[-f FILE] variable_name [...]" -msgstr "[-f FIL] variabelnamn […]" - -#: grub-core/commands/loadenv.c:461 -msgid "Save variables to environment block file." -msgstr "Spara variabler till miljöblockfilen." - -#: grub-core/commands/ls.c:40 -msgid "Show a long list with more detailed information." -msgstr "Visa en lÃ¥ng lista med mer detaljerad information." - -#: grub-core/commands/ls.c:41 -msgid "Print sizes in a human readable format." -msgstr "Skriv ut storlekar i ett format läsbart för människor." - -#: grub-core/commands/ls.c:42 -msgid "List all files." -msgstr "Lista alla filer." - -#: grub-core/commands/ls.c:73 -msgid "Network protocols:" -msgstr "Nätverksprotokoll:" - -#: grub-core/commands/ls.c:295 -msgid "[-l|-h|-a] [FILE ...]" -msgstr "[-l|-h|-a] [FIL …]" - -#: grub-core/commands/ls.c:296 -msgid "List devices and files." -msgstr "Lista enheter och filer." - -#: grub-core/commands/lsacpi.c:255 -msgid "Show version 1 tables only." -msgstr "Visa endast tabeller för version 1." - -#: grub-core/commands/lsacpi.c:256 -msgid "Show version 2 and version 3 tables only." -msgstr "Visa endast tabeller för version 2 och version 3." - -#: grub-core/commands/lsacpi.c:306 -msgid "Show ACPI information." -msgstr "Visa ACPI-information." - -#: grub-core/commands/lsmmap.c:31 -msgid "available RAM" -msgstr "tillgängligt RAM" - -#: grub-core/commands/lsmmap.c:32 -msgid "reserved RAM" -msgstr "reserverat RAM" - -#. TRANSLATORS: this refers to memory where ACPI tables are stored -#. and which can be used by OS once it loads ACPI tables. -#: grub-core/commands/lsmmap.c:35 -msgid "ACPI reclaimable RAM" -msgstr "ACPI Ã¥terhämtningsbart RAM" - -#. TRANSLATORS: this refers to memory which ACPI-compliant OS -#. is required to save accross hibernations. -#: grub-core/commands/lsmmap.c:38 -msgid "ACPI non-volatile storage RAM" -msgstr "ACPI ickeflyktigt lagrings-RAM" - -#: grub-core/commands/lsmmap.c:39 -msgid "faulty RAM (BadRAM)" -msgstr "felaktigt RAM (BadRAM)" - -#: grub-core/commands/lsmmap.c:40 -msgid "persistent RAM" -msgstr "persistent RAM" - -#: grub-core/commands/lsmmap.c:41 -msgid "persistent RAM (legacy)" -msgstr "persistent RAM (äldre)" - -#: grub-core/commands/lsmmap.c:42 -msgid "RAM holding coreboot tables" -msgstr "RAM innehÃ¥llandes coreboot-tabeller" - -#: grub-core/commands/lsmmap.c:43 -msgid "RAM holding firmware code" -msgstr "RAM innehÃ¥llandes kod för fast programvara" - -#: grub-core/commands/lsmmap.c:52 -#, c-format -msgid "base_addr = 0x%llx, length = 0x%llx, %s\n" -msgstr "bas_adre = 0x%llx, längd = 0x%llx, %s\n" - -#: grub-core/commands/lsmmap.c:55 -#, c-format -msgid "base_addr = 0x%llx, length = 0x%llx, type = 0x%x\n" -msgstr "bas_adre = 0x%llx, längd = 0x%llx, typ = 0x%x\n" - -#: grub-core/commands/lsmmap.c:79 -msgid "List memory map provided by firmware." -msgstr "Lista minnesmappning tillhandahÃ¥llen av fasta programvaran." - -#: grub-core/commands/lspci.c:232 -msgid "List PCI devices." -msgstr "Lista PCI-enheter." - -#: grub-core/commands/macbless.c:224 -msgid "Bless FILE of HFS or HFS+ partition for intel macs." -msgstr "Bless FIL pÃ¥ HFS eller HFS+-partition för intel mac:ar." - -#: grub-core/commands/macbless.c:228 -msgid "Bless DIR of HFS or HFS+ partition for PPC macs." -msgstr "Bless KAT pÃ¥ HFS eller HFS+-partitionen för PPC-mac:ar." - -#: grub-core/commands/memrw.c:125 -msgid "Read 8-bit value from ADDR." -msgstr "Läs 8-bitarsvärde frÃ¥n ADR." - -#: grub-core/commands/memrw.c:129 -msgid "Read 16-bit value from ADDR." -msgstr "Läs 16-bitarsvärde frÃ¥n ADR." - -#: grub-core/commands/memrw.c:133 -msgid "Read 32-bit value from ADDR." -msgstr "Läs 32-bitarsvärde frÃ¥n ADR." - -#: grub-core/commands/memrw.c:138 -msgid "Write 8-bit VALUE to ADDR." -msgstr "Skriv 8-bitarsVÄRDE till ADR." - -#: grub-core/commands/memrw.c:142 -msgid "Write 16-bit VALUE to ADDR." -msgstr "Skriv 16-bitarsVÄRDE till ADR." - -#: grub-core/commands/memrw.c:146 -msgid "Write 32-bit VALUE to ADDR." -msgstr "Skriv 32-bitarsVÄRDE till ADR." - -#: grub-core/commands/menuentry.c:31 -msgid "Menu entry type." -msgstr "Menyposttyp." - -#: grub-core/commands/menuentry.c:31 grub-core/commands/menuentry.c:38 -#: grub-core/commands/menuentry.c:39 grub-core/gettext/gettext.c:520 -#: util/grub-fstest.c:520 util/grub-install.c:291 util/grub-install.c:304 -#: util/grub-mknetdir.c:51 util/grub-mkrescue.c:109 util/grub-mkrescue.c:110 -#: util/grub-mount.c:453 util/grub-render-label.c:65 -msgid "STRING" -msgstr "STRÄNG" - -#: grub-core/commands/menuentry.c:33 -msgid "List of users allowed to boot this entry." -msgstr "Lista över användare som tillÃ¥ts starta upp denna post." - -#: grub-core/commands/menuentry.c:33 -msgid "USERNAME[,USERNAME]" -msgstr "ANVÄNDARNAMN[,ANVÄNDARNAMN]" - -#: grub-core/commands/menuentry.c:36 -msgid "Keyboard key to quickly boot this entry." -msgstr "Tangentbordstangent för att snabbt starta denna post." - -#: grub-core/commands/menuentry.c:36 -msgid "KEYBOARD_KEY" -msgstr "TANGENTBORDSTANGENT" - -#: grub-core/commands/menuentry.c:38 -msgid "Use STRING as menu entry body." -msgstr "Använd STRÄNG som en menypostkropp." - -#: grub-core/commands/menuentry.c:39 -msgid "Menu entry identifier." -msgstr "Menypostidentifierare." - -#. TRANSLATORS: menu entry can either be bootable by anyone or only by -#. handful of users. By default when security is active only superusers can -#. boot a given menu entry. With --unrestricted (this option) -#. anyone can boot it. -#: grub-core/commands/menuentry.c:44 -msgid "This entry can be booted by any user." -msgstr "Denna post kan startas av alla användare." - -#: grub-core/commands/menuentry.c:323 grub-core/commands/menuentry.c:328 -#: grub-core/tests/test_blockarg.c:46 -msgid "BLOCK" -msgstr "BLOCK" - -#: grub-core/commands/menuentry.c:323 -msgid "Define a menu entry." -msgstr "Definiera en menypost." - -#: grub-core/commands/menuentry.c:328 -msgid "Define a submenu." -msgstr "Definiera en undermeny." - -#. TRANSLATORS: this is module list header. Name -#. is module name, Ref Count is a reference counter -#. (how many modules or open descriptors use it). -#. Dependencies are the other modules it uses. -#. -#: grub-core/commands/minicmd.c:162 -msgid "Name\tRef Count\tDependencies\n" -msgstr "Namn\tRef antal\tBeroenden\n" - -#: grub-core/commands/minicmd.c:201 -msgid "Show this message." -msgstr "Visa detta meddelande." - -#: grub-core/commands/minicmd.c:204 -msgid "ADDR [SIZE]" -msgstr "ADR [STORLEK]" - -#: grub-core/commands/minicmd.c:204 -msgid "Show memory contents." -msgstr "Visa minnesinnehÃ¥ll." - -#: grub-core/commands/minicmd.c:207 grub-core/kern/corecmd.c:188 -#: util/grub-install.c:275 -msgid "MODULE" -msgstr "MODUL" - -#: grub-core/commands/minicmd.c:207 -msgid "Remove a module." -msgstr "Ta bort en modul." - -#: grub-core/commands/minicmd.c:210 -msgid "Show loaded modules." -msgstr "Visa inlästa moduler." - -#: grub-core/commands/minicmd.c:213 -msgid "Exit from GRUB." -msgstr "Avsluta GRUB." - -#: grub-core/commands/mips/loongson/lsspd.c:42 -msgid "No CS5536 found" -msgstr "Ingen CS5536 hittades" - -#: grub-core/commands/mips/loongson/lsspd.c:45 -#, c-format -msgid "CS5536 at %d:%d.%d\n" -msgstr "CS5536 pÃ¥ %d:%d.%d\n" - -#. TRANSLATORS: System management bus is often used to access components like -#. RAM (info only, not data) or batteries. I/O space is where in memory -#. its ports are. -#: grub-core/commands/mips/loongson/lsspd.c:55 -#, c-format -msgid "System management bus controller I/O space is at 0x%x\n" -msgstr "Systemhanteringsbusskontrollerns I/O-utrymme är pÃ¥ 0x%x\n" - -#. TRANSLATORS: it's shown in a report in a way -#. like number 1: ... number 2: ... -#. -#: grub-core/commands/mips/loongson/lsspd.c:66 -#, c-format -msgid "RAM slot number %d\n" -msgstr "RAM-slot nummer %d\n" - -#: grub-core/commands/mips/loongson/lsspd.c:73 -#, c-format -msgid "Written SPD bytes: %d B.\n" -msgstr "Skrivna SPD-byte: %d B.\n" - -#: grub-core/commands/mips/loongson/lsspd.c:74 -#, c-format -msgid "Total flash size: %d B.\n" -msgstr "Total flash-storlek: %d B.\n" - -#: grub-core/commands/mips/loongson/lsspd.c:79 -msgid "Memory type: DDR2." -msgstr "Minnestyp: DDR2." - -#: grub-core/commands/mips/loongson/lsspd.c:83 -#, c-format -msgid "Part no: %s.\n" -msgstr "Del nr: %s.\n" - -#: grub-core/commands/mips/loongson/lsspd.c:86 -msgid "Memory type: Unknown." -msgstr "Minnestyp: Okänt." - -#: grub-core/commands/mips/loongson/lsspd.c:97 -msgid "Print Memory information." -msgstr "Skriv ut minnesinformation." - -#: grub-core/commands/nativedisk.c:118 grub-core/commands/probe.c:118 -#: grub-core/commands/probe.c:124 util/grub-probe.c:450 -#, c-format -msgid "%s does not support UUIDs" -msgstr "%s stöder ej UUID:er" - -#: grub-core/commands/nativedisk.c:325 -msgid "[MODULE1 MODULE2 ...]" -msgstr "[MODUL1 MODUL2 …]" - -#: grub-core/commands/nativedisk.c:326 -msgid "" -"Switch to native disk drivers. If no modules are specified default set (pata," -"ahci,usbms,ohci,uhci,ehci) is used" -msgstr "" -"Växla till inbyggda diskdrivrutiner. Om inga moduler anges som används (pata," -"ahci,usbms,ohci,uhci,ehci) som standard" - -#: grub-core/commands/parttool.c:40 -msgid "" -"Perform COMMANDS on partition.\n" -"Use `parttool PARTITION help' for the list of available commands." -msgstr "" -"Utför COMMANDS pÃ¥ partitionen.\n" -"Använd â€parttool PARTITION help†för en lista över tillgängliga kommandon." - -#: grub-core/commands/parttool.c:123 -msgid "=VAL" -msgstr "=VAL" - -#: grub-core/commands/parttool.c:136 -#, c-format -msgid "Sorry, no parttool is available for %s\n" -msgstr "Tyvärr, parttool är inte tillgängligt för %s\n" - -#: grub-core/commands/parttool.c:288 grub-core/lib/arg.c:285 -#: grub-core/lib/arg.c:351 -#, c-format -msgid "unknown argument `%s'" -msgstr "okänt argument â€%sâ€" - -#: grub-core/commands/parttool.c:344 -msgid "PARTITION COMMANDS" -msgstr "PARTITIONSKOMMANDON" - -#: grub-core/commands/password.c:85 -msgid "USER PASSWORD" -msgstr "ANVÄNDARLÖSENORD" - -#: grub-core/commands/password.c:86 -msgid "Set user password (plaintext). Unrecommended and insecure." -msgstr "Ange användarlösenord (klartext). Ej rekommenderat och osäkert." - -#. TRANSLATORS: it means that the string which -#. was supposed to be a password hash doesn't -#. have a correct format, not to password -#. mismatch. -#: grub-core/commands/password_pbkdf2.c:98 -#: grub-core/commands/password_pbkdf2.c:115 -#: grub-core/commands/password_pbkdf2.c:123 -#: grub-core/commands/password_pbkdf2.c:150 -#: grub-core/commands/password_pbkdf2.c:179 -msgid "invalid PBKDF2 password" -msgstr "ogiltigt PBKDF2-lösenord" - -#: grub-core/commands/password_pbkdf2.c:202 -msgid "USER PBKDF2_PASSWORD" -msgstr "ANVÄNDARE PBKDF2_LÖSENORD" - -#: grub-core/commands/password_pbkdf2.c:203 -msgid "Set user password (PBKDF2). " -msgstr "Ställ in användarlösenord (PBKDF2). " - -#: grub-core/commands/pcidump.c:39 grub-core/commands/setpci.c:69 -msgid "Select device by vendor and device IDs." -msgstr "Välj enhet efter tillverkare och enhet-ID." - -#: grub-core/commands/pcidump.c:40 grub-core/commands/setpci.c:70 -msgid "[vendor]:[device]" -msgstr "[tillverkare]:[enhet]" - -#: grub-core/commands/pcidump.c:41 grub-core/commands/setpci.c:71 -msgid "Select device by its position on the bus." -msgstr "Välj enhet efter dess position pÃ¥ bussen." - -#: grub-core/commands/pcidump.c:42 grub-core/commands/setpci.c:72 -msgid "[bus]:[slot][.func]" -msgstr "[bus]:[slot][.func]" - -#: grub-core/commands/pcidump.c:109 grub-core/commands/pcidump.c:138 -#: grub-core/commands/setpci.c:183 grub-core/commands/setpci.c:214 -#: grub-core/fs/zfs/zfs.c:3794 grub-core/kern/emu/hostdisk.c:458 -#: grub-core/kern/emu/hostdisk.c:473 grub-core/kern/file.c:44 -#, c-format -msgid "missing `%c' symbol" -msgstr "saknar â€%câ€-symbol" - -#: grub-core/commands/pcidump.c:168 -msgid "[-s POSITION] [-d DEVICE]" -msgstr "[-s POSITION] [-d ENHET]" - -#: grub-core/commands/pcidump.c:169 -msgid "Show raw dump of the PCI configuration space." -msgstr "Visa rÃ¥dump av PCI-konfigurationsutrymmet." - -#: grub-core/commands/pgp.c:45 -msgid "Skip signature-checking of the public key file." -msgstr "Hoppa över signaturkontroll av den öppna nyckelfilen." - -#. TRANSLATORS: it's about GNUPG signatures. -#: grub-core/commands/pgp.c:71 grub-core/commands/pgp.c:81 -#: grub-core/commands/pgp.c:86 grub-core/commands/pgp.c:96 -#: grub-core/commands/pgp.c:103 grub-core/commands/pgp.c:107 -#: grub-core/commands/pgp.c:114 grub-core/commands/pgp.c:119 -#: grub-core/commands/pgp.c:124 grub-core/commands/pgp.c:128 -#: grub-core/commands/pgp.c:268 grub-core/commands/pgp.c:276 -#: grub-core/commands/pgp.c:281 grub-core/commands/pgp.c:289 -#: grub-core/commands/pgp.c:320 grub-core/commands/pgp.c:327 -#: grub-core/commands/pgp.c:332 grub-core/commands/pgp.c:342 -#: grub-core/commands/pgp.c:468 grub-core/commands/pgp.c:471 -#: grub-core/commands/pgp.c:474 grub-core/commands/pgp.c:477 -#: grub-core/commands/pgp.c:484 grub-core/commands/pgp.c:490 -#: grub-core/commands/pgp.c:665 -msgid "bad signature" -msgstr "dÃ¥lig signatur" - -#. TRANSLATORS: %08x is 32-bit key id. -#: grub-core/commands/pgp.c:636 grub-core/commands/pgp.c:812 -#, c-format -msgid "public key %08x not found" -msgstr "öppna nyckeln %08x hittades inte" - -#: grub-core/commands/pgp.c:651 grub-core/disk/diskfilter.c:772 -#: grub-core/disk/diskfilter.c:782 grub-core/fs/ntfs.c:404 -#: grub-core/fs/zfs/zfs.c:1933 grub-core/normal/menu.c:428 -#, c-format -msgid "module `%s' isn't loaded" -msgstr "modulen â€%s†är inte inläst" - -#: grub-core/commands/pgp.c:994 -msgid "[-s|--skip-sig] FILE SIGNATURE_FILE [PUBKEY_FILE]" -msgstr "[-s|--skip-sig] FIL SIGNATUR_FIL [ÖPPNYCKEL_FIL]" - -#: grub-core/commands/pgp.c:995 -msgid "Verify detached signature." -msgstr "Verifiera löskopplad signatur." - -#: grub-core/commands/pgp.c:998 -msgid "[-s|--skip-sig] PUBKEY_FILE" -msgstr "[-s|--skip-sig] ÖPPNYCKEL_FIL" - -#: grub-core/commands/pgp.c:999 -msgid "Add PUBKEY_FILE to trusted keys." -msgstr "Lägg till ÖPPNYCKEL_FIL till pÃ¥litliga nycklar." - -#: grub-core/commands/pgp.c:1003 -msgid "Show the list of trusted keys." -msgstr "Visa listan över pÃ¥litliga nycklar." - -#: grub-core/commands/pgp.c:1005 -msgid "PUBKEY_ID" -msgstr "ÖPPNYCKEL_ID" - -#: grub-core/commands/pgp.c:1006 -msgid "Remove PUBKEY_ID from trusted keys." -msgstr "Ta bort ÖPPNYCKEL_ID frÃ¥n pÃ¥litliga nycklar." - -#: grub-core/commands/probe.c:40 grub-core/commands/tr.c:32 -msgid "Set a variable to return value." -msgstr "Sätt en variabel till returvärdet." - -#. TRANSLATORS: It's a driver that is currently in use to access -#. the diven disk. -#: grub-core/commands/probe.c:43 -msgid "Determine driver." -msgstr "Fastställ drivrutin." - -#: grub-core/commands/probe.c:44 -msgid "Determine partition map type." -msgstr "Fastställ partitiontabelltypen." - -#: grub-core/commands/probe.c:45 -msgid "Determine filesystem type." -msgstr "Fastställ filsystemstyp." - -#: grub-core/commands/probe.c:46 -msgid "Determine filesystem UUID." -msgstr "Fastställ UUID för filsystem." - -#: grub-core/commands/probe.c:47 -msgid "Determine filesystem label." -msgstr "Fastställ filsystemsetikett" - -#: grub-core/commands/probe.c:139 grub-core/commands/probe.c:146 -#: util/grub-probe.c:462 -#, c-format -msgid "filesystem `%s' does not support labels" -msgstr "filsystemet â€%s†stödjer inte etiketter" - -#: grub-core/commands/probe.c:165 grub-core/fs/zfs/zfsinfo.c:430 -#: grub-core/loader/i386/bsd.c:169 util/grub-setup.c:223 -msgid "DEVICE" -msgstr "ENHET" - -#: grub-core/commands/probe.c:166 -msgid "Retrieve device info." -msgstr "Hämta enhetsinfo." - -#: grub-core/commands/read.c:85 -msgid "[ENVVAR]" -msgstr "[ENVVAR]" - -#: grub-core/commands/read.c:86 -msgid "Set variable with user input." -msgstr "Sätt variabeln med användarinmatning." - -#: grub-core/commands/reboot.c:40 -msgid "Reboot the computer." -msgstr "Starta om datorn." - -#. TRANSLATORS: in regexp you can mark some -#. groups with parentheses. These groups are -#. then numbered and you can save some of -#. them in variables. In other programs -#. those components aree often referenced with -#. back slash, e.g. \1. Compare -#. sed -e 's,\([a-z][a-z]*\),lowercase=\1,g' -#. The whole matching component is saved in VARNAME, not its number. -#. -#: grub-core/commands/regexp.c:44 -msgid "Store matched component NUMBER in VARNAME." -msgstr "Lagra matchande komponent NUMMER i VARNAMN." - -#: grub-core/commands/regexp.c:45 -msgid "[NUMBER:]VARNAME" -msgstr "[NUMMER:]VARNAMN" - -#. TRANSLATORS: This are two arguments. So it's -#. two separate units to translate and pay -#. attention not to reverse them. -#: grub-core/commands/regexp.c:157 -msgid "REGEXP STRING" -msgstr "REGEXP STRÄNG" - -#: grub-core/commands/regexp.c:158 -msgid "Test if REGEXP matches STRING." -msgstr "Testa om REGEXP matchar STRÄNG." - -#: grub-core/commands/search.c:324 -msgid "NAME [VARIABLE] [HINTS]" -msgstr "NAMN [VARIABEL] [TIPS]" - -#: grub-core/commands/search_file.c:4 -msgid "" -"Search devices by file. If VARIABLE is specified, the first device found is " -"set to a variable." -msgstr "" -"Sök enheter efter fil. Om VARIABEL är specificerad, kommer första enheten " -"som hittas att sättas till en variabel." - -#: grub-core/commands/search_label.c:4 -msgid "" -"Search devices by label. If VARIABLE is specified, the first device found is " -"set to a variable." -msgstr "" -"Sök enheter efter etikett. Om VARIABEL är specificerad kommer den första " -"enheten som hittas att sättas till en variabel." - -#: grub-core/commands/search_uuid.c:4 -msgid "" -"Search devices by UUID. If VARIABLE is specified, the first device found is " -"set to a variable." -msgstr "" -"Sök enheter efter UUID. Om VARIABEL är specificerad kommer den första " -"enheter som hittas a sättas till en variabel." - -#: grub-core/commands/search_wrap.c:34 -msgid "Search devices by a file." -msgstr "Sök enheter efter fil." - -#: grub-core/commands/search_wrap.c:35 -msgid "Search devices by a filesystem label." -msgstr "Sök enheter efter filsystemsetikett." - -#: grub-core/commands/search_wrap.c:37 -msgid "Search devices by a filesystem UUID." -msgstr "Sök enheter efter filsystems-UUID." - -#: grub-core/commands/search_wrap.c:40 -msgid "Set a variable to the first device found." -msgstr "Sätt en variabel till den första enhet som hittas." - -#: grub-core/commands/search_wrap.c:42 -msgid "Do not probe any floppy drive." -msgstr "Leta inte efter nÃ¥gon diskettenhet." - -#: grub-core/commands/search_wrap.c:44 -msgid "" -"First try the device HINT. If HINT ends in comma, also try subpartitions" -msgstr "" -"Prova förs enhetens TIPS. Om TIPS slutar pÃ¥ komma, prova ocksÃ¥ subpartitioner" - -#: grub-core/commands/search_wrap.c:45 grub-core/commands/search_wrap.c:49 -#: grub-core/commands/search_wrap.c:53 grub-core/commands/search_wrap.c:57 -#: grub-core/commands/search_wrap.c:61 grub-core/commands/search_wrap.c:65 -msgid "HINT" -msgstr "TIPS" - -#: grub-core/commands/search_wrap.c:47 -msgid "" -"First try the device HINT if currently running on IEEE1275. If HINT ends in " -"comma, also try subpartitions" -msgstr "" -"Prova först enhetens TIPS om aktuell körning sker pÃ¥ IEEE1275. Om TIPS " -"slutar pÃ¥ komma, prova ocksÃ¥ subpartitioner." - -#: grub-core/commands/search_wrap.c:51 -msgid "" -"First try the device HINT if currently running on BIOS. If HINT ends in " -"comma, also try subpartitions" -msgstr "" -"Prova först enhetens TIPS om aktuell körning sker pÃ¥ BIOS. Om TIPS slutar pÃ¥ " -"komma, prova ocksÃ¥ subpartitioner." - -#: grub-core/commands/search_wrap.c:55 -msgid "" -"First try the device HINT if direct hardware access is supported. If HINT " -"ends in comma, also try subpartitions" -msgstr "" -"Prova först enhetens TIPS om direkt hÃ¥rdvaruÃ¥tkomst stöds. Om TIPS slutar pÃ¥ " -"komma, prova ocksÃ¥ subpartitioner." - -#: grub-core/commands/search_wrap.c:59 -msgid "" -"First try the device HINT if currently running on EFI. If HINT ends in " -"comma, also try subpartitions" -msgstr "" -"Prova först enhetens TIPS om aktuell körning sker pÃ¥ EFI. Om TIPS slutar pÃ¥ " -"komma, prova ocksÃ¥ subpartitioner." - -#: grub-core/commands/search_wrap.c:63 -msgid "" -"First try the device HINT if currently running on ARC. If HINT ends in " -"comma, also try subpartitions" -msgstr "" -"Prova först enhetens TIPS om aktuell körning sker pÃ¥ ARC. Om TIPS slutar pÃ¥ " -"komma, prova ocksÃ¥ subpartitioner." - -#: grub-core/commands/search_wrap.c:207 -msgid "[-f|-l|-u|-s|-n] [--hint HINT [--hint HINT] ...] NAME" -msgstr "[-f|-l|-u|-s|-n] [--hint TIPS [--hint TIPS] …] NAMN" - -#: grub-core/commands/search_wrap.c:209 -msgid "" -"Search devices by file, filesystem label or filesystem UUID. If --set is " -"specified, the first device found is set to a variable. If no variable name " -"is specified, `root' is used." -msgstr "" -"Sök enheter efter fil, filsystemsetikett eller filsystems-UUID. Om --set är " -"specificerad, sätts den första enheten till en variabel. Om inget " -"variabelnamn är specificerat används â€rootâ€." - -#: grub-core/commands/setpci.c:132 -#, c-format -msgid "Register %x of %x:%02x.%x is %x\n" -msgstr "Register %x av %x:%02x.%x är %x\n" - -#: grub-core/commands/setpci.c:333 -msgid "[-s POSITION] [-d DEVICE] [-v VAR] REGISTER[=VALUE[:MASK]]" -msgstr "[-s POSITION] [-d ENHET] [-v VAR] REGISTER[=VÄRDE[:MASK]]" - -#: grub-core/commands/setpci.c:335 -msgid "Manipulate PCI devices." -msgstr "Manipulera PCI-enheter." - -#: grub-core/commands/sleep.c:32 -msgid "Verbose countdown." -msgstr "Utförlig nedräkning." - -#: grub-core/commands/sleep.c:33 -msgid "Allow to interrupt with ESC." -msgstr "TillÃ¥t avbrott med ESC." - -#: grub-core/commands/sleep.c:109 -msgid "NUMBER_OF_SECONDS" -msgstr "ANTAL_SEKUNDER" - -#: grub-core/commands/sleep.c:110 -msgid "Wait for a specified number of seconds." -msgstr "Vänta ett angivet antal sekunder." - -#: grub-core/commands/syslinuxcfg.c:50 util/grub-syslinux2cfg.c:66 -msgid "root directory of the syslinux disk [default=/]." -msgstr "rotkatalog för syslinuxdisk [standard=/]." - -#: grub-core/commands/syslinuxcfg.c:53 util/grub-syslinux2cfg.c:72 -msgid "" -"current directory of syslinux [default is parent directory of input file]." -msgstr "" -"aktuell katalog för syslinux [standard är överordnad katalog till " -"inmatningsfilen]." - -#: grub-core/commands/syslinuxcfg.c:55 util/grub-syslinux2cfg.c:75 -msgid "assume input is an isolinux configuration file." -msgstr "anta att inmatning är en konfigurationsfil för isolinux." - -#: grub-core/commands/syslinuxcfg.c:56 util/grub-syslinux2cfg.c:76 -msgid "assume input is a pxelinux configuration file." -msgstr "anta att inmatning är en konfigurationsfil för pxelinux." - -#: grub-core/commands/syslinuxcfg.c:57 util/grub-syslinux2cfg.c:77 -msgid "assume input is a syslinux configuration file." -msgstr "anta att inmatning är en konfigurationsfil för syslinux." - -#. TRANSLATORS: "syslinux config" means -#. "config as used by syslinux". -#: grub-core/commands/syslinuxcfg.c:189 -msgid "Execute syslinux config in same context" -msgstr "Kör syslinuxkonfiguration i samma sammanhang" - -#: grub-core/commands/syslinuxcfg.c:195 -msgid "Execute syslinux config in new context" -msgstr "Kör syslinuxkonfiguration i nytt sammanhang" - -#: grub-core/commands/syslinuxcfg.c:201 -msgid "Execute syslinux config in same context taking only menu entries" -msgstr "Kör syslinuxkonfiguration i samma sammanhang men ta bara menyposter" - -#: grub-core/commands/syslinuxcfg.c:207 -msgid "Execute syslinux config in new context taking only menu entries" -msgstr "Kör syslinuxkonfiguration i nytt sammanhang men ta bara menyposter" - -#: grub-core/commands/terminal.c:90 -msgid "no terminal specified" -msgstr "ingen terminal angiven" - -#: grub-core/commands/terminal.c:112 grub-core/commands/terminal.c:139 -#, c-format -msgid "terminal `%s' isn't found" -msgstr "terminalen â€%s†hittades inte" - -#: grub-core/commands/terminal.c:244 -msgid "Active input terminals:" -msgstr "Aktiva inmatningsterminaler:" - -#: grub-core/commands/terminal.c:245 -msgid "Available input terminals:" -msgstr "Tillgängliga inmatningsterminaler:" - -#: grub-core/commands/terminal.c:261 -msgid "Active output terminals:" -msgstr "Aktiva utmatningsterminaler:" - -#: grub-core/commands/terminal.c:262 -msgid "Available output terminals:" -msgstr "Tillgängliga utmatningsterminaler:" - -#: grub-core/commands/terminal.c:271 grub-core/commands/terminal.c:276 -msgid "[--append|--remove] [TERMINAL1] [TERMINAL2] ..." -msgstr "[--append|--remove] [TERMINAL1] [TERMINAL2] …" - -#: grub-core/commands/terminal.c:273 -msgid "List or select an input terminal." -msgstr "Lista eller välj en inmatningsterminal." - -#: grub-core/commands/terminal.c:278 -msgid "List or select an output terminal." -msgstr "Lista eller välj en utmatningsterminal." - -#: grub-core/commands/test.c:444 -msgid "EXPRESSION ]" -msgstr "UTTRYCK ]" - -#: grub-core/commands/test.c:444 grub-core/commands/test.c:447 -msgid "Evaluate an expression." -msgstr "Evaluera ett uttryck." - -#: grub-core/commands/test.c:447 -msgid "EXPRESSION" -msgstr "UTTRYCK" - -#: grub-core/commands/testload.c:164 -msgid "Load the same file in multiple ways." -msgstr "Läs in samma fil pÃ¥ flera olika sätt." - -#: grub-core/commands/testspeed.c:35 -msgid "Specify size for each read operation" -msgstr "Ange storlek för varje läsoperation" - -#: grub-core/commands/testspeed.c:58 -msgid "invalid block size" -msgstr "ogiltig blockstorlek" - -#: grub-core/commands/testspeed.c:80 -#, c-format -msgid "File size: %s\n" -msgstr "Filstorlek: %s\n" - -#: grub-core/commands/testspeed.c:83 -#, c-format -msgid "Elapsed time: %d.%03d s \n" -msgstr "Förfluten tid: %d.%03d s \n" - -#: grub-core/commands/testspeed.c:92 -#, c-format -msgid "Speed: %s \n" -msgstr "Hastighet: %s \n" - -#: grub-core/commands/testspeed.c:107 -msgid "[-s SIZE] FILENAME" -msgstr "[-s STORLEK] FILNAMN" - -#: grub-core/commands/testspeed.c:108 -msgid "Test file read speed." -msgstr "Testa läshastighet för fil." - -#: grub-core/commands/time.c:38 grub-core/script/execute.c:974 -msgid "no command is specified" -msgstr "inget kommando angivet" - -#: grub-core/commands/time.c:50 -#, c-format -msgid "Elapsed time: %d.%03d seconds \n" -msgstr "Förfluten tid: %d.%03d sekunder \n" - -#: grub-core/commands/time.c:61 -msgid "COMMAND [ARGS]" -msgstr "KOMMANDO [ARG]" - -#: grub-core/commands/time.c:62 -msgid "Measure time used by COMMAND" -msgstr "Mät tiden använd av KOMMANDO" - -#: grub-core/commands/tr.c:33 -msgid "Translate to upper case." -msgstr "Översätt till versaler." - -#: grub-core/commands/tr.c:34 -msgid "Translate to lower case." -msgstr "Översätt till gemener." - -#: grub-core/commands/tr.c:119 -msgid "[OPTIONS] [SET1] [SET2] [STRING]" -msgstr "[FLAGGOR] [SET1] [SET2] [STRÄNG]" - -#: grub-core/commands/tr.c:120 -msgid "Translate SET1 characters to SET2 in STRING." -msgstr "Översätt SET1-tecken till SET2 i STRÄNG." - -#. TRANSLATORS: it's a command description. -#: grub-core/commands/true.c:50 -msgid "Do nothing, successfully." -msgstr "Gör ingenting, lyckas." - -#. TRANSLATORS: it's a command description. -#: grub-core/commands/true.c:54 -msgid "Do nothing, unsuccessfully." -msgstr "Gör ingenting, misslyckas." - -#: grub-core/commands/usbtest.c:221 -msgid "Test USB support." -msgstr "Testa USB-stöd." - -#: grub-core/commands/verifiers.c:120 -#, c-format -msgid "verification requested but nobody cares: %s" -msgstr "verifiering begärd men ingen bryr sig: %s" - -#: grub-core/commands/verifiers.c:140 -msgid "big file signature isn't implemented yet" -msgstr "signering av stor fil är inte implementerad än" - -#: grub-core/commands/videoinfo.c:61 -msgid "Text-only " -msgstr "Endast text" - -#. TRANSLATORS: "Direct color" is a mode when the color components -#. are written dirrectly into memory. -#: grub-core/commands/videoinfo.c:66 -#, c-format -msgid "Direct color, mask: %d/%d/%d/%d pos: %d/%d/%d/%d" -msgstr "Direct color, mask: %d/%d/%d/%d pos: %d/%d/%d/%d" - -#. TRANSLATORS: In "paletted color" mode you write the index of the color -#. in the palette. Synonyms include "packed pixel". -#: grub-core/commands/videoinfo.c:78 -msgid "Paletted " -msgstr "Palett " - -#: grub-core/commands/videoinfo.c:80 -msgid "YUV " -msgstr "YUV " - -#. TRANSLATORS: "Planar" is the video memory where you have to write -#. in several different banks "plans" to control the different color -#. components of the same pixel. -#: grub-core/commands/videoinfo.c:85 -msgid "Planar " -msgstr "Plan " - -#: grub-core/commands/videoinfo.c:87 -msgid "Hercules " -msgstr "Hercules " - -#: grub-core/commands/videoinfo.c:89 -msgid "CGA " -msgstr "CGA " - -#. TRANSLATORS: Non-chain 4 is a 256-color planar -#. (unchained) video memory mode. -#: grub-core/commands/videoinfo.c:93 -msgid "Non-chain 4 " -msgstr "Non-chain 4" - -#: grub-core/commands/videoinfo.c:95 -msgid "Monochrome " -msgstr "Monokrom " - -#: grub-core/commands/videoinfo.c:97 -msgid "Unknown video mode " -msgstr "Okänt grafikläge " - -#: grub-core/commands/videoinfo.c:111 -msgid " EDID checksum invalid" -msgstr " ogiltig EDID-kontrollsumma" - -#: grub-core/commands/videoinfo.c:116 -#, c-format -msgid " EDID version: %u.%u\n" -msgstr " EDID version: %u.%u\n" - -#: grub-core/commands/videoinfo.c:120 -#, c-format -msgid " Preferred mode: %ux%u\n" -msgstr " Föredraget läge: %ux%u\n" - -#: grub-core/commands/videoinfo.c:123 -msgid " No preferred mode available\n" -msgstr " Inget föredraget läge tillgängligt\n" - -#: grub-core/commands/videoinfo.c:146 grub-core/video/video.c:490 -#: grub-core/video/video.c:498 grub-core/video/video.c:509 -#: grub-core/video/video.c:520 grub-core/video/video.c:528 -#, c-format -msgid "invalid video mode specification `%s'" -msgstr "ogiltig specifikation för videoläget â€%sâ€" - -#: grub-core/commands/videoinfo.c:168 -msgid "List of supported video modes:" -msgstr "Lista över videolägen som stöds:" - -#: grub-core/commands/videoinfo.c:169 -msgid "Legend: mask/position=red/green/blue/reserved" -msgstr "Teckenförklaring: mask/position=röd/grön/blÃ¥/reserverad" - -#: grub-core/commands/videoinfo.c:176 -#, c-format -msgid "Adapter `%s':\n" -msgstr "Adapter â€%sâ€:\n" - -#: grub-core/commands/videoinfo.c:180 -msgid " No info available" -msgstr " Ingen information tillgänglig" - -#: grub-core/commands/videoinfo.c:198 -msgid " Failed to initialize video adapter" -msgstr " Misslyckades med att initialisera videoadapter" - -#. TRANSLATORS: "x" has to be entered in, -#. like an identifier, so please don't -#. use better Unicode codepoints. -#: grub-core/commands/videoinfo.c:239 grub-core/commands/videoinfo.c:248 -msgid "[WxH[xD]]" -msgstr "[BxH[xD]]" - -#: grub-core/commands/videoinfo.c:240 grub-core/commands/videoinfo.c:249 -msgid "" -"List available video modes. If resolution is given show only modes matching " -"it." -msgstr "" -"Lista över tillgängliga videolägen. Om upplösning ges visas bara lägen som " -"stödjer det." - -#. TRANSLATORS: "x" has to be entered in, -#. like an identifier, so please don't -#. use better Unicode codepoints. -#: grub-core/commands/videotest.c:225 -msgid "[WxH]" -msgstr "[BxH]" - -#. TRANSLATORS: Here, on the other hand, it's -#. nicer to use unicode cross instead of x. -#: grub-core/commands/videotest.c:228 -msgid "Test video subsystem in mode WxH." -msgstr "Testa videodelsystemet i läge WxH." - -#: grub-core/commands/videotest.c:231 -msgid "Test video subsystem." -msgstr "Testa videodelsystemet." - -#: grub-core/commands/xen/lsxen.c:80 grub-core/commands/xen/lsxen.c:82 -msgid "[DIR]" -msgstr "[KAT]" - -#: grub-core/commands/xen/lsxen.c:81 grub-core/commands/xen/lsxen.c:83 -msgid "List Xen storage." -msgstr "Lista Xen-lagring." - -#. TRANSLATORS: GRUBUUID stands for "filesystem -#. UUID as used in GRUB". -#: grub-core/commands/xnu_uuid.c:110 -msgid "[-l] GRUBUUID [VARNAME]" -msgstr "[-l] GRUBUUID [VARNAMN]" - -#: grub-core/commands/xnu_uuid.c:111 -msgid "" -"Transform 64-bit UUID to format suitable for XNU. If -l is given keep it " -"lowercase as done by blkid." -msgstr "" -"Transformera 64-bitars UUID till ett passande format för XNU. Om -l ges, " -"behÃ¥ll det i gemener precis som blkid." - -#: grub-core/disk/arc/arcdisk.c:248 grub-core/disk/efi/efidisk.c:603 -#: grub-core/disk/i386/pc/biosdisk.c:498 grub-core/disk/i386/pc/biosdisk.c:543 -#: grub-core/disk/ieee1275/nand.c:198 grub-core/disk/ieee1275/obdisk.c:527 -#: grub-core/disk/ieee1275/ofdisk.c:586 -#, c-format -msgid "failure reading sector 0x%llx from `%s'" -msgstr "misslyckades med att läsa sektor 0x%llx frÃ¥n â€%sâ€" - -#: grub-core/disk/arc/arcdisk.c:284 grub-core/disk/efi/efidisk.c:626 -#: grub-core/disk/i386/pc/biosdisk.c:548 grub-core/disk/ieee1275/ofdisk.c:606 -#, c-format -msgid "failure writing sector 0x%llx to `%s'" -msgstr "misslyckades med att skriva sektor 0x%llx till â€%sâ€" - -#: grub-core/disk/cryptodisk.c:40 -msgid "Mount by UUID." -msgstr "Montera efter UUID." - -#. TRANSLATORS: It's still restricted to cryptodisks only. -#: grub-core/disk/cryptodisk.c:42 -msgid "Mount all." -msgstr "Montera alla." - -#: grub-core/disk/cryptodisk.c:43 -msgid "Mount all volumes with `boot' flag set." -msgstr "Montera alla volymer med flaggan â€boot†satt." - -#. TRANSLATORS: The first %s is the file being looked at, the second %s is -#. the error message. -#: grub-core/disk/cryptodisk.c:526 grub-core/kern/emu/hostdisk.c:152 -#: grub-core/kern/emu/hostdisk.c:262 grub-core/kern/emu/hostdisk.c:434 -#: grub-core/kern/emu/misc.c:168 grub-core/kern/emu/misc.c:174 -#: grub-core/kern/emu/misc.c:196 grub-core/osdep/bsd/getroot.c:92 -#: grub-core/osdep/bsd/getroot.c:168 grub-core/osdep/hurd/getroot.c:68 -#: grub-core/osdep/linux/blocklist.c:65 grub-core/osdep/linux/getroot.c:150 -#: grub-core/osdep/linux/hostdisk.c:194 grub-core/osdep/linux/hostdisk.c:421 -#: grub-core/osdep/linux/ofpath.c:417 grub-core/osdep/linux/ofpath.c:422 -#: grub-core/osdep/linux/ofpath.c:517 grub-core/osdep/linux/ofpath.c:530 -#: grub-core/osdep/sun/getroot.c:110 grub-core/osdep/windows/blocklist.c:98 -#: grub-core/tests/video_checksum.c:279 util/editenv.c:46 util/glue-efi.c:115 -#: util/glue-efi.c:120 util/glue-efi.c:130 util/grub-editenv.c:138 -#: util/grub-editenv.c:192 util/grub-file.c:83 util/grub-fstest.c:128 -#: util/grub-fstest.c:568 util/grub-install-common.c:92 -#: util/grub-install-common.c:94 util/grub-install-common.c:101 -#: util/grub-install-common.c:529 util/grub-menulst2cfg.c:53 -#: util/grub-menulst2cfg.c:68 util/grub-mkimage.c:292 util/grub-mklayout.c:504 -#: util/grub-mklayout.c:516 util/grub-mknetdir.c:133 util/grub-mknetdir.c:151 -#: util/grub-mkrescue.c:627 util/grub-mkrescue.c:631 util/grub-mkrescue.c:879 -#: util/grub-mkrescue.c:883 util/grub-mkstandalone.c:253 util/grub-mount.c:498 -#: util/grub-render-label.c:169 util/grub-script-check.c:175 -#: util/grub-syslinux2cfg.c:181 util/grub-syslinux2cfg.c:191 -#: util/grub-syslinux2cfg.c:212 util/grub-syslinux2cfg.c:228 util/misc.c:91 -#: util/render-label.c:76 util/render-label.c:163 util/render-label.c:174 -#: util/resolve.c:246 util/setup.c:783 -#, c-format -msgid "cannot open `%s': %s" -msgstr "kan inte öppna â€%sâ€: %s" - -#: grub-core/disk/cryptodisk.c:583 grub-core/disk/cryptodisk.c:628 -#: grub-core/kern/emu/hostdisk.c:270 grub-core/kern/emu/hostfs.c:142 -#: grub-core/osdep/linux/hostdisk.c:456 util/grub-editenv.c:143 -#: util/grub-editenv.c:149 util/grub-fstest.c:320 util/misc.c:111 -#, c-format -msgid "cannot seek `%s': %s" -msgstr "kan inte söka â€%sâ€: %s" - -#: grub-core/disk/cryptodisk.c:1144 -msgid "SOURCE|-u UUID|-a|-b" -msgstr "KÄLLA|-u UUID|-a|-b" - -#: grub-core/disk/cryptodisk.c:1145 -msgid "Mount a crypto device." -msgstr "Montera en krypterad enhet." - -#. TRANSLATORS: This message kicks in during the detection of -#. which modules needs to be included in core image. This happens -#. in the case of degraded RAID and means that autodetection may -#. fail to include some of modules. It's an installation time -#. message, not runtime message. -#: grub-core/disk/diskfilter.c:343 grub-core/disk/diskfilter.c:376 -#, c-format -msgid "" -"Couldn't find physical volume `%s'. Some modules may be missing from core " -"image." -msgstr "" -"Kunde inte hitta fysiska volymen â€%sâ€. Vissa moduler kanske saknas frÃ¥n " -"kärnavbilden." - -#: grub-core/disk/diskfilter.c:480 -#, c-format -msgid "physical volume %s not found" -msgstr "fysiska volymen %s hittades inte" - -#: grub-core/disk/efi/efidisk.c:600 grub-core/disk/efi/efidisk.c:623 -#, c-format -msgid "no media in `%s'" -msgstr "ingen media i â€%sâ€" - -#: grub-core/disk/geli.c:75 -msgid "Couldn't load sha256" -msgstr "Kunde inte läsa in sha256" - -#: grub-core/disk/geli.c:85 -msgid "Couldn't load sha512" -msgstr "Kunde inte läsa in sha512" - -#: grub-core/disk/geli.c:216 grub-core/disk/geli.c:220 -msgid "couldn't read ELI metadata" -msgstr "kunde inte läsa ELI-metadata" - -#: grub-core/disk/geli.c:231 -msgid "wrong ELI magic or version" -msgstr "fel ELI-magi eller version" - -#: grub-core/disk/geli.c:435 grub-core/disk/luks.c:329 -msgid "Attempting to decrypt master key..." -msgstr "Försöker att dekryptera huvudnyckeln…" - -#: grub-core/disk/geli.c:441 grub-core/disk/luks.c:347 -#, c-format -msgid "Enter passphrase for %s%s%s (%s): " -msgstr "Ange lösenfras för %s%s%s (%s): " - -#. TRANSLATORS: It's a cryptographic key slot: one element of an array -#. where each element is either empty or holds a key. -#: grub-core/disk/geli.c:530 grub-core/disk/luks.c:451 -#, c-format -msgid "Slot %d opened\n" -msgstr "Plats %d öppnad\n" - -#: grub-core/disk/i386/pc/biosdisk.c:470 grub-core/disk/i386/pc/biosdisk.c:524 -#: grub-core/disk/i386/pc/biosdisk.c:534 grub-core/kern/disk_common.c:47 -#, c-format -msgid "attempt to read or write outside of disk `%s'" -msgstr "försöker läsa eller skriva utanför disken â€%sâ€" - -#: grub-core/disk/i386/pc/biosdisk.c:491 grub-core/disk/i386/pc/biosdisk.c:611 -#: grub-core/disk/scsi.c:726 -msgid "cannot write to CD-ROM" -msgstr "kan inte skriva till CD-ROM" - -#: grub-core/disk/i386/pc/biosdisk.c:662 -msgid "" -"Native disk drivers are in use. Refusing to use firmware disk interface." -msgstr "" -"Inbyggda diskdrivrutiner används. Vägrar att använda diskgränssnittet för " -"fast programvara." - -#. TRANSLATORS: it's a partition for embedding, -#. not a partition embed into something. GRUB -#. install tools put core.img into a place -#. usable for bootloaders (called generically -#. "embedding zone") and this operation is -#. called "embedding". -#: grub-core/disk/ldm.c:1015 -msgid "your LDM Embedding Partition is too small; embedding won't be possible" -msgstr "din LDM Embedding Partition är för liten; inbäddning är inte möjlig" - -#. TRANSLATORS: it's a partition for embedding, -#. not a partition embed into something. -#: grub-core/disk/ldm.c:1033 -msgid "this LDM has no Embedding Partition; embedding won't be possible" -msgstr "denna LDM har ingen inbäddad partition; inbäddning är inte möjlig" - -#. TRANSLATORS: The disk is simply removed from the list of available ones, -#. not wiped, avoid to scare user. -#: grub-core/disk/loopback.c:45 -msgid "Delete the specified loopback drive." -msgstr "Ta bort den specificerade loopback-enheten." - -#: grub-core/disk/loopback.c:237 -msgid "[-d] DEVICENAME FILE." -msgstr "[-d] ENHETSNAMN FIL." - -#. TRANSLATORS: The file itself is not destroyed -#. or transformed into drive. -#: grub-core/disk/loopback.c:240 -msgid "Make a virtual drive from a file." -msgstr "Gör en virtuell enhet av en fil." - -#: grub-core/efiemu/i386/loadcore32.c:111 -#: grub-core/efiemu/i386/loadcore64.c:125 grub-core/kern/arm/dl.c:256 -#: grub-core/kern/arm64/dl.c:187 grub-core/kern/i386/dl.c:75 -#: grub-core/kern/ia64/dl.c:140 grub-core/kern/mips/dl.c:258 -#: grub-core/kern/powerpc/dl.c:163 grub-core/kern/riscv/dl.c:334 -#: grub-core/kern/sparc64/dl.c:180 grub-core/kern/x86_64/dl.c:110 -#: util/grub-mkimagexx.c:756 util/grub-mkimagexx.c:881 -#: util/grub-mkimagexx.c:945 util/grub-mkimagexx.c:1026 -#: util/grub-mkimagexx.c:1120 util/grub-mkimagexx.c:1222 -#: util/grub-mkimagexx.c:1413 util/grub-mkimagexx.c:1628 -#: util/grub-mkimagexx.c:1665 util/grub-mkimagexx.c:1697 -#: util/grub-mkimagexx.c:1767 util/grub-mkimagexx.c:1797 -#, c-format -msgid "relocation 0x%x is not implemented yet" -msgstr "omflyttning 0x%x är inte implementerad än" - -#: grub-core/efiemu/loadcore.c:200 grub-core/efiemu/loadcore.c:237 -#: grub-core/loader/i386/bsdXX.c:317 util/grub-mkimagexx.c:2360 -msgid "no symbol table" -msgstr "ingen symboltabell" - -#: grub-core/efiemu/loadcore.c:346 grub-core/kern/dl.c:609 -#: grub-core/loader/ia64/efi/linux.c:345 grub-core/loader/mips/linux.c:248 -#: grub-core/loader/multiboot_elfxx.c:76 -#: grub-core/loader/powerpc/ieee1275/linux.c:280 -#: grub-core/loader/sparc64/ieee1275/linux.c:320 -msgid "this ELF file is not of the right type" -msgstr "denna ELF-fil är inte av rätt typ" - -#: grub-core/efiemu/main.c:313 -msgid "Load and initialize EFI emulator." -msgstr "Läs in och initialisera EFI-emulator." - -#: grub-core/efiemu/main.c:317 -msgid "Finalize loading of EFI emulator." -msgstr "Färdigställ inläsning av EFI-emulator." - -#: grub-core/efiemu/main.c:320 -msgid "Unload EFI emulator." -msgstr "Inaktivera EFI-emulator." - -#: grub-core/efiemu/symbols.c:92 grub-core/kern/dl.c:376 -#, c-format -msgid "symbol `%s' not found" -msgstr "symbolen â€%s†hittades inte" - -#: grub-core/font/font_cmd.c:52 -msgid "Loaded fonts:" -msgstr "Inlästa typsnitt:" - -#: grub-core/font/font_cmd.c:74 -msgid "FILE..." -msgstr "FIL…" - -#: grub-core/font/font_cmd.c:75 -msgid "Specify one or more font files to load." -msgstr "Ange en eller flera typsnittsfiler att läsa in." - -#: grub-core/font/font_cmd.c:78 -msgid "List the loaded fonts." -msgstr "Lista inlästa typsnitt." - -#: grub-core/fs/archelp.c:216 grub-core/fs/archelp.c:278 -#: grub-core/fs/btrfs.c:1815 grub-core/fs/fshelp.c:227 grub-core/fs/jfs.c:736 -#: grub-core/fs/minix.c:369 grub-core/fs/ufs.c:454 -msgid "too deep nesting of symlinks" -msgstr "för djup nästling av symlänkar" - -#: grub-core/fs/bfs.c:228 grub-core/fs/fshelp.c:368 grub-core/fs/minix.c:270 -#: grub-core/kern/file.c:156 -msgid "attempt to read past the end of file" -msgstr "försökte att läsa förbi filens slut" - -#: grub-core/fs/btrfs.c:1698 grub-core/fs/btrfs.c:1957 -#: grub-core/fs/fshelp.c:189 grub-core/fs/fshelp.c:309 grub-core/fs/jfs.c:431 -#: grub-core/fs/minix.c:414 grub-core/fs/minix.c:562 -#: grub-core/fs/reiserfs.c:732 grub-core/fs/ufs.c:531 grub-core/fs/ufs.c:671 -#: grub-core/fs/zfs/zfs.c:2831 grub-core/fs/zfs/zfs.c:4247 -msgid "not a directory" -msgstr "inte en katalog" - -#: grub-core/fs/btrfs.c:2063 grub-core/fs/fshelp.c:307 grub-core/fs/jfs.c:835 -#: grub-core/fs/zfs/zfs.c:3801 -msgid "not a regular file" -msgstr "inte en vanlig fil" - -#: grub-core/fs/btrfs.c:2157 grub-core/fs/zfs/zfs.c:4333 -#: grub-core/partmap/msdos.c:400 -msgid "your core.img is unusually large. It won't fit in the embedding area" -msgstr "" -"din core.img är ovanligt stor. Den kommer inte att fÃ¥ plats i utrymmet " -"avsett för inbäddning" - -#: grub-core/fs/fshelp.c:281 grub-core/fs/minix.c:630 grub-core/fs/ufs.c:661 -#: grub-core/fs/ufs.c:757 grub-core/kern/fs.c:168 grub-core/kern/fs.c:180 -#, c-format -msgid "invalid file name `%s'" -msgstr "ogiltigt filnamn â€%sâ€" - -#: grub-core/fs/zfs/zfs.c:453 -msgid "checksum verification failed" -msgstr "verifiering av kontrollsumma misslyckades" - -#: grub-core/fs/zfs/zfs.c:1465 -msgid "couldn't find a necessary member device of multi-device filesystem" -msgstr "kunde inte hitta en nödvändig medlemsenhet av ett multienhetsfilsystem" - -#: grub-core/fs/zfs/zfscrypt.c:292 -msgid "no decryption key available" -msgstr "ingen dekrypteringsnyckel tillgänglig" - -#: grub-core/fs/zfs/zfscrypt.c:304 -msgid "MAC verification failed" -msgstr "Misslyckades med MAC-verifiering" - -#: grub-core/fs/zfs/zfscrypt.c:413 -msgid "Assume input is raw." -msgstr "Anta att inmatning är rÃ¥." - -#: grub-core/fs/zfs/zfscrypt.c:414 -msgid "Assume input is hex." -msgstr "Anta att inmatning är hex." - -#: grub-core/fs/zfs/zfscrypt.c:415 -msgid "Assume input is passphrase." -msgstr "Anta att inmatning är lösenfras." - -#: grub-core/fs/zfs/zfscrypt.c:437 util/grub-fstest.c:553 util/grub-mount.c:483 -msgid "Enter ZFS password: " -msgstr "Ange ZFS-lösenord: " - -#: grub-core/fs/zfs/zfscrypt.c:476 -msgid "[-h|-p|-r] [FILE]" -msgstr "[-h|-p|-r] [FIL]" - -#: grub-core/fs/zfs/zfscrypt.c:477 -msgid "Import ZFS wrapping key stored in FILE." -msgstr "Importera ZFS-inkapslingsnyckel lagrad i FIL." - -#: grub-core/fs/zfs/zfsinfo.c:51 -msgid "Virtual device is removed" -msgstr "Virtuell enhet är borttagen" - -#: grub-core/fs/zfs/zfsinfo.c:57 -msgid "Virtual device is faulted" -msgstr "Virtuell enhet är felaktig" - -#: grub-core/fs/zfs/zfsinfo.c:63 -msgid "Virtual device is offline" -msgstr "Virtuell enhet är frÃ¥nkopplad" - -#. TRANSLATORS: degraded doesn't mean broken but that some of -#. component are missing but virtual device as whole is still usable. -#: grub-core/fs/zfs/zfsinfo.c:70 -msgid "Virtual device is degraded" -msgstr "Virtuell enhet behöver Ã¥tgärdas" - -#: grub-core/fs/zfs/zfsinfo.c:73 -msgid "Virtual device is online" -msgstr "Virtuell enhet är tillgänglig" - -#: grub-core/fs/zfs/zfsinfo.c:89 -msgid "Incorrect virtual device: no type available" -msgstr "Felaktig virtuell enhet: ingen typ tillgänglig" - -#. TRANSLATORS: The virtual devices form a tree (in graph-theoretical -#. sense). The nodes like mirror or raidz have children: member devices. -#. The "real" devices which actually store data are called "leafs" -#. (again borrowed from graph theory) and can be either disks -#. (or partitions) or files. -#: grub-core/fs/zfs/zfsinfo.c:105 -msgid "Leaf virtual device (file or disk)" -msgstr "Virtuellt enhetslöv (fil eller disk)" - -#: grub-core/fs/zfs/zfsinfo.c:113 -msgid "Bootpath: unavailable\n" -msgstr "Startsökväg: otillgänglig\n" - -#: grub-core/fs/zfs/zfsinfo.c:115 -#, c-format -msgid "Bootpath: %s\n" -msgstr "Startsökväg: %s\n" - -#: grub-core/fs/zfs/zfsinfo.c:120 -msgid "Path: unavailable" -msgstr "Sökväg: inte tillgänglig" - -#: grub-core/fs/zfs/zfsinfo.c:122 -#, c-format -msgid "Path: %s\n" -msgstr "Sökväg: %s\n" - -#: grub-core/fs/zfs/zfsinfo.c:127 -msgid "Devid: unavailable" -msgstr "Devid: otillgängligt" - -#: grub-core/fs/zfs/zfsinfo.c:129 -#, c-format -msgid "Devid: %s\n" -msgstr "Devid: %s\n" - -#: grub-core/fs/zfs/zfsinfo.c:148 -msgid "This VDEV is a mirror" -msgstr "Denna VDEV är en spegel" - -#: grub-core/fs/zfs/zfsinfo.c:153 -#, c-format -msgid "This VDEV is a RAIDZ%llu\n" -msgstr "Denna VDEV är en RAIDZ%llu\n" - -#: grub-core/fs/zfs/zfsinfo.c:158 -msgid "Incorrect VDEV" -msgstr "Felaktig VDEV" - -#: grub-core/fs/zfs/zfsinfo.c:161 -#, c-format -msgid "VDEV with %d children\n" -msgstr "VDEV med %d barn\n" - -#. TRANSLATORS: it's the element carying the number %d, not -#. total element number. And the number itself is fine, -#. only the element isn't. -#. -#: grub-core/fs/zfs/zfsinfo.c:177 -#, c-format -msgid "VDEV element number %d isn't correct\n" -msgstr "VDEV-element nummer %d är inte korrekt\n" - -#. TRANSLATORS: it's the element carying the number %d, not -#. total element number. This is used in enumeration -#. "Element number 1", "Element number 2", ... -#: grub-core/fs/zfs/zfsinfo.c:184 -#, c-format -msgid "VDEV element number %d:\n" -msgstr "VDEV-element nummer %d:\n" - -#: grub-core/fs/zfs/zfsinfo.c:193 -#, c-format -msgid "Unknown virtual device type: %s\n" -msgstr "Okänd virtuell enhetstyp: %s\n" - -#. TRANSLATORS: Here we speak about ZFS pools it's semi-marketing, -#. semi-technical term by Sun/Oracle and should be translated in sync with -#. other ZFS-related software and documentation. -#: grub-core/fs/zfs/zfsinfo.c:254 -msgid "Pool state: active" -msgstr "PooltillstÃ¥nd: aktiv" - -#: grub-core/fs/zfs/zfsinfo.c:255 -msgid "Pool state: exported" -msgstr "PooltillstÃ¥nd: exporterad" - -#: grub-core/fs/zfs/zfsinfo.c:256 -msgid "Pool state: destroyed" -msgstr "PooltillstÃ¥nd: förstörd" - -#: grub-core/fs/zfs/zfsinfo.c:257 -msgid "Pool state: reserved for hot spare" -msgstr "PooltillstÃ¥nd: reserverad för het reserv" - -#: grub-core/fs/zfs/zfsinfo.c:258 -msgid "Pool state: level 2 ARC device" -msgstr "PooltillstÃ¥nd: nivÃ¥ 2 ARC-enhet" - -#: grub-core/fs/zfs/zfsinfo.c:259 -msgid "Pool state: uninitialized" -msgstr "PooltillstÃ¥nd: oinitierad" - -#: grub-core/fs/zfs/zfsinfo.c:260 -msgid "Pool state: unavailable" -msgstr "PooltillstÃ¥nd: otillgänglig" - -#: grub-core/fs/zfs/zfsinfo.c:261 -msgid "Pool state: potentially active" -msgstr "PooltillstÃ¥nd: potentiellt aktivt" - -#: grub-core/fs/zfs/zfsinfo.c:306 -msgid "Pool name: unavailable" -msgstr "Poolnamn: otillgängligt" - -#: grub-core/fs/zfs/zfsinfo.c:308 -#, c-format -msgid "Pool name: %s\n" -msgstr "Poolnamn: %s\n" - -#: grub-core/fs/zfs/zfsinfo.c:313 -msgid "Pool GUID: unavailable" -msgstr "Pool-GUID: otillgänglig" - -#: grub-core/fs/zfs/zfsinfo.c:315 -#, c-format -msgid "Pool GUID: %016llx\n" -msgstr "Pool-GUID: %016llx\n" - -#: grub-core/fs/zfs/zfsinfo.c:320 -msgid "Unable to retrieve pool state" -msgstr "Kunde inte hämta pooltillstÃ¥nd" - -#: grub-core/fs/zfs/zfsinfo.c:322 -msgid "Unrecognized pool state" -msgstr "Okänt pooltillstÃ¥nd" - -#. TRANSLATORS: There are undetermined number of virtual devices -#. in a device tree, not just one. -#. -#: grub-core/fs/zfs/zfsinfo.c:332 -msgid "No virtual device tree available" -msgstr "Inget virtuellt enhetsträd tillgängligt" - -#: grub-core/fs/zfs/zfsinfo.c:431 -msgid "Print ZFS info about DEVICE." -msgstr "Skriv ut ZFS-info om ENHET." - -#: grub-core/fs/zfs/zfsinfo.c:433 -msgid "FILESYSTEM [VARIABLE]" -msgstr "FILSYSTEM [VARIABEL]" - -#: grub-core/fs/zfs/zfsinfo.c:434 -msgid "Print ZFS-BOOTFSOBJ or store it into VARIABLE" -msgstr "Skriv ut ZFS-BOOTFSOBJ eller lagra det i VARIABEL" - -#. TRANSLATORS: at this position GRUB waits for the user to do an action -#. in remote debugger, namely to tell it to establish connection. -#: grub-core/gdb/gdb.c:48 -msgid "Now connect the remote debugger, please." -msgstr "Anslut fjärrfelsökaren nu." - -#. TRANSLATORS: GDB stub is a small part of -#. GDB functionality running on local host -#. which allows remote debugger to -#. connect to it. -#: grub-core/gdb/gdb.c:84 -msgid "Start GDB stub on given port" -msgstr "Starta GDB-stubbe pÃ¥ angiven port" - -#. TRANSLATORS: this refers to triggering -#. a breakpoint so that the user will land -#. into GDB. -#: grub-core/gdb/gdb.c:89 -msgid "Break into GDB" -msgstr "Brytpunkt för GDB" - -#: grub-core/gdb/gdb.c:91 -msgid "Stop GDB stub" -msgstr "Stoppa GDB-stubbe" - -#: grub-core/gettext/gettext.c:85 -msgid "premature end of file" -msgstr "för tidigt slut pÃ¥ filen" - -#. TRANSLATORS: It refers to passing the string through gettext. -#. So it's "translate" in the same meaning as in what you're -#. doing now. -#. -#: grub-core/gettext/gettext.c:525 -msgid "Translates the string with the current settings." -msgstr "Översätter strängen med aktuella inställningar." - -#: grub-core/gfxmenu/gui_label.c:186 grub-core/normal/menu_text.c:184 -msgid "" -"Press enter to boot the selected OS, `e' to edit the commands before booting " -"or `c' for a command-line. ESC to return previous menu." -msgstr "" -"Tryck retur för att starta upp markerat OS, â€e†för att redigera kommandon " -"innan start eller â€c†för kommandorad. ESC för att Ã¥tergÃ¥ till föregÃ¥ende " -"meny." - -#: grub-core/gfxmenu/gui_label.c:190 grub-core/normal/menu_text.c:192 -msgid "" -"Press enter to boot the selected OS, `e' to edit the commands before booting " -"or `c' for a command-line." -msgstr "" -"Tryck retur för att starta upp markerat OS, â€e†för att redigera kommandon " -"innan start eller â€c†för kommandorad." - -#: grub-core/gfxmenu/gui_label.c:194 -msgid "enter: boot, `e': options, `c': cmd-line" -msgstr "mata in: boot, â€eâ€: flaggor, â€câ€: cmd-line" - -#: grub-core/gfxmenu/gui_progress_bar.c:339 grub-core/normal/menu_text.c:446 -#, c-format -msgid "The highlighted entry will be executed automatically in %ds." -msgstr "Markerat val kommer att startas upp automatiskt om %d sekunder." - -#. TRANSLATORS: 's' stands for seconds. -#. It's a standalone timeout notification. -#. Please use the short form in your language. -#: grub-core/gfxmenu/gui_progress_bar.c:344 -#, c-format -msgid "%ds remaining." -msgstr "%ds Ã¥terstÃ¥r." - -#. TRANSLATORS: 's' stands for seconds. -#. It's a standalone timeout notification. -#. Please use the shortest form available in you language. -#: grub-core/gfxmenu/gui_progress_bar.c:349 grub-core/normal/menu_text.c:444 -#: grub-core/normal/menu_text.c:462 -#, c-format -msgid "%ds" -msgstr "%ds" - -#: grub-core/gfxmenu/view.c:103 -msgid "GRUB Boot Menu" -msgstr "GRUB uppstartsmeny" - -#: grub-core/hello/hello.c:36 -msgid "Hello World" -msgstr "Hello World" - -#: grub-core/hello/hello.c:45 -msgid "Say `Hello World'." -msgstr "Säg â€Hello Worldâ€." - -#: grub-core/io/gzio.c:409 grub-core/kern/file.c:210 -msgid "attempt to seek outside of the file" -msgstr "försökte söka utanför filen" - -#. TRANSLATORS: It's about given file having some strange format, not -#. complete lack of gzip support. -#: grub-core/io/gzio.c:1228 grub-core/io/gzio.c:1237 grub-core/io/gzio.c:1244 -msgid "unsupported gzip format" -msgstr "gzip-formatet stöds ej" - -#: grub-core/io/lzopio.c:511 -msgid "lzop file corrupted" -msgstr "lzopfil korrupt" - -#: grub-core/io/xzio.c:278 -msgid "xz file corrupted or unsupported block options" -msgstr "xzfil korrupt eller har blockalternativ som inte stöds" - -#: grub-core/kern/arm/dl.c:277 grub-core/kern/arm64/dl.c:44 -#: grub-core/kern/i386/dl.c:36 grub-core/kern/ia64/dl.c:41 -#: grub-core/kern/mips/dl.c:48 grub-core/kern/powerpc/dl.c:36 -#: grub-core/kern/riscv/dl.c:47 grub-core/kern/sparc64/dl.c:36 -#: grub-core/kern/x86_64/dl.c:36 grub-core/loader/i386/bsd.c:1445 -#: grub-core/loader/i386/bsdXX.c:49 grub-core/loader/ia64/efi/linux.c:341 -#: grub-core/loader/mips/linux.c:298 grub-core/loader/multiboot.c:232 -#: grub-core/loader/multiboot_elfxx.c:73 -#: grub-core/loader/powerpc/ieee1275/linux.c:294 -#: grub-core/loader/sparc64/ieee1275/linux.c:331 -msgid "invalid arch-dependent ELF magic" -msgstr "ogiltig arch-beroende ELF-magi" - -#: grub-core/kern/corecmd.c:178 -msgid "[ENVVAR=VALUE]" -msgstr "[ENVVAR=VÄRDE]" - -#: grub-core/kern/corecmd.c:179 -msgid "Set an environment variable." -msgstr "Ställ in en miljövariabel." - -#: grub-core/kern/corecmd.c:183 -msgid "ENVVAR" -msgstr "ENVVAR" - -#: grub-core/kern/corecmd.c:184 -msgid "Remove an environment variable." -msgstr "Ta bort en miljövariabel." - -#: grub-core/kern/corecmd.c:186 -msgid "[ARG]" -msgstr "[ARG]" - -#: grub-core/kern/corecmd.c:186 -msgid "List devices or files." -msgstr "Lista enheter eller filer." - -#: grub-core/kern/corecmd.c:188 -msgid "Insert a module." -msgstr "Infoga en modul." - -#: grub-core/kern/disk.c:236 grub-core/net/net.c:1390 -#, c-format -msgid "disk `%s' not found" -msgstr "disken â€%s†hittades inte" - -#: grub-core/kern/disk_common.c:27 -msgid "attempt to read or write outside of partition" -msgstr "försökte att läsa eller skriva utanför partition" - -# ELF magic is used to identify ELF files and is merely the very first few bytes of a file -#: grub-core/kern/dl.c:212 grub-core/kern/elf.c:61 grub-core/kern/elf.c:79 -#: grub-core/loader/i386/bsdXX.c:46 grub-core/loader/ia64/efi/linux.c:335 -#: grub-core/loader/multiboot_elfxx.c:69 -msgid "invalid arch-independent ELF magic" -msgstr "ogiltig arch-oberoende ELF magic" - -#. TRANSLATORS: it refers to the lack of free slots. -#: grub-core/kern/emu/hostdisk.c:208 grub-core/kern/emu/hostdisk.c:466 -msgid "device count exceeds limit" -msgstr "enhetsantal överskrider gräns" - -#: grub-core/kern/emu/hostdisk.c:342 util/editenv.c:54 util/grub-editenv.c:197 -#: util/grub-fstest.c:191 util/grub-mkfont.c:796 util/misc.c:114 -#: util/misc.c:129 util/setup.c:788 -#, c-format -msgid "cannot write to `%s': %s" -msgstr "kan inte skriva till â€%sâ€: %s" - -#. TRANSLATORS: Only one entry is ignored. However the suggestion -#. is to correct/delete the whole file. -#. device.map is a file indicating which -#. devices are available at boot time. Fedora populated it with -#. entries like (hd0,1) /dev/sda1 which would mean that every -#. partition is a separate disk for BIOS. Such entries were -#. inactive in GRUB due to its bug which is now gone. Without -#. this additional check these entries would be harmful now. -#. -#: grub-core/kern/emu/hostdisk.c:503 -#, c-format -msgid "" -"the device.map entry `%s' is invalid. Ignoring it. Please correct or delete " -"your device.map" -msgstr "" -"enhetsmappningen â€%s†är ogiltig. Ignorerar den. Reparera eller ta bort din " -"enhetsmappning" - -#. TRANSLATORS: device.map is a filename. Not to be translated. -#. device.map specifies disk correspondance overrides. Previously -#. one could create any kind of device name with this. Due to -#. some problems we decided to limit it to just a handful -#. possibilities. -#: grub-core/kern/emu/hostdisk.c:555 -#, c-format -msgid "" -"the drive name `%s' in device.map is incorrect. Using %s instead. Please use " -"the form [hfc]d[0-9]* (E.g. `hd0' or `cd')" -msgstr "" -"enhetsnamnet â€%s†för enhetsmappningen är felaktig. Använder %s istället. " -"Använd formen [hfc]d[0-9]* (exempelvis â€hd0†eller â€cdâ€)" - -#: grub-core/kern/emu/hostfs.c:76 grub-core/kern/emu/hostfs.c:109 -#, c-format -msgid "can't open `%s': %s" -msgstr "kan inte öppna â€%sâ€: %s" - -#: grub-core/kern/emu/main.c:99 util/grub-fstest.c:516 util/grub-mount.c:452 -msgid "DEVICE_NAME" -msgstr "ENHETSNAMN" - -#: grub-core/kern/emu/main.c:99 grub-core/loader/i386/bsd.c:136 -#: grub-core/loader/i386/bsd.c:169 util/grub-fstest.c:516 util/grub-mount.c:452 -msgid "Set root device." -msgstr "Ange rotenhet." - -#. TRANSLATORS: There are many devices in device map. -#: grub-core/kern/emu/main.c:102 util/grub-probe.c:733 util/grub-setup.c:85 -#, c-format -msgid "use FILE as the device map [default=%s]" -msgstr "använd FIL som enhetsmappning [standard=%s]" - -#. TRANSLATORS: There are many devices in device map. -#: grub-core/kern/emu/main.c:105 -msgid "use FILE as memdisk" -msgstr "använd FIL som memdisk" - -#: grub-core/kern/emu/main.c:107 util/grub-setup.c:83 -#, c-format -msgid "use GRUB files in the directory DIR [default=%s]" -msgstr "använd GRUB-filer i katalogen KAT [standard=%s]" - -#: grub-core/kern/emu/main.c:108 include/grub/util/install.h:67 -#: util/grub-editenv.c:58 util/grub-fstest.c:525 util/grub-glue-efi.c:58 -#: util/grub-macbless.c:104 util/grub-mkfont.c:962 util/grub-mkimage.c:84 -#: util/grub-mklayout.c:56 util/grub-mount.c:458 util/grub-probe.c:735 -#: util/grub-render-label.c:74 util/grub-script-check.c:52 util/grub-setup.c:90 -#: util/grub-syslinux2cfg.c:78 -msgid "print verbose messages." -msgstr "skriv ut informativa meddelanden." - -#: grub-core/kern/emu/main.c:109 grub-core/lib/gnulib/argp-parse.c:85 -msgid "SECS" -msgstr "SECS" - -#: grub-core/kern/emu/main.c:109 -msgid "wait until a debugger will attach" -msgstr "vänta till en felsökare ansluter" - -#: grub-core/kern/emu/main.c:171 util/grub-macbless.c:143 -#: util/grub-mkrelpath.c:61 util/grub-probe.c:874 util/grub-script-check.c:75 -#: util/grub-setup.c:203 -#, c-format -msgid "Unknown extra argument `%s'." -msgstr "Okänt extra argument â€%sâ€." - -#: grub-core/kern/emu/main.c:185 -msgid "GRUB emulator." -msgstr "GRUB-emulator." - -#: grub-core/kern/emu/main.c:213 util/grub-editenv.c:262 -#: util/grub-glue-efi.c:110 util/grub-macbless.c:173 util/grub-mkfont.c:1177 -#: util/grub-mkimage.c:266 util/grub-mklayout.c:494 -#: util/grub-mkpasswd-pbkdf2.c:132 util/grub-mkrelpath.c:96 -#: util/grub-probe.c:863 util/grub-render-label.c:152 -#: util/grub-script-check.c:160 util/grub-setup.c:262 -#: util/grub-syslinux2cfg.c:163 -msgid "Error in parsing command line arguments\n" -msgstr "Fel vid tolkning av kommandoradsargument\n" - -#. TRANSLATORS: In this case GRUB tells user what he has to do. -#: grub-core/kern/emu/main.c:248 -#, c-format -msgid "Run `gdb %s %d', and set ARGS.HOLD to zero.\n" -msgstr "Kör â€gdb %s %dâ€, och sätt ARGS.HOLD till noll.\n" - -#: grub-core/kern/emu/misc.c:48 -#, c-format -msgid "%s: warning:" -msgstr "%s: varning:" - -#: grub-core/kern/emu/misc.c:64 -#, c-format -msgid "%s: info:" -msgstr "%s: info:" - -#: grub-core/kern/emu/misc.c:79 util/grub-fstest.c:567 util/grub-fstest.c:576 -#: util/grub-mount.c:497 util/grub-mount.c:505 -#, c-format -msgid "%s: error:" -msgstr "%s: fel:" - -#: grub-core/kern/emu/misc.c:176 -#, c-format -msgid "file `%s' is too big" -msgstr "filen â€%s†är för stor" - -#: grub-core/kern/fs.c:120 -msgid "unknown filesystem" -msgstr "okänt filsystem" - -#: grub-core/kern/mips/arc/init.c:273 grub-core/kern/mips/loongson/init.c:301 -msgid "Shutdown failed" -msgstr "Avstängning misslyckades" - -#: grub-core/kern/mips/arc/init.c:285 -msgid "Exit failed" -msgstr "Avslutning misslyckades" - -#: grub-core/kern/misc.c:351 grub-core/kern/misc.c:408 include/grub/misc.h:269 -#: include/grub/misc.h:278 -msgid "overflow is detected" -msgstr "stackspill upptäcktes" - -#: grub-core/kern/partition.c:51 grub-core/partmap/bsdlabel.c:108 -#, c-format -msgid "Discarding improperly nested partition (%s,%s,%s%d)" -msgstr "Förkasta felaktigt nästlad partition (%s,%s,%s%d)" - -#: grub-core/kern/rescue_parser.c:73 util/grub-editenv.c:292 -#, c-format -msgid "Unknown command `%s'.\n" -msgstr "Okänt kommando â€%sâ€.\n" - -#: grub-core/lib/arg.c:31 -msgid "Display this help and exit." -msgstr "Visa denna hjälp och avsluta." - -#: grub-core/lib/arg.c:33 -msgid "Display the usage of this command and exit." -msgstr "Visa användningen av detta kommando och avsluta." - -#: grub-core/lib/arg.c:362 -#, c-format -msgid "missing mandatory option for `%s'" -msgstr "saknar obligatorisk flagga för â€%sâ€" - -#: grub-core/lib/arg.c:384 -#, c-format -msgid "the argument `%s' requires an integer" -msgstr "argumentet â€%s†kräver ett heltal" - -#: grub-core/lib/arg.c:407 -#, c-format -msgid "" -"a value was assigned to the argument `%s' while it doesn't require an " -"argument" -msgstr "" -"ett värde tilldelades argumentet â€%s†fastän det inte kräver ett argument" - -#: grub-core/lib/backtrace.c:64 -msgid "Print backtrace." -msgstr "Skriv bakÃ¥tspÃ¥r." - -#: grub-core/lib/gnulib/argp-help.c:149 -#, c-format -msgid "ARGP_HELP_FMT: %s value is less than or equal to %s" -msgstr "ARGP_HELP_FMT: %s värdet är mindre än eller lika med %s" - -#: grub-core/lib/gnulib/argp-help.c:225 -#, c-format -msgid "%.*s: ARGP_HELP_FMT parameter requires a value" -msgstr "%.*s: ARGP_HELP_FMT-parametern kräver ett värde" - -#: grub-core/lib/gnulib/argp-help.c:235 -#, c-format -msgid "%.*s: Unknown ARGP_HELP_FMT parameter" -msgstr "%.*s: Okänd ARGP_HELP_FMT-parameter" - -#: grub-core/lib/gnulib/argp-help.c:248 -#, c-format -msgid "Garbage in ARGP_HELP_FMT: %s" -msgstr "Skräp i ARGP_HELP_FMT: %s" - -#: grub-core/lib/gnulib/argp-help.c:1229 -msgid "" -"Mandatory or optional arguments to long options are also mandatory or " -"optional for any corresponding short options." -msgstr "" -"Obligatoriska eller valfria argument till lÃ¥nga flaggor är ocksÃ¥ " -"obligatoriska eller valfria för motsvarande korta flaggor." - -#: grub-core/lib/gnulib/argp-help.c:1620 -msgid " or: " -msgstr " eller: " - -#: grub-core/lib/gnulib/argp-help.c:1632 -msgid " [OPTION...]" -msgstr " [FLAGGA…]" - -#: grub-core/lib/gnulib/argp-help.c:1659 -#, c-format -msgid "Try '%s --help' or '%s --usage' for more information.\n" -msgstr "Prova â€%s --help†eller â€%s --usage†för mer information.\n" - -#: grub-core/lib/gnulib/argp-help.c:1687 -#, c-format -msgid "Report bugs to %s.\n" -msgstr "" -"Rapportera fel till %s.\n" -"Skicka synpunkter pÃ¥ översättningen till .\n" - -#: grub-core/lib/gnulib/argp-help.c:1888 grub-core/lib/gnulib/error.c:195 -msgid "Unknown system error" -msgstr "Okänt systemfel" - -#: grub-core/lib/gnulib/argp-parse.c:81 -msgid "give this help list" -msgstr "visa denna hjälplista" - -#: grub-core/lib/gnulib/argp-parse.c:82 -msgid "give a short usage message" -msgstr "ge ett kort användningsmeddelande" - -#: grub-core/lib/gnulib/argp-parse.c:83 util/grub-mkfont.c:946 -msgid "NAME" -msgstr "NAMN" - -#: grub-core/lib/gnulib/argp-parse.c:84 -msgid "set the program name" -msgstr "ställ in programnamnet" - -#: grub-core/lib/gnulib/argp-parse.c:86 -msgid "hang for SECS seconds (default 3600)" -msgstr "vänta i SECS sekunder (standard 3600)" - -#: grub-core/lib/gnulib/argp-parse.c:143 -msgid "print program version" -msgstr "skriv ut programversion" - -#: grub-core/lib/gnulib/argp-parse.c:160 -msgid "(PROGRAM ERROR) No version known!?" -msgstr "(PROGRAMFEL) Ingen version!?" - -#: grub-core/lib/gnulib/argp-parse.c:613 -#, c-format -msgid "%s: Too many arguments\n" -msgstr "%s: För mÃ¥nga argument\n" - -#: grub-core/lib/gnulib/argp-parse.c:759 -msgid "(PROGRAM ERROR) Option should have been recognized!?" -msgstr "(PROGRAMFEL) Flaggan borde ha känts igen!?" - -#: grub-core/lib/gnulib/getopt.c:278 -#, c-format -msgid "%s: option '%s%s' is ambiguous\n" -msgstr "%s: flaggan â€%s%s†är tvetydig\n" - -#: grub-core/lib/gnulib/getopt.c:284 -#, c-format -msgid "%s: option '%s%s' is ambiguous; possibilities:" -msgstr "%s: flaggan â€%s%s†är tvetydig; möjligheter:" - -#: grub-core/lib/gnulib/getopt.c:319 -#, c-format -msgid "%s: unrecognized option '%s%s'\n" -msgstr "%s: okänd flagga â€%s%sâ€\n" - -#: grub-core/lib/gnulib/getopt.c:345 -#, c-format -msgid "%s: option '%s%s' doesn't allow an argument\n" -msgstr "%s: flaggan â€%s%s†tillÃ¥ter inte argument\n" - -#: grub-core/lib/gnulib/getopt.c:360 -#, c-format -msgid "%s: option '%s%s' requires an argument\n" -msgstr "%s: flaggan â€%s%s†kräver ett argument\n" - -#: grub-core/lib/gnulib/getopt.c:621 -#, c-format -msgid "%s: invalid option -- '%c'\n" -msgstr "%s: ogiltig flagga -- â€%câ€\n" - -#: grub-core/lib/gnulib/getopt.c:636 grub-core/lib/gnulib/getopt.c:682 -#, c-format -msgid "%s: option requires an argument -- '%c'\n" -msgstr "%s: flaggan kräver ett argument -- â€%câ€\n" - -#: grub-core/lib/gnulib/openat-die.c:38 -#, c-format -msgid "unable to record current working directory" -msgstr "kan inte Ã¥terställa aktuell arbetskatalog" - -#: grub-core/lib/gnulib/openat-die.c:57 -#, c-format -msgid "failed to return to initial working directory" -msgstr "misslyckades med att Ã¥tergÃ¥ till ursprunglig arbetskatalog" - -#: grub-core/lib/gnulib/regcomp.c:135 grub-core/osdep/aros/hostdisk.c:523 -msgid "Success" -msgstr "Lyckades" - -#: grub-core/lib/gnulib/regcomp.c:138 -msgid "No match" -msgstr "Ingen träff" - -#: grub-core/lib/gnulib/regcomp.c:141 -msgid "Invalid regular expression" -msgstr "Ogiltigt reguljärt uttryck" - -#: grub-core/lib/gnulib/regcomp.c:144 -msgid "Invalid collation character" -msgstr "Ogiltigt sorteringstecken" - -#: grub-core/lib/gnulib/regcomp.c:147 -msgid "Invalid character class name" -msgstr "Ogiltigt namn pÃ¥ teckenklass" - -#: grub-core/lib/gnulib/regcomp.c:150 -msgid "Trailing backslash" -msgstr "Avslutande omvänt snedstreck" - -#: grub-core/lib/gnulib/regcomp.c:153 -msgid "Invalid back reference" -msgstr "Ogiltig bakÃ¥treferens" - -#: grub-core/lib/gnulib/regcomp.c:156 -msgid "Unmatched [, [^, [:, [., or [=" -msgstr "Omatchad [, [^, [:, [., eller [=" - -#: grub-core/lib/gnulib/regcomp.c:159 -msgid "Unmatched ( or \\(" -msgstr "Omatchad ( or \\(" - -#: grub-core/lib/gnulib/regcomp.c:162 -msgid "Unmatched \\{" -msgstr "Omatchad \\{" - -#: grub-core/lib/gnulib/regcomp.c:165 -msgid "Invalid content of \\{\\}" -msgstr "Ogiltigt innehÃ¥ll i \\{\\}" - -#: grub-core/lib/gnulib/regcomp.c:168 -msgid "Invalid range end" -msgstr "Ogiltig intervallavslut" - -#: grub-core/lib/gnulib/regcomp.c:171 -msgid "Memory exhausted" -msgstr "Slut pÃ¥ minne" - -#: grub-core/lib/gnulib/regcomp.c:174 -msgid "Invalid preceding regular expression" -msgstr "Ogiltig föregÃ¥ende reguljärt uttryck" - -#: grub-core/lib/gnulib/regcomp.c:177 -msgid "Premature end of regular expression" -msgstr "För tidigt avslut pÃ¥ reguljärt uttryck" - -#: grub-core/lib/gnulib/regcomp.c:180 -msgid "Regular expression too big" -msgstr "För stort reguljärt uttryck" - -#: grub-core/lib/gnulib/regcomp.c:183 -msgid "Unmatched ) or \\)" -msgstr "Omatchad ) eller \\)" - -#: grub-core/lib/gnulib/regcomp.c:531 -msgid "unknown regexp error" -msgstr "okänt regexpfel" - -#: grub-core/lib/gnulib/regcomp.c:676 -msgid "No previous regular expression" -msgstr "Inget tidigare reguljärt uttryck" - -#: grub-core/lib/i386/halt.c:77 -msgid "GRUB doesn't know how to halt this machine yet!" -msgstr "GRUB vet inte hur denna maskin ska avslutas än!" - -#: grub-core/lib/legacy_parse.c:75 -msgid "Default server is ${net_default_server}" -msgstr "Standardserver är ${net_default_server}" - -#: grub-core/lib/legacy_parse.c:844 grub-core/video/colors.c:296 -#: grub-core/video/colors.c:305 grub-core/video/colors.c:311 -#: grub-core/video/colors.c:327 util/render-label.c:84 util/render-label.c:98 -#, c-format -msgid "invalid color specification `%s'" -msgstr "ogiltig färgspecifikation â€%sâ€" - -#: grub-core/lib/mips/arc/reboot.c:32 grub-core/lib/mips/loongson/reboot.c:61 -msgid "Reboot failed" -msgstr "Omstart misslyckades" - -#: grub-core/lib/random.c:113 -msgid "[LENGTH]" -msgstr "[LÄNGD]" - -#: grub-core/lib/random.c:114 -msgid "Hexdump random data." -msgstr "Hexdump för slumpmässig data" - -#: grub-core/loader/arm/linux.c:242 -msgid "device tree must be supplied (see `devicetree' command)" -msgstr "enhetsträd mÃ¥ste anges (se â€devicetreeâ€-kommandot)" - -#: grub-core/loader/arm/linux.c:334 -msgid "invalid zImage" -msgstr "ogiltig zImage" - -#: grub-core/loader/arm/linux.c:450 grub-core/loader/efi/fdt.c:144 -msgid "invalid device tree" -msgstr "ogiltigt enhetsträd" - -#: grub-core/loader/arm/linux.c:493 grub-core/loader/arm64/linux.c:383 -#: grub-core/loader/i386/linux.c:1125 grub-core/loader/i386/pc/linux.c:479 -#: grub-core/loader/i386/xen.c:962 grub-core/loader/i386/xen.c:964 -#: grub-core/loader/ia64/efi/linux.c:591 grub-core/loader/mips/linux.c:501 -#: grub-core/loader/powerpc/ieee1275/linux.c:383 -#: grub-core/loader/riscv/linux.c:50 -#: grub-core/loader/sparc64/ieee1275/linux.c:511 -msgid "Load Linux." -msgstr "Läs in Linux." - -#: grub-core/loader/arm/linux.c:495 grub-core/loader/arm64/linux.c:385 -#: grub-core/loader/i386/linux.c:1127 grub-core/loader/i386/pc/linux.c:482 -#: grub-core/loader/i386/xen.c:966 grub-core/loader/ia64/efi/linux.c:594 -#: grub-core/loader/mips/linux.c:503 -#: grub-core/loader/powerpc/ieee1275/linux.c:385 -#: grub-core/loader/riscv/linux.c:52 -#: grub-core/loader/sparc64/ieee1275/linux.c:513 -msgid "Load initrd." -msgstr "Läs in initrd." - -#. TRANSLATORS: DTB stands for device tree blob. -#: grub-core/loader/arm/linux.c:498 grub-core/loader/efi/fdt.c:169 -msgid "Load DTB file." -msgstr "Läs in DTB-fil." - -#: grub-core/loader/arm64/linux.c:59 -msgid "" -"plain image kernel not supported - rebuild with CONFIG_(U)EFI_STUB enabled" -msgstr "vanlig kärnavbild stöds ej - bygg om med CONFIG_(U)EFI_STUB aktiverat" - -#: grub-core/loader/arm64/xen_boot.c:156 -msgid "failed to get FDT" -msgstr "misslyckades med att erhÃ¥lla FDT" - -#: grub-core/loader/arm64/xen_boot.c:418 -msgid "you need to load the Xen Hypervisor first" -msgstr "du mÃ¥ste läsa in Xen Hypervisor först" - -#: grub-core/loader/arm64/xen_boot.c:516 -msgid "Load a xen hypervisor." -msgstr "Läs in en Xen hypervisor." - -#: grub-core/loader/arm64/xen_boot.c:519 -msgid "Load a xen module." -msgstr "Läs in en xen-modul." - -#: grub-core/loader/efi/appleloader.c:231 -msgid "[OPTS]" -msgstr "[FLAGGOR]" - -#. TRANSLATORS: This command is used on EFI to -#. switch to BIOS mode and boot the OS requiring -#. BIOS. -#: grub-core/loader/efi/appleloader.c:235 -msgid "Boot BIOS-based system." -msgstr "Starta upp BIOS-baserat system." - -#: grub-core/loader/efi/chainloader.c:421 -#: grub-core/loader/i386/pc/chainloader.c:303 -msgid "Load another boot loader." -msgstr "Läs in en annan starthanterare." - -#: grub-core/loader/i386/bsd.c:103 -msgid "Display output on all consoles." -msgstr "Visa utskrift pÃ¥ alla konsoler." - -#: grub-core/loader/i386/bsd.c:104 grub-core/loader/i386/bsd.c:138 -#: grub-core/loader/i386/bsd.c:171 -msgid "Use serial console." -msgstr "Använd seriekonsol." - -#: grub-core/loader/i386/bsd.c:105 grub-core/loader/i386/bsd.c:131 -#: grub-core/loader/i386/bsd.c:159 -msgid "Ask for file name to reboot from." -msgstr "FrÃ¥ga efter filnamn att starta upp frÃ¥n." - -#: grub-core/loader/i386/bsd.c:106 -msgid "Use CD-ROM as root." -msgstr "Använd cd-rom som root." - -#: grub-core/loader/i386/bsd.c:107 -msgid "Invoke user configuration routing." -msgstr "Aktivera dirigering av användarkonfiguration." - -#: grub-core/loader/i386/bsd.c:108 grub-core/loader/i386/bsd.c:135 -#: grub-core/loader/i386/bsd.c:162 -msgid "Enter in KDB on boot." -msgstr "Ange i KDB vid uppstart." - -#: grub-core/loader/i386/bsd.c:109 -msgid "Use GDB remote debugger instead of DDB." -msgstr "Använd fjärrfelsökaren GDB istället för DDB." - -#: grub-core/loader/i386/bsd.c:110 -msgid "Disable all boot output." -msgstr "Inaktivera all utskrift under uppstart." - -#: grub-core/loader/i386/bsd.c:112 -msgid "Wait for keypress after every line of output." -msgstr "Vänta pÃ¥ tangenttryckning efter varje utskriftsrad." - -#: grub-core/loader/i386/bsd.c:114 -msgid "Use compiled-in root device." -msgstr "Använd inkompilerad rotenhet." - -#: grub-core/loader/i386/bsd.c:115 grub-core/loader/i386/bsd.c:134 -#: grub-core/loader/i386/bsd.c:165 -msgid "Boot into single mode." -msgstr "Starta upp i enanvändarläge." - -#: grub-core/loader/i386/bsd.c:116 grub-core/loader/i386/bsd.c:166 -msgid "Boot with verbose messages." -msgstr "Starta upp med informativa meddelanden." - -#: grub-core/loader/i386/bsd.c:132 grub-core/loader/i386/bsd.c:160 -msgid "Don't reboot, just halt." -msgstr "Starta inte om, stanna bara." - -#: grub-core/loader/i386/bsd.c:133 grub-core/loader/i386/bsd.c:161 -msgid "Change configured devices." -msgstr "Ändra konfigurerade enheter." - -#. TRANSLATORS: "com" is static and not to be translated. It refers to -#. serial ports e.g. com1. -#. -#: grub-core/loader/i386/bsd.c:142 -msgid "comUNIT[,SPEED]" -msgstr "comENHET[,HASTIGHET]" - -#: grub-core/loader/i386/bsd.c:157 -msgid "Disable SMP." -msgstr "Inaktivera SMP." - -#: grub-core/loader/i386/bsd.c:158 -msgid "Disable ACPI." -msgstr "Inaktivera ACPI." - -#: grub-core/loader/i386/bsd.c:164 -msgid "Don't display boot diagnostic messages." -msgstr "Visa inte startmeddelanden för diagnostik." - -#: grub-core/loader/i386/bsd.c:167 -msgid "Boot with debug messages." -msgstr "Starta med felsökningsmeddelanden." - -#: grub-core/loader/i386/bsd.c:168 -msgid "Suppress normal output (warnings remain)." -msgstr "Undertryck vanlig utmatning (varningar Ã¥terstÃ¥r)." - -#. TRANSLATORS: "com" is static and not to be translated. It refers to -#. serial ports e.g. com1. -#. -#: grub-core/loader/i386/bsd.c:175 -msgid "[ADDR|comUNIT][,SPEED]" -msgstr "[ADR|comENHET][,HASTIGHET]" - -#: grub-core/loader/i386/bsd.c:489 grub-core/loader/i386/bsd.c:555 -msgid "name" -msgstr "namn" - -#: grub-core/loader/i386/bsd.c:489 grub-core/loader/i386/bsd.c:555 -msgid "type" -msgstr "typ" - -#: grub-core/loader/i386/bsd.c:489 grub-core/loader/i386/bsd.c:555 -msgid "addr" -msgstr "adr" - -#: grub-core/loader/i386/bsd.c:490 grub-core/loader/i386/bsd.c:556 -msgid "size" -msgstr "storlek" - -#: grub-core/loader/i386/bsd.c:1147 grub-core/loader/i386/linux.c:466 -#: grub-core/loader/i386/xnu.c:1030 -msgid "Booting in blind mode" -msgstr "Startar i blindläge" - -#: grub-core/loader/i386/bsd.c:2137 -msgid "Load kernel of FreeBSD." -msgstr "Läs in kärna för FreeBSD." - -#: grub-core/loader/i386/bsd.c:2140 -msgid "Load kernel of OpenBSD." -msgstr "Läs in kärna för OpenBSD." - -#: grub-core/loader/i386/bsd.c:2143 -msgid "Load kernel of NetBSD." -msgstr "Läs in kärna för NetBSD." - -#: grub-core/loader/i386/bsd.c:2147 -msgid "Load FreeBSD env." -msgstr "Läs in FreeBSD-miljö." - -#: grub-core/loader/i386/bsd.c:2150 -msgid "Load FreeBSD kernel module." -msgstr "Läs in kärnmodul för FreeBSD." - -#: grub-core/loader/i386/bsd.c:2153 -msgid "Load NetBSD kernel module." -msgstr "Läs in kärnmodul för NetBSD." - -#: grub-core/loader/i386/bsd.c:2156 -msgid "Load NetBSD kernel module (ELF)." -msgstr "Läs in kärnmodul för NetBSD (ELF)." - -#: grub-core/loader/i386/bsd.c:2159 -msgid "Load FreeBSD kernel module (ELF)." -msgstr "Läs in kärnmodul för FreeBSD (ELF)." - -#. TRANSLATORS: ramdisk isn't identifier, -#. it can be translated. -#: grub-core/loader/i386/bsd.c:2165 -msgid "Load kOpenBSD ramdisk." -msgstr "Läs in ramdisk för kOpenBSD." - -#. TRANSLATORS: "payload" is a term used -#. by coreboot and must be translated in -#. sync with coreboot. If unsure, -#. let it untranslated. -#: grub-core/loader/i386/coreboot/chainloader.c:510 -msgid "Load another coreboot payload" -msgstr "Läs in en annan coreboot payload" - -#: grub-core/loader/i386/linux.c:876 -msgid "Legacy `ask' parameter no longer supported." -msgstr "Gamla parametern â€ask†stöds ej längre." - -#: grub-core/loader/i386/linux.c:892 grub-core/loader/i386/linux.c:902 -#: grub-core/loader/i386/linux.c:932 -#, c-format -msgid "%s is deprecated. Use set gfxpayload=%s before linux command instead.\n" -msgstr "" -"%s är förÃ¥ldrat. Använd set gfxpayload=%s före linuxkommandot istället.\n" - -#. TRANSLATORS: "x" has to be entered in, like an identifier, -#. so please don't use better Unicode codepoints. -#: grub-core/loader/i386/linux.c:915 -#, c-format -msgid "" -"%s is deprecated. VGA mode %d isn't recognized. Use set " -"gfxpayload=WIDTHxHEIGHT[xDEPTH] before linux command instead.\n" -msgstr "" -"%s är förÃ¥ldrat. VGA-läget %d känns inte igen. Använd set " -"gfxpayload=BREDDxHÖJD[xDJUP] före linuxkommandot istället.\n" - -#: grub-core/loader/i386/pc/chainloader.c:302 -msgid "[--force|--bpb] FILE" -msgstr "[--force|--bpb] FIL" - -#: grub-core/loader/i386/pc/freedos.c:148 util/setup.c:293 -#, c-format -msgid "the size of `%s' is too large" -msgstr "storleken pÃ¥ â€%s†är för stor" - -#: grub-core/loader/i386/pc/freedos.c:183 -msgid "Load FreeDOS kernel.sys." -msgstr "Läs in kernel.sys för FreeDOS." - -#: grub-core/loader/i386/pc/ntldr.c:155 -msgid "Load NTLDR or BootMGR." -msgstr "Läs in NTLDR eller BootMGR." - -#. TRANSLATORS: it's about guessing which GRUB disk -#. is which Plan9 disk. If your language has no -#. word "mapping" you can use another word which -#. means that the GRUBDEVICE and PLAN9DEVICE are -#. actually the same device, just named differently -#. in OS and GRUB. -#: grub-core/loader/i386/pc/plan9.c:59 -msgid "Override guessed mapping of Plan9 devices." -msgstr "Ã…sidosätt gissad mappning av Plan9-enheter." - -#: grub-core/loader/i386/pc/plan9.c:60 -msgid "GRUBDEVICE=PLAN9DEVICE" -msgstr "GRUBENHET=PLAN9ENHET" - -#: grub-core/loader/i386/pc/plan9.c:599 -msgid "KERNEL ARGS" -msgstr "KÄRNA ARG" - -#: grub-core/loader/i386/pc/plan9.c:599 -msgid "Load Plan9 kernel." -msgstr "Läs in kärna för Plan9." - -#: grub-core/loader/i386/pc/pxechainloader.c:161 -msgid "Load a PXE image." -msgstr "Läs in en PXE-avbildning." - -#: grub-core/loader/i386/pc/truecrypt.c:226 -msgid "Load Truecrypt ISO." -msgstr "Läs in Truecrypt-ISO." - -#: grub-core/loader/i386/xen.c:781 grub-core/loader/i386/xen.c:865 -msgid "initrd already loaded" -msgstr "initrd redan inläst" - -#: grub-core/loader/i386/xen.c:968 -msgid "Load module." -msgstr "Läs in modul." - -#: grub-core/loader/i386/xnu.c:1003 -msgid "Press any key to launch xnu" -msgstr "Tryck pÃ¥ en tangent för att starta xnu" - -#. TRANSLATORS: `device-properties' -#. is a variable name, -#. not a program. -#: grub-core/loader/i386/xnu.c:1159 -msgid "Load `device-properties' dump." -msgstr "Läs in â€device-propertiesâ€-dump." - -#: grub-core/loader/ia64/efi/linux.c:124 -msgid "Could not locate FPSWA driver" -msgstr "Kunde inte hitta FPSWA-drivrutin" - -#: grub-core/loader/ia64/efi/linux.c:132 -msgid "FPSWA protocol wasn't able to find the interface" -msgstr "FPSWA-protokollet kunde inte hitta gränssnittet" - -#: grub-core/loader/ia64/efi/linux.c:580 -msgid "No FPSWA found" -msgstr "Ingen FPSWA hittades" - -#: grub-core/loader/ia64/efi/linux.c:582 -#, c-format -msgid "FPSWA revision: %x\n" -msgstr "FPSWA-revision: %x\n" - -#: grub-core/loader/ia64/efi/linux.c:591 -msgid "FILE [ARGS...]" -msgstr "FIL [ARG…]" - -#: grub-core/loader/ia64/efi/linux.c:597 -msgid "Display FPSWA version." -msgstr "Visa FPSWA-version." - -#: grub-core/loader/multiboot.c:248 -msgid "WARNING: no console will be available to OS" -msgstr "VARNING: ingen konsol kommer att vara tillgänglig för OS" - -#: grub-core/loader/multiboot.c:450 -msgid "Load a multiboot 2 kernel." -msgstr "Läs in en kärna för flervalsstart 2." - -#: grub-core/loader/multiboot.c:453 -msgid "Load a multiboot 2 module." -msgstr "Läs in en multiboot 2-modul." - -#: grub-core/loader/multiboot.c:456 -msgid "Load a multiboot kernel." -msgstr "Läs in en kärna för flervalsstart." - -#: grub-core/loader/multiboot.c:459 -msgid "Load a multiboot module." -msgstr "Läs in en modul för flervalsstart." - -#: grub-core/loader/riscv/linux.c:30 grub-core/loader/riscv/linux.c:40 -msgid "Linux not supported yet" -msgstr "Linux stöds ej ännu" - -#: grub-core/loader/xnu.c:1416 grub-core/term/gfxterm_background.c:45 -msgid "Background image mode." -msgstr "Läge för bakgrundsbild." - -#. TRANSLATORS: This refers to background image mode (stretched or -#. in left-top corner). Note that GRUB will accept only original -#. keywords stretch and normal, not the translated ones. -#. So please put both in translation -#. e.g. stretch(=%STRETCH%)|normal(=%NORMAL%). -#. The percents mark the translated version. Since many people -#. may not know the word stretch or normal I recommend -#. putting the translation either here or in "Background image mode." -#. string. -#: grub-core/loader/xnu.c:1416 grub-core/term/gfxterm_background.c:55 -msgid "stretch|normal" -msgstr "stretch|normal" - -#: grub-core/loader/xnu.c:1482 -msgid "Load XNU image." -msgstr "Läs in XNU-avbildning." - -#: grub-core/loader/xnu.c:1484 -msgid "Load 64-bit XNU image." -msgstr "Läs in 64-bitars XNU-avbildning." - -#: grub-core/loader/xnu.c:1486 -msgid "Load XNU extension package." -msgstr "Läs in XNU-tilläggspaket." - -#: grub-core/loader/xnu.c:1488 -msgid "Load XNU extension." -msgstr "Läs in XNU-utökning." - -#. TRANSLATORS: OSBundleRequired is a -#. variable name in xnu extensions -#. manifests. It behaves mostly like -#. GNU/Linux runlevels. -#. -#: grub-core/loader/xnu.c:1495 -msgid "DIRECTORY [OSBundleRequired]" -msgstr "KATALOG [OSBundleRequired]" - -#. TRANSLATORS: There are many extensions -#. in extension directory. -#: grub-core/loader/xnu.c:1498 -msgid "Load XNU extension directory." -msgstr "Läs in XNU-tilläggskatalog." - -#. TRANSLATORS: ramdisk here isn't identifier. It can be translated. -#: grub-core/loader/xnu.c:1501 -msgid "Load XNU ramdisk. It will be available in OS as md0." -msgstr "Läs in XNU-ramdisk. Den kommer att vara tillgänglig i OS som md0." - -#: grub-core/loader/xnu.c:1505 -msgid "Load a splash image for XNU." -msgstr "Läs in en startbild för XNU." - -#: grub-core/loader/xnu.c:1510 -msgid "Load an image of hibernated XNU." -msgstr "Läs in en avbild av XNU i viloläge." - -#: grub-core/mmap/mmap.c:538 -msgid "ADDR1,MASK1[,ADDR2,MASK2[,...]]" -msgstr "ADDR1,MASK1[,ADDR2,MASK2[,…]]" - -#: grub-core/mmap/mmap.c:539 -msgid "Declare memory regions as faulty (badram)." -msgstr "Märk minnesregioner som felaktiga (badram)." - -#: grub-core/mmap/mmap.c:541 -msgid "FROM[K|M|G] TO[K|M|G]" -msgstr "FRÃ…N[K|M|G] TILL[K|M|G]" - -#: grub-core/mmap/mmap.c:542 -msgid "Remove any memory regions in specified range." -msgstr "Ta bort minnesregioner i angivet intervall." - -#: grub-core/net/bootp.c:653 -msgid "four arguments expected" -msgstr "fyra argument förväntades" - -#: grub-core/net/bootp.c:661 grub-core/net/net.c:1155 -#, c-format -msgid "unrecognised network interface `%s'" -msgstr "okänt nätverksgränssnitt â€%sâ€" - -#: grub-core/net/bootp.c:664 -msgid "no DHCP info found" -msgstr "ingen info för DHCP hittades" - -#: grub-core/net/bootp.c:674 -msgid "no DHCP options found" -msgstr "inga DHCP-flaggor hittades" - -#: grub-core/net/bootp.c:682 -msgid "invalid DHCP option code" -msgstr "ogiltig DHCP-flagg-kod" - -#: grub-core/net/bootp.c:686 -#, c-format -msgid "no DHCP option %u found" -msgstr "ingen DHCP-flagga %u hittades" - -#: grub-core/net/bootp.c:743 -#, c-format -msgid "unrecognised DHCP option format specification `%s'" -msgstr "okänd formatspecifikation för DHCP-flaggan â€%sâ€" - -#: grub-core/net/bootp.c:767 -msgid "no network card found" -msgstr "inga nätverkskort hittades" - -#: grub-core/net/bootp.c:859 grub-core/net/net.c:389 -#, c-format -msgid "couldn't autoconfigure %s" -msgstr "kunde inte autokonfigurera %s" - -#: grub-core/net/bootp.c:873 grub-core/net/bootp.c:876 -msgid "[CARD]" -msgstr "[CARD]" - -#: grub-core/net/bootp.c:874 -msgid "perform a bootp autoconfiguration" -msgstr "genomför en bootp autokonfiguration" - -#: grub-core/net/bootp.c:877 -msgid "perform a DHCP autoconfiguration" -msgstr "genomför en DHCP-autokonfiguration" - -#: grub-core/net/bootp.c:879 -msgid "VAR INTERFACE NUMBER DESCRIPTION" -msgstr "VAR GRÄNSSNITT NUMMER BESKRIVNING" - -#: grub-core/net/bootp.c:880 -msgid "" -"retrieve DHCP option and save it into VAR. If VAR is - then print the value." -msgstr "hämta DHCP-flagga och spara den i VAR. Om VAR är - skriv dÃ¥ ut värdet." - -#: grub-core/net/dns.c:459 -msgid "no DNS servers configured" -msgstr "inga DNS-servrar konfigurerade" - -#: grub-core/net/dns.c:522 -msgid "domain name component is too long" -msgstr "domännamnskomponent är för lÃ¥ng" - -#: grub-core/net/dns.c:618 grub-core/net/dns.c:666 -msgid "no DNS record found" -msgstr "ingen DNS-post funnen" - -#: grub-core/net/dns.c:626 -msgid "no DNS reply received" -msgstr "inget DNS-svar mottaget" - -#: grub-core/net/dns.c:682 -msgid "only ipv4" -msgstr "endast ipv4" - -#: grub-core/net/dns.c:686 -msgid "only ipv6" -msgstr "endast ipv6" - -#: grub-core/net/dns.c:690 -msgid "prefer ipv4" -msgstr "föredra ipv4" - -#: grub-core/net/dns.c:694 -msgid "prefer ipv6" -msgstr "föredra ipv6" - -#: grub-core/net/dns.c:759 -msgid "ADDRESS DNSSERVER" -msgstr "ADRESS DNSSERVER" - -#: grub-core/net/dns.c:760 -msgid "Perform a DNS lookup" -msgstr "Genomför ett DNS-uppslag" - -#: grub-core/net/dns.c:762 grub-core/net/dns.c:765 -msgid "DNSSERVER" -msgstr "DNSSERVER" - -#: grub-core/net/dns.c:763 -msgid "Add a DNS server" -msgstr "Lägg till en DNS-server" - -#: grub-core/net/dns.c:766 -msgid "Remove a DNS server" -msgstr "Ta bort en DNS-server" - -#: grub-core/net/dns.c:768 -msgid "List DNS servers" -msgstr "Lista DNS-servrar" - -#: grub-core/net/drivers/efi/efinet.c:49 grub-core/net/drivers/efi/efinet.c:65 -#: grub-core/net/drivers/efi/efinet.c:77 grub-core/net/drivers/emu/emunet.c:62 -#: grub-core/net/drivers/i386/pc/pxe.c:273 -#: grub-core/net/drivers/ieee1275/ofnet.c:75 -#: grub-core/net/drivers/uboot/ubootnet.c:62 -msgid "couldn't send network packet" -msgstr "kunde inte skicka nätverkspaket" - -#: grub-core/net/drivers/ieee1275/ofnet.c:326 -#: grub-core/net/drivers/ieee1275/ofnet.c:359 -msgid "interpret is not supported" -msgstr "interpret stöds ej" - -#: grub-core/net/drivers/ieee1275/ofnet.c:336 -msgid "alloc-mem failed" -msgstr "Misslyckades med alloc-mem" - -#: grub-core/net/drivers/ieee1275/ofnet.c:370 -msgid "free-mem failed" -msgstr "Misslyckades med free-mem" - -#: grub-core/net/http.c:105 -msgid "unsupported HTTP response" -msgstr "HTTP-svaret stöds ej" - -#. TRANSLATORS: GRUB HTTP code is pretty young. So even perfectly -#. valid answers like 403 will trigger this very generic message. -#: grub-core/net/http.c:126 -#, c-format -msgid "unsupported HTTP error %d: %s" -msgstr "HTTP-felet %d: %s stöds ej" - -#: grub-core/net/http.c:429 grub-core/net/tftp.c:420 -#, c-format -msgid "time out opening `%s'" -msgstr "tidsgränsen överskreds vid öppning av â€%sâ€" - -#: grub-core/net/net.c:179 -msgid "timeout: could not resolve hardware address" -msgstr "överskriden tidsgräns: kunde inte lösa hÃ¥rdvaruadress" - -#: grub-core/net/net.c:548 -#, c-format -msgid "unresolvable address %s" -msgstr "olösbar adress %s" - -#: grub-core/net/net.c:594 -#, c-format -msgid "unrecognised network address `%s'" -msgstr "okänd nätverksadress â€%sâ€" - -#: grub-core/net/net.c:661 -msgid "destination unreachable" -msgstr "destination onÃ¥bar" - -#. TRANSLATORS: route loop is a condition when e.g. -#. to contact server A you need to go through B -#. and to contact B you need to go through A. -#: grub-core/net/net.c:684 -msgid "route loop detected" -msgstr "ruttloop upptäckt" - -#: grub-core/net/net.c:700 -msgid "address not found" -msgstr "adressen hittades inte" - -#: grub-core/net/net.c:704 -msgid "you can't delete this address" -msgstr "du kan inte ta bort denna adress" - -#: grub-core/net/net.c:776 grub-core/net/net.c:792 -#, c-format -msgid "Unsupported hw address type %d\n" -msgstr "HÃ¥rdvaruadressen %d stöds ej\n" - -#: grub-core/net/net.c:813 -#, c-format -msgid "Unsupported address type %d\n" -msgstr "Adresstypen %d stöds ej\n" - -#: grub-core/net/net.c:1017 grub-core/net/net.c:1131 -msgid "three arguments expected" -msgstr "tre argument förväntades" - -#: grub-core/net/net.c:1023 -msgid "card not found" -msgstr "kort inte funnet" - -#. TRANSLATORS: it refers to the network address. -#: grub-core/net/net.c:1167 -msgid "temporary" -msgstr "temporär" - -#: grub-core/net/net.c:1190 -#, c-format -msgid "Unknown address type %d\n" -msgstr "Okänd adresstyp %d\n" - -#: grub-core/net/net.c:1298 -msgid "no server is specified" -msgstr "ingen server har angivits" - -#: grub-core/net/net.c:1637 -#, c-format -msgid "timeout reading `%s'" -msgstr "överskriden tidsgräns â€%sâ€" - -#. TRANSLATORS: HWADDRESS stands for -#. "hardware address". -#: grub-core/net/net.c:1762 -msgid "SHORTNAME CARD ADDRESS [HWADDRESS]" -msgstr "KORTNAMN KORT ADRESS [HVADRESS]" - -#: grub-core/net/net.c:1763 -msgid "Add a network address." -msgstr "Lägg till en nätverksadress." - -#: grub-core/net/net.c:1766 -msgid "[CARD [HWADDRESS]]" -msgstr "[KORT [HVADRESS]]" - -#: grub-core/net/net.c:1767 -msgid "Perform an IPV6 autoconfiguration" -msgstr "Genomför en IPV6 autokonfiguration" - -#: grub-core/net/net.c:1770 grub-core/net/net.c:1777 -msgid "SHORTNAME" -msgstr "KORTNAMN" - -#: grub-core/net/net.c:1771 -msgid "Delete a network address." -msgstr "Ta bort en nätverksadress." - -#. TRANSLATORS: "gw" is a keyword. -#: grub-core/net/net.c:1774 -msgid "SHORTNAME NET [INTERFACE| gw GATEWAY]" -msgstr "KORTNAMN NÄT [GRÄNSSNITT| gw GATEWAY]" - -#: grub-core/net/net.c:1775 -msgid "Add a network route." -msgstr "Lägg till en nätverksrutt." - -#: grub-core/net/net.c:1778 -msgid "Delete a network route." -msgstr "Ta bort en nätverksrutt." - -#: grub-core/net/net.c:1780 -msgid "list network routes" -msgstr "lista nätverksrutter" - -#: grub-core/net/net.c:1782 -msgid "list network cards" -msgstr "lista nätverkskort" - -#: grub-core/net/net.c:1784 -msgid "list network addresses" -msgstr "lista nätverksadresser" - -#: grub-core/net/tcp.c:681 -msgid "connection refused" -msgstr "anslutningen nekades" - -#: grub-core/net/tcp.c:684 -msgid "connection timeout" -msgstr "överskriden tidsgräns för anslutning" - -#: grub-core/normal/auth.c:220 -msgid "Enter username: " -msgstr "Ange användarnamn: " - -#: grub-core/normal/auth.c:269 -msgid "[USERLIST]" -msgstr "[ANVÄNDARLISTA]" - -#: grub-core/normal/auth.c:270 -msgid "Check whether user is in USERLIST." -msgstr "Kontrollera huruvida användaren finns i ANVÄNDARLISTA." - -#: grub-core/normal/cmdline.c:174 grub-core/normal/menu_entry.c:1068 -msgid "Possible commands are:" -msgstr "Möjliga kommandon är:" - -#: grub-core/normal/cmdline.c:177 grub-core/normal/menu_entry.c:1072 -msgid "Possible devices are:" -msgstr "Möjliga enheter är:" - -#: grub-core/normal/cmdline.c:180 grub-core/normal/menu_entry.c:1076 -msgid "Possible files are:" -msgstr "Möjliga filer är:" - -#: grub-core/normal/cmdline.c:183 grub-core/normal/menu_entry.c:1080 -msgid "Possible partitions are:" -msgstr "Möjliga partitioner är:" - -#: grub-core/normal/cmdline.c:186 grub-core/normal/menu_entry.c:1084 -msgid "Possible arguments are:" -msgstr "Möjliga argument är:" - -#. TRANSLATORS: this message is used if none of above matches. -#. This shouldn't happen but please use the general term for -#. "thing" or "object". -#: grub-core/normal/cmdline.c:192 grub-core/normal/menu_entry.c:1088 -msgid "Possible things are:" -msgstr "Möjliga saker är:" - -#: grub-core/normal/color.c:81 -#, c-format -msgid "Warning: syntax error (missing slash) in `%s'\n" -msgstr "Varning: syntaxfel (saknar snedstreck) i â€%sâ€\n" - -#: grub-core/normal/color.c:90 -#, c-format -msgid "Warning: invalid foreground color `%s'\n" -msgstr "Varning: ogiltig förgrundsfärg â€%sâ€\n" - -#: grub-core/normal/color.c:96 -#, c-format -msgid "Warning: invalid background color `%s'\n" -msgstr "Varning: ogiltig bakgrundsfärg â€%sâ€\n" - -#: grub-core/normal/context.c:206 -msgid "ENVVAR [ENVVAR] ..." -msgstr "ENVVAR [ENVVAR] …" - -#: grub-core/normal/context.c:207 -msgid "Export variables." -msgstr "Exportera variabler." - -#: grub-core/normal/datetime.c:25 -msgid "Sunday" -msgstr "Söndag" - -#: grub-core/normal/datetime.c:26 -msgid "Monday" -msgstr "MÃ¥ndag" - -#: grub-core/normal/datetime.c:27 -msgid "Tuesday" -msgstr "Tisdag" - -#: grub-core/normal/datetime.c:28 -msgid "Wednesday" -msgstr "Onsdag" - -#: grub-core/normal/datetime.c:29 -msgid "Thursday" -msgstr "Torsdag" - -#: grub-core/normal/datetime.c:30 -msgid "Friday" -msgstr "Fredag" - -#: grub-core/normal/datetime.c:31 -msgid "Saturday" -msgstr "Lördag" - -#: grub-core/normal/dyncmd.c:187 -msgid "module isn't loaded" -msgstr "modulen är inte inläst" - -#: grub-core/normal/main.c:211 -#, c-format -msgid "GNU GRUB version %s" -msgstr "GNU GRUB version %s" - -#: grub-core/normal/main.c:360 -msgid "ESC at any time exits." -msgstr "ESC avslutar när som helst." - -#: grub-core/normal/main.c:363 -#, c-format -msgid "" -"Minimal BASH-like line editing is supported. For the first word, TAB lists " -"possible command completions. Anywhere else TAB lists possible device or " -"file completions. %s" -msgstr "" -"Minimal Bash-liknande radredigering stöds. För det första ordet kan " -"tabulator-tangenten användas för att visa kompletteringsalternativ. I övriga " -"fall visar tabulator-tangenten möjliga enheter eller filnamn för " -"komplettering. %s" - -#. TRANSLATORS: it's command line prompt. -#: grub-core/normal/main.c:395 -msgid ">" -msgstr ">" - -#. TRANSLATORS: it's command line prompt. -#: grub-core/normal/main.c:398 -msgid "grub>" -msgstr "grub>" - -#: grub-core/normal/main.c:518 -msgid "Clear the screen." -msgstr "Töm skärmen." - -#: grub-core/normal/main.c:527 -msgid "Enter normal mode." -msgstr "GÃ¥ in i normalt läge." - -#: grub-core/normal/main.c:529 -msgid "Exit from normal mode." -msgstr "Avsluta frÃ¥n normalt läge." - -#: grub-core/normal/menu.c:66 grub-core/normal/menu_entry.c:1449 -msgid "Press any key to continue..." -msgstr "Tryck pÃ¥ en tangent för att fortsätta…" - -#: grub-core/normal/menu.c:815 -#, c-format -msgid "Booting `%s'" -msgstr "Startar upp â€%sâ€" - -#: grub-core/normal/menu.c:827 -#, c-format -msgid "Falling back to `%s'" -msgstr "Faller tillbaka pÃ¥ â€%sâ€" - -#: grub-core/normal/menu.c:843 -msgid "Failed to boot both default and fallback entries.\n" -msgstr "Misslyckades med att starta bÃ¥de standard- och reservvalen.\n" - -#: grub-core/normal/menu_entry.c:1171 -msgid "Booting a command list" -msgstr "Starta en kommandolista" - -#: grub-core/normal/menu_text.c:160 -msgid "" -"Minimum Emacs-like screen editing is supported. TAB lists completions. Press " -"Ctrl-x or F10 to boot, Ctrl-c or F2 for a command-line or ESC to discard " -"edits and return to the GRUB menu." -msgstr "" -"Minimal Emacs-liknande skärmredigering stöds. Tabulator-tangenten används " -"för att visa kompletteringsalternativ. Ange Ctrl-x eller F10 för att starta, " -"Ctrl-c eller F2 för kommandorad eller ESC för att kasta ändringar och Ã¥tergÃ¥ " -"till GRUB-menyn." - -#: grub-core/normal/menu_text.c:170 -#, c-format -msgid "Use the %C and %C keys to select which entry is highlighted." -msgstr "" -"Använd tangenterna %C och %C för att välja vilken post som är markerad." - -#. TRANSLATORS: that's the list of binary unit prefixes. -#: grub-core/normal/misc.c:38 -msgid "B" -msgstr "B" - -#: grub-core/normal/misc.c:38 -msgid "KiB" -msgstr "KiB" - -#: grub-core/normal/misc.c:38 -msgid "MiB" -msgstr "MiB" - -#: grub-core/normal/misc.c:38 -msgid "GiB" -msgstr "GiB" - -#: grub-core/normal/misc.c:38 -msgid "TiB" -msgstr "TiB" - -#: grub-core/normal/misc.c:38 -msgid "PiB" -msgstr "PiB" - -#. TRANSLATORS: that's the list of binary unit prefixes. -#: grub-core/normal/misc.c:40 -msgid "K" -msgstr "K" - -#: grub-core/normal/misc.c:40 -msgid "M" -msgstr "M" - -#: grub-core/normal/misc.c:40 -msgid "G" -msgstr "G" - -#: grub-core/normal/misc.c:40 -msgid "T" -msgstr "T" - -#: grub-core/normal/misc.c:40 -msgid "P" -msgstr "P" - -#. TRANSLATORS: that's the list of binary unit prefixes. -#: grub-core/normal/misc.c:42 -msgid "B/s" -msgstr "B/s" - -#: grub-core/normal/misc.c:42 -msgid "KiB/s" -msgstr "KiB/s" - -#: grub-core/normal/misc.c:42 -msgid "MiB/s" -msgstr "MiB/s" - -#: grub-core/normal/misc.c:42 -msgid "GiB/s" -msgstr "GiB/s" - -#: grub-core/normal/misc.c:42 -msgid "TiB/s" -msgstr "TiB/s" - -#: grub-core/normal/misc.c:42 -msgid "PiB/s" -msgstr "PiB/s" - -#: grub-core/normal/misc.c:96 -#, c-format -msgid "Partition %s:" -msgstr "Partition %s:" - -#: grub-core/normal/misc.c:101 -#, c-format -msgid "Device %s:" -msgstr "Enhet %s:" - -#: grub-core/normal/misc.c:107 -msgid "Filesystem cannot be accessed" -msgstr "Filsystemet gÃ¥r inte att komma Ã¥t" - -#: grub-core/normal/misc.c:121 -#, c-format -msgid "Filesystem type %s" -msgstr "Filsystemstyp %s" - -#: grub-core/normal/misc.c:131 -#, c-format -msgid "- Label `%s'" -msgstr "- Etikett â€%sâ€" - -#. TRANSLATORS: Arguments are year, month, day, hour, minute, -#. second, day of the week (translated). -#: grub-core/normal/misc.c:148 -#, c-format -msgid "- Last modification time %d-%02d-%02d %02d:%02d:%02d %s" -msgstr "- Senaste ändringsdatum %d-%02d-%02d %02d.%02d.%02d %s" - -#: grub-core/normal/misc.c:171 -msgid "No known filesystem detected" -msgstr "Inget känt filsystem hittades" - -#: grub-core/normal/misc.c:174 -#, c-format -msgid " - Partition start at %llu%sKiB" -msgstr " - Partition börjar vid %llu%sKiB" - -#: grub-core/normal/misc.c:178 -#, c-format -msgid " - Sector size %uB" -msgstr " - Sektorstorlek %uB" - -#: grub-core/normal/misc.c:180 -msgid " - Total size unknown" -msgstr " - Total storlek är okänd" - -#: grub-core/normal/misc.c:182 -#, c-format -msgid " - Total size %llu%sKiB" -msgstr " - Total storlek %llu%sKiB" - -#. TRANSLATORS: Replace dot with appropriate decimal separator for -#. your language. -#: grub-core/normal/misc.c:186 -msgid ".5" -msgstr ",5" - -#. TRANSLATORS: This has to fit on one line. It's ok to include few -#. words but don't write poems. -#: grub-core/normal/term.c:82 -msgid "--MORE--" -msgstr "--MER--" - -#: grub-core/osdep/aros/config.c:92 grub-core/osdep/unix/config.c:137 -#: grub-core/osdep/windows/config.c:55 -#, c-format -msgid "cannot open configuration file `%s': %s" -msgstr "kan inte öppna konfigurationsfilen â€%sâ€: %s" - -#: grub-core/osdep/basic/compress.c:8 grub-core/osdep/basic/compress.c:14 -#: grub-core/osdep/basic/compress.c:20 -msgid "no compression is available for your platform" -msgstr "ingen komprimering är tillgänglig för din plattform" - -#: grub-core/osdep/basic/no_platform.c:30 -#: grub-core/osdep/windows/platform.c:418 -msgid "no IEEE1275 routines are available for your platform" -msgstr "inga IEEE1275-rutiner är tillgängliga för din plattform" - -#: grub-core/osdep/basic/no_platform.c:38 -msgid "no EFI routines are available for your platform" -msgstr "inga EFI-rutiner är tillgängliga för din plattform" - -#: grub-core/osdep/basic/no_platform.c:45 -#: grub-core/osdep/windows/platform.c:425 -msgid "no SGI routines are available for your platform" -msgstr "inga SGI-rutiner är tillgängliga för din plattform" - -#. TRANSLATORS: The OS itself may very well have a random -#. number generator but GRUB doesn't know how to access it. -#: grub-core/osdep/basic/random.c:42 -msgid "no random number generator is available for your OS" -msgstr "ingen slumptalsgenerator är tillgänglig för ditt OS" - -#: grub-core/osdep/devmapper/getroot.c:81 -msgid "Failed to create `device-mapper' tree" -msgstr "Misslyckades med att skapa â€device-mapperâ€-träd" - -#: grub-core/osdep/devmapper/getroot.c:197 -#: grub-core/osdep/freebsd/getroot.c:202 -#, c-format -msgid "can't mount encrypted volume `%s': %s" -msgstr "kan inte montera krypterade volymen â€%sâ€: %s" - -#. TRANSLATORS: geom is the name of (k)FreeBSD device framework. -#. Usually left untranslated. -#. -#: grub-core/osdep/freebsd/getroot.c:82 grub-core/osdep/freebsd/getroot.c:164 -#: grub-core/osdep/freebsd/getroot.c:258 grub-core/osdep/freebsd/getroot.c:316 -msgid "couldn't open geom" -msgstr "kan inte öppna geom" - -#: grub-core/osdep/freebsd/getroot.c:182 grub-core/osdep/freebsd/getroot.c:277 -msgid "couldn't find geli consumer" -msgstr "kunde inte hitta geli consumer" - -#: grub-core/osdep/freebsd/getroot.c:282 -msgid "couldn't retrieve geli UUID" -msgstr "kunde inte hämta geli-UUID" - -#. TRANSLATORS: geom is the name of (k)FreeBSD device framework. -#. Usually left untranslated. "part" is the identifier of one of its -#. classes. -#: grub-core/osdep/freebsd/getroot.c:325 -msgid "couldn't find geom `part' class" -msgstr "kunde inte hitta geomklassen â€partâ€" - -#: grub-core/osdep/freebsd/hostdisk.c:72 grub-core/osdep/linux/hostdisk.c:93 -msgid "unaligned device size" -msgstr "ojusterad enhetsstorlek" - -#: grub-core/osdep/generic/blocklist.c:56 -#, c-format -msgid "attempting to read the core image `%s' from GRUB" -msgstr "försöker läsa kärnavbildningen â€%s†frÃ¥n GRUB" - -#: grub-core/osdep/generic/blocklist.c:57 -#, c-format -msgid "attempting to read the core image `%s' from GRUB again" -msgstr "försöker läsa kärnavbildningen â€%s†frÃ¥n GRUB igen" - -#: grub-core/osdep/generic/blocklist.c:115 -#, c-format -msgid "cannot read `%s' correctly" -msgstr "kan inte läsa â€%s†korrekt" - -#: grub-core/osdep/generic/blocklist.c:126 -msgid "failed to read the sectors of the core image" -msgstr "misslyckades med att läsa sektorerna i kärnavbildningen" - -#. TRANSLATORS: On GNU/Hurd, a "translator" is similar to a filesystem -#. mount, but handled by a userland daemon, whose invocation command line -#. is being fetched here. First %s is the file being looked at (for which -#. we are fetching the "translator" command line), second %s is the error -#. message. -#. -#: grub-core/osdep/hurd/getroot.c:79 -#, c-format -msgid "cannot get translator command line for path `%s': %s" -msgstr "kan inte hämta översättningskommandoraden för sökvägen â€%sâ€: %s" - -#: grub-core/osdep/hurd/getroot.c:82 -#, c-format -msgid "translator command line is empty for path `%s'" -msgstr "översättningskommandoraden är tom för sökvägen â€%sâ€" - -#. TRANSLATORS: we expect to get something like -#. /hurd/foobar --option1 --option2=baz /dev/something -#. -#: grub-core/osdep/hurd/getroot.c:98 -#, c-format -msgid "" -"translator `%s' for path `%s' has several non-option words, at least `%s' " -"and `%s'" -msgstr "" -"översättaren â€%s†för sökvägen â€%s†har flera ej valfria ord, Ã¥tminstone " -"â€%s†och â€%sâ€" - -#. TRANSLATORS: we expect to get something like -#. /hurd/foobar --option1 --option2=baz /dev/something -#. -#: grub-core/osdep/hurd/getroot.c:109 -#, c-format -msgid "" -"translator `%s' for path `%s' is given only options, cannot find device part" -msgstr "" -"översättaren â€%s†för sökvägen â€%s†har bara fÃ¥tt flaggor, kan inte hitta " -"enhetsdelen" - -#: grub-core/osdep/hurd/hostdisk.c:73 -#, c-format -msgid "Storage information for `%s' does not include type" -msgstr "Lagringsinformation för â€%s†inkluderar inte typ" - -#: grub-core/osdep/hurd/hostdisk.c:75 -#, c-format -msgid "`%s' is not a local disk" -msgstr "â€%s†är inte en lokal disk" - -#: grub-core/osdep/hurd/hostdisk.c:78 -#, c-format -msgid "" -"Storage information for `%s' indicates neither a plain partition nor a plain " -"disk" -msgstr "" -"Lagringsinformationen för â€%s†indikerar varken en vanlig partition eller en " -"vanlig disk" - -#: grub-core/osdep/linux/blocklist.c:81 grub-core/osdep/linux/blocklist.c:96 -#: grub-core/osdep/linux/blocklist.c:122 -#, c-format -msgid "can't retrieve blocklists: %s" -msgstr "kan inte hämta blocklistor: %s" - -#: grub-core/osdep/linux/blocklist.c:84 -msgid "blocksize is not divisible by 512" -msgstr "blockstorlek är inte delbart med 512" - -#: grub-core/osdep/linux/blocklist.c:86 -msgid "invalid zero blocksize" -msgstr "ogiltig tom blockstorlek" - -#: grub-core/osdep/linux/blocklist.c:90 util/setup.c:744 -msgid "can't retrieve blocklists" -msgstr "kan inte hämta blocklistor" - -#: grub-core/osdep/linux/getroot.c:154 -#, c-format -msgid "ioctl RAID_VERSION error: %s" -msgstr "ioctl RAID_VERSION fel: %s" - -#: grub-core/osdep/linux/getroot.c:160 grub-core/osdep/linux/getroot.c:164 -#, c-format -msgid "unsupported RAID version: %d.%d" -msgstr "RAID version: %d.%d stöds ej" - -#: grub-core/osdep/linux/getroot.c:169 -#, c-format -msgid "ioctl GET_ARRAY_INFO error: %s" -msgstr "ioctl GET_ARRAY_INFO fel: %s" - -#: grub-core/osdep/linux/getroot.c:178 -#, c-format -msgid "ioctl GET_DISK_INFO error: %s" -msgstr "ioctl GET_DISK_INFO fel: %s" - -#: grub-core/osdep/linux/getroot.c:608 grub-core/osdep/linux/getroot.c:678 -#: grub-core/osdep/linux/hostdisk.c:126 grub-core/osdep/unix/getroot.c:253 -#: grub-core/osdep/unix/getroot.c:642 grub-core/osdep/unix/platform.c:92 -#: grub-core/osdep/unix/platform.c:100 -#, c-format -msgid "Unable to open stream from %s: %s" -msgstr "Kunde inte öppna ström frÃ¥n %s: %s" - -#: grub-core/osdep/linux/getroot.c:1033 -#, c-format -msgid "unknown kind of RAID device `%s'" -msgstr "okänd typ av RAID-enhet â€%sâ€" - -#: grub-core/osdep/linux/ofpath.c:181 -#, c-format -msgid "`obppath' not found in parent dirs of `%s', no IEEE1275 name discovery" -msgstr "" -"â€obppath†hittades inte föräldrakatalogerna för â€%sâ€, ingen IEEE1275-" -"namnidentifiering" - -#: grub-core/osdep/linux/ofpath.c:222 grub-core/osdep/unix/getroot.c:505 -#: grub-core/osdep/unix/getroot.c:529 grub-core/osdep/unix/relpath.c:49 -#: util/grub-install.c:984 util/grub-install.c:1331 util/grub-probe.c:323 -#, c-format -msgid "failed to get canonical path of `%s'" -msgstr "misslyckades med att hämta kanonisk sökväg för â€%sâ€" - -#: grub-core/osdep/linux/ofpath.c:740 -#, c-format -msgid "unknown device type %s" -msgstr "okänd enhetstyp %s" - -#: grub-core/osdep/linux/ofpath.c:758 util/ieee1275/grub-ofpathname.c:39 -#, c-format -msgid "Usage: %s DEVICE\n" -msgstr "Användning: %s ENHET\n" - -#: grub-core/osdep/unix/exec.c:86 grub-core/osdep/unix/exec.c:172 -#: grub-core/osdep/unix/exec.c:217 -#, c-format -msgid "Unable to fork: %s" -msgstr "Kunde inte förgrena process: %s" - -#: grub-core/osdep/unix/exec.c:166 grub-core/osdep/unix/exec.c:211 -#, c-format -msgid "Unable to create pipe: %s" -msgstr "Kunde inte skapa rör: %s" - -#: grub-core/osdep/unix/getroot.c:370 -msgid "cannot save the original directory" -msgstr "det gÃ¥r inte att spara originalkatalogen" - -#: grub-core/osdep/unix/getroot.c:423 grub-core/osdep/unix/getroot.c:480 -#: grub-core/osdep/unix/getroot.c:489 -msgid "cannot restore the original directory" -msgstr "kan inte Ã¥terställa originalkatalogen" - -#. TRANSLATORS: "stat" comes from the name of POSIX function. -#: grub-core/osdep/unix/getroot.c:551 grub-core/osdep/unix/hostdisk.c:61 -#: grub-core/osdep/unix/relpath.c:73 grub-core/osdep/unix/relpath.c:97 -#: util/getroot.c:160 util/getroot.c:162 util/grub-install.c:774 -#: util/grub-macbless.c:70 -#, c-format -msgid "cannot stat `%s': %s" -msgstr "kan inte använda stat pÃ¥ â€%sâ€: %s" - -#: grub-core/osdep/unix/hostdisk.c:293 -#, c-format -msgid "cannot make temporary file: %s" -msgstr "kan inte skapa temporära filen: %s" - -#: grub-core/osdep/unix/hostdisk.c:311 -#, c-format -msgid "cannot make temporary directory: %s" -msgstr "kan inte skapa temporära katalogen: %s" - -#: grub-core/osdep/unix/platform.c:77 -#, c-format -msgid "" -"couldn't find IEEE1275 device path for %s.\n" -"You will have to set `boot-device' variable manually" -msgstr "" -"kunde inte hitta IEEE1275-enhetssökvägen för %s.\n" -"Du mÃ¥ste sätta â€boot-deviceâ€-variabeln manuellt" - -#. TRANSLATORS: This message is shown when required executable `%s' -#. isn't found. -#: grub-core/osdep/unix/platform.c:149 grub-core/osdep/unix/platform.c:189 -#, c-format -msgid "%s: not found" -msgstr "%s: hittades inte" - -#: grub-core/osdep/unix/platform.c:225 -#, c-format -msgid "" -"`nvsetenv' failed. \n" -"You will have to set `boot-device' variable manually. At the IEEE1275 " -"prompt, type:\n" -" %s\n" -msgstr "" -"â€nvsetenv†misslyckades. \n" -"Du behöver sätta â€boot-deviceâ€-variabeln manuellt. Vid IEEE1275 prompten, " -"skriv:\n" -" %s\n" - -#: grub-core/osdep/unix/platform.c:240 -msgid "You will have to set `SystemPartition' and `OSLoader' manually." -msgstr "Du kommer att behöva ange â€SystemPartition†och â€OSLoader†manuellt." - -#. TRANSLATORS: canonical pathname is the -#. complete one e.g. /etc/fstab. It has -#. to contain `/' normally, if it doesn't -#. we're in trouble and throw this error. -#: grub-core/osdep/unix/relpath.c:90 -msgid "no `/' in canonical filename" -msgstr "inget â€/†i kanoniska filnamn" - -#: grub-core/osdep/windows/hostdisk.c:151 -msgid "cygwin_conv_path() failed" -msgstr "cygwin_conv_path() misslyckades" - -#: grub-core/osdep/windows/hostdisk.c:501 util/grub-install.c:570 -msgid "couldn't retrieve random data" -msgstr "kunde inte hämta slumpmässig data" - -#: grub-core/osdep/windows/platform.c:97 -msgid "Insufficient privileges to access firmware, assuming BIOS" -msgstr "" -"Otillräckliga privilegier för att komma Ã¥t fast programvara, enligt BIOS" - -#: grub-core/osdep/windows/platform.c:225 -msgid "no EFI routines are available when running in BIOS mode" -msgstr "inga EFI-rutiner är tillgängliga i BIOS-läge" - -#: grub-core/osdep/windows/platform.c:240 -msgid "unexpected EFI error" -msgstr "oväntat EFI-fel" - -#: grub-core/osdep/windows/platform.c:315 -msgid "Couldn't find a free BootNNNN slot" -msgstr "Kunde inte hitta en ledig BootNNNN-plats" - -#: grub-core/partmap/gpt.c:191 -msgid "" -"this GPT partition label contains no BIOS Boot Partition; embedding won't be " -"possible" -msgstr "" -"denna GPT-partitionsetikett har ingen BIOS-startpartition; inbäddning är " -"inte möjlig" - -#: grub-core/partmap/gpt.c:196 -msgid "your BIOS Boot Partition is too small; embedding won't be possible" -msgstr "din BIOS-startpartition är för liten; inbäddning är inte möjlig" - -#. TRANSLATORS: MBR gap and boot track is the same thing and is the space -#. between MBR and first partitition. If your language translates well only -#. "boot track", you can just use it everywhere. Next two messages are about -#. RAID controllers/software bugs which GRUB has to live with. Please spread -#. the message that these are bugs in other software and not merely -#. suboptimal behaviour. -#: grub-core/partmap/msdos.c:51 -#, c-format -msgid "" -"Sector %llu is already in use by raid controller `%s'; avoiding it. Please " -"ask the manufacturer not to store data in MBR gap" -msgstr "" -"Sektor %llu används redan av raidkontrollern â€%sâ€; undviker den. Be " -"tillverkaren att inte lagra data i MBR-spÃ¥ret" - -#: grub-core/partmap/msdos.c:54 -#, c-format -msgid "" -"Sector %llu is already in use by the program `%s'; avoiding it. This " -"software may cause boot or other problems in future. Please ask its authors " -"not to store data in the boot track" -msgstr "" -"Sektor %llu används redan av programmet â€%sâ€; undviker den. Denna " -"programvara kan orsaka uppstarts- eller andra problem i framtiden. Be " -"tillverkaren att inte lagra data i startspÃ¥ret" - -#: grub-core/partmap/msdos.c:384 -msgid "" -"other software is using the embedding area, and there is not enough room for " -"core.img. Such software is often trying to store data in a way that avoids " -"detection. We recommend you investigate" -msgstr "" -"annan programvara använder det inbäddade omrÃ¥det, och det finns inte plats " -"för core.img. SÃ¥dan programvara försöker ofta lagra data pÃ¥ ett sätt som " -"undviker upptäckt. Vi rekommenderar att du undersöker" - -#: grub-core/partmap/msdos.c:395 -msgid "" -"this msdos-style partition label has no post-MBR gap; embedding won't be " -"possible" -msgstr "" -"denna msdos-liknande partitionsetikett har inget utrymme efter MBR; " -"inbäddning kommer inte att fungera" - -#: grub-core/partmap/msdos.c:404 -msgid "your embedding area is unusually small. core.img won't fit in it." -msgstr "" -"ditt utrymme för inbäddning är ovanligt litet. core.img kommer inte att fÃ¥ " -"plats." - -#: grub-core/parttool/msdospart.c:39 -msgid "Make partition active" -msgstr "Gör partition aktiv" - -#: grub-core/parttool/msdospart.c:51 -msgid "not a primary partition" -msgstr "inte en primär partition" - -#: grub-core/parttool/msdospart.c:69 -#, c-format -msgid "Partition %d is active now. \n" -msgstr "Partition %d är aktiv nu. \n" - -#: grub-core/parttool/msdospart.c:74 -#, c-format -msgid "Cleared active flag on %d. \n" -msgstr "Tömde aktiv flagga pÃ¥ %d.\n" - -#: grub-core/parttool/msdospart.c:87 -msgid "Change partition type" -msgstr "Ändra partitionstyp" - -#: grub-core/parttool/msdospart.c:88 -msgid "Set `hidden' flag in partition type" -msgstr "Sätt flaggan â€hidden†i partitionstypen." - -#: grub-core/parttool/msdospart.c:130 -#, c-format -msgid "the partition type 0x%x isn't valid" -msgstr "partitionstypen 0x%x är inte giltig" - -#. TRANSLATORS: In this case we're actually writing to the disk and actively -#. modifying partition type rather than just defining it. -#: grub-core/parttool/msdospart.c:137 -#, c-format -msgid "Setting partition type to 0x%x\n" -msgstr "Sätter partitionstypen till 0x%x\n" - -#. TRANSLATORS: 0 is a quantifier. "break" (similar to bash) -#. can be used e.g. to break 3 loops at once. -#. But asking it to break 0 loops makes no sense. -#: grub-core/script/execute.c:143 -msgid "can't break 0 loops" -msgstr "kan inte avbryta 0-loopar" - -#. TRANSLATORS: It's about not being -#. inside a function. "return" can be used only -#. in a function and this error occurs if it's used -#. anywhere else. -#: grub-core/script/execute.c:227 -msgid "not in function body" -msgstr "inte i funktionskropp" - -#: grub-core/script/execute.c:371 -#, c-format -msgid "invalid variable name `%s'" -msgstr "ogiltigt variabelnamn â€%sâ€" - -#: grub-core/script/execute.c:953 -msgid "cannot allocate command buffer" -msgstr "det gÃ¥r inte att allokera kommandobuffert" - -#: grub-core/script/lexer.c:144 util/grub-fstest.c:330 -msgid "unexpected end of file" -msgstr "oväntat filslut" - -#: grub-core/script/main.c:55 grub-core/script/main.c:57 -#: grub-core/script/main.c:59 grub-core/script/main.c:67 -msgid "[NUM]" -msgstr "[NUM]" - -#: grub-core/script/main.c:55 -msgid "Exit from loops" -msgstr "Lämna loopar" - -#: grub-core/script/main.c:57 -msgid "Continue loops" -msgstr "Fortsätt loopar" - -#. TRANSLATORS: Positional arguments are -#. arguments $0, $1, $2, ... -#: grub-core/script/main.c:62 -msgid "Shift positional parameters." -msgstr "Skifta positionsparametrar." - -#: grub-core/script/main.c:64 -msgid "[VALUE]..." -msgstr "[VÄRDE]…" - -#: grub-core/script/main.c:65 -msgid "Set positional parameters." -msgstr "Sätt positionsparametrar." - -#. TRANSLATORS: It's a command description -#. and "Return" is a verb, not a noun. The -#. command in question is "return" and -#. has exactly the same semanics as bash -#. equivalent. -#: grub-core/script/main.c:73 -msgid "Return from a function." -msgstr "Ã…tergÃ¥ frÃ¥n en funktion." - -#: grub-core/term/gfxterm_background.c:176 -msgid "[-m (stretch|normal)] FILE" -msgstr "[-m (stretch|normal)] FIL" - -#: grub-core/term/gfxterm_background.c:177 -msgid "Load background image for active terminal." -msgstr "Läs in bakgrundsbild för aktiv terminal." - -#: grub-core/term/gfxterm_background.c:182 util/grub-install.c:302 -#: util/grub-install.c:303 util/grub-mkrescue.c:107 util/grub-mkrescue.c:108 -#: util/grub-render-label.c:61 util/grub-render-label.c:63 -msgid "COLOR" -msgstr "FÄRG" - -#: grub-core/term/gfxterm_background.c:183 -msgid "Set background color for active terminal." -msgstr "Ställ in bakgrundsfärg för aktiv terminal." - -#: grub-core/term/i386/coreboot/cbmemc.c:139 -msgid "Show CBMEM console content." -msgstr "Visa innehÃ¥llet av CBMEM-konsol." - -#: grub-core/term/serial.c:57 -msgid "Set the serial unit." -msgstr "Ställ in serieenhet." - -#: grub-core/term/serial.c:58 -msgid "Set the serial port address." -msgstr "Ställ in adress för serieporten." - -#: grub-core/term/serial.c:59 -msgid "Set the serial port speed." -msgstr "Ställ in hastighet för serieporten." - -#: grub-core/term/serial.c:60 -msgid "Set the serial port word length." -msgstr "Ställ in ordlängd för serieporten." - -#: grub-core/term/serial.c:61 -msgid "Set the serial port parity." -msgstr "Ställ in paritet för serieporten." - -#: grub-core/term/serial.c:62 -msgid "Set the serial port stop bits." -msgstr "Ställ in stoppbitar för serieporten." - -#: grub-core/term/serial.c:63 -msgid "Set the base frequency." -msgstr "Ställ in basfrekvensen." - -#: grub-core/term/serial.c:64 -msgid "Enable/disable RTS/CTS." -msgstr "Aktivera/inaktivera RTS/CTS." - -#: grub-core/term/serial.c:218 -#, c-format -msgid "serial port `%s' isn't found" -msgstr "serieporten â€%s†hittades inte" - -#: grub-core/term/serial.c:254 -msgid "unsupported serial port flow control" -msgstr "serieportens flödeskontroll stöds ej" - -#: grub-core/term/serial.c:429 -msgid "[OPTIONS...]" -msgstr "[FLAGGOR…]" - -#: grub-core/term/serial.c:430 -msgid "Configure serial port." -msgstr "Konfigurera serieport." - -#: grub-core/term/terminfo.c:184 -#, c-format -msgid "unknown terminfo type `%s'" -msgstr "okänt terminfotyp â€%sâ€" - -#: grub-core/term/terminfo.c:668 -msgid "ASCII" -msgstr "ASCII" - -#: grub-core/term/terminfo.c:671 -msgid "UTF-8" -msgstr "UTF-8" - -#. TRANSLATORS: visually ordered UTF-8 is a non-compliant encoding -#. based on UTF-8 with right-to-left languages written in reverse. -#. Used on some terminals. Normal UTF-8 is refered as -#. "logically-ordered UTF-8" by opposition. -#: grub-core/term/terminfo.c:677 -msgid "visually-ordered UTF-8" -msgstr "visually-ordered UTF-8" - -#: grub-core/term/terminfo.c:680 -msgid "Unknown encoding" -msgstr "Okänd teckenkodning" - -#: grub-core/term/terminfo.c:684 -msgid "Current terminfo types:" -msgstr "Aktuella terminfotyper:" - -#: grub-core/term/terminfo.c:699 -msgid "Terminal is ASCII-only [default]." -msgstr "Terminalen är endast ASCII [standard]." - -#: grub-core/term/terminfo.c:700 -msgid "Terminal is logical-ordered UTF-8." -msgstr "Terminal är logical-ordered UTF-8." - -#: grub-core/term/terminfo.c:701 -msgid "Terminal is visually-ordered UTF-8." -msgstr "Terminalen är visually-ordered UTF-8." - -#: grub-core/term/terminfo.c:703 -msgid "Terminal has specified geometry." -msgstr "Terminalen har specificerat geometri." - -#. TRANSLATORS: "x" has to be entered in, like an identifier, so please don't -#. use better Unicode codepoints. -#: grub-core/term/terminfo.c:706 -msgid "WIDTHxHEIGHT." -msgstr "BREDDxHÖJD." - -#: grub-core/term/terminfo.c:746 -msgid "incorrect terminal dimensions specification" -msgstr "felaktig specifikation för terminaldimensioner" - -#: grub-core/term/terminfo.c:776 -#, c-format -msgid "terminal %s isn't found or it's not handled by terminfo" -msgstr "terminal %s hittades inte eller hanteras inte av terminfo" - -#: grub-core/term/terminfo.c:785 -msgid "[[-a|-u|-v] [-g WxH] TERM [TYPE]]" -msgstr "[[-a|-u|-v] [-g BxH] TERM [TYP]]" - -#: grub-core/term/terminfo.c:786 -msgid "Set terminfo type of TERM to TYPE.\n" -msgstr "Sätt terminfotyp av TERM till TYP.\n" - -#. TRANSLATORS: this is the BLOCK-argument, not -#. environment block. -#: grub-core/tests/test_blockarg.c:49 -msgid "Print and execute block argument." -msgstr "Skriv ut och exekvera ett blockargument." - -#. TRANSLATORS: We're speaking about bitmap images like -#. JPEG or PNG. -#: grub-core/video/bitmap.c:209 -#, c-format -msgid "bitmap file `%s' is of unsupported format" -msgstr "bitmapfilen â€%s†format stöds ej" - -#: grub-core/video/i386/pc/vbe.c:1191 -#, c-format -msgid " VBE info: version: %d.%d OEM software rev: %d.%d\n" -msgstr " VBE info: version: %d.%d OEM programvara rev: %d.%d\n" - -#: grub-core/video/i386/pc/vbe.c:1198 -#, c-format -msgid " total memory: %d KiB\n" -msgstr " totalt minne: %d KiB\n" - -#: grub-core/video/video.c:596 grub-core/video/video.c:762 -msgid "no suitable video mode found" -msgstr "inget passande videoläge hittades" - -#: include/grub/crypto.h:403 -msgid "access denied" -msgstr "Ã¥tkomst nekas" - -#: include/grub/util/install.h:30 include/grub/util/install.h:35 -msgid "MODULES" -msgstr "MODULER" - -#: include/grub/util/install.h:31 -msgid "pre-load specified modules MODULES" -msgstr "förinläs specificerade moduler MODULER" - -#: include/grub/util/install.h:33 -msgid "embed a specific DTB" -msgstr "bädda in en specifik DTB" - -#: include/grub/util/install.h:36 -msgid "install only MODULES and their dependencies [default=all]" -msgstr "installera endast MODULER och deras beroenden [standard=all]" - -#: include/grub/util/install.h:37 -msgid "THEMES" -msgstr "TEMAN" - -#: include/grub/util/install.h:38 -#, c-format -msgid "install THEMES [default=%s]" -msgstr "installera TEMAN [standard=%s]" - -#: include/grub/util/install.h:39 -msgid "FONTS" -msgstr "TYPSNITT" - -#: include/grub/util/install.h:40 -#, c-format -msgid "install FONTS [default=%s]" -msgstr "installera TYPSNITT [standard=%s]" - -#: include/grub/util/install.h:41 -msgid "LOCALES" -msgstr "SPRÃ…K" - -#: include/grub/util/install.h:42 -msgid "install only LOCALES [default=all]" -msgstr "installera endast SPRÃ…K [standard=all]" - -#: include/grub/util/install.h:45 -msgid "compress GRUB files [optional]" -msgstr "komprimera GRUB-filer [valfritt]" - -#: include/grub/util/install.h:48 util/grub-mkimage.c:83 -msgid "choose the compression to use for core image" -msgstr "välj komprimering att använda för kärnavbild" - -#. TRANSLATORS: platform here isn't identifier. It can be translated. -#: include/grub/util/install.h:51 include/grub/util/install.h:54 -#: util/grub-mkimage.c:66 -#, c-format -msgid "use images and modules under DIR [default=%s/]" -msgstr "använd avbilder och moduler under KAT [standard=%s/]" - -#: include/grub/util/install.h:57 -#, c-format -msgid "use translations under DIR [default=%s]" -msgstr "använd översättningar i KAT [standard=%s]" - -#: include/grub/util/install.h:60 -#, c-format -msgid "use themes under DIR [default=%s]" -msgstr "använd teman i KAT [standard=%s]" - -#: include/grub/util/install.h:65 util/grub-mkimage.c:78 -msgid "embed FILE as public key for signature checking" -msgstr "bädda in FIL som öppen nyckel för signaturkontroll" - -#: util/editenv.c:59 util/grub-editenv.c:201 util/grub-install-common.c:535 -#: util/grub-mkimage.c:315 util/setup.c:791 -#, c-format -msgid "cannot sync `%s': %s" -msgstr "det gÃ¥r inte att synkronisera â€%sâ€: %s" - -#: util/editenv.c:64 -#, c-format -msgid "cannot rename the file %s to %s" -msgstr "kan inte byta namn pÃ¥ filen %s till %s" - -#: util/getroot.c:402 -#, c-format -msgid "disk does not exist, so falling back to partition device %s" -msgstr "disk existerar inte, sÃ¥ faller tillbaka till partitionsenheten %s" - -#: util/grub-editenv.c:45 util/grub-fstest.c:506 -msgid "Commands:" -msgstr "Kommandon:" - -#: util/grub-editenv.c:47 -msgid "Create a blank environment block file." -msgstr "Skapa en tom miljöblocksfil." - -#: util/grub-editenv.c:49 -msgid "List the current variables." -msgstr "Lista aktuella variabler." - -#. TRANSLATORS: "set" is a keyword. It's a summary of "set" subcommand. -#: util/grub-editenv.c:51 -msgid "set [NAME=VALUE ...]" -msgstr "set [NAMN=VÄRDE …]" - -#: util/grub-editenv.c:52 -msgid "Set variables." -msgstr "Ställ in variabler." - -#. TRANSLATORS: "unset" is a keyword. It's a summary of "unset" subcommand. -#: util/grub-editenv.c:54 -msgid "unset [NAME ...]" -msgstr "unset [NAMN …]" - -#: util/grub-editenv.c:55 -msgid "Delete variables." -msgstr "Ta bort variabler." - -#: util/grub-editenv.c:57 -msgid "Options:" -msgstr "Flaggor:" - -#: util/grub-editenv.c:84 -msgid "You need to specify at least one command.\n" -msgstr "Du mÃ¥ste ange minst ett kommando.\n" - -#: util/grub-editenv.c:113 -msgid "FILENAME COMMAND" -msgstr "FILNAMN KOMMANDO" - -#: util/grub-editenv.c:114 -msgid "Tool to edit environment block." -msgstr "Verktyg för att redigera miljöblock." - -#: util/grub-editenv.c:116 -#, c-format -msgid "" -"If FILENAME is `-', the default value %s is used.\n" -"\n" -"There is no `delete' command; if you want to delete the whole environment\n" -"block, use `rm %s'." -msgstr "" -"Om FILENAME är â€-†används standardvärdet %s.\n" -"\n" -"Det finns inget â€deleteâ€-kommando; om du vill ta bort hela miljö-\n" -"blocket, använd â€rm %sâ€." - -#: util/grub-editenv.c:162 -msgid "invalid environment block" -msgstr "ogiltigt miljöblock" - -#: util/grub-editenv.c:217 -#, c-format -msgid "invalid parameter %s" -msgstr "ogiltig parameter %s" - -#: util/grub-editenv.c:222 -msgid "environment block too small" -msgstr "för litet miljöblock" - -#: util/grub-fstest.c:107 -#, c-format -msgid "disk read fails at offset %lld, length %lld" -msgstr "diskläsning misslyckas vid offset %lld, längd %lld" - -#: util/grub-fstest.c:138 -#, c-format -msgid "invalid skip value %lld" -msgstr "ogiltigt hoppvärde %lld" - -#: util/grub-fstest.c:160 util/grub-fstest.c:246 -#, c-format -msgid "read error at offset %llu: %s" -msgstr "läsfel vid offset %llu: %s" - -#: util/grub-fstest.c:210 -#, c-format -msgid "cannot open OS file `%s': %s" -msgstr "kan inte öppna OS-filen â€%sâ€: %s" - -#: util/grub-fstest.c:225 util/misc.c:126 -#, c-format -msgid "cannot write to the stdout: %s" -msgstr "kan inte skriva till stdut: %s" - -#: util/grub-fstest.c:259 -#, c-format -msgid "compare fail at offset %llu" -msgstr "jämför fel vid offset %llu" - -#: util/grub-fstest.c:280 util/grub-fstest.c:314 -#, c-format -msgid "OS file %s open error: %s" -msgstr "OS-fil %s öppningsfel: %s" - -#: util/grub-fstest.c:402 util/grub-mount.c:392 -#, c-format -msgid "`loopback' command fails: %s" -msgstr "â€loopbackâ€-kommando misslyckas: %s" - -#: util/grub-fstest.c:413 util/grub-mount.c:402 -#, c-format -msgid "`cryptomount' command fails: %s" -msgstr "â€cryptomountâ€-kommando misslyckas: %s" - -#: util/grub-fstest.c:474 util/grub-fstest.c:478 -msgid "couldn't retrieve UUID" -msgstr "kunde inte hämta UUID" - -#: util/grub-fstest.c:507 -msgid "ls PATH" -msgstr "ls SÖKVÄG" - -#: util/grub-fstest.c:507 -msgid "List files in PATH." -msgstr "Lista filer i SÖKVÄG." - -#: util/grub-fstest.c:508 -msgid "cp FILE LOCAL" -msgstr "cp FIL LOKAL" - -#: util/grub-fstest.c:508 -msgid "Copy FILE to local file LOCAL." -msgstr "Kopiera FIL till lokala filen LOKAL." - -#: util/grub-fstest.c:509 -msgid "cat FILE" -msgstr "cat FIL" - -#: util/grub-fstest.c:509 -msgid "Copy FILE to standard output." -msgstr "Kopiera FIL till standard ut." - -#: util/grub-fstest.c:510 -msgid "cmp FILE LOCAL" -msgstr "cmp FIL LOKAL" - -#: util/grub-fstest.c:510 -msgid "Compare FILE with local file LOCAL." -msgstr "Jämför FIL med lokala filen LOKAL." - -#: util/grub-fstest.c:511 -msgid "hex FILE" -msgstr "hex FIL" - -#: util/grub-fstest.c:511 -msgid "Show contents of FILE in hex." -msgstr "Visa innehÃ¥llet av FILE i hex." - -#: util/grub-fstest.c:512 -msgid "crc FILE" -msgstr "crc FIL" - -#: util/grub-fstest.c:512 -msgid "Get crc32 checksum of FILE." -msgstr "Hämta crc32-kontrollsumma för FIL." - -#: util/grub-fstest.c:513 -msgid "blocklist FILE" -msgstr "blocklist FIL" - -#: util/grub-fstest.c:513 -msgid "Display blocklist of FILE." -msgstr "Visa blocklista för FIL." - -#: util/grub-fstest.c:514 -msgid "xnu_uuid DEVICE" -msgstr "xnu_uuid ENHET" - -#: util/grub-fstest.c:514 -msgid "Compute XNU UUID of the device." -msgstr "Beräkna XNU UUID för enhet." - -#. TRANSLATORS: bitmaps are images like e.g. in JPEG. -#: util/grub-fstest.c:517 util/grub-fstest.c:518 util/grub-fstest.c:519 -#: util/grub-mkfont.c:938 util/grub-mkfont.c:951 util/grub-mkfont.c:952 -#: util/grub-mkpasswd-pbkdf2.c:46 util/grub-mkpasswd-pbkdf2.c:47 -#: util/grub-mkpasswd-pbkdf2.c:48 -msgid "NUM" -msgstr "NUM" - -#: util/grub-fstest.c:517 -msgid "Skip N bytes from output file." -msgstr "Hoppa över N byte frÃ¥n utmatningsfil." - -#: util/grub-fstest.c:518 -msgid "Handle N bytes in output file." -msgstr "Hantera N byte i utdatafilen." - -#: util/grub-fstest.c:519 -msgid "Specify the number of input files." -msgstr "Specificera antalet inmatningsfiler." - -#: util/grub-fstest.c:520 util/grub-mount.c:453 -msgid "Set debug environment variable." -msgstr "Sätt miljövariabler för felsökning." - -#: util/grub-fstest.c:521 util/grub-mount.c:454 -msgid "Mount crypto devices." -msgstr "Montera krypterade enheter." - -#. TRANSLATORS: "prompt" is a keyword. -#: util/grub-fstest.c:524 util/grub-mount.c:457 -msgid "FILE|prompt" -msgstr "FIL|prompt" - -#: util/grub-fstest.c:524 util/grub-mount.c:457 -msgid "Load zfs crypto key." -msgstr "Läs in kryptonyckel för zfs." - -#: util/grub-fstest.c:526 -msgid "Uncompress data." -msgstr "Okomprimerad data." - -#: util/grub-fstest.c:605 -msgid "Invalid disk count.\n" -msgstr "Ogiltigt diskantal.\n" - -#. TRANSLATORS: disk count is optional but if it's there it must -#. be before disk list. So please don't imply disk count as mandatory. -#. -#: util/grub-fstest.c:613 -msgid "Disk count must precede disks list.\n" -msgstr "Diskantal mÃ¥ste komma före lista över diskar.\n" - -#: util/grub-fstest.c:633 -msgid "No command is specified.\n" -msgstr "Inget kommando har angivits.\n" - -#: util/grub-fstest.c:638 -msgid "Not enough parameters to command.\n" -msgstr "Inte nog med parametrar att bestämma.\n" - -#: util/grub-fstest.c:711 -#, c-format -msgid "Invalid command %s.\n" -msgstr "Ogiltigt kommando %s.\n" - -#: util/grub-fstest.c:724 -msgid "IMAGE_PATH COMMANDS" -msgstr "IMAGE_PATH KOMMANDON" - -#: util/grub-fstest.c:725 util/grub-mount.c:553 -msgid "Debug tool for filesystem driver." -msgstr "Felsökningsverktyg för filsystemsdrivrutin." - -#: util/grub-glue-efi.c:53 -msgid "set input filename for 32-bit part." -msgstr "ange inmatningsfilnamn för 32-bitarsdel." - -#: util/grub-glue-efi.c:55 -msgid "set input filename for 64-bit part." -msgstr "ange inmatningsfilnamn för 64-bitarsdel." - -#: util/grub-glue-efi.c:57 util/grub-mklayout.c:55 util/grub-render-label.c:71 -msgid "set output filename. Default is STDOUT" -msgstr "ange filnamn för utdata. Standard är STDUT" - -#: util/grub-glue-efi.c:94 util/grub-mklayout.c:476 -#: util/grub-mkpasswd-pbkdf2.c:86 util/grub-render-label.c:131 -msgid "[OPTIONS]" -msgstr "[FLAGGOR]" - -#: util/grub-glue-efi.c:95 -msgid "Glue 32-bit and 64-bit binary into Apple universal one." -msgstr "Limma ihop 32- och 64-bitars binär till en Apple universal." - -#: util/grub-glue-efi.c:116 -msgid "Missing input file\n" -msgstr "Saknar inmatningsfil\n" - -#: util/grub-install-common.c:127 util/grub-install-common.c:151 -#, c-format -msgid "cannot copy `%s' to `%s': %s" -msgstr "kan inte kopiera â€%s†till â€%sâ€: %s" - -#: util/grub-install-common.c:147 -#, c-format -msgid "can't compress `%s' to `%s'" -msgstr "kan inte komprimera â€%s†till â€%sâ€" - -#: util/grub-install-common.c:196 util/grub-install-common.c:552 -#: util/grub-install-common.c:579 util/grub-install-common.c:621 -#, c-format -msgid "cannot open directory `%s': %s" -msgstr "kan inte öppna katalogen â€%sâ€: %s" - -#: util/grub-install-common.c:212 -#, c-format -msgid "cannot delete `%s': %s" -msgstr "kan inte ta bort â€%sâ€: %s" - -#: util/grub-install-common.c:324 util/grub-mkimage.c:209 -msgid "grub-mkimage is compiled without XZ support" -msgstr "grub-mkimage har kompilerats utan stöd för XZ" - -#: util/grub-install-common.c:332 util/grub-mkimage.c:217 -#, c-format -msgid "Unknown compression format %s" -msgstr "Okänt komprimeringsformat %s" - -#: util/grub-install-common.c:400 -#, c-format -msgid "Unrecognized compression `%s'" -msgstr "Okänd komprimering â€%sâ€" - -#: util/grub-install-common.c:509 -#, c-format -msgid "unknown target format %s" -msgstr "okänt mÃ¥lformat %s" - -#: util/grub-install-common.c:700 -#, c-format -msgid "cannot find locale `%s'" -msgstr "kan inte hitta lokalen â€%sâ€" - -#: util/grub-install-common.c:939 -#, c-format -msgid "%s doesn't exist. Please specify --target or --directory" -msgstr "%s finns inte. Ange --target eller --directory" - -#: util/grub-install-common.c:948 util/grub-install-common.c:951 -#, c-format -msgid "invalid modinfo file `%s'" -msgstr "ogiltig modinfofil â€%sâ€" - -#: util/grub-install-common.c:966 -#, c-format -msgid "Unknown platform `%s-%s'" -msgstr "Okänd plattform â€%s-%sâ€" - -#: util/grub-install.c:238 -msgid "More than one install device?" -msgstr "Fler än en installationsenhet?" - -#: util/grub-install.c:251 -#, c-format -msgid "" -"install GRUB images under the directory DIR/%s instead of the %s directory" -msgstr "" -"installera GRUB-avbilder under katalogen KAT/%s istället för katalogen %s" - -#: util/grub-install.c:256 util/grub-probe.c:734 -msgid "TARGET" -msgstr "MÃ…L" - -#. TRANSLATORS: "TARGET" as in "target platform". -#: util/grub-install.c:258 -#, c-format -msgid "install GRUB for TARGET platform [default=%s]; available targets: %s" -msgstr "installera GRUB för MÃ…L-plattform [standard=%s]; tillgängliga mÃ¥l: %s" - -#. TRANSLATORS: "may break" doesn't just mean that option wouldn't have any -#. effect but that it will make the resulting install unbootable from HDD. -#. TRANSLATORS: The potential breakage isn't limited to floppies but it's -#. likely to make the install unbootable from HDD. -#: util/grub-install.c:267 util/grub-setup.c:94 -msgid "" -"make the drive also bootable as floppy (default for fdX devices). May break " -"on some BIOSes." -msgstr "" -"gör enheten startbar som floppy (standard för fdX-enheter). Kan gÃ¥ sönder pÃ¥ " -"en del BIOS." - -#: util/grub-install.c:270 -msgid "delete device map if it already exists" -msgstr "radera enhetslista om den redan existerar" - -#: util/grub-install.c:272 util/grub-setup.c:87 -msgid "install even if problems are detected" -msgstr "installera även om problem uppstÃ¥r" - -#: util/grub-install.c:274 -msgid "use identifier file even if UUID is available" -msgstr "använd identifierarfil även om UUID är tillgängligt" - -#: util/grub-install.c:276 -msgid "" -"disk module to use (biosdisk or native). This option is only available on " -"BIOS target." -msgstr "" -"diskmodul att använda (biosdisk eller inbyggd). Detta alternativ är bara " -"tillgängligt pÃ¥ BIOS-mÃ¥l." - -#: util/grub-install.c:279 -msgid "" -"don't update the `boot-device'/`Boot*' NVRAM variables. This option is only " -"available on EFI and IEEE1275 targets." -msgstr "" -"uppdatera inte â€boot-deviceâ€/`Boot*' NVRAM-variabler. Detta alternativ är " -"bara tillgängligt pÃ¥ EFI och IEEE1275-mÃ¥l." - -#: util/grub-install.c:282 util/grub-setup.c:89 -msgid "do not probe for filesystems in DEVICE" -msgstr "leta inte efter filsystem i ENHET" - -#: util/grub-install.c:284 -msgid "do not install bootsector" -msgstr "installera inte i startsektor" - -#: util/grub-install.c:286 util/grub-setup.c:96 -msgid "" -"Do not apply any reed-solomon codes when embedding core.img. This option is " -"only available on x86 BIOS targets." -msgstr "" -"Verkställ inte nÃ¥gra reed-solomon-koder när core.img bäddas in. Detta " -"alternativ är bara tillgängligt pÃ¥ x86 BIOS." - -#: util/grub-install.c:293 -msgid "" -"the installation device is removable. This option is only available on EFI." -msgstr "" -"installationsenheten är borttagningsbar. Detta alternativ är endast " -"tillgängligt pÃ¥ EFI." - -#: util/grub-install.c:295 -msgid "ID" -msgstr "ID" - -#: util/grub-install.c:296 -msgid "the ID of bootloader. This option is only available on EFI and Macs." -msgstr "" -"ID för starthanteraren. Detta alternativ är endast tillgängligt pÃ¥ EFI och " -"Mac-datorer." - -#: util/grub-install.c:298 -msgid "use DIR as the EFI System Partition root." -msgstr "använd KAT som roten för EFI-systempartitionen." - -#: util/grub-install.c:300 -msgid "use DIR for PPC MAC install." -msgstr "använd KAT för PPC MAC-installation." - -#: util/grub-install.c:301 util/grub-mkrescue.c:106 -msgid "use FILE as font for label" -msgstr "använd FIL som typsnitt för etikett" - -#: util/grub-install.c:302 util/grub-mkrescue.c:107 -msgid "use COLOR for label" -msgstr "använd FÄRG för etikett" - -#: util/grub-install.c:303 util/grub-mkrescue.c:108 -msgid "use COLOR for label background" -msgstr "använd FÄRG för etikettbakgrund" - -#: util/grub-install.c:304 util/grub-mkrescue.c:110 -msgid "use STRING as product version" -msgstr "använd STRÄNG som produktversion" - -#: util/grub-install.c:361 -msgid "[OPTION] [INSTALL_DEVICE]" -msgstr "[FLAGGA] [INSTALLATIONSENHET]" - -#: util/grub-install.c:362 -msgid "Install GRUB on your drive." -msgstr "Installera GRUB pÃ¥ din enhet." - -#: util/grub-install.c:363 -#, c-format -msgid "" -"INSTALL_DEVICE must be system device filename.\n" -"%s copies GRUB images into %s. On some platforms, it may also install GRUB " -"into the boot sector." -msgstr "" -"INSTALLATIONSENHET mÃ¥ste vara systemenhetsfilnamnet.\n" -"%s kopierar GRUB-avbilder till %s. PÃ¥ vissa plattformar kan det ocksÃ¥ " -"installera GRUB pÃ¥ startsektorn." - -#: util/grub-install.c:672 -#, c-format -msgid "the drive %s is defined multiple times in the device map %s" -msgstr "enheten %s är definierad flera gÃ¥nger i enhetskartan %s" - -#: util/grub-install.c:878 -msgid "Unable to determine your platform. Use --target." -msgstr "Kunde inte fastställa din plattform. Använd --target." - -#: util/grub-install.c:891 -#, c-format -msgid "Installing for %s platform.\n" -msgstr "Installerar för %s-plattformar.\n" - -#: util/grub-install.c:939 -msgid "install device isn't specified" -msgstr "installationsenhet är inte angiven" - -#: util/grub-install.c:1057 -msgid "cannot find EFI directory" -msgstr "kan inte hitta EFI-katalog" - -#: util/grub-install.c:1060 util/grub-install.c:1209 util/grub-install.c:1254 -#: util/grub-macbless.c:76 util/grub-probe.c:329 util/setup.c:316 -#, c-format -msgid "cannot find a device for %s (is /dev mounted?)" -msgstr "kan inte hitta en enhet för %s (är /dev monterad?)" - -#: util/grub-install.c:1069 util/grub-install.c:1217 util/grub-install.c:1270 -#: util/grub-install.c:1365 util/grub-macbless.c:80 util/grub-probe.c:372 -#, c-format -msgid "cannot find a GRUB drive for %s. Check your device.map" -msgstr "kan inte hitta en GRUB-enhet för %s. Kontroller din enhetskarta" - -#: util/grub-install.c:1087 -#, c-format -msgid "%s doesn't look like an EFI partition" -msgstr "%s verkar inte vara en EFI-partition" - -#: util/grub-install.c:1129 util/grub-install.c:1614 -msgid "You've found a bug" -msgstr "Du hittade ett fel" - -#: util/grub-install.c:1231 -#, c-format -msgid "filesystem on %s is neither HFS nor HFS+" -msgstr "filsystemet pÃ¥ %s är varken HFS eller HFS+" - -#: util/grub-install.c:1299 -#, c-format -msgid "" -"attempt to install to encrypted disk without cryptodisk enabled. Set `%s' in " -"file `%s'" -msgstr "" -"försök att installera till krypterad disk utan cryptodisk aktiverad. Ange " -"â€%s†i fil â€%sâ€" - -#: util/grub-install.c:1410 util/grub-install.c:1772 util/grub-install.c:1872 -#, c-format -msgid "Can't create file: %s" -msgstr "Kunde inte skapa filen: %s" - -#: util/grub-install.c:1491 -msgid "no hints available for your platform. Expect reduced performance" -msgstr "inga tips tillgängliga för din plattform. Förvänta reducerad prestanda" - -#. TRANSLATORS: This is a prefix in the log to indicate that usually -#. a command would be executed but due to an option was skipped. -#: util/grub-install.c:1702 -msgid "NOT RUNNING: " -msgstr "KÖR EJ: " - -#: util/grub-install.c:1806 -msgid "the chosen partition is not a PReP partition" -msgstr "den valda partitionen är inte en PReP-partition" - -#: util/grub-install.c:1811 -msgid "failed to copy Grub to the PReP partition" -msgstr "misslyckades med att kopiera Grub till PReP-partitionen" - -#: util/grub-install.c:1816 -#, c-format -msgid "" -"the PReP partition is not empty. If you are sure you want to use it, run dd " -"to clear it: `%s'" -msgstr "" -"PReP-partitionen är inte tom. Om du är säker pÃ¥ att du vill använda den, kör " -"dd för att tomma den: â€%sâ€" - -#: util/grub-install.c:1888 util/grub-install.c:1932 -#, c-format -msgid "efibootmgr failed to register the boot entry: %s" -msgstr "efibootmgr misslyckades med att registrera uppstartsposten: %s" - -#: util/grub-install.c:1916 -msgid "EFI bootloader id isn't specified." -msgstr "EFI-starthanterare är inte angiven." - -#: util/grub-install.c:1950 -msgid "WARNING: no platform-specific install was performed" -msgstr "VARNING: ingen plattformsspecifik installation utfördes" - -#: util/grub-install.c:1957 -msgid "Installation finished. No error reported." -msgstr "Installation avslutad. Inga fel rapporterades." - -#: util/grub-macbless.c:101 -msgid "bless for x86-based macs" -msgstr "bless för x86-baserade mac:ar" - -#: util/grub-macbless.c:103 -msgid "bless for ppc-based macs" -msgstr "bless för ppc-baserade mac:ar" - -#: util/grub-macbless.c:136 util/grub-probe.c:823 -msgid "No path or device is specified.\n" -msgstr "Ingen sökväg eller enhet har angivits.\n" - -#: util/grub-macbless.c:157 -msgid "--ppc PATH|--x86 FILE" -msgstr "--ppc SÖKVÄG|--x86 FIL" - -#: util/grub-macbless.c:158 -msgid "Mac-style bless on HFS or HFS+" -msgstr "Mac-liknande bless pÃ¥ HFS eller HFS+" - -#: util/grub-menulst2cfg.c:44 -#, c-format -msgid "Usage: %s [INFILE [OUTFILE]]\n" -msgstr "Användning: %s [INFIL [UTFIL]]\n" - -#: util/grub-mkfont.c:157 -#, c-format -msgid "Freetype Error %d loading glyph 0x%x for U+0x%x%s" -msgstr "Freetype fel %d läser in glyph 0x%x för U+0x%x%s" - -#. TRANSLATORS: These qualifiers are used for cursive typography, -#. mainly Arabic. Note that the terms refer to the visual position -#. and not logical order and if used in left-to-right script then -#. leftmost is initial but with right-to-left script like Arabic -#. rightmost is the initial. -#: util/grub-mkfont.c:165 -msgid " (medial)" -msgstr " (mitten)" - -#: util/grub-mkfont.c:166 -msgid " (leftmost)" -msgstr " (vänstra)" - -#: util/grub-mkfont.c:167 -msgid " (rightmost)" -msgstr " (högra)" - -#: util/grub-mkfont.c:481 -#, c-format -msgid "Out of range substitution (%d, %d)\n" -msgstr "Utbyte utanför intervallet (%d, %d)\n" - -#. TRANSLATORS: "lookup" is taken directly from font specifications -#. which are formulated as "Under condition X replace LOOKUP with -#. SUBSTITUITION". " -#: util/grub-mkfont.c:506 -#, c-format -msgid "Out of range lookup: %d\n" -msgstr "Utanför för intervalluppslag: %d\n" - -#: util/grub-mkfont.c:514 -#, c-format -msgid "Unsupported substitution type: %d\n" -msgstr "Utbytbar typ: %d stöds ej\n" - -#: util/grub-mkfont.c:550 -#, c-format -msgid "Unsupported substitution specification: %d\n" -msgstr "Ersättningspecifikation stöds ej: %d\n" - -#: util/grub-mkfont.c:582 -#, c-format -msgid "Unsupported coverage specification: %d\n" -msgstr "Täckningsspecifikationen stöds ej: %d\n" - -#: util/grub-mkfont.c:622 -#, c-format -msgid "WARNING: unsupported font feature parameters: %x\n" -msgstr "VARNING: egenskapsparametrarna för typsnittet stöds ej: %x\n" - -#: util/grub-mkfont.c:936 util/grub-mkrescue.c:98 util/grub-mkstandalone.c:48 -msgid "save output in FILE [required]" -msgstr "spara utmatning i FIL [krävs]" - -#. TRANSLATORS: some font files may have multiple faces (fonts). -#. This option is used to chose among them, the first face being '0'. -#. Rarely used. -#: util/grub-mkfont.c:942 -msgid "select face index" -msgstr "välj typsnittsindex" - -#: util/grub-mkfont.c:943 -msgid "FROM-TO[,FROM-TO]" -msgstr "FRÃ…N-TILL[,FRÃ…N-TILL]" - -#. TRANSLATORS: It refers to the range of characters in font. -#: util/grub-mkfont.c:945 -msgid "set font range" -msgstr "sätt omfÃ¥ng för typsnitt" - -#. TRANSLATORS: "family name" for font is just a generic name without suffix -#. like "Bold". -#: util/grub-mkfont.c:949 -msgid "set font family name" -msgstr "ange namn för typsnittsfamilj" - -#: util/grub-mkfont.c:950 -msgid "SIZE" -msgstr "STORLEK" - -#: util/grub-mkfont.c:950 -msgid "set font size" -msgstr "ange typsnittstorlek" - -#: util/grub-mkfont.c:951 -msgid "set font descent" -msgstr "Ange typsnittsunderhäng" - -#: util/grub-mkfont.c:952 -msgid "set font ascent" -msgstr "set typsnittsascent" - -#: util/grub-mkfont.c:953 -msgid "convert to bold font" -msgstr "konvertera till fett typsnitt" - -#: util/grub-mkfont.c:954 -msgid "force autohint" -msgstr "tvinga autotips" - -#: util/grub-mkfont.c:955 -msgid "disable hinting" -msgstr "inaktivera autotips" - -#. TRANSLATORS: some fonts contain bitmap rendering for -#. some sizes. This option forces rerendering even if -#. pre-rendered bitmap is available. -#. -#: util/grub-mkfont.c:961 -msgid "ignore bitmap strikes when loading" -msgstr "ignorera bitmaplinjer vid inläsning" - -#. TRANSLATORS: It refers to the range of characters in font. -#: util/grub-mkfont.c:1059 util/grub-mkfont.c:1075 -msgid "invalid font range" -msgstr "ogiltigt typsnittsintervall" - -#: util/grub-mkfont.c:1151 -msgid "[OPTIONS] FONT_FILES" -msgstr "[FLAGGOR] TYPSNITTSFILER" - -#: util/grub-mkfont.c:1152 -msgid "Convert common font file formats into PF2" -msgstr "Konvertera vanliga typsnittsfilformat till PF2" - -#: util/grub-mkfont.c:1182 util/grub-mkrescue.c:483 -#: util/grub-mkstandalone.c:306 -msgid "output file must be specified" -msgstr "utmatningsfil mÃ¥ste anges" - -#: util/grub-mkfont.c:1185 -msgid "FT_Init_FreeType fails" -msgstr "FT_Init_FreeType misslyckas" - -#: util/grub-mkfont.c:1199 -#, c-format -msgid "can't open file %s, index %d: error %d" -msgstr "kan inte öppna filen %s, index %d: fel %d" - -#: util/grub-mkfont.c:1229 -#, c-format -msgid "can't set %dx%d font size: Freetype error %d: %s" -msgstr "kan inte ställa in %dx%d typsnittsstorlek: Freetype fel %d: %s" - -#: util/grub-mkimage.c:67 -msgid "set prefix directory" -msgstr "sätt prefixkatalog" - -#. TRANSLATORS: "memdisk" here isn't an identifier, it can be translated. -#. "embed" is a verb (command description). " -#: util/grub-mkimage.c:71 -msgid "" -"embed FILE as a memdisk image\n" -"Implies `-p (memdisk)/boot/grub' and overrides any prefix supplied " -"previously, but the prefix itself can be overridden by later options" -msgstr "" -"bädda in FIL som en memdisk-avbild\n" -"Implicerar â€-p (memdisk)/boot/grub†och Ã¥sidosätter tidigare prefix, men " -"prefixet själv kan bli Ã¥sidosatt med senare alternativ." - -#: util/grub-mkimage.c:74 -msgid "embed FILE as a device tree (DTB)\n" -msgstr "bädda in FIL som ett enhetsträd (DTB)\n" - -#: util/grub-mkimage.c:76 -msgid "embed FILE as an early config" -msgstr "bädda in FIL som en tidig konfiguration" - -#. TRANSLATORS: NOTE is a name of segment. -#: util/grub-mkimage.c:80 -msgid "add NOTE segment for CHRP IEEE1275" -msgstr "lägg till NOTE-segment för CHRP IEEE1275" - -#: util/grub-mkimage.c:81 -msgid "output a generated image to FILE [default=stdout]" -msgstr "mata ut en genererad avbild till FIL [standard=stdut]" - -#: util/grub-mkimage.c:82 -msgid "FORMAT" -msgstr "FORMAT" - -#: util/grub-mkimage.c:100 util/grub-mkstandalone.c:62 -msgid "generate an image in FORMAT" -msgstr "generera en avbildning i FORMAT" - -#: util/grub-mkimage.c:101 util/grub-mkstandalone.c:63 -msgid "available formats:" -msgstr "tillgängliga format:" - -#: util/grub-mkimage.c:152 util/grub-mkstandalone.c:96 -#, c-format -msgid "unknown target format %s\n" -msgstr "okänt mÃ¥lformat %s\n" - -#: util/grub-mkimage.c:242 -msgid "[OPTION]... [MODULES]" -msgstr "[FLAGGA]… [MODULER]" - -#: util/grub-mkimage.c:243 -msgid "Make a bootable image of GRUB." -msgstr "Gör en startbar avbildning av GRUB." - -#: util/grub-mkimage.c:273 util/grub-mkstandalone.c:309 -msgid "Target format not specified (use the -O option)." -msgstr "MÃ¥lformat inte specificerat (använd 0-alternativet)." - -#: util/grub-mkimage.c:282 -msgid "Prefix not specified (use the -p option)." -msgstr "Prefix ej specificerat (använd alternativet -p)." - -#: util/grub-mkimage.c:318 util/setup.c:793 -#, c-format -msgid "cannot close `%s': %s" -msgstr "det gÃ¥r inte att stänga â€%sâ€: %s" - -#: util/grub-mkimagexx.c:2191 -#, c-format -msgid "" -"`%s' is miscompiled: its start address is 0x%llx instead of 0x%llx: ld.gold " -"bug?" -msgstr "" -"â€%s†är felkompilerat: dess startadress är 0x%llx istället för 0x%llx: ld." -"gold-fel?" - -#: util/grub-mklayout.c:53 -msgid "set input filename. Default is STDIN" -msgstr "ange inmatningsfilnamn. Standard är STDIN" - -#. TRANSLATORS: scan identifier is keyboard key symbolic name. -#: util/grub-mklayout.c:307 -#, c-format -msgid "Unknown keyboard scan identifier %s\n" -msgstr "Okänd identifierare för tangentbordsavsökning %s\n" - -#. TRANSLATORS: scan code is keyboard key numeric identifier. -#: util/grub-mklayout.c:390 util/grub-mklayout.c:418 -#, c-format -msgid "Unknown keyboard scan code 0x%02x\n" -msgstr "Okänd kod för tangentbordsavsökning 0x%02x\n" - -#. TRANSLATORS: this error is triggered when input doesn't contain any -#. key descriptions. -#: util/grub-mklayout.c:438 -msgid "ERROR: no valid keyboard layout found. Check the input.\n" -msgstr "" -"FEL: ingen giltig tangentbordslayout hittades. Kontrollera inmatningen.\n" - -#. TRANSLATORS: "one" is a shortcut for "keyboard layout". -#: util/grub-mklayout.c:478 -msgid "Generate GRUB keyboard layout from Linux console one." -msgstr "Generera tangentbordslayout för GRUB frÃ¥n Linux-konsolen." - -#: util/grub-mknetdir.c:47 -msgid "root directory of TFTP server" -msgstr "rotkatalog för TFTP-server" - -#: util/grub-mknetdir.c:49 -msgid "relative subdirectory on network server" -msgstr "relativ underkatalog pÃ¥ nätverksserver" - -#: util/grub-mknetdir.c:88 -msgid "" -"Prepares GRUB network boot images at net_directory/subdir assuming " -"net_directory being TFTP root." -msgstr "" -"Förbereder GRUB-startavbilder för nätverk pÃ¥ net_directory/subdir " -"förutsättandes att net_directory är en TFTP-rot." - -#: util/grub-mknetdir.c:146 -#, c-format -msgid "unsupported platform %s" -msgstr "plattformen %s stöds ej" - -#. TRANSLATORS: First %s is replaced by platform name. Second one by filename. -#: util/grub-mknetdir.c:165 -#, c-format -msgid "" -"Netboot directory for %s created. Configure your DHCP server to point to %s\n" -msgstr "" -"Netboot-katalog för %s skapad. Konfigurera din DHCP-server till att peka pÃ¥ " -"%s\n" - -#: util/grub-mkpasswd-pbkdf2.c:46 -msgid "Number of PBKDF2 iterations" -msgstr "Antal PBKDF2-iterationer" - -#: util/grub-mkpasswd-pbkdf2.c:47 -msgid "Length of generated hash" -msgstr "Längd pÃ¥ genererad hash" - -#: util/grub-mkpasswd-pbkdf2.c:48 -msgid "Length of salt" -msgstr "Längd pÃ¥ salt" - -#: util/grub-mkpasswd-pbkdf2.c:87 -msgid "Generate PBKDF2 password hash." -msgstr "Generera PBKDF2-lösenordshash." - -#: util/grub-mkpasswd-pbkdf2.c:144 util/grub-mkpasswd-pbkdf2.c:151 -msgid "failure to read password" -msgstr "misslyckades med att läsa lösenordet" - -#: util/grub-mkpasswd-pbkdf2.c:146 -msgid "Reenter password: " -msgstr "Ange lösenordet igen: " - -#: util/grub-mkpasswd-pbkdf2.c:160 -msgid "passwords don't match" -msgstr "lösenorden stämmer inte överens" - -#: util/grub-mkpasswd-pbkdf2.c:169 -msgid "couldn't retrieve random data for salt" -msgstr "kunde inte hämta slumpmässig data för salt" - -#: util/grub-mkpasswd-pbkdf2.c:184 -#, c-format -msgid "cryptographic error number %d" -msgstr "kryptografiskt fel nummer %d" - -#: util/grub-mkpasswd-pbkdf2.c:203 -#, c-format -msgid "PBKDF2 hash of your password is %s\n" -msgstr "PBKDF2-hash för ditt lösenord är %s\n" - -#: util/grub-mkrelpath.c:67 -msgid "No path is specified.\n" -msgstr "Ingen sökväg har angivits.\n" - -#: util/grub-mkrelpath.c:78 -msgid "PATH" -msgstr "SÖKVÄG" - -#: util/grub-mkrelpath.c:79 -msgid "Transform a system filename into GRUB one." -msgstr "Transformera ett systemfilnamn till ett GRUB-filnamn." - -#: util/grub-mkrescue.c:100 -msgid "save ROM images in DIR [optional]" -msgstr "spara ROM-avbilder i KAT [valfritt]" - -#. TRANSLATORS: xorriso is a program for creating ISOs and burning CDs. -#: util/grub-mkrescue.c:103 -msgid "use FILE as xorriso [optional]" -msgstr "använd FIL som xorriso [valfritt]" - -#: util/grub-mkrescue.c:109 -msgid "use STRING as product name" -msgstr "använd STRÄNG som produktnamn" - -#: util/grub-mkrescue.c:111 -msgid "" -"enable sparc boot. Disables HFS+, APM, ARCS and boot as disk image for i386-" -"pc" -msgstr "" -"aktiverar sparc-start. Inaktiverar HFS+, APM, ARCS och starta som diskavbild " -"för i386-pc" - -#: util/grub-mkrescue.c:112 -msgid "" -"enable ARCS (big-endian mips machines, mostly SGI) boot. Disables HFS+, APM, " -"sparc64 and boot as disk image for i386-pc" -msgstr "" -"aktiverar ARCS-start (big-endian mips-maskiner, mest SGI). Inaktiverar HFS+, " -"APM, sparc64 och att starta som en diskavbild för i386-pc" - -#. TRANSLATORS: it generates one single image which is bootable through any method. -#: util/grub-mkrescue.c:125 -msgid "Make GRUB CD-ROM, disk, pendrive and floppy bootable image." -msgstr "Skapa startbar GRUB-avbild för cd-rom, disk, usb-sticka och diskett." - -#: util/grub-mkrescue.c:130 -#, c-format -msgid "" -"Generates a bootable CD/USB/floppy image. Arguments other than options to " -"this program are passed to xorriso, and indicate source files, source " -"directories, or any of the mkisofs options listed by the output of `%s'." -msgstr "" -"Genererar en startbar cd-/usb-/diskettavbild. Andra argument än flaggorna " -"till detta program skickas till xorriso, och indikerar källfiler, " -"källkataloger eller andra mkisofs-alternativ listade av utmatningen av â€%sâ€." - -#: util/grub-mkrescue.c:134 -msgid "Option -- switches to native xorriso command mode." -msgstr "Flaggan -- växlar till inbyggt xorriso-kommandoläge." - -#: util/grub-mkrescue.c:135 -msgid "Mail xorriso support requests to ." -msgstr "E-posta xorriso för stöd." - -#: util/grub-mkrescue.c:221 util/grub-mkstandalone.c:114 -msgid "[OPTION] SOURCE..." -msgstr "[FLAGGA] KÄLLA…" - -#: util/grub-mkrescue.c:257 util/grub-mkrescue.c:300 util/grub-mkrescue.c:588 -#, c-format -msgid "enabling %s support ..." -msgstr "aktiverar stöd för %s …" - -#: util/grub-mkrescue.c:486 -msgid "xorriso not found" -msgstr "xorriso hittades inte" - -#: util/grub-mkrescue.c:623 -msgid "" -"Your xorriso doesn't support `--grub2-boot-info'. Some features are " -"disabled. Please use xorriso 1.2.9 or later." -msgstr "" -"Ditt xorriso stödjer inte â€--grub2-boot-infoâ€. Vissa egenskaper är " -"inaktiverade. Använd xorriso 1.2.9 eller senare." - -#: util/grub-mkrescue.c:650 -msgid "" -"Your xorriso doesn't support `--grub2-boot-info'. Your core image is too " -"big. Boot as disk is disabled. Please use xorriso 1.2.9 or later." -msgstr "" -"Ditt xorriso stödjer inte â€--grub2-boot-infoâ€. Din kärnavbild är för stor. " -"Starta som disk är inaktiverat. Använd xorriso 1.2.9 eller senare." - -#: util/grub-mkstandalone.c:115 -msgid "" -"Generate a standalone image (containing all modules) in the selected format" -msgstr "" -"Generera en fristÃ¥ende avbild (innehÃ¥llandes alla moduler) i det valda " -"formatet" - -#: util/grub-mkstandalone.c:115 -msgid "Graft point syntax (E.g. /boot/grub/grub.cfg=./grub.cfg) is accepted" -msgstr "" -"Grafpunktssyntax (exempelvis /boot/grub/grub.cfg=./grub.cfg) accepteras" - -#: util/grub-mount.c:552 -msgid "IMAGE1 [IMAGE2 ...] MOUNTPOINT" -msgstr "AVBILDNING1 [AVBILDNING2 …] MONTERINGSPUNKT" - -#: util/grub-mount.c:575 -msgid "need an image and mountpoint" -msgstr "behöver en avbildning och monteringspunkt" - -#: util/grub-probe.c:731 -msgid "given argument is a system device, not a path" -msgstr "givet argument är en systemenhet, inte en sökväg" - -#: util/grub-probe.c:736 -msgid "separate items in output using ASCII NUL characters" -msgstr "separera objekt i utmatning med ASCII NUL-tecken" - -#: util/grub-probe.c:754 -#, c-format -msgid "[default=%s]" -msgstr "[standard=%s]" - -#: util/grub-probe.c:756 -msgid "print TARGET" -msgstr "skriv ut MÃ…L" - -#: util/grub-probe.c:757 -msgid "available targets:" -msgstr "tillgängliga mÃ¥l:" - -#: util/grub-probe.c:839 -msgid "[OPTION]... [PATH|DEVICE]" -msgstr "[FLAGGA]… [SÖKVÄG|ENHET]" - -#: util/grub-probe.c:840 -msgid "" -"Probe device information for a given path (or device, if the -d option is " -"given)." -msgstr "" -"Avsök enhetsinformation för en given sökväg (eller enhet, om flaggan -d är " -"given)." - -#: util/grub-render-label.c:60 -msgid "read text from FILE." -msgstr "läs text frÃ¥n FIL." - -#: util/grub-render-label.c:62 -msgid "use COLOR for text" -msgstr "använd FÄRG för text" - -#: util/grub-render-label.c:64 -msgid "use COLOR for background" -msgstr "använd FÄRG för bakgrund" - -#. TRANSLATORS: The result is always stored to file and -#. never shown directly, so don't use "show" as synonym for render. Use "create" if -#. "render" doesn't translate directly. -#: util/grub-render-label.c:69 -msgid "set the label to render" -msgstr "sätt etiketten att skapa" - -#: util/grub-render-label.c:73 -msgid "use FILE as font (PF2)." -msgstr "använd FIL som typsnitt (PF2)." - -#. TRANSLATORS: This file takes a text and creates a graphical representation of it, -#. putting the result into .disk_label file. The result is always stored to file and -#. never shown directly, so don't use "show" as synonym for render. Use "create" if -#. "render" doesn't translate directly. -#: util/grub-render-label.c:136 -msgid "Render Apple .disk_label." -msgstr "Rendera Apple .disk_label." - -#: util/grub-render-label.c:158 util/grub-syslinux2cfg.c:169 -msgid "Missing arguments\n" -msgstr "Saknar argument\n" - -#: util/grub-script-check.c:87 -msgid "[PATH]" -msgstr "[SÖKVÄG]" - -#: util/grub-script-check.c:88 -msgid "Checks GRUB script configuration file for syntax errors." -msgstr "Kontrollera GRUBs skriptkonfigurationsfil efter syntaxfel." - -#: util/grub-script-check.c:207 -#, c-format -msgid "Syntax error at line %u\n" -msgstr "Syntaxfel pÃ¥ rad %u\n" - -#: util/grub-script-check.c:212 -#, c-format -msgid "Script `%s' contains no commands and will do nothing\n" -msgstr "" -"Skriptet â€%s†innehÃ¥ller inga kommandon och kommer inte att göra nÃ¥got.\n" - -#: util/grub-setup.c:79 -#, c-format -msgid "use FILE as the boot image [default=%s]" -msgstr "använd FIL som startavbildning [standard=%s]" - -#: util/grub-setup.c:81 -#, c-format -msgid "use FILE as the core image [default=%s]" -msgstr "använd FIL som kärnavbild [standard=%s]" - -#: util/grub-setup.c:210 -msgid "No device is specified.\n" -msgstr "Ingen enhet har angivits.\n" - -#: util/grub-setup.c:224 -msgid "" -"Set up images to boot from DEVICE.\n" -"\n" -"You should not normally run this program directly. Use grub-install instead." -msgstr "" -"Ställ in avbilder till att starta frÃ¥n DEVICE.\n" -"\n" -"Normalt kör du inte detta program direkt. Använd grub-install istället." - -#: util/grub-setup.c:228 -msgid "DEVICE must be an OS device (e.g. /dev/sda)." -msgstr "ENHET mÃ¥ste vara en OS-enhet (exempelvis /dev/sda)." - -#: util/grub-setup.c:297 -#, c-format -msgid "Invalid device `%s'.\n" -msgstr "Ogiltig enhet â€%sâ€.\n" - -#: util/grub-syslinux2cfg.c:64 -msgid "root directory as it will be seen on runtime [default=/]." -msgstr "rotkatalog som den kommer att ses under körtid [standard=/]." - -#: util/grub-syslinux2cfg.c:69 -msgid "" -"current directory of syslinux as it will be seen on runtime [default is " -"parent directory of input file]." -msgstr "" -"aktuell katalog för syslinux som den kommer att ses under körtid [standard " -"är överordnad katalog för inmatningsfil]." - -#: util/grub-syslinux2cfg.c:74 -msgid "write output to FILE [default=stdout]." -msgstr "skriv utmatning till FIL [standard=stdut]." - -#: util/grub-syslinux2cfg.c:148 -msgid "Transform syslinux config into GRUB one." -msgstr "Transformera syslinux-konfiguration till GRUB-konfiguration." - -#: util/mkimage.c:688 util/mkimage.c:717 util/mkimage.c:734 -msgid "cannot compress the kernel image" -msgstr "kan inte komprimera kärnavbildningen" - -#: util/mkimage.c:766 util/mkimage.c:1077 -#, c-format -msgid "unknown compression %d" -msgstr "okänd komprimering %d" - -#: util/mkimage.c:1088 -msgid "Decompressor is too big" -msgstr "Dekomprimeraren är för stor" - -#: util/mkimage.c:1133 -#, c-format -msgid "core image is too big (0x%x > 0x%x)" -msgstr "kärnavbildningen är för stor (0x%x > 0x%x)" - -#: util/mkimage.c:1140 -#, c-format -msgid "kernel image is too big (0x%x > 0x%x)" -msgstr "kärnavbildningen är för stor (0x%x > 0x%x)" - -#: util/mkimage.c:1220 util/mkimage.c:1501 -#, c-format -msgid "diskboot.img size must be %u bytes" -msgstr "storleken pÃ¥ diskboot.img mÃ¥ste vara %u byte" - -#: util/mkimage.c:1571 -msgid "" -"fwstart.img doesn't match the known good version. proceed at your own risk" -msgstr "" -"fwstart.img matchar inte den kända bra versionen. fortsätt pÃ¥ egen risk" - -#: util/mkimage.c:1575 util/mkimage.c:1601 -msgid "firmware image is too big" -msgstr "fast programvaruavbilden är för stor" - -#: util/resolve.c:93 -#, c-format -msgid "invalid line format: %s" -msgstr "ogiltigt radformat: %s" - -#: util/setup.c:167 -msgid "the first sector of the core file is not sector-aligned" -msgstr "första sektorn i kärnfilen är inte sektorjusterad" - -#: util/setup.c:177 -msgid "non-sector-aligned data is found in the core file" -msgstr "data som inte är sektorjusterad hittades i kärnfilen" - -#: util/setup.c:199 -msgid "the sectors of the core file are too fragmented" -msgstr "sektorerna för kärnfilen är för fragmenterade" - -#: util/setup.c:280 -#, c-format -msgid "the size of `%s' is not %u" -msgstr "storleken för â€%s†är inte %u" - -#: util/setup.c:290 -#, c-format -msgid "the size of `%s' is too small" -msgstr "storleken pÃ¥ â€%s†är för liten" - -#: util/setup.c:428 -msgid "" -"Attempting to install GRUB to a disk with multiple partition labels or both " -"partition label and filesystem. This is not supported yet." -msgstr "" -"Försöker installera GRUB pÃ¥ en disk med flera partitionsetiketter eller bÃ¥de " -"partitionsetikett och filsystem. Detta stöds inte än." - -#: util/setup.c:441 -#, c-format -msgid "unable to identify a filesystem in %s; safety check can't be performed" -msgstr "" -"kunde inte identifiera ett filsystem pÃ¥ %s; säkerhetskontroll kan inte " -"genomföras" - -#. TRANSLATORS: Filesystem may reserve the space just GRUB isn't sure about it. -#: util/setup.c:445 -#, c-format -msgid "" -"%s appears to contain a %s filesystem which isn't known to reserve space for " -"DOS-style boot. Installing GRUB there could result in FILESYSTEM " -"DESTRUCTION if valuable data is overwritten by grub-setup (--skip-fs-probe " -"disables this check, use at your own risk)" -msgstr "" -"%s verkar innehÃ¥lla ett %s filsystem som inte kan reservera plats för DOS-" -"liknande uppstart. Installeras GRUB där kan det innebära att FILSYSTEMET " -"FÖRSTÖRS om viktiga data skrivs över av grub-setup (flaggan --skip-fs-probe " -"avaktivera denna kontroll, använd den pÃ¥ egen risk)" - -#. TRANSLATORS: Partition map may reserve the space just GRUB isn't sure about it. -#: util/setup.c:458 -#, c-format -msgid "" -"%s appears to contain a %s partition map which isn't known to reserve space " -"for DOS-style boot. Installing GRUB there could result in FILESYSTEM " -"DESTRUCTION if valuable data is overwritten by grub-setup (--skip-fs-probe " -"disables this check, use at your own risk)" -msgstr "" -"%s verkar innehÃ¥lla en %s-partitionstabell som inte kan reservera plats för " -"DOS-liknande uppstart. Installeras GRUB där kan det innebära att FILSYSTEMET " -"FÖRSTÖRS om viktiga data skrivs över av grub-setup (flaggan --skip-fs-probe " -"avaktivera denna kontroll, använd den pÃ¥ egen risk)" - -#: util/setup.c:465 -#, c-format -msgid "" -"%s appears to contain a %s partition map and LDM which isn't known to be a " -"safe combination. Installing GRUB there could result in FILESYSTEM " -"DESTRUCTION if valuable data is overwritten by grub-setup (--skip-fs-probe " -"disables this check, use at your own risk)" -msgstr "" -"%s verkar innehÃ¥lla en %s-partitionstabell som inte är känd som en säker " -"kombination. Installeras GRUB där kan det innebära att FILSYSTEMET FÖRSTÖRS " -"om viktiga data skrivs över av grub-setup (flaggan --skip-fs-probe " -"avaktivera denna kontroll, använd den pÃ¥ egen risk)" - -#: util/setup.c:478 -msgid "" -"Attempting to install GRUB to a partitionless disk or to a partition. This " -"is a BAD idea." -msgstr "" -"Försöker installera GRUB pÃ¥ en opartitionerad disk eller till en partition. " -"Detta är en DÃ…LIG idé." - -#: util/setup.c:483 -msgid "" -"Attempting to install GRUB to a disk with multiple partition labels. This " -"is not supported yet." -msgstr "" -"Försöker installera GRUB pÃ¥ en disk med flera partitionsetiketter. Detta " -"stöds ej än." - -#: util/setup.c:489 -#, c-format -msgid "Partition style `%s' doesn't support embedding" -msgstr "Partitionsstilen â€%s†stöder inte inbäddning" - -#: util/setup.c:496 -#, c-format -msgid "File system `%s' doesn't support embedding" -msgstr "Filsystemetâ€%s†stöder inte inbäddning" - -#: util/setup.c:537 -msgid "Your embedding area is unusually small. core.img won't fit in it." -msgstr "" -"Ditt utrymme för inbäddning är ovanligt litet. core.img kommer inte att fÃ¥ " -"plats." - -#: util/setup.c:559 util/setup.c:725 util/setup.c:844 -msgid "no terminator in the core image" -msgstr "ingen terminering i kärnavbildningen" - -#: util/setup.c:622 -msgid "core.img version mismatch" -msgstr "core.img version matchar ej" - -#: util/setup.c:675 -msgid "" -"embedding is not possible, but this is required for RAID and LVM install" -msgstr "" -"inbäddning är inte möjligt, detta krävs dock när för installation av RAID " -"eller LVM" - -#: util/setup.c:682 -#, c-format -msgid "can't determine filesystem on %s" -msgstr "kan inte fastställa filsystem pÃ¥ %s" - -#: util/setup.c:685 -#, c-format -msgid "filesystem `%s' doesn't support blocklists" -msgstr "filsystemet â€%s†stödjer inte blocklistor" - -#. TRANSLATORS: cross-disk refers to /boot being on one disk -#. but MBR on another. -#: util/setup.c:694 -msgid "embedding is not possible, but this is required for cross-disk install" -msgstr "" -"inbäddning är inte möjligt, detta krävs dock för installation över flera " -"diskar" - -#: util/setup.c:700 -msgid "" -"Embedding is not possible. GRUB can only be installed in this setup by " -"using blocklists. However, blocklists are UNRELIABLE and their use is " -"discouraged." -msgstr "" -"Inbäddning är inte möjlig. GRUB kan bara bli installerad i denna form genom " -"att använda blocklistor. Blocklistor är tyvärr OPÃ…LITLIGA och användandet av " -"dem avrÃ¥des." - -#. TRANSLATORS: Here GRUB refuses to continue with blocklist install. -#: util/setup.c:705 -msgid "will not proceed with blocklists" -msgstr "fortsätter inte utan blocklistor" - -#: util/setup.c:817 util/setup.c:837 -msgid "blocklists are invalid" -msgstr "blocklistor är ogiltiga" - -#: util/setup.c:847 -msgid "blocklists are incomplete" -msgstr "blocklistor är ej kompletta" - -#~ msgid "%.*s: ARGP_HELP_FMT parameter must be positive" -#~ msgstr "%.*s: ARGP_HELP_FMT-parametern mÃ¥ste vara positiv" - -#~ msgid "%s: option '--%s' doesn't allow an argument\n" -#~ msgstr "%s: flaggan â€--%s†tillÃ¥ter inte argument\n" - -#~ msgid "%s: unrecognized option '--%s'\n" -#~ msgstr "%s: okänd flagga â€--%sâ€\n" - -#~ msgid "%s: option '-W %s' doesn't allow an argument\n" -#~ msgstr "%s: flaggan '-W %s' tillÃ¥ter inte ett argument\n" - -#~ msgid "%s: option '-W %s' requires an argument\n" -#~ msgstr "%s: flaggan â€-W %s†kräver ett argument\n" - -#~ msgid "Usage: %s -o OUTPUT CKBMAP_ARGUMENTS...\\n" -#~ msgstr "Användning: %s -o UTMATNING CKBMAP_ARGUMENT…\\n" - -#~ msgid "Make GRUB keyboard layout file." -#~ msgstr "Skapa tangentbordslayoutfil för GRUB." - -#~ msgid "print this message and exit" -#~ msgstr "skriv ut detta meddelande och avsluta" - -#~ msgid "print the version information and exit" -#~ msgstr "skriv ut versionsinformation och avsluta" - -#~ msgid "%s generates a keyboard layout for GRUB using ckbcomp\\n" -#~ msgstr "%s genererar en tangentbordslayout för GRUB med ckbcomp\\n" - -#~ msgid "Report bugs to ." -#~ msgstr "" -#~ "Rapportera fel till .\n" -#~ "Skicka synpunkter pÃ¥ översättningen till ." - -#~ msgid "%s: option requires an argument -- `%s'\\n" -#~ msgstr "%s: flaggan kräver ett argument -- â€%sâ€\\n" - -#~ msgid "Usage: %s [OPTION]\\n" -#~ msgstr "Användning: %s [FLAGGA]\\n" - -#~ msgid "Generate a grub config file" -#~ msgstr "Generera en konfigurationsfil för grub" - -#~ msgid "output generated config to FILE [default=stdout]" -#~ msgstr "mata ut genererad konfiguration till FIL [standard=stdut]" - -#~ msgid "Unrecognized option `%s'\\n" -#~ msgstr "Okänd flagga â€%sâ€\\n" - -#~ msgid "%s: You must run this as root\\n" -#~ msgstr "%s: Du mÃ¥ste köra detta som root\\n" - -#~ msgid "%s: Not found.\\n" -#~ msgstr "%s: hittades inte.\\n" - -#~ msgid "Generating grub configuration file ..." -#~ msgstr "Generera konfigurationsfil för grub …" - -#~ msgid "" -#~ "Syntax errors are detected in generated GRUB config file.\n" -#~ "Ensure that there are no errors in /etc/default/grub\n" -#~ "and /etc/grub.d/* files or please file a bug report with\n" -#~ "%s file attached." -#~ msgstr "" -#~ "Syntaxfel upptäcktes i den genererade GRUB-konfigurationsfilen.\n" -#~ "Kontrollera att det inte finns nÃ¥gra fel i /etc/default/grub-\n" -#~ "och /etc/grub.d/*-filerna eller skicka in en felrapport med\n" -#~ "bifogad %s-fil." - -#~ msgid "done" -#~ msgstr "färdigt" - -#~ msgid "Warning:" -#~ msgstr "Varning:" - -#~ msgid "Usage: %s [OPTION] MENU_ENTRY\\n" -#~ msgstr "Användning: %s [FLAGGA] MENYPOST\\n" - -#~ msgid "Set the default boot menu entry for GRUB, for the next boot only." -#~ msgstr "Sätt standardpost för GRUBs startmeny, endast för nästa start." - -#~ msgid "" -#~ "expect GRUB images under the directory DIR/%s instead of the %s directory" -#~ msgstr "" -#~ "förvänta GRUB-avbilder under katalogen KAT/%s istället för %s-katalogen" - -#~ msgid "" -#~ "MENU_ENTRY is a number, a menu item title or a menu item identifier. " -#~ "Please note that menu items in\n" -#~ "submenus or sub-submenus require specifying the submenu components and " -#~ "then the\n" -#~ "menu item component. The titles should be separated using the greater-" -#~ "than\n" -#~ "character (>) with no extra spaces. Depending on your shell some " -#~ "characters including > may need escaping. More information about this is " -#~ "available\n" -#~ "in the GRUB Manual in the section about the 'default' command. " -#~ msgstr "" -#~ "MENYPOST är ett nummer, en titel pÃ¥ ett menyobjekt eller en identifierare " -#~ "för ett menyobjekt. Observera att menyobjekt eller under-undermenyer " -#~ "kräver specificering av undermenykomponenterna och sedan\n" -#~ "komponenten för menyobjektet. Titlarna bör vara separerade med större-än\n" -#~ "tecknet (>) utan extra mellanslag. Beroende pÃ¥ ditt skal kan nÃ¥gra " -#~ "tecken, inkluderande > behöva omges av avbrottstecken.\n" -#~ "Mer information om detta finns\n" -#~ "i manualen för GRUB under sektionen om â€defaultâ€-kommandot." - -#~ msgid "More than one menu entry?" -#~ msgstr "Fler än en menypost?" - -#~ msgid "Menu entry not specified." -#~ msgstr "Menypost inte angiven." - -#~ msgid "Set the default boot menu entry for GRUB." -#~ msgstr "Ange standardpost för GRUBs startmeny." - -#~ msgid "This requires setting GRUB_DEFAULT=saved in %s/default/grub.\\n" -#~ msgstr "Detta kräver inställningen GRUB_DEFAULT=saved i %s/default/grub.\\n" - -#~ msgid "MENU_ENTRY is a number, a menu item title or a menu item identifier." -#~ msgstr "" -#~ "MENYPOST är ett nummer, en titel pÃ¥ ett menyobjekt eller identifierare " -#~ "för menyobjekt." - -#~ msgid "" -#~ "Requested serial terminal but GRUB_SERIAL_COMMAND is unspecified. Default " -#~ "parameters will be used." -#~ msgstr "" -#~ "Begärde seriell terminal men GRUB_SERIAL_COMMAND är ospecificerat. " -#~ "Standardparametrar kommer att användas." - -#~ msgid "Found theme: %s\\n" -#~ msgstr "Hittade tema: %s\\n" - -#~ msgid "Found background: %s\\n" -#~ msgstr "Hittade bakgrund: %s\\n" - -#~ msgid "Unsupported image format" -#~ msgstr "Avbildningsformatet stöds ej" - -#~ msgid "" -#~ "Setting GRUB_TIMEOUT to a non-zero value when GRUB_HIDDEN_TIMEOUT is set " -#~ "is no longer supported." -#~ msgstr "" -#~ "Att sätta GRUB_TIMEOUT till ett värde annat än noll medan " -#~ "GRUB_HIDDEN_TIMEOUT är satt stöds ej längre." - -#~ msgid "Found GNU Mach: %s" -#~ msgstr "Hittade GNU Mach: %s" - -#~ msgid "Found Hurd module: %s" -#~ msgstr "Hittade Hurd module: %s" - -#~ msgid "Some Hurd stuff found, but not enough to boot." -#~ msgstr "Hittade delar av Hurd, men inte nog för att starta." - -#~ msgid "%s, with Hurd %s (recovery mode)" -#~ msgstr "%s, med Hurd %s (Ã¥terställningsläge)" - -#~ msgid "%s, with Hurd %s" -#~ msgstr "%s, med Hurd %s" - -#~ msgid "" -#~ "Please don't use old title `%s' for GRUB_DEFAULT, use `%s' (for versions " -#~ "before 2.00) or `%s' (for 2.00 or later)" -#~ msgstr "" -#~ "Använd inte gamla titeln â€%s†för GRUB_DEFAULT, använd â€%s†(för " -#~ "versioner före 2.00) eller â€%s†(för 2.00 eller senare)" - -#~ msgid "Loading GNU Mach ..." -#~ msgstr "Läser in GNU Mach …" - -#~ msgid "Loading the Hurd ..." -#~ msgstr "Läser in Hurd …" - -#~ msgid "Advanced options for %s" -#~ msgstr "Avancerade flaggor för %s" - -#~ msgid "Loading kernel of Illumos ..." -#~ msgstr "Läser in kärna för Illumos …" - -#~ msgid "%s, with kFreeBSD %s (recovery mode)" -#~ msgstr "%s, med kFreeBSD %s (Ã¥terställningsläge)" - -#~ msgid "%s, with kFreeBSD %s" -#~ msgstr "%s, med kFreeBSD %s" - -#~ msgid "Loading kernel of FreeBSD %s ..." -#~ msgstr "Läser in kärna för FreeBSD %s …" - -#~ msgid "Found kernel of FreeBSD: %s\\n" -#~ msgstr "Hittade kärna för FreeBSD: %s\\n" - -#~ msgid "Found kernel module directory: %s\\n" -#~ msgstr "Hittade katalog för kärnmoduler: %s\\n" - -#~ msgid "%s, with Linux %s (recovery mode)" -#~ msgstr "%s, med Linux %s (Ã¥terställningsläge)" - -#~ msgid "%s, with Linux %s" -#~ msgstr "%s, med Linux %s" - -#~ msgid "Loading Linux %s ..." -#~ msgstr "Läser in Linux %s …" - -#~ msgid "Loading initial ramdisk ..." -#~ msgstr "Läser in initial ramdisk …" - -#~ msgid "Found linux image: %s\\n" -#~ msgstr "Hittade linux-avbildning: %s\\n" - -#~ msgid "Found initrd image: %s\\n" -#~ msgstr "Hittade initrd-avbildning: %s\\n" - -#~ msgid "%s, with kernel %s (via %s, recovery mode)" -#~ msgstr "%s, med kärnan %s (via %s, Ã¥terställningsläge)" - -#~ msgid "%s, with kernel %s (via %s)" -#~ msgstr "%s, med kärnan %s (via %s)" - -#~ msgid "Found NetBSD kernel: %s\\n" -#~ msgstr "Hittade NetBSD-kärna: %s\\n" - -#~ msgid "Windows Vista/7 (loader)" -#~ msgstr "Windows Vista/7 (inläsare)" - -#~ msgid "Windows NT/2000/XP (loader)" -#~ msgstr "Windows NT/2000/XP (inläsare)" - -#~ msgid "Found %s on %s (%s)\\n" -#~ msgstr "Hittade %s pÃ¥ %s (%s)\\n" - -#~ msgid "(32-bit)" -#~ msgstr "(32-bitars)" - -#~ msgid "(64-bit)" -#~ msgstr "(64-bitars)" - -#~ msgid "(on %s)" -#~ msgstr "(pÃ¥ %s)" - -#~ msgid "%s, with Xen %s and Linux %s (recovery mode)" -#~ msgstr "%s, med Xen %s och Linux %s (Ã¥terställningsläge)" - -#~ msgid "%s, with Xen %s and Linux %s" -#~ msgstr "%s, med Xen %s och Linux %s" - -#~ msgid "%s, with Xen hypervisor" -#~ msgstr "%s, med Xen hypervisor" - -#~ msgid "Loading Xen %s ..." -#~ msgstr "Läser in Xen %s …" - -#~ msgid "Xen hypervisor, version %s" -#~ msgstr "Xen hypervisor, version %s" - -#~ msgid "Advanced options for %s (with Xen hypervisor)" -#~ msgstr "Avancerade flaggor för %s (med Xen hypervisor)" - -#~ msgid "Found %s on %s\\n" -#~ msgstr "Hittade %s pÃ¥ %s\\n" - -#~ msgid "%s is not yet supported by grub-mkconfig.\\n" -#~ msgstr "%s stöds ännu inte av grub-mkconfig.\\n" - -#~ msgid "Unsupported substitution flag: 0x%x\n" -#~ msgstr "Ersättningsflagga stöds ej: 0x%x\n" - -#~ msgid "Unknown gsub font feature 0x%x (%s)\n" -#~ msgstr "Okänd gsub-typsnittsegenskap 0x%x (%s)\n" diff --git a/thirdparty/grub-2.04/po/swiss.sed b/thirdparty/grub-2.04/po/swiss.sed deleted file mode 100644 index 17c9c380b..000000000 --- a/thirdparty/grub-2.04/po/swiss.sed +++ /dev/null @@ -1,7 +0,0 @@ -s,ß,ss,g -y,»«,«», -s,\bRechner\b,Computer,g -s,\bStrg\b,Ctrl,g -s,\bEinfg\b,Insert,g -s,\bEntf\b,Del,g - diff --git a/thirdparty/grub-2.04/po/tr.gmo b/thirdparty/grub-2.04/po/tr.gmo deleted file mode 100644 index 18f7ead37b5097c866cf14ec433571ad5a1caa95..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 80617 zcmd?Sd0<>s-T!|}3#DNxl(nq4Kxj)lX_~GS3S^nKq1njNmWJ3)GLvM;WG2kgHl-kf zY_h6=AP6cTD!VMAAP4_?JT502yhaM^mEU*~xT!zs{*VYmhEQ! z=Y9yMz+GCcxdN(OmO676R6E!J&xTjQweXNO>JXj@)h=Fu3ilyYzV=#S>v1yF^Y({I z=UiuA1oy{$98`K!Q1yDYbN`w%-vbrzlTi77+qr)T_rN@9r7f3fa8Jzhp`KF@)t*|Q z>SYkh|K(8rZh=bo!_NK%sB(HAPJ-L6vgNfm+zaz`co?jNs_z60!>eI6d>I}IryXzI zW3U4Am!R_b6R79C4ppyXDLnPNgP{+Pfl6ltD!->WUIi8Y9_Rim$G^Y@*zewMpH~MJ z{!};ve#My|feQaR+y`!Vg6GYHQ=sfuLZu@IefR|!f_FIce?z5rn+_ZPAh;0oVyJey z4yr$$1JzEx0QZM?LzUxG(6nQyav%RGTh0eSr8flSzs~VQsD5`2q$_$i!rkFN9Cuyg zdCM>#3J--TsQS4KO77eO)t>KyGvTk{4shIB+a7m;`(fT4D&4c8{2u`oPX|OW}d=HnxR6Qi&0q{(y z=UfMszek|Ly#!Sb|AvRdsZpEG2vmMH!j159sB+&eW}m+gRQo7{dQJ~izE6e9@3~OV zxeS_g!z(dA4wddix6R+>Q00FcRKI-~sy#gm4}xz)$+KO1EDwT`-*ceK=LD#F&q9p@ zr#W5>m9DQs)!%oa;(G*^!#CkLxPPy0rw73Wm}kTBFb);(Nl?!}1uA_P!foMoa69;I zsQS3wxjzgg51xg}*UoVp|G`jlr2@`}9Z=vO2<`j47?WVxz|IC=v%g;Oz~3!C8WQ1NZkZ_8^6+y-+9s$9yU(oq9vz!s?T{4`YiyBI1TH$grBS5Wo# zo->yuT{@vjCse(!f~t=JXMYw{Ke-aBp6`Y#kKe!@;j?fWd>tx(yQXaZ_JB&yzEJIC zCY%V5f{m~N>N!_KJ@-zi^!*g>1Yd&6=ew{JZaZMhV+K^dj)khnEL6HKgUa{!pyK%@ zRJpwA%zK|?pFa!kjQ!D2>1u$AXDw9t)1li?gHbKw=R z9{wCw!2Pn;y%DNk#G&NLB~bPCGpOf31C_5oIrD^^b)N#~U|$9gft^t0cs5kM+yTeH z2chB_g6b#FLiO(#;R5&uRQo+>olSQo+yiqLl-wGGB-y(HDxRIz+xAilmEZYL{%hf$ zaE)_c2i4BbhU!P>!EeIP!+YSO4L1CHa5v1`4cheW167|>pz0|E74LFb0z0AFML*PY zH$nB!FTlOvm!RtJR#*oggi7bm2yxZ-6sUS$3>8m3RJ%O^PKKw$z2Q~xV0af)zx<8k z`*3^AyPa&)wIB2`&w(n(R%gyYwf9S)`rUV-;(q}u{NJJKXY3}MzHOoMu{YFn_jl$> zsQfH}if@&3KN+fgu7RrWAHWIlQ7HevguBDnp!(rIpz7n$Q*3=42G!2Wp~`JBR5`an zm1_d3UQUN9kISIqyA>+F%~0ul8}0`uoodT>7G!Agmc!4&JD~Et@YB{`GgQ1OsD5$= zRKBia9@vlbG!#CUr#~B^CndK{|?n2CVs~D z>w}=uvl#9IkAnxoP8foxJNMh5$v0H_ybTrqxYKR<><3kU^BfmJ^|zy;>U#-16gEP| zvkod9UxoAF9q?1|_fX}v>4?SMemE%Iz|E6uckSz<z0a}rb2vN+a|2Yk2jC+39Nb_2&b9q^K2*BGQ2t_2 z?e}!3`ndv{_6o}}Z-#pAU*N%Tm(N-ExlsOV;h}I1RD5Sa`M(w_o%ci4*K<($_#>PS zcRbI^llf5omOzzr493+xEWz?tpnU)bqPx1v~?ehj+v6 z;Qdhb@Gu+$pLg~zIKBpz-?yRa|G*1u{FPAojzXp99H@MM87kekLHU2o*}n@*Fps~` zw#P~ENX#=~DU8GI;YDyPyc})|uY#t%K+|5}H0+;s=5ZHU`~9KPIUml4Jy7|)8tw$Y z0aadiLiNu_pyGcHD%?v@>D~Qe+y3T5mFH5Z=O&=q!E(e z(1$yH-rAQzl~c828{83d4^(_vsCxPWRDN%TGvH(JAow9veI4)x8&4_Ja~43=|8i%} zK$Yv+Q2E~sC&8b>e)v16c3A&KTMxaCr$goADrde6&cXZ`oDIibV#{$J)bpxg2=+Pi z6^;+WGVFg3C&0Zgwe9;L$D|2jQ;pR;cg~LZ#!^a8LLrsP-}8a$D{b;m(-% zgleayP~pnpF0clwKHH$4*9ql60r!R{!`?d^i#Fm2h8pBRl~92&#Nub^HJ-9XnoQ(>DbwA7RHeQ2qy@ z(se#mes6&L!~3D0`&+2;{{X6;jsL10M|OeA{{pD+jZo!!B9weM6)L{3LG_D!;4=6+ zTmol*&4%9qB|k5Q8Xvv~Ri6(-wU2k8+R>P=+xEW?RK9$u=gouiR|{3%?NI&n45)Z- zfy(!U%v*Gk3U1@d;ASH z{{5lMv!T+z6e|A_sPY_yYNt0qmB$d2|EHkR`vz3~jrpd1-fmFtBk ze;KO$KXCTj-DuN&2voY4K*iSuxE?+X7r@20pd-K> zRQeu-k`u2$wf8-4wdGLm*Z|wGPe9enLs02>7AoEE!WnS8+ibh4fJ%2QTml=Q{9g*? z|3;|x_kgqiwKKovIPP{^@B2a@e`QeN8lj#ah06CSQ0e^=tbpHvYFDp7USkn_#9L_zsR}Y>i8q5dioudd>MC#4RwQUN{Lp z1NGdu;BIi+JFT3Y>{toqKMq6i94P;HLm&Pe9tz)qWpK~CY&ybF`RsyK@JtwnKX&Gw z?`BLN!*~ppk7Mt#aybQ+|1U$O`yOZi1l$4hKVU7~{(Dy5HpA(d+u+5*`6hyVuI4`|h*#_B7OUcKCs97xSPA2Y1DO zB~*WlL$&*}ocqOaf6Q0HiST=H7JLLMKOaE#hi&h-?S2N_33C@b9G(RAoEzaBcsD!% zz5%y^6aLHA*N#y2KG&H$ocT;hcD!4lo^u;iyZ;qbc|8lKz;~hYvD*W-eoLX;7sE=} z0=I>iLbZb{;biy-RK8z=sxR+B8*Vb(9pfx0`x>b9bwK$)%bBlr=AXjZ*#91W3GVw4 zV*|VcMqp^jw&#nW+S?s)415NTg};UBuP;F5@2_wl_z$S^+H13Iuk+!7m{&rjZ#`7G zoDY?*??Cl~$KVwB5>!67eb|=Ef$$*A3*b1o8mgYwz=iM%sPXJcD1UE5wVPdkXyZQu z>ba|+%B3GFeP=<1yB;dO2jMaBL#X^8`6IjTaW!0x`CqUW9{*#juUre~V}2W|eU(09 z)6)i3t{1|^@Bz30{tK4F`9HDjffbl9hiYe!I{q6Tk9p3c$VhkrRQTV*Fx>s8*8gg# z@E1Zo|3SDCzU%C3e`eFM2`YcLz@_kYI1iTp+^!RM!$UD&32Wg)a2L4aW42%I50$>D za0YCLD!;SgVelJpFZcvh`~5wf4*v~H;q=F?xe=;<2jMDsB~-ot*>U?P?Ec1nP|xXy zs-G+1w(u^f=iUoL@EJG(ZvUj!rzSzQr+uL87eJL;B~KcmdoI-U9c8_reA6Nw^OzdDhyO!ikuVguBB!sPsml z+CdJgoWB5%f}5e*(b(TwIWPgLehz}$!#21R{1jAr5^#Tb3fvi93FYtGP|vvoO5Xek z*1#9Bf!~1B;NPLj<=_{szY3^wIULHq9!`ZPK$Yibq0)D$v%eK8UB7nr@53pW zcX`S7hYF~AT?O}s{ZQq57F0Y}JNtX!Jj_qPF>w6LwjL)ymH%FFEL;MWzhj}|X@dL0 zUa0s#3;W<#;DK<$E4F^8!&1z3Q29&4{oz?~3A_#-1pfe)j-6k%R-6 z2Fz<<54;5~g?s+N#``Ha6Z5%n6}%g&y-cJNC_e{4rT0i@J|3!Hu7~O$XF{dp9;p8G zJE;6je9PAVp-}mr2DgJt;RM(Km%vp}@mvEBgHJ;F|0kRY_j{YNhqX}UaXnOdKLC~A z$DREvQ0evFvHkA=sCG6NZVMN}hu~50KpN(lKid8`3hg0FMa1g3Lod+kuo1Ogwa2Dn#p~`ui_v~{I zgbOe)hAM{~RQRvMo#1Aue)6QV{{z(Xclxs}$7xXY(gGFFMyTg}2P%IrLiNvgpwjm) zR5^|Pi!GN4a2)2t;2v-mTnxkTD0l|+;X`l-_!8V6z5{oMe{+j zyTKEo@^vbdT>2_hdTw{-A*k|t3QmNt!3y|SsPa1OuU4)sg(1xA;MMRt_$aLYo2|cz zAK3md1FD=_;S8993U?(u0zLxwgxmhzrf)x}{FFnrgD_M-j5zb>ocSAYAM784Q{fxX zhm$_E?RgGVduoP?XTb4%sBqte%J&dddHfR2gMW4Ip?_HYa2Zs3PJw&CFF5;e!fh}= z2UWf=K()(Pq1yFZa5nraRDP%b(>`w{)N|tSM0gF{50?DPw!5j0t*{UK&%l287F2(2 z|F_jg&w|Hc{yuDgJJPzQ%N?q|&V+i-Jy7!YZN~%0j4|cZ1l3+of^*^Ja3TB|)N{7m zW{mMS8!G+HP~~(QR5^Sdu7LMI<#XcLF{U0Xq597%SO(983V$b*oO}`LIpaBet9Xuq zSHTrf_4ppFh5K$h#Mu7y#d9xQ0AGb_4+m^-{m+5QZyQv6r$hCh zJE79~BUlArg(~mq6Ks4;r#?I*zTm?y%+ z;a*VbI1Z}5PlYP?TcOJNIjHo!2lc#3JJ|AE2-P1VQ1W1t;{~u1^VRTZ_ySbB_IDg( z#L8bdTXa68n`8)^JUMKEk!+#2@yrNLy*E@dEx!(#^?sq|z z-&;`e?!NOFBVT7jg^NJ7hf|>1*`-kNe&4zO465FL57nN=P8?(O{(Ye0I||Ca-7yU{ zuAB>%zsnu(fog|OL*;YKF1Ft0Le=M5sP@qZ74K3b4Z!#AMnuWVOa{`29d zF&_ujPM?5^=N+j0jhi&aj6Xh9eH{)JZ!0_ko(q+~hoS2Ech3G_Q02C0H_He-2J<;k z>3sw$zNeh~JI=i4?$-ZosCZXFwVO0l{FgiT@4{m-KM&PkrtdMvtQRbX8vibb%J+|< z`uz(~?R@f{wtT}->1c&MTmz4Ur$N=<51{Jhaj0^54XQnl-OIM0$#6T&2SSzip-|&u zHB@@);NEa8RQn!;JHgL6_sgO3a}$&tcoeGK--gQf*u5?HhidN&pvJ|;Q2y$n`fDdt zIVYjy*rjk+_yeePJO)+HFF}>#zo4FX$Yh((rBMD?!)};>YA3&dN5Q@J8DrKzRzSsf z6;yn;L8bFiC_Up9sCM}$sC1U@Yvs*6sB&KmRUYR%^Yu{W`vg>cuS1o`*!`^kgP`)$ z0F~c$Q1y8pRJ~sd)ehf=iud6CZNECwaV=E*pM@F^u7s+mpFrjRHK_cQ9AM?c0no?X z1Xa%`L6z6pQ1y2+JQ&{Z%r8Rq)Ayj#xedyuUj-N;nz6(L8#|l0woWxh3c<2Lxq17Dqqh-J%7v;o8G;k%I63;AGX3O zcph8=e-0IHkAtkdTL{%J2B6y2$x!iq9V(uCpxXHpQ2BZWDxH6UO2@>5UHw7z!v?7G zKNU)T-3(P;zk3It(9}}lp_i0di^pQ~grxKcYq5Pc* zm9DFy(s`eA{{>Whe}Kx*PSdSEb{Nz+y%x&<1yJd`4ys)4hiczXL52I9v)|(|TkbQU z^4A8H?=zs%a|u*DH#zeUq1x&5j&DK9gMUD!YsVQ@-jqS5;~1!VUI|scXG4YmhT~mO z<+T|~4m=H2Zf`kzZ>EiBcPRH6P;&MdsOL5~ehMnyBvkrOal8;Jzt=!L|30Yp_$>6{ zhfvSkFJ$AJ1?B%}DEV^&RJ;5Q_?`W!zCRnK369q_wQ@?noTHor$gwZ{&q{(dr4eS90L9sd_x z0XIXH-@bEgz86B}uLT;6w{N$rTZpWb-sB%3KDm_;~mD>|g z`FkCP;dYCx{#*xFW4;iMf$d`%gSe6GTm|2U&q2Dm*UJ5Wb4}!4fA?);`A5uM&hALU zui@I!nIFf?dh5;mwzG3aGe12G!i^m@mTobEv=Lu%GPizl{BO z%-cJ^zsIb2EvS*W>q>*!>psXPkez-N99h{h2U^pFZyIlmmaeVQ#ax z-pSbCN4Qrp{|we(j&q&n;`+Sv7vK`yPQY+C)L%W^Y;V1%;HiYW7aqeicEN20_h~pA zbMV*d!phu%{Z53D9^Sgf7$&4^M_nnF1_>I$#p;Wai~Ak3GWGb z4DOF{?{h7|t(&Wg`_cZS$G=$QkmR0epwSZ(gxf@1sJq_7@G`D??ql%3U3|aiUVj(C zMJ^qCa9`uxt*iZa2iz}r_J4K`A^bKKdFtnWU#>TuT^H`C%ihD7FLHLmr?7vQOMhqM z-s+zHcg$lkZ{&IhcZ~~cxL)GE7cR!%U*KoB^tX)b5BSyJ+4%Vt_Z8gV>EbpH?w?=a zb{+O#g5QK8crk8Q!)-9X!2L?@*SWN8!~LPy)nRVN{aNl$#7=*4uIIQug?TUBU%)+v zc^~*asK0J5$$9;y@v|p>8G^k-xxX2IAvl5SGTa9-Ukc+ceudHBO5ESUZj!UlI=+J2 zn}m6rE624j{-U_Ga;3Sh#+~8Pn}gd`+;0mvW1fM(8{xOHI}W>pFn^2tXRwoQAN;++ z&A)K}5|{pt#a(~nF*k8la-Zg^B>aEDU2vbmz5XIDjPBpYz7Za-=U~4J_ZoY*=l-Yg zOxz#h`ZH#Y!8dTf4SpE{y>{%zLH%tDZ+G`H&&LnyymveI8}ZiwKj+++xpZ8Gz5Y-K zjsAb6HF{mRCve-7>mS%HcJ`a_x18$?%ujNa<8KqZz_|+(3G+PHEccAF;68+5DEFS_ z8shpI?lZac_e0FfonM*H!2Gzv!`->=asEEbz5Y^|pXAyN^C8Yo_UAi)|HAGOt{KkU z%>5hO&&1Ck;B0y3uaf&Rp4$LFz)yl}fQu=HHw(L?aeEs67PJ07$JJ@>7+W3R!tHbT z`G)gzFk$Wq{9wO`>pslYxKH5vI#<8T>*2Wl8uPvIRQ&9~)#AeLirtA^&p7h{_uCO} zD%an+-ygC>;3c^>a=$(N8h*1}4{?13KXq^^_P2BY2>1Hiz_pvX<5{?Un)@W~pCyiq zxb$}dd<(ljEWC5D3;urR?!W8&^f-rwj`w0elXxzLJHp+AfN&0WhhTR!T;k&S zkbC|8fU6I;Yq6hWZ0tW@0x#j`MeI+(y@Bf%>|Wz~*o7T~-6HGV=$N}={;G@rar{Iu z_hSAVSCsn=T+eX7nrj#C&*r+7`xt&t=32r1#au01=V3k*>hBPEFy?dd-;DV|?t{N; zxIYN@?YORV{^iCr#JdeH$L=2PyXD69S*}%Fn}|z)`@u^w=kW6x?)Sm2A9L_m;rz+` z2=>=Hhc^6657*z3-0xK6?^E2DW4FrL&EWoPT>ASqaooZ66xTkuAB$ZrZm)5jj@{Gn z3a+0R-}avcnDzHQ?niN7>C8UnYOXqG{+0Ds_}4wZ(ecyx)!&7V)?|I2 zJQ#m#xxViFPs2|?e(%P8zVmYucDEG8*Xz>qIqXkze)e_lYq9%hk>9JipN^mX;N@JW z5Oy`!LD*&S8*$;gU7XHn@F(oX5T=ytk6hlCgU7e@FQZu)zW>j19vxdsTQzu(|?Dp$@Ly%y|$g!!AqeJb}mbN?5vA367R z+@I|311!UDDTXKD(!dfvh~Eq0BzP`vXLDZ)_4f_zPJ{>YjGtq7Irpz&Hwj+i{JacL zz^)oUTD#C+J@+Z>C&S<`+ZLA z{DWhFDTL1u{z@zkbkDocrDI#{c6Rr_=RWM*FTidm?#sE}!~Vxyr*Z#2@tgto;?m!I z%o%tD{-1Dm--YYB9>q<6Z*g72wGz9VWWnF(x&JZO5ZCkgdlru4Qc`*_AM4Wef$>dS z!~Ea4>+g5C&xO}xehGe`E6f%A{fwKvak~&yBX|z?w_-mL z^K`Bz?!#QKVDA&|R<5_X#$czvm$@Er_cy^F{ONBuN8NXF{~OqVdxx|Ckqfh@du|=} zja;4BzpFs}wR2wu|7A?*!k7Tq3cK3S|#~Iw81pmtQ53UOQZs5}2*Dbu8 zFyDdO8fU))_xk&(Gwc2rT!-t1zcOck9{1zivof%ea9_slFz!#}dey}<-h^Tt!0k5d zB3!R>e>{E$xqgcIJUAA+0sPi;9fsX$*ad%A;C3FD{z|xdahnKtz-}^}3y+6?f`5Yg z8^`r)%zGLWIwo;W#a#S%9d;A2`!9F_m;N3w|I%iQ{C)+uDrX+geKmfb!#u~O@ha@* zx%<_)?TFiSuJ3Sv7F>b*WAHCff5*UUFzfGV_&Qvn@cyvBY$_W``2Df|RC;icUmEq7 z$E!+=pN5n_kdAf7(&<>#?@vWzeq>!Fo``fNV%9^`FjoTSHk9V%6t1bQ@z=%DnRqHG z>oRM-gwRBlP5JR;JR6TB;u~ZBx_C5}@*~m6KsJ^pEKiLmyRiwLh24s(u(4d^`$f@4 z%Sf%?7_Rp-sqXChNIK@HW9yU$9F&YydXew>A-^e-&hore($8eM^&?roG?B=aX2`1C zTVh?=RNBudIi)#c)oMz`+7x>&vd<;^lBxAc&u?#RYOQT-C@U-L@Jh=L%PjIMo0m4N zSr)EqTC=3S)gOqYBmFUQNAga}#nZ8jAMw{k61kZ3-ezOkS}?CPn$bn@{s<+P>?!j~ ziDO_O7D;DRoL#A878jz$zMDeM3}&*iet&&$ysOubXOdI1zDcY+^ZZzPUChr6M7m;r zHyN*KYzbwugNc~mnM!5Le7`nHK_wDA$zR&sR^?}VV-#*zDwl{VcrKBpI{YQIb>Wud zTUx1rns7^Nb6d5F!H;*F%&D39(MUGJ^ZgW!VSPHD&Bl^`=b+z{&UJ<|v21R@pB4&b z`r-qj?o4PPo$4e=JfooGtCxUXy|J#onSL%q8sc(>ML23V||rRo)*N z`2RsUL{pSlGL`i+xq*QcZM?0mwuV-d@#UiWk8Ox&sN1GQEJ9&s24Y?D?m<5kqDS<^ zvh)@1qcl!+g~8&0iBzi3PsIDEfutW^QmgiC%NAdY{AHCb%l!JSZOys&Tnx zbGWj`4>vbAHd}LRD&_Y_l7l{v%=O2T*^ISE!q8PsP<8#_jxG|9`l$iab3-A2YH8P0 z8$cQDPUVtO6UO-{bS^rAdjNSV3WkVK?^)zcYie#>+FV(06E|Hl$4M*OO{N?@!b_t~ zMyA(vg5C%ns53@urod7?NhC*_(iuzmYfCdzjUkhj;EZ?2yCNnR*?2!9CK@U& zudx64x?7b0$1lxzp-_Eeb2t?8LcO+d+e2NZulenv0l%r4Dp=Lg;kT>%&9ZWfKL^HUi*RbQD`HqVGQB?(;1i6J^a z!dEU?5|9740)^S;#8f(&E=Nw6uhqSA>b9sXmY{p8|> zV4Wu37?znnBjq(N_(?`0I|xYB``zhOzkFoqjxKp*xi_|9q~$;)lNsnuBRodBr6cRH zM7sCWOBggLplGZsJxIayM;M9HeqU^mYT3e1+zvBtjA6)E_4N7c>GTA0ylv|{b zuc9YJ{3=8#no@+c2a3@s?J4gxvPo5WRkJc)Rc&L-nwqxyCcnM5p>=k-x$p3*>Kdz; zdsUIHz8+c)1sU&;^u&zPSB5nMMt*28ZK*es>7|V`pm}e7&Jb`;0A__-_$#pVZ=-L$Ri0RKfD3OPm_V75E{Px zE*c0rpJWkPjL==@ES&E*RfhdljIFukKsvsTlIp>+Cl_Nh?Te+8v4qPW&mBFM4GZV5 znLqb`5(kQ=NrxU!EL86&NI(!+0ge1pzCJR^qlTy$JqVJlvKf^H4NR?Pi!yMob@60w z!>CS_$43UmeJg?0xlI*ijB+?K_S(vijNCYHCGPs#rk1TeS8n0Dt+_Tet_(LfRd3C? zrKz&Hdh2;w)zIcotB-W~WNnoz@9BPTyp#4t|8xRyWLAw2ioXnDCV5g6f+59D7R7xd8eQYOIQ|ZZKy;KNoI`C+Br`LE%(*xCX6~YZ%&Qo{d(op2@i9p{I|QNTafh^ySz%?yu|!JZ(Zt2bTUlp( z8$ZTQgP9e$xzNUr7njtb5^O@ES zF#Mzj25q_+jz>#XkuznKj7HK-$&9|LxU?W3^-3X0%aW#+m6d)JnHfu4R}FdH8ge7( znz5L#5xRjtpD{AKg_nU~*jSfJNFP<+%lwuUw`d4CtqJr;1~p#v$1_qLjQUFbP_#y0 zaVgR>6R8NQNN=QK-u%K-0?T=`E4*qu4jaYAOl~vTbgs*cfJVdVL>FSd7?mc0mJsiZ zC*s*bTPbELt>-tk@JJg`1l1yv>_g{Y7f+{>n%!cPVjxwG;w{HA8g^FuXMIbfHf^IO zyrQ-`?BKT}wOVVnjM6@1R;a!8_@;0Nb3Lif)+6Hzqaa1Vz=`OxN`XHuR@PJI&%!h- z6OBv{Jg;e}tS9Q)W?kXx*2d=JS*&WQLcvSKn(bOtw8JaRkZO$Ll}({CsEI4(ZY9aq zDG@W>?Ppa`8jo~q{Q8~o9_+g#S{AbN6S*96GV_o%QER`(+MgnSni)mV;F38CE1O1H z$y;V}owAorf(0|Y5y$W;&IlJb%W?MWBD8faA1Mx7)@W^}K^EH-X;Us0#~VQXn9n#UDfh6!zGwAwbVBi3@o^rQ8wSboUd6fV(8{2@`3G7Xm zQ2bIXrMwlK+?0h?T9pJ+HeKS<9MQhd}oBQjBK!Q2#=%rvp#DJZ>ffGwTeQOm{AkP=_%Ivo2af z8SWR(TGH}fesC@l!RZV4?Ur+1mj&Cq4J(_!H zFw?|`8`kP2_$8mQ?_}MiKhnn?i&vC;cQ>l2mQ>7WiXhY=q&AGUPVF?e)HK<_LCe== zUbtb!ippjOzug+GST)O&iwLh3AC?=@3OZAg`?P#29yy4#Ec5O3O3lqI;?O(7E!A3* zR^6IaJvAt#PIwh7bS*7N@SbxdVsbs>8jBZIq3T)DL2)oQqW#-I~neTuZf-j>>(XVIPkxI48 zwgRJRTSIfWuC}s@8JhYL*^Z~p8a#5Hmc>Runm!jLw`Kv2XHnb85R@qGvd|Ybd}b0_ zC5UCZB8+r_-&urLOY@ssTV_?aGJu8^*k8S*g_Vy?25BE<*T!0shvhX@Y7A;?f!Aaz z-H$$FC4u!=Se!BgS7}E7Ap$eg^Kp%coX&@?uiEg!T7XuG(a=pPnTAi!)yMOT$*dBD zwQZyJOOeMmm~qg|YQt21uwH5JSy(f*L!ynF%vR+pn1^R%gITvP8o* zv`|Bo^09@N3R7K9Qu}j82_TW{nMrdyYo2D=*cvza?Bg^wqJh-1jz8P4X=|>O9x|Ji zW@A;6x2iBb$2Z}mnJBv1zW%K+_tHB2>c;x|%7z+a;Wmld>4TdE%Qw|;TH4{aHo7~nuz_ggnpp;P8ivVvHzS8yo>45~G&&-3 z`&h=Bl9N*DEkUs{+kJNJ#~SUHncNG@JZ>{37IZ-qQhfjclvejwMWnjBHGXJIagkrX zp>%`aUYhBcS-2$?(xif5v@>li@@zslzxi9|*CvLZEx{&r&xrU~)W&38rDUL7$SUFY z4tAyyU-ebZ>V8X`TJ2E7&Ybj1)M&HeBe|Z}R5D0U=^VsvEETX2O_|?@9+RRK6$OxR zpg<8D$V6$Ul1cOhJ=W+v{tSkgNYbpBqgDhvMaG+v*kyjBL{*A@Rd997KoRSM46!_} z%~&by5_}{~bHx~oDiOA)XmVy?L3uP4;I!antZ0_`wcWmMwD@jj=%y>rB-I(Z4FS+G z^AA?pZE!o#8mbd9CQh1Po1(Q+p%f|LlF^eG9O$*xD)qQ+hALYXKnPM>*;k+BY>mN+qqcATUao?! zK+*T30ZK%%s6EB{FO<>JSW+vmF~6y5dCigvirY$8Gf^z_mP+MGcg?BD&ly$B>c!R# zIUQ)2+LSYvMo&^UjU&Zq_q7r3OW8^1nw9aiALywDyk&t(W9JYvwKE)yU2Zf&`6)C0 z)L^vS>2x2rcpr%2{O+ci3pfoC<)Ytg`p5g(C(wk;j6Ni08G{xbya5#^E0uu}$?mXp zo2l5c7%kXenMx<3UTuw6TVJ^}yr!wLby*;^TD;mMvr6rS`YY%_MMfrfS#1H?CTH{p z(^m3J#`tAiK`(G~)-qXWGu>7#kmEirqd|3K){v5TV)%j;RC@Y1qztD{`}| z=%tdR!9&nXSj{yG{0S$Ya7y0Z^+E~IBHy+dX{J$RnU3|)li5zo521=B#TK&$W$FHA z)!QaZ6FjnA#zFe!;p3|sE1PT9aN{ixG&L>c&?`7v(bXp{NFB&1`=nCSOP%uIqHWe` z;!)T}a~4h2wT0Dn<3-h_wnAI7=KQ{jJ*^_u1N{k6L%(LR!W19fu?LkD;jV6K6f)zF zPMTFOMSnvAnE140VUy|Rs>aq9pya9B$a1~|d#b%SQO??VGA?TBYRJyc9_r!w1KOrg z(v4OhbR6f4UZ3C6b+XW;dy!2m&Z-oWW#zt#dPEVM^pm~}^L9E7Bf{{#&frnSK7whL z+YWVJj2Lh;u_9f_JV0)e#bl$KMi|si-kVkVx3&UPrzN5JbIp#m7F^wuk+C*Q+|gYB z0I86-n${{)*3RgbT(!8fg^k^haDCmM7Oq>uNR%BOP))BvH6?#K|AykAU4V!hjkjPN&0-M$rY>JHPM0;g< za1S*b_h=I1ldU(g=i!(h7FJW~o}P zZT6I?T`h6Wc~wWNr&hGGh;K9~<0G#{yXq#|Bz@W_a#o(2fQ&u^G*9Xhch-IoBob=& z&=#6hzOt3zL`vGeIcjBBB8=Luo&1pjO+#b##b|1o0ai=Y3mAOSzFZXMnehS58c>6a zhxvMQ-W4g=8)5y5d6lz}GPlUrX(GZ}Ki0~f(UfhlaINzgDEHlQb?zc-1;7HWgKJiX zf0LAOf+HL)%R*+a!7MApqMS*UR*(tmPO9G$%0^AgE}dyLWTxL*S!LE_(fQock2Ga- zzCju@OXa9<=p&WM!S&{(CdXuAqlI!R8jnytDw0CrQkT$NzaM5=k+CVYn_2$oX)UB{ zSWHdY9`LKP=|pIQs(Q)n@<3^rX|21Ab%l|%`Lh~4keLkrwX#NAKy&QULY$s$l_D0H za%q;e?D~h9Eur?aT~P1#gYs>uByVN)5M>uT+6c2Rkm~AXK_=#N&y3cd?&9Hbr>fg> zIvQ84kds0kWzv}@t>^PNYn@00x2&$&Z3OEw%sUO=Y{QsUk-`#)->x}QONZCcR$mov zUemZ_O-s1Cv7x5LLw=bdFF)`G8oxa|qSeU!-kzCE)GVuR3U*#d=0Hko(cI`<3z3;g z6AEBf`?%~yG{n}M2|EohIFpNK>Fsz=`PD7+=FOSUGj+Zavt6Fa8?ElAbBtQ^N1t?2lruL!7f|fM z>yYO3ES2rqGpf{Zlb7E|EX-*&G4R}4fH}v5z&Fh&zc4_ZsL3=nHn*C8h99_WVr>-t zJJu8FlF-!@P4f+QLS)i5kGB;sW|%DU<4$I?vceOcuE6p}8H?S-5V$HI`QuskuIOl% z*Tk_^X20}KP3Uw;IX95Ev@3%~aW&H^>W(Q48^`&;Y=-i~lgL~=>q8rZ-Jlyzf}LzP8D zxM?3f-%Rt+SQ=Yq`fFoTDrg?{*8T&QaU{+U!pt5Q6|xZ(|!+5TqMh z*Pu}aKFlhRQzKY2RDfXJFz}+4VzY!5@q2R&`P47(%4h?{Ca}!YId+|<@RK=~saYE0 zJacn+DH~BfFJ;s=EcJA((CT>fH*%e!qzOkvzB}oyZ4Ia6>D=^I9VHr^qdOloddQKE zMIjfODfs9CN4OP*Gg^9GxM3+Pb!KHxDKTx*smIQwEqXq#WBl%_Af@ z4cMMzXh!Oy?G8I^owp0-41oo*x9GG-pzAADHWE5qztth>lv2?oFAM!Sts|cDZ8m-o z^JYXaYi-S1E;jq%{Z3-3iz#Elc84iGbc^O#HXTR00 z$w+b8*yb;BD4&D=+M+essaV;QR#HLCSQ0@I)0S*rl&EKz&5CG#=exvf;lve!DiFPa z5~gLjV5e!=KtIzIpjE8hFmJRPxMi~-Rv(AzimgFzX zvEg+Q)~};}lR5HHZ|0Q<>1@fg*^AkHnyG!unSRB*xr=+_J-xb{x0qcxhC>rPmrY4@ zclnjY>r8)k#lpob8OJ!nkdLjKmla$jyjI9NjEtu`OEA-4)l$=H(uxrY zsK?-g2~b_w|G55w9nO!8wa^099@DlTo6c^ZI^12wJF-DLpIZ}8N_^3>4U+=ufzc#T z#gLZf1r-~OnRLiQJjP+ak1CMB=f}#YJ>y?2BZ_+-2UyJF0Y#8W#9{+lf0O7SF zN2JLWoPvhOTpKORY1uYZTAKp4ommT}7$&sNV=$bTObeRD;&~Yw)Z*FYz&4Dz<%=uI z`>~umd+{9IVC`CoEvjxrv-V;soYpW$v{iH397U^FicKGgpu2UOwV7lWE2)7!E9=48 z%))CtqdAfxwiQPY$dIBfqS1nx!#KS0<$9KqQv67*FQC#Vd$PSF!sl3ZvzEN3Y19WJ z*6o0+fyHS+B_+qFa$0u@4ujfb4eZ3E8Ewo)43p0u>ccH1bArkD+b9q78fY-*78zyS z6SWN#jM)A(J8PL<=9@g4J)(jmOSd|IvVorKw%}E7}_8dDU01QICvew5hp^E5GCP5q``%wRt&4XKh_Tr@)xmo7r+P zN#lhtJL$tp&EAfTQt_>S7g)_L2wCt}?C5rS0xhS=$z+?TIhLyhI!#@IG?_LvysUyV zFZn|a`}#gI9#?K~*NK#tdvy3FLv`FC&U%B0O&GU9B^#GO`1(=Ax)FolX< z%|jbw=BcK$s!9v~%{kE-z0~;!r_EU1pdA^)k|denX+~Hh?;)IbJGra5y;Qj`b*}L0&D-@P@fW z_f&O2Yc%JP?K+3)k;QVFEU-DF(rDwQWcKP?T2?kT*Eo|or^88XEgjGyW(>@CY|=|Ut3Z#a*N|-ZOMMq3#0xt z)$0kN}!CeA? z=k-qeInE3N0< zS%jJTQgN7~?<+XXz`o^MG(VzQpwF(Xt!Z7hVOh9#=`yCbD)iTxqAz8MRg)J5RRs~OJCmYL~% zS$}Pd*&k~P_FATz9=f)%MF$&V>8Wg!B#lZ_rtnj>`)>-LMebaWtk58X6VckQFrWCz zC398}@-u99Cz#@C&QTWcXB0K>g>;)&H_Rcp_E1Q>cFE|bP{_7(PMK@!T-#7trxWMF zy*+B~;lDpRufvX)HTIh)9kNZPLQFV9b~l7@jCe@8#pb;^bC%UF9CQEppHXQK#WsbK z9l`Q>d&r)P)f3%aewlEM)N{X`6#?VADU{e0%54f|On8#Ro=(=DM=my)1N0rfhIHcW z-4q(w6iSnPoxW8(M1p0+*=W5%w*CGz4cw@Qo9q;OdWXrQ*RH0!iAry4sBP_NpV`tB z4%ZL@MVWuAIWP(AOD~H}`^y`-v4=@!`Q%&(u#x4u8F!m6ft$PPVJ;esxz+^Xt~C{X6d!J53=MN>gZ<* z)f+-d!y~I2=|$)|?BTR8vT~2_>;#jA#hml^+U-ha$0BTXKA^*sywOmh?K@54^{%hZ z!Fp@$$$);1W?JdCXE?NbVU@78dP77~aWqH!3IO9zl2iO%peN`Vc5gmnzrP}(5UiV)gl}Waa3m)tTuCVGv z&&yB3Jr>1Sbtq(16-HKukC@s5^vtZpEJvu_ddzir%PmmyY>AOqQ&`rmpp=_gmpzPt zri+SeJ(xG5gX%8|Xc|UQl@+}Rjqndb8x>xmitG>zb{i<4*ueKFEH1Jxvu_{8Twc?R&agTATdoSY-YPOAwoJiP)K%UCEW2!Je1zUa=e0=;9V? zsh=&vxt#(V#-B!&>7{4p!gQ!u^yulsyqk{aTCvMazfQjCGexXVprPcGS6m`n_)!%W zJC7)Rm4mUgQ&C=xGsnU6J!nMW{8L91r|B=Itj(deu54m3$Wh*@I6B@a*YKmNGmk@^ zr;=<#QL>oMu@YlFq|$NLrHmwU=XryuZFeT1RsTm=EBXxDcP{Im&6=@dw_+!l5RQ6a zv8#W;4#Vav2Of=0LsWi*QsYB^FmKLjmB;DpdKpT7tx9QT^`;~F?RKD#Bsy?5M`bjD zB_EY)A|Y^slUDp?=RvVWhA6g#=Dt9`>!tXay4vf4g8 z5L@_ELU6W=5hF&vhL?5Pel^Z>ebjXw$vhUD(8VGNC2Ei(3M?>Z@W#}V1xjT$$8?q@ zLLD=}-n_(aW?=a3LhsZY;{EZgXNC{cTno)Xc3NXLil13<48B-UnzL%G7d7gjdl9%U zTw@NB#XO@@+Sa1UOwpPs5+X0R?b}LP94M%uZm4B7-n#RBg?Y{oyJ`1S2PcvAs zS*Ph}-3l$kvk8<){Es5)O7k$jm&iL(`DnB#qk)fJ=%(S)M?7Y@F+N19LNSMB7P+-Z z_Ln#hv&ir2kD8;8Uj85#db>T*px)f2FLW&BgPAg@D>gO9nuRC|6YH^{I3M4NepTbjxH zGp~lb_bH18siG*&2x;`D7-!pKX@40fZqRha8N``?-ODU37o}Z8MsT!-70G;R*HgcI z^F&jS;59nahfOisrKX-#ih~WdkC*8!8MSYTA~O!@3tsxvsHe4UO@__kV*9}XxBpC%%r;nmU;c!SBp*eu6A$)?|EkqNgED@P z@^s|iv}YaLU_AvfM5mkXzr1|9$5;I9^niT_Nj#_UXk}9`(sNQciEe6Mu=MN+ z`@BeyH3BtIBb^Aa-;s4o4@J(*_Ick2EzrI}X;+!^XD@@v{uXZ`61iOj2r4dbVH$^d zLpE<^XZ^vVhm}!kSa}bo`I@#m+*+F<$j_cw-ltYuRCF{1Gnxg-U^!h2wRRjG76~Ji z-AeWuSOf3+X01CA!)T?VvbhPi5bcK+hs9I0Ecp>R*;uO=W4w5Z!QY6hHGH~KpA#rL z=UJ?#6?Nh*hA^YC21A6KF2pk4Fl!yK-ona!PX#+ZGO@b!I-C(l1rKFom@Kf@7>EsMfRsIZ=@B zX5TJ8ux_pw+|Bn;QZXqF25Lwli~1-vpJiFE(#wmhV6eo>s3}(Ib4#nF zU&A<`H!0Hnj5zYP{CE{gKw%_Bk=6GCOj--~^F8i~zv%F;NhxB+YQEKcGNewYN@*R= zs@A?;T(D@!^>5*Y!*smTyQSq|ruifnMCFSG}qZQC}Qi+u@t_{6|SZR4slA9fE*^YSu} z*^YWc)GP_u13$s5i)s_COIm}sB)p6cHRg}Snsb?aBCB|Q;kGl((M*Xi8i_O*n>cm> zeZFeKsaq;X8?l~j?ACjvKaLnN@+)s?hoHPsYOx7X*j+bcmxP2{K~{Gt+nOKu66@Cd zl=(I8Yg{z!me!iu1``qM_rud$)I0R}ErT_-wVH5hu$)CNbX?_w_kw6-!{d{L2rAy@ z-{f=HlBH*d3p)xFI!Jy>?&U?%h(aH!`>NwA4t;i*Gew;HL~GN6G}4ZLWLO`e-Ju9G zL1fM|(;P|SBgxXM%?JD9XaQz)QtWvVW1j6M4oGpm&79>Uq-oCxLEd9T;mHfEAQimV zI$SfCXS>FMFfcNP)eo9y{zXB}Qcc@4KJ7e9^D_iMA*^W`wlI>2Df0%BnZzli#$<#r z2cOJmYxEpvhCs8dx6Ps=hq3GBsqq#ho*(mw3g=w2kX>L>}h2{eV zC}N`pl&jg~z?E$1V=IO9nkkUf1^ps}9%8;>WnSVg{1C+vwAoJgRVTYU!dF;=`75!S zw}*m{A{mP{}6=kkz`sRVM5uR%o3hclc~=;^DH zLEA5yKdIzBUb)fB26PzrwxiyaQA2R^865`69KoBg-F!5~PR;}BvWa5c=OD%FxVR{_acE%PY)aE^~Empirqj}G+6`D3guL^t@(x12L z(?=?KmRTWi!AwC0VNgg&m({}aq3qhS>0FFbMNin$p`;MRoY!EcVG`vYA$^q71NuN% zkV5afod4+35<+1@F6*7zxF@e4?kbv4ta-KsMMjjSksa&h4NS=vHTjh>XEQ?;Jtulb0$@>R6sy@i938l%~5 zJ&1YZPSH#I(YLdW{xPj-NdydXYuYY5xY?p7-NA}6w|r_OeIPL98f?I866>p&+^pP; zo(j*0JM`h~DkcmC!LLl`hmVgQ1xyqgcg+G8;R-wKW@uu|q?Uuh#e3^YMqyyl&b&>? za66@;5Z8a+t#3-FPDIHF)kZ@r>`K`pb9CFUC@ZfBp&rgDvF|X2>N7p@XsC)enL@28 zmOT0TfEKrcPY;wdHMWM#_i~x?hH4^NHdZRiXCEFaUl1yv%YlqV<%iEGuP86aW2l*N zLM!hDe|TCDs#xHcS1c+opHV&se|4OA2nA>Q^m9*P_GV{<{I6YQY(v)ByDiK0S7xu;qM~G?LtWJ5r3#qw=n3EZr67(~nUGZq_ys>Vv618(-^|PQ*0qXTvf>_oavK z>mRyL4(^A;Rv<@sKQFTRnrP(VYqFbfPj9}xYxC{cJbVqMq6ha!qML8`e7`E5=!xrb z-0NqN*;15c zArkp-b>(YZRF291xQVL0B|LO?xFNip-Gq<)g)zq5xKELjY3-qIz9yE|oV!2PN3PPb zzIghhexJ;QE_yC!d_69|FOpEvma<==9}3G-KXgr3_Q{^jw-4Rm$0;+uY{n;q`867v zf*%>AlK5ITw@M5XlV~b4$SOF!Dn=hAokKV9?h6?#^Q&l)xS5TWf z5r6oaK5B-n#O*sH^dsI$8S&F$ojGz%FJ*Jek7eo7@r{WX?IoU$^ZqEvg?)zN|O@_t|*HOQ9c!Se{7KN%9~=!F?y-U zg3{_!RL58PEt_xC@3C#Z&97=)-Bwp$*~0HB1!?4DzQPRMu=(~ra%_@YRLZuoP-wP{ zZPZ(oO@`VZQ8pv$0l{y=QU4^pFTySdt%1q6w#!^Kq|z)$3+$q?fAC(mbTS(ZJV!dbH7@KZ0WbRjmz8WEBR5bR?5}d44uu7 zqjg6%CL)?aAsA>vs4~{EmjzM#V`h|fPu$*0zGxKPXqqC;wU4y>rCl~iCq=@H-v~3M zNzK*xQ5y=Lz{C0iiA%8+htCa0kc~yZaAp%b-EXmC)ifk4Sc-q-EbvvOibIemUBAsg zK9%55AEJ$FGQV>c&a#PQj|=fbXDtj%uA|2L_`;39kt`4m0`x!p)ENi4D(h=Q!+-3| zwq^a=+0bQ(J^k33vEtXx3_tPDo%PY$lKr`dub~JdH0+J}rj=CF%KzZmNBA>su*7rA zb06W+M);roxd`2lp1Dp!DXX^|;i`(nu+it>Layjn&}zb)uMRiU#mx_)ab8fT|LiZJ zg@^qVS~&k(X!^o`TSHrQ8;4x^I`!t;?602<7mMMFLS{<`iPOblRbR5j z*b)NO$qaz9<2Saj7#zBrQeez5%7F3Ad00;0DWgT2M^~iJ4Q?C}(a6S6Bb0edmF&T| zeoKuCq}d_)@;M6}DH`4h^}CQ8EU3h{?y(oeYeX!SlrFDE_fn!10_A@9MwW*tFUCs^ zah%OF;slW*8OKosjj&TWhC$lM!_W=LE+-a)jQV{vItD!}RJZPEbF8*XvgrIsc7{wh zb{EoMhgb;?JI+%aNp-&rB~CaVWTdYd`CY24Ff}JD3L={^9dYB71{FV5X`k7bOXuh{ zW?YkmdiWZn&jrt;Owd=6NbbSGkYYt(p+xM^Y)c`YV8%=t7ClA!UroP=%e>9Ep=(RG3LI(aIJ-(O<9#zE zzn-P9omjnG57qC#DwsO1`Gwhdn(Dw$QPh=#>ibgTZF^E@$w#5iTkve;wdu2cseUwQ z&C=ayKYXULj;%8)3(W?7rAs}3ki`u%J+ZC4G=DXBJ&n%{^jcRJzT# zUDQwbp**Yf79_XTn~+&jb7>P&vCIwHIcj^>h}>Y@MoH#}_MC<)9UtY0w&O;1T)j&D zKm|#Vx@**I3CiVm!EL0&&{e#PAT^V^Wg zB3J+Vh_vUGN;^0B$fOs2nst;?_@Bj8F&NnE@D>^xI+m9DI|EqkTFr9^;>-(4w zD*T4uCkPPyu;0fFGVIs>K4zFnp3{$0SLmd%d?YN?1%A~C&0N0e}*J9U~7 z>*G}Bh~UApQ6EZToDX-gDP?|D@Z;5P{$~Y0VeO9cdxOJr`3asL{NCQjEL!{Pg$?%e z)gSLM`VqlT(l_0#%P1Vufte<=)*1ACyO_WliuvinPZF=v@dX9W6^BIk7|_-MP)GF#kh}3!}@8FQeme9()r!|!Rjt7 zjs*oHQJ&F)En_?aQ41|ro3RU#PRggfa32fj_|=*tYk|^N&>Hc|FS2RDY^oNhjt}!| zM=V~Zr3_2e(%>O|1NFsBC)}EInP+s-z>DHF7NdA&wz>H>I=1m^7s0lO$|yN@8f0b< zijB`cL{Q${g6Xkf_+^~rqwjVWS`S@TEdiz#Ct2g)fe=TnI@ z-$LTR5yLMU4oVV}oxCsm`B%Gk&P0_P^g^xmk|>hPa*Q8J6Xlxf?>=v107({*_O<=83NtCLm)Aiqq;Gc*pSo^H*x#r)Ev zn~Nlw)(#nM5>q$_?6ONsjfKDUun2J7Y;L3J0an z$E%$xuAioM^F)N`I@C;>(9qos5QTw%ULF z_Nt-F>V~eWw?6?nbX9Zk6OhJ}nOm}sVs&^*#VyVG(=_GL>rn1DAdT-el{K|q&F0%y zZ@#VJ|220myLDVynvSub;ta~5-DxVFu12Cuh3o=l(UL%l5=6>KnIO`%NJ}hUq!vkc zk?=gsM>R9`UiJO|T5HFS!$Zkc-39c(7Ei>E9Xs}AUH*0Za1}^nM5%5h zQlD0nSoxe39XBKVhqAi}Q^Oc@Yxw2QoXB7Pjiv=H{F^i~X;uamk0pMd8hp8ZLwQI+ zG>%~q_nq4cp`C?mNvZ{*-p9zI@hbxZcD zUX1iH7gQ3u6st0|mZ+nZCtFL`Zv0m5O2M3zqNIDi2*V)8wAvrLtUaHfR$_zV{8MfWMeQ zk^87oX)+6C8(GbWj;Phc{WB?y0+j-g42fad=-KY+?xA+D32X;E&!zt9TL1Pl~Pb5B6kKeHsRxj1cl34Vd=ZnV5jX%B?NQJK*`+fH_Zt+;@j(3Ua zf(z?$mf-yjnCeT2Q3vywR-EGAZoyF7a-4IGjwB!Aqv8Ql^pBWOnF`>Q3{tj0dCm)d zjio4<6J%wI25XqGR+j7XIUH1WFV7t4BNS8CMS$)%NHO|)_5d|7Er9TH&6KBVcE_wv zd}oO_?gjUYPuG|6`A}U=qcKSqO#@Ep$8y!tSs)KH(PksQdb3Mn?iwjw%>Gy#5`6Op zGn7Nd%Oc+z9zEGwc}N)l)lYycKdr59T)pMm%GTVq+4h2qQDIZIB^*YI`7!z*F2GRt z;e5uar|iF=@sxfb!?faIX?8|&03d|3ZdVbkoDDb}71(|uLgyy4C+fZ#r< z%&y+Tymf-e8#sfE9Am{udlqRdbR-43ogZTcwq!akadSh;{cD&%w#P}DgL(es9P5Ut z3l*fnM&&f^Ae`;h zw*@5CTO=PB?dYjC8H1zn=H#lx21${DpU=>00q$-MQIu066Js>0e}Wgp9mASo`9~0- zLgx~u1{n4&^4zntj|9Btg{~533JljLJwbVaKW1`@jgXcCbEU^*dU zn*+tg@gtR<#nU~^2^OA6BqNTIR?KwqcoxYCM?x|$g(}Kr`otI76UpDG#5koxH$QF` z6`Fucij!w#3mu1yV|F144mMW&Tzztv0-l>lnyW7Nso!73@2d6bM`S|sACw1`_Vh)* z0vU6*_UPf$t*3cmbVJzgD96t5Y~`B=v#qPQj~U9<+u;r;@6T6nA9fW$FE3uP#gvig z&dR%=)>k&}J^1C%RS1;!JpAsbDhG-*Z*f5qz2*rkH1Y)d*urDb`4hmEupL^Z3#qoO z3qr%$F>sWRLbt6Kl8aQ_6NCz<6=UTxN6TqPP8RZ9Nt?m(chqjKRv}Dr)L9Ra4)#1|QqCa{{(U_n z1$&Qqk^PDFdt>r8!+iF{qL^!n`sBdYcytL?3-6rjp_ZK1p8w$H~T23rdz@>3;*q`CuCN_OCV=rS?UrO{s+-kOJ zzpJ>RvLK=#-h24<;rNk41_FYVnH-+A5wSe$9^vkW!z-TmwkRiG?`o6Eu%?N{3(v6; z*p^Y?kA1D`k|x2;Z?X@~=G9+ubVBmO!9x;?reF0u86!cwvXh2jn34`5aI7`7boi3m z1AW=jq)8}EY#ejNUf_Bt6^_gNDrSoBfIm5{JdBKE0D1whaM zsry6Y8=Vx-FI0P`SUaq4v_MPdZA@)1VJyB44PXO$cX77Fb}`G4!t;jY4iq_HaxZp= zHT)_L4*No=rsnIEOt_PSkC&5z2v_+5jAwbtN2YoA>o?WOx6;L%A-mV?>qMWPwM1@>Z!%IH9^d`q)}TD_9pC} zv8r9-H5>t=Z@*ro#XMm3e9}<6wD|nL0Vc#JApH6u5%^@vL$g#Zyx#0)Y%c7OK*)A<6UY3+|?a*+&lArk+F01y-uJc|*{^5{ z1Ln;B10<$7JwR~kU6VSpP))dmY@>BscGdInzzByU$ybYRz9vJL<;(>)CGhl@>n;7F zs`z zQE49`|QMqx^RvBDl`_i zoa07w=fwcjNTfSlKTo#gEqQAq(Xg_kz$MKH$~TVa|G|3<@&uFaUxXb=+Q%N;8+_@8 z_w@U#o2MIEw|O6(@h}Wojz5PJ%FG>9DQIWmi4i_F=` z>DnkbXcW(FKj%phQcJhR=g7eH=A$T}djkP@XyaVIXBd^R)PUx|)dd61!*F5j9EfZ8 zLi6rDCA6px{;%Z%)&7}?VKLfbD^+B7@72}McBr%Bq#Y+{6*_aNBD=r*Wj+4^uNW%C zF;slnIdmY5B`>VAn;ymJ-voBcJ{{P$5n1qk6p1L7eXx)U@0xU@4K>>28NcWrRsoK0_BVWY6 zkl|8NZZvt8UOM|BlW!yC++E`fJcG0w#d=peC-&JLD)u6Qh4nXm)r)}?(sLrr0rSWq z>+!csj2~&%_-wYhy7q9j>440Sgw*suU_+tK0eH@k~3WW~- z6Q2~`oYEe&-qanI3>X{oIyz4fP_{LHV0W?efT9V(g>}}a zv=wuM8-)B@JWZuZFM(K?E!6yr-IvSXF~UpG@Xnb&4F#zdUH$c+e00OhAE+!BPj8n0 zg_NW?qjklhPn;Aefmm}i!;tqqt||K=9Y-IbPDG0!D_3s;T_0l0&_CP6&1|h~Jb1YN zU}rn9iJf6{1>4QD)jw^nJbSSDU?6fMCY;xZuGHA=4nE>4B)dE(GmI+?+jLK~*14ce z_>~F85z<=VqAM8T0j&49ulSxEedON)cBY`hkA^HZ+R%*s1@AWd#ho{{THvsBiN%9$%>OTRk_RKfl3rMQ1UG+ zfe*zx!Z`ajfod~#sCvS*?QxZmf_qI|e1hf7*bH*!n9gW;O>y=dN}6v|;Su(9oDv1* zeKds0S#myB41jlmIO2MU-a&pj(y?dZ>?9wIK)zdST77Qkjx%ar>{8@ikPdamS=CM( zHifbTYq?FW<8+q^69k~ugJJCv`ODL^#H)mt!5KJ`EGIG}E0;S)2R05MfbzLS`{TtS|_I?AunF1bCo za!@D7JRvRyILvnp_xAxsE%|7BzSOVg>_#@Fwq0?w;21ZI(eVB7`08y{PFCl%A#+Nb$oUmPJl&xJU2G=f(XnDIN7Xe0jTLyoyM&Tuj{j3n4PY5DR z5hjG$0zFPhl5ux(C}ipo;vddsSoD6dN1dXlW6NWK9@(^bU~whc#VD7&bb%h35kZ=( zkr7H->mTqAhOf(hP+LE-V;B`jYJBOcGPW$?SO5_Uc`>vje&P*NlgMrx*7>x2nlJ$I$;jAKt8pnwdM&jW~NZW1C+t840#^aUK2xbwmmchq`74 zfKJNd?WUn8S3~Xe0G=$hAu+W+?i>+CS0-uW%5@KdIoS_o2$riE*slw%h7>~Cg*X&Ao;i^==&{5`@?rSP$cjIc2c}ZhaQ2xBOhv6O^a{6EW*CL# z&7m}S4M+$tb!LW`QmpzXRV78*Ckis}ML=JB#NYbxR2}YMrHKrH%~X#pRO@a7df;3qHBIUH0V@8_%%5sv`9=N{^NZFD5^~O zl$y;X*Vhr2R5V9n*bR=j47bQ4&EXNL|7#hvF^ABlwN2szbFK~ef8?Yg7t;|7=vpM< zW6fA_q;YsK8`^fHmjaftyNG@^YnGiKZP4*|!D*MQcgW@}F={k{{RTtP50|R%uRpipmMv816iJMrOkBX|-K4 zgz`s+h?dAy-lzw&EL_q}6|#?9dd2B3NcRb=T7)NSKpd$NqpsGIlGQXyZ*Y7YZTSh> z${Xa{i%6)$FS0+nuwBT?QZic{Yo|d9X`eMK({blA5$p^xi_~E0Cx!PGx@JnR<5;C0 zDsD1J2}A<&c2`zFWUhRJg+*Fvf8@<3d|LB>=9Ti%nDL^8yd$Rh%XEg_rLBF z`*+2#+MxamCiH8GL&(|6_QKg}3Qa%3X&U+EFL+KWyusxC1>u%SiajqVK?|O_#}R(_ zvyCA46i7dN#zCQ%;{*IKW-E5tR0(WYy|w!)P)r?ci3X?phfxY!o`(uO>1St^BX2NBoGUNXmw?f1TxQ8T;a zf4}w-3phu3qfTCQmnq^7!l%TkIQ?<*y0a0lC`EZZK32KHg+y^(9M@|Py@&MHz*n88 zpv+$!7^YKL57jxSxFNOQzP2|^USW5nByj4S5Fx7XU-8i5d9ejOl`qsMqDOj=9b~P> z)k!66A_5=|;X_1>LkemTo1S097B!fUW0Ql3wfbuP_|@gXDTE#z23HLd%aQ=rdPFMX z*p{)mB?W__)^m4+6{7Kmh7bQme`vQ=pL^V;)aX9RBHjFp_^smHRO#N+0dSRW{l#_m ztV%pxy``?$67oH=bVgq23lC;?HkwdQ7#|+ED%E{R$}QgCMtv7cftYVmhQrjhV{j_D23Z!(`7>{!Eyj_or9;XgL~&J zD22qhN!CPB*wzw(?yi3Q;LBBuhn&9BN@P75Ri0j7zV*>Z=`)#AjYkkbkxGKoThHK~ zHRe*f4wM!h?o$4@2my*V5^o}z+;XOwofTALACkyFCgdXAgS;p{cYXEndSud0s(MTs z6%^12QE7p+C?<}Yk)se14;LvYqw(vzO-O(ZjCS+}I}5aJE798e7_`e1sNS(a9Iv>` zm?T5UwF{U+ioM*|`{QIOCX^UrK{}lUzM^mhM0nilM>(urmL$o|t(D zcj$ZAHa(5){dW?Yljs#rI5jeTY6u`!e>urVS_&ake0#O;-_)M4mbI`6oLSEL*I|-2 zAX?x|$J`=`XTW1>jgwayy*^W>i1y^Ds05C9-DUVaP2cM)+@4!QHc*8j(L`hGI9)!Cg(MTD!93;TcDiu=A0fM#d0Z{mg_AF;K+EdE`JtRHz zOke1|gi*VEo8Hn%omG2|vSRl3i<^qiiajxE{o0s_y0Gy*?cvBGW1v|!zx2Xs^qd1u z5J@PsOomNQ#F1J-h=hFwB%MSipV&tsyXiA3Oi9FJ9MpYCwZJ$ax~hyWue)rZ4WTej zxwd%{&j#b-@z%Zl*HA~3a%U_wL5N)%j>vaXCFNA2b7G6YuRJ4Q3ms)xQvb;{i263% zU%k8f75wkviah!5V^sg1^DCqPXmcJWdvr5Q2K^zRiP3Gpo0>n{c+5Zq9QqE)MRhY@KKJIOyJlvsKws%e51`e z9kzFKDk1q&TfigWO>31W48OMT%QROv?^w{Z&)c=;_c=S97a;3IS=C2~U_~g>rsSYu?dduQ*aJKuAFn)lvD zSk6ZoqHjts3b|=F0ud2~lT1Bc=cu%?nA`AZVog_n$~89Uo^FM%SInJ@y%C5TQwK{g%>f#mE+1KZkNPq;0E{5a{X^^#N6bmRjkL=F>W#TCI-N*+A zs0tk4<0u4I52dq2V7N=Dzoh(iI^u+=yDIXbL>;!O^P_|WgmYu<`RP-A{rR~&!=^oc z3h@izvEaGk=`+l#x0PAWM~}FJ zzg?mbF_Dgp1pOt_NBX-1CeqBE4|PHqPa%WD-xu-zWcR#IPy?6ZP0Yao|*8Y;yF^uGT?Rw64SGqp@IZFaU z9=8VuieHGlY@A9T06TDam|Woj0{6ffF7a4#STcl?P0U)1klZDI#tCBIa3*-jvNQ{d z1G%%Fl99jV>t|7~eipHZHi_#}+x$OS^giW?%zaC}@te!uD_2N_W-bc*++KcOH$RwK zcYAr?CG0o1o;=vN$2-4|NA>#pv$zUi;-9R#ZG*VE!H=q7fBxh0srz8S2d@Qhh9}b8 zPX~$baL@ir+bVqj`p4xrmGf8q(HU2F>rw=HS~+NP$Zn)jrLSAGWnu zec-bF2L5mj`rpm`Poy0lw(%`l zd9reQr?b;I%}UGDj<;ycL?v$L0)6$rX4tPb*XFM&sFr$<{LcfQyRGP11sD zoPrMyceif`C09GBXwxYF@bRgxCP4>7Gb5Zc1YJUL_5oZLot^O*N9WgX|XaaNhyyyld|vQUIva*nkS29E#lWb9zJjH>7_K6 zR7Pj`Aq?}^f~7C?K7|J}M7~p+QlA=-bmcb$AZ>?euUo+cv1F1?0<*~uV-rSd_n6M<&R{DO zr<#U^e2)hsxq6tWbK~Xq2}*-%=F~EA-F(X(jvGLz3&#=V0l@M42k%}E`hxk1$=qP| zI`@e;0SJAFaC*iUBl$i77U?Y6O`#zVpJ7K2$H|r`*3Hr_4t3SL1HD1@7fjSu={PtU zSdFo(l#%;BW}hgxMa(VTBi#Sfr~as*9diSd zs~N~Zon8%}0wnFoPg{;FyysEeu>5|7>=mM?qb#BmT+{3(aY6jqOTv6LN~7~(#?8gl z(?&%R{5tkoopKZ$# z9>1sBJv&2Z`vbtFMz%1_{_50tIiN*pl1CK?BbL-L(n5@f(2W!<*SiPJ6>}ctN^9cB zN>qod0EH(ax2?{>JbKvgHt2ZmiWmE@01fQ2Uzb+bA3)PUO9cp_l8t+2u#1YnBG(mX zGPw}B>6GfQawvAr)6Ox4IwC{o9(rC2w*F{sWqlw%KNfJv6WhXD(|wgxI}nt?^uAAD zaaj)({w|sYofrBCj}O{vZt1<>vua&cG_b2_wVFIE?FHo&5$T!8VSV+kV)r8*rOs7m zWg5&Rgn~`X7fE?uK<){KPisdWBxc}v(Ek8jxTHNC63S-|i^Br?WQ7`NC@=449HbjK_3Jmgmy|z22r5GyYZz29d(!qW2LuM1^C-5n zk|a45$^93jpHEbFNsZS}xss&}kBBK{>mJefF~`gE~qpoWRI9+33<& zcemI%!u~qBYzUT^!h@C-TaNl30L)k%pboETQLo8qnY%Svcav$8xtffzpT@V5Fxj{^ zES99uaqu}FUm2Wks8XYo#NJsT9dP>Z<6z1^XpQ{!o7&Dn7{lRVAvqYp&qXO0x>e7N zUqpKQ@BcT17nJtk_ytTsJQ~w>%kA{X+k>|v{csQ^ zXP1mNnv9_o1G}#*$)kZ&H$+AdfERKS1hNnhq?gjW4gAMA2kpL~ z0@NSB88@x-c+(S9MLIk}Ejs$3_WyIp$QIx`<3XN{H_C@OsuHum|NZBme+ohQmn1x~ z$BB1Bd-W(%cvSL;4k;wC0a7zCHwvP>q-5QgB!)2{p#}g}U&T_C|2d4oiKt{adJSkJ zW+5*=W=7|In$AS@p}|f=`|E}U@3KoE>VZVK#8~$j5EKz~#)rjB)w?!*9Fwv4*w^N} zQ(si=Cz}r*ZIt=c-|`>h%i?)f3q?8*bA1k| zD&y->YiPlpK5fU`?W0pnN?Z4bqsv#Xo2149U!EThff0WDF&_Kmfmg+cSkNH#6^&U0 zJL4Fb`|z4Tz|Tz&sK(}utJ7;R|KmYt63&&1fml?CJuFajcq&p_K}2>o3DMo#$pK?* zb=BUR$afJ*HU{v_-Q6JV0q(i%*Peze1qoaLCrWNu7zr73Oie;HpE+?STGaSDOtA%r z3)bIwM zjbucmZh)I+@sx@Tiia@dDb`A~bg)%>Oan5V*yf$+jzvMW1uQ;H!2nD#0ObGz>NBb= zYQQJ2PL@w80{ZIBausq;S&{FJeJT%1?Es2ZX$OV6kaV33Bm+Ibc`hTD^16K&$vb5V z9MouhqGKO2Ed+lXy$}vw|M1_D4azBjpT8gYI)&+7C^!uy7$KYW)23QsdvJFAu&yQ?P*Udn=F4^>fl*7y1X%@vj6D1SJus z2(&>QD!UtN2BUP{pt^f2kdV=_=;P1-$G=P_Rf=EeeKxe9#;~-h?U}e+j+aFs+%sqp zugsLMf}^&++IpN>s&y6>4vx2~ck{s*D+B4!NEu}&*Os2Cu!03jBP+z(GY_09?Zrk! zO&t17@th@=a5*X=;oQJB#|1PTnJ8kbh;5yDy?#N1#+XY%0iTA2GjaVyPX;Ha&1qkc z2o^ySRBT`@qQIy)?Zc^$#i9wXU0P$!x$@irZP@DY$say``pwGL$DgM8f!`aCp5Sfu zaUx8oc-g#C?umYlC653x4UHmS+XauG>_09-sfU$fKB!_vhy)9=vn>dPl9xz$SGX4X zHWWc7vn+Wqn!@+?5)PjWs$n19o@o$6jD(GfA_C*<9Zm!7O*jaWDKZkCG*h>)(m2u{wW3eEbduL9!{(*x; z^%^@VuJ))_Zn5r0*-i&!5fYBpOaW3v#lI5Zq83u;YJ8{6A=(QWboGytTdyH5IBX9N zr}?n<>~RM+hWI0eV-C=B1HogI48MMN+W0n7NAIJfNNT`TMXCh0pzQ2TMJ|b2jyywh ze&LVy!e`^k&g?vmNJ4y(&-HP{C^(u`-(E>PWm{6%P=#gtmHU?@MqvA~c*6Z;+m7@B zsXYdW5Y9!~UxkwP*GGv28Lv50wQrESM1Nx{J;Qw6svqnVX z;UHiA(>ffIE1f}c{FHIb0WHRfpMQ6MZ>B^6UC)SYtVq`GfZk|B^!I!HMqpdflpVJy|qt>YV^k7hk~=xUGM%D;!Q3s>)}sd z)TGp{`R6_T2`0Hl``#^9b*_gOm*ii`FQ30xO4p({-zX`iV`J^>`9A%eT&ri1tjFOs zH#Z6w;hXRGQ8lEjtqAIyAGjV*Gc>26P|j64GU@aXq%9?_{ziMIh~M>RLvFo(y#dsn zq?kx_a5KVSzWRc2sMe4S)n*fuR^#mk1A|{TL~_!0cHLIrIv=^pfBf0Xvo-g!Yql6$ zCW=*;zD_DC)Y09BeSz64*vHgF_J2 z0!@xwXqW0ZKHWC3xrsSF+k16>wnK^t1gZ>$2tX%fh`F<4K(8pF diff --git a/thirdparty/grub-2.04/po/tr.po b/thirdparty/grub-2.04/po/tr.po deleted file mode 100644 index 445e97fac..000000000 --- a/thirdparty/grub-2.04/po/tr.po +++ /dev/null @@ -1,6762 +0,0 @@ -# Turkish translation for grub. -# Copyright (C) 2013 Free Software Foundation, Inc. -# This file is distributed under the same license as the grub package. -# -# Volkan Gezer , 2013, 2014. -# Hasan Kiran , 2013, 2015. -# Emin Tufan Çetin , 2017. -# -msgid "" -msgstr "" -"Project-Id-Version: grub 2.02-pre3\n" -"Report-Msgid-Bugs-To: bug-grub@gnu.org\n" -"POT-Creation-Date: 2019-07-04 16:09+0200\n" -"PO-Revision-Date: 2017-07-27 02:00+0300\n" -"Last-Translator: Emin Tufan Çetin \n" -"Language-Team: Turkish \n" -"Language: tr\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Bugs: Report translation errors to the Language-Team address.\n" -"Plural-Forms: nplurals=1; plural=0;\n" -"X-Generator: Gtranslator 2.91.7\n" - -#: grub-core/bus/usb/serial/ftdi.c:145 grub-core/bus/usb/serial/pl2303.c:158 -#: grub-core/term/ieee1275/escc.c:169 grub-core/term/ns8250.c:202 -msgid "unsupported serial port speed" -msgstr "desteklenmeyen seri port hızı" - -#: grub-core/bus/usb/serial/ftdi.c:151 grub-core/bus/usb/serial/pl2303.c:164 -#: grub-core/term/efi/serial.c:116 grub-core/term/ieee1275/escc.c:175 -#: grub-core/term/ns8250.c:208 grub-core/term/serial.c:227 -#: grub-core/term/serial.c:243 -msgid "unsupported serial port parity" -msgstr "desteklenmeyen seri port benzerliÄŸi" - -#: grub-core/bus/usb/serial/ftdi.c:157 grub-core/bus/usb/serial/pl2303.c:170 -#: grub-core/term/efi/serial.c:122 grub-core/term/ieee1275/escc.c:181 -#: grub-core/term/ns8250.c:213 grub-core/term/serial.c:267 -msgid "unsupported serial port stop bits number" -msgstr "desteklenmeyen seri port durdurma biti numarası" - -#: grub-core/bus/usb/serial/ftdi.c:161 grub-core/bus/usb/serial/pl2303.c:174 -#: grub-core/term/efi/serial.c:126 grub-core/term/ieee1275/escc.c:185 -#: grub-core/term/ns8250.c:217 -msgid "unsupported serial port word length" -msgstr "desteklenmeyen seri port sözcük uzunluÄŸu" - -#: grub-core/commands/acpi.c:42 -msgid "Don't load host tables specified by comma-separated list." -msgstr "Virgülle ayrılmış ana makine tablolarını yükleme." - -#: grub-core/commands/acpi.c:45 -msgid "Load only tables specified by comma-separated list." -msgstr "Yalnızca virgülle ayrılmış tabloları yükle." - -#: grub-core/commands/acpi.c:46 -msgid "Export version 1 tables to the OS." -msgstr "Sürüm 1 tablolarını iÅŸletim sistemine aktar." - -#: grub-core/commands/acpi.c:47 -msgid "Export version 2 and version 3 tables to the OS." -msgstr "Sürüm 2 ve sürüm 3 tablolarını iÅŸletim sistemine aktar." - -#: grub-core/commands/acpi.c:48 -msgid "Set OEMID of RSDP, XSDT and RSDT." -msgstr "RSDP, XSDT ve RSDT'nin OEMID'sini ayarla." - -#: grub-core/commands/acpi.c:50 -msgid "Set OEMTABLE ID of RSDP, XSDT and RSDT." -msgstr "RSDP, XSDT ve RSDT'nin OEMTABLE kimliÄŸini ayarla." - -#: grub-core/commands/acpi.c:52 -msgid "Set OEMTABLE revision of RSDP, XSDT and RSDT." -msgstr "RSDP, XSDT ve RSDT'nin OEMTABLE düzeltmesini ayarla." - -#: grub-core/commands/acpi.c:54 -msgid "Set creator field of RSDP, XSDT and RSDT." -msgstr "RSDP, XSDT ve RSDT'nin oluÅŸturucu alanını ayarla." - -#: grub-core/commands/acpi.c:56 -msgid "Set creator revision of RSDP, XSDT and RSDT." -msgstr "RSDP, XSDT ve RSDT'nin oluÅŸturucu düzeltmesini ayarla." - -#. TRANSLATORS: "hangs" here is a noun, not a verb. -#: grub-core/commands/acpi.c:58 -msgid "" -"Don't update EBDA. May fix failures or hangs on some BIOSes but makes it " -"ineffective with OS not receiving RSDP from GRUB." -msgstr "" -"EBDA'yı güncelleme. Bazı BIOS'lardaki baÅŸarısızlıkları veya takılmaları " -"düzeltebilir ama GRUB'dan RSDP almayan iÅŸletim sistemiyle yararsız " -"olmaktadır." - -#: grub-core/commands/acpi.c:650 grub-core/commands/acpi.c:667 -#: grub-core/commands/i386/pc/play.c:105 grub-core/commands/keylayouts.c:230 -#: grub-core/commands/keylayouts.c:245 grub-core/commands/keylayouts.c:263 -#: grub-core/commands/verifiers.c:156 grub-core/efiemu/loadcore.c:350 -#: grub-core/kern/elf.c:117 grub-core/kern/elfXX.c:29 -#: grub-core/kern/elfXX.c:156 grub-core/loader/arm/linux.c:319 -#: grub-core/loader/arm64/linux.c:330 grub-core/loader/arm64/xen_boot.c:356 -#: grub-core/loader/efi/chainloader.c:276 -#: grub-core/loader/efi/chainloader.c:297 -#: grub-core/loader/efi/chainloader.c:329 grub-core/loader/efi/fdt.c:138 -#: grub-core/loader/i386/bsd.c:1276 grub-core/loader/i386/bsd.c:2116 -#: grub-core/loader/i386/bsdXX.c:20 grub-core/loader/i386/bsdXX.c:36 -#: grub-core/loader/i386/bsdXX.c:63 grub-core/loader/i386/bsdXX.c:357 -#: grub-core/loader/i386/bsdXX.c:376 grub-core/loader/i386/bsdXX.c:519 -#: grub-core/loader/i386/bsdXX.c:535 grub-core/loader/i386/bsdXX.c:615 -#: grub-core/loader/i386/bsdXX.c:638 -#: grub-core/loader/i386/coreboot/chainloader.c:112 -#: grub-core/loader/i386/coreboot/chainloader.c:148 -#: grub-core/loader/i386/coreboot/chainloader.c:170 -#: grub-core/loader/i386/linux.c:667 grub-core/loader/i386/linux.c:788 -#: grub-core/loader/i386/linux.c:1005 grub-core/loader/i386/multiboot_mbi.c:171 -#: grub-core/loader/i386/pc/chainloader.c:202 -#: grub-core/loader/i386/pc/linux.c:149 grub-core/loader/i386/pc/linux.c:320 -#: grub-core/loader/i386/pc/linux.c:362 grub-core/loader/i386/pc/plan9.c:457 -#: grub-core/loader/i386/pc/plan9.c:550 grub-core/loader/i386/pc/plan9.c:566 -#: grub-core/loader/i386/xen.c:934 grub-core/loader/i386/xen_file.c:72 -#: grub-core/loader/i386/xen_fileXX.c:43 grub-core/loader/i386/xen_fileXX.c:186 -#: grub-core/loader/i386/xen_fileXX.c:339 grub-core/loader/ia64/efi/linux.c:423 -#: grub-core/loader/ia64/efi/linux.c:471 grub-core/loader/linux.c:286 -#: grub-core/loader/macho.c:84 grub-core/loader/macho.c:109 -#: grub-core/loader/machoXX.c:33 grub-core/loader/machoXX.c:46 -#: grub-core/loader/machoXX.c:76 grub-core/loader/machoXX.c:116 -#: grub-core/loader/machoXX.c:131 grub-core/loader/machoXX.c:147 -#: grub-core/loader/machoXX.c:196 grub-core/loader/machoXX.c:317 -#: grub-core/loader/multiboot.c:434 grub-core/loader/multiboot_elfxx.c:171 -#: grub-core/loader/multiboot_elfxx.c:234 -#: grub-core/loader/multiboot_elfxx.c:278 grub-core/loader/multiboot_mbi2.c:129 -#: grub-core/loader/xnu.c:737 grub-core/loader/xnu.c:795 -#: grub-core/loader/xnu.c:816 grub-core/loader/xnu.c:871 -#: grub-core/loader/xnu.c:914 grub-core/loader/xnu.c:952 -#: grub-core/loader/xnu_resume.c:68 grub-core/loader/xnu_resume.c:153 -#: grub-core/loader/xnu_resume.c:165 util/grub-mkimagexx.c:2288 -#, c-format -msgid "premature end of file %s" -msgstr "erken dosya sonu %s" - -#: grub-core/commands/acpi.c:779 -msgid "" -"[-1|-2] [--exclude=TABLE1,TABLE2|--load-only=TABLE1,TABLE2] FILE1 [FILE2] " -"[...]" -msgstr "" - -#: grub-core/commands/acpi.c:782 -msgid "Load host ACPI tables and tables specified by arguments." -msgstr "" -"Ana makine ACPI tablolarını ve deÄŸiÅŸkenler tarafından belirtilen tabloları " -"yükle." - -#: grub-core/commands/acpihalt.c:368 grub-core/kern/err.c:110 -#, c-format -msgid "error: %s.\n" -msgstr "hata: %s.\n" - -#: grub-core/commands/acpihalt.c:368 grub-core/kern/emu/misc.c:95 -#: grub-core/kern/emu/misc.c:105 grub-core/kern/emu/misc.c:134 -#: grub-core/kern/emu/mm.c:34 grub-core/kern/emu/mm.c:62 -#: grub-core/kern/mm.c:374 grub-core/lib/relocator.c:1282 -#: grub-core/lib/relocator.c:1439 grub-core/lib/relocator.c:1538 -#: grub-core/loader/arm/linux.c:259 grub-core/loader/arm64/linux.c:265 -#: grub-core/loader/arm64/linux.c:321 grub-core/loader/arm64/linux.c:340 -#: grub-core/loader/arm64/xen_boot.c:344 grub-core/loader/arm64/xen_boot.c:367 -#: grub-core/loader/efi/chainloader.c:289 grub-core/osdep/unix/dl.c:48 -#: grub-core/osdep/windows/dl.c:46 grub-core/script/lexer.c:156 -#: grub-core/script/lexer.c:182 -msgid "out of memory" -msgstr "bellek yetersiz" - -#: grub-core/commands/acpihalt.c:374 grub-core/disk/cryptodisk.c:587 -#: grub-core/disk/cryptodisk.c:632 grub-core/kern/emu/hostdisk.c:307 -#: grub-core/kern/emu/hostfs.c:149 grub-core/kern/emu/misc.c:200 -#: grub-core/osdep/linux/ofpath.c:195 grub-core/osdep/linux/ofpath.c:521 -#: grub-core/osdep/linux/ofpath.c:534 util/glue-efi.c:80 util/glue-efi.c:94 -#: util/grub-editenv.c:155 util/grub-fstest.c:577 -#: util/grub-install-common.c:943 util/grub-mkrescue.c:634 -#: util/grub-mkrescue.c:888 util/grub-mount.c:506 util/grub-render-label.c:176 -#: util/misc.c:95 util/setup.c:814 util/setup.c:833 -#, c-format -msgid "cannot read `%s': %s" -msgstr "`%s' okunamadı: %s" - -#. TRANSLATORS: It's computer shutdown using ACPI, not disabling ACPI. -#: grub-core/commands/acpihalt.c:452 -msgid "ACPI shutdown failed" -msgstr "ACPI kapatılması baÅŸarısız oldu" - -#: grub-core/commands/arc/lsdev.c:51 -msgid "List devices." -msgstr "Aygıtları listele" - -#: grub-core/commands/blocklist.c:122 grub-core/commands/cat.c:57 -#: grub-core/commands/configfile.c:35 grub-core/commands/efi/loadbios.c:168 -#: grub-core/commands/file.c:159 grub-core/commands/hexdump.c:47 -#: grub-core/commands/legacycfg.c:209 grub-core/commands/legacycfg.c:315 -#: grub-core/commands/minicmd.c:44 grub-core/commands/syslinuxcfg.c:146 -#: grub-core/commands/testload.c:58 grub-core/commands/testspeed.c:52 -#: grub-core/disk/loopback.c:93 grub-core/efiemu/main.c:293 -#: grub-core/font/font_cmd.c:32 grub-core/kern/emu/hostdisk.c:519 -#: grub-core/loader/arm/linux.c:364 grub-core/loader/arm/linux.c:409 -#: grub-core/loader/arm/linux.c:472 grub-core/loader/arm64/linux.c:243 -#: grub-core/loader/arm64/linux.c:297 grub-core/loader/arm64/xen_boot.c:398 -#: grub-core/loader/arm64/xen_boot.c:411 grub-core/loader/arm64/xen_boot.c:462 -#: grub-core/loader/efi/chainloader.c:216 grub-core/loader/i386/bsd.c:1462 -#: grub-core/loader/i386/bsd.c:1807 grub-core/loader/i386/bsd.c:2085 -#: grub-core/loader/i386/coreboot/chainloader.c:438 -#: grub-core/loader/i386/linux.c:656 grub-core/loader/i386/linux.c:1041 -#: grub-core/loader/i386/pc/chainloader.c:290 -#: grub-core/loader/i386/pc/freedos.c:105 grub-core/loader/i386/pc/linux.c:138 -#: grub-core/loader/i386/pc/linux.c:400 grub-core/loader/i386/pc/ntldr.c:85 -#: grub-core/loader/i386/pc/plan9.c:409 -#: grub-core/loader/i386/pc/pxechainloader.c:94 -#: grub-core/loader/i386/pc/truecrypt.c:96 grub-core/loader/i386/xen.c:641 -#: grub-core/loader/i386/xen.c:768 grub-core/loader/i386/xen.c:844 -#: grub-core/loader/i386/xen.c:854 grub-core/loader/i386/xnu.c:488 -#: grub-core/loader/ia64/efi/linux.c:459 grub-core/loader/ia64/efi/linux.c:539 -#: grub-core/loader/mips/linux.c:238 grub-core/loader/mips/linux.c:429 -#: grub-core/loader/multiboot.c:322 grub-core/loader/multiboot.c:374 -#: grub-core/loader/multiboot.c:384 -#: grub-core/loader/powerpc/ieee1275/linux.c:269 -#: grub-core/loader/powerpc/ieee1275/linux.c:341 -#: grub-core/loader/sparc64/ieee1275/linux.c:305 -#: grub-core/loader/sparc64/ieee1275/linux.c:381 grub-core/loader/xnu.c:351 -#: grub-core/loader/xnu.c:460 grub-core/loader/xnu.c:778 -#: grub-core/loader/xnu.c:892 grub-core/loader/xnu.c:1277 -#: grub-core/loader/xnu.c:1427 grub-core/loader/xnu.c:1453 -#: grub-core/video/readers/jpeg.c:812 grub-core/video/readers/png.c:1123 -msgid "filename expected" -msgstr "dosya adı gerekli" - -#. TRANSLATORS: "embed" is a verb (command description). " -#: grub-core/commands/blocklist.c:154 grub-core/commands/cat.c:163 -#: grub-core/commands/configfile.c:65 grub-core/commands/configfile.c:68 -#: grub-core/commands/configfile.c:74 grub-core/commands/configfile.c:80 -#: grub-core/commands/configfile.c:86 grub-core/commands/hashsum.c:34 -#: grub-core/commands/legacycfg.c:834 grub-core/commands/legacycfg.c:841 -#: grub-core/commands/legacycfg.c:846 grub-core/commands/legacycfg.c:851 -#: grub-core/commands/macbless.c:222 grub-core/commands/minicmd.c:198 -#: grub-core/commands/syslinuxcfg.c:186 grub-core/commands/syslinuxcfg.c:194 -#: grub-core/commands/syslinuxcfg.c:200 grub-core/commands/syslinuxcfg.c:206 -#: grub-core/commands/testload.c:163 grub-core/efiemu/main.c:312 -#: grub-core/kern/emu/main.c:100 grub-core/kern/emu/main.c:103 -#: grub-core/loader/i386/bsd.c:2137 grub-core/loader/i386/bsd.c:2140 -#: grub-core/loader/i386/bsd.c:2143 -#: grub-core/loader/i386/coreboot/chainloader.c:505 -#: grub-core/loader/ia64/efi/linux.c:594 include/grub/util/install.h:32 -#: include/grub/util/install.h:64 util/grub-glue-efi.c:52 -#: util/grub-glue-efi.c:54 util/grub-glue-efi.c:56 util/grub-install.c:254 -#: util/grub-install.c:301 util/grub-mkfont.c:936 util/grub-mkimage.c:68 -#: util/grub-mkimage.c:74 util/grub-mkimage.c:76 util/grub-mkimage.c:78 -#: util/grub-mkimage.c:81 util/grub-mklayout.c:52 util/grub-mklayout.c:54 -#: util/grub-mkrescue.c:97 util/grub-mkrescue.c:101 util/grub-mkrescue.c:104 -#: util/grub-mkrescue.c:105 util/grub-mkrescue.c:106 -#: util/grub-mkstandalone.c:47 util/grub-mkstandalone.c:49 -#: util/grub-probe.c:732 util/grub-render-label.c:59 -#: util/grub-render-label.c:70 util/grub-render-label.c:72 util/grub-setup.c:78 -#: util/grub-setup.c:80 util/grub-setup.c:84 util/grub-syslinux2cfg.c:74 -#: util/grub-syslinux2cfg.c:147 -msgid "FILE" -msgstr "DOSYA" - -#: grub-core/commands/blocklist.c:154 -msgid "Print a block list." -msgstr "Bir öbek listesi yazdır." - -#: grub-core/commands/boot.c:147 grub-core/commands/legacycfg.c:533 -#: grub-core/commands/legacycfg.c:574 grub-core/loader/arm64/linux.c:250 -#: grub-core/loader/i386/bsd.c:1799 grub-core/loader/i386/bsd.c:1900 -#: grub-core/loader/i386/bsd.c:2007 grub-core/loader/i386/bsd.c:2040 -#: grub-core/loader/i386/bsd.c:2089 grub-core/loader/i386/linux.c:1047 -#: grub-core/loader/i386/pc/linux.c:406 grub-core/loader/i386/xen.c:775 -#: grub-core/loader/i386/xen.c:859 grub-core/loader/ia64/efi/linux.c:545 -#: grub-core/loader/mips/linux.c:432 grub-core/loader/multiboot.c:388 -#: grub-core/loader/powerpc/ieee1275/linux.c:347 -#: grub-core/loader/sparc64/ieee1275/linux.c:387 grub-core/loader/xnu.c:572 -#: grub-core/loader/xnu.c:665 grub-core/loader/xnu.c:781 -#: grub-core/loader/xnu.c:895 grub-core/loader/xnu.c:1091 -#: grub-core/loader/xnu.c:1258 grub-core/loader/xnu.c:1289 -#: grub-core/loader/xnu.c:1430 -msgid "you need to load the kernel first" -msgstr "önce kerneli yüklemelisiniz" - -#: grub-core/commands/boot.c:189 -msgid "Boot an operating system." -msgstr "İşletim sistemini ön yükle." - -#: grub-core/commands/boottime.c:36 -#: grub-core/commands/i386/coreboot/cb_timestamps.c:108 -msgid "No boot time statistics is available\n" -msgstr "Önyükleme zaman istatistikleri mevcut deÄŸil\n" - -#: grub-core/commands/boottime.c:59 -msgid "Show boot time statistics." -msgstr "Önyükleme zaman istatistiklerini göster" - -#: grub-core/commands/cacheinfo.c:40 -#, c-format -msgid "Disk cache statistics: hits = %lu (%lu.%02lu%%), misses = %lu\n" -msgstr "" -"Disk önbellek istatistikleri: isabet = %lu (%lu.%02lu%%), kaçan = %lu\n" - -#: grub-core/commands/cacheinfo.c:45 -msgid "No disk cache statistics available\n" -msgstr "Kullanılabilir disk önbellek istatistiÄŸi bulunmuyor\n" - -#: grub-core/commands/cacheinfo.c:56 -msgid "Get disk cache info." -msgstr "Disk önbelleÄŸi hakkında bilgi al." - -#: grub-core/commands/cat.c:33 -msgid "Accept DOS-style CR/NL line endings." -msgstr "DOS tarzı CR/NL satır sonlarını kabul et." - -#: grub-core/commands/cat.c:163 grub-core/commands/minicmd.c:198 -msgid "Show the contents of a file." -msgstr "Bir dosyanın içeriÄŸini göster." - -#: grub-core/commands/cmp.c:43 grub-core/commands/i386/pc/drivemap.c:239 -#: grub-core/commands/i386/wrmsr.c:60 grub-core/commands/iorw.c:85 -#: grub-core/commands/memrw.c:84 grub-core/commands/password.c:75 -#: grub-core/commands/password_pbkdf2.c:94 grub-core/commands/pgp.c:826 -#: grub-core/commands/regexp.c:113 grub-core/mmap/mmap.c:517 -#: grub-core/net/dns.c:639 -msgid "two arguments expected" -msgstr "iki argüman gerekli" - -#: grub-core/commands/cmp.c:45 -#, c-format -msgid "Compare file `%s' with `%s':\n" -msgstr "`%s' dosyasını `%s' ile karşılaÅŸtır:\n" - -#: grub-core/commands/cmp.c:54 -#, c-format -msgid "Files differ in size: %llu [%s], %llu [%s]\n" -msgstr "Dosya boyutları farklı: %llu [%s], %llu [%s]\n" - -#: grub-core/commands/cmp.c:81 -#, c-format -msgid "Files differ at the offset %llu: 0x%x [%s], 0x%x [%s]\n" -msgstr "Dosyalar ÅŸu denkleÅŸtirmede farklı: %llu: 0x%x [%s], 0x%x [%s]\n" - -#. TRANSLATORS: it's always exactly 2 files. -#: grub-core/commands/cmp.c:93 -msgid "The files are identical.\n" -msgstr "Dosyalar aynı.\n" - -#: grub-core/commands/cmp.c:113 -msgid "FILE1 FILE2" -msgstr "DOSYA1 DOSYA2" - -#: grub-core/commands/cmp.c:113 -msgid "Compare two files." -msgstr "İki dosyayı karşılaÅŸtır." - -#: grub-core/commands/configfile.c:65 -msgid "Load another config file." -msgstr "BaÅŸka bir yapılandırma dosyası yükle." - -#: grub-core/commands/configfile.c:69 grub-core/commands/configfile.c:87 -msgid "Load another config file without changing context." -msgstr "İçeriÄŸi deÄŸiÅŸtirmeksizin diÄŸer yapılandırma dosyasını yükle." - -#: grub-core/commands/configfile.c:75 -msgid "" -"Load another config file without changing context but take only menu entries." -msgstr "" -"BaÄŸlamı deÄŸiÅŸtirmeden baÅŸka bir yapılandırma dosyası yükle ama yalnızca menü " -"girdilerini al." - -#: grub-core/commands/configfile.c:81 -msgid "Load another config file but take only menu entries." -msgstr "" -"Farklı bir yapılandırma dosyası yükle ama yalnızca menü girdilerini al." - -#: grub-core/commands/date.c:141 -msgid "[[year-]month-day] [hour:minute[:second]]" -msgstr "[[yıl-]ay-gün] [saat:dakika[:saniye]]" - -#: grub-core/commands/date.c:142 -msgid "Display/set current datetime." -msgstr "Åžimdiki zamanı görüntüle/ayarla" - -#: grub-core/commands/echo.c:30 -msgid "Do not output the trailing newline." -msgstr "Yeni satır takibinden çıktı üretme." - -#: grub-core/commands/echo.c:31 -msgid "Enable interpretation of backslash escapes." -msgstr "Sola eÄŸik çizgi boÅŸlukları açıklamalarını etkinleÅŸtir." - -#: grub-core/commands/echo.c:134 -msgid "[-e|-n] STRING" -msgstr "[-e|-n] STRING" - -#: grub-core/commands/echo.c:134 -msgid "Display a line of text." -msgstr "Metnin bir satırını görüntüle." - -#: grub-core/commands/efi/efifwsetup.c:82 -msgid "Reboot into firmware setup menu." -msgstr "" - -#: grub-core/commands/efi/fixvideo.c:107 -msgid "Fix video problem." -msgstr "Video problemini düzelt." - -#: grub-core/commands/efi/loadbios.c:52 -msgid "ROM image is present." -msgstr "ROM kalıbı hazır." - -#: grub-core/commands/efi/loadbios.c:70 -msgid "Can't enable ROM area." -msgstr "ROM bölgesi etkinleÅŸtirilemiyor." - -#: grub-core/commands/efi/loadbios.c:209 -msgid "" -"Create BIOS-like structures for backward compatibility with existing OS." -msgstr "" -"Varolan iÅŸletim sistemiyle arka uyumluluk için BIOS benzeri yapılar oluÅŸtur." - -#: grub-core/commands/efi/loadbios.c:214 -msgid "BIOS_DUMP [INT10_DUMP]" -msgstr "BIOS_DUMP [INT10_DUMP]" - -#: grub-core/commands/efi/loadbios.c:215 -msgid "Load BIOS dump." -msgstr "BIOS dökümünü yükleyin." - -#: grub-core/commands/efi/shim_lock.c:76 -#, c-format -msgid "module cannot be loaded in UEFI secure boot mode: %s" -msgstr "" - -#: grub-core/commands/efi/shim_lock.c:98 -#, c-format -msgid "cannot boot due to dangerous module in memory: %s" -msgstr "" - -#: grub-core/commands/efi/shim_lock.c:116 -#, fuzzy -msgid "bad shim signature" -msgstr "Hatalı imza" - -#: grub-core/commands/efi/tpm.c:149 grub-core/commands/efi/tpm.c:189 -#: grub-core/commands/efi/tpm.c:256 grub-core/commands/efi/tpm.c:306 -#, fuzzy -msgid "Command failed" -msgstr "Kapatma baÅŸarısız" - -#: grub-core/commands/efi/tpm.c:151 grub-core/commands/efi/tpm.c:191 -#: grub-core/commands/efi/tpm.c:258 grub-core/commands/efi/tpm.c:308 -#, fuzzy -msgid "Invalid parameter" -msgstr "%s geçersiz parametre" - -#: grub-core/commands/efi/tpm.c:154 grub-core/commands/efi/tpm.c:194 -#: grub-core/commands/efi/tpm.c:261 grub-core/commands/efi/tpm.c:311 -msgid "Output buffer too small" -msgstr "" - -#: grub-core/commands/efi/tpm.c:156 grub-core/commands/efi/tpm.c:196 -#: grub-core/commands/efi/tpm.c:263 grub-core/commands/efi/tpm.c:313 -#, fuzzy -msgid "TPM unavailable" -msgstr "Konum: mevcut deÄŸil" - -#: grub-core/commands/efi/tpm.c:158 grub-core/commands/efi/tpm.c:198 -#: grub-core/commands/efi/tpm.c:265 grub-core/commands/efi/tpm.c:315 -#, fuzzy -msgid "Unknown TPM error" -msgstr "Bilinmeyen sistem hatası" - -#: grub-core/commands/efi/tpm.c:240 grub-core/commands/efi/tpm.c:288 -msgid "cannot allocate TPM event buffer" -msgstr "" - -#: grub-core/commands/eval.c:63 -msgid "STRING ..." -msgstr "" - -#: grub-core/commands/eval.c:64 -msgid "Evaluate arguments as GRUB commands" -msgstr "" - -#: grub-core/commands/file.c:41 -msgid "Check if FILE can be booted as i386 PAE Xen unprivileged guest kernel" -msgstr "" -"DOSYAnın i386 PAE Xen ayrıcalıksız misafir çekirdeÄŸi olarak " -"önyüklenebilirliÄŸini denetle" - -#: grub-core/commands/file.c:44 -msgid "Check if FILE can be booted as x86_64 Xen unprivileged guest kernel" -msgstr "" -"DOSYAnın x86_64 Xen ayrıcalıksız misafir çekirdeÄŸi olarak " -"önyüklenebilirliÄŸini denetle" - -#: grub-core/commands/file.c:46 -msgid "Check if FILE can be used as Xen x86 privileged guest kernel" -msgstr "" -"DOSYAnın Xen x86 ayrıcalıklı misafir çekirdeÄŸi olarak kullanılabilirliÄŸini " -"denetle" - -#: grub-core/commands/file.c:48 -msgid "Check if FILE can be used as x86 multiboot kernel" -msgstr "DOSYAnın x86 multiboot çekirdeÄŸi olarak kullanılabilirliÄŸini denetle" - -#: grub-core/commands/file.c:50 -msgid "Check if FILE can be used as x86 multiboot2 kernel" -msgstr "DOSYAnın x86 multiboot2 çekirdeÄŸi olarak kullanılabilirliÄŸini denetle" - -#: grub-core/commands/file.c:52 -msgid "Check if FILE is ARM Linux" -msgstr "DOSYAnın ARM Linux olup olmadığını denetle" - -#: grub-core/commands/file.c:54 -msgid "Check if FILE is ARM64 Linux" -msgstr "DOSYAnın ARM64 Linux olup olmadığını denetle" - -#: grub-core/commands/file.c:56 -msgid "Check if FILE is IA64 Linux" -msgstr "DOSYAnın IA64 Linux olup olmadığını denetle" - -#: grub-core/commands/file.c:58 -msgid "Check if FILE is MIPS Linux" -msgstr "DOSYAnın MIPS Linux olup olmadığını denetle" - -#: grub-core/commands/file.c:60 -msgid "Check if FILE is MIPSEL Linux" -msgstr "DOSYAnın MIPSEL Linux olup olmadığını denetle" - -#: grub-core/commands/file.c:62 -msgid "Check if FILE is SPARC64 Linux" -msgstr "DOSYAnın SPARC64 Linux olup olmadığını denetle" - -#: grub-core/commands/file.c:64 -msgid "Check if FILE is POWERPC Linux" -msgstr "DOSYAnın POWERPC Linux olup olmadığını denetle" - -#: grub-core/commands/file.c:66 -msgid "Check if FILE is x86 Linux" -msgstr "DOSYAnın x86 Linux olup olmadığını denetle" - -#: grub-core/commands/file.c:68 -msgid "Check if FILE is x86 Linux supporting 32-bit protocol" -msgstr "" -"DOSYAnın 32-bit iletiÅŸim kuralını destekleyen x86 Linux olup olmadığını " -"denetle" - -#: grub-core/commands/file.c:70 -msgid "Check if FILE is x86 kFreeBSD" -msgstr "DOSYAnın x86 kFreeBSD olup olmadığını denetle" - -#: grub-core/commands/file.c:72 -msgid "Check if FILE is i386 kFreeBSD" -msgstr "DOSYAnın i386 kFreeBSD olup olmadığını denetle" - -#: grub-core/commands/file.c:74 -msgid "Check if FILE is x86_64 kFreeBSD" -msgstr "DOSYAnın x86_64 kFreeBSD olup olmadığını denetle" - -#: grub-core/commands/file.c:77 -msgid "Check if FILE is x86 kNetBSD" -msgstr "DOSYAnın x86 kNetBSD olup olmadığını denetle" - -#: grub-core/commands/file.c:79 -msgid "Check if FILE is i386 kNetBSD" -msgstr "DOSYAnın i386 kNetBSD olup olmadığını denetle" - -#: grub-core/commands/file.c:81 -msgid "Check if FILE is x86_64 kNetBSD" -msgstr "DOSYAnın x86_64 kNetBSD olup olmadığını denetle" - -#: grub-core/commands/file.c:84 -msgid "Check if FILE is i386 EFI file" -msgstr "DOSYAnın i386 EFI dosyası olup olmadığını denetle" - -#: grub-core/commands/file.c:86 -msgid "Check if FILE is x86_64 EFI file" -msgstr "DOSYAnın x86_64 EFI dosyası olup olmadığını denetle" - -#: grub-core/commands/file.c:88 -msgid "Check if FILE is IA64 EFI file" -msgstr "DOSYAnın IA64 EFI dosyası olup olmadığını denetle" - -#: grub-core/commands/file.c:90 -msgid "Check if FILE is ARM64 EFI file" -msgstr "DOSYAnın ARM64 EFI dosyası olup olmadığını denetle" - -#: grub-core/commands/file.c:92 -msgid "Check if FILE is ARM EFI file" -msgstr "DOSYAnın ARM EFI dosyası olup olmadığını denetle" - -#: grub-core/commands/file.c:94 -#, fuzzy -msgid "Check if FILE is RISC-V 32bit EFI file" -msgstr "DOSYAnın ARM EFI dosyası olup olmadığını denetle" - -#: grub-core/commands/file.c:96 -#, fuzzy -msgid "Check if FILE is RISC-V 64bit EFI file" -msgstr "DOSYAnın IA64 EFI dosyası olup olmadığını denetle" - -#: grub-core/commands/file.c:98 -msgid "Check if FILE is hiberfil.sys in hibernated state" -msgstr "" -"DOSYAnın hazırda beklet konumundaki hiberfil.sys olup olmadığını denetle" - -#: grub-core/commands/file.c:100 -msgid "Check if FILE is x86_64 XNU (Mac OS X kernel)" -msgstr "DOSYAnın x86_64 XNU (Mac OS X çekirdeÄŸi) olup olmadığını denetle" - -#: grub-core/commands/file.c:102 -msgid "Check if FILE is i386 XNU (Mac OS X kernel)" -msgstr "DOSYAnın i386 XNU (Mac OS X çekirdeÄŸi) olup olmadığını denetle" - -#: grub-core/commands/file.c:104 -msgid "Check if FILE is XNU (Mac OS X kernel) hibernated image" -msgstr "" -"DOSYAnın XNU (Mac OS X çekirdeÄŸi) hazırda beklet kalıbı olup olmadığını " -"denetle" - -#: grub-core/commands/file.c:106 -msgid "Check if FILE is BIOS bootsector" -msgstr "DOSYAnın BIOS önyükleme kesimi olup olmadığını denetle" - -#. TRANSLATORS: it's a standalone boolean value, -#. opposite of "true". -#: grub-core/commands/file.c:675 grub-core/commands/i386/cmostest.c:63 -#: grub-core/commands/i386/cpuid.c:71 grub-core/commands/keystatus.c:83 -#: grub-core/commands/keystatus.c:87 grub-core/commands/keystatus.c:96 -#: grub-core/commands/test.c:436 grub-core/commands/true.c:39 -#: grub-core/script/execute.c:247 grub-core/script/execute.c:1039 -msgid "false" -msgstr "yanlış" - -#: grub-core/commands/file.c:684 -msgid "OPTIONS FILE" -msgstr "" - -#: grub-core/commands/file.c:685 -msgid "Check if FILE is of specified type." -msgstr "" - -#. TRANSLATORS: It means that the specified partition e.g. -#. hd0,msdos1=/dev/sda1 doesn't exist. -#: grub-core/commands/gptsync.c:140 grub-core/kern/disk.c:258 -msgid "no such partition" -msgstr "böyle bir bölüm bulunmamaktadır" - -#: grub-core/commands/gptsync.c:240 -#, c-format -msgid "New MBR is written to `%s'\n" -msgstr "Yeni MBR `%s' konumuna yazıldı\n" - -#: grub-core/commands/gptsync.c:252 -msgid "DEVICE [PARTITION[+/-[TYPE]]] ..." -msgstr "AYGIT [BÖLÜM[+/-[TÜR]]] ..." - -#. TRANSLATORS: MBR type is one-byte partition -#. type id. -#: grub-core/commands/gptsync.c:255 -msgid "" -"Fill hybrid MBR of GPT drive DEVICE. Specified partitions will be a part of " -"hybrid MBR. Up to 3 partitions are allowed. TYPE is an MBR type. + means " -"that partition is active. Only one partition can be active." -msgstr "" -"AYGIT sürücü GPT'nin MBR hibritini doldur. Belirli bölüm mbr hibritinin bir " -"parçası olacaktır. 3 bölüme kadar izin verilir. TÜR bir MBR türüdür. + " -"bölümün etkin olduÄŸunu gösterir. Yalnızca bir bölüm etkin olabilir." - -#: grub-core/commands/halt.c:40 -msgid "" -"Halts the computer. This command does not work on all firmware " -"implementations." -msgstr "" -"Bilgisayarı durdurur. Bu komut tüm aygıt yazılım uygulamalarında çalışmaz." - -#: grub-core/commands/hashsum.c:32 -msgid "Specify hash to use." -msgstr "Kullanılacak hash'i belirtin." - -#: grub-core/commands/hashsum.c:32 -msgid "HASH" -msgstr "HASH" - -#: grub-core/commands/hashsum.c:33 -msgid "Check hashes of files with hash list FILE." -msgstr "Hash listesi DOSYASI ile dosyaların hash'lerini denetle." - -#: grub-core/commands/hashsum.c:35 -msgid "Base directory for hash list." -msgstr "Hash listesi için temel dizin" - -#. TRANSLATORS: platform here isn't identifier. It can be translated. -#: grub-core/commands/hashsum.c:35 grub-core/commands/ls.c:150 -#: grub-core/commands/macbless.c:226 grub-core/commands/syslinuxcfg.c:51 -#: grub-core/commands/syslinuxcfg.c:54 grub-core/kern/emu/main.c:106 -#: include/grub/util/install.h:50 include/grub/util/install.h:53 -#: include/grub/util/install.h:56 include/grub/util/install.h:59 -#: util/grub-install.c:250 util/grub-install.c:252 util/grub-install.c:297 -#: util/grub-install.c:299 util/grub-mkimage.c:64 util/grub-mkimage.c:67 -#: util/grub-mknetdir.c:46 util/grub-mknetdir.c:48 util/grub-mkrescue.c:99 -#: util/grub-setup.c:82 util/grub-syslinux2cfg.c:63 util/grub-syslinux2cfg.c:65 -#: util/grub-syslinux2cfg.c:67 util/grub-syslinux2cfg.c:71 -msgid "DIR" -msgstr "DİZİN" - -#: grub-core/commands/hashsum.c:37 -msgid "Don't stop after first error." -msgstr "İlk hatadan sonra durma." - -#: grub-core/commands/hashsum.c:38 -msgid "Uncompress file before checksumming." -msgstr "DoÄŸrulama yapılmadan önce dosyayı çıkart." - -#: grub-core/commands/hashsum.c:163 -#, c-format -msgid "%s: READ ERROR\n" -msgstr "%s: OKUMA HATASI\n" - -#: grub-core/commands/hashsum.c:177 -#, c-format -msgid "%s: HASH MISMATCH\n" -msgstr "%s: HASH UYUMSUZLUÄžU\n" - -#: grub-core/commands/hashsum.c:188 -#, c-format -msgid "%s: OK\n" -msgstr "%s: Tamam\n" - -#: grub-core/commands/hashsum.c:282 -msgid "-h HASH [-c FILE [-p PREFIX]] [FILE1 [FILE2 ...]]" -msgstr "-h HASH [-c DOSYA [-p ÖNEK]] [DOSYA1 [DOSYA2 ...]]" - -#. TRANSLATORS: "hash checksum" is just to -#. be a bit more precise, you can treat it as -#. just "hash". -#: grub-core/commands/hashsum.c:287 grub-core/commands/hashsum.c:292 -#: grub-core/commands/hashsum.c:297 grub-core/commands/hashsum.c:302 -#: grub-core/commands/hashsum.c:307 grub-core/commands/hashsum.c:313 -msgid "Compute or check hash checksum." -msgstr "Hash saÄŸlamasını hesapla ya da denetle." - -#: grub-core/commands/hashsum.c:290 grub-core/commands/hashsum.c:295 -#: grub-core/commands/hashsum.c:300 grub-core/commands/hashsum.c:305 -#: grub-core/commands/hashsum.c:311 -msgid "[-c FILE [-p PREFIX]] [FILE1 [FILE2 ...]]" -msgstr "[-c DOSYA [-p ÖNEK]] [DOSYA1 [DOSYA2 ...]]" - -#: grub-core/commands/hdparm.c:33 -msgid "" -"Set Advanced Power Management\n" -"(1=low, ..., 254=high, 255=off)." -msgstr "" -"GeliÅŸmiÅŸ Güç Yönetimi'ni Ayarla\n" -"(1=düşük, ..., 254=yüksek, 255=kapalı)." - -#: grub-core/commands/hdparm.c:36 -msgid "Display power mode." -msgstr "Enerji kipini göster." - -#: grub-core/commands/hdparm.c:37 -msgid "Freeze ATA security settings until reset." -msgstr "Sıfırlanana kadar ATA güvenlik ayarlarını dondurun." - -#: grub-core/commands/hdparm.c:39 -msgid "Display SMART health status." -msgstr "SMART saÄŸlık durumunu görüntüle." - -#: grub-core/commands/hdparm.c:40 -msgid "" -"Set Automatic Acoustic Management\n" -"(0=off, 128=quiet, ..., 254=fast)." -msgstr "" -"Otomatik Akustik Yönetimini Ayarla\n" -"(0=kapalı, 128=sessiz, ..., 254=hızlı)." - -#: grub-core/commands/hdparm.c:43 -msgid "" -"Set standby timeout\n" -"(0=off, 1=5s, 2=10s, ..., 240=20m, 241=30m, ...)." -msgstr "" -"Bekleme zaman aşımı ayarla\n" -"(0=kapalı, 1=5sn, 2=10sn, ..., 240=2dk, 241=30dk, ...)." - -#: grub-core/commands/hdparm.c:46 -msgid "Set drive to standby mode." -msgstr "Sürücüyü hazırda beklet durumuna ayarla." - -#: grub-core/commands/hdparm.c:47 -msgid "Set drive to sleep mode." -msgstr "Sürücüyü uyku kipine ayarla." - -#: grub-core/commands/hdparm.c:48 -msgid "Print drive identity and settings." -msgstr "Sürücü kimliÄŸini ve ayarlarını yazdır." - -#: grub-core/commands/hdparm.c:50 -msgid "Show raw contents of ATA IDENTIFY sector." -msgstr "" - -#: grub-core/commands/hdparm.c:52 -msgid "Disable/enable SMART (0/1)." -msgstr "SMART'ı etkisizleÅŸtir/etkinleÅŸtir (0/1)." - -#: grub-core/commands/hdparm.c:53 -msgid "Do not print messages." -msgstr "İletileri yazdırma." - -#: grub-core/commands/hdparm.c:286 grub-core/commands/i386/rdmsr.c:68 -#: grub-core/commands/iorw.c:47 grub-core/commands/legacycfg.c:760 -#: grub-core/commands/legacycfg.c:812 grub-core/commands/macbless.c:190 -#: grub-core/commands/memrw.c:47 grub-core/commands/pgp.c:738 -#: grub-core/commands/pgp.c:792 grub-core/commands/search.c:304 -#: grub-core/commands/search_wrap.c:179 grub-core/commands/setpci.c:243 -#: grub-core/commands/sleep.c:71 grub-core/fs/zfs/zfsinfo.c:279 -#: grub-core/fs/zfs/zfsinfo.c:358 grub-core/gettext/gettext.c:492 -#: grub-core/kern/corecmd.c:65 grub-core/kern/corecmd.c:79 -#: grub-core/mmap/mmap.c:430 grub-core/net/dns.c:713 grub-core/net/dns.c:745 -#: grub-core/net/net.c:694 grub-core/net/net.c:1052 -#: grub-core/normal/context.c:194 grub-core/script/execute.c:131 -#: grub-core/term/gfxterm_background.c:136 -msgid "one argument expected" -msgstr "bir argüman bekleniyor" - -#: grub-core/commands/hdparm.c:440 -msgid "[OPTIONS] DISK" -msgstr "[SEÇENEKLER] DİSK" - -#: grub-core/commands/hdparm.c:441 -msgid "Get/set ATA disk parameters." -msgstr "ATA disk deÄŸiÅŸtirgelerini al/ayarla." - -#: grub-core/commands/help.c:132 grub-core/lib/arg.c:109 -#: grub-core/lib/gnulib/argp-help.c:1616 -msgid "Usage:" -msgstr "Kullanım:" - -#: grub-core/commands/help.c:146 -msgid "[PATTERN ...]" -msgstr "[ÖRÜNTÜ ...]" - -#: grub-core/commands/help.c:147 -msgid "Show a help message." -msgstr "Bir yardım iletisi göster." - -#: grub-core/commands/hexdump.c:31 -msgid "Skip offset bytes from the beginning of file." -msgstr "Dosyanın baÅŸlangıcındaki uzak bayta git." - -#: grub-core/commands/hexdump.c:33 -msgid "Read only LENGTH bytes." -msgstr "Yalnızca UZUNLUK baytları oku." - -#: grub-core/commands/hexdump.c:125 -msgid "[OPTIONS] FILE_OR_DEVICE" -msgstr "[SEÇENEKLER] DOSYA_VEYA_AYGIT" - -#: grub-core/commands/hexdump.c:126 -msgid "Show raw contents of a file or memory." -msgstr "Bir dosya veya belleÄŸin ham içeriÄŸini göster." - -#: grub-core/commands/i386/cmosdump.c:58 -msgid "Show raw dump of the CMOS contents." -msgstr "" - -#: grub-core/commands/i386/cmostest.c:108 -#: grub-core/commands/i386/cmostest.c:111 -#: grub-core/commands/i386/cmostest.c:114 -msgid "BYTE:BIT" -msgstr "" - -#: grub-core/commands/i386/cmostest.c:109 -msgid "Test bit at BYTE:BIT in CMOS." -msgstr "" - -#: grub-core/commands/i386/cmostest.c:112 -msgid "Clear bit at BYTE:BIT in CMOS." -msgstr "" - -#. TRANSLATORS: A bit may be either set (1) or clear (0). -#: grub-core/commands/i386/cmostest.c:116 -msgid "Set bit at BYTE:BIT in CMOS." -msgstr "" - -#: grub-core/commands/i386/coreboot/cb_timestamps.c:120 -msgid "Show coreboot boot time statistics." -msgstr "coreboot önyükleme zamanı istatistiklerini göster." - -#: grub-core/commands/i386/coreboot/cbls.c:137 -msgid "List coreboot tables." -msgstr "coreboot tablolarını listele." - -#. TRANSLATORS: "(default)" at the end means that this option is used if -#. no argument is specified. -#: grub-core/commands/i386/cpuid.c:36 -msgid "Check if CPU supports 64-bit (long) mode (default)." -msgstr "" - -#: grub-core/commands/i386/cpuid.c:37 -msgid "Check if CPU supports Physical Address Extension." -msgstr "İşlemcinin Fiziksel Adres Uzantısı (PAE) desteÄŸini denetle." - -#: grub-core/commands/i386/cpuid.c:119 -msgid "Check for CPU features." -msgstr "CPU özelliklerini denetle." - -#. TRANSLATORS: In this file "mapping" refers to a change GRUB makes so if -#. your language doesn't have an equivalent of "mapping" you can -#. use the word like "rerouting". -#. -#: grub-core/commands/i386/pc/drivemap.c:43 -msgid "Show the current mappings." -msgstr "Güncel eÅŸleÅŸtirmeleri göster." - -#: grub-core/commands/i386/pc/drivemap.c:44 -msgid "Reset all mappings to the default values." -msgstr "Tüm eÅŸleÅŸtirmeleri öntanımlı deÄŸerlere getir." - -#: grub-core/commands/i386/pc/drivemap.c:45 -msgid "Perform both direct and reverse mappings." -msgstr "Hem doÄŸrudan hem de karşıt eÅŸleÅŸtirmeleri çalıştır." - -#: grub-core/commands/i386/pc/drivemap.c:184 -msgid "No drives have been remapped" -msgstr "Hiçbir sürücü tekrardan eÅŸleÅŸtirilmedi" - -#. TRANSLATORS: This is the header of mapping list. -#. On the left is how OS will see the disks and -#. on the right current GRUB vision. -#: grub-core/commands/i386/pc/drivemap.c:191 -msgid "OS disk #num ------> GRUB/BIOS device" -msgstr "" - -#: grub-core/commands/i386/pc/drivemap.c:413 -msgid "-l | -r | [-s] grubdev osdisk." -msgstr "-l | -r | [-s] grubdev osdisk." - -#: grub-core/commands/i386/pc/drivemap.c:414 -msgid "Manage the BIOS drive mappings." -msgstr "BIOS sürücüsü eÅŸleÅŸtirmelerini yönet." - -#: grub-core/commands/i386/pc/halt.c:31 -msgid "Do not use APM to halt the computer." -msgstr "Bilgisayarı durdurmak için APM kullanmayın." - -#: grub-core/commands/i386/pc/halt.c:119 -msgid "Halt the system, if possible using APM." -msgstr "Sistemi durdur, mümkünse APM kullanarak." - -#: grub-core/commands/i386/pc/lsapm.c:75 -msgid "no APM found" -msgstr "hiçbir APM bulunamadı" - -#: grub-core/commands/i386/pc/lsapm.c:77 -#, c-format -msgid "" -"Version %u.%u\n" -"32-bit CS = 0x%x, len = 0x%x, offset = 0x%x\n" -"16-bit CS = 0x%x, len = 0x%x\n" -"DS = 0x%x, len = 0x%x\n" -msgstr "" -"Sürüm %u.%u\n" -"32-bit CS = 0x%x, uzunluk = 0x%x, baÅŸlangıç = 0x%x\n" -"16-bit CS = 0x%x, uzunluk = 0x%x\n" -"DS = 0x%x, uzunluk = 0x%x\n" - -#: grub-core/commands/i386/pc/lsapm.c:86 -msgid "16-bit protected interface supported\n" -msgstr "16-bit korunmuÅŸ arayüz destekleniyor\n" - -#: grub-core/commands/i386/pc/lsapm.c:87 -msgid "16-bit protected interface unsupported\n" -msgstr "16-bit korunmuÅŸ arayüz desteklenmiyor\n" - -#: grub-core/commands/i386/pc/lsapm.c:89 -msgid "32-bit protected interface supported\n" -msgstr "32-bit korunmuÅŸ arayüz destekleniyor\n" - -#: grub-core/commands/i386/pc/lsapm.c:90 -msgid "32-bit protected interface unsupported\n" -msgstr "32-bit korunmuÅŸ arayüz desteklenmiyor\n" - -#: grub-core/commands/i386/pc/lsapm.c:92 -msgid "CPU Idle slows down processor\n" -msgstr "Kullanılmayan CPU görevleri iÅŸlemciyi yavaÅŸlatıyor\n" - -#: grub-core/commands/i386/pc/lsapm.c:93 -msgid "CPU Idle doesn't slow down processor\n" -msgstr "Kullanılmayan CPU görevleri iÅŸlemciyi yavaÅŸlatmıyor\n" - -#: grub-core/commands/i386/pc/lsapm.c:95 -msgid "APM disabled\n" -msgstr "APM etkisizleÅŸtirildi\n" - -#: grub-core/commands/i386/pc/lsapm.c:95 -msgid "APM enabled\n" -msgstr "APM etkinleÅŸtirildi\n" - -#: grub-core/commands/i386/pc/lsapm.c:97 -msgid "APM disengaged\n" -msgstr "" - -#: grub-core/commands/i386/pc/lsapm.c:97 -msgid "APM engaged\n" -msgstr "" - -#: grub-core/commands/i386/pc/lsapm.c:107 -msgid "Show APM information." -msgstr "APM bilgisini göster." - -#. TRANSLATORS: It's musical notes, not the notes -#. you take. Play command expects arguments which can -#. be either a filename or tempo+notes. -#. This error happens if none is specified. -#: grub-core/commands/i386/pc/play.c:88 -msgid "filename or tempo and notes expected" -msgstr "" - -#: grub-core/commands/i386/pc/play.c:113 grub-core/commands/i386/pc/play.c:144 -#, fuzzy, c-format -msgid "Invalid tempo in %s" -msgstr "Geçersiz komut %s.\n" - -#: grub-core/commands/i386/pc/play.c:151 grub-core/commands/macbless.c:172 -#: grub-core/fs/archelp.c:260 grub-core/fs/bfs.c:621 grub-core/fs/bfs.c:704 -#: grub-core/fs/btrfs.c:1726 grub-core/fs/btrfs.c:1755 -#: grub-core/fs/btrfs.c:1799 grub-core/fs/btrfs.c:1882 -#: grub-core/fs/btrfs.c:1906 grub-core/fs/fshelp.c:257 grub-core/fs/jfs.c:696 -#: grub-core/fs/minix.c:426 grub-core/fs/ufs.c:544 grub-core/fs/zfs/zfs.c:2083 -#: grub-core/fs/zfs/zfs.c:2095 grub-core/fs/zfs/zfs.c:2301 -#: grub-core/net/http.c:120 -#, c-format -msgid "file `%s' not found" -msgstr "`%s' dosyası bulunamadı" - -#: grub-core/commands/i386/pc/play.c:162 grub-core/commands/i386/pc/play.c:171 -#: grub-core/kern/misc.c:419 grub-core/script/execute.c:138 -#: grub-core/script/execute.c:244 -msgid "unrecognized number" -msgstr "Tanınmamış numara" - -#: grub-core/commands/i386/pc/play.c:190 -msgid "FILE | TEMPO [PITCH1 DURATION1] [PITCH2 DURATION2] ... " -msgstr "DOSYA | TEMPO [PERDE1 SÜRE1] [PERDE2 SÜRE2] ... " - -#: grub-core/commands/i386/pc/play.c:191 -msgid "Play a tune." -msgstr "Bir melodi yürüt." - -#: grub-core/commands/i386/pc/sendkey.c:39 -msgid "set numlock mode" -msgstr "numlock durumunu ayarla" - -#: grub-core/commands/i386/pc/sendkey.c:40 -msgid "set capslock mode" -msgstr "capslock durumunu ayarla" - -#: grub-core/commands/i386/pc/sendkey.c:41 -msgid "set scrolllock mode" -msgstr "scrollock durumunu ayarla" - -#: grub-core/commands/i386/pc/sendkey.c:42 -msgid "set insert mode" -msgstr "" - -#: grub-core/commands/i386/pc/sendkey.c:43 -msgid "set pause mode" -msgstr "" - -#: grub-core/commands/i386/pc/sendkey.c:44 -msgid "press left shift" -msgstr "sol shift'e bas" - -#: grub-core/commands/i386/pc/sendkey.c:45 -msgid "press right shift" -msgstr "saÄŸ shift'e bas" - -#: grub-core/commands/i386/pc/sendkey.c:46 -msgid "press SysRq" -msgstr "SysRq tuÅŸuna basın" - -#: grub-core/commands/i386/pc/sendkey.c:47 -msgid "press NumLock key" -msgstr "NumLock tuÅŸuna bas" - -#: grub-core/commands/i386/pc/sendkey.c:48 -msgid "press CapsLock key" -msgstr "CapsLock tuÅŸuna bas" - -#: grub-core/commands/i386/pc/sendkey.c:49 -msgid "press ScrollLock key" -msgstr "ScrollLock tuÅŸuna bas" - -#: grub-core/commands/i386/pc/sendkey.c:50 -msgid "press Insert key" -msgstr "Insert tuÅŸuna bas" - -#: grub-core/commands/i386/pc/sendkey.c:51 -msgid "press left alt" -msgstr "sol alt'a bas" - -#: grub-core/commands/i386/pc/sendkey.c:52 -msgid "press right alt" -msgstr "saÄŸ alt'a bas" - -#: grub-core/commands/i386/pc/sendkey.c:53 -msgid "press left ctrl" -msgstr "sol ctrl'ye bas" - -#: grub-core/commands/i386/pc/sendkey.c:54 -msgid "press right ctrl" -msgstr "saÄŸ ctrl'ye bas" - -#: grub-core/commands/i386/pc/sendkey.c:55 -msgid "don't update LED state" -msgstr "LED durumunu güncelleme" - -#: grub-core/commands/i386/pc/sendkey.c:372 -msgid "[KEYSTROKE1] [KEYSTROKE2] ..." -msgstr "" - -#. TRANSLATORS: It can emulate multiple -#. keypresses. -#: grub-core/commands/i386/pc/sendkey.c:375 -msgid "Emulate a keystroke sequence" -msgstr "" - -#: grub-core/commands/i386/rdmsr.c:37 grub-core/commands/iorw.c:34 -#: grub-core/commands/memrw.c:33 grub-core/commands/setpci.c:73 -msgid "Save read value into variable VARNAME." -msgstr "Okunan deÄŸeri VARNAME deÄŸiÅŸkeni içine kaydet." - -#: grub-core/commands/i386/rdmsr.c:38 grub-core/commands/iorw.c:35 -#: grub-core/commands/memrw.c:34 grub-core/commands/probe.c:40 -#: grub-core/commands/search_wrap.c:40 grub-core/commands/setpci.c:74 -#: grub-core/commands/tr.c:32 -msgid "VARNAME" -msgstr "VARNAME" - -#: grub-core/commands/i386/rdmsr.c:55 grub-core/commands/i386/rdmsr.c:60 -#: grub-core/commands/i386/rdmsr.c:65 grub-core/commands/i386/wrmsr.c:47 -#: grub-core/commands/i386/wrmsr.c:52 grub-core/commands/i386/wrmsr.c:57 -#, fuzzy -msgid "unsupported instruction" -msgstr "desteklenmeyen gzip biçimi" - -#: grub-core/commands/i386/rdmsr.c:77 grub-core/commands/i386/wrmsr.c:69 -#: grub-core/commands/i386/wrmsr.c:77 grub-core/net/dns.c:727 -msgid "invalid argument" -msgstr "geçersiz bağımsız deÄŸiÅŸken" - -#: grub-core/commands/i386/rdmsr.c:94 grub-core/commands/memrw.c:125 -#: grub-core/commands/memrw.c:129 grub-core/commands/memrw.c:133 -msgid "ADDR" -msgstr "ADDR" - -#: grub-core/commands/i386/rdmsr.c:95 -msgid "Read a CPU model specific register." -msgstr "" - -#: grub-core/commands/i386/wrmsr.c:86 -#, fuzzy -msgid "ADDR VALUE" -msgstr "ADDR DEÄžERİ [MASKE]" - -#: grub-core/commands/i386/wrmsr.c:87 -msgid "Write a value to a CPU model specific register." -msgstr "" - -#: grub-core/commands/ieee1275/suspend.c:34 -msgid "Run `go' to resume GRUB." -msgstr "GRUB'a devam etmek için `go' komutunu çalıştır." - -#: grub-core/commands/ieee1275/suspend.c:45 -msgid "Return to IEEE1275 prompt." -msgstr "" - -#: grub-core/commands/iorw.c:123 grub-core/commands/iorw.c:127 -#: grub-core/commands/iorw.c:131 grub-core/gdb/gdb.c:79 -msgid "PORT" -msgstr "KAPI" - -#: grub-core/commands/iorw.c:123 -msgid "Read 8-bit value from PORT." -msgstr "BAÄžLANTI NOKTASINDAN 8-bit deÄŸer oku." - -#: grub-core/commands/iorw.c:127 -msgid "Read 16-bit value from PORT." -msgstr "BAÄžLANTI NOKTASINDAN 16-bit deÄŸer oku." - -#: grub-core/commands/iorw.c:131 -msgid "Read 32-bit value from PORT." -msgstr "BAÄžLANTI NOKTASINDAN 32-bit deÄŸer oku." - -#: grub-core/commands/iorw.c:135 grub-core/commands/iorw.c:139 -msgid "PORT VALUE [MASK]" -msgstr "KAPI DEÄžERİ [MASKE]" - -#: grub-core/commands/iorw.c:136 -msgid "Write 8-bit VALUE to PORT." -msgstr "BAÄžLANTI NOKTASINA 8-bit DEÄžER yaz." - -#: grub-core/commands/iorw.c:140 -msgid "Write 16-bit VALUE to PORT." -msgstr "BAÄžLANTI NOKTASINA 16-bit DEÄžER yaz." - -#: grub-core/commands/iorw.c:143 grub-core/commands/memrw.c:137 -#: grub-core/commands/memrw.c:141 grub-core/commands/memrw.c:145 -msgid "ADDR VALUE [MASK]" -msgstr "ADDR DEÄžERİ [MASKE]" - -#: grub-core/commands/iorw.c:144 -msgid "Write 32-bit VALUE to PORT." -msgstr "BAÄžLANTI NOKTASINA 32-bit DEÄžER yaz." - -#: grub-core/commands/keylayouts.c:215 grub-core/commands/loadenv.c:61 -#: grub-core/commands/nativedisk.c:189 grub-core/efiemu/main.c:235 -#: grub-core/font/font.c:428 grub-core/gfxmenu/gfxmenu.c:63 -#: grub-core/kern/device.c:42 grub-core/kern/dl.c:740 -#, c-format -msgid "variable `%s' isn't set" -msgstr "`%s' deÄŸiÅŸkeni ayarlanmamış" - -#: grub-core/commands/keylayouts.c:301 -msgid "Load a keyboard layout." -msgstr "Bir klavye düzeni yükle." - -#. TRANSLATORS: "Check" in a sense that if this key is pressed then -#. "true" is returned, otherwise "false". -#: grub-core/commands/keystatus.c:32 -msgid "Check Shift key." -msgstr "Üst karakter tuÅŸunu denetle." - -#: grub-core/commands/keystatus.c:33 -msgid "Check Control key." -msgstr "Kontrol tuÅŸunu denetle." - -#: grub-core/commands/keystatus.c:34 -msgid "Check Alt key." -msgstr "Alt tuÅŸunu denetle." - -#. TRANSLATORS: there are 3 modifiers. -#: grub-core/commands/keystatus.c:106 -msgid "Check key modifier status." -msgstr "Anahtar düzenleyici durumunu denetle." - -#: grub-core/commands/legacycfg.c:512 grub-core/commands/legacycfg.c:526 -#: grub-core/commands/legacycfg.c:546 grub-core/commands/legacycfg.c:559 -#: grub-core/commands/time.c:43 grub-core/script/function.c:109 -#: util/grub-file.c:100 util/grub-fstest.c:57 util/grub-mount.c:69 -#, c-format -msgid "can't find command `%s'" -msgstr "`%s' komutu bulunamıyor" - -#: grub-core/commands/legacycfg.c:813 grub-core/normal/auth.c:225 -#: util/grub-mkpasswd-pbkdf2.c:139 -msgid "Enter password: " -msgstr "Parola gir: " - -#. TRANSLATORS: "legacy config" means -#. "config as used by grub-legacy". -#: grub-core/commands/legacycfg.c:837 -msgid "Parse legacy config in same context" -msgstr "Aynı baÄŸlamdaki yapılandırma kalıntılarını ayrıştır" - -#: grub-core/commands/legacycfg.c:842 -msgid "Parse legacy config in new context" -msgstr "Yeni baÄŸlamdaki yapılandırma kalıntılarını ayrıştır" - -#: grub-core/commands/legacycfg.c:847 -msgid "Parse legacy config in same context taking only menu entries" -msgstr "" - -#: grub-core/commands/legacycfg.c:852 -msgid "Parse legacy config in new context taking only menu entries" -msgstr "" - -#: grub-core/commands/legacycfg.c:856 -msgid "[--no-mem-option] [--type=TYPE] FILE [ARG ...]" -msgstr "[--no-mem-option] [--type=TÜR] DOSYA [PARAMETRELER ...]" - -#: grub-core/commands/legacycfg.c:857 -msgid "Simulate grub-legacy `kernel' command" -msgstr "" - -#: grub-core/commands/legacycfg.c:861 grub-core/commands/legacycfg.c:865 -msgid "FILE [ARG ...]" -msgstr "DOSYA [PARAMETRELER ...]" - -#: grub-core/commands/legacycfg.c:862 -msgid "Simulate grub-legacy `initrd' command" -msgstr "" - -#: grub-core/commands/legacycfg.c:866 -msgid "Simulate grub-legacy `modulenounzip' command" -msgstr "" - -#: grub-core/commands/legacycfg.c:870 grub-core/commands/legacycfg.c:875 -msgid "[--md5] PASSWD [FILE]" -msgstr "[--md5] ŞİFRE [DOSYA]" - -#: grub-core/commands/legacycfg.c:871 -msgid "Simulate grub-legacy `password' command" -msgstr "" - -#: grub-core/commands/legacycfg.c:876 -msgid "Simulate grub-legacy `password' command in menu entry mode" -msgstr "" - -#. TRANSLATORS: This option is used to override default filename -#. for loading and storing environment. -#: grub-core/commands/loadenv.c:37 -msgid "Specify filename." -msgstr "Dosya adı belirt." - -#: grub-core/commands/loadenv.c:39 -msgid "Skip signature-checking of the environment file." -msgstr "" - -#: grub-core/commands/loadenv.c:451 -msgid "[-f FILE] [-s|--skip-sig] [variable_name_to_whitelist] [...]" -msgstr "" - -#: grub-core/commands/loadenv.c:452 -msgid "Load variables from environment block file." -msgstr "Ortam öbek dosyasından deÄŸiÅŸkenleri yükle." - -#: grub-core/commands/loadenv.c:455 -msgid "[-f FILE]" -msgstr "[-f DOSYA]" - -#: grub-core/commands/loadenv.c:456 -msgid "List variables from environment block file." -msgstr "Ortam öbek dosyasından deÄŸiÅŸkenleri listele." - -#: grub-core/commands/loadenv.c:460 -msgid "[-f FILE] variable_name [...]" -msgstr "[-f DOSYA] deÄŸiÅŸken_adı [...]" - -#: grub-core/commands/loadenv.c:461 -msgid "Save variables to environment block file." -msgstr "Ortam öbek dosyasına deÄŸiÅŸkenleri kaydet." - -#: grub-core/commands/ls.c:40 -msgid "Show a long list with more detailed information." -msgstr "Daha ayrıntılı bilgi ile uzun bir liste göster." - -#: grub-core/commands/ls.c:41 -msgid "Print sizes in a human readable format." -msgstr "Boyutları kullanıcının okuyabileceÄŸi biçimde bastır." - -#: grub-core/commands/ls.c:42 -msgid "List all files." -msgstr "Tüm dosyaları listele." - -#: grub-core/commands/ls.c:73 -msgid "Network protocols:" -msgstr "AÄŸ protokolleri:" - -#: grub-core/commands/ls.c:295 -msgid "[-l|-h|-a] [FILE ...]" -msgstr "[-l|-h|-a] [DOSYA ...]" - -#: grub-core/commands/ls.c:296 -msgid "List devices and files." -msgstr "Aygıtları ve dosyaları listele." - -#: grub-core/commands/lsacpi.c:255 -msgid "Show version 1 tables only." -msgstr "Yalnızca sürüm 1 tablolarını göster." - -#: grub-core/commands/lsacpi.c:256 -msgid "Show version 2 and version 3 tables only." -msgstr "Yalnızca sürüm 2 ve sürüm 3 tablolarını göster." - -#: grub-core/commands/lsacpi.c:306 -msgid "Show ACPI information." -msgstr "ACPI bilgisini göster." - -#: grub-core/commands/lsmmap.c:31 -msgid "available RAM" -msgstr "kullanılabilir RAM" - -#: grub-core/commands/lsmmap.c:32 -msgid "reserved RAM" -msgstr "ayrılmış RAM" - -#. TRANSLATORS: this refers to memory where ACPI tables are stored -#. and which can be used by OS once it loads ACPI tables. -#: grub-core/commands/lsmmap.c:35 -msgid "ACPI reclaimable RAM" -msgstr "" - -#. TRANSLATORS: this refers to memory which ACPI-compliant OS -#. is required to save accross hibernations. -#: grub-core/commands/lsmmap.c:38 -msgid "ACPI non-volatile storage RAM" -msgstr "" - -#: grub-core/commands/lsmmap.c:39 -msgid "faulty RAM (BadRAM)" -msgstr "" - -#: grub-core/commands/lsmmap.c:40 -msgid "persistent RAM" -msgstr "" - -#: grub-core/commands/lsmmap.c:41 -msgid "persistent RAM (legacy)" -msgstr "" - -#: grub-core/commands/lsmmap.c:42 -msgid "RAM holding coreboot tables" -msgstr "" - -#: grub-core/commands/lsmmap.c:43 -msgid "RAM holding firmware code" -msgstr "" - -#: grub-core/commands/lsmmap.c:52 -#, c-format -msgid "base_addr = 0x%llx, length = 0x%llx, %s\n" -msgstr "" - -#: grub-core/commands/lsmmap.c:55 -#, c-format -msgid "base_addr = 0x%llx, length = 0x%llx, type = 0x%x\n" -msgstr "" - -#: grub-core/commands/lsmmap.c:79 -msgid "List memory map provided by firmware." -msgstr "Gömülü yazılım tarafından saÄŸlanan bellek haritasını listele." - -#: grub-core/commands/lspci.c:232 -msgid "List PCI devices." -msgstr "PCI aygıtlarını listele." - -#: grub-core/commands/macbless.c:224 -msgid "Bless FILE of HFS or HFS+ partition for intel macs." -msgstr "" - -#: grub-core/commands/macbless.c:228 -msgid "Bless DIR of HFS or HFS+ partition for PPC macs." -msgstr "" - -#: grub-core/commands/memrw.c:125 -msgid "Read 8-bit value from ADDR." -msgstr "ADDR'den 8-bit deÄŸer oku." - -#: grub-core/commands/memrw.c:129 -msgid "Read 16-bit value from ADDR." -msgstr "ADDR'den 16-bit deÄŸer oku." - -#: grub-core/commands/memrw.c:133 -msgid "Read 32-bit value from ADDR." -msgstr "ADDR'den 32-bit deÄŸer oku." - -#: grub-core/commands/memrw.c:138 -msgid "Write 8-bit VALUE to ADDR." -msgstr "ADDR'ye 8-bit DEÄžER yaz." - -#: grub-core/commands/memrw.c:142 -msgid "Write 16-bit VALUE to ADDR." -msgstr "ADDR'ye 16-bit DEÄžER yaz." - -#: grub-core/commands/memrw.c:146 -msgid "Write 32-bit VALUE to ADDR." -msgstr "ADDR'ye 32-bit DEÄžER yaz." - -#: grub-core/commands/menuentry.c:31 -msgid "Menu entry type." -msgstr "Menü girdisi türü." - -#: grub-core/commands/menuentry.c:31 grub-core/commands/menuentry.c:38 -#: grub-core/commands/menuentry.c:39 grub-core/gettext/gettext.c:520 -#: util/grub-fstest.c:520 util/grub-install.c:291 util/grub-install.c:304 -#: util/grub-mknetdir.c:51 util/grub-mkrescue.c:109 util/grub-mkrescue.c:110 -#: util/grub-mount.c:453 util/grub-render-label.c:65 -msgid "STRING" -msgstr "DİZİ" - -#: grub-core/commands/menuentry.c:33 -msgid "List of users allowed to boot this entry." -msgstr "Bu girdiyi baÅŸlatabilecek kullanıcıların listesi." - -#: grub-core/commands/menuentry.c:33 -msgid "USERNAME[,USERNAME]" -msgstr "KULLANICIADI[,KULLANICIADI]" - -#: grub-core/commands/menuentry.c:36 -msgid "Keyboard key to quickly boot this entry." -msgstr "Bu girdiyi hızlıca baÅŸlatacak klavye tuÅŸu." - -#: grub-core/commands/menuentry.c:36 -msgid "KEYBOARD_KEY" -msgstr "KLAVYE _TUÅžU" - -#: grub-core/commands/menuentry.c:38 -msgid "Use STRING as menu entry body." -msgstr "" - -#: grub-core/commands/menuentry.c:39 -msgid "Menu entry identifier." -msgstr "Menü girdisi tanımlayıcı." - -#. TRANSLATORS: menu entry can either be bootable by anyone or only by -#. handful of users. By default when security is active only superusers can -#. boot a given menu entry. With --unrestricted (this option) -#. anyone can boot it. -#: grub-core/commands/menuentry.c:44 -msgid "This entry can be booted by any user." -msgstr "Bu girdi herhangi bir kullanıcı tarafından baÅŸlatılabilir." - -#: grub-core/commands/menuentry.c:323 grub-core/commands/menuentry.c:328 -#: grub-core/tests/test_blockarg.c:46 -msgid "BLOCK" -msgstr "BLOK" - -#: grub-core/commands/menuentry.c:323 -msgid "Define a menu entry." -msgstr "Bir menü girdisi tanımla." - -#: grub-core/commands/menuentry.c:328 -msgid "Define a submenu." -msgstr "Bir alt menü tanımla." - -#. TRANSLATORS: this is module list header. Name -#. is module name, Ref Count is a reference counter -#. (how many modules or open descriptors use it). -#. Dependencies are the other modules it uses. -#. -#: grub-core/commands/minicmd.c:162 -msgid "Name\tRef Count\tDependencies\n" -msgstr "" - -#: grub-core/commands/minicmd.c:201 -msgid "Show this message." -msgstr "Bu iletiyi göster." - -#: grub-core/commands/minicmd.c:204 -msgid "ADDR [SIZE]" -msgstr "" - -#: grub-core/commands/minicmd.c:204 -msgid "Show memory contents." -msgstr "Bellek içeriÄŸi göster." - -#: grub-core/commands/minicmd.c:207 grub-core/kern/corecmd.c:188 -#: util/grub-install.c:275 -msgid "MODULE" -msgstr "MODÜL" - -#: grub-core/commands/minicmd.c:207 -msgid "Remove a module." -msgstr "Modülü kaldır." - -#: grub-core/commands/minicmd.c:210 -msgid "Show loaded modules." -msgstr "Yüklenen modülleri göster." - -#: grub-core/commands/minicmd.c:213 -msgid "Exit from GRUB." -msgstr "GRUB'dan çık." - -#: grub-core/commands/mips/loongson/lsspd.c:42 -msgid "No CS5536 found" -msgstr "CS5536 bulunamadı" - -#: grub-core/commands/mips/loongson/lsspd.c:45 -#, c-format -msgid "CS5536 at %d:%d.%d\n" -msgstr "" - -#. TRANSLATORS: System management bus is often used to access components like -#. RAM (info only, not data) or batteries. I/O space is where in memory -#. its ports are. -#: grub-core/commands/mips/loongson/lsspd.c:55 -#, c-format -msgid "System management bus controller I/O space is at 0x%x\n" -msgstr "" - -#. TRANSLATORS: it's shown in a report in a way -#. like number 1: ... number 2: ... -#. -#: grub-core/commands/mips/loongson/lsspd.c:66 -#, c-format -msgid "RAM slot number %d\n" -msgstr "RAM yuva numarası %d\n" - -#: grub-core/commands/mips/loongson/lsspd.c:73 -#, c-format -msgid "Written SPD bytes: %d B.\n" -msgstr "Yazılan SPD baytları: %d B.\n" - -#: grub-core/commands/mips/loongson/lsspd.c:74 -#, c-format -msgid "Total flash size: %d B.\n" -msgstr "Toplam flash boyutu: %d B.\n" - -#: grub-core/commands/mips/loongson/lsspd.c:79 -msgid "Memory type: DDR2." -msgstr "Bellek türü: DDR2." - -#: grub-core/commands/mips/loongson/lsspd.c:83 -#, fuzzy, c-format -msgid "Part no: %s.\n" -msgstr "Parça numarası: %s." - -#: grub-core/commands/mips/loongson/lsspd.c:86 -msgid "Memory type: Unknown." -msgstr "Bellek türü: Bilinmiyor." - -#: grub-core/commands/mips/loongson/lsspd.c:97 -msgid "Print Memory information." -msgstr "Bellek bilgilerini yazdır." - -#: grub-core/commands/nativedisk.c:118 grub-core/commands/probe.c:118 -#: grub-core/commands/probe.c:124 util/grub-probe.c:450 -#, c-format -msgid "%s does not support UUIDs" -msgstr "%s, UUID'leri desteklemiyor" - -#: grub-core/commands/nativedisk.c:325 -msgid "[MODULE1 MODULE2 ...]" -msgstr "[MODUL1 MODUL2 ...]" - -#: grub-core/commands/nativedisk.c:326 -msgid "" -"Switch to native disk drivers. If no modules are specified default set (pata," -"ahci,usbms,ohci,uhci,ehci) is used" -msgstr "" - -#: grub-core/commands/parttool.c:40 -msgid "" -"Perform COMMANDS on partition.\n" -"Use `parttool PARTITION help' for the list of available commands." -msgstr "" - -#: grub-core/commands/parttool.c:123 -msgid "=VAL" -msgstr "" - -#: grub-core/commands/parttool.c:136 -#, c-format -msgid "Sorry, no parttool is available for %s\n" -msgstr "" - -#: grub-core/commands/parttool.c:288 grub-core/lib/arg.c:285 -#: grub-core/lib/arg.c:351 -#, c-format -msgid "unknown argument `%s'" -msgstr "bilinmeyen argüman '%s'" - -#: grub-core/commands/parttool.c:344 -msgid "PARTITION COMMANDS" -msgstr "BÖLÜM KOMUTLARI" - -#: grub-core/commands/password.c:85 -msgid "USER PASSWORD" -msgstr "KULLANICI PAROLASI" - -#: grub-core/commands/password.c:86 -msgid "Set user password (plaintext). Unrecommended and insecure." -msgstr "Kullanıcı parolasını ayarla (düz metin). Önerilmez ve güvensizdir." - -#. TRANSLATORS: it means that the string which -#. was supposed to be a password hash doesn't -#. have a correct format, not to password -#. mismatch. -#: grub-core/commands/password_pbkdf2.c:98 -#: grub-core/commands/password_pbkdf2.c:115 -#: grub-core/commands/password_pbkdf2.c:123 -#: grub-core/commands/password_pbkdf2.c:150 -#: grub-core/commands/password_pbkdf2.c:179 -msgid "invalid PBKDF2 password" -msgstr "PBKDF2 parolası geçersiz" - -#: grub-core/commands/password_pbkdf2.c:202 -msgid "USER PBKDF2_PASSWORD" -msgstr "KULLANICI PBKDF2_ŞİFRESİ" - -#: grub-core/commands/password_pbkdf2.c:203 -msgid "Set user password (PBKDF2). " -msgstr "Kullanıcı parolası ayarla (PBKDF2). " - -#: grub-core/commands/pcidump.c:39 grub-core/commands/setpci.c:69 -msgid "Select device by vendor and device IDs." -msgstr "Üretici ve aygıt numaralarına göre aygıt seç." - -#: grub-core/commands/pcidump.c:40 grub-core/commands/setpci.c:70 -msgid "[vendor]:[device]" -msgstr "[üretici]:[aygıt]" - -#: grub-core/commands/pcidump.c:41 grub-core/commands/setpci.c:71 -msgid "Select device by its position on the bus." -msgstr "Veri yolundaki konumuna göre aygıt seç." - -#: grub-core/commands/pcidump.c:42 grub-core/commands/setpci.c:72 -msgid "[bus]:[slot][.func]" -msgstr "" - -#: grub-core/commands/pcidump.c:109 grub-core/commands/pcidump.c:138 -#: grub-core/commands/setpci.c:183 grub-core/commands/setpci.c:214 -#: grub-core/fs/zfs/zfs.c:3794 grub-core/kern/emu/hostdisk.c:458 -#: grub-core/kern/emu/hostdisk.c:473 grub-core/kern/file.c:44 -#, c-format -msgid "missing `%c' symbol" -msgstr "eksik `%c' simgesi" - -#: grub-core/commands/pcidump.c:168 -msgid "[-s POSITION] [-d DEVICE]" -msgstr "" - -#: grub-core/commands/pcidump.c:169 -msgid "Show raw dump of the PCI configuration space." -msgstr "" - -#: grub-core/commands/pgp.c:45 -msgid "Skip signature-checking of the public key file." -msgstr "Açık anahtar dosyasının imza denetimini atla." - -#. TRANSLATORS: it's about GNUPG signatures. -#: grub-core/commands/pgp.c:71 grub-core/commands/pgp.c:81 -#: grub-core/commands/pgp.c:86 grub-core/commands/pgp.c:96 -#: grub-core/commands/pgp.c:103 grub-core/commands/pgp.c:107 -#: grub-core/commands/pgp.c:114 grub-core/commands/pgp.c:119 -#: grub-core/commands/pgp.c:124 grub-core/commands/pgp.c:128 -#: grub-core/commands/pgp.c:268 grub-core/commands/pgp.c:276 -#: grub-core/commands/pgp.c:281 grub-core/commands/pgp.c:289 -#: grub-core/commands/pgp.c:320 grub-core/commands/pgp.c:327 -#: grub-core/commands/pgp.c:332 grub-core/commands/pgp.c:342 -#: grub-core/commands/pgp.c:468 grub-core/commands/pgp.c:471 -#: grub-core/commands/pgp.c:474 grub-core/commands/pgp.c:477 -#: grub-core/commands/pgp.c:484 grub-core/commands/pgp.c:490 -#: grub-core/commands/pgp.c:665 -msgid "bad signature" -msgstr "Hatalı imza" - -#. TRANSLATORS: %08x is 32-bit key id. -#: grub-core/commands/pgp.c:636 grub-core/commands/pgp.c:812 -#, c-format -msgid "public key %08x not found" -msgstr "açık anahtar %08x bulunamadı" - -#: grub-core/commands/pgp.c:651 grub-core/disk/diskfilter.c:772 -#: grub-core/disk/diskfilter.c:782 grub-core/fs/ntfs.c:404 -#: grub-core/fs/zfs/zfs.c:1933 grub-core/normal/menu.c:428 -#, c-format -msgid "module `%s' isn't loaded" -msgstr "%s modülü yüklenemedi" - -#: grub-core/commands/pgp.c:994 -msgid "[-s|--skip-sig] FILE SIGNATURE_FILE [PUBKEY_FILE]" -msgstr "" - -#: grub-core/commands/pgp.c:995 -msgid "Verify detached signature." -msgstr "" - -#: grub-core/commands/pgp.c:998 -msgid "[-s|--skip-sig] PUBKEY_FILE" -msgstr "" - -#: grub-core/commands/pgp.c:999 -msgid "Add PUBKEY_FILE to trusted keys." -msgstr "" - -#: grub-core/commands/pgp.c:1003 -msgid "Show the list of trusted keys." -msgstr "Güvenilen anahtar listesini göster." - -#: grub-core/commands/pgp.c:1005 -msgid "PUBKEY_ID" -msgstr "" - -#: grub-core/commands/pgp.c:1006 -msgid "Remove PUBKEY_ID from trusted keys." -msgstr "" - -#: grub-core/commands/probe.c:40 grub-core/commands/tr.c:32 -msgid "Set a variable to return value." -msgstr "Döndürülen deÄŸere bir deÄŸiÅŸken ayarlayın." - -#. TRANSLATORS: It's a driver that is currently in use to access -#. the diven disk. -#: grub-core/commands/probe.c:43 -msgid "Determine driver." -msgstr "Sürücü belirleyin." - -#: grub-core/commands/probe.c:44 -msgid "Determine partition map type." -msgstr "Bölme haritası türünü belirleyin." - -#: grub-core/commands/probe.c:45 -msgid "Determine filesystem type." -msgstr "Dosya sistemi türünü belirleyin." - -#: grub-core/commands/probe.c:46 -msgid "Determine filesystem UUID." -msgstr "Dosya sistemi UUID'sini belirleyin." - -#: grub-core/commands/probe.c:47 -msgid "Determine filesystem label." -msgstr "Dosya sistemi etiketini belirleyin." - -#: grub-core/commands/probe.c:139 grub-core/commands/probe.c:146 -#: util/grub-probe.c:462 -#, c-format -msgid "filesystem `%s' does not support labels" -msgstr "`%s' dosya sistemi etiketleri desteklemiyor" - -#: grub-core/commands/probe.c:165 grub-core/fs/zfs/zfsinfo.c:430 -#: grub-core/loader/i386/bsd.c:169 util/grub-setup.c:223 -msgid "DEVICE" -msgstr "AYGIT" - -#: grub-core/commands/probe.c:166 -msgid "Retrieve device info." -msgstr "Aygıt bilgisini al." - -#: grub-core/commands/read.c:85 -msgid "[ENVVAR]" -msgstr "[ENVVAR]" - -#: grub-core/commands/read.c:86 -msgid "Set variable with user input." -msgstr "DeÄŸiÅŸkeni kullanıcı girdisi ile ayarla." - -#: grub-core/commands/reboot.c:40 -msgid "Reboot the computer." -msgstr "Bilgisayarı yeniden baÅŸlat." - -#. TRANSLATORS: in regexp you can mark some -#. groups with parentheses. These groups are -#. then numbered and you can save some of -#. them in variables. In other programs -#. those components aree often referenced with -#. back slash, e.g. \1. Compare -#. sed -e 's,\([a-z][a-z]*\),lowercase=\1,g' -#. The whole matching component is saved in VARNAME, not its number. -#. -#: grub-core/commands/regexp.c:44 -msgid "Store matched component NUMBER in VARNAME." -msgstr "" - -#: grub-core/commands/regexp.c:45 -msgid "[NUMBER:]VARNAME" -msgstr "[NUMARA:]DEĞİŞKEN_ADI" - -#. TRANSLATORS: This are two arguments. So it's -#. two separate units to translate and pay -#. attention not to reverse them. -#: grub-core/commands/regexp.c:157 -msgid "REGEXP STRING" -msgstr "REGEXP ARAMA METNİ" - -#: grub-core/commands/regexp.c:158 -msgid "Test if REGEXP matches STRING." -msgstr "REGEXP'in METNE uygunluÄŸunu test et." - -#: grub-core/commands/search.c:324 -msgid "NAME [VARIABLE] [HINTS]" -msgstr "İSİM[ÖNTANIMLI][İPUCU]" - -#: grub-core/commands/search_file.c:4 -msgid "" -"Search devices by file. If VARIABLE is specified, the first device found is " -"set to a variable." -msgstr "" -"Aygıtları dosya göre ara. EÄŸer DEĞİŞKEN belirli ise bulunan ilk aygıt " -"deÄŸiÅŸken olarak ayarlanır." - -#: grub-core/commands/search_label.c:4 -msgid "" -"Search devices by label. If VARIABLE is specified, the first device found is " -"set to a variable." -msgstr "" -"Aygıtları etikete göre ara. EÄŸer DEĞİŞKEN belirli ise bulunan ilk aygıt " -"deÄŸiÅŸken olarak ayarlanır." - -#: grub-core/commands/search_uuid.c:4 -msgid "" -"Search devices by UUID. If VARIABLE is specified, the first device found is " -"set to a variable." -msgstr "" -"Aygıtları UUID göre ara. EÄŸer DEĞİŞKEN belirli ise bulunan ilk aygıt " -"deÄŸiÅŸken olarak ayarlanır." - -#: grub-core/commands/search_wrap.c:34 -msgid "Search devices by a file." -msgstr "Dosyaya göre aygıtlar ara." - -#: grub-core/commands/search_wrap.c:35 -msgid "Search devices by a filesystem label." -msgstr "Dosya sistemi etiketine göre aygıtlar ara." - -#: grub-core/commands/search_wrap.c:37 -msgid "Search devices by a filesystem UUID." -msgstr "Dosya sistemi UUID'sine göre aygıtlar ara." - -#: grub-core/commands/search_wrap.c:40 -msgid "Set a variable to the first device found." -msgstr "İlk aygıt bulunduÄŸunda bir deÄŸiÅŸken ayarla." - -#: grub-core/commands/search_wrap.c:42 -msgid "Do not probe any floppy drive." -msgstr "Hiçbir disket sürücüsünü inceleme." - -#: grub-core/commands/search_wrap.c:44 -msgid "" -"First try the device HINT. If HINT ends in comma, also try subpartitions" -msgstr "" -"Öncelikle cihazın İPUCU'nu deneyin. EÄŸer İPUCU virgül ile biterse ayrıca alt " -"bölümleri deneyin." - -#: grub-core/commands/search_wrap.c:45 grub-core/commands/search_wrap.c:49 -#: grub-core/commands/search_wrap.c:53 grub-core/commands/search_wrap.c:57 -#: grub-core/commands/search_wrap.c:61 grub-core/commands/search_wrap.c:65 -msgid "HINT" -msgstr "İPUCU" - -#: grub-core/commands/search_wrap.c:47 -msgid "" -"First try the device HINT if currently running on IEEE1275. If HINT ends in " -"comma, also try subpartitions" -msgstr "" - -#: grub-core/commands/search_wrap.c:51 -msgid "" -"First try the device HINT if currently running on BIOS. If HINT ends in " -"comma, also try subpartitions" -msgstr "" - -#: grub-core/commands/search_wrap.c:55 -msgid "" -"First try the device HINT if direct hardware access is supported. If HINT " -"ends in comma, also try subpartitions" -msgstr "" - -#: grub-core/commands/search_wrap.c:59 -msgid "" -"First try the device HINT if currently running on EFI. If HINT ends in " -"comma, also try subpartitions" -msgstr "" - -#: grub-core/commands/search_wrap.c:63 -msgid "" -"First try the device HINT if currently running on ARC. If HINT ends in " -"comma, also try subpartitions" -msgstr "" - -#: grub-core/commands/search_wrap.c:207 -msgid "[-f|-l|-u|-s|-n] [--hint HINT [--hint HINT] ...] NAME" -msgstr "[-f|-l|-u|-s|-n] [--ipucu İPUCU[--ipucu İPUCU] ...] İSİM" - -#: grub-core/commands/search_wrap.c:209 -msgid "" -"Search devices by file, filesystem label or filesystem UUID. If --set is " -"specified, the first device found is set to a variable. If no variable name " -"is specified, `root' is used." -msgstr "" - -#: grub-core/commands/setpci.c:132 -#, c-format -msgid "Register %x of %x:%02x.%x is %x\n" -msgstr "" - -#: grub-core/commands/setpci.c:333 -msgid "[-s POSITION] [-d DEVICE] [-v VAR] REGISTER[=VALUE[:MASK]]" -msgstr "" - -#: grub-core/commands/setpci.c:335 -msgid "Manipulate PCI devices." -msgstr "PCI aygıtlarını iÅŸlet." - -#: grub-core/commands/sleep.c:32 -msgid "Verbose countdown." -msgstr "Geri sayımı ayrıntıla." - -#: grub-core/commands/sleep.c:33 -msgid "Allow to interrupt with ESC." -msgstr "" - -#: grub-core/commands/sleep.c:109 -msgid "NUMBER_OF_SECONDS" -msgstr "SANİYE_SAYISI" - -#: grub-core/commands/sleep.c:110 -msgid "Wait for a specified number of seconds." -msgstr "Belirlenen saniye kadar bekle." - -#: grub-core/commands/syslinuxcfg.c:50 util/grub-syslinux2cfg.c:66 -msgid "root directory of the syslinux disk [default=/]." -msgstr "" - -#: grub-core/commands/syslinuxcfg.c:53 util/grub-syslinux2cfg.c:72 -msgid "" -"current directory of syslinux [default is parent directory of input file]." -msgstr "" - -#: grub-core/commands/syslinuxcfg.c:55 util/grub-syslinux2cfg.c:75 -msgid "assume input is an isolinux configuration file." -msgstr "" - -#: grub-core/commands/syslinuxcfg.c:56 util/grub-syslinux2cfg.c:76 -msgid "assume input is a pxelinux configuration file." -msgstr "" - -#: grub-core/commands/syslinuxcfg.c:57 util/grub-syslinux2cfg.c:77 -msgid "assume input is a syslinux configuration file." -msgstr "" - -#. TRANSLATORS: "syslinux config" means -#. "config as used by syslinux". -#: grub-core/commands/syslinuxcfg.c:189 -msgid "Execute syslinux config in same context" -msgstr "" - -#: grub-core/commands/syslinuxcfg.c:195 -msgid "Execute syslinux config in new context" -msgstr "" - -#: grub-core/commands/syslinuxcfg.c:201 -msgid "Execute syslinux config in same context taking only menu entries" -msgstr "" - -#: grub-core/commands/syslinuxcfg.c:207 -msgid "Execute syslinux config in new context taking only menu entries" -msgstr "" - -#: grub-core/commands/terminal.c:90 -msgid "no terminal specified" -msgstr "uçbirim belirlenmedi" - -#: grub-core/commands/terminal.c:112 grub-core/commands/terminal.c:139 -#, c-format -msgid "terminal `%s' isn't found" -msgstr "uçbirim `%s' bulunamadı" - -#: grub-core/commands/terminal.c:244 -msgid "Active input terminals:" -msgstr "Etkin girdi uçbirimleri:" - -#: grub-core/commands/terminal.c:245 -msgid "Available input terminals:" -msgstr "Kullanılabilir girdi uçbirimleri:" - -#: grub-core/commands/terminal.c:261 -msgid "Active output terminals:" -msgstr "Etkin çıktı uçbirimleri:" - -#: grub-core/commands/terminal.c:262 -msgid "Available output terminals:" -msgstr "Kullanılabilir çıktı uçbirimleri:" - -#: grub-core/commands/terminal.c:271 grub-core/commands/terminal.c:276 -msgid "[--append|--remove] [TERMINAL1] [TERMINAL2] ..." -msgstr "[--append|--remove] [TERMINAL1] [TERMINAL2] ..." - -#: grub-core/commands/terminal.c:273 -msgid "List or select an input terminal." -msgstr "Bir girdi uçbirimi listele veya seç." - -#: grub-core/commands/terminal.c:278 -msgid "List or select an output terminal." -msgstr "Bir çıktı uçbirimi listele veya seç." - -#: grub-core/commands/test.c:444 -msgid "EXPRESSION ]" -msgstr "ANLATIM ]" - -#: grub-core/commands/test.c:444 grub-core/commands/test.c:447 -msgid "Evaluate an expression." -msgstr "Bir anlatım deÄŸerlendir." - -#: grub-core/commands/test.c:447 -msgid "EXPRESSION" -msgstr "ANLATIM" - -#: grub-core/commands/testload.c:164 -msgid "Load the same file in multiple ways." -msgstr "Çoklu yollarla aynı dosyayı yükle." - -#: grub-core/commands/testspeed.c:35 -msgid "Specify size for each read operation" -msgstr "Her okuma iÅŸlemi için boyut belirtin" - -#: grub-core/commands/testspeed.c:58 -msgid "invalid block size" -msgstr "Geçersiz blok boyutu" - -#: grub-core/commands/testspeed.c:80 -#, c-format -msgid "File size: %s\n" -msgstr "Dosya boyutu: %s\n" - -#: grub-core/commands/testspeed.c:83 -#, c-format -msgid "Elapsed time: %d.%03d s \n" -msgstr "Geçen süre: %d.%03d s \n" - -#: grub-core/commands/testspeed.c:92 -#, c-format -msgid "Speed: %s \n" -msgstr "Hız: %s \n" - -#: grub-core/commands/testspeed.c:107 -msgid "[-s SIZE] FILENAME" -msgstr "" - -#: grub-core/commands/testspeed.c:108 -msgid "Test file read speed." -msgstr "Dosya okuma hızını test et." - -#: grub-core/commands/time.c:38 grub-core/script/execute.c:974 -msgid "no command is specified" -msgstr "hiçbir komut belirtilmemiÅŸ" - -#: grub-core/commands/time.c:50 -#, c-format -msgid "Elapsed time: %d.%03d seconds \n" -msgstr "Geçen süre: %d.%03d saniye \n" - -#: grub-core/commands/time.c:61 -msgid "COMMAND [ARGS]" -msgstr "" - -#: grub-core/commands/time.c:62 -msgid "Measure time used by COMMAND" -msgstr "" - -#: grub-core/commands/tr.c:33 -msgid "Translate to upper case." -msgstr "Büyük harfe dönüştür." - -#: grub-core/commands/tr.c:34 -msgid "Translate to lower case." -msgstr "Küçük harfe dönüştür." - -#: grub-core/commands/tr.c:119 -msgid "[OPTIONS] [SET1] [SET2] [STRING]" -msgstr "" - -#: grub-core/commands/tr.c:120 -msgid "Translate SET1 characters to SET2 in STRING." -msgstr "" - -#. TRANSLATORS: it's a command description. -#: grub-core/commands/true.c:50 -msgid "Do nothing, successfully." -msgstr "Hiçbir ÅŸey yapma, baÅŸarılı." - -#. TRANSLATORS: it's a command description. -#: grub-core/commands/true.c:54 -msgid "Do nothing, unsuccessfully." -msgstr "Hiçbir ÅŸey yapma, baÅŸarısız." - -#: grub-core/commands/usbtest.c:221 -msgid "Test USB support." -msgstr "USB desteÄŸini sına." - -#: grub-core/commands/verifiers.c:120 -#, c-format -msgid "verification requested but nobody cares: %s" -msgstr "" - -#: grub-core/commands/verifiers.c:140 -msgid "big file signature isn't implemented yet" -msgstr "" - -#: grub-core/commands/videoinfo.c:61 -msgid "Text-only " -msgstr "Yalnızca metin " - -#. TRANSLATORS: "Direct color" is a mode when the color components -#. are written dirrectly into memory. -#: grub-core/commands/videoinfo.c:66 -#, c-format -msgid "Direct color, mask: %d/%d/%d/%d pos: %d/%d/%d/%d" -msgstr "" - -#. TRANSLATORS: In "paletted color" mode you write the index of the color -#. in the palette. Synonyms include "packed pixel". -#: grub-core/commands/videoinfo.c:78 -msgid "Paletted " -msgstr "" - -#: grub-core/commands/videoinfo.c:80 -msgid "YUV " -msgstr "" - -#. TRANSLATORS: "Planar" is the video memory where you have to write -#. in several different banks "plans" to control the different color -#. components of the same pixel. -#: grub-core/commands/videoinfo.c:85 -msgid "Planar " -msgstr "" - -#: grub-core/commands/videoinfo.c:87 -msgid "Hercules " -msgstr "" - -#: grub-core/commands/videoinfo.c:89 -msgid "CGA " -msgstr "" - -#. TRANSLATORS: Non-chain 4 is a 256-color planar -#. (unchained) video memory mode. -#: grub-core/commands/videoinfo.c:93 -msgid "Non-chain 4 " -msgstr "" - -#: grub-core/commands/videoinfo.c:95 -msgid "Monochrome " -msgstr "Siyah-beyaz " - -#: grub-core/commands/videoinfo.c:97 -msgid "Unknown video mode " -msgstr "Bilinmeyen video kipi " - -#: grub-core/commands/videoinfo.c:111 -msgid " EDID checksum invalid" -msgstr "" - -#: grub-core/commands/videoinfo.c:116 -#, c-format -msgid " EDID version: %u.%u\n" -msgstr " EDID sürümü: %u.%u\n" - -#: grub-core/commands/videoinfo.c:120 -#, c-format -msgid " Preferred mode: %ux%u\n" -msgstr " Tercih edilen kip: %ux%u\n" - -#: grub-core/commands/videoinfo.c:123 -msgid " No preferred mode available\n" -msgstr " Kullanılabilir tercih edilen kip yok\n" - -#: grub-core/commands/videoinfo.c:146 grub-core/video/video.c:490 -#: grub-core/video/video.c:498 grub-core/video/video.c:509 -#: grub-core/video/video.c:520 grub-core/video/video.c:528 -#, c-format -msgid "invalid video mode specification `%s'" -msgstr "geçersiz video kipi tanımlaması `%s'" - -#: grub-core/commands/videoinfo.c:168 -msgid "List of supported video modes:" -msgstr "Desteklenen video kipleri listesi:" - -#: grub-core/commands/videoinfo.c:169 -msgid "Legend: mask/position=red/green/blue/reserved" -msgstr "" - -#: grub-core/commands/videoinfo.c:176 -#, c-format -msgid "Adapter `%s':\n" -msgstr "BaÄŸdaÅŸtırıcı `%s':\n" - -#: grub-core/commands/videoinfo.c:180 -msgid " No info available" -msgstr " Bilgi yok" - -#: grub-core/commands/videoinfo.c:198 -msgid " Failed to initialize video adapter" -msgstr " Video baÄŸdaÅŸtırıcı baÅŸlatılamadı" - -#. TRANSLATORS: "x" has to be entered in, -#. like an identifier, so please don't -#. use better Unicode codepoints. -#: grub-core/commands/videoinfo.c:239 grub-core/commands/videoinfo.c:248 -msgid "[WxH[xD]]" -msgstr "" - -#: grub-core/commands/videoinfo.c:240 grub-core/commands/videoinfo.c:249 -msgid "" -"List available video modes. If resolution is given show only modes matching " -"it." -msgstr "" -"Mümkün olan video kiplerini listele. EÄŸer çözünürlük belirtilmiÅŸse yalnızca " -"uyan kipleri göster." - -#. TRANSLATORS: "x" has to be entered in, -#. like an identifier, so please don't -#. use better Unicode codepoints. -#: grub-core/commands/videotest.c:225 -msgid "[WxH]" -msgstr "" - -#. TRANSLATORS: Here, on the other hand, it's -#. nicer to use unicode cross instead of x. -#: grub-core/commands/videotest.c:228 -msgid "Test video subsystem in mode WxH." -msgstr "WxH kipinde video alt sistemini test et." - -#: grub-core/commands/videotest.c:231 -msgid "Test video subsystem." -msgstr "Video alt sistemini sına." - -#: grub-core/commands/xen/lsxen.c:80 grub-core/commands/xen/lsxen.c:82 -msgid "[DIR]" -msgstr "" - -#: grub-core/commands/xen/lsxen.c:81 grub-core/commands/xen/lsxen.c:83 -msgid "List Xen storage." -msgstr "" - -#. TRANSLATORS: GRUBUUID stands for "filesystem -#. UUID as used in GRUB". -#: grub-core/commands/xnu_uuid.c:110 -msgid "[-l] GRUBUUID [VARNAME]" -msgstr "" - -#: grub-core/commands/xnu_uuid.c:111 -msgid "" -"Transform 64-bit UUID to format suitable for XNU. If -l is given keep it " -"lowercase as done by blkid." -msgstr "" - -#: grub-core/disk/arc/arcdisk.c:248 grub-core/disk/efi/efidisk.c:603 -#: grub-core/disk/i386/pc/biosdisk.c:498 grub-core/disk/i386/pc/biosdisk.c:543 -#: grub-core/disk/ieee1275/nand.c:198 grub-core/disk/ieee1275/obdisk.c:527 -#: grub-core/disk/ieee1275/ofdisk.c:586 -#, c-format -msgid "failure reading sector 0x%llx from `%s'" -msgstr "" - -#: grub-core/disk/arc/arcdisk.c:284 grub-core/disk/efi/efidisk.c:626 -#: grub-core/disk/i386/pc/biosdisk.c:548 grub-core/disk/ieee1275/ofdisk.c:606 -#, c-format -msgid "failure writing sector 0x%llx to `%s'" -msgstr "" - -#: grub-core/disk/cryptodisk.c:40 -msgid "Mount by UUID." -msgstr "UUID'e göre baÄŸla." - -#. TRANSLATORS: It's still restricted to cryptodisks only. -#: grub-core/disk/cryptodisk.c:42 -msgid "Mount all." -msgstr "Tümünü baÄŸla." - -#: grub-core/disk/cryptodisk.c:43 -msgid "Mount all volumes with `boot' flag set." -msgstr "" - -#. TRANSLATORS: The first %s is the file being looked at, the second %s is -#. the error message. -#: grub-core/disk/cryptodisk.c:526 grub-core/kern/emu/hostdisk.c:152 -#: grub-core/kern/emu/hostdisk.c:262 grub-core/kern/emu/hostdisk.c:434 -#: grub-core/kern/emu/misc.c:168 grub-core/kern/emu/misc.c:174 -#: grub-core/kern/emu/misc.c:196 grub-core/osdep/bsd/getroot.c:92 -#: grub-core/osdep/bsd/getroot.c:168 grub-core/osdep/hurd/getroot.c:68 -#: grub-core/osdep/linux/blocklist.c:65 grub-core/osdep/linux/getroot.c:150 -#: grub-core/osdep/linux/hostdisk.c:194 grub-core/osdep/linux/hostdisk.c:421 -#: grub-core/osdep/linux/ofpath.c:417 grub-core/osdep/linux/ofpath.c:422 -#: grub-core/osdep/linux/ofpath.c:517 grub-core/osdep/linux/ofpath.c:530 -#: grub-core/osdep/sun/getroot.c:110 grub-core/osdep/windows/blocklist.c:98 -#: grub-core/tests/video_checksum.c:279 util/editenv.c:46 util/glue-efi.c:115 -#: util/glue-efi.c:120 util/glue-efi.c:130 util/grub-editenv.c:138 -#: util/grub-editenv.c:192 util/grub-file.c:83 util/grub-fstest.c:128 -#: util/grub-fstest.c:568 util/grub-install-common.c:92 -#: util/grub-install-common.c:94 util/grub-install-common.c:101 -#: util/grub-install-common.c:529 util/grub-menulst2cfg.c:53 -#: util/grub-menulst2cfg.c:68 util/grub-mkimage.c:292 util/grub-mklayout.c:504 -#: util/grub-mklayout.c:516 util/grub-mknetdir.c:133 util/grub-mknetdir.c:151 -#: util/grub-mkrescue.c:627 util/grub-mkrescue.c:631 util/grub-mkrescue.c:879 -#: util/grub-mkrescue.c:883 util/grub-mkstandalone.c:253 util/grub-mount.c:498 -#: util/grub-render-label.c:169 util/grub-script-check.c:175 -#: util/grub-syslinux2cfg.c:181 util/grub-syslinux2cfg.c:191 -#: util/grub-syslinux2cfg.c:212 util/grub-syslinux2cfg.c:228 util/misc.c:91 -#: util/render-label.c:76 util/render-label.c:163 util/render-label.c:174 -#: util/resolve.c:246 util/setup.c:783 -#, c-format -msgid "cannot open `%s': %s" -msgstr "`%s' açılamıyor: %s" - -#: grub-core/disk/cryptodisk.c:583 grub-core/disk/cryptodisk.c:628 -#: grub-core/kern/emu/hostdisk.c:270 grub-core/kern/emu/hostfs.c:142 -#: grub-core/osdep/linux/hostdisk.c:456 util/grub-editenv.c:143 -#: util/grub-editenv.c:149 util/grub-fstest.c:320 util/misc.c:111 -#, c-format -msgid "cannot seek `%s': %s" -msgstr "" - -#: grub-core/disk/cryptodisk.c:1144 -msgid "SOURCE|-u UUID|-a|-b" -msgstr "" - -#: grub-core/disk/cryptodisk.c:1145 -msgid "Mount a crypto device." -msgstr "Bir ÅŸifreli aygıt baÄŸla." - -#. TRANSLATORS: This message kicks in during the detection of -#. which modules needs to be included in core image. This happens -#. in the case of degraded RAID and means that autodetection may -#. fail to include some of modules. It's an installation time -#. message, not runtime message. -#: grub-core/disk/diskfilter.c:343 grub-core/disk/diskfilter.c:376 -#, c-format -msgid "" -"Couldn't find physical volume `%s'. Some modules may be missing from core " -"image." -msgstr "" -"`%s' fiziksel modülü bulunamadı. Çekirdek kalıptaki bazı modüller eksik " -"olabilir." - -#: grub-core/disk/diskfilter.c:480 -#, c-format -msgid "physical volume %s not found" -msgstr "%s fiziksel birimi bulunamadı" - -#: grub-core/disk/efi/efidisk.c:600 grub-core/disk/efi/efidisk.c:623 -#, c-format -msgid "no media in `%s'" -msgstr "`%s' içinde ortam yok" - -#: grub-core/disk/geli.c:75 -msgid "Couldn't load sha256" -msgstr "Sha256 yüklenemedi" - -#: grub-core/disk/geli.c:85 -msgid "Couldn't load sha512" -msgstr "Sha512 yüklenemedi" - -#: grub-core/disk/geli.c:216 grub-core/disk/geli.c:220 -msgid "couldn't read ELI metadata" -msgstr "ELI üst verisi okunamadı" - -#: grub-core/disk/geli.c:231 -msgid "wrong ELI magic or version" -msgstr "" - -#: grub-core/disk/geli.c:435 grub-core/disk/luks.c:329 -msgid "Attempting to decrypt master key..." -msgstr "Ana anahtarı çözme giriÅŸiminde bulunuluyor..." - -#: grub-core/disk/geli.c:441 grub-core/disk/luks.c:347 -#, c-format -msgid "Enter passphrase for %s%s%s (%s): " -msgstr "%s%s%s (%s) için parolayı gir:" - -#. TRANSLATORS: It's a cryptographic key slot: one element of an array -#. where each element is either empty or holds a key. -#: grub-core/disk/geli.c:530 grub-core/disk/luks.c:451 -#, c-format -msgid "Slot %d opened\n" -msgstr "" - -#: grub-core/disk/i386/pc/biosdisk.c:470 grub-core/disk/i386/pc/biosdisk.c:524 -#: grub-core/disk/i386/pc/biosdisk.c:534 grub-core/kern/disk_common.c:47 -#, c-format -msgid "attempt to read or write outside of disk `%s'" -msgstr "" - -#: grub-core/disk/i386/pc/biosdisk.c:491 grub-core/disk/i386/pc/biosdisk.c:611 -#: grub-core/disk/scsi.c:726 -msgid "cannot write to CD-ROM" -msgstr "CD-ROM'a yazılamadı" - -#: grub-core/disk/i386/pc/biosdisk.c:662 -msgid "" -"Native disk drivers are in use. Refusing to use firmware disk interface." -msgstr "" - -#. TRANSLATORS: it's a partition for embedding, -#. not a partition embed into something. GRUB -#. install tools put core.img into a place -#. usable for bootloaders (called generically -#. "embedding zone") and this operation is -#. called "embedding". -#: grub-core/disk/ldm.c:1015 -msgid "your LDM Embedding Partition is too small; embedding won't be possible" -msgstr "" - -#. TRANSLATORS: it's a partition for embedding, -#. not a partition embed into something. -#: grub-core/disk/ldm.c:1033 -msgid "this LDM has no Embedding Partition; embedding won't be possible" -msgstr "" - -#. TRANSLATORS: The disk is simply removed from the list of available ones, -#. not wiped, avoid to scare user. -#: grub-core/disk/loopback.c:45 -msgid "Delete the specified loopback drive." -msgstr "" - -#: grub-core/disk/loopback.c:237 -msgid "[-d] DEVICENAME FILE." -msgstr "" - -#. TRANSLATORS: The file itself is not destroyed -#. or transformed into drive. -#: grub-core/disk/loopback.c:240 -msgid "Make a virtual drive from a file." -msgstr "Bir dosyadan sanal bir sürücü oluÅŸtur." - -#: grub-core/efiemu/i386/loadcore32.c:111 -#: grub-core/efiemu/i386/loadcore64.c:125 grub-core/kern/arm/dl.c:256 -#: grub-core/kern/arm64/dl.c:187 grub-core/kern/i386/dl.c:75 -#: grub-core/kern/ia64/dl.c:140 grub-core/kern/mips/dl.c:258 -#: grub-core/kern/powerpc/dl.c:163 grub-core/kern/riscv/dl.c:334 -#: grub-core/kern/sparc64/dl.c:180 grub-core/kern/x86_64/dl.c:110 -#: util/grub-mkimagexx.c:756 util/grub-mkimagexx.c:881 -#: util/grub-mkimagexx.c:945 util/grub-mkimagexx.c:1026 -#: util/grub-mkimagexx.c:1120 util/grub-mkimagexx.c:1222 -#: util/grub-mkimagexx.c:1413 util/grub-mkimagexx.c:1628 -#: util/grub-mkimagexx.c:1665 util/grub-mkimagexx.c:1697 -#: util/grub-mkimagexx.c:1767 util/grub-mkimagexx.c:1797 -#, c-format -msgid "relocation 0x%x is not implemented yet" -msgstr "" - -#: grub-core/efiemu/loadcore.c:200 grub-core/efiemu/loadcore.c:237 -#: grub-core/loader/i386/bsdXX.c:317 util/grub-mkimagexx.c:2360 -msgid "no symbol table" -msgstr "" - -#: grub-core/efiemu/loadcore.c:346 grub-core/kern/dl.c:609 -#: grub-core/loader/ia64/efi/linux.c:345 grub-core/loader/mips/linux.c:248 -#: grub-core/loader/multiboot_elfxx.c:76 -#: grub-core/loader/powerpc/ieee1275/linux.c:280 -#: grub-core/loader/sparc64/ieee1275/linux.c:320 -msgid "this ELF file is not of the right type" -msgstr "" - -#: grub-core/efiemu/main.c:313 -msgid "Load and initialize EFI emulator." -msgstr "EFI taklitçisini yükle ve baÅŸlat." - -#: grub-core/efiemu/main.c:317 -msgid "Finalize loading of EFI emulator." -msgstr "EFI modülatörünün yüklenmesini sonuçlandır." - -#: grub-core/efiemu/main.c:320 -msgid "Unload EFI emulator." -msgstr "EFI emülatörünü kaldır." - -#: grub-core/efiemu/symbols.c:92 grub-core/kern/dl.c:376 -#, c-format -msgid "symbol `%s' not found" -msgstr "`%s' sembolü bulunamadı" - -#: grub-core/font/font_cmd.c:52 -msgid "Loaded fonts:" -msgstr "Yüklü yazı tipleri:" - -#: grub-core/font/font_cmd.c:74 -msgid "FILE..." -msgstr "DOSYA..." - -#: grub-core/font/font_cmd.c:75 -msgid "Specify one or more font files to load." -msgstr "Yüklemek için bir ya da daha fazla yazı tipi dosyası belirtin." - -#: grub-core/font/font_cmd.c:78 -msgid "List the loaded fonts." -msgstr "YüklenmiÅŸ yazı tiplerini listele." - -#: grub-core/fs/archelp.c:216 grub-core/fs/archelp.c:278 -#: grub-core/fs/btrfs.c:1815 grub-core/fs/fshelp.c:227 grub-core/fs/jfs.c:736 -#: grub-core/fs/minix.c:369 grub-core/fs/ufs.c:454 -msgid "too deep nesting of symlinks" -msgstr "" - -#: grub-core/fs/bfs.c:228 grub-core/fs/fshelp.c:368 grub-core/fs/minix.c:270 -#: grub-core/kern/file.c:156 -msgid "attempt to read past the end of file" -msgstr "" - -#: grub-core/fs/btrfs.c:1698 grub-core/fs/btrfs.c:1957 -#: grub-core/fs/fshelp.c:189 grub-core/fs/fshelp.c:309 grub-core/fs/jfs.c:431 -#: grub-core/fs/minix.c:414 grub-core/fs/minix.c:562 -#: grub-core/fs/reiserfs.c:732 grub-core/fs/ufs.c:531 grub-core/fs/ufs.c:671 -#: grub-core/fs/zfs/zfs.c:2831 grub-core/fs/zfs/zfs.c:4247 -msgid "not a directory" -msgstr "bir dizin deÄŸil" - -#: grub-core/fs/btrfs.c:2063 grub-core/fs/fshelp.c:307 grub-core/fs/jfs.c:835 -#: grub-core/fs/zfs/zfs.c:3801 -msgid "not a regular file" -msgstr "düzenli bir dosya deÄŸil" - -#: grub-core/fs/btrfs.c:2157 grub-core/fs/zfs/zfs.c:4333 -#: grub-core/partmap/msdos.c:400 -msgid "your core.img is unusually large. It won't fit in the embedding area" -msgstr "core.img dosyanız normalden büyük. Ayrılan alana sığmıyor." - -#: grub-core/fs/fshelp.c:281 grub-core/fs/minix.c:630 grub-core/fs/ufs.c:661 -#: grub-core/fs/ufs.c:757 grub-core/kern/fs.c:168 grub-core/kern/fs.c:180 -#, c-format -msgid "invalid file name `%s'" -msgstr "`%s' geçersiz dosya adı" - -#: grub-core/fs/zfs/zfs.c:453 -msgid "checksum verification failed" -msgstr "saÄŸlama doÄŸrulaması baÅŸarısız" - -#: grub-core/fs/zfs/zfs.c:1465 -msgid "couldn't find a necessary member device of multi-device filesystem" -msgstr "" - -#: grub-core/fs/zfs/zfscrypt.c:292 -msgid "no decryption key available" -msgstr "kullanılabilir ÅŸifre çözme anahtarı yok" - -#: grub-core/fs/zfs/zfscrypt.c:304 -msgid "MAC verification failed" -msgstr "MAC doÄŸrulaması baÅŸarısız" - -#: grub-core/fs/zfs/zfscrypt.c:413 -msgid "Assume input is raw." -msgstr "Girdiyi ham olarak kabul et." - -#: grub-core/fs/zfs/zfscrypt.c:414 -msgid "Assume input is hex." -msgstr "Girdiyi hex olarak kabul et." - -#: grub-core/fs/zfs/zfscrypt.c:415 -msgid "Assume input is passphrase." -msgstr "Girdiyi ÅŸifre cümlesi olarak kabul et." - -#: grub-core/fs/zfs/zfscrypt.c:437 util/grub-fstest.c:553 util/grub-mount.c:483 -msgid "Enter ZFS password: " -msgstr "ZFS parolası girin: " - -#: grub-core/fs/zfs/zfscrypt.c:476 -msgid "[-h|-p|-r] [FILE]" -msgstr "[-h|-p|-r] [DOSYA]" - -#: grub-core/fs/zfs/zfscrypt.c:477 -msgid "Import ZFS wrapping key stored in FILE." -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:51 -msgid "Virtual device is removed" -msgstr "Sanal aygıt kaldırıldı" - -#: grub-core/fs/zfs/zfsinfo.c:57 -msgid "Virtual device is faulted" -msgstr "Sanal aygıt hatalı" - -#: grub-core/fs/zfs/zfsinfo.c:63 -msgid "Virtual device is offline" -msgstr "Sanal aygıt çevrimdışı" - -#. TRANSLATORS: degraded doesn't mean broken but that some of -#. component are missing but virtual device as whole is still usable. -#: grub-core/fs/zfs/zfsinfo.c:70 -msgid "Virtual device is degraded" -msgstr "Sanal aygıt düşürülmüş" - -#: grub-core/fs/zfs/zfsinfo.c:73 -msgid "Virtual device is online" -msgstr "Sanal aygıt çevrimiçi" - -#: grub-core/fs/zfs/zfsinfo.c:89 -msgid "Incorrect virtual device: no type available" -msgstr "Hatalı sanal aygıt: tip mevcut deÄŸil" - -#. TRANSLATORS: The virtual devices form a tree (in graph-theoretical -#. sense). The nodes like mirror or raidz have children: member devices. -#. The "real" devices which actually store data are called "leafs" -#. (again borrowed from graph theory) and can be either disks -#. (or partitions) or files. -#: grub-core/fs/zfs/zfsinfo.c:105 -msgid "Leaf virtual device (file or disk)" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:113 -msgid "Bootpath: unavailable\n" -msgstr "Önyükleme konumu: mevcut deÄŸil\n" - -#: grub-core/fs/zfs/zfsinfo.c:115 -#, c-format -msgid "Bootpath: %s\n" -msgstr "Önyükleme konumu: %s\n" - -#: grub-core/fs/zfs/zfsinfo.c:120 -msgid "Path: unavailable" -msgstr "Konum: mevcut deÄŸil" - -#: grub-core/fs/zfs/zfsinfo.c:122 -#, c-format -msgid "Path: %s\n" -msgstr "Yol: %s\n" - -#: grub-core/fs/zfs/zfsinfo.c:127 -msgid "Devid: unavailable" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:129 -#, c-format -msgid "Devid: %s\n" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:148 -msgid "This VDEV is a mirror" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:153 -#, c-format -msgid "This VDEV is a RAIDZ%llu\n" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:158 -msgid "Incorrect VDEV" -msgstr "Geçersiz VDEV" - -#: grub-core/fs/zfs/zfsinfo.c:161 -#, c-format -msgid "VDEV with %d children\n" -msgstr "" - -#. TRANSLATORS: it's the element carying the number %d, not -#. total element number. And the number itself is fine, -#. only the element isn't. -#. -#: grub-core/fs/zfs/zfsinfo.c:177 -#, c-format -msgid "VDEV element number %d isn't correct\n" -msgstr "" - -#. TRANSLATORS: it's the element carying the number %d, not -#. total element number. This is used in enumeration -#. "Element number 1", "Element number 2", ... -#: grub-core/fs/zfs/zfsinfo.c:184 -#, c-format -msgid "VDEV element number %d:\n" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:193 -#, c-format -msgid "Unknown virtual device type: %s\n" -msgstr "Bilinmeyen sanal aygıt türü: %s\n" - -#. TRANSLATORS: Here we speak about ZFS pools it's semi-marketing, -#. semi-technical term by Sun/Oracle and should be translated in sync with -#. other ZFS-related software and documentation. -#: grub-core/fs/zfs/zfsinfo.c:254 -msgid "Pool state: active" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:255 -msgid "Pool state: exported" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:256 -msgid "Pool state: destroyed" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:257 -msgid "Pool state: reserved for hot spare" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:258 -msgid "Pool state: level 2 ARC device" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:259 -msgid "Pool state: uninitialized" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:260 -msgid "Pool state: unavailable" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:261 -msgid "Pool state: potentially active" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:306 -msgid "Pool name: unavailable" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:308 -#, c-format -msgid "Pool name: %s\n" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:313 -msgid "Pool GUID: unavailable" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:315 -#, c-format -msgid "Pool GUID: %016llx\n" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:320 -msgid "Unable to retrieve pool state" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:322 -msgid "Unrecognized pool state" -msgstr "" - -#. TRANSLATORS: There are undetermined number of virtual devices -#. in a device tree, not just one. -#. -#: grub-core/fs/zfs/zfsinfo.c:332 -msgid "No virtual device tree available" -msgstr "hiçbir sanal aygıt aÄŸacı mevcut deÄŸil" - -#: grub-core/fs/zfs/zfsinfo.c:431 -msgid "Print ZFS info about DEVICE." -msgstr "AYGIT hakkındaki ZFS bilgisini yazdır." - -#: grub-core/fs/zfs/zfsinfo.c:433 -msgid "FILESYSTEM [VARIABLE]" -msgstr "DOSYA SİSTEMİ [DEĞİŞKEN]" - -#: grub-core/fs/zfs/zfsinfo.c:434 -msgid "Print ZFS-BOOTFSOBJ or store it into VARIABLE" -msgstr "" - -#. TRANSLATORS: at this position GRUB waits for the user to do an action -#. in remote debugger, namely to tell it to establish connection. -#: grub-core/gdb/gdb.c:48 -msgid "Now connect the remote debugger, please." -msgstr "Åžimdi uzaktan hata ayıklayıcıya baÄŸlanın lütfen." - -#. TRANSLATORS: GDB stub is a small part of -#. GDB functionality running on local host -#. which allows remote debugger to -#. connect to it. -#: grub-core/gdb/gdb.c:84 -msgid "Start GDB stub on given port" -msgstr "GDB stub'ı belirtilen portta baÅŸlat" - -#. TRANSLATORS: this refers to triggering -#. a breakpoint so that the user will land -#. into GDB. -#: grub-core/gdb/gdb.c:89 -msgid "Break into GDB" -msgstr "" - -#: grub-core/gdb/gdb.c:91 -msgid "Stop GDB stub" -msgstr "" - -#: grub-core/gettext/gettext.c:85 -msgid "premature end of file" -msgstr "" - -#. TRANSLATORS: It refers to passing the string through gettext. -#. So it's "translate" in the same meaning as in what you're -#. doing now. -#. -#: grub-core/gettext/gettext.c:525 -msgid "Translates the string with the current settings." -msgstr "Diziyi kullanılan ayarları kullanarak çevirir." - -#: grub-core/gfxmenu/gui_label.c:186 grub-core/normal/menu_text.c:184 -msgid "" -"Press enter to boot the selected OS, `e' to edit the commands before booting " -"or `c' for a command-line. ESC to return previous menu." -msgstr "" -"Seçilen İşletim Sistemine girmek için Enter'a, önyüklemeden önce komutları " -"düzenlemek için `e' tuÅŸuna veya komut satırı için `c' tuÅŸuna basın. Önceki " -"menüye dönmek için ESC'ye basın." - -#: grub-core/gfxmenu/gui_label.c:190 grub-core/normal/menu_text.c:192 -msgid "" -"Press enter to boot the selected OS, `e' to edit the commands before booting " -"or `c' for a command-line." -msgstr "" -"Seçilen İşletim Sistemine girmek için Enter'a, önyüklemeden önce komutları " -"düzenlemek için `e' tuÅŸuna veya komut satırı için `c' tuÅŸuna basın." - -#: grub-core/gfxmenu/gui_label.c:194 -msgid "enter: boot, `e': options, `c': cmd-line" -msgstr "enter: önyükle, `e': seçenekler, `c': komut-satırı" - -#: grub-core/gfxmenu/gui_progress_bar.c:339 grub-core/normal/menu_text.c:446 -#, c-format -msgid "The highlighted entry will be executed automatically in %ds." -msgstr "İşaretli girdi %ds içinde otomatik olarak çalıştırılacak." - -#. TRANSLATORS: 's' stands for seconds. -#. It's a standalone timeout notification. -#. Please use the short form in your language. -#: grub-core/gfxmenu/gui_progress_bar.c:344 -#, c-format -msgid "%ds remaining." -msgstr "%ds kaldı" - -#. TRANSLATORS: 's' stands for seconds. -#. It's a standalone timeout notification. -#. Please use the shortest form available in you language. -#: grub-core/gfxmenu/gui_progress_bar.c:349 grub-core/normal/menu_text.c:444 -#: grub-core/normal/menu_text.c:462 -#, c-format -msgid "%ds" -msgstr "%ds" - -#: grub-core/gfxmenu/view.c:103 -msgid "GRUB Boot Menu" -msgstr "GRUB Önyükleme Menüsü" - -#: grub-core/hello/hello.c:36 -msgid "Hello World" -msgstr "Merhaba Dünya" - -#: grub-core/hello/hello.c:45 -msgid "Say `Hello World'." -msgstr "`Hello World' de." - -#: grub-core/io/gzio.c:409 grub-core/kern/file.c:210 -msgid "attempt to seek outside of the file" -msgstr "" - -#. TRANSLATORS: It's about given file having some strange format, not -#. complete lack of gzip support. -#: grub-core/io/gzio.c:1228 grub-core/io/gzio.c:1237 grub-core/io/gzio.c:1244 -msgid "unsupported gzip format" -msgstr "desteklenmeyen gzip biçimi" - -#: grub-core/io/lzopio.c:511 -msgid "lzop file corrupted" -msgstr "lzop dosyası bozuk" - -#: grub-core/io/xzio.c:278 -msgid "xz file corrupted or unsupported block options" -msgstr "xz dosyası bozuk veya desteklenmeyen blok seçenekleri" - -#: grub-core/kern/arm/dl.c:277 grub-core/kern/arm64/dl.c:44 -#: grub-core/kern/i386/dl.c:36 grub-core/kern/ia64/dl.c:41 -#: grub-core/kern/mips/dl.c:48 grub-core/kern/powerpc/dl.c:36 -#: grub-core/kern/riscv/dl.c:47 grub-core/kern/sparc64/dl.c:36 -#: grub-core/kern/x86_64/dl.c:36 grub-core/loader/i386/bsd.c:1445 -#: grub-core/loader/i386/bsdXX.c:49 grub-core/loader/ia64/efi/linux.c:341 -#: grub-core/loader/mips/linux.c:298 grub-core/loader/multiboot.c:232 -#: grub-core/loader/multiboot_elfxx.c:73 -#: grub-core/loader/powerpc/ieee1275/linux.c:294 -#: grub-core/loader/sparc64/ieee1275/linux.c:331 -msgid "invalid arch-dependent ELF magic" -msgstr "" - -#: grub-core/kern/corecmd.c:178 -msgid "[ENVVAR=VALUE]" -msgstr "[ORTAM_DEĞİŞKENİ=DEÄžER]" - -#: grub-core/kern/corecmd.c:179 -msgid "Set an environment variable." -msgstr "Bir çevresel deÄŸiÅŸken ayarla." - -#: grub-core/kern/corecmd.c:183 -msgid "ENVVAR" -msgstr "ORTAM_DEĞİŞKENİ" - -#: grub-core/kern/corecmd.c:184 -msgid "Remove an environment variable." -msgstr "Bir çevresel deÄŸiÅŸken kaldır." - -#: grub-core/kern/corecmd.c:186 -msgid "[ARG]" -msgstr "[ARG]" - -#: grub-core/kern/corecmd.c:186 -msgid "List devices or files." -msgstr "Aygıtları ya da dosyaları listele." - -#: grub-core/kern/corecmd.c:188 -msgid "Insert a module." -msgstr "Bir modül ekle." - -#: grub-core/kern/disk.c:236 grub-core/net/net.c:1390 -#, c-format -msgid "disk `%s' not found" -msgstr "disk `%s' bulunamadı" - -#: grub-core/kern/disk_common.c:27 -msgid "attempt to read or write outside of partition" -msgstr "disk bölümünün dışından okuma veya dışına yazma giriÅŸimi" - -#: grub-core/kern/dl.c:212 grub-core/kern/elf.c:61 grub-core/kern/elf.c:79 -#: grub-core/loader/i386/bsdXX.c:46 grub-core/loader/ia64/efi/linux.c:335 -#: grub-core/loader/multiboot_elfxx.c:69 -msgid "invalid arch-independent ELF magic" -msgstr "" - -#. TRANSLATORS: it refers to the lack of free slots. -#: grub-core/kern/emu/hostdisk.c:208 grub-core/kern/emu/hostdisk.c:466 -msgid "device count exceeds limit" -msgstr "aygıt sayısı sınırı aşıyor" - -#: grub-core/kern/emu/hostdisk.c:342 util/editenv.c:54 util/grub-editenv.c:197 -#: util/grub-fstest.c:191 util/grub-mkfont.c:796 util/misc.c:114 -#: util/misc.c:129 util/setup.c:788 -#, c-format -msgid "cannot write to `%s': %s" -msgstr "" - -#. TRANSLATORS: Only one entry is ignored. However the suggestion -#. is to correct/delete the whole file. -#. device.map is a file indicating which -#. devices are available at boot time. Fedora populated it with -#. entries like (hd0,1) /dev/sda1 which would mean that every -#. partition is a separate disk for BIOS. Such entries were -#. inactive in GRUB due to its bug which is now gone. Without -#. this additional check these entries would be harmful now. -#. -#: grub-core/kern/emu/hostdisk.c:503 -#, c-format -msgid "" -"the device.map entry `%s' is invalid. Ignoring it. Please correct or delete " -"your device.map" -msgstr "" - -#. TRANSLATORS: device.map is a filename. Not to be translated. -#. device.map specifies disk correspondance overrides. Previously -#. one could create any kind of device name with this. Due to -#. some problems we decided to limit it to just a handful -#. possibilities. -#: grub-core/kern/emu/hostdisk.c:555 -#, c-format -msgid "" -"the drive name `%s' in device.map is incorrect. Using %s instead. Please use " -"the form [hfc]d[0-9]* (E.g. `hd0' or `cd')" -msgstr "" -"device.map içindeki `%s' sürücü adı geçersiz. Bunun yerine %s kullanılıyor. " -"Lütfen ÅŸu biçimi kullanın: [hfc]d[0-9]* (örn. `hd0' veya `cd')" - -#: grub-core/kern/emu/hostfs.c:76 grub-core/kern/emu/hostfs.c:109 -#, c-format -msgid "can't open `%s': %s" -msgstr "açılamıyor `%s': %s" - -#: grub-core/kern/emu/main.c:99 util/grub-fstest.c:516 util/grub-mount.c:452 -msgid "DEVICE_NAME" -msgstr "AYGIT_ADI" - -#: grub-core/kern/emu/main.c:99 grub-core/loader/i386/bsd.c:136 -#: grub-core/loader/i386/bsd.c:169 util/grub-fstest.c:516 util/grub-mount.c:452 -msgid "Set root device." -msgstr "Kök aygıtı ayarla." - -#. TRANSLATORS: There are many devices in device map. -#: grub-core/kern/emu/main.c:102 util/grub-probe.c:733 util/grub-setup.c:85 -#, c-format -msgid "use FILE as the device map [default=%s]" -msgstr "" - -#. TRANSLATORS: There are many devices in device map. -#: grub-core/kern/emu/main.c:105 -msgid "use FILE as memdisk" -msgstr "DOSYAyı memdisk olarak kullan" - -#: grub-core/kern/emu/main.c:107 util/grub-setup.c:83 -#, c-format -msgid "use GRUB files in the directory DIR [default=%s]" -msgstr "" - -#: grub-core/kern/emu/main.c:108 include/grub/util/install.h:67 -#: util/grub-editenv.c:58 util/grub-fstest.c:525 util/grub-glue-efi.c:58 -#: util/grub-macbless.c:104 util/grub-mkfont.c:962 util/grub-mkimage.c:84 -#: util/grub-mklayout.c:56 util/grub-mount.c:458 util/grub-probe.c:735 -#: util/grub-render-label.c:74 util/grub-script-check.c:52 util/grub-setup.c:90 -#: util/grub-syslinux2cfg.c:78 -msgid "print verbose messages." -msgstr "ayrıntılı iletiler yazdır." - -#: grub-core/kern/emu/main.c:109 grub-core/lib/gnulib/argp-parse.c:85 -msgid "SECS" -msgstr "SN" - -#: grub-core/kern/emu/main.c:109 -msgid "wait until a debugger will attach" -msgstr "" - -#: grub-core/kern/emu/main.c:171 util/grub-macbless.c:143 -#: util/grub-mkrelpath.c:61 util/grub-probe.c:874 util/grub-script-check.c:75 -#: util/grub-setup.c:203 -#, c-format -msgid "Unknown extra argument `%s'." -msgstr "" - -#: grub-core/kern/emu/main.c:185 -msgid "GRUB emulator." -msgstr "GRUB öykünücü." - -#: grub-core/kern/emu/main.c:213 util/grub-editenv.c:262 -#: util/grub-glue-efi.c:110 util/grub-macbless.c:173 util/grub-mkfont.c:1177 -#: util/grub-mkimage.c:266 util/grub-mklayout.c:494 -#: util/grub-mkpasswd-pbkdf2.c:132 util/grub-mkrelpath.c:96 -#: util/grub-probe.c:863 util/grub-render-label.c:152 -#: util/grub-script-check.c:160 util/grub-setup.c:262 -#: util/grub-syslinux2cfg.c:163 -msgid "Error in parsing command line arguments\n" -msgstr "Konut satırı argümanlarını ayrıştırmada sorun.\n" - -#. TRANSLATORS: In this case GRUB tells user what he has to do. -#: grub-core/kern/emu/main.c:248 -#, c-format -msgid "Run `gdb %s %d', and set ARGS.HOLD to zero.\n" -msgstr "" - -#: grub-core/kern/emu/misc.c:48 -#, c-format -msgid "%s: warning:" -msgstr "%s: uyarı:" - -#: grub-core/kern/emu/misc.c:64 -#, c-format -msgid "%s: info:" -msgstr "%s: bilgi:" - -#: grub-core/kern/emu/misc.c:79 util/grub-fstest.c:567 util/grub-fstest.c:576 -#: util/grub-mount.c:497 util/grub-mount.c:505 -#, c-format -msgid "%s: error:" -msgstr "%s: hata:" - -#: grub-core/kern/emu/misc.c:176 -#, c-format -msgid "file `%s' is too big" -msgstr "`%s' dosyası çok büyük" - -#: grub-core/kern/fs.c:120 -msgid "unknown filesystem" -msgstr "bilinmeyen dosya sistemi" - -#: grub-core/kern/mips/arc/init.c:273 grub-core/kern/mips/loongson/init.c:301 -msgid "Shutdown failed" -msgstr "Kapatma baÅŸarısız" - -#: grub-core/kern/mips/arc/init.c:285 -msgid "Exit failed" -msgstr "Çıkış baÅŸarısız" - -#: grub-core/kern/misc.c:351 grub-core/kern/misc.c:408 include/grub/misc.h:269 -#: include/grub/misc.h:278 -msgid "overflow is detected" -msgstr "taÅŸma belirlendi" - -#: grub-core/kern/partition.c:51 grub-core/partmap/bsdlabel.c:108 -#, c-format -msgid "Discarding improperly nested partition (%s,%s,%s%d)" -msgstr "" - -#: grub-core/kern/rescue_parser.c:73 util/grub-editenv.c:292 -#, c-format -msgid "Unknown command `%s'.\n" -msgstr "Bilinmeyen komut `%s'.\n" - -#: grub-core/lib/arg.c:31 -msgid "Display this help and exit." -msgstr "Bu yardımı göster ve çık." - -#: grub-core/lib/arg.c:33 -msgid "Display the usage of this command and exit." -msgstr "Bu komutun kullanımını göster ve çık." - -#: grub-core/lib/arg.c:362 -#, c-format -msgid "missing mandatory option for `%s'" -msgstr "`%s' için zorunlu seçenek eksik" - -#: grub-core/lib/arg.c:384 -#, c-format -msgid "the argument `%s' requires an integer" -msgstr "`%s' bağımsız deÄŸiÅŸkeni bir tamsayı gerektiriyor" - -#: grub-core/lib/arg.c:407 -#, c-format -msgid "" -"a value was assigned to the argument `%s' while it doesn't require an " -"argument" -msgstr "" - -#: grub-core/lib/backtrace.c:64 -msgid "Print backtrace." -msgstr "" - -#: grub-core/lib/gnulib/argp-help.c:149 -#, c-format -msgid "ARGP_HELP_FMT: %s value is less than or equal to %s" -msgstr "ARGP_HELP_FMT: %s deÄŸeri %s deÄŸerinden küçük ya da ona eÅŸit" - -#: grub-core/lib/gnulib/argp-help.c:225 -#, c-format -msgid "%.*s: ARGP_HELP_FMT parameter requires a value" -msgstr "%.*s: ARGP_HELP_FMT parametresi ile bir deÄŸer vermek gerekir" - -#: grub-core/lib/gnulib/argp-help.c:235 -#, c-format -msgid "%.*s: Unknown ARGP_HELP_FMT parameter" -msgstr "%.*s: ARGP_HELP_FMT parametresi bilinmiyor" - -#: grub-core/lib/gnulib/argp-help.c:248 -#, c-format -msgid "Garbage in ARGP_HELP_FMT: %s" -msgstr "" - -#: grub-core/lib/gnulib/argp-help.c:1229 -msgid "" -"Mandatory or optional arguments to long options are also mandatory or " -"optional for any corresponding short options." -msgstr "" -"Uzun seçeneklerdeki argümanlar zorunlu olsun olmasın kısa seçeneklerde de " -"geçerlidir." - -#: grub-core/lib/gnulib/argp-help.c:1620 -msgid " or: " -msgstr " veya: " - -#: grub-core/lib/gnulib/argp-help.c:1632 -msgid " [OPTION...]" -msgstr " [SEÇENEK...]" - -#: grub-core/lib/gnulib/argp-help.c:1659 -#, c-format -msgid "Try '%s --help' or '%s --usage' for more information.\n" -msgstr "" -"Daha fazla bilgi için `''%s --help' veya `%s --usage' komutlarını deneyin.\n" - -#: grub-core/lib/gnulib/argp-help.c:1687 -#, c-format -msgid "Report bugs to %s.\n" -msgstr "Hataları %s 'e bildirin.\n" - -#: grub-core/lib/gnulib/argp-help.c:1888 grub-core/lib/gnulib/error.c:195 -msgid "Unknown system error" -msgstr "Bilinmeyen sistem hatası" - -#: grub-core/lib/gnulib/argp-parse.c:81 -msgid "give this help list" -msgstr "bu yardım listesini ver" - -#: grub-core/lib/gnulib/argp-parse.c:82 -msgid "give a short usage message" -msgstr "kısa bir kullanım iletisi ver" - -#: grub-core/lib/gnulib/argp-parse.c:83 util/grub-mkfont.c:946 -msgid "NAME" -msgstr "İSİM" - -#: grub-core/lib/gnulib/argp-parse.c:84 -msgid "set the program name" -msgstr "program adını ayarla" - -#: grub-core/lib/gnulib/argp-parse.c:86 -msgid "hang for SECS seconds (default 3600)" -msgstr "SANİYE saniye bekler (öntanımlı 3600)" - -#: grub-core/lib/gnulib/argp-parse.c:143 -msgid "print program version" -msgstr "program sürümünü yazdır" - -#: grub-core/lib/gnulib/argp-parse.c:160 -msgid "(PROGRAM ERROR) No version known!?" -msgstr "(PROGRAM HATASI) Sürüm bilinmiyor!?" - -#: grub-core/lib/gnulib/argp-parse.c:613 -#, c-format -msgid "%s: Too many arguments\n" -msgstr "%s: Çok fazla argüman var\n" - -#: grub-core/lib/gnulib/argp-parse.c:759 -msgid "(PROGRAM ERROR) Option should have been recognized!?" -msgstr "(PROGRAM HATASI) Bu tanınan bir seçenek olmalıydı!?" - -#: grub-core/lib/gnulib/getopt.c:278 -#, fuzzy, c-format -msgid "%s: option '%s%s' is ambiguous\n" -msgstr "%s: `-W %s' seçeneÄŸi belirsiz\n" - -#: grub-core/lib/gnulib/getopt.c:284 -#, fuzzy, c-format -msgid "%s: option '%s%s' is ambiguous; possibilities:" -msgstr "%s: `-W %s' seçeneÄŸi belirsiz\n" - -#: grub-core/lib/gnulib/getopt.c:319 -#, fuzzy, c-format -msgid "%s: unrecognized option '%s%s'\n" -msgstr "%s: `%c%s' seçeneÄŸi bilinmiyor\n" - -#: grub-core/lib/gnulib/getopt.c:345 -#, fuzzy, c-format -msgid "%s: option '%s%s' doesn't allow an argument\n" -msgstr "%s: seçenek `%c%s' argümansız kullanılır\n" - -#: grub-core/lib/gnulib/getopt.c:360 -#, fuzzy, c-format -msgid "%s: option '%s%s' requires an argument\n" -msgstr "%s: `%s' seçeneÄŸi bir argümanla kullanılır\n" - -#: grub-core/lib/gnulib/getopt.c:621 -#, c-format -msgid "%s: invalid option -- '%c'\n" -msgstr "%s: geçersiz seçenek -- %c\n" - -#: grub-core/lib/gnulib/getopt.c:636 grub-core/lib/gnulib/getopt.c:682 -#, c-format -msgid "%s: option requires an argument -- '%c'\n" -msgstr "%s: seçenek bir argümanla kullanılır -- %c\n" - -#: grub-core/lib/gnulib/openat-die.c:38 -#, fuzzy, c-format -msgid "unable to record current working directory" -msgstr "özgün dizin geri yüklenemiyor" - -#: grub-core/lib/gnulib/openat-die.c:57 -#, c-format -msgid "failed to return to initial working directory" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:135 grub-core/osdep/aros/hostdisk.c:523 -msgid "Success" -msgstr "BaÅŸarılı" - -#: grub-core/lib/gnulib/regcomp.c:138 -msgid "No match" -msgstr "EÅŸleÅŸme yok" - -#: grub-core/lib/gnulib/regcomp.c:141 -msgid "Invalid regular expression" -msgstr "Geçersiz düzenli ifade" - -#: grub-core/lib/gnulib/regcomp.c:144 -msgid "Invalid collation character" -msgstr "Geçersiz karşılaÅŸtırma karakteri" - -#: grub-core/lib/gnulib/regcomp.c:147 -msgid "Invalid character class name" -msgstr "Geçersiz karakter sınıfı adı" - -#: grub-core/lib/gnulib/regcomp.c:150 -msgid "Trailing backslash" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:153 -msgid "Invalid back reference" -msgstr "Geriye baÅŸvuru geçersiz" - -#: grub-core/lib/gnulib/regcomp.c:156 -#, fuzzy -msgid "Unmatched [, [^, [:, [., or [=" -msgstr "EÅŸleÅŸmedi [ ya da [^" - -#: grub-core/lib/gnulib/regcomp.c:159 -msgid "Unmatched ( or \\(" -msgstr "EÅŸleÅŸmedi ( ya da \\(" - -#: grub-core/lib/gnulib/regcomp.c:162 -msgid "Unmatched \\{" -msgstr "EÅŸleÅŸmedi \\{" - -#: grub-core/lib/gnulib/regcomp.c:165 -msgid "Invalid content of \\{\\}" -msgstr "\\{\\} içeriÄŸi geçersiz" - -#: grub-core/lib/gnulib/regcomp.c:168 -msgid "Invalid range end" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:171 -msgid "Memory exhausted" -msgstr "Bellek tükendi" - -#: grub-core/lib/gnulib/regcomp.c:174 -msgid "Invalid preceding regular expression" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:177 -msgid "Premature end of regular expression" -msgstr "Düzenli ifadenin sonu eksik" - -#: grub-core/lib/gnulib/regcomp.c:180 -msgid "Regular expression too big" -msgstr "Düzenli ifade çok büyük" - -#: grub-core/lib/gnulib/regcomp.c:183 -msgid "Unmatched ) or \\)" -msgstr "EÅŸleÅŸmedi ) ya da \\)" - -#: grub-core/lib/gnulib/regcomp.c:531 -msgid "unknown regexp error" -msgstr "bilinmeyen düzenli ifade hatası" - -#: grub-core/lib/gnulib/regcomp.c:676 -msgid "No previous regular expression" -msgstr "Önceki düzenli ifade yok" - -#: grub-core/lib/i386/halt.c:77 -msgid "GRUB doesn't know how to halt this machine yet!" -msgstr "GRUB bu makineyi nasıl durduracağını henüz bilmiyor!" - -#: grub-core/lib/legacy_parse.c:75 -msgid "Default server is ${net_default_server}" -msgstr "Öntanımlı sunucu: ${net_default_server}" - -#: grub-core/lib/legacy_parse.c:844 grub-core/video/colors.c:296 -#: grub-core/video/colors.c:305 grub-core/video/colors.c:311 -#: grub-core/video/colors.c:327 util/render-label.c:84 util/render-label.c:98 -#, c-format -msgid "invalid color specification `%s'" -msgstr "geçersiz renk tanımlaması `%s'" - -#: grub-core/lib/mips/arc/reboot.c:32 grub-core/lib/mips/loongson/reboot.c:61 -msgid "Reboot failed" -msgstr "Yeniden baÅŸlatma baÅŸarısız" - -#: grub-core/lib/random.c:113 -msgid "[LENGTH]" -msgstr "" - -#: grub-core/lib/random.c:114 -msgid "Hexdump random data." -msgstr "" - -#: grub-core/loader/arm/linux.c:242 -msgid "device tree must be supplied (see `devicetree' command)" -msgstr "" - -#: grub-core/loader/arm/linux.c:334 -msgid "invalid zImage" -msgstr "geçersiz zImage" - -#: grub-core/loader/arm/linux.c:450 grub-core/loader/efi/fdt.c:144 -msgid "invalid device tree" -msgstr "" - -#: grub-core/loader/arm/linux.c:493 grub-core/loader/arm64/linux.c:383 -#: grub-core/loader/i386/linux.c:1125 grub-core/loader/i386/pc/linux.c:479 -#: grub-core/loader/i386/xen.c:962 grub-core/loader/i386/xen.c:964 -#: grub-core/loader/ia64/efi/linux.c:591 grub-core/loader/mips/linux.c:501 -#: grub-core/loader/powerpc/ieee1275/linux.c:383 -#: grub-core/loader/riscv/linux.c:50 -#: grub-core/loader/sparc64/ieee1275/linux.c:511 -msgid "Load Linux." -msgstr "Linux'u yükle." - -#: grub-core/loader/arm/linux.c:495 grub-core/loader/arm64/linux.c:385 -#: grub-core/loader/i386/linux.c:1127 grub-core/loader/i386/pc/linux.c:482 -#: grub-core/loader/i386/xen.c:966 grub-core/loader/ia64/efi/linux.c:594 -#: grub-core/loader/mips/linux.c:503 -#: grub-core/loader/powerpc/ieee1275/linux.c:385 -#: grub-core/loader/riscv/linux.c:52 -#: grub-core/loader/sparc64/ieee1275/linux.c:513 -msgid "Load initrd." -msgstr "initrd yükle." - -#. TRANSLATORS: DTB stands for device tree blob. -#: grub-core/loader/arm/linux.c:498 grub-core/loader/efi/fdt.c:169 -msgid "Load DTB file." -msgstr "DTB dosyası yükle." - -#: grub-core/loader/arm64/linux.c:59 -msgid "" -"plain image kernel not supported - rebuild with CONFIG_(U)EFI_STUB enabled" -msgstr "" - -#: grub-core/loader/arm64/xen_boot.c:156 -msgid "failed to get FDT" -msgstr "FDT alma baÅŸarısız" - -#: grub-core/loader/arm64/xen_boot.c:418 -#, fuzzy -msgid "you need to load the Xen Hypervisor first" -msgstr "önce kerneli yüklemelisiniz" - -#: grub-core/loader/arm64/xen_boot.c:516 -#, fuzzy -msgid "Load a xen hypervisor." -msgstr "%s, Xen hypervisor ile" - -#: grub-core/loader/arm64/xen_boot.c:519 -msgid "Load a xen module." -msgstr "Xen modülü yükle." - -#: grub-core/loader/efi/appleloader.c:231 -msgid "[OPTS]" -msgstr "" - -#. TRANSLATORS: This command is used on EFI to -#. switch to BIOS mode and boot the OS requiring -#. BIOS. -#: grub-core/loader/efi/appleloader.c:235 -msgid "Boot BIOS-based system." -msgstr "BIOS tabanlı sistemi önyükle." - -#: grub-core/loader/efi/chainloader.c:421 -#: grub-core/loader/i386/pc/chainloader.c:303 -msgid "Load another boot loader." -msgstr "BaÅŸka bir baÅŸlangıç yükleyici ekle." - -#: grub-core/loader/i386/bsd.c:103 -msgid "Display output on all consoles." -msgstr "Tüm konsolların çıktısını göster." - -#: grub-core/loader/i386/bsd.c:104 grub-core/loader/i386/bsd.c:138 -#: grub-core/loader/i386/bsd.c:171 -msgid "Use serial console." -msgstr "Sıralı konsol kullan." - -#: grub-core/loader/i386/bsd.c:105 grub-core/loader/i386/bsd.c:131 -#: grub-core/loader/i386/bsd.c:159 -msgid "Ask for file name to reboot from." -msgstr "Yeniden baÅŸlatılacak dosya ismini sor." - -#: grub-core/loader/i386/bsd.c:106 -msgid "Use CD-ROM as root." -msgstr "CD-ROM'u root olarak kullan." - -#: grub-core/loader/i386/bsd.c:107 -msgid "Invoke user configuration routing." -msgstr "Kullanıcı yapılandırma yönlendirmesini çağır." - -#: grub-core/loader/i386/bsd.c:108 grub-core/loader/i386/bsd.c:135 -#: grub-core/loader/i386/bsd.c:162 -msgid "Enter in KDB on boot." -msgstr "BaÅŸlangıçta KDB'de gir." - -#: grub-core/loader/i386/bsd.c:109 -msgid "Use GDB remote debugger instead of DDB." -msgstr "DDB yerine GDB uzak hata ayıklayıcısını kullan." - -#: grub-core/loader/i386/bsd.c:110 -msgid "Disable all boot output." -msgstr "Tüm önyükleme çıkışlarını etkisizleÅŸtir." - -#: grub-core/loader/i386/bsd.c:112 -msgid "Wait for keypress after every line of output." -msgstr "Her çıktı satırından sonra tuÅŸa basılmasını bekle." - -#: grub-core/loader/i386/bsd.c:114 -msgid "Use compiled-in root device." -msgstr "" - -#: grub-core/loader/i386/bsd.c:115 grub-core/loader/i386/bsd.c:134 -#: grub-core/loader/i386/bsd.c:165 -msgid "Boot into single mode." -msgstr "Tekli kipte baÅŸlat." - -#: grub-core/loader/i386/bsd.c:116 grub-core/loader/i386/bsd.c:166 -msgid "Boot with verbose messages." -msgstr "Ayrıntılı olarak baÅŸlat." - -#: grub-core/loader/i386/bsd.c:132 grub-core/loader/i386/bsd.c:160 -msgid "Don't reboot, just halt." -msgstr "Yeniden baÅŸlatma, yalnızca kapat." - -#: grub-core/loader/i386/bsd.c:133 grub-core/loader/i386/bsd.c:161 -msgid "Change configured devices." -msgstr "Yapılandırılan aygıtları deÄŸiÅŸtir." - -#. TRANSLATORS: "com" is static and not to be translated. It refers to -#. serial ports e.g. com1. -#. -#: grub-core/loader/i386/bsd.c:142 -msgid "comUNIT[,SPEED]" -msgstr "comAYGIT[,HIZ]" - -#: grub-core/loader/i386/bsd.c:157 -msgid "Disable SMP." -msgstr "SMP'i etkisizleÅŸtir." - -#: grub-core/loader/i386/bsd.c:158 -msgid "Disable ACPI." -msgstr "ACPI'i etkisizleÅŸtir." - -#: grub-core/loader/i386/bsd.c:164 -msgid "Don't display boot diagnostic messages." -msgstr "Önyükleme tanısal iletilerini gösterme." - -#: grub-core/loader/i386/bsd.c:167 -msgid "Boot with debug messages." -msgstr "Hata iletileriyle birlikte önyükle." - -#: grub-core/loader/i386/bsd.c:168 -msgid "Suppress normal output (warnings remain)." -msgstr "" - -#. TRANSLATORS: "com" is static and not to be translated. It refers to -#. serial ports e.g. com1. -#. -#: grub-core/loader/i386/bsd.c:175 -msgid "[ADDR|comUNIT][,SPEED]" -msgstr "[ADDR|comAYGIT][,HIZ]" - -#: grub-core/loader/i386/bsd.c:489 grub-core/loader/i386/bsd.c:555 -msgid "name" -msgstr "isim" - -#: grub-core/loader/i386/bsd.c:489 grub-core/loader/i386/bsd.c:555 -msgid "type" -msgstr "tür" - -#: grub-core/loader/i386/bsd.c:489 grub-core/loader/i386/bsd.c:555 -msgid "addr" -msgstr "" - -#: grub-core/loader/i386/bsd.c:490 grub-core/loader/i386/bsd.c:556 -msgid "size" -msgstr "boyut" - -#: grub-core/loader/i386/bsd.c:1147 grub-core/loader/i386/linux.c:466 -#: grub-core/loader/i386/xnu.c:1030 -msgid "Booting in blind mode" -msgstr "Kör kipte önyükleniyor" - -#: grub-core/loader/i386/bsd.c:2137 -msgid "Load kernel of FreeBSD." -msgstr "FreeBSD çekirdeÄŸini yükle." - -#: grub-core/loader/i386/bsd.c:2140 -msgid "Load kernel of OpenBSD." -msgstr "OpenBSD çekirdeÄŸini yükle." - -#: grub-core/loader/i386/bsd.c:2143 -msgid "Load kernel of NetBSD." -msgstr "NetBSD çekirdeÄŸini yükle." - -#: grub-core/loader/i386/bsd.c:2147 -msgid "Load FreeBSD env." -msgstr "FreeBSD env yükle." - -#: grub-core/loader/i386/bsd.c:2150 -msgid "Load FreeBSD kernel module." -msgstr "FreeBSD çekirdek modülünü yükle." - -#: grub-core/loader/i386/bsd.c:2153 -msgid "Load NetBSD kernel module." -msgstr "NetBSD çekirdek modülünü yükle." - -#: grub-core/loader/i386/bsd.c:2156 -msgid "Load NetBSD kernel module (ELF)." -msgstr "NetBSD çekirdek modülünü yükle (ELF)." - -#: grub-core/loader/i386/bsd.c:2159 -msgid "Load FreeBSD kernel module (ELF)." -msgstr "FreeBSD çekirdek modülünü yükle (ELF)." - -#. TRANSLATORS: ramdisk isn't identifier, -#. it can be translated. -#: grub-core/loader/i386/bsd.c:2165 -msgid "Load kOpenBSD ramdisk." -msgstr "" - -#. TRANSLATORS: "payload" is a term used -#. by coreboot and must be translated in -#. sync with coreboot. If unsure, -#. let it untranslated. -#: grub-core/loader/i386/coreboot/chainloader.c:510 -msgid "Load another coreboot payload" -msgstr "" - -#: grub-core/loader/i386/linux.c:876 -msgid "Legacy `ask' parameter no longer supported." -msgstr "" - -#: grub-core/loader/i386/linux.c:892 grub-core/loader/i386/linux.c:902 -#: grub-core/loader/i386/linux.c:932 -#, c-format -msgid "%s is deprecated. Use set gfxpayload=%s before linux command instead.\n" -msgstr "" - -#. TRANSLATORS: "x" has to be entered in, like an identifier, -#. so please don't use better Unicode codepoints. -#: grub-core/loader/i386/linux.c:915 -#, c-format -msgid "" -"%s is deprecated. VGA mode %d isn't recognized. Use set " -"gfxpayload=WIDTHxHEIGHT[xDEPTH] before linux command instead.\n" -msgstr "" - -#: grub-core/loader/i386/pc/chainloader.c:302 -msgid "[--force|--bpb] FILE" -msgstr "" - -#: grub-core/loader/i386/pc/freedos.c:148 util/setup.c:293 -#, c-format -msgid "the size of `%s' is too large" -msgstr "`%s' boyutu çok büyük" - -#: grub-core/loader/i386/pc/freedos.c:183 -msgid "Load FreeDOS kernel.sys." -msgstr "FreeDOS kernel.sys yükle." - -#: grub-core/loader/i386/pc/ntldr.c:155 -msgid "Load NTLDR or BootMGR." -msgstr "NTLDR veya BootMGR'yi yükle." - -#. TRANSLATORS: it's about guessing which GRUB disk -#. is which Plan9 disk. If your language has no -#. word "mapping" you can use another word which -#. means that the GRUBDEVICE and PLAN9DEVICE are -#. actually the same device, just named differently -#. in OS and GRUB. -#: grub-core/loader/i386/pc/plan9.c:59 -msgid "Override guessed mapping of Plan9 devices." -msgstr "" - -#: grub-core/loader/i386/pc/plan9.c:60 -msgid "GRUBDEVICE=PLAN9DEVICE" -msgstr "" - -#: grub-core/loader/i386/pc/plan9.c:599 -msgid "KERNEL ARGS" -msgstr "" - -#: grub-core/loader/i386/pc/plan9.c:599 -msgid "Load Plan9 kernel." -msgstr "Plan9 çekirdeÄŸini yükle." - -#: grub-core/loader/i386/pc/pxechainloader.c:161 -msgid "Load a PXE image." -msgstr "PXE kalıbı yükle." - -#: grub-core/loader/i386/pc/truecrypt.c:226 -msgid "Load Truecrypt ISO." -msgstr "Truecrypt ISO kalıbı yükle." - -#: grub-core/loader/i386/xen.c:781 grub-core/loader/i386/xen.c:865 -msgid "initrd already loaded" -msgstr "initrd zaten yüklenmiÅŸ" - -#: grub-core/loader/i386/xen.c:968 -msgid "Load module." -msgstr "Modül yükle" - -#: grub-core/loader/i386/xnu.c:1003 -msgid "Press any key to launch xnu" -msgstr "xnu'yu çalıştırmak için bir tuÅŸa basın" - -#. TRANSLATORS: `device-properties' -#. is a variable name, -#. not a program. -#: grub-core/loader/i386/xnu.c:1159 -msgid "Load `device-properties' dump." -msgstr "" - -#: grub-core/loader/ia64/efi/linux.c:124 -msgid "Could not locate FPSWA driver" -msgstr "FPSWA sürücüsünün yeri saptanamıyor" - -#: grub-core/loader/ia64/efi/linux.c:132 -msgid "FPSWA protocol wasn't able to find the interface" -msgstr "" - -#: grub-core/loader/ia64/efi/linux.c:580 -msgid "No FPSWA found" -msgstr "FPSWA bulunamadı" - -#: grub-core/loader/ia64/efi/linux.c:582 -#, c-format -msgid "FPSWA revision: %x\n" -msgstr "FPSWA revizyon: %x\n" - -#: grub-core/loader/ia64/efi/linux.c:591 -msgid "FILE [ARGS...]" -msgstr "" - -#: grub-core/loader/ia64/efi/linux.c:597 -msgid "Display FPSWA version." -msgstr "FPSWA sürümünü görüntüle." - -#: grub-core/loader/multiboot.c:248 -msgid "WARNING: no console will be available to OS" -msgstr "" - -#: grub-core/loader/multiboot.c:450 -msgid "Load a multiboot 2 kernel." -msgstr "Çoklu önyükleme 2 çekirdeÄŸini yükle." - -#: grub-core/loader/multiboot.c:453 -msgid "Load a multiboot 2 module." -msgstr "Çoklu önyükleme 2 modülünü yükle." - -#: grub-core/loader/multiboot.c:456 -msgid "Load a multiboot kernel." -msgstr "Çoklu önyükleme çekirdeÄŸini yükle." - -#: grub-core/loader/multiboot.c:459 -msgid "Load a multiboot module." -msgstr "Çoklu önyükleme modülünü yükle." - -#: grub-core/loader/riscv/linux.c:30 grub-core/loader/riscv/linux.c:40 -#, fuzzy -msgid "Linux not supported yet" -msgstr "16-bit korunmuÅŸ arayüz destekleniyor\n" - -#: grub-core/loader/xnu.c:1416 grub-core/term/gfxterm_background.c:45 -msgid "Background image mode." -msgstr "Arka plan görüntü kipi." - -#. TRANSLATORS: This refers to background image mode (stretched or -#. in left-top corner). Note that GRUB will accept only original -#. keywords stretch and normal, not the translated ones. -#. So please put both in translation -#. e.g. stretch(=%STRETCH%)|normal(=%NORMAL%). -#. The percents mark the translated version. Since many people -#. may not know the word stretch or normal I recommend -#. putting the translation either here or in "Background image mode." -#. string. -#: grub-core/loader/xnu.c:1416 grub-core/term/gfxterm_background.c:55 -msgid "stretch|normal" -msgstr "stretch(=%UZAT%)|normal(=%NORMAL%)" - -#: grub-core/loader/xnu.c:1482 -msgid "Load XNU image." -msgstr "XNU kalıbını yükle." - -#: grub-core/loader/xnu.c:1484 -msgid "Load 64-bit XNU image." -msgstr "64-bit XNU kalıbını yükle." - -#: grub-core/loader/xnu.c:1486 -msgid "Load XNU extension package." -msgstr "XNU uzantı paketini yükle." - -#: grub-core/loader/xnu.c:1488 -msgid "Load XNU extension." -msgstr "XNU uzantısı yükle." - -#. TRANSLATORS: OSBundleRequired is a -#. variable name in xnu extensions -#. manifests. It behaves mostly like -#. GNU/Linux runlevels. -#. -#: grub-core/loader/xnu.c:1495 -msgid "DIRECTORY [OSBundleRequired]" -msgstr "DIRECTORY [OSBundleRequired]" - -#. TRANSLATORS: There are many extensions -#. in extension directory. -#: grub-core/loader/xnu.c:1498 -msgid "Load XNU extension directory." -msgstr "XNU uzantı dizinini yükle." - -#. TRANSLATORS: ramdisk here isn't identifier. It can be translated. -#: grub-core/loader/xnu.c:1501 -msgid "Load XNU ramdisk. It will be available in OS as md0." -msgstr "" - -#: grub-core/loader/xnu.c:1505 -msgid "Load a splash image for XNU." -msgstr "XNU için bir açılış kalıbı kullan." - -#: grub-core/loader/xnu.c:1510 -msgid "Load an image of hibernated XNU." -msgstr "" - -#: grub-core/mmap/mmap.c:538 -msgid "ADDR1,MASK1[,ADDR2,MASK2[,...]]" -msgstr "ADDR1,MASKE1[,ADDR2,MASKE2[,...]]" - -#: grub-core/mmap/mmap.c:539 -msgid "Declare memory regions as faulty (badram)." -msgstr "" - -#: grub-core/mmap/mmap.c:541 -msgid "FROM[K|M|G] TO[K|M|G]" -msgstr "BAÅžLANGIÇ[K|M|G] BİTİŞ[K|M|G]" - -#: grub-core/mmap/mmap.c:542 -msgid "Remove any memory regions in specified range." -msgstr "Belirtilen aralıktaki tüm hafıza bölgelerini sil." - -#: grub-core/net/bootp.c:653 -msgid "four arguments expected" -msgstr "dört bağımsız deÄŸiÅŸken bekleniyor" - -#: grub-core/net/bootp.c:661 grub-core/net/net.c:1155 -#, c-format -msgid "unrecognised network interface `%s'" -msgstr "bilinmeyen aÄŸ arayüzü `%s'" - -#: grub-core/net/bootp.c:664 -msgid "no DHCP info found" -msgstr "DHCP bilgisi bulunamadı" - -#: grub-core/net/bootp.c:674 -msgid "no DHCP options found" -msgstr "DHCP seçenekleri bulunamadı" - -#: grub-core/net/bootp.c:682 -#, fuzzy -msgid "invalid DHCP option code" -msgstr "DHCP seçenekleri bulunamadı" - -#: grub-core/net/bootp.c:686 -#, fuzzy, c-format -msgid "no DHCP option %u found" -msgstr "%d DHCP seçeneÄŸi bulunmadı" - -#: grub-core/net/bootp.c:743 -#, c-format -msgid "unrecognised DHCP option format specification `%s'" -msgstr "bilinmeyen DHCP seçeneÄŸi biçimi tanımlaması `%s'" - -#: grub-core/net/bootp.c:767 -msgid "no network card found" -msgstr "aÄŸ arayüzü bulunamadı" - -#: grub-core/net/bootp.c:859 grub-core/net/net.c:389 -#, c-format -msgid "couldn't autoconfigure %s" -msgstr "%s otomatik olarak yapılandırılamıyor" - -#: grub-core/net/bootp.c:873 grub-core/net/bootp.c:876 -msgid "[CARD]" -msgstr "[KART]" - -#: grub-core/net/bootp.c:874 -msgid "perform a bootp autoconfiguration" -msgstr "bootp otomatik yapılandırması gerçekleÅŸtir" - -#: grub-core/net/bootp.c:877 -#, fuzzy -msgid "perform a DHCP autoconfiguration" -msgstr "bootp otomatik yapılandırması gerçekleÅŸtir" - -#: grub-core/net/bootp.c:879 -msgid "VAR INTERFACE NUMBER DESCRIPTION" -msgstr "" - -#: grub-core/net/bootp.c:880 -msgid "" -"retrieve DHCP option and save it into VAR. If VAR is - then print the value." -msgstr "" - -#: grub-core/net/dns.c:459 -msgid "no DNS servers configured" -msgstr "DNS sunucusu yapılandırılmadı" - -#: grub-core/net/dns.c:522 -msgid "domain name component is too long" -msgstr "" - -#: grub-core/net/dns.c:618 grub-core/net/dns.c:666 -msgid "no DNS record found" -msgstr "DNS kaydı bulunamadı" - -#: grub-core/net/dns.c:626 -msgid "no DNS reply received" -msgstr "DNS yanıtı alınmadı" - -#: grub-core/net/dns.c:682 -msgid "only ipv4" -msgstr "yalnızca ipv4" - -#: grub-core/net/dns.c:686 -msgid "only ipv6" -msgstr "yalnızca ipv6" - -#: grub-core/net/dns.c:690 -msgid "prefer ipv4" -msgstr "ipv4 tercih et" - -#: grub-core/net/dns.c:694 -msgid "prefer ipv6" -msgstr "ipv6 tercih et" - -#: grub-core/net/dns.c:759 -msgid "ADDRESS DNSSERVER" -msgstr "DNSSUNUCU ADRESİ" - -#: grub-core/net/dns.c:760 -msgid "Perform a DNS lookup" -msgstr "Bir DNS araması yap" - -#: grub-core/net/dns.c:762 grub-core/net/dns.c:765 -msgid "DNSSERVER" -msgstr "DNSSUNUCU" - -#: grub-core/net/dns.c:763 -msgid "Add a DNS server" -msgstr "Bir DNS sunucusu ekle" - -#: grub-core/net/dns.c:766 -msgid "Remove a DNS server" -msgstr "Bir DNS sunucusunu kaldır" - -#: grub-core/net/dns.c:768 -msgid "List DNS servers" -msgstr "DNS sunucuları listesi" - -#: grub-core/net/drivers/efi/efinet.c:49 grub-core/net/drivers/efi/efinet.c:65 -#: grub-core/net/drivers/efi/efinet.c:77 grub-core/net/drivers/emu/emunet.c:62 -#: grub-core/net/drivers/i386/pc/pxe.c:273 -#: grub-core/net/drivers/ieee1275/ofnet.c:75 -#: grub-core/net/drivers/uboot/ubootnet.c:62 -msgid "couldn't send network packet" -msgstr "aÄŸ paketi gönderilemiyor" - -#: grub-core/net/drivers/ieee1275/ofnet.c:326 -#: grub-core/net/drivers/ieee1275/ofnet.c:359 -#, fuzzy -msgid "interpret is not supported" -msgstr "16-bit korunmuÅŸ arayüz destekleniyor\n" - -#: grub-core/net/drivers/ieee1275/ofnet.c:336 -msgid "alloc-mem failed" -msgstr "" - -#: grub-core/net/drivers/ieee1275/ofnet.c:370 -msgid "free-mem failed" -msgstr "" - -#: grub-core/net/http.c:105 -msgid "unsupported HTTP response" -msgstr "desteklenmeyen HTTP yanıtı" - -#. TRANSLATORS: GRUB HTTP code is pretty young. So even perfectly -#. valid answers like 403 will trigger this very generic message. -#: grub-core/net/http.c:126 -#, c-format -msgid "unsupported HTTP error %d: %s" -msgstr "desteklenmeyen HTTP hatası %d: %s" - -#: grub-core/net/http.c:429 grub-core/net/tftp.c:420 -#, c-format -msgid "time out opening `%s'" -msgstr "`%s' açılırken zaman aşımı" - -#: grub-core/net/net.c:179 -msgid "timeout: could not resolve hardware address" -msgstr "zaman aşımı: donanım adresi çözülemiyor" - -#: grub-core/net/net.c:548 -#, c-format -msgid "unresolvable address %s" -msgstr "çözülemeyen adres %s" - -#: grub-core/net/net.c:594 -#, c-format -msgid "unrecognised network address `%s'" -msgstr "bilinmeyen aÄŸ adresi `%s'" - -#: grub-core/net/net.c:661 -msgid "destination unreachable" -msgstr "hedef ulaşılamaz" - -#. TRANSLATORS: route loop is a condition when e.g. -#. to contact server A you need to go through B -#. and to contact B you need to go through A. -#: grub-core/net/net.c:684 -msgid "route loop detected" -msgstr "" - -#: grub-core/net/net.c:700 -msgid "address not found" -msgstr "adres bulunamadı" - -#: grub-core/net/net.c:704 -msgid "you can't delete this address" -msgstr "bu adresi silemezsiniz" - -#: grub-core/net/net.c:776 grub-core/net/net.c:792 -#, c-format -msgid "Unsupported hw address type %d\n" -msgstr "Desteklenmeyen donanım adres türü %d\n" - -#: grub-core/net/net.c:813 -#, c-format -msgid "Unsupported address type %d\n" -msgstr "%d desteklenmeyen adres türü\n" - -#: grub-core/net/net.c:1017 grub-core/net/net.c:1131 -msgid "three arguments expected" -msgstr "üç bağımsız deÄŸiÅŸken bekleniyor" - -#: grub-core/net/net.c:1023 -msgid "card not found" -msgstr "kart bulunamadı" - -#. TRANSLATORS: it refers to the network address. -#: grub-core/net/net.c:1167 -msgid "temporary" -msgstr "geçici" - -#: grub-core/net/net.c:1190 -#, c-format -msgid "Unknown address type %d\n" -msgstr "%d bilinmeyen adres türü\n" - -#: grub-core/net/net.c:1298 -msgid "no server is specified" -msgstr "sunucu belirtilmemiÅŸ" - -#: grub-core/net/net.c:1637 -#, c-format -msgid "timeout reading `%s'" -msgstr "`%s' okunurken zaman aşımı" - -#. TRANSLATORS: HWADDRESS stands for -#. "hardware address". -#: grub-core/net/net.c:1762 -msgid "SHORTNAME CARD ADDRESS [HWADDRESS]" -msgstr "" - -#: grub-core/net/net.c:1763 -msgid "Add a network address." -msgstr "Bir aÄŸ adresi ekle." - -#: grub-core/net/net.c:1766 -msgid "[CARD [HWADDRESS]]" -msgstr "" - -#: grub-core/net/net.c:1767 -msgid "Perform an IPV6 autoconfiguration" -msgstr "" - -#: grub-core/net/net.c:1770 grub-core/net/net.c:1777 -msgid "SHORTNAME" -msgstr "" - -#: grub-core/net/net.c:1771 -msgid "Delete a network address." -msgstr "Bir aÄŸ adresi sil." - -#. TRANSLATORS: "gw" is a keyword. -#: grub-core/net/net.c:1774 -msgid "SHORTNAME NET [INTERFACE| gw GATEWAY]" -msgstr "" - -#: grub-core/net/net.c:1775 -msgid "Add a network route." -msgstr "AÄŸ yönlendirmesi ekle." - -#: grub-core/net/net.c:1778 -msgid "Delete a network route." -msgstr "AÄŸ yönlendirmesi sil." - -#: grub-core/net/net.c:1780 -msgid "list network routes" -msgstr "aÄŸ yönlendirmelerini listele" - -#: grub-core/net/net.c:1782 -msgid "list network cards" -msgstr "aÄŸ arayüzlerini listele" - -#: grub-core/net/net.c:1784 -msgid "list network addresses" -msgstr "aÄŸ adreslerini listele" - -#: grub-core/net/tcp.c:681 -msgid "connection refused" -msgstr "baÄŸlantı reddedildi" - -#: grub-core/net/tcp.c:684 -msgid "connection timeout" -msgstr "baÄŸlantı zaman aşımı" - -#: grub-core/normal/auth.c:220 -msgid "Enter username: " -msgstr "Kullanıcı adı gir: " - -#: grub-core/normal/auth.c:269 -msgid "[USERLIST]" -msgstr "[KULLANICILİSTESİ]" - -#: grub-core/normal/auth.c:270 -msgid "Check whether user is in USERLIST." -msgstr "" - -#: grub-core/normal/cmdline.c:174 grub-core/normal/menu_entry.c:1068 -msgid "Possible commands are:" -msgstr "Olası komutlar:" - -#: grub-core/normal/cmdline.c:177 grub-core/normal/menu_entry.c:1072 -msgid "Possible devices are:" -msgstr "Olası aygıtlar:" - -#: grub-core/normal/cmdline.c:180 grub-core/normal/menu_entry.c:1076 -msgid "Possible files are:" -msgstr "Olası dosyalar:" - -#: grub-core/normal/cmdline.c:183 grub-core/normal/menu_entry.c:1080 -msgid "Possible partitions are:" -msgstr "Olası bölümler:" - -#: grub-core/normal/cmdline.c:186 grub-core/normal/menu_entry.c:1084 -msgid "Possible arguments are:" -msgstr "Olası bağımsız deÄŸiÅŸkenler:" - -#. TRANSLATORS: this message is used if none of above matches. -#. This shouldn't happen but please use the general term for -#. "thing" or "object". -#: grub-core/normal/cmdline.c:192 grub-core/normal/menu_entry.c:1088 -msgid "Possible things are:" -msgstr "Olası ÅŸeyler:" - -#: grub-core/normal/color.c:81 -#, c-format -msgid "Warning: syntax error (missing slash) in `%s'\n" -msgstr "Uyarı: `%s' içerisinde söz dizimi hatası (eksik / iÅŸareti)\n" - -#: grub-core/normal/color.c:90 -#, c-format -msgid "Warning: invalid foreground color `%s'\n" -msgstr "Uyarı: geçersiz '%s' ön plan rengi\n" - -#: grub-core/normal/color.c:96 -#, c-format -msgid "Warning: invalid background color `%s'\n" -msgstr "Uyarı: geçersiz '%s' arkaplan rengi\n" - -#: grub-core/normal/context.c:206 -msgid "ENVVAR [ENVVAR] ..." -msgstr "ORATM_DEĞİŞKENİ [ORATM_DEĞİŞKENİ] ..." - -#: grub-core/normal/context.c:207 -msgid "Export variables." -msgstr "DeÄŸiÅŸkenleri dışa aktar." - -#: grub-core/normal/datetime.c:25 -msgid "Sunday" -msgstr "Pazar" - -#: grub-core/normal/datetime.c:26 -msgid "Monday" -msgstr "Pazartesi" - -#: grub-core/normal/datetime.c:27 -msgid "Tuesday" -msgstr "Salı" - -#: grub-core/normal/datetime.c:28 -msgid "Wednesday" -msgstr "Çarşamba" - -#: grub-core/normal/datetime.c:29 -msgid "Thursday" -msgstr "Perşembe" - -#: grub-core/normal/datetime.c:30 -msgid "Friday" -msgstr "Cuma" - -#: grub-core/normal/datetime.c:31 -msgid "Saturday" -msgstr "Cumartesi" - -#: grub-core/normal/dyncmd.c:187 -msgid "module isn't loaded" -msgstr "modül yüklenemedi" - -#: grub-core/normal/main.c:211 -#, c-format -msgid "GNU GRUB version %s" -msgstr "GNU GRUB sürümü %s" - -#: grub-core/normal/main.c:360 -msgid "ESC at any time exits." -msgstr "ESC her an mevcut." - -#: grub-core/normal/main.c:363 -#, c-format -msgid "" -"Minimal BASH-like line editing is supported. For the first word, TAB lists " -"possible command completions. Anywhere else TAB lists possible device or " -"file completions. %s" -msgstr "" -"En küçük BASH benzeri satır düzeni desteklenir. İlk sözcük için, SEKME " -"mümkün olan komutları listeler. Herhangi bir yerde bile SEKME ile var olan " -"aygıt veya dosyalar listelenir. %s" - -#. TRANSLATORS: it's command line prompt. -#: grub-core/normal/main.c:395 -msgid ">" -msgstr ">" - -#. TRANSLATORS: it's command line prompt. -#: grub-core/normal/main.c:398 -msgid "grub>" -msgstr "grub>" - -#: grub-core/normal/main.c:518 -msgid "Clear the screen." -msgstr "Ekranı temizle." - -#: grub-core/normal/main.c:527 -msgid "Enter normal mode." -msgstr "Normal kipe gir." - -#: grub-core/normal/main.c:529 -msgid "Exit from normal mode." -msgstr "Normal kipten çık" - -#: grub-core/normal/menu.c:66 grub-core/normal/menu_entry.c:1449 -msgid "Press any key to continue..." -msgstr "Devam etmek için herhangi bir tuşa basın..." - -#: grub-core/normal/menu.c:815 -#, c-format -msgid "Booting `%s'" -msgstr "`%s' önyükleniyor" - -#: grub-core/normal/menu.c:827 -#, c-format -msgid "Falling back to `%s'" -msgstr "`%s' geri dönülemiyor" - -#: grub-core/normal/menu.c:843 -msgid "Failed to boot both default and fallback entries.\n" -msgstr "" -"Varsayılan ve son çare girdilerinin hiçbiri ile sistem başlatılamadı.\n" - -#: grub-core/normal/menu_entry.c:1171 -msgid "Booting a command list" -msgstr "Bir komut listesini önyüklüyor" - -#: grub-core/normal/menu_text.c:160 -msgid "" -"Minimum Emacs-like screen editing is supported. TAB lists completions. Press " -"Ctrl-x or F10 to boot, Ctrl-c or F2 for a command-line or ESC to discard " -"edits and return to the GRUB menu." -msgstr "" -"En düşük seviye Emac benzeri ekran düzenlemesi desteklenir. Liste " -"tamamlamaları için SEKME tuşuna basın. Açılış yapmak için CTRL+X veya F10 " -"tuşuna basın, komut satırı için CTRL+C veya F2 tuşuna basın veya ESC tuşu " -"ile düzenlemeyi iptal edip GRUB menüsüne dönün." - -#: grub-core/normal/menu_text.c:170 -#, c-format -msgid "Use the %C and %C keys to select which entry is highlighted." -msgstr "Vurgulanacak girdiyi seçmek için %C ve %C tuşlarını kullanın." - -#. TRANSLATORS: that's the list of binary unit prefixes. -#: grub-core/normal/misc.c:38 -msgid "B" -msgstr "B" - -#: grub-core/normal/misc.c:38 -msgid "KiB" -msgstr "KiB" - -#: grub-core/normal/misc.c:38 -msgid "MiB" -msgstr "MiB" - -#: grub-core/normal/misc.c:38 -msgid "GiB" -msgstr "GiB" - -#: grub-core/normal/misc.c:38 -msgid "TiB" -msgstr "TİB" - -#: grub-core/normal/misc.c:38 -msgid "PiB" -msgstr "PİB" - -#. TRANSLATORS: that's the list of binary unit prefixes. -#: grub-core/normal/misc.c:40 -msgid "K" -msgstr "K" - -#: grub-core/normal/misc.c:40 -msgid "M" -msgstr "M" - -#: grub-core/normal/misc.c:40 -msgid "G" -msgstr "G" - -#: grub-core/normal/misc.c:40 -msgid "T" -msgstr "T" - -#: grub-core/normal/misc.c:40 -msgid "P" -msgstr "P" - -#. TRANSLATORS: that's the list of binary unit prefixes. -#: grub-core/normal/misc.c:42 -msgid "B/s" -msgstr "B/s" - -#: grub-core/normal/misc.c:42 -msgid "KiB/s" -msgstr "KiB/s" - -#: grub-core/normal/misc.c:42 -msgid "MiB/s" -msgstr "MiB/s" - -#: grub-core/normal/misc.c:42 -msgid "GiB/s" -msgstr "GiB/s" - -#: grub-core/normal/misc.c:42 -msgid "TiB/s" -msgstr "TiB/s" - -#: grub-core/normal/misc.c:42 -msgid "PiB/s" -msgstr "PiB/s" - -#: grub-core/normal/misc.c:96 -#, c-format -msgid "Partition %s:" -msgstr "Bölüm %s:" - -#: grub-core/normal/misc.c:101 -#, c-format -msgid "Device %s:" -msgstr "Aygıt %s:" - -#: grub-core/normal/misc.c:107 -msgid "Filesystem cannot be accessed" -msgstr "Dosya sistemine ulaşılamadı" - -#: grub-core/normal/misc.c:121 -#, c-format -msgid "Filesystem type %s" -msgstr "Dosya sistemi türü %s" - -#: grub-core/normal/misc.c:131 -#, c-format -msgid "- Label `%s'" -msgstr "- Etiket `%s'" - -#. TRANSLATORS: Arguments are year, month, day, hour, minute, -#. second, day of the week (translated). -#: grub-core/normal/misc.c:148 -#, c-format -msgid "- Last modification time %d-%02d-%02d %02d:%02d:%02d %s" -msgstr "- Son değişiklik zamanı %d-%02d-%02d %02d:%02d:%02d %s" - -#: grub-core/normal/misc.c:171 -msgid "No known filesystem detected" -msgstr "Bilinen dosya sistemi bulunamadı" - -#: grub-core/normal/misc.c:174 -#, c-format -msgid " - Partition start at %llu%sKiB" -msgstr " - Bölüm %llu%sKiB konumunda başlıyor" - -#: grub-core/normal/misc.c:178 -#, c-format -msgid " - Sector size %uB" -msgstr " - Sektör boyutu %uB" - -#: grub-core/normal/misc.c:180 -msgid " - Total size unknown" -msgstr " - Toplam boyut bilinmiyor" - -#: grub-core/normal/misc.c:182 -#, c-format -msgid " - Total size %llu%sKiB" -msgstr " - Toplam boyut %llu%sKiB" - -#. TRANSLATORS: Replace dot with appropriate decimal separator for -#. your language. -#: grub-core/normal/misc.c:186 -msgid ".5" -msgstr ".5" - -#. TRANSLATORS: This has to fit on one line. It's ok to include few -#. words but don't write poems. -#: grub-core/normal/term.c:82 -msgid "--MORE--" -msgstr "--DEVAMI--" - -#: grub-core/osdep/aros/config.c:92 grub-core/osdep/unix/config.c:137 -#: grub-core/osdep/windows/config.c:55 -#, c-format -msgid "cannot open configuration file `%s': %s" -msgstr "yapılandırma dosyası açılamıyor `%s': %s" - -#: grub-core/osdep/basic/compress.c:8 grub-core/osdep/basic/compress.c:14 -#: grub-core/osdep/basic/compress.c:20 -msgid "no compression is available for your platform" -msgstr "platformunuz için kullanılabilir sıkıştırma yok" - -#: grub-core/osdep/basic/no_platform.c:30 -#: grub-core/osdep/windows/platform.c:418 -msgid "no IEEE1275 routines are available for your platform" -msgstr "" - -#: grub-core/osdep/basic/no_platform.c:38 -msgid "no EFI routines are available for your platform" -msgstr "" - -#: grub-core/osdep/basic/no_platform.c:45 -#: grub-core/osdep/windows/platform.c:425 -msgid "no SGI routines are available for your platform" -msgstr "" - -#. TRANSLATORS: The OS itself may very well have a random -#. number generator but GRUB doesn't know how to access it. -#: grub-core/osdep/basic/random.c:42 -msgid "no random number generator is available for your OS" -msgstr "" - -#: grub-core/osdep/devmapper/getroot.c:81 -msgid "Failed to create `device-mapper' tree" -msgstr "" - -#: grub-core/osdep/devmapper/getroot.c:197 -#: grub-core/osdep/freebsd/getroot.c:202 -#, c-format -msgid "can't mount encrypted volume `%s': %s" -msgstr "şifrelenmiş birim bağlanamıyor `%s': %s" - -#. TRANSLATORS: geom is the name of (k)FreeBSD device framework. -#. Usually left untranslated. -#. -#: grub-core/osdep/freebsd/getroot.c:82 grub-core/osdep/freebsd/getroot.c:164 -#: grub-core/osdep/freebsd/getroot.c:258 grub-core/osdep/freebsd/getroot.c:316 -msgid "couldn't open geom" -msgstr "geom açılamıyor" - -#: grub-core/osdep/freebsd/getroot.c:182 grub-core/osdep/freebsd/getroot.c:277 -msgid "couldn't find geli consumer" -msgstr "" - -#: grub-core/osdep/freebsd/getroot.c:282 -msgid "couldn't retrieve geli UUID" -msgstr "" - -#. TRANSLATORS: geom is the name of (k)FreeBSD device framework. -#. Usually left untranslated. "part" is the identifier of one of its -#. classes. -#: grub-core/osdep/freebsd/getroot.c:325 -msgid "couldn't find geom `part' class" -msgstr "" - -#: grub-core/osdep/freebsd/hostdisk.c:72 grub-core/osdep/linux/hostdisk.c:93 -msgid "unaligned device size" -msgstr "Hizalanmamış aygıt boyutu" - -#: grub-core/osdep/generic/blocklist.c:56 -#, c-format -msgid "attempting to read the core image `%s' from GRUB" -msgstr "GRUB'daki çekirdek kalıp olan `%s' okunmaya çalışılıyor" - -#: grub-core/osdep/generic/blocklist.c:57 -#, c-format -msgid "attempting to read the core image `%s' from GRUB again" -msgstr "GRUB'daki çekirdek kalıp olan `%s' tekrar okunmaya çalışılıyor" - -#: grub-core/osdep/generic/blocklist.c:115 -#, c-format -msgid "cannot read `%s' correctly" -msgstr "`%s' düzgün biçimde okunamıyor" - -#: grub-core/osdep/generic/blocklist.c:126 -msgid "failed to read the sectors of the core image" -msgstr "" - -#. TRANSLATORS: On GNU/Hurd, a "translator" is similar to a filesystem -#. mount, but handled by a userland daemon, whose invocation command line -#. is being fetched here. First %s is the file being looked at (for which -#. we are fetching the "translator" command line), second %s is the error -#. message. -#. -#: grub-core/osdep/hurd/getroot.c:79 -#, c-format -msgid "cannot get translator command line for path `%s': %s" -msgstr "" - -#: grub-core/osdep/hurd/getroot.c:82 -#, c-format -msgid "translator command line is empty for path `%s'" -msgstr "" - -#. TRANSLATORS: we expect to get something like -#. /hurd/foobar --option1 --option2=baz /dev/something -#. -#: grub-core/osdep/hurd/getroot.c:98 -#, c-format -msgid "" -"translator `%s' for path `%s' has several non-option words, at least `%s' " -"and `%s'" -msgstr "" - -#. TRANSLATORS: we expect to get something like -#. /hurd/foobar --option1 --option2=baz /dev/something -#. -#: grub-core/osdep/hurd/getroot.c:109 -#, c-format -msgid "" -"translator `%s' for path `%s' is given only options, cannot find device part" -msgstr "" - -#: grub-core/osdep/hurd/hostdisk.c:73 -#, c-format -msgid "Storage information for `%s' does not include type" -msgstr "`%s' için depolama bilgisi tür içermiyor" - -#: grub-core/osdep/hurd/hostdisk.c:75 -#, c-format -msgid "`%s' is not a local disk" -msgstr "`%s' bir yerel disk değil" - -#: grub-core/osdep/hurd/hostdisk.c:78 -#, c-format -msgid "" -"Storage information for `%s' indicates neither a plain partition nor a plain " -"disk" -msgstr "" - -#: grub-core/osdep/linux/blocklist.c:81 grub-core/osdep/linux/blocklist.c:96 -#: grub-core/osdep/linux/blocklist.c:122 -#, c-format -msgid "can't retrieve blocklists: %s" -msgstr "blocklist'ler alınamıyor: %s" - -#: grub-core/osdep/linux/blocklist.c:84 -msgid "blocksize is not divisible by 512" -msgstr "" - -#: grub-core/osdep/linux/blocklist.c:86 -#, fuzzy -msgid "invalid zero blocksize" -msgstr "Geçersiz blok boyutu" - -#: grub-core/osdep/linux/blocklist.c:90 util/setup.c:744 -msgid "can't retrieve blocklists" -msgstr "blocklist'ler alınamıyor" - -#: grub-core/osdep/linux/getroot.c:154 -#, c-format -msgid "ioctl RAID_VERSION error: %s" -msgstr "ioctl RAID_VERSION hatası: %s" - -#: grub-core/osdep/linux/getroot.c:160 grub-core/osdep/linux/getroot.c:164 -#, c-format -msgid "unsupported RAID version: %d.%d" -msgstr "desteklenmeyen RAID sürümü: %d.%d" - -#: grub-core/osdep/linux/getroot.c:169 -#, c-format -msgid "ioctl GET_ARRAY_INFO error: %s" -msgstr "" - -#: grub-core/osdep/linux/getroot.c:178 -#, c-format -msgid "ioctl GET_DISK_INFO error: %s" -msgstr "" - -#: grub-core/osdep/linux/getroot.c:608 grub-core/osdep/linux/getroot.c:678 -#: grub-core/osdep/linux/hostdisk.c:126 grub-core/osdep/unix/getroot.c:253 -#: grub-core/osdep/unix/getroot.c:642 grub-core/osdep/unix/platform.c:92 -#: grub-core/osdep/unix/platform.c:100 -#, c-format -msgid "Unable to open stream from %s: %s" -msgstr "%s konumundan akış açılamıyor: %s" - -#: grub-core/osdep/linux/getroot.c:1033 -#, c-format -msgid "unknown kind of RAID device `%s'" -msgstr "bilinmeyen RAID aygıtı türü `%s'" - -#: grub-core/osdep/linux/ofpath.c:181 -#, c-format -msgid "`obppath' not found in parent dirs of `%s', no IEEE1275 name discovery" -msgstr "" - -#: grub-core/osdep/linux/ofpath.c:222 grub-core/osdep/unix/getroot.c:505 -#: grub-core/osdep/unix/getroot.c:529 grub-core/osdep/unix/relpath.c:49 -#: util/grub-install.c:984 util/grub-install.c:1331 util/grub-probe.c:323 -#, c-format -msgid "failed to get canonical path of `%s'" -msgstr "" - -#: grub-core/osdep/linux/ofpath.c:740 -#, c-format -msgid "unknown device type %s" -msgstr "bilinmeyen aygıt türü: %s" - -#: grub-core/osdep/linux/ofpath.c:758 util/ieee1275/grub-ofpathname.c:39 -#, c-format -msgid "Usage: %s DEVICE\n" -msgstr "Kullanım: %s AYGIT\n" - -#: grub-core/osdep/unix/exec.c:86 grub-core/osdep/unix/exec.c:172 -#: grub-core/osdep/unix/exec.c:217 -#, c-format -msgid "Unable to fork: %s" -msgstr "" - -#: grub-core/osdep/unix/exec.c:166 grub-core/osdep/unix/exec.c:211 -#, c-format -msgid "Unable to create pipe: %s" -msgstr "" - -#: grub-core/osdep/unix/getroot.c:370 -#, fuzzy -msgid "cannot save the original directory" -msgstr "özgün dizin geri yüklenemiyor" - -#: grub-core/osdep/unix/getroot.c:423 grub-core/osdep/unix/getroot.c:480 -#: grub-core/osdep/unix/getroot.c:489 -msgid "cannot restore the original directory" -msgstr "özgün dizin geri yüklenemiyor" - -#. TRANSLATORS: "stat" comes from the name of POSIX function. -#: grub-core/osdep/unix/getroot.c:551 grub-core/osdep/unix/hostdisk.c:61 -#: grub-core/osdep/unix/relpath.c:73 grub-core/osdep/unix/relpath.c:97 -#: util/getroot.c:160 util/getroot.c:162 util/grub-install.c:774 -#: util/grub-macbless.c:70 -#, c-format -msgid "cannot stat `%s': %s" -msgstr "" - -#: grub-core/osdep/unix/hostdisk.c:293 -#, c-format -msgid "cannot make temporary file: %s" -msgstr "geçici dosya oluşturulamıyor: %s" - -#: grub-core/osdep/unix/hostdisk.c:311 -#, c-format -msgid "cannot make temporary directory: %s" -msgstr "geçici dizin oluşturulamıyor: %s" - -#: grub-core/osdep/unix/platform.c:77 -#, c-format -msgid "" -"couldn't find IEEE1275 device path for %s.\n" -"You will have to set `boot-device' variable manually" -msgstr "" - -#. TRANSLATORS: This message is shown when required executable `%s' -#. isn't found. -#: grub-core/osdep/unix/platform.c:149 grub-core/osdep/unix/platform.c:189 -#, c-format -msgid "%s: not found" -msgstr "%s: bulunamadı" - -#: grub-core/osdep/unix/platform.c:225 -#, c-format -msgid "" -"`nvsetenv' failed. \n" -"You will have to set `boot-device' variable manually. At the IEEE1275 " -"prompt, type:\n" -" %s\n" -msgstr "" - -#: grub-core/osdep/unix/platform.c:240 -msgid "You will have to set `SystemPartition' and `OSLoader' manually." -msgstr "" -"`SystemPartition' ve `OSLoader' sizin tarafınızdan elle belirlenmelidir." - -#. TRANSLATORS: canonical pathname is the -#. complete one e.g. /etc/fstab. It has -#. to contain `/' normally, if it doesn't -#. we're in trouble and throw this error. -#: grub-core/osdep/unix/relpath.c:90 -msgid "no `/' in canonical filename" -msgstr "" - -#: grub-core/osdep/windows/hostdisk.c:151 -msgid "cygwin_conv_path() failed" -msgstr "" - -#: grub-core/osdep/windows/hostdisk.c:501 util/grub-install.c:570 -msgid "couldn't retrieve random data" -msgstr "rasgele veri alınamıyor" - -#: grub-core/osdep/windows/platform.c:97 -msgid "Insufficient privileges to access firmware, assuming BIOS" -msgstr "" - -#: grub-core/osdep/windows/platform.c:225 -msgid "no EFI routines are available when running in BIOS mode" -msgstr "" - -#: grub-core/osdep/windows/platform.c:240 -msgid "unexpected EFI error" -msgstr "beklenmeyen EFI hatası" - -#: grub-core/osdep/windows/platform.c:315 -msgid "Couldn't find a free BootNNNN slot" -msgstr "Boş BootNNNN yuvası bulunamadı" - -#: grub-core/partmap/gpt.c:191 -msgid "" -"this GPT partition label contains no BIOS Boot Partition; embedding won't be " -"possible" -msgstr "" -"bu GPT bölüm etiketi hiçbir BIOS Önyükleme Bölümü içermiyor; gömme olası " -"değildir" - -#: grub-core/partmap/gpt.c:196 -msgid "your BIOS Boot Partition is too small; embedding won't be possible" -msgstr "BIOS Önyükleme Bölümünüz çok küçük; gömme olası değildir" - -#. TRANSLATORS: MBR gap and boot track is the same thing and is the space -#. between MBR and first partitition. If your language translates well only -#. "boot track", you can just use it everywhere. Next two messages are about -#. RAID controllers/software bugs which GRUB has to live with. Please spread -#. the message that these are bugs in other software and not merely -#. suboptimal behaviour. -#: grub-core/partmap/msdos.c:51 -#, c-format -msgid "" -"Sector %llu is already in use by raid controller `%s'; avoiding it. Please " -"ask the manufacturer not to store data in MBR gap" -msgstr "" - -#: grub-core/partmap/msdos.c:54 -#, c-format -msgid "" -"Sector %llu is already in use by the program `%s'; avoiding it. This " -"software may cause boot or other problems in future. Please ask its authors " -"not to store data in the boot track" -msgstr "" - -#: grub-core/partmap/msdos.c:384 -msgid "" -"other software is using the embedding area, and there is not enough room for " -"core.img. Such software is often trying to store data in a way that avoids " -"detection. We recommend you investigate" -msgstr "" - -#: grub-core/partmap/msdos.c:395 -msgid "" -"this msdos-style partition label has no post-MBR gap; embedding won't be " -"possible" -msgstr "" - -#: grub-core/partmap/msdos.c:404 -msgid "your embedding area is unusually small. core.img won't fit in it." -msgstr "" -"yerleştirilmiş alanınız alışılmadık biçimde küçük. core.img sığmayacaktır." - -#: grub-core/parttool/msdospart.c:39 -msgid "Make partition active" -msgstr "Disk bölümünü etkinleştir" - -#: grub-core/parttool/msdospart.c:51 -msgid "not a primary partition" -msgstr "birincil bölüm değil" - -#: grub-core/parttool/msdospart.c:69 -#, c-format -msgid "Partition %d is active now. \n" -msgstr "%d bölümü etkinleştirildi. \n" - -#: grub-core/parttool/msdospart.c:74 -#, c-format -msgid "Cleared active flag on %d. \n" -msgstr "" - -#: grub-core/parttool/msdospart.c:87 -msgid "Change partition type" -msgstr "Bölüm türünü değiştir" - -#: grub-core/parttool/msdospart.c:88 -msgid "Set `hidden' flag in partition type" -msgstr "" - -#: grub-core/parttool/msdospart.c:130 -#, c-format -msgid "the partition type 0x%x isn't valid" -msgstr "disk bölümü türü 0x%x geçerli değil" - -#. TRANSLATORS: In this case we're actually writing to the disk and actively -#. modifying partition type rather than just defining it. -#: grub-core/parttool/msdospart.c:137 -#, c-format -msgid "Setting partition type to 0x%x\n" -msgstr "Disk bölümü türü ayarlanıyor 0x%x\n" - -#. TRANSLATORS: 0 is a quantifier. "break" (similar to bash) -#. can be used e.g. to break 3 loops at once. -#. But asking it to break 0 loops makes no sense. -#: grub-core/script/execute.c:143 -msgid "can't break 0 loops" -msgstr "" - -#. TRANSLATORS: It's about not being -#. inside a function. "return" can be used only -#. in a function and this error occurs if it's used -#. anywhere else. -#: grub-core/script/execute.c:227 -msgid "not in function body" -msgstr "" - -#: grub-core/script/execute.c:371 -#, c-format -msgid "invalid variable name `%s'" -msgstr "geçersiz değişken adı `%s'" - -#: grub-core/script/execute.c:953 -msgid "cannot allocate command buffer" -msgstr "" - -#: grub-core/script/lexer.c:144 util/grub-fstest.c:330 -msgid "unexpected end of file" -msgstr "beklenmeyen dosya sonu" - -#: grub-core/script/main.c:55 grub-core/script/main.c:57 -#: grub-core/script/main.c:59 grub-core/script/main.c:67 -msgid "[NUM]" -msgstr "" - -#: grub-core/script/main.c:55 -msgid "Exit from loops" -msgstr "Döngülerden çık." - -#: grub-core/script/main.c:57 -msgid "Continue loops" -msgstr "Döngülere devam et." - -#. TRANSLATORS: Positional arguments are -#. arguments $0, $1, $2, ... -#: grub-core/script/main.c:62 -msgid "Shift positional parameters." -msgstr "Konumsal parametreler kaydır." - -#: grub-core/script/main.c:64 -msgid "[VALUE]..." -msgstr "[DEĞER]..." - -#: grub-core/script/main.c:65 -msgid "Set positional parameters." -msgstr "Pozisyonal parametreleri belirle." - -#. TRANSLATORS: It's a command description -#. and "Return" is a verb, not a noun. The -#. command in question is "return" and -#. has exactly the same semanics as bash -#. equivalent. -#: grub-core/script/main.c:73 -msgid "Return from a function." -msgstr "Bir fonksiyonla dön." - -#: grub-core/term/gfxterm_background.c:176 -msgid "[-m (stretch|normal)] FILE" -msgstr "[-m (stretch|normal)] DOSYA" - -#: grub-core/term/gfxterm_background.c:177 -msgid "Load background image for active terminal." -msgstr "Arka plan resmini aktif konsol için yükle." - -#: grub-core/term/gfxterm_background.c:182 util/grub-install.c:302 -#: util/grub-install.c:303 util/grub-mkrescue.c:107 util/grub-mkrescue.c:108 -#: util/grub-render-label.c:61 util/grub-render-label.c:63 -msgid "COLOR" -msgstr "RENK" - -#: grub-core/term/gfxterm_background.c:183 -msgid "Set background color for active terminal." -msgstr "Etkin uçbirim arkaplan rengini ayarla" - -#: grub-core/term/i386/coreboot/cbmemc.c:139 -msgid "Show CBMEM console content." -msgstr "" - -#: grub-core/term/serial.c:57 -msgid "Set the serial unit." -msgstr "Seri birimini ayarla." - -#: grub-core/term/serial.c:58 -msgid "Set the serial port address." -msgstr "Dizisel bağlantı noktası adresini ayarla." - -#: grub-core/term/serial.c:59 -msgid "Set the serial port speed." -msgstr "Dizisel bağlantı noktası hızını ayarla." - -#: grub-core/term/serial.c:60 -msgid "Set the serial port word length." -msgstr "Dizisel bağlantı noktası sözcük uzunluğunu ayarla." - -#: grub-core/term/serial.c:61 -msgid "Set the serial port parity." -msgstr "Dizisel bağlantı noktası eşliğini ayarla." - -#: grub-core/term/serial.c:62 -msgid "Set the serial port stop bits." -msgstr "Seri yuva durdurma bitlerini ayarla." - -#: grub-core/term/serial.c:63 -msgid "Set the base frequency." -msgstr "Baz frekansı belirle." - -#: grub-core/term/serial.c:64 -msgid "Enable/disable RTS/CTS." -msgstr "RTS/CTS etkinleştir/devre dışı bırak." - -#: grub-core/term/serial.c:218 -#, c-format -msgid "serial port `%s' isn't found" -msgstr "seri bağlantı noktası `%s' bulunamadı" - -#: grub-core/term/serial.c:254 -msgid "unsupported serial port flow control" -msgstr "desteklenmeyen seri bağlantı noktası akış denetimi" - -#: grub-core/term/serial.c:429 -msgid "[OPTIONS...]" -msgstr "[SEÇENEKLER...]" - -#: grub-core/term/serial.c:430 -msgid "Configure serial port." -msgstr "Seri portu yapılandır" - -#: grub-core/term/terminfo.c:184 -#, c-format -msgid "unknown terminfo type `%s'" -msgstr "bilinmeyen terminfo türü `%s'" - -#: grub-core/term/terminfo.c:668 -msgid "ASCII" -msgstr "ASCII" - -#: grub-core/term/terminfo.c:671 -msgid "UTF-8" -msgstr "UTF-8" - -#. TRANSLATORS: visually ordered UTF-8 is a non-compliant encoding -#. based on UTF-8 with right-to-left languages written in reverse. -#. Used on some terminals. Normal UTF-8 is refered as -#. "logically-ordered UTF-8" by opposition. -#: grub-core/term/terminfo.c:677 -msgid "visually-ordered UTF-8" -msgstr "" - -#: grub-core/term/terminfo.c:680 -msgid "Unknown encoding" -msgstr "Bilinmeyen kodlama" - -#: grub-core/term/terminfo.c:684 -msgid "Current terminfo types:" -msgstr "Geçerli terminfo türleri:" - -#: grub-core/term/terminfo.c:699 -msgid "Terminal is ASCII-only [default]." -msgstr "Konsol yalnızca ASCII olarak tanımlıdır." - -#: grub-core/term/terminfo.c:700 -msgid "Terminal is logical-ordered UTF-8." -msgstr "Konsol mantıksal olarak UTF-8 olarak emredildi." - -#: grub-core/term/terminfo.c:701 -msgid "Terminal is visually-ordered UTF-8." -msgstr "Konsol görsel olarak UTF-8 olarak emredildi." - -#: grub-core/term/terminfo.c:703 -msgid "Terminal has specified geometry." -msgstr "" - -#. TRANSLATORS: "x" has to be entered in, like an identifier, so please don't -#. use better Unicode codepoints. -#: grub-core/term/terminfo.c:706 -msgid "WIDTHxHEIGHT." -msgstr "GENİŞLİK X YÜKSEKLİK" - -#: grub-core/term/terminfo.c:746 -msgid "incorrect terminal dimensions specification" -msgstr "" - -#: grub-core/term/terminfo.c:776 -#, c-format -msgid "terminal %s isn't found or it's not handled by terminfo" -msgstr "" - -#: grub-core/term/terminfo.c:785 -msgid "[[-a|-u|-v] [-g WxH] TERM [TYPE]]" -msgstr "[[-a|-u|-v] [-g WxH] TERMİNAL [TÜR]]" - -#: grub-core/term/terminfo.c:786 -msgid "Set terminfo type of TERM to TYPE.\n" -msgstr "TERMİNAL'in terminfo tipini TÜR olarak ayarla.\n" - -#. TRANSLATORS: this is the BLOCK-argument, not -#. environment block. -#: grub-core/tests/test_blockarg.c:49 -msgid "Print and execute block argument." -msgstr "Blok argümanını yazdır ve çalıştır." - -#. TRANSLATORS: We're speaking about bitmap images like -#. JPEG or PNG. -#: grub-core/video/bitmap.c:209 -#, c-format -msgid "bitmap file `%s' is of unsupported format" -msgstr "`%s' biteşlem dosyasının biçimi desteklenmiyor" - -#: grub-core/video/i386/pc/vbe.c:1191 -#, c-format -msgid " VBE info: version: %d.%d OEM software rev: %d.%d\n" -msgstr " VBE bilgisi: sürüm: %d.%d OEM yazılım gözden geçirmesi: %d.%d\n" - -#: grub-core/video/i386/pc/vbe.c:1198 -#, c-format -msgid " total memory: %d KiB\n" -msgstr " toplam bellek: %d KiB\n" - -#: grub-core/video/video.c:596 grub-core/video/video.c:762 -msgid "no suitable video mode found" -msgstr "uygun video kipi bulunamadı" - -#: include/grub/crypto.h:403 -msgid "access denied" -msgstr "erişim engellendi" - -#: include/grub/util/install.h:30 include/grub/util/install.h:35 -msgid "MODULES" -msgstr "MODÜLLER" - -#: include/grub/util/install.h:31 -msgid "pre-load specified modules MODULES" -msgstr "" - -#: include/grub/util/install.h:33 -msgid "embed a specific DTB" -msgstr "" - -#: include/grub/util/install.h:36 -msgid "install only MODULES and their dependencies [default=all]" -msgstr "" - -#: include/grub/util/install.h:37 -msgid "THEMES" -msgstr "TEMALAR" - -#: include/grub/util/install.h:38 -#, c-format -msgid "install THEMES [default=%s]" -msgstr "" - -#: include/grub/util/install.h:39 -msgid "FONTS" -msgstr "YAZI TİPLERİ" - -#: include/grub/util/install.h:40 -#, c-format -msgid "install FONTS [default=%s]" -msgstr "" - -#: include/grub/util/install.h:41 -msgid "LOCALES" -msgstr "" - -#: include/grub/util/install.h:42 -msgid "install only LOCALES [default=all]" -msgstr "" - -#: include/grub/util/install.h:45 -msgid "compress GRUB files [optional]" -msgstr "GRUB dosyalarını sıkıştır [isteğe bağlı]" - -#: include/grub/util/install.h:48 util/grub-mkimage.c:83 -msgid "choose the compression to use for core image" -msgstr "" - -#. TRANSLATORS: platform here isn't identifier. It can be translated. -#: include/grub/util/install.h:51 include/grub/util/install.h:54 -#: util/grub-mkimage.c:66 -#, c-format -msgid "use images and modules under DIR [default=%s/]" -msgstr "" - -#: include/grub/util/install.h:57 -#, c-format -msgid "use translations under DIR [default=%s]" -msgstr "" - -#: include/grub/util/install.h:60 -#, c-format -msgid "use themes under DIR [default=%s]" -msgstr "" - -#: include/grub/util/install.h:65 util/grub-mkimage.c:78 -msgid "embed FILE as public key for signature checking" -msgstr "DOSYAyı imza denetimi için genel anahtar olarak göm" - -#: util/editenv.c:59 util/grub-editenv.c:201 util/grub-install-common.c:535 -#: util/grub-mkimage.c:315 util/setup.c:791 -#, fuzzy, c-format -msgid "cannot sync `%s': %s" -msgstr "`%s' açılamıyor: %s" - -#: util/editenv.c:64 -#, c-format -msgid "cannot rename the file %s to %s" -msgstr "%s dosyasının adı %s olarak değiştirilemiyor" - -#: util/getroot.c:402 -#, c-format -msgid "disk does not exist, so falling back to partition device %s" -msgstr "" - -#: util/grub-editenv.c:45 util/grub-fstest.c:506 -msgid "Commands:" -msgstr "Komutlar:" - -#: util/grub-editenv.c:47 -msgid "Create a blank environment block file." -msgstr "Boş bir çevresel öbek dosyası oluştur." - -#: util/grub-editenv.c:49 -msgid "List the current variables." -msgstr "Mevcut değişkenleri listele." - -#. TRANSLATORS: "set" is a keyword. It's a summary of "set" subcommand. -#: util/grub-editenv.c:51 -msgid "set [NAME=VALUE ...]" -msgstr "" - -#: util/grub-editenv.c:52 -msgid "Set variables." -msgstr "Değişkenleri ayarla." - -#. TRANSLATORS: "unset" is a keyword. It's a summary of "unset" subcommand. -#: util/grub-editenv.c:54 -msgid "unset [NAME ...]" -msgstr "" - -#: util/grub-editenv.c:55 -msgid "Delete variables." -msgstr "Değişkenleri sil." - -#: util/grub-editenv.c:57 -msgid "Options:" -msgstr "Seçenekler:" - -#: util/grub-editenv.c:84 -msgid "You need to specify at least one command.\n" -msgstr "En az bir komut belirlemeniz gerekir.\n" - -#: util/grub-editenv.c:113 -msgid "FILENAME COMMAND" -msgstr "DOSYA ADI KOMUTU" - -#: util/grub-editenv.c:114 -msgid "Tool to edit environment block." -msgstr "Ortam bloğu düzenleme aracı." - -#: util/grub-editenv.c:116 -#, c-format -msgid "" -"If FILENAME is `-', the default value %s is used.\n" -"\n" -"There is no `delete' command; if you want to delete the whole environment\n" -"block, use `rm %s'." -msgstr "" - -#: util/grub-editenv.c:162 -msgid "invalid environment block" -msgstr "" - -#: util/grub-editenv.c:217 -#, c-format -msgid "invalid parameter %s" -msgstr "%s geçersiz parametre" - -#: util/grub-editenv.c:222 -msgid "environment block too small" -msgstr "" - -#: util/grub-fstest.c:107 -#, c-format -msgid "disk read fails at offset %lld, length %lld" -msgstr "" - -#: util/grub-fstest.c:138 -#, c-format -msgid "invalid skip value %lld" -msgstr "geçersiz atlama değeri %lld" - -#: util/grub-fstest.c:160 util/grub-fstest.c:246 -#, c-format -msgid "read error at offset %llu: %s" -msgstr "%llu ofsetinde okuma hatası: %s" - -#: util/grub-fstest.c:210 -#, c-format -msgid "cannot open OS file `%s': %s" -msgstr "" - -#: util/grub-fstest.c:225 util/misc.c:126 -#, c-format -msgid "cannot write to the stdout: %s" -msgstr "standart çıktıya yazılamıyor: %s" - -#: util/grub-fstest.c:259 -#, c-format -msgid "compare fail at offset %llu" -msgstr "%llu. ofsette karşılaştırma hatası" - -#: util/grub-fstest.c:280 util/grub-fstest.c:314 -#, c-format -msgid "OS file %s open error: %s" -msgstr "İşletim sistemi dosyası %s açma hatası: %s" - -#: util/grub-fstest.c:402 util/grub-mount.c:392 -#, c-format -msgid "`loopback' command fails: %s" -msgstr "`loopback' komutu başarısız: %s" - -#: util/grub-fstest.c:413 util/grub-mount.c:402 -#, c-format -msgid "`cryptomount' command fails: %s" -msgstr "`cryptomount' komutu başarısız: %s" - -#: util/grub-fstest.c:474 util/grub-fstest.c:478 -msgid "couldn't retrieve UUID" -msgstr "UUID alınamadı" - -#: util/grub-fstest.c:507 -msgid "ls PATH" -msgstr "ls PATH" - -#: util/grub-fstest.c:507 -msgid "List files in PATH." -msgstr "PATH'teki dosyaları listele." - -#: util/grub-fstest.c:508 -msgid "cp FILE LOCAL" -msgstr "cp DOSYA LOKAL" - -#: util/grub-fstest.c:508 -msgid "Copy FILE to local file LOCAL." -msgstr "DOSYA'yı YEREL yerel dosyasına kopyala." - -#: util/grub-fstest.c:509 -msgid "cat FILE" -msgstr "" - -#: util/grub-fstest.c:509 -msgid "Copy FILE to standard output." -msgstr "DOSYAyı standart çıktıya kopyala." - -#: util/grub-fstest.c:510 -msgid "cmp FILE LOCAL" -msgstr "cmp DOSYA KONUMU" - -#: util/grub-fstest.c:510 -msgid "Compare FILE with local file LOCAL." -msgstr "DOSYA'yı YEREL yerel dosyası ile karşılaştır." - -#: util/grub-fstest.c:511 -msgid "hex FILE" -msgstr "hex DOSYA" - -#: util/grub-fstest.c:511 -msgid "Show contents of FILE in hex." -msgstr "" - -#: util/grub-fstest.c:512 -msgid "crc FILE" -msgstr "crc DOSYA" - -#: util/grub-fstest.c:512 -msgid "Get crc32 checksum of FILE." -msgstr "DOSYA nın crc32 denetim değeri" - -#: util/grub-fstest.c:513 -msgid "blocklist FILE" -msgstr "blocklist DOSYA" - -#: util/grub-fstest.c:513 -msgid "Display blocklist of FILE." -msgstr "Yasaklı DOSYA listesini gösterir." - -#: util/grub-fstest.c:514 -msgid "xnu_uuid DEVICE" -msgstr "" - -#: util/grub-fstest.c:514 -msgid "Compute XNU UUID of the device." -msgstr "" - -#. TRANSLATORS: bitmaps are images like e.g. in JPEG. -#: util/grub-fstest.c:517 util/grub-fstest.c:518 util/grub-fstest.c:519 -#: util/grub-mkfont.c:938 util/grub-mkfont.c:951 util/grub-mkfont.c:952 -#: util/grub-mkpasswd-pbkdf2.c:46 util/grub-mkpasswd-pbkdf2.c:47 -#: util/grub-mkpasswd-pbkdf2.c:48 -msgid "NUM" -msgstr "" - -#: util/grub-fstest.c:517 -msgid "Skip N bytes from output file." -msgstr "çıktı dosyasından N byte atla" - -#: util/grub-fstest.c:518 -msgid "Handle N bytes in output file." -msgstr "Çıkış dosyasındaki N bayt'ı işle." - -#: util/grub-fstest.c:519 -msgid "Specify the number of input files." -msgstr "Girdi dosyalarının sayısını belirtin." - -#: util/grub-fstest.c:520 util/grub-mount.c:453 -msgid "Set debug environment variable." -msgstr "Hata ayıklama ortamı değişkeni ayarla." - -#: util/grub-fstest.c:521 util/grub-mount.c:454 -msgid "Mount crypto devices." -msgstr "Şifrelenmiş aygıtları bağlayın." - -#. TRANSLATORS: "prompt" is a keyword. -#: util/grub-fstest.c:524 util/grub-mount.c:457 -msgid "FILE|prompt" -msgstr "" - -#: util/grub-fstest.c:524 util/grub-mount.c:457 -msgid "Load zfs crypto key." -msgstr "" - -#: util/grub-fstest.c:526 -msgid "Uncompress data." -msgstr "Sıkıştırılmamış veri." - -#: util/grub-fstest.c:605 -msgid "Invalid disk count.\n" -msgstr "Geçersiz disk sayımı.\n" - -#. TRANSLATORS: disk count is optional but if it's there it must -#. be before disk list. So please don't imply disk count as mandatory. -#. -#: util/grub-fstest.c:613 -msgid "Disk count must precede disks list.\n" -msgstr "Disk sayısı disk listesinden önce gelmelidir.\n" - -#: util/grub-fstest.c:633 -msgid "No command is specified.\n" -msgstr "Hiçbir komut belirlenmedi.\n" - -#: util/grub-fstest.c:638 -msgid "Not enough parameters to command.\n" -msgstr "Komut vermek için yeterli girdi yok.\n" - -#: util/grub-fstest.c:711 -#, c-format -msgid "Invalid command %s.\n" -msgstr "Geçersiz komut %s.\n" - -#: util/grub-fstest.c:724 -msgid "IMAGE_PATH COMMANDS" -msgstr "IMAGE_PATH KOMUTLAR" - -#: util/grub-fstest.c:725 util/grub-mount.c:553 -msgid "Debug tool for filesystem driver." -msgstr "Dosya sistemi sürücüsü için hata ayıklama aracı." - -#: util/grub-glue-efi.c:53 -msgid "set input filename for 32-bit part." -msgstr "32-bit parça için girdi dosyası adı belirle." - -#: util/grub-glue-efi.c:55 -msgid "set input filename for 64-bit part." -msgstr "64-bit parça için girdi dosyası adı belirle." - -#: util/grub-glue-efi.c:57 util/grub-mklayout.c:55 util/grub-render-label.c:71 -msgid "set output filename. Default is STDOUT" -msgstr "çıktı dosyası adı belirle. Öntanımlı: STDOUT" - -#: util/grub-glue-efi.c:94 util/grub-mklayout.c:476 -#: util/grub-mkpasswd-pbkdf2.c:86 util/grub-render-label.c:131 -msgid "[OPTIONS]" -msgstr "[SEÇENEKLER]" - -#: util/grub-glue-efi.c:95 -msgid "Glue 32-bit and 64-bit binary into Apple universal one." -msgstr "" - -#: util/grub-glue-efi.c:116 -msgid "Missing input file\n" -msgstr "Eksik girdi dosyası\n" - -#: util/grub-install-common.c:127 util/grub-install-common.c:151 -#, c-format -msgid "cannot copy `%s' to `%s': %s" -msgstr "`%s', `%s' konumuna kopyalanamıyor: %s" - -#: util/grub-install-common.c:147 -#, c-format -msgid "can't compress `%s' to `%s'" -msgstr "`%s', `%s' konumuna sıkıştırılamıyor" - -#: util/grub-install-common.c:196 util/grub-install-common.c:552 -#: util/grub-install-common.c:579 util/grub-install-common.c:621 -#, c-format -msgid "cannot open directory `%s': %s" -msgstr "dizin açılamıyor `%s': %s" - -#: util/grub-install-common.c:212 -#, c-format -msgid "cannot delete `%s': %s" -msgstr "silinemiyor `%s': %s" - -#: util/grub-install-common.c:324 util/grub-mkimage.c:209 -msgid "grub-mkimage is compiled without XZ support" -msgstr "grub-mkimage, XZ desteği olmadan derlenmiştir" - -#: util/grub-install-common.c:332 util/grub-mkimage.c:217 -#, c-format -msgid "Unknown compression format %s" -msgstr "Bilinmeyen sıkıştırma biçimi %s" - -#: util/grub-install-common.c:400 -#, c-format -msgid "Unrecognized compression `%s'" -msgstr "Tanınmayan sıkıştırma `%s'" - -#: util/grub-install-common.c:509 -#, c-format -msgid "unknown target format %s" -msgstr "bilinmeyen hedef biçim: %s" - -#: util/grub-install-common.c:700 -#, c-format -msgid "cannot find locale `%s'" -msgstr "`%s' yereli bulunamıyor" - -#: util/grub-install-common.c:939 -#, c-format -msgid "%s doesn't exist. Please specify --target or --directory" -msgstr "%s yok. Lütfen --target veya --directory belirtin" - -#: util/grub-install-common.c:948 util/grub-install-common.c:951 -#, c-format -msgid "invalid modinfo file `%s'" -msgstr "geçersiz modinfo dosyası `%s'" - -#: util/grub-install-common.c:966 -#, c-format -msgid "Unknown platform `%s-%s'" -msgstr "`%s-%s' bilinmeyen platform" - -#: util/grub-install.c:238 -msgid "More than one install device?" -msgstr "Birden çok kurulum aygıtı?" - -#: util/grub-install.c:251 -#, c-format -msgid "" -"install GRUB images under the directory DIR/%s instead of the %s directory" -msgstr "" - -#: util/grub-install.c:256 util/grub-probe.c:734 -msgid "TARGET" -msgstr "HEDEF" - -#. TRANSLATORS: "TARGET" as in "target platform". -#: util/grub-install.c:258 -#, c-format -msgid "install GRUB for TARGET platform [default=%s]; available targets: %s" -msgstr "" - -#. TRANSLATORS: "may break" doesn't just mean that option wouldn't have any -#. effect but that it will make the resulting install unbootable from HDD. -#. TRANSLATORS: The potential breakage isn't limited to floppies but it's -#. likely to make the install unbootable from HDD. -#: util/grub-install.c:267 util/grub-setup.c:94 -msgid "" -"make the drive also bootable as floppy (default for fdX devices). May break " -"on some BIOSes." -msgstr "" - -#: util/grub-install.c:270 -msgid "delete device map if it already exists" -msgstr "aygıt haritası mevcutsa sil" - -#: util/grub-install.c:272 util/grub-setup.c:87 -msgid "install even if problems are detected" -msgstr "sorun tespit edilse bile kur" - -#: util/grub-install.c:274 -msgid "use identifier file even if UUID is available" -msgstr "UUID kullanılabilir olsa da tanımlayıcı dosyayı kullan" - -#: util/grub-install.c:276 -msgid "" -"disk module to use (biosdisk or native). This option is only available on " -"BIOS target." -msgstr "" - -#: util/grub-install.c:279 -msgid "" -"don't update the `boot-device'/`Boot*' NVRAM variables. This option is only " -"available on EFI and IEEE1275 targets." -msgstr "" - -#: util/grub-install.c:282 util/grub-setup.c:89 -msgid "do not probe for filesystems in DEVICE" -msgstr "" - -#: util/grub-install.c:284 -msgid "do not install bootsector" -msgstr "" - -#: util/grub-install.c:286 util/grub-setup.c:96 -msgid "" -"Do not apply any reed-solomon codes when embedding core.img. This option is " -"only available on x86 BIOS targets." -msgstr "" - -#: util/grub-install.c:293 -msgid "" -"the installation device is removable. This option is only available on EFI." -msgstr "" -"kurulum aygıtı kaldırılabilir. Bu seçenek yalnızca EFI üzerinde " -"kullanılabilir." - -#: util/grub-install.c:295 -msgid "ID" -msgstr "Kimlik" - -#: util/grub-install.c:296 -msgid "the ID of bootloader. This option is only available on EFI and Macs." -msgstr "" - -#: util/grub-install.c:298 -msgid "use DIR as the EFI System Partition root." -msgstr "" - -#: util/grub-install.c:300 -msgid "use DIR for PPC MAC install." -msgstr "" - -#: util/grub-install.c:301 util/grub-mkrescue.c:106 -msgid "use FILE as font for label" -msgstr "" - -#: util/grub-install.c:302 util/grub-mkrescue.c:107 -msgid "use COLOR for label" -msgstr "etiket için RENK kullan" - -#: util/grub-install.c:303 util/grub-mkrescue.c:108 -msgid "use COLOR for label background" -msgstr "arkaplan etiketi için RENK kullan" - -#: util/grub-install.c:304 util/grub-mkrescue.c:110 -msgid "use STRING as product version" -msgstr "" - -#: util/grub-install.c:361 -msgid "[OPTION] [INSTALL_DEVICE]" -msgstr "" - -#: util/grub-install.c:362 -msgid "Install GRUB on your drive." -msgstr "Aygıtınıza GRUB kurun." - -#: util/grub-install.c:363 -#, c-format -msgid "" -"INSTALL_DEVICE must be system device filename.\n" -"%s copies GRUB images into %s. On some platforms, it may also install GRUB " -"into the boot sector." -msgstr "" - -#: util/grub-install.c:672 -#, c-format -msgid "the drive %s is defined multiple times in the device map %s" -msgstr "%s aygıtı %s aygıt haritasında birden çok tanımlanmış" - -#: util/grub-install.c:878 -msgid "Unable to determine your platform. Use --target." -msgstr "Platformunuz saptanamıyor. Lütfen --target kullanın." - -#: util/grub-install.c:891 -#, c-format -msgid "Installing for %s platform.\n" -msgstr "%s platformu için kuruluyor.\n" - -#: util/grub-install.c:939 -msgid "install device isn't specified" -msgstr "kurulum aygıtı belirtilmedi" - -#: util/grub-install.c:1057 -msgid "cannot find EFI directory" -msgstr "EFI dizini bulunamıyor" - -#: util/grub-install.c:1060 util/grub-install.c:1209 util/grub-install.c:1254 -#: util/grub-macbless.c:76 util/grub-probe.c:329 util/setup.c:316 -#, c-format -msgid "cannot find a device for %s (is /dev mounted?)" -msgstr "%s için bir aygıt bulunamıyor (/dev bağlı mı?)" - -#: util/grub-install.c:1069 util/grub-install.c:1217 util/grub-install.c:1270 -#: util/grub-install.c:1365 util/grub-macbless.c:80 util/grub-probe.c:372 -#, c-format -msgid "cannot find a GRUB drive for %s. Check your device.map" -msgstr "%s için bir GRUB aygıtı bulunamıyor. device.map'inizi gözden geçirin" - -#: util/grub-install.c:1087 -#, c-format -msgid "%s doesn't look like an EFI partition" -msgstr "%s EFI disk bölümü gibi görünmüyor." - -#: util/grub-install.c:1129 util/grub-install.c:1614 -msgid "You've found a bug" -msgstr "Bir böcek buldunuz" - -#: util/grub-install.c:1231 -#, c-format -msgid "filesystem on %s is neither HFS nor HFS+" -msgstr "%s üstündeki dosya sistemi ne HFS ne de HFS+" - -#: util/grub-install.c:1299 -#, c-format -msgid "" -"attempt to install to encrypted disk without cryptodisk enabled. Set `%s' in " -"file `%s'" -msgstr "" -"cryptodisk etkinleştirilmeden şifrelenmiş diske kurulum denendi. `%2$s' " -"dosyasında `%1$s' belirtin" - -#: util/grub-install.c:1410 util/grub-install.c:1772 util/grub-install.c:1872 -#, c-format -msgid "Can't create file: %s" -msgstr "Dosya oluşturulamıyor: %s" - -#: util/grub-install.c:1491 -msgid "no hints available for your platform. Expect reduced performance" -msgstr "" - -#. TRANSLATORS: This is a prefix in the log to indicate that usually -#. a command would be executed but due to an option was skipped. -#: util/grub-install.c:1702 -msgid "NOT RUNNING: " -msgstr "" - -#: util/grub-install.c:1806 -msgid "the chosen partition is not a PReP partition" -msgstr "seçilen bölüm bir PReP bölümü değil" - -#: util/grub-install.c:1811 -msgid "failed to copy Grub to the PReP partition" -msgstr "Grub, PReP bölümüne kopyalanamıyor" - -#: util/grub-install.c:1816 -#, c-format -msgid "" -"the PReP partition is not empty. If you are sure you want to use it, run dd " -"to clear it: `%s'" -msgstr "" -"PReP bölümü boş değil. Eğer kullanmak istediğinizden eminseniz temizlemek " -"için dd komutunu çalıştırın: `%s'" - -#: util/grub-install.c:1888 util/grub-install.c:1932 -#, c-format -msgid "efibootmgr failed to register the boot entry: %s" -msgstr "" - -#: util/grub-install.c:1916 -msgid "EFI bootloader id isn't specified." -msgstr "" - -#: util/grub-install.c:1950 -msgid "WARNING: no platform-specific install was performed" -msgstr "UYARI: platforma özgü kurulum gerçekleştirilmedi" - -#: util/grub-install.c:1957 -msgid "Installation finished. No error reported." -msgstr "Kurulum tamamlandı. Hata bildirilmedi." - -#: util/grub-macbless.c:101 -msgid "bless for x86-based macs" -msgstr "" - -#: util/grub-macbless.c:103 -msgid "bless for ppc-based macs" -msgstr "" - -#: util/grub-macbless.c:136 util/grub-probe.c:823 -msgid "No path or device is specified.\n" -msgstr "Aygıt için yol tanımlanmadı.\n" - -#: util/grub-macbless.c:157 -msgid "--ppc PATH|--x86 FILE" -msgstr "" - -#: util/grub-macbless.c:158 -msgid "Mac-style bless on HFS or HFS+" -msgstr "" - -#: util/grub-menulst2cfg.c:44 -#, c-format -msgid "Usage: %s [INFILE [OUTFILE]]\n" -msgstr "" - -#: util/grub-mkfont.c:157 -#, c-format -msgid "Freetype Error %d loading glyph 0x%x for U+0x%x%s" -msgstr "Freetype Hatası %d 0x%x kabartması U+0x%x%s için yükleniyor" - -#. TRANSLATORS: These qualifiers are used for cursive typography, -#. mainly Arabic. Note that the terms refer to the visual position -#. and not logical order and if used in left-to-right script then -#. leftmost is initial but with right-to-left script like Arabic -#. rightmost is the initial. -#: util/grub-mkfont.c:165 -msgid " (medial)" -msgstr "" - -#: util/grub-mkfont.c:166 -msgid " (leftmost)" -msgstr "" - -#: util/grub-mkfont.c:167 -msgid " (rightmost)" -msgstr "" - -#: util/grub-mkfont.c:481 -#, c-format -msgid "Out of range substitution (%d, %d)\n" -msgstr "" - -#. TRANSLATORS: "lookup" is taken directly from font specifications -#. which are formulated as "Under condition X replace LOOKUP with -#. SUBSTITUITION". " -#: util/grub-mkfont.c:506 -#, c-format -msgid "Out of range lookup: %d\n" -msgstr "" - -#: util/grub-mkfont.c:514 -#, c-format -msgid "Unsupported substitution type: %d\n" -msgstr "Desteklenmeyen yer değiştirme türü: %d\n" - -#: util/grub-mkfont.c:550 -#, c-format -msgid "Unsupported substitution specification: %d\n" -msgstr "Desteklenmeyen yer değiştirme tanımlaması: %d\n" - -#: util/grub-mkfont.c:582 -#, c-format -msgid "Unsupported coverage specification: %d\n" -msgstr "" - -#: util/grub-mkfont.c:622 -#, c-format -msgid "WARNING: unsupported font feature parameters: %x\n" -msgstr "UYARI: yazı tipi özellik parametresi desteklenmiyor : %x\n" - -#: util/grub-mkfont.c:936 util/grub-mkrescue.c:98 util/grub-mkstandalone.c:48 -msgid "save output in FILE [required]" -msgstr "" - -#. TRANSLATORS: some font files may have multiple faces (fonts). -#. This option is used to chose among them, the first face being '0'. -#. Rarely used. -#: util/grub-mkfont.c:942 -msgid "select face index" -msgstr "" - -#: util/grub-mkfont.c:943 -msgid "FROM-TO[,FROM-TO]" -msgstr "" - -#. TRANSLATORS: It refers to the range of characters in font. -#: util/grub-mkfont.c:945 -msgid "set font range" -msgstr "yazı tipi aralığını ayarla" - -#. TRANSLATORS: "family name" for font is just a generic name without suffix -#. like "Bold". -#: util/grub-mkfont.c:949 -msgid "set font family name" -msgstr "yazı tipi ailesi adını ayarla" - -#: util/grub-mkfont.c:950 -msgid "SIZE" -msgstr "BOYUT" - -#: util/grub-mkfont.c:950 -msgid "set font size" -msgstr "yazı tipi boyutunu ayarla" - -#: util/grub-mkfont.c:951 -msgid "set font descent" -msgstr "" - -#: util/grub-mkfont.c:952 -msgid "set font ascent" -msgstr "" - -#: util/grub-mkfont.c:953 -msgid "convert to bold font" -msgstr "kalın yazı tipine çevir" - -#: util/grub-mkfont.c:954 -msgid "force autohint" -msgstr "" - -#: util/grub-mkfont.c:955 -msgid "disable hinting" -msgstr "" - -#. TRANSLATORS: some fonts contain bitmap rendering for -#. some sizes. This option forces rerendering even if -#. pre-rendered bitmap is available. -#. -#: util/grub-mkfont.c:961 -msgid "ignore bitmap strikes when loading" -msgstr "yüklenirken bir eşlem vuruşlarını yoksay" - -#. TRANSLATORS: It refers to the range of characters in font. -#: util/grub-mkfont.c:1059 util/grub-mkfont.c:1075 -msgid "invalid font range" -msgstr "geçersiz yazı tipi aralığı" - -#: util/grub-mkfont.c:1151 -msgid "[OPTIONS] FONT_FILES" -msgstr "[SEÇENEKLER] YAZITİPİ_DOSYALARI" - -#: util/grub-mkfont.c:1152 -msgid "Convert common font file formats into PF2" -msgstr "" - -#: util/grub-mkfont.c:1182 util/grub-mkrescue.c:483 -#: util/grub-mkstandalone.c:306 -msgid "output file must be specified" -msgstr "çıktı dosyası belirtilmelidir" - -#: util/grub-mkfont.c:1185 -msgid "FT_Init_FreeType fails" -msgstr "" - -#: util/grub-mkfont.c:1199 -#, c-format -msgid "can't open file %s, index %d: error %d" -msgstr "" - -#: util/grub-mkfont.c:1229 -#, c-format -msgid "can't set %dx%d font size: Freetype error %d: %s" -msgstr "" - -#: util/grub-mkimage.c:67 -msgid "set prefix directory" -msgstr "ön ek dizinini belirle" - -#. TRANSLATORS: "memdisk" here isn't an identifier, it can be translated. -#. "embed" is a verb (command description). " -#: util/grub-mkimage.c:71 -msgid "" -"embed FILE as a memdisk image\n" -"Implies `-p (memdisk)/boot/grub' and overrides any prefix supplied " -"previously, but the prefix itself can be overridden by later options" -msgstr "" - -#: util/grub-mkimage.c:74 -msgid "embed FILE as a device tree (DTB)\n" -msgstr "" - -#: util/grub-mkimage.c:76 -msgid "embed FILE as an early config" -msgstr "" - -#. TRANSLATORS: NOTE is a name of segment. -#: util/grub-mkimage.c:80 -msgid "add NOTE segment for CHRP IEEE1275" -msgstr "" - -#: util/grub-mkimage.c:81 -msgid "output a generated image to FILE [default=stdout]" -msgstr "" - -#: util/grub-mkimage.c:82 -msgid "FORMAT" -msgstr "BİÇİM" - -#: util/grub-mkimage.c:100 util/grub-mkstandalone.c:62 -msgid "generate an image in FORMAT" -msgstr "" - -#: util/grub-mkimage.c:101 util/grub-mkstandalone.c:63 -msgid "available formats:" -msgstr "kullanılabilir biçimler:" - -#: util/grub-mkimage.c:152 util/grub-mkstandalone.c:96 -#, c-format -msgid "unknown target format %s\n" -msgstr "bilinmeyen hedef biçim %s\n" - -#: util/grub-mkimage.c:242 -msgid "[OPTION]... [MODULES]" -msgstr "[SEÇENEK]... [MODÜLLER]" - -#: util/grub-mkimage.c:243 -msgid "Make a bootable image of GRUB." -msgstr "GRUB'un önyüklenebilir görüntüsünü oluştur" - -#: util/grub-mkimage.c:273 util/grub-mkstandalone.c:309 -msgid "Target format not specified (use the -O option)." -msgstr "Hedef biçimi belirtilmemiş (-O seçeneğini kullanın)." - -#: util/grub-mkimage.c:282 -msgid "Prefix not specified (use the -p option)." -msgstr "Ön ek belirtilmemiş (-p seçeneğini kullanın)." - -#: util/grub-mkimage.c:318 util/setup.c:793 -#, fuzzy, c-format -msgid "cannot close `%s': %s" -msgstr "`%s' açılamıyor: %s" - -#: util/grub-mkimagexx.c:2191 -#, c-format -msgid "" -"`%s' is miscompiled: its start address is 0x%llx instead of 0x%llx: ld.gold " -"bug?" -msgstr "" - -#: util/grub-mklayout.c:53 -msgid "set input filename. Default is STDIN" -msgstr "girdi dosyası adını belirle. Öntanımlı: STDIN" - -#. TRANSLATORS: scan identifier is keyboard key symbolic name. -#: util/grub-mklayout.c:307 -#, c-format -msgid "Unknown keyboard scan identifier %s\n" -msgstr "" - -#. TRANSLATORS: scan code is keyboard key numeric identifier. -#: util/grub-mklayout.c:390 util/grub-mklayout.c:418 -#, c-format -msgid "Unknown keyboard scan code 0x%02x\n" -msgstr "" - -#. TRANSLATORS: this error is triggered when input doesn't contain any -#. key descriptions. -#: util/grub-mklayout.c:438 -msgid "ERROR: no valid keyboard layout found. Check the input.\n" -msgstr "HATA: geçerli klavye yerleşimi bulunamadı. Girdiyi denetleyin.\n" - -#. TRANSLATORS: "one" is a shortcut for "keyboard layout". -#: util/grub-mklayout.c:478 -msgid "Generate GRUB keyboard layout from Linux console one." -msgstr "" - -#: util/grub-mknetdir.c:47 -msgid "root directory of TFTP server" -msgstr "TFTP sunucusunun kök dizini" - -#: util/grub-mknetdir.c:49 -msgid "relative subdirectory on network server" -msgstr "" - -#: util/grub-mknetdir.c:88 -msgid "" -"Prepares GRUB network boot images at net_directory/subdir assuming " -"net_directory being TFTP root." -msgstr "" - -#: util/grub-mknetdir.c:146 -#, c-format -msgid "unsupported platform %s" -msgstr "desteklenmeyen platform: %s" - -#. TRANSLATORS: First %s is replaced by platform name. Second one by filename. -#: util/grub-mknetdir.c:165 -#, c-format -msgid "" -"Netboot directory for %s created. Configure your DHCP server to point to %s\n" -msgstr "" -"%s için ağdan kurulum dizini oluşturuldu. DHCP sunucunuzu şuna yöneltin: %s\n" - -#: util/grub-mkpasswd-pbkdf2.c:46 -msgid "Number of PBKDF2 iterations" -msgstr "" - -#: util/grub-mkpasswd-pbkdf2.c:47 -msgid "Length of generated hash" -msgstr "" - -#: util/grub-mkpasswd-pbkdf2.c:48 -msgid "Length of salt" -msgstr "" - -#: util/grub-mkpasswd-pbkdf2.c:87 -msgid "Generate PBKDF2 password hash." -msgstr "PBKDF2 parola hash'i oluştur." - -#: util/grub-mkpasswd-pbkdf2.c:144 util/grub-mkpasswd-pbkdf2.c:151 -msgid "failure to read password" -msgstr "şifre okunmasında hata" - -#: util/grub-mkpasswd-pbkdf2.c:146 -msgid "Reenter password: " -msgstr "Parolanızı tekrar girin: " - -#: util/grub-mkpasswd-pbkdf2.c:160 -msgid "passwords don't match" -msgstr "parolalar eşleşmiyor" - -#: util/grub-mkpasswd-pbkdf2.c:169 -msgid "couldn't retrieve random data for salt" -msgstr "" - -#: util/grub-mkpasswd-pbkdf2.c:184 -#, c-format -msgid "cryptographic error number %d" -msgstr "" - -#: util/grub-mkpasswd-pbkdf2.c:203 -#, c-format -msgid "PBKDF2 hash of your password is %s\n" -msgstr "Parolanızın PBKDF2 hash'i: %s\n" - -#: util/grub-mkrelpath.c:67 -msgid "No path is specified.\n" -msgstr "Konum tanımlanmamış.\n" - -#: util/grub-mkrelpath.c:78 -msgid "PATH" -msgstr "KONUM" - -#: util/grub-mkrelpath.c:79 -msgid "Transform a system filename into GRUB one." -msgstr "" - -#: util/grub-mkrescue.c:100 -msgid "save ROM images in DIR [optional]" -msgstr "ROM kalıplarını DİZİNe kaydet [isteğe bağlı]" - -#. TRANSLATORS: xorriso is a program for creating ISOs and burning CDs. -#: util/grub-mkrescue.c:103 -msgid "use FILE as xorriso [optional]" -msgstr "DOSYAyı xorriso olarak kullan [isteğe bağlı]" - -#: util/grub-mkrescue.c:109 -msgid "use STRING as product name" -msgstr "" - -#: util/grub-mkrescue.c:111 -msgid "" -"enable sparc boot. Disables HFS+, APM, ARCS and boot as disk image for i386-" -"pc" -msgstr "" - -#: util/grub-mkrescue.c:112 -msgid "" -"enable ARCS (big-endian mips machines, mostly SGI) boot. Disables HFS+, APM, " -"sparc64 and boot as disk image for i386-pc" -msgstr "" - -#. TRANSLATORS: it generates one single image which is bootable through any method. -#: util/grub-mkrescue.c:125 -msgid "Make GRUB CD-ROM, disk, pendrive and floppy bootable image." -msgstr "" - -#: util/grub-mkrescue.c:130 -#, c-format -msgid "" -"Generates a bootable CD/USB/floppy image. Arguments other than options to " -"this program are passed to xorriso, and indicate source files, source " -"directories, or any of the mkisofs options listed by the output of `%s'." -msgstr "" - -#: util/grub-mkrescue.c:134 -msgid "Option -- switches to native xorriso command mode." -msgstr "" - -#: util/grub-mkrescue.c:135 -msgid "Mail xorriso support requests to ." -msgstr "xorriso destek isteklerini adresine postalayın." - -#: util/grub-mkrescue.c:221 util/grub-mkstandalone.c:114 -msgid "[OPTION] SOURCE..." -msgstr "[SEÇENEK] KAYNAK..." - -#: util/grub-mkrescue.c:257 util/grub-mkrescue.c:300 util/grub-mkrescue.c:588 -#, c-format -msgid "enabling %s support ..." -msgstr "%s desteği etkinleştiriliyor ..." - -#: util/grub-mkrescue.c:486 -#, fuzzy -msgid "xorriso not found" -msgstr "%s: bulunamadı" - -#: util/grub-mkrescue.c:623 -msgid "" -"Your xorriso doesn't support `--grub2-boot-info'. Some features are " -"disabled. Please use xorriso 1.2.9 or later." -msgstr "" - -#: util/grub-mkrescue.c:650 -msgid "" -"Your xorriso doesn't support `--grub2-boot-info'. Your core image is too " -"big. Boot as disk is disabled. Please use xorriso 1.2.9 or later." -msgstr "" - -#: util/grub-mkstandalone.c:115 -msgid "" -"Generate a standalone image (containing all modules) in the selected format" -msgstr "" - -#: util/grub-mkstandalone.c:115 -msgid "Graft point syntax (E.g. /boot/grub/grub.cfg=./grub.cfg) is accepted" -msgstr "" - -#: util/grub-mount.c:552 -msgid "IMAGE1 [IMAGE2 ...] MOUNTPOINT" -msgstr "" - -#: util/grub-mount.c:575 -msgid "need an image and mountpoint" -msgstr "bir görüntü ve bağlama noktası gerekli" - -#: util/grub-probe.c:731 -msgid "given argument is a system device, not a path" -msgstr "verilen argüman bir sistem aygıtıdır, bir yol değil" - -#: util/grub-probe.c:736 -msgid "separate items in output using ASCII NUL characters" -msgstr "" - -#: util/grub-probe.c:754 -#, c-format -msgid "[default=%s]" -msgstr "[öntanımlı=%s]" - -#: util/grub-probe.c:756 -msgid "print TARGET" -msgstr "" - -#: util/grub-probe.c:757 -msgid "available targets:" -msgstr "kullanılabilir hedefler:" - -#: util/grub-probe.c:839 -msgid "[OPTION]... [PATH|DEVICE]" -msgstr "[SEÇENEK]... [YOL|AYGIT]" - -#: util/grub-probe.c:840 -msgid "" -"Probe device information for a given path (or device, if the -d option is " -"given)." -msgstr "" - -#: util/grub-render-label.c:60 -msgid "read text from FILE." -msgstr "DOSYAdan metin oku" - -#: util/grub-render-label.c:62 -msgid "use COLOR for text" -msgstr "metin için RENK kullan" - -#: util/grub-render-label.c:64 -msgid "use COLOR for background" -msgstr "arkaplan için RENK kullan" - -#. TRANSLATORS: The result is always stored to file and -#. never shown directly, so don't use "show" as synonym for render. Use "create" if -#. "render" doesn't translate directly. -#: util/grub-render-label.c:69 -msgid "set the label to render" -msgstr "" - -#: util/grub-render-label.c:73 -msgid "use FILE as font (PF2)." -msgstr "DOSYAyı yazı tipi olarak kullan (PF2)." - -#. TRANSLATORS: This file takes a text and creates a graphical representation of it, -#. putting the result into .disk_label file. The result is always stored to file and -#. never shown directly, so don't use "show" as synonym for render. Use "create" if -#. "render" doesn't translate directly. -#: util/grub-render-label.c:136 -msgid "Render Apple .disk_label." -msgstr "" - -#: util/grub-render-label.c:158 util/grub-syslinux2cfg.c:169 -msgid "Missing arguments\n" -msgstr "Eksik bağımsız değişkenler\n" - -#: util/grub-script-check.c:87 -msgid "[PATH]" -msgstr "[YOL]" - -#: util/grub-script-check.c:88 -msgid "Checks GRUB script configuration file for syntax errors." -msgstr "GRUB betik yapılandırma dosyasını sözdizimi hataları için denetler" - -#: util/grub-script-check.c:207 -#, c-format -msgid "Syntax error at line %u\n" -msgstr "Sözdizim hatası satır %u\n" - -#: util/grub-script-check.c:212 -#, c-format -msgid "Script `%s' contains no commands and will do nothing\n" -msgstr "`%s' betiği komut içermiyor ve bir şey yapmayacak\n" - -#: util/grub-setup.c:79 -#, c-format -msgid "use FILE as the boot image [default=%s]" -msgstr "DOSYAyı önyükleme kalıbı olarak kullan [öntanımlı=%s]" - -#: util/grub-setup.c:81 -#, c-format -msgid "use FILE as the core image [default=%s]" -msgstr "DOSYAyı çekirdek kalıbı olarak kullan [öntanımlı=%s]" - -#: util/grub-setup.c:210 -msgid "No device is specified.\n" -msgstr "Hiçbir aygıt belirlenmedi.\n" - -#: util/grub-setup.c:224 -msgid "" -"Set up images to boot from DEVICE.\n" -"\n" -"You should not normally run this program directly. Use grub-install instead." -msgstr "" -"Kalıpları DEVICE'den önyükleme yapmak için yapılandır.\n" -"\n" -"Normal olarak bu programı çalıştırmanız önerilmez. Bunu yerine grub-install " -"Kullanın." - -#: util/grub-setup.c:228 -msgid "DEVICE must be an OS device (e.g. /dev/sda)." -msgstr "AYGIT bir OS aygıtı olmalı (ör /dev/sda)." - -#: util/grub-setup.c:297 -#, c-format -msgid "Invalid device `%s'.\n" -msgstr "Geçersiz aygıt `%s'.\n" - -#: util/grub-syslinux2cfg.c:64 -msgid "root directory as it will be seen on runtime [default=/]." -msgstr "" - -#: util/grub-syslinux2cfg.c:69 -msgid "" -"current directory of syslinux as it will be seen on runtime [default is " -"parent directory of input file]." -msgstr "" - -#: util/grub-syslinux2cfg.c:74 -msgid "write output to FILE [default=stdout]." -msgstr "çıktıyı DOSYAya yaz [öntanımlı=stdout]." - -#: util/grub-syslinux2cfg.c:148 -msgid "Transform syslinux config into GRUB one." -msgstr "syslinux yapılandırmasını GRUB'a dönüştür." - -#: util/mkimage.c:688 util/mkimage.c:717 util/mkimage.c:734 -msgid "cannot compress the kernel image" -msgstr "çekirdek görüntüsü sıkıştırılamaz" - -#: util/mkimage.c:766 util/mkimage.c:1077 -#, c-format -msgid "unknown compression %d" -msgstr "bilinmeyen sıkıştırma: %d" - -#: util/mkimage.c:1088 -msgid "Decompressor is too big" -msgstr "Çözücü çok büyük" - -#: util/mkimage.c:1133 -#, c-format -msgid "core image is too big (0x%x > 0x%x)" -msgstr "çekirdek kalıbı çok büyük (0x%x > 0x%x)" - -#: util/mkimage.c:1140 -#, c-format -msgid "kernel image is too big (0x%x > 0x%x)" -msgstr "çekirdek kalıbı çok büyük (0x%x > 0x%x)" - -#: util/mkimage.c:1220 util/mkimage.c:1501 -#, c-format -msgid "diskboot.img size must be %u bytes" -msgstr "diskboot.img boyutu %u bayt olmalı" - -#: util/mkimage.c:1571 -msgid "" -"fwstart.img doesn't match the known good version. proceed at your own risk" -msgstr "" -"fwstart.img bilinen iyi sürümle eşleşmiyor. kendi riskinizle devam edin" - -#: util/mkimage.c:1575 util/mkimage.c:1601 -msgid "firmware image is too big" -msgstr "aygıt yazılımı kalıbı çok büyük" - -#: util/resolve.c:93 -#, c-format -msgid "invalid line format: %s" -msgstr "geçersiz satır biçimi: %s" - -#: util/setup.c:167 -msgid "the first sector of the core file is not sector-aligned" -msgstr "çekirdek dosyanın ilk bölümü bölüm-hizalı değil" - -#: util/setup.c:177 -msgid "non-sector-aligned data is found in the core file" -msgstr "non-sector-aligned verisi ana dosyada bulundu" - -#: util/setup.c:199 -msgid "the sectors of the core file are too fragmented" -msgstr "çekirdek dosyasının bölümleri çok fazla parçalanmış" - -#: util/setup.c:280 -#, c-format -msgid "the size of `%s' is not %u" -msgstr "`%s'nin boyutu %u değil" - -#: util/setup.c:290 -#, c-format -msgid "the size of `%s' is too small" -msgstr "`%s' boyutu çok küçük" - -#: util/setup.c:428 -msgid "" -"Attempting to install GRUB to a disk with multiple partition labels or both " -"partition label and filesystem. This is not supported yet." -msgstr "" -"GRUB'u birden çok bölümlendirme kısmı veya bölümlendirme kısmı ve dosyası " -"olan diske yükleme girişimi yapılıyor. Bu henüz sağlanmıyor." - -#: util/setup.c:441 -#, c-format -msgid "unable to identify a filesystem in %s; safety check can't be performed" -msgstr "" -"dosya sistemini %s de kimliklendirmek imkansızdır; güvenlik denetimi " -"yürütülemez" - -#. TRANSLATORS: Filesystem may reserve the space just GRUB isn't sure about it. -#: util/setup.c:445 -#, c-format -msgid "" -"%s appears to contain a %s filesystem which isn't known to reserve space for " -"DOS-style boot. Installing GRUB there could result in FILESYSTEM " -"DESTRUCTION if valuable data is overwritten by grub-setup (--skip-fs-probe " -"disables this check, use at your own risk)" -msgstr "" -"%s, DOS-türevi başlangıç için yedek alan ayırmayan bir %s dosya sistemini " -"içeriyor. Buraya GRUB yükleme, eğer değişken veri grub-setup (--skip-fs-" -"probe bu denetimi etkisizleştirir, kendi seçiminizi yapın) tarafından " -"üzerine yazılmışsa FILESYSTEM DESTRUCTION sonucunu verebilir." - -#. TRANSLATORS: Partition map may reserve the space just GRUB isn't sure about it. -#: util/setup.c:458 -#, c-format -msgid "" -"%s appears to contain a %s partition map which isn't known to reserve space " -"for DOS-style boot. Installing GRUB there could result in FILESYSTEM " -"DESTRUCTION if valuable data is overwritten by grub-setup (--skip-fs-probe " -"disables this check, use at your own risk)" -msgstr "" -"%s içeriyor gibi bir %s bölüm haritası DOS-stili başlatma için alan ayırması " -"bilimeyen. GRUBu oraya yüklemek DOSYA SİSTEMİ BOZULMASI sonucunu ortaya " -"çıkarabilir eğer değer verisi grub-yükle tarafından üstüne yazılmışsa (--" -"skip-fs-probe bu taramayı kapatır, risk kendi sorumluluğunuzdadır)" - -#: util/setup.c:465 -#, c-format -msgid "" -"%s appears to contain a %s partition map and LDM which isn't known to be a " -"safe combination. Installing GRUB there could result in FILESYSTEM " -"DESTRUCTION if valuable data is overwritten by grub-setup (--skip-fs-probe " -"disables this check, use at your own risk)" -msgstr "" - -#: util/setup.c:478 -msgid "" -"Attempting to install GRUB to a partitionless disk or to a partition. This " -"is a BAD idea." -msgstr "" -"GRUB'u bölümlendirilmemiş bir diske veya bölüme yükleme çalışması. Bu KÖTÜ " -"bir fikir." - -#: util/setup.c:483 -msgid "" -"Attempting to install GRUB to a disk with multiple partition labels. This " -"is not supported yet." -msgstr "" -"GRUB birden fazla disk bölümü etiketi içeren bir diske kurulmaya " -"çalışılıyor. Bu özellik henüz desteklenmiyor." - -#: util/setup.c:489 -#, c-format -msgid "Partition style `%s' doesn't support embedding" -msgstr "" - -#: util/setup.c:496 -#, c-format -msgid "File system `%s' doesn't support embedding" -msgstr "`%s' dosya sistemi gömmeyi desteklememektedir" - -#: util/setup.c:537 -msgid "Your embedding area is unusually small. core.img won't fit in it." -msgstr "" -"Yerleştirilmiş alanınız alışılmadık biçimde küçük. core.img sığmayacaktır." - -#: util/setup.c:559 util/setup.c:725 util/setup.c:844 -msgid "no terminator in the core image" -msgstr "bu çekirdek kalıpta sonlandırıcı yok" - -#: util/setup.c:622 -msgid "core.img version mismatch" -msgstr "core.img sürüm uyuşmazlığı" - -#: util/setup.c:675 -msgid "" -"embedding is not possible, but this is required for RAID and LVM install" -msgstr "gömme olası değil, ama bu RAID ve LVM kurulumu için gereklidir" - -#: util/setup.c:682 -#, c-format -msgid "can't determine filesystem on %s" -msgstr "%s üzerindeki dosya sistemi belirlenemiyor" - -#: util/setup.c:685 -#, c-format -msgid "filesystem `%s' doesn't support blocklists" -msgstr "`%s' dosya sistemi blocklist'leri desteklemiyor" - -#. TRANSLATORS: cross-disk refers to /boot being on one disk -#. but MBR on another. -#: util/setup.c:694 -msgid "embedding is not possible, but this is required for cross-disk install" -msgstr "gömme mümkün değil, fakat bu çapraz-disk yüklemesi için gerekli" - -#: util/setup.c:700 -msgid "" -"Embedding is not possible. GRUB can only be installed in this setup by " -"using blocklists. However, blocklists are UNRELIABLE and their use is " -"discouraged." -msgstr "" -"İçe gömme mümkün değil. Bu kurulumsa GRUB yalnızca blocklist kullanarak " -"yüklenebilir. Bununla birlite blocklist sağlıksızdır ve kullanılmamaları " -"tavsiye edilir." - -#. TRANSLATORS: Here GRUB refuses to continue with blocklist install. -#: util/setup.c:705 -msgid "will not proceed with blocklists" -msgstr "engelli listeleri ile devam etmeyecek" - -#: util/setup.c:817 util/setup.c:837 -msgid "blocklists are invalid" -msgstr "" - -#: util/setup.c:847 -msgid "blocklists are incomplete" -msgstr "" - -#~ msgid "%.*s: ARGP_HELP_FMT parameter must be positive" -#~ msgstr "%.*s: ARGP_HELP_FMT parametresi pozitif olmalı" - -#~ msgid "%s: option '--%s' doesn't allow an argument\n" -#~ msgstr "%s: `--%s' seçeneği argümansız kullanılır\n" - -#~ msgid "%s: unrecognized option '--%s'\n" -#~ msgstr "%s: `--%s' seçeneği bilinmiyor\n" - -#~ msgid "%s: option '-W %s' doesn't allow an argument\n" -#~ msgstr "%s: `-W %s' seçeneği argümansız kullanılır\n" - -#~ msgid "%s: option '-W %s' requires an argument\n" -#~ msgstr "%s: `%s' seçeneği bir argümanla kullanılır\n" - -#~ msgid "Make GRUB keyboard layout file." -#~ msgstr "GRUB klavye düzen dosyası yap." - -#~ msgid "print this message and exit" -#~ msgstr "bu iletiyi yazdır ve çık" - -#~ msgid "print the version information and exit" -#~ msgstr "sürüm bilgisini yazdır ve çık" - -#~ msgid "%s generates a keyboard layout for GRUB using ckbcomp\\n" -#~ msgstr "%s, ckbcomp kullanarak GRUB için klavye düzeni oluşturur\\n" - -#~ msgid "Report bugs to ." -#~ msgstr "Hataları adresine bildir." - -#~ msgid "%s: option requires an argument -- `%s'\\n" -#~ msgstr "%s: seçenek bir argüman gerektiriyor -- `%s'\\n" - -#~ msgid "Usage: %s [OPTION]\\n" -#~ msgstr "Kullanım: %s [SEÇENEK]\\n" - -#~ msgid "Generate a grub config file" -#~ msgstr "Bir grub yapılandırma dosyası oluştur" - -#~ msgid "Unrecognized option `%s'\\n" -#~ msgstr "`%s' tanımlanmamış seçenek\\n" - -#~ msgid "%s: You must run this as root\\n" -#~ msgstr "%s: Bunu kök olarak çalıştırmalısınız\\n" - -#~ msgid "%s: Not found.\\n" -#~ msgstr "%s: Bulunamadı.\\n" - -#~ msgid "Generating grub configuration file ..." -#~ msgstr "Grub yapılandırma dosyası oluşturuluyor ..." - -#~ msgid "done" -#~ msgstr "bitti" - -#~ msgid "Warning:" -#~ msgstr "Uyarı:" - -#~ msgid "Usage: %s [OPTION] MENU_ENTRY\\n" -#~ msgstr "Kullanım: %s [SEÇENEK] MENÜ_GİRDİSİ\\n" - -#~ msgid "Set the default boot menu entry for GRUB, for the next boot only." -#~ msgstr "" -#~ "GRUB için öntanımlı önyükleme menü girdisini belirle, yalnızca sonraki " -#~ "önyükleme için." - -#~ msgid "More than one menu entry?" -#~ msgstr "Birden fazla menü girdisi mi?" - -#~ msgid "Menu entry not specified." -#~ msgstr "Menü girdisi tanımlanmamış." - -#~ msgid "Set the default boot menu entry for GRUB." -#~ msgstr "GRUB için varsayılan önyükleme menü girdisini ayarla." - -#~ msgid "This requires setting GRUB_DEFAULT=saved in %s/default/grub.\\n" -#~ msgstr "" -#~ "Bu, %s/default/grub içinde GRUB_DEFAULT=saved olmasını gerektirir.\\n" - -#~ msgid "MENU_ENTRY is a number, a menu item title or a menu item identifier." -#~ msgstr "" -#~ "MENU_ENTRY bir numara, bir menü öge başlığı veya bir menü öge " -#~ "tanımlayıcısıdır." - -#~ msgid "Found theme: %s\\n" -#~ msgstr "Bulunan tema: %s\\n" - -#~ msgid "Found background: %s\\n" -#~ msgstr "Bulunan arka plan: %s\\n" - -#~ msgid "Unsupported image format" -#~ msgstr "Desteklenmeyen görüntü biçimi" - -#~ msgid "" -#~ "Setting GRUB_TIMEOUT to a non-zero value when GRUB_HIDDEN_TIMEOUT is set " -#~ "is no longer supported." -#~ msgstr "" -#~ "GRUB_HIDDEN_TIMEOUT belirtildiğinde GRUB_TIMEOUT'u sıfırdan farklı değere " -#~ "ayarlamak artık desteklenmiyor." - -#~ msgid "Found GNU Mach: %s" -#~ msgstr "Bulunan GNU Mach: %s" - -#~ msgid "Found Hurd module: %s" -#~ msgstr "Bulunan Hurd modülü: %s" - -#~ msgid "Some Hurd stuff found, but not enough to boot." -#~ msgstr "Bazı Hurd ögeleri bulundu, ama önyüklemek için yetersiz." - -#~ msgid "%s, with Hurd %s (recovery mode)" -#~ msgstr "%s, Hurd %s ile (kurtarma kipi)" - -#~ msgid "%s, with Hurd %s" -#~ msgstr "%s, Hurd %s ile" - -#~ msgid "" -#~ "Please don't use old title `%s' for GRUB_DEFAULT, use `%s' (for versions " -#~ "before 2.00) or `%s' (for 2.00 or later)" -#~ msgstr "" -#~ "Lütfen GRUB_DEFAULT için eski `%s' başlığını kullanmayın, `%s' (2.00 " -#~ "sürümlerinden öncesi için) veya `%s' (2.00 veya sonrası için) kullanın." - -#~ msgid "Loading GNU Mach ..." -#~ msgstr "GNU Mach Yükleniyor ..." - -#~ msgid "Loading the Hurd ..." -#~ msgstr "Hurd yükleniyor ..." - -#~ msgid "Advanced options for %s" -#~ msgstr "%s için gelişmiş seçenekler" - -#~ msgid "Loading kernel of Illumos ..." -#~ msgstr "Illumos çekirdeği yükleniyor ..." - -#~ msgid "%s, with kFreeBSD %s (recovery mode)" -#~ msgstr "kFreeBSD ile %s, %s (kurtarma kipi)" - -#~ msgid "%s, with kFreeBSD %s" -#~ msgstr "%s, kFreeBSD %s ile" - -#~ msgid "Loading kernel of FreeBSD %s ..." -#~ msgstr "FreeBSD %s çekirdeği yükleniyor..." - -#~ msgid "Found kernel of FreeBSD: %s\\n" -#~ msgstr "Bulunan FreeBSD çekirdeği: %s\\n" - -#~ msgid "Found kernel module directory: %s\\n" -#~ msgstr "Bulunan çekirdek modülü dizini: %s\\n" - -#~ msgid "%s, with Linux %s (recovery mode)" -#~ msgstr "%s, Linux %s ile (kurtarma kipi)" - -#~ msgid "%s, with Linux %s" -#~ msgstr "%s, Linux %s ile" - -#~ msgid "Loading Linux %s ..." -#~ msgstr "Linux %s yükleniyor ..." - -#~ msgid "Loading initial ramdisk ..." -#~ msgstr "Başlangıç ramdiski yükleniyor ..." - -#~ msgid "Found linux image: %s\\n" -#~ msgstr "Bulunan linux kalıbı: %s\\n" - -#~ msgid "Found initrd image: %s\\n" -#~ msgstr "Bulunan initrd kalıbı: %s\\n" - -#~ msgid "%s, with kernel %s (via %s, recovery mode)" -#~ msgstr "%s çekirdeği ile %s (%s üzerinden, kurtarma kipi)" - -#~ msgid "%s, with kernel %s (via %s)" -#~ msgstr "%s çekirdeği ile %s (%s üzerinden)" - -#~ msgid "Found NetBSD kernel: %s\\n" -#~ msgstr "Bulunan NetBSD çekirdeği: %s\\n" - -#~ msgid "Windows Vista/7 (loader)" -#~ msgstr "Windows Vista/7 (yükleyici)" - -#~ msgid "Windows NT/2000/XP (loader)" -#~ msgstr "Windows NT/2000/XP (yükleyici)" - -#~ msgid "Found %s on %s (%s)\\n" -#~ msgstr "Bulunan %s, %s (%s) üzerinde\\n" - -#~ msgid "(32-bit)" -#~ msgstr "(32-bit)" - -#~ msgid "(64-bit)" -#~ msgstr "(64-bit)" - -#~ msgid "(on %s)" -#~ msgstr "(%s üzerinde)" - -#~ msgid "%s, with Xen %s and Linux %s (recovery mode)" -#~ msgstr "%s, Xen %s ve Linux %s ile (kurtarma kipi)" - -#~ msgid "%s, with Xen %s and Linux %s" -#~ msgstr "%s, Xen ile %s ve Linux %s" - -#~ msgid "%s, with Xen hypervisor" -#~ msgstr "%s, Xen hypervisor ile" - -#~ msgid "Loading Xen %s ..." -#~ msgstr "Xen %s yükleniyor ..." - -#~ msgid "Xen hypervisor, version %s" -#~ msgstr "Xen hypervisor, sürüm %s" - -#~ msgid "Advanced options for %s (with Xen hypervisor)" -#~ msgstr "%s için gelişmiş seçenekler (Xen hypervisor ile)" - -#~ msgid "Found %s on %s\\n" -#~ msgstr "Bulunan %s, %s üzerinde\\n" - -#~ msgid "%s is not yet supported by grub-mkconfig.\\n" -#~ msgstr "%s henüz grub-mkconfig tarafından desteklenmiyor.\\n" - -#~ msgid "Unsupported substitution flag: 0x%x\n" -#~ msgstr "Desteklenmeyen yer değiştirme bayrağı: 0x%x\n" - -#~ msgid "failed to read the first sector of the core image" -#~ msgstr "çekirdek kalıbın ilk bölümünde okuma hatası" - -#~ msgid "`%s' failed.\\n" -#~ msgstr "`%s' başarısız.\\n" - -#~ msgid "Generating grub.cfg ..." -#~ msgstr "grub.cfg oluşturuluyor ..." diff --git a/thirdparty/grub-2.04/po/uk.gmo b/thirdparty/grub-2.04/po/uk.gmo deleted file mode 100644 index e98e8e8259a65bd5bd1bd37186aa255f78bc5ec3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 167350 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ΝnE&EIZhj{;-6wY<`01FBGV#wbx20JVQBpsd? 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, 2011. -# Vladimir Serbinenko , 2012. -# Yuri Chornoivan , 2012, 2013, 2017, 2019. -msgid "" -msgstr "" -"Project-Id-Version: grub 2.04-pre1\n" -"Report-Msgid-Bugs-To: bug-grub@gnu.org\n" -"POT-Creation-Date: 2019-07-04 16:09+0200\n" -"PO-Revision-Date: 2019-04-09 14:42+0300\n" -"Last-Translator: Yuri Chornoivan \n" -"Language-Team: Ukrainian \n" -"Language: uk\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Bugs: Report translation errors to the Language-Team address.\n" -"X-Generator: Lokalize 19.03.70\n" -"Plural-Forms: nplurals=4; plural=n==1 ? 3 : n%10==1 && n%100!=11 ? 0 : n" -"%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n" - -#: grub-core/bus/usb/serial/ftdi.c:145 grub-core/bus/usb/serial/pl2303.c:158 -#: grub-core/term/ieee1275/escc.c:169 grub-core/term/ns8250.c:202 -msgid "unsupported serial port speed" -msgstr "непідтримувана швидкіÑть Ð¿ÐµÑ€ÐµÐ´Ð°Ð²Ð°Ð½Ð½Ñ Ð´Ð°Ð½Ð¸Ñ… поÑлідовним портом" - -#: grub-core/bus/usb/serial/ftdi.c:151 grub-core/bus/usb/serial/pl2303.c:164 -#: grub-core/term/efi/serial.c:116 grub-core/term/ieee1275/escc.c:175 -#: grub-core/term/ns8250.c:208 grub-core/term/serial.c:227 -#: grub-core/term/serial.c:243 -msgid "unsupported serial port parity" -msgstr "непідтримувана парніÑть поÑлідовного порту" - -#: grub-core/bus/usb/serial/ftdi.c:157 grub-core/bus/usb/serial/pl2303.c:170 -#: grub-core/term/efi/serial.c:122 grub-core/term/ieee1275/escc.c:181 -#: grub-core/term/ns8250.c:213 grub-core/term/serial.c:267 -msgid "unsupported serial port stop bits number" -msgstr "" -"непідтримуване Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ ÐºÑ–Ð»ÑŒÐºÐ¾Ñті бітів зупинки роботи з поÑлідовним портом" - -#: grub-core/bus/usb/serial/ftdi.c:161 grub-core/bus/usb/serial/pl2303.c:174 -#: grub-core/term/efi/serial.c:126 grub-core/term/ieee1275/escc.c:185 -#: grub-core/term/ns8250.c:217 -msgid "unsupported serial port word length" -msgstr "непідтримуваний розмір Ñлова (word) поÑлідовного порту" - -#: grub-core/commands/acpi.c:42 -msgid "Don't load host tables specified by comma-separated list." -msgstr "" -"Ðе завантажувати таблиці комп’ютера, вказані за допомогою ÑпиÑку значень, " -"відокремлених комами." - -#: grub-core/commands/acpi.c:45 -msgid "Load only tables specified by comma-separated list." -msgstr "" -"Завантажувати лише таблиці, вказані за допомогою ÑпиÑку значень, " -"відокремлених комами." - -#: grub-core/commands/acpi.c:46 -msgid "Export version 1 tables to the OS." -msgstr "ЕкÑпортувати таблиці верÑÑ–Ñ— 1 до операційної ÑиÑтеми." - -#: grub-core/commands/acpi.c:47 -msgid "Export version 2 and version 3 tables to the OS." -msgstr "ЕкÑпортувати таблиці верÑÑ–Ñ— 2 або 3 до операційної ÑиÑтеми." - -#: grub-core/commands/acpi.c:48 -msgid "Set OEMID of RSDP, XSDT and RSDT." -msgstr "Ð’Ñтановити OEMID у RSDP, XSDT та RSDT." - -#: grub-core/commands/acpi.c:50 -msgid "Set OEMTABLE ID of RSDP, XSDT and RSDT." -msgstr "Ð’Ñтановити ідентифікатор OEMTABLE у RSDP, XSDT та RSDT." - -#: grub-core/commands/acpi.c:52 -msgid "Set OEMTABLE revision of RSDP, XSDT and RSDT." -msgstr "Ð’Ñтановити модифікацію OEMTABLE у RSDP, XSDT та RSDT." - -#: grub-core/commands/acpi.c:54 -msgid "Set creator field of RSDP, XSDT and RSDT." -msgstr "Ð’Ñтановити поле програми Ð´Ð»Ñ ÑÑ‚Ð²Ð¾Ñ€ÐµÐ½Ð½Ñ Ñƒ RSDP, XSDT та RSDT." - -#: grub-core/commands/acpi.c:56 -msgid "Set creator revision of RSDP, XSDT and RSDT." -msgstr "Ð’Ñтановити верÑÑ–ÑŽ програми Ð´Ð»Ñ ÑÑ‚Ð²Ð¾Ñ€ÐµÐ½Ð½Ñ Ñƒ RSDP, XSDT та RSDT." - -#. TRANSLATORS: "hangs" here is a noun, not a verb. -#: grub-core/commands/acpi.c:58 -msgid "" -"Don't update EBDA. May fix failures or hangs on some BIOSes but makes it " -"ineffective with OS not receiving RSDP from GRUB." -msgstr "" -"Ðе оновлювати EBDA. Може допомогти у разі помилок чи підвиÑань Ð´Ð»Ñ Ð´ÐµÑких " -"BIOS, але ні на що не впливає, Ñкщо операційна ÑиÑтема не отримує RSDP від " -"GRUB." - -#: grub-core/commands/acpi.c:650 grub-core/commands/acpi.c:667 -#: grub-core/commands/i386/pc/play.c:105 grub-core/commands/keylayouts.c:230 -#: grub-core/commands/keylayouts.c:245 grub-core/commands/keylayouts.c:263 -#: grub-core/commands/verifiers.c:156 grub-core/efiemu/loadcore.c:350 -#: grub-core/kern/elf.c:117 grub-core/kern/elfXX.c:29 -#: grub-core/kern/elfXX.c:156 grub-core/loader/arm/linux.c:319 -#: grub-core/loader/arm64/linux.c:330 grub-core/loader/arm64/xen_boot.c:356 -#: grub-core/loader/efi/chainloader.c:276 -#: grub-core/loader/efi/chainloader.c:297 -#: grub-core/loader/efi/chainloader.c:329 grub-core/loader/efi/fdt.c:138 -#: grub-core/loader/i386/bsd.c:1276 grub-core/loader/i386/bsd.c:2116 -#: grub-core/loader/i386/bsdXX.c:20 grub-core/loader/i386/bsdXX.c:36 -#: grub-core/loader/i386/bsdXX.c:63 grub-core/loader/i386/bsdXX.c:357 -#: grub-core/loader/i386/bsdXX.c:376 grub-core/loader/i386/bsdXX.c:519 -#: grub-core/loader/i386/bsdXX.c:535 grub-core/loader/i386/bsdXX.c:615 -#: grub-core/loader/i386/bsdXX.c:638 -#: grub-core/loader/i386/coreboot/chainloader.c:112 -#: grub-core/loader/i386/coreboot/chainloader.c:148 -#: grub-core/loader/i386/coreboot/chainloader.c:170 -#: grub-core/loader/i386/linux.c:667 grub-core/loader/i386/linux.c:788 -#: grub-core/loader/i386/linux.c:1005 grub-core/loader/i386/multiboot_mbi.c:171 -#: grub-core/loader/i386/pc/chainloader.c:202 -#: grub-core/loader/i386/pc/linux.c:149 grub-core/loader/i386/pc/linux.c:320 -#: grub-core/loader/i386/pc/linux.c:362 grub-core/loader/i386/pc/plan9.c:457 -#: grub-core/loader/i386/pc/plan9.c:550 grub-core/loader/i386/pc/plan9.c:566 -#: grub-core/loader/i386/xen.c:934 grub-core/loader/i386/xen_file.c:72 -#: grub-core/loader/i386/xen_fileXX.c:43 grub-core/loader/i386/xen_fileXX.c:186 -#: grub-core/loader/i386/xen_fileXX.c:339 grub-core/loader/ia64/efi/linux.c:423 -#: grub-core/loader/ia64/efi/linux.c:471 grub-core/loader/linux.c:286 -#: grub-core/loader/macho.c:84 grub-core/loader/macho.c:109 -#: grub-core/loader/machoXX.c:33 grub-core/loader/machoXX.c:46 -#: grub-core/loader/machoXX.c:76 grub-core/loader/machoXX.c:116 -#: grub-core/loader/machoXX.c:131 grub-core/loader/machoXX.c:147 -#: grub-core/loader/machoXX.c:196 grub-core/loader/machoXX.c:317 -#: grub-core/loader/multiboot.c:434 grub-core/loader/multiboot_elfxx.c:171 -#: grub-core/loader/multiboot_elfxx.c:234 -#: grub-core/loader/multiboot_elfxx.c:278 grub-core/loader/multiboot_mbi2.c:129 -#: grub-core/loader/xnu.c:737 grub-core/loader/xnu.c:795 -#: grub-core/loader/xnu.c:816 grub-core/loader/xnu.c:871 -#: grub-core/loader/xnu.c:914 grub-core/loader/xnu.c:952 -#: grub-core/loader/xnu_resume.c:68 grub-core/loader/xnu_resume.c:153 -#: grub-core/loader/xnu_resume.c:165 util/grub-mkimagexx.c:2288 -#, c-format -msgid "premature end of file %s" -msgstr "завчаÑне Ð·Ð°Ð²ÐµÑ€ÑˆÐµÐ½Ð½Ñ Ñ„Ð°Ð¹Ð»Ð° %s" - -#: grub-core/commands/acpi.c:779 -msgid "" -"[-1|-2] [--exclude=TABLE1,TABLE2|--load-only=TABLE1,TABLE2] FILE1 [FILE2] " -"[...]" -msgstr "" -"[-1|-2] [--exclude=ТÐБЛИЦЯ1,ТÐБЛИЦЯ2|--load-only=ТÐБЛИЦЯ1,ТÐБЛИЦЯ2] ФÐЙЛ1 " -"[ФÐЙЛ2] [...]" - -#: grub-core/commands/acpi.c:782 -msgid "Load host ACPI tables and tables specified by arguments." -msgstr "Завантажувати таблиці ACPI комп’ютера Ñ– таблиці, вказані параметрами." - -#: grub-core/commands/acpihalt.c:368 grub-core/kern/err.c:110 -#, c-format -msgid "error: %s.\n" -msgstr "помилка: %s.\n" - -#: grub-core/commands/acpihalt.c:368 grub-core/kern/emu/misc.c:95 -#: grub-core/kern/emu/misc.c:105 grub-core/kern/emu/misc.c:134 -#: grub-core/kern/emu/mm.c:34 grub-core/kern/emu/mm.c:62 -#: grub-core/kern/mm.c:374 grub-core/lib/relocator.c:1282 -#: grub-core/lib/relocator.c:1439 grub-core/lib/relocator.c:1538 -#: grub-core/loader/arm/linux.c:259 grub-core/loader/arm64/linux.c:265 -#: grub-core/loader/arm64/linux.c:321 grub-core/loader/arm64/linux.c:340 -#: grub-core/loader/arm64/xen_boot.c:344 grub-core/loader/arm64/xen_boot.c:367 -#: grub-core/loader/efi/chainloader.c:289 grub-core/osdep/unix/dl.c:48 -#: grub-core/osdep/windows/dl.c:46 grub-core/script/lexer.c:156 -#: grub-core/script/lexer.c:182 -msgid "out of memory" -msgstr "неÑтача пам'Ñті" - -#: grub-core/commands/acpihalt.c:374 grub-core/disk/cryptodisk.c:587 -#: grub-core/disk/cryptodisk.c:632 grub-core/kern/emu/hostdisk.c:307 -#: grub-core/kern/emu/hostfs.c:149 grub-core/kern/emu/misc.c:200 -#: grub-core/osdep/linux/ofpath.c:195 grub-core/osdep/linux/ofpath.c:521 -#: grub-core/osdep/linux/ofpath.c:534 util/glue-efi.c:80 util/glue-efi.c:94 -#: util/grub-editenv.c:155 util/grub-fstest.c:577 -#: util/grub-install-common.c:943 util/grub-mkrescue.c:634 -#: util/grub-mkrescue.c:888 util/grub-mount.c:506 util/grub-render-label.c:176 -#: util/misc.c:95 util/setup.c:814 util/setup.c:833 -#, c-format -msgid "cannot read `%s': %s" -msgstr "не вдалоÑÑ Ð¿Ñ€Ð¾Ñ‡Ð¸Ñ‚Ð°Ñ‚Ð¸ %s: %s" - -#. TRANSLATORS: It's computer shutdown using ACPI, not disabling ACPI. -#: grub-core/commands/acpihalt.c:452 -msgid "ACPI shutdown failed" -msgstr "Помилка під Ñ‡Ð°Ñ Ð²Ð¸Ð¼Ð¸ÐºÐ°Ð½Ð½Ñ Ð·Ð° допомогою ACPI" - -#: grub-core/commands/arc/lsdev.c:51 -msgid "List devices." -msgstr "Показати ÑпиÑок приÑтроїв." - -#: grub-core/commands/blocklist.c:122 grub-core/commands/cat.c:57 -#: grub-core/commands/configfile.c:35 grub-core/commands/efi/loadbios.c:168 -#: grub-core/commands/file.c:159 grub-core/commands/hexdump.c:47 -#: grub-core/commands/legacycfg.c:209 grub-core/commands/legacycfg.c:315 -#: grub-core/commands/minicmd.c:44 grub-core/commands/syslinuxcfg.c:146 -#: grub-core/commands/testload.c:58 grub-core/commands/testspeed.c:52 -#: grub-core/disk/loopback.c:93 grub-core/efiemu/main.c:293 -#: grub-core/font/font_cmd.c:32 grub-core/kern/emu/hostdisk.c:519 -#: grub-core/loader/arm/linux.c:364 grub-core/loader/arm/linux.c:409 -#: grub-core/loader/arm/linux.c:472 grub-core/loader/arm64/linux.c:243 -#: grub-core/loader/arm64/linux.c:297 grub-core/loader/arm64/xen_boot.c:398 -#: grub-core/loader/arm64/xen_boot.c:411 grub-core/loader/arm64/xen_boot.c:462 -#: grub-core/loader/efi/chainloader.c:216 grub-core/loader/i386/bsd.c:1462 -#: grub-core/loader/i386/bsd.c:1807 grub-core/loader/i386/bsd.c:2085 -#: grub-core/loader/i386/coreboot/chainloader.c:438 -#: grub-core/loader/i386/linux.c:656 grub-core/loader/i386/linux.c:1041 -#: grub-core/loader/i386/pc/chainloader.c:290 -#: grub-core/loader/i386/pc/freedos.c:105 grub-core/loader/i386/pc/linux.c:138 -#: grub-core/loader/i386/pc/linux.c:400 grub-core/loader/i386/pc/ntldr.c:85 -#: grub-core/loader/i386/pc/plan9.c:409 -#: grub-core/loader/i386/pc/pxechainloader.c:94 -#: grub-core/loader/i386/pc/truecrypt.c:96 grub-core/loader/i386/xen.c:641 -#: grub-core/loader/i386/xen.c:768 grub-core/loader/i386/xen.c:844 -#: grub-core/loader/i386/xen.c:854 grub-core/loader/i386/xnu.c:488 -#: grub-core/loader/ia64/efi/linux.c:459 grub-core/loader/ia64/efi/linux.c:539 -#: grub-core/loader/mips/linux.c:238 grub-core/loader/mips/linux.c:429 -#: grub-core/loader/multiboot.c:322 grub-core/loader/multiboot.c:374 -#: grub-core/loader/multiboot.c:384 -#: grub-core/loader/powerpc/ieee1275/linux.c:269 -#: grub-core/loader/powerpc/ieee1275/linux.c:341 -#: grub-core/loader/sparc64/ieee1275/linux.c:305 -#: grub-core/loader/sparc64/ieee1275/linux.c:381 grub-core/loader/xnu.c:351 -#: grub-core/loader/xnu.c:460 grub-core/loader/xnu.c:778 -#: grub-core/loader/xnu.c:892 grub-core/loader/xnu.c:1277 -#: grub-core/loader/xnu.c:1427 grub-core/loader/xnu.c:1453 -#: grub-core/video/readers/jpeg.c:812 grub-core/video/readers/png.c:1123 -msgid "filename expected" -msgstr "Ñлід вказати назву файла" - -#. TRANSLATORS: "embed" is a verb (command description). " -#: grub-core/commands/blocklist.c:154 grub-core/commands/cat.c:163 -#: grub-core/commands/configfile.c:65 grub-core/commands/configfile.c:68 -#: grub-core/commands/configfile.c:74 grub-core/commands/configfile.c:80 -#: grub-core/commands/configfile.c:86 grub-core/commands/hashsum.c:34 -#: grub-core/commands/legacycfg.c:834 grub-core/commands/legacycfg.c:841 -#: grub-core/commands/legacycfg.c:846 grub-core/commands/legacycfg.c:851 -#: grub-core/commands/macbless.c:222 grub-core/commands/minicmd.c:198 -#: grub-core/commands/syslinuxcfg.c:186 grub-core/commands/syslinuxcfg.c:194 -#: grub-core/commands/syslinuxcfg.c:200 grub-core/commands/syslinuxcfg.c:206 -#: grub-core/commands/testload.c:163 grub-core/efiemu/main.c:312 -#: grub-core/kern/emu/main.c:100 grub-core/kern/emu/main.c:103 -#: grub-core/loader/i386/bsd.c:2137 grub-core/loader/i386/bsd.c:2140 -#: grub-core/loader/i386/bsd.c:2143 -#: grub-core/loader/i386/coreboot/chainloader.c:505 -#: grub-core/loader/ia64/efi/linux.c:594 include/grub/util/install.h:32 -#: include/grub/util/install.h:64 util/grub-glue-efi.c:52 -#: util/grub-glue-efi.c:54 util/grub-glue-efi.c:56 util/grub-install.c:254 -#: util/grub-install.c:301 util/grub-mkfont.c:936 util/grub-mkimage.c:68 -#: util/grub-mkimage.c:74 util/grub-mkimage.c:76 util/grub-mkimage.c:78 -#: util/grub-mkimage.c:81 util/grub-mklayout.c:52 util/grub-mklayout.c:54 -#: util/grub-mkrescue.c:97 util/grub-mkrescue.c:101 util/grub-mkrescue.c:104 -#: util/grub-mkrescue.c:105 util/grub-mkrescue.c:106 -#: util/grub-mkstandalone.c:47 util/grub-mkstandalone.c:49 -#: util/grub-probe.c:732 util/grub-render-label.c:59 -#: util/grub-render-label.c:70 util/grub-render-label.c:72 util/grub-setup.c:78 -#: util/grub-setup.c:80 util/grub-setup.c:84 util/grub-syslinux2cfg.c:74 -#: util/grub-syslinux2cfg.c:147 -msgid "FILE" -msgstr "ФÐЙЛ" - -#: grub-core/commands/blocklist.c:154 -msgid "Print a block list." -msgstr "Показати ÑпиÑок блоків." - -#: grub-core/commands/boot.c:147 grub-core/commands/legacycfg.c:533 -#: grub-core/commands/legacycfg.c:574 grub-core/loader/arm64/linux.c:250 -#: grub-core/loader/i386/bsd.c:1799 grub-core/loader/i386/bsd.c:1900 -#: grub-core/loader/i386/bsd.c:2007 grub-core/loader/i386/bsd.c:2040 -#: grub-core/loader/i386/bsd.c:2089 grub-core/loader/i386/linux.c:1047 -#: grub-core/loader/i386/pc/linux.c:406 grub-core/loader/i386/xen.c:775 -#: grub-core/loader/i386/xen.c:859 grub-core/loader/ia64/efi/linux.c:545 -#: grub-core/loader/mips/linux.c:432 grub-core/loader/multiboot.c:388 -#: grub-core/loader/powerpc/ieee1275/linux.c:347 -#: grub-core/loader/sparc64/ieee1275/linux.c:387 grub-core/loader/xnu.c:572 -#: grub-core/loader/xnu.c:665 grub-core/loader/xnu.c:781 -#: grub-core/loader/xnu.c:895 grub-core/loader/xnu.c:1091 -#: grub-core/loader/xnu.c:1258 grub-core/loader/xnu.c:1289 -#: grub-core/loader/xnu.c:1430 -msgid "you need to load the kernel first" -msgstr "Ñпочатку вам Ñлід завантажити Ñдро" - -#: grub-core/commands/boot.c:189 -msgid "Boot an operating system." -msgstr "Завантажити операційну ÑиÑтему." - -#: grub-core/commands/boottime.c:36 -#: grub-core/commands/i386/coreboot/cb_timestamps.c:108 -msgid "No boot time statistics is available\n" -msgstr "СтатиÑтичні дані чаÑу Ð·Ð°Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ Ð½ÐµÐ´Ð¾Ñтупні\n" - -#: grub-core/commands/boottime.c:59 -msgid "Show boot time statistics." -msgstr "ВивеÑти ÑтатиÑтичні дані щодо чаÑу завантаженнÑ." - -#: grub-core/commands/cacheinfo.c:40 -#, c-format -msgid "Disk cache statistics: hits = %lu (%lu.%02lu%%), misses = %lu\n" -msgstr "" -"СтатиÑтичні дані диÑкового кешу: відповідники = %lu (%lu %02lu%%), помилки = " -"%lu\n" - -#: grub-core/commands/cacheinfo.c:45 -msgid "No disk cache statistics available\n" -msgstr "СтатиÑтичні дані щодо кешу на диÑку недоÑтупні\n" - -#: grub-core/commands/cacheinfo.c:56 -msgid "Get disk cache info." -msgstr "Отримати відомоÑті щодо диÑкового кешу." - -#: grub-core/commands/cat.c:33 -msgid "Accept DOS-style CR/NL line endings." -msgstr "Приймати Ð·Ð°Ð²ÐµÑ€ÑˆÐµÐ½Ð½Ñ Ñ€Ñдків CR/NL у Ñтилі DOS." - -#: grub-core/commands/cat.c:163 grub-core/commands/minicmd.c:198 -msgid "Show the contents of a file." -msgstr "Показати вміÑÑ‚ файла." - -#: grub-core/commands/cmp.c:43 grub-core/commands/i386/pc/drivemap.c:239 -#: grub-core/commands/i386/wrmsr.c:60 grub-core/commands/iorw.c:85 -#: grub-core/commands/memrw.c:84 grub-core/commands/password.c:75 -#: grub-core/commands/password_pbkdf2.c:94 grub-core/commands/pgp.c:826 -#: grub-core/commands/regexp.c:113 grub-core/mmap/mmap.c:517 -#: grub-core/net/dns.c:639 -msgid "two arguments expected" -msgstr "мало бути вказано два аргументи" - -#: grub-core/commands/cmp.c:45 -#, c-format -msgid "Compare file `%s' with `%s':\n" -msgstr "ПорівнÑÐ½Ð½Ñ Ñ„Ð°Ð¹Ð»Ð° «%s» з «%s»:\n" - -#: grub-core/commands/cmp.c:54 -#, c-format -msgid "Files differ in size: %llu [%s], %llu [%s]\n" -msgstr "Ðе збігаютьÑÑ Ñ€Ð¾Ð·Ð¼Ñ–Ñ€Ð¸ файлів: %llu [%s], %llu [%s]\n" - -#: grub-core/commands/cmp.c:81 -#, c-format -msgid "Files differ at the offset %llu: 0x%x [%s], 0x%x [%s]\n" -msgstr "РозбіжніÑть виÑвлено за адреÑою %llu: 0x%x [%s], 0x%x [%s]\n" - -#. TRANSLATORS: it's always exactly 2 files. -#: grub-core/commands/cmp.c:93 -msgid "The files are identical.\n" -msgstr "ВміÑÑ‚ файлів Ñ” тотожним.\n" - -#: grub-core/commands/cmp.c:113 -msgid "FILE1 FILE2" -msgstr "ФÐЙЛ1 ФÐЙЛ2" - -#: grub-core/commands/cmp.c:113 -msgid "Compare two files." -msgstr "ПорівнÑти два файла." - -#: grub-core/commands/configfile.c:65 -msgid "Load another config file." -msgstr "Завантажити інший файл налаштуваннÑ." - -#: grub-core/commands/configfile.c:69 grub-core/commands/configfile.c:87 -msgid "Load another config file without changing context." -msgstr "Завантажити інший файл Ð½Ð°Ð»Ð°ÑˆÑ‚ÑƒÐ²Ð°Ð½Ð½Ñ Ð±ÐµÐ· зміни контекÑту." - -#: grub-core/commands/configfile.c:75 -msgid "" -"Load another config file without changing context but take only menu entries." -msgstr "" -"Завантажити інший файл Ð½Ð°Ð»Ð°ÑˆÑ‚ÑƒÐ²Ð°Ð½Ð½Ñ Ð±ÐµÐ· зміни контекÑту, викориÑтати лише " -"пункти меню." - -#: grub-core/commands/configfile.c:81 -msgid "Load another config file but take only menu entries." -msgstr "Завантажити інший файл налаштуваннÑ, викориÑтати лише пункти меню." - -#: grub-core/commands/date.c:141 -msgid "[[year-]month-day] [hour:minute[:second]]" -msgstr "[[рік-]міÑÑць-день] [години:хвилини[:Ñекунди]]" - -#: grub-core/commands/date.c:142 -msgid "Display/set current datetime." -msgstr "Показати або вÑтановити поточну дату Ñ– чаÑ." - -#: grub-core/commands/echo.c:30 -msgid "Do not output the trailing newline." -msgstr "Ðе виводити кінцевий Ñимвол Ð·Ð°Ð²ÐµÑ€ÑˆÐµÐ½Ð½Ñ Ñ€Ñдка." - -#: grub-core/commands/echo.c:31 -msgid "Enable interpretation of backslash escapes." -msgstr "" -"Увімкнути обробку ÐµÐºÑ€Ð°Ð½ÑƒÐ²Ð°Ð½Ð½Ñ Ð·Ð° допомогою Ñимволу зворотної похилої риÑки." - -#: grub-core/commands/echo.c:134 -msgid "[-e|-n] STRING" -msgstr "[-e|-n] РЯДОК" - -#: grub-core/commands/echo.c:134 -msgid "Display a line of text." -msgstr "Показати Ñ€Ñдок текÑту." - -#: grub-core/commands/efi/efifwsetup.c:82 -msgid "Reboot into firmware setup menu." -msgstr "ПерезавантажитиÑÑ Ð´Ð¾ меню Ð½Ð°Ð»Ð°ÑˆÑ‚Ð¾Ð²ÑƒÐ²Ð°Ð½Ð½Ñ Ð¼Ñ–ÐºÑ€Ð¾Ð¿Ñ€Ð¾Ð³Ñ€Ð°Ð¼Ð¸." - -#: grub-core/commands/efi/fixvideo.c:107 -msgid "Fix video problem." -msgstr "Виправити проблему з відео." - -#: grub-core/commands/efi/loadbios.c:52 -msgid "ROM image is present." -msgstr "ВиÑвлено образ ROM." - -#: grub-core/commands/efi/loadbios.c:70 -msgid "Can't enable ROM area." -msgstr "Ðе вдалоÑÑ ÑƒÐ²Ñ–Ð¼ÐºÐ½ÑƒÑ‚Ð¸ облаÑть ROM." - -#: grub-core/commands/efi/loadbios.c:209 -msgid "" -"Create BIOS-like structures for backward compatibility with existing OS." -msgstr "" -"Створити BIOS-подібні конÑтрукції Ð´Ð»Ñ Ð·Ð²Ð¾Ñ€Ð¾Ñ‚Ð½Ð¾Ñ— ÑуміÑноÑті з вже " -"вÑтановленими операційними ÑиÑтемами." - -#: grub-core/commands/efi/loadbios.c:214 -msgid "BIOS_DUMP [INT10_DUMP]" -msgstr "ДÐМП_BIOS [ДÐМП_INT10]" - -#: grub-core/commands/efi/loadbios.c:215 -msgid "Load BIOS dump." -msgstr "Завантажити дамп BIOS." - -#: grub-core/commands/efi/shim_lock.c:76 -#, c-format -msgid "module cannot be loaded in UEFI secure boot mode: %s" -msgstr "" -"модуль не може бути завантажено у режимі захищеного Ð·Ð°Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ UEFI: %s" - -#: grub-core/commands/efi/shim_lock.c:98 -#, c-format -msgid "cannot boot due to dangerous module in memory: %s" -msgstr "Ð·Ð°Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ Ð½ÐµÐ¼Ð¾Ð¶Ð»Ð¸Ð²Ðµ через небезпечний модуль у пам'Ñті: %s" - -#: grub-core/commands/efi/shim_lock.c:116 -msgid "bad shim signature" -msgstr "некоректний Ð¿Ñ–Ð´Ð¿Ð¸Ñ Ð¿Ñ€Ð¾ÐºÐ»Ð°Ð´ÐºÐ¸" - -#: grub-core/commands/efi/tpm.c:149 grub-core/commands/efi/tpm.c:189 -#: grub-core/commands/efi/tpm.c:256 grub-core/commands/efi/tpm.c:306 -msgid "Command failed" -msgstr "Помилка під Ñ‡Ð°Ñ Ð²Ð¸ÐºÐ¾Ð½Ð°Ð½Ð½Ñ ÐºÐ¾Ð¼Ð°Ð½Ð´Ð¸" - -#: grub-core/commands/efi/tpm.c:151 grub-core/commands/efi/tpm.c:191 -#: grub-core/commands/efi/tpm.c:258 grub-core/commands/efi/tpm.c:308 -msgid "Invalid parameter" -msgstr "Ðекоректний параметр" - -#: grub-core/commands/efi/tpm.c:154 grub-core/commands/efi/tpm.c:194 -#: grub-core/commands/efi/tpm.c:261 grub-core/commands/efi/tpm.c:311 -msgid "Output buffer too small" -msgstr "Буфер Ð²Ð¸Ð²ÐµÐ´ÐµÐ½Ð½Ñ Ñ” надто малим" - -#: grub-core/commands/efi/tpm.c:156 grub-core/commands/efi/tpm.c:196 -#: grub-core/commands/efi/tpm.c:263 grub-core/commands/efi/tpm.c:313 -msgid "TPM unavailable" -msgstr "TPM Ñ” недоÑтупним" - -#: grub-core/commands/efi/tpm.c:158 grub-core/commands/efi/tpm.c:198 -#: grub-core/commands/efi/tpm.c:265 grub-core/commands/efi/tpm.c:315 -msgid "Unknown TPM error" -msgstr "Ðевідома помилка TPM" - -#: grub-core/commands/efi/tpm.c:240 grub-core/commands/efi/tpm.c:288 -msgid "cannot allocate TPM event buffer" -msgstr "не вдалоÑÑ Ñ€Ð¾Ð·Ð¼Ñ–Ñтити у пам'Ñті буфер подій TPM" - -#: grub-core/commands/eval.c:63 -msgid "STRING ..." -msgstr "РЯДОК ..." - -#: grub-core/commands/eval.c:64 -msgid "Evaluate arguments as GRUB commands" -msgstr "Обробити аргументи Ñк команди GRUB" - -#: grub-core/commands/file.c:41 -msgid "Check if FILE can be booted as i386 PAE Xen unprivileged guest kernel" -msgstr "" -"Перевірити, чи можна завантажити ФÐЙЛ Ñк Ñдро гоÑтьової ÑиÑтеми Xen без " -"привілеїв з i386 Ñ– PAE" - -#: grub-core/commands/file.c:44 -msgid "Check if FILE can be booted as x86_64 Xen unprivileged guest kernel" -msgstr "" -"Перевірити, чи можна завантажити ФÐЙЛ Ñк Ñдро гоÑтьової ÑиÑтеми Xen без " -"привілеїв x86_64" - -#: grub-core/commands/file.c:46 -msgid "Check if FILE can be used as Xen x86 privileged guest kernel" -msgstr "" -"Перевірити, чи можна викориÑтовувати ФÐЙЛ Ñк Ñдро гоÑтьової ÑиÑтеми Xen з " -"привілеÑми Ñ– архітектурою x86" - -#: grub-core/commands/file.c:48 -msgid "Check if FILE can be used as x86 multiboot kernel" -msgstr "Перевірити, чи можна викориÑтовувати ФÐЙЛ Ñк Ñдро multiboot x86" - -#: grub-core/commands/file.c:50 -msgid "Check if FILE can be used as x86 multiboot2 kernel" -msgstr "Перевірити, чи можна викориÑтовувати ФÐЙЛ Ñк Ñдро multiboot2 x86" - -#: grub-core/commands/file.c:52 -msgid "Check if FILE is ARM Linux" -msgstr "Перевірити, чи Ñ” ФÐЙЛ файлом ARM Linux" - -#: grub-core/commands/file.c:54 -msgid "Check if FILE is ARM64 Linux" -msgstr "Перевірити, чи Ñ” ФÐЙЛ файлом ARM Linux" - -#: grub-core/commands/file.c:56 -msgid "Check if FILE is IA64 Linux" -msgstr "Перевірити, чи Ñ” ФÐЙЛ файлом IA64 Linux" - -#: grub-core/commands/file.c:58 -msgid "Check if FILE is MIPS Linux" -msgstr "Перевірити, чи Ñ” ФÐЙЛ файлом MIPS Linux" - -#: grub-core/commands/file.c:60 -msgid "Check if FILE is MIPSEL Linux" -msgstr "Перевірити, чи Ñ” ФÐЙЛ файлом MIPSEL Linux" - -#: grub-core/commands/file.c:62 -msgid "Check if FILE is SPARC64 Linux" -msgstr "Перевірити, чи Ñ” ФÐЙЛ файлом SPARC64 Linux" - -#: grub-core/commands/file.c:64 -msgid "Check if FILE is POWERPC Linux" -msgstr "Перевірити, чи Ñ” ФÐЙЛ файлом POWERPC Linux" - -#: grub-core/commands/file.c:66 -msgid "Check if FILE is x86 Linux" -msgstr "Перевірити, чи Ñ” ФÐЙЛ файлом x86 Linux" - -#: grub-core/commands/file.c:68 -msgid "Check if FILE is x86 Linux supporting 32-bit protocol" -msgstr "" -"Перевірити, чи Ñ” ФÐЙЛ файлом x86 Linux з підтримкою 32-бітного протоколу" - -#: grub-core/commands/file.c:70 -msgid "Check if FILE is x86 kFreeBSD" -msgstr "Перевірити, чи Ñ” ФÐЙЛ файлом x86 kFreeBSD" - -#: grub-core/commands/file.c:72 -msgid "Check if FILE is i386 kFreeBSD" -msgstr "Перевірити, чи Ñ” ФÐЙЛ файлом i386 kFreeBSD" - -#: grub-core/commands/file.c:74 -msgid "Check if FILE is x86_64 kFreeBSD" -msgstr "Перевірити, чи Ñ” ФÐЙЛ файлом x86_64 kFreeBSD" - -#: grub-core/commands/file.c:77 -msgid "Check if FILE is x86 kNetBSD" -msgstr "Перевірити, чи Ñ” ФÐЙЛ файлом x86 kNetBSD" - -#: grub-core/commands/file.c:79 -msgid "Check if FILE is i386 kNetBSD" -msgstr "Перевірити, чи Ñ” ФÐЙЛ файлом i386 kNetBSD" - -#: grub-core/commands/file.c:81 -msgid "Check if FILE is x86_64 kNetBSD" -msgstr "Перевірити, чи Ñ” ФÐЙЛ файлом x86_64 kNetBSD" - -#: grub-core/commands/file.c:84 -msgid "Check if FILE is i386 EFI file" -msgstr "Перевірити, чи Ñ” ФÐЙЛ файлом i386 EFI" - -#: grub-core/commands/file.c:86 -msgid "Check if FILE is x86_64 EFI file" -msgstr "Перевірити, чи Ñ” ФÐЙЛ файлом x86_64 EFI" - -#: grub-core/commands/file.c:88 -msgid "Check if FILE is IA64 EFI file" -msgstr "Перевірити, чи Ñ” ФÐЙЛ файлом IA64 EFI" - -#: grub-core/commands/file.c:90 -msgid "Check if FILE is ARM64 EFI file" -msgstr "Перевірити, чи Ñ” ФÐЙЛ файлом ARM64 EFI" - -#: grub-core/commands/file.c:92 -msgid "Check if FILE is ARM EFI file" -msgstr "Перевірити, чи Ñ” ФÐЙЛ файлом ARM EFI" - -#: grub-core/commands/file.c:94 -msgid "Check if FILE is RISC-V 32bit EFI file" -msgstr "Перевірити, чи Ñ” ФÐЙЛ 32-бітовим файлом RISC-V" - -#: grub-core/commands/file.c:96 -msgid "Check if FILE is RISC-V 64bit EFI file" -msgstr "Перевірити, чи Ñ” ФÐЙЛ 64-бітовим файлом RISC-V" - -#: grub-core/commands/file.c:98 -msgid "Check if FILE is hiberfil.sys in hibernated state" -msgstr "" -"Перевірити, чи Ñ” ФÐЙЛ файлом hiberfil.sys у Ñтані Ð¿Ñ€Ð¸Ð·ÑƒÐ¿Ð¸Ð½ÐµÐ½Ð½Ñ Ñ€Ð¾Ð±Ð¾Ñ‚Ð¸ ÑиÑтеми" - -#: grub-core/commands/file.c:100 -msgid "Check if FILE is x86_64 XNU (Mac OS X kernel)" -msgstr "Перевірити, чи Ñ” файл FILE файлом x86_64 XNU (Ñдром Mac OS X)" - -#: grub-core/commands/file.c:102 -msgid "Check if FILE is i386 XNU (Mac OS X kernel)" -msgstr "Перевірити, чи Ñ” ФÐЙЛ файлом i386 XNU (Ñдром Mac OS X)" - -#: grub-core/commands/file.c:104 -msgid "Check if FILE is XNU (Mac OS X kernel) hibernated image" -msgstr "" -"Перевірити, чи Ñ” ФÐЙЛ файлом образу призупиненої ÑиÑтеми XNU (Ñдром Mac OS X)" - -#: grub-core/commands/file.c:106 -msgid "Check if FILE is BIOS bootsector" -msgstr "Перевірити, чи Ñ” ФÐЙЛ завантажувальним Ñектором BIOS" - -#. TRANSLATORS: it's a standalone boolean value, -#. opposite of "true". -#: grub-core/commands/file.c:675 grub-core/commands/i386/cmostest.c:63 -#: grub-core/commands/i386/cpuid.c:71 grub-core/commands/keystatus.c:83 -#: grub-core/commands/keystatus.c:87 grub-core/commands/keystatus.c:96 -#: grub-core/commands/test.c:436 grub-core/commands/true.c:39 -#: grub-core/script/execute.c:247 grub-core/script/execute.c:1039 -msgid "false" -msgstr "false" - -#: grub-core/commands/file.c:684 -msgid "OPTIONS FILE" -msgstr "ПÐРÐМЕТРИ ФÐЙЛ" - -#: grub-core/commands/file.c:685 -msgid "Check if FILE is of specified type." -msgstr "Перевірити, чи належить ФÐЙЛ до вказаного типу." - -#. TRANSLATORS: It means that the specified partition e.g. -#. hd0,msdos1=/dev/sda1 doesn't exist. -#: grub-core/commands/gptsync.c:140 grub-core/kern/disk.c:258 -msgid "no such partition" -msgstr "такого розділу немає" - -#: grub-core/commands/gptsync.c:240 -#, c-format -msgid "New MBR is written to `%s'\n" -msgstr "Ðовий MBR запиÑано до «%s»\n" - -#: grub-core/commands/gptsync.c:252 -msgid "DEVICE [PARTITION[+/-[TYPE]]] ..." -msgstr "ПРИСТРІЙ [РОЗДІЛ[+/-[ТИП]]] ..." - -#. TRANSLATORS: MBR type is one-byte partition -#. type id. -#: grub-core/commands/gptsync.c:255 -msgid "" -"Fill hybrid MBR of GPT drive DEVICE. Specified partitions will be a part of " -"hybrid MBR. Up to 3 partitions are allowed. TYPE is an MBR type. + means " -"that partition is active. Only one partition can be active." -msgstr "" -"Заповнити гібридний Ð·Ð°Ð¿Ð¸Ñ MBR приÑтрою GPT ПРИСТРІЙ. Вказані розділи будуть " -"чаÑтиною гібридного запиÑу MBR. Можна викориÑтовувати до 3 розділів. ТИП Ñ” " -"типом MBR. «+» означає, що розділ Ñ” активним. Ðктивним може бути лише один " -"розділ." - -#: grub-core/commands/halt.c:40 -msgid "" -"Halts the computer. This command does not work on all firmware " -"implementations." -msgstr "" -"Завершує роботу комп’ютера. Ð¦Ñ ÐºÐ¾Ð¼Ð°Ð½Ð´Ð° працює не Ð´Ð»Ñ Ð²ÑÑ–Ñ… реалізацій " -"мікропрограм." - -#: grub-core/commands/hashsum.c:32 -msgid "Specify hash to use." -msgstr "Вказати хеш Ð´Ð»Ñ Ð²Ð¸ÐºÐ¾Ñ€Ð¸ÑтаннÑ." - -#: grub-core/commands/hashsum.c:32 -msgid "HASH" -msgstr "ХЕШ" - -#: grub-core/commands/hashsum.c:33 -msgid "Check hashes of files with hash list FILE." -msgstr "Перевірити хеші файлів за допомогою ÑпиÑку хешів у файлі ФÐЙЛ." - -#: grub-core/commands/hashsum.c:35 -msgid "Base directory for hash list." -msgstr "Базовий каталог ÑпиÑку хешів." - -#. TRANSLATORS: platform here isn't identifier. It can be translated. -#: grub-core/commands/hashsum.c:35 grub-core/commands/ls.c:150 -#: grub-core/commands/macbless.c:226 grub-core/commands/syslinuxcfg.c:51 -#: grub-core/commands/syslinuxcfg.c:54 grub-core/kern/emu/main.c:106 -#: include/grub/util/install.h:50 include/grub/util/install.h:53 -#: include/grub/util/install.h:56 include/grub/util/install.h:59 -#: util/grub-install.c:250 util/grub-install.c:252 util/grub-install.c:297 -#: util/grub-install.c:299 util/grub-mkimage.c:64 util/grub-mkimage.c:67 -#: util/grub-mknetdir.c:46 util/grub-mknetdir.c:48 util/grub-mkrescue.c:99 -#: util/grub-setup.c:82 util/grub-syslinux2cfg.c:63 util/grub-syslinux2cfg.c:65 -#: util/grub-syslinux2cfg.c:67 util/grub-syslinux2cfg.c:71 -msgid "DIR" -msgstr "КÐТÐЛОГ" - -#: grub-core/commands/hashsum.c:37 -msgid "Don't stop after first error." -msgstr "Ðе зупинÑти Ð²Ð¸ÐºÐ¾Ð½Ð°Ð½Ð½Ñ Ð¿Ñ–ÑÐ»Ñ Ð¿ÐµÑ€ÑˆÐ¾Ñ— помилки." - -#: grub-core/commands/hashsum.c:38 -msgid "Uncompress file before checksumming." -msgstr "Розпакувати файл до обчиÑÐ»ÐµÐ½Ð½Ñ ÐºÐ¾Ð½Ñ‚Ñ€Ð¾Ð»ÑŒÐ½Ð¾Ñ— Ñуми." - -#: grub-core/commands/hashsum.c:163 -#, c-format -msgid "%s: READ ERROR\n" -msgstr "%s: ПОМИЛКРЧИТÐÐÐЯ\n" - -#: grub-core/commands/hashsum.c:177 -#, c-format -msgid "%s: HASH MISMATCH\n" -msgstr "%s: ÐЕВІДПОВІДÐІСТЬ ХЕШІВ\n" - -#: grub-core/commands/hashsum.c:188 -#, c-format -msgid "%s: OK\n" -msgstr "%s: ГÐРÐЗД\n" - -#: grub-core/commands/hashsum.c:282 -msgid "-h HASH [-c FILE [-p PREFIX]] [FILE1 [FILE2 ...]]" -msgstr "-h ХЕШ [-c ФÐЙЛ [-p ПРЕФІКС]] [ФÐЙЛ1 [ФÐЙЛ2 ...]]" - -#. TRANSLATORS: "hash checksum" is just to -#. be a bit more precise, you can treat it as -#. just "hash". -#: grub-core/commands/hashsum.c:287 grub-core/commands/hashsum.c:292 -#: grub-core/commands/hashsum.c:297 grub-core/commands/hashsum.c:302 -#: grub-core/commands/hashsum.c:307 grub-core/commands/hashsum.c:313 -msgid "Compute or check hash checksum." -msgstr "ОбчиÑлити або перевірити хеш контрольної Ñуми." - -#: grub-core/commands/hashsum.c:290 grub-core/commands/hashsum.c:295 -#: grub-core/commands/hashsum.c:300 grub-core/commands/hashsum.c:305 -#: grub-core/commands/hashsum.c:311 -msgid "[-c FILE [-p PREFIX]] [FILE1 [FILE2 ...]]" -msgstr "[-c ФÐЙЛ [-p ПРЕФІКС]] [ФÐЙЛ1 [ФÐЙЛ2 ...]]" - -#: grub-core/commands/hdparm.c:33 -msgid "" -"Set Advanced Power Management\n" -"(1=low, ..., 254=high, 255=off)." -msgstr "" -"Ðалаштувати Advanced Power Management\n" -"(1=мін, ..., 254=макÑ, 255=вимкн)." - -#: grub-core/commands/hdparm.c:36 -msgid "Display power mode." -msgstr "Показати дані щодо режиму живленнÑ." - -#: grub-core/commands/hdparm.c:37 -msgid "Freeze ATA security settings until reset." -msgstr "ЗафікÑувати параметри безпеки ATA до перезавантаженнÑ." - -#: grub-core/commands/hdparm.c:39 -msgid "Display SMART health status." -msgstr "Показати дані щодо працездатноÑті за SMART." - -#: grub-core/commands/hdparm.c:40 -msgid "" -"Set Automatic Acoustic Management\n" -"(0=off, 128=quiet, ..., 254=fast)." -msgstr "" -"Ðалаштувати Automatic Acoustic Management\n" -"(0=вимкн, 128=тихо, ..., 254=швидко)." - -#: grub-core/commands/hdparm.c:43 -msgid "" -"Set standby timeout\n" -"(0=off, 1=5s, 2=10s, ..., 240=20m, 241=30m, ...)." -msgstr "" -"Ð’Ñтановити затримку переходу у режим очікуваннÑ\n" -"(0=вимкн, 1=5Ñ, 2=10Ñ, ..., 240=20хв, 241=30хв, ...)." - -#: grub-core/commands/hdparm.c:46 -msgid "Set drive to standby mode." -msgstr "ПеревеÑти приÑтрій у режим очікуваннÑ." - -#: grub-core/commands/hdparm.c:47 -msgid "Set drive to sleep mode." -msgstr "ПеревеÑти приÑтрій у режим Ñну." - -#: grub-core/commands/hdparm.c:48 -msgid "Print drive identity and settings." -msgstr "Показати профіль приÑтрою та його параметри." - -#: grub-core/commands/hdparm.c:50 -msgid "Show raw contents of ATA IDENTIFY sector." -msgstr "Показати вміÑÑ‚ Ñектора ATA IDENTIFY без обробки." - -#: grub-core/commands/hdparm.c:52 -msgid "Disable/enable SMART (0/1)." -msgstr "Вимкнути або увімкнути SMART (0/1)." - -#: grub-core/commands/hdparm.c:53 -msgid "Do not print messages." -msgstr "Ðе показувати повідомлень." - -#: grub-core/commands/hdparm.c:286 grub-core/commands/i386/rdmsr.c:68 -#: grub-core/commands/iorw.c:47 grub-core/commands/legacycfg.c:760 -#: grub-core/commands/legacycfg.c:812 grub-core/commands/macbless.c:190 -#: grub-core/commands/memrw.c:47 grub-core/commands/pgp.c:738 -#: grub-core/commands/pgp.c:792 grub-core/commands/search.c:304 -#: grub-core/commands/search_wrap.c:179 grub-core/commands/setpci.c:243 -#: grub-core/commands/sleep.c:71 grub-core/fs/zfs/zfsinfo.c:279 -#: grub-core/fs/zfs/zfsinfo.c:358 grub-core/gettext/gettext.c:492 -#: grub-core/kern/corecmd.c:65 grub-core/kern/corecmd.c:79 -#: grub-core/mmap/mmap.c:430 grub-core/net/dns.c:713 grub-core/net/dns.c:745 -#: grub-core/net/net.c:694 grub-core/net/net.c:1052 -#: grub-core/normal/context.c:194 grub-core/script/execute.c:131 -#: grub-core/term/gfxterm_background.c:136 -msgid "one argument expected" -msgstr "очікувавÑÑ Ð¾Ð´Ð¸Ð½ аргумент" - -#: grub-core/commands/hdparm.c:440 -msgid "[OPTIONS] DISK" -msgstr "[ПÐРÐМЕТРИ] ДИСК" - -#: grub-core/commands/hdparm.c:441 -msgid "Get/set ATA disk parameters." -msgstr "Отримати або вÑтановити параметри диÑка ATA." - -#: grub-core/commands/help.c:132 grub-core/lib/arg.c:109 -#: grub-core/lib/gnulib/argp-help.c:1616 -msgid "Usage:" -msgstr "ВикориÑтаннÑ:" - -#: grub-core/commands/help.c:146 -msgid "[PATTERN ...]" -msgstr "[ШÐБЛОР...]" - -#: grub-core/commands/help.c:147 -msgid "Show a help message." -msgstr "Показати довідкове повідомленнÑ." - -#: grub-core/commands/hexdump.c:31 -msgid "Skip offset bytes from the beginning of file." -msgstr "ПропуÑтити вказану кількіÑть байтів на початку файла." - -#: grub-core/commands/hexdump.c:33 -msgid "Read only LENGTH bytes." -msgstr "Прочитати лише ВКÐЗÐÐУ кількіÑть байтів." - -#: grub-core/commands/hexdump.c:125 -msgid "[OPTIONS] FILE_OR_DEVICE" -msgstr "[ПÐРÐМЕТРИ] ФÐЙЛ_ÐБО_ПРИСТРІЙ" - -#: grub-core/commands/hexdump.c:126 -msgid "Show raw contents of a file or memory." -msgstr "Показати вміÑÑ‚ файла або пам’Ñті без обробки." - -#: grub-core/commands/i386/cmosdump.c:58 -msgid "Show raw dump of the CMOS contents." -msgstr "ВивеÑти необроблений дамп даних CMOS." - -#: grub-core/commands/i386/cmostest.c:108 -#: grub-core/commands/i386/cmostest.c:111 -#: grub-core/commands/i386/cmostest.c:114 -msgid "BYTE:BIT" -msgstr "БÐЙТ:БІТ" - -#: grub-core/commands/i386/cmostest.c:109 -msgid "Test bit at BYTE:BIT in CMOS." -msgstr "ТеÑтувати біт за адреÑою БÐЙТ:БІТ у CMOS." - -#: grub-core/commands/i386/cmostest.c:112 -msgid "Clear bit at BYTE:BIT in CMOS." -msgstr "Спорожнити біт за адреÑою БÐЙТ:БІТ у CMOS." - -#. TRANSLATORS: A bit may be either set (1) or clear (0). -#: grub-core/commands/i386/cmostest.c:116 -msgid "Set bit at BYTE:BIT in CMOS." -msgstr "Ð’Ñтановити біт за адреÑою БÐЙТ:БІТ у CMOS." - -#: grub-core/commands/i386/coreboot/cb_timestamps.c:120 -msgid "Show coreboot boot time statistics." -msgstr "ВивеÑти ÑтатиÑтичні дані щодо чаÑу Ð·Ð°Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ coreboot." - -#: grub-core/commands/i386/coreboot/cbls.c:137 -msgid "List coreboot tables." -msgstr "Показати ÑпиÑок таблиць coreboot." - -#. TRANSLATORS: "(default)" at the end means that this option is used if -#. no argument is specified. -#: grub-core/commands/i386/cpuid.c:36 -msgid "Check if CPU supports 64-bit (long) mode (default)." -msgstr "" -"Перевірити, чи процеÑор підтримує 64-бітовий режим (long) (типова поведінка)." - -#: grub-core/commands/i386/cpuid.c:37 -msgid "Check if CPU supports Physical Address Extension." -msgstr "" -"Перевірити, чи передбачено у процеÑорі підтримку Ñ€Ð¾Ð·ÑˆÐ¸Ñ€ÐµÐ½Ð½Ñ Ñ„Ñ–Ð·Ð¸Ñ‡Ð½Ð¸Ñ… Ð°Ð´Ñ€ÐµÑ " -"(PAE)." - -#: grub-core/commands/i386/cpuid.c:119 -msgid "Check for CPU features." -msgstr "Перевірити можливоÑті ЦП." - -#. TRANSLATORS: In this file "mapping" refers to a change GRUB makes so if -#. your language doesn't have an equivalent of "mapping" you can -#. use the word like "rerouting". -#. -#: grub-core/commands/i386/pc/drivemap.c:43 -msgid "Show the current mappings." -msgstr "Показати поточні відображеннÑ." - -#: grub-core/commands/i386/pc/drivemap.c:44 -msgid "Reset all mappings to the default values." -msgstr "Відновити типові Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð²ÑÑ–Ñ… відображень." - -#: grub-core/commands/i386/pc/drivemap.c:45 -msgid "Perform both direct and reverse mappings." -msgstr "Виконати прÑмі Ñ– зворотні відображеннÑ." - -#: grub-core/commands/i386/pc/drivemap.c:184 -msgid "No drives have been remapped" -msgstr "Ðе було перепризначено жодного приÑтрою" - -#. TRANSLATORS: This is the header of mapping list. -#. On the left is how OS will see the disks and -#. on the right current GRUB vision. -#: grub-core/commands/i386/pc/drivemap.c:191 -msgid "OS disk #num ------> GRUB/BIOS device" -msgstr "ДиÑк ОС #num ------> приÑтрій GRUB/BIOS" - -#: grub-core/commands/i386/pc/drivemap.c:413 -msgid "-l | -r | [-s] grubdev osdisk." -msgstr "-l | -r | [-s] приÑтрій_grub диÑк_ОС." - -#: grub-core/commands/i386/pc/drivemap.c:414 -msgid "Manage the BIOS drive mappings." -msgstr "Керувати відображеннÑми BIOS приÑтроїв." - -#: grub-core/commands/i386/pc/halt.c:31 -msgid "Do not use APM to halt the computer." -msgstr "Ðе викориÑтовувати APM Ð´Ð»Ñ Ð²Ð¸Ð¼Ð¸ÐºÐ°Ð½Ð½Ñ ÐºÐ¾Ð¼Ð¿â€™ÑŽÑ‚ÐµÑ€Ð°." - -#: grub-core/commands/i386/pc/halt.c:119 -msgid "Halt the system, if possible using APM." -msgstr "Вимкнути ÑиÑтему, Ñкщо можливо, за допомогою APM." - -#: grub-core/commands/i386/pc/lsapm.c:75 -msgid "no APM found" -msgstr "не знайдено APM" - -#: grub-core/commands/i386/pc/lsapm.c:77 -#, c-format -msgid "" -"Version %u.%u\n" -"32-bit CS = 0x%x, len = 0x%x, offset = 0x%x\n" -"16-bit CS = 0x%x, len = 0x%x\n" -"DS = 0x%x, len = 0x%x\n" -msgstr "" -"ВерÑÑ–Ñ %u.%u\n" -"32-бітовий CS = 0x%x, довжина = 0x%x, відÑтуп = 0x%x\n" -"16-бітовий CS = 0x%x, довжина = 0x%x\n" -"DS = 0x%x, довжина = 0x%x\n" - -#: grub-core/commands/i386/pc/lsapm.c:86 -msgid "16-bit protected interface supported\n" -msgstr "ПідтримуєтьÑÑ 16-бітовий захищений інтерфейÑ\n" - -#: grub-core/commands/i386/pc/lsapm.c:87 -msgid "16-bit protected interface unsupported\n" -msgstr "Ðе підтримуєтьÑÑ 16-бітовий захищений інтерфейÑ\n" - -#: grub-core/commands/i386/pc/lsapm.c:89 -msgid "32-bit protected interface supported\n" -msgstr "ПідтримуєтьÑÑ 32-бітовий захищений інтерфейÑ\n" - -#: grub-core/commands/i386/pc/lsapm.c:90 -msgid "32-bit protected interface unsupported\n" -msgstr "Ðе підтримуєтьÑÑ 32-бітовий захищений інтерфейÑ\n" - -#: grub-core/commands/i386/pc/lsapm.c:92 -msgid "CPU Idle slows down processor\n" -msgstr "Режим бездіÑльноÑті процеÑора уповільнює процеÑор\n" - -#: grub-core/commands/i386/pc/lsapm.c:93 -msgid "CPU Idle doesn't slow down processor\n" -msgstr "Режим бездіÑльноÑті процеÑора не уповільнює процеÑор\n" - -#: grub-core/commands/i386/pc/lsapm.c:95 -msgid "APM disabled\n" -msgstr "APM вимкнено\n" - -#: grub-core/commands/i386/pc/lsapm.c:95 -msgid "APM enabled\n" -msgstr "APM увімкнено\n" - -#: grub-core/commands/i386/pc/lsapm.c:97 -msgid "APM disengaged\n" -msgstr "APM вільний\n" - -#: grub-core/commands/i386/pc/lsapm.c:97 -msgid "APM engaged\n" -msgstr "APM зайнÑтий\n" - -#: grub-core/commands/i386/pc/lsapm.c:107 -msgid "Show APM information." -msgstr "Показати відомоÑті APM." - -#. TRANSLATORS: It's musical notes, not the notes -#. you take. Play command expects arguments which can -#. be either a filename or tempo+notes. -#. This error happens if none is specified. -#: grub-core/commands/i386/pc/play.c:88 -msgid "filename or tempo and notes expected" -msgstr "Ñлід вказати файл або ритм Ñ– ноти" - -#: grub-core/commands/i386/pc/play.c:113 grub-core/commands/i386/pc/play.c:144 -#, c-format -msgid "Invalid tempo in %s" -msgstr "Ðекоректний ритм у %s" - -#: grub-core/commands/i386/pc/play.c:151 grub-core/commands/macbless.c:172 -#: grub-core/fs/archelp.c:260 grub-core/fs/bfs.c:621 grub-core/fs/bfs.c:704 -#: grub-core/fs/btrfs.c:1726 grub-core/fs/btrfs.c:1755 -#: grub-core/fs/btrfs.c:1799 grub-core/fs/btrfs.c:1882 -#: grub-core/fs/btrfs.c:1906 grub-core/fs/fshelp.c:257 grub-core/fs/jfs.c:696 -#: grub-core/fs/minix.c:426 grub-core/fs/ufs.c:544 grub-core/fs/zfs/zfs.c:2083 -#: grub-core/fs/zfs/zfs.c:2095 grub-core/fs/zfs/zfs.c:2301 -#: grub-core/net/http.c:120 -#, c-format -msgid "file `%s' not found" -msgstr "файл «%s» не знайдено" - -#: grub-core/commands/i386/pc/play.c:162 grub-core/commands/i386/pc/play.c:171 -#: grub-core/kern/misc.c:419 grub-core/script/execute.c:138 -#: grub-core/script/execute.c:244 -msgid "unrecognized number" -msgstr "нерозпізнане чиÑло" - -#: grub-core/commands/i386/pc/play.c:190 -msgid "FILE | TEMPO [PITCH1 DURATION1] [PITCH2 DURATION2] ... " -msgstr "ФÐЙЛ | ТЕМП [ТОÐ1 ТРИВÐЛІСТЬ1] [ТОÐ2 ТРИВÐЛІСТЬ2] ... " - -#: grub-core/commands/i386/pc/play.c:191 -msgid "Play a tune." -msgstr "Відтворити звук." - -#: grub-core/commands/i386/pc/sendkey.c:39 -msgid "set numlock mode" -msgstr "вÑтановити режим numlock" - -#: grub-core/commands/i386/pc/sendkey.c:40 -msgid "set capslock mode" -msgstr "вÑтановити режим capslock" - -#: grub-core/commands/i386/pc/sendkey.c:41 -msgid "set scrolllock mode" -msgstr "вÑтановити режим scrolllock" - -#: grub-core/commands/i386/pc/sendkey.c:42 -msgid "set insert mode" -msgstr "вÑтановити режим вÑтавленнÑ" - -#: grub-core/commands/i386/pc/sendkey.c:43 -msgid "set pause mode" -msgstr "вÑтановити режим паузи" - -#: grub-core/commands/i386/pc/sendkey.c:44 -msgid "press left shift" -msgstr "натиÑнути лівий shift" - -#: grub-core/commands/i386/pc/sendkey.c:45 -msgid "press right shift" -msgstr "натиÑнути правий shift" - -#: grub-core/commands/i386/pc/sendkey.c:46 -msgid "press SysRq" -msgstr "натиÑнути SysRq" - -#: grub-core/commands/i386/pc/sendkey.c:47 -msgid "press NumLock key" -msgstr "натиÑнути клавішу NumLock" - -#: grub-core/commands/i386/pc/sendkey.c:48 -msgid "press CapsLock key" -msgstr "натиÑнути клавішу CapsLock" - -#: grub-core/commands/i386/pc/sendkey.c:49 -msgid "press ScrollLock key" -msgstr "натиÑнути клавішу ScrollLock" - -#: grub-core/commands/i386/pc/sendkey.c:50 -msgid "press Insert key" -msgstr "натиÑнути клавішу Insert" - -#: grub-core/commands/i386/pc/sendkey.c:51 -msgid "press left alt" -msgstr "натиÑнути лівий alt" - -#: grub-core/commands/i386/pc/sendkey.c:52 -msgid "press right alt" -msgstr "натиÑнути правий alt" - -#: grub-core/commands/i386/pc/sendkey.c:53 -msgid "press left ctrl" -msgstr "натиÑнути лівий ctrl" - -#: grub-core/commands/i386/pc/sendkey.c:54 -msgid "press right ctrl" -msgstr "натиÑнути правий ctrl" - -#: grub-core/commands/i386/pc/sendkey.c:55 -msgid "don't update LED state" -msgstr "не змінювати Ñтан блоку індикаторів" - -#: grub-core/commands/i386/pc/sendkey.c:372 -msgid "[KEYSTROKE1] [KEYSTROKE2] ..." -msgstr "[КОМБІÐÐЦІЯ_КЛÐВІШ1] [КОМБІÐÐЦІЯ_КЛÐВІШ2] ..." - -#. TRANSLATORS: It can emulate multiple -#. keypresses. -#: grub-core/commands/i386/pc/sendkey.c:375 -msgid "Emulate a keystroke sequence" -msgstr "Імітувати натиÑÐºÐ°Ð½Ð½Ñ Ð¿Ð¾ÑлідовноÑті клавіш" - -#: grub-core/commands/i386/rdmsr.c:37 grub-core/commands/iorw.c:34 -#: grub-core/commands/memrw.c:33 grub-core/commands/setpci.c:73 -msgid "Save read value into variable VARNAME." -msgstr "Ðадати змінній ÐÐЗВÐ_ЗМІÐÐОЇ прочитане значеннÑ." - -#: grub-core/commands/i386/rdmsr.c:38 grub-core/commands/iorw.c:35 -#: grub-core/commands/memrw.c:34 grub-core/commands/probe.c:40 -#: grub-core/commands/search_wrap.c:40 grub-core/commands/setpci.c:74 -#: grub-core/commands/tr.c:32 -msgid "VARNAME" -msgstr "ÐÐЗВÐ_ЗМІÐÐОЇ" - -#: grub-core/commands/i386/rdmsr.c:55 grub-core/commands/i386/rdmsr.c:60 -#: grub-core/commands/i386/rdmsr.c:65 grub-core/commands/i386/wrmsr.c:47 -#: grub-core/commands/i386/wrmsr.c:52 grub-core/commands/i386/wrmsr.c:57 -msgid "unsupported instruction" -msgstr "непідтримувана інÑтрукціÑ" - -#: grub-core/commands/i386/rdmsr.c:77 grub-core/commands/i386/wrmsr.c:69 -#: grub-core/commands/i386/wrmsr.c:77 grub-core/net/dns.c:727 -msgid "invalid argument" -msgstr "некоректний аргумент" - -#: grub-core/commands/i386/rdmsr.c:94 grub-core/commands/memrw.c:125 -#: grub-core/commands/memrw.c:129 grub-core/commands/memrw.c:133 -msgid "ADDR" -msgstr "ÐДРЕСÐ" - -#: grub-core/commands/i386/rdmsr.c:95 -msgid "Read a CPU model specific register." -msgstr "Прочитати Ñпецифічний Ð´Ð»Ñ Ð¼Ð¾Ð´ÐµÐ»Ñ– процеÑора регіÑтр." - -#: grub-core/commands/i386/wrmsr.c:86 -msgid "ADDR VALUE" -msgstr "ÐДРЕСРЗÐÐЧЕÐÐЯ" - -#: grub-core/commands/i386/wrmsr.c:87 -msgid "Write a value to a CPU model specific register." -msgstr "ЗапиÑати Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð´Ð¾ Ñпецифічного Ð´Ð»Ñ Ð¼Ð¾Ð´ÐµÐ»Ñ– процеÑора регіÑтра." - -#: grub-core/commands/ieee1275/suspend.c:34 -msgid "Run `go' to resume GRUB." -msgstr "Віддайте команду «go», щоб відновити роботу GRUB." - -#: grub-core/commands/ieee1275/suspend.c:45 -msgid "Return to IEEE1275 prompt." -msgstr "ПовернутиÑÑ Ð´Ð¾ Ð·Ð°Ð¿Ñ€Ð¾ÑˆÐµÐ½Ð½Ñ IEEE1275." - -#: grub-core/commands/iorw.c:123 grub-core/commands/iorw.c:127 -#: grub-core/commands/iorw.c:131 grub-core/gdb/gdb.c:79 -msgid "PORT" -msgstr "ПОРТ" - -#: grub-core/commands/iorw.c:123 -msgid "Read 8-bit value from PORT." -msgstr "Прочитати 8-бітове Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð· ПОРТу." - -#: grub-core/commands/iorw.c:127 -msgid "Read 16-bit value from PORT." -msgstr "Прочитати 16-бітове Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð· ПОРТу." - -#: grub-core/commands/iorw.c:131 -msgid "Read 32-bit value from PORT." -msgstr "Прочитати 32-бітове Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð· ПОРТу." - -#: grub-core/commands/iorw.c:135 grub-core/commands/iorw.c:139 -msgid "PORT VALUE [MASK]" -msgstr "ПОРТ ЗÐÐЧЕÐÐЯ [МÐСКÐ]" - -#: grub-core/commands/iorw.c:136 -msgid "Write 8-bit VALUE to PORT." -msgstr "ЗапиÑати 8-бітове ЗÐÐЧЕÐÐЯ до ПОРТу." - -#: grub-core/commands/iorw.c:140 -msgid "Write 16-bit VALUE to PORT." -msgstr "ЗапиÑати 16-бітове ЗÐÐЧЕÐÐЯ до ПОРТу." - -#: grub-core/commands/iorw.c:143 grub-core/commands/memrw.c:137 -#: grub-core/commands/memrw.c:141 grub-core/commands/memrw.c:145 -msgid "ADDR VALUE [MASK]" -msgstr "ÐДРЕСРЗÐÐЧЕÐÐЯ [МÐСКÐ]" - -#: grub-core/commands/iorw.c:144 -msgid "Write 32-bit VALUE to PORT." -msgstr "ЗапиÑати 32-бітове ЗÐÐЧЕÐÐЯ до ПОРТу." - -#: grub-core/commands/keylayouts.c:215 grub-core/commands/loadenv.c:61 -#: grub-core/commands/nativedisk.c:189 grub-core/efiemu/main.c:235 -#: grub-core/font/font.c:428 grub-core/gfxmenu/gfxmenu.c:63 -#: grub-core/kern/device.c:42 grub-core/kern/dl.c:740 -#, c-format -msgid "variable `%s' isn't set" -msgstr "Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð·Ð¼Ñ–Ð½Ð½Ð¾Ñ— «%s» не вÑтановлено" - -#: grub-core/commands/keylayouts.c:301 -msgid "Load a keyboard layout." -msgstr "Завантажити розкладку клавіатури." - -#. TRANSLATORS: "Check" in a sense that if this key is pressed then -#. "true" is returned, otherwise "false". -#: grub-core/commands/keystatus.c:32 -msgid "Check Shift key." -msgstr "Перевірити Ñтан Shift." - -#: grub-core/commands/keystatus.c:33 -msgid "Check Control key." -msgstr "Перевірити Ñтан Ctrl." - -#: grub-core/commands/keystatus.c:34 -msgid "Check Alt key." -msgstr "Перевірити Ñтан Alt." - -#. TRANSLATORS: there are 3 modifiers. -#: grub-core/commands/keystatus.c:106 -msgid "Check key modifier status." -msgstr "Перевірити Ñтан модифікатора клавіатури." - -#: grub-core/commands/legacycfg.c:512 grub-core/commands/legacycfg.c:526 -#: grub-core/commands/legacycfg.c:546 grub-core/commands/legacycfg.c:559 -#: grub-core/commands/time.c:43 grub-core/script/function.c:109 -#: util/grub-file.c:100 util/grub-fstest.c:57 util/grub-mount.c:69 -#, c-format -msgid "can't find command `%s'" -msgstr "не вдалоÑÑ Ð·Ð½Ð°Ð¹Ñ‚Ð¸ команду «%s»" - -#: grub-core/commands/legacycfg.c:813 grub-core/normal/auth.c:225 -#: util/grub-mkpasswd-pbkdf2.c:139 -msgid "Enter password: " -msgstr "Введіть пароль: " - -#. TRANSLATORS: "legacy config" means -#. "config as used by grub-legacy". -#: grub-core/commands/legacycfg.c:837 -msgid "Parse legacy config in same context" -msgstr "Обробити заÑтарілі Ð½Ð°Ð»Ð°ÑˆÑ‚ÑƒÐ²Ð°Ð½Ð½Ñ Ñƒ тому Ñамому контекÑті" - -#: grub-core/commands/legacycfg.c:842 -msgid "Parse legacy config in new context" -msgstr "Обробити заÑтарілі Ð½Ð°Ð»Ð°ÑˆÑ‚ÑƒÐ²Ð°Ð½Ð½Ñ Ñƒ новому контекÑті" - -#: grub-core/commands/legacycfg.c:847 -msgid "Parse legacy config in same context taking only menu entries" -msgstr "" -"Обробити заÑтарілі Ð½Ð°Ð»Ð°ÑˆÑ‚ÑƒÐ²Ð°Ð½Ð½Ñ Ñƒ тому Ñамому контекÑті, викориÑтати лише " -"запиÑи меню" - -#: grub-core/commands/legacycfg.c:852 -msgid "Parse legacy config in new context taking only menu entries" -msgstr "" -"Обробити заÑтарілі Ð½Ð°Ð»Ð°ÑˆÑ‚ÑƒÐ²Ð°Ð½Ð½Ñ Ñƒ новому контекÑті, викориÑтати лише запиÑи " -"меню" - -#: grub-core/commands/legacycfg.c:856 -msgid "[--no-mem-option] [--type=TYPE] FILE [ARG ...]" -msgstr "[--no-mem-option] [--type=ТИП] ФÐЙЛ [ПÐРÐМЕТР ...]" - -#: grub-core/commands/legacycfg.c:857 -msgid "Simulate grub-legacy `kernel' command" -msgstr "Імітувати команду «kernel» попередньої верÑÑ–Ñ— grub" - -#: grub-core/commands/legacycfg.c:861 grub-core/commands/legacycfg.c:865 -msgid "FILE [ARG ...]" -msgstr "ФÐЙЛ [ПÐРÐМЕТР ...]" - -#: grub-core/commands/legacycfg.c:862 -msgid "Simulate grub-legacy `initrd' command" -msgstr "Імітувати команду «initrd» попередньої верÑÑ–Ñ— grub" - -#: grub-core/commands/legacycfg.c:866 -msgid "Simulate grub-legacy `modulenounzip' command" -msgstr "Імітувати команду «modulenounzip» попередньої верÑÑ–Ñ— grub" - -#: grub-core/commands/legacycfg.c:870 grub-core/commands/legacycfg.c:875 -msgid "[--md5] PASSWD [FILE]" -msgstr "[--md5] ПÐРОЛЬ [ФÐЙЛ]" - -#: grub-core/commands/legacycfg.c:871 -msgid "Simulate grub-legacy `password' command" -msgstr "Імітувати команду «password» попередньої верÑÑ–Ñ— grub" - -#: grub-core/commands/legacycfg.c:876 -msgid "Simulate grub-legacy `password' command in menu entry mode" -msgstr "" -"Імітувати команду «password» попередньої верÑÑ–Ñ— grub у режимі пункту меню" - -#. TRANSLATORS: This option is used to override default filename -#. for loading and storing environment. -#: grub-core/commands/loadenv.c:37 -msgid "Specify filename." -msgstr "Вказати назву файла." - -#: grub-core/commands/loadenv.c:39 -msgid "Skip signature-checking of the environment file." -msgstr "ПропуÑтити перевірку підпиÑів файла Ñередовища." - -#: grub-core/commands/loadenv.c:451 -msgid "[-f FILE] [-s|--skip-sig] [variable_name_to_whitelist] [...]" -msgstr "[-f ФÐЙЛ] [-s|--skip-sig] [білий ÑпиÑок змінних] [...]" - -#: grub-core/commands/loadenv.c:452 -msgid "Load variables from environment block file." -msgstr "Завантажити змінні з блокового файла оточеннÑ." - -#: grub-core/commands/loadenv.c:455 -msgid "[-f FILE]" -msgstr "[-f ФÐЙЛ]" - -#: grub-core/commands/loadenv.c:456 -msgid "List variables from environment block file." -msgstr "Показати ÑпиÑок змінних з блокового файла оточеннÑ." - -#: grub-core/commands/loadenv.c:460 -msgid "[-f FILE] variable_name [...]" -msgstr "[-f ФÐЙЛ] назва_змінної [...]" - -#: grub-core/commands/loadenv.c:461 -msgid "Save variables to environment block file." -msgstr "Зберегти змінні до блокового файла оточеннÑ." - -#: grub-core/commands/ls.c:40 -msgid "Show a long list with more detailed information." -msgstr "Показати довгий ÑпиÑок з додатковими відомоÑÑ‚Ñми." - -#: grub-core/commands/ls.c:41 -msgid "Print sizes in a human readable format." -msgstr "Показати розміри у зручному Ð´Ð»Ñ Ñ‡Ð¸Ñ‚Ð°Ð½Ð½Ñ Ñ„Ð¾Ñ€Ð¼Ð°Ñ‚Ñ–." - -#: grub-core/commands/ls.c:42 -msgid "List all files." -msgstr "Показати ÑпиÑок вÑÑ–Ñ… файлів." - -#: grub-core/commands/ls.c:73 -msgid "Network protocols:" -msgstr "Мережеві протоколи:" - -#: grub-core/commands/ls.c:295 -msgid "[-l|-h|-a] [FILE ...]" -msgstr "[-l|-h|-a] [ФÐЙЛ ...]" - -#: grub-core/commands/ls.c:296 -msgid "List devices and files." -msgstr "Показати ÑпиÑок приÑтроїв Ñ– файлів." - -#: grub-core/commands/lsacpi.c:255 -msgid "Show version 1 tables only." -msgstr "Показати лише таблиці верÑÑ–Ñ— 1." - -#: grub-core/commands/lsacpi.c:256 -msgid "Show version 2 and version 3 tables only." -msgstr "Показати лише таблиці верÑÑ–Ñ— 2 Ñ– 3." - -#: grub-core/commands/lsacpi.c:306 -msgid "Show ACPI information." -msgstr "Показати дані щодо ACPI." - -#: grub-core/commands/lsmmap.c:31 -msgid "available RAM" -msgstr "доÑтупна пам’Ñть" - -#: grub-core/commands/lsmmap.c:32 -msgid "reserved RAM" -msgstr "зарезервована пам’Ñть" - -#. TRANSLATORS: this refers to memory where ACPI tables are stored -#. and which can be used by OS once it loads ACPI tables. -#: grub-core/commands/lsmmap.c:35 -msgid "ACPI reclaimable RAM" -msgstr "відновлювана пам’Ñть ACPI" - -#. TRANSLATORS: this refers to memory which ACPI-compliant OS -#. is required to save accross hibernations. -#: grub-core/commands/lsmmap.c:38 -msgid "ACPI non-volatile storage RAM" -msgstr "пам’Ñть Ð´Ð»Ñ Ñталого Ñховища даних ACPI" - -#: grub-core/commands/lsmmap.c:39 -msgid "faulty RAM (BadRAM)" -msgstr "помилка у пам’Ñті (BadRAM)" - -#: grub-core/commands/lsmmap.c:40 -msgid "persistent RAM" -msgstr "поÑтійна пам’Ñть" - -#: grub-core/commands/lsmmap.c:41 -msgid "persistent RAM (legacy)" -msgstr "поÑтійна пам’Ñть (заÑтарілий)" - -#: grub-core/commands/lsmmap.c:42 -msgid "RAM holding coreboot tables" -msgstr "пам’Ñть з таблицÑми coreboot" - -#: grub-core/commands/lsmmap.c:43 -msgid "RAM holding firmware code" -msgstr "пам’Ñть з кодом мікропрограми" - -#: grub-core/commands/lsmmap.c:52 -#, c-format -msgid "base_addr = 0x%llx, length = 0x%llx, %s\n" -msgstr "базова_адреÑа = 0x%llx, довжина = 0x%llx, %s\n" - -#: grub-core/commands/lsmmap.c:55 -#, c-format -msgid "base_addr = 0x%llx, length = 0x%llx, type = 0x%x\n" -msgstr "базова_адреÑа = 0x%llx, довжина = 0x%llx, тип = 0x%x\n" - -#: grub-core/commands/lsmmap.c:79 -msgid "List memory map provided by firmware." -msgstr "Показати карту пам’Ñті, надану мікропрограмою (firmware)." - -#: grub-core/commands/lspci.c:232 -msgid "List PCI devices." -msgstr "Показати ÑпиÑок приÑтроїв PCI." - -#: grub-core/commands/macbless.c:224 -msgid "Bless FILE of HFS or HFS+ partition for intel macs." -msgstr "Схвалити ФÐЙЛ розділу HFS або HFS+ Ð´Ð»Ñ Mac на оÑнові Intel." - -#: grub-core/commands/macbless.c:228 -msgid "Bless DIR of HFS or HFS+ partition for PPC macs." -msgstr "Схвалити КÐТÐЛОГ розділу HFS або HFS+ Ð´Ð»Ñ Mac на оÑнові PPC." - -#: grub-core/commands/memrw.c:125 -msgid "Read 8-bit value from ADDR." -msgstr "Прочитати 8-бітове Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð·Ð° ÐДРЕСОЮ." - -#: grub-core/commands/memrw.c:129 -msgid "Read 16-bit value from ADDR." -msgstr "Прочитати 16-бітове Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð·Ð° ÐДРЕСОЮ." - -#: grub-core/commands/memrw.c:133 -msgid "Read 32-bit value from ADDR." -msgstr "Прочитати 32-бітове Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð·Ð° ÐДРЕСОЮ." - -#: grub-core/commands/memrw.c:138 -msgid "Write 8-bit VALUE to ADDR." -msgstr "ЗапиÑати 8-бітове ЗÐÐЧЕÐÐЯ за ÐДРЕСОЮ." - -#: grub-core/commands/memrw.c:142 -msgid "Write 16-bit VALUE to ADDR." -msgstr "ЗапиÑати 16-бітове ЗÐÐЧЕÐÐЯ за ÐДРЕСОЮ." - -#: grub-core/commands/memrw.c:146 -msgid "Write 32-bit VALUE to ADDR." -msgstr "ЗапиÑати 32-бітове ЗÐÐЧЕÐÐЯ за ÐДРЕСОЮ." - -#: grub-core/commands/menuentry.c:31 -msgid "Menu entry type." -msgstr "Тип запиÑу меню." - -#: grub-core/commands/menuentry.c:31 grub-core/commands/menuentry.c:38 -#: grub-core/commands/menuentry.c:39 grub-core/gettext/gettext.c:520 -#: util/grub-fstest.c:520 util/grub-install.c:291 util/grub-install.c:304 -#: util/grub-mknetdir.c:51 util/grub-mkrescue.c:109 util/grub-mkrescue.c:110 -#: util/grub-mount.c:453 util/grub-render-label.c:65 -msgid "STRING" -msgstr "РЯДОК" - -#: grub-core/commands/menuentry.c:33 -msgid "List of users allowed to boot this entry." -msgstr "СпиÑок кориÑтувачів, Ñкі можуть завантажувати цей пункт." - -#: grub-core/commands/menuentry.c:33 -msgid "USERNAME[,USERNAME]" -msgstr "КОРИСТУВÐЧ[,КОРИСТУВÐЧ]" - -#: grub-core/commands/menuentry.c:36 -msgid "Keyboard key to quickly boot this entry." -msgstr "Клавіша Ð´Ð»Ñ Ð·Ð°Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ Ñ†ÑŒÐ¾Ð³Ð¾ пункту." - -#: grub-core/commands/menuentry.c:36 -msgid "KEYBOARD_KEY" -msgstr "КЛÐВІШÐ" - -#: grub-core/commands/menuentry.c:38 -msgid "Use STRING as menu entry body." -msgstr "ВикориÑтати РЯДОК Ñк текÑÑ‚ пункту меню." - -#: grub-core/commands/menuentry.c:39 -msgid "Menu entry identifier." -msgstr "Ідентифікатор пункту меню." - -#. TRANSLATORS: menu entry can either be bootable by anyone or only by -#. handful of users. By default when security is active only superusers can -#. boot a given menu entry. With --unrestricted (this option) -#. anyone can boot it. -#: grub-core/commands/menuentry.c:44 -msgid "This entry can be booted by any user." -msgstr "СиÑтему цього пункту може завантажувати будь-Ñкий кориÑтувач." - -#: grub-core/commands/menuentry.c:323 grub-core/commands/menuentry.c:328 -#: grub-core/tests/test_blockarg.c:46 -msgid "BLOCK" -msgstr "БЛОК" - -#: grub-core/commands/menuentry.c:323 -msgid "Define a menu entry." -msgstr "Визначити Ð·Ð°Ð¿Ð¸Ñ Ð¼ÐµÐ½ÑŽ." - -#: grub-core/commands/menuentry.c:328 -msgid "Define a submenu." -msgstr "Визначити підменю." - -#. TRANSLATORS: this is module list header. Name -#. is module name, Ref Count is a reference counter -#. (how many modules or open descriptors use it). -#. Dependencies are the other modules it uses. -#. -#: grub-core/commands/minicmd.c:162 -msgid "Name\tRef Count\tDependencies\n" -msgstr "Ðазва\tК-ть поÑилань\tЗалежноÑті\n" - -#: grub-core/commands/minicmd.c:201 -msgid "Show this message." -msgstr "Показати це повідомленнÑ." - -#: grub-core/commands/minicmd.c:204 -msgid "ADDR [SIZE]" -msgstr "ÐДРЕСР[РОЗМІР]" - -#: grub-core/commands/minicmd.c:204 -msgid "Show memory contents." -msgstr "Показати вміÑÑ‚ пам’Ñті." - -#: grub-core/commands/minicmd.c:207 grub-core/kern/corecmd.c:188 -#: util/grub-install.c:275 -msgid "MODULE" -msgstr "МОДУЛЬ" - -#: grub-core/commands/minicmd.c:207 -msgid "Remove a module." -msgstr "Вилучити модуль." - -#: grub-core/commands/minicmd.c:210 -msgid "Show loaded modules." -msgstr "Показати ÑпиÑок завантажених модулів." - -#: grub-core/commands/minicmd.c:213 -msgid "Exit from GRUB." -msgstr "Вийти з GRUB." - -#: grub-core/commands/mips/loongson/lsspd.c:42 -msgid "No CS5536 found" -msgstr "Ðе виÑвлено CS5536" - -#: grub-core/commands/mips/loongson/lsspd.c:45 -#, c-format -msgid "CS5536 at %d:%d.%d\n" -msgstr "CS5536 за адреÑою %d:%d.%d\n" - -#. TRANSLATORS: System management bus is often used to access components like -#. RAM (info only, not data) or batteries. I/O space is where in memory -#. its ports are. -#: grub-core/commands/mips/loongson/lsspd.c:55 -#, c-format -msgid "System management bus controller I/O space is at 0x%x\n" -msgstr "" -"ПроÑтір введеннÑ-Ð²Ð¸Ð²ÐµÐ´ÐµÐ½Ð½Ñ ÐºÐ¾Ð½Ñ‚Ñ€Ð¾Ð»ÐµÑ€Ð° каналу ÐºÐµÑ€ÑƒÐ²Ð°Ð½Ð½Ñ ÑиÑтемою починаєтьÑÑ " -"з 0x%x\n" - -#. TRANSLATORS: it's shown in a report in a way -#. like number 1: ... number 2: ... -#. -#: grub-core/commands/mips/loongson/lsspd.c:66 -#, c-format -msgid "RAM slot number %d\n" -msgstr "Слот пам’Ñті з номером %d\n" - -#: grub-core/commands/mips/loongson/lsspd.c:73 -#, c-format -msgid "Written SPD bytes: %d B.\n" -msgstr "ЗапиÑаних байтів SPD: %d Б.\n" - -#: grub-core/commands/mips/loongson/lsspd.c:74 -#, c-format -msgid "Total flash size: %d B.\n" -msgstr "Загальний об’єм запиÑу: %d Б.\n" - -#: grub-core/commands/mips/loongson/lsspd.c:79 -msgid "Memory type: DDR2." -msgstr "Тип пам’Ñті: DDR2." - -#: grub-core/commands/mips/loongson/lsspd.c:83 -#, c-format -msgid "Part no: %s.\n" -msgstr "Ðомер чаÑтини: %s.\n" - -#: grub-core/commands/mips/loongson/lsspd.c:86 -msgid "Memory type: Unknown." -msgstr "Тип пам’Ñті: невідомий." - -#: grub-core/commands/mips/loongson/lsspd.c:97 -msgid "Print Memory information." -msgstr "Показати дані щодо пам’Ñті." - -#: grub-core/commands/nativedisk.c:118 grub-core/commands/probe.c:118 -#: grub-core/commands/probe.c:124 util/grub-probe.c:450 -#, c-format -msgid "%s does not support UUIDs" -msgstr "У %s не передбачено підтримки UUID" - -#: grub-core/commands/nativedisk.c:325 -msgid "[MODULE1 MODULE2 ...]" -msgstr "[МОДУЛЬ1 МОДУЛЬ2 ...]" - -#: grub-core/commands/nativedisk.c:326 -msgid "" -"Switch to native disk drivers. If no modules are specified default set (pata," -"ahci,usbms,ohci,uhci,ehci) is used" -msgstr "" -"ПеремкнутиÑÑ Ð½Ð° природні драйвери диÑків. Якщо модулів не вказано, " -"викориÑтовуєтьÑÑ Ñ‚Ð¸Ð¿Ð¾Ð²Ð° поÑлідовніÑть (pata,ahci,usbms,ohci,uhci,ehci)." - -#: grub-core/commands/parttool.c:40 -msgid "" -"Perform COMMANDS on partition.\n" -"Use `parttool PARTITION help' for the list of available commands." -msgstr "" -"Виконати КОМÐÐДИ обробки розділу.\n" -"СкориÑтайтеÑÑ ÐºÐ¾Ð¼Ð°Ð½Ð´Ð¾ÑŽ «parttool РОЗДІЛ help», щоб ознайомитиÑÑ Ð· доÑтупними " -"командами." - -#: grub-core/commands/parttool.c:123 -msgid "=VAL" -msgstr "=ЗÐÐЧЕÐÐЯ" - -#: grub-core/commands/parttool.c:136 -#, c-format -msgid "Sorry, no parttool is available for %s\n" -msgstr "Вибачте, не виÑвлено parttool Ð´Ð»Ñ %s\n" - -#: grub-core/commands/parttool.c:288 grub-core/lib/arg.c:285 -#: grub-core/lib/arg.c:351 -#, c-format -msgid "unknown argument `%s'" -msgstr "невідомий аргумент, «%s»" - -#: grub-core/commands/parttool.c:344 -msgid "PARTITION COMMANDS" -msgstr "КОМÐÐДИ РОБОТИ З РОЗДІЛÐМИ" - -#: grub-core/commands/password.c:85 -msgid "USER PASSWORD" -msgstr "ПÐРОЛЬ КОРИСТУВÐЧÐ" - -#: grub-core/commands/password.c:86 -msgid "Set user password (plaintext). Unrecommended and insecure." -msgstr "" -"Визначити пароль кориÑтувача (незашифрованим). Ðебезпечно Ñ– не " -"рекомендуєтьÑÑ." - -#. TRANSLATORS: it means that the string which -#. was supposed to be a password hash doesn't -#. have a correct format, not to password -#. mismatch. -#: grub-core/commands/password_pbkdf2.c:98 -#: grub-core/commands/password_pbkdf2.c:115 -#: grub-core/commands/password_pbkdf2.c:123 -#: grub-core/commands/password_pbkdf2.c:150 -#: grub-core/commands/password_pbkdf2.c:179 -msgid "invalid PBKDF2 password" -msgstr "некоректний пароль PBKDF2" - -#: grub-core/commands/password_pbkdf2.c:202 -msgid "USER PBKDF2_PASSWORD" -msgstr "КОРИСТУВÐЧ ПÐРОЛЬ_PBKDF2" - -#: grub-core/commands/password_pbkdf2.c:203 -msgid "Set user password (PBKDF2). " -msgstr "Ð’Ñтановити пароль кориÑтувача (PBKDF2). " - -#: grub-core/commands/pcidump.c:39 grub-core/commands/setpci.c:69 -msgid "Select device by vendor and device IDs." -msgstr "Вибрати приÑтрій за ідентифікаторами виробника Ñ– приÑтрою." - -#: grub-core/commands/pcidump.c:40 grub-core/commands/setpci.c:70 -msgid "[vendor]:[device]" -msgstr "[виробник]:[приÑтрій]" - -#: grub-core/commands/pcidump.c:41 grub-core/commands/setpci.c:71 -msgid "Select device by its position on the bus." -msgstr "Виберіть приÑтрій за його розташуваннÑм на каналі." - -#: grub-core/commands/pcidump.c:42 grub-core/commands/setpci.c:72 -msgid "[bus]:[slot][.func]" -msgstr "[канал]:[Ñлот][.функціÑ]" - -#: grub-core/commands/pcidump.c:109 grub-core/commands/pcidump.c:138 -#: grub-core/commands/setpci.c:183 grub-core/commands/setpci.c:214 -#: grub-core/fs/zfs/zfs.c:3794 grub-core/kern/emu/hostdisk.c:458 -#: grub-core/kern/emu/hostdisk.c:473 grub-core/kern/file.c:44 -#, c-format -msgid "missing `%c' symbol" -msgstr "не виÑтачає Ñимволу «%c»" - -#: grub-core/commands/pcidump.c:168 -msgid "[-s POSITION] [-d DEVICE]" -msgstr "[-s ПОЗИЦІЯ] [-d ПРИСТРІЙ]" - -#: grub-core/commands/pcidump.c:169 -msgid "Show raw dump of the PCI configuration space." -msgstr "ВивеÑти необроблений дамп проÑтору Ð½Ð°Ð»Ð°ÑˆÑ‚Ð¾Ð²ÑƒÐ²Ð°Ð½Ð½Ñ PCI." - -#: grub-core/commands/pgp.c:45 -msgid "Skip signature-checking of the public key file." -msgstr "ПропуÑтити перевірку файла відкритого ключа." - -#. TRANSLATORS: it's about GNUPG signatures. -#: grub-core/commands/pgp.c:71 grub-core/commands/pgp.c:81 -#: grub-core/commands/pgp.c:86 grub-core/commands/pgp.c:96 -#: grub-core/commands/pgp.c:103 grub-core/commands/pgp.c:107 -#: grub-core/commands/pgp.c:114 grub-core/commands/pgp.c:119 -#: grub-core/commands/pgp.c:124 grub-core/commands/pgp.c:128 -#: grub-core/commands/pgp.c:268 grub-core/commands/pgp.c:276 -#: grub-core/commands/pgp.c:281 grub-core/commands/pgp.c:289 -#: grub-core/commands/pgp.c:320 grub-core/commands/pgp.c:327 -#: grub-core/commands/pgp.c:332 grub-core/commands/pgp.c:342 -#: grub-core/commands/pgp.c:468 grub-core/commands/pgp.c:471 -#: grub-core/commands/pgp.c:474 grub-core/commands/pgp.c:477 -#: grub-core/commands/pgp.c:484 grub-core/commands/pgp.c:490 -#: grub-core/commands/pgp.c:665 -msgid "bad signature" -msgstr "некоректний підпиÑ" - -#. TRANSLATORS: %08x is 32-bit key id. -#: grub-core/commands/pgp.c:636 grub-core/commands/pgp.c:812 -#, c-format -msgid "public key %08x not found" -msgstr "не знайдено відкритого ключа %08x" - -#: grub-core/commands/pgp.c:651 grub-core/disk/diskfilter.c:772 -#: grub-core/disk/diskfilter.c:782 grub-core/fs/ntfs.c:404 -#: grub-core/fs/zfs/zfs.c:1933 grub-core/normal/menu.c:428 -#, c-format -msgid "module `%s' isn't loaded" -msgstr "модуль «%s» не завантажено" - -#: grub-core/commands/pgp.c:994 -msgid "[-s|--skip-sig] FILE SIGNATURE_FILE [PUBKEY_FILE]" -msgstr "[-s|--skip-sig] ФÐЙЛ ФÐЙЛ_ПІДПИСУ [ФÐЙЛ_ВІДКРИТОГО_КЛЮЧÐ]" - -#: grub-core/commands/pgp.c:995 -msgid "Verify detached signature." -msgstr "Перевідкрити від’єднаний підпиÑ." - -#: grub-core/commands/pgp.c:998 -msgid "[-s|--skip-sig] PUBKEY_FILE" -msgstr "[-s|--skip-sig] ФÐЙЛ_ВІДКРИТОГО_КЛЮЧÐ" - -#: grub-core/commands/pgp.c:999 -msgid "Add PUBKEY_FILE to trusted keys." -msgstr "Додати файл ФÐЙЛ_ВІДКРИТОГО_КЛЮЧРдо довірених ключів." - -#: grub-core/commands/pgp.c:1003 -msgid "Show the list of trusted keys." -msgstr "ВивеÑти ÑпиÑок довірених ключів." - -#: grub-core/commands/pgp.c:1005 -msgid "PUBKEY_ID" -msgstr "ІД_ВІДКР_КЛЮЧÐ" - -#: grub-core/commands/pgp.c:1006 -msgid "Remove PUBKEY_ID from trusted keys." -msgstr "Вилучити ІД_ВІДКР_КЛЮЧРз довірених ключів." - -#: grub-core/commands/probe.c:40 grub-core/commands/tr.c:32 -msgid "Set a variable to return value." -msgstr "Ð’Ñтановити змінну Ð´Ð»Ñ Ð¿Ð¾Ð²ÐµÑ€Ð½ÑƒÑ‚Ð¾Ð³Ð¾ значеннÑ." - -#. TRANSLATORS: It's a driver that is currently in use to access -#. the diven disk. -#: grub-core/commands/probe.c:43 -msgid "Determine driver." -msgstr "Визначити драйвер." - -#: grub-core/commands/probe.c:44 -msgid "Determine partition map type." -msgstr "Визначити тип карти розділів." - -#: grub-core/commands/probe.c:45 -msgid "Determine filesystem type." -msgstr "Визначити тип файлової ÑиÑтеми." - -#: grub-core/commands/probe.c:46 -msgid "Determine filesystem UUID." -msgstr "Визначити UUID файлової ÑиÑтеми." - -#: grub-core/commands/probe.c:47 -msgid "Determine filesystem label." -msgstr "Визначити мітку файлової ÑиÑтеми." - -#: grub-core/commands/probe.c:139 grub-core/commands/probe.c:146 -#: util/grub-probe.c:462 -#, c-format -msgid "filesystem `%s' does not support labels" -msgstr "у файловій ÑиÑтемі %s не передбачено підтримки міток" - -#: grub-core/commands/probe.c:165 grub-core/fs/zfs/zfsinfo.c:430 -#: grub-core/loader/i386/bsd.c:169 util/grub-setup.c:223 -msgid "DEVICE" -msgstr "ПРИСТРІЙ" - -#: grub-core/commands/probe.c:166 -msgid "Retrieve device info." -msgstr "Отримати відомоÑті щодо приÑтрою." - -#: grub-core/commands/read.c:85 -msgid "[ENVVAR]" -msgstr "[ЗМІÐÐÐ_СЕРЕДОВИЩÐ]" - -#: grub-core/commands/read.c:86 -msgid "Set variable with user input." -msgstr "Визначити Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð·Ð¼Ñ–Ð½Ð½Ð¾Ñ— за введеними кориÑтувачем даними." - -#: grub-core/commands/reboot.c:40 -msgid "Reboot the computer." -msgstr "Перезавантажити комп’ютер." - -#. TRANSLATORS: in regexp you can mark some -#. groups with parentheses. These groups are -#. then numbered and you can save some of -#. them in variables. In other programs -#. those components aree often referenced with -#. back slash, e.g. \1. Compare -#. sed -e 's,\([a-z][a-z]*\),lowercase=\1,g' -#. The whole matching component is saved in VARNAME, not its number. -#. -#: grub-core/commands/regexp.c:44 -msgid "Store matched component NUMBER in VARNAME." -msgstr "Зберегти компонент з номером ÐОМЕР до змінної ÐÐЗВÐ_ЗМІÐÐОЇ." - -#: grub-core/commands/regexp.c:45 -msgid "[NUMBER:]VARNAME" -msgstr "[ÐОМЕР:]ÐÐЗВÐ_ЗМІÐÐОЇ" - -#. TRANSLATORS: This are two arguments. So it's -#. two separate units to translate and pay -#. attention not to reverse them. -#: grub-core/commands/regexp.c:157 -msgid "REGEXP STRING" -msgstr "ФОРМÐЛЬÐИЙ_ВИРÐЗ РЯДОК" - -#: grub-core/commands/regexp.c:158 -msgid "Test if REGEXP matches STRING." -msgstr "Перевірити відповідніÑть ФОРМÐЛЬÐОГО ВИРÐЗУ РЯДКУ." - -#: grub-core/commands/search.c:324 -msgid "NAME [VARIABLE] [HINTS]" -msgstr "ÐÐЗВР[ЗМІÐÐÐ] [ПІДКÐЗКИ]" - -#: grub-core/commands/search_file.c:4 -msgid "" -"Search devices by file. If VARIABLE is specified, the first device found is " -"set to a variable." -msgstr "" -"Шукати приÑтрої за файлом. Якщо вказано ЗМІÐÐУ, їй буде надано Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ " -"першого знайденого приÑтрою." - -#: grub-core/commands/search_label.c:4 -msgid "" -"Search devices by label. If VARIABLE is specified, the first device found is " -"set to a variable." -msgstr "" -"Шукати приÑтрої за міткою. Якщо вказано ЗМІÐÐУ, їй буде надано Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ " -"першого знайденого приÑтрою." - -#: grub-core/commands/search_uuid.c:4 -msgid "" -"Search devices by UUID. If VARIABLE is specified, the first device found is " -"set to a variable." -msgstr "" -"Шукати приÑтрої за UUID. Якщо вказано ЗМІÐÐУ, їй буде надано Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ " -"першого знайденого приÑтрою." - -#: grub-core/commands/search_wrap.c:34 -msgid "Search devices by a file." -msgstr "Шукати приÑтрої за файлом." - -#: grub-core/commands/search_wrap.c:35 -msgid "Search devices by a filesystem label." -msgstr "Шукати приÑтрої за міткою файлової ÑиÑтеми." - -#: grub-core/commands/search_wrap.c:37 -msgid "Search devices by a filesystem UUID." -msgstr "Шукати приÑтрої за UUID файлової ÑиÑтеми." - -#: grub-core/commands/search_wrap.c:40 -msgid "Set a variable to the first device found." -msgstr "Ð’Ñтановити Ð´Ð»Ñ Ð·Ð¼Ñ–Ð½Ð½Ð¾Ñ— Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð¿ÐµÑ€ÑˆÐ¾Ð³Ð¾ знайденого приÑтрою." - -#: grub-core/commands/search_wrap.c:42 -msgid "Do not probe any floppy drive." -msgstr "Ðе шукати на диÑкетах." - -#: grub-core/commands/search_wrap.c:44 -msgid "" -"First try the device HINT. If HINT ends in comma, also try subpartitions" -msgstr "" -"Спершу Ñпробувати приÑтрій ПІДКÐЗКÐ. Якщо Ð·Ð°Ð¿Ð¸Ñ ÐŸÐ†Ð”ÐšÐЗКРзавершуєтьÑÑ ÐºÐ¾Ð¼Ð¾ÑŽ, " -"також Ñпробувати пошук на вкладених розділах." - -#: grub-core/commands/search_wrap.c:45 grub-core/commands/search_wrap.c:49 -#: grub-core/commands/search_wrap.c:53 grub-core/commands/search_wrap.c:57 -#: grub-core/commands/search_wrap.c:61 grub-core/commands/search_wrap.c:65 -msgid "HINT" -msgstr "ПІДКÐЗКÐ" - -#: grub-core/commands/search_wrap.c:47 -msgid "" -"First try the device HINT if currently running on IEEE1275. If HINT ends in " -"comma, also try subpartitions" -msgstr "" -"Спершу Ñпробувати приÑтрій ПІДКÐЗКРу разі викориÑÑ‚Ð°Ð½Ð½Ñ IEEE1275. Якщо Ð·Ð°Ð¿Ð¸Ñ " -"ПІДКÐЗКРзавершуєтьÑÑ ÐºÐ¾Ð¼Ð¾ÑŽ, також Ñпробувати вкладені розділи." - -#: grub-core/commands/search_wrap.c:51 -msgid "" -"First try the device HINT if currently running on BIOS. If HINT ends in " -"comma, also try subpartitions" -msgstr "" -"Спершу Ñпробувати приÑтрій ПІДКÐЗКРу разі викориÑÑ‚Ð°Ð½Ð½Ñ BIOS. Якщо Ð·Ð°Ð¿Ð¸Ñ " -"ПІДКÐЗКРзавершуєтьÑÑ ÐºÐ¾Ð¼Ð¾ÑŽ, також Ñпробувати вкладені розділи." - -#: grub-core/commands/search_wrap.c:55 -msgid "" -"First try the device HINT if direct hardware access is supported. If HINT " -"ends in comma, also try subpartitions" -msgstr "" -"Спершу Ñпробувати приÑтрій ПІДКÐЗКРу разі підтримки безпоÑереднього доÑтупу " -"до обладнаннÑ. Якщо Ð·Ð°Ð¿Ð¸Ñ ÐŸÐ†Ð”ÐšÐЗКРзавершуєтьÑÑ ÐºÐ¾Ð¼Ð¾ÑŽ, також Ñпробувати " -"вкладені розділи." - -#: grub-core/commands/search_wrap.c:59 -msgid "" -"First try the device HINT if currently running on EFI. If HINT ends in " -"comma, also try subpartitions" -msgstr "" -"Спершу Ñпробувати приÑтрій ПІДКÐЗКРу разі викориÑÑ‚Ð°Ð½Ð½Ñ EFI. Якщо Ð·Ð°Ð¿Ð¸Ñ " -"ПІДКÐЗКРзавершуєтьÑÑ ÐºÐ¾Ð¼Ð¾ÑŽ, також Ñпробувати вкладені розділи." - -#: grub-core/commands/search_wrap.c:63 -msgid "" -"First try the device HINT if currently running on ARC. If HINT ends in " -"comma, also try subpartitions" -msgstr "" -"Спершу Ñпробувати приÑтрій ПІДКÐЗКРу разі викориÑÑ‚Ð°Ð½Ð½Ñ ARC. Якщо Ð·Ð°Ð¿Ð¸Ñ " -"ПІДКÐЗКРзавершуєтьÑÑ ÐºÐ¾Ð¼Ð¾ÑŽ, також Ñпробувати вкладені розділи." - -#: grub-core/commands/search_wrap.c:207 -msgid "[-f|-l|-u|-s|-n] [--hint HINT [--hint HINT] ...] NAME" -msgstr "[-f|-l|-u|-s|-n] [--hint ПІДКÐЗКР[--hint ПІДКÐЗКÐ] ...] ÐÐЗВÐ" - -#: grub-core/commands/search_wrap.c:209 -msgid "" -"Search devices by file, filesystem label or filesystem UUID. If --set is " -"specified, the first device found is set to a variable. If no variable name " -"is specified, `root' is used." -msgstr "" -"Шукати приÑтрої за файлом, міткою файлової ÑиÑтеми або унікальним " -"ідентифікатором файлової ÑиÑтеми (UUID). Якщо вказано параметр --set, " -"змінній буде надано Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð¿ÐµÑ€ÑˆÐ¾Ð³Ð¾ знайденого приÑтрою. Якщо назви змінної " -"не буде вказано, буде викориÑтано назву «root»." - -#: grub-core/commands/setpci.c:132 -#, c-format -msgid "Register %x of %x:%02x.%x is %x\n" -msgstr "РегіÑтр %x з %x:%02x.%x дорівнює %x\n" - -#: grub-core/commands/setpci.c:333 -msgid "[-s POSITION] [-d DEVICE] [-v VAR] REGISTER[=VALUE[:MASK]]" -msgstr "[-s ПОЗИЦІЯ] [-d ПРИСТРІЙ] [-v ЗМІÐÐÐ] РЕГІСТР[=ЗÐÐЧЕÐÐЯ[:МÐСКÐ]]" - -#: grub-core/commands/setpci.c:335 -msgid "Manipulate PCI devices." -msgstr "Керувати приÑтроÑми PCI." - -#: grub-core/commands/sleep.c:32 -msgid "Verbose countdown." -msgstr "Докладний зворотний відлік." - -#: grub-core/commands/sleep.c:33 -msgid "Allow to interrupt with ESC." -msgstr "Дозволити перервати за допомогою ESC." - -#: grub-core/commands/sleep.c:109 -msgid "NUMBER_OF_SECONDS" -msgstr "КІЛЬКІСТЬ СЕКУÐД" - -#: grub-core/commands/sleep.c:110 -msgid "Wait for a specified number of seconds." -msgstr "Очікувати протÑгом вказаної кількоÑті Ñекунд." - -#: grub-core/commands/syslinuxcfg.c:50 util/grub-syslinux2cfg.c:66 -msgid "root directory of the syslinux disk [default=/]." -msgstr "кореневий каталог диÑка syslinux [типово /]." - -#: grub-core/commands/syslinuxcfg.c:53 util/grub-syslinux2cfg.c:72 -msgid "" -"current directory of syslinux [default is parent directory of input file]." -msgstr "" -"поточний каталог налаштувань syslinux (типовим Ñ” батьківÑький каталог файла " -"вхідних даних)." - -#: grub-core/commands/syslinuxcfg.c:55 util/grub-syslinux2cfg.c:75 -msgid "assume input is an isolinux configuration file." -msgstr "вважати вхідні дані файлом налаштувань isolinux." - -#: grub-core/commands/syslinuxcfg.c:56 util/grub-syslinux2cfg.c:76 -msgid "assume input is a pxelinux configuration file." -msgstr "вважати вхідні дані файлом налаштувань pxelinux." - -#: grub-core/commands/syslinuxcfg.c:57 util/grub-syslinux2cfg.c:77 -msgid "assume input is a syslinux configuration file." -msgstr "вважати вхідні дані файлом налаштувань syslinux." - -#. TRANSLATORS: "syslinux config" means -#. "config as used by syslinux". -#: grub-core/commands/syslinuxcfg.c:189 -msgid "Execute syslinux config in same context" -msgstr "Виконати Ð½Ð°Ð»Ð°ÑˆÑ‚ÑƒÐ²Ð°Ð½Ð½Ñ syslinux у тому Ñамому контекÑті" - -#: grub-core/commands/syslinuxcfg.c:195 -msgid "Execute syslinux config in new context" -msgstr "Виконати Ð½Ð°Ð»Ð°ÑˆÑ‚ÑƒÐ²Ð°Ð½Ð½Ñ syslinux у новому контекÑті" - -#: grub-core/commands/syslinuxcfg.c:201 -msgid "Execute syslinux config in same context taking only menu entries" -msgstr "" -"Виконати Ð½Ð°Ð»Ð°ÑˆÑ‚ÑƒÐ²Ð°Ð½Ð½Ñ syslinux у тому Ñамому контекÑті, викориÑтати лише " -"запиÑи меню" - -#: grub-core/commands/syslinuxcfg.c:207 -msgid "Execute syslinux config in new context taking only menu entries" -msgstr "" -"Виконати Ð½Ð°Ð»Ð°ÑˆÑ‚ÑƒÐ²Ð°Ð½Ð½Ñ syslinux у новому контекÑті, викориÑтати лише запиÑи " -"меню" - -#: grub-core/commands/terminal.c:90 -msgid "no terminal specified" -msgstr "не вказано терміналів" - -#: grub-core/commands/terminal.c:112 grub-core/commands/terminal.c:139 -#, c-format -msgid "terminal `%s' isn't found" -msgstr "не знайдено термінала «%s»" - -#: grub-core/commands/terminal.c:244 -msgid "Active input terminals:" -msgstr "Ðктивні термінали Ð²Ð²ÐµÐ´ÐµÐ½Ð½Ñ Ð´Ð°Ð½Ð¸Ñ…:" - -#: grub-core/commands/terminal.c:245 -msgid "Available input terminals:" -msgstr "ДоÑтупні термінали Ð²Ð²ÐµÐ´ÐµÐ½Ð½Ñ Ð´Ð°Ð½Ð¸Ñ…:" - -#: grub-core/commands/terminal.c:261 -msgid "Active output terminals:" -msgstr "Ðктивні термінали Ð²Ð¸Ð²ÐµÐ´ÐµÐ½Ð½Ñ Ð´Ð°Ð½Ð¸Ñ…:" - -#: grub-core/commands/terminal.c:262 -msgid "Available output terminals:" -msgstr "ДоÑтупні термінали Ð²Ð¸Ð²ÐµÐ´ÐµÐ½Ð½Ñ Ð´Ð°Ð½Ð¸Ñ…:" - -#: grub-core/commands/terminal.c:271 grub-core/commands/terminal.c:276 -msgid "[--append|--remove] [TERMINAL1] [TERMINAL2] ..." -msgstr "[--append|--remove] [ТЕРМІÐÐЛ1] [ТЕРМІÐÐЛ2] ..." - -#: grub-core/commands/terminal.c:273 -msgid "List or select an input terminal." -msgstr "Показати ÑпиÑок або вибрати термінал Ð´Ð»Ñ Ð²Ð²ÐµÐ´ÐµÐ½Ð½Ñ Ð´Ð°Ð½Ð¸Ñ…." - -#: grub-core/commands/terminal.c:278 -msgid "List or select an output terminal." -msgstr "Показати ÑпиÑок або вибрати термінал Ð´Ð»Ñ Ð²Ð¸Ð²ÐµÐ´ÐµÐ½Ð½Ñ Ð´Ð°Ð½Ð¸Ñ…." - -#: grub-core/commands/test.c:444 -msgid "EXPRESSION ]" -msgstr "ВИРÐЗ ]" - -#: grub-core/commands/test.c:444 grub-core/commands/test.c:447 -msgid "Evaluate an expression." -msgstr "ОбчиÑлити Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð²Ð¸Ñ€Ð°Ð·Ñƒ." - -#: grub-core/commands/test.c:447 -msgid "EXPRESSION" -msgstr "ВИРÐЗ" - -#: grub-core/commands/testload.c:164 -msgid "Load the same file in multiple ways." -msgstr "Завантажити файл у декілька ÑпоÑобів." - -#: grub-core/commands/testspeed.c:35 -msgid "Specify size for each read operation" -msgstr "Вкажіть розмір Ð´Ð»Ñ ÐºÐ¾Ð¶Ð½Ð¾Ñ— з дій щодо читаннÑ" - -#: grub-core/commands/testspeed.c:58 -msgid "invalid block size" -msgstr "некоректний розмір блоку" - -#: grub-core/commands/testspeed.c:80 -#, c-format -msgid "File size: %s\n" -msgstr "Розмір файла: %s\n" - -#: grub-core/commands/testspeed.c:83 -#, c-format -msgid "Elapsed time: %d.%03d s \n" -msgstr "Витрачено чаÑу: %d.%03d Ñ \n" - -#: grub-core/commands/testspeed.c:92 -#, c-format -msgid "Speed: %s \n" -msgstr "ШвидкіÑть: %s \n" - -#: grub-core/commands/testspeed.c:107 -msgid "[-s SIZE] FILENAME" -msgstr "[-s РОЗМІР] ÐÐЗВÐ_ФÐЙЛÐ" - -#: grub-core/commands/testspeed.c:108 -msgid "Test file read speed." -msgstr "ТеÑтувати швидкіÑть Ñ‡Ð¸Ñ‚Ð°Ð½Ð½Ñ Ñ„Ð°Ð¹Ð»Ð°." - -#: grub-core/commands/time.c:38 grub-core/script/execute.c:974 -msgid "no command is specified" -msgstr "не вказано команди" - -#: grub-core/commands/time.c:50 -#, c-format -msgid "Elapsed time: %d.%03d seconds \n" -msgstr "Витрачено чаÑу: %d.%03d Ñекунд \n" - -#: grub-core/commands/time.c:61 -msgid "COMMAND [ARGS]" -msgstr "КОМÐÐДР[ПÐРÐМЕТРИ]" - -#: grub-core/commands/time.c:62 -msgid "Measure time used by COMMAND" -msgstr "ВимірÑти чаÑ, викориÑтаний на Ð²Ð¸ÐºÐ¾Ð½Ð°Ð½Ð½Ñ ÐšÐžÐœÐÐДИ" - -#: grub-core/commands/tr.c:33 -msgid "Translate to upper case." -msgstr "Перетворити на Ñимволи верхнього регіÑтру." - -#: grub-core/commands/tr.c:34 -msgid "Translate to lower case." -msgstr "Перетворити на Ñимволи нижнього регіÑтру." - -#: grub-core/commands/tr.c:119 -msgid "[OPTIONS] [SET1] [SET2] [STRING]" -msgstr "[ПÐРÐМЕТРИ] [ÐÐБІР1] [ÐÐБІР2] [РЯДОК]" - -#: grub-core/commands/tr.c:120 -msgid "Translate SET1 characters to SET2 in STRING." -msgstr "Виконати у РЯДКУ Ð¿ÐµÑ€ÐµÑ‚Ð²Ð¾Ñ€ÐµÐ½Ð½Ñ Ñимволів з ÐÐБОРУ1 до ÐÐБОРУ2." - -#. TRANSLATORS: it's a command description. -#: grub-core/commands/true.c:50 -msgid "Do nothing, successfully." -msgstr "Ðічого не виконувати, уÑпішне завершеннÑ." - -#. TRANSLATORS: it's a command description. -#: grub-core/commands/true.c:54 -msgid "Do nothing, unsuccessfully." -msgstr "Ðічого не виконувати, невдале завершеннÑ." - -#: grub-core/commands/usbtest.c:221 -msgid "Test USB support." -msgstr "Перевірка підтримки USB." - -#: grub-core/commands/verifiers.c:120 -#, c-format -msgid "verification requested but nobody cares: %s" -msgstr "" -"отримано запит щодо перевірки, але обробки результатів не передбачено: %s" - -#: grub-core/commands/verifiers.c:140 -msgid "big file signature isn't implemented yet" -msgstr "підтримку великих підпиÑів файлів ще не реалізовано" - -#: grub-core/commands/videoinfo.c:61 -msgid "Text-only " -msgstr "Лише текÑÑ‚ " - -#. TRANSLATORS: "Direct color" is a mode when the color components -#. are written dirrectly into memory. -#: grub-core/commands/videoinfo.c:66 -#, c-format -msgid "Direct color, mask: %d/%d/%d/%d pos: %d/%d/%d/%d" -msgstr "БезпоÑередній колір, маÑка: %d/%d/%d/%d позиціÑ: %d/%d/%d/%d" - -#. TRANSLATORS: In "paletted color" mode you write the index of the color -#. in the palette. Synonyms include "packed pixel". -#: grub-core/commands/videoinfo.c:78 -msgid "Paletted " -msgstr "З палітри " - -#: grub-core/commands/videoinfo.c:80 -msgid "YUV " -msgstr "YUV " - -#. TRANSLATORS: "Planar" is the video memory where you have to write -#. in several different banks "plans" to control the different color -#. components of the same pixel. -#: grub-core/commands/videoinfo.c:85 -msgid "Planar " -msgstr "Площинний " - -#: grub-core/commands/videoinfo.c:87 -msgid "Hercules " -msgstr "Hercules " - -#: grub-core/commands/videoinfo.c:89 -msgid "CGA " -msgstr "CGA " - -#. TRANSLATORS: Non-chain 4 is a 256-color planar -#. (unchained) video memory mode. -#: grub-core/commands/videoinfo.c:93 -msgid "Non-chain 4 " -msgstr "Ðеланцюжковий 4 " - -#: grub-core/commands/videoinfo.c:95 -msgid "Monochrome " -msgstr "Чорно-білий " - -#: grub-core/commands/videoinfo.c:97 -msgid "Unknown video mode " -msgstr "Ðевідоме відео режим" - -#: grub-core/commands/videoinfo.c:111 -msgid " EDID checksum invalid" -msgstr " Ðекоректна контрольна Ñума EDID" - -#: grub-core/commands/videoinfo.c:116 -#, c-format -msgid " EDID version: %u.%u\n" -msgstr " ВерÑÑ–Ñ EDID: %u.%u\n" - -#: grub-core/commands/videoinfo.c:120 -#, c-format -msgid " Preferred mode: %ux%u\n" -msgstr " Пріоритетний режим: %ux%u\n" - -#: grub-core/commands/videoinfo.c:123 -msgid " No preferred mode available\n" -msgstr " Пріоритетний режим недоÑтупний\n" - -#: grub-core/commands/videoinfo.c:146 grub-core/video/video.c:490 -#: grub-core/video/video.c:498 grub-core/video/video.c:509 -#: grub-core/video/video.c:520 grub-core/video/video.c:528 -#, c-format -msgid "invalid video mode specification `%s'" -msgstr "некоректна ÑÐ¿ÐµÑ†Ð¸Ñ„Ñ–ÐºÐ°Ñ†Ñ–Ñ Ð²Ñ–Ð´ÐµÐ¾Ñ€ÐµÐ¶Ð¸Ð¼Ñƒ, «%s»" - -#: grub-core/commands/videoinfo.c:168 -msgid "List of supported video modes:" -msgstr "СпиÑок підтримуваних відеорежимів:" - -#: grub-core/commands/videoinfo.c:169 -msgid "Legend: mask/position=red/green/blue/reserved" -msgstr "ПозначеннÑ: маÑка/позиціÑ=червоний/зелений/Ñиній/додатковий" - -#: grub-core/commands/videoinfo.c:176 -#, c-format -msgid "Adapter `%s':\n" -msgstr "Ðдаптер «%s»:\n" - -#: grub-core/commands/videoinfo.c:180 -msgid " No info available" -msgstr " Дані недоÑтупні" - -#: grub-core/commands/videoinfo.c:198 -msgid " Failed to initialize video adapter" -msgstr " Ðе вдалоÑÑ Ñ–Ð½Ñ–Ñ†Ñ–Ð°Ð»Ñ–Ð·ÑƒÐ²Ð°Ñ‚Ð¸ відеоадаптер" - -#. TRANSLATORS: "x" has to be entered in, -#. like an identifier, so please don't -#. use better Unicode codepoints. -#: grub-core/commands/videoinfo.c:239 grub-core/commands/videoinfo.c:248 -msgid "[WxH[xD]]" -msgstr "[ШxÐ’[xГ]]" - -#: grub-core/commands/videoinfo.c:240 grub-core/commands/videoinfo.c:249 -msgid "" -"List available video modes. If resolution is given show only modes matching " -"it." -msgstr "" -"Показати ÑпиÑок доÑтупних відеорежимів. Якщо буде вказано роздільну " -"здатніÑть, у ÑпиÑку залишатьÑÑ Ð»Ð¸ÑˆÐµ режими, Ñкі їй відповідають." - -#. TRANSLATORS: "x" has to be entered in, -#. like an identifier, so please don't -#. use better Unicode codepoints. -#: grub-core/commands/videotest.c:225 -msgid "[WxH]" -msgstr "[ШxÐ’]" - -#. TRANSLATORS: Here, on the other hand, it's -#. nicer to use unicode cross instead of x. -#: grub-core/commands/videotest.c:228 -msgid "Test video subsystem in mode WxH." -msgstr "Перевірити відеопідÑиÑтему у режимі Ð’xШ." - -#: grub-core/commands/videotest.c:231 -msgid "Test video subsystem." -msgstr "Перевірити відеопідÑиÑтему." - -#: grub-core/commands/xen/lsxen.c:80 grub-core/commands/xen/lsxen.c:82 -msgid "[DIR]" -msgstr "[КÐТÐЛОГ]" - -#: grub-core/commands/xen/lsxen.c:81 grub-core/commands/xen/lsxen.c:83 -msgid "List Xen storage." -msgstr "Показати ÑпиÑок елементів Ñховища Xen." - -#. TRANSLATORS: GRUBUUID stands for "filesystem -#. UUID as used in GRUB". -#: grub-core/commands/xnu_uuid.c:110 -msgid "[-l] GRUBUUID [VARNAME]" -msgstr "[-l] UUID_GRUB [ÐÐЗВÐ_ЗМІÐÐОЇ]" - -#: grub-core/commands/xnu_uuid.c:111 -msgid "" -"Transform 64-bit UUID to format suitable for XNU. If -l is given keep it " -"lowercase as done by blkid." -msgstr "" -"Перетворити 64-бітове Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ UUID у формат, що відповідає XNU. Якщо " -"вказано -l, залишати літери малими, Ñк у даних blkid." - -#: grub-core/disk/arc/arcdisk.c:248 grub-core/disk/efi/efidisk.c:603 -#: grub-core/disk/i386/pc/biosdisk.c:498 grub-core/disk/i386/pc/biosdisk.c:543 -#: grub-core/disk/ieee1275/nand.c:198 grub-core/disk/ieee1275/obdisk.c:527 -#: grub-core/disk/ieee1275/ofdisk.c:586 -#, c-format -msgid "failure reading sector 0x%llx from `%s'" -msgstr "помилка під Ñ‡Ð°Ñ Ñ‡Ð¸Ñ‚Ð°Ð½Ð½Ñ Ñектора 0x%llx з «%s»" - -#: grub-core/disk/arc/arcdisk.c:284 grub-core/disk/efi/efidisk.c:626 -#: grub-core/disk/i386/pc/biosdisk.c:548 grub-core/disk/ieee1275/ofdisk.c:606 -#, c-format -msgid "failure writing sector 0x%llx to `%s'" -msgstr "помилка під Ñ‡Ð°Ñ Ñпроби запиÑу Ñектора 0x%llx до «%s»" - -#: grub-core/disk/cryptodisk.c:40 -msgid "Mount by UUID." -msgstr "Змонтувати за UUID." - -#. TRANSLATORS: It's still restricted to cryptodisks only. -#: grub-core/disk/cryptodisk.c:42 -msgid "Mount all." -msgstr "Змонтувати вÑÑ–." - -#: grub-core/disk/cryptodisk.c:43 -msgid "Mount all volumes with `boot' flag set." -msgstr "Змонтувати вÑÑ– томи зі вÑтановленим прапорцем «boot»." - -#. TRANSLATORS: The first %s is the file being looked at, the second %s is -#. the error message. -#: grub-core/disk/cryptodisk.c:526 grub-core/kern/emu/hostdisk.c:152 -#: grub-core/kern/emu/hostdisk.c:262 grub-core/kern/emu/hostdisk.c:434 -#: grub-core/kern/emu/misc.c:168 grub-core/kern/emu/misc.c:174 -#: grub-core/kern/emu/misc.c:196 grub-core/osdep/bsd/getroot.c:92 -#: grub-core/osdep/bsd/getroot.c:168 grub-core/osdep/hurd/getroot.c:68 -#: grub-core/osdep/linux/blocklist.c:65 grub-core/osdep/linux/getroot.c:150 -#: grub-core/osdep/linux/hostdisk.c:194 grub-core/osdep/linux/hostdisk.c:421 -#: grub-core/osdep/linux/ofpath.c:417 grub-core/osdep/linux/ofpath.c:422 -#: grub-core/osdep/linux/ofpath.c:517 grub-core/osdep/linux/ofpath.c:530 -#: grub-core/osdep/sun/getroot.c:110 grub-core/osdep/windows/blocklist.c:98 -#: grub-core/tests/video_checksum.c:279 util/editenv.c:46 util/glue-efi.c:115 -#: util/glue-efi.c:120 util/glue-efi.c:130 util/grub-editenv.c:138 -#: util/grub-editenv.c:192 util/grub-file.c:83 util/grub-fstest.c:128 -#: util/grub-fstest.c:568 util/grub-install-common.c:92 -#: util/grub-install-common.c:94 util/grub-install-common.c:101 -#: util/grub-install-common.c:529 util/grub-menulst2cfg.c:53 -#: util/grub-menulst2cfg.c:68 util/grub-mkimage.c:292 util/grub-mklayout.c:504 -#: util/grub-mklayout.c:516 util/grub-mknetdir.c:133 util/grub-mknetdir.c:151 -#: util/grub-mkrescue.c:627 util/grub-mkrescue.c:631 util/grub-mkrescue.c:879 -#: util/grub-mkrescue.c:883 util/grub-mkstandalone.c:253 util/grub-mount.c:498 -#: util/grub-render-label.c:169 util/grub-script-check.c:175 -#: util/grub-syslinux2cfg.c:181 util/grub-syslinux2cfg.c:191 -#: util/grub-syslinux2cfg.c:212 util/grub-syslinux2cfg.c:228 util/misc.c:91 -#: util/render-label.c:76 util/render-label.c:163 util/render-label.c:174 -#: util/resolve.c:246 util/setup.c:783 -#, c-format -msgid "cannot open `%s': %s" -msgstr "не вдалоÑÑ Ð²Ñ–Ð´ÐºÑ€Ð¸Ñ‚Ð¸ «%s»: %s" - -#: grub-core/disk/cryptodisk.c:583 grub-core/disk/cryptodisk.c:628 -#: grub-core/kern/emu/hostdisk.c:270 grub-core/kern/emu/hostfs.c:142 -#: grub-core/osdep/linux/hostdisk.c:456 util/grub-editenv.c:143 -#: util/grub-editenv.c:149 util/grub-fstest.c:320 util/misc.c:111 -#, c-format -msgid "cannot seek `%s': %s" -msgstr "не вдалоÑÑ Ð²Ð¸ÐºÐ¾Ð½Ð°Ñ‚Ð¸ seek Ð´Ð»Ñ Â«%s»: %s" - -#: grub-core/disk/cryptodisk.c:1144 -msgid "SOURCE|-u UUID|-a|-b" -msgstr "ДЖЕРЕЛО|-u UUID|-a|-b" - -#: grub-core/disk/cryptodisk.c:1145 -msgid "Mount a crypto device." -msgstr "Змонтувати приÑтрій з шифруваннÑм даних." - -#. TRANSLATORS: This message kicks in during the detection of -#. which modules needs to be included in core image. This happens -#. in the case of degraded RAID and means that autodetection may -#. fail to include some of modules. It's an installation time -#. message, not runtime message. -#: grub-core/disk/diskfilter.c:343 grub-core/disk/diskfilter.c:376 -#, c-format -msgid "" -"Couldn't find physical volume `%s'. Some modules may be missing from core " -"image." -msgstr "" -"Ðе вдалоÑÑ Ð·Ð½Ð°Ð¹Ñ‚Ð¸ фізичний том «%s». Можливо, у оÑновному образі не виÑтачає " -"ÑкихоÑÑŒ модулів." - -#: grub-core/disk/diskfilter.c:480 -#, c-format -msgid "physical volume %s not found" -msgstr "не знайдено фізичного тому %s" - -#: grub-core/disk/efi/efidisk.c:600 grub-core/disk/efi/efidisk.c:623 -#, c-format -msgid "no media in `%s'" -msgstr "немає ноÑÑ–Ñ Ð´Ð°Ð½Ð¸Ñ… у «%s»" - -#: grub-core/disk/geli.c:75 -msgid "Couldn't load sha256" -msgstr "Ðе вдалоÑÑ Ð·Ð°Ð²Ð°Ð½Ñ‚Ð°Ð¶Ð¸Ñ‚Ð¸ sha256" - -#: grub-core/disk/geli.c:85 -msgid "Couldn't load sha512" -msgstr "Ðе вдалоÑÑ Ð·Ð°Ð²Ð°Ð½Ñ‚Ð°Ð¶Ð¸Ñ‚Ð¸ sha512" - -#: grub-core/disk/geli.c:216 grub-core/disk/geli.c:220 -msgid "couldn't read ELI metadata" -msgstr "не вдалоÑÑ Ð¿Ñ€Ð¾Ñ‡Ð¸Ñ‚Ð°Ñ‚Ð¸ метадані ELI" - -#: grub-core/disk/geli.c:231 -msgid "wrong ELI magic or version" -msgstr "помилкова контрольна Ñума або верÑÑ–Ñ ELI" - -#: grub-core/disk/geli.c:435 grub-core/disk/luks.c:329 -msgid "Attempting to decrypt master key..." -msgstr "Спроба Ñ€Ð¾Ð·ÑˆÐ¸Ñ„Ñ€ÑƒÐ²Ð°Ð½Ð½Ñ Ð¾Ñновного ключа..." - -#: grub-core/disk/geli.c:441 grub-core/disk/luks.c:347 -#, c-format -msgid "Enter passphrase for %s%s%s (%s): " -msgstr "Введіть пароль до %s%s%s (%s): " - -#. TRANSLATORS: It's a cryptographic key slot: one element of an array -#. where each element is either empty or holds a key. -#: grub-core/disk/geli.c:530 grub-core/disk/luks.c:451 -#, c-format -msgid "Slot %d opened\n" -msgstr "Відкрито Ñлот %d\n" - -#: grub-core/disk/i386/pc/biosdisk.c:470 grub-core/disk/i386/pc/biosdisk.c:524 -#: grub-core/disk/i386/pc/biosdisk.c:534 grub-core/kern/disk_common.c:47 -#, c-format -msgid "attempt to read or write outside of disk `%s'" -msgstr "Ñпроба Ñ‡Ð¸Ñ‚Ð°Ð½Ð½Ñ Ð°Ð±Ð¾ запиÑу облаÑті поза межами диÑка «%s»" - -#: grub-core/disk/i386/pc/biosdisk.c:491 grub-core/disk/i386/pc/biosdisk.c:611 -#: grub-core/disk/scsi.c:726 -msgid "cannot write to CD-ROM" -msgstr "Ð·Ð°Ð¿Ð¸Ñ Ð½Ð° компакт-диÑк неможливий" - -#: grub-core/disk/i386/pc/biosdisk.c:662 -msgid "" -"Native disk drivers are in use. Refusing to use firmware disk interface." -msgstr "" -"ВикориÑтовуютьÑÑ Ñ‚Ð¸Ð¿Ð¾Ð²Ñ– драйвери диÑка. У викориÑтанні інтерфейÑу " -"мікропрограми диÑка відмовлено." - -#. TRANSLATORS: it's a partition for embedding, -#. not a partition embed into something. GRUB -#. install tools put core.img into a place -#. usable for bootloaders (called generically -#. "embedding zone") and this operation is -#. called "embedding". -#: grub-core/disk/ldm.c:1015 -msgid "your LDM Embedding Partition is too small; embedding won't be possible" -msgstr "" -"об’єм вашого розділу LDM Ð´Ð»Ñ Ð²Ð±ÑƒÐ´Ð¾Ð²ÑƒÐ²Ð°Ð½Ð½Ñ Ñ” занадто малим, — Ð²Ð±ÑƒÐ´Ð¾Ð²ÑƒÐ²Ð°Ð½Ð½Ñ " -"неможливе" - -#. TRANSLATORS: it's a partition for embedding, -#. not a partition embed into something. -#: grub-core/disk/ldm.c:1033 -msgid "this LDM has no Embedding Partition; embedding won't be possible" -msgstr "у цього LDM немає розділу Ð´Ð»Ñ Ð²Ð±ÑƒÐ´Ð¾Ð²ÑƒÐ²Ð°Ð½Ð½Ñ, — Ð²Ð±ÑƒÐ´Ð¾Ð²ÑƒÐ²Ð°Ð½Ð½Ñ Ð½ÐµÐ¼Ð¾Ð¶Ð»Ð¸Ð²Ðµ" - -#. TRANSLATORS: The disk is simply removed from the list of available ones, -#. not wiped, avoid to scare user. -#: grub-core/disk/loopback.c:45 -msgid "Delete the specified loopback drive." -msgstr "Вилучити диÑк зворотної петлі." - -#: grub-core/disk/loopback.c:237 -msgid "[-d] DEVICENAME FILE." -msgstr "[-d] ÐÐЗВÐ_ПРИСТРОЮ ФÐЙЛ." - -#. TRANSLATORS: The file itself is not destroyed -#. or transformed into drive. -#: grub-core/disk/loopback.c:240 -msgid "Make a virtual drive from a file." -msgstr "Створити віртуальний диÑк на оÑнові файла." - -#: grub-core/efiemu/i386/loadcore32.c:111 -#: grub-core/efiemu/i386/loadcore64.c:125 grub-core/kern/arm/dl.c:256 -#: grub-core/kern/arm64/dl.c:187 grub-core/kern/i386/dl.c:75 -#: grub-core/kern/ia64/dl.c:140 grub-core/kern/mips/dl.c:258 -#: grub-core/kern/powerpc/dl.c:163 grub-core/kern/riscv/dl.c:334 -#: grub-core/kern/sparc64/dl.c:180 grub-core/kern/x86_64/dl.c:110 -#: util/grub-mkimagexx.c:756 util/grub-mkimagexx.c:881 -#: util/grub-mkimagexx.c:945 util/grub-mkimagexx.c:1026 -#: util/grub-mkimagexx.c:1120 util/grub-mkimagexx.c:1222 -#: util/grub-mkimagexx.c:1413 util/grub-mkimagexx.c:1628 -#: util/grub-mkimagexx.c:1665 util/grub-mkimagexx.c:1697 -#: util/grub-mkimagexx.c:1767 util/grub-mkimagexx.c:1797 -#, c-format -msgid "relocation 0x%x is not implemented yet" -msgstr "зміну Ñ€Ð¾Ð·Ñ‚Ð°ÑˆÑƒÐ²Ð°Ð½Ð½Ñ 0x%x ще не реалізовано" - -#: grub-core/efiemu/loadcore.c:200 grub-core/efiemu/loadcore.c:237 -#: grub-core/loader/i386/bsdXX.c:317 util/grub-mkimagexx.c:2360 -msgid "no symbol table" -msgstr "немає таблиці Ñимволів" - -#: grub-core/efiemu/loadcore.c:346 grub-core/kern/dl.c:609 -#: grub-core/loader/ia64/efi/linux.c:345 grub-core/loader/mips/linux.c:248 -#: grub-core/loader/multiboot_elfxx.c:76 -#: grub-core/loader/powerpc/ieee1275/linux.c:280 -#: grub-core/loader/sparc64/ieee1275/linux.c:320 -msgid "this ELF file is not of the right type" -msgstr "тип цього файла ELF не Ñ” належним" - -#: grub-core/efiemu/main.c:313 -msgid "Load and initialize EFI emulator." -msgstr "Завантажити Ñ– ініціалізувати емулÑтор EFI." - -#: grub-core/efiemu/main.c:317 -msgid "Finalize loading of EFI emulator." -msgstr "Завершити Ð·Ð°Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ ÐµÐ¼ÑƒÐ»Ñтора EFI." - -#: grub-core/efiemu/main.c:320 -msgid "Unload EFI emulator." -msgstr "Вивантажити емулÑтор EFI." - -#: grub-core/efiemu/symbols.c:92 grub-core/kern/dl.c:376 -#, c-format -msgid "symbol `%s' not found" -msgstr "не знайдено Ñимвол «%s»" - -#: grub-core/font/font_cmd.c:52 -msgid "Loaded fonts:" -msgstr "Завантажені шрифти:" - -#: grub-core/font/font_cmd.c:74 -msgid "FILE..." -msgstr "ФÐЙЛ..." - -#: grub-core/font/font_cmd.c:75 -msgid "Specify one or more font files to load." -msgstr "Вказати один або декілька файлів Ð´Ð»Ñ Ð·Ð°Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ." - -#: grub-core/font/font_cmd.c:78 -msgid "List the loaded fonts." -msgstr "СпиÑок завантажених шрифтів." - -#: grub-core/fs/archelp.c:216 grub-core/fs/archelp.c:278 -#: grub-core/fs/btrfs.c:1815 grub-core/fs/fshelp.c:227 grub-core/fs/jfs.c:736 -#: grub-core/fs/minix.c:369 grub-core/fs/ufs.c:454 -msgid "too deep nesting of symlinks" -msgstr "занадто виÑокий рівень вкладеноÑті Ñимволічних поÑилань" - -#: grub-core/fs/bfs.c:228 grub-core/fs/fshelp.c:368 grub-core/fs/minix.c:270 -#: grub-core/kern/file.c:156 -msgid "attempt to read past the end of file" -msgstr "Ñпроба Ñ‡Ð¸Ñ‚Ð°Ð½Ð½Ñ Ð´Ð°Ð½Ð¸Ñ… за кінцем файла" - -#: grub-core/fs/btrfs.c:1698 grub-core/fs/btrfs.c:1957 -#: grub-core/fs/fshelp.c:189 grub-core/fs/fshelp.c:309 grub-core/fs/jfs.c:431 -#: grub-core/fs/minix.c:414 grub-core/fs/minix.c:562 -#: grub-core/fs/reiserfs.c:732 grub-core/fs/ufs.c:531 grub-core/fs/ufs.c:671 -#: grub-core/fs/zfs/zfs.c:2831 grub-core/fs/zfs/zfs.c:4247 -msgid "not a directory" -msgstr "не Ñ” каталогом" - -#: grub-core/fs/btrfs.c:2063 grub-core/fs/fshelp.c:307 grub-core/fs/jfs.c:835 -#: grub-core/fs/zfs/zfs.c:3801 -msgid "not a regular file" -msgstr "не Ñ” звичайним файлом" - -#: grub-core/fs/btrfs.c:2157 grub-core/fs/zfs/zfs.c:4333 -#: grub-core/partmap/msdos.c:400 -msgid "your core.img is unusually large. It won't fit in the embedding area" -msgstr "" -"ваш файл core.img Ñ” доволі великим. Його не вдаÑтьÑÑ Ð·Ð°Ð¿Ð¸Ñати до облаÑті " -"вбудовуваннÑ." - -#: grub-core/fs/fshelp.c:281 grub-core/fs/minix.c:630 grub-core/fs/ufs.c:661 -#: grub-core/fs/ufs.c:757 grub-core/kern/fs.c:168 grub-core/kern/fs.c:180 -#, c-format -msgid "invalid file name `%s'" -msgstr "некоректна назва файла, «%s»" - -#: grub-core/fs/zfs/zfs.c:453 -msgid "checksum verification failed" -msgstr "помилка під Ñ‡Ð°Ñ Ñпроби перевірки контрольної Ñуми" - -#: grub-core/fs/zfs/zfs.c:1465 -msgid "couldn't find a necessary member device of multi-device filesystem" -msgstr "" -"не вдалоÑÑ Ð·Ð½Ð°Ð¹Ñ‚Ð¸ приÑтрою з потрібним вам номером у файловій ÑиÑтемі, що " -"зберігаєтьÑÑ Ð½Ð° декількох приÑтроÑÑ…" - -#: grub-core/fs/zfs/zfscrypt.c:292 -msgid "no decryption key available" -msgstr "не вказано ключа розшифруваннÑ" - -#: grub-core/fs/zfs/zfscrypt.c:304 -msgid "MAC verification failed" -msgstr "Помилка під Ñ‡Ð°Ñ Ð¿ÐµÑ€ÐµÐ²Ñ–Ñ€ÐºÐ¸ MAC-адреÑи" - -#: grub-core/fs/zfs/zfscrypt.c:413 -msgid "Assume input is raw." -msgstr "Вважати вхідні дані необробленими." - -#: grub-core/fs/zfs/zfscrypt.c:414 -msgid "Assume input is hex." -msgstr "Вважати вхідні дані шіÑтнадцÑтковим значеннÑм." - -#: grub-core/fs/zfs/zfscrypt.c:415 -msgid "Assume input is passphrase." -msgstr "Вважати вхідні дані паролем." - -#: grub-core/fs/zfs/zfscrypt.c:437 util/grub-fstest.c:553 util/grub-mount.c:483 -msgid "Enter ZFS password: " -msgstr "Введіть пароль до ZFS: " - -#: grub-core/fs/zfs/zfscrypt.c:476 -msgid "[-h|-p|-r] [FILE]" -msgstr "[-h|-p|-r] [ФÐЙЛ]" - -#: grub-core/fs/zfs/zfscrypt.c:477 -msgid "Import ZFS wrapping key stored in FILE." -msgstr "Імпортувати ключ ZFS, що зберігаєтьÑÑ Ñƒ ФÐЙЛі." - -#: grub-core/fs/zfs/zfsinfo.c:51 -msgid "Virtual device is removed" -msgstr "Віртуальний приÑтрій вилучено" - -#: grub-core/fs/zfs/zfsinfo.c:57 -msgid "Virtual device is faulted" -msgstr "Дефектний віртуальний приÑтрій" - -#: grub-core/fs/zfs/zfsinfo.c:63 -msgid "Virtual device is offline" -msgstr "Віртуальний приÑтрій недоÑтупний" - -#. TRANSLATORS: degraded doesn't mean broken but that some of -#. component are missing but virtual device as whole is still usable. -#: grub-core/fs/zfs/zfsinfo.c:70 -msgid "Virtual device is degraded" -msgstr "Віртуальний приÑтрій має погіршені характериÑтики" - -#: grub-core/fs/zfs/zfsinfo.c:73 -msgid "Virtual device is online" -msgstr "Віртуальний приÑтрій доÑтупний" - -#: grub-core/fs/zfs/zfsinfo.c:89 -msgid "Incorrect virtual device: no type available" -msgstr "Ðекоректний віртуальний приÑтрій: тип недоÑтупний" - -#. TRANSLATORS: The virtual devices form a tree (in graph-theoretical -#. sense). The nodes like mirror or raidz have children: member devices. -#. The "real" devices which actually store data are called "leafs" -#. (again borrowed from graph theory) and can be either disks -#. (or partitions) or files. -#: grub-core/fs/zfs/zfsinfo.c:105 -msgid "Leaf virtual device (file or disk)" -msgstr "Віртуальній приÑтрій-лиÑÑ‚ (файл або диÑк)" - -#: grub-core/fs/zfs/zfsinfo.c:113 -msgid "Bootpath: unavailable\n" -msgstr "ШлÑÑ… завантаженнÑ: недоÑтупний\n" - -#: grub-core/fs/zfs/zfsinfo.c:115 -#, c-format -msgid "Bootpath: %s\n" -msgstr "ШлÑÑ… завантаженнÑ: %s\n" - -#: grub-core/fs/zfs/zfsinfo.c:120 -msgid "Path: unavailable" -msgstr "ШлÑÑ…: недоÑтупний" - -#: grub-core/fs/zfs/zfsinfo.c:122 -#, c-format -msgid "Path: %s\n" -msgstr "ШлÑÑ…: %s\n" - -#: grub-core/fs/zfs/zfsinfo.c:127 -msgid "Devid: unavailable" -msgstr "Ід. приÑтрою: недоÑтупний" - -#: grub-core/fs/zfs/zfsinfo.c:129 -#, c-format -msgid "Devid: %s\n" -msgstr "Ід. приÑтрою: %s\n" - -#: grub-core/fs/zfs/zfsinfo.c:148 -msgid "This VDEV is a mirror" -msgstr "Цей VDEV Ñ” дзеркалом" - -#: grub-core/fs/zfs/zfsinfo.c:153 -#, c-format -msgid "This VDEV is a RAIDZ%llu\n" -msgstr "Цей VDEV Ñ” RAIDZ%llu\n" - -#: grub-core/fs/zfs/zfsinfo.c:158 -msgid "Incorrect VDEV" -msgstr "Ðекоректний VDEV" - -#: grub-core/fs/zfs/zfsinfo.c:161 -#, c-format -msgid "VDEV with %d children\n" -msgstr "VDEV з %d дочірніми об’єктами\n" - -#. TRANSLATORS: it's the element carying the number %d, not -#. total element number. And the number itself is fine, -#. only the element isn't. -#. -#: grub-core/fs/zfs/zfsinfo.c:177 -#, c-format -msgid "VDEV element number %d isn't correct\n" -msgstr "Елемент номер %d VDEV Ñ” помилковим\n" - -#. TRANSLATORS: it's the element carying the number %d, not -#. total element number. This is used in enumeration -#. "Element number 1", "Element number 2", ... -#: grub-core/fs/zfs/zfsinfo.c:184 -#, c-format -msgid "VDEV element number %d:\n" -msgstr "Елемент номер %d VDEV:\n" - -#: grub-core/fs/zfs/zfsinfo.c:193 -#, c-format -msgid "Unknown virtual device type: %s\n" -msgstr "Ðевідомий тип віртуального приÑтрою: %s\n" - -#. TRANSLATORS: Here we speak about ZFS pools it's semi-marketing, -#. semi-technical term by Sun/Oracle and should be translated in sync with -#. other ZFS-related software and documentation. -#: grub-core/fs/zfs/zfsinfo.c:254 -msgid "Pool state: active" -msgstr "Стан Ñховища: активне" - -#: grub-core/fs/zfs/zfsinfo.c:255 -msgid "Pool state: exported" -msgstr "Стан Ñховища: екÑпортоване" - -#: grub-core/fs/zfs/zfsinfo.c:256 -msgid "Pool state: destroyed" -msgstr "Стан Ñховища: знищено" - -#: grub-core/fs/zfs/zfsinfo.c:257 -msgid "Pool state: reserved for hot spare" -msgstr "Стан Ñховища: зарезервовано Ð´Ð»Ñ Ð³Ð°Ñ€Ñчого резервуваннÑ" - -#: grub-core/fs/zfs/zfsinfo.c:258 -msgid "Pool state: level 2 ARC device" -msgstr "Стан Ñховища: приÑтрій ARC Ñ€Ñ–Ð²Ð½Ñ 2" - -#: grub-core/fs/zfs/zfsinfo.c:259 -msgid "Pool state: uninitialized" -msgstr "Стан Ñховища: неініціалізоване" - -#: grub-core/fs/zfs/zfsinfo.c:260 -msgid "Pool state: unavailable" -msgstr "Стан Ñховища: недоÑтупне" - -#: grub-core/fs/zfs/zfsinfo.c:261 -msgid "Pool state: potentially active" -msgstr "Стан Ñховища: потенційно активне" - -#: grub-core/fs/zfs/zfsinfo.c:306 -msgid "Pool name: unavailable" -msgstr "Стан Ñховища: недоÑтупне" - -#: grub-core/fs/zfs/zfsinfo.c:308 -#, c-format -msgid "Pool name: %s\n" -msgstr "Ðазва Ñховища: %s\n" - -#: grub-core/fs/zfs/zfsinfo.c:313 -msgid "Pool GUID: unavailable" -msgstr "GUID Ñховища: недоÑтупне" - -#: grub-core/fs/zfs/zfsinfo.c:315 -#, c-format -msgid "Pool GUID: %016llx\n" -msgstr "GUID Ñховища: %016llx\n" - -#: grub-core/fs/zfs/zfsinfo.c:320 -msgid "Unable to retrieve pool state" -msgstr "Ðе вдалоÑÑ Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ñ‚Ð¸ дані щодо Ñтану Ñховища" - -#: grub-core/fs/zfs/zfsinfo.c:322 -msgid "Unrecognized pool state" -msgstr "Ðерозпізнаний Ñтан Ñховища" - -#. TRANSLATORS: There are undetermined number of virtual devices -#. in a device tree, not just one. -#. -#: grub-core/fs/zfs/zfsinfo.c:332 -msgid "No virtual device tree available" -msgstr "Ð†Ñ”Ñ€Ð°Ñ€Ñ…Ñ–Ñ Ð²Ñ–Ñ€Ñ‚ÑƒÐ°Ð»ÑŒÐ½Ð¸Ñ… приÑтроїв недоÑтупна" - -#: grub-core/fs/zfs/zfsinfo.c:431 -msgid "Print ZFS info about DEVICE." -msgstr "ВивеÑти дані ZFS щодо ПРИСТРОЮ." - -#: grub-core/fs/zfs/zfsinfo.c:433 -msgid "FILESYSTEM [VARIABLE]" -msgstr "ФÐЙЛОВÐ_СИСТЕМР[ЗМІÐÐÐ]" - -#: grub-core/fs/zfs/zfsinfo.c:434 -msgid "Print ZFS-BOOTFSOBJ or store it into VARIABLE" -msgstr "ВивеÑти ZFS-BOOTFSOBJ або запиÑати його Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð² ЗМІÐÐУ " - -#. TRANSLATORS: at this position GRUB waits for the user to do an action -#. in remote debugger, namely to tell it to establish connection. -#: grub-core/gdb/gdb.c:48 -msgid "Now connect the remote debugger, please." -msgstr "" -"Зараз, будь лаÑка, вÑтановіть зв’Ñзок з віддаленого заÑобу діагноÑтики." - -#. TRANSLATORS: GDB stub is a small part of -#. GDB functionality running on local host -#. which allows remote debugger to -#. connect to it. -#: grub-core/gdb/gdb.c:84 -msgid "Start GDB stub on given port" -msgstr "ЗапуÑтити заглушку GDB на вказаному порті" - -#. TRANSLATORS: this refers to triggering -#. a breakpoint so that the user will land -#. into GDB. -#: grub-core/gdb/gdb.c:89 -msgid "Break into GDB" -msgstr "Перервати роботу Ñ– перемкнутиÑÑŒ на GDB" - -#: grub-core/gdb/gdb.c:91 -msgid "Stop GDB stub" -msgstr "Зупинити роботу заглушки GDB" - -#: grub-core/gettext/gettext.c:85 -msgid "premature end of file" -msgstr "завчаÑне Ð·Ð°Ð²ÐµÑ€ÑˆÐµÐ½Ð½Ñ Ñ„Ð°Ð¹Ð»Ð°" - -#. TRANSLATORS: It refers to passing the string through gettext. -#. So it's "translate" in the same meaning as in what you're -#. doing now. -#. -#: grub-core/gettext/gettext.c:525 -msgid "Translates the string with the current settings." -msgstr "Перекладає Ñ€Ñдок відповідно до поточних параметрів." - -#: grub-core/gfxmenu/gui_label.c:186 grub-core/normal/menu_text.c:184 -msgid "" -"Press enter to boot the selected OS, `e' to edit the commands before booting " -"or `c' for a command-line. ESC to return previous menu." -msgstr "" -"ÐатиÑніть Enter, щоб почати Ð·Ð°Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ Ð¿Ð¾Ð·Ð½Ð°Ñ‡ÐµÐ½Ð¾Ñ— ОС. ÐатиÑніть «e», щоб " -"змінити команду до Ð·Ð°Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ ÑиÑтеми, «c» — щоб перейти у режим " -"командного Ñ€Ñдка. Esc — повернутиÑÑ Ð´Ð¾ попереднього меню." - -#: grub-core/gfxmenu/gui_label.c:190 grub-core/normal/menu_text.c:192 -msgid "" -"Press enter to boot the selected OS, `e' to edit the commands before booting " -"or `c' for a command-line." -msgstr "" -"ÐатиÑніть Enter, щоб почати Ð·Ð°Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ Ð¿Ð¾Ð·Ð½Ð°Ñ‡ÐµÐ½Ð¾Ñ— ОС. ÐатиÑніть «e», щоб " -"змінити команду до Ð·Ð°Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ ÑиÑтеми, «c» — щоб перейти у режим " -"командного Ñ€Ñдка." - -#: grub-core/gfxmenu/gui_label.c:194 -msgid "enter: boot, `e': options, `c': cmd-line" -msgstr "enter: завантаженнÑ, «e»: параметри, «c»: кмд-Ñ€Ñдок" - -#: grub-core/gfxmenu/gui_progress_bar.c:339 grub-core/normal/menu_text.c:446 -#, c-format -msgid "The highlighted entry will be executed automatically in %ds." -msgstr "Обробку позначеного пункту буде автоматично виконано за %d Ñ." - -#. TRANSLATORS: 's' stands for seconds. -#. It's a standalone timeout notification. -#. Please use the short form in your language. -#: grub-core/gfxmenu/gui_progress_bar.c:344 -#, c-format -msgid "%ds remaining." -msgstr "ЗалишилоÑÑ %d Ñ." - -#. TRANSLATORS: 's' stands for seconds. -#. It's a standalone timeout notification. -#. Please use the shortest form available in you language. -#: grub-core/gfxmenu/gui_progress_bar.c:349 grub-core/normal/menu_text.c:444 -#: grub-core/normal/menu_text.c:462 -#, c-format -msgid "%ds" -msgstr "%dÑ" - -#: grub-core/gfxmenu/view.c:103 -msgid "GRUB Boot Menu" -msgstr "Меню Ð·Ð°Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ GRUB" - -#: grub-core/hello/hello.c:36 -msgid "Hello World" -msgstr "Привіт, Ñвіте" - -#: grub-core/hello/hello.c:45 -msgid "Say `Hello World'." -msgstr "Повідомити «Привіт, Ñвіте»." - -#: grub-core/io/gzio.c:409 grub-core/kern/file.c:210 -msgid "attempt to seek outside of the file" -msgstr "Ñпроба вÑÑ‚Ð°Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ Ð¿Ð¾Ð·Ð¸Ñ†Ñ–Ñ— поза межами файла" - -#. TRANSLATORS: It's about given file having some strange format, not -#. complete lack of gzip support. -#: grub-core/io/gzio.c:1228 grub-core/io/gzio.c:1237 grub-core/io/gzio.c:1244 -msgid "unsupported gzip format" -msgstr "Ðепідтримуваний формат gzip" - -#: grub-core/io/lzopio.c:511 -msgid "lzop file corrupted" -msgstr "файл lzop пошкоджено" - -#: grub-core/io/xzio.c:278 -msgid "xz file corrupted or unsupported block options" -msgstr "файл xz пошкоджено або вказано непідтримувані параметри блоку" - -#: grub-core/kern/arm/dl.c:277 grub-core/kern/arm64/dl.c:44 -#: grub-core/kern/i386/dl.c:36 grub-core/kern/ia64/dl.c:41 -#: grub-core/kern/mips/dl.c:48 grub-core/kern/powerpc/dl.c:36 -#: grub-core/kern/riscv/dl.c:47 grub-core/kern/sparc64/dl.c:36 -#: grub-core/kern/x86_64/dl.c:36 grub-core/loader/i386/bsd.c:1445 -#: grub-core/loader/i386/bsdXX.c:49 grub-core/loader/ia64/efi/linux.c:341 -#: grub-core/loader/mips/linux.c:298 grub-core/loader/multiboot.c:232 -#: grub-core/loader/multiboot_elfxx.c:73 -#: grub-core/loader/powerpc/ieee1275/linux.c:294 -#: grub-core/loader/sparc64/ieee1275/linux.c:331 -msgid "invalid arch-dependent ELF magic" -msgstr "некоректна залежна від архітектури позначка у ELF" - -#: grub-core/kern/corecmd.c:178 -msgid "[ENVVAR=VALUE]" -msgstr "[ЗМІÐÐÐ_СЕРЕДОВИЩÐ=ЗÐÐЧЕÐÐЯ]" - -#: grub-core/kern/corecmd.c:179 -msgid "Set an environment variable." -msgstr "Ð’Ñтановити змінну Ñередовища." - -#: grub-core/kern/corecmd.c:183 -msgid "ENVVAR" -msgstr "ЗМІÐÐÐ_СЕРЕДОВИЩÐ" - -#: grub-core/kern/corecmd.c:184 -msgid "Remove an environment variable." -msgstr "Вилучити змінну Ñередовища." - -#: grub-core/kern/corecmd.c:186 -msgid "[ARG]" -msgstr "[ПÐРÐМЕТР]" - -#: grub-core/kern/corecmd.c:186 -msgid "List devices or files." -msgstr "СпиÑок приÑтроїв або файлів." - -#: grub-core/kern/corecmd.c:188 -msgid "Insert a module." -msgstr "Ð’Ñтавити модуль." - -#: grub-core/kern/disk.c:236 grub-core/net/net.c:1390 -#, c-format -msgid "disk `%s' not found" -msgstr "не знайдено диÑка «%s»" - -#: grub-core/kern/disk_common.c:27 -msgid "attempt to read or write outside of partition" -msgstr "Ñпроба Ñ‡Ð¸Ñ‚Ð°Ð½Ð½Ñ Ð°Ð±Ð¾ запиÑу блоку даних поза розділом" - -#: grub-core/kern/dl.c:212 grub-core/kern/elf.c:61 grub-core/kern/elf.c:79 -#: grub-core/loader/i386/bsdXX.c:46 grub-core/loader/ia64/efi/linux.c:335 -#: grub-core/loader/multiboot_elfxx.c:69 -msgid "invalid arch-independent ELF magic" -msgstr "некоректна незалежне від архітектури позначка у ELF" - -#. TRANSLATORS: it refers to the lack of free slots. -#: grub-core/kern/emu/hostdisk.c:208 grub-core/kern/emu/hostdisk.c:466 -msgid "device count exceeds limit" -msgstr "перевищено Ð¾Ð±Ð¼ÐµÐ¶ÐµÐ½Ð½Ñ Ð½Ð° кількіÑть приÑтроїв" - -#: grub-core/kern/emu/hostdisk.c:342 util/editenv.c:54 util/grub-editenv.c:197 -#: util/grub-fstest.c:191 util/grub-mkfont.c:796 util/misc.c:114 -#: util/misc.c:129 util/setup.c:788 -#, c-format -msgid "cannot write to `%s': %s" -msgstr "не вдалоÑÑ Ð²Ð¸ÐºÐ¾Ð½Ð°Ñ‚Ð¸ Ð·Ð°Ð¿Ð¸Ñ Ð´Ð¾ «%s»: %s" - -#. TRANSLATORS: Only one entry is ignored. However the suggestion -#. is to correct/delete the whole file. -#. device.map is a file indicating which -#. devices are available at boot time. Fedora populated it with -#. entries like (hd0,1) /dev/sda1 which would mean that every -#. partition is a separate disk for BIOS. Such entries were -#. inactive in GRUB due to its bug which is now gone. Without -#. this additional check these entries would be harmful now. -#. -#: grub-core/kern/emu/hostdisk.c:503 -#, c-format -msgid "" -"the device.map entry `%s' is invalid. Ignoring it. Please correct or delete " -"your device.map" -msgstr "" -"Ð·Ð°Ð¿Ð¸Ñ device.map «%s» Ñ” некоректним. Будь лаÑка, виправте його або вилучіть " -"ваш device.map" - -#. TRANSLATORS: device.map is a filename. Not to be translated. -#. device.map specifies disk correspondance overrides. Previously -#. one could create any kind of device name with this. Due to -#. some problems we decided to limit it to just a handful -#. possibilities. -#: grub-core/kern/emu/hostdisk.c:555 -#, c-format -msgid "" -"the drive name `%s' in device.map is incorrect. Using %s instead. Please use " -"the form [hfc]d[0-9]* (E.g. `hd0' or `cd')" -msgstr "" -"назва диÑка «%s» у device.map Ñ” некоректною. ВикориÑтовуємо заміÑть неї %s. " -"Будь лаÑка, викориÑтовуйте формат [hfc]d[0-9]* (наприклад «hd0» або «cd»)" - -#: grub-core/kern/emu/hostfs.c:76 grub-core/kern/emu/hostfs.c:109 -#, c-format -msgid "can't open `%s': %s" -msgstr "не вдалоÑÑ Ð²Ñ–Ð´ÐºÑ€Ð¸Ñ‚Ð¸ «%s»: %s" - -#: grub-core/kern/emu/main.c:99 util/grub-fstest.c:516 util/grub-mount.c:452 -msgid "DEVICE_NAME" -msgstr "ÐÐЗВÐ_ПРИСТРОЮ" - -#: grub-core/kern/emu/main.c:99 grub-core/loader/i386/bsd.c:136 -#: grub-core/loader/i386/bsd.c:169 util/grub-fstest.c:516 util/grub-mount.c:452 -msgid "Set root device." -msgstr "Вказати кореневий приÑтрій." - -#. TRANSLATORS: There are many devices in device map. -#: grub-core/kern/emu/main.c:102 util/grub-probe.c:733 util/grub-setup.c:85 -#, c-format -msgid "use FILE as the device map [default=%s]" -msgstr "викориÑтовувати ФÐЙЛ Ñка карту приÑтрою [типове значеннÑ=%s]" - -#. TRANSLATORS: There are many devices in device map. -#: grub-core/kern/emu/main.c:105 -msgid "use FILE as memdisk" -msgstr "викориÑтовувати ФÐЙЛ Ñк диÑк у пам’Ñті" - -#: grub-core/kern/emu/main.c:107 util/grub-setup.c:83 -#, c-format -msgid "use GRUB files in the directory DIR [default=%s]" -msgstr "викориÑтовувати файли GRUB у каталозі КÐТÐЛОГ [типове значеннÑ=%s]" - -#: grub-core/kern/emu/main.c:108 include/grub/util/install.h:67 -#: util/grub-editenv.c:58 util/grub-fstest.c:525 util/grub-glue-efi.c:58 -#: util/grub-macbless.c:104 util/grub-mkfont.c:962 util/grub-mkimage.c:84 -#: util/grub-mklayout.c:56 util/grub-mount.c:458 util/grub-probe.c:735 -#: util/grub-render-label.c:74 util/grub-script-check.c:52 util/grub-setup.c:90 -#: util/grub-syslinux2cfg.c:78 -msgid "print verbose messages." -msgstr "показати докладні повідомленнÑ." - -#: grub-core/kern/emu/main.c:109 grub-core/lib/gnulib/argp-parse.c:85 -msgid "SECS" -msgstr "СЕК" - -#: grub-core/kern/emu/main.c:109 -msgid "wait until a debugger will attach" -msgstr "зачекати на Ð´Ð¾Ð»ÑƒÑ‡ÐµÐ½Ð½Ñ Ð·Ð½ÐµÐ²Ð°Ð´Ð½Ð¸ÐºÐ° " - -#: grub-core/kern/emu/main.c:171 util/grub-macbless.c:143 -#: util/grub-mkrelpath.c:61 util/grub-probe.c:874 util/grub-script-check.c:75 -#: util/grub-setup.c:203 -#, c-format -msgid "Unknown extra argument `%s'." -msgstr "Ðевідомий додатковий параметр «%s»." - -#: grub-core/kern/emu/main.c:185 -msgid "GRUB emulator." -msgstr "Імітатор GRUB. " - -#: grub-core/kern/emu/main.c:213 util/grub-editenv.c:262 -#: util/grub-glue-efi.c:110 util/grub-macbless.c:173 util/grub-mkfont.c:1177 -#: util/grub-mkimage.c:266 util/grub-mklayout.c:494 -#: util/grub-mkpasswd-pbkdf2.c:132 util/grub-mkrelpath.c:96 -#: util/grub-probe.c:863 util/grub-render-label.c:152 -#: util/grub-script-check.c:160 util/grub-setup.c:262 -#: util/grub-syslinux2cfg.c:163 -msgid "Error in parsing command line arguments\n" -msgstr "Помилка під Ñ‡Ð°Ñ Ñпроби обробки параметрів командного Ñ€Ñдка\n" - -#. TRANSLATORS: In this case GRUB tells user what he has to do. -#: grub-core/kern/emu/main.c:248 -#, c-format -msgid "Run `gdb %s %d', and set ARGS.HOLD to zero.\n" -msgstr "" -"Віддайте команду «gdb %s %d» Ñ– вÑтановіть нульове Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ ARGS.HOLD.\n" - -#: grub-core/kern/emu/misc.c:48 -#, c-format -msgid "%s: warning:" -msgstr "%s: попередженнÑ:" - -#: grub-core/kern/emu/misc.c:64 -#, c-format -msgid "%s: info:" -msgstr "%s: інформаціÑ:" - -#: grub-core/kern/emu/misc.c:79 util/grub-fstest.c:567 util/grub-fstest.c:576 -#: util/grub-mount.c:497 util/grub-mount.c:505 -#, c-format -msgid "%s: error:" -msgstr "%s: помилка:" - -#: grub-core/kern/emu/misc.c:176 -#, c-format -msgid "file `%s' is too big" -msgstr "файл «%s» Ñ” надто великим" - -#: grub-core/kern/fs.c:120 -msgid "unknown filesystem" -msgstr "невідома файлова ÑиÑтема" - -#: grub-core/kern/mips/arc/init.c:273 grub-core/kern/mips/loongson/init.c:301 -msgid "Shutdown failed" -msgstr "Ðе вдалоÑÑ Ð²Ð¸Ð¼ÐºÐ½ÑƒÑ‚Ð¸" - -#: grub-core/kern/mips/arc/init.c:285 -msgid "Exit failed" -msgstr "Ðе вдалоÑÑ Ð·Ð°Ð²ÐµÑ€ÑˆÐ¸Ñ‚Ð¸ роботу" - -#: grub-core/kern/misc.c:351 grub-core/kern/misc.c:408 include/grub/misc.h:269 -#: include/grub/misc.h:278 -msgid "overflow is detected" -msgstr "виÑвлено переповненнÑ" - -#: grub-core/kern/partition.c:51 grub-core/partmap/bsdlabel.c:108 -#, c-format -msgid "Discarding improperly nested partition (%s,%s,%s%d)" -msgstr "Відкидаємо помилково вкладений розділ (%s,%s,%s%d)" - -#: grub-core/kern/rescue_parser.c:73 util/grub-editenv.c:292 -#, c-format -msgid "Unknown command `%s'.\n" -msgstr "Ðевідома команда «%s».\n" - -#: grub-core/lib/arg.c:31 -msgid "Display this help and exit." -msgstr "Показати ці довідкові дані Ñ– завершити роботу." - -#: grub-core/lib/arg.c:33 -msgid "Display the usage of this command and exit." -msgstr "Показати довідку з цієї команди Ñ– завершити роботу." - -#: grub-core/lib/arg.c:362 -#, c-format -msgid "missing mandatory option for `%s'" -msgstr "не вказано обов’Ñзкового параметра Ð´Ð»Ñ Â«%s»" - -#: grub-core/lib/arg.c:384 -#, c-format -msgid "the argument `%s' requires an integer" -msgstr "разом з аргументом «%s» Ñлід вказати ціле чиÑло" - -#: grub-core/lib/arg.c:407 -#, c-format -msgid "" -"a value was assigned to the argument `%s' while it doesn't require an " -"argument" -msgstr "" -"Ñпроба Ð½Ð°Ð´Ð°Ð½Ð½Ñ Ð°Ñ€Ð³ÑƒÐ¼ÐµÐ½Ñ‚Ñƒ «%s» певного значеннÑ, хоча цей аргумент не потрібен" - -#: grub-core/lib/backtrace.c:64 -msgid "Print backtrace." -msgstr "ВивеÑти дані зворотного траÑуваннÑ." - -#: grub-core/lib/gnulib/argp-help.c:149 -#, c-format -msgid "ARGP_HELP_FMT: %s value is less than or equal to %s" -msgstr "ARGP_HELP_FMT: Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ %s Ñ” меншим або рівним %s" - -#: grub-core/lib/gnulib/argp-help.c:225 -#, c-format -msgid "%.*s: ARGP_HELP_FMT parameter requires a value" -msgstr "%.*s: параметр ARGP_HELP_FMT потребує значеннÑ" - -#: grub-core/lib/gnulib/argp-help.c:235 -#, c-format -msgid "%.*s: Unknown ARGP_HELP_FMT parameter" -msgstr "%.*s: невідомий параметр ARGP_HELP_FMT" - -#: grub-core/lib/gnulib/argp-help.c:248 -#, c-format -msgid "Garbage in ARGP_HELP_FMT: %s" -msgstr "Мотлох у ARGP_HELP_FMT: %s" - -#: grub-core/lib/gnulib/argp-help.c:1229 -msgid "" -"Mandatory or optional arguments to long options are also mandatory or " -"optional for any corresponding short options." -msgstr "" -"Обов’Ñзкові Ñ– додаткові аргументи до довгих форм запиÑу параметрів Ñ” також " -"об’Ñзковими або додатковими Ð´Ð»Ñ Ð²ÑÑ–Ñ… відповідних Ñкорочених форм запиÑу." - -#: grub-core/lib/gnulib/argp-help.c:1620 -msgid " or: " -msgstr " або " - -#: grub-core/lib/gnulib/argp-help.c:1632 -msgid " [OPTION...]" -msgstr " [ПÐРÐМЕТР...]" - -#: grub-core/lib/gnulib/argp-help.c:1659 -#, c-format -msgid "Try '%s --help' or '%s --usage' for more information.\n" -msgstr "" -"Виконайте команду «%s --help» або «%s --usage», щоб дізнатиÑÑ Ð±Ñ–Ð»ÑŒÑˆÐµ.\n" - -#: grub-core/lib/gnulib/argp-help.c:1687 -#, c-format -msgid "Report bugs to %s.\n" -msgstr "ПовідомлÑйте про вади на адреÑу %s.\n" - -#: grub-core/lib/gnulib/argp-help.c:1888 grub-core/lib/gnulib/error.c:195 -msgid "Unknown system error" -msgstr "Ðевідома ÑиÑтемна помилка" - -#: grub-core/lib/gnulib/argp-parse.c:81 -msgid "give this help list" -msgstr "показати ці довідкові дані" - -#: grub-core/lib/gnulib/argp-parse.c:82 -msgid "give a short usage message" -msgstr "отримати коротке Ð¿Ð¾Ð²Ñ–Ð´Ð¾Ð¼Ð»ÐµÐ½Ð½Ñ Ñ‰Ð¾Ð´Ð¾ викориÑтаннÑ" - -#: grub-core/lib/gnulib/argp-parse.c:83 util/grub-mkfont.c:946 -msgid "NAME" -msgstr "ÐÐЗВÐ" - -#: grub-core/lib/gnulib/argp-parse.c:84 -msgid "set the program name" -msgstr "вÑтановити назву програми" - -#: grub-core/lib/gnulib/argp-parse.c:86 -msgid "hang for SECS seconds (default 3600)" -msgstr "затриматиÑÑ Ð½Ð° СЕК Ñекунд (типово, на 3600)" - -#: grub-core/lib/gnulib/argp-parse.c:143 -msgid "print program version" -msgstr "вивеÑти дані щодо верÑÑ–Ñ— програми" - -#: grub-core/lib/gnulib/argp-parse.c:160 -msgid "(PROGRAM ERROR) No version known!?" -msgstr "(ПОМИЛКРПРОГРÐМИ) Ðевідома верÑÑ–Ñ!?" - -#: grub-core/lib/gnulib/argp-parse.c:613 -#, c-format -msgid "%s: Too many arguments\n" -msgstr "%s: занадто багато аргументів\n" - -#: grub-core/lib/gnulib/argp-parse.c:759 -msgid "(PROGRAM ERROR) Option should have been recognized!?" -msgstr "(ПОМИЛКРПРОГРÐМИ) Параметр має розпізнаватиÑÑ!?" - -#: grub-core/lib/gnulib/getopt.c:278 -#, c-format -msgid "%s: option '%s%s' is ambiguous\n" -msgstr "%s: параметр «%s%s» не Ñ” однозначним\n" - -#: grub-core/lib/gnulib/getopt.c:284 -#, c-format -msgid "%s: option '%s%s' is ambiguous; possibilities:" -msgstr "%s: неоднозначний параметр «%s%s»; можливі варіанти:" - -#: grub-core/lib/gnulib/getopt.c:319 -#, c-format -msgid "%s: unrecognized option '%s%s'\n" -msgstr "%s: невідомий параметр «%s%s»\n" - -#: grub-core/lib/gnulib/getopt.c:345 -#, c-format -msgid "%s: option '%s%s' doesn't allow an argument\n" -msgstr "%s: Ð´Ð¾Ð´Ð°Ð²Ð°Ð½Ð½Ñ Ð°Ñ€Ð³ÑƒÐ¼ÐµÐ½Ñ‚Ñ–Ð² до параметра «%s%s» не передбачено\n" - -#: grub-core/lib/gnulib/getopt.c:360 -#, c-format -msgid "%s: option '%s%s' requires an argument\n" -msgstr "%s: до параметра «%s%s» Ñлід додати аргумент\n" - -#: grub-core/lib/gnulib/getopt.c:621 -#, c-format -msgid "%s: invalid option -- '%c'\n" -msgstr "%s: некоректний параметр — «%c»\n" - -#: grub-core/lib/gnulib/getopt.c:636 grub-core/lib/gnulib/getopt.c:682 -#, c-format -msgid "%s: option requires an argument -- '%c'\n" -msgstr "%s: до параметра Ñлід додати аргумент — «%c»\n" - -#: grub-core/lib/gnulib/openat-die.c:38 -#, c-format -msgid "unable to record current working directory" -msgstr "не вдалоÑÑ Ð·Ð°Ð¿Ð¸Ñати поточний робочий каталог" - -#: grub-core/lib/gnulib/openat-die.c:57 -#, c-format -msgid "failed to return to initial working directory" -msgstr "не вдалоÑÑ Ð¿Ð¾Ð²ÐµÑ€Ð½ÑƒÑ‚Ð¸ÑÑ Ð´Ð¾ початкового робочого каталогу" - -#: grub-core/lib/gnulib/regcomp.c:135 grub-core/osdep/aros/hostdisk.c:523 -msgid "Success" -msgstr "УÑпіх" - -#: grub-core/lib/gnulib/regcomp.c:138 -msgid "No match" -msgstr "Ðе знайдено" - -#: grub-core/lib/gnulib/regcomp.c:141 -msgid "Invalid regular expression" -msgstr "Помилка у формальному виразі" - -#: grub-core/lib/gnulib/regcomp.c:144 -msgid "Invalid collation character" -msgstr "Ðекоректний Ñимвол порівнÑннÑ" - -#: grub-core/lib/gnulib/regcomp.c:147 -msgid "Invalid character class name" -msgstr "Ðекоректна назва клаÑу Ñимволів" - -#: grub-core/lib/gnulib/regcomp.c:150 -msgid "Trailing backslash" -msgstr "Кінцевий Ñимвол похилої риÑки" - -#: grub-core/lib/gnulib/regcomp.c:153 -msgid "Invalid back reference" -msgstr "Ðекоректне зворотне поÑиланнÑ" - -#: grub-core/lib/gnulib/regcomp.c:156 -msgid "Unmatched [, [^, [:, [., or [=" -msgstr "Ðеврівноважена поÑлідовніÑть [, [^, [:, [. або [=" - -#: grub-core/lib/gnulib/regcomp.c:159 -msgid "Unmatched ( or \\(" -msgstr "Ðеврівноважена поÑлідовніÑть ( або \\(" - -#: grub-core/lib/gnulib/regcomp.c:162 -msgid "Unmatched \\{" -msgstr "Ðеврівноважена поÑлідовніÑть \\{" - -#: grub-core/lib/gnulib/regcomp.c:165 -msgid "Invalid content of \\{\\}" -msgstr "Ðекоректний вміÑÑ‚ \\{\\}" - -#: grub-core/lib/gnulib/regcomp.c:168 -msgid "Invalid range end" -msgstr "Ðекоректне Ð·Ð°Ð²ÐµÑ€ÑˆÐµÐ½Ð½Ñ Ð´Ñ–Ð°Ð¿Ð°Ð·Ð¾Ð½Ñƒ" - -#: grub-core/lib/gnulib/regcomp.c:171 -msgid "Memory exhausted" -msgstr "Пам’Ñть вичерпано" - -#: grub-core/lib/gnulib/regcomp.c:174 -msgid "Invalid preceding regular expression" -msgstr "Помилка у попередньому формальному виразі" - -#: grub-core/lib/gnulib/regcomp.c:177 -msgid "Premature end of regular expression" -msgstr "Ðеочікуване Ð·Ð°Ð²ÐµÑ€ÑˆÐµÐ½Ð½Ñ Ñ„Ð¾Ñ€Ð¼Ð°Ð»ÑŒÐ½Ð¾Ð³Ð¾ виразу" - -#: grub-core/lib/gnulib/regcomp.c:180 -msgid "Regular expression too big" -msgstr "Занадто об’ємний формальний вираз" - -#: grub-core/lib/gnulib/regcomp.c:183 -msgid "Unmatched ) or \\)" -msgstr "Ðеврівноважена поÑлідовніÑть ) або \\)" - -#: grub-core/lib/gnulib/regcomp.c:531 -msgid "unknown regexp error" -msgstr "невідома помилка під Ñ‡Ð°Ñ Ð¾Ð±Ñ€Ð¾Ð±ÐºÐ¸ формального виразу" - -#: grub-core/lib/gnulib/regcomp.c:676 -msgid "No previous regular expression" -msgstr "Ðе виÑвлено попереднього формального виразу" - -#: grub-core/lib/i386/halt.c:77 -msgid "GRUB doesn't know how to halt this machine yet!" -msgstr "GRUB ще невідомий ÑпоÑіб Ð²Ð¸Ð¼Ð¸ÐºÐ°Ð½Ð½Ñ Ñ†ÑŒÐ¾Ð³Ð¾ комп’ютера!" - -#: grub-core/lib/legacy_parse.c:75 -msgid "Default server is ${net_default_server}" -msgstr "Типовим Ñервером Ñ” ${net_default_server}" - -#: grub-core/lib/legacy_parse.c:844 grub-core/video/colors.c:296 -#: grub-core/video/colors.c:305 grub-core/video/colors.c:311 -#: grub-core/video/colors.c:327 util/render-label.c:84 util/render-label.c:98 -#, c-format -msgid "invalid color specification `%s'" -msgstr "некоректне Ð²Ð¸Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ ÐºÐ¾Ð»ÑŒÐ¾Ñ€Ñƒ, «%s»" - -#: grub-core/lib/mips/arc/reboot.c:32 grub-core/lib/mips/loongson/reboot.c:61 -msgid "Reboot failed" -msgstr "Ðе вдалоÑÑ Ð¿ÐµÑ€ÐµÐ·Ð°Ð²Ð°Ð½Ñ‚Ð°Ð¶Ð¸Ñ‚Ð¸" - -#: grub-core/lib/random.c:113 -msgid "[LENGTH]" -msgstr "[ДОВЖИÐÐ]" - -#: grub-core/lib/random.c:114 -msgid "Hexdump random data." -msgstr "ШіÑтнадцÑтковий дамп випадкових даних." - -#: grub-core/loader/arm/linux.c:242 -msgid "device tree must be supplied (see `devicetree' command)" -msgstr "мало бути надано ієрархію приÑтроїв (див. команду «devicetree»)" - -#: grub-core/loader/arm/linux.c:334 -msgid "invalid zImage" -msgstr "некоректний образ zImage" - -#: grub-core/loader/arm/linux.c:450 grub-core/loader/efi/fdt.c:144 -msgid "invalid device tree" -msgstr "некоректна Ñ–Ñ”Ñ€Ð°Ñ€Ñ…Ñ–Ñ Ð¿Ñ€Ð¸Ñтроїв" - -#: grub-core/loader/arm/linux.c:493 grub-core/loader/arm64/linux.c:383 -#: grub-core/loader/i386/linux.c:1125 grub-core/loader/i386/pc/linux.c:479 -#: grub-core/loader/i386/xen.c:962 grub-core/loader/i386/xen.c:964 -#: grub-core/loader/ia64/efi/linux.c:591 grub-core/loader/mips/linux.c:501 -#: grub-core/loader/powerpc/ieee1275/linux.c:383 -#: grub-core/loader/riscv/linux.c:50 -#: grub-core/loader/sparc64/ieee1275/linux.c:511 -msgid "Load Linux." -msgstr "Завантажити Linux." - -#: grub-core/loader/arm/linux.c:495 grub-core/loader/arm64/linux.c:385 -#: grub-core/loader/i386/linux.c:1127 grub-core/loader/i386/pc/linux.c:482 -#: grub-core/loader/i386/xen.c:966 grub-core/loader/ia64/efi/linux.c:594 -#: grub-core/loader/mips/linux.c:503 -#: grub-core/loader/powerpc/ieee1275/linux.c:385 -#: grub-core/loader/riscv/linux.c:52 -#: grub-core/loader/sparc64/ieee1275/linux.c:513 -msgid "Load initrd." -msgstr "Завантажити initrd." - -#. TRANSLATORS: DTB stands for device tree blob. -#: grub-core/loader/arm/linux.c:498 grub-core/loader/efi/fdt.c:169 -msgid "Load DTB file." -msgstr "Завантажити файл DTB." - -#: grub-core/loader/arm64/linux.c:59 -msgid "" -"plain image kernel not supported - rebuild with CONFIG_(U)EFI_STUB enabled" -msgstr "" -"підтримки звичайного Ñдра образу не передбачено. Виконайте повторне Ð·Ð±Ð¸Ñ€Ð°Ð½Ð½Ñ " -"з увімкненим параметром CONFIG_(U)EFI_STUB." - -#: grub-core/loader/arm64/xen_boot.c:156 -msgid "failed to get FDT" -msgstr "не вдалоÑÑ Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ñ‚Ð¸ FDT" - -#: grub-core/loader/arm64/xen_boot.c:418 -msgid "you need to load the Xen Hypervisor first" -msgstr "Ñпочатку Ñлід завантажити гіпервізор Xen" - -#: grub-core/loader/arm64/xen_boot.c:516 -msgid "Load a xen hypervisor." -msgstr "Завантажити гіпервізор xen." - -#: grub-core/loader/arm64/xen_boot.c:519 -msgid "Load a xen module." -msgstr "Завантажити модуль xen." - -#: grub-core/loader/efi/appleloader.c:231 -msgid "[OPTS]" -msgstr "[ПÐРÐМЕТРИ]" - -#. TRANSLATORS: This command is used on EFI to -#. switch to BIOS mode and boot the OS requiring -#. BIOS. -#: grub-core/loader/efi/appleloader.c:235 -msgid "Boot BIOS-based system." -msgstr "Завантажити ÑиÑтему, заÑновану на BIOS." - -#: grub-core/loader/efi/chainloader.c:421 -#: grub-core/loader/i386/pc/chainloader.c:303 -msgid "Load another boot loader." -msgstr "Завантажити інший інÑтрумент завантаженнÑ." - -#: grub-core/loader/i386/bsd.c:103 -msgid "Display output on all consoles." -msgstr "Показувати Ð¿Ð¾Ð²Ñ–Ð´Ð¾Ð¼Ð»ÐµÐ½Ð½Ñ Ñƒ вÑÑ–Ñ… конÑолÑÑ…." - -#: grub-core/loader/i386/bsd.c:104 grub-core/loader/i386/bsd.c:138 -#: grub-core/loader/i386/bsd.c:171 -msgid "Use serial console." -msgstr "ВикориÑтовувати конÑоль на поÑлідовному порті." - -#: grub-core/loader/i386/bsd.c:105 grub-core/loader/i386/bsd.c:131 -#: grub-core/loader/i386/bsd.c:159 -msgid "Ask for file name to reboot from." -msgstr "Запитати про назву файла Ð´Ð»Ñ Ð¿ÐµÑ€ÐµÐ·Ð°Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ." - -#: grub-core/loader/i386/bsd.c:106 -msgid "Use CD-ROM as root." -msgstr "ВикориÑтовувати компакт-диÑк Ñк кореневу теку." - -#: grub-core/loader/i386/bsd.c:107 -msgid "Invoke user configuration routing." -msgstr "Виконати Ð½Ð°Ð»Ð°ÑˆÑ‚ÑƒÐ²Ð°Ð½Ð½Ñ Ð¼Ð°Ñ€ÑˆÑ€ÑƒÑ‚Ð¸Ð·Ð°Ñ†Ñ–Ñ— кориÑтувачем." - -#: grub-core/loader/i386/bsd.c:108 grub-core/loader/i386/bsd.c:135 -#: grub-core/loader/i386/bsd.c:162 -msgid "Enter in KDB on boot." -msgstr "Увійти до KDB під Ñ‡Ð°Ñ Ð·Ð°Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ." - -#: grub-core/loader/i386/bsd.c:109 -msgid "Use GDB remote debugger instead of DDB." -msgstr "ВикориÑтати віддалений інÑтрумент Ð·Ð½ÐµÐ²Ð°Ð´Ð¶ÑƒÐ²Ð°Ð½Ð½Ñ GDB заміÑть DDB." - -#: grub-core/loader/i386/bsd.c:110 -msgid "Disable all boot output." -msgstr "Вимкнути Ð²Ð¸Ð²ÐµÐ´ÐµÐ½Ð½Ñ Ð²ÑÑ–Ñ… повідомлень під Ñ‡Ð°Ñ Ð·Ð°Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ." - -#: grub-core/loader/i386/bsd.c:112 -msgid "Wait for keypress after every line of output." -msgstr "Очікувати на натиÑÐºÐ°Ð½Ð½Ñ ÐºÐ»Ð°Ð²Ñ–ÑˆÑ– піÑÐ»Ñ ÐºÐ¾Ð¶Ð½Ð¾Ð³Ð¾ виведеного Ñ€Ñдка." - -#: grub-core/loader/i386/bsd.c:114 -msgid "Use compiled-in root device." -msgstr "ВикориÑтовувати вбудований кореневий приÑтрій." - -#: grub-core/loader/i386/bsd.c:115 grub-core/loader/i386/bsd.c:134 -#: grub-core/loader/i386/bsd.c:165 -msgid "Boot into single mode." -msgstr "Завантажити ÑиÑтему у режимі єдиного кориÑтувача." - -#: grub-core/loader/i386/bsd.c:116 grub-core/loader/i386/bsd.c:166 -msgid "Boot with verbose messages." -msgstr "Показувати докладні Ð¿Ð¾Ð²Ñ–Ð´Ð¾Ð¼Ð»ÐµÐ½Ð½Ñ Ð¿Ñ–Ð´ Ñ‡Ð°Ñ Ð·Ð°Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ." - -#: grub-core/loader/i386/bsd.c:132 grub-core/loader/i386/bsd.c:160 -msgid "Don't reboot, just halt." -msgstr "Ðе виконувати перезавантаженнÑ, проÑто вимкнути." - -#: grub-core/loader/i386/bsd.c:133 grub-core/loader/i386/bsd.c:161 -msgid "Change configured devices." -msgstr "Змінити налаштовані приÑтрої." - -#. TRANSLATORS: "com" is static and not to be translated. It refers to -#. serial ports e.g. com1. -#. -#: grub-core/loader/i386/bsd.c:142 -msgid "comUNIT[,SPEED]" -msgstr "одинОБМІÐУ[,ШВИДКІСТЬ]" - -#: grub-core/loader/i386/bsd.c:157 -msgid "Disable SMP." -msgstr "Вимкнути SMP." - -#: grub-core/loader/i386/bsd.c:158 -msgid "Disable ACPI." -msgstr "Вимкнути ACPI." - -#: grub-core/loader/i386/bsd.c:164 -msgid "Don't display boot diagnostic messages." -msgstr "Ðе показувати діагноÑтичні Ð¿Ð¾Ð²Ñ–Ð´Ð¾Ð¼Ð»ÐµÐ½Ð½Ñ Ð¿Ñ€Ð¸ завантаженні." - -#: grub-core/loader/i386/bsd.c:167 -msgid "Boot with debug messages." -msgstr "Ð—Ð°Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ Ð· показом діагноÑтичних повідомлень." - -#: grub-core/loader/i386/bsd.c:168 -msgid "Suppress normal output (warnings remain)." -msgstr "Придушити звичайні Ð¿Ð¾Ð²Ñ–Ð´Ð¾Ð¼Ð»ÐµÐ½Ð½Ñ (показувати лише попередженнÑ)." - -#. TRANSLATORS: "com" is static and not to be translated. It refers to -#. serial ports e.g. com1. -#. -#: grub-core/loader/i386/bsd.c:175 -msgid "[ADDR|comUNIT][,SPEED]" -msgstr "[ÐДРЕСÐ|одинОБМІÐУ][,ШВИДКІСТЬ]" - -#: grub-core/loader/i386/bsd.c:489 grub-core/loader/i386/bsd.c:555 -msgid "name" -msgstr "назва" - -#: grub-core/loader/i386/bsd.c:489 grub-core/loader/i386/bsd.c:555 -msgid "type" -msgstr "тип" - -#: grub-core/loader/i386/bsd.c:489 grub-core/loader/i386/bsd.c:555 -msgid "addr" -msgstr "адреÑа" - -#: grub-core/loader/i386/bsd.c:490 grub-core/loader/i386/bsd.c:556 -msgid "size" -msgstr "розмір" - -#: grub-core/loader/i386/bsd.c:1147 grub-core/loader/i386/linux.c:466 -#: grub-core/loader/i386/xnu.c:1030 -msgid "Booting in blind mode" -msgstr "Ð—Ð°Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ ÑиÑтеми у «Ñліпому» режимі" - -#: grub-core/loader/i386/bsd.c:2137 -msgid "Load kernel of FreeBSD." -msgstr "Завантажити Ñдро FreeBSD." - -#: grub-core/loader/i386/bsd.c:2140 -msgid "Load kernel of OpenBSD." -msgstr "Завантажити Ñдро OpenBSD." - -#: grub-core/loader/i386/bsd.c:2143 -msgid "Load kernel of NetBSD." -msgstr "Завантажити Ñдро NetBSD." - -#: grub-core/loader/i386/bsd.c:2147 -msgid "Load FreeBSD env." -msgstr "Завантажити Ñередовище FreeBSD." - -#: grub-core/loader/i386/bsd.c:2150 -msgid "Load FreeBSD kernel module." -msgstr "Завантажити модуль Ñдра FreeBSD." - -#: grub-core/loader/i386/bsd.c:2153 -msgid "Load NetBSD kernel module." -msgstr "Завантажити модуль Ñдра NetBSD." - -#: grub-core/loader/i386/bsd.c:2156 -msgid "Load NetBSD kernel module (ELF)." -msgstr "Завантажити модуль Ñдра NetBSD (ELF)." - -#: grub-core/loader/i386/bsd.c:2159 -msgid "Load FreeBSD kernel module (ELF)." -msgstr "Завантажити модуль Ñдра FreeBSD (ELF)." - -#. TRANSLATORS: ramdisk isn't identifier, -#. it can be translated. -#: grub-core/loader/i386/bsd.c:2165 -msgid "Load kOpenBSD ramdisk." -msgstr "Завантажити диÑк даних оперативної пам’Ñті kOpenBSD." - -#. TRANSLATORS: "payload" is a term used -#. by coreboot and must be translated in -#. sync with coreboot. If unsure, -#. let it untranslated. -#: grub-core/loader/i386/coreboot/chainloader.c:510 -msgid "Load another coreboot payload" -msgstr "Завантажити інші дані coreboot" - -#: grub-core/loader/i386/linux.c:876 -msgid "Legacy `ask' parameter no longer supported." -msgstr "Підтримки заÑтарілого параметра «ask» вже не передбачено." - -#: grub-core/loader/i386/linux.c:892 grub-core/loader/i386/linux.c:902 -#: grub-core/loader/i386/linux.c:932 -#, c-format -msgid "%s is deprecated. Use set gfxpayload=%s before linux command instead.\n" -msgstr "" -"%s вважаєтьÑÑ Ð·Ð°Ñтарілим. ЗаміÑть нього ÑкориÑтайтеÑÑ set gfxpayload=%s до " -"команди linux.\n" - -#. TRANSLATORS: "x" has to be entered in, like an identifier, -#. so please don't use better Unicode codepoints. -#: grub-core/loader/i386/linux.c:915 -#, c-format -msgid "" -"%s is deprecated. VGA mode %d isn't recognized. Use set " -"gfxpayload=WIDTHxHEIGHT[xDEPTH] before linux command instead.\n" -msgstr "" -"%s вважаєтьÑÑ Ð·Ð°Ñтарілим. Режим VGA %d не розпізнаєтьÑÑ. ЗаміÑть нього " -"ÑкориÑтайтеÑÑ set gfxpayload=ШИРИÐÐxВИСОТÐ[xГЛИБИÐÐ] перед командою linux.\n" - -#: grub-core/loader/i386/pc/chainloader.c:302 -msgid "[--force|--bpb] FILE" -msgstr "[--force|--bpb] ФÐЙЛ" - -#: grub-core/loader/i386/pc/freedos.c:148 util/setup.c:293 -#, c-format -msgid "the size of `%s' is too large" -msgstr "розмір «%s» Ñ” занадто великим" - -#: grub-core/loader/i386/pc/freedos.c:183 -msgid "Load FreeDOS kernel.sys." -msgstr "Завантажити kernel.sys FreeDOS." - -#: grub-core/loader/i386/pc/ntldr.c:155 -msgid "Load NTLDR or BootMGR." -msgstr "Завантажити NTLDR або BootMGR." - -#. TRANSLATORS: it's about guessing which GRUB disk -#. is which Plan9 disk. If your language has no -#. word "mapping" you can use another word which -#. means that the GRUBDEVICE and PLAN9DEVICE are -#. actually the same device, just named differently -#. in OS and GRUB. -#: grub-core/loader/i386/pc/plan9.c:59 -msgid "Override guessed mapping of Plan9 devices." -msgstr "Перевизначити вгадану карту приÑтроїв Plan9." - -#: grub-core/loader/i386/pc/plan9.c:60 -msgid "GRUBDEVICE=PLAN9DEVICE" -msgstr "ПРИСТРІЙ_GRUB=ПРИСТРІЙ_PLAN9" - -#: grub-core/loader/i386/pc/plan9.c:599 -msgid "KERNEL ARGS" -msgstr "ЯДРО ÐРГУМЕÐТИ" - -#: grub-core/loader/i386/pc/plan9.c:599 -msgid "Load Plan9 kernel." -msgstr "Завантажити Ñдро Plan9." - -#: grub-core/loader/i386/pc/pxechainloader.c:161 -msgid "Load a PXE image." -msgstr "Завантажити образ PXE." - -#: grub-core/loader/i386/pc/truecrypt.c:226 -msgid "Load Truecrypt ISO." -msgstr "Завантажити образ ISO з Truecrypt." - -#: grub-core/loader/i386/xen.c:781 grub-core/loader/i386/xen.c:865 -msgid "initrd already loaded" -msgstr "initrd вже завантажено" - -#: grub-core/loader/i386/xen.c:968 -msgid "Load module." -msgstr "Завантажити модуль." - -#: grub-core/loader/i386/xnu.c:1003 -msgid "Press any key to launch xnu" -msgstr "ÐатиÑніть будь-Ñку клавішу, щоб запуÑтити xnu" - -#. TRANSLATORS: `device-properties' -#. is a variable name, -#. not a program. -#: grub-core/loader/i386/xnu.c:1159 -msgid "Load `device-properties' dump." -msgstr "Завантажити дамп «device-properties»." - -#: grub-core/loader/ia64/efi/linux.c:124 -msgid "Could not locate FPSWA driver" -msgstr "Ðе вдалоÑÑ Ð²Ð¸Ñвити драйвер FPSWA" - -#: grub-core/loader/ia64/efi/linux.c:132 -msgid "FPSWA protocol wasn't able to find the interface" -msgstr "Протоколу FPSWA не вдалоÑÑ Ð·Ð½Ð°Ð¹Ñ‚Ð¸ інтерфейÑ" - -#: grub-core/loader/ia64/efi/linux.c:580 -msgid "No FPSWA found" -msgstr "FPSWA не знайдено" - -#: grub-core/loader/ia64/efi/linux.c:582 -#, c-format -msgid "FPSWA revision: %x\n" -msgstr "ÐœÐ¾Ð´Ð¸Ñ„Ñ–ÐºÐ°Ñ†Ñ–Ñ FPSWA: %x\n" - -#: grub-core/loader/ia64/efi/linux.c:591 -msgid "FILE [ARGS...]" -msgstr "ФÐЙЛ [ПÐРÐМЕТРИ...]" - -#: grub-core/loader/ia64/efi/linux.c:597 -msgid "Display FPSWA version." -msgstr "Показати дані щодо верÑÑ–Ñ— FPSWA." - -#: grub-core/loader/multiboot.c:248 -msgid "WARNING: no console will be available to OS" -msgstr "УВÐГÐ: конÑоль не буде доÑтупною ОС" - -#: grub-core/loader/multiboot.c:450 -msgid "Load a multiboot 2 kernel." -msgstr "Завантажити Ñдро multiboot 2." - -#: grub-core/loader/multiboot.c:453 -msgid "Load a multiboot 2 module." -msgstr "Завантажити модуль multiboot 2." - -#: grub-core/loader/multiboot.c:456 -msgid "Load a multiboot kernel." -msgstr "Завантажити Ñдро multiboot." - -#: grub-core/loader/multiboot.c:459 -msgid "Load a multiboot module." -msgstr "Завантажити модуль multiboot." - -#: grub-core/loader/riscv/linux.c:30 grub-core/loader/riscv/linux.c:40 -msgid "Linux not supported yet" -msgstr "Підтримки Linux ще не передбачено" - -#: grub-core/loader/xnu.c:1416 grub-core/term/gfxterm_background.c:45 -msgid "Background image mode." -msgstr "Режим фонового зображеннÑ." - -#. TRANSLATORS: This refers to background image mode (stretched or -#. in left-top corner). Note that GRUB will accept only original -#. keywords stretch and normal, not the translated ones. -#. So please put both in translation -#. e.g. stretch(=%STRETCH%)|normal(=%NORMAL%). -#. The percents mark the translated version. Since many people -#. may not know the word stretch or normal I recommend -#. putting the translation either here or in "Background image mode." -#. string. -#: grub-core/loader/xnu.c:1416 grub-core/term/gfxterm_background.c:55 -msgid "stretch|normal" -msgstr "stretch|normal" - -#: grub-core/loader/xnu.c:1482 -msgid "Load XNU image." -msgstr "Завантажити образ XNU." - -#: grub-core/loader/xnu.c:1484 -msgid "Load 64-bit XNU image." -msgstr "Завантажити 64-бітовий образ XNU." - -#: grub-core/loader/xnu.c:1486 -msgid "Load XNU extension package." -msgstr "Завантажити пакунок Ñ€Ð¾Ð·ÑˆÐ¸Ñ€ÐµÐ½Ð½Ñ XNU." - -#: grub-core/loader/xnu.c:1488 -msgid "Load XNU extension." -msgstr "Завантажити Ñ€Ð¾Ð·ÑˆÐ¸Ñ€ÐµÐ½Ð½Ñ XNU." - -#. TRANSLATORS: OSBundleRequired is a -#. variable name in xnu extensions -#. manifests. It behaves mostly like -#. GNU/Linux runlevels. -#. -#: grub-core/loader/xnu.c:1495 -msgid "DIRECTORY [OSBundleRequired]" -msgstr "КÐТÐЛОГ [OSBundleRequired]" - -#. TRANSLATORS: There are many extensions -#. in extension directory. -#: grub-core/loader/xnu.c:1498 -msgid "Load XNU extension directory." -msgstr "Завантажити каталог Ñ€Ð¾Ð·ÑˆÐ¸Ñ€ÐµÐ½Ð½Ñ XNU." - -#. TRANSLATORS: ramdisk here isn't identifier. It can be translated. -#: grub-core/loader/xnu.c:1501 -msgid "Load XNU ramdisk. It will be available in OS as md0." -msgstr "" -"Завантажити диÑк у пам’Ñті XNU. У операційній ÑиÑтемі буде показано Ñк md0." - -#: grub-core/loader/xnu.c:1505 -msgid "Load a splash image for XNU." -msgstr "Завантажити вітальне Ð·Ð¾Ð±Ñ€Ð°Ð¶ÐµÐ½Ð½Ñ Ð´Ð»Ñ XNU." - -#: grub-core/loader/xnu.c:1510 -msgid "Load an image of hibernated XNU." -msgstr "Завантажити образ XNU приÑпаної ÑиÑтеми." - -#: grub-core/mmap/mmap.c:538 -msgid "ADDR1,MASK1[,ADDR2,MASK2[,...]]" -msgstr "ÐДРЕСÐ1,МÐСКÐ1[,ÐДРЕСÐ2,МÐСКÐ2[,...]]" - -#: grub-core/mmap/mmap.c:539 -msgid "Declare memory regions as faulty (badram)." -msgstr "Позначити діапазони пам’Ñті Ñк пошкоджені (badram)." - -#: grub-core/mmap/mmap.c:541 -msgid "FROM[K|M|G] TO[K|M|G]" -msgstr "З[K|M|G] ДО[K|M|G]" - -#: grub-core/mmap/mmap.c:542 -msgid "Remove any memory regions in specified range." -msgstr "Вилучити вÑÑ– ділÑнки пам’Ñті у вказаному діапазоні." - -#: grub-core/net/bootp.c:653 -msgid "four arguments expected" -msgstr "мало бути вказано чотири аргументи" - -#: grub-core/net/bootp.c:661 grub-core/net/net.c:1155 -#, c-format -msgid "unrecognised network interface `%s'" -msgstr "нерозпізнаний Ñ–Ð½Ñ‚ÐµÑ€Ñ„ÐµÐ¹Ñ Ð¼ÐµÑ€ÐµÐ¶Ñ–, «%s»" - -#: grub-core/net/bootp.c:664 -msgid "no DHCP info found" -msgstr "не знайдено даних щодо DHCP" - -#: grub-core/net/bootp.c:674 -msgid "no DHCP options found" -msgstr "не знайдено параметрів DHCP" - -#: grub-core/net/bootp.c:682 -msgid "invalid DHCP option code" -msgstr "некоректний код параметра DHCP" - -#: grub-core/net/bootp.c:686 -#, c-format -msgid "no DHCP option %u found" -msgstr "не знайдено параметра %u DHCP" - -#: grub-core/net/bootp.c:743 -#, c-format -msgid "unrecognised DHCP option format specification `%s'" -msgstr "непридатне до Ñ€Ð¾Ð·Ð¿Ñ–Ð·Ð½Ð°Ð²Ð°Ð½Ð½Ñ Ð²Ð¸Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ñ„Ð¾Ñ€Ð¼Ð°Ñ‚Ñƒ параметра DHCP, «%s»" - -#: grub-core/net/bootp.c:767 -msgid "no network card found" -msgstr "мережевої картки не знайдено" - -#: grub-core/net/bootp.c:859 grub-core/net/net.c:389 -#, c-format -msgid "couldn't autoconfigure %s" -msgstr "не вдалоÑÑ Ð²Ð¸ÐºÐ¾Ð½Ð°Ñ‚Ð¸ автоматичне Ð½Ð°Ð»Ð°ÑˆÑ‚ÑƒÐ²Ð°Ð½Ð½Ñ %s" - -#: grub-core/net/bootp.c:873 grub-core/net/bootp.c:876 -msgid "[CARD]" -msgstr "[КÐРТКÐ]" - -#: grub-core/net/bootp.c:874 -msgid "perform a bootp autoconfiguration" -msgstr "виконати автоматичне Ð½Ð°Ð»Ð°ÑˆÑ‚ÑƒÐ²Ð°Ð½Ð½Ñ bootp" - -#: grub-core/net/bootp.c:877 -msgid "perform a DHCP autoconfiguration" -msgstr "виконати автоматичне Ð½Ð°Ð»Ð°ÑˆÑ‚ÑƒÐ²Ð°Ð½Ð½Ñ DHCP" - -#: grub-core/net/bootp.c:879 -msgid "VAR INTERFACE NUMBER DESCRIPTION" -msgstr "ЗМІÐÐРІÐТЕРФЕЙС ÐОМЕР ОПИС" - -#: grub-core/net/bootp.c:880 -msgid "" -"retrieve DHCP option and save it into VAR. If VAR is - then print the value." -msgstr "" -"отримати Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð¿Ð°Ñ€Ð°Ð¼ÐµÑ‚Ñ€Ð° DHCP Ñ– зберегти його до ЗМІÐÐОЇ. Якщо ЗМІÐÐОЮ Ñ” " -"-, вивеÑти значеннÑ." - -#: grub-core/net/dns.c:459 -msgid "no DNS servers configured" -msgstr "не налаштовано Ñерверів DNS" - -#: grub-core/net/dns.c:522 -msgid "domain name component is too long" -msgstr "компонент назви домену Ñ” занадто довгим" - -#: grub-core/net/dns.c:618 grub-core/net/dns.c:666 -msgid "no DNS record found" -msgstr "не знайдено запиÑу DHCP" - -#: grub-core/net/dns.c:626 -msgid "no DNS reply received" -msgstr "не отримано відповіді DNS" - -#: grub-core/net/dns.c:682 -msgid "only ipv4" -msgstr "лише ipv4" - -#: grub-core/net/dns.c:686 -msgid "only ipv6" -msgstr "лише ipv6" - -#: grub-core/net/dns.c:690 -msgid "prefer ipv4" -msgstr "перевага ipv4" - -#: grub-core/net/dns.c:694 -msgid "prefer ipv6" -msgstr "перевага ipv6" - -#: grub-core/net/dns.c:759 -msgid "ADDRESS DNSSERVER" -msgstr "ÐДРЕСРСЕРВЕР_DNS" - -#: grub-core/net/dns.c:760 -msgid "Perform a DNS lookup" -msgstr "Виконати пошук DNS" - -#: grub-core/net/dns.c:762 grub-core/net/dns.c:765 -msgid "DNSSERVER" -msgstr "СЕРВЕР_DNS" - -#: grub-core/net/dns.c:763 -msgid "Add a DNS server" -msgstr "Додати Ñервер DNS" - -#: grub-core/net/dns.c:766 -msgid "Remove a DNS server" -msgstr "Вилучити Ñервер DNS" - -#: grub-core/net/dns.c:768 -msgid "List DNS servers" -msgstr "Показати ÑпиÑок Ñерверів DNS." - -#: grub-core/net/drivers/efi/efinet.c:49 grub-core/net/drivers/efi/efinet.c:65 -#: grub-core/net/drivers/efi/efinet.c:77 grub-core/net/drivers/emu/emunet.c:62 -#: grub-core/net/drivers/i386/pc/pxe.c:273 -#: grub-core/net/drivers/ieee1275/ofnet.c:75 -#: grub-core/net/drivers/uboot/ubootnet.c:62 -msgid "couldn't send network packet" -msgstr "не вдалоÑÑ Ð½Ð°Ð´Ñ–Ñлати пакет даних мережею" - -#: grub-core/net/drivers/ieee1275/ofnet.c:326 -#: grub-core/net/drivers/ieee1275/ofnet.c:359 -msgid "interpret is not supported" -msgstr "підтримки інтерпретації не передбачено" - -#: grub-core/net/drivers/ieee1275/ofnet.c:336 -msgid "alloc-mem failed" -msgstr "помилка alloc-mem" - -#: grub-core/net/drivers/ieee1275/ofnet.c:370 -msgid "free-mem failed" -msgstr "помилка free-mem" - -#: grub-core/net/http.c:105 -msgid "unsupported HTTP response" -msgstr "непідтримувана відповідь HTTP" - -#. TRANSLATORS: GRUB HTTP code is pretty young. So even perfectly -#. valid answers like 403 will trigger this very generic message. -#: grub-core/net/http.c:126 -#, c-format -msgid "unsupported HTTP error %d: %s" -msgstr "непідтримуване Ð¿Ð¾Ð²Ñ–Ð´Ð¾Ð¼Ð»ÐµÐ½Ð½Ñ Ð¿Ñ€Ð¾ помилку HTTP, %d: %s" - -#: grub-core/net/http.c:429 grub-core/net/tftp.c:420 -#, c-format -msgid "time out opening `%s'" -msgstr "Ð¿ÐµÑ€ÐµÐ²Ð¸Ñ‰ÐµÐ½Ð½Ñ Ñ‡Ð°Ñу Ð¾Ñ‡Ñ–ÐºÑƒÐ²Ð°Ð½Ð½Ñ Ð½Ð° Ð²Ñ–Ð´ÐºÑ€Ð¸Ñ‚Ñ‚Ñ Â«%s»" - -#: grub-core/net/net.c:179 -msgid "timeout: could not resolve hardware address" -msgstr "Ð¿ÐµÑ€ÐµÐ²Ð¸Ñ‰ÐµÐ½Ð½Ñ Ñ‡Ð°Ñу очікуваннÑ: не вдалоÑÑ Ð²Ð¸Ð·Ð½Ð°Ñ‡Ð¸Ñ‚Ð¸ апаратну адреÑу" - -#: grub-core/net/net.c:548 -#, c-format -msgid "unresolvable address %s" -msgstr "непридатна до Ð²Ð¸Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð°Ð´Ñ€ÐµÑа %s" - -#: grub-core/net/net.c:594 -#, c-format -msgid "unrecognised network address `%s'" -msgstr "нерозпізнана адреÑа у мережі, «%s»" - -#: grub-core/net/net.c:661 -msgid "destination unreachable" -msgstr "Ð¿Ñ€Ð¸Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð½ÐµÐ´Ð¾Ñтупне" - -#. TRANSLATORS: route loop is a condition when e.g. -#. to contact server A you need to go through B -#. and to contact B you need to go through A. -#: grub-core/net/net.c:684 -msgid "route loop detected" -msgstr "виÑвлено циклічну маршрутизацію" - -#: grub-core/net/net.c:700 -msgid "address not found" -msgstr "адреÑу не знайдено" - -#: grub-core/net/net.c:704 -msgid "you can't delete this address" -msgstr "ви не можете вилучити цю адреÑу" - -#: grub-core/net/net.c:776 grub-core/net/net.c:792 -#, c-format -msgid "Unsupported hw address type %d\n" -msgstr "Ðепідтримуваний тип апаратної адреÑи, %d\n" - -#: grub-core/net/net.c:813 -#, c-format -msgid "Unsupported address type %d\n" -msgstr "Ðепідтримуваний тип адреÑи, %d\n" - -#: grub-core/net/net.c:1017 grub-core/net/net.c:1131 -msgid "three arguments expected" -msgstr "мало бути вказано три аргументи" - -#: grub-core/net/net.c:1023 -msgid "card not found" -msgstr "не знайдено картки" - -#. TRANSLATORS: it refers to the network address. -#: grub-core/net/net.c:1167 -msgid "temporary" -msgstr "тимчаÑова" - -#: grub-core/net/net.c:1190 -#, c-format -msgid "Unknown address type %d\n" -msgstr "Ðевідомий тип адреÑи, %d\n" - -#: grub-core/net/net.c:1298 -msgid "no server is specified" -msgstr "не вказано Ñервера" - -#: grub-core/net/net.c:1637 -#, c-format -msgid "timeout reading `%s'" -msgstr "Ð¿ÐµÑ€ÐµÐ²Ð¸Ñ‰ÐµÐ½Ð½Ñ Ñ‡Ð°Ñу Ð¾Ñ‡Ñ–ÐºÑƒÐ²Ð°Ð½Ð½Ñ Ð¿Ñ–Ð´ Ñ‡Ð°Ñ Ñ‡Ð¸Ñ‚Ð°Ð½Ð½Ñ Â«%s»" - -#. TRANSLATORS: HWADDRESS stands for -#. "hardware address". -#: grub-core/net/net.c:1762 -msgid "SHORTNAME CARD ADDRESS [HWADDRESS]" -msgstr "СКОРОЧЕÐÐ_ÐÐЗВРКÐРТКРÐДРЕСР[ÐПÐРÐТÐÐ_ÐДРЕСÐ]" - -#: grub-core/net/net.c:1763 -msgid "Add a network address." -msgstr "Додати мережеву адреÑу." - -#: grub-core/net/net.c:1766 -msgid "[CARD [HWADDRESS]]" -msgstr "[КÐРТКР[ÐПÐРÐТÐÐ_ÐДРЕСÐ]]" - -#: grub-core/net/net.c:1767 -msgid "Perform an IPV6 autoconfiguration" -msgstr "Виконати автоматичне Ð½Ð°Ð»Ð°ÑˆÑ‚Ð¾Ð²ÑƒÐ²Ð°Ð½Ð½Ñ IPV6" - -#: grub-core/net/net.c:1770 grub-core/net/net.c:1777 -msgid "SHORTNAME" -msgstr "СКОРОЧЕÐÐ_ÐÐЗВÐ" - -#: grub-core/net/net.c:1771 -msgid "Delete a network address." -msgstr "Вилучити адреÑу у мережі." - -#. TRANSLATORS: "gw" is a keyword. -#: grub-core/net/net.c:1774 -msgid "SHORTNAME NET [INTERFACE| gw GATEWAY]" -msgstr "СКОРОЧЕÐÐ_ÐÐЗВРМЕРЕЖР[ІÐТЕРФЕЙС| gw ШЛЮЗ]" - -#: grub-core/net/net.c:1775 -msgid "Add a network route." -msgstr "Додати мережевий маршрут." - -#: grub-core/net/net.c:1778 -msgid "Delete a network route." -msgstr "Вилучити мережевий маршрут." - -#: grub-core/net/net.c:1780 -msgid "list network routes" -msgstr "показати ÑпиÑок мережевих маршрутів" - -#: grub-core/net/net.c:1782 -msgid "list network cards" -msgstr "показати ÑпиÑок мережевих карток" - -#: grub-core/net/net.c:1784 -msgid "list network addresses" -msgstr "показати ÑпиÑок мережевих адреÑ" - -#: grub-core/net/tcp.c:681 -msgid "connection refused" -msgstr "у з'єднанні відмовлено" - -#: grub-core/net/tcp.c:684 -msgid "connection timeout" -msgstr "перевищено Ñ‡Ð°Ñ Ð¾Ñ‡Ñ–ÐºÑƒÐ²Ð°Ð½Ð½Ñ Ð½Ð° з’єднаннÑ" - -#: grub-core/normal/auth.c:220 -msgid "Enter username: " -msgstr "Введіть Ñ–Ð¼â€™Ñ ÐºÐ¾Ñ€Ð¸Ñтувача: " - -#: grub-core/normal/auth.c:269 -msgid "[USERLIST]" -msgstr "[СПИСОК_КОРИСТУВÐЧІВ]" - -#: grub-core/normal/auth.c:270 -msgid "Check whether user is in USERLIST." -msgstr "Перевірити, чи Ñ” Ð·Ð°Ð¿Ð¸Ñ ÐºÐ¾Ñ€Ð¸Ñтувача у СПИСКУ_КОРИСТУВÐЧІВ." - -#: grub-core/normal/cmdline.c:174 grub-core/normal/menu_entry.c:1068 -msgid "Possible commands are:" -msgstr "Можливі команди:" - -#: grub-core/normal/cmdline.c:177 grub-core/normal/menu_entry.c:1072 -msgid "Possible devices are:" -msgstr "Можливі приÑтрої:" - -#: grub-core/normal/cmdline.c:180 grub-core/normal/menu_entry.c:1076 -msgid "Possible files are:" -msgstr "Можливі файли:" - -#: grub-core/normal/cmdline.c:183 grub-core/normal/menu_entry.c:1080 -msgid "Possible partitions are:" -msgstr "Можливі розділи:" - -#: grub-core/normal/cmdline.c:186 grub-core/normal/menu_entry.c:1084 -msgid "Possible arguments are:" -msgstr "Можливі параметри:" - -#. TRANSLATORS: this message is used if none of above matches. -#. This shouldn't happen but please use the general term for -#. "thing" or "object". -#: grub-core/normal/cmdline.c:192 grub-core/normal/menu_entry.c:1088 -msgid "Possible things are:" -msgstr "Можливі елементи:" - -#: grub-core/normal/color.c:81 -#, c-format -msgid "Warning: syntax error (missing slash) in `%s'\n" -msgstr "ПопередженнÑ: ÑинтакÑична помилка (немає похилої риÑки) у «%s»\n" - -#: grub-core/normal/color.c:90 -#, c-format -msgid "Warning: invalid foreground color `%s'\n" -msgstr "ПопередженнÑ: некоректний колір текÑту «%s»\n" - -#: grub-core/normal/color.c:96 -#, c-format -msgid "Warning: invalid background color `%s'\n" -msgstr "ПопередженнÑ: помилковий колір тла «%s»\n" - -#: grub-core/normal/context.c:206 -msgid "ENVVAR [ENVVAR] ..." -msgstr "ЗМІÐÐÐ_СЕРЕДОВИЩР[ЗМІÐÐÐ_СЕРЕДОВИЩÐ] ..." - -#: grub-core/normal/context.c:207 -msgid "Export variables." -msgstr "ЕкÑпортувати змінні." - -#: grub-core/normal/datetime.c:25 -msgid "Sunday" -msgstr "неділÑ" - -#: grub-core/normal/datetime.c:26 -msgid "Monday" -msgstr "понеділок" - -#: grub-core/normal/datetime.c:27 -msgid "Tuesday" -msgstr "вівторок" - -#: grub-core/normal/datetime.c:28 -msgid "Wednesday" -msgstr "Ñереда" - -#: grub-core/normal/datetime.c:29 -msgid "Thursday" -msgstr "четвер" - -#: grub-core/normal/datetime.c:30 -msgid "Friday" -msgstr "п’ÑтницÑ" - -#: grub-core/normal/datetime.c:31 -msgid "Saturday" -msgstr "Ñубота" - -#: grub-core/normal/dyncmd.c:187 -msgid "module isn't loaded" -msgstr "модуль не завантажено" - -#: grub-core/normal/main.c:211 -#, c-format -msgid "GNU GRUB version %s" -msgstr "GNU GRUB, верÑÑ–Ñ %s" - -#: grub-core/normal/main.c:360 -msgid "ESC at any time exits." -msgstr "Щоб вийти, натиÑніть ESC." - -#: grub-core/normal/main.c:363 -#, c-format -msgid "" -"Minimal BASH-like line editing is supported. For the first word, TAB lists " -"possible command completions. Anywhere else TAB lists possible device or " -"file completions. %s" -msgstr "" -"Передбачено підтримку декількох BASH-подібних команд Ñ€ÐµÐ´Ð°Ð³ÑƒÐ²Ð°Ð½Ð½Ñ Ñ€Ñдків. " -"ÐатиÑÐºÐ°Ð½Ð½Ñ ÐºÐ»Ð°Ð²Ñ–ÑˆÑ– TAB під Ñ‡Ð°Ñ Ð²Ð²ÐµÐ´ÐµÐ½Ð½Ñ Ð¿ÐµÑ€ÑˆÐ¾Ð³Ð¾ Ñлова призведе до показу " -"можливих варіантів Ð·Ð°Ð²ÐµÑ€ÑˆÐµÐ½Ð½Ñ ÐºÐ¾Ð¼Ð°Ð½Ð´Ð¸. Ð”Ð»Ñ Ñ–Ð½ÑˆÐ¸Ñ… Ñлів натиÑÐºÐ°Ð½Ð½Ñ TAB " -"призведе до показу ÑпиÑку можливих варіантів Ð·Ð°Ð²ÐµÑ€ÑˆÐµÐ½Ð½Ñ Ð½Ð°Ð·Ð²Ð¸ приÑтрою або " -"файла. %s" - -#. TRANSLATORS: it's command line prompt. -#: grub-core/normal/main.c:395 -msgid ">" -msgstr ">" - -#. TRANSLATORS: it's command line prompt. -#: grub-core/normal/main.c:398 -msgid "grub>" -msgstr "grub>" - -#: grub-core/normal/main.c:518 -msgid "Clear the screen." -msgstr "Спорожнити екран." - -#: grub-core/normal/main.c:527 -msgid "Enter normal mode." -msgstr "Увійти у звичайний режим." - -#: grub-core/normal/main.c:529 -msgid "Exit from normal mode." -msgstr "Вийти зі звичайного режиму." - -#: grub-core/normal/menu.c:66 grub-core/normal/menu_entry.c:1449 -msgid "Press any key to continue..." -msgstr "ÐатиÑніть будь-Ñку клавішу, щоб продовжити..." - -#: grub-core/normal/menu.c:815 -#, c-format -msgid "Booting `%s'" -msgstr "Ð—Ð°Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ Â«%s»" - -#: grub-core/normal/menu.c:827 -#, c-format -msgid "Falling back to `%s'" -msgstr "ПовертаємоÑÑ Ð´Ð¾ «%s»" - -#: grub-core/normal/menu.c:843 -msgid "Failed to boot both default and fallback entries.\n" -msgstr "Ðе вдалоÑÑ Ð·Ð°Ð²Ð°Ð½Ñ‚Ð°Ð¶Ð¸Ñ‚Ð¸ типовий та резервний запиÑи.\n" - -#: grub-core/normal/menu_entry.c:1171 -msgid "Booting a command list" -msgstr "Ð—Ð°Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ ÑпиÑку команд" - -#: grub-core/normal/menu_text.c:160 -msgid "" -"Minimum Emacs-like screen editing is supported. TAB lists completions. Press " -"Ctrl-x or F10 to boot, Ctrl-c or F2 for a command-line or ESC to discard " -"edits and return to the GRUB menu." -msgstr "" -"Передбачено підтримку декількох команд Emacs-подібного Ñ€ÐµÐ´Ð°Ð³ÑƒÐ²Ð°Ð½Ð½Ñ Ñ€Ñдків. " -"ÐатиÑÐºÐ°Ð½Ð½Ñ ÐºÐ»Ð°Ð²Ñ–ÑˆÑ– TAB призводить до показу ÑпиÑку можливих варіантів " -"завершеннÑ, натиÑÐºÐ°Ð½Ð½Ñ Ctrl-X або F10 — до завантаженнÑ, Ctrl-C або F2 — до " -"переходу у режим командного Ñ€Ñдка, ESC — до Ð²Ñ–Ð´ÐºÐ¸Ð´Ð°Ð½Ð½Ñ Ð²Ð½ÐµÑених змін Ñ– " -"Ð¿Ð¾Ð²ÐµÑ€Ð½ÐµÐ½Ð½Ñ Ð´Ð¾ меню GRUB." - -#: grub-core/normal/menu_text.c:170 -#, c-format -msgid "Use the %C and %C keys to select which entry is highlighted." -msgstr "СкориÑтайтеÑÑ ÐºÐ»Ð°Ð²Ñ–ÑˆÐ°Ð¼Ð¸ %C Ñ– %C Ð´Ð»Ñ Ð¿Ð¾Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð¿ÑƒÐ½ÐºÑ‚Ñƒ." - -#. TRANSLATORS: that's the list of binary unit prefixes. -#: grub-core/normal/misc.c:38 -msgid "B" -msgstr "Б" - -#: grub-core/normal/misc.c:38 -msgid "KiB" -msgstr "КіБ" - -#: grub-core/normal/misc.c:38 -msgid "MiB" -msgstr "МіБ" - -#: grub-core/normal/misc.c:38 -msgid "GiB" -msgstr "ГіБ" - -#: grub-core/normal/misc.c:38 -msgid "TiB" -msgstr "ТіБ" - -#: grub-core/normal/misc.c:38 -msgid "PiB" -msgstr "ПіБ" - -#. TRANSLATORS: that's the list of binary unit prefixes. -#: grub-core/normal/misc.c:40 -msgid "K" -msgstr "К" - -#: grub-core/normal/misc.c:40 -msgid "M" -msgstr "М" - -#: grub-core/normal/misc.c:40 -msgid "G" -msgstr "Г" - -#: grub-core/normal/misc.c:40 -msgid "T" -msgstr "Т" - -#: grub-core/normal/misc.c:40 -msgid "P" -msgstr "П" - -#. TRANSLATORS: that's the list of binary unit prefixes. -#: grub-core/normal/misc.c:42 -msgid "B/s" -msgstr "Б/Ñ" - -#: grub-core/normal/misc.c:42 -msgid "KiB/s" -msgstr "КіБ/Ñ" - -#: grub-core/normal/misc.c:42 -msgid "MiB/s" -msgstr "МіБ/Ñ" - -#: grub-core/normal/misc.c:42 -msgid "GiB/s" -msgstr "ГіБ/Ñ" - -#: grub-core/normal/misc.c:42 -msgid "TiB/s" -msgstr "ТіБ/Ñ" - -#: grub-core/normal/misc.c:42 -msgid "PiB/s" -msgstr "ПіБ/Ñ" - -#: grub-core/normal/misc.c:96 -#, c-format -msgid "Partition %s:" -msgstr "Розділ %s:" - -#: grub-core/normal/misc.c:101 -#, c-format -msgid "Device %s:" -msgstr "ПриÑтрій %s:" - -#: grub-core/normal/misc.c:107 -msgid "Filesystem cannot be accessed" -msgstr "Файлова ÑиÑтема недоÑтупна" - -#: grub-core/normal/misc.c:121 -#, c-format -msgid "Filesystem type %s" -msgstr "Тип файлової ÑиÑтеми %s" - -#: grub-core/normal/misc.c:131 -#, c-format -msgid "- Label `%s'" -msgstr "- Мітка «%s»" - -#. TRANSLATORS: Arguments are year, month, day, hour, minute, -#. second, day of the week (translated). -#: grub-core/normal/misc.c:148 -#, c-format -msgid "- Last modification time %d-%02d-%02d %02d:%02d:%02d %s" -msgstr "- Ð§Ð°Ñ Ð¾Ñтанньої зміни — %d-%02d-%02d %02d:%02d:%02d %s" - -#: grub-core/normal/misc.c:171 -msgid "No known filesystem detected" -msgstr "ВиÑвлено невідому файлову ÑиÑтему" - -#: grub-core/normal/misc.c:174 -#, c-format -msgid " - Partition start at %llu%sKiB" -msgstr " - Розділ починаєтьÑÑ Ð· %llu%s КіБ" - -#: grub-core/normal/misc.c:178 -#, c-format -msgid " - Sector size %uB" -msgstr " - Розмір Ñектора: %u Б" - -#: grub-core/normal/misc.c:180 -msgid " - Total size unknown" -msgstr " - Загальний розмір невідомий" - -#: grub-core/normal/misc.c:182 -#, c-format -msgid " - Total size %llu%sKiB" -msgstr " - Загальний розмір %llu%s КіБ" - -#. TRANSLATORS: Replace dot with appropriate decimal separator for -#. your language. -#: grub-core/normal/misc.c:186 -msgid ".5" -msgstr ",5" - -#. TRANSLATORS: This has to fit on one line. It's ok to include few -#. words but don't write poems. -#: grub-core/normal/term.c:82 -msgid "--MORE--" -msgstr "--БІЛЬШЕ--" - -#: grub-core/osdep/aros/config.c:92 grub-core/osdep/unix/config.c:137 -#: grub-core/osdep/windows/config.c:55 -#, c-format -msgid "cannot open configuration file `%s': %s" -msgstr "не вдалоÑÑ Ð²Ñ–Ð´ÐºÑ€Ð¸Ñ‚Ð¸ файл налаштувань «%s»: %s" - -#: grub-core/osdep/basic/compress.c:8 grub-core/osdep/basic/compress.c:14 -#: grub-core/osdep/basic/compress.c:20 -msgid "no compression is available for your platform" -msgstr "на вашій платформі не передбачено ÑтиÑканнÑ" - -#: grub-core/osdep/basic/no_platform.c:30 -#: grub-core/osdep/windows/platform.c:418 -msgid "no IEEE1275 routines are available for your platform" -msgstr "на вашій платформі не передбачено процедур IEEE1275" - -#: grub-core/osdep/basic/no_platform.c:38 -msgid "no EFI routines are available for your platform" -msgstr "на вашій платформі не передбачено процедур EFI" - -#: grub-core/osdep/basic/no_platform.c:45 -#: grub-core/osdep/windows/platform.c:425 -msgid "no SGI routines are available for your platform" -msgstr "на вашій платформі не передбачено процедур SGI" - -#. TRANSLATORS: The OS itself may very well have a random -#. number generator but GRUB doesn't know how to access it. -#: grub-core/osdep/basic/random.c:42 -msgid "no random number generator is available for your OS" -msgstr "" -"grub невідомий ÑпоÑіб Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ð½Ð½Ñ Ð¿Ñевдовипадкових чиÑел у вашій операційній " -"ÑиÑтемі" - -#: grub-core/osdep/devmapper/getroot.c:81 -msgid "Failed to create `device-mapper' tree" -msgstr "Ðе вдалоÑÑ Ñтворити ієрархію «device-mapper»" - -#: grub-core/osdep/devmapper/getroot.c:197 -#: grub-core/osdep/freebsd/getroot.c:202 -#, c-format -msgid "can't mount encrypted volume `%s': %s" -msgstr "не вдалоÑÑ Ð·Ð¼Ð¾Ð½Ñ‚ÑƒÐ²Ð°Ñ‚Ð¸ шифрований том «%s»: %s" - -#. TRANSLATORS: geom is the name of (k)FreeBSD device framework. -#. Usually left untranslated. -#. -#: grub-core/osdep/freebsd/getroot.c:82 grub-core/osdep/freebsd/getroot.c:164 -#: grub-core/osdep/freebsd/getroot.c:258 grub-core/osdep/freebsd/getroot.c:316 -msgid "couldn't open geom" -msgstr "не вдалоÑÑ Ð²Ñ–Ð´ÐºÑ€Ð¸Ñ‚Ð¸ дані щодо геометрії" - -#: grub-core/osdep/freebsd/getroot.c:182 grub-core/osdep/freebsd/getroot.c:277 -msgid "couldn't find geli consumer" -msgstr "не вдалоÑÑ Ð·Ð½Ð°Ð¹Ñ‚Ð¸ Ñпоживача geli" - -#: grub-core/osdep/freebsd/getroot.c:282 -msgid "couldn't retrieve geli UUID" -msgstr "не вдалоÑÑ Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ñ‚Ð¸ UUID geli" - -#. TRANSLATORS: geom is the name of (k)FreeBSD device framework. -#. Usually left untranslated. "part" is the identifier of one of its -#. classes. -#: grub-core/osdep/freebsd/getroot.c:325 -msgid "couldn't find geom `part' class" -msgstr "не вдалоÑÑ Ð·Ð½Ð°Ð¹Ñ‚Ð¸ ÐºÐ»Ð°Ñ Â«part» geom" - -#: grub-core/osdep/freebsd/hostdisk.c:72 grub-core/osdep/linux/hostdisk.c:93 -msgid "unaligned device size" -msgstr "невирівнÑний об’єм приÑтрою" - -#: grub-core/osdep/generic/blocklist.c:56 -#, c-format -msgid "attempting to read the core image `%s' from GRUB" -msgstr "Ñпроба Ñ‡Ð¸Ñ‚Ð°Ð½Ð½Ñ Ð¾Ñновного образу «%s» з GRUB" - -#: grub-core/osdep/generic/blocklist.c:57 -#, c-format -msgid "attempting to read the core image `%s' from GRUB again" -msgstr "повторна Ñпроба Ñ‡Ð¸Ñ‚Ð°Ð½Ð½Ñ Ð¾Ñновного образу «%s» з GRUB" - -#: grub-core/osdep/generic/blocklist.c:115 -#, c-format -msgid "cannot read `%s' correctly" -msgstr "не вдалоÑÑ Ð¿Ñ€Ð°Ð²Ð¸Ð»ÑŒÐ½Ð¾ прочитати «%s»" - -#: grub-core/osdep/generic/blocklist.c:126 -msgid "failed to read the sectors of the core image" -msgstr "не вдалоÑÑ Ð¿Ñ€Ð¾Ñ‡Ð¸Ñ‚Ð°Ñ‚Ð¸ Ñектори оÑновного образу" - -#. TRANSLATORS: On GNU/Hurd, a "translator" is similar to a filesystem -#. mount, but handled by a userland daemon, whose invocation command line -#. is being fetched here. First %s is the file being looked at (for which -#. we are fetching the "translator" command line), second %s is the error -#. message. -#. -#: grub-core/osdep/hurd/getroot.c:79 -#, c-format -msgid "cannot get translator command line for path `%s': %s" -msgstr "не вдалоÑÑ Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ñ‚Ð¸ Ñ€Ñдок команди Ð²Ñ–Ð´Ð¾Ð±Ñ€Ð°Ð¶ÐµÐ½Ð½Ñ Ð´Ð»Ñ ÑˆÐ»Ñху «%s»: %s" - -#: grub-core/osdep/hurd/getroot.c:82 -#, c-format -msgid "translator command line is empty for path `%s'" -msgstr "Ð´Ð»Ñ ÑˆÐ»Ñху «%s» Ñ€Ñдок команди Ð²Ñ–Ð´Ð¾Ð±Ñ€Ð°Ð¶ÐµÐ½Ð½Ñ Ñ” порожнім" - -#. TRANSLATORS: we expect to get something like -#. /hurd/foobar --option1 --option2=baz /dev/something -#. -#: grub-core/osdep/hurd/getroot.c:98 -#, c-format -msgid "" -"translator `%s' for path `%s' has several non-option words, at least `%s' " -"and `%s'" -msgstr "" -"у відображенні «%s» Ð´Ð»Ñ ÑˆÐ»Ñху «%s» вказано декілька Ñлів, непов’Ñзаних з " -"параметрами, принаймні «%s» Ñ– «%s»." - -#. TRANSLATORS: we expect to get something like -#. /hurd/foobar --option1 --option2=baz /dev/something -#. -#: grub-core/osdep/hurd/getroot.c:109 -#, c-format -msgid "" -"translator `%s' for path `%s' is given only options, cannot find device part" -msgstr "" -"у відображенні «%s» Ð´Ð»Ñ ÑˆÐ»Ñху «%s» вказано лише параметри, не вдалоÑÑ Ð·Ð½Ð°Ð¹Ñ‚Ð¸ " -"чаÑтину Ð²Ð¸Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð¿Ñ€Ð¸Ñтрою" - -#: grub-core/osdep/hurd/hostdisk.c:73 -#, c-format -msgid "Storage information for `%s' does not include type" -msgstr "Дані щодо Ñховища «%s» не міÑÑ‚Ñть типу" - -#: grub-core/osdep/hurd/hostdisk.c:75 -#, c-format -msgid "`%s' is not a local disk" -msgstr "«%s» не Ñ” локальним диÑком" - -#: grub-core/osdep/hurd/hostdisk.c:78 -#, c-format -msgid "" -"Storage information for `%s' indicates neither a plain partition nor a plain " -"disk" -msgstr "" -"Дані щодо Ñховища «%s» не визначають ні даних щодо звичайного розділу, ні " -"даних щодо звичайного диÑка" - -#: grub-core/osdep/linux/blocklist.c:81 grub-core/osdep/linux/blocklist.c:96 -#: grub-core/osdep/linux/blocklist.c:122 -#, c-format -msgid "can't retrieve blocklists: %s" -msgstr "не вдалоÑÑ Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ñ‚Ð¸ ÑпиÑок блоків: %s" - -#: grub-core/osdep/linux/blocklist.c:84 -msgid "blocksize is not divisible by 512" -msgstr "розмір блоку не Ñ” кратним до 512" - -#: grub-core/osdep/linux/blocklist.c:86 -msgid "invalid zero blocksize" -msgstr "некоректний нульовий розмір блоку" - -#: grub-core/osdep/linux/blocklist.c:90 util/setup.c:744 -msgid "can't retrieve blocklists" -msgstr "не вдалоÑÑ Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ñ‚Ð¸ ÑпиÑок блоків" - -#: grub-core/osdep/linux/getroot.c:154 -#, c-format -msgid "ioctl RAID_VERSION error: %s" -msgstr "Помилка RAID_VERSION ioctl: %s" - -#: grub-core/osdep/linux/getroot.c:160 grub-core/osdep/linux/getroot.c:164 -#, c-format -msgid "unsupported RAID version: %d.%d" -msgstr "непідтримувана верÑÑ–Ñ RAID: %d.%d" - -#: grub-core/osdep/linux/getroot.c:169 -#, c-format -msgid "ioctl GET_ARRAY_INFO error: %s" -msgstr "Помилка GET_ARRAY_INFO ioctl: %s" - -#: grub-core/osdep/linux/getroot.c:178 -#, c-format -msgid "ioctl GET_DISK_INFO error: %s" -msgstr "Помилка GET_DISK_INFO ioctl: %s" - -#: grub-core/osdep/linux/getroot.c:608 grub-core/osdep/linux/getroot.c:678 -#: grub-core/osdep/linux/hostdisk.c:126 grub-core/osdep/unix/getroot.c:253 -#: grub-core/osdep/unix/getroot.c:642 grub-core/osdep/unix/platform.c:92 -#: grub-core/osdep/unix/platform.c:100 -#, c-format -msgid "Unable to open stream from %s: %s" -msgstr "Ðе вдалоÑÑ Ð²Ñ–Ð´ÐºÑ€Ð¸Ñ‚Ð¸ потік даних з %s: %s" - -#: grub-core/osdep/linux/getroot.c:1033 -#, c-format -msgid "unknown kind of RAID device `%s'" -msgstr "невідомий тип приÑтрою RAID, «%s»" - -#: grub-core/osdep/linux/ofpath.c:181 -#, c-format -msgid "`obppath' not found in parent dirs of `%s', no IEEE1275 name discovery" -msgstr "" -"Ðе знайдено «obppath» у батьківÑьких каталогах «%s», немає заÑобу Ð²Ð¸Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ " -"назв IEEE1275" - -#: grub-core/osdep/linux/ofpath.c:222 grub-core/osdep/unix/getroot.c:505 -#: grub-core/osdep/unix/getroot.c:529 grub-core/osdep/unix/relpath.c:49 -#: util/grub-install.c:984 util/grub-install.c:1331 util/grub-probe.c:323 -#, c-format -msgid "failed to get canonical path of `%s'" -msgstr "не вдалоÑÑ Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ñ‚Ð¸ канонічний шлÑÑ… «%s»" - -#: grub-core/osdep/linux/ofpath.c:740 -#, c-format -msgid "unknown device type %s" -msgstr "невідомий тип приÑтрою %s" - -#: grub-core/osdep/linux/ofpath.c:758 util/ieee1275/grub-ofpathname.c:39 -#, c-format -msgid "Usage: %s DEVICE\n" -msgstr "ВикориÑтаннÑ: %s ПРИСТРІЙ\n" - -#: grub-core/osdep/unix/exec.c:86 grub-core/osdep/unix/exec.c:172 -#: grub-core/osdep/unix/exec.c:217 -#, c-format -msgid "Unable to fork: %s" -msgstr "Ðе вдалоÑÑ Ñтворити розгалуженнÑ: %s" - -#: grub-core/osdep/unix/exec.c:166 grub-core/osdep/unix/exec.c:211 -#, c-format -msgid "Unable to create pipe: %s" -msgstr "Ðе вдалоÑÑ Ñтворити канал Ð¿ÐµÑ€ÐµÐ´Ð°Ð²Ð°Ð½Ð½Ñ Ð´Ð°Ð½Ð¸Ñ…: %s" - -#: grub-core/osdep/unix/getroot.c:370 -msgid "cannot save the original directory" -msgstr "не вдалоÑÑ Ð·Ð±ÐµÑ€ÐµÐ³Ñ‚Ð¸ початковий каталог" - -#: grub-core/osdep/unix/getroot.c:423 grub-core/osdep/unix/getroot.c:480 -#: grub-core/osdep/unix/getroot.c:489 -msgid "cannot restore the original directory" -msgstr "не вдалоÑÑ Ð²Ñ–Ð´Ð½Ð¾Ð²Ð¸Ñ‚Ð¸ початковий каталог" - -#. TRANSLATORS: "stat" comes from the name of POSIX function. -#: grub-core/osdep/unix/getroot.c:551 grub-core/osdep/unix/hostdisk.c:61 -#: grub-core/osdep/unix/relpath.c:73 grub-core/osdep/unix/relpath.c:97 -#: util/getroot.c:160 util/getroot.c:162 util/grub-install.c:774 -#: util/grub-macbless.c:70 -#, c-format -msgid "cannot stat `%s': %s" -msgstr "не вдалоÑÑ Ð²Ð¸ÐºÐ¾Ð½Ð°Ñ‚Ð¸ stat Ð´Ð»Ñ Â«%s»: %s" - -#: grub-core/osdep/unix/hostdisk.c:293 -#, c-format -msgid "cannot make temporary file: %s" -msgstr "не вдалоÑÑ Ñтворити тимчаÑовий файл: %s" - -#: grub-core/osdep/unix/hostdisk.c:311 -#, c-format -msgid "cannot make temporary directory: %s" -msgstr "не вдалоÑÑ Ñтворити тимчаÑовий каталог: %s" - -#: grub-core/osdep/unix/platform.c:77 -#, c-format -msgid "" -"couldn't find IEEE1275 device path for %s.\n" -"You will have to set `boot-device' variable manually" -msgstr "" -"Ðе вдалоÑÑ Ð·Ð½Ð°Ð¹Ñ‚Ð¸ шлÑÑ… до приÑтроїв IEEE1275 Ð´Ð»Ñ %s.\n" -"Вам Ñлід вÑтановити Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð·Ð¼Ñ–Ð½Ð½Ð¾Ñ— «boot-device» вручну." - -#. TRANSLATORS: This message is shown when required executable `%s' -#. isn't found. -#: grub-core/osdep/unix/platform.c:149 grub-core/osdep/unix/platform.c:189 -#, c-format -msgid "%s: not found" -msgstr "%s: не знайдено" - -#: grub-core/osdep/unix/platform.c:225 -#, c-format -msgid "" -"`nvsetenv' failed. \n" -"You will have to set `boot-device' variable manually. At the IEEE1275 " -"prompt, type:\n" -" %s\n" -msgstr "" -"помилка «nvsetenv». \n" -"Вам Ñлід вÑтановити Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð·Ð¼Ñ–Ð½Ð½Ð¾Ñ— «boot-device» вручну. У полі запиту " -"IEEE1275 введіть:\n" -" %s\n" - -#: grub-core/osdep/unix/platform.c:240 -msgid "You will have to set `SystemPartition' and `OSLoader' manually." -msgstr "Вам Ñлід вÑтановити «SystemPartition» Ñ– «OSLoader» вручну." - -#. TRANSLATORS: canonical pathname is the -#. complete one e.g. /etc/fstab. It has -#. to contain `/' normally, if it doesn't -#. we're in trouble and throw this error. -#: grub-core/osdep/unix/relpath.c:90 -msgid "no `/' in canonical filename" -msgstr "у повній назві немає Ñимволу «/»" - -#: grub-core/osdep/windows/hostdisk.c:151 -msgid "cygwin_conv_path() failed" -msgstr "помилка cygwin_conv_path()" - -#: grub-core/osdep/windows/hostdisk.c:501 util/grub-install.c:570 -msgid "couldn't retrieve random data" -msgstr "не вдалоÑÑ Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ñ‚Ð¸ випадкові дані" - -#: grub-core/osdep/windows/platform.c:97 -msgid "Insufficient privileges to access firmware, assuming BIOS" -msgstr "" -"ÐедоÑтатньо прав доÑтупу Ð´Ð»Ñ Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ð½Ð½Ñ Ð´Ð°Ð½Ð¸Ñ… щодо мікропрограми, припуÑкаємо " -"BIOS" - -#: grub-core/osdep/windows/platform.c:225 -msgid "no EFI routines are available when running in BIOS mode" -msgstr "у режимі BIOS не можна викориÑтовувати процедури EFI" - -#: grub-core/osdep/windows/platform.c:240 -msgid "unexpected EFI error" -msgstr "неочікувана помилка EFI" - -#: grub-core/osdep/windows/platform.c:315 -msgid "Couldn't find a free BootNNNN slot" -msgstr "Ðе вдалоÑÑ Ð·Ð½Ð°Ð¹Ñ‚Ð¸ вільного Ñлоту BootNNNN" - -#: grub-core/partmap/gpt.c:191 -msgid "" -"this GPT partition label contains no BIOS Boot Partition; embedding won't be " -"possible" -msgstr "" -"Ñ†Ñ Ð¼Ñ–Ñ‚ÐºÐ° розділу GPT не міÑтить розділу Ð´Ð»Ñ Ð·Ð°Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ BIOS, — " -"Ð²Ð±ÑƒÐ´Ð¾Ð²ÑƒÐ²Ð°Ð½Ð½Ñ Ð½ÐµÐ¼Ð¾Ð¶Ð»Ð¸Ð²Ðµ" - -#: grub-core/partmap/gpt.c:196 -msgid "your BIOS Boot Partition is too small; embedding won't be possible" -msgstr "" -"розміри вашого розділу Ð´Ð»Ñ Ð·Ð°Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ BIOS Ñ” занадто малими, — " -"Ð²Ð±ÑƒÐ´Ð¾Ð²ÑƒÐ²Ð°Ð½Ð½Ñ Ð½ÐµÐ¼Ð¾Ð¶Ð»Ð¸Ð²Ðµ" - -#. TRANSLATORS: MBR gap and boot track is the same thing and is the space -#. between MBR and first partitition. If your language translates well only -#. "boot track", you can just use it everywhere. Next two messages are about -#. RAID controllers/software bugs which GRUB has to live with. Please spread -#. the message that these are bugs in other software and not merely -#. suboptimal behaviour. -#: grub-core/partmap/msdos.c:51 -#, c-format -msgid "" -"Sector %llu is already in use by raid controller `%s'; avoiding it. Please " -"ask the manufacturer not to store data in MBR gap" -msgstr "" -"Сектор %llu вже викориÑтано контролером raid «%s»; пропуÑкаємо його. Будь " -"лаÑка, надішліть виробникові приÑтрою Ð´Ð»Ñ Ð·Ð±ÐµÑ€Ñ–Ð³Ð°Ð½Ð½Ñ Ð´Ð°Ð½Ð¸Ñ… Ð¿Ñ€Ð¾Ñ…Ð°Ð½Ð½Ñ Ð½Ðµ " -"зберігати дані у облаÑті MBR." - -#: grub-core/partmap/msdos.c:54 -#, c-format -msgid "" -"Sector %llu is already in use by the program `%s'; avoiding it. This " -"software may cause boot or other problems in future. Please ask its authors " -"not to store data in the boot track" -msgstr "" -"Сектор %llu вже викориÑтано програмою «%s»; пропуÑкаємо його. Вказана " -"програма може призвеÑти до проблем з завантаженнÑм або інших проблем у " -"роботі ÑиÑтеми. Будь лаÑка, попроÑіть авторів програми не зберігати дані у " -"облаÑті завантаженнÑ." - -#: grub-core/partmap/msdos.c:384 -msgid "" -"other software is using the embedding area, and there is not enough room for " -"core.img. Such software is often trying to store data in a way that avoids " -"detection. We recommend you investigate" -msgstr "" -"облаÑть Ð²Ð±ÑƒÐ´Ð¾Ð²ÑƒÐ²Ð°Ð½Ð½Ñ Ð²Ð¸ÐºÐ¾Ñ€Ð¸Ñтано іншим програмним забезпеченнÑм. Ð”Ð»Ñ core." -"img залишилоÑÑ Ð½ÐµÐ´Ð¾Ñтатньо міÑцÑ. Подібне Ð·Ð±ÐµÑ€Ñ–Ð³Ð°Ð½Ð½Ñ Ð´Ð°Ð½Ð¸Ñ… чаÑто пов’Ñзане " -"зі Ñпробою приховати Ð²Ñ‚Ñ€ÑƒÑ‡Ð°Ð½Ð½Ñ Ñƒ ÑиÑтему. Рекомендуємо вам виконати " -"докладніше розÑÐ»Ñ–Ð´ÑƒÐ²Ð°Ð½Ð½Ñ Ñ†ÑŒÐ¾Ð³Ð¾ інциденту." - -#: grub-core/partmap/msdos.c:395 -msgid "" -"this msdos-style partition label has no post-MBR gap; embedding won't be " -"possible" -msgstr "" -"Ñ†Ñ Ð¼Ñ–Ñ‚ÐºÐ° розділу у форматі msdos не міÑтить проміжку піÑÐ»Ñ MBR, — " -"Ð²Ð±ÑƒÐ´Ð¾Ð²ÑƒÐ²Ð°Ð½Ð½Ñ Ð½ÐµÐ¼Ð¾Ð¶Ð»Ð¸Ð²Ðµ" - -#: grub-core/partmap/msdos.c:404 -msgid "your embedding area is unusually small. core.img won't fit in it." -msgstr "" -"ваша облаÑть Ð²Ð±ÑƒÐ´Ð¾Ð²ÑƒÐ²Ð°Ð½Ð½Ñ Ñ” надзвичайно малою. core.img не вміÑтитьÑÑ Ñƒ цій " -"облаÑті." - -#: grub-core/parttool/msdospart.c:39 -msgid "Make partition active" -msgstr "Зробити розділ активним" - -#: grub-core/parttool/msdospart.c:51 -msgid "not a primary partition" -msgstr "не Ñ” оÑновним розділом" - -#: grub-core/parttool/msdospart.c:69 -#, c-format -msgid "Partition %d is active now. \n" -msgstr "Розділ %d зараз Ñ” активним. \n" - -#: grub-core/parttool/msdospart.c:74 -#, c-format -msgid "Cleared active flag on %d. \n" -msgstr "Занулено активний прапорець на %d. \n" - -#: grub-core/parttool/msdospart.c:87 -msgid "Change partition type" -msgstr "Змінити тип розділу" - -#: grub-core/parttool/msdospart.c:88 -msgid "Set `hidden' flag in partition type" -msgstr "Ð’Ñтановити прапорець «hidden» у типі розділу" - -#: grub-core/parttool/msdospart.c:130 -#, c-format -msgid "the partition type 0x%x isn't valid" -msgstr "тип розділу 0x%x Ñ” некоректним" - -#. TRANSLATORS: In this case we're actually writing to the disk and actively -#. modifying partition type rather than just defining it. -#: grub-core/parttool/msdospart.c:137 -#, c-format -msgid "Setting partition type to 0x%x\n" -msgstr "Ð’ÑÑ‚Ð°Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ Ñ‚Ð¸Ð¿Ñƒ розділу у Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ 0x%x\n" - -#. TRANSLATORS: 0 is a quantifier. "break" (similar to bash) -#. can be used e.g. to break 3 loops at once. -#. But asking it to break 0 loops makes no sense. -#: grub-core/script/execute.c:143 -msgid "can't break 0 loops" -msgstr "Ñ€Ð¾Ð·Ð³Ð¾Ñ€Ñ‚Ð°Ð½Ð½Ñ 0 циклів неможливе" - -#. TRANSLATORS: It's about not being -#. inside a function. "return" can be used only -#. in a function and this error occurs if it's used -#. anywhere else. -#: grub-core/script/execute.c:227 -msgid "not in function body" -msgstr "поза кодом функції" - -#: grub-core/script/execute.c:371 -#, c-format -msgid "invalid variable name `%s'" -msgstr "некоректна назва змінної, «%s»" - -#: grub-core/script/execute.c:953 -msgid "cannot allocate command buffer" -msgstr "не вдалоÑÑ Ñ€Ð¾Ð·Ð¼Ñ–Ñтити у пам'Ñті буфер команд" - -#: grub-core/script/lexer.c:144 util/grub-fstest.c:330 -msgid "unexpected end of file" -msgstr "неÑподіваний кінець файла" - -#: grub-core/script/main.c:55 grub-core/script/main.c:57 -#: grub-core/script/main.c:59 grub-core/script/main.c:67 -msgid "[NUM]" -msgstr "[ЧИСЛО]" - -#: grub-core/script/main.c:55 -msgid "Exit from loops" -msgstr "Вийти з циклів" - -#: grub-core/script/main.c:57 -msgid "Continue loops" -msgstr "Продовжити Ð²Ð¸ÐºÐ¾Ð½Ð°Ð½Ð½Ñ ÐºÐ¾Ð¼Ð°Ð½Ð´ циклу" - -#. TRANSLATORS: Positional arguments are -#. arguments $0, $1, $2, ... -#: grub-core/script/main.c:62 -msgid "Shift positional parameters." -msgstr "ЗÑунути Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð¿Ð¾Ð·Ð¸Ñ†Ñ–Ð¹Ð½Ð¸Ñ… параметрів." - -#: grub-core/script/main.c:64 -msgid "[VALUE]..." -msgstr "[ЗÐÐЧЕÐÐЯ]..." - -#: grub-core/script/main.c:65 -msgid "Set positional parameters." -msgstr "Ð’Ñтановити Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð¿Ð¾Ð·Ð¸Ñ†Ñ–Ð¹Ð½Ð¸Ñ… параметрів." - -#. TRANSLATORS: It's a command description -#. and "Return" is a verb, not a noun. The -#. command in question is "return" and -#. has exactly the same semanics as bash -#. equivalent. -#: grub-core/script/main.c:73 -msgid "Return from a function." -msgstr "ПовернутиÑÑ Ð· функції." - -#: grub-core/term/gfxterm_background.c:176 -msgid "[-m (stretch|normal)] FILE" -msgstr "[-m (stretch|normal)] ФÐЙЛ" - -#: grub-core/term/gfxterm_background.c:177 -msgid "Load background image for active terminal." -msgstr "Завантажити Ð·Ð¾Ð±Ñ€Ð°Ð¶ÐµÐ½Ð½Ñ Ñ‚Ð»Ð° Ð´Ð»Ñ Ð°ÐºÑ‚Ð¸Ð²Ð½Ð¾Ð³Ð¾ термінала." - -#: grub-core/term/gfxterm_background.c:182 util/grub-install.c:302 -#: util/grub-install.c:303 util/grub-mkrescue.c:107 util/grub-mkrescue.c:108 -#: util/grub-render-label.c:61 util/grub-render-label.c:63 -msgid "COLOR" -msgstr "КОЛІР" - -#: grub-core/term/gfxterm_background.c:183 -msgid "Set background color for active terminal." -msgstr "Ð’Ñтановити колір тла Ð´Ð»Ñ Ð°ÐºÑ‚Ð¸Ð²Ð½Ð¾Ð³Ð¾ термінала." - -#: grub-core/term/i386/coreboot/cbmemc.c:139 -msgid "Show CBMEM console content." -msgstr "Показати вміÑÑ‚ конÑолі CBMEM." - -#: grub-core/term/serial.c:57 -msgid "Set the serial unit." -msgstr "Вказати номер поÑлідовного порту." - -#: grub-core/term/serial.c:58 -msgid "Set the serial port address." -msgstr "Вказати адреÑу поÑлідовного порту." - -#: grub-core/term/serial.c:59 -msgid "Set the serial port speed." -msgstr "Вказати швидкіÑть поÑлідовного порту." - -#: grub-core/term/serial.c:60 -msgid "Set the serial port word length." -msgstr "Вказати довжину Ñлова поÑлідовного порту." - -#: grub-core/term/serial.c:61 -msgid "Set the serial port parity." -msgstr "Вказати парніÑть поÑлідовного порту." - -#: grub-core/term/serial.c:62 -msgid "Set the serial port stop bits." -msgstr "Вказати кількіÑть Ñтоп-бітів поÑлідовного порту." - -#: grub-core/term/serial.c:63 -msgid "Set the base frequency." -msgstr "Ð’Ñтановити оÑновну чаÑтоту." - -#: grub-core/term/serial.c:64 -msgid "Enable/disable RTS/CTS." -msgstr "Увімкнути або вимкнути RTS/CTS." - -#: grub-core/term/serial.c:218 -#, c-format -msgid "serial port `%s' isn't found" -msgstr "не знайдено поÑлідовного порту «%s»" - -#: grub-core/term/serial.c:254 -msgid "unsupported serial port flow control" -msgstr "непідтримуване ÐºÐµÑ€ÑƒÐ²Ð°Ð½Ð½Ñ Ð¿ÐµÑ€ÐµÐ´Ð°Ð²Ð°Ð½Ð½Ñм даних поÑлідовним портом" - -#: grub-core/term/serial.c:429 -msgid "[OPTIONS...]" -msgstr "[ПÐРÐМЕТРИ...]" - -#: grub-core/term/serial.c:430 -msgid "Configure serial port." -msgstr "Вказати поÑлідовний порт." - -#: grub-core/term/terminfo.c:184 -#, c-format -msgid "unknown terminfo type `%s'" -msgstr "невідомий тип terminfo, «%s»" - -#: grub-core/term/terminfo.c:668 -msgid "ASCII" -msgstr "ASCII" - -#: grub-core/term/terminfo.c:671 -msgid "UTF-8" -msgstr "UTF-8" - -#. TRANSLATORS: visually ordered UTF-8 is a non-compliant encoding -#. based on UTF-8 with right-to-left languages written in reverse. -#. Used on some terminals. Normal UTF-8 is refered as -#. "logically-ordered UTF-8" by opposition. -#: grub-core/term/terminfo.c:677 -msgid "visually-ordered UTF-8" -msgstr "візуально впорÑдковане UTF-8." - -#: grub-core/term/terminfo.c:680 -msgid "Unknown encoding" -msgstr "Ðевідоме кодуваннÑ" - -#: grub-core/term/terminfo.c:684 -msgid "Current terminfo types:" -msgstr "Поточні типи terminfo:" - -#: grub-core/term/terminfo.c:699 -msgid "Terminal is ASCII-only [default]." -msgstr "У терміналі можна викориÑтовувати лише ASCII [типове значеннÑ]." - -#: grub-core/term/terminfo.c:700 -msgid "Terminal is logical-ordered UTF-8." -msgstr "Термінал з логічним впорÑдкуваннÑм UTF-8." - -#: grub-core/term/terminfo.c:701 -msgid "Terminal is visually-ordered UTF-8." -msgstr "Термінал з візуальним впорÑдкуваннÑм UTF-8." - -#: grub-core/term/terminfo.c:703 -msgid "Terminal has specified geometry." -msgstr "Термінал має відповідні геометричні параметри." - -#. TRANSLATORS: "x" has to be entered in, like an identifier, so please don't -#. use better Unicode codepoints. -#: grub-core/term/terminfo.c:706 -msgid "WIDTHxHEIGHT." -msgstr "ШИРИÐÐxВИСОТÐ." - -#: grub-core/term/terminfo.c:746 -msgid "incorrect terminal dimensions specification" -msgstr "некоректне Ð²Ð¸Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ñ€Ð¾Ð·Ð¼Ñ–Ñ€Ð½Ð¾Ñтей термінала" - -#: grub-core/term/terminfo.c:776 -#, c-format -msgid "terminal %s isn't found or it's not handled by terminfo" -msgstr "термінала %s не знайдено або terminfo не працює з цим терміналом" - -#: grub-core/term/terminfo.c:785 -msgid "[[-a|-u|-v] [-g WxH] TERM [TYPE]]" -msgstr "[[-a|-u|-v] [-g Ð’xШ] ТЕРМІÐÐЛ [ТИП]]" - -#: grub-core/term/terminfo.c:786 -msgid "Set terminfo type of TERM to TYPE.\n" -msgstr "Ð’Ñтановити Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ñ‚Ð¸Ð¿Ñƒ terminfo ТЕРМІÐÐЛРТИП.\n" - -#. TRANSLATORS: this is the BLOCK-argument, not -#. environment block. -#: grub-core/tests/test_blockarg.c:49 -msgid "Print and execute block argument." -msgstr "ВивеÑти Ñ– виконати блоковий параметр." - -#. TRANSLATORS: We're speaking about bitmap images like -#. JPEG or PNG. -#: grub-core/video/bitmap.c:209 -#, c-format -msgid "bitmap file `%s' is of unsupported format" -msgstr "підтримки формату раÑтрового Ð·Ð¾Ð±Ñ€Ð°Ð¶ÐµÐ½Ð½Ñ Â«%s» не передбачено" - -#: grub-core/video/i386/pc/vbe.c:1191 -#, c-format -msgid " VBE info: version: %d.%d OEM software rev: %d.%d\n" -msgstr "" -" Дані VBE: верÑÑ–Ñ: %d.%d мод. програмного Ð·Ð°Ð±ÐµÐ·Ð¿ÐµÑ‡ÐµÐ½Ð½Ñ OEM: %d.%d\n" - -#: grub-core/video/i386/pc/vbe.c:1198 -#, c-format -msgid " total memory: %d KiB\n" -msgstr " загалом пам’Ñті: %d КіБ\n" - -#: grub-core/video/video.c:596 grub-core/video/video.c:762 -msgid "no suitable video mode found" -msgstr "не знайдено відповідного відеорежиму" - -#: include/grub/crypto.h:403 -msgid "access denied" -msgstr "доÑтуп заборонено" - -#: include/grub/util/install.h:30 include/grub/util/install.h:35 -msgid "MODULES" -msgstr "МОДУЛІ" - -#: include/grub/util/install.h:31 -msgid "pre-load specified modules MODULES" -msgstr "попередньо завантажити вказані МОДУЛІ" - -#: include/grub/util/install.h:33 -msgid "embed a specific DTB" -msgstr "вбудувати Ñпецифічний DTB" - -#: include/grub/util/install.h:36 -msgid "install only MODULES and their dependencies [default=all]" -msgstr "вÑтановити лише вказані МОДУЛІ та їхні залежноÑті [типово уÑÑ–]" - -#: include/grub/util/install.h:37 -msgid "THEMES" -msgstr "ТЕМИ" - -#: include/grub/util/install.h:38 -#, c-format -msgid "install THEMES [default=%s]" -msgstr "вÑтановити ТЕМИ [типово %s]" - -#: include/grub/util/install.h:39 -msgid "FONTS" -msgstr "ШРИФТИ" - -#: include/grub/util/install.h:40 -#, c-format -msgid "install FONTS [default=%s]" -msgstr "вÑтановити ШРИФТИ [типово %s]" - -#: include/grub/util/install.h:41 -msgid "LOCALES" -msgstr "ЛОКÐЛІ" - -#: include/grub/util/install.h:42 -msgid "install only LOCALES [default=all]" -msgstr "вÑтановити лише вказані ЛОКÐЛІ [типово буде вÑтановлено вÑÑ–]" - -#: include/grub/util/install.h:45 -msgid "compress GRUB files [optional]" -msgstr "ÑтиÑкати файли GRUB [необов'Ñзкове]" - -#: include/grub/util/install.h:48 util/grub-mkimage.c:83 -msgid "choose the compression to use for core image" -msgstr "виберіть режим ÑтиÑÐºÐ°Ð½Ð½Ñ Ð´Ð»Ñ Ð¾Ñновного образу" - -#. TRANSLATORS: platform here isn't identifier. It can be translated. -#: include/grub/util/install.h:51 include/grub/util/install.h:54 -#: util/grub-mkimage.c:66 -#, c-format -msgid "use images and modules under DIR [default=%s/]" -msgstr "викориÑтовувати образи Ñ– модулі у КÐТÐЛОЗІ [типово=%s/<платформа>]" - -#: include/grub/util/install.h:57 -#, c-format -msgid "use translations under DIR [default=%s]" -msgstr "викориÑтовувати переклади у КÐТÐЛОЗІ [типово %s]" - -#: include/grub/util/install.h:60 -#, c-format -msgid "use themes under DIR [default=%s]" -msgstr "викориÑтовувати теми у КÐТÐЛОЗІ [типово %s]" - -#: include/grub/util/install.h:65 util/grub-mkimage.c:78 -msgid "embed FILE as public key for signature checking" -msgstr "вбудувати ФÐЙЛ Ñк відкритий ключ Ð´Ð»Ñ Ð¿ÐµÑ€ÐµÐ²Ñ–Ñ€ÐºÐ¸ підпиÑів" - -#: util/editenv.c:59 util/grub-editenv.c:201 util/grub-install-common.c:535 -#: util/grub-mkimage.c:315 util/setup.c:791 -#, c-format -msgid "cannot sync `%s': %s" -msgstr "не вдалоÑÑ Ñинхронізувати «%s»: %s" - -#: util/editenv.c:64 -#, c-format -msgid "cannot rename the file %s to %s" -msgstr "не вдалоÑÑ Ð¿ÐµÑ€ÐµÐ¹Ð¼ÐµÐ½ÑƒÐ²Ð°Ñ‚Ð¸ файл %s на %s" - -#: util/getroot.c:402 -#, c-format -msgid "disk does not exist, so falling back to partition device %s" -msgstr "диÑка не Ñ–Ñнує, повертаємоÑÑ Ð´Ð¾ приÑтрою розділу %s" - -#: util/grub-editenv.c:45 util/grub-fstest.c:506 -msgid "Commands:" -msgstr "Команди:" - -#: util/grub-editenv.c:47 -msgid "Create a blank environment block file." -msgstr "Створити блоковий файл порожнього Ñередовища." - -#: util/grub-editenv.c:49 -msgid "List the current variables." -msgstr "Показати ÑпиÑок поточних змінних." - -#. TRANSLATORS: "set" is a keyword. It's a summary of "set" subcommand. -#: util/grub-editenv.c:51 -msgid "set [NAME=VALUE ...]" -msgstr "set [ÐÐЗВÐ=ЗÐÐЧЕÐÐЯ ...]" - -#: util/grub-editenv.c:52 -msgid "Set variables." -msgstr "Ð’Ñтановити Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð·Ð¼Ñ–Ð½Ð½Ð¸Ñ…." - -#. TRANSLATORS: "unset" is a keyword. It's a summary of "unset" subcommand. -#: util/grub-editenv.c:54 -msgid "unset [NAME ...]" -msgstr "unset [ÐÐЗВР...]" - -#: util/grub-editenv.c:55 -msgid "Delete variables." -msgstr "Вилучити змінні." - -#: util/grub-editenv.c:57 -msgid "Options:" -msgstr "Параметри:" - -#: util/grub-editenv.c:84 -msgid "You need to specify at least one command.\n" -msgstr "Вам Ñлід вказати принаймні одну команду.\n" - -#: util/grub-editenv.c:113 -msgid "FILENAME COMMAND" -msgstr "ÐÐЗВÐ_ФÐЙЛРКОМÐÐДÐ" - -#: util/grub-editenv.c:114 -msgid "Tool to edit environment block." -msgstr "ІнÑтрумент Ð´Ð»Ñ Ñ€ÐµÐ´Ð°Ð³ÑƒÐ²Ð°Ð½Ð½Ñ Ð±Ð»Ð¾ÐºÑƒ Ñередовища." - -#: util/grub-editenv.c:116 -#, c-format -msgid "" -"If FILENAME is `-', the default value %s is used.\n" -"\n" -"There is no `delete' command; if you want to delete the whole environment\n" -"block, use `rm %s'." -msgstr "" -"Якщо буде вказано ÐÐЗВУ_ФÐЙЛР«-», буде викориÑтано типове значеннÑ, %s.\n" -"\n" -"Команди «delete» не передбачено. Якщо вам потрібно вилучити увеÑÑŒ блок " -"Ñередовища,\n" -"ÑкориÑтайтеÑÑ ÐºÐ¾Ð¼Ð°Ð½Ð´Ð¾ÑŽ «rm %s»." - -#: util/grub-editenv.c:162 -msgid "invalid environment block" -msgstr "некоректний блок Ñередовища" - -#: util/grub-editenv.c:217 -#, c-format -msgid "invalid parameter %s" -msgstr "некоректний параметр, %s" - -#: util/grub-editenv.c:222 -msgid "environment block too small" -msgstr "занадто малий блок Ñередовища" - -#: util/grub-fstest.c:107 -#, c-format -msgid "disk read fails at offset %lld, length %lld" -msgstr "" -"Ñпроба Ñ‡Ð¸Ñ‚Ð°Ð½Ð½Ñ Ð´Ð°Ð½Ð¸Ñ… з диÑка зазнала невдачі на позиції %lld, довжина %lld" - -#: util/grub-fstest.c:138 -#, c-format -msgid "invalid skip value %lld" -msgstr "некоректне Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð¿Ñ€Ð¾Ð¿ÑƒÑку %lld" - -#: util/grub-fstest.c:160 util/grub-fstest.c:246 -#, c-format -msgid "read error at offset %llu: %s" -msgstr "помилка Ñ‡Ð¸Ñ‚Ð°Ð½Ð½Ñ Ð· позиції %llu: %s" - -#: util/grub-fstest.c:210 -#, c-format -msgid "cannot open OS file `%s': %s" -msgstr "не вдалоÑÑ Ð²Ñ–Ð´ÐºÑ€Ð¸Ñ‚Ð¸ файл ОС %s: %s" - -#: util/grub-fstest.c:225 util/misc.c:126 -#, c-format -msgid "cannot write to the stdout: %s" -msgstr "не вдалоÑÑ Ð²Ð¸ÐºÐ¾Ð½Ð°Ñ‚Ð¸ Ð·Ð°Ð¿Ð¸Ñ Ð´Ð¾ Ñтандартного виведеннÑ: %s" - -#: util/grub-fstest.c:259 -#, c-format -msgid "compare fail at offset %llu" -msgstr "помилка порівнÑÐ½Ð½Ñ Ñƒ позиції %llu" - -#: util/grub-fstest.c:280 util/grub-fstest.c:314 -#, c-format -msgid "OS file %s open error: %s" -msgstr "Помилка під Ñ‡Ð°Ñ Ñпроби Ð²Ñ–Ð´ÐºÑ€Ð¸Ñ‚Ñ‚Ñ Ñ„Ð°Ð¹Ð»Ð° ОС, %s: %s" - -#: util/grub-fstest.c:402 util/grub-mount.c:392 -#, c-format -msgid "`loopback' command fails: %s" -msgstr "помилка команди «loopback»: %s" - -#: util/grub-fstest.c:413 util/grub-mount.c:402 -#, c-format -msgid "`cryptomount' command fails: %s" -msgstr "помилка команди «cryptomount»: %s" - -#: util/grub-fstest.c:474 util/grub-fstest.c:478 -msgid "couldn't retrieve UUID" -msgstr "не вдалоÑÑ Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ñ‚Ð¸ UUID" - -#: util/grub-fstest.c:507 -msgid "ls PATH" -msgstr "ls ШЛЯХ" - -#: util/grub-fstest.c:507 -msgid "List files in PATH." -msgstr "Показати ÑпиÑок файлів у каталозі ШЛЯХ." - -#: util/grub-fstest.c:508 -msgid "cp FILE LOCAL" -msgstr "cp ФÐЙЛ ЛОКÐЛЬÐИЙ_ФÐЙЛ" - -#: util/grub-fstest.c:508 -msgid "Copy FILE to local file LOCAL." -msgstr "Копіювати ФÐЙЛ у ЛОКÐЛЬÐИЙ_ФÐЙЛ." - -#: util/grub-fstest.c:509 -msgid "cat FILE" -msgstr "cat ФÐЙЛ" - -#: util/grub-fstest.c:509 -msgid "Copy FILE to standard output." -msgstr "Копіювати ФÐЙЛ до Ñтандартного Ð²Ð¸Ð²ÐµÐ´ÐµÐ½Ð½Ñ Ð´Ð°Ð½Ð¸Ñ…." - -#: util/grub-fstest.c:510 -msgid "cmp FILE LOCAL" -msgstr "cmp ФÐЙЛ ЛОКÐЛЬÐИЙ_ФÐЙЛ" - -#: util/grub-fstest.c:510 -msgid "Compare FILE with local file LOCAL." -msgstr "ПорівнÑти ФÐЙЛ з ЛОКÐЛЬÐИМ_ФÐЙЛОМ." - -#: util/grub-fstest.c:511 -msgid "hex FILE" -msgstr "hex ФÐЙЛ" - -#: util/grub-fstest.c:511 -msgid "Show contents of FILE in hex." -msgstr "Показати вміÑÑ‚ файла ФÐЙЛ у шіÑтнадцÑтковому форматі." - -#: util/grub-fstest.c:512 -msgid "crc FILE" -msgstr "crc ФÐЙЛ" - -#: util/grub-fstest.c:512 -msgid "Get crc32 checksum of FILE." -msgstr "Визначити контрольну Ñуму crc32 ФÐЙЛа." - -#: util/grub-fstest.c:513 -msgid "blocklist FILE" -msgstr "blocklist ФÐЙЛ" - -#: util/grub-fstest.c:513 -msgid "Display blocklist of FILE." -msgstr "Показати ÑпиÑок блоків ФÐЙЛа." - -#: util/grub-fstest.c:514 -msgid "xnu_uuid DEVICE" -msgstr "xnu_uuid ПРИСТРІЙ" - -#: util/grub-fstest.c:514 -msgid "Compute XNU UUID of the device." -msgstr "ОбчиÑлити UUID XNU приÑтрою." - -#. TRANSLATORS: bitmaps are images like e.g. in JPEG. -#: util/grub-fstest.c:517 util/grub-fstest.c:518 util/grub-fstest.c:519 -#: util/grub-mkfont.c:938 util/grub-mkfont.c:951 util/grub-mkfont.c:952 -#: util/grub-mkpasswd-pbkdf2.c:46 util/grub-mkpasswd-pbkdf2.c:47 -#: util/grub-mkpasswd-pbkdf2.c:48 -msgid "NUM" -msgstr "ЧИСЛО" - -#: util/grub-fstest.c:517 -msgid "Skip N bytes from output file." -msgstr "ПропуÑтити N байтів з файла виведених даних." - -#: util/grub-fstest.c:518 -msgid "Handle N bytes in output file." -msgstr "Обробити N байтів з файла виведених даних." - -#: util/grub-fstest.c:519 -msgid "Specify the number of input files." -msgstr "Вказати кількіÑть файлів вхідних даних." - -#: util/grub-fstest.c:520 util/grub-mount.c:453 -msgid "Set debug environment variable." -msgstr "Ð’Ñтановити зневаджувальну змінну Ñередовища." - -#: util/grub-fstest.c:521 util/grub-mount.c:454 -msgid "Mount crypto devices." -msgstr "Змонтувати приÑтрої з шифруваннÑм даних." - -#. TRANSLATORS: "prompt" is a keyword. -#: util/grub-fstest.c:524 util/grub-mount.c:457 -msgid "FILE|prompt" -msgstr "ФÐЙЛ|prompt" - -#: util/grub-fstest.c:524 util/grub-mount.c:457 -msgid "Load zfs crypto key." -msgstr "Завантажити ключ ÑˆÐ¸Ñ„Ñ€ÑƒÐ²Ð°Ð½Ð½Ñ zfs." - -#: util/grub-fstest.c:526 -msgid "Uncompress data." -msgstr "Розпакувати дані." - -#: util/grub-fstest.c:605 -msgid "Invalid disk count.\n" -msgstr "Ðекоректна кількіÑть диÑків.\n" - -#. TRANSLATORS: disk count is optional but if it's there it must -#. be before disk list. So please don't imply disk count as mandatory. -#. -#: util/grub-fstest.c:613 -msgid "Disk count must precede disks list.\n" -msgstr "Перед ÑпиÑком диÑків Ñлід вказати кількіÑть диÑків.\n" - -#: util/grub-fstest.c:633 -msgid "No command is specified.\n" -msgstr "Ðе вказано команди.\n" - -#: util/grub-fstest.c:638 -msgid "Not enough parameters to command.\n" -msgstr "ÐедоÑтатньо параметрів команди.\n" - -#: util/grub-fstest.c:711 -#, c-format -msgid "Invalid command %s.\n" -msgstr "Ðекоректна команда %s.\n" - -#: util/grub-fstest.c:724 -msgid "IMAGE_PATH COMMANDS" -msgstr "ÐДРЕСÐ_ОБРÐЗУ КОМÐÐДИ" - -#: util/grub-fstest.c:725 util/grub-mount.c:553 -msgid "Debug tool for filesystem driver." -msgstr "ІнÑтрумент діагноÑтики драйвера файлової ÑиÑтеми." - -#: util/grub-glue-efi.c:53 -msgid "set input filename for 32-bit part." -msgstr "вÑтановити назву файла вхідних даних Ð´Ð»Ñ 32-бітової чаÑтини." - -#: util/grub-glue-efi.c:55 -msgid "set input filename for 64-bit part." -msgstr "вÑтановити назву файла вхідних даних Ð´Ð»Ñ 64-бітової чаÑтини." - -#: util/grub-glue-efi.c:57 util/grub-mklayout.c:55 util/grub-render-label.c:71 -msgid "set output filename. Default is STDOUT" -msgstr "вÑтановити назву файла Ð´Ð»Ñ Ð²Ð¸Ð²ÐµÐ´ÐµÐ½Ð½Ñ Ð´Ð°Ð½Ð¸Ñ…. Типовим Ñ” STDOUT." - -#: util/grub-glue-efi.c:94 util/grub-mklayout.c:476 -#: util/grub-mkpasswd-pbkdf2.c:86 util/grub-render-label.c:131 -msgid "[OPTIONS]" -msgstr "[ПÐРÐМЕТРИ]" - -#: util/grub-glue-efi.c:95 -msgid "Glue 32-bit and 64-bit binary into Apple universal one." -msgstr "" -"З’єднати 32-бітовий Ñ– 64-бітовий виконувані файли в універÑальний файл Apple." - -#: util/grub-glue-efi.c:116 -msgid "Missing input file\n" -msgstr "Ðе вказано файла вхідних даних\n" - -#: util/grub-install-common.c:127 util/grub-install-common.c:151 -#, c-format -msgid "cannot copy `%s' to `%s': %s" -msgstr "не вдалоÑÑ Ñкопіювати «%s» до «%s»: %s" - -#: util/grub-install-common.c:147 -#, c-format -msgid "can't compress `%s' to `%s'" -msgstr "не вдалоÑÑ ÑтиÑнути «%s» до «%s»" - -#: util/grub-install-common.c:196 util/grub-install-common.c:552 -#: util/grub-install-common.c:579 util/grub-install-common.c:621 -#, c-format -msgid "cannot open directory `%s': %s" -msgstr "не вдалоÑÑ Ð²Ñ–Ð´ÐºÑ€Ð¸Ñ‚Ð¸ каталог «%s»: %s" - -#: util/grub-install-common.c:212 -#, c-format -msgid "cannot delete `%s': %s" -msgstr "не вдалоÑÑ Ð²Ð¸Ð»ÑƒÑ‡Ð¸Ñ‚Ð¸ «%s»: %s" - -#: util/grub-install-common.c:324 util/grub-mkimage.c:209 -msgid "grub-mkimage is compiled without XZ support" -msgstr "grub-mkimage зібрано без підтримки XZ" - -#: util/grub-install-common.c:332 util/grub-mkimage.c:217 -#, c-format -msgid "Unknown compression format %s" -msgstr "Ðевідомий формат ÑтиÑÐºÐ°Ð½Ð½Ñ %s" - -#: util/grub-install-common.c:400 -#, c-format -msgid "Unrecognized compression `%s'" -msgstr "Ðевідоме ÑтиÑканнÑ, «%s»" - -#: util/grub-install-common.c:509 -#, c-format -msgid "unknown target format %s" -msgstr "невідомий формат Ð¿Ñ€Ð¸Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ %s" - -#: util/grub-install-common.c:700 -#, c-format -msgid "cannot find locale `%s'" -msgstr "не вдалоÑÑ Ð·Ð½Ð°Ð¹Ñ‚Ð¸ локаль «%s»" - -#: util/grub-install-common.c:939 -#, c-format -msgid "%s doesn't exist. Please specify --target or --directory" -msgstr "%s не Ñ–Ñнує. Будь лаÑка, вкажіть --target або --directory" - -#: util/grub-install-common.c:948 util/grub-install-common.c:951 -#, c-format -msgid "invalid modinfo file `%s'" -msgstr "некоректний файл modinfo, «%s»" - -#: util/grub-install-common.c:966 -#, c-format -msgid "Unknown platform `%s-%s'" -msgstr "Ðевідома платформа, «%s-%s»" - -#: util/grub-install.c:238 -msgid "More than one install device?" -msgstr "Декілька приÑтроїв Ð´Ð»Ñ Ð²ÑтановленнÑ?" - -#: util/grub-install.c:251 -#, c-format -msgid "" -"install GRUB images under the directory DIR/%s instead of the %s directory" -msgstr "вÑтановити образи GRUB у каталозі КÐТÐЛОГ/%s заміÑть каталогу %s" - -#: util/grub-install.c:256 util/grub-probe.c:734 -msgid "TARGET" -msgstr "ПРИЗÐÐЧЕÐÐЯ" - -#. TRANSLATORS: "TARGET" as in "target platform". -#: util/grub-install.c:258 -#, c-format -msgid "install GRUB for TARGET platform [default=%s]; available targets: %s" -msgstr "" -"Ð’Ñтановити GRUB Ð´Ð»Ñ Ð¿Ð»Ð°Ñ‚Ñ„Ð¾Ñ€Ð¼Ð¸ ПРИЗÐÐЧЕÐÐЯ [типове Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ â€” %s]; доÑтупні " -"призначеннÑ: %s" - -#. TRANSLATORS: "may break" doesn't just mean that option wouldn't have any -#. effect but that it will make the resulting install unbootable from HDD. -#. TRANSLATORS: The potential breakage isn't limited to floppies but it's -#. likely to make the install unbootable from HDD. -#: util/grub-install.c:267 util/grub-setup.c:94 -msgid "" -"make the drive also bootable as floppy (default for fdX devices). May break " -"on some BIOSes." -msgstr "" -"уможливити Ð·Ð°Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ Ð· приÑтрою, Ñк з диÑкети (типова поведінка Ð´Ð»Ñ " -"приÑтроїв fdX). Може призвеÑти до непрацездатноÑті з деÑкими BIOS." - -#: util/grub-install.c:270 -msgid "delete device map if it already exists" -msgstr "вилучити карту приÑтроїв, Ñкщо вона вже Ñ–Ñнує" - -#: util/grub-install.c:272 util/grub-setup.c:87 -msgid "install even if problems are detected" -msgstr "вÑтановити, навіть Ñкщо буде виÑвлено проблеми" - -#: util/grub-install.c:274 -msgid "use identifier file even if UUID is available" -msgstr "викориÑтовувати файл ідентифікатора, навіть Ñкщо доÑтупним буде UUID" - -#: util/grub-install.c:276 -msgid "" -"disk module to use (biosdisk or native). This option is only available on " -"BIOS target." -msgstr "" -"модуль диÑка, Ñкий Ñлід викориÑтовувати (biosdisk або native). Цим " -"параметром можна ÑкориÑтатиÑÑ Ð»Ð¸ÑˆÐµ у ÑиÑтемі Ð¿Ñ€Ð¸Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð· BIOS." - -#: util/grub-install.c:279 -msgid "" -"don't update the `boot-device'/`Boot*' NVRAM variables. This option is only " -"available on EFI and IEEE1275 targets." -msgstr "" -"не оновлювати змінні NVRAM «boot-device»/«Boot*». Цим параметром можна " -"ÑкориÑтатиÑÑ Ð»Ð¸ÑˆÐµ Ð´Ð»Ñ EFI Ñ– IEEE1275." - -#: util/grub-install.c:282 util/grub-setup.c:89 -msgid "do not probe for filesystems in DEVICE" -msgstr "не шукати файлові ÑиÑтеми на ПРИСТРОЇ" - -#: util/grub-install.c:284 -msgid "do not install bootsector" -msgstr "не вÑтановлювати Ñектор завантаженнÑ" - -#: util/grub-install.c:286 util/grub-setup.c:96 -msgid "" -"Do not apply any reed-solomon codes when embedding core.img. This option is " -"only available on x86 BIOS targets." -msgstr "" -"Ðе заÑтоÑовувати коди Ріда-Соломона, Ñкщо виконуєтьÑÑ Ð²Ð±ÑƒÐ´Ð¾Ð²ÑƒÐ²Ð°Ð½Ð½Ñ core.img. " -"Цим параметром можна ÑкориÑтатиÑÑ Ð»Ð¸ÑˆÐµ Ð´Ð»Ñ BIOS x86." - -#: util/grub-install.c:293 -msgid "" -"the installation device is removable. This option is only available on EFI." -msgstr "" -"приÑтрій Ð´Ð»Ñ Ð²ÑÑ‚Ð°Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ Ñ” портативним. Цим параметром можна ÑкориÑтатиÑÑ " -"лише у ÑиÑтемах з EFI." - -#: util/grub-install.c:295 -msgid "ID" -msgstr "ІД" - -#: util/grub-install.c:296 -msgid "the ID of bootloader. This option is only available on EFI and Macs." -msgstr "" -"ідентифікатор інÑтрумента завантаженнÑ. Цим параметром можна ÑкориÑтатиÑÑ " -"лише у ÑиÑтемах з EFI Ñ– на Mac." - -#: util/grub-install.c:298 -msgid "use DIR as the EFI System Partition root." -msgstr "викориÑтати КÐТÐЛОГ Ñк кореневий каталог ÑиÑтемного розділу EFI." - -#: util/grub-install.c:300 -msgid "use DIR for PPC MAC install." -msgstr "викориÑтовувати КÐТÐЛОГ Ð´Ð»Ñ Ð²ÑÑ‚Ð°Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ PPC MAC." - -#: util/grub-install.c:301 util/grub-mkrescue.c:106 -msgid "use FILE as font for label" -msgstr "викориÑтати ФÐЙЛ Ñк шрифт Ð´Ð»Ñ Ð¼Ñ–Ñ‚ÐºÐ¸" - -#: util/grub-install.c:302 util/grub-mkrescue.c:107 -msgid "use COLOR for label" -msgstr "викориÑтати КОЛІР Ð´Ð»Ñ Ð¼Ñ–Ñ‚ÐºÐ¸" - -#: util/grub-install.c:303 util/grub-mkrescue.c:108 -msgid "use COLOR for label background" -msgstr "викориÑтати КОЛІР Ð´Ð»Ñ Ñ‚Ð»Ð° мітки" - -#: util/grub-install.c:304 util/grub-mkrescue.c:110 -msgid "use STRING as product version" -msgstr "викориÑтати РЯДОК Ñк верÑÑ–ÑŽ продукту" - -#: util/grub-install.c:361 -msgid "[OPTION] [INSTALL_DEVICE]" -msgstr "[ПÐРÐМЕТР] [ПРІСТРІЙ_ДЛЯ_ВСТÐÐОВЛЕÐÐЯ]" - -#: util/grub-install.c:362 -msgid "Install GRUB on your drive." -msgstr "Ð’Ñтановити GRUB на ваш приÑтрій." - -#: util/grub-install.c:363 -#, c-format -msgid "" -"INSTALL_DEVICE must be system device filename.\n" -"%s copies GRUB images into %s. On some platforms, it may also install GRUB " -"into the boot sector." -msgstr "" -"ЗначеннÑм параметра ПРІСТРІЙ_ДЛЯ_ВСТÐÐОВЛЕÐÐЯ має бути назва файла " -"ÑиÑтемного приÑтрою.\n" -"%s копіює образи GRUB до %s. Ðа деÑких платформах також може бути " -"вÑтановлено GRUB до Ñектора завантаженнÑ." - -#: util/grub-install.c:672 -#, c-format -msgid "the drive %s is defined multiple times in the device map %s" -msgstr "диÑк %s визначаєтьÑÑ Ð´ÐµÐºÑ–Ð»ÑŒÐºÐ° разів у карті приÑтроїв %s" - -#: util/grub-install.c:878 -msgid "Unable to determine your platform. Use --target." -msgstr "" -"Ðе вдалоÑÑ Ð²Ð¸Ð·Ð½Ð°Ñ‡Ð¸Ñ‚Ð¸ вашу платформу. СкориÑтайтеÑÑ Ð¿Ð°Ñ€Ð°Ð¼ÐµÑ‚Ñ€Ð¾Ð¼ --target." - -#: util/grub-install.c:891 -#, c-format -msgid "Installing for %s platform.\n" -msgstr "Ð’Ñтановлюємо Ð´Ð»Ñ Ð¿Ð»Ð°Ñ‚Ñ„Ð¾Ñ€Ð¼Ð¸ %s.\n" - -#: util/grub-install.c:939 -msgid "install device isn't specified" -msgstr "не вказано приÑтрою Ð´Ð»Ñ Ð²ÑтановленнÑ." - -#: util/grub-install.c:1057 -msgid "cannot find EFI directory" -msgstr "не вдалоÑÑ Ð·Ð½Ð°Ð¹Ñ‚Ð¸ каталог EFI" - -#: util/grub-install.c:1060 util/grub-install.c:1209 util/grub-install.c:1254 -#: util/grub-macbless.c:76 util/grub-probe.c:329 util/setup.c:316 -#, c-format -msgid "cannot find a device for %s (is /dev mounted?)" -msgstr "не вдалоÑÑ Ð·Ð½Ð°Ð¹Ñ‚Ð¸ приÑтрій Ð´Ð»Ñ %s (чи змонтовано /dev?)" - -#: util/grub-install.c:1069 util/grub-install.c:1217 util/grub-install.c:1270 -#: util/grub-install.c:1365 util/grub-macbless.c:80 util/grub-probe.c:372 -#, c-format -msgid "cannot find a GRUB drive for %s. Check your device.map" -msgstr "не вдалоÑÑ Ð·Ð½Ð°Ð¹Ñ‚Ð¸ диÑк GRUB Ð´Ð»Ñ %s. Перевірте правильніÑть device.map" - -#: util/grub-install.c:1087 -#, c-format -msgid "%s doesn't look like an EFI partition" -msgstr "%s не Ñ” розділом EFI" - -#: util/grub-install.c:1129 util/grub-install.c:1614 -msgid "You've found a bug" -msgstr "Вами виÑвлено ваду" - -#: util/grub-install.c:1231 -#, c-format -msgid "filesystem on %s is neither HFS nor HFS+" -msgstr "файлова ÑиÑтема на %s не належить до типу HFS або HFS+" - -#: util/grub-install.c:1299 -#, c-format -msgid "" -"attempt to install to encrypted disk without cryptodisk enabled. Set `%s' in " -"file `%s'" -msgstr "" -"Ñпроба вÑтановити на шифрований диÑк без Ð²Ð¼Ð¸ÐºÐ°Ð½Ð½Ñ cryptodisk. Слід вказати " -"«%s» у файлі «%s»" - -#: util/grub-install.c:1410 util/grub-install.c:1772 util/grub-install.c:1872 -#, c-format -msgid "Can't create file: %s" -msgstr "Ðе вдалоÑÑ Ñтворити файл: %s" - -#: util/grub-install.c:1491 -msgid "no hints available for your platform. Expect reduced performance" -msgstr "" -"підказок Ð´Ð»Ñ Ð²Ð°ÑˆÐ¾Ñ— платформи не передбачено. Ð¨Ð²Ð¸Ð´ÐºÐ¾Ð´Ñ–Ñ Ð¼Ð¾Ð¶Ðµ зменшитиÑÑ." - -#. TRANSLATORS: This is a prefix in the log to indicate that usually -#. a command would be executed but due to an option was skipped. -#: util/grub-install.c:1702 -msgid "NOT RUNNING: " -msgstr "ÐЕ ЗÐПУЩЕÐО: " - -#: util/grub-install.c:1806 -msgid "the chosen partition is not a PReP partition" -msgstr "вибраний розділ не Ñ” розділом PReP" - -#: util/grub-install.c:1811 -msgid "failed to copy Grub to the PReP partition" -msgstr "не вдалоÑÑ Ñкопіювати Grub до розділу PReP" - -#: util/grub-install.c:1816 -#, c-format -msgid "" -"the PReP partition is not empty. If you are sure you want to use it, run dd " -"to clear it: `%s'" -msgstr "" -"розділ PReP не Ñ” порожнім. Якщо вам Ñправді хочетьÑÑ Ð½Ð¸Ð¼ ÑкориÑтатиÑÑ, " -"віддайте команду dd, щоб Ñпорожнити його: «%s»" - -#: util/grub-install.c:1888 util/grub-install.c:1932 -#, c-format -msgid "efibootmgr failed to register the boot entry: %s" -msgstr "efibootmgr не вдалоÑÑ Ð·Ð°Ñ€ÐµÑ”Ñтрувати Ð·Ð°Ð¿Ð¸Ñ Ð·Ð°Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ: %s" - -#: util/grub-install.c:1916 -msgid "EFI bootloader id isn't specified." -msgstr "Ðе вказано ідентифікатор завантажувача EFI." - -#: util/grub-install.c:1950 -msgid "WARNING: no platform-specific install was performed" -msgstr "УВÐГÐ: не було виконано Ñпецифічного Ð´Ð»Ñ Ð¿Ð»Ð°Ñ‚Ñ„Ð¾Ñ€Ð¼Ð¸ вÑтановленнÑ" - -#: util/grub-install.c:1957 -msgid "Installation finished. No error reported." -msgstr "Ð’ÑÑ‚Ð°Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ Ð·Ð°Ð²ÐµÑ€ÑˆÐµÐ½Ð¾. Помилок не виÑвлено." - -#: util/grub-macbless.c:101 -msgid "bless for x86-based macs" -msgstr "Ñхвалити Ð´Ð»Ñ Mac на оÑнові x86" - -#: util/grub-macbless.c:103 -msgid "bless for ppc-based macs" -msgstr "Ñхвалити Ð´Ð»Ñ Mac на оÑнові PPC" - -#: util/grub-macbless.c:136 util/grub-probe.c:823 -msgid "No path or device is specified.\n" -msgstr "Ðе вказано шлÑху або приÑтрою.\n" - -#: util/grub-macbless.c:157 -msgid "--ppc PATH|--x86 FILE" -msgstr "--ppc ШЛЯХ|--x86 ФÐЙЛ" - -#: util/grub-macbless.c:158 -msgid "Mac-style bless on HFS or HFS+" -msgstr "Ð¡Ñ…Ð²Ð°Ð»ÐµÐ½Ð½Ñ Ñƒ Ñтилі Mac на HFS або HFS+" - -#: util/grub-menulst2cfg.c:44 -#, c-format -msgid "Usage: %s [INFILE [OUTFILE]]\n" -msgstr "ВикориÑтаннÑ: %s [ВХІДÐИЙ_ФÐЙЛ [ВИХІДÐИЙ_ФÐЙЛ]]\n" - -#: util/grub-mkfont.c:157 -#, c-format -msgid "Freetype Error %d loading glyph 0x%x for U+0x%x%s" -msgstr "" -"Помилка Freetype %d під Ñ‡Ð°Ñ Ñпроби Ð·Ð°Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ Ð³Ð»Ñ–Ñ„Ð° 0x%x Ð´Ð»Ñ U+0x%x%s" - -#. TRANSLATORS: These qualifiers are used for cursive typography, -#. mainly Arabic. Note that the terms refer to the visual position -#. and not logical order and if used in left-to-right script then -#. leftmost is initial but with right-to-left script like Arabic -#. rightmost is the initial. -#: util/grub-mkfont.c:165 -msgid " (medial)" -msgstr " (Ñередній)" - -#: util/grub-mkfont.c:166 -msgid " (leftmost)" -msgstr " (найлівіший)" - -#: util/grub-mkfont.c:167 -msgid " (rightmost)" -msgstr " (найправіший)" - -#: util/grub-mkfont.c:481 -#, c-format -msgid "Out of range substitution (%d, %d)\n" -msgstr "Заміна поза діапазоном (%d, %d)\n" - -#. TRANSLATORS: "lookup" is taken directly from font specifications -#. which are formulated as "Under condition X replace LOOKUP with -#. SUBSTITUITION". " -#: util/grub-mkfont.c:506 -#, c-format -msgid "Out of range lookup: %d\n" -msgstr "Пошук поза діапазоном: %d\n" - -#: util/grub-mkfont.c:514 -#, c-format -msgid "Unsupported substitution type: %d\n" -msgstr "Ðепідтримуваний тип заміни: %d\n" - -#: util/grub-mkfont.c:550 -#, c-format -msgid "Unsupported substitution specification: %d\n" -msgstr "Ðепідтримувана ÑÐ¿ÐµÑ†Ð¸Ñ„Ñ–ÐºÐ°Ñ†Ñ–Ñ Ð·Ð°Ð¼Ñ–Ð½Ð¸: %d\n" - -#: util/grub-mkfont.c:582 -#, c-format -msgid "Unsupported coverage specification: %d\n" -msgstr "Ðепідтримувана ÑÐ¿ÐµÑ†Ð¸Ñ„Ñ–ÐºÐ°Ñ†Ñ–Ñ Ð¿Ð¾ÐºÑ€Ð¸Ñ‚Ñ‚Ñ: %d\n" - -#: util/grub-mkfont.c:622 -#, c-format -msgid "WARNING: unsupported font feature parameters: %x\n" -msgstr "УВÐГÐ: непідтримувані параметри шрифту: %x\n" - -#: util/grub-mkfont.c:936 util/grub-mkrescue.c:98 util/grub-mkstandalone.c:48 -msgid "save output in FILE [required]" -msgstr "зберегти виведені дані до ФÐЙЛа [обов’Ñзковий параметр]" - -#. TRANSLATORS: some font files may have multiple faces (fonts). -#. This option is used to chose among them, the first face being '0'. -#. Rarely used. -#: util/grub-mkfont.c:942 -msgid "select face index" -msgstr "вÑтановити Ñ–Ð½Ð´ÐµÐºÑ Ð³Ð°Ñ€Ð½Ñ–Ñ‚ÑƒÑ€Ð¸" - -#: util/grub-mkfont.c:943 -msgid "FROM-TO[,FROM-TO]" -msgstr "З-ДО[,З-ДО]" - -#. TRANSLATORS: It refers to the range of characters in font. -#: util/grub-mkfont.c:945 -msgid "set font range" -msgstr "вÑтановити діапазон шрифту" - -#. TRANSLATORS: "family name" for font is just a generic name without suffix -#. like "Bold". -#: util/grub-mkfont.c:949 -msgid "set font family name" -msgstr "вÑтановити назву гарнітури шрифту" - -#: util/grub-mkfont.c:950 -msgid "SIZE" -msgstr "РОЗМІР" - -#: util/grub-mkfont.c:950 -msgid "set font size" -msgstr "вÑтановити розмір шрифту" - -#: util/grub-mkfont.c:951 -msgid "set font descent" -msgstr "вÑтановити нижню межу шрифту" - -#: util/grub-mkfont.c:952 -msgid "set font ascent" -msgstr "вÑтановити верхню межу шрифту" - -#: util/grub-mkfont.c:953 -msgid "convert to bold font" -msgstr "перетворити на напівжирний Ñтиль" - -#: util/grub-mkfont.c:954 -msgid "force autohint" -msgstr "примуÑовий автоматичний гінтінґ" - -#: util/grub-mkfont.c:955 -msgid "disable hinting" -msgstr "вимкнути гінтінґ" - -#. TRANSLATORS: some fonts contain bitmap rendering for -#. some sizes. This option forces rerendering even if -#. pre-rendered bitmap is available. -#. -#: util/grub-mkfont.c:961 -msgid "ignore bitmap strikes when loading" -msgstr "ігнорувати раÑтрові штрихи під Ñ‡Ð°Ñ Ð·Ð°Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ" - -#. TRANSLATORS: It refers to the range of characters in font. -#: util/grub-mkfont.c:1059 util/grub-mkfont.c:1075 -msgid "invalid font range" -msgstr "некоректний діапазон шрифту" - -#: util/grub-mkfont.c:1151 -msgid "[OPTIONS] FONT_FILES" -msgstr "[ПÐРÐМЕТРИ] ФÐЙЛИ_ШРИФТІВ" - -#: util/grub-mkfont.c:1152 -msgid "Convert common font file formats into PF2" -msgstr "Перетворити типові формати шрифтів на PF2" - -#: util/grub-mkfont.c:1182 util/grub-mkrescue.c:483 -#: util/grub-mkstandalone.c:306 -msgid "output file must be specified" -msgstr "має бути вказано файл Ð´Ð»Ñ Ð²Ð¸Ð²ÐµÐ´ÐµÐ½Ð½Ñ Ð´Ð°Ð½Ð¸Ñ…" - -#: util/grub-mkfont.c:1185 -msgid "FT_Init_FreeType fails" -msgstr "Помилка FT_Init_FreeType" - -#: util/grub-mkfont.c:1199 -#, c-format -msgid "can't open file %s, index %d: error %d" -msgstr "не вдалоÑÑ Ð²Ñ–Ð´ÐºÑ€Ð¸Ñ‚Ð¸ файл %s, Ñ–Ð½Ð´ÐµÐºÑ %d: помилка %d" - -#: util/grub-mkfont.c:1229 -#, c-format -msgid "can't set %dx%d font size: Freetype error %d: %s" -msgstr "не вдалоÑÑ Ð²Ñтановити розмір шрифту %dx%d: помилка Freetype %d: %s" - -#: util/grub-mkimage.c:67 -msgid "set prefix directory" -msgstr "вÑтановити каталог префікÑа" - -#. TRANSLATORS: "memdisk" here isn't an identifier, it can be translated. -#. "embed" is a verb (command description). " -#: util/grub-mkimage.c:71 -msgid "" -"embed FILE as a memdisk image\n" -"Implies `-p (memdisk)/boot/grub' and overrides any prefix supplied " -"previously, but the prefix itself can be overridden by later options" -msgstr "" -"вбудувати ФÐЙЛ Ñк образ диÑка у пам’Ñті\n" -"Типово викориÑтовуєтьÑÑ Â«-p (memdisk)/boot/grub», а уÑÑ– раніше визначені " -"префікÑи перевизначаютьÑÑ, але Ñам Ð¿Ñ€ÐµÑ„Ñ–ÐºÑ Ð¼Ð¾Ð¶Ðµ бути перевизначено " -"параметрами, вказаними пізніше" - -#: util/grub-mkimage.c:74 -msgid "embed FILE as a device tree (DTB)\n" -msgstr "вбудувати ФÐЙЛ Ñк ієрархію приÑтроїв (DTB)\n" - -#: util/grub-mkimage.c:76 -msgid "embed FILE as an early config" -msgstr "вбудувати ФÐЙЛ Ñк файл попереднього налаштуваннÑ" - -#. TRANSLATORS: NOTE is a name of segment. -#: util/grub-mkimage.c:80 -msgid "add NOTE segment for CHRP IEEE1275" -msgstr "додати Ñегмент ÐОТÐÐ¢ÐšÐ Ð´Ð»Ñ Ð²Ñ–Ð´ÐºÑ€Ð¸Ñ‚Ð¾Ñ— мікропрограми CHRP IEEE1275" - -#: util/grub-mkimage.c:81 -msgid "output a generated image to FILE [default=stdout]" -msgstr "вивеÑти Ñтворений образ до файла ФÐЙЛ [типовий=stdout]" - -#: util/grub-mkimage.c:82 -msgid "FORMAT" -msgstr "ФОРМÐТ" - -#: util/grub-mkimage.c:100 util/grub-mkstandalone.c:62 -msgid "generate an image in FORMAT" -msgstr "Ñтворити образ у форматі ФОРМÐТ" - -#: util/grub-mkimage.c:101 util/grub-mkstandalone.c:63 -msgid "available formats:" -msgstr "доÑтупні формати:" - -#: util/grub-mkimage.c:152 util/grub-mkstandalone.c:96 -#, c-format -msgid "unknown target format %s\n" -msgstr "невідомий формат Ð¿Ñ€Ð¸Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ %s\n" - -#: util/grub-mkimage.c:242 -msgid "[OPTION]... [MODULES]" -msgstr "[ПÐРÐМЕТР]... [МОДУЛІ]" - -#: util/grub-mkimage.c:243 -msgid "Make a bootable image of GRUB." -msgstr "Створити придатний до Ð·Ð°Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ Ð¾Ð±Ñ€Ð°Ð· GRUB." - -#: util/grub-mkimage.c:273 util/grub-mkstandalone.c:309 -msgid "Target format not specified (use the -O option)." -msgstr "Формат Ð¿Ñ€Ð¸Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð½Ðµ вказано (ÑкориÑтайтеÑÑ Ð¿Ð°Ñ€Ð°Ð¼ÐµÑ‚Ñ€Ð¾Ð¼ -O)." - -#: util/grub-mkimage.c:282 -msgid "Prefix not specified (use the -p option)." -msgstr "Ðе вказано Ð¿Ñ€ÐµÑ„Ñ–ÐºÑ (ÑкориÑтайтеÑÑ Ð¿Ð°Ñ€Ð°Ð¼ÐµÑ‚Ñ€Ð¾Ð¼ -p)." - -#: util/grub-mkimage.c:318 util/setup.c:793 -#, c-format -msgid "cannot close `%s': %s" -msgstr "не вдалоÑÑ Ð·Ð°ÐºÑ€Ð¸Ñ‚Ð¸ «%s»: %s" - -#: util/grub-mkimagexx.c:2191 -#, c-format -msgid "" -"`%s' is miscompiled: its start address is 0x%llx instead of 0x%llx: ld.gold " -"bug?" -msgstr "" -"«%s» зібрано з помилками: він розпочинаєтьÑÑ Ð· адреÑи 0x%llx заміÑть 0x%llx: " -"помилка ld.gold?" - -#: util/grub-mklayout.c:53 -msgid "set input filename. Default is STDIN" -msgstr "вÑтановити назву файла вхідних даних. Типовим Ñ” STDIN." - -#. TRANSLATORS: scan identifier is keyboard key symbolic name. -#: util/grub-mklayout.c:307 -#, c-format -msgid "Unknown keyboard scan identifier %s\n" -msgstr "Ðевідома назва клавіші, %s\n" - -#. TRANSLATORS: scan code is keyboard key numeric identifier. -#: util/grub-mklayout.c:390 util/grub-mklayout.c:418 -#, c-format -msgid "Unknown keyboard scan code 0x%02x\n" -msgstr "Ðевідомий код клавіші 0x%02x\n" - -#. TRANSLATORS: this error is triggered when input doesn't contain any -#. key descriptions. -#: util/grub-mklayout.c:438 -msgid "ERROR: no valid keyboard layout found. Check the input.\n" -msgstr "" -"ПОМИЛКÐ: не знайдено відповідної розкладки клавіатури. Перевірте вхідні " -"дані.\n" - -#. TRANSLATORS: "one" is a shortcut for "keyboard layout". -#: util/grub-mklayout.c:478 -msgid "Generate GRUB keyboard layout from Linux console one." -msgstr "" -"Створити клавіатурну розкладку GRUB на оÑнові розкладки Ð´Ð»Ñ ÐºÐ¾Ð½Ñолі Linux." - -#: util/grub-mknetdir.c:47 -msgid "root directory of TFTP server" -msgstr "кореневий каталог Ñервера TFTP" - -#: util/grub-mknetdir.c:49 -msgid "relative subdirectory on network server" -msgstr "відноÑний підкаталог на мережевому Ñервері" - -#: util/grub-mknetdir.c:88 -msgid "" -"Prepares GRUB network boot images at net_directory/subdir assuming " -"net_directory being TFTP root." -msgstr "" -"Готує образи GRUB Ð´Ð»Ñ Ð·Ð°Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ Ð· мережі у каталозі каталог_у_мережі/" -"підкаталог, де каталог_у_мережі Ñ” кореневим каталогом TFTP." - -#: util/grub-mknetdir.c:146 -#, c-format -msgid "unsupported platform %s" -msgstr "непідтримувана платформа %s" - -#. TRANSLATORS: First %s is replaced by platform name. Second one by filename. -#: util/grub-mknetdir.c:165 -#, c-format -msgid "" -"Netboot directory for %s created. Configure your DHCP server to point to %s\n" -msgstr "" -"Створено каталог Ð·Ð°Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ Ð· мережі, %s. Ðалаштуйте ваш Ñервер DHCP так, " -"щоб його було ÑпрÑмовано на %s\n" - -#: util/grub-mkpasswd-pbkdf2.c:46 -msgid "Number of PBKDF2 iterations" -msgstr "КількіÑть ітерацій PBKDF2" - -#: util/grub-mkpasswd-pbkdf2.c:47 -msgid "Length of generated hash" -msgstr "Довжина Ñтвореного хешу" - -#: util/grub-mkpasswd-pbkdf2.c:48 -msgid "Length of salt" -msgstr "Довжина Ñолі" - -#: util/grub-mkpasswd-pbkdf2.c:87 -msgid "Generate PBKDF2 password hash." -msgstr "Створити хеш Ð¿Ð°Ñ€Ð¾Ð»Ñ PBKDF2." - -#: util/grub-mkpasswd-pbkdf2.c:144 util/grub-mkpasswd-pbkdf2.c:151 -msgid "failure to read password" -msgstr "не вдалоÑÑ Ð¿Ñ€Ð¾Ñ‡Ð¸Ñ‚Ð°Ñ‚Ð¸ пароль" - -#: util/grub-mkpasswd-pbkdf2.c:146 -msgid "Reenter password: " -msgstr "Повторіть пароль: " - -#: util/grub-mkpasswd-pbkdf2.c:160 -msgid "passwords don't match" -msgstr "паролі не збігаютьÑÑ" - -#: util/grub-mkpasswd-pbkdf2.c:169 -msgid "couldn't retrieve random data for salt" -msgstr "не вдалоÑÑ Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ñ‚Ð¸ випадкові дані Ð´Ð»Ñ Ñолі" - -#: util/grub-mkpasswd-pbkdf2.c:184 -#, c-format -msgid "cryptographic error number %d" -msgstr "помилка ÑˆÐ¸Ñ„Ñ€ÑƒÐ²Ð°Ð½Ð½Ñ Ð· номером %d" - -#: util/grub-mkpasswd-pbkdf2.c:203 -#, c-format -msgid "PBKDF2 hash of your password is %s\n" -msgstr "Хеш PBKDF2 вашого Ð¿Ð°Ñ€Ð¾Ð»Ñ Ð´Ð¾Ñ€Ñ–Ð²Ð½ÑŽÑ” %s\n" - -#: util/grub-mkrelpath.c:67 -msgid "No path is specified.\n" -msgstr "Ðе вказано шлÑÑ….\n" - -#: util/grub-mkrelpath.c:78 -msgid "PATH" -msgstr "ШЛЯХ" - -#: util/grub-mkrelpath.c:79 -msgid "Transform a system filename into GRUB one." -msgstr "Перетворити назву файла у ÑиÑтемі на назву у GRUB." - -#: util/grub-mkrescue.c:100 -msgid "save ROM images in DIR [optional]" -msgstr "зберегти образи ROM до каталогу КÐТÐЛОГ [необов’Ñзковий параметр]" - -#. TRANSLATORS: xorriso is a program for creating ISOs and burning CDs. -#: util/grub-mkrescue.c:103 -msgid "use FILE as xorriso [optional]" -msgstr "викориÑтовувати ФÐЙЛ Ñк xorriso [необов’Ñзковий параметр]" - -#: util/grub-mkrescue.c:109 -msgid "use STRING as product name" -msgstr "викориÑтати РЯДОК Ñк назву продукту" - -#: util/grub-mkrescue.c:111 -msgid "" -"enable sparc boot. Disables HFS+, APM, ARCS and boot as disk image for i386-" -"pc" -msgstr "" -"увімкнути Ð·Ð°Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ sparc. Вимикає диÑкові образи HFS+, APM, ARCS Ñ– boot " -"Ð´Ð»Ñ i386-pc" - -#: util/grub-mkrescue.c:112 -msgid "" -"enable ARCS (big-endian mips machines, mostly SGI) boot. Disables HFS+, APM, " -"sparc64 and boot as disk image for i386-pc" -msgstr "" -"увімкнути Ð·Ð°Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ ARCS (Ð´Ð»Ñ ÐºÐ¾Ð¼Ð¿â€™ÑŽÑ‚ÐµÑ€Ñ–Ð² mips зі зворотним порÑдком " -"байтів, зокрема SGI). Вимикає образи Ð·Ð°Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ HFS+, APM, sparc64 Ñ– boot " -"Ð´Ð»Ñ i386-pc." - -#. TRANSLATORS: it generates one single image which is bootable through any method. -#: util/grub-mkrescue.c:125 -msgid "Make GRUB CD-ROM, disk, pendrive and floppy bootable image." -msgstr "" -"Створити придатний до Ð·Ð°Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ Ð¾Ð±Ñ€Ð°Ð· GRUB на компакт-диÑку, карті " -"пам’Ñті або диÑкеті." - -#: util/grub-mkrescue.c:130 -#, c-format -msgid "" -"Generates a bootable CD/USB/floppy image. Arguments other than options to " -"this program are passed to xorriso, and indicate source files, source " -"directories, or any of the mkisofs options listed by the output of `%s'." -msgstr "" -"Створює придатний до Ð·Ð°Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ Ð¾Ð±Ñ€Ð°Ð· Ð´Ð»Ñ ÐºÐ¾Ð¼Ð¿Ð°ÐºÑ‚-диÑка, USB або диÑкети. " -"УÑÑ– аргументи, Ñкі не Ñ” параметрами цієї програми, буде передано програмі " -"xorriso. Ці аргументи визначають початкові файли, каталоги початкових даних " -"або будь-Ñкі параметри mkisofs зі ÑпиÑку, виведеного «%s»." - -#: util/grub-mkrescue.c:134 -msgid "Option -- switches to native xorriso command mode." -msgstr "Параметр -- перемикає у режим типових команд xorriso." - -#: util/grub-mkrescue.c:135 -msgid "Mail xorriso support requests to ." -msgstr "" -"Запити щодо підтримки xorriso Ñлід надÑилати на адреÑу ." - -#: util/grub-mkrescue.c:221 util/grub-mkstandalone.c:114 -msgid "[OPTION] SOURCE..." -msgstr "[ПÐРÐМЕТР] ДЖЕРЕЛО..." - -#: util/grub-mkrescue.c:257 util/grub-mkrescue.c:300 util/grub-mkrescue.c:588 -#, c-format -msgid "enabling %s support ..." -msgstr "вмикаємо підтримку %s ..." - -#: util/grub-mkrescue.c:486 -msgid "xorriso not found" -msgstr "xorriso не знайдено" - -#: util/grub-mkrescue.c:623 -msgid "" -"Your xorriso doesn't support `--grub2-boot-info'. Some features are " -"disabled. Please use xorriso 1.2.9 or later." -msgstr "" -"У вашому xorriso не передбачено підтримки «--grub2-boot-info». ДеÑкі з " -"можливоÑтей вимкнено. Будь лаÑка, ÑкориÑтайтеÑÑ xorriso 1.2.9 або новішою " -"верÑією." - -#: util/grub-mkrescue.c:650 -msgid "" -"Your xorriso doesn't support `--grub2-boot-info'. Your core image is too " -"big. Boot as disk is disabled. Please use xorriso 1.2.9 or later." -msgstr "" -"У вашому xorriso не передбачено підтримки «--grub2-boot-info». ОÑновний Ñдра " -"образ Ñ” надто великим. Ð—Ð°Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ Ñƒ форматі диÑка вимкнено. Будь лаÑка, " -"ÑкориÑтайтеÑÑ xorriso 1.2.9 або новішою верÑією." - -#: util/grub-mkstandalone.c:115 -msgid "" -"Generate a standalone image (containing all modules) in the selected format" -msgstr "Створити окремий образ (що міÑтить вÑÑ– модулі) у вибраному форматі" - -#: util/grub-mkstandalone.c:115 -msgid "Graft point syntax (E.g. /boot/grub/grub.cfg=./grub.cfg) is accepted" -msgstr "" -"Можна викориÑтовувати ÑинтакÑичні конÑтрукції Ð¿Ñ€Ð¸Ñ”Ð´Ð½Ð°Ð½Ð½Ñ (наприклад /boot/" -"grub/grub.cfg=./grub.cfg)" - -#: util/grub-mount.c:552 -msgid "IMAGE1 [IMAGE2 ...] MOUNTPOINT" -msgstr "ОБРÐЗ1 [ОБРÐЗ2 ...] ТОЧКÐ_МОÐТУВÐÐÐЯ" - -#: util/grub-mount.c:575 -msgid "need an image and mountpoint" -msgstr "Ñлід вказати образ Ñ– точку монтуваннÑ" - -#: util/grub-probe.c:731 -msgid "given argument is a system device, not a path" -msgstr "вказаний аргумент Ñ” ÑиÑтемним приÑтроєм, а не шлÑхом" - -#: util/grub-probe.c:736 -msgid "separate items in output using ASCII NUL characters" -msgstr "відокремлювати запиÑи у виведеному за допомогою Ñимволів NUL ASCII" - -#: util/grub-probe.c:754 -#, c-format -msgid "[default=%s]" -msgstr "[типово=%s]" - -#: util/grub-probe.c:756 -msgid "print TARGET" -msgstr "вивеÑти ПРИЗÐÐЧЕÐÐЯ" - -#: util/grub-probe.c:757 -msgid "available targets:" -msgstr "доÑтупні призначеннÑ:" - -#: util/grub-probe.c:839 -msgid "[OPTION]... [PATH|DEVICE]" -msgstr "[ПÐРÐМЕТР]... [ФÐЙЛ|ПРИСТРІЙ]" - -#: util/grub-probe.c:840 -msgid "" -"Probe device information for a given path (or device, if the -d option is " -"given)." -msgstr "" -"Визначити дані щодо приÑтрою за вказаним шлÑхом (або приÑтроєм, Ñкщо вказано " -"параметр -d)." - -#: util/grub-render-label.c:60 -msgid "read text from FILE." -msgstr "прочитати текÑÑ‚ з файла ФÐЙЛ." - -#: util/grub-render-label.c:62 -msgid "use COLOR for text" -msgstr "викориÑтати КОЛІР Ð´Ð»Ñ Ñ‚ÐµÐºÑту" - -#: util/grub-render-label.c:64 -msgid "use COLOR for background" -msgstr "викориÑтати КОЛІР Ð´Ð»Ñ Ñ‚Ð»Ð°" - -#. TRANSLATORS: The result is always stored to file and -#. never shown directly, so don't use "show" as synonym for render. Use "create" if -#. "render" doesn't translate directly. -#: util/grub-render-label.c:69 -msgid "set the label to render" -msgstr "визначити мітку Ð´Ð»Ñ Ð¾Ð±Ñ€Ð¾Ð±ÐºÐ¸" - -#: util/grub-render-label.c:73 -msgid "use FILE as font (PF2)." -msgstr "викориÑтати ФÐЙЛ (PF2) Ñк шрифт." - -#. TRANSLATORS: This file takes a text and creates a graphical representation of it, -#. putting the result into .disk_label file. The result is always stored to file and -#. never shown directly, so don't use "show" as synonym for render. Use "create" if -#. "render" doesn't translate directly. -#: util/grub-render-label.c:136 -msgid "Render Apple .disk_label." -msgstr "Показати Apple .disk_label." - -#: util/grub-render-label.c:158 util/grub-syslinux2cfg.c:169 -msgid "Missing arguments\n" -msgstr "Ðе виÑтачає аргументів\n" - -#: util/grub-script-check.c:87 -msgid "[PATH]" -msgstr "[ШЛЯХ]" - -#: util/grub-script-check.c:88 -msgid "Checks GRUB script configuration file for syntax errors." -msgstr "" -"Виконує перевірку файла Ð½Ð°Ð»Ð°ÑˆÑ‚ÑƒÐ²Ð°Ð½Ð½Ñ Ñкриптів GRUB на ÑинтакÑичні помилки." - -#: util/grub-script-check.c:207 -#, c-format -msgid "Syntax error at line %u\n" -msgstr "СинтакÑична помилку у Ñ€Ñдку %u\n" - -#: util/grub-script-check.c:212 -#, c-format -msgid "Script `%s' contains no commands and will do nothing\n" -msgstr "" -"У Ñкрипті «%s» не міÑтитьÑÑ ÐºÐ¾Ð¼Ð°Ð½Ð´. Його Ð²Ð¸ÐºÐ¾Ð½Ð°Ð½Ð½Ñ Ð½Ðµ призведе до жодних " -"наÑлідків.\n" - -#: util/grub-setup.c:79 -#, c-format -msgid "use FILE as the boot image [default=%s]" -msgstr "викориÑтати ФÐЙЛ Ñк образ Ð´Ð»Ñ Ð·Ð°Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ [типове значеннÑ=%s]" - -#: util/grub-setup.c:81 -#, c-format -msgid "use FILE as the core image [default=%s]" -msgstr "викориÑтати ФÐЙЛ Ñк образ теки Ñдра [типове значеннÑ=%s]" - -#: util/grub-setup.c:210 -msgid "No device is specified.\n" -msgstr "Ðе вказано жодного приÑтрою.\n" - -#: util/grub-setup.c:224 -msgid "" -"Set up images to boot from DEVICE.\n" -"\n" -"You should not normally run this program directly. Use grub-install instead." -msgstr "" -"Ð’Ð¸Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð¾Ð±Ñ€Ð°Ð·Ñ–Ð² Ð´Ð»Ñ Ð·Ð°Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ Ð· ПРИСТРОЮ.\n" -"\n" -"За типових умов вам не Ñлід запуÑкати цю програму безпоÑередньо. " -"СкориÑтайтеÑÑ ÐºÑ€Ð°Ñ‰Ðµ grub-install." - -#: util/grub-setup.c:228 -msgid "DEVICE must be an OS device (e.g. /dev/sda)." -msgstr "ПРИСТРІЙ має бути приÑтроєм ОС (наприклад, /dev/sda)." - -#: util/grub-setup.c:297 -#, c-format -msgid "Invalid device `%s'.\n" -msgstr "Ðекоректний приÑтрій «%s».\n" - -#: util/grub-syslinux2cfg.c:64 -msgid "root directory as it will be seen on runtime [default=/]." -msgstr "" -"кореневий каталог, так, Ñк його буде показано під Ñ‡Ð°Ñ Ñ€Ð¾Ð±Ð¾Ñ‚Ð¸ [типово /]." - -#: util/grub-syslinux2cfg.c:69 -msgid "" -"current directory of syslinux as it will be seen on runtime [default is " -"parent directory of input file]." -msgstr "" -"поточний каталог syslinux, так, Ñк його буде показано під Ñ‡Ð°Ñ Ñ€Ð¾Ð±Ð¾Ñ‚Ð¸ " -"[типовим Ñ” батьківÑький каталог файла вхідних даних]." - -#: util/grub-syslinux2cfg.c:74 -msgid "write output to FILE [default=stdout]." -msgstr "вивеÑти дані до файла ФÐЙЛ [типово stdout]" - -#: util/grub-syslinux2cfg.c:148 -msgid "Transform syslinux config into GRUB one." -msgstr "Перетворити Ð½Ð°Ð»Ð°ÑˆÑ‚ÑƒÐ²Ð°Ð½Ð½Ñ syslinux на Ð½Ð°Ð»Ð°ÑˆÑ‚ÑƒÐ²Ð°Ð½Ð½Ñ GRUB." - -#: util/mkimage.c:688 util/mkimage.c:717 util/mkimage.c:734 -msgid "cannot compress the kernel image" -msgstr "не вдалоÑÑ ÑтиÑнути образ Ñдра" - -#: util/mkimage.c:766 util/mkimage.c:1077 -#, c-format -msgid "unknown compression %d" -msgstr "невідоме ÑтиÑÐºÐ°Ð½Ð½Ñ %d" - -#: util/mkimage.c:1088 -msgid "Decompressor is too big" -msgstr "Розпакувальний Ñ” занадто великим" - -#: util/mkimage.c:1133 -#, c-format -msgid "core image is too big (0x%x > 0x%x)" -msgstr "оÑновний образ Ñ” занадто великим (0x%x > 0x%x)" - -#: util/mkimage.c:1140 -#, c-format -msgid "kernel image is too big (0x%x > 0x%x)" -msgstr "образ Ñдра Ñ” надто великим (0x%x > 0x%x)" - -#: util/mkimage.c:1220 util/mkimage.c:1501 -#, c-format -msgid "diskboot.img size must be %u bytes" -msgstr "розмір diskboot.img має дорівнювати %u байтів" - -#: util/mkimage.c:1571 -msgid "" -"fwstart.img doesn't match the known good version. proceed at your own risk" -msgstr "" -"fwstart.img не належить до випробованої верÑÑ–Ñ—. Подальше кориÑÑ‚ÑƒÐ²Ð°Ð½Ð½Ñ Ð¼Ð¾Ð¶Ðµ " -"призвеÑти до помилок." - -#: util/mkimage.c:1575 util/mkimage.c:1601 -msgid "firmware image is too big" -msgstr "образ мікропрограми Ñ” занадто великим" - -#: util/resolve.c:93 -#, c-format -msgid "invalid line format: %s" -msgstr "некоректний формат Ñ€Ñдка: %s" - -#: util/setup.c:167 -msgid "the first sector of the core file is not sector-aligned" -msgstr "перший Ñектор базового файла не вирівнÑно за Ñекторами" - -#: util/setup.c:177 -msgid "non-sector-aligned data is found in the core file" -msgstr "у базовому файлі виÑвлено невирівнÑні за Ñекторами дані" - -#: util/setup.c:199 -msgid "the sectors of the core file are too fragmented" -msgstr "Ñектори оÑновного файла занадто фрагментовані" - -#: util/setup.c:280 -#, c-format -msgid "the size of `%s' is not %u" -msgstr "розмір «%s» не дорівнює %u" - -#: util/setup.c:290 -#, c-format -msgid "the size of `%s' is too small" -msgstr "розмір «%s» Ñ” занадто малим" - -#: util/setup.c:428 -msgid "" -"Attempting to install GRUB to a disk with multiple partition labels or both " -"partition label and filesystem. This is not supported yet." -msgstr "" -"Спроба вÑÑ‚Ð°Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ GRUB на диÑк з декількома мітками розділів або з міткою " -"розділу Ñ– файловою ÑиÑтемою. У поточній верÑÑ–Ñ— ще не передбачено такої " -"можливоÑті." - -#: util/setup.c:441 -#, c-format -msgid "unable to identify a filesystem in %s; safety check can't be performed" -msgstr "" -"не вдалоÑÑ Ð²Ð¸Ð·Ð½Ð°Ñ‡Ð¸Ñ‚Ð¸ файлову ÑиÑтему на %s; Ð²Ð¸ÐºÐ¾Ð½Ð°Ð½Ð½Ñ Ð¿ÐµÑ€ÐµÐ²Ñ–Ñ€ÐºÐ¸ безпеки " -"неможливе" - -#. TRANSLATORS: Filesystem may reserve the space just GRUB isn't sure about it. -#: util/setup.c:445 -#, c-format -msgid "" -"%s appears to contain a %s filesystem which isn't known to reserve space for " -"DOS-style boot. Installing GRUB there could result in FILESYSTEM " -"DESTRUCTION if valuable data is overwritten by grub-setup (--skip-fs-probe " -"disables this check, use at your own risk)" -msgstr "" -"%s міÑтить файлову ÑиÑтему %s. Ðевідомо, чи підтримуєтьÑÑ Ñ†Ñ–Ñ”ÑŽ файловою " -"ÑиÑтемою Ð½Ð°Ð´Ð°Ð½Ð½Ñ Ð¼Ñ–ÑÑ†Ñ Ð´Ð»Ñ Ð·Ð°Ð²Ð°Ð½Ñ‚Ð°Ð¶ÑƒÐ²Ð°Ñ‡Ð° у Ñтилі DOS. Ð’ÑÑ‚Ð°Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ GRUB у цю " -"файлову ÑиÑтему може призвеÑти до РУЙÐУВÐÐÐЯ ФÐЙЛОВОЇ СИСТЕМИ, Ñкщо важливі " -"дані цієї ÑиÑтеми буде перезапиÑано grub-setup (--skip-fs-probe вимикає цю " -"перевірку, ви можете ÑкориÑтатиÑÑ Ñ†Ð¸Ð¼ параметром, Ñкщо вважаєте, що " -"Ð¿Ð¾ÑˆÐºÐ¾Ð´Ð¶ÐµÐ½Ð½Ñ Ñ” неможливими)." - -#. TRANSLATORS: Partition map may reserve the space just GRUB isn't sure about it. -#: util/setup.c:458 -#, c-format -msgid "" -"%s appears to contain a %s partition map which isn't known to reserve space " -"for DOS-style boot. Installing GRUB there could result in FILESYSTEM " -"DESTRUCTION if valuable data is overwritten by grub-setup (--skip-fs-probe " -"disables this check, use at your own risk)" -msgstr "" -"%s міÑтить карту розділів %s. Ðевідомо, чи підтримуєтьÑÑ Ñ†Ñ–Ñ”ÑŽ картою " -"розділів Ð½Ð°Ð´Ð°Ð½Ð½Ñ Ð¼Ñ–ÑÑ†Ñ Ð´Ð»Ñ Ð·Ð°Ð²Ð°Ð½Ñ‚Ð°Ð¶ÑƒÐ²Ð°Ñ‡Ð° у Ñтилі DOS. Ð’ÑÑ‚Ð°Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ GRUB на " -"цю карту розділів може призвеÑти до РУЙÐУВÐÐÐЯ ФÐЙЛОВОЇ СИСТЕМИ, Ñкщо " -"важливі дані цієї ÑиÑтеми буде перезапиÑано grub-setup (--skip-fs-probe " -"вимикає цю перевірку, ви можете ÑкориÑтатиÑÑ Ñ†Ð¸Ð¼ параметром, Ñкщо вважаєте, " -"що Ð¿Ð¾ÑˆÐºÐ¾Ð´Ð¶ÐµÐ½Ð½Ñ Ñ” неможливими)." - -#: util/setup.c:465 -#, c-format -msgid "" -"%s appears to contain a %s partition map and LDM which isn't known to be a " -"safe combination. Installing GRUB there could result in FILESYSTEM " -"DESTRUCTION if valuable data is overwritten by grub-setup (--skip-fs-probe " -"disables this check, use at your own risk)" -msgstr "" -"%s міÑтить карту розділів %s Ñ– LDM. Ðевідомо, чи Ñ” безпечною таке поєднаннÑ. " -"Ð’ÑÑ‚Ð°Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ GRUB на цю карту розділів може призвеÑти до РУЙÐУВÐÐÐЯ ФÐЙЛОВОЇ " -"СИСТЕМИ, Ñкщо важливі дані цієї ÑиÑтеми буде перезапиÑано grub-setup (--skip-" -"fs-probe вимикає цю перевірку, ви можете ÑкориÑтатиÑÑ Ñ†Ð¸Ð¼ параметром, Ñкщо " -"вважаєте, що Ð¿Ð¾ÑˆÐºÐ¾Ð´Ð¶ÐµÐ½Ð½Ñ Ñ” неможливими)." - -#: util/setup.c:478 -msgid "" -"Attempting to install GRUB to a partitionless disk or to a partition. This " -"is a BAD idea." -msgstr "" -"Спроба вÑÑ‚Ð°Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ GRUB на диÑк без розділів або на певний розділ диÑка. " -"Вам ÐЕ Ð’ÐРТО виконувати подібні маніпулÑції." - -#: util/setup.c:483 -msgid "" -"Attempting to install GRUB to a disk with multiple partition labels. This " -"is not supported yet." -msgstr "" -"Спроба вÑÑ‚Ð°Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ GRUB на диÑк з декількома мітками розділів. У поточній " -"верÑÑ–Ñ— ще не передбачено такої можливоÑті." - -#: util/setup.c:489 -#, c-format -msgid "Partition style `%s' doesn't support embedding" -msgstr "У Ñтилі розділів «%s» не передбачено підтримки вбудовуваннÑ" - -#: util/setup.c:496 -#, c-format -msgid "File system `%s' doesn't support embedding" -msgstr "У файловій ÑиÑтемі «%s» не передбачено підтримки вбудовуваннÑ" - -#: util/setup.c:537 -msgid "Your embedding area is unusually small. core.img won't fit in it." -msgstr "" -"Ваша облаÑть Ð²Ð±ÑƒÐ´Ð¾Ð²ÑƒÐ²Ð°Ð½Ð½Ñ Ñ” надзвичайно малою. core.img не вміÑтитьÑÑ Ñƒ цій " -"облаÑті." - -#: util/setup.c:559 util/setup.c:725 util/setup.c:844 -msgid "no terminator in the core image" -msgstr "у оÑновному образі немає мітки завершеннÑ" - -#: util/setup.c:622 -msgid "core.img version mismatch" -msgstr "невідповідніÑть верÑій core.img" - -#: util/setup.c:675 -msgid "" -"embedding is not possible, but this is required for RAID and LVM install" -msgstr "" -"Ð²Ð±ÑƒÐ´Ð¾Ð²ÑƒÐ²Ð°Ð½Ð½Ñ Ð½ÐµÐ¼Ð¾Ð¶Ð»Ð¸Ð²Ðµ, але без нього не обійтиÑÑ Ð¿Ñ–Ð´ Ñ‡Ð°Ñ Ð²ÑÑ‚Ð°Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ Ð½Ð° " -"RAID та LVM" - -#: util/setup.c:682 -#, c-format -msgid "can't determine filesystem on %s" -msgstr "не вдалоÑÑ Ð²Ð¸Ð·Ð½Ð°Ñ‡Ð¸Ñ‚Ð¸ тип файлової ÑиÑтеми на %s" - -#: util/setup.c:685 -#, c-format -msgid "filesystem `%s' doesn't support blocklists" -msgstr "" -"у файловій ÑиÑтемі %s не передбачено підтримки ÑпиÑків блоків (blocklists)" - -#. TRANSLATORS: cross-disk refers to /boot being on one disk -#. but MBR on another. -#: util/setup.c:694 -msgid "embedding is not possible, but this is required for cross-disk install" -msgstr "" -"Ð²Ð±ÑƒÐ´Ð¾Ð²ÑƒÐ²Ð°Ð½Ð½Ñ Ð½ÐµÐ¼Ð¾Ð¶Ð»Ð¸Ð²Ðµ, але без нього не обійтиÑÑ Ð¿Ñ–Ð´ Ñ‡Ð°Ñ Ð²ÑÑ‚Ð°Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ Ð½Ð° " -"декілька диÑків" - -#: util/setup.c:700 -msgid "" -"Embedding is not possible. GRUB can only be installed in this setup by " -"using blocklists. However, blocklists are UNRELIABLE and their use is " -"discouraged." -msgstr "" -"Ð’Ð±ÑƒÐ´Ð¾Ð²ÑƒÐ²Ð°Ð½Ð½Ñ Ð½ÐµÐ¼Ð¾Ð¶Ð»Ð¸Ð²Ðµ. GRUB можна вÑтановити на таку конфігурацію лише з " -"викориÑтаннÑм ÑпиÑків блоків (blocklists). ВикориÑÑ‚Ð°Ð½Ð½Ñ ÑпиÑків блоків може " -"ПРИЗВЕСТИ ДО ÐЕСТÐБІЛЬÐОЇ РОБОТИ, не радимо ними кориÑтуватиÑÑ." - -#. TRANSLATORS: Here GRUB refuses to continue with blocklist install. -#: util/setup.c:705 -msgid "will not proceed with blocklists" -msgstr "не буде продовжено з викориÑтаннÑм ÑпиÑків блоків" - -#: util/setup.c:817 util/setup.c:837 -msgid "blocklists are invalid" -msgstr "ÑпиÑки блоків Ñ” некоректними" - -#: util/setup.c:847 -msgid "blocklists are incomplete" -msgstr "ÑпиÑки блоків Ñ” неповними" - -#~ msgid "%.*s: ARGP_HELP_FMT parameter must be positive" -#~ msgstr "%.*s: параметр ARGP_HELP_FMT має бути додатним" - -#~ msgid "%s: option '--%s' doesn't allow an argument\n" -#~ msgstr "%s: Ð´Ð¾Ð´Ð°Ð²Ð°Ð½Ð½Ñ Ð°Ñ€Ð³ÑƒÐ¼ÐµÐ½Ñ‚Ñ–Ð² до параметра «--%s» не передбачено\n" - -#~ msgid "%s: unrecognized option '--%s'\n" -#~ msgstr "%s: невідомий параметр «--%s»\n" - -#~ msgid "%s: option '-W %s' doesn't allow an argument\n" -#~ msgstr "%s: Ð´Ð¾Ð´Ð°Ð²Ð°Ð½Ð½Ñ Ð°Ñ€Ð³ÑƒÐ¼ÐµÐ½Ñ‚Ñ–Ð² до параметра «-W %s» не передбачено\n" - -#~ msgid "%s: option '-W %s' requires an argument\n" -#~ msgstr "%s: до параметра «-W %s» Ñлід додати аргумент\n" - -#~ msgid "Usage: %s -o OUTPUT CKBMAP_ARGUMENTS...\\n" -#~ msgstr "ВикориÑтаннÑ: %s -o ВИВЕДЕÐÐЯ ÐРГУМЕÐТИ_CKBMAP...\\n" - -#~ msgid "Make GRUB keyboard layout file." -#~ msgstr "Створити файл розкладки клавіатури Ð´Ð»Ñ GRUB." - -#~ msgid "print this message and exit" -#~ msgstr "показати це Ð¿Ð¾Ð²Ñ–Ð´Ð¾Ð¼Ð»ÐµÐ½Ð½Ñ Ñ– завершити роботу" - -#~ msgid "print the version information and exit" -#~ msgstr "показати дані щодо верÑÑ–Ñ— Ñ– завершити роботу" - -#~ msgid "%s generates a keyboard layout for GRUB using ckbcomp\\n" -#~ msgstr "%s Ñтворює розкладку клавіатури Ð´Ð»Ñ GRUB за допомогою ckbcomp\\n" - -#~ msgid "Report bugs to ." -#~ msgstr "Про вади повідомлÑйте на адреÑу ." - -#~ msgid "%s: option requires an argument -- `%s'\\n" -#~ msgstr "%s: параметр потребує аргументу -- «%s»\\n" - -#~ msgid "Usage: %s [OPTION]\\n" -#~ msgstr "ВикориÑтаннÑ: %s [ПÐРÐМЕТР]\\n" - -#~ msgid "Generate a grub config file" -#~ msgstr "Створити файл налаштувань grub" - -#~ msgid "output generated config to FILE [default=stdout]" -#~ msgstr "вивеÑти Ñтворені Ð½Ð°Ð»Ð°ÑˆÑ‚ÑƒÐ²Ð°Ð½Ð½Ñ Ð´Ð¾ файла ФÐЙЛ [типово=stdout]" - -#~ msgid "Unrecognized option `%s'\\n" -#~ msgstr "Ðерозпізнаний параметр «%s»\\n" - -#~ msgid "%s: You must run this as root\\n" -#~ msgstr "%s: вам Ñлід віддати цю команду від імені адмініÑтратора (root)\\n" - -#~ msgid "%s: Not found.\\n" -#~ msgstr "%s: не знайдено.\\n" - -#~ msgid "Generating grub configuration file ..." -#~ msgstr "Створюємо файл налаштувань grub..." - -#~ msgid "" -#~ "Syntax errors are detected in generated GRUB config file.\n" -#~ "Ensure that there are no errors in /etc/default/grub\n" -#~ "and /etc/grub.d/* files or please file a bug report with\n" -#~ "%s file attached." -#~ msgstr "" -#~ "ВиÑвлено ÑинтакÑичні помилки у файлі налаштувань GRUB.\n" -#~ "ПереконайтеÑÑ, що у файлах /etc/default/grub Ñ– /etc/grub.d/*\n" -#~ "немає помилок, будь лаÑка, Ñтворіть звіт щодо вади з\n" -#~ "долученнÑм файла %s." - -#~ msgid "done" -#~ msgstr "виконано" - -#~ msgid "Warning:" -#~ msgstr "ПопередженнÑ:" - -#~ msgid "Usage: %s [OPTION] MENU_ENTRY\\n" -#~ msgstr "ВикориÑтаннÑ: %s [ПÐРÐМЕТР] ПУÐКТ_МЕÐЮ\\n" - -#~ msgid "Set the default boot menu entry for GRUB, for the next boot only." -#~ msgstr "" -#~ "Ð’Ñтановити типовий пункт меню Ð·Ð°Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ Ð´Ð»Ñ GRUB лише Ð´Ð»Ñ Ð½Ð°Ñтупного " -#~ "завантаженнÑ." - -#~ msgid "" -#~ "expect GRUB images under the directory DIR/%s instead of the %s directory" -#~ msgstr "шукати образи GRUB у каталозі КÐТÐЛОГ/%s заміÑть каталогу %s" - -#~ msgid "" -#~ "MENU_ENTRY is a number, a menu item title or a menu item identifier. " -#~ "Please note that menu items in\n" -#~ "submenus or sub-submenus require specifying the submenu components and " -#~ "then the\n" -#~ "menu item component. The titles should be separated using the greater-" -#~ "than\n" -#~ "character (>) with no extra spaces. Depending on your shell some " -#~ "characters including > may need escaping. More information about this is " -#~ "available\n" -#~ "in the GRUB Manual in the section about the 'default' command. " -#~ msgstr "" -#~ "ПУÐКТ_МЕÐЮ Ñ” номером, заголовком пункту меню або ідентифікатором пункту " -#~ "меню. Будь лаÑка, зауважте, що Ð´Ð»Ñ Ð¿ÑƒÐ½ÐºÑ‚Ñ–Ð²\n" -#~ "у підменю та підпідменю Ñлід вказувати компонент підменю, а потім " -#~ "компонент меню.\n" -#~ "Заголовки Ñлід відокремлювати Ñимволом «більше» (>) без додаткових " -#~ "пробілів.\n" -#~ "Залежно від викориÑтаної командної оболонки, можливо доведетьÑÑ " -#~ "екранувати\n" -#~ "деÑкі з Ñимволів >. Докладніше про це можна дізнатиÑÑ Ð· підручника з " -#~ "GRUB,\n" -#~ "розділ щодо команди «default». " - -#~ msgid "More than one menu entry?" -#~ msgstr "Декілька пунктів меню?" - -#~ msgid "Menu entry not specified." -#~ msgstr "Ðе вказано пункт меню." - -#~ msgid "Set the default boot menu entry for GRUB." -#~ msgstr "Ð’Ñтановити типовий пункт меню Ð·Ð°Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ Ð´Ð»Ñ GRUB." - -#~ msgid "This requires setting GRUB_DEFAULT=saved in %s/default/grub.\\n" -#~ msgstr "Потребує вÑÑ‚Ð°Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ GRUB_DEFAULT=saved у %s/default/grub.\\n" - -#~ msgid "MENU_ENTRY is a number, a menu item title or a menu item identifier." -#~ msgstr "" -#~ "ПУÐКТ_МЕÐЮ Ñ” номером, назвою пункту меню або ідентифікатором пункту меню." - -#~ msgid "" -#~ "Requested serial terminal but GRUB_SERIAL_COMMAND is unspecified. Default " -#~ "parameters will be used." -#~ msgstr "" -#~ "ÐадіÑлано запит щодо поÑлідовного термінала, але не визначено " -#~ "GRUB_SERIAL_COMMAND. Буде викориÑтано типові параметри." - -#~ msgid "Found theme: %s\\n" -#~ msgstr "ВиÑвлено тему: %s\\n" - -#~ msgid "Found background: %s\\n" -#~ msgstr "ВиÑвлено тло: %s\\n" - -#~ msgid "Unsupported image format" -#~ msgstr "Ðепідтримуваний формат зображень" - -#~ msgid "" -#~ "Setting GRUB_TIMEOUT to a non-zero value when GRUB_HIDDEN_TIMEOUT is set " -#~ "is no longer supported." -#~ msgstr "" -#~ "Підтримки вÑÑ‚Ð°Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ Ð½ÐµÐ½ÑƒÐ»ÑŒÐ¾Ð²Ð¾Ð³Ð¾ Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð´Ð»Ñ GRUB_TIMEOUT, Ñкщо " -#~ "вÑтановлено GRUB_HIDDEN_TIMEOUT, не передбачено." - -#~ msgid "Found GNU Mach: %s" -#~ msgstr "ВиÑвлено GNU Mach: %s" - -#~ msgid "Found Hurd module: %s" -#~ msgstr "ВиÑвлено модуль Hurd: %s" - -#~ msgid "Some Hurd stuff found, but not enough to boot." -#~ msgstr "ВиÑвлено деÑкі чаÑтини Hurd, але Ñ—Ñ… недоÑтатньо Ð´Ð»Ñ Ð·Ð°Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ." - -#~ msgid "%s, with Hurd %s (recovery mode)" -#~ msgstr "%s, з Hurd %s (режим відновленнÑ)" - -#~ msgid "%s, with Hurd %s" -#~ msgstr "%s, з Hurd %s" - -#~ msgid "" -#~ "Please don't use old title `%s' for GRUB_DEFAULT, use `%s' (for versions " -#~ "before 2.00) or `%s' (for 2.00 or later)" -#~ msgstr "" -#~ "Будь лаÑка, не кориÑтуйтеÑÑ Ð·Ð°Ñтарілим заголовком «%s» Ð´Ð»Ñ GRUB_DEFAULT, " -#~ "ÑкориÑтайтеÑÑ Â«%s» (у верÑÑ–ÑÑ… до 2.00) або «%s» (у 2.00 та новіших " -#~ "верÑÑ–ÑÑ…)" - -#~ msgid "Loading GNU Mach ..." -#~ msgstr "Ð—Ð°Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ GNU Mach…" - -#~ msgid "Loading the Hurd ..." -#~ msgstr "Ð—Ð°Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ Hurd…" - -#~ msgid "Advanced options for %s" -#~ msgstr "Додаткові параметри Ð´Ð»Ñ %s" - -#~ msgid "Loading kernel of Illumos ..." -#~ msgstr "Ð—Ð°Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ Ñдра Illumos..." - -#~ msgid "%s, with kFreeBSD %s (recovery mode)" -#~ msgstr "%s, з kFreeBSD %s (режим відновленнÑ)" - -#~ msgid "%s, with kFreeBSD %s" -#~ msgstr "%s, з kFreeBSD %s" - -#~ msgid "Loading kernel of FreeBSD %s ..." -#~ msgstr "Ð—Ð°Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ Ñдра FreeBSD %s…" - -#~ msgid "Found kernel of FreeBSD: %s\\n" -#~ msgstr "ВиÑвлено Ñдро FreeBSD: %s\\n" - -#~ msgid "Found kernel module directory: %s\\n" -#~ msgstr "ВиÑвлено каталог модулів Ñдра: %s\\n" - -#~ msgid "%s, with Linux %s (recovery mode)" -#~ msgstr "%s, з Linux %s (режим відновленнÑ)" - -#~ msgid "%s, with Linux %s" -#~ msgstr "%s, з Linux %s" - -#~ msgid "Loading Linux %s ..." -#~ msgstr "Ð—Ð°Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ Linux %s…" - -#~ msgid "Loading initial ramdisk ..." -#~ msgstr "Ð—Ð°Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ Ð¿Ð¾Ñ‡Ð°Ñ‚ÐºÐ¾Ð²Ð¾Ð³Ð¾ диÑка у оперативній пам’Ñті…" - -#~ msgid "Found linux image: %s\\n" -#~ msgstr "ВиÑвлено образ linux: %s\\n" - -#~ msgid "Found initrd image: %s\\n" -#~ msgstr "ВиÑвлено образ initrd: %s\\n" - -#~ msgid "%s, with kernel %s (via %s, recovery mode)" -#~ msgstr "%s, з Ñдром %s (за допомогою %s, режим відновленнÑ)" - -#~ msgid "%s, with kernel %s (via %s)" -#~ msgstr "%s, з Ñдром %s (за допомогою %s)" - -#~ msgid "Found NetBSD kernel: %s\\n" -#~ msgstr "ВиÑвлено Ñдро NetBSD: %s\\n" - -#~ msgid "Windows Vista/7 (loader)" -#~ msgstr "Windows Vista/7 (завантажувач)" - -#~ msgid "Windows NT/2000/XP (loader)" -#~ msgstr "Windows NT/2000/XP (завантажувач)" - -#~ msgid "Found %s on %s (%s)\\n" -#~ msgstr "ВиÑвлено %s на %s (%s)\\n" - -#~ msgid "(32-bit)" -#~ msgstr "(32-бітове)" - -#~ msgid "(64-bit)" -#~ msgstr "(64-бітове)" - -#~ msgid "(on %s)" -#~ msgstr "(на %s)" - -#~ msgid "%s, with Xen %s and Linux %s (recovery mode)" -#~ msgstr "%s, з Xen %s Ñ– Linux %s (режим відновленнÑ)" - -#~ msgid "%s, with Xen %s and Linux %s" -#~ msgstr "%s, з Xen %s Ñ– Linux %s" - -#~ msgid "%s, with Xen hypervisor" -#~ msgstr "%s, з гіпервізором Xen" - -#~ msgid "Loading Xen %s ..." -#~ msgstr "Ð—Ð°Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ Xen %s…" - -#~ msgid "Xen hypervisor, version %s" -#~ msgstr "Гіпервізор Xen, верÑÑ–Ñ %s" - -#~ msgid "Advanced options for %s (with Xen hypervisor)" -#~ msgstr "Додаткові параметри Ð´Ð»Ñ %s (з гіпервізором Xen)" - -#~ msgid "Found %s on %s\\n" -#~ msgstr "ВиÑвлено %s на %s\\n" - -#~ msgid "%s is not yet supported by grub-mkconfig.\\n" -#~ msgstr "%s ще не підтримуєтьÑÑ grub-mkconfig.\\n" - -#~ msgid "Unsupported substitution flag: 0x%x\n" -#~ msgstr "Ðепідтримуваний прапорець заміни: 0x%x\n" - -#~ msgid "Unknown gsub font feature 0x%x (%s)\n" -#~ msgstr "Ðевідома деталь шрифту gsub, 0x%x (%s)\n" - -#~ msgid "root directory of the syslinux disk (default /)." -#~ msgstr "кореневий каталог диÑка syslinux (типово /)." - -#~ msgid "assume isolinux." -#~ msgstr "припуÑкати викориÑÑ‚Ð°Ð½Ð½Ñ isolinux." - -#~ msgid "assume pxelinux." -#~ msgstr "припуÑкати викориÑÑ‚Ð°Ð½Ð½Ñ pxelinux." - -#~ msgid "assume syslinux." -#~ msgstr "припуÑкати викориÑÑ‚Ð°Ð½Ð½Ñ syslinux." - -#~ msgid "%s is neither hfs nor hfsplus" -#~ msgstr "%s не належить ні до типу hfs, ні до типу hfsplus" - -#~ msgid "copies GRUB images into net_directory/subdir/target_cpu-platform." -#~ msgstr "копіює образи GRUB до net_directory/subdir/target_cpu-platform." - -#~ msgid "" -#~ "Generates a bootable rescue image with specified source files, source " -#~ "directories, or mkisofs options listed by the output of `%s'.\n" -#~ "\n" -#~ "Option -- switches to native xorriso command mode.\n" -#~ "\n" -#~ "Mail xorriso support requests to ." -#~ msgstr "" -#~ "Створює придатний до Ð·Ð°Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ Ð¾Ð±Ñ€Ð°Ð· Ð²Ñ–Ð´Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ Ð· вказаними " -#~ "початковими файлами, початковими каталогами або параметрами mkisofs, " -#~ "вказаними у виведенні «%s»\n" -#~ "\n" -#~ "Параметр -- перемикає на природній режим команд xorriso.\n" -#~ "\n" -#~ "Запити щодо Ñупроводу xorriso надÑилайте на адреÑу ." - -#~ msgid "" -#~ "print filesystem module, GRUB drive, system device, partition map module, " -#~ "abstraction module or cryptographic container UUID [default=fs]" -#~ msgstr "" -#~ "вивеÑти дані щодо Ð¼Ð¾Ð´ÑƒÐ»Ñ Ñ„Ð°Ð¹Ð»Ð¾Ð²Ð¾Ñ— ÑиÑтеми, диÑка GRUB, ÑиÑтемного " -#~ "приÑтрою, Ð¼Ð¾Ð´ÑƒÐ»Ñ ÐºÐ°Ñ€Ñ‚ÐºÐ¸ розділу, Ð¼Ð¾Ð´ÑƒÐ»Ñ Ð°Ð±Ñтракції або UUID шифрованого " -#~ "тому [типово=fs]" - -#~ msgid "current directory of the syslinux disk [default=$pwd]." -#~ msgstr "поточний каталог диÑка syslinux [типово $pwd]." - -#~ msgid "use DIR as root directory [default=/]" -#~ msgstr "викориÑтовувати КÐТÐЛОГ Ñк кореневий [типовим каталогом Ñ” /]" - -#~ msgid "Address range not associated with RAM" -#~ msgstr "Діапазон Ð°Ð´Ñ€ÐµÑ Ð½Ðµ пов’Ñзано з RAM" - -#~ msgid "PUBKEY_FILE" -#~ msgstr "ФÐЙЛ_ВІДКРИТОГО_КЛЮЧÐ" - -#~ msgid "grub_memalign is not supported on your system" -#~ msgstr "підтримки grub_memalign у вашій ÑиÑтемі не передбачено" - -#~ msgid "If FILENAME is `-', the default value %s is used." -#~ msgstr "" -#~ "Якщо буде вказано ÐÐЗВУ_ФÐЙЛР«-», буде викориÑтано типове Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ %s." - -#~ msgid "save only the ASCII bitmaps" -#~ msgstr "зберігати лише раÑтрові Ð·Ð¾Ð±Ñ€Ð°Ð¶ÐµÐ½Ð½Ñ Ñимволів ASCII" - -#~ msgid "create width summary file" -#~ msgstr "Ñтворити файл резюме ширин" - -#~ msgid "Option --ascii-bitmaps doesn't accept ranges (it always uses ASCII)." -#~ msgstr "" -#~ "Параметр --ascii-bitmaps не приймає діапазонів (завжди викориÑтовуєтьÑÑ " -#~ "ASCII)." - -#~ msgid "WARNING: your random generator isn't known to be secure\n" -#~ msgstr "" -#~ "УВÐГÐ: немає даних щодо безпечноÑті вашого генератора пÑевдовипадкових " -#~ "чиÑел\n" - -#~ msgid "failed to read the first sector of the core image" -#~ msgstr "не вдалоÑÑ Ð¿Ñ€Ð¾Ñ‡Ð¸Ñ‚Ð°Ñ‚Ð¸ перший Ñектор оÑновного образу" - -#~ msgid "use FILE as grub-setup" -#~ msgstr "викориÑтати ФÐЙЛ Ñк grub-setup" - -#~ msgid "use FILE as grub-mkrelpath" -#~ msgstr "викориÑтати ФÐЙЛ Ñк grub-mkrelpath" - -#~ msgid "use FILE as grub-probe" -#~ msgstr "викориÑтати ФÐЙЛ Ñк grub-probe" - -#~ msgid "INSTALL_DEVICE must be system device filename." -#~ msgstr "" -#~ "значеннÑм ПРИСТРІЙ_ДЛЯ_ВСТÐÐОВЛЕÐÐЯ має бути назва файла приÑтрою у " -#~ "ÑиÑтемі." - -#~ msgid "" -#~ "Path `%s' is not readable by GRUB on boot. Installation is impossible. " -#~ "Aborting.\\n" -#~ msgstr "" -#~ "Дані з шлÑхом «%s» не може бути прочитано GRUB під Ñ‡Ð°Ñ Ð·Ð°Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ. " -#~ "Ð’ÑÑ‚Ð°Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ Ð½ÐµÐ¼Ð¾Ð¶Ð»Ð¸Ð²Ð¾. Перериваємо роботу.\\n" - -#~ msgid "Auto-detection of a filesystem of %s failed.\\n" -#~ msgstr "Помилка автоматичного Ð²Ð¸Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ñ„Ð°Ð¹Ð»Ð¾Ð²Ð¾Ñ— ÑиÑтеми %s.\\n" - -#~ msgid "Try with --recheck." -#~ msgstr "Спробуйте з --recheck." - -#~ msgid "" -#~ "If the problem persists please report this together with the output of %s " -#~ "to <%s>" -#~ msgstr "" -#~ "Якщо проблему не вдалоÑÑ ÑƒÑунути, будь лаÑка, повідомте про неї з " -#~ "виведеними %s даними до <%s>" - -#~ msgid "`%s' failed.\\n" -#~ msgstr "Помилка «%s».\\n" - -#~ msgid "" -#~ "Can't find GRUB drive for %s; unable to create EFI Boot Manager entry.\\n" -#~ msgstr "" -#~ "Ðе вдалоÑÑ Ð·Ð½Ð°Ð¹Ñ‚Ð¸ диÑк GRUB Ð´Ð»Ñ %s; не вдалоÑÑ Ñтворити Ð·Ð°Ð¿Ð¸Ñ ÐºÐµÑ€ÑƒÐ²Ð°Ð½Ð½Ñ " -#~ "завантаженнÑм EFI.\\n" - -#~ msgid "Generating grub.cfg ..." -#~ msgstr "Ð¡Ñ‚Ð²Ð¾Ñ€ÐµÐ½Ð½Ñ grub.cfg..." - -#~ msgid "use FILE as grub-render-label" -#~ msgstr "викориÑтати ФÐЙЛ Ñк grub-render-label" diff --git a/thirdparty/grub-2.04/po/vi.gmo b/thirdparty/grub-2.04/po/vi.gmo deleted file mode 100644 index 750aa0b3d74c9bb4afc54c6c921a12eff65ad43e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 132868 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 z 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, 2010. -# Trần Ngá»c Quân , 2012-2013, 2017. -# -msgid "" -msgstr "" -"Project-Id-Version: grub 2.02-pre3\n" -"Report-Msgid-Bugs-To: bug-grub@gnu.org\n" -"POT-Creation-Date: 2019-07-04 16:09+0200\n" -"PO-Revision-Date: 2017-02-05 13:35+0700\n" -"Last-Translator: Trần Ngá»c Quân \n" -"Language-Team: Vietnamese \n" -"Language: vi\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Bugs: Report translation errors to the Language-Team address.\n" -"Plural-Forms: nplurals=1; plural=0;\n" -"X-Poedit-SourceCharset: UTF-8\n" -"X-Generator: Gtranslator 2.91.7\n" -"X-Poedit-Basepath: ../\n" - -#: grub-core/bus/usb/serial/ftdi.c:145 grub-core/bus/usb/serial/pl2303.c:158 -#: grub-core/term/ieee1275/escc.c:169 grub-core/term/ns8250.c:202 -msgid "unsupported serial port speed" -msgstr "không há»— trợ tốc độ cá»§a cổng nối tiếp" - -#: grub-core/bus/usb/serial/ftdi.c:151 grub-core/bus/usb/serial/pl2303.c:164 -#: grub-core/term/efi/serial.c:116 grub-core/term/ieee1275/escc.c:175 -#: grub-core/term/ns8250.c:208 grub-core/term/serial.c:227 -#: grub-core/term/serial.c:243 -msgid "unsupported serial port parity" -msgstr "không há»— trợ tính chẵn lẻ cá»§a cổng nối tiếp" - -#: grub-core/bus/usb/serial/ftdi.c:157 grub-core/bus/usb/serial/pl2303.c:170 -#: grub-core/term/efi/serial.c:122 grub-core/term/ieee1275/escc.c:181 -#: grub-core/term/ns8250.c:213 grub-core/term/serial.c:267 -msgid "unsupported serial port stop bits number" -msgstr "không há»— trợ bit dừng cá»§a cá»§a cổng nối tiếp" - -#: grub-core/bus/usb/serial/ftdi.c:161 grub-core/bus/usb/serial/pl2303.c:174 -#: grub-core/term/efi/serial.c:126 grub-core/term/ieee1275/escc.c:185 -#: grub-core/term/ns8250.c:217 -msgid "unsupported serial port word length" -msgstr "không há»— trợ chiá»u dài từ cá»§a cổng nối tiếp" - -#: grub-core/commands/acpi.c:42 -msgid "Don't load host tables specified by comma-separated list." -msgstr "Äừng tải các bảng chá»§ chỉ rõ trong danh sách định giá»›i bằng dấu phẩy." - -#: grub-core/commands/acpi.c:45 -msgid "Load only tables specified by comma-separated list." -msgstr "Chỉ tải chỉ bảng đã chỉ ra trong danh sách định giá»›i bằng dấu phẩy." - -#: grub-core/commands/acpi.c:46 -msgid "Export version 1 tables to the OS." -msgstr "Xuất ra bảng phiên bản má»™t cho HÄH." - -#: grub-core/commands/acpi.c:47 -msgid "Export version 2 and version 3 tables to the OS." -msgstr "Xuất ra bảng phiên bản 2 và 3 tá»›i cho HÄH." - -#: grub-core/commands/acpi.c:48 -msgid "Set OEMID of RSDP, XSDT and RSDT." -msgstr "Äặt OEMID cá»§a RSDP, XSDT và RSDT." - -#: grub-core/commands/acpi.c:50 -msgid "Set OEMTABLE ID of RSDP, XSDT and RSDT." -msgstr "Äặt mã số OEMTABLE ID cá»§a RSDP, XSDT và RSDT." - -#: grub-core/commands/acpi.c:52 -msgid "Set OEMTABLE revision of RSDP, XSDT and RSDT." -msgstr "Äặt bản sá»­a đổi OEMTABLE cá»§a RSDP, XSDT và RSDT." - -#: grub-core/commands/acpi.c:54 -msgid "Set creator field of RSDP, XSDT and RSDT." -msgstr "Äặt trưá»ng trình tạo cá»§a RSDP, XSDT và RSDT." - -#: grub-core/commands/acpi.c:56 -msgid "Set creator revision of RSDP, XSDT and RSDT." -msgstr "Äặt bản sá»­a đổi trình tạo cá»§a RSDP, XSDT và RSDT." - -#. TRANSLATORS: "hangs" here is a noun, not a verb. -#: grub-core/commands/acpi.c:58 -msgid "" -"Don't update EBDA. May fix failures or hangs on some BIOSes but makes it " -"ineffective with OS not receiving RSDP from GRUB." -msgstr "" -"Äừng cập nhật EBDA. Có thể sá»­a chữa trưá»ng hợp thất bại hoặc bị treo trên " -"má»™t số BIOS nào đó, nhưng mà làm cho nó mất hiệu lá»±c khi HÄH không nhận RDSP " -"từ GRUB." - -#: grub-core/commands/acpi.c:650 grub-core/commands/acpi.c:667 -#: grub-core/commands/i386/pc/play.c:105 grub-core/commands/keylayouts.c:230 -#: grub-core/commands/keylayouts.c:245 grub-core/commands/keylayouts.c:263 -#: grub-core/commands/verifiers.c:156 grub-core/efiemu/loadcore.c:350 -#: grub-core/kern/elf.c:117 grub-core/kern/elfXX.c:29 -#: grub-core/kern/elfXX.c:156 grub-core/loader/arm/linux.c:319 -#: grub-core/loader/arm64/linux.c:330 grub-core/loader/arm64/xen_boot.c:356 -#: grub-core/loader/efi/chainloader.c:276 -#: grub-core/loader/efi/chainloader.c:297 -#: grub-core/loader/efi/chainloader.c:329 grub-core/loader/efi/fdt.c:138 -#: grub-core/loader/i386/bsd.c:1276 grub-core/loader/i386/bsd.c:2116 -#: grub-core/loader/i386/bsdXX.c:20 grub-core/loader/i386/bsdXX.c:36 -#: grub-core/loader/i386/bsdXX.c:63 grub-core/loader/i386/bsdXX.c:357 -#: grub-core/loader/i386/bsdXX.c:376 grub-core/loader/i386/bsdXX.c:519 -#: grub-core/loader/i386/bsdXX.c:535 grub-core/loader/i386/bsdXX.c:615 -#: grub-core/loader/i386/bsdXX.c:638 -#: grub-core/loader/i386/coreboot/chainloader.c:112 -#: grub-core/loader/i386/coreboot/chainloader.c:148 -#: grub-core/loader/i386/coreboot/chainloader.c:170 -#: grub-core/loader/i386/linux.c:667 grub-core/loader/i386/linux.c:788 -#: grub-core/loader/i386/linux.c:1005 grub-core/loader/i386/multiboot_mbi.c:171 -#: grub-core/loader/i386/pc/chainloader.c:202 -#: grub-core/loader/i386/pc/linux.c:149 grub-core/loader/i386/pc/linux.c:320 -#: grub-core/loader/i386/pc/linux.c:362 grub-core/loader/i386/pc/plan9.c:457 -#: grub-core/loader/i386/pc/plan9.c:550 grub-core/loader/i386/pc/plan9.c:566 -#: grub-core/loader/i386/xen.c:934 grub-core/loader/i386/xen_file.c:72 -#: grub-core/loader/i386/xen_fileXX.c:43 grub-core/loader/i386/xen_fileXX.c:186 -#: grub-core/loader/i386/xen_fileXX.c:339 grub-core/loader/ia64/efi/linux.c:423 -#: grub-core/loader/ia64/efi/linux.c:471 grub-core/loader/linux.c:286 -#: grub-core/loader/macho.c:84 grub-core/loader/macho.c:109 -#: grub-core/loader/machoXX.c:33 grub-core/loader/machoXX.c:46 -#: grub-core/loader/machoXX.c:76 grub-core/loader/machoXX.c:116 -#: grub-core/loader/machoXX.c:131 grub-core/loader/machoXX.c:147 -#: grub-core/loader/machoXX.c:196 grub-core/loader/machoXX.c:317 -#: grub-core/loader/multiboot.c:434 grub-core/loader/multiboot_elfxx.c:171 -#: grub-core/loader/multiboot_elfxx.c:234 -#: grub-core/loader/multiboot_elfxx.c:278 grub-core/loader/multiboot_mbi2.c:129 -#: grub-core/loader/xnu.c:737 grub-core/loader/xnu.c:795 -#: grub-core/loader/xnu.c:816 grub-core/loader/xnu.c:871 -#: grub-core/loader/xnu.c:914 grub-core/loader/xnu.c:952 -#: grub-core/loader/xnu_resume.c:68 grub-core/loader/xnu_resume.c:153 -#: grub-core/loader/xnu_resume.c:165 util/grub-mkimagexx.c:2288 -#, c-format -msgid "premature end of file %s" -msgstr "gặp kết thúc tập tin %s quá sá»›m" - -#: grub-core/commands/acpi.c:779 -msgid "" -"[-1|-2] [--exclude=TABLE1,TABLE2|--load-only=TABLE1,TABLE2] FILE1 [FILE2] " -"[...]" -msgstr "" -"[-1|-2] [--exclude=BẢNG1,BẢNG2|--load-only=BẢNG1,BẢNG2] TẬP_TIN1 [TẬP_TIN2] " -"[…]" - -#: grub-core/commands/acpi.c:782 -msgid "Load host ACPI tables and tables specified by arguments." -msgstr "Tải các bảng ACPI chá»§ và các bảng được đối số chỉ rõ." - -#: grub-core/commands/acpihalt.c:368 grub-core/kern/err.c:110 -#, c-format -msgid "error: %s.\n" -msgstr "lá»—i: %s.\n" - -#: grub-core/commands/acpihalt.c:368 grub-core/kern/emu/misc.c:95 -#: grub-core/kern/emu/misc.c:105 grub-core/kern/emu/misc.c:134 -#: grub-core/kern/emu/mm.c:34 grub-core/kern/emu/mm.c:62 -#: grub-core/kern/mm.c:374 grub-core/lib/relocator.c:1282 -#: grub-core/lib/relocator.c:1439 grub-core/lib/relocator.c:1538 -#: grub-core/loader/arm/linux.c:259 grub-core/loader/arm64/linux.c:265 -#: grub-core/loader/arm64/linux.c:321 grub-core/loader/arm64/linux.c:340 -#: grub-core/loader/arm64/xen_boot.c:344 grub-core/loader/arm64/xen_boot.c:367 -#: grub-core/loader/efi/chainloader.c:289 grub-core/osdep/unix/dl.c:48 -#: grub-core/osdep/windows/dl.c:46 grub-core/script/lexer.c:156 -#: grub-core/script/lexer.c:182 -msgid "out of memory" -msgstr "hết bá»™ nhá»›" - -#: grub-core/commands/acpihalt.c:374 grub-core/disk/cryptodisk.c:587 -#: grub-core/disk/cryptodisk.c:632 grub-core/kern/emu/hostdisk.c:307 -#: grub-core/kern/emu/hostfs.c:149 grub-core/kern/emu/misc.c:200 -#: grub-core/osdep/linux/ofpath.c:195 grub-core/osdep/linux/ofpath.c:521 -#: grub-core/osdep/linux/ofpath.c:534 util/glue-efi.c:80 util/glue-efi.c:94 -#: util/grub-editenv.c:155 util/grub-fstest.c:577 -#: util/grub-install-common.c:943 util/grub-mkrescue.c:634 -#: util/grub-mkrescue.c:888 util/grub-mount.c:506 util/grub-render-label.c:176 -#: util/misc.c:95 util/setup.c:814 util/setup.c:833 -#, c-format -msgid "cannot read `%s': %s" -msgstr "không thể Ä‘á»c “%sâ€: %s" - -#. TRANSLATORS: It's computer shutdown using ACPI, not disabling ACPI. -#: grub-core/commands/acpihalt.c:452 -msgid "ACPI shutdown failed" -msgstr "Tắt máy kiểu ACPI gặp lá»—i" - -#: grub-core/commands/arc/lsdev.c:51 -msgid "List devices." -msgstr "Liệt kê thiết bị." - -#: grub-core/commands/blocklist.c:122 grub-core/commands/cat.c:57 -#: grub-core/commands/configfile.c:35 grub-core/commands/efi/loadbios.c:168 -#: grub-core/commands/file.c:159 grub-core/commands/hexdump.c:47 -#: grub-core/commands/legacycfg.c:209 grub-core/commands/legacycfg.c:315 -#: grub-core/commands/minicmd.c:44 grub-core/commands/syslinuxcfg.c:146 -#: grub-core/commands/testload.c:58 grub-core/commands/testspeed.c:52 -#: grub-core/disk/loopback.c:93 grub-core/efiemu/main.c:293 -#: grub-core/font/font_cmd.c:32 grub-core/kern/emu/hostdisk.c:519 -#: grub-core/loader/arm/linux.c:364 grub-core/loader/arm/linux.c:409 -#: grub-core/loader/arm/linux.c:472 grub-core/loader/arm64/linux.c:243 -#: grub-core/loader/arm64/linux.c:297 grub-core/loader/arm64/xen_boot.c:398 -#: grub-core/loader/arm64/xen_boot.c:411 grub-core/loader/arm64/xen_boot.c:462 -#: grub-core/loader/efi/chainloader.c:216 grub-core/loader/i386/bsd.c:1462 -#: grub-core/loader/i386/bsd.c:1807 grub-core/loader/i386/bsd.c:2085 -#: grub-core/loader/i386/coreboot/chainloader.c:438 -#: grub-core/loader/i386/linux.c:656 grub-core/loader/i386/linux.c:1041 -#: grub-core/loader/i386/pc/chainloader.c:290 -#: grub-core/loader/i386/pc/freedos.c:105 grub-core/loader/i386/pc/linux.c:138 -#: grub-core/loader/i386/pc/linux.c:400 grub-core/loader/i386/pc/ntldr.c:85 -#: grub-core/loader/i386/pc/plan9.c:409 -#: grub-core/loader/i386/pc/pxechainloader.c:94 -#: grub-core/loader/i386/pc/truecrypt.c:96 grub-core/loader/i386/xen.c:641 -#: grub-core/loader/i386/xen.c:768 grub-core/loader/i386/xen.c:844 -#: grub-core/loader/i386/xen.c:854 grub-core/loader/i386/xnu.c:488 -#: grub-core/loader/ia64/efi/linux.c:459 grub-core/loader/ia64/efi/linux.c:539 -#: grub-core/loader/mips/linux.c:238 grub-core/loader/mips/linux.c:429 -#: grub-core/loader/multiboot.c:322 grub-core/loader/multiboot.c:374 -#: grub-core/loader/multiboot.c:384 -#: grub-core/loader/powerpc/ieee1275/linux.c:269 -#: grub-core/loader/powerpc/ieee1275/linux.c:341 -#: grub-core/loader/sparc64/ieee1275/linux.c:305 -#: grub-core/loader/sparc64/ieee1275/linux.c:381 grub-core/loader/xnu.c:351 -#: grub-core/loader/xnu.c:460 grub-core/loader/xnu.c:778 -#: grub-core/loader/xnu.c:892 grub-core/loader/xnu.c:1277 -#: grub-core/loader/xnu.c:1427 grub-core/loader/xnu.c:1453 -#: grub-core/video/readers/jpeg.c:812 grub-core/video/readers/png.c:1123 -msgid "filename expected" -msgstr "cần tên tập tin" - -#. TRANSLATORS: "embed" is a verb (command description). " -#: grub-core/commands/blocklist.c:154 grub-core/commands/cat.c:163 -#: grub-core/commands/configfile.c:65 grub-core/commands/configfile.c:68 -#: grub-core/commands/configfile.c:74 grub-core/commands/configfile.c:80 -#: grub-core/commands/configfile.c:86 grub-core/commands/hashsum.c:34 -#: grub-core/commands/legacycfg.c:834 grub-core/commands/legacycfg.c:841 -#: grub-core/commands/legacycfg.c:846 grub-core/commands/legacycfg.c:851 -#: grub-core/commands/macbless.c:222 grub-core/commands/minicmd.c:198 -#: grub-core/commands/syslinuxcfg.c:186 grub-core/commands/syslinuxcfg.c:194 -#: grub-core/commands/syslinuxcfg.c:200 grub-core/commands/syslinuxcfg.c:206 -#: grub-core/commands/testload.c:163 grub-core/efiemu/main.c:312 -#: grub-core/kern/emu/main.c:100 grub-core/kern/emu/main.c:103 -#: grub-core/loader/i386/bsd.c:2137 grub-core/loader/i386/bsd.c:2140 -#: grub-core/loader/i386/bsd.c:2143 -#: grub-core/loader/i386/coreboot/chainloader.c:505 -#: grub-core/loader/ia64/efi/linux.c:594 include/grub/util/install.h:32 -#: include/grub/util/install.h:64 util/grub-glue-efi.c:52 -#: util/grub-glue-efi.c:54 util/grub-glue-efi.c:56 util/grub-install.c:254 -#: util/grub-install.c:301 util/grub-mkfont.c:936 util/grub-mkimage.c:68 -#: util/grub-mkimage.c:74 util/grub-mkimage.c:76 util/grub-mkimage.c:78 -#: util/grub-mkimage.c:81 util/grub-mklayout.c:52 util/grub-mklayout.c:54 -#: util/grub-mkrescue.c:97 util/grub-mkrescue.c:101 util/grub-mkrescue.c:104 -#: util/grub-mkrescue.c:105 util/grub-mkrescue.c:106 -#: util/grub-mkstandalone.c:47 util/grub-mkstandalone.c:49 -#: util/grub-probe.c:732 util/grub-render-label.c:59 -#: util/grub-render-label.c:70 util/grub-render-label.c:72 util/grub-setup.c:78 -#: util/grub-setup.c:80 util/grub-setup.c:84 util/grub-syslinux2cfg.c:74 -#: util/grub-syslinux2cfg.c:147 -msgid "FILE" -msgstr "TẬP_TIN" - -#: grub-core/commands/blocklist.c:154 -msgid "Print a block list." -msgstr "In ra má»™t danh sách cấm." - -#: grub-core/commands/boot.c:147 grub-core/commands/legacycfg.c:533 -#: grub-core/commands/legacycfg.c:574 grub-core/loader/arm64/linux.c:250 -#: grub-core/loader/i386/bsd.c:1799 grub-core/loader/i386/bsd.c:1900 -#: grub-core/loader/i386/bsd.c:2007 grub-core/loader/i386/bsd.c:2040 -#: grub-core/loader/i386/bsd.c:2089 grub-core/loader/i386/linux.c:1047 -#: grub-core/loader/i386/pc/linux.c:406 grub-core/loader/i386/xen.c:775 -#: grub-core/loader/i386/xen.c:859 grub-core/loader/ia64/efi/linux.c:545 -#: grub-core/loader/mips/linux.c:432 grub-core/loader/multiboot.c:388 -#: grub-core/loader/powerpc/ieee1275/linux.c:347 -#: grub-core/loader/sparc64/ieee1275/linux.c:387 grub-core/loader/xnu.c:572 -#: grub-core/loader/xnu.c:665 grub-core/loader/xnu.c:781 -#: grub-core/loader/xnu.c:895 grub-core/loader/xnu.c:1091 -#: grub-core/loader/xnu.c:1258 grub-core/loader/xnu.c:1289 -#: grub-core/loader/xnu.c:1430 -msgid "you need to load the kernel first" -msgstr "bạn cần phải tải nhân trước đã" - -#: grub-core/commands/boot.c:189 -msgid "Boot an operating system." -msgstr "Khởi động má»™t hệ Ä‘iá»u hành." - -#: grub-core/commands/boottime.c:36 -#: grub-core/commands/i386/coreboot/cb_timestamps.c:108 -msgid "No boot time statistics is available\n" -msgstr "Không có thống kê thá»i gian mồi máy nào sẵn sàng cả\n" - -#: grub-core/commands/boottime.c:59 -msgid "Show boot time statistics." -msgstr "Lấy thống kê thá»i gian mồi máy." - -#: grub-core/commands/cacheinfo.c:40 -#, c-format -msgid "Disk cache statistics: hits = %lu (%lu.%02lu%%), misses = %lu\n" -msgstr "Thống kê bá»™ nhá»› đệm đĩa: hits = %lu (%lu.%02lu%%), misses = %lu\n" - -#: grub-core/commands/cacheinfo.c:45 -msgid "No disk cache statistics available\n" -msgstr "Không có thống kê bá»™ nhá»› đệm đĩa nào sẵn sàng cả\n" - -#: grub-core/commands/cacheinfo.c:56 -msgid "Get disk cache info." -msgstr "Lấy thông tin vá» bá»™ đệm đĩa." - -#: grub-core/commands/cat.c:33 -msgid "Accept DOS-style CR/NL line endings." -msgstr "Chấp nhận kiểu xuống dòng kiểu-DOS là CR/NL." - -#: grub-core/commands/cat.c:163 grub-core/commands/minicmd.c:198 -msgid "Show the contents of a file." -msgstr "Hiển thị ná»™i dung cá»§a má»™t tập tin." - -#: grub-core/commands/cmp.c:43 grub-core/commands/i386/pc/drivemap.c:239 -#: grub-core/commands/i386/wrmsr.c:60 grub-core/commands/iorw.c:85 -#: grub-core/commands/memrw.c:84 grub-core/commands/password.c:75 -#: grub-core/commands/password_pbkdf2.c:94 grub-core/commands/pgp.c:826 -#: grub-core/commands/regexp.c:113 grub-core/mmap/mmap.c:517 -#: grub-core/net/dns.c:639 -msgid "two arguments expected" -msgstr "cần hai đối số" - -#: grub-core/commands/cmp.c:45 -#, c-format -msgid "Compare file `%s' with `%s':\n" -msgstr "So sánh tập tin “%s†vá»›i “%sâ€:\n" - -#: grub-core/commands/cmp.c:54 -#, c-format -msgid "Files differ in size: %llu [%s], %llu [%s]\n" -msgstr "Các tập tin khác nhau ở kích thước: %llu [%s], %llu [%s]\n" - -#: grub-core/commands/cmp.c:81 -#, c-format -msgid "Files differ at the offset %llu: 0x%x [%s], 0x%x [%s]\n" -msgstr "Các tập tin khác nhau tại khoảng bù %llu: 0x%x [%s], 0x%x [%s]\n" - -#. TRANSLATORS: it's always exactly 2 files. -#: grub-core/commands/cmp.c:93 -msgid "The files are identical.\n" -msgstr "Các tập tin là đồng nhất.\n" - -#: grub-core/commands/cmp.c:113 -msgid "FILE1 FILE2" -msgstr "TẬP_TIN1 TẬP_TIN2" - -#: grub-core/commands/cmp.c:113 -msgid "Compare two files." -msgstr "So sánh hai tập tin." - -#: grub-core/commands/configfile.c:65 -msgid "Load another config file." -msgstr "Tải má»™t tập tin cấu hình khác." - -#: grub-core/commands/configfile.c:69 grub-core/commands/configfile.c:87 -msgid "Load another config file without changing context." -msgstr "Tải má»™t tập tin cấu hình khác mà không thay đổi ngữ cảnh." - -#: grub-core/commands/configfile.c:75 -msgid "" -"Load another config file without changing context but take only menu entries." -msgstr "" -"Tải má»™t tập tin cấu hình khác mà không thay đổi ngữ cảnh nhưng lấy các mục " -"menu." - -#: grub-core/commands/configfile.c:81 -msgid "Load another config file but take only menu entries." -msgstr "Tải má»™t tập tin cấu hình khác nhưng chỉ thay đổi các mục menu." - -#: grub-core/commands/date.c:141 -msgid "[[year-]month-day] [hour:minute[:second]]" -msgstr "[[năm-]tháng-ngày] [giá»:phút[:giây]]" - -#: grub-core/commands/date.c:142 -msgid "Display/set current datetime." -msgstr "Hiển thị/đặt giá» hiện thá»i." - -#: grub-core/commands/echo.c:30 -msgid "Do not output the trailing newline." -msgstr "Äừng xuất ra ký tá»± dòng má»›i theo sau." - -#: grub-core/commands/echo.c:31 -msgid "Enable interpretation of backslash escapes." -msgstr "Hiệu lá»±c khả năng biên dịch ký tá»± thoát xuyệc ngược." - -#: grub-core/commands/echo.c:134 -msgid "[-e|-n] STRING" -msgstr "[-e|-n] CHUá»–I" - -#: grub-core/commands/echo.c:134 -msgid "Display a line of text." -msgstr "Hiển thị má»™t dòng văn bản." - -#: grub-core/commands/efi/efifwsetup.c:82 -msgid "Reboot into firmware setup menu." -msgstr "Khởi động lại vào trình đơn cài đặt firmware" - -#: grub-core/commands/efi/fixvideo.c:107 -msgid "Fix video problem." -msgstr "Sá»­a chữa vấn đỠảnh động." - -#: grub-core/commands/efi/loadbios.c:52 -msgid "ROM image is present." -msgstr "Ảnh ROM có hiện diện." - -#: grub-core/commands/efi/loadbios.c:70 -msgid "Can't enable ROM area." -msgstr "Không thể cho phép vùng ROM." - -#: grub-core/commands/efi/loadbios.c:209 -msgid "" -"Create BIOS-like structures for backward compatibility with existing OS." -msgstr "Tạo cấu trúc giống-BIOS để tương thích ngược vá»›i các HÄH sẵn có." - -#: grub-core/commands/efi/loadbios.c:214 -msgid "BIOS_DUMP [INT10_DUMP]" -msgstr "BIOS_DUMP [INT10_DUMP]" - -#: grub-core/commands/efi/loadbios.c:215 -msgid "Load BIOS dump." -msgstr "Tải bản đổ BIOS." - -#: grub-core/commands/efi/shim_lock.c:76 -#, c-format -msgid "module cannot be loaded in UEFI secure boot mode: %s" -msgstr "" - -#: grub-core/commands/efi/shim_lock.c:98 -#, c-format -msgid "cannot boot due to dangerous module in memory: %s" -msgstr "" - -#: grub-core/commands/efi/shim_lock.c:116 -#, fuzzy -msgid "bad shim signature" -msgstr "chữ ký sai" - -#: grub-core/commands/efi/tpm.c:149 grub-core/commands/efi/tpm.c:189 -#: grub-core/commands/efi/tpm.c:256 grub-core/commands/efi/tpm.c:306 -#, fuzzy -msgid "Command failed" -msgstr "alloc-mem gặp lá»—i" - -#: grub-core/commands/efi/tpm.c:151 grub-core/commands/efi/tpm.c:191 -#: grub-core/commands/efi/tpm.c:258 grub-core/commands/efi/tpm.c:308 -#, fuzzy -msgid "Invalid parameter" -msgstr "tham số không hợp lệ %s" - -#: grub-core/commands/efi/tpm.c:154 grub-core/commands/efi/tpm.c:194 -#: grub-core/commands/efi/tpm.c:261 grub-core/commands/efi/tpm.c:311 -msgid "Output buffer too small" -msgstr "" - -#: grub-core/commands/efi/tpm.c:156 grub-core/commands/efi/tpm.c:196 -#: grub-core/commands/efi/tpm.c:263 grub-core/commands/efi/tpm.c:313 -#, fuzzy -msgid "TPM unavailable" -msgstr "ÄÆ°á»ng dẫn: không sẵn sàng" - -#: grub-core/commands/efi/tpm.c:158 grub-core/commands/efi/tpm.c:198 -#: grub-core/commands/efi/tpm.c:265 grub-core/commands/efi/tpm.c:315 -#, fuzzy -msgid "Unknown TPM error" -msgstr "Không biết lá»—i hệ thống" - -#: grub-core/commands/efi/tpm.c:240 grub-core/commands/efi/tpm.c:288 -msgid "cannot allocate TPM event buffer" -msgstr "" - -#: grub-core/commands/eval.c:63 -msgid "STRING ..." -msgstr "CHUá»–I …" - -#: grub-core/commands/eval.c:64 -msgid "Evaluate arguments as GRUB commands" -msgstr "Lượng giá các đối số như là các lệnh GRUB" - -#: grub-core/commands/file.c:41 -msgid "Check if FILE can be booted as i386 PAE Xen unprivileged guest kernel" -msgstr "" -"Kiểm tra xem TẬP_TIN có thể được khởi động như là khách không đặc quyá»n i386 " -"PAE Xen" - -#: grub-core/commands/file.c:44 -msgid "Check if FILE can be booted as x86_64 Xen unprivileged guest kernel" -msgstr "" -"Kiểm tra xem TẬP_TIN có thể được khởi động như là khách không đặc quyá»n Xen " -"i386_64" - -#: grub-core/commands/file.c:46 -msgid "Check if FILE can be used as Xen x86 privileged guest kernel" -msgstr "" -"Kiểm tra xem TẬP_TIN có thể được khởi động như là nhân khách không đặc quyá»n " -"Xen i386" - -#: grub-core/commands/file.c:48 -msgid "Check if FILE can be used as x86 multiboot kernel" -msgstr "Kiểm tra xem TẬP_TIN có thể dùng làm nhân x86 Ä‘a khởi động (multiboot)" - -#: grub-core/commands/file.c:50 -msgid "Check if FILE can be used as x86 multiboot2 kernel" -msgstr "" -"Kiểm tra xem TẬP_TIN có thể dùng làm nhân x86 Ä‘a khởi động 2 (multiboot2)" - -#: grub-core/commands/file.c:52 -msgid "Check if FILE is ARM Linux" -msgstr "Kiểm tra xem TẬP_TIN có phải là ARM Linux" - -#: grub-core/commands/file.c:54 -msgid "Check if FILE is ARM64 Linux" -msgstr "Kiểm tra xem TẬP_TIN có phải là ARM Linux" - -#: grub-core/commands/file.c:56 -msgid "Check if FILE is IA64 Linux" -msgstr "Kiểm tra xem TẬP_TIN có phải là IA64 Linux" - -#: grub-core/commands/file.c:58 -msgid "Check if FILE is MIPS Linux" -msgstr "Kiểm tra xem TẬP_TIN có phải là MIPS Linux" - -#: grub-core/commands/file.c:60 -msgid "Check if FILE is MIPSEL Linux" -msgstr "Kiểm tra xem TẬP_TIN có phải là MIPSEL Linux" - -#: grub-core/commands/file.c:62 -msgid "Check if FILE is SPARC64 Linux" -msgstr "Kiểm tra xem TẬP_TIN có phải là SPARC64 Linux" - -#: grub-core/commands/file.c:64 -msgid "Check if FILE is POWERPC Linux" -msgstr "Kiểm tra xem TẬP_TIN có phải là POWERPC Linux" - -#: grub-core/commands/file.c:66 -msgid "Check if FILE is x86 Linux" -msgstr "Kiểm tra xem TẬP_TIN có phải là x86 Linux" - -#: grub-core/commands/file.c:68 -msgid "Check if FILE is x86 Linux supporting 32-bit protocol" -msgstr "Kiểm tra xem TẬP_TIN có phải là x86 Linux há»— trợ giao thức 32 bít" - -#: grub-core/commands/file.c:70 -msgid "Check if FILE is x86 kFreeBSD" -msgstr "Kiểm tra xem TẬP_TIN có phải là x86 kFreeBSD" - -#: grub-core/commands/file.c:72 -msgid "Check if FILE is i386 kFreeBSD" -msgstr "Kiểm tra xem TẬP_TIN có phải là i386 kFreeBSD" - -#: grub-core/commands/file.c:74 -msgid "Check if FILE is x86_64 kFreeBSD" -msgstr "Kiểm tra xem TẬP_TIN có phải là x86_64 kFreeBSD" - -#: grub-core/commands/file.c:77 -msgid "Check if FILE is x86 kNetBSD" -msgstr "Kiểm tra xem TẬP_TIN có phải là x86 kNetBSD" - -#: grub-core/commands/file.c:79 -msgid "Check if FILE is i386 kNetBSD" -msgstr "Kiểm tra xem TẬP_TIN có phải là i386 kNetBSD" - -#: grub-core/commands/file.c:81 -msgid "Check if FILE is x86_64 kNetBSD" -msgstr "Kiểm tra xem TẬP_TIN có phải là x86_64 kNetBSD" - -#: grub-core/commands/file.c:84 -msgid "Check if FILE is i386 EFI file" -msgstr "Kiểm tra xem TẬP_TIN có phải là i386 EFI file" - -#: grub-core/commands/file.c:86 -msgid "Check if FILE is x86_64 EFI file" -msgstr "Kiểm tra xem TẬP_TIN có phải là tập tin x86_64 EFI" - -#: grub-core/commands/file.c:88 -msgid "Check if FILE is IA64 EFI file" -msgstr "Kiểm tra xem TẬP_TIN có phải là tập tin IA64 EFI" - -#: grub-core/commands/file.c:90 -msgid "Check if FILE is ARM64 EFI file" -msgstr "Kiểm tra xem TẬP_TIN có phải là tập tin ARM64 EFI" - -#: grub-core/commands/file.c:92 -msgid "Check if FILE is ARM EFI file" -msgstr "Kiểm tra xem TẬP_TIN có phải là tập tin ARM EFI" - -#: grub-core/commands/file.c:94 -#, fuzzy -msgid "Check if FILE is RISC-V 32bit EFI file" -msgstr "Kiểm tra xem TẬP_TIN có phải là tập tin ARM EFI" - -#: grub-core/commands/file.c:96 -#, fuzzy -msgid "Check if FILE is RISC-V 64bit EFI file" -msgstr "Kiểm tra xem TẬP_TIN có phải là tập tin IA64 EFI" - -#: grub-core/commands/file.c:98 -msgid "Check if FILE is hiberfil.sys in hibernated state" -msgstr "" -"Kiểm tra xem TẬP_TIN có phải là hiberfil.sys hay trạng thái cá»§a ngá»§ đông" - -#: grub-core/commands/file.c:100 -msgid "Check if FILE is x86_64 XNU (Mac OS X kernel)" -msgstr "Kiểm tra xem TẬP_TIN có phải là x86_64 XNU (nhân Mac OS X)" - -#: grub-core/commands/file.c:102 -msgid "Check if FILE is i386 XNU (Mac OS X kernel)" -msgstr "Kiểm tra xem TẬP_TIN có phải là i386 XNU (nhân Mac OS X)" - -#: grub-core/commands/file.c:104 -msgid "Check if FILE is XNU (Mac OS X kernel) hibernated image" -msgstr "Kiểm tra xem TẬP_TIN có phải là ảnh ngá»§ đông XNU (nhân Mac OS X)" - -#: grub-core/commands/file.c:106 -msgid "Check if FILE is BIOS bootsector" -msgstr "Kiểm tra xem TẬP_TIN có phải là rãnh khởi động BIOS" - -#. TRANSLATORS: it's a standalone boolean value, -#. opposite of "true". -#: grub-core/commands/file.c:675 grub-core/commands/i386/cmostest.c:63 -#: grub-core/commands/i386/cpuid.c:71 grub-core/commands/keystatus.c:83 -#: grub-core/commands/keystatus.c:87 grub-core/commands/keystatus.c:96 -#: grub-core/commands/test.c:436 grub-core/commands/true.c:39 -#: grub-core/script/execute.c:247 grub-core/script/execute.c:1039 -msgid "false" -msgstr "không đạt" - -#: grub-core/commands/file.c:684 -msgid "OPTIONS FILE" -msgstr "CÃC TÙY CHỌN TẬP_TIN" - -#: grub-core/commands/file.c:685 -msgid "Check if FILE is of specified type." -msgstr "Kiểm tra xem TẬP_TIN có phải là kiểu đã chỉ ra hay không." - -#. TRANSLATORS: It means that the specified partition e.g. -#. hd0,msdos1=/dev/sda1 doesn't exist. -#: grub-core/commands/gptsync.c:140 grub-core/kern/disk.c:258 -msgid "no such partition" -msgstr "không có phân vùng như vậy" - -#: grub-core/commands/gptsync.c:240 -#, c-format -msgid "New MBR is written to `%s'\n" -msgstr "MBR má»›i được ghi vào “%sâ€\n" - -#: grub-core/commands/gptsync.c:252 -msgid "DEVICE [PARTITION[+/-[TYPE]]] ..." -msgstr "THIẾT_BỊ [PHÂN_VÙNG[+/-[KIỂU]]] …" - -#. TRANSLATORS: MBR type is one-byte partition -#. type id. -#: grub-core/commands/gptsync.c:255 -msgid "" -"Fill hybrid MBR of GPT drive DEVICE. Specified partitions will be a part of " -"hybrid MBR. Up to 3 partitions are allowed. TYPE is an MBR type. + means " -"that partition is active. Only one partition can be active." -msgstr "" -"Tô đầy MBR pha (hybrid) cá»§a “THIẾT_BỊ†ổ đĩa GPT. Các phân vùng đã chỉ ra sẽ " -"thuá»™c vá» MBR hybrid. Cho phép đến 3 phân vùng. “KIỂU†là má»™t kiểu MBR. “+†" -"có nghÄ©a là phân vùng đó vẫn hoạt động. Chỉ má»™t phân vùng có thể hoạt động." - -#: grub-core/commands/halt.c:40 -msgid "" -"Halts the computer. This command does not work on all firmware " -"implementations." -msgstr "" -"Tạm dừng máy tính. Câu lệnh này không có tác động trên má»i phần thá»±c thi cá»§a " -"firmware." - -#: grub-core/commands/hashsum.c:32 -msgid "Specify hash to use." -msgstr "định rõ kiểu băm cần dùng" - -#: grub-core/commands/hashsum.c:32 -msgid "HASH" -msgstr "BÄ‚M" - -#: grub-core/commands/hashsum.c:33 -msgid "Check hashes of files with hash list FILE." -msgstr "Kiểm tra mã băm cá»§a các tập tin vá»›i mã băm được liệt kê trong TẬP_TIN" - -#: grub-core/commands/hashsum.c:35 -msgid "Base directory for hash list." -msgstr "Thư mục cÆ¡ sở cho danh sách băm." - -#. TRANSLATORS: platform here isn't identifier. It can be translated. -#: grub-core/commands/hashsum.c:35 grub-core/commands/ls.c:150 -#: grub-core/commands/macbless.c:226 grub-core/commands/syslinuxcfg.c:51 -#: grub-core/commands/syslinuxcfg.c:54 grub-core/kern/emu/main.c:106 -#: include/grub/util/install.h:50 include/grub/util/install.h:53 -#: include/grub/util/install.h:56 include/grub/util/install.h:59 -#: util/grub-install.c:250 util/grub-install.c:252 util/grub-install.c:297 -#: util/grub-install.c:299 util/grub-mkimage.c:64 util/grub-mkimage.c:67 -#: util/grub-mknetdir.c:46 util/grub-mknetdir.c:48 util/grub-mkrescue.c:99 -#: util/grub-setup.c:82 util/grub-syslinux2cfg.c:63 util/grub-syslinux2cfg.c:65 -#: util/grub-syslinux2cfg.c:67 util/grub-syslinux2cfg.c:71 -msgid "DIR" -msgstr "TMỤC" - -#: grub-core/commands/hashsum.c:37 -msgid "Don't stop after first error." -msgstr "Không dừng lại sau lá»—i đầu tiên." - -#: grub-core/commands/hashsum.c:38 -msgid "Uncompress file before checksumming." -msgstr "Giải nét tập tin trước khi tổng kiểm tra." - -#: grub-core/commands/hashsum.c:163 -#, c-format -msgid "%s: READ ERROR\n" -msgstr "%s: Lá»–I ÄỌC\n" - -#: grub-core/commands/hashsum.c:177 -#, c-format -msgid "%s: HASH MISMATCH\n" -msgstr "%s: KHÔNG KHỚP Mà BÄ‚M\n" - -#: grub-core/commands/hashsum.c:188 -#, c-format -msgid "%s: OK\n" -msgstr "%s: OK\n" - -#: grub-core/commands/hashsum.c:282 -msgid "-h HASH [-c FILE [-p PREFIX]] [FILE1 [FILE2 ...]]" -msgstr "-h BÄ‚M [-c TẬP_TIN [-p TIỀN_Tá»]] [TẬP_TIN1 [TẬP_TIN2 …]]" - -#. TRANSLATORS: "hash checksum" is just to -#. be a bit more precise, you can treat it as -#. just "hash". -#: grub-core/commands/hashsum.c:287 grub-core/commands/hashsum.c:292 -#: grub-core/commands/hashsum.c:297 grub-core/commands/hashsum.c:302 -#: grub-core/commands/hashsum.c:307 grub-core/commands/hashsum.c:313 -msgid "Compute or check hash checksum." -msgstr "Tính hay kiểm tra mã băm." - -#: grub-core/commands/hashsum.c:290 grub-core/commands/hashsum.c:295 -#: grub-core/commands/hashsum.c:300 grub-core/commands/hashsum.c:305 -#: grub-core/commands/hashsum.c:311 -msgid "[-c FILE [-p PREFIX]] [FILE1 [FILE2 ...]]" -msgstr "[-c TẬP_TIN [-p TIỀN_Tá»]] [TẬP_TIN1 [TẬP_TIN2 …]]" - -#: grub-core/commands/hdparm.c:33 -msgid "" -"Set Advanced Power Management\n" -"(1=low, ..., 254=high, 255=off)." -msgstr "" -"Äặt sá»± quản lý Ä‘iện năng cấp cao (Advanced Power Management)\n" -"(1=thấp, …, 254=cao, 255=tắt)." - -#: grub-core/commands/hdparm.c:36 -msgid "Display power mode." -msgstr "Hiển thị chế độ nguồn Ä‘iện." - -#: grub-core/commands/hdparm.c:37 -msgid "Freeze ATA security settings until reset." -msgstr "Äóng băng các cài đặt bảo mật ATA đến khi đặt lại." - -#: grub-core/commands/hdparm.c:39 -msgid "Display SMART health status." -msgstr "Hiển thị tình trạng SMART." - -#: grub-core/commands/hdparm.c:40 -msgid "" -"Set Automatic Acoustic Management\n" -"(0=off, 128=quiet, ..., 254=fast)." -msgstr "" -"Äặt sá»± tá»± động quản lý âm thanh (Automatic Acoustic Management)\n" -"(0=tắt, 128=im, …, 254=nhanh)." - -#: grub-core/commands/hdparm.c:43 -msgid "" -"Set standby timeout\n" -"(0=off, 1=5s, 2=10s, ..., 240=20m, 241=30m, ...)." -msgstr "" -"Äặt thá»i hạn trạng thái chá»\n" -"(0=tắt, 1=5giây, 2=10giây, …, 240=20phút, 241=30phút, …)." - -#: grub-core/commands/hdparm.c:46 -msgid "Set drive to standby mode." -msgstr "Äặt ổ đĩa thành chế độ chá»." - -#: grub-core/commands/hdparm.c:47 -msgid "Set drive to sleep mode." -msgstr "Äặt ổ đĩa thành chế độ ngá»§." - -#: grub-core/commands/hdparm.c:48 -msgid "Print drive identity and settings." -msgstr "In ra sá»± nhận diện và cài đặt vỠổ đĩa." - -#: grub-core/commands/hdparm.c:50 -msgid "Show raw contents of ATA IDENTIFY sector." -msgstr "Hiển thị ná»™i dung cá»§a rãnh ghi IDENTIFY (Mà NHẬN DIỆN) kiểu ATA." - -#: grub-core/commands/hdparm.c:52 -msgid "Disable/enable SMART (0/1)." -msgstr "Bật/tắt SMART (0/1)." - -#: grub-core/commands/hdparm.c:53 -msgid "Do not print messages." -msgstr "Äừng hiển thị thông Ä‘iệp." - -#: grub-core/commands/hdparm.c:286 grub-core/commands/i386/rdmsr.c:68 -#: grub-core/commands/iorw.c:47 grub-core/commands/legacycfg.c:760 -#: grub-core/commands/legacycfg.c:812 grub-core/commands/macbless.c:190 -#: grub-core/commands/memrw.c:47 grub-core/commands/pgp.c:738 -#: grub-core/commands/pgp.c:792 grub-core/commands/search.c:304 -#: grub-core/commands/search_wrap.c:179 grub-core/commands/setpci.c:243 -#: grub-core/commands/sleep.c:71 grub-core/fs/zfs/zfsinfo.c:279 -#: grub-core/fs/zfs/zfsinfo.c:358 grub-core/gettext/gettext.c:492 -#: grub-core/kern/corecmd.c:65 grub-core/kern/corecmd.c:79 -#: grub-core/mmap/mmap.c:430 grub-core/net/dns.c:713 grub-core/net/dns.c:745 -#: grub-core/net/net.c:694 grub-core/net/net.c:1052 -#: grub-core/normal/context.c:194 grub-core/script/execute.c:131 -#: grub-core/term/gfxterm_background.c:136 -msgid "one argument expected" -msgstr "cần má»™t đối số" - -#: grub-core/commands/hdparm.c:440 -msgid "[OPTIONS] DISK" -msgstr "[TÙY_CHỌN…] ÄĨA" - -#: grub-core/commands/hdparm.c:441 -msgid "Get/set ATA disk parameters." -msgstr "Lấy/đặt các tham số đĩa ATA." - -#: grub-core/commands/help.c:132 grub-core/lib/arg.c:109 -#: grub-core/lib/gnulib/argp-help.c:1616 -msgid "Usage:" -msgstr "Cách dùng:" - -#: grub-core/commands/help.c:146 -msgid "[PATTERN ...]" -msgstr "[MẪU …]" - -#: grub-core/commands/help.c:147 -msgid "Show a help message." -msgstr "Hiển thị má»™t thông Ä‘iệp trợ giúp." - -#: grub-core/commands/hexdump.c:31 -msgid "Skip offset bytes from the beginning of file." -msgstr "Bá» qua các byte tính từ đầu tập tin." - -#: grub-core/commands/hexdump.c:33 -msgid "Read only LENGTH bytes." -msgstr "Äá»c chỉ DÀI byte." - -#: grub-core/commands/hexdump.c:125 -msgid "[OPTIONS] FILE_OR_DEVICE" -msgstr "[TÙY_CHỌN …] TẬP_TIN_HAY_THIẾT_BỊ" - -#: grub-core/commands/hexdump.c:126 -msgid "Show raw contents of a file or memory." -msgstr "Hiển thị ná»™i dung cá»§a má»™t tập tin hay vùng nhá»›." - -#: grub-core/commands/i386/cmosdump.c:58 -msgid "Show raw dump of the CMOS contents." -msgstr "Hiển thị dạng thô cá»§a ná»™i dung CMOS." - -#: grub-core/commands/i386/cmostest.c:108 -#: grub-core/commands/i386/cmostest.c:111 -#: grub-core/commands/i386/cmostest.c:114 -msgid "BYTE:BIT" -msgstr "BYTE:BÃT" - -#: grub-core/commands/i386/cmostest.c:109 -msgid "Test bit at BYTE:BIT in CMOS." -msgstr "Thá»­ bít tại BYTE:BIT trong CMOS." - -#: grub-core/commands/i386/cmostest.c:112 -msgid "Clear bit at BYTE:BIT in CMOS." -msgstr "Xóa bít tại BYTE:BIT trong CMOS." - -#. TRANSLATORS: A bit may be either set (1) or clear (0). -#: grub-core/commands/i386/cmostest.c:116 -msgid "Set bit at BYTE:BIT in CMOS." -msgstr "Äặt bit tại BYTE:BIT trong CMOS." - -#: grub-core/commands/i386/coreboot/cb_timestamps.c:120 -msgid "Show coreboot boot time statistics." -msgstr "Hiển thị thống kê thá»i gian mồi máy “corebootâ€." - -#: grub-core/commands/i386/coreboot/cbls.c:137 -msgid "List coreboot tables." -msgstr "Liệt kê bảng “corebootâ€" - -#. TRANSLATORS: "(default)" at the end means that this option is used if -#. no argument is specified. -#: grub-core/commands/i386/cpuid.c:36 -msgid "Check if CPU supports 64-bit (long) mode (default)." -msgstr "Kiểm tra xem CPU có há»— trợ chế độ 64-bit (long) (mặc định)." - -#: grub-core/commands/i386/cpuid.c:37 -msgid "Check if CPU supports Physical Address Extension." -msgstr "Kiểm tra xem CPU có há»— trợ chế độ địa chỉ vật lý mở rá»™ng." - -#: grub-core/commands/i386/cpuid.c:119 -msgid "Check for CPU features." -msgstr "Kiểm tra có các tính năng CPU." - -#. TRANSLATORS: In this file "mapping" refers to a change GRUB makes so if -#. your language doesn't have an equivalent of "mapping" you can -#. use the word like "rerouting". -#. -#: grub-core/commands/i386/pc/drivemap.c:43 -msgid "Show the current mappings." -msgstr "Hiển thị các sá»± ánh xạ hiện thá»i." - -#: grub-core/commands/i386/pc/drivemap.c:44 -msgid "Reset all mappings to the default values." -msgstr "Äặt lại má»—i sá»± ánh xạ thành giá trị mặc định." - -#: grub-core/commands/i386/pc/drivemap.c:45 -msgid "Perform both direct and reverse mappings." -msgstr "Ãnh xạ bằng cả hai cách trá»±c tiếp và ngược lại." - -#: grub-core/commands/i386/pc/drivemap.c:184 -msgid "No drives have been remapped" -msgstr "Chưa có thiết bị nào được ánh xạ cả" - -#. TRANSLATORS: This is the header of mapping list. -#. On the left is how OS will see the disks and -#. on the right current GRUB vision. -#: grub-core/commands/i386/pc/drivemap.c:191 -msgid "OS disk #num ------> GRUB/BIOS device" -msgstr "đĩa OS #số ------> thiết bị GRUB/BIOS" - -#: grub-core/commands/i386/pc/drivemap.c:413 -msgid "-l | -r | [-s] grubdev osdisk." -msgstr "-l | -r | [-s] grubdev đĩa_chứa_HÄH." - -#: grub-core/commands/i386/pc/drivemap.c:414 -msgid "Manage the BIOS drive mappings." -msgstr "Quản lý các sá»± ánh xạ ổ đĩa BIOS." - -#: grub-core/commands/i386/pc/halt.c:31 -msgid "Do not use APM to halt the computer." -msgstr "Äừng dùng APM để tạm dừng lại chạy máy tính." - -#: grub-core/commands/i386/pc/halt.c:119 -msgid "Halt the system, if possible using APM." -msgstr "Tạm dừng lại chạy máy tính, nếu có thể, dùng APM." - -#: grub-core/commands/i386/pc/lsapm.c:75 -msgid "no APM found" -msgstr "không tìm thấy APM" - -#: grub-core/commands/i386/pc/lsapm.c:77 -#, c-format -msgid "" -"Version %u.%u\n" -"32-bit CS = 0x%x, len = 0x%x, offset = 0x%x\n" -"16-bit CS = 0x%x, len = 0x%x\n" -"DS = 0x%x, len = 0x%x\n" -msgstr "" -"Phiên bản %u.%u\n" -"32-bit CS = 0x%x, dài = 0x%x, khoảng-bù = 0x%x\n" -"16-bit CS = 0x%x, dài = 0x%x\n" -"DS = 0x%x, dài = 0x%x\n" - -#: grub-core/commands/i386/pc/lsapm.c:86 -msgid "16-bit protected interface supported\n" -msgstr "giao diện bảo vệ 16-bit được há»— trợ\n" - -#: grub-core/commands/i386/pc/lsapm.c:87 -msgid "16-bit protected interface unsupported\n" -msgstr "giao diện bảo vệ 16-bit không được há»— trợ\n" - -#: grub-core/commands/i386/pc/lsapm.c:89 -msgid "32-bit protected interface supported\n" -msgstr "giao diện bảo vệ 32-bit được há»— trợ\n" - -#: grub-core/commands/i386/pc/lsapm.c:90 -msgid "32-bit protected interface unsupported\n" -msgstr "giao diện bảo vệ 32-bit không được há»— trợ\n" - -#: grub-core/commands/i386/pc/lsapm.c:92 -msgid "CPU Idle slows down processor\n" -msgstr "CPU ở trạng thái Idle giảm tốc độ xá»­ lý xuống\n" - -#: grub-core/commands/i386/pc/lsapm.c:93 -msgid "CPU Idle doesn't slow down processor\n" -msgstr "CPU ở trạng thái Idle không giảm tốc độ xá»­ lý xuống\n" - -#: grub-core/commands/i386/pc/lsapm.c:95 -msgid "APM disabled\n" -msgstr "APM bị tắt\n" - -#: grub-core/commands/i386/pc/lsapm.c:95 -msgid "APM enabled\n" -msgstr "APM được bật\n" - -#: grub-core/commands/i386/pc/lsapm.c:97 -msgid "APM disengaged\n" -msgstr "APM đã bị bá» gắn\n" - -#: grub-core/commands/i386/pc/lsapm.c:97 -msgid "APM engaged\n" -msgstr "APM được gắn\n" - -#: grub-core/commands/i386/pc/lsapm.c:107 -msgid "Show APM information." -msgstr "Hiển thị thông tin APM." - -#. TRANSLATORS: It's musical notes, not the notes -#. you take. Play command expects arguments which can -#. be either a filename or tempo+notes. -#. This error happens if none is specified. -#: grub-core/commands/i386/pc/play.c:88 -msgid "filename or tempo and notes expected" -msgstr "cần tên tập tin hoặc tempo+notes" - -#: grub-core/commands/i386/pc/play.c:113 grub-core/commands/i386/pc/play.c:144 -#, c-format -msgid "Invalid tempo in %s" -msgstr "tempo không hợp lệ trong %s" - -#: grub-core/commands/i386/pc/play.c:151 grub-core/commands/macbless.c:172 -#: grub-core/fs/archelp.c:260 grub-core/fs/bfs.c:621 grub-core/fs/bfs.c:704 -#: grub-core/fs/btrfs.c:1726 grub-core/fs/btrfs.c:1755 -#: grub-core/fs/btrfs.c:1799 grub-core/fs/btrfs.c:1882 -#: grub-core/fs/btrfs.c:1906 grub-core/fs/fshelp.c:257 grub-core/fs/jfs.c:696 -#: grub-core/fs/minix.c:426 grub-core/fs/ufs.c:544 grub-core/fs/zfs/zfs.c:2083 -#: grub-core/fs/zfs/zfs.c:2095 grub-core/fs/zfs/zfs.c:2301 -#: grub-core/net/http.c:120 -#, c-format -msgid "file `%s' not found" -msgstr "không tìm thấy tập tin “%sâ€" - -#: grub-core/commands/i386/pc/play.c:162 grub-core/commands/i386/pc/play.c:171 -#: grub-core/kern/misc.c:419 grub-core/script/execute.c:138 -#: grub-core/script/execute.c:244 -msgid "unrecognized number" -msgstr "không thừa nhận số" - -#: grub-core/commands/i386/pc/play.c:190 -msgid "FILE | TEMPO [PITCH1 DURATION1] [PITCH2 DURATION2] ... " -msgstr "TẬP_TIN | TEMPO [CAO-ÄỘ-1 TRƯỜNG-ÄỘ-1] [CAO-ÄỘ-2 TRƯỜNG-ÄỘ-2] … " - -#: grub-core/commands/i386/pc/play.c:191 -msgid "Play a tune." -msgstr "Phát má»™t giai Ä‘iệu." - -#: grub-core/commands/i386/pc/sendkey.c:39 -msgid "set numlock mode" -msgstr "đặt chế độ numlock" - -#: grub-core/commands/i386/pc/sendkey.c:40 -msgid "set capslock mode" -msgstr "đặt chế độ capslock " - -#: grub-core/commands/i386/pc/sendkey.c:41 -msgid "set scrolllock mode" -msgstr "đặt chế độ scrolllock" - -#: grub-core/commands/i386/pc/sendkey.c:42 -msgid "set insert mode" -msgstr "đặt chế độ chèn" - -#: grub-core/commands/i386/pc/sendkey.c:43 -msgid "set pause mode" -msgstr "đặt chế độ tạm dừng" - -#: grub-core/commands/i386/pc/sendkey.c:44 -msgid "press left shift" -msgstr "bấm shiff trái" - -#: grub-core/commands/i386/pc/sendkey.c:45 -msgid "press right shift" -msgstr "bấm shiff phải" - -#: grub-core/commands/i386/pc/sendkey.c:46 -msgid "press SysRq" -msgstr "bấm SysRq" - -#: grub-core/commands/i386/pc/sendkey.c:47 -msgid "press NumLock key" -msgstr "bấm phím NumLock" - -#: grub-core/commands/i386/pc/sendkey.c:48 -msgid "press CapsLock key" -msgstr "bấm phím CapsLock" - -#: grub-core/commands/i386/pc/sendkey.c:49 -msgid "press ScrollLock key" -msgstr "bấm phím ScrollLock" - -#: grub-core/commands/i386/pc/sendkey.c:50 -msgid "press Insert key" -msgstr "bấm phím Insert" - -#: grub-core/commands/i386/pc/sendkey.c:51 -msgid "press left alt" -msgstr "bấm alt trái" - -#: grub-core/commands/i386/pc/sendkey.c:52 -msgid "press right alt" -msgstr "bấm alt phải" - -#: grub-core/commands/i386/pc/sendkey.c:53 -msgid "press left ctrl" -msgstr "bấm ctrl trái" - -#: grub-core/commands/i386/pc/sendkey.c:54 -msgid "press right ctrl" -msgstr "bấm ctrl phải" - -#: grub-core/commands/i386/pc/sendkey.c:55 -msgid "don't update LED state" -msgstr "không cập nhật trạng thái LED" - -#: grub-core/commands/i386/pc/sendkey.c:372 -msgid "[KEYSTROKE1] [KEYSTROKE2] ..." -msgstr "[PHÃM-GÕ-1] [PHÃM-GÕ-2] …" - -#. TRANSLATORS: It can emulate multiple -#. keypresses. -#: grub-core/commands/i386/pc/sendkey.c:375 -msgid "Emulate a keystroke sequence" -msgstr "Mô phá»ng chuá»—i phím gõ" - -#: grub-core/commands/i386/rdmsr.c:37 grub-core/commands/iorw.c:34 -#: grub-core/commands/memrw.c:33 grub-core/commands/setpci.c:73 -msgid "Save read value into variable VARNAME." -msgstr "Lưu giá trị Ä‘á»c vào biến TÊN_BIẾN." - -#: grub-core/commands/i386/rdmsr.c:38 grub-core/commands/iorw.c:35 -#: grub-core/commands/memrw.c:34 grub-core/commands/probe.c:40 -#: grub-core/commands/search_wrap.c:40 grub-core/commands/setpci.c:74 -#: grub-core/commands/tr.c:32 -msgid "VARNAME" -msgstr "TÊN_BIẾN" - -#: grub-core/commands/i386/rdmsr.c:55 grub-core/commands/i386/rdmsr.c:60 -#: grub-core/commands/i386/rdmsr.c:65 grub-core/commands/i386/wrmsr.c:47 -#: grub-core/commands/i386/wrmsr.c:52 grub-core/commands/i386/wrmsr.c:57 -#, fuzzy -msgid "unsupported instruction" -msgstr "định dạng gzip không được há»— trợ" - -#: grub-core/commands/i386/rdmsr.c:77 grub-core/commands/i386/wrmsr.c:69 -#: grub-core/commands/i386/wrmsr.c:77 grub-core/net/dns.c:727 -msgid "invalid argument" -msgstr "tham số không hợp lệ" - -#: grub-core/commands/i386/rdmsr.c:94 grub-core/commands/memrw.c:125 -#: grub-core/commands/memrw.c:129 grub-core/commands/memrw.c:133 -msgid "ADDR" -msgstr "ÄỊA_CHỈ" - -#: grub-core/commands/i386/rdmsr.c:95 -msgid "Read a CPU model specific register." -msgstr "" - -#: grub-core/commands/i386/wrmsr.c:86 -#, fuzzy -msgid "ADDR VALUE" -msgstr "ÄỊA_CHỈ GIÃ_TRỊ [BỘ_LỌC]" - -#: grub-core/commands/i386/wrmsr.c:87 -msgid "Write a value to a CPU model specific register." -msgstr "" - -#: grub-core/commands/ieee1275/suspend.c:34 -msgid "Run `go' to resume GRUB." -msgstr "Chạy “go†để phục hồi GRUB." - -#: grub-core/commands/ieee1275/suspend.c:45 -msgid "Return to IEEE1275 prompt." -msgstr "Quay lại dấu nhắc IEEE1275." - -#: grub-core/commands/iorw.c:123 grub-core/commands/iorw.c:127 -#: grub-core/commands/iorw.c:131 grub-core/gdb/gdb.c:79 -msgid "PORT" -msgstr "Cá»”NG" - -#: grub-core/commands/iorw.c:123 -msgid "Read 8-bit value from PORT." -msgstr "Äá»c giá trị 8-bit từ Cá»”NG." - -#: grub-core/commands/iorw.c:127 -msgid "Read 16-bit value from PORT." -msgstr "Äá»c giá trị 16-bit từ Cá»”NG." - -#: grub-core/commands/iorw.c:131 -msgid "Read 32-bit value from PORT." -msgstr "Äá»c giá trị 32-bit từ Cá»”NG." - -#: grub-core/commands/iorw.c:135 grub-core/commands/iorw.c:139 -msgid "PORT VALUE [MASK]" -msgstr "ÄỊA_CHỈ-Cá»”NG GIÃ_TRỊ [MẶT-NẠ]" - -#: grub-core/commands/iorw.c:136 -msgid "Write 8-bit VALUE to PORT." -msgstr "Ghi GIÃ_TRỊ 8-bit vào Cá»”NG." - -#: grub-core/commands/iorw.c:140 -msgid "Write 16-bit VALUE to PORT." -msgstr "Ghi GIÃ_TRỊ 16-bit vào Cá»”NG." - -#: grub-core/commands/iorw.c:143 grub-core/commands/memrw.c:137 -#: grub-core/commands/memrw.c:141 grub-core/commands/memrw.c:145 -msgid "ADDR VALUE [MASK]" -msgstr "ÄỊA_CHỈ GIÃ_TRỊ [BỘ_LỌC]" - -#: grub-core/commands/iorw.c:144 -msgid "Write 32-bit VALUE to PORT." -msgstr "Ghi GIÃ_TRỊ 32-bit vào Cá»”NG." - -#: grub-core/commands/keylayouts.c:215 grub-core/commands/loadenv.c:61 -#: grub-core/commands/nativedisk.c:189 grub-core/efiemu/main.c:235 -#: grub-core/font/font.c:428 grub-core/gfxmenu/gfxmenu.c:63 -#: grub-core/kern/device.c:42 grub-core/kern/dl.c:740 -#, c-format -msgid "variable `%s' isn't set" -msgstr "biến “%s†chưa được đặt" - -#: grub-core/commands/keylayouts.c:301 -msgid "Load a keyboard layout." -msgstr "Tải bố cụ bàn phím." - -#. TRANSLATORS: "Check" in a sense that if this key is pressed then -#. "true" is returned, otherwise "false". -#: grub-core/commands/keystatus.c:32 -msgid "Check Shift key." -msgstr "Kiểm tra phím Shift." - -#: grub-core/commands/keystatus.c:33 -msgid "Check Control key." -msgstr "Kiểm tra phím Control." - -#: grub-core/commands/keystatus.c:34 -msgid "Check Alt key." -msgstr "Kiểm tra phím Alt." - -#. TRANSLATORS: there are 3 modifiers. -#: grub-core/commands/keystatus.c:106 -msgid "Check key modifier status." -msgstr "Kiểm tra trạng thái vá» phím bổ trợ." - -#: grub-core/commands/legacycfg.c:512 grub-core/commands/legacycfg.c:526 -#: grub-core/commands/legacycfg.c:546 grub-core/commands/legacycfg.c:559 -#: grub-core/commands/time.c:43 grub-core/script/function.c:109 -#: util/grub-file.c:100 util/grub-fstest.c:57 util/grub-mount.c:69 -#, c-format -msgid "can't find command `%s'" -msgstr "không thể tìm thấy lệnh “%sâ€" - -#: grub-core/commands/legacycfg.c:813 grub-core/normal/auth.c:225 -#: util/grub-mkpasswd-pbkdf2.c:139 -msgid "Enter password: " -msgstr "Nhập mật khẩu: " - -#. TRANSLATORS: "legacy config" means -#. "config as used by grub-legacy". -#: grub-core/commands/legacycfg.c:837 -msgid "Parse legacy config in same context" -msgstr "Phân tích cấu hình theo kiểu cÅ© trong cùng ngữ cảnh" - -#: grub-core/commands/legacycfg.c:842 -msgid "Parse legacy config in new context" -msgstr "Phân tích cấu hình theo kiểu cÅ© trong ngữ cảnh má»›i" - -#: grub-core/commands/legacycfg.c:847 -msgid "Parse legacy config in same context taking only menu entries" -msgstr "" -"Phân tích cấu hình theo kiểu cÅ© trong cùng ngữ cảnh nhưng chỉ các mục menu" - -#: grub-core/commands/legacycfg.c:852 -msgid "Parse legacy config in new context taking only menu entries" -msgstr "" -"Phân tích cấu hình theo kiểu cÅ© trong ngữ cảnh má»›i chỉ vá»›i các mục nemu" - -#: grub-core/commands/legacycfg.c:856 -msgid "[--no-mem-option] [--type=TYPE] FILE [ARG ...]" -msgstr "[--no-mem-option] [--type=KIỂU] TẬP_TIN [THAM_SỠ…]" - -#: grub-core/commands/legacycfg.c:857 -msgid "Simulate grub-legacy `kernel' command" -msgstr "Mô phá»ng lệnh “kernel†kiểu-grub-cÅ©" - -#: grub-core/commands/legacycfg.c:861 grub-core/commands/legacycfg.c:865 -msgid "FILE [ARG ...]" -msgstr "TẬP_TIN [Äá»I_SỠ…]" - -#: grub-core/commands/legacycfg.c:862 -msgid "Simulate grub-legacy `initrd' command" -msgstr "Mô phá»ng lệnh “initrd†kiểu-grub-cÅ©" - -#: grub-core/commands/legacycfg.c:866 -msgid "Simulate grub-legacy `modulenounzip' command" -msgstr "Mô phá»ng lệnh “modulenounzip†kiểu-grub-cÅ©" - -#: grub-core/commands/legacycfg.c:870 grub-core/commands/legacycfg.c:875 -msgid "[--md5] PASSWD [FILE]" -msgstr "[--md5] MẬT_KHẨU [TẬP_TIN]" - -#: grub-core/commands/legacycfg.c:871 -msgid "Simulate grub-legacy `password' command" -msgstr "Mô phá»ng lệnh “password†kiểu-grub-cÅ©" - -#: grub-core/commands/legacycfg.c:876 -msgid "Simulate grub-legacy `password' command in menu entry mode" -msgstr "Mô phá»ng lệnh “password†kiểu-grub-cÅ© trong chế độ mục trình đơn" - -#. TRANSLATORS: This option is used to override default filename -#. for loading and storing environment. -#: grub-core/commands/loadenv.c:37 -msgid "Specify filename." -msgstr "Ghi rõ tên tập tin." - -#: grub-core/commands/loadenv.c:39 -msgid "Skip signature-checking of the environment file." -msgstr "Bá» qua kiểm tra chữ ký cá»§a tập tin môi trưá»ng." - -#: grub-core/commands/loadenv.c:451 -msgid "[-f FILE] [-s|--skip-sig] [variable_name_to_whitelist] [...]" -msgstr "[-f TẬP_TIN] [-s|--skip-sig] [tên-biến-danh-sách-trắng] […]" - -#: grub-core/commands/loadenv.c:452 -msgid "Load variables from environment block file." -msgstr "Tải các biến từ tập tin khối môi trưá»ng." - -#: grub-core/commands/loadenv.c:455 -msgid "[-f FILE]" -msgstr "[-f TẬP_TIN]" - -#: grub-core/commands/loadenv.c:456 -msgid "List variables from environment block file." -msgstr "Liệt kê các biến từ tập tin khối môi trưá»ng." - -#: grub-core/commands/loadenv.c:460 -msgid "[-f FILE] variable_name [...]" -msgstr "[-f TẬP_TIN] tên_biến […]" - -#: grub-core/commands/loadenv.c:461 -msgid "Save variables to environment block file." -msgstr "Lưu các biến vào tập tin khối môi trưá»ng." - -#: grub-core/commands/ls.c:40 -msgid "Show a long list with more detailed information." -msgstr "Hiển thị má»™t danh sách dài chứa thông tin bổ sung." - -#: grub-core/commands/ls.c:41 -msgid "Print sizes in a human readable format." -msgstr "In kích cỡ theo má»™t định dạng cho ngưá»i Ä‘á»c được." - -#: grub-core/commands/ls.c:42 -msgid "List all files." -msgstr "Liệt kê tất cả các tập tin." - -#: grub-core/commands/ls.c:73 -msgid "Network protocols:" -msgstr "Các giao thức mạng:" - -#: grub-core/commands/ls.c:295 -msgid "[-l|-h|-a] [FILE ...]" -msgstr "[-l|-h|-a] [TẬP_TIN …]" - -#: grub-core/commands/ls.c:296 -msgid "List devices and files." -msgstr "Liệt kê các thiết bị và tập tin." - -#: grub-core/commands/lsacpi.c:255 -msgid "Show version 1 tables only." -msgstr "Chỉ hiển thị các bảng phiên bản 1." - -#: grub-core/commands/lsacpi.c:256 -msgid "Show version 2 and version 3 tables only." -msgstr "Chỉ hiển thị các bảng phiên bản 2 và 3." - -#: grub-core/commands/lsacpi.c:306 -msgid "Show ACPI information." -msgstr "Hiện thông tin ACPI." - -#: grub-core/commands/lsmmap.c:31 -msgid "available RAM" -msgstr "RAM sẵn dùng" - -#: grub-core/commands/lsmmap.c:32 -msgid "reserved RAM" -msgstr "RAM dá»± trữ" - -#. TRANSLATORS: this refers to memory where ACPI tables are stored -#. and which can be used by OS once it loads ACPI tables. -#: grub-core/commands/lsmmap.c:35 -msgid "ACPI reclaimable RAM" -msgstr "ACPI có thể cải tạo RAM" - -#. TRANSLATORS: this refers to memory which ACPI-compliant OS -#. is required to save accross hibernations. -#: grub-core/commands/lsmmap.c:38 -msgid "ACPI non-volatile storage RAM" -msgstr "RAM cho APCI sá»­ dụng ở chế độ ngá»§ đông" - -#: grub-core/commands/lsmmap.c:39 -msgid "faulty RAM (BadRAM)" -msgstr "RAM há»ng (BadRAM)" - -#: grub-core/commands/lsmmap.c:40 -msgid "persistent RAM" -msgstr "RAM cố định" - -#: grub-core/commands/lsmmap.c:41 -msgid "persistent RAM (legacy)" -msgstr "RAM cố định (đã lạc hậu)" - -#: grub-core/commands/lsmmap.c:42 -msgid "RAM holding coreboot tables" -msgstr "RAM giữ mã bảng coreboot" - -#: grub-core/commands/lsmmap.c:43 -msgid "RAM holding firmware code" -msgstr "RAM giữ mã firmware" - -#: grub-core/commands/lsmmap.c:52 -#, c-format -msgid "base_addr = 0x%llx, length = 0x%llx, %s\n" -msgstr "base_addr = 0x%llx, dài = 0x%llx, %s\n" - -#: grub-core/commands/lsmmap.c:55 -#, c-format -msgid "base_addr = 0x%llx, length = 0x%llx, type = 0x%x\n" -msgstr "địa-chỉ-cÆ¡-sở = 0x%llx, dài = 0x%llx, kiểu = 0x%x\n" - -#: grub-core/commands/lsmmap.c:79 -msgid "List memory map provided by firmware." -msgstr "Liệt kê các sÆ¡ đồ vùng nhá»› được cung cấp bởi firmware." - -#: grub-core/commands/lspci.c:232 -msgid "List PCI devices." -msgstr "Liệt kê các thiết bị PCI." - -#: grub-core/commands/macbless.c:224 -msgid "Bless FILE of HFS or HFS+ partition for intel macs." -msgstr "" -"Äặt TẬP_TIN khởi động cá»§a phân vùng HFS hoặc HFS+ cho máy macs chạy Intel." - -#: grub-core/commands/macbless.c:228 -msgid "Bless DIR of HFS or HFS+ partition for PPC macs." -msgstr "Äặt TMỤC khởi động cá»§a phân vùng HFS hoặc HFS+ cho máy macs chạy PPC." - -#: grub-core/commands/memrw.c:125 -msgid "Read 8-bit value from ADDR." -msgstr "Äá»c giá trị 8-bit từ ÄỊA_CHỈ." - -#: grub-core/commands/memrw.c:129 -msgid "Read 16-bit value from ADDR." -msgstr "Äá»c giá trị 16-bit từ ÄỊA_CHỈ." - -#: grub-core/commands/memrw.c:133 -msgid "Read 32-bit value from ADDR." -msgstr "Äá»c giá trị 32-bit từ ÄỊA_CHỈ." - -#: grub-core/commands/memrw.c:138 -msgid "Write 8-bit VALUE to ADDR." -msgstr "Ghi GIÃ_TRỊ 8-bit vào ÄỊA_CHỈ." - -#: grub-core/commands/memrw.c:142 -msgid "Write 16-bit VALUE to ADDR." -msgstr "Ghi GIÃ_TRỊ 16-bit vào ÄỊA_CHỈ." - -#: grub-core/commands/memrw.c:146 -msgid "Write 32-bit VALUE to ADDR." -msgstr "Ghi GIÃ_TRỊ 32-bit vào ÄỊA_CHỈ." - -#: grub-core/commands/menuentry.c:31 -msgid "Menu entry type." -msgstr "Kiểu mục menu." - -#: grub-core/commands/menuentry.c:31 grub-core/commands/menuentry.c:38 -#: grub-core/commands/menuentry.c:39 grub-core/gettext/gettext.c:520 -#: util/grub-fstest.c:520 util/grub-install.c:291 util/grub-install.c:304 -#: util/grub-mknetdir.c:51 util/grub-mkrescue.c:109 util/grub-mkrescue.c:110 -#: util/grub-mount.c:453 util/grub-render-label.c:65 -msgid "STRING" -msgstr "CHUá»–I" - -#: grub-core/commands/menuentry.c:33 -msgid "List of users allowed to boot this entry." -msgstr "Liệt kê những tài khoản được phép khởi động từ mục này." - -#: grub-core/commands/menuentry.c:33 -msgid "USERNAME[,USERNAME]" -msgstr "TÊN_NGƯỜI_DÙNG[,TÊN_TÀI_KHOẢN]" - -#: grub-core/commands/menuentry.c:36 -msgid "Keyboard key to quickly boot this entry." -msgstr "Phím được bấm từ bàn phím để khởi động nhanh mục này." - -#: grub-core/commands/menuentry.c:36 -msgid "KEYBOARD_KEY" -msgstr "PHÃM_BÀN_PHÃM" - -#: grub-core/commands/menuentry.c:38 -msgid "Use STRING as menu entry body." -msgstr "Sá»­ dụng CHUá»–I như là phần thân mục trình đơn." - -#: grub-core/commands/menuentry.c:39 -msgid "Menu entry identifier." -msgstr "Äịnh danh mục trình đơn." - -#. TRANSLATORS: menu entry can either be bootable by anyone or only by -#. handful of users. By default when security is active only superusers can -#. boot a given menu entry. With --unrestricted (this option) -#. anyone can boot it. -#: grub-core/commands/menuentry.c:44 -msgid "This entry can be booted by any user." -msgstr "Mục này có thể khởi động được bởi bất kỳ ngưá»i nào." - -#: grub-core/commands/menuentry.c:323 grub-core/commands/menuentry.c:328 -#: grub-core/tests/test_blockarg.c:46 -msgid "BLOCK" -msgstr "KHá»I" - -#: grub-core/commands/menuentry.c:323 -msgid "Define a menu entry." -msgstr "Äịnh nghÄ©a má»™t mục menu." - -#: grub-core/commands/menuentry.c:328 -msgid "Define a submenu." -msgstr "Äịnh nghÄ©a trình đơn con." - -#. TRANSLATORS: this is module list header. Name -#. is module name, Ref Count is a reference counter -#. (how many modules or open descriptors use it). -#. Dependencies are the other modules it uses. -#. -#: grub-core/commands/minicmd.c:162 -msgid "Name\tRef Count\tDependencies\n" -msgstr "Tên\tSố Ref\tPhần-phụ-thuá»™c\n" - -#: grub-core/commands/minicmd.c:201 -msgid "Show this message." -msgstr "Hiển thị thông Ä‘iệp này." - -#: grub-core/commands/minicmd.c:204 -msgid "ADDR [SIZE]" -msgstr "ÄỊA_CHỈ [KÃCH_THƯỚC]" - -#: grub-core/commands/minicmd.c:204 -msgid "Show memory contents." -msgstr "Hiển thị ná»™i dung cá»§a bá»™ nhá»›." - -#: grub-core/commands/minicmd.c:207 grub-core/kern/corecmd.c:188 -#: util/grub-install.c:275 -msgid "MODULE" -msgstr "MÔ-ÄUN" - -#: grub-core/commands/minicmd.c:207 -msgid "Remove a module." -msgstr "Gỡ bá» má»™t mô-Ä‘un nào đó." - -#: grub-core/commands/minicmd.c:210 -msgid "Show loaded modules." -msgstr "Hiển thị các mô-Ä‘un đã được tải." - -#: grub-core/commands/minicmd.c:213 -msgid "Exit from GRUB." -msgstr "Thoát khá»i GRUB." - -#: grub-core/commands/mips/loongson/lsspd.c:42 -msgid "No CS5536 found" -msgstr "Không tìm thấy CS5536" - -#: grub-core/commands/mips/loongson/lsspd.c:45 -#, c-format -msgid "CS5536 at %d:%d.%d\n" -msgstr "CS5536 tại %d:%d.%d\n" - -#. TRANSLATORS: System management bus is often used to access components like -#. RAM (info only, not data) or batteries. I/O space is where in memory -#. its ports are. -#: grub-core/commands/mips/loongson/lsspd.c:55 -#, c-format -msgid "System management bus controller I/O space is at 0x%x\n" -msgstr "Bá»™ Ä‘iá»u khiển truy xuất bus hệ thống thấy cổng V/R là tại 0x%x\n" - -#. TRANSLATORS: it's shown in a report in a way -#. like number 1: ... number 2: ... -#. -#: grub-core/commands/mips/loongson/lsspd.c:66 -#, c-format -msgid "RAM slot number %d\n" -msgstr "Khe cắm RAM số %d\n" - -#: grub-core/commands/mips/loongson/lsspd.c:73 -#, c-format -msgid "Written SPD bytes: %d B.\n" -msgstr "Ghi byte SPD: %d B.\n" - -#: grub-core/commands/mips/loongson/lsspd.c:74 -#, c-format -msgid "Total flash size: %d B.\n" -msgstr "Kích thước tổng cá»™ng bá»™ nhá»› flash: %d B.\n" - -#: grub-core/commands/mips/loongson/lsspd.c:79 -msgid "Memory type: DDR2." -msgstr "Kiểu bá»™ nhá»›: DDR2." - -#: grub-core/commands/mips/loongson/lsspd.c:83 -#, c-format -msgid "Part no: %s.\n" -msgstr "Số cá»§a phần: %s.\n" - -#: grub-core/commands/mips/loongson/lsspd.c:86 -msgid "Memory type: Unknown." -msgstr "Kiểu bá»™ nhá»›: Chưa được biết." - -#: grub-core/commands/mips/loongson/lsspd.c:97 -msgid "Print Memory information." -msgstr "Hiển thị thông tin bá»™ nhá»›" - -#: grub-core/commands/nativedisk.c:118 grub-core/commands/probe.c:118 -#: grub-core/commands/probe.c:124 util/grub-probe.c:450 -#, c-format -msgid "%s does not support UUIDs" -msgstr "%s không há»— trợ UUIDs" - -#: grub-core/commands/nativedisk.c:325 -msgid "[MODULE1 MODULE2 ...]" -msgstr "[MÔ_ÄUN1 MÔ_ÄUN2 …]" - -#: grub-core/commands/nativedisk.c:326 -msgid "" -"Switch to native disk drivers. If no modules are specified default set (pata," -"ahci,usbms,ohci,uhci,ehci) is used" -msgstr "" -"Chuyển sang các ổ đĩa thật. Nếu không chỉ ra MÔ_ÄUN nào thì tập hợp mặc định " -"(pata,ahci,usbms,ohci,uhci,ehci) được dùng" - -#: grub-core/commands/parttool.c:40 -msgid "" -"Perform COMMANDS on partition.\n" -"Use `parttool PARTITION help' for the list of available commands." -msgstr "" -"Thá»±c hiện LỆNH trên phân vùng.\n" -"Chạy lệnh “parttool PHÂN_VÙNG help†để biết danh sách các lệnh sẵn có." - -#: grub-core/commands/parttool.c:123 -msgid "=VAL" -msgstr "=GIÃ_TRỊ" - -#: grub-core/commands/parttool.c:136 -#, c-format -msgid "Sorry, no parttool is available for %s\n" -msgstr "Rất tiếc, không có công cụ phân vùng sẵn có cho %s\n" - -#: grub-core/commands/parttool.c:288 grub-core/lib/arg.c:285 -#: grub-core/lib/arg.c:351 -#, c-format -msgid "unknown argument `%s'" -msgstr "không hiểu tham số “%sâ€" - -#: grub-core/commands/parttool.c:344 -msgid "PARTITION COMMANDS" -msgstr "PHÂN_VÙNG CÃC_LỆNH" - -#: grub-core/commands/password.c:85 -msgid "USER PASSWORD" -msgstr "TÀI_KHOẢN MẬT_KHẨU" - -#: grub-core/commands/password.c:86 -msgid "Set user password (plaintext). Unrecommended and insecure." -msgstr "Äặt mật khẩu ngưá»i dùng (chữ thưá»ng). KHÔNG AN TOÀN!" - -#. TRANSLATORS: it means that the string which -#. was supposed to be a password hash doesn't -#. have a correct format, not to password -#. mismatch. -#: grub-core/commands/password_pbkdf2.c:98 -#: grub-core/commands/password_pbkdf2.c:115 -#: grub-core/commands/password_pbkdf2.c:123 -#: grub-core/commands/password_pbkdf2.c:150 -#: grub-core/commands/password_pbkdf2.c:179 -msgid "invalid PBKDF2 password" -msgstr "sai mật khẩu PBKDF2" - -#: grub-core/commands/password_pbkdf2.c:202 -msgid "USER PBKDF2_PASSWORD" -msgstr "TÀI-KHOẢN MẬT-KHẨU-PBKDF2" - -#: grub-core/commands/password_pbkdf2.c:203 -msgid "Set user password (PBKDF2). " -msgstr "Äặt mật khẩu (dạng PBKDF2). " - -#: grub-core/commands/pcidump.c:39 grub-core/commands/setpci.c:69 -msgid "Select device by vendor and device IDs." -msgstr "Chá»n thiết bị theo nhà sản xuất và ID." - -#: grub-core/commands/pcidump.c:40 grub-core/commands/setpci.c:70 -msgid "[vendor]:[device]" -msgstr "[nhàsảnxuất]:[thiếtbị]" - -#: grub-core/commands/pcidump.c:41 grub-core/commands/setpci.c:71 -msgid "Select device by its position on the bus." -msgstr "Chá»n thiết bị theo vị trí trên bus." - -#: grub-core/commands/pcidump.c:42 grub-core/commands/setpci.c:72 -msgid "[bus]:[slot][.func]" -msgstr "[bus]:[slot][.func]" - -#: grub-core/commands/pcidump.c:109 grub-core/commands/pcidump.c:138 -#: grub-core/commands/setpci.c:183 grub-core/commands/setpci.c:214 -#: grub-core/fs/zfs/zfs.c:3794 grub-core/kern/emu/hostdisk.c:458 -#: grub-core/kern/emu/hostdisk.c:473 grub-core/kern/file.c:44 -#, c-format -msgid "missing `%c' symbol" -msgstr "thiếu ký hiệu “%câ€" - -#: grub-core/commands/pcidump.c:168 -msgid "[-s POSITION] [-d DEVICE]" -msgstr "[-s VỊ-TRÃ] [-d THIẾT_BỊ]" - -#: grub-core/commands/pcidump.c:169 -msgid "Show raw dump of the PCI configuration space." -msgstr "Hiển thị dữ liệu dạng thô cá»§a không gian cấu hình PCI." - -#: grub-core/commands/pgp.c:45 -msgid "Skip signature-checking of the public key file." -msgstr "Bá» qua kiểm tra chữ ký cá»§a TẬP_TIN chữ ký." - -#. TRANSLATORS: it's about GNUPG signatures. -#: grub-core/commands/pgp.c:71 grub-core/commands/pgp.c:81 -#: grub-core/commands/pgp.c:86 grub-core/commands/pgp.c:96 -#: grub-core/commands/pgp.c:103 grub-core/commands/pgp.c:107 -#: grub-core/commands/pgp.c:114 grub-core/commands/pgp.c:119 -#: grub-core/commands/pgp.c:124 grub-core/commands/pgp.c:128 -#: grub-core/commands/pgp.c:268 grub-core/commands/pgp.c:276 -#: grub-core/commands/pgp.c:281 grub-core/commands/pgp.c:289 -#: grub-core/commands/pgp.c:320 grub-core/commands/pgp.c:327 -#: grub-core/commands/pgp.c:332 grub-core/commands/pgp.c:342 -#: grub-core/commands/pgp.c:468 grub-core/commands/pgp.c:471 -#: grub-core/commands/pgp.c:474 grub-core/commands/pgp.c:477 -#: grub-core/commands/pgp.c:484 grub-core/commands/pgp.c:490 -#: grub-core/commands/pgp.c:665 -msgid "bad signature" -msgstr "chữ ký sai" - -#. TRANSLATORS: %08x is 32-bit key id. -#: grub-core/commands/pgp.c:636 grub-core/commands/pgp.c:812 -#, c-format -msgid "public key %08x not found" -msgstr "không tìm thấy khóa công %08x" - -#: grub-core/commands/pgp.c:651 grub-core/disk/diskfilter.c:772 -#: grub-core/disk/diskfilter.c:782 grub-core/fs/ntfs.c:404 -#: grub-core/fs/zfs/zfs.c:1933 grub-core/normal/menu.c:428 -#, c-format -msgid "module `%s' isn't loaded" -msgstr "MÔ_ÄUN “%sâ€chưa được tải" - -#: grub-core/commands/pgp.c:994 -msgid "[-s|--skip-sig] FILE SIGNATURE_FILE [PUBKEY_FILE]" -msgstr "[-s|--skip-sig] TẬP_TIN TẬP_TIN_Kà [KHÓA-CÔNG]" - -#: grub-core/commands/pgp.c:995 -msgid "Verify detached signature." -msgstr "Xác minh chữ ký đính kèm." - -#: grub-core/commands/pgp.c:998 -msgid "[-s|--skip-sig] PUBKEY_FILE" -msgstr "[-s|--skip-sig] TẬP_TIN_KHÓA-CÔNG" - -#: grub-core/commands/pgp.c:999 -msgid "Add PUBKEY_FILE to trusted keys." -msgstr "Thêm PUBKEY_FILE (khóa công) vào danh sách đáng tin." - -#: grub-core/commands/pgp.c:1003 -msgid "Show the list of trusted keys." -msgstr "Liệt kê các khóa đáng tin." - -#: grub-core/commands/pgp.c:1005 -msgid "PUBKEY_ID" -msgstr "ID_KHÓA_CÔNG" - -#: grub-core/commands/pgp.c:1006 -msgid "Remove PUBKEY_ID from trusted keys." -msgstr "Xóa bá» PUBKEY_ID (khóa công) từ danh sách đáng tin." - -#: grub-core/commands/probe.c:40 grub-core/commands/tr.c:32 -msgid "Set a variable to return value." -msgstr "Äặt má»™t biến để trả lại giá trị." - -#. TRANSLATORS: It's a driver that is currently in use to access -#. the diven disk. -#: grub-core/commands/probe.c:43 -msgid "Determine driver." -msgstr "Xác định trình Ä‘iá»u khiển." - -#: grub-core/commands/probe.c:44 -msgid "Determine partition map type." -msgstr "Xác định kiểu ánh xạ phân vùng." - -#: grub-core/commands/probe.c:45 -msgid "Determine filesystem type." -msgstr "Xác định kiểu hệ thống tập tin." - -#: grub-core/commands/probe.c:46 -msgid "Determine filesystem UUID." -msgstr "Xác định UUID hệ thống tập tin." - -#: grub-core/commands/probe.c:47 -msgid "Determine filesystem label." -msgstr "Xác định nhãn hệ thống tập tin." - -#: grub-core/commands/probe.c:139 grub-core/commands/probe.c:146 -#: util/grub-probe.c:462 -#, c-format -msgid "filesystem `%s' does not support labels" -msgstr "Hệ thống tập tin “%s†không há»— trợ nhãn" - -#: grub-core/commands/probe.c:165 grub-core/fs/zfs/zfsinfo.c:430 -#: grub-core/loader/i386/bsd.c:169 util/grub-setup.c:223 -msgid "DEVICE" -msgstr "THIẾT_BỊ" - -#: grub-core/commands/probe.c:166 -msgid "Retrieve device info." -msgstr "Lấy thông tin vá» thiết bị." - -#: grub-core/commands/read.c:85 -msgid "[ENVVAR]" -msgstr "[BIẾN_MÔI_TRƯỜNG]" - -#: grub-core/commands/read.c:86 -msgid "Set variable with user input." -msgstr "Äặt biến dùng đầu vào ngưá»i dùng." - -#: grub-core/commands/reboot.c:40 -msgid "Reboot the computer." -msgstr "Khởi động lại máy tính." - -#. TRANSLATORS: in regexp you can mark some -#. groups with parentheses. These groups are -#. then numbered and you can save some of -#. them in variables. In other programs -#. those components aree often referenced with -#. back slash, e.g. \1. Compare -#. sed -e 's,\([a-z][a-z]*\),lowercase=\1,g' -#. The whole matching component is saved in VARNAME, not its number. -#. -#: grub-core/commands/regexp.c:44 -msgid "Store matched component NUMBER in VARNAME." -msgstr "Lưu các thành phần so khá»›p Sá» trong TÊN_BIẾN." - -#: grub-core/commands/regexp.c:45 -msgid "[NUMBER:]VARNAME" -msgstr "[Sá»:]TÊN_BIẾN" - -#. TRANSLATORS: This are two arguments. So it's -#. two separate units to translate and pay -#. attention not to reverse them. -#: grub-core/commands/regexp.c:157 -msgid "REGEXP STRING" -msgstr "" -"BTCQ CHUá»–I\n" -"\n" -"BTCQ: Biểu thức chính quy" - -#: grub-core/commands/regexp.c:158 -msgid "Test if REGEXP matches STRING." -msgstr "Kiểm tra xem BTCQ có khá»›p vá»›i CHUá»–I." - -#: grub-core/commands/search.c:324 -msgid "NAME [VARIABLE] [HINTS]" -msgstr "TÊN [BIẾN] [HINTS]" - -#: grub-core/commands/search_file.c:4 -msgid "" -"Search devices by file. If VARIABLE is specified, the first device found is " -"set to a variable." -msgstr "" -"Tìm kiếm các thiết bị theo tập tin. Chỉ rõ BIẾN thì thiết bị được tìm thứ " -"nhất được đặt thành má»™t biến." - -#: grub-core/commands/search_label.c:4 -msgid "" -"Search devices by label. If VARIABLE is specified, the first device found is " -"set to a variable." -msgstr "" -"Tìm kiếm các thiết bị theo nhãn. Chỉ rõ BIẾN thì thiết bị được tìm thứ nhất " -"được đặt thành má»™t biến." - -#: grub-core/commands/search_uuid.c:4 -msgid "" -"Search devices by UUID. If VARIABLE is specified, the first device found is " -"set to a variable." -msgstr "" -"Tìm kiếm các thiết bị theo UUID (mã nhận diện duy nhất). Chỉ rõ BIẾN thì " -"thiết bị được tìm thứ nhất được đặt thành má»™t biến." - -#: grub-core/commands/search_wrap.c:34 -msgid "Search devices by a file." -msgstr "Tìm kiếm các thiết bị theo tập tin." - -#: grub-core/commands/search_wrap.c:35 -msgid "Search devices by a filesystem label." -msgstr "Tìm thiết bị theo nhãn hệ thống tập tin." - -#: grub-core/commands/search_wrap.c:37 -msgid "Search devices by a filesystem UUID." -msgstr "Tìm thiết bị theo UUID hệ thống tập tin." - -#: grub-core/commands/search_wrap.c:40 -msgid "Set a variable to the first device found." -msgstr "Äặt biến cho thiết bị đầu tiên tìm thấy." - -#: grub-core/commands/search_wrap.c:42 -msgid "Do not probe any floppy drive." -msgstr "Không tìm thấy bất kỳ đĩa má»m nào." - -#: grub-core/commands/search_wrap.c:44 -msgid "" -"First try the device HINT. If HINT ends in comma, also try subpartitions" -msgstr "" -"Trước tiên thá»­ thiết bị GỢI-Ã. Nếu GỢI-à kết thúc bằng dấu phẩy, cÅ©ng thá»­ cả " -"phân vùng con" - -#: grub-core/commands/search_wrap.c:45 grub-core/commands/search_wrap.c:49 -#: grub-core/commands/search_wrap.c:53 grub-core/commands/search_wrap.c:57 -#: grub-core/commands/search_wrap.c:61 grub-core/commands/search_wrap.c:65 -msgid "HINT" -msgstr "GỢI-Ã" - -#: grub-core/commands/search_wrap.c:47 -msgid "" -"First try the device HINT if currently running on IEEE1275. If HINT ends in " -"comma, also try subpartitions" -msgstr "" -"Trước tiên thá»­ thiết bị GỢI-à nếu hiện tại chạy trên IEEE1275. Nếu GỢI-à kết " -"thúc bằng dấu phẩy, cÅ©ng thá»­ cả phân vùng con" - -#: grub-core/commands/search_wrap.c:51 -msgid "" -"First try the device HINT if currently running on BIOS. If HINT ends in " -"comma, also try subpartitions" -msgstr "" -"Trước tiên thá»­ thiết bị GỢI-à nếu hiện tại chạy trên BIOS. Nếu GỢI-à kết " -"thúc bằng dấu phẩy, cÅ©ng thá»­ cả phân vùng con" - -#: grub-core/commands/search_wrap.c:55 -msgid "" -"First try the device HINT if direct hardware access is supported. If HINT " -"ends in comma, also try subpartitions" -msgstr "" -"Trước tiên thá»­ thiết bị GỢI-à nếu truy cập phần cứng trá»±c tiếp được há»— trợ. " -"Nếu GỢI-à kết thúc bằng dấu phẩy, cÅ©ng thá»­ cả phân vùng con" - -#: grub-core/commands/search_wrap.c:59 -msgid "" -"First try the device HINT if currently running on EFI. If HINT ends in " -"comma, also try subpartitions" -msgstr "" -"Trước tiên thá»­ thiết bị GỢI-à nếu hiện tại chạy trên EFI. Nếu GỢI-à kết thúc " -"bằng dấu phẩy, cÅ©ng thá»­ cả phân vùng con" - -#: grub-core/commands/search_wrap.c:63 -msgid "" -"First try the device HINT if currently running on ARC. If HINT ends in " -"comma, also try subpartitions" -msgstr "" -"Trước tiên thá»­ thiết bị GỢI-à nếu hiện tại chạy trên ARC. Nếu GỢI-à kết thúc " -"bằng dấu phẩy, cÅ©ng thá»­ cả phân vùng con" - -#: grub-core/commands/search_wrap.c:207 -msgid "[-f|-l|-u|-s|-n] [--hint HINT [--hint HINT] ...] NAME" -msgstr "[-f|-l|-u|-s|-n] [--hint HINT [--hint HINT] …] TÊN" - -#: grub-core/commands/search_wrap.c:209 -msgid "" -"Search devices by file, filesystem label or filesystem UUID. If --set is " -"specified, the first device found is set to a variable. If no variable name " -"is specified, `root' is used." -msgstr "" -"Tìm thiết bị theo tập tin, nhãn hoặc UUID cá»§a hệ thống tập tin. Nếu chỉ ra --" -"set, thì thiết bị đầu tiên tìm được sẽ đặt cho má»™t biến. Nếu không có biến " -"được chỉ ra, “root†sẽ được dùng." - -#: grub-core/commands/setpci.c:132 -#, c-format -msgid "Register %x of %x:%02x.%x is %x\n" -msgstr "Thanh ghi %x cá»§a %x:%02x.%x là %x\n" - -#: grub-core/commands/setpci.c:333 -msgid "[-s POSITION] [-d DEVICE] [-v VAR] REGISTER[=VALUE[:MASK]]" -msgstr "[-s VỊ-TRÃ] [-d THIẾT_BỊ] [-v BIẾN] THANH-GHI[=GIÃ_TRỊ[:MẶT-NẠ]]" - -#: grub-core/commands/setpci.c:335 -msgid "Manipulate PCI devices." -msgstr "Äiá»u khiển thiết bị PCI." - -#: grub-core/commands/sleep.c:32 -msgid "Verbose countdown." -msgstr "Äếm ngược vá»›i chi tiết." - -#: grub-core/commands/sleep.c:33 -msgid "Allow to interrupt with ESC." -msgstr "Cho phép ngắt bằng ESC." - -#: grub-core/commands/sleep.c:109 -msgid "NUMBER_OF_SECONDS" -msgstr "Sá»_CÃC_GIÂY" - -#: grub-core/commands/sleep.c:110 -msgid "Wait for a specified number of seconds." -msgstr "Äợi trong vòng má»™t số các giây được ghi rõ." - -#: grub-core/commands/syslinuxcfg.c:50 util/grub-syslinux2cfg.c:66 -msgid "root directory of the syslinux disk [default=/]." -msgstr "thư mục gốc cá»§a đĩa syslinux [mặc định=/]." - -#: grub-core/commands/syslinuxcfg.c:53 util/grub-syslinux2cfg.c:72 -msgid "" -"current directory of syslinux [default is parent directory of input file]." -msgstr "" -"thư mục hiện tại cá»§a syslinux [thư mục mặc định là cha cá»§a tập tin đầu vào]." - -#: grub-core/commands/syslinuxcfg.c:55 util/grub-syslinux2cfg.c:75 -msgid "assume input is an isolinux configuration file." -msgstr "coi đầu vào là má»™t tập tin cấu hình isolinux." - -#: grub-core/commands/syslinuxcfg.c:56 util/grub-syslinux2cfg.c:76 -msgid "assume input is a pxelinux configuration file." -msgstr "coi đầu vào là má»™t tập tin cấu hình pxelinux." - -#: grub-core/commands/syslinuxcfg.c:57 util/grub-syslinux2cfg.c:77 -msgid "assume input is a syslinux configuration file." -msgstr "coi đầu vào là má»™t tập tin cấu hình syslinux." - -#. TRANSLATORS: "syslinux config" means -#. "config as used by syslinux". -#: grub-core/commands/syslinuxcfg.c:189 -msgid "Execute syslinux config in same context" -msgstr "Thá»±c thi cấu hình syslinux trong cùng ngữ cảnh" - -#: grub-core/commands/syslinuxcfg.c:195 -msgid "Execute syslinux config in new context" -msgstr "Thá»±c thi cấu hình syslinux trong ngữ cảnh má»›i" - -#: grub-core/commands/syslinuxcfg.c:201 -msgid "Execute syslinux config in same context taking only menu entries" -msgstr "" -"Thá»±c thi cấu hình syslinux trong cùng ngữ cảnh chỉ lấy các mục trình đơn" - -#: grub-core/commands/syslinuxcfg.c:207 -msgid "Execute syslinux config in new context taking only menu entries" -msgstr "" -"Thá»±c thi cấu hình syslinux trong ngữ cảnh má»›i chỉ lấy các mục trình đơn" - -#: grub-core/commands/terminal.c:90 -msgid "no terminal specified" -msgstr "chưa xác định terminal" - -#: grub-core/commands/terminal.c:112 grub-core/commands/terminal.c:139 -#, c-format -msgid "terminal `%s' isn't found" -msgstr "không tìm thấy thiết bị cuối “%sâ€" - -#: grub-core/commands/terminal.c:244 -msgid "Active input terminals:" -msgstr "Thiết bị cuối đầu vào Ä‘ang kích hoạt:" - -#: grub-core/commands/terminal.c:245 -msgid "Available input terminals:" -msgstr "Thiết bị cuối đầu vào sẵn có:" - -#: grub-core/commands/terminal.c:261 -msgid "Active output terminals:" -msgstr "Thiết bị cuối đầu ra sẵn có:" - -#: grub-core/commands/terminal.c:262 -msgid "Available output terminals:" -msgstr "terminal xuất sẵn dùng:" - -#: grub-core/commands/terminal.c:271 grub-core/commands/terminal.c:276 -msgid "[--append|--remove] [TERMINAL1] [TERMINAL2] ..." -msgstr "[--append|--remove] [TERMINAL1] [TERMINAL2] …" - -#: grub-core/commands/terminal.c:273 -msgid "List or select an input terminal." -msgstr "Liệt kê hoặc chá»n má»™t terminal đầu vào." - -#: grub-core/commands/terminal.c:278 -msgid "List or select an output terminal." -msgstr "Liệt kê hoặc chá»n má»™t terminal kết xuất." - -#: grub-core/commands/test.c:444 -msgid "EXPRESSION ]" -msgstr "BIỂU_THỨC ]" - -#: grub-core/commands/test.c:444 grub-core/commands/test.c:447 -msgid "Evaluate an expression." -msgstr "Ước lượng má»™t biểu thức." - -#: grub-core/commands/test.c:447 -msgid "EXPRESSION" -msgstr "BIỂU_THỨC" - -#: grub-core/commands/testload.c:164 -msgid "Load the same file in multiple ways." -msgstr "Tải cùng má»™t tập tin theo nhiá»u cách khác nhau." - -#: grub-core/commands/testspeed.c:35 -msgid "Specify size for each read operation" -msgstr "Chỉ ra kích thước cho từ thao tác Ä‘á»c" - -#: grub-core/commands/testspeed.c:58 -msgid "invalid block size" -msgstr "kích thước khối không hợp lệ" - -#: grub-core/commands/testspeed.c:80 -#, c-format -msgid "File size: %s\n" -msgstr "Kích thước tập tin: %s\n" - -#: grub-core/commands/testspeed.c:83 -#, c-format -msgid "Elapsed time: %d.%03d s \n" -msgstr "Thá»i gian đã qua: %d.%03d giây \n" - -#: grub-core/commands/testspeed.c:92 -#, c-format -msgid "Speed: %s \n" -msgstr "Tốc độ: %s \n" - -#: grub-core/commands/testspeed.c:107 -msgid "[-s SIZE] FILENAME" -msgstr "[-s Cá» ] TÊN_TẬP_TIN" - -#: grub-core/commands/testspeed.c:108 -msgid "Test file read speed." -msgstr "Kiểm tra tốc độ Ä‘á»c tập tin." - -#: grub-core/commands/time.c:38 grub-core/script/execute.c:974 -msgid "no command is specified" -msgstr "chưa chỉ ra lệnh" - -#: grub-core/commands/time.c:50 -#, c-format -msgid "Elapsed time: %d.%03d seconds \n" -msgstr "Thá»i gian đã qua: %d.%03d giây \n" - -#: grub-core/commands/time.c:61 -msgid "COMMAND [ARGS]" -msgstr "LỆNH [CÃC_Äá»I_Sá»]" - -#: grub-core/commands/time.c:62 -msgid "Measure time used by COMMAND" -msgstr "Äo thá»i gian sá»­ dụng LỆNH" - -#: grub-core/commands/tr.c:33 -msgid "Translate to upper case." -msgstr "Chuyển sang chữ HOA." - -#: grub-core/commands/tr.c:34 -msgid "Translate to lower case." -msgstr "Chuyển sang chữ thưá»ng." - -#: grub-core/commands/tr.c:119 -msgid "[OPTIONS] [SET1] [SET2] [STRING]" -msgstr "[CÃC-TÙY_CHỌN] [SET1] [SET2] [CHUá»–I]" - -#: grub-core/commands/tr.c:120 -msgid "Translate SET1 characters to SET2 in STRING." -msgstr "Chuyển dịch TẬP_HỢP_CHá»®_CÃI_1 sang TẬP_HỢP_CHá»®_CÃI_2 trong CHUá»–I" - -#. TRANSLATORS: it's a command description. -#: grub-core/commands/true.c:50 -msgid "Do nothing, successfully." -msgstr "Không làm gì, thành công." - -#. TRANSLATORS: it's a command description. -#: grub-core/commands/true.c:54 -msgid "Do nothing, unsuccessfully." -msgstr "Không làm gì, không thành công." - -#: grub-core/commands/usbtest.c:221 -msgid "Test USB support." -msgstr "Thá»­ khả năng há»— trợ USB." - -#: grub-core/commands/verifiers.c:120 -#, c-format -msgid "verification requested but nobody cares: %s" -msgstr "" - -#: grub-core/commands/verifiers.c:140 -#, fuzzy -msgid "big file signature isn't implemented yet" -msgstr "tái định vị 0x%x vẫn chưa được thá»±c hiện" - -#: grub-core/commands/videoinfo.c:61 -msgid "Text-only " -msgstr "Chỉ-chứa-chữ " - -#. TRANSLATORS: "Direct color" is a mode when the color components -#. are written dirrectly into memory. -#: grub-core/commands/videoinfo.c:66 -#, c-format -msgid "Direct color, mask: %d/%d/%d/%d pos: %d/%d/%d/%d" -msgstr "Màu trá»±c tiếp, mặt nạ: %d/%d/%d/%d vtrí: %d/%d/%d/%d" - -#. TRANSLATORS: In "paletted color" mode you write the index of the color -#. in the palette. Synonyms include "packed pixel". -#: grub-core/commands/videoinfo.c:78 -msgid "Paletted " -msgstr "Bảng màu " - -#: grub-core/commands/videoinfo.c:80 -msgid "YUV " -msgstr "YUV " - -#. TRANSLATORS: "Planar" is the video memory where you have to write -#. in several different banks "plans" to control the different color -#. components of the same pixel. -#: grub-core/commands/videoinfo.c:85 -msgid "Planar " -msgstr "Phẳng " - -#: grub-core/commands/videoinfo.c:87 -msgid "Hercules " -msgstr "Hercules " - -#: grub-core/commands/videoinfo.c:89 -msgid "CGA " -msgstr "CGA " - -#. TRANSLATORS: Non-chain 4 is a 256-color planar -#. (unchained) video memory mode. -#: grub-core/commands/videoinfo.c:93 -msgid "Non-chain 4 " -msgstr "Chế độ video “Non-chain 4†256 màu " - -#: grub-core/commands/videoinfo.c:95 -msgid "Monochrome " -msgstr "ÄÆ¡n sắc " - -#: grub-core/commands/videoinfo.c:97 -msgid "Unknown video mode " -msgstr "Không hiểu chế độ video " - -#: grub-core/commands/videoinfo.c:111 -msgid " EDID checksum invalid" -msgstr " tổng kiểm tra EDID không hợp lệ" - -#: grub-core/commands/videoinfo.c:116 -#, c-format -msgid " EDID version: %u.%u\n" -msgstr " phiên bản EDID: %u.%u\n" - -#: grub-core/commands/videoinfo.c:120 -#, c-format -msgid " Preferred mode: %ux%u\n" -msgstr " Chế độ mong muốn: %ux%u\n" - -#: grub-core/commands/videoinfo.c:123 -msgid " No preferred mode available\n" -msgstr " Không có chế độ mong chá» sẵn dùng\n" - -#: grub-core/commands/videoinfo.c:146 grub-core/video/video.c:490 -#: grub-core/video/video.c:498 grub-core/video/video.c:509 -#: grub-core/video/video.c:520 grub-core/video/video.c:528 -#, c-format -msgid "invalid video mode specification `%s'" -msgstr "đặc tả chế độ video “%s†không hợp lệ" - -#: grub-core/commands/videoinfo.c:168 -msgid "List of supported video modes:" -msgstr "Liệt kê các chế độ video được há»— trợ:" - -#: grub-core/commands/videoinfo.c:169 -msgid "Legend: mask/position=red/green/blue/reserved" -msgstr "Lá»i ghi chú: mặt-nạ/vị-trí=red/green/blue/reserved" - -#: grub-core/commands/videoinfo.c:176 -#, c-format -msgid "Adapter `%s':\n" -msgstr "Bá»™ tiếp hợp “%sâ€:\n" - -#: grub-core/commands/videoinfo.c:180 -msgid " No info available" -msgstr " Không có thông tin sẵn dùng" - -#: grub-core/commands/videoinfo.c:198 -msgid " Failed to initialize video adapter" -msgstr " Gặp lá»—i khi khởi tạo phần Ä‘iá»u khiển video" - -#. TRANSLATORS: "x" has to be entered in, -#. like an identifier, so please don't -#. use better Unicode codepoints. -#: grub-core/commands/videoinfo.c:239 grub-core/commands/videoinfo.c:248 -msgid "[WxH[xD]]" -msgstr "[WxH[xD]]" - -#: grub-core/commands/videoinfo.c:240 grub-core/commands/videoinfo.c:249 -msgid "" -"List available video modes. If resolution is given show only modes matching " -"it." -msgstr "" -"Liệt kê các chế độ video sẵn có. Nếu độ phân giải màn hình chỉ đưa ra má»™t " -"thì dùng luôn nó." - -#. TRANSLATORS: "x" has to be entered in, -#. like an identifier, so please don't -#. use better Unicode codepoints. -#: grub-core/commands/videotest.c:225 -msgid "[WxH]" -msgstr "[WxH]" - -#. TRANSLATORS: Here, on the other hand, it's -#. nicer to use unicode cross instead of x. -#: grub-core/commands/videotest.c:228 -msgid "Test video subsystem in mode WxH." -msgstr "Thá»­ hệ thống video phụ ở chế độ WxH." - -#: grub-core/commands/videotest.c:231 -msgid "Test video subsystem." -msgstr "Thá»­ hệ thống phụ ảnh động." - -#: grub-core/commands/xen/lsxen.c:80 grub-core/commands/xen/lsxen.c:82 -msgid "[DIR]" -msgstr "[TMỤC]" - -#: grub-core/commands/xen/lsxen.c:81 grub-core/commands/xen/lsxen.c:83 -msgid "List Xen storage." -msgstr "Liệt kê đĩa kiểu Xen." - -#. TRANSLATORS: GRUBUUID stands for "filesystem -#. UUID as used in GRUB". -#: grub-core/commands/xnu_uuid.c:110 -msgid "[-l] GRUBUUID [VARNAME]" -msgstr "[-l] GRUBUUID [TÊN_BIẾN]" - -#: grub-core/commands/xnu_uuid.c:111 -msgid "" -"Transform 64-bit UUID to format suitable for XNU. If -l is given keep it " -"lowercase as done by blkid." -msgstr "" -"Chuyển dạng UUID 64-bit sang má»™t định dạng thích hợp vá»›i XNU. Nếu tùy chá»n -" -"l được đưa ra giữ nó ở chữ thưá»ng như được thá»±c hiện bởi lệnh blkid." - -#: grub-core/disk/arc/arcdisk.c:248 grub-core/disk/efi/efidisk.c:603 -#: grub-core/disk/i386/pc/biosdisk.c:498 grub-core/disk/i386/pc/biosdisk.c:543 -#: grub-core/disk/ieee1275/nand.c:198 grub-core/disk/ieee1275/obdisk.c:527 -#: grub-core/disk/ieee1275/ofdisk.c:586 -#, c-format -msgid "failure reading sector 0x%llx from `%s'" -msgstr "gặp lá»—i khi Ä‘á»c cung từ 0x%llx từ “%sâ€" - -#: grub-core/disk/arc/arcdisk.c:284 grub-core/disk/efi/efidisk.c:626 -#: grub-core/disk/i386/pc/biosdisk.c:548 grub-core/disk/ieee1275/ofdisk.c:606 -#, c-format -msgid "failure writing sector 0x%llx to `%s'" -msgstr "gặp lá»—i khi ghi cung từ 0x%llx đến “%sâ€" - -#: grub-core/disk/cryptodisk.c:40 -msgid "Mount by UUID." -msgstr "Gắn sá»­ dụng UUID." - -#. TRANSLATORS: It's still restricted to cryptodisks only. -#: grub-core/disk/cryptodisk.c:42 -msgid "Mount all." -msgstr "Gắn tất cả." - -#: grub-core/disk/cryptodisk.c:43 -msgid "Mount all volumes with `boot' flag set." -msgstr "Gắn toàn bá»™ các vùng có cỠ“boot†được đặt." - -#. TRANSLATORS: The first %s is the file being looked at, the second %s is -#. the error message. -#: grub-core/disk/cryptodisk.c:526 grub-core/kern/emu/hostdisk.c:152 -#: grub-core/kern/emu/hostdisk.c:262 grub-core/kern/emu/hostdisk.c:434 -#: grub-core/kern/emu/misc.c:168 grub-core/kern/emu/misc.c:174 -#: grub-core/kern/emu/misc.c:196 grub-core/osdep/bsd/getroot.c:92 -#: grub-core/osdep/bsd/getroot.c:168 grub-core/osdep/hurd/getroot.c:68 -#: grub-core/osdep/linux/blocklist.c:65 grub-core/osdep/linux/getroot.c:150 -#: grub-core/osdep/linux/hostdisk.c:194 grub-core/osdep/linux/hostdisk.c:421 -#: grub-core/osdep/linux/ofpath.c:417 grub-core/osdep/linux/ofpath.c:422 -#: grub-core/osdep/linux/ofpath.c:517 grub-core/osdep/linux/ofpath.c:530 -#: grub-core/osdep/sun/getroot.c:110 grub-core/osdep/windows/blocklist.c:98 -#: grub-core/tests/video_checksum.c:279 util/editenv.c:46 util/glue-efi.c:115 -#: util/glue-efi.c:120 util/glue-efi.c:130 util/grub-editenv.c:138 -#: util/grub-editenv.c:192 util/grub-file.c:83 util/grub-fstest.c:128 -#: util/grub-fstest.c:568 util/grub-install-common.c:92 -#: util/grub-install-common.c:94 util/grub-install-common.c:101 -#: util/grub-install-common.c:529 util/grub-menulst2cfg.c:53 -#: util/grub-menulst2cfg.c:68 util/grub-mkimage.c:292 util/grub-mklayout.c:504 -#: util/grub-mklayout.c:516 util/grub-mknetdir.c:133 util/grub-mknetdir.c:151 -#: util/grub-mkrescue.c:627 util/grub-mkrescue.c:631 util/grub-mkrescue.c:879 -#: util/grub-mkrescue.c:883 util/grub-mkstandalone.c:253 util/grub-mount.c:498 -#: util/grub-render-label.c:169 util/grub-script-check.c:175 -#: util/grub-syslinux2cfg.c:181 util/grub-syslinux2cfg.c:191 -#: util/grub-syslinux2cfg.c:212 util/grub-syslinux2cfg.c:228 util/misc.c:91 -#: util/render-label.c:76 util/render-label.c:163 util/render-label.c:174 -#: util/resolve.c:246 util/setup.c:783 -#, c-format -msgid "cannot open `%s': %s" -msgstr "không thể mở “%sâ€: %s" - -#: grub-core/disk/cryptodisk.c:583 grub-core/disk/cryptodisk.c:628 -#: grub-core/kern/emu/hostdisk.c:270 grub-core/kern/emu/hostfs.c:142 -#: grub-core/osdep/linux/hostdisk.c:456 util/grub-editenv.c:143 -#: util/grub-editenv.c:149 util/grub-fstest.c:320 util/misc.c:111 -#, c-format -msgid "cannot seek `%s': %s" -msgstr "không thể seek “%sâ€: %s" - -#: grub-core/disk/cryptodisk.c:1144 -msgid "SOURCE|-u UUID|-a|-b" -msgstr "NGUá»’N|-u UUID|-a|-b" - -#: grub-core/disk/cryptodisk.c:1145 -msgid "Mount a crypto device." -msgstr "Gắn thiết bị mã hóa." - -#. TRANSLATORS: This message kicks in during the detection of -#. which modules needs to be included in core image. This happens -#. in the case of degraded RAID and means that autodetection may -#. fail to include some of modules. It's an installation time -#. message, not runtime message. -#: grub-core/disk/diskfilter.c:343 grub-core/disk/diskfilter.c:376 -#, c-format -msgid "" -"Couldn't find physical volume `%s'. Some modules may be missing from core " -"image." -msgstr "" -"Không thể tìm thấy vùng vật lý “%sâ€. Má»™t số MÔ_ÄUN có lẽ đã bị thếu trong " -"ảnh lõi." - -#: grub-core/disk/diskfilter.c:480 -#, c-format -msgid "physical volume %s not found" -msgstr "không tìm thấy phân vùng vật lý %s" - -#: grub-core/disk/efi/efidisk.c:600 grub-core/disk/efi/efidisk.c:623 -#, c-format -msgid "no media in `%s'" -msgstr "không có đĩa Ä‘a phương tiện trong “%sâ€" - -#: grub-core/disk/geli.c:75 -msgid "Couldn't load sha256" -msgstr "Không thể tải sha256" - -#: grub-core/disk/geli.c:85 -msgid "Couldn't load sha512" -msgstr "Không thể tải sha512" - -#: grub-core/disk/geli.c:216 grub-core/disk/geli.c:220 -msgid "couldn't read ELI metadata" -msgstr "không thể Ä‘á»c “ELI metadata†(siêu dữ liệu)" - -#: grub-core/disk/geli.c:231 -msgid "wrong ELI magic or version" -msgstr "sai số mầu nhiệm hoặc phiên bản ELI" - -#: grub-core/disk/geli.c:435 grub-core/disk/luks.c:329 -msgid "Attempting to decrypt master key..." -msgstr "Äang thá»­ giải mã khóa chủ…" - -#: grub-core/disk/geli.c:441 grub-core/disk/luks.c:347 -#, c-format -msgid "Enter passphrase for %s%s%s (%s): " -msgstr "Gõ cụm từ mật khẩu cho %s%s%s (%s): " - -#. TRANSLATORS: It's a cryptographic key slot: one element of an array -#. where each element is either empty or holds a key. -#: grub-core/disk/geli.c:530 grub-core/disk/luks.c:451 -#, c-format -msgid "Slot %d opened\n" -msgstr "Khe %d mở\n" - -#: grub-core/disk/i386/pc/biosdisk.c:470 grub-core/disk/i386/pc/biosdisk.c:524 -#: grub-core/disk/i386/pc/biosdisk.c:534 grub-core/kern/disk_common.c:47 -#, c-format -msgid "attempt to read or write outside of disk `%s'" -msgstr "Ä‘ang thá»­ Ä‘á»c hay ghi ngoài đĩa “%sâ€" - -#: grub-core/disk/i386/pc/biosdisk.c:491 grub-core/disk/i386/pc/biosdisk.c:611 -#: grub-core/disk/scsi.c:726 -msgid "cannot write to CD-ROM" -msgstr "không thể ghi CD-ROM" - -#: grub-core/disk/i386/pc/biosdisk.c:662 -msgid "" -"Native disk drivers are in use. Refusing to use firmware disk interface." -msgstr "" -"ÄÄ©a dạng nguyên bản đã được sá»­ dụng. Từ chối sá»­ dụng giao diện đĩa firmware " -"(phần má»m nhúng)." - -#. TRANSLATORS: it's a partition for embedding, -#. not a partition embed into something. GRUB -#. install tools put core.img into a place -#. usable for bootloaders (called generically -#. "embedding zone") and this operation is -#. called "embedding". -#: grub-core/disk/ldm.c:1015 -msgid "your LDM Embedding Partition is too small; embedding won't be possible" -msgstr "phân vùng nhúng LDM quá nhá»; nhúng là Ä‘iá»u không thể" - -#. TRANSLATORS: it's a partition for embedding, -#. not a partition embed into something. -#: grub-core/disk/ldm.c:1033 -msgid "this LDM has no Embedding Partition; embedding won't be possible" -msgstr "" -"LDM này không có Embedding Partition (phân vùng nhúng; việc nhúng là không " -"thể" - -#. TRANSLATORS: The disk is simply removed from the list of available ones, -#. not wiped, avoid to scare user. -#: grub-core/disk/loopback.c:45 -msgid "Delete the specified loopback drive." -msgstr "Xóa ổ đĩa (loopback) vòng ngược đã chỉ ra." - -#: grub-core/disk/loopback.c:237 -msgid "[-d] DEVICENAME FILE." -msgstr "[-d] TÊN_THIẾT_BỊ TẬP_TIN." - -#. TRANSLATORS: The file itself is not destroyed -#. or transformed into drive. -#: grub-core/disk/loopback.c:240 -msgid "Make a virtual drive from a file." -msgstr "Tạo thiết bị ảo từ má»™t tập tin." - -#: grub-core/efiemu/i386/loadcore32.c:111 -#: grub-core/efiemu/i386/loadcore64.c:125 grub-core/kern/arm/dl.c:256 -#: grub-core/kern/arm64/dl.c:187 grub-core/kern/i386/dl.c:75 -#: grub-core/kern/ia64/dl.c:140 grub-core/kern/mips/dl.c:258 -#: grub-core/kern/powerpc/dl.c:163 grub-core/kern/riscv/dl.c:334 -#: grub-core/kern/sparc64/dl.c:180 grub-core/kern/x86_64/dl.c:110 -#: util/grub-mkimagexx.c:756 util/grub-mkimagexx.c:881 -#: util/grub-mkimagexx.c:945 util/grub-mkimagexx.c:1026 -#: util/grub-mkimagexx.c:1120 util/grub-mkimagexx.c:1222 -#: util/grub-mkimagexx.c:1413 util/grub-mkimagexx.c:1628 -#: util/grub-mkimagexx.c:1665 util/grub-mkimagexx.c:1697 -#: util/grub-mkimagexx.c:1767 util/grub-mkimagexx.c:1797 -#, c-format -msgid "relocation 0x%x is not implemented yet" -msgstr "tái định vị 0x%x vẫn chưa được thá»±c hiện" - -#: grub-core/efiemu/loadcore.c:200 grub-core/efiemu/loadcore.c:237 -#: grub-core/loader/i386/bsdXX.c:317 util/grub-mkimagexx.c:2360 -msgid "no symbol table" -msgstr "không có bảng ký hiệu" - -#: grub-core/efiemu/loadcore.c:346 grub-core/kern/dl.c:609 -#: grub-core/loader/ia64/efi/linux.c:345 grub-core/loader/mips/linux.c:248 -#: grub-core/loader/multiboot_elfxx.c:76 -#: grub-core/loader/powerpc/ieee1275/linux.c:280 -#: grub-core/loader/sparc64/ieee1275/linux.c:320 -msgid "this ELF file is not of the right type" -msgstr "tập tin ELF không phải là má»™t kiểu đúng" - -#: grub-core/efiemu/main.c:313 -msgid "Load and initialize EFI emulator." -msgstr "Tải vào khởi tạo bá»™ mô phá»ng EFI." - -#: grub-core/efiemu/main.c:317 -msgid "Finalize loading of EFI emulator." -msgstr "Hoàn thành việc tải bá»™ mô phá»ng EFI." - -#: grub-core/efiemu/main.c:320 -msgid "Unload EFI emulator." -msgstr "Bá» tải mô phá»ng EFI." - -#: grub-core/efiemu/symbols.c:92 grub-core/kern/dl.c:376 -#, c-format -msgid "symbol `%s' not found" -msgstr "không tìm thấy ký hiệu “%sâ€" - -#: grub-core/font/font_cmd.c:52 -msgid "Loaded fonts:" -msgstr "Phông chữ đã tải:" - -#: grub-core/font/font_cmd.c:74 -msgid "FILE..." -msgstr "TẬP_TIN…" - -#: grub-core/font/font_cmd.c:75 -msgid "Specify one or more font files to load." -msgstr "Chỉ định má»™t hay nhiá»u phông chữ cần tải." - -#: grub-core/font/font_cmd.c:78 -msgid "List the loaded fonts." -msgstr "Liệt kê phông chữ đã tải:" - -#: grub-core/fs/archelp.c:216 grub-core/fs/archelp.c:278 -#: grub-core/fs/btrfs.c:1815 grub-core/fs/fshelp.c:227 grub-core/fs/jfs.c:736 -#: grub-core/fs/minix.c:369 grub-core/fs/ufs.c:454 -msgid "too deep nesting of symlinks" -msgstr "liên kết má»m lồng nhau quá sâu" - -#: grub-core/fs/bfs.c:228 grub-core/fs/fshelp.c:368 grub-core/fs/minix.c:270 -#: grub-core/kern/file.c:156 -msgid "attempt to read past the end of file" -msgstr "thá»­ Ä‘á»c sau phần cuối thật cá»§a tập tin" - -#: grub-core/fs/btrfs.c:1698 grub-core/fs/btrfs.c:1957 -#: grub-core/fs/fshelp.c:189 grub-core/fs/fshelp.c:309 grub-core/fs/jfs.c:431 -#: grub-core/fs/minix.c:414 grub-core/fs/minix.c:562 -#: grub-core/fs/reiserfs.c:732 grub-core/fs/ufs.c:531 grub-core/fs/ufs.c:671 -#: grub-core/fs/zfs/zfs.c:2831 grub-core/fs/zfs/zfs.c:4247 -msgid "not a directory" -msgstr "không phải má»™t thư mục" - -#: grub-core/fs/btrfs.c:2063 grub-core/fs/fshelp.c:307 grub-core/fs/jfs.c:835 -#: grub-core/fs/zfs/zfs.c:3801 -msgid "not a regular file" -msgstr "không phải tập tin thưá»ng" - -#: grub-core/fs/btrfs.c:2157 grub-core/fs/zfs/zfs.c:4333 -#: grub-core/partmap/msdos.c:400 -msgid "your core.img is unusually large. It won't fit in the embedding area" -msgstr "Bạn có má»™t core.img quá lá»›n. Nó không vừa vá»›i vùng nhúng" - -#: grub-core/fs/fshelp.c:281 grub-core/fs/minix.c:630 grub-core/fs/ufs.c:661 -#: grub-core/fs/ufs.c:757 grub-core/kern/fs.c:168 grub-core/kern/fs.c:180 -#, c-format -msgid "invalid file name `%s'" -msgstr "tên tập tin “%s†không hợp lệ" - -#: grub-core/fs/zfs/zfs.c:453 -msgid "checksum verification failed" -msgstr "Xác minh mã tổng kiểm tra không đạt" - -#: grub-core/fs/zfs/zfs.c:1465 -msgid "couldn't find a necessary member device of multi-device filesystem" -msgstr "" -"không thể tìm thấy thiết bị số cần thiết cá»§a hệ thống tập tin Ä‘a-thiết-bị" - -#: grub-core/fs/zfs/zfscrypt.c:292 -msgid "no decryption key available" -msgstr "không có khóa giải mã sẵn dùng" - -#: grub-core/fs/zfs/zfscrypt.c:304 -msgid "MAC verification failed" -msgstr "Lá»—i thẩm tra MAC gặp lá»—i" - -#: grub-core/fs/zfs/zfscrypt.c:413 -msgid "Assume input is raw." -msgstr "Coi đầu vào dạng thô." - -#: grub-core/fs/zfs/zfscrypt.c:414 -msgid "Assume input is hex." -msgstr "Coi đầu vào dạng thập lục phân." - -#: grub-core/fs/zfs/zfscrypt.c:415 -msgid "Assume input is passphrase." -msgstr "Coi đầu vào là passpharse (mật khẩu cho tập tin)." - -#: grub-core/fs/zfs/zfscrypt.c:437 util/grub-fstest.c:553 util/grub-mount.c:483 -msgid "Enter ZFS password: " -msgstr "Nhập mật khẩu ZFS: " - -#: grub-core/fs/zfs/zfscrypt.c:476 -msgid "[-h|-p|-r] [FILE]" -msgstr "[-h|-p|-r] [TẬP_TIN]" - -#: grub-core/fs/zfs/zfscrypt.c:477 -msgid "Import ZFS wrapping key stored in FILE." -msgstr "Nhập vào khóa bao bá»c ZFS được lưu trong TẬP_TIN." - -#: grub-core/fs/zfs/zfsinfo.c:51 -msgid "Virtual device is removed" -msgstr "Thiết bị ảo đã bị gỡ bá»" - -#: grub-core/fs/zfs/zfsinfo.c:57 -msgid "Virtual device is faulted" -msgstr "Thiết bị ảo bị há»ng" - -#: grub-core/fs/zfs/zfsinfo.c:63 -msgid "Virtual device is offline" -msgstr "Thiết bị ảo đã ngoại tuyến" - -#. TRANSLATORS: degraded doesn't mean broken but that some of -#. component are missing but virtual device as whole is still usable. -#: grub-core/fs/zfs/zfsinfo.c:70 -msgid "Virtual device is degraded" -msgstr "Thiết bị ảo đã bị gỡ bá»" - -#: grub-core/fs/zfs/zfsinfo.c:73 -msgid "Virtual device is online" -msgstr "Thiết bị ảo Ä‘ang online" - -#: grub-core/fs/zfs/zfsinfo.c:89 -msgid "Incorrect virtual device: no type available" -msgstr "Thiết bị ảo không hợp lệ: kiểu không sẵn dùng" - -#. TRANSLATORS: The virtual devices form a tree (in graph-theoretical -#. sense). The nodes like mirror or raidz have children: member devices. -#. The "real" devices which actually store data are called "leafs" -#. (again borrowed from graph theory) and can be either disks -#. (or partitions) or files. -#: grub-core/fs/zfs/zfsinfo.c:105 -msgid "Leaf virtual device (file or disk)" -msgstr "Thiết bị ảo còn lại (tập tin hoặc đĩa)" - -#: grub-core/fs/zfs/zfsinfo.c:113 -msgid "Bootpath: unavailable\n" -msgstr "ÄÆ°á»ng dẫn khởi động: không sẵn sàng\n" - -#: grub-core/fs/zfs/zfsinfo.c:115 -#, c-format -msgid "Bootpath: %s\n" -msgstr "ÄÆ°á»ng dẫn khởi động: %s\n" - -#: grub-core/fs/zfs/zfsinfo.c:120 -msgid "Path: unavailable" -msgstr "ÄÆ°á»ng dẫn: không sẵn sàng" - -#: grub-core/fs/zfs/zfsinfo.c:122 -#, c-format -msgid "Path: %s\n" -msgstr "ÄÆ°á»ng dẫn: %s\n" - -#: grub-core/fs/zfs/zfsinfo.c:127 -msgid "Devid: unavailable" -msgstr "ID thiết bị: không sẵn sàng" - -#: grub-core/fs/zfs/zfsinfo.c:129 -#, c-format -msgid "Devid: %s\n" -msgstr "IDThiết bị: %s\n" - -#: grub-core/fs/zfs/zfsinfo.c:148 -msgid "This VDEV is a mirror" -msgstr "VDEV này là số nhá»" - -#: grub-core/fs/zfs/zfsinfo.c:153 -#, c-format -msgid "This VDEV is a RAIDZ%llu\n" -msgstr "VDEV này là RAIDZ%llu\n" - -#: grub-core/fs/zfs/zfsinfo.c:158 -msgid "Incorrect VDEV" -msgstr "VDEV không hợp lệ" - -#: grub-core/fs/zfs/zfsinfo.c:161 -#, c-format -msgid "VDEV with %d children\n" -msgstr "VDEV vá»›i %d con\n" - -#. TRANSLATORS: it's the element carying the number %d, not -#. total element number. And the number itself is fine, -#. only the element isn't. -#. -#: grub-core/fs/zfs/zfsinfo.c:177 -#, c-format -msgid "VDEV element number %d isn't correct\n" -msgstr "Phần tá»­ VDEV %d không đúng\n" - -#. TRANSLATORS: it's the element carying the number %d, not -#. total element number. This is used in enumeration -#. "Element number 1", "Element number 2", ... -#: grub-core/fs/zfs/zfsinfo.c:184 -#, c-format -msgid "VDEV element number %d:\n" -msgstr "thành viên VDEV số %d:\n" - -#: grub-core/fs/zfs/zfsinfo.c:193 -#, c-format -msgid "Unknown virtual device type: %s\n" -msgstr "Kiểu thiết bị ảo chưa được biết đến: %s\n" - -#. TRANSLATORS: Here we speak about ZFS pools it's semi-marketing, -#. semi-technical term by Sun/Oracle and should be translated in sync with -#. other ZFS-related software and documentation. -#: grub-core/fs/zfs/zfsinfo.c:254 -msgid "Pool state: active" -msgstr "Trạng thái kho ZFS: hoạt động" - -#: grub-core/fs/zfs/zfsinfo.c:255 -msgid "Pool state: exported" -msgstr "Trạng thái kho ZFS: đã xuất" - -#: grub-core/fs/zfs/zfsinfo.c:256 -msgid "Pool state: destroyed" -msgstr "Trạng thái kho ZFS: đã phá há»§y" - -#: grub-core/fs/zfs/zfsinfo.c:257 -msgid "Pool state: reserved for hot spare" -msgstr "Trạng thái kho ZFS: dá»± trữ để dành" - -#: grub-core/fs/zfs/zfsinfo.c:258 -msgid "Pool state: level 2 ARC device" -msgstr "Trạng thái kho ZFS: thiết bị ARC mức 2" - -#: grub-core/fs/zfs/zfsinfo.c:259 -msgid "Pool state: uninitialized" -msgstr "Trạng thái kho ZFS: chưa khởi tạo" - -#: grub-core/fs/zfs/zfsinfo.c:260 -msgid "Pool state: unavailable" -msgstr "Trạng thái kho ZFS: chưa sẵn sàng" - -#: grub-core/fs/zfs/zfsinfo.c:261 -msgid "Pool state: potentially active" -msgstr "Trạng thái kho ZFS: có khả năng kích hoạt" - -#: grub-core/fs/zfs/zfsinfo.c:306 -msgid "Pool name: unavailable" -msgstr "Tên kho ZFS: chưa sẵn sàng" - -#: grub-core/fs/zfs/zfsinfo.c:308 -#, c-format -msgid "Pool name: %s\n" -msgstr "Tên kho ZFS: %s\n" - -#: grub-core/fs/zfs/zfsinfo.c:313 -msgid "Pool GUID: unavailable" -msgstr "GUID kho ZFS: chưa sẵn sàng" - -#: grub-core/fs/zfs/zfsinfo.c:315 -#, c-format -msgid "Pool GUID: %016llx\n" -msgstr "GUID kho ZFS: %016llx\n" - -#: grub-core/fs/zfs/zfsinfo.c:320 -msgid "Unable to retrieve pool state" -msgstr "Không thể lấy trạng thái kho ZFS nhận vá»" - -#: grub-core/fs/zfs/zfsinfo.c:322 -msgid "Unrecognized pool state" -msgstr "Không thừa nhận trạng thái kho ZFS" - -#. TRANSLATORS: There are undetermined number of virtual devices -#. in a device tree, not just one. -#. -#: grub-core/fs/zfs/zfsinfo.c:332 -msgid "No virtual device tree available" -msgstr "Không có cây thiết bị ảo nào sẵn dùng" - -#: grub-core/fs/zfs/zfsinfo.c:431 -msgid "Print ZFS info about DEVICE." -msgstr "Hiển thị thông tin ZFS vá» THIẾT_BỊ." - -#: grub-core/fs/zfs/zfsinfo.c:433 -msgid "FILESYSTEM [VARIABLE]" -msgstr "HỆ-THá»NG-TẬP_TIN [BIẾN]" - -#: grub-core/fs/zfs/zfsinfo.c:434 -msgid "Print ZFS-BOOTFSOBJ or store it into VARIABLE" -msgstr "Hiển thị ZFS-BOOTFSOBJ hoặc lưu nó vào BIẾN" - -#. TRANSLATORS: at this position GRUB waits for the user to do an action -#. in remote debugger, namely to tell it to establish connection. -#: grub-core/gdb/gdb.c:48 -msgid "Now connect the remote debugger, please." -msgstr "Xin hãy kết nối đến bá»™ gỡ lá»—i từ xa." - -#. TRANSLATORS: GDB stub is a small part of -#. GDB functionality running on local host -#. which allows remote debugger to -#. connect to it. -#: grub-core/gdb/gdb.c:84 -msgid "Start GDB stub on given port" -msgstr "Khởi chạy “GDB stub†trên cổng đã cho" - -#. TRANSLATORS: this refers to triggering -#. a breakpoint so that the user will land -#. into GDB. -#: grub-core/gdb/gdb.c:89 -msgid "Break into GDB" -msgstr "Ngắt vào GDB" - -#: grub-core/gdb/gdb.c:91 -msgid "Stop GDB stub" -msgstr "Dừng “GDB stubâ€" - -#: grub-core/gettext/gettext.c:85 -msgid "premature end of file" -msgstr "gặp kết thúc tập tin quá sá»›m" - -#. TRANSLATORS: It refers to passing the string through gettext. -#. So it's "translate" in the same meaning as in what you're -#. doing now. -#. -#: grub-core/gettext/gettext.c:525 -msgid "Translates the string with the current settings." -msgstr "Dịch chuá»—i vá»›i các cài đặt hiện tại." - -#: grub-core/gfxmenu/gui_label.c:186 grub-core/normal/menu_text.c:184 -msgid "" -"Press enter to boot the selected OS, `e' to edit the commands before booting " -"or `c' for a command-line. ESC to return previous menu." -msgstr "" -"Bấm phím Enter để khởi động HÄH được chá»n, phím “e†để chỉnh sá»­a câu lệnh " -"trước khi khởi động, phím “c†để truy cập đến dòng lệnh. Phím ESC để trở vá» " -"trình đơn trước." - -#: grub-core/gfxmenu/gui_label.c:190 grub-core/normal/menu_text.c:192 -msgid "" -"Press enter to boot the selected OS, `e' to edit the commands before booting " -"or `c' for a command-line." -msgstr "" -"Bấm phím Enter để khởi động HÄH được chá»n, phím “e†để chỉnh sá»­a câu lệnh " -"trước khi khởi động, hoặc phím “c†để truy cập đến dòng lệnh." - -#: grub-core/gfxmenu/gui_label.c:194 -msgid "enter: boot, `e': options, `c': cmd-line" -msgstr "nhấn “enterâ€: khởi động, “eâ€: tùy chá»n, “câ€: vào chế độ dòng lệnh" - -#: grub-core/gfxmenu/gui_progress_bar.c:339 grub-core/normal/menu_text.c:446 -#, c-format -msgid "The highlighted entry will be executed automatically in %ds." -msgstr "Mục nhập được tô sáng sẽ được tá»± động thá»±c hiện trong %d giây." - -#. TRANSLATORS: 's' stands for seconds. -#. It's a standalone timeout notification. -#. Please use the short form in your language. -#: grub-core/gfxmenu/gui_progress_bar.c:344 -#, c-format -msgid "%ds remaining." -msgstr "còn %d giây nữa." - -#. TRANSLATORS: 's' stands for seconds. -#. It's a standalone timeout notification. -#. Please use the shortest form available in you language. -#: grub-core/gfxmenu/gui_progress_bar.c:349 grub-core/normal/menu_text.c:444 -#: grub-core/normal/menu_text.c:462 -#, c-format -msgid "%ds" -msgstr "%d giây" - -#: grub-core/gfxmenu/view.c:103 -msgid "GRUB Boot Menu" -msgstr "Trình đơn Khởi động GRUB" - -#: grub-core/hello/hello.c:36 -msgid "Hello World" -msgstr "Chào thế giá»›i!" - -#: grub-core/hello/hello.c:45 -msgid "Say `Hello World'." -msgstr "In ra “Chào thế giá»›i!â€." - -#: grub-core/io/gzio.c:409 grub-core/kern/file.c:210 -msgid "attempt to seek outside of the file" -msgstr "thá»­ di chuyển vị trí ngoài phạm vi cá»§a tập tin" - -#. TRANSLATORS: It's about given file having some strange format, not -#. complete lack of gzip support. -#: grub-core/io/gzio.c:1228 grub-core/io/gzio.c:1237 grub-core/io/gzio.c:1244 -msgid "unsupported gzip format" -msgstr "định dạng gzip không được há»— trợ" - -#: grub-core/io/lzopio.c:511 -msgid "lzop file corrupted" -msgstr "tập tin lzop bị sai há»ng" - -#: grub-core/io/xzio.c:278 -msgid "xz file corrupted or unsupported block options" -msgstr "tập tin zx sai há»ng hoặc không há»— trợ tùy chá»n khối" - -#: grub-core/kern/arm/dl.c:277 grub-core/kern/arm64/dl.c:44 -#: grub-core/kern/i386/dl.c:36 grub-core/kern/ia64/dl.c:41 -#: grub-core/kern/mips/dl.c:48 grub-core/kern/powerpc/dl.c:36 -#: grub-core/kern/riscv/dl.c:47 grub-core/kern/sparc64/dl.c:36 -#: grub-core/kern/x86_64/dl.c:36 grub-core/loader/i386/bsd.c:1445 -#: grub-core/loader/i386/bsdXX.c:49 grub-core/loader/ia64/efi/linux.c:341 -#: grub-core/loader/mips/linux.c:298 grub-core/loader/multiboot.c:232 -#: grub-core/loader/multiboot_elfxx.c:73 -#: grub-core/loader/powerpc/ieee1275/linux.c:294 -#: grub-core/loader/sparc64/ieee1275/linux.c:331 -msgid "invalid arch-dependent ELF magic" -msgstr "sai số màu nhiệm ELF phụ-thuá»™c-kiến-trúc" - -#: grub-core/kern/corecmd.c:178 -msgid "[ENVVAR=VALUE]" -msgstr "[BIẾN_MÔI_TRƯỜNG=GIÃ_TRỊ]" - -#: grub-core/kern/corecmd.c:179 -msgid "Set an environment variable." -msgstr "Äặt biến môi trưá»ng." - -#: grub-core/kern/corecmd.c:183 -msgid "ENVVAR" -msgstr "BIẾN_MÔI_TRƯỜNG" - -#: grub-core/kern/corecmd.c:184 -msgid "Remove an environment variable." -msgstr "Gỡ bá» má»™t biến môi trưá»ng." - -#: grub-core/kern/corecmd.c:186 -msgid "[ARG]" -msgstr "[Äá»I_Sá»]" - -#: grub-core/kern/corecmd.c:186 -msgid "List devices or files." -msgstr "Liệt kê các thiết bị hoặc tập tin." - -#: grub-core/kern/corecmd.c:188 -msgid "Insert a module." -msgstr "Chèn MÔ_ÄUN." - -#: grub-core/kern/disk.c:236 grub-core/net/net.c:1390 -#, c-format -msgid "disk `%s' not found" -msgstr "không tìm thấy đĩa “%sâ€" - -#: grub-core/kern/disk_common.c:27 -msgid "attempt to read or write outside of partition" -msgstr "thá»­ Ä‘á»c hay ghi ngoài phân vùng" - -#: grub-core/kern/dl.c:212 grub-core/kern/elf.c:61 grub-core/kern/elf.c:79 -#: grub-core/loader/i386/bsdXX.c:46 grub-core/loader/ia64/efi/linux.c:335 -#: grub-core/loader/multiboot_elfxx.c:69 -msgid "invalid arch-independent ELF magic" -msgstr "số màu nhiệm ELF độc-lập-kiến-trúc không hợp lệ" - -#. TRANSLATORS: it refers to the lack of free slots. -#: grub-core/kern/emu/hostdisk.c:208 grub-core/kern/emu/hostdisk.c:466 -msgid "device count exceeds limit" -msgstr "số lượng thiết bị đã đạt đến giá»›i hạn" - -#: grub-core/kern/emu/hostdisk.c:342 util/editenv.c:54 util/grub-editenv.c:197 -#: util/grub-fstest.c:191 util/grub-mkfont.c:796 util/misc.c:114 -#: util/misc.c:129 util/setup.c:788 -#, c-format -msgid "cannot write to `%s': %s" -msgstr "không thể ghi vào “%sâ€: %s" - -#. TRANSLATORS: Only one entry is ignored. However the suggestion -#. is to correct/delete the whole file. -#. device.map is a file indicating which -#. devices are available at boot time. Fedora populated it with -#. entries like (hd0,1) /dev/sda1 which would mean that every -#. partition is a separate disk for BIOS. Such entries were -#. inactive in GRUB due to its bug which is now gone. Without -#. this additional check these entries would be harmful now. -#. -#: grub-core/kern/emu/hostdisk.c:503 -#, c-format -msgid "" -"the device.map entry `%s' is invalid. Ignoring it. Please correct or delete " -"your device.map" -msgstr "" -"mục device.map “%s†không hợp lệ. Lá» nó Ä‘i. Xin hãy sá»­a lại hoặc xóa device." -"map cá»§a bạn" - -#. TRANSLATORS: device.map is a filename. Not to be translated. -#. device.map specifies disk correspondance overrides. Previously -#. one could create any kind of device name with this. Due to -#. some problems we decided to limit it to just a handful -#. possibilities. -#: grub-core/kern/emu/hostdisk.c:555 -#, c-format -msgid "" -"the drive name `%s' in device.map is incorrect. Using %s instead. Please use " -"the form [hfc]d[0-9]* (E.g. `hd0' or `cd')" -msgstr "" -"ổ đĩa có tên “%s†trong ánh xạ thiết bị không chính xách. Sá»­ dụng %s để thay " -"thế. Xin hãy sá»­ dụng dạng thức [hfc]d[0-9]* (vdụ “hd0†hoặc “cdâ€)" - -#: grub-core/kern/emu/hostfs.c:76 grub-core/kern/emu/hostfs.c:109 -#, c-format -msgid "can't open `%s': %s" -msgstr "không thể mở “%sâ€: %s" - -#: grub-core/kern/emu/main.c:99 util/grub-fstest.c:516 util/grub-mount.c:452 -msgid "DEVICE_NAME" -msgstr "TÊN_THIẾT_BỊ" - -#: grub-core/kern/emu/main.c:99 grub-core/loader/i386/bsd.c:136 -#: grub-core/loader/i386/bsd.c:169 util/grub-fstest.c:516 util/grub-mount.c:452 -msgid "Set root device." -msgstr "Äặt thiết bị gốc." - -#. TRANSLATORS: There are many devices in device map. -#: grub-core/kern/emu/main.c:102 util/grub-probe.c:733 util/grub-setup.c:85 -#, c-format -msgid "use FILE as the device map [default=%s]" -msgstr "dùng TẬP_TIN làm ánh xạ thiết bị [mặc định=%s]" - -#. TRANSLATORS: There are many devices in device map. -#: grub-core/kern/emu/main.c:105 -msgid "use FILE as memdisk" -msgstr "dùng TẬP_TIN như là ảnh đĩa nhá»›" - -#: grub-core/kern/emu/main.c:107 util/grub-setup.c:83 -#, c-format -msgid "use GRUB files in the directory DIR [default=%s]" -msgstr "dùng các tập tin GRUB trong thư mục TMỤC [mặc định=%s]" - -#: grub-core/kern/emu/main.c:108 include/grub/util/install.h:67 -#: util/grub-editenv.c:58 util/grub-fstest.c:525 util/grub-glue-efi.c:58 -#: util/grub-macbless.c:104 util/grub-mkfont.c:962 util/grub-mkimage.c:84 -#: util/grub-mklayout.c:56 util/grub-mount.c:458 util/grub-probe.c:735 -#: util/grub-render-label.c:74 util/grub-script-check.c:52 util/grub-setup.c:90 -#: util/grub-syslinux2cfg.c:78 -msgid "print verbose messages." -msgstr "hiển thị thông tin chi tiết." - -#: grub-core/kern/emu/main.c:109 grub-core/lib/gnulib/argp-parse.c:85 -msgid "SECS" -msgstr "GIÂY" - -#: grub-core/kern/emu/main.c:109 -msgid "wait until a debugger will attach" -msgstr "chá» cho đến ghi bá»™ gỡ lá»—i được tiếp hợp vào" - -#: grub-core/kern/emu/main.c:171 util/grub-macbless.c:143 -#: util/grub-mkrelpath.c:61 util/grub-probe.c:874 util/grub-script-check.c:75 -#: util/grub-setup.c:203 -#, c-format -msgid "Unknown extra argument `%s'." -msgstr "Không hiểu tham số mở rá»™ng “%sâ€." - -#: grub-core/kern/emu/main.c:185 -msgid "GRUB emulator." -msgstr "Bá»™ mô phá»ng GRUB." - -#: grub-core/kern/emu/main.c:213 util/grub-editenv.c:262 -#: util/grub-glue-efi.c:110 util/grub-macbless.c:173 util/grub-mkfont.c:1177 -#: util/grub-mkimage.c:266 util/grub-mklayout.c:494 -#: util/grub-mkpasswd-pbkdf2.c:132 util/grub-mkrelpath.c:96 -#: util/grub-probe.c:863 util/grub-render-label.c:152 -#: util/grub-script-check.c:160 util/grub-setup.c:262 -#: util/grub-syslinux2cfg.c:163 -msgid "Error in parsing command line arguments\n" -msgstr "Gặp lá»—i khi phân tích cú pháp cá»§a tùy chá»n dòng lệnh.\n" - -#. TRANSLATORS: In this case GRUB tells user what he has to do. -#: grub-core/kern/emu/main.c:248 -#, c-format -msgid "Run `gdb %s %d', and set ARGS.HOLD to zero.\n" -msgstr "Chạy “gdb %s %dâ€, và đặt ARGS.HOLD thành số không.\n" - -#: grub-core/kern/emu/misc.c:48 -#, c-format -msgid "%s: warning:" -msgstr "%s: cảnh báo:" - -#: grub-core/kern/emu/misc.c:64 -#, c-format -msgid "%s: info:" -msgstr "%s: ttin:" - -#: grub-core/kern/emu/misc.c:79 util/grub-fstest.c:567 util/grub-fstest.c:576 -#: util/grub-mount.c:497 util/grub-mount.c:505 -#, c-format -msgid "%s: error:" -msgstr "%s: lá»—i:" - -#: grub-core/kern/emu/misc.c:176 -#, c-format -msgid "file `%s' is too big" -msgstr "tập tin “%s†quá lá»›n" - -#: grub-core/kern/fs.c:120 -msgid "unknown filesystem" -msgstr "không hiểu hệ thống tập tin" - -#: grub-core/kern/mips/arc/init.c:273 grub-core/kern/mips/loongson/init.c:301 -msgid "Shutdown failed" -msgstr "Tắt máy gặp lá»—i" - -#: grub-core/kern/mips/arc/init.c:285 -msgid "Exit failed" -msgstr "Thoát ra gặp lá»—i" - -#: grub-core/kern/misc.c:351 grub-core/kern/misc.c:408 include/grub/misc.h:269 -#: include/grub/misc.h:278 -msgid "overflow is detected" -msgstr "bị tràn" - -#: grub-core/kern/partition.c:51 grub-core/partmap/bsdlabel.c:108 -#, c-format -msgid "Discarding improperly nested partition (%s,%s,%s%d)" -msgstr "Äang bá» qua phân vùng lồng nhau má»™t cách không thích hợp (%s,%s,%s%d)" - -#: grub-core/kern/rescue_parser.c:73 util/grub-editenv.c:292 -#, c-format -msgid "Unknown command `%s'.\n" -msgstr "Không hiểu lệnh “%sâ€.\n" - -#: grub-core/lib/arg.c:31 -msgid "Display this help and exit." -msgstr "Hiển thị trợ giúp này, sau đó thoát." - -#: grub-core/lib/arg.c:33 -msgid "Display the usage of this command and exit." -msgstr "Hiển thị cách sá»­ dụng lệnh này, rồi thoát." - -#: grub-core/lib/arg.c:362 -#, c-format -msgid "missing mandatory option for `%s'" -msgstr "thiếu giá trị cho tùy chá»n “%sâ€" - -#: grub-core/lib/arg.c:384 -#, c-format -msgid "the argument `%s' requires an integer" -msgstr "tham số “%s†yêu cầu má»™t số nguyên" - -#: grub-core/lib/arg.c:407 -#, c-format -msgid "" -"a value was assigned to the argument `%s' while it doesn't require an " -"argument" -msgstr "" -"má»™t giá trị đã được gán cho tham số “%s†trong khi nó lại không yêu cầu đối " -"số" - -#: grub-core/lib/backtrace.c:64 -msgid "Print backtrace." -msgstr "Hiển thị backtrace." - -#: grub-core/lib/gnulib/argp-help.c:149 -#, c-format -msgid "ARGP_HELP_FMT: %s value is less than or equal to %s" -msgstr "ARGP_HELP_FMT: giá trị %s nhá» hÆ¡n hay bằng %s" - -#: grub-core/lib/gnulib/argp-help.c:225 -#, c-format -msgid "%.*s: ARGP_HELP_FMT parameter requires a value" -msgstr "%.*s: tham số “ARGP_HELP_FMT†yêu cầu má»™t giá trị" - -#: grub-core/lib/gnulib/argp-help.c:235 -#, c-format -msgid "%.*s: Unknown ARGP_HELP_FMT parameter" -msgstr "%.*s: Không hiểu tham số “ARGP_HELP_FMTâ€" - -#: grub-core/lib/gnulib/argp-help.c:248 -#, c-format -msgid "Garbage in ARGP_HELP_FMT: %s" -msgstr "Gặp rác trong “ARGP_HELP_FMTâ€: %s" - -#: grub-core/lib/gnulib/argp-help.c:1229 -msgid "" -"Mandatory or optional arguments to long options are also mandatory or " -"optional for any corresponding short options." -msgstr "" -"Tham số là bắt buá»™c hay tham số chỉ là tùy chá»n cho các tùy chá»n dài cÅ©ng " -"đồng thá»i là bắt buá»™c hay không bắt buá»™c cho các tùy chá»n ngắn tương ứng vá»›i " -"nó." - -#: grub-core/lib/gnulib/argp-help.c:1620 -msgid " or: " -msgstr " hoặc: " - -#: grub-core/lib/gnulib/argp-help.c:1632 -msgid " [OPTION...]" -msgstr " [TÙY_CHỌN…]" - -#: grub-core/lib/gnulib/argp-help.c:1659 -#, c-format -msgid "Try '%s --help' or '%s --usage' for more information.\n" -msgstr "" -"Hãy chạy lệnh “%s --help†(trợ giúp) hoặc “%s --usage†(cách dùng) để biết " -"thêm thông tin.\n" - -#: grub-core/lib/gnulib/argp-help.c:1687 -#, c-format -msgid "Report bugs to %s.\n" -msgstr "" -"Hãy thông báo lá»—i cho %s.\n" -"Thông báo lá»—i dịch cho: .\n" - -#: grub-core/lib/gnulib/argp-help.c:1888 grub-core/lib/gnulib/error.c:195 -msgid "Unknown system error" -msgstr "Không biết lá»—i hệ thống" - -#: grub-core/lib/gnulib/argp-parse.c:81 -msgid "give this help list" -msgstr "hiển thị trợ giúp này" - -#: grub-core/lib/gnulib/argp-parse.c:82 -msgid "give a short usage message" -msgstr "hiển thị cách sá»­ dụng dạng ngắn gá»n" - -#: grub-core/lib/gnulib/argp-parse.c:83 util/grub-mkfont.c:946 -msgid "NAME" -msgstr "TÊN" - -#: grub-core/lib/gnulib/argp-parse.c:84 -msgid "set the program name" -msgstr "đặt tên chương trình" - -#: grub-core/lib/gnulib/argp-parse.c:86 -msgid "hang for SECS seconds (default 3600)" -msgstr "treo trong vòng GIÂY giây (mặc định là 3600)" - -#: grub-core/lib/gnulib/argp-parse.c:143 -msgid "print program version" -msgstr "in ra phiên bản chương trình" - -#: grub-core/lib/gnulib/argp-parse.c:160 -msgid "(PROGRAM ERROR) No version known!?" -msgstr "(Lá»–I CHƯƠNG TRÃŒNH) Không có phiên bản nào được biết!?" - -#: grub-core/lib/gnulib/argp-parse.c:613 -#, c-format -msgid "%s: Too many arguments\n" -msgstr "%s: Quá nhiá»u đối số\n" - -#: grub-core/lib/gnulib/argp-parse.c:759 -msgid "(PROGRAM ERROR) Option should have been recognized!?" -msgstr "(Lá»–I CHƯƠNG TRÃŒNH) Tùy chá»n vẫn chưa được thừa nhận!?" - -#: grub-core/lib/gnulib/getopt.c:278 -#, fuzzy, c-format -msgid "%s: option '%s%s' is ambiguous\n" -msgstr "%s: tùy chá»n “-W %s†chưa rõ ràng\n" - -#: grub-core/lib/gnulib/getopt.c:284 -#, fuzzy, c-format -msgid "%s: option '%s%s' is ambiguous; possibilities:" -msgstr "%s: tùy chá»n “%s†chưa rõ ràng; khả năng là:" - -#: grub-core/lib/gnulib/getopt.c:319 -#, fuzzy, c-format -msgid "%s: unrecognized option '%s%s'\n" -msgstr "%s: không nhận ra tùy chá»n “%c%sâ€\n" - -#: grub-core/lib/gnulib/getopt.c:345 -#, fuzzy, c-format -msgid "%s: option '%s%s' doesn't allow an argument\n" -msgstr "%s: tùy chá»n “%c%s†không cho phép đối số\n" - -#: grub-core/lib/gnulib/getopt.c:360 -#, fuzzy, c-format -msgid "%s: option '%s%s' requires an argument\n" -msgstr "%s: tùy chá»n “--%s†yêu cầu má»™t đối số\n" - -#: grub-core/lib/gnulib/getopt.c:621 -#, c-format -msgid "%s: invalid option -- '%c'\n" -msgstr "%s: tùy chá»n không hợp lệ -- %c\n" - -#: grub-core/lib/gnulib/getopt.c:636 grub-core/lib/gnulib/getopt.c:682 -#, c-format -msgid "%s: option requires an argument -- '%c'\n" -msgstr "%s: tùy chá»n yêu cầu má»™t đối số -- %c\n" - -#: grub-core/lib/gnulib/openat-die.c:38 -#, fuzzy, c-format -msgid "unable to record current working directory" -msgstr "không thể phục hồi thư mục nguyên gốc" - -#: grub-core/lib/gnulib/openat-die.c:57 -#, c-format -msgid "failed to return to initial working directory" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:135 grub-core/osdep/aros/hostdisk.c:523 -msgid "Success" -msgstr "Thành công" - -#: grub-core/lib/gnulib/regcomp.c:138 -msgid "No match" -msgstr "Không khá»›p" - -#: grub-core/lib/gnulib/regcomp.c:141 -msgid "Invalid regular expression" -msgstr "Biểu thức chính quy không hợp lệ" - -#: grub-core/lib/gnulib/regcomp.c:144 -msgid "Invalid collation character" -msgstr "Ký tá»± đối chiếu không hợp lệ" - -#: grub-core/lib/gnulib/regcomp.c:147 -msgid "Invalid character class name" -msgstr "Sai tên lá»›p ký tá»±" - -#: grub-core/lib/gnulib/regcomp.c:150 -msgid "Trailing backslash" -msgstr "Có dấu chéo ngược theo sau" - -#: grub-core/lib/gnulib/regcomp.c:153 -msgid "Invalid back reference" -msgstr "Sai tham chiếu ngược" - -#: grub-core/lib/gnulib/regcomp.c:156 -#, fuzzy -msgid "Unmatched [, [^, [:, [., or [=" -msgstr "Chưa khá»›p cặp “[†hoặc “[^â€" - -#: grub-core/lib/gnulib/regcomp.c:159 -msgid "Unmatched ( or \\(" -msgstr "Chưa khá»›p cặp “(†hoặc “\\(â€" - -#: grub-core/lib/gnulib/regcomp.c:162 -msgid "Unmatched \\{" -msgstr "Chưa khá»›p cặp “\\{â€" - -#: grub-core/lib/gnulib/regcomp.c:165 -msgid "Invalid content of \\{\\}" -msgstr "Ná»™i dung cá»§a “\\{\\}†không hợp lệ" - -#: grub-core/lib/gnulib/regcomp.c:168 -msgid "Invalid range end" -msgstr "Sai kết thúc phạm vi" - -#: grub-core/lib/gnulib/regcomp.c:171 -msgid "Memory exhausted" -msgstr "Hết bá»™ nhá»›" - -#: grub-core/lib/gnulib/regcomp.c:174 -msgid "Invalid preceding regular expression" -msgstr "Sai biểu thức chính quy Ä‘i trước" - -#: grub-core/lib/gnulib/regcomp.c:177 -msgid "Premature end of regular expression" -msgstr "Kết thúc sá»›m biểu thức chính quy" - -#: grub-core/lib/gnulib/regcomp.c:180 -msgid "Regular expression too big" -msgstr "Biểu thức chính quy quá lá»›n" - -#: grub-core/lib/gnulib/regcomp.c:183 -msgid "Unmatched ) or \\)" -msgstr "Có ký tá»± “)†hoặc “\\)†lẻ đôi" - -#: grub-core/lib/gnulib/regcomp.c:531 -msgid "unknown regexp error" -msgstr "lá»—i biểu thức chính quy chưa biết" - -#: grub-core/lib/gnulib/regcomp.c:676 -msgid "No previous regular expression" -msgstr "Không có biểu thức chính quy trước đây" - -#: grub-core/lib/i386/halt.c:77 -msgid "GRUB doesn't know how to halt this machine yet!" -msgstr "GRUB chưa hiểu làm cách nào để tắt máy này!" - -#: grub-core/lib/legacy_parse.c:75 -msgid "Default server is ${net_default_server}" -msgstr "Máy chá»§ mặc định là ${net_default_server}" - -#: grub-core/lib/legacy_parse.c:844 grub-core/video/colors.c:296 -#: grub-core/video/colors.c:305 grub-core/video/colors.c:311 -#: grub-core/video/colors.c:327 util/render-label.c:84 util/render-label.c:98 -#, c-format -msgid "invalid color specification `%s'" -msgstr "sai đặc tả màu sắc “%sâ€" - -#: grub-core/lib/mips/arc/reboot.c:32 grub-core/lib/mips/loongson/reboot.c:61 -msgid "Reboot failed" -msgstr "Khởi động lại gặp lá»—i" - -#: grub-core/lib/random.c:113 -msgid "[LENGTH]" -msgstr "[ÄỘ_DÀI]" - -#: grub-core/lib/random.c:114 -msgid "Hexdump random data." -msgstr "Dữ liệu ngẫu nhiên đổ hex" - -#: grub-core/loader/arm/linux.c:242 -msgid "device tree must be supplied (see `devicetree' command)" -msgstr "cây thiết bị phải được cung cấp (xem lệnh “devicetreeâ€)" - -#: grub-core/loader/arm/linux.c:334 -msgid "invalid zImage" -msgstr "zImage (ảnh nén) không hợp lệ" - -#: grub-core/loader/arm/linux.c:450 grub-core/loader/efi/fdt.c:144 -msgid "invalid device tree" -msgstr "cây thiết bị không hợp lệ" - -#: grub-core/loader/arm/linux.c:493 grub-core/loader/arm64/linux.c:383 -#: grub-core/loader/i386/linux.c:1125 grub-core/loader/i386/pc/linux.c:479 -#: grub-core/loader/i386/xen.c:962 grub-core/loader/i386/xen.c:964 -#: grub-core/loader/ia64/efi/linux.c:591 grub-core/loader/mips/linux.c:501 -#: grub-core/loader/powerpc/ieee1275/linux.c:383 -#: grub-core/loader/riscv/linux.c:50 -#: grub-core/loader/sparc64/ieee1275/linux.c:511 -msgid "Load Linux." -msgstr "Tải Linux." - -#: grub-core/loader/arm/linux.c:495 grub-core/loader/arm64/linux.c:385 -#: grub-core/loader/i386/linux.c:1127 grub-core/loader/i386/pc/linux.c:482 -#: grub-core/loader/i386/xen.c:966 grub-core/loader/ia64/efi/linux.c:594 -#: grub-core/loader/mips/linux.c:503 -#: grub-core/loader/powerpc/ieee1275/linux.c:385 -#: grub-core/loader/riscv/linux.c:52 -#: grub-core/loader/sparc64/ieee1275/linux.c:513 -msgid "Load initrd." -msgstr "Tải initrd." - -#. TRANSLATORS: DTB stands for device tree blob. -#: grub-core/loader/arm/linux.c:498 grub-core/loader/efi/fdt.c:169 -msgid "Load DTB file." -msgstr "Tải tập tin DTB." - -#: grub-core/loader/arm64/linux.c:59 -msgid "" -"plain image kernel not supported - rebuild with CONFIG_(U)EFI_STUB enabled" -msgstr "" -"hạt nhân ảnh thưá»ng không được há»— trợ - hãy dịch lại vá»›i tùy chá»n bật " -"CONFIG_(U)EFI_STUB." - -#: grub-core/loader/arm64/xen_boot.c:156 -msgid "failed to get FDT" -msgstr "gặp lá»—i khi lấy FDT" - -#: grub-core/loader/arm64/xen_boot.c:418 -msgid "you need to load the Xen Hypervisor first" -msgstr "bạn cần phải tải Xen Hypervisor trước đã" - -#: grub-core/loader/arm64/xen_boot.c:516 -msgid "Load a xen hypervisor." -msgstr "Tải má»™t bá»™ ảo hóa Xen." - -#: grub-core/loader/arm64/xen_boot.c:519 -msgid "Load a xen module." -msgstr "Tải mô-Ä‘un xen." - -#: grub-core/loader/efi/appleloader.c:231 -msgid "[OPTS]" -msgstr "[C_T_CHỌN]" - -#. TRANSLATORS: This command is used on EFI to -#. switch to BIOS mode and boot the OS requiring -#. BIOS. -#: grub-core/loader/efi/appleloader.c:235 -msgid "Boot BIOS-based system." -msgstr "Khởi động hệ thống ở chế độ BIOS cÆ¡ bản." - -#: grub-core/loader/efi/chainloader.c:421 -#: grub-core/loader/i386/pc/chainloader.c:303 -msgid "Load another boot loader." -msgstr "Tải má»™t bá»™ tải khởi động khác." - -#: grub-core/loader/i386/bsd.c:103 -msgid "Display output on all consoles." -msgstr "Hiển thị kết xuất trên tất cả các bàn giao tiếp." - -#: grub-core/loader/i386/bsd.c:104 grub-core/loader/i386/bsd.c:138 -#: grub-core/loader/i386/bsd.c:171 -msgid "Use serial console." -msgstr "Dùng bàn giao tiếp kiểu nối tiếp." - -#: grub-core/loader/i386/bsd.c:105 grub-core/loader/i386/bsd.c:131 -#: grub-core/loader/i386/bsd.c:159 -msgid "Ask for file name to reboot from." -msgstr "Yêu cầu tên tập tin từ đó cần khởi động lại." - -#: grub-core/loader/i386/bsd.c:106 -msgid "Use CD-ROM as root." -msgstr "Dùng CD-ROM làm gốc." - -#: grub-core/loader/i386/bsd.c:107 -msgid "Invoke user configuration routing." -msgstr "Gá»i chức năng định tuyến tùy theo cấu hình ngưá»i dùng." - -#: grub-core/loader/i386/bsd.c:108 grub-core/loader/i386/bsd.c:135 -#: grub-core/loader/i386/bsd.c:162 -msgid "Enter in KDB on boot." -msgstr "Vào KDB khi khởi động." - -#: grub-core/loader/i386/bsd.c:109 -msgid "Use GDB remote debugger instead of DDB." -msgstr "Dùng bá»™ gỡ lá»—i GDB từ xa thay cho DDB." - -#: grub-core/loader/i386/bsd.c:110 -msgid "Disable all boot output." -msgstr "Tắt tất cả các kết xuất khởi động." - -#: grub-core/loader/i386/bsd.c:112 -msgid "Wait for keypress after every line of output." -msgstr "Äợi cú bấm phím sau khi kết xuất má»—i dòng." - -#: grub-core/loader/i386/bsd.c:114 -msgid "Use compiled-in root device." -msgstr "Dùng thiết bị gốc dá»±ng sẵn (compiled-in root)." - -#: grub-core/loader/i386/bsd.c:115 grub-core/loader/i386/bsd.c:134 -#: grub-core/loader/i386/bsd.c:165 -msgid "Boot into single mode." -msgstr "Khởi động vào chế độ ngưá»i dùng đơn." - -#: grub-core/loader/i386/bsd.c:116 grub-core/loader/i386/bsd.c:166 -msgid "Boot with verbose messages." -msgstr "Khởi động vá»›i thông Ä‘iệp chi tiết." - -#: grub-core/loader/i386/bsd.c:132 grub-core/loader/i386/bsd.c:160 -msgid "Don't reboot, just halt." -msgstr "Äừng khởi động lại, chỉ tạm dừng lại." - -#: grub-core/loader/i386/bsd.c:133 grub-core/loader/i386/bsd.c:161 -msgid "Change configured devices." -msgstr "Thay đổi các thiết bị được cấu hình." - -#. TRANSLATORS: "com" is static and not to be translated. It refers to -#. serial ports e.g. com1. -#. -#: grub-core/loader/i386/bsd.c:142 -msgid "comUNIT[,SPEED]" -msgstr "comÄÆ N_VỊ][,Tá»C_ÄỘ]" - -#: grub-core/loader/i386/bsd.c:157 -msgid "Disable SMP." -msgstr "Tắt SMP." - -#: grub-core/loader/i386/bsd.c:158 -msgid "Disable ACPI." -msgstr "Tắt ACPI." - -#: grub-core/loader/i386/bsd.c:164 -msgid "Don't display boot diagnostic messages." -msgstr "Äừng hiển thị các thông Ä‘iệp chẩn Ä‘oán khởi động." - -#: grub-core/loader/i386/bsd.c:167 -msgid "Boot with debug messages." -msgstr "Khởi động vá»›i thông Ä‘iệp gỡ lá»—i." - -#: grub-core/loader/i386/bsd.c:168 -msgid "Suppress normal output (warnings remain)." -msgstr "Loại bá» kết xuất thông thưá»ng (để lại các thông tin cảnh báo)." - -#. TRANSLATORS: "com" is static and not to be translated. It refers to -#. serial ports e.g. com1. -#. -#: grub-core/loader/i386/bsd.c:175 -msgid "[ADDR|comUNIT][,SPEED]" -msgstr "[ÄCHỈ|ÄÆ N_VỊcom][,Tá»C_ÄỘ]" - -#: grub-core/loader/i386/bsd.c:489 grub-core/loader/i386/bsd.c:555 -msgid "name" -msgstr "tên" - -#: grub-core/loader/i386/bsd.c:489 grub-core/loader/i386/bsd.c:555 -msgid "type" -msgstr "kiểu" - -#: grub-core/loader/i386/bsd.c:489 grub-core/loader/i386/bsd.c:555 -msgid "addr" -msgstr "địachỉ" - -#: grub-core/loader/i386/bsd.c:490 grub-core/loader/i386/bsd.c:556 -msgid "size" -msgstr "kích-thước" - -#: grub-core/loader/i386/bsd.c:1147 grub-core/loader/i386/linux.c:466 -#: grub-core/loader/i386/xnu.c:1030 -msgid "Booting in blind mode" -msgstr "Khởi động trong chế độ khuyết tật" - -#: grub-core/loader/i386/bsd.c:2137 -msgid "Load kernel of FreeBSD." -msgstr "Tải hạt nhân cá»§a FreeBSD." - -#: grub-core/loader/i386/bsd.c:2140 -msgid "Load kernel of OpenBSD." -msgstr "Tải hạt nhân cá»§a OpenBSD." - -#: grub-core/loader/i386/bsd.c:2143 -msgid "Load kernel of NetBSD." -msgstr "Tải hạt nhân cá»§a NetBSD." - -#: grub-core/loader/i386/bsd.c:2147 -msgid "Load FreeBSD env." -msgstr "Tải env (môi trưá»ng?) FreeBSD." - -#: grub-core/loader/i386/bsd.c:2150 -msgid "Load FreeBSD kernel module." -msgstr "Tải mô-Ä‘un hạt nhân FreeBSD." - -#: grub-core/loader/i386/bsd.c:2153 -msgid "Load NetBSD kernel module." -msgstr "Tải mô-Ä‘un hạt nhân FreeBSD." - -#: grub-core/loader/i386/bsd.c:2156 -msgid "Load NetBSD kernel module (ELF)." -msgstr "Tải mô-Ä‘un hạt nhân FreeBSD (ELF)." - -#: grub-core/loader/i386/bsd.c:2159 -msgid "Load FreeBSD kernel module (ELF)." -msgstr "Tải mô-Ä‘un hạt nhân FreeBSD (ELF)." - -#. TRANSLATORS: ramdisk isn't identifier, -#. it can be translated. -#: grub-core/loader/i386/bsd.c:2165 -msgid "Load kOpenBSD ramdisk." -msgstr "Tải đĩa RAM kOpenBSD." - -#. TRANSLATORS: "payload" is a term used -#. by coreboot and must be translated in -#. sync with coreboot. If unsure, -#. let it untranslated. -#: grub-core/loader/i386/coreboot/chainloader.c:510 -msgid "Load another coreboot payload" -msgstr "Tải má»™t vùng tải lõi-khởi-động (coreboot payload) khác." - -#: grub-core/loader/i386/linux.c:876 -msgid "Legacy `ask' parameter no longer supported." -msgstr "Tham số cÅ© “ask†hiện tại không còn được há»— trợ." - -#: grub-core/loader/i386/linux.c:892 grub-core/loader/i386/linux.c:902 -#: grub-core/loader/i386/linux.c:932 -#, c-format -msgid "%s is deprecated. Use set gfxpayload=%s before linux command instead.\n" -msgstr "" -"%s đã lá»—i thá»i. Sá»­ dụng set gfxpayload=%s trước lệnh linux để thay thế.\n" - -#. TRANSLATORS: "x" has to be entered in, like an identifier, -#. so please don't use better Unicode codepoints. -#: grub-core/loader/i386/linux.c:915 -#, c-format -msgid "" -"%s is deprecated. VGA mode %d isn't recognized. Use set " -"gfxpayload=WIDTHxHEIGHT[xDEPTH] before linux command instead.\n" -msgstr "" -"không tán thành sá»­ dụng %s. Chế độ VGA %d không được chấp nhận. Sá»­ dụng đặt " -"gfxpayload=RỘNGxCAO[xSÂU] trước câu lệnh linux để thay thế.\n" - -#: grub-core/loader/i386/pc/chainloader.c:302 -msgid "[--force|--bpb] FILE" -msgstr "[--force|--bpb] TẬP_TIN" - -#: grub-core/loader/i386/pc/freedos.c:148 util/setup.c:293 -#, c-format -msgid "the size of `%s' is too large" -msgstr "“%s†có kích cỡ quá lá»›n" - -#: grub-core/loader/i386/pc/freedos.c:183 -msgid "Load FreeDOS kernel.sys." -msgstr "Tải FreeDOS kernel.sys." - -#: grub-core/loader/i386/pc/ntldr.c:155 -msgid "Load NTLDR or BootMGR." -msgstr "Tải NTLDR hoặc BootMGR." - -#. TRANSLATORS: it's about guessing which GRUB disk -#. is which Plan9 disk. If your language has no -#. word "mapping" you can use another word which -#. means that the GRUBDEVICE and PLAN9DEVICE are -#. actually the same device, just named differently -#. in OS and GRUB. -#: grub-core/loader/i386/pc/plan9.c:59 -msgid "Override guessed mapping of Plan9 devices." -msgstr "Ghi đè ánh xạ gợi ý cá»§a thiết bị Plan9." - -#: grub-core/loader/i386/pc/plan9.c:60 -msgid "GRUBDEVICE=PLAN9DEVICE" -msgstr "GRUBDEVICE=PLAN9DEVICE" - -#: grub-core/loader/i386/pc/plan9.c:599 -msgid "KERNEL ARGS" -msgstr "KERNEL C_T_CHỌN" - -#: grub-core/loader/i386/pc/plan9.c:599 -msgid "Load Plan9 kernel." -msgstr "Tải hạt nhân Plan9." - -#: grub-core/loader/i386/pc/pxechainloader.c:161 -msgid "Load a PXE image." -msgstr "Tải ảnh PXE." - -#: grub-core/loader/i386/pc/truecrypt.c:226 -msgid "Load Truecrypt ISO." -msgstr "Tải ảnh “Truecrypt ISOâ€." - -#: grub-core/loader/i386/xen.c:781 grub-core/loader/i386/xen.c:865 -msgid "initrd already loaded" -msgstr "initrd (đĩa ram khởi tạo) đã được tải rồi" - -#: grub-core/loader/i386/xen.c:968 -msgid "Load module." -msgstr "Tải mô-Ä‘un." - -#: grub-core/loader/i386/xnu.c:1003 -msgid "Press any key to launch xnu" -msgstr "Hãy nhấn phím bất kỳ để khởi động xnu" - -#. TRANSLATORS: `device-properties' -#. is a variable name, -#. not a program. -#: grub-core/loader/i386/xnu.c:1159 -msgid "Load `device-properties' dump." -msgstr "Tải “device-properties†dump." - -#: grub-core/loader/ia64/efi/linux.c:124 -msgid "Could not locate FPSWA driver" -msgstr "Không thể cấp phát Ä‘iểu khiển (driver) FPSWA" - -#: grub-core/loader/ia64/efi/linux.c:132 -msgid "FPSWA protocol wasn't able to find the interface" -msgstr "Giao thức FPSWA không thể tìm thấy giao diện" - -#: grub-core/loader/ia64/efi/linux.c:580 -msgid "No FPSWA found" -msgstr "Không tìm FPSWA nào" - -#: grub-core/loader/ia64/efi/linux.c:582 -#, c-format -msgid "FPSWA revision: %x\n" -msgstr "Phiên bản FPSWA: %x\n" - -#: grub-core/loader/ia64/efi/linux.c:591 -msgid "FILE [ARGS...]" -msgstr "TẬP_TIN [THAM-Sá»â€¦]" - -#: grub-core/loader/ia64/efi/linux.c:597 -msgid "Display FPSWA version." -msgstr "Hiển thị số thứ tá»± phiên bản FPSWA" - -#: grub-core/loader/multiboot.c:248 -msgid "WARNING: no console will be available to OS" -msgstr "" -"CẢNH BÃO: không có thiết bị console (bàn Ä‘iá»u khiển) nào sẵn sàng cho OS" - -#: grub-core/loader/multiboot.c:450 -msgid "Load a multiboot 2 kernel." -msgstr "Tải má»™t hạt nhân Ä‘a khởi động (multiboot) 2." - -#: grub-core/loader/multiboot.c:453 -msgid "Load a multiboot 2 module." -msgstr "Tải má»™t mô-Ä‘un Ä‘a khởi động 2 (multiboot 2)." - -#: grub-core/loader/multiboot.c:456 -msgid "Load a multiboot kernel." -msgstr "Tải má»™t hạt nhân Ä‘a khởi động (multiboot)." - -#: grub-core/loader/multiboot.c:459 -msgid "Load a multiboot module." -msgstr "Tải má»™t mô-Ä‘un Ä‘a khởi động (multiboot)." - -#: grub-core/loader/riscv/linux.c:30 grub-core/loader/riscv/linux.c:40 -#, fuzzy -msgid "Linux not supported yet" -msgstr "biên dịch không được há»— trợ" - -#: grub-core/loader/xnu.c:1416 grub-core/term/gfxterm_background.c:45 -msgid "Background image mode." -msgstr "Chế độ ảnh ná»n." - -#. TRANSLATORS: This refers to background image mode (stretched or -#. in left-top corner). Note that GRUB will accept only original -#. keywords stretch and normal, not the translated ones. -#. So please put both in translation -#. e.g. stretch(=%STRETCH%)|normal(=%NORMAL%). -#. The percents mark the translated version. Since many people -#. may not know the word stretch or normal I recommend -#. putting the translation either here or in "Background image mode." -#. string. -#: grub-core/loader/xnu.c:1416 grub-core/term/gfxterm_background.c:55 -msgid "stretch|normal" -msgstr "dãn|thưá»ng" - -#: grub-core/loader/xnu.c:1482 -msgid "Load XNU image." -msgstr "Tải ảnh XNU." - -#: grub-core/loader/xnu.c:1484 -msgid "Load 64-bit XNU image." -msgstr "Tải ảnh XNU 64-bit." - -#: grub-core/loader/xnu.c:1486 -msgid "Load XNU extension package." -msgstr "Tải gói mở rá»™ng XNU." - -#: grub-core/loader/xnu.c:1488 -msgid "Load XNU extension." -msgstr "Tải phần mở rá»™ng XNU." - -#. TRANSLATORS: OSBundleRequired is a -#. variable name in xnu extensions -#. manifests. It behaves mostly like -#. GNU/Linux runlevels. -#. -#: grub-core/loader/xnu.c:1495 -msgid "DIRECTORY [OSBundleRequired]" -msgstr "THƯ_MỤC [bó_HÄH_yêu_cầu]" - -#. TRANSLATORS: There are many extensions -#. in extension directory. -#: grub-core/loader/xnu.c:1498 -msgid "Load XNU extension directory." -msgstr "Tải thư mục phần mở rá»™ng XNU." - -#. TRANSLATORS: ramdisk here isn't identifier. It can be translated. -#: grub-core/loader/xnu.c:1501 -msgid "Load XNU ramdisk. It will be available in OS as md0." -msgstr "Tải đĩa RAM XNU. Hệ Ä‘iá»u hành (OS) sẽ là “md0â€." - -#: grub-core/loader/xnu.c:1505 -msgid "Load a splash image for XNU." -msgstr "Tải má»™t ảnh splash cho XNU." - -#: grub-core/loader/xnu.c:1510 -msgid "Load an image of hibernated XNU." -msgstr "Tải ảnh ngá»§-đông XNU." - -#: grub-core/mmap/mmap.c:538 -msgid "ADDR1,MASK1[,ADDR2,MASK2[,...]]" -msgstr "ÄCHỈ1, MẶT-NẠ1[,ÄCHỈ2, MẶT-NẠ2[,…]]" - -#: grub-core/mmap/mmap.c:539 -msgid "Declare memory regions as faulty (badram)." -msgstr "Khai báo vùng bá»™ nhá»› bị há»ng (há»ng ram)." - -#: grub-core/mmap/mmap.c:541 -msgid "FROM[K|M|G] TO[K|M|G]" -msgstr "TỪ[K|M|G] ÄẾN[K|M|G]" - -#: grub-core/mmap/mmap.c:542 -msgid "Remove any memory regions in specified range." -msgstr "Gỡ bá» má»i vùng nhá»› trong vùng chỉ định." - -#: grub-core/net/bootp.c:653 -msgid "four arguments expected" -msgstr "cần bốn đối số" - -#: grub-core/net/bootp.c:661 grub-core/net/net.c:1155 -#, c-format -msgid "unrecognised network interface `%s'" -msgstr "không nhận ra giao diện mạng“%sâ€" - -#: grub-core/net/bootp.c:664 -msgid "no DHCP info found" -msgstr "Không tìm thấy thông tin DHCP" - -#: grub-core/net/bootp.c:674 -msgid "no DHCP options found" -msgstr "Không tìm thấy tùy chá»n DHCP" - -#: grub-core/net/bootp.c:682 -#, fuzzy -msgid "invalid DHCP option code" -msgstr "Không tìm thấy tùy chá»n DHCP" - -#: grub-core/net/bootp.c:686 -#, fuzzy, c-format -msgid "no DHCP option %u found" -msgstr "Không tìm thấy tùy chá»n %d DHCP" - -#: grub-core/net/bootp.c:743 -#, c-format -msgid "unrecognised DHCP option format specification `%s'" -msgstr "không chấp nhận đặc tả định dạng tùy chá»n DHCP “%sâ€" - -#: grub-core/net/bootp.c:767 -msgid "no network card found" -msgstr "không tìm thấy card mạng nào" - -#: grub-core/net/bootp.c:859 grub-core/net/net.c:389 -#, c-format -msgid "couldn't autoconfigure %s" -msgstr "không thể tá»± cấu hình %s" - -#: grub-core/net/bootp.c:873 grub-core/net/bootp.c:876 -msgid "[CARD]" -msgstr "[CARD]" - -#: grub-core/net/bootp.c:874 -msgid "perform a bootp autoconfiguration" -msgstr "thi hành tá»± động cấu hình bootp" - -#: grub-core/net/bootp.c:877 -#, fuzzy -msgid "perform a DHCP autoconfiguration" -msgstr "thi hành tá»± động cấu hình bootp" - -#: grub-core/net/bootp.c:879 -msgid "VAR INTERFACE NUMBER DESCRIPTION" -msgstr "BIẾN GAIO-DIỆN Sá» MÔ-TẢ" - -#: grub-core/net/bootp.c:880 -msgid "" -"retrieve DHCP option and save it into VAR. If VAR is - then print the value." -msgstr "" -"phục hồi tùy chá»n DHCP và ghi nó vào BIẾN. Nếu BIẾN là - thì sẽ hiển thị giá " -"trị." - -#: grub-core/net/dns.c:459 -msgid "no DNS servers configured" -msgstr "chưa cấu hình máy phục vụ DNS" - -#: grub-core/net/dns.c:522 -msgid "domain name component is too long" -msgstr "thành phần tên miá»n quá dài" - -#: grub-core/net/dns.c:618 grub-core/net/dns.c:666 -msgid "no DNS record found" -msgstr "không tìm thấy bản ghi DNS" - -#: grub-core/net/dns.c:626 -msgid "no DNS reply received" -msgstr "không nhận được trả lá»i từ DNS" - -#: grub-core/net/dns.c:682 -msgid "only ipv4" -msgstr "chỉ ipv4" - -#: grub-core/net/dns.c:686 -msgid "only ipv6" -msgstr "chỉ ipv6" - -#: grub-core/net/dns.c:690 -msgid "prefer ipv4" -msgstr "ưu tiên ipv4" - -#: grub-core/net/dns.c:694 -msgid "prefer ipv6" -msgstr "ưu tiên ipv6" - -#: grub-core/net/dns.c:759 -msgid "ADDRESS DNSSERVER" -msgstr "ÄỊA_CHỈ MÃY-CHỦ-DNS" - -#: grub-core/net/dns.c:760 -msgid "Perform a DNS lookup" -msgstr "Tra tìm DNS" - -#: grub-core/net/dns.c:762 grub-core/net/dns.c:765 -msgid "DNSSERVER" -msgstr "MÃY-CHỦ-DNS" - -#: grub-core/net/dns.c:763 -msgid "Add a DNS server" -msgstr "Thêm máy chá»§ DNS" - -#: grub-core/net/dns.c:766 -msgid "Remove a DNS server" -msgstr "Gỡ bá» máy chá»§ DNS" - -#: grub-core/net/dns.c:768 -msgid "List DNS servers" -msgstr "Liệt kê máy chá»§ DNS" - -#: grub-core/net/drivers/efi/efinet.c:49 grub-core/net/drivers/efi/efinet.c:65 -#: grub-core/net/drivers/efi/efinet.c:77 grub-core/net/drivers/emu/emunet.c:62 -#: grub-core/net/drivers/i386/pc/pxe.c:273 -#: grub-core/net/drivers/ieee1275/ofnet.c:75 -#: grub-core/net/drivers/uboot/ubootnet.c:62 -msgid "couldn't send network packet" -msgstr "không thể gá»­i gói mạng" - -#: grub-core/net/drivers/ieee1275/ofnet.c:326 -#: grub-core/net/drivers/ieee1275/ofnet.c:359 -msgid "interpret is not supported" -msgstr "biên dịch không được há»— trợ" - -#: grub-core/net/drivers/ieee1275/ofnet.c:336 -msgid "alloc-mem failed" -msgstr "alloc-mem gặp lá»—i" - -#: grub-core/net/drivers/ieee1275/ofnet.c:370 -msgid "free-mem failed" -msgstr "free-mem gặp lá»—i" - -#: grub-core/net/http.c:105 -msgid "unsupported HTTP response" -msgstr "đáp ứng trả lá»i HTTP không được há»— trợ" - -#. TRANSLATORS: GRUB HTTP code is pretty young. So even perfectly -#. valid answers like 403 will trigger this very generic message. -#: grub-core/net/http.c:126 -#, c-format -msgid "unsupported HTTP error %d: %s" -msgstr "đáp ứng trả lá»i lá»—i HTTP không được há»— trợ %d: %s" - -#: grub-core/net/http.c:429 grub-core/net/tftp.c:420 -#, c-format -msgid "time out opening `%s'" -msgstr "gặp lá»—i quá giá» khi mở “%sâ€" - -#: grub-core/net/net.c:179 -msgid "timeout: could not resolve hardware address" -msgstr "quá lâu: không thể phân giải địa chỉ phần cứng" - -#: grub-core/net/net.c:548 -#, c-format -msgid "unresolvable address %s" -msgstr "không thể phân giải địa chỉ %s" - -#: grub-core/net/net.c:594 -#, c-format -msgid "unrecognised network address `%s'" -msgstr "không thừa nhận địa chỉ mạng “%sâ€" - -#: grub-core/net/net.c:661 -msgid "destination unreachable" -msgstr "không kết nối được đến đích" - -#. TRANSLATORS: route loop is a condition when e.g. -#. to contact server A you need to go through B -#. and to contact B you need to go through A. -#: grub-core/net/net.c:684 -msgid "route loop detected" -msgstr "tìm thấy Ä‘iá»u kiện tìm đưá»ng (route loop)" - -#: grub-core/net/net.c:700 -msgid "address not found" -msgstr "không tìm thấy địa chỉ" - -#: grub-core/net/net.c:704 -msgid "you can't delete this address" -msgstr "bạn không thể xóa địa chỉ này" - -#: grub-core/net/net.c:776 grub-core/net/net.c:792 -#, c-format -msgid "Unsupported hw address type %d\n" -msgstr "Không há»— trợ kiểu địa chỉ phần cứng %d\n" - -#: grub-core/net/net.c:813 -#, c-format -msgid "Unsupported address type %d\n" -msgstr "Không há»— trợ kiểu địa chỉ %d\n" - -#: grub-core/net/net.c:1017 grub-core/net/net.c:1131 -msgid "three arguments expected" -msgstr "cần ba đối số" - -#: grub-core/net/net.c:1023 -msgid "card not found" -msgstr "không tìm thấy card" - -#. TRANSLATORS: it refers to the network address. -#: grub-core/net/net.c:1167 -msgid "temporary" -msgstr "tạm" - -#: grub-core/net/net.c:1190 -#, c-format -msgid "Unknown address type %d\n" -msgstr "Không hiểu kiểu địa chỉ %d\n" - -#: grub-core/net/net.c:1298 -msgid "no server is specified" -msgstr "chưa chỉ ra máy chá»§" - -#: grub-core/net/net.c:1637 -#, c-format -msgid "timeout reading `%s'" -msgstr "lá»—i quá giá» khi Ä‘á»c “%sâ€" - -#. TRANSLATORS: HWADDRESS stands for -#. "hardware address". -#: grub-core/net/net.c:1762 -msgid "SHORTNAME CARD ADDRESS [HWADDRESS]" -msgstr "TÊN_NGẮN THẺ ÄỊA_CHỈ [ÄỊA_CHỈ_PHẦN_CỨNG]" - -#: grub-core/net/net.c:1763 -msgid "Add a network address." -msgstr "Thêm má»™t địa chỉ mạng." - -#: grub-core/net/net.c:1766 -msgid "[CARD [HWADDRESS]]" -msgstr "[CARD [ÄỊA_CHỈ_PHẦN_CỨNG]]" - -#: grub-core/net/net.c:1767 -msgid "Perform an IPV6 autoconfiguration" -msgstr "Thá»±c hiện tá»± động cấu hình IPV6" - -#: grub-core/net/net.c:1770 grub-core/net/net.c:1777 -msgid "SHORTNAME" -msgstr "TÊN_NGẮN" - -#: grub-core/net/net.c:1771 -msgid "Delete a network address." -msgstr "Xóa má»™t địa chỉ mạng." - -#. TRANSLATORS: "gw" is a keyword. -#: grub-core/net/net.c:1774 -msgid "SHORTNAME NET [INTERFACE| gw GATEWAY]" -msgstr "TÊN_NGẮN MẠNG [GIAO-DIỆN| gw GATEWAY]" - -#: grub-core/net/net.c:1775 -msgid "Add a network route." -msgstr "Thêm má»™t định tuyến mạng." - -#: grub-core/net/net.c:1778 -msgid "Delete a network route." -msgstr "Xóa má»™t định tuyến mạng." - -#: grub-core/net/net.c:1780 -msgid "list network routes" -msgstr "Liệt kê các định tuyến mạng" - -#: grub-core/net/net.c:1782 -msgid "list network cards" -msgstr "liệt kê các card mạng" - -#: grub-core/net/net.c:1784 -msgid "list network addresses" -msgstr "liệt kê địa chỉ mạng" - -#: grub-core/net/tcp.c:681 -msgid "connection refused" -msgstr "Kết nối đã bị từ chối" - -#: grub-core/net/tcp.c:684 -msgid "connection timeout" -msgstr "quá lâu không trả lá»i" - -#: grub-core/normal/auth.c:220 -msgid "Enter username: " -msgstr "Gõ tên tài khoản: " - -#: grub-core/normal/auth.c:269 -msgid "[USERLIST]" -msgstr "[DANH-SÃCH-NGƯỜI-DÙNG]" - -#: grub-core/normal/auth.c:270 -msgid "Check whether user is in USERLIST." -msgstr "Kiểm tra xem tài khoản có ở trong DANH-SÃCH-NGƯỜI-DÙNG hay không." - -#: grub-core/normal/cmdline.c:174 grub-core/normal/menu_entry.c:1068 -msgid "Possible commands are:" -msgstr "Các câu lệnh có thể chạy:" - -#: grub-core/normal/cmdline.c:177 grub-core/normal/menu_entry.c:1072 -msgid "Possible devices are:" -msgstr "Các thiết bị có thể dùng:" - -#: grub-core/normal/cmdline.c:180 grub-core/normal/menu_entry.c:1076 -msgid "Possible files are:" -msgstr "Các tập tin có thể dùng:" - -#: grub-core/normal/cmdline.c:183 grub-core/normal/menu_entry.c:1080 -msgid "Possible partitions are:" -msgstr "Các phân vùng có thể dùng:" - -#: grub-core/normal/cmdline.c:186 grub-core/normal/menu_entry.c:1084 -msgid "Possible arguments are:" -msgstr "Các đối số có thể dùng:" - -#. TRANSLATORS: this message is used if none of above matches. -#. This shouldn't happen but please use the general term for -#. "thing" or "object". -#: grub-core/normal/cmdline.c:192 grub-core/normal/menu_entry.c:1088 -msgid "Possible things are:" -msgstr "Các thứ có thể dùng:" - -#: grub-core/normal/color.c:81 -#, c-format -msgid "Warning: syntax error (missing slash) in `%s'\n" -msgstr "Cảnh báo: gặp lá»—i cú pháp (dấu xuyệc còn thiếu) trong “%sâ€\n" - -#: grub-core/normal/color.c:90 -#, c-format -msgid "Warning: invalid foreground color `%s'\n" -msgstr "Cảnh báo: màu tiá»n cảnh không đúng “%sâ€\n" - -#: grub-core/normal/color.c:96 -#, c-format -msgid "Warning: invalid background color `%s'\n" -msgstr "Cảnh báo: gặp màu ná»n không đúng “%sâ€\n" - -#: grub-core/normal/context.c:206 -msgid "ENVVAR [ENVVAR] ..." -msgstr "BIẾN_MÔI_TRƯỜNG [BIẾN_MÔI_TRƯỜNG]…" - -#: grub-core/normal/context.c:207 -msgid "Export variables." -msgstr "Xuất các biến." - -#: grub-core/normal/datetime.c:25 -msgid "Sunday" -msgstr "Chá»§ nhật" - -#: grub-core/normal/datetime.c:26 -msgid "Monday" -msgstr "Thứ hai" - -#: grub-core/normal/datetime.c:27 -msgid "Tuesday" -msgstr "Thứ ba" - -#: grub-core/normal/datetime.c:28 -msgid "Wednesday" -msgstr "Thứ tư" - -#: grub-core/normal/datetime.c:29 -msgid "Thursday" -msgstr "Thứ năm" - -#: grub-core/normal/datetime.c:30 -msgid "Friday" -msgstr "Thứ sáu" - -#: grub-core/normal/datetime.c:31 -msgid "Saturday" -msgstr "Thứ bảy" - -#: grub-core/normal/dyncmd.c:187 -msgid "module isn't loaded" -msgstr "mô-Ä‘un chưa được tải" - -#: grub-core/normal/main.c:211 -#, c-format -msgid "GNU GRUB version %s" -msgstr "GNU GRUB phiên bản %s" - -#: grub-core/normal/main.c:360 -msgid "ESC at any time exits." -msgstr "Phím ESC lúc nào cÅ©ng thoát." - -#: grub-core/normal/main.c:363 -#, c-format -msgid "" -"Minimal BASH-like line editing is supported. For the first word, TAB lists " -"possible command completions. Anywhere else TAB lists possible device or " -"file completions. %s" -msgstr "" -"Há»— trợ chức năng chỉnh sá»­a dòng kiểu-BASH dạng tối giản. Äối vá»›i từ đầu tiên " -"thì phím TAB liệt kê các từ gợi ý là tên các lệnh có thể Ä‘iá»n vào. Ở thá»i " -"Ä‘iểm khác, phím TAB liệt kê các từ liên quan đến tên thiết bị hay tập tin có " -"thể Ä‘iá»n vào. %s" - -#. TRANSLATORS: it's command line prompt. -#: grub-core/normal/main.c:395 -msgid ">" -msgstr ">" - -#. TRANSLATORS: it's command line prompt. -#: grub-core/normal/main.c:398 -msgid "grub>" -msgstr "grub>" - -#: grub-core/normal/main.c:518 -msgid "Clear the screen." -msgstr "Xóa màn hình." - -#: grub-core/normal/main.c:527 -msgid "Enter normal mode." -msgstr "Vào chế độ thông thưá»ng." - -#: grub-core/normal/main.c:529 -msgid "Exit from normal mode." -msgstr "Thoát từ chế độ thông thưá»ng." - -#: grub-core/normal/menu.c:66 grub-core/normal/menu_entry.c:1449 -msgid "Press any key to continue..." -msgstr "Bấm bất cứ phím nào để tiếp tục…" - -#: grub-core/normal/menu.c:815 -#, c-format -msgid "Booting `%s'" -msgstr "Äang khởi động “%sâ€" - -#: grub-core/normal/menu.c:827 -#, c-format -msgid "Falling back to `%s'" -msgstr "Quay trở lại “%sâ€" - -#: grub-core/normal/menu.c:843 -msgid "Failed to boot both default and fallback entries.\n" -msgstr "Gặp lá»—i khi khởi động cả hai mục mặc định và “fallbackâ€.\n" - -#: grub-core/normal/menu_entry.c:1171 -msgid "Booting a command list" -msgstr "Äang khởi động má»™t danh sách câu lệnh" - -#: grub-core/normal/menu_text.c:160 -msgid "" -"Minimum Emacs-like screen editing is supported. TAB lists completions. Press " -"Ctrl-x or F10 to boot, Ctrl-c or F2 for a command-line or ESC to discard " -"edits and return to the GRUB menu." -msgstr "" -"CÅ©ng há»— trợ chức năng chỉnh sá»­a màn hình kiểu Emacs ở mức tối thiểu. Phím " -"TAB liệt kê các từ gợi ý có thể Ä‘iá»n vào. Bấm tổ hợp phím Ctrl-x hoặc F10 để " -"khởi động lại, Ctrl-c hoặc F2 để vào chế độ dòng lệnh hoặc ESC để há»§y các " -"sá»­a đổi và trở vá» trình đơn GRUB." - -#: grub-core/normal/menu_text.c:170 -#, c-format -msgid "Use the %C and %C keys to select which entry is highlighted." -msgstr "Dùng phím %C và %C để chá»n mục được tô sáng." - -#. TRANSLATORS: that's the list of binary unit prefixes. -#: grub-core/normal/misc.c:38 -msgid "B" -msgstr "B" - -#: grub-core/normal/misc.c:38 -msgid "KiB" -msgstr "KiB" - -#: grub-core/normal/misc.c:38 -msgid "MiB" -msgstr "MiB" - -#: grub-core/normal/misc.c:38 -msgid "GiB" -msgstr "GiB" - -#: grub-core/normal/misc.c:38 -msgid "TiB" -msgstr "TiB" - -#: grub-core/normal/misc.c:38 -msgid "PiB" -msgstr "PiB" - -#. TRANSLATORS: that's the list of binary unit prefixes. -#: grub-core/normal/misc.c:40 -msgid "K" -msgstr "K" - -#: grub-core/normal/misc.c:40 -msgid "M" -msgstr "M" - -#: grub-core/normal/misc.c:40 -msgid "G" -msgstr "G" - -#: grub-core/normal/misc.c:40 -msgid "T" -msgstr "T" - -#: grub-core/normal/misc.c:40 -msgid "P" -msgstr "P" - -#. TRANSLATORS: that's the list of binary unit prefixes. -#: grub-core/normal/misc.c:42 -msgid "B/s" -msgstr "B/s" - -#: grub-core/normal/misc.c:42 -msgid "KiB/s" -msgstr "KiB/s" - -#: grub-core/normal/misc.c:42 -msgid "MiB/s" -msgstr "MiB/s" - -#: grub-core/normal/misc.c:42 -msgid "GiB/s" -msgstr "GiB/s" - -#: grub-core/normal/misc.c:42 -msgid "TiB/s" -msgstr "TiB/s" - -#: grub-core/normal/misc.c:42 -msgid "PiB/s" -msgstr "PiB/s" - -#: grub-core/normal/misc.c:96 -#, c-format -msgid "Partition %s:" -msgstr "Phân vùng %s:" - -#: grub-core/normal/misc.c:101 -#, c-format -msgid "Device %s:" -msgstr "Thiết bị %s:" - -#: grub-core/normal/misc.c:107 -msgid "Filesystem cannot be accessed" -msgstr "Không thể truy cập được đến hệ thống tập tin" - -#: grub-core/normal/misc.c:121 -#, c-format -msgid "Filesystem type %s" -msgstr "Hệ thống tập tin kiểu %s" - -#: grub-core/normal/misc.c:131 -#, c-format -msgid "- Label `%s'" -msgstr "- Nhãn “%sâ€" - -#. TRANSLATORS: Arguments are year, month, day, hour, minute, -#. second, day of the week (translated). -#: grub-core/normal/misc.c:148 -#, c-format -msgid "- Last modification time %d-%02d-%02d %02d:%02d:%02d %s" -msgstr "- Sá»­a đổi cuối cùng %d-%02d-%02d %02d:%02d:%02d %s" - -#: grub-core/normal/misc.c:171 -msgid "No known filesystem detected" -msgstr "Không hiểu hệ thống tập tin đã tìm thấy" - -#: grub-core/normal/misc.c:174 -#, c-format -msgid " - Partition start at %llu%sKiB" -msgstr " - Phân vùng bắt đầu tại %llu%sKiB" - -#: grub-core/normal/misc.c:178 -#, c-format -msgid " - Sector size %uB" -msgstr " - Kích thước cung từ %uB" - -#: grub-core/normal/misc.c:180 -msgid " - Total size unknown" -msgstr " - Không hiểu tổng kích thước" - -#: grub-core/normal/misc.c:182 -#, c-format -msgid " - Total size %llu%sKiB" -msgstr " - Tổng kích thước %llu%sKiB" - -#. TRANSLATORS: Replace dot with appropriate decimal separator for -#. your language. -#: grub-core/normal/misc.c:186 -msgid ".5" -msgstr ".5" - -#. TRANSLATORS: This has to fit on one line. It's ok to include few -#. words but don't write poems. -#: grub-core/normal/term.c:82 -msgid "--MORE--" -msgstr "--CÃ’N Ná»®A--" - -#: grub-core/osdep/aros/config.c:92 grub-core/osdep/unix/config.c:137 -#: grub-core/osdep/windows/config.c:55 -#, c-format -msgid "cannot open configuration file `%s': %s" -msgstr "không thể mở tập tin cấu hình “%sâ€: %s" - -#: grub-core/osdep/basic/compress.c:8 grub-core/osdep/basic/compress.c:14 -#: grub-core/osdep/basic/compress.c:20 -msgid "no compression is available for your platform" -msgstr "không có ứng dụng nén nào cho ná»n tảng này cá»§a bạn" - -#: grub-core/osdep/basic/no_platform.c:30 -#: grub-core/osdep/windows/platform.c:418 -msgid "no IEEE1275 routines are available for your platform" -msgstr "không có thá»§ tục IEEE1275 sẵn có nào trong hệ thống cá»§a bạn" - -#: grub-core/osdep/basic/no_platform.c:38 -msgid "no EFI routines are available for your platform" -msgstr "không có thá»§ tục EFI sẵn có nào trong hệ thống cá»§a bạn" - -#: grub-core/osdep/basic/no_platform.c:45 -#: grub-core/osdep/windows/platform.c:425 -msgid "no SGI routines are available for your platform" -msgstr "không có thá»§ tục SGI sẵn có nào trong hệ thống cá»§a bạn" - -#. TRANSLATORS: The OS itself may very well have a random -#. number generator but GRUB doesn't know how to access it. -#: grub-core/osdep/basic/random.c:42 -msgid "no random number generator is available for your OS" -msgstr "không có bá»™ tạo số ngẫu nhiên sẵn có nào dành cho HỆ ÄIỀU HÀNH cá»§a bạn" - -#: grub-core/osdep/devmapper/getroot.c:81 -msgid "Failed to create `device-mapper' tree" -msgstr "Gặp lá»—i khi tạo cây “device-mapperâ€" - -#: grub-core/osdep/devmapper/getroot.c:197 -#: grub-core/osdep/freebsd/getroot.c:202 -#, c-format -msgid "can't mount encrypted volume `%s': %s" -msgstr "không thể gắn vùng được mã hóa “%sâ€: %s" - -#. TRANSLATORS: geom is the name of (k)FreeBSD device framework. -#. Usually left untranslated. -#. -#: grub-core/osdep/freebsd/getroot.c:82 grub-core/osdep/freebsd/getroot.c:164 -#: grub-core/osdep/freebsd/getroot.c:258 grub-core/osdep/freebsd/getroot.c:316 -msgid "couldn't open geom" -msgstr "không thể mở geom" - -#: grub-core/osdep/freebsd/getroot.c:182 grub-core/osdep/freebsd/getroot.c:277 -msgid "couldn't find geli consumer" -msgstr "không tìm thấy ngưá»i tiêu dùng “geliâ€" - -#: grub-core/osdep/freebsd/getroot.c:282 -msgid "couldn't retrieve geli UUID" -msgstr "không thể lấy vỠ“geli UUIDâ€" - -#. TRANSLATORS: geom is the name of (k)FreeBSD device framework. -#. Usually left untranslated. "part" is the identifier of one of its -#. classes. -#: grub-core/osdep/freebsd/getroot.c:325 -msgid "couldn't find geom `part' class" -msgstr "không tìm thấy lá»›p geom “partâ€" - -#: grub-core/osdep/freebsd/hostdisk.c:72 grub-core/osdep/linux/hostdisk.c:93 -msgid "unaligned device size" -msgstr "kích thước thiết bị chưa căn chỉnh" - -#: grub-core/osdep/generic/blocklist.c:56 -#, c-format -msgid "attempting to read the core image `%s' from GRUB" -msgstr "Ä‘ang thá»­ Ä‘á»c ảnh lõi “%s†từ GRUB" - -#: grub-core/osdep/generic/blocklist.c:57 -#, c-format -msgid "attempting to read the core image `%s' from GRUB again" -msgstr "Ä‘ang thá»­ Ä‘á»c ảnh lõi “%s†từ GRUB lần nữa" - -#: grub-core/osdep/generic/blocklist.c:115 -#, c-format -msgid "cannot read `%s' correctly" -msgstr "không thể Ä‘á»c “%s†cho đúng" - -#: grub-core/osdep/generic/blocklist.c:126 -msgid "failed to read the sectors of the core image" -msgstr "lá»—i Ä‘á»c các rãnh ghi cá»§a ảnh lõi" - -#. TRANSLATORS: On GNU/Hurd, a "translator" is similar to a filesystem -#. mount, but handled by a userland daemon, whose invocation command line -#. is being fetched here. First %s is the file being looked at (for which -#. we are fetching the "translator" command line), second %s is the error -#. message. -#. -#: grub-core/osdep/hurd/getroot.c:79 -#, c-format -msgid "cannot get translator command line for path `%s': %s" -msgstr "không thể gắn hệ thống tập tin cho đưá»ng dẫn “%sâ€: %s" - -#: grub-core/osdep/hurd/getroot.c:82 -#, c-format -msgid "translator command line is empty for path `%s'" -msgstr "lệnh gắn hệ thống tập tin bị trống rá»—ng cho đưá»ng dẫn “%sâ€" - -#. TRANSLATORS: we expect to get something like -#. /hurd/foobar --option1 --option2=baz /dev/something -#. -#: grub-core/osdep/hurd/getroot.c:98 -#, c-format -msgid "" -"translator `%s' for path `%s' has several non-option words, at least `%s' " -"and `%s'" -msgstr "" -"lệnh gắn “%s†cho đưá»ng dẫn “%s†có nhiá»u từ không phải là tùy chá»n, ít nhất " -"“%s†và “%sâ€" - -#. TRANSLATORS: we expect to get something like -#. /hurd/foobar --option1 --option2=baz /dev/something -#. -#: grub-core/osdep/hurd/getroot.c:109 -#, c-format -msgid "" -"translator `%s' for path `%s' is given only options, cannot find device part" -msgstr "" -"bá»™ dịch “%s†cho đưá»ng dẫn “%s†chỉ được đưa cho các tùy chá»n, không thể tìm " -"thấy đưá»ng dẫn thiết bị" - -#: grub-core/osdep/hurd/hostdisk.c:73 -#, c-format -msgid "Storage information for `%s' does not include type" -msgstr "Thông tin kho chứa cho “%s†không chứa kiểu" - -#: grub-core/osdep/hurd/hostdisk.c:75 -#, c-format -msgid "`%s' is not a local disk" -msgstr "“%s†không phải là đĩa trên máy" - -#: grub-core/osdep/hurd/hostdisk.c:78 -#, c-format -msgid "" -"Storage information for `%s' indicates neither a plain partition nor a plain " -"disk" -msgstr "" -"Thông tin cho kho chứa “%s†không chỉ ra rằng phân vùng không phải thưá»ng mà " -"đĩa cÅ©ng không phải thưá»ng" - -#: grub-core/osdep/linux/blocklist.c:81 grub-core/osdep/linux/blocklist.c:96 -#: grub-core/osdep/linux/blocklist.c:122 -#, c-format -msgid "can't retrieve blocklists: %s" -msgstr "không thể lấy vá» danh sách cấm: %s" - -#: grub-core/osdep/linux/blocklist.c:84 -msgid "blocksize is not divisible by 512" -msgstr "kích thước khối không chia hết cho 512" - -#: grub-core/osdep/linux/blocklist.c:86 -msgid "invalid zero blocksize" -msgstr "kích thước khối không là không hợp lệ" - -#: grub-core/osdep/linux/blocklist.c:90 util/setup.c:744 -msgid "can't retrieve blocklists" -msgstr "không thể lấy vỠ“danh sách cấmâ€" - -#: grub-core/osdep/linux/getroot.c:154 -#, c-format -msgid "ioctl RAID_VERSION error: %s" -msgstr "lá»—i ioctl RAID_VERSION: %s" - -#: grub-core/osdep/linux/getroot.c:160 grub-core/osdep/linux/getroot.c:164 -#, c-format -msgid "unsupported RAID version: %d.%d" -msgstr "không há»— trợ phiên bản RAID: %d.%d" - -#: grub-core/osdep/linux/getroot.c:169 -#, c-format -msgid "ioctl GET_ARRAY_INFO error: %s" -msgstr "lá»—i ioctl GET_ARRAY_INFO: %s" - -#: grub-core/osdep/linux/getroot.c:178 -#, c-format -msgid "ioctl GET_DISK_INFO error: %s" -msgstr "lá»—i ioctl GET_DISK_INFO: %s" - -#: grub-core/osdep/linux/getroot.c:608 grub-core/osdep/linux/getroot.c:678 -#: grub-core/osdep/linux/hostdisk.c:126 grub-core/osdep/unix/getroot.c:253 -#: grub-core/osdep/unix/getroot.c:642 grub-core/osdep/unix/platform.c:92 -#: grub-core/osdep/unix/platform.c:100 -#, c-format -msgid "Unable to open stream from %s: %s" -msgstr "Không thể mở dòng dữ liệu từ %s: %s" - -#: grub-core/osdep/linux/getroot.c:1033 -#, c-format -msgid "unknown kind of RAID device `%s'" -msgstr "không hiểu kiểu cá»§a thiết bị RAID “%sâ€" - -#: grub-core/osdep/linux/ofpath.c:181 -#, c-format -msgid "`obppath' not found in parent dirs of `%s', no IEEE1275 name discovery" -msgstr "" -"không tìm thấy “obppath†trong thư mục cha cá»§a “%sâ€, không tìm thấy tên " -"IEEE1275" - -#: grub-core/osdep/linux/ofpath.c:222 grub-core/osdep/unix/getroot.c:505 -#: grub-core/osdep/unix/getroot.c:529 grub-core/osdep/unix/relpath.c:49 -#: util/grub-install.c:984 util/grub-install.c:1331 util/grub-probe.c:323 -#, c-format -msgid "failed to get canonical path of `%s'" -msgstr "gặp lá»—i khi lấy đưá»ng dẫn canonical cá»§a %s" - -#: grub-core/osdep/linux/ofpath.c:740 -#, c-format -msgid "unknown device type %s" -msgstr "không hiểu kiểu thiết bị %s" - -#: grub-core/osdep/linux/ofpath.c:758 util/ieee1275/grub-ofpathname.c:39 -#, c-format -msgid "Usage: %s DEVICE\n" -msgstr "Cách dùng: %s THIẾT_BỊ\n" - -#: grub-core/osdep/unix/exec.c:86 grub-core/osdep/unix/exec.c:172 -#: grub-core/osdep/unix/exec.c:217 -#, c-format -msgid "Unable to fork: %s" -msgstr "Không thể rẽ nhánh tiến trình: %s" - -#: grub-core/osdep/unix/exec.c:166 grub-core/osdep/unix/exec.c:211 -#, c-format -msgid "Unable to create pipe: %s" -msgstr "Không tạo được đưá»ng ống dẫn lệnh: %s" - -#: grub-core/osdep/unix/getroot.c:370 -#, fuzzy -msgid "cannot save the original directory" -msgstr "không thể phục hồi thư mục nguyên gốc" - -#: grub-core/osdep/unix/getroot.c:423 grub-core/osdep/unix/getroot.c:480 -#: grub-core/osdep/unix/getroot.c:489 -msgid "cannot restore the original directory" -msgstr "không thể phục hồi thư mục nguyên gốc" - -#. TRANSLATORS: "stat" comes from the name of POSIX function. -#: grub-core/osdep/unix/getroot.c:551 grub-core/osdep/unix/hostdisk.c:61 -#: grub-core/osdep/unix/relpath.c:73 grub-core/osdep/unix/relpath.c:97 -#: util/getroot.c:160 util/getroot.c:162 util/grub-install.c:774 -#: util/grub-macbless.c:70 -#, c-format -msgid "cannot stat `%s': %s" -msgstr "không thể lấy trạng thái vỠ“%sâ€: %s" - -#: grub-core/osdep/unix/hostdisk.c:293 -#, c-format -msgid "cannot make temporary file: %s" -msgstr "không thể tạo tập tin tạm: %s" - -#: grub-core/osdep/unix/hostdisk.c:311 -#, c-format -msgid "cannot make temporary directory: %s" -msgstr "không thể tạo thư mục tạm: %s" - -#: grub-core/osdep/unix/platform.c:77 -#, c-format -msgid "" -"couldn't find IEEE1275 device path for %s.\n" -"You will have to set `boot-device' variable manually" -msgstr "" -"không tìm thấy đưá»ng dẫn cây thiết bị IEEE1275 cho %s.\n" -"Bạn sẽ phải tá»± đặt biến “boot-deviceâ€" - -#. TRANSLATORS: This message is shown when required executable `%s' -#. isn't found. -#: grub-core/osdep/unix/platform.c:149 grub-core/osdep/unix/platform.c:189 -#, c-format -msgid "%s: not found" -msgstr "%s: không tìm thấy" - -#: grub-core/osdep/unix/platform.c:225 -#, c-format -msgid "" -"`nvsetenv' failed. \n" -"You will have to set `boot-device' variable manually. At the IEEE1275 " -"prompt, type:\n" -" %s\n" -msgstr "" -"“nvsetenv†gặp lá»—i. \n" -"Bạn sẽ phải đặt biến “boot-device†bằng tay. Tại dấu nhắc IEEE1275, hãy gõ:\n" -" %s\n" - -#: grub-core/osdep/unix/platform.c:240 -msgid "You will have to set `SystemPartition' and `OSLoader' manually." -msgstr "Bạn sẽ phải đặt thá»§ công “SystemPartition†và “OSLoaderâ€." - -#. TRANSLATORS: canonical pathname is the -#. complete one e.g. /etc/fstab. It has -#. to contain `/' normally, if it doesn't -#. we're in trouble and throw this error. -#: grub-core/osdep/unix/relpath.c:90 -msgid "no `/' in canonical filename" -msgstr "không có “/†trong tên tập tin kiểu canonical (đầy đủ)" - -#: grub-core/osdep/windows/hostdisk.c:151 -msgid "cygwin_conv_path() failed" -msgstr "cygwin_conv_path() gặp lá»—i" - -#: grub-core/osdep/windows/hostdisk.c:501 util/grub-install.c:570 -msgid "couldn't retrieve random data" -msgstr "không thể nhận vá» dữ liệu ngẫu nhiên" - -#: grub-core/osdep/windows/platform.c:97 -msgid "Insufficient privileges to access firmware, assuming BIOS" -msgstr "Thiếu đặc quyá»n truy cập firmware, coi là BIOS" - -#: grub-core/osdep/windows/platform.c:225 -msgid "no EFI routines are available when running in BIOS mode" -msgstr "không có thá»§ tục EFI sẵn có nào khi chạy ở chế độ BIOS" - -#: grub-core/osdep/windows/platform.c:240 -msgid "unexpected EFI error" -msgstr "gặp lá»—i EFI đột xuất" - -#: grub-core/osdep/windows/platform.c:315 -msgid "Couldn't find a free BootNNNN slot" -msgstr "Không thể tìm thấy khe BootNNNN còn trống" - -#: grub-core/partmap/gpt.c:191 -msgid "" -"this GPT partition label contains no BIOS Boot Partition; embedding won't be " -"possible" -msgstr "" -"Nhãn phân vùng GPT này không có phân vùng khởi động BIOS; nên không nhúng " -"được" - -#: grub-core/partmap/gpt.c:196 -msgid "your BIOS Boot Partition is too small; embedding won't be possible" -msgstr "" -"BIOS Boot Partition (phân vùng khởi động BIOS) quá nhá»; nhúng là Ä‘iá»u không " -"thể thá»±c hiện được" - -#. TRANSLATORS: MBR gap and boot track is the same thing and is the space -#. between MBR and first partitition. If your language translates well only -#. "boot track", you can just use it everywhere. Next two messages are about -#. RAID controllers/software bugs which GRUB has to live with. Please spread -#. the message that these are bugs in other software and not merely -#. suboptimal behaviour. -#: grub-core/partmap/msdos.c:51 -#, c-format -msgid "" -"Sector %llu is already in use by raid controller `%s'; avoiding it. Please " -"ask the manufacturer not to store data in MBR gap" -msgstr "" -"Rãnh ghi (Sector) %llu đã sẵn được sá»­ dụng bởi thiết bị Ä‘iá»u khiển raid " -"“%sâ€; đừng dùng nó. Xin hãy há»i nhà sản xuất đừng ghi dữ liệu vào khe MBR" - -#: grub-core/partmap/msdos.c:54 -#, c-format -msgid "" -"Sector %llu is already in use by the program `%s'; avoiding it. This " -"software may cause boot or other problems in future. Please ask its authors " -"not to store data in the boot track" -msgstr "" -"Rãnh ghi %llu đã Ä‘ang được sá»­ dụng bởi chương trình “%sâ€; tránh xa nó ra. " -"Phần má»m này có thể gây ra vấn đỠkhởi động hoặc các vấn đỠkhác trong " -"tương lai. Xin hãy yêu cầu tác giả cá»§a nó đừng ghi dữ liệu vào rãnh khởi " -"động" - -#: grub-core/partmap/msdos.c:384 -msgid "" -"other software is using the embedding area, and there is not enough room for " -"core.img. Such software is often trying to store data in a way that avoids " -"detection. We recommend you investigate" -msgstr "" -"có phần má»m khác đã sá»­ dụng vùng nhúng, và ở đây không đủ không gian để lưu " -"core.img. Những phần má»m như thế thưá»ng cố gắng lưu dữ liệu theo cách không " -"thăm dò trước. Chúng tôi khuyến nghị bạn nên Ä‘iá»u tra rõ ràng." - -#: grub-core/partmap/msdos.c:395 -msgid "" -"this msdos-style partition label has no post-MBR gap; embedding won't be " -"possible" -msgstr "" -"Nhãn phân vùng kiểu MSDOS (msdos-style) không có chá»— trống nằm sau MBR; nên " -"không nhúng được" - -#: grub-core/partmap/msdos.c:404 -msgid "your embedding area is unusually small. core.img won't fit in it." -msgstr "" -"vùng nhúng cá»§a bạn nhá» má»™t cách bất thưá»ng. Nó không chứa được core.img." - -#: grub-core/parttool/msdospart.c:39 -msgid "Make partition active" -msgstr "Không thể làm cho phân vùng hoạt động" - -#: grub-core/parttool/msdospart.c:51 -msgid "not a primary partition" -msgstr "không phải là phân vùng cÆ¡ sở" - -#: grub-core/parttool/msdospart.c:69 -#, c-format -msgid "Partition %d is active now. \n" -msgstr "Phân vùng %d được kích hoạt. \n" - -#: grub-core/parttool/msdospart.c:74 -#, c-format -msgid "Cleared active flag on %d. \n" -msgstr "Äã xóa bá» cá» hoạt động trên %d. \n" - -#: grub-core/parttool/msdospart.c:87 -msgid "Change partition type" -msgstr "Thay đổi kiểu cá»§a phân vùng" - -#: grub-core/parttool/msdospart.c:88 -msgid "Set `hidden' flag in partition type" -msgstr "Äặt cỠ“ẩn†trong kiểu phân vùng" - -#: grub-core/parttool/msdospart.c:130 -#, c-format -msgid "the partition type 0x%x isn't valid" -msgstr "kiểu phân vùng 0x%x không hợp lệ" - -#. TRANSLATORS: In this case we're actually writing to the disk and actively -#. modifying partition type rather than just defining it. -#: grub-core/parttool/msdospart.c:137 -#, c-format -msgid "Setting partition type to 0x%x\n" -msgstr "Äặt kiểu cá»§a phân vùng thành 0x%x\n" - -#. TRANSLATORS: 0 is a quantifier. "break" (similar to bash) -#. can be used e.g. to break 3 loops at once. -#. But asking it to break 0 loops makes no sense. -#: grub-core/script/execute.c:143 -msgid "can't break 0 loops" -msgstr "Thoát khá»i vòng lặp 0" - -#. TRANSLATORS: It's about not being -#. inside a function. "return" can be used only -#. in a function and this error occurs if it's used -#. anywhere else. -#: grub-core/script/execute.c:227 -msgid "not in function body" -msgstr "không trong thân hàm" - -#: grub-core/script/execute.c:371 -#, c-format -msgid "invalid variable name `%s'" -msgstr "tên biến “%s†không hợp lệ" - -#: grub-core/script/execute.c:953 -msgid "cannot allocate command buffer" -msgstr "" - -#: grub-core/script/lexer.c:144 util/grub-fstest.c:330 -msgid "unexpected end of file" -msgstr "kết thúc tập tin đột xuất" - -#: grub-core/script/main.c:55 grub-core/script/main.c:57 -#: grub-core/script/main.c:59 grub-core/script/main.c:67 -msgid "[NUM]" -msgstr "[Sá»]" - -#: grub-core/script/main.c:55 -msgid "Exit from loops" -msgstr "Thoát khá»i vòng lặp" - -#: grub-core/script/main.c:57 -msgid "Continue loops" -msgstr "Tiếp tục vòng lặp" - -#. TRANSLATORS: Positional arguments are -#. arguments $0, $1, $2, ... -#: grub-core/script/main.c:62 -msgid "Shift positional parameters." -msgstr "Dịch chuyển tham số vị trí." - -#: grub-core/script/main.c:64 -msgid "[VALUE]..." -msgstr "[GIÃ_TRỊ]…" - -#: grub-core/script/main.c:65 -msgid "Set positional parameters." -msgstr "Äặt tham số vị trí." - -#. TRANSLATORS: It's a command description -#. and "Return" is a verb, not a noun. The -#. command in question is "return" and -#. has exactly the same semanics as bash -#. equivalent. -#: grub-core/script/main.c:73 -msgid "Return from a function." -msgstr "Trả vá» từ hàm." - -#: grub-core/term/gfxterm_background.c:176 -msgid "[-m (stretch|normal)] FILE" -msgstr "[-m (stretch|normal)] TẬP_TIN" - -#: grub-core/term/gfxterm_background.c:177 -msgid "Load background image for active terminal." -msgstr "Tải ảnh ná»n cho thiết bị cuối Ä‘ang hoạt động." - -#: grub-core/term/gfxterm_background.c:182 util/grub-install.c:302 -#: util/grub-install.c:303 util/grub-mkrescue.c:107 util/grub-mkrescue.c:108 -#: util/grub-render-label.c:61 util/grub-render-label.c:63 -msgid "COLOR" -msgstr "MÀU" - -#: grub-core/term/gfxterm_background.c:183 -msgid "Set background color for active terminal." -msgstr "Äặt màu ná»n cho thiết bị cuối Ä‘ang hoạt động." - -#: grub-core/term/i386/coreboot/cbmemc.c:139 -msgid "Show CBMEM console content." -msgstr "Hiển thị ná»™i dung thiết bị Ä‘iá»u khiển CBMEM." - -#: grub-core/term/serial.c:57 -msgid "Set the serial unit." -msgstr "Äặt đơn vị nối tiếp." - -#: grub-core/term/serial.c:58 -msgid "Set the serial port address." -msgstr "Äặt địa chỉ cá»§a cổng nối tiếp." - -#: grub-core/term/serial.c:59 -msgid "Set the serial port speed." -msgstr "Äặt tốc độ cá»§a cổng nối tiếp." - -#: grub-core/term/serial.c:60 -msgid "Set the serial port word length." -msgstr "Äặt chiá»u dài từ cá»§a cổng nối tiếp." - -#: grub-core/term/serial.c:61 -msgid "Set the serial port parity." -msgstr "Äặt tính chẵn lẻ cá»§a cổng nối tiếp." - -#: grub-core/term/serial.c:62 -msgid "Set the serial port stop bits." -msgstr "Äặt các bit dừng cá»§a cá»§a cổng nối tiếp." - -#: grub-core/term/serial.c:63 -msgid "Set the base frequency." -msgstr "Äặt tần số đồng hồ cÆ¡ bản." - -#: grub-core/term/serial.c:64 -msgid "Enable/disable RTS/CTS." -msgstr "Bật/tắt RTS/CTS." - -#: grub-core/term/serial.c:218 -#, c-format -msgid "serial port `%s' isn't found" -msgstr "không tìm thấy cổng nối tiếp “%sâ€" - -#: grub-core/term/serial.c:254 -msgid "unsupported serial port flow control" -msgstr "không há»— trợ Ä‘iá»u khiển luồng cổng nối tiếp" - -#: grub-core/term/serial.c:429 -msgid "[OPTIONS...]" -msgstr "[CÃC-TÙY_CHỌN…]" - -#: grub-core/term/serial.c:430 -msgid "Configure serial port." -msgstr "Cấu hình cổng nối tiếp." - -#: grub-core/term/terminfo.c:184 -#, c-format -msgid "unknown terminfo type `%s'" -msgstr "không hiểu kiểu terminfo “%sâ€" - -#: grub-core/term/terminfo.c:668 -msgid "ASCII" -msgstr "ASCII" - -#: grub-core/term/terminfo.c:671 -msgid "UTF-8" -msgstr "UTF-8" - -#. TRANSLATORS: visually ordered UTF-8 is a non-compliant encoding -#. based on UTF-8 with right-to-left languages written in reverse. -#. Used on some terminals. Normal UTF-8 is refered as -#. "logically-ordered UTF-8" by opposition. -#: grub-core/term/terminfo.c:677 -msgid "visually-ordered UTF-8" -msgstr "kiểu UTF-8 thứ-tá»±-ảo" - -#: grub-core/term/terminfo.c:680 -msgid "Unknown encoding" -msgstr "Không hiểu bảng mã" - -#: grub-core/term/terminfo.c:684 -msgid "Current terminfo types:" -msgstr "Kiểu terminfo hiện tại:" - -#: grub-core/term/terminfo.c:699 -msgid "Terminal is ASCII-only [default]." -msgstr "Thiết bị cuối ở dạng chỉ-ASCII [mặc định]." - -#: grub-core/term/terminfo.c:700 -msgid "Terminal is logical-ordered UTF-8." -msgstr "Thiết bị cuối là kiểu UTF-8 thứ-tá»±-lôgíc" - -#: grub-core/term/terminfo.c:701 -msgid "Terminal is visually-ordered UTF-8." -msgstr "Thiết bị cuối là kiểu UTF-8 thứ-tá»±-ảo" - -#: grub-core/term/terminfo.c:703 -msgid "Terminal has specified geometry." -msgstr "Thiết bị cuối có hình thái được chỉ ra." - -#. TRANSLATORS: "x" has to be entered in, like an identifier, so please don't -#. use better Unicode codepoints. -#: grub-core/term/terminfo.c:706 -msgid "WIDTHxHEIGHT." -msgstr "RỘNGxCAO." - -#: grub-core/term/terminfo.c:746 -msgid "incorrect terminal dimensions specification" -msgstr "đặc tả kích thước thiết bị cuối (terminal) không đúng" - -#: grub-core/term/terminfo.c:776 -#, c-format -msgid "terminal %s isn't found or it's not handled by terminfo" -msgstr "không tìm thấy thiết bị cuối %s hoặc không nắm được nó bằng terminfo" - -#: grub-core/term/terminfo.c:785 -msgid "[[-a|-u|-v] [-g WxH] TERM [TYPE]]" -msgstr "[[-a|-u|-v] [-g WxH] TERM [KIỂU]]" - -#: grub-core/term/terminfo.c:786 -msgid "Set terminfo type of TERM to TYPE.\n" -msgstr "Äặt kiểu terminfo cá»§a TERM thành KIỂU.\n" - -#. TRANSLATORS: this is the BLOCK-argument, not -#. environment block. -#: grub-core/tests/test_blockarg.c:49 -msgid "Print and execute block argument." -msgstr "Hiển thị và thá»±c thi đối số khổi." - -#. TRANSLATORS: We're speaking about bitmap images like -#. JPEG or PNG. -#: grub-core/video/bitmap.c:209 -#, c-format -msgid "bitmap file `%s' is of unsupported format" -msgstr "tệp tin bitmap (ảnh bít) “%s†không được há»— trợ định dạng" - -#: grub-core/video/i386/pc/vbe.c:1191 -#, c-format -msgid " VBE info: version: %d.%d OEM software rev: %d.%d\n" -msgstr " ttin VBE: phiên bản: %d.%d phiên bản phần má»m OEM: %d.%d\n" - -#: grub-core/video/i386/pc/vbe.c:1198 -#, c-format -msgid " total memory: %d KiB\n" -msgstr " tổng dung lượng bá»™ nhá»›: %d KiB\n" - -#: grub-core/video/video.c:596 grub-core/video/video.c:762 -msgid "no suitable video mode found" -msgstr "không tìm thấy chế độ video nào thích hợp" - -#: include/grub/crypto.h:403 -msgid "access denied" -msgstr "truy cập bị từ chối" - -#: include/grub/util/install.h:30 include/grub/util/install.h:35 -msgid "MODULES" -msgstr "MÔ_ÄUN" - -#: include/grub/util/install.h:31 -msgid "pre-load specified modules MODULES" -msgstr "tải trước các MÔ_ÄUN đã chỉ định" - -#: include/grub/util/install.h:33 -msgid "embed a specific DTB" -msgstr "" - -#: include/grub/util/install.h:36 -msgid "install only MODULES and their dependencies [default=all]" -msgstr "chỉ cài đặt các MÔ_ÄUN và các phần phụ thuá»™c cá»§a chúng [mặc định=all]" - -#: include/grub/util/install.h:37 -msgid "THEMES" -msgstr "CHỦ ÄỀ" - -#: include/grub/util/install.h:38 -#, c-format -msgid "install THEMES [default=%s]" -msgstr "install CHỦ ÄỀ [mặc định=%s]" - -#: include/grub/util/install.h:39 -msgid "FONTS" -msgstr "PHÔNG" - -#: include/grub/util/install.h:40 -#, c-format -msgid "install FONTS [default=%s]" -msgstr "install PHÔNG [mặc định=%s]" - -#: include/grub/util/install.h:41 -msgid "LOCALES" -msgstr "ÄỊA PHƯƠNG" - -#: include/grub/util/install.h:42 -msgid "install only LOCALES [default=all]" -msgstr "chỉ cài đặt CÃC MIỀN ÄỊA PHƯƠNG [mặc định=all]" - -#: include/grub/util/install.h:45 -msgid "compress GRUB files [optional]" -msgstr "nén tập tin GRUB [tùy chá»n]" - -#: include/grub/util/install.h:48 util/grub-mkimage.c:83 -msgid "choose the compression to use for core image" -msgstr "chá»n kiểu nén sẽ dùng cho ảnh lõi" - -#. TRANSLATORS: platform here isn't identifier. It can be translated. -#: include/grub/util/install.h:51 include/grub/util/install.h:54 -#: util/grub-mkimage.c:66 -#, c-format -msgid "use images and modules under DIR [default=%s/]" -msgstr "dùng các ảnh và mô-Ä‘un dưới TMỤC [mặc định=%s/]" - -#: include/grub/util/install.h:57 -#, c-format -msgid "use translations under DIR [default=%s]" -msgstr "dùng các bản dịch nằm ở TMỤC [mặc định=%s]" - -#: include/grub/util/install.h:60 -#, c-format -msgid "use themes under DIR [default=%s]" -msgstr "dùng các chá»§ đỠ(theme) nằm dưới TMỤC [mặc định=%s]" - -#: include/grub/util/install.h:65 util/grub-mkimage.c:78 -msgid "embed FILE as public key for signature checking" -msgstr "nhúng TẬP_TIN như là khóa công dành cho việc xác minh chữ ký" - -#: util/editenv.c:59 util/grub-editenv.c:201 util/grub-install-common.c:535 -#: util/grub-mkimage.c:315 util/setup.c:791 -#, fuzzy, c-format -msgid "cannot sync `%s': %s" -msgstr "không thể seek “%sâ€: %s" - -#: util/editenv.c:64 -#, c-format -msgid "cannot rename the file %s to %s" -msgstr "không thể đổi tên tập tin %s thành %s:" - -#: util/getroot.c:402 -#, c-format -msgid "disk does not exist, so falling back to partition device %s" -msgstr "đĩa không tồn tại, do đó quay trở lại phân vùng thiết bị %s" - -#: util/grub-editenv.c:45 util/grub-fstest.c:506 -msgid "Commands:" -msgstr "Lệnh:" - -#: util/grub-editenv.c:47 -msgid "Create a blank environment block file." -msgstr "Tạo khối môi trưá»ng có ná»™i dung trắng." - -#: util/grub-editenv.c:49 -msgid "List the current variables." -msgstr "Liệt kê các biến sẵn dùng." - -#. TRANSLATORS: "set" is a keyword. It's a summary of "set" subcommand. -#: util/grub-editenv.c:51 -msgid "set [NAME=VALUE ...]" -msgstr "set [TÊN=GIÃ_TRỊ …]" - -#: util/grub-editenv.c:52 -msgid "Set variables." -msgstr "Äặt các biến." - -#. TRANSLATORS: "unset" is a keyword. It's a summary of "unset" subcommand. -#: util/grub-editenv.c:54 -msgid "unset [NAME ...]" -msgstr "unset [TÊN …]" - -#: util/grub-editenv.c:55 -msgid "Delete variables." -msgstr "Xóa các biến." - -#: util/grub-editenv.c:57 -msgid "Options:" -msgstr "Tùy chá»n:" - -#: util/grub-editenv.c:84 -msgid "You need to specify at least one command.\n" -msgstr "Bạn cần phải chỉ ra ít nhất má»™t lệnh.\n" - -#: util/grub-editenv.c:113 -msgid "FILENAME COMMAND" -msgstr "TÊN_TẬP_TIN LỆNH" - -#: util/grub-editenv.c:114 -msgid "Tool to edit environment block." -msgstr "Công cụ sá»­a khối biến môi trưá»ng." - -#: util/grub-editenv.c:116 -#, c-format -msgid "" -"If FILENAME is `-', the default value %s is used.\n" -"\n" -"There is no `delete' command; if you want to delete the whole environment\n" -"block, use `rm %s'." -msgstr "" -"Nếu TÊN_TẬP_TIN là “-â€, thì giá trị mặc định %s sẽ được dùng.\n" -"\n" -"Ở đây không có lệnh “deleteâ€; nếu bạn muốn xóa toàn bá»™ khối môi\n" -"trưá»ng thì hãy dùng lệnh “rm %sâ€." - -#: util/grub-editenv.c:162 -msgid "invalid environment block" -msgstr "khối môi trưá»ng không hợp lệ" - -#: util/grub-editenv.c:217 -#, c-format -msgid "invalid parameter %s" -msgstr "tham số không hợp lệ %s" - -#: util/grub-editenv.c:222 -msgid "environment block too small" -msgstr "khối môi trưá»ng quá nhá»" - -#: util/grub-fstest.c:107 -#, c-format -msgid "disk read fails at offset %lld, length %lld" -msgstr "Ä‘á»c đĩa gặp lá»—i tại offset %lld, độ dài %lld" - -#: util/grub-fstest.c:138 -#, c-format -msgid "invalid skip value %lld" -msgstr "giá trị nhảy qua %lld không hợp lệ" - -#: util/grub-fstest.c:160 util/grub-fstest.c:246 -#, c-format -msgid "read error at offset %llu: %s" -msgstr "lá»—i Ä‘á»c tại offset %llu: %s" - -#: util/grub-fstest.c:210 -#, c-format -msgid "cannot open OS file `%s': %s" -msgstr "không thể mở tập tin OS “%sâ€: %s" - -#: util/grub-fstest.c:225 util/misc.c:126 -#, c-format -msgid "cannot write to the stdout: %s" -msgstr "không thể ghi vào đầu ra tiêu chuẩn: %s" - -#: util/grub-fstest.c:259 -#, c-format -msgid "compare fail at offset %llu" -msgstr "so sánh gặp lá»—i tại offset %llu" - -#: util/grub-fstest.c:280 util/grub-fstest.c:314 -#, c-format -msgid "OS file %s open error: %s" -msgstr "Lá»—i mở tập tin OS “%sâ€: %s" - -#: util/grub-fstest.c:402 util/grub-mount.c:392 -#, c-format -msgid "`loopback' command fails: %s" -msgstr "lệnh “loopback†gặp lá»—i: %s" - -#: util/grub-fstest.c:413 util/grub-mount.c:402 -#, c-format -msgid "`cryptomount' command fails: %s" -msgstr "lệnh “cryptomount†gặp lá»—i: %s" - -#: util/grub-fstest.c:474 util/grub-fstest.c:478 -msgid "couldn't retrieve UUID" -msgstr "không thể lấy UUID" - -#: util/grub-fstest.c:507 -msgid "ls PATH" -msgstr "ls ÄÆ¯á»œNG_DẪN" - -#: util/grub-fstest.c:507 -msgid "List files in PATH." -msgstr "Liệt kê các tập tin nằm trong THƯ-MỤC" - -#: util/grub-fstest.c:508 -msgid "cp FILE LOCAL" -msgstr "cp TẬP_TIN CỤC_BỘ" - -#: util/grub-fstest.c:508 -msgid "Copy FILE to local file LOCAL." -msgstr "Sao chép TẬP_TIN tá»›i tập tin CỤC_BỘ." - -#: util/grub-fstest.c:509 -msgid "cat FILE" -msgstr "cat TẬP_TIN" - -#: util/grub-fstest.c:509 -msgid "Copy FILE to standard output." -msgstr "Xuất TẬP_TIN ra đầu ra tiêu chuẩn." - -#: util/grub-fstest.c:510 -msgid "cmp FILE LOCAL" -msgstr "cmp TẬP_TIN NỘI-BỘ" - -#: util/grub-fstest.c:510 -msgid "Compare FILE with local file LOCAL." -msgstr "So sánh TẬP_TIN vá»›i tập tin CỤC_BỘ." - -#: util/grub-fstest.c:511 -msgid "hex FILE" -msgstr "hex TẬP_TIN" - -#: util/grub-fstest.c:511 -msgid "Show contents of FILE in hex." -msgstr "Hiển thị thông tin cá»§a TẬP_TIN ở dạng thập lục phân." - -#: util/grub-fstest.c:512 -msgid "crc FILE" -msgstr "crc TẬP_TIN" - -#: util/grub-fstest.c:512 -msgid "Get crc32 checksum of FILE." -msgstr "Lấy tổng kiểm tra crc32 cá»§a TẬP_TIN." - -#: util/grub-fstest.c:513 -msgid "blocklist FILE" -msgstr "blocklist TẬP_TIN" - -#: util/grub-fstest.c:513 -msgid "Display blocklist of FILE." -msgstr "Hiển thị blocklist cá»§a TẬP_TIN." - -#: util/grub-fstest.c:514 -msgid "xnu_uuid DEVICE" -msgstr "xnu_uuid THIẾT_BỊ" - -#: util/grub-fstest.c:514 -msgid "Compute XNU UUID of the device." -msgstr "Tính toán XNU UUID cá»§a thiết bị." - -#. TRANSLATORS: bitmaps are images like e.g. in JPEG. -#: util/grub-fstest.c:517 util/grub-fstest.c:518 util/grub-fstest.c:519 -#: util/grub-mkfont.c:938 util/grub-mkfont.c:951 util/grub-mkfont.c:952 -#: util/grub-mkpasswd-pbkdf2.c:46 util/grub-mkpasswd-pbkdf2.c:47 -#: util/grub-mkpasswd-pbkdf2.c:48 -msgid "NUM" -msgstr "Sá»" - -#: util/grub-fstest.c:517 -msgid "Skip N bytes from output file." -msgstr "Bá» qua N byte từ tập tin đầu vào." - -#: util/grub-fstest.c:518 -msgid "Handle N bytes in output file." -msgstr "Lấy N byte từ tập tin xuất." - -#: util/grub-fstest.c:519 -msgid "Specify the number of input files." -msgstr "Ghi rõ số lượng tập tin đầu vào." - -#: util/grub-fstest.c:520 util/grub-mount.c:453 -msgid "Set debug environment variable." -msgstr "Äặt biến môi trưá»ng gỡ lá»—i." - -#: util/grub-fstest.c:521 util/grub-mount.c:454 -msgid "Mount crypto devices." -msgstr "Gắn thiết bị mã hóa." - -#. TRANSLATORS: "prompt" is a keyword. -#: util/grub-fstest.c:524 util/grub-mount.c:457 -msgid "FILE|prompt" -msgstr "TẬP_TIN|prompt" - -#: util/grub-fstest.c:524 util/grub-mount.c:457 -msgid "Load zfs crypto key." -msgstr "Tải khóa mã hóa zfs." - -#: util/grub-fstest.c:526 -msgid "Uncompress data." -msgstr "dữ liệu không nén." - -#: util/grub-fstest.c:605 -msgid "Invalid disk count.\n" -msgstr "Số lượng đĩa không hợp lệ.\n" - -#. TRANSLATORS: disk count is optional but if it's there it must -#. be before disk list. So please don't imply disk count as mandatory. -#. -#: util/grub-fstest.c:613 -msgid "Disk count must precede disks list.\n" -msgstr "Số lượng đĩa phải đứng trước danh sách đĩa.\n" - -#: util/grub-fstest.c:633 -msgid "No command is specified.\n" -msgstr "chưa chỉ ra lệnh nào.\n" - -#: util/grub-fstest.c:638 -msgid "Not enough parameters to command.\n" -msgstr "Không đủ tham số cho lệnh.\n" - -#: util/grub-fstest.c:711 -#, c-format -msgid "Invalid command %s.\n" -msgstr "Lệnh %s không hợp lệ.\n" - -#: util/grub-fstest.c:724 -msgid "IMAGE_PATH COMMANDS" -msgstr "ÄÆ¯á»œNG_DẪN_ẢNH CÃC_LỆNH" - -#: util/grub-fstest.c:725 util/grub-mount.c:553 -msgid "Debug tool for filesystem driver." -msgstr "Công cụ gỡ lá»—i cho ổ đĩa hệ thống tập tin." - -#: util/grub-glue-efi.c:53 -msgid "set input filename for 32-bit part." -msgstr "đặt tên tập tin đầu vào cho bá»™ phận 32-bit." - -#: util/grub-glue-efi.c:55 -msgid "set input filename for 64-bit part." -msgstr "đặt tên tập tin đầu vào cho bá»™ phận 64-bit." - -#: util/grub-glue-efi.c:57 util/grub-mklayout.c:55 util/grub-render-label.c:71 -msgid "set output filename. Default is STDOUT" -msgstr "đặt tên tập tin đầu ra. Mặc định là STDOUT" - -#: util/grub-glue-efi.c:94 util/grub-mklayout.c:476 -#: util/grub-mkpasswd-pbkdf2.c:86 util/grub-render-label.c:131 -msgid "[OPTIONS]" -msgstr "[CÃC_TÙY_CHỌN]" - -#: util/grub-glue-efi.c:95 -msgid "Glue 32-bit and 64-bit binary into Apple universal one." -msgstr "Glue nhị phân 32-bit và 64-bit thành “Apple fat oneâ€." - -#: util/grub-glue-efi.c:116 -msgid "Missing input file\n" -msgstr "Thiếu tập tin đầu vào\n" - -#: util/grub-install-common.c:127 util/grub-install-common.c:151 -#, c-format -msgid "cannot copy `%s' to `%s': %s" -msgstr "không thể sao chép “%s†thành “%sâ€: %s" - -#: util/grub-install-common.c:147 -#, c-format -msgid "can't compress `%s' to `%s'" -msgstr "không thể nén “%s†thành “%sâ€" - -#: util/grub-install-common.c:196 util/grub-install-common.c:552 -#: util/grub-install-common.c:579 util/grub-install-common.c:621 -#, c-format -msgid "cannot open directory `%s': %s" -msgstr "không thể mở thư mục “%sâ€: %s" - -#: util/grub-install-common.c:212 -#, c-format -msgid "cannot delete `%s': %s" -msgstr "không thể xóa “%sâ€: %s" - -#: util/grub-install-common.c:324 util/grub-mkimage.c:209 -msgid "grub-mkimage is compiled without XZ support" -msgstr "grub-mkimage được biên dịch mà không được há»— trợ bởi định dạng XZ" - -#: util/grub-install-common.c:332 util/grub-mkimage.c:217 -#, c-format -msgid "Unknown compression format %s" -msgstr "Chưa biết định dạng nén %s" - -#: util/grub-install-common.c:400 -#, c-format -msgid "Unrecognized compression `%s'" -msgstr "Không chấp nhận kiểu nén “%sâ€" - -#: util/grub-install-common.c:509 -#, c-format -msgid "unknown target format %s" -msgstr "không hiểu định dạng đích %s" - -#: util/grub-install-common.c:700 -#, c-format -msgid "cannot find locale `%s'" -msgstr "không tìm thấy miá»n địa phương “%sâ€" - -#: util/grub-install-common.c:939 -#, c-format -msgid "%s doesn't exist. Please specify --target or --directory" -msgstr "%s không tồn tại. Hãy chỉ định thông qua --target hoặc --directory" - -#: util/grub-install-common.c:948 util/grub-install-common.c:951 -#, c-format -msgid "invalid modinfo file `%s'" -msgstr "tập tin modinfo (thông tin mô Ä‘un) “%s†không hợp lệ" - -#: util/grub-install-common.c:966 -#, c-format -msgid "Unknown platform `%s-%s'" -msgstr "Không hiểu ná»n tảng “%s-%sâ€" - -#: util/grub-install.c:238 -msgid "More than one install device?" -msgstr "Nhiá»u hÆ¡n má»™t thiết bị cài đặt?" - -#: util/grub-install.c:251 -#, c-format -msgid "" -"install GRUB images under the directory DIR/%s instead of the %s directory" -msgstr "cài ảnh GRUB dưới thư mục DIR/%s thay cho thư mục %s" - -#: util/grub-install.c:256 util/grub-probe.c:734 -msgid "TARGET" -msgstr "ÄÃCH" - -#. TRANSLATORS: "TARGET" as in "target platform". -#: util/grub-install.c:258 -#, c-format -msgid "install GRUB for TARGET platform [default=%s]; available targets: %s" -msgstr "cài đặt GRUB cho ná»n tảng ÄÃCH [mặc định=%s]; đích sẵn có: %s" - -#. TRANSLATORS: "may break" doesn't just mean that option wouldn't have any -#. effect but that it will make the resulting install unbootable from HDD. -#. TRANSLATORS: The potential breakage isn't limited to floppies but it's -#. likely to make the install unbootable from HDD. -#: util/grub-install.c:267 util/grub-setup.c:94 -msgid "" -"make the drive also bootable as floppy (default for fdX devices). May break " -"on some BIOSes." -msgstr "" -"làm cho đĩa cÅ©ng có khả năng khởi động giống như đĩa má»m (mặc định cho các " -"thiết bị fdX). Có lẽ nó không phải lúc nào cÅ©ng có hiệu quả trên các BIOS " -"nhưng lại hữu dụng khi cài đặt nó trên má»™t đĩa cứng không có khả năng khởi " -"động." - -#: util/grub-install.c:270 -msgid "delete device map if it already exists" -msgstr "xóa ánh xạ thiết bị nếu nó đã sẵn có" - -#: util/grub-install.c:272 util/grub-setup.c:87 -msgid "install even if problems are detected" -msgstr "cài đặt ngay cả khi nhận thấy có trục trặc" - -#: util/grub-install.c:274 -msgid "use identifier file even if UUID is available" -msgstr "dùng tập tin định danh ngay cả khi sẵn có UUID" - -#: util/grub-install.c:276 -msgid "" -"disk module to use (biosdisk or native). This option is only available on " -"BIOS target." -msgstr "" -"mô-Ä‘un đĩa sá»­ dụng (biosdisk hoặc native). Tùy chá»n này chỉ dùng được trên " -"đích là BIOS." - -#: util/grub-install.c:279 -msgid "" -"don't update the `boot-device'/`Boot*' NVRAM variables. This option is only " -"available on EFI and IEEE1275 targets." -msgstr "" -"không cập nhật biến NVRAM “boot-deviceâ€/“Boot*â€. Tùy chá»n này chỉ có thể " -"dùng trên EFI và đích IEEE1275." - -#: util/grub-install.c:282 util/grub-setup.c:89 -msgid "do not probe for filesystems in DEVICE" -msgstr "không thăm dò hệ thống tập tin trên THIẾT_BỊ" - -#: util/grub-install.c:284 -msgid "do not install bootsector" -msgstr "không thể cài đặt cung từ khởi động" - -#: util/grub-install.c:286 util/grub-setup.c:96 -msgid "" -"Do not apply any reed-solomon codes when embedding core.img. This option is " -"only available on x86 BIOS targets." -msgstr "" -"Không áp dụng các mã “reed-solomon†khi nhúng core.img. Tùy chá»n này chỉ " -"dùng được trên đích là x86 BIOS." - -#: util/grub-install.c:293 -msgid "" -"the installation device is removable. This option is only available on EFI." -msgstr "thiết bị đã cài đã bị gỡ bá». Tùy chá»n này chỉ sẵn dùng trên EFI." - -#: util/grub-install.c:295 -msgid "ID" -msgstr "ID" - -#: util/grub-install.c:296 -msgid "the ID of bootloader. This option is only available on EFI and Macs." -msgstr "ID cá»§a phần khởi động. Tùy chá»n này chỉ sẵn dùng trên EFI và Macs." - -#: util/grub-install.c:298 -msgid "use DIR as the EFI System Partition root." -msgstr "dùng TMỤC làm gốc phân vùng hệ thống EFI." - -#: util/grub-install.c:300 -msgid "use DIR for PPC MAC install." -msgstr "dùng TMỤC cho cài đặt “PPC MACâ€." - -#: util/grub-install.c:301 util/grub-mkrescue.c:106 -msgid "use FILE as font for label" -msgstr "dùng TẬP_TIN làm phông dành cho nhãn" - -#: util/grub-install.c:302 util/grub-mkrescue.c:107 -msgid "use COLOR for label" -msgstr "dùng MÀU cho nhãn" - -#: util/grub-install.c:303 util/grub-mkrescue.c:108 -msgid "use COLOR for label background" -msgstr "dùng MÀU cho ná»n nhãn" - -#: util/grub-install.c:304 util/grub-mkrescue.c:110 -msgid "use STRING as product version" -msgstr "dùng CHUá»–I làm phiên bản sản phẩm" - -#: util/grub-install.c:361 -msgid "[OPTION] [INSTALL_DEVICE]" -msgstr "[TÙY_CHỌN] [THIẾT_BỊ_CÀI_ÄẶT]" - -#: util/grub-install.c:362 -msgid "Install GRUB on your drive." -msgstr "Cài GRUB vào đĩa cá»§a bạn." - -#: util/grub-install.c:363 -#, c-format -msgid "" -"INSTALL_DEVICE must be system device filename.\n" -"%s copies GRUB images into %s. On some platforms, it may also install GRUB " -"into the boot sector." -msgstr "" -"THIẾT_BỊ_CÀI_ÄẶT phải là tên tập tin thiết bị hệ thống.\n" -"%s sao chép ảnh GRUB vào %s. Trên má»™t số hệ thống, nó\n" -"đồng thá»i cài đặt grub vào cung từ khởi động." - -#: util/grub-install.c:672 -#, c-format -msgid "the drive %s is defined multiple times in the device map %s" -msgstr "đĩa %s được định nghÄ©a nhiá»u lần trong ánh xạ ổ đĩa %s" - -#: util/grub-install.c:878 -msgid "Unable to determine your platform. Use --target." -msgstr "Không thể xác định được ná»n tảng cá»§a bạn. Sá»­ dụng --target." - -#: util/grub-install.c:891 -#, c-format -msgid "Installing for %s platform.\n" -msgstr "Äang cài đặt cho ná»n tảng %s.\n" - -#: util/grub-install.c:939 -msgid "install device isn't specified" -msgstr "cài đặt THIẾT_BỊ mà nó chưa được chỉ ra" - -#: util/grub-install.c:1057 -msgid "cannot find EFI directory" -msgstr "không thể tìm thấy thư mục EFI" - -#: util/grub-install.c:1060 util/grub-install.c:1209 util/grub-install.c:1254 -#: util/grub-macbless.c:76 util/grub-probe.c:329 util/setup.c:316 -#, c-format -msgid "cannot find a device for %s (is /dev mounted?)" -msgstr "không tìm thấy thiết bị cho %s (/dev đã gắn chưa?)" - -#: util/grub-install.c:1069 util/grub-install.c:1217 util/grub-install.c:1270 -#: util/grub-install.c:1365 util/grub-macbless.c:80 util/grub-probe.c:372 -#, c-format -msgid "cannot find a GRUB drive for %s. Check your device.map" -msgstr "không tìm thấy ổ đĩa GRUB cho %s. Kiểm tra tập tin device.map" - -#: util/grub-install.c:1087 -#, c-format -msgid "%s doesn't look like an EFI partition" -msgstr "%s có vẻ không giống như là má»™t phân vùng EFI." - -#: util/grub-install.c:1129 util/grub-install.c:1614 -msgid "You've found a bug" -msgstr "Bạn vừa tìm thấy má»™t lá»—i" - -#: util/grub-install.c:1231 -#, c-format -msgid "filesystem on %s is neither HFS nor HFS+" -msgstr "hệ thống tập tin trên %s không là HFS cÅ©ng không phải HFS+" - -#: util/grub-install.c:1299 -#, c-format -msgid "" -"attempt to install to encrypted disk without cryptodisk enabled. Set `%s' in " -"file `%s'" -msgstr "" -"cố cài đặt vào đĩa đã mã hóa mà cryptodisk không được bật. Äặt “%s†trong " -"tập tin “%sâ€." - -#: util/grub-install.c:1410 util/grub-install.c:1772 util/grub-install.c:1872 -#, c-format -msgid "Can't create file: %s" -msgstr "Không thể tạo tập tin: %s" - -#: util/grub-install.c:1491 -msgid "no hints available for your platform. Expect reduced performance" -msgstr "" -"không có gợi ý nào cho ná»n tảng này cá»§a bạn. Khả năng là hiệu năng sẽ bị " -"giảm sút" - -#. TRANSLATORS: This is a prefix in the log to indicate that usually -#. a command would be executed but due to an option was skipped. -#: util/grub-install.c:1702 -msgid "NOT RUNNING: " -msgstr "KHÔNG CHẠY: " - -#: util/grub-install.c:1806 -msgid "the chosen partition is not a PReP partition" -msgstr "Phân vùng đã chá»n không thuá»™c kiểu PReP" - -#: util/grub-install.c:1811 -msgid "failed to copy Grub to the PReP partition" -msgstr "gặp lá»—i khi sao chép Grub vào phân vùng PReP" - -#: util/grub-install.c:1816 -#, c-format -msgid "" -"the PReP partition is not empty. If you are sure you want to use it, run dd " -"to clear it: `%s'" -msgstr "" -"phân vùng PReP không rá»—ng. Nếu bạn chắc chắn muốn sá»­ dụng nó, hãy sá»­ dụng " -"lệnh dd để xóa nó Ä‘i: “%sâ€" - -#: util/grub-install.c:1888 util/grub-install.c:1932 -#, c-format -msgid "efibootmgr failed to register the boot entry: %s" -msgstr "" - -#: util/grub-install.c:1916 -msgid "EFI bootloader id isn't specified." -msgstr "Chưa chỉ ra id phần tải khởi động EFI." - -#: util/grub-install.c:1950 -msgid "WARNING: no platform-specific install was performed" -msgstr "" -"CẢNH BÃO: không có cài đặt platform-specific (ná»n-tảng-đặc-thù) nào được " -"thá»±c hiện" - -#: util/grub-install.c:1957 -msgid "Installation finished. No error reported." -msgstr "Cài đặt đã hoàn thành. Không có lá»—i nào phát sinh." - -#: util/grub-macbless.c:101 -msgid "bless for x86-based macs" -msgstr "" -"đặt phân vùng có khả năng khởi động và đĩa khởi động trên máy macs chạy bá»™ " -"vi xá»­ lý x86" - -# bless -- set volume bootability and startup disk -# Xem https://developer.apple.com/library/mac/documentation/Darwin/Reference/ManPages/man8/bless.8.html -#: util/grub-macbless.c:103 -msgid "bless for ppc-based macs" -msgstr "" -"đặt phân vùng có khả năng khởi động và đĩa khởi động trên máy macs chạy bá»™ " -"vi xá»­ lý ppc" - -#: util/grub-macbless.c:136 util/grub-probe.c:823 -msgid "No path or device is specified.\n" -msgstr "Chưa ghi rõ đưá»ng dẫn hoặc thiết bị.\n" - -#: util/grub-macbless.c:157 -msgid "--ppc PATH|--x86 FILE" -msgstr "--ppc ÄÆ¯á»œNG_DẪN|--x86 TẬP_TIN" - -#: util/grub-macbless.c:158 -msgid "Mac-style bless on HFS or HFS+" -msgstr "Äặt phân vùng khởi động kiểu Mac trên HFS hay HFS+" - -#: util/grub-menulst2cfg.c:44 -#, c-format -msgid "Usage: %s [INFILE [OUTFILE]]\n" -msgstr "Cách dùng: %s [TẬP_TIN_VÀO [TẬP_TIN_RA]]\n" - -#: util/grub-mkfont.c:157 -#, c-format -msgid "Freetype Error %d loading glyph 0x%x for U+0x%x%s" -msgstr "Lá»—i Freetype %d Ä‘ang tải 0x%x cho U+0x%x%s" - -#. TRANSLATORS: These qualifiers are used for cursive typography, -#. mainly Arabic. Note that the terms refer to the visual position -#. and not logical order and if used in left-to-right script then -#. leftmost is initial but with right-to-left script like Arabic -#. rightmost is the initial. -#: util/grub-mkfont.c:165 -msgid " (medial)" -msgstr "(Ä‘a phương tiện)" - -#: util/grub-mkfont.c:166 -msgid " (leftmost)" -msgstr "(cá»±c tả)" - -#: util/grub-mkfont.c:167 -msgid " (rightmost)" -msgstr "(cá»±c hữu)" - -#: util/grub-mkfont.c:481 -#, c-format -msgid "Out of range substitution (%d, %d)\n" -msgstr "Ngoài phạm vi thay-thế (substitution) (%d, %d)\n" - -#. TRANSLATORS: "lookup" is taken directly from font specifications -#. which are formulated as "Under condition X replace LOOKUP with -#. SUBSTITUITION". " -#: util/grub-mkfont.c:506 -#, c-format -msgid "Out of range lookup: %d\n" -msgstr "Ngoài phạm vi tìm kiếm: %d\n" - -#: util/grub-mkfont.c:514 -#, c-format -msgid "Unsupported substitution type: %d\n" -msgstr "Kiểu thay-thế (substitution) không được há»— trợ: %d\n" - -#: util/grub-mkfont.c:550 -#, c-format -msgid "Unsupported substitution specification: %d\n" -msgstr "Äặc tả thay-thế (substitution) không được há»— trợ: %d\n" - -#: util/grub-mkfont.c:582 -#, c-format -msgid "Unsupported coverage specification: %d\n" -msgstr "Äặc tả thù hình cá»§a phông chữ không được há»— trợ: %d\n" - -#: util/grub-mkfont.c:622 -#, c-format -msgid "WARNING: unsupported font feature parameters: %x\n" -msgstr "CẢNH BÃO: các tham số đặc Ä‘iểm phông chữ không được há»— trợ: %x\n" - -#: util/grub-mkfont.c:936 util/grub-mkrescue.c:98 util/grub-mkstandalone.c:48 -msgid "save output in FILE [required]" -msgstr "ghi kết xuất vào TẬP_TIN [bắt buá»™c]" - -#. TRANSLATORS: some font files may have multiple faces (fonts). -#. This option is used to chose among them, the first face being '0'. -#. Rarely used. -#: util/grub-mkfont.c:942 -msgid "select face index" -msgstr "chá»n chỉ số cho phông chữ" - -#: util/grub-mkfont.c:943 -msgid "FROM-TO[,FROM-TO]" -msgstr "TỪ-ÄẾN[,TỪ-ÄẾN]" - -#. TRANSLATORS: It refers to the range of characters in font. -#: util/grub-mkfont.c:945 -msgid "set font range" -msgstr "đặt phạm vi phông chữ" - -#. TRANSLATORS: "family name" for font is just a generic name without suffix -#. like "Bold". -#: util/grub-mkfont.c:949 -msgid "set font family name" -msgstr "đặt tên phông chữ" - -#: util/grub-mkfont.c:950 -msgid "SIZE" -msgstr "KÃCH-Cá» " - -#: util/grub-mkfont.c:950 -msgid "set font size" -msgstr "đặt kích cỡ phông" - -#: util/grub-mkfont.c:951 -msgid "set font descent" -msgstr "đặt kích cỡ phông nhá»" - -#: util/grub-mkfont.c:952 -msgid "set font ascent" -msgstr "đặt kích cỡ phông lá»›n" - -#: util/grub-mkfont.c:953 -msgid "convert to bold font" -msgstr "chuyển sang phông chữ đậm" - -#: util/grub-mkfont.c:954 -msgid "force autohint" -msgstr "ép buá»™c tá»±-động-gợi-ý" - -#: util/grub-mkfont.c:955 -msgid "disable hinting" -msgstr "tắt gợi ý" - -#. TRANSLATORS: some fonts contain bitmap rendering for -#. some sizes. This option forces rerendering even if -#. pre-rendered bitmap is available. -#. -#: util/grub-mkfont.c:961 -msgid "ignore bitmap strikes when loading" -msgstr "bá» qua vẽ phông chữ có sẵn, bắt vẽ lại khi nó được tải" - -#. TRANSLATORS: It refers to the range of characters in font. -#: util/grub-mkfont.c:1059 util/grub-mkfont.c:1075 -msgid "invalid font range" -msgstr "phạm vi phông chữ không hợp lệ" - -#: util/grub-mkfont.c:1151 -msgid "[OPTIONS] FONT_FILES" -msgstr "[CÃC_TÙY_CHỌN] [TẬP_TIN_PHÔNG]" - -#: util/grub-mkfont.c:1152 -msgid "Convert common font file formats into PF2" -msgstr "Chuyển đổi định dạng phông chữ chung sang PF2" - -#: util/grub-mkfont.c:1182 util/grub-mkrescue.c:483 -#: util/grub-mkstandalone.c:306 -msgid "output file must be specified" -msgstr "tập tin đầu vào cần phải được chỉ ra" - -#: util/grub-mkfont.c:1185 -msgid "FT_Init_FreeType fails" -msgstr "FT_Init_FreeType gặp lá»—i" - -#: util/grub-mkfont.c:1199 -#, c-format -msgid "can't open file %s, index %d: error %d" -msgstr "không thể mở tập tin “%sâ€, mục lục %d: lá»—i %d" - -#: util/grub-mkfont.c:1229 -#, c-format -msgid "can't set %dx%d font size: Freetype error %d: %s" -msgstr "không thể đặt kích thước phông chữ %dx%d: Lá»—i Freetype %d: %s" - -#: util/grub-mkimage.c:67 -msgid "set prefix directory" -msgstr "đặt thư mục tiá»n tố" - -#. TRANSLATORS: "memdisk" here isn't an identifier, it can be translated. -#. "embed" is a verb (command description). " -#: util/grub-mkimage.c:71 -msgid "" -"embed FILE as a memdisk image\n" -"Implies `-p (memdisk)/boot/grub' and overrides any prefix supplied " -"previously, but the prefix itself can be overridden by later options" -msgstr "" -"TẬP_TIN được nhúng như là ảnh đĩa nhá»›\n" -"Hàm ý “-p (memdisk)/boot/grub†và được đè lên bởi bất kỳ tiá»n tố được áp " -"dụng trước, nhưng bản thân tiá»n tố có thể bị ghi đè lên bởi các tùy chá»n sau " -"này" - -#: util/grub-mkimage.c:74 -#, fuzzy -msgid "embed FILE as a device tree (DTB)\n" -msgstr "coi TẬP_TIN nhúng như là cấu hình trước đó" - -#: util/grub-mkimage.c:76 -msgid "embed FILE as an early config" -msgstr "coi TẬP_TIN nhúng như là cấu hình trước đó" - -#. TRANSLATORS: NOTE is a name of segment. -#: util/grub-mkimage.c:80 -msgid "add NOTE segment for CHRP IEEE1275" -msgstr "thêm Ä‘oạn NOTE cho CHRP IEEE1275" - -#: util/grub-mkimage.c:81 -msgid "output a generated image to FILE [default=stdout]" -msgstr "xuất ảnh đã tạo ra TẬP_TIN [mặc định=stdout]" - -#: util/grub-mkimage.c:82 -msgid "FORMAT" -msgstr "ÄỊNH-DẠNG" - -#: util/grub-mkimage.c:100 util/grub-mkstandalone.c:62 -msgid "generate an image in FORMAT" -msgstr "tạo ảnh theo ÄỊNH-DẠNG" - -#: util/grub-mkimage.c:101 util/grub-mkstandalone.c:63 -msgid "available formats:" -msgstr "các định dạng có thể sá»­ dụng:" - -#: util/grub-mkimage.c:152 util/grub-mkstandalone.c:96 -#, c-format -msgid "unknown target format %s\n" -msgstr "không hiểu định dạng đích %s\n" - -#: util/grub-mkimage.c:242 -msgid "[OPTION]... [MODULES]" -msgstr "[TÙY_CHỌN]… [MÔ_ÄUN]" - -#: util/grub-mkimage.c:243 -msgid "Make a bootable image of GRUB." -msgstr "Tạo ảnh có thể khởi động cá»§a GRUB." - -#: util/grub-mkimage.c:273 util/grub-mkstandalone.c:309 -msgid "Target format not specified (use the -O option)." -msgstr "Äịnh dạng đích chưa được chỉ ra (sá»­ dụng tùy chá»n -O)." - -#: util/grub-mkimage.c:282 -msgid "Prefix not specified (use the -p option)." -msgstr "Tiá»n tố chưa được chỉ ra (sá»­ dụng tùy chá»n -p)." - -#: util/grub-mkimage.c:318 util/setup.c:793 -#, fuzzy, c-format -msgid "cannot close `%s': %s" -msgstr "không thể mở “%sâ€: %s" - -#: util/grub-mkimagexx.c:2191 -#, c-format -msgid "" -"`%s' is miscompiled: its start address is 0x%llx instead of 0x%llx: ld.gold " -"bug?" -msgstr "" -"“%s†chưa xong: nó bắt đầu tại địa chỉ 0x%llx thay vì 0x%llx: lá»—i ld.gold?" - -#: util/grub-mklayout.c:53 -msgid "set input filename. Default is STDIN" -msgstr "đặt tên tập tin đầu vào. Mặc định là STDIN" - -#. TRANSLATORS: scan identifier is keyboard key symbolic name. -#: util/grub-mklayout.c:307 -#, c-format -msgid "Unknown keyboard scan identifier %s\n" -msgstr "Không hiểu mã quét bàn phím %s\n" - -#. TRANSLATORS: scan code is keyboard key numeric identifier. -#: util/grub-mklayout.c:390 util/grub-mklayout.c:418 -#, c-format -msgid "Unknown keyboard scan code 0x%02x\n" -msgstr "Không hiểu mã quét bàn phím 0x%02x\n" - -#. TRANSLATORS: this error is triggered when input doesn't contain any -#. key descriptions. -#: util/grub-mklayout.c:438 -msgid "ERROR: no valid keyboard layout found. Check the input.\n" -msgstr "Lá»–I: không tìm thấy bố cục bàn phím hợp lệ nào. Kiểm tra đầu vào.\n" - -#. TRANSLATORS: "one" is a shortcut for "keyboard layout". -#: util/grub-mklayout.c:478 -msgid "Generate GRUB keyboard layout from Linux console one." -msgstr "" -"Tạo bố cục bàn phím GRUB từ má»™t (giao diện bàn Ä‘iá»u khiển) console Linux" - -#: util/grub-mknetdir.c:47 -msgid "root directory of TFTP server" -msgstr "thư mục gốc cá»§a máy chá»§ TFTP" - -#: util/grub-mknetdir.c:49 -msgid "relative subdirectory on network server" -msgstr "thư mục con tương đối trên máy chá»§ mạng" - -#: util/grub-mknetdir.c:88 -msgid "" -"Prepares GRUB network boot images at net_directory/subdir assuming " -"net_directory being TFTP root." -msgstr "" -"Chuẩn bị ảnh khởi động mạng GRUB tại net_directory/subdir coi net_directory " -"là gốc TFTP." - -#: util/grub-mknetdir.c:146 -#, c-format -msgid "unsupported platform %s" -msgstr "không há»— trợ ná»n tảng %s" - -#. TRANSLATORS: First %s is replaced by platform name. Second one by filename. -#: util/grub-mknetdir.c:165 -#, c-format -msgid "" -"Netboot directory for %s created. Configure your DHCP server to point to %s\n" -msgstr "" -"Thư mục khởi động từ mạng cho %s đã được tạo. Cấu hình máy chá»§ DHCP cá»§a bạn " -"chỉ đến %s\n" - -#: util/grub-mkpasswd-pbkdf2.c:46 -msgid "Number of PBKDF2 iterations" -msgstr "Số lần lặp cá»§a PBKDF2" - -#: util/grub-mkpasswd-pbkdf2.c:47 -msgid "Length of generated hash" -msgstr "Äá»™ dài cá»§a mã băm tạo ra" - -#: util/grub-mkpasswd-pbkdf2.c:48 -msgid "Length of salt" -msgstr "Äá»™ dài cá»§a salt" - -#: util/grub-mkpasswd-pbkdf2.c:87 -msgid "Generate PBKDF2 password hash." -msgstr "Tạo mã băm mật khẩu kiểu PBKDF2" - -#: util/grub-mkpasswd-pbkdf2.c:144 util/grub-mkpasswd-pbkdf2.c:151 -msgid "failure to read password" -msgstr "Ä‘á»c mật khẩu thất bại" - -#: util/grub-mkpasswd-pbkdf2.c:146 -msgid "Reenter password: " -msgstr "Nhập lại mật khẩu: " - -#: util/grub-mkpasswd-pbkdf2.c:160 -msgid "passwords don't match" -msgstr "mật khẩu không khá»›p" - -#: util/grub-mkpasswd-pbkdf2.c:169 -msgid "couldn't retrieve random data for salt" -msgstr "không thể nhận vá» dữ liệu ngẫu nhiên cho muối" - -#: util/grub-mkpasswd-pbkdf2.c:184 -#, c-format -msgid "cryptographic error number %d" -msgstr "số cá»§a lá»—i cryptographic (mã hóa) %d" - -#: util/grub-mkpasswd-pbkdf2.c:203 -#, c-format -msgid "PBKDF2 hash of your password is %s\n" -msgstr "Mã băm kiểu PBKDF2 cá»§a mật khẩu cá»§a bạn là %s\n" - -#: util/grub-mkrelpath.c:67 -msgid "No path is specified.\n" -msgstr "Chưa ghi rõ đưá»ng dẫn.\n" - -#: util/grub-mkrelpath.c:78 -msgid "PATH" -msgstr "ÄÆ¯á»œNG_DẪN" - -#: util/grub-mkrelpath.c:79 -msgid "Transform a system filename into GRUB one." -msgstr "Chuyển đổi kiểu tên tập tin hệ thống thành kiểu GRUB." - -#: util/grub-mkrescue.c:100 -msgid "save ROM images in DIR [optional]" -msgstr "ghi lại ảnh ROM vào TMỤC [tùy chá»n]" - -#. TRANSLATORS: xorriso is a program for creating ISOs and burning CDs. -#: util/grub-mkrescue.c:103 -msgid "use FILE as xorriso [optional]" -msgstr "sá»­ dụng TẬP_TIN như là xorriso [tùy chá»n]" - -#: util/grub-mkrescue.c:109 -msgid "use STRING as product name" -msgstr "dùng CHUá»–I như là tên sản phẩm" - -#: util/grub-mkrescue.c:111 -msgid "" -"enable sparc boot. Disables HFS+, APM, ARCS and boot as disk image for i386-" -"pc" -msgstr "" -"bật mồi máy sparc. Tắt HFS+, APM, sparc64 và mồi máy như là ảnh đĩa cho i386-" -"pc" - -#: util/grub-mkrescue.c:112 -msgid "" -"enable ARCS (big-endian mips machines, mostly SGI) boot. Disables HFS+, APM, " -"sparc64 and boot as disk image for i386-pc" -msgstr "" -"bật mồi máy ARCS (máy mips big-endian, phần lá»›n là SGI). Tắt HFS+, APM, " -"sparc64 và mồi máy như là ảnh đĩa cho i386-pc" - -#. TRANSLATORS: it generates one single image which is bootable through any method. -#: util/grub-mkrescue.c:125 -msgid "Make GRUB CD-ROM, disk, pendrive and floppy bootable image." -msgstr "" -"Tạo ảnh đĩa GRUB có thể khởi động được cho CD-ROM, đĩa cứng, usb, đĩa má»m." - -#: util/grub-mkrescue.c:130 -#, c-format -msgid "" -"Generates a bootable CD/USB/floppy image. Arguments other than options to " -"this program are passed to xorriso, and indicate source files, source " -"directories, or any of the mkisofs options listed by the output of `%s'." -msgstr "" -"Tạo ảnh CD/USB/đĩa-má»m có thể khởi động được. Các đối số khác tùy chá»n " -"chương trình này được chuyển qua cho xorriso, và cho biết các tập tin nguồn, " -"thư mục nguồn hay bất kỳ tùy chá»n mkisofs nào được liệt kê bởi lệnh “%sâ€." - -#: util/grub-mkrescue.c:134 -msgid "Option -- switches to native xorriso command mode." -msgstr "Tùy chá»n -- chuyển tá»›i chế độ lệnh xorriso nguyên gốc." - -#: util/grub-mkrescue.c:135 -msgid "Mail xorriso support requests to ." -msgstr "Gá»­i thư yêu cầu há»— trợ vá» xorriso tá»›i ." - -#: util/grub-mkrescue.c:221 util/grub-mkstandalone.c:114 -msgid "[OPTION] SOURCE..." -msgstr "[TÙY_CHỌN] NGUá»’N…" - -#: util/grub-mkrescue.c:257 util/grub-mkrescue.c:300 util/grub-mkrescue.c:588 -#, c-format -msgid "enabling %s support ..." -msgstr "Ä‘ang bật há»— trợ %s …" - -#: util/grub-mkrescue.c:486 -#, fuzzy -msgid "xorriso not found" -msgstr "%s: không tìm thấy" - -#: util/grub-mkrescue.c:623 -msgid "" -"Your xorriso doesn't support `--grub2-boot-info'. Some features are " -"disabled. Please use xorriso 1.2.9 or later." -msgstr "" -"xorriso cá»§a bạn không há»— trợ “--grub2-boot-infoâ€. Má»™t số tính năng bị tắt. " -"Hãy dùng xorriso 1.2.9 hay má»›i hÆ¡n." - -#: util/grub-mkrescue.c:650 -msgid "" -"Your xorriso doesn't support `--grub2-boot-info'. Your core image is too " -"big. Boot as disk is disabled. Please use xorriso 1.2.9 or later." -msgstr "" -"xorriso cá»§a bạn không há»— trợ “--grub2-boot-infoâ€. Ảnh lõi cá»§a bạn quá lá»›n. " -"Tính năng coi Boot như là đĩa bị tắt. Hãy dùng xorriso 1.2.9 hay má»›i hÆ¡n." - -#: util/grub-mkstandalone.c:115 -msgid "" -"Generate a standalone image (containing all modules) in the selected format" -msgstr "Tạo ảnh đĩa dạng gá»™p (chứa toàn bá»™ các mô-Ä‘un) theo định dạng đã chá»n" - -#: util/grub-mkstandalone.c:115 -msgid "Graft point syntax (E.g. /boot/grub/grub.cfg=./grub.cfg) is accepted" -msgstr "Cú pháp Ä‘iểm Graft được chấp nhận (Vd: /boot/grub/grub.cfg=./grub.cfg)" - -#: util/grub-mount.c:552 -msgid "IMAGE1 [IMAGE2 ...] MOUNTPOINT" -msgstr "ẢNH1 [ẢNH2 …] ÄIỂN_GẮN" - -#: util/grub-mount.c:575 -msgid "need an image and mountpoint" -msgstr "cần má»™t ảnh và Ä‘iểm-gắn" - -#: util/grub-probe.c:731 -msgid "given argument is a system device, not a path" -msgstr "đưa ra tham số là thiết bị hệ thống, không phải đưá»ng dẫn" - -#: util/grub-probe.c:736 -msgid "separate items in output using ASCII NUL characters" -msgstr "ngăn cách các mục tin trong đầu ra sá»­ dụng các ký tá»± NULL ASCII" - -#: util/grub-probe.c:754 -#, c-format -msgid "[default=%s]" -msgstr "[mặc định=%s]" - -#: util/grub-probe.c:756 -msgid "print TARGET" -msgstr "in ÄÃCH" - -#: util/grub-probe.c:757 -msgid "available targets:" -msgstr "các đích có thể dùng:" - -#: util/grub-probe.c:839 -msgid "[OPTION]... [PATH|DEVICE]" -msgstr "[TÙY_CHỌN]… [ÄÆ¯á»œNG DẪN|THIẾT_BỊ]" - -#: util/grub-probe.c:840 -msgid "" -"Probe device information for a given path (or device, if the -d option is " -"given)." -msgstr "" -"Thông tin thiết bị thăm dò được cho đưá»ng dẫn đã cho (hoặc thiết bị, nếu tùy " -"chá»n -d được chỉ ra)." - -#: util/grub-render-label.c:60 -msgid "read text from FILE." -msgstr "Ä‘á»c văn bản từ TẬP_TIN." - -#: util/grub-render-label.c:62 -msgid "use COLOR for text" -msgstr "dùng MÀU cho chữ" - -#: util/grub-render-label.c:64 -msgid "use COLOR for background" -msgstr "dùng MÀU cho ná»n" - -#. TRANSLATORS: The result is always stored to file and -#. never shown directly, so don't use "show" as synonym for render. Use "create" if -#. "render" doesn't translate directly. -#: util/grub-render-label.c:69 -msgid "set the label to render" -msgstr "đặt nhãn để vẽ (render)" - -#: util/grub-render-label.c:73 -msgid "use FILE as font (PF2)." -msgstr "dùng TẬP_TIN như là phông chữ (PF2)." - -#. TRANSLATORS: This file takes a text and creates a graphical representation of it, -#. putting the result into .disk_label file. The result is always stored to file and -#. never shown directly, so don't use "show" as synonym for render. Use "create" if -#. "render" doesn't translate directly. -#: util/grub-render-label.c:136 -msgid "Render Apple .disk_label." -msgstr "Render Apple .disk_label." - -#: util/grub-render-label.c:158 util/grub-syslinux2cfg.c:169 -msgid "Missing arguments\n" -msgstr "Thiếu đối số\n" - -#: util/grub-script-check.c:87 -msgid "[PATH]" -msgstr "[ÄÆ¯á»œNG_DẪN]" - -#: util/grub-script-check.c:88 -msgid "Checks GRUB script configuration file for syntax errors." -msgstr "Kiểm tra tập tin cấu hình “GRUB script†xem có lá»—i gì không." - -#: util/grub-script-check.c:207 -#, c-format -msgid "Syntax error at line %u\n" -msgstr "Lá»—i cú pháp trên dòng %u.\n" - -#: util/grub-script-check.c:212 -#, c-format -msgid "Script `%s' contains no commands and will do nothing\n" -msgstr "Script “%s†không chứa câu lệnh nào nên sẽ không thi hành gì\n" - -#: util/grub-setup.c:79 -#, c-format -msgid "use FILE as the boot image [default=%s]" -msgstr "sá»­ dụng TẬP_TIN như là ảnh khởi động [mặc định=%s]" - -#: util/grub-setup.c:81 -#, c-format -msgid "use FILE as the core image [default=%s]" -msgstr "sá»­ dụng TẬP_TIN như là ảnh lõi [mặc định=%s]" - -#: util/grub-setup.c:210 -msgid "No device is specified.\n" -msgstr "Chưa ghi rõ thiết bị.\n" - -#: util/grub-setup.c:224 -msgid "" -"Set up images to boot from DEVICE.\n" -"\n" -"You should not normally run this program directly. Use grub-install instead." -msgstr "" -"Cài đặt các ảnh để khởi động từ THIẾT_BỊ.\n" -"\n" -"Bạn không nên chạy chương trình này trá»±c tiếp. Dùng lệnh grub-install để " -"thay thế." - -#: util/grub-setup.c:228 -msgid "DEVICE must be an OS device (e.g. /dev/sda)." -msgstr "THIẾT_BỊ phải là má»™t thiết bị OS (ví dụ /dev/sda)." - -#: util/grub-setup.c:297 -#, c-format -msgid "Invalid device `%s'.\n" -msgstr "Thiết bị không đúng “%sâ€.\n" - -#: util/grub-syslinux2cfg.c:64 -msgid "root directory as it will be seen on runtime [default=/]." -msgstr "thư mục gốc như là nó khi Ä‘ang chạy [mặc định=/]." - -#: util/grub-syslinux2cfg.c:69 -msgid "" -"current directory of syslinux as it will be seen on runtime [default is " -"parent directory of input file]." -msgstr "" -"thư mục hiện tại cá»§a syslinux như là khi nó Ä‘ang chạy [mặc định là thư mục " -"cha cá»§a tập tin đầu vào]." - -#: util/grub-syslinux2cfg.c:74 -msgid "write output to FILE [default=stdout]." -msgstr "xuất cấu hình đã tạo ra TẬP_TIN [mặc định=stdout]." - -#: util/grub-syslinux2cfg.c:148 -msgid "Transform syslinux config into GRUB one." -msgstr "Chuyển đổi cấu hình từ kiểu syslinux sang thành kiểu GRUB." - -#: util/mkimage.c:688 util/mkimage.c:717 util/mkimage.c:734 -msgid "cannot compress the kernel image" -msgstr "không thể nén ảnh hạt nhân" - -#: util/mkimage.c:766 util/mkimage.c:1077 -#, c-format -msgid "unknown compression %d" -msgstr "kiểu nén chưa được biết đến %d" - -#: util/mkimage.c:1088 -msgid "Decompressor is too big" -msgstr "Tập tin đã giải nén quá lá»›n" - -#: util/mkimage.c:1133 -#, c-format -msgid "core image is too big (0x%x > 0x%x)" -msgstr "ảnh lõi quá lá»›n (0x%x > 0x%x)" - -#: util/mkimage.c:1140 -#, c-format -msgid "kernel image is too big (0x%x > 0x%x)" -msgstr "ảnh cá»§a nhân quá lá»›n (0x%x > 0x%x)" - -#: util/mkimage.c:1220 util/mkimage.c:1501 -#, c-format -msgid "diskboot.img size must be %u bytes" -msgstr "Kích cỡ diskboot.img phải là %u byte." - -#: util/mkimage.c:1571 -msgid "" -"fwstart.img doesn't match the known good version. proceed at your own risk" -msgstr "" -"fwstart.img không khá»›p vá»›i bất kỳ phiên bản tốt nào. Bạn phải tá»± chịu trách " -"nhiệm khi thá»±c hiện nó" - -#: util/mkimage.c:1575 util/mkimage.c:1601 -msgid "firmware image is too big" -msgstr "ảnh firmware quá lá»›n" - -#: util/resolve.c:93 -#, c-format -msgid "invalid line format: %s" -msgstr "định dạng dòng không hợp lệ: %s" - -#: util/setup.c:167 -msgid "the first sector of the core file is not sector-aligned" -msgstr "" -"rãnh ghi thứ nhất cá»§a tập tin lõi không phải được căn chỉnh theo rãnh ghi" - -#: util/setup.c:177 -msgid "non-sector-aligned data is found in the core file" -msgstr "" -"trong tập tin lõi tìm được dữ liệu không phải được căn chỉnh theo rãnh ghi" - -#: util/setup.c:199 -msgid "the sectors of the core file are too fragmented" -msgstr "trong tập tin lõi, các rãnh ghi bị phân mảnh quá" - -#: util/setup.c:280 -#, c-format -msgid "the size of `%s' is not %u" -msgstr "“%s†không có kích cỡ %u" - -#: util/setup.c:290 -#, c-format -msgid "the size of `%s' is too small" -msgstr "“%s†có kích cỡ quá nhá»" - -#: util/setup.c:428 -msgid "" -"Attempting to install GRUB to a disk with multiple partition labels or both " -"partition label and filesystem. This is not supported yet." -msgstr "" -"Äang thá»­ cài đặt GRUB vào má»™t đĩa vá»›i Ä‘a nhãn phân vùng, hoặc cả hai nhãn " -"phân vùng và hệ thống tập tin. Tính năng này chưa được há»— trợ." - -#: util/setup.c:441 -#, c-format -msgid "unable to identify a filesystem in %s; safety check can't be performed" -msgstr "" -"không nhận ra được má»™t hệ thống tập tin trong %s nên không thá»±c hiện tiến " -"trình kiểm tra tính an toàn" - -#. TRANSLATORS: Filesystem may reserve the space just GRUB isn't sure about it. -#: util/setup.c:445 -#, c-format -msgid "" -"%s appears to contain a %s filesystem which isn't known to reserve space for " -"DOS-style boot. Installing GRUB there could result in FILESYSTEM " -"DESTRUCTION if valuable data is overwritten by grub-setup (--skip-fs-probe " -"disables this check, use at your own risk)" -msgstr "" -"Có vẻ là %s chứa má»™t hệ thống tập tin %s mà (theo thông tin hiện thá»i) không " -"dành riêng sức chứa cho sá»± khởi động kiểu DOS. Vì thế việc cài đặt GRUB vào " -"đó có thể gây ra HỆ THá»NG TẬP TIN BỊ HỦY nếu dữ liệu quan trá»ng bị ghi đè " -"bởi tiến trình cài đặt GRUB (grub-setup). Tùy chá»n “--skip-fs-probe†tắt hàm " -"kiểm tra này: hãy tá»± chịu trách nhiệm khi sá»­ dụng nó." - -#. TRANSLATORS: Partition map may reserve the space just GRUB isn't sure about it. -#: util/setup.c:458 -#, c-format -msgid "" -"%s appears to contain a %s partition map which isn't known to reserve space " -"for DOS-style boot. Installing GRUB there could result in FILESYSTEM " -"DESTRUCTION if valuable data is overwritten by grub-setup (--skip-fs-probe " -"disables this check, use at your own risk)" -msgstr "" -"Có vẻ là %s chứa má»™t ánh xạ phân vùng %s mà (theo thông tin hiện thá»i) không " -"dành riêng chứa cho bá»™ khởi động kiểu DOS. Vì thế việc cài đặt GRUB vào đó " -"có thể gây ra BỘ PHà HỦY HỆ THá»NG TẬP TIN BỊ HỦY nếu dữ liệu quan trá»ng bị " -"ghi đè bởi tiến trình cài đặt GRUB (grub-setup) (Tùy chá»n “--skip-fs-probe†" -"tắt hàm kiểm tra này, hãy tá»± chịu trách nhiệm khi sá»­ dụng nó)" - -#: util/setup.c:465 -#, c-format -msgid "" -"%s appears to contain a %s partition map and LDM which isn't known to be a " -"safe combination. Installing GRUB there could result in FILESYSTEM " -"DESTRUCTION if valuable data is overwritten by grub-setup (--skip-fs-probe " -"disables this check, use at your own risk)" -msgstr "" -"Có vẻ là %s chứa má»™t ánh xạ phân vùng %s và LDM cái mà (theo thông tin hiện " -"thá»i) không biết có phải là tổ hợp an toàn hay không. Vì thế việc cài đặt " -"GRUB vào đó có thể gây ra BỘ PHà HỦY HỆ THá»NG TẬP TIN nếu dữ liệu quan trá»ng " -"bị ghi đè bởi tiến trình cài đặt GRUB (grub-setup) (tùy chá»n “--skip-fs-" -"probe†tắt hàm kiểm tra này, hãy tá»± chịu trách nhiệm khi sá»­ dụng nó)" - -#: util/setup.c:478 -msgid "" -"Attempting to install GRUB to a partitionless disk or to a partition. This " -"is a BAD idea." -msgstr "" -"Äang thá»­ cài đặt GRUB vào má»™t đĩa không có phân vùng hoặc má»™t phân vùng. Äây " -"là má»™t ý kiến Tá»’I." - -#: util/setup.c:483 -msgid "" -"Attempting to install GRUB to a disk with multiple partition labels. This " -"is not supported yet." -msgstr "" -"Äang thá»­ cài đặt GRUB vào má»™t đĩa vá»›i nhiá»u nhãn phân vùng. Äặc tính này vẫn " -"chưa được há»— trợ." - -#: util/setup.c:489 -#, c-format -msgid "Partition style `%s' doesn't support embedding" -msgstr "Kiểu phân vùng “%s†không há»— trợ nhúng" - -#: util/setup.c:496 -#, c-format -msgid "File system `%s' doesn't support embedding" -msgstr "Hệ thống tập tin “%s†không há»— trợ nhúng" - -#: util/setup.c:537 -msgid "Your embedding area is unusually small. core.img won't fit in it." -msgstr "Bạn có má»™t vùng nhúng nhá» bất thưá»ng. core.img không nằm vừa trong nó." - -#: util/setup.c:559 util/setup.c:725 util/setup.c:844 -msgid "no terminator in the core image" -msgstr "ảnh lõi không chứa dấu chấm dứt" - -#: util/setup.c:622 -msgid "core.img version mismatch" -msgstr "không khá»›p phiên bản core.img" - -#: util/setup.c:675 -msgid "" -"embedding is not possible, but this is required for RAID and LVM install" -msgstr "" -"không thể nhúng được, nhưng mà chức năng này được yêu cầu cho cài đặt RAID " -"hay LVM" - -#: util/setup.c:682 -#, c-format -msgid "can't determine filesystem on %s" -msgstr "chưa xác định được kiểu hệ thống tập tin trên %s" - -#: util/setup.c:685 -#, c-format -msgid "filesystem `%s' doesn't support blocklists" -msgstr "hệ thống tập tin “%s†không há»— trợ danh sách cấm" - -#. TRANSLATORS: cross-disk refers to /boot being on one disk -#. but MBR on another. -#: util/setup.c:694 -msgid "embedding is not possible, but this is required for cross-disk install" -msgstr "" -"không thể nhúng được, nhưng mà chức năng được yêu cầu khi cài đặt cross-" -"disk\n" -"* cross-disk: thư mục /boot ở trên má»™t đĩa nhưng MBR lại trên má»™t cái khác" - -#: util/setup.c:700 -msgid "" -"Embedding is not possible. GRUB can only be installed in this setup by " -"using blocklists. However, blocklists are UNRELIABLE and their use is " -"discouraged." -msgstr "" -"Không thể nhúng được. GRUB chỉ cài đặt được vào cài đặt này bằng cách sá»­ " -"dụng danh sách cấm. Tuy nhiên, danh sách cấm vẫn không đáng tin và cách dùng " -"cá»§a chúng thì khó khăn." - -#. TRANSLATORS: Here GRUB refuses to continue with blocklist install. -#: util/setup.c:705 -msgid "will not proceed with blocklists" -msgstr "sẽ không xá»­ lý vá»›i danh sách cấm" - -#: util/setup.c:817 util/setup.c:837 -msgid "blocklists are invalid" -msgstr "danh sách cấm không hợp lệ" - -#: util/setup.c:847 -msgid "blocklists are incomplete" -msgstr "danh sách cấm chưa hoàn thiện" - -#~ msgid "%.*s: ARGP_HELP_FMT parameter must be positive" -#~ msgstr "%.*s: tham số “ARGP_HELP_FMT†phải là số dương" - -#~ msgid "%s: option '--%s' doesn't allow an argument\n" -#~ msgstr "%s: tùy chá»n “--%s†không cho phép đối số\n" - -#~ msgid "%s: unrecognized option '--%s'\n" -#~ msgstr "%s: không nhận ra tùy chá»n “--%sâ€\n" - -#~ msgid "%s: option '-W %s' doesn't allow an argument\n" -#~ msgstr "%s: tùy chá»n “-W %s†không cho phép đối số\n" - -#~ msgid "%s: option '-W %s' requires an argument\n" -#~ msgstr "%s: tùy chá»n “-W %s†yêu cầu má»™t đối số\n" - -#~ msgid "Usage: %s -o OUTPUT CKBMAP_ARGUMENTS...\\n" -#~ msgstr "Cách dùng: %s -o KẾT-XUẤT CÃC-THAM-Sá»-CKBMAP…\\n" - -#~ msgid "Make GRUB keyboard layout file." -#~ msgstr "Tạo tập tin bố cục bàn phím GRUB." - -#~ msgid "print this message and exit" -#~ msgstr "hiển thị trợ giúp này rồi thoát" - -#~ msgid "print the version information and exit" -#~ msgstr "hiển thị ra thông tin phiên bản rồi thoát" - -#~ msgid "%s generates a keyboard layout for GRUB using ckbcomp\\n" -#~ msgstr "%s tạo giao diện bàn phím cho GRUB sá»­ dụng ckbcomp\\n" - -#~ msgid "Report bugs to ." -#~ msgstr "" -#~ "Hãy thông báo lá»—i cho .\n" -#~ "Thông báo lá»—i dịch cho: ." - -#~ msgid "%s: option requires an argument -- `%s'\\n" -#~ msgstr "%s: tùy chá»n yêu cầu má»™t tham số -- “%sâ€\\n" - -#~ msgid "Usage: %s [OPTION]\\n" -#~ msgstr "Sá»­ dụng: %s [TÙY_CHỌN]\\n" - -#~ msgid "Generate a grub config file" -#~ msgstr "Tạo tập tin cấu hình" - -#~ msgid "output generated config to FILE [default=stdout]" -#~ msgstr "xuất cấu hình đã tạo ra TẬP_TIN [mặc định=stdout]" - -#~ msgid "Unrecognized option `%s'\\n" -#~ msgstr "Không chấp nhận tùy chá»n “%sâ€\\n" - -#~ msgid "%s: You must run this as root\\n" -#~ msgstr "" -#~ "%s: Bạn phải chạy chương trình này vá»›i tư cách siêu ngưá»i dùng (root)\\n" - -#~ msgid "%s: Not found.\\n" -#~ msgstr "%s: Không tìm thấy.\\n" - -#~ msgid "Generating grub configuration file ..." -#~ msgstr "Äang tạo tập tin cấu hình grub …" - -#~ msgid "" -#~ "Syntax errors are detected in generated GRUB config file.\n" -#~ "Ensure that there are no errors in /etc/default/grub\n" -#~ "and /etc/grub.d/* files or please file a bug report with\n" -#~ "%s file attached." -#~ msgstr "" -#~ "Các lá»—i cú pháp đã được phát hiện trong tập tin cấu hình GRUB đã tạo.\n" -#~ "Hãy chắc chắn rằng không có lá»—i nào trong tập tin /etc/default/grub\n" -#~ "và /etc/grub.d/* hoặc báo cáo tập tin lá»—i này bằng cách đính\n" -#~ "kèm tập tin %s." - -#~ msgid "done" -#~ msgstr "đã xong" - -#~ msgid "Warning:" -#~ msgstr "Cảnh báo:" - -#~ msgid "Usage: %s [OPTION] MENU_ENTRY\\n" -#~ msgstr "Cách dùng: %s [CÃC-TÙY_CHỌN] ÄIỂM-VÀO-MENU\\n" - -#~ msgid "Set the default boot menu entry for GRUB, for the next boot only." -#~ msgstr "" -#~ "Äặt mục menu mặc định sẽ khởi động cho GRUB, chú ý là chỉ áp dụng cho lần " -#~ "khởi động sau." - -#~ msgid "" -#~ "expect GRUB images under the directory DIR/%s instead of the %s directory" -#~ msgstr "cần ảnh GRUB nằm dưới thư mục T-MỤC/%s thay vì tại thư mục %s" - -#~ msgid "" -#~ "MENU_ENTRY is a number, a menu item title or a menu item identifier. " -#~ "Please note that menu items in\n" -#~ "submenus or sub-submenus require specifying the submenu components and " -#~ "then the\n" -#~ "menu item component. The titles should be separated using the greater-" -#~ "than\n" -#~ "character (>) with no extra spaces. Depending on your shell some " -#~ "characters including > may need escaping. More information about this is " -#~ "available\n" -#~ "in the GRUB Manual in the section about the 'default' command. " -#~ msgstr "" -#~ "MENU_ENTRY là má»™t con số, má»™t tiêu đỠhay định danh cá»§a má»™t trình đơn. " -#~ "Hãy chú ý là các mục trình đơn trong\n" -#~ "trình đơn con hoặc là trình đơn cháu yêu cầu phải chỉ ra thành phần cá»§a " -#~ "trình đơn con và sau đó là\n" -#~ "thành phần cá»§a mục trình đơn. Tiêu đỠphải được ngăn cách sá»­ dụng ký tá»± " -#~ "lá»›n hÆ¡n\n" -#~ "(>) mà không có thêm các khoảng trắng thêm. Phụ thuá»™c vào hệ vá» cá»§a bạn " -#~ "mà má»™t số ký tá»± bao gồm > cần được thoát chuá»—i. Äể có thêm thông tin hãy " -#~ "xem trong\n" -#~ "sổ tay hướng dẫn GRUB tại phần lệnh “defaultâ€. " - -#~ msgid "More than one menu entry?" -#~ msgstr "Có nhiá»u hÆ¡n má»™t mục menu?" - -#~ msgid "Menu entry not specified." -#~ msgstr "Äiểm vào menu chưa được chỉ ra." - -#~ msgid "Set the default boot menu entry for GRUB." -#~ msgstr "Äặt mục menu khởi động mặc định cho GRUB." - -#~ msgid "This requires setting GRUB_DEFAULT=saved in %s/default/grub.\\n" -#~ msgstr "" -#~ "Cái này yêu cầu cài đặt GRUB_DEFAULT=saved trong %s/default/grub.\\n" - -#~ msgid "MENU_ENTRY is a number, a menu item title or a menu item identifier." -#~ msgstr "" -#~ "MENU_ENTRY là má»™t con số, má»™t tiêu đỠcá»§a mục cá»§a menu hoặc má»™t định danh " -#~ "má»™t mục cá»§a menu." - -#~ msgid "" -#~ "Requested serial terminal but GRUB_SERIAL_COMMAND is unspecified. Default " -#~ "parameters will be used." -#~ msgstr "" -#~ "Äã yêu cầu thiết bị cuối nối tiếp nhưng không chỉ ra GRUB_SERIAL_COMMAND. " -#~ "Tham số mặc định sẽ được sá»­ dụng." - -#~ msgid "Found theme: %s\\n" -#~ msgstr "Tìm thấy theme: %s\\n" - -#~ msgid "Found background: %s\\n" -#~ msgstr "Tìm thấy ná»n: %s\\n" - -#~ msgid "Unsupported image format" -#~ msgstr "Không há»— trợ định dạng ảnh" - -#~ msgid "" -#~ "Setting GRUB_TIMEOUT to a non-zero value when GRUB_HIDDEN_TIMEOUT is set " -#~ "is no longer supported." -#~ msgstr "" -#~ "Äang đặt GRUB_TIMEOUT thành giá-trị không zero khi GRUB_HIDDEN_TIMEOUT " -#~ "được đặt thì không còn được há»— trợ nữa." - -#~ msgid "Found GNU Mach: %s" -#~ msgstr "Tìm thấy GNU Mach: %s" - -#~ msgid "Found Hurd module: %s" -#~ msgstr "Tìm thấy mô-Ä‘un Hurd: %s" - -#~ msgid "Some Hurd stuff found, but not enough to boot." -#~ msgstr "Má»™t số thành phần Hurd được tìm thấy, nhưng không đủ để khởi động." - -#~ msgid "%s, with Hurd %s (recovery mode)" -#~ msgstr "%s, vá»›i Hurd %s (chế độ phục hồi)" - -#~ msgid "%s, with Hurd %s" -#~ msgstr "%s, vá»›i Hurd %s" - -#~ msgid "" -#~ "Please don't use old title `%s' for GRUB_DEFAULT, use `%s' (for versions " -#~ "before 2.00) or `%s' (for 2.00 or later)" -#~ msgstr "" -#~ "Äừng sá»­ dụng tiêu đỠcÅ© “%s†cho GRUB_DEFAULT, sá»­ dụng “%s†(cho các " -#~ "phiên trước 2.00) hoặc “%s†(cho 2.00 hoặc má»›i hÆ¡n)" - -#~ msgid "Loading GNU Mach ..." -#~ msgstr "Äang tải GNU Mach …" - -#~ msgid "Loading the Hurd ..." -#~ msgstr "Äang tải Hurd …" - -#~ msgid "Advanced options for %s" -#~ msgstr "Tùy chá»n nâng cao cho %s" - -#~ msgid "Loading kernel of Illumos ..." -#~ msgstr "Äang tải hạt nhân cá»§a Illumos …" - -#~ msgid "%s, with kFreeBSD %s (recovery mode)" -#~ msgstr "%s, vá»›i kFreeBSD %s (chế độ phục hồi)" - -#~ msgid "%s, with kFreeBSD %s" -#~ msgstr "%s, vá»›i kFreeBSD %s" - -#~ msgid "Loading kernel of FreeBSD %s ..." -#~ msgstr "Äang tải hạt nhân cá»§a FreeBSD %s …" - -#~ msgid "Found kernel of FreeBSD: %s\\n" -#~ msgstr "Tìm thấy hạt nhân FreeBSD.: %s\\n" - -#~ msgid "Found kernel module directory: %s\\n" -#~ msgstr "Tìm thấy thư mục mô-Ä‘un hạt nhân: %s\\n" - -#~ msgid "%s, with Linux %s (recovery mode)" -#~ msgstr "%s, vá»›i Linux %s (chế độ phục hồi)" - -#~ msgid "%s, with Linux %s" -#~ msgstr "%s, vá»›i Linux %s" - -#~ msgid "Loading Linux %s ..." -#~ msgstr "Äang tải Linux %s …" - -#~ msgid "Loading initial ramdisk ..." -#~ msgstr "Äang tải đĩa RAM khởi tạo …" - -#~ msgid "Found linux image: %s\\n" -#~ msgstr "Tìm thấy ảnh linux: %s\\n" - -#~ msgid "Found initrd image: %s\\n" -#~ msgstr "Tìm thấy ảnh initrd: %s\\n" - -#~ msgid "%s, with kernel %s (via %s, recovery mode)" -#~ msgstr "%s, vá»›i kernel %s (thông qua %s, chế độ phục hồi)" - -#~ msgid "%s, with kernel %s (via %s)" -#~ msgstr "%s, vá»›i kernel %s (thông qua %s)" - -#~ msgid "Found NetBSD kernel: %s\\n" -#~ msgstr "Tải hạt nhân NetBSD: %s\\n" - -#~ msgid "Windows Vista/7 (loader)" -#~ msgstr "Windows Vista/7 (bá»™ tải)" - -#~ msgid "Windows NT/2000/XP (loader)" -#~ msgstr "Windows NT/2000/XP (bá»™ tải)" - -#~ msgid "Found %s on %s (%s)\\n" -#~ msgstr "Tìm thấy %s trên %s (%s)\\n" - -#~ msgid "(32-bit)" -#~ msgstr "(32-bit)" - -#~ msgid "(64-bit)" -#~ msgstr "(64-bit)" - -#~ msgid "(on %s)" -#~ msgstr "(trên %s)" - -#~ msgid "%s, with Xen %s and Linux %s (recovery mode)" -#~ msgstr "%s, vá»›i Xen %s và Linux %s (chế độ phục hồi)" - -#~ msgid "%s, with Xen %s and Linux %s" -#~ msgstr "%s, vá»›i Xen %s và Linux %s" - -#~ msgid "%s, with Xen hypervisor" -#~ msgstr "%s, vá»›i bá»™ ảo hóa Xen" - -#~ msgid "Loading Xen %s ..." -#~ msgstr "Äang tải Xen %s …" - -#~ msgid "Xen hypervisor, version %s" -#~ msgstr "Bá»™ ảo hóa Xen, phiên bản %s" - -#~ msgid "Advanced options for %s (with Xen hypervisor)" -#~ msgstr "Các tùy chá»n cấp cao cho %s (vá»›i bá»™ ảo hóa Xen)" - -#~ msgid "Found %s on %s\\n" -#~ msgstr "Tìm thấy %s trên %s\\n" - -#~ msgid "%s is not yet supported by grub-mkconfig.\\n" -#~ msgstr "%s vẫn chưa được há»— trợ bởi grub-mkconfig.\\n" - -#~ msgid "Unsupported substitution flag: 0x%x\n" -#~ msgstr "Cá» thay-thế (substitution) không được há»— trợ: 0x%x\n" - -#~ msgid "Unknown gsub font feature 0x%x (%s)\n" -#~ msgstr "Không hiểu đặc Ä‘iểm phông chữ gsub 0x%x (%s)\n" - -#~ msgid "root directory of the syslinux disk (default /)." -#~ msgstr "thư mục gốc cá»§a đĩa syslinux (mặc định /)." - -#~ msgid "assume isolinux." -#~ msgstr "coi là isolinux." - -#~ msgid "assume pxelinux." -#~ msgstr "coi là pxelinux." - -#~ msgid "assume syslinux." -#~ msgstr "coi là syslinux." - -#~ msgid "%s is neither hfs nor hfsplus" -#~ msgstr "%s mà không có hfs cÅ©ng không có hfsplus" - -#~ msgid "copies GRUB images into net_directory/subdir/target_cpu-platform." -#~ msgstr "" -#~ "không thể sao chép ảnh GRUB vào thư_mục_net/subdir/ná»n-móng-cpu-đích." - -#~ msgid "" -#~ "Generates a bootable rescue image with specified source files, source " -#~ "directories, or mkisofs options listed by the output of `%s'.\n" -#~ "\n" -#~ "Option -- switches to native xorriso command mode.\n" -#~ "\n" -#~ "Mail xorriso support requests to ." -#~ msgstr "" -#~ "Tạo ra má»™t ảnh cứu há»™ có thể khởi động vá»›i những tập tin nguồn, thư mục " -#~ "nguồn đã chỉ ra hoặc các tùy chá»n mkisofs được liệt kê bằng kết xuất từ " -#~ "“%sâ€\n" -#~ "\n" -#~ "Tùy chá»n -- chuyển sang chế độ lệnh xorriso cÆ¡ bản.\n" -#~ "\n" -#~ "Yêu cầu há»— trợ qua thư xin gá»­i đến ." - -#~ msgid "" -#~ "print filesystem module, GRUB drive, system device, partition map module, " -#~ "abstraction module or cryptographic container UUID [default=fs]" -#~ msgstr "" -#~ "hiển thị mô-Ä‘un hệ thống tập tin, đĩa GRUB, thiết bị hệ thống, mô-Ä‘un ánh " -#~ "xạ phân vùng, mô-Ä‘un trừu tượng hoặc UUID thùng chứa mã hóa [mặc định=fs]" - -#~ msgid "current directory of the syslinux disk [default=$pwd]." -#~ msgstr "thư mục hiện tại cá»§a đĩa syslinux [mặc định=$pwd]." - -#~ msgid "use DIR as root directory [default=/]" -#~ msgstr "dùng TMỤC làm thư mục gốc [mặc định=/]" - -#~ msgid "Address range not associated with RAM" -#~ msgstr "Vùng địa chỉ không kết hợp vá»›i RAM" - -#~ msgid "PUBKEY_FILE" -#~ msgstr "TẬP_TIN_KHÓA-CÔNG" - -#~ msgid "grub_memalign is not supported on your system" -#~ msgstr "grub_memalign không được há»— trợ trên hệ thống cá»§a bạn" - -#~ msgid "If FILENAME is `-', the default value %s is used." -#~ msgstr "Nếu TÊN_TẬP_TIN là “-â€, thì giá trị mặc định %s sẽ được dùng." - -#~ msgid "save only the ASCII bitmaps" -#~ msgstr "chỉ ghi lại các ảnh bít ASCII." - -#~ msgid "create width summary file" -#~ msgstr "tạo tập tin tóm lược kích thước" - -#~ msgid "Option --ascii-bitmaps doesn't accept ranges (it always uses ASCII)." -#~ msgstr "" -#~ "Tùy chá»n --ascii-bitmaps không chấp nhận má»™t vùng (nó luôn sá»­ dụng ASCII)." - -#~ msgid "WARNING: your random generator isn't known to be secure\n" -#~ msgstr "" -#~ "CẢNH BÃO: bá»™ tạo số ngẫu nhiên cá»§a bạn có lẽ không được an toàn lắm\n" - -#~ msgid "failed to read the first sector of the core image" -#~ msgstr "lá»—i Ä‘á»c rãnh ghi thứ nhất cá»§a ảnh lõi" - -#~ msgid "use FILE as grub-setup" -#~ msgstr "sá»­ dụng TẬP_TIN như là grub-setup" - -#~ msgid "use FILE as grub-mkrelpath" -#~ msgstr "sá»­ dụng TẬP_TIN như là grub-mkrelpath" - -#~ msgid "use FILE as grub-probe" -#~ msgstr "sá»­ dụng TẬP_TIN như là grub-probe" - -#~ msgid "INSTALL_DEVICE must be system device filename." -#~ msgstr "THIẾT_BỊ_CÀI_ÄẶT phải là tên tập tin thiết bị hệ thống" - -#~ msgid "" -#~ "Path `%s' is not readable by GRUB on boot. Installation is impossible. " -#~ "Aborting.\\n" -#~ msgstr "" -#~ "ÄÆ°á»ng dẫn “%s†không thể Ä‘á»c được bởi GRUB trên boot. Cài đặt không thể " -#~ "thá»±c hiện được. Äang bá» qua.\\n" - -#~ msgid "Auto-detection of a filesystem of %s failed.\\n" -#~ msgstr "Tá»± động dò tìm cá»§a má»™t hệ thống tập tin cá»§a %s gặp lá»—i.\\n" - -#~ msgid "Try with --recheck." -#~ msgstr "Thá»­ vá»›i --recheck." - -#~ msgid "" -#~ "If the problem persists please report this together with the output of %s " -#~ "to <%s>" -#~ msgstr "" -#~ "Nếu trục trặc vẫn tiếp tục, xin hãy báo cáo nó cùng vá»›i kết xuất từ %s " -#~ "cho <%s>" - -#~ msgid "`%s' failed.\\n" -#~ msgstr "“%s†gặp lá»—i.\\n" - -#~ msgid "" -#~ "Can't find GRUB drive for %s; unable to create EFI Boot Manager entry.\\n" -#~ msgstr "" -#~ "Không tìm thấy đĩa GRUB cho %s; không thể tạo mục “EFI Boot Managerâ€.\\n" - -#~ msgid "Generating grub.cfg ..." -#~ msgstr "Äang tạo grub.cfg …" - -#~ msgid "use FILE as grub-glue-efi" -#~ msgstr "sá»­ dụng TẬP_TIN như là “grub-glue-efiâ€" - -#~ msgid "use FILE as grub-render-label" -#~ msgstr "sá»­ dụng TẬP_TIN như là “grub-render-labelâ€" - -#~ msgid "Packed pixel " -#~ msgstr "Bảng màu" diff --git a/thirdparty/grub-2.04/po/zh_CN.gmo b/thirdparty/grub-2.04/po/zh_CN.gmo deleted file mode 100644 index 38b311fafc69e26673dd8a3d039d84385d50aae8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 84929 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 diff --git a/thirdparty/grub-2.04/po/zh_CN.po b/thirdparty/grub-2.04/po/zh_CN.po deleted file mode 100644 index ce209a12c..000000000 --- a/thirdparty/grub-2.04/po/zh_CN.po +++ /dev/null @@ -1,7408 +0,0 @@ -# grub 软件包的简体中文翻译。 -# Copyright (C) 2009, 2010, 2011 Free Software Foundation, Inc. -# This file is distributed under the same license as the grub package. -# Zhengyu Ji , 2009. -# Xin Ye , 2009. -# Eleanor Chen , 2010. -# Aron Xu , 2009, 2010, 2011. -# Boyuan Yang <073plan@gmail.com>, 2018, 2019. -# wwj402 , 2018. -# -msgid "" -msgstr "" -"Project-Id-Version: grub 2.04-pre1\n" -"Report-Msgid-Bugs-To: bug-grub@gnu.org\n" -"POT-Creation-Date: 2019-07-04 16:09+0200\n" -"PO-Revision-Date: 2019-04-25 17:01-0400\n" -"Last-Translator: Boyuan Yang <073plan@gmail.com>\n" -"Language-Team: Chinese (simplified) \n" -"Language: zh_CN\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Bugs: Report translation errors to the Language-Team address.\n" -"X-Generator: Poedit 2.2.1\n" - -#: grub-core/bus/usb/serial/ftdi.c:145 grub-core/bus/usb/serial/pl2303.c:158 -#: grub-core/term/ieee1275/escc.c:169 grub-core/term/ns8250.c:202 -msgid "unsupported serial port speed" -msgstr "䏿”¯æŒçš„串行端å£é€Ÿåº¦" - -#: grub-core/bus/usb/serial/ftdi.c:151 grub-core/bus/usb/serial/pl2303.c:164 -#: grub-core/term/efi/serial.c:116 grub-core/term/ieee1275/escc.c:175 -#: grub-core/term/ns8250.c:208 grub-core/term/serial.c:227 -#: grub-core/term/serial.c:243 -msgid "unsupported serial port parity" -msgstr "䏿”¯æŒçš„串行端å£å¥‡å¶æ ¡éªŒ" - -#: grub-core/bus/usb/serial/ftdi.c:157 grub-core/bus/usb/serial/pl2303.c:170 -#: grub-core/term/efi/serial.c:122 grub-core/term/ieee1275/escc.c:181 -#: grub-core/term/ns8250.c:213 grub-core/term/serial.c:267 -msgid "unsupported serial port stop bits number" -msgstr "䏿”¯æŒçš„串行端å£åœæ­¢ä½" - -#: grub-core/bus/usb/serial/ftdi.c:161 grub-core/bus/usb/serial/pl2303.c:174 -#: grub-core/term/efi/serial.c:126 grub-core/term/ieee1275/escc.c:185 -#: grub-core/term/ns8250.c:217 -msgid "unsupported serial port word length" -msgstr "䏿”¯æŒçš„串行端å£å­—é•¿" - -#: grub-core/commands/acpi.c:42 -msgid "Don't load host tables specified by comma-separated list." -msgstr "ä¸è½½å…¥æŒ‡å®šçš„主机表(多个表用逗å·åˆ†éš”)。" - -#: grub-core/commands/acpi.c:45 -msgid "Load only tables specified by comma-separated list." -msgstr "åªè½½å…¥æŒ‡å®šçš„主机表(多个表用逗å·åˆ†éš”)。" - -#: grub-core/commands/acpi.c:46 -msgid "Export version 1 tables to the OS." -msgstr "导出版本 1 表至æ“作系统。" - -#: grub-core/commands/acpi.c:47 -msgid "Export version 2 and version 3 tables to the OS." -msgstr "导出版本 2 和版本 3 表至æ“作系统。" - -#: grub-core/commands/acpi.c:48 -msgid "Set OEMID of RSDP, XSDT and RSDT." -msgstr "设置 RSDP,XSDT å’Œ RSDT 中的 OEMID。" - -#: grub-core/commands/acpi.c:50 -msgid "Set OEMTABLE ID of RSDP, XSDT and RSDT." -msgstr "设置 RSDP,XSDT å’Œ RSDT 中的 OEMTABLE ID。" - -#: grub-core/commands/acpi.c:52 -msgid "Set OEMTABLE revision of RSDP, XSDT and RSDT." -msgstr "设置 RSDP,XSDT å’Œ RSDT 中的 OEMTABLE 版本信æ¯ã€‚" - -#: grub-core/commands/acpi.c:54 -msgid "Set creator field of RSDP, XSDT and RSDT." -msgstr "设置 RSDP,XSDT å’Œ RSDT 中的制造商信æ¯ã€‚" - -#: grub-core/commands/acpi.c:56 -msgid "Set creator revision of RSDP, XSDT and RSDT." -msgstr "设置 RSDP,XSDT å’Œ RSDT 中的制造商版本信æ¯ã€‚" - -#. TRANSLATORS: "hangs" here is a noun, not a verb. -#: grub-core/commands/acpi.c:58 -msgid "" -"Don't update EBDA. May fix failures or hangs on some BIOSes but makes it " -"ineffective with OS not receiving RSDP from GRUB." -msgstr "" -"䏿›´æ–° EBDA。有些时候能解决æŸäº› BIOS 上引导失败和挂起的问题。但对ä¸ä»Ž GRUB 接" -"æ”¶ RSDP çš„æ“作系统无效。" - -#: grub-core/commands/acpi.c:650 grub-core/commands/acpi.c:667 -#: grub-core/commands/i386/pc/play.c:105 grub-core/commands/keylayouts.c:230 -#: grub-core/commands/keylayouts.c:245 grub-core/commands/keylayouts.c:263 -#: grub-core/commands/verifiers.c:156 grub-core/efiemu/loadcore.c:350 -#: grub-core/kern/elf.c:117 grub-core/kern/elfXX.c:29 -#: grub-core/kern/elfXX.c:156 grub-core/loader/arm/linux.c:319 -#: grub-core/loader/arm64/linux.c:330 grub-core/loader/arm64/xen_boot.c:356 -#: grub-core/loader/efi/chainloader.c:276 -#: grub-core/loader/efi/chainloader.c:297 -#: grub-core/loader/efi/chainloader.c:329 grub-core/loader/efi/fdt.c:138 -#: grub-core/loader/i386/bsd.c:1276 grub-core/loader/i386/bsd.c:2116 -#: grub-core/loader/i386/bsdXX.c:20 grub-core/loader/i386/bsdXX.c:36 -#: grub-core/loader/i386/bsdXX.c:63 grub-core/loader/i386/bsdXX.c:357 -#: grub-core/loader/i386/bsdXX.c:376 grub-core/loader/i386/bsdXX.c:519 -#: grub-core/loader/i386/bsdXX.c:535 grub-core/loader/i386/bsdXX.c:615 -#: grub-core/loader/i386/bsdXX.c:638 -#: grub-core/loader/i386/coreboot/chainloader.c:112 -#: grub-core/loader/i386/coreboot/chainloader.c:148 -#: grub-core/loader/i386/coreboot/chainloader.c:170 -#: grub-core/loader/i386/linux.c:667 grub-core/loader/i386/linux.c:788 -#: grub-core/loader/i386/linux.c:1005 grub-core/loader/i386/multiboot_mbi.c:171 -#: grub-core/loader/i386/pc/chainloader.c:202 -#: grub-core/loader/i386/pc/linux.c:149 grub-core/loader/i386/pc/linux.c:320 -#: grub-core/loader/i386/pc/linux.c:362 grub-core/loader/i386/pc/plan9.c:457 -#: grub-core/loader/i386/pc/plan9.c:550 grub-core/loader/i386/pc/plan9.c:566 -#: grub-core/loader/i386/xen.c:934 grub-core/loader/i386/xen_file.c:72 -#: grub-core/loader/i386/xen_fileXX.c:43 grub-core/loader/i386/xen_fileXX.c:186 -#: grub-core/loader/i386/xen_fileXX.c:339 grub-core/loader/ia64/efi/linux.c:423 -#: grub-core/loader/ia64/efi/linux.c:471 grub-core/loader/linux.c:286 -#: grub-core/loader/macho.c:84 grub-core/loader/macho.c:109 -#: grub-core/loader/machoXX.c:33 grub-core/loader/machoXX.c:46 -#: grub-core/loader/machoXX.c:76 grub-core/loader/machoXX.c:116 -#: grub-core/loader/machoXX.c:131 grub-core/loader/machoXX.c:147 -#: grub-core/loader/machoXX.c:196 grub-core/loader/machoXX.c:317 -#: grub-core/loader/multiboot.c:434 grub-core/loader/multiboot_elfxx.c:171 -#: grub-core/loader/multiboot_elfxx.c:234 -#: grub-core/loader/multiboot_elfxx.c:278 grub-core/loader/multiboot_mbi2.c:129 -#: grub-core/loader/xnu.c:737 grub-core/loader/xnu.c:795 -#: grub-core/loader/xnu.c:816 grub-core/loader/xnu.c:871 -#: grub-core/loader/xnu.c:914 grub-core/loader/xnu.c:952 -#: grub-core/loader/xnu_resume.c:68 grub-core/loader/xnu_resume.c:153 -#: grub-core/loader/xnu_resume.c:165 util/grub-mkimagexx.c:2288 -#, c-format -msgid "premature end of file %s" -msgstr "文件 %s 过早结æŸ" - -#: grub-core/commands/acpi.c:779 -msgid "" -"[-1|-2] [--exclude=TABLE1,TABLE2|--load-only=TABLE1,TABLE2] FILE1 [FILE2] " -"[...]" -msgstr "[-1|-2] [--exclude=表1,表2|--load-only=表1,表2] 文件1 [文件2] [...]" - -#: grub-core/commands/acpi.c:782 -msgid "Load host ACPI tables and tables specified by arguments." -msgstr "载入 ACPI 主机表和用户指定的表。" - -#: grub-core/commands/acpihalt.c:368 grub-core/kern/err.c:110 -#, c-format -msgid "error: %s.\n" -msgstr "错误: %s。\n" - -#: grub-core/commands/acpihalt.c:368 grub-core/kern/emu/misc.c:95 -#: grub-core/kern/emu/misc.c:105 grub-core/kern/emu/misc.c:134 -#: grub-core/kern/emu/mm.c:34 grub-core/kern/emu/mm.c:62 -#: grub-core/kern/mm.c:374 grub-core/lib/relocator.c:1282 -#: grub-core/lib/relocator.c:1439 grub-core/lib/relocator.c:1538 -#: grub-core/loader/arm/linux.c:259 grub-core/loader/arm64/linux.c:265 -#: grub-core/loader/arm64/linux.c:321 grub-core/loader/arm64/linux.c:340 -#: grub-core/loader/arm64/xen_boot.c:344 grub-core/loader/arm64/xen_boot.c:367 -#: grub-core/loader/efi/chainloader.c:289 grub-core/osdep/unix/dl.c:48 -#: grub-core/osdep/windows/dl.c:46 grub-core/script/lexer.c:156 -#: grub-core/script/lexer.c:182 -msgid "out of memory" -msgstr "内存耗尽" - -#: grub-core/commands/acpihalt.c:374 grub-core/disk/cryptodisk.c:587 -#: grub-core/disk/cryptodisk.c:632 grub-core/kern/emu/hostdisk.c:307 -#: grub-core/kern/emu/hostfs.c:149 grub-core/kern/emu/misc.c:200 -#: grub-core/osdep/linux/ofpath.c:195 grub-core/osdep/linux/ofpath.c:521 -#: grub-core/osdep/linux/ofpath.c:534 util/glue-efi.c:80 util/glue-efi.c:94 -#: util/grub-editenv.c:155 util/grub-fstest.c:577 -#: util/grub-install-common.c:943 util/grub-mkrescue.c:634 -#: util/grub-mkrescue.c:888 util/grub-mount.c:506 util/grub-render-label.c:176 -#: util/misc.c:95 util/setup.c:814 util/setup.c:833 -#, c-format -msgid "cannot read `%s': %s" -msgstr "无法读å–“%sâ€ï¼š%s" - -#. TRANSLATORS: It's computer shutdown using ACPI, not disabling ACPI. -#: grub-core/commands/acpihalt.c:452 -msgid "ACPI shutdown failed" -msgstr "ACPI 关机失败" - -#: grub-core/commands/arc/lsdev.c:51 -msgid "List devices." -msgstr "列出设备。" - -#: grub-core/commands/blocklist.c:122 grub-core/commands/cat.c:57 -#: grub-core/commands/configfile.c:35 grub-core/commands/efi/loadbios.c:168 -#: grub-core/commands/file.c:159 grub-core/commands/hexdump.c:47 -#: grub-core/commands/legacycfg.c:209 grub-core/commands/legacycfg.c:315 -#: grub-core/commands/minicmd.c:44 grub-core/commands/syslinuxcfg.c:146 -#: grub-core/commands/testload.c:58 grub-core/commands/testspeed.c:52 -#: grub-core/disk/loopback.c:93 grub-core/efiemu/main.c:293 -#: grub-core/font/font_cmd.c:32 grub-core/kern/emu/hostdisk.c:519 -#: grub-core/loader/arm/linux.c:364 grub-core/loader/arm/linux.c:409 -#: grub-core/loader/arm/linux.c:472 grub-core/loader/arm64/linux.c:243 -#: grub-core/loader/arm64/linux.c:297 grub-core/loader/arm64/xen_boot.c:398 -#: grub-core/loader/arm64/xen_boot.c:411 grub-core/loader/arm64/xen_boot.c:462 -#: grub-core/loader/efi/chainloader.c:216 grub-core/loader/i386/bsd.c:1462 -#: grub-core/loader/i386/bsd.c:1807 grub-core/loader/i386/bsd.c:2085 -#: grub-core/loader/i386/coreboot/chainloader.c:438 -#: grub-core/loader/i386/linux.c:656 grub-core/loader/i386/linux.c:1041 -#: grub-core/loader/i386/pc/chainloader.c:290 -#: grub-core/loader/i386/pc/freedos.c:105 grub-core/loader/i386/pc/linux.c:138 -#: grub-core/loader/i386/pc/linux.c:400 grub-core/loader/i386/pc/ntldr.c:85 -#: grub-core/loader/i386/pc/plan9.c:409 -#: grub-core/loader/i386/pc/pxechainloader.c:94 -#: grub-core/loader/i386/pc/truecrypt.c:96 grub-core/loader/i386/xen.c:641 -#: grub-core/loader/i386/xen.c:768 grub-core/loader/i386/xen.c:844 -#: grub-core/loader/i386/xen.c:854 grub-core/loader/i386/xnu.c:488 -#: grub-core/loader/ia64/efi/linux.c:459 grub-core/loader/ia64/efi/linux.c:539 -#: grub-core/loader/mips/linux.c:238 grub-core/loader/mips/linux.c:429 -#: grub-core/loader/multiboot.c:322 grub-core/loader/multiboot.c:374 -#: grub-core/loader/multiboot.c:384 -#: grub-core/loader/powerpc/ieee1275/linux.c:269 -#: grub-core/loader/powerpc/ieee1275/linux.c:341 -#: grub-core/loader/sparc64/ieee1275/linux.c:305 -#: grub-core/loader/sparc64/ieee1275/linux.c:381 grub-core/loader/xnu.c:351 -#: grub-core/loader/xnu.c:460 grub-core/loader/xnu.c:778 -#: grub-core/loader/xnu.c:892 grub-core/loader/xnu.c:1277 -#: grub-core/loader/xnu.c:1427 grub-core/loader/xnu.c:1453 -#: grub-core/video/readers/jpeg.c:812 grub-core/video/readers/png.c:1123 -msgid "filename expected" -msgstr "éœ€è¦æ–‡ä»¶å" - -#. TRANSLATORS: "embed" is a verb (command description). " -#: grub-core/commands/blocklist.c:154 grub-core/commands/cat.c:163 -#: grub-core/commands/configfile.c:65 grub-core/commands/configfile.c:68 -#: grub-core/commands/configfile.c:74 grub-core/commands/configfile.c:80 -#: grub-core/commands/configfile.c:86 grub-core/commands/hashsum.c:34 -#: grub-core/commands/legacycfg.c:834 grub-core/commands/legacycfg.c:841 -#: grub-core/commands/legacycfg.c:846 grub-core/commands/legacycfg.c:851 -#: grub-core/commands/macbless.c:222 grub-core/commands/minicmd.c:198 -#: grub-core/commands/syslinuxcfg.c:186 grub-core/commands/syslinuxcfg.c:194 -#: grub-core/commands/syslinuxcfg.c:200 grub-core/commands/syslinuxcfg.c:206 -#: grub-core/commands/testload.c:163 grub-core/efiemu/main.c:312 -#: grub-core/kern/emu/main.c:100 grub-core/kern/emu/main.c:103 -#: grub-core/loader/i386/bsd.c:2137 grub-core/loader/i386/bsd.c:2140 -#: grub-core/loader/i386/bsd.c:2143 -#: grub-core/loader/i386/coreboot/chainloader.c:505 -#: grub-core/loader/ia64/efi/linux.c:594 include/grub/util/install.h:32 -#: include/grub/util/install.h:64 util/grub-glue-efi.c:52 -#: util/grub-glue-efi.c:54 util/grub-glue-efi.c:56 util/grub-install.c:254 -#: util/grub-install.c:301 util/grub-mkfont.c:936 util/grub-mkimage.c:68 -#: util/grub-mkimage.c:74 util/grub-mkimage.c:76 util/grub-mkimage.c:78 -#: util/grub-mkimage.c:81 util/grub-mklayout.c:52 util/grub-mklayout.c:54 -#: util/grub-mkrescue.c:97 util/grub-mkrescue.c:101 util/grub-mkrescue.c:104 -#: util/grub-mkrescue.c:105 util/grub-mkrescue.c:106 -#: util/grub-mkstandalone.c:47 util/grub-mkstandalone.c:49 -#: util/grub-probe.c:732 util/grub-render-label.c:59 -#: util/grub-render-label.c:70 util/grub-render-label.c:72 util/grub-setup.c:78 -#: util/grub-setup.c:80 util/grub-setup.c:84 util/grub-syslinux2cfg.c:74 -#: util/grub-syslinux2cfg.c:147 -msgid "FILE" -msgstr "文件" - -#: grub-core/commands/blocklist.c:154 -msgid "Print a block list." -msgstr "显示å—列表。" - -#: grub-core/commands/boot.c:147 grub-core/commands/legacycfg.c:533 -#: grub-core/commands/legacycfg.c:574 grub-core/loader/arm64/linux.c:250 -#: grub-core/loader/i386/bsd.c:1799 grub-core/loader/i386/bsd.c:1900 -#: grub-core/loader/i386/bsd.c:2007 grub-core/loader/i386/bsd.c:2040 -#: grub-core/loader/i386/bsd.c:2089 grub-core/loader/i386/linux.c:1047 -#: grub-core/loader/i386/pc/linux.c:406 grub-core/loader/i386/xen.c:775 -#: grub-core/loader/i386/xen.c:859 grub-core/loader/ia64/efi/linux.c:545 -#: grub-core/loader/mips/linux.c:432 grub-core/loader/multiboot.c:388 -#: grub-core/loader/powerpc/ieee1275/linux.c:347 -#: grub-core/loader/sparc64/ieee1275/linux.c:387 grub-core/loader/xnu.c:572 -#: grub-core/loader/xnu.c:665 grub-core/loader/xnu.c:781 -#: grub-core/loader/xnu.c:895 grub-core/loader/xnu.c:1091 -#: grub-core/loader/xnu.c:1258 grub-core/loader/xnu.c:1289 -#: grub-core/loader/xnu.c:1430 -msgid "you need to load the kernel first" -msgstr "您需è¦å…ˆåŠ è½½å†…æ ¸" - -#: grub-core/commands/boot.c:189 -msgid "Boot an operating system." -msgstr "引导æ“作系统。" - -#: grub-core/commands/boottime.c:36 -#: grub-core/commands/i386/coreboot/cb_timestamps.c:108 -msgid "No boot time statistics is available\n" -msgstr "没有å¯ç”¨çš„å¯åŠ¨æ—¶é—´ç»Ÿè®¡ä¿¡æ¯\n" - -#: grub-core/commands/boottime.c:59 -msgid "Show boot time statistics." -msgstr "显示å¯åŠ¨æ—¶é—´ç»Ÿè®¡ä¿¡æ¯ã€‚" - -#: grub-core/commands/cacheinfo.c:40 -#, c-format -msgid "Disk cache statistics: hits = %lu (%lu.%02lu%%), misses = %lu\n" -msgstr "ç£ç›˜ç¼“存统计:命中 = %lu(%lu.%02lu%%),未命中 = %lu\n" - -#: grub-core/commands/cacheinfo.c:45 -msgid "No disk cache statistics available\n" -msgstr "没有å¯ç”¨çš„ç£ç›˜ç¼“存统计信æ¯\n" - -#: grub-core/commands/cacheinfo.c:56 -msgid "Get disk cache info." -msgstr "获å–ç£ç›˜ç¼“存信æ¯ã€‚" - -#: grub-core/commands/cat.c:33 -msgid "Accept DOS-style CR/NL line endings." -msgstr "æŽ¥å— DOS 风格的 CR/NL 行结尾。" - -#: grub-core/commands/cat.c:163 grub-core/commands/minicmd.c:198 -msgid "Show the contents of a file." -msgstr "显示文件内容。" - -#: grub-core/commands/cmp.c:43 grub-core/commands/i386/pc/drivemap.c:239 -#: grub-core/commands/i386/wrmsr.c:60 grub-core/commands/iorw.c:85 -#: grub-core/commands/memrw.c:84 grub-core/commands/password.c:75 -#: grub-core/commands/password_pbkdf2.c:94 grub-core/commands/pgp.c:826 -#: grub-core/commands/regexp.c:113 grub-core/mmap/mmap.c:517 -#: grub-core/net/dns.c:639 -msgid "two arguments expected" -msgstr "需è¦ä¸¤ä¸ªå‚æ•°" - -#: grub-core/commands/cmp.c:45 -#, c-format -msgid "Compare file `%s' with `%s':\n" -msgstr "比较文件“%sâ€å’Œâ€œ%sâ€ï¼š\n" - -#: grub-core/commands/cmp.c:54 -#, c-format -msgid "Files differ in size: %llu [%s], %llu [%s]\n" -msgstr "文件大å°çš„区别:%llu [%s], %llu [%s]\n" - -#: grub-core/commands/cmp.c:81 -#, c-format -msgid "Files differ at the offset %llu: 0x%x [%s], 0x%x [%s]\n" -msgstr "文件在åç§»é‡ %llu 的区别:0x%x [%s], 0x%x [%s]\n" - -#. TRANSLATORS: it's always exactly 2 files. -#: grub-core/commands/cmp.c:93 -msgid "The files are identical.\n" -msgstr "文件完全相åŒã€‚\n" - -#: grub-core/commands/cmp.c:113 -msgid "FILE1 FILE2" -msgstr "文件1 文件2" - -#: grub-core/commands/cmp.c:113 -msgid "Compare two files." -msgstr "比较两个文件。" - -#: grub-core/commands/configfile.c:65 -msgid "Load another config file." -msgstr "载入å¦å¤–çš„é…置文件。" - -#: grub-core/commands/configfile.c:69 grub-core/commands/configfile.c:87 -msgid "Load another config file without changing context." -msgstr "载入å¦å¤–çš„é…置文件(䏿”¹å˜çŽ¯å¢ƒ)。" - -#: grub-core/commands/configfile.c:75 -msgid "" -"Load another config file without changing context but take only menu entries." -msgstr "载入å¦å¤–çš„é…置文件(䏿”¹å˜çŽ¯å¢ƒï¼Œä»…è½½å…¥èœå•项)。" - -#: grub-core/commands/configfile.c:81 -msgid "Load another config file but take only menu entries." -msgstr "载入å¦å¤–çš„é…置文件(仅载入èœå•项)。" - -#: grub-core/commands/date.c:141 -msgid "[[year-]month-day] [hour:minute[:second]]" -msgstr "[[å¹´-]月-æ—¥] [æ—¶:分[:ç§’]]" - -#: grub-core/commands/date.c:142 -msgid "Display/set current datetime." -msgstr "显示/设置日期与时间。" - -#: grub-core/commands/echo.c:30 -msgid "Do not output the trailing newline." -msgstr "末尾ä¸è¾“出é¢å¤–空行。" - -#: grub-core/commands/echo.c:31 -msgid "Enable interpretation of backslash escapes." -msgstr "å¯ç”¨åæ–œæ è½¬ä¹‰ã€‚" - -#: grub-core/commands/echo.c:134 -msgid "[-e|-n] STRING" -msgstr "[-e|-n] 字符串" - -#: grub-core/commands/echo.c:134 -msgid "Display a line of text." -msgstr "显示文本。" - -#: grub-core/commands/efi/efifwsetup.c:82 -msgid "Reboot into firmware setup menu." -msgstr "釿–°å¯åŠ¨åˆ°å›ºä»¶è®¾ç½®èœå•。" - -#: grub-core/commands/efi/fixvideo.c:107 -msgid "Fix video problem." -msgstr "修正视频问题。" - -#: grub-core/commands/efi/loadbios.c:52 -msgid "ROM image is present." -msgstr "ROM 镜åƒå­˜åœ¨ã€‚" - -#: grub-core/commands/efi/loadbios.c:70 -msgid "Can't enable ROM area." -msgstr "无法å¯ç”¨ ROM 区域。" - -#: grub-core/commands/efi/loadbios.c:209 -msgid "" -"Create BIOS-like structures for backward compatibility with existing OS." -msgstr "创建类似 BIOS 的结构以与已有æ“ä½œç³»ç»Ÿä¿æŒåŽå‘兼容性。" - -#: grub-core/commands/efi/loadbios.c:214 -msgid "BIOS_DUMP [INT10_DUMP]" -msgstr "BIOS_DUMP [INT10_DUMP]" - -#: grub-core/commands/efi/loadbios.c:215 -msgid "Load BIOS dump." -msgstr "载入 BIOS 转储。" - -#: grub-core/commands/efi/shim_lock.c:76 -#, c-format -msgid "module cannot be loaded in UEFI secure boot mode: %s" -msgstr "模å—在 UEFI 安全å¯åŠ¨æ¨¡å¼ä¸‹æ— æ³•加载:%s" - -#: grub-core/commands/efi/shim_lock.c:98 -#, c-format -msgid "cannot boot due to dangerous module in memory: %s" -msgstr "因内存中有å±é™©æ¨¡å—而无法引导å¯åŠ¨ï¼š%s" - -#: grub-core/commands/efi/shim_lock.c:116 -msgid "bad shim signature" -msgstr "无效的 shim ç­¾å" - -#: grub-core/commands/efi/tpm.c:149 grub-core/commands/efi/tpm.c:189 -#: grub-core/commands/efi/tpm.c:256 grub-core/commands/efi/tpm.c:306 -msgid "Command failed" -msgstr "命令失败" - -#: grub-core/commands/efi/tpm.c:151 grub-core/commands/efi/tpm.c:191 -#: grub-core/commands/efi/tpm.c:258 grub-core/commands/efi/tpm.c:308 -msgid "Invalid parameter" -msgstr "æ— æ•ˆå‚æ•°" - -#: grub-core/commands/efi/tpm.c:154 grub-core/commands/efi/tpm.c:194 -#: grub-core/commands/efi/tpm.c:261 grub-core/commands/efi/tpm.c:311 -msgid "Output buffer too small" -msgstr "输出缓冲太å°" - -#: grub-core/commands/efi/tpm.c:156 grub-core/commands/efi/tpm.c:196 -#: grub-core/commands/efi/tpm.c:263 grub-core/commands/efi/tpm.c:313 -msgid "TPM unavailable" -msgstr "TPM ä¸å¯ç”¨" - -#: grub-core/commands/efi/tpm.c:158 grub-core/commands/efi/tpm.c:198 -#: grub-core/commands/efi/tpm.c:265 grub-core/commands/efi/tpm.c:315 -msgid "Unknown TPM error" -msgstr "未知的 TPM 错误" - -#: grub-core/commands/efi/tpm.c:240 grub-core/commands/efi/tpm.c:288 -msgid "cannot allocate TPM event buffer" -msgstr "æ— æ³•åˆ†é… TPM 事件缓冲" - -#: grub-core/commands/eval.c:63 -msgid "STRING ..." -msgstr "字符串 ..." - -#: grub-core/commands/eval.c:64 -msgid "Evaluate arguments as GRUB commands" -msgstr "将傿•°ä½œä¸º GRUB 命令进行处ç†" - -#: grub-core/commands/file.c:41 -msgid "Check if FILE can be booted as i386 PAE Xen unprivileged guest kernel" -msgstr "检查文件是å¦å¯ä»¥ä½œä¸º i386 PAE Xen 无特æƒè®¿å®¢å†…æ ¸å¯åЍ" - -#: grub-core/commands/file.c:44 -msgid "Check if FILE can be booted as x86_64 Xen unprivileged guest kernel" -msgstr "检查文件是å¦å¯ä»¥ä½œä¸º x86_64 Xen 无特æƒè®¿å®¢å†…æ ¸å¯åЍ" - -#: grub-core/commands/file.c:46 -msgid "Check if FILE can be used as Xen x86 privileged guest kernel" -msgstr "检查文件是å¦å¯è¢«ç”¨ä½œ Xen x86 特æƒè®¿å®¢å†…æ ¸" - -#: grub-core/commands/file.c:48 -msgid "Check if FILE can be used as x86 multiboot kernel" -msgstr "检查文件是å¦å¯è¢«ç”¨ä½œ x86 multiboot 内核" - -#: grub-core/commands/file.c:50 -msgid "Check if FILE can be used as x86 multiboot2 kernel" -msgstr "检查文件是å¦å¯è¢«ç”¨ä½œ x86 multiboot2 内核" - -#: grub-core/commands/file.c:52 -msgid "Check if FILE is ARM Linux" -msgstr "检查文件是å¦ä¸º ARM Linux" - -#: grub-core/commands/file.c:54 -msgid "Check if FILE is ARM64 Linux" -msgstr "检查文件是å¦ä¸º ARM64 Linux" - -#: grub-core/commands/file.c:56 -msgid "Check if FILE is IA64 Linux" -msgstr "检查文件是å¦ä¸º IA64 Linux" - -#: grub-core/commands/file.c:58 -msgid "Check if FILE is MIPS Linux" -msgstr "检查文件是å¦ä¸º MIPS Linux" - -#: grub-core/commands/file.c:60 -msgid "Check if FILE is MIPSEL Linux" -msgstr "检查文件是å¦ä¸º MIPSEL Linux" - -#: grub-core/commands/file.c:62 -msgid "Check if FILE is SPARC64 Linux" -msgstr "检查文件是å¦ä¸º SPARC64 Linux" - -#: grub-core/commands/file.c:64 -msgid "Check if FILE is POWERPC Linux" -msgstr "检查文件是å¦ä¸º POWERPC Linux" - -#: grub-core/commands/file.c:66 -msgid "Check if FILE is x86 Linux" -msgstr "检查文件是å¦ä¸º x86 Linux" - -#: grub-core/commands/file.c:68 -msgid "Check if FILE is x86 Linux supporting 32-bit protocol" -msgstr "检查文件是å¦ä¸ºæ”¯æŒ 32 ä½å议的 x86 Linux" - -#: grub-core/commands/file.c:70 -msgid "Check if FILE is x86 kFreeBSD" -msgstr "检查文件是å¦ä¸º x86 kFreeBSD" - -#: grub-core/commands/file.c:72 -msgid "Check if FILE is i386 kFreeBSD" -msgstr "检查文件是å¦ä¸º i386 kFreeBSD" - -#: grub-core/commands/file.c:74 -msgid "Check if FILE is x86_64 kFreeBSD" -msgstr "检查文件是å¦ä¸º x86_64 kFreeBSD" - -#: grub-core/commands/file.c:77 -msgid "Check if FILE is x86 kNetBSD" -msgstr "检查文件是å¦ä¸º x86 kNetBSD" - -#: grub-core/commands/file.c:79 -msgid "Check if FILE is i386 kNetBSD" -msgstr "检查文件是å¦ä¸º i386 kNetBSD" - -#: grub-core/commands/file.c:81 -msgid "Check if FILE is x86_64 kNetBSD" -msgstr "检查文件是å¦ä¸º x86_64 kNetBSD" - -#: grub-core/commands/file.c:84 -msgid "Check if FILE is i386 EFI file" -msgstr "检查文件是å¦ä¸º i386 EFI 文件" - -#: grub-core/commands/file.c:86 -msgid "Check if FILE is x86_64 EFI file" -msgstr "检查文件是å¦ä¸º x86_64 EFI 文件" - -#: grub-core/commands/file.c:88 -msgid "Check if FILE is IA64 EFI file" -msgstr "检查文件是å¦ä¸º IA64 EFI 文件" - -#: grub-core/commands/file.c:90 -msgid "Check if FILE is ARM64 EFI file" -msgstr "检查文件是å¦ä¸º ARM64 EFI 文件" - -#: grub-core/commands/file.c:92 -msgid "Check if FILE is ARM EFI file" -msgstr "检查文件是å¦ä¸º ARM EFI 文件" - -#: grub-core/commands/file.c:94 -msgid "Check if FILE is RISC-V 32bit EFI file" -msgstr "检查文件是å¦ä¸º RISC-V 32ä½ EFI 文件" - -#: grub-core/commands/file.c:96 -msgid "Check if FILE is RISC-V 64bit EFI file" -msgstr "检查文件是å¦ä¸º RISC-V 64ä½ EFI 文件" - -#: grub-core/commands/file.c:98 -msgid "Check if FILE is hiberfil.sys in hibernated state" -msgstr "检查文件是å¦ä¸ºå¤„于休眠状æ€çš„ hiberfil.sys 文件" - -#: grub-core/commands/file.c:100 -msgid "Check if FILE is x86_64 XNU (Mac OS X kernel)" -msgstr "检查文件是å¦ä¸º x86_64 XNU(Mac OS X 内核)" - -#: grub-core/commands/file.c:102 -msgid "Check if FILE is i386 XNU (Mac OS X kernel)" -msgstr "检查文件是å¦ä¸º i386 XNU(Mac OS X 内核)" - -#: grub-core/commands/file.c:104 -msgid "Check if FILE is XNU (Mac OS X kernel) hibernated image" -msgstr "检查文件是å¦ä¸º XNU(Mac OS X 内核)休眠镜åƒ" - -#: grub-core/commands/file.c:106 -msgid "Check if FILE is BIOS bootsector" -msgstr "检查文件是å¦ä¸º BIOS å¯åŠ¨åˆ†åŒº" - -#. TRANSLATORS: it's a standalone boolean value, -#. opposite of "true". -#: grub-core/commands/file.c:675 grub-core/commands/i386/cmostest.c:63 -#: grub-core/commands/i386/cpuid.c:71 grub-core/commands/keystatus.c:83 -#: grub-core/commands/keystatus.c:87 grub-core/commands/keystatus.c:96 -#: grub-core/commands/test.c:436 grub-core/commands/true.c:39 -#: grub-core/script/execute.c:247 grub-core/script/execute.c:1039 -msgid "false" -msgstr "å‡" - -#: grub-core/commands/file.c:684 -msgid "OPTIONS FILE" -msgstr "选项 文件" - -#: grub-core/commands/file.c:685 -msgid "Check if FILE is of specified type." -msgstr "检查文件是å¦ä¸ºæŒ‡å®šçš„类型。" - -#. TRANSLATORS: It means that the specified partition e.g. -#. hd0,msdos1=/dev/sda1 doesn't exist. -#: grub-core/commands/gptsync.c:140 grub-core/kern/disk.c:258 -msgid "no such partition" -msgstr "没有这样的分区" - -#: grub-core/commands/gptsync.c:240 -#, c-format -msgid "New MBR is written to `%s'\n" -msgstr "æ–° MBR 已写入“%sâ€\n" - -#: grub-core/commands/gptsync.c:252 -msgid "DEVICE [PARTITION[+/-[TYPE]]] ..." -msgstr "设备 [分区[+/-[类型]]] ..." - -#. TRANSLATORS: MBR type is one-byte partition -#. type id. -#: grub-core/commands/gptsync.c:255 -msgid "" -"Fill hybrid MBR of GPT drive DEVICE. Specified partitions will be a part of " -"hybrid MBR. Up to 3 partitions are allowed. TYPE is an MBR type. + means " -"that partition is active. Only one partition can be active." -msgstr "" -"é‡å†™æŒ‡å®š GPT è®¾å¤‡çš„æ··åˆ MBR,指定的分区会æˆä¸ºæ··åˆ MBR 的一部分(ä¸è¶…过三个)。" -"类型指 MBR 类型,+ 代表该分区是活动分区(åªèƒ½æœ‰ä¸€ä¸ªæ´»åŠ¨åˆ†åŒº)。" - -#: grub-core/commands/halt.c:40 -msgid "" -"Halts the computer. This command does not work on all firmware " -"implementations." -msgstr "关机(在æŸäº›è®¡ç®—机上无效)。" - -#: grub-core/commands/hashsum.c:32 -msgid "Specify hash to use." -msgstr "指定è¦ä½¿ç”¨çš„哈希值。" - -#: grub-core/commands/hashsum.c:32 -msgid "HASH" -msgstr "哈希值" - -#: grub-core/commands/hashsum.c:33 -msgid "Check hashes of files with hash list FILE." -msgstr "使用给定的哈希列表文件检查文件的哈希值。" - -#: grub-core/commands/hashsum.c:35 -msgid "Base directory for hash list." -msgstr "哈希列表文件所在目录。" - -#. TRANSLATORS: platform here isn't identifier. It can be translated. -#: grub-core/commands/hashsum.c:35 grub-core/commands/ls.c:150 -#: grub-core/commands/macbless.c:226 grub-core/commands/syslinuxcfg.c:51 -#: grub-core/commands/syslinuxcfg.c:54 grub-core/kern/emu/main.c:106 -#: include/grub/util/install.h:50 include/grub/util/install.h:53 -#: include/grub/util/install.h:56 include/grub/util/install.h:59 -#: util/grub-install.c:250 util/grub-install.c:252 util/grub-install.c:297 -#: util/grub-install.c:299 util/grub-mkimage.c:64 util/grub-mkimage.c:67 -#: util/grub-mknetdir.c:46 util/grub-mknetdir.c:48 util/grub-mkrescue.c:99 -#: util/grub-setup.c:82 util/grub-syslinux2cfg.c:63 util/grub-syslinux2cfg.c:65 -#: util/grub-syslinux2cfg.c:67 util/grub-syslinux2cfg.c:71 -msgid "DIR" -msgstr "DIR" - -#: grub-core/commands/hashsum.c:37 -msgid "Don't stop after first error." -msgstr "第一次出现错误时ä¸åœæ­¢ã€‚" - -#: grub-core/commands/hashsum.c:38 -msgid "Uncompress file before checksumming." -msgstr "检查校验和å‰è§£åŽ‹æ–‡ä»¶ã€‚" - -#: grub-core/commands/hashsum.c:163 -#, c-format -msgid "%s: READ ERROR\n" -msgstr "%s:读å–出错\n" - -#: grub-core/commands/hashsum.c:177 -#, c-format -msgid "%s: HASH MISMATCH\n" -msgstr "%s:哈希ä¸åŒ¹é…\n" - -#: grub-core/commands/hashsum.c:188 -#, c-format -msgid "%s: OK\n" -msgstr "%s:正常\n" - -#: grub-core/commands/hashsum.c:282 -msgid "-h HASH [-c FILE [-p PREFIX]] [FILE1 [FILE2 ...]]" -msgstr "-h 哈希值 [-c 文件 [-p å‰ç¼€]] [[文件1 [文件2 ...]]" - -#. TRANSLATORS: "hash checksum" is just to -#. be a bit more precise, you can treat it as -#. just "hash". -#: grub-core/commands/hashsum.c:287 grub-core/commands/hashsum.c:292 -#: grub-core/commands/hashsum.c:297 grub-core/commands/hashsum.c:302 -#: grub-core/commands/hashsum.c:307 grub-core/commands/hashsum.c:313 -msgid "Compute or check hash checksum." -msgstr "计算或校验哈希校验和。" - -#: grub-core/commands/hashsum.c:290 grub-core/commands/hashsum.c:295 -#: grub-core/commands/hashsum.c:300 grub-core/commands/hashsum.c:305 -#: grub-core/commands/hashsum.c:311 -msgid "[-c FILE [-p PREFIX]] [FILE1 [FILE2 ...]]" -msgstr "[-c 文件 [-p å‰ç¼€]] [文件1 [文件2 ...]]" - -#: grub-core/commands/hdparm.c:33 -msgid "" -"Set Advanced Power Management\n" -"(1=low, ..., 254=high, 255=off)." -msgstr "" -"设置高级电æºç®¡ç†æ¨¡å¼\n" -"(1=最低,...,254=最高,255=关闭)。" - -#: grub-core/commands/hdparm.c:36 -msgid "Display power mode." -msgstr "æ˜¾ç¤ºç”µæºæ¨¡å¼ã€‚" - -#: grub-core/commands/hdparm.c:37 -msgid "Freeze ATA security settings until reset." -msgstr "ç¦æ­¢æ›´æ”¹ ATA 安全设置直到此设置被é‡ç½®ã€‚" - -#: grub-core/commands/hdparm.c:39 -msgid "Display SMART health status." -msgstr "显示 SMART å¥åº·çжæ€ã€‚" - -#: grub-core/commands/hdparm.c:40 -msgid "" -"Set Automatic Acoustic Management\n" -"(0=off, 128=quiet, ..., 254=fast)." -msgstr "" -"è®¾ç½®ç¡¬ç›˜å£°éŸ³ç®¡ç†æ¨¡å¼\n" -"(0=关闭,128=é™éŸ³ï¼Œ...,254=高速)。" - -#: grub-core/commands/hdparm.c:43 -msgid "" -"Set standby timeout\n" -"(0=off, 1=5s, 2=10s, ..., 240=20m, 241=30m, ...)." -msgstr "" -"设置等待时间\n" -"(0=关闭,1=5秒,2=10秒,...,240=20分,241=30分,...)。" - -#: grub-core/commands/hdparm.c:46 -msgid "Set drive to standby mode." -msgstr "设置驱动器为等待模å¼ã€‚" - -#: grub-core/commands/hdparm.c:47 -msgid "Set drive to sleep mode." -msgstr "设置驱动器为休眠模å¼ã€‚" - -#: grub-core/commands/hdparm.c:48 -msgid "Print drive identity and settings." -msgstr "显示硬盘识别信æ¯å’Œè®¾ç½®ã€‚" - -#: grub-core/commands/hdparm.c:50 -msgid "Show raw contents of ATA IDENTIFY sector." -msgstr "显示 ATA IDENTIFY 扇区原始内容。" - -#: grub-core/commands/hdparm.c:52 -msgid "Disable/enable SMART (0/1)." -msgstr "ç¦ç”¨/å¯ç”¨ SMART (0/1)。" - -#: grub-core/commands/hdparm.c:53 -msgid "Do not print messages." -msgstr "安陿¨¡å¼ã€‚" - -#: grub-core/commands/hdparm.c:286 grub-core/commands/i386/rdmsr.c:68 -#: grub-core/commands/iorw.c:47 grub-core/commands/legacycfg.c:760 -#: grub-core/commands/legacycfg.c:812 grub-core/commands/macbless.c:190 -#: grub-core/commands/memrw.c:47 grub-core/commands/pgp.c:738 -#: grub-core/commands/pgp.c:792 grub-core/commands/search.c:304 -#: grub-core/commands/search_wrap.c:179 grub-core/commands/setpci.c:243 -#: grub-core/commands/sleep.c:71 grub-core/fs/zfs/zfsinfo.c:279 -#: grub-core/fs/zfs/zfsinfo.c:358 grub-core/gettext/gettext.c:492 -#: grub-core/kern/corecmd.c:65 grub-core/kern/corecmd.c:79 -#: grub-core/mmap/mmap.c:430 grub-core/net/dns.c:713 grub-core/net/dns.c:745 -#: grub-core/net/net.c:694 grub-core/net/net.c:1052 -#: grub-core/normal/context.c:194 grub-core/script/execute.c:131 -#: grub-core/term/gfxterm_background.c:136 -msgid "one argument expected" -msgstr "需è¦ä¸€ä¸ªå‚æ•°" - -#: grub-core/commands/hdparm.c:440 -msgid "[OPTIONS] DISK" -msgstr "[选项] ç£ç›˜" - -#: grub-core/commands/hdparm.c:441 -msgid "Get/set ATA disk parameters." -msgstr "èŽ·å–æˆ–设定 ATA ç£ç›˜å‚数。" - -#: grub-core/commands/help.c:132 grub-core/lib/arg.c:109 -#: grub-core/lib/gnulib/argp-help.c:1616 -msgid "Usage:" -msgstr "用法:" - -#: grub-core/commands/help.c:146 -msgid "[PATTERN ...]" -msgstr "[æ¨¡å¼ ...]" - -#: grub-core/commands/help.c:147 -msgid "Show a help message." -msgstr "显示帮助消æ¯ã€‚" - -#: grub-core/commands/hexdump.c:31 -msgid "Skip offset bytes from the beginning of file." -msgstr "跳过文件头部å移字节。" - -#: grub-core/commands/hexdump.c:33 -msgid "Read only LENGTH bytes." -msgstr "è¯»å–æŒ‡å®šé•¿åº¦(字节)。" - -#: grub-core/commands/hexdump.c:125 -msgid "[OPTIONS] FILE_OR_DEVICE" -msgstr "[选项] 文件或设备" - -#: grub-core/commands/hexdump.c:126 -msgid "Show raw contents of a file or memory." -msgstr "显示文件或内存的原始内容。" - -#: grub-core/commands/i386/cmosdump.c:58 -msgid "Show raw dump of the CMOS contents." -msgstr "显示 CMOS 内容的原始转储。" - -#: grub-core/commands/i386/cmostest.c:108 -#: grub-core/commands/i386/cmostest.c:111 -#: grub-core/commands/i386/cmostest.c:114 -msgid "BYTE:BIT" -msgstr "字节:比特" - -#: grub-core/commands/i386/cmostest.c:109 -msgid "Test bit at BYTE:BIT in CMOS." -msgstr "测试 CMOS 中 字节:比特 ä½ç½®çš„ä½ã€‚" - -#: grub-core/commands/i386/cmostest.c:112 -msgid "Clear bit at BYTE:BIT in CMOS." -msgstr "清除 CMOS 中 字节:比特 ä½ç½®çš„ä½ã€‚" - -#. TRANSLATORS: A bit may be either set (1) or clear (0). -#: grub-core/commands/i386/cmostest.c:116 -msgid "Set bit at BYTE:BIT in CMOS." -msgstr "设置 CMOS 中 字节:比特 ä½ç½®çš„ä½ã€‚" - -#: grub-core/commands/i386/coreboot/cb_timestamps.c:120 -msgid "Show coreboot boot time statistics." -msgstr "显示 coreboot 引导时间统计信æ¯ã€‚" - -#: grub-core/commands/i386/coreboot/cbls.c:137 -msgid "List coreboot tables." -msgstr "列出 coreboot 表。" - -#. TRANSLATORS: "(default)" at the end means that this option is used if -#. no argument is specified. -#: grub-core/commands/i386/cpuid.c:36 -msgid "Check if CPU supports 64-bit (long) mode (default)." -msgstr "检查 CPU æ˜¯å¦æ”¯æŒ 64 ä½ï¼ˆé•¿ï¼‰æ¨¡å¼ï¼ˆé»˜è®¤ï¼‰ã€‚" - -#: grub-core/commands/i386/cpuid.c:37 -msgid "Check if CPU supports Physical Address Extension." -msgstr "检查 CPU æ˜¯å¦æ”¯æŒç‰©ç†åœ°å€æ‰©å±•。" - -#: grub-core/commands/i386/cpuid.c:119 -msgid "Check for CPU features." -msgstr "检查 CPU 特性。" - -#. TRANSLATORS: In this file "mapping" refers to a change GRUB makes so if -#. your language doesn't have an equivalent of "mapping" you can -#. use the word like "rerouting". -#. -#: grub-core/commands/i386/pc/drivemap.c:43 -msgid "Show the current mappings." -msgstr "æ˜¾ç¤ºå½“å‰æ˜ å°„。" - -#: grub-core/commands/i386/pc/drivemap.c:44 -msgid "Reset all mappings to the default values." -msgstr "é‡ç½®æ‰€æœ‰æ˜ å°„为默认值。" - -#: grub-core/commands/i386/pc/drivemap.c:45 -msgid "Perform both direct and reverse mappings." -msgstr "åŒæ—¶è¿›è¡Œç›´æŽ¥å’Œä¿ç•™æ˜ å°„。" - -#: grub-core/commands/i386/pc/drivemap.c:184 -msgid "No drives have been remapped" -msgstr "æ²¡æœ‰é©±åŠ¨å™¨è¢«é‡æ–°æ˜ å°„" - -#. TRANSLATORS: This is the header of mapping list. -#. On the left is how OS will see the disks and -#. on the right current GRUB vision. -#: grub-core/commands/i386/pc/drivemap.c:191 -msgid "OS disk #num ------> GRUB/BIOS device" -msgstr "系统ç£ç›˜ #ç¼–å· ----> GRUB/BIOS 设备" - -#: grub-core/commands/i386/pc/drivemap.c:413 -msgid "-l | -r | [-s] grubdev osdisk." -msgstr "-l | -r | [-s] grub设备 系统ç£ç›˜" - -#: grub-core/commands/i386/pc/drivemap.c:414 -msgid "Manage the BIOS drive mappings." -msgstr "ç®¡ç† BIOS 设备映射。" - -#: grub-core/commands/i386/pc/halt.c:31 -msgid "Do not use APM to halt the computer." -msgstr "ä¸ä½¿ç”¨ APM 关闭计算机。" - -#: grub-core/commands/i386/pc/halt.c:119 -msgid "Halt the system, if possible using APM." -msgstr "优先使用 APM 关闭计算机。" - -#: grub-core/commands/i386/pc/lsapm.c:75 -msgid "no APM found" -msgstr "找ä¸åˆ° APM" - -#: grub-core/commands/i386/pc/lsapm.c:77 -#, c-format -msgid "" -"Version %u.%u\n" -"32-bit CS = 0x%x, len = 0x%x, offset = 0x%x\n" -"16-bit CS = 0x%x, len = 0x%x\n" -"DS = 0x%x, len = 0x%x\n" -msgstr "" -"版本 %u.%u\n" -"32-bit CS = 0x%x, len = 0x%x, offset = 0x%x\n" -"16-bit CS = 0x%x, len = 0x%x\n" -"DS = 0x%x, len = 0x%x\n" - -#: grub-core/commands/i386/pc/lsapm.c:86 -msgid "16-bit protected interface supported\n" -msgstr "支æŒ16ä½ä¿æŠ¤æŽ¥å£\n" - -#: grub-core/commands/i386/pc/lsapm.c:87 -msgid "16-bit protected interface unsupported\n" -msgstr "䏿”¯æŒ16ä½ä¿æŠ¤æŽ¥å£\n" - -#: grub-core/commands/i386/pc/lsapm.c:89 -msgid "32-bit protected interface supported\n" -msgstr "支æŒ32ä½ä¿æŠ¤æŽ¥å£\n" - -#: grub-core/commands/i386/pc/lsapm.c:90 -msgid "32-bit protected interface unsupported\n" -msgstr "䏿”¯æŒ32ä½ä¿æŠ¤æŽ¥å£\n" - -#: grub-core/commands/i386/pc/lsapm.c:92 -msgid "CPU Idle slows down processor\n" -msgstr "CPU 空闲使得处ç†å™¨å˜æ…¢\n" - -#: grub-core/commands/i386/pc/lsapm.c:93 -msgid "CPU Idle doesn't slow down processor\n" -msgstr "CPU 空闲ä¸ä½¿å¾—处ç†å™¨å˜æ…¢\n" - -#: grub-core/commands/i386/pc/lsapm.c:95 -msgid "APM disabled\n" -msgstr "APM å·²ç¦ç”¨\n" - -#: grub-core/commands/i386/pc/lsapm.c:95 -msgid "APM enabled\n" -msgstr "APM å·²å¯ç”¨\n" - -#: grub-core/commands/i386/pc/lsapm.c:97 -msgid "APM disengaged\n" -msgstr "" - -#: grub-core/commands/i386/pc/lsapm.c:97 -msgid "APM engaged\n" -msgstr "" - -#: grub-core/commands/i386/pc/lsapm.c:107 -msgid "Show APM information." -msgstr "显示 APM ä¿¡æ¯ã€‚" - -#. TRANSLATORS: It's musical notes, not the notes -#. you take. Play command expects arguments which can -#. be either a filename or tempo+notes. -#. This error happens if none is specified. -#: grub-core/commands/i386/pc/play.c:88 -msgid "filename or tempo and notes expected" -msgstr "æœŸæœ›å¾—åˆ°æ–‡ä»¶åæˆ–节å¥é€Ÿåº¦æˆ–音符" - -#: grub-core/commands/i386/pc/play.c:113 grub-core/commands/i386/pc/play.c:144 -#, c-format -msgid "Invalid tempo in %s" -msgstr "%s 中的无效节å¥é€Ÿåº¦ï¼ˆtempo)" - -#: grub-core/commands/i386/pc/play.c:151 grub-core/commands/macbless.c:172 -#: grub-core/fs/archelp.c:260 grub-core/fs/bfs.c:621 grub-core/fs/bfs.c:704 -#: grub-core/fs/btrfs.c:1726 grub-core/fs/btrfs.c:1755 -#: grub-core/fs/btrfs.c:1799 grub-core/fs/btrfs.c:1882 -#: grub-core/fs/btrfs.c:1906 grub-core/fs/fshelp.c:257 grub-core/fs/jfs.c:696 -#: grub-core/fs/minix.c:426 grub-core/fs/ufs.c:544 grub-core/fs/zfs/zfs.c:2083 -#: grub-core/fs/zfs/zfs.c:2095 grub-core/fs/zfs/zfs.c:2301 -#: grub-core/net/http.c:120 -#, c-format -msgid "file `%s' not found" -msgstr "文件“%sâ€æœªæ‰¾åˆ°" - -#: grub-core/commands/i386/pc/play.c:162 grub-core/commands/i386/pc/play.c:171 -#: grub-core/kern/misc.c:419 grub-core/script/execute.c:138 -#: grub-core/script/execute.c:244 -msgid "unrecognized number" -msgstr "无法识别的数字" - -#: grub-core/commands/i386/pc/play.c:190 -msgid "FILE | TEMPO [PITCH1 DURATION1] [PITCH2 DURATION2] ... " -msgstr "文件 | 节å¥é€Ÿåº¦ [音调1 æŒç»­æ—¶é—´1] [音调2 æŒç»­æ—¶é—´2] ... " - -#: grub-core/commands/i386/pc/play.c:191 -msgid "Play a tune." -msgstr "播放测试声音。" - -#: grub-core/commands/i386/pc/sendkey.c:39 -msgid "set numlock mode" -msgstr "设置 numlock 模å¼" - -#: grub-core/commands/i386/pc/sendkey.c:40 -msgid "set capslock mode" -msgstr "设置 capslock 模å¼" - -#: grub-core/commands/i386/pc/sendkey.c:41 -msgid "set scrolllock mode" -msgstr "设置 scrolllock 模å¼" - -#: grub-core/commands/i386/pc/sendkey.c:42 -msgid "set insert mode" -msgstr "设置æ’入模å¼" - -#: grub-core/commands/i386/pc/sendkey.c:43 -msgid "set pause mode" -msgstr "è®¾ç½®æš‚åœæ¨¡å¼" - -#: grub-core/commands/i386/pc/sendkey.c:44 -msgid "press left shift" -msgstr "按下左 shift" - -#: grub-core/commands/i386/pc/sendkey.c:45 -msgid "press right shift" -msgstr "æŒ‰ä¸‹å³ shift" - -#: grub-core/commands/i386/pc/sendkey.c:46 -msgid "press SysRq" -msgstr "按下 SysRq" - -#: grub-core/commands/i386/pc/sendkey.c:47 -msgid "press NumLock key" -msgstr "按下 NumLock é”®" - -#: grub-core/commands/i386/pc/sendkey.c:48 -msgid "press CapsLock key" -msgstr "按下 CapsLock é”®" - -#: grub-core/commands/i386/pc/sendkey.c:49 -msgid "press ScrollLock key" -msgstr "按下 ScrollLock é”®" - -#: grub-core/commands/i386/pc/sendkey.c:50 -msgid "press Insert key" -msgstr "按下 Insert é”®" - -#: grub-core/commands/i386/pc/sendkey.c:51 -msgid "press left alt" -msgstr "按下左 alt" - -#: grub-core/commands/i386/pc/sendkey.c:52 -msgid "press right alt" -msgstr "æŒ‰ä¸‹å³ alt" - -#: grub-core/commands/i386/pc/sendkey.c:53 -msgid "press left ctrl" -msgstr "按下左 ctrl" - -#: grub-core/commands/i386/pc/sendkey.c:54 -msgid "press right ctrl" -msgstr "æŒ‰ä¸‹å³ ctrl" - -#: grub-core/commands/i386/pc/sendkey.c:55 -msgid "don't update LED state" -msgstr "ä¸è¦æ›´æ–° LED 状æ€" - -#: grub-core/commands/i386/pc/sendkey.c:372 -msgid "[KEYSTROKE1] [KEYSTROKE2] ..." -msgstr "[按键1] [按键2] ..." - -#. TRANSLATORS: It can emulate multiple -#. keypresses. -#: grub-core/commands/i386/pc/sendkey.c:375 -msgid "Emulate a keystroke sequence" -msgstr "模拟一个按键åºåˆ—" - -#: grub-core/commands/i386/rdmsr.c:37 grub-core/commands/iorw.c:34 -#: grub-core/commands/memrw.c:33 grub-core/commands/setpci.c:73 -msgid "Save read value into variable VARNAME." -msgstr "将读å–的值存入å˜é‡ VARNAME。" - -#: grub-core/commands/i386/rdmsr.c:38 grub-core/commands/iorw.c:35 -#: grub-core/commands/memrw.c:34 grub-core/commands/probe.c:40 -#: grub-core/commands/search_wrap.c:40 grub-core/commands/setpci.c:74 -#: grub-core/commands/tr.c:32 -msgid "VARNAME" -msgstr "VARNAME" - -#: grub-core/commands/i386/rdmsr.c:55 grub-core/commands/i386/rdmsr.c:60 -#: grub-core/commands/i386/rdmsr.c:65 grub-core/commands/i386/wrmsr.c:47 -#: grub-core/commands/i386/wrmsr.c:52 grub-core/commands/i386/wrmsr.c:57 -msgid "unsupported instruction" -msgstr "䏿”¯æŒçš„æŒ‡ä»¤" - -#: grub-core/commands/i386/rdmsr.c:77 grub-core/commands/i386/wrmsr.c:69 -#: grub-core/commands/i386/wrmsr.c:77 grub-core/net/dns.c:727 -msgid "invalid argument" -msgstr "æ— æ•ˆçš„å‚æ•°" - -#: grub-core/commands/i386/rdmsr.c:94 grub-core/commands/memrw.c:125 -#: grub-core/commands/memrw.c:129 grub-core/commands/memrw.c:133 -msgid "ADDR" -msgstr "地å€" - -#: grub-core/commands/i386/rdmsr.c:95 -msgid "Read a CPU model specific register." -msgstr "读å–一个 CPU å“牌特有的寄存器。" - -#: grub-core/commands/i386/wrmsr.c:86 -msgid "ADDR VALUE" -msgstr "åœ°å€ å€¼" - -#: grub-core/commands/i386/wrmsr.c:87 -msgid "Write a value to a CPU model specific register." -msgstr "å‘一个 CPU å“牌特有的寄存器写入值。" - -#: grub-core/commands/ieee1275/suspend.c:34 -msgid "Run `go' to resume GRUB." -msgstr "è¿è¡Œâ€œgoâ€ä»¥æ¢å¤ GRUB è¿è¡Œã€‚" - -#: grub-core/commands/ieee1275/suspend.c:45 -msgid "Return to IEEE1275 prompt." -msgstr "回到 IEEE1275 æç¤ºç¬¦ã€‚" - -#: grub-core/commands/iorw.c:123 grub-core/commands/iorw.c:127 -#: grub-core/commands/iorw.c:131 grub-core/gdb/gdb.c:79 -msgid "PORT" -msgstr "端å£" - -#: grub-core/commands/iorw.c:123 -msgid "Read 8-bit value from PORT." -msgstr "从指定端å£è¯»å–8比特值。" - -#: grub-core/commands/iorw.c:127 -msgid "Read 16-bit value from PORT." -msgstr "从指定端å£è¯»å–16比特值。" - -#: grub-core/commands/iorw.c:131 -msgid "Read 32-bit value from PORT." -msgstr "从指定端å£è¯»å–32比特值。" - -#: grub-core/commands/iorw.c:135 grub-core/commands/iorw.c:139 -msgid "PORT VALUE [MASK]" -msgstr "ç«¯å£ å€¼ [掩ç ]" - -#: grub-core/commands/iorw.c:136 -msgid "Write 8-bit VALUE to PORT." -msgstr "呿Œ‡å®šç«¯å£å†™å…¥8比特值。" - -#: grub-core/commands/iorw.c:140 -msgid "Write 16-bit VALUE to PORT." -msgstr "呿Œ‡å®šç«¯å£å†™å…¥16比特值。" - -#: grub-core/commands/iorw.c:143 grub-core/commands/memrw.c:137 -#: grub-core/commands/memrw.c:141 grub-core/commands/memrw.c:145 -msgid "ADDR VALUE [MASK]" -msgstr "åœ°å€ å€¼ [掩ç ]" - -#: grub-core/commands/iorw.c:144 -msgid "Write 32-bit VALUE to PORT." -msgstr "呿Œ‡å®šç«¯å£å†™å…¥32比特值。" - -#: grub-core/commands/keylayouts.c:215 grub-core/commands/loadenv.c:61 -#: grub-core/commands/nativedisk.c:189 grub-core/efiemu/main.c:235 -#: grub-core/font/font.c:428 grub-core/gfxmenu/gfxmenu.c:63 -#: grub-core/kern/device.c:42 grub-core/kern/dl.c:740 -#, c-format -msgid "variable `%s' isn't set" -msgstr "å˜é‡â€œ%sâ€æœªè®¾ç½®" - -#: grub-core/commands/keylayouts.c:301 -msgid "Load a keyboard layout." -msgstr "载入一个键盘布局。" - -#. TRANSLATORS: "Check" in a sense that if this key is pressed then -#. "true" is returned, otherwise "false". -#: grub-core/commands/keystatus.c:32 -msgid "Check Shift key." -msgstr "检查 Shift 键。" - -#: grub-core/commands/keystatus.c:33 -msgid "Check Control key." -msgstr "检查 Ctrl 键。" - -#: grub-core/commands/keystatus.c:34 -msgid "Check Alt key." -msgstr "检查 Alt 键。" - -#. TRANSLATORS: there are 3 modifiers. -#: grub-core/commands/keystatus.c:106 -msgid "Check key modifier status." -msgstr "检查修饰键状æ€ã€‚" - -#: grub-core/commands/legacycfg.c:512 grub-core/commands/legacycfg.c:526 -#: grub-core/commands/legacycfg.c:546 grub-core/commands/legacycfg.c:559 -#: grub-core/commands/time.c:43 grub-core/script/function.c:109 -#: util/grub-file.c:100 util/grub-fstest.c:57 util/grub-mount.c:69 -#, c-format -msgid "can't find command `%s'" -msgstr "无法找到命令“%sâ€" - -#: grub-core/commands/legacycfg.c:813 grub-core/normal/auth.c:225 -#: util/grub-mkpasswd-pbkdf2.c:139 -msgid "Enter password: " -msgstr "输入å£ä»¤ï¼š" - -#. TRANSLATORS: "legacy config" means -#. "config as used by grub-legacy". -#: grub-core/commands/legacycfg.c:837 -msgid "Parse legacy config in same context" -msgstr "在相åŒçŽ¯å¢ƒä¸‹è§£æžæ—§ç‰ˆé…ç½®" - -#: grub-core/commands/legacycfg.c:842 -msgid "Parse legacy config in new context" -msgstr "åœ¨æ–°çŽ¯å¢ƒä¸‹è§£æžæ—§ç‰ˆé…ç½®" - -#: grub-core/commands/legacycfg.c:847 -msgid "Parse legacy config in same context taking only menu entries" -msgstr "在相åŒçŽ¯å¢ƒä¸‹è§£æžæ—§ç‰ˆé…置,åªå¤„ç†èœå•项" - -#: grub-core/commands/legacycfg.c:852 -msgid "Parse legacy config in new context taking only menu entries" -msgstr "åœ¨æ–°çŽ¯å¢ƒä¸‹è§£æžæ—§ç‰ˆé…置,åªå¤„ç†èœå•项" - -#: grub-core/commands/legacycfg.c:856 -msgid "[--no-mem-option] [--type=TYPE] FILE [ARG ...]" -msgstr "[--no-mem-option] [--type=类型] 文件 [傿•° ...]" - -#: grub-core/commands/legacycfg.c:857 -msgid "Simulate grub-legacy `kernel' command" -msgstr "模拟 grub-legacy \"kernel\" 命令" - -#: grub-core/commands/legacycfg.c:861 grub-core/commands/legacycfg.c:865 -msgid "FILE [ARG ...]" -msgstr "文件 [傿•° ...]" - -#: grub-core/commands/legacycfg.c:862 -msgid "Simulate grub-legacy `initrd' command" -msgstr "模拟 grub-legacy \"initrd\" 命令" - -#: grub-core/commands/legacycfg.c:866 -msgid "Simulate grub-legacy `modulenounzip' command" -msgstr "模拟 grub-legacy çš„ \"modulenounzip\" 命令" - -#: grub-core/commands/legacycfg.c:870 grub-core/commands/legacycfg.c:875 -msgid "[--md5] PASSWD [FILE]" -msgstr "[--md5] å£ä»¤ [文件]" - -#: grub-core/commands/legacycfg.c:871 -msgid "Simulate grub-legacy `password' command" -msgstr "模拟 grub-legacy \"password\" 命令" - -#: grub-core/commands/legacycfg.c:876 -msgid "Simulate grub-legacy `password' command in menu entry mode" -msgstr "在èœå•项模å¼ä¸‹æ¨¡æ‹Ÿ grub-legacy \"password\" 命令" - -#. TRANSLATORS: This option is used to override default filename -#. for loading and storing environment. -#: grub-core/commands/loadenv.c:37 -msgid "Specify filename." -msgstr "指定文件å。" - -#: grub-core/commands/loadenv.c:39 -msgid "Skip signature-checking of the environment file." -msgstr "è·³è¿‡å¯¹çŽ¯å¢ƒæ–‡ä»¶çš„ç­¾åæ£€æŸ¥ã€‚" - -#: grub-core/commands/loadenv.c:451 -msgid "[-f FILE] [-s|--skip-sig] [variable_name_to_whitelist] [...]" -msgstr "[-f 文件] [-s|--skip-sig] [è¦åŠ å…¥ç™½åå•çš„å˜é‡å] [...]" - -#: grub-core/commands/loadenv.c:452 -msgid "Load variables from environment block file." -msgstr "载入环境å˜é‡æ–‡ä»¶ã€‚" - -#: grub-core/commands/loadenv.c:455 -msgid "[-f FILE]" -msgstr "[-f 文件]" - -#: grub-core/commands/loadenv.c:456 -msgid "List variables from environment block file." -msgstr "显示环境å˜é‡æ–‡ä»¶å†…容。" - -#: grub-core/commands/loadenv.c:460 -msgid "[-f FILE] variable_name [...]" -msgstr "[-f 文件] å˜é‡å [...]" - -#: grub-core/commands/loadenv.c:461 -msgid "Save variables to environment block file." -msgstr "ä¿å­˜å˜é‡åˆ°æ–‡ä»¶ã€‚" - -#: grub-core/commands/ls.c:40 -msgid "Show a long list with more detailed information." -msgstr "列出详细信æ¯ã€‚" - -#: grub-core/commands/ls.c:41 -msgid "Print sizes in a human readable format." -msgstr "ä½¿ç”¨æ˜“è¯»çš„æ ¼å¼æ˜¾ç¤ºæ–‡ä»¶å¤§å°ã€‚" - -#: grub-core/commands/ls.c:42 -msgid "List all files." -msgstr "列出全部文件。" - -#: grub-core/commands/ls.c:73 -msgid "Network protocols:" -msgstr "网络å议:" - -#: grub-core/commands/ls.c:295 -msgid "[-l|-h|-a] [FILE ...]" -msgstr "[-l|-h|-a] [文件 ...]" - -#: grub-core/commands/ls.c:296 -msgid "List devices and files." -msgstr "列出设备和文件。" - -#: grub-core/commands/lsacpi.c:255 -msgid "Show version 1 tables only." -msgstr "仅显示版本 1 的表。" - -#: grub-core/commands/lsacpi.c:256 -msgid "Show version 2 and version 3 tables only." -msgstr "仅显示版本 2 和版本 3 的表。" - -#: grub-core/commands/lsacpi.c:306 -msgid "Show ACPI information." -msgstr "显示 ACPI ä¿¡æ¯ã€‚" - -#: grub-core/commands/lsmmap.c:31 -msgid "available RAM" -msgstr "å¯ç”¨ RAM" - -#: grub-core/commands/lsmmap.c:32 -msgid "reserved RAM" -msgstr "ä¿ç•™ RAM" - -#. TRANSLATORS: this refers to memory where ACPI tables are stored -#. and which can be used by OS once it loads ACPI tables. -#: grub-core/commands/lsmmap.c:35 -msgid "ACPI reclaimable RAM" -msgstr "" - -#. TRANSLATORS: this refers to memory which ACPI-compliant OS -#. is required to save accross hibernations. -#: grub-core/commands/lsmmap.c:38 -msgid "ACPI non-volatile storage RAM" -msgstr "" - -#: grub-core/commands/lsmmap.c:39 -msgid "faulty RAM (BadRAM)" -msgstr "" - -#: grub-core/commands/lsmmap.c:40 -msgid "persistent RAM" -msgstr "" - -#: grub-core/commands/lsmmap.c:41 -msgid "persistent RAM (legacy)" -msgstr "" - -#: grub-core/commands/lsmmap.c:42 -msgid "RAM holding coreboot tables" -msgstr "存有 coreboot 表的 RAM" - -#: grub-core/commands/lsmmap.c:43 -msgid "RAM holding firmware code" -msgstr "存有固件代ç çš„ RAM" - -#: grub-core/commands/lsmmap.c:52 -#, c-format -msgid "base_addr = 0x%llx, length = 0x%llx, %s\n" -msgstr "åŸºæœ¬åœ°å€ = 0x%llx,长度 = 0x%llx,%s\n" - -#: grub-core/commands/lsmmap.c:55 -#, c-format -msgid "base_addr = 0x%llx, length = 0x%llx, type = 0x%x\n" -msgstr "åŸºæœ¬åœ°å€ = 0x%llx,长度 = 0x%llx,类型 = 0x%x\n" - -#: grub-core/commands/lsmmap.c:79 -msgid "List memory map provided by firmware." -msgstr "列出默认的内存映射。" - -#: grub-core/commands/lspci.c:232 -msgid "List PCI devices." -msgstr "列出 PCI 设备。" - -#: grub-core/commands/macbless.c:224 -msgid "Bless FILE of HFS or HFS+ partition for intel macs." -msgstr "" - -#: grub-core/commands/macbless.c:228 -msgid "Bless DIR of HFS or HFS+ partition for PPC macs." -msgstr "" - -#: grub-core/commands/memrw.c:125 -msgid "Read 8-bit value from ADDR." -msgstr "从指定地å€è¯»å–8比特值。" - -#: grub-core/commands/memrw.c:129 -msgid "Read 16-bit value from ADDR." -msgstr "从指定地å€è¯»å–16比特值。" - -#: grub-core/commands/memrw.c:133 -msgid "Read 32-bit value from ADDR." -msgstr "从指定地å€è¯»å–32比特值。" - -#: grub-core/commands/memrw.c:138 -msgid "Write 8-bit VALUE to ADDR." -msgstr "呿Œ‡å®šåœ°å€å†™å…¥8比特值。" - -#: grub-core/commands/memrw.c:142 -msgid "Write 16-bit VALUE to ADDR." -msgstr "呿Œ‡å®šåœ°å€å†™å…¥16比特值。" - -#: grub-core/commands/memrw.c:146 -msgid "Write 32-bit VALUE to ADDR." -msgstr "呿Œ‡å®šåœ°å€å†™å…¥32比特值。" - -#: grub-core/commands/menuentry.c:31 -msgid "Menu entry type." -msgstr "èœå•项类型。" - -#: grub-core/commands/menuentry.c:31 grub-core/commands/menuentry.c:38 -#: grub-core/commands/menuentry.c:39 grub-core/gettext/gettext.c:520 -#: util/grub-fstest.c:520 util/grub-install.c:291 util/grub-install.c:304 -#: util/grub-mknetdir.c:51 util/grub-mkrescue.c:109 util/grub-mkrescue.c:110 -#: util/grub-mount.c:453 util/grub-render-label.c:65 -msgid "STRING" -msgstr "字符串" - -#: grub-core/commands/menuentry.c:33 -msgid "List of users allowed to boot this entry." -msgstr "å…许引导此项的用户列表。" - -#: grub-core/commands/menuentry.c:33 -msgid "USERNAME[,USERNAME]" -msgstr "用户å[,用户å]" - -#: grub-core/commands/menuentry.c:36 -msgid "Keyboard key to quickly boot this entry." -msgstr "" - -#: grub-core/commands/menuentry.c:36 -msgid "KEYBOARD_KEY" -msgstr "" - -#: grub-core/commands/menuentry.c:38 -msgid "Use STRING as menu entry body." -msgstr "" - -#: grub-core/commands/menuentry.c:39 -#, fuzzy -msgid "Menu entry identifier." -msgstr "èœå•项类型。" - -#. TRANSLATORS: menu entry can either be bootable by anyone or only by -#. handful of users. By default when security is active only superusers can -#. boot a given menu entry. With --unrestricted (this option) -#. anyone can boot it. -#: grub-core/commands/menuentry.c:44 -msgid "This entry can be booted by any user." -msgstr "该项å¯ä»¥ç”±ä»»ä½•用户引导å¯åŠ¨ã€‚" - -#: grub-core/commands/menuentry.c:323 grub-core/commands/menuentry.c:328 -#: grub-core/tests/test_blockarg.c:46 -msgid "BLOCK" -msgstr "å—" - -#: grub-core/commands/menuentry.c:323 -msgid "Define a menu entry." -msgstr "定义一个èœå•项。" - -#: grub-core/commands/menuentry.c:328 -msgid "Define a submenu." -msgstr "定义一个å­èœå•。" - -#. TRANSLATORS: this is module list header. Name -#. is module name, Ref Count is a reference counter -#. (how many modules or open descriptors use it). -#. Dependencies are the other modules it uses. -#. -#: grub-core/commands/minicmd.c:162 -msgid "Name\tRef Count\tDependencies\n" -msgstr "åç§°\t引用计数\tä¾èµ–\n" - -#: grub-core/commands/minicmd.c:201 -msgid "Show this message." -msgstr "显示此消æ¯ã€‚" - -#: grub-core/commands/minicmd.c:204 -msgid "ADDR [SIZE]" -msgstr "åœ°å€ [大å°]" - -#: grub-core/commands/minicmd.c:204 -msgid "Show memory contents." -msgstr "显示内存内容。" - -#: grub-core/commands/minicmd.c:207 grub-core/kern/corecmd.c:188 -#: util/grub-install.c:275 -msgid "MODULE" -msgstr "模å—" - -#: grub-core/commands/minicmd.c:207 -msgid "Remove a module." -msgstr "删除模å—。" - -#: grub-core/commands/minicmd.c:210 -msgid "Show loaded modules." -msgstr "显示已加载的模å—。" - -#: grub-core/commands/minicmd.c:213 -msgid "Exit from GRUB." -msgstr "退出 GRUB。" - -#: grub-core/commands/mips/loongson/lsspd.c:42 -msgid "No CS5536 found" -msgstr "未找到 CS5536" - -#: grub-core/commands/mips/loongson/lsspd.c:45 -#, c-format -msgid "CS5536 at %d:%d.%d\n" -msgstr "CS5536 ä½äºŽ %d:%d.%d\n" - -#. TRANSLATORS: System management bus is often used to access components like -#. RAM (info only, not data) or batteries. I/O space is where in memory -#. its ports are. -#: grub-core/commands/mips/loongson/lsspd.c:55 -#, c-format -msgid "System management bus controller I/O space is at 0x%x\n" -msgstr "" - -#. TRANSLATORS: it's shown in a report in a way -#. like number 1: ... number 2: ... -#. -#: grub-core/commands/mips/loongson/lsspd.c:66 -#, c-format -msgid "RAM slot number %d\n" -msgstr "" - -#: grub-core/commands/mips/loongson/lsspd.c:73 -#, c-format -msgid "Written SPD bytes: %d B.\n" -msgstr "" - -#: grub-core/commands/mips/loongson/lsspd.c:74 -#, c-format -msgid "Total flash size: %d B.\n" -msgstr "flash 总大å°ï¼š%d B。\n" - -#: grub-core/commands/mips/loongson/lsspd.c:79 -msgid "Memory type: DDR2." -msgstr "内存类型:DDR2。" - -#: grub-core/commands/mips/loongson/lsspd.c:83 -#, fuzzy, c-format -msgid "Part no: %s.\n" -msgstr "错误:%s。\n" - -#: grub-core/commands/mips/loongson/lsspd.c:86 -msgid "Memory type: Unknown." -msgstr "内存类型:未知。" - -#: grub-core/commands/mips/loongson/lsspd.c:97 -msgid "Print Memory information." -msgstr "输出内存信æ¯ã€‚" - -#: grub-core/commands/nativedisk.c:118 grub-core/commands/probe.c:118 -#: grub-core/commands/probe.c:124 util/grub-probe.c:450 -#, c-format -msgid "%s does not support UUIDs" -msgstr "%s 䏿”¯æŒ UUID" - -#: grub-core/commands/nativedisk.c:325 -msgid "[MODULE1 MODULE2 ...]" -msgstr "[模å—1 模å—2 ...]" - -#: grub-core/commands/nativedisk.c:326 -msgid "" -"Switch to native disk drivers. If no modules are specified default set (pata," -"ahci,usbms,ohci,uhci,ehci) is used" -msgstr "" - -#: grub-core/commands/parttool.c:40 -msgid "" -"Perform COMMANDS on partition.\n" -"Use `parttool PARTITION help' for the list of available commands." -msgstr "" - -#: grub-core/commands/parttool.c:123 -msgid "=VAL" -msgstr "" - -#: grub-core/commands/parttool.c:136 -#, c-format -msgid "Sorry, no parttool is available for %s\n" -msgstr "抱歉,%s 没有å¯ç”¨çš„分区工具(parttool)\n" - -#: grub-core/commands/parttool.c:288 grub-core/lib/arg.c:285 -#: grub-core/lib/arg.c:351 -#, c-format -msgid "unknown argument `%s'" -msgstr "æœªçŸ¥å‚æ•°â€œ%sâ€" - -#: grub-core/commands/parttool.c:344 -msgid "PARTITION COMMANDS" -msgstr "分区 命令" - -#: grub-core/commands/password.c:85 -msgid "USER PASSWORD" -msgstr "用户 å£ä»¤" - -#: grub-core/commands/password.c:86 -msgid "Set user password (plaintext). Unrecommended and insecure." -msgstr "设置用户å£ä»¤(纯文本)(䏿ލè且ä¸å®‰å…¨)。" - -#. TRANSLATORS: it means that the string which -#. was supposed to be a password hash doesn't -#. have a correct format, not to password -#. mismatch. -#: grub-core/commands/password_pbkdf2.c:98 -#: grub-core/commands/password_pbkdf2.c:115 -#: grub-core/commands/password_pbkdf2.c:123 -#: grub-core/commands/password_pbkdf2.c:150 -#: grub-core/commands/password_pbkdf2.c:179 -msgid "invalid PBKDF2 password" -msgstr "无效的 PBKDF2 密ç " - -#: grub-core/commands/password_pbkdf2.c:202 -msgid "USER PBKDF2_PASSWORD" -msgstr "用户 PBKDF2_PASSWORD" - -#: grub-core/commands/password_pbkdf2.c:203 -msgid "Set user password (PBKDF2). " -msgstr "设置用户命令(PBKDF2)。" - -#: grub-core/commands/pcidump.c:39 grub-core/commands/setpci.c:69 -msgid "Select device by vendor and device IDs." -msgstr "按供应商和设备 ID 选择设备。" - -#: grub-core/commands/pcidump.c:40 grub-core/commands/setpci.c:70 -msgid "[vendor]:[device]" -msgstr "" - -#: grub-core/commands/pcidump.c:41 grub-core/commands/setpci.c:71 -msgid "Select device by its position on the bus." -msgstr "使用在总线上的ä½ç½®é€‰æ‹©è®¾å¤‡ã€‚" - -#: grub-core/commands/pcidump.c:42 grub-core/commands/setpci.c:72 -msgid "[bus]:[slot][.func]" -msgstr "" - -#: grub-core/commands/pcidump.c:109 grub-core/commands/pcidump.c:138 -#: grub-core/commands/setpci.c:183 grub-core/commands/setpci.c:214 -#: grub-core/fs/zfs/zfs.c:3794 grub-core/kern/emu/hostdisk.c:458 -#: grub-core/kern/emu/hostdisk.c:473 grub-core/kern/file.c:44 -#, c-format -msgid "missing `%c' symbol" -msgstr "缺失“%câ€ç¬¦å·" - -#: grub-core/commands/pcidump.c:168 -msgid "[-s POSITION] [-d DEVICE]" -msgstr "[-s ä½ç½®] [-d 设备]" - -#: grub-core/commands/pcidump.c:169 -msgid "Show raw dump of the PCI configuration space." -msgstr "显示 PCI é…置空间的原始转储数æ®ã€‚" - -#: grub-core/commands/pgp.c:45 -msgid "Skip signature-checking of the public key file." -msgstr "è·³è¿‡å…¬é’¥æ–‡ä»¶çš„ç­¾åæ£€æŸ¥ã€‚" - -#. TRANSLATORS: it's about GNUPG signatures. -#: grub-core/commands/pgp.c:71 grub-core/commands/pgp.c:81 -#: grub-core/commands/pgp.c:86 grub-core/commands/pgp.c:96 -#: grub-core/commands/pgp.c:103 grub-core/commands/pgp.c:107 -#: grub-core/commands/pgp.c:114 grub-core/commands/pgp.c:119 -#: grub-core/commands/pgp.c:124 grub-core/commands/pgp.c:128 -#: grub-core/commands/pgp.c:268 grub-core/commands/pgp.c:276 -#: grub-core/commands/pgp.c:281 grub-core/commands/pgp.c:289 -#: grub-core/commands/pgp.c:320 grub-core/commands/pgp.c:327 -#: grub-core/commands/pgp.c:332 grub-core/commands/pgp.c:342 -#: grub-core/commands/pgp.c:468 grub-core/commands/pgp.c:471 -#: grub-core/commands/pgp.c:474 grub-core/commands/pgp.c:477 -#: grub-core/commands/pgp.c:484 grub-core/commands/pgp.c:490 -#: grub-core/commands/pgp.c:665 -msgid "bad signature" -msgstr "无效的签å" - -#. TRANSLATORS: %08x is 32-bit key id. -#: grub-core/commands/pgp.c:636 grub-core/commands/pgp.c:812 -#, c-format -msgid "public key %08x not found" -msgstr "公钥 %08x 未找到" - -#: grub-core/commands/pgp.c:651 grub-core/disk/diskfilter.c:772 -#: grub-core/disk/diskfilter.c:782 grub-core/fs/ntfs.c:404 -#: grub-core/fs/zfs/zfs.c:1933 grub-core/normal/menu.c:428 -#, c-format -msgid "module `%s' isn't loaded" -msgstr "模å—“%sâ€æœªè½½å…¥" - -#: grub-core/commands/pgp.c:994 -msgid "[-s|--skip-sig] FILE SIGNATURE_FILE [PUBKEY_FILE]" -msgstr "[-s|--skip-sig] 文件 ç­¾åæ–‡ä»¶ [公钥文件]" - -#: grub-core/commands/pgp.c:995 -msgid "Verify detached signature." -msgstr "验è¯åˆ†ç¦»çš„ç­¾å。" - -#: grub-core/commands/pgp.c:998 -msgid "[-s|--skip-sig] PUBKEY_FILE" -msgstr "[-s|--skip-sig] 公钥文件" - -#: grub-core/commands/pgp.c:999 -msgid "Add PUBKEY_FILE to trusted keys." -msgstr "å‘信任密钥列表中添加指定<公钥文件>。" - -#: grub-core/commands/pgp.c:1003 -msgid "Show the list of trusted keys." -msgstr "显示信任密钥列表。" - -#: grub-core/commands/pgp.c:1005 -msgid "PUBKEY_ID" -msgstr "公钥ID" - -#: grub-core/commands/pgp.c:1006 -msgid "Remove PUBKEY_ID from trusted keys." -msgstr "从信任密钥中删除所指定<公钥ID>对应的项。" - -#: grub-core/commands/probe.c:40 grub-core/commands/tr.c:32 -msgid "Set a variable to return value." -msgstr "设置用于返回值的å˜é‡ã€‚" - -#. TRANSLATORS: It's a driver that is currently in use to access -#. the diven disk. -#: grub-core/commands/probe.c:43 -msgid "Determine driver." -msgstr "指定驱动。" - -#: grub-core/commands/probe.c:44 -msgid "Determine partition map type." -msgstr "指定分区表类型。" - -#: grub-core/commands/probe.c:45 -msgid "Determine filesystem type." -msgstr "指定文件系统类型。" - -#: grub-core/commands/probe.c:46 -msgid "Determine filesystem UUID." -msgstr "指定文件系统 UUID。" - -#: grub-core/commands/probe.c:47 -msgid "Determine filesystem label." -msgstr "æŒ‡å®šæ–‡ä»¶ç³»ç»Ÿå·æ ‡ã€‚" - -#: grub-core/commands/probe.c:139 grub-core/commands/probe.c:146 -#: util/grub-probe.c:462 -#, c-format -msgid "filesystem `%s' does not support labels" -msgstr "文件系统“%sâ€ä¸æ”¯æŒæ ‡ç­¾" - -#: grub-core/commands/probe.c:165 grub-core/fs/zfs/zfsinfo.c:430 -#: grub-core/loader/i386/bsd.c:169 util/grub-setup.c:223 -msgid "DEVICE" -msgstr "设备" - -#: grub-core/commands/probe.c:166 -msgid "Retrieve device info." -msgstr "获å–设备信æ¯ã€‚" - -#: grub-core/commands/read.c:85 -msgid "[ENVVAR]" -msgstr "[环境å˜é‡]" - -#: grub-core/commands/read.c:86 -msgid "Set variable with user input." -msgstr "将用户输入值ä¿å­˜åˆ°å˜é‡ã€‚" - -#: grub-core/commands/reboot.c:40 -msgid "Reboot the computer." -msgstr "釿–°å¯åŠ¨è®¡ç®—æœºã€‚" - -#. TRANSLATORS: in regexp you can mark some -#. groups with parentheses. These groups are -#. then numbered and you can save some of -#. them in variables. In other programs -#. those components aree often referenced with -#. back slash, e.g. \1. Compare -#. sed -e 's,\([a-z][a-z]*\),lowercase=\1,g' -#. The whole matching component is saved in VARNAME, not its number. -#. -#: grub-core/commands/regexp.c:44 -msgid "Store matched component NUMBER in VARNAME." -msgstr "" - -#: grub-core/commands/regexp.c:45 -msgid "[NUMBER:]VARNAME" -msgstr "[æ•°å­—:]å˜é‡å" - -#. TRANSLATORS: This are two arguments. So it's -#. two separate units to translate and pay -#. attention not to reverse them. -#: grub-core/commands/regexp.c:157 -msgid "REGEXP STRING" -msgstr "æ­£åˆ™è¡¨è¾¾å¼ å­—ç¬¦ä¸²" - -#: grub-core/commands/regexp.c:158 -msgid "Test if REGEXP matches STRING." -msgstr "æµ‹è¯•æ­£åˆ™è¡¨è¾¾å¼æ˜¯å¦åŒ¹é…相应的字符串。" - -#: grub-core/commands/search.c:324 -msgid "NAME [VARIABLE] [HINTS]" -msgstr "åç§° [å˜é‡] [æç¤º]" - -#: grub-core/commands/search_file.c:4 -msgid "" -"Search devices by file. If VARIABLE is specified, the first device found is " -"set to a variable." -msgstr "" -"æœç´¢å«æœ‰æŒ‡å®šæ–‡ä»¶çš„设备。如果指定了å˜é‡ï¼Œæ‰¾åˆ°çš„第一个设备会被ä¿å­˜åˆ°å˜é‡ä¸­ã€‚" - -#: grub-core/commands/search_label.c:4 -msgid "" -"Search devices by label. If VARIABLE is specified, the first device found is " -"set to a variable." -msgstr "æŒ‰å·æ ‡æœç´¢ã€‚如果指定了å˜é‡ï¼Œæ‰¾åˆ°çš„第一个设备会被ä¿å­˜åˆ°å˜é‡ä¸­ã€‚" - -#: grub-core/commands/search_uuid.c:4 -msgid "" -"Search devices by UUID. If VARIABLE is specified, the first device found is " -"set to a variable." -msgstr "按 UUID æœç´¢ã€‚如果指定了å˜é‡ï¼Œæ‰¾åˆ°çš„第一个设备会被ä¿å­˜åˆ°å˜é‡ä¸­ã€‚" - -#: grub-core/commands/search_wrap.c:34 -msgid "Search devices by a file." -msgstr "按文件æœç´¢è®¾å¤‡ã€‚" - -#: grub-core/commands/search_wrap.c:35 -msgid "Search devices by a filesystem label." -msgstr "æŒ‰æ–‡ä»¶ç³»ç»Ÿå·æ ‡æœç´¢è®¾å¤‡ã€‚" - -#: grub-core/commands/search_wrap.c:37 -msgid "Search devices by a filesystem UUID." -msgstr "按文件系统 UUID æœç´¢è®¾å¤‡ã€‚" - -#: grub-core/commands/search_wrap.c:40 -msgid "Set a variable to the first device found." -msgstr "为找到的第一个设备设置å˜é‡ã€‚" - -#: grub-core/commands/search_wrap.c:42 -msgid "Do not probe any floppy drive." -msgstr "䏿£€æµ‹ä»»ä½•软盘驱动器。" - -#: grub-core/commands/search_wrap.c:44 -msgid "" -"First try the device HINT. If HINT ends in comma, also try subpartitions" -msgstr "首先å°è¯•设备 HINT,如果 HINT 以逗å·ç»“å°¾åˆ™åŒæ—¶å°è¯•å…¶å­åˆ†åŒº" - -#: grub-core/commands/search_wrap.c:45 grub-core/commands/search_wrap.c:49 -#: grub-core/commands/search_wrap.c:53 grub-core/commands/search_wrap.c:57 -#: grub-core/commands/search_wrap.c:61 grub-core/commands/search_wrap.c:65 -msgid "HINT" -msgstr "线索(HINT)" - -#: grub-core/commands/search_wrap.c:47 -#, fuzzy -msgid "" -"First try the device HINT if currently running on IEEE1275. If HINT ends in " -"comma, also try subpartitions" -msgstr "首先å°è¯•设备 HINT,如果 HINT 以逗å·ç»“å°¾åˆ™åŒæ—¶å°è¯•å…¶å­åˆ†åŒº" - -#: grub-core/commands/search_wrap.c:51 -#, fuzzy -msgid "" -"First try the device HINT if currently running on BIOS. If HINT ends in " -"comma, also try subpartitions" -msgstr "首先å°è¯•设备 HINT,如果 HINT 以逗å·ç»“å°¾åˆ™åŒæ—¶å°è¯•å…¶å­åˆ†åŒº" - -#: grub-core/commands/search_wrap.c:55 -#, fuzzy -msgid "" -"First try the device HINT if direct hardware access is supported. If HINT " -"ends in comma, also try subpartitions" -msgstr "首先å°è¯•设备 HINT,如果 HINT 以逗å·ç»“å°¾åˆ™åŒæ—¶å°è¯•å…¶å­åˆ†åŒº" - -#: grub-core/commands/search_wrap.c:59 -#, fuzzy -msgid "" -"First try the device HINT if currently running on EFI. If HINT ends in " -"comma, also try subpartitions" -msgstr "首先å°è¯•设备 HINT,如果 HINT 以逗å·ç»“å°¾åˆ™åŒæ—¶å°è¯•å…¶å­åˆ†åŒº" - -#: grub-core/commands/search_wrap.c:63 -#, fuzzy -msgid "" -"First try the device HINT if currently running on ARC. If HINT ends in " -"comma, also try subpartitions" -msgstr "首先å°è¯•设备 HINT,如果 HINT 以逗å·ç»“å°¾åˆ™åŒæ—¶å°è¯•å…¶å­åˆ†åŒº" - -#: grub-core/commands/search_wrap.c:207 -msgid "[-f|-l|-u|-s|-n] [--hint HINT [--hint HINT] ...] NAME" -msgstr "[-f|-l|-u|-s|-n] [--hint 线索 [--hint 线索] ...] åç§°" - -#: grub-core/commands/search_wrap.c:209 -#, fuzzy -msgid "" -"Search devices by file, filesystem label or filesystem UUID. If --set is " -"specified, the first device found is set to a variable. If no variable name " -"is specified, `root' is used." -msgstr "" -"按文件ã€å·æ ‡æˆ– UUID æœç´¢ã€‚如果指定了å˜é‡(--set),找到的第一个设备会被ä¿å­˜åˆ°å˜" -"é‡ä¸­ã€‚如果没有指定å˜é‡å则ä¿å­˜åˆ°â€œrootâ€ã€‚" - -#: grub-core/commands/setpci.c:132 -#, c-format -msgid "Register %x of %x:%02x.%x is %x\n" -msgstr "" - -#: grub-core/commands/setpci.c:333 -msgid "[-s POSITION] [-d DEVICE] [-v VAR] REGISTER[=VALUE[:MASK]]" -msgstr "[-s ä½ç½®] [-d 设备] [-v å˜é‡] 寄存器[=值[:掩ç ]]" - -#: grub-core/commands/setpci.c:335 -msgid "Manipulate PCI devices." -msgstr "æ“作 PCI 设备。" - -#: grub-core/commands/sleep.c:32 -msgid "Verbose countdown." -msgstr "显示倒计时。" - -#: grub-core/commands/sleep.c:33 -msgid "Allow to interrupt with ESC." -msgstr "å…许使用 ESC 键中断。" - -#: grub-core/commands/sleep.c:109 -msgid "NUMBER_OF_SECONDS" -msgstr "ç§’æ•°" - -#: grub-core/commands/sleep.c:110 -msgid "Wait for a specified number of seconds." -msgstr "等待指定时间(ç§’)。" - -#: grub-core/commands/syslinuxcfg.c:50 util/grub-syslinux2cfg.c:66 -msgid "root directory of the syslinux disk [default=/]." -msgstr "syslinux ç£ç›˜çš„æ ¹ç›®å½• [默认=/]。" - -#: grub-core/commands/syslinuxcfg.c:53 util/grub-syslinux2cfg.c:72 -msgid "" -"current directory of syslinux [default is parent directory of input file]." -msgstr "syslinux 的当å‰ç›®å½• [默认为输入文件的上层目录]。" - -#: grub-core/commands/syslinuxcfg.c:55 util/grub-syslinux2cfg.c:75 -msgid "assume input is an isolinux configuration file." -msgstr "å‡å®šè¾“入是 isolinux é…置文件。" - -#: grub-core/commands/syslinuxcfg.c:56 util/grub-syslinux2cfg.c:76 -msgid "assume input is a pxelinux configuration file." -msgstr "å‡å®šè¾“入是 pxelinux é…置文件。" - -#: grub-core/commands/syslinuxcfg.c:57 util/grub-syslinux2cfg.c:77 -msgid "assume input is a syslinux configuration file." -msgstr "å‡å®šè¾“入是 syslinux é…置文件。" - -#. TRANSLATORS: "syslinux config" means -#. "config as used by syslinux". -#: grub-core/commands/syslinuxcfg.c:189 -msgid "Execute syslinux config in same context" -msgstr "在相åŒä¸Šä¸‹æ–‡ä¸­æ‰§è¡Œ syslinux é…ç½®" - -#: grub-core/commands/syslinuxcfg.c:195 -msgid "Execute syslinux config in new context" -msgstr "在新的上下文中执行 syslinux é…ç½®" - -#: grub-core/commands/syslinuxcfg.c:201 -#, fuzzy -msgid "Execute syslinux config in same context taking only menu entries" -msgstr "载入å¦å¤–çš„é…置文件(䏿”¹å˜çŽ¯å¢ƒï¼Œä»…è½½å…¥èœå•项)。" - -#: grub-core/commands/syslinuxcfg.c:207 -#, fuzzy -msgid "Execute syslinux config in new context taking only menu entries" -msgstr "载入å¦å¤–çš„é…置文件(䏿”¹å˜çŽ¯å¢ƒï¼Œä»…è½½å…¥èœå•项)。" - -#: grub-core/commands/terminal.c:90 -msgid "no terminal specified" -msgstr "没有指定终端" - -#: grub-core/commands/terminal.c:112 grub-core/commands/terminal.c:139 -#, c-format -msgid "terminal `%s' isn't found" -msgstr "终端“%sâ€æœªæ‰¾åˆ°" - -#: grub-core/commands/terminal.c:244 -msgid "Active input terminals:" -msgstr "活动输入终端:" - -#: grub-core/commands/terminal.c:245 -msgid "Available input terminals:" -msgstr "å¯ç”¨è¾“入终端:" - -#: grub-core/commands/terminal.c:261 -msgid "Active output terminals:" -msgstr "活动输出终端:" - -#: grub-core/commands/terminal.c:262 -msgid "Available output terminals:" -msgstr "å¯ç”¨è¾“入终端:" - -#: grub-core/commands/terminal.c:271 grub-core/commands/terminal.c:276 -msgid "[--append|--remove] [TERMINAL1] [TERMINAL2] ..." -msgstr "[--append|--remove] [终端1] [终端2] ..." - -#: grub-core/commands/terminal.c:273 -msgid "List or select an input terminal." -msgstr "列出或选择一个输入终端。" - -#: grub-core/commands/terminal.c:278 -msgid "List or select an output terminal." -msgstr "列出或选择一个输出终端。" - -#: grub-core/commands/test.c:444 -msgid "EXPRESSION ]" -msgstr "è¡¨è¾¾å¼ ]" - -#: grub-core/commands/test.c:444 grub-core/commands/test.c:447 -msgid "Evaluate an expression." -msgstr "执行该表达å¼ã€‚" - -#: grub-core/commands/test.c:447 -msgid "EXPRESSION" -msgstr "表达å¼" - -#: grub-core/commands/testload.c:164 -msgid "Load the same file in multiple ways." -msgstr "ä»¥å¤šç§æ–¹å¼è½½å…¥åŒä¸€ä¸ªæ–‡ä»¶ã€‚" - -#: grub-core/commands/testspeed.c:35 -msgid "Specify size for each read operation" -msgstr "ä¸ºæ¯æ¬¡è¯»å–æ“作指定大å°" - -#: grub-core/commands/testspeed.c:58 -msgid "invalid block size" -msgstr "无效的å—大å°" - -#: grub-core/commands/testspeed.c:80 -#, c-format -msgid "File size: %s\n" -msgstr "文件大å°ï¼š%s\n" - -#: grub-core/commands/testspeed.c:83 -#, c-format -msgid "Elapsed time: %d.%03d s \n" -msgstr "ç»è¿‡æ—¶é—´ï¼š%d.%03d s \n" - -#: grub-core/commands/testspeed.c:92 -#, c-format -msgid "Speed: %s \n" -msgstr "速度:%s \n" - -#: grub-core/commands/testspeed.c:107 -msgid "[-s SIZE] FILENAME" -msgstr "[-s 大å°] 文件å" - -#: grub-core/commands/testspeed.c:108 -msgid "Test file read speed." -msgstr "测试文件读å–速度。" - -#: grub-core/commands/time.c:38 grub-core/script/execute.c:974 -msgid "no command is specified" -msgstr "没有指定命令" - -#: grub-core/commands/time.c:50 -#, c-format -msgid "Elapsed time: %d.%03d seconds \n" -msgstr "ç»è¿‡æ—¶é—´ï¼š%d.%03d ç§’\n" - -#: grub-core/commands/time.c:61 -msgid "COMMAND [ARGS]" -msgstr "命令 [傿•°]" - -#: grub-core/commands/time.c:62 -msgid "Measure time used by COMMAND" -msgstr "测é‡ç»™å®š<命令>所使用的时间" - -#: grub-core/commands/tr.c:33 -msgid "Translate to upper case." -msgstr "转æ¢è‡³å¤§å†™ã€‚" - -#: grub-core/commands/tr.c:34 -msgid "Translate to lower case." -msgstr "转æ¢è‡³å°å†™ã€‚" - -#: grub-core/commands/tr.c:119 -msgid "[OPTIONS] [SET1] [SET2] [STRING]" -msgstr "" - -#: grub-core/commands/tr.c:120 -msgid "Translate SET1 characters to SET2 in STRING." -msgstr "" - -#. TRANSLATORS: it's a command description. -#: grub-core/commands/true.c:50 -msgid "Do nothing, successfully." -msgstr "未进行æ“作,æˆåŠŸã€‚" - -#. TRANSLATORS: it's a command description. -#: grub-core/commands/true.c:54 -msgid "Do nothing, unsuccessfully." -msgstr "未进行æ“作,失败。" - -#: grub-core/commands/usbtest.c:221 -msgid "Test USB support." -msgstr "测试 USB 支æŒã€‚" - -#: grub-core/commands/verifiers.c:120 -#, c-format -msgid "verification requested but nobody cares: %s" -msgstr "请求进行验è¯ä½†æ²¡æœ‰äººå…³å¿ƒç»“果:%s" - -#: grub-core/commands/verifiers.c:140 -msgid "big file signature isn't implemented yet" -msgstr "大文件签å尚未实现" - -#: grub-core/commands/videoinfo.c:61 -msgid "Text-only " -msgstr "仅文本 " - -#. TRANSLATORS: "Direct color" is a mode when the color components -#. are written dirrectly into memory. -#: grub-core/commands/videoinfo.c:66 -#, c-format -msgid "Direct color, mask: %d/%d/%d/%d pos: %d/%d/%d/%d" -msgstr "" - -#. TRANSLATORS: In "paletted color" mode you write the index of the color -#. in the palette. Synonyms include "packed pixel". -#: grub-core/commands/videoinfo.c:78 -msgid "Paletted " -msgstr "" - -#: grub-core/commands/videoinfo.c:80 -msgid "YUV " -msgstr "YUV " - -#. TRANSLATORS: "Planar" is the video memory where you have to write -#. in several different banks "plans" to control the different color -#. components of the same pixel. -#: grub-core/commands/videoinfo.c:85 -msgid "Planar " -msgstr "" - -#: grub-core/commands/videoinfo.c:87 -msgid "Hercules " -msgstr "" - -#: grub-core/commands/videoinfo.c:89 -msgid "CGA " -msgstr "" - -#. TRANSLATORS: Non-chain 4 is a 256-color planar -#. (unchained) video memory mode. -#: grub-core/commands/videoinfo.c:93 -msgid "Non-chain 4 " -msgstr "" - -#: grub-core/commands/videoinfo.c:95 -msgid "Monochrome " -msgstr "" - -#: grub-core/commands/videoinfo.c:97 -msgid "Unknown video mode " -msgstr "æœªçŸ¥è§†é¢‘æ¨¡å¼ " - -#: grub-core/commands/videoinfo.c:111 -msgid " EDID checksum invalid" -msgstr " EDID 校验和无效" - -#: grub-core/commands/videoinfo.c:116 -#, c-format -msgid " EDID version: %u.%u\n" -msgstr " EDID 版本:%u.%u\n" - -#: grub-core/commands/videoinfo.c:120 -#, c-format -msgid " Preferred mode: %ux%u\n" -msgstr "" - -#: grub-core/commands/videoinfo.c:123 -msgid " No preferred mode available\n" -msgstr "" - -#: grub-core/commands/videoinfo.c:146 grub-core/video/video.c:490 -#: grub-core/video/video.c:498 grub-core/video/video.c:509 -#: grub-core/video/video.c:520 grub-core/video/video.c:528 -#, c-format -msgid "invalid video mode specification `%s'" -msgstr "无效的视频模å¼è§„格“%sâ€" - -#: grub-core/commands/videoinfo.c:168 -msgid "List of supported video modes:" -msgstr "支æŒçš„视频模å¼åˆ—表:" - -#: grub-core/commands/videoinfo.c:169 -msgid "Legend: mask/position=red/green/blue/reserved" -msgstr "" - -#: grub-core/commands/videoinfo.c:176 -#, c-format -msgid "Adapter `%s':\n" -msgstr "适é…器“%sâ€ï¼š\n" - -#: grub-core/commands/videoinfo.c:180 -msgid " No info available" -msgstr " 没有å¯ç”¨ä¿¡æ¯" - -#: grub-core/commands/videoinfo.c:198 -msgid " Failed to initialize video adapter" -msgstr "" - -#. TRANSLATORS: "x" has to be entered in, -#. like an identifier, so please don't -#. use better Unicode codepoints. -#: grub-core/commands/videoinfo.c:239 grub-core/commands/videoinfo.c:248 -msgid "[WxH[xD]]" -msgstr "" - -#: grub-core/commands/videoinfo.c:240 grub-core/commands/videoinfo.c:249 -msgid "" -"List available video modes. If resolution is given show only modes matching " -"it." -msgstr "列出å¯ç”¨æ˜¾ç¤ºæ¨¡å¼ã€‚å¦‚æžœå·²æŒ‡å®šåˆ†è¾¨çŽ‡ï¼Œåˆ™åªæ˜¾ç¤ºåŒ¹é…的模å¼ã€‚" - -#. TRANSLATORS: "x" has to be entered in, -#. like an identifier, so please don't -#. use better Unicode codepoints. -#: grub-core/commands/videotest.c:225 -msgid "[WxH]" -msgstr "" - -#. TRANSLATORS: Here, on the other hand, it's -#. nicer to use unicode cross instead of x. -#: grub-core/commands/videotest.c:228 -msgid "Test video subsystem in mode WxH." -msgstr "在 WxH 模似下测试显示å­ç³»ç»Ÿã€‚" - -#: grub-core/commands/videotest.c:231 -msgid "Test video subsystem." -msgstr "测试显示å­ç³»ç»Ÿã€‚" - -#: grub-core/commands/xen/lsxen.c:80 grub-core/commands/xen/lsxen.c:82 -msgid "[DIR]" -msgstr "[目录]" - -#: grub-core/commands/xen/lsxen.c:81 grub-core/commands/xen/lsxen.c:83 -msgid "List Xen storage." -msgstr "列出 Xen 存储。" - -#. TRANSLATORS: GRUBUUID stands for "filesystem -#. UUID as used in GRUB". -#: grub-core/commands/xnu_uuid.c:110 -msgid "[-l] GRUBUUID [VARNAME]" -msgstr "[-l] GRUBUUID [å˜é‡å]" - -#: grub-core/commands/xnu_uuid.c:111 -#, fuzzy -msgid "" -"Transform 64-bit UUID to format suitable for XNU. If -l is given keep it " -"lowercase as done by blkid." -msgstr "å°† 64 ä½çš„ UUID è½¬æ¢æˆ XNU 的格å¼ã€‚" - -#: grub-core/disk/arc/arcdisk.c:248 grub-core/disk/efi/efidisk.c:603 -#: grub-core/disk/i386/pc/biosdisk.c:498 grub-core/disk/i386/pc/biosdisk.c:543 -#: grub-core/disk/ieee1275/nand.c:198 grub-core/disk/ieee1275/obdisk.c:527 -#: grub-core/disk/ieee1275/ofdisk.c:586 -#, c-format -msgid "failure reading sector 0x%llx from `%s'" -msgstr "" - -#: grub-core/disk/arc/arcdisk.c:284 grub-core/disk/efi/efidisk.c:626 -#: grub-core/disk/i386/pc/biosdisk.c:548 grub-core/disk/ieee1275/ofdisk.c:606 -#, c-format -msgid "failure writing sector 0x%llx to `%s'" -msgstr "" - -#: grub-core/disk/cryptodisk.c:40 -msgid "Mount by UUID." -msgstr "按 UUID 挂载。" - -#. TRANSLATORS: It's still restricted to cryptodisks only. -#: grub-core/disk/cryptodisk.c:42 -msgid "Mount all." -msgstr "挂载全部。" - -#: grub-core/disk/cryptodisk.c:43 -msgid "Mount all volumes with `boot' flag set." -msgstr "挂载所有设置了“bootâ€ï¼ˆâ€œå¼•导â€ï¼‰æ ‡å¿—çš„å·ã€‚" - -#. TRANSLATORS: The first %s is the file being looked at, the second %s is -#. the error message. -#: grub-core/disk/cryptodisk.c:526 grub-core/kern/emu/hostdisk.c:152 -#: grub-core/kern/emu/hostdisk.c:262 grub-core/kern/emu/hostdisk.c:434 -#: grub-core/kern/emu/misc.c:168 grub-core/kern/emu/misc.c:174 -#: grub-core/kern/emu/misc.c:196 grub-core/osdep/bsd/getroot.c:92 -#: grub-core/osdep/bsd/getroot.c:168 grub-core/osdep/hurd/getroot.c:68 -#: grub-core/osdep/linux/blocklist.c:65 grub-core/osdep/linux/getroot.c:150 -#: grub-core/osdep/linux/hostdisk.c:194 grub-core/osdep/linux/hostdisk.c:421 -#: grub-core/osdep/linux/ofpath.c:417 grub-core/osdep/linux/ofpath.c:422 -#: grub-core/osdep/linux/ofpath.c:517 grub-core/osdep/linux/ofpath.c:530 -#: grub-core/osdep/sun/getroot.c:110 grub-core/osdep/windows/blocklist.c:98 -#: grub-core/tests/video_checksum.c:279 util/editenv.c:46 util/glue-efi.c:115 -#: util/glue-efi.c:120 util/glue-efi.c:130 util/grub-editenv.c:138 -#: util/grub-editenv.c:192 util/grub-file.c:83 util/grub-fstest.c:128 -#: util/grub-fstest.c:568 util/grub-install-common.c:92 -#: util/grub-install-common.c:94 util/grub-install-common.c:101 -#: util/grub-install-common.c:529 util/grub-menulst2cfg.c:53 -#: util/grub-menulst2cfg.c:68 util/grub-mkimage.c:292 util/grub-mklayout.c:504 -#: util/grub-mklayout.c:516 util/grub-mknetdir.c:133 util/grub-mknetdir.c:151 -#: util/grub-mkrescue.c:627 util/grub-mkrescue.c:631 util/grub-mkrescue.c:879 -#: util/grub-mkrescue.c:883 util/grub-mkstandalone.c:253 util/grub-mount.c:498 -#: util/grub-render-label.c:169 util/grub-script-check.c:175 -#: util/grub-syslinux2cfg.c:181 util/grub-syslinux2cfg.c:191 -#: util/grub-syslinux2cfg.c:212 util/grub-syslinux2cfg.c:228 util/misc.c:91 -#: util/render-label.c:76 util/render-label.c:163 util/render-label.c:174 -#: util/resolve.c:246 util/setup.c:783 -#, c-format -msgid "cannot open `%s': %s" -msgstr "无法打开“%sâ€ï¼š%s" - -#: grub-core/disk/cryptodisk.c:583 grub-core/disk/cryptodisk.c:628 -#: grub-core/kern/emu/hostdisk.c:270 grub-core/kern/emu/hostfs.c:142 -#: grub-core/osdep/linux/hostdisk.c:456 util/grub-editenv.c:143 -#: util/grub-editenv.c:149 util/grub-fstest.c:320 util/misc.c:111 -#, c-format -msgid "cannot seek `%s': %s" -msgstr "无法 seek \"%s\":%s" - -#: grub-core/disk/cryptodisk.c:1144 -msgid "SOURCE|-u UUID|-a|-b" -msgstr "" - -#: grub-core/disk/cryptodisk.c:1145 -msgid "Mount a crypto device." -msgstr "挂载一个加密设备。" - -#. TRANSLATORS: This message kicks in during the detection of -#. which modules needs to be included in core image. This happens -#. in the case of degraded RAID and means that autodetection may -#. fail to include some of modules. It's an installation time -#. message, not runtime message. -#: grub-core/disk/diskfilter.c:343 grub-core/disk/diskfilter.c:376 -#, c-format -msgid "" -"Couldn't find physical volume `%s'. Some modules may be missing from core " -"image." -msgstr "无法找到物ç†å·â€œ%sâ€ã€‚核心镜åƒä¸­å¯èƒ½ç¼ºå¤±äº†æŸäº›æ¨¡å—。" - -#: grub-core/disk/diskfilter.c:480 -#, c-format -msgid "physical volume %s not found" -msgstr "物ç†å· %s 未找到" - -#: grub-core/disk/efi/efidisk.c:600 grub-core/disk/efi/efidisk.c:623 -#, c-format -msgid "no media in `%s'" -msgstr "“%sâ€ä¸­æ²¡æœ‰åª’体" - -#: grub-core/disk/geli.c:75 -msgid "Couldn't load sha256" -msgstr "无法载入 sha256" - -#: grub-core/disk/geli.c:85 -msgid "Couldn't load sha512" -msgstr "无法载入 sha512" - -#: grub-core/disk/geli.c:216 grub-core/disk/geli.c:220 -msgid "couldn't read ELI metadata" -msgstr "æ— æ³•è¯»å– ELI 元数æ®" - -#: grub-core/disk/geli.c:231 -msgid "wrong ELI magic or version" -msgstr "错误的 ELI 魔数或版本" - -#: grub-core/disk/geli.c:435 grub-core/disk/luks.c:329 -msgid "Attempting to decrypt master key..." -msgstr "å°è¯•解密主密钥..." - -#: grub-core/disk/geli.c:441 grub-core/disk/luks.c:347 -#, c-format -msgid "Enter passphrase for %s%s%s (%s): " -msgstr "为 %s%s%s (%s) 输入密ç ï¼š" - -#. TRANSLATORS: It's a cryptographic key slot: one element of an array -#. where each element is either empty or holds a key. -#: grub-core/disk/geli.c:530 grub-core/disk/luks.c:451 -#, c-format -msgid "Slot %d opened\n" -msgstr "" - -#: grub-core/disk/i386/pc/biosdisk.c:470 grub-core/disk/i386/pc/biosdisk.c:524 -#: grub-core/disk/i386/pc/biosdisk.c:534 grub-core/kern/disk_common.c:47 -#, c-format -msgid "attempt to read or write outside of disk `%s'" -msgstr "å°è¯•在ç£ç›˜â€œ%sâ€ä¹‹å¤–è¿›è¡Œè¯»å–æˆ–写入æ“作" - -#: grub-core/disk/i386/pc/biosdisk.c:491 grub-core/disk/i386/pc/biosdisk.c:611 -#: grub-core/disk/scsi.c:726 -msgid "cannot write to CD-ROM" -msgstr "无法写入 CD-ROM" - -#: grub-core/disk/i386/pc/biosdisk.c:662 -msgid "" -"Native disk drivers are in use. Refusing to use firmware disk interface." -msgstr "" - -#. TRANSLATORS: it's a partition for embedding, -#. not a partition embed into something. GRUB -#. install tools put core.img into a place -#. usable for bootloaders (called generically -#. "embedding zone") and this operation is -#. called "embedding". -#: grub-core/disk/ldm.c:1015 -#, fuzzy -msgid "your LDM Embedding Partition is too small; embedding won't be possible" -msgstr "æ­¤ DOS 分区标签没有 MBR å‰é—´éš”,无法进行嵌入ï¼" - -#. TRANSLATORS: it's a partition for embedding, -#. not a partition embed into something. -#: grub-core/disk/ldm.c:1033 -#, fuzzy -msgid "this LDM has no Embedding Partition; embedding won't be possible" -msgstr "æ­¤ GPT 分区标签没有 BIOS 引导分区,无法进行嵌入ï¼" - -#. TRANSLATORS: The disk is simply removed from the list of available ones, -#. not wiped, avoid to scare user. -#: grub-core/disk/loopback.c:45 -#, fuzzy -msgid "Delete the specified loopback drive." -msgstr "删除回环设备项。" - -#: grub-core/disk/loopback.c:237 -msgid "[-d] DEVICENAME FILE." -msgstr "[-d] è®¾å¤‡å æ–‡ä»¶." - -#. TRANSLATORS: The file itself is not destroyed -#. or transformed into drive. -#: grub-core/disk/loopback.c:240 -msgid "Make a virtual drive from a file." -msgstr "" - -#: grub-core/efiemu/i386/loadcore32.c:111 -#: grub-core/efiemu/i386/loadcore64.c:125 grub-core/kern/arm/dl.c:256 -#: grub-core/kern/arm64/dl.c:187 grub-core/kern/i386/dl.c:75 -#: grub-core/kern/ia64/dl.c:140 grub-core/kern/mips/dl.c:258 -#: grub-core/kern/powerpc/dl.c:163 grub-core/kern/riscv/dl.c:334 -#: grub-core/kern/sparc64/dl.c:180 grub-core/kern/x86_64/dl.c:110 -#: util/grub-mkimagexx.c:756 util/grub-mkimagexx.c:881 -#: util/grub-mkimagexx.c:945 util/grub-mkimagexx.c:1026 -#: util/grub-mkimagexx.c:1120 util/grub-mkimagexx.c:1222 -#: util/grub-mkimagexx.c:1413 util/grub-mkimagexx.c:1628 -#: util/grub-mkimagexx.c:1665 util/grub-mkimagexx.c:1697 -#: util/grub-mkimagexx.c:1767 util/grub-mkimagexx.c:1797 -#, c-format -msgid "relocation 0x%x is not implemented yet" -msgstr "é‡å®šä½ 0x%x 尚未实现" - -#: grub-core/efiemu/loadcore.c:200 grub-core/efiemu/loadcore.c:237 -#: grub-core/loader/i386/bsdXX.c:317 util/grub-mkimagexx.c:2360 -msgid "no symbol table" -msgstr "没有符å·è¡¨" - -#: grub-core/efiemu/loadcore.c:346 grub-core/kern/dl.c:609 -#: grub-core/loader/ia64/efi/linux.c:345 grub-core/loader/mips/linux.c:248 -#: grub-core/loader/multiboot_elfxx.c:76 -#: grub-core/loader/powerpc/ieee1275/linux.c:280 -#: grub-core/loader/sparc64/ieee1275/linux.c:320 -msgid "this ELF file is not of the right type" -msgstr "该 ELF æ–‡ä»¶ç±»åž‹ä¸æ­£ç¡®" - -#: grub-core/efiemu/main.c:313 -msgid "Load and initialize EFI emulator." -msgstr "载入并åˆå§‹åŒ– EFI 模拟器。" - -#: grub-core/efiemu/main.c:317 -msgid "Finalize loading of EFI emulator." -msgstr "完æˆè½½å…¥ EFI 模拟器。" - -#: grub-core/efiemu/main.c:320 -msgid "Unload EFI emulator." -msgstr "å¸è½½ EFI 模拟器。" - -#: grub-core/efiemu/symbols.c:92 grub-core/kern/dl.c:376 -#, c-format -msgid "symbol `%s' not found" -msgstr "符å·â€œ%sâ€æœªæ‰¾åˆ°" - -#: grub-core/font/font_cmd.c:52 -msgid "Loaded fonts:" -msgstr "已加载的字库:" - -#: grub-core/font/font_cmd.c:74 -msgid "FILE..." -msgstr "文件..." - -#: grub-core/font/font_cmd.c:75 -msgid "Specify one or more font files to load." -msgstr "指定一个或多个è¦åŠ è½½çš„å­—åº“ã€‚" - -#: grub-core/font/font_cmd.c:78 -msgid "List the loaded fonts." -msgstr "列出已加载的字库。" - -#: grub-core/fs/archelp.c:216 grub-core/fs/archelp.c:278 -#: grub-core/fs/btrfs.c:1815 grub-core/fs/fshelp.c:227 grub-core/fs/jfs.c:736 -#: grub-core/fs/minix.c:369 grub-core/fs/ufs.c:454 -msgid "too deep nesting of symlinks" -msgstr "太多层符å·é“¾æŽ¥åµŒå¥—" - -#: grub-core/fs/bfs.c:228 grub-core/fs/fshelp.c:368 grub-core/fs/minix.c:270 -#: grub-core/kern/file.c:156 -msgid "attempt to read past the end of file" -msgstr "å°è¯•越过文件结æŸä½ç½®è¿›è¡Œè¯»å–" - -#: grub-core/fs/btrfs.c:1698 grub-core/fs/btrfs.c:1957 -#: grub-core/fs/fshelp.c:189 grub-core/fs/fshelp.c:309 grub-core/fs/jfs.c:431 -#: grub-core/fs/minix.c:414 grub-core/fs/minix.c:562 -#: grub-core/fs/reiserfs.c:732 grub-core/fs/ufs.c:531 grub-core/fs/ufs.c:671 -#: grub-core/fs/zfs/zfs.c:2831 grub-core/fs/zfs/zfs.c:4247 -msgid "not a directory" -msgstr "䏿˜¯ç›®å½•" - -#: grub-core/fs/btrfs.c:2063 grub-core/fs/fshelp.c:307 grub-core/fs/jfs.c:835 -#: grub-core/fs/zfs/zfs.c:3801 -msgid "not a regular file" -msgstr "䏿˜¯æ™®é€šæ–‡ä»¶" - -#: grub-core/fs/btrfs.c:2157 grub-core/fs/zfs/zfs.c:4333 -#: grub-core/partmap/msdos.c:400 -msgid "your core.img is unusually large. It won't fit in the embedding area" -msgstr "您的 core.img 过大,无法装入嵌入区域" - -#: grub-core/fs/fshelp.c:281 grub-core/fs/minix.c:630 grub-core/fs/ufs.c:661 -#: grub-core/fs/ufs.c:757 grub-core/kern/fs.c:168 grub-core/kern/fs.c:180 -#, c-format -msgid "invalid file name `%s'" -msgstr "无效的文件å“%sâ€" - -#: grub-core/fs/zfs/zfs.c:453 -msgid "checksum verification failed" -msgstr "校验和验è¯å¤±è´¥" - -#: grub-core/fs/zfs/zfs.c:1465 -msgid "couldn't find a necessary member device of multi-device filesystem" -msgstr "" - -#: grub-core/fs/zfs/zfscrypt.c:292 -msgid "no decryption key available" -msgstr "没有å¯ç”¨çš„解密密钥" - -#: grub-core/fs/zfs/zfscrypt.c:304 -msgid "MAC verification failed" -msgstr "MAC 验è¯å¤±è´¥" - -#: grub-core/fs/zfs/zfscrypt.c:413 -msgid "Assume input is raw." -msgstr "å‡å®šè¾“入是原始数æ®ã€‚" - -#: grub-core/fs/zfs/zfscrypt.c:414 -msgid "Assume input is hex." -msgstr "å‡å®šè¾“入是å六进制数æ®ã€‚" - -#: grub-core/fs/zfs/zfscrypt.c:415 -msgid "Assume input is passphrase." -msgstr "å‡å®šè¾“入是å£ä»¤ã€‚" - -#: grub-core/fs/zfs/zfscrypt.c:437 util/grub-fstest.c:553 util/grub-mount.c:483 -msgid "Enter ZFS password: " -msgstr "输入 ZFS å£ä»¤ï¼š" - -#: grub-core/fs/zfs/zfscrypt.c:476 -msgid "[-h|-p|-r] [FILE]" -msgstr "[-h|-p|-r] [文件]" - -#: grub-core/fs/zfs/zfscrypt.c:477 -msgid "Import ZFS wrapping key stored in FILE." -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:51 -msgid "Virtual device is removed" -msgstr "虚拟设备已移除" - -#: grub-core/fs/zfs/zfsinfo.c:57 -msgid "Virtual device is faulted" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:63 -msgid "Virtual device is offline" -msgstr "虚拟设备已离线" - -#. TRANSLATORS: degraded doesn't mean broken but that some of -#. component are missing but virtual device as whole is still usable. -#: grub-core/fs/zfs/zfsinfo.c:70 -msgid "Virtual device is degraded" -msgstr "虚拟设备已é™çº§" - -#: grub-core/fs/zfs/zfsinfo.c:73 -msgid "Virtual device is online" -msgstr "虚拟设备已在线" - -#: grub-core/fs/zfs/zfsinfo.c:89 -msgid "Incorrect virtual device: no type available" -msgstr "" - -#. TRANSLATORS: The virtual devices form a tree (in graph-theoretical -#. sense). The nodes like mirror or raidz have children: member devices. -#. The "real" devices which actually store data are called "leafs" -#. (again borrowed from graph theory) and can be either disks -#. (or partitions) or files. -#: grub-core/fs/zfs/zfsinfo.c:105 -msgid "Leaf virtual device (file or disk)" -msgstr "å¶è™šæ‹Ÿè®¾å¤‡ï¼ˆæ–‡ä»¶æˆ–ç£ç›˜ï¼‰" - -#: grub-core/fs/zfs/zfsinfo.c:113 -msgid "Bootpath: unavailable\n" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:115 -#, c-format -msgid "Bootpath: %s\n" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:120 -msgid "Path: unavailable" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:122 -#, c-format -msgid "Path: %s\n" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:127 -msgid "Devid: unavailable" -msgstr "设备ID:ä¸å¯ç”¨" - -#: grub-core/fs/zfs/zfsinfo.c:129 -#, c-format -msgid "Devid: %s\n" -msgstr "设备ID:%s\n" - -#: grub-core/fs/zfs/zfsinfo.c:148 -msgid "This VDEV is a mirror" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:153 -#, c-format -msgid "This VDEV is a RAIDZ%llu\n" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:158 -msgid "Incorrect VDEV" -msgstr "䏿­£ç¡®çš„ VDEV" - -#: grub-core/fs/zfs/zfsinfo.c:161 -#, c-format -msgid "VDEV with %d children\n" -msgstr "" - -#. TRANSLATORS: it's the element carying the number %d, not -#. total element number. And the number itself is fine, -#. only the element isn't. -#. -#: grub-core/fs/zfs/zfsinfo.c:177 -#, c-format -msgid "VDEV element number %d isn't correct\n" -msgstr "" - -#. TRANSLATORS: it's the element carying the number %d, not -#. total element number. This is used in enumeration -#. "Element number 1", "Element number 2", ... -#: grub-core/fs/zfs/zfsinfo.c:184 -#, c-format -msgid "VDEV element number %d:\n" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:193 -#, c-format -msgid "Unknown virtual device type: %s\n" -msgstr "未知虚拟设备类型:%s\n" - -#. TRANSLATORS: Here we speak about ZFS pools it's semi-marketing, -#. semi-technical term by Sun/Oracle and should be translated in sync with -#. other ZFS-related software and documentation. -#: grub-core/fs/zfs/zfsinfo.c:254 -msgid "Pool state: active" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:255 -msgid "Pool state: exported" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:256 -msgid "Pool state: destroyed" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:257 -msgid "Pool state: reserved for hot spare" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:258 -msgid "Pool state: level 2 ARC device" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:259 -msgid "Pool state: uninitialized" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:260 -msgid "Pool state: unavailable" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:261 -msgid "Pool state: potentially active" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:306 -msgid "Pool name: unavailable" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:308 -#, c-format -msgid "Pool name: %s\n" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:313 -msgid "Pool GUID: unavailable" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:315 -#, c-format -msgid "Pool GUID: %016llx\n" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:320 -msgid "Unable to retrieve pool state" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:322 -msgid "Unrecognized pool state" -msgstr "" - -#. TRANSLATORS: There are undetermined number of virtual devices -#. in a device tree, not just one. -#. -#: grub-core/fs/zfs/zfsinfo.c:332 -msgid "No virtual device tree available" -msgstr "没有å¯ç”¨çš„虚拟设备树" - -#: grub-core/fs/zfs/zfsinfo.c:431 -msgid "Print ZFS info about DEVICE." -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:433 -msgid "FILESYSTEM [VARIABLE]" -msgstr "文件系统 [å˜é‡]" - -#: grub-core/fs/zfs/zfsinfo.c:434 -msgid "Print ZFS-BOOTFSOBJ or store it into VARIABLE" -msgstr "" - -#. TRANSLATORS: at this position GRUB waits for the user to do an action -#. in remote debugger, namely to tell it to establish connection. -#: grub-core/gdb/gdb.c:48 -msgid "Now connect the remote debugger, please." -msgstr "现在请连接远程调试工具。" - -#. TRANSLATORS: GDB stub is a small part of -#. GDB functionality running on local host -#. which allows remote debugger to -#. connect to it. -#: grub-core/gdb/gdb.c:84 -msgid "Start GDB stub on given port" -msgstr "在给定端å£ä¸Šå¯åЍ GDB stub" - -#. TRANSLATORS: this refers to triggering -#. a breakpoint so that the user will land -#. into GDB. -#: grub-core/gdb/gdb.c:89 -msgid "Break into GDB" -msgstr "" - -#: grub-core/gdb/gdb.c:91 -msgid "Stop GDB stub" -msgstr "åœæ­¢ GDB stub" - -#: grub-core/gettext/gettext.c:85 -msgid "premature end of file" -msgstr "过早的文件结æŸ" - -#. TRANSLATORS: It refers to passing the string through gettext. -#. So it's "translate" in the same meaning as in what you're -#. doing now. -#. -#: grub-core/gettext/gettext.c:525 -msgid "Translates the string with the current settings." -msgstr "使用当å‰è®¾ç½®ç¿»è¯‘字符串。" - -#: grub-core/gfxmenu/gui_label.c:186 grub-core/normal/menu_text.c:184 -#, fuzzy -msgid "" -"Press enter to boot the selected OS, `e' to edit the commands before booting " -"or `c' for a command-line. ESC to return previous menu." -msgstr "" -"按回车引导选定的æ“作系统,按 e 编辑引导命令,按 c 进入命令行,按 ESC 返回上一" -"级èœå•。\n" - -#: grub-core/gfxmenu/gui_label.c:190 grub-core/normal/menu_text.c:192 -#, fuzzy -msgid "" -"Press enter to boot the selected OS, `e' to edit the commands before booting " -"or `c' for a command-line." -msgstr "按回车引导选定的æ“作系统,按 e 编辑引导命令,按 c 进入命令行。\n" - -#: grub-core/gfxmenu/gui_label.c:194 -msgid "enter: boot, `e': options, `c': cmd-line" -msgstr "输入:bootã€â€œeâ€ï¼šé€‰é¡¹ã€â€œcâ€ï¼šå‘½ä»¤è¡Œ" - -#: grub-core/gfxmenu/gui_progress_bar.c:339 grub-core/normal/menu_text.c:446 -#, c-format -msgid "The highlighted entry will be executed automatically in %ds." -msgstr "高亮显示的å¯åŠ¨é¡¹å°†åœ¨ %d ç§’åŽè‡ªåŠ¨æ‰§è¡Œã€‚" - -#. TRANSLATORS: 's' stands for seconds. -#. It's a standalone timeout notification. -#. Please use the short form in your language. -#: grub-core/gfxmenu/gui_progress_bar.c:344 -#, c-format -msgid "%ds remaining." -msgstr "剩余 %d 秒。" - -#. TRANSLATORS: 's' stands for seconds. -#. It's a standalone timeout notification. -#. Please use the shortest form available in you language. -#: grub-core/gfxmenu/gui_progress_bar.c:349 grub-core/normal/menu_text.c:444 -#: grub-core/normal/menu_text.c:462 -#, c-format -msgid "%ds" -msgstr "%d ç§’" - -#: grub-core/gfxmenu/view.c:103 -msgid "GRUB Boot Menu" -msgstr "GRUB 引导èœå•" - -#: grub-core/hello/hello.c:36 -#, fuzzy -msgid "Hello World" -msgstr "显示“Hello Worldâ€ã€‚" - -#: grub-core/hello/hello.c:45 -msgid "Say `Hello World'." -msgstr "显示“Hello Worldâ€ã€‚" - -#: grub-core/io/gzio.c:409 grub-core/kern/file.c:210 -msgid "attempt to seek outside of the file" -msgstr "å°è¯•è¯»å–æ–‡ä»¶å¤–的数æ®" - -#. TRANSLATORS: It's about given file having some strange format, not -#. complete lack of gzip support. -#: grub-core/io/gzio.c:1228 grub-core/io/gzio.c:1237 grub-core/io/gzio.c:1244 -msgid "unsupported gzip format" -msgstr "䏿”¯æŒçš„ gzip æ ¼å¼" - -#: grub-core/io/lzopio.c:511 -msgid "lzop file corrupted" -msgstr "lzop 文件æŸå" - -#: grub-core/io/xzio.c:278 -msgid "xz file corrupted or unsupported block options" -msgstr "xz 文件æŸåæˆ–å«æœ‰ä¸æ”¯æŒçš„å—选项" - -#: grub-core/kern/arm/dl.c:277 grub-core/kern/arm64/dl.c:44 -#: grub-core/kern/i386/dl.c:36 grub-core/kern/ia64/dl.c:41 -#: grub-core/kern/mips/dl.c:48 grub-core/kern/powerpc/dl.c:36 -#: grub-core/kern/riscv/dl.c:47 grub-core/kern/sparc64/dl.c:36 -#: grub-core/kern/x86_64/dl.c:36 grub-core/loader/i386/bsd.c:1445 -#: grub-core/loader/i386/bsdXX.c:49 grub-core/loader/ia64/efi/linux.c:341 -#: grub-core/loader/mips/linux.c:298 grub-core/loader/multiboot.c:232 -#: grub-core/loader/multiboot_elfxx.c:73 -#: grub-core/loader/powerpc/ieee1275/linux.c:294 -#: grub-core/loader/sparc64/ieee1275/linux.c:331 -msgid "invalid arch-dependent ELF magic" -msgstr "无效的架构相关的 ELF 魔数" - -#: grub-core/kern/corecmd.c:178 -msgid "[ENVVAR=VALUE]" -msgstr "[环境å˜é‡=值]" - -#: grub-core/kern/corecmd.c:179 -msgid "Set an environment variable." -msgstr "设置一个环境å˜é‡ã€‚" - -#: grub-core/kern/corecmd.c:183 -msgid "ENVVAR" -msgstr "环境å˜é‡" - -#: grub-core/kern/corecmd.c:184 -msgid "Remove an environment variable." -msgstr "删除一个环境å˜é‡ã€‚" - -#: grub-core/kern/corecmd.c:186 -msgid "[ARG]" -msgstr "[傿•°]" - -#: grub-core/kern/corecmd.c:186 -msgid "List devices or files." -msgstr "列出设备或文件。" - -#: grub-core/kern/corecmd.c:188 -msgid "Insert a module." -msgstr "æ’入一个模å—。" - -#: grub-core/kern/disk.c:236 grub-core/net/net.c:1390 -#, c-format -msgid "disk `%s' not found" -msgstr "ç£ç›˜â€œ%sâ€æœªæ‰¾åˆ°" - -#: grub-core/kern/disk_common.c:27 -msgid "attempt to read or write outside of partition" -msgstr "å°è¯•åœ¨åˆ†åŒºä¹‹å¤–è¿›è¡Œè¯»å–æˆ–写入æ“作" - -#: grub-core/kern/dl.c:212 grub-core/kern/elf.c:61 grub-core/kern/elf.c:79 -#: grub-core/loader/i386/bsdXX.c:46 grub-core/loader/ia64/efi/linux.c:335 -#: grub-core/loader/multiboot_elfxx.c:69 -msgid "invalid arch-independent ELF magic" -msgstr "无效的架构无关 ELF 魔数" - -#. TRANSLATORS: it refers to the lack of free slots. -#: grub-core/kern/emu/hostdisk.c:208 grub-core/kern/emu/hostdisk.c:466 -msgid "device count exceeds limit" -msgstr "设备计数超过é™åˆ¶" - -#: grub-core/kern/emu/hostdisk.c:342 util/editenv.c:54 util/grub-editenv.c:197 -#: util/grub-fstest.c:191 util/grub-mkfont.c:796 util/misc.c:114 -#: util/misc.c:129 util/setup.c:788 -#, c-format -msgid "cannot write to `%s': %s" -msgstr "无法写入“%sâ€ï¼š%s" - -#. TRANSLATORS: Only one entry is ignored. However the suggestion -#. is to correct/delete the whole file. -#. device.map is a file indicating which -#. devices are available at boot time. Fedora populated it with -#. entries like (hd0,1) /dev/sda1 which would mean that every -#. partition is a separate disk for BIOS. Such entries were -#. inactive in GRUB due to its bug which is now gone. Without -#. this additional check these entries would be harmful now. -#. -#: grub-core/kern/emu/hostdisk.c:503 -#, c-format -msgid "" -"the device.map entry `%s' is invalid. Ignoring it. Please correct or delete " -"your device.map" -msgstr "" - -#. TRANSLATORS: device.map is a filename. Not to be translated. -#. device.map specifies disk correspondance overrides. Previously -#. one could create any kind of device name with this. Due to -#. some problems we decided to limit it to just a handful -#. possibilities. -#: grub-core/kern/emu/hostdisk.c:555 -#, c-format -msgid "" -"the drive name `%s' in device.map is incorrect. Using %s instead. Please use " -"the form [hfc]d[0-9]* (E.g. `hd0' or `cd')" -msgstr "" - -#: grub-core/kern/emu/hostfs.c:76 grub-core/kern/emu/hostfs.c:109 -#, c-format -msgid "can't open `%s': %s" -msgstr "无法打开“%sâ€ï¼š%s" - -#: grub-core/kern/emu/main.c:99 util/grub-fstest.c:516 util/grub-mount.c:452 -msgid "DEVICE_NAME" -msgstr "设备åç§°" - -#: grub-core/kern/emu/main.c:99 grub-core/loader/i386/bsd.c:136 -#: grub-core/loader/i386/bsd.c:169 util/grub-fstest.c:516 util/grub-mount.c:452 -msgid "Set root device." -msgstr "设置根设备。" - -#. TRANSLATORS: There are many devices in device map. -#: grub-core/kern/emu/main.c:102 util/grub-probe.c:733 util/grub-setup.c:85 -#, c-format -msgid "use FILE as the device map [default=%s]" -msgstr "使用指定文件作为设备表 [默认=%s]" - -#. TRANSLATORS: There are many devices in device map. -#: grub-core/kern/emu/main.c:105 -msgid "use FILE as memdisk" -msgstr "使用文件作为 memdisk" - -#: grub-core/kern/emu/main.c:107 util/grub-setup.c:83 -#, fuzzy, c-format -msgid "use GRUB files in the directory DIR [default=%s]" -msgstr "使用 DIR 目录内的 GRUB 文件 [默认=%s]" - -#: grub-core/kern/emu/main.c:108 include/grub/util/install.h:67 -#: util/grub-editenv.c:58 util/grub-fstest.c:525 util/grub-glue-efi.c:58 -#: util/grub-macbless.c:104 util/grub-mkfont.c:962 util/grub-mkimage.c:84 -#: util/grub-mklayout.c:56 util/grub-mount.c:458 util/grub-probe.c:735 -#: util/grub-render-label.c:74 util/grub-script-check.c:52 util/grub-setup.c:90 -#: util/grub-syslinux2cfg.c:78 -msgid "print verbose messages." -msgstr "显示冗长信æ¯ã€‚" - -#: grub-core/kern/emu/main.c:109 grub-core/lib/gnulib/argp-parse.c:85 -msgid "SECS" -msgstr "" - -#: grub-core/kern/emu/main.c:109 -msgid "wait until a debugger will attach" -msgstr "" - -#: grub-core/kern/emu/main.c:171 util/grub-macbless.c:143 -#: util/grub-mkrelpath.c:61 util/grub-probe.c:874 util/grub-script-check.c:75 -#: util/grub-setup.c:203 -#, c-format -msgid "Unknown extra argument `%s'." -msgstr "未知的é¢å¤–傿•°â€œ%sâ€ã€‚" - -#: grub-core/kern/emu/main.c:185 -msgid "GRUB emulator." -msgstr "GRUB 模拟器。" - -#: grub-core/kern/emu/main.c:213 util/grub-editenv.c:262 -#: util/grub-glue-efi.c:110 util/grub-macbless.c:173 util/grub-mkfont.c:1177 -#: util/grub-mkimage.c:266 util/grub-mklayout.c:494 -#: util/grub-mkpasswd-pbkdf2.c:132 util/grub-mkrelpath.c:96 -#: util/grub-probe.c:863 util/grub-render-label.c:152 -#: util/grub-script-check.c:160 util/grub-setup.c:262 -#: util/grub-syslinux2cfg.c:163 -msgid "Error in parsing command line arguments\n" -msgstr "è§£æžå‘½ä»¤è¡Œå‚数出错\n" - -#. TRANSLATORS: In this case GRUB tells user what he has to do. -#: grub-core/kern/emu/main.c:248 -#, c-format -msgid "Run `gdb %s %d', and set ARGS.HOLD to zero.\n" -msgstr "" - -#: grub-core/kern/emu/misc.c:48 -#, c-format -msgid "%s: warning:" -msgstr "%s:警告:" - -#: grub-core/kern/emu/misc.c:64 -#, c-format -msgid "%s: info:" -msgstr "%s:信æ¯ï¼š" - -#: grub-core/kern/emu/misc.c:79 util/grub-fstest.c:567 util/grub-fstest.c:576 -#: util/grub-mount.c:497 util/grub-mount.c:505 -#, c-format -msgid "%s: error:" -msgstr "%s:错误:" - -#: grub-core/kern/emu/misc.c:176 -#, c-format -msgid "file `%s' is too big" -msgstr "文件“%sâ€è¿‡å¤§" - -#: grub-core/kern/fs.c:120 -msgid "unknown filesystem" -msgstr "未知文件系统" - -#: grub-core/kern/mips/arc/init.c:273 grub-core/kern/mips/loongson/init.c:301 -msgid "Shutdown failed" -msgstr "关机失败" - -#: grub-core/kern/mips/arc/init.c:285 -msgid "Exit failed" -msgstr "退出失败" - -#: grub-core/kern/misc.c:351 grub-core/kern/misc.c:408 include/grub/misc.h:269 -#: include/grub/misc.h:278 -msgid "overflow is detected" -msgstr "探测到溢出" - -#: grub-core/kern/partition.c:51 grub-core/partmap/bsdlabel.c:108 -#, c-format -msgid "Discarding improperly nested partition (%s,%s,%s%d)" -msgstr "ä¸¢å¼ƒä¸æ­£ç¡®åµŒå¥—的分区 (%s,%s,%s%d)" - -#: grub-core/kern/rescue_parser.c:73 util/grub-editenv.c:292 -#, c-format -msgid "Unknown command `%s'.\n" -msgstr "未知命令 %s。\n" - -#: grub-core/lib/arg.c:31 -msgid "Display this help and exit." -msgstr "显示此帮助并退出。" - -#: grub-core/lib/arg.c:33 -msgid "Display the usage of this command and exit." -msgstr "显示此命令的用法并退出。" - -#: grub-core/lib/arg.c:362 -#, c-format -msgid "missing mandatory option for `%s'" -msgstr "缺少“%sâ€å¿…需的选项" - -#: grub-core/lib/arg.c:384 -#, c-format -msgid "the argument `%s' requires an integer" -msgstr "傿•°â€œ%sâ€éœ€è¦ä¸€ä¸ªæ•´æ•°" - -#: grub-core/lib/arg.c:407 -#, c-format -msgid "" -"a value was assigned to the argument `%s' while it doesn't require an " -"argument" -msgstr "" - -#: grub-core/lib/backtrace.c:64 -msgid "Print backtrace." -msgstr "æ‰“å° backtrace 回溯信æ¯ã€‚" - -#: grub-core/lib/gnulib/argp-help.c:149 -#, c-format -msgid "ARGP_HELP_FMT: %s value is less than or equal to %s" -msgstr "ARGP_HELP_FMT:%s 值比 %s æ›´å°æˆ–与其相等" - -#: grub-core/lib/gnulib/argp-help.c:225 -#, c-format -msgid "%.*s: ARGP_HELP_FMT parameter requires a value" -msgstr "" - -#: grub-core/lib/gnulib/argp-help.c:235 -#, c-format -msgid "%.*s: Unknown ARGP_HELP_FMT parameter" -msgstr "" - -#: grub-core/lib/gnulib/argp-help.c:248 -#, c-format -msgid "Garbage in ARGP_HELP_FMT: %s" -msgstr "" - -#: grub-core/lib/gnulib/argp-help.c:1229 -msgid "" -"Mandatory or optional arguments to long options are also mandatory or " -"optional for any corresponding short options." -msgstr "对长选项的必需或å¯é€‰å‚数对于任何对应的短选项也是相应必需或å¯é€‰çš„。" - -#: grub-core/lib/gnulib/argp-help.c:1620 -msgid " or: " -msgstr " 或:" - -#: grub-core/lib/gnulib/argp-help.c:1632 -msgid " [OPTION...]" -msgstr " [选项...]" - -#: grub-core/lib/gnulib/argp-help.c:1659 -#, c-format -msgid "Try '%s --help' or '%s --usage' for more information.\n" -msgstr "请å°è¯•è¿è¡Œâ€œ%s --helpâ€æˆ–“%s --usageâ€ä»¥èŽ·å¾—æ›´å¤šä¿¡æ¯ã€‚\n" - -#: grub-core/lib/gnulib/argp-help.c:1687 -#, c-format -msgid "Report bugs to %s.\n" -msgstr "请将缺陷与错误报告至 %s。\n" - -#: grub-core/lib/gnulib/argp-help.c:1888 grub-core/lib/gnulib/error.c:195 -msgid "Unknown system error" -msgstr "未知的系统错误" - -#: grub-core/lib/gnulib/argp-parse.c:81 -msgid "give this help list" -msgstr "给出本帮助列表" - -#: grub-core/lib/gnulib/argp-parse.c:82 -msgid "give a short usage message" -msgstr "给出简短的用法信æ¯" - -#: grub-core/lib/gnulib/argp-parse.c:83 util/grub-mkfont.c:946 -#, fuzzy -msgid "NAME" -msgstr "VARNAME" - -#: grub-core/lib/gnulib/argp-parse.c:84 -msgid "set the program name" -msgstr "设置程åºåç§°" - -#: grub-core/lib/gnulib/argp-parse.c:86 -msgid "hang for SECS seconds (default 3600)" -msgstr "挂起指定 SECS 秒所给定的时间(默认为 3600)" - -#: grub-core/lib/gnulib/argp-parse.c:143 -msgid "print program version" -msgstr "输出程åºç‰ˆæœ¬" - -#: grub-core/lib/gnulib/argp-parse.c:160 -msgid "(PROGRAM ERROR) No version known!?" -msgstr "(程åºé”™è¯¯ï¼‰æ²¡æœ‰å·²çŸ¥ç‰ˆæœ¬ï¼ï¼Ÿ" - -#: grub-core/lib/gnulib/argp-parse.c:613 -#, c-format -msgid "%s: Too many arguments\n" -msgstr "%sï¼šå¤ªå¤šå‚æ•°\n" - -#: grub-core/lib/gnulib/argp-parse.c:759 -msgid "(PROGRAM ERROR) Option should have been recognized!?" -msgstr "(程åºé”™è¯¯ï¼‰é€‰é¡¹åº”当已被识别ï¼ï¼Ÿ" - -#: grub-core/lib/gnulib/getopt.c:278 -#, fuzzy, c-format -msgid "%s: option '%s%s' is ambiguous\n" -msgstr "%s:选项“-W %sâ€æœ‰æ­§ä¹‰\n" - -#: grub-core/lib/gnulib/getopt.c:284 -#, fuzzy, c-format -msgid "%s: option '%s%s' is ambiguous; possibilities:" -msgstr "%s:选项“%sâ€æœ‰æ­§ä¹‰ï¼›å¯èƒ½æ˜¯:" - -#: grub-core/lib/gnulib/getopt.c:319 -#, fuzzy, c-format -msgid "%s: unrecognized option '%s%s'\n" -msgstr "%s:无法识别的选项“%c%sâ€\n" - -#: grub-core/lib/gnulib/getopt.c:345 -#, fuzzy, c-format -msgid "%s: option '%s%s' doesn't allow an argument\n" -msgstr "%s:选项“%c%sâ€ä¸å…è®¸æœ‰å‚æ•°\n" - -#: grub-core/lib/gnulib/getopt.c:360 -#, fuzzy, c-format -msgid "%s: option '%s%s' requires an argument\n" -msgstr "%s:选项“--%sâ€éœ€è¦ä¸€ä¸ªå‚æ•°\n" - -#: grub-core/lib/gnulib/getopt.c:621 -#, c-format -msgid "%s: invalid option -- '%c'\n" -msgstr "%s:无效的选项 --“%câ€\n" - -#: grub-core/lib/gnulib/getopt.c:636 grub-core/lib/gnulib/getopt.c:682 -#, c-format -msgid "%s: option requires an argument -- '%c'\n" -msgstr "%s:选项需è¦ä¸€ä¸ªå‚æ•° -- “%câ€\n" - -#: grub-core/lib/gnulib/openat-die.c:38 -#, fuzzy, c-format -msgid "unable to record current working directory" -msgstr "无法删除éžç©ºç›®å½•\n" - -#: grub-core/lib/gnulib/openat-die.c:57 -#, c-format -msgid "failed to return to initial working directory" -msgstr "返回åˆå§‹å·¥ä½œç›®å½•失败" - -#: grub-core/lib/gnulib/regcomp.c:135 grub-core/osdep/aros/hostdisk.c:523 -msgid "Success" -msgstr "æˆåŠŸ" - -#: grub-core/lib/gnulib/regcomp.c:138 -msgid "No match" -msgstr "无匹é…" - -#: grub-core/lib/gnulib/regcomp.c:141 -msgid "Invalid regular expression" -msgstr "无效的正则表达å¼" - -#: grub-core/lib/gnulib/regcomp.c:144 -msgid "Invalid collation character" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:147 -msgid "Invalid character class name" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:150 -msgid "Trailing backslash" -msgstr "æœ«å°¾çš„åæ–œæ " - -#: grub-core/lib/gnulib/regcomp.c:153 -msgid "Invalid back reference" -msgstr "无效的åŽå‘引用" - -#: grub-core/lib/gnulib/regcomp.c:156 -msgid "Unmatched [, [^, [:, [., or [=" -msgstr "未匹é…çš„ [ã€[^ã€[:ã€[. 或 [=" - -#: grub-core/lib/gnulib/regcomp.c:159 -msgid "Unmatched ( or \\(" -msgstr "未匹é…çš„ ( 或 \\(" - -#: grub-core/lib/gnulib/regcomp.c:162 -msgid "Unmatched \\{" -msgstr "未匹é…çš„ \\{" - -#: grub-core/lib/gnulib/regcomp.c:165 -msgid "Invalid content of \\{\\}" -msgstr "\\{\\} 的无效内容" - -#: grub-core/lib/gnulib/regcomp.c:168 -msgid "Invalid range end" -msgstr "无效的范围结æŸ" - -#: grub-core/lib/gnulib/regcomp.c:171 -msgid "Memory exhausted" -msgstr "内存耗尽" - -#: grub-core/lib/gnulib/regcomp.c:174 -msgid "Invalid preceding regular expression" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:177 -msgid "Premature end of regular expression" -msgstr "正则表达å¼è¿‡æ—©ç»“æŸ" - -#: grub-core/lib/gnulib/regcomp.c:180 -msgid "Regular expression too big" -msgstr "正则表达å¼è¿‡é•¿" - -#: grub-core/lib/gnulib/regcomp.c:183 -msgid "Unmatched ) or \\)" -msgstr "未匹é…çš„ ) 或 \\)" - -#: grub-core/lib/gnulib/regcomp.c:531 -msgid "unknown regexp error" -msgstr "未知正则表达å¼é”™è¯¯" - -#: grub-core/lib/gnulib/regcomp.c:676 -msgid "No previous regular expression" -msgstr "缺少之å‰çš„æ­£åˆ™è¡¨è¾¾å¼" - -#: grub-core/lib/i386/halt.c:77 -msgid "GRUB doesn't know how to halt this machine yet!" -msgstr "GRUB å°šä¸çŸ¥é“å¦‚ä½•ä½¿æ­¤æœºå™¨åœæœºï¼" - -#: grub-core/lib/legacy_parse.c:75 -msgid "Default server is ${net_default_server}" -msgstr "默认æœåŠ¡å™¨æ˜¯ ${net_default_server}" - -#: grub-core/lib/legacy_parse.c:844 grub-core/video/colors.c:296 -#: grub-core/video/colors.c:305 grub-core/video/colors.c:311 -#: grub-core/video/colors.c:327 util/render-label.c:84 util/render-label.c:98 -#, c-format -msgid "invalid color specification `%s'" -msgstr "无效的颜色规格“%sâ€" - -#: grub-core/lib/mips/arc/reboot.c:32 grub-core/lib/mips/loongson/reboot.c:61 -msgid "Reboot failed" -msgstr "é‡å¯å¤±è´¥" - -#: grub-core/lib/random.c:113 -msgid "[LENGTH]" -msgstr "[长度]" - -#: grub-core/lib/random.c:114 -msgid "Hexdump random data." -msgstr "以å六进制形å¼è½¬å‚¨éšæœºæ•°æ®ã€‚" - -#: grub-core/loader/arm/linux.c:242 -msgid "device tree must be supplied (see `devicetree' command)" -msgstr "" - -#: grub-core/loader/arm/linux.c:334 -msgid "invalid zImage" -msgstr "无效的 zImage" - -#: grub-core/loader/arm/linux.c:450 grub-core/loader/efi/fdt.c:144 -msgid "invalid device tree" -msgstr "无效的设备树" - -#: grub-core/loader/arm/linux.c:493 grub-core/loader/arm64/linux.c:383 -#: grub-core/loader/i386/linux.c:1125 grub-core/loader/i386/pc/linux.c:479 -#: grub-core/loader/i386/xen.c:962 grub-core/loader/i386/xen.c:964 -#: grub-core/loader/ia64/efi/linux.c:591 grub-core/loader/mips/linux.c:501 -#: grub-core/loader/powerpc/ieee1275/linux.c:383 -#: grub-core/loader/riscv/linux.c:50 -#: grub-core/loader/sparc64/ieee1275/linux.c:511 -msgid "Load Linux." -msgstr "载入 Linux。" - -#: grub-core/loader/arm/linux.c:495 grub-core/loader/arm64/linux.c:385 -#: grub-core/loader/i386/linux.c:1127 grub-core/loader/i386/pc/linux.c:482 -#: grub-core/loader/i386/xen.c:966 grub-core/loader/ia64/efi/linux.c:594 -#: grub-core/loader/mips/linux.c:503 -#: grub-core/loader/powerpc/ieee1275/linux.c:385 -#: grub-core/loader/riscv/linux.c:52 -#: grub-core/loader/sparc64/ieee1275/linux.c:513 -msgid "Load initrd." -msgstr "载入 initrd。" - -#. TRANSLATORS: DTB stands for device tree blob. -#: grub-core/loader/arm/linux.c:498 grub-core/loader/efi/fdt.c:169 -msgid "Load DTB file." -msgstr "载入 DTB 文件。" - -#: grub-core/loader/arm64/linux.c:59 -msgid "" -"plain image kernel not supported - rebuild with CONFIG_(U)EFI_STUB enabled" -msgstr "䏿”¯æŒæ™®é€šå†…æ ¸é•œåƒ - 请å¯ç”¨ CONFIG_(U)EFI_STUB 釿–°æž„建内核" - -#: grub-core/loader/arm64/xen_boot.c:156 -msgid "failed to get FDT" -msgstr "èŽ·å– FDT 失败" - -#: grub-core/loader/arm64/xen_boot.c:418 -msgid "you need to load the Xen Hypervisor first" -msgstr "" - -#: grub-core/loader/arm64/xen_boot.c:516 -msgid "Load a xen hypervisor." -msgstr "" - -#: grub-core/loader/arm64/xen_boot.c:519 -msgid "Load a xen module." -msgstr "载入 xen 模å—。" - -#: grub-core/loader/efi/appleloader.c:231 -msgid "[OPTS]" -msgstr "[选项]" - -#. TRANSLATORS: This command is used on EFI to -#. switch to BIOS mode and boot the OS requiring -#. BIOS. -#: grub-core/loader/efi/appleloader.c:235 -msgid "Boot BIOS-based system." -msgstr "引导基于 BIOS 的系统。" - -#: grub-core/loader/efi/chainloader.c:421 -#: grub-core/loader/i386/pc/chainloader.c:303 -msgid "Load another boot loader." -msgstr "载入其他引导程åºã€‚" - -#: grub-core/loader/i386/bsd.c:103 -msgid "Display output on all consoles." -msgstr "åœ¨æ‰€æœ‰æŽ§åˆ¶å°æ˜¾ç¤ºè¾“出。" - -#: grub-core/loader/i386/bsd.c:104 grub-core/loader/i386/bsd.c:138 -#: grub-core/loader/i386/bsd.c:171 -msgid "Use serial console." -msgstr "使用串行终端。" - -#: grub-core/loader/i386/bsd.c:105 grub-core/loader/i386/bsd.c:131 -#: grub-core/loader/i386/bsd.c:159 -msgid "Ask for file name to reboot from." -msgstr "ä»ŽæŒ‡å®šæ–‡ä»¶é‡æ–°å¯åŠ¨ã€‚" - -#: grub-core/loader/i386/bsd.c:106 -msgid "Use CD-ROM as root." -msgstr "使用 CD-ROM 作为根。" - -#: grub-core/loader/i386/bsd.c:107 -msgid "Invoke user configuration routing." -msgstr "使用用户é…置路径。" - -#: grub-core/loader/i386/bsd.c:108 grub-core/loader/i386/bsd.c:135 -#: grub-core/loader/i386/bsd.c:162 -msgid "Enter in KDB on boot." -msgstr "å¯åЍåŽè¿›å…¥ KDB。" - -#: grub-core/loader/i386/bsd.c:109 -msgid "Use GDB remote debugger instead of DDB." -msgstr "使用 GDB 远程调试工具替代 DDB。" - -#: grub-core/loader/i386/bsd.c:110 -msgid "Disable all boot output." -msgstr "ç¦ç”¨æ‰€æœ‰å¼•导输出。" - -#: grub-core/loader/i386/bsd.c:112 -msgid "Wait for keypress after every line of output." -msgstr "æ¯è¾“å‡ºä¸€è¡ŒåŽæš‚åœ(按任æ„键继续)。" - -#: grub-core/loader/i386/bsd.c:114 -msgid "Use compiled-in root device." -msgstr "使用内置根设备。" - -#: grub-core/loader/i386/bsd.c:115 grub-core/loader/i386/bsd.c:134 -#: grub-core/loader/i386/bsd.c:165 -msgid "Boot into single mode." -msgstr "以å•用户模å¼å¯åЍ" - -#: grub-core/loader/i386/bsd.c:116 grub-core/loader/i386/bsd.c:166 -msgid "Boot with verbose messages." -msgstr "å¯åŠ¨æ—¶æ˜¾ç¤ºå®Œæ•´ä¿¡æ¯ã€‚" - -#: grub-core/loader/i386/bsd.c:132 grub-core/loader/i386/bsd.c:160 -msgid "Don't reboot, just halt." -msgstr "直接关机。" - -#: grub-core/loader/i386/bsd.c:133 grub-core/loader/i386/bsd.c:161 -msgid "Change configured devices." -msgstr "更改此å‰é…置的设备。" - -#. TRANSLATORS: "com" is static and not to be translated. It refers to -#. serial ports e.g. com1. -#. -#: grub-core/loader/i386/bsd.c:142 -msgid "comUNIT[,SPEED]" -msgstr "" - -#: grub-core/loader/i386/bsd.c:157 -msgid "Disable SMP." -msgstr "ç¦ç”¨ SMP。" - -#: grub-core/loader/i386/bsd.c:158 -msgid "Disable ACPI." -msgstr "ç¦ç”¨ ACPI。" - -#: grub-core/loader/i386/bsd.c:164 -msgid "Don't display boot diagnostic messages." -msgstr "䏿˜¾ç¤ºå¼•å¯¼å¯¹è¯æ¶ˆæ¯ã€‚" - -#: grub-core/loader/i386/bsd.c:167 -msgid "Boot with debug messages." -msgstr "显示调试信æ¯ã€‚" - -#: grub-core/loader/i386/bsd.c:168 -msgid "Suppress normal output (warnings remain)." -msgstr "䏿˜¾ç¤ºæ™®é€šè¾“å‡ºï¼ˆä»æ˜¾ç¤ºè­¦å‘Šï¼‰ã€‚" - -#. TRANSLATORS: "com" is static and not to be translated. It refers to -#. serial ports e.g. com1. -#. -#: grub-core/loader/i386/bsd.c:175 -msgid "[ADDR|comUNIT][,SPEED]" -msgstr "" - -#: grub-core/loader/i386/bsd.c:489 grub-core/loader/i386/bsd.c:555 -msgid "name" -msgstr "åç§°" - -#: grub-core/loader/i386/bsd.c:489 grub-core/loader/i386/bsd.c:555 -msgid "type" -msgstr "类型" - -#: grub-core/loader/i386/bsd.c:489 grub-core/loader/i386/bsd.c:555 -msgid "addr" -msgstr "地å€" - -#: grub-core/loader/i386/bsd.c:490 grub-core/loader/i386/bsd.c:556 -msgid "size" -msgstr "大å°" - -#: grub-core/loader/i386/bsd.c:1147 grub-core/loader/i386/linux.c:466 -#: grub-core/loader/i386/xnu.c:1030 -#, fuzzy -msgid "Booting in blind mode" -msgstr "以å•用户模å¼å¯åЍ" - -#: grub-core/loader/i386/bsd.c:2137 -msgid "Load kernel of FreeBSD." -msgstr "载入 FreeBSD 内核。" - -#: grub-core/loader/i386/bsd.c:2140 -msgid "Load kernel of OpenBSD." -msgstr "载入 OpenBSD 内核。" - -#: grub-core/loader/i386/bsd.c:2143 -msgid "Load kernel of NetBSD." -msgstr "载入 NetBSD 内核。" - -#: grub-core/loader/i386/bsd.c:2147 -msgid "Load FreeBSD env." -msgstr "载入 FreeBSD 环境。" - -#: grub-core/loader/i386/bsd.c:2150 -msgid "Load FreeBSD kernel module." -msgstr "载入 FreeBSD 内核模å—。" - -#: grub-core/loader/i386/bsd.c:2153 -msgid "Load NetBSD kernel module." -msgstr "载入 NetBSD 内核模å—。" - -#: grub-core/loader/i386/bsd.c:2156 -msgid "Load NetBSD kernel module (ELF)." -msgstr "载入 NetBSD 内核模å—(ELF)。" - -#: grub-core/loader/i386/bsd.c:2159 -msgid "Load FreeBSD kernel module (ELF)." -msgstr "载入 FreeBSD 内核模å—(ELF)。" - -#. TRANSLATORS: ramdisk isn't identifier, -#. it can be translated. -#: grub-core/loader/i386/bsd.c:2165 -msgid "Load kOpenBSD ramdisk." -msgstr "载入 kOpenBSD 内存盘。" - -#. TRANSLATORS: "payload" is a term used -#. by coreboot and must be translated in -#. sync with coreboot. If unsure, -#. let it untranslated. -#: grub-core/loader/i386/coreboot/chainloader.c:510 -#, fuzzy -msgid "Load another coreboot payload" -msgstr "载入其他引导程åºã€‚" - -#: grub-core/loader/i386/linux.c:876 -msgid "Legacy `ask' parameter no longer supported." -msgstr "过时的“askâ€å‚æ•°å·²ä¸å†è¢«æ”¯æŒã€‚" - -#: grub-core/loader/i386/linux.c:892 grub-core/loader/i386/linux.c:902 -#: grub-core/loader/i386/linux.c:932 -#, c-format -msgid "%s is deprecated. Use set gfxpayload=%s before linux command instead.\n" -msgstr "%s 已弃用。请改为在 linux 命令之å‰ä½¿ç”¨ set gfxpayload=%s。\n" - -#. TRANSLATORS: "x" has to be entered in, like an identifier, -#. so please don't use better Unicode codepoints. -#: grub-core/loader/i386/linux.c:915 -#, c-format -msgid "" -"%s is deprecated. VGA mode %d isn't recognized. Use set " -"gfxpayload=WIDTHxHEIGHT[xDEPTH] before linux command instead.\n" -msgstr "" -"%s 已弃用。VGA æ¨¡å¼ %d 无法识别。请改为在 linux 命令å‰ä½¿ç”¨ set " -"gfxpayload=WIDTHxHEIGHT[xDEPTH]。\n" - -#: grub-core/loader/i386/pc/chainloader.c:302 -msgid "[--force|--bpb] FILE" -msgstr "" - -#: grub-core/loader/i386/pc/freedos.c:148 util/setup.c:293 -#, c-format -msgid "the size of `%s' is too large" -msgstr "“%sâ€çš„尺寸太大" - -#: grub-core/loader/i386/pc/freedos.c:183 -msgid "Load FreeDOS kernel.sys." -msgstr "载入 FreeDOS kernel.sys。" - -#: grub-core/loader/i386/pc/ntldr.c:155 -msgid "Load NTLDR or BootMGR." -msgstr "载入 NTLDR 或 BootMGR。" - -#. TRANSLATORS: it's about guessing which GRUB disk -#. is which Plan9 disk. If your language has no -#. word "mapping" you can use another word which -#. means that the GRUBDEVICE and PLAN9DEVICE are -#. actually the same device, just named differently -#. in OS and GRUB. -#: grub-core/loader/i386/pc/plan9.c:59 -msgid "Override guessed mapping of Plan9 devices." -msgstr "" - -#: grub-core/loader/i386/pc/plan9.c:60 -msgid "GRUBDEVICE=PLAN9DEVICE" -msgstr "" - -#: grub-core/loader/i386/pc/plan9.c:599 -msgid "KERNEL ARGS" -msgstr "å†…æ ¸å‚æ•°" - -#: grub-core/loader/i386/pc/plan9.c:599 -msgid "Load Plan9 kernel." -msgstr "载入 Plan9 内核。" - -#: grub-core/loader/i386/pc/pxechainloader.c:161 -msgid "Load a PXE image." -msgstr "载入一个 PXE 镜åƒã€‚" - -#: grub-core/loader/i386/pc/truecrypt.c:226 -msgid "Load Truecrypt ISO." -msgstr "载入 Truecrypt ISO。" - -#: grub-core/loader/i386/xen.c:781 grub-core/loader/i386/xen.c:865 -msgid "initrd already loaded" -msgstr "initrd 已加载" - -#: grub-core/loader/i386/xen.c:968 -msgid "Load module." -msgstr "载入模å—。" - -#: grub-core/loader/i386/xnu.c:1003 -msgid "Press any key to launch xnu" -msgstr "按任æ„é”®å¯åЍ xnu" - -#. TRANSLATORS: `device-properties' -#. is a variable name, -#. not a program. -#: grub-core/loader/i386/xnu.c:1159 -#, fuzzy -msgid "Load `device-properties' dump." -msgstr "载入设备特性转储。" - -#: grub-core/loader/ia64/efi/linux.c:124 -msgid "Could not locate FPSWA driver" -msgstr "æ— æ³•å®šä½ FPSWA 驱动" - -#: grub-core/loader/ia64/efi/linux.c:132 -msgid "FPSWA protocol wasn't able to find the interface" -msgstr "FPSWA å议未能找到接å£" - -#: grub-core/loader/ia64/efi/linux.c:580 -msgid "No FPSWA found" -msgstr "未找到 FPSWA" - -#: grub-core/loader/ia64/efi/linux.c:582 -#, c-format -msgid "FPSWA revision: %x\n" -msgstr "FPSWA 版本:%x\n" - -#: grub-core/loader/ia64/efi/linux.c:591 -msgid "FILE [ARGS...]" -msgstr "文件 [傿•°...]" - -#: grub-core/loader/ia64/efi/linux.c:597 -msgid "Display FPSWA version." -msgstr "显示 FPSWA 版本。" - -#: grub-core/loader/multiboot.c:248 -msgid "WARNING: no console will be available to OS" -msgstr "警告:æ“作系统将没有å¯ç”¨ç»ˆç«¯" - -#: grub-core/loader/multiboot.c:450 -msgid "Load a multiboot 2 kernel." -msgstr "载入 multiboot 2 内核。" - -#: grub-core/loader/multiboot.c:453 -msgid "Load a multiboot 2 module." -msgstr "载入 multiboot 2 模å—。" - -#: grub-core/loader/multiboot.c:456 -msgid "Load a multiboot kernel." -msgstr "载入 multiboot 内核。" - -#: grub-core/loader/multiboot.c:459 -msgid "Load a multiboot module." -msgstr "载入 multiboot 模å—。" - -#: grub-core/loader/riscv/linux.c:30 grub-core/loader/riscv/linux.c:40 -#, fuzzy -msgid "Linux not supported yet" -msgstr "支æŒçš„视频模å¼åˆ—表:" - -#: grub-core/loader/xnu.c:1416 grub-core/term/gfxterm_background.c:45 -msgid "Background image mode." -msgstr "èƒŒæ™¯å›¾åƒæ¨¡å¼ã€‚" - -#. TRANSLATORS: This refers to background image mode (stretched or -#. in left-top corner). Note that GRUB will accept only original -#. keywords stretch and normal, not the translated ones. -#. So please put both in translation -#. e.g. stretch(=%STRETCH%)|normal(=%NORMAL%). -#. The percents mark the translated version. Since many people -#. may not know the word stretch or normal I recommend -#. putting the translation either here or in "Background image mode." -#. string. -#: grub-core/loader/xnu.c:1416 grub-core/term/gfxterm_background.c:55 -#, fuzzy -msgid "stretch|normal" -msgstr "[-m (stretch|normal)] 文件" - -#: grub-core/loader/xnu.c:1482 -msgid "Load XNU image." -msgstr "载入 XNU 内核镜åƒã€‚" - -#: grub-core/loader/xnu.c:1484 -msgid "Load 64-bit XNU image." -msgstr "载入 64 ä½ XNU 镜åƒã€‚" - -#: grub-core/loader/xnu.c:1486 -msgid "Load XNU extension package." -msgstr "载入 XNU 扩展包。" - -#: grub-core/loader/xnu.c:1488 -msgid "Load XNU extension." -msgstr "载入 XNU 扩展。" - -#. TRANSLATORS: OSBundleRequired is a -#. variable name in xnu extensions -#. manifests. It behaves mostly like -#. GNU/Linux runlevels. -#. -#: grub-core/loader/xnu.c:1495 -msgid "DIRECTORY [OSBundleRequired]" -msgstr "目录 [OSBundleRequired]" - -#. TRANSLATORS: There are many extensions -#. in extension directory. -#: grub-core/loader/xnu.c:1498 -msgid "Load XNU extension directory." -msgstr "载入 XNU 扩展目录。" - -#. TRANSLATORS: ramdisk here isn't identifier. It can be translated. -#: grub-core/loader/xnu.c:1501 -msgid "Load XNU ramdisk. It will be available in OS as md0." -msgstr "载入 XNU 内存盘。它将在æ“作系统上显示为 md0。" - -#: grub-core/loader/xnu.c:1505 -msgid "Load a splash image for XNU." -msgstr "载入引导画é¢ã€‚" - -#: grub-core/loader/xnu.c:1510 -#, fuzzy -msgid "Load an image of hibernated XNU." -msgstr "载入引导画é¢ã€‚" - -#: grub-core/mmap/mmap.c:538 -msgid "ADDR1,MASK1[,ADDR2,MASK2[,...]]" -msgstr "地å€1,掩ç 1[,地å€2,掩ç 2[,...]]" - -#: grub-core/mmap/mmap.c:539 -msgid "Declare memory regions as faulty (badram)." -msgstr "" - -#: grub-core/mmap/mmap.c:541 -msgid "FROM[K|M|G] TO[K|M|G]" -msgstr "从[K|M|G] 到[K|M|G]" - -#: grub-core/mmap/mmap.c:542 -msgid "Remove any memory regions in specified range." -msgstr "删除指定范围内的全部内存区域。" - -#: grub-core/net/bootp.c:653 -msgid "four arguments expected" -msgstr "æœŸæœ›å¾—åˆ°å››ä¸ªå‚æ•°" - -#: grub-core/net/bootp.c:661 grub-core/net/net.c:1155 -#, c-format -msgid "unrecognised network interface `%s'" -msgstr "无法识别的网络端å£â€œ%sâ€" - -#: grub-core/net/bootp.c:664 -msgid "no DHCP info found" -msgstr "未找到 DHCP ä¿¡æ¯" - -#: grub-core/net/bootp.c:674 -msgid "no DHCP options found" -msgstr "未找到 DHCP 选项" - -#: grub-core/net/bootp.c:682 -#, fuzzy -msgid "invalid DHCP option code" -msgstr "未找到 DHCP 选项" - -#: grub-core/net/bootp.c:686 -#, fuzzy, c-format -msgid "no DHCP option %u found" -msgstr "未找到 DHCP 选项 %d" - -#: grub-core/net/bootp.c:743 -#, c-format -msgid "unrecognised DHCP option format specification `%s'" -msgstr "无法识别的 DHCP 选项格å¼è§„格“%sâ€" - -#: grub-core/net/bootp.c:767 -msgid "no network card found" -msgstr "未找到网å¡" - -#: grub-core/net/bootp.c:859 grub-core/net/net.c:389 -#, c-format -msgid "couldn't autoconfigure %s" -msgstr "无法自动é…ç½® %s" - -#: grub-core/net/bootp.c:873 grub-core/net/bootp.c:876 -msgid "[CARD]" -msgstr "" - -#: grub-core/net/bootp.c:874 -msgid "perform a bootp autoconfiguration" -msgstr "执行 bootp 自动é…ç½®" - -#: grub-core/net/bootp.c:877 -msgid "perform a DHCP autoconfiguration" -msgstr "执行 DHCP 自动é…ç½®" - -#: grub-core/net/bootp.c:879 -msgid "VAR INTERFACE NUMBER DESCRIPTION" -msgstr "" - -#: grub-core/net/bootp.c:880 -msgid "" -"retrieve DHCP option and save it into VAR. If VAR is - then print the value." -msgstr "" - -#: grub-core/net/dns.c:459 -msgid "no DNS servers configured" -msgstr "未é…ç½® DNS æœåС噍" - -#: grub-core/net/dns.c:522 -msgid "domain name component is too long" -msgstr "域åå称部分过长" - -#: grub-core/net/dns.c:618 grub-core/net/dns.c:666 -msgid "no DNS record found" -msgstr "未找到 DNS 记录" - -#: grub-core/net/dns.c:626 -msgid "no DNS reply received" -msgstr "未收到 DNS 回å¤" - -#: grub-core/net/dns.c:682 -msgid "only ipv4" -msgstr "ä»… ipv4" - -#: grub-core/net/dns.c:686 -msgid "only ipv6" -msgstr "ä»… ipv6" - -#: grub-core/net/dns.c:690 -msgid "prefer ipv4" -msgstr "å好 ipv4" - -#: grub-core/net/dns.c:694 -msgid "prefer ipv6" -msgstr "å好 ipv5" - -#: grub-core/net/dns.c:759 -msgid "ADDRESS DNSSERVER" -msgstr "åœ°å€ DNSæœåС噍" - -#: grub-core/net/dns.c:760 -msgid "Perform a DNS lookup" -msgstr "进行一次 DNS 查找" - -#: grub-core/net/dns.c:762 grub-core/net/dns.c:765 -msgid "DNSSERVER" -msgstr "DNSæœåС噍" - -#: grub-core/net/dns.c:763 -msgid "Add a DNS server" -msgstr "添加一个 DNS æœåС噍" - -#: grub-core/net/dns.c:766 -msgid "Remove a DNS server" -msgstr "移除一个 DNS æœåС噍" - -#: grub-core/net/dns.c:768 -msgid "List DNS servers" -msgstr "列出 DNS æœåС噍" - -#: grub-core/net/drivers/efi/efinet.c:49 grub-core/net/drivers/efi/efinet.c:65 -#: grub-core/net/drivers/efi/efinet.c:77 grub-core/net/drivers/emu/emunet.c:62 -#: grub-core/net/drivers/i386/pc/pxe.c:273 -#: grub-core/net/drivers/ieee1275/ofnet.c:75 -#: grub-core/net/drivers/uboot/ubootnet.c:62 -msgid "couldn't send network packet" -msgstr "无法å‘é€ç½‘络å°åŒ…" - -#: grub-core/net/drivers/ieee1275/ofnet.c:326 -#: grub-core/net/drivers/ieee1275/ofnet.c:359 -msgid "interpret is not supported" -msgstr "" - -#: grub-core/net/drivers/ieee1275/ofnet.c:336 -msgid "alloc-mem failed" -msgstr "alloc-mem 失败" - -#: grub-core/net/drivers/ieee1275/ofnet.c:370 -msgid "free-mem failed" -msgstr "free-mem 失败" - -#: grub-core/net/http.c:105 -msgid "unsupported HTTP response" -msgstr "䏿”¯æŒçš„ HTTP å“应" - -#. TRANSLATORS: GRUB HTTP code is pretty young. So even perfectly -#. valid answers like 403 will trigger this very generic message. -#: grub-core/net/http.c:126 -#, c-format -msgid "unsupported HTTP error %d: %s" -msgstr "䏿”¯æŒçš„ HTTP 错误 %d:%s" - -#: grub-core/net/http.c:429 grub-core/net/tftp.c:420 -#, c-format -msgid "time out opening `%s'" -msgstr "打开“%sâ€è¶…æ—¶" - -#: grub-core/net/net.c:179 -msgid "timeout: could not resolve hardware address" -msgstr "超时:无法解æžç¡¬ä»¶åœ°å€" - -#: grub-core/net/net.c:548 -#, c-format -msgid "unresolvable address %s" -msgstr "无法解æžçš„åœ°å€ %s" - -#: grub-core/net/net.c:594 -#, c-format -msgid "unrecognised network address `%s'" -msgstr "无法识别的网络地å€â€œ%sâ€" - -#: grub-core/net/net.c:661 -msgid "destination unreachable" -msgstr "目标ä¸å¯è¾¾" - -#. TRANSLATORS: route loop is a condition when e.g. -#. to contact server A you need to go through B -#. and to contact B you need to go through A. -#: grub-core/net/net.c:684 -msgid "route loop detected" -msgstr "探测到路由回环" - -#: grub-core/net/net.c:700 -msgid "address not found" -msgstr "åœ°å€æœªæ‰¾åˆ°" - -#: grub-core/net/net.c:704 -msgid "you can't delete this address" -msgstr "您ä¸èƒ½åˆ é™¤è¿™ä¸ªåœ°å€" - -#: grub-core/net/net.c:776 grub-core/net/net.c:792 -#, c-format -msgid "Unsupported hw address type %d\n" -msgstr "䏿”¯æŒçš„ hw 地å€ç±»åž‹ %d\n" - -#: grub-core/net/net.c:813 -#, c-format -msgid "Unsupported address type %d\n" -msgstr "䏿”¯æŒçš„地å€ç±»åž‹ %d\n" - -#: grub-core/net/net.c:1017 grub-core/net/net.c:1131 -msgid "three arguments expected" -msgstr "需è¦ä¸‰ä¸ªå‚æ•°" - -#: grub-core/net/net.c:1023 -msgid "card not found" -msgstr "" - -#. TRANSLATORS: it refers to the network address. -#: grub-core/net/net.c:1167 -msgid "temporary" -msgstr "临时" - -#: grub-core/net/net.c:1190 -#, c-format -msgid "Unknown address type %d\n" -msgstr "未知地å€ç±»åž‹ %d\n" - -#: grub-core/net/net.c:1298 -msgid "no server is specified" -msgstr "没有指定æœåС噍" - -#: grub-core/net/net.c:1637 -#, c-format -msgid "timeout reading `%s'" -msgstr "读å–“%sâ€è¶…æ—¶" - -#. TRANSLATORS: HWADDRESS stands for -#. "hardware address". -#: grub-core/net/net.c:1762 -msgid "SHORTNAME CARD ADDRESS [HWADDRESS]" -msgstr "" - -#: grub-core/net/net.c:1763 -msgid "Add a network address." -msgstr "添加一个网络地å€ã€‚" - -#: grub-core/net/net.c:1766 -msgid "[CARD [HWADDRESS]]" -msgstr "" - -#: grub-core/net/net.c:1767 -msgid "Perform an IPV6 autoconfiguration" -msgstr "进行 IPv6 自动é…ç½®" - -#: grub-core/net/net.c:1770 grub-core/net/net.c:1777 -#, fuzzy -msgid "SHORTNAME" -msgstr "VARNAME" - -#: grub-core/net/net.c:1771 -msgid "Delete a network address." -msgstr "删除一个网络地å€ã€‚" - -#. TRANSLATORS: "gw" is a keyword. -#: grub-core/net/net.c:1774 -msgid "SHORTNAME NET [INTERFACE| gw GATEWAY]" -msgstr "" - -#: grub-core/net/net.c:1775 -msgid "Add a network route." -msgstr "添加一æ¡ç½‘络路由。" - -#: grub-core/net/net.c:1778 -msgid "Delete a network route." -msgstr "删除一æ¡ç½‘络路由。" - -#: grub-core/net/net.c:1780 -msgid "list network routes" -msgstr "列出网络路由" - -#: grub-core/net/net.c:1782 -msgid "list network cards" -msgstr "列出网å¡" - -#: grub-core/net/net.c:1784 -msgid "list network addresses" -msgstr "列出网络地å€" - -#: grub-core/net/tcp.c:681 -msgid "connection refused" -msgstr "连接被拒ç»" - -#: grub-core/net/tcp.c:684 -msgid "connection timeout" -msgstr "连接超时" - -#: grub-core/normal/auth.c:220 -msgid "Enter username: " -msgstr "输入用户å:" - -#: grub-core/normal/auth.c:269 -msgid "[USERLIST]" -msgstr "[用户列表]" - -#: grub-core/normal/auth.c:270 -msgid "Check whether user is in USERLIST." -msgstr "" - -#: grub-core/normal/cmdline.c:174 grub-core/normal/menu_entry.c:1068 -msgid "Possible commands are:" -msgstr "å¯ç”¨å‘½ä»¤ï¼š" - -#: grub-core/normal/cmdline.c:177 grub-core/normal/menu_entry.c:1072 -msgid "Possible devices are:" -msgstr "å¯ç”¨è®¾å¤‡ï¼š" - -#: grub-core/normal/cmdline.c:180 grub-core/normal/menu_entry.c:1076 -msgid "Possible files are:" -msgstr "å¯ç”¨æ–‡ä»¶ï¼š" - -#: grub-core/normal/cmdline.c:183 grub-core/normal/menu_entry.c:1080 -msgid "Possible partitions are:" -msgstr "å¯ç”¨åˆ†åŒºï¼š" - -#: grub-core/normal/cmdline.c:186 grub-core/normal/menu_entry.c:1084 -msgid "Possible arguments are:" -msgstr "å¯ç”¨å‚数:" - -#. TRANSLATORS: this message is used if none of above matches. -#. This shouldn't happen but please use the general term for -#. "thing" or "object". -#: grub-core/normal/cmdline.c:192 grub-core/normal/menu_entry.c:1088 -msgid "Possible things are:" -msgstr "å¯ç”¨äº‹ç‰©ï¼š" - -#: grub-core/normal/color.c:81 -#, c-format -msgid "Warning: syntax error (missing slash) in `%s'\n" -msgstr "警告:%s 中有语法错误(缺少斜æ )\n" - -#: grub-core/normal/color.c:90 -#, c-format -msgid "Warning: invalid foreground color `%s'\n" -msgstr "è­¦å‘Šï¼šæ— æ•ˆçš„å‰æ™¯è‰² `%s'\n" - -#: grub-core/normal/color.c:96 -#, c-format -msgid "Warning: invalid background color `%s'\n" -msgstr "警告:无效的背景色 `%s'\n" - -#: grub-core/normal/context.c:206 -msgid "ENVVAR [ENVVAR] ..." -msgstr "环境å˜é‡ [环境å˜é‡] ..." - -#: grub-core/normal/context.c:207 -msgid "Export variables." -msgstr "导出å˜é‡ã€‚" - -#: grub-core/normal/datetime.c:25 -msgid "Sunday" -msgstr "星期日" - -#: grub-core/normal/datetime.c:26 -msgid "Monday" -msgstr "星期一" - -#: grub-core/normal/datetime.c:27 -msgid "Tuesday" -msgstr "星期二" - -#: grub-core/normal/datetime.c:28 -msgid "Wednesday" -msgstr "星期三" - -#: grub-core/normal/datetime.c:29 -msgid "Thursday" -msgstr "星期四" - -#: grub-core/normal/datetime.c:30 -msgid "Friday" -msgstr "星期五" - -#: grub-core/normal/datetime.c:31 -msgid "Saturday" -msgstr "星期六" - -#: grub-core/normal/dyncmd.c:187 -msgid "module isn't loaded" -msgstr "æ¨¡å—æœªåŠ è½½" - -#: grub-core/normal/main.c:211 -#, c-format -msgid "GNU GRUB version %s" -msgstr "GNU GRUB %s 版" - -#: grub-core/normal/main.c:360 -msgid "ESC at any time exits." -msgstr "任何时候按下 ESC å‡å¯é€€å‡ºã€‚" - -#: grub-core/normal/main.c:363 -#, c-format -msgid "" -"Minimal BASH-like line editing is supported. For the first word, TAB lists " -"possible command completions. Anywhere else TAB lists possible device or " -"file completions. %s" -msgstr "" -"æ”¯æŒæœ€å°åŒ–的类 Bash 行编辑。对于第一个å•è¯ Tab 列出å¯ç”¨çš„命令å补全;对于其他" -"ä½ç½® Tab 列出å¯èƒ½çš„设备或文件。%s" - -#. TRANSLATORS: it's command line prompt. -#: grub-core/normal/main.c:395 -msgid ">" -msgstr ">" - -#. TRANSLATORS: it's command line prompt. -#: grub-core/normal/main.c:398 -msgid "grub>" -msgstr "grub>" - -#: grub-core/normal/main.c:518 -msgid "Clear the screen." -msgstr "清å±ã€‚" - -#: grub-core/normal/main.c:527 -msgid "Enter normal mode." -msgstr "进入普通模å¼ã€‚" - -#: grub-core/normal/main.c:529 -msgid "Exit from normal mode." -msgstr "退出普通模å¼ã€‚" - -#: grub-core/normal/menu.c:66 grub-core/normal/menu_entry.c:1449 -msgid "Press any key to continue..." -msgstr "按任æ„键继续..." - -#: grub-core/normal/menu.c:815 -#, c-format -msgid "Booting `%s'" -msgstr "正在引导“%sâ€" - -#: grub-core/normal/menu.c:827 -#, c-format -msgid "Falling back to `%s'" -msgstr "回退至“%sâ€" - -#: grub-core/normal/menu.c:843 -msgid "Failed to boot both default and fallback entries.\n" -msgstr "引导默认å¯åŠ¨é¡¹å’Œä¼šæ»šå¯åŠ¨æƒ³å‡å¤±è´¥ã€‚\n" - -#: grub-core/normal/menu_entry.c:1171 -msgid "Booting a command list" -msgstr "正在按照命令列表进行引导" - -#: grub-core/normal/menu_text.c:160 -msgid "" -"Minimum Emacs-like screen editing is supported. TAB lists completions. Press " -"Ctrl-x or F10 to boot, Ctrl-c or F2 for a command-line or ESC to discard " -"edits and return to the GRUB menu." -msgstr "" -"æ”¯æŒæœ€å°åŒ–的类 Emacs å±å¹•编辑。Tab 列出å¯è¡¥å…¨é¡¹ï¼ŒCtrl-x 或 F10 进行引导," -"Ctrl-c 或 F2 进入命令行,ESC 放弃编辑并返回èœå•。" - -#: grub-core/normal/menu_text.c:170 -#, fuzzy, c-format -msgid "Use the %C and %C keys to select which entry is highlighted." -msgstr "使用 %C 键和 %C 键选择è¦é«˜äº®çš„å¯åŠ¨é¡¹ã€‚\n" - -#. TRANSLATORS: that's the list of binary unit prefixes. -#: grub-core/normal/misc.c:38 -msgid "B" -msgstr "B" - -#: grub-core/normal/misc.c:38 -msgid "KiB" -msgstr "KiB" - -#: grub-core/normal/misc.c:38 -msgid "MiB" -msgstr "MiB" - -#: grub-core/normal/misc.c:38 -msgid "GiB" -msgstr "GiB" - -#: grub-core/normal/misc.c:38 -msgid "TiB" -msgstr "TiB" - -#: grub-core/normal/misc.c:38 -msgid "PiB" -msgstr "PiB" - -#. TRANSLATORS: that's the list of binary unit prefixes. -#: grub-core/normal/misc.c:40 -msgid "K" -msgstr "K" - -#: grub-core/normal/misc.c:40 -msgid "M" -msgstr "M" - -#: grub-core/normal/misc.c:40 -msgid "G" -msgstr "G" - -#: grub-core/normal/misc.c:40 -msgid "T" -msgstr "T" - -#: grub-core/normal/misc.c:40 -msgid "P" -msgstr "P" - -#. TRANSLATORS: that's the list of binary unit prefixes. -#: grub-core/normal/misc.c:42 -msgid "B/s" -msgstr "B/s" - -#: grub-core/normal/misc.c:42 -msgid "KiB/s" -msgstr "KiB/s" - -#: grub-core/normal/misc.c:42 -msgid "MiB/s" -msgstr "MiB/s" - -#: grub-core/normal/misc.c:42 -msgid "GiB/s" -msgstr "GiB/s" - -#: grub-core/normal/misc.c:42 -msgid "TiB/s" -msgstr "TiB/s" - -#: grub-core/normal/misc.c:42 -msgid "PiB/s" -msgstr "PiB/s" - -#: grub-core/normal/misc.c:96 -#, c-format -msgid "Partition %s:" -msgstr "分区 %s:" - -#: grub-core/normal/misc.c:101 -#, c-format -msgid "Device %s:" -msgstr "设备 %s:" - -#: grub-core/normal/misc.c:107 -msgid "Filesystem cannot be accessed" -msgstr "无法访问文件系统" - -#: grub-core/normal/misc.c:121 -#, c-format -msgid "Filesystem type %s" -msgstr "文件系统类型 %s" - -#: grub-core/normal/misc.c:131 -#, c-format -msgid "- Label `%s'" -msgstr "- å·æ ‡â€œ%sâ€" - -#. TRANSLATORS: Arguments are year, month, day, hour, minute, -#. second, day of the week (translated). -#: grub-core/normal/misc.c:148 -#, c-format -msgid "- Last modification time %d-%02d-%02d %02d:%02d:%02d %s" -msgstr "- 最近更改 %d-%02d-%02d %02d:%02d:%02d %s" - -#: grub-core/normal/misc.c:171 -msgid "No known filesystem detected" -msgstr "未探测到已知文件系统" - -#: grub-core/normal/misc.c:174 -#, c-format -msgid " - Partition start at %llu%sKiB" -msgstr " - 分区始于 %llu%sKiB" - -#: grub-core/normal/misc.c:178 -#, c-format -msgid " - Sector size %uB" -msgstr " - æ‰‡åŒºå¤§å° %uB" - -#: grub-core/normal/misc.c:180 -msgid " - Total size unknown" -msgstr " - æ€»é‡æœªçŸ¥" - -#: grub-core/normal/misc.c:182 -#, c-format -msgid " - Total size %llu%sKiB" -msgstr " - æ€»é‡ %llu%sKiB" - -#. TRANSLATORS: Replace dot with appropriate decimal separator for -#. your language. -#: grub-core/normal/misc.c:186 -msgid ".5" -msgstr ".5" - -#. TRANSLATORS: This has to fit on one line. It's ok to include few -#. words but don't write poems. -#: grub-core/normal/term.c:82 -msgid "--MORE--" -msgstr "--更多--" - -#: grub-core/osdep/aros/config.c:92 grub-core/osdep/unix/config.c:137 -#: grub-core/osdep/windows/config.c:55 -#, c-format -msgid "cannot open configuration file `%s': %s" -msgstr "无法打开é…置文件“%sâ€ï¼š%s" - -#: grub-core/osdep/basic/compress.c:8 grub-core/osdep/basic/compress.c:14 -#: grub-core/osdep/basic/compress.c:20 -msgid "no compression is available for your platform" -msgstr "æ‚¨çš„å¹³å°æ²¡æœ‰å¯ç”¨çš„压缩选项" - -#: grub-core/osdep/basic/no_platform.c:30 -#: grub-core/osdep/windows/platform.c:418 -msgid "no IEEE1275 routines are available for your platform" -msgstr "" - -#: grub-core/osdep/basic/no_platform.c:38 -msgid "no EFI routines are available for your platform" -msgstr "" - -#: grub-core/osdep/basic/no_platform.c:45 -#: grub-core/osdep/windows/platform.c:425 -msgid "no SGI routines are available for your platform" -msgstr "" - -#. TRANSLATORS: The OS itself may very well have a random -#. number generator but GRUB doesn't know how to access it. -#: grub-core/osdep/basic/random.c:42 -msgid "no random number generator is available for your OS" -msgstr "" - -#: grub-core/osdep/devmapper/getroot.c:81 -msgid "Failed to create `device-mapper' tree" -msgstr "创建“device-mapperâ€æ ‘失败" - -#: grub-core/osdep/devmapper/getroot.c:197 -#: grub-core/osdep/freebsd/getroot.c:202 -#, c-format -msgid "can't mount encrypted volume `%s': %s" -msgstr "无法挂载加密å·â€œ%sâ€ï¼š%s" - -#. TRANSLATORS: geom is the name of (k)FreeBSD device framework. -#. Usually left untranslated. -#. -#: grub-core/osdep/freebsd/getroot.c:82 grub-core/osdep/freebsd/getroot.c:164 -#: grub-core/osdep/freebsd/getroot.c:258 grub-core/osdep/freebsd/getroot.c:316 -msgid "couldn't open geom" -msgstr "无法打开 geom" - -#: grub-core/osdep/freebsd/getroot.c:182 grub-core/osdep/freebsd/getroot.c:277 -msgid "couldn't find geli consumer" -msgstr "" - -#: grub-core/osdep/freebsd/getroot.c:282 -msgid "couldn't retrieve geli UUID" -msgstr "" - -#. TRANSLATORS: geom is the name of (k)FreeBSD device framework. -#. Usually left untranslated. "part" is the identifier of one of its -#. classes. -#: grub-core/osdep/freebsd/getroot.c:325 -msgid "couldn't find geom `part' class" -msgstr "" - -#: grub-core/osdep/freebsd/hostdisk.c:72 grub-core/osdep/linux/hostdisk.c:93 -msgid "unaligned device size" -msgstr "未对é½çš„设备大å°" - -#: grub-core/osdep/generic/blocklist.c:56 -#, c-format -msgid "attempting to read the core image `%s' from GRUB" -msgstr "正在å°è¯•从 GRUB è¯»å–æ ¸å¿ƒé•œåƒâ€œ%sâ€" - -#: grub-core/osdep/generic/blocklist.c:57 -#, c-format -msgid "attempting to read the core image `%s' from GRUB again" -msgstr "正在å°è¯•冿¬¡ä»Ž GRUB è¯»å–æ ¸å¿ƒé•œåƒâ€œ%sâ€" - -#: grub-core/osdep/generic/blocklist.c:115 -#, c-format -msgid "cannot read `%s' correctly" -msgstr "无法正确读å–“%sâ€" - -#: grub-core/osdep/generic/blocklist.c:126 -#, fuzzy -msgid "failed to read the sectors of the core image" -msgstr "è¯»å–æ ¸å¿ƒé•œåƒçš„其他扇区失败" - -#. TRANSLATORS: On GNU/Hurd, a "translator" is similar to a filesystem -#. mount, but handled by a userland daemon, whose invocation command line -#. is being fetched here. First %s is the file being looked at (for which -#. we are fetching the "translator" command line), second %s is the error -#. message. -#. -#: grub-core/osdep/hurd/getroot.c:79 -#, c-format -msgid "cannot get translator command line for path `%s': %s" -msgstr "" - -#: grub-core/osdep/hurd/getroot.c:82 -#, c-format -msgid "translator command line is empty for path `%s'" -msgstr "" - -#. TRANSLATORS: we expect to get something like -#. /hurd/foobar --option1 --option2=baz /dev/something -#. -#: grub-core/osdep/hurd/getroot.c:98 -#, c-format -msgid "" -"translator `%s' for path `%s' has several non-option words, at least `%s' " -"and `%s'" -msgstr "" - -#. TRANSLATORS: we expect to get something like -#. /hurd/foobar --option1 --option2=baz /dev/something -#. -#: grub-core/osdep/hurd/getroot.c:109 -#, c-format -msgid "" -"translator `%s' for path `%s' is given only options, cannot find device part" -msgstr "" - -#: grub-core/osdep/hurd/hostdisk.c:73 -#, c-format -msgid "Storage information for `%s' does not include type" -msgstr "" - -#: grub-core/osdep/hurd/hostdisk.c:75 -#, c-format -msgid "`%s' is not a local disk" -msgstr "“%sâ€ä¸æ˜¯æœ¬åœ°ç£ç›˜" - -#: grub-core/osdep/hurd/hostdisk.c:78 -#, c-format -msgid "" -"Storage information for `%s' indicates neither a plain partition nor a plain " -"disk" -msgstr "" - -#: grub-core/osdep/linux/blocklist.c:81 grub-core/osdep/linux/blocklist.c:96 -#: grub-core/osdep/linux/blocklist.c:122 -#, c-format -msgid "can't retrieve blocklists: %s" -msgstr "无法获å–å—列表:%s" - -#: grub-core/osdep/linux/blocklist.c:84 -msgid "blocksize is not divisible by 512" -msgstr "" - -#: grub-core/osdep/linux/blocklist.c:86 -msgid "invalid zero blocksize" -msgstr "无效的零å—大å°" - -#: grub-core/osdep/linux/blocklist.c:90 util/setup.c:744 -msgid "can't retrieve blocklists" -msgstr "无法获å–å—列表" - -#: grub-core/osdep/linux/getroot.c:154 -#, c-format -msgid "ioctl RAID_VERSION error: %s" -msgstr "ioctl RAID_VERSION 错误:%s" - -#: grub-core/osdep/linux/getroot.c:160 grub-core/osdep/linux/getroot.c:164 -#, c-format -msgid "unsupported RAID version: %d.%d" -msgstr "䏿”¯æŒçš„ RAID 版本:%d.%d" - -#: grub-core/osdep/linux/getroot.c:169 -#, c-format -msgid "ioctl GET_ARRAY_INFO error: %s" -msgstr "ioctl GET_ARRAY_INFO 错误:%s" - -#: grub-core/osdep/linux/getroot.c:178 -#, c-format -msgid "ioctl GET_DISK_INFO error: %s" -msgstr "ioctl GET_DISK_INFO 错误:%s" - -#: grub-core/osdep/linux/getroot.c:608 grub-core/osdep/linux/getroot.c:678 -#: grub-core/osdep/linux/hostdisk.c:126 grub-core/osdep/unix/getroot.c:253 -#: grub-core/osdep/unix/getroot.c:642 grub-core/osdep/unix/platform.c:92 -#: grub-core/osdep/unix/platform.c:100 -#, fuzzy, c-format -msgid "Unable to open stream from %s: %s" -msgstr "无法打开目录 %s\n" - -#: grub-core/osdep/linux/getroot.c:1033 -#, c-format -msgid "unknown kind of RAID device `%s'" -msgstr "未知类型的 RAID 设备“%sâ€" - -#: grub-core/osdep/linux/ofpath.c:181 -#, c-format -msgid "`obppath' not found in parent dirs of `%s', no IEEE1275 name discovery" -msgstr "" - -#: grub-core/osdep/linux/ofpath.c:222 grub-core/osdep/unix/getroot.c:505 -#: grub-core/osdep/unix/getroot.c:529 grub-core/osdep/unix/relpath.c:49 -#: util/grub-install.c:984 util/grub-install.c:1331 util/grub-probe.c:323 -#, c-format -msgid "failed to get canonical path of `%s'" -msgstr "获å–“%sâ€çš„æ­£è§„路径失败" - -#: grub-core/osdep/linux/ofpath.c:740 -#, c-format -msgid "unknown device type %s" -msgstr "未知的设备类型 %s" - -#: grub-core/osdep/linux/ofpath.c:758 util/ieee1275/grub-ofpathname.c:39 -#, c-format -msgid "Usage: %s DEVICE\n" -msgstr "用法:%s 设备\n" - -#: grub-core/osdep/unix/exec.c:86 grub-core/osdep/unix/exec.c:172 -#: grub-core/osdep/unix/exec.c:217 -#, c-format -msgid "Unable to fork: %s" -msgstr "无法 fork:%s" - -#: grub-core/osdep/unix/exec.c:166 grub-core/osdep/unix/exec.c:211 -#, c-format -msgid "Unable to create pipe: %s" -msgstr "无法创建管é“:%s" - -#: grub-core/osdep/unix/getroot.c:370 -msgid "cannot save the original directory" -msgstr "无法ä¿å­˜åŽŸå§‹ç›®å½•" - -#: grub-core/osdep/unix/getroot.c:423 grub-core/osdep/unix/getroot.c:480 -#: grub-core/osdep/unix/getroot.c:489 -msgid "cannot restore the original directory" -msgstr "无法æ¢å¤åŽŸå§‹ç›®å½•" - -#. TRANSLATORS: "stat" comes from the name of POSIX function. -#: grub-core/osdep/unix/getroot.c:551 grub-core/osdep/unix/hostdisk.c:61 -#: grub-core/osdep/unix/relpath.c:73 grub-core/osdep/unix/relpath.c:97 -#: util/getroot.c:160 util/getroot.c:162 util/grub-install.c:774 -#: util/grub-macbless.c:70 -#, c-format -msgid "cannot stat `%s': %s" -msgstr "无法对“%sâ€è¿è¡Œ stat:%s" - -#: grub-core/osdep/unix/hostdisk.c:293 -#, c-format -msgid "cannot make temporary file: %s" -msgstr "无法创建临时文件:%s" - -# need to check source code: -# is the %s referring to the "directory" or the error msg? -#: grub-core/osdep/unix/hostdisk.c:311 -#, c-format -msgid "cannot make temporary directory: %s" -msgstr "无法创建临时目录:%s" - -#: grub-core/osdep/unix/platform.c:77 -#, c-format -msgid "" -"couldn't find IEEE1275 device path for %s.\n" -"You will have to set `boot-device' variable manually" -msgstr "" -"无法为 %s 找到 IEEE1275 设备路径。\n" -"æ‚¨éœ€è¦æ‰‹åŠ¨è®¾ç½®â€œboot-deviceâ€å˜é‡ã€‚" - -#. TRANSLATORS: This message is shown when required executable `%s' -#. isn't found. -#: grub-core/osdep/unix/platform.c:149 grub-core/osdep/unix/platform.c:189 -#, c-format -msgid "%s: not found" -msgstr "%s:未找到" - -#: grub-core/osdep/unix/platform.c:225 -#, c-format -msgid "" -"`nvsetenv' failed. \n" -"You will have to set `boot-device' variable manually. At the IEEE1275 " -"prompt, type:\n" -" %s\n" -msgstr "" -"“nvsetenvâ€å¤±è´¥ã€‚\n" -"您必须手动设置“boot-deviceâ€å˜é‡ã€‚在 IEEE1275 命令æç¤ºç¬¦ä¸‹ï¼Œè¾“入:\n" -" %s\n" - -#: grub-core/osdep/unix/platform.c:240 -msgid "You will have to set `SystemPartition' and `OSLoader' manually." -msgstr "您必须手动设置“SystemPartitionâ€å’Œâ€œOSLoaderâ€ã€‚" - -#. TRANSLATORS: canonical pathname is the -#. complete one e.g. /etc/fstab. It has -#. to contain `/' normally, if it doesn't -#. we're in trouble and throw this error. -#: grub-core/osdep/unix/relpath.c:90 -msgid "no `/' in canonical filename" -msgstr "规范文件å内未包å«â€œ/â€" - -#: grub-core/osdep/windows/hostdisk.c:151 -msgid "cygwin_conv_path() failed" -msgstr "cygwin_conv_path() 失败" - -#: grub-core/osdep/windows/hostdisk.c:501 util/grub-install.c:570 -msgid "couldn't retrieve random data" -msgstr "无法获å–éšæœºæ•°æ®" - -#: grub-core/osdep/windows/platform.c:97 -msgid "Insufficient privileges to access firmware, assuming BIOS" -msgstr "" - -#: grub-core/osdep/windows/platform.c:225 -msgid "no EFI routines are available when running in BIOS mode" -msgstr "" - -#: grub-core/osdep/windows/platform.c:240 -msgid "unexpected EFI error" -msgstr "æ„外的 EFI 错误" - -#: grub-core/osdep/windows/platform.c:315 -msgid "Couldn't find a free BootNNNN slot" -msgstr "" - -#: grub-core/partmap/gpt.c:191 -#, fuzzy -msgid "" -"this GPT partition label contains no BIOS Boot Partition; embedding won't be " -"possible" -msgstr "æ­¤ GPT 分区标签没有 BIOS 引导分区,无法进行嵌入ï¼" - -#: grub-core/partmap/gpt.c:196 -msgid "your BIOS Boot Partition is too small; embedding won't be possible" -msgstr "您的 BIOS 引导分区过å°ï¼›æ— æ³•进行嵌入" - -#. TRANSLATORS: MBR gap and boot track is the same thing and is the space -#. between MBR and first partitition. If your language translates well only -#. "boot track", you can just use it everywhere. Next two messages are about -#. RAID controllers/software bugs which GRUB has to live with. Please spread -#. the message that these are bugs in other software and not merely -#. suboptimal behaviour. -#: grub-core/partmap/msdos.c:51 -#, c-format -msgid "" -"Sector %llu is already in use by raid controller `%s'; avoiding it. Please " -"ask the manufacturer not to store data in MBR gap" -msgstr "" - -#: grub-core/partmap/msdos.c:54 -#, c-format -msgid "" -"Sector %llu is already in use by the program `%s'; avoiding it. This " -"software may cause boot or other problems in future. Please ask its authors " -"not to store data in the boot track" -msgstr "" - -#: grub-core/partmap/msdos.c:384 -msgid "" -"other software is using the embedding area, and there is not enough room for " -"core.img. Such software is often trying to store data in a way that avoids " -"detection. We recommend you investigate" -msgstr "" - -#: grub-core/partmap/msdos.c:395 -#, fuzzy -msgid "" -"this msdos-style partition label has no post-MBR gap; embedding won't be " -"possible" -msgstr "æ­¤ DOS 分区标签没有 MBR å‰é—´éš”,无法进行嵌入ï¼" - -#: grub-core/partmap/msdos.c:404 -#, fuzzy -msgid "your embedding area is unusually small. core.img won't fit in it." -msgstr "您的嵌入区域过å°ï¼Œæ— æ³•装入 core.img。" - -#: grub-core/parttool/msdospart.c:39 -msgid "Make partition active" -msgstr "标记分区为活动状æ€" - -#: grub-core/parttool/msdospart.c:51 -msgid "not a primary partition" -msgstr "䏿˜¯ä¸»åˆ†åŒº" - -#: grub-core/parttool/msdospart.c:69 -#, c-format -msgid "Partition %d is active now. \n" -msgstr "%d 分区现在处于活动状æ€ã€‚\n" - -#: grub-core/parttool/msdospart.c:74 -#, c-format -msgid "Cleared active flag on %d. \n" -msgstr "" - -#: grub-core/parttool/msdospart.c:87 -msgid "Change partition type" -msgstr "更改分区类型" - -#: grub-core/parttool/msdospart.c:88 -#, fuzzy -msgid "Set `hidden' flag in partition type" -msgstr "指定分区表类型。" - -#: grub-core/parttool/msdospart.c:130 -#, c-format -msgid "the partition type 0x%x isn't valid" -msgstr "分区类型 0x%x 无效" - -#. TRANSLATORS: In this case we're actually writing to the disk and actively -#. modifying partition type rather than just defining it. -#: grub-core/parttool/msdospart.c:137 -#, c-format -msgid "Setting partition type to 0x%x\n" -msgstr "设置分区类型设置为 0x%x\n" - -#. TRANSLATORS: 0 is a quantifier. "break" (similar to bash) -#. can be used e.g. to break 3 loops at once. -#. But asking it to break 0 loops makes no sense. -#: grub-core/script/execute.c:143 -msgid "can't break 0 loops" -msgstr "" - -#. TRANSLATORS: It's about not being -#. inside a function. "return" can be used only -#. in a function and this error occurs if it's used -#. anywhere else. -#: grub-core/script/execute.c:227 -msgid "not in function body" -msgstr "ä¸åœ¨å‡½æ•°ä½“中" - -#: grub-core/script/execute.c:371 -#, c-format -msgid "invalid variable name `%s'" -msgstr "无效的å˜é‡å“%sâ€" - -#: grub-core/script/execute.c:953 -msgid "cannot allocate command buffer" -msgstr "无法分é…命令缓冲区" - -#: grub-core/script/lexer.c:144 util/grub-fstest.c:330 -msgid "unexpected end of file" -msgstr "文件æ„外结æŸ" - -#: grub-core/script/main.c:55 grub-core/script/main.c:57 -#: grub-core/script/main.c:59 grub-core/script/main.c:67 -msgid "[NUM]" -msgstr "" - -#: grub-core/script/main.c:55 -msgid "Exit from loops" -msgstr "退出循环" - -#: grub-core/script/main.c:57 -msgid "Continue loops" -msgstr "继续循环" - -#. TRANSLATORS: Positional arguments are -#. arguments $0, $1, $2, ... -#: grub-core/script/main.c:62 -msgid "Shift positional parameters." -msgstr "" - -#: grub-core/script/main.c:64 -msgid "[VALUE]..." -msgstr "[值]..." - -#: grub-core/script/main.c:65 -msgid "Set positional parameters." -msgstr "设定ä½ç½®å‚数。" - -#. TRANSLATORS: It's a command description -#. and "Return" is a verb, not a noun. The -#. command in question is "return" and -#. has exactly the same semanics as bash -#. equivalent. -#: grub-core/script/main.c:73 -msgid "Return from a function." -msgstr "从一个函数返回。" - -#: grub-core/term/gfxterm_background.c:176 -msgid "[-m (stretch|normal)] FILE" -msgstr "[-m (stretch|normal)] 文件" - -#: grub-core/term/gfxterm_background.c:177 -msgid "Load background image for active terminal." -msgstr "为活动终端加载背景图åƒã€‚" - -#: grub-core/term/gfxterm_background.c:182 util/grub-install.c:302 -#: util/grub-install.c:303 util/grub-mkrescue.c:107 util/grub-mkrescue.c:108 -#: util/grub-render-label.c:61 util/grub-render-label.c:63 -msgid "COLOR" -msgstr "" - -#: grub-core/term/gfxterm_background.c:183 -msgid "Set background color for active terminal." -msgstr "为活动终端设置背景颜色。" - -#: grub-core/term/i386/coreboot/cbmemc.c:139 -msgid "Show CBMEM console content." -msgstr "显示 CBMEM 终端内容。" - -#: grub-core/term/serial.c:57 -msgid "Set the serial unit." -msgstr "设置串行å•元。" - -#: grub-core/term/serial.c:58 -msgid "Set the serial port address." -msgstr "设置串行端å£åœ°å€ã€‚" - -#: grub-core/term/serial.c:59 -msgid "Set the serial port speed." -msgstr "设置串行端å£é€Ÿåº¦ã€‚" - -#: grub-core/term/serial.c:60 -msgid "Set the serial port word length." -msgstr "设置串行端å£å­—长。" - -#: grub-core/term/serial.c:61 -msgid "Set the serial port parity." -msgstr "设置串行端å£å¥‡å¶æ ¡éªŒã€‚" - -#: grub-core/term/serial.c:62 -msgid "Set the serial port stop bits." -msgstr "设置串行端å£åœæ­¢ä½ã€‚" - -#: grub-core/term/serial.c:63 -msgid "Set the base frequency." -msgstr "设置基础频率。" - -#: grub-core/term/serial.c:64 -msgid "Enable/disable RTS/CTS." -msgstr "å¯ç”¨/ç¦ç”¨ RTS/CTS。" - -#: grub-core/term/serial.c:218 -#, c-format -msgid "serial port `%s' isn't found" -msgstr "串行端å£â€œ%sâ€æœªæ‰¾åˆ°" - -#: grub-core/term/serial.c:254 -msgid "unsupported serial port flow control" -msgstr "䏿”¯æŒçš„䏲壿µæŽ§åˆ¶" - -#: grub-core/term/serial.c:429 -msgid "[OPTIONS...]" -msgstr "[选项...]" - -#: grub-core/term/serial.c:430 -msgid "Configure serial port." -msgstr "é…置串行端å£ã€‚" - -#: grub-core/term/terminfo.c:184 -#, c-format -msgid "unknown terminfo type `%s'" -msgstr "未知的 terminfo 类型“%sâ€" - -#: grub-core/term/terminfo.c:668 -msgid "ASCII" -msgstr "ASCII" - -#: grub-core/term/terminfo.c:671 -msgid "UTF-8" -msgstr "UTF-8" - -#. TRANSLATORS: visually ordered UTF-8 is a non-compliant encoding -#. based on UTF-8 with right-to-left languages written in reverse. -#. Used on some terminals. Normal UTF-8 is refered as -#. "logically-ordered UTF-8" by opposition. -#: grub-core/term/terminfo.c:677 -#, fuzzy -msgid "visually-ordered UTF-8" -msgstr "终端使用按å¯è§†æ€§æŽ’åºçš„ UTF-8。" - -#: grub-core/term/terminfo.c:680 -msgid "Unknown encoding" -msgstr "未知编ç " - -#: grub-core/term/terminfo.c:684 -msgid "Current terminfo types:" -msgstr "å½“å‰ terminfo 类型:" - -#: grub-core/term/terminfo.c:699 -msgid "Terminal is ASCII-only [default]." -msgstr "终端仅使用 ASCII [默认]。" - -#: grub-core/term/terminfo.c:700 -msgid "Terminal is logical-ordered UTF-8." -msgstr "终端使用按逻辑排åºçš„ UTF-8。" - -#: grub-core/term/terminfo.c:701 -msgid "Terminal is visually-ordered UTF-8." -msgstr "终端使用按å¯è§†æ€§æŽ’åºçš„ UTF-8。" - -#: grub-core/term/terminfo.c:703 -msgid "Terminal has specified geometry." -msgstr "终端已有指定的尺寸。" - -#. TRANSLATORS: "x" has to be entered in, like an identifier, so please don't -#. use better Unicode codepoints. -#: grub-core/term/terminfo.c:706 -msgid "WIDTHxHEIGHT." -msgstr "宽度x高度。" - -#: grub-core/term/terminfo.c:746 -msgid "incorrect terminal dimensions specification" -msgstr "" - -#: grub-core/term/terminfo.c:776 -#, c-format -msgid "terminal %s isn't found or it's not handled by terminfo" -msgstr "终端 %s 未找到或未被 terminfo 管ç†" - -#: grub-core/term/terminfo.c:785 -msgid "[[-a|-u|-v] [-g WxH] TERM [TYPE]]" -msgstr "[[-a|-u|-v] [-g WxH] 终端 [类型]]" - -#: grub-core/term/terminfo.c:786 -msgid "Set terminfo type of TERM to TYPE.\n" -msgstr "设置指定终端的 terminfo 为指定的类型。\n" - -#. TRANSLATORS: this is the BLOCK-argument, not -#. environment block. -#: grub-core/tests/test_blockarg.c:49 -msgid "Print and execute block argument." -msgstr "输出并执行å—傿•°ã€‚" - -#. TRANSLATORS: We're speaking about bitmap images like -#. JPEG or PNG. -#: grub-core/video/bitmap.c:209 -#, c-format -msgid "bitmap file `%s' is of unsupported format" -msgstr "ä½å›¾æ–‡ä»¶â€œ%sâ€çš„æ ¼å¼ä¸å—支æŒ" - -#: grub-core/video/i386/pc/vbe.c:1191 -#, c-format -msgid " VBE info: version: %d.%d OEM software rev: %d.%d\n" -msgstr "" - -#: grub-core/video/i386/pc/vbe.c:1198 -#, c-format -msgid " total memory: %d KiB\n" -msgstr " 总计内存:%d KiB\n" - -#: grub-core/video/video.c:596 grub-core/video/video.c:762 -msgid "no suitable video mode found" -msgstr "" - -#: include/grub/crypto.h:403 -msgid "access denied" -msgstr "访问被拒ç»" - -#: include/grub/util/install.h:30 include/grub/util/install.h:35 -msgid "MODULES" -msgstr "模å—" - -#: include/grub/util/install.h:31 -msgid "pre-load specified modules MODULES" -msgstr "" - -#: include/grub/util/install.h:33 -msgid "embed a specific DTB" -msgstr "" - -#: include/grub/util/install.h:36 -msgid "install only MODULES and their dependencies [default=all]" -msgstr "" - -#: include/grub/util/install.h:37 -msgid "THEMES" -msgstr "" - -#: include/grub/util/install.h:38 -#, c-format -msgid "install THEMES [default=%s]" -msgstr "" - -#: include/grub/util/install.h:39 -msgid "FONTS" -msgstr "" - -#: include/grub/util/install.h:40 -#, c-format -msgid "install FONTS [default=%s]" -msgstr "" - -#: include/grub/util/install.h:41 -msgid "LOCALES" -msgstr "" - -#: include/grub/util/install.h:42 -msgid "install only LOCALES [default=all]" -msgstr "" - -#: include/grub/util/install.h:45 -msgid "compress GRUB files [optional]" -msgstr "压缩 GRUB 文件 [å¯é€‰]" - -#: include/grub/util/install.h:48 util/grub-mkimage.c:83 -#, fuzzy -msgid "choose the compression to use for core image" -msgstr "无法压缩内核镜åƒ" - -#. TRANSLATORS: platform here isn't identifier. It can be translated. -#: include/grub/util/install.h:51 include/grub/util/install.h:54 -#: util/grub-mkimage.c:66 -#, c-format -msgid "use images and modules under DIR [default=%s/]" -msgstr "" - -#: include/grub/util/install.h:57 -#, fuzzy, c-format -msgid "use translations under DIR [default=%s]" -msgstr "使用 DIR 目录内的 GRUB 文件 [默认=%s]" - -#: include/grub/util/install.h:60 -#, c-format -msgid "use themes under DIR [default=%s]" -msgstr "使用 DIR 目录内的主题 [默认=%s]" - -#: include/grub/util/install.h:65 util/grub-mkimage.c:78 -msgid "embed FILE as public key for signature checking" -msgstr "" - -#: util/editenv.c:59 util/grub-editenv.c:201 util/grub-install-common.c:535 -#: util/grub-mkimage.c:315 util/setup.c:791 -#, c-format -msgid "cannot sync `%s': %s" -msgstr "无法 sync \"%s\":%s" - -#: util/editenv.c:64 -#, c-format -msgid "cannot rename the file %s to %s" -msgstr "无法将文件 %s é‡å‘½å为 %s" - -#: util/getroot.c:402 -#, c-format -msgid "disk does not exist, so falling back to partition device %s" -msgstr "ç£ç›˜ä¸å­˜åœ¨ï¼Œå› æ­¤å›žé€€åˆ°åˆ†åŒºè®¾å¤‡ %s" - -#: util/grub-editenv.c:45 util/grub-fstest.c:506 -msgid "Commands:" -msgstr "命令:" - -#: util/grub-editenv.c:47 -msgid "Create a blank environment block file." -msgstr "åˆ›å»ºä¸€ä¸ªç©ºçš„çŽ¯å¢ƒå—æ–‡ä»¶ã€‚" - -#: util/grub-editenv.c:49 -msgid "List the current variables." -msgstr "列出当å‰å˜é‡ã€‚" - -#. TRANSLATORS: "set" is a keyword. It's a summary of "set" subcommand. -#: util/grub-editenv.c:51 -#, fuzzy -msgid "set [NAME=VALUE ...]" -msgstr "[值]..." - -#: util/grub-editenv.c:52 -msgid "Set variables." -msgstr "设置å˜é‡ã€‚" - -#. TRANSLATORS: "unset" is a keyword. It's a summary of "unset" subcommand. -#: util/grub-editenv.c:54 -msgid "unset [NAME ...]" -msgstr "" - -#: util/grub-editenv.c:55 -msgid "Delete variables." -msgstr "删除å˜é‡ã€‚" - -#: util/grub-editenv.c:57 -msgid "Options:" -msgstr "选项:" - -#: util/grub-editenv.c:84 -msgid "You need to specify at least one command.\n" -msgstr "æ‚¨è‡³å°‘éœ€è¦æŒ‡å®šä¸€ä¸ªå‘½ä»¤ã€‚\n" - -#: util/grub-editenv.c:113 -msgid "FILENAME COMMAND" -msgstr "文件å 命令" - -#: util/grub-editenv.c:114 -msgid "Tool to edit environment block." -msgstr "编辑环境å—的工具。" - -#: util/grub-editenv.c:116 -#, c-format -msgid "" -"If FILENAME is `-', the default value %s is used.\n" -"\n" -"There is no `delete' command; if you want to delete the whole environment\n" -"block, use `rm %s'." -msgstr "" - -#: util/grub-editenv.c:162 -msgid "invalid environment block" -msgstr "无效的环境å—" - -#: util/grub-editenv.c:217 -#, c-format -msgid "invalid parameter %s" -msgstr "æ— æ•ˆå‚æ•° %s" - -#: util/grub-editenv.c:222 -msgid "environment block too small" -msgstr "环境å—过å°" - -#: util/grub-fstest.c:107 -#, fuzzy, c-format -msgid "disk read fails at offset %lld, length %lld" -msgstr "在便宜 %lld 读å–ç£ç›˜å¤±è´¥ï¼Œé•¿åº¦ %d" - -#: util/grub-fstest.c:138 -#, c-format -msgid "invalid skip value %lld" -msgstr "无效的跳过值 %lld" - -#: util/grub-fstest.c:160 util/grub-fstest.c:246 -#, c-format -msgid "read error at offset %llu: %s" -msgstr "在åç§» %llu 处å‘生读å–错误:%s" - -#: util/grub-fstest.c:210 -#, c-format -msgid "cannot open OS file `%s': %s" -msgstr "无法打开 OS文件“%sâ€ï¼š%s" - -#: util/grub-fstest.c:225 util/misc.c:126 -#, c-format -msgid "cannot write to the stdout: %s" -msgstr "无法写入至标准输出:%s" - -#: util/grub-fstest.c:259 -#, c-format -msgid "compare fail at offset %llu" -msgstr "在 %llu 处比较失败" - -#: util/grub-fstest.c:280 util/grub-fstest.c:314 -#, c-format -msgid "OS file %s open error: %s" -msgstr "OS 文件 %s 打开错误:%s" - -#: util/grub-fstest.c:402 util/grub-mount.c:392 -#, c-format -msgid "`loopback' command fails: %s" -msgstr "“loopbackâ€å‘½ä»¤å¤±è´¥ï¼š%s" - -#: util/grub-fstest.c:413 util/grub-mount.c:402 -#, c-format -msgid "`cryptomount' command fails: %s" -msgstr "“cryptomountâ€å‘½ä»¤å¤±è´¥ï¼š%s" - -#: util/grub-fstest.c:474 util/grub-fstest.c:478 -msgid "couldn't retrieve UUID" -msgstr "æ— æ³•èŽ·å– UUID" - -#: util/grub-fstest.c:507 -msgid "ls PATH" -msgstr "ls PATH" - -#: util/grub-fstest.c:507 -msgid "List files in PATH." -msgstr "列出 PATH å˜é‡ä¸­çš„æ–‡ä»¶ã€‚" - -#: util/grub-fstest.c:508 -msgid "cp FILE LOCAL" -msgstr "cp 文件 本地文件" - -#: util/grub-fstest.c:508 -msgid "Copy FILE to local file LOCAL." -msgstr "å¤åˆ¶æ–‡ä»¶åˆ°æœ¬åœ°ä½ç½®ã€‚" - -#: util/grub-fstest.c:509 -#, fuzzy -msgid "cat FILE" -msgstr "crc 文件" - -#: util/grub-fstest.c:509 -msgid "Copy FILE to standard output." -msgstr "将指定文件å¤åˆ¶åˆ°æ ‡å‡†è¾“出。" - -#: util/grub-fstest.c:510 -msgid "cmp FILE LOCAL" -msgstr "cmp 文件 本地文件" - -#: util/grub-fstest.c:510 -msgid "Compare FILE with local file LOCAL." -msgstr "比较指定文件与本地文件。" - -#: util/grub-fstest.c:511 -msgid "hex FILE" -msgstr "hex 文件" - -#: util/grub-fstest.c:511 -msgid "Show contents of FILE in hex." -msgstr "以å六进制显示文件内容。" - -#: util/grub-fstest.c:512 -msgid "crc FILE" -msgstr "crc 文件" - -#: util/grub-fstest.c:512 -msgid "Get crc32 checksum of FILE." -msgstr "计算文件的 CRC32 校验和。" - -#: util/grub-fstest.c:513 -msgid "blocklist FILE" -msgstr "blocklist 文件" - -#: util/grub-fstest.c:513 -msgid "Display blocklist of FILE." -msgstr "显示指定文件的å—列表。" - -#: util/grub-fstest.c:514 -msgid "xnu_uuid DEVICE" -msgstr "" - -#: util/grub-fstest.c:514 -msgid "Compute XNU UUID of the device." -msgstr "" - -#. TRANSLATORS: bitmaps are images like e.g. in JPEG. -#: util/grub-fstest.c:517 util/grub-fstest.c:518 util/grub-fstest.c:519 -#: util/grub-mkfont.c:938 util/grub-mkfont.c:951 util/grub-mkfont.c:952 -#: util/grub-mkpasswd-pbkdf2.c:46 util/grub-mkpasswd-pbkdf2.c:47 -#: util/grub-mkpasswd-pbkdf2.c:48 -msgid "NUM" -msgstr "" - -#: util/grub-fstest.c:517 -msgid "Skip N bytes from output file." -msgstr "跳过输出文件的 N 字节。" - -#: util/grub-fstest.c:518 -msgid "Handle N bytes in output file." -msgstr "处ç†è¾“出文件中的 N 字节。" - -#: util/grub-fstest.c:519 -#, fuzzy -msgid "Specify the number of input files." -msgstr "指定一个或多个è¦åŠ è½½çš„å­—åº“ã€‚" - -#: util/grub-fstest.c:520 util/grub-mount.c:453 -msgid "Set debug environment variable." -msgstr "设置调试环境å˜é‡ã€‚" - -#: util/grub-fstest.c:521 util/grub-mount.c:454 -msgid "Mount crypto devices." -msgstr "挂载加密设备。" - -#. TRANSLATORS: "prompt" is a keyword. -#: util/grub-fstest.c:524 util/grub-mount.c:457 -msgid "FILE|prompt" -msgstr "" - -#: util/grub-fstest.c:524 util/grub-mount.c:457 -msgid "Load zfs crypto key." -msgstr "加载 zfs 加密密钥。" - -#: util/grub-fstest.c:526 -msgid "Uncompress data." -msgstr "未压缩数æ®ã€‚" - -#: util/grub-fstest.c:605 -msgid "Invalid disk count.\n" -msgstr "ç£ç›˜è®¡æ•°æ— æ•ˆã€‚\n" - -#. TRANSLATORS: disk count is optional but if it's there it must -#. be before disk list. So please don't imply disk count as mandatory. -#. -#: util/grub-fstest.c:613 -msgid "Disk count must precede disks list.\n" -msgstr "" - -#: util/grub-fstest.c:633 -msgid "No command is specified.\n" -msgstr "没有指定命令。\n" - -#: util/grub-fstest.c:638 -msgid "Not enough parameters to command.\n" -msgstr "命令傿•°ä¸å¤Ÿã€‚\n" - -#: util/grub-fstest.c:711 -#, c-format -msgid "Invalid command %s.\n" -msgstr "无效命令%s。\n" - -#: util/grub-fstest.c:724 -msgid "IMAGE_PATH COMMANDS" -msgstr "IMAGE_PATH 命令" - -#: util/grub-fstest.c:725 util/grub-mount.c:553 -msgid "Debug tool for filesystem driver." -msgstr "文件系统驱动调试工具。" - -#: util/grub-glue-efi.c:53 -msgid "set input filename for 32-bit part." -msgstr "" - -#: util/grub-glue-efi.c:55 -msgid "set input filename for 64-bit part." -msgstr "" - -#: util/grub-glue-efi.c:57 util/grub-mklayout.c:55 util/grub-render-label.c:71 -#, fuzzy -msgid "set output filename. Default is STDOUT" -msgstr "设置输出文件å" - -#: util/grub-glue-efi.c:94 util/grub-mklayout.c:476 -#: util/grub-mkpasswd-pbkdf2.c:86 util/grub-render-label.c:131 -msgid "[OPTIONS]" -msgstr "[选项]" - -#: util/grub-glue-efi.c:95 -msgid "Glue 32-bit and 64-bit binary into Apple universal one." -msgstr "" - -#: util/grub-glue-efi.c:116 -msgid "Missing input file\n" -msgstr "缺少输入文件\n" - -#: util/grub-install-common.c:127 util/grub-install-common.c:151 -#, c-format -msgid "cannot copy `%s' to `%s': %s" -msgstr "无法å¤åˆ¶â€œ%sâ€åˆ°â€œ%sâ€ï¼š%s" - -#: util/grub-install-common.c:147 -#, c-format -msgid "can't compress `%s' to `%s'" -msgstr "无法压缩“%sâ€è‡³â€œ%sâ€" - -#: util/grub-install-common.c:196 util/grub-install-common.c:552 -#: util/grub-install-common.c:579 util/grub-install-common.c:621 -#, c-format -msgid "cannot open directory `%s': %s" -msgstr "无法打开目录“%sâ€ï¼š%s" - -#: util/grub-install-common.c:212 -#, c-format -msgid "cannot delete `%s': %s" -msgstr "无法删除“%sâ€ï¼š%s" - -#: util/grub-install-common.c:324 util/grub-mkimage.c:209 -msgid "grub-mkimage is compiled without XZ support" -msgstr "grubk-mkimage 编译时未æä¾› XZ 支æŒ" - -#: util/grub-install-common.c:332 util/grub-mkimage.c:217 -#, c-format -msgid "Unknown compression format %s" -msgstr "æœªçŸ¥åŽ‹ç¼©æ ¼å¼ %s" - -#: util/grub-install-common.c:400 -#, c-format -msgid "Unrecognized compression `%s'" -msgstr "无法识别的压缩“%sâ€" - -#: util/grub-install-common.c:509 -#, c-format -msgid "unknown target format %s" -msgstr "æœªçŸ¥ç›®æ ‡æ ¼å¼ %s" - -#: util/grub-install-common.c:700 -#, c-format -msgid "cannot find locale `%s'" -msgstr "无法找到 locale“%sâ€" - -#: util/grub-install-common.c:939 -#, c-format -msgid "%s doesn't exist. Please specify --target or --directory" -msgstr "%s ä¸å­˜åœ¨ã€‚请指定 --target 或 --directory" - -#: util/grub-install-common.c:948 util/grub-install-common.c:951 -#, c-format -msgid "invalid modinfo file `%s'" -msgstr "无效的 modinfo 文件“%sâ€" - -#: util/grub-install-common.c:966 -#, c-format -msgid "Unknown platform `%s-%s'" -msgstr "未知平å°â€œ%s-%sâ€" - -#: util/grub-install.c:238 -msgid "More than one install device?" -msgstr "多于一个安装设备?" - -#: util/grub-install.c:251 -#, c-format -msgid "" -"install GRUB images under the directory DIR/%s instead of the %s directory" -msgstr "在目录 DIR/%s 下安装 GRUB 镜åƒï¼Œè€Œä¸ä½¿ç”¨ %s 目录" - -#: util/grub-install.c:256 util/grub-probe.c:734 -msgid "TARGET" -msgstr "" - -#. TRANSLATORS: "TARGET" as in "target platform". -#: util/grub-install.c:258 -#, c-format -msgid "install GRUB for TARGET platform [default=%s]; available targets: %s" -msgstr "" - -#. TRANSLATORS: "may break" doesn't just mean that option wouldn't have any -#. effect but that it will make the resulting install unbootable from HDD. -#. TRANSLATORS: The potential breakage isn't limited to floppies but it's -#. likely to make the install unbootable from HDD. -#: util/grub-install.c:267 util/grub-setup.c:94 -#, fuzzy -msgid "" -"make the drive also bootable as floppy (default for fdX devices). May break " -"on some BIOSes." -msgstr "" -"标记驱动器也课作为软驱å¯åЍ(默认 fdX 设备)。此选项å¯èƒ½åœ¨ä¸€äº› BIOS 上无法正常工" -"作。" - -#: util/grub-install.c:270 -msgid "delete device map if it already exists" -msgstr "如果 device map 已存在则先删除它" - -#: util/grub-install.c:272 util/grub-setup.c:87 -msgid "install even if problems are detected" -msgstr "å³ä½¿æ£€æµ‹åˆ°é—®é¢˜ä¹Ÿç»§ç»­å®‰è£…" - -#: util/grub-install.c:274 -msgid "use identifier file even if UUID is available" -msgstr "å³ä½¿ UUID å¯ç”¨ä¹Ÿä»ç„¶ä½¿ç”¨æ ‡è¯†æ–‡ä»¶" - -#: util/grub-install.c:276 -msgid "" -"disk module to use (biosdisk or native). This option is only available on " -"BIOS target." -msgstr "" - -#: util/grub-install.c:279 -msgid "" -"don't update the `boot-device'/`Boot*' NVRAM variables. This option is only " -"available on EFI and IEEE1275 targets." -msgstr "" - -#: util/grub-install.c:282 util/grub-setup.c:89 -#, fuzzy -msgid "do not probe for filesystems in DEVICE" -msgstr "ä¸åœ¨æŒ‡å®šçš„设备上探测文件系统" - -#: util/grub-install.c:284 -msgid "do not install bootsector" -msgstr "" - -#: util/grub-install.c:286 util/grub-setup.c:96 -msgid "" -"Do not apply any reed-solomon codes when embedding core.img. This option is " -"only available on x86 BIOS targets." -msgstr "" - -#: util/grub-install.c:293 -msgid "" -"the installation device is removable. This option is only available on EFI." -msgstr "" - -#: util/grub-install.c:295 -msgid "ID" -msgstr "ID" - -#: util/grub-install.c:296 -msgid "the ID of bootloader. This option is only available on EFI and Macs." -msgstr "" - -#: util/grub-install.c:298 -msgid "use DIR as the EFI System Partition root." -msgstr "" - -#: util/grub-install.c:300 -msgid "use DIR for PPC MAC install." -msgstr "" - -#: util/grub-install.c:301 util/grub-mkrescue.c:106 -msgid "use FILE as font for label" -msgstr "" - -#: util/grub-install.c:302 util/grub-mkrescue.c:107 -msgid "use COLOR for label" -msgstr "" - -#: util/grub-install.c:303 util/grub-mkrescue.c:108 -msgid "use COLOR for label background" -msgstr "" - -#: util/grub-install.c:304 util/grub-mkrescue.c:110 -msgid "use STRING as product version" -msgstr "" - -#: util/grub-install.c:361 -#, fuzzy -msgid "[OPTION] [INSTALL_DEVICE]" -msgstr "[选项] 文件或设备" - -#: util/grub-install.c:362 -msgid "Install GRUB on your drive." -msgstr "在您的驱动器上安装 GRUB。" - -#: util/grub-install.c:363 -#, c-format -msgid "" -"INSTALL_DEVICE must be system device filename.\n" -"%s copies GRUB images into %s. On some platforms, it may also install GRUB " -"into the boot sector." -msgstr "" - -#: util/grub-install.c:672 -#, c-format -msgid "the drive %s is defined multiple times in the device map %s" -msgstr "" - -#: util/grub-install.c:878 -msgid "Unable to determine your platform. Use --target." -msgstr "无法确定您的平å°ã€‚请使用 --target。" - -#: util/grub-install.c:891 -#, c-format -msgid "Installing for %s platform.\n" -msgstr "正在为 %s å¹³å°è¿›è¡Œå®‰è£…。\n" - -#: util/grub-install.c:939 -#, fuzzy -msgid "install device isn't specified" -msgstr "没有指定设备。\n" - -#: util/grub-install.c:1057 -msgid "cannot find EFI directory" -msgstr "无法找到 EFI 目录" - -#: util/grub-install.c:1060 util/grub-install.c:1209 util/grub-install.c:1254 -#: util/grub-macbless.c:76 util/grub-probe.c:329 util/setup.c:316 -#, c-format -msgid "cannot find a device for %s (is /dev mounted?)" -msgstr "无法找到 %s 的设备(/dev 是å¦å·²æŒ‚载?)" - -#: util/grub-install.c:1069 util/grub-install.c:1217 util/grub-install.c:1270 -#: util/grub-install.c:1365 util/grub-macbless.c:80 util/grub-probe.c:372 -#, c-format -msgid "cannot find a GRUB drive for %s. Check your device.map" -msgstr "" - -#: util/grub-install.c:1087 -#, c-format -msgid "%s doesn't look like an EFI partition" -msgstr "%s 看起æ¥ä¸åƒæ˜¯ä¸€ä¸ª EFI 分区" - -#: util/grub-install.c:1129 util/grub-install.c:1614 -msgid "You've found a bug" -msgstr "您å‘现了一个 bug" - -#: util/grub-install.c:1231 -#, c-format -msgid "filesystem on %s is neither HFS nor HFS+" -msgstr "%s ä¸Šçš„æ–‡ä»¶ç³»ç»Ÿæ—¢éž HFS ä¹Ÿéž HFS+" - -#: util/grub-install.c:1299 -#, c-format -msgid "" -"attempt to install to encrypted disk without cryptodisk enabled. Set `%s' in " -"file `%s'" -msgstr "" - -#: util/grub-install.c:1410 util/grub-install.c:1772 util/grub-install.c:1872 -#, c-format -msgid "Can't create file: %s" -msgstr "无法创建文件:%s" - -#: util/grub-install.c:1491 -msgid "no hints available for your platform. Expect reduced performance" -msgstr "" - -#. TRANSLATORS: This is a prefix in the log to indicate that usually -#. a command would be executed but due to an option was skipped. -#: util/grub-install.c:1702 -msgid "NOT RUNNING: " -msgstr "" - -#: util/grub-install.c:1806 -#, fuzzy -msgid "the chosen partition is not a PReP partition" -msgstr "DOS 分区为 %d,BSD 分区为 %d" - -#: util/grub-install.c:1811 -msgid "failed to copy Grub to the PReP partition" -msgstr "" - -#: util/grub-install.c:1816 -#, c-format -msgid "" -"the PReP partition is not empty. If you are sure you want to use it, run dd " -"to clear it: `%s'" -msgstr "" - -#: util/grub-install.c:1888 util/grub-install.c:1932 -#, c-format -msgid "efibootmgr failed to register the boot entry: %s" -msgstr "" - -#: util/grub-install.c:1916 -#, fuzzy -msgid "EFI bootloader id isn't specified." -msgstr "没有指定设备。\n" - -#: util/grub-install.c:1950 -msgid "WARNING: no platform-specific install was performed" -msgstr "" - -#: util/grub-install.c:1957 -msgid "Installation finished. No error reported." -msgstr "安装完æˆã€‚没有报告错误。" - -#: util/grub-macbless.c:101 -msgid "bless for x86-based macs" -msgstr "" - -#: util/grub-macbless.c:103 -msgid "bless for ppc-based macs" -msgstr "" - -#: util/grub-macbless.c:136 util/grub-probe.c:823 -msgid "No path or device is specified.\n" -msgstr "未指定路径或设备。\n" - -#: util/grub-macbless.c:157 -msgid "--ppc PATH|--x86 FILE" -msgstr "" - -#: util/grub-macbless.c:158 -msgid "Mac-style bless on HFS or HFS+" -msgstr "" - -#: util/grub-menulst2cfg.c:44 -#, c-format -msgid "Usage: %s [INFILE [OUTFILE]]\n" -msgstr "用法:%s [输入文件 [输出文件]]\n" - -#: util/grub-mkfont.c:157 -#, c-format -msgid "Freetype Error %d loading glyph 0x%x for U+0x%x%s" -msgstr "" - -#. TRANSLATORS: These qualifiers are used for cursive typography, -#. mainly Arabic. Note that the terms refer to the visual position -#. and not logical order and if used in left-to-right script then -#. leftmost is initial but with right-to-left script like Arabic -#. rightmost is the initial. -#: util/grub-mkfont.c:165 -msgid " (medial)" -msgstr "" - -#: util/grub-mkfont.c:166 -msgid " (leftmost)" -msgstr "" - -#: util/grub-mkfont.c:167 -msgid " (rightmost)" -msgstr "" - -#: util/grub-mkfont.c:481 -#, c-format -msgid "Out of range substitution (%d, %d)\n" -msgstr "" - -#. TRANSLATORS: "lookup" is taken directly from font specifications -#. which are formulated as "Under condition X replace LOOKUP with -#. SUBSTITUITION". " -#: util/grub-mkfont.c:506 -#, c-format -msgid "Out of range lookup: %d\n" -msgstr "" - -#: util/grub-mkfont.c:514 -#, c-format -msgid "Unsupported substitution type: %d\n" -msgstr "" - -#: util/grub-mkfont.c:550 -#, c-format -msgid "Unsupported substitution specification: %d\n" -msgstr "" - -#: util/grub-mkfont.c:582 -#, c-format -msgid "Unsupported coverage specification: %d\n" -msgstr "" - -#: util/grub-mkfont.c:622 -#, c-format -msgid "WARNING: unsupported font feature parameters: %x\n" -msgstr "è­¦å‘Šï¼šä¸æ”¯æŒçš„è‡ªä½“ç‰¹æ€§å‚æ•°ï¼š%x\n" - -#: util/grub-mkfont.c:936 util/grub-mkrescue.c:98 util/grub-mkstandalone.c:48 -msgid "save output in FILE [required]" -msgstr "将输出ä¿å­˜åˆ°æŒ‡å®šæ–‡ä»¶ [必需]" - -#. TRANSLATORS: some font files may have multiple faces (fonts). -#. This option is used to chose among them, the first face being '0'. -#. Rarely used. -#: util/grub-mkfont.c:942 -msgid "select face index" -msgstr "" - -#: util/grub-mkfont.c:943 -msgid "FROM-TO[,FROM-TO]" -msgstr "" - -#. TRANSLATORS: It refers to the range of characters in font. -#: util/grub-mkfont.c:945 -msgid "set font range" -msgstr "设置字体范围" - -#. TRANSLATORS: "family name" for font is just a generic name without suffix -#. like "Bold". -#: util/grub-mkfont.c:949 -msgid "set font family name" -msgstr "设置字体æ—åç§°" - -#: util/grub-mkfont.c:950 -msgid "SIZE" -msgstr "大å°" - -#: util/grub-mkfont.c:950 -msgid "set font size" -msgstr "设置字体大å°" - -#: util/grub-mkfont.c:951 -#, fuzzy -msgid "set font descent" -msgstr "设置根设备。" - -#: util/grub-mkfont.c:952 -msgid "set font ascent" -msgstr "" - -#: util/grub-mkfont.c:953 -msgid "convert to bold font" -msgstr "转æ¢ä¸ºç²—体" - -#: util/grub-mkfont.c:954 -msgid "force autohint" -msgstr "强制 autohint" - -#: util/grub-mkfont.c:955 -msgid "disable hinting" -msgstr "金庸 hinting" - -#. TRANSLATORS: some fonts contain bitmap rendering for -#. some sizes. This option forces rerendering even if -#. pre-rendered bitmap is available. -#. -#: util/grub-mkfont.c:961 -msgid "ignore bitmap strikes when loading" -msgstr "" - -#. TRANSLATORS: It refers to the range of characters in font. -#: util/grub-mkfont.c:1059 util/grub-mkfont.c:1075 -msgid "invalid font range" -msgstr "无效的字体范围" - -#: util/grub-mkfont.c:1151 -msgid "[OPTIONS] FONT_FILES" -msgstr "[选项] 字体文件" - -#: util/grub-mkfont.c:1152 -msgid "Convert common font file formats into PF2" -msgstr "将通用字体文件格å¼è½¬æ¢ä¸º PF2 æ ¼å¼" - -#: util/grub-mkfont.c:1182 util/grub-mkrescue.c:483 -#: util/grub-mkstandalone.c:306 -msgid "output file must be specified" -msgstr "必须指定输出文件" - -#: util/grub-mkfont.c:1185 -msgid "FT_Init_FreeType fails" -msgstr "FT_Init_FreeType 失败" - -#: util/grub-mkfont.c:1199 -#, c-format -msgid "can't open file %s, index %d: error %d" -msgstr "无法打开文件 %s,索引 %d:错误 %d" - -#: util/grub-mkfont.c:1229 -#, c-format -msgid "can't set %dx%d font size: Freetype error %d: %s" -msgstr "无法设置 %dx%d 字体大å°ï¼šFreetype 错误 %d:%s" - -#: util/grub-mkimage.c:67 -#, fuzzy -msgid "set prefix directory" -msgstr "无法打开目录 %s\n" - -#. TRANSLATORS: "memdisk" here isn't an identifier, it can be translated. -#. "embed" is a verb (command description). " -#: util/grub-mkimage.c:71 -msgid "" -"embed FILE as a memdisk image\n" -"Implies `-p (memdisk)/boot/grub' and overrides any prefix supplied " -"previously, but the prefix itself can be overridden by later options" -msgstr "" - -#: util/grub-mkimage.c:74 -msgid "embed FILE as a device tree (DTB)\n" -msgstr "" - -#: util/grub-mkimage.c:76 -msgid "embed FILE as an early config" -msgstr "" - -#. TRANSLATORS: NOTE is a name of segment. -#: util/grub-mkimage.c:80 -msgid "add NOTE segment for CHRP IEEE1275" -msgstr "" - -#: util/grub-mkimage.c:81 -msgid "output a generated image to FILE [default=stdout]" -msgstr "" - -#: util/grub-mkimage.c:82 -msgid "FORMAT" -msgstr "" - -#: util/grub-mkimage.c:100 util/grub-mkstandalone.c:62 -msgid "generate an image in FORMAT" -msgstr "以指定格å¼ç”Ÿæˆé•œåƒ" - -#: util/grub-mkimage.c:101 util/grub-mkstandalone.c:63 -msgid "available formats:" -msgstr "å¯ç”¨æ ¼å¼ï¼š" - -#: util/grub-mkimage.c:152 util/grub-mkstandalone.c:96 -#, c-format -msgid "unknown target format %s\n" -msgstr "未知的目标格å¼â€œ%sâ€ã€‚\n" - -#: util/grub-mkimage.c:242 -#, fuzzy -msgid "[OPTION]... [MODULES]" -msgstr "[选项]... [模å—]" - -#: util/grub-mkimage.c:243 -msgid "Make a bootable image of GRUB." -msgstr "" - -#: util/grub-mkimage.c:273 util/grub-mkstandalone.c:309 -msgid "Target format not specified (use the -O option)." -msgstr "ç›®æ ‡æ ¼å¼æœªæŒ‡å®šï¼ˆä½¿ç”¨ -O 选项)。" - -#: util/grub-mkimage.c:282 -msgid "Prefix not specified (use the -p option)." -msgstr "未指定å‰ç¼€ï¼ˆä½¿ç”¨ -p 选项)。" - -#: util/grub-mkimage.c:318 util/setup.c:793 -#, c-format -msgid "cannot close `%s': %s" -msgstr "无法关闭“%sâ€ï¼š%s" - -#: util/grub-mkimagexx.c:2191 -#, c-format -msgid "" -"`%s' is miscompiled: its start address is 0x%llx instead of 0x%llx: ld.gold " -"bug?" -msgstr "" -"“%sâ€ç¼–译时有误:其起始地å€ä¸º 0x%llx è€Œéž 0x%llx:å¯èƒ½æ˜¯ ld.gold çš„ bug?" - -#: util/grub-mklayout.c:53 -msgid "set input filename. Default is STDIN" -msgstr "设置输入文件å,默认为标准输入" - -#. TRANSLATORS: scan identifier is keyboard key symbolic name. -#: util/grub-mklayout.c:307 -#, c-format -msgid "Unknown keyboard scan identifier %s\n" -msgstr "æœªçŸ¥çš„é”®ç›˜æ‰«ææ ‡è¯†ç¬¦ %s\n" - -#. TRANSLATORS: scan code is keyboard key numeric identifier. -#: util/grub-mklayout.c:390 util/grub-mklayout.c:418 -#, c-format -msgid "Unknown keyboard scan code 0x%02x\n" -msgstr "未知的键盘扫æç  0x%02x\n" - -#. TRANSLATORS: this error is triggered when input doesn't contain any -#. key descriptions. -#: util/grub-mklayout.c:438 -msgid "ERROR: no valid keyboard layout found. Check the input.\n" -msgstr "错误:未找到有效的键盘布局。请检查输入。\n" - -#. TRANSLATORS: "one" is a shortcut for "keyboard layout". -#: util/grub-mklayout.c:478 -msgid "Generate GRUB keyboard layout from Linux console one." -msgstr "" - -#: util/grub-mknetdir.c:47 -msgid "root directory of TFTP server" -msgstr "TFTP æœåŠ¡å™¨çš„æ ¹ç›®å½•" - -#: util/grub-mknetdir.c:49 -msgid "relative subdirectory on network server" -msgstr "网络æœåŠ¡å™¨ä¸Šçš„ç›¸å¯¹å­ç›®å½•" - -#: util/grub-mknetdir.c:88 -msgid "" -"Prepares GRUB network boot images at net_directory/subdir assuming " -"net_directory being TFTP root." -msgstr "" - -#: util/grub-mknetdir.c:146 -#, c-format -msgid "unsupported platform %s" -msgstr "䏿”¯æŒçš„å¹³å° %s" - -#. TRANSLATORS: First %s is replaced by platform name. Second one by filename. -#: util/grub-mknetdir.c:165 -#, c-format -msgid "" -"Netboot directory for %s created. Configure your DHCP server to point to %s\n" -msgstr "" - -#: util/grub-mkpasswd-pbkdf2.c:46 -msgid "Number of PBKDF2 iterations" -msgstr "PBKDF2 迭代次数" - -#: util/grub-mkpasswd-pbkdf2.c:47 -msgid "Length of generated hash" -msgstr "生æˆå“ˆå¸Œä¸²çš„长度" - -#: util/grub-mkpasswd-pbkdf2.c:48 -msgid "Length of salt" -msgstr "ç›çš„长度" - -#: util/grub-mkpasswd-pbkdf2.c:87 -msgid "Generate PBKDF2 password hash." -msgstr "ç”Ÿæˆ PBKDF2 密ç å“ˆå¸Œã€‚" - -#: util/grub-mkpasswd-pbkdf2.c:144 util/grub-mkpasswd-pbkdf2.c:151 -msgid "failure to read password" -msgstr "读å–密ç å¤±è´¥" - -#: util/grub-mkpasswd-pbkdf2.c:146 -msgid "Reenter password: " -msgstr "釿–°è¾“å…¥å£ä»¤ï¼š" - -#: util/grub-mkpasswd-pbkdf2.c:160 -msgid "passwords don't match" -msgstr "密ç ä¸åŒ¹é…" - -#: util/grub-mkpasswd-pbkdf2.c:169 -msgid "couldn't retrieve random data for salt" -msgstr "无法为ç›èŽ·å–éšæœºæ•°æ®" - -#: util/grub-mkpasswd-pbkdf2.c:184 -#, c-format -msgid "cryptographic error number %d" -msgstr "åŠ å¯†é”™è¯¯ç¼–å· %d" - -#: util/grub-mkpasswd-pbkdf2.c:203 -#, c-format -msgid "PBKDF2 hash of your password is %s\n" -msgstr "您的密ç çš„ PBKDF2 散列为 %s\n" - -#: util/grub-mkrelpath.c:67 -msgid "No path is specified.\n" -msgstr "没有指定路径。\n" - -#: util/grub-mkrelpath.c:78 -#, fuzzy -msgid "PATH" -msgstr "ls PATH" - -#: util/grub-mkrelpath.c:79 -msgid "Transform a system filename into GRUB one." -msgstr "" - -#: util/grub-mkrescue.c:100 -msgid "save ROM images in DIR [optional]" -msgstr "" - -#. TRANSLATORS: xorriso is a program for creating ISOs and burning CDs. -#: util/grub-mkrescue.c:103 -msgid "use FILE as xorriso [optional]" -msgstr "使用指定文件作为 xorriso [å¯é€‰]。" - -#: util/grub-mkrescue.c:109 -msgid "use STRING as product name" -msgstr "" - -#: util/grub-mkrescue.c:111 -msgid "" -"enable sparc boot. Disables HFS+, APM, ARCS and boot as disk image for i386-" -"pc" -msgstr "" - -#: util/grub-mkrescue.c:112 -msgid "" -"enable ARCS (big-endian mips machines, mostly SGI) boot. Disables HFS+, APM, " -"sparc64 and boot as disk image for i386-pc" -msgstr "" - -#. TRANSLATORS: it generates one single image which is bootable through any method. -#: util/grub-mkrescue.c:125 -msgid "Make GRUB CD-ROM, disk, pendrive and floppy bootable image." -msgstr "" - -#: util/grub-mkrescue.c:130 -#, c-format -msgid "" -"Generates a bootable CD/USB/floppy image. Arguments other than options to " -"this program are passed to xorriso, and indicate source files, source " -"directories, or any of the mkisofs options listed by the output of `%s'." -msgstr "" - -#: util/grub-mkrescue.c:134 -msgid "Option -- switches to native xorriso command mode." -msgstr "选项 -- 切æ¢è‡³åŽŸç”Ÿ xorriso 命令模å¼ã€‚" - -#: util/grub-mkrescue.c:135 -msgid "Mail xorriso support requests to ." -msgstr "请将 xorriso 的支æŒè¯·æ±‚å‘é€è‡³ 。" - -#: util/grub-mkrescue.c:221 util/grub-mkstandalone.c:114 -#, fuzzy -msgid "[OPTION] SOURCE..." -msgstr "[选项...]" - -#: util/grub-mkrescue.c:257 util/grub-mkrescue.c:300 util/grub-mkrescue.c:588 -#, c-format -msgid "enabling %s support ..." -msgstr "正在å¯ç”¨ %s æ”¯æŒ ..." - -#: util/grub-mkrescue.c:486 -msgid "xorriso not found" -msgstr "xorriso 未找到" - -#: util/grub-mkrescue.c:623 -msgid "" -"Your xorriso doesn't support `--grub2-boot-info'. Some features are " -"disabled. Please use xorriso 1.2.9 or later." -msgstr "" -"您的 xorriso 䏿”¯æŒâ€œ--grub2-boot-infoâ€ã€‚æŸäº›åŠŸèƒ½å·²ç¦ç”¨ã€‚请使用 xorriso 1.2.9 " -"或更新版本。" - -#: util/grub-mkrescue.c:650 -msgid "" -"Your xorriso doesn't support `--grub2-boot-info'. Your core image is too " -"big. Boot as disk is disabled. Please use xorriso 1.2.9 or later." -msgstr "" -"您的 xorriso 䏿”¯æŒâ€œ--grub2-boot-infoâ€ã€‚您的核心镜åƒè¿‡å¤§ã€‚以ç£ç›˜å¯åŠ¨çš„åŠŸèƒ½å·²" -"ç¦ç”¨ã€‚请使用 xorriso 1.2.9 或更新版本。" - -#: util/grub-mkstandalone.c:115 -msgid "" -"Generate a standalone image (containing all modules) in the selected format" -msgstr "以所选格å¼ç”Ÿæˆä¸€ä¸ªç‹¬ç«‹é•œåƒï¼ˆåŒ…å«å…¨éƒ¨æ¨¡å—)" - -#: util/grub-mkstandalone.c:115 -msgid "Graft point syntax (E.g. /boot/grub/grub.cfg=./grub.cfg) is accepted" -msgstr "" - -#: util/grub-mount.c:552 -msgid "IMAGE1 [IMAGE2 ...] MOUNTPOINT" -msgstr "镜åƒ1 [镜åƒ2 ...] 挂载点" - -#: util/grub-mount.c:575 -msgid "need an image and mountpoint" -msgstr "需è¦ä¸€ä¸ªé•œåƒå’ŒæŒ‚载点" - -#: util/grub-probe.c:731 -msgid "given argument is a system device, not a path" -msgstr "æ‰€ç»™çš„å‚æ•°æ˜¯ä¸€ä¸ªç³»ç»Ÿè®¾å¤‡ï¼Œä¸æ˜¯è·¯å¾„" - -#: util/grub-probe.c:736 -msgid "separate items in output using ASCII NUL characters" -msgstr "使用 ASCII NUL 空字符分隔输出中的å„项" - -#: util/grub-probe.c:754 -#, c-format -msgid "[default=%s]" -msgstr "[默认=%s]" - -#: util/grub-probe.c:756 -msgid "print TARGET" -msgstr "" - -#: util/grub-probe.c:757 -msgid "available targets:" -msgstr "å¯ç”¨ç›®æ ‡ï¼š" - -#: util/grub-probe.c:839 -msgid "[OPTION]... [PATH|DEVICE]" -msgstr "[选项]... [路径|设备]" - -#: util/grub-probe.c:840 -msgid "" -"Probe device information for a given path (or device, if the -d option is " -"given)." -msgstr "" - -#: util/grub-render-label.c:60 -msgid "read text from FILE." -msgstr "ä»ŽæŒ‡å®šæ–‡ä»¶è¯»å–æ–‡æœ¬ã€‚" - -#: util/grub-render-label.c:62 -msgid "use COLOR for text" -msgstr "为字体使用指定颜色" - -#: util/grub-render-label.c:64 -msgid "use COLOR for background" -msgstr "为背景使用指定颜色" - -#. TRANSLATORS: The result is always stored to file and -#. never shown directly, so don't use "show" as synonym for render. Use "create" if -#. "render" doesn't translate directly. -#: util/grub-render-label.c:69 -msgid "set the label to render" -msgstr "" - -#: util/grub-render-label.c:73 -msgid "use FILE as font (PF2)." -msgstr "使用指定文件作为字体(PF2)。" - -#. TRANSLATORS: This file takes a text and creates a graphical representation of it, -#. putting the result into .disk_label file. The result is always stored to file and -#. never shown directly, so don't use "show" as synonym for render. Use "create" if -#. "render" doesn't translate directly. -#: util/grub-render-label.c:136 -msgid "Render Apple .disk_label." -msgstr "" - -#: util/grub-render-label.c:158 util/grub-syslinux2cfg.c:169 -msgid "Missing arguments\n" -msgstr "ç¼ºå°‘å‚æ•°\n" - -#: util/grub-script-check.c:87 -#, fuzzy -msgid "[PATH]" -msgstr "ls PATH" - -#: util/grub-script-check.c:88 -msgid "Checks GRUB script configuration file for syntax errors." -msgstr "检查 GRUB 脚本é…置文件中的语法错误。" - -#: util/grub-script-check.c:207 -#, c-format -msgid "Syntax error at line %u\n" -msgstr "%u 行存在语法错误\n" - -#: util/grub-script-check.c:212 -#, c-format -msgid "Script `%s' contains no commands and will do nothing\n" -msgstr "脚本“%sâ€æ²¡æœ‰åŒ…å«ä»»ä½•命令,什么都ä¸åš\n" - -#: util/grub-setup.c:79 -#, c-format -msgid "use FILE as the boot image [default=%s]" -msgstr "ä½¿ç”¨æŒ‡å®šæ–‡ä»¶ä½œä¸ºå¼•å¯¼é•œåƒ [默认=%s]" - -#: util/grub-setup.c:81 -#, c-format -msgid "use FILE as the core image [default=%s]" -msgstr "ä½¿ç”¨æŒ‡å®šæ–‡ä»¶ä½œä¸ºæ ¸å¿ƒé•œåƒ [默认=%s]" - -#: util/grub-setup.c:210 -msgid "No device is specified.\n" -msgstr "没有指定设备。\n" - -#: util/grub-setup.c:224 -msgid "" -"Set up images to boot from DEVICE.\n" -"\n" -"You should not normally run this program directly. Use grub-install instead." -msgstr "" -"设置从指定设备引导所使用的镜åƒã€‚\n" -"\n" -"您通常ä¸åº”直接使用此程åºï¼Œè¯·æ¢ç”¨ grub-install。" - -#: util/grub-setup.c:228 -msgid "DEVICE must be an OS device (e.g. /dev/sda)." -msgstr "指定的设备必须是一个æ“作系统设备(例如 /dev/sda)。" - -#: util/grub-setup.c:297 -#, c-format -msgid "Invalid device `%s'.\n" -msgstr "无效的设备“%sâ€ã€‚\n" - -#: util/grub-syslinux2cfg.c:64 -msgid "root directory as it will be seen on runtime [default=/]." -msgstr "è¿è¡Œæ—¶å°†ä½¿ç”¨çš„æ ¹ç›®å½• [默认=/]。" - -#: util/grub-syslinux2cfg.c:69 -msgid "" -"current directory of syslinux as it will be seen on runtime [default is " -"parent directory of input file]." -msgstr "" - -#: util/grub-syslinux2cfg.c:74 -msgid "write output to FILE [default=stdout]." -msgstr "将输出写入指定文件 [默认=stdout]" - -#: util/grub-syslinux2cfg.c:148 -msgid "Transform syslinux config into GRUB one." -msgstr "å°† syslinux é…置转æ¢ä¸º GRUB é…置。" - -#: util/mkimage.c:688 util/mkimage.c:717 util/mkimage.c:734 -msgid "cannot compress the kernel image" -msgstr "无法压缩内核镜åƒ" - -#: util/mkimage.c:766 util/mkimage.c:1077 -#, c-format -msgid "unknown compression %d" -msgstr "未知压缩 %d" - -#: util/mkimage.c:1088 -msgid "Decompressor is too big" -msgstr "解压器过大" - -#: util/mkimage.c:1133 -#, c-format -msgid "core image is too big (0x%x > 0x%x)" -msgstr "核心镜åƒè¿‡å¤§ï¼ˆ0x%x > 0x%x)" - -#: util/mkimage.c:1140 -#, c-format -msgid "kernel image is too big (0x%x > 0x%x)" -msgstr "内核镜åƒè¿‡å¤§ï¼ˆ0x%x > 0x%x)" - -#: util/mkimage.c:1220 util/mkimage.c:1501 -#, c-format -msgid "diskboot.img size must be %u bytes" -msgstr "diskboot.img 的大å°å¿…须为 %u 字节" - -#: util/mkimage.c:1571 -msgid "" -"fwstart.img doesn't match the known good version. proceed at your own risk" -msgstr "fwstart.img 和已知正常工作的版本ä¸åŒ¹é…。继续æ“ä½œéœ€è¦æ‚¨è‡ªè¡Œæ‰¿æ‹…风险" - -#: util/mkimage.c:1575 util/mkimage.c:1601 -msgid "firmware image is too big" -msgstr "固件镜åƒè¿‡å¤§" - -#: util/resolve.c:93 -#, c-format -msgid "invalid line format: %s" -msgstr "无效的行格å¼ï¼š%s" - -#: util/setup.c:167 -msgid "the first sector of the core file is not sector-aligned" -msgstr "核心文件的第一扇区未对é½" - -#: util/setup.c:177 -msgid "non-sector-aligned data is found in the core file" -msgstr "核心文件中å‘现未对é½çš„æ‰‡åŒº" - -#: util/setup.c:199 -msgid "the sectors of the core file are too fragmented" -msgstr "核心文件的扇区碎片太多" - -#: util/setup.c:280 -#, c-format -msgid "the size of `%s' is not %u" -msgstr "“%sâ€çš„大å°ä¸æ˜¯ %u" - -#: util/setup.c:290 -#, c-format -msgid "the size of `%s' is too small" -msgstr "“%sâ€çš„尺寸太å°" - -#: util/setup.c:428 -msgid "" -"Attempting to install GRUB to a disk with multiple partition labels or both " -"partition label and filesystem. This is not supported yet." -msgstr "" -"正在试图将 GRUB 安装至有多个分区标签的ç£ç›˜ï¼Œæˆ–åŒæ—¶æœ‰åˆ†åŒºæ ‡ç­¾å’Œæ–‡ä»¶ç³»ç»Ÿçš„ç£" -"盘。这样的æ“作尚未被支æŒã€‚" - -#: util/setup.c:441 -#, c-format -msgid "unable to identify a filesystem in %s; safety check can't be performed" -msgstr "无法在 %s 中识别文件系统,无法执行安全性检测" - -#. TRANSLATORS: Filesystem may reserve the space just GRUB isn't sure about it. -#: util/setup.c:445 -#, c-format -msgid "" -"%s appears to contain a %s filesystem which isn't known to reserve space for " -"DOS-style boot. Installing GRUB there could result in FILESYSTEM " -"DESTRUCTION if valuable data is overwritten by grub-setup (--skip-fs-probe " -"disables this check, use at your own risk)" -msgstr "" -"%s 中似乎包å«ä¸€ä¸ªä¸ä¸º DOS 引导ä¿ç•™ç©ºé—´çš„ %s 文件系统。在此处安装 GRUB å¯èƒ½å¯¼" -"致 grub-setup 覆盖é‡è¦æ•°æ®ä»Žè€ŒæŸå文件系统(--skip-fs-probe 傿•°å¯ä»¥ç¦ç”¨è¿™ä¸ªæ£€" -"查,使用该选项风险自负)" - -#. TRANSLATORS: Partition map may reserve the space just GRUB isn't sure about it. -#: util/setup.c:458 -#, c-format -msgid "" -"%s appears to contain a %s partition map which isn't known to reserve space " -"for DOS-style boot. Installing GRUB there could result in FILESYSTEM " -"DESTRUCTION if valuable data is overwritten by grub-setup (--skip-fs-probe " -"disables this check, use at your own risk)" -msgstr "" -"%s 中似乎包å«ä¸€ä¸ªä¸ä¸º DOS 引导ä¿ç•™ç©ºé—´çš„ %s 分区。在此处安装 GRUB å¯èƒ½å¯¼è‡´ " -"grub-setup 覆盖é‡è¦æ•°æ®ä»Žè€ŒæŸå文件系统(--skip-fs-probe 傿•°å¯ä»¥ç¦ç”¨è¿™ä¸ªæ£€" -"查,使用该选项风险自负)" - -#: util/setup.c:465 -#, fuzzy, c-format -msgid "" -"%s appears to contain a %s partition map and LDM which isn't known to be a " -"safe combination. Installing GRUB there could result in FILESYSTEM " -"DESTRUCTION if valuable data is overwritten by grub-setup (--skip-fs-probe " -"disables this check, use at your own risk)" -msgstr "" -"%s 中似乎包å«ä¸€ä¸ªä¸ä¸º DOS 引导ä¿ç•™ç©ºé—´çš„ %s 分区。在此处安装 GRUB å¯èƒ½å¯¼è‡´ " -"grub-setup 覆盖é‡è¦æ•°æ®ä»Žè€ŒæŸå文件系统(--skip-fs-probe 傿•°å¯ä»¥ç¦ç”¨è¿™ä¸ªæ£€" -"查,使用该选项风险自负)" - -#: util/setup.c:478 -msgid "" -"Attempting to install GRUB to a partitionless disk or to a partition. This " -"is a BAD idea." -msgstr "正在试图将 GRUB 安装至未分区的ç£ç›˜æˆ–一个分区。这是一个å主æ„。" - -#: util/setup.c:483 -msgid "" -"Attempting to install GRUB to a disk with multiple partition labels. This " -"is not supported yet." -msgstr "正在试图将 GRUB 安装至有多个分区标签的ç£ç›˜ã€‚这样的æ“作尚未被支æŒã€‚" - -#: util/setup.c:489 -#, c-format -msgid "Partition style `%s' doesn't support embedding" -msgstr "“%sâ€åˆ†åŒºæ ·å¼ä¸æ”¯æŒåµŒå…¥" - -#: util/setup.c:496 -#, c-format -msgid "File system `%s' doesn't support embedding" -msgstr "文件系统“%sâ€ä¸æ”¯æŒåµŒå…¥" - -#: util/setup.c:537 -msgid "Your embedding area is unusually small. core.img won't fit in it." -msgstr "您的嵌入区域过å°ï¼Œæ— æ³•装入 core.img。" - -#: util/setup.c:559 util/setup.c:725 util/setup.c:844 -msgid "no terminator in the core image" -msgstr "核心镜åƒä¸­æ²¡æœ‰ç»ˆæ­¢ç¬¦" - -#: util/setup.c:622 -msgid "core.img version mismatch" -msgstr "core.img 版本ä¸åŒ¹é…" - -#: util/setup.c:675 -msgid "" -"embedding is not possible, but this is required for RAID and LVM install" -msgstr "无法嵌入,但这在 RAID å’Œ 安装时是必须的" - -#: util/setup.c:682 -#, c-format -msgid "can't determine filesystem on %s" -msgstr "无法确定 %s 上的文件系统" - -#: util/setup.c:685 -#, c-format -msgid "filesystem `%s' doesn't support blocklists" -msgstr "文件系统“%sâ€ä¸æ”¯æŒå—列表" - -#. TRANSLATORS: cross-disk refers to /boot being on one disk -#. but MBR on another. -#: util/setup.c:694 -msgid "embedding is not possible, but this is required for cross-disk install" -msgstr "无法嵌入,但在跨盘安装时是必须的" - -#: util/setup.c:700 -msgid "" -"Embedding is not possible. GRUB can only be installed in this setup by " -"using blocklists. However, blocklists are UNRELIABLE and their use is " -"discouraged." -msgstr "" -"无法嵌入。在此次安装中 GRUB åªèƒ½é€šè¿‡ä½¿ç”¨å—列表安装。但是å—列表是ä¸å¯ä¿¡èµ–的," -"䏿ލè使用。" - -#. TRANSLATORS: Here GRUB refuses to continue with blocklist install. -#: util/setup.c:705 -msgid "will not proceed with blocklists" -msgstr "åœæ­¢è¿›è¡Œå—列表安装" - -#: util/setup.c:817 util/setup.c:837 -msgid "blocklists are invalid" -msgstr "å—列表无效" - -#: util/setup.c:847 -msgid "blocklists are incomplete" -msgstr "å—列表ä¸å®Œæ•´" - -#~ msgid "%s: option '--%s' doesn't allow an argument\n" -#~ msgstr "%s:选项“--%sâ€ä¸å…è®¸æœ‰å‚æ•°\n" - -#~ msgid "%s: unrecognized option '--%s'\n" -#~ msgstr "%s:无法识别的选项“--%sâ€\n" - -#~ msgid "%s: option '-W %s' doesn't allow an argument\n" -#~ msgstr "%s:选项“-W %sâ€ä¸å…è®¸æœ‰å‚æ•°\n" - -#~ msgid "%s: option '-W %s' requires an argument\n" -#~ msgstr "%s:选项“-W %sâ€éœ€è¦ä¸€ä¸ªå‚æ•°\n" - -#, fuzzy -#~| msgid "Load a keyboard layout." -#~ msgid "Make GRUB keyboard layout file." -#~ msgstr "载入一个键盘布局。" - -#~ msgid "print this message and exit" -#~ msgstr "输出本信æ¯å¹¶é€€å‡ºã€‚" - -#~ msgid "print the version information and exit" -#~ msgstr "输出版本信æ¯å¹¶é€€å‡º" - -#~ msgid "Report bugs to ." -#~ msgstr "请将问题与缺陷报告至 。" - -#~ msgid "%s: option requires an argument -- `%s'\\n" -#~ msgstr "%s:选项需è¦ä¸€ä¸ªå‚æ•° --“%sâ€\\n" - -#~ msgid "Usage: %s [OPTION]\\n" -#~ msgstr "用法:%s [选项]\\n" - -#~ msgid "Generate a grub config file" -#~ msgstr "生æˆä¸€ä¸ª grub é…置文件" - -#~ msgid "output generated config to FILE [default=stdout]" -#~ msgstr "将生æˆçš„é…置输出到指定文件 [默认=stdout]" - -#~ msgid "Unrecognized option `%s'\\n" -#~ msgstr "无法识别的选项“%sâ€\\n" - -#~ msgid "%s: You must run this as root\\n" -#~ msgstr "%s:您必须以 root 身份è¿è¡Œè¯¥ç¨‹åº\\n" - -#~ msgid "%s: Not found.\\n" -#~ msgstr "%s:未找到。\\n" - -#~ msgid "Generating grub configuration file ..." -#~ msgstr "æ­£åœ¨ç”Ÿæˆ grub é…置文件 ..." - -#~ msgid "done" -#~ msgstr "完æˆ" - -#~ msgid "Warning:" -#~ msgstr "警告:" - -#~ msgid "Set the default boot menu entry for GRUB, for the next boot only." -#~ msgstr "设置 GRUB 默认引导èœå•项(仅对下一次å¯åŠ¨æœ‰æ•ˆï¼‰" - -#~ msgid "More than one menu entry?" -#~ msgstr "多于一个èœå•项?" - -#~ msgid "Menu entry not specified." -#~ msgstr "未指定èœå•项。" - -#~ msgid "Set the default boot menu entry for GRUB." -#~ msgstr "设置 GRUB 默认引导èœå•项。" - -#~ msgid "Found theme: %s\\n" -#~ msgstr "找到主题:%s\\n" - -#~ msgid "Found background: %s\\n" -#~ msgstr "找到背景:%s\\n" - -#~ msgid "Unsupported image format" -#~ msgstr "䏿”¯æŒçš„å›¾åƒæ ¼å¼" - -#~ msgid "Found GNU Mach: %s" -#~ msgstr "找到 GNU Mach:%s" - -#~ msgid "Found Hurd module: %s" -#~ msgstr "找到 Hurd 模å—:%s" - -#~ msgid "Some Hurd stuff found, but not enough to boot." -#~ msgstr "找到æŸäº› Hurd 内容,但ä¸è¶³ä»¥è¿›è¡Œå¯åŠ¨ã€‚" - -#~ msgid "%s, with Hurd %s (recovery mode)" -#~ msgstr "%s,Hurd %s(æ¢å¤æ¨¡å¼ï¼‰" - -#~ msgid "%s, with Hurd %s" -#~ msgstr "%s,Hurd %s" - -#~ msgid "Loading GNU Mach ..." -#~ msgstr "载入 GNU Mach ..." - -#~ msgid "Loading the Hurd ..." -#~ msgstr "载入 Hurd ..." - -#~ msgid "Advanced options for %s" -#~ msgstr "%s 的高级选项" - -#~ msgid "Loading kernel of Illumos ..." -#~ msgstr "载入 Illumos 内核 ..." - -#~ msgid "%s, with kFreeBSD %s (recovery mode)" -#~ msgstr "%s,kFreeBSd %s (æ¢å¤æ¨¡å¼)" - -#~ msgid "%s, with kFreeBSD %s" -#~ msgstr "%s,kFreeBSD %s" - -#~ msgid "Loading kernel of FreeBSD %s ..." -#~ msgstr "载入 FreeBSD 内核 %s ..." - -#~ msgid "Found kernel of FreeBSD: %s\\n" -#~ msgstr "找到 FreeBSD 内核:%s\\n" - -#~ msgid "Found kernel module directory: %s\\n" -#~ msgstr "找到内核模å—目录:%s\\n" - -#~ msgid "%s, with Linux %s (recovery mode)" -#~ msgstr "%s,Linux %s (æ¢å¤æ¨¡å¼)" - -#~ msgid "%s, with Linux %s" -#~ msgstr "%s,Linux %s" - -#~ msgid "Loading Linux %s ..." -#~ msgstr "载入 Linux %s ..." - -#~ msgid "Loading initial ramdisk ..." -#~ msgstr "载入åˆå§‹åŒ–内存盘..." - -#~ msgid "Found linux image: %s\\n" -#~ msgstr "找到 Linux 镜åƒï¼š%s\\n" - -#~ msgid "Found initrd image: %s\\n" -#~ msgstr "找到 initrd 镜åƒï¼š%s\\n" - -#~ msgid "%s, with kernel %s (via %s, recovery mode)" -#~ msgstr "%s,%s 内核(通过 %s,æ¢å¤æ¨¡å¼)" - -#~ msgid "%s, with kernel %s (via %s)" -#~ msgstr "%s,%s 内核(通过 %s)" - -#~ msgid "Found NetBSD kernel: %s\\n" -#~ msgstr "找到 NetBSD 内核:%s\\n" - -#~ msgid "Windows Vista/7 (loader)" -#~ msgstr "Windows Vista/7(加载器)" - -#~ msgid "Windows NT/2000/XP (loader)" -#~ msgstr "Windows NT/2000/XP(加载器)" - -#~ msgid "Found %s on %s (%s)\\n" -#~ msgstr "å‘现 %s 在 %s (%s)\\n" - -#~ msgid "(32-bit)" -#~ msgstr "(32ä½ï¼‰" - -#~ msgid "(64-bit)" -#~ msgstr "(64ä½ï¼‰" - -#~ msgid "(on %s)" -#~ msgstr "(在 %s)" - -#~ msgid "%s, with Xen %s and Linux %s (recovery mode)" -#~ msgstr "%s,Xen %s å’Œ Linux %s (æ¢å¤æ¨¡å¼)" - -#~ msgid "%s, with Xen %s and Linux %s" -#~ msgstr "%s,Xen %s å’Œ Linux %s" - -#, fuzzy -#~| msgid "%s, with Linux %s" -#~ msgid "%s, with Xen hypervisor" -#~ msgstr "%s,Linux %s" - -#~ msgid "Loading Xen %s ..." -#~ msgstr "载入 Xen %s ..." - -#~ msgid "Found %s on %s\\n" -#~ msgstr "找到 %s ä½äºŽ %s\\n" - -#~ msgid "%s is not yet supported by grub-mkconfig.\\n" -#~ msgstr "grub-mkconfig å°šæœªæ”¯æŒ %s。\\n" - -#~ msgid "Expose v1 tables." -#~ msgstr "显示 v1 表。" - -#~ msgid "Fake BIOS." -#~ msgstr "BIOS 伪装。" - -#~ msgid "Check hash list file." -#~ msgstr "检查哈希列表文件。" - -#~ msgid "DIRECTORY" -#~ msgstr "目录" - -#~ msgid "Unload PXE environment." -#~ msgstr "å¸è½½ PXE 环境。" - -#~ msgid "Read word from PORT." -#~ msgstr "从指定端å£è¯»å–字。" - -#~ msgid "Read dword from PORT." -#~ msgstr "从指定端å£è¯»å–åŒå­—。" - -#~ msgid "Write word VALUE to PORT." -#~ msgstr "呿Œ‡å®šç«¯å£å†™å…¥å­—类型值。" - -#~ msgid "Write dword VALUE to PORT." -#~ msgstr "呿Œ‡å®šç«¯å£å†™å…¥ dword 类型值。" - -#~ msgid "[--shift] [--ctrl] [--alt]" -#~ msgstr "[--shift] [--ctrl] [--alt]" - -#~ msgid "[-1|-2]" -#~ msgstr "[-1|-2]" - -#~ msgid "Read word from ADDR." -#~ msgstr "从指定地å€è¯»å–字。" - -#~ msgid "Read dword from ADDR." -#~ msgstr "从指定地å€è¯»å–åŒå­—。" - -#~ msgid "Write word VALUE to ADDR." -#~ msgstr "呿Œ‡å®šåœ°å€å†™å…¥ word 类型值。" - -#~ msgid "Write dword VALUE to ADDR." -#~ msgstr "呿Œ‡å®šåœ°å€å†™å…¥ dword 类型值。" - -#~ msgid "Menu entry definition as a string." -#~ msgstr "以字符串定义的èœå•项。" - -#~ msgid "[DEVICE]" -#~ msgstr "[设备]" - -#~ msgid "Load XNU hibernate image." -#~ msgstr "载入休眠镜åƒã€‚" - -#~ msgid "Authenticate users" -#~ msgstr "认è¯ç”¨æˆ·" - -#~ msgid "[n]" -#~ msgstr "[n]" - -#~ msgid "UTF-8 visual" -#~ msgstr "UTF-8 å¯è§†" - -#~ msgid "If FILENAME is '-', the default value %s is used." -#~ msgstr "å¦‚æžœæ–‡ä»¶åæ˜¯ -,则使用默认值 %s。" - -#~ msgid "write error" -#~ msgstr "写入出错" - -#~ msgid "open error" -#~ msgstr "打开出错" - -#~ msgid "seek error" -#~ msgstr "寻é“错误" - -#~ msgid "Hex dump FILE." -#~ msgstr "使用 16 进制转储指定的文件。" - -#~ msgid "Must use absolute path.\n" -#~ msgstr "必须使用ç»å¯¹è·¯å¾„。\n" - -#~ msgid "the core image is too small" -#~ msgstr "核心镜åƒå¤ªå°" - -#~ msgid "prefix is too long" -#~ msgstr "å‰ç¼€å¤ªé•¿" - -#~ msgid "" -#~ "Usage: %s [OPTION]... [MODULES]\n" -#~ "\n" -#~ "Make a bootable image of GRUB.\n" -#~ "\n" -#~ " -d, --directory=DIR use images and modules under DIR [default=%s/" -#~ "@platform@]\n" -#~ " -p, --prefix=DIR set grub_prefix directory [default=%s]\n" -#~ " -m, --memdisk=FILE embed FILE as a memdisk image\n" -#~ " -c, --config=FILE embed FILE as boot config\n" -#~ " -n, --note add NOTE segment for CHRP Open Firmware\n" -#~ " -o, --output=FILE output a generated image to FILE " -#~ "[default=stdout]\n" -#~ " -O, --format=FORMAT generate an image in format\n" -#~ " available formats: %s\n" -#~ " -C, --compression=(xz|none|auto) choose the compression to use\n" -#~ " -h, --help display this message and exit\n" -#~ " -V, --version print version information and exit\n" -#~ " -v, --verbose print verbose messages\n" -#~ "\n" -#~ "Report bugs to <%s>.\n" -#~ msgstr "" -#~ "用法:%s [选项]... [模å—]\n" -#~ "\n" -#~ "制作一个å¯å¼•导的 GRUB 镜åƒã€‚\n" -#~ " -d, --directory=DIR 使用 DIR 目录下的镜åƒå’Œæ¨¡å— [默认=%s/" -#~ "@platform@]\n" -#~ " -p, --prefix=DIR 设定 grub_prefix 路径 [默认=%s]\n" -#~ " -m, --memdisk=FILE 嵌入 FILE 文件作为内存盘镜åƒ\n" -#~ " -c, --config=FILE 嵌入 FILE 文件作为引导é…ç½®\n" -#~ " -n, --note 为 CHRP 开放固件添加 NOTE 段\n" -#~ " -o, --output=FILE 将生æˆçš„镜åƒå†™å…¥ FILE 文件 [默认=标准输出]\n" -#~ " -O, --format=FORMAT 按照指定格å¼ç”Ÿæˆé•œåƒ\n" -#~ " å¯ç”¨çš„æ ¼å¼æœ‰ï¼š%s\n" -#~ " -C, --compression=(xz|none|auto) 选择è¦ä½¿ç”¨çš„压缩方å¼\n" -#~ " -h, --help 显示此信æ¯å¹¶é€€å‡º\n" -#~ " -V, --version 显示版本信æ¯å¹¶é€€å‡º\n" -#~ " -v, --verbose 显示详细信æ¯\n" -#~ "\n" -#~ "软件错误请报告给 %s\n" - -#~ msgid "cannot open %s" -#~ msgstr "无法打开 %s" - -#~ msgid "" -#~ "embedding is not possible, but this is required when the root device is " -#~ "on a RAID array or LVM volume" -#~ msgstr "无法嵌入,但在根设备ä½äºŽ RAID 阵列或 LVM å·ä¸Šæ—¶å¿…须使用嵌入。" - -#~ msgid "failed to read the first sector of the core image" -#~ msgstr "è¯»å–æ ¸å¿ƒé•œåƒçš„第一扇区失败" - -#~ msgid "DEV" -#~ msgstr "设备" - -#~ msgid "Use DEV as the root device [default=guessed]" -#~ msgstr "使用指定设备作为根设备 [默认=guessed]" - -#~ msgid "cannot guess the root device. Specify the option `--root-device'" -#~ msgstr "无法猜测根设备。请使用“--root-deviceâ€å‚数指定。" - -#~ msgid "[class [handler]]" -#~ msgstr "[ç±» [处ç†ç¨‹åº]]" - -#~ msgid "List compatible VESA BIOS extension video modes." -#~ msgstr "列出兼容的 VESA BIOS 扩展视频模å¼" - -#~ msgid "Test VESA BIOS Extension 2.0+ support." -#~ msgstr "测试 VESA BIOS 扩展 2.0+ 支æŒã€‚" - -#~ msgid "Set the root device." -#~ msgstr "设置根设备。" - -#~ msgid "Simulate a hard drive with partitions." -#~ msgstr "模拟一个带分区的硬盘。" - -#~ msgid "" -#~ "Attempting to install GRUB to a partition instead of the MBR. This is a " -#~ "BAD idea." -#~ msgstr "正在试图将 GRUB å®‰è£…è‡³ä¸€ä¸ªåˆ†åŒºè€Œéž MBR。这是一个å主æ„。" - -#~ msgid "No DOS-style partitions found" -#~ msgstr "未找到 DOS 类型分区" - -#~ msgid "if you really want blocklists, use --force" -#~ msgstr "如果确实è¦ä½¿ç”¨å—列表,请使用 --force 选项" - -#~ msgid "" -#~ "Usage: %s [OPTION]... DEVICE\n" -#~ "\n" -#~ "Set up images to boot from DEVICE.\n" -#~ "DEVICE must be a GRUB device (e.g. `(hd0,1)').\n" -#~ "\n" -#~ " -b, --boot-image=FILE use FILE as the boot image [default=%s]\n" -#~ " -c, --core-image=FILE use FILE as the core image [default=%s]\n" -#~ " -d, --directory=DIR use GRUB files in the directory DIR [default=" -#~ "%s]\n" -#~ " -m, --device-map=FILE use FILE as the device map [default=%s]\n" -#~ " -r, --root-device=DEV use DEV as the root device [default=guessed]\n" -#~ " -f, --force install even if problems are detected\n" -#~ " -s, --skip-fs-probe do not probe for filesystems in DEVICE\n" -#~ " -h, --help display this message and exit\n" -#~ " -V, --version print version information and exit\n" -#~ " -v, --verbose print verbose messages\n" -#~ "\n" -#~ "Report bugs to <%s>.\n" -#~ msgstr "" -#~ "用法:%s [选项]...[设备]\n" -#~ "\n" -#~ "设置从指定设备引导的镜åƒã€‚\n" -#~ "指定的设备必须是 GRUB 设备格å¼(例如“(hd0,1)â€)。\n" -#~ "\n" -#~ " -b, --boot-image=文件 ä½¿ç”¨æŒ‡å®šæ–‡ä»¶ä½œä¸ºå¼•å¯¼é•œåƒ [默认为 %s]\n" -#~ " -c, --core-image=文件 ä½¿ç”¨æŒ‡å®šæ–‡ä»¶ä½œä¸ºæ ¸å¿ƒé•œåƒ [默认为 %s]\n" -#~ " -d, --directory=目录 使用指定目录中的 GRUB 文件 [默认为 %s]\n" -#~ " -m, --device-map=文件 使用指定文件作为设备映射 [默认为 %s]\n" -#~ " -r, --root-device=设备 使用指定设备作为根设备 [默认为 guessed]\n" -#~ " -f, --force 检测到问题的情况下ä»å¼ºåˆ¶å®‰è£…\n" -#~ " -s, --skip-fs-probe ä¸åœ¨è®¾å¤‡ä¸­æŽ¢æµ‹æ–‡ä»¶ç³»ç»Ÿ\n" -#~ " -h, --help 显示此信æ¯å¹¶ä¸”退出\n" -#~ " -V, --version 显示版本信æ¯å¹¶ä¸”退出\n" -#~ " -v, --verbose 显示详细信æ¯\n" -#~ "\n" -#~ "软件错误请报告给 %s\n" - -#~ msgid "A boot catalog exists and appears corrupted.\n" -#~ msgstr "引导目录存在且似乎已æŸå。\n" - -#~ msgid "Please check the following file: %s.\n" -#~ msgstr "请检查以下文件:%s。\n" - -#~ msgid "This file must be removed before a bootable CD can be done.\n" -#~ msgstr "必须在å¯å¼•导 CD 完æˆä¹‹å‰åˆ é™¤æ­¤æ–‡ä»¶ã€‚\n" - -#~ msgid "Error creating boot catalog (%s)" -#~ msgstr "创建引导目录时出错(%s)" - -#~ msgid "Error writing to boot catalog (%s)" -#~ msgstr "写入引导目录时出错(%s)" - -#~ msgid "Boot catalog cannot be found!\n" -#~ msgstr "无法找到引导目录ï¼\n" - -#~ msgid "Boot image cannot be found!\n" -#~ msgstr "无法找到引导镜åƒï¼\n" - -#~ msgid "" -#~ "\n" -#~ "Size of boot image is %d sectors" -#~ msgstr "" -#~ "\n" -#~ "引导镜åƒçš„大å°ä¸º %d 个扇区" - -#~ msgid "No emulation\n" -#~ msgstr "无模拟\n" - -#~ msgid "Emulating a 1.44 meg floppy\n" -#~ msgstr "模拟 1.44MB 软盘\n" - -#~ msgid "Emulating a 2.88 meg floppy\n" -#~ msgstr "模拟 2.88MB 软盘\n" - -#~ msgid "Emulating a 1.2 meg floppy\n" -#~ msgstr "模拟 1.2MB 软盘\n" - -#~ msgid "" -#~ "\n" -#~ "Error - boot image is not the an allowable size.\n" -#~ msgstr "" -#~ "\n" -#~ "错误 - 引导镜åƒå¤§å°ä¸è¢«å…许。\n" - -#~ msgid "Error opening boot catalog for update" -#~ msgstr "无法打开引导目录进行更新" - -#~ msgid "Error writing to boot catalog" -#~ msgstr "写入到引导目录时出错" - -#~ msgid "Error opening boot image file '%s' for update" -#~ msgstr "æ— æ³•æ‰“å¼€å¼•å¯¼é•œåƒæ–‡ä»¶â€œ%sâ€è¿›è¡Œæ›´æ–°" - -#~ msgid "Odd alignment at non-end-of-file in boot image '%s'" -#~ msgstr "引导镜åƒâ€œ%sâ€åœ¨éžæ–‡ä»¶ç»“æŸä½ç½®ä¸Šå­˜åœ¨é”™è¯¯çš„对é½ã€‚" - -#~ msgid "Boot image file '%s' changed unexpectedly" -#~ msgstr "å¼•å¯¼é•œåƒæ–‡ä»¶â€œ%sâ€æ„外改å˜" - -#~ msgid "Error writing to boot image (%s)" -#~ msgstr "写入到引导镜åƒå‡ºé”™(%s)" - -#~ msgid "Unable to generate sane path tables - too many directories (%d)\n" -#~ msgstr "无法生æˆåˆç†çš„路径表 - 目录过多(%d)\n" - -#~ msgid "Entry %d not in path tables\n" -#~ msgstr "æ¡ç›® %d ä¸åœ¨è·¯å¾„表中\n" - -#~ msgid "Fatal goof - directory has amnesia\n" -#~ msgstr "致命错误 - 目录失忆\n" - -#~ msgid "Joliet path table lengths do not match %d %d\n" -#~ msgstr "Joliet 路径表长度ä¸åŒ¹é… %d %d\n" - -#~ msgid "Unable to locate relocated directory\n" -#~ msgstr "无法找到é‡å®šä½çš„目录\n" - -#~ msgid "Fatal goof - unable to find directory location\n" -#~ msgstr "致命错误 - 无法找到目录ä½ç½®\n" - -#~ msgid "Unexpected joliet directory length %d %d %s\n" -#~ msgstr "未预料的 Joliet 目录长度 %d %d %s\n" - -#~ msgid "Process all files (don't skip backup files)" -#~ msgstr "处ç†å…¨éƒ¨æ–‡ä»¶(包括备份文件)" - -#~ msgid "Set Application ID" -#~ msgstr "设置应用 ID" - -#~ msgid "Set Bibliographic filename" -#~ msgstr "设置å‚è€ƒä¿¡æ¯æ–‡ä»¶å" - -#~ msgid "Set Copyright filename" -#~ msgstr "è®¾ç½®ç‰ˆæƒæ–‡ä»¶å" - -#~ msgid "Set embedded boot image name" -#~ msgstr "设置嵌入å¼å¯åŠ¨é•œåƒåç§°" - -#~ msgid "Patch a protective DOS-style label in the image" -#~ msgstr "在镜åƒä¸­è¡¥å……ä¿æŠ¤æ€§çš„ DOS 类型标签" - -#~ msgid "Set El Torito boot image name" -#~ msgstr "设置 El Torito 引导镜åƒåç§°" - -#~ msgid "Set El Torito boot catalog name" -#~ msgstr "设置 El Torito 引导目录åç§°" - -#~ msgid "Patch Boot Info Table in El Torito boot image" -#~ msgstr "在 El Torito 引导镜åƒä¸­è¡¥å……引导信æ¯è¡¨" - -#~ msgid "Dummy option for backward compatibility" -#~ msgstr "为与过去兼容设计的过渡选项" - -#~ msgid "Enable floppy drive emulation for El Torito" -#~ msgstr "为 El Torito å¯ç”¨è½¯é©±æ¨¡æ‹Ÿ" - -#~ msgid "Magic parameters from cdrecord" -#~ msgstr "cdrecord 使用的 magic 傿•°" - -#~ msgid "Omit trailing periods from filenames" -#~ msgstr "忽略文件å尾部的å¥å·" - -#~ msgid "Disable deep directory relocation" -#~ msgstr "ç¦ç”¨æ·±åº¦ç›®å½•é‡å®šä½" - -#~ msgid "Follow symbolic links" -#~ msgstr "è·Ÿéšç¬¦å·é“¾æŽ¥" - -#~ msgid "Print option help" -#~ msgstr "输出选项帮助信æ¯" - -#~ msgid "GLOBFILE" -#~ msgstr "GLOBFILE" - -#~ msgid "Hide ISO9660/RR file" -#~ msgstr "éšè— ISO9660/RR 文件" - -#~ msgid "Hide Joliet file" -#~ msgstr "éšè— Joliet 文件" - -#~ msgid "ADD_FILES" -#~ msgstr "ADD_FILES" - -#~ msgid "No longer supported" -#~ msgstr "ä¸å†æ”¯æŒ" - -#~ msgid "Generate Joliet directory information" -#~ msgstr "ç”Ÿæˆ Joliet 目录信æ¯" - -#~ msgid "Allow full 32 character filenames for iso9660 names" -#~ msgstr "å…许 ISO9660 文件åå®Œæ•´åŒ…å« 32 个字符" - -#~ msgid "Allow iso9660 filenames to start with '.'" -#~ msgstr "å…许 ISO9660 文件å以“.â€å¼€å¤´" - -#~ msgid "LOG_FILE" -#~ msgstr "LOG_FILE" - -#~ msgid "Re-direct messages to LOG_FILE" -#~ msgstr "é‡å®šå‘所有信æ¯åˆ° LOG_FILE" - -#~ msgid "Exclude file name" -#~ msgstr "排除文件å" - -#~ msgid "Set path to previous session to merge" -#~ msgstr "设置上一会è¯çš„路径以便åˆå¹¶" - -#~ msgid "Omit version number from iso9660 filename" -#~ msgstr "从 ISO9660 文件å中忽略版本å·" - -#~ msgid "Inhibit splitting symlink components" -#~ msgstr "ç¦æ­¢åˆ†å‰²ç¬¦å·é“¾æŽ¥ç»„ä»¶" - -#~ msgid "Inhibit splitting symlink fields" -#~ msgstr "ç¦æ­¢åˆ†å‰²ç¬¦å·é“¾æŽ¥åŸŸ" - -#~ msgid "PREP" -#~ msgstr "PREP" - -#~ msgid "Set Volume preparer" -#~ msgstr "设置å·ç¼–制者" - -#~ msgid "Print estimated filesystem size and exit" -#~ msgstr "输出文件系统估计尺寸并退出" - -#~ msgid "Set Volume publisher" -#~ msgstr "设置å·å‘行者" - -#~ msgid "Run quietly" -#~ msgstr "é™é»˜æ‰§è¡Œ" - -#~ msgid "Generate rationalized Rock Ridge directory information" -#~ msgstr "生æˆåˆç†åŒ–çš„ Rock Ridge 目录信æ¯" - -#~ msgid "Generate Rock Ridge directory information" -#~ msgstr "ç”Ÿæˆ Rock Ridge 目录信æ¯" - -#~ msgid "Split output into files of approx. 1GB size" -#~ msgstr "将输出分割为 1GB 大å°çš„æ–‡ä»¶" - -#~ msgid "Set System ID" -#~ msgstr "设置系统 ID" - -#~ msgid "" -#~ "Generate translation tables for systems that don't understand long " -#~ "filenames" -#~ msgstr "为无法识别长文件å的系统生æˆç¿»è¯‘表" - -#~ msgid "Verbose" -#~ msgstr "详细" - -#~ msgid "Set Volume ID" -#~ msgstr "è®¾ç½®å· ID" - -#~ msgid "Set Volume set ID" -#~ msgstr "设置å·é›†åˆ ID" - -#~ msgid "Set Volume set sequence number" -#~ msgstr "设置å·é›†åˆåºåˆ—å·" - -#~ msgid "Override creation date" -#~ msgstr "覆盖创建日期" - -#~ msgid "Override expiration date" -#~ msgstr "覆盖过期日期" - -#~ msgid "Override effective date" -#~ msgstr "覆盖有效日期" - -#~ msgid "Using \"%s\"\n" -#~ msgstr "使用“%sâ€\n" - -#~ msgid "%s:%d: name required\n" -#~ msgstr "%s:%d:需è¦åç§°\n" - -#~ msgid "%s:%d: equals sign required\n" -#~ msgstr "%s:%d:需è¦ç­‰å·\n" - -#~ msgid "%s:%d: field name \"%s\" unknown\n" -#~ msgstr "%s:%d:域å“%sâ€æœªçŸ¥\n" - -#~ msgid "Usage: %s [options] file...\n" -#~ msgstr "用法:%s [选项] 文件...\n" - -#~ msgid "Required boot image pathname missing" -#~ msgstr "缺少必须的引导镜åƒè·¯å¾„å" - -#~ msgid "Required boot catalog pathname missing\n" -#~ msgstr "缺少必须的引导目录路径å\n" - -#~ msgid "Ignoring -no-emul-boot (no-emulation is the default behaviour)\n" -#~ msgstr "忽略 -no-emul-boot 选项(no-emulation是默认行为)\n" - -#~ msgid "Abstract filename string too long\n" -#~ msgstr "æ‘˜è¦æ–‡ä»¶å太长\n" - -#~ msgid "Application-id string too long\n" -#~ msgstr "应用程åºç¼–å·ä¸²å¤ªé•¿\n" - -#~ msgid "Bibliographic filename string too long\n" -#~ msgstr "å‚è€ƒä¿¡æ¯æ–‡ä»¶å太长\n" - -#~ msgid "Copyright filename string too long\n" -#~ msgstr "ç‰ˆæƒæ–‡ä»¶å太长\n" - -#~ msgid "Preparer string too long\n" -#~ msgstr "编制者æè¿°ä¿¡æ¯å¤ªé•¿\n" - -#~ msgid "Publisher string too long\n" -#~ msgstr "å‘行者æè¿°ä¿¡æ¯å¤ªé•¿\n" - -#~ msgid "System ID string too long\n" -#~ msgstr "系统 ID 字符串太长\n" - -#~ msgid "Volume ID string too long\n" -#~ msgstr "å· ID 字符串太长\n" - -#~ msgid "Volume set ID string too long\n" -#~ msgstr "å·é›†åˆ ID 太长\n" - -#~ msgid "Volume set sequence number too big\n" -#~ msgstr "å·é›†åˆåºåˆ—å·å¤ªå¤§\n" - -#~ msgid "date string must be 16 characters.\n" -#~ msgstr "日期字符串长度必须为 16 个字符。\n" - -#~ msgid "Warning: setrlimit" -#~ msgstr "警告:setrlimit" - -#~ msgid "Multisession usage bug: Must specify -C if -M is used.\n" -#~ msgstr "多会è¯ä½¿ç”¨é”™è¯¯: 若使用 -M 选项则必须指定 -C 选项。\n" - -#~ msgid "" -#~ "Warning: -C specified without -M: old session data will not be merged.\n" -#~ msgstr "" -#~ "警告:在未使用 -M 的情况下使用了 -C é€‰é¡¹ï¼šåŽŸæœ‰ä¼šè¯æ•°æ®å°†ä¸è¢«åˆå¹¶ã€‚\n" - -#~ msgid "re-directing all messages to %s\n" -#~ msgstr "é‡å®šå‘所有信æ¯åˆ° %s\n" - -#~ msgid "Unable to open previous session image %s\n" -#~ msgstr "无法打开上一会è¯ä½¿ç”¨çš„é•œåƒ %s\n" - -#~ msgid "Joliet tree sort failed.\n" -#~ msgstr "Joliet 树排åºå¤±è´¥ã€‚\n" - -#~ msgid "Unable to open /dev/null\n" -#~ msgstr "无法打开 /dev/null\n" - -#~ msgid "Unable to open disc image file\n" -#~ msgstr "无法打开ç£ç›˜é•œåƒæ–‡ä»¶\n" - -#~ msgid "Max brk space used %x\n" -#~ msgstr "已使用的最大中断空间 %x\n" - -#~ msgid "%llu extents written (%llu MiB)\n" -#~ msgstr "%llu å·²ç»å†™å…¥æ‰©å±•å—(%llu MiB)\n" - -#~ msgid "Seek error on old image\n" -#~ msgstr "在旧镜åƒä¸Šå‘生æœå¯»é”™è¯¯\n" - -#~ msgid "**Bad RR version attribute" -#~ msgstr "**错误的 Rock Ridge 版本属性" - -#~ msgid "" -#~ "Warning: Neither Rock Ridge (-R) nor TRANS.TBL (-T) name translations " -#~ "were found on previous session. ISO (8.3) file names have been used " -#~ "instead.\n" -#~ msgstr "" -#~ "警告:未在å‰ä¸€ä¼šè¯ä¸­å‘现 Rock Ridge (-R) 或 TRANS.TBL (-T) å称翻译,使用 " -#~ "ISO (8.3) 文件å代替。\n" - -# need to check source code. -# Is %s referring to the "old image" or the error msg? -#~ msgid "Read error on old image %s\n" -#~ msgstr "åœ¨æ—§é•œåƒ %s 上å‘生读错误\n" - -#~ msgid "Special parameters for cdwrite not specified with -C\n" -#~ msgstr "cdwrite çš„ç‰¹æ®Šå‚æ•°æ²¡æœ‰é€šè¿‡ -C 指定\n" - -#~ msgid "Malformed cdwrite parameters\n" -#~ msgstr "cdwrite 傿•°æ ¼å¼é”™è¯¯\n" - -#~ msgid "symbolic link ``%s'' to long for one SL System Use Field, splitting" -#~ msgstr "符å·é“¾æŽ¥â€œ%sâ€å¯¹äºŽå•个 SL 系统使用域太长,进行分割" - -#~ msgid "Unable to insert transparent compressed file - name conflict\n" -#~ msgstr "无法æ’入逿˜ŽåŽ‹ç¼©æ–‡ä»¶ - 文件å冲çª\n" - -#~ msgid "Extension record too long\n" -#~ msgstr "扩展记录太长\n" - -#~ msgid "Fatal goof\n" -#~ msgstr "致命错误\n" - -#~ msgid "Unable to generate unique name for file %s\n" -#~ msgstr "无法为文件 %s 生æˆå”¯ä¸€çš„åå­—\n" - -#~ msgid "Fatal error - RR overflow for file %s\n" -#~ msgstr "致命错误 - 文件 %s å‘生 Rock Ridge 溢出\n" - -#~ msgid "Translation table size mismatch %d %d\n" -#~ msgstr "翻译表大å°ä¸åŒ¹é… %d %d\n" - -#~ msgid "Unable to locate directory parent\n" -#~ msgstr "无法定ä½ä¸Šçº§ç›®å½•\n" - -#~ msgid "Scanning %s\n" -#~ msgstr "正在扫æ %s\n" - -#~ msgid "Ignoring file %s\n" -#~ msgstr "忽略文件 %s\n" - -#~ msgid "Overflow of stat buffer\n" -#~ msgstr "状æ€ç¼“冲区溢出\n" - -#~ msgid "Excluded by match: %s\n" -#~ msgstr "åŒ¹é…æŽ’é™¤æ¡ä»¶ï¼š%s\n" - -#~ msgid "Excluded: %s\n" -#~ msgstr "已排除:%s\n" - -#~ msgid "Non-existant or inaccessible: %s\n" -#~ msgstr "ä¸å­˜åœ¨æˆ–ä¸å¯è®¿é—®ï¼š%s\n" - -#~ msgid "Unable to stat file %s - ignoring and continuing.\n" -#~ msgstr "无法获得文件 %s çš„çŠ¶æ€ - 忽略并继续。\n" - -#~ msgid "Symlink %s ignored - continuing.\n" -#~ msgstr "忽略符å·é“¾æŽ¥ %s - 继续。\n" - -#~ msgid "Already cached directory seen (%s)\n" -#~ msgstr "å‘现已缓冲目录(%s)\n" - -#~ msgid "File %s is not readable (%s) - ignoring\n" -#~ msgstr "文件 %s 无法读å–(%s) - 忽略\n" - -#~ msgid "Directory loop - fatal goof (%s %lx %lu).\n" -#~ msgstr "目录循环嵌套 - 致命错误(%s %lx %lu)。\n" - -#~ msgid "Unknown file type %s - ignoring and continuing.\n" -#~ msgstr "未知文件类型 %s - 忽略并继续。\n" - -#~ msgid "Hidden from ISO9660 tree: %s\n" -#~ msgstr "从 ISO9660 æ ‘éšè—:%s\n" - -#~ msgid "Hidden from Joliet tree: %s\n" -#~ msgstr "从 Joliet æ ‘éšè—:%s\n" - -#~ msgid "Directories too deep %s\n" -#~ msgstr "目录层次太深 %s\n" - -#~ msgid "Unable to locate child directory in parent list\n" -#~ msgstr "在上级目录列表中无法定ä½å­ç›®\n" - -#~ msgid "call to search_tree_file with an absolute path, stripping\n" -#~ msgstr "search_tree_file 的调用使用了ç»å¯¹è·¯å¾„,正在剥离\n" - -#~ msgid "initial path separator. Hope this was intended...\n" -#~ msgstr "åˆå§‹è·¯å¾„分隔符。希望这是预期的结果...\n" - -#~ msgid "Cannot open '%s'" -#~ msgstr "无法打开“%sâ€" - -#~ msgid "cannot fwrite %llu*%llu\n" -#~ msgstr "无法 fwrite %llu*%llu\n" - -#~ msgid "cannot open %s\n" -#~ msgstr "无法打开 %s\n" - -#~ msgid "%6.2f%% done, estimate finish %s" -#~ msgstr "å·²å®Œæˆ %6.2f%%,估计 %s 完æˆ" - -#~ msgid "Cache hit for %s%s%s\n" -#~ msgstr "命中缓存:%s%s%s\n" - -#~ msgid "Unexpected directory length %d %d %s\n" -#~ msgstr "未预料的目录长度 %d %d %s\n" - -#~ msgid "Continuation entry record length mismatch (%d %d).\n" -#~ msgstr "å»¶ç»­æ¡ç›®è®°å½•的长度ä¸åŒ¹é…(%d %d)。\n" - -#~ msgid "Path table lengths do not match %d %d\n" -#~ msgstr "路径表的长度ä¸åŒ¹é… %d %d\n" - -#~ msgid "Total extents scheduled to be written = %llu\n" -#~ msgstr "预计è¦å†™å…¥çš„æ‰©å±•å—æ€»æ•° = %llu \n" - -#~ msgid "Total extents actually written = %llu\n" -#~ msgstr "å®žé™…å†™å…¥çš„æ‰©å±•å—æ€»æ•° = %llu\n" - -#~ msgid "" -#~ "Number of extents written different than what was predicted. Please " -#~ "fix.\n" -#~ msgstr "å®žé™…å†™å…¥çš„æ‰©å±•å—æ•°é‡å’Œé¢„计ä¸åŒã€‚请修正。\n" - -#~ msgid "Predicted = %d, written = %llu\n" -#~ msgstr "预计 = %d,已写入 = %llu\n" - -#~ msgid "Total rockridge attributes bytes: %d\n" -#~ msgstr "Rock Ridge 属性总大å°ï¼š%d\n" - -#~ msgid "Path table size(bytes): %d\n" -#~ msgstr "路径表大å°ï¼š%d 字节\n" - -#~ msgid "ESC to return previous menu." -#~ msgstr "按 ESC 返回上一èœå•。" - -#~ msgid "the size of memory disk is 0x%x" -#~ msgstr "内存ç£ç›˜å¤§å°ä¸º 0x%x" - -#~ msgid "the size of config file is 0x%x" -#~ msgstr "é…置文件大å°ä¸º 0x%x" - -#~ msgid "the total module size is 0x%x" -#~ msgstr "æ¨¡å—æ€»è®¡å¤§å°ä¸º 0x%x" - -#~ msgid "the core size is 0x%x" -#~ msgstr "核心大å°ä½ 0x%x" - -#~ msgid "the core image will be embedded at sector 0x%llx" -#~ msgstr "核心镜åƒå°†è¢«åµŒå…¥äºŽ 0x%llx 扇区" - -#~ msgid "error message = %s" -#~ msgstr "é”™è¯¯ä¿¡æ¯ = %s" - -#~ msgid "opening the core image `%s'" -#~ msgstr "æ­£åœ¨æ‰“å¼€æ ¸å¿ƒé•œåƒ `%s'" - -#~ msgid "guessing the root device failed, because of `%s'" -#~ msgstr "猜测根设备失败,原因为 `%s'" diff --git a/thirdparty/grub-2.04/po/zh_TW.gmo b/thirdparty/grub-2.04/po/zh_TW.gmo deleted file mode 100644 index 83e6bcf7ff99a112624efcf8eec1579421d8e21b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 29789 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°9sg3IlQD@8*IOtdC*au|3d8LC9iFmT5`SHzG- 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 diff --git a/thirdparty/grub-2.04/po/zh_TW.po b/thirdparty/grub-2.04/po/zh_TW.po deleted file mode 100644 index ec14682a9..000000000 --- a/thirdparty/grub-2.04/po/zh_TW.po +++ /dev/null @@ -1,6812 +0,0 @@ -# Traditional Chinese translation for grub. -# Copyright (C) 2011 Free Software Foundation, Inc. -# This file is distributed under the same license as the grub package. -# Cheng-Chia Tseng , 2011. -# -msgid "" -msgstr "" -"Project-Id-Version: grub 1.97+20110101\n" -"Report-Msgid-Bugs-To: bug-grub@gnu.org\n" -"POT-Creation-Date: 2019-07-04 16:09+0200\n" -"PO-Revision-Date: 2011-07-25 02:26+0800\n" -"Last-Translator: Cheng-Chia Tseng \n" -"Language-Team: Chinese (traditional) \n" -"Language: zh_TW\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Bugs: Report translation errors to the Language-Team address.\n" - -#: grub-core/bus/usb/serial/ftdi.c:145 grub-core/bus/usb/serial/pl2303.c:158 -#: grub-core/term/ieee1275/escc.c:169 grub-core/term/ns8250.c:202 -#, fuzzy -msgid "unsupported serial port speed" -msgstr "設定åºåˆ—埠速度。" - -#: grub-core/bus/usb/serial/ftdi.c:151 grub-core/bus/usb/serial/pl2303.c:164 -#: grub-core/term/efi/serial.c:116 grub-core/term/ieee1275/escc.c:175 -#: grub-core/term/ns8250.c:208 grub-core/term/serial.c:227 -#: grub-core/term/serial.c:243 -#, fuzzy -msgid "unsupported serial port parity" -msgstr "設定åºåˆ—埠åŒä½ã€‚" - -#: grub-core/bus/usb/serial/ftdi.c:157 grub-core/bus/usb/serial/pl2303.c:170 -#: grub-core/term/efi/serial.c:122 grub-core/term/ieee1275/escc.c:181 -#: grub-core/term/ns8250.c:213 grub-core/term/serial.c:267 -#, fuzzy -msgid "unsupported serial port stop bits number" -msgstr "設定åºåˆ—åŸ åœæ­¢ä½å…ƒã€‚" - -#: grub-core/bus/usb/serial/ftdi.c:161 grub-core/bus/usb/serial/pl2303.c:174 -#: grub-core/term/efi/serial.c:126 grub-core/term/ieee1275/escc.c:185 -#: grub-core/term/ns8250.c:217 -#, fuzzy -msgid "unsupported serial port word length" -msgstr "設定åºåˆ—埠單詞長度。" - -#: grub-core/commands/acpi.c:42 -msgid "Don't load host tables specified by comma-separated list." -msgstr "ä¸è¦è¼‰å…¥ç”¨åŠå½¢é€—號隔開的列表所指定的主控表。" - -#: grub-core/commands/acpi.c:45 -msgid "Load only tables specified by comma-separated list." -msgstr "僅載入用åŠå½¢é€—號隔開的列表所指定的主控表。" - -#: grub-core/commands/acpi.c:46 -#, fuzzy -msgid "Export version 1 tables to the OS." -msgstr "輸出變數。" - -#: grub-core/commands/acpi.c:47 -#, fuzzy -msgid "Export version 2 and version 3 tables to the OS." -msgstr "顯露 v2 ä»¥åŠ v3 表。" - -#: grub-core/commands/acpi.c:48 -msgid "Set OEMID of RSDP, XSDT and RSDT." -msgstr "設定 RSDPã€XSDTã€RSDT çš„ OEMID。" - -#: grub-core/commands/acpi.c:50 -msgid "Set OEMTABLE ID of RSDP, XSDT and RSDT." -msgstr "設定 RSDPã€XSDTã€RSDT çš„ OEMTABLE ID。" - -#: grub-core/commands/acpi.c:52 -msgid "Set OEMTABLE revision of RSDP, XSDT and RSDT." -msgstr "設定 RSDPã€XSDTã€RSDT çš„ OEMTABLE 修訂版本。" - -#: grub-core/commands/acpi.c:54 -msgid "Set creator field of RSDP, XSDT and RSDT." -msgstr "設定 RSDPã€XSDTã€RSDT 的建立者欄ä½ã€‚" - -#: grub-core/commands/acpi.c:56 -msgid "Set creator revision of RSDP, XSDT and RSDT." -msgstr "設定 RSDPã€XSDTã€RSDT 的建立者修訂版。" - -#. TRANSLATORS: "hangs" here is a noun, not a verb. -#: grub-core/commands/acpi.c:58 -#, fuzzy -msgid "" -"Don't update EBDA. May fix failures or hangs on some BIOSes but makes it " -"ineffective with OS not receiving RSDP from GRUB." -msgstr "" -"ä¸è¦æ›´æ–° EBDA。這也許能修正æŸäº› BIOS 上的失敗或å‡ä½ï¼Œä½†å¯èƒ½æœƒè®“ OS 無法從 " -"GRUB 接收 RSDP 而變得沒效率。" - -#: grub-core/commands/acpi.c:650 grub-core/commands/acpi.c:667 -#: grub-core/commands/i386/pc/play.c:105 grub-core/commands/keylayouts.c:230 -#: grub-core/commands/keylayouts.c:245 grub-core/commands/keylayouts.c:263 -#: grub-core/commands/verifiers.c:156 grub-core/efiemu/loadcore.c:350 -#: grub-core/kern/elf.c:117 grub-core/kern/elfXX.c:29 -#: grub-core/kern/elfXX.c:156 grub-core/loader/arm/linux.c:319 -#: grub-core/loader/arm64/linux.c:330 grub-core/loader/arm64/xen_boot.c:356 -#: grub-core/loader/efi/chainloader.c:276 -#: grub-core/loader/efi/chainloader.c:297 -#: grub-core/loader/efi/chainloader.c:329 grub-core/loader/efi/fdt.c:138 -#: grub-core/loader/i386/bsd.c:1276 grub-core/loader/i386/bsd.c:2116 -#: grub-core/loader/i386/bsdXX.c:20 grub-core/loader/i386/bsdXX.c:36 -#: grub-core/loader/i386/bsdXX.c:63 grub-core/loader/i386/bsdXX.c:357 -#: grub-core/loader/i386/bsdXX.c:376 grub-core/loader/i386/bsdXX.c:519 -#: grub-core/loader/i386/bsdXX.c:535 grub-core/loader/i386/bsdXX.c:615 -#: grub-core/loader/i386/bsdXX.c:638 -#: grub-core/loader/i386/coreboot/chainloader.c:112 -#: grub-core/loader/i386/coreboot/chainloader.c:148 -#: grub-core/loader/i386/coreboot/chainloader.c:170 -#: grub-core/loader/i386/linux.c:667 grub-core/loader/i386/linux.c:788 -#: grub-core/loader/i386/linux.c:1005 grub-core/loader/i386/multiboot_mbi.c:171 -#: grub-core/loader/i386/pc/chainloader.c:202 -#: grub-core/loader/i386/pc/linux.c:149 grub-core/loader/i386/pc/linux.c:320 -#: grub-core/loader/i386/pc/linux.c:362 grub-core/loader/i386/pc/plan9.c:457 -#: grub-core/loader/i386/pc/plan9.c:550 grub-core/loader/i386/pc/plan9.c:566 -#: grub-core/loader/i386/xen.c:934 grub-core/loader/i386/xen_file.c:72 -#: grub-core/loader/i386/xen_fileXX.c:43 grub-core/loader/i386/xen_fileXX.c:186 -#: grub-core/loader/i386/xen_fileXX.c:339 grub-core/loader/ia64/efi/linux.c:423 -#: grub-core/loader/ia64/efi/linux.c:471 grub-core/loader/linux.c:286 -#: grub-core/loader/macho.c:84 grub-core/loader/macho.c:109 -#: grub-core/loader/machoXX.c:33 grub-core/loader/machoXX.c:46 -#: grub-core/loader/machoXX.c:76 grub-core/loader/machoXX.c:116 -#: grub-core/loader/machoXX.c:131 grub-core/loader/machoXX.c:147 -#: grub-core/loader/machoXX.c:196 grub-core/loader/machoXX.c:317 -#: grub-core/loader/multiboot.c:434 grub-core/loader/multiboot_elfxx.c:171 -#: grub-core/loader/multiboot_elfxx.c:234 -#: grub-core/loader/multiboot_elfxx.c:278 grub-core/loader/multiboot_mbi2.c:129 -#: grub-core/loader/xnu.c:737 grub-core/loader/xnu.c:795 -#: grub-core/loader/xnu.c:816 grub-core/loader/xnu.c:871 -#: grub-core/loader/xnu.c:914 grub-core/loader/xnu.c:952 -#: grub-core/loader/xnu_resume.c:68 grub-core/loader/xnu_resume.c:153 -#: grub-core/loader/xnu_resume.c:165 util/grub-mkimagexx.c:2288 -#, fuzzy, c-format -msgid "premature end of file %s" -msgstr "無法開啟檔案 %s" - -#: grub-core/commands/acpi.c:779 -#, fuzzy -msgid "" -"[-1|-2] [--exclude=TABLE1,TABLE2|--load-only=TABLE1,TABLE2] FILE1 [FILE2] " -"[...]" -msgstr "" -"[-1|-2] [--exclude=TABLE1,TABLE2|--load-only=table1,table2] FILE1 [FILE2] " -"[...]" - -#: grub-core/commands/acpi.c:782 -msgid "Load host ACPI tables and tables specified by arguments." -msgstr "載入主控 ACPI 表以åŠé€éŽå¼•數指定的表。" - -#: grub-core/commands/acpihalt.c:368 grub-core/kern/err.c:110 -#, c-format -msgid "error: %s.\n" -msgstr "錯誤:%s。\n" - -#: grub-core/commands/acpihalt.c:368 grub-core/kern/emu/misc.c:95 -#: grub-core/kern/emu/misc.c:105 grub-core/kern/emu/misc.c:134 -#: grub-core/kern/emu/mm.c:34 grub-core/kern/emu/mm.c:62 -#: grub-core/kern/mm.c:374 grub-core/lib/relocator.c:1282 -#: grub-core/lib/relocator.c:1439 grub-core/lib/relocator.c:1538 -#: grub-core/loader/arm/linux.c:259 grub-core/loader/arm64/linux.c:265 -#: grub-core/loader/arm64/linux.c:321 grub-core/loader/arm64/linux.c:340 -#: grub-core/loader/arm64/xen_boot.c:344 grub-core/loader/arm64/xen_boot.c:367 -#: grub-core/loader/efi/chainloader.c:289 grub-core/osdep/unix/dl.c:48 -#: grub-core/osdep/windows/dl.c:46 grub-core/script/lexer.c:156 -#: grub-core/script/lexer.c:182 -#, fuzzy -msgid "out of memory" -msgstr "傾å°è¨˜æ†¶é«”。" - -#: grub-core/commands/acpihalt.c:374 grub-core/disk/cryptodisk.c:587 -#: grub-core/disk/cryptodisk.c:632 grub-core/kern/emu/hostdisk.c:307 -#: grub-core/kern/emu/hostfs.c:149 grub-core/kern/emu/misc.c:200 -#: grub-core/osdep/linux/ofpath.c:195 grub-core/osdep/linux/ofpath.c:521 -#: grub-core/osdep/linux/ofpath.c:534 util/glue-efi.c:80 util/glue-efi.c:94 -#: util/grub-editenv.c:155 util/grub-fstest.c:577 -#: util/grub-install-common.c:943 util/grub-mkrescue.c:634 -#: util/grub-mkrescue.c:888 util/grub-mount.c:506 util/grub-render-label.c:176 -#: util/misc.c:95 util/setup.c:814 util/setup.c:833 -#, fuzzy, c-format -msgid "cannot read `%s': %s" -msgstr "無法正確讀å–「%sã€" - -#. TRANSLATORS: It's computer shutdown using ACPI, not disabling ACPI. -#: grub-core/commands/acpihalt.c:452 -msgid "ACPI shutdown failed" -msgstr "" - -#: grub-core/commands/arc/lsdev.c:51 -#, fuzzy -msgid "List devices." -msgstr "列出 PCI è£ç½®ã€‚" - -#: grub-core/commands/blocklist.c:122 grub-core/commands/cat.c:57 -#: grub-core/commands/configfile.c:35 grub-core/commands/efi/loadbios.c:168 -#: grub-core/commands/file.c:159 grub-core/commands/hexdump.c:47 -#: grub-core/commands/legacycfg.c:209 grub-core/commands/legacycfg.c:315 -#: grub-core/commands/minicmd.c:44 grub-core/commands/syslinuxcfg.c:146 -#: grub-core/commands/testload.c:58 grub-core/commands/testspeed.c:52 -#: grub-core/disk/loopback.c:93 grub-core/efiemu/main.c:293 -#: grub-core/font/font_cmd.c:32 grub-core/kern/emu/hostdisk.c:519 -#: grub-core/loader/arm/linux.c:364 grub-core/loader/arm/linux.c:409 -#: grub-core/loader/arm/linux.c:472 grub-core/loader/arm64/linux.c:243 -#: grub-core/loader/arm64/linux.c:297 grub-core/loader/arm64/xen_boot.c:398 -#: grub-core/loader/arm64/xen_boot.c:411 grub-core/loader/arm64/xen_boot.c:462 -#: grub-core/loader/efi/chainloader.c:216 grub-core/loader/i386/bsd.c:1462 -#: grub-core/loader/i386/bsd.c:1807 grub-core/loader/i386/bsd.c:2085 -#: grub-core/loader/i386/coreboot/chainloader.c:438 -#: grub-core/loader/i386/linux.c:656 grub-core/loader/i386/linux.c:1041 -#: grub-core/loader/i386/pc/chainloader.c:290 -#: grub-core/loader/i386/pc/freedos.c:105 grub-core/loader/i386/pc/linux.c:138 -#: grub-core/loader/i386/pc/linux.c:400 grub-core/loader/i386/pc/ntldr.c:85 -#: grub-core/loader/i386/pc/plan9.c:409 -#: grub-core/loader/i386/pc/pxechainloader.c:94 -#: grub-core/loader/i386/pc/truecrypt.c:96 grub-core/loader/i386/xen.c:641 -#: grub-core/loader/i386/xen.c:768 grub-core/loader/i386/xen.c:844 -#: grub-core/loader/i386/xen.c:854 grub-core/loader/i386/xnu.c:488 -#: grub-core/loader/ia64/efi/linux.c:459 grub-core/loader/ia64/efi/linux.c:539 -#: grub-core/loader/mips/linux.c:238 grub-core/loader/mips/linux.c:429 -#: grub-core/loader/multiboot.c:322 grub-core/loader/multiboot.c:374 -#: grub-core/loader/multiboot.c:384 -#: grub-core/loader/powerpc/ieee1275/linux.c:269 -#: grub-core/loader/powerpc/ieee1275/linux.c:341 -#: grub-core/loader/sparc64/ieee1275/linux.c:305 -#: grub-core/loader/sparc64/ieee1275/linux.c:381 grub-core/loader/xnu.c:351 -#: grub-core/loader/xnu.c:460 grub-core/loader/xnu.c:778 -#: grub-core/loader/xnu.c:892 grub-core/loader/xnu.c:1277 -#: grub-core/loader/xnu.c:1427 grub-core/loader/xnu.c:1453 -#: grub-core/video/readers/jpeg.c:812 grub-core/video/readers/png.c:1123 -msgid "filename expected" -msgstr "" - -#. TRANSLATORS: "embed" is a verb (command description). " -#: grub-core/commands/blocklist.c:154 grub-core/commands/cat.c:163 -#: grub-core/commands/configfile.c:65 grub-core/commands/configfile.c:68 -#: grub-core/commands/configfile.c:74 grub-core/commands/configfile.c:80 -#: grub-core/commands/configfile.c:86 grub-core/commands/hashsum.c:34 -#: grub-core/commands/legacycfg.c:834 grub-core/commands/legacycfg.c:841 -#: grub-core/commands/legacycfg.c:846 grub-core/commands/legacycfg.c:851 -#: grub-core/commands/macbless.c:222 grub-core/commands/minicmd.c:198 -#: grub-core/commands/syslinuxcfg.c:186 grub-core/commands/syslinuxcfg.c:194 -#: grub-core/commands/syslinuxcfg.c:200 grub-core/commands/syslinuxcfg.c:206 -#: grub-core/commands/testload.c:163 grub-core/efiemu/main.c:312 -#: grub-core/kern/emu/main.c:100 grub-core/kern/emu/main.c:103 -#: grub-core/loader/i386/bsd.c:2137 grub-core/loader/i386/bsd.c:2140 -#: grub-core/loader/i386/bsd.c:2143 -#: grub-core/loader/i386/coreboot/chainloader.c:505 -#: grub-core/loader/ia64/efi/linux.c:594 include/grub/util/install.h:32 -#: include/grub/util/install.h:64 util/grub-glue-efi.c:52 -#: util/grub-glue-efi.c:54 util/grub-glue-efi.c:56 util/grub-install.c:254 -#: util/grub-install.c:301 util/grub-mkfont.c:936 util/grub-mkimage.c:68 -#: util/grub-mkimage.c:74 util/grub-mkimage.c:76 util/grub-mkimage.c:78 -#: util/grub-mkimage.c:81 util/grub-mklayout.c:52 util/grub-mklayout.c:54 -#: util/grub-mkrescue.c:97 util/grub-mkrescue.c:101 util/grub-mkrescue.c:104 -#: util/grub-mkrescue.c:105 util/grub-mkrescue.c:106 -#: util/grub-mkstandalone.c:47 util/grub-mkstandalone.c:49 -#: util/grub-probe.c:732 util/grub-render-label.c:59 -#: util/grub-render-label.c:70 util/grub-render-label.c:72 util/grub-setup.c:78 -#: util/grub-setup.c:80 util/grub-setup.c:84 util/grub-syslinux2cfg.c:74 -#: util/grub-syslinux2cfg.c:147 -msgid "FILE" -msgstr "FILE" - -#: grub-core/commands/blocklist.c:154 -msgid "Print a block list." -msgstr "列å°å€å¡Šæ¸…單。" - -#: grub-core/commands/boot.c:147 grub-core/commands/legacycfg.c:533 -#: grub-core/commands/legacycfg.c:574 grub-core/loader/arm64/linux.c:250 -#: grub-core/loader/i386/bsd.c:1799 grub-core/loader/i386/bsd.c:1900 -#: grub-core/loader/i386/bsd.c:2007 grub-core/loader/i386/bsd.c:2040 -#: grub-core/loader/i386/bsd.c:2089 grub-core/loader/i386/linux.c:1047 -#: grub-core/loader/i386/pc/linux.c:406 grub-core/loader/i386/xen.c:775 -#: grub-core/loader/i386/xen.c:859 grub-core/loader/ia64/efi/linux.c:545 -#: grub-core/loader/mips/linux.c:432 grub-core/loader/multiboot.c:388 -#: grub-core/loader/powerpc/ieee1275/linux.c:347 -#: grub-core/loader/sparc64/ieee1275/linux.c:387 grub-core/loader/xnu.c:572 -#: grub-core/loader/xnu.c:665 grub-core/loader/xnu.c:781 -#: grub-core/loader/xnu.c:895 grub-core/loader/xnu.c:1091 -#: grub-core/loader/xnu.c:1258 grub-core/loader/xnu.c:1289 -#: grub-core/loader/xnu.c:1430 -msgid "you need to load the kernel first" -msgstr "" - -#: grub-core/commands/boot.c:189 -msgid "Boot an operating system." -msgstr "啟動作業系統。" - -#: grub-core/commands/boottime.c:36 -#: grub-core/commands/i386/coreboot/cb_timestamps.c:108 -msgid "No boot time statistics is available\n" -msgstr "" - -#: grub-core/commands/boottime.c:59 -msgid "Show boot time statistics." -msgstr "" - -#: grub-core/commands/cacheinfo.c:40 -#, c-format -msgid "Disk cache statistics: hits = %lu (%lu.%02lu%%), misses = %lu\n" -msgstr "" - -#: grub-core/commands/cacheinfo.c:45 -msgid "No disk cache statistics available\n" -msgstr "" - -#: grub-core/commands/cacheinfo.c:56 -#, fuzzy -msgid "Get disk cache info." -msgstr "æ“·å–è£ç½®è³‡è¨Šã€‚" - -#: grub-core/commands/cat.c:33 -msgid "Accept DOS-style CR/NL line endings." -msgstr "æŽ¥å— DOS 風格的 CR/NL 列çµå°¾ã€‚" - -#: grub-core/commands/cat.c:163 grub-core/commands/minicmd.c:198 -msgid "Show the contents of a file." -msgstr "顯示檔案的內容。" - -#: grub-core/commands/cmp.c:43 grub-core/commands/i386/pc/drivemap.c:239 -#: grub-core/commands/i386/wrmsr.c:60 grub-core/commands/iorw.c:85 -#: grub-core/commands/memrw.c:84 grub-core/commands/password.c:75 -#: grub-core/commands/password_pbkdf2.c:94 grub-core/commands/pgp.c:826 -#: grub-core/commands/regexp.c:113 grub-core/mmap/mmap.c:517 -#: grub-core/net/dns.c:639 -msgid "two arguments expected" -msgstr "" - -#: grub-core/commands/cmp.c:45 -#, c-format -msgid "Compare file `%s' with `%s':\n" -msgstr "" - -#: grub-core/commands/cmp.c:54 -#, c-format -msgid "Files differ in size: %llu [%s], %llu [%s]\n" -msgstr "" - -#: grub-core/commands/cmp.c:81 -#, c-format -msgid "Files differ at the offset %llu: 0x%x [%s], 0x%x [%s]\n" -msgstr "" - -#. TRANSLATORS: it's always exactly 2 files. -#: grub-core/commands/cmp.c:93 -msgid "The files are identical.\n" -msgstr "" - -#: grub-core/commands/cmp.c:113 -msgid "FILE1 FILE2" -msgstr "FILE1 FILE2" - -#: grub-core/commands/cmp.c:113 -msgid "Compare two files." -msgstr "比較兩個檔案。" - -#: grub-core/commands/configfile.c:65 -msgid "Load another config file." -msgstr "載入å¦ä¸€å€‹çµ„態檔。" - -#: grub-core/commands/configfile.c:69 grub-core/commands/configfile.c:87 -msgid "Load another config file without changing context." -msgstr "載入å¦ä¸€å€‹çµ„態檔而ä¸è®Šæ›´æƒ…境。" - -#: grub-core/commands/configfile.c:75 -#, fuzzy -msgid "" -"Load another config file without changing context but take only menu entries." -msgstr "載入å¦ä¸€å€‹çµ„態檔而ä¸è®Šæ›´æƒ…境,僅擷å–é¸å–®æ¢ç›®ã€‚" - -#: grub-core/commands/configfile.c:81 -#, fuzzy -msgid "Load another config file but take only menu entries." -msgstr "載入å¦ä¸€å€‹çµ„態檔而ä¸è®Šæ›´æƒ…境,僅擷å–é¸å–®æ¢ç›®ã€‚" - -#: grub-core/commands/date.c:141 -msgid "[[year-]month-day] [hour:minute[:second]]" -msgstr "[[year-]month-day] [hour:minute[:second]]" - -#: grub-core/commands/date.c:142 -#, fuzzy -msgid "Display/set current datetime." -msgstr "顯示/è¨­å®šç›®å‰æ—¥æœŸæ™‚間的指令。" - -#: grub-core/commands/echo.c:30 -msgid "Do not output the trailing newline." -msgstr "ä¸è¦è¼¸å‡ºæ›³å°¾æ›åˆ—。" - -#: grub-core/commands/echo.c:31 -msgid "Enable interpretation of backslash escapes." -msgstr "å•Ÿç”¨åæ–œç·šè·³å‡ºè§£è­¯ã€‚" - -#: grub-core/commands/echo.c:134 -msgid "[-e|-n] STRING" -msgstr "[-e|-n] STRING" - -#: grub-core/commands/echo.c:134 -msgid "Display a line of text." -msgstr "顯示文字的一列。" - -#: grub-core/commands/efi/efifwsetup.c:82 -msgid "Reboot into firmware setup menu." -msgstr "" - -#: grub-core/commands/efi/fixvideo.c:107 -msgid "Fix video problem." -msgstr "修正視訊å•題。" - -#: grub-core/commands/efi/loadbios.c:52 -msgid "ROM image is present." -msgstr "" - -#: grub-core/commands/efi/loadbios.c:70 -msgid "Can't enable ROM area." -msgstr "" - -#: grub-core/commands/efi/loadbios.c:209 -msgid "" -"Create BIOS-like structures for backward compatibility with existing OS." -msgstr "" - -#: grub-core/commands/efi/loadbios.c:214 -msgid "BIOS_DUMP [INT10_DUMP]" -msgstr "" - -#: grub-core/commands/efi/loadbios.c:215 -msgid "Load BIOS dump." -msgstr "載入 BIOS 傾å°ã€‚" - -#: grub-core/commands/efi/shim_lock.c:76 -#, c-format -msgid "module cannot be loaded in UEFI secure boot mode: %s" -msgstr "" - -#: grub-core/commands/efi/shim_lock.c:98 -#, c-format -msgid "cannot boot due to dangerous module in memory: %s" -msgstr "" - -#: grub-core/commands/efi/shim_lock.c:116 -msgid "bad shim signature" -msgstr "" - -#: grub-core/commands/efi/tpm.c:149 grub-core/commands/efi/tpm.c:189 -#: grub-core/commands/efi/tpm.c:256 grub-core/commands/efi/tpm.c:306 -#, fuzzy -msgid "Command failed" -msgstr "迴返指令失敗" - -#: grub-core/commands/efi/tpm.c:151 grub-core/commands/efi/tpm.c:191 -#: grub-core/commands/efi/tpm.c:258 grub-core/commands/efi/tpm.c:308 -#, fuzzy -msgid "Invalid parameter" -msgstr "設定ä½ç½®åƒæ•¸ã€‚" - -#: grub-core/commands/efi/tpm.c:154 grub-core/commands/efi/tpm.c:194 -#: grub-core/commands/efi/tpm.c:261 grub-core/commands/efi/tpm.c:311 -msgid "Output buffer too small" -msgstr "" - -#: grub-core/commands/efi/tpm.c:156 grub-core/commands/efi/tpm.c:196 -#: grub-core/commands/efi/tpm.c:263 grub-core/commands/efi/tpm.c:313 -msgid "TPM unavailable" -msgstr "" - -#: grub-core/commands/efi/tpm.c:158 grub-core/commands/efi/tpm.c:198 -#: grub-core/commands/efi/tpm.c:265 grub-core/commands/efi/tpm.c:315 -msgid "Unknown TPM error" -msgstr "" - -#: grub-core/commands/efi/tpm.c:240 grub-core/commands/efi/tpm.c:288 -msgid "cannot allocate TPM event buffer" -msgstr "" - -#: grub-core/commands/eval.c:63 -#, fuzzy -msgid "STRING ..." -msgstr "STRING" - -#: grub-core/commands/eval.c:64 -msgid "Evaluate arguments as GRUB commands" -msgstr "" - -#: grub-core/commands/file.c:41 -msgid "Check if FILE can be booted as i386 PAE Xen unprivileged guest kernel" -msgstr "" - -#: grub-core/commands/file.c:44 -msgid "Check if FILE can be booted as x86_64 Xen unprivileged guest kernel" -msgstr "" - -#: grub-core/commands/file.c:46 -msgid "Check if FILE can be used as Xen x86 privileged guest kernel" -msgstr "" - -#: grub-core/commands/file.c:48 -#, fuzzy -msgid "Check if FILE can be used as x86 multiboot kernel" -msgstr "載入 multiboot 內核。" - -#: grub-core/commands/file.c:50 -#, fuzzy -msgid "Check if FILE can be used as x86 multiboot2 kernel" -msgstr "載入 multiboot 2 內核。" - -#: grub-core/commands/file.c:52 -msgid "Check if FILE is ARM Linux" -msgstr "" - -#: grub-core/commands/file.c:54 -msgid "Check if FILE is ARM64 Linux" -msgstr "" - -#: grub-core/commands/file.c:56 -msgid "Check if FILE is IA64 Linux" -msgstr "" - -#: grub-core/commands/file.c:58 -msgid "Check if FILE is MIPS Linux" -msgstr "" - -#: grub-core/commands/file.c:60 -msgid "Check if FILE is MIPSEL Linux" -msgstr "" - -#: grub-core/commands/file.c:62 -msgid "Check if FILE is SPARC64 Linux" -msgstr "" - -#: grub-core/commands/file.c:64 -msgid "Check if FILE is POWERPC Linux" -msgstr "" - -#: grub-core/commands/file.c:66 -msgid "Check if FILE is x86 Linux" -msgstr "" - -#: grub-core/commands/file.c:68 -msgid "Check if FILE is x86 Linux supporting 32-bit protocol" -msgstr "" - -#: grub-core/commands/file.c:70 -msgid "Check if FILE is x86 kFreeBSD" -msgstr "" - -#: grub-core/commands/file.c:72 -msgid "Check if FILE is i386 kFreeBSD" -msgstr "" - -#: grub-core/commands/file.c:74 -msgid "Check if FILE is x86_64 kFreeBSD" -msgstr "" - -#: grub-core/commands/file.c:77 -msgid "Check if FILE is x86 kNetBSD" -msgstr "" - -#: grub-core/commands/file.c:79 -msgid "Check if FILE is i386 kNetBSD" -msgstr "" - -#: grub-core/commands/file.c:81 -msgid "Check if FILE is x86_64 kNetBSD" -msgstr "" - -#: grub-core/commands/file.c:84 -msgid "Check if FILE is i386 EFI file" -msgstr "" - -#: grub-core/commands/file.c:86 -msgid "Check if FILE is x86_64 EFI file" -msgstr "" - -#: grub-core/commands/file.c:88 -msgid "Check if FILE is IA64 EFI file" -msgstr "" - -#: grub-core/commands/file.c:90 -msgid "Check if FILE is ARM64 EFI file" -msgstr "" - -#: grub-core/commands/file.c:92 -msgid "Check if FILE is ARM EFI file" -msgstr "" - -#: grub-core/commands/file.c:94 -msgid "Check if FILE is RISC-V 32bit EFI file" -msgstr "" - -#: grub-core/commands/file.c:96 -msgid "Check if FILE is RISC-V 64bit EFI file" -msgstr "" - -#: grub-core/commands/file.c:98 -msgid "Check if FILE is hiberfil.sys in hibernated state" -msgstr "" - -#: grub-core/commands/file.c:100 -msgid "Check if FILE is x86_64 XNU (Mac OS X kernel)" -msgstr "" - -#: grub-core/commands/file.c:102 -msgid "Check if FILE is i386 XNU (Mac OS X kernel)" -msgstr "" - -#: grub-core/commands/file.c:104 -msgid "Check if FILE is XNU (Mac OS X kernel) hibernated image" -msgstr "" - -#: grub-core/commands/file.c:106 -msgid "Check if FILE is BIOS bootsector" -msgstr "" - -#. TRANSLATORS: it's a standalone boolean value, -#. opposite of "true". -#: grub-core/commands/file.c:675 grub-core/commands/i386/cmostest.c:63 -#: grub-core/commands/i386/cpuid.c:71 grub-core/commands/keystatus.c:83 -#: grub-core/commands/keystatus.c:87 grub-core/commands/keystatus.c:96 -#: grub-core/commands/test.c:436 grub-core/commands/true.c:39 -#: grub-core/script/execute.c:247 grub-core/script/execute.c:1039 -msgid "false" -msgstr "" - -#: grub-core/commands/file.c:684 -#, fuzzy -msgid "OPTIONS FILE" -msgstr "[OPTIONS] DISK" - -#: grub-core/commands/file.c:685 -msgid "Check if FILE is of specified type." -msgstr "" - -#. TRANSLATORS: It means that the specified partition e.g. -#. hd0,msdos1=/dev/sda1 doesn't exist. -#: grub-core/commands/gptsync.c:140 grub-core/kern/disk.c:258 -msgid "no such partition" -msgstr "" - -#: grub-core/commands/gptsync.c:240 -#, c-format -msgid "New MBR is written to `%s'\n" -msgstr "" - -#: grub-core/commands/gptsync.c:252 -msgid "DEVICE [PARTITION[+/-[TYPE]]] ..." -msgstr "DEVICE [PARTITION[+/-[TYPE]]] ..." - -#. TRANSLATORS: MBR type is one-byte partition -#. type id. -#: grub-core/commands/gptsync.c:255 -msgid "" -"Fill hybrid MBR of GPT drive DEVICE. Specified partitions will be a part of " -"hybrid MBR. Up to 3 partitions are allowed. TYPE is an MBR type. + means " -"that partition is active. Only one partition can be active." -msgstr "" -"å¡«å…¥ GPT è£ç½® DEVICE 的混åˆå¼ MBRã€‚æŒ‡å®šçš„åˆ†å‰²å€æœƒæˆç‚ºæ··åˆå¼ MBR 的一部分。最" -"多å…許 3 個分割å€ã€‚TYPE 為 MBR 類型。+ 代表分割å€ç‚º active,僅有一個分割å€èƒ½" -"有 active 標籤。" - -#: grub-core/commands/halt.c:40 -msgid "" -"Halts the computer. This command does not work on all firmware " -"implementations." -msgstr "é—œé–‰é›»è…¦ã€‚é€™å€‹æŒ‡ä»¤ä¸æ˜¯å°æ‰€æœ‰çš„韌體實作都有用。" - -#: grub-core/commands/hashsum.c:32 -msgid "Specify hash to use." -msgstr "指定è¦ä½¿ç”¨çš„雜湊。" - -#: grub-core/commands/hashsum.c:32 -msgid "HASH" -msgstr "HASH" - -#: grub-core/commands/hashsum.c:33 -msgid "Check hashes of files with hash list FILE." -msgstr "" - -#: grub-core/commands/hashsum.c:35 -msgid "Base directory for hash list." -msgstr "雜湊清單的基礎目錄。" - -#. TRANSLATORS: platform here isn't identifier. It can be translated. -#: grub-core/commands/hashsum.c:35 grub-core/commands/ls.c:150 -#: grub-core/commands/macbless.c:226 grub-core/commands/syslinuxcfg.c:51 -#: grub-core/commands/syslinuxcfg.c:54 grub-core/kern/emu/main.c:106 -#: include/grub/util/install.h:50 include/grub/util/install.h:53 -#: include/grub/util/install.h:56 include/grub/util/install.h:59 -#: util/grub-install.c:250 util/grub-install.c:252 util/grub-install.c:297 -#: util/grub-install.c:299 util/grub-mkimage.c:64 util/grub-mkimage.c:67 -#: util/grub-mknetdir.c:46 util/grub-mknetdir.c:48 util/grub-mkrescue.c:99 -#: util/grub-setup.c:82 util/grub-syslinux2cfg.c:63 util/grub-syslinux2cfg.c:65 -#: util/grub-syslinux2cfg.c:67 util/grub-syslinux2cfg.c:71 -msgid "DIR" -msgstr "DIR" - -#: grub-core/commands/hashsum.c:37 -msgid "Don't stop after first error." -msgstr "在第一個錯誤後ä¸è¦åœæ­¢ã€‚" - -#: grub-core/commands/hashsum.c:38 -msgid "Uncompress file before checksumming." -msgstr "åœ¨è™•ç†æ ¡é©—計算碼å‰è§£å£“縮檔案。" - -#: grub-core/commands/hashsum.c:163 -#, c-format -msgid "%s: READ ERROR\n" -msgstr "" - -#: grub-core/commands/hashsum.c:177 -#, c-format -msgid "%s: HASH MISMATCH\n" -msgstr "" - -#: grub-core/commands/hashsum.c:188 -#, c-format -msgid "%s: OK\n" -msgstr "" - -#: grub-core/commands/hashsum.c:282 -#, fuzzy -msgid "-h HASH [-c FILE [-p PREFIX]] [FILE1 [FILE2 ...]]" -msgstr "[-c FILE [-p PREFIX]] [FILE1 [FILE2 ...]]" - -#. TRANSLATORS: "hash checksum" is just to -#. be a bit more precise, you can treat it as -#. just "hash". -#: grub-core/commands/hashsum.c:287 grub-core/commands/hashsum.c:292 -#: grub-core/commands/hashsum.c:297 grub-core/commands/hashsum.c:302 -#: grub-core/commands/hashsum.c:307 grub-core/commands/hashsum.c:313 -msgid "Compute or check hash checksum." -msgstr "計算或檢查雜湊校驗計算碼。" - -#: grub-core/commands/hashsum.c:290 grub-core/commands/hashsum.c:295 -#: grub-core/commands/hashsum.c:300 grub-core/commands/hashsum.c:305 -#: grub-core/commands/hashsum.c:311 -msgid "[-c FILE [-p PREFIX]] [FILE1 [FILE2 ...]]" -msgstr "[-c FILE [-p PREFIX]] [FILE1 [FILE2 ...]]" - -#: grub-core/commands/hdparm.c:33 -msgid "" -"Set Advanced Power Management\n" -"(1=low, ..., 254=high, 255=off)." -msgstr "" -"設定進階能æºç®¡ç†\n" -"(1=低,...254=高,255=é—œ)。" - -#: grub-core/commands/hdparm.c:36 -#, fuzzy -msgid "Display power mode." -msgstr "æª¢æŸ¥èƒ½æºæ¨¡å¼ã€‚" - -#: grub-core/commands/hdparm.c:37 -msgid "Freeze ATA security settings until reset." -msgstr "å‡çµ ATA 安全設定直至é‡è¨­ç‚ºæ­¢ã€‚" - -#: grub-core/commands/hdparm.c:39 -#, fuzzy -msgid "Display SMART health status." -msgstr "檢查 SMART å¥åº·ç‹€æ…‹ã€‚" - -#: grub-core/commands/hdparm.c:40 -msgid "" -"Set Automatic Acoustic Management\n" -"(0=off, 128=quiet, ..., 254=fast)." -msgstr "" -"設定自動è½è¦ºç®¡ç†\n" -"(0=關,128=安éœï¼Œ...254=å¿«)。" - -#: grub-core/commands/hdparm.c:43 -msgid "" -"Set standby timeout\n" -"(0=off, 1=5s, 2=10s, ..., 240=20m, 241=30m, ...)." -msgstr "" -"設定待機逾時期\n" -"(0=關,1=5秒,2=10秒,...240=20分,241=30分...)。" - -#: grub-core/commands/hdparm.c:46 -msgid "Set drive to standby mode." -msgstr "設定è£ç½®ç‚ºå¾…機模å¼ã€‚" - -#: grub-core/commands/hdparm.c:47 -msgid "Set drive to sleep mode." -msgstr "設定è£ç½®ç‚ºç¡çœ æ¨¡å¼ã€‚" - -#: grub-core/commands/hdparm.c:48 -msgid "Print drive identity and settings." -msgstr "列å°è£ç½®è­˜åˆ¥èˆ‡è¨­å®šã€‚" - -#: grub-core/commands/hdparm.c:50 -#, fuzzy -msgid "Show raw contents of ATA IDENTIFY sector." -msgstr "å‚¾å° ATA IDENTIFY ç£å€å…§å®¹ã€‚" - -#: grub-core/commands/hdparm.c:52 -msgid "Disable/enable SMART (0/1)." -msgstr "åœç”¨/啟用 SMART (0/1)。" - -#: grub-core/commands/hdparm.c:53 -msgid "Do not print messages." -msgstr "ä¸è¦åˆ—å°è¨Šæ¯ã€‚" - -#: grub-core/commands/hdparm.c:286 grub-core/commands/i386/rdmsr.c:68 -#: grub-core/commands/iorw.c:47 grub-core/commands/legacycfg.c:760 -#: grub-core/commands/legacycfg.c:812 grub-core/commands/macbless.c:190 -#: grub-core/commands/memrw.c:47 grub-core/commands/pgp.c:738 -#: grub-core/commands/pgp.c:792 grub-core/commands/search.c:304 -#: grub-core/commands/search_wrap.c:179 grub-core/commands/setpci.c:243 -#: grub-core/commands/sleep.c:71 grub-core/fs/zfs/zfsinfo.c:279 -#: grub-core/fs/zfs/zfsinfo.c:358 grub-core/gettext/gettext.c:492 -#: grub-core/kern/corecmd.c:65 grub-core/kern/corecmd.c:79 -#: grub-core/mmap/mmap.c:430 grub-core/net/dns.c:713 grub-core/net/dns.c:745 -#: grub-core/net/net.c:694 grub-core/net/net.c:1052 -#: grub-core/normal/context.c:194 grub-core/script/execute.c:131 -#: grub-core/term/gfxterm_background.c:136 -msgid "one argument expected" -msgstr "" - -#: grub-core/commands/hdparm.c:440 -msgid "[OPTIONS] DISK" -msgstr "[OPTIONS] DISK" - -#: grub-core/commands/hdparm.c:441 -msgid "Get/set ATA disk parameters." -msgstr "å–å¾—/設定 ATA ç£ç¢Ÿåƒæ•¸ã€‚" - -#: grub-core/commands/help.c:132 grub-core/lib/arg.c:109 -#: grub-core/lib/gnulib/argp-help.c:1616 -msgid "Usage:" -msgstr "用法:" - -#: grub-core/commands/help.c:146 -msgid "[PATTERN ...]" -msgstr "[PATTERN ...]" - -#: grub-core/commands/help.c:147 -msgid "Show a help message." -msgstr "顯示幫助訊æ¯ã€‚" - -#: grub-core/commands/hexdump.c:31 -msgid "Skip offset bytes from the beginning of file." -msgstr "è·³éŽæª”案開頭的åç§»ä½å…ƒçµ„。" - -#: grub-core/commands/hexdump.c:33 -msgid "Read only LENGTH bytes." -msgstr "åƒ…è®€å– LENGTH ä½å…ƒçµ„。" - -#: grub-core/commands/hexdump.c:125 -msgid "[OPTIONS] FILE_OR_DEVICE" -msgstr "[OPTIONS] FILE_OR_DEVICE" - -#: grub-core/commands/hexdump.c:126 -#, fuzzy -msgid "Show raw contents of a file or memory." -msgstr "傾尿ª”案或記憶體的內容。" - -#: grub-core/commands/i386/cmosdump.c:58 -msgid "Show raw dump of the CMOS contents." -msgstr "" - -#: grub-core/commands/i386/cmostest.c:108 -#: grub-core/commands/i386/cmostest.c:111 -#: grub-core/commands/i386/cmostest.c:114 -msgid "BYTE:BIT" -msgstr "" - -#: grub-core/commands/i386/cmostest.c:109 -msgid "Test bit at BYTE:BIT in CMOS." -msgstr "" - -#: grub-core/commands/i386/cmostest.c:112 -msgid "Clear bit at BYTE:BIT in CMOS." -msgstr "" - -#. TRANSLATORS: A bit may be either set (1) or clear (0). -#: grub-core/commands/i386/cmostest.c:116 -msgid "Set bit at BYTE:BIT in CMOS." -msgstr "" - -#: grub-core/commands/i386/coreboot/cb_timestamps.c:120 -msgid "Show coreboot boot time statistics." -msgstr "" - -#: grub-core/commands/i386/coreboot/cbls.c:137 -#, fuzzy -msgid "List coreboot tables." -msgstr "列出目å‰çš„變數。" - -#. TRANSLATORS: "(default)" at the end means that this option is used if -#. no argument is specified. -#: grub-core/commands/i386/cpuid.c:36 -#, fuzzy -msgid "Check if CPU supports 64-bit (long) mode (default)." -msgstr "檢查 long æ¨¡å¼æ——幟 (é è¨­)。" - -#: grub-core/commands/i386/cpuid.c:37 -msgid "Check if CPU supports Physical Address Extension." -msgstr "" - -#: grub-core/commands/i386/cpuid.c:119 -msgid "Check for CPU features." -msgstr "檢查 CPU 功能。" - -#. TRANSLATORS: In this file "mapping" refers to a change GRUB makes so if -#. your language doesn't have an equivalent of "mapping" you can -#. use the word like "rerouting". -#. -#: grub-core/commands/i386/pc/drivemap.c:43 -msgid "Show the current mappings." -msgstr "顯示目å‰çš„æ˜ å°„關係。" - -#: grub-core/commands/i386/pc/drivemap.c:44 -msgid "Reset all mappings to the default values." -msgstr "將所有映射關係é‡è¨­ç‚ºé è¨­å€¼ã€‚" - -#: grub-core/commands/i386/pc/drivemap.c:45 -msgid "Perform both direct and reverse mappings." -msgstr "執行直接映射關係以åŠå轉映射關係。" - -#: grub-core/commands/i386/pc/drivemap.c:184 -msgid "No drives have been remapped" -msgstr "" - -#. TRANSLATORS: This is the header of mapping list. -#. On the left is how OS will see the disks and -#. on the right current GRUB vision. -#: grub-core/commands/i386/pc/drivemap.c:191 -msgid "OS disk #num ------> GRUB/BIOS device" -msgstr "" - -#: grub-core/commands/i386/pc/drivemap.c:413 -msgid "-l | -r | [-s] grubdev osdisk." -msgstr "-l | -r | [-s] grubdev osdisk。" - -#: grub-core/commands/i386/pc/drivemap.c:414 -msgid "Manage the BIOS drive mappings." -msgstr "ç®¡ç† BIOS è£ç½®æ˜ å°„關係。" - -#: grub-core/commands/i386/pc/halt.c:31 -msgid "Do not use APM to halt the computer." -msgstr "ä¸è¦ä½¿ç”¨ APM 來關閉電腦。" - -#: grub-core/commands/i386/pc/halt.c:119 -msgid "Halt the system, if possible using APM." -msgstr "關閉系統,如果å¯èƒ½çš„話使用 APM。" - -#: grub-core/commands/i386/pc/lsapm.c:75 -msgid "no APM found" -msgstr "" - -#: grub-core/commands/i386/pc/lsapm.c:77 -#, c-format -msgid "" -"Version %u.%u\n" -"32-bit CS = 0x%x, len = 0x%x, offset = 0x%x\n" -"16-bit CS = 0x%x, len = 0x%x\n" -"DS = 0x%x, len = 0x%x\n" -msgstr "" - -#: grub-core/commands/i386/pc/lsapm.c:86 -msgid "16-bit protected interface supported\n" -msgstr "" - -#: grub-core/commands/i386/pc/lsapm.c:87 -msgid "16-bit protected interface unsupported\n" -msgstr "" - -#: grub-core/commands/i386/pc/lsapm.c:89 -msgid "32-bit protected interface supported\n" -msgstr "" - -#: grub-core/commands/i386/pc/lsapm.c:90 -msgid "32-bit protected interface unsupported\n" -msgstr "" - -#: grub-core/commands/i386/pc/lsapm.c:92 -msgid "CPU Idle slows down processor\n" -msgstr "" - -#: grub-core/commands/i386/pc/lsapm.c:93 -msgid "CPU Idle doesn't slow down processor\n" -msgstr "" - -#: grub-core/commands/i386/pc/lsapm.c:95 -msgid "APM disabled\n" -msgstr "" - -#: grub-core/commands/i386/pc/lsapm.c:95 -msgid "APM enabled\n" -msgstr "" - -#: grub-core/commands/i386/pc/lsapm.c:97 -msgid "APM disengaged\n" -msgstr "" - -#: grub-core/commands/i386/pc/lsapm.c:97 -msgid "APM engaged\n" -msgstr "" - -#: grub-core/commands/i386/pc/lsapm.c:107 -msgid "Show APM information." -msgstr "顯示 APM 資訊。" - -#. TRANSLATORS: It's musical notes, not the notes -#. you take. Play command expects arguments which can -#. be either a filename or tempo+notes. -#. This error happens if none is specified. -#: grub-core/commands/i386/pc/play.c:88 -msgid "filename or tempo and notes expected" -msgstr "" - -#: grub-core/commands/i386/pc/play.c:113 grub-core/commands/i386/pc/play.c:144 -#, fuzzy, c-format -msgid "Invalid tempo in %s" -msgstr "無效指令 %s。\n" - -#: grub-core/commands/i386/pc/play.c:151 grub-core/commands/macbless.c:172 -#: grub-core/fs/archelp.c:260 grub-core/fs/bfs.c:621 grub-core/fs/bfs.c:704 -#: grub-core/fs/btrfs.c:1726 grub-core/fs/btrfs.c:1755 -#: grub-core/fs/btrfs.c:1799 grub-core/fs/btrfs.c:1882 -#: grub-core/fs/btrfs.c:1906 grub-core/fs/fshelp.c:257 grub-core/fs/jfs.c:696 -#: grub-core/fs/minix.c:426 grub-core/fs/ufs.c:544 grub-core/fs/zfs/zfs.c:2083 -#: grub-core/fs/zfs/zfs.c:2095 grub-core/fs/zfs/zfs.c:2301 -#: grub-core/net/http.c:120 -#, c-format -msgid "file `%s' not found" -msgstr "" - -#: grub-core/commands/i386/pc/play.c:162 grub-core/commands/i386/pc/play.c:171 -#: grub-core/kern/misc.c:419 grub-core/script/execute.c:138 -#: grub-core/script/execute.c:244 -msgid "unrecognized number" -msgstr "" - -#: grub-core/commands/i386/pc/play.c:190 -msgid "FILE | TEMPO [PITCH1 DURATION1] [PITCH2 DURATION2] ... " -msgstr "FILE | TEMPO [PITCH1 DURATION1] [PITCH2 DURATION2] ... " - -#: grub-core/commands/i386/pc/play.c:191 -msgid "Play a tune." -msgstr "播放音調。" - -#: grub-core/commands/i386/pc/sendkey.c:39 -msgid "set numlock mode" -msgstr "" - -#: grub-core/commands/i386/pc/sendkey.c:40 -#, fuzzy -msgid "set capslock mode" -msgstr "æ’入模組。" - -#: grub-core/commands/i386/pc/sendkey.c:41 -msgid "set scrolllock mode" -msgstr "" - -#: grub-core/commands/i386/pc/sendkey.c:42 -#, fuzzy -msgid "set insert mode" -msgstr "æ’入模組。" - -#: grub-core/commands/i386/pc/sendkey.c:43 -#, fuzzy -msgid "set pause mode" -msgstr "æ’入模組。" - -#: grub-core/commands/i386/pc/sendkey.c:44 -msgid "press left shift" -msgstr "" - -#: grub-core/commands/i386/pc/sendkey.c:45 -msgid "press right shift" -msgstr "" - -#: grub-core/commands/i386/pc/sendkey.c:46 -msgid "press SysRq" -msgstr "" - -#: grub-core/commands/i386/pc/sendkey.c:47 -msgid "press NumLock key" -msgstr "" - -#: grub-core/commands/i386/pc/sendkey.c:48 -msgid "press CapsLock key" -msgstr "" - -#: grub-core/commands/i386/pc/sendkey.c:49 -msgid "press ScrollLock key" -msgstr "" - -#: grub-core/commands/i386/pc/sendkey.c:50 -msgid "press Insert key" -msgstr "" - -#: grub-core/commands/i386/pc/sendkey.c:51 -msgid "press left alt" -msgstr "" - -#: grub-core/commands/i386/pc/sendkey.c:52 -msgid "press right alt" -msgstr "" - -#: grub-core/commands/i386/pc/sendkey.c:53 -msgid "press left ctrl" -msgstr "" - -#: grub-core/commands/i386/pc/sendkey.c:54 -msgid "press right ctrl" -msgstr "" - -#: grub-core/commands/i386/pc/sendkey.c:55 -msgid "don't update LED state" -msgstr "" - -#: grub-core/commands/i386/pc/sendkey.c:372 -msgid "[KEYSTROKE1] [KEYSTROKE2] ..." -msgstr "" - -#. TRANSLATORS: It can emulate multiple -#. keypresses. -#: grub-core/commands/i386/pc/sendkey.c:375 -msgid "Emulate a keystroke sequence" -msgstr "" - -#: grub-core/commands/i386/rdmsr.c:37 grub-core/commands/iorw.c:34 -#: grub-core/commands/memrw.c:33 grub-core/commands/setpci.c:73 -msgid "Save read value into variable VARNAME." -msgstr "儲存讀å–值至變數 VARNAME。" - -#: grub-core/commands/i386/rdmsr.c:38 grub-core/commands/iorw.c:35 -#: grub-core/commands/memrw.c:34 grub-core/commands/probe.c:40 -#: grub-core/commands/search_wrap.c:40 grub-core/commands/setpci.c:74 -#: grub-core/commands/tr.c:32 -msgid "VARNAME" -msgstr "VARNAME" - -#: grub-core/commands/i386/rdmsr.c:55 grub-core/commands/i386/rdmsr.c:60 -#: grub-core/commands/i386/rdmsr.c:65 grub-core/commands/i386/wrmsr.c:47 -#: grub-core/commands/i386/wrmsr.c:52 grub-core/commands/i386/wrmsr.c:57 -msgid "unsupported instruction" -msgstr "" - -#: grub-core/commands/i386/rdmsr.c:77 grub-core/commands/i386/wrmsr.c:69 -#: grub-core/commands/i386/wrmsr.c:77 grub-core/net/dns.c:727 -msgid "invalid argument" -msgstr "" - -#: grub-core/commands/i386/rdmsr.c:94 grub-core/commands/memrw.c:125 -#: grub-core/commands/memrw.c:129 grub-core/commands/memrw.c:133 -msgid "ADDR" -msgstr "ADDR" - -#: grub-core/commands/i386/rdmsr.c:95 -msgid "Read a CPU model specific register." -msgstr "" - -#: grub-core/commands/i386/wrmsr.c:86 -#, fuzzy -msgid "ADDR VALUE" -msgstr "ADDR VALUE [MASK]" - -#: grub-core/commands/i386/wrmsr.c:87 -msgid "Write a value to a CPU model specific register." -msgstr "" - -#: grub-core/commands/ieee1275/suspend.c:34 -msgid "Run `go' to resume GRUB." -msgstr "" - -#: grub-core/commands/ieee1275/suspend.c:45 -#, fuzzy -msgid "Return to IEEE1275 prompt." -msgstr "返回 Open Firmware æç¤ºã€‚" - -#: grub-core/commands/iorw.c:123 grub-core/commands/iorw.c:127 -#: grub-core/commands/iorw.c:131 grub-core/gdb/gdb.c:79 -msgid "PORT" -msgstr "PORT" - -#: grub-core/commands/iorw.c:123 -#, fuzzy -msgid "Read 8-bit value from PORT." -msgstr "從 PORT 讀å–ä½å…ƒçµ„。" - -#: grub-core/commands/iorw.c:127 -#, fuzzy -msgid "Read 16-bit value from PORT." -msgstr "從 PORT 讀å–ä½å…ƒçµ„。" - -#: grub-core/commands/iorw.c:131 -#, fuzzy -msgid "Read 32-bit value from PORT." -msgstr "從 PORT 讀å–ä½å…ƒçµ„。" - -#: grub-core/commands/iorw.c:135 grub-core/commands/iorw.c:139 -msgid "PORT VALUE [MASK]" -msgstr "PORT VALUE [MASK]" - -#: grub-core/commands/iorw.c:136 -#, fuzzy -msgid "Write 8-bit VALUE to PORT." -msgstr "å°‡ä½å…ƒçµ„ VALUE 寫入 PORT。" - -#: grub-core/commands/iorw.c:140 -#, fuzzy -msgid "Write 16-bit VALUE to PORT." -msgstr "å°‡ä½å…ƒçµ„ VALUE 寫入 PORT。" - -#: grub-core/commands/iorw.c:143 grub-core/commands/memrw.c:137 -#: grub-core/commands/memrw.c:141 grub-core/commands/memrw.c:145 -msgid "ADDR VALUE [MASK]" -msgstr "ADDR VALUE [MASK]" - -#: grub-core/commands/iorw.c:144 -#, fuzzy -msgid "Write 32-bit VALUE to PORT." -msgstr "å°‡ä½å…ƒçµ„ VALUE 寫入 PORT。" - -#: grub-core/commands/keylayouts.c:215 grub-core/commands/loadenv.c:61 -#: grub-core/commands/nativedisk.c:189 grub-core/efiemu/main.c:235 -#: grub-core/font/font.c:428 grub-core/gfxmenu/gfxmenu.c:63 -#: grub-core/kern/device.c:42 grub-core/kern/dl.c:740 -#, c-format -msgid "variable `%s' isn't set" -msgstr "" - -#: grub-core/commands/keylayouts.c:301 -msgid "Load a keyboard layout." -msgstr "載入éµç›¤é…置。" - -#. TRANSLATORS: "Check" in a sense that if this key is pressed then -#. "true" is returned, otherwise "false". -#: grub-core/commands/keystatus.c:32 -msgid "Check Shift key." -msgstr "檢查 Shift éµã€‚" - -#: grub-core/commands/keystatus.c:33 -msgid "Check Control key." -msgstr "檢查 Ctrl éµã€‚" - -#: grub-core/commands/keystatus.c:34 -msgid "Check Alt key." -msgstr "檢查 Alt éµã€‚" - -#. TRANSLATORS: there are 3 modifiers. -#: grub-core/commands/keystatus.c:106 -msgid "Check key modifier status." -msgstr "檢查按éµçš„修飾éµç‹€æ…‹ã€‚" - -#: grub-core/commands/legacycfg.c:512 grub-core/commands/legacycfg.c:526 -#: grub-core/commands/legacycfg.c:546 grub-core/commands/legacycfg.c:559 -#: grub-core/commands/time.c:43 grub-core/script/function.c:109 -#: util/grub-file.c:100 util/grub-fstest.c:57 util/grub-mount.c:69 -#, fuzzy, c-format -msgid "can't find command `%s'" -msgstr "無法尋找指令 %s" - -#: grub-core/commands/legacycfg.c:813 grub-core/normal/auth.c:225 -#: util/grub-mkpasswd-pbkdf2.c:139 -msgid "Enter password: " -msgstr "輸入密碼:" - -#. TRANSLATORS: "legacy config" means -#. "config as used by grub-legacy". -#: grub-core/commands/legacycfg.c:837 -msgid "Parse legacy config in same context" -msgstr "æ–¼ç›¸åŒæƒ…境解æžèˆŠå¼çµ„æ…‹" - -#: grub-core/commands/legacycfg.c:842 -msgid "Parse legacy config in new context" -msgstr "於新情境解æžèˆŠå¼çµ„æ…‹" - -#: grub-core/commands/legacycfg.c:847 -#, fuzzy -msgid "Parse legacy config in same context taking only menu entries" -msgstr "æ–¼ç›¸åŒæƒ…境解æžèˆŠå¼çµ„æ…‹ï¼Œåƒ…æ“·å–æ¢ç›®" - -#: grub-core/commands/legacycfg.c:852 -#, fuzzy -msgid "Parse legacy config in new context taking only menu entries" -msgstr "於新情境解æžèˆŠå¼çµ„æ…‹ï¼Œåƒ…æ“·å–æ¢ç›®" - -#: grub-core/commands/legacycfg.c:856 -msgid "[--no-mem-option] [--type=TYPE] FILE [ARG ...]" -msgstr "[--no-mem-option] [--type=TYPE] FILE [ARG ...]" - -#: grub-core/commands/legacycfg.c:857 -#, fuzzy -msgid "Simulate grub-legacy `kernel' command" -msgstr "模擬 grub-legacy 內核指令" - -#: grub-core/commands/legacycfg.c:861 grub-core/commands/legacycfg.c:865 -msgid "FILE [ARG ...]" -msgstr "FILE [ARG ...]" - -#: grub-core/commands/legacycfg.c:862 -#, fuzzy -msgid "Simulate grub-legacy `initrd' command" -msgstr "模擬 grub-legacy initrd 指令" - -#: grub-core/commands/legacycfg.c:866 -#, fuzzy -msgid "Simulate grub-legacy `modulenounzip' command" -msgstr "模擬 grub-legacy modulenounzip 指令" - -#: grub-core/commands/legacycfg.c:870 grub-core/commands/legacycfg.c:875 -msgid "[--md5] PASSWD [FILE]" -msgstr "[--md5] PASSWD [FILE]" - -#: grub-core/commands/legacycfg.c:871 -#, fuzzy -msgid "Simulate grub-legacy `password' command" -msgstr "模擬 grub-legacy password 指令" - -#: grub-core/commands/legacycfg.c:876 -#, fuzzy -msgid "Simulate grub-legacy `password' command in menu entry mode" -msgstr "æ–¼é¸å–®æ¢ç›®æ¨¡å¼æ¨¡æ“¬ grub-legacy password 指令" - -#. TRANSLATORS: This option is used to override default filename -#. for loading and storing environment. -#: grub-core/commands/loadenv.c:37 -msgid "Specify filename." -msgstr "指定檔å。" - -#: grub-core/commands/loadenv.c:39 -msgid "Skip signature-checking of the environment file." -msgstr "" - -#: grub-core/commands/loadenv.c:451 -#, fuzzy -msgid "[-f FILE] [-s|--skip-sig] [variable_name_to_whitelist] [...]" -msgstr "[-f FILE] variable_name [...]" - -#: grub-core/commands/loadenv.c:452 -msgid "Load variables from environment block file." -msgstr "從環境å€å¡Šæª”載入變數。" - -#: grub-core/commands/loadenv.c:455 -msgid "[-f FILE]" -msgstr "[-f FILE]" - -#: grub-core/commands/loadenv.c:456 -msgid "List variables from environment block file." -msgstr "從環境å€å¡Šæª”列出變數。" - -#: grub-core/commands/loadenv.c:460 -msgid "[-f FILE] variable_name [...]" -msgstr "[-f FILE] variable_name [...]" - -#: grub-core/commands/loadenv.c:461 -msgid "Save variables to environment block file." -msgstr "儲存變數至環境å€å¡Šæª”。" - -#: grub-core/commands/ls.c:40 -msgid "Show a long list with more detailed information." -msgstr "顯示有更多詳細資訊的長清單。" - -#: grub-core/commands/ls.c:41 -msgid "Print sizes in a human readable format." -msgstr "以人類å¯ç†è§£çš„æ ¼å¼åˆ—å°å¤§å°ã€‚" - -#: grub-core/commands/ls.c:42 -msgid "List all files." -msgstr "列出所有檔案。" - -#: grub-core/commands/ls.c:73 -msgid "Network protocols:" -msgstr "" - -#: grub-core/commands/ls.c:295 -msgid "[-l|-h|-a] [FILE ...]" -msgstr "[-l|-h|-a] [FILE ...]" - -#: grub-core/commands/ls.c:296 -msgid "List devices and files." -msgstr "列出è£ç½®èˆ‡æª”案。" - -#: grub-core/commands/lsacpi.c:255 -#, fuzzy -msgid "Show version 1 tables only." -msgstr "僅顯示 v1 表。" - -#: grub-core/commands/lsacpi.c:256 -#, fuzzy -msgid "Show version 2 and version 3 tables only." -msgstr "僅顯示 v2 與 v3 表。" - -#: grub-core/commands/lsacpi.c:306 -msgid "Show ACPI information." -msgstr "顯示 ACPI 資訊。" - -#: grub-core/commands/lsmmap.c:31 -msgid "available RAM" -msgstr "" - -#: grub-core/commands/lsmmap.c:32 -msgid "reserved RAM" -msgstr "" - -#. TRANSLATORS: this refers to memory where ACPI tables are stored -#. and which can be used by OS once it loads ACPI tables. -#: grub-core/commands/lsmmap.c:35 -msgid "ACPI reclaimable RAM" -msgstr "" - -#. TRANSLATORS: this refers to memory which ACPI-compliant OS -#. is required to save accross hibernations. -#: grub-core/commands/lsmmap.c:38 -msgid "ACPI non-volatile storage RAM" -msgstr "" - -#: grub-core/commands/lsmmap.c:39 -msgid "faulty RAM (BadRAM)" -msgstr "" - -#: grub-core/commands/lsmmap.c:40 -msgid "persistent RAM" -msgstr "" - -#: grub-core/commands/lsmmap.c:41 -msgid "persistent RAM (legacy)" -msgstr "" - -#: grub-core/commands/lsmmap.c:42 -msgid "RAM holding coreboot tables" -msgstr "" - -#: grub-core/commands/lsmmap.c:43 -msgid "RAM holding firmware code" -msgstr "" - -#: grub-core/commands/lsmmap.c:52 -#, c-format -msgid "base_addr = 0x%llx, length = 0x%llx, %s\n" -msgstr "" - -#: grub-core/commands/lsmmap.c:55 -#, c-format -msgid "base_addr = 0x%llx, length = 0x%llx, type = 0x%x\n" -msgstr "" - -#: grub-core/commands/lsmmap.c:79 -msgid "List memory map provided by firmware." -msgstr "列出韌體æä¾›çš„記憶體映射。" - -#: grub-core/commands/lspci.c:232 -msgid "List PCI devices." -msgstr "列出 PCI è£ç½®ã€‚" - -#: grub-core/commands/macbless.c:224 -msgid "Bless FILE of HFS or HFS+ partition for intel macs." -msgstr "" - -#: grub-core/commands/macbless.c:228 -msgid "Bless DIR of HFS or HFS+ partition for PPC macs." -msgstr "" - -#: grub-core/commands/memrw.c:125 -#, fuzzy -msgid "Read 8-bit value from ADDR." -msgstr "從 ADDR 讀å–ä½å…ƒçµ„。" - -#: grub-core/commands/memrw.c:129 -#, fuzzy -msgid "Read 16-bit value from ADDR." -msgstr "從 ADDR 讀å–ä½å…ƒçµ„。" - -#: grub-core/commands/memrw.c:133 -#, fuzzy -msgid "Read 32-bit value from ADDR." -msgstr "從 ADDR 讀å–ä½å…ƒçµ„。" - -#: grub-core/commands/memrw.c:138 -#, fuzzy -msgid "Write 8-bit VALUE to ADDR." -msgstr "å°‡ä½å…ƒçµ„ VALUE 寫入 ADDR。" - -#: grub-core/commands/memrw.c:142 -#, fuzzy -msgid "Write 16-bit VALUE to ADDR." -msgstr "å°‡ä½å…ƒçµ„ VALUE 寫入 ADDR。" - -#: grub-core/commands/memrw.c:146 -#, fuzzy -msgid "Write 32-bit VALUE to ADDR." -msgstr "å°‡ä½å…ƒçµ„ VALUE 寫入 ADDR。" - -#: grub-core/commands/menuentry.c:31 -msgid "Menu entry type." -msgstr "é¸å–®æ¢ç›®é¡žåž‹ã€‚" - -#: grub-core/commands/menuentry.c:31 grub-core/commands/menuentry.c:38 -#: grub-core/commands/menuentry.c:39 grub-core/gettext/gettext.c:520 -#: util/grub-fstest.c:520 util/grub-install.c:291 util/grub-install.c:304 -#: util/grub-mknetdir.c:51 util/grub-mkrescue.c:109 util/grub-mkrescue.c:110 -#: util/grub-mount.c:453 util/grub-render-label.c:65 -msgid "STRING" -msgstr "STRING" - -#: grub-core/commands/menuentry.c:33 -#, fuzzy -msgid "List of users allowed to boot this entry." -msgstr "使用者å¯ä»¥è—‰ç”±æ­¤æ¢ç›®é–‹æ©Ÿã€‚" - -#: grub-core/commands/menuentry.c:33 -msgid "USERNAME[,USERNAME]" -msgstr "" - -#: grub-core/commands/menuentry.c:36 -#, fuzzy -msgid "Keyboard key to quickly boot this entry." -msgstr "æ­¤æ¢ç›®çš„éµç›¤æŒ‰éµã€‚" - -#: grub-core/commands/menuentry.c:36 -msgid "KEYBOARD_KEY" -msgstr "" - -#: grub-core/commands/menuentry.c:38 -msgid "Use STRING as menu entry body." -msgstr "" - -#: grub-core/commands/menuentry.c:39 -#, fuzzy -msgid "Menu entry identifier." -msgstr "é¸å–®æ¢ç›®é¡žåž‹ã€‚" - -#. TRANSLATORS: menu entry can either be bootable by anyone or only by -#. handful of users. By default when security is active only superusers can -#. boot a given menu entry. With --unrestricted (this option) -#. anyone can boot it. -#: grub-core/commands/menuentry.c:44 -msgid "This entry can be booted by any user." -msgstr "" - -#: grub-core/commands/menuentry.c:323 grub-core/commands/menuentry.c:328 -#: grub-core/tests/test_blockarg.c:46 -msgid "BLOCK" -msgstr "BLOCK" - -#: grub-core/commands/menuentry.c:323 -#, fuzzy -msgid "Define a menu entry." -msgstr "定義é¸å–®æ¢ç›®ã€‚" - -#: grub-core/commands/menuentry.c:328 -msgid "Define a submenu." -msgstr "定義å­é¸å–®ã€‚" - -#. TRANSLATORS: this is module list header. Name -#. is module name, Ref Count is a reference counter -#. (how many modules or open descriptors use it). -#. Dependencies are the other modules it uses. -#. -#: grub-core/commands/minicmd.c:162 -msgid "Name\tRef Count\tDependencies\n" -msgstr "" - -#: grub-core/commands/minicmd.c:201 -msgid "Show this message." -msgstr "顯示這個訊æ¯ã€‚" - -#: grub-core/commands/minicmd.c:204 -msgid "ADDR [SIZE]" -msgstr "" - -#: grub-core/commands/minicmd.c:204 -#, fuzzy -msgid "Show memory contents." -msgstr "顯示檔案的內容。" - -#: grub-core/commands/minicmd.c:207 grub-core/kern/corecmd.c:188 -#: util/grub-install.c:275 -msgid "MODULE" -msgstr "MODULE" - -#: grub-core/commands/minicmd.c:207 -msgid "Remove a module." -msgstr "移除模組。" - -#: grub-core/commands/minicmd.c:210 -msgid "Show loaded modules." -msgstr "顯示載入的模組。" - -#: grub-core/commands/minicmd.c:213 -msgid "Exit from GRUB." -msgstr "離開 GRUB。" - -#: grub-core/commands/mips/loongson/lsspd.c:42 -msgid "No CS5536 found" -msgstr "" - -#: grub-core/commands/mips/loongson/lsspd.c:45 -#, c-format -msgid "CS5536 at %d:%d.%d\n" -msgstr "" - -#. TRANSLATORS: System management bus is often used to access components like -#. RAM (info only, not data) or batteries. I/O space is where in memory -#. its ports are. -#: grub-core/commands/mips/loongson/lsspd.c:55 -#, c-format -msgid "System management bus controller I/O space is at 0x%x\n" -msgstr "" - -#. TRANSLATORS: it's shown in a report in a way -#. like number 1: ... number 2: ... -#. -#: grub-core/commands/mips/loongson/lsspd.c:66 -#, c-format -msgid "RAM slot number %d\n" -msgstr "" - -#: grub-core/commands/mips/loongson/lsspd.c:73 -#, c-format -msgid "Written SPD bytes: %d B.\n" -msgstr "" - -#: grub-core/commands/mips/loongson/lsspd.c:74 -#, c-format -msgid "Total flash size: %d B.\n" -msgstr "" - -#: grub-core/commands/mips/loongson/lsspd.c:79 -msgid "Memory type: DDR2." -msgstr "" - -#: grub-core/commands/mips/loongson/lsspd.c:83 -#, fuzzy, c-format -msgid "Part no: %s.\n" -msgstr "錯誤:%s。\n" - -#: grub-core/commands/mips/loongson/lsspd.c:86 -msgid "Memory type: Unknown." -msgstr "" - -#: grub-core/commands/mips/loongson/lsspd.c:97 -#, fuzzy -msgid "Print Memory information." -msgstr "顯示 APM 資訊。" - -#: grub-core/commands/nativedisk.c:118 grub-core/commands/probe.c:118 -#: grub-core/commands/probe.c:124 util/grub-probe.c:450 -#, c-format -msgid "%s does not support UUIDs" -msgstr "" - -#: grub-core/commands/nativedisk.c:325 -msgid "[MODULE1 MODULE2 ...]" -msgstr "" - -#: grub-core/commands/nativedisk.c:326 -msgid "" -"Switch to native disk drivers. If no modules are specified default set (pata," -"ahci,usbms,ohci,uhci,ehci) is used" -msgstr "" - -#: grub-core/commands/parttool.c:40 -msgid "" -"Perform COMMANDS on partition.\n" -"Use `parttool PARTITION help' for the list of available commands." -msgstr "" - -#: grub-core/commands/parttool.c:123 -msgid "=VAL" -msgstr "" - -#: grub-core/commands/parttool.c:136 -#, c-format -msgid "Sorry, no parttool is available for %s\n" -msgstr "" - -#: grub-core/commands/parttool.c:288 grub-core/lib/arg.c:285 -#: grub-core/lib/arg.c:351 -#, fuzzy, c-format -msgid "unknown argument `%s'" -msgstr "未知的é¡å¤–引數「%sã€ã€‚\n" - -#: grub-core/commands/parttool.c:344 -msgid "PARTITION COMMANDS" -msgstr "PARTITION COMMANDS" - -#: grub-core/commands/password.c:85 -msgid "USER PASSWORD" -msgstr "USER PASSWORD" - -#: grub-core/commands/password.c:86 -msgid "Set user password (plaintext). Unrecommended and insecure." -msgstr "設定使用者密碼 (純文字)。ä¸å»ºè­°ä¸”ä¸å®‰å…¨ã€‚" - -#. TRANSLATORS: it means that the string which -#. was supposed to be a password hash doesn't -#. have a correct format, not to password -#. mismatch. -#: grub-core/commands/password_pbkdf2.c:98 -#: grub-core/commands/password_pbkdf2.c:115 -#: grub-core/commands/password_pbkdf2.c:123 -#: grub-core/commands/password_pbkdf2.c:150 -#: grub-core/commands/password_pbkdf2.c:179 -msgid "invalid PBKDF2 password" -msgstr "" - -#: grub-core/commands/password_pbkdf2.c:202 -msgid "USER PBKDF2_PASSWORD" -msgstr "USER PBKDF2_PASSWORD" - -#: grub-core/commands/password_pbkdf2.c:203 -msgid "Set user password (PBKDF2). " -msgstr "設定使用者密碼 (PBKDF2)。" - -#: grub-core/commands/pcidump.c:39 grub-core/commands/setpci.c:69 -msgid "Select device by vendor and device IDs." -msgstr "" - -#: grub-core/commands/pcidump.c:40 grub-core/commands/setpci.c:70 -msgid "[vendor]:[device]" -msgstr "" - -#: grub-core/commands/pcidump.c:41 grub-core/commands/setpci.c:71 -msgid "Select device by its position on the bus." -msgstr "" - -#: grub-core/commands/pcidump.c:42 grub-core/commands/setpci.c:72 -msgid "[bus]:[slot][.func]" -msgstr "" - -#: grub-core/commands/pcidump.c:109 grub-core/commands/pcidump.c:138 -#: grub-core/commands/setpci.c:183 grub-core/commands/setpci.c:214 -#: grub-core/fs/zfs/zfs.c:3794 grub-core/kern/emu/hostdisk.c:458 -#: grub-core/kern/emu/hostdisk.c:473 grub-core/kern/file.c:44 -#, c-format -msgid "missing `%c' symbol" -msgstr "" - -#: grub-core/commands/pcidump.c:168 -msgid "[-s POSITION] [-d DEVICE]" -msgstr "" - -#: grub-core/commands/pcidump.c:169 -msgid "Show raw dump of the PCI configuration space." -msgstr "" - -#: grub-core/commands/pgp.c:45 -msgid "Skip signature-checking of the public key file." -msgstr "" - -#. TRANSLATORS: it's about GNUPG signatures. -#: grub-core/commands/pgp.c:71 grub-core/commands/pgp.c:81 -#: grub-core/commands/pgp.c:86 grub-core/commands/pgp.c:96 -#: grub-core/commands/pgp.c:103 grub-core/commands/pgp.c:107 -#: grub-core/commands/pgp.c:114 grub-core/commands/pgp.c:119 -#: grub-core/commands/pgp.c:124 grub-core/commands/pgp.c:128 -#: grub-core/commands/pgp.c:268 grub-core/commands/pgp.c:276 -#: grub-core/commands/pgp.c:281 grub-core/commands/pgp.c:289 -#: grub-core/commands/pgp.c:320 grub-core/commands/pgp.c:327 -#: grub-core/commands/pgp.c:332 grub-core/commands/pgp.c:342 -#: grub-core/commands/pgp.c:468 grub-core/commands/pgp.c:471 -#: grub-core/commands/pgp.c:474 grub-core/commands/pgp.c:477 -#: grub-core/commands/pgp.c:484 grub-core/commands/pgp.c:490 -#: grub-core/commands/pgp.c:665 -msgid "bad signature" -msgstr "" - -#. TRANSLATORS: %08x is 32-bit key id. -#: grub-core/commands/pgp.c:636 grub-core/commands/pgp.c:812 -#, c-format -msgid "public key %08x not found" -msgstr "" - -#: grub-core/commands/pgp.c:651 grub-core/disk/diskfilter.c:772 -#: grub-core/disk/diskfilter.c:782 grub-core/fs/ntfs.c:404 -#: grub-core/fs/zfs/zfs.c:1933 grub-core/normal/menu.c:428 -#, c-format -msgid "module `%s' isn't loaded" -msgstr "" - -#: grub-core/commands/pgp.c:994 -msgid "[-s|--skip-sig] FILE SIGNATURE_FILE [PUBKEY_FILE]" -msgstr "" - -#: grub-core/commands/pgp.c:995 -msgid "Verify detached signature." -msgstr "" - -#: grub-core/commands/pgp.c:998 -msgid "[-s|--skip-sig] PUBKEY_FILE" -msgstr "" - -#: grub-core/commands/pgp.c:999 -msgid "Add PUBKEY_FILE to trusted keys." -msgstr "" - -#: grub-core/commands/pgp.c:1003 -msgid "Show the list of trusted keys." -msgstr "" - -#: grub-core/commands/pgp.c:1005 -msgid "PUBKEY_ID" -msgstr "" - -#: grub-core/commands/pgp.c:1006 -msgid "Remove PUBKEY_ID from trusted keys." -msgstr "" - -#: grub-core/commands/probe.c:40 grub-core/commands/tr.c:32 -msgid "Set a variable to return value." -msgstr "設定è¦å‚³å›žå€¼çš„變數。" - -#. TRANSLATORS: It's a driver that is currently in use to access -#. the diven disk. -#: grub-core/commands/probe.c:43 -msgid "Determine driver." -msgstr "判斷驅動程å¼ã€‚" - -#: grub-core/commands/probe.c:44 -msgid "Determine partition map type." -msgstr "åˆ¤æ–·åˆ†å‰²å°æ‡‰é¡žåž‹ã€‚" - -#: grub-core/commands/probe.c:45 -msgid "Determine filesystem type." -msgstr "判斷檔案系統類型。" - -#: grub-core/commands/probe.c:46 -msgid "Determine filesystem UUID." -msgstr "判斷檔案系統 UUID。" - -#: grub-core/commands/probe.c:47 -msgid "Determine filesystem label." -msgstr "判斷檔案系統標籤。" - -#: grub-core/commands/probe.c:139 grub-core/commands/probe.c:146 -#: util/grub-probe.c:462 -#, c-format -msgid "filesystem `%s' does not support labels" -msgstr "" - -#: grub-core/commands/probe.c:165 grub-core/fs/zfs/zfsinfo.c:430 -#: grub-core/loader/i386/bsd.c:169 util/grub-setup.c:223 -msgid "DEVICE" -msgstr "DEVICE" - -#: grub-core/commands/probe.c:166 -msgid "Retrieve device info." -msgstr "æ“·å–è£ç½®è³‡è¨Šã€‚" - -#: grub-core/commands/read.c:85 -msgid "[ENVVAR]" -msgstr "[ENVVAR]" - -#: grub-core/commands/read.c:86 -msgid "Set variable with user input." -msgstr "以使用者輸入設定變數。" - -#: grub-core/commands/reboot.c:40 -msgid "Reboot the computer." -msgstr "釿–°é–‹æ©Ÿã€‚" - -#. TRANSLATORS: in regexp you can mark some -#. groups with parentheses. These groups are -#. then numbered and you can save some of -#. them in variables. In other programs -#. those components aree often referenced with -#. back slash, e.g. \1. Compare -#. sed -e 's,\([a-z][a-z]*\),lowercase=\1,g' -#. The whole matching component is saved in VARNAME, not its number. -#. -#: grub-core/commands/regexp.c:44 -msgid "Store matched component NUMBER in VARNAME." -msgstr "" - -#: grub-core/commands/regexp.c:45 -msgid "[NUMBER:]VARNAME" -msgstr "[NUMBER:]VARNAME" - -#. TRANSLATORS: This are two arguments. So it's -#. two separate units to translate and pay -#. attention not to reverse them. -#: grub-core/commands/regexp.c:157 -msgid "REGEXP STRING" -msgstr "REGEXP STRING" - -#: grub-core/commands/regexp.c:158 -msgid "Test if REGEXP matches STRING." -msgstr "測試 REGEXP 是å¦èƒ½æ¯”å°åˆ° STRING。" - -#: grub-core/commands/search.c:324 -msgid "NAME [VARIABLE] [HINTS]" -msgstr "NAME [VARIABLE] [HINTS]" - -#: grub-core/commands/search_file.c:4 -msgid "" -"Search devices by file. If VARIABLE is specified, the first device found is " -"set to a variable." -msgstr "é€éŽæª”案æœå°‹è£ç½®ã€‚若有指定 VARIABLE,變數會被設為第一個找到的è£ç½®ã€‚" - -#: grub-core/commands/search_label.c:4 -msgid "" -"Search devices by label. If VARIABLE is specified, the first device found is " -"set to a variable." -msgstr "é€éŽæ¨™ç±¤æœå°‹è£ç½®ã€‚若有指定 VARIABLE,變數會被設為第一個找到的è£ç½®ã€‚" - -#: grub-core/commands/search_uuid.c:4 -msgid "" -"Search devices by UUID. If VARIABLE is specified, the first device found is " -"set to a variable." -msgstr "é€éŽ UUID æœå°‹è£ç½®ã€‚若有指定 VARIABLE,變數會被設為第一個找到的è£ç½®ã€‚" - -#: grub-core/commands/search_wrap.c:34 -msgid "Search devices by a file." -msgstr "é€éŽæª”案æœå°‹è£ç½®ã€‚" - -#: grub-core/commands/search_wrap.c:35 -msgid "Search devices by a filesystem label." -msgstr "é€éŽæª”案系統標籤æœå°‹è£ç½®ã€‚" - -#: grub-core/commands/search_wrap.c:37 -msgid "Search devices by a filesystem UUID." -msgstr "é€éŽæª”案系統 UUID æœå°‹è£ç½®ã€‚" - -#: grub-core/commands/search_wrap.c:40 -msgid "Set a variable to the first device found." -msgstr "將變數設為第一個找到的è£ç½®ã€‚" - -#: grub-core/commands/search_wrap.c:42 -msgid "Do not probe any floppy drive." -msgstr "ä¸è¦æŽ¢æ¸¬ä»»ä½•軟碟è£ç½®ã€‚" - -#: grub-core/commands/search_wrap.c:44 -msgid "" -"First try the device HINT. If HINT ends in comma, also try subpartitions" -msgstr "先嘗試è£ç½® HINT。若 HINT 以åŠå½¢é€—號çµå°¾ï¼Œä¹Ÿæœƒå˜—試å­åˆ†å‰²å€" - -#: grub-core/commands/search_wrap.c:45 grub-core/commands/search_wrap.c:49 -#: grub-core/commands/search_wrap.c:53 grub-core/commands/search_wrap.c:57 -#: grub-core/commands/search_wrap.c:61 grub-core/commands/search_wrap.c:65 -msgid "HINT" -msgstr "HINT" - -#: grub-core/commands/search_wrap.c:47 -#, fuzzy -msgid "" -"First try the device HINT if currently running on IEEE1275. If HINT ends in " -"comma, also try subpartitions" -msgstr "先嘗試è£ç½® HINT。若 HINT 以åŠå½¢é€—號çµå°¾ï¼Œä¹Ÿæœƒå˜—試å­åˆ†å‰²å€" - -#: grub-core/commands/search_wrap.c:51 -#, fuzzy -msgid "" -"First try the device HINT if currently running on BIOS. If HINT ends in " -"comma, also try subpartitions" -msgstr "先嘗試è£ç½® HINT。若 HINT 以åŠå½¢é€—號çµå°¾ï¼Œä¹Ÿæœƒå˜—試å­åˆ†å‰²å€" - -#: grub-core/commands/search_wrap.c:55 -#, fuzzy -msgid "" -"First try the device HINT if direct hardware access is supported. If HINT " -"ends in comma, also try subpartitions" -msgstr "先嘗試è£ç½® HINT。若 HINT 以åŠå½¢é€—號çµå°¾ï¼Œä¹Ÿæœƒå˜—試å­åˆ†å‰²å€" - -#: grub-core/commands/search_wrap.c:59 -#, fuzzy -msgid "" -"First try the device HINT if currently running on EFI. If HINT ends in " -"comma, also try subpartitions" -msgstr "先嘗試è£ç½® HINT。若 HINT 以åŠå½¢é€—號çµå°¾ï¼Œä¹Ÿæœƒå˜—試å­åˆ†å‰²å€" - -#: grub-core/commands/search_wrap.c:63 -#, fuzzy -msgid "" -"First try the device HINT if currently running on ARC. If HINT ends in " -"comma, also try subpartitions" -msgstr "先嘗試è£ç½® HINT。若 HINT 以åŠå½¢é€—號çµå°¾ï¼Œä¹Ÿæœƒå˜—試å­åˆ†å‰²å€" - -#: grub-core/commands/search_wrap.c:207 -msgid "[-f|-l|-u|-s|-n] [--hint HINT [--hint HINT] ...] NAME" -msgstr "[-f|-l|-u|-s|-n] [--hint HINT [--hint HINT] ...] NAME" - -#: grub-core/commands/search_wrap.c:209 -#, fuzzy -msgid "" -"Search devices by file, filesystem label or filesystem UUID. If --set is " -"specified, the first device found is set to a variable. If no variable name " -"is specified, `root' is used." -msgstr "" -"é€éŽæª”æ¡ˆã€æª”案系統標籤或檔案系統 UUID æœå°‹è£ç½®ã€‚若有指定 --set,變數會被設為" -"第一個找到的è£ç½®ã€‚如果沒有指定變數å稱,會使用「rootã€ã€‚" - -#: grub-core/commands/setpci.c:132 -#, c-format -msgid "Register %x of %x:%02x.%x is %x\n" -msgstr "" - -#: grub-core/commands/setpci.c:333 -#, fuzzy -msgid "[-s POSITION] [-d DEVICE] [-v VAR] REGISTER[=VALUE[:MASK]]" -msgstr "[-s POSITION] [-d DEVICE] [-v VAR] [REGISTER][=VALUE[:MASK]]" - -#: grub-core/commands/setpci.c:335 -msgid "Manipulate PCI devices." -msgstr "è™•ç† PCI è£ç½®ã€‚" - -#: grub-core/commands/sleep.c:32 -msgid "Verbose countdown." -msgstr "冗長倒數。" - -#: grub-core/commands/sleep.c:33 -#, fuzzy -msgid "Allow to interrupt with ESC." -msgstr "å¯ä»¥ç”¨ ESC 中斷。" - -#: grub-core/commands/sleep.c:109 -msgid "NUMBER_OF_SECONDS" -msgstr "NUMBER_OF_SECONDS" - -#: grub-core/commands/sleep.c:110 -msgid "Wait for a specified number of seconds." -msgstr "等候指定的秒數。" - -#: grub-core/commands/syslinuxcfg.c:50 util/grub-syslinux2cfg.c:66 -msgid "root directory of the syslinux disk [default=/]." -msgstr "" - -#: grub-core/commands/syslinuxcfg.c:53 util/grub-syslinux2cfg.c:72 -msgid "" -"current directory of syslinux [default is parent directory of input file]." -msgstr "" - -#: grub-core/commands/syslinuxcfg.c:55 util/grub-syslinux2cfg.c:75 -msgid "assume input is an isolinux configuration file." -msgstr "" - -#: grub-core/commands/syslinuxcfg.c:56 util/grub-syslinux2cfg.c:76 -msgid "assume input is a pxelinux configuration file." -msgstr "" - -#: grub-core/commands/syslinuxcfg.c:57 util/grub-syslinux2cfg.c:77 -msgid "assume input is a syslinux configuration file." -msgstr "" - -#. TRANSLATORS: "syslinux config" means -#. "config as used by syslinux". -#: grub-core/commands/syslinuxcfg.c:189 -#, fuzzy -msgid "Execute syslinux config in same context" -msgstr "æ–¼ç›¸åŒæƒ…境解æžèˆŠå¼çµ„æ…‹" - -#: grub-core/commands/syslinuxcfg.c:195 -#, fuzzy -msgid "Execute syslinux config in new context" -msgstr "於新情境解æžèˆŠå¼çµ„æ…‹" - -#: grub-core/commands/syslinuxcfg.c:201 -#, fuzzy -msgid "Execute syslinux config in same context taking only menu entries" -msgstr "æ–¼ç›¸åŒæƒ…境解æžèˆŠå¼çµ„æ…‹ï¼Œåƒ…æ“·å–æ¢ç›®" - -#: grub-core/commands/syslinuxcfg.c:207 -#, fuzzy -msgid "Execute syslinux config in new context taking only menu entries" -msgstr "於新情境解æžèˆŠå¼çµ„æ…‹ï¼Œåƒ…æ“·å–æ¢ç›®" - -#: grub-core/commands/terminal.c:90 -msgid "no terminal specified" -msgstr "未指定終端機" - -#: grub-core/commands/terminal.c:112 grub-core/commands/terminal.c:139 -#, c-format -msgid "terminal `%s' isn't found" -msgstr "" - -#: grub-core/commands/terminal.c:244 -msgid "Active input terminals:" -msgstr "使用中輸入終端機:" - -#: grub-core/commands/terminal.c:245 -msgid "Available input terminals:" -msgstr "å¯ç”¨çš„輸入終端機:" - -#: grub-core/commands/terminal.c:261 -msgid "Active output terminals:" -msgstr "使用中輸出終端機:" - -#: grub-core/commands/terminal.c:262 -msgid "Available output terminals:" -msgstr "å¯ç”¨çš„輸出終端機:" - -#: grub-core/commands/terminal.c:271 grub-core/commands/terminal.c:276 -msgid "[--append|--remove] [TERMINAL1] [TERMINAL2] ..." -msgstr "[--append|--remove] [TERMINAL1] [TERMINAL2] ..." - -#: grub-core/commands/terminal.c:273 -msgid "List or select an input terminal." -msgstr "列出或é¸å–輸入終端機。" - -#: grub-core/commands/terminal.c:278 -msgid "List or select an output terminal." -msgstr "列出或é¸å–輸出終端機。" - -#: grub-core/commands/test.c:444 -msgid "EXPRESSION ]" -msgstr "EXPRESSION ]" - -#: grub-core/commands/test.c:444 grub-core/commands/test.c:447 -msgid "Evaluate an expression." -msgstr "評估表述å¼ã€‚" - -#: grub-core/commands/test.c:447 -msgid "EXPRESSION" -msgstr "EXPRESSION" - -#: grub-core/commands/testload.c:164 -msgid "Load the same file in multiple ways." -msgstr "以多種方å¼è¼‰å…¥ç›¸åŒæª”案。" - -#: grub-core/commands/testspeed.c:35 -msgid "Specify size for each read operation" -msgstr "" - -#: grub-core/commands/testspeed.c:58 -msgid "invalid block size" -msgstr "" - -#: grub-core/commands/testspeed.c:80 -#, c-format -msgid "File size: %s\n" -msgstr "" - -#: grub-core/commands/testspeed.c:83 -#, c-format -msgid "Elapsed time: %d.%03d s \n" -msgstr "" - -#: grub-core/commands/testspeed.c:92 -#, c-format -msgid "Speed: %s \n" -msgstr "" - -#: grub-core/commands/testspeed.c:107 -msgid "[-s SIZE] FILENAME" -msgstr "" - -#: grub-core/commands/testspeed.c:108 -msgid "Test file read speed." -msgstr "" - -#: grub-core/commands/time.c:38 grub-core/script/execute.c:974 -#, fuzzy -msgid "no command is specified" -msgstr "未指定指令。\n" - -#: grub-core/commands/time.c:50 -#, c-format -msgid "Elapsed time: %d.%03d seconds \n" -msgstr "" - -#: grub-core/commands/time.c:61 -msgid "COMMAND [ARGS]" -msgstr "" - -#: grub-core/commands/time.c:62 -msgid "Measure time used by COMMAND" -msgstr "" - -#: grub-core/commands/tr.c:33 -msgid "Translate to upper case." -msgstr "" - -#: grub-core/commands/tr.c:34 -msgid "Translate to lower case." -msgstr "" - -#: grub-core/commands/tr.c:119 -msgid "[OPTIONS] [SET1] [SET2] [STRING]" -msgstr "" - -#: grub-core/commands/tr.c:120 -msgid "Translate SET1 characters to SET2 in STRING." -msgstr "" - -#. TRANSLATORS: it's a command description. -#: grub-core/commands/true.c:50 -msgid "Do nothing, successfully." -msgstr "什麼事都ä¸åšï¼ŒæˆåŠŸã€‚" - -#. TRANSLATORS: it's a command description. -#: grub-core/commands/true.c:54 -msgid "Do nothing, unsuccessfully." -msgstr "什麼事都ä¸åšï¼ŒæœªæˆåŠŸã€‚" - -#: grub-core/commands/usbtest.c:221 -msgid "Test USB support." -msgstr "測試 USB 支æ´ã€‚" - -#: grub-core/commands/verifiers.c:120 -#, c-format -msgid "verification requested but nobody cares: %s" -msgstr "" - -#: grub-core/commands/verifiers.c:140 -msgid "big file signature isn't implemented yet" -msgstr "" - -#: grub-core/commands/videoinfo.c:61 -msgid "Text-only " -msgstr "" - -#. TRANSLATORS: "Direct color" is a mode when the color components -#. are written dirrectly into memory. -#: grub-core/commands/videoinfo.c:66 -#, c-format -msgid "Direct color, mask: %d/%d/%d/%d pos: %d/%d/%d/%d" -msgstr "" - -#. TRANSLATORS: In "paletted color" mode you write the index of the color -#. in the palette. Synonyms include "packed pixel". -#: grub-core/commands/videoinfo.c:78 -msgid "Paletted " -msgstr "" - -#: grub-core/commands/videoinfo.c:80 -msgid "YUV " -msgstr "" - -#. TRANSLATORS: "Planar" is the video memory where you have to write -#. in several different banks "plans" to control the different color -#. components of the same pixel. -#: grub-core/commands/videoinfo.c:85 -msgid "Planar " -msgstr "" - -#: grub-core/commands/videoinfo.c:87 -msgid "Hercules " -msgstr "" - -#: grub-core/commands/videoinfo.c:89 -msgid "CGA " -msgstr "" - -#. TRANSLATORS: Non-chain 4 is a 256-color planar -#. (unchained) video memory mode. -#: grub-core/commands/videoinfo.c:93 -msgid "Non-chain 4 " -msgstr "" - -#: grub-core/commands/videoinfo.c:95 -msgid "Monochrome " -msgstr "" - -#: grub-core/commands/videoinfo.c:97 -msgid "Unknown video mode " -msgstr "" - -#: grub-core/commands/videoinfo.c:111 -msgid " EDID checksum invalid" -msgstr "" - -#: grub-core/commands/videoinfo.c:116 -#, c-format -msgid " EDID version: %u.%u\n" -msgstr "" - -#: grub-core/commands/videoinfo.c:120 -#, c-format -msgid " Preferred mode: %ux%u\n" -msgstr "" - -#: grub-core/commands/videoinfo.c:123 -msgid " No preferred mode available\n" -msgstr "" - -#: grub-core/commands/videoinfo.c:146 grub-core/video/video.c:490 -#: grub-core/video/video.c:498 grub-core/video/video.c:509 -#: grub-core/video/video.c:520 grub-core/video/video.c:528 -#, fuzzy, c-format -msgid "invalid video mode specification `%s'" -msgstr "無效的根è£ç½®ã€Œ%sã€" - -#: grub-core/commands/videoinfo.c:168 -msgid "List of supported video modes:" -msgstr "" - -#: grub-core/commands/videoinfo.c:169 -msgid "Legend: mask/position=red/green/blue/reserved" -msgstr "" - -#: grub-core/commands/videoinfo.c:176 -#, c-format -msgid "Adapter `%s':\n" -msgstr "" - -#: grub-core/commands/videoinfo.c:180 -msgid " No info available" -msgstr "" - -#: grub-core/commands/videoinfo.c:198 -msgid " Failed to initialize video adapter" -msgstr "" - -#. TRANSLATORS: "x" has to be entered in, -#. like an identifier, so please don't -#. use better Unicode codepoints. -#: grub-core/commands/videoinfo.c:239 grub-core/commands/videoinfo.c:248 -msgid "[WxH[xD]]" -msgstr "" - -#: grub-core/commands/videoinfo.c:240 grub-core/commands/videoinfo.c:249 -msgid "" -"List available video modes. If resolution is given show only modes matching " -"it." -msgstr "列出å¯ç”¨çš„視訊模å¼ã€‚若有給定解æžåº¦ï¼Œåƒ…顯示符åˆçš„æ¨¡å¼ã€‚" - -#. TRANSLATORS: "x" has to be entered in, -#. like an identifier, so please don't -#. use better Unicode codepoints. -#: grub-core/commands/videotest.c:225 -msgid "[WxH]" -msgstr "" - -#. TRANSLATORS: Here, on the other hand, it's -#. nicer to use unicode cross instead of x. -#: grub-core/commands/videotest.c:228 -msgid "Test video subsystem in mode WxH." -msgstr "以 WxH æ¨¡å¼æ¸¬è©¦è¦–訊å­ç³»çµ±ã€‚" - -#: grub-core/commands/videotest.c:231 -msgid "Test video subsystem." -msgstr "測試視訊å­ç³»çµ±ã€‚" - -#: grub-core/commands/xen/lsxen.c:80 grub-core/commands/xen/lsxen.c:82 -msgid "[DIR]" -msgstr "" - -#: grub-core/commands/xen/lsxen.c:81 grub-core/commands/xen/lsxen.c:83 -msgid "List Xen storage." -msgstr "" - -#. TRANSLATORS: GRUBUUID stands for "filesystem -#. UUID as used in GRUB". -#: grub-core/commands/xnu_uuid.c:110 -#, fuzzy -msgid "[-l] GRUBUUID [VARNAME]" -msgstr "GRUBUUID [VARNAME]" - -#: grub-core/commands/xnu_uuid.c:111 -#, fuzzy -msgid "" -"Transform 64-bit UUID to format suitable for XNU. If -l is given keep it " -"lowercase as done by blkid." -msgstr "è½‰æ› 64 ä½å…ƒ UUID 為é©åˆ XNU 的格å¼ã€‚" - -#: grub-core/disk/arc/arcdisk.c:248 grub-core/disk/efi/efidisk.c:603 -#: grub-core/disk/i386/pc/biosdisk.c:498 grub-core/disk/i386/pc/biosdisk.c:543 -#: grub-core/disk/ieee1275/nand.c:198 grub-core/disk/ieee1275/obdisk.c:527 -#: grub-core/disk/ieee1275/ofdisk.c:586 -#, c-format -msgid "failure reading sector 0x%llx from `%s'" -msgstr "" - -#: grub-core/disk/arc/arcdisk.c:284 grub-core/disk/efi/efidisk.c:626 -#: grub-core/disk/i386/pc/biosdisk.c:548 grub-core/disk/ieee1275/ofdisk.c:606 -#, c-format -msgid "failure writing sector 0x%llx to `%s'" -msgstr "" - -#: grub-core/disk/cryptodisk.c:40 -msgid "Mount by UUID." -msgstr "" - -#. TRANSLATORS: It's still restricted to cryptodisks only. -#: grub-core/disk/cryptodisk.c:42 -msgid "Mount all." -msgstr "" - -#: grub-core/disk/cryptodisk.c:43 -msgid "Mount all volumes with `boot' flag set." -msgstr "" - -#. TRANSLATORS: The first %s is the file being looked at, the second %s is -#. the error message. -#: grub-core/disk/cryptodisk.c:526 grub-core/kern/emu/hostdisk.c:152 -#: grub-core/kern/emu/hostdisk.c:262 grub-core/kern/emu/hostdisk.c:434 -#: grub-core/kern/emu/misc.c:168 grub-core/kern/emu/misc.c:174 -#: grub-core/kern/emu/misc.c:196 grub-core/osdep/bsd/getroot.c:92 -#: grub-core/osdep/bsd/getroot.c:168 grub-core/osdep/hurd/getroot.c:68 -#: grub-core/osdep/linux/blocklist.c:65 grub-core/osdep/linux/getroot.c:150 -#: grub-core/osdep/linux/hostdisk.c:194 grub-core/osdep/linux/hostdisk.c:421 -#: grub-core/osdep/linux/ofpath.c:417 grub-core/osdep/linux/ofpath.c:422 -#: grub-core/osdep/linux/ofpath.c:517 grub-core/osdep/linux/ofpath.c:530 -#: grub-core/osdep/sun/getroot.c:110 grub-core/osdep/windows/blocklist.c:98 -#: grub-core/tests/video_checksum.c:279 util/editenv.c:46 util/glue-efi.c:115 -#: util/glue-efi.c:120 util/glue-efi.c:130 util/grub-editenv.c:138 -#: util/grub-editenv.c:192 util/grub-file.c:83 util/grub-fstest.c:128 -#: util/grub-fstest.c:568 util/grub-install-common.c:92 -#: util/grub-install-common.c:94 util/grub-install-common.c:101 -#: util/grub-install-common.c:529 util/grub-menulst2cfg.c:53 -#: util/grub-menulst2cfg.c:68 util/grub-mkimage.c:292 util/grub-mklayout.c:504 -#: util/grub-mklayout.c:516 util/grub-mknetdir.c:133 util/grub-mknetdir.c:151 -#: util/grub-mkrescue.c:627 util/grub-mkrescue.c:631 util/grub-mkrescue.c:879 -#: util/grub-mkrescue.c:883 util/grub-mkstandalone.c:253 util/grub-mount.c:498 -#: util/grub-render-label.c:169 util/grub-script-check.c:175 -#: util/grub-syslinux2cfg.c:181 util/grub-syslinux2cfg.c:191 -#: util/grub-syslinux2cfg.c:212 util/grub-syslinux2cfg.c:228 util/misc.c:91 -#: util/render-label.c:76 util/render-label.c:163 util/render-label.c:174 -#: util/resolve.c:246 util/setup.c:783 -#, fuzzy, c-format -msgid "cannot open `%s': %s" -msgstr "無法開啟「%sã€" - -#: grub-core/disk/cryptodisk.c:583 grub-core/disk/cryptodisk.c:628 -#: grub-core/kern/emu/hostdisk.c:270 grub-core/kern/emu/hostfs.c:142 -#: grub-core/osdep/linux/hostdisk.c:456 util/grub-editenv.c:143 -#: util/grub-editenv.c:149 util/grub-fstest.c:320 util/misc.c:111 -#, fuzzy, c-format -msgid "cannot seek `%s': %s" -msgstr "無法開啟「%sã€" - -#: grub-core/disk/cryptodisk.c:1144 -msgid "SOURCE|-u UUID|-a|-b" -msgstr "" - -#: grub-core/disk/cryptodisk.c:1145 -#, fuzzy -msgid "Mount a crypto device." -msgstr "設定根è£ç½®ã€‚" - -#. TRANSLATORS: This message kicks in during the detection of -#. which modules needs to be included in core image. This happens -#. in the case of degraded RAID and means that autodetection may -#. fail to include some of modules. It's an installation time -#. message, not runtime message. -#: grub-core/disk/diskfilter.c:343 grub-core/disk/diskfilter.c:376 -#, c-format -msgid "" -"Couldn't find physical volume `%s'. Some modules may be missing from core " -"image." -msgstr "" - -#: grub-core/disk/diskfilter.c:480 -#, c-format -msgid "physical volume %s not found" -msgstr "" - -#: grub-core/disk/efi/efidisk.c:600 grub-core/disk/efi/efidisk.c:623 -#, fuzzy, c-format -msgid "no media in `%s'" -msgstr "無法開啟「%sã€" - -#: grub-core/disk/geli.c:75 -msgid "Couldn't load sha256" -msgstr "" - -#: grub-core/disk/geli.c:85 -msgid "Couldn't load sha512" -msgstr "" - -#: grub-core/disk/geli.c:216 grub-core/disk/geli.c:220 -msgid "couldn't read ELI metadata" -msgstr "" - -#: grub-core/disk/geli.c:231 -msgid "wrong ELI magic or version" -msgstr "" - -#: grub-core/disk/geli.c:435 grub-core/disk/luks.c:329 -msgid "Attempting to decrypt master key..." -msgstr "" - -#: grub-core/disk/geli.c:441 grub-core/disk/luks.c:347 -#, c-format -msgid "Enter passphrase for %s%s%s (%s): " -msgstr "" - -#. TRANSLATORS: It's a cryptographic key slot: one element of an array -#. where each element is either empty or holds a key. -#: grub-core/disk/geli.c:530 grub-core/disk/luks.c:451 -#, c-format -msgid "Slot %d opened\n" -msgstr "" - -#: grub-core/disk/i386/pc/biosdisk.c:470 grub-core/disk/i386/pc/biosdisk.c:524 -#: grub-core/disk/i386/pc/biosdisk.c:534 grub-core/kern/disk_common.c:47 -#, fuzzy, c-format -msgid "attempt to read or write outside of disk `%s'" -msgstr "正試圖從 GRUB è®€å–æ ¸å¿ƒæ˜ åƒã€Œ%sã€" - -#: grub-core/disk/i386/pc/biosdisk.c:491 grub-core/disk/i386/pc/biosdisk.c:611 -#: grub-core/disk/scsi.c:726 -msgid "cannot write to CD-ROM" -msgstr "" - -#: grub-core/disk/i386/pc/biosdisk.c:662 -msgid "" -"Native disk drivers are in use. Refusing to use firmware disk interface." -msgstr "" - -#. TRANSLATORS: it's a partition for embedding, -#. not a partition embed into something. GRUB -#. install tools put core.img into a place -#. usable for bootloaders (called generically -#. "embedding zone") and this operation is -#. called "embedding". -#: grub-core/disk/ldm.c:1015 -msgid "your LDM Embedding Partition is too small; embedding won't be possible" -msgstr "" - -#. TRANSLATORS: it's a partition for embedding, -#. not a partition embed into something. -#: grub-core/disk/ldm.c:1033 -msgid "this LDM has no Embedding Partition; embedding won't be possible" -msgstr "" - -#. TRANSLATORS: The disk is simply removed from the list of available ones, -#. not wiped, avoid to scare user. -#: grub-core/disk/loopback.c:45 -#, fuzzy -msgid "Delete the specified loopback drive." -msgstr "刪除迴返è£ç½®æ¢ç›®ã€‚" - -#: grub-core/disk/loopback.c:237 -#, fuzzy -msgid "[-d] DEVICENAME FILE." -msgstr "[-d|-p] DEVICENAME FILE。" - -#. TRANSLATORS: The file itself is not destroyed -#. or transformed into drive. -#: grub-core/disk/loopback.c:240 -#, fuzzy -msgid "Make a virtual drive from a file." -msgstr "製作一個檔案的è£ç½®ã€‚" - -#: grub-core/efiemu/i386/loadcore32.c:111 -#: grub-core/efiemu/i386/loadcore64.c:125 grub-core/kern/arm/dl.c:256 -#: grub-core/kern/arm64/dl.c:187 grub-core/kern/i386/dl.c:75 -#: grub-core/kern/ia64/dl.c:140 grub-core/kern/mips/dl.c:258 -#: grub-core/kern/powerpc/dl.c:163 grub-core/kern/riscv/dl.c:334 -#: grub-core/kern/sparc64/dl.c:180 grub-core/kern/x86_64/dl.c:110 -#: util/grub-mkimagexx.c:756 util/grub-mkimagexx.c:881 -#: util/grub-mkimagexx.c:945 util/grub-mkimagexx.c:1026 -#: util/grub-mkimagexx.c:1120 util/grub-mkimagexx.c:1222 -#: util/grub-mkimagexx.c:1413 util/grub-mkimagexx.c:1628 -#: util/grub-mkimagexx.c:1665 util/grub-mkimagexx.c:1697 -#: util/grub-mkimagexx.c:1767 util/grub-mkimagexx.c:1797 -#, c-format -msgid "relocation 0x%x is not implemented yet" -msgstr "" - -#: grub-core/efiemu/loadcore.c:200 grub-core/efiemu/loadcore.c:237 -#: grub-core/loader/i386/bsdXX.c:317 util/grub-mkimagexx.c:2360 -msgid "no symbol table" -msgstr "" - -#: grub-core/efiemu/loadcore.c:346 grub-core/kern/dl.c:609 -#: grub-core/loader/ia64/efi/linux.c:345 grub-core/loader/mips/linux.c:248 -#: grub-core/loader/multiboot_elfxx.c:76 -#: grub-core/loader/powerpc/ieee1275/linux.c:280 -#: grub-core/loader/sparc64/ieee1275/linux.c:320 -msgid "this ELF file is not of the right type" -msgstr "" - -#: grub-core/efiemu/main.c:313 -msgid "Load and initialize EFI emulator." -msgstr "載入並åˆå§‹åŒ– EFI 模擬器。" - -#: grub-core/efiemu/main.c:317 -msgid "Finalize loading of EFI emulator." -msgstr "終止 EFI 模擬器的載入。" - -#: grub-core/efiemu/main.c:320 -msgid "Unload EFI emulator." -msgstr "å¸è¼‰ EFI 模擬器。" - -#: grub-core/efiemu/symbols.c:92 grub-core/kern/dl.c:376 -#, c-format -msgid "symbol `%s' not found" -msgstr "" - -#: grub-core/font/font_cmd.c:52 -#, fuzzy -msgid "Loaded fonts:" -msgstr "列出已載入的字型。" - -#: grub-core/font/font_cmd.c:74 -msgid "FILE..." -msgstr "FILE..." - -#: grub-core/font/font_cmd.c:75 -msgid "Specify one or more font files to load." -msgstr "指定一個或多個è¦è¼‰å…¥çš„字型檔。" - -#: grub-core/font/font_cmd.c:78 -msgid "List the loaded fonts." -msgstr "列出已載入的字型。" - -#: grub-core/fs/archelp.c:216 grub-core/fs/archelp.c:278 -#: grub-core/fs/btrfs.c:1815 grub-core/fs/fshelp.c:227 grub-core/fs/jfs.c:736 -#: grub-core/fs/minix.c:369 grub-core/fs/ufs.c:454 -msgid "too deep nesting of symlinks" -msgstr "" - -#: grub-core/fs/bfs.c:228 grub-core/fs/fshelp.c:368 grub-core/fs/minix.c:270 -#: grub-core/kern/file.c:156 -msgid "attempt to read past the end of file" -msgstr "" - -#: grub-core/fs/btrfs.c:1698 grub-core/fs/btrfs.c:1957 -#: grub-core/fs/fshelp.c:189 grub-core/fs/fshelp.c:309 grub-core/fs/jfs.c:431 -#: grub-core/fs/minix.c:414 grub-core/fs/minix.c:562 -#: grub-core/fs/reiserfs.c:732 grub-core/fs/ufs.c:531 grub-core/fs/ufs.c:671 -#: grub-core/fs/zfs/zfs.c:2831 grub-core/fs/zfs/zfs.c:4247 -msgid "not a directory" -msgstr "" - -#: grub-core/fs/btrfs.c:2063 grub-core/fs/fshelp.c:307 grub-core/fs/jfs.c:835 -#: grub-core/fs/zfs/zfs.c:3801 -msgid "not a regular file" -msgstr "" - -#: grub-core/fs/btrfs.c:2157 grub-core/fs/zfs/zfs.c:4333 -#: grub-core/partmap/msdos.c:400 -msgid "your core.img is unusually large. It won't fit in the embedding area" -msgstr "" - -#: grub-core/fs/fshelp.c:281 grub-core/fs/minix.c:630 grub-core/fs/ufs.c:661 -#: grub-core/fs/ufs.c:757 grub-core/kern/fs.c:168 grub-core/kern/fs.c:180 -#, fuzzy, c-format -msgid "invalid file name `%s'" -msgstr "無效的根è£ç½®ã€Œ%sã€" - -#: grub-core/fs/zfs/zfs.c:453 -msgid "checksum verification failed" -msgstr "" - -#: grub-core/fs/zfs/zfs.c:1465 -msgid "couldn't find a necessary member device of multi-device filesystem" -msgstr "" - -#: grub-core/fs/zfs/zfscrypt.c:292 -msgid "no decryption key available" -msgstr "" - -#: grub-core/fs/zfs/zfscrypt.c:304 -msgid "MAC verification failed" -msgstr "" - -#: grub-core/fs/zfs/zfscrypt.c:413 -msgid "Assume input is raw." -msgstr "" - -#: grub-core/fs/zfs/zfscrypt.c:414 -msgid "Assume input is hex." -msgstr "" - -#: grub-core/fs/zfs/zfscrypt.c:415 -msgid "Assume input is passphrase." -msgstr "" - -#: grub-core/fs/zfs/zfscrypt.c:437 util/grub-fstest.c:553 util/grub-mount.c:483 -#, fuzzy -msgid "Enter ZFS password: " -msgstr "輸入密碼:" - -#: grub-core/fs/zfs/zfscrypt.c:476 -#, fuzzy -msgid "[-h|-p|-r] [FILE]" -msgstr "[-l|-h|-a] [FILE ...]" - -#: grub-core/fs/zfs/zfscrypt.c:477 -msgid "Import ZFS wrapping key stored in FILE." -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:51 -msgid "Virtual device is removed" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:57 -msgid "Virtual device is faulted" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:63 -#, fuzzy -msgid "Virtual device is offline" -msgstr "列出è£ç½®æˆ–檔案。" - -#. TRANSLATORS: degraded doesn't mean broken but that some of -#. component are missing but virtual device as whole is still usable. -#: grub-core/fs/zfs/zfsinfo.c:70 -msgid "Virtual device is degraded" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:73 -#, fuzzy -msgid "Virtual device is online" -msgstr "列出è£ç½®æˆ–檔案。" - -#: grub-core/fs/zfs/zfsinfo.c:89 -msgid "Incorrect virtual device: no type available" -msgstr "" - -#. TRANSLATORS: The virtual devices form a tree (in graph-theoretical -#. sense). The nodes like mirror or raidz have children: member devices. -#. The "real" devices which actually store data are called "leafs" -#. (again borrowed from graph theory) and can be either disks -#. (or partitions) or files. -#: grub-core/fs/zfs/zfsinfo.c:105 -msgid "Leaf virtual device (file or disk)" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:113 -msgid "Bootpath: unavailable\n" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:115 -#, c-format -msgid "Bootpath: %s\n" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:120 -msgid "Path: unavailable" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:122 -#, c-format -msgid "Path: %s\n" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:127 -msgid "Devid: unavailable" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:129 -#, fuzzy, c-format -msgid "Devid: %s\n" -msgstr "è£ç½® %s:" - -#: grub-core/fs/zfs/zfsinfo.c:148 -msgid "This VDEV is a mirror" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:153 -#, c-format -msgid "This VDEV is a RAIDZ%llu\n" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:158 -msgid "Incorrect VDEV" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:161 -#, c-format -msgid "VDEV with %d children\n" -msgstr "" - -#. TRANSLATORS: it's the element carying the number %d, not -#. total element number. And the number itself is fine, -#. only the element isn't. -#. -#: grub-core/fs/zfs/zfsinfo.c:177 -#, c-format -msgid "VDEV element number %d isn't correct\n" -msgstr "" - -#. TRANSLATORS: it's the element carying the number %d, not -#. total element number. This is used in enumeration -#. "Element number 1", "Element number 2", ... -#: grub-core/fs/zfs/zfsinfo.c:184 -#, c-format -msgid "VDEV element number %d:\n" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:193 -#, c-format -msgid "Unknown virtual device type: %s\n" -msgstr "" - -#. TRANSLATORS: Here we speak about ZFS pools it's semi-marketing, -#. semi-technical term by Sun/Oracle and should be translated in sync with -#. other ZFS-related software and documentation. -#: grub-core/fs/zfs/zfsinfo.c:254 -msgid "Pool state: active" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:255 -msgid "Pool state: exported" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:256 -msgid "Pool state: destroyed" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:257 -msgid "Pool state: reserved for hot spare" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:258 -msgid "Pool state: level 2 ARC device" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:259 -msgid "Pool state: uninitialized" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:260 -msgid "Pool state: unavailable" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:261 -msgid "Pool state: potentially active" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:306 -msgid "Pool name: unavailable" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:308 -#, c-format -msgid "Pool name: %s\n" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:313 -msgid "Pool GUID: unavailable" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:315 -#, c-format -msgid "Pool GUID: %016llx\n" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:320 -msgid "Unable to retrieve pool state" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:322 -msgid "Unrecognized pool state" -msgstr "" - -#. TRANSLATORS: There are undetermined number of virtual devices -#. in a device tree, not just one. -#. -#: grub-core/fs/zfs/zfsinfo.c:332 -msgid "No virtual device tree available" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:431 -msgid "Print ZFS info about DEVICE." -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:433 -msgid "FILESYSTEM [VARIABLE]" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:434 -msgid "Print ZFS-BOOTFSOBJ or store it into VARIABLE" -msgstr "" - -#. TRANSLATORS: at this position GRUB waits for the user to do an action -#. in remote debugger, namely to tell it to establish connection. -#: grub-core/gdb/gdb.c:48 -msgid "Now connect the remote debugger, please." -msgstr "" - -#. TRANSLATORS: GDB stub is a small part of -#. GDB functionality running on local host -#. which allows remote debugger to -#. connect to it. -#: grub-core/gdb/gdb.c:84 -msgid "Start GDB stub on given port" -msgstr "" - -#. TRANSLATORS: this refers to triggering -#. a breakpoint so that the user will land -#. into GDB. -#: grub-core/gdb/gdb.c:89 -msgid "Break into GDB" -msgstr "" - -#: grub-core/gdb/gdb.c:91 -msgid "Stop GDB stub" -msgstr "" - -#: grub-core/gettext/gettext.c:85 -msgid "premature end of file" -msgstr "" - -#. TRANSLATORS: It refers to passing the string through gettext. -#. So it's "translate" in the same meaning as in what you're -#. doing now. -#. -#: grub-core/gettext/gettext.c:525 -msgid "Translates the string with the current settings." -msgstr "以目å‰è¨­å®šå€¼ä¾†ç¿»è­¯å­—串。" - -#: grub-core/gfxmenu/gui_label.c:186 grub-core/normal/menu_text.c:184 -#, fuzzy -msgid "" -"Press enter to boot the selected OS, `e' to edit the commands before booting " -"or `c' for a command-line. ESC to return previous menu." -msgstr "" -"按下 enter å•Ÿå‹•æ‰€é¸ OS,按下「eã€åœ¨å•Ÿå‹•å‰ç·¨è¼¯æŒ‡ä»¤ï¼Œæˆ–是「cã€å–得指令列。按下 " -"ESC 返回å‰å€‹é¸å–®ã€‚\n" - -#: grub-core/gfxmenu/gui_label.c:190 grub-core/normal/menu_text.c:192 -#, fuzzy -msgid "" -"Press enter to boot the selected OS, `e' to edit the commands before booting " -"or `c' for a command-line." -msgstr "" -"按下 enter å•Ÿå‹•æ‰€é¸ OS,按下「eã€åœ¨å•Ÿå‹•å‰ç·¨è¼¯æŒ‡ä»¤ï¼Œæˆ–是「cã€å–得指令列。\n" - -#: grub-core/gfxmenu/gui_label.c:194 -msgid "enter: boot, `e': options, `c': cmd-line" -msgstr "" - -#: grub-core/gfxmenu/gui_progress_bar.c:339 grub-core/normal/menu_text.c:446 -#, c-format -msgid "The highlighted entry will be executed automatically in %ds." -msgstr "被çªé¡¯çš„æ¢ç›®æœƒåœ¨ %d 秒內自動執行。" - -#. TRANSLATORS: 's' stands for seconds. -#. It's a standalone timeout notification. -#. Please use the short form in your language. -#: grub-core/gfxmenu/gui_progress_bar.c:344 -#, c-format -msgid "%ds remaining." -msgstr "剩下 %d 秒。" - -#. TRANSLATORS: 's' stands for seconds. -#. It's a standalone timeout notification. -#. Please use the shortest form available in you language. -#: grub-core/gfxmenu/gui_progress_bar.c:349 grub-core/normal/menu_text.c:444 -#: grub-core/normal/menu_text.c:462 -#, c-format -msgid "%ds" -msgstr "%d ç§’" - -#: grub-core/gfxmenu/view.c:103 -msgid "GRUB Boot Menu" -msgstr "" - -#: grub-core/hello/hello.c:36 -#, fuzzy -msgid "Hello World" -msgstr "說「世界好ã€ã€‚" - -#: grub-core/hello/hello.c:45 -#, fuzzy -msgid "Say `Hello World'." -msgstr "說「世界好ã€ã€‚" - -#: grub-core/io/gzio.c:409 grub-core/kern/file.c:210 -msgid "attempt to seek outside of the file" -msgstr "" - -#. TRANSLATORS: It's about given file having some strange format, not -#. complete lack of gzip support. -#: grub-core/io/gzio.c:1228 grub-core/io/gzio.c:1237 grub-core/io/gzio.c:1244 -msgid "unsupported gzip format" -msgstr "" - -#: grub-core/io/lzopio.c:511 -msgid "lzop file corrupted" -msgstr "" - -#: grub-core/io/xzio.c:278 -msgid "xz file corrupted or unsupported block options" -msgstr "" - -#: grub-core/kern/arm/dl.c:277 grub-core/kern/arm64/dl.c:44 -#: grub-core/kern/i386/dl.c:36 grub-core/kern/ia64/dl.c:41 -#: grub-core/kern/mips/dl.c:48 grub-core/kern/powerpc/dl.c:36 -#: grub-core/kern/riscv/dl.c:47 grub-core/kern/sparc64/dl.c:36 -#: grub-core/kern/x86_64/dl.c:36 grub-core/loader/i386/bsd.c:1445 -#: grub-core/loader/i386/bsdXX.c:49 grub-core/loader/ia64/efi/linux.c:341 -#: grub-core/loader/mips/linux.c:298 grub-core/loader/multiboot.c:232 -#: grub-core/loader/multiboot_elfxx.c:73 -#: grub-core/loader/powerpc/ieee1275/linux.c:294 -#: grub-core/loader/sparc64/ieee1275/linux.c:331 -msgid "invalid arch-dependent ELF magic" -msgstr "" - -#: grub-core/kern/corecmd.c:178 -msgid "[ENVVAR=VALUE]" -msgstr "[ENVVAR=VALUE]" - -#: grub-core/kern/corecmd.c:179 -msgid "Set an environment variable." -msgstr "設定環境變數。" - -#: grub-core/kern/corecmd.c:183 -msgid "ENVVAR" -msgstr "ENVVAR" - -#: grub-core/kern/corecmd.c:184 -msgid "Remove an environment variable." -msgstr "移除環境變數。" - -#: grub-core/kern/corecmd.c:186 -msgid "[ARG]" -msgstr "[ARG]" - -#: grub-core/kern/corecmd.c:186 -msgid "List devices or files." -msgstr "列出è£ç½®æˆ–檔案。" - -#: grub-core/kern/corecmd.c:188 -msgid "Insert a module." -msgstr "æ’入模組。" - -#: grub-core/kern/disk.c:236 grub-core/net/net.c:1390 -#, c-format -msgid "disk `%s' not found" -msgstr "" - -#: grub-core/kern/disk_common.c:27 -msgid "attempt to read or write outside of partition" -msgstr "" - -#: grub-core/kern/dl.c:212 grub-core/kern/elf.c:61 grub-core/kern/elf.c:79 -#: grub-core/loader/i386/bsdXX.c:46 grub-core/loader/ia64/efi/linux.c:335 -#: grub-core/loader/multiboot_elfxx.c:69 -msgid "invalid arch-independent ELF magic" -msgstr "" - -#. TRANSLATORS: it refers to the lack of free slots. -#: grub-core/kern/emu/hostdisk.c:208 grub-core/kern/emu/hostdisk.c:466 -msgid "device count exceeds limit" -msgstr "è£ç½®è¨ˆæ•¸è¶…出é™åˆ¶" - -#: grub-core/kern/emu/hostdisk.c:342 util/editenv.c:54 util/grub-editenv.c:197 -#: util/grub-fstest.c:191 util/grub-mkfont.c:796 util/misc.c:114 -#: util/misc.c:129 util/setup.c:788 -#, fuzzy, c-format -msgid "cannot write to `%s': %s" -msgstr "無法開啟「%sã€" - -#. TRANSLATORS: Only one entry is ignored. However the suggestion -#. is to correct/delete the whole file. -#. device.map is a file indicating which -#. devices are available at boot time. Fedora populated it with -#. entries like (hd0,1) /dev/sda1 which would mean that every -#. partition is a separate disk for BIOS. Such entries were -#. inactive in GRUB due to its bug which is now gone. Without -#. this additional check these entries would be harmful now. -#. -#: grub-core/kern/emu/hostdisk.c:503 -#, c-format -msgid "" -"the device.map entry `%s' is invalid. Ignoring it. Please correct or delete " -"your device.map" -msgstr "" - -#. TRANSLATORS: device.map is a filename. Not to be translated. -#. device.map specifies disk correspondance overrides. Previously -#. one could create any kind of device name with this. Due to -#. some problems we decided to limit it to just a handful -#. possibilities. -#: grub-core/kern/emu/hostdisk.c:555 -#, c-format -msgid "" -"the drive name `%s' in device.map is incorrect. Using %s instead. Please use " -"the form [hfc]d[0-9]* (E.g. `hd0' or `cd')" -msgstr "" - -#: grub-core/kern/emu/hostfs.c:76 grub-core/kern/emu/hostfs.c:109 -#, fuzzy, c-format -msgid "can't open `%s': %s" -msgstr "無法開啟「%sã€" - -#: grub-core/kern/emu/main.c:99 util/grub-fstest.c:516 util/grub-mount.c:452 -msgid "DEVICE_NAME" -msgstr "DEVICE_NAME" - -#: grub-core/kern/emu/main.c:99 grub-core/loader/i386/bsd.c:136 -#: grub-core/loader/i386/bsd.c:169 util/grub-fstest.c:516 util/grub-mount.c:452 -msgid "Set root device." -msgstr "設定根è£ç½®ã€‚" - -#. TRANSLATORS: There are many devices in device map. -#: grub-core/kern/emu/main.c:102 util/grub-probe.c:733 util/grub-setup.c:85 -#, fuzzy, c-format -msgid "use FILE as the device map [default=%s]" -msgstr "使用 FILE 作為è£ç½®æ˜ å°„ [é è¨­=%s]" - -#. TRANSLATORS: There are many devices in device map. -#: grub-core/kern/emu/main.c:105 -msgid "use FILE as memdisk" -msgstr "" - -#: grub-core/kern/emu/main.c:107 util/grub-setup.c:83 -#, fuzzy, c-format -msgid "use GRUB files in the directory DIR [default=%s]" -msgstr "使用 DIR 目錄內的 GRUB 檔 [é è¨­=%s]" - -#: grub-core/kern/emu/main.c:108 include/grub/util/install.h:67 -#: util/grub-editenv.c:58 util/grub-fstest.c:525 util/grub-glue-efi.c:58 -#: util/grub-macbless.c:104 util/grub-mkfont.c:962 util/grub-mkimage.c:84 -#: util/grub-mklayout.c:56 util/grub-mount.c:458 util/grub-probe.c:735 -#: util/grub-render-label.c:74 util/grub-script-check.c:52 util/grub-setup.c:90 -#: util/grub-syslinux2cfg.c:78 -#, fuzzy -msgid "print verbose messages." -msgstr "列å°å†—長訊æ¯ã€‚" - -#: grub-core/kern/emu/main.c:109 grub-core/lib/gnulib/argp-parse.c:85 -msgid "SECS" -msgstr "" - -#: grub-core/kern/emu/main.c:109 -msgid "wait until a debugger will attach" -msgstr "" - -#: grub-core/kern/emu/main.c:171 util/grub-macbless.c:143 -#: util/grub-mkrelpath.c:61 util/grub-probe.c:874 util/grub-script-check.c:75 -#: util/grub-setup.c:203 -#, fuzzy, c-format -msgid "Unknown extra argument `%s'." -msgstr "未知的é¡å¤–引數「%sã€ã€‚\n" - -#: grub-core/kern/emu/main.c:185 -#, fuzzy -msgid "GRUB emulator." -msgstr "å¸è¼‰ EFI 模擬器。" - -#: grub-core/kern/emu/main.c:213 util/grub-editenv.c:262 -#: util/grub-glue-efi.c:110 util/grub-macbless.c:173 util/grub-mkfont.c:1177 -#: util/grub-mkimage.c:266 util/grub-mklayout.c:494 -#: util/grub-mkpasswd-pbkdf2.c:132 util/grub-mkrelpath.c:96 -#: util/grub-probe.c:863 util/grub-render-label.c:152 -#: util/grub-script-check.c:160 util/grub-setup.c:262 -#: util/grub-syslinux2cfg.c:163 -msgid "Error in parsing command line arguments\n" -msgstr "è§£æžæŒ‡ä»¤åˆ—引數時發生錯誤\n" - -#. TRANSLATORS: In this case GRUB tells user what he has to do. -#: grub-core/kern/emu/main.c:248 -#, c-format -msgid "Run `gdb %s %d', and set ARGS.HOLD to zero.\n" -msgstr "" - -#: grub-core/kern/emu/misc.c:48 -#, fuzzy, c-format -msgid "%s: warning:" -msgstr "%s:警告:" - -#: grub-core/kern/emu/misc.c:64 -#, c-format -msgid "%s: info:" -msgstr "%s:資訊:" - -#: grub-core/kern/emu/misc.c:79 util/grub-fstest.c:567 util/grub-fstest.c:576 -#: util/grub-mount.c:497 util/grub-mount.c:505 -#, c-format -msgid "%s: error:" -msgstr "%s:錯誤:" - -#: grub-core/kern/emu/misc.c:176 -#, fuzzy, c-format -msgid "file `%s' is too big" -msgstr "「%sã€çš„大å°éŽå¤§" - -#: grub-core/kern/fs.c:120 -#, fuzzy -msgid "unknown filesystem" -msgstr "éžå·²çŸ¥æª”案系統" - -#: grub-core/kern/mips/arc/init.c:273 grub-core/kern/mips/loongson/init.c:301 -msgid "Shutdown failed" -msgstr "" - -#: grub-core/kern/mips/arc/init.c:285 -msgid "Exit failed" -msgstr "" - -#: grub-core/kern/misc.c:351 grub-core/kern/misc.c:408 include/grub/misc.h:269 -#: include/grub/misc.h:278 -msgid "overflow is detected" -msgstr "" - -#: grub-core/kern/partition.c:51 grub-core/partmap/bsdlabel.c:108 -#, c-format -msgid "Discarding improperly nested partition (%s,%s,%s%d)" -msgstr "" - -#: grub-core/kern/rescue_parser.c:73 util/grub-editenv.c:292 -#, c-format -msgid "Unknown command `%s'.\n" -msgstr "未知指令「%sã€ã€‚\n" - -#: grub-core/lib/arg.c:31 -msgid "Display this help and exit." -msgstr "顯示本幫助並離開。" - -#: grub-core/lib/arg.c:33 -msgid "Display the usage of this command and exit." -msgstr "顯示本指令的用法並離開。" - -#: grub-core/lib/arg.c:362 -#, c-format -msgid "missing mandatory option for `%s'" -msgstr "" - -#: grub-core/lib/arg.c:384 -#, c-format -msgid "the argument `%s' requires an integer" -msgstr "" - -#: grub-core/lib/arg.c:407 -#, c-format -msgid "" -"a value was assigned to the argument `%s' while it doesn't require an " -"argument" -msgstr "" - -#: grub-core/lib/backtrace.c:64 -#, fuzzy -msgid "Print backtrace." -msgstr "列å°å€å¡Šæ¸…單。" - -#: grub-core/lib/gnulib/argp-help.c:149 -#, c-format -msgid "ARGP_HELP_FMT: %s value is less than or equal to %s" -msgstr "" - -#: grub-core/lib/gnulib/argp-help.c:225 -#, c-format -msgid "%.*s: ARGP_HELP_FMT parameter requires a value" -msgstr "" - -#: grub-core/lib/gnulib/argp-help.c:235 -#, c-format -msgid "%.*s: Unknown ARGP_HELP_FMT parameter" -msgstr "" - -#: grub-core/lib/gnulib/argp-help.c:248 -#, c-format -msgid "Garbage in ARGP_HELP_FMT: %s" -msgstr "" - -#: grub-core/lib/gnulib/argp-help.c:1229 -msgid "" -"Mandatory or optional arguments to long options are also mandatory or " -"optional for any corresponding short options." -msgstr "" - -#: grub-core/lib/gnulib/argp-help.c:1620 -msgid " or: " -msgstr "" - -#: grub-core/lib/gnulib/argp-help.c:1632 -#, fuzzy -msgid " [OPTION...]" -msgstr "[OPTIONS...]" - -#: grub-core/lib/gnulib/argp-help.c:1659 -#, fuzzy, c-format -msgid "Try '%s --help' or '%s --usage' for more information.\n" -msgstr "試試「%s --helpã€ä»¥å–得更多資訊。\n" - -#: grub-core/lib/gnulib/argp-help.c:1687 -#, c-format -msgid "Report bugs to %s.\n" -msgstr "" - -#: grub-core/lib/gnulib/argp-help.c:1888 grub-core/lib/gnulib/error.c:195 -msgid "Unknown system error" -msgstr "" - -#: grub-core/lib/gnulib/argp-parse.c:81 -#, fuzzy -msgid "give this help list" -msgstr "顯示本幫助並離開。" - -#: grub-core/lib/gnulib/argp-parse.c:82 -msgid "give a short usage message" -msgstr "" - -#: grub-core/lib/gnulib/argp-parse.c:83 util/grub-mkfont.c:946 -#, fuzzy -msgid "NAME" -msgstr "VARNAME" - -#: grub-core/lib/gnulib/argp-parse.c:84 -msgid "set the program name" -msgstr "" - -#: grub-core/lib/gnulib/argp-parse.c:86 -msgid "hang for SECS seconds (default 3600)" -msgstr "" - -#: grub-core/lib/gnulib/argp-parse.c:143 -msgid "print program version" -msgstr "" - -#: grub-core/lib/gnulib/argp-parse.c:160 -msgid "(PROGRAM ERROR) No version known!?" -msgstr "" - -#: grub-core/lib/gnulib/argp-parse.c:613 -#, c-format -msgid "%s: Too many arguments\n" -msgstr "" - -#: grub-core/lib/gnulib/argp-parse.c:759 -msgid "(PROGRAM ERROR) Option should have been recognized!?" -msgstr "" - -#: grub-core/lib/gnulib/getopt.c:278 -#, c-format -msgid "%s: option '%s%s' is ambiguous\n" -msgstr "" - -#: grub-core/lib/gnulib/getopt.c:284 -#, c-format -msgid "%s: option '%s%s' is ambiguous; possibilities:" -msgstr "" - -#: grub-core/lib/gnulib/getopt.c:319 -#, c-format -msgid "%s: unrecognized option '%s%s'\n" -msgstr "" - -#: grub-core/lib/gnulib/getopt.c:345 -#, c-format -msgid "%s: option '%s%s' doesn't allow an argument\n" -msgstr "" - -#: grub-core/lib/gnulib/getopt.c:360 -#, c-format -msgid "%s: option '%s%s' requires an argument\n" -msgstr "" - -#: grub-core/lib/gnulib/getopt.c:621 -#, c-format -msgid "%s: invalid option -- '%c'\n" -msgstr "" - -#: grub-core/lib/gnulib/getopt.c:636 grub-core/lib/gnulib/getopt.c:682 -#, c-format -msgid "%s: option requires an argument -- '%c'\n" -msgstr "" - -#: grub-core/lib/gnulib/openat-die.c:38 -#, c-format -msgid "unable to record current working directory" -msgstr "" - -#: grub-core/lib/gnulib/openat-die.c:57 -#, c-format -msgid "failed to return to initial working directory" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:135 grub-core/osdep/aros/hostdisk.c:523 -msgid "Success" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:138 -msgid "No match" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:141 -#, fuzzy -msgid "Invalid regular expression" -msgstr "評估表述å¼ã€‚" - -#: grub-core/lib/gnulib/regcomp.c:144 -msgid "Invalid collation character" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:147 -msgid "Invalid character class name" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:150 -msgid "Trailing backslash" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:153 -msgid "Invalid back reference" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:156 -msgid "Unmatched [, [^, [:, [., or [=" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:159 -msgid "Unmatched ( or \\(" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:162 -msgid "Unmatched \\{" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:165 -msgid "Invalid content of \\{\\}" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:168 -msgid "Invalid range end" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:171 -msgid "Memory exhausted" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:174 -msgid "Invalid preceding regular expression" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:177 -msgid "Premature end of regular expression" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:180 -msgid "Regular expression too big" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:183 -msgid "Unmatched ) or \\)" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:531 -msgid "unknown regexp error" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:676 -msgid "No previous regular expression" -msgstr "" - -#: grub-core/lib/i386/halt.c:77 -msgid "GRUB doesn't know how to halt this machine yet!" -msgstr "" - -#: grub-core/lib/legacy_parse.c:75 -msgid "Default server is ${net_default_server}" -msgstr "" - -#: grub-core/lib/legacy_parse.c:844 grub-core/video/colors.c:296 -#: grub-core/video/colors.c:305 grub-core/video/colors.c:311 -#: grub-core/video/colors.c:327 util/render-label.c:84 util/render-label.c:98 -#, fuzzy, c-format -msgid "invalid color specification `%s'" -msgstr "無效的根è£ç½®ã€Œ%sã€" - -#: grub-core/lib/mips/arc/reboot.c:32 grub-core/lib/mips/loongson/reboot.c:61 -msgid "Reboot failed" -msgstr "" - -#: grub-core/lib/random.c:113 -msgid "[LENGTH]" -msgstr "" - -#: grub-core/lib/random.c:114 -msgid "Hexdump random data." -msgstr "" - -#: grub-core/loader/arm/linux.c:242 -msgid "device tree must be supplied (see `devicetree' command)" -msgstr "" - -#: grub-core/loader/arm/linux.c:334 -msgid "invalid zImage" -msgstr "" - -#: grub-core/loader/arm/linux.c:450 grub-core/loader/efi/fdt.c:144 -#, fuzzy -msgid "invalid device tree" -msgstr "無效的è£ç½®ã€Œ%sã€ã€‚\n" - -#: grub-core/loader/arm/linux.c:493 grub-core/loader/arm64/linux.c:383 -#: grub-core/loader/i386/linux.c:1125 grub-core/loader/i386/pc/linux.c:479 -#: grub-core/loader/i386/xen.c:962 grub-core/loader/i386/xen.c:964 -#: grub-core/loader/ia64/efi/linux.c:591 grub-core/loader/mips/linux.c:501 -#: grub-core/loader/powerpc/ieee1275/linux.c:383 -#: grub-core/loader/riscv/linux.c:50 -#: grub-core/loader/sparc64/ieee1275/linux.c:511 -msgid "Load Linux." -msgstr "載入 Linux。" - -#: grub-core/loader/arm/linux.c:495 grub-core/loader/arm64/linux.c:385 -#: grub-core/loader/i386/linux.c:1127 grub-core/loader/i386/pc/linux.c:482 -#: grub-core/loader/i386/xen.c:966 grub-core/loader/ia64/efi/linux.c:594 -#: grub-core/loader/mips/linux.c:503 -#: grub-core/loader/powerpc/ieee1275/linux.c:385 -#: grub-core/loader/riscv/linux.c:52 -#: grub-core/loader/sparc64/ieee1275/linux.c:513 -msgid "Load initrd." -msgstr "載入 initrd。" - -#. TRANSLATORS: DTB stands for device tree blob. -#: grub-core/loader/arm/linux.c:498 grub-core/loader/efi/fdt.c:169 -#, fuzzy -msgid "Load DTB file." -msgstr "載入 XNU 映åƒã€‚" - -#: grub-core/loader/arm64/linux.c:59 -msgid "" -"plain image kernel not supported - rebuild with CONFIG_(U)EFI_STUB enabled" -msgstr "" - -#: grub-core/loader/arm64/xen_boot.c:156 -msgid "failed to get FDT" -msgstr "" - -#: grub-core/loader/arm64/xen_boot.c:418 -msgid "you need to load the Xen Hypervisor first" -msgstr "" - -#: grub-core/loader/arm64/xen_boot.c:516 -msgid "Load a xen hypervisor." -msgstr "" - -#: grub-core/loader/arm64/xen_boot.c:519 -#, fuzzy -msgid "Load a xen module." -msgstr "載入 NetBSD 內核模組。" - -#: grub-core/loader/efi/appleloader.c:231 -#, fuzzy -msgid "[OPTS]" -msgstr "[OPTIONS...]" - -#. TRANSLATORS: This command is used on EFI to -#. switch to BIOS mode and boot the OS requiring -#. BIOS. -#: grub-core/loader/efi/appleloader.c:235 -#, fuzzy -msgid "Boot BIOS-based system." -msgstr "啟動舊å¼ç³»çµ±ã€‚" - -#: grub-core/loader/efi/chainloader.c:421 -#: grub-core/loader/i386/pc/chainloader.c:303 -msgid "Load another boot loader." -msgstr "載入å¦ä¸€å€‹é–‹æ©Ÿè¼‰å…¥ç¨‹å¼ã€‚" - -#: grub-core/loader/i386/bsd.c:103 -msgid "Display output on all consoles." -msgstr "顯示輸出於所有主控臺。" - -#: grub-core/loader/i386/bsd.c:104 grub-core/loader/i386/bsd.c:138 -#: grub-core/loader/i386/bsd.c:171 -msgid "Use serial console." -msgstr "使用åºåˆ—主控臺。" - -#: grub-core/loader/i386/bsd.c:105 grub-core/loader/i386/bsd.c:131 -#: grub-core/loader/i386/bsd.c:159 -msgid "Ask for file name to reboot from." -msgstr "è©¢å•è¦å¾žä½•釿–°é–‹æ©Ÿçš„æª”å。" - -#: grub-core/loader/i386/bsd.c:106 -#, fuzzy -msgid "Use CD-ROM as root." -msgstr "使用 CDROM 作為根。" - -#: grub-core/loader/i386/bsd.c:107 -msgid "Invoke user configuration routing." -msgstr "喚起使用者組態路由。" - -#: grub-core/loader/i386/bsd.c:108 grub-core/loader/i386/bsd.c:135 -#: grub-core/loader/i386/bsd.c:162 -msgid "Enter in KDB on boot." -msgstr "開機時進入 KDB。" - -#: grub-core/loader/i386/bsd.c:109 -msgid "Use GDB remote debugger instead of DDB." -msgstr "使用 GDB é ç«¯é™¤éŒ¯å™¨å–代 DDB。" - -#: grub-core/loader/i386/bsd.c:110 -msgid "Disable all boot output." -msgstr "åœç”¨æ‰€æœ‰é–‹æ©Ÿè¼¸å‡ºã€‚" - -#: grub-core/loader/i386/bsd.c:112 -msgid "Wait for keypress after every line of output." -msgstr "在æ¯åˆ—è¼¸å‡ºå¾Œç­‰å€™æŒ‰éµæŒ‰å£“。" - -#: grub-core/loader/i386/bsd.c:114 -#, fuzzy -msgid "Use compiled-in root device." -msgstr "使用內編譯的 rootdev。" - -#: grub-core/loader/i386/bsd.c:115 grub-core/loader/i386/bsd.c:134 -#: grub-core/loader/i386/bsd.c:165 -msgid "Boot into single mode." -msgstr "啟動單人模å¼ã€‚" - -#: grub-core/loader/i386/bsd.c:116 grub-core/loader/i386/bsd.c:166 -msgid "Boot with verbose messages." -msgstr "以冗長訊æ¯é–‹æ©Ÿã€‚" - -#: grub-core/loader/i386/bsd.c:132 grub-core/loader/i386/bsd.c:160 -msgid "Don't reboot, just halt." -msgstr "ä¸è¦é‡æ–°é–‹æ©Ÿï¼Œé—œæ©Ÿå°±å¥½ã€‚" - -#: grub-core/loader/i386/bsd.c:133 grub-core/loader/i386/bsd.c:161 -msgid "Change configured devices." -msgstr "變更已設定的è£ç½®ã€‚" - -#. TRANSLATORS: "com" is static and not to be translated. It refers to -#. serial ports e.g. com1. -#. -#: grub-core/loader/i386/bsd.c:142 -msgid "comUNIT[,SPEED]" -msgstr "comUNIT[,SPEED]" - -#: grub-core/loader/i386/bsd.c:157 -msgid "Disable SMP." -msgstr "åœç”¨ SMP。" - -#: grub-core/loader/i386/bsd.c:158 -msgid "Disable ACPI." -msgstr "åœç”¨ ACPI。" - -#: grub-core/loader/i386/bsd.c:164 -msgid "Don't display boot diagnostic messages." -msgstr "ä¸è¦é¡¯ç¤ºé–‹æ©Ÿè¨ºæ–·è¨Šæ¯ã€‚" - -#: grub-core/loader/i386/bsd.c:167 -msgid "Boot with debug messages." -msgstr "以除錯訊æ¯é–‹æ©Ÿã€‚" - -#: grub-core/loader/i386/bsd.c:168 -#, fuzzy -msgid "Suppress normal output (warnings remain)." -msgstr "抑制一般輸出 (ä»ä¿ç•™è­¦å‘Šè¨Šæ¯)。" - -#. TRANSLATORS: "com" is static and not to be translated. It refers to -#. serial ports e.g. com1. -#. -#: grub-core/loader/i386/bsd.c:175 -msgid "[ADDR|comUNIT][,SPEED]" -msgstr "[ADDR|comUNIT][,SPEED]" - -#: grub-core/loader/i386/bsd.c:489 grub-core/loader/i386/bsd.c:555 -msgid "name" -msgstr "" - -#: grub-core/loader/i386/bsd.c:489 grub-core/loader/i386/bsd.c:555 -msgid "type" -msgstr "" - -#: grub-core/loader/i386/bsd.c:489 grub-core/loader/i386/bsd.c:555 -msgid "addr" -msgstr "" - -#: grub-core/loader/i386/bsd.c:490 grub-core/loader/i386/bsd.c:556 -msgid "size" -msgstr "" - -#: grub-core/loader/i386/bsd.c:1147 grub-core/loader/i386/linux.c:466 -#: grub-core/loader/i386/xnu.c:1030 -#, fuzzy -msgid "Booting in blind mode" -msgstr "啟動單人模å¼ã€‚" - -#: grub-core/loader/i386/bsd.c:2137 -msgid "Load kernel of FreeBSD." -msgstr "載入 FreeBSD 內核。" - -#: grub-core/loader/i386/bsd.c:2140 -msgid "Load kernel of OpenBSD." -msgstr "載入 OpenBSD 內核。" - -#: grub-core/loader/i386/bsd.c:2143 -msgid "Load kernel of NetBSD." -msgstr "載入 NetBSD 內核。" - -#: grub-core/loader/i386/bsd.c:2147 -msgid "Load FreeBSD env." -msgstr "載入 FreeBSD env。" - -#: grub-core/loader/i386/bsd.c:2150 -msgid "Load FreeBSD kernel module." -msgstr "載入 FreeBSD 內核模組。" - -#: grub-core/loader/i386/bsd.c:2153 -msgid "Load NetBSD kernel module." -msgstr "載入 NetBSD 內核模組。" - -#: grub-core/loader/i386/bsd.c:2156 -msgid "Load NetBSD kernel module (ELF)." -msgstr "載入 NetBSD 內核模組 (ELF)。" - -#: grub-core/loader/i386/bsd.c:2159 -msgid "Load FreeBSD kernel module (ELF)." -msgstr "載入 FreeBSD 內核模組 (ELF)。" - -#. TRANSLATORS: ramdisk isn't identifier, -#. it can be translated. -#: grub-core/loader/i386/bsd.c:2165 -#, fuzzy -msgid "Load kOpenBSD ramdisk." -msgstr "載入 OpenBSD 內核。" - -#. TRANSLATORS: "payload" is a term used -#. by coreboot and must be translated in -#. sync with coreboot. If unsure, -#. let it untranslated. -#: grub-core/loader/i386/coreboot/chainloader.c:510 -#, fuzzy -msgid "Load another coreboot payload" -msgstr "載入å¦ä¸€å€‹é–‹æ©Ÿè¼‰å…¥ç¨‹å¼ã€‚" - -#: grub-core/loader/i386/linux.c:876 -msgid "Legacy `ask' parameter no longer supported." -msgstr "" - -#: grub-core/loader/i386/linux.c:892 grub-core/loader/i386/linux.c:902 -#: grub-core/loader/i386/linux.c:932 -#, c-format -msgid "%s is deprecated. Use set gfxpayload=%s before linux command instead.\n" -msgstr "" - -#. TRANSLATORS: "x" has to be entered in, like an identifier, -#. so please don't use better Unicode codepoints. -#: grub-core/loader/i386/linux.c:915 -#, c-format -msgid "" -"%s is deprecated. VGA mode %d isn't recognized. Use set " -"gfxpayload=WIDTHxHEIGHT[xDEPTH] before linux command instead.\n" -msgstr "" - -#: grub-core/loader/i386/pc/chainloader.c:302 -msgid "[--force|--bpb] FILE" -msgstr "" - -#: grub-core/loader/i386/pc/freedos.c:148 util/setup.c:293 -#, c-format -msgid "the size of `%s' is too large" -msgstr "「%sã€çš„大å°éŽå¤§" - -#: grub-core/loader/i386/pc/freedos.c:183 -#, fuzzy -msgid "Load FreeDOS kernel.sys." -msgstr "載入 FreeBSD 內核模組。" - -#: grub-core/loader/i386/pc/ntldr.c:155 -msgid "Load NTLDR or BootMGR." -msgstr "載入 NTLDR 或 BootMGR。" - -#. TRANSLATORS: it's about guessing which GRUB disk -#. is which Plan9 disk. If your language has no -#. word "mapping" you can use another word which -#. means that the GRUBDEVICE and PLAN9DEVICE are -#. actually the same device, just named differently -#. in OS and GRUB. -#: grub-core/loader/i386/pc/plan9.c:59 -msgid "Override guessed mapping of Plan9 devices." -msgstr "" - -#: grub-core/loader/i386/pc/plan9.c:60 -msgid "GRUBDEVICE=PLAN9DEVICE" -msgstr "" - -#: grub-core/loader/i386/pc/plan9.c:599 -msgid "KERNEL ARGS" -msgstr "" - -#: grub-core/loader/i386/pc/plan9.c:599 -#, fuzzy -msgid "Load Plan9 kernel." -msgstr "載入 multiboot 內核。" - -#: grub-core/loader/i386/pc/pxechainloader.c:161 -#, fuzzy -msgid "Load a PXE image." -msgstr "載入 XNU 映åƒã€‚" - -#: grub-core/loader/i386/pc/truecrypt.c:226 -msgid "Load Truecrypt ISO." -msgstr "" - -#: grub-core/loader/i386/xen.c:781 grub-core/loader/i386/xen.c:865 -msgid "initrd already loaded" -msgstr "" - -#: grub-core/loader/i386/xen.c:968 -#, fuzzy -msgid "Load module." -msgstr "移除模組。" - -#: grub-core/loader/i386/xnu.c:1003 -#, fuzzy -msgid "Press any key to launch xnu" -msgstr "按下任æ„éµç¹¼çºŒ..." - -#. TRANSLATORS: `device-properties' -#. is a variable name, -#. not a program. -#: grub-core/loader/i386/xnu.c:1159 -#, fuzzy -msgid "Load `device-properties' dump." -msgstr "載入è£ç½®å±¬æ€§å‚¾å°ã€‚" - -#: grub-core/loader/ia64/efi/linux.c:124 -msgid "Could not locate FPSWA driver" -msgstr "" - -#: grub-core/loader/ia64/efi/linux.c:132 -msgid "FPSWA protocol wasn't able to find the interface" -msgstr "" - -#: grub-core/loader/ia64/efi/linux.c:580 -msgid "No FPSWA found" -msgstr "" - -#: grub-core/loader/ia64/efi/linux.c:582 -#, c-format -msgid "FPSWA revision: %x\n" -msgstr "" - -#: grub-core/loader/ia64/efi/linux.c:591 -#, fuzzy -msgid "FILE [ARGS...]" -msgstr "FILE [ARG ...]" - -#: grub-core/loader/ia64/efi/linux.c:597 -msgid "Display FPSWA version." -msgstr "" - -#: grub-core/loader/multiboot.c:248 -msgid "WARNING: no console will be available to OS" -msgstr "" - -#: grub-core/loader/multiboot.c:450 -msgid "Load a multiboot 2 kernel." -msgstr "載入 multiboot 2 內核。" - -#: grub-core/loader/multiboot.c:453 -msgid "Load a multiboot 2 module." -msgstr "載入 multiboot 2 模組。" - -#: grub-core/loader/multiboot.c:456 -msgid "Load a multiboot kernel." -msgstr "載入 multiboot 內核。" - -#: grub-core/loader/multiboot.c:459 -msgid "Load a multiboot module." -msgstr "載入 multiboot 模組。" - -#: grub-core/loader/riscv/linux.c:30 grub-core/loader/riscv/linux.c:40 -msgid "Linux not supported yet" -msgstr "" - -#: grub-core/loader/xnu.c:1416 grub-core/term/gfxterm_background.c:45 -msgid "Background image mode." -msgstr "" - -#. TRANSLATORS: This refers to background image mode (stretched or -#. in left-top corner). Note that GRUB will accept only original -#. keywords stretch and normal, not the translated ones. -#. So please put both in translation -#. e.g. stretch(=%STRETCH%)|normal(=%NORMAL%). -#. The percents mark the translated version. Since many people -#. may not know the word stretch or normal I recommend -#. putting the translation either here or in "Background image mode." -#. string. -#: grub-core/loader/xnu.c:1416 grub-core/term/gfxterm_background.c:55 -#, fuzzy -msgid "stretch|normal" -msgstr "[-m (stretch|normal)] FILE" - -#: grub-core/loader/xnu.c:1482 -msgid "Load XNU image." -msgstr "載入 XNU 映åƒã€‚" - -#: grub-core/loader/xnu.c:1484 -msgid "Load 64-bit XNU image." -msgstr "載入 64 ä½å…ƒ XNU 映åƒã€‚" - -#: grub-core/loader/xnu.c:1486 -msgid "Load XNU extension package." -msgstr "載入 XNU 擴充套件。" - -#: grub-core/loader/xnu.c:1488 -msgid "Load XNU extension." -msgstr "載入 XNU 擴充。" - -#. TRANSLATORS: OSBundleRequired is a -#. variable name in xnu extensions -#. manifests. It behaves mostly like -#. GNU/Linux runlevels. -#. -#: grub-core/loader/xnu.c:1495 -msgid "DIRECTORY [OSBundleRequired]" -msgstr "DIRECTORY [OSBundleRequired]" - -#. TRANSLATORS: There are many extensions -#. in extension directory. -#: grub-core/loader/xnu.c:1498 -msgid "Load XNU extension directory." -msgstr "載入 XNU 擴充目錄。" - -#. TRANSLATORS: ramdisk here isn't identifier. It can be translated. -#: grub-core/loader/xnu.c:1501 -msgid "Load XNU ramdisk. It will be available in OS as md0." -msgstr "" - -#: grub-core/loader/xnu.c:1505 -msgid "Load a splash image for XNU." -msgstr "為 XNU 載入 splash å½±åƒã€‚" - -#: grub-core/loader/xnu.c:1510 -#, fuzzy -msgid "Load an image of hibernated XNU." -msgstr "為 XNU 載入 splash å½±åƒã€‚" - -#: grub-core/mmap/mmap.c:538 -msgid "ADDR1,MASK1[,ADDR2,MASK2[,...]]" -msgstr "ADDR1,MASK1[,ADDR2,MASK2[,...]]" - -#: grub-core/mmap/mmap.c:539 -#, fuzzy -msgid "Declare memory regions as faulty (badram)." -msgstr "宣告記憶體å€åŸŸç‚º badram。" - -#: grub-core/mmap/mmap.c:541 -msgid "FROM[K|M|G] TO[K|M|G]" -msgstr "FROM[K|M|G] TO[K|M|G]" - -#: grub-core/mmap/mmap.c:542 -msgid "Remove any memory regions in specified range." -msgstr "移除任何指定範åœå…§çš„記憶體å€åŸŸã€‚" - -#: grub-core/net/bootp.c:653 -msgid "four arguments expected" -msgstr "" - -#: grub-core/net/bootp.c:661 grub-core/net/net.c:1155 -#, c-format -msgid "unrecognised network interface `%s'" -msgstr "" - -#: grub-core/net/bootp.c:664 -msgid "no DHCP info found" -msgstr "" - -#: grub-core/net/bootp.c:674 -msgid "no DHCP options found" -msgstr "" - -#: grub-core/net/bootp.c:682 -msgid "invalid DHCP option code" -msgstr "" - -#: grub-core/net/bootp.c:686 -#, c-format -msgid "no DHCP option %u found" -msgstr "" - -#: grub-core/net/bootp.c:743 -#, c-format -msgid "unrecognised DHCP option format specification `%s'" -msgstr "" - -#: grub-core/net/bootp.c:767 -msgid "no network card found" -msgstr "" - -#: grub-core/net/bootp.c:859 grub-core/net/net.c:389 -#, c-format -msgid "couldn't autoconfigure %s" -msgstr "" - -#: grub-core/net/bootp.c:873 grub-core/net/bootp.c:876 -msgid "[CARD]" -msgstr "" - -#: grub-core/net/bootp.c:874 -msgid "perform a bootp autoconfiguration" -msgstr "" - -#: grub-core/net/bootp.c:877 -msgid "perform a DHCP autoconfiguration" -msgstr "" - -#: grub-core/net/bootp.c:879 -msgid "VAR INTERFACE NUMBER DESCRIPTION" -msgstr "" - -#: grub-core/net/bootp.c:880 -msgid "" -"retrieve DHCP option and save it into VAR. If VAR is - then print the value." -msgstr "" - -#: grub-core/net/dns.c:459 -msgid "no DNS servers configured" -msgstr "" - -#: grub-core/net/dns.c:522 -msgid "domain name component is too long" -msgstr "" - -#: grub-core/net/dns.c:618 grub-core/net/dns.c:666 -msgid "no DNS record found" -msgstr "" - -#: grub-core/net/dns.c:626 -msgid "no DNS reply received" -msgstr "" - -#: grub-core/net/dns.c:682 -msgid "only ipv4" -msgstr "" - -#: grub-core/net/dns.c:686 -msgid "only ipv6" -msgstr "" - -#: grub-core/net/dns.c:690 -msgid "prefer ipv4" -msgstr "" - -#: grub-core/net/dns.c:694 -msgid "prefer ipv6" -msgstr "" - -#: grub-core/net/dns.c:759 -msgid "ADDRESS DNSSERVER" -msgstr "" - -#: grub-core/net/dns.c:760 -msgid "Perform a DNS lookup" -msgstr "" - -#: grub-core/net/dns.c:762 grub-core/net/dns.c:765 -msgid "DNSSERVER" -msgstr "" - -#: grub-core/net/dns.c:763 -msgid "Add a DNS server" -msgstr "" - -#: grub-core/net/dns.c:766 -msgid "Remove a DNS server" -msgstr "" - -#: grub-core/net/dns.c:768 -#, fuzzy -msgid "List DNS servers" -msgstr "列出 PCI è£ç½®ã€‚" - -#: grub-core/net/drivers/efi/efinet.c:49 grub-core/net/drivers/efi/efinet.c:65 -#: grub-core/net/drivers/efi/efinet.c:77 grub-core/net/drivers/emu/emunet.c:62 -#: grub-core/net/drivers/i386/pc/pxe.c:273 -#: grub-core/net/drivers/ieee1275/ofnet.c:75 -#: grub-core/net/drivers/uboot/ubootnet.c:62 -msgid "couldn't send network packet" -msgstr "" - -#: grub-core/net/drivers/ieee1275/ofnet.c:326 -#: grub-core/net/drivers/ieee1275/ofnet.c:359 -msgid "interpret is not supported" -msgstr "" - -#: grub-core/net/drivers/ieee1275/ofnet.c:336 -msgid "alloc-mem failed" -msgstr "" - -#: grub-core/net/drivers/ieee1275/ofnet.c:370 -msgid "free-mem failed" -msgstr "" - -#: grub-core/net/http.c:105 -msgid "unsupported HTTP response" -msgstr "" - -#. TRANSLATORS: GRUB HTTP code is pretty young. So even perfectly -#. valid answers like 403 will trigger this very generic message. -#: grub-core/net/http.c:126 -#, c-format -msgid "unsupported HTTP error %d: %s" -msgstr "" - -#: grub-core/net/http.c:429 grub-core/net/tftp.c:420 -#, fuzzy, c-format -msgid "time out opening `%s'" -msgstr "無法開啟「%sã€" - -#: grub-core/net/net.c:179 -msgid "timeout: could not resolve hardware address" -msgstr "" - -#: grub-core/net/net.c:548 -#, c-format -msgid "unresolvable address %s" -msgstr "" - -#: grub-core/net/net.c:594 -#, c-format -msgid "unrecognised network address `%s'" -msgstr "" - -#: grub-core/net/net.c:661 -msgid "destination unreachable" -msgstr "" - -#. TRANSLATORS: route loop is a condition when e.g. -#. to contact server A you need to go through B -#. and to contact B you need to go through A. -#: grub-core/net/net.c:684 -msgid "route loop detected" -msgstr "" - -#: grub-core/net/net.c:700 -msgid "address not found" -msgstr "" - -#: grub-core/net/net.c:704 -msgid "you can't delete this address" -msgstr "" - -#: grub-core/net/net.c:776 grub-core/net/net.c:792 -#, c-format -msgid "Unsupported hw address type %d\n" -msgstr "" - -#: grub-core/net/net.c:813 -#, c-format -msgid "Unsupported address type %d\n" -msgstr "" - -#: grub-core/net/net.c:1017 grub-core/net/net.c:1131 -msgid "three arguments expected" -msgstr "" - -#: grub-core/net/net.c:1023 -msgid "card not found" -msgstr "" - -#. TRANSLATORS: it refers to the network address. -#: grub-core/net/net.c:1167 -msgid "temporary" -msgstr "" - -#: grub-core/net/net.c:1190 -#, c-format -msgid "Unknown address type %d\n" -msgstr "" - -#: grub-core/net/net.c:1298 -#, fuzzy -msgid "no server is specified" -msgstr "沒有指定è£ç½®ã€‚\n" - -#: grub-core/net/net.c:1637 -#, c-format -msgid "timeout reading `%s'" -msgstr "" - -#. TRANSLATORS: HWADDRESS stands for -#. "hardware address". -#: grub-core/net/net.c:1762 -msgid "SHORTNAME CARD ADDRESS [HWADDRESS]" -msgstr "" - -#: grub-core/net/net.c:1763 -msgid "Add a network address." -msgstr "" - -#: grub-core/net/net.c:1766 -msgid "[CARD [HWADDRESS]]" -msgstr "" - -#: grub-core/net/net.c:1767 -msgid "Perform an IPV6 autoconfiguration" -msgstr "" - -#: grub-core/net/net.c:1770 grub-core/net/net.c:1777 -#, fuzzy -msgid "SHORTNAME" -msgstr "VARNAME" - -#: grub-core/net/net.c:1771 -#, fuzzy -msgid "Delete a network address." -msgstr "設定åºåˆ—埠ä½å€ã€‚" - -#. TRANSLATORS: "gw" is a keyword. -#: grub-core/net/net.c:1774 -msgid "SHORTNAME NET [INTERFACE| gw GATEWAY]" -msgstr "" - -#: grub-core/net/net.c:1775 -msgid "Add a network route." -msgstr "" - -#: grub-core/net/net.c:1778 -msgid "Delete a network route." -msgstr "" - -#: grub-core/net/net.c:1780 -msgid "list network routes" -msgstr "" - -#: grub-core/net/net.c:1782 -msgid "list network cards" -msgstr "" - -#: grub-core/net/net.c:1784 -msgid "list network addresses" -msgstr "" - -#: grub-core/net/tcp.c:681 -msgid "connection refused" -msgstr "" - -#: grub-core/net/tcp.c:684 -msgid "connection timeout" -msgstr "" - -#: grub-core/normal/auth.c:220 -msgid "Enter username: " -msgstr "輸入使用者å稱:" - -#: grub-core/normal/auth.c:269 -msgid "[USERLIST]" -msgstr "[USERLIST]" - -#: grub-core/normal/auth.c:270 -msgid "Check whether user is in USERLIST." -msgstr "" - -#: grub-core/normal/cmdline.c:174 grub-core/normal/menu_entry.c:1068 -msgid "Possible commands are:" -msgstr "å¯èƒ½çš„æŒ‡ä»¤æœ‰ï¼š" - -#: grub-core/normal/cmdline.c:177 grub-core/normal/menu_entry.c:1072 -msgid "Possible devices are:" -msgstr "å¯èƒ½çš„è£ç½®æœ‰ï¼š" - -#: grub-core/normal/cmdline.c:180 grub-core/normal/menu_entry.c:1076 -msgid "Possible files are:" -msgstr "å¯èƒ½çš„æª”案有:" - -#: grub-core/normal/cmdline.c:183 grub-core/normal/menu_entry.c:1080 -msgid "Possible partitions are:" -msgstr "å¯èƒ½çš„åˆ†å‰²å€æœ‰ï¼š" - -#: grub-core/normal/cmdline.c:186 grub-core/normal/menu_entry.c:1084 -msgid "Possible arguments are:" -msgstr "å¯èƒ½çš„åƒæ•¸æœ‰ï¼š" - -#. TRANSLATORS: this message is used if none of above matches. -#. This shouldn't happen but please use the general term for -#. "thing" or "object". -#: grub-core/normal/cmdline.c:192 grub-core/normal/menu_entry.c:1088 -msgid "Possible things are:" -msgstr "å¯èƒ½çš„æ±è¥¿æœ‰ï¼š" - -#: grub-core/normal/color.c:81 -#, c-format -msgid "Warning: syntax error (missing slash) in `%s'\n" -msgstr "警告:語法錯誤 (éºå¤±æ­£æ–œç·š) 於「%sã€\n" - -#: grub-core/normal/color.c:90 -#, c-format -msgid "Warning: invalid foreground color `%s'\n" -msgstr "è­¦å‘Šï¼šç„¡æ•ˆçš„å‰æ™¯è‰²å½©ã€Œ%sã€\n" - -#: grub-core/normal/color.c:96 -#, c-format -msgid "Warning: invalid background color `%s'\n" -msgstr "警告:無效的背景色彩「%sã€\n" - -#: grub-core/normal/context.c:206 -msgid "ENVVAR [ENVVAR] ..." -msgstr "ENVVAR [ENVVAR] ..." - -#: grub-core/normal/context.c:207 -msgid "Export variables." -msgstr "輸出變數。" - -#: grub-core/normal/datetime.c:25 -msgid "Sunday" -msgstr "" - -#: grub-core/normal/datetime.c:26 -msgid "Monday" -msgstr "" - -#: grub-core/normal/datetime.c:27 -msgid "Tuesday" -msgstr "" - -#: grub-core/normal/datetime.c:28 -msgid "Wednesday" -msgstr "" - -#: grub-core/normal/datetime.c:29 -msgid "Thursday" -msgstr "" - -#: grub-core/normal/datetime.c:30 -msgid "Friday" -msgstr "" - -#: grub-core/normal/datetime.c:31 -msgid "Saturday" -msgstr "" - -#: grub-core/normal/dyncmd.c:187 -#, fuzzy -msgid "module isn't loaded" -msgstr "未載入" - -#: grub-core/normal/main.c:211 -#, c-format -msgid "GNU GRUB version %s" -msgstr "GNU GRUB 版本 %s" - -#: grub-core/normal/main.c:360 -msgid "ESC at any time exits." -msgstr "任何時刻的 ESC 都能離開。" - -#: grub-core/normal/main.c:363 -#, c-format -msgid "" -"Minimal BASH-like line editing is supported. For the first word, TAB lists " -"possible command completions. Anywhere else TAB lists possible device or " -"file completions. %s" -msgstr "" -"æ”¯æ´æœ€åŸºæœ¬çš„類 BASH åˆ—ç·¨è¼¯ã€‚å°æ–¼è¼¸å…¥çš„第一個單詞,TAB å¯ä»¥åˆ—出å¯èƒ½çš„æŒ‡ä»¤è£œ" -"完。其他地方的 TAB å¯ä»¥åˆ—出å¯èƒ½çš„è£ç½®æˆ–檔案補完。%s" - -#. TRANSLATORS: it's command line prompt. -#: grub-core/normal/main.c:395 -msgid ">" -msgstr "" - -#. TRANSLATORS: it's command line prompt. -#: grub-core/normal/main.c:398 -msgid "grub>" -msgstr "" - -#: grub-core/normal/main.c:518 -msgid "Clear the screen." -msgstr "清除畫é¢ã€‚" - -#: grub-core/normal/main.c:527 -msgid "Enter normal mode." -msgstr "輸入一般密碼。" - -#: grub-core/normal/main.c:529 -msgid "Exit from normal mode." -msgstr "離開一般模å¼ã€‚" - -#: grub-core/normal/menu.c:66 grub-core/normal/menu_entry.c:1449 -msgid "Press any key to continue..." -msgstr "按下任æ„éµç¹¼çºŒ..." - -#: grub-core/normal/menu.c:815 -#, fuzzy, c-format -msgid "Booting `%s'" -msgstr "正在啟動「%sã€" - -#: grub-core/normal/menu.c:827 -#, fuzzy, c-format -msgid "Falling back to `%s'" -msgstr "正在退回「%sã€" - -#: grub-core/normal/menu.c:843 -msgid "Failed to boot both default and fallback entries.\n" -msgstr "無法啟動é è¨­æ¢ç›®ä»¥åŠå¾Œå‚™æ¢ç›®ã€‚\n" - -#: grub-core/normal/menu_entry.c:1171 -msgid "Booting a command list" -msgstr "正在啟動指令清單" - -#: grub-core/normal/menu_text.c:160 -msgid "" -"Minimum Emacs-like screen editing is supported. TAB lists completions. Press " -"Ctrl-x or F10 to boot, Ctrl-c or F2 for a command-line or ESC to discard " -"edits and return to the GRUB menu." -msgstr "" -"支æ´åŸºæœ¬çš„類 Emacs 編輯畫é¢ã€‚TAB éµå¯ä»¥åˆ—出補完。按下 Ctrl-x 或是 F10 å¯ä»¥é–‹" -"機,Ctrl-c 或 F12 å¯ä»¥å–得指令列,而 ESC å¯ä»¥æ”¾æ£„編輯並返回 GRUB é¸å–®ã€‚" - -#: grub-core/normal/menu_text.c:170 -#, fuzzy, c-format -msgid "Use the %C and %C keys to select which entry is highlighted." -msgstr "使用 %C ä»¥åŠ %C éµä¾†é¸å–è¦çªé¡¯å“ªå€‹æ¢ç›®ã€‚\n" - -#. TRANSLATORS: that's the list of binary unit prefixes. -#: grub-core/normal/misc.c:38 -msgid "B" -msgstr "" - -#: grub-core/normal/misc.c:38 -msgid "KiB" -msgstr "" - -#: grub-core/normal/misc.c:38 -msgid "MiB" -msgstr "" - -#: grub-core/normal/misc.c:38 -msgid "GiB" -msgstr "" - -#: grub-core/normal/misc.c:38 -msgid "TiB" -msgstr "" - -#: grub-core/normal/misc.c:38 -msgid "PiB" -msgstr "" - -#. TRANSLATORS: that's the list of binary unit prefixes. -#: grub-core/normal/misc.c:40 -msgid "K" -msgstr "" - -#: grub-core/normal/misc.c:40 -msgid "M" -msgstr "" - -#: grub-core/normal/misc.c:40 -msgid "G" -msgstr "" - -#: grub-core/normal/misc.c:40 -msgid "T" -msgstr "" - -#: grub-core/normal/misc.c:40 -msgid "P" -msgstr "" - -#. TRANSLATORS: that's the list of binary unit prefixes. -#: grub-core/normal/misc.c:42 -msgid "B/s" -msgstr "" - -#: grub-core/normal/misc.c:42 -msgid "KiB/s" -msgstr "" - -#: grub-core/normal/misc.c:42 -msgid "MiB/s" -msgstr "" - -#: grub-core/normal/misc.c:42 -msgid "GiB/s" -msgstr "" - -#: grub-core/normal/misc.c:42 -msgid "TiB/s" -msgstr "" - -#: grub-core/normal/misc.c:42 -msgid "PiB/s" -msgstr "" - -#: grub-core/normal/misc.c:96 -#, c-format -msgid "Partition %s:" -msgstr "åˆ†å‰²å€ %s:" - -#: grub-core/normal/misc.c:101 -#, c-format -msgid "Device %s:" -msgstr "è£ç½® %s:" - -#: grub-core/normal/misc.c:107 -msgid "Filesystem cannot be accessed" -msgstr "ç„¡æ³•å­˜å–æª”案系統" - -#: grub-core/normal/misc.c:121 -#, c-format -msgid "Filesystem type %s" -msgstr "檔案系統類型 %s" - -#: grub-core/normal/misc.c:131 -#, fuzzy, c-format -msgid "- Label `%s'" -msgstr "- 標籤「%sã€" - -#. TRANSLATORS: Arguments are year, month, day, hour, minute, -#. second, day of the week (translated). -#: grub-core/normal/misc.c:148 -#, c-format -msgid "- Last modification time %d-%02d-%02d %02d:%02d:%02d %s" -msgstr "- 上次修改時間 %d-%02d-%02d %02d:%02d:%02d %s" - -#: grub-core/normal/misc.c:171 -#, fuzzy -msgid "No known filesystem detected" -msgstr "éžå·²çŸ¥æª”案系統" - -#: grub-core/normal/misc.c:174 -#, fuzzy, c-format -msgid " - Partition start at %llu%sKiB" -msgstr " - 分割å€èµ·å§‹æ–¼ %u" - -#: grub-core/normal/misc.c:178 -#, c-format -msgid " - Sector size %uB" -msgstr "" - -#: grub-core/normal/misc.c:180 -msgid " - Total size unknown" -msgstr " - ç¸½å¤§å°æœªçŸ¥" - -#: grub-core/normal/misc.c:182 -#, fuzzy, c-format -msgid " - Total size %llu%sKiB" -msgstr " - ç¸½å¤§å° %u 個ç£å€" - -#. TRANSLATORS: Replace dot with appropriate decimal separator for -#. your language. -#: grub-core/normal/misc.c:186 -msgid ".5" -msgstr "" - -#. TRANSLATORS: This has to fit on one line. It's ok to include few -#. words but don't write poems. -#: grub-core/normal/term.c:82 -msgid "--MORE--" -msgstr "" - -#: grub-core/osdep/aros/config.c:92 grub-core/osdep/unix/config.c:137 -#: grub-core/osdep/windows/config.c:55 -#, fuzzy, c-format -msgid "cannot open configuration file `%s': %s" -msgstr "無法開啟檔案 %s" - -#: grub-core/osdep/basic/compress.c:8 grub-core/osdep/basic/compress.c:14 -#: grub-core/osdep/basic/compress.c:20 -msgid "no compression is available for your platform" -msgstr "" - -#: grub-core/osdep/basic/no_platform.c:30 -#: grub-core/osdep/windows/platform.c:418 -msgid "no IEEE1275 routines are available for your platform" -msgstr "" - -#: grub-core/osdep/basic/no_platform.c:38 -msgid "no EFI routines are available for your platform" -msgstr "" - -#: grub-core/osdep/basic/no_platform.c:45 -#: grub-core/osdep/windows/platform.c:425 -msgid "no SGI routines are available for your platform" -msgstr "" - -#. TRANSLATORS: The OS itself may very well have a random -#. number generator but GRUB doesn't know how to access it. -#: grub-core/osdep/basic/random.c:42 -msgid "no random number generator is available for your OS" -msgstr "" - -#: grub-core/osdep/devmapper/getroot.c:81 -msgid "Failed to create `device-mapper' tree" -msgstr "" - -#: grub-core/osdep/devmapper/getroot.c:197 -#: grub-core/osdep/freebsd/getroot.c:202 -#, c-format -msgid "can't mount encrypted volume `%s': %s" -msgstr "" - -#. TRANSLATORS: geom is the name of (k)FreeBSD device framework. -#. Usually left untranslated. -#. -#: grub-core/osdep/freebsd/getroot.c:82 grub-core/osdep/freebsd/getroot.c:164 -#: grub-core/osdep/freebsd/getroot.c:258 grub-core/osdep/freebsd/getroot.c:316 -#, fuzzy -msgid "couldn't open geom" -msgstr "無法開啟è£ç½®" - -#: grub-core/osdep/freebsd/getroot.c:182 grub-core/osdep/freebsd/getroot.c:277 -msgid "couldn't find geli consumer" -msgstr "" - -#: grub-core/osdep/freebsd/getroot.c:282 -msgid "couldn't retrieve geli UUID" -msgstr "" - -#. TRANSLATORS: geom is the name of (k)FreeBSD device framework. -#. Usually left untranslated. "part" is the identifier of one of its -#. classes. -#: grub-core/osdep/freebsd/getroot.c:325 -msgid "couldn't find geom `part' class" -msgstr "" - -#: grub-core/osdep/freebsd/hostdisk.c:72 grub-core/osdep/linux/hostdisk.c:93 -#, fuzzy -msgid "unaligned device size" -msgstr "無效的è£ç½®ã€Œ%sã€ã€‚\n" - -#: grub-core/osdep/generic/blocklist.c:56 -#, c-format -msgid "attempting to read the core image `%s' from GRUB" -msgstr "正試圖從 GRUB è®€å–æ ¸å¿ƒæ˜ åƒã€Œ%sã€" - -#: grub-core/osdep/generic/blocklist.c:57 -#, c-format -msgid "attempting to read the core image `%s' from GRUB again" -msgstr "正試圖從 GRUB 冿¬¡è®€å–核心映åƒã€Œ%sã€" - -#: grub-core/osdep/generic/blocklist.c:115 -#, c-format -msgid "cannot read `%s' correctly" -msgstr "無法正確讀å–「%sã€" - -#: grub-core/osdep/generic/blocklist.c:126 -#, fuzzy -msgid "failed to read the sectors of the core image" -msgstr "ç„¡æ³•è®€å–æ ¸å¿ƒæ˜ åƒçš„剩餘ç£å€" - -#. TRANSLATORS: On GNU/Hurd, a "translator" is similar to a filesystem -#. mount, but handled by a userland daemon, whose invocation command line -#. is being fetched here. First %s is the file being looked at (for which -#. we are fetching the "translator" command line), second %s is the error -#. message. -#. -#: grub-core/osdep/hurd/getroot.c:79 -#, c-format -msgid "cannot get translator command line for path `%s': %s" -msgstr "" - -#: grub-core/osdep/hurd/getroot.c:82 -#, c-format -msgid "translator command line is empty for path `%s'" -msgstr "" - -#. TRANSLATORS: we expect to get something like -#. /hurd/foobar --option1 --option2=baz /dev/something -#. -#: grub-core/osdep/hurd/getroot.c:98 -#, c-format -msgid "" -"translator `%s' for path `%s' has several non-option words, at least `%s' " -"and `%s'" -msgstr "" - -#. TRANSLATORS: we expect to get something like -#. /hurd/foobar --option1 --option2=baz /dev/something -#. -#: grub-core/osdep/hurd/getroot.c:109 -#, c-format -msgid "" -"translator `%s' for path `%s' is given only options, cannot find device part" -msgstr "" - -#: grub-core/osdep/hurd/hostdisk.c:73 -#, c-format -msgid "Storage information for `%s' does not include type" -msgstr "" - -#: grub-core/osdep/hurd/hostdisk.c:75 -#, c-format -msgid "`%s' is not a local disk" -msgstr "" - -#: grub-core/osdep/hurd/hostdisk.c:78 -#, c-format -msgid "" -"Storage information for `%s' indicates neither a plain partition nor a plain " -"disk" -msgstr "" - -#: grub-core/osdep/linux/blocklist.c:81 grub-core/osdep/linux/blocklist.c:96 -#: grub-core/osdep/linux/blocklist.c:122 -#, c-format -msgid "can't retrieve blocklists: %s" -msgstr "" - -#: grub-core/osdep/linux/blocklist.c:84 -msgid "blocksize is not divisible by 512" -msgstr "" - -#: grub-core/osdep/linux/blocklist.c:86 -msgid "invalid zero blocksize" -msgstr "" - -#: grub-core/osdep/linux/blocklist.c:90 util/setup.c:744 -msgid "can't retrieve blocklists" -msgstr "" - -#: grub-core/osdep/linux/getroot.c:154 -#, c-format -msgid "ioctl RAID_VERSION error: %s" -msgstr "" - -#: grub-core/osdep/linux/getroot.c:160 grub-core/osdep/linux/getroot.c:164 -#, c-format -msgid "unsupported RAID version: %d.%d" -msgstr "" - -#: grub-core/osdep/linux/getroot.c:169 -#, c-format -msgid "ioctl GET_ARRAY_INFO error: %s" -msgstr "" - -#: grub-core/osdep/linux/getroot.c:178 -#, c-format -msgid "ioctl GET_DISK_INFO error: %s" -msgstr "" - -#: grub-core/osdep/linux/getroot.c:608 grub-core/osdep/linux/getroot.c:678 -#: grub-core/osdep/linux/hostdisk.c:126 grub-core/osdep/unix/getroot.c:253 -#: grub-core/osdep/unix/getroot.c:642 grub-core/osdep/unix/platform.c:92 -#: grub-core/osdep/unix/platform.c:100 -#, c-format -msgid "Unable to open stream from %s: %s" -msgstr "" - -#: grub-core/osdep/linux/getroot.c:1033 -#, fuzzy, c-format -msgid "unknown kind of RAID device `%s'" -msgstr "無效的根è£ç½®ã€Œ%sã€" - -#: grub-core/osdep/linux/ofpath.c:181 -#, c-format -msgid "`obppath' not found in parent dirs of `%s', no IEEE1275 name discovery" -msgstr "" - -#: grub-core/osdep/linux/ofpath.c:222 grub-core/osdep/unix/getroot.c:505 -#: grub-core/osdep/unix/getroot.c:529 grub-core/osdep/unix/relpath.c:49 -#: util/grub-install.c:984 util/grub-install.c:1331 util/grub-probe.c:323 -#, c-format -msgid "failed to get canonical path of `%s'" -msgstr "" - -#: grub-core/osdep/linux/ofpath.c:740 -#, c-format -msgid "unknown device type %s" -msgstr "" - -#: grub-core/osdep/linux/ofpath.c:758 util/ieee1275/grub-ofpathname.c:39 -#, c-format -msgid "Usage: %s DEVICE\n" -msgstr "" - -#: grub-core/osdep/unix/exec.c:86 grub-core/osdep/unix/exec.c:172 -#: grub-core/osdep/unix/exec.c:217 -#, c-format -msgid "Unable to fork: %s" -msgstr "" - -#: grub-core/osdep/unix/exec.c:166 grub-core/osdep/unix/exec.c:211 -#, c-format -msgid "Unable to create pipe: %s" -msgstr "" - -#: grub-core/osdep/unix/getroot.c:370 -msgid "cannot save the original directory" -msgstr "" - -#: grub-core/osdep/unix/getroot.c:423 grub-core/osdep/unix/getroot.c:480 -#: grub-core/osdep/unix/getroot.c:489 -#, fuzzy -msgid "cannot restore the original directory" -msgstr "無法壓縮內核映åƒ" - -#. TRANSLATORS: "stat" comes from the name of POSIX function. -#: grub-core/osdep/unix/getroot.c:551 grub-core/osdep/unix/hostdisk.c:61 -#: grub-core/osdep/unix/relpath.c:73 grub-core/osdep/unix/relpath.c:97 -#: util/getroot.c:160 util/getroot.c:162 util/grub-install.c:774 -#: util/grub-macbless.c:70 -#, fuzzy, c-format -msgid "cannot stat `%s': %s" -msgstr "無法開啟「%sã€" - -#: grub-core/osdep/unix/hostdisk.c:293 -#, fuzzy, c-format -msgid "cannot make temporary file: %s" -msgstr "無法開啟檔案 %s" - -#: grub-core/osdep/unix/hostdisk.c:311 -#, c-format -msgid "cannot make temporary directory: %s" -msgstr "" - -#: grub-core/osdep/unix/platform.c:77 -#, c-format -msgid "" -"couldn't find IEEE1275 device path for %s.\n" -"You will have to set `boot-device' variable manually" -msgstr "" - -#. TRANSLATORS: This message is shown when required executable `%s' -#. isn't found. -#: grub-core/osdep/unix/platform.c:149 grub-core/osdep/unix/platform.c:189 -#, fuzzy, c-format -msgid "%s: not found" -msgstr "%s:資訊:" - -#: grub-core/osdep/unix/platform.c:225 -#, c-format -msgid "" -"`nvsetenv' failed. \n" -"You will have to set `boot-device' variable manually. At the IEEE1275 " -"prompt, type:\n" -" %s\n" -msgstr "" - -#: grub-core/osdep/unix/platform.c:240 -msgid "You will have to set `SystemPartition' and `OSLoader' manually." -msgstr "" - -#. TRANSLATORS: canonical pathname is the -#. complete one e.g. /etc/fstab. It has -#. to contain `/' normally, if it doesn't -#. we're in trouble and throw this error. -#: grub-core/osdep/unix/relpath.c:90 -msgid "no `/' in canonical filename" -msgstr "" - -#: grub-core/osdep/windows/hostdisk.c:151 -msgid "cygwin_conv_path() failed" -msgstr "" - -#: grub-core/osdep/windows/hostdisk.c:501 util/grub-install.c:570 -msgid "couldn't retrieve random data" -msgstr "" - -#: grub-core/osdep/windows/platform.c:97 -msgid "Insufficient privileges to access firmware, assuming BIOS" -msgstr "" - -#: grub-core/osdep/windows/platform.c:225 -msgid "no EFI routines are available when running in BIOS mode" -msgstr "" - -#: grub-core/osdep/windows/platform.c:240 -msgid "unexpected EFI error" -msgstr "" - -#: grub-core/osdep/windows/platform.c:315 -msgid "Couldn't find a free BootNNNN slot" -msgstr "" - -#: grub-core/partmap/gpt.c:191 -msgid "" -"this GPT partition label contains no BIOS Boot Partition; embedding won't be " -"possible" -msgstr "" - -#: grub-core/partmap/gpt.c:196 -msgid "your BIOS Boot Partition is too small; embedding won't be possible" -msgstr "" - -#. TRANSLATORS: MBR gap and boot track is the same thing and is the space -#. between MBR and first partitition. If your language translates well only -#. "boot track", you can just use it everywhere. Next two messages are about -#. RAID controllers/software bugs which GRUB has to live with. Please spread -#. the message that these are bugs in other software and not merely -#. suboptimal behaviour. -#: grub-core/partmap/msdos.c:51 -#, c-format -msgid "" -"Sector %llu is already in use by raid controller `%s'; avoiding it. Please " -"ask the manufacturer not to store data in MBR gap" -msgstr "" - -#: grub-core/partmap/msdos.c:54 -#, c-format -msgid "" -"Sector %llu is already in use by the program `%s'; avoiding it. This " -"software may cause boot or other problems in future. Please ask its authors " -"not to store data in the boot track" -msgstr "" - -#: grub-core/partmap/msdos.c:384 -msgid "" -"other software is using the embedding area, and there is not enough room for " -"core.img. Such software is often trying to store data in a way that avoids " -"detection. We recommend you investigate" -msgstr "" - -#: grub-core/partmap/msdos.c:395 -msgid "" -"this msdos-style partition label has no post-MBR gap; embedding won't be " -"possible" -msgstr "" - -#: grub-core/partmap/msdos.c:404 -msgid "your embedding area is unusually small. core.img won't fit in it." -msgstr "" - -#: grub-core/parttool/msdospart.c:39 -#, fuzzy -msgid "Make partition active" -msgstr "å¯èƒ½çš„åˆ†å‰²å€æœ‰ï¼š" - -#: grub-core/parttool/msdospart.c:51 -msgid "not a primary partition" -msgstr "" - -#: grub-core/parttool/msdospart.c:69 -#, c-format -msgid "Partition %d is active now. \n" -msgstr "" - -#: grub-core/parttool/msdospart.c:74 -#, c-format -msgid "Cleared active flag on %d. \n" -msgstr "" - -#: grub-core/parttool/msdospart.c:87 -#, fuzzy -msgid "Change partition type" -msgstr "åˆ¤æ–·åˆ†å‰²å°æ‡‰é¡žåž‹ã€‚" - -#: grub-core/parttool/msdospart.c:88 -#, fuzzy -msgid "Set `hidden' flag in partition type" -msgstr "åˆ¤æ–·åˆ†å‰²å°æ‡‰é¡žåž‹ã€‚" - -#: grub-core/parttool/msdospart.c:130 -#, c-format -msgid "the partition type 0x%x isn't valid" -msgstr "" - -#. TRANSLATORS: In this case we're actually writing to the disk and actively -#. modifying partition type rather than just defining it. -#: grub-core/parttool/msdospart.c:137 -#, fuzzy, c-format -msgid "Setting partition type to 0x%x\n" -msgstr "åˆ¤æ–·åˆ†å‰²å°æ‡‰é¡žåž‹ã€‚" - -#. TRANSLATORS: 0 is a quantifier. "break" (similar to bash) -#. can be used e.g. to break 3 loops at once. -#. But asking it to break 0 loops makes no sense. -#: grub-core/script/execute.c:143 -msgid "can't break 0 loops" -msgstr "" - -#. TRANSLATORS: It's about not being -#. inside a function. "return" can be used only -#. in a function and this error occurs if it's used -#. anywhere else. -#: grub-core/script/execute.c:227 -msgid "not in function body" -msgstr "" - -#: grub-core/script/execute.c:371 -#, fuzzy, c-format -msgid "invalid variable name `%s'" -msgstr "無效的根è£ç½®ã€Œ%sã€" - -#: grub-core/script/execute.c:953 -msgid "cannot allocate command buffer" -msgstr "" - -#: grub-core/script/lexer.c:144 util/grub-fstest.c:330 -msgid "unexpected end of file" -msgstr "" - -#: grub-core/script/main.c:55 grub-core/script/main.c:57 -#: grub-core/script/main.c:59 grub-core/script/main.c:67 -msgid "[NUM]" -msgstr "" - -#: grub-core/script/main.c:55 -msgid "Exit from loops" -msgstr "離開迴圈" - -#: grub-core/script/main.c:57 -msgid "Continue loops" -msgstr "繼續迴圈" - -#. TRANSLATORS: Positional arguments are -#. arguments $0, $1, $2, ... -#: grub-core/script/main.c:62 -msgid "Shift positional parameters." -msgstr "推移ä½ç½®åƒæ•¸ã€‚" - -#: grub-core/script/main.c:64 -msgid "[VALUE]..." -msgstr "[VALUE]..." - -#: grub-core/script/main.c:65 -msgid "Set positional parameters." -msgstr "設定ä½ç½®åƒæ•¸ã€‚" - -#. TRANSLATORS: It's a command description -#. and "Return" is a verb, not a noun. The -#. command in question is "return" and -#. has exactly the same semanics as bash -#. equivalent. -#: grub-core/script/main.c:73 -msgid "Return from a function." -msgstr "從函å¼å›žå‚³ã€‚" - -#: grub-core/term/gfxterm_background.c:176 -msgid "[-m (stretch|normal)] FILE" -msgstr "[-m (stretch|normal)] FILE" - -#: grub-core/term/gfxterm_background.c:177 -msgid "Load background image for active terminal." -msgstr "為使用中終端機載入背景映åƒã€‚" - -#: grub-core/term/gfxterm_background.c:182 util/grub-install.c:302 -#: util/grub-install.c:303 util/grub-mkrescue.c:107 util/grub-mkrescue.c:108 -#: util/grub-render-label.c:61 util/grub-render-label.c:63 -msgid "COLOR" -msgstr "" - -#: grub-core/term/gfxterm_background.c:183 -#, fuzzy -msgid "Set background color for active terminal." -msgstr "為使用中終端機載入背景映åƒã€‚" - -#: grub-core/term/i386/coreboot/cbmemc.c:139 -msgid "Show CBMEM console content." -msgstr "" - -#: grub-core/term/serial.c:57 -msgid "Set the serial unit." -msgstr "設定åºåˆ—å–®ä½ã€‚" - -#: grub-core/term/serial.c:58 -msgid "Set the serial port address." -msgstr "設定åºåˆ—埠ä½å€ã€‚" - -#: grub-core/term/serial.c:59 -msgid "Set the serial port speed." -msgstr "設定åºåˆ—埠速度。" - -#: grub-core/term/serial.c:60 -msgid "Set the serial port word length." -msgstr "設定åºåˆ—埠單詞長度。" - -#: grub-core/term/serial.c:61 -msgid "Set the serial port parity." -msgstr "設定åºåˆ—埠åŒä½ã€‚" - -#: grub-core/term/serial.c:62 -msgid "Set the serial port stop bits." -msgstr "設定åºåˆ—åŸ åœæ­¢ä½å…ƒã€‚" - -#: grub-core/term/serial.c:63 -#, fuzzy -msgid "Set the base frequency." -msgstr "設定åºåˆ—å–®ä½ã€‚" - -#: grub-core/term/serial.c:64 -msgid "Enable/disable RTS/CTS." -msgstr "" - -#: grub-core/term/serial.c:218 -#, c-format -msgid "serial port `%s' isn't found" -msgstr "" - -#: grub-core/term/serial.c:254 -msgid "unsupported serial port flow control" -msgstr "" - -#: grub-core/term/serial.c:429 -msgid "[OPTIONS...]" -msgstr "[OPTIONS...]" - -#: grub-core/term/serial.c:430 -msgid "Configure serial port." -msgstr "設定åºåˆ—埠。" - -#: grub-core/term/terminfo.c:184 -#, fuzzy, c-format -msgid "unknown terminfo type `%s'" -msgstr "未知的é¡å¤–引數「%sã€ã€‚\n" - -#: grub-core/term/terminfo.c:668 -msgid "ASCII" -msgstr "ASCII" - -#: grub-core/term/terminfo.c:671 -msgid "UTF-8" -msgstr "UTF-8" - -#. TRANSLATORS: visually ordered UTF-8 is a non-compliant encoding -#. based on UTF-8 with right-to-left languages written in reverse. -#. Used on some terminals. Normal UTF-8 is refered as -#. "logically-ordered UTF-8" by opposition. -#: grub-core/term/terminfo.c:677 -#, fuzzy -msgid "visually-ordered UTF-8" -msgstr "çµ‚ç«¯æ©Ÿç‚ºè¦–è¦ºæŽ’åº UTF-8。" - -#: grub-core/term/terminfo.c:680 -#, fuzzy -msgid "Unknown encoding" -msgstr "未知" - -#: grub-core/term/terminfo.c:684 -msgid "Current terminfo types:" -msgstr "" - -#: grub-core/term/terminfo.c:699 -msgid "Terminal is ASCII-only [default]." -msgstr "終端機僅為 ASCII [é è¨­]。" - -#: grub-core/term/terminfo.c:700 -msgid "Terminal is logical-ordered UTF-8." -msgstr "終端機為é‚è¼¯æŽ’åº UTF-8。" - -#: grub-core/term/terminfo.c:701 -msgid "Terminal is visually-ordered UTF-8." -msgstr "çµ‚ç«¯æ©Ÿç‚ºè¦–è¦ºæŽ’åº UTF-8。" - -#: grub-core/term/terminfo.c:703 -#, fuzzy -msgid "Terminal has specified geometry." -msgstr "終端機已給定幾何狀態。" - -#. TRANSLATORS: "x" has to be entered in, like an identifier, so please don't -#. use better Unicode codepoints. -#: grub-core/term/terminfo.c:706 -msgid "WIDTHxHEIGHT." -msgstr "WIDTHxHEIGHT。" - -#: grub-core/term/terminfo.c:746 -msgid "incorrect terminal dimensions specification" -msgstr "" - -#: grub-core/term/terminfo.c:776 -#, c-format -msgid "terminal %s isn't found or it's not handled by terminfo" -msgstr "" - -#: grub-core/term/terminfo.c:785 -msgid "[[-a|-u|-v] [-g WxH] TERM [TYPE]]" -msgstr "[[-a|-u|-v] [-g WxH] TERM [TYPE]]" - -#: grub-core/term/terminfo.c:786 -msgid "Set terminfo type of TERM to TYPE.\n" -msgstr "å°‡ TERM çš„ terminfo 類型設定為 TYPE。\n" - -#. TRANSLATORS: this is the BLOCK-argument, not -#. environment block. -#: grub-core/tests/test_blockarg.c:49 -msgid "Print and execute block argument." -msgstr "列å°åŸ·è¡Œå€å¡Šå¼•數。" - -#. TRANSLATORS: We're speaking about bitmap images like -#. JPEG or PNG. -#: grub-core/video/bitmap.c:209 -#, c-format -msgid "bitmap file `%s' is of unsupported format" -msgstr "" - -#: grub-core/video/i386/pc/vbe.c:1191 -#, c-format -msgid " VBE info: version: %d.%d OEM software rev: %d.%d\n" -msgstr "" - -#: grub-core/video/i386/pc/vbe.c:1198 -#, c-format -msgid " total memory: %d KiB\n" -msgstr "" - -#: grub-core/video/video.c:596 grub-core/video/video.c:762 -msgid "no suitable video mode found" -msgstr "" - -#: include/grub/crypto.h:403 -msgid "access denied" -msgstr "" - -#: include/grub/util/install.h:30 include/grub/util/install.h:35 -#, fuzzy -msgid "MODULES" -msgstr "MODULE" - -#: include/grub/util/install.h:31 -msgid "pre-load specified modules MODULES" -msgstr "" - -#: include/grub/util/install.h:33 -msgid "embed a specific DTB" -msgstr "" - -#: include/grub/util/install.h:36 -msgid "install only MODULES and their dependencies [default=all]" -msgstr "" - -#: include/grub/util/install.h:37 -msgid "THEMES" -msgstr "" - -#: include/grub/util/install.h:38 -#, c-format -msgid "install THEMES [default=%s]" -msgstr "" - -#: include/grub/util/install.h:39 -msgid "FONTS" -msgstr "" - -#: include/grub/util/install.h:40 -#, c-format -msgid "install FONTS [default=%s]" -msgstr "" - -#: include/grub/util/install.h:41 -msgid "LOCALES" -msgstr "" - -#: include/grub/util/install.h:42 -msgid "install only LOCALES [default=all]" -msgstr "" - -#: include/grub/util/install.h:45 -msgid "compress GRUB files [optional]" -msgstr "" - -#: include/grub/util/install.h:48 util/grub-mkimage.c:83 -#, fuzzy -msgid "choose the compression to use for core image" -msgstr "無法壓縮內核映åƒ" - -#. TRANSLATORS: platform here isn't identifier. It can be translated. -#: include/grub/util/install.h:51 include/grub/util/install.h:54 -#: util/grub-mkimage.c:66 -#, c-format -msgid "use images and modules under DIR [default=%s/]" -msgstr "" - -#: include/grub/util/install.h:57 -#, fuzzy, c-format -msgid "use translations under DIR [default=%s]" -msgstr "使用 DIR 目錄內的 GRUB 檔 [é è¨­=%s]" - -#: include/grub/util/install.h:60 -#, fuzzy, c-format -msgid "use themes under DIR [default=%s]" -msgstr "使用 DIR 目錄內的 GRUB 檔 [é è¨­=%s]" - -#: include/grub/util/install.h:65 util/grub-mkimage.c:78 -msgid "embed FILE as public key for signature checking" -msgstr "" - -#: util/editenv.c:59 util/grub-editenv.c:201 util/grub-install-common.c:535 -#: util/grub-mkimage.c:315 util/setup.c:791 -#, fuzzy, c-format -msgid "cannot sync `%s': %s" -msgstr "無法開啟「%sã€" - -#: util/editenv.c:64 -#, fuzzy, c-format -msgid "cannot rename the file %s to %s" -msgstr "無法開啟檔案 %s" - -#: util/getroot.c:402 -#, c-format -msgid "disk does not exist, so falling back to partition device %s" -msgstr "" - -#: util/grub-editenv.c:45 util/grub-fstest.c:506 -msgid "Commands:" -msgstr "指令:" - -#: util/grub-editenv.c:47 -msgid "Create a blank environment block file." -msgstr "建立空白環境å€å¡Šæª”。" - -#: util/grub-editenv.c:49 -msgid "List the current variables." -msgstr "列出目å‰çš„變數。" - -#. TRANSLATORS: "set" is a keyword. It's a summary of "set" subcommand. -#: util/grub-editenv.c:51 -#, fuzzy -msgid "set [NAME=VALUE ...]" -msgstr "[VALUE]..." - -#: util/grub-editenv.c:52 -msgid "Set variables." -msgstr "設定變數。" - -#. TRANSLATORS: "unset" is a keyword. It's a summary of "unset" subcommand. -#: util/grub-editenv.c:54 -msgid "unset [NAME ...]" -msgstr "" - -#: util/grub-editenv.c:55 -msgid "Delete variables." -msgstr "刪除變數。" - -#: util/grub-editenv.c:57 -msgid "Options:" -msgstr "é¸é …:" - -#: util/grub-editenv.c:84 -msgid "You need to specify at least one command.\n" -msgstr "您必須指定至少一個指令。\n" - -#: util/grub-editenv.c:113 -msgid "FILENAME COMMAND" -msgstr "FILENAME COMMAND" - -#: util/grub-editenv.c:114 -msgid "Tool to edit environment block." -msgstr "編輯環境å€å¡Šçš„工具。" - -#: util/grub-editenv.c:116 -#, c-format -msgid "" -"If FILENAME is `-', the default value %s is used.\n" -"\n" -"There is no `delete' command; if you want to delete the whole environment\n" -"block, use `rm %s'." -msgstr "" - -#: util/grub-editenv.c:162 -#, fuzzy -msgid "invalid environment block" -msgstr "編輯環境å€å¡Šçš„工具。" - -#: util/grub-editenv.c:217 -#, fuzzy, c-format -msgid "invalid parameter %s" -msgstr "設定ä½ç½®åƒæ•¸ã€‚" - -#: util/grub-editenv.c:222 -msgid "environment block too small" -msgstr "" - -#: util/grub-fstest.c:107 -#, fuzzy, c-format -msgid "disk read fails at offset %lld, length %lld" -msgstr "æ–¼åç§» %lld 處ç£ç¢Ÿè®€å–失敗,長度 %d" - -#: util/grub-fstest.c:138 -#, c-format -msgid "invalid skip value %lld" -msgstr "無效的跳éŽå€¼ %lld" - -#: util/grub-fstest.c:160 util/grub-fstest.c:246 -#, c-format -msgid "read error at offset %llu: %s" -msgstr "讀å–åç§» %llu 處時發生錯誤:%s" - -#: util/grub-fstest.c:210 -#, fuzzy, c-format -msgid "cannot open OS file `%s': %s" -msgstr "無法開啟檔案 %s" - -#: util/grub-fstest.c:225 util/misc.c:126 -#, c-format -msgid "cannot write to the stdout: %s" -msgstr "" - -#: util/grub-fstest.c:259 -#, c-format -msgid "compare fail at offset %llu" -msgstr "比較åç§» %llu 處的失敗" - -#: util/grub-fstest.c:280 util/grub-fstest.c:314 -#, c-format -msgid "OS file %s open error: %s" -msgstr "" - -#: util/grub-fstest.c:402 util/grub-mount.c:392 -#, fuzzy, c-format -msgid "`loopback' command fails: %s" -msgstr "迴返指令失敗" - -#: util/grub-fstest.c:413 util/grub-mount.c:402 -#, fuzzy, c-format -msgid "`cryptomount' command fails: %s" -msgstr "迴返指令失敗" - -#: util/grub-fstest.c:474 util/grub-fstest.c:478 -msgid "couldn't retrieve UUID" -msgstr "" - -#: util/grub-fstest.c:507 -msgid "ls PATH" -msgstr "ls PATH" - -#: util/grub-fstest.c:507 -msgid "List files in PATH." -msgstr "列出 PATH 內的檔案。" - -#: util/grub-fstest.c:508 -msgid "cp FILE LOCAL" -msgstr "cp FILE LOCAL" - -#: util/grub-fstest.c:508 -msgid "Copy FILE to local file LOCAL." -msgstr "複製 FILE 至本地檔案 LOCAL。" - -#: util/grub-fstest.c:509 -#, fuzzy -msgid "cat FILE" -msgstr "crc FILE" - -#: util/grub-fstest.c:509 -msgid "Copy FILE to standard output." -msgstr "" - -#: util/grub-fstest.c:510 -msgid "cmp FILE LOCAL" -msgstr "cmp FILE LOCAL" - -#: util/grub-fstest.c:510 -msgid "Compare FILE with local file LOCAL." -msgstr "比較 FILE 與本地檔案 LOCAL。" - -#: util/grub-fstest.c:511 -msgid "hex FILE" -msgstr "hex FILE" - -#: util/grub-fstest.c:511 -#, fuzzy -msgid "Show contents of FILE in hex." -msgstr "顯示檔案的內容。" - -#: util/grub-fstest.c:512 -msgid "crc FILE" -msgstr "crc FILE" - -#: util/grub-fstest.c:512 -msgid "Get crc32 checksum of FILE." -msgstr "å–å¾— FILE çš„ crc32 校驗計算碼。" - -#: util/grub-fstest.c:513 -msgid "blocklist FILE" -msgstr "blocklist FILE" - -#: util/grub-fstest.c:513 -msgid "Display blocklist of FILE." -msgstr "顯示 FILE çš„å€å¡Šæª”案。" - -#: util/grub-fstest.c:514 -msgid "xnu_uuid DEVICE" -msgstr "" - -#: util/grub-fstest.c:514 -msgid "Compute XNU UUID of the device." -msgstr "" - -#. TRANSLATORS: bitmaps are images like e.g. in JPEG. -#: util/grub-fstest.c:517 util/grub-fstest.c:518 util/grub-fstest.c:519 -#: util/grub-mkfont.c:938 util/grub-mkfont.c:951 util/grub-mkfont.c:952 -#: util/grub-mkpasswd-pbkdf2.c:46 util/grub-mkpasswd-pbkdf2.c:47 -#: util/grub-mkpasswd-pbkdf2.c:48 -msgid "NUM" -msgstr "" - -#: util/grub-fstest.c:517 -msgid "Skip N bytes from output file." -msgstr "è·³éŽè¼¸å‡ºæª”çš„ N ä½å…ƒçµ„。" - -#: util/grub-fstest.c:518 -msgid "Handle N bytes in output file." -msgstr "處ç†è¼¸å‡ºæª”çš„ N ä½å…ƒçµ„。" - -#: util/grub-fstest.c:519 -#, fuzzy -msgid "Specify the number of input files." -msgstr "指定一個或多個è¦è¼‰å…¥çš„字型檔。" - -#: util/grub-fstest.c:520 util/grub-mount.c:453 -msgid "Set debug environment variable." -msgstr "設定除錯環境變數。" - -#: util/grub-fstest.c:521 util/grub-mount.c:454 -#, fuzzy -msgid "Mount crypto devices." -msgstr "設定根è£ç½®ã€‚" - -#. TRANSLATORS: "prompt" is a keyword. -#: util/grub-fstest.c:524 util/grub-mount.c:457 -msgid "FILE|prompt" -msgstr "" - -#: util/grub-fstest.c:524 util/grub-mount.c:457 -msgid "Load zfs crypto key." -msgstr "" - -#: util/grub-fstest.c:526 -msgid "Uncompress data." -msgstr "" - -#: util/grub-fstest.c:605 -msgid "Invalid disk count.\n" -msgstr "無效的ç£ç¢Ÿè¨ˆæ•¸ã€‚\n" - -#. TRANSLATORS: disk count is optional but if it's there it must -#. be before disk list. So please don't imply disk count as mandatory. -#. -#: util/grub-fstest.c:613 -msgid "Disk count must precede disks list.\n" -msgstr "ç£ç¢Ÿè¨ˆæ•¸å¿…須在ç£ç¢Ÿæ¸…單之å‰ã€‚\n" - -#: util/grub-fstest.c:633 -msgid "No command is specified.\n" -msgstr "未指定指令。\n" - -#: util/grub-fstest.c:638 -msgid "Not enough parameters to command.\n" -msgstr "æŒ‡ä»¤ç¼ºå°‘è¶³å¤ çš„åƒæ•¸ã€‚\n" - -#: util/grub-fstest.c:711 -#, c-format -msgid "Invalid command %s.\n" -msgstr "無效指令 %s。\n" - -#: util/grub-fstest.c:724 -msgid "IMAGE_PATH COMMANDS" -msgstr "IMAGE_PATH COMMANDS" - -#: util/grub-fstest.c:725 util/grub-mount.c:553 -msgid "Debug tool for filesystem driver." -msgstr "檔案系統驅動程å¼çš„除錯工具。" - -#: util/grub-glue-efi.c:53 -msgid "set input filename for 32-bit part." -msgstr "" - -#: util/grub-glue-efi.c:55 -msgid "set input filename for 64-bit part." -msgstr "" - -#: util/grub-glue-efi.c:57 util/grub-mklayout.c:55 util/grub-render-label.c:71 -msgid "set output filename. Default is STDOUT" -msgstr "" - -#: util/grub-glue-efi.c:94 util/grub-mklayout.c:476 -#: util/grub-mkpasswd-pbkdf2.c:86 util/grub-render-label.c:131 -#, fuzzy -msgid "[OPTIONS]" -msgstr "[OPTIONS...]" - -#: util/grub-glue-efi.c:95 -msgid "Glue 32-bit and 64-bit binary into Apple universal one." -msgstr "" - -#: util/grub-glue-efi.c:116 -#, fuzzy -msgid "Missing input file\n" -msgstr "N 個輸出檔。" - -#: util/grub-install-common.c:127 util/grub-install-common.c:151 -#, fuzzy, c-format -msgid "cannot copy `%s' to `%s': %s" -msgstr "無法開啟「%sã€" - -#: util/grub-install-common.c:147 -#, fuzzy, c-format -msgid "can't compress `%s' to `%s'" -msgstr "無法開啟「%sã€" - -#: util/grub-install-common.c:196 util/grub-install-common.c:552 -#: util/grub-install-common.c:579 util/grub-install-common.c:621 -#, fuzzy, c-format -msgid "cannot open directory `%s': %s" -msgstr "無法開啟「%sã€" - -#: util/grub-install-common.c:212 -#, fuzzy, c-format -msgid "cannot delete `%s': %s" -msgstr "無法開啟「%sã€" - -#: util/grub-install-common.c:324 util/grub-mkimage.c:209 -msgid "grub-mkimage is compiled without XZ support" -msgstr "" - -#: util/grub-install-common.c:332 util/grub-mkimage.c:217 -#, fuzzy, c-format -msgid "Unknown compression format %s" -msgstr "未知指令「%sã€ã€‚\n" - -#: util/grub-install-common.c:400 -#, c-format -msgid "Unrecognized compression `%s'" -msgstr "" - -#: util/grub-install-common.c:509 -#, fuzzy, c-format -msgid "unknown target format %s" -msgstr "未知的é¡å¤–引數「%sã€ã€‚\n" - -#: util/grub-install-common.c:700 -#, fuzzy, c-format -msgid "cannot find locale `%s'" -msgstr "無法開啟「%sã€" - -#: util/grub-install-common.c:939 -#, c-format -msgid "%s doesn't exist. Please specify --target or --directory" -msgstr "" - -#: util/grub-install-common.c:948 util/grub-install-common.c:951 -#, fuzzy, c-format -msgid "invalid modinfo file `%s'" -msgstr "無效的根è£ç½®ã€Œ%sã€" - -#: util/grub-install-common.c:966 -#, fuzzy, c-format -msgid "Unknown platform `%s-%s'" -msgstr "未知指令「%sã€ã€‚\n" - -#: util/grub-install.c:238 -msgid "More than one install device?" -msgstr "" - -#: util/grub-install.c:251 -#, c-format -msgid "" -"install GRUB images under the directory DIR/%s instead of the %s directory" -msgstr "" - -#: util/grub-install.c:256 util/grub-probe.c:734 -msgid "TARGET" -msgstr "" - -#. TRANSLATORS: "TARGET" as in "target platform". -#: util/grub-install.c:258 -#, c-format -msgid "install GRUB for TARGET platform [default=%s]; available targets: %s" -msgstr "" - -#. TRANSLATORS: "may break" doesn't just mean that option wouldn't have any -#. effect but that it will make the resulting install unbootable from HDD. -#. TRANSLATORS: The potential breakage isn't limited to floppies but it's -#. likely to make the install unbootable from HDD. -#: util/grub-install.c:267 util/grub-setup.c:94 -#, fuzzy -msgid "" -"make the drive also bootable as floppy (default for fdX devices). May break " -"on some BIOSes." -msgstr "" -"讓è£ç½®ä¹Ÿå¯ä»¥ä½œç‚ºè»Ÿç¢Ÿé–‹æ©Ÿ (為 fdX è£ç½®çš„é è¨­å€¼)。在æŸäº› BIOS 上å¯èƒ½æœƒå¤±æ•—。" - -#: util/grub-install.c:270 -msgid "delete device map if it already exists" -msgstr "" - -#: util/grub-install.c:272 util/grub-setup.c:87 -#, fuzzy -msgid "install even if problems are detected" -msgstr "å³ä½¿åµæ¸¬åˆ°å•題也è¦å®‰è£" - -#: util/grub-install.c:274 -msgid "use identifier file even if UUID is available" -msgstr "" - -#: util/grub-install.c:276 -msgid "" -"disk module to use (biosdisk or native). This option is only available on " -"BIOS target." -msgstr "" - -#: util/grub-install.c:279 -msgid "" -"don't update the `boot-device'/`Boot*' NVRAM variables. This option is only " -"available on EFI and IEEE1275 targets." -msgstr "" - -#: util/grub-install.c:282 util/grub-setup.c:89 -#, fuzzy -msgid "do not probe for filesystems in DEVICE" -msgstr "ä¸è¦æŽ¢æ¸¬ DEVICE 內的檔案系統" - -#: util/grub-install.c:284 -msgid "do not install bootsector" -msgstr "" - -#: util/grub-install.c:286 util/grub-setup.c:96 -msgid "" -"Do not apply any reed-solomon codes when embedding core.img. This option is " -"only available on x86 BIOS targets." -msgstr "" - -#: util/grub-install.c:293 -msgid "" -"the installation device is removable. This option is only available on EFI." -msgstr "" - -#: util/grub-install.c:295 -msgid "ID" -msgstr "" - -#: util/grub-install.c:296 -msgid "the ID of bootloader. This option is only available on EFI and Macs." -msgstr "" - -#: util/grub-install.c:298 -msgid "use DIR as the EFI System Partition root." -msgstr "" - -#: util/grub-install.c:300 -msgid "use DIR for PPC MAC install." -msgstr "" - -#: util/grub-install.c:301 util/grub-mkrescue.c:106 -msgid "use FILE as font for label" -msgstr "" - -#: util/grub-install.c:302 util/grub-mkrescue.c:107 -msgid "use COLOR for label" -msgstr "" - -#: util/grub-install.c:303 util/grub-mkrescue.c:108 -msgid "use COLOR for label background" -msgstr "" - -#: util/grub-install.c:304 util/grub-mkrescue.c:110 -msgid "use STRING as product version" -msgstr "" - -#: util/grub-install.c:361 -#, fuzzy -msgid "[OPTION] [INSTALL_DEVICE]" -msgstr "[OPTIONS] FILE_OR_DEVICE" - -#: util/grub-install.c:362 -msgid "Install GRUB on your drive." -msgstr "" - -#: util/grub-install.c:363 -#, c-format -msgid "" -"INSTALL_DEVICE must be system device filename.\n" -"%s copies GRUB images into %s. On some platforms, it may also install GRUB " -"into the boot sector." -msgstr "" - -#: util/grub-install.c:672 -#, c-format -msgid "the drive %s is defined multiple times in the device map %s" -msgstr "" - -#: util/grub-install.c:878 -msgid "Unable to determine your platform. Use --target." -msgstr "" - -#: util/grub-install.c:891 -#, c-format -msgid "Installing for %s platform.\n" -msgstr "" - -#: util/grub-install.c:939 -#, fuzzy -msgid "install device isn't specified" -msgstr "沒有指定è£ç½®ã€‚\n" - -#: util/grub-install.c:1057 -msgid "cannot find EFI directory" -msgstr "" - -#: util/grub-install.c:1060 util/grub-install.c:1209 util/grub-install.c:1254 -#: util/grub-macbless.c:76 util/grub-probe.c:329 util/setup.c:316 -#, c-format -msgid "cannot find a device for %s (is /dev mounted?)" -msgstr "" - -#: util/grub-install.c:1069 util/grub-install.c:1217 util/grub-install.c:1270 -#: util/grub-install.c:1365 util/grub-macbless.c:80 util/grub-probe.c:372 -#, c-format -msgid "cannot find a GRUB drive for %s. Check your device.map" -msgstr "" - -#: util/grub-install.c:1087 -#, c-format -msgid "%s doesn't look like an EFI partition" -msgstr "" - -#: util/grub-install.c:1129 util/grub-install.c:1614 -msgid "You've found a bug" -msgstr "" - -#: util/grub-install.c:1231 -#, c-format -msgid "filesystem on %s is neither HFS nor HFS+" -msgstr "" - -#: util/grub-install.c:1299 -#, c-format -msgid "" -"attempt to install to encrypted disk without cryptodisk enabled. Set `%s' in " -"file `%s'" -msgstr "" - -#: util/grub-install.c:1410 util/grub-install.c:1772 util/grub-install.c:1872 -#, fuzzy, c-format -msgid "Can't create file: %s" -msgstr "無法開啟檔案 %s" - -#: util/grub-install.c:1491 -msgid "no hints available for your platform. Expect reduced performance" -msgstr "" - -#. TRANSLATORS: This is a prefix in the log to indicate that usually -#. a command would be executed but due to an option was skipped. -#: util/grub-install.c:1702 -msgid "NOT RUNNING: " -msgstr "" - -#: util/grub-install.c:1806 -msgid "the chosen partition is not a PReP partition" -msgstr "" - -#: util/grub-install.c:1811 -msgid "failed to copy Grub to the PReP partition" -msgstr "" - -#: util/grub-install.c:1816 -#, c-format -msgid "" -"the PReP partition is not empty. If you are sure you want to use it, run dd " -"to clear it: `%s'" -msgstr "" - -#: util/grub-install.c:1888 util/grub-install.c:1932 -#, c-format -msgid "efibootmgr failed to register the boot entry: %s" -msgstr "" - -#: util/grub-install.c:1916 -#, fuzzy -msgid "EFI bootloader id isn't specified." -msgstr "沒有指定è£ç½®ã€‚\n" - -#: util/grub-install.c:1950 -msgid "WARNING: no platform-specific install was performed" -msgstr "" - -#: util/grub-install.c:1957 -msgid "Installation finished. No error reported." -msgstr "" - -#: util/grub-macbless.c:101 -msgid "bless for x86-based macs" -msgstr "" - -#: util/grub-macbless.c:103 -msgid "bless for ppc-based macs" -msgstr "" - -#: util/grub-macbless.c:136 util/grub-probe.c:823 -#, fuzzy -msgid "No path or device is specified.\n" -msgstr "沒有指定è£ç½®ã€‚\n" - -#: util/grub-macbless.c:157 -msgid "--ppc PATH|--x86 FILE" -msgstr "" - -#: util/grub-macbless.c:158 -msgid "Mac-style bless on HFS or HFS+" -msgstr "" - -#: util/grub-menulst2cfg.c:44 -#, c-format -msgid "Usage: %s [INFILE [OUTFILE]]\n" -msgstr "" - -#: util/grub-mkfont.c:157 -#, c-format -msgid "Freetype Error %d loading glyph 0x%x for U+0x%x%s" -msgstr "" - -#. TRANSLATORS: These qualifiers are used for cursive typography, -#. mainly Arabic. Note that the terms refer to the visual position -#. and not logical order and if used in left-to-right script then -#. leftmost is initial but with right-to-left script like Arabic -#. rightmost is the initial. -#: util/grub-mkfont.c:165 -msgid " (medial)" -msgstr "" - -#: util/grub-mkfont.c:166 -msgid " (leftmost)" -msgstr "" - -#: util/grub-mkfont.c:167 -msgid " (rightmost)" -msgstr "" - -#: util/grub-mkfont.c:481 -#, c-format -msgid "Out of range substitution (%d, %d)\n" -msgstr "" - -#. TRANSLATORS: "lookup" is taken directly from font specifications -#. which are formulated as "Under condition X replace LOOKUP with -#. SUBSTITUITION". " -#: util/grub-mkfont.c:506 -#, c-format -msgid "Out of range lookup: %d\n" -msgstr "" - -#: util/grub-mkfont.c:514 -#, c-format -msgid "Unsupported substitution type: %d\n" -msgstr "" - -#: util/grub-mkfont.c:550 -#, c-format -msgid "Unsupported substitution specification: %d\n" -msgstr "" - -#: util/grub-mkfont.c:582 -#, c-format -msgid "Unsupported coverage specification: %d\n" -msgstr "" - -#: util/grub-mkfont.c:622 -#, c-format -msgid "WARNING: unsupported font feature parameters: %x\n" -msgstr "" - -#: util/grub-mkfont.c:936 util/grub-mkrescue.c:98 util/grub-mkstandalone.c:48 -msgid "save output in FILE [required]" -msgstr "" - -#. TRANSLATORS: some font files may have multiple faces (fonts). -#. This option is used to chose among them, the first face being '0'. -#. Rarely used. -#: util/grub-mkfont.c:942 -msgid "select face index" -msgstr "" - -#: util/grub-mkfont.c:943 -msgid "FROM-TO[,FROM-TO]" -msgstr "" - -#. TRANSLATORS: It refers to the range of characters in font. -#: util/grub-mkfont.c:945 -msgid "set font range" -msgstr "" - -#. TRANSLATORS: "family name" for font is just a generic name without suffix -#. like "Bold". -#: util/grub-mkfont.c:949 -msgid "set font family name" -msgstr "" - -#: util/grub-mkfont.c:950 -msgid "SIZE" -msgstr "" - -#: util/grub-mkfont.c:950 -msgid "set font size" -msgstr "" - -#: util/grub-mkfont.c:951 -#, fuzzy -msgid "set font descent" -msgstr "設定根è£ç½®ã€‚" - -#: util/grub-mkfont.c:952 -msgid "set font ascent" -msgstr "" - -#: util/grub-mkfont.c:953 -msgid "convert to bold font" -msgstr "" - -#: util/grub-mkfont.c:954 -msgid "force autohint" -msgstr "" - -#: util/grub-mkfont.c:955 -msgid "disable hinting" -msgstr "" - -#. TRANSLATORS: some fonts contain bitmap rendering for -#. some sizes. This option forces rerendering even if -#. pre-rendered bitmap is available. -#. -#: util/grub-mkfont.c:961 -msgid "ignore bitmap strikes when loading" -msgstr "" - -#. TRANSLATORS: It refers to the range of characters in font. -#: util/grub-mkfont.c:1059 util/grub-mkfont.c:1075 -msgid "invalid font range" -msgstr "" - -#: util/grub-mkfont.c:1151 -#, fuzzy -msgid "[OPTIONS] FONT_FILES" -msgstr "[OPTIONS] DISK" - -#: util/grub-mkfont.c:1152 -msgid "Convert common font file formats into PF2" -msgstr "" - -#: util/grub-mkfont.c:1182 util/grub-mkrescue.c:483 -#: util/grub-mkstandalone.c:306 -#, fuzzy -msgid "output file must be specified" -msgstr "沒有指定è£ç½®ã€‚\n" - -#: util/grub-mkfont.c:1185 -msgid "FT_Init_FreeType fails" -msgstr "" - -#: util/grub-mkfont.c:1199 -#, c-format -msgid "can't open file %s, index %d: error %d" -msgstr "" - -#: util/grub-mkfont.c:1229 -#, c-format -msgid "can't set %dx%d font size: Freetype error %d: %s" -msgstr "" - -#: util/grub-mkimage.c:67 -msgid "set prefix directory" -msgstr "" - -#. TRANSLATORS: "memdisk" here isn't an identifier, it can be translated. -#. "embed" is a verb (command description). " -#: util/grub-mkimage.c:71 -msgid "" -"embed FILE as a memdisk image\n" -"Implies `-p (memdisk)/boot/grub' and overrides any prefix supplied " -"previously, but the prefix itself can be overridden by later options" -msgstr "" - -#: util/grub-mkimage.c:74 -msgid "embed FILE as a device tree (DTB)\n" -msgstr "" - -#: util/grub-mkimage.c:76 -msgid "embed FILE as an early config" -msgstr "" - -#. TRANSLATORS: NOTE is a name of segment. -#: util/grub-mkimage.c:80 -msgid "add NOTE segment for CHRP IEEE1275" -msgstr "" - -#: util/grub-mkimage.c:81 -msgid "output a generated image to FILE [default=stdout]" -msgstr "" - -#: util/grub-mkimage.c:82 -msgid "FORMAT" -msgstr "" - -#: util/grub-mkimage.c:100 util/grub-mkstandalone.c:62 -msgid "generate an image in FORMAT" -msgstr "" - -#: util/grub-mkimage.c:101 util/grub-mkstandalone.c:63 -#, fuzzy -msgid "available formats:" -msgstr "å¯ç”¨çš„輸出終端機:" - -#: util/grub-mkimage.c:152 util/grub-mkstandalone.c:96 -#, fuzzy, c-format -msgid "unknown target format %s\n" -msgstr "未知的é¡å¤–引數「%sã€ã€‚\n" - -#: util/grub-mkimage.c:242 -#, fuzzy -msgid "[OPTION]... [MODULES]" -msgstr "[OPTIONS...]" - -#: util/grub-mkimage.c:243 -msgid "Make a bootable image of GRUB." -msgstr "" - -#: util/grub-mkimage.c:273 util/grub-mkstandalone.c:309 -msgid "Target format not specified (use the -O option)." -msgstr "" - -#: util/grub-mkimage.c:282 -msgid "Prefix not specified (use the -p option)." -msgstr "" - -#: util/grub-mkimage.c:318 util/setup.c:793 -#, fuzzy, c-format -msgid "cannot close `%s': %s" -msgstr "無法開啟「%sã€" - -#: util/grub-mkimagexx.c:2191 -#, c-format -msgid "" -"`%s' is miscompiled: its start address is 0x%llx instead of 0x%llx: ld.gold " -"bug?" -msgstr "" - -#: util/grub-mklayout.c:53 -msgid "set input filename. Default is STDIN" -msgstr "" - -#. TRANSLATORS: scan identifier is keyboard key symbolic name. -#: util/grub-mklayout.c:307 -#, c-format -msgid "Unknown keyboard scan identifier %s\n" -msgstr "" - -#. TRANSLATORS: scan code is keyboard key numeric identifier. -#: util/grub-mklayout.c:390 util/grub-mklayout.c:418 -#, c-format -msgid "Unknown keyboard scan code 0x%02x\n" -msgstr "" - -#. TRANSLATORS: this error is triggered when input doesn't contain any -#. key descriptions. -#: util/grub-mklayout.c:438 -msgid "ERROR: no valid keyboard layout found. Check the input.\n" -msgstr "" - -#. TRANSLATORS: "one" is a shortcut for "keyboard layout". -#: util/grub-mklayout.c:478 -msgid "Generate GRUB keyboard layout from Linux console one." -msgstr "" - -#: util/grub-mknetdir.c:47 -msgid "root directory of TFTP server" -msgstr "" - -#: util/grub-mknetdir.c:49 -msgid "relative subdirectory on network server" -msgstr "" - -#: util/grub-mknetdir.c:88 -msgid "" -"Prepares GRUB network boot images at net_directory/subdir assuming " -"net_directory being TFTP root." -msgstr "" - -#: util/grub-mknetdir.c:146 -#, c-format -msgid "unsupported platform %s" -msgstr "" - -#. TRANSLATORS: First %s is replaced by platform name. Second one by filename. -#: util/grub-mknetdir.c:165 -#, c-format -msgid "" -"Netboot directory for %s created. Configure your DHCP server to point to %s\n" -msgstr "" - -#: util/grub-mkpasswd-pbkdf2.c:46 -msgid "Number of PBKDF2 iterations" -msgstr "" - -#: util/grub-mkpasswd-pbkdf2.c:47 -msgid "Length of generated hash" -msgstr "" - -#: util/grub-mkpasswd-pbkdf2.c:48 -msgid "Length of salt" -msgstr "" - -#: util/grub-mkpasswd-pbkdf2.c:87 -msgid "Generate PBKDF2 password hash." -msgstr "" - -#: util/grub-mkpasswd-pbkdf2.c:144 util/grub-mkpasswd-pbkdf2.c:151 -msgid "failure to read password" -msgstr "" - -#: util/grub-mkpasswd-pbkdf2.c:146 -#, fuzzy -msgid "Reenter password: " -msgstr "輸入密碼:" - -#: util/grub-mkpasswd-pbkdf2.c:160 -msgid "passwords don't match" -msgstr "" - -#: util/grub-mkpasswd-pbkdf2.c:169 -msgid "couldn't retrieve random data for salt" -msgstr "" - -#: util/grub-mkpasswd-pbkdf2.c:184 -#, c-format -msgid "cryptographic error number %d" -msgstr "" - -#: util/grub-mkpasswd-pbkdf2.c:203 -#, c-format -msgid "PBKDF2 hash of your password is %s\n" -msgstr "" - -#: util/grub-mkrelpath.c:67 -#, fuzzy -msgid "No path is specified.\n" -msgstr "未指定指令。\n" - -#: util/grub-mkrelpath.c:78 -#, fuzzy -msgid "PATH" -msgstr "ls PATH" - -#: util/grub-mkrelpath.c:79 -msgid "Transform a system filename into GRUB one." -msgstr "" - -#: util/grub-mkrescue.c:100 -msgid "save ROM images in DIR [optional]" -msgstr "" - -#. TRANSLATORS: xorriso is a program for creating ISOs and burning CDs. -#: util/grub-mkrescue.c:103 -msgid "use FILE as xorriso [optional]" -msgstr "" - -#: util/grub-mkrescue.c:109 -msgid "use STRING as product name" -msgstr "" - -#: util/grub-mkrescue.c:111 -msgid "" -"enable sparc boot. Disables HFS+, APM, ARCS and boot as disk image for i386-" -"pc" -msgstr "" - -#: util/grub-mkrescue.c:112 -msgid "" -"enable ARCS (big-endian mips machines, mostly SGI) boot. Disables HFS+, APM, " -"sparc64 and boot as disk image for i386-pc" -msgstr "" - -#. TRANSLATORS: it generates one single image which is bootable through any method. -#: util/grub-mkrescue.c:125 -msgid "Make GRUB CD-ROM, disk, pendrive and floppy bootable image." -msgstr "" - -#: util/grub-mkrescue.c:130 -#, c-format -msgid "" -"Generates a bootable CD/USB/floppy image. Arguments other than options to " -"this program are passed to xorriso, and indicate source files, source " -"directories, or any of the mkisofs options listed by the output of `%s'." -msgstr "" - -#: util/grub-mkrescue.c:134 -msgid "Option -- switches to native xorriso command mode." -msgstr "" - -#: util/grub-mkrescue.c:135 -msgid "Mail xorriso support requests to ." -msgstr "" - -#: util/grub-mkrescue.c:221 util/grub-mkstandalone.c:114 -#, fuzzy -msgid "[OPTION] SOURCE..." -msgstr "[OPTIONS...]" - -#: util/grub-mkrescue.c:257 util/grub-mkrescue.c:300 util/grub-mkrescue.c:588 -#, c-format -msgid "enabling %s support ..." -msgstr "" - -#: util/grub-mkrescue.c:486 -msgid "xorriso not found" -msgstr "" - -#: util/grub-mkrescue.c:623 -msgid "" -"Your xorriso doesn't support `--grub2-boot-info'. Some features are " -"disabled. Please use xorriso 1.2.9 or later." -msgstr "" - -#: util/grub-mkrescue.c:650 -msgid "" -"Your xorriso doesn't support `--grub2-boot-info'. Your core image is too " -"big. Boot as disk is disabled. Please use xorriso 1.2.9 or later." -msgstr "" - -#: util/grub-mkstandalone.c:115 -msgid "" -"Generate a standalone image (containing all modules) in the selected format" -msgstr "" - -#: util/grub-mkstandalone.c:115 -msgid "Graft point syntax (E.g. /boot/grub/grub.cfg=./grub.cfg) is accepted" -msgstr "" - -#: util/grub-mount.c:552 -msgid "IMAGE1 [IMAGE2 ...] MOUNTPOINT" -msgstr "" - -#: util/grub-mount.c:575 -msgid "need an image and mountpoint" -msgstr "" - -#: util/grub-probe.c:731 -msgid "given argument is a system device, not a path" -msgstr "" - -#: util/grub-probe.c:736 -msgid "separate items in output using ASCII NUL characters" -msgstr "" - -#: util/grub-probe.c:754 -#, c-format -msgid "[default=%s]" -msgstr "" - -#: util/grub-probe.c:756 -msgid "print TARGET" -msgstr "" - -#: util/grub-probe.c:757 -msgid "available targets:" -msgstr "" - -#: util/grub-probe.c:839 -#, fuzzy -msgid "[OPTION]... [PATH|DEVICE]" -msgstr "[OPTIONS] FILE_OR_DEVICE" - -#: util/grub-probe.c:840 -msgid "" -"Probe device information for a given path (or device, if the -d option is " -"given)." -msgstr "" - -#: util/grub-render-label.c:60 -#, fuzzy -msgid "read text from FILE." -msgstr "從 PORT 讀å–ä½å…ƒçµ„。" - -#: util/grub-render-label.c:62 -msgid "use COLOR for text" -msgstr "" - -#: util/grub-render-label.c:64 -msgid "use COLOR for background" -msgstr "" - -#. TRANSLATORS: The result is always stored to file and -#. never shown directly, so don't use "show" as synonym for render. Use "create" if -#. "render" doesn't translate directly. -#: util/grub-render-label.c:69 -msgid "set the label to render" -msgstr "" - -#: util/grub-render-label.c:73 -msgid "use FILE as font (PF2)." -msgstr "" - -#. TRANSLATORS: This file takes a text and creates a graphical representation of it, -#. putting the result into .disk_label file. The result is always stored to file and -#. never shown directly, so don't use "show" as synonym for render. Use "create" if -#. "render" doesn't translate directly. -#: util/grub-render-label.c:136 -msgid "Render Apple .disk_label." -msgstr "" - -#: util/grub-render-label.c:158 util/grub-syslinux2cfg.c:169 -#, fuzzy -msgid "Missing arguments\n" -msgstr "å¯èƒ½çš„åƒæ•¸æœ‰ï¼š" - -#: util/grub-script-check.c:87 -#, fuzzy -msgid "[PATH]" -msgstr "ls PATH" - -#: util/grub-script-check.c:88 -msgid "Checks GRUB script configuration file for syntax errors." -msgstr "" - -#: util/grub-script-check.c:207 -#, c-format -msgid "Syntax error at line %u\n" -msgstr "" - -#: util/grub-script-check.c:212 -#, c-format -msgid "Script `%s' contains no commands and will do nothing\n" -msgstr "" - -#: util/grub-setup.c:79 -#, fuzzy, c-format -msgid "use FILE as the boot image [default=%s]" -msgstr "使用 FILE ä½œç‚ºé–‹æ©Ÿæ˜ åƒ [é è¨­=%s]" - -#: util/grub-setup.c:81 -#, fuzzy, c-format -msgid "use FILE as the core image [default=%s]" -msgstr "使用 FILE ä½œç‚ºæ ¸å¿ƒæ˜ åƒ [é è¨­=%s]" - -#: util/grub-setup.c:210 -msgid "No device is specified.\n" -msgstr "沒有指定è£ç½®ã€‚\n" - -#: util/grub-setup.c:224 -msgid "" -"Set up images to boot from DEVICE.\n" -"\n" -"You should not normally run this program directly. Use grub-install instead." -msgstr "" -"設置è¦å¾ž DEVICE 啟動的è£ç½®ã€‚\n" -"\n" -"您應該ä¸èƒ½ç›´æŽ¥åŸ·è¡Œé€™å€‹ç¨‹å¼ã€‚請改用 grub-install。" - -#: util/grub-setup.c:228 -msgid "DEVICE must be an OS device (e.g. /dev/sda)." -msgstr "DEVICE 必須為 OS è£ç½® (例:/dev/sda)。" - -#: util/grub-setup.c:297 -#, c-format -msgid "Invalid device `%s'.\n" -msgstr "無效的è£ç½®ã€Œ%sã€ã€‚\n" - -#: util/grub-syslinux2cfg.c:64 -msgid "root directory as it will be seen on runtime [default=/]." -msgstr "" - -#: util/grub-syslinux2cfg.c:69 -msgid "" -"current directory of syslinux as it will be seen on runtime [default is " -"parent directory of input file]." -msgstr "" - -#: util/grub-syslinux2cfg.c:74 -msgid "write output to FILE [default=stdout]." -msgstr "" - -#: util/grub-syslinux2cfg.c:148 -msgid "Transform syslinux config into GRUB one." -msgstr "" - -#: util/mkimage.c:688 util/mkimage.c:717 util/mkimage.c:734 -msgid "cannot compress the kernel image" -msgstr "無法壓縮內核映åƒ" - -#: util/mkimage.c:766 util/mkimage.c:1077 -#, c-format -msgid "unknown compression %d" -msgstr "" - -#: util/mkimage.c:1088 -#, fuzzy -msgid "Decompressor is too big" -msgstr "核心映åƒéŽå¤§" - -#: util/mkimage.c:1133 -#, fuzzy, c-format -msgid "core image is too big (0x%x > 0x%x)" -msgstr "核心映åƒéŽå¤§ (%p > %p)" - -#: util/mkimage.c:1140 -#, fuzzy, c-format -msgid "kernel image is too big (0x%x > 0x%x)" -msgstr "核心映åƒéŽå¤§ (%p > %p)" - -#: util/mkimage.c:1220 util/mkimage.c:1501 -#, c-format -msgid "diskboot.img size must be %u bytes" -msgstr "diskboot.img 大å°å¿…須為 %u ä½å…ƒçµ„" - -#: util/mkimage.c:1571 -msgid "" -"fwstart.img doesn't match the known good version. proceed at your own risk" -msgstr "" - -#: util/mkimage.c:1575 util/mkimage.c:1601 -#, fuzzy -msgid "firmware image is too big" -msgstr "核心映åƒéŽå¤§" - -#: util/resolve.c:93 -#, fuzzy, c-format -msgid "invalid line format: %s" -msgstr "無效指令 %s。\n" - -#: util/setup.c:167 -msgid "the first sector of the core file is not sector-aligned" -msgstr "核心檔的第一ç£å€ä¸æ˜¯ç£å€å°é½Šå½¢å¼" - -#: util/setup.c:177 -msgid "non-sector-aligned data is found in the core file" -msgstr "在核心檔內找到éžç£å€å°é½Šå½¢å¼çš„資料" - -#: util/setup.c:199 -msgid "the sectors of the core file are too fragmented" -msgstr "核心檔的ç£å€éŽæ–¼é›¶æ•£" - -#: util/setup.c:280 -#, c-format -msgid "the size of `%s' is not %u" -msgstr "「%sã€çš„大å°ä¸æ˜¯ %u" - -#: util/setup.c:290 -#, c-format -msgid "the size of `%s' is too small" -msgstr "「%sã€çš„大å°éŽå°" - -#: util/setup.c:428 -msgid "" -"Attempting to install GRUB to a disk with multiple partition labels or both " -"partition label and filesystem. This is not supported yet." -msgstr "" -"æ­£è©¦åœ–å®‰è£ GRUB è‡³æœ‰å¤šåˆ†å‰²å€æ¨™ç±¤ï¼Œæˆ–有分割å€ä»¥åŠæª”案系統的ç£ç¢Ÿä¸Šã€‚這尚未支" -"æ´ã€‚" - -#: util/setup.c:441 -#, c-format -msgid "unable to identify a filesystem in %s; safety check can't be performed" -msgstr "無法辨識 %s 內的檔案系統;無法執行安全檢查" - -#. TRANSLATORS: Filesystem may reserve the space just GRUB isn't sure about it. -#: util/setup.c:445 -#, c-format -msgid "" -"%s appears to contain a %s filesystem which isn't known to reserve space for " -"DOS-style boot. Installing GRUB there could result in FILESYSTEM " -"DESTRUCTION if valuable data is overwritten by grub-setup (--skip-fs-probe " -"disables this check, use at your own risk)" -msgstr "" -"%s ä¼¼ä¹ŽåŒ…å« %s 檔案系統,該檔案系統ä¸çŸ¥é“是å¦ç‚º DOS å¼é–‹æ©Ÿæ‰€ä¿ç•™çš„空間。如果" -"那裡存有富價值的資料,將 GRUB 安è£åœ¨é‚£è£¡å¯èƒ½æœƒå°Žè‡´ã€Œæª”案系統摧毀ã€ï¼Œè³‡æ–™æœƒè¢« " -"grub-setup 覆寫 (加上 --skip-fs-probe å¯ä»¥åœç”¨æœ¬æª¢æŸ¥ï¼Œä½†è«‹è‡ªè¡Œæ‰¿æ“”風險)" - -#. TRANSLATORS: Partition map may reserve the space just GRUB isn't sure about it. -#: util/setup.c:458 -#, c-format -msgid "" -"%s appears to contain a %s partition map which isn't known to reserve space " -"for DOS-style boot. Installing GRUB there could result in FILESYSTEM " -"DESTRUCTION if valuable data is overwritten by grub-setup (--skip-fs-probe " -"disables this check, use at your own risk)" -msgstr "" -"%s ä¼¼ä¹ŽåŒ…å« %s åˆ†å‰²å€æ˜ å°„,該映射ä¸çŸ¥é“是å¦ç‚º DOS å¼é–‹æ©Ÿæ‰€ä¿ç•™çš„空間。如果那" -"裡存有富價值的資料,將 GRUB 安è£åœ¨é‚£è£¡å¯èƒ½æœƒå°Žè‡´ã€Œæª”案系統摧毀ã€ï¼Œè³‡æ–™æœƒè¢« " -"grub-setup 覆寫 (加上 --skip-fs-probe å¯ä»¥åœç”¨æœ¬æª¢æŸ¥ï¼Œä½†è«‹è‡ªè¡Œæ‰¿æ“”風險)" - -#: util/setup.c:465 -#, fuzzy, c-format -msgid "" -"%s appears to contain a %s partition map and LDM which isn't known to be a " -"safe combination. Installing GRUB there could result in FILESYSTEM " -"DESTRUCTION if valuable data is overwritten by grub-setup (--skip-fs-probe " -"disables this check, use at your own risk)" -msgstr "" -"%s ä¼¼ä¹ŽåŒ…å« %s åˆ†å‰²å€æ˜ å°„,該映射ä¸çŸ¥é“是å¦ç‚º DOS å¼é–‹æ©Ÿæ‰€ä¿ç•™çš„空間。如果那" -"裡存有富價值的資料,將 GRUB 安è£åœ¨é‚£è£¡å¯èƒ½æœƒå°Žè‡´ã€Œæª”案系統摧毀ã€ï¼Œè³‡æ–™æœƒè¢« " -"grub-setup 覆寫 (加上 --skip-fs-probe å¯ä»¥åœç”¨æœ¬æª¢æŸ¥ï¼Œä½†è«‹è‡ªè¡Œæ‰¿æ“”風險)" - -#: util/setup.c:478 -msgid "" -"Attempting to install GRUB to a partitionless disk or to a partition. This " -"is a BAD idea." -msgstr "æ­£è©¦åœ–å®‰è£ GRUB 至無分割的ç£ç¢Ÿï¼Œæˆ–是æŸåˆ†å‰²å€ä¸Šã€‚這是個「壞ã€ä¸»æ„。" - -#: util/setup.c:483 -#, fuzzy -msgid "" -"Attempting to install GRUB to a disk with multiple partition labels. This " -"is not supported yet." -msgstr "" -"æ­£è©¦åœ–å®‰è£ GRUB è‡³æœ‰å¤šåˆ†å‰²å€æ¨™ç±¤ï¼Œæˆ–有分割å€ä»¥åŠæª”案系統的ç£ç¢Ÿä¸Šã€‚這尚未支" -"æ´ã€‚" - -#: util/setup.c:489 -#, c-format -msgid "Partition style `%s' doesn't support embedding" -msgstr "" - -#: util/setup.c:496 -#, c-format -msgid "File system `%s' doesn't support embedding" -msgstr "" - -#: util/setup.c:537 -msgid "Your embedding area is unusually small. core.img won't fit in it." -msgstr "" - -#: util/setup.c:559 util/setup.c:725 util/setup.c:844 -msgid "no terminator in the core image" -msgstr "核心映åƒå…§æ²’有終止器" - -#: util/setup.c:622 -msgid "core.img version mismatch" -msgstr "" - -#: util/setup.c:675 -#, fuzzy -msgid "" -"embedding is not possible, but this is required for RAID and LVM install" -msgstr "ä¸å¯èƒ½å…§åµŒï¼Œä½†æ˜¯é€™å°æ–¼è·¨ç£ç¢Ÿå®‰è£ä¾†èªªæ˜¯å¿…è¦çš„" - -#: util/setup.c:682 -#, fuzzy, c-format -msgid "can't determine filesystem on %s" -msgstr "判斷檔案系統類型。" - -#: util/setup.c:685 -#, c-format -msgid "filesystem `%s' doesn't support blocklists" -msgstr "" - -#. TRANSLATORS: cross-disk refers to /boot being on one disk -#. but MBR on another. -#: util/setup.c:694 -msgid "embedding is not possible, but this is required for cross-disk install" -msgstr "ä¸å¯èƒ½å…§åµŒï¼Œä½†æ˜¯é€™å°æ–¼è·¨ç£ç¢Ÿå®‰è£ä¾†èªªæ˜¯å¿…è¦çš„" - -#: util/setup.c:700 -msgid "" -"Embedding is not possible. GRUB can only be installed in this setup by " -"using blocklists. However, blocklists are UNRELIABLE and their use is " -"discouraged." -msgstr "" -"ä¸å¯èƒ½å…§åµŒã€‚GRUB 在本設置中僅能藉由å€å¡Šæ¸…單來安è£ã€‚然而,使用å€å¡Šæ¸…å–®ä¸åƒ…「ä¸" -"å¯é ã€ç”šè‡³ä»¤äººæŒ«æŠ˜ã€‚" - -#. TRANSLATORS: Here GRUB refuses to continue with blocklist install. -#: util/setup.c:705 -msgid "will not proceed with blocklists" -msgstr "䏿œƒç¹¼çºŒè™•ç†å€å¡Šæ¸…å–®" - -#: util/setup.c:817 util/setup.c:837 -msgid "blocklists are invalid" -msgstr "" - -#: util/setup.c:847 -msgid "blocklists are incomplete" -msgstr "" - -#~ msgid "Expose v1 tables." -#~ msgstr "顯露 v1 表。" - -#~ msgid "Fake BIOS." -#~ msgstr "å½ BIOS。" - -#~ msgid "Check hash list file." -#~ msgstr "檢查雜湊清單檔。" - -#~ msgid "DIRECTORY" -#~ msgstr "DIRECTORY" - -#~ msgid "Unload PXE environment." -#~ msgstr "å¸è¼‰ PXE 環境。" - -#~ msgid "Read word from PORT." -#~ msgstr "從 PORT 讀å–單詞。" - -#~ msgid "Read dword from PORT." -#~ msgstr "從 PORT è®€å– dword。" - -#~ msgid "Write word VALUE to PORT." -#~ msgstr "將單詞 VALUE 寫入 PORT。" - -#~ msgid "Write dword VALUE to PORT." -#~ msgstr "å°‡ dword VALUE 寫入 PORT。" - -#~ msgid "[--shift] [--ctrl] [--alt]" -#~ msgstr "[--shift] [--ctrl] [--alt]" - -#~ msgid "[-1|-2]" -#~ msgstr "[-1|-2]" - -#~ msgid "Read word from ADDR." -#~ msgstr "從 ADDR 讀å–單詞。" - -#~ msgid "Read dword from ADDR." -#~ msgstr "從 ADDR è®€å– dword。" - -#~ msgid "Write word VALUE to ADDR." -#~ msgstr "將單詞 VALUE 寫入 ADDR。" - -#~ msgid "Write dword VALUE to ADDR." -#~ msgstr "å°‡ dword VALUE 寫入 ADDR。" - -#~ msgid "Menu entry definition as a string." -#~ msgstr "é¸å–®æ¢ç›®å®šç¾©ç‚ºå­—串。" - -#~ msgid "[DEVICE]" -#~ msgstr "[DEVICE]" - -#~ msgid "Variable names to update with matches." -#~ msgstr "è¦ç”¨ç¬¦åˆé …目來更新的變數å稱。" - -#~ msgid "Load XNU hibernate image." -#~ msgstr "載入 XNU 休眠映åƒã€‚" - -#~ msgid "Authenticate users" -#~ msgstr "驗證使用者" - -#~ msgid "[n]" -#~ msgstr "[n]" - -#~ msgid "UTF-8 visual" -#~ msgstr "UTF-8 視覺" - -#~ msgid "If FILENAME is '-', the default value %s is used." -#~ msgstr "è‹¥ FILENAME 為「-ã€ï¼Œå°‡ä½¿ç”¨é è¨­å€¼ %s。" - -#~ msgid "write error" -#~ msgstr "寫入發生錯誤" - -#~ msgid "open error" -#~ msgstr "開啟發生錯誤" - -#~ msgid "seek error" -#~ msgstr "查詢發生錯誤" - -#~ msgid "Hex dump FILE." -#~ msgstr "以å六進ä½å‚¾å° FILE。" - -#~ msgid "Must use absolute path.\n" -#~ msgstr "必須使用絕å°è·¯å¾‘。\n" - -#~ msgid "the core image is too small" -#~ msgstr "核心映åƒéŽå°" - -#~ msgid "prefix is too long" -#~ msgstr "å‰ç¶´éŽé•·" - -#~ msgid "" -#~ "Usage: %s [OPTION]... [MODULES]\n" -#~ "\n" -#~ "Make a bootable image of GRUB.\n" -#~ "\n" -#~ " -d, --directory=DIR use images and modules under DIR [default=%s/" -#~ "@platform@]\n" -#~ " -p, --prefix=DIR set grub_prefix directory [default=%s]\n" -#~ " -m, --memdisk=FILE embed FILE as a memdisk image\n" -#~ " -c, --config=FILE embed FILE as boot config\n" -#~ " -n, --note add NOTE segment for CHRP Open Firmware\n" -#~ " -o, --output=FILE output a generated image to FILE " -#~ "[default=stdout]\n" -#~ " -O, --format=FORMAT generate an image in format\n" -#~ " available formats: %s\n" -#~ " -C, --compression=(xz|none|auto) choose the compression to use\n" -#~ " -h, --help display this message and exit\n" -#~ " -V, --version print version information and exit\n" -#~ " -v, --verbose print verbose messages\n" -#~ "\n" -#~ "Report bugs to <%s>.\n" -#~ msgstr "" -#~ "用法:%s [OPTION]... [MODULES]\n" -#~ "\n" -#~ "建立 GRUB çš„å¯é–‹æ©Ÿæ˜ åƒã€‚\n" -#~ "\n" -#~ " -d, --directory=DIR 使用 DIR 下的映åƒèˆ‡æ¨¡çµ„ [é è¨­=%s/@platform@]\n" -#~ " -p, --prefix=DIR 設定 grub_prefix 目錄 [é è¨­=%s]\n" -#~ " -m, --memdisk=FILE å°‡ FILE 內嵌為 memdisk 映åƒ\n" -#~ " -c, --config=FILE å°‡ FILE 內嵌為開機組態\n" -#~ " -n, --note 為 CHRP Open Firmware 加入 NOTE 倿®µ\n" -#~ " -o, --output=FILE 將產生的映åƒè¼¸å‡ºè‡³ FILE [é è¨­=stdout]\n" -#~ " -O, --format=FORMAT 產生å¯ä½¿ç”¨æ ¼å¼çš„æ˜ åƒæª”:\n" -#~ " %s\n" -#~ " -C, --compression=(xz|none|auto) 鏿“‡è¦ä½¿ç”¨çš„壓縮方å¼\n" -#~ " -h, --help 顯示本訊æ¯ä¸¦é›¢é–‹\n" -#~ " -V, --version 列å°ç‰ˆæœ¬è³‡è¨Šä¸¦é›¢é–‹\n" -#~ " -v, --verbose 列å°å†—長訊æ¯\n" -#~ "\n" -#~ "請回報臭蟲至 <%s>。\n" - -#~ msgid "cannot open %s" -#~ msgstr "無法開啟 %s" - -#~ msgid "" -#~ "embedding is not possible, but this is required when the root device is " -#~ "on a RAID array or LVM volume" -#~ msgstr "" -#~ "ä¸å¯èƒ½å…§åµŒï¼Œä½†æ˜¯é€™å°æ–¼æ ¹è£ç½®ä½æ–¼ RAID 陣列或是 LVM 儲å€ä¸Šæ™‚來說是必è¦çš„" - -#~ msgid "failed to read the first sector of the core image" -#~ msgstr "ç„¡æ³•è®€å–æ ¸å¿ƒæ˜ åƒçš„第一ç£å€" - -#~ msgid "DEV" -#~ msgstr "DEV" - -#~ msgid "Use DEV as the root device [default=guessed]" -#~ msgstr "使用 DEV 作為根è£ç½® [é è¨­=guessed]" - -#~ msgid "cannot guess the root device. Specify the option `--root-device'" -#~ msgstr "無法猜測根è£ç½®ã€‚請指定「--root-deviceã€é¸é …" - -#~ msgid "Loading GNU Mach ..." -#~ msgstr "正在載入 GNU Mach ..." - -#~ msgid "Loading the Hurd ..." -#~ msgstr "正在載入 Hurd ..." - -#~ msgid "%s, with kFreeBSD %s (recovery mode)" -#~ msgstr "%s,採用 kFreeBSD %s (復原模å¼)" - -#~ msgid "%s, with kFreeBSD %s" -#~ msgstr "%s,採用 kFreeBSD %s" - -#~ msgid "Loading kernel of FreeBSD %s ..." -#~ msgstr "正在載入 FreeBSD %s 的內核 ..." - -#~ msgid "%s, with Linux %s (recovery mode)" -#~ msgstr "%s,採用 Linux %s (復原模å¼)" - -#~ msgid "%s, with Linux %s" -#~ msgstr "%s,採用 Linux %s" - -#~ msgid "Loading Linux %s ..." -#~ msgstr "正在載入 Linux %s ..." - -#~ msgid "Loading initial ramdisk ..." -#~ msgstr "正在載入åˆå§‹ ramdisk ..." - -#~ msgid "%s, with kernel %s (via %s, recovery mode)" -#~ msgstr "%s,採用內核 %s (é€éŽ %s,復原模å¼)" - -#~ msgid "%s, with kernel %s (via %s)" -#~ msgstr "%s,採用內核 %s (é€éŽ %s)" - -#~ msgid "%s, with Xen %s and Linux %s (recovery mode)" -#~ msgstr "%s,採用 Xen %s 與 Linux %s (復原模å¼)" - -#~ msgid "%s, with Xen %s and Linux %s" -#~ msgstr "%s,採用 Xen %s 與 Linux %s" - -#~ msgid "Loading Xen %s ..." -#~ msgstr "正在載入 Xen %s ..." diff --git a/thirdparty/grub-2.04/stamp-h.in b/thirdparty/grub-2.04/stamp-h.in deleted file mode 100644 index 9788f7023..000000000 --- a/thirdparty/grub-2.04/stamp-h.in +++ /dev/null @@ -1 +0,0 @@ -timestamp diff --git a/thirdparty/grub-2.04/tests/ahci_test.in b/thirdparty/grub-2.04/tests/ahci_test.in deleted file mode 100644 index 7df560462..000000000 --- a/thirdparty/grub-2.04/tests/ahci_test.in +++ /dev/null @@ -1,53 +0,0 @@ -#! @BUILD_SHEBANG@ -# Copyright (C) 2013 Free Software Foundation, Inc. -# -# GRUB is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# GRUB is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with GRUB. If not, see . - -set -e -grubshell=@builddir@/grub-shell - -. "@builddir@/grub-core/modinfo.sh" - -case "${grub_modinfo_target_cpu}-${grub_modinfo_platform}" in - # PLATFORM: Don't mess with real devices when OS is active - *-emu) - exit 0;; - # FIXME: qemu gets bonito DMA wrong - mipsel-loongson) - exit 0;; - # PLATFORM: no AHCI on ARC and qemu-mips platforms - mips*-arc | mips*-qemu_mips) - exit 0;; - # FIXME: No native drivers are available for those - powerpc-ieee1275 | sparc64-ieee1275 | arm*-efi) - exit 0;; -esac - -imgfile="`mktemp "${TMPDIR:-/tmp}/tmp.XXXXXXXXXX"`" || exit 1 -outfile="`mktemp "${TMPDIR:-/tmp}/tmp.XXXXXXXXXX"`" || exit 1 - -echo "hello" > "$outfile" - -tar cf "$imgfile" "$outfile" - -if [ "$(echo "nativedisk; source '(ahci0)/$outfile';" | "${grubshell}" --qemu-opts="-drive id=disk,file=$imgfile,if=none -device ahci,id=ahci -device ide-drive,drive=disk,bus=ahci.0 " | tail -n 1)" != "Hello World" ]; then - rm "$imgfile" - rm "$outfile" - exit 1 -fi - -rm "$imgfile" -rm "$outfile" - - diff --git a/thirdparty/grub-2.04/tests/btrfs_test.in b/thirdparty/grub-2.04/tests/btrfs_test.in deleted file mode 100644 index 0c9bf3a68..000000000 --- a/thirdparty/grub-2.04/tests/btrfs_test.in +++ /dev/null @@ -1,25 +0,0 @@ -#!@BUILD_SHEBANG@ - -set -e - -if [ "x$EUID" = "x" ] ; then - EUID=`id -u` -fi - -if [ "$EUID" != 0 ] ; then - exit 77 -fi - -if ! which mkfs.btrfs >/dev/null 2>&1; then - echo "mkfs.btrfs not installed; cannot test btrfs." - exit 77 -fi - -"@builddir@/grub-fs-tester" btrfs -"@builddir@/grub-fs-tester" btrfs_zlib -"@builddir@/grub-fs-tester" btrfs_lzo -"@builddir@/grub-fs-tester" btrfs_zstd -"@builddir@/grub-fs-tester" btrfs_raid0 -"@builddir@/grub-fs-tester" btrfs_raid1 -"@builddir@/grub-fs-tester" btrfs_single -"@builddir@/grub-fs-tester" btrfs_raid10 diff --git a/thirdparty/grub-2.04/tests/cdboot_test.in b/thirdparty/grub-2.04/tests/cdboot_test.in deleted file mode 100644 index 75acdfedb..000000000 --- a/thirdparty/grub-2.04/tests/cdboot_test.in +++ /dev/null @@ -1,39 +0,0 @@ -#! @BUILD_SHEBANG@ -# Copyright (C) 2013 Free Software Foundation, Inc. -# -# GRUB is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# GRUB is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with GRUB. If not, see . - -set -e -grubshell=@builddir@/grub-shell - -. "@builddir@/grub-core/modinfo.sh" - -case "${grub_modinfo_target_cpu}-${grub_modinfo_platform}" in - # PLATFORM: emu is different - *-emu) - exit 0;; - # PLATFORM: Flash targets - i386-qemu | i386-coreboot | mips-qemu_mips | mipsel-qemu_mips) - exit 0;; - # FIXME: currently grub-shell uses only -kernel for loongson - mipsel-loongson) - exit 0;; - # FIXME: OFW fails to open CD-ROM - i386-ieee1275) - exit 0;; -esac - -if [ "$(echo hello | "${grubshell}" --boot=cd)" != "Hello World" ]; then - exit 1 -fi diff --git a/thirdparty/grub-2.04/tests/cmp_unit_test.c b/thirdparty/grub-2.04/tests/cmp_unit_test.c deleted file mode 100644 index e5378419c..000000000 --- a/thirdparty/grub-2.04/tests/cmp_unit_test.c +++ /dev/null @@ -1,226 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2012 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include - -GRUB_MOD_LICENSE ("GPLv3+"); - -#define MSG "cmp test failed" - -/* Functional test main method. */ -static void -cmp_test (void) -{ - const char *s1 = "a"; - const char *s2 = "aa"; - const char *s3 = "â"; - - grub_test_assert (grub_strlen (s1) == 1, MSG); - grub_test_assert (grub_strlen (s2) == 2, MSG); - grub_test_assert (grub_strlen (s3) == 2, MSG); - - grub_test_assert (grub_strcmp (s1, s1) == 0, MSG); - grub_test_assert (grub_strcmp (s1, s2) < 0, MSG); - grub_test_assert (grub_strcmp (s1, s3) < 0, MSG); - - grub_test_assert (grub_strcmp (s2, s1) > 0, MSG); - grub_test_assert (grub_strcmp (s2, s2) == 0, MSG); - grub_test_assert (grub_strcmp (s2, s3) < 0, MSG); - - grub_test_assert (grub_strcmp (s3, s1) > 0, MSG); - grub_test_assert (grub_strcmp (s3, s2) > 0, MSG); - grub_test_assert (grub_strcmp (s3, s3) == 0, MSG); - - grub_test_assert (grub_strcasecmp (s1, s1) == 0, MSG); - grub_test_assert (grub_strcasecmp (s1, s2) < 0, MSG); - grub_test_assert (grub_strcasecmp (s1, s3) < 0, MSG); - - grub_test_assert (grub_strcasecmp (s2, s1) > 0, MSG); - grub_test_assert (grub_strcasecmp (s2, s2) == 0, MSG); - grub_test_assert (grub_strcasecmp (s2, s3) < 0, MSG); - - grub_test_assert (grub_strcasecmp (s3, s1) > 0, MSG); - grub_test_assert (grub_strcasecmp (s3, s2) > 0, MSG); - grub_test_assert (grub_strcasecmp (s3, s3) == 0, MSG); - - grub_test_assert (grub_memcmp (s1, s1, 2) == 0, MSG); - grub_test_assert (grub_memcmp (s1, s2, 2) < 0, MSG); - grub_test_assert (grub_memcmp (s1, s3, 2) < 0, MSG); - - grub_test_assert (grub_memcmp (s2, s1, 2) > 0, MSG); - grub_test_assert (grub_memcmp (s2, s2, 2) == 0, MSG); - grub_test_assert (grub_memcmp (s2, s3, 2) < 0, MSG); - - grub_test_assert (grub_memcmp (s3, s1, 2) > 0, MSG); - grub_test_assert (grub_memcmp (s3, s2, 2) > 0, MSG); - grub_test_assert (grub_memcmp (s3, s3, 2) == 0, MSG); - - grub_test_assert (grub_memcmp (s1, s1, 1) == 0, MSG); - grub_test_assert (grub_memcmp (s1, s2, 1) == 0, MSG); - grub_test_assert (grub_memcmp (s1, s3, 1) < 0, MSG); - - grub_test_assert (grub_memcmp (s2, s1, 1) == 0, MSG); - grub_test_assert (grub_memcmp (s2, s2, 1) == 0, MSG); - grub_test_assert (grub_memcmp (s2, s3, 1) < 0, MSG); - - grub_test_assert (grub_memcmp (s3, s1, 1) > 0, MSG); - grub_test_assert (grub_memcmp (s3, s2, 1) > 0, MSG); - grub_test_assert (grub_memcmp (s3, s3, 1) == 0, MSG); - - grub_test_assert (grub_strncmp (s1, s1, 2) == 0, MSG); - grub_test_assert (grub_strncmp (s1, s2, 2) < 0, MSG); - grub_test_assert (grub_strncmp (s1, s3, 2) < 0, MSG); - - grub_test_assert (grub_strncmp (s2, s1, 2) > 0, MSG); - grub_test_assert (grub_strncmp (s2, s2, 2) == 0, MSG); - grub_test_assert (grub_strncmp (s2, s3, 2) < 0, MSG); - - grub_test_assert (grub_strncmp (s3, s1, 2) > 0, MSG); - grub_test_assert (grub_strncmp (s3, s2, 2) > 0, MSG); - grub_test_assert (grub_strncmp (s3, s3, 2) == 0, MSG); - - grub_test_assert (grub_strncmp (s1, s1, 1) == 0, MSG); - grub_test_assert (grub_strncmp (s1, s2, 1) == 0, MSG); - grub_test_assert (grub_strncmp (s1, s3, 1) < 0, MSG); - - grub_test_assert (grub_strncmp (s2, s1, 1) == 0, MSG); - grub_test_assert (grub_strncmp (s2, s2, 1) == 0, MSG); - grub_test_assert (grub_strncmp (s2, s3, 1) < 0, MSG); - - grub_test_assert (grub_strncmp (s3, s1, 1) > 0, MSG); - grub_test_assert (grub_strncmp (s3, s2, 1) > 0, MSG); - grub_test_assert (grub_strncmp (s3, s3, 1) == 0, MSG); - - grub_test_assert (grub_strncasecmp (s1, s1, 2) == 0, MSG); - grub_test_assert (grub_strncasecmp (s1, s2, 2) < 0, MSG); - grub_test_assert (grub_strncasecmp (s1, s3, 2) < 0, MSG); - - grub_test_assert (grub_strncasecmp (s2, s1, 2) > 0, MSG); - grub_test_assert (grub_strncasecmp (s2, s2, 2) == 0, MSG); - grub_test_assert (grub_strncasecmp (s2, s3, 2) < 0, MSG); - - grub_test_assert (grub_strncasecmp (s3, s1, 2) > 0, MSG); - grub_test_assert (grub_strncasecmp (s3, s2, 2) > 0, MSG); - grub_test_assert (grub_strncasecmp (s3, s3, 2) == 0, MSG); - - grub_test_assert (grub_strncasecmp (s1, s1, 1) == 0, MSG); - grub_test_assert (grub_strncasecmp (s1, s2, 1) == 0, MSG); - grub_test_assert (grub_strncasecmp (s1, s3, 1) < 0, MSG); - - grub_test_assert (grub_strncasecmp (s2, s1, 1) == 0, MSG); - grub_test_assert (grub_strncasecmp (s2, s2, 1) == 0, MSG); - grub_test_assert (grub_strncasecmp (s2, s3, 1) < 0, MSG); - - grub_test_assert (grub_strncasecmp (s3, s1, 1) > 0, MSG); - grub_test_assert (grub_strncasecmp (s3, s2, 1) > 0, MSG); - grub_test_assert (grub_strncasecmp (s3, s3, 1) == 0, MSG); - - grub_test_assert (strlen (s1) == 1, MSG); - grub_test_assert (strlen (s2) == 2, MSG); - grub_test_assert (strlen (s3) == 2, MSG); - - grub_test_assert (strcmp (s1, s1) == 0, MSG); - grub_test_assert (strcmp (s1, s2) < 0, MSG); - grub_test_assert (strcmp (s1, s3) < 0, MSG); - - grub_test_assert (strcmp (s2, s1) > 0, MSG); - grub_test_assert (strcmp (s2, s2) == 0, MSG); - grub_test_assert (strcmp (s2, s3) < 0, MSG); - - grub_test_assert (strcmp (s3, s1) > 0, MSG); - grub_test_assert (strcmp (s3, s2) > 0, MSG); - grub_test_assert (strcmp (s3, s3) == 0, MSG); - - grub_test_assert (memcmp (s1, s1, 2) == 0, MSG); - grub_test_assert (memcmp (s1, s2, 2) < 0, MSG); - grub_test_assert (memcmp (s1, s3, 2) < 0, MSG); - - grub_test_assert (memcmp (s2, s1, 2) > 0, MSG); - grub_test_assert (memcmp (s2, s2, 2) == 0, MSG); - grub_test_assert (memcmp (s2, s3, 2) < 0, MSG); - - grub_test_assert (memcmp (s3, s1, 2) > 0, MSG); - grub_test_assert (memcmp (s3, s2, 2) > 0, MSG); - grub_test_assert (memcmp (s3, s3, 2) == 0, MSG); - - grub_test_assert (memcmp (s1, s1, 1) == 0, MSG); - grub_test_assert (memcmp (s1, s2, 1) == 0, MSG); - grub_test_assert (memcmp (s1, s3, 1) < 0, MSG); - - grub_test_assert (memcmp (s2, s1, 1) == 0, MSG); - grub_test_assert (memcmp (s2, s2, 1) == 0, MSG); - grub_test_assert (memcmp (s2, s3, 1) < 0, MSG); - - grub_test_assert (memcmp (s3, s1, 1) > 0, MSG); - grub_test_assert (memcmp (s3, s2, 1) > 0, MSG); - grub_test_assert (memcmp (s3, s3, 1) == 0, MSG); - - grub_test_assert (strncmp (s1, s1, 2) == 0, MSG); - grub_test_assert (strncmp (s1, s2, 2) < 0, MSG); - grub_test_assert (strncmp (s1, s3, 2) < 0, MSG); - - grub_test_assert (strncmp (s2, s1, 2) > 0, MSG); - grub_test_assert (strncmp (s2, s2, 2) == 0, MSG); - grub_test_assert (strncmp (s2, s3, 2) < 0, MSG); - - grub_test_assert (strncmp (s3, s1, 2) > 0, MSG); - grub_test_assert (strncmp (s3, s2, 2) > 0, MSG); - grub_test_assert (strncmp (s3, s3, 2) == 0, MSG); - - grub_test_assert (strncmp (s1, s1, 1) == 0, MSG); - grub_test_assert (strncmp (s1, s2, 1) == 0, MSG); - grub_test_assert (strncmp (s1, s3, 1) < 0, MSG); - - grub_test_assert (strncmp (s2, s1, 1) == 0, MSG); - grub_test_assert (strncmp (s2, s2, 1) == 0, MSG); - grub_test_assert (strncmp (s2, s3, 1) < 0, MSG); - - grub_test_assert (strncmp (s3, s1, 1) > 0, MSG); - grub_test_assert (strncmp (s3, s2, 1) > 0, MSG); - grub_test_assert (strncmp (s3, s3, 1) == 0, MSG); - - grub_test_assert (strncasecmp (s1, s1, 2) == 0, MSG); - grub_test_assert (strncasecmp (s1, s2, 2) < 0, MSG); - grub_test_assert (strncasecmp (s1, s3, 2) < 0, MSG); - - grub_test_assert (strncasecmp (s2, s1, 2) > 0, MSG); - grub_test_assert (strncasecmp (s2, s2, 2) == 0, MSG); - grub_test_assert (strncasecmp (s2, s3, 2) < 0, MSG); - - grub_test_assert (strncasecmp (s3, s1, 2) > 0, MSG); - grub_test_assert (strncasecmp (s3, s2, 2) > 0, MSG); - grub_test_assert (strncasecmp (s3, s3, 2) == 0, MSG); - - grub_test_assert (strncasecmp (s1, s1, 1) == 0, MSG); - grub_test_assert (strncasecmp (s1, s2, 1) == 0, MSG); - grub_test_assert (strncasecmp (s1, s3, 1) < 0, MSG); - - grub_test_assert (strncasecmp (s2, s1, 1) == 0, MSG); - grub_test_assert (strncasecmp (s2, s2, 1) == 0, MSG); - grub_test_assert (strncasecmp (s2, s3, 1) < 0, MSG); - - grub_test_assert (strncasecmp (s3, s1, 1) > 0, MSG); - grub_test_assert (strncasecmp (s3, s2, 1) > 0, MSG); - grub_test_assert (strncasecmp (s3, s3, 1) == 0, MSG); -} - -/* Register example_test method as a functional test. */ -GRUB_UNIT_TEST ("cmp_test", cmp_test); diff --git a/thirdparty/grub-2.04/tests/core_compress_test.in b/thirdparty/grub-2.04/tests/core_compress_test.in deleted file mode 100644 index 9d216ebcf..000000000 --- a/thirdparty/grub-2.04/tests/core_compress_test.in +++ /dev/null @@ -1,36 +0,0 @@ -#! @BUILD_SHEBANG@ -# Copyright (C) 2013 Free Software Foundation, Inc. -# -# GRUB is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# GRUB is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with GRUB. If not, see . - -set -e -grubshell=@builddir@/grub-shell - -. "@builddir@/grub-core/modinfo.sh" - -case "${grub_modinfo_target_cpu}-${grub_modinfo_platform}" in - # FIXME: Only mips currently supports configurable core compression - *-emu | i386-* | x86_64-* | sparc64-* | ia64-*) - exit 0 - ;; -esac - - -if [ "$(echo hello | "${grubshell}" --grub-mkimage-extra=--compress=xz)" != "Hello World" ]; then - exit 1 -fi - -if [ "$(echo hello | "${grubshell}" --grub-mkimage-extra=--compress=none)" != "Hello World" ]; then - exit 1 -fi diff --git a/thirdparty/grub-2.04/tests/cpio_test.in b/thirdparty/grub-2.04/tests/cpio_test.in deleted file mode 100644 index 5742cf17b..000000000 --- a/thirdparty/grub-2.04/tests/cpio_test.in +++ /dev/null @@ -1,16 +0,0 @@ -#!@BUILD_SHEBANG@ - -set -e - -if ! which cpio >/dev/null 2>&1; then - echo "cpio not installed; cannot test cpio." - exit 77 -fi - -"@builddir@/grub-fs-tester" cpio_bin -"@builddir@/grub-fs-tester" cpio_odc -"@builddir@/grub-fs-tester" cpio_newc -"@builddir@/grub-fs-tester" cpio_crc -"@builddir@/grub-fs-tester" cpio_ustar -"@builddir@/grub-fs-tester" cpio_hpbin -"@builddir@/grub-fs-tester" cpio_hpodc diff --git a/thirdparty/grub-2.04/tests/date_unit_test.c b/thirdparty/grub-2.04/tests/date_unit_test.c deleted file mode 100644 index 99774f199..000000000 --- a/thirdparty/grub-2.04/tests/date_unit_test.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2013 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include - -#include -#include -#include - -static void -date_test (grub_int32_t v) -{ - struct grub_datetime dt; - time_t t = v; - struct tm *g; - int w; - - g = gmtime (&t); - - grub_unixtime2datetime (v, &dt); - - w = grub_get_weekday (&dt); - - grub_test_assert (g->tm_sec == dt.second, "time %d bad second: %d vs %d", v, - g->tm_sec, dt.second); - grub_test_assert (g->tm_min == dt.minute, "time %d bad minute: %d vs %d", v, - g->tm_min, dt.minute); - grub_test_assert (g->tm_hour == dt.hour, "time %d bad hour: %d vs %d", v, - g->tm_hour, dt.hour); - grub_test_assert (g->tm_mday == dt.day, "time %d bad day: %d vs %d", v, - g->tm_mday, dt.day); - grub_test_assert (g->tm_mon + 1 == dt.month, "time %d bad month: %d vs %d", v, - g->tm_mon + 1, dt.month); - grub_test_assert (g->tm_year + 1900 == dt.year, - "time %d bad year: %d vs %d", v, - g->tm_year + 1900, dt.year); - grub_test_assert (g->tm_wday == w, "time %d bad week day: %d vs %d", v, - g->tm_wday, w); -} - -static void -date_test_iter (void) -{ - grub_int32_t tests[] = { -1, 0, +1, -2133156255, GRUB_INT32_MIN, - GRUB_INT32_MAX }; - unsigned i; - - for (i = 0; i < ARRAY_SIZE (tests); i++) - date_test (tests[i]); - srand (42); - for (i = 0; i < 1000000; i++) - { - grub_int32_t x = rand (); - date_test (x); - date_test (-x); - } -} - -GRUB_UNIT_TEST ("date_unit_test", date_test_iter); diff --git a/thirdparty/grub-2.04/tests/dfly-mbr-mbexample.dfly.img.gz b/thirdparty/grub-2.04/tests/dfly-mbr-mbexample.dfly.img.gz deleted file mode 100644 index b63595d4eb5cba0220718a85a94dc15d54c368d6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 124 zcmV-?0E7P@iwFQArIS$r1B>)=JEBk}oX#M?0749B)R`<#dOZ^C+{nqG?s~F>;eb6O z0|*E(K!5|3u>mR$rBl*!Ds^*{igb$&83qKv+$9hVrq~H6x75EKgW}JCY>31L8=~~L en4sxrSOL{Pohbc97U=p11^@uT3_t?_0ssI^hB2uC diff --git a/thirdparty/grub-2.04/tests/dfly-mbr-mbexample.mbr.img.gz b/thirdparty/grub-2.04/tests/dfly-mbr-mbexample.mbr.img.gz deleted file mode 100644 index add2b13379c8b7eacd7d789ee35d56448154ce3c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 41 xcmb2|=3v;qWO5(_b8-ShBb%FB+tP1bhqxTRHUH#MX}%E35HC~Z;K9Ja001k14aooi diff --git a/thirdparty/grub-2.04/tests/ehci_test.in b/thirdparty/grub-2.04/tests/ehci_test.in deleted file mode 100644 index b197f8cdc..000000000 --- a/thirdparty/grub-2.04/tests/ehci_test.in +++ /dev/null @@ -1,51 +0,0 @@ -#! @BUILD_SHEBANG@ -# Copyright (C) 2013 Free Software Foundation, Inc. -# -# GRUB is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# GRUB is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with GRUB. If not, see . - -set -e -grubshell=@builddir@/grub-shell - -. "@builddir@/grub-core/modinfo.sh" - -case "${grub_modinfo_target_cpu}-${grub_modinfo_platform}" in - # PLATFORM: Don't mess with real devices when OS is active - *-emu) - exit 0;; - # FIXME: qemu gets bonito DMA wrong - mipsel-loongson) - exit 0;; - # PLATFORM: no USB on ARC and qemu-mips platforms - mips*-arc | mips*-qemu_mips) - exit 0;; - # FIXME: No native drivers are available for those - powerpc-ieee1275 | sparc64-ieee1275 | arm*-efi) - exit 0;; -esac - -imgfile="`mktemp "${TMPDIR:-/tmp}/tmp.XXXXXXXXXX"`" || exit 1 -outfile="`mktemp "${TMPDIR:-/tmp}/tmp.XXXXXXXXXX"`" || exit 1 - -echo "hello" > "$outfile" - -tar cf "$imgfile" "$outfile" - -if [ "$(echo "nativedisk; source '(usb0)/$outfile';" | "${grubshell}" --qemu-opts="-device ich9-usb-ehci1 -drive id=my_usb_disk,file=$imgfile,if=none -device usb-storage,drive=my_usb_disk" | tail -n 1)" != "Hello World" ]; then - rm "$imgfile" - rm "$outfile" - exit 1 -fi - -rm "$imgfile" -rm "$outfile" diff --git a/thirdparty/grub-2.04/tests/example_grub_script_test.in b/thirdparty/grub-2.04/tests/example_grub_script_test.in deleted file mode 100644 index 93a90a18e..000000000 --- a/thirdparty/grub-2.04/tests/example_grub_script_test.in +++ /dev/null @@ -1,3 +0,0 @@ -#! @builddir@/grub-shell-tester --modules=echo - -echo "hello world" diff --git a/thirdparty/grub-2.04/tests/example_scripted_test.in b/thirdparty/grub-2.04/tests/example_scripted_test.in deleted file mode 100644 index 783b7f138..000000000 --- a/thirdparty/grub-2.04/tests/example_scripted_test.in +++ /dev/null @@ -1,4 +0,0 @@ -#!@BUILD_SHEBANG@ -set -e - -true diff --git a/thirdparty/grub-2.04/tests/example_unit_test.c b/thirdparty/grub-2.04/tests/example_unit_test.c deleted file mode 100644 index 36bfac970..000000000 --- a/thirdparty/grub-2.04/tests/example_unit_test.c +++ /dev/null @@ -1,38 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2010 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -/* Unit tests are normal programs, so they can include C library. */ -#include - -/* All tests need to include test.h for GRUB testing framework. */ -#include - -/* Unit test main method. */ -static void -example_test (void) -{ - /* Check if 1st argument is true and report with default error message. */ - grub_test_assert (1 == 1, "1 equal 1 expected"); - - /* Check if 1st argument is true and report with custom error message. */ - grub_test_assert (2 == 2, "2 equal 2 expected"); - grub_test_assert (2 != 3, "2 matches %d", 3); -} - -/* Register example_test method as a unit test. */ -GRUB_UNIT_TEST ("example_unit_test", example_test); diff --git a/thirdparty/grub-2.04/tests/exfat_test.in b/thirdparty/grub-2.04/tests/exfat_test.in deleted file mode 100644 index cd3cd4cb2..000000000 --- a/thirdparty/grub-2.04/tests/exfat_test.in +++ /dev/null @@ -1,18 +0,0 @@ -#!@BUILD_SHEBANG@ - -set -e - -if [ "x$EUID" = "x" ] ; then - EUID=`id -u` -fi - -if [ "$EUID" != 0 ] ; then - exit 77 -fi - -if ! which mkfs.exfat >/dev/null 2>&1; then - echo "mkfs.exfat not installed; cannot test exFAT." - exit 77 -fi - -"@builddir@/grub-fs-tester" exfat diff --git a/thirdparty/grub-2.04/tests/ext234_test.in b/thirdparty/grub-2.04/tests/ext234_test.in deleted file mode 100644 index 4f1eb527e..000000000 --- a/thirdparty/grub-2.04/tests/ext234_test.in +++ /dev/null @@ -1,33 +0,0 @@ -#!@BUILD_SHEBANG@ - -set -e - -if [ "x$EUID" = "x" ] ; then - EUID=`id -u` -fi - -if [ "$EUID" != 0 ] ; then - exit 77 -fi - -if ! which mkfs.ext2 >/dev/null 2>&1; then - echo "mkfs.ext2 not installed; cannot test ext2." - exit 77 -fi - -if ! which mkfs.ext3 >/dev/null 2>&1; then - echo "mkfs.ext3 not installed; cannot test ext3." - exit 77 -fi - -if ! which mkfs.ext4 >/dev/null 2>&1; then - echo "mkfs.ext4 not installed; cannot test ext4." - exit 77 -fi - -"@builddir@/grub-fs-tester" ext2_old -"@builddir@/grub-fs-tester" ext2 -"@builddir@/grub-fs-tester" ext3 -"@builddir@/grub-fs-tester" ext4 -"@builddir@/grub-fs-tester" ext4_metabg -"@builddir@/grub-fs-tester" ext4_encrypt diff --git a/thirdparty/grub-2.04/tests/f2fs_test.in b/thirdparty/grub-2.04/tests/f2fs_test.in deleted file mode 100644 index 1ea77c826..000000000 --- a/thirdparty/grub-2.04/tests/f2fs_test.in +++ /dev/null @@ -1,19 +0,0 @@ -#!/bin/sh - -set -e - -if [ "x$EUID" = "x" ] ; then - EUID=`id -u` -fi - -if [ "$EUID" != 0 ] ; then - exit 77 -fi - -if ! which mkfs.f2fs >/dev/null 2>&1; then - echo "mkfs.f2fs not installed; cannot test f2fs." - exit 77 -fi - - -"@builddir@/grub-fs-tester" f2fs diff --git a/thirdparty/grub-2.04/tests/fat_test.in b/thirdparty/grub-2.04/tests/fat_test.in deleted file mode 100644 index b6b4748ca..000000000 --- a/thirdparty/grub-2.04/tests/fat_test.in +++ /dev/null @@ -1,22 +0,0 @@ -#!@BUILD_SHEBANG@ - -set -e - -if [ "x$EUID" = "x" ] ; then - EUID=`id -u` -fi - -if [ "$EUID" != 0 ] ; then - exit 77 -fi - -if ! which mkfs.vfat >/dev/null 2>&1; then - echo "mkfs.vfat not installed; cannot test FAT." - exit 77 -fi - -"@builddir@/grub-fs-tester" vfat16a -"@builddir@/grub-fs-tester" vfat12a -"@builddir@/grub-fs-tester" vfat12 -"@builddir@/grub-fs-tester" vfat16 -"@builddir@/grub-fs-tester" vfat32 diff --git a/thirdparty/grub-2.04/tests/fddboot_test.in b/thirdparty/grub-2.04/tests/fddboot_test.in deleted file mode 100644 index 2d7dfc889..000000000 --- a/thirdparty/grub-2.04/tests/fddboot_test.in +++ /dev/null @@ -1,51 +0,0 @@ -#! @BUILD_SHEBANG@ -# Copyright (C) 2013 Free Software Foundation, Inc. -# -# GRUB is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# GRUB is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with GRUB. If not, see . - -set -e -grubshell=@builddir@/grub-shell - -. "@builddir@/grub-core/modinfo.sh" - -case "${grub_modinfo_target_cpu}-${grub_modinfo_platform}" in - # PLATFORM: emu is different - *-emu) - exit 0;; - # PLATFORM: Flash targets - i386-qemu | i386-coreboot | mips-qemu_mips | mipsel-qemu_mips) - exit 0;; - # FIXME: currently grub-shell uses only -kernel for loongson - mipsel-loongson) - exit 0;; - # FIXME: We don't support EFI floppy boot in grub-mkrescue - *-efi) - exit 0;; - # FIXME: no floppy support - i386-multiboot) - exit 0;; - # FIXME: QEMU firmware crashes when trying to boot from floppy - sparc64-ieee1275) - exit 0;; - # FIXME: QEMU doesn't emulate SCSI floppies - mipsel-arc | mips-arc) - exit 0;; - # PLATFORM: powerpc doesn't boot from floppy except OldWorld Macs which we don't support anyway - powerpc-ieee1275) - exit 0;; -esac - -if [ "$(echo hello | "${grubshell}" --boot=fd --mkrescue-arg="--compress=xz --fonts= --locales= --themes= -no-pad")" != "Hello World" ]; then - exit 1 -fi diff --git a/thirdparty/grub-2.04/tests/file_filter/file b/thirdparty/grub-2.04/tests/file_filter/file deleted file mode 100644 index 64650ac58..000000000 --- a/thirdparty/grub-2.04/tests/file_filter/file +++ /dev/null @@ -1 +0,0 @@ -Hello, user! diff --git a/thirdparty/grub-2.04/tests/file_filter/file.gz b/thirdparty/grub-2.04/tests/file_filter/file.gz deleted file mode 100644 index a07ffcbe0cbad415ea51ec72bbe7b54094284d3d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 33 pcmb2|=3qFtrZI$p`LoB_lP9kSYUuju20dY7FxvO)Cocm70|4R_48H&X diff --git a/thirdparty/grub-2.04/tests/file_filter/file.gz.sig b/thirdparty/grub-2.04/tests/file_filter/file.gz.sig deleted file mode 100644 index 602e6187e22d7fc288a52ac572f38cc1066083cb..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 96 zcmV-m0H6PeUIYLU2ml5J0#t#n2LK8Q5M~MT@8nv<3h9^t|7f?gmaE1LNh!Sm;mO#P zdLo*tTpkl+s!TB^f%Fh1{Q&^Tlz2`!Q4Giq Ct|zAe diff --git a/thirdparty/grub-2.04/tests/file_filter/file.lzop b/thirdparty/grub-2.04/tests/file_filter/file.lzop deleted file mode 100644 index 5f5a97171821de55168fcbdc9b1b335316d295b9..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 67 zcmeD5iSlRQ<&xqOFi>dVbYNsjC(Bu@f@NKNp%ec7JvFb-Lz3O)* CVl0pV diff --git a/thirdparty/grub-2.04/tests/file_filter/file.xz b/thirdparty/grub-2.04/tests/file_filter/file.xz deleted file mode 100644 index 151a98029033dd0947d54f8ddad670da85a45185..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 72 zcmexsUKJ6=z`*kC+7>q^21Q0O1_p)_{ill=8F)NWb8_-^6iSOzixjzl!VG^@7(cF= Z)UCz9sLER?d1RaXw$HVUAPJVpC;$*f6z~85 diff --git a/thirdparty/grub-2.04/tests/file_filter/file.xz.sig b/thirdparty/grub-2.04/tests/file_filter/file.xz.sig deleted file mode 100644 index 57569242e4742cdfb929307ec19440cf91f49e9a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 96 zcmV-m0H6PeUIYLU2ml5J0#t#n3jhiU5M~MT@8nv<3OS$v{x;4Uj6+!wt^-rP*&N$| z+5zKQ7vOO`?M~+y=au4FasdGNRgV;Q;4TNc&v05)-JLjLl54~a(Q}0wbmOZ2ne0%w Ci77V# diff --git a/thirdparty/grub-2.04/tests/file_filter/keys b/thirdparty/grub-2.04/tests/file_filter/keys deleted file mode 100644 index 1afa71382364060d08bb0c28e36a1ff98d585fe8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 994 zcmV<810DRC11@ew%2nM8awI88}g~WvBj*BJPpr^(@>)pd~ex-<$MMPxbNPGZV|BH zWj8IQR4B@uXKc3uaPJ1=^^Zq^DT zGR)3)y_E}*oM=>(9mHp}SKbH+oTA=g$}Y_>Yo72Jn4N$d^(*k!0WN3*`c`xB4p;&y zxUni$jurte*DGtmax;-CBK;ReR-(#??6SOFAtnGFD6+^8CX~5LD{yPt|2mUMt zwJE)m>0ZFNaB_Tkn{@&~ymmqz6=oI&zK^|yp26yNF-zSkq2MW>GyFClY9q{@=2rys zhJs5IhyReW6c9&Zrk@1~&dA`O!?SH6dN^nA@=cwz&`Ezpv7R;6gk|My_?I8#%?Z*v z0G=T3S|-k)ND-11n=+U)J=DUmZ`*NlWO1qRl1d|e3jZ@ioyPN?bxzIto0ltfBGhMj z*HF^AUdvgzSm>LzM75fVG>0caAHZcq9dkq@E1ccwLg7IkAD-Uj9eRWey-8OeDLZtP zFGWnyh(8GDLvyN?Wb=5U*>gB4;O4Q~QA&IhlL~dxCca=f>yhv4IlbS9*wP37G*l-7 z68Nu9XH0V?#8Mlr_|4bivnV+Xw zydOTU@TyjupFl11F8p`)R&210tm6Y4QE*AG%aIRbg##g$XGEjNV}o~RH4hXtsdF}8 zgc#a=4BiAs$WhG?LV$*t4U}ex(o2%HHKsbzt@0q@tiFkDvxZ4j5EO=^&d${9btru+ zAB}{L36Q;49P;3xdCKCi1x(1w?GNPIz7@+G3MU121``j|n!I&1(;|JmS_t_VuMTgP z(dkfWGS@ew%2nM8awI88}g~WvBj*BJPpr^(@>)pd~ex-<$MMPxbNPGZV|BH zWj8IQR4B@uXKc3uaPJ1=^^Zq^DT zGR)3)y_E}*oM=>(9mHp}SKbH+oTA=g$}Y_>Yo72Jn4N$d^(*k!0WN3*`c`xB4p;&y zxUni$jurte*DGtmax;-CBK;ReR-(#??6SOFAtnGFD6+^8CX~5LD{yPt|2mUMt zwJE)m>0ZFNaB_Tkn{@&~ymmqz6=oI&zK^|yp26yNF-zSkq2MW>GyFClY9q{@=2rys zhJs5IhyReW6c9&Zrk@1~&dA`O!?SH6dN^nA@=cwz&`Ezpv7R;6gk|My_?I8#%?Z*v z0G=T3S|-k)ND-11n=+U)J=DUmZ`*NlWO1qRl1d|e3jZ@ioyPN?bxzIto0ltfBGhMj z*HF^AUdvgzSm>LzM75fVG>0caAHZcq9dkq@E1ccwLg7IkAD-Uj9eRWey-8OeDLZtP zFGWnyh(8GDLvyN?Wb=5U*>gB4;O4Q~QA&IhlL~dxCca=f>yhv4IlbS9*wP37G*l-7 z68Nu9XH0V?#8Mlr_|4bivnV+Xw zydOTU@TyjupFl11F8p`)R&210tm6Y4QE*AG%aIRbg##g$XGEjNV}o~RH4hXtsdF}8 zgc#a=4BiAs$WhG?LV$*t4U}ex(o2%HHKsbzt@0q@tiFkDvxZ4j5EO=^&d${9btru+ zAB}{L36Q;49P;3xdCKCi1x(1w?GNPIz7@+G3MU121``j|n!I&1(;|JmS_t_VuMTgP z(dkfWGS. - -set -e -grubshell=@builddir@/grub-shell - -. "@builddir@/grub-core/modinfo.sh" - -filters="gzio xzio lzopio pgp" -modules="cat mpi" - -for mod in $(cut -d ' ' -f 2 "@builddir@/grub-core/crypto.lst" | sort -u); do - modules="$modules $mod" -done - -for file in file.gz file.xz file.lzop file.gz.sig file.xz.sig file.lzop.sig keys.pub; do - files="$files /$file=@srcdir@/tests/file_filter/$file" -done - -# GRUB cat command adds extra newline after file -result="Hello, user! - -Hello, user! - -Hello, user!" - -out="$("${grubshell}" --modules="$modules $filters" --files="$files" "@srcdir@/tests/file_filter/test.cfg")" -if [ "$out" != "$result" ]; then - echo LOCAL FAIL - echo "$out" - exit 1 -fi - -# Taken from netboot_test -case "${grub_modinfo_target_cpu}-${grub_modinfo_platform}" in - # PLATFORM: emu is different - *-emu) - exit 0;; - # PLATFORM: Flash targets - i386-qemu | i386-coreboot | mips-qemu_mips | mipsel-qemu_mips) - exit 0;; - # FIXME: currently grub-shell uses only -kernel for loongson - mipsel-loongson) - exit 0;; - # FIXME: no rtl8139 support - i386-multiboot) - exit 0;; - # FIXME: We don't fully support netboot on ARC - *-arc) - exit 0;; - # FIXME: Many QEMU firmware have no netboot capability - *-efi | i386-ieee1275 | powerpc-ieee1275 | sparc64-ieee1275) - exit 0;; -esac - -out="$("${grubshell}" --boot=net --modules="$modules $filters" --files="$files" "@srcdir@/tests/file_filter/test.cfg")" -if [ "$out" != "$result" ]; then - echo NET FAIL - echo "$out" - exit 1 -fi - -exit 0 diff --git a/thirdparty/grub-2.04/tests/gettext_strings_test.in b/thirdparty/grub-2.04/tests/gettext_strings_test.in deleted file mode 100644 index 813999ebe..000000000 --- a/thirdparty/grub-2.04/tests/gettext_strings_test.in +++ /dev/null @@ -1,20 +0,0 @@ -#!@BUILD_SHEBANG@ - -cd '@srcdir@' - -tdir="$(mktemp -d "${TMPDIR:-/tmp}/tmp.XXXXXXXXXX")" - -xgettext -f po/POTFILES.in -L C -o "$tdir/"skip.pot -x po/grub.pot --keyword=grub_util_info --keyword=grub_dprintf:1,2 --keyword=grub_register_command --keyword=grub_register_extcmd --keyword=grub_efiemu_resolve_symbol --keyword=grub_efiemu_register_symbol --keyword=grub_dl_load --keyword=grub_crypto_lookup_md_by_name --keyword=grub_crypto_lookup_cipher_by_name --keyword=grub_efiemu_resolve_symbol --keyword=alias --keyword=grub_ieee1275_get_property:2 --keyword=grub_ieee1275_find_device --keyword=grub_ieee1275_get_integer_property:2 --keyword=INIT_IEEE1275_COMMON:2 --keyword=grub_boot_time --keyword=grub_env_get --keyword=grub_env_set --keyword=grub_register_variable_hook --keyword=grub_fatal --keyword=__asm__ --keyword=volatile --keyword=__volatile__ --keyword=grub_error:2 --from-code=iso-8859-1 -xgettext -f po/POTFILES.in -L C -o "$tdir/"skip2.pot -x po/grub.pot --keyword=volatile:2 --keyword=__volatile__:2 --keyword=grub_dprintf:2 --from-code=iso-8859-1 -xgettext -f po/POTFILES.in -L C -o "$tdir/"skip3.pot -x po/grub.pot --keyword=volatile:3 --keyword=__volatile__:3 --from-code=iso-8859-1 - -cat po/POTFILES.in | xargs grep -hE -o "( | ){\"[a-z0-9\-]*\",[[:space:]]*('.'|[0-9]|-[0-9])," |sed "s,[[:space:]]*{\",,g;s,\"\,[[:space:]]*\('.'\|[0-9]\|-[0-9]\)\,,,g" | awk '{ print "msgid \"" $0 "\"\nmsgstr \"\"" ; }' > "$tdir/"opts.pot -cat po/POTFILES.in | xargs grep -hE -o "[[:space:]]*\.name[[:space:]]*=[[:space:]]*\"[a-zA-Z0-9 ()]*\"" |sed "s,[[:space:]]*\.name[[:space:]]*=[[:space:]]*\",,g;s,\",,g" | awk '{ print "msgid \"" $0 "\"\nmsgstr \"\"" ; }' > "$tdir/"name.pot - -out="$(cat po/POTFILES.in | grep -v '\(colors.c\|lsefisystab.c\|lsefimmap.c\|lssal.c\|hdparm.c\|sendkey.c\|lsacpi.c\|lspci.c\|usbtest.c\|legacy_parse.c\|/libgcrypt/\|hfs.c\|/efi\.c$\|gnulib\|tests/\|util/ieee1275/ofpath.c\|minilzo.c\|terminfo.c\|setpci.c\|bin2h.c\|cb_timestamps.c\|grub-pe2elf.c\|getroot_[a-z]*.c\|getroot.c\|arc/init.c\|color.c\|grub-mklayout.c\|gentrigtables.c\|lzodefs.h\|lsefi.c\|cbls.c\|/zfs\.h$\|grub-macho2img.c\|syslinux_parse.c\|lvm.c\|efidisk.c\|grub-mkfont.c\|reiserfs.c\|LzmaEnc.c\)' | xgettext -f - -L C -o - -x po/grub.pot -x "$tdir/"skip.pot -x "$tdir/"skip2.pot -x "$tdir/"skip3.pot -x "$tdir/"opts.pot -x "$tdir/"name.pot -x po/exclude.pot -a --from-code=iso-8859-1)" -rm -rf "$tdir" -if [ x"$out" != x ]; then - echo "$out" - exit 1; -fi - diff --git a/thirdparty/grub-2.04/tests/grub_cmd_date.in b/thirdparty/grub-2.04/tests/grub_cmd_date.in deleted file mode 100644 index f7c9ca004..000000000 --- a/thirdparty/grub-2.04/tests/grub_cmd_date.in +++ /dev/null @@ -1,29 +0,0 @@ -#! @BUILD_SHEBANG@ -set -e - -. "@builddir@/grub-core/modinfo.sh" - -# FIXME: OpenBIOS on sparc64 doesn't implement RTC -if [ "${grub_modinfo_target_cpu}-${grub_modinfo_platform}" = sparc64-ieee1275 ]; then - exit 0 -fi - -pdt="$(date -u +%s)" -dt=`echo date | @builddir@/grub-shell | sed 's, [A-Z][a-z]*$,,'` -dtg="$(date -u -d "$dt" +%s)" -ndt="$(date -u +%s)" - -if [ $pdt -gt $dtg ] || [ $dtg -gt $ndt ]; then - echo "Date not in range: $pdt <= $dtg <= $ndt" - exit 1 -fi - -pdt="$(date -u +%s)" -dt=`echo 'insmod datehook; echo $YEAR-$MONTH-$DAY $HOUR:$MINUTE:$SECOND' | @builddir@/grub-shell` -dtg="$(date -u -d "$dt" +%s)" -ndt="$(date -u +%s)" - -if [ $pdt -gt $dtg ] || [ $dtg -gt $ndt ]; then - echo "Date not in range: $pdt <= $dtg <= $ndt" - exit 1 -fi diff --git a/thirdparty/grub-2.04/tests/grub_cmd_echo.in b/thirdparty/grub-2.04/tests/grub_cmd_echo.in deleted file mode 100644 index 902696778..000000000 --- a/thirdparty/grub-2.04/tests/grub_cmd_echo.in +++ /dev/null @@ -1,41 +0,0 @@ -#! @builddir@/grub-shell-tester -# -# Copyright (C) 2010 Free Software Foundation, Inc. -# -# GRUB is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# GRUB is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with GRUB. If not, see . - -echo -echo -n - -echo foo -echo foo bar - -echo -n foo - -echo -e "foo\nbar" - -echo -n -e "foo\nbar" - -echo foo -n -echo foo -n -e - -echo ------- - -if test -n "$grubshell"; then insmod regexp; fi - -echo '*' -echo "*" - -foo="*" -echo "$foo" diff --git a/thirdparty/grub-2.04/tests/grub_cmd_regexp.in b/thirdparty/grub-2.04/tests/grub_cmd_regexp.in deleted file mode 100644 index 6520bd6d7..000000000 --- a/thirdparty/grub-2.04/tests/grub_cmd_regexp.in +++ /dev/null @@ -1,42 +0,0 @@ -#! @BUILD_SHEBANG@ -set -e - -# Run GRUB script in a Qemu instance -# Copyright (C) 2010 Free Software Foundation, Inc. -# -# GRUB is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# GRUB is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with GRUB. If not, see . - -cmd='regexp -s version "vm-(.*)" vm-1.2.3; echo $version' -v=`echo "$cmd" | @builddir@/grub-shell` -if test "$v" != 1.2.3; then echo "error: $cmd" >&2; exit 1; fi - -cmd='regexp -s 1:version "vm-(.*)" vm-1.2.3; echo $version' -v=`echo "$cmd" | @builddir@/grub-shell` -if test "$v" != 1.2.3; then echo "error: $cmd" >&2; exit 1; fi - -cmd='regexp -s 0:match "vm-(.*)" vm-1.2.3; echo $match' -v=`echo "$cmd" | @builddir@/grub-shell` -if test "$v" != vm-1.2.3; then echo "error: $cmd" >&2; exit 1; fi - -cmd='regexp -s 2:match "vm-(.*)" vm-1.2.3; echo $match' -v=`echo "$cmd" | @builddir@/grub-shell` -if test -n "$v"; then echo "error: $cmd" >&2; exit 1; fi - -cmd='regexp -s match "\\\((.*)\\\)" (hd0,msdos1); echo $match' -v=`echo "$cmd" | @builddir@/grub-shell` -if test "$v" != "hd0,msdos1"; then echo "error: $cmd" >&2; exit 1; fi - -cmd='regexp -s match "hd([0-9]+)" hd0; echo $match' -v=`echo "$cmd" | @builddir@/grub-shell` -if test "$v" != "0"; then echo "error: $cmd" >&2; exit 1; fi diff --git a/thirdparty/grub-2.04/tests/grub_cmd_set_date.in b/thirdparty/grub-2.04/tests/grub_cmd_set_date.in deleted file mode 100644 index aac120a6c..000000000 --- a/thirdparty/grub-2.04/tests/grub_cmd_set_date.in +++ /dev/null @@ -1,35 +0,0 @@ -#! @BUILD_SHEBANG@ -set -e - -. "@builddir@/grub-core/modinfo.sh" - -case "${grub_modinfo_target_cpu}-${grub_modinfo_platform}" in - # FIXME: OpenBIOS on sparc64 doesn't implement RTC - sparc64-ieee1275) - exit 0;; - # PLATFORM: ARC doesn't provide any way to set time - *-arc) - exit 0;; - # PLATFORM: EMU doesn't provide any way to set time - # Even if it did we'd need some kind of sandbox to avoid - # modifying real system time. - *-emu) - exit 0;; -esac - -out=$(cat <$non_empty <$outfile < /dev/null 2>&1; then - echo "GRUB test command file tests failed." - cat "$outfile" - exit 1 -else - rm -f "${outfile}" - exit 0 -fi diff --git a/thirdparty/grub-2.04/tests/grub_cmd_tr.in b/thirdparty/grub-2.04/tests/grub_cmd_tr.in deleted file mode 100644 index bed469c03..000000000 --- a/thirdparty/grub-2.04/tests/grub_cmd_tr.in +++ /dev/null @@ -1,62 +0,0 @@ -#! @BUILD_SHEBANG@ -e - -# Run GRUB script in a Qemu instance -# Copyright (C) 2010 Free Software Foundation, Inc. -# -# GRUB is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# GRUB is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with GRUB. If not, see . - -# -# Translating a string argument -# -cmd='tr 12345 abcde a1b2c3d4e5' -v=`echo "$cmd" | @builddir@/grub-shell` -if test "$v" != aabbccddee; then echo "error: $cmd [$v]" >&2; exit 1; fi - -cmd='tr -U abcdABCD' -v=`echo "$cmd" | @builddir@/grub-shell` -if test "$v" != ABCDABCD; then echo "error: $cmd [$v]" >&2; exit 1; fi - -cmd='tr -D ABCDabcd' -v=`echo "$cmd" | @builddir@/grub-shell` -if test "$v" != abcdabcd; then echo "error: $cmd [$v]" >&2; exit 1; fi - -# -# Translating a variable value -# -cmd='foo=12345678; tr -s foo 1234 abcd; echo $foo' -v=`echo "$cmd" | @builddir@/grub-shell` -if test "$v" != abcd5678; then echo "error: $cmd [$v]" >&2; exit 1; fi - -cmd='foo=abcdEFGH; tr -U -s foo; echo $foo' -v=`echo "$cmd" | @builddir@/grub-shell` -if test "$v" != ABCDEFGH; then echo "error: $cmd [$v]" >&2; exit 1; fi - -cmd='foo=abcdEFGH; tr -D -s foo; echo $foo' -v=`echo "$cmd" | @builddir@/grub-shell` -if test "$v" != abcdefgh; then echo "error: $cmd [$v]" >&2; exit 1; fi - -# -# Setting a variable from string argument -# -cmd='foo=12345678; tr -s foo 1234 abcd a1b2c3d4e5; echo $foo' -v=`echo "$cmd" | @builddir@/grub-shell` -if test "$v" != aabbccdde5; then echo "error: $cmd [$v]" >&2; exit 1; fi - -cmd='foo=abcdEFGH; tr -U -s foo xyz; echo $foo' -v=`echo "$cmd" | @builddir@/grub-shell` -if test "$v" != XYZ; then echo "error: $cmd [$v]" >&2; exit 1; fi - -cmd='foo=abcdEFGH; tr -D -s foo XYZ; echo $foo' -v=`echo "$cmd" | @builddir@/grub-shell` -if test "$v" != xyz; then echo "error: $cmd [$v]" >&2; exit 1; fi diff --git a/thirdparty/grub-2.04/tests/grub_func_test.in b/thirdparty/grub-2.04/tests/grub_func_test.in deleted file mode 100644 index c67f9e422..000000000 --- a/thirdparty/grub-2.04/tests/grub_func_test.in +++ /dev/null @@ -1,21 +0,0 @@ -#! @BUILD_SHEBANG@ -set -e - -. "@builddir@/grub-core/modinfo.sh" - -case "${grub_modinfo_target_cpu}-${grub_modinfo_platform}" in - # PLATFORM: Max RAM is 256M - mips-qemu_mips | mipsel-qemu_mips) - mem=256M;; - *) - mem=512M;; -esac - -# Increase memory as some of tests are high-resolution and need a lot of memory. -out=`echo all_functional_test | @builddir@/grub-shell --timeout=3600 --files="/boot/grub/fonts/unicode.pf2"="@builddir@/"unicode.pf2 --qemu-opts="-m $mem"` - -if [ "$(echo "$out" | tail -n 1)" != "ALL TESTS PASSED" ]; then - echo "Functional test failure: $out" - exit 1 -fi - diff --git a/thirdparty/grub-2.04/tests/grub_script_blanklines.in b/thirdparty/grub-2.04/tests/grub_script_blanklines.in deleted file mode 100644 index bd8735491..000000000 --- a/thirdparty/grub-2.04/tests/grub_script_blanklines.in +++ /dev/null @@ -1,15 +0,0 @@ -#! @BUILD_SHEBANG@ -set -e - -@builddir@/grub-script-check <. - -error_if_not () { - if test "$1" != "$2"; then - echo "[$1]" != "[$2]" - exit 1 - fi -} - -cmd='test_blockarg { true }' -v=`echo "$cmd" | @builddir@/grub-shell` -error_if_not "$v" '{ true }' - -tmp=`mktemp "${TMPDIR:-/tmp}/tmp.XXXXXXXXXX"` || exit 1 -cmd='test_blockarg { test_blockarg { true } }' -echo "$cmd" | @builddir@/grub-shell >$tmp -error_if_not "`head -n1 $tmp|tail -n1`" '{ test_blockarg { true } }' -error_if_not "`head -n2 $tmp|tail -n1`" '{ true }' - -cmd='test_blockarg { test_blockarg { test_blockarg { true } }; test_blockarg { true } }' -echo "$cmd" | @builddir@/grub-shell >$tmp -error_if_not "`head -n1 $tmp|tail -n1`" '{ test_blockarg { test_blockarg { true } }; test_blockarg { true } }' -error_if_not "`head -n2 $tmp|tail -n1`" '{ test_blockarg { true } }' -error_if_not "`head -n3 $tmp|tail -n1`" '{ true }' -error_if_not "`head -n4 $tmp|tail -n1`" '{ true }' diff --git a/thirdparty/grub-2.04/tests/grub_script_break.in b/thirdparty/grub-2.04/tests/grub_script_break.in deleted file mode 100644 index bf265e8b3..000000000 --- a/thirdparty/grub-2.04/tests/grub_script_break.in +++ /dev/null @@ -1,86 +0,0 @@ -#! @builddir@/grub-shell-tester -# -# Copyright (C) 2010 Free Software Foundation, Inc. -# -# GRUB is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# GRUB is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with GRUB. If not, see . - -# break without any arguments -for i in 1 2 3 4 5 6 7 8 9 10 -do - echo $i - if test "$i" = 5 - then - break - fi -done - -# break with one -for i in 1 2 3 4 5 6 7 8 9 10 -do - echo $i - if test "$i" = 5 - then - break 1 - fi -done - -# break with loop count -for i in 1 2 3 4 5 -do - for j in a b c d e f - do - echo "$i $j" - if test "$i" = 3 - then - if test "$j" = d - then - break 2 - fi - fi - done -done - -# break into middle loop -for i in 1 2 3 4 5 -do - for j in a b c d e f - do - echo "$i $j" - if test "$i" = 3 - then - if test "$j" = d - then - break 1 - fi - fi - done -done - -# while and until loops -a= -while test "$a" != "aaaaaaa" -do - a="a$a" - for i in 1 2 3 4 - do - b= - until test "$b" = "bbbbb" - do - b="b$b" - echo "$a $i $b" - if test "$i" = 3; then echo "break 2"; break 2; fi - done - done -done - diff --git a/thirdparty/grub-2.04/tests/grub_script_comments.in b/thirdparty/grub-2.04/tests/grub_script_comments.in deleted file mode 100644 index f212cc1e1..000000000 --- a/thirdparty/grub-2.04/tests/grub_script_comments.in +++ /dev/null @@ -1,28 +0,0 @@ -#! @builddir@/grub-shell-tester -# -# Copyright (C) 2010 Free Software Foundation, Inc. -# -# GRUB is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# GRUB is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with GRUB. If not, see . - -echo a###b -echo a# #b - -echo # -echo \# - -echo '#' -echo "#" - -echo '\#' -echo "\#" diff --git a/thirdparty/grub-2.04/tests/grub_script_continue.in b/thirdparty/grub-2.04/tests/grub_script_continue.in deleted file mode 100644 index 4c28ce404..000000000 --- a/thirdparty/grub-2.04/tests/grub_script_continue.in +++ /dev/null @@ -1,86 +0,0 @@ -#! @builddir@/grub-shell-tester -# -# Copyright (C) 2010 Free Software Foundation, Inc. -# -# GRUB is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# GRUB is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with GRUB. If not, see . - -# continue without any arguments -for i in 1 2 3 4 5 6 7 8 9 10 -do - if test "$i" = 5 - then - continue - fi - echo $i -done - -# continue with one -for i in 1 2 3 4 5 6 7 8 9 10 -do - if test "$i" = 5 - then - continue 1 - fi - echo $i -done - -# continue with loop count -for i in 1 2 3 4 5 -do - for j in a b c d e f - do - if test "$i" = 3 - then - if test "$j" = d - then - continue 2 - fi - echo "$i $j" - fi - done -done - -# continue into middle loop -for i in 1 2 3 4 5 -do - for j in a b c d e f - do - if test "$i" = 3 - then - if test "$j" = d - then - continue 1 - fi - echo "$i $j" - fi - done -done - -# while and until loops -a= -while test "$a" != "aaaaaaa" -do - a="a$a" - for i in 1 2 3 4 - do - b= - until test "$b" = "bbbbb" - do - b="b$b" - if test "$i" = 3; then echo "continue 2"; continue 2; fi - echo "$a $i $b" - done - done -done - diff --git a/thirdparty/grub-2.04/tests/grub_script_dollar.in b/thirdparty/grub-2.04/tests/grub_script_dollar.in deleted file mode 100644 index 392fe2e7a..000000000 --- a/thirdparty/grub-2.04/tests/grub_script_dollar.in +++ /dev/null @@ -1,6 +0,0 @@ -#! @BUILD_SHEBANG@ -set -e - -@builddir@/grub-script-check << EOF -echo "\\\$" -EOF diff --git a/thirdparty/grub-2.04/tests/grub_script_echo1.in b/thirdparty/grub-2.04/tests/grub_script_echo1.in deleted file mode 100644 index 3a07972a9..000000000 --- a/thirdparty/grub-2.04/tests/grub_script_echo1.in +++ /dev/null @@ -1,183 +0,0 @@ -#! @builddir@/grub-shell-tester - -# Run GRUB script in a Qemu instance -# Copyright (C) 2010 Free Software Foundation, Inc. -# -# GRUB is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# GRUB is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with GRUB. If not, see . - -# simple arguments -echo one two three -echo "one two three" -echo 'one two three' - echo "one two three" - echo "one two three" - echo "one two three" - -# empty arguments -echo a "" b -echo a '' b - -echo a $foo b -echo a ${foo} b - -echo a "$foo" b -echo a "${foo}" b - -# multi-part arguments -echo one"two"three -echo one${two}three -echo one"two"$three - -echo one'two'three -echo one${two}three -echo one'two'$three - -echo one'two'three"four"five${six}seven$eight - - -foo=bar -echo $foo ${foo} -echo "$foo" "${foo}" -echo '$foo' '${foo}' -echo a$foob a${foo}b -echo ab"cd"ef$foo'gh'ij${foo}kl\ mn\"op\'qr\$st\(uv\yz\) - -foo=c -bar=h -echo e"$foo"${bar}o -e"$foo"${bar}o hello world - -foo=echo -$foo 1234 - -echo "one -" -echo "one -\"" -echo "one -two" - -echo one"two -"three -echo one"two -\""three -echo one"two -\"three\" -four" - - -echo 'one -' -echo 'one -\' -echo 'one -two' -echo one'two -' -echo one'two -\' -echo one'two -\'three - -echo "one\ -" -echo "one\ -\"" -echo "one\ -two" - -# echo "one\ -# two" -# echo 'one\ -# two' -# echo foo\ -# bar -# \ -# echo foo -# echo "one -# -# two" - -echo "one - " -echo "one - \"" -echo "one - two" - -echo one"two - "three -echo one"two - \""three -echo one"two -\"three\" - four" - -echo 'one - ' -echo 'one - \' -echo 'one - two' -echo one'two - ' -echo one'two - \' -echo one'two - \'three - -echo "one\ - " -echo "one\ - \"" -echo "one\ - two" - -echo one \ - two - -echo one x\ - two - -echo one x\ -"x" two -echo one x\ -'x' two -echo one x\ -\\ two - -echo one x\ -\ -x - -echo one x\ - - - -echo one x\ -; - -echo one x\ -$var - - -if test x$grubshell = xyes; then insmod regexp; fi -echo /boot/grub/i386-pc/normal.mod -echo x\\y -echo x\*y -echo x\\ -echo x\\\\ -echo x\\\\y - - diff --git a/thirdparty/grub-2.04/tests/grub_script_echo_keywords.in b/thirdparty/grub-2.04/tests/grub_script_echo_keywords.in deleted file mode 100644 index a6383f0e2..000000000 --- a/thirdparty/grub-2.04/tests/grub_script_echo_keywords.in +++ /dev/null @@ -1,3 +0,0 @@ -#! @builddir@/grub-shell-tester - -echo if then else fi for do done diff --git a/thirdparty/grub-2.04/tests/grub_script_escape_comma.in b/thirdparty/grub-2.04/tests/grub_script_escape_comma.in deleted file mode 100644 index eff317920..000000000 --- a/thirdparty/grub-2.04/tests/grub_script_escape_comma.in +++ /dev/null @@ -1,18 +0,0 @@ -#! @builddir@/grub-shell-tester - -x=1\\,1 -echo $x -y='$' -echo $y -z='\' -echo $z -t='\*' -echo $t -u='$' -echo $u -v='\?' -echo $v - - -echo \\ - diff --git a/thirdparty/grub-2.04/tests/grub_script_eval.in b/thirdparty/grub-2.04/tests/grub_script_eval.in deleted file mode 100644 index c97b78d77..000000000 --- a/thirdparty/grub-2.04/tests/grub_script_eval.in +++ /dev/null @@ -1,6 +0,0 @@ -#! @builddir@/grub-shell-tester - -eval echo "Hello world" -valname=tst -eval $valname=hi -echo $tst \ No newline at end of file diff --git a/thirdparty/grub-2.04/tests/grub_script_expansion.in b/thirdparty/grub-2.04/tests/grub_script_expansion.in deleted file mode 100644 index 9d0dcdd29..000000000 --- a/thirdparty/grub-2.04/tests/grub_script_expansion.in +++ /dev/null @@ -1,43 +0,0 @@ -#! @BUILD_SHEBANG@ -set -e - -# Run GRUB script in a Qemu instance -# Copyright (C) 2010 Free Software Foundation, Inc. -# -# GRUB is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# GRUB is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with GRUB. If not, see . - -disks=`echo ls | @builddir@/grub-shell| grep -av '^Network protocols:$'| grep -av '^tftp http $'` -other=`echo insmod regexp\; echo \* | @builddir@/grub-shell` -for d in $disks; do - if echo "$d" |grep ',' >/dev/null; then - if echo "$other" | grep -F -- "$d" >/dev/null; then - echo "$d should not occur in * expansion" >&2 - exit 1 - fi - else - if ! echo "$other" | grep -F -- "$d" >/dev/null; then - echo "$d missing from * expansion" >&2 - exit 1 - fi - fi -done - -other=`echo insmod regexp\; echo '(*)' | @builddir@/grub-shell` -for d in $disks; do - if ! echo "$other" | grep -F -- "$d" >/dev/null; then - echo "$d missing from (*) expansion" >&2 - exit 1 - fi -done - diff --git a/thirdparty/grub-2.04/tests/grub_script_final_semicolon.in b/thirdparty/grub-2.04/tests/grub_script_final_semicolon.in deleted file mode 100644 index f17a9bf95..000000000 --- a/thirdparty/grub-2.04/tests/grub_script_final_semicolon.in +++ /dev/null @@ -1,11 +0,0 @@ -#! @BUILD_SHEBANG@ -set -e - -@builddir@/grub-script-check <. - -echo parameter count -function fcount { - echo fcount "$#" -} - -fcount -fcount a -fcount a b - -echo parameter count, with nesting -function ffcount { - echo ffcount "$#" - fcount - fcount a - fcount a b -} - -ffcount -ffcount 1 -ffcount 1 2 - -echo parameters -function fparam { - echo fparam 1 $1 - echo fparam 2 $2 - echo fparam 3 $3 -} - -fparam -fparam a -fparam a b - -echo parameters, with nesting -function ffparam { - echo ffparam 1 $1 - echo ffparam 2 $2 - echo ffparam 3 $3 - fparam - fparam a - fparam a b -} - -ffparam -ffparam 1 -ffparam 1 2 - -echo parameter expansion with specials -function fstar { - for f in $* - do - echo fstar $f - done - - for f in aaa$*bbb - do - echo fstar $f - done -} - -fstar -fstar a -fstar a "1 2" -fstar a "1 2" b - -function fdqstar { - for f in "$*" - do - echo fdqstar $f - done - - for f in aaa"$*"bbb - do - echo fdqstar $f - done - - for f in "aaa$*bbb" - do - echo fdqstar $f - done -} - -fdqstar -fdqstar a -fdqstar a "1 2" -fdqstar a "1 2" b - -function fat { - for f in $@ - do - echo fat $f - done - - for f in aaa$@bbb - do - echo fat $f - done -} - -fat -fat a -fat a "1 2" -fat a "1 2" b -fat a "1 2" b "c d" -fat a "1 2" b "c d" e - -function fdqat { - for f in "$@" - do - echo fdqat $f - done - - for f in aaa"$@"bbb - do - echo fdqat $f - done - - for f in "aaa$@bbb" - do - echo fdqat $f - done -} - -# fdqat # this case needs special handling, lets ignore till we really need it. -fdqat a -fdqat a "1 2" -fdqat a "1 2" b -fdqat a "1 2" b "c d" -fdqat a "1 2" b "c d" e - diff --git a/thirdparty/grub-2.04/tests/grub_script_gettext.in b/thirdparty/grub-2.04/tests/grub_script_gettext.in deleted file mode 100644 index cc42c6751..000000000 --- a/thirdparty/grub-2.04/tests/grub_script_gettext.in +++ /dev/null @@ -1,69 +0,0 @@ -#! @builddir@/grub-shell-tester -# -# Copyright (C) 2010,2012 Free Software Foundation, Inc. -# -# GRUB is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# GRUB is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with GRUB. If not, see . - -echo $"foo" -echo $"foo bar" - -echo -n $"foo" - -echo -e $"foo\nbar" - -echo -n -e $"foo\nbar" - -x=5 -echo $"$x" -echo $"\x\\y\$x$x\\$xx${x}x\"$x\"" - -echo $"$" -echo $"$,x" - -echo $"one -" -echo $"one -\"" -echo $"one -two" - -echo one$"two -"three -echo one$"two -\""three -echo one$"two -\"three\" -four" - -echo $"one\ -" -echo $"one\ -\"" -echo $"one\ -two" - -echo one$"two\ -"three -echo one$"two\ -\""three -echo one$"two\ -\"three\"\ -four" - -if test -n "$grubshell"; then insmod regexp; fi - -echo $"*" - -foo="*" -echo $"$foo" diff --git a/thirdparty/grub-2.04/tests/grub_script_if.in b/thirdparty/grub-2.04/tests/grub_script_if.in deleted file mode 100644 index fb17eaf70..000000000 --- a/thirdparty/grub-2.04/tests/grub_script_if.in +++ /dev/null @@ -1,31 +0,0 @@ -#! @builddir@/grub-shell-tester - -#basic if, execute -if true; then echo yes; fi - -#basic if, no execution -if false; then echo no; fi - -#if else, execute if path -if true; then echo yes; else echo no; fi - -#if else, execute else path -if false; then echo no; else echo yes; fi - -#if elif, execute elif -if false; then echo no; elif true; then echo yes; fi - -#if elif else, execute else -if false; then echo no; elif false; then echo no; else echo yes; fi - -#if elif(1) elif(2), execute elif(2) -if false; then echo no; elif false; then echo no; elif true; then echo yes; fi - -#if elif(1) elif(2) else, execute else -if false; then echo no; elif false; then echo no; elif false; then echo no; else echo yes; fi - -#if {if elif else}, execute elif -if true; then if false; then echo no; elif true; then echo yes; else echo no; fi; fi - -#if {if elif} else, execute elif. ofcourse no dangling-else problem due to "fi" -if true; then if false; then echo no; elif true; then echo yes; fi; else echo no; fi diff --git a/thirdparty/grub-2.04/tests/grub_script_leading_whitespace.in b/thirdparty/grub-2.04/tests/grub_script_leading_whitespace.in deleted file mode 100644 index d5946ba40..000000000 --- a/thirdparty/grub-2.04/tests/grub_script_leading_whitespace.in +++ /dev/null @@ -1,4 +0,0 @@ -#! @builddir@/grub-shell-tester - -list=" 1 2 3" -echo $list diff --git a/thirdparty/grub-2.04/tests/grub_script_no_commands.in b/thirdparty/grub-2.04/tests/grub_script_no_commands.in deleted file mode 100644 index 996bb1810..000000000 --- a/thirdparty/grub-2.04/tests/grub_script_no_commands.in +++ /dev/null @@ -1,21 +0,0 @@ -#! @BUILD_SHEBANG@ -set -e - -# grub-script-check refuses to pass a file with no commands; this usually -# indicates a bug in the code generating that file. - -@builddir@/grub-script-check <. - -true -echo $? - -! true -echo $? - -false -echo $? - -! false -echo $? - -# -# Negated forms (copied from grub_script_if.in) -# - -#basic if, execute -if ! true; then echo yes; fi - -#basic if, no execution -if ! false; then echo no; fi - -#if else, execute if path -if ! true; then echo yes; else echo no; fi - -#if else, execute else path -if ! false; then echo no; else echo yes; fi - -#if elif, execute elif -if ! false; then echo no; elif ! true; then echo yes; fi - -#if elif else, execute else -if ! false; then echo no; elif ! false; then echo no; else echo yes; fi - -#if elif(1) elif(2), execute elif(2) -if false; then echo no; elif ! false; then echo no; elif ! true; then echo yes; fi - -#if elif(1) elif(2) else, execute else -if false; then echo no; elif false; then echo no; elif ! false; then echo no; else echo yes; fi - -#if {if elif else}, execute elif -if true; then if false; then echo no; elif ! true; then echo yes; else echo no; fi; fi - -#if {if elif} else, execute elif. ofcourse no dangling-else problem due to "fi" -if true; then if ! false; then echo no; elif true; then echo yes; fi; else echo no; fi diff --git a/thirdparty/grub-2.04/tests/grub_script_return.in b/thirdparty/grub-2.04/tests/grub_script_return.in deleted file mode 100644 index 712d1dfcf..000000000 --- a/thirdparty/grub-2.04/tests/grub_script_return.in +++ /dev/null @@ -1,134 +0,0 @@ -#! @builddir@/grub-shell-tester - -# Run GRUB script in a Qemu instance -# Copyright (C) 2010 Free Software Foundation, Inc. -# -# GRUB is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# GRUB is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with GRUB. If not, see . - -function f1 { - return - echo one -} -f1 - -function f2 { - true - return - echo one -} -if f2; then echo true; else echo false; fi - -function f3 { - false - return - echo one -} -if f3; then echo true; else echo false; fi - -function f4 { - true - return 1; - echo one -} -if f4; then echo true; else echo false; fi - -function f5 { - false - return 0; - echo one -} -if f5; then echo true; else echo false; fi - -function f6 { - echo one - if true; then - echo two - return 0 - else - echo three - return 1 - fi - echo four -} -if f6; then echo true; else echo false; fi - -function f7 { - if return 1; then - echo one - else - echo no - fi -} -if f7; then echo true; else echo false; fi - -function f8 { - echo one - for v in 1 2 3 4 5; do - echo $v - if test $v = 3; then return 1; fi - done - echo two -} -if f8; then echo true; else echo false; fi - -function f9 { - x=1 - echo one - until test x = 11111111; do - echo $x - x="1$x" - if test $x = 1111; then return 0; fi - done - echo two -} -if f9; then echo true; else echo false; fi - -function f10 { - echo one - while return 0; do - echo two - done - echo three -} -if f10; then echo true; else echo false; fi - -function f11 { - f1 - f2 - f3 - f4 - f5 - f6 - f7 - f8 - f9 - f10 -} -if f11; then echo true; else echo false; fi - -function f12 { - echo one - f11 - return 1 - echo two -} -if f12; then echo true; else echo false; fi - -function f13 { - echo one - f12 - echo two - return 0 -} -if f13; then echo true; else echo false; fi diff --git a/thirdparty/grub-2.04/tests/grub_script_setparams.in b/thirdparty/grub-2.04/tests/grub_script_setparams.in deleted file mode 100644 index 82d316813..000000000 --- a/thirdparty/grub-2.04/tests/grub_script_setparams.in +++ /dev/null @@ -1,59 +0,0 @@ -#! @builddir@/grub-shell-tester - -# Run GRUB script in a Qemu instance -# Copyright (C) 2010 Free Software Foundation, Inc. -# -# GRUB is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# GRUB is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with GRUB. If not, see . - -if test x$grubshell = xyes; then cmd=setparams; else cmd=set; fi - -function f1 { - echo $# - echo "$#" - - echo $@ - echo "$@" - - echo $* - echo "$*" - - echo $1 $2 - for v in "$@"; do echo $v; done - shift - echo $1 $2 - for v in "$@"; do echo $v; done - - $cmd 1 2 3 4 - - echo $# - echo "$#" - - echo $@ - echo "$@" - - echo $* - echo "$*" - - echo $1 $2 - for v in "$@"; do echo $v; done - shift - echo $1 $2 - for v in "$@"; do echo $v; done -} -# f1 -# f1 a -f1 a b -f1 a b c -f1 a b c d -f1 a b c d e diff --git a/thirdparty/grub-2.04/tests/grub_script_shift.in b/thirdparty/grub-2.04/tests/grub_script_shift.in deleted file mode 100644 index 785b9c396..000000000 --- a/thirdparty/grub-2.04/tests/grub_script_shift.in +++ /dev/null @@ -1,85 +0,0 @@ -#! @builddir@/grub-shell-tester - -# Run GRUB script in a Qemu instance -# Copyright (C) 2010 Free Software Foundation, Inc. -# -# GRUB is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# GRUB is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with GRUB. If not, see . - -function f1 { - echo f1 '$@' $@ - echo f1 '$*' $* - echo f1 $# $1 $2 $3 - shift - echo f1 '$@' $@ - echo f1 '$*' $* - echo f1 $# $1 $2 $3 -} - -f1 -f1 a -f1 a b -f1 a b c -f1 a b c d -f1 a b c d e - -function f2 { - echo f1 '$@' $@ - echo f1 '$*' $* - echo f2 $# $1 $2 $3 - shift 1 - echo f1 '$@' $@ - echo f1 '$*' $* - echo f2 $# $1 $2 $3 -} - -f2 -f2 a -f2 a b -f2 a b c -f2 a b c d -f2 a b c d e - -function f3 { - echo f1 '$@' $@ - echo f1 '$*' $* - echo f3 $# $1 $2 $3 - shift 3 - echo f1 '$@' $@ - echo f1 '$*' $* - echo f3 $# $1 $2 $3 -} - -f3 -f3 a -f3 a b -f3 a b c -f3 a b c d -f3 a b c d e - -function f4 { - echo f1 '$@' $@ - echo f1 '$*' $* - echo f4 $# $1 $2 $3 - shift 100 - echo f1 '$@' $@ - echo f1 '$*' $* - echo f4 $# $1 $2 $3 -} - -f4 -f4 a -f4 a b -f4 a b c -f4 a b c d -f4 a b c d e diff --git a/thirdparty/grub-2.04/tests/grub_script_strcmp.in b/thirdparty/grub-2.04/tests/grub_script_strcmp.in deleted file mode 100644 index 721549ced..000000000 --- a/thirdparty/grub-2.04/tests/grub_script_strcmp.in +++ /dev/null @@ -1,22 +0,0 @@ -#! @builddir@/grub-shell-tester -# -# Copyright (C) 2012 Free Software Foundation, Inc. -# -# GRUB is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# GRUB is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with GRUB. If not, see . - -LC_ALL=C -export LC_ALL - -if [ "z" "<" "â" ]; then echo unsigned; else echo signed; fi -if [ "z" ">" "â" ]; then echo signed; else echo unsigned; fi diff --git a/thirdparty/grub-2.04/tests/grub_script_test.in b/thirdparty/grub-2.04/tests/grub_script_test.in deleted file mode 100644 index 34a5f141d..000000000 --- a/thirdparty/grub-2.04/tests/grub_script_test.in +++ /dev/null @@ -1,15 +0,0 @@ -#! @builddir@/grub-shell-tester - -for device in 'hd0' 'fd0'; do - # But search them if their search has been inforced - set fd0search="no" - if [ "$device" != "fd0" -a "$device" != "cd" \ - -o \ - "$device" = "fd0" -a "$fd0search" = "yes" ]\ - ; then - echo "Yes" - else - echo "No" - fi - -done \ No newline at end of file diff --git a/thirdparty/grub-2.04/tests/grub_script_vars1.in b/thirdparty/grub-2.04/tests/grub_script_vars1.in deleted file mode 100644 index 77b3cf298..000000000 --- a/thirdparty/grub-2.04/tests/grub_script_vars1.in +++ /dev/null @@ -1,34 +0,0 @@ -#! @builddir@/grub-shell-tester - -# Run GRUB script in a Qemu instance -# Copyright (C) 2010 Free Software Foundation, Inc. -# -# GRUB is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# GRUB is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with GRUB. If not, see . - -var=foo -echo $var -echo "$var" -echo ${var} -echo "${var}" - -echo $1 $2 $? - -foo=foo -echo "" $foo - -echo $bar $foo - -bar="" -echo $bar $foo - diff --git a/thirdparty/grub-2.04/tests/grub_script_while1.in b/thirdparty/grub-2.04/tests/grub_script_while1.in deleted file mode 100644 index 554247f76..000000000 --- a/thirdparty/grub-2.04/tests/grub_script_while1.in +++ /dev/null @@ -1,32 +0,0 @@ -#! @builddir@/grub-shell-tester - -echo one -foo="" -while test "$foo" != "1111"; do foo="${foo}1"; echo "$foo"; done - -echo two -foo="" -while test "$foo" != "aaaa" -do - foo="${foo}a" - echo $foo -done - -foo="" -until test "$foo" = "1111"; do foo="${foo}1"; echo $foo; done -foo="" -until test "$foo" = "aaaa" -do - foo="${foo}a" - echo $foo -done - -# check "$?" in condition gets its value from while body commands -foo="" -false -while test "$?" != "0" -do - echo $foo - foo="${foo}1" - test "$foo" = "111111" -done diff --git a/thirdparty/grub-2.04/tests/gzcompress_test.in b/thirdparty/grub-2.04/tests/gzcompress_test.in deleted file mode 100644 index 42c8fe7c4..000000000 --- a/thirdparty/grub-2.04/tests/gzcompress_test.in +++ /dev/null @@ -1,29 +0,0 @@ -#! @BUILD_SHEBANG@ -# Copyright (C) 2013 Free Software Foundation, Inc. -# -# GRUB is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# GRUB is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with GRUB. If not, see . - -set -e -grubshell=@builddir@/grub-shell - -. "@builddir@/grub-core/modinfo.sh" - -if ! which gzip >/dev/null 2>&1; then - echo "gzip not installed; cannot test gzip compression." - exit 77 -fi - -if [ "$(echo hello | "${grubshell}" --mkrescue-arg=--compress=gz)" != "Hello World" ]; then - exit 1 -fi diff --git a/thirdparty/grub-2.04/tests/hddboot_test.in b/thirdparty/grub-2.04/tests/hddboot_test.in deleted file mode 100644 index 6d70847a5..000000000 --- a/thirdparty/grub-2.04/tests/hddboot_test.in +++ /dev/null @@ -1,37 +0,0 @@ -#! @BUILD_SHEBANG@ -# Copyright (C) 2013 Free Software Foundation, Inc. -# -# GRUB is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# GRUB is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with GRUB. If not, see . - -set -e -grubshell=@builddir@/grub-shell - -. "@builddir@/grub-core/modinfo.sh" - -case "${grub_modinfo_target_cpu}-${grub_modinfo_platform}" in - # PLATFORM: emu is different - *-emu) - exit 0;; - # PLATFORM: Flash targets - i386-qemu | i386-coreboot | mips-qemu_mips | mipsel-qemu_mips) - exit 0;; - # FIXME: currently grub-shell uses only -kernel for loongson - mipsel-loongson) - exit 0;; -esac - -if [ "$(echo hello | "${grubshell}" --boot=hd)" != "Hello World" ]; then - exit 1 -fi - diff --git a/thirdparty/grub-2.04/tests/help_test.in b/thirdparty/grub-2.04/tests/help_test.in deleted file mode 100644 index b08cf2013..000000000 --- a/thirdparty/grub-2.04/tests/help_test.in +++ /dev/null @@ -1,16 +0,0 @@ -#! @BUILD_SHEBANG@ -set -e - -. "@builddir@/grub-core/modinfo.sh" - -template="Usage: help [PATTERN ...] -Show a help message. - --h, --help Display this help and exit. --u, --usage Display the usage of this command and exit. -Hello World" -outpu="$(echo 'help help; hello' | @builddir@/grub-shell)" - -if [ "$template" != "$outpu" ]; then - exit 1 -fi diff --git a/thirdparty/grub-2.04/tests/hfs_test.in b/thirdparty/grub-2.04/tests/hfs_test.in deleted file mode 100644 index d7ec56bef..000000000 --- a/thirdparty/grub-2.04/tests/hfs_test.in +++ /dev/null @@ -1,23 +0,0 @@ -#!@BUILD_SHEBANG@ - -set -e - -if [ "x$EUID" = "x" ] ; then - EUID=`id -u` -fi - -if [ "$EUID" != 0 ] ; then - exit 77 -fi - -if ! which mkfs.hfs >/dev/null 2>&1; then - echo "mkfs.hfs not installed; cannot test HFS." - exit 77 -fi - -if ! modprobe mac-roman; then - echo "no mac-roman support; cannot test HFS." - exit 77 -fi - -"@builddir@/grub-fs-tester" hfs diff --git a/thirdparty/grub-2.04/tests/hfsplus_test.in b/thirdparty/grub-2.04/tests/hfsplus_test.in deleted file mode 100644 index 85f1c37dc..000000000 --- a/thirdparty/grub-2.04/tests/hfsplus_test.in +++ /dev/null @@ -1,20 +0,0 @@ -#!@BUILD_SHEBANG@ - -set -e - -if [ "x$EUID" = "x" ] ; then - EUID=`id -u` -fi - -if [ "$EUID" != 0 ] ; then - exit 77 -fi - -if ! which mkfs.hfsplus >/dev/null 2>&1; then - echo "mkfs.hfsplus not installed; cannot test hfsplus." - exit 77 -fi - -"@builddir@/grub-fs-tester" hfsplus -"@builddir@/grub-fs-tester" hfsplus_casesens -"@builddir@/grub-fs-tester" hfsplus_wrap diff --git a/thirdparty/grub-2.04/tests/iso9660_test.in b/thirdparty/grub-2.04/tests/iso9660_test.in deleted file mode 100644 index 571b938d7..000000000 --- a/thirdparty/grub-2.04/tests/iso9660_test.in +++ /dev/null @@ -1,15 +0,0 @@ -#!@BUILD_SHEBANG@ - -set -e - -if ! which xorriso >/dev/null 2>&1; then - echo "xorriso not installed; cannot test iso9660." - exit 77 -fi - -"@builddir@/grub-fs-tester" joliet -"@builddir@/grub-fs-tester" rockridge -"@builddir@/grub-fs-tester" rockridge_joliet -"@builddir@/grub-fs-tester" joliet_1999 -"@builddir@/grub-fs-tester" rockridge_1999 -"@builddir@/grub-fs-tester" rockridge_joliet_1999 \ No newline at end of file diff --git a/thirdparty/grub-2.04/tests/jfs_test.in b/thirdparty/grub-2.04/tests/jfs_test.in deleted file mode 100644 index 6cf7576b3..000000000 --- a/thirdparty/grub-2.04/tests/jfs_test.in +++ /dev/null @@ -1,18 +0,0 @@ -#!@BUILD_SHEBANG@ - -set -e - -if [ "x$EUID" = "x" ] ; then - EUID=`id -u` -fi - -if [ "$EUID" != 0 ] ; then - exit 77 -fi - -if ! which mkfs.jfs >/dev/null 2>&1; then - echo "mkfs.jfs not installed; cannot test JFS." - exit 77 -fi - -"@builddir@/grub-fs-tester" jfs diff --git a/thirdparty/grub-2.04/tests/lib/unit_test.c b/thirdparty/grub-2.04/tests/lib/unit_test.c deleted file mode 100644 index 6adfd9922..000000000 --- a/thirdparty/grub-2.04/tests/lib/unit_test.c +++ /dev/null @@ -1,42 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2010 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include - -#include -#include - -int -main (int argc __attribute__ ((unused)), - char *argv[] __attribute__ ((unused))) -{ - int status = 0; - - grub_test_t test; - - grub_unit_test_init (); - FOR_LIST_ELEMENTS (test, grub_test_list) - status = grub_test_run (test) ? : status; - - grub_unit_test_fini (); - - exit (status); -} diff --git a/thirdparty/grub-2.04/tests/lzocompress_test.in b/thirdparty/grub-2.04/tests/lzocompress_test.in deleted file mode 100644 index 4e5f7e078..000000000 --- a/thirdparty/grub-2.04/tests/lzocompress_test.in +++ /dev/null @@ -1,29 +0,0 @@ -#! @BUILD_SHEBANG@ -# Copyright (C) 2013 Free Software Foundation, Inc. -# -# GRUB is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# GRUB is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with GRUB. If not, see . - -set -e -grubshell=@builddir@/grub-shell - -. "@builddir@/grub-core/modinfo.sh" - -if ! which lzop >/dev/null 2>&1; then - echo "lzop not installed; cannot test lzo compression." - exit 77 -fi - -if [ "$(echo hello | "${grubshell}" --mkrescue-arg=--compress=lzo)" != "Hello World" ]; then - exit 1 -fi diff --git a/thirdparty/grub-2.04/tests/minixfs_test.in b/thirdparty/grub-2.04/tests/minixfs_test.in deleted file mode 100644 index 3b16a4de0..000000000 --- a/thirdparty/grub-2.04/tests/minixfs_test.in +++ /dev/null @@ -1,35 +0,0 @@ -#!@BUILD_SHEBANG@ - -set -e - -if [ "x$EUID" = "x" ] ; then - EUID=`id -u` -fi - -if [ "$EUID" != 0 ] ; then - exit 77 -fi - -if ! which mkfs.minix >/dev/null 2>&1; then - echo "mkfs.minix not installed; cannot test minixfs." - exit 77 -fi - -if ! mkfs.minix -h | grep -- -v > /dev/null; then - echo "mkfs.minix doesn't support minix2fs; cannot test minix*fs." - exit 77 -fi - -if ! mkfs.minix -h | grep -- -3 > /dev/null; then - echo "mkfs.minix doesn't support minix3fs; cannot test minix*fs." - exit 77 -fi - -if ! mkfs.minix -h | grep -- -B > /dev/null; then - echo "mkfs.minix doesn't support variable block size; cannot test minix*fs." - exit 77 -fi - -"@builddir@/grub-fs-tester" minix -"@builddir@/grub-fs-tester" minix2 -"@builddir@/grub-fs-tester" minix3 diff --git a/thirdparty/grub-2.04/tests/netboot_test.in b/thirdparty/grub-2.04/tests/netboot_test.in deleted file mode 100644 index 9f71e3d88..000000000 --- a/thirdparty/grub-2.04/tests/netboot_test.in +++ /dev/null @@ -1,45 +0,0 @@ -#! @BUILD_SHEBANG@ -# Copyright (C) 2013 Free Software Foundation, Inc. -# -# GRUB is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# GRUB is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with GRUB. If not, see . - -set -e -grubshell=@builddir@/grub-shell - -. "@builddir@/grub-core/modinfo.sh" - -case "${grub_modinfo_target_cpu}-${grub_modinfo_platform}" in - # PLATFORM: emu is different - *-emu) - exit 0;; - # PLATFORM: Flash targets - i386-qemu | i386-coreboot | mips-qemu_mips | mipsel-qemu_mips) - exit 0;; - # FIXME: currently grub-shell uses only -kernel for loongson - mipsel-loongson) - exit 0;; - # FIXME: no rtl8139 support - i386-multiboot) - exit 0;; - # FIXME: We don't fully support netboot on ARC - *-arc) - exit 0;; - # FIXME: Many QEMU firmware have no netboot capability - *-efi | i386-ieee1275 | powerpc-ieee1275 | sparc64-ieee1275) - exit 0;; -esac - -if [ "$(echo hello | "${grubshell}" --boot=net)" != "Hello World" ]; then - exit 1 -fi diff --git a/thirdparty/grub-2.04/tests/nilfs2_test.in b/thirdparty/grub-2.04/tests/nilfs2_test.in deleted file mode 100644 index ad44d5b33..000000000 --- a/thirdparty/grub-2.04/tests/nilfs2_test.in +++ /dev/null @@ -1,18 +0,0 @@ -#!@BUILD_SHEBANG@ - -set -e - -if [ "x$EUID" = "x" ] ; then - EUID=`id -u` -fi - -if [ "$EUID" != 0 ] ; then - exit 77 -fi - -if ! which mkfs.nilfs2 >/dev/null 2>&1; then - echo "mkfs.nilfs2 not installed; cannot test nilfs2." - exit 77 -fi - -"@builddir@/grub-fs-tester" nilfs2 diff --git a/thirdparty/grub-2.04/tests/ntfs_test.in b/thirdparty/grub-2.04/tests/ntfs_test.in deleted file mode 100644 index 9eb7b01f6..000000000 --- a/thirdparty/grub-2.04/tests/ntfs_test.in +++ /dev/null @@ -1,24 +0,0 @@ -#!@BUILD_SHEBANG@ - -set -e - -if [ "x$EUID" = "x" ] ; then - EUID=`id -u` -fi - -if [ "$EUID" != 0 ] ; then - exit 77 -fi - -if ! which mkfs.ntfs >/dev/null 2>&1; then - echo "mkfs.ntfs not installed; cannot test ntfs." - exit 77 -fi - -if ! which setfattr >/dev/null 2>&1; then - echo "setfattr not installed; cannot test ntfs." - exit 77 -fi - -"@builddir@/grub-fs-tester" ntfs -"@builddir@/grub-fs-tester" ntfscomp diff --git a/thirdparty/grub-2.04/tests/ohci_test.in b/thirdparty/grub-2.04/tests/ohci_test.in deleted file mode 100644 index 8693f8c47..000000000 --- a/thirdparty/grub-2.04/tests/ohci_test.in +++ /dev/null @@ -1,51 +0,0 @@ -#! @BUILD_SHEBANG@ -# Copyright (C) 2013 Free Software Foundation, Inc. -# -# GRUB is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# GRUB is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with GRUB. If not, see . - -set -e -grubshell=@builddir@/grub-shell - -. "@builddir@/grub-core/modinfo.sh" - -case "${grub_modinfo_target_cpu}-${grub_modinfo_platform}" in - # PLATFORM: Don't mess with real devices when OS is active - *-emu) - exit 0;; - # FIXME: qemu gets bonito DMA wrong - mipsel-loongson) - exit 0;; - # PLATFORM: no USB on ARC and qemu-mips platforms - mips*-arc | mips*-qemu_mips) - exit 0;; - # FIXME: No native drivers are available for those - powerpc-ieee1275 | sparc64-ieee1275 | arm*-efi) - exit 0;; -esac - -imgfile="`mktemp "${TMPDIR:-/tmp}/tmp.XXXXXXXXXX"`" || exit 1 -outfile="`mktemp "${TMPDIR:-/tmp}/tmp.XXXXXXXXXX"`" || exit 1 - -echo "hello" > "$outfile" - -tar cf "$imgfile" "$outfile" - -if [ "$(echo "nativedisk; source '(usb0)/$outfile';" | "${grubshell}" --qemu-opts="-device pci-ohci -drive id=my_usb_disk,file=$imgfile,if=none -device usb-storage,drive=my_usb_disk" | tail -n 1)" != "Hello World" ]; then - rm "$imgfile" - rm "$outfile" - exit 1 -fi - -rm "$imgfile" -rm "$outfile" diff --git a/thirdparty/grub-2.04/tests/partmap_test.in b/thirdparty/grub-2.04/tests/partmap_test.in deleted file mode 100644 index 6ef518b0a..000000000 --- a/thirdparty/grub-2.04/tests/partmap_test.in +++ /dev/null @@ -1,489 +0,0 @@ -#! @BUILD_SHEBANG@ -set -e - -# Copyright (C) 2010 Free Software Foundation, Inc. -# -# GRUB is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# GRUB is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with GRUB. If not, see . - -parted=parted -grubshell=@builddir@/grub-shell - -. "@builddir@/grub-core/modinfo.sh" - -create_disk_image () { - name="$1" - size=$2 - rm -f "${name}" - dd if=/dev/zero of="${name}" bs=512 count=1 seek=$((size * 2048 - 1)) status=noxfer > /dev/null -} - -create_dfly_image () { - name="$1" - rm -f ${name} - - gunzip < "@srcdir@/tests/dfly-mbr-mbexample.mbr.img.gz" | dd of=${name} bs=1 seek=440 count=72 conv=notrunc > /dev/null - gunzip < "@srcdir@/tests/dfly-mbr-mbexample.dfly.img.gz" | dd of=${name} bs=512 seek=33 count=1 conv=notrunc > /dev/null -} - -check_output () { - outfile=$1 - shift - - for dsk in $@; do - if ! grep "($dsk)" "${outfile}" >/dev/null - then - echo "($dsk): disk/partiton not found" - exit 1 - fi - done -} - -list_parts () { - mod=$1; - shift; - imgfile="$1" - shift - outfile="$1" - shift - - echo ls | "${grubshell}" --disk="${imgfile}" \ - --modules=$mod | tr -d "\n\r" > "${outfile}" - cat "${outfile}" - echo -} - -case "${grub_modinfo_target_cpu}-${grub_modinfo_platform}" in - mips-qemu_mips | mipsel-qemu_mips | i386-qemu | i386-multiboot | i386-coreboot | mipsel-loongson) - disk=ata0 - ;; - powerpc-ieee1275) - disk=ieee1275//pci@80000000/mac-io@4/ata-3@20000/disk@0 - # FIXME: QEMU firmware has bugs which prevent it from accessing hard disk w/o recognised label. - exit 0 - ;; - sparc64-ieee1275) - disk=ieee1275//pci@1fe\,0/pci-ata@5/ide0@500/disk@0 - # FIXME: QEMU firmware has bugs which prevent it from accessing hard disk w/o recognised label. - exit 0 - ;; - i386-ieee1275) - disk=ieee1275/d - # FIXME: QEMU firmware has bugs which prevent it from accessing hard disk w/o recognised label. - exit 0 - ;; - mips-arc) - # FIXME: ARC firmware has bugs which prevent it from accessing hard disk w/o dvh disklabel. - exit 0 ;; - mipsel-arc) - disk=arc/scsi0/disk0/rdisk0 - ;; - arm*-efi) - disk=hd3 - ;; - *) - disk=hd0 - ;; -esac - -if ! which parted >/dev/null 2>&1; then - echo "parted not installed; cannot test partmap" - exit 77 -fi - -imgfile="`mktemp "${TMPDIR:-/tmp}/tmp.XXXXXXXXXX"`" || exit 1 -outfile="`mktemp "${TMPDIR:-/tmp}/tmp.XXXXXXXXXX"`" || exit 1 - -# -# MSDOS partition types -# - -echo "Checking MSDOS partition types..." - -# 0 primary -create_disk_image "${imgfile}" 64 -${parted} -a none -s "${imgfile}" mklabel msdos -list_parts part_msdos "${imgfile}" "${outfile}" -check_output "${outfile}" $disk - -# 1 primary -create_disk_image "${imgfile}" 64 -${parted} -a none -s "${imgfile}" mklabel msdos mkpart primary 0 10M -list_parts part_msdos "${imgfile}" "${outfile}" -check_output "${outfile}" $disk $disk,msdos1 - -# 2 primary -create_disk_image "${imgfile}" 128 -${parted} -a none -s "${imgfile}" mklabel msdos mkpart primary 0 10M mkpart primary 10M 20M -list_parts part_msdos "${imgfile}" "${outfile}" -check_output "${outfile}" $disk $disk,msdos1 $disk,msdos2 - -# 3 primary -create_disk_image "${imgfile}" 128 -${parted} -a none -s "${imgfile}" mklabel msdos mkpart primary 0 10M mkpart primary 10M 20M mkpart primary 20M 30M -list_parts part_msdos "${imgfile}" "${outfile}" -check_output "${outfile}" $disk $disk,msdos1 $disk,msdos2 $disk,msdos3 - -# 4 primary -create_disk_image "${imgfile}" 128 -${parted} -a none -s "${imgfile}" mklabel msdos mkpart primary 0 10M mkpart primary 10M 20M mkpart primary 20M 30M mkpart primary 30M 40M -list_parts part_msdos "${imgfile}" "${outfile}" -check_output "${outfile}" $disk $disk,msdos1 $disk,msdos2 $disk,msdos3 $disk,msdos4 - -# 1 primary, 1 extended -create_disk_image "${imgfile}" 128 -${parted} -a none -s "${imgfile}" mklabel msdos mkpart primary 0 10M mkpart primary 10M 20M mkpart extended 20M 100% -list_parts part_msdos "${imgfile}" "${outfile}" -check_output "${outfile}" $disk $disk,msdos1 - -# 1 primary, 1 extended, 1 logical -create_disk_image "${imgfile}" 128 -${parted} -a none -s "${imgfile}" mklabel msdos mkpart primary 0 10M mkpart primary 10M 20M mkpart extended 20M 100% mkpart logical 20M 30M -list_parts part_msdos "${imgfile}" "${outfile}" -check_output "${outfile}" $disk $disk,msdos1 $disk,msdos5 - -# 1 primary, 1 extended, 2 logical -create_disk_image "${imgfile}" 128 -${parted} -a none -s "${imgfile}" mklabel msdos mkpart primary 0 10M mkpart primary 10M 20M mkpart extended 20M 100% mkpart logical 20M 30M mkpart logical 30M 40M -list_parts part_msdos "${imgfile}" "${outfile}" -check_output "${outfile}" $disk $disk,msdos1 $disk,msdos5 $disk,msdos6 - -# 1 primary, 1 extended, 3 logical -create_disk_image "${imgfile}" 128 -${parted} -a none -s "${imgfile}" mklabel msdos mkpart primary 0 10M mkpart primary 10M 20M mkpart extended 20M 100% mkpart logical 20M 30M mkpart logical 30M 40M mkpart logical 40M 50M -list_parts part_msdos "${imgfile}" "${outfile}" -check_output "${outfile}" $disk $disk,msdos1 $disk,msdos5 $disk,msdos6 $disk,msdos7 - -# 1 primary, 1 extended, 4 logical -create_disk_image "${imgfile}" 128 -${parted} -a none -s "${imgfile}" mklabel msdos mkpart primary 0 10M mkpart primary 10M 20M mkpart extended 20M 100% mkpart logical 20M 30M mkpart logical 30M 40M mkpart logical 40M 50M mkpart logical 50M 60M -list_parts part_msdos "${imgfile}" "${outfile}" -check_output "${outfile}" $disk $disk,msdos1 $disk,msdos5 $disk,msdos6 $disk,msdos7 $disk,msdos8 - - -# -# GPT partition types -# - -echo "Checking GPT partition types..." - -# 0 parts -create_disk_image "${imgfile}" 64 -${parted} -a none -s "${imgfile}" mklabel gpt -list_parts part_gpt "${imgfile}" "${outfile}" -check_output "${outfile}" $disk - -# 1 parts -create_disk_image "${imgfile}" 64 -${parted} -a none -s "${imgfile}" mklabel gpt mkpart 1 0 10M -list_parts part_gpt "${imgfile}" "${outfile}" -check_output "${outfile}" $disk $disk,gpt1 - -# 2 parts -create_disk_image "${imgfile}" 128 -${parted} -a none -s "${imgfile}" mklabel gpt mkpart 1 0 10M mkpart 2 10M 20M -list_parts part_gpt "${imgfile}" "${outfile}" -check_output "${outfile}" $disk $disk,gpt1 $disk,gpt2 - -# 3 parts -create_disk_image "${imgfile}" 128 -${parted} -a none -s "${imgfile}" mklabel gpt mkpart 1 0 10M mkpart 2 10M 20M mkpart 3 20M 30M -list_parts part_gpt "${imgfile}" "${outfile}" -check_output "${outfile}" $disk $disk,gpt1 $disk,gpt2 $disk,gpt3 - -# 4 parts -create_disk_image "${imgfile}" 128 -${parted} -a none -s "${imgfile}" mklabel gpt mkpart 1 0 10M mkpart 2 10M 20M mkpart 4 20M 30M mkpart 5 30M 40M -list_parts part_gpt "${imgfile}" "${outfile}" -check_output "${outfile}" $disk $disk,gpt1 $disk,gpt2 $disk,gpt3 $disk,gpt4 - -# 5 parts -create_disk_image "${imgfile}" 128 -${parted} -a none -s "${imgfile}" mklabel gpt mkpart 1 0 10M mkpart 2 10M 20M mkpart 3 20M 30M mkpart 4 30M 40M mkpart 5 40M 50M -list_parts part_gpt "${imgfile}" "${outfile}" -check_output "${outfile}" $disk $disk,gpt1 $disk,gpt2 $disk,gpt3 $disk,gpt4 $disk,gpt5 - -# 6 parts -create_disk_image "${imgfile}" 128 -${parted} -a none -s "${imgfile}" mklabel gpt mkpart 1 0 10M mkpart 2 10M 20M mkpart 3 20M 30M mkpart 4 30M 40M mkpart 5 40M 50M mkpart 6 50M 60M -list_parts part_gpt "${imgfile}" "${outfile}" -check_output "${outfile}" $disk $disk,gpt1 $disk,gpt2 $disk,gpt3 $disk,gpt4 $disk,gpt5 $disk,gpt6 - - -# -# SUN partition types -# -# It seems partition #3 is reserved for whole disk by parted. -# - -echo "Checking SUN partition types..." - -# 0 parts -create_disk_image "${imgfile}" 64 -${parted} -a none -s "${imgfile}" mklabel sun -list_parts part_sun "${imgfile}" "${outfile}" -check_output "${outfile}" $disk - -# 1 parts -create_disk_image "${imgfile}" 64 -${parted} -a none -s "${imgfile}" mklabel sun mkpart 0 10M -list_parts part_sun "${imgfile}" "${outfile}" -check_output "${outfile}" $disk $disk,sun1 - -# 2 parts -create_disk_image "${imgfile}" 128 -${parted} -a none -s "${imgfile}" mklabel sun mkpart 0 10M mkpart 10M 20M -list_parts part_sun "${imgfile}" "${outfile}" -check_output "${outfile}" $disk $disk,sun1 $disk,sun2 - -# 3 parts -create_disk_image "${imgfile}" 128 -${parted} -a none -s "${imgfile}" mklabel sun mkpart 0 10M mkpart 10M 20M mkpart 20M 30M -list_parts part_sun "${imgfile}" "${outfile}" -check_output "${outfile}" $disk $disk,sun1 $disk,sun2 $disk,sun4 - -# 4 parts -create_disk_image "${imgfile}" 128 -${parted} -a none -s "${imgfile}" mklabel sun mkpart 0 10M mkpart 10M 20M mkpart 20M 30M mkpart 30M 40M -list_parts part_sun "${imgfile}" "${outfile}" -check_output "${outfile}" $disk $disk,sun1 $disk,sun2 $disk,sun4 $disk,sun5 - -# 5 parts -create_disk_image "${imgfile}" 128 -${parted} -a none -s "${imgfile}" mklabel sun mkpart 0 10M mkpart 10M 20M mkpart 20M 30M mkpart 30M 40M mkpart 40M 50M -list_parts part_sun "${imgfile}" "${outfile}" -check_output "${outfile}" $disk $disk,sun1 $disk,sun2 $disk,sun4 $disk,sun5 $disk,sun6 - -# 6 parts -create_disk_image "${imgfile}" 128 -${parted} -a none -s "${imgfile}" mklabel sun mkpart 0 10M mkpart 10M 20M mkpart 20M 30M mkpart 30M 40M mkpart 40M 50M mkpart 50M 60M -list_parts part_sun "${imgfile}" "${outfile}" -check_output "${outfile}" $disk $disk,sun1 $disk,sun2 $disk,sun4 $disk,sun5 $disk,sun6 $disk,sun7 - -# 7 parts -create_disk_image "${imgfile}" 128 -${parted} -a none -s "${imgfile}" mklabel sun mkpart 0 10M mkpart 10M 20M mkpart 20M 30M mkpart 30M 40M mkpart 40M 50M mkpart 50M 60M mkpart 60M 70M -list_parts part_sun "${imgfile}" "${outfile}" -check_output "${outfile}" $disk $disk,sun1 $disk,sun2 $disk,sun4 $disk,sun5 $disk,sun6 $disk,sun7 $disk,sun8 - - -# -# Apple partition types -# -# Partition table itself is part of some partition, so there is always -# a partition by default. Furthermore free space is also a partition, -# so there is always at least 2 partitions -# - -echo "Checking APPLE partition types..." - -# 0 parts -create_disk_image "${imgfile}" 64 -${parted} -a none -s "${imgfile}" mklabel mac -list_parts part_apple "${imgfile}" "${outfile}" -check_output "${outfile}" $disk $disk,apple1 $disk,apple2 - -# 1 parts -create_disk_image "${imgfile}" 64 -${parted} -a none -s "${imgfile}" mklabel mac mkpart a 1M 10M -list_parts part_apple "${imgfile}" "${outfile}" -check_output "${outfile}" $disk $disk,apple1 $disk,apple2 $disk,apple3 - -# 2 parts -create_disk_image "${imgfile}" 128 -${parted} -a none -s "${imgfile}" mklabel mac mkpart a 1M 10M mkpart b 10M 20M -list_parts part_apple "${imgfile}" "${outfile}" -check_output "${outfile}" $disk $disk,apple1 $disk,apple2 $disk,apple3 $disk,apple4 - -# 3 parts -create_disk_image "${imgfile}" 128 -${parted} -a none -s "${imgfile}" mklabel mac mkpart a 1M 10M mkpart b 10M 20M mkpart c 20M 30M -list_parts part_apple "${imgfile}" "${outfile}" -check_output "${outfile}" $disk $disk,apple1 $disk,apple2 $disk,apple4 $disk,apple5 - -# 4 parts -create_disk_image "${imgfile}" 128 -${parted} -a none -s "${imgfile}" mklabel mac mkpart a 1M 10M mkpart b 10M 20M mkpart c 20M 30M mkpart d 30M 40M -list_parts part_apple "${imgfile}" "${outfile}" -check_output "${outfile}" $disk $disk,apple1 $disk,apple2 $disk,apple4 $disk,apple5 $disk,apple6 - -# 5 parts -create_disk_image "${imgfile}" 128 -${parted} -a none -s "${imgfile}" mklabel mac mkpart a 1M 10M mkpart b 10M 20M mkpart c 20M 30M mkpart d 30M 40M mkpart e 40M 50M -list_parts part_apple "${imgfile}" "${outfile}" -check_output "${outfile}" $disk $disk,apple1 $disk,apple2 $disk,apple4 $disk,apple5 $disk,apple6 $disk,apple7 - -# 6 parts -create_disk_image "${imgfile}" 128 -${parted} -a none -s "${imgfile}" mklabel mac mkpart a 1M 10M mkpart b 10M 20M mkpart c 20M 30M mkpart d 30M 40M mkpart e 40M 50M mkpart f 50M 60M -list_parts part_apple "${imgfile}" "${outfile}" -check_output "${outfile}" $disk $disk,apple1 $disk,apple2 $disk,apple4 $disk,apple5 $disk,apple6 $disk,apple7 $disk,apple8 - -# -# DVH partition types -# -# Partition #11 is reserved for whole disk by parted. -# Parted also aliases #9 as whole disk -# - -echo "Checking DVH partition types..." - -# 0 parts -create_disk_image "${imgfile}" 64 -${parted} -a none -s "${imgfile}" mklabel dvh -list_parts part_dvh "${imgfile}" "${outfile}" -check_output "${outfile}" $disk - -# 1 parts -create_disk_image "${imgfile}" 64 -${parted} -a none -s "${imgfile}" mklabel dvh mkpart primary 3M 10M -list_parts part_dvh "${imgfile}" "${outfile}" -check_output "${outfile}" $disk $disk,dvh1 - -# 2 parts -create_disk_image "${imgfile}" 128 -${parted} -a none -s "${imgfile}" mklabel dvh mkpart primary 3M 10M mkpart primary 10M 20M -list_parts part_dvh "${imgfile}" "${outfile}" -check_output "${outfile}" $disk $disk,dvh1 $disk,dvh2 - -# 3 parts -create_disk_image "${imgfile}" 128 -${parted} -a none -s "${imgfile}" mklabel dvh mkpart primary 3M 10M mkpart primary 10M 20M mkpart primary 20M 30M -list_parts part_dvh "${imgfile}" "${outfile}" -check_output "${outfile}" $disk $disk,dvh1 $disk,dvh2 $disk,dvh3 - -# 4 parts -create_disk_image "${imgfile}" 128 -${parted} -a none -s "${imgfile}" mklabel dvh mkpart primary 3M 10M mkpart primary 10M 20M mkpart primary 20M 30M mkpart primary 30M 40M -list_parts part_dvh "${imgfile}" "${outfile}" -check_output "${outfile}" $disk $disk,dvh1 $disk,dvh2 $disk,dvh3 $disk,dvh4 - -# 5 parts -create_disk_image "${imgfile}" 128 -${parted} -a none -s "${imgfile}" mklabel dvh mkpart primary 3M 10M mkpart primary 10M 20M mkpart primary 20M 30M mkpart primary 30M 40M mkpart primary 40M 50M -list_parts part_dvh "${imgfile}" "${outfile}" -check_output "${outfile}" $disk $disk,dvh1 $disk,dvh2 $disk,dvh3 $disk,dvh4 $disk,dvh5 - -# 6 parts -create_disk_image "${imgfile}" 128 -${parted} -a none -s "${imgfile}" mklabel dvh mkpart primary 3M 10M mkpart primary 10M 20M mkpart primary 20M 30M mkpart primary 30M 40M mkpart primary 40M 50M mkpart primary 50M 60M -list_parts part_dvh "${imgfile}" "${outfile}" -check_output "${outfile}" $disk $disk,dvh1 $disk,dvh2 $disk,dvh3 $disk,dvh4 $disk,dvh5 $disk,dvh6 - -# 7 parts -create_disk_image "${imgfile}" 128 -${parted} -a none -s "${imgfile}" mklabel dvh mkpart primary 3M 10M mkpart primary 10M 20M mkpart primary 20M 30M mkpart primary 30M 40M mkpart primary 40M 50M mkpart primary 50M 60M mkpart primary 60M 70M -list_parts part_dvh "${imgfile}" "${outfile}" -check_output "${outfile}" $disk $disk,dvh1 $disk,dvh2 $disk,dvh3 $disk,dvh4 $disk,dvh5 $disk,dvh6 $disk,dvh7 - -# 8 parts -create_disk_image "${imgfile}" 128 -${parted} -a none -s "${imgfile}" mklabel dvh mkpart primary 3M 10M mkpart primary 10M 20M mkpart primary 20M 30M mkpart primary 30M 40M mkpart primary 40M 50M mkpart primary 50M 60M mkpart primary 60M 70M mkpart primary 70M 80M -list_parts part_dvh "${imgfile}" "${outfile}" -check_output "${outfile}" $disk $disk,dvh1 $disk,dvh2 $disk,dvh3 $disk,dvh4 $disk,dvh5 $disk,dvh6 $disk,dvh7 $disk,dvh8 - -# 9 parts -create_disk_image "${imgfile}" 128 -${parted} -a none -s "${imgfile}" mklabel dvh mkpart primary 3M 10M mkpart primary 10M 20M mkpart primary 20M 30M mkpart primary 30M 40M mkpart primary 40M 50M mkpart primary 50M 60M mkpart primary 60M 70M mkpart primary 70M 80M mkpart primary 80M 90M -list_parts part_dvh "${imgfile}" "${outfile}" -check_output "${outfile}" $disk $disk,dvh1 $disk,dvh2 $disk,dvh3 $disk,dvh4 $disk,dvh5 $disk,dvh6 $disk,dvh7 $disk,dvh8 $disk,dvh10 - -# 10 parts -create_disk_image "${imgfile}" 128 -${parted} -a none -s "${imgfile}" mklabel dvh mkpart primary 3M 10M mkpart primary 10M 20M mkpart primary 20M 30M mkpart primary 30M 40M mkpart primary 40M 50M mkpart primary 50M 60M mkpart primary 60M 70M mkpart primary 70M 80M mkpart primary 80M 90M mkpart primary 90M 100M -list_parts part_dvh "${imgfile}" "${outfile}" -check_output "${outfile}" $disk $disk,dvh1 $disk,dvh2 $disk,dvh3 $disk,dvh4 $disk,dvh5 $disk,dvh6 $disk,dvh7 $disk,dvh8 $disk,dvh10 $disk,dvh12 - -# 11 parts -create_disk_image "${imgfile}" 128 -${parted} -a none -s "${imgfile}" mklabel dvh mkpart primary 3M 10M mkpart primary 10M 20M mkpart primary 20M 30M mkpart primary 30M 40M mkpart primary 40M 50M mkpart primary 50M 60M mkpart primary 60M 70M mkpart primary 70M 80M mkpart primary 80M 90M mkpart primary 90M 100M mkpart primary 100M 110M -list_parts part_dvh "${imgfile}" "${outfile}" -check_output "${outfile}" $disk $disk,dvh1 $disk,dvh2 $disk,dvh3 $disk,dvh4 $disk,dvh5 $disk,dvh6 $disk,dvh7 $disk,dvh8 $disk,dvh10 $disk,dvh12 $disk,dvh13 - -# 12 parts -create_disk_image "${imgfile}" 128 -${parted} -a none -s "${imgfile}" mklabel dvh mkpart primary 3M 10M mkpart primary 10M 20M mkpart primary 20M 30M mkpart primary 30M 40M mkpart primary 40M 50M mkpart primary 50M 60M mkpart primary 60M 70M mkpart primary 70M 80M mkpart primary 80M 90M mkpart primary 90M 100M mkpart primary 100M 110M mkpart primary 110M 120M -list_parts part_dvh "${imgfile}" "${outfile}" -check_output "${outfile}" $disk $disk,dvh1 $disk,dvh2 $disk,dvh3 $disk,dvh4 $disk,dvh5 $disk,dvh6 $disk,dvh7 $disk,dvh8 $disk,dvh10 $disk,dvh12 $disk,dvh13 $disk,dvh14 - -# 13 parts -create_disk_image "${imgfile}" 135 -${parted} -a none -s "${imgfile}" mklabel dvh mkpart primary 3M 10M mkpart primary 10M 20M mkpart primary 20M 30M mkpart primary 30M 40M mkpart primary 40M 50M mkpart primary 50M 60M mkpart primary 60M 70M mkpart primary 70M 80M mkpart primary 80M 90M mkpart primary 90M 100M mkpart primary 100M 110M mkpart primary 110M 120M mkpart primary 120M 130M -list_parts part_dvh "${imgfile}" "${outfile}" -check_output "${outfile}" $disk $disk,dvh1 $disk,dvh2 $disk,dvh3 $disk,dvh4 $disk,dvh5 $disk,dvh6 $disk,dvh7 $disk,dvh8 $disk,dvh10 $disk,dvh12 $disk,dvh13 $disk,dvh14 $disk,dvh15 - -# 14 parts -create_disk_image "${imgfile}" 145 -${parted} -a none -s "${imgfile}" mklabel dvh mkpart primary 3M 10M mkpart primary 10M 20M mkpart primary 20M 30M mkpart primary 30M 40M mkpart primary 40M 50M mkpart primary 50M 60M mkpart primary 60M 70M mkpart primary 70M 80M mkpart primary 80M 90M mkpart primary 90M 100M mkpart primary 100M 110M mkpart primary 110M 120M mkpart primary 120M 130M mkpart primary 130M 140M -list_parts part_dvh "${imgfile}" "${outfile}" -check_output "${outfile}" $disk $disk,dvh1 $disk,dvh2 $disk,dvh3 $disk,dvh4 $disk,dvh5 $disk,dvh6 $disk,dvh7 $disk,dvh8 $disk,dvh10 $disk,dvh12 $disk,dvh13 $disk,dvh14 $disk,dvh15 $disk,dvh16 - -echo "Checking AMIGA partition types..." - -# 0 parts -create_disk_image "${imgfile}" 64 -${parted} -a none -s "${imgfile}" mklabel amiga -list_parts part_amiga "${imgfile}" "${outfile}" -check_output "${outfile}" $disk - -# 1 parts -create_disk_image "${imgfile}" 64 -${parted} -a none -s "${imgfile}" mklabel amiga mkpart x 0 10M -list_parts part_amiga "${imgfile}" "${outfile}" -check_output "${outfile}" $disk $disk,amiga1 - -# 2 parts -create_disk_image "${imgfile}" 128 -${parted} -a none -s "${imgfile}" mklabel amiga mkpart x 0 10M mkpart x 10M 20M -list_parts part_amiga "${imgfile}" "${outfile}" -check_output "${outfile}" $disk $disk,amiga1 $disk,amiga2 - -# 3 parts -create_disk_image "${imgfile}" 128 -${parted} -a none -s "${imgfile}" mklabel amiga mkpart x 0 10M mkpart x 10M 20M mkpart x 20M 30M -list_parts part_amiga "${imgfile}" "${outfile}" -check_output "${outfile}" $disk $disk,amiga1 $disk,amiga2 $disk,amiga3 - -# 4 parts -create_disk_image "${imgfile}" 128 -${parted} -a none -s "${imgfile}" mklabel amiga mkpart x 0 10M mkpart x 10M 20M mkpart x 20M 30M mkpart x 30M 40M -list_parts part_amiga "${imgfile}" "${outfile}" -check_output "${outfile}" $disk $disk,amiga1 $disk,amiga2 $disk,amiga3 $disk,amiga4 - -# 5 parts -create_disk_image "${imgfile}" 128 -${parted} -a none -s "${imgfile}" mklabel amiga mkpart x 0 10M mkpart x 10M 20M mkpart x 20M 30M mkpart x 30M 40M mkpart x 40M 50M -list_parts part_amiga "${imgfile}" "${outfile}" -check_output "${outfile}" $disk $disk,amiga1 $disk,amiga2 $disk,amiga3 $disk,amiga4 $disk,amiga5 - -# 6 parts -create_disk_image "${imgfile}" 128 -${parted} -a none -s "${imgfile}" mklabel amiga mkpart x 0 10M mkpart x 10M 20M mkpart x 20M 30M mkpart x 30M 40M mkpart x 40M 50M mkpart x 50M 60M -list_parts part_amiga "${imgfile}" "${outfile}" -check_output "${outfile}" $disk $disk,amiga1 $disk,amiga2 $disk,amiga3 $disk,amiga4 $disk,amiga5 $disk,amiga6 - -# 7 parts -create_disk_image "${imgfile}" 128 -${parted} -a none -s "${imgfile}" mklabel amiga mkpart x 0 10M mkpart x 10M 20M mkpart x 20M 30M mkpart x 30M 40M mkpart x 40M 50M mkpart x 50M 60M mkpart x 60M 70M -list_parts part_amiga "${imgfile}" "${outfile}" -check_output "${outfile}" $disk $disk,amiga1 $disk,amiga2 $disk,amiga3 $disk,amiga4 $disk,amiga5 $disk,amiga6 $disk,amiga7 - -# -# DragonFly BSD disklabel64 -# - -echo "Checking DragonFly BSD disklabel64..." - -create_dfly_image "${imgfile}" -list_parts part_dfly "${imgfile}" "${outfile}" -check_output "${outfile}" $disk $disk,msdos1 $disk,msdos1,dfly1 $disk,msdos1,dfly2 $disk,msdos1,dfly3 diff --git a/thirdparty/grub-2.04/tests/pata_test.in b/thirdparty/grub-2.04/tests/pata_test.in deleted file mode 100644 index 4b18fdef3..000000000 --- a/thirdparty/grub-2.04/tests/pata_test.in +++ /dev/null @@ -1,55 +0,0 @@ -#! @BUILD_SHEBANG@ -# Copyright (C) 2013 Free Software Foundation, Inc. -# -# GRUB is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# GRUB is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with GRUB. If not, see . - -set -e -grubshell=@builddir@/grub-shell - -. "@builddir@/grub-core/modinfo.sh" - -disk=hda -indisk=ata0 - -case "${grub_modinfo_target_cpu}-${grub_modinfo_platform}" in - # PLATFORM: Don't mess with real devices when OS is active - *-emu) - exit 0;; - # PLATFORM: no ATA on ARC platforms (they use SCSI) - *-arc) - exit 0;; - # FIXME: No native drivers are available for those - powerpc-ieee1275 | sparc64-ieee1275 | arm*-efi) - exit 0;; - i386-ieee1275) - disk=hdb - indisk=ata1 - ;; -esac - -imgfile="`mktemp "${TMPDIR:-/tmp}/tmp.XXXXXXXXXX"`" || exit 1 -outfile="`mktemp "${TMPDIR:-/tmp}/tmp.XXXXXXXXXX"`" || exit 1 - -echo "hello" > "$outfile" - -tar cf "$imgfile" "$outfile" - -if [ "$(echo "nativedisk; source '($indisk)/$outfile';" | "${grubshell}" --qemu-opts="-$disk $imgfile")" != "Hello World" ]; then - rm "$imgfile" - rm "$outfile" - exit 1 -fi - -rm "$imgfile" -rm "$outfile" diff --git a/thirdparty/grub-2.04/tests/printf_unit_test.c b/thirdparty/grub-2.04/tests/printf_unit_test.c deleted file mode 100644 index 098c29fd9..000000000 --- a/thirdparty/grub-2.04/tests/printf_unit_test.c +++ /dev/null @@ -1,78 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2011 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include - -#define MSG "printf test failed: %s, %s", real, expected - -#if defined(__GNUC__) && __GNUC__ >= 7 -#pragma GCC diagnostic ignored "-Wformat-truncation=" -#endif - -static void -printf_test (void) -{ - char real[512]; - char expected[512]; - char *null = NULL; - - grub_snprintf (real, sizeof (real), "%s", null); - snprintf (expected, sizeof (expected), "%s", null); - grub_test_assert (strcmp (real, expected) == 0, MSG); - - grub_snprintf (real, sizeof (real), "%10s", null); - snprintf (expected, sizeof (expected), "%10s", null); - grub_test_assert (strcmp (real, expected) == 0, MSG); - - grub_snprintf (real, sizeof (real), "%-10s", null); - snprintf (expected, sizeof (expected), "%-10s", null); - grub_test_assert (strcmp (real, expected) == 0, MSG); - - grub_snprintf (real, sizeof (real), "%d%%", 10); - snprintf (expected, sizeof (expected), "%d%%", 10); - grub_test_assert (strcmp (real, expected) == 0, MSG); - - grub_snprintf (real, sizeof (real), "%d %%", 10); - snprintf (expected, sizeof (expected), "%d %%", 10); - grub_test_assert (strcmp (real, expected) == 0, MSG); - - grub_snprintf (real, sizeof (real), "%%"); - snprintf (expected, sizeof (expected), "%%"); - grub_test_assert (strcmp (real, expected) == 0, MSG); - - grub_snprintf (real, sizeof (real), "%d %d %d", 1, 2, 3); - snprintf (expected, sizeof (expected), "%d %d %d", 1, 2, 3); - grub_test_assert (strcmp (real, expected) == 0, MSG); - grub_snprintf (real, sizeof (real), "%3$d %2$d %1$d", 1, 2, 3); - snprintf (expected, sizeof (expected), "%3$d %2$d %1$d", 1, 2, 3); - grub_test_assert (strcmp (real, expected) == 0, MSG); - grub_snprintf (real, sizeof (real), "%d %lld %d", 1, 2LL, 3); - snprintf (expected, sizeof (expected), "%d %lld %d", 1, 2LL, 3); - grub_test_assert (strcmp (real, expected) == 0, MSG); - grub_snprintf (real, sizeof (real), "%3$d %2$lld %1$d", 1, 2LL, 3); - snprintf (expected, sizeof (expected), "%3$d %2$lld %1$d", 1, 2LL, 3); - grub_test_assert (strcmp (real, expected) == 0, MSG); - grub_snprintf (real, sizeof (real), "%%0%dd ", 1); - snprintf (expected, sizeof (expected), "%%0%dd ", 1); - grub_test_assert (strcmp (real, expected) == 0, MSG); -} - -GRUB_UNIT_TEST ("printf_unit_test", printf_test); diff --git a/thirdparty/grub-2.04/tests/priority_queue_unit_test.cc b/thirdparty/grub-2.04/tests/priority_queue_unit_test.cc deleted file mode 100644 index bb0060e5e..000000000 --- a/thirdparty/grub-2.04/tests/priority_queue_unit_test.cc +++ /dev/null @@ -1,105 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2013 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include - -#include -#include -#include - -#include - -using namespace std; - -static int -compar (const void *a_, const void *b_) -{ - int a = *(int *) a_; - int b = *(int *) b_; - if (a < b) - return -1; - if (a > b) - return +1; - return 0; -} - -static void -priority_queue_test (void) -{ - priority_queue pq; - grub_priority_queue_t pq2; - int counter; - int s = 0; - pq2 = grub_priority_queue_new (sizeof (int), compar); - if (!pq2) - { - grub_test_assert (0, - "priority queue: queue creating failed\n"); - return; - } - srand (1); - - for (counter = 0; counter < 1000000; counter++) - { - int op = rand () % 10; - if (s && *(int *) grub_priority_queue_top (pq2) != pq.top ()) - { - printf ("Error at %d\n", counter); - grub_test_assert (0, - "priority queue: error at %d\n", counter); - return; - } - if (op < 3 && s) - { - grub_priority_queue_pop (pq2); - pq.pop (); - s--; - } - else - { - int v = rand (); - pq.push (v); - if (grub_priority_queue_push (pq2, &v) != 0) - { - grub_test_assert (0, - "priority queue: push failed"); - return; - } - s++; - } - } - while (s) - { - if (*(int *) grub_priority_queue_top (pq2) != pq.top ()) - { - grub_test_assert (0, - "priority queue: Error at the end. %d elements remaining.\n", s); - return; - } - grub_priority_queue_pop (pq2); - pq.pop (); - s--; - } - printf ("priority_queue: passed successfully\n"); -} - -GRUB_UNIT_TEST ("priority_queue_unit_test", priority_queue_test); diff --git a/thirdparty/grub-2.04/tests/pseries_test.in b/thirdparty/grub-2.04/tests/pseries_test.in deleted file mode 100644 index 655eb4f3a..000000000 --- a/thirdparty/grub-2.04/tests/pseries_test.in +++ /dev/null @@ -1,37 +0,0 @@ -#! @BUILD_SHEBANG@ -# Copyright (C) 2013 Free Software Foundation, Inc. -# -# GRUB is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# GRUB is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with GRUB. If not, see . - -set -e -grubshell=@builddir@/grub-shell - -. "@builddir@/grub-core/modinfo.sh" - -if [ "${grub_modinfo_target_cpu}-${grub_modinfo_platform}" != powerpc-ieee1275 ]; then - exit 0 -fi - -if [ "$(echo hello | "${grubshell}" --pseries --timeout=180 --boot=cd)" != "Hello World" ]; then - exit 1 -fi - -if [ "$(echo hello | "${grubshell}" --pseries --timeout=180 --boot=hd)" != "Hello World" ]; then - exit 1 -fi - -# FIXME: workaround SLOF bugs -#if [ "$(echo hello | "${grubshell}" --pseries --timeout=180 --boot=net)" != "Hello World" ]; then -# exit 1 -#fi diff --git a/thirdparty/grub-2.04/tests/reiserfs_test.in b/thirdparty/grub-2.04/tests/reiserfs_test.in deleted file mode 100644 index b5fed7635..000000000 --- a/thirdparty/grub-2.04/tests/reiserfs_test.in +++ /dev/null @@ -1,20 +0,0 @@ -#!@BUILD_SHEBANG@ - -set -e - -if [ "x$EUID" = "x" ] ; then - EUID=`id -u` -fi - -if [ "$EUID" != 0 ] ; then - exit 77 -fi - -if ! which mkfs.reiserfs >/dev/null 2>&1; then - echo "mkfs.reiserfs not installed; cannot test reiserfs." - exit 77 -fi - -"@builddir@/grub-fs-tester" reiserfs -"@builddir@/grub-fs-tester" reiserfs_old - diff --git a/thirdparty/grub-2.04/tests/romfs_test.in b/thirdparty/grub-2.04/tests/romfs_test.in deleted file mode 100644 index 98bb50c32..000000000 --- a/thirdparty/grub-2.04/tests/romfs_test.in +++ /dev/null @@ -1,10 +0,0 @@ -#!@BUILD_SHEBANG@ - -set -e - -if ! which genromfs >/dev/null 2>&1; then - echo "genromfs not installed; cannot test romfs." - exit 77 -fi - -"@builddir@/grub-fs-tester" romfs diff --git a/thirdparty/grub-2.04/tests/squashfs_test.in b/thirdparty/grub-2.04/tests/squashfs_test.in deleted file mode 100644 index 2f044f95d..000000000 --- a/thirdparty/grub-2.04/tests/squashfs_test.in +++ /dev/null @@ -1,12 +0,0 @@ -#!@BUILD_SHEBANG@ - -set -e - -if ! which mksquashfs >/dev/null 2>&1; then - echo "mksquashfs not installed; cannot test squashfs." - exit 77 -fi - -"@builddir@/grub-fs-tester" squash4_gzip -"@builddir@/grub-fs-tester" squash4_xz -"@builddir@/grub-fs-tester" squash4_lzo diff --git a/thirdparty/grub-2.04/tests/syslinux/ubuntu10.04/isolinux/adtxt.cfg b/thirdparty/grub-2.04/tests/syslinux/ubuntu10.04/isolinux/adtxt.cfg deleted file mode 100644 index e69de29bb..000000000 diff --git a/thirdparty/grub-2.04/tests/syslinux/ubuntu10.04/isolinux/dtmenu.cfg b/thirdparty/grub-2.04/tests/syslinux/ubuntu10.04/isolinux/dtmenu.cfg deleted file mode 100644 index 2e107fade..000000000 --- a/thirdparty/grub-2.04/tests/syslinux/ubuntu10.04/isolinux/dtmenu.cfg +++ /dev/null @@ -1,52 +0,0 @@ -menu hshift 9 -menu width 58 - -menu begin desktop - include stdmenu.cfg - menu hshift 13 - menu width 49 - menu label Alternative desktop environments - menu title Desktop environment menu - label mainmenu-kde - menu label ^Back.. - text help - Higher level options install the GNOME desktop environment - endtext - menu exit - menu begin kde-desktop - include stdmenu.cfg - menu label ^KDE - menu title KDE desktop boot menu - text help - Select the 'K Desktop Environment' for the Desktop task - endtext - label mainmenu-kde - menu label ^Back.. - menu exit - include kde/menu.cfg - menu end - menu begin lxde-desktop - include stdmenu.cfg - menu label ^LXDE - menu title LXDE desktop boot menu - text help - Select the 'Lightweight X11 Desktop Environment' for the Desktop task - endtext - label mainmenu-lxde - menu label ^Back.. - menu exit - include lxde/menu.cfg - menu end - menu begin xfce-desktop - include stdmenu.cfg - menu label ^Xfce - menu title Xfce desktop boot menu - text help - Select the 'Xfce lightweight desktop environment' for the Desktop task - endtext - label mainmenu-xfce - menu label ^Back.. - menu exit - include xfce/menu.cfg - menu end -menu end diff --git a/thirdparty/grub-2.04/tests/syslinux/ubuntu10.04/isolinux/exithelp.cfg b/thirdparty/grub-2.04/tests/syslinux/ubuntu10.04/isolinux/exithelp.cfg deleted file mode 100644 index 3119e654a..000000000 --- a/thirdparty/grub-2.04/tests/syslinux/ubuntu10.04/isolinux/exithelp.cfg +++ /dev/null @@ -1,3 +0,0 @@ -label menu - kernel vesamenu.c32 - config isolinux.cfg diff --git a/thirdparty/grub-2.04/tests/syslinux/ubuntu10.04/isolinux/gfxboot.cfg b/thirdparty/grub-2.04/tests/syslinux/ubuntu10.04/isolinux/gfxboot.cfg deleted file mode 100644 index b799cb5cb..000000000 --- a/thirdparty/grub-2.04/tests/syslinux/ubuntu10.04/isolinux/gfxboot.cfg +++ /dev/null @@ -1,12 +0,0 @@ -foreground=0xFFFFFF -background=0x958490 -screen-colour=0x270A1E -hidden-timeout=2 -label normal=Normal -append normal= -label driverupdates=Use driver update disc -append driverupdates=debian-installer/driver-update=true -applies driverupdates=live live-install -label oem=OEM install (for manufacturers) -append oem=oem-config/enable=true -applies oem=live live-install install diff --git a/thirdparty/grub-2.04/tests/syslinux/ubuntu10.04/isolinux/isolinux.cfg b/thirdparty/grub-2.04/tests/syslinux/ubuntu10.04/isolinux/isolinux.cfg deleted file mode 100644 index fd9c333b2..000000000 --- a/thirdparty/grub-2.04/tests/syslinux/ubuntu10.04/isolinux/isolinux.cfg +++ /dev/null @@ -1,6 +0,0 @@ -# D-I config version 2.0 -include menu.cfg -default vesamenu.c32 -prompt 0 -timeout 50 -ui gfxboot bootlogo diff --git a/thirdparty/grub-2.04/tests/syslinux/ubuntu10.04/isolinux/menu.cfg b/thirdparty/grub-2.04/tests/syslinux/ubuntu10.04/isolinux/menu.cfg deleted file mode 100644 index 9f5607dea..000000000 --- a/thirdparty/grub-2.04/tests/syslinux/ubuntu10.04/isolinux/menu.cfg +++ /dev/null @@ -1,23 +0,0 @@ -menu hshift 13 -menu width 49 -menu margin 8 - -menu title Installer boot menu -include stdmenu.cfg -include txt.cfg -include gtk.cfg -menu begin advanced - menu title Advanced options - include stdmenu.cfg - label mainmenu - menu label ^Back.. - menu exit - include adtxt.cfg - include adgtk.cfg -menu end -label help - menu label ^Help - text help - Display help screens; type 'menu' at boot prompt to return to this menu - endtext - config prompt.cfg diff --git a/thirdparty/grub-2.04/tests/syslinux/ubuntu10.04/isolinux/po4a.cfg b/thirdparty/grub-2.04/tests/syslinux/ubuntu10.04/isolinux/po4a.cfg deleted file mode 100644 index 75f67881c..000000000 --- a/thirdparty/grub-2.04/tests/syslinux/ubuntu10.04/isolinux/po4a.cfg +++ /dev/null @@ -1,3 +0,0 @@ -[po4a_langs] ar bn ca cs da de es eu fi fr gl hu id it ja ka ko ku lv nb nl pl pt pt_BR ru sk sv ta tr vi zh_CN zh_TW -[po4a_paths] po/help.pot $lang:po/$lang.po -[type:docbook] help.xml diff --git a/thirdparty/grub-2.04/tests/syslinux/ubuntu10.04/isolinux/prompt.cfg b/thirdparty/grub-2.04/tests/syslinux/ubuntu10.04/isolinux/prompt.cfg deleted file mode 100644 index f9984aedc..000000000 --- a/thirdparty/grub-2.04/tests/syslinux/ubuntu10.04/isolinux/prompt.cfg +++ /dev/null @@ -1,16 +0,0 @@ -prompt 1 -display f1.txt -timeout 50 -include menu.cfg -include exithelp.cfg - -f1 f1.txt -f2 f2.txt -f3 f3.txt -f4 f4.txt -f5 f5.txt -f6 f6.txt -f7 f7.txt -f8 f8.txt -f9 f9.txt -f0 f10.txt diff --git a/thirdparty/grub-2.04/tests/syslinux/ubuntu10.04/isolinux/rqtxt.cfg b/thirdparty/grub-2.04/tests/syslinux/ubuntu10.04/isolinux/rqtxt.cfg deleted file mode 100644 index bdf6231ae..000000000 --- a/thirdparty/grub-2.04/tests/syslinux/ubuntu10.04/isolinux/rqtxt.cfg +++ /dev/null @@ -1,4 +0,0 @@ -label rescue - menu label ^Rescue mode - kernel /install/vmlinuz - append vga=788 initrd=/install/initrd.gz rescue/enable=true -- quiet diff --git a/thirdparty/grub-2.04/tests/syslinux/ubuntu10.04/isolinux/stdmenu.cfg b/thirdparty/grub-2.04/tests/syslinux/ubuntu10.04/isolinux/stdmenu.cfg deleted file mode 100644 index 671b16f78..000000000 --- a/thirdparty/grub-2.04/tests/syslinux/ubuntu10.04/isolinux/stdmenu.cfg +++ /dev/null @@ -1,15 +0,0 @@ -menu background splash.png -menu color title * #FFFFFFFF * -menu color border * #00000000 #00000000 none -menu color sel * #ffffffff #76a1d0ff * -menu color hotsel 1;7;37;40 #ffffffff #76a1d0ff * -menu color tabmsg * #ffffffff #00000000 * -menu color help 37;40 #ffdddd00 #00000000 none -menu vshift 12 -menu rows 10 -menu helpmsgrow 15 -# The command line must be at least one line from the bottom. -menu cmdlinerow 16 -menu timeoutrow 16 -menu tabmsgrow 18 -menu tabmsg Press ENTER to boot or TAB to edit a menu entry diff --git a/thirdparty/grub-2.04/tests/syslinux/ubuntu10.04/isolinux/txt.cfg b/thirdparty/grub-2.04/tests/syslinux/ubuntu10.04/isolinux/txt.cfg deleted file mode 100644 index 860daad80..000000000 --- a/thirdparty/grub-2.04/tests/syslinux/ubuntu10.04/isolinux/txt.cfg +++ /dev/null @@ -1,19 +0,0 @@ -default live -label live - menu label ^Try Ubuntu without installing - kernel /casper/vmlinuz - append file=/cdrom/preseed/ubuntu.seed boot=casper initrd=/casper/initrd.lz quiet splash -- -label live-install - menu label ^Install Ubuntu - kernel /casper/vmlinuz - append file=/cdrom/preseed/ubuntu.seed boot=casper only-ubiquity initrd=/casper/initrd.lz quiet splash -- -label check - menu label ^Check disc for defects - kernel /casper/vmlinuz - append boot=casper integrity-check initrd=/casper/initrd.lz quiet splash -- -label memtest - menu label Test ^memory - kernel /install/mt86plus -label hd - menu label ^Boot from first hard disk - localboot 0x80 diff --git a/thirdparty/grub-2.04/tests/syslinux/ubuntu10.04_grub.cfg.in b/thirdparty/grub-2.04/tests/syslinux/ubuntu10.04_grub.cfg.in deleted file mode 100644 index 441dec045..000000000 --- a/thirdparty/grub-2.04/tests/syslinux/ubuntu10.04_grub.cfg.in +++ /dev/null @@ -1,236 +0,0 @@ - background_image '@abs_top_srcdir@/tests/syslinux/ubuntu10.04/isolinux'/'splash.png' -# D-I config version 2.0 - # UNSUPPORTED command 'menu hshift 13' - # UNSUPPORTED command 'menu width 49' - # UNSUPPORTED command 'menu margin 8' - - # UNSUPPORTED command 'menu title Installer boot menu' - # UNSUPPORTED command 'menu color title * #FFFFFFFF *' - # UNSUPPORTED command 'menu color border * #00000000 #00000000 none' - # UNSUPPORTED command 'menu color sel * #ffffffff #76a1d0ff *' - # UNSUPPORTED command 'menu color hotsel 1;7;37;40 #ffffffff #76a1d0ff *' - # UNSUPPORTED command 'menu color tabmsg * #ffffffff #00000000 *' - # UNSUPPORTED command 'menu color help 37;40 #ffdddd00 #00000000 none' - # UNSUPPORTED command 'menu vshift 12' - # UNSUPPORTED command 'menu rows 10' - # UNSUPPORTED command 'menu helpmsgrow 15' -# The command line must be at least one line from the bottom. - # UNSUPPORTED command 'menu cmdlinerow 16' - # UNSUPPORTED command 'menu timeoutrow 16' - # UNSUPPORTED command 'menu tabmsgrow 18' - # UNSUPPORTED command 'menu tabmsg Press ENTER to boot or TAB to edit a menu entry' -set timeout=5 - default='vesamenu.c32' -menuentry 'Try Ubuntu without installing' --hotkey 't' --id 'live' { - if test x$grub_platform = xpc; then linux_suffix=16; else linux_suffix= ; fi - linux$linux_suffix '/'/'/casper/vmlinuz' file=/cdrom/preseed/ubuntu.seed boot=casper initrd=/casper/initrd.lz quiet splash -- - initrd$linux_suffix '/'/'/casper/initrd.lz' -} -menuentry 'Install Ubuntu' --hotkey 'i' --id 'live-install' { - if test x$grub_platform = xpc; then linux_suffix=16; else linux_suffix= ; fi - linux$linux_suffix '/'/'/casper/vmlinuz' file=/cdrom/preseed/ubuntu.seed boot=casper only-ubiquity initrd=/casper/initrd.lz quiet splash -- - initrd$linux_suffix '/'/'/casper/initrd.lz' -} -menuentry 'Check disc for defects' --hotkey 'c' --id 'check' { - if test x$grub_platform = xpc; then linux_suffix=16; else linux_suffix= ; fi - linux$linux_suffix '/'/'/casper/vmlinuz' boot=casper integrity-check initrd=/casper/initrd.lz quiet splash -- - initrd$linux_suffix '/'/'/casper/initrd.lz' -} -menuentry 'Test memory' --hotkey 'm' --id 'memtest' { - if test x$grub_platform = xpc; then linux_suffix=16; else linux_suffix= ; fi - linux$linux_suffix '/'/'/install/mt86plus' -} -menuentry 'Boot from first hard disk' --hotkey 'b' --id 'hd' { -# File (host)/@simplified_abs_top_srcdir@/tests/syslinux/ubuntu10.04/isolinux/gtk.cfg not found - # UNSUPPORTED command 'menu begin advanced' - # UNSUPPORTED command 'menu title Advanced options' - # UNSUPPORTED command 'menu color title * #FFFFFFFF *' - # UNSUPPORTED command 'menu color border * #00000000 #00000000 none' - # UNSUPPORTED command 'menu color sel * #ffffffff #76a1d0ff *' - # UNSUPPORTED command 'menu color hotsel 1;7;37;40 #ffffffff #76a1d0ff *' - # UNSUPPORTED command 'menu color tabmsg * #ffffffff #00000000 *' - # UNSUPPORTED command 'menu color help 37;40 #ffdddd00 #00000000 none' - # UNSUPPORTED command 'menu vshift 12' - # UNSUPPORTED command 'menu rows 10' - # UNSUPPORTED command 'menu helpmsgrow 15' -# The command line must be at least one line from the bottom. - # UNSUPPORTED command 'menu cmdlinerow 16' - # UNSUPPORTED command 'menu timeoutrow 16' - # UNSUPPORTED command 'menu tabmsgrow 18' - # UNSUPPORTED command 'menu tabmsg Press ENTER to boot or TAB to edit a menu entry' - root=hd0; - chainloader +1; -} -menuentry 'Back..' --hotkey 'b' --id 'mainmenu' { - # UNSUPPORTED command 'menu exit' -# File (host)/@simplified_abs_top_srcdir@/tests/syslinux/ubuntu10.04/isolinux/adgtk.cfg not found - # UNSUPPORTED command 'menu end' - # UNSUPPORTED entry type 0 -true; -} -menuentry 'Help' --hotkey 'h' --id 'help' { - # UNSUPPORTED command 'ui gfxboot bootlogo' -#'@abs_top_srcdir@/tests/syslinux/ubuntu10.04/isolinux'/'prompt.cfg' (host)@simplified_abs_top_srcdir@/tests/syslinux/ubuntu10.04/isolinux/prompt.cfg: - background_image '@abs_top_srcdir@/tests/syslinux/ubuntu10.04/isolinux/'/'splash.png' - # UNSUPPORTED command 'display f1.txt' - # UNSUPPORTED command 'menu hshift 13' - # UNSUPPORTED command 'menu width 49' - # UNSUPPORTED command 'menu margin 8' - - # UNSUPPORTED command 'menu title Installer boot menu' - # UNSUPPORTED command 'menu color title * #FFFFFFFF *' - # UNSUPPORTED command 'menu color border * #00000000 #00000000 none' - # UNSUPPORTED command 'menu color sel * #ffffffff #76a1d0ff *' - # UNSUPPORTED command 'menu color hotsel 1;7;37;40 #ffffffff #76a1d0ff *' - # UNSUPPORTED command 'menu color tabmsg * #ffffffff #00000000 *' - # UNSUPPORTED command 'menu color help 37;40 #ffdddd00 #00000000 none' - # UNSUPPORTED command 'menu vshift 12' - # UNSUPPORTED command 'menu rows 10' - # UNSUPPORTED command 'menu helpmsgrow 15' -# The command line must be at least one line from the bottom. - # UNSUPPORTED command 'menu cmdlinerow 16' - # UNSUPPORTED command 'menu timeoutrow 16' - # UNSUPPORTED command 'menu tabmsgrow 18' - # UNSUPPORTED command 'menu tabmsg Press ENTER to boot or TAB to edit a menu entry' -set timeout=5 - default='live' -menuentry 'Try Ubuntu without installing' --hotkey 't' --id 'live' { - if test x$grub_platform = xpc; then linux_suffix=16; else linux_suffix= ; fi - linux$linux_suffix '/'/'/casper/vmlinuz' file=/cdrom/preseed/ubuntu.seed boot=casper initrd=/casper/initrd.lz quiet splash -- - initrd$linux_suffix '/'/'/casper/initrd.lz' -} -menuentry 'Install Ubuntu' --hotkey 'i' --id 'live-install' { - if test x$grub_platform = xpc; then linux_suffix=16; else linux_suffix= ; fi - linux$linux_suffix '/'/'/casper/vmlinuz' file=/cdrom/preseed/ubuntu.seed boot=casper only-ubiquity initrd=/casper/initrd.lz quiet splash -- - initrd$linux_suffix '/'/'/casper/initrd.lz' -} -menuentry 'Check disc for defects' --hotkey 'c' --id 'check' { - if test x$grub_platform = xpc; then linux_suffix=16; else linux_suffix= ; fi - linux$linux_suffix '/'/'/casper/vmlinuz' boot=casper integrity-check initrd=/casper/initrd.lz quiet splash -- - initrd$linux_suffix '/'/'/casper/initrd.lz' -} -menuentry 'Test memory' --hotkey 'm' --id 'memtest' { - if test x$grub_platform = xpc; then linux_suffix=16; else linux_suffix= ; fi - linux$linux_suffix '/'/'/install/mt86plus' -} -menuentry 'Boot from first hard disk' --hotkey 'b' --id 'hd' { -# File (host)/@simplified_abs_top_srcdir@/tests/syslinux/ubuntu10.04/isolinux//gtk.cfg not found - # UNSUPPORTED command 'menu begin advanced' - # UNSUPPORTED command 'menu title Advanced options' - # UNSUPPORTED command 'menu color title * #FFFFFFFF *' - # UNSUPPORTED command 'menu color border * #00000000 #00000000 none' - # UNSUPPORTED command 'menu color sel * #ffffffff #76a1d0ff *' - # UNSUPPORTED command 'menu color hotsel 1;7;37;40 #ffffffff #76a1d0ff *' - # UNSUPPORTED command 'menu color tabmsg * #ffffffff #00000000 *' - # UNSUPPORTED command 'menu color help 37;40 #ffdddd00 #00000000 none' - # UNSUPPORTED command 'menu vshift 12' - # UNSUPPORTED command 'menu rows 10' - # UNSUPPORTED command 'menu helpmsgrow 15' -# The command line must be at least one line from the bottom. - # UNSUPPORTED command 'menu cmdlinerow 16' - # UNSUPPORTED command 'menu timeoutrow 16' - # UNSUPPORTED command 'menu tabmsgrow 18' - # UNSUPPORTED command 'menu tabmsg Press ENTER to boot or TAB to edit a menu entry' - root=hd0; - chainloader +1; -} -menuentry 'Back..' --hotkey 'b' --id 'mainmenu' { - # UNSUPPORTED command 'menu exit' -# File (host)/@simplified_abs_top_srcdir@/tests/syslinux/ubuntu10.04/isolinux//adgtk.cfg not found - # UNSUPPORTED command 'menu end' - # UNSUPPORTED entry type 0 -true; -} -menuentry 'Help' --hotkey 'h' --id 'help' { -#'@abs_top_srcdir@/tests/syslinux/ubuntu10.04/isolinux/'/'prompt.cfg' (host)@simplified_abs_top_srcdir@/tests/syslinux/ubuntu10.04/isolinux/prompt.cfg: - syslinux_configfile -r '/'/'/' -c '@abs_top_srcdir@/tests/syslinux/ubuntu10.04/isolinux/'/'' '@abs_top_srcdir@/tests/syslinux/ubuntu10.04/isolinux/'/'prompt.cfg' -} -menuentry 'menu' --id 'menu' { - # UNSUPPORTED command 'f1 f1.txt' - # UNSUPPORTED command 'f2 f2.txt' - # UNSUPPORTED command 'f3 f3.txt' - # UNSUPPORTED command 'f4 f4.txt' - # UNSUPPORTED command 'f5 f5.txt' - # UNSUPPORTED command 'f6 f6.txt' - # UNSUPPORTED command 'f7 f7.txt' - # UNSUPPORTED command 'f8 f8.txt' - # UNSUPPORTED command 'f9 f9.txt' - # UNSUPPORTED command 'f0 f10.txt' -#'@abs_top_srcdir@/tests/syslinux/ubuntu10.04/isolinux/'/'isolinux.cfg' (host)@simplified_abs_top_srcdir@/tests/syslinux/ubuntu10.04/isolinux/isolinux.cfg: - background_image '@abs_top_srcdir@/tests/syslinux/ubuntu10.04/isolinux//'/'splash.png' -# D-I config version 2.0 - # UNSUPPORTED command 'menu hshift 13' - # UNSUPPORTED command 'menu width 49' - # UNSUPPORTED command 'menu margin 8' - - # UNSUPPORTED command 'menu title Installer boot menu' - # UNSUPPORTED command 'menu color title * #FFFFFFFF *' - # UNSUPPORTED command 'menu color border * #00000000 #00000000 none' - # UNSUPPORTED command 'menu color sel * #ffffffff #76a1d0ff *' - # UNSUPPORTED command 'menu color hotsel 1;7;37;40 #ffffffff #76a1d0ff *' - # UNSUPPORTED command 'menu color tabmsg * #ffffffff #00000000 *' - # UNSUPPORTED command 'menu color help 37;40 #ffdddd00 #00000000 none' - # UNSUPPORTED command 'menu vshift 12' - # UNSUPPORTED command 'menu rows 10' - # UNSUPPORTED command 'menu helpmsgrow 15' -# The command line must be at least one line from the bottom. - # UNSUPPORTED command 'menu cmdlinerow 16' - # UNSUPPORTED command 'menu timeoutrow 16' - # UNSUPPORTED command 'menu tabmsgrow 18' - # UNSUPPORTED command 'menu tabmsg Press ENTER to boot or TAB to edit a menu entry' -set timeout=5 - default='vesamenu.c32' -menuentry 'Try Ubuntu without installing' --hotkey 't' --id 'live' { - if test x$grub_platform = xpc; then linux_suffix=16; else linux_suffix= ; fi - linux$linux_suffix '/'/'/casper/vmlinuz' file=/cdrom/preseed/ubuntu.seed boot=casper initrd=/casper/initrd.lz quiet splash -- - initrd$linux_suffix '/'/'/casper/initrd.lz' -} -menuentry 'Install Ubuntu' --hotkey 'i' --id 'live-install' { - if test x$grub_platform = xpc; then linux_suffix=16; else linux_suffix= ; fi - linux$linux_suffix '/'/'/casper/vmlinuz' file=/cdrom/preseed/ubuntu.seed boot=casper only-ubiquity initrd=/casper/initrd.lz quiet splash -- - initrd$linux_suffix '/'/'/casper/initrd.lz' -} -menuentry 'Check disc for defects' --hotkey 'c' --id 'check' { - if test x$grub_platform = xpc; then linux_suffix=16; else linux_suffix= ; fi - linux$linux_suffix '/'/'/casper/vmlinuz' boot=casper integrity-check initrd=/casper/initrd.lz quiet splash -- - initrd$linux_suffix '/'/'/casper/initrd.lz' -} -menuentry 'Test memory' --hotkey 'm' --id 'memtest' { - if test x$grub_platform = xpc; then linux_suffix=16; else linux_suffix= ; fi - linux$linux_suffix '/'/'/install/mt86plus' -} -menuentry 'Boot from first hard disk' --hotkey 'b' --id 'hd' { -# File (host)/@simplified_abs_top_srcdir@/tests/syslinux/ubuntu10.04/isolinux///gtk.cfg not found - # UNSUPPORTED command 'menu begin advanced' - # UNSUPPORTED command 'menu title Advanced options' - # UNSUPPORTED command 'menu color title * #FFFFFFFF *' - # UNSUPPORTED command 'menu color border * #00000000 #00000000 none' - # UNSUPPORTED command 'menu color sel * #ffffffff #76a1d0ff *' - # UNSUPPORTED command 'menu color hotsel 1;7;37;40 #ffffffff #76a1d0ff *' - # UNSUPPORTED command 'menu color tabmsg * #ffffffff #00000000 *' - # UNSUPPORTED command 'menu color help 37;40 #ffdddd00 #00000000 none' - # UNSUPPORTED command 'menu vshift 12' - # UNSUPPORTED command 'menu rows 10' - # UNSUPPORTED command 'menu helpmsgrow 15' -# The command line must be at least one line from the bottom. - # UNSUPPORTED command 'menu cmdlinerow 16' - # UNSUPPORTED command 'menu timeoutrow 16' - # UNSUPPORTED command 'menu tabmsgrow 18' - # UNSUPPORTED command 'menu tabmsg Press ENTER to boot or TAB to edit a menu entry' - root=hd0; - chainloader +1; -} -menuentry 'Back..' --hotkey 'b' --id 'mainmenu' { - # UNSUPPORTED command 'menu exit' -# File (host)/@simplified_abs_top_srcdir@/tests/syslinux/ubuntu10.04/isolinux///adgtk.cfg not found - # UNSUPPORTED command 'menu end' - # UNSUPPORTED entry type 0 -true; -} -menuentry 'Help' --hotkey 'h' --id 'help' { - # UNSUPPORTED command 'ui gfxboot bootlogo' -#'@abs_top_srcdir@/tests/syslinux/ubuntu10.04/isolinux//'/'prompt.cfg' (host)@simplified_abs_top_srcdir@/tests/syslinux/ubuntu10.04/isolinux/prompt.cfg: - syslinux_configfile -r '/'/'/' -c '@abs_top_srcdir@/tests/syslinux/ubuntu10.04/isolinux//'/'' '@abs_top_srcdir@/tests/syslinux/ubuntu10.04/isolinux//'/'prompt.cfg' -} -} -} diff --git a/thirdparty/grub-2.04/tests/syslinux_test.in b/thirdparty/grub-2.04/tests/syslinux_test.in deleted file mode 100644 index 4ea86390e..000000000 --- a/thirdparty/grub-2.04/tests/syslinux_test.in +++ /dev/null @@ -1,16 +0,0 @@ -#!@BUILD_SHEBANG@ - -set -e - -outfile="`mktemp "${TMPDIR:-/tmp}/tmp.XXXXXXXXXX"`" || exit 1 - -"@builddir@/grub-syslinux2cfg" -r "@abs_top_srcdir@/tests/syslinux/ubuntu10.04" "@abs_top_srcdir@/tests/syslinux/ubuntu10.04/isolinux/isolinux.cfg" -o "$outfile" - -echo "$outfile" - -if ! diff -u "$outfile" "@builddir@/tests/syslinux/ubuntu10.04_grub.cfg"; then - echo "Mismatch in ubuntu10.04" - exit 1; -fi - -exit 0 diff --git a/thirdparty/grub-2.04/tests/tar_test.in b/thirdparty/grub-2.04/tests/tar_test.in deleted file mode 100644 index 6e2f2de8b..000000000 --- a/thirdparty/grub-2.04/tests/tar_test.in +++ /dev/null @@ -1,10 +0,0 @@ -#!@BUILD_SHEBANG@ - -set -e - -if ! which tar >/dev/null 2>&1; then - echo "tar not installed; cannot test tar." - exit 77 -fi - -"@builddir@/grub-fs-tester" tarfs diff --git a/thirdparty/grub-2.04/tests/test_sha512sum.in b/thirdparty/grub-2.04/tests/test_sha512sum.in deleted file mode 100644 index 027092a8b..000000000 --- a/thirdparty/grub-2.04/tests/test_sha512sum.in +++ /dev/null @@ -1,36 +0,0 @@ -#! @BUILD_SHEBANG@ - -# create a randome file -file="`mktemp "${TMPDIR:-/tmp}/tmp.XXXXXXXXXX"`" || exit 1 -cat >$file <$outfile1 <$outfile2 - -SHA1=`cat $outfile1 | tr -d '\n' | cut -f1 -d\ ` -SHA2=`cat $outfile2 | cut -f1 -d\ ` - -if test "$SHA1" = "$SHA2"; then - rm -f ${outfile1} ${outfile2} - exit 0 -else - echo "GRUB sha512sum output did not match sha512sum output." - echo "See diff -u ${outfile1} ${outfile2}" - exit 1 -fi diff --git a/thirdparty/grub-2.04/tests/test_unset.in b/thirdparty/grub-2.04/tests/test_unset.in deleted file mode 100644 index 30f1a255c..000000000 --- a/thirdparty/grub-2.04/tests/test_unset.in +++ /dev/null @@ -1,10 +0,0 @@ -#! @builddir@/grub-shell-tester - -foo=one -echo $foo - -unset foo -echo $foo -echo ${foo} - - diff --git a/thirdparty/grub-2.04/tests/udf_test.in b/thirdparty/grub-2.04/tests/udf_test.in deleted file mode 100644 index fb92f0173..000000000 --- a/thirdparty/grub-2.04/tests/udf_test.in +++ /dev/null @@ -1,19 +0,0 @@ -#!@BUILD_SHEBANG@ - -set -e - -if [ "x$EUID" = "x" ] ; then - EUID=`id -u` -fi - -if [ "$EUID" != 0 ] ; then - exit 77 -fi - -if ! which mkudffs >/dev/null 2>&1; then - echo "mkudffs not installed; cannot test UDF." - exit 77 -fi - -"@builddir@/grub-fs-tester" udf - diff --git a/thirdparty/grub-2.04/tests/uhci_test.in b/thirdparty/grub-2.04/tests/uhci_test.in deleted file mode 100644 index f0eec5032..000000000 --- a/thirdparty/grub-2.04/tests/uhci_test.in +++ /dev/null @@ -1,51 +0,0 @@ -#! @BUILD_SHEBANG@ -# Copyright (C) 2013 Free Software Foundation, Inc. -# -# GRUB is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# GRUB is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with GRUB. If not, see . - -set -e -grubshell=@builddir@/grub-shell - -. "@builddir@/grub-core/modinfo.sh" - -case "${grub_modinfo_target_cpu}-${grub_modinfo_platform}" in - # PLATFORM: Don't mess with real devices when OS is active - *-emu) - exit 0;; - # FIXME: qemu gets bonito DMA wrong - mipsel-loongson) - exit 0;; - # PLATFORM: no USB on ARC and qemu-mips platforms - mips*-arc | mips*-qemu_mips) - exit 0;; - # FIXME: No native drivers are available for those - powerpc-ieee1275 | sparc64-ieee1275 | arm*-efi) - exit 0;; -esac - -imgfile="`mktemp "${TMPDIR:-/tmp}/tmp.XXXXXXXXXX"`" || exit 1 -outfile="`mktemp "${TMPDIR:-/tmp}/tmp.XXXXXXXXXX"`" || exit 1 - -echo "hello" > "$outfile" - -tar cf "$imgfile" "$outfile" - -if [ "$(echo "nativedisk; source '(usb0)/$outfile';" | "${grubshell}" --qemu-opts="-device ich9-usb-uhci1 -drive id=my_usb_disk,file=$imgfile,if=none -device usb-storage,drive=my_usb_disk" | tail -n 1)" != "Hello World" ]; then - rm "$imgfile" - rm "$outfile" - exit 1 -fi - -rm "$imgfile" -rm "$outfile" diff --git a/thirdparty/grub-2.04/tests/util/grub-fs-tester.in b/thirdparty/grub-2.04/tests/util/grub-fs-tester.in deleted file mode 100644 index bc14a05ca..000000000 --- a/thirdparty/grub-2.04/tests/util/grub-fs-tester.in +++ /dev/null @@ -1,1572 +0,0 @@ -#!@BUILD_SHEBANG@ - -set -e - -fs="$1" - -GRUBFSTEST="@builddir@/grub-fstest" - -tempdir=`mktemp -d "${TMPDIR:-/tmp}/tmp.XXXXXXXXXX"` || exit 1 - -# This wrapper is to ease insertion of valgrind or time statistics -run_it () { - LC_ALL=C "$GRUBFSTEST" "$@" -} - -range() { - range_counter="$1" - while test "$range_counter" -le "$2"; do - echo "$range_counter" - range_counter="$((range_counter + $3))" - done -} - -powrange() { - range_counter="$1" - while test "$range_counter" -le "$2"; do - echo "$range_counter" - range_counter="$((range_counter * 2))" - done -} - -run_grubfstest () { - need_images= - for i in $(range 0 $((NEED_IMAGES_N-1)) 1); do - need_images="$need_images $FSIMAGEP${i}.img"; - done - - run_it -c $NEED_IMAGES_N $need_images "$@" -} - -# OS LIMITATION: GNU/Linux has no AFS support, so we use a premade image and a reference tar file. I.a. no multiblocksize test - -MINLOGSECSIZE=9 -MAXLOGSECSIZE=9 -case x"$fs" in - xntfs*) - MINLOGSECSIZE=8 - MAXLOGSECSIZE=12;; - xvfat*|xmsdos*) - MINLOGSECSIZE=9 - # OS LIMITATION: It could go up to 32768 but Linux rejects sector sizes > 4096 - MAXLOGSECSIZE=12;; - xext*) - MINLOGSECSIZE=8 - MAXLOGSECSIZE=12;; - xbtrfs*) - MINLOGSECSIZE=8 - # OS LIMITATION: It could go up to 32768 but Linux rejects sector sizes > 4096 - MAXLOGSECSIZE=12;; - xxfs) - MINLOGSECSIZE=9 - # OS LIMITATION: GNU/Linux doesn't accept > 4096 - MAXLOGSECSIZE=12;; - xxfs_crc) - MINLOGSECSIZE=9 - # OS LIMITATION: GNU/Linux doesn't accept > 1024 - MAXLOGSECSIZE=10;; - xzfs*) - # OS LIMITATION: zfs-fuse hangs when creating zpool with sectors <=256B. - MINLOGSECSIZE=9 - # OS LIMITATION: zfs-fuse fails with >= 32K sectors. - # OS limitation: zfs-fuse always uses ashift=9 with loop devices - MAXLOGSECSIZE=9;; -esac -for LOGSECSIZE in $(range "$MINLOGSECSIZE" "$MAXLOGSECSIZE" 1); do - SECSIZE="$((1 << LOGSECSIZE))" - MINBLKSIZE=512 - MAXBLKSIZE=512 - BLKSTEP=0 - case x"$fs" in - xntfs*) - MINBLKSIZE=$SECSIZE - MAXBLKSIZE=65536 - if [ x"$SECSIZE" = x256 ]; then - MINBLKSIZE=512 - MAXBLKSIZE=32768 - fi - ;; - xvfat* | xmsdos*) - MINBLKSIZE=$SECSIZE - MAXBLKSIZE=$((128*SECSIZE)) - ;; - xexfat*) - MINBLKSIZE=$SECSIZE - # It could go further but it requires more and more space - MAXBLKSIZE=8286208 - ;; - xhfs) - MINBLKSIZE=512 - # OS LIMITATION: should be 1048576 but linux hangs on unmnount with - # >= 524288 - MAXBLKSIZE=262144 - ;; - xhfsplus | xhfsplus_casesens | xhfsplus_wrap) - MINBLKSIZE=512 - MAXBLKSIZE=1048576 - ;; - xnilfs2) - # nilfs2 supports blocksizes from 1024 to 4096 - # but non-4096 results in kernel oops in some cases, - # avoid it. - MINBLKSIZE=4096 - MAXBLKSIZE=4096 - ;; - xsfs*) - MINBLKSIZE=512 - MAXBLKSIZE=4096 - ;; - xaffs | xaffs_intl) - MINBLKSIZE=512 - MAXBLKSIZE=4096 - ;; - xreiserfs*) - MINBLKSIZE=512 - # OS LIMITATION: 8192 isn't supported. - MAXBLKSIZE=4096 - ;; - x"mdraid"*) - MINBLKSIZE=4096 - # OS LIMITATION: Linux oopses with >=32768K - MAXBLKSIZE=$((16384*1024)) - ;; - x"lvm_raid1"* | x"lvm_raid4" | x"lvm_raid5" | x"lvm_raid6") - # OS LIMITATION: Linux crashes with less than 16384 - MINBLKSIZE=16384 - # Could go further but what's the point? - MAXBLKSIZE=$((65536*1024)) - ;; - x"lvm_mirrorall") - MINBLKSIZE=2048 - # Could go further but what's the point? - MAXBLKSIZE=$((65536*1024)) - ;; - x"lvm_mirror1") - MINBLKSIZE=4096 - # Could go further but what's the point? - MAXBLKSIZE=$((65536*1024)) - ;; - x"lvm_stripe") - MINBLKSIZE=4096 - # Could go further but what's the point? - MAXBLKSIZE=$((65536*1024)) - ;; - x"lvm"*) - MINBLKSIZE=1024 - # Could go further but what's the point? - MAXBLKSIZE=$((65536*1024)) - ;; - xext4_encrypt) - # OS LIMITATION: Linux currently only allows the 'encrypt' feature - # in combination with block_size = PAGE_SIZE (4096 bytes on x86). - MINBLKSIZE=$(getconf PAGE_SIZE) - MAXBLKSIZE=$MINBLKSIZE - ;; - xext*) - MINBLKSIZE=1024 - if [ $MINBLKSIZE -lt $SECSIZE ]; then - MINBLKSIZE=$SECSIZE - fi - MAXBLKSIZE=4096 - ;; - xsquash*) - MINBLKSIZE=4096 - MAXBLKSIZE=1048576;; - xxfs|xf2fs) - MINBLKSIZE=$SECSIZE - # OS Limitation: GNU/Linux doesn't accept > 4096 - MAXBLKSIZE=4096;; - xxfs_crc) - # OS Limitation: GNU/Linux doesn't accept != 1024 - MINBLKSIZE=1024 - MAXBLKSIZE=1024;; - xudf) - MINBLKSIZE=1024 - MAXBLKSIZE=4096;; - xbfs) - MINBLKSIZE=1024 - MAXBLKSIZE=8192;; - xufs*) - MINBLKSIZE=4096 - # OS Limitation: Linux rejects 65536 blocks. - MAXBLKSIZE=32768;; - xminix3) - # OS LIMITATION: Linux rejects non-power-of-two blocks. - # OS LIMITATION: Linux rejects > 4096. - MINBLKSIZE=1024 - MAXBLKSIZE=4096;; - esac - if test "$BLKSTEP" -eq 0; then - blksizes="$(powrange "$MINBLKSIZE" "$MAXBLKSIZE")" - else - blksizes="$(range "$MINBLKSIZE" "$MAXBLKSIZE" "$BLKSTEP")" - fi - for BLKSIZE in $blksizes; do - MAXDEVICES=1 - MINDEVICES=1 - export fs - case x"$fs" in - x"zfs_raidz" | x"zfs_stripe" | x"zfs_mirror" | xbtrfs_raid0 \ - | xbtrfs_raid1 | x"mdraid"*"_raid4" | x"mdraid"*"_raid5" \ - | x"mdraid"*"_linear" \ - | x"mdraid"*"_raid10" | xlvm_raid1* | xlvm_mirror1 | xlvm_mirrorall) - MINDEVICES=2 - MAXDEVICES=7 - ;; - xbtrfs_raid10) - MINDEVICES=4 - MAXDEVICES=7 - ;; - x"zfs_raidz2"| xlvm_raid5 | xlvm_raid4) - MINDEVICES=3 - MAXDEVICES=7;; - x"zfs_raidz3" | x"mdraid"*"_raid6") - MINDEVICES=4 - MAXDEVICES=7;; - xlvm_raid6) - MINDEVICES=5 - MAXDEVICES=7;; - x"mdraid"*"_raid0" | x"mdraid"*"_raid1" | x"lvm" | xlvm_stripe) - MINDEVICES=1 - MAXDEVICES=7;; - esac - - for NDEVICES in $(range "$MINDEVICES" "$MAXDEVICES" 1); do - export NDEVICES - unset FSIMAGEP - FSIMAGEP="${tempdir}/${fs}_${SECSIZE}_${BLKSIZE}_${NDEVICES}_" - export FSIMAGEP - unset NEED_IMAGES; - - case x$fs in - # RAID 1 has to work with even one device of the set. - xzfs_mirror | x"mdraid"*"_raid1" | xlvm_mirrorall | xlvm_raid1all) - NEED_IMAGES_N=1;; - # Degrade raidz by removing 3 devices - xzfs_raidz3) - NEED_IMAGES_N=$((NDEVICES-3));; - # Degrade raidz by removing 2 devices - xzfs_raidz2 | x"mdraid"*"_raid6" | x"lvm_raid6") - NEED_IMAGES_N=$((NDEVICES-2));; - # Degrade raidz and btrfs RAID1 by removing one device - xbtrfs_raid1 | xbtrfs_raid10 | xzfs_raidz | x"mdraid"*"_raid4" \ - | x"mdraid"*"_raid5" | x"mdraid"*"_raid10" | xlvm_mirror1 \ - | x"lvm_raid1" | x"lvm_raid4" | x"lvm_raid5") - NEED_IMAGES_N=$((NDEVICES-1));; - *) - NEED_IMAGES_N=$NDEVICES;; - esac - export NEED_IMAGES_N - - MNTPOINTRO="${tempdir}/${fs}_ro" - MNTPOINTRW="${tempdir}/${fs}_rw" - MOUNTOPTS="" - MOUNTFS="$fs" - MASTER="${tempdir}/master" - FSLABEL="grub_;/testé莭ð¯¦ð¯¦™ðŸ˜ÐºÐ¸Ñ€Ð¸Ñ‚i urewfceniuewruevrewnuuireurevueurnievrewfnerfcnevirivinrewvnirewnivrewiuvcrewvnuewvrrrewniuerwreiuviurewiuviurewnuvewnvrenurnunuvrevuurerejiremvreijnvcreivire nverivnreivrevnureiorfnfrvoeoiroireoireoifrefoieroifoireoifoirefoireoifoijfoirereoireoivoioirevoinvoinreoinvnoieoinreoinveoinveoinreoinvoineoinoinoineoinernoiveoinvreoiioewdioewoirvnoireoivfoirewfewoifoijewoijfoijewfoijfewoijoijoijoijoijoijoijfewceniuewruevrewnuuireurevueurnievrewfnerfcnevirivinrewvnirewnivrewiuvcrewvnuewvrrrewniuerwreiuviurewiuviurewnuvewnvrenurnunuvrevuurerejiremvreijnvcreivire nverivnreivrevnureiorfnfrvoeoiroireoireoifrefoieroifoireoifoirefoireoifoijfoirereoireoivoioirevoinvoinreoinvnoieoinreoinveoinveoinreoinvoineoinoinoineoinernoiveoinvreoiioewdioewoirvnoireoivfoirewfewoifoijewoijfoijewfoijfewoijoijoijoijoijoijoijfewrewfceniuewruevrewnuuireurevueurnievrewfnerfcnevirivinrewvnirewnivrewiuvcrewvnuewvrrrewniuerwreiuviurewiuviurewnuvewnvrenurnunuvrevuurerejiremvreijnvcreivire nverivnreivrevnureiorfnfrvoeoiroireoireoifrefoieroifoireoifoirefoireoifoijfoirereoireoivoioirevoinvoinreoinvnoieoinreoinveoinveoinreoinvoineoinoinoineoinernoiveoinvreoiioewdioewoirvnoireoivfoirewfewoifoijewoijfoijewfoijfewoijoijoijoijoijoijoijfewceniuewruevrewnuuireurevueurnievrewfnerfcnevirivinrewvnirewnivrewiuvcrewvnuewvrrrewniuerwreiuviurewiuviurewnuvewnvrenurnunuvrevuurerejiremvreijnvcreivire nverivnreivrevnureiorfnfrvoeoiroireoireoifrefoieroifoireoifoirefoireoifoijfoirereoireoivoioirevoinvoinreoinvnoieoinreoinveoinveoinreoinvoineoinoinoineoinernoiveoinvreoiioewdioewoirvnoireoivfoirewfewoifoijewoijfoijewfoijfewoijoijoijoijoijoijoijfew" - CFILESRC= - for cand in /usr/share/dict/american-english /usr/share/dict/linux.words /data/data/com.termux/files/usr/share/hunspell/en_US.dic; do - if test -f "$cand" ; then - CFILESRC="$cand" - break - fi - done - if test "$CFILESRC" = "" ; then - echo "Couldn't find compressible file" >&2 - exit 1 - fi - case x"$fs" in - # FS LIMITATION: 8.3 names - xmsdos*) - CFILE="american.eng";; - xiso9660) - CFILE="american_english";; - *) - CFILE="american-english";; - esac - # OS LIMITATION: Limited by NAME_MAX (usually 255) in GNU/Linux - LONGNAME="qwertzuiopasdfghjklyxcvbnm1234567890qwertzuiopasdfghjklyxcvbnm1234567890oiewqfiewioqoiqoiurqruewqoiuwoieoiiuewqroreqiufieiuwrnureweriuvceoiroiewqoiricdsalkcndsakfirefoiwqeoircorejwoijfreoijojoiewjfwnfcoirenfoirefnreoifenoiwfnoi" - rm -rf "$MASTER" - - case x"$fs" in - # FS LIMITATION: HFS+ label is at most 255 UTF-16 chars - # OS LIMITATION: Linux HFS+ tools check UTF-8 length and don't - # handle out-of-BMP characters - x"hfsplus" | x"hfsplus_casesens" | x"hfsplus_wrap") - FSLABEL="grub_;/testéäŒä“ä•киритi urewfceniuewruevrewnuuireurevueurnievrewfnerfcnevirivinrewvnirewnivrewiuvcrewvnuewvrrrewniuerwreiuviurewiuviurewnuvewnvrenurnunuvrevuurerejiremvreijnvcreivire nverivnreivrevnureiorfnfrvoeoiroireoireoifrefoieroifoireoifoiq" - ;; - # FS LIMITATION: btrfs label is at most 255 UTF-8 chars - x"btrfs"*) - FSLABEL="grub_;/testé莭ð¯¦ðŸ˜ÐºÐ¸Ñ€Ð¸Ñ‚i urewfceniuewruevrewnuuireurevueurnievrewfnerfcnevirivinrewvnirewnivrewiuvcrewvnuewvrrrewniuerwreiuviurewiuviurewnuvewnvrenurnunuvrevuurerejiremvreijnvcreivire nverivnreivrevnureiorfnfrvoeoiroireoireoifrefoieroifoireoi";; - - # FS LIMITATION: f2fs label is at most 512 UTF-16 chars - x"f2fs") - FSLABEL="grub_;/testéäŒä“ä•киритiurewfceniuewruewnuuireurevueurnievrewfnerfcnevirivinrewvnirewnivrewiuvcrewvnuewvrrrewniuerwreiuviurewiuviurewnuvewnvrenurnunuvrevuurerejiremvreijnvvcreivire nverivnreivrevnureiorfnfrvoeoiroireoireoifrefoieroifoirvcreivire nverivnreivrevnureiorfnfrvoeoiroireoireoifrefoieroifoircreivire nverivnreivrevnureiorfnfrvoeoiroireoireoifrefoieroifoireoifoiq";; - - # FS LIMITATION: exfat is at most 15 UTF-16 chars - x"exfat") - FSLABEL="géт ;/莭ð¯¦ðŸ˜ÐºÐ¸Ñ€";; - # FS LIMITATION: ntfs label is at most ?? UTF-16 chars - x"ntfs"*) - FSLABEL="grub_;/testéтi u莭ðŸ˜ð¯¦™ÐºÐ¸Ñ€Ð¸rewfceniuewruevrewnuuireurevueurnievrewfnerfcnevirivinrewvniwnivrewiuvcrewvnuewvrrrewniureifiuewifjiww";; - # FS LIMITATION: nilfs2 label is at most 80 UTF-8 characters - x"nilfs2") - FSLABEL="grub_;/testéтi uðŸ˜ð¯¦ð¯¦™ÐºÐ¸Ñ€Ð¸rewfceniuewruevrewnuuireurevueurnievrewfne";; - # FS LIMITATION: afs and iso9660 label is at most 32 UTF-8 characters - x"afs" | xiso9660 | xrockridge | xrockridge_joliet\ - | xiso9660_1999 | xrockridge_1999 | xrockridge_joliet_1999) - FSLABEL="gr_;/é莭ð¯¦ðŸ˜ÐºÐ¸Ñ€Ð¸Ñ‚ u";; - # FS LIMITATION: bfs label is at most 32 UTF-8 characters - # OS LIMITATION: bfs label can't contain ; or / - x"bfs") - FSLABEL="grub_é莭ð¯¦ðŸ˜ÐºÐ¸Ñ€Ð¸Ñ‚ u";; - # FS LIMITATION: Joliet label is at most 16 UTF-16 characters - # OS LIMITATION: xorriso doesn't handle out-of-BMP characters - xjoliet | xjoliet_1999) - FSLABEL="g;/_éäŒä“ä•䎛䎾ä´ÐºÐ¸Ñ‚ u" - #FSLABEL="g;/_é莭ð¯¦ðŸ˜ÐºÐ¸Ñ‚ u" - ;; - # FS LIMITATION: reiserfs, extN and jfs label is at most 16 UTF-8 characters - x"reiserfs_old" | x"reiserfs" | x"ext"* | x"lvm"* | x"mdraid"* | x"jfs" | x"jfs_caseins") - FSLABEL="g;/éт 莭ðŸ˜";; - # FS LIMITATION: No underscore, space, semicolon, slash or international characters in UFS* in label. Limited to 32 UTF-8 characters - x"ufs1" | x"ufs1_sun" | x"ufs2") - FSLABEL="grubtest""ieurrucnenreeiurueurewf";; - # FS LIMITATION: XFS label is at most 12 UTF-8 characters - x"xfs"|x"xfs_crc") - FSLABEL="géт ðŸ˜Ðº";; - # FS LIMITATION: FAT labels limited to 11 characters, no international characters or lowercase - x"vfat"* | xmsdos*) - FSLABEL="GRUBTEST ;_";; - # FS LIMITATION: AFFS is latin1. At most 29 characters - x"affs" | xaffs_intl) - FSLABEL="grub_tt? #*w;/e£@¡¤½¾{[]}<>.,";; - # FS LIMITATION: SFS is latin1. At most 30 characters - x"sfs"*) - FSLABEL="GRUB tt öäüé;/àèç åø¿ª©þð׫»µ¬";; - # FS LIMITATION: HFS is Mac-Roman. At most 27 characters - x"hfs") - FSLABEL="grub_t;/estéàèèéie fiucnree";; - # FS LIMITATION: UDF label is either up to 127 latin1 characters or 63 UTF-16 ones - # OS LIMITATION: Linux UDF tools force ASCII label ... - x"udf") - FSLABEL="grub_;/testurewfceniuewruevrewnuuireurevueurnievr";; - # FS LIMITATION: ZFS doesn't accept non-ASCII in label - # FIXME: since this is used as a path component for mount it's very limited in length - xzfs_* | xzfs) - FSLABEL="grub_testieufiue r";; - esac - case x"$fs" in - xmdraid*) - DISKSIZE=314572800;; - xlvm*) - LVMBLKMUL=$(((5800 * 1048576) / (8 * BLKSIZE * NDEVICES))) - DISKSIZE=$((8*BLKSIZE*LVMBLKMUL));; - # FS LIMITATION: some fs have disk size limit - x"vfat12" | xmsdos12) - DISKSIZE=$((4000*BLKSIZE));; - x"vfat12a" | xmsdos12a) - if [ $BLKSIZE -ge 2048 ]; then - DISKSIZE=$((2500*BLKSIZE)) - else - DISKSIZE=$((3000*BLKSIZE)) - fi - if [ $DISKSIZE -gt $((60000*SECSIZE)) ]; then - DISKSIZE=$((60000*SECSIZE)) - fi;; - x"vfat16" | xmsdos16) - DISKSIZE=$((65000*BLKSIZE));; - x"vfat16a" | xmsdos16a) - DISKSIZE=$((60000*SECSIZE)) - ;; - *) - DISKSIZE=10737418240;; - esac - - if [ $DISKSIZE -ge $(((5800/NDEVICES)*1048576)) ]; then - DISKSIZE=$(((5800/NDEVICES)*1048576)) - fi - - case x"$fs" in - xvfat* | xmsdos* | xexfat* | xhfs | xhfsplus | xhfsplus_wrap | xaffs \ - | xaffs_intl | xjfs_caseins | xsfs_caseins \ - | xzfs_caseins | xiso9660) - CASESENS=n;; - *) - CASESENS=y;; - esac - - BIGBLOCKCNT=$((5000 * 1048576)) - case x"$fs" in - # FS LIMITATION: small filesystems - x"vfat12" | xmsdos12) - if [ $BLKSIZE -le 4096 ]; then - BIGBLOCKCNT=0 - elif [ $BLKSIZE = 8192 ]; then - BIGBLOCKCNT=1500000 - else - BIGBLOCKCNT=$((2000*BLKSIZE)) - fi - ;; - x"vfat12a" | xmsdos12a) - if [ $BLKSIZE -le 4096 ] || [ $((128*SECSIZE)) = $BLKSIZE ]; then - BIGBLOCKCNT=0 - else - BIGBLOCKCNT=700000 - fi;; - x"vfat16a" | xmsdos16a) - if [ $((128*SECSIZE)) = $BLKSIZE ]; then - BIGBLOCKCNT=0 - else - BIGBLOCKCNT=$((2500*SECSIZE)) - fi - ;; - x"vfat16" | xmsdos16) - BIGBLOCKCNT=$((25000 * BLKSIZE)) - if [ $BIGBLOCKCNT -gt 4294967295 ]; then - BIGBLOCKCNT=4294967295 - fi - ;; - x"minix") - BIGBLOCKCNT=30000000;; - - xexfat) - # Big blocks waste really a lot of space. - # Not much is left. - if [ $BLKSIZE = 2097152 ]; then - BIGBLOCKCNT=4500000000 - fi - if [ $BLKSIZE = 4194304 ]; then - BIGBLOCKCNT=3500000000 - fi - ;; - # FS LIMITATION: romfs image is limited to 4G. - x"romfs") - BIGBLOCKCNT=$((4000 * 1048576));; - # FS LIMITATION: These FS have uint32 as file size field - x"vfat"* | xmsdos* | x"cpio_crc" | x"cpio_newc" | x"cpio_bin" | x"cpio_hpbin" | xsfs*) - BIGBLOCKCNT=4294967295;; - # FS LIMITATION: These FS have int32 as file size field - # FIXME: not so sure about AFFS - # OS LIMITATION: minix2/minix3 could be formatted in a way to permit more. - x"minix3" | x"minix2" | x"hfs"| x"affs" | xaffs_intl | xreiserfs_old | xext2_old) - BIGBLOCKCNT=$((16#7fffffff));; - - # FS LIMITATION: redundant storage - # We have only limited space. Mirroring multiplies it very effectively. - xmdraid* | xlvm* | xzfs_mirror | xbtrfs_raid1) - BIGBLOCKCNT=$((100 * 1048576));; - # We already test the FS for big files separately. Save some time here. - x"zfs_raid"* | x"zfs_stripe"* | x"zfs_mirror"* | x"btrfs_raid"*) - BIGBLOCKCNT=$((100 * 1048576));; - - # OS LIMITATION: bfs_fuse bugs beyond that - xbfs) - BIGBLOCKCNT=$((800 * 1048576));; - esac - - NOSYMLINK=n - case x"$fs" in - # FS LIMITATION: no symlinks on FAT, exFAT, HFS, plain ISO9660 and Joliet - # OS LIMITATION: ntfs-3g creates interix symlinks which aren't real symlinks - x"vfat"* | xmsdos* | x"hfs" | x"exfat" | x"ntfs"* \ - | xiso9660 | xjoliet| xiso9660_1999 | xjoliet_1999) - NOSYMLINK=y;; - esac - NOHARDLINK=n - case x"$fs" in - # FS LIMITATION: no hardlinks on BFS, exfat, fat, hfs and SFS - xbfs | xexfat | x"vfat"* | xmsdos* | xhfs | xsfs | xsfs_caseins) - NOHARDLINK=y;; - # GRUB LIMITATION: no hardlink support on newc and hfs+ - xcpio_crc | xcpio_newc | xhfsplus*) - NOHARDLINK=y;; - esac - - # FS LIMITATION: some filesystems limit file name size - case x"$fs" in - x"cpio_ustar") - LONGNAME="`echo $LONGNAME |head -c 99`";; - x"hfs") - LONGNAME="`echo $LONGNAME |head -c 31`";; - x"minix" | x"minix2" | x"affs" | xaffs_intl | xiso9660) - LONGNAME="`echo $LONGNAME |head -c 30`";; - x"sfs"*) - LONGNAME="`echo $LONGNAME |head -c 105`";; - x"minix3") - LONGNAME="`echo $LONGNAME |head -c 60`";; - x"udf") - LONGNAME="`echo $LONGNAME |head -c 192`";; - # GRUB LIMITATION: GRUB prefers Joliet over ISO9660:1999 - xjoliet | xjoliet_1999) - LONGNAME="`echo $LONGNAME |head -c 103`";; - xiso9660_1999) - LONGNAME="`echo $LONGNAME |head -c 207`";; - # FS LIMITATION: 8.3 - xmsdos*) - LONGNAME="qwertzui.opa";; - esac - NOFILETIME=n - NOFSTIME=n - case x"$fs" in - # FIXME: Not sure about BtrFS, NTFS, JFS, AFS, UDF and SFS. Check it. - # FS LIMITATION: as far as I know those FS don't store their last modification date. - x"jfs_caseins" | x"jfs" | x"xfs" | x"xfs_crc" | x"btrfs"* | x"reiserfs_old" | x"reiserfs" \ - | x"bfs" | x"afs" | x"f2fs" \ - | x"tarfs" | x"cpio_"* | x"minix" | x"minix2" \ - | x"minix3" | x"ntfs"* | x"udf" | x"sfs"*) - NOFSTIME=y;; - # OS LIMITATION: Linux doesn't update fstime. - # OS LIMITATION: Linux apparently uses localtime instead of UTC - xhfs) - NOFILETIME=y; NOFSTIME=y;; - # GRUB LIMITATION: FAT and exFAT use localtime. Unusable for GRUB - x"vfat"* | x"msdos"* | x"exfat") - NOFILETIME=y; NOFSTIME=y;; - # FS LIMITATION: romfs has no timestamps. - x"romfs") - NOFILETIME=y; NOFSTIME=y;; - esac - - NOFSLABEL=n - case x"$fs" in - # FS LIMITATION: these filesystems have no label. - x"cpio_"* | x"tarfs" | x"squash4_"* | x"minix" | x"minix2" \ - | x"minix3" | xreiserfs_old) - NOFSLABEL=y;; - esac - - PDIRCOMPNUM=210 - PDIR2COMPNUM=210 - - case x$fs in - # OS LIMITATION: bfs_fuse bugs beyond that - xbfs) - PDIRCOMPNUM=10 - PDIR2COMPNUM=10;; - # OS LIMITATION: Linux supports only inline symlinks - xudf) - if [ $BLKSIZE = 1024 ]; then - PDIR2COMPNUM=113 - fi ;; - # FS LIMITATION: at most 255 on path length - # FS LIMITATION: at most 100 on symlink length - xcpio_ustar) - PDIRCOMPNUM=84 - PDIR2COMPNUM=30;; - # OS LIMITATION: Linux supports only symlink at most one block long on reiserfs - xreiserfs | xreiserfs_old) - if [ $BLKSIZE = 512 ]; then - PDIR2COMPNUM=114 - fi ;; - # FS LIMITATION: SFS assumes that symlink - # with header fit in one block. - # FIXME: not sure about it. - xsfs | xsfs_caseins) - if [ $BLKSIZE = 512 ]; then - PDIR2COMPNUM=147 - fi ;; - # FS LIMITATION: AFFS assumes that symlink - # with rather larger header fit in one block. - # FIXME: not sure about it. - xaffs | xaffs_intl) - if [ $BLKSIZE = 512 ]; then - PDIR2COMPNUM=97 - fi ;; - esac - - - PDIR="" - # OS LIMITATION: Limited by PATH_MAX (usually 1024) - for i in $(range 0 $((PDIRCOMPNUM-1)) 1); do - PDIR="$PDIR/$i"; - if test $((i%3)) = 0; then - PDIR="$PDIR/" - fi - done - - PDIR2="" - # OS LIMITATION: Limited by PATH_MAX (usually 1024) - for i in $(range 0 $((PDIR2COMPNUM-1)) 1); do - PDIR2="${PDIR2}/$i"; - if test $((i%3)) = 0; then - PDIR2="${PDIR2}/" - fi - done - - PFIL="p.img" - - unset LODEVICES - GENERATED=n - LODEVICES= - MOUNTDEVICE= - - case x"$fs" in - x"tarfs" | x"cpio_"*| x"ziso9660" | x"romfs" | x"squash4_"*\ - | x"iso9660" | xjoliet | xrockridge | xrockridge_joliet \ - | x"iso9660_1999" | xjoliet_1999 | xrockridge_1999 \ - | xrockridge_joliet_1999) - MNTPOINTRW="$MASTER" - MNTPOINTRO="$MASTER" - GENERATED=y - mkdir -p "$MASTER";; - # No mkfs for GNU/Linux. Just unpack preformatted empty image - *) - mkdir -p "$MNTPOINTRW" - mkdir -p "$MNTPOINTRO" - for i in $(range 0 $((NDEVICES-1)) 1); do - dd if=/dev/zero of="$FSIMAGEP${i}.img" count=1 bs=1 seek=$((DISKSIZE-1)) &> /dev/null - LODEVICE=$(losetup --find --show "$FSIMAGEP${i}.img") - LODEVICES="$LODEVICES $LODEVICE" - if test "$i" = 0; then - MOUNTDEVICE="$LODEVICE" - fi - done ;; - esac - - case x"$fs" in - x"afs") - ;; - x"btrfs") - "mkfs.btrfs" -s $SECSIZE -L "$FSLABEL" "${MOUNTDEVICE}" ;; - x"btrfs_zlib" | x"btrfs_lzo" | x"btrfs_zstd") - "mkfs.btrfs" -s $SECSIZE -L "$FSLABEL" "${MOUNTDEVICE}" - MOUNTOPTS="compress=${fs/btrfs_/}," - MOUNTFS="btrfs" - ;; - x"btrfs_raid0") - "mkfs.btrfs" -s $SECSIZE -d raid0 -m raid0 -L "$FSLABEL" $LODEVICES - MOUNTFS="btrfs" - ;; - x"btrfs_raid1") - "mkfs.btrfs" -s $SECSIZE -d raid1 -m raid1 -L "$FSLABEL" $LODEVICES - MOUNTFS="btrfs" - ;; - x"btrfs_raid10") - "mkfs.btrfs" -s $SECSIZE -d raid10 -m raid10 -L "$FSLABEL" $LODEVICES - MOUNTFS="btrfs" - ;; - x"btrfs_single") - "mkfs.btrfs" -s $SECSIZE -d single -L "$FSLABEL" $LODEVICES - MOUNTFS="btrfs" - ;; - x"exfat") - "mkfs.$fs" -s $((BLKSIZE/512)) -n "$FSLABEL" "${MOUNTDEVICE}" - MOUNTOPTS="iocharset=utf8," - MOUNTFS="exfat-fuse";; - x"minix") - "mkfs.minix" "${MOUNTDEVICE}" - ;; - # mkfs.hfs and mkfs.hfsplus don't fill UUID. - x"hfsplus") - "mkfs.hfsplus" -b $BLKSIZE -v "$FSLABEL" "${MOUNTDEVICE}" - dd if=/dev/urandom of="${MOUNTDEVICE}" bs=1 seek=$((16#468)) conv=notrunc count=8 ;; - x"hfsplus_wrap") - "mkfs.hfsplus" -w -b $BLKSIZE -v "$FSLABEL" "${MOUNTDEVICE}" - dd if=/dev/urandom of="${MOUNTDEVICE}" bs=1 seek=$((16#468)) conv=notrunc count=8 - MOUNTFS="hfsplus";; - x"hfsplus_casesens") - "mkfs.hfsplus" -s -b $BLKSIZE -v "$FSLABEL" "${MOUNTDEVICE}" - dd if=/dev/urandom of="${MOUNTDEVICE}" bs=1 seek=$((16#468)) conv=notrunc count=8 - MOUNTFS="hfsplus";; - x"hfs") - "mkfs.hfs" -b $BLKSIZE -v "`echo $FSLABEL |recode utf8..macroman`" -h "${MOUNTDEVICE}" - dd if=/dev/urandom of="${MOUNTDEVICE}" bs=1 seek=$((16#474)) conv=notrunc count=8 - MOUNTOPTS="iocharset=utf8,codepage=macroman," - ;; - x"vfat"*|xmsdos*) - BITS="${fs/vfat/}" - BITS="${BITS/msdos/}" - if [ "x${BITS:2:1}" = xa ]; then - A=-A - else - A= - fi - "mkfs.vfat" -a $A -S $SECSIZE -s $((BLKSIZE/SECSIZE)) -F "${BITS:0:2}" -n "$FSLABEL" "${MOUNTDEVICE}" - MOUNTOPTS="iocharset=utf8,codepage=437," - MOUNTFS="$(echo "$fs"|sed 's,[0-9]*a\?$,,')";; - x"minix2") - "mkfs.minix" -v "${MOUNTDEVICE}" - MOUNTFS="minix";; - x"minix3") - "mkfs.minix" -B $BLKSIZE -3 "${MOUNTDEVICE}" - MOUNTFS="minix";; - x"ntfs"*) - "mkfs.ntfs" -s "$SECSIZE" -c "$BLKSIZE" -L "$FSLABEL" -Q -q "${MOUNTDEVICE}" - MOUNTOPTS="iocharset=utf8,compression," - MOUNTFS="ntfs-3g";; - x"udf") - "mkudffs" --utf8 -b $BLKSIZE --lvid="$FSLABEL" "${MOUNTDEVICE}" - MOUNTOPTS="iocharset=utf8,bs=$BLKSIZE,";; - x"ufs2") - "mkfs.ufs" -b $BLKSIZE -L "$FSLABEL" -O 2 "${MOUNTDEVICE}" - MOUNTOPTS="ufstype=ufs2," - MOUNTFS="ufs";; - x"ufs1") - "mkfs.ufs" -b $BLKSIZE -L "$FSLABEL" -O 1 "${MOUNTDEVICE}" - MOUNTOPTS="ufstype=44bsd," - MOUNTFS="ufs";; - x"ufs1_sun") - "mkfs.ufs" -b $BLKSIZE -L "$FSLABEL" -O 1 "${MOUNTDEVICE}" - MOUNTOPTS="ufstype=sun," - MOUNTFS="ufs";; - x"zfs") - "zpool" create -R "$MNTPOINTRW" "$FSLABEL" "${MOUNTDEVICE}" - sleep 1 - "zfs" create "$FSLABEL"/"grub fs" - sleep 1;; - x"zfs_caseins") - "zpool" create -R "$MNTPOINTRW" "$FSLABEL" "${MOUNTDEVICE}" - sleep 1 - "zfs" create -o casesensitivity=insensitive "$FSLABEL"/"grub fs" - sleep 1;; - x"zfs_lzjb" | xzfs_gzip | xzfs_zle) - "zpool" create -O compression=${fs/zfs_/} -R "$MNTPOINTRW" "$FSLABEL" "${MOUNTDEVICE}" - sleep 1 - "zfs" create -o compression=${fs/zfs_/} "$FSLABEL"/"grub fs" - sleep 1;; - x"zfs_raidz") - "zpool" create -R "$MNTPOINTRW" "$FSLABEL" raidz1 $LODEVICES - sleep 1 - "zfs" create "$FSLABEL"/"grub fs" - sleep 1;; - x"zfs_raidz2") - "zpool" create -R "$MNTPOINTRW" "$FSLABEL" raidz2 $LODEVICES - sleep 1 - "zfs" create "$FSLABEL"/"grub fs" - sleep 1;; - x"zfs_raidz3") - "zpool" create -R "$MNTPOINTRW" "$FSLABEL" raidz3 $LODEVICES - sleep 1 - "zfs" create "$FSLABEL"/"grub fs" - sleep 1;; - x"zfs_mirror") - "zpool" create -R "$MNTPOINTRW" "$FSLABEL" mirror $LODEVICES - sleep 1 - "zfs" create "$FSLABEL"/"grub fs" - sleep 1;; - x"zfs_stripe") - "zpool" create -R "$MNTPOINTRW" "$FSLABEL" $LODEVICES - sleep 1 - "zfs" create "$FSLABEL"/"grub fs" - sleep 1;; - x"tarfs" | x"cpio_"* | x"iso9660" | xjoliet | xrockridge | xrockridge_joliet | x"iso9660_1999" | xjoliet_1999 | xrockridge_1999 | xrockridge_joliet_1999 | x"ziso9660" | x"romfs" | x"squash4_"*) - INSTDEVICE=/dev/null;; - x"reiserfs") - "mkfs.reiserfs" --format=3.6 -b $BLKSIZE -l "$FSLABEL" -q "${MOUNTDEVICE}" ;; - x"reiserfs_old") - "mkfs.reiserfs" --format=3.5 -b $BLKSIZE -l "$FSLABEL" -q "${MOUNTDEVICE}" - MOUNTFS=reiserfs;; - x"jfs") - "mkfs.jfs" -L "$FSLABEL" -q "${MOUNTDEVICE}" - MOUNTOPTS="iocharset=utf8,";; - x"jfs_caseins") - "mkfs.jfs" -O -L "$FSLABEL" -q "${MOUNTDEVICE}" - MOUNTFS=jfs - MOUNTOPTS="iocharset=utf8,";; - x"mdraid"*) - mdadm -C --chunk=$((BLKSIZE/1024)) --force -e "${fs:6:1}.${fs:7:1}" "/dev/md/${fs}_${NDEVICES}" --level="${fs:13}" --raid-devices="$NDEVICES" $LODEVICES - MOUNTDEVICE="/dev/md/${fs}_${NDEVICES}" - MOUNTFS=ext2 - "mkfs.ext2" -L "$FSLABEL" -q "${MOUNTDEVICE}" ;; - x"lvm"*) - for lodev in $LODEVICES; do - pvcreate "$lodev" - done - vgcreate -s $((BLKSIZE/1024))K grub_test $LODEVICES - if [ x$fs = xlvm ] ; then - lvcreate -l "$((NDEVICES*7*LVMBLKMUL))" -n testvol grub_test - elif [ x$fs = xlvm_stripe ] ; then - lvcreate -l "$((NDEVICES*7*LVMBLKMUL))" -i "$NDEVICES" -n testvol grub_test - elif [ x$fs = xlvm_mirror1 ] || [ x$fs = xlvm_raid1 ] ; then - lvcreate -m 1 -l "$((NDEVICES*2*LVMBLKMUL))" --type "${fs/lvm_/}" -n testvol grub_test - elif [ x$fs = xlvm_mirrorall ] ; then - lvcreate -m "$((NDEVICES-1))" -l "$((6*LVMBLKMUL))" --type mirror -n testvol grub_test - elif [ x$fs = xlvm_raid1all ] ; then - # Until version 2.02.103 LVM counts metadata segments - # twice when checking available space. Reduce segment - # count to work around it. - lvcreate -m "$((NDEVICES-1))" -l "$((6*LVMBLKMUL - 1))" --type raid1 -n testvol grub_test - elif [ x$fs = xlvm_raid4 ] || [ x$fs = xlvm_raid5 ]; then - lvcreate -l "$(((NDEVICES-1) * 5*LVMBLKMUL))" -i "$((NDEVICES-1))" --type "${fs/lvm_/}" -n testvol grub_test - elif [ x$fs = xlvm_raid6 ]; then - lvcreate -l "$(((NDEVICES-2) * 5*LVMBLKMUL))" -i "$((NDEVICES-2))" --type "${fs/lvm_/}" -n testvol grub_test - fi - MOUNTDEVICE="/dev/mapper/grub_test-testvol" - MOUNTFS=ext2 - "mkfs.ext2" -L "$FSLABEL" -q "${MOUNTDEVICE}" ;; - xf2fs) - "mkfs.f2fs" -l "$FSLABEL" -q "${LODEVICES[0]}" ;; - xnilfs2) - "mkfs.nilfs2" -L "$FSLABEL" -b $BLKSIZE -q "${MOUNTDEVICE}" ;; - xext2_old) - MKE2FS_DEVICE_SECTSIZE=$SECSIZE "mkfs.ext2" -r 0 -b $BLKSIZE -L "$FSLABEL" -q "${MOUNTDEVICE}" - MOUNTFS=ext2 - ;; - xext4_metabg) - MKE2FS_DEVICE_SECTSIZE=$SECSIZE "mkfs.ext4" -O meta_bg,^resize_inode -b $BLKSIZE -L "$FSLABEL" -q "${MOUNTDEVICE}" - MOUNTFS=ext4 - ;; - xext4_encrypt) - MKE2FS_DEVICE_SECTSIZE=$SECSIZE "mkfs.ext4" -O encrypt -b $BLKSIZE -L "$FSLABEL" -q "${MOUNTDEVICE}" - MOUNTFS=ext4 - ;; - xext*) - MKE2FS_DEVICE_SECTSIZE=$SECSIZE "mkfs.$fs" -b $BLKSIZE -L "$FSLABEL" -q "${MOUNTDEVICE}" ;; - xxfs) - "mkfs.xfs" -m crc=0 -b size=$BLKSIZE -s size=$SECSIZE -L "$FSLABEL" -q "${MOUNTDEVICE}" ;; - xxfs_crc) - MOUNTFS="xfs" - "mkfs.xfs" -m crc=1 -b size=$BLKSIZE -s size=$SECSIZE -L "$FSLABEL" -q "${MOUNTDEVICE}" ;; - *) - echo "Add appropriate mkfs command here" - exit 1 - ;; - esac - BASEFILE="1.img" - NASTYFILE=".?*\\!\"#%@\$%&'()+ ,-.:;<=>^{_}[]\`|~." - case x"$fs" in - - # FS LIMITATION: AFFS and SFS don't accept : - xsfs*) - NASTYFILE=".?*\\!\"#%@\$%&'()+ ,-.;<=>^{_}[]\`|~.";; - # FS LIMITATION: AFFS is limited in file name length (30) - x"affs" | xaffs_intl) - NASTYFILE=".?*\\!\"#@\$'()+ ,-;<=>^{_}[]\`|~.";; - # FS LIMITATION: hfs, minix and minix2 are limited in file name length (30 or 31) - x"hfs" | x"minix" | x"minix2") - NASTYFILE=".?*\\!\"#@\$&'()+ ,-:;<=>{}[]\`|~.";; - # FS LIMITATION: FAT doesn't accept ?, *, \, ", :, <, >, | - # FS LIMITATION: FAT discards dots at the end. - x"vfat"* | x"exfat") - NASTYFILE=".!#%@\$%&'()+ ,-.;=^{_}[]\`~";; - # FS LIMITATION: 8.3 limitations apply - x"msdos"*) - NASTYFILE="!#%@\$%&.;=^";; - # FS LIMITATION: No ' ', '*', '/', ':', ';', '?', '\\' in joliet - # GRUB LIMITATION: GRUB prefers Joliet over ISO9660:1999 - xjoliet | xjoliet_1999) - NASTYFILE=".!\"#%@\$%&'()+,-.<=>^{_}[]\`|~.";; - # FS LIMITATION: iso9660 accepts only [0-9A-Z_]*, 32 characters at most - xiso9660) - NASTYFILE="0123456789_acefghijknopqrvwxyz";; - esac - - case x"$fs" in - # FS LIMITATION: HFS, AFFS and SFS use legacy codepage (mac-roman or latin1) - x"sfs"* | x"hfs" | x"affs" | xaffs_intl) - IFILE="éàèüöäëñ" - ISYM="ëñéüöäàè" - ;; - # FS LIMITATION: filename length limitation. - x"minix" | x"minix2") - IFILE="éàèüöðŸ˜Ã±ÐºÐ¸Î•λκά" - ISYM="ΕλκάкиéàðŸ˜Ã¶Ã¤Ã«Ã±" - ;; - xminix3) - IFILE="éàèüöäëñкирица莭茝ΕλλικάðŸ˜ðŸ˜œðŸ˜’" - ISYM="ΕλλικάðŸ˜ðŸ˜œðŸ˜’莭茝кирицаéàèüöäëñ";; - # GRUB LIMITATION: HFS+ uses NFD. GRUB doesn't handle NF conversion. - # OS LIMITATION: Linux doesn't handle out-of-BMP characters for UTF-16 - x"hfsplus" | x"hfsplus_casesens" | x"hfsplus_wrap") - IFILE="eÌaÌ€eÌ€üöäëñкирилицаäŒä“ä•ΕλληνικαÌäŒä“ä•" - ISYM="ΕλληνικαÌкирилицаäŒä“ä•eÌaÌ€eÌ€üöäëñäŒä“ä•" - ;; - # GRUB LIMITATION: On case-insensitive ZFS isn't supported with non-uppercase characters - xzfs_caseins) - IFILE="ÉÀÈÜÖÄËÑКИРИЛИЦÐ莭ð¯¦ð¯¦™Î•ΛΛΗÎΙΚΆðŸ˜ðŸ˜œðŸ˜’" - ISYM="ΕΛΛΗÎΙΚΆКИРИЛИЦÐðŸ˜ðŸ˜œðŸ˜’ÉÀÈÜÖÄËÑ莭ð¯¦ð¯¦™";; - # FS LIMITATION: 8.3 CP437 - x"msdos"*) - IFILE="éàèüöäëñ.éàè" - ;; - # FS LIMITATION: iso9660 is ASCII-only. - x"iso9660") - IFILE="abcdefghijkmmnop" - ;; - # OS LIMITATION: Linux doesn't handle out-of-BMP characters for UTF-16 - # OS LIMITATION: xorriso doesn't handle out-of-BMP characters - xjoliet | xjoliet_1999 | x"vfat"* | x"jfs"* | x"udf"*) - IFILE="éàèüöäëñкирилицаäŒä“ä•ΕλληνικάäŒä“ä•" - ISYM="ΕλληνικάкирилицаäŒä“ä•éàèüöäëñäŒä“ä•";; - *) - IFILE="éàèüöäëñкирилица莭ð¯¦ð¯¦™Î•λληνικάðŸ˜ðŸ˜œðŸ˜’" - ISYM="ΕλληνικάкирилицаðŸ˜ðŸ˜œðŸ˜’éàèüöäëñ莭ð¯¦ð¯¦™";; - esac - BIGFILE="big.img" - BASESYM="sym" - BASEHARD="hard" - SSYM="///sdir////ssym" - USYM="///sdir////usym" - LONGSYM="longsym" - PSYM="psym" - OSDIR="" - GRUBDEVICE=loop0 - case x"$fs" in - xmdraid*) - GRUBDEVICE="mduuid/`mdadm --detail --export $MOUNTDEVICE | grep MD_UUID=|sed 's,MD_UUID=,,g;s,:,,g'`";; - xlvm*) - GRUBDEVICE="lvm/grub_test-testvol";; - esac - GRUBDIR="($GRUBDEVICE)" - case x"$fs" in - x"zfs"*) - OSDIR="grub fs/" - GRUBDIR="($GRUBDEVICE)/grub fs@";; - x"tarfs" | x"cpio_"* | x"iso9660" | xjoliet | xrockridge | xrockridge_joliet | x"iso9660_1999" | xjoliet_1999 | xrockridge_1999 | xrockridge_joliet_1999 | x"ziso9660" | x"romfs" | x"squash4_"* | xafs) - ;; - *) - if ! mount -t "$MOUNTFS" "${MOUNTDEVICE}" "$MNTPOINTRW" -o ${MOUNTOPTS}${SELINUXOPTS}rw ; then - echo "MOUNT FAILED." - for lodev in $LODEVICES; do - while ! losetup -d "$lodev"; do - sleep 1 - done - done - for i in $(range 0 $((NDEVICES-1)) 1); do - rm "$FSIMAGEP${i}.img" - done - exit 1; - fi - ;; - esac - case x"$fs" in - # FS LIMITATION: redundant storage - xmdraid* | xlvm*) - BLOCKCNT=1048576;; - x"zfs_raid"* | x"zfs_stripe"* | x"zfs_mirror"* | x"btrfs_raid"*) - BLOCKCNT=1048576;; - - # FS LIMITATION: small filesystems - x"vfat16a" | x"msdos16a") - BLOCKCNT=65536;; - x"vfat12a" | xmsdos12a) - BLOCKCNT=32768;; - xminix) - BLOCKCNT=2621440;; - xvfat16 | xmsdos16) - if [ $BLKSIZE = 512 ] || [ $BLKSIZE = 1024 ]; then - BLOCKCNT=1048576 - else - BLOCKCNT=5242880 - fi - ;; - xvfat12 | xmsdos12) - BLOCKCNT=$((100*BLKSIZE)) - if [ $BLOCKCNT -gt 5242880 ]; then - BLOCKCNT=5242880; - fi - ;; - *) - BLOCKCNT=5242880;; - esac - # Make sure file is not exact multiple of block size. This helps to force - # tail packing in case of squash4. - BLOCKCNT="$((BLOCKCNT-1))" - case x"$fs" in - x"ntfscomp") - setfattr -h -v 0x00000800 -n system.ntfs_attrib_be "$MNTPOINTRW/$OSDIR";; - esac - # OS LIMITATION: No AFS support under GNU/Linux - mkdir "$MNTPOINTRW/$OSDIR/sdir" - mkdir -p "$MNTPOINTRW/$OSDIR/$PDIR" - "@builddir@"/garbage-gen $BLOCKCNT > "$MNTPOINTRW/$OSDIR/sdir/2.img" - "@builddir@"/garbage-gen $BLOCKCNT > "$MNTPOINTRW/$OSDIR/$BASEFILE" - "@builddir@"/garbage-gen $BLOCKCNT > "$MNTPOINTRW/$OSDIR/$NASTYFILE" - "@builddir@"/garbage-gen $BLOCKCNT > "$MNTPOINTRW/$OSDIR/$IFILE" - "@builddir@"/garbage-gen $BLOCKCNT > "$MNTPOINTRW/$OSDIR/$LONGNAME" - "@builddir@"/garbage-gen $BLOCKCNT > "$MNTPOINTRW/$OSDIR/$PDIR/$PFIL" - if [ $PDIR != $PDIR2 ]; then - "@builddir@"/garbage-gen $BLOCKCNT > "$MNTPOINTRW/$OSDIR/${PDIR2}/$PFIL" - fi - "@builddir@"/garbage-gen $BLOCKCNT > "$MNTPOINTRW/$OSDIR/CaSe" - if [ x$CASESENS = xy ]; then - "@builddir@"/garbage-gen $BLOCKCNT > "$MNTPOINTRW/$OSDIR/cAsE" - fi - if (test x$fs = xvfat12a || test x$fs = xmsdos12a) && test x$BLKSIZE = x131072; then - # With this config there isn't enough space for full copy. - # Copy as much as we can - cp "${CFILESRC}" "$MNTPOINTRW/$OSDIR/${CFILE}" &> /dev/null; - else - - cp "${CFILESRC}" "$MNTPOINTRW/$OSDIR/${CFILE}"; - - fi - - if [ x$NOSYMLINK != xy ]; then - ln -s "$BASEFILE" "$MNTPOINTRW/$OSDIR/$BASESYM" - ln -s "2.img" "$MNTPOINTRW/$OSDIR/$SSYM" - ln -s "../1.img" "$MNTPOINTRW/$OSDIR/$USYM" - ln -s "$LONGNAME" "$MNTPOINTRW/$OSDIR/$LONGSYM" - ln -s "${PDIR2}/$PFIL" "$MNTPOINTRW/$OSDIR/$PSYM" - ln -s "$IFILE" "$MNTPOINTRW/$OSDIR/$ISYM" - fi - if [ x$NOHARDLINK != xy ]; then - ln "$MNTPOINTRW/$OSDIR/$BASEFILE" "$MNTPOINTRW/$OSDIR/$BASEHARD" - fi - - case x"$fs" in - x"afs") - ;; - x"zfs"*) - while ! zpool export "$FSLABEL" ; do - sleep 1; - done - sleep 2 - ;; - x"tarfs") - (cd "$MASTER"; tar cf "${FSIMAGEP}0.img" .) ;; - x"cpio_"*) - (cd "$MASTER"; find . | cpio -o -H "$(echo ${fs} | sed 's@^cpio_@@')" > "${FSIMAGEP}0.img" ) ;; - x"ziso9660") - FSUUID=$(date -u +%Y-%m-%d-%H-%M-%S-00); - xorriso -compliance rec_mtime -set_filter_r --zisofs -- -zisofs default -as mkisofs -iso-level 3 -graft-points -R -J -joliet-long -V "$FSLABEL" --modification-date=$(echo ${FSUUID} | sed 's/-//g;') -o "${FSIMAGEP}0.img" -- -set_filter_r --zisofs -- -zisofs default -add /="$MASTER" ;; - x"iso9660") - FSUUID=$(date -u +%Y-%m-%d-%H-%M-%S-00); - xorriso --rockridge off -compliance rec_mtime -as mkisofs -iso-level 3 -graft-points -V "$FSLABEL" --modification-date=$(echo ${FSUUID} | sed 's/-//g;') -o "${FSIMAGEP}0.img" /="$MASTER" ;; - x"joliet") - FSUUID=$(date -u +%Y-%m-%d-%H-%M-%S-00); - xorriso --rockridge off -compliance rec_mtime -as mkisofs -iso-level 3 -graft-points -J -joliet-long -V "$FSLABEL" --modification-date=$(echo ${FSUUID} | sed 's/-//g;') -o "${FSIMAGEP}0.img" /="$MASTER" ;; - x"rockridge") - FSUUID=$(date -u +%Y-%m-%d-%H-%M-%S-00); - xorriso --rockridge on -compliance rec_mtime -as mkisofs -iso-level 3 -graft-points -V "$FSLABEL" --modification-date=$(echo ${FSUUID} | sed 's/-//g;') -o "${FSIMAGEP}0.img" /="$MASTER" ;; - x"rockridge_joliet") - FSUUID=$(date -u +%Y-%m-%d-%H-%M-%S-00); - xorriso --rockridge on -compliance rec_mtime -as mkisofs -iso-level 3 -graft-points -J -joliet-long -V "$FSLABEL" --modification-date=$(echo ${FSUUID} | sed 's/-//g;') -o "${FSIMAGEP}0.img" /="$MASTER" ;; - x"iso9660_1999") - FSUUID=$(date -u +%Y-%m-%d-%H-%M-%S-00); - xorriso --rockridge off -compliance rec_mtime -as mkisofs -iso-level 4 -graft-points -V "$FSLABEL" --modification-date=$(echo ${FSUUID} | sed 's/-//g;') -o "${FSIMAGEP}0.img" /="$MASTER" ;; - x"joliet_1999") - FSUUID=$(date -u +%Y-%m-%d-%H-%M-%S-00); - xorriso --rockridge off -compliance rec_mtime -as mkisofs -iso-level 4 -graft-points -J -joliet-long -V "$FSLABEL" --modification-date=$(echo ${FSUUID} | sed 's/-//g;') -o "${FSIMAGEP}0.img" /="$MASTER" ;; - x"rockridge_1999") - FSUUID=$(date -u +%Y-%m-%d-%H-%M-%S-00); - xorriso --rockridge on -compliance rec_mtime -as mkisofs -iso-level 4 -graft-points -V "$FSLABEL" --modification-date=$(echo ${FSUUID} | sed 's/-//g;') -o "${FSIMAGEP}0.img" /="$MASTER" ;; - x"rockridge_joliet_1999") - FSUUID=$(date -u +%Y-%m-%d-%H-%M-%S-00); - xorriso --rockridge on -compliance rec_mtime -as mkisofs -iso-level 4 -graft-points -J -joliet-long -V "$FSLABEL" --modification-date=$(echo ${FSUUID} | sed 's/-//g;') -o "${FSIMAGEP}0.img" /="$MASTER" ;; - x"romfs") - genromfs -V "$FSLABEL" -f "${FSIMAGEP}0.img" -d "$MASTER" ;; - xsquash4_*) - echo mksquashfs "$MASTER" "${FSIMAGEP}0.img" -always-use-fragments -comp "${fs/squash4_/}" -b $BLKSIZE - mksquashfs "$MASTER" "${FSIMAGEP}0.img" -always-use-fragments -comp "${fs/squash4_/}" -b $BLKSIZE ;; - x"bfs") - sleep 1 - fusermount -u "$MNTPOINTRW" - ;; - xlvm*) - sleep 1 - for try in $(range 0 20 1); do - if umount "$MNTPOINTRW" ; then - break; - fi - sleep 1; - done - UMOUNT_TIME=$(date -u "+%Y-%m-%d %H:%M:%S") - sleep 1 - vgchange -a n grub_test - ;; - xmdraid*) - sleep 1 - for try in $(range 0 20 1); do - if umount "$MNTPOINTRW" ; then - break; - fi - sleep 1; - done - UMOUNT_TIME=$(date -u "+%Y-%m-%d %H:%M:%S") - sleep 1 - mdadm --stop /dev/md/"${fs}_$NDEVICES" - ;; - *) - sleep 1 - for try in $(range 0 20 1); do - if umount "$MNTPOINTRW" ; then - break; - fi - sleep 1; - done - ;; - esac - sleep 1 - - case x"$fs" in - x"zfs"*) - "zpool" import -d /dev -R "$MNTPOINTRO" "$FSLABEL" - ;; - x"tarfs") - ;; - x"cpio_"*) - ;; - x"ziso9660") - ;; - xiso9660 | xrockridge | xjoliet | xrockridge_joliet) - ;; - xiso9660_1999 | xrockridge_1999 | xjoliet_1999 | xrockridge_joliet_1999) - ;; - x"romfs") - ;; - xsquash4_*) - ;; - xlvm*) - vgchange -a y grub_test - sleep 1 - mount -t "$MOUNTFS" "${MOUNTDEVICE}" "$MNTPOINTRO" -o ${MOUNTOPTS}${SELINUXOPTS}ro ;; - xmdraid*) - mdadm --assemble /dev/md/"${fs}_$NDEVICES" $LODEVICES - sleep 1 - mount -t "$MOUNTFS" "${MOUNTDEVICE}" "$MNTPOINTRO" -o ${MOUNTOPTS}${SELINUXOPTS}ro ;; - *) - mount -t "$MOUNTFS" "${MOUNTDEVICE}" "$MNTPOINTRO" -o ${MOUNTOPTS}${SELINUXOPTS}ro ;; - esac - - run_grubfstest ls -- -la - case x"$fs" in - x"zfs"*) - LSROUT=$(run_grubfstest ls -- -la "($GRUBDEVICE)/grub fs@/");; - *) - LSROUT=$(run_grubfstest ls -- -la "($GRUBDEVICE)/");; - esac - if echo "$LSROUT" | grep -F " $BASEFILE" | grep "$BLOCKCNT" > /dev/null; then - : - else - echo LIST FAIL - echo "$LSROUT" - TZ=UTC ls -l "$MNTPOINTRO" - exit 1 - fi - - if echo "$LSROUT" | grep -F " $NASTYFILE" | grep "$BLOCKCNT"> /dev/null; then - : - else - echo NLIST FAIL - echo "$LSROUT" - TZ=UTC ls -lA "$MNTPOINTRO" - exit 1 - fi - - if echo "$LSROUT" | grep -F " $IFILE" | grep "$BLOCKCNT"> /dev/null; then - : - else - echo ILIST FAIL - echo "$LSROUT" - TZ=UTC ls -l "$MNTPOINTRO" - exit 1 - fi - - if echo "$LSROUT" | grep -F " $LONGNAME" | grep "$BLOCKCNT"> /dev/null; then - : - else - echo LONG LIST FAIL - echo "$LSROUT" - TZ=UTC ls -l "$MNTPOINTRO" - exit 1 - fi - - if [ x$NOFILETIME != xy ]; then - filtime=$(TZ=UTC ls --time-style=+%Y%m%d%H%M%S -l -d "$MNTPOINTRO/$OSDIR/$BASEFILE"|awk '{print $6; }') - if echo "$LSROUT" | grep -F "$filtime $BASEFILE" > /dev/null; then - : - else - echo TIME FAIL - echo "$LSROUT" - TZ=UTC ls -l "$MNTPOINTRO" - exit 1 - fi - - filtime=$(TZ=UTC ls --time-style=+%Y%m%d%H%M%S -l -d "$MNTPOINTRO/$OSDIR/$LONGNAME"|awk '{print $6; }') - if echo "$LSROUT" | grep -F "$filtime $LONGNAME" > /dev/null; then - : - else - echo LONG TIME FAIL - echo "$LSROUT" - TZ=UTC ls -l "$MNTPOINTRO" - exit 1 - fi - fi - - case x"$fs" in - x"zfs"*) - LSROUT=$(run_grubfstest ls -- -la "($GRUBDEVICE)/grub fs@/.");; - *) - LSROUT=$(run_grubfstest ls -- -la "($GRUBDEVICE)/.");; - esac - if echo "$LSROUT" | grep -F " $BASEFILE" | grep "$BLOCKCNT" > /dev/null; then - : - else - echo DOT IN ROOTDIR FAIL - echo "$LSROUT" - TZ=UTC ls -l "$MNTPOINTRO" - exit 1 - fi - - case x"$fs" in - x"zfs"*) - ;; - *) - LSROUT=$(run_grubfstest ls -- -la "($GRUBDEVICE)/.."); - if echo "$LSROUT" | grep -F " $BASEFILE" | grep "$BLOCKCNT" > /dev/null; then - : - else - echo DOTDOT IN ROOTDIR FAIL - echo "$LSROUT" - TZ=UTC ls -l "$MNTPOINTRO" - exit 1 - fi - ;; - esac - - case x"$fs" in - x"zfs"*) - LSROUT=$(run_grubfstest ls -- -l "($GRUBDEVICE)/grub fs@/////sdir");; - *) - LSROUT=$(run_grubfstest ls -- -l "($GRUBDEVICE)/////sdir");; - esac - if echo "$LSROUT" | grep -F " 2.img" | grep $BLOCKCNT > /dev/null; then - : - else - echo SLIST FAIL - echo "$LSROUT" - TZ=UTC ls -l "$MNTPOINTRO/sdir" - exit 1 - fi - - case x"$fs" in - x"zfs"*) - LSROUT=$(run_grubfstest ls -- -l "($GRUBDEVICE)/grub fs@/$PDIR");; - *) - LSROUT=$(run_grubfstest ls -- -l "($GRUBDEVICE)/$PDIR");; - esac - if echo "$LSROUT" | grep -F " p.img" | grep $BLOCKCNT > /dev/null; then - : - else - echo PLIST FAIL - echo "$LSROUT" - TZ=UTC ls -l "$MNTPOINTRO/$PDIR" - exit 1 - fi - - case x"$fs" in - x"zfs"*) - LSROUT=$(run_grubfstest ls -- -l "($GRUBDEVICE)/grub fs@/sdir/.");; - *) - LSROUT=$(run_grubfstest ls -- -l "($GRUBDEVICE)/sdir/.");; - esac - if echo "$LSROUT" | grep -F " 2.img" | grep $BLOCKCNT > /dev/null; then - : - else - echo DOT IN SUBDIR FAIL - echo "$LSROUT" - TZ=UTC ls -l "$MNTPOINTRO/$OSDIR/sdir" - exit 1 - fi - - case x"$fs" in - x"zfs"*) - LSROUT=$(run_grubfstest ls -- -l "($GRUBDEVICE)/grub fs@/sdir/../sdir");; - *) - LSROUT=$(run_grubfstest ls -- -l "($GRUBDEVICE)/sdir/../sdir");; - esac - if echo "$LSROUT" | grep -F " 2.img" | grep $BLOCKCNT > /dev/null; then - : - else - echo DOTDOT IN SUBDIR FAIL - echo "$LSROUT" - TZ=UTC ls -l "$MNTPOINTRO/$OSDIR/ssdir" - exit 1 - fi - - LSOUT=`run_grubfstest ls -- -l "($GRUBDEVICE)"` - if [ x"$NOFSLABEL" = xy ]; then - : - elif echo "$LSOUT" | grep -F "Label \`$FSLABEL'" > /dev/null; then - : - else - echo LABEL FAIL - echo "$LSOUT" - blkid "${MOUNTDEVICE}" - exit 1 - fi - - # Inconsistencies between GRUB and blkid. - case x"$fs" in - x"iso9660" | x"ziso9660" | xrockridge | xjoliet | xrockridge_joliet | x"iso9660_1999" | xrockridge_1999 | xjoliet_1999 | xrockridge_joliet_1999) ;; - x"zfs"*) - for lodev in $LODEVICES; do - FSUUID=$(printf "%016x\n" $(blkid -o export "$lodev" |grep -F UUID=|sed s,UUID=,,g)) - if [ "$FSUUID" != 0000000000000000 ]; then - break; - fi - done;; - *) - FSUUID=`blkid -o export "${MOUNTDEVICE}" |grep -F UUID=|sed s,UUID=,,g` - ;; - esac - case x"$fs" in - x"hfs"*) - GRUBUUID="`run_grubfstest xnu_uuid "$GRUBDEVICE"`" - if [ x"$GRUBUUID" = x"$FSUUID" ]; then - : - else - echo UUID FAIL - echo "$LSOUT" - echo "$GRUBUUID" - for lodev in $LODEVICES; do - blkid "$lodev" - done - exit 1 - fi - ;; - # FS LIMITATION: romfs, cpio, tar, squash4, minix, AFS, old reiserfs and minix2 - # have no UUID. - # GRUB LIMITATION: use creation date for squash4, AFFS and SFS? - # GRUB LIMITATION: use tags serials on UDF? - # GRUB LIMITATION: use root ctime on cpio, tar, minix*, UDF, reiserfs_old? - # GRUB LIMITATION: Support Atari UUIDs - x"romfs" | x"cpio_"* | x"tarfs" | x"squash4_"* | x"minix" \ - | x"minix2" | x"minix3" | x"affs" | xaffs_intl \ - | x"udf" | xvfat12a | xvfat16a | xmsdos12a | xmsdos16a | xafs | xsfs* \ - | xreiserfs_old) - ;; - *) - if [ x"$FSUUID" = x ]; then - echo "Warning: blkid couldn't retrieve UUID" - elif echo "$LSOUT" | grep -F 'UUID '"$FSUUID"' ' > /dev/null; then - : - else - echo UUID FAIL - echo "$FSUUID" - echo "$LSOUT" - blkid "${MOUNTDEVICE}" - exit 1 - fi - ;; - esac - - if [ x$NOFSTIME != xy ]; then - case x$fs in - xiso9660 | xziso9660 | xrockridge | xjoliet | xrockridge_joliet | xiso9660_1999 | xrockridge_1999 | xjoliet_1999 | xrockridge_joliet_1999) - FSTIME="$(date -d "$(echo ${FSUUID} | awk -F - '{ print $1"-"$2"-"$3" "$4":"$5":"$6 ;}')" '+%Y-%m-%d %H:%M:%S')";; - xlvm*|xmdraid*) - # With some abstractions like mdraid flushing to disk - # may be delayed for a long time. - FSTIME="$UMOUNT_TIME";; - *) - FSTIME="$(TZ=UTC ls --time-style="+%Y-%m-%d_%H:%M:%S" -l -d "${FSIMAGEP}0.img"|awk '{print $6; }'|sed 's,_, ,g')";; - esac - # With some abstractions like mdraid computing of UMOUNT_TIME - # is not precise. Account for small difference here. - FSTIMEM1="$(date -d "$FSTIME UTC -1 second" -u "+%Y-%m-%d %H:%M:%S")" - FSTIMEM2="$(date -d "$FSTIME UTC -2 second" -u "+%Y-%m-%d %H:%M:%S")" - FSTIMEM3="$(date -d "$FSTIME UTC -3 second" -u "+%Y-%m-%d %H:%M:%S")" - - if echo "$LSOUT" | grep -F 'Last modification time '"$FSTIME" > /dev/null || echo "$LSOUT" | grep -F 'Last modification time '"$FSTIMEM1" > /dev/null || echo "$LSOUT" | grep -F 'Last modification time '"$FSTIMEM2" || echo "$LSOUT" | grep -F 'Last modification time '"$FSTIMEM3" > /dev/null; then - : - else - echo FSTIME FAIL - echo "$FSTIME" - echo "$LSOUT" - exit 1 - fi - fi - - if [ x$NOHARDLINK != xy ]; then - if run_grubfstest cmp "$GRUBDIR/$BASEHARD" "$MNTPOINTRO/$OSDIR/$BASEFILE" ; then - : - else - echo HARDLINK FAIL - exit 1 - fi - fi - - if [ x$NOSYMLINK != xy ]; then - if run_grubfstest cmp "$GRUBDIR/$BASESYM" "$MNTPOINTRO/$OSDIR/$BASEFILE" ; then - : - else - echo SYMLINK FAIL - exit 1 - fi - if run_grubfstest cmp "$GRUBDIR/$LONGSYM" "$MNTPOINTRO/$OSDIR/$LONGNAME" ; then - : - else - echo LONG SYMLINK FAIL - exit 1 - fi - if run_grubfstest cmp "$GRUBDIR/$ISYM" "$MNTPOINTRO/$OSDIR/$IFILE" ; then - : - else - echo INTL SYMLINK FAIL - exit 1 - fi - if run_grubfstest cmp "$GRUBDIR/$SSYM" "$MNTPOINTRO/$OSDIR/////sdir/////2.img" ; then - : - else - echo SDIR SYMLINK FAIL - exit 1 - fi - if run_grubfstest cmp "$GRUBDIR/$USYM" "$MNTPOINTRO/$OSDIR/1.img" ; then - : - else - echo SDIR SYMLINK FAIL - exit 1 - fi - if run_grubfstest cmp "$GRUBDIR/$PSYM" "$MNTPOINTRO/$OSDIR/${PDIR2}/$PFIL" ; then - : - else - echo PATH LONG SYMLINK FAIL - exit 1 - fi - fi - - if run_grubfstest cmp "$GRUBDIR/$BASEFILE" "$MNTPOINTRO/$OSDIR/$BASEFILE" ; then - : - else - echo READ FAIL - exit 1 - fi - if run_grubfstest cmp "$GRUBDIR/$NASTYFILE" "$MNTPOINTRO/$OSDIR/$NASTYFILE" ; then - : - else - echo NREAD FAIL - exit 1 - fi - # Reference archive contains original name - if run_grubfstest cmp "$GRUBDIR/$LONGNAME" "$MNTPOINTRO/$OSDIR/$LONGNAME" ; then - : - else - echo LONG NAME READ FAIL - exit 1 - fi - if run_grubfstest cmp "$GRUBDIR/////sdir/////2.img" "$MNTPOINTRO/$OSDIR/sdir/2.img" ; then - : - else - echo LONG NAME READ FAIL - exit 1 - fi - if run_grubfstest cmp "$GRUBDIR/$IFILE" "$MNTPOINTRO/$OSDIR/$IFILE" ; then - : - else - echo IREAD FAIL - exit 1 - fi - if run_grubfstest cmp "$GRUBDIR/$PDIR/$PFIL" "$MNTPOINTRO/$OSDIR/$PDIR/$PFIL" ; then - : - else - echo PREAD FAIL - echo cmp "$GRUBDIR/$PDIR/$PFIL" "$MNTPOINTRO/$OSDIR/$PDIR/$PFIL" - exit 1 - fi - ok=true - if ! run_grubfstest cmp "$GRUBDIR/${CFILE}" "$MNTPOINTRO/$OSDIR/${CFILE}" ; then - ok=false; - fi - if test x$ok = xtrue; then - : - else - echo CREAD FAIL - exit 1 - fi - - if [ x$CASESENS = xy ]; then - if run_grubfstest cmp "$GRUBDIR/CaSe" "$MNTPOINTRO/$OSDIR/CaSe" ; then - : - else - echo CASE1 READ FAIL - exit 1 - fi - if run_grubfstest cmp "$GRUBDIR/cAsE" "$MNTPOINTRO/$OSDIR/cAsE" ; then - : - else - exit 1 - fi - if cmp "$MNTPOINTRO/$OSDIR/cAsE" "$MNTPOINTRO/$OSDIR/CaSe" > /dev/null ; then - exit 1 - fi - if test x$ok = xtrue; then - : - else - echo CASE READ FAIL - exit 1 - fi - else - # OS LIMITATION: Linux make FAT (partially) case-sensitive... - # ISO9660 is generated and master doesn't change - case x$fs in - xiso9660 | xvfat*) - CASEX=CaSe;; - *) - CASEX=cAsE;; - esac - if run_grubfstest cmp "$GRUBDIR/CaSe" "$MNTPOINTRO/$OSDIR/${CASEX}" ; then - : - else - echo CASE1 READ FAIL - exit 1 - fi - if run_grubfstest cmp "$GRUBDIR/cAsE" "$MNTPOINTRO/$OSDIR/CaSe" ; then - : - else - echo CASE2 READ FAIL - exit 1 - fi - if ! cmp "$MNTPOINTRO/$OSDIR/CaSe" "$MNTPOINTRO/$OSDIR/${CASEX}" > /dev/null ; then - echo CASE CMP READ FAIL - exit 1 - fi - if test x$ok = xtrue; then - : - else - echo CASE READ FAIL - exit 1 - fi - fi - - case x"$fs" in - x"zfs"*) - while ! zpool export "$FSLABEL" ; do - sleep 1; - done - sleep 5;; - x"tarfs" | x"cpio_"* | xrockridge | xjoliet | xrockridge_joliet | x"ziso9660" | x"romfs" | x"squash4_"* | xiso9660 | xiso9660_1999 | xrockridge_1999 | xjoliet_1999 | xrockridge_joliet_1999) - rm -rf "$MNTPOINTRW";; - x"afs") - rm -rf "$MNTPOINTRO" - ;; - *) - sleep 1 - umount "$MNTPOINTRO" || true - umount "$MNTPOINTRW" || true - esac - sleep 1 - case x"$fs" in - xmdraid*) - mdadm --stop /dev/md/"${fs}_$NDEVICES" - sleep 1 - ;; - xlvm*) - vgchange -a n grub_test - sleep 1 - ;; - esac - case x"$fs" in - x"tarfs" | x"cpio_"* | x"iso9660" | xrockridge | xjoliet | xrockridge_joliet | x"ziso9660" | x"romfs" | x"squash4_"* | x"iso9660_1999" | xrockridge_1999 | xjoliet_1999 | xrockridge_joliet_1999) ;; - *) - for lodev in $LODEVICES; do - while ! losetup -d "$lodev"; do - sleep 1 - done - done;; - esac - for i in $(range 0 $((NDEVICES-1)) 1); do - rm "$FSIMAGEP${i}.img" - done - if [ x"$fs" = x"zfs" ]; then - rmdir "$MNTPOINTRW"/"grub fs" || true - rmdir "$MNTPOINTRO"/"grub fs" || true - fi - rm -rf "$MNTPOINTRW" || true - rm -rf "$MNTPOINTRO" || true - done - done -done -rmdir "${tempdir}" diff --git a/thirdparty/grub-2.04/tests/util/grub-shell-tester.in b/thirdparty/grub-2.04/tests/util/grub-shell-tester.in deleted file mode 100644 index 8a87109b1..000000000 --- a/thirdparty/grub-2.04/tests/util/grub-shell-tester.in +++ /dev/null @@ -1,106 +0,0 @@ -#! @BUILD_SHEBANG@ -set -e - -# Compares GRUB script output with BASH output. -# Copyright (C) 2009,2010 Free Software Foundation, Inc. -# -# GRUB is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# GRUB is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with GRUB. If not, see . - -# Initialize some variables. -prefix="@prefix@" -exec_prefix="@exec_prefix@" -datarootdir="@datarootdir@" -builddir="@builddir@" -PACKAGE_NAME=@PACKAGE_NAME@ -PACKAGE_TARNAME=@PACKAGE_TARNAME@ -PACKAGE_VERSION=@PACKAGE_VERSION@ - -# Force build directory components -PATH="${builddir}:$PATH" -export PATH - -# Usage: usage -# Print the usage. -usage () { - cat <. -EOF -} - -# Check the arguments. -for option in "$@"; do - case "$option" in - -h | --help) - usage - exit 0 ;; - -v | --version) - echo "$0 (GNU GRUB ${PACKAGE_VERSION})" - exit 0 ;; - --modules=*) - ms=`echo "$option" | sed -e 's/--modules=//'` - modules="$modules,$ms" ;; - --qemu-opts=*) - qs=`echo "$option" | sed -e 's/--qemu-opts=//'` - qemuopts="$qemuopts $qs" ;; - -*) - echo "Unrecognized option \`$option'" 1>&2 - usage - exit 1 - ;; - *) - if [ "x${source}" != x ] ; then - echo "too many parameters at the end" 1>&2 - usage - exit 1 - fi - source="${option}" ;; - esac -done - -if [ "x${source}" = x ] ; then - tmpfile=`mktemp "${TMPDIR:-/tmp}/tmp.XXXXXXXXXX"` || exit 1 - while read REPLY; do - echo $REPLY >> "${tmpfile}" - done - source="${tmpfile}" -fi - -outfile1=`mktemp "${TMPDIR:-/tmp}/tmp.XXXXXXXXXX"` || exit 1 -"@builddir@/grub-shell" --qemu-opts="${qemuopts}" --modules=${modules} "${source}" >"${outfile1}" - -outfile2=`mktemp "${TMPDIR:-/tmp}/tmp.XXXXXXXXXX"` || exit 1 -bash "${source}" >"${outfile2}" - -if ! diff -q "${outfile1}" "${outfile2}" >/dev/null -then - echo "${source}: GRUB and BASH outputs did not match (see diff -u ${outfile1} ${outfile2})" - status=1 -else - rm -f "${outfile1}" "${outfile2}" -fi - -exit $status - - diff --git a/thirdparty/grub-2.04/tests/util/grub-shell.in b/thirdparty/grub-2.04/tests/util/grub-shell.in deleted file mode 100644 index 93e9f5148..000000000 --- a/thirdparty/grub-2.04/tests/util/grub-shell.in +++ /dev/null @@ -1,517 +0,0 @@ -#! @BUILD_SHEBANG@ -set -e - -# Run GRUB script in a Qemu instance -# Copyright (C) 2009,2010 Free Software Foundation, Inc. -# -# GRUB is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# GRUB is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with GRUB. If not, see . - -# Initialize some variables. -prefix="@prefix@" -exec_prefix="@exec_prefix@" -datarootdir="@datarootdir@" -builddir="@builddir@" -srcdir="@srcdir@" -PACKAGE_NAME=@PACKAGE_NAME@ -PACKAGE_TARNAME=@PACKAGE_TARNAME@ -PACKAGE_VERSION=@PACKAGE_VERSION@ - -# Force build directory components -PATH="${builddir}:$PATH" -export PATH - -trim=0 - -# Usage: usage -# Print the usage. -usage () { - cat <. -EOF -} - -. "${builddir}/grub-core/modinfo.sh" -qemuopts="${GRUB_QEMU_OPTS}" -serial_port=com0 -serial_null= -halt_cmd=halt -pseries=n -disk="hda " -case "${grub_modinfo_target_cpu}-${grub_modinfo_platform}" in - *-emu) - device_map=`mktemp "${TMPDIR:-/tmp}/tmp.XXXXXXXXXX"` || exit 1 - boot=emu - console=console - disk=0 - # To skip "Welcome to GRUB" and color setttings - trim=1 - serial_port= - ;; - powerpc-ieee1275) - boot=hd - qemu=qemu-system-ppc - console=console - serial_port=escc-ch-b - serial_null="-serial null" - netbootext=elf - trim=1 - ;; - - sparc64-ieee1275) - boot=cd - qemu=qemu-system-sparc64 - console= - serial_port=ieee1275/ttya - trim=1 - qemuopts="$qemuopts -no-reboot" - halt_cmd=reboot - ;; - - mips-qemu_mips) - boot=mips_qemu - qemu=qemu-system-mips - qemuopts="-M mips $qemuopts" - console=vga_text - ;; - mips-arc) - boot=cd - qemu=qemu-system-mips64 - qemuopts="-M indy $qemuopts" - serial_port=arc/serial0/line0 - console= - trim=1 - ;; - mipsel-arc) - boot=cd - qemu=qemu-system-mips64el - qemuopts="-M magnum $qemuopts -no-reboot" - serial_port=arc/multi0/serial0 - console=console - halt_cmd=reboot - trim=1 - ;; - mipsel-qemu_mips) - boot=mipsel_qemu - qemu=qemu-system-mipsel - qemuopts="-M mips $qemuopts" - console=vga_text - ;; - mipsel-loongson) - boot=mipsel_fulong2e - qemu=qemu-system-mips64el - qemuopts="-M fulong2e $qemuopts" - console= - trim=1 - ;; - i386-coreboot) - boot=coreboot - qemu=qemu-system-i386 - console=vga_text - ;; - i386-multiboot) - boot=cd - qemu=qemu-system-i386 - console=vga_text;; - - i386-ieee1275) - boot=hd - qemu=qemu-system-i386 - console=console - trim=1 - disk="hdb " - ;; - i386-qemu) - boot=qemu - qemu=qemu-system-i386 - console=vga_text;; - - i386-pc) - boot=cd - qemu=qemu-system-i386 - console=console - netbootext=0 - ;; - - i386-efi) - qemu=qemu-system-i386 - boot=cd - console=console - trim=1 - qemuopts="-bios OVMF-ia32.fd $qemuopts" - ;; - x86_64-efi) - qemu=qemu-system-x86_64 - boot=cd - console=console - trim=1 - qemuopts="-bios OVMF.fd $qemuopts" - ;; - arm64-efi) - qemu=qemu-system-aarch64 - boot=hd - console=console - trim=1 - qemuopts="-machine virt -cpu cortex-a57 -bios /usr/share/qemu-efi/QEMU_EFI.fd $qemuopts" - disk="device virtio-blk-device,drive=hd1 -drive if=none,id=hd1,file=" - serial_port= - ;; - arm-efi) - qemu=qemu-system-arm - boot=hd - console=console - trim=1 - qemuopts="-machine virt -bios /usr/share/ovmf-arm/QEMU_EFI.fd $qemuopts" - disk="device virtio-blk-device,drive=hd1 -drive if=none,id=hd1,file=" - serial_port=efi0 - ;; - *) - boot=hd - qemu=qemu-system-i386 - console=console;; -esac - -timeout=60 -mkimage_extra_arg= - -# Check the arguments. -for option in "$@"; do - case "$option" in - -h | --help) - usage - exit 0 ;; - -v | --version) - echo "$0 (GNU GRUB ${PACKAGE_VERSION})" - exit 0 ;; - --trim) - trim=1 - ;; - --debug) - debug=1 ;; - --modules=*) - ms=`echo "$option" | sed -e 's/--modules=//' -e 's/,/ /g'` - modules="$modules $ms" ;; - --files=*) - fls=`echo "$option" | sed -e 's/--files=//' -e 's/,/ /g'` - files="$files $fls" ;; - --mkrescue-arg=*) - mkr=`echo "$option" | sed -e 's/--mkrescue-arg=//' -e 's/,/ /g'` - mkrescue_args="$mkrescue_args $mkr" ;; - --qemu=*) - qemu=`echo "$option" | sed -e 's/--qemu=//' -e 's/,/ /g'`;; - --pseries) - qemu=qemu-system-ppc64 - serial_port=ieee1275/hvterm - serial_null= - qemuopts="$qemuopts -M pseries -no-reboot" - trim=1 - pseries=y - ;; - --qemu-opts=*) - qs=`echo "$option" | sed -e 's/--qemu-opts=//'` - qemuopts="$qemuopts $qs" ;; - --disk=*) - dsk=`echo "$option" | sed -e 's/--disk=//'` - if [ ${grub_modinfo_platform} = emu ]; then - echo "(hd$disk) $dsk" >> "$device_map" - disk="$((disk+1))" - else - if [ "$disk" = error ]; then - echo "Too many disks" 1>&2 - exit 1; - fi - qemuopts="$qemuopts -$disk$dsk" - if [ "$disk" = "hda " ]; then - disk="hdb "; - elif [ "$disk" = "hdb " ]; then - # CDROM is hdc - disk="hdd " - elif [ "$disk" = "hdd " ]; then - # CDROM is hdc - disk=error - fi - fi - ;; - --timeout=*) - timeout=`echo "$option" | sed -e 's/--timeout=//'` - ;; - - # Intentionally undocumented - --grub-mkimage-extra) - mkimage_extra_arg="$mkimage_extra_arg `argument $option "$@"`"; shift ;; - --grub-mkimage-extra=*) - mkimage_extra_arg="$mkimage_extra_arg `echo "$option" | sed 's/--grub-mkimage-extra=//'`" ;; - - --boot=*) - dev=`echo "$option" | sed -e 's/--boot=//'` - if [ "$dev" = "fd" ] ; then boot=fd; - elif [ "$dev" = "hd" ] ; then boot=hd; - elif [ "$dev" = "cd" ] ; then boot=cd; - elif [ "$dev" = "net" ] ; then boot=net; - elif [ "$dev" = "qemu" ] ; then boot=qemu; - elif [ "$dev" = "coreboot" ] ; then boot=coreboot; - elif [ "$dev" = "mips_qemu" ] ; then boot=mips_qemu; - elif [ "$dev" = "mipsel_qemu" ] ; then boot=mipsel_qemu; - elif [ "$dev" = "mipsel_fulong2e" ] ; then boot=mipsel_fulong2e; - else - echo "Unrecognized boot method \`$dev'" 1>&2 - usage - exit 1 - fi ;; - -*) - echo "Unrecognized option \`$option'" 1>&2 - usage - exit 1 ;; - *) - if [ "x${source}" != x ] ; then - echo "too many parameters at the end" 1>&2 - usage - exit 1 - fi - source="${option}" ;; - esac -done - -if [ "x${source}" = x ] ; then - tmpfile=`mktemp "${TMPDIR:-/tmp}/tmp.XXXXXXXXXX"` || exit 1 - while read REPLY; do - echo "$REPLY" >> ${tmpfile} - done - source=${tmpfile} -fi - -cfgfile=`mktemp "${TMPDIR:-/tmp}/tmp.XXXXXXXXXX"` || exit 1 -cat <${cfgfile} -grubshell=yes -enable_progress_indicator=0 -export enable_progress_indicator -EOF - - -if [ "${grub_modinfo_platform}" != emu ]; then - echo insmod serial >>${cfgfile} -fi - -if [ "${grub_modinfo_target_cpu}-${grub_modinfo_platform}" = powerpc-ieee1275 ]; then - echo insmod escc >>${cfgfile} -fi -if [ "${serial_port}" != "" ]; then - echo "serial ${serial_port}" >>${cfgfile} - term="serial_${serial_port}" -else - term=console -fi - -cat <>${cfgfile} -terminfo -g 1024x1024 ${term} dumb -terminal_input ${term} -terminal_output ${term} -EOF - -trim_head=664cbea8-132f-4770-8aa4-1696d59ac35c - -if [ $trim = 1 ]; then - echo "echo $trim_head" >>${cfgfile} -fi - -rom_directory=`mktemp -d "${TMPDIR:-/tmp}/tmp.XXXXXXXXXX"` || exit 1 - -for mod in ${modules} -do - echo "insmod ${mod}" >> ${cfgfile} -done - -cat <>${cfgfile} -source "\$prefix/testcase.cfg" -# Stop serial output to suppress "ACPI shutdown failed" error. -EOF -# Attempt to switch to console on i386-ieee1275 causes "screen not found" message -if [ x$console != x ] && [ x"${grub_modinfo_target_cpu}-${grub_modinfo_platform}" != xi386-ieee1275 ]; then - echo "terminal_output $console" >>${cfgfile} -fi -echo "${halt_cmd}" >>${cfgfile} - -test -z "$debug" || echo "GRUB script: ${cfgfile}" >&2 -test -z "$debug" || echo "GRUB testcase script: ${tmpfile}" >&2 -test -z "$debug" || echo "Boot device: ${boot}" >&2 - -isofile=`mktemp "${TMPDIR:-/tmp}/tmp.XXXXXXXXXX"` || exit 1 -test -z "$debug" || echo "GRUB ISO file: ${isofile}" >&2 -test -z "$debug" || echo "GRUB ROM directory: ${rom_directory}" >&2 - -if test -z "$debug"; then - qemuopts="${qemuopts} -nographic -monitor file:/dev/null" - # SeaBIOS 1.11.0 added support for VGA emulation over a serial port. If - # this is configured in SeaBIOS, then -nographic causes some extra junk to - # end up on the serial console, which interferes with our tests. This - # workaround unfortunately causes qemu to issue a warning 'externally - # provided fw_cfg item names should be prefixed with "opt/"', but there - # doesn't seem to be a better option. - qemuopts="${qemuopts} -fw_cfg name=etc/sercon-port,string=0" -fi - -if [ x$boot != xnet ] && [ x$boot != xemu ]; then - pkgdatadir="@builddir@" "@builddir@/grub-mkrescue" "--output=${isofile}" "--override-directory=${builddir}/grub-core" \ - --rom-directory="${rom_directory}" \ - --locale-directory="@srcdir@/po" \ - --themes-directory="@srcdir@/themes" \ - $mkimage_extra_arg ${mkrescue_args} \ - "/boot/grub/grub.cfg=${cfgfile}" "/boot/grub/testcase.cfg=${source}" \ - ${files} >/dev/null 2>&1 -fi -if [ x$boot = xhd ]; then - if [ "${grub_modinfo_target_cpu}-${grub_modinfo_platform}" = arm64-efi ] || [ "${grub_modinfo_target_cpu}-${grub_modinfo_platform}" = arm-efi ]; then - device="device virtio-blk-device,drive=hd0 -drive if=none,id=hd0,file=" - elif [ "${grub_modinfo_target_cpu}-${grub_modinfo_platform}" = mips-arc ]; then - device="hdb " - else - device="hda " - fi - bootdev="-boot c" -fi -if [ x$boot = xcd ]; then - if [ "${grub_modinfo_target_cpu}-${grub_modinfo_platform}" = arm64-efi ] || [ "${grub_modinfo_target_cpu}-${grub_modinfo_platform}" = arm-efi ]; then - device="device virtio-blk-device,drive=cd0 -drive if=none,id=cd0,media=cdrom,file=" - elif [ "${grub_modinfo_target_cpu}-${grub_modinfo_platform}" = powerpc-ieee1275 ] && [ x$pseries != xy ] ; then - device="-drive if=ide,media=cdrom,file=" - else - device="cdrom " - fi - bootdev="-boot d" -fi -if [ x$boot = xfd ]; then - device="fda " - bootdev="-boot a" -fi - -if [ x$boot = xqemu ]; then - bootdev="-bios ${rom_directory}/qemu.img" - device="cdrom " -fi - -if [ x$boot = xmipsel_qemu ]; then - bootdev="-kernel ${rom_directory}/mipsel-qemu_mips.elf" - device="cdrom " -fi - -if [ x$boot = xmipsel_fulong2e ]; then - bootdev="-kernel ${rom_directory}/mipsel-loongson.elf -append machtype=lemote-fuloong-2e" - device="cdrom " -fi - -if [ x$boot = xmips_qemu ]; then - bootdev="-kernel ${rom_directory}/mips-qemu_mips.elf" - device="cdrom " -fi - -if [ x$boot = xcoreboot ]; then - imgfile=`mktemp "${TMPDIR:-/tmp}/tmp.XXXXXXXXXX"` || exit 1 - cp "${GRUB_COREBOOT_ROM}" "${imgfile}" - "${GRUB_CBFSTOOL}" "${imgfile}" add-payload -f "${rom_directory}/coreboot.elf" -n fallback/payload - bootdev="-bios ${imgfile}" - device="cdrom " - test -z "$debug" || echo "Coreboot image: ${imgfile}" >&2 -fi - -if [ "${grub_modinfo_target_cpu}-${grub_modinfo_platform}" = mipsel-arc ]; then - case "$boot" in - hd) - bootdev="-global ds1225y.filename=$GRUB_QEMU_MAGNUM_NVRAM_DIR/disk" ;; - *) - bootdev="-global ds1225y.filename=$GRUB_QEMU_MAGNUM_NVRAM_DIR/cdrom";; - esac -fi - -do_trim () -{ - if [ $trim = 1 ]; then - awk '{ if (have_head == 1) print $0; } /664cbea8-132f-4770-8aa4-1696d59ac35c/ { have_head=1; }' - else - cat - fi -} - -copy_extra_files() { - _destdir="$1" - shift - - # FIXME support '=' in file names - for _file in "$@"; do - _target="${_file%=*}" - _source="${_file#*=}" - [ -n "$_source" ] || _source="$_target" - _target="$_destdir/$_target" - _targetdir="$(dirname "$_target")" - [ -d "$_targetdir" ] || mkdir -p "$_targetdir" - cp "$_source" "$_target" - done -} - -if [ x$boot = xnet ]; then - netdir=`mktemp -d "${TMPDIR:-/tmp}/tmp.XXXXXXXXXX"` || exit 1 - pkgdatadir="@builddir@" "@builddir@/grub-mknetdir" "--grub-mkimage=${builddir}/grub-mkimage" "--directory=${builddir}/grub-core" "--net-directory=$netdir" ${mkrescue_args} > /dev/null - cp "${cfgfile}" "$netdir/boot/grub/grub.cfg" - cp "${source}" "$netdir/boot/grub/testcase.cfg" - [ -z "$files" ] || copy_extra_files "$netdir" $files - timeout -s KILL $timeout "${qemu}" ${qemuopts} ${serial_null} -serial file:/dev/stdout -boot n -net "user,tftp=$netdir,bootfile=/boot/grub/${grub_modinfo_target_cpu}-${grub_modinfo_platform}/core.$netbootext" -net nic | cat | tr -d "\r" | do_trim -elif [ x$boot = xemu ]; then - rootdir="$(mktemp -d "${TMPDIR:-/tmp}/tmp.XXXXXXXXXX")" - grubdir="$rootdir/boot/grub" - mkdir -p "$grubdir/fonts" - mkdir -p "$grubdir/themes" - mkdir -p "$grubdir/locale" - test -f "@builddir@/"unicode.pf2 && cp "@builddir@/"unicode.pf2 "$grubdir/fonts/unicode.pf2" - cp -R "@srcdir@/themes/starfield" "$grubdir/themes/starfield" - for file in "@srcdir@/po/"*.gmo; do - if [ -f "$file" ]; then - cp "$file" "$grubdir/locale/" - fi - done - cp "${cfgfile}" "$grubdir/grub.cfg" - cp "${source}" "$grubdir/testcase.cfg" - [ -z "$files" ] || copy_extra_files "$rootdir" $files - roottar="$(mktemp "${TMPDIR:-/tmp}/tmp.XXXXXXXXXX")" - (cd "$rootdir"; tar cf "$roottar" .) - @builddir@/grub-core/grub-emu -m "$device_map" --memdisk "$roottar" -r memdisk -d "/boot/grub" | tr -d "\r" | do_trim - test -n "$debug" || rm -rf "$rootdir" - test -n "$debug" || rm -f "$roottar" -else - timeout -s KILL $timeout "${qemu}" ${qemuopts} ${serial_null} -serial file:/dev/stdout -${device}"${isofile}" ${bootdev} | cat | tr -d "\r" | do_trim -fi -if [ x$boot = xcoreboot ]; then - test -n "$debug" || rm -f "${imgfile}" -fi -test -n "$debug" || rm -f "${isofile}" -test -n "$debug" || rm -rf "${rom_directory}" -test -n "$debug" || rm -f "${tmpfile}" "${cfgfile}" -exit 0 - - diff --git a/thirdparty/grub-2.04/tests/xfs_test.in b/thirdparty/grub-2.04/tests/xfs_test.in deleted file mode 100644 index 03a351359..000000000 --- a/thirdparty/grub-2.04/tests/xfs_test.in +++ /dev/null @@ -1,20 +0,0 @@ -#!@BUILD_SHEBANG@ - -set -e - -if [ "x$EUID" = "x" ] ; then - EUID=`id -u` -fi - -if [ "$EUID" != 0 ] ; then - exit 77 -fi - -if ! which mkfs.xfs >/dev/null 2>&1; then - echo "mkfs.xfs not installed; cannot test xfs." - exit 77 -fi - - -"@builddir@/grub-fs-tester" xfs_crc -"@builddir@/grub-fs-tester" xfs diff --git a/thirdparty/grub-2.04/tests/xzcompress_test.in b/thirdparty/grub-2.04/tests/xzcompress_test.in deleted file mode 100644 index 03bfb5e95..000000000 --- a/thirdparty/grub-2.04/tests/xzcompress_test.in +++ /dev/null @@ -1,29 +0,0 @@ -#! @BUILD_SHEBANG@ -# Copyright (C) 2013 Free Software Foundation, Inc. -# -# GRUB is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# GRUB is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with GRUB. If not, see . - -set -e -grubshell=@builddir@/grub-shell - -. "@builddir@/grub-core/modinfo.sh" - -if ! which xz >/dev/null 2>&1; then - echo "xz not installed; cannot test xz compression." - exit 77 -fi - -if [ "$(echo hello | "${grubshell}" --mkrescue-arg=--compress=xz)" != "Hello World" ]; then - exit 1 -fi diff --git a/thirdparty/grub-2.04/tests/zfs_test.in b/thirdparty/grub-2.04/tests/zfs_test.in deleted file mode 100644 index eee62c10d..000000000 --- a/thirdparty/grub-2.04/tests/zfs_test.in +++ /dev/null @@ -1,27 +0,0 @@ -#!@BUILD_SHEBANG@ - -set -e - -if [ "x$EUID" = "x" ] ; then - EUID=`id -u` -fi - -if [ "$EUID" != 0 ] ; then - exit 77 -fi - -if ! which zpool >/dev/null 2>&1; then - echo "zpool not installed; cannot test zfs." - exit 77 -fi - -"@builddir@/grub-fs-tester" zfs -"@builddir@/grub-fs-tester" zfs_lzjb -"@builddir@/grub-fs-tester" zfs_gzip -"@builddir@/grub-fs-tester" zfs_zle -"@builddir@/grub-fs-tester" zfs_raidz3 -"@builddir@/grub-fs-tester" zfs_raidz2 -"@builddir@/grub-fs-tester" zfs_raidz -"@builddir@/grub-fs-tester" zfs_mirror -"@builddir@/grub-fs-tester" zfs_stripe -"@builddir@/grub-fs-tester" zfs_caseins diff --git a/thirdparty/grub-2.04/themes/starfield/COPYING.CC-BY-SA-3.0 b/thirdparty/grub-2.04/themes/starfield/COPYING.CC-BY-SA-3.0 deleted file mode 100644 index f7a1f1570..000000000 --- a/thirdparty/grub-2.04/themes/starfield/COPYING.CC-BY-SA-3.0 +++ /dev/null @@ -1,65 +0,0 @@ - CREATIVE COMMONS CORPORATION IS NOT A LAW FIRM AND DOES NOT PROVIDE LEGAL SERVICES. DISTRIBUTION OF THIS LICENSE DOES NOT CREATE AN ATTORNEY-CLIENT RELATIONSHIP. CREATIVE COMMONS PROVIDES THIS INFORMATION ON AN "AS-IS" BASIS. CREATIVE COMMONS MAKES NO WARRANTIES REGARDING THE INFORMATION PROVIDED, AND DISCLAIMS LIABILITY FOR DAMAGES RESULTING FROM ITS USE. - -License - -THE WORK (AS DEFINED BELOW) IS PROVIDED UNDER THE TERMS OF THIS CREATIVE COMMONS PUBLIC LICENSE ("CCPL" OR "LICENSE"). THE WORK IS PROTECTED BY COPYRIGHT AND/OR OTHER APPLICABLE LAW. ANY USE OF THE WORK OTHER THAN AS AUTHORIZED UNDER THIS LICENSE OR COPYRIGHT LAW IS PROHIBITED. - -BY EXERCISING ANY RIGHTS TO THE WORK PROVIDED HERE, YOU ACCEPT AND AGREE TO BE BOUND BY THE TERMS OF THIS LICENSE. TO THE EXTENT THIS LICENSE MAY BE CONSIDERED TO BE A CONTRACT, THE LICENSOR GRANTS YOU THE RIGHTS CONTAINED HERE IN CONSIDERATION OF YOUR ACCEPTANCE OF SUCH TERMS AND CONDITIONS. - -1. Definitions - - "Adaptation" means a work based upon the Work, or upon the Work and other pre-existing works, such as a translation, adaptation, derivative work, arrangement of music or other alterations of a literary or artistic work, or phonogram or performance and includes cinematographic adaptations or any other form in which the Work may be recast, transformed, or adapted including in any form recognizably derived from the original, except that a work that constitutes a Collection will not be considered an Adaptation for the purpose of this License. For the avoidance of doubt, where the Work is a musical work, performance or phonogram, the synchronization of the Work in timed-relation with a moving image ("synching") will be considered an Adaptation for the purpose of this License. - "Collection" means a collection of literary or artistic works, such as encyclopedias and anthologies, or performances, phonograms or broadcasts, or other works or subject matter other than works listed in Section 1(f) below, which, by reason of the selection and arrangement of their contents, constitute intellectual creations, in which the Work is included in its entirety in unmodified form along with one or more other contributions, each constituting separate and independent works in themselves, which together are assembled into a collective whole. A work that constitutes a Collection will not be considered an Adaptation (as defined below) for the purposes of this License. - "Creative Commons Compatible License" means a license that is listed at http://creativecommons.org/compatiblelicenses that has been approved by Creative Commons as being essentially equivalent to this License, including, at a minimum, because that license: (i) contains terms that have the same purpose, meaning and effect as the License Elements of this License; and, (ii) explicitly permits the relicensing of adaptations of works made available under that license under this License or a Creative Commons jurisdiction license with the same License Elements as this License. - "Distribute" means to make available to the public the original and copies of the Work or Adaptation, as appropriate, through sale or other transfer of ownership. - "License Elements" means the following high-level license attributes as selected by Licensor and indicated in the title of this License: Attribution, ShareAlike. - "Licensor" means the individual, individuals, entity or entities that offer(s) the Work under the terms of this License. - "Original Author" means, in the case of a literary or artistic work, the individual, individuals, entity or entities who created the Work or if no individual or entity can be identified, the publisher; and in addition (i) in the case of a performance the actors, singers, musicians, dancers, and other persons who act, sing, deliver, declaim, play in, interpret or otherwise perform literary or artistic works or expressions of folklore; (ii) in the case of a phonogram the producer being the person or legal entity who first fixes the sounds of a performance or other sounds; and, (iii) in the case of broadcasts, the organization that transmits the broadcast. - "Work" means the literary and/or artistic work offered under the terms of this License including without limitation any production in the literary, scientific and artistic domain, whatever may be the mode or form of its expression including digital form, such as a book, pamphlet and other writing; a lecture, address, sermon or other work of the same nature; a dramatic or dramatico-musical work; a choreographic work or entertainment in dumb show; a musical composition with or without words; a cinematographic work to which are assimilated works expressed by a process analogous to cinematography; a work of drawing, painting, architecture, sculpture, engraving or lithography; a photographic work to which are assimilated works expressed by a process analogous to photography; a work of applied art; an illustration, map, plan, sketch or three-dimensional work relative to geography, topography, architecture or science; a performance; a broadcast; a phonogram; a compilation of data to the extent it is protected as a copyrightable work; or a work performed by a variety or circus performer to the extent it is not otherwise considered a literary or artistic work. - "You" means an individual or entity exercising rights under this License who has not previously violated the terms of this License with respect to the Work, or who has received express permission from the Licensor to exercise rights under this License despite a previous violation. - "Publicly Perform" means to perform public recitations of the Work and to communicate to the public those public recitations, by any means or process, including by wire or wireless means or public digital performances; to make available to the public Works in such a way that members of the public may access these Works from a place and at a place individually chosen by them; to perform the Work to the public by any means or process and the communication to the public of the performances of the Work, including by public digital performance; to broadcast and rebroadcast the Work by any means including signs, sounds or images. - "Reproduce" means to make copies of the Work by any means including without limitation by sound or visual recordings and the right of fixation and reproducing fixations of the Work, including storage of a protected performance or phonogram in digital form or other electronic medium. - -2. Fair Dealing Rights. Nothing in this License is intended to reduce, limit, or restrict any uses free from copyright or rights arising from limitations or exceptions that are provided for in connection with the copyright protection under copyright law or other applicable laws. - -3. License Grant. Subject to the terms and conditions of this License, Licensor hereby grants You a worldwide, royalty-free, non-exclusive, perpetual (for the duration of the applicable copyright) license to exercise the rights in the Work as stated below: - - to Reproduce the Work, to incorporate the Work into one or more Collections, and to Reproduce the Work as incorporated in the Collections; - to create and Reproduce Adaptations provided that any such Adaptation, including any translation in any medium, takes reasonable steps to clearly label, demarcate or otherwise identify that changes were made to the original Work. For example, a translation could be marked "The original work was translated from English to Spanish," or a modification could indicate "The original work has been modified."; - to Distribute and Publicly Perform the Work including as incorporated in Collections; and, - to Distribute and Publicly Perform Adaptations. - - For the avoidance of doubt: - Non-waivable Compulsory License Schemes. In those jurisdictions in which the right to collect royalties through any statutory or compulsory licensing scheme cannot be waived, the Licensor reserves the exclusive right to collect such royalties for any exercise by You of the rights granted under this License; - Waivable Compulsory License Schemes. In those jurisdictions in which the right to collect royalties through any statutory or compulsory licensing scheme can be waived, the Licensor waives the exclusive right to collect such royalties for any exercise by You of the rights granted under this License; and, - Voluntary License Schemes. The Licensor waives the right to collect royalties, whether individually or, in the event that the Licensor is a member of a collecting society that administers voluntary licensing schemes, via that society, from any exercise by You of the rights granted under this License. - -The above rights may be exercised in all media and formats whether now known or hereafter devised. The above rights include the right to make such modifications as are technically necessary to exercise the rights in other media and formats. Subject to Section 8(f), all rights not expressly granted by Licensor are hereby reserved. - -4. Restrictions. The license granted in Section 3 above is expressly made subject to and limited by the following restrictions: - - You may Distribute or Publicly Perform the Work only under the terms of this License. You must include a copy of, or the Uniform Resource Identifier (URI) for, this License with every copy of the Work You Distribute or Publicly Perform. You may not offer or impose any terms on the Work that restrict the terms of this License or the ability of the recipient of the Work to exercise the rights granted to that recipient under the terms of the License. You may not sublicense the Work. You must keep intact all notices that refer to this License and to the disclaimer of warranties with every copy of the Work You Distribute or Publicly Perform. When You Distribute or Publicly Perform the Work, You may not impose any effective technological measures on the Work that restrict the ability of a recipient of the Work from You to exercise the rights granted to that recipient under the terms of the License. This Section 4(a) applies to the Work as incorporated in a Collection, but this does not require the Collection apart from the Work itself to be made subject to the terms of this License. If You create a Collection, upon notice from any Licensor You must, to the extent practicable, remove from the Collection any credit as required by Section 4(c), as requested. If You create an Adaptation, upon notice from any Licensor You must, to the extent practicable, remove from the Adaptation any credit as required by Section 4(c), as requested. - You may Distribute or Publicly Perform an Adaptation only under the terms of: (i) this License; (ii) a later version of this License with the same License Elements as this License; (iii) a Creative Commons jurisdiction license (either this or a later license version) that contains the same License Elements as this License (e.g., Attribution-ShareAlike 3.0 US)); (iv) a Creative Commons Compatible License. If you license the Adaptation under one of the licenses mentioned in (iv), you must comply with the terms of that license. If you license the Adaptation under the terms of any of the licenses mentioned in (i), (ii) or (iii) (the "Applicable License"), you must comply with the terms of the Applicable License generally and the following provisions: (I) You must include a copy of, or the URI for, the Applicable License with every copy of each Adaptation You Distribute or Publicly Perform; (II) You may not offer or impose any terms on the Adaptation that restrict the terms of the Applicable License or the ability of the recipient of the Adaptation to exercise the rights granted to that recipient under the terms of the Applicable License; (III) You must keep intact all notices that refer to the Applicable License and to the disclaimer of warranties with every copy of the Work as included in the Adaptation You Distribute or Publicly Perform; (IV) when You Distribute or Publicly Perform the Adaptation, You may not impose any effective technological measures on the Adaptation that restrict the ability of a recipient of the Adaptation from You to exercise the rights granted to that recipient under the terms of the Applicable License. This Section 4(b) applies to the Adaptation as incorporated in a Collection, but this does not require the Collection apart from the Adaptation itself to be made subject to the terms of the Applicable License. - If You Distribute, or Publicly Perform the Work or any Adaptations or Collections, You must, unless a request has been made pursuant to Section 4(a), keep intact all copyright notices for the Work and provide, reasonable to the medium or means You are utilizing: (i) the name of the Original Author (or pseudonym, if applicable) if supplied, and/or if the Original Author and/or Licensor designate another party or parties (e.g., a sponsor institute, publishing entity, journal) for attribution ("Attribution Parties") in Licensor's copyright notice, terms of service or by other reasonable means, the name of such party or parties; (ii) the title of the Work if supplied; (iii) to the extent reasonably practicable, the URI, if any, that Licensor specifies to be associated with the Work, unless such URI does not refer to the copyright notice or licensing information for the Work; and (iv) , consistent with Ssection 3(b), in the case of an Adaptation, a credit identifying the use of the Work in the Adaptation (e.g., "French translation of the Work by Original Author," or "Screenplay based on original Work by Original Author"). The credit required by this Section 4(c) may be implemented in any reasonable manner; provided, however, that in the case of a Adaptation or Collection, at a minimum such credit will appear, if a credit for all contributing authors of the Adaptation or Collection appears, then as part of these credits and in a manner at least as prominent as the credits for the other contributing authors. For the avoidance of doubt, You may only use the credit required by this Section for the purpose of attribution in the manner set out above and, by exercising Your rights under this License, You may not implicitly or explicitly assert or imply any connection with, sponsorship or endorsement by the Original Author, Licensor and/or Attribution Parties, as appropriate, of You or Your use of the Work, without the separate, express prior written permission of the Original Author, Licensor and/or Attribution Parties. - Except as otherwise agreed in writing by the Licensor or as may be otherwise permitted by applicable law, if You Reproduce, Distribute or Publicly Perform the Work either by itself or as part of any Adaptations or Collections, You must not distort, mutilate, modify or take other derogatory action in relation to the Work which would be prejudicial to the Original Author's honor or reputation. Licensor agrees that in those jurisdictions (e.g. Japan), in which any exercise of the right granted in Section 3(b) of this License (the right to make Adaptations) would be deemed to be a distortion, mutilation, modification or other derogatory action prejudicial to the Original Author's honor and reputation, the Licensor will waive or not assert, as appropriate, this Section, to the fullest extent permitted by the applicable national law, to enable You to reasonably exercise Your right under Section 3(b) of this License (right to make Adaptations) but not otherwise. - -5. Representations, Warranties and Disclaimer - -UNLESS OTHERWISE MUTUALLY AGREED TO BY THE PARTIES IN WRITING, LICENSOR OFFERS THE WORK AS-IS AND MAKES NO REPRESENTATIONS OR WARRANTIES OF ANY KIND CONCERNING THE WORK, EXPRESS, IMPLIED, STATUTORY OR OTHERWISE, INCLUDING, WITHOUT LIMITATION, WARRANTIES OF TITLE, MERCHANTIBILITY, FITNESS FOR A PARTICULAR PURPOSE, NONINFRINGEMENT, OR THE ABSENCE OF LATENT OR OTHER DEFECTS, ACCURACY, OR THE PRESENCE OF ABSENCE OF ERRORS, WHETHER OR NOT DISCOVERABLE. SOME JURISDICTIONS DO NOT ALLOW THE EXCLUSION OF IMPLIED WARRANTIES, SO SUCH EXCLUSION MAY NOT APPLY TO YOU. - -6. Limitation on Liability. EXCEPT TO THE EXTENT REQUIRED BY APPLICABLE LAW, IN NO EVENT WILL LICENSOR BE LIABLE TO YOU ON ANY LEGAL THEORY FOR ANY SPECIAL, INCIDENTAL, CONSEQUENTIAL, PUNITIVE OR EXEMPLARY DAMAGES ARISING OUT OF THIS LICENSE OR THE USE OF THE WORK, EVEN IF LICENSOR HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. - -7. Termination - - This License and the rights granted hereunder will terminate automatically upon any breach by You of the terms of this License. Individuals or entities who have received Adaptations or Collections from You under this License, however, will not have their licenses terminated provided such individuals or entities remain in full compliance with those licenses. Sections 1, 2, 5, 6, 7, and 8 will survive any termination of this License. - Subject to the above terms and conditions, the license granted here is perpetual (for the duration of the applicable copyright in the Work). Notwithstanding the above, Licensor reserves the right to release the Work under different license terms or to stop distributing the Work at any time; provided, however that any such election will not serve to withdraw this License (or any other license that has been, or is required to be, granted under the terms of this License), and this License will continue in full force and effect unless terminated as stated above. - -8. Miscellaneous - - Each time You Distribute or Publicly Perform the Work or a Collection, the Licensor offers to the recipient a license to the Work on the same terms and conditions as the license granted to You under this License. - Each time You Distribute or Publicly Perform an Adaptation, Licensor offers to the recipient a license to the original Work on the same terms and conditions as the license granted to You under this License. - If any provision of this License is invalid or unenforceable under applicable law, it shall not affect the validity or enforceability of the remainder of the terms of this License, and without further action by the parties to this agreement, such provision shall be reformed to the minimum extent necessary to make such provision valid and enforceable. - No term or provision of this License shall be deemed waived and no breach consented to unless such waiver or consent shall be in writing and signed by the party to be charged with such waiver or consent. - This License constitutes the entire agreement between the parties with respect to the Work licensed here. There are no understandings, agreements or representations with respect to the Work not specified here. Licensor shall not be bound by any additional provisions that may appear in any communication from You. This License may not be modified without the mutual written agreement of the Licensor and You. - The rights granted under, and the subject matter referenced, in this License were drafted utilizing the terminology of the Berne Convention for the Protection of Literary and Artistic Works (as amended on September 28, 1979), the Rome Convention of 1961, the WIPO Copyright Treaty of 1996, the WIPO Performances and Phonograms Treaty of 1996 and the Universal Copyright Convention (as revised on July 24, 1971). These rights and subject matter take effect in the relevant jurisdiction in which the License terms are sought to be enforced according to the corresponding provisions of the implementation of those treaty provisions in the applicable national law. If the standard suite of rights granted under applicable copyright law includes additional rights not granted under this License, such additional rights are deemed to be included in the License; this License is not intended to restrict the license of any rights under applicable law. - diff --git a/thirdparty/grub-2.04/themes/starfield/README b/thirdparty/grub-2.04/themes/starfield/README deleted file mode 100644 index 47dec407e..000000000 --- a/thirdparty/grub-2.04/themes/starfield/README +++ /dev/null @@ -1,36 +0,0 @@ -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -% GRUB2 gfxmenu default theme by Daniel Tschudi % -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - -Version history: - - 0.99: first test release - -Introduction: - - This shall be the default theme for the GRUB2. As the theme format seems to be more stable then before, there is hope that this theme will work - in future version of GRUB2 as well. - -Usage: - - The font (c.f. theme.txt) required by this theme are not supplied with it, - as they should be generated out of the newest available version at compile time. - -Remarks: - - All images of the theme have been made by the author using GIMP. - - This theme does not contain any text in a fixed language. - - As soon as gfxmenu allows it, this theme should be updated to support localised layouts, such as different position for the scrollbar depending on reading direction. - - In order to speed up the loading process on smaller resolutions, the starfield.png might be converted in to .jpeg images of different resolution. - - This theme is inspired by the work and themes of Jo Shields. - - Do not not use the m-word near the ape, ook! - - -Copyright & Licensing: - - Please see the COPYING file diff --git a/thirdparty/grub-2.04/themes/starfield/blob_w.png b/thirdparty/grub-2.04/themes/starfield/blob_w.png deleted file mode 100644 index 9915bedcb7d7eb92f17031859f40ab658e5d93e4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 836 zcmV-K1H1f*P)P000>X1^@s6#OZ}&00001b5ch_0Itp) z=>Px#24YJ`L;(K){{a7>y{D4^000SaNLh0L01FcU01FcV0GgZ_00007bV*G`2ipt| z2|F7o1i>W$000?uMObu0Z*6U5Zgc=ca%Ew3Wn>_CX>@2HM@dakSAh-}0007?NklL4-eaah71i2IsN_p833<|=s6MHAtINE0&DG# zs(!B3YM+*um!}2>26g~wSRTH_y<{?(mm>1sahz8oa+{ewW{xnkD2!KydV0DR2D%V3I5_y&81umx^GrnAMTA0vMI>&Fx#xLaZGC-xy-+9|HiJSTi;Ih1 zJRW~5B5#g63dmFf$orqNcUT<#YD|9n0PgLHOw-el&d%-qJz#LRFU z2SfyB2GMaTRgVo@YdIE+rBkWY69B6K4z7f_uIn;$N<_$UoKweV?uiJh3RQ)*7OIMl zj*c6~n7aUC0DfNyAtGXC=j7balArG8RH_PQhN{B%eX7^%9RR%Me4!9yOv4ycibNuo zj|InZ!pxkFM@L6~xm>nkb#^YeTzf?Hg_(U32?d;25CmE*7WYj8yCO z`cx1E8>;GG2C&v@rBXSZo15EQSXkHuP;I&2jE#*&x3;$4?eFhz1VP}ds?{b1L0~JD zN_}Et;%hdW{RrR%fMm;$aeREd(bLnjnM@}4h$ybAQERQJs`|cftJP{FpU+n&CnwiN zM@MIJx!fFpH2}K+g1>2y)YsP+>+S7**xlWo^*rx^@B7JWwQBPD{K3-FQel36{(G@l z{086$fNcQv<`+*bcIpU#n*b63;sDxD=Jo+p0F(giofKWKKeuZE0R8}rn;=tg;2cT- O0000 z5(ej@)Wnk16ovB4k_-iRPv3y>Mm}+%B3@4y#}JO|$v^)8-!I6(smE+^^5MNwpag@b LtDnm{r-UW|da^4D diff --git a/thirdparty/grub-2.04/themes/starfield/boot_menu_e.png b/thirdparty/grub-2.04/themes/starfield/boot_menu_e.png deleted file mode 100644 index 952c59352d4beb91bc0d288d30e67c0651557521..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 193 zcmeAS@N?(olHy`uVBq!ia0vp^azM<;!3HExZjgHe;uHtDJ29*~C-V}>VN3FMcVYMs zf(!O8p9~b?EbxddW?Cu%vM>psdsPTj$KdJe=d#Wzp$P!OEHhmI diff --git a/thirdparty/grub-2.04/themes/starfield/boot_menu_n.png b/thirdparty/grub-2.04/themes/starfield/boot_menu_n.png deleted file mode 100644 index 5da3271bb2aaad029520a0def5b362ba1375af7c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 103 zcmeAS@N?(olHy`uVBq!ia0vp^j6f{M!3HGXPAxeOq*#ibJVQ8upoSx*10?C`;uyj) uGdV#)^3VVO|LujDfdEJ}bIx(~Wn!4e%o6T;pi>K|lEKr}&t;ucLK6Td;TK&1 diff --git a/thirdparty/grub-2.04/themes/starfield/boot_menu_ne.png b/thirdparty/grub-2.04/themes/starfield/boot_menu_ne.png deleted file mode 100644 index 73dc62432b48528049c78e7372b2f6f935e14d75..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 193 zcmeAS@N?(olHy`uVBq!ia0vp^av;pX1|+Qw)-3{3EX7WqAsj$Z!;#Vfb3%SKrZ)jZ;FpS4I_1ew^G@>%H!12;&tEhY5`KLcf*mS{J99E@jC7pwv83{K{gn e{wN<~28Kyrc}&`OoRR@r&EVQ(^pF44KN!tZSl6N;G>bp!;n`K)YR*p5N~^jY-*x}aXgGdpVoOq& zCR@W+%lm2PmX}XlyYA7p>qeog`_~`6qgTe~DWM4fvMv`$ diff --git a/thirdparty/grub-2.04/themes/starfield/slider_c.png b/thirdparty/grub-2.04/themes/starfield/slider_c.png deleted file mode 100644 index 11231dfa21aa9e2f650f4112ebce35163eb45942..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 197 zcmeAS@N?(olHy`uVBq!ia0vp^B0$W@!3HGnP3ltxaf*Z7ofy`glX(f`uqAoByDx`7I;J!Gca%qgD@k*tT_@uLG}_)Usv|qJbYX{dT+i-X9I;KOI#yLobz*Y zQ}ap~oQqNuOHxx5$}>wc6x=<11Hv2m#DR(wJY5_^IIbuE`2XLY83c^}&gVFA;6OoJ fW8*>gSbc^K?~I>mIIvUz)iQXx`njxgN@xNAiTF0+ diff --git a/thirdparty/grub-2.04/themes/starfield/slider_n.png b/thirdparty/grub-2.04/themes/starfield/slider_n.png deleted file mode 100644 index 8bd4b23239d95ffb7a6e5fe3a5539096bc4d9010..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 265 zcmeAS@N?(olHy`uVBq!ia0vp^B0$W+!3HFM&b|K@NHG=%xjQkeJ16rJ$YD$Jc6VX; z4}uH!E}sk(;VkfoEM{Qf76xHPhFNnYfP(BLp1!W^w|V%u6ihUhcJ2oXNtU=qlsM<- z=BDPAFgO>bCYGe8D3oWGWGJ|M`UZqI@`(c#rFgnHhG?8$JMkcIg8>h-e(3%h$yUaQ zCdr7_g@*jM_| zgW!U_%O?XxI14-?iy0WWg+Z8+Vb&Z8pdfpRr>`sfZ5}=@1=%cd!OK7)$r9Iy66gHf z+|;}h2Ir#G#FEq$h4Rdj3xcZONi$o6}^zn3z)9QiT>ukr5xN z#4MVi5(Qt>7=18Cmuw-6#yB$<1!rW7TK<%^&;o@*TS`kW?d`q&?&mq>)|H5l#urX< z?)N)?zwe%N?|00W_735K!6cY0ZAJpLUt`4g0&^TZs)0+64-kS3bRY08;1b|H8b-ew z@IM7>g&EQ|7;NqBMyms4g2t*7cB9^5Y!P}aj#lB+Q>ULrOJ&y8(ylif8_ae~3+lj| zBlTU5-ZrDqWoxsv94f6hnGLo!n_Z~SE)8~bvtBsz(2*={1CDB@LlD}$O=!+8{5!zV z3tb(0gT-nVj^_3PW$$)MP1n$EwKxQe)zE6}!g!m>)Ma%1eL#%iCMSSwj8qS>;eECiCN&A0y&~YhrTB?Vg54>U2Sue<)79CzJt1{SGQmwZ1SBl91j zVSXt%Ha8y#u7tvo)zwI7yqhflfQH4DurCk{t**rqqL@g;7v3W=7aEo$(WRBuwe^j3 zhGvws6dNQdKNvQ`Yw=(t4r-Ngj8oH8>?ev3EUDTE3%8HmAeT~osP)ac|66 z(4{l3GepMZQaq_RLn+D%nM5NW?jz#mY`mnhuYyU+3RsH9E;SMo?gahXm_!-*U^0|Q z$k2DoiZnB{ z7s@Y>t|XE&<*1w%!((>nkoeM{$0oUcu1LX0Y4(@bt=O6r^|3N3YNK)m8pFVfy ziTymOAPK(l-P@5w%=`6=H5~le@~+d@HmJ(0vg~oz@-PZAk9;q|bs|&0y^1HrL@9k; z#7jp}etA*{a%SJR8N3D5)$Tng-v0;9iqhag6a|->71N&`MzQwBrt`+952JX``x08| za(@Ge3jd5t!M)Vvh~)viQp(#ra2xV0txDtlC#pad#eZEX<@wvJx3 zZ#NB5|6fnT0^DSibR8PVofW2`?#-<_-5|7#+deSsh_zOdWwLgS`Ung+#4myO~-C^I7df)Q4yk(I}!Qq9`JYh;G&0^}8FZ a<%7)H9Dq#}$o zde3j(j4j(rS8KZEl1g0)0+ED7evTZ4OUS|egAh!JE69V8Hv!Ri4gLk-Si#two2nAE zgSDS}ao-5$L_y!QThYbC;}cfSyj53BiCi_h2=0Vr*6m6`ttoXe8D>&(Q<{cm9`Z&l z8J*rvee{r7C{3Vs+0z>9^nZe_Tf1gl*NV>KULfxJ#GvJyT05$1z7iJujg(fnp95m| zU+G)fZ^e5Ek$gr57~cnRG-v!pHD*)$YfFRe5D;Idg&YKq_T#_-$gsml9e&c`;|@Os ljAPRIaL$(8eF5;2XV(A# diff --git a/thirdparty/grub-2.04/themes/starfield/src/bootmenu/corner.xcf b/thirdparty/grub-2.04/themes/starfield/src/bootmenu/corner.xcf deleted file mode 100644 index 5ac33d961c2f55a1ed4699a065b43e9affe749d1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 783 zcma)4O;5r=5S<^>eJY zz_E^>L=lg3+ygbw?o#gMe92yAzGCzHhezrRN~w%I!5xvxC2^=WV3g&%kh3fa<#KF| z0^uiNlCn`*oK!44Ho2LUQ3Ix`HAd^A#;W`5Z$Q>XxLd)!3bre_kCZ;&qvC9Dmy>dMXmXA%$Wz;?;CH0&Y^1*9r*v+ oa?M$@^wgp1oPlfN`0Zb*oLPpRhjS*cYsd>F$8=nMnGrw<#`0eHE;rSfLqJScLV<%c_6Vi z;yTYoQKL2+uO3Sg*CJsbs$R1B)AI{;E{#>?u@sRkRbt(~7gqH)6RgsiO2)k~m0V}K zWT8n>DHk!D+)qrjkg08rF}i3Ob$#|fq0vpXin%Hzo4T_gZrenwMe9P_o3_V&tm>2OT8}4wFTC8icGJw1L%c_lf7#>lGkhS veuJMk_@Kcrz-gC@GZ5NK;r<49KBVB)bbdb<-r)UM3qGkH?YajHAAD4Mbnj`t diff --git a/thirdparty/grub-2.04/themes/starfield/src/slider_c.xcf b/thirdparty/grub-2.04/themes/starfield/src/slider_c.xcf deleted file mode 100644 index 1bf7c561dd1d0eef54525652a2647fe64d7869de..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 693 zcmaJ|7AVqRol;d Ge7bLi|9}Vp diff --git a/thirdparty/grub-2.04/themes/starfield/src/slider_n.xcf b/thirdparty/grub-2.04/themes/starfield/src/slider_n.xcf deleted file mode 100644 index 2525ebb421480204ff6e5ec6b096637621268cc7..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 845 zcmcgq%}&BV5T4cw6=)Px&U=JI4ZH##h>0fNJb5T(yKL+awk5*Jc=hC4c=Hu}0Ut@a z&Xksvh*!Vl>wNp|%3YnQJ_p1Z@|Xmojnp*!oFdK98vqeONd{6!b_-2; z=a@gnXbD`_cB3HRVTxm*$`6lT2r9e06h6Gbeef3>?925z8rgn5{uCNmo8+ zN#x6EztQuA8~IVpdU>#8F>%=7Vvu8x7#34~ES>BrE$7+af=ZXk+;L?n*s$CS&DB1$ z@a#n>Qzk=q#uKWKJTKwt_JCCV+uAt0rPPN4+DEA{miI#)ZH^rGLB!D_%-cq{L8u|= zb`;VqG^HOE8Ur*cx>?b!inc16o&>E`qK<<0AXHz&#sU4l5an?(SAX2~^cNaG!@DxT zQZ;BQ4Gd&MWuOjGbdc@b{KkJ#rqW@J@qa2lA=97*nV}9;c8C4SEIia&YS;!-tzWxP Lr}%ZfjXL}Q`j@k* diff --git a/thirdparty/grub-2.04/themes/starfield/src/slider_s.xcf b/thirdparty/grub-2.04/themes/starfield/src/slider_s.xcf deleted file mode 100644 index f6469a2590dd32587f0b3cb7b745cb724dfd792c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 863 zcmcgq%}#?r5FQXM{UKWa&U70%4?jI;~R+Ngs=B~+OF(VJF73d}D+ILwJ z`C`^@^*ruGeiXA_5zLrRZ8o?W6gVJ;WvY*@(*vzlp8YMTb(Jh^M}(XWtG&=%A2LhN zT!tcLB6Q|%Lj95FC2smVAa(CsTW7bG&Y^_zSt*Rw{m_ZFN4E3C<7gQc$40k7I6>0w zNTgnBDsPq=1GH+oUDKVKHfoxl1g%w}fr9oR)L+Ba0rjyI)wo!zKJR+!8~uMvoKxyj zg$$!173d;$nS(q=(L`#>Lj|$y_%$jV} PO>RL4a>Y_D92I^5jhw!h diff --git a/thirdparty/grub-2.04/themes/starfield/src/terminalbox/center.xcf b/thirdparty/grub-2.04/themes/starfield/src/terminalbox/center.xcf deleted file mode 100644 index d59887b604b9a3a94601dd889025e1d9aeabaa6e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 649 zcmZ`%OHRWu6m$ZD(ozBCv-UDw1hrQvi;4vj7hsV(wri2tC3Z!-3?g9aZo_#tpy%f=oM+yle@2D?8!ciSPgb diff --git a/thirdparty/grub-2.04/themes/starfield/src/terminalbox/side.xcf b/thirdparty/grub-2.04/themes/starfield/src/terminalbox/side.xcf deleted file mode 100644 index c9fd30abf6bf54f30bf3691635ea6270574bb7d8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 824 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

bjZS6sA>6$E)F%l2Jqw6Y=Z~Wf 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%0Ab`mBMC?gnERU$C>Q=AY(KVpgS*?w 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 z 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

lttke!XJ12W186l4O8F6Jy{Q!>V@Cy0?yb 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

AA5z6QX=ON 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

p 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 -62spBObBO@NyNHzpW^5~Ak#T|n=$JNUaU@2uO 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�^{NNz6G;rxEO<~Bd<5Pb;&8KwBnSbza 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ⅆ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ݐsteU9&xJ?1H&=3eU}(TKCR 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ℑb8_I7f4 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�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%0Dx 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%0AZ1l$V_P5c&U@Cie&A2C(IO%iy*w0g2F|+W_ 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%0AWLyjIFKZx&U#U~5*XbF+!()-``-_$iX#tn`XNny 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

CB@S;2)&I*x4R@Sk?HvCFSAi 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 z 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

A>soWZt*WS)Vb1+I@7>l8qUsq*1?cG+ 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⁡dcZ;ohLO^F+G(YJj;Jwy#FnQak}O9+J7 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 XVW%7Ho7F$@7X(t0QmdKI;Vst03(zxssI20 diff --git a/thirdparty/grub-2.04/themes/starfield/terminal_box_e.png b/thirdparty/grub-2.04/themes/starfield/terminal_box_e.png deleted file mode 100644 index fab00d515536dfba71de9cd8361c681a30484765..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 94 zcmeAS@N?(olHy`uVBq!ia0vp^tU%1j!3HG7{-t~dQY^(zo*^7SP{WbZ0pyE%x;Tb# p%uG&6NT@j5z@YU1|Nn4y21$1o)w8o+oChjk@O1TaS?83{1ORqE7kvN# diff --git a/thirdparty/grub-2.04/themes/starfield/terminal_box_n.png b/thirdparty/grub-2.04/themes/starfield/terminal_box_n.png deleted file mode 100644 index eb9826198bdac73d7a8f9d153dd1e2b015c9a823..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 194 zcmeAS@N?(olHy`uVBq!ia0vp^j6lrF!3HE-TH5A=1d4;)ofy`glX(f`uqAoByDx`7I;J!Gca%qgD@k*tT_@uLG}_)Usv|qJiLOMmaPJ7O@Km@C9V-A&iT2y zsd*&~&PAz-C8;S2<(VZJ3hti10pX2&;y^{Ro-U3d9M@S7GV(GQ2pmx;N_rN5qxyxz e*98yRn)#EQSVgb4RlEW!WbkzLb6Mw<&;$T#4>X4W diff --git a/thirdparty/grub-2.04/themes/starfield/terminal_box_ne.png b/thirdparty/grub-2.04/themes/starfield/terminal_box_ne.png deleted file mode 100644 index d17e1da19d0273941d4ec049f048321ee053791e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 128 zcmeAS@N?(olHy`uVBq!ia0vp^tRT$61|)m))t&+=mSQK*5Dp-y;YjHK^36S6978x} zCja^Wf4>wn)14;6e}_N(|NsB$zyJTwA2@N~zy~QU%|i?m1Jj)@{bD+EVTsxc8K4mip00i_>zopr07cC#ZvX%Q diff --git a/thirdparty/grub-2.04/themes/starfield/terminal_box_nw.png b/thirdparty/grub-2.04/themes/starfield/terminal_box_nw.png deleted file mode 100644 index 0de1cac61958b1edd9c22a157ed6c0d7a67807a3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 210 zcmeAS@N?(olHy`uVBq!ia0vp^tRT$61|)m))t&+=#^NA%Cx&(BWL^R}Y)RhkEzxfm398e;ly{{O%AU&8dT ui3%MHH=X1Qxx!*ox41znChfTO?1;V{B3h-p58DGZGI+ZBxvXjBvhO|asUX9FtGlY{P+L=dNu~7y{tkEH4`oZ)iHRw`njxgN@xNAVul;X diff --git a/thirdparty/grub-2.04/themes/starfield/terminal_box_se.png b/thirdparty/grub-2.04/themes/starfield/terminal_box_se.png deleted file mode 100644 index c2bd23cd5fce97b6a3a958c7d7e1149892b85654..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 126 zcmeAS@N?(olHy`uVBq!ia0vp^tRT$61|)m))t&+=mSQK*5Dp-y;YjHK@=ZNm978x} z`gR@UWKiHa5|sXer}Tg6oP)BDoTsqy_1$6Jz_@dXmAml#i&ftaif;{ZT3Z&uz@Gm` WIDFHat2!7*KXlvY>%oA@$}0Sv6X!I RbPiBAgQu&X%Q~loCID9=AMXGF diff --git a/thirdparty/grub-2.04/themes/starfield/terminal_box_w.png b/thirdparty/grub-2.04/themes/starfield/terminal_box_w.png deleted file mode 100644 index f0968be57a4198fac3cb95d18ac5537223f54dc4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 97 zcmeAS@N?(olHy`uVBq!ia0vp^tU%1j!3HG7{-t~dQY^(zo*^7SP{WbZ0pv?~x;Tb# s%uN3C|Nnj|W#z}dY;0}jJOK<0eqUMMeqDH`2B?O?)78&qol`;+0MNA<^8f$< diff --git a/thirdparty/grub-2.04/themes/starfield/theme.txt b/thirdparty/grub-2.04/themes/starfield/theme.txt deleted file mode 100644 index 5ec871b5f..000000000 --- a/thirdparty/grub-2.04/themes/starfield/theme.txt +++ /dev/null @@ -1,79 +0,0 @@ -# Default theme for GRUB2 -# -# Copyright (C) 2011 Daniel Tschudi -# -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documentation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -# copies of the Software, and to permit persons to whom the Software is -# furnished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -# THE SOFTWARE. - -#general settings -message-font: "DejaVu Sans Regular 12" -message-color: "#000" -message-bg-color: "#fff" -terminal-box: "terminal_box_*.png" -terminal-font: "DejaVu Sans Regular 12" -desktop-image: "starfield.png" - -#help bar at the bottom -+ label { - top = 100%-25 - left = 0 - width = 100% - height = 20 - text = "@KEYMAP_MIDDLE@" - align = "center" - font = "DejaVu Sans Regular 10" - color = "#FFF" -} - -#boot menu -+ boot_menu { - left = 10% - width = 80% - top = 20% - height = 50% - item_font = "DejaVu Sans Regular 12" - item_color = "#000" - selected_item_font = "DejaVu Sans Bold 14" - selected_item_color= "#000" - selected_item_pixmap_style = "blob_*.png" - icon_height = 25 - icon_width = 25 - item_height = 26 - item_padding = 0 - item_icon_space = 0 - item_spacing = 1 - scrollbar = true - scrollbar_width = 20 - scrollbar_thumb = "slider_*.png" - menu_pixmap_style = "boot_menu_*.png" -} - -#progress bar -+ progress_bar { - id = "__timeout__" - left = 15% - top = 80% - height = 20 - width = 70% - font = "DejaVu Sans Regular 12" - text_color = "#000" - fg_color = "#fff" - bg_color = "#6ac" - border_color = "#fff" - text = "@TIMEOUT_NOTIFICATION_LONG@" -} diff --git a/thirdparty/grub-2.04/unicode/ArabicShaping.txt b/thirdparty/grub-2.04/unicode/ArabicShaping.txt deleted file mode 100644 index bab6a11f9..000000000 --- a/thirdparty/grub-2.04/unicode/ArabicShaping.txt +++ /dev/null @@ -1,378 +0,0 @@ -# ArabicShaping-6.0.0.txt -# Date: 2010-04-30, 13:47:00 PDT [KW] -# -# This file is a normative contributory data file in the -# Unicode Character Database. -# -# Copyright (c) 1991-2010 Unicode, Inc. -# For terms of use, see http://www.unicode.org/terms_of_use.html -# -# This file defines the shaping classes for Arabic, Syriac, and N'Ko -# positional shaping, repeating in machine readable form the -# information exemplified in Tables 8-3, 8-7, 8-8, 8-11, 8-12, -# 8-13, and 13-5 of The Unicode Standard, Version 6.0. -# -# See sections 8.2, 8.3, and 13.5 of The Unicode Standard, Version 6.0 -# for more information. -# -# Each line contains four fields, separated by a semicolon. -# -# Field 0: the code point, in 4-digit hexadecimal -# form, of an Arabic, Syriac, or N'Ko character. -# -# Field 1: gives a short schematic name for that character, -# abbreviated from the normative Unicode character name. -# Note that this schematic name is considered a comment, -# and does not constitute a formal property value. -# -# Field 2: defines the joining type (property name: Joining_Type) -# R Right_Joining -# L Left_Joining -# D Dual_Joining -# C Join_Causing -# U Non_Joining -# T Transparent -# See Section 8.2, Arabic for more information on these types. -# -# Field 3: defines the joining group (property name: Joining_Group) -# -# The values of the joining group are based schematically on character -# names. Where a schematic character name consists of two or more parts separated -# by spaces, the formal Joining_Group property value, as specified in -# PropertyValueAliases.txt, consists of the same name parts joined by -# underscores. Hence, the entry: -# -# 0629; TEH MARBUTA; R; TEH MARBUTA -# -# corresponds to [Joining_Group = Teh_Marbuta]. -# -# Note: The property value now designated [Joining_Group = Teh_Marbuta_Goal] -# used to apply to both of the following characters -# in earlier versions of the standard: -# -# U+06C2 ARABIC LETTER HEH GOAL WITH HAMZA ABOVE -# U+06C3 ARABIC LETTER TEH MARBUTA GOAL -# -# However, it currently applies only to U+06C3, and *not* to U+06C2. -# To avoid destabilizing existing Joining_Group property aliases, the -# prior Joining_Group value for U+06C3 (Hamza_On_Heh_Goal) has been -# retained as a property value alias, despite the fact that it -# no longer applies to its namesake character, U+06C2. -# See PropertyValueAliases.txt. -# -# When other cursive scripts are added to the Unicode Standard in -# the future, the joining group value of all its letters will default -# to jg=No_Joining_Group in this data file. Other, more specific -# joining group values will be defined only if an explicit proposal -# to define those values exactly has been approved by the UTC. This -# is the convention exemplified by the N'Ko script. Only the Arabic -# and Syriac scripts currently have explicit joining group values defined. -# -# Note: Code points that are not explicitly listed in this file are -# either of joining type T or U: -# -# - Those that not explicitly listed that are of General Category Mn, Me, or Cf -# have joining type T. -# - All others not explicitly listed have joining type U. -# -# For an explicit listing of characters of joining type T, see -# the derived property file DerivedJoiningType.txt. -# -# There are currently no characters of joining type L defined in Unicode. -# -# ############################################################# - -# Unicode; Schematic Name; Joining Type; Joining Group - -# Arabic characters - -0600; ARABIC NUMBER SIGN; U; No_Joining_Group -0601; ARABIC SIGN SANAH; U; No_Joining_Group -0602; ARABIC FOOTNOTE MARKER; U; No_Joining_Group -0603; ARABIC SIGN SAFHA; U; No_Joining_Group -0608; ARABIC RAY; U; No_Joining_Group -060B; AFGHANI SIGN; U; No_Joining_Group -0620; YEH WITH RING; D; YEH -0621; HAMZA; U; No_Joining_Group -0622; MADDA ON ALEF; R; ALEF -0623; HAMZA ON ALEF; R; ALEF -0624; HAMZA ON WAW; R; WAW -0625; HAMZA UNDER ALEF; R; ALEF -0626; HAMZA ON YEH; D; YEH -0627; ALEF; R; ALEF -0628; BEH; D; BEH -0629; TEH MARBUTA; R; TEH MARBUTA -062A; TEH; D; BEH -062B; THEH; D; BEH -062C; JEEM; D; HAH -062D; HAH; D; HAH -062E; KHAH; D; HAH -062F; DAL; R; DAL -0630; THAL; R; DAL -0631; REH; R; REH -0632; ZAIN; R; REH -0633; SEEN; D; SEEN -0634; SHEEN; D; SEEN -0635; SAD; D; SAD -0636; DAD; D; SAD -0637; TAH; D; TAH -0638; ZAH; D; TAH -0639; AIN; D; AIN -063A; GHAIN; D; AIN -063B; KEHEH WITH 2 DOTS ABOVE; D; GAF -063C; KEHEH WITH 3 DOTS BELOW; D; GAF -063D; FARSI YEH WITH INVERTED V; D; FARSI YEH -063E; FARSI YEH WITH 2 DOTS ABOVE; D; FARSI YEH -063F; FARSI YEH WITH 3 DOTS ABOVE; D; FARSI YEH -0640; TATWEEL; C; No_Joining_Group -0641; FEH; D; FEH -0642; QAF; D; QAF -0643; KAF; D; KAF -0644; LAM; D; LAM -0645; MEEM; D; MEEM -0646; NOON; D; NOON -0647; HEH; D; HEH -0648; WAW; R; WAW -0649; ALEF MAKSURA; D; YEH -064A; YEH; D; YEH -066E; DOTLESS BEH; D; BEH -066F; DOTLESS QAF; D; QAF -0671; HAMZAT WASL ON ALEF; R; ALEF -0672; WAVY HAMZA ON ALEF; R; ALEF -0673; WAVY HAMZA UNDER ALEF; R; ALEF -0674; HIGH HAMZA; U; No_Joining_Group -0675; HIGH HAMZA ALEF; R; ALEF -0676; HIGH HAMZA WAW; R; WAW -0677; HIGH HAMZA WAW WITH DAMMA; R; WAW -0678; HIGH HAMZA YEH; D; YEH -0679; TEH WITH SMALL TAH; D; BEH -067A; TEH WITH 2 DOTS VERTICAL ABOVE; D; BEH -067B; BEH WITH 2 DOTS VERTICAL BELOW; D; BEH -067C; TEH WITH RING; D; BEH -067D; TEH WITH 3 DOTS ABOVE DOWNWARD; D; BEH -067E; TEH WITH 3 DOTS BELOW; D; BEH -067F; TEH WITH 4 DOTS ABOVE; D; BEH -0680; BEH WITH 4 DOTS BELOW; D; BEH -0681; HAMZA ON HAH; D; HAH -0682; HAH WITH 2 DOTS VERTICAL ABOVE; D; HAH -0683; HAH WITH MIDDLE 2 DOTS; D; HAH -0684; HAH WITH MIDDLE 2 DOTS VERTICAL; D; HAH -0685; HAH WITH 3 DOTS ABOVE; D; HAH -0686; HAH WITH MIDDLE 3 DOTS DOWNWARD; D; HAH -0687; HAH WITH MIDDLE 4 DOTS; D; HAH -0688; DAL WITH SMALL TAH; R; DAL -0689; DAL WITH RING; R; DAL -068A; DAL WITH DOT BELOW; R; DAL -068B; DAL WITH DOT BELOW AND SMALL TAH; R; DAL -068C; DAL WITH 2 DOTS ABOVE; R; DAL -068D; DAL WITH 2 DOTS BELOW; R; DAL -068E; DAL WITH 3 DOTS ABOVE; R; DAL -068F; DAL WITH 3 DOTS ABOVE DOWNWARD; R; DAL -0690; DAL WITH 4 DOTS ABOVE; R; DAL -0691; REH WITH SMALL TAH; R; REH -0692; REH WITH SMALL V; R; REH -0693; REH WITH RING; R; REH -0694; REH WITH DOT BELOW; R; REH -0695; REH WITH SMALL V BELOW; R; REH -0696; REH WITH DOT BELOW AND DOT ABOVE; R; REH -0697; REH WITH 2 DOTS ABOVE; R; REH -0698; REH WITH 3 DOTS ABOVE; R; REH -0699; REH WITH 4 DOTS ABOVE; R; REH -069A; SEEN WITH DOT BELOW AND DOT ABOVE; D; SEEN -069B; SEEN WITH 3 DOTS BELOW; D; SEEN -069C; SEEN WITH 3 DOTS BELOW AND 3 DOTS ABOVE; D; SEEN -069D; SAD WITH 2 DOTS BELOW; D; SAD -069E; SAD WITH 3 DOTS ABOVE; D; SAD -069F; TAH WITH 3 DOTS ABOVE; D; TAH -06A0; AIN WITH 3 DOTS ABOVE; D; AIN -06A1; DOTLESS FEH; D; FEH -06A2; FEH WITH DOT MOVED BELOW; D; FEH -06A3; FEH WITH DOT BELOW; D; FEH -06A4; FEH WITH 3 DOTS ABOVE; D; FEH -06A5; FEH WITH 3 DOTS BELOW; D; FEH -06A6; FEH WITH 4 DOTS ABOVE; D; FEH -06A7; QAF WITH DOT ABOVE; D; QAF -06A8; QAF WITH 3 DOTS ABOVE; D; QAF -06A9; KEHEH; D; GAF -06AA; SWASH KAF; D; SWASH KAF -06AB; KAF WITH RING; D; GAF -06AC; KAF WITH DOT ABOVE; D; KAF -06AD; KAF WITH 3 DOTS ABOVE; D; KAF -06AE; KAF WITH 3 DOTS BELOW; D; KAF -06AF; GAF; D; GAF -06B0; GAF WITH RING; D; GAF -06B1; GAF WITH 2 DOTS ABOVE; D; GAF -06B2; GAF WITH 2 DOTS BELOW; D; GAF -06B3; GAF WITH 2 DOTS VERTICAL BELOW; D; GAF -06B4; GAF WITH 3 DOTS ABOVE; D; GAF -06B5; LAM WITH SMALL V; D; LAM -06B6; LAM WITH DOT ABOVE; D; LAM -06B7; LAM WITH 3 DOTS ABOVE; D; LAM -06B8; LAM WITH 3 DOTS BELOW; D; LAM -06B9; NOON WITH DOT BELOW; D; NOON -06BA; DOTLESS NOON; D; NOON -06BB; DOTLESS NOON WITH SMALL TAH; D; NOON -06BC; NOON WITH RING; D; NOON -06BD; NYA; D; NYA -06BE; KNOTTED HEH; D; KNOTTED HEH -06BF; HAH WITH MIDDLE 3 DOTS DOWNWARD AND DOT ABOVE; D; HAH -06C0; HAMZA ON HEH; R; TEH MARBUTA -06C1; HEH GOAL; D; HEH GOAL -06C2; HAMZA ON HEH GOAL; D; HEH GOAL -06C3; TEH MARBUTA GOAL; R; TEH MARBUTA GOAL -06C4; WAW WITH RING; R; WAW -06C5; WAW WITH BAR; R; WAW -06C6; WAW WITH SMALL V; R; WAW -06C7; WAW WITH DAMMA; R; WAW -06C8; WAW WITH ALEF ABOVE; R; WAW -06C9; WAW WITH INVERTED SMALL V; R; WAW -06CA; WAW WITH 2 DOTS ABOVE; R; WAW -06CB; WAW WITH 3 DOTS ABOVE; R; WAW -06CC; FARSI YEH; D; FARSI YEH -06CD; YEH WITH TAIL; R; YEH WITH TAIL -06CE; FARSI YEH WITH SMALL V; D; FARSI YEH -06CF; WAW WITH DOT ABOVE; R; WAW -06D0; YEH WITH 2 DOTS VERTICAL BELOW; D; YEH -06D1; YEH WITH 3 DOTS BELOW; D; YEH -06D2; YEH BARREE; R; YEH BARREE -06D3; HAMZA ON YEH BARREE; R; YEH BARREE -06D5; AE; R; TEH MARBUTA -06DD; ARABIC END OF AYAH; U; No_Joining_Group -06EE; DAL WITH INVERTED V; R; DAL -06EF; REH WITH INVERTED V; R; REH -06FA; SEEN WITH DOT BELOW AND 3 DOTS ABOVE; D; SEEN -06FB; DAD WITH DOT BELOW; D; SAD -06FC; GHAIN WITH DOT BELOW; D; AIN -06FF; HEH WITH INVERTED V; D; KNOTTED HEH - -# Syriac characters - -0710; ALAPH; R; ALAPH -0712; BETH; D; BETH -0713; GAMAL; D; GAMAL -0714; GAMAL GARSHUNI; D; GAMAL -0715; DALATH; R; DALATH RISH -0716; DOTLESS DALATH RISH; R; DALATH RISH -0717; HE; R; HE -0718; WAW; R; SYRIAC WAW -0719; ZAIN; R; ZAIN -071A; HETH; D; HETH -071B; TETH; D; TETH -071C; TETH GARSHUNI; D; TETH -071D; YUDH; D; YUDH -071E; YUDH HE; R; YUDH HE -071F; KAPH; D; KAPH -0720; LAMADH; D; LAMADH -0721; MIM; D; MIM -0722; NUN; D; NUN -0723; SEMKATH; D; SEMKATH -0724; FINAL SEMKATH; D; FINAL SEMKATH -0725; E; D; E -0726; PE; D; PE -0727; REVERSED PE; D; REVERSED PE -0728; SADHE; R; SADHE -0729; QAPH; D; QAPH -072A; RISH; R; DALATH RISH -072B; SHIN; D; SHIN -072C; TAW; R; TAW -072D; PERSIAN BHETH; D; BETH -072E; PERSIAN GHAMAL; D; GAMAL -072F; PERSIAN DHALATH; R; DALATH RISH -074D; SOGDIAN ZHAIN; R; ZHAIN -074E; SOGDIAN KHAPH; D; KHAPH -074F; SOGDIAN FE; D; FE - -# Arabic supplement characters - -0750; BEH WITH 3 DOTS HORIZONTALLY BELOW; D; BEH -0751; BEH WITH DOT BELOW AND 3 DOTS ABOVE; D; BEH -0752; BEH WITH 3 DOTS POINTING UPWARDS BELOW; D; BEH -0753; BEH WITH 3 DOTS POINTING UPWARDS BELOW AND 2 DOTS ABOVE; D; BEH -0754; BEH WITH 2 DOTS BELOW AND DOT ABOVE; D; BEH -0755; BEH WITH INVERTED SMALL V BELOW; D; BEH -0756; BEH WITH SMALL V; D; BEH -0757; HAH WITH 2 DOTS ABOVE; D; HAH -0758; HAH WITH 3 DOTS POINTING UPWARDS BELOW; D; HAH -0759; DAL WITH 2 DOTS VERTICALLY BELOW AND SMALL TAH; R; DAL -075A; DAL WITH INVERTED SMALL V BELOW; R; DAL -075B; REH WITH STROKE; R; REH -075C; SEEN WITH 4 DOTS ABOVE; D; SEEN -075D; AIN WITH 2 DOTS ABOVE; D; AIN -075E; AIN WITH 3 DOTS POINTING DOWNWARDS ABOVE; D; AIN -075F; AIN WITH 2 DOTS VERTICALLY ABOVE; D; AIN -0760; FEH WITH 2 DOTS BELOW; D; FEH -0761; FEH WITH 3 DOTS POINTING UPWARDS BELOW; D; FEH -0762; KEHEH WITH DOT ABOVE; D; GAF -0763; KEHEH WITH 3 DOTS ABOVE; D; GAF -0764; KEHEH WITH 3 DOTS POINTING UPWARDS BELOW; D; GAF -0765; MEEM WITH DOT ABOVE; D; MEEM -0766; MEEM WITH DOT BELOW; D; MEEM -0767; NOON WITH 2 DOTS BELOW; D; NOON -0768; NOON WITH SMALL TAH; D; NOON -0769; NOON WITH SMALL V; D; NOON -076A; LAM WITH BAR; D; LAM -076B; REH WITH 2 DOTS VERTICALLY ABOVE; R; REH -076C; REH WITH HAMZA ABOVE; R; REH -076D; SEEN WITH 2 DOTS VERTICALLY ABOVE; D; SEEN -076E; HAH WITH SMALL TAH BELOW; D; HAH -076F; HAH WITH SMALL TAH AND 2 DOTS; D; HAH -0770; SEEN WITH SMALL TAH AND 2 DOTS; D; SEEN -0771; REH WITH SMALL TAH AND 2 DOTS; R; REH -0772; HAH WITH SMALL TAH ABOVE; D; HAH -0773; ALEF WITH DIGIT TWO ABOVE; R; ALEF -0774; ALEF WITH DIGIT THREE ABOVE; R; ALEF -0775; FARSI YEH WITH DIGIT TWO ABOVE; D; FARSI YEH -0776; FARSI YEH WITH DIGIT THREE ABOVE; D; FARSI YEH -0777; YEH WITH DIGIT FOUR BELOW; D; YEH -0778; WAW WITH DIGIT TWO ABOVE; R; WAW -0779; WAW WITH DIGIT THREE ABOVE; R; WAW -077A; YEH BARREE WITH DIGIT TWO ABOVE; D; BURUSHASKI YEH BARREE -077B; YEH BARREE WITH DIGIT THREE ABOVE; D; BURUSHASKI YEH BARREE -077C; HAH WITH DIGIT FOUR BELOW; D; HAH -077D; SEEN WITH DIGIT FOUR ABOVE; D; SEEN -077E; SEEN WITH INVERTED V; D; SEEN -077F; KAF WITH 2 DOTS ABOVE; D; KAF - -# N'Ko Characters - -07CA; NKO A; D; No_Joining_Group -07CB; NKO EE; D; No_Joining_Group -07CC; NKO I; D; No_Joining_Group -07CD; NKO E; D; No_Joining_Group -07CE; NKO U; D; No_Joining_Group -07CF; NKO OO; D; No_Joining_Group -07D0; NKO O; D; No_Joining_Group -07D1; NKO DAGBASINNA; D; No_Joining_Group -07D2; NKO N; D; No_Joining_Group -07D3; NKO BA; D; No_Joining_Group -07D4; NKO PA; D; No_Joining_Group -07D5; NKO TA; D; No_Joining_Group -07D6; NKO JA; D; No_Joining_Group -07D7; NKO CHA; D; No_Joining_Group -07D8; NKO DA; D; No_Joining_Group -07D9; NKO RA; D; No_Joining_Group -07DA; NKO RRA; D; No_Joining_Group -07DB; NKO SA; D; No_Joining_Group -07DC; NKO GBA; D; No_Joining_Group -07DD; NKO FA; D; No_Joining_Group -07DE; NKO KA; D; No_Joining_Group -07DF; NKO LA; D; No_Joining_Group -07E0; NKO NA WOLOSO; D; No_Joining_Group -07E1; NKO MA; D; No_Joining_Group -07E2; NKO NYA; D; No_Joining_Group -07E3; NKO NA; D; No_Joining_Group -07E4; NKO HA; D; No_Joining_Group -07E5; NKO WA; D; No_Joining_Group -07E6; NKO YA; D; No_Joining_Group -07E7; NKO NYA WOLOSO; D; No_Joining_Group -07E8; NKO JONA JA; D; No_Joining_Group -07E9; NKO JONA CHA; D; No_Joining_Group -07EA; NKO JONA RA; D; No_Joining_Group -07FA; NKO LAJANYALAN; C; No_Joining_Group - -# Other - -200C; ZERO WIDTH NON-JOINER; U; No_Joining_Group -200D; ZERO WIDTH JOINER; C; No_Joining_Group - -# EOF diff --git a/thirdparty/grub-2.04/unicode/BidiMirroring.txt b/thirdparty/grub-2.04/unicode/BidiMirroring.txt deleted file mode 100644 index 902f9a6b8..000000000 --- a/thirdparty/grub-2.04/unicode/BidiMirroring.txt +++ /dev/null @@ -1,597 +0,0 @@ -# BidiMirroring-6.0.0.txt -# Date: 2010-06-21, 12:09:00 PDT [KW] -# -# Bidi_Mirroring_Glyph Property -# -# This file is an informative contributory data file in the -# Unicode Character Database. -# -# Copyright (c) 1991-2010 Unicode, Inc. -# For terms of use, see http://www.unicode.org/terms_of_use.html -# -# This data file lists characters that have the Bidi_Mirrored=True property -# value, for which there is another Unicode character that typically has a glyph -# that is the mirror image of the original character's glyph. -# -# The repertoire covered by the file is Unicode 6.0.0. -# -# The file contains a list of lines with mappings from one code point -# to another one for character-based mirroring. -# Note that for "real" mirroring, a rendering engine needs to select -# appropriate alternative glyphs, and that many Unicode characters do not -# have a mirror-image Unicode character. -# -# Each mapping line contains two fields, separated by a semicolon (';'). -# Each of the two fields contains a code point represented as a -# variable-length hexadecimal value with 4 to 6 digits. -# A comment indicates where the characters are "BEST FIT" mirroring. -# -# Code points for which Bidi_Mirrored=True, but for which no appropriate -# characters exist with mirrored glyphs, are -# listed as comments at the end of the file. -# -# Formally, the default value of the Bidi_Mirroring_Glyph property -# for each code point is the code point itself, unless a mapping to -# some other character is specified in this data file. When a code -# point has the default value for the Bidi_Mirroring_Glyph property, -# that means that no other character exists whose glyph is suitable -# for character-based mirroring. -# -# For information on bidi mirroring, see UAX #9: Bidirectional Algorithm, -# at http://www.unicode.org/unicode/reports/tr9/ -# -# This file was originally created by Markus Scherer. -# Extended for Unicode 3.2, 4.0, 4.1, 5.0, 5.1, 5.2, and 6.0 by Ken Whistler. -# -# ############################################################ - -0028; 0029 # LEFT PARENTHESIS -0029; 0028 # RIGHT PARENTHESIS -003C; 003E # LESS-THAN SIGN -003E; 003C # GREATER-THAN SIGN -005B; 005D # LEFT SQUARE BRACKET -005D; 005B # RIGHT SQUARE BRACKET -007B; 007D # LEFT CURLY BRACKET -007D; 007B # RIGHT CURLY BRACKET -00AB; 00BB # LEFT-POINTING DOUBLE ANGLE QUOTATION MARK -00BB; 00AB # RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK -0F3A; 0F3B # TIBETAN MARK GUG RTAGS GYON -0F3B; 0F3A # TIBETAN MARK GUG RTAGS GYAS -0F3C; 0F3D # TIBETAN MARK ANG KHANG GYON -0F3D; 0F3C # TIBETAN MARK ANG KHANG GYAS -169B; 169C # OGHAM FEATHER MARK -169C; 169B # OGHAM REVERSED FEATHER MARK -2039; 203A # SINGLE LEFT-POINTING ANGLE QUOTATION MARK -203A; 2039 # SINGLE RIGHT-POINTING ANGLE QUOTATION MARK -2045; 2046 # LEFT SQUARE BRACKET WITH QUILL -2046; 2045 # RIGHT SQUARE BRACKET WITH QUILL -207D; 207E # SUPERSCRIPT LEFT PARENTHESIS -207E; 207D # SUPERSCRIPT RIGHT PARENTHESIS -208D; 208E # SUBSCRIPT LEFT PARENTHESIS -208E; 208D # SUBSCRIPT RIGHT PARENTHESIS -2208; 220B # ELEMENT OF -2209; 220C # NOT AN ELEMENT OF -220A; 220D # SMALL ELEMENT OF -220B; 2208 # CONTAINS AS MEMBER -220C; 2209 # DOES NOT CONTAIN AS MEMBER -220D; 220A # SMALL CONTAINS AS MEMBER -2215; 29F5 # DIVISION SLASH -223C; 223D # TILDE OPERATOR -223D; 223C # REVERSED TILDE -2243; 22CD # ASYMPTOTICALLY EQUAL TO -2252; 2253 # APPROXIMATELY EQUAL TO OR THE IMAGE OF -2253; 2252 # IMAGE OF OR APPROXIMATELY EQUAL TO -2254; 2255 # COLON EQUALS -2255; 2254 # EQUALS COLON -2264; 2265 # LESS-THAN OR EQUAL TO -2265; 2264 # GREATER-THAN OR EQUAL TO -2266; 2267 # LESS-THAN OVER EQUAL TO -2267; 2266 # GREATER-THAN OVER EQUAL TO -2268; 2269 # [BEST FIT] LESS-THAN BUT NOT EQUAL TO -2269; 2268 # [BEST FIT] GREATER-THAN BUT NOT EQUAL TO -226A; 226B # MUCH LESS-THAN -226B; 226A # MUCH GREATER-THAN -226E; 226F # [BEST FIT] NOT LESS-THAN -226F; 226E # [BEST FIT] NOT GREATER-THAN -2270; 2271 # [BEST FIT] NEITHER LESS-THAN NOR EQUAL TO -2271; 2270 # [BEST FIT] NEITHER GREATER-THAN NOR EQUAL TO -2272; 2273 # [BEST FIT] LESS-THAN OR EQUIVALENT TO -2273; 2272 # [BEST FIT] GREATER-THAN OR EQUIVALENT TO -2274; 2275 # [BEST FIT] NEITHER LESS-THAN NOR EQUIVALENT TO -2275; 2274 # [BEST FIT] NEITHER GREATER-THAN NOR EQUIVALENT TO -2276; 2277 # LESS-THAN OR GREATER-THAN -2277; 2276 # GREATER-THAN OR LESS-THAN -2278; 2279 # [BEST FIT] NEITHER LESS-THAN NOR GREATER-THAN -2279; 2278 # [BEST FIT] NEITHER GREATER-THAN NOR LESS-THAN -227A; 227B # PRECEDES -227B; 227A # SUCCEEDS -227C; 227D # PRECEDES OR EQUAL TO -227D; 227C # SUCCEEDS OR EQUAL TO -227E; 227F # [BEST FIT] PRECEDES OR EQUIVALENT TO -227F; 227E # [BEST FIT] SUCCEEDS OR EQUIVALENT TO -2280; 2281 # [BEST FIT] DOES NOT PRECEDE -2281; 2280 # [BEST FIT] DOES NOT SUCCEED -2282; 2283 # SUBSET OF -2283; 2282 # SUPERSET OF -2284; 2285 # [BEST FIT] NOT A SUBSET OF -2285; 2284 # [BEST FIT] NOT A SUPERSET OF -2286; 2287 # SUBSET OF OR EQUAL TO -2287; 2286 # SUPERSET OF OR EQUAL TO -2288; 2289 # [BEST FIT] NEITHER A SUBSET OF NOR EQUAL TO -2289; 2288 # [BEST FIT] NEITHER A SUPERSET OF NOR EQUAL TO -228A; 228B # [BEST FIT] SUBSET OF WITH NOT EQUAL TO -228B; 228A # [BEST FIT] SUPERSET OF WITH NOT EQUAL TO -228F; 2290 # SQUARE IMAGE OF -2290; 228F # SQUARE ORIGINAL OF -2291; 2292 # SQUARE IMAGE OF OR EQUAL TO -2292; 2291 # SQUARE ORIGINAL OF OR EQUAL TO -2298; 29B8 # CIRCLED DIVISION SLASH -22A2; 22A3 # RIGHT TACK -22A3; 22A2 # LEFT TACK -22A6; 2ADE # ASSERTION -22A8; 2AE4 # TRUE -22A9; 2AE3 # FORCES -22AB; 2AE5 # DOUBLE VERTICAL BAR DOUBLE RIGHT TURNSTILE -22B0; 22B1 # PRECEDES UNDER RELATION -22B1; 22B0 # SUCCEEDS UNDER RELATION -22B2; 22B3 # NORMAL SUBGROUP OF -22B3; 22B2 # CONTAINS AS NORMAL SUBGROUP -22B4; 22B5 # NORMAL SUBGROUP OF OR EQUAL TO -22B5; 22B4 # CONTAINS AS NORMAL SUBGROUP OR EQUAL TO -22B6; 22B7 # ORIGINAL OF -22B7; 22B6 # IMAGE OF -22C9; 22CA # LEFT NORMAL FACTOR SEMIDIRECT PRODUCT -22CA; 22C9 # RIGHT NORMAL FACTOR SEMIDIRECT PRODUCT -22CB; 22CC # LEFT SEMIDIRECT PRODUCT -22CC; 22CB # RIGHT SEMIDIRECT PRODUCT -22CD; 2243 # REVERSED TILDE EQUALS -22D0; 22D1 # DOUBLE SUBSET -22D1; 22D0 # DOUBLE SUPERSET -22D6; 22D7 # LESS-THAN WITH DOT -22D7; 22D6 # GREATER-THAN WITH DOT -22D8; 22D9 # VERY MUCH LESS-THAN -22D9; 22D8 # VERY MUCH GREATER-THAN -22DA; 22DB # LESS-THAN EQUAL TO OR GREATER-THAN -22DB; 22DA # GREATER-THAN EQUAL TO OR LESS-THAN -22DC; 22DD # EQUAL TO OR LESS-THAN -22DD; 22DC # EQUAL TO OR GREATER-THAN -22DE; 22DF # EQUAL TO OR PRECEDES -22DF; 22DE # EQUAL TO OR SUCCEEDS -22E0; 22E1 # [BEST FIT] DOES NOT PRECEDE OR EQUAL -22E1; 22E0 # [BEST FIT] DOES NOT SUCCEED OR EQUAL -22E2; 22E3 # [BEST FIT] NOT SQUARE IMAGE OF OR EQUAL TO -22E3; 22E2 # [BEST FIT] NOT SQUARE ORIGINAL OF OR EQUAL TO -22E4; 22E5 # [BEST FIT] SQUARE IMAGE OF OR NOT EQUAL TO -22E5; 22E4 # [BEST FIT] SQUARE ORIGINAL OF OR NOT EQUAL TO -22E6; 22E7 # [BEST FIT] LESS-THAN BUT NOT EQUIVALENT TO -22E7; 22E6 # [BEST FIT] GREATER-THAN BUT NOT EQUIVALENT TO -22E8; 22E9 # [BEST FIT] PRECEDES BUT NOT EQUIVALENT TO -22E9; 22E8 # [BEST FIT] SUCCEEDS BUT NOT EQUIVALENT TO -22EA; 22EB # [BEST FIT] NOT NORMAL SUBGROUP OF -22EB; 22EA # [BEST FIT] DOES NOT CONTAIN AS NORMAL SUBGROUP -22EC; 22ED # [BEST FIT] NOT NORMAL SUBGROUP OF OR EQUAL TO -22ED; 22EC # [BEST FIT] DOES NOT CONTAIN AS NORMAL SUBGROUP OR EQUAL -22F0; 22F1 # UP RIGHT DIAGONAL ELLIPSIS -22F1; 22F0 # DOWN RIGHT DIAGONAL ELLIPSIS -22F2; 22FA # ELEMENT OF WITH LONG HORIZONTAL STROKE -22F3; 22FB # ELEMENT OF WITH VERTICAL BAR AT END OF HORIZONTAL STROKE -22F4; 22FC # SMALL ELEMENT OF WITH VERTICAL BAR AT END OF HORIZONTAL STROKE -22F6; 22FD # ELEMENT OF WITH OVERBAR -22F7; 22FE # SMALL ELEMENT OF WITH OVERBAR -22FA; 22F2 # CONTAINS WITH LONG HORIZONTAL STROKE -22FB; 22F3 # CONTAINS WITH VERTICAL BAR AT END OF HORIZONTAL STROKE -22FC; 22F4 # SMALL CONTAINS WITH VERTICAL BAR AT END OF HORIZONTAL STROKE -22FD; 22F6 # CONTAINS WITH OVERBAR -22FE; 22F7 # SMALL CONTAINS WITH OVERBAR -2308; 2309 # LEFT CEILING -2309; 2308 # RIGHT CEILING -230A; 230B # LEFT FLOOR -230B; 230A # RIGHT FLOOR -2329; 232A # LEFT-POINTING ANGLE BRACKET -232A; 2329 # RIGHT-POINTING ANGLE BRACKET -2768; 2769 # MEDIUM LEFT PARENTHESIS ORNAMENT -2769; 2768 # MEDIUM RIGHT PARENTHESIS ORNAMENT -276A; 276B # MEDIUM FLATTENED LEFT PARENTHESIS ORNAMENT -276B; 276A # MEDIUM FLATTENED RIGHT PARENTHESIS ORNAMENT -276C; 276D # MEDIUM LEFT-POINTING ANGLE BRACKET ORNAMENT -276D; 276C # MEDIUM RIGHT-POINTING ANGLE BRACKET ORNAMENT -276E; 276F # HEAVY LEFT-POINTING ANGLE QUOTATION MARK ORNAMENT -276F; 276E # HEAVY RIGHT-POINTING ANGLE QUOTATION MARK ORNAMENT -2770; 2771 # HEAVY LEFT-POINTING ANGLE BRACKET ORNAMENT -2771; 2770 # HEAVY RIGHT-POINTING ANGLE BRACKET ORNAMENT -2772; 2773 # LIGHT LEFT TORTOISE SHELL BRACKET -2773; 2772 # LIGHT RIGHT TORTOISE SHELL BRACKET -2774; 2775 # MEDIUM LEFT CURLY BRACKET ORNAMENT -2775; 2774 # MEDIUM RIGHT CURLY BRACKET ORNAMENT -27C3; 27C4 # OPEN SUBSET -27C4; 27C3 # OPEN SUPERSET -27C5; 27C6 # LEFT S-SHAPED BAG DELIMITER -27C6; 27C5 # RIGHT S-SHAPED BAG DELIMITER -27C8; 27C9 # REVERSE SOLIDUS PRECEDING SUBSET -27C9; 27C8 # SUPERSET PRECEDING SOLIDUS -27D5; 27D6 # LEFT OUTER JOIN -27D6; 27D5 # RIGHT OUTER JOIN -27DD; 27DE # LONG RIGHT TACK -27DE; 27DD # LONG LEFT TACK -27E2; 27E3 # WHITE CONCAVE-SIDED DIAMOND WITH LEFTWARDS TICK -27E3; 27E2 # WHITE CONCAVE-SIDED DIAMOND WITH RIGHTWARDS TICK -27E4; 27E5 # WHITE SQUARE WITH LEFTWARDS TICK -27E5; 27E4 # WHITE SQUARE WITH RIGHTWARDS TICK -27E6; 27E7 # MATHEMATICAL LEFT WHITE SQUARE BRACKET -27E7; 27E6 # MATHEMATICAL RIGHT WHITE SQUARE BRACKET -27E8; 27E9 # MATHEMATICAL LEFT ANGLE BRACKET -27E9; 27E8 # MATHEMATICAL RIGHT ANGLE BRACKET -27EA; 27EB # MATHEMATICAL LEFT DOUBLE ANGLE BRACKET -27EB; 27EA # MATHEMATICAL RIGHT DOUBLE ANGLE BRACKET -27EC; 27ED # MATHEMATICAL LEFT WHITE TORTOISE SHELL BRACKET -27ED; 27EC # MATHEMATICAL RIGHT WHITE TORTOISE SHELL BRACKET -27EE; 27EF # MATHEMATICAL LEFT FLATTENED PARENTHESIS -27EF; 27EE # MATHEMATICAL RIGHT FLATTENED PARENTHESIS -2983; 2984 # LEFT WHITE CURLY BRACKET -2984; 2983 # RIGHT WHITE CURLY BRACKET -2985; 2986 # LEFT WHITE PARENTHESIS -2986; 2985 # RIGHT WHITE PARENTHESIS -2987; 2988 # Z NOTATION LEFT IMAGE BRACKET -2988; 2987 # Z NOTATION RIGHT IMAGE BRACKET -2989; 298A # Z NOTATION LEFT BINDING BRACKET -298A; 2989 # Z NOTATION RIGHT BINDING BRACKET -298B; 298C # LEFT SQUARE BRACKET WITH UNDERBAR -298C; 298B # RIGHT SQUARE BRACKET WITH UNDERBAR -298D; 2990 # LEFT SQUARE BRACKET WITH TICK IN TOP CORNER -298E; 298F # RIGHT SQUARE BRACKET WITH TICK IN BOTTOM CORNER -298F; 298E # LEFT SQUARE BRACKET WITH TICK IN BOTTOM CORNER -2990; 298D # RIGHT SQUARE BRACKET WITH TICK IN TOP CORNER -2991; 2992 # LEFT ANGLE BRACKET WITH DOT -2992; 2991 # RIGHT ANGLE BRACKET WITH DOT -2993; 2994 # LEFT ARC LESS-THAN BRACKET -2994; 2993 # RIGHT ARC GREATER-THAN BRACKET -2995; 2996 # DOUBLE LEFT ARC GREATER-THAN BRACKET -2996; 2995 # DOUBLE RIGHT ARC LESS-THAN BRACKET -2997; 2998 # LEFT BLACK TORTOISE SHELL BRACKET -2998; 2997 # RIGHT BLACK TORTOISE SHELL BRACKET -29B8; 2298 # CIRCLED REVERSE SOLIDUS -29C0; 29C1 # CIRCLED LESS-THAN -29C1; 29C0 # CIRCLED GREATER-THAN -29C4; 29C5 # SQUARED RISING DIAGONAL SLASH -29C5; 29C4 # SQUARED FALLING DIAGONAL SLASH -29CF; 29D0 # LEFT TRIANGLE BESIDE VERTICAL BAR -29D0; 29CF # VERTICAL BAR BESIDE RIGHT TRIANGLE -29D1; 29D2 # BOWTIE WITH LEFT HALF BLACK -29D2; 29D1 # BOWTIE WITH RIGHT HALF BLACK -29D4; 29D5 # TIMES WITH LEFT HALF BLACK -29D5; 29D4 # TIMES WITH RIGHT HALF BLACK -29D8; 29D9 # LEFT WIGGLY FENCE -29D9; 29D8 # RIGHT WIGGLY FENCE -29DA; 29DB # LEFT DOUBLE WIGGLY FENCE -29DB; 29DA # RIGHT DOUBLE WIGGLY FENCE -29F5; 2215 # REVERSE SOLIDUS OPERATOR -29F8; 29F9 # BIG SOLIDUS -29F9; 29F8 # BIG REVERSE SOLIDUS -29FC; 29FD # LEFT-POINTING CURVED ANGLE BRACKET -29FD; 29FC # RIGHT-POINTING CURVED ANGLE BRACKET -2A2B; 2A2C # MINUS SIGN WITH FALLING DOTS -2A2C; 2A2B # MINUS SIGN WITH RISING DOTS -2A2D; 2A2E # PLUS SIGN IN LEFT HALF CIRCLE -2A2E; 2A2D # PLUS SIGN IN RIGHT HALF CIRCLE -2A34; 2A35 # MULTIPLICATION SIGN IN LEFT HALF CIRCLE -2A35; 2A34 # MULTIPLICATION SIGN IN RIGHT HALF CIRCLE -2A3C; 2A3D # INTERIOR PRODUCT -2A3D; 2A3C # RIGHTHAND INTERIOR PRODUCT -2A64; 2A65 # Z NOTATION DOMAIN ANTIRESTRICTION -2A65; 2A64 # Z NOTATION RANGE ANTIRESTRICTION -2A79; 2A7A # LESS-THAN WITH CIRCLE INSIDE -2A7A; 2A79 # GREATER-THAN WITH CIRCLE INSIDE -2A7D; 2A7E # LESS-THAN OR SLANTED EQUAL TO -2A7E; 2A7D # GREATER-THAN OR SLANTED EQUAL TO -2A7F; 2A80 # LESS-THAN OR SLANTED EQUAL TO WITH DOT INSIDE -2A80; 2A7F # GREATER-THAN OR SLANTED EQUAL TO WITH DOT INSIDE -2A81; 2A82 # LESS-THAN OR SLANTED EQUAL TO WITH DOT ABOVE -2A82; 2A81 # GREATER-THAN OR SLANTED EQUAL TO WITH DOT ABOVE -2A83; 2A84 # LESS-THAN OR SLANTED EQUAL TO WITH DOT ABOVE RIGHT -2A84; 2A83 # GREATER-THAN OR SLANTED EQUAL TO WITH DOT ABOVE LEFT -2A8B; 2A8C # LESS-THAN ABOVE DOUBLE-LINE EQUAL ABOVE GREATER-THAN -2A8C; 2A8B # GREATER-THAN ABOVE DOUBLE-LINE EQUAL ABOVE LESS-THAN -2A91; 2A92 # LESS-THAN ABOVE GREATER-THAN ABOVE DOUBLE-LINE EQUAL -2A92; 2A91 # GREATER-THAN ABOVE LESS-THAN ABOVE DOUBLE-LINE EQUAL -2A93; 2A94 # LESS-THAN ABOVE SLANTED EQUAL ABOVE GREATER-THAN ABOVE SLANTED EQUAL -2A94; 2A93 # GREATER-THAN ABOVE SLANTED EQUAL ABOVE LESS-THAN ABOVE SLANTED EQUAL -2A95; 2A96 # SLANTED EQUAL TO OR LESS-THAN -2A96; 2A95 # SLANTED EQUAL TO OR GREATER-THAN -2A97; 2A98 # SLANTED EQUAL TO OR LESS-THAN WITH DOT INSIDE -2A98; 2A97 # SLANTED EQUAL TO OR GREATER-THAN WITH DOT INSIDE -2A99; 2A9A # DOUBLE-LINE EQUAL TO OR LESS-THAN -2A9A; 2A99 # DOUBLE-LINE EQUAL TO OR GREATER-THAN -2A9B; 2A9C # DOUBLE-LINE SLANTED EQUAL TO OR LESS-THAN -2A9C; 2A9B # DOUBLE-LINE SLANTED EQUAL TO OR GREATER-THAN -2AA1; 2AA2 # DOUBLE NESTED LESS-THAN -2AA2; 2AA1 # DOUBLE NESTED GREATER-THAN -2AA6; 2AA7 # LESS-THAN CLOSED BY CURVE -2AA7; 2AA6 # GREATER-THAN CLOSED BY CURVE -2AA8; 2AA9 # LESS-THAN CLOSED BY CURVE ABOVE SLANTED EQUAL -2AA9; 2AA8 # GREATER-THAN CLOSED BY CURVE ABOVE SLANTED EQUAL -2AAA; 2AAB # SMALLER THAN -2AAB; 2AAA # LARGER THAN -2AAC; 2AAD # SMALLER THAN OR EQUAL TO -2AAD; 2AAC # LARGER THAN OR EQUAL TO -2AAF; 2AB0 # PRECEDES ABOVE SINGLE-LINE EQUALS SIGN -2AB0; 2AAF # SUCCEEDS ABOVE SINGLE-LINE EQUALS SIGN -2AB3; 2AB4 # PRECEDES ABOVE EQUALS SIGN -2AB4; 2AB3 # SUCCEEDS ABOVE EQUALS SIGN -2ABB; 2ABC # DOUBLE PRECEDES -2ABC; 2ABB # DOUBLE SUCCEEDS -2ABD; 2ABE # SUBSET WITH DOT -2ABE; 2ABD # SUPERSET WITH DOT -2ABF; 2AC0 # SUBSET WITH PLUS SIGN BELOW -2AC0; 2ABF # SUPERSET WITH PLUS SIGN BELOW -2AC1; 2AC2 # SUBSET WITH MULTIPLICATION SIGN BELOW -2AC2; 2AC1 # SUPERSET WITH MULTIPLICATION SIGN BELOW -2AC3; 2AC4 # SUBSET OF OR EQUAL TO WITH DOT ABOVE -2AC4; 2AC3 # SUPERSET OF OR EQUAL TO WITH DOT ABOVE -2AC5; 2AC6 # SUBSET OF ABOVE EQUALS SIGN -2AC6; 2AC5 # SUPERSET OF ABOVE EQUALS SIGN -2ACD; 2ACE # SQUARE LEFT OPEN BOX OPERATOR -2ACE; 2ACD # SQUARE RIGHT OPEN BOX OPERATOR -2ACF; 2AD0 # CLOSED SUBSET -2AD0; 2ACF # CLOSED SUPERSET -2AD1; 2AD2 # CLOSED SUBSET OR EQUAL TO -2AD2; 2AD1 # CLOSED SUPERSET OR EQUAL TO -2AD3; 2AD4 # SUBSET ABOVE SUPERSET -2AD4; 2AD3 # SUPERSET ABOVE SUBSET -2AD5; 2AD6 # SUBSET ABOVE SUBSET -2AD6; 2AD5 # SUPERSET ABOVE SUPERSET -2ADE; 22A6 # SHORT LEFT TACK -2AE3; 22A9 # DOUBLE VERTICAL BAR LEFT TURNSTILE -2AE4; 22A8 # VERTICAL BAR DOUBLE LEFT TURNSTILE -2AE5; 22AB # DOUBLE VERTICAL BAR DOUBLE LEFT TURNSTILE -2AEC; 2AED # DOUBLE STROKE NOT SIGN -2AED; 2AEC # REVERSED DOUBLE STROKE NOT SIGN -2AF7; 2AF8 # TRIPLE NESTED LESS-THAN -2AF8; 2AF7 # TRIPLE NESTED GREATER-THAN -2AF9; 2AFA # DOUBLE-LINE SLANTED LESS-THAN OR EQUAL TO -2AFA; 2AF9 # DOUBLE-LINE SLANTED GREATER-THAN OR EQUAL TO -2E02; 2E03 # LEFT SUBSTITUTION BRACKET -2E03; 2E02 # RIGHT SUBSTITUTION BRACKET -2E04; 2E05 # LEFT DOTTED SUBSTITUTION BRACKET -2E05; 2E04 # RIGHT DOTTED SUBSTITUTION BRACKET -2E09; 2E0A # LEFT TRANSPOSITION BRACKET -2E0A; 2E09 # RIGHT TRANSPOSITION BRACKET -2E0C; 2E0D # LEFT RAISED OMISSION BRACKET -2E0D; 2E0C # RIGHT RAISED OMISSION BRACKET -2E1C; 2E1D # LEFT LOW PARAPHRASE BRACKET -2E1D; 2E1C # RIGHT LOW PARAPHRASE BRACKET -2E20; 2E21 # LEFT VERTICAL BAR WITH QUILL -2E21; 2E20 # RIGHT VERTICAL BAR WITH QUILL -2E22; 2E23 # TOP LEFT HALF BRACKET -2E23; 2E22 # TOP RIGHT HALF BRACKET -2E24; 2E25 # BOTTOM LEFT HALF BRACKET -2E25; 2E24 # BOTTOM RIGHT HALF BRACKET -2E26; 2E27 # LEFT SIDEWAYS U BRACKET -2E27; 2E26 # RIGHT SIDEWAYS U BRACKET -2E28; 2E29 # LEFT DOUBLE PARENTHESIS -2E29; 2E28 # RIGHT DOUBLE PARENTHESIS -3008; 3009 # LEFT ANGLE BRACKET -3009; 3008 # RIGHT ANGLE BRACKET -300A; 300B # LEFT DOUBLE ANGLE BRACKET -300B; 300A # RIGHT DOUBLE ANGLE BRACKET -300C; 300D # [BEST FIT] LEFT CORNER BRACKET -300D; 300C # [BEST FIT] RIGHT CORNER BRACKET -300E; 300F # [BEST FIT] LEFT WHITE CORNER BRACKET -300F; 300E # [BEST FIT] RIGHT WHITE CORNER BRACKET -3010; 3011 # LEFT BLACK LENTICULAR BRACKET -3011; 3010 # RIGHT BLACK LENTICULAR BRACKET -3014; 3015 # LEFT TORTOISE SHELL BRACKET -3015; 3014 # RIGHT TORTOISE SHELL BRACKET -3016; 3017 # LEFT WHITE LENTICULAR BRACKET -3017; 3016 # RIGHT WHITE LENTICULAR BRACKET -3018; 3019 # LEFT WHITE TORTOISE SHELL BRACKET -3019; 3018 # RIGHT WHITE TORTOISE SHELL BRACKET -301A; 301B # LEFT WHITE SQUARE BRACKET -301B; 301A # RIGHT WHITE SQUARE BRACKET -FE59; FE5A # SMALL LEFT PARENTHESIS -FE5A; FE59 # SMALL RIGHT PARENTHESIS -FE5B; FE5C # SMALL LEFT CURLY BRACKET -FE5C; FE5B # SMALL RIGHT CURLY BRACKET -FE5D; FE5E # SMALL LEFT TORTOISE SHELL BRACKET -FE5E; FE5D # SMALL RIGHT TORTOISE SHELL BRACKET -FE64; FE65 # SMALL LESS-THAN SIGN -FE65; FE64 # SMALL GREATER-THAN SIGN -FF08; FF09 # FULLWIDTH LEFT PARENTHESIS -FF09; FF08 # FULLWIDTH RIGHT PARENTHESIS -FF1C; FF1E # FULLWIDTH LESS-THAN SIGN -FF1E; FF1C # FULLWIDTH GREATER-THAN SIGN -FF3B; FF3D # FULLWIDTH LEFT SQUARE BRACKET -FF3D; FF3B # FULLWIDTH RIGHT SQUARE BRACKET -FF5B; FF5D # FULLWIDTH LEFT CURLY BRACKET -FF5D; FF5B # FULLWIDTH RIGHT CURLY BRACKET -FF5F; FF60 # FULLWIDTH LEFT WHITE PARENTHESIS -FF60; FF5F # FULLWIDTH RIGHT WHITE PARENTHESIS -FF62; FF63 # [BEST FIT] HALFWIDTH LEFT CORNER BRACKET -FF63; FF62 # [BEST FIT] HALFWIDTH RIGHT CORNER BRACKET - -# The following characters have no appropriate mirroring character. -# For these characters it is up to the rendering system -# to provide mirrored glyphs. - -# 2140; DOUBLE-STRUCK N-ARY SUMMATION -# 2201; COMPLEMENT -# 2202; PARTIAL DIFFERENTIAL -# 2203; THERE EXISTS -# 2204; THERE DOES NOT EXIST -# 2211; N-ARY SUMMATION -# 2216; SET MINUS -# 221A; SQUARE ROOT -# 221B; CUBE ROOT -# 221C; FOURTH ROOT -# 221D; PROPORTIONAL TO -# 221F; RIGHT ANGLE -# 2220; ANGLE -# 2221; MEASURED ANGLE -# 2222; SPHERICAL ANGLE -# 2224; DOES NOT DIVIDE -# 2226; NOT PARALLEL TO -# 222B; INTEGRAL -# 222C; DOUBLE INTEGRAL -# 222D; TRIPLE INTEGRAL -# 222E; CONTOUR INTEGRAL -# 222F; SURFACE INTEGRAL -# 2230; VOLUME INTEGRAL -# 2231; CLOCKWISE INTEGRAL -# 2232; CLOCKWISE CONTOUR INTEGRAL -# 2233; ANTICLOCKWISE CONTOUR INTEGRAL -# 2239; EXCESS -# 223B; HOMOTHETIC -# 223E; INVERTED LAZY S -# 223F; SINE WAVE -# 2240; WREATH PRODUCT -# 2241; NOT TILDE -# 2242; MINUS TILDE -# 2244; NOT ASYMPTOTICALLY EQUAL TO -# 2245; APPROXIMATELY EQUAL TO -# 2246; APPROXIMATELY BUT NOT ACTUALLY EQUAL TO -# 2247; NEITHER APPROXIMATELY NOR ACTUALLY EQUAL TO -# 2248; ALMOST EQUAL TO -# 2249; NOT ALMOST EQUAL TO -# 224A; ALMOST EQUAL OR EQUAL TO -# 224B; TRIPLE TILDE -# 224C; ALL EQUAL TO -# 225F; QUESTIONED EQUAL TO -# 2260; NOT EQUAL TO -# 2262; NOT IDENTICAL TO -# 228C; MULTISET -# 22A7; MODELS -# 22AA; TRIPLE VERTICAL BAR RIGHT TURNSTILE -# 22AC; DOES NOT PROVE -# 22AD; NOT TRUE -# 22AE; DOES NOT FORCE -# 22AF; NEGATED DOUBLE VERTICAL BAR DOUBLE RIGHT TURNSTILE -# 22B8; MULTIMAP -# 22BE; RIGHT ANGLE WITH ARC -# 22BF; RIGHT TRIANGLE -# 22F5; ELEMENT OF WITH DOT ABOVE -# 22F8; ELEMENT OF WITH UNDERBAR -# 22F9; ELEMENT OF WITH TWO HORIZONTAL STROKES -# 22FF; Z NOTATION BAG MEMBERSHIP -# 2320; TOP HALF INTEGRAL -# 2321; BOTTOM HALF INTEGRAL -# 27C0; THREE DIMENSIONAL ANGLE -# 27CC; LONG DIVISION -# 27D3; LOWER RIGHT CORNER WITH DOT -# 27D4; UPPER LEFT CORNER WITH DOT -# 27DC; LEFT MULTIMAP -# 299B; MEASURED ANGLE OPENING LEFT -# 299C; RIGHT ANGLE VARIANT WITH SQUARE -# 299D; MEASURED RIGHT ANGLE WITH DOT -# 299E; ANGLE WITH S INSIDE -# 299F; ACUTE ANGLE -# 29A0; SPHERICAL ANGLE OPENING LEFT -# 29A1; SPHERICAL ANGLE OPENING UP -# 29A2; TURNED ANGLE -# 29A3; REVERSED ANGLE -# 29A4; ANGLE WITH UNDERBAR -# 29A5; REVERSED ANGLE WITH UNDERBAR -# 29A6; OBLIQUE ANGLE OPENING UP -# 29A7; OBLIQUE ANGLE OPENING DOWN -# 29A8; MEASURED ANGLE WITH OPEN ARM ENDING IN ARROW POINTING UP AND RIGHT -# 29A9; MEASURED ANGLE WITH OPEN ARM ENDING IN ARROW POINTING UP AND LEFT -# 29AA; MEASURED ANGLE WITH OPEN ARM ENDING IN ARROW POINTING DOWN AND RIGHT -# 29AB; MEASURED ANGLE WITH OPEN ARM ENDING IN ARROW POINTING DOWN AND LEFT -# 29AC; MEASURED ANGLE WITH OPEN ARM ENDING IN ARROW POINTING RIGHT AND UP -# 29AD; MEASURED ANGLE WITH OPEN ARM ENDING IN ARROW POINTING LEFT AND UP -# 29AE; MEASURED ANGLE WITH OPEN ARM ENDING IN ARROW POINTING RIGHT AND DOWN -# 29AF; MEASURED ANGLE WITH OPEN ARM ENDING IN ARROW POINTING LEFT AND DOWN -# 29C2; CIRCLE WITH SMALL CIRCLE TO THE RIGHT -# 29C3; CIRCLE WITH TWO HORIZONTAL STROKES TO THE RIGHT -# 29C9; TWO JOINED SQUARES -# 29CE; RIGHT TRIANGLE ABOVE LEFT TRIANGLE -# 29DC; INCOMPLETE INFINITY -# 29E1; INCREASES AS -# 29E3; EQUALS SIGN AND SLANTED PARALLEL -# 29E4; EQUALS SIGN AND SLANTED PARALLEL WITH TILDE ABOVE -# 29E5; IDENTICAL TO AND SLANTED PARALLEL -# 29E8; DOWN-POINTING TRIANGLE WITH LEFT HALF BLACK -# 29E9; DOWN-POINTING TRIANGLE WITH RIGHT HALF BLACK -# 29F4; RULE-DELAYED -# 29F6; SOLIDUS WITH OVERBAR -# 29F7; REVERSE SOLIDUS WITH HORIZONTAL STROKE -# 2A0A; MODULO TWO SUM -# 2A0B; SUMMATION WITH INTEGRAL -# 2A0C; QUADRUPLE INTEGRAL OPERATOR -# 2A0D; FINITE PART INTEGRAL -# 2A0E; INTEGRAL WITH DOUBLE STROKE -# 2A0F; INTEGRAL AVERAGE WITH SLASH -# 2A10; CIRCULATION FUNCTION -# 2A11; ANTICLOCKWISE INTEGRATION -# 2A12; LINE INTEGRATION WITH RECTANGULAR PATH AROUND POLE -# 2A13; LINE INTEGRATION WITH SEMICIRCULAR PATH AROUND POLE -# 2A14; LINE INTEGRATION NOT INCLUDING THE POLE -# 2A15; INTEGRAL AROUND A POINT OPERATOR -# 2A16; QUATERNION INTEGRAL OPERATOR -# 2A17; INTEGRAL WITH LEFTWARDS ARROW WITH HOOK -# 2A18; INTEGRAL WITH TIMES SIGN -# 2A19; INTEGRAL WITH INTERSECTION -# 2A1A; INTEGRAL WITH UNION -# 2A1B; INTEGRAL WITH OVERBAR -# 2A1C; INTEGRAL WITH UNDERBAR -# 2A1E; LARGE LEFT TRIANGLE OPERATOR -# 2A1F; Z NOTATION SCHEMA COMPOSITION -# 2A20; Z NOTATION SCHEMA PIPING -# 2A21; Z NOTATION SCHEMA PROJECTION -# 2A24; PLUS SIGN WITH TILDE ABOVE -# 2A26; PLUS SIGN WITH TILDE BELOW -# 2A29; MINUS SIGN WITH COMMA ABOVE -# 2A3E; Z NOTATION RELATIONAL COMPOSITION -# 2A57; SLOPING LARGE OR -# 2A58; SLOPING LARGE AND -# 2A6A; TILDE OPERATOR WITH DOT ABOVE -# 2A6B; TILDE OPERATOR WITH RISING DOTS -# 2A6C; SIMILAR MINUS SIMILAR -# 2A6D; CONGRUENT WITH DOT ABOVE -# 2A6F; ALMOST EQUAL TO WITH CIRCUMFLEX ACCENT -# 2A70; APPROXIMATELY EQUAL OR EQUAL TO -# 2A73; EQUALS SIGN ABOVE TILDE OPERATOR -# 2A74; DOUBLE COLON EQUAL -# 2A7B; LESS-THAN WITH QUESTION MARK ABOVE -# 2A7C; GREATER-THAN WITH QUESTION MARK ABOVE -# 2A85; LESS-THAN OR APPROXIMATE -# 2A86; GREATER-THAN OR APPROXIMATE -# 2A87; LESS-THAN AND SINGLE-LINE NOT EQUAL TO -# 2A88; GREATER-THAN AND SINGLE-LINE NOT EQUAL TO -# 2A89; LESS-THAN AND NOT APPROXIMATE -# 2A8A; GREATER-THAN AND NOT APPROXIMATE -# 2A8D; LESS-THAN ABOVE SIMILAR OR EQUAL -# 2A8E; GREATER-THAN ABOVE SIMILAR OR EQUAL -# 2A8F; LESS-THAN ABOVE SIMILAR ABOVE GREATER-THAN -# 2A90; GREATER-THAN ABOVE SIMILAR ABOVE LESS-THAN -# 2A9D; SIMILAR OR LESS-THAN -# 2A9E; SIMILAR OR GREATER-THAN -# 2A9F; SIMILAR ABOVE LESS-THAN ABOVE EQUALS SIGN -# 2AA0; SIMILAR ABOVE GREATER-THAN ABOVE EQUALS SIGN -# 2AA3; DOUBLE NESTED LESS-THAN WITH UNDERBAR -# 2AB1; PRECEDES ABOVE SINGLE-LINE NOT EQUAL TO -# 2AB2; SUCCEEDS ABOVE SINGLE-LINE NOT EQUAL TO -# 2AB5; PRECEDES ABOVE NOT EQUAL TO -# 2AB6; SUCCEEDS ABOVE NOT EQUAL TO -# 2AB7; PRECEDES ABOVE ALMOST EQUAL TO -# 2AB8; SUCCEEDS ABOVE ALMOST EQUAL TO -# 2AB9; PRECEDES ABOVE NOT ALMOST EQUAL TO -# 2ABA; SUCCEEDS ABOVE NOT ALMOST EQUAL TO -# 2AC7; SUBSET OF ABOVE TILDE OPERATOR -# 2AC8; SUPERSET OF ABOVE TILDE OPERATOR -# 2AC9; SUBSET OF ABOVE ALMOST EQUAL TO -# 2ACA; SUPERSET OF ABOVE ALMOST EQUAL TO -# 2ACB; SUBSET OF ABOVE NOT EQUAL TO -# 2ACC; SUPERSET OF ABOVE NOT EQUAL TO -# 2ADC; FORKING -# 2AE2; VERTICAL BAR TRIPLE RIGHT TURNSTILE -# 2AE6; LONG DASH FROM LEFT MEMBER OF DOUBLE VERTICAL -# 2AEE; DOES NOT DIVIDE WITH REVERSED NEGATION SLASH -# 2AF3; PARALLEL WITH TILDE OPERATOR -# 2AFB; TRIPLE SOLIDUS BINARY RELATION -# 2AFD; DOUBLE SOLIDUS OPERATOR -# 1D6DB; MATHEMATICAL BOLD PARTIAL DIFFERENTIAL -# 1D715; MATHEMATICAL ITALIC PARTIAL DIFFERENTIAL -# 1D74F; MATHEMATICAL BOLD ITALIC PARTIAL DIFFERENTIAL -# 1D789; MATHEMATICAL SANS-SERIF BOLD PARTIAL DIFFERENTIAL -# 1D7C3; MATHEMATICAL SANS-SERIF BOLD ITALIC PARTIAL DIFFERENTIAL - -# EOF diff --git a/thirdparty/grub-2.04/unicode/COPYING b/thirdparty/grub-2.04/unicode/COPYING deleted file mode 100644 index ad63a2bbc..000000000 --- a/thirdparty/grub-2.04/unicode/COPYING +++ /dev/null @@ -1,9 +0,0 @@ -COPYRIGHT AND PERMISSION NOTICE - -Copyright © 1991-2011 Unicode, Inc. All rights reserved. Distributed under the Terms of Use in http://www.unicode.org/copyright.html. - -Permission is hereby granted, free of charge, to any person obtaining a copy of the Unicode data files and any associated documentation (the "Data Files") or Unicode software and any associated documentation (the "Software") to deal in the Data Files or Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, and/or sell copies of the Data Files or Software, and to permit persons to whom the Data Files or Software are furnished to do so, provided that (a) the above copyright notice(s) and this permission notice appear with all copies of the Data Files or Software, (b) both the above copyright notice(s) and this permission notice appear in associated documentation, and (c) there is clear notice in each modified Data File or in the Software as well as in the documentation associated with the Data File(s) or Software that the data or software has been modified. - -THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF THIRD PARTY RIGHTS. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA FILES OR SOFTWARE. - -Except as contained in this notice, the name of a copyright holder shall not be used in advertising or otherwise to promote the sale, use or other dealings in these Data Files or Software without prior written authorization of the copyright holder. diff --git a/thirdparty/grub-2.04/unicode/UnicodeData.txt b/thirdparty/grub-2.04/unicode/UnicodeData.txt deleted file mode 100644 index 8d7222b13..000000000 --- a/thirdparty/grub-2.04/unicode/UnicodeData.txt +++ /dev/null @@ -1,23697 +0,0 @@ -0000;;Cc;0;BN;;;;;N;NULL;;;; -0001;;Cc;0;BN;;;;;N;START OF HEADING;;;; -0002;;Cc;0;BN;;;;;N;START OF TEXT;;;; -0003;;Cc;0;BN;;;;;N;END OF TEXT;;;; -0004;;Cc;0;BN;;;;;N;END OF TRANSMISSION;;;; -0005;;Cc;0;BN;;;;;N;ENQUIRY;;;; -0006;;Cc;0;BN;;;;;N;ACKNOWLEDGE;;;; -0007;;Cc;0;BN;;;;;N;BELL;;;; -0008;;Cc;0;BN;;;;;N;BACKSPACE;;;; -0009;;Cc;0;S;;;;;N;CHARACTER TABULATION;;;; -000A;;Cc;0;B;;;;;N;LINE FEED (LF);;;; -000B;;Cc;0;S;;;;;N;LINE TABULATION;;;; -000C;;Cc;0;WS;;;;;N;FORM FEED (FF);;;; -000D;;Cc;0;B;;;;;N;CARRIAGE RETURN (CR);;;; -000E;;Cc;0;BN;;;;;N;SHIFT OUT;;;; -000F;;Cc;0;BN;;;;;N;SHIFT IN;;;; -0010;;Cc;0;BN;;;;;N;DATA LINK ESCAPE;;;; -0011;;Cc;0;BN;;;;;N;DEVICE CONTROL ONE;;;; -0012;;Cc;0;BN;;;;;N;DEVICE CONTROL TWO;;;; -0013;;Cc;0;BN;;;;;N;DEVICE CONTROL THREE;;;; -0014;;Cc;0;BN;;;;;N;DEVICE CONTROL FOUR;;;; -0015;;Cc;0;BN;;;;;N;NEGATIVE ACKNOWLEDGE;;;; -0016;;Cc;0;BN;;;;;N;SYNCHRONOUS IDLE;;;; -0017;;Cc;0;BN;;;;;N;END OF TRANSMISSION BLOCK;;;; -0018;;Cc;0;BN;;;;;N;CANCEL;;;; -0019;;Cc;0;BN;;;;;N;END OF MEDIUM;;;; -001A;;Cc;0;BN;;;;;N;SUBSTITUTE;;;; -001B;;Cc;0;BN;;;;;N;ESCAPE;;;; -001C;;Cc;0;B;;;;;N;INFORMATION SEPARATOR FOUR;;;; -001D;;Cc;0;B;;;;;N;INFORMATION SEPARATOR THREE;;;; -001E;;Cc;0;B;;;;;N;INFORMATION SEPARATOR TWO;;;; -001F;;Cc;0;S;;;;;N;INFORMATION SEPARATOR ONE;;;; -0020;SPACE;Zs;0;WS;;;;;N;;;;; -0021;EXCLAMATION MARK;Po;0;ON;;;;;N;;;;; -0022;QUOTATION MARK;Po;0;ON;;;;;N;;;;; -0023;NUMBER SIGN;Po;0;ET;;;;;N;;;;; -0024;DOLLAR SIGN;Sc;0;ET;;;;;N;;;;; -0025;PERCENT SIGN;Po;0;ET;;;;;N;;;;; -0026;AMPERSAND;Po;0;ON;;;;;N;;;;; -0027;APOSTROPHE;Po;0;ON;;;;;N;APOSTROPHE-QUOTE;;;; -0028;LEFT PARENTHESIS;Ps;0;ON;;;;;Y;OPENING PARENTHESIS;;;; -0029;RIGHT PARENTHESIS;Pe;0;ON;;;;;Y;CLOSING PARENTHESIS;;;; -002A;ASTERISK;Po;0;ON;;;;;N;;;;; -002B;PLUS SIGN;Sm;0;ES;;;;;N;;;;; -002C;COMMA;Po;0;CS;;;;;N;;;;; -002D;HYPHEN-MINUS;Pd;0;ES;;;;;N;;;;; -002E;FULL STOP;Po;0;CS;;;;;N;PERIOD;;;; -002F;SOLIDUS;Po;0;CS;;;;;N;SLASH;;;; -0030;DIGIT ZERO;Nd;0;EN;;0;0;0;N;;;;; -0031;DIGIT ONE;Nd;0;EN;;1;1;1;N;;;;; -0032;DIGIT TWO;Nd;0;EN;;2;2;2;N;;;;; -0033;DIGIT THREE;Nd;0;EN;;3;3;3;N;;;;; -0034;DIGIT FOUR;Nd;0;EN;;4;4;4;N;;;;; -0035;DIGIT FIVE;Nd;0;EN;;5;5;5;N;;;;; -0036;DIGIT SIX;Nd;0;EN;;6;6;6;N;;;;; -0037;DIGIT SEVEN;Nd;0;EN;;7;7;7;N;;;;; -0038;DIGIT EIGHT;Nd;0;EN;;8;8;8;N;;;;; -0039;DIGIT NINE;Nd;0;EN;;9;9;9;N;;;;; -003A;COLON;Po;0;CS;;;;;N;;;;; -003B;SEMICOLON;Po;0;ON;;;;;N;;;;; -003C;LESS-THAN SIGN;Sm;0;ON;;;;;Y;;;;; -003D;EQUALS SIGN;Sm;0;ON;;;;;N;;;;; -003E;GREATER-THAN SIGN;Sm;0;ON;;;;;Y;;;;; -003F;QUESTION MARK;Po;0;ON;;;;;N;;;;; -0040;COMMERCIAL AT;Po;0;ON;;;;;N;;;;; -0041;LATIN CAPITAL LETTER A;Lu;0;L;;;;;N;;;;0061; -0042;LATIN CAPITAL LETTER B;Lu;0;L;;;;;N;;;;0062; -0043;LATIN CAPITAL LETTER C;Lu;0;L;;;;;N;;;;0063; -0044;LATIN CAPITAL LETTER D;Lu;0;L;;;;;N;;;;0064; -0045;LATIN CAPITAL LETTER E;Lu;0;L;;;;;N;;;;0065; -0046;LATIN CAPITAL LETTER F;Lu;0;L;;;;;N;;;;0066; -0047;LATIN CAPITAL LETTER G;Lu;0;L;;;;;N;;;;0067; -0048;LATIN CAPITAL LETTER H;Lu;0;L;;;;;N;;;;0068; -0049;LATIN CAPITAL LETTER I;Lu;0;L;;;;;N;;;;0069; -004A;LATIN CAPITAL LETTER J;Lu;0;L;;;;;N;;;;006A; -004B;LATIN CAPITAL LETTER K;Lu;0;L;;;;;N;;;;006B; -004C;LATIN CAPITAL LETTER L;Lu;0;L;;;;;N;;;;006C; -004D;LATIN CAPITAL LETTER M;Lu;0;L;;;;;N;;;;006D; -004E;LATIN CAPITAL LETTER N;Lu;0;L;;;;;N;;;;006E; -004F;LATIN CAPITAL LETTER O;Lu;0;L;;;;;N;;;;006F; -0050;LATIN CAPITAL LETTER P;Lu;0;L;;;;;N;;;;0070; -0051;LATIN CAPITAL LETTER Q;Lu;0;L;;;;;N;;;;0071; -0052;LATIN CAPITAL LETTER R;Lu;0;L;;;;;N;;;;0072; -0053;LATIN CAPITAL LETTER S;Lu;0;L;;;;;N;;;;0073; -0054;LATIN CAPITAL LETTER T;Lu;0;L;;;;;N;;;;0074; -0055;LATIN CAPITAL LETTER U;Lu;0;L;;;;;N;;;;0075; -0056;LATIN CAPITAL LETTER V;Lu;0;L;;;;;N;;;;0076; -0057;LATIN CAPITAL LETTER W;Lu;0;L;;;;;N;;;;0077; -0058;LATIN CAPITAL LETTER X;Lu;0;L;;;;;N;;;;0078; -0059;LATIN CAPITAL LETTER Y;Lu;0;L;;;;;N;;;;0079; -005A;LATIN CAPITAL LETTER Z;Lu;0;L;;;;;N;;;;007A; -005B;LEFT SQUARE BRACKET;Ps;0;ON;;;;;Y;OPENING SQUARE BRACKET;;;; -005C;REVERSE SOLIDUS;Po;0;ON;;;;;N;BACKSLASH;;;; -005D;RIGHT SQUARE BRACKET;Pe;0;ON;;;;;Y;CLOSING SQUARE BRACKET;;;; -005E;CIRCUMFLEX ACCENT;Sk;0;ON;;;;;N;SPACING CIRCUMFLEX;;;; -005F;LOW LINE;Pc;0;ON;;;;;N;SPACING UNDERSCORE;;;; -0060;GRAVE ACCENT;Sk;0;ON;;;;;N;SPACING GRAVE;;;; -0061;LATIN SMALL LETTER A;Ll;0;L;;;;;N;;;0041;;0041 -0062;LATIN SMALL LETTER B;Ll;0;L;;;;;N;;;0042;;0042 -0063;LATIN SMALL LETTER C;Ll;0;L;;;;;N;;;0043;;0043 -0064;LATIN SMALL LETTER D;Ll;0;L;;;;;N;;;0044;;0044 -0065;LATIN SMALL LETTER E;Ll;0;L;;;;;N;;;0045;;0045 -0066;LATIN SMALL LETTER F;Ll;0;L;;;;;N;;;0046;;0046 -0067;LATIN SMALL LETTER G;Ll;0;L;;;;;N;;;0047;;0047 -0068;LATIN SMALL LETTER H;Ll;0;L;;;;;N;;;0048;;0048 -0069;LATIN SMALL LETTER I;Ll;0;L;;;;;N;;;0049;;0049 -006A;LATIN SMALL LETTER J;Ll;0;L;;;;;N;;;004A;;004A -006B;LATIN SMALL LETTER K;Ll;0;L;;;;;N;;;004B;;004B -006C;LATIN SMALL LETTER L;Ll;0;L;;;;;N;;;004C;;004C -006D;LATIN SMALL LETTER M;Ll;0;L;;;;;N;;;004D;;004D -006E;LATIN SMALL LETTER N;Ll;0;L;;;;;N;;;004E;;004E -006F;LATIN SMALL LETTER O;Ll;0;L;;;;;N;;;004F;;004F -0070;LATIN SMALL LETTER P;Ll;0;L;;;;;N;;;0050;;0050 -0071;LATIN SMALL LETTER Q;Ll;0;L;;;;;N;;;0051;;0051 -0072;LATIN SMALL LETTER R;Ll;0;L;;;;;N;;;0052;;0052 -0073;LATIN SMALL LETTER S;Ll;0;L;;;;;N;;;0053;;0053 -0074;LATIN SMALL LETTER T;Ll;0;L;;;;;N;;;0054;;0054 -0075;LATIN SMALL LETTER U;Ll;0;L;;;;;N;;;0055;;0055 -0076;LATIN SMALL LETTER V;Ll;0;L;;;;;N;;;0056;;0056 -0077;LATIN SMALL LETTER W;Ll;0;L;;;;;N;;;0057;;0057 -0078;LATIN SMALL LETTER X;Ll;0;L;;;;;N;;;0058;;0058 -0079;LATIN SMALL LETTER Y;Ll;0;L;;;;;N;;;0059;;0059 -007A;LATIN SMALL LETTER Z;Ll;0;L;;;;;N;;;005A;;005A -007B;LEFT CURLY BRACKET;Ps;0;ON;;;;;Y;OPENING CURLY BRACKET;;;; -007C;VERTICAL LINE;Sm;0;ON;;;;;N;VERTICAL BAR;;;; -007D;RIGHT CURLY BRACKET;Pe;0;ON;;;;;Y;CLOSING CURLY BRACKET;;;; -007E;TILDE;Sm;0;ON;;;;;N;;;;; -007F;;Cc;0;BN;;;;;N;DELETE;;;; -0080;;Cc;0;BN;;;;;N;;;;; -0081;;Cc;0;BN;;;;;N;;;;; -0082;;Cc;0;BN;;;;;N;BREAK PERMITTED HERE;;;; -0083;;Cc;0;BN;;;;;N;NO BREAK HERE;;;; -0084;;Cc;0;BN;;;;;N;;;;; -0085;;Cc;0;B;;;;;N;NEXT LINE (NEL);;;; -0086;;Cc;0;BN;;;;;N;START OF SELECTED AREA;;;; -0087;;Cc;0;BN;;;;;N;END OF SELECTED AREA;;;; -0088;;Cc;0;BN;;;;;N;CHARACTER TABULATION SET;;;; -0089;;Cc;0;BN;;;;;N;CHARACTER TABULATION WITH JUSTIFICATION;;;; -008A;;Cc;0;BN;;;;;N;LINE TABULATION SET;;;; -008B;;Cc;0;BN;;;;;N;PARTIAL LINE FORWARD;;;; -008C;;Cc;0;BN;;;;;N;PARTIAL LINE BACKWARD;;;; -008D;;Cc;0;BN;;;;;N;REVERSE LINE FEED;;;; -008E;;Cc;0;BN;;;;;N;SINGLE SHIFT TWO;;;; -008F;;Cc;0;BN;;;;;N;SINGLE SHIFT THREE;;;; -0090;;Cc;0;BN;;;;;N;DEVICE CONTROL STRING;;;; -0091;;Cc;0;BN;;;;;N;PRIVATE USE ONE;;;; -0092;;Cc;0;BN;;;;;N;PRIVATE USE TWO;;;; -0093;;Cc;0;BN;;;;;N;SET TRANSMIT STATE;;;; -0094;;Cc;0;BN;;;;;N;CANCEL CHARACTER;;;; -0095;;Cc;0;BN;;;;;N;MESSAGE WAITING;;;; -0096;;Cc;0;BN;;;;;N;START OF GUARDED AREA;;;; -0097;;Cc;0;BN;;;;;N;END OF GUARDED AREA;;;; -0098;;Cc;0;BN;;;;;N;START OF STRING;;;; -0099;;Cc;0;BN;;;;;N;;;;; -009A;;Cc;0;BN;;;;;N;SINGLE CHARACTER INTRODUCER;;;; -009B;;Cc;0;BN;;;;;N;CONTROL SEQUENCE INTRODUCER;;;; -009C;;Cc;0;BN;;;;;N;STRING TERMINATOR;;;; -009D;;Cc;0;BN;;;;;N;OPERATING SYSTEM COMMAND;;;; -009E;;Cc;0;BN;;;;;N;PRIVACY MESSAGE;;;; -009F;;Cc;0;BN;;;;;N;APPLICATION PROGRAM COMMAND;;;; -00A0;NO-BREAK SPACE;Zs;0;CS; 0020;;;;N;NON-BREAKING SPACE;;;; -00A1;INVERTED EXCLAMATION MARK;Po;0;ON;;;;;N;;;;; -00A2;CENT SIGN;Sc;0;ET;;;;;N;;;;; -00A3;POUND SIGN;Sc;0;ET;;;;;N;;;;; -00A4;CURRENCY SIGN;Sc;0;ET;;;;;N;;;;; -00A5;YEN SIGN;Sc;0;ET;;;;;N;;;;; -00A6;BROKEN BAR;So;0;ON;;;;;N;BROKEN VERTICAL BAR;;;; -00A7;SECTION SIGN;So;0;ON;;;;;N;;;;; -00A8;DIAERESIS;Sk;0;ON; 0020 0308;;;;N;SPACING DIAERESIS;;;; -00A9;COPYRIGHT SIGN;So;0;ON;;;;;N;;;;; -00AA;FEMININE ORDINAL INDICATOR;Ll;0;L; 0061;;;;N;;;;; -00AB;LEFT-POINTING DOUBLE ANGLE QUOTATION MARK;Pi;0;ON;;;;;Y;LEFT POINTING GUILLEMET;;;; -00AC;NOT SIGN;Sm;0;ON;;;;;N;;;;; -00AD;SOFT HYPHEN;Cf;0;BN;;;;;N;;;;; -00AE;REGISTERED SIGN;So;0;ON;;;;;N;REGISTERED TRADE MARK SIGN;;;; -00AF;MACRON;Sk;0;ON; 0020 0304;;;;N;SPACING MACRON;;;; -00B0;DEGREE SIGN;So;0;ET;;;;;N;;;;; -00B1;PLUS-MINUS SIGN;Sm;0;ET;;;;;N;PLUS-OR-MINUS SIGN;;;; -00B2;SUPERSCRIPT TWO;No;0;EN; 0032;;2;2;N;SUPERSCRIPT DIGIT TWO;;;; -00B3;SUPERSCRIPT THREE;No;0;EN; 0033;;3;3;N;SUPERSCRIPT DIGIT THREE;;;; -00B4;ACUTE ACCENT;Sk;0;ON; 0020 0301;;;;N;SPACING ACUTE;;;; -00B5;MICRO SIGN;Ll;0;L; 03BC;;;;N;;;039C;;039C -00B6;PILCROW SIGN;So;0;ON;;;;;N;PARAGRAPH SIGN;;;; -00B7;MIDDLE DOT;Po;0;ON;;;;;N;;;;; -00B8;CEDILLA;Sk;0;ON; 0020 0327;;;;N;SPACING CEDILLA;;;; -00B9;SUPERSCRIPT ONE;No;0;EN; 0031;;1;1;N;SUPERSCRIPT DIGIT ONE;;;; -00BA;MASCULINE ORDINAL INDICATOR;Ll;0;L; 006F;;;;N;;;;; -00BB;RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK;Pf;0;ON;;;;;Y;RIGHT POINTING GUILLEMET;;;; -00BC;VULGAR FRACTION ONE QUARTER;No;0;ON; 0031 2044 0034;;;1/4;N;FRACTION ONE QUARTER;;;; -00BD;VULGAR FRACTION ONE HALF;No;0;ON; 0031 2044 0032;;;1/2;N;FRACTION ONE HALF;;;; -00BE;VULGAR FRACTION THREE QUARTERS;No;0;ON; 0033 2044 0034;;;3/4;N;FRACTION THREE QUARTERS;;;; -00BF;INVERTED QUESTION MARK;Po;0;ON;;;;;N;;;;; -00C0;LATIN CAPITAL LETTER A WITH GRAVE;Lu;0;L;0041 0300;;;;N;LATIN CAPITAL LETTER A GRAVE;;;00E0; -00C1;LATIN CAPITAL LETTER A WITH ACUTE;Lu;0;L;0041 0301;;;;N;LATIN CAPITAL LETTER A ACUTE;;;00E1; -00C2;LATIN CAPITAL LETTER A WITH CIRCUMFLEX;Lu;0;L;0041 0302;;;;N;LATIN CAPITAL LETTER A CIRCUMFLEX;;;00E2; -00C3;LATIN CAPITAL LETTER A WITH TILDE;Lu;0;L;0041 0303;;;;N;LATIN CAPITAL LETTER A TILDE;;;00E3; -00C4;LATIN CAPITAL LETTER A WITH DIAERESIS;Lu;0;L;0041 0308;;;;N;LATIN CAPITAL LETTER A DIAERESIS;;;00E4; -00C5;LATIN CAPITAL LETTER A WITH RING ABOVE;Lu;0;L;0041 030A;;;;N;LATIN CAPITAL LETTER A RING;;;00E5; -00C6;LATIN CAPITAL LETTER AE;Lu;0;L;;;;;N;LATIN CAPITAL LETTER A E;;;00E6; -00C7;LATIN CAPITAL LETTER C WITH CEDILLA;Lu;0;L;0043 0327;;;;N;LATIN CAPITAL LETTER C CEDILLA;;;00E7; -00C8;LATIN CAPITAL LETTER E WITH GRAVE;Lu;0;L;0045 0300;;;;N;LATIN CAPITAL LETTER E GRAVE;;;00E8; -00C9;LATIN CAPITAL LETTER E WITH ACUTE;Lu;0;L;0045 0301;;;;N;LATIN CAPITAL LETTER E ACUTE;;;00E9; -00CA;LATIN CAPITAL LETTER E WITH CIRCUMFLEX;Lu;0;L;0045 0302;;;;N;LATIN CAPITAL LETTER E CIRCUMFLEX;;;00EA; -00CB;LATIN CAPITAL LETTER E WITH DIAERESIS;Lu;0;L;0045 0308;;;;N;LATIN CAPITAL LETTER E DIAERESIS;;;00EB; -00CC;LATIN CAPITAL LETTER I WITH GRAVE;Lu;0;L;0049 0300;;;;N;LATIN CAPITAL LETTER I GRAVE;;;00EC; -00CD;LATIN CAPITAL LETTER I WITH ACUTE;Lu;0;L;0049 0301;;;;N;LATIN CAPITAL LETTER I ACUTE;;;00ED; -00CE;LATIN CAPITAL LETTER I WITH CIRCUMFLEX;Lu;0;L;0049 0302;;;;N;LATIN CAPITAL LETTER I CIRCUMFLEX;;;00EE; -00CF;LATIN CAPITAL LETTER I WITH DIAERESIS;Lu;0;L;0049 0308;;;;N;LATIN CAPITAL LETTER I DIAERESIS;;;00EF; -00D0;LATIN CAPITAL LETTER ETH;Lu;0;L;;;;;N;;;;00F0; -00D1;LATIN CAPITAL LETTER N WITH TILDE;Lu;0;L;004E 0303;;;;N;LATIN CAPITAL LETTER N TILDE;;;00F1; -00D2;LATIN CAPITAL LETTER O WITH GRAVE;Lu;0;L;004F 0300;;;;N;LATIN CAPITAL LETTER O GRAVE;;;00F2; -00D3;LATIN CAPITAL LETTER O WITH ACUTE;Lu;0;L;004F 0301;;;;N;LATIN CAPITAL LETTER O ACUTE;;;00F3; -00D4;LATIN CAPITAL LETTER O WITH CIRCUMFLEX;Lu;0;L;004F 0302;;;;N;LATIN CAPITAL LETTER O CIRCUMFLEX;;;00F4; -00D5;LATIN CAPITAL LETTER O WITH TILDE;Lu;0;L;004F 0303;;;;N;LATIN CAPITAL LETTER O TILDE;;;00F5; -00D6;LATIN CAPITAL LETTER O WITH DIAERESIS;Lu;0;L;004F 0308;;;;N;LATIN CAPITAL LETTER O DIAERESIS;;;00F6; -00D7;MULTIPLICATION SIGN;Sm;0;ON;;;;;N;;;;; -00D8;LATIN CAPITAL LETTER O WITH STROKE;Lu;0;L;;;;;N;LATIN CAPITAL LETTER O SLASH;;;00F8; -00D9;LATIN CAPITAL LETTER U WITH GRAVE;Lu;0;L;0055 0300;;;;N;LATIN CAPITAL LETTER U GRAVE;;;00F9; -00DA;LATIN CAPITAL LETTER U WITH ACUTE;Lu;0;L;0055 0301;;;;N;LATIN CAPITAL LETTER U ACUTE;;;00FA; -00DB;LATIN CAPITAL LETTER U WITH CIRCUMFLEX;Lu;0;L;0055 0302;;;;N;LATIN CAPITAL LETTER U CIRCUMFLEX;;;00FB; -00DC;LATIN CAPITAL LETTER U WITH DIAERESIS;Lu;0;L;0055 0308;;;;N;LATIN CAPITAL LETTER U DIAERESIS;;;00FC; -00DD;LATIN CAPITAL LETTER Y WITH ACUTE;Lu;0;L;0059 0301;;;;N;LATIN CAPITAL LETTER Y ACUTE;;;00FD; -00DE;LATIN CAPITAL LETTER THORN;Lu;0;L;;;;;N;;;;00FE; -00DF;LATIN SMALL LETTER SHARP S;Ll;0;L;;;;;N;;;;; -00E0;LATIN SMALL LETTER A WITH GRAVE;Ll;0;L;0061 0300;;;;N;LATIN SMALL LETTER A GRAVE;;00C0;;00C0 -00E1;LATIN SMALL LETTER A WITH ACUTE;Ll;0;L;0061 0301;;;;N;LATIN SMALL LETTER A ACUTE;;00C1;;00C1 -00E2;LATIN SMALL LETTER A WITH CIRCUMFLEX;Ll;0;L;0061 0302;;;;N;LATIN SMALL LETTER A CIRCUMFLEX;;00C2;;00C2 -00E3;LATIN SMALL LETTER A WITH TILDE;Ll;0;L;0061 0303;;;;N;LATIN SMALL LETTER A TILDE;;00C3;;00C3 -00E4;LATIN SMALL LETTER A WITH DIAERESIS;Ll;0;L;0061 0308;;;;N;LATIN SMALL LETTER A DIAERESIS;;00C4;;00C4 -00E5;LATIN SMALL LETTER A WITH RING ABOVE;Ll;0;L;0061 030A;;;;N;LATIN SMALL LETTER A RING;;00C5;;00C5 -00E6;LATIN SMALL LETTER AE;Ll;0;L;;;;;N;LATIN SMALL LETTER A E;;00C6;;00C6 -00E7;LATIN SMALL LETTER C WITH CEDILLA;Ll;0;L;0063 0327;;;;N;LATIN SMALL LETTER C CEDILLA;;00C7;;00C7 -00E8;LATIN SMALL LETTER E WITH GRAVE;Ll;0;L;0065 0300;;;;N;LATIN SMALL LETTER E GRAVE;;00C8;;00C8 -00E9;LATIN SMALL LETTER E WITH ACUTE;Ll;0;L;0065 0301;;;;N;LATIN SMALL LETTER E ACUTE;;00C9;;00C9 -00EA;LATIN SMALL LETTER E WITH CIRCUMFLEX;Ll;0;L;0065 0302;;;;N;LATIN SMALL LETTER E CIRCUMFLEX;;00CA;;00CA -00EB;LATIN SMALL LETTER E WITH DIAERESIS;Ll;0;L;0065 0308;;;;N;LATIN SMALL LETTER E DIAERESIS;;00CB;;00CB -00EC;LATIN SMALL LETTER I WITH GRAVE;Ll;0;L;0069 0300;;;;N;LATIN SMALL LETTER I GRAVE;;00CC;;00CC -00ED;LATIN SMALL LETTER I WITH ACUTE;Ll;0;L;0069 0301;;;;N;LATIN SMALL LETTER I ACUTE;;00CD;;00CD -00EE;LATIN SMALL LETTER I WITH CIRCUMFLEX;Ll;0;L;0069 0302;;;;N;LATIN SMALL LETTER I CIRCUMFLEX;;00CE;;00CE -00EF;LATIN SMALL LETTER I WITH DIAERESIS;Ll;0;L;0069 0308;;;;N;LATIN SMALL LETTER I DIAERESIS;;00CF;;00CF -00F0;LATIN SMALL LETTER ETH;Ll;0;L;;;;;N;;;00D0;;00D0 -00F1;LATIN SMALL LETTER N WITH TILDE;Ll;0;L;006E 0303;;;;N;LATIN SMALL LETTER N TILDE;;00D1;;00D1 -00F2;LATIN SMALL LETTER O WITH GRAVE;Ll;0;L;006F 0300;;;;N;LATIN SMALL LETTER O GRAVE;;00D2;;00D2 -00F3;LATIN SMALL LETTER O WITH ACUTE;Ll;0;L;006F 0301;;;;N;LATIN SMALL LETTER O ACUTE;;00D3;;00D3 -00F4;LATIN SMALL LETTER O WITH CIRCUMFLEX;Ll;0;L;006F 0302;;;;N;LATIN SMALL LETTER O CIRCUMFLEX;;00D4;;00D4 -00F5;LATIN SMALL LETTER O WITH TILDE;Ll;0;L;006F 0303;;;;N;LATIN SMALL LETTER O TILDE;;00D5;;00D5 -00F6;LATIN SMALL LETTER O WITH DIAERESIS;Ll;0;L;006F 0308;;;;N;LATIN SMALL LETTER O DIAERESIS;;00D6;;00D6 -00F7;DIVISION SIGN;Sm;0;ON;;;;;N;;;;; -00F8;LATIN SMALL LETTER O WITH STROKE;Ll;0;L;;;;;N;LATIN SMALL LETTER O SLASH;;00D8;;00D8 -00F9;LATIN SMALL LETTER U WITH GRAVE;Ll;0;L;0075 0300;;;;N;LATIN SMALL LETTER U GRAVE;;00D9;;00D9 -00FA;LATIN SMALL LETTER U WITH ACUTE;Ll;0;L;0075 0301;;;;N;LATIN SMALL LETTER U ACUTE;;00DA;;00DA -00FB;LATIN SMALL LETTER U WITH CIRCUMFLEX;Ll;0;L;0075 0302;;;;N;LATIN SMALL LETTER U CIRCUMFLEX;;00DB;;00DB -00FC;LATIN SMALL LETTER U WITH DIAERESIS;Ll;0;L;0075 0308;;;;N;LATIN SMALL LETTER U DIAERESIS;;00DC;;00DC -00FD;LATIN SMALL LETTER Y WITH ACUTE;Ll;0;L;0079 0301;;;;N;LATIN SMALL LETTER Y ACUTE;;00DD;;00DD -00FE;LATIN SMALL LETTER THORN;Ll;0;L;;;;;N;;;00DE;;00DE -00FF;LATIN SMALL LETTER Y WITH DIAERESIS;Ll;0;L;0079 0308;;;;N;LATIN SMALL LETTER Y DIAERESIS;;0178;;0178 -0100;LATIN CAPITAL LETTER A WITH MACRON;Lu;0;L;0041 0304;;;;N;LATIN CAPITAL LETTER A MACRON;;;0101; -0101;LATIN SMALL LETTER A WITH MACRON;Ll;0;L;0061 0304;;;;N;LATIN SMALL LETTER A MACRON;;0100;;0100 -0102;LATIN CAPITAL LETTER A WITH BREVE;Lu;0;L;0041 0306;;;;N;LATIN CAPITAL LETTER A BREVE;;;0103; -0103;LATIN SMALL LETTER A WITH BREVE;Ll;0;L;0061 0306;;;;N;LATIN SMALL LETTER A BREVE;;0102;;0102 -0104;LATIN CAPITAL LETTER A WITH OGONEK;Lu;0;L;0041 0328;;;;N;LATIN CAPITAL LETTER A OGONEK;;;0105; -0105;LATIN SMALL LETTER A WITH OGONEK;Ll;0;L;0061 0328;;;;N;LATIN SMALL LETTER A OGONEK;;0104;;0104 -0106;LATIN CAPITAL LETTER C WITH ACUTE;Lu;0;L;0043 0301;;;;N;LATIN CAPITAL LETTER C ACUTE;;;0107; -0107;LATIN SMALL LETTER C WITH ACUTE;Ll;0;L;0063 0301;;;;N;LATIN SMALL LETTER C ACUTE;;0106;;0106 -0108;LATIN CAPITAL LETTER C WITH CIRCUMFLEX;Lu;0;L;0043 0302;;;;N;LATIN CAPITAL LETTER C CIRCUMFLEX;;;0109; -0109;LATIN SMALL LETTER C WITH CIRCUMFLEX;Ll;0;L;0063 0302;;;;N;LATIN SMALL LETTER C CIRCUMFLEX;;0108;;0108 -010A;LATIN CAPITAL LETTER C WITH DOT ABOVE;Lu;0;L;0043 0307;;;;N;LATIN CAPITAL LETTER C DOT;;;010B; -010B;LATIN SMALL LETTER C WITH DOT ABOVE;Ll;0;L;0063 0307;;;;N;LATIN SMALL LETTER C DOT;;010A;;010A -010C;LATIN CAPITAL LETTER C WITH CARON;Lu;0;L;0043 030C;;;;N;LATIN CAPITAL LETTER C HACEK;;;010D; -010D;LATIN SMALL LETTER C WITH CARON;Ll;0;L;0063 030C;;;;N;LATIN SMALL LETTER C HACEK;;010C;;010C -010E;LATIN CAPITAL LETTER D WITH CARON;Lu;0;L;0044 030C;;;;N;LATIN CAPITAL LETTER D HACEK;;;010F; -010F;LATIN SMALL LETTER D WITH CARON;Ll;0;L;0064 030C;;;;N;LATIN SMALL LETTER D HACEK;;010E;;010E -0110;LATIN CAPITAL LETTER D WITH STROKE;Lu;0;L;;;;;N;LATIN CAPITAL LETTER D BAR;;;0111; -0111;LATIN SMALL LETTER D WITH STROKE;Ll;0;L;;;;;N;LATIN SMALL LETTER D BAR;;0110;;0110 -0112;LATIN CAPITAL LETTER E WITH MACRON;Lu;0;L;0045 0304;;;;N;LATIN CAPITAL LETTER E MACRON;;;0113; -0113;LATIN SMALL LETTER E WITH MACRON;Ll;0;L;0065 0304;;;;N;LATIN SMALL LETTER E MACRON;;0112;;0112 -0114;LATIN CAPITAL LETTER E WITH BREVE;Lu;0;L;0045 0306;;;;N;LATIN CAPITAL LETTER E BREVE;;;0115; -0115;LATIN SMALL LETTER E WITH BREVE;Ll;0;L;0065 0306;;;;N;LATIN SMALL LETTER E BREVE;;0114;;0114 -0116;LATIN CAPITAL LETTER E WITH DOT ABOVE;Lu;0;L;0045 0307;;;;N;LATIN CAPITAL LETTER E DOT;;;0117; -0117;LATIN SMALL LETTER E WITH DOT ABOVE;Ll;0;L;0065 0307;;;;N;LATIN SMALL LETTER E DOT;;0116;;0116 -0118;LATIN CAPITAL LETTER E WITH OGONEK;Lu;0;L;0045 0328;;;;N;LATIN CAPITAL LETTER E OGONEK;;;0119; -0119;LATIN SMALL LETTER E WITH OGONEK;Ll;0;L;0065 0328;;;;N;LATIN SMALL LETTER E OGONEK;;0118;;0118 -011A;LATIN CAPITAL LETTER E WITH CARON;Lu;0;L;0045 030C;;;;N;LATIN CAPITAL LETTER E HACEK;;;011B; -011B;LATIN SMALL LETTER E WITH CARON;Ll;0;L;0065 030C;;;;N;LATIN SMALL LETTER E HACEK;;011A;;011A -011C;LATIN CAPITAL LETTER G WITH CIRCUMFLEX;Lu;0;L;0047 0302;;;;N;LATIN CAPITAL LETTER G CIRCUMFLEX;;;011D; -011D;LATIN SMALL LETTER G WITH CIRCUMFLEX;Ll;0;L;0067 0302;;;;N;LATIN SMALL LETTER G CIRCUMFLEX;;011C;;011C -011E;LATIN CAPITAL LETTER G WITH BREVE;Lu;0;L;0047 0306;;;;N;LATIN CAPITAL LETTER G BREVE;;;011F; -011F;LATIN SMALL LETTER G WITH BREVE;Ll;0;L;0067 0306;;;;N;LATIN SMALL LETTER G BREVE;;011E;;011E -0120;LATIN CAPITAL LETTER G WITH DOT ABOVE;Lu;0;L;0047 0307;;;;N;LATIN CAPITAL LETTER G DOT;;;0121; -0121;LATIN SMALL LETTER G WITH DOT ABOVE;Ll;0;L;0067 0307;;;;N;LATIN SMALL LETTER G DOT;;0120;;0120 -0122;LATIN CAPITAL LETTER G WITH CEDILLA;Lu;0;L;0047 0327;;;;N;LATIN CAPITAL LETTER G CEDILLA;;;0123; -0123;LATIN SMALL LETTER G WITH CEDILLA;Ll;0;L;0067 0327;;;;N;LATIN SMALL LETTER G CEDILLA;;0122;;0122 -0124;LATIN CAPITAL LETTER H WITH CIRCUMFLEX;Lu;0;L;0048 0302;;;;N;LATIN CAPITAL LETTER H CIRCUMFLEX;;;0125; -0125;LATIN SMALL LETTER H WITH CIRCUMFLEX;Ll;0;L;0068 0302;;;;N;LATIN SMALL LETTER H CIRCUMFLEX;;0124;;0124 -0126;LATIN CAPITAL LETTER H WITH STROKE;Lu;0;L;;;;;N;LATIN CAPITAL LETTER H BAR;;;0127; -0127;LATIN SMALL LETTER H WITH STROKE;Ll;0;L;;;;;N;LATIN SMALL LETTER H BAR;;0126;;0126 -0128;LATIN CAPITAL LETTER I WITH TILDE;Lu;0;L;0049 0303;;;;N;LATIN CAPITAL LETTER I TILDE;;;0129; -0129;LATIN SMALL LETTER I WITH TILDE;Ll;0;L;0069 0303;;;;N;LATIN SMALL LETTER I TILDE;;0128;;0128 -012A;LATIN CAPITAL LETTER I WITH MACRON;Lu;0;L;0049 0304;;;;N;LATIN CAPITAL LETTER I MACRON;;;012B; -012B;LATIN SMALL LETTER I WITH MACRON;Ll;0;L;0069 0304;;;;N;LATIN SMALL LETTER I MACRON;;012A;;012A -012C;LATIN CAPITAL LETTER I WITH BREVE;Lu;0;L;0049 0306;;;;N;LATIN CAPITAL LETTER I BREVE;;;012D; -012D;LATIN SMALL LETTER I WITH BREVE;Ll;0;L;0069 0306;;;;N;LATIN SMALL LETTER I BREVE;;012C;;012C -012E;LATIN CAPITAL LETTER I WITH OGONEK;Lu;0;L;0049 0328;;;;N;LATIN CAPITAL LETTER I OGONEK;;;012F; -012F;LATIN SMALL LETTER I WITH OGONEK;Ll;0;L;0069 0328;;;;N;LATIN SMALL LETTER I OGONEK;;012E;;012E -0130;LATIN CAPITAL LETTER I WITH DOT ABOVE;Lu;0;L;0049 0307;;;;N;LATIN CAPITAL LETTER I DOT;;;0069; -0131;LATIN SMALL LETTER DOTLESS I;Ll;0;L;;;;;N;;;0049;;0049 -0132;LATIN CAPITAL LIGATURE IJ;Lu;0;L; 0049 004A;;;;N;LATIN CAPITAL LETTER I J;;;0133; -0133;LATIN SMALL LIGATURE IJ;Ll;0;L; 0069 006A;;;;N;LATIN SMALL LETTER I J;;0132;;0132 -0134;LATIN CAPITAL LETTER J WITH CIRCUMFLEX;Lu;0;L;004A 0302;;;;N;LATIN CAPITAL LETTER J CIRCUMFLEX;;;0135; -0135;LATIN SMALL LETTER J WITH CIRCUMFLEX;Ll;0;L;006A 0302;;;;N;LATIN SMALL LETTER J CIRCUMFLEX;;0134;;0134 -0136;LATIN CAPITAL LETTER K WITH CEDILLA;Lu;0;L;004B 0327;;;;N;LATIN CAPITAL LETTER K CEDILLA;;;0137; -0137;LATIN SMALL LETTER K WITH CEDILLA;Ll;0;L;006B 0327;;;;N;LATIN SMALL LETTER K CEDILLA;;0136;;0136 -0138;LATIN SMALL LETTER KRA;Ll;0;L;;;;;N;;;;; -0139;LATIN CAPITAL LETTER L WITH ACUTE;Lu;0;L;004C 0301;;;;N;LATIN CAPITAL LETTER L ACUTE;;;013A; -013A;LATIN SMALL LETTER L WITH ACUTE;Ll;0;L;006C 0301;;;;N;LATIN SMALL LETTER L ACUTE;;0139;;0139 -013B;LATIN CAPITAL LETTER L WITH CEDILLA;Lu;0;L;004C 0327;;;;N;LATIN CAPITAL LETTER L CEDILLA;;;013C; -013C;LATIN SMALL LETTER L WITH CEDILLA;Ll;0;L;006C 0327;;;;N;LATIN SMALL LETTER L CEDILLA;;013B;;013B -013D;LATIN CAPITAL LETTER L WITH CARON;Lu;0;L;004C 030C;;;;N;LATIN CAPITAL LETTER L HACEK;;;013E; -013E;LATIN SMALL LETTER L WITH CARON;Ll;0;L;006C 030C;;;;N;LATIN SMALL LETTER L HACEK;;013D;;013D -013F;LATIN CAPITAL LETTER L WITH MIDDLE DOT;Lu;0;L; 004C 00B7;;;;N;;;;0140; -0140;LATIN SMALL LETTER L WITH MIDDLE DOT;Ll;0;L; 006C 00B7;;;;N;;;013F;;013F -0141;LATIN CAPITAL LETTER L WITH STROKE;Lu;0;L;;;;;N;LATIN CAPITAL LETTER L SLASH;;;0142; -0142;LATIN SMALL LETTER L WITH STROKE;Ll;0;L;;;;;N;LATIN SMALL LETTER L SLASH;;0141;;0141 -0143;LATIN CAPITAL LETTER N WITH ACUTE;Lu;0;L;004E 0301;;;;N;LATIN CAPITAL LETTER N ACUTE;;;0144; -0144;LATIN SMALL LETTER N WITH ACUTE;Ll;0;L;006E 0301;;;;N;LATIN SMALL LETTER N ACUTE;;0143;;0143 -0145;LATIN CAPITAL LETTER N WITH CEDILLA;Lu;0;L;004E 0327;;;;N;LATIN CAPITAL LETTER N CEDILLA;;;0146; -0146;LATIN SMALL LETTER N WITH CEDILLA;Ll;0;L;006E 0327;;;;N;LATIN SMALL LETTER N CEDILLA;;0145;;0145 -0147;LATIN CAPITAL LETTER N WITH CARON;Lu;0;L;004E 030C;;;;N;LATIN CAPITAL LETTER N HACEK;;;0148; -0148;LATIN SMALL LETTER N WITH CARON;Ll;0;L;006E 030C;;;;N;LATIN SMALL LETTER N HACEK;;0147;;0147 -0149;LATIN SMALL LETTER N PRECEDED BY APOSTROPHE;Ll;0;L; 02BC 006E;;;;N;LATIN SMALL LETTER APOSTROPHE N;;;; -014A;LATIN CAPITAL LETTER ENG;Lu;0;L;;;;;N;;;;014B; -014B;LATIN SMALL LETTER ENG;Ll;0;L;;;;;N;;;014A;;014A -014C;LATIN CAPITAL LETTER O WITH MACRON;Lu;0;L;004F 0304;;;;N;LATIN CAPITAL LETTER O MACRON;;;014D; -014D;LATIN SMALL LETTER O WITH MACRON;Ll;0;L;006F 0304;;;;N;LATIN SMALL LETTER O MACRON;;014C;;014C -014E;LATIN CAPITAL LETTER O WITH BREVE;Lu;0;L;004F 0306;;;;N;LATIN CAPITAL LETTER O BREVE;;;014F; -014F;LATIN SMALL LETTER O WITH BREVE;Ll;0;L;006F 0306;;;;N;LATIN SMALL LETTER O BREVE;;014E;;014E -0150;LATIN CAPITAL LETTER O WITH DOUBLE ACUTE;Lu;0;L;004F 030B;;;;N;LATIN CAPITAL LETTER O DOUBLE ACUTE;;;0151; -0151;LATIN SMALL LETTER O WITH DOUBLE ACUTE;Ll;0;L;006F 030B;;;;N;LATIN SMALL LETTER O DOUBLE ACUTE;;0150;;0150 -0152;LATIN CAPITAL LIGATURE OE;Lu;0;L;;;;;N;LATIN CAPITAL LETTER O E;;;0153; -0153;LATIN SMALL LIGATURE OE;Ll;0;L;;;;;N;LATIN SMALL LETTER O E;;0152;;0152 -0154;LATIN CAPITAL LETTER R WITH ACUTE;Lu;0;L;0052 0301;;;;N;LATIN CAPITAL LETTER R ACUTE;;;0155; -0155;LATIN SMALL LETTER R WITH ACUTE;Ll;0;L;0072 0301;;;;N;LATIN SMALL LETTER R ACUTE;;0154;;0154 -0156;LATIN CAPITAL LETTER R WITH CEDILLA;Lu;0;L;0052 0327;;;;N;LATIN CAPITAL LETTER R CEDILLA;;;0157; -0157;LATIN SMALL LETTER R WITH CEDILLA;Ll;0;L;0072 0327;;;;N;LATIN SMALL LETTER R CEDILLA;;0156;;0156 -0158;LATIN CAPITAL LETTER R WITH CARON;Lu;0;L;0052 030C;;;;N;LATIN CAPITAL LETTER R HACEK;;;0159; -0159;LATIN SMALL LETTER R WITH CARON;Ll;0;L;0072 030C;;;;N;LATIN SMALL LETTER R HACEK;;0158;;0158 -015A;LATIN CAPITAL LETTER S WITH ACUTE;Lu;0;L;0053 0301;;;;N;LATIN CAPITAL LETTER S ACUTE;;;015B; -015B;LATIN SMALL LETTER S WITH ACUTE;Ll;0;L;0073 0301;;;;N;LATIN SMALL LETTER S ACUTE;;015A;;015A -015C;LATIN CAPITAL LETTER S WITH CIRCUMFLEX;Lu;0;L;0053 0302;;;;N;LATIN CAPITAL LETTER S CIRCUMFLEX;;;015D; -015D;LATIN SMALL LETTER S WITH CIRCUMFLEX;Ll;0;L;0073 0302;;;;N;LATIN SMALL LETTER S CIRCUMFLEX;;015C;;015C -015E;LATIN CAPITAL LETTER S WITH CEDILLA;Lu;0;L;0053 0327;;;;N;LATIN CAPITAL LETTER S CEDILLA;;;015F; -015F;LATIN SMALL LETTER S WITH CEDILLA;Ll;0;L;0073 0327;;;;N;LATIN SMALL LETTER S CEDILLA;;015E;;015E -0160;LATIN CAPITAL LETTER S WITH CARON;Lu;0;L;0053 030C;;;;N;LATIN CAPITAL LETTER S HACEK;;;0161; -0161;LATIN SMALL LETTER S WITH CARON;Ll;0;L;0073 030C;;;;N;LATIN SMALL LETTER S HACEK;;0160;;0160 -0162;LATIN CAPITAL LETTER T WITH CEDILLA;Lu;0;L;0054 0327;;;;N;LATIN CAPITAL LETTER T CEDILLA;;;0163; -0163;LATIN SMALL LETTER T WITH CEDILLA;Ll;0;L;0074 0327;;;;N;LATIN SMALL LETTER T CEDILLA;;0162;;0162 -0164;LATIN CAPITAL LETTER T WITH CARON;Lu;0;L;0054 030C;;;;N;LATIN CAPITAL LETTER T HACEK;;;0165; -0165;LATIN SMALL LETTER T WITH CARON;Ll;0;L;0074 030C;;;;N;LATIN SMALL LETTER T HACEK;;0164;;0164 -0166;LATIN CAPITAL LETTER T WITH STROKE;Lu;0;L;;;;;N;LATIN CAPITAL LETTER T BAR;;;0167; -0167;LATIN SMALL LETTER T WITH STROKE;Ll;0;L;;;;;N;LATIN SMALL LETTER T BAR;;0166;;0166 -0168;LATIN CAPITAL LETTER U WITH TILDE;Lu;0;L;0055 0303;;;;N;LATIN CAPITAL LETTER U TILDE;;;0169; -0169;LATIN SMALL LETTER U WITH TILDE;Ll;0;L;0075 0303;;;;N;LATIN SMALL LETTER U TILDE;;0168;;0168 -016A;LATIN CAPITAL LETTER U WITH MACRON;Lu;0;L;0055 0304;;;;N;LATIN CAPITAL LETTER U MACRON;;;016B; -016B;LATIN SMALL LETTER U WITH MACRON;Ll;0;L;0075 0304;;;;N;LATIN SMALL LETTER U MACRON;;016A;;016A -016C;LATIN CAPITAL LETTER U WITH BREVE;Lu;0;L;0055 0306;;;;N;LATIN CAPITAL LETTER U BREVE;;;016D; -016D;LATIN SMALL LETTER U WITH BREVE;Ll;0;L;0075 0306;;;;N;LATIN SMALL LETTER U BREVE;;016C;;016C -016E;LATIN CAPITAL LETTER U WITH RING ABOVE;Lu;0;L;0055 030A;;;;N;LATIN CAPITAL LETTER U RING;;;016F; -016F;LATIN SMALL LETTER U WITH RING ABOVE;Ll;0;L;0075 030A;;;;N;LATIN SMALL LETTER U RING;;016E;;016E -0170;LATIN CAPITAL LETTER U WITH DOUBLE ACUTE;Lu;0;L;0055 030B;;;;N;LATIN CAPITAL LETTER U DOUBLE ACUTE;;;0171; -0171;LATIN SMALL LETTER U WITH DOUBLE ACUTE;Ll;0;L;0075 030B;;;;N;LATIN SMALL LETTER U DOUBLE ACUTE;;0170;;0170 -0172;LATIN CAPITAL LETTER U WITH OGONEK;Lu;0;L;0055 0328;;;;N;LATIN CAPITAL LETTER U OGONEK;;;0173; -0173;LATIN SMALL LETTER U WITH OGONEK;Ll;0;L;0075 0328;;;;N;LATIN SMALL LETTER U OGONEK;;0172;;0172 -0174;LATIN CAPITAL LETTER W WITH CIRCUMFLEX;Lu;0;L;0057 0302;;;;N;LATIN CAPITAL LETTER W CIRCUMFLEX;;;0175; -0175;LATIN SMALL LETTER W WITH CIRCUMFLEX;Ll;0;L;0077 0302;;;;N;LATIN SMALL LETTER W CIRCUMFLEX;;0174;;0174 -0176;LATIN CAPITAL LETTER Y WITH CIRCUMFLEX;Lu;0;L;0059 0302;;;;N;LATIN CAPITAL LETTER Y CIRCUMFLEX;;;0177; -0177;LATIN SMALL LETTER Y WITH CIRCUMFLEX;Ll;0;L;0079 0302;;;;N;LATIN SMALL LETTER Y CIRCUMFLEX;;0176;;0176 -0178;LATIN CAPITAL LETTER Y WITH DIAERESIS;Lu;0;L;0059 0308;;;;N;LATIN CAPITAL LETTER Y DIAERESIS;;;00FF; -0179;LATIN CAPITAL LETTER Z WITH ACUTE;Lu;0;L;005A 0301;;;;N;LATIN CAPITAL LETTER Z ACUTE;;;017A; -017A;LATIN SMALL LETTER Z WITH ACUTE;Ll;0;L;007A 0301;;;;N;LATIN SMALL LETTER Z ACUTE;;0179;;0179 -017B;LATIN CAPITAL LETTER Z WITH DOT ABOVE;Lu;0;L;005A 0307;;;;N;LATIN CAPITAL LETTER Z DOT;;;017C; -017C;LATIN SMALL LETTER Z WITH DOT ABOVE;Ll;0;L;007A 0307;;;;N;LATIN SMALL LETTER Z DOT;;017B;;017B -017D;LATIN CAPITAL LETTER Z WITH CARON;Lu;0;L;005A 030C;;;;N;LATIN CAPITAL LETTER Z HACEK;;;017E; -017E;LATIN SMALL LETTER Z WITH CARON;Ll;0;L;007A 030C;;;;N;LATIN SMALL LETTER Z HACEK;;017D;;017D -017F;LATIN SMALL LETTER LONG S;Ll;0;L; 0073;;;;N;;;0053;;0053 -0180;LATIN SMALL LETTER B WITH STROKE;Ll;0;L;;;;;N;LATIN SMALL LETTER B BAR;;0243;;0243 -0181;LATIN CAPITAL LETTER B WITH HOOK;Lu;0;L;;;;;N;LATIN CAPITAL LETTER B HOOK;;;0253; -0182;LATIN CAPITAL LETTER B WITH TOPBAR;Lu;0;L;;;;;N;LATIN CAPITAL LETTER B TOPBAR;;;0183; -0183;LATIN SMALL LETTER B WITH TOPBAR;Ll;0;L;;;;;N;LATIN SMALL LETTER B TOPBAR;;0182;;0182 -0184;LATIN CAPITAL LETTER TONE SIX;Lu;0;L;;;;;N;;;;0185; -0185;LATIN SMALL LETTER TONE SIX;Ll;0;L;;;;;N;;;0184;;0184 -0186;LATIN CAPITAL LETTER OPEN O;Lu;0;L;;;;;N;;;;0254; -0187;LATIN CAPITAL LETTER C WITH HOOK;Lu;0;L;;;;;N;LATIN CAPITAL LETTER C HOOK;;;0188; -0188;LATIN SMALL LETTER C WITH HOOK;Ll;0;L;;;;;N;LATIN SMALL LETTER C HOOK;;0187;;0187 -0189;LATIN CAPITAL LETTER AFRICAN D;Lu;0;L;;;;;N;;;;0256; -018A;LATIN CAPITAL LETTER D WITH HOOK;Lu;0;L;;;;;N;LATIN CAPITAL LETTER D HOOK;;;0257; -018B;LATIN CAPITAL LETTER D WITH TOPBAR;Lu;0;L;;;;;N;LATIN CAPITAL LETTER D TOPBAR;;;018C; -018C;LATIN SMALL LETTER D WITH TOPBAR;Ll;0;L;;;;;N;LATIN SMALL LETTER D TOPBAR;;018B;;018B -018D;LATIN SMALL LETTER TURNED DELTA;Ll;0;L;;;;;N;;;;; -018E;LATIN CAPITAL LETTER REVERSED E;Lu;0;L;;;;;N;LATIN CAPITAL LETTER TURNED E;;;01DD; -018F;LATIN CAPITAL LETTER SCHWA;Lu;0;L;;;;;N;;;;0259; -0190;LATIN CAPITAL LETTER OPEN E;Lu;0;L;;;;;N;LATIN CAPITAL LETTER EPSILON;;;025B; -0191;LATIN CAPITAL LETTER F WITH HOOK;Lu;0;L;;;;;N;LATIN CAPITAL LETTER F HOOK;;;0192; -0192;LATIN SMALL LETTER F WITH HOOK;Ll;0;L;;;;;N;LATIN SMALL LETTER SCRIPT F;;0191;;0191 -0193;LATIN CAPITAL LETTER G WITH HOOK;Lu;0;L;;;;;N;LATIN CAPITAL LETTER G HOOK;;;0260; -0194;LATIN CAPITAL LETTER GAMMA;Lu;0;L;;;;;N;;;;0263; -0195;LATIN SMALL LETTER HV;Ll;0;L;;;;;N;LATIN SMALL LETTER H V;;01F6;;01F6 -0196;LATIN CAPITAL LETTER IOTA;Lu;0;L;;;;;N;;;;0269; -0197;LATIN CAPITAL LETTER I WITH STROKE;Lu;0;L;;;;;N;LATIN CAPITAL LETTER BARRED I;;;0268; -0198;LATIN CAPITAL LETTER K WITH HOOK;Lu;0;L;;;;;N;LATIN CAPITAL LETTER K HOOK;;;0199; -0199;LATIN SMALL LETTER K WITH HOOK;Ll;0;L;;;;;N;LATIN SMALL LETTER K HOOK;;0198;;0198 -019A;LATIN SMALL LETTER L WITH BAR;Ll;0;L;;;;;N;LATIN SMALL LETTER BARRED L;;023D;;023D -019B;LATIN SMALL LETTER LAMBDA WITH STROKE;Ll;0;L;;;;;N;LATIN SMALL LETTER BARRED LAMBDA;;;; -019C;LATIN CAPITAL LETTER TURNED M;Lu;0;L;;;;;N;;;;026F; -019D;LATIN CAPITAL LETTER N WITH LEFT HOOK;Lu;0;L;;;;;N;LATIN CAPITAL LETTER N HOOK;;;0272; -019E;LATIN SMALL LETTER N WITH LONG RIGHT LEG;Ll;0;L;;;;;N;;;0220;;0220 -019F;LATIN CAPITAL LETTER O WITH MIDDLE TILDE;Lu;0;L;;;;;N;LATIN CAPITAL LETTER BARRED O;;;0275; -01A0;LATIN CAPITAL LETTER O WITH HORN;Lu;0;L;004F 031B;;;;N;LATIN CAPITAL LETTER O HORN;;;01A1; -01A1;LATIN SMALL LETTER O WITH HORN;Ll;0;L;006F 031B;;;;N;LATIN SMALL LETTER O HORN;;01A0;;01A0 -01A2;LATIN CAPITAL LETTER OI;Lu;0;L;;;;;N;LATIN CAPITAL LETTER O I;;;01A3; -01A3;LATIN SMALL LETTER OI;Ll;0;L;;;;;N;LATIN SMALL LETTER O I;;01A2;;01A2 -01A4;LATIN CAPITAL LETTER P WITH HOOK;Lu;0;L;;;;;N;LATIN CAPITAL LETTER P HOOK;;;01A5; -01A5;LATIN SMALL LETTER P WITH HOOK;Ll;0;L;;;;;N;LATIN SMALL LETTER P HOOK;;01A4;;01A4 -01A6;LATIN LETTER YR;Lu;0;L;;;;;N;LATIN LETTER Y R;;;0280; -01A7;LATIN CAPITAL LETTER TONE TWO;Lu;0;L;;;;;N;;;;01A8; -01A8;LATIN SMALL LETTER TONE TWO;Ll;0;L;;;;;N;;;01A7;;01A7 -01A9;LATIN CAPITAL LETTER ESH;Lu;0;L;;;;;N;;;;0283; -01AA;LATIN LETTER REVERSED ESH LOOP;Ll;0;L;;;;;N;;;;; -01AB;LATIN SMALL LETTER T WITH PALATAL HOOK;Ll;0;L;;;;;N;LATIN SMALL LETTER T PALATAL HOOK;;;; -01AC;LATIN CAPITAL LETTER T WITH HOOK;Lu;0;L;;;;;N;LATIN CAPITAL LETTER T HOOK;;;01AD; -01AD;LATIN SMALL LETTER T WITH HOOK;Ll;0;L;;;;;N;LATIN SMALL LETTER T HOOK;;01AC;;01AC -01AE;LATIN CAPITAL LETTER T WITH RETROFLEX HOOK;Lu;0;L;;;;;N;LATIN CAPITAL LETTER T RETROFLEX HOOK;;;0288; -01AF;LATIN CAPITAL LETTER U WITH HORN;Lu;0;L;0055 031B;;;;N;LATIN CAPITAL LETTER U HORN;;;01B0; -01B0;LATIN SMALL LETTER U WITH HORN;Ll;0;L;0075 031B;;;;N;LATIN SMALL LETTER U HORN;;01AF;;01AF -01B1;LATIN CAPITAL LETTER UPSILON;Lu;0;L;;;;;N;;;;028A; -01B2;LATIN CAPITAL LETTER V WITH HOOK;Lu;0;L;;;;;N;LATIN CAPITAL LETTER SCRIPT V;;;028B; -01B3;LATIN CAPITAL LETTER Y WITH HOOK;Lu;0;L;;;;;N;LATIN CAPITAL LETTER Y HOOK;;;01B4; -01B4;LATIN SMALL LETTER Y WITH HOOK;Ll;0;L;;;;;N;LATIN SMALL LETTER Y HOOK;;01B3;;01B3 -01B5;LATIN CAPITAL LETTER Z WITH STROKE;Lu;0;L;;;;;N;LATIN CAPITAL LETTER Z BAR;;;01B6; -01B6;LATIN SMALL LETTER Z WITH STROKE;Ll;0;L;;;;;N;LATIN SMALL LETTER Z BAR;;01B5;;01B5 -01B7;LATIN CAPITAL LETTER EZH;Lu;0;L;;;;;N;LATIN CAPITAL LETTER YOGH;;;0292; -01B8;LATIN CAPITAL LETTER EZH REVERSED;Lu;0;L;;;;;N;LATIN CAPITAL LETTER REVERSED YOGH;;;01B9; -01B9;LATIN SMALL LETTER EZH REVERSED;Ll;0;L;;;;;N;LATIN SMALL LETTER REVERSED YOGH;;01B8;;01B8 -01BA;LATIN SMALL LETTER EZH WITH TAIL;Ll;0;L;;;;;N;LATIN SMALL LETTER YOGH WITH TAIL;;;; -01BB;LATIN LETTER TWO WITH STROKE;Lo;0;L;;;;;N;LATIN LETTER TWO BAR;;;; -01BC;LATIN CAPITAL LETTER TONE FIVE;Lu;0;L;;;;;N;;;;01BD; -01BD;LATIN SMALL LETTER TONE FIVE;Ll;0;L;;;;;N;;;01BC;;01BC -01BE;LATIN LETTER INVERTED GLOTTAL STOP WITH STROKE;Ll;0;L;;;;;N;LATIN LETTER INVERTED GLOTTAL STOP BAR;;;; -01BF;LATIN LETTER WYNN;Ll;0;L;;;;;N;;;01F7;;01F7 -01C0;LATIN LETTER DENTAL CLICK;Lo;0;L;;;;;N;LATIN LETTER PIPE;;;; -01C1;LATIN LETTER LATERAL CLICK;Lo;0;L;;;;;N;LATIN LETTER DOUBLE PIPE;;;; -01C2;LATIN LETTER ALVEOLAR CLICK;Lo;0;L;;;;;N;LATIN LETTER PIPE DOUBLE BAR;;;; -01C3;LATIN LETTER RETROFLEX CLICK;Lo;0;L;;;;;N;LATIN LETTER EXCLAMATION MARK;;;; -01C4;LATIN CAPITAL LETTER DZ WITH CARON;Lu;0;L; 0044 017D;;;;N;LATIN CAPITAL LETTER D Z HACEK;;;01C6;01C5 -01C5;LATIN CAPITAL LETTER D WITH SMALL LETTER Z WITH CARON;Lt;0;L; 0044 017E;;;;N;LATIN LETTER CAPITAL D SMALL Z HACEK;;01C4;01C6;01C5 -01C6;LATIN SMALL LETTER DZ WITH CARON;Ll;0;L; 0064 017E;;;;N;LATIN SMALL LETTER D Z HACEK;;01C4;;01C5 -01C7;LATIN CAPITAL LETTER LJ;Lu;0;L; 004C 004A;;;;N;LATIN CAPITAL LETTER L J;;;01C9;01C8 -01C8;LATIN CAPITAL LETTER L WITH SMALL LETTER J;Lt;0;L; 004C 006A;;;;N;LATIN LETTER CAPITAL L SMALL J;;01C7;01C9;01C8 -01C9;LATIN SMALL LETTER LJ;Ll;0;L; 006C 006A;;;;N;LATIN SMALL LETTER L J;;01C7;;01C8 -01CA;LATIN CAPITAL LETTER NJ;Lu;0;L; 004E 004A;;;;N;LATIN CAPITAL LETTER N J;;;01CC;01CB -01CB;LATIN CAPITAL LETTER N WITH SMALL LETTER J;Lt;0;L; 004E 006A;;;;N;LATIN LETTER CAPITAL N SMALL J;;01CA;01CC;01CB -01CC;LATIN SMALL LETTER NJ;Ll;0;L; 006E 006A;;;;N;LATIN SMALL LETTER N J;;01CA;;01CB -01CD;LATIN CAPITAL LETTER A WITH CARON;Lu;0;L;0041 030C;;;;N;LATIN CAPITAL LETTER A HACEK;;;01CE; -01CE;LATIN SMALL LETTER A WITH CARON;Ll;0;L;0061 030C;;;;N;LATIN SMALL LETTER A HACEK;;01CD;;01CD -01CF;LATIN CAPITAL LETTER I WITH CARON;Lu;0;L;0049 030C;;;;N;LATIN CAPITAL LETTER I HACEK;;;01D0; -01D0;LATIN SMALL LETTER I WITH CARON;Ll;0;L;0069 030C;;;;N;LATIN SMALL LETTER I HACEK;;01CF;;01CF -01D1;LATIN CAPITAL LETTER O WITH CARON;Lu;0;L;004F 030C;;;;N;LATIN CAPITAL LETTER O HACEK;;;01D2; -01D2;LATIN SMALL LETTER O WITH CARON;Ll;0;L;006F 030C;;;;N;LATIN SMALL LETTER O HACEK;;01D1;;01D1 -01D3;LATIN CAPITAL LETTER U WITH CARON;Lu;0;L;0055 030C;;;;N;LATIN CAPITAL LETTER U HACEK;;;01D4; -01D4;LATIN SMALL LETTER U WITH CARON;Ll;0;L;0075 030C;;;;N;LATIN SMALL LETTER U HACEK;;01D3;;01D3 -01D5;LATIN CAPITAL LETTER U WITH DIAERESIS AND MACRON;Lu;0;L;00DC 0304;;;;N;LATIN CAPITAL LETTER U DIAERESIS MACRON;;;01D6; -01D6;LATIN SMALL LETTER U WITH DIAERESIS AND MACRON;Ll;0;L;00FC 0304;;;;N;LATIN SMALL LETTER U DIAERESIS MACRON;;01D5;;01D5 -01D7;LATIN CAPITAL LETTER U WITH DIAERESIS AND ACUTE;Lu;0;L;00DC 0301;;;;N;LATIN CAPITAL LETTER U DIAERESIS ACUTE;;;01D8; -01D8;LATIN SMALL LETTER U WITH DIAERESIS AND ACUTE;Ll;0;L;00FC 0301;;;;N;LATIN SMALL LETTER U DIAERESIS ACUTE;;01D7;;01D7 -01D9;LATIN CAPITAL LETTER U WITH DIAERESIS AND CARON;Lu;0;L;00DC 030C;;;;N;LATIN CAPITAL LETTER U DIAERESIS HACEK;;;01DA; -01DA;LATIN SMALL LETTER U WITH DIAERESIS AND CARON;Ll;0;L;00FC 030C;;;;N;LATIN SMALL LETTER U DIAERESIS HACEK;;01D9;;01D9 -01DB;LATIN CAPITAL LETTER U WITH DIAERESIS AND GRAVE;Lu;0;L;00DC 0300;;;;N;LATIN CAPITAL LETTER U DIAERESIS GRAVE;;;01DC; -01DC;LATIN SMALL LETTER U WITH DIAERESIS AND GRAVE;Ll;0;L;00FC 0300;;;;N;LATIN SMALL LETTER U DIAERESIS GRAVE;;01DB;;01DB -01DD;LATIN SMALL LETTER TURNED E;Ll;0;L;;;;;N;;;018E;;018E -01DE;LATIN CAPITAL LETTER A WITH DIAERESIS AND MACRON;Lu;0;L;00C4 0304;;;;N;LATIN CAPITAL LETTER A DIAERESIS MACRON;;;01DF; -01DF;LATIN SMALL LETTER A WITH DIAERESIS AND MACRON;Ll;0;L;00E4 0304;;;;N;LATIN SMALL LETTER A DIAERESIS MACRON;;01DE;;01DE -01E0;LATIN CAPITAL LETTER A WITH DOT ABOVE AND MACRON;Lu;0;L;0226 0304;;;;N;LATIN CAPITAL LETTER A DOT MACRON;;;01E1; -01E1;LATIN SMALL LETTER A WITH DOT ABOVE AND MACRON;Ll;0;L;0227 0304;;;;N;LATIN SMALL LETTER A DOT MACRON;;01E0;;01E0 -01E2;LATIN CAPITAL LETTER AE WITH MACRON;Lu;0;L;00C6 0304;;;;N;LATIN CAPITAL LETTER A E MACRON;;;01E3; -01E3;LATIN SMALL LETTER AE WITH MACRON;Ll;0;L;00E6 0304;;;;N;LATIN SMALL LETTER A E MACRON;;01E2;;01E2 -01E4;LATIN CAPITAL LETTER G WITH STROKE;Lu;0;L;;;;;N;LATIN CAPITAL LETTER G BAR;;;01E5; -01E5;LATIN SMALL LETTER G WITH STROKE;Ll;0;L;;;;;N;LATIN SMALL LETTER G BAR;;01E4;;01E4 -01E6;LATIN CAPITAL LETTER G WITH CARON;Lu;0;L;0047 030C;;;;N;LATIN CAPITAL LETTER G HACEK;;;01E7; -01E7;LATIN SMALL LETTER G WITH CARON;Ll;0;L;0067 030C;;;;N;LATIN SMALL LETTER G HACEK;;01E6;;01E6 -01E8;LATIN CAPITAL LETTER K WITH CARON;Lu;0;L;004B 030C;;;;N;LATIN CAPITAL LETTER K HACEK;;;01E9; -01E9;LATIN SMALL LETTER K WITH CARON;Ll;0;L;006B 030C;;;;N;LATIN SMALL LETTER K HACEK;;01E8;;01E8 -01EA;LATIN CAPITAL LETTER O WITH OGONEK;Lu;0;L;004F 0328;;;;N;LATIN CAPITAL LETTER O OGONEK;;;01EB; -01EB;LATIN SMALL LETTER O WITH OGONEK;Ll;0;L;006F 0328;;;;N;LATIN SMALL LETTER O OGONEK;;01EA;;01EA -01EC;LATIN CAPITAL LETTER O WITH OGONEK AND MACRON;Lu;0;L;01EA 0304;;;;N;LATIN CAPITAL LETTER O OGONEK MACRON;;;01ED; -01ED;LATIN SMALL LETTER O WITH OGONEK AND MACRON;Ll;0;L;01EB 0304;;;;N;LATIN SMALL LETTER O OGONEK MACRON;;01EC;;01EC -01EE;LATIN CAPITAL LETTER EZH WITH CARON;Lu;0;L;01B7 030C;;;;N;LATIN CAPITAL LETTER YOGH HACEK;;;01EF; -01EF;LATIN SMALL LETTER EZH WITH CARON;Ll;0;L;0292 030C;;;;N;LATIN SMALL LETTER YOGH HACEK;;01EE;;01EE -01F0;LATIN SMALL LETTER J WITH CARON;Ll;0;L;006A 030C;;;;N;LATIN SMALL LETTER J HACEK;;;; -01F1;LATIN CAPITAL LETTER DZ;Lu;0;L; 0044 005A;;;;N;;;;01F3;01F2 -01F2;LATIN CAPITAL LETTER D WITH SMALL LETTER Z;Lt;0;L; 0044 007A;;;;N;;;01F1;01F3;01F2 -01F3;LATIN SMALL LETTER DZ;Ll;0;L; 0064 007A;;;;N;;;01F1;;01F2 -01F4;LATIN CAPITAL LETTER G WITH ACUTE;Lu;0;L;0047 0301;;;;N;;;;01F5; -01F5;LATIN SMALL LETTER G WITH ACUTE;Ll;0;L;0067 0301;;;;N;;;01F4;;01F4 -01F6;LATIN CAPITAL LETTER HWAIR;Lu;0;L;;;;;N;;;;0195; -01F7;LATIN CAPITAL LETTER WYNN;Lu;0;L;;;;;N;;;;01BF; -01F8;LATIN CAPITAL LETTER N WITH GRAVE;Lu;0;L;004E 0300;;;;N;;;;01F9; -01F9;LATIN SMALL LETTER N WITH GRAVE;Ll;0;L;006E 0300;;;;N;;;01F8;;01F8 -01FA;LATIN CAPITAL LETTER A WITH RING ABOVE AND ACUTE;Lu;0;L;00C5 0301;;;;N;;;;01FB; -01FB;LATIN SMALL LETTER A WITH RING ABOVE AND ACUTE;Ll;0;L;00E5 0301;;;;N;;;01FA;;01FA -01FC;LATIN CAPITAL LETTER AE WITH ACUTE;Lu;0;L;00C6 0301;;;;N;;;;01FD; -01FD;LATIN SMALL LETTER AE WITH ACUTE;Ll;0;L;00E6 0301;;;;N;;;01FC;;01FC -01FE;LATIN CAPITAL LETTER O WITH STROKE AND ACUTE;Lu;0;L;00D8 0301;;;;N;;;;01FF; -01FF;LATIN SMALL LETTER O WITH STROKE AND ACUTE;Ll;0;L;00F8 0301;;;;N;;;01FE;;01FE -0200;LATIN CAPITAL LETTER A WITH DOUBLE GRAVE;Lu;0;L;0041 030F;;;;N;;;;0201; -0201;LATIN SMALL LETTER A WITH DOUBLE GRAVE;Ll;0;L;0061 030F;;;;N;;;0200;;0200 -0202;LATIN CAPITAL LETTER A WITH INVERTED BREVE;Lu;0;L;0041 0311;;;;N;;;;0203; -0203;LATIN SMALL LETTER A WITH INVERTED BREVE;Ll;0;L;0061 0311;;;;N;;;0202;;0202 -0204;LATIN CAPITAL LETTER E WITH DOUBLE GRAVE;Lu;0;L;0045 030F;;;;N;;;;0205; -0205;LATIN SMALL LETTER E WITH DOUBLE GRAVE;Ll;0;L;0065 030F;;;;N;;;0204;;0204 -0206;LATIN CAPITAL LETTER E WITH INVERTED BREVE;Lu;0;L;0045 0311;;;;N;;;;0207; -0207;LATIN SMALL LETTER E WITH INVERTED BREVE;Ll;0;L;0065 0311;;;;N;;;0206;;0206 -0208;LATIN CAPITAL LETTER I WITH DOUBLE GRAVE;Lu;0;L;0049 030F;;;;N;;;;0209; -0209;LATIN SMALL LETTER I WITH DOUBLE GRAVE;Ll;0;L;0069 030F;;;;N;;;0208;;0208 -020A;LATIN CAPITAL LETTER I WITH INVERTED BREVE;Lu;0;L;0049 0311;;;;N;;;;020B; -020B;LATIN SMALL LETTER I WITH INVERTED BREVE;Ll;0;L;0069 0311;;;;N;;;020A;;020A -020C;LATIN CAPITAL LETTER O WITH DOUBLE GRAVE;Lu;0;L;004F 030F;;;;N;;;;020D; -020D;LATIN SMALL LETTER O WITH DOUBLE GRAVE;Ll;0;L;006F 030F;;;;N;;;020C;;020C -020E;LATIN CAPITAL LETTER O WITH INVERTED BREVE;Lu;0;L;004F 0311;;;;N;;;;020F; -020F;LATIN SMALL LETTER O WITH INVERTED BREVE;Ll;0;L;006F 0311;;;;N;;;020E;;020E -0210;LATIN CAPITAL LETTER R WITH DOUBLE GRAVE;Lu;0;L;0052 030F;;;;N;;;;0211; -0211;LATIN SMALL LETTER R WITH DOUBLE GRAVE;Ll;0;L;0072 030F;;;;N;;;0210;;0210 -0212;LATIN CAPITAL LETTER R WITH INVERTED BREVE;Lu;0;L;0052 0311;;;;N;;;;0213; -0213;LATIN SMALL LETTER R WITH INVERTED BREVE;Ll;0;L;0072 0311;;;;N;;;0212;;0212 -0214;LATIN CAPITAL LETTER U WITH DOUBLE GRAVE;Lu;0;L;0055 030F;;;;N;;;;0215; -0215;LATIN SMALL LETTER U WITH DOUBLE GRAVE;Ll;0;L;0075 030F;;;;N;;;0214;;0214 -0216;LATIN CAPITAL LETTER U WITH INVERTED BREVE;Lu;0;L;0055 0311;;;;N;;;;0217; -0217;LATIN SMALL LETTER U WITH INVERTED BREVE;Ll;0;L;0075 0311;;;;N;;;0216;;0216 -0218;LATIN CAPITAL LETTER S WITH COMMA BELOW;Lu;0;L;0053 0326;;;;N;;;;0219; -0219;LATIN SMALL LETTER S WITH COMMA BELOW;Ll;0;L;0073 0326;;;;N;;;0218;;0218 -021A;LATIN CAPITAL LETTER T WITH COMMA BELOW;Lu;0;L;0054 0326;;;;N;;;;021B; -021B;LATIN SMALL LETTER T WITH COMMA BELOW;Ll;0;L;0074 0326;;;;N;;;021A;;021A -021C;LATIN CAPITAL LETTER YOGH;Lu;0;L;;;;;N;;;;021D; -021D;LATIN SMALL LETTER YOGH;Ll;0;L;;;;;N;;;021C;;021C -021E;LATIN CAPITAL LETTER H WITH CARON;Lu;0;L;0048 030C;;;;N;;;;021F; -021F;LATIN SMALL LETTER H WITH CARON;Ll;0;L;0068 030C;;;;N;;;021E;;021E -0220;LATIN CAPITAL LETTER N WITH LONG RIGHT LEG;Lu;0;L;;;;;N;;;;019E; -0221;LATIN SMALL LETTER D WITH CURL;Ll;0;L;;;;;N;;;;; -0222;LATIN CAPITAL LETTER OU;Lu;0;L;;;;;N;;;;0223; -0223;LATIN SMALL LETTER OU;Ll;0;L;;;;;N;;;0222;;0222 -0224;LATIN CAPITAL LETTER Z WITH HOOK;Lu;0;L;;;;;N;;;;0225; -0225;LATIN SMALL LETTER Z WITH HOOK;Ll;0;L;;;;;N;;;0224;;0224 -0226;LATIN CAPITAL LETTER A WITH DOT ABOVE;Lu;0;L;0041 0307;;;;N;;;;0227; -0227;LATIN SMALL LETTER A WITH DOT ABOVE;Ll;0;L;0061 0307;;;;N;;;0226;;0226 -0228;LATIN CAPITAL LETTER E WITH CEDILLA;Lu;0;L;0045 0327;;;;N;;;;0229; -0229;LATIN SMALL LETTER E WITH CEDILLA;Ll;0;L;0065 0327;;;;N;;;0228;;0228 -022A;LATIN CAPITAL LETTER O WITH DIAERESIS AND MACRON;Lu;0;L;00D6 0304;;;;N;;;;022B; -022B;LATIN SMALL LETTER O WITH DIAERESIS AND MACRON;Ll;0;L;00F6 0304;;;;N;;;022A;;022A -022C;LATIN CAPITAL LETTER O WITH TILDE AND MACRON;Lu;0;L;00D5 0304;;;;N;;;;022D; -022D;LATIN SMALL LETTER O WITH TILDE AND MACRON;Ll;0;L;00F5 0304;;;;N;;;022C;;022C -022E;LATIN CAPITAL LETTER O WITH DOT ABOVE;Lu;0;L;004F 0307;;;;N;;;;022F; -022F;LATIN SMALL LETTER O WITH DOT ABOVE;Ll;0;L;006F 0307;;;;N;;;022E;;022E -0230;LATIN CAPITAL LETTER O WITH DOT ABOVE AND MACRON;Lu;0;L;022E 0304;;;;N;;;;0231; -0231;LATIN SMALL LETTER O WITH DOT ABOVE AND MACRON;Ll;0;L;022F 0304;;;;N;;;0230;;0230 -0232;LATIN CAPITAL LETTER Y WITH MACRON;Lu;0;L;0059 0304;;;;N;;;;0233; -0233;LATIN SMALL LETTER Y WITH MACRON;Ll;0;L;0079 0304;;;;N;;;0232;;0232 -0234;LATIN SMALL LETTER L WITH CURL;Ll;0;L;;;;;N;;;;; -0235;LATIN SMALL LETTER N WITH CURL;Ll;0;L;;;;;N;;;;; -0236;LATIN SMALL LETTER T WITH CURL;Ll;0;L;;;;;N;;;;; -0237;LATIN SMALL LETTER DOTLESS J;Ll;0;L;;;;;N;;;;; -0238;LATIN SMALL LETTER DB DIGRAPH;Ll;0;L;;;;;N;;;;; -0239;LATIN SMALL LETTER QP DIGRAPH;Ll;0;L;;;;;N;;;;; -023A;LATIN CAPITAL LETTER A WITH STROKE;Lu;0;L;;;;;N;;;;2C65; -023B;LATIN CAPITAL LETTER C WITH STROKE;Lu;0;L;;;;;N;;;;023C; -023C;LATIN SMALL LETTER C WITH STROKE;Ll;0;L;;;;;N;;;023B;;023B -023D;LATIN CAPITAL LETTER L WITH BAR;Lu;0;L;;;;;N;;;;019A; -023E;LATIN CAPITAL LETTER T WITH DIAGONAL STROKE;Lu;0;L;;;;;N;;;;2C66; -023F;LATIN SMALL LETTER S WITH SWASH TAIL;Ll;0;L;;;;;N;;;2C7E;;2C7E -0240;LATIN SMALL LETTER Z WITH SWASH TAIL;Ll;0;L;;;;;N;;;2C7F;;2C7F -0241;LATIN CAPITAL LETTER GLOTTAL STOP;Lu;0;L;;;;;N;;;;0242; -0242;LATIN SMALL LETTER GLOTTAL STOP;Ll;0;L;;;;;N;;;0241;;0241 -0243;LATIN CAPITAL LETTER B WITH STROKE;Lu;0;L;;;;;N;;;;0180; -0244;LATIN CAPITAL LETTER U BAR;Lu;0;L;;;;;N;;;;0289; -0245;LATIN CAPITAL LETTER TURNED V;Lu;0;L;;;;;N;;;;028C; -0246;LATIN CAPITAL LETTER E WITH STROKE;Lu;0;L;;;;;N;;;;0247; -0247;LATIN SMALL LETTER E WITH STROKE;Ll;0;L;;;;;N;;;0246;;0246 -0248;LATIN CAPITAL LETTER J WITH STROKE;Lu;0;L;;;;;N;;;;0249; -0249;LATIN SMALL LETTER J WITH STROKE;Ll;0;L;;;;;N;;;0248;;0248 -024A;LATIN CAPITAL LETTER SMALL Q WITH HOOK TAIL;Lu;0;L;;;;;N;;;;024B; -024B;LATIN SMALL LETTER Q WITH HOOK TAIL;Ll;0;L;;;;;N;;;024A;;024A -024C;LATIN CAPITAL LETTER R WITH STROKE;Lu;0;L;;;;;N;;;;024D; -024D;LATIN SMALL LETTER R WITH STROKE;Ll;0;L;;;;;N;;;024C;;024C -024E;LATIN CAPITAL LETTER Y WITH STROKE;Lu;0;L;;;;;N;;;;024F; -024F;LATIN SMALL LETTER Y WITH STROKE;Ll;0;L;;;;;N;;;024E;;024E -0250;LATIN SMALL LETTER TURNED A;Ll;0;L;;;;;N;;;2C6F;;2C6F -0251;LATIN SMALL LETTER ALPHA;Ll;0;L;;;;;N;LATIN SMALL LETTER SCRIPT A;;2C6D;;2C6D -0252;LATIN SMALL LETTER TURNED ALPHA;Ll;0;L;;;;;N;LATIN SMALL LETTER TURNED SCRIPT A;;2C70;;2C70 -0253;LATIN SMALL LETTER B WITH HOOK;Ll;0;L;;;;;N;LATIN SMALL LETTER B HOOK;;0181;;0181 -0254;LATIN SMALL LETTER OPEN O;Ll;0;L;;;;;N;;;0186;;0186 -0255;LATIN SMALL LETTER C WITH CURL;Ll;0;L;;;;;N;LATIN SMALL LETTER C CURL;;;; -0256;LATIN SMALL LETTER D WITH TAIL;Ll;0;L;;;;;N;LATIN SMALL LETTER D RETROFLEX HOOK;;0189;;0189 -0257;LATIN SMALL LETTER D WITH HOOK;Ll;0;L;;;;;N;LATIN SMALL LETTER D HOOK;;018A;;018A -0258;LATIN SMALL LETTER REVERSED E;Ll;0;L;;;;;N;;;;; -0259;LATIN SMALL LETTER SCHWA;Ll;0;L;;;;;N;;;018F;;018F -025A;LATIN SMALL LETTER SCHWA WITH HOOK;Ll;0;L;;;;;N;LATIN SMALL LETTER SCHWA HOOK;;;; -025B;LATIN SMALL LETTER OPEN E;Ll;0;L;;;;;N;LATIN SMALL LETTER EPSILON;;0190;;0190 -025C;LATIN SMALL LETTER REVERSED OPEN E;Ll;0;L;;;;;N;LATIN SMALL LETTER REVERSED EPSILON;;;; -025D;LATIN SMALL LETTER REVERSED OPEN E WITH HOOK;Ll;0;L;;;;;N;LATIN SMALL LETTER REVERSED EPSILON HOOK;;;; -025E;LATIN SMALL LETTER CLOSED REVERSED OPEN E;Ll;0;L;;;;;N;LATIN SMALL LETTER CLOSED REVERSED EPSILON;;;; -025F;LATIN SMALL LETTER DOTLESS J WITH STROKE;Ll;0;L;;;;;N;LATIN SMALL LETTER DOTLESS J BAR;;;; -0260;LATIN SMALL LETTER G WITH HOOK;Ll;0;L;;;;;N;LATIN SMALL LETTER G HOOK;;0193;;0193 -0261;LATIN SMALL LETTER SCRIPT G;Ll;0;L;;;;;N;;;;; -0262;LATIN LETTER SMALL CAPITAL G;Ll;0;L;;;;;N;;;;; -0263;LATIN SMALL LETTER GAMMA;Ll;0;L;;;;;N;;;0194;;0194 -0264;LATIN SMALL LETTER RAMS HORN;Ll;0;L;;;;;N;LATIN SMALL LETTER BABY GAMMA;;;; -0265;LATIN SMALL LETTER TURNED H;Ll;0;L;;;;;N;;;A78D;;A78D -0266;LATIN SMALL LETTER H WITH HOOK;Ll;0;L;;;;;N;LATIN SMALL LETTER H HOOK;;;; -0267;LATIN SMALL LETTER HENG WITH HOOK;Ll;0;L;;;;;N;LATIN SMALL LETTER HENG HOOK;;;; -0268;LATIN SMALL LETTER I WITH STROKE;Ll;0;L;;;;;N;LATIN SMALL LETTER BARRED I;;0197;;0197 -0269;LATIN SMALL LETTER IOTA;Ll;0;L;;;;;N;;;0196;;0196 -026A;LATIN LETTER SMALL CAPITAL I;Ll;0;L;;;;;N;;;;; -026B;LATIN SMALL LETTER L WITH MIDDLE TILDE;Ll;0;L;;;;;N;;;2C62;;2C62 -026C;LATIN SMALL LETTER L WITH BELT;Ll;0;L;;;;;N;LATIN SMALL LETTER L BELT;;;; -026D;LATIN SMALL LETTER L WITH RETROFLEX HOOK;Ll;0;L;;;;;N;LATIN SMALL LETTER L RETROFLEX HOOK;;;; -026E;LATIN SMALL LETTER LEZH;Ll;0;L;;;;;N;LATIN SMALL LETTER L YOGH;;;; -026F;LATIN SMALL LETTER TURNED M;Ll;0;L;;;;;N;;;019C;;019C -0270;LATIN SMALL LETTER TURNED M WITH LONG LEG;Ll;0;L;;;;;N;;;;; -0271;LATIN SMALL LETTER M WITH HOOK;Ll;0;L;;;;;N;LATIN SMALL LETTER M HOOK;;2C6E;;2C6E -0272;LATIN SMALL LETTER N WITH LEFT HOOK;Ll;0;L;;;;;N;LATIN SMALL LETTER N HOOK;;019D;;019D -0273;LATIN SMALL LETTER N WITH RETROFLEX HOOK;Ll;0;L;;;;;N;LATIN SMALL LETTER N RETROFLEX HOOK;;;; -0274;LATIN LETTER SMALL CAPITAL N;Ll;0;L;;;;;N;;;;; -0275;LATIN SMALL LETTER BARRED O;Ll;0;L;;;;;N;;;019F;;019F -0276;LATIN LETTER SMALL CAPITAL OE;Ll;0;L;;;;;N;LATIN LETTER SMALL CAPITAL O E;;;; -0277;LATIN SMALL LETTER CLOSED OMEGA;Ll;0;L;;;;;N;;;;; -0278;LATIN SMALL LETTER PHI;Ll;0;L;;;;;N;;;;; -0279;LATIN SMALL LETTER TURNED R;Ll;0;L;;;;;N;;;;; -027A;LATIN SMALL LETTER TURNED R WITH LONG LEG;Ll;0;L;;;;;N;;;;; -027B;LATIN SMALL LETTER TURNED R WITH HOOK;Ll;0;L;;;;;N;LATIN SMALL LETTER TURNED R HOOK;;;; -027C;LATIN SMALL LETTER R WITH LONG LEG;Ll;0;L;;;;;N;;;;; -027D;LATIN SMALL LETTER R WITH TAIL;Ll;0;L;;;;;N;LATIN SMALL LETTER R HOOK;;2C64;;2C64 -027E;LATIN SMALL LETTER R WITH FISHHOOK;Ll;0;L;;;;;N;LATIN SMALL LETTER FISHHOOK R;;;; -027F;LATIN SMALL LETTER REVERSED R WITH FISHHOOK;Ll;0;L;;;;;N;LATIN SMALL LETTER REVERSED FISHHOOK R;;;; -0280;LATIN LETTER SMALL CAPITAL R;Ll;0;L;;;;;N;;;01A6;;01A6 -0281;LATIN LETTER SMALL CAPITAL INVERTED R;Ll;0;L;;;;;N;;;;; -0282;LATIN SMALL LETTER S WITH HOOK;Ll;0;L;;;;;N;LATIN SMALL LETTER S HOOK;;;; -0283;LATIN SMALL LETTER ESH;Ll;0;L;;;;;N;;;01A9;;01A9 -0284;LATIN SMALL LETTER DOTLESS J WITH STROKE AND HOOK;Ll;0;L;;;;;N;LATIN SMALL LETTER DOTLESS J BAR HOOK;;;; -0285;LATIN SMALL LETTER SQUAT REVERSED ESH;Ll;0;L;;;;;N;;;;; -0286;LATIN SMALL LETTER ESH WITH CURL;Ll;0;L;;;;;N;LATIN SMALL LETTER ESH CURL;;;; -0287;LATIN SMALL LETTER TURNED T;Ll;0;L;;;;;N;;;;; -0288;LATIN SMALL LETTER T WITH RETROFLEX HOOK;Ll;0;L;;;;;N;LATIN SMALL LETTER T RETROFLEX HOOK;;01AE;;01AE -0289;LATIN SMALL LETTER U BAR;Ll;0;L;;;;;N;;;0244;;0244 -028A;LATIN SMALL LETTER UPSILON;Ll;0;L;;;;;N;;;01B1;;01B1 -028B;LATIN SMALL LETTER V WITH HOOK;Ll;0;L;;;;;N;LATIN SMALL LETTER SCRIPT V;;01B2;;01B2 -028C;LATIN SMALL LETTER TURNED V;Ll;0;L;;;;;N;;;0245;;0245 -028D;LATIN SMALL LETTER TURNED W;Ll;0;L;;;;;N;;;;; -028E;LATIN SMALL LETTER TURNED Y;Ll;0;L;;;;;N;;;;; -028F;LATIN LETTER SMALL CAPITAL Y;Ll;0;L;;;;;N;;;;; -0290;LATIN SMALL LETTER Z WITH RETROFLEX HOOK;Ll;0;L;;;;;N;LATIN SMALL LETTER Z RETROFLEX HOOK;;;; -0291;LATIN SMALL LETTER Z WITH CURL;Ll;0;L;;;;;N;LATIN SMALL LETTER Z CURL;;;; -0292;LATIN SMALL LETTER EZH;Ll;0;L;;;;;N;LATIN SMALL LETTER YOGH;;01B7;;01B7 -0293;LATIN SMALL LETTER EZH WITH CURL;Ll;0;L;;;;;N;LATIN SMALL LETTER YOGH CURL;;;; -0294;LATIN LETTER GLOTTAL STOP;Lo;0;L;;;;;N;;;;; -0295;LATIN LETTER PHARYNGEAL VOICED FRICATIVE;Ll;0;L;;;;;N;LATIN LETTER REVERSED GLOTTAL STOP;;;; -0296;LATIN LETTER INVERTED GLOTTAL STOP;Ll;0;L;;;;;N;;;;; -0297;LATIN LETTER STRETCHED C;Ll;0;L;;;;;N;;;;; -0298;LATIN LETTER BILABIAL CLICK;Ll;0;L;;;;;N;LATIN LETTER BULLSEYE;;;; -0299;LATIN LETTER SMALL CAPITAL B;Ll;0;L;;;;;N;;;;; -029A;LATIN SMALL LETTER CLOSED OPEN E;Ll;0;L;;;;;N;LATIN SMALL LETTER CLOSED EPSILON;;;; -029B;LATIN LETTER SMALL CAPITAL G WITH HOOK;Ll;0;L;;;;;N;LATIN LETTER SMALL CAPITAL G HOOK;;;; -029C;LATIN LETTER SMALL CAPITAL H;Ll;0;L;;;;;N;;;;; -029D;LATIN SMALL LETTER J WITH CROSSED-TAIL;Ll;0;L;;;;;N;LATIN SMALL LETTER CROSSED-TAIL J;;;; -029E;LATIN SMALL LETTER TURNED K;Ll;0;L;;;;;N;;;;; -029F;LATIN LETTER SMALL CAPITAL L;Ll;0;L;;;;;N;;;;; -02A0;LATIN SMALL LETTER Q WITH HOOK;Ll;0;L;;;;;N;LATIN SMALL LETTER Q HOOK;;;; -02A1;LATIN LETTER GLOTTAL STOP WITH STROKE;Ll;0;L;;;;;N;LATIN LETTER GLOTTAL STOP BAR;;;; -02A2;LATIN LETTER REVERSED GLOTTAL STOP WITH STROKE;Ll;0;L;;;;;N;LATIN LETTER REVERSED GLOTTAL STOP BAR;;;; -02A3;LATIN SMALL LETTER DZ DIGRAPH;Ll;0;L;;;;;N;LATIN SMALL LETTER D Z;;;; -02A4;LATIN SMALL LETTER DEZH DIGRAPH;Ll;0;L;;;;;N;LATIN SMALL LETTER D YOGH;;;; -02A5;LATIN SMALL LETTER DZ DIGRAPH WITH CURL;Ll;0;L;;;;;N;LATIN SMALL LETTER D Z CURL;;;; -02A6;LATIN SMALL LETTER TS DIGRAPH;Ll;0;L;;;;;N;LATIN SMALL LETTER T S;;;; -02A7;LATIN SMALL LETTER TESH DIGRAPH;Ll;0;L;;;;;N;LATIN SMALL LETTER T ESH;;;; -02A8;LATIN SMALL LETTER TC DIGRAPH WITH CURL;Ll;0;L;;;;;N;LATIN SMALL LETTER T C CURL;;;; -02A9;LATIN SMALL LETTER FENG DIGRAPH;Ll;0;L;;;;;N;;;;; -02AA;LATIN SMALL LETTER LS DIGRAPH;Ll;0;L;;;;;N;;;;; -02AB;LATIN SMALL LETTER LZ DIGRAPH;Ll;0;L;;;;;N;;;;; -02AC;LATIN LETTER BILABIAL PERCUSSIVE;Ll;0;L;;;;;N;;;;; -02AD;LATIN LETTER BIDENTAL PERCUSSIVE;Ll;0;L;;;;;N;;;;; -02AE;LATIN SMALL LETTER TURNED H WITH FISHHOOK;Ll;0;L;;;;;N;;;;; -02AF;LATIN SMALL LETTER TURNED H WITH FISHHOOK AND TAIL;Ll;0;L;;;;;N;;;;; -02B0;MODIFIER LETTER SMALL H;Lm;0;L; 0068;;;;N;;;;; -02B1;MODIFIER LETTER SMALL H WITH HOOK;Lm;0;L; 0266;;;;N;MODIFIER LETTER SMALL H HOOK;;;; -02B2;MODIFIER LETTER SMALL J;Lm;0;L; 006A;;;;N;;;;; -02B3;MODIFIER LETTER SMALL R;Lm;0;L; 0072;;;;N;;;;; -02B4;MODIFIER LETTER SMALL TURNED R;Lm;0;L; 0279;;;;N;;;;; -02B5;MODIFIER LETTER SMALL TURNED R WITH HOOK;Lm;0;L; 027B;;;;N;MODIFIER LETTER SMALL TURNED R HOOK;;;; -02B6;MODIFIER LETTER SMALL CAPITAL INVERTED R;Lm;0;L; 0281;;;;N;;;;; -02B7;MODIFIER LETTER SMALL W;Lm;0;L; 0077;;;;N;;;;; -02B8;MODIFIER LETTER SMALL Y;Lm;0;L; 0079;;;;N;;;;; -02B9;MODIFIER LETTER PRIME;Lm;0;ON;;;;;N;;;;; -02BA;MODIFIER LETTER DOUBLE PRIME;Lm;0;ON;;;;;N;;;;; -02BB;MODIFIER LETTER TURNED COMMA;Lm;0;L;;;;;N;;;;; -02BC;MODIFIER LETTER APOSTROPHE;Lm;0;L;;;;;N;;;;; -02BD;MODIFIER LETTER REVERSED COMMA;Lm;0;L;;;;;N;;;;; -02BE;MODIFIER LETTER RIGHT HALF RING;Lm;0;L;;;;;N;;;;; -02BF;MODIFIER LETTER LEFT HALF RING;Lm;0;L;;;;;N;;;;; -02C0;MODIFIER LETTER GLOTTAL STOP;Lm;0;L;;;;;N;;;;; -02C1;MODIFIER LETTER REVERSED GLOTTAL STOP;Lm;0;L;;;;;N;;;;; -02C2;MODIFIER LETTER LEFT ARROWHEAD;Sk;0;ON;;;;;N;;;;; -02C3;MODIFIER LETTER RIGHT ARROWHEAD;Sk;0;ON;;;;;N;;;;; -02C4;MODIFIER LETTER UP ARROWHEAD;Sk;0;ON;;;;;N;;;;; -02C5;MODIFIER LETTER DOWN ARROWHEAD;Sk;0;ON;;;;;N;;;;; -02C6;MODIFIER LETTER CIRCUMFLEX ACCENT;Lm;0;ON;;;;;N;MODIFIER LETTER CIRCUMFLEX;;;; -02C7;CARON;Lm;0;ON;;;;;N;MODIFIER LETTER HACEK;;;; -02C8;MODIFIER LETTER VERTICAL LINE;Lm;0;ON;;;;;N;;;;; -02C9;MODIFIER LETTER MACRON;Lm;0;ON;;;;;N;;;;; -02CA;MODIFIER LETTER ACUTE ACCENT;Lm;0;ON;;;;;N;MODIFIER LETTER ACUTE;;;; -02CB;MODIFIER LETTER GRAVE ACCENT;Lm;0;ON;;;;;N;MODIFIER LETTER GRAVE;;;; -02CC;MODIFIER LETTER LOW VERTICAL LINE;Lm;0;ON;;;;;N;;;;; -02CD;MODIFIER LETTER LOW MACRON;Lm;0;ON;;;;;N;;;;; -02CE;MODIFIER LETTER LOW GRAVE ACCENT;Lm;0;ON;;;;;N;MODIFIER LETTER LOW GRAVE;;;; -02CF;MODIFIER LETTER LOW ACUTE ACCENT;Lm;0;ON;;;;;N;MODIFIER LETTER LOW ACUTE;;;; -02D0;MODIFIER LETTER TRIANGULAR COLON;Lm;0;L;;;;;N;;;;; -02D1;MODIFIER LETTER HALF TRIANGULAR COLON;Lm;0;L;;;;;N;;;;; -02D2;MODIFIER LETTER CENTRED RIGHT HALF RING;Sk;0;ON;;;;;N;MODIFIER LETTER CENTERED RIGHT HALF RING;;;; -02D3;MODIFIER LETTER CENTRED LEFT HALF RING;Sk;0;ON;;;;;N;MODIFIER LETTER CENTERED LEFT HALF RING;;;; -02D4;MODIFIER LETTER UP TACK;Sk;0;ON;;;;;N;;;;; -02D5;MODIFIER LETTER DOWN TACK;Sk;0;ON;;;;;N;;;;; -02D6;MODIFIER LETTER PLUS SIGN;Sk;0;ON;;;;;N;;;;; -02D7;MODIFIER LETTER MINUS SIGN;Sk;0;ON;;;;;N;;;;; -02D8;BREVE;Sk;0;ON; 0020 0306;;;;N;SPACING BREVE;;;; -02D9;DOT ABOVE;Sk;0;ON; 0020 0307;;;;N;SPACING DOT ABOVE;;;; -02DA;RING ABOVE;Sk;0;ON; 0020 030A;;;;N;SPACING RING ABOVE;;;; -02DB;OGONEK;Sk;0;ON; 0020 0328;;;;N;SPACING OGONEK;;;; -02DC;SMALL TILDE;Sk;0;ON; 0020 0303;;;;N;SPACING TILDE;;;; -02DD;DOUBLE ACUTE ACCENT;Sk;0;ON; 0020 030B;;;;N;SPACING DOUBLE ACUTE;;;; -02DE;MODIFIER LETTER RHOTIC HOOK;Sk;0;ON;;;;;N;;;;; -02DF;MODIFIER LETTER CROSS ACCENT;Sk;0;ON;;;;;N;;;;; -02E0;MODIFIER LETTER SMALL GAMMA;Lm;0;L; 0263;;;;N;;;;; -02E1;MODIFIER LETTER SMALL L;Lm;0;L; 006C;;;;N;;;;; -02E2;MODIFIER LETTER SMALL S;Lm;0;L; 0073;;;;N;;;;; -02E3;MODIFIER LETTER SMALL X;Lm;0;L; 0078;;;;N;;;;; -02E4;MODIFIER LETTER SMALL REVERSED GLOTTAL STOP;Lm;0;L; 0295;;;;N;;;;; -02E5;MODIFIER LETTER EXTRA-HIGH TONE BAR;Sk;0;ON;;;;;N;;;;; -02E6;MODIFIER LETTER HIGH TONE BAR;Sk;0;ON;;;;;N;;;;; -02E7;MODIFIER LETTER MID TONE BAR;Sk;0;ON;;;;;N;;;;; -02E8;MODIFIER LETTER LOW TONE BAR;Sk;0;ON;;;;;N;;;;; -02E9;MODIFIER LETTER EXTRA-LOW TONE BAR;Sk;0;ON;;;;;N;;;;; -02EA;MODIFIER LETTER YIN DEPARTING TONE MARK;Sk;0;ON;;;;;N;;;;; -02EB;MODIFIER LETTER YANG DEPARTING TONE MARK;Sk;0;ON;;;;;N;;;;; -02EC;MODIFIER LETTER VOICING;Lm;0;ON;;;;;N;;;;; -02ED;MODIFIER LETTER UNASPIRATED;Sk;0;ON;;;;;N;;;;; -02EE;MODIFIER LETTER DOUBLE APOSTROPHE;Lm;0;L;;;;;N;;;;; -02EF;MODIFIER LETTER LOW DOWN ARROWHEAD;Sk;0;ON;;;;;N;;;;; -02F0;MODIFIER LETTER LOW UP ARROWHEAD;Sk;0;ON;;;;;N;;;;; -02F1;MODIFIER LETTER LOW LEFT ARROWHEAD;Sk;0;ON;;;;;N;;;;; -02F2;MODIFIER LETTER LOW RIGHT ARROWHEAD;Sk;0;ON;;;;;N;;;;; -02F3;MODIFIER LETTER LOW RING;Sk;0;ON;;;;;N;;;;; -02F4;MODIFIER LETTER MIDDLE GRAVE ACCENT;Sk;0;ON;;;;;N;;;;; -02F5;MODIFIER LETTER MIDDLE DOUBLE GRAVE ACCENT;Sk;0;ON;;;;;N;;;;; -02F6;MODIFIER LETTER MIDDLE DOUBLE ACUTE ACCENT;Sk;0;ON;;;;;N;;;;; -02F7;MODIFIER LETTER LOW TILDE;Sk;0;ON;;;;;N;;;;; -02F8;MODIFIER LETTER RAISED COLON;Sk;0;ON;;;;;N;;;;; -02F9;MODIFIER LETTER BEGIN HIGH TONE;Sk;0;ON;;;;;N;;;;; -02FA;MODIFIER LETTER END HIGH TONE;Sk;0;ON;;;;;N;;;;; -02FB;MODIFIER LETTER BEGIN LOW TONE;Sk;0;ON;;;;;N;;;;; -02FC;MODIFIER LETTER END LOW TONE;Sk;0;ON;;;;;N;;;;; -02FD;MODIFIER LETTER SHELF;Sk;0;ON;;;;;N;;;;; -02FE;MODIFIER LETTER OPEN SHELF;Sk;0;ON;;;;;N;;;;; -02FF;MODIFIER LETTER LOW LEFT ARROW;Sk;0;ON;;;;;N;;;;; -0300;COMBINING GRAVE ACCENT;Mn;230;NSM;;;;;N;NON-SPACING GRAVE;;;; -0301;COMBINING ACUTE ACCENT;Mn;230;NSM;;;;;N;NON-SPACING ACUTE;;;; -0302;COMBINING CIRCUMFLEX ACCENT;Mn;230;NSM;;;;;N;NON-SPACING CIRCUMFLEX;;;; -0303;COMBINING TILDE;Mn;230;NSM;;;;;N;NON-SPACING TILDE;;;; -0304;COMBINING MACRON;Mn;230;NSM;;;;;N;NON-SPACING MACRON;;;; -0305;COMBINING OVERLINE;Mn;230;NSM;;;;;N;NON-SPACING OVERSCORE;;;; -0306;COMBINING BREVE;Mn;230;NSM;;;;;N;NON-SPACING BREVE;;;; -0307;COMBINING DOT ABOVE;Mn;230;NSM;;;;;N;NON-SPACING DOT ABOVE;;;; -0308;COMBINING DIAERESIS;Mn;230;NSM;;;;;N;NON-SPACING DIAERESIS;;;; -0309;COMBINING HOOK ABOVE;Mn;230;NSM;;;;;N;NON-SPACING HOOK ABOVE;;;; -030A;COMBINING RING ABOVE;Mn;230;NSM;;;;;N;NON-SPACING RING ABOVE;;;; -030B;COMBINING DOUBLE ACUTE ACCENT;Mn;230;NSM;;;;;N;NON-SPACING DOUBLE ACUTE;;;; -030C;COMBINING CARON;Mn;230;NSM;;;;;N;NON-SPACING HACEK;;;; -030D;COMBINING VERTICAL LINE ABOVE;Mn;230;NSM;;;;;N;NON-SPACING VERTICAL LINE ABOVE;;;; -030E;COMBINING DOUBLE VERTICAL LINE ABOVE;Mn;230;NSM;;;;;N;NON-SPACING DOUBLE VERTICAL LINE ABOVE;;;; -030F;COMBINING DOUBLE GRAVE ACCENT;Mn;230;NSM;;;;;N;NON-SPACING DOUBLE GRAVE;;;; -0310;COMBINING CANDRABINDU;Mn;230;NSM;;;;;N;NON-SPACING CANDRABINDU;;;; -0311;COMBINING INVERTED BREVE;Mn;230;NSM;;;;;N;NON-SPACING INVERTED BREVE;;;; -0312;COMBINING TURNED COMMA ABOVE;Mn;230;NSM;;;;;N;NON-SPACING TURNED COMMA ABOVE;;;; -0313;COMBINING COMMA ABOVE;Mn;230;NSM;;;;;N;NON-SPACING COMMA ABOVE;;;; -0314;COMBINING REVERSED COMMA ABOVE;Mn;230;NSM;;;;;N;NON-SPACING REVERSED COMMA ABOVE;;;; -0315;COMBINING COMMA ABOVE RIGHT;Mn;232;NSM;;;;;N;NON-SPACING COMMA ABOVE RIGHT;;;; -0316;COMBINING GRAVE ACCENT BELOW;Mn;220;NSM;;;;;N;NON-SPACING GRAVE BELOW;;;; -0317;COMBINING ACUTE ACCENT BELOW;Mn;220;NSM;;;;;N;NON-SPACING ACUTE BELOW;;;; -0318;COMBINING LEFT TACK BELOW;Mn;220;NSM;;;;;N;NON-SPACING LEFT TACK BELOW;;;; -0319;COMBINING RIGHT TACK BELOW;Mn;220;NSM;;;;;N;NON-SPACING RIGHT TACK BELOW;;;; -031A;COMBINING LEFT ANGLE ABOVE;Mn;232;NSM;;;;;N;NON-SPACING LEFT ANGLE ABOVE;;;; -031B;COMBINING HORN;Mn;216;NSM;;;;;N;NON-SPACING HORN;;;; -031C;COMBINING LEFT HALF RING BELOW;Mn;220;NSM;;;;;N;NON-SPACING LEFT HALF RING BELOW;;;; -031D;COMBINING UP TACK BELOW;Mn;220;NSM;;;;;N;NON-SPACING UP TACK BELOW;;;; -031E;COMBINING DOWN TACK BELOW;Mn;220;NSM;;;;;N;NON-SPACING DOWN TACK BELOW;;;; -031F;COMBINING PLUS SIGN BELOW;Mn;220;NSM;;;;;N;NON-SPACING PLUS SIGN BELOW;;;; -0320;COMBINING MINUS SIGN BELOW;Mn;220;NSM;;;;;N;NON-SPACING MINUS SIGN BELOW;;;; -0321;COMBINING PALATALIZED HOOK BELOW;Mn;202;NSM;;;;;N;NON-SPACING PALATALIZED HOOK BELOW;;;; -0322;COMBINING RETROFLEX HOOK BELOW;Mn;202;NSM;;;;;N;NON-SPACING RETROFLEX HOOK BELOW;;;; -0323;COMBINING DOT BELOW;Mn;220;NSM;;;;;N;NON-SPACING DOT BELOW;;;; -0324;COMBINING DIAERESIS BELOW;Mn;220;NSM;;;;;N;NON-SPACING DOUBLE DOT BELOW;;;; -0325;COMBINING RING BELOW;Mn;220;NSM;;;;;N;NON-SPACING RING BELOW;;;; -0326;COMBINING COMMA BELOW;Mn;220;NSM;;;;;N;NON-SPACING COMMA BELOW;;;; -0327;COMBINING CEDILLA;Mn;202;NSM;;;;;N;NON-SPACING CEDILLA;;;; -0328;COMBINING OGONEK;Mn;202;NSM;;;;;N;NON-SPACING OGONEK;;;; -0329;COMBINING VERTICAL LINE BELOW;Mn;220;NSM;;;;;N;NON-SPACING VERTICAL LINE BELOW;;;; -032A;COMBINING BRIDGE BELOW;Mn;220;NSM;;;;;N;NON-SPACING BRIDGE BELOW;;;; -032B;COMBINING INVERTED DOUBLE ARCH BELOW;Mn;220;NSM;;;;;N;NON-SPACING INVERTED DOUBLE ARCH BELOW;;;; -032C;COMBINING CARON BELOW;Mn;220;NSM;;;;;N;NON-SPACING HACEK BELOW;;;; -032D;COMBINING CIRCUMFLEX ACCENT BELOW;Mn;220;NSM;;;;;N;NON-SPACING CIRCUMFLEX BELOW;;;; -032E;COMBINING BREVE BELOW;Mn;220;NSM;;;;;N;NON-SPACING BREVE BELOW;;;; -032F;COMBINING INVERTED BREVE BELOW;Mn;220;NSM;;;;;N;NON-SPACING INVERTED BREVE BELOW;;;; -0330;COMBINING TILDE BELOW;Mn;220;NSM;;;;;N;NON-SPACING TILDE BELOW;;;; -0331;COMBINING MACRON BELOW;Mn;220;NSM;;;;;N;NON-SPACING MACRON BELOW;;;; -0332;COMBINING LOW LINE;Mn;220;NSM;;;;;N;NON-SPACING UNDERSCORE;;;; -0333;COMBINING DOUBLE LOW LINE;Mn;220;NSM;;;;;N;NON-SPACING DOUBLE UNDERSCORE;;;; -0334;COMBINING TILDE OVERLAY;Mn;1;NSM;;;;;N;NON-SPACING TILDE OVERLAY;;;; -0335;COMBINING SHORT STROKE OVERLAY;Mn;1;NSM;;;;;N;NON-SPACING SHORT BAR OVERLAY;;;; -0336;COMBINING LONG STROKE OVERLAY;Mn;1;NSM;;;;;N;NON-SPACING LONG BAR OVERLAY;;;; -0337;COMBINING SHORT SOLIDUS OVERLAY;Mn;1;NSM;;;;;N;NON-SPACING SHORT SLASH OVERLAY;;;; -0338;COMBINING LONG SOLIDUS OVERLAY;Mn;1;NSM;;;;;N;NON-SPACING LONG SLASH OVERLAY;;;; -0339;COMBINING RIGHT HALF RING BELOW;Mn;220;NSM;;;;;N;NON-SPACING RIGHT HALF RING BELOW;;;; -033A;COMBINING INVERTED BRIDGE BELOW;Mn;220;NSM;;;;;N;NON-SPACING INVERTED BRIDGE BELOW;;;; -033B;COMBINING SQUARE BELOW;Mn;220;NSM;;;;;N;NON-SPACING SQUARE BELOW;;;; -033C;COMBINING SEAGULL BELOW;Mn;220;NSM;;;;;N;NON-SPACING SEAGULL BELOW;;;; -033D;COMBINING X ABOVE;Mn;230;NSM;;;;;N;NON-SPACING X ABOVE;;;; -033E;COMBINING VERTICAL TILDE;Mn;230;NSM;;;;;N;NON-SPACING VERTICAL TILDE;;;; -033F;COMBINING DOUBLE OVERLINE;Mn;230;NSM;;;;;N;NON-SPACING DOUBLE OVERSCORE;;;; -0340;COMBINING GRAVE TONE MARK;Mn;230;NSM;0300;;;;N;NON-SPACING GRAVE TONE MARK;;;; -0341;COMBINING ACUTE TONE MARK;Mn;230;NSM;0301;;;;N;NON-SPACING ACUTE TONE MARK;;;; -0342;COMBINING GREEK PERISPOMENI;Mn;230;NSM;;;;;N;;;;; -0343;COMBINING GREEK KORONIS;Mn;230;NSM;0313;;;;N;;;;; -0344;COMBINING GREEK DIALYTIKA TONOS;Mn;230;NSM;0308 0301;;;;N;GREEK NON-SPACING DIAERESIS TONOS;;;; -0345;COMBINING GREEK YPOGEGRAMMENI;Mn;240;NSM;;;;;N;GREEK NON-SPACING IOTA BELOW;;0399;;0399 -0346;COMBINING BRIDGE ABOVE;Mn;230;NSM;;;;;N;;;;; -0347;COMBINING EQUALS SIGN BELOW;Mn;220;NSM;;;;;N;;;;; -0348;COMBINING DOUBLE VERTICAL LINE BELOW;Mn;220;NSM;;;;;N;;;;; -0349;COMBINING LEFT ANGLE BELOW;Mn;220;NSM;;;;;N;;;;; -034A;COMBINING NOT TILDE ABOVE;Mn;230;NSM;;;;;N;;;;; -034B;COMBINING HOMOTHETIC ABOVE;Mn;230;NSM;;;;;N;;;;; -034C;COMBINING ALMOST EQUAL TO ABOVE;Mn;230;NSM;;;;;N;;;;; -034D;COMBINING LEFT RIGHT ARROW BELOW;Mn;220;NSM;;;;;N;;;;; -034E;COMBINING UPWARDS ARROW BELOW;Mn;220;NSM;;;;;N;;;;; -034F;COMBINING GRAPHEME JOINER;Mn;0;NSM;;;;;N;;;;; -0350;COMBINING RIGHT ARROWHEAD ABOVE;Mn;230;NSM;;;;;N;;;;; -0351;COMBINING LEFT HALF RING ABOVE;Mn;230;NSM;;;;;N;;;;; -0352;COMBINING FERMATA;Mn;230;NSM;;;;;N;;;;; -0353;COMBINING X BELOW;Mn;220;NSM;;;;;N;;;;; -0354;COMBINING LEFT ARROWHEAD BELOW;Mn;220;NSM;;;;;N;;;;; -0355;COMBINING RIGHT ARROWHEAD BELOW;Mn;220;NSM;;;;;N;;;;; -0356;COMBINING RIGHT ARROWHEAD AND UP ARROWHEAD BELOW;Mn;220;NSM;;;;;N;;;;; -0357;COMBINING RIGHT HALF RING ABOVE;Mn;230;NSM;;;;;N;;;;; -0358;COMBINING DOT ABOVE RIGHT;Mn;232;NSM;;;;;N;;;;; -0359;COMBINING ASTERISK BELOW;Mn;220;NSM;;;;;N;;;;; -035A;COMBINING DOUBLE RING BELOW;Mn;220;NSM;;;;;N;;;;; -035B;COMBINING ZIGZAG ABOVE;Mn;230;NSM;;;;;N;;;;; -035C;COMBINING DOUBLE BREVE BELOW;Mn;233;NSM;;;;;N;;;;; -035D;COMBINING DOUBLE BREVE;Mn;234;NSM;;;;;N;;;;; -035E;COMBINING DOUBLE MACRON;Mn;234;NSM;;;;;N;;;;; -035F;COMBINING DOUBLE MACRON BELOW;Mn;233;NSM;;;;;N;;;;; -0360;COMBINING DOUBLE TILDE;Mn;234;NSM;;;;;N;;;;; -0361;COMBINING DOUBLE INVERTED BREVE;Mn;234;NSM;;;;;N;;;;; -0362;COMBINING DOUBLE RIGHTWARDS ARROW BELOW;Mn;233;NSM;;;;;N;;;;; -0363;COMBINING LATIN SMALL LETTER A;Mn;230;NSM;;;;;N;;;;; -0364;COMBINING LATIN SMALL LETTER E;Mn;230;NSM;;;;;N;;;;; -0365;COMBINING LATIN SMALL LETTER I;Mn;230;NSM;;;;;N;;;;; -0366;COMBINING LATIN SMALL LETTER O;Mn;230;NSM;;;;;N;;;;; -0367;COMBINING LATIN SMALL LETTER U;Mn;230;NSM;;;;;N;;;;; -0368;COMBINING LATIN SMALL LETTER C;Mn;230;NSM;;;;;N;;;;; -0369;COMBINING LATIN SMALL LETTER D;Mn;230;NSM;;;;;N;;;;; -036A;COMBINING LATIN SMALL LETTER H;Mn;230;NSM;;;;;N;;;;; -036B;COMBINING LATIN SMALL LETTER M;Mn;230;NSM;;;;;N;;;;; -036C;COMBINING LATIN SMALL LETTER R;Mn;230;NSM;;;;;N;;;;; -036D;COMBINING LATIN SMALL LETTER T;Mn;230;NSM;;;;;N;;;;; -036E;COMBINING LATIN SMALL LETTER V;Mn;230;NSM;;;;;N;;;;; -036F;COMBINING LATIN SMALL LETTER X;Mn;230;NSM;;;;;N;;;;; -0370;GREEK CAPITAL LETTER HETA;Lu;0;L;;;;;N;;;;0371; -0371;GREEK SMALL LETTER HETA;Ll;0;L;;;;;N;;;0370;;0370 -0372;GREEK CAPITAL LETTER ARCHAIC SAMPI;Lu;0;L;;;;;N;;;;0373; -0373;GREEK SMALL LETTER ARCHAIC SAMPI;Ll;0;L;;;;;N;;;0372;;0372 -0374;GREEK NUMERAL SIGN;Lm;0;ON;02B9;;;;N;GREEK UPPER NUMERAL SIGN;;;; -0375;GREEK LOWER NUMERAL SIGN;Sk;0;ON;;;;;N;;;;; -0376;GREEK CAPITAL LETTER PAMPHYLIAN DIGAMMA;Lu;0;L;;;;;N;;;;0377; -0377;GREEK SMALL LETTER PAMPHYLIAN DIGAMMA;Ll;0;L;;;;;N;;;0376;;0376 -037A;GREEK YPOGEGRAMMENI;Lm;0;L; 0020 0345;;;;N;GREEK SPACING IOTA BELOW;;;; -037B;GREEK SMALL REVERSED LUNATE SIGMA SYMBOL;Ll;0;L;;;;;N;;;03FD;;03FD -037C;GREEK SMALL DOTTED LUNATE SIGMA SYMBOL;Ll;0;L;;;;;N;;;03FE;;03FE -037D;GREEK SMALL REVERSED DOTTED LUNATE SIGMA SYMBOL;Ll;0;L;;;;;N;;;03FF;;03FF -037E;GREEK QUESTION MARK;Po;0;ON;003B;;;;N;;;;; -0384;GREEK TONOS;Sk;0;ON; 0020 0301;;;;N;GREEK SPACING TONOS;;;; -0385;GREEK DIALYTIKA TONOS;Sk;0;ON;00A8 0301;;;;N;GREEK SPACING DIAERESIS TONOS;;;; -0386;GREEK CAPITAL LETTER ALPHA WITH TONOS;Lu;0;L;0391 0301;;;;N;GREEK CAPITAL LETTER ALPHA TONOS;;;03AC; -0387;GREEK ANO TELEIA;Po;0;ON;00B7;;;;N;;;;; -0388;GREEK CAPITAL LETTER EPSILON WITH TONOS;Lu;0;L;0395 0301;;;;N;GREEK CAPITAL LETTER EPSILON TONOS;;;03AD; -0389;GREEK CAPITAL LETTER ETA WITH TONOS;Lu;0;L;0397 0301;;;;N;GREEK CAPITAL LETTER ETA TONOS;;;03AE; -038A;GREEK CAPITAL LETTER IOTA WITH TONOS;Lu;0;L;0399 0301;;;;N;GREEK CAPITAL LETTER IOTA TONOS;;;03AF; -038C;GREEK CAPITAL LETTER OMICRON WITH TONOS;Lu;0;L;039F 0301;;;;N;GREEK CAPITAL LETTER OMICRON TONOS;;;03CC; -038E;GREEK CAPITAL LETTER UPSILON WITH TONOS;Lu;0;L;03A5 0301;;;;N;GREEK CAPITAL LETTER UPSILON TONOS;;;03CD; -038F;GREEK CAPITAL LETTER OMEGA WITH TONOS;Lu;0;L;03A9 0301;;;;N;GREEK CAPITAL LETTER OMEGA TONOS;;;03CE; -0390;GREEK SMALL LETTER IOTA WITH DIALYTIKA AND TONOS;Ll;0;L;03CA 0301;;;;N;GREEK SMALL LETTER IOTA DIAERESIS TONOS;;;; -0391;GREEK CAPITAL LETTER ALPHA;Lu;0;L;;;;;N;;;;03B1; -0392;GREEK CAPITAL LETTER BETA;Lu;0;L;;;;;N;;;;03B2; -0393;GREEK CAPITAL LETTER GAMMA;Lu;0;L;;;;;N;;;;03B3; -0394;GREEK CAPITAL LETTER DELTA;Lu;0;L;;;;;N;;;;03B4; -0395;GREEK CAPITAL LETTER EPSILON;Lu;0;L;;;;;N;;;;03B5; -0396;GREEK CAPITAL LETTER ZETA;Lu;0;L;;;;;N;;;;03B6; -0397;GREEK CAPITAL LETTER ETA;Lu;0;L;;;;;N;;;;03B7; -0398;GREEK CAPITAL LETTER THETA;Lu;0;L;;;;;N;;;;03B8; -0399;GREEK CAPITAL LETTER IOTA;Lu;0;L;;;;;N;;;;03B9; -039A;GREEK CAPITAL LETTER KAPPA;Lu;0;L;;;;;N;;;;03BA; -039B;GREEK CAPITAL LETTER LAMDA;Lu;0;L;;;;;N;GREEK CAPITAL LETTER LAMBDA;;;03BB; -039C;GREEK CAPITAL LETTER MU;Lu;0;L;;;;;N;;;;03BC; -039D;GREEK CAPITAL LETTER NU;Lu;0;L;;;;;N;;;;03BD; -039E;GREEK CAPITAL LETTER XI;Lu;0;L;;;;;N;;;;03BE; -039F;GREEK CAPITAL LETTER OMICRON;Lu;0;L;;;;;N;;;;03BF; -03A0;GREEK CAPITAL LETTER PI;Lu;0;L;;;;;N;;;;03C0; -03A1;GREEK CAPITAL LETTER RHO;Lu;0;L;;;;;N;;;;03C1; -03A3;GREEK CAPITAL LETTER SIGMA;Lu;0;L;;;;;N;;;;03C3; -03A4;GREEK CAPITAL LETTER TAU;Lu;0;L;;;;;N;;;;03C4; -03A5;GREEK CAPITAL LETTER UPSILON;Lu;0;L;;;;;N;;;;03C5; -03A6;GREEK CAPITAL LETTER PHI;Lu;0;L;;;;;N;;;;03C6; -03A7;GREEK CAPITAL LETTER CHI;Lu;0;L;;;;;N;;;;03C7; -03A8;GREEK CAPITAL LETTER PSI;Lu;0;L;;;;;N;;;;03C8; -03A9;GREEK CAPITAL LETTER OMEGA;Lu;0;L;;;;;N;;;;03C9; -03AA;GREEK CAPITAL LETTER IOTA WITH DIALYTIKA;Lu;0;L;0399 0308;;;;N;GREEK CAPITAL LETTER IOTA DIAERESIS;;;03CA; -03AB;GREEK CAPITAL LETTER UPSILON WITH DIALYTIKA;Lu;0;L;03A5 0308;;;;N;GREEK CAPITAL LETTER UPSILON DIAERESIS;;;03CB; -03AC;GREEK SMALL LETTER ALPHA WITH TONOS;Ll;0;L;03B1 0301;;;;N;GREEK SMALL LETTER ALPHA TONOS;;0386;;0386 -03AD;GREEK SMALL LETTER EPSILON WITH TONOS;Ll;0;L;03B5 0301;;;;N;GREEK SMALL LETTER EPSILON TONOS;;0388;;0388 -03AE;GREEK SMALL LETTER ETA WITH TONOS;Ll;0;L;03B7 0301;;;;N;GREEK SMALL LETTER ETA TONOS;;0389;;0389 -03AF;GREEK SMALL LETTER IOTA WITH TONOS;Ll;0;L;03B9 0301;;;;N;GREEK SMALL LETTER IOTA TONOS;;038A;;038A -03B0;GREEK SMALL LETTER UPSILON WITH DIALYTIKA AND TONOS;Ll;0;L;03CB 0301;;;;N;GREEK SMALL LETTER UPSILON DIAERESIS TONOS;;;; -03B1;GREEK SMALL LETTER ALPHA;Ll;0;L;;;;;N;;;0391;;0391 -03B2;GREEK SMALL LETTER BETA;Ll;0;L;;;;;N;;;0392;;0392 -03B3;GREEK SMALL LETTER GAMMA;Ll;0;L;;;;;N;;;0393;;0393 -03B4;GREEK SMALL LETTER DELTA;Ll;0;L;;;;;N;;;0394;;0394 -03B5;GREEK SMALL LETTER EPSILON;Ll;0;L;;;;;N;;;0395;;0395 -03B6;GREEK SMALL LETTER ZETA;Ll;0;L;;;;;N;;;0396;;0396 -03B7;GREEK SMALL LETTER ETA;Ll;0;L;;;;;N;;;0397;;0397 -03B8;GREEK SMALL LETTER THETA;Ll;0;L;;;;;N;;;0398;;0398 -03B9;GREEK SMALL LETTER IOTA;Ll;0;L;;;;;N;;;0399;;0399 -03BA;GREEK SMALL LETTER KAPPA;Ll;0;L;;;;;N;;;039A;;039A -03BB;GREEK SMALL LETTER LAMDA;Ll;0;L;;;;;N;GREEK SMALL LETTER LAMBDA;;039B;;039B -03BC;GREEK SMALL LETTER MU;Ll;0;L;;;;;N;;;039C;;039C -03BD;GREEK SMALL LETTER NU;Ll;0;L;;;;;N;;;039D;;039D -03BE;GREEK SMALL LETTER XI;Ll;0;L;;;;;N;;;039E;;039E -03BF;GREEK SMALL LETTER OMICRON;Ll;0;L;;;;;N;;;039F;;039F -03C0;GREEK SMALL LETTER PI;Ll;0;L;;;;;N;;;03A0;;03A0 -03C1;GREEK SMALL LETTER RHO;Ll;0;L;;;;;N;;;03A1;;03A1 -03C2;GREEK SMALL LETTER FINAL SIGMA;Ll;0;L;;;;;N;;;03A3;;03A3 -03C3;GREEK SMALL LETTER SIGMA;Ll;0;L;;;;;N;;;03A3;;03A3 -03C4;GREEK SMALL LETTER TAU;Ll;0;L;;;;;N;;;03A4;;03A4 -03C5;GREEK SMALL LETTER UPSILON;Ll;0;L;;;;;N;;;03A5;;03A5 -03C6;GREEK SMALL LETTER PHI;Ll;0;L;;;;;N;;;03A6;;03A6 -03C7;GREEK SMALL LETTER CHI;Ll;0;L;;;;;N;;;03A7;;03A7 -03C8;GREEK SMALL LETTER PSI;Ll;0;L;;;;;N;;;03A8;;03A8 -03C9;GREEK SMALL LETTER OMEGA;Ll;0;L;;;;;N;;;03A9;;03A9 -03CA;GREEK SMALL LETTER IOTA WITH DIALYTIKA;Ll;0;L;03B9 0308;;;;N;GREEK SMALL LETTER IOTA DIAERESIS;;03AA;;03AA -03CB;GREEK SMALL LETTER UPSILON WITH DIALYTIKA;Ll;0;L;03C5 0308;;;;N;GREEK SMALL LETTER UPSILON DIAERESIS;;03AB;;03AB -03CC;GREEK SMALL LETTER OMICRON WITH TONOS;Ll;0;L;03BF 0301;;;;N;GREEK SMALL LETTER OMICRON TONOS;;038C;;038C -03CD;GREEK SMALL LETTER UPSILON WITH TONOS;Ll;0;L;03C5 0301;;;;N;GREEK SMALL LETTER UPSILON TONOS;;038E;;038E -03CE;GREEK SMALL LETTER OMEGA WITH TONOS;Ll;0;L;03C9 0301;;;;N;GREEK SMALL LETTER OMEGA TONOS;;038F;;038F -03CF;GREEK CAPITAL KAI SYMBOL;Lu;0;L;;;;;N;;;;03D7; -03D0;GREEK BETA SYMBOL;Ll;0;L; 03B2;;;;N;GREEK SMALL LETTER CURLED BETA;;0392;;0392 -03D1;GREEK THETA SYMBOL;Ll;0;L; 03B8;;;;N;GREEK SMALL LETTER SCRIPT THETA;;0398;;0398 -03D2;GREEK UPSILON WITH HOOK SYMBOL;Lu;0;L; 03A5;;;;N;GREEK CAPITAL LETTER UPSILON HOOK;;;; -03D3;GREEK UPSILON WITH ACUTE AND HOOK SYMBOL;Lu;0;L;03D2 0301;;;;N;GREEK CAPITAL LETTER UPSILON HOOK TONOS;;;; -03D4;GREEK UPSILON WITH DIAERESIS AND HOOK SYMBOL;Lu;0;L;03D2 0308;;;;N;GREEK CAPITAL LETTER UPSILON HOOK DIAERESIS;;;; -03D5;GREEK PHI SYMBOL;Ll;0;L; 03C6;;;;N;GREEK SMALL LETTER SCRIPT PHI;;03A6;;03A6 -03D6;GREEK PI SYMBOL;Ll;0;L; 03C0;;;;N;GREEK SMALL LETTER OMEGA PI;;03A0;;03A0 -03D7;GREEK KAI SYMBOL;Ll;0;L;;;;;N;;;03CF;;03CF -03D8;GREEK LETTER ARCHAIC KOPPA;Lu;0;L;;;;;N;;;;03D9; -03D9;GREEK SMALL LETTER ARCHAIC KOPPA;Ll;0;L;;;;;N;;;03D8;;03D8 -03DA;GREEK LETTER STIGMA;Lu;0;L;;;;;N;GREEK CAPITAL LETTER STIGMA;;;03DB; -03DB;GREEK SMALL LETTER STIGMA;Ll;0;L;;;;;N;;;03DA;;03DA -03DC;GREEK LETTER DIGAMMA;Lu;0;L;;;;;N;GREEK CAPITAL LETTER DIGAMMA;;;03DD; -03DD;GREEK SMALL LETTER DIGAMMA;Ll;0;L;;;;;N;;;03DC;;03DC -03DE;GREEK LETTER KOPPA;Lu;0;L;;;;;N;GREEK CAPITAL LETTER KOPPA;;;03DF; -03DF;GREEK SMALL LETTER KOPPA;Ll;0;L;;;;;N;;;03DE;;03DE -03E0;GREEK LETTER SAMPI;Lu;0;L;;;;;N;GREEK CAPITAL LETTER SAMPI;;;03E1; -03E1;GREEK SMALL LETTER SAMPI;Ll;0;L;;;;;N;;;03E0;;03E0 -03E2;COPTIC CAPITAL LETTER SHEI;Lu;0;L;;;;;N;GREEK CAPITAL LETTER SHEI;;;03E3; -03E3;COPTIC SMALL LETTER SHEI;Ll;0;L;;;;;N;GREEK SMALL LETTER SHEI;;03E2;;03E2 -03E4;COPTIC CAPITAL LETTER FEI;Lu;0;L;;;;;N;GREEK CAPITAL LETTER FEI;;;03E5; -03E5;COPTIC SMALL LETTER FEI;Ll;0;L;;;;;N;GREEK SMALL LETTER FEI;;03E4;;03E4 -03E6;COPTIC CAPITAL LETTER KHEI;Lu;0;L;;;;;N;GREEK CAPITAL LETTER KHEI;;;03E7; -03E7;COPTIC SMALL LETTER KHEI;Ll;0;L;;;;;N;GREEK SMALL LETTER KHEI;;03E6;;03E6 -03E8;COPTIC CAPITAL LETTER HORI;Lu;0;L;;;;;N;GREEK CAPITAL LETTER HORI;;;03E9; -03E9;COPTIC SMALL LETTER HORI;Ll;0;L;;;;;N;GREEK SMALL LETTER HORI;;03E8;;03E8 -03EA;COPTIC CAPITAL LETTER GANGIA;Lu;0;L;;;;;N;GREEK CAPITAL LETTER GANGIA;;;03EB; -03EB;COPTIC SMALL LETTER GANGIA;Ll;0;L;;;;;N;GREEK SMALL LETTER GANGIA;;03EA;;03EA -03EC;COPTIC CAPITAL LETTER SHIMA;Lu;0;L;;;;;N;GREEK CAPITAL LETTER SHIMA;;;03ED; -03ED;COPTIC SMALL LETTER SHIMA;Ll;0;L;;;;;N;GREEK SMALL LETTER SHIMA;;03EC;;03EC -03EE;COPTIC CAPITAL LETTER DEI;Lu;0;L;;;;;N;GREEK CAPITAL LETTER DEI;;;03EF; -03EF;COPTIC SMALL LETTER DEI;Ll;0;L;;;;;N;GREEK SMALL LETTER DEI;;03EE;;03EE -03F0;GREEK KAPPA SYMBOL;Ll;0;L; 03BA;;;;N;GREEK SMALL LETTER SCRIPT KAPPA;;039A;;039A -03F1;GREEK RHO SYMBOL;Ll;0;L; 03C1;;;;N;GREEK SMALL LETTER TAILED RHO;;03A1;;03A1 -03F2;GREEK LUNATE SIGMA SYMBOL;Ll;0;L; 03C2;;;;N;GREEK SMALL LETTER LUNATE SIGMA;;03F9;;03F9 -03F3;GREEK LETTER YOT;Ll;0;L;;;;;N;;;;; -03F4;GREEK CAPITAL THETA SYMBOL;Lu;0;L; 0398;;;;N;;;;03B8; -03F5;GREEK LUNATE EPSILON SYMBOL;Ll;0;L; 03B5;;;;N;;;0395;;0395 -03F6;GREEK REVERSED LUNATE EPSILON SYMBOL;Sm;0;ON;;;;;N;;;;; -03F7;GREEK CAPITAL LETTER SHO;Lu;0;L;;;;;N;;;;03F8; -03F8;GREEK SMALL LETTER SHO;Ll;0;L;;;;;N;;;03F7;;03F7 -03F9;GREEK CAPITAL LUNATE SIGMA SYMBOL;Lu;0;L; 03A3;;;;N;;;;03F2; -03FA;GREEK CAPITAL LETTER SAN;Lu;0;L;;;;;N;;;;03FB; -03FB;GREEK SMALL LETTER SAN;Ll;0;L;;;;;N;;;03FA;;03FA -03FC;GREEK RHO WITH STROKE SYMBOL;Ll;0;L;;;;;N;;;;; -03FD;GREEK CAPITAL REVERSED LUNATE SIGMA SYMBOL;Lu;0;L;;;;;N;;;;037B; -03FE;GREEK CAPITAL DOTTED LUNATE SIGMA SYMBOL;Lu;0;L;;;;;N;;;;037C; -03FF;GREEK CAPITAL REVERSED DOTTED LUNATE SIGMA SYMBOL;Lu;0;L;;;;;N;;;;037D; -0400;CYRILLIC CAPITAL LETTER IE WITH GRAVE;Lu;0;L;0415 0300;;;;N;;;;0450; -0401;CYRILLIC CAPITAL LETTER IO;Lu;0;L;0415 0308;;;;N;;;;0451; -0402;CYRILLIC CAPITAL LETTER DJE;Lu;0;L;;;;;N;;;;0452; -0403;CYRILLIC CAPITAL LETTER GJE;Lu;0;L;0413 0301;;;;N;;;;0453; -0404;CYRILLIC CAPITAL LETTER UKRAINIAN IE;Lu;0;L;;;;;N;CYRILLIC CAPITAL LETTER E;;;0454; -0405;CYRILLIC CAPITAL LETTER DZE;Lu;0;L;;;;;N;;;;0455; -0406;CYRILLIC CAPITAL LETTER BYELORUSSIAN-UKRAINIAN I;Lu;0;L;;;;;N;CYRILLIC CAPITAL LETTER I;;;0456; -0407;CYRILLIC CAPITAL LETTER YI;Lu;0;L;0406 0308;;;;N;;;;0457; -0408;CYRILLIC CAPITAL LETTER JE;Lu;0;L;;;;;N;;;;0458; -0409;CYRILLIC CAPITAL LETTER LJE;Lu;0;L;;;;;N;;;;0459; -040A;CYRILLIC CAPITAL LETTER NJE;Lu;0;L;;;;;N;;;;045A; -040B;CYRILLIC CAPITAL LETTER TSHE;Lu;0;L;;;;;N;;;;045B; -040C;CYRILLIC CAPITAL LETTER KJE;Lu;0;L;041A 0301;;;;N;;;;045C; -040D;CYRILLIC CAPITAL LETTER I WITH GRAVE;Lu;0;L;0418 0300;;;;N;;;;045D; -040E;CYRILLIC CAPITAL LETTER SHORT U;Lu;0;L;0423 0306;;;;N;;;;045E; -040F;CYRILLIC CAPITAL LETTER DZHE;Lu;0;L;;;;;N;;;;045F; -0410;CYRILLIC CAPITAL LETTER A;Lu;0;L;;;;;N;;;;0430; -0411;CYRILLIC CAPITAL LETTER BE;Lu;0;L;;;;;N;;;;0431; -0412;CYRILLIC CAPITAL LETTER VE;Lu;0;L;;;;;N;;;;0432; -0413;CYRILLIC CAPITAL LETTER GHE;Lu;0;L;;;;;N;CYRILLIC CAPITAL LETTER GE;;;0433; -0414;CYRILLIC CAPITAL LETTER DE;Lu;0;L;;;;;N;;;;0434; -0415;CYRILLIC CAPITAL LETTER IE;Lu;0;L;;;;;N;;;;0435; -0416;CYRILLIC CAPITAL LETTER ZHE;Lu;0;L;;;;;N;;;;0436; -0417;CYRILLIC CAPITAL LETTER ZE;Lu;0;L;;;;;N;;;;0437; -0418;CYRILLIC CAPITAL LETTER I;Lu;0;L;;;;;N;CYRILLIC CAPITAL LETTER II;;;0438; -0419;CYRILLIC CAPITAL LETTER SHORT I;Lu;0;L;0418 0306;;;;N;CYRILLIC CAPITAL LETTER SHORT II;;;0439; -041A;CYRILLIC CAPITAL LETTER KA;Lu;0;L;;;;;N;;;;043A; -041B;CYRILLIC CAPITAL LETTER EL;Lu;0;L;;;;;N;;;;043B; -041C;CYRILLIC CAPITAL LETTER EM;Lu;0;L;;;;;N;;;;043C; -041D;CYRILLIC CAPITAL LETTER EN;Lu;0;L;;;;;N;;;;043D; -041E;CYRILLIC CAPITAL LETTER O;Lu;0;L;;;;;N;;;;043E; -041F;CYRILLIC CAPITAL LETTER PE;Lu;0;L;;;;;N;;;;043F; -0420;CYRILLIC CAPITAL LETTER ER;Lu;0;L;;;;;N;;;;0440; -0421;CYRILLIC CAPITAL LETTER ES;Lu;0;L;;;;;N;;;;0441; -0422;CYRILLIC CAPITAL LETTER TE;Lu;0;L;;;;;N;;;;0442; -0423;CYRILLIC CAPITAL LETTER U;Lu;0;L;;;;;N;;;;0443; -0424;CYRILLIC CAPITAL LETTER EF;Lu;0;L;;;;;N;;;;0444; -0425;CYRILLIC CAPITAL LETTER HA;Lu;0;L;;;;;N;CYRILLIC CAPITAL LETTER KHA;;;0445; -0426;CYRILLIC CAPITAL LETTER TSE;Lu;0;L;;;;;N;;;;0446; -0427;CYRILLIC CAPITAL LETTER CHE;Lu;0;L;;;;;N;;;;0447; -0428;CYRILLIC CAPITAL LETTER SHA;Lu;0;L;;;;;N;;;;0448; -0429;CYRILLIC CAPITAL LETTER SHCHA;Lu;0;L;;;;;N;;;;0449; -042A;CYRILLIC CAPITAL LETTER HARD SIGN;Lu;0;L;;;;;N;;;;044A; -042B;CYRILLIC CAPITAL LETTER YERU;Lu;0;L;;;;;N;CYRILLIC CAPITAL LETTER YERI;;;044B; -042C;CYRILLIC CAPITAL LETTER SOFT SIGN;Lu;0;L;;;;;N;;;;044C; -042D;CYRILLIC CAPITAL LETTER E;Lu;0;L;;;;;N;CYRILLIC CAPITAL LETTER REVERSED E;;;044D; -042E;CYRILLIC CAPITAL LETTER YU;Lu;0;L;;;;;N;CYRILLIC CAPITAL LETTER IU;;;044E; -042F;CYRILLIC CAPITAL LETTER YA;Lu;0;L;;;;;N;CYRILLIC CAPITAL LETTER IA;;;044F; -0430;CYRILLIC SMALL LETTER A;Ll;0;L;;;;;N;;;0410;;0410 -0431;CYRILLIC SMALL LETTER BE;Ll;0;L;;;;;N;;;0411;;0411 -0432;CYRILLIC SMALL LETTER VE;Ll;0;L;;;;;N;;;0412;;0412 -0433;CYRILLIC SMALL LETTER GHE;Ll;0;L;;;;;N;CYRILLIC SMALL LETTER GE;;0413;;0413 -0434;CYRILLIC SMALL LETTER DE;Ll;0;L;;;;;N;;;0414;;0414 -0435;CYRILLIC SMALL LETTER IE;Ll;0;L;;;;;N;;;0415;;0415 -0436;CYRILLIC SMALL LETTER ZHE;Ll;0;L;;;;;N;;;0416;;0416 -0437;CYRILLIC SMALL LETTER ZE;Ll;0;L;;;;;N;;;0417;;0417 -0438;CYRILLIC SMALL LETTER I;Ll;0;L;;;;;N;CYRILLIC SMALL LETTER II;;0418;;0418 -0439;CYRILLIC SMALL LETTER SHORT I;Ll;0;L;0438 0306;;;;N;CYRILLIC SMALL LETTER SHORT II;;0419;;0419 -043A;CYRILLIC SMALL LETTER KA;Ll;0;L;;;;;N;;;041A;;041A -043B;CYRILLIC SMALL LETTER EL;Ll;0;L;;;;;N;;;041B;;041B -043C;CYRILLIC SMALL LETTER EM;Ll;0;L;;;;;N;;;041C;;041C -043D;CYRILLIC SMALL LETTER EN;Ll;0;L;;;;;N;;;041D;;041D -043E;CYRILLIC SMALL LETTER O;Ll;0;L;;;;;N;;;041E;;041E -043F;CYRILLIC SMALL LETTER PE;Ll;0;L;;;;;N;;;041F;;041F -0440;CYRILLIC SMALL LETTER ER;Ll;0;L;;;;;N;;;0420;;0420 -0441;CYRILLIC SMALL LETTER ES;Ll;0;L;;;;;N;;;0421;;0421 -0442;CYRILLIC SMALL LETTER TE;Ll;0;L;;;;;N;;;0422;;0422 -0443;CYRILLIC SMALL LETTER U;Ll;0;L;;;;;N;;;0423;;0423 -0444;CYRILLIC SMALL LETTER EF;Ll;0;L;;;;;N;;;0424;;0424 -0445;CYRILLIC SMALL LETTER HA;Ll;0;L;;;;;N;CYRILLIC SMALL LETTER KHA;;0425;;0425 -0446;CYRILLIC SMALL LETTER TSE;Ll;0;L;;;;;N;;;0426;;0426 -0447;CYRILLIC SMALL LETTER CHE;Ll;0;L;;;;;N;;;0427;;0427 -0448;CYRILLIC SMALL LETTER SHA;Ll;0;L;;;;;N;;;0428;;0428 -0449;CYRILLIC SMALL LETTER SHCHA;Ll;0;L;;;;;N;;;0429;;0429 -044A;CYRILLIC SMALL LETTER HARD SIGN;Ll;0;L;;;;;N;;;042A;;042A -044B;CYRILLIC SMALL LETTER YERU;Ll;0;L;;;;;N;CYRILLIC SMALL LETTER YERI;;042B;;042B -044C;CYRILLIC SMALL LETTER SOFT SIGN;Ll;0;L;;;;;N;;;042C;;042C -044D;CYRILLIC SMALL LETTER E;Ll;0;L;;;;;N;CYRILLIC SMALL LETTER REVERSED E;;042D;;042D -044E;CYRILLIC SMALL LETTER YU;Ll;0;L;;;;;N;CYRILLIC SMALL LETTER IU;;042E;;042E -044F;CYRILLIC SMALL LETTER YA;Ll;0;L;;;;;N;CYRILLIC SMALL LETTER IA;;042F;;042F -0450;CYRILLIC SMALL LETTER IE WITH GRAVE;Ll;0;L;0435 0300;;;;N;;;0400;;0400 -0451;CYRILLIC SMALL LETTER IO;Ll;0;L;0435 0308;;;;N;;;0401;;0401 -0452;CYRILLIC SMALL LETTER DJE;Ll;0;L;;;;;N;;;0402;;0402 -0453;CYRILLIC SMALL LETTER GJE;Ll;0;L;0433 0301;;;;N;;;0403;;0403 -0454;CYRILLIC SMALL LETTER UKRAINIAN IE;Ll;0;L;;;;;N;CYRILLIC SMALL LETTER E;;0404;;0404 -0455;CYRILLIC SMALL LETTER DZE;Ll;0;L;;;;;N;;;0405;;0405 -0456;CYRILLIC SMALL LETTER BYELORUSSIAN-UKRAINIAN I;Ll;0;L;;;;;N;CYRILLIC SMALL LETTER I;;0406;;0406 -0457;CYRILLIC SMALL LETTER YI;Ll;0;L;0456 0308;;;;N;;;0407;;0407 -0458;CYRILLIC SMALL LETTER JE;Ll;0;L;;;;;N;;;0408;;0408 -0459;CYRILLIC SMALL LETTER LJE;Ll;0;L;;;;;N;;;0409;;0409 -045A;CYRILLIC SMALL LETTER NJE;Ll;0;L;;;;;N;;;040A;;040A -045B;CYRILLIC SMALL LETTER TSHE;Ll;0;L;;;;;N;;;040B;;040B -045C;CYRILLIC SMALL LETTER KJE;Ll;0;L;043A 0301;;;;N;;;040C;;040C -045D;CYRILLIC SMALL LETTER I WITH GRAVE;Ll;0;L;0438 0300;;;;N;;;040D;;040D -045E;CYRILLIC SMALL LETTER SHORT U;Ll;0;L;0443 0306;;;;N;;;040E;;040E -045F;CYRILLIC SMALL LETTER DZHE;Ll;0;L;;;;;N;;;040F;;040F -0460;CYRILLIC CAPITAL LETTER OMEGA;Lu;0;L;;;;;N;;;;0461; -0461;CYRILLIC SMALL LETTER OMEGA;Ll;0;L;;;;;N;;;0460;;0460 -0462;CYRILLIC CAPITAL LETTER YAT;Lu;0;L;;;;;N;;;;0463; -0463;CYRILLIC SMALL LETTER YAT;Ll;0;L;;;;;N;;;0462;;0462 -0464;CYRILLIC CAPITAL LETTER IOTIFIED E;Lu;0;L;;;;;N;;;;0465; -0465;CYRILLIC SMALL LETTER IOTIFIED E;Ll;0;L;;;;;N;;;0464;;0464 -0466;CYRILLIC CAPITAL LETTER LITTLE YUS;Lu;0;L;;;;;N;;;;0467; -0467;CYRILLIC SMALL LETTER LITTLE YUS;Ll;0;L;;;;;N;;;0466;;0466 -0468;CYRILLIC CAPITAL LETTER IOTIFIED LITTLE YUS;Lu;0;L;;;;;N;;;;0469; -0469;CYRILLIC SMALL LETTER IOTIFIED LITTLE YUS;Ll;0;L;;;;;N;;;0468;;0468 -046A;CYRILLIC CAPITAL LETTER BIG YUS;Lu;0;L;;;;;N;;;;046B; -046B;CYRILLIC SMALL LETTER BIG YUS;Ll;0;L;;;;;N;;;046A;;046A -046C;CYRILLIC CAPITAL LETTER IOTIFIED BIG YUS;Lu;0;L;;;;;N;;;;046D; -046D;CYRILLIC SMALL LETTER IOTIFIED BIG YUS;Ll;0;L;;;;;N;;;046C;;046C -046E;CYRILLIC CAPITAL LETTER KSI;Lu;0;L;;;;;N;;;;046F; -046F;CYRILLIC SMALL LETTER KSI;Ll;0;L;;;;;N;;;046E;;046E -0470;CYRILLIC CAPITAL LETTER PSI;Lu;0;L;;;;;N;;;;0471; -0471;CYRILLIC SMALL LETTER PSI;Ll;0;L;;;;;N;;;0470;;0470 -0472;CYRILLIC CAPITAL LETTER FITA;Lu;0;L;;;;;N;;;;0473; -0473;CYRILLIC SMALL LETTER FITA;Ll;0;L;;;;;N;;;0472;;0472 -0474;CYRILLIC CAPITAL LETTER IZHITSA;Lu;0;L;;;;;N;;;;0475; -0475;CYRILLIC SMALL LETTER IZHITSA;Ll;0;L;;;;;N;;;0474;;0474 -0476;CYRILLIC CAPITAL LETTER IZHITSA WITH DOUBLE GRAVE ACCENT;Lu;0;L;0474 030F;;;;N;CYRILLIC CAPITAL LETTER IZHITSA DOUBLE GRAVE;;;0477; -0477;CYRILLIC SMALL LETTER IZHITSA WITH DOUBLE GRAVE ACCENT;Ll;0;L;0475 030F;;;;N;CYRILLIC SMALL LETTER IZHITSA DOUBLE GRAVE;;0476;;0476 -0478;CYRILLIC CAPITAL LETTER UK;Lu;0;L;;;;;N;CYRILLIC CAPITAL LETTER UK DIGRAPH;;;0479; -0479;CYRILLIC SMALL LETTER UK;Ll;0;L;;;;;N;CYRILLIC SMALL LETTER UK DIGRAPH;;0478;;0478 -047A;CYRILLIC CAPITAL LETTER ROUND OMEGA;Lu;0;L;;;;;N;;;;047B; -047B;CYRILLIC SMALL LETTER ROUND OMEGA;Ll;0;L;;;;;N;;;047A;;047A -047C;CYRILLIC CAPITAL LETTER OMEGA WITH TITLO;Lu;0;L;;;;;N;CYRILLIC CAPITAL LETTER OMEGA TITLO;;;047D; -047D;CYRILLIC SMALL LETTER OMEGA WITH TITLO;Ll;0;L;;;;;N;CYRILLIC SMALL LETTER OMEGA TITLO;;047C;;047C -047E;CYRILLIC CAPITAL LETTER OT;Lu;0;L;;;;;N;;;;047F; -047F;CYRILLIC SMALL LETTER OT;Ll;0;L;;;;;N;;;047E;;047E -0480;CYRILLIC CAPITAL LETTER KOPPA;Lu;0;L;;;;;N;;;;0481; -0481;CYRILLIC SMALL LETTER KOPPA;Ll;0;L;;;;;N;;;0480;;0480 -0482;CYRILLIC THOUSANDS SIGN;So;0;L;;;;;N;;;;; -0483;COMBINING CYRILLIC TITLO;Mn;230;NSM;;;;;N;CYRILLIC NON-SPACING TITLO;;;; -0484;COMBINING CYRILLIC PALATALIZATION;Mn;230;NSM;;;;;N;CYRILLIC NON-SPACING PALATALIZATION;;;; -0485;COMBINING CYRILLIC DASIA PNEUMATA;Mn;230;NSM;;;;;N;CYRILLIC NON-SPACING DASIA PNEUMATA;;;; -0486;COMBINING CYRILLIC PSILI PNEUMATA;Mn;230;NSM;;;;;N;CYRILLIC NON-SPACING PSILI PNEUMATA;;;; -0487;COMBINING CYRILLIC POKRYTIE;Mn;230;NSM;;;;;N;;;;; -0488;COMBINING CYRILLIC HUNDRED THOUSANDS SIGN;Me;0;NSM;;;;;N;;;;; -0489;COMBINING CYRILLIC MILLIONS SIGN;Me;0;NSM;;;;;N;;;;; -048A;CYRILLIC CAPITAL LETTER SHORT I WITH TAIL;Lu;0;L;;;;;N;;;;048B; -048B;CYRILLIC SMALL LETTER SHORT I WITH TAIL;Ll;0;L;;;;;N;;;048A;;048A -048C;CYRILLIC CAPITAL LETTER SEMISOFT SIGN;Lu;0;L;;;;;N;;;;048D; -048D;CYRILLIC SMALL LETTER SEMISOFT SIGN;Ll;0;L;;;;;N;;;048C;;048C -048E;CYRILLIC CAPITAL LETTER ER WITH TICK;Lu;0;L;;;;;N;;;;048F; -048F;CYRILLIC SMALL LETTER ER WITH TICK;Ll;0;L;;;;;N;;;048E;;048E -0490;CYRILLIC CAPITAL LETTER GHE WITH UPTURN;Lu;0;L;;;;;N;CYRILLIC CAPITAL LETTER GE WITH UPTURN;;;0491; -0491;CYRILLIC SMALL LETTER GHE WITH UPTURN;Ll;0;L;;;;;N;CYRILLIC SMALL LETTER GE WITH UPTURN;;0490;;0490 -0492;CYRILLIC CAPITAL LETTER GHE WITH STROKE;Lu;0;L;;;;;N;CYRILLIC CAPITAL LETTER GE BAR;;;0493; -0493;CYRILLIC SMALL LETTER GHE WITH STROKE;Ll;0;L;;;;;N;CYRILLIC SMALL LETTER GE BAR;;0492;;0492 -0494;CYRILLIC CAPITAL LETTER GHE WITH MIDDLE HOOK;Lu;0;L;;;;;N;CYRILLIC CAPITAL LETTER GE HOOK;;;0495; -0495;CYRILLIC SMALL LETTER GHE WITH MIDDLE HOOK;Ll;0;L;;;;;N;CYRILLIC SMALL LETTER GE HOOK;;0494;;0494 -0496;CYRILLIC CAPITAL LETTER ZHE WITH DESCENDER;Lu;0;L;;;;;N;CYRILLIC CAPITAL LETTER ZHE WITH RIGHT DESCENDER;;;0497; -0497;CYRILLIC SMALL LETTER ZHE WITH DESCENDER;Ll;0;L;;;;;N;CYRILLIC SMALL LETTER ZHE WITH RIGHT DESCENDER;;0496;;0496 -0498;CYRILLIC CAPITAL LETTER ZE WITH DESCENDER;Lu;0;L;;;;;N;CYRILLIC CAPITAL LETTER ZE CEDILLA;;;0499; -0499;CYRILLIC SMALL LETTER ZE WITH DESCENDER;Ll;0;L;;;;;N;CYRILLIC SMALL LETTER ZE CEDILLA;;0498;;0498 -049A;CYRILLIC CAPITAL LETTER KA WITH DESCENDER;Lu;0;L;;;;;N;CYRILLIC CAPITAL LETTER KA WITH RIGHT DESCENDER;;;049B; -049B;CYRILLIC SMALL LETTER KA WITH DESCENDER;Ll;0;L;;;;;N;CYRILLIC SMALL LETTER KA WITH RIGHT DESCENDER;;049A;;049A -049C;CYRILLIC CAPITAL LETTER KA WITH VERTICAL STROKE;Lu;0;L;;;;;N;CYRILLIC CAPITAL LETTER KA VERTICAL BAR;;;049D; -049D;CYRILLIC SMALL LETTER KA WITH VERTICAL STROKE;Ll;0;L;;;;;N;CYRILLIC SMALL LETTER KA VERTICAL BAR;;049C;;049C -049E;CYRILLIC CAPITAL LETTER KA WITH STROKE;Lu;0;L;;;;;N;CYRILLIC CAPITAL LETTER KA BAR;;;049F; -049F;CYRILLIC SMALL LETTER KA WITH STROKE;Ll;0;L;;;;;N;CYRILLIC SMALL LETTER KA BAR;;049E;;049E -04A0;CYRILLIC CAPITAL LETTER BASHKIR KA;Lu;0;L;;;;;N;CYRILLIC CAPITAL LETTER REVERSED GE KA;;;04A1; -04A1;CYRILLIC SMALL LETTER BASHKIR KA;Ll;0;L;;;;;N;CYRILLIC SMALL LETTER REVERSED GE KA;;04A0;;04A0 -04A2;CYRILLIC CAPITAL LETTER EN WITH DESCENDER;Lu;0;L;;;;;N;CYRILLIC CAPITAL LETTER EN WITH RIGHT DESCENDER;;;04A3; -04A3;CYRILLIC SMALL LETTER EN WITH DESCENDER;Ll;0;L;;;;;N;CYRILLIC SMALL LETTER EN WITH RIGHT DESCENDER;;04A2;;04A2 -04A4;CYRILLIC CAPITAL LIGATURE EN GHE;Lu;0;L;;;;;N;CYRILLIC CAPITAL LETTER EN GE;;;04A5; -04A5;CYRILLIC SMALL LIGATURE EN GHE;Ll;0;L;;;;;N;CYRILLIC SMALL LETTER EN GE;;04A4;;04A4 -04A6;CYRILLIC CAPITAL LETTER PE WITH MIDDLE HOOK;Lu;0;L;;;;;N;CYRILLIC CAPITAL LETTER PE HOOK;;;04A7; -04A7;CYRILLIC SMALL LETTER PE WITH MIDDLE HOOK;Ll;0;L;;;;;N;CYRILLIC SMALL LETTER PE HOOK;;04A6;;04A6 -04A8;CYRILLIC CAPITAL LETTER ABKHASIAN HA;Lu;0;L;;;;;N;CYRILLIC CAPITAL LETTER O HOOK;;;04A9; -04A9;CYRILLIC SMALL LETTER ABKHASIAN HA;Ll;0;L;;;;;N;CYRILLIC SMALL LETTER O HOOK;;04A8;;04A8 -04AA;CYRILLIC CAPITAL LETTER ES WITH DESCENDER;Lu;0;L;;;;;N;CYRILLIC CAPITAL LETTER ES CEDILLA;;;04AB; -04AB;CYRILLIC SMALL LETTER ES WITH DESCENDER;Ll;0;L;;;;;N;CYRILLIC SMALL LETTER ES CEDILLA;;04AA;;04AA -04AC;CYRILLIC CAPITAL LETTER TE WITH DESCENDER;Lu;0;L;;;;;N;CYRILLIC CAPITAL LETTER TE WITH RIGHT DESCENDER;;;04AD; -04AD;CYRILLIC SMALL LETTER TE WITH DESCENDER;Ll;0;L;;;;;N;CYRILLIC SMALL LETTER TE WITH RIGHT DESCENDER;;04AC;;04AC -04AE;CYRILLIC CAPITAL LETTER STRAIGHT U;Lu;0;L;;;;;N;;;;04AF; -04AF;CYRILLIC SMALL LETTER STRAIGHT U;Ll;0;L;;;;;N;;;04AE;;04AE -04B0;CYRILLIC CAPITAL LETTER STRAIGHT U WITH STROKE;Lu;0;L;;;;;N;CYRILLIC CAPITAL LETTER STRAIGHT U BAR;;;04B1; -04B1;CYRILLIC SMALL LETTER STRAIGHT U WITH STROKE;Ll;0;L;;;;;N;CYRILLIC SMALL LETTER STRAIGHT U BAR;;04B0;;04B0 -04B2;CYRILLIC CAPITAL LETTER HA WITH DESCENDER;Lu;0;L;;;;;N;CYRILLIC CAPITAL LETTER KHA WITH RIGHT DESCENDER;;;04B3; -04B3;CYRILLIC SMALL LETTER HA WITH DESCENDER;Ll;0;L;;;;;N;CYRILLIC SMALL LETTER KHA WITH RIGHT DESCENDER;;04B2;;04B2 -04B4;CYRILLIC CAPITAL LIGATURE TE TSE;Lu;0;L;;;;;N;CYRILLIC CAPITAL LETTER TE TSE;;;04B5; -04B5;CYRILLIC SMALL LIGATURE TE TSE;Ll;0;L;;;;;N;CYRILLIC SMALL LETTER TE TSE;;04B4;;04B4 -04B6;CYRILLIC CAPITAL LETTER CHE WITH DESCENDER;Lu;0;L;;;;;N;CYRILLIC CAPITAL LETTER CHE WITH RIGHT DESCENDER;;;04B7; -04B7;CYRILLIC SMALL LETTER CHE WITH DESCENDER;Ll;0;L;;;;;N;CYRILLIC SMALL LETTER CHE WITH RIGHT DESCENDER;;04B6;;04B6 -04B8;CYRILLIC CAPITAL LETTER CHE WITH VERTICAL STROKE;Lu;0;L;;;;;N;CYRILLIC CAPITAL LETTER CHE VERTICAL BAR;;;04B9; -04B9;CYRILLIC SMALL LETTER CHE WITH VERTICAL STROKE;Ll;0;L;;;;;N;CYRILLIC SMALL LETTER CHE VERTICAL BAR;;04B8;;04B8 -04BA;CYRILLIC CAPITAL LETTER SHHA;Lu;0;L;;;;;N;CYRILLIC CAPITAL LETTER H;;;04BB; -04BB;CYRILLIC SMALL LETTER SHHA;Ll;0;L;;;;;N;CYRILLIC SMALL LETTER H;;04BA;;04BA -04BC;CYRILLIC CAPITAL LETTER ABKHASIAN CHE;Lu;0;L;;;;;N;CYRILLIC CAPITAL LETTER IE HOOK;;;04BD; -04BD;CYRILLIC SMALL LETTER ABKHASIAN CHE;Ll;0;L;;;;;N;CYRILLIC SMALL LETTER IE HOOK;;04BC;;04BC -04BE;CYRILLIC CAPITAL LETTER ABKHASIAN CHE WITH DESCENDER;Lu;0;L;;;;;N;CYRILLIC CAPITAL LETTER IE HOOK OGONEK;;;04BF; -04BF;CYRILLIC SMALL LETTER ABKHASIAN CHE WITH DESCENDER;Ll;0;L;;;;;N;CYRILLIC SMALL LETTER IE HOOK OGONEK;;04BE;;04BE -04C0;CYRILLIC LETTER PALOCHKA;Lu;0;L;;;;;N;CYRILLIC LETTER I;;;04CF; -04C1;CYRILLIC CAPITAL LETTER ZHE WITH BREVE;Lu;0;L;0416 0306;;;;N;CYRILLIC CAPITAL LETTER SHORT ZHE;;;04C2; -04C2;CYRILLIC SMALL LETTER ZHE WITH BREVE;Ll;0;L;0436 0306;;;;N;CYRILLIC SMALL LETTER SHORT ZHE;;04C1;;04C1 -04C3;CYRILLIC CAPITAL LETTER KA WITH HOOK;Lu;0;L;;;;;N;CYRILLIC CAPITAL LETTER KA HOOK;;;04C4; -04C4;CYRILLIC SMALL LETTER KA WITH HOOK;Ll;0;L;;;;;N;CYRILLIC SMALL LETTER KA HOOK;;04C3;;04C3 -04C5;CYRILLIC CAPITAL LETTER EL WITH TAIL;Lu;0;L;;;;;N;;;;04C6; -04C6;CYRILLIC SMALL LETTER EL WITH TAIL;Ll;0;L;;;;;N;;;04C5;;04C5 -04C7;CYRILLIC CAPITAL LETTER EN WITH HOOK;Lu;0;L;;;;;N;CYRILLIC CAPITAL LETTER EN HOOK;;;04C8; -04C8;CYRILLIC SMALL LETTER EN WITH HOOK;Ll;0;L;;;;;N;CYRILLIC SMALL LETTER EN HOOK;;04C7;;04C7 -04C9;CYRILLIC CAPITAL LETTER EN WITH TAIL;Lu;0;L;;;;;N;;;;04CA; -04CA;CYRILLIC SMALL LETTER EN WITH TAIL;Ll;0;L;;;;;N;;;04C9;;04C9 -04CB;CYRILLIC CAPITAL LETTER KHAKASSIAN CHE;Lu;0;L;;;;;N;CYRILLIC CAPITAL LETTER CHE WITH LEFT DESCENDER;;;04CC; -04CC;CYRILLIC SMALL LETTER KHAKASSIAN CHE;Ll;0;L;;;;;N;CYRILLIC SMALL LETTER CHE WITH LEFT DESCENDER;;04CB;;04CB -04CD;CYRILLIC CAPITAL LETTER EM WITH TAIL;Lu;0;L;;;;;N;;;;04CE; -04CE;CYRILLIC SMALL LETTER EM WITH TAIL;Ll;0;L;;;;;N;;;04CD;;04CD -04CF;CYRILLIC SMALL LETTER PALOCHKA;Ll;0;L;;;;;N;;;04C0;;04C0 -04D0;CYRILLIC CAPITAL LETTER A WITH BREVE;Lu;0;L;0410 0306;;;;N;;;;04D1; -04D1;CYRILLIC SMALL LETTER A WITH BREVE;Ll;0;L;0430 0306;;;;N;;;04D0;;04D0 -04D2;CYRILLIC CAPITAL LETTER A WITH DIAERESIS;Lu;0;L;0410 0308;;;;N;;;;04D3; -04D3;CYRILLIC SMALL LETTER A WITH DIAERESIS;Ll;0;L;0430 0308;;;;N;;;04D2;;04D2 -04D4;CYRILLIC CAPITAL LIGATURE A IE;Lu;0;L;;;;;N;;;;04D5; -04D5;CYRILLIC SMALL LIGATURE A IE;Ll;0;L;;;;;N;;;04D4;;04D4 -04D6;CYRILLIC CAPITAL LETTER IE WITH BREVE;Lu;0;L;0415 0306;;;;N;;;;04D7; -04D7;CYRILLIC SMALL LETTER IE WITH BREVE;Ll;0;L;0435 0306;;;;N;;;04D6;;04D6 -04D8;CYRILLIC CAPITAL LETTER SCHWA;Lu;0;L;;;;;N;;;;04D9; -04D9;CYRILLIC SMALL LETTER SCHWA;Ll;0;L;;;;;N;;;04D8;;04D8 -04DA;CYRILLIC CAPITAL LETTER SCHWA WITH DIAERESIS;Lu;0;L;04D8 0308;;;;N;;;;04DB; -04DB;CYRILLIC SMALL LETTER SCHWA WITH DIAERESIS;Ll;0;L;04D9 0308;;;;N;;;04DA;;04DA -04DC;CYRILLIC CAPITAL LETTER ZHE WITH DIAERESIS;Lu;0;L;0416 0308;;;;N;;;;04DD; -04DD;CYRILLIC SMALL LETTER ZHE WITH DIAERESIS;Ll;0;L;0436 0308;;;;N;;;04DC;;04DC -04DE;CYRILLIC CAPITAL LETTER ZE WITH DIAERESIS;Lu;0;L;0417 0308;;;;N;;;;04DF; -04DF;CYRILLIC SMALL LETTER ZE WITH DIAERESIS;Ll;0;L;0437 0308;;;;N;;;04DE;;04DE -04E0;CYRILLIC CAPITAL LETTER ABKHASIAN DZE;Lu;0;L;;;;;N;;;;04E1; -04E1;CYRILLIC SMALL LETTER ABKHASIAN DZE;Ll;0;L;;;;;N;;;04E0;;04E0 -04E2;CYRILLIC CAPITAL LETTER I WITH MACRON;Lu;0;L;0418 0304;;;;N;;;;04E3; -04E3;CYRILLIC SMALL LETTER I WITH MACRON;Ll;0;L;0438 0304;;;;N;;;04E2;;04E2 -04E4;CYRILLIC CAPITAL LETTER I WITH DIAERESIS;Lu;0;L;0418 0308;;;;N;;;;04E5; -04E5;CYRILLIC SMALL LETTER I WITH DIAERESIS;Ll;0;L;0438 0308;;;;N;;;04E4;;04E4 -04E6;CYRILLIC CAPITAL LETTER O WITH DIAERESIS;Lu;0;L;041E 0308;;;;N;;;;04E7; -04E7;CYRILLIC SMALL LETTER O WITH DIAERESIS;Ll;0;L;043E 0308;;;;N;;;04E6;;04E6 -04E8;CYRILLIC CAPITAL LETTER BARRED O;Lu;0;L;;;;;N;;;;04E9; -04E9;CYRILLIC SMALL LETTER BARRED O;Ll;0;L;;;;;N;;;04E8;;04E8 -04EA;CYRILLIC CAPITAL LETTER BARRED O WITH DIAERESIS;Lu;0;L;04E8 0308;;;;N;;;;04EB; -04EB;CYRILLIC SMALL LETTER BARRED O WITH DIAERESIS;Ll;0;L;04E9 0308;;;;N;;;04EA;;04EA -04EC;CYRILLIC CAPITAL LETTER E WITH DIAERESIS;Lu;0;L;042D 0308;;;;N;;;;04ED; -04ED;CYRILLIC SMALL LETTER E WITH DIAERESIS;Ll;0;L;044D 0308;;;;N;;;04EC;;04EC -04EE;CYRILLIC CAPITAL LETTER U WITH MACRON;Lu;0;L;0423 0304;;;;N;;;;04EF; -04EF;CYRILLIC SMALL LETTER U WITH MACRON;Ll;0;L;0443 0304;;;;N;;;04EE;;04EE -04F0;CYRILLIC CAPITAL LETTER U WITH DIAERESIS;Lu;0;L;0423 0308;;;;N;;;;04F1; -04F1;CYRILLIC SMALL LETTER U WITH DIAERESIS;Ll;0;L;0443 0308;;;;N;;;04F0;;04F0 -04F2;CYRILLIC CAPITAL LETTER U WITH DOUBLE ACUTE;Lu;0;L;0423 030B;;;;N;;;;04F3; -04F3;CYRILLIC SMALL LETTER U WITH DOUBLE ACUTE;Ll;0;L;0443 030B;;;;N;;;04F2;;04F2 -04F4;CYRILLIC CAPITAL LETTER CHE WITH DIAERESIS;Lu;0;L;0427 0308;;;;N;;;;04F5; -04F5;CYRILLIC SMALL LETTER CHE WITH DIAERESIS;Ll;0;L;0447 0308;;;;N;;;04F4;;04F4 -04F6;CYRILLIC CAPITAL LETTER GHE WITH DESCENDER;Lu;0;L;;;;;N;;;;04F7; -04F7;CYRILLIC SMALL LETTER GHE WITH DESCENDER;Ll;0;L;;;;;N;;;04F6;;04F6 -04F8;CYRILLIC CAPITAL LETTER YERU WITH DIAERESIS;Lu;0;L;042B 0308;;;;N;;;;04F9; -04F9;CYRILLIC SMALL LETTER YERU WITH DIAERESIS;Ll;0;L;044B 0308;;;;N;;;04F8;;04F8 -04FA;CYRILLIC CAPITAL LETTER GHE WITH STROKE AND HOOK;Lu;0;L;;;;;N;;;;04FB; -04FB;CYRILLIC SMALL LETTER GHE WITH STROKE AND HOOK;Ll;0;L;;;;;N;;;04FA;;04FA -04FC;CYRILLIC CAPITAL LETTER HA WITH HOOK;Lu;0;L;;;;;N;;;;04FD; -04FD;CYRILLIC SMALL LETTER HA WITH HOOK;Ll;0;L;;;;;N;;;04FC;;04FC -04FE;CYRILLIC CAPITAL LETTER HA WITH STROKE;Lu;0;L;;;;;N;;;;04FF; -04FF;CYRILLIC SMALL LETTER HA WITH STROKE;Ll;0;L;;;;;N;;;04FE;;04FE -0500;CYRILLIC CAPITAL LETTER KOMI DE;Lu;0;L;;;;;N;;;;0501; -0501;CYRILLIC SMALL LETTER KOMI DE;Ll;0;L;;;;;N;;;0500;;0500 -0502;CYRILLIC CAPITAL LETTER KOMI DJE;Lu;0;L;;;;;N;;;;0503; -0503;CYRILLIC SMALL LETTER KOMI DJE;Ll;0;L;;;;;N;;;0502;;0502 -0504;CYRILLIC CAPITAL LETTER KOMI ZJE;Lu;0;L;;;;;N;;;;0505; -0505;CYRILLIC SMALL LETTER KOMI ZJE;Ll;0;L;;;;;N;;;0504;;0504 -0506;CYRILLIC CAPITAL LETTER KOMI DZJE;Lu;0;L;;;;;N;;;;0507; -0507;CYRILLIC SMALL LETTER KOMI DZJE;Ll;0;L;;;;;N;;;0506;;0506 -0508;CYRILLIC CAPITAL LETTER KOMI LJE;Lu;0;L;;;;;N;;;;0509; -0509;CYRILLIC SMALL LETTER KOMI LJE;Ll;0;L;;;;;N;;;0508;;0508 -050A;CYRILLIC CAPITAL LETTER KOMI NJE;Lu;0;L;;;;;N;;;;050B; -050B;CYRILLIC SMALL LETTER KOMI NJE;Ll;0;L;;;;;N;;;050A;;050A -050C;CYRILLIC CAPITAL LETTER KOMI SJE;Lu;0;L;;;;;N;;;;050D; -050D;CYRILLIC SMALL LETTER KOMI SJE;Ll;0;L;;;;;N;;;050C;;050C -050E;CYRILLIC CAPITAL LETTER KOMI TJE;Lu;0;L;;;;;N;;;;050F; -050F;CYRILLIC SMALL LETTER KOMI TJE;Ll;0;L;;;;;N;;;050E;;050E -0510;CYRILLIC CAPITAL LETTER REVERSED ZE;Lu;0;L;;;;;N;;;;0511; -0511;CYRILLIC SMALL LETTER REVERSED ZE;Ll;0;L;;;;;N;;;0510;;0510 -0512;CYRILLIC CAPITAL LETTER EL WITH HOOK;Lu;0;L;;;;;N;;;;0513; -0513;CYRILLIC SMALL LETTER EL WITH HOOK;Ll;0;L;;;;;N;;;0512;;0512 -0514;CYRILLIC CAPITAL LETTER LHA;Lu;0;L;;;;;N;;;;0515; -0515;CYRILLIC SMALL LETTER LHA;Ll;0;L;;;;;N;;;0514;;0514 -0516;CYRILLIC CAPITAL LETTER RHA;Lu;0;L;;;;;N;;;;0517; -0517;CYRILLIC SMALL LETTER RHA;Ll;0;L;;;;;N;;;0516;;0516 -0518;CYRILLIC CAPITAL LETTER YAE;Lu;0;L;;;;;N;;;;0519; -0519;CYRILLIC SMALL LETTER YAE;Ll;0;L;;;;;N;;;0518;;0518 -051A;CYRILLIC CAPITAL LETTER QA;Lu;0;L;;;;;N;;;;051B; -051B;CYRILLIC SMALL LETTER QA;Ll;0;L;;;;;N;;;051A;;051A -051C;CYRILLIC CAPITAL LETTER WE;Lu;0;L;;;;;N;;;;051D; -051D;CYRILLIC SMALL LETTER WE;Ll;0;L;;;;;N;;;051C;;051C -051E;CYRILLIC CAPITAL LETTER ALEUT KA;Lu;0;L;;;;;N;;;;051F; -051F;CYRILLIC SMALL LETTER ALEUT KA;Ll;0;L;;;;;N;;;051E;;051E -0520;CYRILLIC CAPITAL LETTER EL WITH MIDDLE HOOK;Lu;0;L;;;;;N;;;;0521; -0521;CYRILLIC SMALL LETTER EL WITH MIDDLE HOOK;Ll;0;L;;;;;N;;;0520;;0520 -0522;CYRILLIC CAPITAL LETTER EN WITH MIDDLE HOOK;Lu;0;L;;;;;N;;;;0523; -0523;CYRILLIC SMALL LETTER EN WITH MIDDLE HOOK;Ll;0;L;;;;;N;;;0522;;0522 -0524;CYRILLIC CAPITAL LETTER PE WITH DESCENDER;Lu;0;L;;;;;N;;;;0525; -0525;CYRILLIC SMALL LETTER PE WITH DESCENDER;Ll;0;L;;;;;N;;;0524;;0524 -0526;CYRILLIC CAPITAL LETTER SHHA WITH DESCENDER;Lu;0;L;;;;;N;;;;0527; -0527;CYRILLIC SMALL LETTER SHHA WITH DESCENDER;Ll;0;L;;;;;N;;;0526;;0526 -0531;ARMENIAN CAPITAL LETTER AYB;Lu;0;L;;;;;N;;;;0561; -0532;ARMENIAN CAPITAL LETTER BEN;Lu;0;L;;;;;N;;;;0562; -0533;ARMENIAN CAPITAL LETTER GIM;Lu;0;L;;;;;N;;;;0563; -0534;ARMENIAN CAPITAL LETTER DA;Lu;0;L;;;;;N;;;;0564; -0535;ARMENIAN CAPITAL LETTER ECH;Lu;0;L;;;;;N;;;;0565; -0536;ARMENIAN CAPITAL LETTER ZA;Lu;0;L;;;;;N;;;;0566; -0537;ARMENIAN CAPITAL LETTER EH;Lu;0;L;;;;;N;;;;0567; -0538;ARMENIAN CAPITAL LETTER ET;Lu;0;L;;;;;N;;;;0568; -0539;ARMENIAN CAPITAL LETTER TO;Lu;0;L;;;;;N;;;;0569; -053A;ARMENIAN CAPITAL LETTER ZHE;Lu;0;L;;;;;N;;;;056A; -053B;ARMENIAN CAPITAL LETTER INI;Lu;0;L;;;;;N;;;;056B; -053C;ARMENIAN CAPITAL LETTER LIWN;Lu;0;L;;;;;N;;;;056C; -053D;ARMENIAN CAPITAL LETTER XEH;Lu;0;L;;;;;N;;;;056D; -053E;ARMENIAN CAPITAL LETTER CA;Lu;0;L;;;;;N;;;;056E; -053F;ARMENIAN CAPITAL LETTER KEN;Lu;0;L;;;;;N;;;;056F; -0540;ARMENIAN CAPITAL LETTER HO;Lu;0;L;;;;;N;;;;0570; -0541;ARMENIAN CAPITAL LETTER JA;Lu;0;L;;;;;N;;;;0571; -0542;ARMENIAN CAPITAL LETTER GHAD;Lu;0;L;;;;;N;ARMENIAN CAPITAL LETTER LAD;;;0572; -0543;ARMENIAN CAPITAL LETTER CHEH;Lu;0;L;;;;;N;;;;0573; -0544;ARMENIAN CAPITAL LETTER MEN;Lu;0;L;;;;;N;;;;0574; -0545;ARMENIAN CAPITAL LETTER YI;Lu;0;L;;;;;N;;;;0575; -0546;ARMENIAN CAPITAL LETTER NOW;Lu;0;L;;;;;N;;;;0576; -0547;ARMENIAN CAPITAL LETTER SHA;Lu;0;L;;;;;N;;;;0577; -0548;ARMENIAN CAPITAL LETTER VO;Lu;0;L;;;;;N;;;;0578; -0549;ARMENIAN CAPITAL LETTER CHA;Lu;0;L;;;;;N;;;;0579; -054A;ARMENIAN CAPITAL LETTER PEH;Lu;0;L;;;;;N;;;;057A; -054B;ARMENIAN CAPITAL LETTER JHEH;Lu;0;L;;;;;N;;;;057B; -054C;ARMENIAN CAPITAL LETTER RA;Lu;0;L;;;;;N;;;;057C; -054D;ARMENIAN CAPITAL LETTER SEH;Lu;0;L;;;;;N;;;;057D; -054E;ARMENIAN CAPITAL LETTER VEW;Lu;0;L;;;;;N;;;;057E; -054F;ARMENIAN CAPITAL LETTER TIWN;Lu;0;L;;;;;N;;;;057F; -0550;ARMENIAN CAPITAL LETTER REH;Lu;0;L;;;;;N;;;;0580; -0551;ARMENIAN CAPITAL LETTER CO;Lu;0;L;;;;;N;;;;0581; -0552;ARMENIAN CAPITAL LETTER YIWN;Lu;0;L;;;;;N;;;;0582; -0553;ARMENIAN CAPITAL LETTER PIWR;Lu;0;L;;;;;N;;;;0583; -0554;ARMENIAN CAPITAL LETTER KEH;Lu;0;L;;;;;N;;;;0584; -0555;ARMENIAN CAPITAL LETTER OH;Lu;0;L;;;;;N;;;;0585; -0556;ARMENIAN CAPITAL LETTER FEH;Lu;0;L;;;;;N;;;;0586; -0559;ARMENIAN MODIFIER LETTER LEFT HALF RING;Lm;0;L;;;;;N;;;;; -055A;ARMENIAN APOSTROPHE;Po;0;L;;;;;N;ARMENIAN MODIFIER LETTER RIGHT HALF RING;;;; -055B;ARMENIAN EMPHASIS MARK;Po;0;L;;;;;N;;;;; -055C;ARMENIAN EXCLAMATION MARK;Po;0;L;;;;;N;;;;; -055D;ARMENIAN COMMA;Po;0;L;;;;;N;;;;; -055E;ARMENIAN QUESTION MARK;Po;0;L;;;;;N;;;;; -055F;ARMENIAN ABBREVIATION MARK;Po;0;L;;;;;N;;;;; -0561;ARMENIAN SMALL LETTER AYB;Ll;0;L;;;;;N;;;0531;;0531 -0562;ARMENIAN SMALL LETTER BEN;Ll;0;L;;;;;N;;;0532;;0532 -0563;ARMENIAN SMALL LETTER GIM;Ll;0;L;;;;;N;;;0533;;0533 -0564;ARMENIAN SMALL LETTER DA;Ll;0;L;;;;;N;;;0534;;0534 -0565;ARMENIAN SMALL LETTER ECH;Ll;0;L;;;;;N;;;0535;;0535 -0566;ARMENIAN SMALL LETTER ZA;Ll;0;L;;;;;N;;;0536;;0536 -0567;ARMENIAN SMALL LETTER EH;Ll;0;L;;;;;N;;;0537;;0537 -0568;ARMENIAN SMALL LETTER ET;Ll;0;L;;;;;N;;;0538;;0538 -0569;ARMENIAN SMALL LETTER TO;Ll;0;L;;;;;N;;;0539;;0539 -056A;ARMENIAN SMALL LETTER ZHE;Ll;0;L;;;;;N;;;053A;;053A -056B;ARMENIAN SMALL LETTER INI;Ll;0;L;;;;;N;;;053B;;053B -056C;ARMENIAN SMALL LETTER LIWN;Ll;0;L;;;;;N;;;053C;;053C -056D;ARMENIAN SMALL LETTER XEH;Ll;0;L;;;;;N;;;053D;;053D -056E;ARMENIAN SMALL LETTER CA;Ll;0;L;;;;;N;;;053E;;053E -056F;ARMENIAN SMALL LETTER KEN;Ll;0;L;;;;;N;;;053F;;053F -0570;ARMENIAN SMALL LETTER HO;Ll;0;L;;;;;N;;;0540;;0540 -0571;ARMENIAN SMALL LETTER JA;Ll;0;L;;;;;N;;;0541;;0541 -0572;ARMENIAN SMALL LETTER GHAD;Ll;0;L;;;;;N;ARMENIAN SMALL LETTER LAD;;0542;;0542 -0573;ARMENIAN SMALL LETTER CHEH;Ll;0;L;;;;;N;;;0543;;0543 -0574;ARMENIAN SMALL LETTER MEN;Ll;0;L;;;;;N;;;0544;;0544 -0575;ARMENIAN SMALL LETTER YI;Ll;0;L;;;;;N;;;0545;;0545 -0576;ARMENIAN SMALL LETTER NOW;Ll;0;L;;;;;N;;;0546;;0546 -0577;ARMENIAN SMALL LETTER SHA;Ll;0;L;;;;;N;;;0547;;0547 -0578;ARMENIAN SMALL LETTER VO;Ll;0;L;;;;;N;;;0548;;0548 -0579;ARMENIAN SMALL LETTER CHA;Ll;0;L;;;;;N;;;0549;;0549 -057A;ARMENIAN SMALL LETTER PEH;Ll;0;L;;;;;N;;;054A;;054A -057B;ARMENIAN SMALL LETTER JHEH;Ll;0;L;;;;;N;;;054B;;054B -057C;ARMENIAN SMALL LETTER RA;Ll;0;L;;;;;N;;;054C;;054C -057D;ARMENIAN SMALL LETTER SEH;Ll;0;L;;;;;N;;;054D;;054D -057E;ARMENIAN SMALL LETTER VEW;Ll;0;L;;;;;N;;;054E;;054E -057F;ARMENIAN SMALL LETTER TIWN;Ll;0;L;;;;;N;;;054F;;054F -0580;ARMENIAN SMALL LETTER REH;Ll;0;L;;;;;N;;;0550;;0550 -0581;ARMENIAN SMALL LETTER CO;Ll;0;L;;;;;N;;;0551;;0551 -0582;ARMENIAN SMALL LETTER YIWN;Ll;0;L;;;;;N;;;0552;;0552 -0583;ARMENIAN SMALL LETTER PIWR;Ll;0;L;;;;;N;;;0553;;0553 -0584;ARMENIAN SMALL LETTER KEH;Ll;0;L;;;;;N;;;0554;;0554 -0585;ARMENIAN SMALL LETTER OH;Ll;0;L;;;;;N;;;0555;;0555 -0586;ARMENIAN SMALL LETTER FEH;Ll;0;L;;;;;N;;;0556;;0556 -0587;ARMENIAN SMALL LIGATURE ECH YIWN;Ll;0;L; 0565 0582;;;;N;;;;; -0589;ARMENIAN FULL STOP;Po;0;L;;;;;N;ARMENIAN PERIOD;;;; -058A;ARMENIAN HYPHEN;Pd;0;ON;;;;;N;;;;; -0591;HEBREW ACCENT ETNAHTA;Mn;220;NSM;;;;;N;;;;; -0592;HEBREW ACCENT SEGOL;Mn;230;NSM;;;;;N;;;;; -0593;HEBREW ACCENT SHALSHELET;Mn;230;NSM;;;;;N;;;;; -0594;HEBREW ACCENT ZAQEF QATAN;Mn;230;NSM;;;;;N;;;;; -0595;HEBREW ACCENT ZAQEF GADOL;Mn;230;NSM;;;;;N;;;;; -0596;HEBREW ACCENT TIPEHA;Mn;220;NSM;;;;;N;;;;; -0597;HEBREW ACCENT REVIA;Mn;230;NSM;;;;;N;;;;; -0598;HEBREW ACCENT ZARQA;Mn;230;NSM;;;;;N;;;;; -0599;HEBREW ACCENT PASHTA;Mn;230;NSM;;;;;N;;;;; -059A;HEBREW ACCENT YETIV;Mn;222;NSM;;;;;N;;;;; -059B;HEBREW ACCENT TEVIR;Mn;220;NSM;;;;;N;;;;; -059C;HEBREW ACCENT GERESH;Mn;230;NSM;;;;;N;;;;; -059D;HEBREW ACCENT GERESH MUQDAM;Mn;230;NSM;;;;;N;;;;; -059E;HEBREW ACCENT GERSHAYIM;Mn;230;NSM;;;;;N;;;;; -059F;HEBREW ACCENT QARNEY PARA;Mn;230;NSM;;;;;N;;;;; -05A0;HEBREW ACCENT TELISHA GEDOLA;Mn;230;NSM;;;;;N;;;;; -05A1;HEBREW ACCENT PAZER;Mn;230;NSM;;;;;N;;;;; -05A2;HEBREW ACCENT ATNAH HAFUKH;Mn;220;NSM;;;;;N;;;;; -05A3;HEBREW ACCENT MUNAH;Mn;220;NSM;;;;;N;;;;; -05A4;HEBREW ACCENT MAHAPAKH;Mn;220;NSM;;;;;N;;;;; -05A5;HEBREW ACCENT MERKHA;Mn;220;NSM;;;;;N;;;;; -05A6;HEBREW ACCENT MERKHA KEFULA;Mn;220;NSM;;;;;N;;;;; -05A7;HEBREW ACCENT DARGA;Mn;220;NSM;;;;;N;;;;; -05A8;HEBREW ACCENT QADMA;Mn;230;NSM;;;;;N;;;;; -05A9;HEBREW ACCENT TELISHA QETANA;Mn;230;NSM;;;;;N;;;;; -05AA;HEBREW ACCENT YERAH BEN YOMO;Mn;220;NSM;;;;;N;;;;; -05AB;HEBREW ACCENT OLE;Mn;230;NSM;;;;;N;;;;; -05AC;HEBREW ACCENT ILUY;Mn;230;NSM;;;;;N;;;;; -05AD;HEBREW ACCENT DEHI;Mn;222;NSM;;;;;N;;;;; -05AE;HEBREW ACCENT ZINOR;Mn;228;NSM;;;;;N;;;;; -05AF;HEBREW MARK MASORA CIRCLE;Mn;230;NSM;;;;;N;;;;; -05B0;HEBREW POINT SHEVA;Mn;10;NSM;;;;;N;;;;; -05B1;HEBREW POINT HATAF SEGOL;Mn;11;NSM;;;;;N;;;;; -05B2;HEBREW POINT HATAF PATAH;Mn;12;NSM;;;;;N;;;;; -05B3;HEBREW POINT HATAF QAMATS;Mn;13;NSM;;;;;N;;;;; -05B4;HEBREW POINT HIRIQ;Mn;14;NSM;;;;;N;;;;; -05B5;HEBREW POINT TSERE;Mn;15;NSM;;;;;N;;;;; -05B6;HEBREW POINT SEGOL;Mn;16;NSM;;;;;N;;;;; -05B7;HEBREW POINT PATAH;Mn;17;NSM;;;;;N;;;;; -05B8;HEBREW POINT QAMATS;Mn;18;NSM;;;;;N;;;;; -05B9;HEBREW POINT HOLAM;Mn;19;NSM;;;;;N;;;;; -05BA;HEBREW POINT HOLAM HASER FOR VAV;Mn;19;NSM;;;;;N;;;;; -05BB;HEBREW POINT QUBUTS;Mn;20;NSM;;;;;N;;;;; -05BC;HEBREW POINT DAGESH OR MAPIQ;Mn;21;NSM;;;;;N;HEBREW POINT DAGESH;;;; -05BD;HEBREW POINT METEG;Mn;22;NSM;;;;;N;;;;; -05BE;HEBREW PUNCTUATION MAQAF;Pd;0;R;;;;;N;;;;; -05BF;HEBREW POINT RAFE;Mn;23;NSM;;;;;N;;;;; -05C0;HEBREW PUNCTUATION PASEQ;Po;0;R;;;;;N;HEBREW POINT PASEQ;;;; -05C1;HEBREW POINT SHIN DOT;Mn;24;NSM;;;;;N;;;;; -05C2;HEBREW POINT SIN DOT;Mn;25;NSM;;;;;N;;;;; -05C3;HEBREW PUNCTUATION SOF PASUQ;Po;0;R;;;;;N;;;;; -05C4;HEBREW MARK UPPER DOT;Mn;230;NSM;;;;;N;;;;; -05C5;HEBREW MARK LOWER DOT;Mn;220;NSM;;;;;N;;;;; -05C6;HEBREW PUNCTUATION NUN HAFUKHA;Po;0;R;;;;;N;;;;; -05C7;HEBREW POINT QAMATS QATAN;Mn;18;NSM;;;;;N;;;;; -05D0;HEBREW LETTER ALEF;Lo;0;R;;;;;N;;;;; -05D1;HEBREW LETTER BET;Lo;0;R;;;;;N;;;;; -05D2;HEBREW LETTER GIMEL;Lo;0;R;;;;;N;;;;; -05D3;HEBREW LETTER DALET;Lo;0;R;;;;;N;;;;; -05D4;HEBREW LETTER HE;Lo;0;R;;;;;N;;;;; -05D5;HEBREW LETTER VAV;Lo;0;R;;;;;N;;;;; -05D6;HEBREW LETTER ZAYIN;Lo;0;R;;;;;N;;;;; -05D7;HEBREW LETTER HET;Lo;0;R;;;;;N;;;;; -05D8;HEBREW LETTER TET;Lo;0;R;;;;;N;;;;; -05D9;HEBREW LETTER YOD;Lo;0;R;;;;;N;;;;; -05DA;HEBREW LETTER FINAL KAF;Lo;0;R;;;;;N;;;;; -05DB;HEBREW LETTER KAF;Lo;0;R;;;;;N;;;;; -05DC;HEBREW LETTER LAMED;Lo;0;R;;;;;N;;;;; -05DD;HEBREW LETTER FINAL MEM;Lo;0;R;;;;;N;;;;; -05DE;HEBREW LETTER MEM;Lo;0;R;;;;;N;;;;; -05DF;HEBREW LETTER FINAL NUN;Lo;0;R;;;;;N;;;;; -05E0;HEBREW LETTER NUN;Lo;0;R;;;;;N;;;;; -05E1;HEBREW LETTER SAMEKH;Lo;0;R;;;;;N;;;;; -05E2;HEBREW LETTER AYIN;Lo;0;R;;;;;N;;;;; -05E3;HEBREW LETTER FINAL PE;Lo;0;R;;;;;N;;;;; -05E4;HEBREW LETTER PE;Lo;0;R;;;;;N;;;;; -05E5;HEBREW LETTER FINAL TSADI;Lo;0;R;;;;;N;;;;; -05E6;HEBREW LETTER TSADI;Lo;0;R;;;;;N;;;;; -05E7;HEBREW LETTER QOF;Lo;0;R;;;;;N;;;;; -05E8;HEBREW LETTER RESH;Lo;0;R;;;;;N;;;;; -05E9;HEBREW LETTER SHIN;Lo;0;R;;;;;N;;;;; -05EA;HEBREW LETTER TAV;Lo;0;R;;;;;N;;;;; -05F0;HEBREW LIGATURE YIDDISH DOUBLE VAV;Lo;0;R;;;;;N;HEBREW LETTER DOUBLE VAV;;;; -05F1;HEBREW LIGATURE YIDDISH VAV YOD;Lo;0;R;;;;;N;HEBREW LETTER VAV YOD;;;; -05F2;HEBREW LIGATURE YIDDISH DOUBLE YOD;Lo;0;R;;;;;N;HEBREW LETTER DOUBLE YOD;;;; -05F3;HEBREW PUNCTUATION GERESH;Po;0;R;;;;;N;;;;; -05F4;HEBREW PUNCTUATION GERSHAYIM;Po;0;R;;;;;N;;;;; -0600;ARABIC NUMBER SIGN;Cf;0;AN;;;;;N;;;;; -0601;ARABIC SIGN SANAH;Cf;0;AN;;;;;N;;;;; -0602;ARABIC FOOTNOTE MARKER;Cf;0;AN;;;;;N;;;;; -0603;ARABIC SIGN SAFHA;Cf;0;AN;;;;;N;;;;; -0606;ARABIC-INDIC CUBE ROOT;Sm;0;ON;;;;;N;;;;; -0607;ARABIC-INDIC FOURTH ROOT;Sm;0;ON;;;;;N;;;;; -0608;ARABIC RAY;Sm;0;AL;;;;;N;;;;; -0609;ARABIC-INDIC PER MILLE SIGN;Po;0;ET;;;;;N;;;;; -060A;ARABIC-INDIC PER TEN THOUSAND SIGN;Po;0;ET;;;;;N;;;;; -060B;AFGHANI SIGN;Sc;0;AL;;;;;N;;;;; -060C;ARABIC COMMA;Po;0;CS;;;;;N;;;;; -060D;ARABIC DATE SEPARATOR;Po;0;AL;;;;;N;;;;; -060E;ARABIC POETIC VERSE SIGN;So;0;ON;;;;;N;;;;; -060F;ARABIC SIGN MISRA;So;0;ON;;;;;N;;;;; -0610;ARABIC SIGN SALLALLAHOU ALAYHE WASSALLAM;Mn;230;NSM;;;;;N;;;;; -0611;ARABIC SIGN ALAYHE ASSALLAM;Mn;230;NSM;;;;;N;;;;; -0612;ARABIC SIGN RAHMATULLAH ALAYHE;Mn;230;NSM;;;;;N;;;;; -0613;ARABIC SIGN RADI ALLAHOU ANHU;Mn;230;NSM;;;;;N;;;;; -0614;ARABIC SIGN TAKHALLUS;Mn;230;NSM;;;;;N;;;;; -0615;ARABIC SMALL HIGH TAH;Mn;230;NSM;;;;;N;;;;; -0616;ARABIC SMALL HIGH LIGATURE ALEF WITH LAM WITH YEH;Mn;230;NSM;;;;;N;;;;; -0617;ARABIC SMALL HIGH ZAIN;Mn;230;NSM;;;;;N;;;;; -0618;ARABIC SMALL FATHA;Mn;30;NSM;;;;;N;;;;; -0619;ARABIC SMALL DAMMA;Mn;31;NSM;;;;;N;;;;; -061A;ARABIC SMALL KASRA;Mn;32;NSM;;;;;N;;;;; -061B;ARABIC SEMICOLON;Po;0;AL;;;;;N;;;;; -061E;ARABIC TRIPLE DOT PUNCTUATION MARK;Po;0;AL;;;;;N;;;;; -061F;ARABIC QUESTION MARK;Po;0;AL;;;;;N;;;;; -0620;ARABIC LETTER KASHMIRI YEH;Lo;0;AL;;;;;N;;;;; -0621;ARABIC LETTER HAMZA;Lo;0;AL;;;;;N;ARABIC LETTER HAMZAH;;;; -0622;ARABIC LETTER ALEF WITH MADDA ABOVE;Lo;0;AL;0627 0653;;;;N;ARABIC LETTER MADDAH ON ALEF;;;; -0623;ARABIC LETTER ALEF WITH HAMZA ABOVE;Lo;0;AL;0627 0654;;;;N;ARABIC LETTER HAMZAH ON ALEF;;;; -0624;ARABIC LETTER WAW WITH HAMZA ABOVE;Lo;0;AL;0648 0654;;;;N;ARABIC LETTER HAMZAH ON WAW;;;; -0625;ARABIC LETTER ALEF WITH HAMZA BELOW;Lo;0;AL;0627 0655;;;;N;ARABIC LETTER HAMZAH UNDER ALEF;;;; -0626;ARABIC LETTER YEH WITH HAMZA ABOVE;Lo;0;AL;064A 0654;;;;N;ARABIC LETTER HAMZAH ON YA;;;; -0627;ARABIC LETTER ALEF;Lo;0;AL;;;;;N;;;;; -0628;ARABIC LETTER BEH;Lo;0;AL;;;;;N;ARABIC LETTER BAA;;;; -0629;ARABIC LETTER TEH MARBUTA;Lo;0;AL;;;;;N;ARABIC LETTER TAA MARBUTAH;;;; -062A;ARABIC LETTER TEH;Lo;0;AL;;;;;N;ARABIC LETTER TAA;;;; -062B;ARABIC LETTER THEH;Lo;0;AL;;;;;N;ARABIC LETTER THAA;;;; -062C;ARABIC LETTER JEEM;Lo;0;AL;;;;;N;;;;; -062D;ARABIC LETTER HAH;Lo;0;AL;;;;;N;ARABIC LETTER HAA;;;; -062E;ARABIC LETTER KHAH;Lo;0;AL;;;;;N;ARABIC LETTER KHAA;;;; -062F;ARABIC LETTER DAL;Lo;0;AL;;;;;N;;;;; -0630;ARABIC LETTER THAL;Lo;0;AL;;;;;N;;;;; -0631;ARABIC LETTER REH;Lo;0;AL;;;;;N;ARABIC LETTER RA;;;; -0632;ARABIC LETTER ZAIN;Lo;0;AL;;;;;N;;;;; -0633;ARABIC LETTER SEEN;Lo;0;AL;;;;;N;;;;; -0634;ARABIC LETTER SHEEN;Lo;0;AL;;;;;N;;;;; -0635;ARABIC LETTER SAD;Lo;0;AL;;;;;N;;;;; -0636;ARABIC LETTER DAD;Lo;0;AL;;;;;N;;;;; -0637;ARABIC LETTER TAH;Lo;0;AL;;;;;N;;;;; -0638;ARABIC LETTER ZAH;Lo;0;AL;;;;;N;ARABIC LETTER DHAH;;;; -0639;ARABIC LETTER AIN;Lo;0;AL;;;;;N;;;;; -063A;ARABIC LETTER GHAIN;Lo;0;AL;;;;;N;;;;; -063B;ARABIC LETTER KEHEH WITH TWO DOTS ABOVE;Lo;0;AL;;;;;N;;;;; -063C;ARABIC LETTER KEHEH WITH THREE DOTS BELOW;Lo;0;AL;;;;;N;;;;; -063D;ARABIC LETTER FARSI YEH WITH INVERTED V;Lo;0;AL;;;;;N;;;;; -063E;ARABIC LETTER FARSI YEH WITH TWO DOTS ABOVE;Lo;0;AL;;;;;N;;;;; -063F;ARABIC LETTER FARSI YEH WITH THREE DOTS ABOVE;Lo;0;AL;;;;;N;;;;; -0640;ARABIC TATWEEL;Lm;0;AL;;;;;N;;;;; -0641;ARABIC LETTER FEH;Lo;0;AL;;;;;N;ARABIC LETTER FA;;;; -0642;ARABIC LETTER QAF;Lo;0;AL;;;;;N;;;;; -0643;ARABIC LETTER KAF;Lo;0;AL;;;;;N;ARABIC LETTER CAF;;;; -0644;ARABIC LETTER LAM;Lo;0;AL;;;;;N;;;;; -0645;ARABIC LETTER MEEM;Lo;0;AL;;;;;N;;;;; -0646;ARABIC LETTER NOON;Lo;0;AL;;;;;N;;;;; -0647;ARABIC LETTER HEH;Lo;0;AL;;;;;N;ARABIC LETTER HA;;;; -0648;ARABIC LETTER WAW;Lo;0;AL;;;;;N;;;;; -0649;ARABIC LETTER ALEF MAKSURA;Lo;0;AL;;;;;N;ARABIC LETTER ALEF MAQSURAH;;;; -064A;ARABIC LETTER YEH;Lo;0;AL;;;;;N;ARABIC LETTER YA;;;; -064B;ARABIC FATHATAN;Mn;27;NSM;;;;;N;;;;; -064C;ARABIC DAMMATAN;Mn;28;NSM;;;;;N;;;;; -064D;ARABIC KASRATAN;Mn;29;NSM;;;;;N;;;;; -064E;ARABIC FATHA;Mn;30;NSM;;;;;N;ARABIC FATHAH;;;; -064F;ARABIC DAMMA;Mn;31;NSM;;;;;N;ARABIC DAMMAH;;;; -0650;ARABIC KASRA;Mn;32;NSM;;;;;N;ARABIC KASRAH;;;; -0651;ARABIC SHADDA;Mn;33;NSM;;;;;N;ARABIC SHADDAH;;;; -0652;ARABIC SUKUN;Mn;34;NSM;;;;;N;;;;; -0653;ARABIC MADDAH ABOVE;Mn;230;NSM;;;;;N;;;;; -0654;ARABIC HAMZA ABOVE;Mn;230;NSM;;;;;N;;;;; -0655;ARABIC HAMZA BELOW;Mn;220;NSM;;;;;N;;;;; -0656;ARABIC SUBSCRIPT ALEF;Mn;220;NSM;;;;;N;;;;; -0657;ARABIC INVERTED DAMMA;Mn;230;NSM;;;;;N;;;;; -0658;ARABIC MARK NOON GHUNNA;Mn;230;NSM;;;;;N;;;;; -0659;ARABIC ZWARAKAY;Mn;230;NSM;;;;;N;;;;; -065A;ARABIC VOWEL SIGN SMALL V ABOVE;Mn;230;NSM;;;;;N;;;;; -065B;ARABIC VOWEL SIGN INVERTED SMALL V ABOVE;Mn;230;NSM;;;;;N;;;;; -065C;ARABIC VOWEL SIGN DOT BELOW;Mn;220;NSM;;;;;N;;;;; -065D;ARABIC REVERSED DAMMA;Mn;230;NSM;;;;;N;;;;; -065E;ARABIC FATHA WITH TWO DOTS;Mn;230;NSM;;;;;N;;;;; -065F;ARABIC WAVY HAMZA BELOW;Mn;220;NSM;;;;;N;;;;; -0660;ARABIC-INDIC DIGIT ZERO;Nd;0;AN;;0;0;0;N;;;;; -0661;ARABIC-INDIC DIGIT ONE;Nd;0;AN;;1;1;1;N;;;;; -0662;ARABIC-INDIC DIGIT TWO;Nd;0;AN;;2;2;2;N;;;;; -0663;ARABIC-INDIC DIGIT THREE;Nd;0;AN;;3;3;3;N;;;;; -0664;ARABIC-INDIC DIGIT FOUR;Nd;0;AN;;4;4;4;N;;;;; -0665;ARABIC-INDIC DIGIT FIVE;Nd;0;AN;;5;5;5;N;;;;; -0666;ARABIC-INDIC DIGIT SIX;Nd;0;AN;;6;6;6;N;;;;; -0667;ARABIC-INDIC DIGIT SEVEN;Nd;0;AN;;7;7;7;N;;;;; -0668;ARABIC-INDIC DIGIT EIGHT;Nd;0;AN;;8;8;8;N;;;;; -0669;ARABIC-INDIC DIGIT NINE;Nd;0;AN;;9;9;9;N;;;;; -066A;ARABIC PERCENT SIGN;Po;0;ET;;;;;N;;;;; -066B;ARABIC DECIMAL SEPARATOR;Po;0;AN;;;;;N;;;;; -066C;ARABIC THOUSANDS SEPARATOR;Po;0;AN;;;;;N;;;;; -066D;ARABIC FIVE POINTED STAR;Po;0;AL;;;;;N;;;;; -066E;ARABIC LETTER DOTLESS BEH;Lo;0;AL;;;;;N;;;;; -066F;ARABIC LETTER DOTLESS QAF;Lo;0;AL;;;;;N;;;;; -0670;ARABIC LETTER SUPERSCRIPT ALEF;Mn;35;NSM;;;;;N;ARABIC ALEF ABOVE;;;; -0671;ARABIC LETTER ALEF WASLA;Lo;0;AL;;;;;N;ARABIC LETTER HAMZAT WASL ON ALEF;;;; -0672;ARABIC LETTER ALEF WITH WAVY HAMZA ABOVE;Lo;0;AL;;;;;N;ARABIC LETTER WAVY HAMZAH ON ALEF;;;; -0673;ARABIC LETTER ALEF WITH WAVY HAMZA BELOW;Lo;0;AL;;;;;N;ARABIC LETTER WAVY HAMZAH UNDER ALEF;;;; -0674;ARABIC LETTER HIGH HAMZA;Lo;0;AL;;;;;N;ARABIC LETTER HIGH HAMZAH;;;; -0675;ARABIC LETTER HIGH HAMZA ALEF;Lo;0;AL; 0627 0674;;;;N;ARABIC LETTER HIGH HAMZAH ALEF;;;; -0676;ARABIC LETTER HIGH HAMZA WAW;Lo;0;AL; 0648 0674;;;;N;ARABIC LETTER HIGH HAMZAH WAW;;;; -0677;ARABIC LETTER U WITH HAMZA ABOVE;Lo;0;AL; 06C7 0674;;;;N;ARABIC LETTER HIGH HAMZAH WAW WITH DAMMAH;;;; -0678;ARABIC LETTER HIGH HAMZA YEH;Lo;0;AL; 064A 0674;;;;N;ARABIC LETTER HIGH HAMZAH YA;;;; -0679;ARABIC LETTER TTEH;Lo;0;AL;;;;;N;ARABIC LETTER TAA WITH SMALL TAH;;;; -067A;ARABIC LETTER TTEHEH;Lo;0;AL;;;;;N;ARABIC LETTER TAA WITH TWO DOTS VERTICAL ABOVE;;;; -067B;ARABIC LETTER BEEH;Lo;0;AL;;;;;N;ARABIC LETTER BAA WITH TWO DOTS VERTICAL BELOW;;;; -067C;ARABIC LETTER TEH WITH RING;Lo;0;AL;;;;;N;ARABIC LETTER TAA WITH RING;;;; -067D;ARABIC LETTER TEH WITH THREE DOTS ABOVE DOWNWARDS;Lo;0;AL;;;;;N;ARABIC LETTER TAA WITH THREE DOTS ABOVE DOWNWARD;;;; -067E;ARABIC LETTER PEH;Lo;0;AL;;;;;N;ARABIC LETTER TAA WITH THREE DOTS BELOW;;;; -067F;ARABIC LETTER TEHEH;Lo;0;AL;;;;;N;ARABIC LETTER TAA WITH FOUR DOTS ABOVE;;;; -0680;ARABIC LETTER BEHEH;Lo;0;AL;;;;;N;ARABIC LETTER BAA WITH FOUR DOTS BELOW;;;; -0681;ARABIC LETTER HAH WITH HAMZA ABOVE;Lo;0;AL;;;;;N;ARABIC LETTER HAMZAH ON HAA;;;; -0682;ARABIC LETTER HAH WITH TWO DOTS VERTICAL ABOVE;Lo;0;AL;;;;;N;ARABIC LETTER HAA WITH TWO DOTS VERTICAL ABOVE;;;; -0683;ARABIC LETTER NYEH;Lo;0;AL;;;;;N;ARABIC LETTER HAA WITH MIDDLE TWO DOTS;;;; -0684;ARABIC LETTER DYEH;Lo;0;AL;;;;;N;ARABIC LETTER HAA WITH MIDDLE TWO DOTS VERTICAL;;;; -0685;ARABIC LETTER HAH WITH THREE DOTS ABOVE;Lo;0;AL;;;;;N;ARABIC LETTER HAA WITH THREE DOTS ABOVE;;;; -0686;ARABIC LETTER TCHEH;Lo;0;AL;;;;;N;ARABIC LETTER HAA WITH MIDDLE THREE DOTS DOWNWARD;;;; -0687;ARABIC LETTER TCHEHEH;Lo;0;AL;;;;;N;ARABIC LETTER HAA WITH MIDDLE FOUR DOTS;;;; -0688;ARABIC LETTER DDAL;Lo;0;AL;;;;;N;ARABIC LETTER DAL WITH SMALL TAH;;;; -0689;ARABIC LETTER DAL WITH RING;Lo;0;AL;;;;;N;;;;; -068A;ARABIC LETTER DAL WITH DOT BELOW;Lo;0;AL;;;;;N;;;;; -068B;ARABIC LETTER DAL WITH DOT BELOW AND SMALL TAH;Lo;0;AL;;;;;N;;;;; -068C;ARABIC LETTER DAHAL;Lo;0;AL;;;;;N;ARABIC LETTER DAL WITH TWO DOTS ABOVE;;;; -068D;ARABIC LETTER DDAHAL;Lo;0;AL;;;;;N;ARABIC LETTER DAL WITH TWO DOTS BELOW;;;; -068E;ARABIC LETTER DUL;Lo;0;AL;;;;;N;ARABIC LETTER DAL WITH THREE DOTS ABOVE;;;; -068F;ARABIC LETTER DAL WITH THREE DOTS ABOVE DOWNWARDS;Lo;0;AL;;;;;N;ARABIC LETTER DAL WITH THREE DOTS ABOVE DOWNWARD;;;; -0690;ARABIC LETTER DAL WITH FOUR DOTS ABOVE;Lo;0;AL;;;;;N;;;;; -0691;ARABIC LETTER RREH;Lo;0;AL;;;;;N;ARABIC LETTER RA WITH SMALL TAH;;;; -0692;ARABIC LETTER REH WITH SMALL V;Lo;0;AL;;;;;N;ARABIC LETTER RA WITH SMALL V;;;; -0693;ARABIC LETTER REH WITH RING;Lo;0;AL;;;;;N;ARABIC LETTER RA WITH RING;;;; -0694;ARABIC LETTER REH WITH DOT BELOW;Lo;0;AL;;;;;N;ARABIC LETTER RA WITH DOT BELOW;;;; -0695;ARABIC LETTER REH WITH SMALL V BELOW;Lo;0;AL;;;;;N;ARABIC LETTER RA WITH SMALL V BELOW;;;; -0696;ARABIC LETTER REH WITH DOT BELOW AND DOT ABOVE;Lo;0;AL;;;;;N;ARABIC LETTER RA WITH DOT BELOW AND DOT ABOVE;;;; -0697;ARABIC LETTER REH WITH TWO DOTS ABOVE;Lo;0;AL;;;;;N;ARABIC LETTER RA WITH TWO DOTS ABOVE;;;; -0698;ARABIC LETTER JEH;Lo;0;AL;;;;;N;ARABIC LETTER RA WITH THREE DOTS ABOVE;;;; -0699;ARABIC LETTER REH WITH FOUR DOTS ABOVE;Lo;0;AL;;;;;N;ARABIC LETTER RA WITH FOUR DOTS ABOVE;;;; -069A;ARABIC LETTER SEEN WITH DOT BELOW AND DOT ABOVE;Lo;0;AL;;;;;N;;;;; -069B;ARABIC LETTER SEEN WITH THREE DOTS BELOW;Lo;0;AL;;;;;N;;;;; -069C;ARABIC LETTER SEEN WITH THREE DOTS BELOW AND THREE DOTS ABOVE;Lo;0;AL;;;;;N;;;;; -069D;ARABIC LETTER SAD WITH TWO DOTS BELOW;Lo;0;AL;;;;;N;;;;; -069E;ARABIC LETTER SAD WITH THREE DOTS ABOVE;Lo;0;AL;;;;;N;;;;; -069F;ARABIC LETTER TAH WITH THREE DOTS ABOVE;Lo;0;AL;;;;;N;;;;; -06A0;ARABIC LETTER AIN WITH THREE DOTS ABOVE;Lo;0;AL;;;;;N;;;;; -06A1;ARABIC LETTER DOTLESS FEH;Lo;0;AL;;;;;N;ARABIC LETTER DOTLESS FA;;;; -06A2;ARABIC LETTER FEH WITH DOT MOVED BELOW;Lo;0;AL;;;;;N;ARABIC LETTER FA WITH DOT MOVED BELOW;;;; -06A3;ARABIC LETTER FEH WITH DOT BELOW;Lo;0;AL;;;;;N;ARABIC LETTER FA WITH DOT BELOW;;;; -06A4;ARABIC LETTER VEH;Lo;0;AL;;;;;N;ARABIC LETTER FA WITH THREE DOTS ABOVE;;;; -06A5;ARABIC LETTER FEH WITH THREE DOTS BELOW;Lo;0;AL;;;;;N;ARABIC LETTER FA WITH THREE DOTS BELOW;;;; -06A6;ARABIC LETTER PEHEH;Lo;0;AL;;;;;N;ARABIC LETTER FA WITH FOUR DOTS ABOVE;;;; -06A7;ARABIC LETTER QAF WITH DOT ABOVE;Lo;0;AL;;;;;N;;;;; -06A8;ARABIC LETTER QAF WITH THREE DOTS ABOVE;Lo;0;AL;;;;;N;;;;; -06A9;ARABIC LETTER KEHEH;Lo;0;AL;;;;;N;ARABIC LETTER OPEN CAF;;;; -06AA;ARABIC LETTER SWASH KAF;Lo;0;AL;;;;;N;ARABIC LETTER SWASH CAF;;;; -06AB;ARABIC LETTER KAF WITH RING;Lo;0;AL;;;;;N;ARABIC LETTER CAF WITH RING;;;; -06AC;ARABIC LETTER KAF WITH DOT ABOVE;Lo;0;AL;;;;;N;ARABIC LETTER CAF WITH DOT ABOVE;;;; -06AD;ARABIC LETTER NG;Lo;0;AL;;;;;N;ARABIC LETTER CAF WITH THREE DOTS ABOVE;;;; -06AE;ARABIC LETTER KAF WITH THREE DOTS BELOW;Lo;0;AL;;;;;N;ARABIC LETTER CAF WITH THREE DOTS BELOW;;;; -06AF;ARABIC LETTER GAF;Lo;0;AL;;;;;N;;;;; -06B0;ARABIC LETTER GAF WITH RING;Lo;0;AL;;;;;N;;;;; -06B1;ARABIC LETTER NGOEH;Lo;0;AL;;;;;N;ARABIC LETTER GAF WITH TWO DOTS ABOVE;;;; -06B2;ARABIC LETTER GAF WITH TWO DOTS BELOW;Lo;0;AL;;;;;N;;;;; -06B3;ARABIC LETTER GUEH;Lo;0;AL;;;;;N;ARABIC LETTER GAF WITH TWO DOTS VERTICAL BELOW;;;; -06B4;ARABIC LETTER GAF WITH THREE DOTS ABOVE;Lo;0;AL;;;;;N;;;;; -06B5;ARABIC LETTER LAM WITH SMALL V;Lo;0;AL;;;;;N;;;;; -06B6;ARABIC LETTER LAM WITH DOT ABOVE;Lo;0;AL;;;;;N;;;;; -06B7;ARABIC LETTER LAM WITH THREE DOTS ABOVE;Lo;0;AL;;;;;N;;;;; -06B8;ARABIC LETTER LAM WITH THREE DOTS BELOW;Lo;0;AL;;;;;N;;;;; -06B9;ARABIC LETTER NOON WITH DOT BELOW;Lo;0;AL;;;;;N;;;;; -06BA;ARABIC LETTER NOON GHUNNA;Lo;0;AL;;;;;N;ARABIC LETTER DOTLESS NOON;;;; -06BB;ARABIC LETTER RNOON;Lo;0;AL;;;;;N;ARABIC LETTER DOTLESS NOON WITH SMALL TAH;;;; -06BC;ARABIC LETTER NOON WITH RING;Lo;0;AL;;;;;N;;;;; -06BD;ARABIC LETTER NOON WITH THREE DOTS ABOVE;Lo;0;AL;;;;;N;;;;; -06BE;ARABIC LETTER HEH DOACHASHMEE;Lo;0;AL;;;;;N;ARABIC LETTER KNOTTED HA;;;; -06BF;ARABIC LETTER TCHEH WITH DOT ABOVE;Lo;0;AL;;;;;N;;;;; -06C0;ARABIC LETTER HEH WITH YEH ABOVE;Lo;0;AL;06D5 0654;;;;N;ARABIC LETTER HAMZAH ON HA;;;; -06C1;ARABIC LETTER HEH GOAL;Lo;0;AL;;;;;N;ARABIC LETTER HA GOAL;;;; -06C2;ARABIC LETTER HEH GOAL WITH HAMZA ABOVE;Lo;0;AL;06C1 0654;;;;N;ARABIC LETTER HAMZAH ON HA GOAL;;;; -06C3;ARABIC LETTER TEH MARBUTA GOAL;Lo;0;AL;;;;;N;ARABIC LETTER TAA MARBUTAH GOAL;;;; -06C4;ARABIC LETTER WAW WITH RING;Lo;0;AL;;;;;N;;;;; -06C5;ARABIC LETTER KIRGHIZ OE;Lo;0;AL;;;;;N;ARABIC LETTER WAW WITH BAR;;;; -06C6;ARABIC LETTER OE;Lo;0;AL;;;;;N;ARABIC LETTER WAW WITH SMALL V;;;; -06C7;ARABIC LETTER U;Lo;0;AL;;;;;N;ARABIC LETTER WAW WITH DAMMAH;;;; -06C8;ARABIC LETTER YU;Lo;0;AL;;;;;N;ARABIC LETTER WAW WITH ALEF ABOVE;;;; -06C9;ARABIC LETTER KIRGHIZ YU;Lo;0;AL;;;;;N;ARABIC LETTER WAW WITH INVERTED SMALL V;;;; -06CA;ARABIC LETTER WAW WITH TWO DOTS ABOVE;Lo;0;AL;;;;;N;;;;; -06CB;ARABIC LETTER VE;Lo;0;AL;;;;;N;ARABIC LETTER WAW WITH THREE DOTS ABOVE;;;; -06CC;ARABIC LETTER FARSI YEH;Lo;0;AL;;;;;N;ARABIC LETTER DOTLESS YA;;;; -06CD;ARABIC LETTER YEH WITH TAIL;Lo;0;AL;;;;;N;ARABIC LETTER YA WITH TAIL;;;; -06CE;ARABIC LETTER YEH WITH SMALL V;Lo;0;AL;;;;;N;ARABIC LETTER YA WITH SMALL V;;;; -06CF;ARABIC LETTER WAW WITH DOT ABOVE;Lo;0;AL;;;;;N;;;;; -06D0;ARABIC LETTER E;Lo;0;AL;;;;;N;ARABIC LETTER YA WITH TWO DOTS VERTICAL BELOW;;;; -06D1;ARABIC LETTER YEH WITH THREE DOTS BELOW;Lo;0;AL;;;;;N;ARABIC LETTER YA WITH THREE DOTS BELOW;;;; -06D2;ARABIC LETTER YEH BARREE;Lo;0;AL;;;;;N;ARABIC LETTER YA BARREE;;;; -06D3;ARABIC LETTER YEH BARREE WITH HAMZA ABOVE;Lo;0;AL;06D2 0654;;;;N;ARABIC LETTER HAMZAH ON YA BARREE;;;; -06D4;ARABIC FULL STOP;Po;0;AL;;;;;N;ARABIC PERIOD;;;; -06D5;ARABIC LETTER AE;Lo;0;AL;;;;;N;;;;; -06D6;ARABIC SMALL HIGH LIGATURE SAD WITH LAM WITH ALEF MAKSURA;Mn;230;NSM;;;;;N;;;;; -06D7;ARABIC SMALL HIGH LIGATURE QAF WITH LAM WITH ALEF MAKSURA;Mn;230;NSM;;;;;N;;;;; -06D8;ARABIC SMALL HIGH MEEM INITIAL FORM;Mn;230;NSM;;;;;N;;;;; -06D9;ARABIC SMALL HIGH LAM ALEF;Mn;230;NSM;;;;;N;;;;; -06DA;ARABIC SMALL HIGH JEEM;Mn;230;NSM;;;;;N;;;;; -06DB;ARABIC SMALL HIGH THREE DOTS;Mn;230;NSM;;;;;N;;;;; -06DC;ARABIC SMALL HIGH SEEN;Mn;230;NSM;;;;;N;;;;; -06DD;ARABIC END OF AYAH;Cf;0;AN;;;;;N;;;;; -06DE;ARABIC START OF RUB EL HIZB;So;0;ON;;;;;N;;;;; -06DF;ARABIC SMALL HIGH ROUNDED ZERO;Mn;230;NSM;;;;;N;;;;; -06E0;ARABIC SMALL HIGH UPRIGHT RECTANGULAR ZERO;Mn;230;NSM;;;;;N;;;;; -06E1;ARABIC SMALL HIGH DOTLESS HEAD OF KHAH;Mn;230;NSM;;;;;N;;;;; -06E2;ARABIC SMALL HIGH MEEM ISOLATED FORM;Mn;230;NSM;;;;;N;;;;; -06E3;ARABIC SMALL LOW SEEN;Mn;220;NSM;;;;;N;;;;; -06E4;ARABIC SMALL HIGH MADDA;Mn;230;NSM;;;;;N;;;;; -06E5;ARABIC SMALL WAW;Lm;0;AL;;;;;N;;;;; -06E6;ARABIC SMALL YEH;Lm;0;AL;;;;;N;;;;; -06E7;ARABIC SMALL HIGH YEH;Mn;230;NSM;;;;;N;;;;; -06E8;ARABIC SMALL HIGH NOON;Mn;230;NSM;;;;;N;;;;; -06E9;ARABIC PLACE OF SAJDAH;So;0;ON;;;;;N;;;;; -06EA;ARABIC EMPTY CENTRE LOW STOP;Mn;220;NSM;;;;;N;;;;; -06EB;ARABIC EMPTY CENTRE HIGH STOP;Mn;230;NSM;;;;;N;;;;; -06EC;ARABIC ROUNDED HIGH STOP WITH FILLED CENTRE;Mn;230;NSM;;;;;N;;;;; -06ED;ARABIC SMALL LOW MEEM;Mn;220;NSM;;;;;N;;;;; -06EE;ARABIC LETTER DAL WITH INVERTED V;Lo;0;AL;;;;;N;;;;; -06EF;ARABIC LETTER REH WITH INVERTED V;Lo;0;AL;;;;;N;;;;; -06F0;EXTENDED ARABIC-INDIC DIGIT ZERO;Nd;0;EN;;0;0;0;N;EASTERN ARABIC-INDIC DIGIT ZERO;;;; -06F1;EXTENDED ARABIC-INDIC DIGIT ONE;Nd;0;EN;;1;1;1;N;EASTERN ARABIC-INDIC DIGIT ONE;;;; -06F2;EXTENDED ARABIC-INDIC DIGIT TWO;Nd;0;EN;;2;2;2;N;EASTERN ARABIC-INDIC DIGIT TWO;;;; -06F3;EXTENDED ARABIC-INDIC DIGIT THREE;Nd;0;EN;;3;3;3;N;EASTERN ARABIC-INDIC DIGIT THREE;;;; -06F4;EXTENDED ARABIC-INDIC DIGIT FOUR;Nd;0;EN;;4;4;4;N;EASTERN ARABIC-INDIC DIGIT FOUR;;;; -06F5;EXTENDED ARABIC-INDIC DIGIT FIVE;Nd;0;EN;;5;5;5;N;EASTERN ARABIC-INDIC DIGIT FIVE;;;; -06F6;EXTENDED ARABIC-INDIC DIGIT SIX;Nd;0;EN;;6;6;6;N;EASTERN ARABIC-INDIC DIGIT SIX;;;; -06F7;EXTENDED ARABIC-INDIC DIGIT SEVEN;Nd;0;EN;;7;7;7;N;EASTERN ARABIC-INDIC DIGIT SEVEN;;;; -06F8;EXTENDED ARABIC-INDIC DIGIT EIGHT;Nd;0;EN;;8;8;8;N;EASTERN ARABIC-INDIC DIGIT EIGHT;;;; -06F9;EXTENDED ARABIC-INDIC DIGIT NINE;Nd;0;EN;;9;9;9;N;EASTERN ARABIC-INDIC DIGIT NINE;;;; -06FA;ARABIC LETTER SHEEN WITH DOT BELOW;Lo;0;AL;;;;;N;;;;; -06FB;ARABIC LETTER DAD WITH DOT BELOW;Lo;0;AL;;;;;N;;;;; -06FC;ARABIC LETTER GHAIN WITH DOT BELOW;Lo;0;AL;;;;;N;;;;; -06FD;ARABIC SIGN SINDHI AMPERSAND;So;0;AL;;;;;N;;;;; -06FE;ARABIC SIGN SINDHI POSTPOSITION MEN;So;0;AL;;;;;N;;;;; -06FF;ARABIC LETTER HEH WITH INVERTED V;Lo;0;AL;;;;;N;;;;; -0700;SYRIAC END OF PARAGRAPH;Po;0;AL;;;;;N;;;;; -0701;SYRIAC SUPRALINEAR FULL STOP;Po;0;AL;;;;;N;;;;; -0702;SYRIAC SUBLINEAR FULL STOP;Po;0;AL;;;;;N;;;;; -0703;SYRIAC SUPRALINEAR COLON;Po;0;AL;;;;;N;;;;; -0704;SYRIAC SUBLINEAR COLON;Po;0;AL;;;;;N;;;;; -0705;SYRIAC HORIZONTAL COLON;Po;0;AL;;;;;N;;;;; -0706;SYRIAC COLON SKEWED LEFT;Po;0;AL;;;;;N;;;;; -0707;SYRIAC COLON SKEWED RIGHT;Po;0;AL;;;;;N;;;;; -0708;SYRIAC SUPRALINEAR COLON SKEWED LEFT;Po;0;AL;;;;;N;;;;; -0709;SYRIAC SUBLINEAR COLON SKEWED RIGHT;Po;0;AL;;;;;N;;;;; -070A;SYRIAC CONTRACTION;Po;0;AL;;;;;N;;;;; -070B;SYRIAC HARKLEAN OBELUS;Po;0;AL;;;;;N;;;;; -070C;SYRIAC HARKLEAN METOBELUS;Po;0;AL;;;;;N;;;;; -070D;SYRIAC HARKLEAN ASTERISCUS;Po;0;AL;;;;;N;;;;; -070F;SYRIAC ABBREVIATION MARK;Cf;0;AN;;;;;N;;;;; -0710;SYRIAC LETTER ALAPH;Lo;0;AL;;;;;N;;;;; -0711;SYRIAC LETTER SUPERSCRIPT ALAPH;Mn;36;NSM;;;;;N;;;;; -0712;SYRIAC LETTER BETH;Lo;0;AL;;;;;N;;;;; -0713;SYRIAC LETTER GAMAL;Lo;0;AL;;;;;N;;;;; -0714;SYRIAC LETTER GAMAL GARSHUNI;Lo;0;AL;;;;;N;;;;; -0715;SYRIAC LETTER DALATH;Lo;0;AL;;;;;N;;;;; -0716;SYRIAC LETTER DOTLESS DALATH RISH;Lo;0;AL;;;;;N;;;;; -0717;SYRIAC LETTER HE;Lo;0;AL;;;;;N;;;;; -0718;SYRIAC LETTER WAW;Lo;0;AL;;;;;N;;;;; -0719;SYRIAC LETTER ZAIN;Lo;0;AL;;;;;N;;;;; -071A;SYRIAC LETTER HETH;Lo;0;AL;;;;;N;;;;; -071B;SYRIAC LETTER TETH;Lo;0;AL;;;;;N;;;;; -071C;SYRIAC LETTER TETH GARSHUNI;Lo;0;AL;;;;;N;;;;; -071D;SYRIAC LETTER YUDH;Lo;0;AL;;;;;N;;;;; -071E;SYRIAC LETTER YUDH HE;Lo;0;AL;;;;;N;;;;; -071F;SYRIAC LETTER KAPH;Lo;0;AL;;;;;N;;;;; -0720;SYRIAC LETTER LAMADH;Lo;0;AL;;;;;N;;;;; -0721;SYRIAC LETTER MIM;Lo;0;AL;;;;;N;;;;; -0722;SYRIAC LETTER NUN;Lo;0;AL;;;;;N;;;;; -0723;SYRIAC LETTER SEMKATH;Lo;0;AL;;;;;N;;;;; -0724;SYRIAC LETTER FINAL SEMKATH;Lo;0;AL;;;;;N;;;;; -0725;SYRIAC LETTER E;Lo;0;AL;;;;;N;;;;; -0726;SYRIAC LETTER PE;Lo;0;AL;;;;;N;;;;; -0727;SYRIAC LETTER REVERSED PE;Lo;0;AL;;;;;N;;;;; -0728;SYRIAC LETTER SADHE;Lo;0;AL;;;;;N;;;;; -0729;SYRIAC LETTER QAPH;Lo;0;AL;;;;;N;;;;; -072A;SYRIAC LETTER RISH;Lo;0;AL;;;;;N;;;;; -072B;SYRIAC LETTER SHIN;Lo;0;AL;;;;;N;;;;; -072C;SYRIAC LETTER TAW;Lo;0;AL;;;;;N;;;;; -072D;SYRIAC LETTER PERSIAN BHETH;Lo;0;AL;;;;;N;;;;; -072E;SYRIAC LETTER PERSIAN GHAMAL;Lo;0;AL;;;;;N;;;;; -072F;SYRIAC LETTER PERSIAN DHALATH;Lo;0;AL;;;;;N;;;;; -0730;SYRIAC PTHAHA ABOVE;Mn;230;NSM;;;;;N;;;;; -0731;SYRIAC PTHAHA BELOW;Mn;220;NSM;;;;;N;;;;; -0732;SYRIAC PTHAHA DOTTED;Mn;230;NSM;;;;;N;;;;; -0733;SYRIAC ZQAPHA ABOVE;Mn;230;NSM;;;;;N;;;;; -0734;SYRIAC ZQAPHA BELOW;Mn;220;NSM;;;;;N;;;;; -0735;SYRIAC ZQAPHA DOTTED;Mn;230;NSM;;;;;N;;;;; -0736;SYRIAC RBASA ABOVE;Mn;230;NSM;;;;;N;;;;; -0737;SYRIAC RBASA BELOW;Mn;220;NSM;;;;;N;;;;; -0738;SYRIAC DOTTED ZLAMA HORIZONTAL;Mn;220;NSM;;;;;N;;;;; -0739;SYRIAC DOTTED ZLAMA ANGULAR;Mn;220;NSM;;;;;N;;;;; -073A;SYRIAC HBASA ABOVE;Mn;230;NSM;;;;;N;;;;; -073B;SYRIAC HBASA BELOW;Mn;220;NSM;;;;;N;;;;; -073C;SYRIAC HBASA-ESASA DOTTED;Mn;220;NSM;;;;;N;;;;; -073D;SYRIAC ESASA ABOVE;Mn;230;NSM;;;;;N;;;;; -073E;SYRIAC ESASA BELOW;Mn;220;NSM;;;;;N;;;;; -073F;SYRIAC RWAHA;Mn;230;NSM;;;;;N;;;;; -0740;SYRIAC FEMININE DOT;Mn;230;NSM;;;;;N;;;;; -0741;SYRIAC QUSHSHAYA;Mn;230;NSM;;;;;N;;;;; -0742;SYRIAC RUKKAKHA;Mn;220;NSM;;;;;N;;;;; -0743;SYRIAC TWO VERTICAL DOTS ABOVE;Mn;230;NSM;;;;;N;;;;; -0744;SYRIAC TWO VERTICAL DOTS BELOW;Mn;220;NSM;;;;;N;;;;; -0745;SYRIAC THREE DOTS ABOVE;Mn;230;NSM;;;;;N;;;;; -0746;SYRIAC THREE DOTS BELOW;Mn;220;NSM;;;;;N;;;;; -0747;SYRIAC OBLIQUE LINE ABOVE;Mn;230;NSM;;;;;N;;;;; -0748;SYRIAC OBLIQUE LINE BELOW;Mn;220;NSM;;;;;N;;;;; -0749;SYRIAC MUSIC;Mn;230;NSM;;;;;N;;;;; -074A;SYRIAC BARREKH;Mn;230;NSM;;;;;N;;;;; -074D;SYRIAC LETTER SOGDIAN ZHAIN;Lo;0;AL;;;;;N;;;;; -074E;SYRIAC LETTER SOGDIAN KHAPH;Lo;0;AL;;;;;N;;;;; -074F;SYRIAC LETTER SOGDIAN FE;Lo;0;AL;;;;;N;;;;; -0750;ARABIC LETTER BEH WITH THREE DOTS HORIZONTALLY BELOW;Lo;0;AL;;;;;N;;;;; -0751;ARABIC LETTER BEH WITH DOT BELOW AND THREE DOTS ABOVE;Lo;0;AL;;;;;N;;;;; -0752;ARABIC LETTER BEH WITH THREE DOTS POINTING UPWARDS BELOW;Lo;0;AL;;;;;N;;;;; -0753;ARABIC LETTER BEH WITH THREE DOTS POINTING UPWARDS BELOW AND TWO DOTS ABOVE;Lo;0;AL;;;;;N;;;;; -0754;ARABIC LETTER BEH WITH TWO DOTS BELOW AND DOT ABOVE;Lo;0;AL;;;;;N;;;;; -0755;ARABIC LETTER BEH WITH INVERTED SMALL V BELOW;Lo;0;AL;;;;;N;;;;; -0756;ARABIC LETTER BEH WITH SMALL V;Lo;0;AL;;;;;N;;;;; -0757;ARABIC LETTER HAH WITH TWO DOTS ABOVE;Lo;0;AL;;;;;N;;;;; -0758;ARABIC LETTER HAH WITH THREE DOTS POINTING UPWARDS BELOW;Lo;0;AL;;;;;N;;;;; -0759;ARABIC LETTER DAL WITH TWO DOTS VERTICALLY BELOW AND SMALL TAH;Lo;0;AL;;;;;N;;;;; -075A;ARABIC LETTER DAL WITH INVERTED SMALL V BELOW;Lo;0;AL;;;;;N;;;;; -075B;ARABIC LETTER REH WITH STROKE;Lo;0;AL;;;;;N;;;;; -075C;ARABIC LETTER SEEN WITH FOUR DOTS ABOVE;Lo;0;AL;;;;;N;;;;; -075D;ARABIC LETTER AIN WITH TWO DOTS ABOVE;Lo;0;AL;;;;;N;;;;; -075E;ARABIC LETTER AIN WITH THREE DOTS POINTING DOWNWARDS ABOVE;Lo;0;AL;;;;;N;;;;; -075F;ARABIC LETTER AIN WITH TWO DOTS VERTICALLY ABOVE;Lo;0;AL;;;;;N;;;;; -0760;ARABIC LETTER FEH WITH TWO DOTS BELOW;Lo;0;AL;;;;;N;;;;; -0761;ARABIC LETTER FEH WITH THREE DOTS POINTING UPWARDS BELOW;Lo;0;AL;;;;;N;;;;; -0762;ARABIC LETTER KEHEH WITH DOT ABOVE;Lo;0;AL;;;;;N;;;;; -0763;ARABIC LETTER KEHEH WITH THREE DOTS ABOVE;Lo;0;AL;;;;;N;;;;; -0764;ARABIC LETTER KEHEH WITH THREE DOTS POINTING UPWARDS BELOW;Lo;0;AL;;;;;N;;;;; -0765;ARABIC LETTER MEEM WITH DOT ABOVE;Lo;0;AL;;;;;N;;;;; -0766;ARABIC LETTER MEEM WITH DOT BELOW;Lo;0;AL;;;;;N;;;;; -0767;ARABIC LETTER NOON WITH TWO DOTS BELOW;Lo;0;AL;;;;;N;;;;; -0768;ARABIC LETTER NOON WITH SMALL TAH;Lo;0;AL;;;;;N;;;;; -0769;ARABIC LETTER NOON WITH SMALL V;Lo;0;AL;;;;;N;;;;; -076A;ARABIC LETTER LAM WITH BAR;Lo;0;AL;;;;;N;;;;; -076B;ARABIC LETTER REH WITH TWO DOTS VERTICALLY ABOVE;Lo;0;AL;;;;;N;;;;; -076C;ARABIC LETTER REH WITH HAMZA ABOVE;Lo;0;AL;;;;;N;;;;; -076D;ARABIC LETTER SEEN WITH TWO DOTS VERTICALLY ABOVE;Lo;0;AL;;;;;N;;;;; -076E;ARABIC LETTER HAH WITH SMALL ARABIC LETTER TAH BELOW;Lo;0;AL;;;;;N;;;;; -076F;ARABIC LETTER HAH WITH SMALL ARABIC LETTER TAH AND TWO DOTS;Lo;0;AL;;;;;N;;;;; -0770;ARABIC LETTER SEEN WITH SMALL ARABIC LETTER TAH AND TWO DOTS;Lo;0;AL;;;;;N;;;;; -0771;ARABIC LETTER REH WITH SMALL ARABIC LETTER TAH AND TWO DOTS;Lo;0;AL;;;;;N;;;;; -0772;ARABIC LETTER HAH WITH SMALL ARABIC LETTER TAH ABOVE;Lo;0;AL;;;;;N;;;;; -0773;ARABIC LETTER ALEF WITH EXTENDED ARABIC-INDIC DIGIT TWO ABOVE;Lo;0;AL;;;;;N;;;;; -0774;ARABIC LETTER ALEF WITH EXTENDED ARABIC-INDIC DIGIT THREE ABOVE;Lo;0;AL;;;;;N;;;;; -0775;ARABIC LETTER FARSI YEH WITH EXTENDED ARABIC-INDIC DIGIT TWO ABOVE;Lo;0;AL;;;;;N;;;;; -0776;ARABIC LETTER FARSI YEH WITH EXTENDED ARABIC-INDIC DIGIT THREE ABOVE;Lo;0;AL;;;;;N;;;;; -0777;ARABIC LETTER FARSI YEH WITH EXTENDED ARABIC-INDIC DIGIT FOUR BELOW;Lo;0;AL;;;;;N;;;;; -0778;ARABIC LETTER WAW WITH EXTENDED ARABIC-INDIC DIGIT TWO ABOVE;Lo;0;AL;;;;;N;;;;; -0779;ARABIC LETTER WAW WITH EXTENDED ARABIC-INDIC DIGIT THREE ABOVE;Lo;0;AL;;;;;N;;;;; -077A;ARABIC LETTER YEH BARREE WITH EXTENDED ARABIC-INDIC DIGIT TWO ABOVE;Lo;0;AL;;;;;N;;;;; -077B;ARABIC LETTER YEH BARREE WITH EXTENDED ARABIC-INDIC DIGIT THREE ABOVE;Lo;0;AL;;;;;N;;;;; -077C;ARABIC LETTER HAH WITH EXTENDED ARABIC-INDIC DIGIT FOUR BELOW;Lo;0;AL;;;;;N;;;;; -077D;ARABIC LETTER SEEN WITH EXTENDED ARABIC-INDIC DIGIT FOUR ABOVE;Lo;0;AL;;;;;N;;;;; -077E;ARABIC LETTER SEEN WITH INVERTED V;Lo;0;AL;;;;;N;;;;; -077F;ARABIC LETTER KAF WITH TWO DOTS ABOVE;Lo;0;AL;;;;;N;;;;; -0780;THAANA LETTER HAA;Lo;0;AL;;;;;N;;;;; -0781;THAANA LETTER SHAVIYANI;Lo;0;AL;;;;;N;;;;; -0782;THAANA LETTER NOONU;Lo;0;AL;;;;;N;;;;; -0783;THAANA LETTER RAA;Lo;0;AL;;;;;N;;;;; -0784;THAANA LETTER BAA;Lo;0;AL;;;;;N;;;;; -0785;THAANA LETTER LHAVIYANI;Lo;0;AL;;;;;N;;;;; -0786;THAANA LETTER KAAFU;Lo;0;AL;;;;;N;;;;; -0787;THAANA LETTER ALIFU;Lo;0;AL;;;;;N;;;;; -0788;THAANA LETTER VAAVU;Lo;0;AL;;;;;N;;;;; -0789;THAANA LETTER MEEMU;Lo;0;AL;;;;;N;;;;; -078A;THAANA LETTER FAAFU;Lo;0;AL;;;;;N;;;;; -078B;THAANA LETTER DHAALU;Lo;0;AL;;;;;N;;;;; -078C;THAANA LETTER THAA;Lo;0;AL;;;;;N;;;;; -078D;THAANA LETTER LAAMU;Lo;0;AL;;;;;N;;;;; -078E;THAANA LETTER GAAFU;Lo;0;AL;;;;;N;;;;; -078F;THAANA LETTER GNAVIYANI;Lo;0;AL;;;;;N;;;;; -0790;THAANA LETTER SEENU;Lo;0;AL;;;;;N;;;;; -0791;THAANA LETTER DAVIYANI;Lo;0;AL;;;;;N;;;;; -0792;THAANA LETTER ZAVIYANI;Lo;0;AL;;;;;N;;;;; -0793;THAANA LETTER TAVIYANI;Lo;0;AL;;;;;N;;;;; -0794;THAANA LETTER YAA;Lo;0;AL;;;;;N;;;;; -0795;THAANA LETTER PAVIYANI;Lo;0;AL;;;;;N;;;;; -0796;THAANA LETTER JAVIYANI;Lo;0;AL;;;;;N;;;;; -0797;THAANA LETTER CHAVIYANI;Lo;0;AL;;;;;N;;;;; -0798;THAANA LETTER TTAA;Lo;0;AL;;;;;N;;;;; -0799;THAANA LETTER HHAA;Lo;0;AL;;;;;N;;;;; -079A;THAANA LETTER KHAA;Lo;0;AL;;;;;N;;;;; -079B;THAANA LETTER THAALU;Lo;0;AL;;;;;N;;;;; -079C;THAANA LETTER ZAA;Lo;0;AL;;;;;N;;;;; -079D;THAANA LETTER SHEENU;Lo;0;AL;;;;;N;;;;; -079E;THAANA LETTER SAADHU;Lo;0;AL;;;;;N;;;;; -079F;THAANA LETTER DAADHU;Lo;0;AL;;;;;N;;;;; -07A0;THAANA LETTER TO;Lo;0;AL;;;;;N;;;;; -07A1;THAANA LETTER ZO;Lo;0;AL;;;;;N;;;;; -07A2;THAANA LETTER AINU;Lo;0;AL;;;;;N;;;;; -07A3;THAANA LETTER GHAINU;Lo;0;AL;;;;;N;;;;; -07A4;THAANA LETTER QAAFU;Lo;0;AL;;;;;N;;;;; -07A5;THAANA LETTER WAAVU;Lo;0;AL;;;;;N;;;;; -07A6;THAANA ABAFILI;Mn;0;NSM;;;;;N;;;;; -07A7;THAANA AABAAFILI;Mn;0;NSM;;;;;N;;;;; -07A8;THAANA IBIFILI;Mn;0;NSM;;;;;N;;;;; -07A9;THAANA EEBEEFILI;Mn;0;NSM;;;;;N;;;;; -07AA;THAANA UBUFILI;Mn;0;NSM;;;;;N;;;;; -07AB;THAANA OOBOOFILI;Mn;0;NSM;;;;;N;;;;; -07AC;THAANA EBEFILI;Mn;0;NSM;;;;;N;;;;; -07AD;THAANA EYBEYFILI;Mn;0;NSM;;;;;N;;;;; -07AE;THAANA OBOFILI;Mn;0;NSM;;;;;N;;;;; -07AF;THAANA OABOAFILI;Mn;0;NSM;;;;;N;;;;; -07B0;THAANA SUKUN;Mn;0;NSM;;;;;N;;;;; -07B1;THAANA LETTER NAA;Lo;0;AL;;;;;N;;;;; -07C0;NKO DIGIT ZERO;Nd;0;R;;0;0;0;N;;;;; -07C1;NKO DIGIT ONE;Nd;0;R;;1;1;1;N;;;;; -07C2;NKO DIGIT TWO;Nd;0;R;;2;2;2;N;;;;; -07C3;NKO DIGIT THREE;Nd;0;R;;3;3;3;N;;;;; -07C4;NKO DIGIT FOUR;Nd;0;R;;4;4;4;N;;;;; -07C5;NKO DIGIT FIVE;Nd;0;R;;5;5;5;N;;;;; -07C6;NKO DIGIT SIX;Nd;0;R;;6;6;6;N;;;;; -07C7;NKO DIGIT SEVEN;Nd;0;R;;7;7;7;N;;;;; -07C8;NKO DIGIT EIGHT;Nd;0;R;;8;8;8;N;;;;; -07C9;NKO DIGIT NINE;Nd;0;R;;9;9;9;N;;;;; -07CA;NKO LETTER A;Lo;0;R;;;;;N;;;;; -07CB;NKO LETTER EE;Lo;0;R;;;;;N;;;;; -07CC;NKO LETTER I;Lo;0;R;;;;;N;;;;; -07CD;NKO LETTER E;Lo;0;R;;;;;N;;;;; -07CE;NKO LETTER U;Lo;0;R;;;;;N;;;;; -07CF;NKO LETTER OO;Lo;0;R;;;;;N;;;;; -07D0;NKO LETTER O;Lo;0;R;;;;;N;;;;; -07D1;NKO LETTER DAGBASINNA;Lo;0;R;;;;;N;;;;; -07D2;NKO LETTER N;Lo;0;R;;;;;N;;;;; -07D3;NKO LETTER BA;Lo;0;R;;;;;N;;;;; -07D4;NKO LETTER PA;Lo;0;R;;;;;N;;;;; -07D5;NKO LETTER TA;Lo;0;R;;;;;N;;;;; -07D6;NKO LETTER JA;Lo;0;R;;;;;N;;;;; -07D7;NKO LETTER CHA;Lo;0;R;;;;;N;;;;; -07D8;NKO LETTER DA;Lo;0;R;;;;;N;;;;; -07D9;NKO LETTER RA;Lo;0;R;;;;;N;;;;; -07DA;NKO LETTER RRA;Lo;0;R;;;;;N;;;;; -07DB;NKO LETTER SA;Lo;0;R;;;;;N;;;;; -07DC;NKO LETTER GBA;Lo;0;R;;;;;N;;;;; -07DD;NKO LETTER FA;Lo;0;R;;;;;N;;;;; -07DE;NKO LETTER KA;Lo;0;R;;;;;N;;;;; -07DF;NKO LETTER LA;Lo;0;R;;;;;N;;;;; -07E0;NKO LETTER NA WOLOSO;Lo;0;R;;;;;N;;;;; -07E1;NKO LETTER MA;Lo;0;R;;;;;N;;;;; -07E2;NKO LETTER NYA;Lo;0;R;;;;;N;;;;; -07E3;NKO LETTER NA;Lo;0;R;;;;;N;;;;; -07E4;NKO LETTER HA;Lo;0;R;;;;;N;;;;; -07E5;NKO LETTER WA;Lo;0;R;;;;;N;;;;; -07E6;NKO LETTER YA;Lo;0;R;;;;;N;;;;; -07E7;NKO LETTER NYA WOLOSO;Lo;0;R;;;;;N;;;;; -07E8;NKO LETTER JONA JA;Lo;0;R;;;;;N;;;;; -07E9;NKO LETTER JONA CHA;Lo;0;R;;;;;N;;;;; -07EA;NKO LETTER JONA RA;Lo;0;R;;;;;N;;;;; -07EB;NKO COMBINING SHORT HIGH TONE;Mn;230;NSM;;;;;N;;;;; -07EC;NKO COMBINING SHORT LOW TONE;Mn;230;NSM;;;;;N;;;;; -07ED;NKO COMBINING SHORT RISING TONE;Mn;230;NSM;;;;;N;;;;; -07EE;NKO COMBINING LONG DESCENDING TONE;Mn;230;NSM;;;;;N;;;;; -07EF;NKO COMBINING LONG HIGH TONE;Mn;230;NSM;;;;;N;;;;; -07F0;NKO COMBINING LONG LOW TONE;Mn;230;NSM;;;;;N;;;;; -07F1;NKO COMBINING LONG RISING TONE;Mn;230;NSM;;;;;N;;;;; -07F2;NKO COMBINING NASALIZATION MARK;Mn;220;NSM;;;;;N;;;;; -07F3;NKO COMBINING DOUBLE DOT ABOVE;Mn;230;NSM;;;;;N;;;;; -07F4;NKO HIGH TONE APOSTROPHE;Lm;0;R;;;;;N;;;;; -07F5;NKO LOW TONE APOSTROPHE;Lm;0;R;;;;;N;;;;; -07F6;NKO SYMBOL OO DENNEN;So;0;ON;;;;;N;;;;; -07F7;NKO SYMBOL GBAKURUNEN;Po;0;ON;;;;;N;;;;; -07F8;NKO COMMA;Po;0;ON;;;;;N;;;;; -07F9;NKO EXCLAMATION MARK;Po;0;ON;;;;;N;;;;; -07FA;NKO LAJANYALAN;Lm;0;R;;;;;N;;;;; -0800;SAMARITAN LETTER ALAF;Lo;0;R;;;;;N;;;;; -0801;SAMARITAN LETTER BIT;Lo;0;R;;;;;N;;;;; -0802;SAMARITAN LETTER GAMAN;Lo;0;R;;;;;N;;;;; -0803;SAMARITAN LETTER DALAT;Lo;0;R;;;;;N;;;;; -0804;SAMARITAN LETTER IY;Lo;0;R;;;;;N;;;;; -0805;SAMARITAN LETTER BAA;Lo;0;R;;;;;N;;;;; -0806;SAMARITAN LETTER ZEN;Lo;0;R;;;;;N;;;;; -0807;SAMARITAN LETTER IT;Lo;0;R;;;;;N;;;;; -0808;SAMARITAN LETTER TIT;Lo;0;R;;;;;N;;;;; -0809;SAMARITAN LETTER YUT;Lo;0;R;;;;;N;;;;; -080A;SAMARITAN LETTER KAAF;Lo;0;R;;;;;N;;;;; -080B;SAMARITAN LETTER LABAT;Lo;0;R;;;;;N;;;;; -080C;SAMARITAN LETTER MIM;Lo;0;R;;;;;N;;;;; -080D;SAMARITAN LETTER NUN;Lo;0;R;;;;;N;;;;; -080E;SAMARITAN LETTER SINGAAT;Lo;0;R;;;;;N;;;;; -080F;SAMARITAN LETTER IN;Lo;0;R;;;;;N;;;;; -0810;SAMARITAN LETTER FI;Lo;0;R;;;;;N;;;;; -0811;SAMARITAN LETTER TSAADIY;Lo;0;R;;;;;N;;;;; -0812;SAMARITAN LETTER QUF;Lo;0;R;;;;;N;;;;; -0813;SAMARITAN LETTER RISH;Lo;0;R;;;;;N;;;;; -0814;SAMARITAN LETTER SHAN;Lo;0;R;;;;;N;;;;; -0815;SAMARITAN LETTER TAAF;Lo;0;R;;;;;N;;;;; -0816;SAMARITAN MARK IN;Mn;230;NSM;;;;;N;;;;; -0817;SAMARITAN MARK IN-ALAF;Mn;230;NSM;;;;;N;;;;; -0818;SAMARITAN MARK OCCLUSION;Mn;230;NSM;;;;;N;;;;; -0819;SAMARITAN MARK DAGESH;Mn;230;NSM;;;;;N;;;;; -081A;SAMARITAN MODIFIER LETTER EPENTHETIC YUT;Lm;0;R;;;;;N;;;;; -081B;SAMARITAN MARK EPENTHETIC YUT;Mn;230;NSM;;;;;N;;;;; -081C;SAMARITAN VOWEL SIGN LONG E;Mn;230;NSM;;;;;N;;;;; -081D;SAMARITAN VOWEL SIGN E;Mn;230;NSM;;;;;N;;;;; -081E;SAMARITAN VOWEL SIGN OVERLONG AA;Mn;230;NSM;;;;;N;;;;; -081F;SAMARITAN VOWEL SIGN LONG AA;Mn;230;NSM;;;;;N;;;;; -0820;SAMARITAN VOWEL SIGN AA;Mn;230;NSM;;;;;N;;;;; -0821;SAMARITAN VOWEL SIGN OVERLONG A;Mn;230;NSM;;;;;N;;;;; -0822;SAMARITAN VOWEL SIGN LONG A;Mn;230;NSM;;;;;N;;;;; -0823;SAMARITAN VOWEL SIGN A;Mn;230;NSM;;;;;N;;;;; -0824;SAMARITAN MODIFIER LETTER SHORT A;Lm;0;R;;;;;N;;;;; -0825;SAMARITAN VOWEL SIGN SHORT A;Mn;230;NSM;;;;;N;;;;; -0826;SAMARITAN VOWEL SIGN LONG U;Mn;230;NSM;;;;;N;;;;; -0827;SAMARITAN VOWEL SIGN U;Mn;230;NSM;;;;;N;;;;; -0828;SAMARITAN MODIFIER LETTER I;Lm;0;R;;;;;N;;;;; -0829;SAMARITAN VOWEL SIGN LONG I;Mn;230;NSM;;;;;N;;;;; -082A;SAMARITAN VOWEL SIGN I;Mn;230;NSM;;;;;N;;;;; -082B;SAMARITAN VOWEL SIGN O;Mn;230;NSM;;;;;N;;;;; -082C;SAMARITAN VOWEL SIGN SUKUN;Mn;230;NSM;;;;;N;;;;; -082D;SAMARITAN MARK NEQUDAA;Mn;230;NSM;;;;;N;;;;; -0830;SAMARITAN PUNCTUATION NEQUDAA;Po;0;R;;;;;N;;;;; -0831;SAMARITAN PUNCTUATION AFSAAQ;Po;0;R;;;;;N;;;;; -0832;SAMARITAN PUNCTUATION ANGED;Po;0;R;;;;;N;;;;; -0833;SAMARITAN PUNCTUATION BAU;Po;0;R;;;;;N;;;;; -0834;SAMARITAN PUNCTUATION ATMAAU;Po;0;R;;;;;N;;;;; -0835;SAMARITAN PUNCTUATION SHIYYAALAA;Po;0;R;;;;;N;;;;; -0836;SAMARITAN ABBREVIATION MARK;Po;0;R;;;;;N;;;;; -0837;SAMARITAN PUNCTUATION MELODIC QITSA;Po;0;R;;;;;N;;;;; -0838;SAMARITAN PUNCTUATION ZIQAA;Po;0;R;;;;;N;;;;; -0839;SAMARITAN PUNCTUATION QITSA;Po;0;R;;;;;N;;;;; -083A;SAMARITAN PUNCTUATION ZAEF;Po;0;R;;;;;N;;;;; -083B;SAMARITAN PUNCTUATION TURU;Po;0;R;;;;;N;;;;; -083C;SAMARITAN PUNCTUATION ARKAANU;Po;0;R;;;;;N;;;;; -083D;SAMARITAN PUNCTUATION SOF MASHFAAT;Po;0;R;;;;;N;;;;; -083E;SAMARITAN PUNCTUATION ANNAAU;Po;0;R;;;;;N;;;;; -0840;MANDAIC LETTER HALQA;Lo;0;R;;;;;N;;;;; -0841;MANDAIC LETTER AB;Lo;0;R;;;;;N;;;;; -0842;MANDAIC LETTER AG;Lo;0;R;;;;;N;;;;; -0843;MANDAIC LETTER AD;Lo;0;R;;;;;N;;;;; -0844;MANDAIC LETTER AH;Lo;0;R;;;;;N;;;;; -0845;MANDAIC LETTER USHENNA;Lo;0;R;;;;;N;;;;; -0846;MANDAIC LETTER AZ;Lo;0;R;;;;;N;;;;; -0847;MANDAIC LETTER IT;Lo;0;R;;;;;N;;;;; -0848;MANDAIC LETTER ATT;Lo;0;R;;;;;N;;;;; -0849;MANDAIC LETTER AKSA;Lo;0;R;;;;;N;;;;; -084A;MANDAIC LETTER AK;Lo;0;R;;;;;N;;;;; -084B;MANDAIC LETTER AL;Lo;0;R;;;;;N;;;;; -084C;MANDAIC LETTER AM;Lo;0;R;;;;;N;;;;; -084D;MANDAIC LETTER AN;Lo;0;R;;;;;N;;;;; -084E;MANDAIC LETTER AS;Lo;0;R;;;;;N;;;;; -084F;MANDAIC LETTER IN;Lo;0;R;;;;;N;;;;; -0850;MANDAIC LETTER AP;Lo;0;R;;;;;N;;;;; -0851;MANDAIC LETTER ASZ;Lo;0;R;;;;;N;;;;; -0852;MANDAIC LETTER AQ;Lo;0;R;;;;;N;;;;; -0853;MANDAIC LETTER AR;Lo;0;R;;;;;N;;;;; -0854;MANDAIC LETTER ASH;Lo;0;R;;;;;N;;;;; -0855;MANDAIC LETTER AT;Lo;0;R;;;;;N;;;;; -0856;MANDAIC LETTER DUSHENNA;Lo;0;R;;;;;N;;;;; -0857;MANDAIC LETTER KAD;Lo;0;R;;;;;N;;;;; -0858;MANDAIC LETTER AIN;Lo;0;R;;;;;N;;;;; -0859;MANDAIC AFFRICATION MARK;Mn;220;NSM;;;;;N;;;;; -085A;MANDAIC VOCALIZATION MARK;Mn;220;NSM;;;;;N;;;;; -085B;MANDAIC GEMINATION MARK;Mn;220;NSM;;;;;N;;;;; -085E;MANDAIC PUNCTUATION;Po;0;R;;;;;N;;;;; -0900;DEVANAGARI SIGN INVERTED CANDRABINDU;Mn;0;NSM;;;;;N;;;;; -0901;DEVANAGARI SIGN CANDRABINDU;Mn;0;NSM;;;;;N;;;;; -0902;DEVANAGARI SIGN ANUSVARA;Mn;0;NSM;;;;;N;;;;; -0903;DEVANAGARI SIGN VISARGA;Mc;0;L;;;;;N;;;;; -0904;DEVANAGARI LETTER SHORT A;Lo;0;L;;;;;N;;;;; -0905;DEVANAGARI LETTER A;Lo;0;L;;;;;N;;;;; -0906;DEVANAGARI LETTER AA;Lo;0;L;;;;;N;;;;; -0907;DEVANAGARI LETTER I;Lo;0;L;;;;;N;;;;; -0908;DEVANAGARI LETTER II;Lo;0;L;;;;;N;;;;; -0909;DEVANAGARI LETTER U;Lo;0;L;;;;;N;;;;; -090A;DEVANAGARI LETTER UU;Lo;0;L;;;;;N;;;;; -090B;DEVANAGARI LETTER VOCALIC R;Lo;0;L;;;;;N;;;;; -090C;DEVANAGARI LETTER VOCALIC L;Lo;0;L;;;;;N;;;;; -090D;DEVANAGARI LETTER CANDRA E;Lo;0;L;;;;;N;;;;; -090E;DEVANAGARI LETTER SHORT E;Lo;0;L;;;;;N;;;;; -090F;DEVANAGARI LETTER E;Lo;0;L;;;;;N;;;;; -0910;DEVANAGARI LETTER AI;Lo;0;L;;;;;N;;;;; -0911;DEVANAGARI LETTER CANDRA O;Lo;0;L;;;;;N;;;;; -0912;DEVANAGARI LETTER SHORT O;Lo;0;L;;;;;N;;;;; -0913;DEVANAGARI LETTER O;Lo;0;L;;;;;N;;;;; -0914;DEVANAGARI LETTER AU;Lo;0;L;;;;;N;;;;; -0915;DEVANAGARI LETTER KA;Lo;0;L;;;;;N;;;;; -0916;DEVANAGARI LETTER KHA;Lo;0;L;;;;;N;;;;; -0917;DEVANAGARI LETTER GA;Lo;0;L;;;;;N;;;;; -0918;DEVANAGARI LETTER GHA;Lo;0;L;;;;;N;;;;; -0919;DEVANAGARI LETTER NGA;Lo;0;L;;;;;N;;;;; -091A;DEVANAGARI LETTER CA;Lo;0;L;;;;;N;;;;; -091B;DEVANAGARI LETTER CHA;Lo;0;L;;;;;N;;;;; -091C;DEVANAGARI LETTER JA;Lo;0;L;;;;;N;;;;; -091D;DEVANAGARI LETTER JHA;Lo;0;L;;;;;N;;;;; -091E;DEVANAGARI LETTER NYA;Lo;0;L;;;;;N;;;;; -091F;DEVANAGARI LETTER TTA;Lo;0;L;;;;;N;;;;; -0920;DEVANAGARI LETTER TTHA;Lo;0;L;;;;;N;;;;; -0921;DEVANAGARI LETTER DDA;Lo;0;L;;;;;N;;;;; -0922;DEVANAGARI LETTER DDHA;Lo;0;L;;;;;N;;;;; -0923;DEVANAGARI LETTER NNA;Lo;0;L;;;;;N;;;;; -0924;DEVANAGARI LETTER TA;Lo;0;L;;;;;N;;;;; -0925;DEVANAGARI LETTER THA;Lo;0;L;;;;;N;;;;; -0926;DEVANAGARI LETTER DA;Lo;0;L;;;;;N;;;;; -0927;DEVANAGARI LETTER DHA;Lo;0;L;;;;;N;;;;; -0928;DEVANAGARI LETTER NA;Lo;0;L;;;;;N;;;;; -0929;DEVANAGARI LETTER NNNA;Lo;0;L;0928 093C;;;;N;;;;; -092A;DEVANAGARI LETTER PA;Lo;0;L;;;;;N;;;;; -092B;DEVANAGARI LETTER PHA;Lo;0;L;;;;;N;;;;; -092C;DEVANAGARI LETTER BA;Lo;0;L;;;;;N;;;;; -092D;DEVANAGARI LETTER BHA;Lo;0;L;;;;;N;;;;; -092E;DEVANAGARI LETTER MA;Lo;0;L;;;;;N;;;;; -092F;DEVANAGARI LETTER YA;Lo;0;L;;;;;N;;;;; -0930;DEVANAGARI LETTER RA;Lo;0;L;;;;;N;;;;; -0931;DEVANAGARI LETTER RRA;Lo;0;L;0930 093C;;;;N;;;;; -0932;DEVANAGARI LETTER LA;Lo;0;L;;;;;N;;;;; -0933;DEVANAGARI LETTER LLA;Lo;0;L;;;;;N;;;;; -0934;DEVANAGARI LETTER LLLA;Lo;0;L;0933 093C;;;;N;;;;; -0935;DEVANAGARI LETTER VA;Lo;0;L;;;;;N;;;;; -0936;DEVANAGARI LETTER SHA;Lo;0;L;;;;;N;;;;; -0937;DEVANAGARI LETTER SSA;Lo;0;L;;;;;N;;;;; -0938;DEVANAGARI LETTER SA;Lo;0;L;;;;;N;;;;; -0939;DEVANAGARI LETTER HA;Lo;0;L;;;;;N;;;;; -093A;DEVANAGARI VOWEL SIGN OE;Mn;0;NSM;;;;;N;;;;; -093B;DEVANAGARI VOWEL SIGN OOE;Mc;0;L;;;;;N;;;;; -093C;DEVANAGARI SIGN NUKTA;Mn;7;NSM;;;;;N;;;;; -093D;DEVANAGARI SIGN AVAGRAHA;Lo;0;L;;;;;N;;;;; -093E;DEVANAGARI VOWEL SIGN AA;Mc;0;L;;;;;N;;;;; -093F;DEVANAGARI VOWEL SIGN I;Mc;0;L;;;;;N;;;;; -0940;DEVANAGARI VOWEL SIGN II;Mc;0;L;;;;;N;;;;; -0941;DEVANAGARI VOWEL SIGN U;Mn;0;NSM;;;;;N;;;;; -0942;DEVANAGARI VOWEL SIGN UU;Mn;0;NSM;;;;;N;;;;; -0943;DEVANAGARI VOWEL SIGN VOCALIC R;Mn;0;NSM;;;;;N;;;;; -0944;DEVANAGARI VOWEL SIGN VOCALIC RR;Mn;0;NSM;;;;;N;;;;; -0945;DEVANAGARI VOWEL SIGN CANDRA E;Mn;0;NSM;;;;;N;;;;; -0946;DEVANAGARI VOWEL SIGN SHORT E;Mn;0;NSM;;;;;N;;;;; -0947;DEVANAGARI VOWEL SIGN E;Mn;0;NSM;;;;;N;;;;; -0948;DEVANAGARI VOWEL SIGN AI;Mn;0;NSM;;;;;N;;;;; -0949;DEVANAGARI VOWEL SIGN CANDRA O;Mc;0;L;;;;;N;;;;; -094A;DEVANAGARI VOWEL SIGN SHORT O;Mc;0;L;;;;;N;;;;; -094B;DEVANAGARI VOWEL SIGN O;Mc;0;L;;;;;N;;;;; -094C;DEVANAGARI VOWEL SIGN AU;Mc;0;L;;;;;N;;;;; -094D;DEVANAGARI SIGN VIRAMA;Mn;9;NSM;;;;;N;;;;; -094E;DEVANAGARI VOWEL SIGN PRISHTHAMATRA E;Mc;0;L;;;;;N;;;;; -094F;DEVANAGARI VOWEL SIGN AW;Mc;0;L;;;;;N;;;;; -0950;DEVANAGARI OM;Lo;0;L;;;;;N;;;;; -0951;DEVANAGARI STRESS SIGN UDATTA;Mn;230;NSM;;;;;N;;;;; -0952;DEVANAGARI STRESS SIGN ANUDATTA;Mn;220;NSM;;;;;N;;;;; -0953;DEVANAGARI GRAVE ACCENT;Mn;230;NSM;;;;;N;;;;; -0954;DEVANAGARI ACUTE ACCENT;Mn;230;NSM;;;;;N;;;;; -0955;DEVANAGARI VOWEL SIGN CANDRA LONG E;Mn;0;NSM;;;;;N;;;;; -0956;DEVANAGARI VOWEL SIGN UE;Mn;0;NSM;;;;;N;;;;; -0957;DEVANAGARI VOWEL SIGN UUE;Mn;0;NSM;;;;;N;;;;; -0958;DEVANAGARI LETTER QA;Lo;0;L;0915 093C;;;;N;;;;; -0959;DEVANAGARI LETTER KHHA;Lo;0;L;0916 093C;;;;N;;;;; -095A;DEVANAGARI LETTER GHHA;Lo;0;L;0917 093C;;;;N;;;;; -095B;DEVANAGARI LETTER ZA;Lo;0;L;091C 093C;;;;N;;;;; -095C;DEVANAGARI LETTER DDDHA;Lo;0;L;0921 093C;;;;N;;;;; -095D;DEVANAGARI LETTER RHA;Lo;0;L;0922 093C;;;;N;;;;; -095E;DEVANAGARI LETTER FA;Lo;0;L;092B 093C;;;;N;;;;; -095F;DEVANAGARI LETTER YYA;Lo;0;L;092F 093C;;;;N;;;;; -0960;DEVANAGARI LETTER VOCALIC RR;Lo;0;L;;;;;N;;;;; -0961;DEVANAGARI LETTER VOCALIC LL;Lo;0;L;;;;;N;;;;; -0962;DEVANAGARI VOWEL SIGN VOCALIC L;Mn;0;NSM;;;;;N;;;;; -0963;DEVANAGARI VOWEL SIGN VOCALIC LL;Mn;0;NSM;;;;;N;;;;; -0964;DEVANAGARI DANDA;Po;0;L;;;;;N;;;;; -0965;DEVANAGARI DOUBLE DANDA;Po;0;L;;;;;N;;;;; -0966;DEVANAGARI DIGIT ZERO;Nd;0;L;;0;0;0;N;;;;; -0967;DEVANAGARI DIGIT ONE;Nd;0;L;;1;1;1;N;;;;; -0968;DEVANAGARI DIGIT TWO;Nd;0;L;;2;2;2;N;;;;; -0969;DEVANAGARI DIGIT THREE;Nd;0;L;;3;3;3;N;;;;; -096A;DEVANAGARI DIGIT FOUR;Nd;0;L;;4;4;4;N;;;;; -096B;DEVANAGARI DIGIT FIVE;Nd;0;L;;5;5;5;N;;;;; -096C;DEVANAGARI DIGIT SIX;Nd;0;L;;6;6;6;N;;;;; -096D;DEVANAGARI DIGIT SEVEN;Nd;0;L;;7;7;7;N;;;;; -096E;DEVANAGARI DIGIT EIGHT;Nd;0;L;;8;8;8;N;;;;; -096F;DEVANAGARI DIGIT NINE;Nd;0;L;;9;9;9;N;;;;; -0970;DEVANAGARI ABBREVIATION SIGN;Po;0;L;;;;;N;;;;; -0971;DEVANAGARI SIGN HIGH SPACING DOT;Lm;0;L;;;;;N;;;;; -0972;DEVANAGARI LETTER CANDRA A;Lo;0;L;;;;;N;;;;; -0973;DEVANAGARI LETTER OE;Lo;0;L;;;;;N;;;;; -0974;DEVANAGARI LETTER OOE;Lo;0;L;;;;;N;;;;; -0975;DEVANAGARI LETTER AW;Lo;0;L;;;;;N;;;;; -0976;DEVANAGARI LETTER UE;Lo;0;L;;;;;N;;;;; -0977;DEVANAGARI LETTER UUE;Lo;0;L;;;;;N;;;;; -0979;DEVANAGARI LETTER ZHA;Lo;0;L;;;;;N;;;;; -097A;DEVANAGARI LETTER HEAVY YA;Lo;0;L;;;;;N;;;;; -097B;DEVANAGARI LETTER GGA;Lo;0;L;;;;;N;;;;; -097C;DEVANAGARI LETTER JJA;Lo;0;L;;;;;N;;;;; -097D;DEVANAGARI LETTER GLOTTAL STOP;Lo;0;L;;;;;N;;;;; -097E;DEVANAGARI LETTER DDDA;Lo;0;L;;;;;N;;;;; -097F;DEVANAGARI LETTER BBA;Lo;0;L;;;;;N;;;;; -0981;BENGALI SIGN CANDRABINDU;Mn;0;NSM;;;;;N;;;;; -0982;BENGALI SIGN ANUSVARA;Mc;0;L;;;;;N;;;;; -0983;BENGALI SIGN VISARGA;Mc;0;L;;;;;N;;;;; -0985;BENGALI LETTER A;Lo;0;L;;;;;N;;;;; -0986;BENGALI LETTER AA;Lo;0;L;;;;;N;;;;; -0987;BENGALI LETTER I;Lo;0;L;;;;;N;;;;; -0988;BENGALI LETTER II;Lo;0;L;;;;;N;;;;; -0989;BENGALI LETTER U;Lo;0;L;;;;;N;;;;; -098A;BENGALI LETTER UU;Lo;0;L;;;;;N;;;;; -098B;BENGALI LETTER VOCALIC R;Lo;0;L;;;;;N;;;;; -098C;BENGALI LETTER VOCALIC L;Lo;0;L;;;;;N;;;;; -098F;BENGALI LETTER E;Lo;0;L;;;;;N;;;;; -0990;BENGALI LETTER AI;Lo;0;L;;;;;N;;;;; -0993;BENGALI LETTER O;Lo;0;L;;;;;N;;;;; -0994;BENGALI LETTER AU;Lo;0;L;;;;;N;;;;; -0995;BENGALI LETTER KA;Lo;0;L;;;;;N;;;;; -0996;BENGALI LETTER KHA;Lo;0;L;;;;;N;;;;; -0997;BENGALI LETTER GA;Lo;0;L;;;;;N;;;;; -0998;BENGALI LETTER GHA;Lo;0;L;;;;;N;;;;; -0999;BENGALI LETTER NGA;Lo;0;L;;;;;N;;;;; -099A;BENGALI LETTER CA;Lo;0;L;;;;;N;;;;; -099B;BENGALI LETTER CHA;Lo;0;L;;;;;N;;;;; -099C;BENGALI LETTER JA;Lo;0;L;;;;;N;;;;; -099D;BENGALI LETTER JHA;Lo;0;L;;;;;N;;;;; -099E;BENGALI LETTER NYA;Lo;0;L;;;;;N;;;;; -099F;BENGALI LETTER TTA;Lo;0;L;;;;;N;;;;; -09A0;BENGALI LETTER TTHA;Lo;0;L;;;;;N;;;;; -09A1;BENGALI LETTER DDA;Lo;0;L;;;;;N;;;;; -09A2;BENGALI LETTER DDHA;Lo;0;L;;;;;N;;;;; -09A3;BENGALI LETTER NNA;Lo;0;L;;;;;N;;;;; -09A4;BENGALI LETTER TA;Lo;0;L;;;;;N;;;;; -09A5;BENGALI LETTER THA;Lo;0;L;;;;;N;;;;; -09A6;BENGALI LETTER DA;Lo;0;L;;;;;N;;;;; -09A7;BENGALI LETTER DHA;Lo;0;L;;;;;N;;;;; -09A8;BENGALI LETTER NA;Lo;0;L;;;;;N;;;;; -09AA;BENGALI LETTER PA;Lo;0;L;;;;;N;;;;; -09AB;BENGALI LETTER PHA;Lo;0;L;;;;;N;;;;; -09AC;BENGALI LETTER BA;Lo;0;L;;;;;N;;;;; -09AD;BENGALI LETTER BHA;Lo;0;L;;;;;N;;;;; -09AE;BENGALI LETTER MA;Lo;0;L;;;;;N;;;;; -09AF;BENGALI LETTER YA;Lo;0;L;;;;;N;;;;; -09B0;BENGALI LETTER RA;Lo;0;L;;;;;N;;;;; -09B2;BENGALI LETTER LA;Lo;0;L;;;;;N;;;;; -09B6;BENGALI LETTER SHA;Lo;0;L;;;;;N;;;;; -09B7;BENGALI LETTER SSA;Lo;0;L;;;;;N;;;;; -09B8;BENGALI LETTER SA;Lo;0;L;;;;;N;;;;; -09B9;BENGALI LETTER HA;Lo;0;L;;;;;N;;;;; -09BC;BENGALI SIGN NUKTA;Mn;7;NSM;;;;;N;;;;; -09BD;BENGALI SIGN AVAGRAHA;Lo;0;L;;;;;N;;;;; -09BE;BENGALI VOWEL SIGN AA;Mc;0;L;;;;;N;;;;; -09BF;BENGALI VOWEL SIGN I;Mc;0;L;;;;;N;;;;; -09C0;BENGALI VOWEL SIGN II;Mc;0;L;;;;;N;;;;; -09C1;BENGALI VOWEL SIGN U;Mn;0;NSM;;;;;N;;;;; -09C2;BENGALI VOWEL SIGN UU;Mn;0;NSM;;;;;N;;;;; -09C3;BENGALI VOWEL SIGN VOCALIC R;Mn;0;NSM;;;;;N;;;;; -09C4;BENGALI VOWEL SIGN VOCALIC RR;Mn;0;NSM;;;;;N;;;;; -09C7;BENGALI VOWEL SIGN E;Mc;0;L;;;;;N;;;;; -09C8;BENGALI VOWEL SIGN AI;Mc;0;L;;;;;N;;;;; -09CB;BENGALI VOWEL SIGN O;Mc;0;L;09C7 09BE;;;;N;;;;; -09CC;BENGALI VOWEL SIGN AU;Mc;0;L;09C7 09D7;;;;N;;;;; -09CD;BENGALI SIGN VIRAMA;Mn;9;NSM;;;;;N;;;;; -09CE;BENGALI LETTER KHANDA TA;Lo;0;L;;;;;N;;;;; -09D7;BENGALI AU LENGTH MARK;Mc;0;L;;;;;N;;;;; -09DC;BENGALI LETTER RRA;Lo;0;L;09A1 09BC;;;;N;;;;; -09DD;BENGALI LETTER RHA;Lo;0;L;09A2 09BC;;;;N;;;;; -09DF;BENGALI LETTER YYA;Lo;0;L;09AF 09BC;;;;N;;;;; -09E0;BENGALI LETTER VOCALIC RR;Lo;0;L;;;;;N;;;;; -09E1;BENGALI LETTER VOCALIC LL;Lo;0;L;;;;;N;;;;; -09E2;BENGALI VOWEL SIGN VOCALIC L;Mn;0;NSM;;;;;N;;;;; -09E3;BENGALI VOWEL SIGN VOCALIC LL;Mn;0;NSM;;;;;N;;;;; -09E6;BENGALI DIGIT ZERO;Nd;0;L;;0;0;0;N;;;;; -09E7;BENGALI DIGIT ONE;Nd;0;L;;1;1;1;N;;;;; -09E8;BENGALI DIGIT TWO;Nd;0;L;;2;2;2;N;;;;; -09E9;BENGALI DIGIT THREE;Nd;0;L;;3;3;3;N;;;;; -09EA;BENGALI DIGIT FOUR;Nd;0;L;;4;4;4;N;;;;; -09EB;BENGALI DIGIT FIVE;Nd;0;L;;5;5;5;N;;;;; -09EC;BENGALI DIGIT SIX;Nd;0;L;;6;6;6;N;;;;; -09ED;BENGALI DIGIT SEVEN;Nd;0;L;;7;7;7;N;;;;; -09EE;BENGALI DIGIT EIGHT;Nd;0;L;;8;8;8;N;;;;; -09EF;BENGALI DIGIT NINE;Nd;0;L;;9;9;9;N;;;;; -09F0;BENGALI LETTER RA WITH MIDDLE DIAGONAL;Lo;0;L;;;;;N;;;;; -09F1;BENGALI LETTER RA WITH LOWER DIAGONAL;Lo;0;L;;;;;N;BENGALI LETTER VA WITH LOWER DIAGONAL;;;; -09F2;BENGALI RUPEE MARK;Sc;0;ET;;;;;N;;;;; -09F3;BENGALI RUPEE SIGN;Sc;0;ET;;;;;N;;;;; -09F4;BENGALI CURRENCY NUMERATOR ONE;No;0;L;;;;1/16;N;;;;; -09F5;BENGALI CURRENCY NUMERATOR TWO;No;0;L;;;;1/8;N;;;;; -09F6;BENGALI CURRENCY NUMERATOR THREE;No;0;L;;;;3/16;N;;;;; -09F7;BENGALI CURRENCY NUMERATOR FOUR;No;0;L;;;;1/4;N;;;;; -09F8;BENGALI CURRENCY NUMERATOR ONE LESS THAN THE DENOMINATOR;No;0;L;;;;3/4;N;;;;; -09F9;BENGALI CURRENCY DENOMINATOR SIXTEEN;No;0;L;;;;16;N;;;;; -09FA;BENGALI ISSHAR;So;0;L;;;;;N;;;;; -09FB;BENGALI GANDA MARK;Sc;0;ET;;;;;N;;;;; -0A01;GURMUKHI SIGN ADAK BINDI;Mn;0;NSM;;;;;N;;;;; -0A02;GURMUKHI SIGN BINDI;Mn;0;NSM;;;;;N;;;;; -0A03;GURMUKHI SIGN VISARGA;Mc;0;L;;;;;N;;;;; -0A05;GURMUKHI LETTER A;Lo;0;L;;;;;N;;;;; -0A06;GURMUKHI LETTER AA;Lo;0;L;;;;;N;;;;; -0A07;GURMUKHI LETTER I;Lo;0;L;;;;;N;;;;; -0A08;GURMUKHI LETTER II;Lo;0;L;;;;;N;;;;; -0A09;GURMUKHI LETTER U;Lo;0;L;;;;;N;;;;; -0A0A;GURMUKHI LETTER UU;Lo;0;L;;;;;N;;;;; -0A0F;GURMUKHI LETTER EE;Lo;0;L;;;;;N;;;;; -0A10;GURMUKHI LETTER AI;Lo;0;L;;;;;N;;;;; -0A13;GURMUKHI LETTER OO;Lo;0;L;;;;;N;;;;; -0A14;GURMUKHI LETTER AU;Lo;0;L;;;;;N;;;;; -0A15;GURMUKHI LETTER KA;Lo;0;L;;;;;N;;;;; -0A16;GURMUKHI LETTER KHA;Lo;0;L;;;;;N;;;;; -0A17;GURMUKHI LETTER GA;Lo;0;L;;;;;N;;;;; -0A18;GURMUKHI LETTER GHA;Lo;0;L;;;;;N;;;;; -0A19;GURMUKHI LETTER NGA;Lo;0;L;;;;;N;;;;; -0A1A;GURMUKHI LETTER CA;Lo;0;L;;;;;N;;;;; -0A1B;GURMUKHI LETTER CHA;Lo;0;L;;;;;N;;;;; -0A1C;GURMUKHI LETTER JA;Lo;0;L;;;;;N;;;;; -0A1D;GURMUKHI LETTER JHA;Lo;0;L;;;;;N;;;;; -0A1E;GURMUKHI LETTER NYA;Lo;0;L;;;;;N;;;;; -0A1F;GURMUKHI LETTER TTA;Lo;0;L;;;;;N;;;;; -0A20;GURMUKHI LETTER TTHA;Lo;0;L;;;;;N;;;;; -0A21;GURMUKHI LETTER DDA;Lo;0;L;;;;;N;;;;; -0A22;GURMUKHI LETTER DDHA;Lo;0;L;;;;;N;;;;; -0A23;GURMUKHI LETTER NNA;Lo;0;L;;;;;N;;;;; -0A24;GURMUKHI LETTER TA;Lo;0;L;;;;;N;;;;; -0A25;GURMUKHI LETTER THA;Lo;0;L;;;;;N;;;;; -0A26;GURMUKHI LETTER DA;Lo;0;L;;;;;N;;;;; -0A27;GURMUKHI LETTER DHA;Lo;0;L;;;;;N;;;;; -0A28;GURMUKHI LETTER NA;Lo;0;L;;;;;N;;;;; -0A2A;GURMUKHI LETTER PA;Lo;0;L;;;;;N;;;;; -0A2B;GURMUKHI LETTER PHA;Lo;0;L;;;;;N;;;;; -0A2C;GURMUKHI LETTER BA;Lo;0;L;;;;;N;;;;; -0A2D;GURMUKHI LETTER BHA;Lo;0;L;;;;;N;;;;; -0A2E;GURMUKHI LETTER MA;Lo;0;L;;;;;N;;;;; -0A2F;GURMUKHI LETTER YA;Lo;0;L;;;;;N;;;;; -0A30;GURMUKHI LETTER RA;Lo;0;L;;;;;N;;;;; -0A32;GURMUKHI LETTER LA;Lo;0;L;;;;;N;;;;; -0A33;GURMUKHI LETTER LLA;Lo;0;L;0A32 0A3C;;;;N;;;;; -0A35;GURMUKHI LETTER VA;Lo;0;L;;;;;N;;;;; -0A36;GURMUKHI LETTER SHA;Lo;0;L;0A38 0A3C;;;;N;;;;; -0A38;GURMUKHI LETTER SA;Lo;0;L;;;;;N;;;;; -0A39;GURMUKHI LETTER HA;Lo;0;L;;;;;N;;;;; -0A3C;GURMUKHI SIGN NUKTA;Mn;7;NSM;;;;;N;;;;; -0A3E;GURMUKHI VOWEL SIGN AA;Mc;0;L;;;;;N;;;;; -0A3F;GURMUKHI VOWEL SIGN I;Mc;0;L;;;;;N;;;;; -0A40;GURMUKHI VOWEL SIGN II;Mc;0;L;;;;;N;;;;; -0A41;GURMUKHI VOWEL SIGN U;Mn;0;NSM;;;;;N;;;;; -0A42;GURMUKHI VOWEL SIGN UU;Mn;0;NSM;;;;;N;;;;; -0A47;GURMUKHI VOWEL SIGN EE;Mn;0;NSM;;;;;N;;;;; -0A48;GURMUKHI VOWEL SIGN AI;Mn;0;NSM;;;;;N;;;;; -0A4B;GURMUKHI VOWEL SIGN OO;Mn;0;NSM;;;;;N;;;;; -0A4C;GURMUKHI VOWEL SIGN AU;Mn;0;NSM;;;;;N;;;;; -0A4D;GURMUKHI SIGN VIRAMA;Mn;9;NSM;;;;;N;;;;; -0A51;GURMUKHI SIGN UDAAT;Mn;0;NSM;;;;;N;;;;; -0A59;GURMUKHI LETTER KHHA;Lo;0;L;0A16 0A3C;;;;N;;;;; -0A5A;GURMUKHI LETTER GHHA;Lo;0;L;0A17 0A3C;;;;N;;;;; -0A5B;GURMUKHI LETTER ZA;Lo;0;L;0A1C 0A3C;;;;N;;;;; -0A5C;GURMUKHI LETTER RRA;Lo;0;L;;;;;N;;;;; -0A5E;GURMUKHI LETTER FA;Lo;0;L;0A2B 0A3C;;;;N;;;;; -0A66;GURMUKHI DIGIT ZERO;Nd;0;L;;0;0;0;N;;;;; -0A67;GURMUKHI DIGIT ONE;Nd;0;L;;1;1;1;N;;;;; -0A68;GURMUKHI DIGIT TWO;Nd;0;L;;2;2;2;N;;;;; -0A69;GURMUKHI DIGIT THREE;Nd;0;L;;3;3;3;N;;;;; -0A6A;GURMUKHI DIGIT FOUR;Nd;0;L;;4;4;4;N;;;;; -0A6B;GURMUKHI DIGIT FIVE;Nd;0;L;;5;5;5;N;;;;; -0A6C;GURMUKHI DIGIT SIX;Nd;0;L;;6;6;6;N;;;;; -0A6D;GURMUKHI DIGIT SEVEN;Nd;0;L;;7;7;7;N;;;;; -0A6E;GURMUKHI DIGIT EIGHT;Nd;0;L;;8;8;8;N;;;;; -0A6F;GURMUKHI DIGIT NINE;Nd;0;L;;9;9;9;N;;;;; -0A70;GURMUKHI TIPPI;Mn;0;NSM;;;;;N;;;;; -0A71;GURMUKHI ADDAK;Mn;0;NSM;;;;;N;;;;; -0A72;GURMUKHI IRI;Lo;0;L;;;;;N;;;;; -0A73;GURMUKHI URA;Lo;0;L;;;;;N;;;;; -0A74;GURMUKHI EK ONKAR;Lo;0;L;;;;;N;;;;; -0A75;GURMUKHI SIGN YAKASH;Mn;0;NSM;;;;;N;;;;; -0A81;GUJARATI SIGN CANDRABINDU;Mn;0;NSM;;;;;N;;;;; -0A82;GUJARATI SIGN ANUSVARA;Mn;0;NSM;;;;;N;;;;; -0A83;GUJARATI SIGN VISARGA;Mc;0;L;;;;;N;;;;; -0A85;GUJARATI LETTER A;Lo;0;L;;;;;N;;;;; -0A86;GUJARATI LETTER AA;Lo;0;L;;;;;N;;;;; -0A87;GUJARATI LETTER I;Lo;0;L;;;;;N;;;;; -0A88;GUJARATI LETTER II;Lo;0;L;;;;;N;;;;; -0A89;GUJARATI LETTER U;Lo;0;L;;;;;N;;;;; -0A8A;GUJARATI LETTER UU;Lo;0;L;;;;;N;;;;; -0A8B;GUJARATI LETTER VOCALIC R;Lo;0;L;;;;;N;;;;; -0A8C;GUJARATI LETTER VOCALIC L;Lo;0;L;;;;;N;;;;; -0A8D;GUJARATI VOWEL CANDRA E;Lo;0;L;;;;;N;;;;; -0A8F;GUJARATI LETTER E;Lo;0;L;;;;;N;;;;; -0A90;GUJARATI LETTER AI;Lo;0;L;;;;;N;;;;; -0A91;GUJARATI VOWEL CANDRA O;Lo;0;L;;;;;N;;;;; -0A93;GUJARATI LETTER O;Lo;0;L;;;;;N;;;;; -0A94;GUJARATI LETTER AU;Lo;0;L;;;;;N;;;;; -0A95;GUJARATI LETTER KA;Lo;0;L;;;;;N;;;;; -0A96;GUJARATI LETTER KHA;Lo;0;L;;;;;N;;;;; -0A97;GUJARATI LETTER GA;Lo;0;L;;;;;N;;;;; -0A98;GUJARATI LETTER GHA;Lo;0;L;;;;;N;;;;; -0A99;GUJARATI LETTER NGA;Lo;0;L;;;;;N;;;;; -0A9A;GUJARATI LETTER CA;Lo;0;L;;;;;N;;;;; -0A9B;GUJARATI LETTER CHA;Lo;0;L;;;;;N;;;;; -0A9C;GUJARATI LETTER JA;Lo;0;L;;;;;N;;;;; -0A9D;GUJARATI LETTER JHA;Lo;0;L;;;;;N;;;;; -0A9E;GUJARATI LETTER NYA;Lo;0;L;;;;;N;;;;; -0A9F;GUJARATI LETTER TTA;Lo;0;L;;;;;N;;;;; -0AA0;GUJARATI LETTER TTHA;Lo;0;L;;;;;N;;;;; -0AA1;GUJARATI LETTER DDA;Lo;0;L;;;;;N;;;;; -0AA2;GUJARATI LETTER DDHA;Lo;0;L;;;;;N;;;;; -0AA3;GUJARATI LETTER NNA;Lo;0;L;;;;;N;;;;; -0AA4;GUJARATI LETTER TA;Lo;0;L;;;;;N;;;;; -0AA5;GUJARATI LETTER THA;Lo;0;L;;;;;N;;;;; -0AA6;GUJARATI LETTER DA;Lo;0;L;;;;;N;;;;; -0AA7;GUJARATI LETTER DHA;Lo;0;L;;;;;N;;;;; -0AA8;GUJARATI LETTER NA;Lo;0;L;;;;;N;;;;; -0AAA;GUJARATI LETTER PA;Lo;0;L;;;;;N;;;;; -0AAB;GUJARATI LETTER PHA;Lo;0;L;;;;;N;;;;; -0AAC;GUJARATI LETTER BA;Lo;0;L;;;;;N;;;;; -0AAD;GUJARATI LETTER BHA;Lo;0;L;;;;;N;;;;; -0AAE;GUJARATI LETTER MA;Lo;0;L;;;;;N;;;;; -0AAF;GUJARATI LETTER YA;Lo;0;L;;;;;N;;;;; -0AB0;GUJARATI LETTER RA;Lo;0;L;;;;;N;;;;; -0AB2;GUJARATI LETTER LA;Lo;0;L;;;;;N;;;;; -0AB3;GUJARATI LETTER LLA;Lo;0;L;;;;;N;;;;; -0AB5;GUJARATI LETTER VA;Lo;0;L;;;;;N;;;;; -0AB6;GUJARATI LETTER SHA;Lo;0;L;;;;;N;;;;; -0AB7;GUJARATI LETTER SSA;Lo;0;L;;;;;N;;;;; -0AB8;GUJARATI LETTER SA;Lo;0;L;;;;;N;;;;; -0AB9;GUJARATI LETTER HA;Lo;0;L;;;;;N;;;;; -0ABC;GUJARATI SIGN NUKTA;Mn;7;NSM;;;;;N;;;;; -0ABD;GUJARATI SIGN AVAGRAHA;Lo;0;L;;;;;N;;;;; -0ABE;GUJARATI VOWEL SIGN AA;Mc;0;L;;;;;N;;;;; -0ABF;GUJARATI VOWEL SIGN I;Mc;0;L;;;;;N;;;;; -0AC0;GUJARATI VOWEL SIGN II;Mc;0;L;;;;;N;;;;; -0AC1;GUJARATI VOWEL SIGN U;Mn;0;NSM;;;;;N;;;;; -0AC2;GUJARATI VOWEL SIGN UU;Mn;0;NSM;;;;;N;;;;; -0AC3;GUJARATI VOWEL SIGN VOCALIC R;Mn;0;NSM;;;;;N;;;;; -0AC4;GUJARATI VOWEL SIGN VOCALIC RR;Mn;0;NSM;;;;;N;;;;; -0AC5;GUJARATI VOWEL SIGN CANDRA E;Mn;0;NSM;;;;;N;;;;; -0AC7;GUJARATI VOWEL SIGN E;Mn;0;NSM;;;;;N;;;;; -0AC8;GUJARATI VOWEL SIGN AI;Mn;0;NSM;;;;;N;;;;; -0AC9;GUJARATI VOWEL SIGN CANDRA O;Mc;0;L;;;;;N;;;;; -0ACB;GUJARATI VOWEL SIGN O;Mc;0;L;;;;;N;;;;; -0ACC;GUJARATI VOWEL SIGN AU;Mc;0;L;;;;;N;;;;; -0ACD;GUJARATI SIGN VIRAMA;Mn;9;NSM;;;;;N;;;;; -0AD0;GUJARATI OM;Lo;0;L;;;;;N;;;;; -0AE0;GUJARATI LETTER VOCALIC RR;Lo;0;L;;;;;N;;;;; -0AE1;GUJARATI LETTER VOCALIC LL;Lo;0;L;;;;;N;;;;; -0AE2;GUJARATI VOWEL SIGN VOCALIC L;Mn;0;NSM;;;;;N;;;;; -0AE3;GUJARATI VOWEL SIGN VOCALIC LL;Mn;0;NSM;;;;;N;;;;; -0AE6;GUJARATI DIGIT ZERO;Nd;0;L;;0;0;0;N;;;;; -0AE7;GUJARATI DIGIT ONE;Nd;0;L;;1;1;1;N;;;;; -0AE8;GUJARATI DIGIT TWO;Nd;0;L;;2;2;2;N;;;;; -0AE9;GUJARATI DIGIT THREE;Nd;0;L;;3;3;3;N;;;;; -0AEA;GUJARATI DIGIT FOUR;Nd;0;L;;4;4;4;N;;;;; -0AEB;GUJARATI DIGIT FIVE;Nd;0;L;;5;5;5;N;;;;; -0AEC;GUJARATI DIGIT SIX;Nd;0;L;;6;6;6;N;;;;; -0AED;GUJARATI DIGIT SEVEN;Nd;0;L;;7;7;7;N;;;;; -0AEE;GUJARATI DIGIT EIGHT;Nd;0;L;;8;8;8;N;;;;; -0AEF;GUJARATI DIGIT NINE;Nd;0;L;;9;9;9;N;;;;; -0AF1;GUJARATI RUPEE SIGN;Sc;0;ET;;;;;N;;;;; -0B01;ORIYA SIGN CANDRABINDU;Mn;0;NSM;;;;;N;;;;; -0B02;ORIYA SIGN ANUSVARA;Mc;0;L;;;;;N;;;;; -0B03;ORIYA SIGN VISARGA;Mc;0;L;;;;;N;;;;; -0B05;ORIYA LETTER A;Lo;0;L;;;;;N;;;;; -0B06;ORIYA LETTER AA;Lo;0;L;;;;;N;;;;; -0B07;ORIYA LETTER I;Lo;0;L;;;;;N;;;;; -0B08;ORIYA LETTER II;Lo;0;L;;;;;N;;;;; -0B09;ORIYA LETTER U;Lo;0;L;;;;;N;;;;; -0B0A;ORIYA LETTER UU;Lo;0;L;;;;;N;;;;; -0B0B;ORIYA LETTER VOCALIC R;Lo;0;L;;;;;N;;;;; -0B0C;ORIYA LETTER VOCALIC L;Lo;0;L;;;;;N;;;;; -0B0F;ORIYA LETTER E;Lo;0;L;;;;;N;;;;; -0B10;ORIYA LETTER AI;Lo;0;L;;;;;N;;;;; -0B13;ORIYA LETTER O;Lo;0;L;;;;;N;;;;; -0B14;ORIYA LETTER AU;Lo;0;L;;;;;N;;;;; -0B15;ORIYA LETTER KA;Lo;0;L;;;;;N;;;;; -0B16;ORIYA LETTER KHA;Lo;0;L;;;;;N;;;;; -0B17;ORIYA LETTER GA;Lo;0;L;;;;;N;;;;; -0B18;ORIYA LETTER GHA;Lo;0;L;;;;;N;;;;; -0B19;ORIYA LETTER NGA;Lo;0;L;;;;;N;;;;; -0B1A;ORIYA LETTER CA;Lo;0;L;;;;;N;;;;; -0B1B;ORIYA LETTER CHA;Lo;0;L;;;;;N;;;;; -0B1C;ORIYA LETTER JA;Lo;0;L;;;;;N;;;;; -0B1D;ORIYA LETTER JHA;Lo;0;L;;;;;N;;;;; -0B1E;ORIYA LETTER NYA;Lo;0;L;;;;;N;;;;; -0B1F;ORIYA LETTER TTA;Lo;0;L;;;;;N;;;;; -0B20;ORIYA LETTER TTHA;Lo;0;L;;;;;N;;;;; -0B21;ORIYA LETTER DDA;Lo;0;L;;;;;N;;;;; -0B22;ORIYA LETTER DDHA;Lo;0;L;;;;;N;;;;; -0B23;ORIYA LETTER NNA;Lo;0;L;;;;;N;;;;; -0B24;ORIYA LETTER TA;Lo;0;L;;;;;N;;;;; -0B25;ORIYA LETTER THA;Lo;0;L;;;;;N;;;;; -0B26;ORIYA LETTER DA;Lo;0;L;;;;;N;;;;; -0B27;ORIYA LETTER DHA;Lo;0;L;;;;;N;;;;; -0B28;ORIYA LETTER NA;Lo;0;L;;;;;N;;;;; -0B2A;ORIYA LETTER PA;Lo;0;L;;;;;N;;;;; -0B2B;ORIYA LETTER PHA;Lo;0;L;;;;;N;;;;; -0B2C;ORIYA LETTER BA;Lo;0;L;;;;;N;;;;; -0B2D;ORIYA LETTER BHA;Lo;0;L;;;;;N;;;;; -0B2E;ORIYA LETTER MA;Lo;0;L;;;;;N;;;;; -0B2F;ORIYA LETTER YA;Lo;0;L;;;;;N;;;;; -0B30;ORIYA LETTER RA;Lo;0;L;;;;;N;;;;; -0B32;ORIYA LETTER LA;Lo;0;L;;;;;N;;;;; -0B33;ORIYA LETTER LLA;Lo;0;L;;;;;N;;;;; -0B35;ORIYA LETTER VA;Lo;0;L;;;;;N;;;;; -0B36;ORIYA LETTER SHA;Lo;0;L;;;;;N;;;;; -0B37;ORIYA LETTER SSA;Lo;0;L;;;;;N;;;;; -0B38;ORIYA LETTER SA;Lo;0;L;;;;;N;;;;; -0B39;ORIYA LETTER HA;Lo;0;L;;;;;N;;;;; -0B3C;ORIYA SIGN NUKTA;Mn;7;NSM;;;;;N;;;;; -0B3D;ORIYA SIGN AVAGRAHA;Lo;0;L;;;;;N;;;;; -0B3E;ORIYA VOWEL SIGN AA;Mc;0;L;;;;;N;;;;; -0B3F;ORIYA VOWEL SIGN I;Mn;0;NSM;;;;;N;;;;; -0B40;ORIYA VOWEL SIGN II;Mc;0;L;;;;;N;;;;; -0B41;ORIYA VOWEL SIGN U;Mn;0;NSM;;;;;N;;;;; -0B42;ORIYA VOWEL SIGN UU;Mn;0;NSM;;;;;N;;;;; -0B43;ORIYA VOWEL SIGN VOCALIC R;Mn;0;NSM;;;;;N;;;;; -0B44;ORIYA VOWEL SIGN VOCALIC RR;Mn;0;NSM;;;;;N;;;;; -0B47;ORIYA VOWEL SIGN E;Mc;0;L;;;;;N;;;;; -0B48;ORIYA VOWEL SIGN AI;Mc;0;L;0B47 0B56;;;;N;;;;; -0B4B;ORIYA VOWEL SIGN O;Mc;0;L;0B47 0B3E;;;;N;;;;; -0B4C;ORIYA VOWEL SIGN AU;Mc;0;L;0B47 0B57;;;;N;;;;; -0B4D;ORIYA SIGN VIRAMA;Mn;9;NSM;;;;;N;;;;; -0B56;ORIYA AI LENGTH MARK;Mn;0;NSM;;;;;N;;;;; -0B57;ORIYA AU LENGTH MARK;Mc;0;L;;;;;N;;;;; -0B5C;ORIYA LETTER RRA;Lo;0;L;0B21 0B3C;;;;N;;;;; -0B5D;ORIYA LETTER RHA;Lo;0;L;0B22 0B3C;;;;N;;;;; -0B5F;ORIYA LETTER YYA;Lo;0;L;;;;;N;;;;; -0B60;ORIYA LETTER VOCALIC RR;Lo;0;L;;;;;N;;;;; -0B61;ORIYA LETTER VOCALIC LL;Lo;0;L;;;;;N;;;;; -0B62;ORIYA VOWEL SIGN VOCALIC L;Mn;0;NSM;;;;;N;;;;; -0B63;ORIYA VOWEL SIGN VOCALIC LL;Mn;0;NSM;;;;;N;;;;; -0B66;ORIYA DIGIT ZERO;Nd;0;L;;0;0;0;N;;;;; -0B67;ORIYA DIGIT ONE;Nd;0;L;;1;1;1;N;;;;; -0B68;ORIYA DIGIT TWO;Nd;0;L;;2;2;2;N;;;;; -0B69;ORIYA DIGIT THREE;Nd;0;L;;3;3;3;N;;;;; -0B6A;ORIYA DIGIT FOUR;Nd;0;L;;4;4;4;N;;;;; -0B6B;ORIYA DIGIT FIVE;Nd;0;L;;5;5;5;N;;;;; -0B6C;ORIYA DIGIT SIX;Nd;0;L;;6;6;6;N;;;;; -0B6D;ORIYA DIGIT SEVEN;Nd;0;L;;7;7;7;N;;;;; -0B6E;ORIYA DIGIT EIGHT;Nd;0;L;;8;8;8;N;;;;; -0B6F;ORIYA DIGIT NINE;Nd;0;L;;9;9;9;N;;;;; -0B70;ORIYA ISSHAR;So;0;L;;;;;N;;;;; -0B71;ORIYA LETTER WA;Lo;0;L;;;;;N;;;;; -0B72;ORIYA FRACTION ONE QUARTER;No;0;L;;;;1/4;N;;;;; -0B73;ORIYA FRACTION ONE HALF;No;0;L;;;;1/2;N;;;;; -0B74;ORIYA FRACTION THREE QUARTERS;No;0;L;;;;3/4;N;;;;; -0B75;ORIYA FRACTION ONE SIXTEENTH;No;0;L;;;;1/16;N;;;;; -0B76;ORIYA FRACTION ONE EIGHTH;No;0;L;;;;1/8;N;;;;; -0B77;ORIYA FRACTION THREE SIXTEENTHS;No;0;L;;;;3/16;N;;;;; -0B82;TAMIL SIGN ANUSVARA;Mn;0;NSM;;;;;N;;;;; -0B83;TAMIL SIGN VISARGA;Lo;0;L;;;;;N;;;;; -0B85;TAMIL LETTER A;Lo;0;L;;;;;N;;;;; -0B86;TAMIL LETTER AA;Lo;0;L;;;;;N;;;;; -0B87;TAMIL LETTER I;Lo;0;L;;;;;N;;;;; -0B88;TAMIL LETTER II;Lo;0;L;;;;;N;;;;; -0B89;TAMIL LETTER U;Lo;0;L;;;;;N;;;;; -0B8A;TAMIL LETTER UU;Lo;0;L;;;;;N;;;;; -0B8E;TAMIL LETTER E;Lo;0;L;;;;;N;;;;; -0B8F;TAMIL LETTER EE;Lo;0;L;;;;;N;;;;; -0B90;TAMIL LETTER AI;Lo;0;L;;;;;N;;;;; -0B92;TAMIL LETTER O;Lo;0;L;;;;;N;;;;; -0B93;TAMIL LETTER OO;Lo;0;L;;;;;N;;;;; -0B94;TAMIL LETTER AU;Lo;0;L;0B92 0BD7;;;;N;;;;; -0B95;TAMIL LETTER KA;Lo;0;L;;;;;N;;;;; -0B99;TAMIL LETTER NGA;Lo;0;L;;;;;N;;;;; -0B9A;TAMIL LETTER CA;Lo;0;L;;;;;N;;;;; -0B9C;TAMIL LETTER JA;Lo;0;L;;;;;N;;;;; -0B9E;TAMIL LETTER NYA;Lo;0;L;;;;;N;;;;; -0B9F;TAMIL LETTER TTA;Lo;0;L;;;;;N;;;;; -0BA3;TAMIL LETTER NNA;Lo;0;L;;;;;N;;;;; -0BA4;TAMIL LETTER TA;Lo;0;L;;;;;N;;;;; -0BA8;TAMIL LETTER NA;Lo;0;L;;;;;N;;;;; -0BA9;TAMIL LETTER NNNA;Lo;0;L;;;;;N;;;;; -0BAA;TAMIL LETTER PA;Lo;0;L;;;;;N;;;;; -0BAE;TAMIL LETTER MA;Lo;0;L;;;;;N;;;;; -0BAF;TAMIL LETTER YA;Lo;0;L;;;;;N;;;;; -0BB0;TAMIL LETTER RA;Lo;0;L;;;;;N;;;;; -0BB1;TAMIL LETTER RRA;Lo;0;L;;;;;N;;;;; -0BB2;TAMIL LETTER LA;Lo;0;L;;;;;N;;;;; -0BB3;TAMIL LETTER LLA;Lo;0;L;;;;;N;;;;; -0BB4;TAMIL LETTER LLLA;Lo;0;L;;;;;N;;;;; -0BB5;TAMIL LETTER VA;Lo;0;L;;;;;N;;;;; -0BB6;TAMIL LETTER SHA;Lo;0;L;;;;;N;;;;; -0BB7;TAMIL LETTER SSA;Lo;0;L;;;;;N;;;;; -0BB8;TAMIL LETTER SA;Lo;0;L;;;;;N;;;;; -0BB9;TAMIL LETTER HA;Lo;0;L;;;;;N;;;;; -0BBE;TAMIL VOWEL SIGN AA;Mc;0;L;;;;;N;;;;; -0BBF;TAMIL VOWEL SIGN I;Mc;0;L;;;;;N;;;;; -0BC0;TAMIL VOWEL SIGN II;Mn;0;NSM;;;;;N;;;;; -0BC1;TAMIL VOWEL SIGN U;Mc;0;L;;;;;N;;;;; -0BC2;TAMIL VOWEL SIGN UU;Mc;0;L;;;;;N;;;;; -0BC6;TAMIL VOWEL SIGN E;Mc;0;L;;;;;N;;;;; -0BC7;TAMIL VOWEL SIGN EE;Mc;0;L;;;;;N;;;;; -0BC8;TAMIL VOWEL SIGN AI;Mc;0;L;;;;;N;;;;; -0BCA;TAMIL VOWEL SIGN O;Mc;0;L;0BC6 0BBE;;;;N;;;;; -0BCB;TAMIL VOWEL SIGN OO;Mc;0;L;0BC7 0BBE;;;;N;;;;; -0BCC;TAMIL VOWEL SIGN AU;Mc;0;L;0BC6 0BD7;;;;N;;;;; -0BCD;TAMIL SIGN VIRAMA;Mn;9;NSM;;;;;N;;;;; -0BD0;TAMIL OM;Lo;0;L;;;;;N;;;;; -0BD7;TAMIL AU LENGTH MARK;Mc;0;L;;;;;N;;;;; -0BE6;TAMIL DIGIT ZERO;Nd;0;L;;0;0;0;N;;;;; -0BE7;TAMIL DIGIT ONE;Nd;0;L;;1;1;1;N;;;;; -0BE8;TAMIL DIGIT TWO;Nd;0;L;;2;2;2;N;;;;; -0BE9;TAMIL DIGIT THREE;Nd;0;L;;3;3;3;N;;;;; -0BEA;TAMIL DIGIT FOUR;Nd;0;L;;4;4;4;N;;;;; -0BEB;TAMIL DIGIT FIVE;Nd;0;L;;5;5;5;N;;;;; -0BEC;TAMIL DIGIT SIX;Nd;0;L;;6;6;6;N;;;;; -0BED;TAMIL DIGIT SEVEN;Nd;0;L;;7;7;7;N;;;;; -0BEE;TAMIL DIGIT EIGHT;Nd;0;L;;8;8;8;N;;;;; -0BEF;TAMIL DIGIT NINE;Nd;0;L;;9;9;9;N;;;;; -0BF0;TAMIL NUMBER TEN;No;0;L;;;;10;N;;;;; -0BF1;TAMIL NUMBER ONE HUNDRED;No;0;L;;;;100;N;;;;; -0BF2;TAMIL NUMBER ONE THOUSAND;No;0;L;;;;1000;N;;;;; -0BF3;TAMIL DAY SIGN;So;0;ON;;;;;N;;;;; -0BF4;TAMIL MONTH SIGN;So;0;ON;;;;;N;;;;; -0BF5;TAMIL YEAR SIGN;So;0;ON;;;;;N;;;;; -0BF6;TAMIL DEBIT SIGN;So;0;ON;;;;;N;;;;; -0BF7;TAMIL CREDIT SIGN;So;0;ON;;;;;N;;;;; -0BF8;TAMIL AS ABOVE SIGN;So;0;ON;;;;;N;;;;; -0BF9;TAMIL RUPEE SIGN;Sc;0;ET;;;;;N;;;;; -0BFA;TAMIL NUMBER SIGN;So;0;ON;;;;;N;;;;; -0C01;TELUGU SIGN CANDRABINDU;Mc;0;L;;;;;N;;;;; -0C02;TELUGU SIGN ANUSVARA;Mc;0;L;;;;;N;;;;; -0C03;TELUGU SIGN VISARGA;Mc;0;L;;;;;N;;;;; -0C05;TELUGU LETTER A;Lo;0;L;;;;;N;;;;; -0C06;TELUGU LETTER AA;Lo;0;L;;;;;N;;;;; -0C07;TELUGU LETTER I;Lo;0;L;;;;;N;;;;; -0C08;TELUGU LETTER II;Lo;0;L;;;;;N;;;;; -0C09;TELUGU LETTER U;Lo;0;L;;;;;N;;;;; -0C0A;TELUGU LETTER UU;Lo;0;L;;;;;N;;;;; -0C0B;TELUGU LETTER VOCALIC R;Lo;0;L;;;;;N;;;;; -0C0C;TELUGU LETTER VOCALIC L;Lo;0;L;;;;;N;;;;; -0C0E;TELUGU LETTER E;Lo;0;L;;;;;N;;;;; -0C0F;TELUGU LETTER EE;Lo;0;L;;;;;N;;;;; -0C10;TELUGU LETTER AI;Lo;0;L;;;;;N;;;;; -0C12;TELUGU LETTER O;Lo;0;L;;;;;N;;;;; -0C13;TELUGU LETTER OO;Lo;0;L;;;;;N;;;;; -0C14;TELUGU LETTER AU;Lo;0;L;;;;;N;;;;; -0C15;TELUGU LETTER KA;Lo;0;L;;;;;N;;;;; -0C16;TELUGU LETTER KHA;Lo;0;L;;;;;N;;;;; -0C17;TELUGU LETTER GA;Lo;0;L;;;;;N;;;;; -0C18;TELUGU LETTER GHA;Lo;0;L;;;;;N;;;;; -0C19;TELUGU LETTER NGA;Lo;0;L;;;;;N;;;;; -0C1A;TELUGU LETTER CA;Lo;0;L;;;;;N;;;;; -0C1B;TELUGU LETTER CHA;Lo;0;L;;;;;N;;;;; -0C1C;TELUGU LETTER JA;Lo;0;L;;;;;N;;;;; -0C1D;TELUGU LETTER JHA;Lo;0;L;;;;;N;;;;; -0C1E;TELUGU LETTER NYA;Lo;0;L;;;;;N;;;;; -0C1F;TELUGU LETTER TTA;Lo;0;L;;;;;N;;;;; -0C20;TELUGU LETTER TTHA;Lo;0;L;;;;;N;;;;; -0C21;TELUGU LETTER DDA;Lo;0;L;;;;;N;;;;; -0C22;TELUGU LETTER DDHA;Lo;0;L;;;;;N;;;;; -0C23;TELUGU LETTER NNA;Lo;0;L;;;;;N;;;;; -0C24;TELUGU LETTER TA;Lo;0;L;;;;;N;;;;; -0C25;TELUGU LETTER THA;Lo;0;L;;;;;N;;;;; -0C26;TELUGU LETTER DA;Lo;0;L;;;;;N;;;;; -0C27;TELUGU LETTER DHA;Lo;0;L;;;;;N;;;;; -0C28;TELUGU LETTER NA;Lo;0;L;;;;;N;;;;; -0C2A;TELUGU LETTER PA;Lo;0;L;;;;;N;;;;; -0C2B;TELUGU LETTER PHA;Lo;0;L;;;;;N;;;;; -0C2C;TELUGU LETTER BA;Lo;0;L;;;;;N;;;;; -0C2D;TELUGU LETTER BHA;Lo;0;L;;;;;N;;;;; -0C2E;TELUGU LETTER MA;Lo;0;L;;;;;N;;;;; -0C2F;TELUGU LETTER YA;Lo;0;L;;;;;N;;;;; -0C30;TELUGU LETTER RA;Lo;0;L;;;;;N;;;;; -0C31;TELUGU LETTER RRA;Lo;0;L;;;;;N;;;;; -0C32;TELUGU LETTER LA;Lo;0;L;;;;;N;;;;; -0C33;TELUGU LETTER LLA;Lo;0;L;;;;;N;;;;; -0C35;TELUGU LETTER VA;Lo;0;L;;;;;N;;;;; -0C36;TELUGU LETTER SHA;Lo;0;L;;;;;N;;;;; -0C37;TELUGU LETTER SSA;Lo;0;L;;;;;N;;;;; -0C38;TELUGU LETTER SA;Lo;0;L;;;;;N;;;;; -0C39;TELUGU LETTER HA;Lo;0;L;;;;;N;;;;; -0C3D;TELUGU SIGN AVAGRAHA;Lo;0;L;;;;;N;;;;; -0C3E;TELUGU VOWEL SIGN AA;Mn;0;NSM;;;;;N;;;;; -0C3F;TELUGU VOWEL SIGN I;Mn;0;NSM;;;;;N;;;;; -0C40;TELUGU VOWEL SIGN II;Mn;0;NSM;;;;;N;;;;; -0C41;TELUGU VOWEL SIGN U;Mc;0;L;;;;;N;;;;; -0C42;TELUGU VOWEL SIGN UU;Mc;0;L;;;;;N;;;;; -0C43;TELUGU VOWEL SIGN VOCALIC R;Mc;0;L;;;;;N;;;;; -0C44;TELUGU VOWEL SIGN VOCALIC RR;Mc;0;L;;;;;N;;;;; -0C46;TELUGU VOWEL SIGN E;Mn;0;NSM;;;;;N;;;;; -0C47;TELUGU VOWEL SIGN EE;Mn;0;NSM;;;;;N;;;;; -0C48;TELUGU VOWEL SIGN AI;Mn;0;NSM;0C46 0C56;;;;N;;;;; -0C4A;TELUGU VOWEL SIGN O;Mn;0;NSM;;;;;N;;;;; -0C4B;TELUGU VOWEL SIGN OO;Mn;0;NSM;;;;;N;;;;; -0C4C;TELUGU VOWEL SIGN AU;Mn;0;NSM;;;;;N;;;;; -0C4D;TELUGU SIGN VIRAMA;Mn;9;NSM;;;;;N;;;;; -0C55;TELUGU LENGTH MARK;Mn;84;NSM;;;;;N;;;;; -0C56;TELUGU AI LENGTH MARK;Mn;91;NSM;;;;;N;;;;; -0C58;TELUGU LETTER TSA;Lo;0;L;;;;;N;;;;; -0C59;TELUGU LETTER DZA;Lo;0;L;;;;;N;;;;; -0C60;TELUGU LETTER VOCALIC RR;Lo;0;L;;;;;N;;;;; -0C61;TELUGU LETTER VOCALIC LL;Lo;0;L;;;;;N;;;;; -0C62;TELUGU VOWEL SIGN VOCALIC L;Mn;0;NSM;;;;;N;;;;; -0C63;TELUGU VOWEL SIGN VOCALIC LL;Mn;0;NSM;;;;;N;;;;; -0C66;TELUGU DIGIT ZERO;Nd;0;L;;0;0;0;N;;;;; -0C67;TELUGU DIGIT ONE;Nd;0;L;;1;1;1;N;;;;; -0C68;TELUGU DIGIT TWO;Nd;0;L;;2;2;2;N;;;;; -0C69;TELUGU DIGIT THREE;Nd;0;L;;3;3;3;N;;;;; -0C6A;TELUGU DIGIT FOUR;Nd;0;L;;4;4;4;N;;;;; -0C6B;TELUGU DIGIT FIVE;Nd;0;L;;5;5;5;N;;;;; -0C6C;TELUGU DIGIT SIX;Nd;0;L;;6;6;6;N;;;;; -0C6D;TELUGU DIGIT SEVEN;Nd;0;L;;7;7;7;N;;;;; -0C6E;TELUGU DIGIT EIGHT;Nd;0;L;;8;8;8;N;;;;; -0C6F;TELUGU DIGIT NINE;Nd;0;L;;9;9;9;N;;;;; -0C78;TELUGU FRACTION DIGIT ZERO FOR ODD POWERS OF FOUR;No;0;ON;;;;0;N;;;;; -0C79;TELUGU FRACTION DIGIT ONE FOR ODD POWERS OF FOUR;No;0;ON;;;;1;N;;;;; -0C7A;TELUGU FRACTION DIGIT TWO FOR ODD POWERS OF FOUR;No;0;ON;;;;2;N;;;;; -0C7B;TELUGU FRACTION DIGIT THREE FOR ODD POWERS OF FOUR;No;0;ON;;;;3;N;;;;; -0C7C;TELUGU FRACTION DIGIT ONE FOR EVEN POWERS OF FOUR;No;0;ON;;;;1;N;;;;; -0C7D;TELUGU FRACTION DIGIT TWO FOR EVEN POWERS OF FOUR;No;0;ON;;;;2;N;;;;; -0C7E;TELUGU FRACTION DIGIT THREE FOR EVEN POWERS OF FOUR;No;0;ON;;;;3;N;;;;; -0C7F;TELUGU SIGN TUUMU;So;0;L;;;;;N;;;;; -0C82;KANNADA SIGN ANUSVARA;Mc;0;L;;;;;N;;;;; -0C83;KANNADA SIGN VISARGA;Mc;0;L;;;;;N;;;;; -0C85;KANNADA LETTER A;Lo;0;L;;;;;N;;;;; -0C86;KANNADA LETTER AA;Lo;0;L;;;;;N;;;;; -0C87;KANNADA LETTER I;Lo;0;L;;;;;N;;;;; -0C88;KANNADA LETTER II;Lo;0;L;;;;;N;;;;; -0C89;KANNADA LETTER U;Lo;0;L;;;;;N;;;;; -0C8A;KANNADA LETTER UU;Lo;0;L;;;;;N;;;;; -0C8B;KANNADA LETTER VOCALIC R;Lo;0;L;;;;;N;;;;; -0C8C;KANNADA LETTER VOCALIC L;Lo;0;L;;;;;N;;;;; -0C8E;KANNADA LETTER E;Lo;0;L;;;;;N;;;;; -0C8F;KANNADA LETTER EE;Lo;0;L;;;;;N;;;;; -0C90;KANNADA LETTER AI;Lo;0;L;;;;;N;;;;; -0C92;KANNADA LETTER O;Lo;0;L;;;;;N;;;;; -0C93;KANNADA LETTER OO;Lo;0;L;;;;;N;;;;; -0C94;KANNADA LETTER AU;Lo;0;L;;;;;N;;;;; -0C95;KANNADA LETTER KA;Lo;0;L;;;;;N;;;;; -0C96;KANNADA LETTER KHA;Lo;0;L;;;;;N;;;;; -0C97;KANNADA LETTER GA;Lo;0;L;;;;;N;;;;; -0C98;KANNADA LETTER GHA;Lo;0;L;;;;;N;;;;; -0C99;KANNADA LETTER NGA;Lo;0;L;;;;;N;;;;; -0C9A;KANNADA LETTER CA;Lo;0;L;;;;;N;;;;; -0C9B;KANNADA LETTER CHA;Lo;0;L;;;;;N;;;;; -0C9C;KANNADA LETTER JA;Lo;0;L;;;;;N;;;;; -0C9D;KANNADA LETTER JHA;Lo;0;L;;;;;N;;;;; -0C9E;KANNADA LETTER NYA;Lo;0;L;;;;;N;;;;; -0C9F;KANNADA LETTER TTA;Lo;0;L;;;;;N;;;;; -0CA0;KANNADA LETTER TTHA;Lo;0;L;;;;;N;;;;; -0CA1;KANNADA LETTER DDA;Lo;0;L;;;;;N;;;;; -0CA2;KANNADA LETTER DDHA;Lo;0;L;;;;;N;;;;; -0CA3;KANNADA LETTER NNA;Lo;0;L;;;;;N;;;;; -0CA4;KANNADA LETTER TA;Lo;0;L;;;;;N;;;;; -0CA5;KANNADA LETTER THA;Lo;0;L;;;;;N;;;;; -0CA6;KANNADA LETTER DA;Lo;0;L;;;;;N;;;;; -0CA7;KANNADA LETTER DHA;Lo;0;L;;;;;N;;;;; -0CA8;KANNADA LETTER NA;Lo;0;L;;;;;N;;;;; -0CAA;KANNADA LETTER PA;Lo;0;L;;;;;N;;;;; -0CAB;KANNADA LETTER PHA;Lo;0;L;;;;;N;;;;; -0CAC;KANNADA LETTER BA;Lo;0;L;;;;;N;;;;; -0CAD;KANNADA LETTER BHA;Lo;0;L;;;;;N;;;;; -0CAE;KANNADA LETTER MA;Lo;0;L;;;;;N;;;;; -0CAF;KANNADA LETTER YA;Lo;0;L;;;;;N;;;;; -0CB0;KANNADA LETTER RA;Lo;0;L;;;;;N;;;;; -0CB1;KANNADA LETTER RRA;Lo;0;L;;;;;N;;;;; -0CB2;KANNADA LETTER LA;Lo;0;L;;;;;N;;;;; -0CB3;KANNADA LETTER LLA;Lo;0;L;;;;;N;;;;; -0CB5;KANNADA LETTER VA;Lo;0;L;;;;;N;;;;; -0CB6;KANNADA LETTER SHA;Lo;0;L;;;;;N;;;;; -0CB7;KANNADA LETTER SSA;Lo;0;L;;;;;N;;;;; -0CB8;KANNADA LETTER SA;Lo;0;L;;;;;N;;;;; -0CB9;KANNADA LETTER HA;Lo;0;L;;;;;N;;;;; -0CBC;KANNADA SIGN NUKTA;Mn;7;NSM;;;;;N;;;;; -0CBD;KANNADA SIGN AVAGRAHA;Lo;0;L;;;;;N;;;;; -0CBE;KANNADA VOWEL SIGN AA;Mc;0;L;;;;;N;;;;; -0CBF;KANNADA VOWEL SIGN I;Mn;0;L;;;;;N;;;;; -0CC0;KANNADA VOWEL SIGN II;Mc;0;L;0CBF 0CD5;;;;N;;;;; -0CC1;KANNADA VOWEL SIGN U;Mc;0;L;;;;;N;;;;; -0CC2;KANNADA VOWEL SIGN UU;Mc;0;L;;;;;N;;;;; -0CC3;KANNADA VOWEL SIGN VOCALIC R;Mc;0;L;;;;;N;;;;; -0CC4;KANNADA VOWEL SIGN VOCALIC RR;Mc;0;L;;;;;N;;;;; -0CC6;KANNADA VOWEL SIGN E;Mn;0;L;;;;;N;;;;; -0CC7;KANNADA VOWEL SIGN EE;Mc;0;L;0CC6 0CD5;;;;N;;;;; -0CC8;KANNADA VOWEL SIGN AI;Mc;0;L;0CC6 0CD6;;;;N;;;;; -0CCA;KANNADA VOWEL SIGN O;Mc;0;L;0CC6 0CC2;;;;N;;;;; -0CCB;KANNADA VOWEL SIGN OO;Mc;0;L;0CCA 0CD5;;;;N;;;;; -0CCC;KANNADA VOWEL SIGN AU;Mn;0;NSM;;;;;N;;;;; -0CCD;KANNADA SIGN VIRAMA;Mn;9;NSM;;;;;N;;;;; -0CD5;KANNADA LENGTH MARK;Mc;0;L;;;;;N;;;;; -0CD6;KANNADA AI LENGTH MARK;Mc;0;L;;;;;N;;;;; -0CDE;KANNADA LETTER FA;Lo;0;L;;;;;N;;;;; -0CE0;KANNADA LETTER VOCALIC RR;Lo;0;L;;;;;N;;;;; -0CE1;KANNADA LETTER VOCALIC LL;Lo;0;L;;;;;N;;;;; -0CE2;KANNADA VOWEL SIGN VOCALIC L;Mn;0;NSM;;;;;N;;;;; -0CE3;KANNADA VOWEL SIGN VOCALIC LL;Mn;0;NSM;;;;;N;;;;; -0CE6;KANNADA DIGIT ZERO;Nd;0;L;;0;0;0;N;;;;; -0CE7;KANNADA DIGIT ONE;Nd;0;L;;1;1;1;N;;;;; -0CE8;KANNADA DIGIT TWO;Nd;0;L;;2;2;2;N;;;;; -0CE9;KANNADA DIGIT THREE;Nd;0;L;;3;3;3;N;;;;; -0CEA;KANNADA DIGIT FOUR;Nd;0;L;;4;4;4;N;;;;; -0CEB;KANNADA DIGIT FIVE;Nd;0;L;;5;5;5;N;;;;; -0CEC;KANNADA DIGIT SIX;Nd;0;L;;6;6;6;N;;;;; -0CED;KANNADA DIGIT SEVEN;Nd;0;L;;7;7;7;N;;;;; -0CEE;KANNADA DIGIT EIGHT;Nd;0;L;;8;8;8;N;;;;; -0CEF;KANNADA DIGIT NINE;Nd;0;L;;9;9;9;N;;;;; -0CF1;KANNADA SIGN JIHVAMULIYA;Lo;0;L;;;;;N;;;;; -0CF2;KANNADA SIGN UPADHMANIYA;Lo;0;L;;;;;N;;;;; -0D02;MALAYALAM SIGN ANUSVARA;Mc;0;L;;;;;N;;;;; -0D03;MALAYALAM SIGN VISARGA;Mc;0;L;;;;;N;;;;; -0D05;MALAYALAM LETTER A;Lo;0;L;;;;;N;;;;; -0D06;MALAYALAM LETTER AA;Lo;0;L;;;;;N;;;;; -0D07;MALAYALAM LETTER I;Lo;0;L;;;;;N;;;;; -0D08;MALAYALAM LETTER II;Lo;0;L;;;;;N;;;;; -0D09;MALAYALAM LETTER U;Lo;0;L;;;;;N;;;;; -0D0A;MALAYALAM LETTER UU;Lo;0;L;;;;;N;;;;; -0D0B;MALAYALAM LETTER VOCALIC R;Lo;0;L;;;;;N;;;;; -0D0C;MALAYALAM LETTER VOCALIC L;Lo;0;L;;;;;N;;;;; -0D0E;MALAYALAM LETTER E;Lo;0;L;;;;;N;;;;; -0D0F;MALAYALAM LETTER EE;Lo;0;L;;;;;N;;;;; -0D10;MALAYALAM LETTER AI;Lo;0;L;;;;;N;;;;; -0D12;MALAYALAM LETTER O;Lo;0;L;;;;;N;;;;; -0D13;MALAYALAM LETTER OO;Lo;0;L;;;;;N;;;;; -0D14;MALAYALAM LETTER AU;Lo;0;L;;;;;N;;;;; -0D15;MALAYALAM LETTER KA;Lo;0;L;;;;;N;;;;; -0D16;MALAYALAM LETTER KHA;Lo;0;L;;;;;N;;;;; -0D17;MALAYALAM LETTER GA;Lo;0;L;;;;;N;;;;; -0D18;MALAYALAM LETTER GHA;Lo;0;L;;;;;N;;;;; -0D19;MALAYALAM LETTER NGA;Lo;0;L;;;;;N;;;;; -0D1A;MALAYALAM LETTER CA;Lo;0;L;;;;;N;;;;; -0D1B;MALAYALAM LETTER CHA;Lo;0;L;;;;;N;;;;; -0D1C;MALAYALAM LETTER JA;Lo;0;L;;;;;N;;;;; -0D1D;MALAYALAM LETTER JHA;Lo;0;L;;;;;N;;;;; -0D1E;MALAYALAM LETTER NYA;Lo;0;L;;;;;N;;;;; -0D1F;MALAYALAM LETTER TTA;Lo;0;L;;;;;N;;;;; -0D20;MALAYALAM LETTER TTHA;Lo;0;L;;;;;N;;;;; -0D21;MALAYALAM LETTER DDA;Lo;0;L;;;;;N;;;;; -0D22;MALAYALAM LETTER DDHA;Lo;0;L;;;;;N;;;;; -0D23;MALAYALAM LETTER NNA;Lo;0;L;;;;;N;;;;; -0D24;MALAYALAM LETTER TA;Lo;0;L;;;;;N;;;;; -0D25;MALAYALAM LETTER THA;Lo;0;L;;;;;N;;;;; -0D26;MALAYALAM LETTER DA;Lo;0;L;;;;;N;;;;; -0D27;MALAYALAM LETTER DHA;Lo;0;L;;;;;N;;;;; -0D28;MALAYALAM LETTER NA;Lo;0;L;;;;;N;;;;; -0D29;MALAYALAM LETTER NNNA;Lo;0;L;;;;;N;;;;; -0D2A;MALAYALAM LETTER PA;Lo;0;L;;;;;N;;;;; -0D2B;MALAYALAM LETTER PHA;Lo;0;L;;;;;N;;;;; -0D2C;MALAYALAM LETTER BA;Lo;0;L;;;;;N;;;;; -0D2D;MALAYALAM LETTER BHA;Lo;0;L;;;;;N;;;;; -0D2E;MALAYALAM LETTER MA;Lo;0;L;;;;;N;;;;; -0D2F;MALAYALAM LETTER YA;Lo;0;L;;;;;N;;;;; -0D30;MALAYALAM LETTER RA;Lo;0;L;;;;;N;;;;; -0D31;MALAYALAM LETTER RRA;Lo;0;L;;;;;N;;;;; -0D32;MALAYALAM LETTER LA;Lo;0;L;;;;;N;;;;; -0D33;MALAYALAM LETTER LLA;Lo;0;L;;;;;N;;;;; -0D34;MALAYALAM LETTER LLLA;Lo;0;L;;;;;N;;;;; -0D35;MALAYALAM LETTER VA;Lo;0;L;;;;;N;;;;; -0D36;MALAYALAM LETTER SHA;Lo;0;L;;;;;N;;;;; -0D37;MALAYALAM LETTER SSA;Lo;0;L;;;;;N;;;;; -0D38;MALAYALAM LETTER SA;Lo;0;L;;;;;N;;;;; -0D39;MALAYALAM LETTER HA;Lo;0;L;;;;;N;;;;; -0D3A;MALAYALAM LETTER TTTA;Lo;0;L;;;;;N;;;;; -0D3D;MALAYALAM SIGN AVAGRAHA;Lo;0;L;;;;;N;;;;; -0D3E;MALAYALAM VOWEL SIGN AA;Mc;0;L;;;;;N;;;;; -0D3F;MALAYALAM VOWEL SIGN I;Mc;0;L;;;;;N;;;;; -0D40;MALAYALAM VOWEL SIGN II;Mc;0;L;;;;;N;;;;; -0D41;MALAYALAM VOWEL SIGN U;Mn;0;NSM;;;;;N;;;;; -0D42;MALAYALAM VOWEL SIGN UU;Mn;0;NSM;;;;;N;;;;; -0D43;MALAYALAM VOWEL SIGN VOCALIC R;Mn;0;NSM;;;;;N;;;;; -0D44;MALAYALAM VOWEL SIGN VOCALIC RR;Mn;0;NSM;;;;;N;;;;; -0D46;MALAYALAM VOWEL SIGN E;Mc;0;L;;;;;N;;;;; -0D47;MALAYALAM VOWEL SIGN EE;Mc;0;L;;;;;N;;;;; -0D48;MALAYALAM VOWEL SIGN AI;Mc;0;L;;;;;N;;;;; -0D4A;MALAYALAM VOWEL SIGN O;Mc;0;L;0D46 0D3E;;;;N;;;;; -0D4B;MALAYALAM VOWEL SIGN OO;Mc;0;L;0D47 0D3E;;;;N;;;;; -0D4C;MALAYALAM VOWEL SIGN AU;Mc;0;L;0D46 0D57;;;;N;;;;; -0D4D;MALAYALAM SIGN VIRAMA;Mn;9;NSM;;;;;N;;;;; -0D4E;MALAYALAM LETTER DOT REPH;Lo;0;L;;;;;N;;;;; -0D57;MALAYALAM AU LENGTH MARK;Mc;0;L;;;;;N;;;;; -0D60;MALAYALAM LETTER VOCALIC RR;Lo;0;L;;;;;N;;;;; -0D61;MALAYALAM LETTER VOCALIC LL;Lo;0;L;;;;;N;;;;; -0D62;MALAYALAM VOWEL SIGN VOCALIC L;Mn;0;NSM;;;;;N;;;;; -0D63;MALAYALAM VOWEL SIGN VOCALIC LL;Mn;0;NSM;;;;;N;;;;; -0D66;MALAYALAM DIGIT ZERO;Nd;0;L;;0;0;0;N;;;;; -0D67;MALAYALAM DIGIT ONE;Nd;0;L;;1;1;1;N;;;;; -0D68;MALAYALAM DIGIT TWO;Nd;0;L;;2;2;2;N;;;;; -0D69;MALAYALAM DIGIT THREE;Nd;0;L;;3;3;3;N;;;;; -0D6A;MALAYALAM DIGIT FOUR;Nd;0;L;;4;4;4;N;;;;; -0D6B;MALAYALAM DIGIT FIVE;Nd;0;L;;5;5;5;N;;;;; -0D6C;MALAYALAM DIGIT SIX;Nd;0;L;;6;6;6;N;;;;; -0D6D;MALAYALAM DIGIT SEVEN;Nd;0;L;;7;7;7;N;;;;; -0D6E;MALAYALAM DIGIT EIGHT;Nd;0;L;;8;8;8;N;;;;; -0D6F;MALAYALAM DIGIT NINE;Nd;0;L;;9;9;9;N;;;;; -0D70;MALAYALAM NUMBER TEN;No;0;L;;;;10;N;;;;; -0D71;MALAYALAM NUMBER ONE HUNDRED;No;0;L;;;;100;N;;;;; -0D72;MALAYALAM NUMBER ONE THOUSAND;No;0;L;;;;1000;N;;;;; -0D73;MALAYALAM FRACTION ONE QUARTER;No;0;L;;;;1/4;N;;;;; -0D74;MALAYALAM FRACTION ONE HALF;No;0;L;;;;1/2;N;;;;; -0D75;MALAYALAM FRACTION THREE QUARTERS;No;0;L;;;;3/4;N;;;;; -0D79;MALAYALAM DATE MARK;So;0;L;;;;;N;;;;; -0D7A;MALAYALAM LETTER CHILLU NN;Lo;0;L;;;;;N;;;;; -0D7B;MALAYALAM LETTER CHILLU N;Lo;0;L;;;;;N;;;;; -0D7C;MALAYALAM LETTER CHILLU RR;Lo;0;L;;;;;N;;;;; -0D7D;MALAYALAM LETTER CHILLU L;Lo;0;L;;;;;N;;;;; -0D7E;MALAYALAM LETTER CHILLU LL;Lo;0;L;;;;;N;;;;; -0D7F;MALAYALAM LETTER CHILLU K;Lo;0;L;;;;;N;;;;; -0D82;SINHALA SIGN ANUSVARAYA;Mc;0;L;;;;;N;;;;; -0D83;SINHALA SIGN VISARGAYA;Mc;0;L;;;;;N;;;;; -0D85;SINHALA LETTER AYANNA;Lo;0;L;;;;;N;;;;; -0D86;SINHALA LETTER AAYANNA;Lo;0;L;;;;;N;;;;; -0D87;SINHALA LETTER AEYANNA;Lo;0;L;;;;;N;;;;; -0D88;SINHALA LETTER AEEYANNA;Lo;0;L;;;;;N;;;;; -0D89;SINHALA LETTER IYANNA;Lo;0;L;;;;;N;;;;; -0D8A;SINHALA LETTER IIYANNA;Lo;0;L;;;;;N;;;;; -0D8B;SINHALA LETTER UYANNA;Lo;0;L;;;;;N;;;;; -0D8C;SINHALA LETTER UUYANNA;Lo;0;L;;;;;N;;;;; -0D8D;SINHALA LETTER IRUYANNA;Lo;0;L;;;;;N;;;;; -0D8E;SINHALA LETTER IRUUYANNA;Lo;0;L;;;;;N;;;;; -0D8F;SINHALA LETTER ILUYANNA;Lo;0;L;;;;;N;;;;; -0D90;SINHALA LETTER ILUUYANNA;Lo;0;L;;;;;N;;;;; -0D91;SINHALA LETTER EYANNA;Lo;0;L;;;;;N;;;;; -0D92;SINHALA LETTER EEYANNA;Lo;0;L;;;;;N;;;;; -0D93;SINHALA LETTER AIYANNA;Lo;0;L;;;;;N;;;;; -0D94;SINHALA LETTER OYANNA;Lo;0;L;;;;;N;;;;; -0D95;SINHALA LETTER OOYANNA;Lo;0;L;;;;;N;;;;; -0D96;SINHALA LETTER AUYANNA;Lo;0;L;;;;;N;;;;; -0D9A;SINHALA LETTER ALPAPRAANA KAYANNA;Lo;0;L;;;;;N;;;;; -0D9B;SINHALA LETTER MAHAAPRAANA KAYANNA;Lo;0;L;;;;;N;;;;; -0D9C;SINHALA LETTER ALPAPRAANA GAYANNA;Lo;0;L;;;;;N;;;;; -0D9D;SINHALA LETTER MAHAAPRAANA GAYANNA;Lo;0;L;;;;;N;;;;; -0D9E;SINHALA LETTER KANTAJA NAASIKYAYA;Lo;0;L;;;;;N;;;;; -0D9F;SINHALA LETTER SANYAKA GAYANNA;Lo;0;L;;;;;N;;;;; -0DA0;SINHALA LETTER ALPAPRAANA CAYANNA;Lo;0;L;;;;;N;;;;; -0DA1;SINHALA LETTER MAHAAPRAANA CAYANNA;Lo;0;L;;;;;N;;;;; -0DA2;SINHALA LETTER ALPAPRAANA JAYANNA;Lo;0;L;;;;;N;;;;; -0DA3;SINHALA LETTER MAHAAPRAANA JAYANNA;Lo;0;L;;;;;N;;;;; -0DA4;SINHALA LETTER TAALUJA NAASIKYAYA;Lo;0;L;;;;;N;;;;; -0DA5;SINHALA LETTER TAALUJA SANYOOGA NAAKSIKYAYA;Lo;0;L;;;;;N;;;;; -0DA6;SINHALA LETTER SANYAKA JAYANNA;Lo;0;L;;;;;N;;;;; -0DA7;SINHALA LETTER ALPAPRAANA TTAYANNA;Lo;0;L;;;;;N;;;;; -0DA8;SINHALA LETTER MAHAAPRAANA TTAYANNA;Lo;0;L;;;;;N;;;;; -0DA9;SINHALA LETTER ALPAPRAANA DDAYANNA;Lo;0;L;;;;;N;;;;; -0DAA;SINHALA LETTER MAHAAPRAANA DDAYANNA;Lo;0;L;;;;;N;;;;; -0DAB;SINHALA LETTER MUURDHAJA NAYANNA;Lo;0;L;;;;;N;;;;; -0DAC;SINHALA LETTER SANYAKA DDAYANNA;Lo;0;L;;;;;N;;;;; -0DAD;SINHALA LETTER ALPAPRAANA TAYANNA;Lo;0;L;;;;;N;;;;; -0DAE;SINHALA LETTER MAHAAPRAANA TAYANNA;Lo;0;L;;;;;N;;;;; -0DAF;SINHALA LETTER ALPAPRAANA DAYANNA;Lo;0;L;;;;;N;;;;; -0DB0;SINHALA LETTER MAHAAPRAANA DAYANNA;Lo;0;L;;;;;N;;;;; -0DB1;SINHALA LETTER DANTAJA NAYANNA;Lo;0;L;;;;;N;;;;; -0DB3;SINHALA LETTER SANYAKA DAYANNA;Lo;0;L;;;;;N;;;;; -0DB4;SINHALA LETTER ALPAPRAANA PAYANNA;Lo;0;L;;;;;N;;;;; -0DB5;SINHALA LETTER MAHAAPRAANA PAYANNA;Lo;0;L;;;;;N;;;;; -0DB6;SINHALA LETTER ALPAPRAANA BAYANNA;Lo;0;L;;;;;N;;;;; -0DB7;SINHALA LETTER MAHAAPRAANA BAYANNA;Lo;0;L;;;;;N;;;;; -0DB8;SINHALA LETTER MAYANNA;Lo;0;L;;;;;N;;;;; -0DB9;SINHALA LETTER AMBA BAYANNA;Lo;0;L;;;;;N;;;;; -0DBA;SINHALA LETTER YAYANNA;Lo;0;L;;;;;N;;;;; -0DBB;SINHALA LETTER RAYANNA;Lo;0;L;;;;;N;;;;; -0DBD;SINHALA LETTER DANTAJA LAYANNA;Lo;0;L;;;;;N;;;;; -0DC0;SINHALA LETTER VAYANNA;Lo;0;L;;;;;N;;;;; -0DC1;SINHALA LETTER TAALUJA SAYANNA;Lo;0;L;;;;;N;;;;; -0DC2;SINHALA LETTER MUURDHAJA SAYANNA;Lo;0;L;;;;;N;;;;; -0DC3;SINHALA LETTER DANTAJA SAYANNA;Lo;0;L;;;;;N;;;;; -0DC4;SINHALA LETTER HAYANNA;Lo;0;L;;;;;N;;;;; -0DC5;SINHALA LETTER MUURDHAJA LAYANNA;Lo;0;L;;;;;N;;;;; -0DC6;SINHALA LETTER FAYANNA;Lo;0;L;;;;;N;;;;; -0DCA;SINHALA SIGN AL-LAKUNA;Mn;9;NSM;;;;;N;;;;; -0DCF;SINHALA VOWEL SIGN AELA-PILLA;Mc;0;L;;;;;N;;;;; -0DD0;SINHALA VOWEL SIGN KETTI AEDA-PILLA;Mc;0;L;;;;;N;;;;; -0DD1;SINHALA VOWEL SIGN DIGA AEDA-PILLA;Mc;0;L;;;;;N;;;;; -0DD2;SINHALA VOWEL SIGN KETTI IS-PILLA;Mn;0;NSM;;;;;N;;;;; -0DD3;SINHALA VOWEL SIGN DIGA IS-PILLA;Mn;0;NSM;;;;;N;;;;; -0DD4;SINHALA VOWEL SIGN KETTI PAA-PILLA;Mn;0;NSM;;;;;N;;;;; -0DD6;SINHALA VOWEL SIGN DIGA PAA-PILLA;Mn;0;NSM;;;;;N;;;;; -0DD8;SINHALA VOWEL SIGN GAETTA-PILLA;Mc;0;L;;;;;N;;;;; -0DD9;SINHALA VOWEL SIGN KOMBUVA;Mc;0;L;;;;;N;;;;; -0DDA;SINHALA VOWEL SIGN DIGA KOMBUVA;Mc;0;L;0DD9 0DCA;;;;N;;;;; -0DDB;SINHALA VOWEL SIGN KOMBU DEKA;Mc;0;L;;;;;N;;;;; -0DDC;SINHALA VOWEL SIGN KOMBUVA HAA AELA-PILLA;Mc;0;L;0DD9 0DCF;;;;N;;;;; -0DDD;SINHALA VOWEL SIGN KOMBUVA HAA DIGA AELA-PILLA;Mc;0;L;0DDC 0DCA;;;;N;;;;; -0DDE;SINHALA VOWEL SIGN KOMBUVA HAA GAYANUKITTA;Mc;0;L;0DD9 0DDF;;;;N;;;;; -0DDF;SINHALA VOWEL SIGN GAYANUKITTA;Mc;0;L;;;;;N;;;;; -0DF2;SINHALA VOWEL SIGN DIGA GAETTA-PILLA;Mc;0;L;;;;;N;;;;; -0DF3;SINHALA VOWEL SIGN DIGA GAYANUKITTA;Mc;0;L;;;;;N;;;;; -0DF4;SINHALA PUNCTUATION KUNDDALIYA;Po;0;L;;;;;N;;;;; -0E01;THAI CHARACTER KO KAI;Lo;0;L;;;;;N;THAI LETTER KO KAI;;;; -0E02;THAI CHARACTER KHO KHAI;Lo;0;L;;;;;N;THAI LETTER KHO KHAI;;;; -0E03;THAI CHARACTER KHO KHUAT;Lo;0;L;;;;;N;THAI LETTER KHO KHUAT;;;; -0E04;THAI CHARACTER KHO KHWAI;Lo;0;L;;;;;N;THAI LETTER KHO KHWAI;;;; -0E05;THAI CHARACTER KHO KHON;Lo;0;L;;;;;N;THAI LETTER KHO KHON;;;; -0E06;THAI CHARACTER KHO RAKHANG;Lo;0;L;;;;;N;THAI LETTER KHO RAKHANG;;;; -0E07;THAI CHARACTER NGO NGU;Lo;0;L;;;;;N;THAI LETTER NGO NGU;;;; -0E08;THAI CHARACTER CHO CHAN;Lo;0;L;;;;;N;THAI LETTER CHO CHAN;;;; -0E09;THAI CHARACTER CHO CHING;Lo;0;L;;;;;N;THAI LETTER CHO CHING;;;; -0E0A;THAI CHARACTER CHO CHANG;Lo;0;L;;;;;N;THAI LETTER CHO CHANG;;;; -0E0B;THAI CHARACTER SO SO;Lo;0;L;;;;;N;THAI LETTER SO SO;;;; -0E0C;THAI CHARACTER CHO CHOE;Lo;0;L;;;;;N;THAI LETTER CHO CHOE;;;; -0E0D;THAI CHARACTER YO YING;Lo;0;L;;;;;N;THAI LETTER YO YING;;;; -0E0E;THAI CHARACTER DO CHADA;Lo;0;L;;;;;N;THAI LETTER DO CHADA;;;; -0E0F;THAI CHARACTER TO PATAK;Lo;0;L;;;;;N;THAI LETTER TO PATAK;;;; -0E10;THAI CHARACTER THO THAN;Lo;0;L;;;;;N;THAI LETTER THO THAN;;;; -0E11;THAI CHARACTER THO NANGMONTHO;Lo;0;L;;;;;N;THAI LETTER THO NANGMONTHO;;;; -0E12;THAI CHARACTER THO PHUTHAO;Lo;0;L;;;;;N;THAI LETTER THO PHUTHAO;;;; -0E13;THAI CHARACTER NO NEN;Lo;0;L;;;;;N;THAI LETTER NO NEN;;;; -0E14;THAI CHARACTER DO DEK;Lo;0;L;;;;;N;THAI LETTER DO DEK;;;; -0E15;THAI CHARACTER TO TAO;Lo;0;L;;;;;N;THAI LETTER TO TAO;;;; -0E16;THAI CHARACTER THO THUNG;Lo;0;L;;;;;N;THAI LETTER THO THUNG;;;; -0E17;THAI CHARACTER THO THAHAN;Lo;0;L;;;;;N;THAI LETTER THO THAHAN;;;; -0E18;THAI CHARACTER THO THONG;Lo;0;L;;;;;N;THAI LETTER THO THONG;;;; -0E19;THAI CHARACTER NO NU;Lo;0;L;;;;;N;THAI LETTER NO NU;;;; -0E1A;THAI CHARACTER BO BAIMAI;Lo;0;L;;;;;N;THAI LETTER BO BAIMAI;;;; -0E1B;THAI CHARACTER PO PLA;Lo;0;L;;;;;N;THAI LETTER PO PLA;;;; -0E1C;THAI CHARACTER PHO PHUNG;Lo;0;L;;;;;N;THAI LETTER PHO PHUNG;;;; -0E1D;THAI CHARACTER FO FA;Lo;0;L;;;;;N;THAI LETTER FO FA;;;; -0E1E;THAI CHARACTER PHO PHAN;Lo;0;L;;;;;N;THAI LETTER PHO PHAN;;;; -0E1F;THAI CHARACTER FO FAN;Lo;0;L;;;;;N;THAI LETTER FO FAN;;;; -0E20;THAI CHARACTER PHO SAMPHAO;Lo;0;L;;;;;N;THAI LETTER PHO SAMPHAO;;;; -0E21;THAI CHARACTER MO MA;Lo;0;L;;;;;N;THAI LETTER MO MA;;;; -0E22;THAI CHARACTER YO YAK;Lo;0;L;;;;;N;THAI LETTER YO YAK;;;; -0E23;THAI CHARACTER RO RUA;Lo;0;L;;;;;N;THAI LETTER RO RUA;;;; -0E24;THAI CHARACTER RU;Lo;0;L;;;;;N;THAI LETTER RU;;;; -0E25;THAI CHARACTER LO LING;Lo;0;L;;;;;N;THAI LETTER LO LING;;;; -0E26;THAI CHARACTER LU;Lo;0;L;;;;;N;THAI LETTER LU;;;; -0E27;THAI CHARACTER WO WAEN;Lo;0;L;;;;;N;THAI LETTER WO WAEN;;;; -0E28;THAI CHARACTER SO SALA;Lo;0;L;;;;;N;THAI LETTER SO SALA;;;; -0E29;THAI CHARACTER SO RUSI;Lo;0;L;;;;;N;THAI LETTER SO RUSI;;;; -0E2A;THAI CHARACTER SO SUA;Lo;0;L;;;;;N;THAI LETTER SO SUA;;;; -0E2B;THAI CHARACTER HO HIP;Lo;0;L;;;;;N;THAI LETTER HO HIP;;;; -0E2C;THAI CHARACTER LO CHULA;Lo;0;L;;;;;N;THAI LETTER LO CHULA;;;; -0E2D;THAI CHARACTER O ANG;Lo;0;L;;;;;N;THAI LETTER O ANG;;;; -0E2E;THAI CHARACTER HO NOKHUK;Lo;0;L;;;;;N;THAI LETTER HO NOK HUK;;;; -0E2F;THAI CHARACTER PAIYANNOI;Lo;0;L;;;;;N;THAI PAI YAN NOI;;;; -0E30;THAI CHARACTER SARA A;Lo;0;L;;;;;N;THAI VOWEL SIGN SARA A;;;; -0E31;THAI CHARACTER MAI HAN-AKAT;Mn;0;NSM;;;;;N;THAI VOWEL SIGN MAI HAN-AKAT;;;; -0E32;THAI CHARACTER SARA AA;Lo;0;L;;;;;N;THAI VOWEL SIGN SARA AA;;;; -0E33;THAI CHARACTER SARA AM;Lo;0;L; 0E4D 0E32;;;;N;THAI VOWEL SIGN SARA AM;;;; -0E34;THAI CHARACTER SARA I;Mn;0;NSM;;;;;N;THAI VOWEL SIGN SARA I;;;; -0E35;THAI CHARACTER SARA II;Mn;0;NSM;;;;;N;THAI VOWEL SIGN SARA II;;;; -0E36;THAI CHARACTER SARA UE;Mn;0;NSM;;;;;N;THAI VOWEL SIGN SARA UE;;;; -0E37;THAI CHARACTER SARA UEE;Mn;0;NSM;;;;;N;THAI VOWEL SIGN SARA UEE;;;; -0E38;THAI CHARACTER SARA U;Mn;103;NSM;;;;;N;THAI VOWEL SIGN SARA U;;;; -0E39;THAI CHARACTER SARA UU;Mn;103;NSM;;;;;N;THAI VOWEL SIGN SARA UU;;;; -0E3A;THAI CHARACTER PHINTHU;Mn;9;NSM;;;;;N;THAI VOWEL SIGN PHINTHU;;;; -0E3F;THAI CURRENCY SYMBOL BAHT;Sc;0;ET;;;;;N;THAI BAHT SIGN;;;; -0E40;THAI CHARACTER SARA E;Lo;0;L;;;;;N;THAI VOWEL SIGN SARA E;;;; -0E41;THAI CHARACTER SARA AE;Lo;0;L;;;;;N;THAI VOWEL SIGN SARA AE;;;; -0E42;THAI CHARACTER SARA O;Lo;0;L;;;;;N;THAI VOWEL SIGN SARA O;;;; -0E43;THAI CHARACTER SARA AI MAIMUAN;Lo;0;L;;;;;N;THAI VOWEL SIGN SARA MAI MUAN;;;; -0E44;THAI CHARACTER SARA AI MAIMALAI;Lo;0;L;;;;;N;THAI VOWEL SIGN SARA MAI MALAI;;;; -0E45;THAI CHARACTER LAKKHANGYAO;Lo;0;L;;;;;N;THAI LAK KHANG YAO;;;; -0E46;THAI CHARACTER MAIYAMOK;Lm;0;L;;;;;N;THAI MAI YAMOK;;;; -0E47;THAI CHARACTER MAITAIKHU;Mn;0;NSM;;;;;N;THAI VOWEL SIGN MAI TAI KHU;;;; -0E48;THAI CHARACTER MAI EK;Mn;107;NSM;;;;;N;THAI TONE MAI EK;;;; -0E49;THAI CHARACTER MAI THO;Mn;107;NSM;;;;;N;THAI TONE MAI THO;;;; -0E4A;THAI CHARACTER MAI TRI;Mn;107;NSM;;;;;N;THAI TONE MAI TRI;;;; -0E4B;THAI CHARACTER MAI CHATTAWA;Mn;107;NSM;;;;;N;THAI TONE MAI CHATTAWA;;;; -0E4C;THAI CHARACTER THANTHAKHAT;Mn;0;NSM;;;;;N;THAI THANTHAKHAT;;;; -0E4D;THAI CHARACTER NIKHAHIT;Mn;0;NSM;;;;;N;THAI NIKKHAHIT;;;; -0E4E;THAI CHARACTER YAMAKKAN;Mn;0;NSM;;;;;N;THAI YAMAKKAN;;;; -0E4F;THAI CHARACTER FONGMAN;Po;0;L;;;;;N;THAI FONGMAN;;;; -0E50;THAI DIGIT ZERO;Nd;0;L;;0;0;0;N;;;;; -0E51;THAI DIGIT ONE;Nd;0;L;;1;1;1;N;;;;; -0E52;THAI DIGIT TWO;Nd;0;L;;2;2;2;N;;;;; -0E53;THAI DIGIT THREE;Nd;0;L;;3;3;3;N;;;;; -0E54;THAI DIGIT FOUR;Nd;0;L;;4;4;4;N;;;;; -0E55;THAI DIGIT FIVE;Nd;0;L;;5;5;5;N;;;;; -0E56;THAI DIGIT SIX;Nd;0;L;;6;6;6;N;;;;; -0E57;THAI DIGIT SEVEN;Nd;0;L;;7;7;7;N;;;;; -0E58;THAI DIGIT EIGHT;Nd;0;L;;8;8;8;N;;;;; -0E59;THAI DIGIT NINE;Nd;0;L;;9;9;9;N;;;;; -0E5A;THAI CHARACTER ANGKHANKHU;Po;0;L;;;;;N;THAI ANGKHANKHU;;;; -0E5B;THAI CHARACTER KHOMUT;Po;0;L;;;;;N;THAI KHOMUT;;;; -0E81;LAO LETTER KO;Lo;0;L;;;;;N;;;;; -0E82;LAO LETTER KHO SUNG;Lo;0;L;;;;;N;;;;; -0E84;LAO LETTER KHO TAM;Lo;0;L;;;;;N;;;;; -0E87;LAO LETTER NGO;Lo;0;L;;;;;N;;;;; -0E88;LAO LETTER CO;Lo;0;L;;;;;N;;;;; -0E8A;LAO LETTER SO TAM;Lo;0;L;;;;;N;;;;; -0E8D;LAO LETTER NYO;Lo;0;L;;;;;N;;;;; -0E94;LAO LETTER DO;Lo;0;L;;;;;N;;;;; -0E95;LAO LETTER TO;Lo;0;L;;;;;N;;;;; -0E96;LAO LETTER THO SUNG;Lo;0;L;;;;;N;;;;; -0E97;LAO LETTER THO TAM;Lo;0;L;;;;;N;;;;; -0E99;LAO LETTER NO;Lo;0;L;;;;;N;;;;; -0E9A;LAO LETTER BO;Lo;0;L;;;;;N;;;;; -0E9B;LAO LETTER PO;Lo;0;L;;;;;N;;;;; -0E9C;LAO LETTER PHO SUNG;Lo;0;L;;;;;N;;;;; -0E9D;LAO LETTER FO TAM;Lo;0;L;;;;;N;;;;; -0E9E;LAO LETTER PHO TAM;Lo;0;L;;;;;N;;;;; -0E9F;LAO LETTER FO SUNG;Lo;0;L;;;;;N;;;;; -0EA1;LAO LETTER MO;Lo;0;L;;;;;N;;;;; -0EA2;LAO LETTER YO;Lo;0;L;;;;;N;;;;; -0EA3;LAO LETTER LO LING;Lo;0;L;;;;;N;;;;; -0EA5;LAO LETTER LO LOOT;Lo;0;L;;;;;N;;;;; -0EA7;LAO LETTER WO;Lo;0;L;;;;;N;;;;; -0EAA;LAO LETTER SO SUNG;Lo;0;L;;;;;N;;;;; -0EAB;LAO LETTER HO SUNG;Lo;0;L;;;;;N;;;;; -0EAD;LAO LETTER O;Lo;0;L;;;;;N;;;;; -0EAE;LAO LETTER HO TAM;Lo;0;L;;;;;N;;;;; -0EAF;LAO ELLIPSIS;Lo;0;L;;;;;N;;;;; -0EB0;LAO VOWEL SIGN A;Lo;0;L;;;;;N;;;;; -0EB1;LAO VOWEL SIGN MAI KAN;Mn;0;NSM;;;;;N;;;;; -0EB2;LAO VOWEL SIGN AA;Lo;0;L;;;;;N;;;;; -0EB3;LAO VOWEL SIGN AM;Lo;0;L; 0ECD 0EB2;;;;N;;;;; -0EB4;LAO VOWEL SIGN I;Mn;0;NSM;;;;;N;;;;; -0EB5;LAO VOWEL SIGN II;Mn;0;NSM;;;;;N;;;;; -0EB6;LAO VOWEL SIGN Y;Mn;0;NSM;;;;;N;;;;; -0EB7;LAO VOWEL SIGN YY;Mn;0;NSM;;;;;N;;;;; -0EB8;LAO VOWEL SIGN U;Mn;118;NSM;;;;;N;;;;; -0EB9;LAO VOWEL SIGN UU;Mn;118;NSM;;;;;N;;;;; -0EBB;LAO VOWEL SIGN MAI KON;Mn;0;NSM;;;;;N;;;;; -0EBC;LAO SEMIVOWEL SIGN LO;Mn;0;NSM;;;;;N;;;;; -0EBD;LAO SEMIVOWEL SIGN NYO;Lo;0;L;;;;;N;;;;; -0EC0;LAO VOWEL SIGN E;Lo;0;L;;;;;N;;;;; -0EC1;LAO VOWEL SIGN EI;Lo;0;L;;;;;N;;;;; -0EC2;LAO VOWEL SIGN O;Lo;0;L;;;;;N;;;;; -0EC3;LAO VOWEL SIGN AY;Lo;0;L;;;;;N;;;;; -0EC4;LAO VOWEL SIGN AI;Lo;0;L;;;;;N;;;;; -0EC6;LAO KO LA;Lm;0;L;;;;;N;;;;; -0EC8;LAO TONE MAI EK;Mn;122;NSM;;;;;N;;;;; -0EC9;LAO TONE MAI THO;Mn;122;NSM;;;;;N;;;;; -0ECA;LAO TONE MAI TI;Mn;122;NSM;;;;;N;;;;; -0ECB;LAO TONE MAI CATAWA;Mn;122;NSM;;;;;N;;;;; -0ECC;LAO CANCELLATION MARK;Mn;0;NSM;;;;;N;;;;; -0ECD;LAO NIGGAHITA;Mn;0;NSM;;;;;N;;;;; -0ED0;LAO DIGIT ZERO;Nd;0;L;;0;0;0;N;;;;; -0ED1;LAO DIGIT ONE;Nd;0;L;;1;1;1;N;;;;; -0ED2;LAO DIGIT TWO;Nd;0;L;;2;2;2;N;;;;; -0ED3;LAO DIGIT THREE;Nd;0;L;;3;3;3;N;;;;; -0ED4;LAO DIGIT FOUR;Nd;0;L;;4;4;4;N;;;;; -0ED5;LAO DIGIT FIVE;Nd;0;L;;5;5;5;N;;;;; -0ED6;LAO DIGIT SIX;Nd;0;L;;6;6;6;N;;;;; -0ED7;LAO DIGIT SEVEN;Nd;0;L;;7;7;7;N;;;;; -0ED8;LAO DIGIT EIGHT;Nd;0;L;;8;8;8;N;;;;; -0ED9;LAO DIGIT NINE;Nd;0;L;;9;9;9;N;;;;; -0EDC;LAO HO NO;Lo;0;L; 0EAB 0E99;;;;N;;;;; -0EDD;LAO HO MO;Lo;0;L; 0EAB 0EA1;;;;N;;;;; -0F00;TIBETAN SYLLABLE OM;Lo;0;L;;;;;N;;;;; -0F01;TIBETAN MARK GTER YIG MGO TRUNCATED A;So;0;L;;;;;N;;;;; -0F02;TIBETAN MARK GTER YIG MGO -UM RNAM BCAD MA;So;0;L;;;;;N;;;;; -0F03;TIBETAN MARK GTER YIG MGO -UM GTER TSHEG MA;So;0;L;;;;;N;;;;; -0F04;TIBETAN MARK INITIAL YIG MGO MDUN MA;Po;0;L;;;;;N;TIBETAN SINGLE ORNAMENT;;;; -0F05;TIBETAN MARK CLOSING YIG MGO SGAB MA;Po;0;L;;;;;N;;;;; -0F06;TIBETAN MARK CARET YIG MGO PHUR SHAD MA;Po;0;L;;;;;N;;;;; -0F07;TIBETAN MARK YIG MGO TSHEG SHAD MA;Po;0;L;;;;;N;;;;; -0F08;TIBETAN MARK SBRUL SHAD;Po;0;L;;;;;N;TIBETAN RGYANSHAD;;;; -0F09;TIBETAN MARK BSKUR YIG MGO;Po;0;L;;;;;N;;;;; -0F0A;TIBETAN MARK BKA- SHOG YIG MGO;Po;0;L;;;;;N;;;;; -0F0B;TIBETAN MARK INTERSYLLABIC TSHEG;Po;0;L;;;;;N;TIBETAN TSEG;;;; -0F0C;TIBETAN MARK DELIMITER TSHEG BSTAR;Po;0;L; 0F0B;;;;N;;;;; -0F0D;TIBETAN MARK SHAD;Po;0;L;;;;;N;TIBETAN SHAD;;;; -0F0E;TIBETAN MARK NYIS SHAD;Po;0;L;;;;;N;TIBETAN DOUBLE SHAD;;;; -0F0F;TIBETAN MARK TSHEG SHAD;Po;0;L;;;;;N;;;;; -0F10;TIBETAN MARK NYIS TSHEG SHAD;Po;0;L;;;;;N;;;;; -0F11;TIBETAN MARK RIN CHEN SPUNGS SHAD;Po;0;L;;;;;N;TIBETAN RINCHANPHUNGSHAD;;;; -0F12;TIBETAN MARK RGYA GRAM SHAD;Po;0;L;;;;;N;;;;; -0F13;TIBETAN MARK CARET -DZUD RTAGS ME LONG CAN;So;0;L;;;;;N;;;;; -0F14;TIBETAN MARK GTER TSHEG;So;0;L;;;;;N;TIBETAN COMMA;;;; -0F15;TIBETAN LOGOTYPE SIGN CHAD RTAGS;So;0;L;;;;;N;;;;; -0F16;TIBETAN LOGOTYPE SIGN LHAG RTAGS;So;0;L;;;;;N;;;;; -0F17;TIBETAN ASTROLOGICAL SIGN SGRA GCAN -CHAR RTAGS;So;0;L;;;;;N;;;;; -0F18;TIBETAN ASTROLOGICAL SIGN -KHYUD PA;Mn;220;NSM;;;;;N;;;;; -0F19;TIBETAN ASTROLOGICAL SIGN SDONG TSHUGS;Mn;220;NSM;;;;;N;;;;; -0F1A;TIBETAN SIGN RDEL DKAR GCIG;So;0;L;;;;;N;;;;; -0F1B;TIBETAN SIGN RDEL DKAR GNYIS;So;0;L;;;;;N;;;;; -0F1C;TIBETAN SIGN RDEL DKAR GSUM;So;0;L;;;;;N;;;;; -0F1D;TIBETAN SIGN RDEL NAG GCIG;So;0;L;;;;;N;;;;; -0F1E;TIBETAN SIGN RDEL NAG GNYIS;So;0;L;;;;;N;;;;; -0F1F;TIBETAN SIGN RDEL DKAR RDEL NAG;So;0;L;;;;;N;;;;; -0F20;TIBETAN DIGIT ZERO;Nd;0;L;;0;0;0;N;;;;; -0F21;TIBETAN DIGIT ONE;Nd;0;L;;1;1;1;N;;;;; -0F22;TIBETAN DIGIT TWO;Nd;0;L;;2;2;2;N;;;;; -0F23;TIBETAN DIGIT THREE;Nd;0;L;;3;3;3;N;;;;; -0F24;TIBETAN DIGIT FOUR;Nd;0;L;;4;4;4;N;;;;; -0F25;TIBETAN DIGIT FIVE;Nd;0;L;;5;5;5;N;;;;; -0F26;TIBETAN DIGIT SIX;Nd;0;L;;6;6;6;N;;;;; -0F27;TIBETAN DIGIT SEVEN;Nd;0;L;;7;7;7;N;;;;; -0F28;TIBETAN DIGIT EIGHT;Nd;0;L;;8;8;8;N;;;;; -0F29;TIBETAN DIGIT NINE;Nd;0;L;;9;9;9;N;;;;; -0F2A;TIBETAN DIGIT HALF ONE;No;0;L;;;;1/2;N;;;;; -0F2B;TIBETAN DIGIT HALF TWO;No;0;L;;;;3/2;N;;;;; -0F2C;TIBETAN DIGIT HALF THREE;No;0;L;;;;5/2;N;;;;; -0F2D;TIBETAN DIGIT HALF FOUR;No;0;L;;;;7/2;N;;;;; -0F2E;TIBETAN DIGIT HALF FIVE;No;0;L;;;;9/2;N;;;;; -0F2F;TIBETAN DIGIT HALF SIX;No;0;L;;;;11/2;N;;;;; -0F30;TIBETAN DIGIT HALF SEVEN;No;0;L;;;;13/2;N;;;;; -0F31;TIBETAN DIGIT HALF EIGHT;No;0;L;;;;15/2;N;;;;; -0F32;TIBETAN DIGIT HALF NINE;No;0;L;;;;17/2;N;;;;; -0F33;TIBETAN DIGIT HALF ZERO;No;0;L;;;;-1/2;N;;;;; -0F34;TIBETAN MARK BSDUS RTAGS;So;0;L;;;;;N;;;;; -0F35;TIBETAN MARK NGAS BZUNG NYI ZLA;Mn;220;NSM;;;;;N;TIBETAN HONORIFIC UNDER RING;;;; -0F36;TIBETAN MARK CARET -DZUD RTAGS BZHI MIG CAN;So;0;L;;;;;N;;;;; -0F37;TIBETAN MARK NGAS BZUNG SGOR RTAGS;Mn;220;NSM;;;;;N;TIBETAN UNDER RING;;;; -0F38;TIBETAN MARK CHE MGO;So;0;L;;;;;N;;;;; -0F39;TIBETAN MARK TSA -PHRU;Mn;216;NSM;;;;;N;TIBETAN LENITION MARK;;;; -0F3A;TIBETAN MARK GUG RTAGS GYON;Ps;0;ON;;;;;Y;;;;; -0F3B;TIBETAN MARK GUG RTAGS GYAS;Pe;0;ON;;;;;Y;;;;; -0F3C;TIBETAN MARK ANG KHANG GYON;Ps;0;ON;;;;;Y;TIBETAN LEFT BRACE;;;; -0F3D;TIBETAN MARK ANG KHANG GYAS;Pe;0;ON;;;;;Y;TIBETAN RIGHT BRACE;;;; -0F3E;TIBETAN SIGN YAR TSHES;Mc;0;L;;;;;N;;;;; -0F3F;TIBETAN SIGN MAR TSHES;Mc;0;L;;;;;N;;;;; -0F40;TIBETAN LETTER KA;Lo;0;L;;;;;N;;;;; -0F41;TIBETAN LETTER KHA;Lo;0;L;;;;;N;;;;; -0F42;TIBETAN LETTER GA;Lo;0;L;;;;;N;;;;; -0F43;TIBETAN LETTER GHA;Lo;0;L;0F42 0FB7;;;;N;;;;; -0F44;TIBETAN LETTER NGA;Lo;0;L;;;;;N;;;;; -0F45;TIBETAN LETTER CA;Lo;0;L;;;;;N;;;;; -0F46;TIBETAN LETTER CHA;Lo;0;L;;;;;N;;;;; -0F47;TIBETAN LETTER JA;Lo;0;L;;;;;N;;;;; -0F49;TIBETAN LETTER NYA;Lo;0;L;;;;;N;;;;; -0F4A;TIBETAN LETTER TTA;Lo;0;L;;;;;N;TIBETAN LETTER REVERSED TA;;;; -0F4B;TIBETAN LETTER TTHA;Lo;0;L;;;;;N;TIBETAN LETTER REVERSED THA;;;; -0F4C;TIBETAN LETTER DDA;Lo;0;L;;;;;N;TIBETAN LETTER REVERSED DA;;;; -0F4D;TIBETAN LETTER DDHA;Lo;0;L;0F4C 0FB7;;;;N;;;;; -0F4E;TIBETAN LETTER NNA;Lo;0;L;;;;;N;TIBETAN LETTER REVERSED NA;;;; -0F4F;TIBETAN LETTER TA;Lo;0;L;;;;;N;;;;; -0F50;TIBETAN LETTER THA;Lo;0;L;;;;;N;;;;; -0F51;TIBETAN LETTER DA;Lo;0;L;;;;;N;;;;; -0F52;TIBETAN LETTER DHA;Lo;0;L;0F51 0FB7;;;;N;;;;; -0F53;TIBETAN LETTER NA;Lo;0;L;;;;;N;;;;; -0F54;TIBETAN LETTER PA;Lo;0;L;;;;;N;;;;; -0F55;TIBETAN LETTER PHA;Lo;0;L;;;;;N;;;;; -0F56;TIBETAN LETTER BA;Lo;0;L;;;;;N;;;;; -0F57;TIBETAN LETTER BHA;Lo;0;L;0F56 0FB7;;;;N;;;;; -0F58;TIBETAN LETTER MA;Lo;0;L;;;;;N;;;;; -0F59;TIBETAN LETTER TSA;Lo;0;L;;;;;N;;;;; -0F5A;TIBETAN LETTER TSHA;Lo;0;L;;;;;N;;;;; -0F5B;TIBETAN LETTER DZA;Lo;0;L;;;;;N;;;;; -0F5C;TIBETAN LETTER DZHA;Lo;0;L;0F5B 0FB7;;;;N;;;;; -0F5D;TIBETAN LETTER WA;Lo;0;L;;;;;N;;;;; -0F5E;TIBETAN LETTER ZHA;Lo;0;L;;;;;N;;;;; -0F5F;TIBETAN LETTER ZA;Lo;0;L;;;;;N;;;;; -0F60;TIBETAN LETTER -A;Lo;0;L;;;;;N;TIBETAN LETTER AA;;;; -0F61;TIBETAN LETTER YA;Lo;0;L;;;;;N;;;;; -0F62;TIBETAN LETTER RA;Lo;0;L;;;;;N;;;;; -0F63;TIBETAN LETTER LA;Lo;0;L;;;;;N;;;;; -0F64;TIBETAN LETTER SHA;Lo;0;L;;;;;N;;;;; -0F65;TIBETAN LETTER SSA;Lo;0;L;;;;;N;TIBETAN LETTER REVERSED SHA;;;; -0F66;TIBETAN LETTER SA;Lo;0;L;;;;;N;;;;; -0F67;TIBETAN LETTER HA;Lo;0;L;;;;;N;;;;; -0F68;TIBETAN LETTER A;Lo;0;L;;;;;N;;;;; -0F69;TIBETAN LETTER KSSA;Lo;0;L;0F40 0FB5;;;;N;;;;; -0F6A;TIBETAN LETTER FIXED-FORM RA;Lo;0;L;;;;;N;;;;; -0F6B;TIBETAN LETTER KKA;Lo;0;L;;;;;N;;;;; -0F6C;TIBETAN LETTER RRA;Lo;0;L;;;;;N;;;;; -0F71;TIBETAN VOWEL SIGN AA;Mn;129;NSM;;;;;N;;;;; -0F72;TIBETAN VOWEL SIGN I;Mn;130;NSM;;;;;N;;;;; -0F73;TIBETAN VOWEL SIGN II;Mn;0;NSM;0F71 0F72;;;;N;;;;; -0F74;TIBETAN VOWEL SIGN U;Mn;132;NSM;;;;;N;;;;; -0F75;TIBETAN VOWEL SIGN UU;Mn;0;NSM;0F71 0F74;;;;N;;;;; -0F76;TIBETAN VOWEL SIGN VOCALIC R;Mn;0;NSM;0FB2 0F80;;;;N;;;;; -0F77;TIBETAN VOWEL SIGN VOCALIC RR;Mn;0;NSM; 0FB2 0F81;;;;N;;;;; -0F78;TIBETAN VOWEL SIGN VOCALIC L;Mn;0;NSM;0FB3 0F80;;;;N;;;;; -0F79;TIBETAN VOWEL SIGN VOCALIC LL;Mn;0;NSM; 0FB3 0F81;;;;N;;;;; -0F7A;TIBETAN VOWEL SIGN E;Mn;130;NSM;;;;;N;;;;; -0F7B;TIBETAN VOWEL SIGN EE;Mn;130;NSM;;;;;N;TIBETAN VOWEL SIGN AI;;;; -0F7C;TIBETAN VOWEL SIGN O;Mn;130;NSM;;;;;N;;;;; -0F7D;TIBETAN VOWEL SIGN OO;Mn;130;NSM;;;;;N;TIBETAN VOWEL SIGN AU;;;; -0F7E;TIBETAN SIGN RJES SU NGA RO;Mn;0;NSM;;;;;N;TIBETAN ANUSVARA;;;; -0F7F;TIBETAN SIGN RNAM BCAD;Mc;0;L;;;;;N;TIBETAN VISARGA;;;; -0F80;TIBETAN VOWEL SIGN REVERSED I;Mn;130;NSM;;;;;N;TIBETAN VOWEL SIGN SHORT I;;;; -0F81;TIBETAN VOWEL SIGN REVERSED II;Mn;0;NSM;0F71 0F80;;;;N;;;;; -0F82;TIBETAN SIGN NYI ZLA NAA DA;Mn;230;NSM;;;;;N;TIBETAN CANDRABINDU WITH ORNAMENT;;;; -0F83;TIBETAN SIGN SNA LDAN;Mn;230;NSM;;;;;N;TIBETAN CANDRABINDU;;;; -0F84;TIBETAN MARK HALANTA;Mn;9;NSM;;;;;N;TIBETAN VIRAMA;;;; -0F85;TIBETAN MARK PALUTA;Po;0;L;;;;;N;TIBETAN CHUCHENYIGE;;;; -0F86;TIBETAN SIGN LCI RTAGS;Mn;230;NSM;;;;;N;;;;; -0F87;TIBETAN SIGN YANG RTAGS;Mn;230;NSM;;;;;N;;;;; -0F88;TIBETAN SIGN LCE TSA CAN;Lo;0;L;;;;;N;;;;; -0F89;TIBETAN SIGN MCHU CAN;Lo;0;L;;;;;N;;;;; -0F8A;TIBETAN SIGN GRU CAN RGYINGS;Lo;0;L;;;;;N;;;;; -0F8B;TIBETAN SIGN GRU MED RGYINGS;Lo;0;L;;;;;N;;;;; -0F8C;TIBETAN SIGN INVERTED MCHU CAN;Lo;0;L;;;;;N;;;;; -0F8D;TIBETAN SUBJOINED SIGN LCE TSA CAN;Mn;0;NSM;;;;;N;;;;; -0F8E;TIBETAN SUBJOINED SIGN MCHU CAN;Mn;0;NSM;;;;;N;;;;; -0F8F;TIBETAN SUBJOINED SIGN INVERTED MCHU CAN;Mn;0;NSM;;;;;N;;;;; -0F90;TIBETAN SUBJOINED LETTER KA;Mn;0;NSM;;;;;N;;;;; -0F91;TIBETAN SUBJOINED LETTER KHA;Mn;0;NSM;;;;;N;;;;; -0F92;TIBETAN SUBJOINED LETTER GA;Mn;0;NSM;;;;;N;;;;; -0F93;TIBETAN SUBJOINED LETTER GHA;Mn;0;NSM;0F92 0FB7;;;;N;;;;; -0F94;TIBETAN SUBJOINED LETTER NGA;Mn;0;NSM;;;;;N;;;;; -0F95;TIBETAN SUBJOINED LETTER CA;Mn;0;NSM;;;;;N;;;;; -0F96;TIBETAN SUBJOINED LETTER CHA;Mn;0;NSM;;;;;N;;;;; -0F97;TIBETAN SUBJOINED LETTER JA;Mn;0;NSM;;;;;N;;;;; -0F99;TIBETAN SUBJOINED LETTER NYA;Mn;0;NSM;;;;;N;;;;; -0F9A;TIBETAN SUBJOINED LETTER TTA;Mn;0;NSM;;;;;N;;;;; -0F9B;TIBETAN SUBJOINED LETTER TTHA;Mn;0;NSM;;;;;N;;;;; -0F9C;TIBETAN SUBJOINED LETTER DDA;Mn;0;NSM;;;;;N;;;;; -0F9D;TIBETAN SUBJOINED LETTER DDHA;Mn;0;NSM;0F9C 0FB7;;;;N;;;;; -0F9E;TIBETAN SUBJOINED LETTER NNA;Mn;0;NSM;;;;;N;;;;; -0F9F;TIBETAN SUBJOINED LETTER TA;Mn;0;NSM;;;;;N;;;;; -0FA0;TIBETAN SUBJOINED LETTER THA;Mn;0;NSM;;;;;N;;;;; -0FA1;TIBETAN SUBJOINED LETTER DA;Mn;0;NSM;;;;;N;;;;; -0FA2;TIBETAN SUBJOINED LETTER DHA;Mn;0;NSM;0FA1 0FB7;;;;N;;;;; -0FA3;TIBETAN SUBJOINED LETTER NA;Mn;0;NSM;;;;;N;;;;; -0FA4;TIBETAN SUBJOINED LETTER PA;Mn;0;NSM;;;;;N;;;;; -0FA5;TIBETAN SUBJOINED LETTER PHA;Mn;0;NSM;;;;;N;;;;; -0FA6;TIBETAN SUBJOINED LETTER BA;Mn;0;NSM;;;;;N;;;;; -0FA7;TIBETAN SUBJOINED LETTER BHA;Mn;0;NSM;0FA6 0FB7;;;;N;;;;; -0FA8;TIBETAN SUBJOINED LETTER MA;Mn;0;NSM;;;;;N;;;;; -0FA9;TIBETAN SUBJOINED LETTER TSA;Mn;0;NSM;;;;;N;;;;; -0FAA;TIBETAN SUBJOINED LETTER TSHA;Mn;0;NSM;;;;;N;;;;; -0FAB;TIBETAN SUBJOINED LETTER DZA;Mn;0;NSM;;;;;N;;;;; -0FAC;TIBETAN SUBJOINED LETTER DZHA;Mn;0;NSM;0FAB 0FB7;;;;N;;;;; -0FAD;TIBETAN SUBJOINED LETTER WA;Mn;0;NSM;;;;;N;;;;; -0FAE;TIBETAN SUBJOINED LETTER ZHA;Mn;0;NSM;;;;;N;;;;; -0FAF;TIBETAN SUBJOINED LETTER ZA;Mn;0;NSM;;;;;N;;;;; -0FB0;TIBETAN SUBJOINED LETTER -A;Mn;0;NSM;;;;;N;;;;; -0FB1;TIBETAN SUBJOINED LETTER YA;Mn;0;NSM;;;;;N;;;;; -0FB2;TIBETAN SUBJOINED LETTER RA;Mn;0;NSM;;;;;N;;;;; -0FB3;TIBETAN SUBJOINED LETTER LA;Mn;0;NSM;;;;;N;;;;; -0FB4;TIBETAN SUBJOINED LETTER SHA;Mn;0;NSM;;;;;N;;;;; -0FB5;TIBETAN SUBJOINED LETTER SSA;Mn;0;NSM;;;;;N;;;;; -0FB6;TIBETAN SUBJOINED LETTER SA;Mn;0;NSM;;;;;N;;;;; -0FB7;TIBETAN SUBJOINED LETTER HA;Mn;0;NSM;;;;;N;;;;; -0FB8;TIBETAN SUBJOINED LETTER A;Mn;0;NSM;;;;;N;;;;; -0FB9;TIBETAN SUBJOINED LETTER KSSA;Mn;0;NSM;0F90 0FB5;;;;N;;;;; -0FBA;TIBETAN SUBJOINED LETTER FIXED-FORM WA;Mn;0;NSM;;;;;N;;;;; -0FBB;TIBETAN SUBJOINED LETTER FIXED-FORM YA;Mn;0;NSM;;;;;N;;;;; -0FBC;TIBETAN SUBJOINED LETTER FIXED-FORM RA;Mn;0;NSM;;;;;N;;;;; -0FBE;TIBETAN KU RU KHA;So;0;L;;;;;N;;;;; -0FBF;TIBETAN KU RU KHA BZHI MIG CAN;So;0;L;;;;;N;;;;; -0FC0;TIBETAN CANTILLATION SIGN HEAVY BEAT;So;0;L;;;;;N;;;;; -0FC1;TIBETAN CANTILLATION SIGN LIGHT BEAT;So;0;L;;;;;N;;;;; -0FC2;TIBETAN CANTILLATION SIGN CANG TE-U;So;0;L;;;;;N;;;;; -0FC3;TIBETAN CANTILLATION SIGN SBUB -CHAL;So;0;L;;;;;N;;;;; -0FC4;TIBETAN SYMBOL DRIL BU;So;0;L;;;;;N;;;;; -0FC5;TIBETAN SYMBOL RDO RJE;So;0;L;;;;;N;;;;; -0FC6;TIBETAN SYMBOL PADMA GDAN;Mn;220;NSM;;;;;N;;;;; -0FC7;TIBETAN SYMBOL RDO RJE RGYA GRAM;So;0;L;;;;;N;;;;; -0FC8;TIBETAN SYMBOL PHUR PA;So;0;L;;;;;N;;;;; -0FC9;TIBETAN SYMBOL NOR BU;So;0;L;;;;;N;;;;; -0FCA;TIBETAN SYMBOL NOR BU NYIS -KHYIL;So;0;L;;;;;N;;;;; -0FCB;TIBETAN SYMBOL NOR BU GSUM -KHYIL;So;0;L;;;;;N;;;;; -0FCC;TIBETAN SYMBOL NOR BU BZHI -KHYIL;So;0;L;;;;;N;;;;; -0FCE;TIBETAN SIGN RDEL NAG RDEL DKAR;So;0;L;;;;;N;;;;; -0FCF;TIBETAN SIGN RDEL NAG GSUM;So;0;L;;;;;N;;;;; -0FD0;TIBETAN MARK BSKA- SHOG GI MGO RGYAN;Po;0;L;;;;;N;;;;; -0FD1;TIBETAN MARK MNYAM YIG GI MGO RGYAN;Po;0;L;;;;;N;;;;; -0FD2;TIBETAN MARK NYIS TSHEG;Po;0;L;;;;;N;;;;; -0FD3;TIBETAN MARK INITIAL BRDA RNYING YIG MGO MDUN MA;Po;0;L;;;;;N;;;;; -0FD4;TIBETAN MARK CLOSING BRDA RNYING YIG MGO SGAB MA;Po;0;L;;;;;N;;;;; -0FD5;RIGHT-FACING SVASTI SIGN;So;0;L;;;;;N;;;;; -0FD6;LEFT-FACING SVASTI SIGN;So;0;L;;;;;N;;;;; -0FD7;RIGHT-FACING SVASTI SIGN WITH DOTS;So;0;L;;;;;N;;;;; -0FD8;LEFT-FACING SVASTI SIGN WITH DOTS;So;0;L;;;;;N;;;;; -0FD9;TIBETAN MARK LEADING MCHAN RTAGS;Po;0;L;;;;;N;;;;; -0FDA;TIBETAN MARK TRAILING MCHAN RTAGS;Po;0;L;;;;;N;;;;; -1000;MYANMAR LETTER KA;Lo;0;L;;;;;N;;;;; -1001;MYANMAR LETTER KHA;Lo;0;L;;;;;N;;;;; -1002;MYANMAR LETTER GA;Lo;0;L;;;;;N;;;;; -1003;MYANMAR LETTER GHA;Lo;0;L;;;;;N;;;;; -1004;MYANMAR LETTER NGA;Lo;0;L;;;;;N;;;;; -1005;MYANMAR LETTER CA;Lo;0;L;;;;;N;;;;; -1006;MYANMAR LETTER CHA;Lo;0;L;;;;;N;;;;; -1007;MYANMAR LETTER JA;Lo;0;L;;;;;N;;;;; -1008;MYANMAR LETTER JHA;Lo;0;L;;;;;N;;;;; -1009;MYANMAR LETTER NYA;Lo;0;L;;;;;N;;;;; -100A;MYANMAR LETTER NNYA;Lo;0;L;;;;;N;;;;; -100B;MYANMAR LETTER TTA;Lo;0;L;;;;;N;;;;; -100C;MYANMAR LETTER TTHA;Lo;0;L;;;;;N;;;;; -100D;MYANMAR LETTER DDA;Lo;0;L;;;;;N;;;;; -100E;MYANMAR LETTER DDHA;Lo;0;L;;;;;N;;;;; -100F;MYANMAR LETTER NNA;Lo;0;L;;;;;N;;;;; -1010;MYANMAR LETTER TA;Lo;0;L;;;;;N;;;;; -1011;MYANMAR LETTER THA;Lo;0;L;;;;;N;;;;; -1012;MYANMAR LETTER DA;Lo;0;L;;;;;N;;;;; -1013;MYANMAR LETTER DHA;Lo;0;L;;;;;N;;;;; -1014;MYANMAR LETTER NA;Lo;0;L;;;;;N;;;;; -1015;MYANMAR LETTER PA;Lo;0;L;;;;;N;;;;; -1016;MYANMAR LETTER PHA;Lo;0;L;;;;;N;;;;; -1017;MYANMAR LETTER BA;Lo;0;L;;;;;N;;;;; -1018;MYANMAR LETTER BHA;Lo;0;L;;;;;N;;;;; -1019;MYANMAR LETTER MA;Lo;0;L;;;;;N;;;;; -101A;MYANMAR LETTER YA;Lo;0;L;;;;;N;;;;; -101B;MYANMAR LETTER RA;Lo;0;L;;;;;N;;;;; -101C;MYANMAR LETTER LA;Lo;0;L;;;;;N;;;;; -101D;MYANMAR LETTER WA;Lo;0;L;;;;;N;;;;; -101E;MYANMAR LETTER SA;Lo;0;L;;;;;N;;;;; -101F;MYANMAR LETTER HA;Lo;0;L;;;;;N;;;;; -1020;MYANMAR LETTER LLA;Lo;0;L;;;;;N;;;;; -1021;MYANMAR LETTER A;Lo;0;L;;;;;N;;;;; -1022;MYANMAR LETTER SHAN A;Lo;0;L;;;;;N;;;;; -1023;MYANMAR LETTER I;Lo;0;L;;;;;N;;;;; -1024;MYANMAR LETTER II;Lo;0;L;;;;;N;;;;; -1025;MYANMAR LETTER U;Lo;0;L;;;;;N;;;;; -1026;MYANMAR LETTER UU;Lo;0;L;1025 102E;;;;N;;;;; -1027;MYANMAR LETTER E;Lo;0;L;;;;;N;;;;; -1028;MYANMAR LETTER MON E;Lo;0;L;;;;;N;;;;; -1029;MYANMAR LETTER O;Lo;0;L;;;;;N;;;;; -102A;MYANMAR LETTER AU;Lo;0;L;;;;;N;;;;; -102B;MYANMAR VOWEL SIGN TALL AA;Mc;0;L;;;;;N;;;;; -102C;MYANMAR VOWEL SIGN AA;Mc;0;L;;;;;N;;;;; -102D;MYANMAR VOWEL SIGN I;Mn;0;NSM;;;;;N;;;;; -102E;MYANMAR VOWEL SIGN II;Mn;0;NSM;;;;;N;;;;; -102F;MYANMAR VOWEL SIGN U;Mn;0;NSM;;;;;N;;;;; -1030;MYANMAR VOWEL SIGN UU;Mn;0;NSM;;;;;N;;;;; -1031;MYANMAR VOWEL SIGN E;Mc;0;L;;;;;N;;;;; -1032;MYANMAR VOWEL SIGN AI;Mn;0;NSM;;;;;N;;;;; -1033;MYANMAR VOWEL SIGN MON II;Mn;0;NSM;;;;;N;;;;; -1034;MYANMAR VOWEL SIGN MON O;Mn;0;NSM;;;;;N;;;;; -1035;MYANMAR VOWEL SIGN E ABOVE;Mn;0;NSM;;;;;N;;;;; -1036;MYANMAR SIGN ANUSVARA;Mn;0;NSM;;;;;N;;;;; -1037;MYANMAR SIGN DOT BELOW;Mn;7;NSM;;;;;N;;;;; -1038;MYANMAR SIGN VISARGA;Mc;0;L;;;;;N;;;;; -1039;MYANMAR SIGN VIRAMA;Mn;9;NSM;;;;;N;;;;; -103A;MYANMAR SIGN ASAT;Mn;9;NSM;;;;;N;;;;; -103B;MYANMAR CONSONANT SIGN MEDIAL YA;Mc;0;L;;;;;N;;;;; -103C;MYANMAR CONSONANT SIGN MEDIAL RA;Mc;0;L;;;;;N;;;;; -103D;MYANMAR CONSONANT SIGN MEDIAL WA;Mn;0;NSM;;;;;N;;;;; -103E;MYANMAR CONSONANT SIGN MEDIAL HA;Mn;0;NSM;;;;;N;;;;; -103F;MYANMAR LETTER GREAT SA;Lo;0;L;;;;;N;;;;; -1040;MYANMAR DIGIT ZERO;Nd;0;L;;0;0;0;N;;;;; -1041;MYANMAR DIGIT ONE;Nd;0;L;;1;1;1;N;;;;; -1042;MYANMAR DIGIT TWO;Nd;0;L;;2;2;2;N;;;;; -1043;MYANMAR DIGIT THREE;Nd;0;L;;3;3;3;N;;;;; -1044;MYANMAR DIGIT FOUR;Nd;0;L;;4;4;4;N;;;;; -1045;MYANMAR DIGIT FIVE;Nd;0;L;;5;5;5;N;;;;; -1046;MYANMAR DIGIT SIX;Nd;0;L;;6;6;6;N;;;;; -1047;MYANMAR DIGIT SEVEN;Nd;0;L;;7;7;7;N;;;;; -1048;MYANMAR DIGIT EIGHT;Nd;0;L;;8;8;8;N;;;;; -1049;MYANMAR DIGIT NINE;Nd;0;L;;9;9;9;N;;;;; -104A;MYANMAR SIGN LITTLE SECTION;Po;0;L;;;;;N;;;;; -104B;MYANMAR SIGN SECTION;Po;0;L;;;;;N;;;;; -104C;MYANMAR SYMBOL LOCATIVE;Po;0;L;;;;;N;;;;; -104D;MYANMAR SYMBOL COMPLETED;Po;0;L;;;;;N;;;;; -104E;MYANMAR SYMBOL AFOREMENTIONED;Po;0;L;;;;;N;;;;; -104F;MYANMAR SYMBOL GENITIVE;Po;0;L;;;;;N;;;;; -1050;MYANMAR LETTER SHA;Lo;0;L;;;;;N;;;;; -1051;MYANMAR LETTER SSA;Lo;0;L;;;;;N;;;;; -1052;MYANMAR LETTER VOCALIC R;Lo;0;L;;;;;N;;;;; -1053;MYANMAR LETTER VOCALIC RR;Lo;0;L;;;;;N;;;;; -1054;MYANMAR LETTER VOCALIC L;Lo;0;L;;;;;N;;;;; -1055;MYANMAR LETTER VOCALIC LL;Lo;0;L;;;;;N;;;;; -1056;MYANMAR VOWEL SIGN VOCALIC R;Mc;0;L;;;;;N;;;;; -1057;MYANMAR VOWEL SIGN VOCALIC RR;Mc;0;L;;;;;N;;;;; -1058;MYANMAR VOWEL SIGN VOCALIC L;Mn;0;NSM;;;;;N;;;;; -1059;MYANMAR VOWEL SIGN VOCALIC LL;Mn;0;NSM;;;;;N;;;;; -105A;MYANMAR LETTER MON NGA;Lo;0;L;;;;;N;;;;; -105B;MYANMAR LETTER MON JHA;Lo;0;L;;;;;N;;;;; -105C;MYANMAR LETTER MON BBA;Lo;0;L;;;;;N;;;;; -105D;MYANMAR LETTER MON BBE;Lo;0;L;;;;;N;;;;; -105E;MYANMAR CONSONANT SIGN MON MEDIAL NA;Mn;0;NSM;;;;;N;;;;; -105F;MYANMAR CONSONANT SIGN MON MEDIAL MA;Mn;0;NSM;;;;;N;;;;; -1060;MYANMAR CONSONANT SIGN MON MEDIAL LA;Mn;0;NSM;;;;;N;;;;; -1061;MYANMAR LETTER SGAW KAREN SHA;Lo;0;L;;;;;N;;;;; -1062;MYANMAR VOWEL SIGN SGAW KAREN EU;Mc;0;L;;;;;N;;;;; -1063;MYANMAR TONE MARK SGAW KAREN HATHI;Mc;0;L;;;;;N;;;;; -1064;MYANMAR TONE MARK SGAW KAREN KE PHO;Mc;0;L;;;;;N;;;;; -1065;MYANMAR LETTER WESTERN PWO KAREN THA;Lo;0;L;;;;;N;;;;; -1066;MYANMAR LETTER WESTERN PWO KAREN PWA;Lo;0;L;;;;;N;;;;; -1067;MYANMAR VOWEL SIGN WESTERN PWO KAREN EU;Mc;0;L;;;;;N;;;;; -1068;MYANMAR VOWEL SIGN WESTERN PWO KAREN UE;Mc;0;L;;;;;N;;;;; -1069;MYANMAR SIGN WESTERN PWO KAREN TONE-1;Mc;0;L;;;;;N;;;;; -106A;MYANMAR SIGN WESTERN PWO KAREN TONE-2;Mc;0;L;;;;;N;;;;; -106B;MYANMAR SIGN WESTERN PWO KAREN TONE-3;Mc;0;L;;;;;N;;;;; -106C;MYANMAR SIGN WESTERN PWO KAREN TONE-4;Mc;0;L;;;;;N;;;;; -106D;MYANMAR SIGN WESTERN PWO KAREN TONE-5;Mc;0;L;;;;;N;;;;; -106E;MYANMAR LETTER EASTERN PWO KAREN NNA;Lo;0;L;;;;;N;;;;; -106F;MYANMAR LETTER EASTERN PWO KAREN YWA;Lo;0;L;;;;;N;;;;; -1070;MYANMAR LETTER EASTERN PWO KAREN GHWA;Lo;0;L;;;;;N;;;;; -1071;MYANMAR VOWEL SIGN GEBA KAREN I;Mn;0;NSM;;;;;N;;;;; -1072;MYANMAR VOWEL SIGN KAYAH OE;Mn;0;NSM;;;;;N;;;;; -1073;MYANMAR VOWEL SIGN KAYAH U;Mn;0;NSM;;;;;N;;;;; -1074;MYANMAR VOWEL SIGN KAYAH EE;Mn;0;NSM;;;;;N;;;;; -1075;MYANMAR LETTER SHAN KA;Lo;0;L;;;;;N;;;;; -1076;MYANMAR LETTER SHAN KHA;Lo;0;L;;;;;N;;;;; -1077;MYANMAR LETTER SHAN GA;Lo;0;L;;;;;N;;;;; -1078;MYANMAR LETTER SHAN CA;Lo;0;L;;;;;N;;;;; -1079;MYANMAR LETTER SHAN ZA;Lo;0;L;;;;;N;;;;; -107A;MYANMAR LETTER SHAN NYA;Lo;0;L;;;;;N;;;;; -107B;MYANMAR LETTER SHAN DA;Lo;0;L;;;;;N;;;;; -107C;MYANMAR LETTER SHAN NA;Lo;0;L;;;;;N;;;;; -107D;MYANMAR LETTER SHAN PHA;Lo;0;L;;;;;N;;;;; -107E;MYANMAR LETTER SHAN FA;Lo;0;L;;;;;N;;;;; -107F;MYANMAR LETTER SHAN BA;Lo;0;L;;;;;N;;;;; -1080;MYANMAR LETTER SHAN THA;Lo;0;L;;;;;N;;;;; -1081;MYANMAR LETTER SHAN HA;Lo;0;L;;;;;N;;;;; -1082;MYANMAR CONSONANT SIGN SHAN MEDIAL WA;Mn;0;NSM;;;;;N;;;;; -1083;MYANMAR VOWEL SIGN SHAN AA;Mc;0;L;;;;;N;;;;; -1084;MYANMAR VOWEL SIGN SHAN E;Mc;0;L;;;;;N;;;;; -1085;MYANMAR VOWEL SIGN SHAN E ABOVE;Mn;0;NSM;;;;;N;;;;; -1086;MYANMAR VOWEL SIGN SHAN FINAL Y;Mn;0;NSM;;;;;N;;;;; -1087;MYANMAR SIGN SHAN TONE-2;Mc;0;L;;;;;N;;;;; -1088;MYANMAR SIGN SHAN TONE-3;Mc;0;L;;;;;N;;;;; -1089;MYANMAR SIGN SHAN TONE-5;Mc;0;L;;;;;N;;;;; -108A;MYANMAR SIGN SHAN TONE-6;Mc;0;L;;;;;N;;;;; -108B;MYANMAR SIGN SHAN COUNCIL TONE-2;Mc;0;L;;;;;N;;;;; -108C;MYANMAR SIGN SHAN COUNCIL TONE-3;Mc;0;L;;;;;N;;;;; -108D;MYANMAR SIGN SHAN COUNCIL EMPHATIC TONE;Mn;220;NSM;;;;;N;;;;; -108E;MYANMAR LETTER RUMAI PALAUNG FA;Lo;0;L;;;;;N;;;;; -108F;MYANMAR SIGN RUMAI PALAUNG TONE-5;Mc;0;L;;;;;N;;;;; -1090;MYANMAR SHAN DIGIT ZERO;Nd;0;L;;0;0;0;N;;;;; -1091;MYANMAR SHAN DIGIT ONE;Nd;0;L;;1;1;1;N;;;;; -1092;MYANMAR SHAN DIGIT TWO;Nd;0;L;;2;2;2;N;;;;; -1093;MYANMAR SHAN DIGIT THREE;Nd;0;L;;3;3;3;N;;;;; -1094;MYANMAR SHAN DIGIT FOUR;Nd;0;L;;4;4;4;N;;;;; -1095;MYANMAR SHAN DIGIT FIVE;Nd;0;L;;5;5;5;N;;;;; -1096;MYANMAR SHAN DIGIT SIX;Nd;0;L;;6;6;6;N;;;;; -1097;MYANMAR SHAN DIGIT SEVEN;Nd;0;L;;7;7;7;N;;;;; -1098;MYANMAR SHAN DIGIT EIGHT;Nd;0;L;;8;8;8;N;;;;; -1099;MYANMAR SHAN DIGIT NINE;Nd;0;L;;9;9;9;N;;;;; -109A;MYANMAR SIGN KHAMTI TONE-1;Mc;0;L;;;;;N;;;;; -109B;MYANMAR SIGN KHAMTI TONE-3;Mc;0;L;;;;;N;;;;; -109C;MYANMAR VOWEL SIGN AITON A;Mc;0;L;;;;;N;;;;; -109D;MYANMAR VOWEL SIGN AITON AI;Mn;0;NSM;;;;;N;;;;; -109E;MYANMAR SYMBOL SHAN ONE;So;0;L;;;;;N;;;;; -109F;MYANMAR SYMBOL SHAN EXCLAMATION;So;0;L;;;;;N;;;;; -10A0;GEORGIAN CAPITAL LETTER AN;Lu;0;L;;;;;N;;;;2D00; -10A1;GEORGIAN CAPITAL LETTER BAN;Lu;0;L;;;;;N;;;;2D01; -10A2;GEORGIAN CAPITAL LETTER GAN;Lu;0;L;;;;;N;;;;2D02; -10A3;GEORGIAN CAPITAL LETTER DON;Lu;0;L;;;;;N;;;;2D03; -10A4;GEORGIAN CAPITAL LETTER EN;Lu;0;L;;;;;N;;;;2D04; -10A5;GEORGIAN CAPITAL LETTER VIN;Lu;0;L;;;;;N;;;;2D05; -10A6;GEORGIAN CAPITAL LETTER ZEN;Lu;0;L;;;;;N;;;;2D06; -10A7;GEORGIAN CAPITAL LETTER TAN;Lu;0;L;;;;;N;;;;2D07; -10A8;GEORGIAN CAPITAL LETTER IN;Lu;0;L;;;;;N;;;;2D08; -10A9;GEORGIAN CAPITAL LETTER KAN;Lu;0;L;;;;;N;;;;2D09; -10AA;GEORGIAN CAPITAL LETTER LAS;Lu;0;L;;;;;N;;;;2D0A; -10AB;GEORGIAN CAPITAL LETTER MAN;Lu;0;L;;;;;N;;;;2D0B; -10AC;GEORGIAN CAPITAL LETTER NAR;Lu;0;L;;;;;N;;;;2D0C; -10AD;GEORGIAN CAPITAL LETTER ON;Lu;0;L;;;;;N;;;;2D0D; -10AE;GEORGIAN CAPITAL LETTER PAR;Lu;0;L;;;;;N;;;;2D0E; -10AF;GEORGIAN CAPITAL LETTER ZHAR;Lu;0;L;;;;;N;;;;2D0F; -10B0;GEORGIAN CAPITAL LETTER RAE;Lu;0;L;;;;;N;;;;2D10; -10B1;GEORGIAN CAPITAL LETTER SAN;Lu;0;L;;;;;N;;;;2D11; -10B2;GEORGIAN CAPITAL LETTER TAR;Lu;0;L;;;;;N;;;;2D12; -10B3;GEORGIAN CAPITAL LETTER UN;Lu;0;L;;;;;N;;;;2D13; -10B4;GEORGIAN CAPITAL LETTER PHAR;Lu;0;L;;;;;N;;;;2D14; -10B5;GEORGIAN CAPITAL LETTER KHAR;Lu;0;L;;;;;N;;;;2D15; -10B6;GEORGIAN CAPITAL LETTER GHAN;Lu;0;L;;;;;N;;;;2D16; -10B7;GEORGIAN CAPITAL LETTER QAR;Lu;0;L;;;;;N;;;;2D17; -10B8;GEORGIAN CAPITAL LETTER SHIN;Lu;0;L;;;;;N;;;;2D18; -10B9;GEORGIAN CAPITAL LETTER CHIN;Lu;0;L;;;;;N;;;;2D19; -10BA;GEORGIAN CAPITAL LETTER CAN;Lu;0;L;;;;;N;;;;2D1A; -10BB;GEORGIAN CAPITAL LETTER JIL;Lu;0;L;;;;;N;;;;2D1B; -10BC;GEORGIAN CAPITAL LETTER CIL;Lu;0;L;;;;;N;;;;2D1C; -10BD;GEORGIAN CAPITAL LETTER CHAR;Lu;0;L;;;;;N;;;;2D1D; -10BE;GEORGIAN CAPITAL LETTER XAN;Lu;0;L;;;;;N;;;;2D1E; -10BF;GEORGIAN CAPITAL LETTER JHAN;Lu;0;L;;;;;N;;;;2D1F; -10C0;GEORGIAN CAPITAL LETTER HAE;Lu;0;L;;;;;N;;;;2D20; -10C1;GEORGIAN CAPITAL LETTER HE;Lu;0;L;;;;;N;;;;2D21; -10C2;GEORGIAN CAPITAL LETTER HIE;Lu;0;L;;;;;N;;;;2D22; -10C3;GEORGIAN CAPITAL LETTER WE;Lu;0;L;;;;;N;;;;2D23; -10C4;GEORGIAN CAPITAL LETTER HAR;Lu;0;L;;;;;N;;;;2D24; -10C5;GEORGIAN CAPITAL LETTER HOE;Lu;0;L;;;;;N;;;;2D25; -10D0;GEORGIAN LETTER AN;Lo;0;L;;;;;N;GEORGIAN SMALL LETTER AN;;;; -10D1;GEORGIAN LETTER BAN;Lo;0;L;;;;;N;GEORGIAN SMALL LETTER BAN;;;; -10D2;GEORGIAN LETTER GAN;Lo;0;L;;;;;N;GEORGIAN SMALL LETTER GAN;;;; -10D3;GEORGIAN LETTER DON;Lo;0;L;;;;;N;GEORGIAN SMALL LETTER DON;;;; -10D4;GEORGIAN LETTER EN;Lo;0;L;;;;;N;GEORGIAN SMALL LETTER EN;;;; -10D5;GEORGIAN LETTER VIN;Lo;0;L;;;;;N;GEORGIAN SMALL LETTER VIN;;;; -10D6;GEORGIAN LETTER ZEN;Lo;0;L;;;;;N;GEORGIAN SMALL LETTER ZEN;;;; -10D7;GEORGIAN LETTER TAN;Lo;0;L;;;;;N;GEORGIAN SMALL LETTER TAN;;;; -10D8;GEORGIAN LETTER IN;Lo;0;L;;;;;N;GEORGIAN SMALL LETTER IN;;;; -10D9;GEORGIAN LETTER KAN;Lo;0;L;;;;;N;GEORGIAN SMALL LETTER KAN;;;; -10DA;GEORGIAN LETTER LAS;Lo;0;L;;;;;N;GEORGIAN SMALL LETTER LAS;;;; -10DB;GEORGIAN LETTER MAN;Lo;0;L;;;;;N;GEORGIAN SMALL LETTER MAN;;;; -10DC;GEORGIAN LETTER NAR;Lo;0;L;;;;;N;GEORGIAN SMALL LETTER NAR;;;; -10DD;GEORGIAN LETTER ON;Lo;0;L;;;;;N;GEORGIAN SMALL LETTER ON;;;; -10DE;GEORGIAN LETTER PAR;Lo;0;L;;;;;N;GEORGIAN SMALL LETTER PAR;;;; -10DF;GEORGIAN LETTER ZHAR;Lo;0;L;;;;;N;GEORGIAN SMALL LETTER ZHAR;;;; -10E0;GEORGIAN LETTER RAE;Lo;0;L;;;;;N;GEORGIAN SMALL LETTER RAE;;;; -10E1;GEORGIAN LETTER SAN;Lo;0;L;;;;;N;GEORGIAN SMALL LETTER SAN;;;; -10E2;GEORGIAN LETTER TAR;Lo;0;L;;;;;N;GEORGIAN SMALL LETTER TAR;;;; -10E3;GEORGIAN LETTER UN;Lo;0;L;;;;;N;GEORGIAN SMALL LETTER UN;;;; -10E4;GEORGIAN LETTER PHAR;Lo;0;L;;;;;N;GEORGIAN SMALL LETTER PHAR;;;; -10E5;GEORGIAN LETTER KHAR;Lo;0;L;;;;;N;GEORGIAN SMALL LETTER KHAR;;;; -10E6;GEORGIAN LETTER GHAN;Lo;0;L;;;;;N;GEORGIAN SMALL LETTER GHAN;;;; -10E7;GEORGIAN LETTER QAR;Lo;0;L;;;;;N;GEORGIAN SMALL LETTER QAR;;;; -10E8;GEORGIAN LETTER SHIN;Lo;0;L;;;;;N;GEORGIAN SMALL LETTER SHIN;;;; -10E9;GEORGIAN LETTER CHIN;Lo;0;L;;;;;N;GEORGIAN SMALL LETTER CHIN;;;; -10EA;GEORGIAN LETTER CAN;Lo;0;L;;;;;N;GEORGIAN SMALL LETTER CAN;;;; -10EB;GEORGIAN LETTER JIL;Lo;0;L;;;;;N;GEORGIAN SMALL LETTER JIL;;;; -10EC;GEORGIAN LETTER CIL;Lo;0;L;;;;;N;GEORGIAN SMALL LETTER CIL;;;; -10ED;GEORGIAN LETTER CHAR;Lo;0;L;;;;;N;GEORGIAN SMALL LETTER CHAR;;;; -10EE;GEORGIAN LETTER XAN;Lo;0;L;;;;;N;GEORGIAN SMALL LETTER XAN;;;; -10EF;GEORGIAN LETTER JHAN;Lo;0;L;;;;;N;GEORGIAN SMALL LETTER JHAN;;;; -10F0;GEORGIAN LETTER HAE;Lo;0;L;;;;;N;GEORGIAN SMALL LETTER HAE;;;; -10F1;GEORGIAN LETTER HE;Lo;0;L;;;;;N;GEORGIAN SMALL LETTER HE;;;; -10F2;GEORGIAN LETTER HIE;Lo;0;L;;;;;N;GEORGIAN SMALL LETTER HIE;;;; -10F3;GEORGIAN LETTER WE;Lo;0;L;;;;;N;GEORGIAN SMALL LETTER WE;;;; -10F4;GEORGIAN LETTER HAR;Lo;0;L;;;;;N;GEORGIAN SMALL LETTER HAR;;;; -10F5;GEORGIAN LETTER HOE;Lo;0;L;;;;;N;GEORGIAN SMALL LETTER HOE;;;; -10F6;GEORGIAN LETTER FI;Lo;0;L;;;;;N;GEORGIAN SMALL LETTER FI;;;; -10F7;GEORGIAN LETTER YN;Lo;0;L;;;;;N;;;;; -10F8;GEORGIAN LETTER ELIFI;Lo;0;L;;;;;N;;;;; -10F9;GEORGIAN LETTER TURNED GAN;Lo;0;L;;;;;N;;;;; -10FA;GEORGIAN LETTER AIN;Lo;0;L;;;;;N;;;;; -10FB;GEORGIAN PARAGRAPH SEPARATOR;Po;0;L;;;;;N;;;;; -10FC;MODIFIER LETTER GEORGIAN NAR;Lm;0;L; 10DC;;;;N;;;;; -1100;HANGUL CHOSEONG KIYEOK;Lo;0;L;;;;;N;;;;; -1101;HANGUL CHOSEONG SSANGKIYEOK;Lo;0;L;;;;;N;;;;; -1102;HANGUL CHOSEONG NIEUN;Lo;0;L;;;;;N;;;;; -1103;HANGUL CHOSEONG TIKEUT;Lo;0;L;;;;;N;;;;; -1104;HANGUL CHOSEONG SSANGTIKEUT;Lo;0;L;;;;;N;;;;; -1105;HANGUL CHOSEONG RIEUL;Lo;0;L;;;;;N;;;;; -1106;HANGUL CHOSEONG MIEUM;Lo;0;L;;;;;N;;;;; -1107;HANGUL CHOSEONG PIEUP;Lo;0;L;;;;;N;;;;; -1108;HANGUL CHOSEONG SSANGPIEUP;Lo;0;L;;;;;N;;;;; -1109;HANGUL CHOSEONG SIOS;Lo;0;L;;;;;N;;;;; -110A;HANGUL CHOSEONG SSANGSIOS;Lo;0;L;;;;;N;;;;; -110B;HANGUL CHOSEONG IEUNG;Lo;0;L;;;;;N;;;;; -110C;HANGUL CHOSEONG CIEUC;Lo;0;L;;;;;N;;;;; -110D;HANGUL CHOSEONG SSANGCIEUC;Lo;0;L;;;;;N;;;;; -110E;HANGUL CHOSEONG CHIEUCH;Lo;0;L;;;;;N;;;;; -110F;HANGUL CHOSEONG KHIEUKH;Lo;0;L;;;;;N;;;;; -1110;HANGUL CHOSEONG THIEUTH;Lo;0;L;;;;;N;;;;; -1111;HANGUL CHOSEONG PHIEUPH;Lo;0;L;;;;;N;;;;; -1112;HANGUL CHOSEONG HIEUH;Lo;0;L;;;;;N;;;;; -1113;HANGUL CHOSEONG NIEUN-KIYEOK;Lo;0;L;;;;;N;;;;; -1114;HANGUL CHOSEONG SSANGNIEUN;Lo;0;L;;;;;N;;;;; -1115;HANGUL CHOSEONG NIEUN-TIKEUT;Lo;0;L;;;;;N;;;;; -1116;HANGUL CHOSEONG NIEUN-PIEUP;Lo;0;L;;;;;N;;;;; -1117;HANGUL CHOSEONG TIKEUT-KIYEOK;Lo;0;L;;;;;N;;;;; -1118;HANGUL CHOSEONG RIEUL-NIEUN;Lo;0;L;;;;;N;;;;; -1119;HANGUL CHOSEONG SSANGRIEUL;Lo;0;L;;;;;N;;;;; -111A;HANGUL CHOSEONG RIEUL-HIEUH;Lo;0;L;;;;;N;;;;; -111B;HANGUL CHOSEONG KAPYEOUNRIEUL;Lo;0;L;;;;;N;;;;; -111C;HANGUL CHOSEONG MIEUM-PIEUP;Lo;0;L;;;;;N;;;;; -111D;HANGUL CHOSEONG KAPYEOUNMIEUM;Lo;0;L;;;;;N;;;;; -111E;HANGUL CHOSEONG PIEUP-KIYEOK;Lo;0;L;;;;;N;;;;; -111F;HANGUL CHOSEONG PIEUP-NIEUN;Lo;0;L;;;;;N;;;;; -1120;HANGUL CHOSEONG PIEUP-TIKEUT;Lo;0;L;;;;;N;;;;; -1121;HANGUL CHOSEONG PIEUP-SIOS;Lo;0;L;;;;;N;;;;; -1122;HANGUL CHOSEONG PIEUP-SIOS-KIYEOK;Lo;0;L;;;;;N;;;;; -1123;HANGUL CHOSEONG PIEUP-SIOS-TIKEUT;Lo;0;L;;;;;N;;;;; -1124;HANGUL CHOSEONG PIEUP-SIOS-PIEUP;Lo;0;L;;;;;N;;;;; -1125;HANGUL CHOSEONG PIEUP-SSANGSIOS;Lo;0;L;;;;;N;;;;; -1126;HANGUL CHOSEONG PIEUP-SIOS-CIEUC;Lo;0;L;;;;;N;;;;; -1127;HANGUL CHOSEONG PIEUP-CIEUC;Lo;0;L;;;;;N;;;;; -1128;HANGUL CHOSEONG PIEUP-CHIEUCH;Lo;0;L;;;;;N;;;;; -1129;HANGUL CHOSEONG PIEUP-THIEUTH;Lo;0;L;;;;;N;;;;; -112A;HANGUL CHOSEONG PIEUP-PHIEUPH;Lo;0;L;;;;;N;;;;; -112B;HANGUL CHOSEONG KAPYEOUNPIEUP;Lo;0;L;;;;;N;;;;; -112C;HANGUL CHOSEONG KAPYEOUNSSANGPIEUP;Lo;0;L;;;;;N;;;;; -112D;HANGUL CHOSEONG SIOS-KIYEOK;Lo;0;L;;;;;N;;;;; -112E;HANGUL CHOSEONG SIOS-NIEUN;Lo;0;L;;;;;N;;;;; -112F;HANGUL CHOSEONG SIOS-TIKEUT;Lo;0;L;;;;;N;;;;; -1130;HANGUL CHOSEONG SIOS-RIEUL;Lo;0;L;;;;;N;;;;; -1131;HANGUL CHOSEONG SIOS-MIEUM;Lo;0;L;;;;;N;;;;; -1132;HANGUL CHOSEONG SIOS-PIEUP;Lo;0;L;;;;;N;;;;; -1133;HANGUL CHOSEONG SIOS-PIEUP-KIYEOK;Lo;0;L;;;;;N;;;;; -1134;HANGUL CHOSEONG SIOS-SSANGSIOS;Lo;0;L;;;;;N;;;;; -1135;HANGUL CHOSEONG SIOS-IEUNG;Lo;0;L;;;;;N;;;;; -1136;HANGUL CHOSEONG SIOS-CIEUC;Lo;0;L;;;;;N;;;;; -1137;HANGUL CHOSEONG SIOS-CHIEUCH;Lo;0;L;;;;;N;;;;; -1138;HANGUL CHOSEONG SIOS-KHIEUKH;Lo;0;L;;;;;N;;;;; -1139;HANGUL CHOSEONG SIOS-THIEUTH;Lo;0;L;;;;;N;;;;; -113A;HANGUL CHOSEONG SIOS-PHIEUPH;Lo;0;L;;;;;N;;;;; -113B;HANGUL CHOSEONG SIOS-HIEUH;Lo;0;L;;;;;N;;;;; -113C;HANGUL CHOSEONG CHITUEUMSIOS;Lo;0;L;;;;;N;;;;; -113D;HANGUL CHOSEONG CHITUEUMSSANGSIOS;Lo;0;L;;;;;N;;;;; -113E;HANGUL CHOSEONG CEONGCHIEUMSIOS;Lo;0;L;;;;;N;;;;; -113F;HANGUL CHOSEONG CEONGCHIEUMSSANGSIOS;Lo;0;L;;;;;N;;;;; -1140;HANGUL CHOSEONG PANSIOS;Lo;0;L;;;;;N;;;;; -1141;HANGUL CHOSEONG IEUNG-KIYEOK;Lo;0;L;;;;;N;;;;; -1142;HANGUL CHOSEONG IEUNG-TIKEUT;Lo;0;L;;;;;N;;;;; -1143;HANGUL CHOSEONG IEUNG-MIEUM;Lo;0;L;;;;;N;;;;; -1144;HANGUL CHOSEONG IEUNG-PIEUP;Lo;0;L;;;;;N;;;;; -1145;HANGUL CHOSEONG IEUNG-SIOS;Lo;0;L;;;;;N;;;;; -1146;HANGUL CHOSEONG IEUNG-PANSIOS;Lo;0;L;;;;;N;;;;; -1147;HANGUL CHOSEONG SSANGIEUNG;Lo;0;L;;;;;N;;;;; -1148;HANGUL CHOSEONG IEUNG-CIEUC;Lo;0;L;;;;;N;;;;; -1149;HANGUL CHOSEONG IEUNG-CHIEUCH;Lo;0;L;;;;;N;;;;; -114A;HANGUL CHOSEONG IEUNG-THIEUTH;Lo;0;L;;;;;N;;;;; -114B;HANGUL CHOSEONG IEUNG-PHIEUPH;Lo;0;L;;;;;N;;;;; -114C;HANGUL CHOSEONG YESIEUNG;Lo;0;L;;;;;N;;;;; -114D;HANGUL CHOSEONG CIEUC-IEUNG;Lo;0;L;;;;;N;;;;; -114E;HANGUL CHOSEONG CHITUEUMCIEUC;Lo;0;L;;;;;N;;;;; -114F;HANGUL CHOSEONG CHITUEUMSSANGCIEUC;Lo;0;L;;;;;N;;;;; -1150;HANGUL CHOSEONG CEONGCHIEUMCIEUC;Lo;0;L;;;;;N;;;;; -1151;HANGUL CHOSEONG CEONGCHIEUMSSANGCIEUC;Lo;0;L;;;;;N;;;;; -1152;HANGUL CHOSEONG CHIEUCH-KHIEUKH;Lo;0;L;;;;;N;;;;; -1153;HANGUL CHOSEONG CHIEUCH-HIEUH;Lo;0;L;;;;;N;;;;; -1154;HANGUL CHOSEONG CHITUEUMCHIEUCH;Lo;0;L;;;;;N;;;;; -1155;HANGUL CHOSEONG CEONGCHIEUMCHIEUCH;Lo;0;L;;;;;N;;;;; -1156;HANGUL CHOSEONG PHIEUPH-PIEUP;Lo;0;L;;;;;N;;;;; -1157;HANGUL CHOSEONG KAPYEOUNPHIEUPH;Lo;0;L;;;;;N;;;;; -1158;HANGUL CHOSEONG SSANGHIEUH;Lo;0;L;;;;;N;;;;; -1159;HANGUL CHOSEONG YEORINHIEUH;Lo;0;L;;;;;N;;;;; -115A;HANGUL CHOSEONG KIYEOK-TIKEUT;Lo;0;L;;;;;N;;;;; -115B;HANGUL CHOSEONG NIEUN-SIOS;Lo;0;L;;;;;N;;;;; -115C;HANGUL CHOSEONG NIEUN-CIEUC;Lo;0;L;;;;;N;;;;; -115D;HANGUL CHOSEONG NIEUN-HIEUH;Lo;0;L;;;;;N;;;;; -115E;HANGUL CHOSEONG TIKEUT-RIEUL;Lo;0;L;;;;;N;;;;; -115F;HANGUL CHOSEONG FILLER;Lo;0;L;;;;;N;;;;; -1160;HANGUL JUNGSEONG FILLER;Lo;0;L;;;;;N;;;;; -1161;HANGUL JUNGSEONG A;Lo;0;L;;;;;N;;;;; -1162;HANGUL JUNGSEONG AE;Lo;0;L;;;;;N;;;;; -1163;HANGUL JUNGSEONG YA;Lo;0;L;;;;;N;;;;; -1164;HANGUL JUNGSEONG YAE;Lo;0;L;;;;;N;;;;; -1165;HANGUL JUNGSEONG EO;Lo;0;L;;;;;N;;;;; -1166;HANGUL JUNGSEONG E;Lo;0;L;;;;;N;;;;; -1167;HANGUL JUNGSEONG YEO;Lo;0;L;;;;;N;;;;; -1168;HANGUL JUNGSEONG YE;Lo;0;L;;;;;N;;;;; -1169;HANGUL JUNGSEONG O;Lo;0;L;;;;;N;;;;; -116A;HANGUL JUNGSEONG WA;Lo;0;L;;;;;N;;;;; -116B;HANGUL JUNGSEONG WAE;Lo;0;L;;;;;N;;;;; -116C;HANGUL JUNGSEONG OE;Lo;0;L;;;;;N;;;;; -116D;HANGUL JUNGSEONG YO;Lo;0;L;;;;;N;;;;; -116E;HANGUL JUNGSEONG U;Lo;0;L;;;;;N;;;;; -116F;HANGUL JUNGSEONG WEO;Lo;0;L;;;;;N;;;;; -1170;HANGUL JUNGSEONG WE;Lo;0;L;;;;;N;;;;; -1171;HANGUL JUNGSEONG WI;Lo;0;L;;;;;N;;;;; -1172;HANGUL JUNGSEONG YU;Lo;0;L;;;;;N;;;;; -1173;HANGUL JUNGSEONG EU;Lo;0;L;;;;;N;;;;; -1174;HANGUL JUNGSEONG YI;Lo;0;L;;;;;N;;;;; -1175;HANGUL JUNGSEONG I;Lo;0;L;;;;;N;;;;; -1176;HANGUL JUNGSEONG A-O;Lo;0;L;;;;;N;;;;; -1177;HANGUL JUNGSEONG A-U;Lo;0;L;;;;;N;;;;; -1178;HANGUL JUNGSEONG YA-O;Lo;0;L;;;;;N;;;;; -1179;HANGUL JUNGSEONG YA-YO;Lo;0;L;;;;;N;;;;; -117A;HANGUL JUNGSEONG EO-O;Lo;0;L;;;;;N;;;;; -117B;HANGUL JUNGSEONG EO-U;Lo;0;L;;;;;N;;;;; -117C;HANGUL JUNGSEONG EO-EU;Lo;0;L;;;;;N;;;;; -117D;HANGUL JUNGSEONG YEO-O;Lo;0;L;;;;;N;;;;; -117E;HANGUL JUNGSEONG YEO-U;Lo;0;L;;;;;N;;;;; -117F;HANGUL JUNGSEONG O-EO;Lo;0;L;;;;;N;;;;; -1180;HANGUL JUNGSEONG O-E;Lo;0;L;;;;;N;;;;; -1181;HANGUL JUNGSEONG O-YE;Lo;0;L;;;;;N;;;;; -1182;HANGUL JUNGSEONG O-O;Lo;0;L;;;;;N;;;;; -1183;HANGUL JUNGSEONG O-U;Lo;0;L;;;;;N;;;;; -1184;HANGUL JUNGSEONG YO-YA;Lo;0;L;;;;;N;;;;; -1185;HANGUL JUNGSEONG YO-YAE;Lo;0;L;;;;;N;;;;; -1186;HANGUL JUNGSEONG YO-YEO;Lo;0;L;;;;;N;;;;; -1187;HANGUL JUNGSEONG YO-O;Lo;0;L;;;;;N;;;;; -1188;HANGUL JUNGSEONG YO-I;Lo;0;L;;;;;N;;;;; -1189;HANGUL JUNGSEONG U-A;Lo;0;L;;;;;N;;;;; -118A;HANGUL JUNGSEONG U-AE;Lo;0;L;;;;;N;;;;; -118B;HANGUL JUNGSEONG U-EO-EU;Lo;0;L;;;;;N;;;;; -118C;HANGUL JUNGSEONG U-YE;Lo;0;L;;;;;N;;;;; -118D;HANGUL JUNGSEONG U-U;Lo;0;L;;;;;N;;;;; -118E;HANGUL JUNGSEONG YU-A;Lo;0;L;;;;;N;;;;; -118F;HANGUL JUNGSEONG YU-EO;Lo;0;L;;;;;N;;;;; -1190;HANGUL JUNGSEONG YU-E;Lo;0;L;;;;;N;;;;; -1191;HANGUL JUNGSEONG YU-YEO;Lo;0;L;;;;;N;;;;; -1192;HANGUL JUNGSEONG YU-YE;Lo;0;L;;;;;N;;;;; -1193;HANGUL JUNGSEONG YU-U;Lo;0;L;;;;;N;;;;; -1194;HANGUL JUNGSEONG YU-I;Lo;0;L;;;;;N;;;;; -1195;HANGUL JUNGSEONG EU-U;Lo;0;L;;;;;N;;;;; -1196;HANGUL JUNGSEONG EU-EU;Lo;0;L;;;;;N;;;;; -1197;HANGUL JUNGSEONG YI-U;Lo;0;L;;;;;N;;;;; -1198;HANGUL JUNGSEONG I-A;Lo;0;L;;;;;N;;;;; -1199;HANGUL JUNGSEONG I-YA;Lo;0;L;;;;;N;;;;; -119A;HANGUL JUNGSEONG I-O;Lo;0;L;;;;;N;;;;; -119B;HANGUL JUNGSEONG I-U;Lo;0;L;;;;;N;;;;; -119C;HANGUL JUNGSEONG I-EU;Lo;0;L;;;;;N;;;;; -119D;HANGUL JUNGSEONG I-ARAEA;Lo;0;L;;;;;N;;;;; -119E;HANGUL JUNGSEONG ARAEA;Lo;0;L;;;;;N;;;;; -119F;HANGUL JUNGSEONG ARAEA-EO;Lo;0;L;;;;;N;;;;; -11A0;HANGUL JUNGSEONG ARAEA-U;Lo;0;L;;;;;N;;;;; -11A1;HANGUL JUNGSEONG ARAEA-I;Lo;0;L;;;;;N;;;;; -11A2;HANGUL JUNGSEONG SSANGARAEA;Lo;0;L;;;;;N;;;;; -11A3;HANGUL JUNGSEONG A-EU;Lo;0;L;;;;;N;;;;; -11A4;HANGUL JUNGSEONG YA-U;Lo;0;L;;;;;N;;;;; -11A5;HANGUL JUNGSEONG YEO-YA;Lo;0;L;;;;;N;;;;; -11A6;HANGUL JUNGSEONG O-YA;Lo;0;L;;;;;N;;;;; -11A7;HANGUL JUNGSEONG O-YAE;Lo;0;L;;;;;N;;;;; -11A8;HANGUL JONGSEONG KIYEOK;Lo;0;L;;;;;N;;;;; -11A9;HANGUL JONGSEONG SSANGKIYEOK;Lo;0;L;;;;;N;;;;; -11AA;HANGUL JONGSEONG KIYEOK-SIOS;Lo;0;L;;;;;N;;;;; -11AB;HANGUL JONGSEONG NIEUN;Lo;0;L;;;;;N;;;;; -11AC;HANGUL JONGSEONG NIEUN-CIEUC;Lo;0;L;;;;;N;;;;; -11AD;HANGUL JONGSEONG NIEUN-HIEUH;Lo;0;L;;;;;N;;;;; -11AE;HANGUL JONGSEONG TIKEUT;Lo;0;L;;;;;N;;;;; -11AF;HANGUL JONGSEONG RIEUL;Lo;0;L;;;;;N;;;;; -11B0;HANGUL JONGSEONG RIEUL-KIYEOK;Lo;0;L;;;;;N;;;;; -11B1;HANGUL JONGSEONG RIEUL-MIEUM;Lo;0;L;;;;;N;;;;; -11B2;HANGUL JONGSEONG RIEUL-PIEUP;Lo;0;L;;;;;N;;;;; -11B3;HANGUL JONGSEONG RIEUL-SIOS;Lo;0;L;;;;;N;;;;; -11B4;HANGUL JONGSEONG RIEUL-THIEUTH;Lo;0;L;;;;;N;;;;; -11B5;HANGUL JONGSEONG RIEUL-PHIEUPH;Lo;0;L;;;;;N;;;;; -11B6;HANGUL JONGSEONG RIEUL-HIEUH;Lo;0;L;;;;;N;;;;; -11B7;HANGUL JONGSEONG MIEUM;Lo;0;L;;;;;N;;;;; -11B8;HANGUL JONGSEONG PIEUP;Lo;0;L;;;;;N;;;;; -11B9;HANGUL JONGSEONG PIEUP-SIOS;Lo;0;L;;;;;N;;;;; -11BA;HANGUL JONGSEONG SIOS;Lo;0;L;;;;;N;;;;; -11BB;HANGUL JONGSEONG SSANGSIOS;Lo;0;L;;;;;N;;;;; -11BC;HANGUL JONGSEONG IEUNG;Lo;0;L;;;;;N;;;;; -11BD;HANGUL JONGSEONG CIEUC;Lo;0;L;;;;;N;;;;; -11BE;HANGUL JONGSEONG CHIEUCH;Lo;0;L;;;;;N;;;;; -11BF;HANGUL JONGSEONG KHIEUKH;Lo;0;L;;;;;N;;;;; -11C0;HANGUL JONGSEONG THIEUTH;Lo;0;L;;;;;N;;;;; -11C1;HANGUL JONGSEONG PHIEUPH;Lo;0;L;;;;;N;;;;; -11C2;HANGUL JONGSEONG HIEUH;Lo;0;L;;;;;N;;;;; -11C3;HANGUL JONGSEONG KIYEOK-RIEUL;Lo;0;L;;;;;N;;;;; -11C4;HANGUL JONGSEONG KIYEOK-SIOS-KIYEOK;Lo;0;L;;;;;N;;;;; -11C5;HANGUL JONGSEONG NIEUN-KIYEOK;Lo;0;L;;;;;N;;;;; -11C6;HANGUL JONGSEONG NIEUN-TIKEUT;Lo;0;L;;;;;N;;;;; -11C7;HANGUL JONGSEONG NIEUN-SIOS;Lo;0;L;;;;;N;;;;; -11C8;HANGUL JONGSEONG NIEUN-PANSIOS;Lo;0;L;;;;;N;;;;; -11C9;HANGUL JONGSEONG NIEUN-THIEUTH;Lo;0;L;;;;;N;;;;; -11CA;HANGUL JONGSEONG TIKEUT-KIYEOK;Lo;0;L;;;;;N;;;;; -11CB;HANGUL JONGSEONG TIKEUT-RIEUL;Lo;0;L;;;;;N;;;;; -11CC;HANGUL JONGSEONG RIEUL-KIYEOK-SIOS;Lo;0;L;;;;;N;;;;; -11CD;HANGUL JONGSEONG RIEUL-NIEUN;Lo;0;L;;;;;N;;;;; -11CE;HANGUL JONGSEONG RIEUL-TIKEUT;Lo;0;L;;;;;N;;;;; -11CF;HANGUL JONGSEONG RIEUL-TIKEUT-HIEUH;Lo;0;L;;;;;N;;;;; -11D0;HANGUL JONGSEONG SSANGRIEUL;Lo;0;L;;;;;N;;;;; -11D1;HANGUL JONGSEONG RIEUL-MIEUM-KIYEOK;Lo;0;L;;;;;N;;;;; -11D2;HANGUL JONGSEONG RIEUL-MIEUM-SIOS;Lo;0;L;;;;;N;;;;; -11D3;HANGUL JONGSEONG RIEUL-PIEUP-SIOS;Lo;0;L;;;;;N;;;;; -11D4;HANGUL JONGSEONG RIEUL-PIEUP-HIEUH;Lo;0;L;;;;;N;;;;; -11D5;HANGUL JONGSEONG RIEUL-KAPYEOUNPIEUP;Lo;0;L;;;;;N;;;;; -11D6;HANGUL JONGSEONG RIEUL-SSANGSIOS;Lo;0;L;;;;;N;;;;; -11D7;HANGUL JONGSEONG RIEUL-PANSIOS;Lo;0;L;;;;;N;;;;; -11D8;HANGUL JONGSEONG RIEUL-KHIEUKH;Lo;0;L;;;;;N;;;;; -11D9;HANGUL JONGSEONG RIEUL-YEORINHIEUH;Lo;0;L;;;;;N;;;;; -11DA;HANGUL JONGSEONG MIEUM-KIYEOK;Lo;0;L;;;;;N;;;;; -11DB;HANGUL JONGSEONG MIEUM-RIEUL;Lo;0;L;;;;;N;;;;; -11DC;HANGUL JONGSEONG MIEUM-PIEUP;Lo;0;L;;;;;N;;;;; -11DD;HANGUL JONGSEONG MIEUM-SIOS;Lo;0;L;;;;;N;;;;; -11DE;HANGUL JONGSEONG MIEUM-SSANGSIOS;Lo;0;L;;;;;N;;;;; -11DF;HANGUL JONGSEONG MIEUM-PANSIOS;Lo;0;L;;;;;N;;;;; -11E0;HANGUL JONGSEONG MIEUM-CHIEUCH;Lo;0;L;;;;;N;;;;; -11E1;HANGUL JONGSEONG MIEUM-HIEUH;Lo;0;L;;;;;N;;;;; -11E2;HANGUL JONGSEONG KAPYEOUNMIEUM;Lo;0;L;;;;;N;;;;; -11E3;HANGUL JONGSEONG PIEUP-RIEUL;Lo;0;L;;;;;N;;;;; -11E4;HANGUL JONGSEONG PIEUP-PHIEUPH;Lo;0;L;;;;;N;;;;; -11E5;HANGUL JONGSEONG PIEUP-HIEUH;Lo;0;L;;;;;N;;;;; -11E6;HANGUL JONGSEONG KAPYEOUNPIEUP;Lo;0;L;;;;;N;;;;; -11E7;HANGUL JONGSEONG SIOS-KIYEOK;Lo;0;L;;;;;N;;;;; -11E8;HANGUL JONGSEONG SIOS-TIKEUT;Lo;0;L;;;;;N;;;;; -11E9;HANGUL JONGSEONG SIOS-RIEUL;Lo;0;L;;;;;N;;;;; -11EA;HANGUL JONGSEONG SIOS-PIEUP;Lo;0;L;;;;;N;;;;; -11EB;HANGUL JONGSEONG PANSIOS;Lo;0;L;;;;;N;;;;; -11EC;HANGUL JONGSEONG IEUNG-KIYEOK;Lo;0;L;;;;;N;;;;; -11ED;HANGUL JONGSEONG IEUNG-SSANGKIYEOK;Lo;0;L;;;;;N;;;;; -11EE;HANGUL JONGSEONG SSANGIEUNG;Lo;0;L;;;;;N;;;;; -11EF;HANGUL JONGSEONG IEUNG-KHIEUKH;Lo;0;L;;;;;N;;;;; -11F0;HANGUL JONGSEONG YESIEUNG;Lo;0;L;;;;;N;;;;; -11F1;HANGUL JONGSEONG YESIEUNG-SIOS;Lo;0;L;;;;;N;;;;; -11F2;HANGUL JONGSEONG YESIEUNG-PANSIOS;Lo;0;L;;;;;N;;;;; -11F3;HANGUL JONGSEONG PHIEUPH-PIEUP;Lo;0;L;;;;;N;;;;; -11F4;HANGUL JONGSEONG KAPYEOUNPHIEUPH;Lo;0;L;;;;;N;;;;; -11F5;HANGUL JONGSEONG HIEUH-NIEUN;Lo;0;L;;;;;N;;;;; -11F6;HANGUL JONGSEONG HIEUH-RIEUL;Lo;0;L;;;;;N;;;;; -11F7;HANGUL JONGSEONG HIEUH-MIEUM;Lo;0;L;;;;;N;;;;; -11F8;HANGUL JONGSEONG HIEUH-PIEUP;Lo;0;L;;;;;N;;;;; -11F9;HANGUL JONGSEONG YEORINHIEUH;Lo;0;L;;;;;N;;;;; -11FA;HANGUL JONGSEONG KIYEOK-NIEUN;Lo;0;L;;;;;N;;;;; -11FB;HANGUL JONGSEONG KIYEOK-PIEUP;Lo;0;L;;;;;N;;;;; -11FC;HANGUL JONGSEONG KIYEOK-CHIEUCH;Lo;0;L;;;;;N;;;;; -11FD;HANGUL JONGSEONG KIYEOK-KHIEUKH;Lo;0;L;;;;;N;;;;; -11FE;HANGUL JONGSEONG KIYEOK-HIEUH;Lo;0;L;;;;;N;;;;; -11FF;HANGUL JONGSEONG SSANGNIEUN;Lo;0;L;;;;;N;;;;; -1200;ETHIOPIC SYLLABLE HA;Lo;0;L;;;;;N;;;;; -1201;ETHIOPIC SYLLABLE HU;Lo;0;L;;;;;N;;;;; -1202;ETHIOPIC SYLLABLE HI;Lo;0;L;;;;;N;;;;; -1203;ETHIOPIC SYLLABLE HAA;Lo;0;L;;;;;N;;;;; -1204;ETHIOPIC SYLLABLE HEE;Lo;0;L;;;;;N;;;;; -1205;ETHIOPIC SYLLABLE HE;Lo;0;L;;;;;N;;;;; -1206;ETHIOPIC SYLLABLE HO;Lo;0;L;;;;;N;;;;; -1207;ETHIOPIC SYLLABLE HOA;Lo;0;L;;;;;N;;;;; -1208;ETHIOPIC SYLLABLE LA;Lo;0;L;;;;;N;;;;; -1209;ETHIOPIC SYLLABLE LU;Lo;0;L;;;;;N;;;;; -120A;ETHIOPIC SYLLABLE LI;Lo;0;L;;;;;N;;;;; -120B;ETHIOPIC SYLLABLE LAA;Lo;0;L;;;;;N;;;;; -120C;ETHIOPIC SYLLABLE LEE;Lo;0;L;;;;;N;;;;; -120D;ETHIOPIC SYLLABLE LE;Lo;0;L;;;;;N;;;;; -120E;ETHIOPIC SYLLABLE LO;Lo;0;L;;;;;N;;;;; -120F;ETHIOPIC SYLLABLE LWA;Lo;0;L;;;;;N;;;;; -1210;ETHIOPIC SYLLABLE HHA;Lo;0;L;;;;;N;;;;; -1211;ETHIOPIC SYLLABLE HHU;Lo;0;L;;;;;N;;;;; -1212;ETHIOPIC SYLLABLE HHI;Lo;0;L;;;;;N;;;;; -1213;ETHIOPIC SYLLABLE HHAA;Lo;0;L;;;;;N;;;;; -1214;ETHIOPIC SYLLABLE HHEE;Lo;0;L;;;;;N;;;;; -1215;ETHIOPIC SYLLABLE HHE;Lo;0;L;;;;;N;;;;; -1216;ETHIOPIC SYLLABLE HHO;Lo;0;L;;;;;N;;;;; -1217;ETHIOPIC SYLLABLE HHWA;Lo;0;L;;;;;N;;;;; -1218;ETHIOPIC SYLLABLE MA;Lo;0;L;;;;;N;;;;; -1219;ETHIOPIC SYLLABLE MU;Lo;0;L;;;;;N;;;;; -121A;ETHIOPIC SYLLABLE MI;Lo;0;L;;;;;N;;;;; -121B;ETHIOPIC SYLLABLE MAA;Lo;0;L;;;;;N;;;;; -121C;ETHIOPIC SYLLABLE MEE;Lo;0;L;;;;;N;;;;; -121D;ETHIOPIC SYLLABLE ME;Lo;0;L;;;;;N;;;;; -121E;ETHIOPIC SYLLABLE MO;Lo;0;L;;;;;N;;;;; -121F;ETHIOPIC SYLLABLE MWA;Lo;0;L;;;;;N;;;;; -1220;ETHIOPIC SYLLABLE SZA;Lo;0;L;;;;;N;;;;; -1221;ETHIOPIC SYLLABLE SZU;Lo;0;L;;;;;N;;;;; -1222;ETHIOPIC SYLLABLE SZI;Lo;0;L;;;;;N;;;;; -1223;ETHIOPIC SYLLABLE SZAA;Lo;0;L;;;;;N;;;;; -1224;ETHIOPIC SYLLABLE SZEE;Lo;0;L;;;;;N;;;;; -1225;ETHIOPIC SYLLABLE SZE;Lo;0;L;;;;;N;;;;; -1226;ETHIOPIC SYLLABLE SZO;Lo;0;L;;;;;N;;;;; -1227;ETHIOPIC SYLLABLE SZWA;Lo;0;L;;;;;N;;;;; -1228;ETHIOPIC SYLLABLE RA;Lo;0;L;;;;;N;;;;; -1229;ETHIOPIC SYLLABLE RU;Lo;0;L;;;;;N;;;;; -122A;ETHIOPIC SYLLABLE RI;Lo;0;L;;;;;N;;;;; -122B;ETHIOPIC SYLLABLE RAA;Lo;0;L;;;;;N;;;;; -122C;ETHIOPIC SYLLABLE REE;Lo;0;L;;;;;N;;;;; -122D;ETHIOPIC SYLLABLE RE;Lo;0;L;;;;;N;;;;; -122E;ETHIOPIC SYLLABLE RO;Lo;0;L;;;;;N;;;;; -122F;ETHIOPIC SYLLABLE RWA;Lo;0;L;;;;;N;;;;; -1230;ETHIOPIC SYLLABLE SA;Lo;0;L;;;;;N;;;;; -1231;ETHIOPIC SYLLABLE SU;Lo;0;L;;;;;N;;;;; -1232;ETHIOPIC SYLLABLE SI;Lo;0;L;;;;;N;;;;; -1233;ETHIOPIC SYLLABLE SAA;Lo;0;L;;;;;N;;;;; -1234;ETHIOPIC SYLLABLE SEE;Lo;0;L;;;;;N;;;;; -1235;ETHIOPIC SYLLABLE SE;Lo;0;L;;;;;N;;;;; -1236;ETHIOPIC SYLLABLE SO;Lo;0;L;;;;;N;;;;; -1237;ETHIOPIC SYLLABLE SWA;Lo;0;L;;;;;N;;;;; -1238;ETHIOPIC SYLLABLE SHA;Lo;0;L;;;;;N;;;;; -1239;ETHIOPIC SYLLABLE SHU;Lo;0;L;;;;;N;;;;; -123A;ETHIOPIC SYLLABLE SHI;Lo;0;L;;;;;N;;;;; -123B;ETHIOPIC SYLLABLE SHAA;Lo;0;L;;;;;N;;;;; -123C;ETHIOPIC SYLLABLE SHEE;Lo;0;L;;;;;N;;;;; -123D;ETHIOPIC SYLLABLE SHE;Lo;0;L;;;;;N;;;;; -123E;ETHIOPIC SYLLABLE SHO;Lo;0;L;;;;;N;;;;; -123F;ETHIOPIC SYLLABLE SHWA;Lo;0;L;;;;;N;;;;; -1240;ETHIOPIC SYLLABLE QA;Lo;0;L;;;;;N;;;;; -1241;ETHIOPIC SYLLABLE QU;Lo;0;L;;;;;N;;;;; -1242;ETHIOPIC SYLLABLE QI;Lo;0;L;;;;;N;;;;; -1243;ETHIOPIC SYLLABLE QAA;Lo;0;L;;;;;N;;;;; -1244;ETHIOPIC SYLLABLE QEE;Lo;0;L;;;;;N;;;;; -1245;ETHIOPIC SYLLABLE QE;Lo;0;L;;;;;N;;;;; -1246;ETHIOPIC SYLLABLE QO;Lo;0;L;;;;;N;;;;; -1247;ETHIOPIC SYLLABLE QOA;Lo;0;L;;;;;N;;;;; -1248;ETHIOPIC SYLLABLE QWA;Lo;0;L;;;;;N;;;;; -124A;ETHIOPIC SYLLABLE QWI;Lo;0;L;;;;;N;;;;; -124B;ETHIOPIC SYLLABLE QWAA;Lo;0;L;;;;;N;;;;; -124C;ETHIOPIC SYLLABLE QWEE;Lo;0;L;;;;;N;;;;; -124D;ETHIOPIC SYLLABLE QWE;Lo;0;L;;;;;N;;;;; -1250;ETHIOPIC SYLLABLE QHA;Lo;0;L;;;;;N;;;;; -1251;ETHIOPIC SYLLABLE QHU;Lo;0;L;;;;;N;;;;; -1252;ETHIOPIC SYLLABLE QHI;Lo;0;L;;;;;N;;;;; -1253;ETHIOPIC SYLLABLE QHAA;Lo;0;L;;;;;N;;;;; -1254;ETHIOPIC SYLLABLE QHEE;Lo;0;L;;;;;N;;;;; -1255;ETHIOPIC SYLLABLE QHE;Lo;0;L;;;;;N;;;;; -1256;ETHIOPIC SYLLABLE QHO;Lo;0;L;;;;;N;;;;; -1258;ETHIOPIC SYLLABLE QHWA;Lo;0;L;;;;;N;;;;; -125A;ETHIOPIC SYLLABLE QHWI;Lo;0;L;;;;;N;;;;; -125B;ETHIOPIC SYLLABLE QHWAA;Lo;0;L;;;;;N;;;;; -125C;ETHIOPIC SYLLABLE QHWEE;Lo;0;L;;;;;N;;;;; -125D;ETHIOPIC SYLLABLE QHWE;Lo;0;L;;;;;N;;;;; -1260;ETHIOPIC SYLLABLE BA;Lo;0;L;;;;;N;;;;; -1261;ETHIOPIC SYLLABLE BU;Lo;0;L;;;;;N;;;;; -1262;ETHIOPIC SYLLABLE BI;Lo;0;L;;;;;N;;;;; -1263;ETHIOPIC SYLLABLE BAA;Lo;0;L;;;;;N;;;;; -1264;ETHIOPIC SYLLABLE BEE;Lo;0;L;;;;;N;;;;; -1265;ETHIOPIC SYLLABLE BE;Lo;0;L;;;;;N;;;;; -1266;ETHIOPIC SYLLABLE BO;Lo;0;L;;;;;N;;;;; -1267;ETHIOPIC SYLLABLE BWA;Lo;0;L;;;;;N;;;;; -1268;ETHIOPIC SYLLABLE VA;Lo;0;L;;;;;N;;;;; -1269;ETHIOPIC SYLLABLE VU;Lo;0;L;;;;;N;;;;; -126A;ETHIOPIC SYLLABLE VI;Lo;0;L;;;;;N;;;;; -126B;ETHIOPIC SYLLABLE VAA;Lo;0;L;;;;;N;;;;; -126C;ETHIOPIC SYLLABLE VEE;Lo;0;L;;;;;N;;;;; -126D;ETHIOPIC SYLLABLE VE;Lo;0;L;;;;;N;;;;; -126E;ETHIOPIC SYLLABLE VO;Lo;0;L;;;;;N;;;;; -126F;ETHIOPIC SYLLABLE VWA;Lo;0;L;;;;;N;;;;; -1270;ETHIOPIC SYLLABLE TA;Lo;0;L;;;;;N;;;;; -1271;ETHIOPIC SYLLABLE TU;Lo;0;L;;;;;N;;;;; -1272;ETHIOPIC SYLLABLE TI;Lo;0;L;;;;;N;;;;; -1273;ETHIOPIC SYLLABLE TAA;Lo;0;L;;;;;N;;;;; -1274;ETHIOPIC SYLLABLE TEE;Lo;0;L;;;;;N;;;;; -1275;ETHIOPIC SYLLABLE TE;Lo;0;L;;;;;N;;;;; -1276;ETHIOPIC SYLLABLE TO;Lo;0;L;;;;;N;;;;; -1277;ETHIOPIC SYLLABLE TWA;Lo;0;L;;;;;N;;;;; -1278;ETHIOPIC SYLLABLE CA;Lo;0;L;;;;;N;;;;; -1279;ETHIOPIC SYLLABLE CU;Lo;0;L;;;;;N;;;;; -127A;ETHIOPIC SYLLABLE CI;Lo;0;L;;;;;N;;;;; -127B;ETHIOPIC SYLLABLE CAA;Lo;0;L;;;;;N;;;;; -127C;ETHIOPIC SYLLABLE CEE;Lo;0;L;;;;;N;;;;; -127D;ETHIOPIC SYLLABLE CE;Lo;0;L;;;;;N;;;;; -127E;ETHIOPIC SYLLABLE CO;Lo;0;L;;;;;N;;;;; -127F;ETHIOPIC SYLLABLE CWA;Lo;0;L;;;;;N;;;;; -1280;ETHIOPIC SYLLABLE XA;Lo;0;L;;;;;N;;;;; -1281;ETHIOPIC SYLLABLE XU;Lo;0;L;;;;;N;;;;; -1282;ETHIOPIC SYLLABLE XI;Lo;0;L;;;;;N;;;;; -1283;ETHIOPIC SYLLABLE XAA;Lo;0;L;;;;;N;;;;; -1284;ETHIOPIC SYLLABLE XEE;Lo;0;L;;;;;N;;;;; -1285;ETHIOPIC SYLLABLE XE;Lo;0;L;;;;;N;;;;; -1286;ETHIOPIC SYLLABLE XO;Lo;0;L;;;;;N;;;;; -1287;ETHIOPIC SYLLABLE XOA;Lo;0;L;;;;;N;;;;; -1288;ETHIOPIC SYLLABLE XWA;Lo;0;L;;;;;N;;;;; -128A;ETHIOPIC SYLLABLE XWI;Lo;0;L;;;;;N;;;;; -128B;ETHIOPIC SYLLABLE XWAA;Lo;0;L;;;;;N;;;;; -128C;ETHIOPIC SYLLABLE XWEE;Lo;0;L;;;;;N;;;;; -128D;ETHIOPIC SYLLABLE XWE;Lo;0;L;;;;;N;;;;; -1290;ETHIOPIC SYLLABLE NA;Lo;0;L;;;;;N;;;;; -1291;ETHIOPIC SYLLABLE NU;Lo;0;L;;;;;N;;;;; -1292;ETHIOPIC SYLLABLE NI;Lo;0;L;;;;;N;;;;; -1293;ETHIOPIC SYLLABLE NAA;Lo;0;L;;;;;N;;;;; -1294;ETHIOPIC SYLLABLE NEE;Lo;0;L;;;;;N;;;;; -1295;ETHIOPIC SYLLABLE NE;Lo;0;L;;;;;N;;;;; -1296;ETHIOPIC SYLLABLE NO;Lo;0;L;;;;;N;;;;; -1297;ETHIOPIC SYLLABLE NWA;Lo;0;L;;;;;N;;;;; -1298;ETHIOPIC SYLLABLE NYA;Lo;0;L;;;;;N;;;;; -1299;ETHIOPIC SYLLABLE NYU;Lo;0;L;;;;;N;;;;; -129A;ETHIOPIC SYLLABLE NYI;Lo;0;L;;;;;N;;;;; -129B;ETHIOPIC SYLLABLE NYAA;Lo;0;L;;;;;N;;;;; -129C;ETHIOPIC SYLLABLE NYEE;Lo;0;L;;;;;N;;;;; -129D;ETHIOPIC SYLLABLE NYE;Lo;0;L;;;;;N;;;;; -129E;ETHIOPIC SYLLABLE NYO;Lo;0;L;;;;;N;;;;; -129F;ETHIOPIC SYLLABLE NYWA;Lo;0;L;;;;;N;;;;; -12A0;ETHIOPIC SYLLABLE GLOTTAL A;Lo;0;L;;;;;N;;;;; -12A1;ETHIOPIC SYLLABLE GLOTTAL U;Lo;0;L;;;;;N;;;;; -12A2;ETHIOPIC SYLLABLE GLOTTAL I;Lo;0;L;;;;;N;;;;; -12A3;ETHIOPIC SYLLABLE GLOTTAL AA;Lo;0;L;;;;;N;;;;; -12A4;ETHIOPIC SYLLABLE GLOTTAL EE;Lo;0;L;;;;;N;;;;; -12A5;ETHIOPIC SYLLABLE GLOTTAL E;Lo;0;L;;;;;N;;;;; -12A6;ETHIOPIC SYLLABLE GLOTTAL O;Lo;0;L;;;;;N;;;;; -12A7;ETHIOPIC SYLLABLE GLOTTAL WA;Lo;0;L;;;;;N;;;;; -12A8;ETHIOPIC SYLLABLE KA;Lo;0;L;;;;;N;;;;; -12A9;ETHIOPIC SYLLABLE KU;Lo;0;L;;;;;N;;;;; -12AA;ETHIOPIC SYLLABLE KI;Lo;0;L;;;;;N;;;;; -12AB;ETHIOPIC SYLLABLE KAA;Lo;0;L;;;;;N;;;;; -12AC;ETHIOPIC SYLLABLE KEE;Lo;0;L;;;;;N;;;;; -12AD;ETHIOPIC SYLLABLE KE;Lo;0;L;;;;;N;;;;; -12AE;ETHIOPIC SYLLABLE KO;Lo;0;L;;;;;N;;;;; -12AF;ETHIOPIC SYLLABLE KOA;Lo;0;L;;;;;N;;;;; -12B0;ETHIOPIC SYLLABLE KWA;Lo;0;L;;;;;N;;;;; -12B2;ETHIOPIC SYLLABLE KWI;Lo;0;L;;;;;N;;;;; -12B3;ETHIOPIC SYLLABLE KWAA;Lo;0;L;;;;;N;;;;; -12B4;ETHIOPIC SYLLABLE KWEE;Lo;0;L;;;;;N;;;;; -12B5;ETHIOPIC SYLLABLE KWE;Lo;0;L;;;;;N;;;;; -12B8;ETHIOPIC SYLLABLE KXA;Lo;0;L;;;;;N;;;;; -12B9;ETHIOPIC SYLLABLE KXU;Lo;0;L;;;;;N;;;;; -12BA;ETHIOPIC SYLLABLE KXI;Lo;0;L;;;;;N;;;;; -12BB;ETHIOPIC SYLLABLE KXAA;Lo;0;L;;;;;N;;;;; -12BC;ETHIOPIC SYLLABLE KXEE;Lo;0;L;;;;;N;;;;; -12BD;ETHIOPIC SYLLABLE KXE;Lo;0;L;;;;;N;;;;; -12BE;ETHIOPIC SYLLABLE KXO;Lo;0;L;;;;;N;;;;; -12C0;ETHIOPIC SYLLABLE KXWA;Lo;0;L;;;;;N;;;;; -12C2;ETHIOPIC SYLLABLE KXWI;Lo;0;L;;;;;N;;;;; -12C3;ETHIOPIC SYLLABLE KXWAA;Lo;0;L;;;;;N;;;;; -12C4;ETHIOPIC SYLLABLE KXWEE;Lo;0;L;;;;;N;;;;; -12C5;ETHIOPIC SYLLABLE KXWE;Lo;0;L;;;;;N;;;;; -12C8;ETHIOPIC SYLLABLE WA;Lo;0;L;;;;;N;;;;; -12C9;ETHIOPIC SYLLABLE WU;Lo;0;L;;;;;N;;;;; -12CA;ETHIOPIC SYLLABLE WI;Lo;0;L;;;;;N;;;;; -12CB;ETHIOPIC SYLLABLE WAA;Lo;0;L;;;;;N;;;;; -12CC;ETHIOPIC SYLLABLE WEE;Lo;0;L;;;;;N;;;;; -12CD;ETHIOPIC SYLLABLE WE;Lo;0;L;;;;;N;;;;; -12CE;ETHIOPIC SYLLABLE WO;Lo;0;L;;;;;N;;;;; -12CF;ETHIOPIC SYLLABLE WOA;Lo;0;L;;;;;N;;;;; -12D0;ETHIOPIC SYLLABLE PHARYNGEAL A;Lo;0;L;;;;;N;;;;; -12D1;ETHIOPIC SYLLABLE PHARYNGEAL U;Lo;0;L;;;;;N;;;;; -12D2;ETHIOPIC SYLLABLE PHARYNGEAL I;Lo;0;L;;;;;N;;;;; -12D3;ETHIOPIC SYLLABLE PHARYNGEAL AA;Lo;0;L;;;;;N;;;;; -12D4;ETHIOPIC SYLLABLE PHARYNGEAL EE;Lo;0;L;;;;;N;;;;; -12D5;ETHIOPIC SYLLABLE PHARYNGEAL E;Lo;0;L;;;;;N;;;;; -12D6;ETHIOPIC SYLLABLE PHARYNGEAL O;Lo;0;L;;;;;N;;;;; -12D8;ETHIOPIC SYLLABLE ZA;Lo;0;L;;;;;N;;;;; -12D9;ETHIOPIC SYLLABLE ZU;Lo;0;L;;;;;N;;;;; -12DA;ETHIOPIC SYLLABLE ZI;Lo;0;L;;;;;N;;;;; -12DB;ETHIOPIC SYLLABLE ZAA;Lo;0;L;;;;;N;;;;; -12DC;ETHIOPIC SYLLABLE ZEE;Lo;0;L;;;;;N;;;;; -12DD;ETHIOPIC SYLLABLE ZE;Lo;0;L;;;;;N;;;;; -12DE;ETHIOPIC SYLLABLE ZO;Lo;0;L;;;;;N;;;;; -12DF;ETHIOPIC SYLLABLE ZWA;Lo;0;L;;;;;N;;;;; -12E0;ETHIOPIC SYLLABLE ZHA;Lo;0;L;;;;;N;;;;; -12E1;ETHIOPIC SYLLABLE ZHU;Lo;0;L;;;;;N;;;;; -12E2;ETHIOPIC SYLLABLE ZHI;Lo;0;L;;;;;N;;;;; -12E3;ETHIOPIC SYLLABLE ZHAA;Lo;0;L;;;;;N;;;;; -12E4;ETHIOPIC SYLLABLE ZHEE;Lo;0;L;;;;;N;;;;; -12E5;ETHIOPIC SYLLABLE ZHE;Lo;0;L;;;;;N;;;;; -12E6;ETHIOPIC SYLLABLE ZHO;Lo;0;L;;;;;N;;;;; -12E7;ETHIOPIC SYLLABLE ZHWA;Lo;0;L;;;;;N;;;;; -12E8;ETHIOPIC SYLLABLE YA;Lo;0;L;;;;;N;;;;; -12E9;ETHIOPIC SYLLABLE YU;Lo;0;L;;;;;N;;;;; -12EA;ETHIOPIC SYLLABLE YI;Lo;0;L;;;;;N;;;;; -12EB;ETHIOPIC SYLLABLE YAA;Lo;0;L;;;;;N;;;;; -12EC;ETHIOPIC SYLLABLE YEE;Lo;0;L;;;;;N;;;;; -12ED;ETHIOPIC SYLLABLE YE;Lo;0;L;;;;;N;;;;; -12EE;ETHIOPIC SYLLABLE YO;Lo;0;L;;;;;N;;;;; -12EF;ETHIOPIC SYLLABLE YOA;Lo;0;L;;;;;N;;;;; -12F0;ETHIOPIC SYLLABLE DA;Lo;0;L;;;;;N;;;;; -12F1;ETHIOPIC SYLLABLE DU;Lo;0;L;;;;;N;;;;; -12F2;ETHIOPIC SYLLABLE DI;Lo;0;L;;;;;N;;;;; -12F3;ETHIOPIC SYLLABLE DAA;Lo;0;L;;;;;N;;;;; -12F4;ETHIOPIC SYLLABLE DEE;Lo;0;L;;;;;N;;;;; -12F5;ETHIOPIC SYLLABLE DE;Lo;0;L;;;;;N;;;;; -12F6;ETHIOPIC SYLLABLE DO;Lo;0;L;;;;;N;;;;; -12F7;ETHIOPIC SYLLABLE DWA;Lo;0;L;;;;;N;;;;; -12F8;ETHIOPIC SYLLABLE DDA;Lo;0;L;;;;;N;;;;; -12F9;ETHIOPIC SYLLABLE DDU;Lo;0;L;;;;;N;;;;; -12FA;ETHIOPIC SYLLABLE DDI;Lo;0;L;;;;;N;;;;; -12FB;ETHIOPIC SYLLABLE DDAA;Lo;0;L;;;;;N;;;;; -12FC;ETHIOPIC SYLLABLE DDEE;Lo;0;L;;;;;N;;;;; -12FD;ETHIOPIC SYLLABLE DDE;Lo;0;L;;;;;N;;;;; -12FE;ETHIOPIC SYLLABLE DDO;Lo;0;L;;;;;N;;;;; -12FF;ETHIOPIC SYLLABLE DDWA;Lo;0;L;;;;;N;;;;; -1300;ETHIOPIC SYLLABLE JA;Lo;0;L;;;;;N;;;;; -1301;ETHIOPIC SYLLABLE JU;Lo;0;L;;;;;N;;;;; -1302;ETHIOPIC SYLLABLE JI;Lo;0;L;;;;;N;;;;; -1303;ETHIOPIC SYLLABLE JAA;Lo;0;L;;;;;N;;;;; -1304;ETHIOPIC SYLLABLE JEE;Lo;0;L;;;;;N;;;;; -1305;ETHIOPIC SYLLABLE JE;Lo;0;L;;;;;N;;;;; -1306;ETHIOPIC SYLLABLE JO;Lo;0;L;;;;;N;;;;; -1307;ETHIOPIC SYLLABLE JWA;Lo;0;L;;;;;N;;;;; -1308;ETHIOPIC SYLLABLE GA;Lo;0;L;;;;;N;;;;; -1309;ETHIOPIC SYLLABLE GU;Lo;0;L;;;;;N;;;;; -130A;ETHIOPIC SYLLABLE GI;Lo;0;L;;;;;N;;;;; -130B;ETHIOPIC SYLLABLE GAA;Lo;0;L;;;;;N;;;;; -130C;ETHIOPIC SYLLABLE GEE;Lo;0;L;;;;;N;;;;; -130D;ETHIOPIC SYLLABLE GE;Lo;0;L;;;;;N;;;;; -130E;ETHIOPIC SYLLABLE GO;Lo;0;L;;;;;N;;;;; -130F;ETHIOPIC SYLLABLE GOA;Lo;0;L;;;;;N;;;;; -1310;ETHIOPIC SYLLABLE GWA;Lo;0;L;;;;;N;;;;; -1312;ETHIOPIC SYLLABLE GWI;Lo;0;L;;;;;N;;;;; -1313;ETHIOPIC SYLLABLE GWAA;Lo;0;L;;;;;N;;;;; -1314;ETHIOPIC SYLLABLE GWEE;Lo;0;L;;;;;N;;;;; -1315;ETHIOPIC SYLLABLE GWE;Lo;0;L;;;;;N;;;;; -1318;ETHIOPIC SYLLABLE GGA;Lo;0;L;;;;;N;;;;; -1319;ETHIOPIC SYLLABLE GGU;Lo;0;L;;;;;N;;;;; -131A;ETHIOPIC SYLLABLE GGI;Lo;0;L;;;;;N;;;;; -131B;ETHIOPIC SYLLABLE GGAA;Lo;0;L;;;;;N;;;;; -131C;ETHIOPIC SYLLABLE GGEE;Lo;0;L;;;;;N;;;;; -131D;ETHIOPIC SYLLABLE GGE;Lo;0;L;;;;;N;;;;; -131E;ETHIOPIC SYLLABLE GGO;Lo;0;L;;;;;N;;;;; -131F;ETHIOPIC SYLLABLE GGWAA;Lo;0;L;;;;;N;;;;; -1320;ETHIOPIC SYLLABLE THA;Lo;0;L;;;;;N;;;;; -1321;ETHIOPIC SYLLABLE THU;Lo;0;L;;;;;N;;;;; -1322;ETHIOPIC SYLLABLE THI;Lo;0;L;;;;;N;;;;; -1323;ETHIOPIC SYLLABLE THAA;Lo;0;L;;;;;N;;;;; -1324;ETHIOPIC SYLLABLE THEE;Lo;0;L;;;;;N;;;;; -1325;ETHIOPIC SYLLABLE THE;Lo;0;L;;;;;N;;;;; -1326;ETHIOPIC SYLLABLE THO;Lo;0;L;;;;;N;;;;; -1327;ETHIOPIC SYLLABLE THWA;Lo;0;L;;;;;N;;;;; -1328;ETHIOPIC SYLLABLE CHA;Lo;0;L;;;;;N;;;;; -1329;ETHIOPIC SYLLABLE CHU;Lo;0;L;;;;;N;;;;; -132A;ETHIOPIC SYLLABLE CHI;Lo;0;L;;;;;N;;;;; -132B;ETHIOPIC SYLLABLE CHAA;Lo;0;L;;;;;N;;;;; -132C;ETHIOPIC SYLLABLE CHEE;Lo;0;L;;;;;N;;;;; -132D;ETHIOPIC SYLLABLE CHE;Lo;0;L;;;;;N;;;;; -132E;ETHIOPIC SYLLABLE CHO;Lo;0;L;;;;;N;;;;; -132F;ETHIOPIC SYLLABLE CHWA;Lo;0;L;;;;;N;;;;; -1330;ETHIOPIC SYLLABLE PHA;Lo;0;L;;;;;N;;;;; -1331;ETHIOPIC SYLLABLE PHU;Lo;0;L;;;;;N;;;;; -1332;ETHIOPIC SYLLABLE PHI;Lo;0;L;;;;;N;;;;; -1333;ETHIOPIC SYLLABLE PHAA;Lo;0;L;;;;;N;;;;; -1334;ETHIOPIC SYLLABLE PHEE;Lo;0;L;;;;;N;;;;; -1335;ETHIOPIC SYLLABLE PHE;Lo;0;L;;;;;N;;;;; -1336;ETHIOPIC SYLLABLE PHO;Lo;0;L;;;;;N;;;;; -1337;ETHIOPIC SYLLABLE PHWA;Lo;0;L;;;;;N;;;;; -1338;ETHIOPIC SYLLABLE TSA;Lo;0;L;;;;;N;;;;; -1339;ETHIOPIC SYLLABLE TSU;Lo;0;L;;;;;N;;;;; -133A;ETHIOPIC SYLLABLE TSI;Lo;0;L;;;;;N;;;;; -133B;ETHIOPIC SYLLABLE TSAA;Lo;0;L;;;;;N;;;;; -133C;ETHIOPIC SYLLABLE TSEE;Lo;0;L;;;;;N;;;;; -133D;ETHIOPIC SYLLABLE TSE;Lo;0;L;;;;;N;;;;; -133E;ETHIOPIC SYLLABLE TSO;Lo;0;L;;;;;N;;;;; -133F;ETHIOPIC SYLLABLE TSWA;Lo;0;L;;;;;N;;;;; -1340;ETHIOPIC SYLLABLE TZA;Lo;0;L;;;;;N;;;;; -1341;ETHIOPIC SYLLABLE TZU;Lo;0;L;;;;;N;;;;; -1342;ETHIOPIC SYLLABLE TZI;Lo;0;L;;;;;N;;;;; -1343;ETHIOPIC SYLLABLE TZAA;Lo;0;L;;;;;N;;;;; -1344;ETHIOPIC SYLLABLE TZEE;Lo;0;L;;;;;N;;;;; -1345;ETHIOPIC SYLLABLE TZE;Lo;0;L;;;;;N;;;;; -1346;ETHIOPIC SYLLABLE TZO;Lo;0;L;;;;;N;;;;; -1347;ETHIOPIC SYLLABLE TZOA;Lo;0;L;;;;;N;;;;; -1348;ETHIOPIC SYLLABLE FA;Lo;0;L;;;;;N;;;;; -1349;ETHIOPIC SYLLABLE FU;Lo;0;L;;;;;N;;;;; -134A;ETHIOPIC SYLLABLE FI;Lo;0;L;;;;;N;;;;; -134B;ETHIOPIC SYLLABLE FAA;Lo;0;L;;;;;N;;;;; -134C;ETHIOPIC SYLLABLE FEE;Lo;0;L;;;;;N;;;;; -134D;ETHIOPIC SYLLABLE FE;Lo;0;L;;;;;N;;;;; -134E;ETHIOPIC SYLLABLE FO;Lo;0;L;;;;;N;;;;; -134F;ETHIOPIC SYLLABLE FWA;Lo;0;L;;;;;N;;;;; -1350;ETHIOPIC SYLLABLE PA;Lo;0;L;;;;;N;;;;; -1351;ETHIOPIC SYLLABLE PU;Lo;0;L;;;;;N;;;;; -1352;ETHIOPIC SYLLABLE PI;Lo;0;L;;;;;N;;;;; -1353;ETHIOPIC SYLLABLE PAA;Lo;0;L;;;;;N;;;;; -1354;ETHIOPIC SYLLABLE PEE;Lo;0;L;;;;;N;;;;; -1355;ETHIOPIC SYLLABLE PE;Lo;0;L;;;;;N;;;;; -1356;ETHIOPIC SYLLABLE PO;Lo;0;L;;;;;N;;;;; -1357;ETHIOPIC SYLLABLE PWA;Lo;0;L;;;;;N;;;;; -1358;ETHIOPIC SYLLABLE RYA;Lo;0;L;;;;;N;;;;; -1359;ETHIOPIC SYLLABLE MYA;Lo;0;L;;;;;N;;;;; -135A;ETHIOPIC SYLLABLE FYA;Lo;0;L;;;;;N;;;;; -135D;ETHIOPIC COMBINING GEMINATION AND VOWEL LENGTH MARK;Mn;230;NSM;;;;;N;;;;; -135E;ETHIOPIC COMBINING VOWEL LENGTH MARK;Mn;230;NSM;;;;;N;;;;; -135F;ETHIOPIC COMBINING GEMINATION MARK;Mn;230;NSM;;;;;N;;;;; -1360;ETHIOPIC SECTION MARK;So;0;L;;;;;N;;;;; -1361;ETHIOPIC WORDSPACE;Po;0;L;;;;;N;;;;; -1362;ETHIOPIC FULL STOP;Po;0;L;;;;;N;;;;; -1363;ETHIOPIC COMMA;Po;0;L;;;;;N;;;;; -1364;ETHIOPIC SEMICOLON;Po;0;L;;;;;N;;;;; -1365;ETHIOPIC COLON;Po;0;L;;;;;N;;;;; -1366;ETHIOPIC PREFACE COLON;Po;0;L;;;;;N;;;;; -1367;ETHIOPIC QUESTION MARK;Po;0;L;;;;;N;;;;; -1368;ETHIOPIC PARAGRAPH SEPARATOR;Po;0;L;;;;;N;;;;; -1369;ETHIOPIC DIGIT ONE;No;0;L;;;1;1;N;;;;; -136A;ETHIOPIC DIGIT TWO;No;0;L;;;2;2;N;;;;; -136B;ETHIOPIC DIGIT THREE;No;0;L;;;3;3;N;;;;; -136C;ETHIOPIC DIGIT FOUR;No;0;L;;;4;4;N;;;;; -136D;ETHIOPIC DIGIT FIVE;No;0;L;;;5;5;N;;;;; -136E;ETHIOPIC DIGIT SIX;No;0;L;;;6;6;N;;;;; -136F;ETHIOPIC DIGIT SEVEN;No;0;L;;;7;7;N;;;;; -1370;ETHIOPIC DIGIT EIGHT;No;0;L;;;8;8;N;;;;; -1371;ETHIOPIC DIGIT NINE;No;0;L;;;9;9;N;;;;; -1372;ETHIOPIC NUMBER TEN;No;0;L;;;;10;N;;;;; -1373;ETHIOPIC NUMBER TWENTY;No;0;L;;;;20;N;;;;; -1374;ETHIOPIC NUMBER THIRTY;No;0;L;;;;30;N;;;;; -1375;ETHIOPIC NUMBER FORTY;No;0;L;;;;40;N;;;;; -1376;ETHIOPIC NUMBER FIFTY;No;0;L;;;;50;N;;;;; -1377;ETHIOPIC NUMBER SIXTY;No;0;L;;;;60;N;;;;; -1378;ETHIOPIC NUMBER SEVENTY;No;0;L;;;;70;N;;;;; -1379;ETHIOPIC NUMBER EIGHTY;No;0;L;;;;80;N;;;;; -137A;ETHIOPIC NUMBER NINETY;No;0;L;;;;90;N;;;;; -137B;ETHIOPIC NUMBER HUNDRED;No;0;L;;;;100;N;;;;; -137C;ETHIOPIC NUMBER TEN THOUSAND;No;0;L;;;;10000;N;;;;; -1380;ETHIOPIC SYLLABLE SEBATBEIT MWA;Lo;0;L;;;;;N;;;;; -1381;ETHIOPIC SYLLABLE MWI;Lo;0;L;;;;;N;;;;; -1382;ETHIOPIC SYLLABLE MWEE;Lo;0;L;;;;;N;;;;; -1383;ETHIOPIC SYLLABLE MWE;Lo;0;L;;;;;N;;;;; -1384;ETHIOPIC SYLLABLE SEBATBEIT BWA;Lo;0;L;;;;;N;;;;; -1385;ETHIOPIC SYLLABLE BWI;Lo;0;L;;;;;N;;;;; -1386;ETHIOPIC SYLLABLE BWEE;Lo;0;L;;;;;N;;;;; -1387;ETHIOPIC SYLLABLE BWE;Lo;0;L;;;;;N;;;;; -1388;ETHIOPIC SYLLABLE SEBATBEIT FWA;Lo;0;L;;;;;N;;;;; -1389;ETHIOPIC SYLLABLE FWI;Lo;0;L;;;;;N;;;;; -138A;ETHIOPIC SYLLABLE FWEE;Lo;0;L;;;;;N;;;;; -138B;ETHIOPIC SYLLABLE FWE;Lo;0;L;;;;;N;;;;; -138C;ETHIOPIC SYLLABLE SEBATBEIT PWA;Lo;0;L;;;;;N;;;;; -138D;ETHIOPIC SYLLABLE PWI;Lo;0;L;;;;;N;;;;; -138E;ETHIOPIC SYLLABLE PWEE;Lo;0;L;;;;;N;;;;; -138F;ETHIOPIC SYLLABLE PWE;Lo;0;L;;;;;N;;;;; -1390;ETHIOPIC TONAL MARK YIZET;So;0;ON;;;;;N;;;;; -1391;ETHIOPIC TONAL MARK DERET;So;0;ON;;;;;N;;;;; -1392;ETHIOPIC TONAL MARK RIKRIK;So;0;ON;;;;;N;;;;; -1393;ETHIOPIC TONAL MARK SHORT RIKRIK;So;0;ON;;;;;N;;;;; -1394;ETHIOPIC TONAL MARK DIFAT;So;0;ON;;;;;N;;;;; -1395;ETHIOPIC TONAL MARK KENAT;So;0;ON;;;;;N;;;;; -1396;ETHIOPIC TONAL MARK CHIRET;So;0;ON;;;;;N;;;;; -1397;ETHIOPIC TONAL MARK HIDET;So;0;ON;;;;;N;;;;; -1398;ETHIOPIC TONAL MARK DERET-HIDET;So;0;ON;;;;;N;;;;; -1399;ETHIOPIC TONAL MARK KURT;So;0;ON;;;;;N;;;;; -13A0;CHEROKEE LETTER A;Lo;0;L;;;;;N;;;;; -13A1;CHEROKEE LETTER E;Lo;0;L;;;;;N;;;;; -13A2;CHEROKEE LETTER I;Lo;0;L;;;;;N;;;;; -13A3;CHEROKEE LETTER O;Lo;0;L;;;;;N;;;;; -13A4;CHEROKEE LETTER U;Lo;0;L;;;;;N;;;;; -13A5;CHEROKEE LETTER V;Lo;0;L;;;;;N;;;;; -13A6;CHEROKEE LETTER GA;Lo;0;L;;;;;N;;;;; -13A7;CHEROKEE LETTER KA;Lo;0;L;;;;;N;;;;; -13A8;CHEROKEE LETTER GE;Lo;0;L;;;;;N;;;;; -13A9;CHEROKEE LETTER GI;Lo;0;L;;;;;N;;;;; -13AA;CHEROKEE LETTER GO;Lo;0;L;;;;;N;;;;; -13AB;CHEROKEE LETTER GU;Lo;0;L;;;;;N;;;;; -13AC;CHEROKEE LETTER GV;Lo;0;L;;;;;N;;;;; -13AD;CHEROKEE LETTER HA;Lo;0;L;;;;;N;;;;; -13AE;CHEROKEE LETTER HE;Lo;0;L;;;;;N;;;;; -13AF;CHEROKEE LETTER HI;Lo;0;L;;;;;N;;;;; -13B0;CHEROKEE LETTER HO;Lo;0;L;;;;;N;;;;; -13B1;CHEROKEE LETTER HU;Lo;0;L;;;;;N;;;;; -13B2;CHEROKEE LETTER HV;Lo;0;L;;;;;N;;;;; -13B3;CHEROKEE LETTER LA;Lo;0;L;;;;;N;;;;; -13B4;CHEROKEE LETTER LE;Lo;0;L;;;;;N;;;;; -13B5;CHEROKEE LETTER LI;Lo;0;L;;;;;N;;;;; -13B6;CHEROKEE LETTER LO;Lo;0;L;;;;;N;;;;; -13B7;CHEROKEE LETTER LU;Lo;0;L;;;;;N;;;;; -13B8;CHEROKEE LETTER LV;Lo;0;L;;;;;N;;;;; -13B9;CHEROKEE LETTER MA;Lo;0;L;;;;;N;;;;; -13BA;CHEROKEE LETTER ME;Lo;0;L;;;;;N;;;;; -13BB;CHEROKEE LETTER MI;Lo;0;L;;;;;N;;;;; -13BC;CHEROKEE LETTER MO;Lo;0;L;;;;;N;;;;; -13BD;CHEROKEE LETTER MU;Lo;0;L;;;;;N;;;;; -13BE;CHEROKEE LETTER NA;Lo;0;L;;;;;N;;;;; -13BF;CHEROKEE LETTER HNA;Lo;0;L;;;;;N;;;;; -13C0;CHEROKEE LETTER NAH;Lo;0;L;;;;;N;;;;; -13C1;CHEROKEE LETTER NE;Lo;0;L;;;;;N;;;;; -13C2;CHEROKEE LETTER NI;Lo;0;L;;;;;N;;;;; -13C3;CHEROKEE LETTER NO;Lo;0;L;;;;;N;;;;; -13C4;CHEROKEE LETTER NU;Lo;0;L;;;;;N;;;;; -13C5;CHEROKEE LETTER NV;Lo;0;L;;;;;N;;;;; -13C6;CHEROKEE LETTER QUA;Lo;0;L;;;;;N;;;;; -13C7;CHEROKEE LETTER QUE;Lo;0;L;;;;;N;;;;; -13C8;CHEROKEE LETTER QUI;Lo;0;L;;;;;N;;;;; -13C9;CHEROKEE LETTER QUO;Lo;0;L;;;;;N;;;;; -13CA;CHEROKEE LETTER QUU;Lo;0;L;;;;;N;;;;; -13CB;CHEROKEE LETTER QUV;Lo;0;L;;;;;N;;;;; -13CC;CHEROKEE LETTER SA;Lo;0;L;;;;;N;;;;; -13CD;CHEROKEE LETTER S;Lo;0;L;;;;;N;;;;; -13CE;CHEROKEE LETTER SE;Lo;0;L;;;;;N;;;;; -13CF;CHEROKEE LETTER SI;Lo;0;L;;;;;N;;;;; -13D0;CHEROKEE LETTER SO;Lo;0;L;;;;;N;;;;; -13D1;CHEROKEE LETTER SU;Lo;0;L;;;;;N;;;;; -13D2;CHEROKEE LETTER SV;Lo;0;L;;;;;N;;;;; -13D3;CHEROKEE LETTER DA;Lo;0;L;;;;;N;;;;; -13D4;CHEROKEE LETTER TA;Lo;0;L;;;;;N;;;;; -13D5;CHEROKEE LETTER DE;Lo;0;L;;;;;N;;;;; -13D6;CHEROKEE LETTER TE;Lo;0;L;;;;;N;;;;; -13D7;CHEROKEE LETTER DI;Lo;0;L;;;;;N;;;;; -13D8;CHEROKEE LETTER TI;Lo;0;L;;;;;N;;;;; -13D9;CHEROKEE LETTER DO;Lo;0;L;;;;;N;;;;; -13DA;CHEROKEE LETTER DU;Lo;0;L;;;;;N;;;;; -13DB;CHEROKEE LETTER DV;Lo;0;L;;;;;N;;;;; -13DC;CHEROKEE LETTER DLA;Lo;0;L;;;;;N;;;;; -13DD;CHEROKEE LETTER TLA;Lo;0;L;;;;;N;;;;; -13DE;CHEROKEE LETTER TLE;Lo;0;L;;;;;N;;;;; -13DF;CHEROKEE LETTER TLI;Lo;0;L;;;;;N;;;;; -13E0;CHEROKEE LETTER TLO;Lo;0;L;;;;;N;;;;; -13E1;CHEROKEE LETTER TLU;Lo;0;L;;;;;N;;;;; -13E2;CHEROKEE LETTER TLV;Lo;0;L;;;;;N;;;;; -13E3;CHEROKEE LETTER TSA;Lo;0;L;;;;;N;;;;; -13E4;CHEROKEE LETTER TSE;Lo;0;L;;;;;N;;;;; -13E5;CHEROKEE LETTER TSI;Lo;0;L;;;;;N;;;;; -13E6;CHEROKEE LETTER TSO;Lo;0;L;;;;;N;;;;; -13E7;CHEROKEE LETTER TSU;Lo;0;L;;;;;N;;;;; -13E8;CHEROKEE LETTER TSV;Lo;0;L;;;;;N;;;;; -13E9;CHEROKEE LETTER WA;Lo;0;L;;;;;N;;;;; -13EA;CHEROKEE LETTER WE;Lo;0;L;;;;;N;;;;; -13EB;CHEROKEE LETTER WI;Lo;0;L;;;;;N;;;;; -13EC;CHEROKEE LETTER WO;Lo;0;L;;;;;N;;;;; -13ED;CHEROKEE LETTER WU;Lo;0;L;;;;;N;;;;; -13EE;CHEROKEE LETTER WV;Lo;0;L;;;;;N;;;;; -13EF;CHEROKEE LETTER YA;Lo;0;L;;;;;N;;;;; -13F0;CHEROKEE LETTER YE;Lo;0;L;;;;;N;;;;; -13F1;CHEROKEE LETTER YI;Lo;0;L;;;;;N;;;;; -13F2;CHEROKEE LETTER YO;Lo;0;L;;;;;N;;;;; -13F3;CHEROKEE LETTER YU;Lo;0;L;;;;;N;;;;; -13F4;CHEROKEE LETTER YV;Lo;0;L;;;;;N;;;;; -1400;CANADIAN SYLLABICS HYPHEN;Pd;0;ON;;;;;N;;;;; -1401;CANADIAN SYLLABICS E;Lo;0;L;;;;;N;;;;; -1402;CANADIAN SYLLABICS AAI;Lo;0;L;;;;;N;;;;; -1403;CANADIAN SYLLABICS I;Lo;0;L;;;;;N;;;;; -1404;CANADIAN SYLLABICS II;Lo;0;L;;;;;N;;;;; -1405;CANADIAN SYLLABICS O;Lo;0;L;;;;;N;;;;; -1406;CANADIAN SYLLABICS OO;Lo;0;L;;;;;N;;;;; -1407;CANADIAN SYLLABICS Y-CREE OO;Lo;0;L;;;;;N;;;;; -1408;CANADIAN SYLLABICS CARRIER EE;Lo;0;L;;;;;N;;;;; -1409;CANADIAN SYLLABICS CARRIER I;Lo;0;L;;;;;N;;;;; -140A;CANADIAN SYLLABICS A;Lo;0;L;;;;;N;;;;; -140B;CANADIAN SYLLABICS AA;Lo;0;L;;;;;N;;;;; -140C;CANADIAN SYLLABICS WE;Lo;0;L;;;;;N;;;;; -140D;CANADIAN SYLLABICS WEST-CREE WE;Lo;0;L;;;;;N;;;;; -140E;CANADIAN SYLLABICS WI;Lo;0;L;;;;;N;;;;; -140F;CANADIAN SYLLABICS WEST-CREE WI;Lo;0;L;;;;;N;;;;; -1410;CANADIAN SYLLABICS WII;Lo;0;L;;;;;N;;;;; -1411;CANADIAN SYLLABICS WEST-CREE WII;Lo;0;L;;;;;N;;;;; -1412;CANADIAN SYLLABICS WO;Lo;0;L;;;;;N;;;;; -1413;CANADIAN SYLLABICS WEST-CREE WO;Lo;0;L;;;;;N;;;;; -1414;CANADIAN SYLLABICS WOO;Lo;0;L;;;;;N;;;;; -1415;CANADIAN SYLLABICS WEST-CREE WOO;Lo;0;L;;;;;N;;;;; -1416;CANADIAN SYLLABICS NASKAPI WOO;Lo;0;L;;;;;N;;;;; -1417;CANADIAN SYLLABICS WA;Lo;0;L;;;;;N;;;;; -1418;CANADIAN SYLLABICS WEST-CREE WA;Lo;0;L;;;;;N;;;;; -1419;CANADIAN SYLLABICS WAA;Lo;0;L;;;;;N;;;;; -141A;CANADIAN SYLLABICS WEST-CREE WAA;Lo;0;L;;;;;N;;;;; -141B;CANADIAN SYLLABICS NASKAPI WAA;Lo;0;L;;;;;N;;;;; -141C;CANADIAN SYLLABICS AI;Lo;0;L;;;;;N;;;;; -141D;CANADIAN SYLLABICS Y-CREE W;Lo;0;L;;;;;N;;;;; -141E;CANADIAN SYLLABICS GLOTTAL STOP;Lo;0;L;;;;;N;;;;; -141F;CANADIAN SYLLABICS FINAL ACUTE;Lo;0;L;;;;;N;;;;; -1420;CANADIAN SYLLABICS FINAL GRAVE;Lo;0;L;;;;;N;;;;; -1421;CANADIAN SYLLABICS FINAL BOTTOM HALF RING;Lo;0;L;;;;;N;;;;; -1422;CANADIAN SYLLABICS FINAL TOP HALF RING;Lo;0;L;;;;;N;;;;; -1423;CANADIAN SYLLABICS FINAL RIGHT HALF RING;Lo;0;L;;;;;N;;;;; -1424;CANADIAN SYLLABICS FINAL RING;Lo;0;L;;;;;N;;;;; -1425;CANADIAN SYLLABICS FINAL DOUBLE ACUTE;Lo;0;L;;;;;N;;;;; -1426;CANADIAN SYLLABICS FINAL DOUBLE SHORT VERTICAL STROKES;Lo;0;L;;;;;N;;;;; -1427;CANADIAN SYLLABICS FINAL MIDDLE DOT;Lo;0;L;;;;;N;;;;; -1428;CANADIAN SYLLABICS FINAL SHORT HORIZONTAL STROKE;Lo;0;L;;;;;N;;;;; -1429;CANADIAN SYLLABICS FINAL PLUS;Lo;0;L;;;;;N;;;;; -142A;CANADIAN SYLLABICS FINAL DOWN TACK;Lo;0;L;;;;;N;;;;; -142B;CANADIAN SYLLABICS EN;Lo;0;L;;;;;N;;;;; -142C;CANADIAN SYLLABICS IN;Lo;0;L;;;;;N;;;;; -142D;CANADIAN SYLLABICS ON;Lo;0;L;;;;;N;;;;; -142E;CANADIAN SYLLABICS AN;Lo;0;L;;;;;N;;;;; -142F;CANADIAN SYLLABICS PE;Lo;0;L;;;;;N;;;;; -1430;CANADIAN SYLLABICS PAAI;Lo;0;L;;;;;N;;;;; -1431;CANADIAN SYLLABICS PI;Lo;0;L;;;;;N;;;;; -1432;CANADIAN SYLLABICS PII;Lo;0;L;;;;;N;;;;; -1433;CANADIAN SYLLABICS PO;Lo;0;L;;;;;N;;;;; -1434;CANADIAN SYLLABICS POO;Lo;0;L;;;;;N;;;;; -1435;CANADIAN SYLLABICS Y-CREE POO;Lo;0;L;;;;;N;;;;; -1436;CANADIAN SYLLABICS CARRIER HEE;Lo;0;L;;;;;N;;;;; -1437;CANADIAN SYLLABICS CARRIER HI;Lo;0;L;;;;;N;;;;; -1438;CANADIAN SYLLABICS PA;Lo;0;L;;;;;N;;;;; -1439;CANADIAN SYLLABICS PAA;Lo;0;L;;;;;N;;;;; -143A;CANADIAN SYLLABICS PWE;Lo;0;L;;;;;N;;;;; -143B;CANADIAN SYLLABICS WEST-CREE PWE;Lo;0;L;;;;;N;;;;; -143C;CANADIAN SYLLABICS PWI;Lo;0;L;;;;;N;;;;; -143D;CANADIAN SYLLABICS WEST-CREE PWI;Lo;0;L;;;;;N;;;;; -143E;CANADIAN SYLLABICS PWII;Lo;0;L;;;;;N;;;;; -143F;CANADIAN SYLLABICS WEST-CREE PWII;Lo;0;L;;;;;N;;;;; -1440;CANADIAN SYLLABICS PWO;Lo;0;L;;;;;N;;;;; -1441;CANADIAN SYLLABICS WEST-CREE PWO;Lo;0;L;;;;;N;;;;; -1442;CANADIAN SYLLABICS PWOO;Lo;0;L;;;;;N;;;;; -1443;CANADIAN SYLLABICS WEST-CREE PWOO;Lo;0;L;;;;;N;;;;; -1444;CANADIAN SYLLABICS PWA;Lo;0;L;;;;;N;;;;; -1445;CANADIAN SYLLABICS WEST-CREE PWA;Lo;0;L;;;;;N;;;;; -1446;CANADIAN SYLLABICS PWAA;Lo;0;L;;;;;N;;;;; -1447;CANADIAN SYLLABICS WEST-CREE PWAA;Lo;0;L;;;;;N;;;;; -1448;CANADIAN SYLLABICS Y-CREE PWAA;Lo;0;L;;;;;N;;;;; -1449;CANADIAN SYLLABICS P;Lo;0;L;;;;;N;;;;; -144A;CANADIAN SYLLABICS WEST-CREE P;Lo;0;L;;;;;N;;;;; -144B;CANADIAN SYLLABICS CARRIER H;Lo;0;L;;;;;N;;;;; -144C;CANADIAN SYLLABICS TE;Lo;0;L;;;;;N;;;;; -144D;CANADIAN SYLLABICS TAAI;Lo;0;L;;;;;N;;;;; -144E;CANADIAN SYLLABICS TI;Lo;0;L;;;;;N;;;;; -144F;CANADIAN SYLLABICS TII;Lo;0;L;;;;;N;;;;; -1450;CANADIAN SYLLABICS TO;Lo;0;L;;;;;N;;;;; -1451;CANADIAN SYLLABICS TOO;Lo;0;L;;;;;N;;;;; -1452;CANADIAN SYLLABICS Y-CREE TOO;Lo;0;L;;;;;N;;;;; -1453;CANADIAN SYLLABICS CARRIER DEE;Lo;0;L;;;;;N;;;;; -1454;CANADIAN SYLLABICS CARRIER DI;Lo;0;L;;;;;N;;;;; -1455;CANADIAN SYLLABICS TA;Lo;0;L;;;;;N;;;;; -1456;CANADIAN SYLLABICS TAA;Lo;0;L;;;;;N;;;;; -1457;CANADIAN SYLLABICS TWE;Lo;0;L;;;;;N;;;;; -1458;CANADIAN SYLLABICS WEST-CREE TWE;Lo;0;L;;;;;N;;;;; -1459;CANADIAN SYLLABICS TWI;Lo;0;L;;;;;N;;;;; -145A;CANADIAN SYLLABICS WEST-CREE TWI;Lo;0;L;;;;;N;;;;; -145B;CANADIAN SYLLABICS TWII;Lo;0;L;;;;;N;;;;; -145C;CANADIAN SYLLABICS WEST-CREE TWII;Lo;0;L;;;;;N;;;;; -145D;CANADIAN SYLLABICS TWO;Lo;0;L;;;;;N;;;;; -145E;CANADIAN SYLLABICS WEST-CREE TWO;Lo;0;L;;;;;N;;;;; -145F;CANADIAN SYLLABICS TWOO;Lo;0;L;;;;;N;;;;; -1460;CANADIAN SYLLABICS WEST-CREE TWOO;Lo;0;L;;;;;N;;;;; -1461;CANADIAN SYLLABICS TWA;Lo;0;L;;;;;N;;;;; -1462;CANADIAN SYLLABICS WEST-CREE TWA;Lo;0;L;;;;;N;;;;; -1463;CANADIAN SYLLABICS TWAA;Lo;0;L;;;;;N;;;;; -1464;CANADIAN SYLLABICS WEST-CREE TWAA;Lo;0;L;;;;;N;;;;; -1465;CANADIAN SYLLABICS NASKAPI TWAA;Lo;0;L;;;;;N;;;;; -1466;CANADIAN SYLLABICS T;Lo;0;L;;;;;N;;;;; -1467;CANADIAN SYLLABICS TTE;Lo;0;L;;;;;N;;;;; -1468;CANADIAN SYLLABICS TTI;Lo;0;L;;;;;N;;;;; -1469;CANADIAN SYLLABICS TTO;Lo;0;L;;;;;N;;;;; -146A;CANADIAN SYLLABICS TTA;Lo;0;L;;;;;N;;;;; -146B;CANADIAN SYLLABICS KE;Lo;0;L;;;;;N;;;;; -146C;CANADIAN SYLLABICS KAAI;Lo;0;L;;;;;N;;;;; -146D;CANADIAN SYLLABICS KI;Lo;0;L;;;;;N;;;;; -146E;CANADIAN SYLLABICS KII;Lo;0;L;;;;;N;;;;; -146F;CANADIAN SYLLABICS KO;Lo;0;L;;;;;N;;;;; -1470;CANADIAN SYLLABICS KOO;Lo;0;L;;;;;N;;;;; -1471;CANADIAN SYLLABICS Y-CREE KOO;Lo;0;L;;;;;N;;;;; -1472;CANADIAN SYLLABICS KA;Lo;0;L;;;;;N;;;;; -1473;CANADIAN SYLLABICS KAA;Lo;0;L;;;;;N;;;;; -1474;CANADIAN SYLLABICS KWE;Lo;0;L;;;;;N;;;;; -1475;CANADIAN SYLLABICS WEST-CREE KWE;Lo;0;L;;;;;N;;;;; -1476;CANADIAN SYLLABICS KWI;Lo;0;L;;;;;N;;;;; -1477;CANADIAN SYLLABICS WEST-CREE KWI;Lo;0;L;;;;;N;;;;; -1478;CANADIAN SYLLABICS KWII;Lo;0;L;;;;;N;;;;; -1479;CANADIAN SYLLABICS WEST-CREE KWII;Lo;0;L;;;;;N;;;;; -147A;CANADIAN SYLLABICS KWO;Lo;0;L;;;;;N;;;;; -147B;CANADIAN SYLLABICS WEST-CREE KWO;Lo;0;L;;;;;N;;;;; -147C;CANADIAN SYLLABICS KWOO;Lo;0;L;;;;;N;;;;; -147D;CANADIAN SYLLABICS WEST-CREE KWOO;Lo;0;L;;;;;N;;;;; -147E;CANADIAN SYLLABICS KWA;Lo;0;L;;;;;N;;;;; -147F;CANADIAN SYLLABICS WEST-CREE KWA;Lo;0;L;;;;;N;;;;; -1480;CANADIAN SYLLABICS KWAA;Lo;0;L;;;;;N;;;;; -1481;CANADIAN SYLLABICS WEST-CREE KWAA;Lo;0;L;;;;;N;;;;; -1482;CANADIAN SYLLABICS NASKAPI KWAA;Lo;0;L;;;;;N;;;;; -1483;CANADIAN SYLLABICS K;Lo;0;L;;;;;N;;;;; -1484;CANADIAN SYLLABICS KW;Lo;0;L;;;;;N;;;;; -1485;CANADIAN SYLLABICS SOUTH-SLAVEY KEH;Lo;0;L;;;;;N;;;;; -1486;CANADIAN SYLLABICS SOUTH-SLAVEY KIH;Lo;0;L;;;;;N;;;;; -1487;CANADIAN SYLLABICS SOUTH-SLAVEY KOH;Lo;0;L;;;;;N;;;;; -1488;CANADIAN SYLLABICS SOUTH-SLAVEY KAH;Lo;0;L;;;;;N;;;;; -1489;CANADIAN SYLLABICS CE;Lo;0;L;;;;;N;;;;; -148A;CANADIAN SYLLABICS CAAI;Lo;0;L;;;;;N;;;;; -148B;CANADIAN SYLLABICS CI;Lo;0;L;;;;;N;;;;; -148C;CANADIAN SYLLABICS CII;Lo;0;L;;;;;N;;;;; -148D;CANADIAN SYLLABICS CO;Lo;0;L;;;;;N;;;;; -148E;CANADIAN SYLLABICS COO;Lo;0;L;;;;;N;;;;; -148F;CANADIAN SYLLABICS Y-CREE COO;Lo;0;L;;;;;N;;;;; -1490;CANADIAN SYLLABICS CA;Lo;0;L;;;;;N;;;;; -1491;CANADIAN SYLLABICS CAA;Lo;0;L;;;;;N;;;;; -1492;CANADIAN SYLLABICS CWE;Lo;0;L;;;;;N;;;;; -1493;CANADIAN SYLLABICS WEST-CREE CWE;Lo;0;L;;;;;N;;;;; -1494;CANADIAN SYLLABICS CWI;Lo;0;L;;;;;N;;;;; -1495;CANADIAN SYLLABICS WEST-CREE CWI;Lo;0;L;;;;;N;;;;; -1496;CANADIAN SYLLABICS CWII;Lo;0;L;;;;;N;;;;; -1497;CANADIAN SYLLABICS WEST-CREE CWII;Lo;0;L;;;;;N;;;;; -1498;CANADIAN SYLLABICS CWO;Lo;0;L;;;;;N;;;;; -1499;CANADIAN SYLLABICS WEST-CREE CWO;Lo;0;L;;;;;N;;;;; -149A;CANADIAN SYLLABICS CWOO;Lo;0;L;;;;;N;;;;; -149B;CANADIAN SYLLABICS WEST-CREE CWOO;Lo;0;L;;;;;N;;;;; -149C;CANADIAN SYLLABICS CWA;Lo;0;L;;;;;N;;;;; -149D;CANADIAN SYLLABICS WEST-CREE CWA;Lo;0;L;;;;;N;;;;; -149E;CANADIAN SYLLABICS CWAA;Lo;0;L;;;;;N;;;;; -149F;CANADIAN SYLLABICS WEST-CREE CWAA;Lo;0;L;;;;;N;;;;; -14A0;CANADIAN SYLLABICS NASKAPI CWAA;Lo;0;L;;;;;N;;;;; -14A1;CANADIAN SYLLABICS C;Lo;0;L;;;;;N;;;;; -14A2;CANADIAN SYLLABICS SAYISI TH;Lo;0;L;;;;;N;;;;; -14A3;CANADIAN SYLLABICS ME;Lo;0;L;;;;;N;;;;; -14A4;CANADIAN SYLLABICS MAAI;Lo;0;L;;;;;N;;;;; -14A5;CANADIAN SYLLABICS MI;Lo;0;L;;;;;N;;;;; -14A6;CANADIAN SYLLABICS MII;Lo;0;L;;;;;N;;;;; -14A7;CANADIAN SYLLABICS MO;Lo;0;L;;;;;N;;;;; -14A8;CANADIAN SYLLABICS MOO;Lo;0;L;;;;;N;;;;; -14A9;CANADIAN SYLLABICS Y-CREE MOO;Lo;0;L;;;;;N;;;;; -14AA;CANADIAN SYLLABICS MA;Lo;0;L;;;;;N;;;;; -14AB;CANADIAN SYLLABICS MAA;Lo;0;L;;;;;N;;;;; -14AC;CANADIAN SYLLABICS MWE;Lo;0;L;;;;;N;;;;; -14AD;CANADIAN SYLLABICS WEST-CREE MWE;Lo;0;L;;;;;N;;;;; -14AE;CANADIAN SYLLABICS MWI;Lo;0;L;;;;;N;;;;; -14AF;CANADIAN SYLLABICS WEST-CREE MWI;Lo;0;L;;;;;N;;;;; -14B0;CANADIAN SYLLABICS MWII;Lo;0;L;;;;;N;;;;; -14B1;CANADIAN SYLLABICS WEST-CREE MWII;Lo;0;L;;;;;N;;;;; -14B2;CANADIAN SYLLABICS MWO;Lo;0;L;;;;;N;;;;; -14B3;CANADIAN SYLLABICS WEST-CREE MWO;Lo;0;L;;;;;N;;;;; -14B4;CANADIAN SYLLABICS MWOO;Lo;0;L;;;;;N;;;;; -14B5;CANADIAN SYLLABICS WEST-CREE MWOO;Lo;0;L;;;;;N;;;;; -14B6;CANADIAN SYLLABICS MWA;Lo;0;L;;;;;N;;;;; -14B7;CANADIAN SYLLABICS WEST-CREE MWA;Lo;0;L;;;;;N;;;;; -14B8;CANADIAN SYLLABICS MWAA;Lo;0;L;;;;;N;;;;; -14B9;CANADIAN SYLLABICS WEST-CREE MWAA;Lo;0;L;;;;;N;;;;; -14BA;CANADIAN SYLLABICS NASKAPI MWAA;Lo;0;L;;;;;N;;;;; -14BB;CANADIAN SYLLABICS M;Lo;0;L;;;;;N;;;;; -14BC;CANADIAN SYLLABICS WEST-CREE M;Lo;0;L;;;;;N;;;;; -14BD;CANADIAN SYLLABICS MH;Lo;0;L;;;;;N;;;;; -14BE;CANADIAN SYLLABICS ATHAPASCAN M;Lo;0;L;;;;;N;;;;; -14BF;CANADIAN SYLLABICS SAYISI M;Lo;0;L;;;;;N;;;;; -14C0;CANADIAN SYLLABICS NE;Lo;0;L;;;;;N;;;;; -14C1;CANADIAN SYLLABICS NAAI;Lo;0;L;;;;;N;;;;; -14C2;CANADIAN SYLLABICS NI;Lo;0;L;;;;;N;;;;; -14C3;CANADIAN SYLLABICS NII;Lo;0;L;;;;;N;;;;; -14C4;CANADIAN SYLLABICS NO;Lo;0;L;;;;;N;;;;; -14C5;CANADIAN SYLLABICS NOO;Lo;0;L;;;;;N;;;;; -14C6;CANADIAN SYLLABICS Y-CREE NOO;Lo;0;L;;;;;N;;;;; -14C7;CANADIAN SYLLABICS NA;Lo;0;L;;;;;N;;;;; -14C8;CANADIAN SYLLABICS NAA;Lo;0;L;;;;;N;;;;; -14C9;CANADIAN SYLLABICS NWE;Lo;0;L;;;;;N;;;;; -14CA;CANADIAN SYLLABICS WEST-CREE NWE;Lo;0;L;;;;;N;;;;; -14CB;CANADIAN SYLLABICS NWA;Lo;0;L;;;;;N;;;;; -14CC;CANADIAN SYLLABICS WEST-CREE NWA;Lo;0;L;;;;;N;;;;; -14CD;CANADIAN SYLLABICS NWAA;Lo;0;L;;;;;N;;;;; -14CE;CANADIAN SYLLABICS WEST-CREE NWAA;Lo;0;L;;;;;N;;;;; -14CF;CANADIAN SYLLABICS NASKAPI NWAA;Lo;0;L;;;;;N;;;;; -14D0;CANADIAN SYLLABICS N;Lo;0;L;;;;;N;;;;; -14D1;CANADIAN SYLLABICS CARRIER NG;Lo;0;L;;;;;N;;;;; -14D2;CANADIAN SYLLABICS NH;Lo;0;L;;;;;N;;;;; -14D3;CANADIAN SYLLABICS LE;Lo;0;L;;;;;N;;;;; -14D4;CANADIAN SYLLABICS LAAI;Lo;0;L;;;;;N;;;;; -14D5;CANADIAN SYLLABICS LI;Lo;0;L;;;;;N;;;;; -14D6;CANADIAN SYLLABICS LII;Lo;0;L;;;;;N;;;;; -14D7;CANADIAN SYLLABICS LO;Lo;0;L;;;;;N;;;;; -14D8;CANADIAN SYLLABICS LOO;Lo;0;L;;;;;N;;;;; -14D9;CANADIAN SYLLABICS Y-CREE LOO;Lo;0;L;;;;;N;;;;; -14DA;CANADIAN SYLLABICS LA;Lo;0;L;;;;;N;;;;; -14DB;CANADIAN SYLLABICS LAA;Lo;0;L;;;;;N;;;;; -14DC;CANADIAN SYLLABICS LWE;Lo;0;L;;;;;N;;;;; -14DD;CANADIAN SYLLABICS WEST-CREE LWE;Lo;0;L;;;;;N;;;;; -14DE;CANADIAN SYLLABICS LWI;Lo;0;L;;;;;N;;;;; -14DF;CANADIAN SYLLABICS WEST-CREE LWI;Lo;0;L;;;;;N;;;;; -14E0;CANADIAN SYLLABICS LWII;Lo;0;L;;;;;N;;;;; -14E1;CANADIAN SYLLABICS WEST-CREE LWII;Lo;0;L;;;;;N;;;;; -14E2;CANADIAN SYLLABICS LWO;Lo;0;L;;;;;N;;;;; -14E3;CANADIAN SYLLABICS WEST-CREE LWO;Lo;0;L;;;;;N;;;;; -14E4;CANADIAN SYLLABICS LWOO;Lo;0;L;;;;;N;;;;; -14E5;CANADIAN SYLLABICS WEST-CREE LWOO;Lo;0;L;;;;;N;;;;; -14E6;CANADIAN SYLLABICS LWA;Lo;0;L;;;;;N;;;;; -14E7;CANADIAN SYLLABICS WEST-CREE LWA;Lo;0;L;;;;;N;;;;; -14E8;CANADIAN SYLLABICS LWAA;Lo;0;L;;;;;N;;;;; -14E9;CANADIAN SYLLABICS WEST-CREE LWAA;Lo;0;L;;;;;N;;;;; -14EA;CANADIAN SYLLABICS L;Lo;0;L;;;;;N;;;;; -14EB;CANADIAN SYLLABICS WEST-CREE L;Lo;0;L;;;;;N;;;;; -14EC;CANADIAN SYLLABICS MEDIAL L;Lo;0;L;;;;;N;;;;; -14ED;CANADIAN SYLLABICS SE;Lo;0;L;;;;;N;;;;; -14EE;CANADIAN SYLLABICS SAAI;Lo;0;L;;;;;N;;;;; -14EF;CANADIAN SYLLABICS SI;Lo;0;L;;;;;N;;;;; -14F0;CANADIAN SYLLABICS SII;Lo;0;L;;;;;N;;;;; -14F1;CANADIAN SYLLABICS SO;Lo;0;L;;;;;N;;;;; -14F2;CANADIAN SYLLABICS SOO;Lo;0;L;;;;;N;;;;; -14F3;CANADIAN SYLLABICS Y-CREE SOO;Lo;0;L;;;;;N;;;;; -14F4;CANADIAN SYLLABICS SA;Lo;0;L;;;;;N;;;;; -14F5;CANADIAN SYLLABICS SAA;Lo;0;L;;;;;N;;;;; -14F6;CANADIAN SYLLABICS SWE;Lo;0;L;;;;;N;;;;; -14F7;CANADIAN SYLLABICS WEST-CREE SWE;Lo;0;L;;;;;N;;;;; -14F8;CANADIAN SYLLABICS SWI;Lo;0;L;;;;;N;;;;; -14F9;CANADIAN SYLLABICS WEST-CREE SWI;Lo;0;L;;;;;N;;;;; -14FA;CANADIAN SYLLABICS SWII;Lo;0;L;;;;;N;;;;; -14FB;CANADIAN SYLLABICS WEST-CREE SWII;Lo;0;L;;;;;N;;;;; -14FC;CANADIAN SYLLABICS SWO;Lo;0;L;;;;;N;;;;; -14FD;CANADIAN SYLLABICS WEST-CREE SWO;Lo;0;L;;;;;N;;;;; -14FE;CANADIAN SYLLABICS SWOO;Lo;0;L;;;;;N;;;;; -14FF;CANADIAN SYLLABICS WEST-CREE SWOO;Lo;0;L;;;;;N;;;;; -1500;CANADIAN SYLLABICS SWA;Lo;0;L;;;;;N;;;;; -1501;CANADIAN SYLLABICS WEST-CREE SWA;Lo;0;L;;;;;N;;;;; -1502;CANADIAN SYLLABICS SWAA;Lo;0;L;;;;;N;;;;; -1503;CANADIAN SYLLABICS WEST-CREE SWAA;Lo;0;L;;;;;N;;;;; -1504;CANADIAN SYLLABICS NASKAPI SWAA;Lo;0;L;;;;;N;;;;; -1505;CANADIAN SYLLABICS S;Lo;0;L;;;;;N;;;;; -1506;CANADIAN SYLLABICS ATHAPASCAN S;Lo;0;L;;;;;N;;;;; -1507;CANADIAN SYLLABICS SW;Lo;0;L;;;;;N;;;;; -1508;CANADIAN SYLLABICS BLACKFOOT S;Lo;0;L;;;;;N;;;;; -1509;CANADIAN SYLLABICS MOOSE-CREE SK;Lo;0;L;;;;;N;;;;; -150A;CANADIAN SYLLABICS NASKAPI SKW;Lo;0;L;;;;;N;;;;; -150B;CANADIAN SYLLABICS NASKAPI S-W;Lo;0;L;;;;;N;;;;; -150C;CANADIAN SYLLABICS NASKAPI SPWA;Lo;0;L;;;;;N;;;;; -150D;CANADIAN SYLLABICS NASKAPI STWA;Lo;0;L;;;;;N;;;;; -150E;CANADIAN SYLLABICS NASKAPI SKWA;Lo;0;L;;;;;N;;;;; -150F;CANADIAN SYLLABICS NASKAPI SCWA;Lo;0;L;;;;;N;;;;; -1510;CANADIAN SYLLABICS SHE;Lo;0;L;;;;;N;;;;; -1511;CANADIAN SYLLABICS SHI;Lo;0;L;;;;;N;;;;; -1512;CANADIAN SYLLABICS SHII;Lo;0;L;;;;;N;;;;; -1513;CANADIAN SYLLABICS SHO;Lo;0;L;;;;;N;;;;; -1514;CANADIAN SYLLABICS SHOO;Lo;0;L;;;;;N;;;;; -1515;CANADIAN SYLLABICS SHA;Lo;0;L;;;;;N;;;;; -1516;CANADIAN SYLLABICS SHAA;Lo;0;L;;;;;N;;;;; -1517;CANADIAN SYLLABICS SHWE;Lo;0;L;;;;;N;;;;; -1518;CANADIAN SYLLABICS WEST-CREE SHWE;Lo;0;L;;;;;N;;;;; -1519;CANADIAN SYLLABICS SHWI;Lo;0;L;;;;;N;;;;; -151A;CANADIAN SYLLABICS WEST-CREE SHWI;Lo;0;L;;;;;N;;;;; -151B;CANADIAN SYLLABICS SHWII;Lo;0;L;;;;;N;;;;; -151C;CANADIAN SYLLABICS WEST-CREE SHWII;Lo;0;L;;;;;N;;;;; -151D;CANADIAN SYLLABICS SHWO;Lo;0;L;;;;;N;;;;; -151E;CANADIAN SYLLABICS WEST-CREE SHWO;Lo;0;L;;;;;N;;;;; -151F;CANADIAN SYLLABICS SHWOO;Lo;0;L;;;;;N;;;;; -1520;CANADIAN SYLLABICS WEST-CREE SHWOO;Lo;0;L;;;;;N;;;;; -1521;CANADIAN SYLLABICS SHWA;Lo;0;L;;;;;N;;;;; -1522;CANADIAN SYLLABICS WEST-CREE SHWA;Lo;0;L;;;;;N;;;;; -1523;CANADIAN SYLLABICS SHWAA;Lo;0;L;;;;;N;;;;; -1524;CANADIAN SYLLABICS WEST-CREE SHWAA;Lo;0;L;;;;;N;;;;; -1525;CANADIAN SYLLABICS SH;Lo;0;L;;;;;N;;;;; -1526;CANADIAN SYLLABICS YE;Lo;0;L;;;;;N;;;;; -1527;CANADIAN SYLLABICS YAAI;Lo;0;L;;;;;N;;;;; -1528;CANADIAN SYLLABICS YI;Lo;0;L;;;;;N;;;;; -1529;CANADIAN SYLLABICS YII;Lo;0;L;;;;;N;;;;; -152A;CANADIAN SYLLABICS YO;Lo;0;L;;;;;N;;;;; -152B;CANADIAN SYLLABICS YOO;Lo;0;L;;;;;N;;;;; -152C;CANADIAN SYLLABICS Y-CREE YOO;Lo;0;L;;;;;N;;;;; -152D;CANADIAN SYLLABICS YA;Lo;0;L;;;;;N;;;;; -152E;CANADIAN SYLLABICS YAA;Lo;0;L;;;;;N;;;;; -152F;CANADIAN SYLLABICS YWE;Lo;0;L;;;;;N;;;;; -1530;CANADIAN SYLLABICS WEST-CREE YWE;Lo;0;L;;;;;N;;;;; -1531;CANADIAN SYLLABICS YWI;Lo;0;L;;;;;N;;;;; -1532;CANADIAN SYLLABICS WEST-CREE YWI;Lo;0;L;;;;;N;;;;; -1533;CANADIAN SYLLABICS YWII;Lo;0;L;;;;;N;;;;; -1534;CANADIAN SYLLABICS WEST-CREE YWII;Lo;0;L;;;;;N;;;;; -1535;CANADIAN SYLLABICS YWO;Lo;0;L;;;;;N;;;;; -1536;CANADIAN SYLLABICS WEST-CREE YWO;Lo;0;L;;;;;N;;;;; -1537;CANADIAN SYLLABICS YWOO;Lo;0;L;;;;;N;;;;; -1538;CANADIAN SYLLABICS WEST-CREE YWOO;Lo;0;L;;;;;N;;;;; -1539;CANADIAN SYLLABICS YWA;Lo;0;L;;;;;N;;;;; -153A;CANADIAN SYLLABICS WEST-CREE YWA;Lo;0;L;;;;;N;;;;; -153B;CANADIAN SYLLABICS YWAA;Lo;0;L;;;;;N;;;;; -153C;CANADIAN SYLLABICS WEST-CREE YWAA;Lo;0;L;;;;;N;;;;; -153D;CANADIAN SYLLABICS NASKAPI YWAA;Lo;0;L;;;;;N;;;;; -153E;CANADIAN SYLLABICS Y;Lo;0;L;;;;;N;;;;; -153F;CANADIAN SYLLABICS BIBLE-CREE Y;Lo;0;L;;;;;N;;;;; -1540;CANADIAN SYLLABICS WEST-CREE Y;Lo;0;L;;;;;N;;;;; -1541;CANADIAN SYLLABICS SAYISI YI;Lo;0;L;;;;;N;;;;; -1542;CANADIAN SYLLABICS RE;Lo;0;L;;;;;N;;;;; -1543;CANADIAN SYLLABICS R-CREE RE;Lo;0;L;;;;;N;;;;; -1544;CANADIAN SYLLABICS WEST-CREE LE;Lo;0;L;;;;;N;;;;; -1545;CANADIAN SYLLABICS RAAI;Lo;0;L;;;;;N;;;;; -1546;CANADIAN SYLLABICS RI;Lo;0;L;;;;;N;;;;; -1547;CANADIAN SYLLABICS RII;Lo;0;L;;;;;N;;;;; -1548;CANADIAN SYLLABICS RO;Lo;0;L;;;;;N;;;;; -1549;CANADIAN SYLLABICS ROO;Lo;0;L;;;;;N;;;;; -154A;CANADIAN SYLLABICS WEST-CREE LO;Lo;0;L;;;;;N;;;;; -154B;CANADIAN SYLLABICS RA;Lo;0;L;;;;;N;;;;; -154C;CANADIAN SYLLABICS RAA;Lo;0;L;;;;;N;;;;; -154D;CANADIAN SYLLABICS WEST-CREE LA;Lo;0;L;;;;;N;;;;; -154E;CANADIAN SYLLABICS RWAA;Lo;0;L;;;;;N;;;;; -154F;CANADIAN SYLLABICS WEST-CREE RWAA;Lo;0;L;;;;;N;;;;; -1550;CANADIAN SYLLABICS R;Lo;0;L;;;;;N;;;;; -1551;CANADIAN SYLLABICS WEST-CREE R;Lo;0;L;;;;;N;;;;; -1552;CANADIAN SYLLABICS MEDIAL R;Lo;0;L;;;;;N;;;;; -1553;CANADIAN SYLLABICS FE;Lo;0;L;;;;;N;;;;; -1554;CANADIAN SYLLABICS FAAI;Lo;0;L;;;;;N;;;;; -1555;CANADIAN SYLLABICS FI;Lo;0;L;;;;;N;;;;; -1556;CANADIAN SYLLABICS FII;Lo;0;L;;;;;N;;;;; -1557;CANADIAN SYLLABICS FO;Lo;0;L;;;;;N;;;;; -1558;CANADIAN SYLLABICS FOO;Lo;0;L;;;;;N;;;;; -1559;CANADIAN SYLLABICS FA;Lo;0;L;;;;;N;;;;; -155A;CANADIAN SYLLABICS FAA;Lo;0;L;;;;;N;;;;; -155B;CANADIAN SYLLABICS FWAA;Lo;0;L;;;;;N;;;;; -155C;CANADIAN SYLLABICS WEST-CREE FWAA;Lo;0;L;;;;;N;;;;; -155D;CANADIAN SYLLABICS F;Lo;0;L;;;;;N;;;;; -155E;CANADIAN SYLLABICS THE;Lo;0;L;;;;;N;;;;; -155F;CANADIAN SYLLABICS N-CREE THE;Lo;0;L;;;;;N;;;;; -1560;CANADIAN SYLLABICS THI;Lo;0;L;;;;;N;;;;; -1561;CANADIAN SYLLABICS N-CREE THI;Lo;0;L;;;;;N;;;;; -1562;CANADIAN SYLLABICS THII;Lo;0;L;;;;;N;;;;; -1563;CANADIAN SYLLABICS N-CREE THII;Lo;0;L;;;;;N;;;;; -1564;CANADIAN SYLLABICS THO;Lo;0;L;;;;;N;;;;; -1565;CANADIAN SYLLABICS THOO;Lo;0;L;;;;;N;;;;; -1566;CANADIAN SYLLABICS THA;Lo;0;L;;;;;N;;;;; -1567;CANADIAN SYLLABICS THAA;Lo;0;L;;;;;N;;;;; -1568;CANADIAN SYLLABICS THWAA;Lo;0;L;;;;;N;;;;; -1569;CANADIAN SYLLABICS WEST-CREE THWAA;Lo;0;L;;;;;N;;;;; -156A;CANADIAN SYLLABICS TH;Lo;0;L;;;;;N;;;;; -156B;CANADIAN SYLLABICS TTHE;Lo;0;L;;;;;N;;;;; -156C;CANADIAN SYLLABICS TTHI;Lo;0;L;;;;;N;;;;; -156D;CANADIAN SYLLABICS TTHO;Lo;0;L;;;;;N;;;;; -156E;CANADIAN SYLLABICS TTHA;Lo;0;L;;;;;N;;;;; -156F;CANADIAN SYLLABICS TTH;Lo;0;L;;;;;N;;;;; -1570;CANADIAN SYLLABICS TYE;Lo;0;L;;;;;N;;;;; -1571;CANADIAN SYLLABICS TYI;Lo;0;L;;;;;N;;;;; -1572;CANADIAN SYLLABICS TYO;Lo;0;L;;;;;N;;;;; -1573;CANADIAN SYLLABICS TYA;Lo;0;L;;;;;N;;;;; -1574;CANADIAN SYLLABICS NUNAVIK HE;Lo;0;L;;;;;N;;;;; -1575;CANADIAN SYLLABICS NUNAVIK HI;Lo;0;L;;;;;N;;;;; -1576;CANADIAN SYLLABICS NUNAVIK HII;Lo;0;L;;;;;N;;;;; -1577;CANADIAN SYLLABICS NUNAVIK HO;Lo;0;L;;;;;N;;;;; -1578;CANADIAN SYLLABICS NUNAVIK HOO;Lo;0;L;;;;;N;;;;; -1579;CANADIAN SYLLABICS NUNAVIK HA;Lo;0;L;;;;;N;;;;; -157A;CANADIAN SYLLABICS NUNAVIK HAA;Lo;0;L;;;;;N;;;;; -157B;CANADIAN SYLLABICS NUNAVIK H;Lo;0;L;;;;;N;;;;; -157C;CANADIAN SYLLABICS NUNAVUT H;Lo;0;L;;;;;N;;;;; -157D;CANADIAN SYLLABICS HK;Lo;0;L;;;;;N;;;;; -157E;CANADIAN SYLLABICS QAAI;Lo;0;L;;;;;N;;;;; -157F;CANADIAN SYLLABICS QI;Lo;0;L;;;;;N;;;;; -1580;CANADIAN SYLLABICS QII;Lo;0;L;;;;;N;;;;; -1581;CANADIAN SYLLABICS QO;Lo;0;L;;;;;N;;;;; -1582;CANADIAN SYLLABICS QOO;Lo;0;L;;;;;N;;;;; -1583;CANADIAN SYLLABICS QA;Lo;0;L;;;;;N;;;;; -1584;CANADIAN SYLLABICS QAA;Lo;0;L;;;;;N;;;;; -1585;CANADIAN SYLLABICS Q;Lo;0;L;;;;;N;;;;; -1586;CANADIAN SYLLABICS TLHE;Lo;0;L;;;;;N;;;;; -1587;CANADIAN SYLLABICS TLHI;Lo;0;L;;;;;N;;;;; -1588;CANADIAN SYLLABICS TLHO;Lo;0;L;;;;;N;;;;; -1589;CANADIAN SYLLABICS TLHA;Lo;0;L;;;;;N;;;;; -158A;CANADIAN SYLLABICS WEST-CREE RE;Lo;0;L;;;;;N;;;;; -158B;CANADIAN SYLLABICS WEST-CREE RI;Lo;0;L;;;;;N;;;;; -158C;CANADIAN SYLLABICS WEST-CREE RO;Lo;0;L;;;;;N;;;;; -158D;CANADIAN SYLLABICS WEST-CREE RA;Lo;0;L;;;;;N;;;;; -158E;CANADIAN SYLLABICS NGAAI;Lo;0;L;;;;;N;;;;; -158F;CANADIAN SYLLABICS NGI;Lo;0;L;;;;;N;;;;; -1590;CANADIAN SYLLABICS NGII;Lo;0;L;;;;;N;;;;; -1591;CANADIAN SYLLABICS NGO;Lo;0;L;;;;;N;;;;; -1592;CANADIAN SYLLABICS NGOO;Lo;0;L;;;;;N;;;;; -1593;CANADIAN SYLLABICS NGA;Lo;0;L;;;;;N;;;;; -1594;CANADIAN SYLLABICS NGAA;Lo;0;L;;;;;N;;;;; -1595;CANADIAN SYLLABICS NG;Lo;0;L;;;;;N;;;;; -1596;CANADIAN SYLLABICS NNG;Lo;0;L;;;;;N;;;;; -1597;CANADIAN SYLLABICS SAYISI SHE;Lo;0;L;;;;;N;;;;; -1598;CANADIAN SYLLABICS SAYISI SHI;Lo;0;L;;;;;N;;;;; -1599;CANADIAN SYLLABICS SAYISI SHO;Lo;0;L;;;;;N;;;;; -159A;CANADIAN SYLLABICS SAYISI SHA;Lo;0;L;;;;;N;;;;; -159B;CANADIAN SYLLABICS WOODS-CREE THE;Lo;0;L;;;;;N;;;;; -159C;CANADIAN SYLLABICS WOODS-CREE THI;Lo;0;L;;;;;N;;;;; -159D;CANADIAN SYLLABICS WOODS-CREE THO;Lo;0;L;;;;;N;;;;; -159E;CANADIAN SYLLABICS WOODS-CREE THA;Lo;0;L;;;;;N;;;;; -159F;CANADIAN SYLLABICS WOODS-CREE TH;Lo;0;L;;;;;N;;;;; -15A0;CANADIAN SYLLABICS LHI;Lo;0;L;;;;;N;;;;; -15A1;CANADIAN SYLLABICS LHII;Lo;0;L;;;;;N;;;;; -15A2;CANADIAN SYLLABICS LHO;Lo;0;L;;;;;N;;;;; -15A3;CANADIAN SYLLABICS LHOO;Lo;0;L;;;;;N;;;;; -15A4;CANADIAN SYLLABICS LHA;Lo;0;L;;;;;N;;;;; -15A5;CANADIAN SYLLABICS LHAA;Lo;0;L;;;;;N;;;;; -15A6;CANADIAN SYLLABICS LH;Lo;0;L;;;;;N;;;;; -15A7;CANADIAN SYLLABICS TH-CREE THE;Lo;0;L;;;;;N;;;;; -15A8;CANADIAN SYLLABICS TH-CREE THI;Lo;0;L;;;;;N;;;;; -15A9;CANADIAN SYLLABICS TH-CREE THII;Lo;0;L;;;;;N;;;;; -15AA;CANADIAN SYLLABICS TH-CREE THO;Lo;0;L;;;;;N;;;;; -15AB;CANADIAN SYLLABICS TH-CREE THOO;Lo;0;L;;;;;N;;;;; -15AC;CANADIAN SYLLABICS TH-CREE THA;Lo;0;L;;;;;N;;;;; -15AD;CANADIAN SYLLABICS TH-CREE THAA;Lo;0;L;;;;;N;;;;; -15AE;CANADIAN SYLLABICS TH-CREE TH;Lo;0;L;;;;;N;;;;; -15AF;CANADIAN SYLLABICS AIVILIK B;Lo;0;L;;;;;N;;;;; -15B0;CANADIAN SYLLABICS BLACKFOOT E;Lo;0;L;;;;;N;;;;; -15B1;CANADIAN SYLLABICS BLACKFOOT I;Lo;0;L;;;;;N;;;;; -15B2;CANADIAN SYLLABICS BLACKFOOT O;Lo;0;L;;;;;N;;;;; -15B3;CANADIAN SYLLABICS BLACKFOOT A;Lo;0;L;;;;;N;;;;; -15B4;CANADIAN SYLLABICS BLACKFOOT WE;Lo;0;L;;;;;N;;;;; -15B5;CANADIAN SYLLABICS BLACKFOOT WI;Lo;0;L;;;;;N;;;;; -15B6;CANADIAN SYLLABICS BLACKFOOT WO;Lo;0;L;;;;;N;;;;; -15B7;CANADIAN SYLLABICS BLACKFOOT WA;Lo;0;L;;;;;N;;;;; -15B8;CANADIAN SYLLABICS BLACKFOOT NE;Lo;0;L;;;;;N;;;;; -15B9;CANADIAN SYLLABICS BLACKFOOT NI;Lo;0;L;;;;;N;;;;; -15BA;CANADIAN SYLLABICS BLACKFOOT NO;Lo;0;L;;;;;N;;;;; -15BB;CANADIAN SYLLABICS BLACKFOOT NA;Lo;0;L;;;;;N;;;;; -15BC;CANADIAN SYLLABICS BLACKFOOT KE;Lo;0;L;;;;;N;;;;; -15BD;CANADIAN SYLLABICS BLACKFOOT KI;Lo;0;L;;;;;N;;;;; -15BE;CANADIAN SYLLABICS BLACKFOOT KO;Lo;0;L;;;;;N;;;;; -15BF;CANADIAN SYLLABICS BLACKFOOT KA;Lo;0;L;;;;;N;;;;; -15C0;CANADIAN SYLLABICS SAYISI HE;Lo;0;L;;;;;N;;;;; -15C1;CANADIAN SYLLABICS SAYISI HI;Lo;0;L;;;;;N;;;;; -15C2;CANADIAN SYLLABICS SAYISI HO;Lo;0;L;;;;;N;;;;; -15C3;CANADIAN SYLLABICS SAYISI HA;Lo;0;L;;;;;N;;;;; -15C4;CANADIAN SYLLABICS CARRIER GHU;Lo;0;L;;;;;N;;;;; -15C5;CANADIAN SYLLABICS CARRIER GHO;Lo;0;L;;;;;N;;;;; -15C6;CANADIAN SYLLABICS CARRIER GHE;Lo;0;L;;;;;N;;;;; -15C7;CANADIAN SYLLABICS CARRIER GHEE;Lo;0;L;;;;;N;;;;; -15C8;CANADIAN SYLLABICS CARRIER GHI;Lo;0;L;;;;;N;;;;; -15C9;CANADIAN SYLLABICS CARRIER GHA;Lo;0;L;;;;;N;;;;; -15CA;CANADIAN SYLLABICS CARRIER RU;Lo;0;L;;;;;N;;;;; -15CB;CANADIAN SYLLABICS CARRIER RO;Lo;0;L;;;;;N;;;;; -15CC;CANADIAN SYLLABICS CARRIER RE;Lo;0;L;;;;;N;;;;; -15CD;CANADIAN SYLLABICS CARRIER REE;Lo;0;L;;;;;N;;;;; -15CE;CANADIAN SYLLABICS CARRIER RI;Lo;0;L;;;;;N;;;;; -15CF;CANADIAN SYLLABICS CARRIER RA;Lo;0;L;;;;;N;;;;; -15D0;CANADIAN SYLLABICS CARRIER WU;Lo;0;L;;;;;N;;;;; -15D1;CANADIAN SYLLABICS CARRIER WO;Lo;0;L;;;;;N;;;;; -15D2;CANADIAN SYLLABICS CARRIER WE;Lo;0;L;;;;;N;;;;; -15D3;CANADIAN SYLLABICS CARRIER WEE;Lo;0;L;;;;;N;;;;; -15D4;CANADIAN SYLLABICS CARRIER WI;Lo;0;L;;;;;N;;;;; -15D5;CANADIAN SYLLABICS CARRIER WA;Lo;0;L;;;;;N;;;;; -15D6;CANADIAN SYLLABICS CARRIER HWU;Lo;0;L;;;;;N;;;;; -15D7;CANADIAN SYLLABICS CARRIER HWO;Lo;0;L;;;;;N;;;;; -15D8;CANADIAN SYLLABICS CARRIER HWE;Lo;0;L;;;;;N;;;;; -15D9;CANADIAN SYLLABICS CARRIER HWEE;Lo;0;L;;;;;N;;;;; -15DA;CANADIAN SYLLABICS CARRIER HWI;Lo;0;L;;;;;N;;;;; -15DB;CANADIAN SYLLABICS CARRIER HWA;Lo;0;L;;;;;N;;;;; -15DC;CANADIAN SYLLABICS CARRIER THU;Lo;0;L;;;;;N;;;;; -15DD;CANADIAN SYLLABICS CARRIER THO;Lo;0;L;;;;;N;;;;; -15DE;CANADIAN SYLLABICS CARRIER THE;Lo;0;L;;;;;N;;;;; -15DF;CANADIAN SYLLABICS CARRIER THEE;Lo;0;L;;;;;N;;;;; -15E0;CANADIAN SYLLABICS CARRIER THI;Lo;0;L;;;;;N;;;;; -15E1;CANADIAN SYLLABICS CARRIER THA;Lo;0;L;;;;;N;;;;; -15E2;CANADIAN SYLLABICS CARRIER TTU;Lo;0;L;;;;;N;;;;; -15E3;CANADIAN SYLLABICS CARRIER TTO;Lo;0;L;;;;;N;;;;; -15E4;CANADIAN SYLLABICS CARRIER TTE;Lo;0;L;;;;;N;;;;; -15E5;CANADIAN SYLLABICS CARRIER TTEE;Lo;0;L;;;;;N;;;;; -15E6;CANADIAN SYLLABICS CARRIER TTI;Lo;0;L;;;;;N;;;;; -15E7;CANADIAN SYLLABICS CARRIER TTA;Lo;0;L;;;;;N;;;;; -15E8;CANADIAN SYLLABICS CARRIER PU;Lo;0;L;;;;;N;;;;; -15E9;CANADIAN SYLLABICS CARRIER PO;Lo;0;L;;;;;N;;;;; -15EA;CANADIAN SYLLABICS CARRIER PE;Lo;0;L;;;;;N;;;;; -15EB;CANADIAN SYLLABICS CARRIER PEE;Lo;0;L;;;;;N;;;;; -15EC;CANADIAN SYLLABICS CARRIER PI;Lo;0;L;;;;;N;;;;; -15ED;CANADIAN SYLLABICS CARRIER PA;Lo;0;L;;;;;N;;;;; -15EE;CANADIAN SYLLABICS CARRIER P;Lo;0;L;;;;;N;;;;; -15EF;CANADIAN SYLLABICS CARRIER GU;Lo;0;L;;;;;N;;;;; -15F0;CANADIAN SYLLABICS CARRIER GO;Lo;0;L;;;;;N;;;;; -15F1;CANADIAN SYLLABICS CARRIER GE;Lo;0;L;;;;;N;;;;; -15F2;CANADIAN SYLLABICS CARRIER GEE;Lo;0;L;;;;;N;;;;; -15F3;CANADIAN SYLLABICS CARRIER GI;Lo;0;L;;;;;N;;;;; -15F4;CANADIAN SYLLABICS CARRIER GA;Lo;0;L;;;;;N;;;;; -15F5;CANADIAN SYLLABICS CARRIER KHU;Lo;0;L;;;;;N;;;;; -15F6;CANADIAN SYLLABICS CARRIER KHO;Lo;0;L;;;;;N;;;;; -15F7;CANADIAN SYLLABICS CARRIER KHE;Lo;0;L;;;;;N;;;;; -15F8;CANADIAN SYLLABICS CARRIER KHEE;Lo;0;L;;;;;N;;;;; -15F9;CANADIAN SYLLABICS CARRIER KHI;Lo;0;L;;;;;N;;;;; -15FA;CANADIAN SYLLABICS CARRIER KHA;Lo;0;L;;;;;N;;;;; -15FB;CANADIAN SYLLABICS CARRIER KKU;Lo;0;L;;;;;N;;;;; -15FC;CANADIAN SYLLABICS CARRIER KKO;Lo;0;L;;;;;N;;;;; -15FD;CANADIAN SYLLABICS CARRIER KKE;Lo;0;L;;;;;N;;;;; -15FE;CANADIAN SYLLABICS CARRIER KKEE;Lo;0;L;;;;;N;;;;; -15FF;CANADIAN SYLLABICS CARRIER KKI;Lo;0;L;;;;;N;;;;; -1600;CANADIAN SYLLABICS CARRIER KKA;Lo;0;L;;;;;N;;;;; -1601;CANADIAN SYLLABICS CARRIER KK;Lo;0;L;;;;;N;;;;; -1602;CANADIAN SYLLABICS CARRIER NU;Lo;0;L;;;;;N;;;;; -1603;CANADIAN SYLLABICS CARRIER NO;Lo;0;L;;;;;N;;;;; -1604;CANADIAN SYLLABICS CARRIER NE;Lo;0;L;;;;;N;;;;; -1605;CANADIAN SYLLABICS CARRIER NEE;Lo;0;L;;;;;N;;;;; -1606;CANADIAN SYLLABICS CARRIER NI;Lo;0;L;;;;;N;;;;; -1607;CANADIAN SYLLABICS CARRIER NA;Lo;0;L;;;;;N;;;;; -1608;CANADIAN SYLLABICS CARRIER MU;Lo;0;L;;;;;N;;;;; -1609;CANADIAN SYLLABICS CARRIER MO;Lo;0;L;;;;;N;;;;; -160A;CANADIAN SYLLABICS CARRIER ME;Lo;0;L;;;;;N;;;;; -160B;CANADIAN SYLLABICS CARRIER MEE;Lo;0;L;;;;;N;;;;; -160C;CANADIAN SYLLABICS CARRIER MI;Lo;0;L;;;;;N;;;;; -160D;CANADIAN SYLLABICS CARRIER MA;Lo;0;L;;;;;N;;;;; -160E;CANADIAN SYLLABICS CARRIER YU;Lo;0;L;;;;;N;;;;; -160F;CANADIAN SYLLABICS CARRIER YO;Lo;0;L;;;;;N;;;;; -1610;CANADIAN SYLLABICS CARRIER YE;Lo;0;L;;;;;N;;;;; -1611;CANADIAN SYLLABICS CARRIER YEE;Lo;0;L;;;;;N;;;;; -1612;CANADIAN SYLLABICS CARRIER YI;Lo;0;L;;;;;N;;;;; -1613;CANADIAN SYLLABICS CARRIER YA;Lo;0;L;;;;;N;;;;; -1614;CANADIAN SYLLABICS CARRIER JU;Lo;0;L;;;;;N;;;;; -1615;CANADIAN SYLLABICS SAYISI JU;Lo;0;L;;;;;N;;;;; -1616;CANADIAN SYLLABICS CARRIER JO;Lo;0;L;;;;;N;;;;; -1617;CANADIAN SYLLABICS CARRIER JE;Lo;0;L;;;;;N;;;;; -1618;CANADIAN SYLLABICS CARRIER JEE;Lo;0;L;;;;;N;;;;; -1619;CANADIAN SYLLABICS CARRIER JI;Lo;0;L;;;;;N;;;;; -161A;CANADIAN SYLLABICS SAYISI JI;Lo;0;L;;;;;N;;;;; -161B;CANADIAN SYLLABICS CARRIER JA;Lo;0;L;;;;;N;;;;; -161C;CANADIAN SYLLABICS CARRIER JJU;Lo;0;L;;;;;N;;;;; -161D;CANADIAN SYLLABICS CARRIER JJO;Lo;0;L;;;;;N;;;;; -161E;CANADIAN SYLLABICS CARRIER JJE;Lo;0;L;;;;;N;;;;; -161F;CANADIAN SYLLABICS CARRIER JJEE;Lo;0;L;;;;;N;;;;; -1620;CANADIAN SYLLABICS CARRIER JJI;Lo;0;L;;;;;N;;;;; -1621;CANADIAN SYLLABICS CARRIER JJA;Lo;0;L;;;;;N;;;;; -1622;CANADIAN SYLLABICS CARRIER LU;Lo;0;L;;;;;N;;;;; -1623;CANADIAN SYLLABICS CARRIER LO;Lo;0;L;;;;;N;;;;; -1624;CANADIAN SYLLABICS CARRIER LE;Lo;0;L;;;;;N;;;;; -1625;CANADIAN SYLLABICS CARRIER LEE;Lo;0;L;;;;;N;;;;; -1626;CANADIAN SYLLABICS CARRIER LI;Lo;0;L;;;;;N;;;;; -1627;CANADIAN SYLLABICS CARRIER LA;Lo;0;L;;;;;N;;;;; -1628;CANADIAN SYLLABICS CARRIER DLU;Lo;0;L;;;;;N;;;;; -1629;CANADIAN SYLLABICS CARRIER DLO;Lo;0;L;;;;;N;;;;; -162A;CANADIAN SYLLABICS CARRIER DLE;Lo;0;L;;;;;N;;;;; -162B;CANADIAN SYLLABICS CARRIER DLEE;Lo;0;L;;;;;N;;;;; -162C;CANADIAN SYLLABICS CARRIER DLI;Lo;0;L;;;;;N;;;;; -162D;CANADIAN SYLLABICS CARRIER DLA;Lo;0;L;;;;;N;;;;; -162E;CANADIAN SYLLABICS CARRIER LHU;Lo;0;L;;;;;N;;;;; -162F;CANADIAN SYLLABICS CARRIER LHO;Lo;0;L;;;;;N;;;;; -1630;CANADIAN SYLLABICS CARRIER LHE;Lo;0;L;;;;;N;;;;; -1631;CANADIAN SYLLABICS CARRIER LHEE;Lo;0;L;;;;;N;;;;; -1632;CANADIAN SYLLABICS CARRIER LHI;Lo;0;L;;;;;N;;;;; -1633;CANADIAN SYLLABICS CARRIER LHA;Lo;0;L;;;;;N;;;;; -1634;CANADIAN SYLLABICS CARRIER TLHU;Lo;0;L;;;;;N;;;;; -1635;CANADIAN SYLLABICS CARRIER TLHO;Lo;0;L;;;;;N;;;;; -1636;CANADIAN SYLLABICS CARRIER TLHE;Lo;0;L;;;;;N;;;;; -1637;CANADIAN SYLLABICS CARRIER TLHEE;Lo;0;L;;;;;N;;;;; -1638;CANADIAN SYLLABICS CARRIER TLHI;Lo;0;L;;;;;N;;;;; -1639;CANADIAN SYLLABICS CARRIER TLHA;Lo;0;L;;;;;N;;;;; -163A;CANADIAN SYLLABICS CARRIER TLU;Lo;0;L;;;;;N;;;;; -163B;CANADIAN SYLLABICS CARRIER TLO;Lo;0;L;;;;;N;;;;; -163C;CANADIAN SYLLABICS CARRIER TLE;Lo;0;L;;;;;N;;;;; -163D;CANADIAN SYLLABICS CARRIER TLEE;Lo;0;L;;;;;N;;;;; -163E;CANADIAN SYLLABICS CARRIER TLI;Lo;0;L;;;;;N;;;;; -163F;CANADIAN SYLLABICS CARRIER TLA;Lo;0;L;;;;;N;;;;; -1640;CANADIAN SYLLABICS CARRIER ZU;Lo;0;L;;;;;N;;;;; -1641;CANADIAN SYLLABICS CARRIER ZO;Lo;0;L;;;;;N;;;;; -1642;CANADIAN SYLLABICS CARRIER ZE;Lo;0;L;;;;;N;;;;; -1643;CANADIAN SYLLABICS CARRIER ZEE;Lo;0;L;;;;;N;;;;; -1644;CANADIAN SYLLABICS CARRIER ZI;Lo;0;L;;;;;N;;;;; -1645;CANADIAN SYLLABICS CARRIER ZA;Lo;0;L;;;;;N;;;;; -1646;CANADIAN SYLLABICS CARRIER Z;Lo;0;L;;;;;N;;;;; -1647;CANADIAN SYLLABICS CARRIER INITIAL Z;Lo;0;L;;;;;N;;;;; -1648;CANADIAN SYLLABICS CARRIER DZU;Lo;0;L;;;;;N;;;;; -1649;CANADIAN SYLLABICS CARRIER DZO;Lo;0;L;;;;;N;;;;; -164A;CANADIAN SYLLABICS CARRIER DZE;Lo;0;L;;;;;N;;;;; -164B;CANADIAN SYLLABICS CARRIER DZEE;Lo;0;L;;;;;N;;;;; -164C;CANADIAN SYLLABICS CARRIER DZI;Lo;0;L;;;;;N;;;;; -164D;CANADIAN SYLLABICS CARRIER DZA;Lo;0;L;;;;;N;;;;; -164E;CANADIAN SYLLABICS CARRIER SU;Lo;0;L;;;;;N;;;;; -164F;CANADIAN SYLLABICS CARRIER SO;Lo;0;L;;;;;N;;;;; -1650;CANADIAN SYLLABICS CARRIER SE;Lo;0;L;;;;;N;;;;; -1651;CANADIAN SYLLABICS CARRIER SEE;Lo;0;L;;;;;N;;;;; -1652;CANADIAN SYLLABICS CARRIER SI;Lo;0;L;;;;;N;;;;; -1653;CANADIAN SYLLABICS CARRIER SA;Lo;0;L;;;;;N;;;;; -1654;CANADIAN SYLLABICS CARRIER SHU;Lo;0;L;;;;;N;;;;; -1655;CANADIAN SYLLABICS CARRIER SHO;Lo;0;L;;;;;N;;;;; -1656;CANADIAN SYLLABICS CARRIER SHE;Lo;0;L;;;;;N;;;;; -1657;CANADIAN SYLLABICS CARRIER SHEE;Lo;0;L;;;;;N;;;;; -1658;CANADIAN SYLLABICS CARRIER SHI;Lo;0;L;;;;;N;;;;; -1659;CANADIAN SYLLABICS CARRIER SHA;Lo;0;L;;;;;N;;;;; -165A;CANADIAN SYLLABICS CARRIER SH;Lo;0;L;;;;;N;;;;; -165B;CANADIAN SYLLABICS CARRIER TSU;Lo;0;L;;;;;N;;;;; -165C;CANADIAN SYLLABICS CARRIER TSO;Lo;0;L;;;;;N;;;;; -165D;CANADIAN SYLLABICS CARRIER TSE;Lo;0;L;;;;;N;;;;; -165E;CANADIAN SYLLABICS CARRIER TSEE;Lo;0;L;;;;;N;;;;; -165F;CANADIAN SYLLABICS CARRIER TSI;Lo;0;L;;;;;N;;;;; -1660;CANADIAN SYLLABICS CARRIER TSA;Lo;0;L;;;;;N;;;;; -1661;CANADIAN SYLLABICS CARRIER CHU;Lo;0;L;;;;;N;;;;; -1662;CANADIAN SYLLABICS CARRIER CHO;Lo;0;L;;;;;N;;;;; -1663;CANADIAN SYLLABICS CARRIER CHE;Lo;0;L;;;;;N;;;;; -1664;CANADIAN SYLLABICS CARRIER CHEE;Lo;0;L;;;;;N;;;;; -1665;CANADIAN SYLLABICS CARRIER CHI;Lo;0;L;;;;;N;;;;; -1666;CANADIAN SYLLABICS CARRIER CHA;Lo;0;L;;;;;N;;;;; -1667;CANADIAN SYLLABICS CARRIER TTSU;Lo;0;L;;;;;N;;;;; -1668;CANADIAN SYLLABICS CARRIER TTSO;Lo;0;L;;;;;N;;;;; -1669;CANADIAN SYLLABICS CARRIER TTSE;Lo;0;L;;;;;N;;;;; -166A;CANADIAN SYLLABICS CARRIER TTSEE;Lo;0;L;;;;;N;;;;; -166B;CANADIAN SYLLABICS CARRIER TTSI;Lo;0;L;;;;;N;;;;; -166C;CANADIAN SYLLABICS CARRIER TTSA;Lo;0;L;;;;;N;;;;; -166D;CANADIAN SYLLABICS CHI SIGN;Po;0;L;;;;;N;;;;; -166E;CANADIAN SYLLABICS FULL STOP;Po;0;L;;;;;N;;;;; -166F;CANADIAN SYLLABICS QAI;Lo;0;L;;;;;N;;;;; -1670;CANADIAN SYLLABICS NGAI;Lo;0;L;;;;;N;;;;; -1671;CANADIAN SYLLABICS NNGI;Lo;0;L;;;;;N;;;;; -1672;CANADIAN SYLLABICS NNGII;Lo;0;L;;;;;N;;;;; -1673;CANADIAN SYLLABICS NNGO;Lo;0;L;;;;;N;;;;; -1674;CANADIAN SYLLABICS NNGOO;Lo;0;L;;;;;N;;;;; -1675;CANADIAN SYLLABICS NNGA;Lo;0;L;;;;;N;;;;; -1676;CANADIAN SYLLABICS NNGAA;Lo;0;L;;;;;N;;;;; -1677;CANADIAN SYLLABICS WOODS-CREE THWEE;Lo;0;L;;;;;N;;;;; -1678;CANADIAN SYLLABICS WOODS-CREE THWI;Lo;0;L;;;;;N;;;;; -1679;CANADIAN SYLLABICS WOODS-CREE THWII;Lo;0;L;;;;;N;;;;; -167A;CANADIAN SYLLABICS WOODS-CREE THWO;Lo;0;L;;;;;N;;;;; -167B;CANADIAN SYLLABICS WOODS-CREE THWOO;Lo;0;L;;;;;N;;;;; -167C;CANADIAN SYLLABICS WOODS-CREE THWA;Lo;0;L;;;;;N;;;;; -167D;CANADIAN SYLLABICS WOODS-CREE THWAA;Lo;0;L;;;;;N;;;;; -167E;CANADIAN SYLLABICS WOODS-CREE FINAL TH;Lo;0;L;;;;;N;;;;; -167F;CANADIAN SYLLABICS BLACKFOOT W;Lo;0;L;;;;;N;;;;; -1680;OGHAM SPACE MARK;Zs;0;WS;;;;;N;;;;; -1681;OGHAM LETTER BEITH;Lo;0;L;;;;;N;;;;; -1682;OGHAM LETTER LUIS;Lo;0;L;;;;;N;;;;; -1683;OGHAM LETTER FEARN;Lo;0;L;;;;;N;;;;; -1684;OGHAM LETTER SAIL;Lo;0;L;;;;;N;;;;; -1685;OGHAM LETTER NION;Lo;0;L;;;;;N;;;;; -1686;OGHAM LETTER UATH;Lo;0;L;;;;;N;;;;; -1687;OGHAM LETTER DAIR;Lo;0;L;;;;;N;;;;; -1688;OGHAM LETTER TINNE;Lo;0;L;;;;;N;;;;; -1689;OGHAM LETTER COLL;Lo;0;L;;;;;N;;;;; -168A;OGHAM LETTER CEIRT;Lo;0;L;;;;;N;;;;; -168B;OGHAM LETTER MUIN;Lo;0;L;;;;;N;;;;; -168C;OGHAM LETTER GORT;Lo;0;L;;;;;N;;;;; -168D;OGHAM LETTER NGEADAL;Lo;0;L;;;;;N;;;;; -168E;OGHAM LETTER STRAIF;Lo;0;L;;;;;N;;;;; -168F;OGHAM LETTER RUIS;Lo;0;L;;;;;N;;;;; -1690;OGHAM LETTER AILM;Lo;0;L;;;;;N;;;;; -1691;OGHAM LETTER ONN;Lo;0;L;;;;;N;;;;; -1692;OGHAM LETTER UR;Lo;0;L;;;;;N;;;;; -1693;OGHAM LETTER EADHADH;Lo;0;L;;;;;N;;;;; -1694;OGHAM LETTER IODHADH;Lo;0;L;;;;;N;;;;; -1695;OGHAM LETTER EABHADH;Lo;0;L;;;;;N;;;;; -1696;OGHAM LETTER OR;Lo;0;L;;;;;N;;;;; -1697;OGHAM LETTER UILLEANN;Lo;0;L;;;;;N;;;;; -1698;OGHAM LETTER IFIN;Lo;0;L;;;;;N;;;;; -1699;OGHAM LETTER EAMHANCHOLL;Lo;0;L;;;;;N;;;;; -169A;OGHAM LETTER PEITH;Lo;0;L;;;;;N;;;;; -169B;OGHAM FEATHER MARK;Ps;0;ON;;;;;Y;;;;; -169C;OGHAM REVERSED FEATHER MARK;Pe;0;ON;;;;;Y;;;;; -16A0;RUNIC LETTER FEHU FEOH FE F;Lo;0;L;;;;;N;;;;; -16A1;RUNIC LETTER V;Lo;0;L;;;;;N;;;;; -16A2;RUNIC LETTER URUZ UR U;Lo;0;L;;;;;N;;;;; -16A3;RUNIC LETTER YR;Lo;0;L;;;;;N;;;;; -16A4;RUNIC LETTER Y;Lo;0;L;;;;;N;;;;; -16A5;RUNIC LETTER W;Lo;0;L;;;;;N;;;;; -16A6;RUNIC LETTER THURISAZ THURS THORN;Lo;0;L;;;;;N;;;;; -16A7;RUNIC LETTER ETH;Lo;0;L;;;;;N;;;;; -16A8;RUNIC LETTER ANSUZ A;Lo;0;L;;;;;N;;;;; -16A9;RUNIC LETTER OS O;Lo;0;L;;;;;N;;;;; -16AA;RUNIC LETTER AC A;Lo;0;L;;;;;N;;;;; -16AB;RUNIC LETTER AESC;Lo;0;L;;;;;N;;;;; -16AC;RUNIC LETTER LONG-BRANCH-OSS O;Lo;0;L;;;;;N;;;;; -16AD;RUNIC LETTER SHORT-TWIG-OSS O;Lo;0;L;;;;;N;;;;; -16AE;RUNIC LETTER O;Lo;0;L;;;;;N;;;;; -16AF;RUNIC LETTER OE;Lo;0;L;;;;;N;;;;; -16B0;RUNIC LETTER ON;Lo;0;L;;;;;N;;;;; -16B1;RUNIC LETTER RAIDO RAD REID R;Lo;0;L;;;;;N;;;;; -16B2;RUNIC LETTER KAUNA;Lo;0;L;;;;;N;;;;; -16B3;RUNIC LETTER CEN;Lo;0;L;;;;;N;;;;; -16B4;RUNIC LETTER KAUN K;Lo;0;L;;;;;N;;;;; -16B5;RUNIC LETTER G;Lo;0;L;;;;;N;;;;; -16B6;RUNIC LETTER ENG;Lo;0;L;;;;;N;;;;; -16B7;RUNIC LETTER GEBO GYFU G;Lo;0;L;;;;;N;;;;; -16B8;RUNIC LETTER GAR;Lo;0;L;;;;;N;;;;; -16B9;RUNIC LETTER WUNJO WYNN W;Lo;0;L;;;;;N;;;;; -16BA;RUNIC LETTER HAGLAZ H;Lo;0;L;;;;;N;;;;; -16BB;RUNIC LETTER HAEGL H;Lo;0;L;;;;;N;;;;; -16BC;RUNIC LETTER LONG-BRANCH-HAGALL H;Lo;0;L;;;;;N;;;;; -16BD;RUNIC LETTER SHORT-TWIG-HAGALL H;Lo;0;L;;;;;N;;;;; -16BE;RUNIC LETTER NAUDIZ NYD NAUD N;Lo;0;L;;;;;N;;;;; -16BF;RUNIC LETTER SHORT-TWIG-NAUD N;Lo;0;L;;;;;N;;;;; -16C0;RUNIC LETTER DOTTED-N;Lo;0;L;;;;;N;;;;; -16C1;RUNIC LETTER ISAZ IS ISS I;Lo;0;L;;;;;N;;;;; -16C2;RUNIC LETTER E;Lo;0;L;;;;;N;;;;; -16C3;RUNIC LETTER JERAN J;Lo;0;L;;;;;N;;;;; -16C4;RUNIC LETTER GER;Lo;0;L;;;;;N;;;;; -16C5;RUNIC LETTER LONG-BRANCH-AR AE;Lo;0;L;;;;;N;;;;; -16C6;RUNIC LETTER SHORT-TWIG-AR A;Lo;0;L;;;;;N;;;;; -16C7;RUNIC LETTER IWAZ EOH;Lo;0;L;;;;;N;;;;; -16C8;RUNIC LETTER PERTHO PEORTH P;Lo;0;L;;;;;N;;;;; -16C9;RUNIC LETTER ALGIZ EOLHX;Lo;0;L;;;;;N;;;;; -16CA;RUNIC LETTER SOWILO S;Lo;0;L;;;;;N;;;;; -16CB;RUNIC LETTER SIGEL LONG-BRANCH-SOL S;Lo;0;L;;;;;N;;;;; -16CC;RUNIC LETTER SHORT-TWIG-SOL S;Lo;0;L;;;;;N;;;;; -16CD;RUNIC LETTER C;Lo;0;L;;;;;N;;;;; -16CE;RUNIC LETTER Z;Lo;0;L;;;;;N;;;;; -16CF;RUNIC LETTER TIWAZ TIR TYR T;Lo;0;L;;;;;N;;;;; -16D0;RUNIC LETTER SHORT-TWIG-TYR T;Lo;0;L;;;;;N;;;;; -16D1;RUNIC LETTER D;Lo;0;L;;;;;N;;;;; -16D2;RUNIC LETTER BERKANAN BEORC BJARKAN B;Lo;0;L;;;;;N;;;;; -16D3;RUNIC LETTER SHORT-TWIG-BJARKAN B;Lo;0;L;;;;;N;;;;; -16D4;RUNIC LETTER DOTTED-P;Lo;0;L;;;;;N;;;;; -16D5;RUNIC LETTER OPEN-P;Lo;0;L;;;;;N;;;;; -16D6;RUNIC LETTER EHWAZ EH E;Lo;0;L;;;;;N;;;;; -16D7;RUNIC LETTER MANNAZ MAN M;Lo;0;L;;;;;N;;;;; -16D8;RUNIC LETTER LONG-BRANCH-MADR M;Lo;0;L;;;;;N;;;;; -16D9;RUNIC LETTER SHORT-TWIG-MADR M;Lo;0;L;;;;;N;;;;; -16DA;RUNIC LETTER LAUKAZ LAGU LOGR L;Lo;0;L;;;;;N;;;;; -16DB;RUNIC LETTER DOTTED-L;Lo;0;L;;;;;N;;;;; -16DC;RUNIC LETTER INGWAZ;Lo;0;L;;;;;N;;;;; -16DD;RUNIC LETTER ING;Lo;0;L;;;;;N;;;;; -16DE;RUNIC LETTER DAGAZ DAEG D;Lo;0;L;;;;;N;;;;; -16DF;RUNIC LETTER OTHALAN ETHEL O;Lo;0;L;;;;;N;;;;; -16E0;RUNIC LETTER EAR;Lo;0;L;;;;;N;;;;; -16E1;RUNIC LETTER IOR;Lo;0;L;;;;;N;;;;; -16E2;RUNIC LETTER CWEORTH;Lo;0;L;;;;;N;;;;; -16E3;RUNIC LETTER CALC;Lo;0;L;;;;;N;;;;; -16E4;RUNIC LETTER CEALC;Lo;0;L;;;;;N;;;;; -16E5;RUNIC LETTER STAN;Lo;0;L;;;;;N;;;;; -16E6;RUNIC LETTER LONG-BRANCH-YR;Lo;0;L;;;;;N;;;;; -16E7;RUNIC LETTER SHORT-TWIG-YR;Lo;0;L;;;;;N;;;;; -16E8;RUNIC LETTER ICELANDIC-YR;Lo;0;L;;;;;N;;;;; -16E9;RUNIC LETTER Q;Lo;0;L;;;;;N;;;;; -16EA;RUNIC LETTER X;Lo;0;L;;;;;N;;;;; -16EB;RUNIC SINGLE PUNCTUATION;Po;0;L;;;;;N;;;;; -16EC;RUNIC MULTIPLE PUNCTUATION;Po;0;L;;;;;N;;;;; -16ED;RUNIC CROSS PUNCTUATION;Po;0;L;;;;;N;;;;; -16EE;RUNIC ARLAUG SYMBOL;Nl;0;L;;;;17;N;;;;; -16EF;RUNIC TVIMADUR SYMBOL;Nl;0;L;;;;18;N;;;;; -16F0;RUNIC BELGTHOR SYMBOL;Nl;0;L;;;;19;N;;;;; -1700;TAGALOG LETTER A;Lo;0;L;;;;;N;;;;; -1701;TAGALOG LETTER I;Lo;0;L;;;;;N;;;;; -1702;TAGALOG LETTER U;Lo;0;L;;;;;N;;;;; -1703;TAGALOG LETTER KA;Lo;0;L;;;;;N;;;;; -1704;TAGALOG LETTER GA;Lo;0;L;;;;;N;;;;; -1705;TAGALOG LETTER NGA;Lo;0;L;;;;;N;;;;; -1706;TAGALOG LETTER TA;Lo;0;L;;;;;N;;;;; -1707;TAGALOG LETTER DA;Lo;0;L;;;;;N;;;;; -1708;TAGALOG LETTER NA;Lo;0;L;;;;;N;;;;; -1709;TAGALOG LETTER PA;Lo;0;L;;;;;N;;;;; -170A;TAGALOG LETTER BA;Lo;0;L;;;;;N;;;;; -170B;TAGALOG LETTER MA;Lo;0;L;;;;;N;;;;; -170C;TAGALOG LETTER YA;Lo;0;L;;;;;N;;;;; -170E;TAGALOG LETTER LA;Lo;0;L;;;;;N;;;;; -170F;TAGALOG LETTER WA;Lo;0;L;;;;;N;;;;; -1710;TAGALOG LETTER SA;Lo;0;L;;;;;N;;;;; -1711;TAGALOG LETTER HA;Lo;0;L;;;;;N;;;;; -1712;TAGALOG VOWEL SIGN I;Mn;0;NSM;;;;;N;;;;; -1713;TAGALOG VOWEL SIGN U;Mn;0;NSM;;;;;N;;;;; -1714;TAGALOG SIGN VIRAMA;Mn;9;NSM;;;;;N;;;;; -1720;HANUNOO LETTER A;Lo;0;L;;;;;N;;;;; -1721;HANUNOO LETTER I;Lo;0;L;;;;;N;;;;; -1722;HANUNOO LETTER U;Lo;0;L;;;;;N;;;;; -1723;HANUNOO LETTER KA;Lo;0;L;;;;;N;;;;; -1724;HANUNOO LETTER GA;Lo;0;L;;;;;N;;;;; -1725;HANUNOO LETTER NGA;Lo;0;L;;;;;N;;;;; -1726;HANUNOO LETTER TA;Lo;0;L;;;;;N;;;;; -1727;HANUNOO LETTER DA;Lo;0;L;;;;;N;;;;; -1728;HANUNOO LETTER NA;Lo;0;L;;;;;N;;;;; -1729;HANUNOO LETTER PA;Lo;0;L;;;;;N;;;;; -172A;HANUNOO LETTER BA;Lo;0;L;;;;;N;;;;; -172B;HANUNOO LETTER MA;Lo;0;L;;;;;N;;;;; -172C;HANUNOO LETTER YA;Lo;0;L;;;;;N;;;;; -172D;HANUNOO LETTER RA;Lo;0;L;;;;;N;;;;; -172E;HANUNOO LETTER LA;Lo;0;L;;;;;N;;;;; -172F;HANUNOO LETTER WA;Lo;0;L;;;;;N;;;;; -1730;HANUNOO LETTER SA;Lo;0;L;;;;;N;;;;; -1731;HANUNOO LETTER HA;Lo;0;L;;;;;N;;;;; -1732;HANUNOO VOWEL SIGN I;Mn;0;NSM;;;;;N;;;;; -1733;HANUNOO VOWEL SIGN U;Mn;0;NSM;;;;;N;;;;; -1734;HANUNOO SIGN PAMUDPOD;Mn;9;NSM;;;;;N;;;;; -1735;PHILIPPINE SINGLE PUNCTUATION;Po;0;L;;;;;N;;;;; -1736;PHILIPPINE DOUBLE PUNCTUATION;Po;0;L;;;;;N;;;;; -1740;BUHID LETTER A;Lo;0;L;;;;;N;;;;; -1741;BUHID LETTER I;Lo;0;L;;;;;N;;;;; -1742;BUHID LETTER U;Lo;0;L;;;;;N;;;;; -1743;BUHID LETTER KA;Lo;0;L;;;;;N;;;;; -1744;BUHID LETTER GA;Lo;0;L;;;;;N;;;;; -1745;BUHID LETTER NGA;Lo;0;L;;;;;N;;;;; -1746;BUHID LETTER TA;Lo;0;L;;;;;N;;;;; -1747;BUHID LETTER DA;Lo;0;L;;;;;N;;;;; -1748;BUHID LETTER NA;Lo;0;L;;;;;N;;;;; -1749;BUHID LETTER PA;Lo;0;L;;;;;N;;;;; -174A;BUHID LETTER BA;Lo;0;L;;;;;N;;;;; -174B;BUHID LETTER MA;Lo;0;L;;;;;N;;;;; -174C;BUHID LETTER YA;Lo;0;L;;;;;N;;;;; -174D;BUHID LETTER RA;Lo;0;L;;;;;N;;;;; -174E;BUHID LETTER LA;Lo;0;L;;;;;N;;;;; -174F;BUHID LETTER WA;Lo;0;L;;;;;N;;;;; -1750;BUHID LETTER SA;Lo;0;L;;;;;N;;;;; -1751;BUHID LETTER HA;Lo;0;L;;;;;N;;;;; -1752;BUHID VOWEL SIGN I;Mn;0;NSM;;;;;N;;;;; -1753;BUHID VOWEL SIGN U;Mn;0;NSM;;;;;N;;;;; -1760;TAGBANWA LETTER A;Lo;0;L;;;;;N;;;;; -1761;TAGBANWA LETTER I;Lo;0;L;;;;;N;;;;; -1762;TAGBANWA LETTER U;Lo;0;L;;;;;N;;;;; -1763;TAGBANWA LETTER KA;Lo;0;L;;;;;N;;;;; -1764;TAGBANWA LETTER GA;Lo;0;L;;;;;N;;;;; -1765;TAGBANWA LETTER NGA;Lo;0;L;;;;;N;;;;; -1766;TAGBANWA LETTER TA;Lo;0;L;;;;;N;;;;; -1767;TAGBANWA LETTER DA;Lo;0;L;;;;;N;;;;; -1768;TAGBANWA LETTER NA;Lo;0;L;;;;;N;;;;; -1769;TAGBANWA LETTER PA;Lo;0;L;;;;;N;;;;; -176A;TAGBANWA LETTER BA;Lo;0;L;;;;;N;;;;; -176B;TAGBANWA LETTER MA;Lo;0;L;;;;;N;;;;; -176C;TAGBANWA LETTER YA;Lo;0;L;;;;;N;;;;; -176E;TAGBANWA LETTER LA;Lo;0;L;;;;;N;;;;; -176F;TAGBANWA LETTER WA;Lo;0;L;;;;;N;;;;; -1770;TAGBANWA LETTER SA;Lo;0;L;;;;;N;;;;; -1772;TAGBANWA VOWEL SIGN I;Mn;0;NSM;;;;;N;;;;; -1773;TAGBANWA VOWEL SIGN U;Mn;0;NSM;;;;;N;;;;; -1780;KHMER LETTER KA;Lo;0;L;;;;;N;;;;; -1781;KHMER LETTER KHA;Lo;0;L;;;;;N;;;;; -1782;KHMER LETTER KO;Lo;0;L;;;;;N;;;;; -1783;KHMER LETTER KHO;Lo;0;L;;;;;N;;;;; -1784;KHMER LETTER NGO;Lo;0;L;;;;;N;;;;; -1785;KHMER LETTER CA;Lo;0;L;;;;;N;;;;; -1786;KHMER LETTER CHA;Lo;0;L;;;;;N;;;;; -1787;KHMER LETTER CO;Lo;0;L;;;;;N;;;;; -1788;KHMER LETTER CHO;Lo;0;L;;;;;N;;;;; -1789;KHMER LETTER NYO;Lo;0;L;;;;;N;;;;; -178A;KHMER LETTER DA;Lo;0;L;;;;;N;;;;; -178B;KHMER LETTER TTHA;Lo;0;L;;;;;N;;;;; -178C;KHMER LETTER DO;Lo;0;L;;;;;N;;;;; -178D;KHMER LETTER TTHO;Lo;0;L;;;;;N;;;;; -178E;KHMER LETTER NNO;Lo;0;L;;;;;N;;;;; -178F;KHMER LETTER TA;Lo;0;L;;;;;N;;;;; -1790;KHMER LETTER THA;Lo;0;L;;;;;N;;;;; -1791;KHMER LETTER TO;Lo;0;L;;;;;N;;;;; -1792;KHMER LETTER THO;Lo;0;L;;;;;N;;;;; -1793;KHMER LETTER NO;Lo;0;L;;;;;N;;;;; -1794;KHMER LETTER BA;Lo;0;L;;;;;N;;;;; -1795;KHMER LETTER PHA;Lo;0;L;;;;;N;;;;; -1796;KHMER LETTER PO;Lo;0;L;;;;;N;;;;; -1797;KHMER LETTER PHO;Lo;0;L;;;;;N;;;;; -1798;KHMER LETTER MO;Lo;0;L;;;;;N;;;;; -1799;KHMER LETTER YO;Lo;0;L;;;;;N;;;;; -179A;KHMER LETTER RO;Lo;0;L;;;;;N;;;;; -179B;KHMER LETTER LO;Lo;0;L;;;;;N;;;;; -179C;KHMER LETTER VO;Lo;0;L;;;;;N;;;;; -179D;KHMER LETTER SHA;Lo;0;L;;;;;N;;;;; -179E;KHMER LETTER SSO;Lo;0;L;;;;;N;;;;; -179F;KHMER LETTER SA;Lo;0;L;;;;;N;;;;; -17A0;KHMER LETTER HA;Lo;0;L;;;;;N;;;;; -17A1;KHMER LETTER LA;Lo;0;L;;;;;N;;;;; -17A2;KHMER LETTER QA;Lo;0;L;;;;;N;;;;; -17A3;KHMER INDEPENDENT VOWEL QAQ;Lo;0;L;;;;;N;;;;; -17A4;KHMER INDEPENDENT VOWEL QAA;Lo;0;L;;;;;N;;;;; -17A5;KHMER INDEPENDENT VOWEL QI;Lo;0;L;;;;;N;;;;; -17A6;KHMER INDEPENDENT VOWEL QII;Lo;0;L;;;;;N;;;;; -17A7;KHMER INDEPENDENT VOWEL QU;Lo;0;L;;;;;N;;;;; -17A8;KHMER INDEPENDENT VOWEL QUK;Lo;0;L;;;;;N;;;;; -17A9;KHMER INDEPENDENT VOWEL QUU;Lo;0;L;;;;;N;;;;; -17AA;KHMER INDEPENDENT VOWEL QUUV;Lo;0;L;;;;;N;;;;; -17AB;KHMER INDEPENDENT VOWEL RY;Lo;0;L;;;;;N;;;;; -17AC;KHMER INDEPENDENT VOWEL RYY;Lo;0;L;;;;;N;;;;; -17AD;KHMER INDEPENDENT VOWEL LY;Lo;0;L;;;;;N;;;;; -17AE;KHMER INDEPENDENT VOWEL LYY;Lo;0;L;;;;;N;;;;; -17AF;KHMER INDEPENDENT VOWEL QE;Lo;0;L;;;;;N;;;;; -17B0;KHMER INDEPENDENT VOWEL QAI;Lo;0;L;;;;;N;;;;; -17B1;KHMER INDEPENDENT VOWEL QOO TYPE ONE;Lo;0;L;;;;;N;;;;; -17B2;KHMER INDEPENDENT VOWEL QOO TYPE TWO;Lo;0;L;;;;;N;;;;; -17B3;KHMER INDEPENDENT VOWEL QAU;Lo;0;L;;;;;N;;;;; -17B4;KHMER VOWEL INHERENT AQ;Cf;0;L;;;;;N;;;;; -17B5;KHMER VOWEL INHERENT AA;Cf;0;L;;;;;N;;;;; -17B6;KHMER VOWEL SIGN AA;Mc;0;L;;;;;N;;;;; -17B7;KHMER VOWEL SIGN I;Mn;0;NSM;;;;;N;;;;; -17B8;KHMER VOWEL SIGN II;Mn;0;NSM;;;;;N;;;;; -17B9;KHMER VOWEL SIGN Y;Mn;0;NSM;;;;;N;;;;; -17BA;KHMER VOWEL SIGN YY;Mn;0;NSM;;;;;N;;;;; -17BB;KHMER VOWEL SIGN U;Mn;0;NSM;;;;;N;;;;; -17BC;KHMER VOWEL SIGN UU;Mn;0;NSM;;;;;N;;;;; -17BD;KHMER VOWEL SIGN UA;Mn;0;NSM;;;;;N;;;;; -17BE;KHMER VOWEL SIGN OE;Mc;0;L;;;;;N;;;;; -17BF;KHMER VOWEL SIGN YA;Mc;0;L;;;;;N;;;;; -17C0;KHMER VOWEL SIGN IE;Mc;0;L;;;;;N;;;;; -17C1;KHMER VOWEL SIGN E;Mc;0;L;;;;;N;;;;; -17C2;KHMER VOWEL SIGN AE;Mc;0;L;;;;;N;;;;; -17C3;KHMER VOWEL SIGN AI;Mc;0;L;;;;;N;;;;; -17C4;KHMER VOWEL SIGN OO;Mc;0;L;;;;;N;;;;; -17C5;KHMER VOWEL SIGN AU;Mc;0;L;;;;;N;;;;; -17C6;KHMER SIGN NIKAHIT;Mn;0;NSM;;;;;N;;;;; -17C7;KHMER SIGN REAHMUK;Mc;0;L;;;;;N;;;;; -17C8;KHMER SIGN YUUKALEAPINTU;Mc;0;L;;;;;N;;;;; -17C9;KHMER SIGN MUUSIKATOAN;Mn;0;NSM;;;;;N;;;;; -17CA;KHMER SIGN TRIISAP;Mn;0;NSM;;;;;N;;;;; -17CB;KHMER SIGN BANTOC;Mn;0;NSM;;;;;N;;;;; -17CC;KHMER SIGN ROBAT;Mn;0;NSM;;;;;N;;;;; -17CD;KHMER SIGN TOANDAKHIAT;Mn;0;NSM;;;;;N;;;;; -17CE;KHMER SIGN KAKABAT;Mn;0;NSM;;;;;N;;;;; -17CF;KHMER SIGN AHSDA;Mn;0;NSM;;;;;N;;;;; -17D0;KHMER SIGN SAMYOK SANNYA;Mn;0;NSM;;;;;N;;;;; -17D1;KHMER SIGN VIRIAM;Mn;0;NSM;;;;;N;;;;; -17D2;KHMER SIGN COENG;Mn;9;NSM;;;;;N;;;;; -17D3;KHMER SIGN BATHAMASAT;Mn;0;NSM;;;;;N;;;;; -17D4;KHMER SIGN KHAN;Po;0;L;;;;;N;;;;; -17D5;KHMER SIGN BARIYOOSAN;Po;0;L;;;;;N;;;;; -17D6;KHMER SIGN CAMNUC PII KUUH;Po;0;L;;;;;N;;;;; -17D7;KHMER SIGN LEK TOO;Lm;0;L;;;;;N;;;;; -17D8;KHMER SIGN BEYYAL;Po;0;L;;;;;N;;;;; -17D9;KHMER SIGN PHNAEK MUAN;Po;0;L;;;;;N;;;;; -17DA;KHMER SIGN KOOMUUT;Po;0;L;;;;;N;;;;; -17DB;KHMER CURRENCY SYMBOL RIEL;Sc;0;ET;;;;;N;;;;; -17DC;KHMER SIGN AVAKRAHASANYA;Lo;0;L;;;;;N;;;;; -17DD;KHMER SIGN ATTHACAN;Mn;230;NSM;;;;;N;;;;; -17E0;KHMER DIGIT ZERO;Nd;0;L;;0;0;0;N;;;;; -17E1;KHMER DIGIT ONE;Nd;0;L;;1;1;1;N;;;;; -17E2;KHMER DIGIT TWO;Nd;0;L;;2;2;2;N;;;;; -17E3;KHMER DIGIT THREE;Nd;0;L;;3;3;3;N;;;;; -17E4;KHMER DIGIT FOUR;Nd;0;L;;4;4;4;N;;;;; -17E5;KHMER DIGIT FIVE;Nd;0;L;;5;5;5;N;;;;; -17E6;KHMER DIGIT SIX;Nd;0;L;;6;6;6;N;;;;; -17E7;KHMER DIGIT SEVEN;Nd;0;L;;7;7;7;N;;;;; -17E8;KHMER DIGIT EIGHT;Nd;0;L;;8;8;8;N;;;;; -17E9;KHMER DIGIT NINE;Nd;0;L;;9;9;9;N;;;;; -17F0;KHMER SYMBOL LEK ATTAK SON;No;0;ON;;;;0;N;;;;; -17F1;KHMER SYMBOL LEK ATTAK MUOY;No;0;ON;;;;1;N;;;;; -17F2;KHMER SYMBOL LEK ATTAK PII;No;0;ON;;;;2;N;;;;; -17F3;KHMER SYMBOL LEK ATTAK BEI;No;0;ON;;;;3;N;;;;; -17F4;KHMER SYMBOL LEK ATTAK BUON;No;0;ON;;;;4;N;;;;; -17F5;KHMER SYMBOL LEK ATTAK PRAM;No;0;ON;;;;5;N;;;;; -17F6;KHMER SYMBOL LEK ATTAK PRAM-MUOY;No;0;ON;;;;6;N;;;;; -17F7;KHMER SYMBOL LEK ATTAK PRAM-PII;No;0;ON;;;;7;N;;;;; -17F8;KHMER SYMBOL LEK ATTAK PRAM-BEI;No;0;ON;;;;8;N;;;;; -17F9;KHMER SYMBOL LEK ATTAK PRAM-BUON;No;0;ON;;;;9;N;;;;; -1800;MONGOLIAN BIRGA;Po;0;ON;;;;;N;;;;; -1801;MONGOLIAN ELLIPSIS;Po;0;ON;;;;;N;;;;; -1802;MONGOLIAN COMMA;Po;0;ON;;;;;N;;;;; -1803;MONGOLIAN FULL STOP;Po;0;ON;;;;;N;;;;; -1804;MONGOLIAN COLON;Po;0;ON;;;;;N;;;;; -1805;MONGOLIAN FOUR DOTS;Po;0;ON;;;;;N;;;;; -1806;MONGOLIAN TODO SOFT HYPHEN;Pd;0;ON;;;;;N;;;;; -1807;MONGOLIAN SIBE SYLLABLE BOUNDARY MARKER;Po;0;ON;;;;;N;;;;; -1808;MONGOLIAN MANCHU COMMA;Po;0;ON;;;;;N;;;;; -1809;MONGOLIAN MANCHU FULL STOP;Po;0;ON;;;;;N;;;;; -180A;MONGOLIAN NIRUGU;Po;0;ON;;;;;N;;;;; -180B;MONGOLIAN FREE VARIATION SELECTOR ONE;Mn;0;NSM;;;;;N;;;;; -180C;MONGOLIAN FREE VARIATION SELECTOR TWO;Mn;0;NSM;;;;;N;;;;; -180D;MONGOLIAN FREE VARIATION SELECTOR THREE;Mn;0;NSM;;;;;N;;;;; -180E;MONGOLIAN VOWEL SEPARATOR;Zs;0;WS;;;;;N;;;;; -1810;MONGOLIAN DIGIT ZERO;Nd;0;L;;0;0;0;N;;;;; -1811;MONGOLIAN DIGIT ONE;Nd;0;L;;1;1;1;N;;;;; -1812;MONGOLIAN DIGIT TWO;Nd;0;L;;2;2;2;N;;;;; -1813;MONGOLIAN DIGIT THREE;Nd;0;L;;3;3;3;N;;;;; -1814;MONGOLIAN DIGIT FOUR;Nd;0;L;;4;4;4;N;;;;; -1815;MONGOLIAN DIGIT FIVE;Nd;0;L;;5;5;5;N;;;;; -1816;MONGOLIAN DIGIT SIX;Nd;0;L;;6;6;6;N;;;;; -1817;MONGOLIAN DIGIT SEVEN;Nd;0;L;;7;7;7;N;;;;; -1818;MONGOLIAN DIGIT EIGHT;Nd;0;L;;8;8;8;N;;;;; -1819;MONGOLIAN DIGIT NINE;Nd;0;L;;9;9;9;N;;;;; -1820;MONGOLIAN LETTER A;Lo;0;L;;;;;N;;;;; -1821;MONGOLIAN LETTER E;Lo;0;L;;;;;N;;;;; -1822;MONGOLIAN LETTER I;Lo;0;L;;;;;N;;;;; -1823;MONGOLIAN LETTER O;Lo;0;L;;;;;N;;;;; -1824;MONGOLIAN LETTER U;Lo;0;L;;;;;N;;;;; -1825;MONGOLIAN LETTER OE;Lo;0;L;;;;;N;;;;; -1826;MONGOLIAN LETTER UE;Lo;0;L;;;;;N;;;;; -1827;MONGOLIAN LETTER EE;Lo;0;L;;;;;N;;;;; -1828;MONGOLIAN LETTER NA;Lo;0;L;;;;;N;;;;; -1829;MONGOLIAN LETTER ANG;Lo;0;L;;;;;N;;;;; -182A;MONGOLIAN LETTER BA;Lo;0;L;;;;;N;;;;; -182B;MONGOLIAN LETTER PA;Lo;0;L;;;;;N;;;;; -182C;MONGOLIAN LETTER QA;Lo;0;L;;;;;N;;;;; -182D;MONGOLIAN LETTER GA;Lo;0;L;;;;;N;;;;; -182E;MONGOLIAN LETTER MA;Lo;0;L;;;;;N;;;;; -182F;MONGOLIAN LETTER LA;Lo;0;L;;;;;N;;;;; -1830;MONGOLIAN LETTER SA;Lo;0;L;;;;;N;;;;; -1831;MONGOLIAN LETTER SHA;Lo;0;L;;;;;N;;;;; -1832;MONGOLIAN LETTER TA;Lo;0;L;;;;;N;;;;; -1833;MONGOLIAN LETTER DA;Lo;0;L;;;;;N;;;;; -1834;MONGOLIAN LETTER CHA;Lo;0;L;;;;;N;;;;; -1835;MONGOLIAN LETTER JA;Lo;0;L;;;;;N;;;;; -1836;MONGOLIAN LETTER YA;Lo;0;L;;;;;N;;;;; -1837;MONGOLIAN LETTER RA;Lo;0;L;;;;;N;;;;; -1838;MONGOLIAN LETTER WA;Lo;0;L;;;;;N;;;;; -1839;MONGOLIAN LETTER FA;Lo;0;L;;;;;N;;;;; -183A;MONGOLIAN LETTER KA;Lo;0;L;;;;;N;;;;; -183B;MONGOLIAN LETTER KHA;Lo;0;L;;;;;N;;;;; -183C;MONGOLIAN LETTER TSA;Lo;0;L;;;;;N;;;;; -183D;MONGOLIAN LETTER ZA;Lo;0;L;;;;;N;;;;; -183E;MONGOLIAN LETTER HAA;Lo;0;L;;;;;N;;;;; -183F;MONGOLIAN LETTER ZRA;Lo;0;L;;;;;N;;;;; -1840;MONGOLIAN LETTER LHA;Lo;0;L;;;;;N;;;;; -1841;MONGOLIAN LETTER ZHI;Lo;0;L;;;;;N;;;;; -1842;MONGOLIAN LETTER CHI;Lo;0;L;;;;;N;;;;; -1843;MONGOLIAN LETTER TODO LONG VOWEL SIGN;Lm;0;L;;;;;N;;;;; -1844;MONGOLIAN LETTER TODO E;Lo;0;L;;;;;N;;;;; -1845;MONGOLIAN LETTER TODO I;Lo;0;L;;;;;N;;;;; -1846;MONGOLIAN LETTER TODO O;Lo;0;L;;;;;N;;;;; -1847;MONGOLIAN LETTER TODO U;Lo;0;L;;;;;N;;;;; -1848;MONGOLIAN LETTER TODO OE;Lo;0;L;;;;;N;;;;; -1849;MONGOLIAN LETTER TODO UE;Lo;0;L;;;;;N;;;;; -184A;MONGOLIAN LETTER TODO ANG;Lo;0;L;;;;;N;;;;; -184B;MONGOLIAN LETTER TODO BA;Lo;0;L;;;;;N;;;;; -184C;MONGOLIAN LETTER TODO PA;Lo;0;L;;;;;N;;;;; -184D;MONGOLIAN LETTER TODO QA;Lo;0;L;;;;;N;;;;; -184E;MONGOLIAN LETTER TODO GA;Lo;0;L;;;;;N;;;;; -184F;MONGOLIAN LETTER TODO MA;Lo;0;L;;;;;N;;;;; -1850;MONGOLIAN LETTER TODO TA;Lo;0;L;;;;;N;;;;; -1851;MONGOLIAN LETTER TODO DA;Lo;0;L;;;;;N;;;;; -1852;MONGOLIAN LETTER TODO CHA;Lo;0;L;;;;;N;;;;; -1853;MONGOLIAN LETTER TODO JA;Lo;0;L;;;;;N;;;;; -1854;MONGOLIAN LETTER TODO TSA;Lo;0;L;;;;;N;;;;; -1855;MONGOLIAN LETTER TODO YA;Lo;0;L;;;;;N;;;;; -1856;MONGOLIAN LETTER TODO WA;Lo;0;L;;;;;N;;;;; -1857;MONGOLIAN LETTER TODO KA;Lo;0;L;;;;;N;;;;; -1858;MONGOLIAN LETTER TODO GAA;Lo;0;L;;;;;N;;;;; -1859;MONGOLIAN LETTER TODO HAA;Lo;0;L;;;;;N;;;;; -185A;MONGOLIAN LETTER TODO JIA;Lo;0;L;;;;;N;;;;; -185B;MONGOLIAN LETTER TODO NIA;Lo;0;L;;;;;N;;;;; -185C;MONGOLIAN LETTER TODO DZA;Lo;0;L;;;;;N;;;;; -185D;MONGOLIAN LETTER SIBE E;Lo;0;L;;;;;N;;;;; -185E;MONGOLIAN LETTER SIBE I;Lo;0;L;;;;;N;;;;; -185F;MONGOLIAN LETTER SIBE IY;Lo;0;L;;;;;N;;;;; -1860;MONGOLIAN LETTER SIBE UE;Lo;0;L;;;;;N;;;;; -1861;MONGOLIAN LETTER SIBE U;Lo;0;L;;;;;N;;;;; -1862;MONGOLIAN LETTER SIBE ANG;Lo;0;L;;;;;N;;;;; -1863;MONGOLIAN LETTER SIBE KA;Lo;0;L;;;;;N;;;;; -1864;MONGOLIAN LETTER SIBE GA;Lo;0;L;;;;;N;;;;; -1865;MONGOLIAN LETTER SIBE HA;Lo;0;L;;;;;N;;;;; -1866;MONGOLIAN LETTER SIBE PA;Lo;0;L;;;;;N;;;;; -1867;MONGOLIAN LETTER SIBE SHA;Lo;0;L;;;;;N;;;;; -1868;MONGOLIAN LETTER SIBE TA;Lo;0;L;;;;;N;;;;; -1869;MONGOLIAN LETTER SIBE DA;Lo;0;L;;;;;N;;;;; -186A;MONGOLIAN LETTER SIBE JA;Lo;0;L;;;;;N;;;;; -186B;MONGOLIAN LETTER SIBE FA;Lo;0;L;;;;;N;;;;; -186C;MONGOLIAN LETTER SIBE GAA;Lo;0;L;;;;;N;;;;; -186D;MONGOLIAN LETTER SIBE HAA;Lo;0;L;;;;;N;;;;; -186E;MONGOLIAN LETTER SIBE TSA;Lo;0;L;;;;;N;;;;; -186F;MONGOLIAN LETTER SIBE ZA;Lo;0;L;;;;;N;;;;; -1870;MONGOLIAN LETTER SIBE RAA;Lo;0;L;;;;;N;;;;; -1871;MONGOLIAN LETTER SIBE CHA;Lo;0;L;;;;;N;;;;; -1872;MONGOLIAN LETTER SIBE ZHA;Lo;0;L;;;;;N;;;;; -1873;MONGOLIAN LETTER MANCHU I;Lo;0;L;;;;;N;;;;; -1874;MONGOLIAN LETTER MANCHU KA;Lo;0;L;;;;;N;;;;; -1875;MONGOLIAN LETTER MANCHU RA;Lo;0;L;;;;;N;;;;; -1876;MONGOLIAN LETTER MANCHU FA;Lo;0;L;;;;;N;;;;; -1877;MONGOLIAN LETTER MANCHU ZHA;Lo;0;L;;;;;N;;;;; -1880;MONGOLIAN LETTER ALI GALI ANUSVARA ONE;Lo;0;L;;;;;N;;;;; -1881;MONGOLIAN LETTER ALI GALI VISARGA ONE;Lo;0;L;;;;;N;;;;; -1882;MONGOLIAN LETTER ALI GALI DAMARU;Lo;0;L;;;;;N;;;;; -1883;MONGOLIAN LETTER ALI GALI UBADAMA;Lo;0;L;;;;;N;;;;; -1884;MONGOLIAN LETTER ALI GALI INVERTED UBADAMA;Lo;0;L;;;;;N;;;;; -1885;MONGOLIAN LETTER ALI GALI BALUDA;Lo;0;L;;;;;N;;;;; -1886;MONGOLIAN LETTER ALI GALI THREE BALUDA;Lo;0;L;;;;;N;;;;; -1887;MONGOLIAN LETTER ALI GALI A;Lo;0;L;;;;;N;;;;; -1888;MONGOLIAN LETTER ALI GALI I;Lo;0;L;;;;;N;;;;; -1889;MONGOLIAN LETTER ALI GALI KA;Lo;0;L;;;;;N;;;;; -188A;MONGOLIAN LETTER ALI GALI NGA;Lo;0;L;;;;;N;;;;; -188B;MONGOLIAN LETTER ALI GALI CA;Lo;0;L;;;;;N;;;;; -188C;MONGOLIAN LETTER ALI GALI TTA;Lo;0;L;;;;;N;;;;; -188D;MONGOLIAN LETTER ALI GALI TTHA;Lo;0;L;;;;;N;;;;; -188E;MONGOLIAN LETTER ALI GALI DDA;Lo;0;L;;;;;N;;;;; -188F;MONGOLIAN LETTER ALI GALI NNA;Lo;0;L;;;;;N;;;;; -1890;MONGOLIAN LETTER ALI GALI TA;Lo;0;L;;;;;N;;;;; -1891;MONGOLIAN LETTER ALI GALI DA;Lo;0;L;;;;;N;;;;; -1892;MONGOLIAN LETTER ALI GALI PA;Lo;0;L;;;;;N;;;;; -1893;MONGOLIAN LETTER ALI GALI PHA;Lo;0;L;;;;;N;;;;; -1894;MONGOLIAN LETTER ALI GALI SSA;Lo;0;L;;;;;N;;;;; -1895;MONGOLIAN LETTER ALI GALI ZHA;Lo;0;L;;;;;N;;;;; -1896;MONGOLIAN LETTER ALI GALI ZA;Lo;0;L;;;;;N;;;;; -1897;MONGOLIAN LETTER ALI GALI AH;Lo;0;L;;;;;N;;;;; -1898;MONGOLIAN LETTER TODO ALI GALI TA;Lo;0;L;;;;;N;;;;; -1899;MONGOLIAN LETTER TODO ALI GALI ZHA;Lo;0;L;;;;;N;;;;; -189A;MONGOLIAN LETTER MANCHU ALI GALI GHA;Lo;0;L;;;;;N;;;;; -189B;MONGOLIAN LETTER MANCHU ALI GALI NGA;Lo;0;L;;;;;N;;;;; -189C;MONGOLIAN LETTER MANCHU ALI GALI CA;Lo;0;L;;;;;N;;;;; -189D;MONGOLIAN LETTER MANCHU ALI GALI JHA;Lo;0;L;;;;;N;;;;; -189E;MONGOLIAN LETTER MANCHU ALI GALI TTA;Lo;0;L;;;;;N;;;;; -189F;MONGOLIAN LETTER MANCHU ALI GALI DDHA;Lo;0;L;;;;;N;;;;; -18A0;MONGOLIAN LETTER MANCHU ALI GALI TA;Lo;0;L;;;;;N;;;;; -18A1;MONGOLIAN LETTER MANCHU ALI GALI DHA;Lo;0;L;;;;;N;;;;; -18A2;MONGOLIAN LETTER MANCHU ALI GALI SSA;Lo;0;L;;;;;N;;;;; -18A3;MONGOLIAN LETTER MANCHU ALI GALI CYA;Lo;0;L;;;;;N;;;;; -18A4;MONGOLIAN LETTER MANCHU ALI GALI ZHA;Lo;0;L;;;;;N;;;;; -18A5;MONGOLIAN LETTER MANCHU ALI GALI ZA;Lo;0;L;;;;;N;;;;; -18A6;MONGOLIAN LETTER ALI GALI HALF U;Lo;0;L;;;;;N;;;;; -18A7;MONGOLIAN LETTER ALI GALI HALF YA;Lo;0;L;;;;;N;;;;; -18A8;MONGOLIAN LETTER MANCHU ALI GALI BHA;Lo;0;L;;;;;N;;;;; -18A9;MONGOLIAN LETTER ALI GALI DAGALGA;Mn;228;NSM;;;;;N;;;;; -18AA;MONGOLIAN LETTER MANCHU ALI GALI LHA;Lo;0;L;;;;;N;;;;; -18B0;CANADIAN SYLLABICS OY;Lo;0;L;;;;;N;;;;; -18B1;CANADIAN SYLLABICS AY;Lo;0;L;;;;;N;;;;; -18B2;CANADIAN SYLLABICS AAY;Lo;0;L;;;;;N;;;;; -18B3;CANADIAN SYLLABICS WAY;Lo;0;L;;;;;N;;;;; -18B4;CANADIAN SYLLABICS POY;Lo;0;L;;;;;N;;;;; -18B5;CANADIAN SYLLABICS PAY;Lo;0;L;;;;;N;;;;; -18B6;CANADIAN SYLLABICS PWOY;Lo;0;L;;;;;N;;;;; -18B7;CANADIAN SYLLABICS TAY;Lo;0;L;;;;;N;;;;; -18B8;CANADIAN SYLLABICS KAY;Lo;0;L;;;;;N;;;;; -18B9;CANADIAN SYLLABICS KWAY;Lo;0;L;;;;;N;;;;; -18BA;CANADIAN SYLLABICS MAY;Lo;0;L;;;;;N;;;;; -18BB;CANADIAN SYLLABICS NOY;Lo;0;L;;;;;N;;;;; -18BC;CANADIAN SYLLABICS NAY;Lo;0;L;;;;;N;;;;; -18BD;CANADIAN SYLLABICS LAY;Lo;0;L;;;;;N;;;;; -18BE;CANADIAN SYLLABICS SOY;Lo;0;L;;;;;N;;;;; -18BF;CANADIAN SYLLABICS SAY;Lo;0;L;;;;;N;;;;; -18C0;CANADIAN SYLLABICS SHOY;Lo;0;L;;;;;N;;;;; -18C1;CANADIAN SYLLABICS SHAY;Lo;0;L;;;;;N;;;;; -18C2;CANADIAN SYLLABICS SHWOY;Lo;0;L;;;;;N;;;;; -18C3;CANADIAN SYLLABICS YOY;Lo;0;L;;;;;N;;;;; -18C4;CANADIAN SYLLABICS YAY;Lo;0;L;;;;;N;;;;; -18C5;CANADIAN SYLLABICS RAY;Lo;0;L;;;;;N;;;;; -18C6;CANADIAN SYLLABICS NWI;Lo;0;L;;;;;N;;;;; -18C7;CANADIAN SYLLABICS OJIBWAY NWI;Lo;0;L;;;;;N;;;;; -18C8;CANADIAN SYLLABICS NWII;Lo;0;L;;;;;N;;;;; -18C9;CANADIAN SYLLABICS OJIBWAY NWII;Lo;0;L;;;;;N;;;;; -18CA;CANADIAN SYLLABICS NWO;Lo;0;L;;;;;N;;;;; -18CB;CANADIAN SYLLABICS OJIBWAY NWO;Lo;0;L;;;;;N;;;;; -18CC;CANADIAN SYLLABICS NWOO;Lo;0;L;;;;;N;;;;; -18CD;CANADIAN SYLLABICS OJIBWAY NWOO;Lo;0;L;;;;;N;;;;; -18CE;CANADIAN SYLLABICS RWEE;Lo;0;L;;;;;N;;;;; -18CF;CANADIAN SYLLABICS RWI;Lo;0;L;;;;;N;;;;; -18D0;CANADIAN SYLLABICS RWII;Lo;0;L;;;;;N;;;;; -18D1;CANADIAN SYLLABICS RWO;Lo;0;L;;;;;N;;;;; -18D2;CANADIAN SYLLABICS RWOO;Lo;0;L;;;;;N;;;;; -18D3;CANADIAN SYLLABICS RWA;Lo;0;L;;;;;N;;;;; -18D4;CANADIAN SYLLABICS OJIBWAY P;Lo;0;L;;;;;N;;;;; -18D5;CANADIAN SYLLABICS OJIBWAY T;Lo;0;L;;;;;N;;;;; -18D6;CANADIAN SYLLABICS OJIBWAY K;Lo;0;L;;;;;N;;;;; -18D7;CANADIAN SYLLABICS OJIBWAY C;Lo;0;L;;;;;N;;;;; -18D8;CANADIAN SYLLABICS OJIBWAY M;Lo;0;L;;;;;N;;;;; -18D9;CANADIAN SYLLABICS OJIBWAY N;Lo;0;L;;;;;N;;;;; -18DA;CANADIAN SYLLABICS OJIBWAY S;Lo;0;L;;;;;N;;;;; -18DB;CANADIAN SYLLABICS OJIBWAY SH;Lo;0;L;;;;;N;;;;; -18DC;CANADIAN SYLLABICS EASTERN W;Lo;0;L;;;;;N;;;;; -18DD;CANADIAN SYLLABICS WESTERN W;Lo;0;L;;;;;N;;;;; -18DE;CANADIAN SYLLABICS FINAL SMALL RING;Lo;0;L;;;;;N;;;;; -18DF;CANADIAN SYLLABICS FINAL RAISED DOT;Lo;0;L;;;;;N;;;;; -18E0;CANADIAN SYLLABICS R-CREE RWE;Lo;0;L;;;;;N;;;;; -18E1;CANADIAN SYLLABICS WEST-CREE LOO;Lo;0;L;;;;;N;;;;; -18E2;CANADIAN SYLLABICS WEST-CREE LAA;Lo;0;L;;;;;N;;;;; -18E3;CANADIAN SYLLABICS THWE;Lo;0;L;;;;;N;;;;; -18E4;CANADIAN SYLLABICS THWA;Lo;0;L;;;;;N;;;;; -18E5;CANADIAN SYLLABICS TTHWE;Lo;0;L;;;;;N;;;;; -18E6;CANADIAN SYLLABICS TTHOO;Lo;0;L;;;;;N;;;;; -18E7;CANADIAN SYLLABICS TTHAA;Lo;0;L;;;;;N;;;;; -18E8;CANADIAN SYLLABICS TLHWE;Lo;0;L;;;;;N;;;;; -18E9;CANADIAN SYLLABICS TLHOO;Lo;0;L;;;;;N;;;;; -18EA;CANADIAN SYLLABICS SAYISI SHWE;Lo;0;L;;;;;N;;;;; -18EB;CANADIAN SYLLABICS SAYISI SHOO;Lo;0;L;;;;;N;;;;; -18EC;CANADIAN SYLLABICS SAYISI HOO;Lo;0;L;;;;;N;;;;; -18ED;CANADIAN SYLLABICS CARRIER GWU;Lo;0;L;;;;;N;;;;; -18EE;CANADIAN SYLLABICS CARRIER DENE GEE;Lo;0;L;;;;;N;;;;; -18EF;CANADIAN SYLLABICS CARRIER GAA;Lo;0;L;;;;;N;;;;; -18F0;CANADIAN SYLLABICS CARRIER GWA;Lo;0;L;;;;;N;;;;; -18F1;CANADIAN SYLLABICS SAYISI JUU;Lo;0;L;;;;;N;;;;; -18F2;CANADIAN SYLLABICS CARRIER JWA;Lo;0;L;;;;;N;;;;; -18F3;CANADIAN SYLLABICS BEAVER DENE L;Lo;0;L;;;;;N;;;;; -18F4;CANADIAN SYLLABICS BEAVER DENE R;Lo;0;L;;;;;N;;;;; -18F5;CANADIAN SYLLABICS CARRIER DENTAL S;Lo;0;L;;;;;N;;;;; -1900;LIMBU VOWEL-CARRIER LETTER;Lo;0;L;;;;;N;;;;; -1901;LIMBU LETTER KA;Lo;0;L;;;;;N;;;;; -1902;LIMBU LETTER KHA;Lo;0;L;;;;;N;;;;; -1903;LIMBU LETTER GA;Lo;0;L;;;;;N;;;;; -1904;LIMBU LETTER GHA;Lo;0;L;;;;;N;;;;; -1905;LIMBU LETTER NGA;Lo;0;L;;;;;N;;;;; -1906;LIMBU LETTER CA;Lo;0;L;;;;;N;;;;; -1907;LIMBU LETTER CHA;Lo;0;L;;;;;N;;;;; -1908;LIMBU LETTER JA;Lo;0;L;;;;;N;;;;; -1909;LIMBU LETTER JHA;Lo;0;L;;;;;N;;;;; -190A;LIMBU LETTER YAN;Lo;0;L;;;;;N;;;;; -190B;LIMBU LETTER TA;Lo;0;L;;;;;N;;;;; -190C;LIMBU LETTER THA;Lo;0;L;;;;;N;;;;; -190D;LIMBU LETTER DA;Lo;0;L;;;;;N;;;;; -190E;LIMBU LETTER DHA;Lo;0;L;;;;;N;;;;; -190F;LIMBU LETTER NA;Lo;0;L;;;;;N;;;;; -1910;LIMBU LETTER PA;Lo;0;L;;;;;N;;;;; -1911;LIMBU LETTER PHA;Lo;0;L;;;;;N;;;;; -1912;LIMBU LETTER BA;Lo;0;L;;;;;N;;;;; -1913;LIMBU LETTER BHA;Lo;0;L;;;;;N;;;;; -1914;LIMBU LETTER MA;Lo;0;L;;;;;N;;;;; -1915;LIMBU LETTER YA;Lo;0;L;;;;;N;;;;; -1916;LIMBU LETTER RA;Lo;0;L;;;;;N;;;;; -1917;LIMBU LETTER LA;Lo;0;L;;;;;N;;;;; -1918;LIMBU LETTER WA;Lo;0;L;;;;;N;;;;; -1919;LIMBU LETTER SHA;Lo;0;L;;;;;N;;;;; -191A;LIMBU LETTER SSA;Lo;0;L;;;;;N;;;;; -191B;LIMBU LETTER SA;Lo;0;L;;;;;N;;;;; -191C;LIMBU LETTER HA;Lo;0;L;;;;;N;;;;; -1920;LIMBU VOWEL SIGN A;Mn;0;NSM;;;;;N;;;;; -1921;LIMBU VOWEL SIGN I;Mn;0;NSM;;;;;N;;;;; -1922;LIMBU VOWEL SIGN U;Mn;0;NSM;;;;;N;;;;; -1923;LIMBU VOWEL SIGN EE;Mc;0;L;;;;;N;;;;; -1924;LIMBU VOWEL SIGN AI;Mc;0;L;;;;;N;;;;; -1925;LIMBU VOWEL SIGN OO;Mc;0;L;;;;;N;;;;; -1926;LIMBU VOWEL SIGN AU;Mc;0;L;;;;;N;;;;; -1927;LIMBU VOWEL SIGN E;Mn;0;NSM;;;;;N;;;;; -1928;LIMBU VOWEL SIGN O;Mn;0;NSM;;;;;N;;;;; -1929;LIMBU SUBJOINED LETTER YA;Mc;0;L;;;;;N;;;;; -192A;LIMBU SUBJOINED LETTER RA;Mc;0;L;;;;;N;;;;; -192B;LIMBU SUBJOINED LETTER WA;Mc;0;L;;;;;N;;;;; -1930;LIMBU SMALL LETTER KA;Mc;0;L;;;;;N;;;;; -1931;LIMBU SMALL LETTER NGA;Mc;0;L;;;;;N;;;;; -1932;LIMBU SMALL LETTER ANUSVARA;Mn;0;NSM;;;;;N;;;;; -1933;LIMBU SMALL LETTER TA;Mc;0;L;;;;;N;;;;; -1934;LIMBU SMALL LETTER NA;Mc;0;L;;;;;N;;;;; -1935;LIMBU SMALL LETTER PA;Mc;0;L;;;;;N;;;;; -1936;LIMBU SMALL LETTER MA;Mc;0;L;;;;;N;;;;; -1937;LIMBU SMALL LETTER RA;Mc;0;L;;;;;N;;;;; -1938;LIMBU SMALL LETTER LA;Mc;0;L;;;;;N;;;;; -1939;LIMBU SIGN MUKPHRENG;Mn;222;NSM;;;;;N;;;;; -193A;LIMBU SIGN KEMPHRENG;Mn;230;NSM;;;;;N;;;;; -193B;LIMBU SIGN SA-I;Mn;220;NSM;;;;;N;;;;; -1940;LIMBU SIGN LOO;So;0;ON;;;;;N;;;;; -1944;LIMBU EXCLAMATION MARK;Po;0;ON;;;;;N;;;;; -1945;LIMBU QUESTION MARK;Po;0;ON;;;;;N;;;;; -1946;LIMBU DIGIT ZERO;Nd;0;L;;0;0;0;N;;;;; -1947;LIMBU DIGIT ONE;Nd;0;L;;1;1;1;N;;;;; -1948;LIMBU DIGIT TWO;Nd;0;L;;2;2;2;N;;;;; -1949;LIMBU DIGIT THREE;Nd;0;L;;3;3;3;N;;;;; -194A;LIMBU DIGIT FOUR;Nd;0;L;;4;4;4;N;;;;; -194B;LIMBU DIGIT FIVE;Nd;0;L;;5;5;5;N;;;;; -194C;LIMBU DIGIT SIX;Nd;0;L;;6;6;6;N;;;;; -194D;LIMBU DIGIT SEVEN;Nd;0;L;;7;7;7;N;;;;; -194E;LIMBU DIGIT EIGHT;Nd;0;L;;8;8;8;N;;;;; -194F;LIMBU DIGIT NINE;Nd;0;L;;9;9;9;N;;;;; -1950;TAI LE LETTER KA;Lo;0;L;;;;;N;;;;; -1951;TAI LE LETTER XA;Lo;0;L;;;;;N;;;;; -1952;TAI LE LETTER NGA;Lo;0;L;;;;;N;;;;; -1953;TAI LE LETTER TSA;Lo;0;L;;;;;N;;;;; -1954;TAI LE LETTER SA;Lo;0;L;;;;;N;;;;; -1955;TAI LE LETTER YA;Lo;0;L;;;;;N;;;;; -1956;TAI LE LETTER TA;Lo;0;L;;;;;N;;;;; -1957;TAI LE LETTER THA;Lo;0;L;;;;;N;;;;; -1958;TAI LE LETTER LA;Lo;0;L;;;;;N;;;;; -1959;TAI LE LETTER PA;Lo;0;L;;;;;N;;;;; -195A;TAI LE LETTER PHA;Lo;0;L;;;;;N;;;;; -195B;TAI LE LETTER MA;Lo;0;L;;;;;N;;;;; -195C;TAI LE LETTER FA;Lo;0;L;;;;;N;;;;; -195D;TAI LE LETTER VA;Lo;0;L;;;;;N;;;;; -195E;TAI LE LETTER HA;Lo;0;L;;;;;N;;;;; -195F;TAI LE LETTER QA;Lo;0;L;;;;;N;;;;; -1960;TAI LE LETTER KHA;Lo;0;L;;;;;N;;;;; -1961;TAI LE LETTER TSHA;Lo;0;L;;;;;N;;;;; -1962;TAI LE LETTER NA;Lo;0;L;;;;;N;;;;; -1963;TAI LE LETTER A;Lo;0;L;;;;;N;;;;; -1964;TAI LE LETTER I;Lo;0;L;;;;;N;;;;; -1965;TAI LE LETTER EE;Lo;0;L;;;;;N;;;;; -1966;TAI LE LETTER EH;Lo;0;L;;;;;N;;;;; -1967;TAI LE LETTER U;Lo;0;L;;;;;N;;;;; -1968;TAI LE LETTER OO;Lo;0;L;;;;;N;;;;; -1969;TAI LE LETTER O;Lo;0;L;;;;;N;;;;; -196A;TAI LE LETTER UE;Lo;0;L;;;;;N;;;;; -196B;TAI LE LETTER E;Lo;0;L;;;;;N;;;;; -196C;TAI LE LETTER AUE;Lo;0;L;;;;;N;;;;; -196D;TAI LE LETTER AI;Lo;0;L;;;;;N;;;;; -1970;TAI LE LETTER TONE-2;Lo;0;L;;;;;N;;;;; -1971;TAI LE LETTER TONE-3;Lo;0;L;;;;;N;;;;; -1972;TAI LE LETTER TONE-4;Lo;0;L;;;;;N;;;;; -1973;TAI LE LETTER TONE-5;Lo;0;L;;;;;N;;;;; -1974;TAI LE LETTER TONE-6;Lo;0;L;;;;;N;;;;; -1980;NEW TAI LUE LETTER HIGH QA;Lo;0;L;;;;;N;;;;; -1981;NEW TAI LUE LETTER LOW QA;Lo;0;L;;;;;N;;;;; -1982;NEW TAI LUE LETTER HIGH KA;Lo;0;L;;;;;N;;;;; -1983;NEW TAI LUE LETTER HIGH XA;Lo;0;L;;;;;N;;;;; -1984;NEW TAI LUE LETTER HIGH NGA;Lo;0;L;;;;;N;;;;; -1985;NEW TAI LUE LETTER LOW KA;Lo;0;L;;;;;N;;;;; -1986;NEW TAI LUE LETTER LOW XA;Lo;0;L;;;;;N;;;;; -1987;NEW TAI LUE LETTER LOW NGA;Lo;0;L;;;;;N;;;;; -1988;NEW TAI LUE LETTER HIGH TSA;Lo;0;L;;;;;N;;;;; -1989;NEW TAI LUE LETTER HIGH SA;Lo;0;L;;;;;N;;;;; -198A;NEW TAI LUE LETTER HIGH YA;Lo;0;L;;;;;N;;;;; -198B;NEW TAI LUE LETTER LOW TSA;Lo;0;L;;;;;N;;;;; -198C;NEW TAI LUE LETTER LOW SA;Lo;0;L;;;;;N;;;;; -198D;NEW TAI LUE LETTER LOW YA;Lo;0;L;;;;;N;;;;; -198E;NEW TAI LUE LETTER HIGH TA;Lo;0;L;;;;;N;;;;; -198F;NEW TAI LUE LETTER HIGH THA;Lo;0;L;;;;;N;;;;; -1990;NEW TAI LUE LETTER HIGH NA;Lo;0;L;;;;;N;;;;; -1991;NEW TAI LUE LETTER LOW TA;Lo;0;L;;;;;N;;;;; -1992;NEW TAI LUE LETTER LOW THA;Lo;0;L;;;;;N;;;;; -1993;NEW TAI LUE LETTER LOW NA;Lo;0;L;;;;;N;;;;; -1994;NEW TAI LUE LETTER HIGH PA;Lo;0;L;;;;;N;;;;; -1995;NEW TAI LUE LETTER HIGH PHA;Lo;0;L;;;;;N;;;;; -1996;NEW TAI LUE LETTER HIGH MA;Lo;0;L;;;;;N;;;;; -1997;NEW TAI LUE LETTER LOW PA;Lo;0;L;;;;;N;;;;; -1998;NEW TAI LUE LETTER LOW PHA;Lo;0;L;;;;;N;;;;; -1999;NEW TAI LUE LETTER LOW MA;Lo;0;L;;;;;N;;;;; -199A;NEW TAI LUE LETTER HIGH FA;Lo;0;L;;;;;N;;;;; -199B;NEW TAI LUE LETTER HIGH VA;Lo;0;L;;;;;N;;;;; -199C;NEW TAI LUE LETTER HIGH LA;Lo;0;L;;;;;N;;;;; -199D;NEW TAI LUE LETTER LOW FA;Lo;0;L;;;;;N;;;;; -199E;NEW TAI LUE LETTER LOW VA;Lo;0;L;;;;;N;;;;; -199F;NEW TAI LUE LETTER LOW LA;Lo;0;L;;;;;N;;;;; -19A0;NEW TAI LUE LETTER HIGH HA;Lo;0;L;;;;;N;;;;; -19A1;NEW TAI LUE LETTER HIGH DA;Lo;0;L;;;;;N;;;;; -19A2;NEW TAI LUE LETTER HIGH BA;Lo;0;L;;;;;N;;;;; -19A3;NEW TAI LUE LETTER LOW HA;Lo;0;L;;;;;N;;;;; -19A4;NEW TAI LUE LETTER LOW DA;Lo;0;L;;;;;N;;;;; -19A5;NEW TAI LUE LETTER LOW BA;Lo;0;L;;;;;N;;;;; -19A6;NEW TAI LUE LETTER HIGH KVA;Lo;0;L;;;;;N;;;;; -19A7;NEW TAI LUE LETTER HIGH XVA;Lo;0;L;;;;;N;;;;; -19A8;NEW TAI LUE LETTER LOW KVA;Lo;0;L;;;;;N;;;;; -19A9;NEW TAI LUE LETTER LOW XVA;Lo;0;L;;;;;N;;;;; -19AA;NEW TAI LUE LETTER HIGH SUA;Lo;0;L;;;;;N;;;;; -19AB;NEW TAI LUE LETTER LOW SUA;Lo;0;L;;;;;N;;;;; -19B0;NEW TAI LUE VOWEL SIGN VOWEL SHORTENER;Mc;0;L;;;;;N;;;;; -19B1;NEW TAI LUE VOWEL SIGN AA;Mc;0;L;;;;;N;;;;; -19B2;NEW TAI LUE VOWEL SIGN II;Mc;0;L;;;;;N;;;;; -19B3;NEW TAI LUE VOWEL SIGN U;Mc;0;L;;;;;N;;;;; -19B4;NEW TAI LUE VOWEL SIGN UU;Mc;0;L;;;;;N;;;;; -19B5;NEW TAI LUE VOWEL SIGN E;Mc;0;L;;;;;N;;;;; -19B6;NEW TAI LUE VOWEL SIGN AE;Mc;0;L;;;;;N;;;;; -19B7;NEW TAI LUE VOWEL SIGN O;Mc;0;L;;;;;N;;;;; -19B8;NEW TAI LUE VOWEL SIGN OA;Mc;0;L;;;;;N;;;;; -19B9;NEW TAI LUE VOWEL SIGN UE;Mc;0;L;;;;;N;;;;; -19BA;NEW TAI LUE VOWEL SIGN AY;Mc;0;L;;;;;N;;;;; -19BB;NEW TAI LUE VOWEL SIGN AAY;Mc;0;L;;;;;N;;;;; -19BC;NEW TAI LUE VOWEL SIGN UY;Mc;0;L;;;;;N;;;;; -19BD;NEW TAI LUE VOWEL SIGN OY;Mc;0;L;;;;;N;;;;; -19BE;NEW TAI LUE VOWEL SIGN OAY;Mc;0;L;;;;;N;;;;; -19BF;NEW TAI LUE VOWEL SIGN UEY;Mc;0;L;;;;;N;;;;; -19C0;NEW TAI LUE VOWEL SIGN IY;Mc;0;L;;;;;N;;;;; -19C1;NEW TAI LUE LETTER FINAL V;Lo;0;L;;;;;N;;;;; -19C2;NEW TAI LUE LETTER FINAL NG;Lo;0;L;;;;;N;;;;; -19C3;NEW TAI LUE LETTER FINAL N;Lo;0;L;;;;;N;;;;; -19C4;NEW TAI LUE LETTER FINAL M;Lo;0;L;;;;;N;;;;; -19C5;NEW TAI LUE LETTER FINAL K;Lo;0;L;;;;;N;;;;; -19C6;NEW TAI LUE LETTER FINAL D;Lo;0;L;;;;;N;;;;; -19C7;NEW TAI LUE LETTER FINAL B;Lo;0;L;;;;;N;;;;; -19C8;NEW TAI LUE TONE MARK-1;Mc;0;L;;;;;N;;;;; -19C9;NEW TAI LUE TONE MARK-2;Mc;0;L;;;;;N;;;;; -19D0;NEW TAI LUE DIGIT ZERO;Nd;0;L;;0;0;0;N;;;;; -19D1;NEW TAI LUE DIGIT ONE;Nd;0;L;;1;1;1;N;;;;; -19D2;NEW TAI LUE DIGIT TWO;Nd;0;L;;2;2;2;N;;;;; -19D3;NEW TAI LUE DIGIT THREE;Nd;0;L;;3;3;3;N;;;;; -19D4;NEW TAI LUE DIGIT FOUR;Nd;0;L;;4;4;4;N;;;;; -19D5;NEW TAI LUE DIGIT FIVE;Nd;0;L;;5;5;5;N;;;;; -19D6;NEW TAI LUE DIGIT SIX;Nd;0;L;;6;6;6;N;;;;; -19D7;NEW TAI LUE DIGIT SEVEN;Nd;0;L;;7;7;7;N;;;;; -19D8;NEW TAI LUE DIGIT EIGHT;Nd;0;L;;8;8;8;N;;;;; -19D9;NEW TAI LUE DIGIT NINE;Nd;0;L;;9;9;9;N;;;;; -19DA;NEW TAI LUE THAM DIGIT ONE;No;0;L;;;1;1;N;;;;; -19DE;NEW TAI LUE SIGN LAE;So;0;ON;;;;;N;;;;; -19DF;NEW TAI LUE SIGN LAEV;So;0;ON;;;;;N;;;;; -19E0;KHMER SYMBOL PATHAMASAT;So;0;ON;;;;;N;;;;; -19E1;KHMER SYMBOL MUOY KOET;So;0;ON;;;;;N;;;;; -19E2;KHMER SYMBOL PII KOET;So;0;ON;;;;;N;;;;; -19E3;KHMER SYMBOL BEI KOET;So;0;ON;;;;;N;;;;; -19E4;KHMER SYMBOL BUON KOET;So;0;ON;;;;;N;;;;; -19E5;KHMER SYMBOL PRAM KOET;So;0;ON;;;;;N;;;;; -19E6;KHMER SYMBOL PRAM-MUOY KOET;So;0;ON;;;;;N;;;;; -19E7;KHMER SYMBOL PRAM-PII KOET;So;0;ON;;;;;N;;;;; -19E8;KHMER SYMBOL PRAM-BEI KOET;So;0;ON;;;;;N;;;;; -19E9;KHMER SYMBOL PRAM-BUON KOET;So;0;ON;;;;;N;;;;; -19EA;KHMER SYMBOL DAP KOET;So;0;ON;;;;;N;;;;; -19EB;KHMER SYMBOL DAP-MUOY KOET;So;0;ON;;;;;N;;;;; -19EC;KHMER SYMBOL DAP-PII KOET;So;0;ON;;;;;N;;;;; -19ED;KHMER SYMBOL DAP-BEI KOET;So;0;ON;;;;;N;;;;; -19EE;KHMER SYMBOL DAP-BUON KOET;So;0;ON;;;;;N;;;;; -19EF;KHMER SYMBOL DAP-PRAM KOET;So;0;ON;;;;;N;;;;; -19F0;KHMER SYMBOL TUTEYASAT;So;0;ON;;;;;N;;;;; -19F1;KHMER SYMBOL MUOY ROC;So;0;ON;;;;;N;;;;; -19F2;KHMER SYMBOL PII ROC;So;0;ON;;;;;N;;;;; -19F3;KHMER SYMBOL BEI ROC;So;0;ON;;;;;N;;;;; -19F4;KHMER SYMBOL BUON ROC;So;0;ON;;;;;N;;;;; -19F5;KHMER SYMBOL PRAM ROC;So;0;ON;;;;;N;;;;; -19F6;KHMER SYMBOL PRAM-MUOY ROC;So;0;ON;;;;;N;;;;; -19F7;KHMER SYMBOL PRAM-PII ROC;So;0;ON;;;;;N;;;;; -19F8;KHMER SYMBOL PRAM-BEI ROC;So;0;ON;;;;;N;;;;; -19F9;KHMER SYMBOL PRAM-BUON ROC;So;0;ON;;;;;N;;;;; -19FA;KHMER SYMBOL DAP ROC;So;0;ON;;;;;N;;;;; -19FB;KHMER SYMBOL DAP-MUOY ROC;So;0;ON;;;;;N;;;;; -19FC;KHMER SYMBOL DAP-PII ROC;So;0;ON;;;;;N;;;;; -19FD;KHMER SYMBOL DAP-BEI ROC;So;0;ON;;;;;N;;;;; -19FE;KHMER SYMBOL DAP-BUON ROC;So;0;ON;;;;;N;;;;; -19FF;KHMER SYMBOL DAP-PRAM ROC;So;0;ON;;;;;N;;;;; -1A00;BUGINESE LETTER KA;Lo;0;L;;;;;N;;;;; -1A01;BUGINESE LETTER GA;Lo;0;L;;;;;N;;;;; -1A02;BUGINESE LETTER NGA;Lo;0;L;;;;;N;;;;; -1A03;BUGINESE LETTER NGKA;Lo;0;L;;;;;N;;;;; -1A04;BUGINESE LETTER PA;Lo;0;L;;;;;N;;;;; -1A05;BUGINESE LETTER BA;Lo;0;L;;;;;N;;;;; -1A06;BUGINESE LETTER MA;Lo;0;L;;;;;N;;;;; -1A07;BUGINESE LETTER MPA;Lo;0;L;;;;;N;;;;; -1A08;BUGINESE LETTER TA;Lo;0;L;;;;;N;;;;; -1A09;BUGINESE LETTER DA;Lo;0;L;;;;;N;;;;; -1A0A;BUGINESE LETTER NA;Lo;0;L;;;;;N;;;;; -1A0B;BUGINESE LETTER NRA;Lo;0;L;;;;;N;;;;; -1A0C;BUGINESE LETTER CA;Lo;0;L;;;;;N;;;;; -1A0D;BUGINESE LETTER JA;Lo;0;L;;;;;N;;;;; -1A0E;BUGINESE LETTER NYA;Lo;0;L;;;;;N;;;;; -1A0F;BUGINESE LETTER NYCA;Lo;0;L;;;;;N;;;;; -1A10;BUGINESE LETTER YA;Lo;0;L;;;;;N;;;;; -1A11;BUGINESE LETTER RA;Lo;0;L;;;;;N;;;;; -1A12;BUGINESE LETTER LA;Lo;0;L;;;;;N;;;;; -1A13;BUGINESE LETTER VA;Lo;0;L;;;;;N;;;;; -1A14;BUGINESE LETTER SA;Lo;0;L;;;;;N;;;;; -1A15;BUGINESE LETTER A;Lo;0;L;;;;;N;;;;; -1A16;BUGINESE LETTER HA;Lo;0;L;;;;;N;;;;; -1A17;BUGINESE VOWEL SIGN I;Mn;230;NSM;;;;;N;;;;; -1A18;BUGINESE VOWEL SIGN U;Mn;220;NSM;;;;;N;;;;; -1A19;BUGINESE VOWEL SIGN E;Mc;0;L;;;;;N;;;;; -1A1A;BUGINESE VOWEL SIGN O;Mc;0;L;;;;;N;;;;; -1A1B;BUGINESE VOWEL SIGN AE;Mc;0;L;;;;;N;;;;; -1A1E;BUGINESE PALLAWA;Po;0;L;;;;;N;;;;; -1A1F;BUGINESE END OF SECTION;Po;0;L;;;;;N;;;;; -1A20;TAI THAM LETTER HIGH KA;Lo;0;L;;;;;N;;;;; -1A21;TAI THAM LETTER HIGH KHA;Lo;0;L;;;;;N;;;;; -1A22;TAI THAM LETTER HIGH KXA;Lo;0;L;;;;;N;;;;; -1A23;TAI THAM LETTER LOW KA;Lo;0;L;;;;;N;;;;; -1A24;TAI THAM LETTER LOW KXA;Lo;0;L;;;;;N;;;;; -1A25;TAI THAM LETTER LOW KHA;Lo;0;L;;;;;N;;;;; -1A26;TAI THAM LETTER NGA;Lo;0;L;;;;;N;;;;; -1A27;TAI THAM LETTER HIGH CA;Lo;0;L;;;;;N;;;;; -1A28;TAI THAM LETTER HIGH CHA;Lo;0;L;;;;;N;;;;; -1A29;TAI THAM LETTER LOW CA;Lo;0;L;;;;;N;;;;; -1A2A;TAI THAM LETTER LOW SA;Lo;0;L;;;;;N;;;;; -1A2B;TAI THAM LETTER LOW CHA;Lo;0;L;;;;;N;;;;; -1A2C;TAI THAM LETTER NYA;Lo;0;L;;;;;N;;;;; -1A2D;TAI THAM LETTER RATA;Lo;0;L;;;;;N;;;;; -1A2E;TAI THAM LETTER HIGH RATHA;Lo;0;L;;;;;N;;;;; -1A2F;TAI THAM LETTER DA;Lo;0;L;;;;;N;;;;; -1A30;TAI THAM LETTER LOW RATHA;Lo;0;L;;;;;N;;;;; -1A31;TAI THAM LETTER RANA;Lo;0;L;;;;;N;;;;; -1A32;TAI THAM LETTER HIGH TA;Lo;0;L;;;;;N;;;;; -1A33;TAI THAM LETTER HIGH THA;Lo;0;L;;;;;N;;;;; -1A34;TAI THAM LETTER LOW TA;Lo;0;L;;;;;N;;;;; -1A35;TAI THAM LETTER LOW THA;Lo;0;L;;;;;N;;;;; -1A36;TAI THAM LETTER NA;Lo;0;L;;;;;N;;;;; -1A37;TAI THAM LETTER BA;Lo;0;L;;;;;N;;;;; -1A38;TAI THAM LETTER HIGH PA;Lo;0;L;;;;;N;;;;; -1A39;TAI THAM LETTER HIGH PHA;Lo;0;L;;;;;N;;;;; -1A3A;TAI THAM LETTER HIGH FA;Lo;0;L;;;;;N;;;;; -1A3B;TAI THAM LETTER LOW PA;Lo;0;L;;;;;N;;;;; -1A3C;TAI THAM LETTER LOW FA;Lo;0;L;;;;;N;;;;; -1A3D;TAI THAM LETTER LOW PHA;Lo;0;L;;;;;N;;;;; -1A3E;TAI THAM LETTER MA;Lo;0;L;;;;;N;;;;; -1A3F;TAI THAM LETTER LOW YA;Lo;0;L;;;;;N;;;;; -1A40;TAI THAM LETTER HIGH YA;Lo;0;L;;;;;N;;;;; -1A41;TAI THAM LETTER RA;Lo;0;L;;;;;N;;;;; -1A42;TAI THAM LETTER RUE;Lo;0;L;;;;;N;;;;; -1A43;TAI THAM LETTER LA;Lo;0;L;;;;;N;;;;; -1A44;TAI THAM LETTER LUE;Lo;0;L;;;;;N;;;;; -1A45;TAI THAM LETTER WA;Lo;0;L;;;;;N;;;;; -1A46;TAI THAM LETTER HIGH SHA;Lo;0;L;;;;;N;;;;; -1A47;TAI THAM LETTER HIGH SSA;Lo;0;L;;;;;N;;;;; -1A48;TAI THAM LETTER HIGH SA;Lo;0;L;;;;;N;;;;; -1A49;TAI THAM LETTER HIGH HA;Lo;0;L;;;;;N;;;;; -1A4A;TAI THAM LETTER LLA;Lo;0;L;;;;;N;;;;; -1A4B;TAI THAM LETTER A;Lo;0;L;;;;;N;;;;; -1A4C;TAI THAM LETTER LOW HA;Lo;0;L;;;;;N;;;;; -1A4D;TAI THAM LETTER I;Lo;0;L;;;;;N;;;;; -1A4E;TAI THAM LETTER II;Lo;0;L;;;;;N;;;;; -1A4F;TAI THAM LETTER U;Lo;0;L;;;;;N;;;;; -1A50;TAI THAM LETTER UU;Lo;0;L;;;;;N;;;;; -1A51;TAI THAM LETTER EE;Lo;0;L;;;;;N;;;;; -1A52;TAI THAM LETTER OO;Lo;0;L;;;;;N;;;;; -1A53;TAI THAM LETTER LAE;Lo;0;L;;;;;N;;;;; -1A54;TAI THAM LETTER GREAT SA;Lo;0;L;;;;;N;;;;; -1A55;TAI THAM CONSONANT SIGN MEDIAL RA;Mc;0;L;;;;;N;;;;; -1A56;TAI THAM CONSONANT SIGN MEDIAL LA;Mn;0;NSM;;;;;N;;;;; -1A57;TAI THAM CONSONANT SIGN LA TANG LAI;Mc;0;L;;;;;N;;;;; -1A58;TAI THAM SIGN MAI KANG LAI;Mn;0;NSM;;;;;N;;;;; -1A59;TAI THAM CONSONANT SIGN FINAL NGA;Mn;0;NSM;;;;;N;;;;; -1A5A;TAI THAM CONSONANT SIGN LOW PA;Mn;0;NSM;;;;;N;;;;; -1A5B;TAI THAM CONSONANT SIGN HIGH RATHA OR LOW PA;Mn;0;NSM;;;;;N;;;;; -1A5C;TAI THAM CONSONANT SIGN MA;Mn;0;NSM;;;;;N;;;;; -1A5D;TAI THAM CONSONANT SIGN BA;Mn;0;NSM;;;;;N;;;;; -1A5E;TAI THAM CONSONANT SIGN SA;Mn;0;NSM;;;;;N;;;;; -1A60;TAI THAM SIGN SAKOT;Mn;9;NSM;;;;;N;;;;; -1A61;TAI THAM VOWEL SIGN A;Mc;0;L;;;;;N;;;;; -1A62;TAI THAM VOWEL SIGN MAI SAT;Mn;0;NSM;;;;;N;;;;; -1A63;TAI THAM VOWEL SIGN AA;Mc;0;L;;;;;N;;;;; -1A64;TAI THAM VOWEL SIGN TALL AA;Mc;0;L;;;;;N;;;;; -1A65;TAI THAM VOWEL SIGN I;Mn;0;NSM;;;;;N;;;;; -1A66;TAI THAM VOWEL SIGN II;Mn;0;NSM;;;;;N;;;;; -1A67;TAI THAM VOWEL SIGN UE;Mn;0;NSM;;;;;N;;;;; -1A68;TAI THAM VOWEL SIGN UUE;Mn;0;NSM;;;;;N;;;;; -1A69;TAI THAM VOWEL SIGN U;Mn;0;NSM;;;;;N;;;;; -1A6A;TAI THAM VOWEL SIGN UU;Mn;0;NSM;;;;;N;;;;; -1A6B;TAI THAM VOWEL SIGN O;Mn;0;NSM;;;;;N;;;;; -1A6C;TAI THAM VOWEL SIGN OA BELOW;Mn;0;NSM;;;;;N;;;;; -1A6D;TAI THAM VOWEL SIGN OY;Mc;0;L;;;;;N;;;;; -1A6E;TAI THAM VOWEL SIGN E;Mc;0;L;;;;;N;;;;; -1A6F;TAI THAM VOWEL SIGN AE;Mc;0;L;;;;;N;;;;; -1A70;TAI THAM VOWEL SIGN OO;Mc;0;L;;;;;N;;;;; -1A71;TAI THAM VOWEL SIGN AI;Mc;0;L;;;;;N;;;;; -1A72;TAI THAM VOWEL SIGN THAM AI;Mc;0;L;;;;;N;;;;; -1A73;TAI THAM VOWEL SIGN OA ABOVE;Mn;0;NSM;;;;;N;;;;; -1A74;TAI THAM SIGN MAI KANG;Mn;0;NSM;;;;;N;;;;; -1A75;TAI THAM SIGN TONE-1;Mn;230;NSM;;;;;N;;;;; -1A76;TAI THAM SIGN TONE-2;Mn;230;NSM;;;;;N;;;;; -1A77;TAI THAM SIGN KHUEN TONE-3;Mn;230;NSM;;;;;N;;;;; -1A78;TAI THAM SIGN KHUEN TONE-4;Mn;230;NSM;;;;;N;;;;; -1A79;TAI THAM SIGN KHUEN TONE-5;Mn;230;NSM;;;;;N;;;;; -1A7A;TAI THAM SIGN RA HAAM;Mn;230;NSM;;;;;N;;;;; -1A7B;TAI THAM SIGN MAI SAM;Mn;230;NSM;;;;;N;;;;; -1A7C;TAI THAM SIGN KHUEN-LUE KARAN;Mn;230;NSM;;;;;N;;;;; -1A7F;TAI THAM COMBINING CRYPTOGRAMMIC DOT;Mn;220;NSM;;;;;N;;;;; -1A80;TAI THAM HORA DIGIT ZERO;Nd;0;L;;0;0;0;N;;;;; -1A81;TAI THAM HORA DIGIT ONE;Nd;0;L;;1;1;1;N;;;;; -1A82;TAI THAM HORA DIGIT TWO;Nd;0;L;;2;2;2;N;;;;; -1A83;TAI THAM HORA DIGIT THREE;Nd;0;L;;3;3;3;N;;;;; -1A84;TAI THAM HORA DIGIT FOUR;Nd;0;L;;4;4;4;N;;;;; -1A85;TAI THAM HORA DIGIT FIVE;Nd;0;L;;5;5;5;N;;;;; -1A86;TAI THAM HORA DIGIT SIX;Nd;0;L;;6;6;6;N;;;;; -1A87;TAI THAM HORA DIGIT SEVEN;Nd;0;L;;7;7;7;N;;;;; -1A88;TAI THAM HORA DIGIT EIGHT;Nd;0;L;;8;8;8;N;;;;; -1A89;TAI THAM HORA DIGIT NINE;Nd;0;L;;9;9;9;N;;;;; -1A90;TAI THAM THAM DIGIT ZERO;Nd;0;L;;0;0;0;N;;;;; -1A91;TAI THAM THAM DIGIT ONE;Nd;0;L;;1;1;1;N;;;;; -1A92;TAI THAM THAM DIGIT TWO;Nd;0;L;;2;2;2;N;;;;; -1A93;TAI THAM THAM DIGIT THREE;Nd;0;L;;3;3;3;N;;;;; -1A94;TAI THAM THAM DIGIT FOUR;Nd;0;L;;4;4;4;N;;;;; -1A95;TAI THAM THAM DIGIT FIVE;Nd;0;L;;5;5;5;N;;;;; -1A96;TAI THAM THAM DIGIT SIX;Nd;0;L;;6;6;6;N;;;;; -1A97;TAI THAM THAM DIGIT SEVEN;Nd;0;L;;7;7;7;N;;;;; -1A98;TAI THAM THAM DIGIT EIGHT;Nd;0;L;;8;8;8;N;;;;; -1A99;TAI THAM THAM DIGIT NINE;Nd;0;L;;9;9;9;N;;;;; -1AA0;TAI THAM SIGN WIANG;Po;0;L;;;;;N;;;;; -1AA1;TAI THAM SIGN WIANGWAAK;Po;0;L;;;;;N;;;;; -1AA2;TAI THAM SIGN SAWAN;Po;0;L;;;;;N;;;;; -1AA3;TAI THAM SIGN KEOW;Po;0;L;;;;;N;;;;; -1AA4;TAI THAM SIGN HOY;Po;0;L;;;;;N;;;;; -1AA5;TAI THAM SIGN DOKMAI;Po;0;L;;;;;N;;;;; -1AA6;TAI THAM SIGN REVERSED ROTATED RANA;Po;0;L;;;;;N;;;;; -1AA7;TAI THAM SIGN MAI YAMOK;Lm;0;L;;;;;N;;;;; -1AA8;TAI THAM SIGN KAAN;Po;0;L;;;;;N;;;;; -1AA9;TAI THAM SIGN KAANKUU;Po;0;L;;;;;N;;;;; -1AAA;TAI THAM SIGN SATKAAN;Po;0;L;;;;;N;;;;; -1AAB;TAI THAM SIGN SATKAANKUU;Po;0;L;;;;;N;;;;; -1AAC;TAI THAM SIGN HANG;Po;0;L;;;;;N;;;;; -1AAD;TAI THAM SIGN CAANG;Po;0;L;;;;;N;;;;; -1B00;BALINESE SIGN ULU RICEM;Mn;0;NSM;;;;;N;;;;; -1B01;BALINESE SIGN ULU CANDRA;Mn;0;NSM;;;;;N;;;;; -1B02;BALINESE SIGN CECEK;Mn;0;NSM;;;;;N;;;;; -1B03;BALINESE SIGN SURANG;Mn;0;NSM;;;;;N;;;;; -1B04;BALINESE SIGN BISAH;Mc;0;L;;;;;N;;;;; -1B05;BALINESE LETTER AKARA;Lo;0;L;;;;;N;;;;; -1B06;BALINESE LETTER AKARA TEDUNG;Lo;0;L;1B05 1B35;;;;N;;;;; -1B07;BALINESE LETTER IKARA;Lo;0;L;;;;;N;;;;; -1B08;BALINESE LETTER IKARA TEDUNG;Lo;0;L;1B07 1B35;;;;N;;;;; -1B09;BALINESE LETTER UKARA;Lo;0;L;;;;;N;;;;; -1B0A;BALINESE LETTER UKARA TEDUNG;Lo;0;L;1B09 1B35;;;;N;;;;; -1B0B;BALINESE LETTER RA REPA;Lo;0;L;;;;;N;;;;; -1B0C;BALINESE LETTER RA REPA TEDUNG;Lo;0;L;1B0B 1B35;;;;N;;;;; -1B0D;BALINESE LETTER LA LENGA;Lo;0;L;;;;;N;;;;; -1B0E;BALINESE LETTER LA LENGA TEDUNG;Lo;0;L;1B0D 1B35;;;;N;;;;; -1B0F;BALINESE LETTER EKARA;Lo;0;L;;;;;N;;;;; -1B10;BALINESE LETTER AIKARA;Lo;0;L;;;;;N;;;;; -1B11;BALINESE LETTER OKARA;Lo;0;L;;;;;N;;;;; -1B12;BALINESE LETTER OKARA TEDUNG;Lo;0;L;1B11 1B35;;;;N;;;;; -1B13;BALINESE LETTER KA;Lo;0;L;;;;;N;;;;; -1B14;BALINESE LETTER KA MAHAPRANA;Lo;0;L;;;;;N;;;;; -1B15;BALINESE LETTER GA;Lo;0;L;;;;;N;;;;; -1B16;BALINESE LETTER GA GORA;Lo;0;L;;;;;N;;;;; -1B17;BALINESE LETTER NGA;Lo;0;L;;;;;N;;;;; -1B18;BALINESE LETTER CA;Lo;0;L;;;;;N;;;;; -1B19;BALINESE LETTER CA LACA;Lo;0;L;;;;;N;;;;; -1B1A;BALINESE LETTER JA;Lo;0;L;;;;;N;;;;; -1B1B;BALINESE LETTER JA JERA;Lo;0;L;;;;;N;;;;; -1B1C;BALINESE LETTER NYA;Lo;0;L;;;;;N;;;;; -1B1D;BALINESE LETTER TA LATIK;Lo;0;L;;;;;N;;;;; -1B1E;BALINESE LETTER TA MURDA MAHAPRANA;Lo;0;L;;;;;N;;;;; -1B1F;BALINESE LETTER DA MURDA ALPAPRANA;Lo;0;L;;;;;N;;;;; -1B20;BALINESE LETTER DA MURDA MAHAPRANA;Lo;0;L;;;;;N;;;;; -1B21;BALINESE LETTER NA RAMBAT;Lo;0;L;;;;;N;;;;; -1B22;BALINESE LETTER TA;Lo;0;L;;;;;N;;;;; -1B23;BALINESE LETTER TA TAWA;Lo;0;L;;;;;N;;;;; -1B24;BALINESE LETTER DA;Lo;0;L;;;;;N;;;;; -1B25;BALINESE LETTER DA MADU;Lo;0;L;;;;;N;;;;; -1B26;BALINESE LETTER NA;Lo;0;L;;;;;N;;;;; -1B27;BALINESE LETTER PA;Lo;0;L;;;;;N;;;;; -1B28;BALINESE LETTER PA KAPAL;Lo;0;L;;;;;N;;;;; -1B29;BALINESE LETTER BA;Lo;0;L;;;;;N;;;;; -1B2A;BALINESE LETTER BA KEMBANG;Lo;0;L;;;;;N;;;;; -1B2B;BALINESE LETTER MA;Lo;0;L;;;;;N;;;;; -1B2C;BALINESE LETTER YA;Lo;0;L;;;;;N;;;;; -1B2D;BALINESE LETTER RA;Lo;0;L;;;;;N;;;;; -1B2E;BALINESE LETTER LA;Lo;0;L;;;;;N;;;;; -1B2F;BALINESE LETTER WA;Lo;0;L;;;;;N;;;;; -1B30;BALINESE LETTER SA SAGA;Lo;0;L;;;;;N;;;;; -1B31;BALINESE LETTER SA SAPA;Lo;0;L;;;;;N;;;;; -1B32;BALINESE LETTER SA;Lo;0;L;;;;;N;;;;; -1B33;BALINESE LETTER HA;Lo;0;L;;;;;N;;;;; -1B34;BALINESE SIGN REREKAN;Mn;7;NSM;;;;;N;;;;; -1B35;BALINESE VOWEL SIGN TEDUNG;Mc;0;L;;;;;N;;;;; -1B36;BALINESE VOWEL SIGN ULU;Mn;0;NSM;;;;;N;;;;; -1B37;BALINESE VOWEL SIGN ULU SARI;Mn;0;NSM;;;;;N;;;;; -1B38;BALINESE VOWEL SIGN SUKU;Mn;0;NSM;;;;;N;;;;; -1B39;BALINESE VOWEL SIGN SUKU ILUT;Mn;0;NSM;;;;;N;;;;; -1B3A;BALINESE VOWEL SIGN RA REPA;Mn;0;NSM;;;;;N;;;;; -1B3B;BALINESE VOWEL SIGN RA REPA TEDUNG;Mc;0;L;1B3A 1B35;;;;N;;;;; -1B3C;BALINESE VOWEL SIGN LA LENGA;Mn;0;NSM;;;;;N;;;;; -1B3D;BALINESE VOWEL SIGN LA LENGA TEDUNG;Mc;0;L;1B3C 1B35;;;;N;;;;; -1B3E;BALINESE VOWEL SIGN TALING;Mc;0;L;;;;;N;;;;; -1B3F;BALINESE VOWEL SIGN TALING REPA;Mc;0;L;;;;;N;;;;; -1B40;BALINESE VOWEL SIGN TALING TEDUNG;Mc;0;L;1B3E 1B35;;;;N;;;;; -1B41;BALINESE VOWEL SIGN TALING REPA TEDUNG;Mc;0;L;1B3F 1B35;;;;N;;;;; -1B42;BALINESE VOWEL SIGN PEPET;Mn;0;NSM;;;;;N;;;;; -1B43;BALINESE VOWEL SIGN PEPET TEDUNG;Mc;0;L;1B42 1B35;;;;N;;;;; -1B44;BALINESE ADEG ADEG;Mc;9;L;;;;;N;;;;; -1B45;BALINESE LETTER KAF SASAK;Lo;0;L;;;;;N;;;;; -1B46;BALINESE LETTER KHOT SASAK;Lo;0;L;;;;;N;;;;; -1B47;BALINESE LETTER TZIR SASAK;Lo;0;L;;;;;N;;;;; -1B48;BALINESE LETTER EF SASAK;Lo;0;L;;;;;N;;;;; -1B49;BALINESE LETTER VE SASAK;Lo;0;L;;;;;N;;;;; -1B4A;BALINESE LETTER ZAL SASAK;Lo;0;L;;;;;N;;;;; -1B4B;BALINESE LETTER ASYURA SASAK;Lo;0;L;;;;;N;;;;; -1B50;BALINESE DIGIT ZERO;Nd;0;L;;0;0;0;N;;;;; -1B51;BALINESE DIGIT ONE;Nd;0;L;;1;1;1;N;;;;; -1B52;BALINESE DIGIT TWO;Nd;0;L;;2;2;2;N;;;;; -1B53;BALINESE DIGIT THREE;Nd;0;L;;3;3;3;N;;;;; -1B54;BALINESE DIGIT FOUR;Nd;0;L;;4;4;4;N;;;;; -1B55;BALINESE DIGIT FIVE;Nd;0;L;;5;5;5;N;;;;; -1B56;BALINESE DIGIT SIX;Nd;0;L;;6;6;6;N;;;;; -1B57;BALINESE DIGIT SEVEN;Nd;0;L;;7;7;7;N;;;;; -1B58;BALINESE DIGIT EIGHT;Nd;0;L;;8;8;8;N;;;;; -1B59;BALINESE DIGIT NINE;Nd;0;L;;9;9;9;N;;;;; -1B5A;BALINESE PANTI;Po;0;L;;;;;N;;;;; -1B5B;BALINESE PAMADA;Po;0;L;;;;;N;;;;; -1B5C;BALINESE WINDU;Po;0;L;;;;;N;;;;; -1B5D;BALINESE CARIK PAMUNGKAH;Po;0;L;;;;;N;;;;; -1B5E;BALINESE CARIK SIKI;Po;0;L;;;;;N;;;;; -1B5F;BALINESE CARIK PAREREN;Po;0;L;;;;;N;;;;; -1B60;BALINESE PAMENENG;Po;0;L;;;;;N;;;;; -1B61;BALINESE MUSICAL SYMBOL DONG;So;0;L;;;;;N;;;;; -1B62;BALINESE MUSICAL SYMBOL DENG;So;0;L;;;;;N;;;;; -1B63;BALINESE MUSICAL SYMBOL DUNG;So;0;L;;;;;N;;;;; -1B64;BALINESE MUSICAL SYMBOL DANG;So;0;L;;;;;N;;;;; -1B65;BALINESE MUSICAL SYMBOL DANG SURANG;So;0;L;;;;;N;;;;; -1B66;BALINESE MUSICAL SYMBOL DING;So;0;L;;;;;N;;;;; -1B67;BALINESE MUSICAL SYMBOL DAENG;So;0;L;;;;;N;;;;; -1B68;BALINESE MUSICAL SYMBOL DEUNG;So;0;L;;;;;N;;;;; -1B69;BALINESE MUSICAL SYMBOL DAING;So;0;L;;;;;N;;;;; -1B6A;BALINESE MUSICAL SYMBOL DANG GEDE;So;0;L;;;;;N;;;;; -1B6B;BALINESE MUSICAL SYMBOL COMBINING TEGEH;Mn;230;NSM;;;;;N;;;;; -1B6C;BALINESE MUSICAL SYMBOL COMBINING ENDEP;Mn;220;NSM;;;;;N;;;;; -1B6D;BALINESE MUSICAL SYMBOL COMBINING KEMPUL;Mn;230;NSM;;;;;N;;;;; -1B6E;BALINESE MUSICAL SYMBOL COMBINING KEMPLI;Mn;230;NSM;;;;;N;;;;; -1B6F;BALINESE MUSICAL SYMBOL COMBINING JEGOGAN;Mn;230;NSM;;;;;N;;;;; -1B70;BALINESE MUSICAL SYMBOL COMBINING KEMPUL WITH JEGOGAN;Mn;230;NSM;;;;;N;;;;; -1B71;BALINESE MUSICAL SYMBOL COMBINING KEMPLI WITH JEGOGAN;Mn;230;NSM;;;;;N;;;;; -1B72;BALINESE MUSICAL SYMBOL COMBINING BENDE;Mn;230;NSM;;;;;N;;;;; -1B73;BALINESE MUSICAL SYMBOL COMBINING GONG;Mn;230;NSM;;;;;N;;;;; -1B74;BALINESE MUSICAL SYMBOL RIGHT-HAND OPEN DUG;So;0;L;;;;;N;;;;; -1B75;BALINESE MUSICAL SYMBOL RIGHT-HAND OPEN DAG;So;0;L;;;;;N;;;;; -1B76;BALINESE MUSICAL SYMBOL RIGHT-HAND CLOSED TUK;So;0;L;;;;;N;;;;; -1B77;BALINESE MUSICAL SYMBOL RIGHT-HAND CLOSED TAK;So;0;L;;;;;N;;;;; -1B78;BALINESE MUSICAL SYMBOL LEFT-HAND OPEN PANG;So;0;L;;;;;N;;;;; -1B79;BALINESE MUSICAL SYMBOL LEFT-HAND OPEN PUNG;So;0;L;;;;;N;;;;; -1B7A;BALINESE MUSICAL SYMBOL LEFT-HAND CLOSED PLAK;So;0;L;;;;;N;;;;; -1B7B;BALINESE MUSICAL SYMBOL LEFT-HAND CLOSED PLUK;So;0;L;;;;;N;;;;; -1B7C;BALINESE MUSICAL SYMBOL LEFT-HAND OPEN PING;So;0;L;;;;;N;;;;; -1B80;SUNDANESE SIGN PANYECEK;Mn;0;NSM;;;;;N;;;;; -1B81;SUNDANESE SIGN PANGLAYAR;Mn;0;NSM;;;;;N;;;;; -1B82;SUNDANESE SIGN PANGWISAD;Mc;0;L;;;;;N;;;;; -1B83;SUNDANESE LETTER A;Lo;0;L;;;;;N;;;;; -1B84;SUNDANESE LETTER I;Lo;0;L;;;;;N;;;;; -1B85;SUNDANESE LETTER U;Lo;0;L;;;;;N;;;;; -1B86;SUNDANESE LETTER AE;Lo;0;L;;;;;N;;;;; -1B87;SUNDANESE LETTER O;Lo;0;L;;;;;N;;;;; -1B88;SUNDANESE LETTER E;Lo;0;L;;;;;N;;;;; -1B89;SUNDANESE LETTER EU;Lo;0;L;;;;;N;;;;; -1B8A;SUNDANESE LETTER KA;Lo;0;L;;;;;N;;;;; -1B8B;SUNDANESE LETTER QA;Lo;0;L;;;;;N;;;;; -1B8C;SUNDANESE LETTER GA;Lo;0;L;;;;;N;;;;; -1B8D;SUNDANESE LETTER NGA;Lo;0;L;;;;;N;;;;; -1B8E;SUNDANESE LETTER CA;Lo;0;L;;;;;N;;;;; -1B8F;SUNDANESE LETTER JA;Lo;0;L;;;;;N;;;;; -1B90;SUNDANESE LETTER ZA;Lo;0;L;;;;;N;;;;; -1B91;SUNDANESE LETTER NYA;Lo;0;L;;;;;N;;;;; -1B92;SUNDANESE LETTER TA;Lo;0;L;;;;;N;;;;; -1B93;SUNDANESE LETTER DA;Lo;0;L;;;;;N;;;;; -1B94;SUNDANESE LETTER NA;Lo;0;L;;;;;N;;;;; -1B95;SUNDANESE LETTER PA;Lo;0;L;;;;;N;;;;; -1B96;SUNDANESE LETTER FA;Lo;0;L;;;;;N;;;;; -1B97;SUNDANESE LETTER VA;Lo;0;L;;;;;N;;;;; -1B98;SUNDANESE LETTER BA;Lo;0;L;;;;;N;;;;; -1B99;SUNDANESE LETTER MA;Lo;0;L;;;;;N;;;;; -1B9A;SUNDANESE LETTER YA;Lo;0;L;;;;;N;;;;; -1B9B;SUNDANESE LETTER RA;Lo;0;L;;;;;N;;;;; -1B9C;SUNDANESE LETTER LA;Lo;0;L;;;;;N;;;;; -1B9D;SUNDANESE LETTER WA;Lo;0;L;;;;;N;;;;; -1B9E;SUNDANESE LETTER SA;Lo;0;L;;;;;N;;;;; -1B9F;SUNDANESE LETTER XA;Lo;0;L;;;;;N;;;;; -1BA0;SUNDANESE LETTER HA;Lo;0;L;;;;;N;;;;; -1BA1;SUNDANESE CONSONANT SIGN PAMINGKAL;Mc;0;L;;;;;N;;;;; -1BA2;SUNDANESE CONSONANT SIGN PANYAKRA;Mn;0;NSM;;;;;N;;;;; -1BA3;SUNDANESE CONSONANT SIGN PANYIKU;Mn;0;NSM;;;;;N;;;;; -1BA4;SUNDANESE VOWEL SIGN PANGHULU;Mn;0;NSM;;;;;N;;;;; -1BA5;SUNDANESE VOWEL SIGN PANYUKU;Mn;0;NSM;;;;;N;;;;; -1BA6;SUNDANESE VOWEL SIGN PANAELAENG;Mc;0;L;;;;;N;;;;; -1BA7;SUNDANESE VOWEL SIGN PANOLONG;Mc;0;L;;;;;N;;;;; -1BA8;SUNDANESE VOWEL SIGN PAMEPET;Mn;0;NSM;;;;;N;;;;; -1BA9;SUNDANESE VOWEL SIGN PANEULEUNG;Mn;0;NSM;;;;;N;;;;; -1BAA;SUNDANESE SIGN PAMAAEH;Mc;9;L;;;;;N;;;;; -1BAE;SUNDANESE LETTER KHA;Lo;0;L;;;;;N;;;;; -1BAF;SUNDANESE LETTER SYA;Lo;0;L;;;;;N;;;;; -1BB0;SUNDANESE DIGIT ZERO;Nd;0;L;;0;0;0;N;;;;; -1BB1;SUNDANESE DIGIT ONE;Nd;0;L;;1;1;1;N;;;;; -1BB2;SUNDANESE DIGIT TWO;Nd;0;L;;2;2;2;N;;;;; -1BB3;SUNDANESE DIGIT THREE;Nd;0;L;;3;3;3;N;;;;; -1BB4;SUNDANESE DIGIT FOUR;Nd;0;L;;4;4;4;N;;;;; -1BB5;SUNDANESE DIGIT FIVE;Nd;0;L;;5;5;5;N;;;;; -1BB6;SUNDANESE DIGIT SIX;Nd;0;L;;6;6;6;N;;;;; -1BB7;SUNDANESE DIGIT SEVEN;Nd;0;L;;7;7;7;N;;;;; -1BB8;SUNDANESE DIGIT EIGHT;Nd;0;L;;8;8;8;N;;;;; -1BB9;SUNDANESE DIGIT NINE;Nd;0;L;;9;9;9;N;;;;; -1BC0;BATAK LETTER A;Lo;0;L;;;;;N;;;;; -1BC1;BATAK LETTER SIMALUNGUN A;Lo;0;L;;;;;N;;;;; -1BC2;BATAK LETTER HA;Lo;0;L;;;;;N;;;;; -1BC3;BATAK LETTER SIMALUNGUN HA;Lo;0;L;;;;;N;;;;; -1BC4;BATAK LETTER MANDAILING HA;Lo;0;L;;;;;N;;;;; -1BC5;BATAK LETTER BA;Lo;0;L;;;;;N;;;;; -1BC6;BATAK LETTER KARO BA;Lo;0;L;;;;;N;;;;; -1BC7;BATAK LETTER PA;Lo;0;L;;;;;N;;;;; -1BC8;BATAK LETTER SIMALUNGUN PA;Lo;0;L;;;;;N;;;;; -1BC9;BATAK LETTER NA;Lo;0;L;;;;;N;;;;; -1BCA;BATAK LETTER MANDAILING NA;Lo;0;L;;;;;N;;;;; -1BCB;BATAK LETTER WA;Lo;0;L;;;;;N;;;;; -1BCC;BATAK LETTER SIMALUNGUN WA;Lo;0;L;;;;;N;;;;; -1BCD;BATAK LETTER PAKPAK WA;Lo;0;L;;;;;N;;;;; -1BCE;BATAK LETTER GA;Lo;0;L;;;;;N;;;;; -1BCF;BATAK LETTER SIMALUNGUN GA;Lo;0;L;;;;;N;;;;; -1BD0;BATAK LETTER JA;Lo;0;L;;;;;N;;;;; -1BD1;BATAK LETTER DA;Lo;0;L;;;;;N;;;;; -1BD2;BATAK LETTER RA;Lo;0;L;;;;;N;;;;; -1BD3;BATAK LETTER SIMALUNGUN RA;Lo;0;L;;;;;N;;;;; -1BD4;BATAK LETTER MA;Lo;0;L;;;;;N;;;;; -1BD5;BATAK LETTER SIMALUNGUN MA;Lo;0;L;;;;;N;;;;; -1BD6;BATAK LETTER SOUTHERN TA;Lo;0;L;;;;;N;;;;; -1BD7;BATAK LETTER NORTHERN TA;Lo;0;L;;;;;N;;;;; -1BD8;BATAK LETTER SA;Lo;0;L;;;;;N;;;;; -1BD9;BATAK LETTER SIMALUNGUN SA;Lo;0;L;;;;;N;;;;; -1BDA;BATAK LETTER MANDAILING SA;Lo;0;L;;;;;N;;;;; -1BDB;BATAK LETTER YA;Lo;0;L;;;;;N;;;;; -1BDC;BATAK LETTER SIMALUNGUN YA;Lo;0;L;;;;;N;;;;; -1BDD;BATAK LETTER NGA;Lo;0;L;;;;;N;;;;; -1BDE;BATAK LETTER LA;Lo;0;L;;;;;N;;;;; -1BDF;BATAK LETTER SIMALUNGUN LA;Lo;0;L;;;;;N;;;;; -1BE0;BATAK LETTER NYA;Lo;0;L;;;;;N;;;;; -1BE1;BATAK LETTER CA;Lo;0;L;;;;;N;;;;; -1BE2;BATAK LETTER NDA;Lo;0;L;;;;;N;;;;; -1BE3;BATAK LETTER MBA;Lo;0;L;;;;;N;;;;; -1BE4;BATAK LETTER I;Lo;0;L;;;;;N;;;;; -1BE5;BATAK LETTER U;Lo;0;L;;;;;N;;;;; -1BE6;BATAK SIGN TOMPI;Mn;7;NSM;;;;;N;;;;; -1BE7;BATAK VOWEL SIGN E;Mc;0;L;;;;;N;;;;; -1BE8;BATAK VOWEL SIGN PAKPAK E;Mn;0;NSM;;;;;N;;;;; -1BE9;BATAK VOWEL SIGN EE;Mn;0;NSM;;;;;N;;;;; -1BEA;BATAK VOWEL SIGN I;Mc;0;L;;;;;N;;;;; -1BEB;BATAK VOWEL SIGN KARO I;Mc;0;L;;;;;N;;;;; -1BEC;BATAK VOWEL SIGN O;Mc;0;L;;;;;N;;;;; -1BED;BATAK VOWEL SIGN KARO O;Mn;0;NSM;;;;;N;;;;; -1BEE;BATAK VOWEL SIGN U;Mc;0;L;;;;;N;;;;; -1BEF;BATAK VOWEL SIGN U FOR SIMALUNGUN SA;Mn;0;NSM;;;;;N;;;;; -1BF0;BATAK CONSONANT SIGN NG;Mn;0;NSM;;;;;N;;;;; -1BF1;BATAK CONSONANT SIGN H;Mn;0;NSM;;;;;N;;;;; -1BF2;BATAK PANGOLAT;Mc;9;L;;;;;N;;;;; -1BF3;BATAK PANONGONAN;Mc;9;L;;;;;N;;;;; -1BFC;BATAK SYMBOL BINDU NA METEK;Po;0;L;;;;;N;;;;; -1BFD;BATAK SYMBOL BINDU PINARBORAS;Po;0;L;;;;;N;;;;; -1BFE;BATAK SYMBOL BINDU JUDUL;Po;0;L;;;;;N;;;;; -1BFF;BATAK SYMBOL BINDU PANGOLAT;Po;0;L;;;;;N;;;;; -1C00;LEPCHA LETTER KA;Lo;0;L;;;;;N;;;;; -1C01;LEPCHA LETTER KLA;Lo;0;L;;;;;N;;;;; -1C02;LEPCHA LETTER KHA;Lo;0;L;;;;;N;;;;; -1C03;LEPCHA LETTER GA;Lo;0;L;;;;;N;;;;; -1C04;LEPCHA LETTER GLA;Lo;0;L;;;;;N;;;;; -1C05;LEPCHA LETTER NGA;Lo;0;L;;;;;N;;;;; -1C06;LEPCHA LETTER CA;Lo;0;L;;;;;N;;;;; -1C07;LEPCHA LETTER CHA;Lo;0;L;;;;;N;;;;; -1C08;LEPCHA LETTER JA;Lo;0;L;;;;;N;;;;; -1C09;LEPCHA LETTER NYA;Lo;0;L;;;;;N;;;;; -1C0A;LEPCHA LETTER TA;Lo;0;L;;;;;N;;;;; -1C0B;LEPCHA LETTER THA;Lo;0;L;;;;;N;;;;; -1C0C;LEPCHA LETTER DA;Lo;0;L;;;;;N;;;;; -1C0D;LEPCHA LETTER NA;Lo;0;L;;;;;N;;;;; -1C0E;LEPCHA LETTER PA;Lo;0;L;;;;;N;;;;; -1C0F;LEPCHA LETTER PLA;Lo;0;L;;;;;N;;;;; -1C10;LEPCHA LETTER PHA;Lo;0;L;;;;;N;;;;; -1C11;LEPCHA LETTER FA;Lo;0;L;;;;;N;;;;; -1C12;LEPCHA LETTER FLA;Lo;0;L;;;;;N;;;;; -1C13;LEPCHA LETTER BA;Lo;0;L;;;;;N;;;;; -1C14;LEPCHA LETTER BLA;Lo;0;L;;;;;N;;;;; -1C15;LEPCHA LETTER MA;Lo;0;L;;;;;N;;;;; -1C16;LEPCHA LETTER MLA;Lo;0;L;;;;;N;;;;; -1C17;LEPCHA LETTER TSA;Lo;0;L;;;;;N;;;;; -1C18;LEPCHA LETTER TSHA;Lo;0;L;;;;;N;;;;; -1C19;LEPCHA LETTER DZA;Lo;0;L;;;;;N;;;;; -1C1A;LEPCHA LETTER YA;Lo;0;L;;;;;N;;;;; -1C1B;LEPCHA LETTER RA;Lo;0;L;;;;;N;;;;; -1C1C;LEPCHA LETTER LA;Lo;0;L;;;;;N;;;;; -1C1D;LEPCHA LETTER HA;Lo;0;L;;;;;N;;;;; -1C1E;LEPCHA LETTER HLA;Lo;0;L;;;;;N;;;;; -1C1F;LEPCHA LETTER VA;Lo;0;L;;;;;N;;;;; -1C20;LEPCHA LETTER SA;Lo;0;L;;;;;N;;;;; -1C21;LEPCHA LETTER SHA;Lo;0;L;;;;;N;;;;; -1C22;LEPCHA LETTER WA;Lo;0;L;;;;;N;;;;; -1C23;LEPCHA LETTER A;Lo;0;L;;;;;N;;;;; -1C24;LEPCHA SUBJOINED LETTER YA;Mc;0;L;;;;;N;;;;; -1C25;LEPCHA SUBJOINED LETTER RA;Mc;0;L;;;;;N;;;;; -1C26;LEPCHA VOWEL SIGN AA;Mc;0;L;;;;;N;;;;; -1C27;LEPCHA VOWEL SIGN I;Mc;0;L;;;;;N;;;;; -1C28;LEPCHA VOWEL SIGN O;Mc;0;L;;;;;N;;;;; -1C29;LEPCHA VOWEL SIGN OO;Mc;0;L;;;;;N;;;;; -1C2A;LEPCHA VOWEL SIGN U;Mc;0;L;;;;;N;;;;; -1C2B;LEPCHA VOWEL SIGN UU;Mc;0;L;;;;;N;;;;; -1C2C;LEPCHA VOWEL SIGN E;Mn;0;NSM;;;;;N;;;;; -1C2D;LEPCHA CONSONANT SIGN K;Mn;0;NSM;;;;;N;;;;; -1C2E;LEPCHA CONSONANT SIGN M;Mn;0;NSM;;;;;N;;;;; -1C2F;LEPCHA CONSONANT SIGN L;Mn;0;NSM;;;;;N;;;;; -1C30;LEPCHA CONSONANT SIGN N;Mn;0;NSM;;;;;N;;;;; -1C31;LEPCHA CONSONANT SIGN P;Mn;0;NSM;;;;;N;;;;; -1C32;LEPCHA CONSONANT SIGN R;Mn;0;NSM;;;;;N;;;;; -1C33;LEPCHA CONSONANT SIGN T;Mn;0;NSM;;;;;N;;;;; -1C34;LEPCHA CONSONANT SIGN NYIN-DO;Mc;0;L;;;;;N;;;;; -1C35;LEPCHA CONSONANT SIGN KANG;Mc;0;L;;;;;N;;;;; -1C36;LEPCHA SIGN RAN;Mn;0;NSM;;;;;N;;;;; -1C37;LEPCHA SIGN NUKTA;Mn;7;NSM;;;;;N;;;;; -1C3B;LEPCHA PUNCTUATION TA-ROL;Po;0;L;;;;;N;;;;; -1C3C;LEPCHA PUNCTUATION NYET THYOOM TA-ROL;Po;0;L;;;;;N;;;;; -1C3D;LEPCHA PUNCTUATION CER-WA;Po;0;L;;;;;N;;;;; -1C3E;LEPCHA PUNCTUATION TSHOOK CER-WA;Po;0;L;;;;;N;;;;; -1C3F;LEPCHA PUNCTUATION TSHOOK;Po;0;L;;;;;N;;;;; -1C40;LEPCHA DIGIT ZERO;Nd;0;L;;0;0;0;N;;;;; -1C41;LEPCHA DIGIT ONE;Nd;0;L;;1;1;1;N;;;;; -1C42;LEPCHA DIGIT TWO;Nd;0;L;;2;2;2;N;;;;; -1C43;LEPCHA DIGIT THREE;Nd;0;L;;3;3;3;N;;;;; -1C44;LEPCHA DIGIT FOUR;Nd;0;L;;4;4;4;N;;;;; -1C45;LEPCHA DIGIT FIVE;Nd;0;L;;5;5;5;N;;;;; -1C46;LEPCHA DIGIT SIX;Nd;0;L;;6;6;6;N;;;;; -1C47;LEPCHA DIGIT SEVEN;Nd;0;L;;7;7;7;N;;;;; -1C48;LEPCHA DIGIT EIGHT;Nd;0;L;;8;8;8;N;;;;; -1C49;LEPCHA DIGIT NINE;Nd;0;L;;9;9;9;N;;;;; -1C4D;LEPCHA LETTER TTA;Lo;0;L;;;;;N;;;;; -1C4E;LEPCHA LETTER TTHA;Lo;0;L;;;;;N;;;;; -1C4F;LEPCHA LETTER DDA;Lo;0;L;;;;;N;;;;; -1C50;OL CHIKI DIGIT ZERO;Nd;0;L;;0;0;0;N;;;;; -1C51;OL CHIKI DIGIT ONE;Nd;0;L;;1;1;1;N;;;;; -1C52;OL CHIKI DIGIT TWO;Nd;0;L;;2;2;2;N;;;;; -1C53;OL CHIKI DIGIT THREE;Nd;0;L;;3;3;3;N;;;;; -1C54;OL CHIKI DIGIT FOUR;Nd;0;L;;4;4;4;N;;;;; -1C55;OL CHIKI DIGIT FIVE;Nd;0;L;;5;5;5;N;;;;; -1C56;OL CHIKI DIGIT SIX;Nd;0;L;;6;6;6;N;;;;; -1C57;OL CHIKI DIGIT SEVEN;Nd;0;L;;7;7;7;N;;;;; -1C58;OL CHIKI DIGIT EIGHT;Nd;0;L;;8;8;8;N;;;;; -1C59;OL CHIKI DIGIT NINE;Nd;0;L;;9;9;9;N;;;;; -1C5A;OL CHIKI LETTER LA;Lo;0;L;;;;;N;;;;; -1C5B;OL CHIKI LETTER AT;Lo;0;L;;;;;N;;;;; -1C5C;OL CHIKI LETTER AG;Lo;0;L;;;;;N;;;;; -1C5D;OL CHIKI LETTER ANG;Lo;0;L;;;;;N;;;;; -1C5E;OL CHIKI LETTER AL;Lo;0;L;;;;;N;;;;; -1C5F;OL CHIKI LETTER LAA;Lo;0;L;;;;;N;;;;; -1C60;OL CHIKI LETTER AAK;Lo;0;L;;;;;N;;;;; -1C61;OL CHIKI LETTER AAJ;Lo;0;L;;;;;N;;;;; -1C62;OL CHIKI LETTER AAM;Lo;0;L;;;;;N;;;;; -1C63;OL CHIKI LETTER AAW;Lo;0;L;;;;;N;;;;; -1C64;OL CHIKI LETTER LI;Lo;0;L;;;;;N;;;;; -1C65;OL CHIKI LETTER IS;Lo;0;L;;;;;N;;;;; -1C66;OL CHIKI LETTER IH;Lo;0;L;;;;;N;;;;; -1C67;OL CHIKI LETTER INY;Lo;0;L;;;;;N;;;;; -1C68;OL CHIKI LETTER IR;Lo;0;L;;;;;N;;;;; -1C69;OL CHIKI LETTER LU;Lo;0;L;;;;;N;;;;; -1C6A;OL CHIKI LETTER UC;Lo;0;L;;;;;N;;;;; -1C6B;OL CHIKI LETTER UD;Lo;0;L;;;;;N;;;;; -1C6C;OL CHIKI LETTER UNN;Lo;0;L;;;;;N;;;;; -1C6D;OL CHIKI LETTER UY;Lo;0;L;;;;;N;;;;; -1C6E;OL CHIKI LETTER LE;Lo;0;L;;;;;N;;;;; -1C6F;OL CHIKI LETTER EP;Lo;0;L;;;;;N;;;;; -1C70;OL CHIKI LETTER EDD;Lo;0;L;;;;;N;;;;; -1C71;OL CHIKI LETTER EN;Lo;0;L;;;;;N;;;;; -1C72;OL CHIKI LETTER ERR;Lo;0;L;;;;;N;;;;; -1C73;OL CHIKI LETTER LO;Lo;0;L;;;;;N;;;;; -1C74;OL CHIKI LETTER OTT;Lo;0;L;;;;;N;;;;; -1C75;OL CHIKI LETTER OB;Lo;0;L;;;;;N;;;;; -1C76;OL CHIKI LETTER OV;Lo;0;L;;;;;N;;;;; -1C77;OL CHIKI LETTER OH;Lo;0;L;;;;;N;;;;; -1C78;OL CHIKI MU TTUDDAG;Lm;0;L;;;;;N;;;;; -1C79;OL CHIKI GAAHLAA TTUDDAAG;Lm;0;L;;;;;N;;;;; -1C7A;OL CHIKI MU-GAAHLAA TTUDDAAG;Lm;0;L;;;;;N;;;;; -1C7B;OL CHIKI RELAA;Lm;0;L;;;;;N;;;;; -1C7C;OL CHIKI PHAARKAA;Lm;0;L;;;;;N;;;;; -1C7D;OL CHIKI AHAD;Lm;0;L;;;;;N;;;;; -1C7E;OL CHIKI PUNCTUATION MUCAAD;Po;0;L;;;;;N;;;;; -1C7F;OL CHIKI PUNCTUATION DOUBLE MUCAAD;Po;0;L;;;;;N;;;;; -1CD0;VEDIC TONE KARSHANA;Mn;230;NSM;;;;;N;;;;; -1CD1;VEDIC TONE SHARA;Mn;230;NSM;;;;;N;;;;; -1CD2;VEDIC TONE PRENKHA;Mn;230;NSM;;;;;N;;;;; -1CD3;VEDIC SIGN NIHSHVASA;Po;0;L;;;;;N;;;;; -1CD4;VEDIC SIGN YAJURVEDIC MIDLINE SVARITA;Mn;1;NSM;;;;;N;;;;; -1CD5;VEDIC TONE YAJURVEDIC AGGRAVATED INDEPENDENT SVARITA;Mn;220;NSM;;;;;N;;;;; -1CD6;VEDIC TONE YAJURVEDIC INDEPENDENT SVARITA;Mn;220;NSM;;;;;N;;;;; -1CD7;VEDIC TONE YAJURVEDIC KATHAKA INDEPENDENT SVARITA;Mn;220;NSM;;;;;N;;;;; -1CD8;VEDIC TONE CANDRA BELOW;Mn;220;NSM;;;;;N;;;;; -1CD9;VEDIC TONE YAJURVEDIC KATHAKA INDEPENDENT SVARITA SCHROEDER;Mn;220;NSM;;;;;N;;;;; -1CDA;VEDIC TONE DOUBLE SVARITA;Mn;230;NSM;;;;;N;;;;; -1CDB;VEDIC TONE TRIPLE SVARITA;Mn;230;NSM;;;;;N;;;;; -1CDC;VEDIC TONE KATHAKA ANUDATTA;Mn;220;NSM;;;;;N;;;;; -1CDD;VEDIC TONE DOT BELOW;Mn;220;NSM;;;;;N;;;;; -1CDE;VEDIC TONE TWO DOTS BELOW;Mn;220;NSM;;;;;N;;;;; -1CDF;VEDIC TONE THREE DOTS BELOW;Mn;220;NSM;;;;;N;;;;; -1CE0;VEDIC TONE RIGVEDIC KASHMIRI INDEPENDENT SVARITA;Mn;230;NSM;;;;;N;;;;; -1CE1;VEDIC TONE ATHARVAVEDIC INDEPENDENT SVARITA;Mc;0;L;;;;;N;;;;; -1CE2;VEDIC SIGN VISARGA SVARITA;Mn;1;NSM;;;;;N;;;;; -1CE3;VEDIC SIGN VISARGA UDATTA;Mn;1;NSM;;;;;N;;;;; -1CE4;VEDIC SIGN REVERSED VISARGA UDATTA;Mn;1;NSM;;;;;N;;;;; -1CE5;VEDIC SIGN VISARGA ANUDATTA;Mn;1;NSM;;;;;N;;;;; -1CE6;VEDIC SIGN REVERSED VISARGA ANUDATTA;Mn;1;NSM;;;;;N;;;;; -1CE7;VEDIC SIGN VISARGA UDATTA WITH TAIL;Mn;1;NSM;;;;;N;;;;; -1CE8;VEDIC SIGN VISARGA ANUDATTA WITH TAIL;Mn;1;NSM;;;;;N;;;;; -1CE9;VEDIC SIGN ANUSVARA ANTARGOMUKHA;Lo;0;L;;;;;N;;;;; -1CEA;VEDIC SIGN ANUSVARA BAHIRGOMUKHA;Lo;0;L;;;;;N;;;;; -1CEB;VEDIC SIGN ANUSVARA VAMAGOMUKHA;Lo;0;L;;;;;N;;;;; -1CEC;VEDIC SIGN ANUSVARA VAMAGOMUKHA WITH TAIL;Lo;0;L;;;;;N;;;;; -1CED;VEDIC SIGN TIRYAK;Mn;220;NSM;;;;;N;;;;; -1CEE;VEDIC SIGN HEXIFORM LONG ANUSVARA;Lo;0;L;;;;;N;;;;; -1CEF;VEDIC SIGN LONG ANUSVARA;Lo;0;L;;;;;N;;;;; -1CF0;VEDIC SIGN RTHANG LONG ANUSVARA;Lo;0;L;;;;;N;;;;; -1CF1;VEDIC SIGN ANUSVARA UBHAYATO MUKHA;Lo;0;L;;;;;N;;;;; -1CF2;VEDIC SIGN ARDHAVISARGA;Mc;0;L;;;;;N;;;;; -1D00;LATIN LETTER SMALL CAPITAL A;Ll;0;L;;;;;N;;;;; -1D01;LATIN LETTER SMALL CAPITAL AE;Ll;0;L;;;;;N;;;;; -1D02;LATIN SMALL LETTER TURNED AE;Ll;0;L;;;;;N;;;;; -1D03;LATIN LETTER SMALL CAPITAL BARRED B;Ll;0;L;;;;;N;;;;; -1D04;LATIN LETTER SMALL CAPITAL C;Ll;0;L;;;;;N;;;;; -1D05;LATIN LETTER SMALL CAPITAL D;Ll;0;L;;;;;N;;;;; -1D06;LATIN LETTER SMALL CAPITAL ETH;Ll;0;L;;;;;N;;;;; -1D07;LATIN LETTER SMALL CAPITAL E;Ll;0;L;;;;;N;;;;; -1D08;LATIN SMALL LETTER TURNED OPEN E;Ll;0;L;;;;;N;;;;; -1D09;LATIN SMALL LETTER TURNED I;Ll;0;L;;;;;N;;;;; -1D0A;LATIN LETTER SMALL CAPITAL J;Ll;0;L;;;;;N;;;;; -1D0B;LATIN LETTER SMALL CAPITAL K;Ll;0;L;;;;;N;;;;; -1D0C;LATIN LETTER SMALL CAPITAL L WITH STROKE;Ll;0;L;;;;;N;;;;; -1D0D;LATIN LETTER SMALL CAPITAL M;Ll;0;L;;;;;N;;;;; -1D0E;LATIN LETTER SMALL CAPITAL REVERSED N;Ll;0;L;;;;;N;;;;; -1D0F;LATIN LETTER SMALL CAPITAL O;Ll;0;L;;;;;N;;;;; -1D10;LATIN LETTER SMALL CAPITAL OPEN O;Ll;0;L;;;;;N;;;;; -1D11;LATIN SMALL LETTER SIDEWAYS O;Ll;0;L;;;;;N;;;;; -1D12;LATIN SMALL LETTER SIDEWAYS OPEN O;Ll;0;L;;;;;N;;;;; -1D13;LATIN SMALL LETTER SIDEWAYS O WITH STROKE;Ll;0;L;;;;;N;;;;; -1D14;LATIN SMALL LETTER TURNED OE;Ll;0;L;;;;;N;;;;; -1D15;LATIN LETTER SMALL CAPITAL OU;Ll;0;L;;;;;N;;;;; -1D16;LATIN SMALL LETTER TOP HALF O;Ll;0;L;;;;;N;;;;; -1D17;LATIN SMALL LETTER BOTTOM HALF O;Ll;0;L;;;;;N;;;;; -1D18;LATIN LETTER SMALL CAPITAL P;Ll;0;L;;;;;N;;;;; -1D19;LATIN LETTER SMALL CAPITAL REVERSED R;Ll;0;L;;;;;N;;;;; -1D1A;LATIN LETTER SMALL CAPITAL TURNED R;Ll;0;L;;;;;N;;;;; -1D1B;LATIN LETTER SMALL CAPITAL T;Ll;0;L;;;;;N;;;;; -1D1C;LATIN LETTER SMALL CAPITAL U;Ll;0;L;;;;;N;;;;; -1D1D;LATIN SMALL LETTER SIDEWAYS U;Ll;0;L;;;;;N;;;;; -1D1E;LATIN SMALL LETTER SIDEWAYS DIAERESIZED U;Ll;0;L;;;;;N;;;;; -1D1F;LATIN SMALL LETTER SIDEWAYS TURNED M;Ll;0;L;;;;;N;;;;; -1D20;LATIN LETTER SMALL CAPITAL V;Ll;0;L;;;;;N;;;;; -1D21;LATIN LETTER SMALL CAPITAL W;Ll;0;L;;;;;N;;;;; -1D22;LATIN LETTER SMALL CAPITAL Z;Ll;0;L;;;;;N;;;;; -1D23;LATIN LETTER SMALL CAPITAL EZH;Ll;0;L;;;;;N;;;;; -1D24;LATIN LETTER VOICED LARYNGEAL SPIRANT;Ll;0;L;;;;;N;;;;; -1D25;LATIN LETTER AIN;Ll;0;L;;;;;N;;;;; -1D26;GREEK LETTER SMALL CAPITAL GAMMA;Ll;0;L;;;;;N;;;;; -1D27;GREEK LETTER SMALL CAPITAL LAMDA;Ll;0;L;;;;;N;;;;; -1D28;GREEK LETTER SMALL CAPITAL PI;Ll;0;L;;;;;N;;;;; -1D29;GREEK LETTER SMALL CAPITAL RHO;Ll;0;L;;;;;N;;;;; -1D2A;GREEK LETTER SMALL CAPITAL PSI;Ll;0;L;;;;;N;;;;; -1D2B;CYRILLIC LETTER SMALL CAPITAL EL;Ll;0;L;;;;;N;;;;; -1D2C;MODIFIER LETTER CAPITAL A;Lm;0;L; 0041;;;;N;;;;; -1D2D;MODIFIER LETTER CAPITAL AE;Lm;0;L; 00C6;;;;N;;;;; -1D2E;MODIFIER LETTER CAPITAL B;Lm;0;L; 0042;;;;N;;;;; -1D2F;MODIFIER LETTER CAPITAL BARRED B;Lm;0;L;;;;;N;;;;; -1D30;MODIFIER LETTER CAPITAL D;Lm;0;L; 0044;;;;N;;;;; -1D31;MODIFIER LETTER CAPITAL E;Lm;0;L; 0045;;;;N;;;;; -1D32;MODIFIER LETTER CAPITAL REVERSED E;Lm;0;L; 018E;;;;N;;;;; -1D33;MODIFIER LETTER CAPITAL G;Lm;0;L; 0047;;;;N;;;;; -1D34;MODIFIER LETTER CAPITAL H;Lm;0;L; 0048;;;;N;;;;; -1D35;MODIFIER LETTER CAPITAL I;Lm;0;L; 0049;;;;N;;;;; -1D36;MODIFIER LETTER CAPITAL J;Lm;0;L; 004A;;;;N;;;;; -1D37;MODIFIER LETTER CAPITAL K;Lm;0;L; 004B;;;;N;;;;; -1D38;MODIFIER LETTER CAPITAL L;Lm;0;L; 004C;;;;N;;;;; -1D39;MODIFIER LETTER CAPITAL M;Lm;0;L; 004D;;;;N;;;;; -1D3A;MODIFIER LETTER CAPITAL N;Lm;0;L; 004E;;;;N;;;;; -1D3B;MODIFIER LETTER CAPITAL REVERSED N;Lm;0;L;;;;;N;;;;; -1D3C;MODIFIER LETTER CAPITAL O;Lm;0;L; 004F;;;;N;;;;; -1D3D;MODIFIER LETTER CAPITAL OU;Lm;0;L; 0222;;;;N;;;;; -1D3E;MODIFIER LETTER CAPITAL P;Lm;0;L; 0050;;;;N;;;;; -1D3F;MODIFIER LETTER CAPITAL R;Lm;0;L; 0052;;;;N;;;;; -1D40;MODIFIER LETTER CAPITAL T;Lm;0;L; 0054;;;;N;;;;; -1D41;MODIFIER LETTER CAPITAL U;Lm;0;L; 0055;;;;N;;;;; -1D42;MODIFIER LETTER CAPITAL W;Lm;0;L; 0057;;;;N;;;;; -1D43;MODIFIER LETTER SMALL A;Lm;0;L; 0061;;;;N;;;;; -1D44;MODIFIER LETTER SMALL TURNED A;Lm;0;L; 0250;;;;N;;;;; -1D45;MODIFIER LETTER SMALL ALPHA;Lm;0;L; 0251;;;;N;;;;; -1D46;MODIFIER LETTER SMALL TURNED AE;Lm;0;L; 1D02;;;;N;;;;; -1D47;MODIFIER LETTER SMALL B;Lm;0;L; 0062;;;;N;;;;; -1D48;MODIFIER LETTER SMALL D;Lm;0;L; 0064;;;;N;;;;; -1D49;MODIFIER LETTER SMALL E;Lm;0;L; 0065;;;;N;;;;; -1D4A;MODIFIER LETTER SMALL SCHWA;Lm;0;L; 0259;;;;N;;;;; -1D4B;MODIFIER LETTER SMALL OPEN E;Lm;0;L; 025B;;;;N;;;;; -1D4C;MODIFIER LETTER SMALL TURNED OPEN E;Lm;0;L; 025C;;;;N;;;;; -1D4D;MODIFIER LETTER SMALL G;Lm;0;L; 0067;;;;N;;;;; -1D4E;MODIFIER LETTER SMALL TURNED I;Lm;0;L;;;;;N;;;;; -1D4F;MODIFIER LETTER SMALL K;Lm;0;L; 006B;;;;N;;;;; -1D50;MODIFIER LETTER SMALL M;Lm;0;L; 006D;;;;N;;;;; -1D51;MODIFIER LETTER SMALL ENG;Lm;0;L; 014B;;;;N;;;;; -1D52;MODIFIER LETTER SMALL O;Lm;0;L; 006F;;;;N;;;;; -1D53;MODIFIER LETTER SMALL OPEN O;Lm;0;L; 0254;;;;N;;;;; -1D54;MODIFIER LETTER SMALL TOP HALF O;Lm;0;L; 1D16;;;;N;;;;; -1D55;MODIFIER LETTER SMALL BOTTOM HALF O;Lm;0;L; 1D17;;;;N;;;;; -1D56;MODIFIER LETTER SMALL P;Lm;0;L; 0070;;;;N;;;;; -1D57;MODIFIER LETTER SMALL T;Lm;0;L; 0074;;;;N;;;;; -1D58;MODIFIER LETTER SMALL U;Lm;0;L; 0075;;;;N;;;;; -1D59;MODIFIER LETTER SMALL SIDEWAYS U;Lm;0;L; 1D1D;;;;N;;;;; -1D5A;MODIFIER LETTER SMALL TURNED M;Lm;0;L; 026F;;;;N;;;;; -1D5B;MODIFIER LETTER SMALL V;Lm;0;L; 0076;;;;N;;;;; -1D5C;MODIFIER LETTER SMALL AIN;Lm;0;L; 1D25;;;;N;;;;; -1D5D;MODIFIER LETTER SMALL BETA;Lm;0;L; 03B2;;;;N;;;;; -1D5E;MODIFIER LETTER SMALL GREEK GAMMA;Lm;0;L; 03B3;;;;N;;;;; -1D5F;MODIFIER LETTER SMALL DELTA;Lm;0;L; 03B4;;;;N;;;;; -1D60;MODIFIER LETTER SMALL GREEK PHI;Lm;0;L; 03C6;;;;N;;;;; -1D61;MODIFIER LETTER SMALL CHI;Lm;0;L; 03C7;;;;N;;;;; -1D62;LATIN SUBSCRIPT SMALL LETTER I;Ll;0;L; 0069;;;;N;;;;; -1D63;LATIN SUBSCRIPT SMALL LETTER R;Ll;0;L; 0072;;;;N;;;;; -1D64;LATIN SUBSCRIPT SMALL LETTER U;Ll;0;L; 0075;;;;N;;;;; -1D65;LATIN SUBSCRIPT SMALL LETTER V;Ll;0;L; 0076;;;;N;;;;; -1D66;GREEK SUBSCRIPT SMALL LETTER BETA;Ll;0;L; 03B2;;;;N;;;;; -1D67;GREEK SUBSCRIPT SMALL LETTER GAMMA;Ll;0;L; 03B3;;;;N;;;;; -1D68;GREEK SUBSCRIPT SMALL LETTER RHO;Ll;0;L; 03C1;;;;N;;;;; -1D69;GREEK SUBSCRIPT SMALL LETTER PHI;Ll;0;L; 03C6;;;;N;;;;; -1D6A;GREEK SUBSCRIPT SMALL LETTER CHI;Ll;0;L; 03C7;;;;N;;;;; -1D6B;LATIN SMALL LETTER UE;Ll;0;L;;;;;N;;;;; -1D6C;LATIN SMALL LETTER B WITH MIDDLE TILDE;Ll;0;L;;;;;N;;;;; -1D6D;LATIN SMALL LETTER D WITH MIDDLE TILDE;Ll;0;L;;;;;N;;;;; -1D6E;LATIN SMALL LETTER F WITH MIDDLE TILDE;Ll;0;L;;;;;N;;;;; -1D6F;LATIN SMALL LETTER M WITH MIDDLE TILDE;Ll;0;L;;;;;N;;;;; -1D70;LATIN SMALL LETTER N WITH MIDDLE TILDE;Ll;0;L;;;;;N;;;;; -1D71;LATIN SMALL LETTER P WITH MIDDLE TILDE;Ll;0;L;;;;;N;;;;; -1D72;LATIN SMALL LETTER R WITH MIDDLE TILDE;Ll;0;L;;;;;N;;;;; -1D73;LATIN SMALL LETTER R WITH FISHHOOK AND MIDDLE TILDE;Ll;0;L;;;;;N;;;;; -1D74;LATIN SMALL LETTER S WITH MIDDLE TILDE;Ll;0;L;;;;;N;;;;; -1D75;LATIN SMALL LETTER T WITH MIDDLE TILDE;Ll;0;L;;;;;N;;;;; -1D76;LATIN SMALL LETTER Z WITH MIDDLE TILDE;Ll;0;L;;;;;N;;;;; -1D77;LATIN SMALL LETTER TURNED G;Ll;0;L;;;;;N;;;;; -1D78;MODIFIER LETTER CYRILLIC EN;Lm;0;L; 043D;;;;N;;;;; -1D79;LATIN SMALL LETTER INSULAR G;Ll;0;L;;;;;N;;;A77D;;A77D -1D7A;LATIN SMALL LETTER TH WITH STRIKETHROUGH;Ll;0;L;;;;;N;;;;; -1D7B;LATIN SMALL CAPITAL LETTER I WITH STROKE;Ll;0;L;;;;;N;;;;; -1D7C;LATIN SMALL LETTER IOTA WITH STROKE;Ll;0;L;;;;;N;;;;; -1D7D;LATIN SMALL LETTER P WITH STROKE;Ll;0;L;;;;;N;;;2C63;;2C63 -1D7E;LATIN SMALL CAPITAL LETTER U WITH STROKE;Ll;0;L;;;;;N;;;;; -1D7F;LATIN SMALL LETTER UPSILON WITH STROKE;Ll;0;L;;;;;N;;;;; -1D80;LATIN SMALL LETTER B WITH PALATAL HOOK;Ll;0;L;;;;;N;;;;; -1D81;LATIN SMALL LETTER D WITH PALATAL HOOK;Ll;0;L;;;;;N;;;;; -1D82;LATIN SMALL LETTER F WITH PALATAL HOOK;Ll;0;L;;;;;N;;;;; -1D83;LATIN SMALL LETTER G WITH PALATAL HOOK;Ll;0;L;;;;;N;;;;; -1D84;LATIN SMALL LETTER K WITH PALATAL HOOK;Ll;0;L;;;;;N;;;;; -1D85;LATIN SMALL LETTER L WITH PALATAL HOOK;Ll;0;L;;;;;N;;;;; -1D86;LATIN SMALL LETTER M WITH PALATAL HOOK;Ll;0;L;;;;;N;;;;; -1D87;LATIN SMALL LETTER N WITH PALATAL HOOK;Ll;0;L;;;;;N;;;;; -1D88;LATIN SMALL LETTER P WITH PALATAL HOOK;Ll;0;L;;;;;N;;;;; -1D89;LATIN SMALL LETTER R WITH PALATAL HOOK;Ll;0;L;;;;;N;;;;; -1D8A;LATIN SMALL LETTER S WITH PALATAL HOOK;Ll;0;L;;;;;N;;;;; -1D8B;LATIN SMALL LETTER ESH WITH PALATAL HOOK;Ll;0;L;;;;;N;;;;; -1D8C;LATIN SMALL LETTER V WITH PALATAL HOOK;Ll;0;L;;;;;N;;;;; -1D8D;LATIN SMALL LETTER X WITH PALATAL HOOK;Ll;0;L;;;;;N;;;;; -1D8E;LATIN SMALL LETTER Z WITH PALATAL HOOK;Ll;0;L;;;;;N;;;;; -1D8F;LATIN SMALL LETTER A WITH RETROFLEX HOOK;Ll;0;L;;;;;N;;;;; -1D90;LATIN SMALL LETTER ALPHA WITH RETROFLEX HOOK;Ll;0;L;;;;;N;;;;; -1D91;LATIN SMALL LETTER D WITH HOOK AND TAIL;Ll;0;L;;;;;N;;;;; -1D92;LATIN SMALL LETTER E WITH RETROFLEX HOOK;Ll;0;L;;;;;N;;;;; -1D93;LATIN SMALL LETTER OPEN E WITH RETROFLEX HOOK;Ll;0;L;;;;;N;;;;; -1D94;LATIN SMALL LETTER REVERSED OPEN E WITH RETROFLEX HOOK;Ll;0;L;;;;;N;;;;; -1D95;LATIN SMALL LETTER SCHWA WITH RETROFLEX HOOK;Ll;0;L;;;;;N;;;;; -1D96;LATIN SMALL LETTER I WITH RETROFLEX HOOK;Ll;0;L;;;;;N;;;;; -1D97;LATIN SMALL LETTER OPEN O WITH RETROFLEX HOOK;Ll;0;L;;;;;N;;;;; -1D98;LATIN SMALL LETTER ESH WITH RETROFLEX HOOK;Ll;0;L;;;;;N;;;;; -1D99;LATIN SMALL LETTER U WITH RETROFLEX HOOK;Ll;0;L;;;;;N;;;;; -1D9A;LATIN SMALL LETTER EZH WITH RETROFLEX HOOK;Ll;0;L;;;;;N;;;;; -1D9B;MODIFIER LETTER SMALL TURNED ALPHA;Lm;0;L; 0252;;;;N;;;;; -1D9C;MODIFIER LETTER SMALL C;Lm;0;L; 0063;;;;N;;;;; -1D9D;MODIFIER LETTER SMALL C WITH CURL;Lm;0;L; 0255;;;;N;;;;; -1D9E;MODIFIER LETTER SMALL ETH;Lm;0;L; 00F0;;;;N;;;;; -1D9F;MODIFIER LETTER SMALL REVERSED OPEN E;Lm;0;L; 025C;;;;N;;;;; -1DA0;MODIFIER LETTER SMALL F;Lm;0;L; 0066;;;;N;;;;; -1DA1;MODIFIER LETTER SMALL DOTLESS J WITH STROKE;Lm;0;L; 025F;;;;N;;;;; -1DA2;MODIFIER LETTER SMALL SCRIPT G;Lm;0;L; 0261;;;;N;;;;; -1DA3;MODIFIER LETTER SMALL TURNED H;Lm;0;L; 0265;;;;N;;;;; -1DA4;MODIFIER LETTER SMALL I WITH STROKE;Lm;0;L; 0268;;;;N;;;;; -1DA5;MODIFIER LETTER SMALL IOTA;Lm;0;L; 0269;;;;N;;;;; -1DA6;MODIFIER LETTER SMALL CAPITAL I;Lm;0;L; 026A;;;;N;;;;; -1DA7;MODIFIER LETTER SMALL CAPITAL I WITH STROKE;Lm;0;L; 1D7B;;;;N;;;;; -1DA8;MODIFIER LETTER SMALL J WITH CROSSED-TAIL;Lm;0;L; 029D;;;;N;;;;; -1DA9;MODIFIER LETTER SMALL L WITH RETROFLEX HOOK;Lm;0;L; 026D;;;;N;;;;; -1DAA;MODIFIER LETTER SMALL L WITH PALATAL HOOK;Lm;0;L; 1D85;;;;N;;;;; -1DAB;MODIFIER LETTER SMALL CAPITAL L;Lm;0;L; 029F;;;;N;;;;; -1DAC;MODIFIER LETTER SMALL M WITH HOOK;Lm;0;L; 0271;;;;N;;;;; -1DAD;MODIFIER LETTER SMALL TURNED M WITH LONG LEG;Lm;0;L; 0270;;;;N;;;;; -1DAE;MODIFIER LETTER SMALL N WITH LEFT HOOK;Lm;0;L; 0272;;;;N;;;;; -1DAF;MODIFIER LETTER SMALL N WITH RETROFLEX HOOK;Lm;0;L; 0273;;;;N;;;;; -1DB0;MODIFIER LETTER SMALL CAPITAL N;Lm;0;L; 0274;;;;N;;;;; -1DB1;MODIFIER LETTER SMALL BARRED O;Lm;0;L; 0275;;;;N;;;;; -1DB2;MODIFIER LETTER SMALL PHI;Lm;0;L; 0278;;;;N;;;;; -1DB3;MODIFIER LETTER SMALL S WITH HOOK;Lm;0;L; 0282;;;;N;;;;; -1DB4;MODIFIER LETTER SMALL ESH;Lm;0;L; 0283;;;;N;;;;; -1DB5;MODIFIER LETTER SMALL T WITH PALATAL HOOK;Lm;0;L; 01AB;;;;N;;;;; -1DB6;MODIFIER LETTER SMALL U BAR;Lm;0;L; 0289;;;;N;;;;; -1DB7;MODIFIER LETTER SMALL UPSILON;Lm;0;L; 028A;;;;N;;;;; -1DB8;MODIFIER LETTER SMALL CAPITAL U;Lm;0;L; 1D1C;;;;N;;;;; -1DB9;MODIFIER LETTER SMALL V WITH HOOK;Lm;0;L; 028B;;;;N;;;;; -1DBA;MODIFIER LETTER SMALL TURNED V;Lm;0;L; 028C;;;;N;;;;; -1DBB;MODIFIER LETTER SMALL Z;Lm;0;L; 007A;;;;N;;;;; -1DBC;MODIFIER LETTER SMALL Z WITH RETROFLEX HOOK;Lm;0;L; 0290;;;;N;;;;; -1DBD;MODIFIER LETTER SMALL Z WITH CURL;Lm;0;L; 0291;;;;N;;;;; -1DBE;MODIFIER LETTER SMALL EZH;Lm;0;L; 0292;;;;N;;;;; -1DBF;MODIFIER LETTER SMALL THETA;Lm;0;L; 03B8;;;;N;;;;; -1DC0;COMBINING DOTTED GRAVE ACCENT;Mn;230;NSM;;;;;N;;;;; -1DC1;COMBINING DOTTED ACUTE ACCENT;Mn;230;NSM;;;;;N;;;;; -1DC2;COMBINING SNAKE BELOW;Mn;220;NSM;;;;;N;;;;; -1DC3;COMBINING SUSPENSION MARK;Mn;230;NSM;;;;;N;;;;; -1DC4;COMBINING MACRON-ACUTE;Mn;230;NSM;;;;;N;;;;; -1DC5;COMBINING GRAVE-MACRON;Mn;230;NSM;;;;;N;;;;; -1DC6;COMBINING MACRON-GRAVE;Mn;230;NSM;;;;;N;;;;; -1DC7;COMBINING ACUTE-MACRON;Mn;230;NSM;;;;;N;;;;; -1DC8;COMBINING GRAVE-ACUTE-GRAVE;Mn;230;NSM;;;;;N;;;;; -1DC9;COMBINING ACUTE-GRAVE-ACUTE;Mn;230;NSM;;;;;N;;;;; -1DCA;COMBINING LATIN SMALL LETTER R BELOW;Mn;220;NSM;;;;;N;;;;; -1DCB;COMBINING BREVE-MACRON;Mn;230;NSM;;;;;N;;;;; -1DCC;COMBINING MACRON-BREVE;Mn;230;NSM;;;;;N;;;;; -1DCD;COMBINING DOUBLE CIRCUMFLEX ABOVE;Mn;234;NSM;;;;;N;;;;; -1DCE;COMBINING OGONEK ABOVE;Mn;214;NSM;;;;;N;;;;; -1DCF;COMBINING ZIGZAG BELOW;Mn;220;NSM;;;;;N;;;;; -1DD0;COMBINING IS BELOW;Mn;202;NSM;;;;;N;;;;; -1DD1;COMBINING UR ABOVE;Mn;230;NSM;;;;;N;;;;; -1DD2;COMBINING US ABOVE;Mn;230;NSM;;;;;N;;;;; -1DD3;COMBINING LATIN SMALL LETTER FLATTENED OPEN A ABOVE;Mn;230;NSM;;;;;N;;;;; -1DD4;COMBINING LATIN SMALL LETTER AE;Mn;230;NSM;;;;;N;;;;; -1DD5;COMBINING LATIN SMALL LETTER AO;Mn;230;NSM;;;;;N;;;;; -1DD6;COMBINING LATIN SMALL LETTER AV;Mn;230;NSM;;;;;N;;;;; -1DD7;COMBINING LATIN SMALL LETTER C CEDILLA;Mn;230;NSM;;;;;N;;;;; -1DD8;COMBINING LATIN SMALL LETTER INSULAR D;Mn;230;NSM;;;;;N;;;;; -1DD9;COMBINING LATIN SMALL LETTER ETH;Mn;230;NSM;;;;;N;;;;; -1DDA;COMBINING LATIN SMALL LETTER G;Mn;230;NSM;;;;;N;;;;; -1DDB;COMBINING LATIN LETTER SMALL CAPITAL G;Mn;230;NSM;;;;;N;;;;; -1DDC;COMBINING LATIN SMALL LETTER K;Mn;230;NSM;;;;;N;;;;; -1DDD;COMBINING LATIN SMALL LETTER L;Mn;230;NSM;;;;;N;;;;; -1DDE;COMBINING LATIN LETTER SMALL CAPITAL L;Mn;230;NSM;;;;;N;;;;; -1DDF;COMBINING LATIN LETTER SMALL CAPITAL M;Mn;230;NSM;;;;;N;;;;; -1DE0;COMBINING LATIN SMALL LETTER N;Mn;230;NSM;;;;;N;;;;; -1DE1;COMBINING LATIN LETTER SMALL CAPITAL N;Mn;230;NSM;;;;;N;;;;; -1DE2;COMBINING LATIN LETTER SMALL CAPITAL R;Mn;230;NSM;;;;;N;;;;; -1DE3;COMBINING LATIN SMALL LETTER R ROTUNDA;Mn;230;NSM;;;;;N;;;;; -1DE4;COMBINING LATIN SMALL LETTER S;Mn;230;NSM;;;;;N;;;;; -1DE5;COMBINING LATIN SMALL LETTER LONG S;Mn;230;NSM;;;;;N;;;;; -1DE6;COMBINING LATIN SMALL LETTER Z;Mn;230;NSM;;;;;N;;;;; -1DFC;COMBINING DOUBLE INVERTED BREVE BELOW;Mn;233;NSM;;;;;N;;;;; -1DFD;COMBINING ALMOST EQUAL TO BELOW;Mn;220;NSM;;;;;N;;;;; -1DFE;COMBINING LEFT ARROWHEAD ABOVE;Mn;230;NSM;;;;;N;;;;; -1DFF;COMBINING RIGHT ARROWHEAD AND DOWN ARROWHEAD BELOW;Mn;220;NSM;;;;;N;;;;; -1E00;LATIN CAPITAL LETTER A WITH RING BELOW;Lu;0;L;0041 0325;;;;N;;;;1E01; -1E01;LATIN SMALL LETTER A WITH RING BELOW;Ll;0;L;0061 0325;;;;N;;;1E00;;1E00 -1E02;LATIN CAPITAL LETTER B WITH DOT ABOVE;Lu;0;L;0042 0307;;;;N;;;;1E03; -1E03;LATIN SMALL LETTER B WITH DOT ABOVE;Ll;0;L;0062 0307;;;;N;;;1E02;;1E02 -1E04;LATIN CAPITAL LETTER B WITH DOT BELOW;Lu;0;L;0042 0323;;;;N;;;;1E05; -1E05;LATIN SMALL LETTER B WITH DOT BELOW;Ll;0;L;0062 0323;;;;N;;;1E04;;1E04 -1E06;LATIN CAPITAL LETTER B WITH LINE BELOW;Lu;0;L;0042 0331;;;;N;;;;1E07; -1E07;LATIN SMALL LETTER B WITH LINE BELOW;Ll;0;L;0062 0331;;;;N;;;1E06;;1E06 -1E08;LATIN CAPITAL LETTER C WITH CEDILLA AND ACUTE;Lu;0;L;00C7 0301;;;;N;;;;1E09; -1E09;LATIN SMALL LETTER C WITH CEDILLA AND ACUTE;Ll;0;L;00E7 0301;;;;N;;;1E08;;1E08 -1E0A;LATIN CAPITAL LETTER D WITH DOT ABOVE;Lu;0;L;0044 0307;;;;N;;;;1E0B; -1E0B;LATIN SMALL LETTER D WITH DOT ABOVE;Ll;0;L;0064 0307;;;;N;;;1E0A;;1E0A -1E0C;LATIN CAPITAL LETTER D WITH DOT BELOW;Lu;0;L;0044 0323;;;;N;;;;1E0D; -1E0D;LATIN SMALL LETTER D WITH DOT BELOW;Ll;0;L;0064 0323;;;;N;;;1E0C;;1E0C -1E0E;LATIN CAPITAL LETTER D WITH LINE BELOW;Lu;0;L;0044 0331;;;;N;;;;1E0F; -1E0F;LATIN SMALL LETTER D WITH LINE BELOW;Ll;0;L;0064 0331;;;;N;;;1E0E;;1E0E -1E10;LATIN CAPITAL LETTER D WITH CEDILLA;Lu;0;L;0044 0327;;;;N;;;;1E11; -1E11;LATIN SMALL LETTER D WITH CEDILLA;Ll;0;L;0064 0327;;;;N;;;1E10;;1E10 -1E12;LATIN CAPITAL LETTER D WITH CIRCUMFLEX BELOW;Lu;0;L;0044 032D;;;;N;;;;1E13; -1E13;LATIN SMALL LETTER D WITH CIRCUMFLEX BELOW;Ll;0;L;0064 032D;;;;N;;;1E12;;1E12 -1E14;LATIN CAPITAL LETTER E WITH MACRON AND GRAVE;Lu;0;L;0112 0300;;;;N;;;;1E15; -1E15;LATIN SMALL LETTER E WITH MACRON AND GRAVE;Ll;0;L;0113 0300;;;;N;;;1E14;;1E14 -1E16;LATIN CAPITAL LETTER E WITH MACRON AND ACUTE;Lu;0;L;0112 0301;;;;N;;;;1E17; -1E17;LATIN SMALL LETTER E WITH MACRON AND ACUTE;Ll;0;L;0113 0301;;;;N;;;1E16;;1E16 -1E18;LATIN CAPITAL LETTER E WITH CIRCUMFLEX BELOW;Lu;0;L;0045 032D;;;;N;;;;1E19; -1E19;LATIN SMALL LETTER E WITH CIRCUMFLEX BELOW;Ll;0;L;0065 032D;;;;N;;;1E18;;1E18 -1E1A;LATIN CAPITAL LETTER E WITH TILDE BELOW;Lu;0;L;0045 0330;;;;N;;;;1E1B; -1E1B;LATIN SMALL LETTER E WITH TILDE BELOW;Ll;0;L;0065 0330;;;;N;;;1E1A;;1E1A -1E1C;LATIN CAPITAL LETTER E WITH CEDILLA AND BREVE;Lu;0;L;0228 0306;;;;N;;;;1E1D; -1E1D;LATIN SMALL LETTER E WITH CEDILLA AND BREVE;Ll;0;L;0229 0306;;;;N;;;1E1C;;1E1C -1E1E;LATIN CAPITAL LETTER F WITH DOT ABOVE;Lu;0;L;0046 0307;;;;N;;;;1E1F; -1E1F;LATIN SMALL LETTER F WITH DOT ABOVE;Ll;0;L;0066 0307;;;;N;;;1E1E;;1E1E -1E20;LATIN CAPITAL LETTER G WITH MACRON;Lu;0;L;0047 0304;;;;N;;;;1E21; -1E21;LATIN SMALL LETTER G WITH MACRON;Ll;0;L;0067 0304;;;;N;;;1E20;;1E20 -1E22;LATIN CAPITAL LETTER H WITH DOT ABOVE;Lu;0;L;0048 0307;;;;N;;;;1E23; -1E23;LATIN SMALL LETTER H WITH DOT ABOVE;Ll;0;L;0068 0307;;;;N;;;1E22;;1E22 -1E24;LATIN CAPITAL LETTER H WITH DOT BELOW;Lu;0;L;0048 0323;;;;N;;;;1E25; -1E25;LATIN SMALL LETTER H WITH DOT BELOW;Ll;0;L;0068 0323;;;;N;;;1E24;;1E24 -1E26;LATIN CAPITAL LETTER H WITH DIAERESIS;Lu;0;L;0048 0308;;;;N;;;;1E27; -1E27;LATIN SMALL LETTER H WITH DIAERESIS;Ll;0;L;0068 0308;;;;N;;;1E26;;1E26 -1E28;LATIN CAPITAL LETTER H WITH CEDILLA;Lu;0;L;0048 0327;;;;N;;;;1E29; -1E29;LATIN SMALL LETTER H WITH CEDILLA;Ll;0;L;0068 0327;;;;N;;;1E28;;1E28 -1E2A;LATIN CAPITAL LETTER H WITH BREVE BELOW;Lu;0;L;0048 032E;;;;N;;;;1E2B; -1E2B;LATIN SMALL LETTER H WITH BREVE BELOW;Ll;0;L;0068 032E;;;;N;;;1E2A;;1E2A -1E2C;LATIN CAPITAL LETTER I WITH TILDE BELOW;Lu;0;L;0049 0330;;;;N;;;;1E2D; -1E2D;LATIN SMALL LETTER I WITH TILDE BELOW;Ll;0;L;0069 0330;;;;N;;;1E2C;;1E2C -1E2E;LATIN CAPITAL LETTER I WITH DIAERESIS AND ACUTE;Lu;0;L;00CF 0301;;;;N;;;;1E2F; -1E2F;LATIN SMALL LETTER I WITH DIAERESIS AND ACUTE;Ll;0;L;00EF 0301;;;;N;;;1E2E;;1E2E -1E30;LATIN CAPITAL LETTER K WITH ACUTE;Lu;0;L;004B 0301;;;;N;;;;1E31; -1E31;LATIN SMALL LETTER K WITH ACUTE;Ll;0;L;006B 0301;;;;N;;;1E30;;1E30 -1E32;LATIN CAPITAL LETTER K WITH DOT BELOW;Lu;0;L;004B 0323;;;;N;;;;1E33; -1E33;LATIN SMALL LETTER K WITH DOT BELOW;Ll;0;L;006B 0323;;;;N;;;1E32;;1E32 -1E34;LATIN CAPITAL LETTER K WITH LINE BELOW;Lu;0;L;004B 0331;;;;N;;;;1E35; -1E35;LATIN SMALL LETTER K WITH LINE BELOW;Ll;0;L;006B 0331;;;;N;;;1E34;;1E34 -1E36;LATIN CAPITAL LETTER L WITH DOT BELOW;Lu;0;L;004C 0323;;;;N;;;;1E37; -1E37;LATIN SMALL LETTER L WITH DOT BELOW;Ll;0;L;006C 0323;;;;N;;;1E36;;1E36 -1E38;LATIN CAPITAL LETTER L WITH DOT BELOW AND MACRON;Lu;0;L;1E36 0304;;;;N;;;;1E39; -1E39;LATIN SMALL LETTER L WITH DOT BELOW AND MACRON;Ll;0;L;1E37 0304;;;;N;;;1E38;;1E38 -1E3A;LATIN CAPITAL LETTER L WITH LINE BELOW;Lu;0;L;004C 0331;;;;N;;;;1E3B; -1E3B;LATIN SMALL LETTER L WITH LINE BELOW;Ll;0;L;006C 0331;;;;N;;;1E3A;;1E3A -1E3C;LATIN CAPITAL LETTER L WITH CIRCUMFLEX BELOW;Lu;0;L;004C 032D;;;;N;;;;1E3D; -1E3D;LATIN SMALL LETTER L WITH CIRCUMFLEX BELOW;Ll;0;L;006C 032D;;;;N;;;1E3C;;1E3C -1E3E;LATIN CAPITAL LETTER M WITH ACUTE;Lu;0;L;004D 0301;;;;N;;;;1E3F; -1E3F;LATIN SMALL LETTER M WITH ACUTE;Ll;0;L;006D 0301;;;;N;;;1E3E;;1E3E -1E40;LATIN CAPITAL LETTER M WITH DOT ABOVE;Lu;0;L;004D 0307;;;;N;;;;1E41; -1E41;LATIN SMALL LETTER M WITH DOT ABOVE;Ll;0;L;006D 0307;;;;N;;;1E40;;1E40 -1E42;LATIN CAPITAL LETTER M WITH DOT BELOW;Lu;0;L;004D 0323;;;;N;;;;1E43; -1E43;LATIN SMALL LETTER M WITH DOT BELOW;Ll;0;L;006D 0323;;;;N;;;1E42;;1E42 -1E44;LATIN CAPITAL LETTER N WITH DOT ABOVE;Lu;0;L;004E 0307;;;;N;;;;1E45; -1E45;LATIN SMALL LETTER N WITH DOT ABOVE;Ll;0;L;006E 0307;;;;N;;;1E44;;1E44 -1E46;LATIN CAPITAL LETTER N WITH DOT BELOW;Lu;0;L;004E 0323;;;;N;;;;1E47; -1E47;LATIN SMALL LETTER N WITH DOT BELOW;Ll;0;L;006E 0323;;;;N;;;1E46;;1E46 -1E48;LATIN CAPITAL LETTER N WITH LINE BELOW;Lu;0;L;004E 0331;;;;N;;;;1E49; -1E49;LATIN SMALL LETTER N WITH LINE BELOW;Ll;0;L;006E 0331;;;;N;;;1E48;;1E48 -1E4A;LATIN CAPITAL LETTER N WITH CIRCUMFLEX BELOW;Lu;0;L;004E 032D;;;;N;;;;1E4B; -1E4B;LATIN SMALL LETTER N WITH CIRCUMFLEX BELOW;Ll;0;L;006E 032D;;;;N;;;1E4A;;1E4A -1E4C;LATIN CAPITAL LETTER O WITH TILDE AND ACUTE;Lu;0;L;00D5 0301;;;;N;;;;1E4D; -1E4D;LATIN SMALL LETTER O WITH TILDE AND ACUTE;Ll;0;L;00F5 0301;;;;N;;;1E4C;;1E4C -1E4E;LATIN CAPITAL LETTER O WITH TILDE AND DIAERESIS;Lu;0;L;00D5 0308;;;;N;;;;1E4F; -1E4F;LATIN SMALL LETTER O WITH TILDE AND DIAERESIS;Ll;0;L;00F5 0308;;;;N;;;1E4E;;1E4E -1E50;LATIN CAPITAL LETTER O WITH MACRON AND GRAVE;Lu;0;L;014C 0300;;;;N;;;;1E51; -1E51;LATIN SMALL LETTER O WITH MACRON AND GRAVE;Ll;0;L;014D 0300;;;;N;;;1E50;;1E50 -1E52;LATIN CAPITAL LETTER O WITH MACRON AND ACUTE;Lu;0;L;014C 0301;;;;N;;;;1E53; -1E53;LATIN SMALL LETTER O WITH MACRON AND ACUTE;Ll;0;L;014D 0301;;;;N;;;1E52;;1E52 -1E54;LATIN CAPITAL LETTER P WITH ACUTE;Lu;0;L;0050 0301;;;;N;;;;1E55; -1E55;LATIN SMALL LETTER P WITH ACUTE;Ll;0;L;0070 0301;;;;N;;;1E54;;1E54 -1E56;LATIN CAPITAL LETTER P WITH DOT ABOVE;Lu;0;L;0050 0307;;;;N;;;;1E57; -1E57;LATIN SMALL LETTER P WITH DOT ABOVE;Ll;0;L;0070 0307;;;;N;;;1E56;;1E56 -1E58;LATIN CAPITAL LETTER R WITH DOT ABOVE;Lu;0;L;0052 0307;;;;N;;;;1E59; -1E59;LATIN SMALL LETTER R WITH DOT ABOVE;Ll;0;L;0072 0307;;;;N;;;1E58;;1E58 -1E5A;LATIN CAPITAL LETTER R WITH DOT BELOW;Lu;0;L;0052 0323;;;;N;;;;1E5B; -1E5B;LATIN SMALL LETTER R WITH DOT BELOW;Ll;0;L;0072 0323;;;;N;;;1E5A;;1E5A -1E5C;LATIN CAPITAL LETTER R WITH DOT BELOW AND MACRON;Lu;0;L;1E5A 0304;;;;N;;;;1E5D; -1E5D;LATIN SMALL LETTER R WITH DOT BELOW AND MACRON;Ll;0;L;1E5B 0304;;;;N;;;1E5C;;1E5C -1E5E;LATIN CAPITAL LETTER R WITH LINE BELOW;Lu;0;L;0052 0331;;;;N;;;;1E5F; -1E5F;LATIN SMALL LETTER R WITH LINE BELOW;Ll;0;L;0072 0331;;;;N;;;1E5E;;1E5E -1E60;LATIN CAPITAL LETTER S WITH DOT ABOVE;Lu;0;L;0053 0307;;;;N;;;;1E61; -1E61;LATIN SMALL LETTER S WITH DOT ABOVE;Ll;0;L;0073 0307;;;;N;;;1E60;;1E60 -1E62;LATIN CAPITAL LETTER S WITH DOT BELOW;Lu;0;L;0053 0323;;;;N;;;;1E63; -1E63;LATIN SMALL LETTER S WITH DOT BELOW;Ll;0;L;0073 0323;;;;N;;;1E62;;1E62 -1E64;LATIN CAPITAL LETTER S WITH ACUTE AND DOT ABOVE;Lu;0;L;015A 0307;;;;N;;;;1E65; -1E65;LATIN SMALL LETTER S WITH ACUTE AND DOT ABOVE;Ll;0;L;015B 0307;;;;N;;;1E64;;1E64 -1E66;LATIN CAPITAL LETTER S WITH CARON AND DOT ABOVE;Lu;0;L;0160 0307;;;;N;;;;1E67; -1E67;LATIN SMALL LETTER S WITH CARON AND DOT ABOVE;Ll;0;L;0161 0307;;;;N;;;1E66;;1E66 -1E68;LATIN CAPITAL LETTER S WITH DOT BELOW AND DOT ABOVE;Lu;0;L;1E62 0307;;;;N;;;;1E69; -1E69;LATIN SMALL LETTER S WITH DOT BELOW AND DOT ABOVE;Ll;0;L;1E63 0307;;;;N;;;1E68;;1E68 -1E6A;LATIN CAPITAL LETTER T WITH DOT ABOVE;Lu;0;L;0054 0307;;;;N;;;;1E6B; -1E6B;LATIN SMALL LETTER T WITH DOT ABOVE;Ll;0;L;0074 0307;;;;N;;;1E6A;;1E6A -1E6C;LATIN CAPITAL LETTER T WITH DOT BELOW;Lu;0;L;0054 0323;;;;N;;;;1E6D; -1E6D;LATIN SMALL LETTER T WITH DOT BELOW;Ll;0;L;0074 0323;;;;N;;;1E6C;;1E6C -1E6E;LATIN CAPITAL LETTER T WITH LINE BELOW;Lu;0;L;0054 0331;;;;N;;;;1E6F; -1E6F;LATIN SMALL LETTER T WITH LINE BELOW;Ll;0;L;0074 0331;;;;N;;;1E6E;;1E6E -1E70;LATIN CAPITAL LETTER T WITH CIRCUMFLEX BELOW;Lu;0;L;0054 032D;;;;N;;;;1E71; -1E71;LATIN SMALL LETTER T WITH CIRCUMFLEX BELOW;Ll;0;L;0074 032D;;;;N;;;1E70;;1E70 -1E72;LATIN CAPITAL LETTER U WITH DIAERESIS BELOW;Lu;0;L;0055 0324;;;;N;;;;1E73; -1E73;LATIN SMALL LETTER U WITH DIAERESIS BELOW;Ll;0;L;0075 0324;;;;N;;;1E72;;1E72 -1E74;LATIN CAPITAL LETTER U WITH TILDE BELOW;Lu;0;L;0055 0330;;;;N;;;;1E75; -1E75;LATIN SMALL LETTER U WITH TILDE BELOW;Ll;0;L;0075 0330;;;;N;;;1E74;;1E74 -1E76;LATIN CAPITAL LETTER U WITH CIRCUMFLEX BELOW;Lu;0;L;0055 032D;;;;N;;;;1E77; -1E77;LATIN SMALL LETTER U WITH CIRCUMFLEX BELOW;Ll;0;L;0075 032D;;;;N;;;1E76;;1E76 -1E78;LATIN CAPITAL LETTER U WITH TILDE AND ACUTE;Lu;0;L;0168 0301;;;;N;;;;1E79; -1E79;LATIN SMALL LETTER U WITH TILDE AND ACUTE;Ll;0;L;0169 0301;;;;N;;;1E78;;1E78 -1E7A;LATIN CAPITAL LETTER U WITH MACRON AND DIAERESIS;Lu;0;L;016A 0308;;;;N;;;;1E7B; -1E7B;LATIN SMALL LETTER U WITH MACRON AND DIAERESIS;Ll;0;L;016B 0308;;;;N;;;1E7A;;1E7A -1E7C;LATIN CAPITAL LETTER V WITH TILDE;Lu;0;L;0056 0303;;;;N;;;;1E7D; -1E7D;LATIN SMALL LETTER V WITH TILDE;Ll;0;L;0076 0303;;;;N;;;1E7C;;1E7C -1E7E;LATIN CAPITAL LETTER V WITH DOT BELOW;Lu;0;L;0056 0323;;;;N;;;;1E7F; -1E7F;LATIN SMALL LETTER V WITH DOT BELOW;Ll;0;L;0076 0323;;;;N;;;1E7E;;1E7E -1E80;LATIN CAPITAL LETTER W WITH GRAVE;Lu;0;L;0057 0300;;;;N;;;;1E81; -1E81;LATIN SMALL LETTER W WITH GRAVE;Ll;0;L;0077 0300;;;;N;;;1E80;;1E80 -1E82;LATIN CAPITAL LETTER W WITH ACUTE;Lu;0;L;0057 0301;;;;N;;;;1E83; -1E83;LATIN SMALL LETTER W WITH ACUTE;Ll;0;L;0077 0301;;;;N;;;1E82;;1E82 -1E84;LATIN CAPITAL LETTER W WITH DIAERESIS;Lu;0;L;0057 0308;;;;N;;;;1E85; -1E85;LATIN SMALL LETTER W WITH DIAERESIS;Ll;0;L;0077 0308;;;;N;;;1E84;;1E84 -1E86;LATIN CAPITAL LETTER W WITH DOT ABOVE;Lu;0;L;0057 0307;;;;N;;;;1E87; -1E87;LATIN SMALL LETTER W WITH DOT ABOVE;Ll;0;L;0077 0307;;;;N;;;1E86;;1E86 -1E88;LATIN CAPITAL LETTER W WITH DOT BELOW;Lu;0;L;0057 0323;;;;N;;;;1E89; -1E89;LATIN SMALL LETTER W WITH DOT BELOW;Ll;0;L;0077 0323;;;;N;;;1E88;;1E88 -1E8A;LATIN CAPITAL LETTER X WITH DOT ABOVE;Lu;0;L;0058 0307;;;;N;;;;1E8B; -1E8B;LATIN SMALL LETTER X WITH DOT ABOVE;Ll;0;L;0078 0307;;;;N;;;1E8A;;1E8A -1E8C;LATIN CAPITAL LETTER X WITH DIAERESIS;Lu;0;L;0058 0308;;;;N;;;;1E8D; -1E8D;LATIN SMALL LETTER X WITH DIAERESIS;Ll;0;L;0078 0308;;;;N;;;1E8C;;1E8C -1E8E;LATIN CAPITAL LETTER Y WITH DOT ABOVE;Lu;0;L;0059 0307;;;;N;;;;1E8F; -1E8F;LATIN SMALL LETTER Y WITH DOT ABOVE;Ll;0;L;0079 0307;;;;N;;;1E8E;;1E8E -1E90;LATIN CAPITAL LETTER Z WITH CIRCUMFLEX;Lu;0;L;005A 0302;;;;N;;;;1E91; -1E91;LATIN SMALL LETTER Z WITH CIRCUMFLEX;Ll;0;L;007A 0302;;;;N;;;1E90;;1E90 -1E92;LATIN CAPITAL LETTER Z WITH DOT BELOW;Lu;0;L;005A 0323;;;;N;;;;1E93; -1E93;LATIN SMALL LETTER Z WITH DOT BELOW;Ll;0;L;007A 0323;;;;N;;;1E92;;1E92 -1E94;LATIN CAPITAL LETTER Z WITH LINE BELOW;Lu;0;L;005A 0331;;;;N;;;;1E95; -1E95;LATIN SMALL LETTER Z WITH LINE BELOW;Ll;0;L;007A 0331;;;;N;;;1E94;;1E94 -1E96;LATIN SMALL LETTER H WITH LINE BELOW;Ll;0;L;0068 0331;;;;N;;;;; -1E97;LATIN SMALL LETTER T WITH DIAERESIS;Ll;0;L;0074 0308;;;;N;;;;; -1E98;LATIN SMALL LETTER W WITH RING ABOVE;Ll;0;L;0077 030A;;;;N;;;;; -1E99;LATIN SMALL LETTER Y WITH RING ABOVE;Ll;0;L;0079 030A;;;;N;;;;; -1E9A;LATIN SMALL LETTER A WITH RIGHT HALF RING;Ll;0;L; 0061 02BE;;;;N;;;;; -1E9B;LATIN SMALL LETTER LONG S WITH DOT ABOVE;Ll;0;L;017F 0307;;;;N;;;1E60;;1E60 -1E9C;LATIN SMALL LETTER LONG S WITH DIAGONAL STROKE;Ll;0;L;;;;;N;;;;; -1E9D;LATIN SMALL LETTER LONG S WITH HIGH STROKE;Ll;0;L;;;;;N;;;;; -1E9E;LATIN CAPITAL LETTER SHARP S;Lu;0;L;;;;;N;;;;00DF; -1E9F;LATIN SMALL LETTER DELTA;Ll;0;L;;;;;N;;;;; -1EA0;LATIN CAPITAL LETTER A WITH DOT BELOW;Lu;0;L;0041 0323;;;;N;;;;1EA1; -1EA1;LATIN SMALL LETTER A WITH DOT BELOW;Ll;0;L;0061 0323;;;;N;;;1EA0;;1EA0 -1EA2;LATIN CAPITAL LETTER A WITH HOOK ABOVE;Lu;0;L;0041 0309;;;;N;;;;1EA3; -1EA3;LATIN SMALL LETTER A WITH HOOK ABOVE;Ll;0;L;0061 0309;;;;N;;;1EA2;;1EA2 -1EA4;LATIN CAPITAL LETTER A WITH CIRCUMFLEX AND ACUTE;Lu;0;L;00C2 0301;;;;N;;;;1EA5; -1EA5;LATIN SMALL LETTER A WITH CIRCUMFLEX AND ACUTE;Ll;0;L;00E2 0301;;;;N;;;1EA4;;1EA4 -1EA6;LATIN CAPITAL LETTER A WITH CIRCUMFLEX AND GRAVE;Lu;0;L;00C2 0300;;;;N;;;;1EA7; -1EA7;LATIN SMALL LETTER A WITH CIRCUMFLEX AND GRAVE;Ll;0;L;00E2 0300;;;;N;;;1EA6;;1EA6 -1EA8;LATIN CAPITAL LETTER A WITH CIRCUMFLEX AND HOOK ABOVE;Lu;0;L;00C2 0309;;;;N;;;;1EA9; -1EA9;LATIN SMALL LETTER A WITH CIRCUMFLEX AND HOOK ABOVE;Ll;0;L;00E2 0309;;;;N;;;1EA8;;1EA8 -1EAA;LATIN CAPITAL LETTER A WITH CIRCUMFLEX AND TILDE;Lu;0;L;00C2 0303;;;;N;;;;1EAB; -1EAB;LATIN SMALL LETTER A WITH CIRCUMFLEX AND TILDE;Ll;0;L;00E2 0303;;;;N;;;1EAA;;1EAA -1EAC;LATIN CAPITAL LETTER A WITH CIRCUMFLEX AND DOT BELOW;Lu;0;L;1EA0 0302;;;;N;;;;1EAD; -1EAD;LATIN SMALL LETTER A WITH CIRCUMFLEX AND DOT BELOW;Ll;0;L;1EA1 0302;;;;N;;;1EAC;;1EAC -1EAE;LATIN CAPITAL LETTER A WITH BREVE AND ACUTE;Lu;0;L;0102 0301;;;;N;;;;1EAF; -1EAF;LATIN SMALL LETTER A WITH BREVE AND ACUTE;Ll;0;L;0103 0301;;;;N;;;1EAE;;1EAE -1EB0;LATIN CAPITAL LETTER A WITH BREVE AND GRAVE;Lu;0;L;0102 0300;;;;N;;;;1EB1; -1EB1;LATIN SMALL LETTER A WITH BREVE AND GRAVE;Ll;0;L;0103 0300;;;;N;;;1EB0;;1EB0 -1EB2;LATIN CAPITAL LETTER A WITH BREVE AND HOOK ABOVE;Lu;0;L;0102 0309;;;;N;;;;1EB3; -1EB3;LATIN SMALL LETTER A WITH BREVE AND HOOK ABOVE;Ll;0;L;0103 0309;;;;N;;;1EB2;;1EB2 -1EB4;LATIN CAPITAL LETTER A WITH BREVE AND TILDE;Lu;0;L;0102 0303;;;;N;;;;1EB5; -1EB5;LATIN SMALL LETTER A WITH BREVE AND TILDE;Ll;0;L;0103 0303;;;;N;;;1EB4;;1EB4 -1EB6;LATIN CAPITAL LETTER A WITH BREVE AND DOT BELOW;Lu;0;L;1EA0 0306;;;;N;;;;1EB7; -1EB7;LATIN SMALL LETTER A WITH BREVE AND DOT BELOW;Ll;0;L;1EA1 0306;;;;N;;;1EB6;;1EB6 -1EB8;LATIN CAPITAL LETTER E WITH DOT BELOW;Lu;0;L;0045 0323;;;;N;;;;1EB9; -1EB9;LATIN SMALL LETTER E WITH DOT BELOW;Ll;0;L;0065 0323;;;;N;;;1EB8;;1EB8 -1EBA;LATIN CAPITAL LETTER E WITH HOOK ABOVE;Lu;0;L;0045 0309;;;;N;;;;1EBB; -1EBB;LATIN SMALL LETTER E WITH HOOK ABOVE;Ll;0;L;0065 0309;;;;N;;;1EBA;;1EBA -1EBC;LATIN CAPITAL LETTER E WITH TILDE;Lu;0;L;0045 0303;;;;N;;;;1EBD; -1EBD;LATIN SMALL LETTER E WITH TILDE;Ll;0;L;0065 0303;;;;N;;;1EBC;;1EBC -1EBE;LATIN CAPITAL LETTER E WITH CIRCUMFLEX AND ACUTE;Lu;0;L;00CA 0301;;;;N;;;;1EBF; -1EBF;LATIN SMALL LETTER E WITH CIRCUMFLEX AND ACUTE;Ll;0;L;00EA 0301;;;;N;;;1EBE;;1EBE -1EC0;LATIN CAPITAL LETTER E WITH CIRCUMFLEX AND GRAVE;Lu;0;L;00CA 0300;;;;N;;;;1EC1; -1EC1;LATIN SMALL LETTER E WITH CIRCUMFLEX AND GRAVE;Ll;0;L;00EA 0300;;;;N;;;1EC0;;1EC0 -1EC2;LATIN CAPITAL LETTER E WITH CIRCUMFLEX AND HOOK ABOVE;Lu;0;L;00CA 0309;;;;N;;;;1EC3; -1EC3;LATIN SMALL LETTER E WITH CIRCUMFLEX AND HOOK ABOVE;Ll;0;L;00EA 0309;;;;N;;;1EC2;;1EC2 -1EC4;LATIN CAPITAL LETTER E WITH CIRCUMFLEX AND TILDE;Lu;0;L;00CA 0303;;;;N;;;;1EC5; -1EC5;LATIN SMALL LETTER E WITH CIRCUMFLEX AND TILDE;Ll;0;L;00EA 0303;;;;N;;;1EC4;;1EC4 -1EC6;LATIN CAPITAL LETTER E WITH CIRCUMFLEX AND DOT BELOW;Lu;0;L;1EB8 0302;;;;N;;;;1EC7; -1EC7;LATIN SMALL LETTER E WITH CIRCUMFLEX AND DOT BELOW;Ll;0;L;1EB9 0302;;;;N;;;1EC6;;1EC6 -1EC8;LATIN CAPITAL LETTER I WITH HOOK ABOVE;Lu;0;L;0049 0309;;;;N;;;;1EC9; -1EC9;LATIN SMALL LETTER I WITH HOOK ABOVE;Ll;0;L;0069 0309;;;;N;;;1EC8;;1EC8 -1ECA;LATIN CAPITAL LETTER I WITH DOT BELOW;Lu;0;L;0049 0323;;;;N;;;;1ECB; -1ECB;LATIN SMALL LETTER I WITH DOT BELOW;Ll;0;L;0069 0323;;;;N;;;1ECA;;1ECA -1ECC;LATIN CAPITAL LETTER O WITH DOT BELOW;Lu;0;L;004F 0323;;;;N;;;;1ECD; -1ECD;LATIN SMALL LETTER O WITH DOT BELOW;Ll;0;L;006F 0323;;;;N;;;1ECC;;1ECC -1ECE;LATIN CAPITAL LETTER O WITH HOOK ABOVE;Lu;0;L;004F 0309;;;;N;;;;1ECF; -1ECF;LATIN SMALL LETTER O WITH HOOK ABOVE;Ll;0;L;006F 0309;;;;N;;;1ECE;;1ECE -1ED0;LATIN CAPITAL LETTER O WITH CIRCUMFLEX AND ACUTE;Lu;0;L;00D4 0301;;;;N;;;;1ED1; -1ED1;LATIN SMALL LETTER O WITH CIRCUMFLEX AND ACUTE;Ll;0;L;00F4 0301;;;;N;;;1ED0;;1ED0 -1ED2;LATIN CAPITAL LETTER O WITH CIRCUMFLEX AND GRAVE;Lu;0;L;00D4 0300;;;;N;;;;1ED3; -1ED3;LATIN SMALL LETTER O WITH CIRCUMFLEX AND GRAVE;Ll;0;L;00F4 0300;;;;N;;;1ED2;;1ED2 -1ED4;LATIN CAPITAL LETTER O WITH CIRCUMFLEX AND HOOK ABOVE;Lu;0;L;00D4 0309;;;;N;;;;1ED5; -1ED5;LATIN SMALL LETTER O WITH CIRCUMFLEX AND HOOK ABOVE;Ll;0;L;00F4 0309;;;;N;;;1ED4;;1ED4 -1ED6;LATIN CAPITAL LETTER O WITH CIRCUMFLEX AND TILDE;Lu;0;L;00D4 0303;;;;N;;;;1ED7; -1ED7;LATIN SMALL LETTER O WITH CIRCUMFLEX AND TILDE;Ll;0;L;00F4 0303;;;;N;;;1ED6;;1ED6 -1ED8;LATIN CAPITAL LETTER O WITH CIRCUMFLEX AND DOT BELOW;Lu;0;L;1ECC 0302;;;;N;;;;1ED9; -1ED9;LATIN SMALL LETTER O WITH CIRCUMFLEX AND DOT BELOW;Ll;0;L;1ECD 0302;;;;N;;;1ED8;;1ED8 -1EDA;LATIN CAPITAL LETTER O WITH HORN AND ACUTE;Lu;0;L;01A0 0301;;;;N;;;;1EDB; -1EDB;LATIN SMALL LETTER O WITH HORN AND ACUTE;Ll;0;L;01A1 0301;;;;N;;;1EDA;;1EDA -1EDC;LATIN CAPITAL LETTER O WITH HORN AND GRAVE;Lu;0;L;01A0 0300;;;;N;;;;1EDD; -1EDD;LATIN SMALL LETTER O WITH HORN AND GRAVE;Ll;0;L;01A1 0300;;;;N;;;1EDC;;1EDC -1EDE;LATIN CAPITAL LETTER O WITH HORN AND HOOK ABOVE;Lu;0;L;01A0 0309;;;;N;;;;1EDF; -1EDF;LATIN SMALL LETTER O WITH HORN AND HOOK ABOVE;Ll;0;L;01A1 0309;;;;N;;;1EDE;;1EDE -1EE0;LATIN CAPITAL LETTER O WITH HORN AND TILDE;Lu;0;L;01A0 0303;;;;N;;;;1EE1; -1EE1;LATIN SMALL LETTER O WITH HORN AND TILDE;Ll;0;L;01A1 0303;;;;N;;;1EE0;;1EE0 -1EE2;LATIN CAPITAL LETTER O WITH HORN AND DOT BELOW;Lu;0;L;01A0 0323;;;;N;;;;1EE3; -1EE3;LATIN SMALL LETTER O WITH HORN AND DOT BELOW;Ll;0;L;01A1 0323;;;;N;;;1EE2;;1EE2 -1EE4;LATIN CAPITAL LETTER U WITH DOT BELOW;Lu;0;L;0055 0323;;;;N;;;;1EE5; -1EE5;LATIN SMALL LETTER U WITH DOT BELOW;Ll;0;L;0075 0323;;;;N;;;1EE4;;1EE4 -1EE6;LATIN CAPITAL LETTER U WITH HOOK ABOVE;Lu;0;L;0055 0309;;;;N;;;;1EE7; -1EE7;LATIN SMALL LETTER U WITH HOOK ABOVE;Ll;0;L;0075 0309;;;;N;;;1EE6;;1EE6 -1EE8;LATIN CAPITAL LETTER U WITH HORN AND ACUTE;Lu;0;L;01AF 0301;;;;N;;;;1EE9; -1EE9;LATIN SMALL LETTER U WITH HORN AND ACUTE;Ll;0;L;01B0 0301;;;;N;;;1EE8;;1EE8 -1EEA;LATIN CAPITAL LETTER U WITH HORN AND GRAVE;Lu;0;L;01AF 0300;;;;N;;;;1EEB; -1EEB;LATIN SMALL LETTER U WITH HORN AND GRAVE;Ll;0;L;01B0 0300;;;;N;;;1EEA;;1EEA -1EEC;LATIN CAPITAL LETTER U WITH HORN AND HOOK ABOVE;Lu;0;L;01AF 0309;;;;N;;;;1EED; -1EED;LATIN SMALL LETTER U WITH HORN AND HOOK ABOVE;Ll;0;L;01B0 0309;;;;N;;;1EEC;;1EEC -1EEE;LATIN CAPITAL LETTER U WITH HORN AND TILDE;Lu;0;L;01AF 0303;;;;N;;;;1EEF; -1EEF;LATIN SMALL LETTER U WITH HORN AND TILDE;Ll;0;L;01B0 0303;;;;N;;;1EEE;;1EEE -1EF0;LATIN CAPITAL LETTER U WITH HORN AND DOT BELOW;Lu;0;L;01AF 0323;;;;N;;;;1EF1; -1EF1;LATIN SMALL LETTER U WITH HORN AND DOT BELOW;Ll;0;L;01B0 0323;;;;N;;;1EF0;;1EF0 -1EF2;LATIN CAPITAL LETTER Y WITH GRAVE;Lu;0;L;0059 0300;;;;N;;;;1EF3; -1EF3;LATIN SMALL LETTER Y WITH GRAVE;Ll;0;L;0079 0300;;;;N;;;1EF2;;1EF2 -1EF4;LATIN CAPITAL LETTER Y WITH DOT BELOW;Lu;0;L;0059 0323;;;;N;;;;1EF5; -1EF5;LATIN SMALL LETTER Y WITH DOT BELOW;Ll;0;L;0079 0323;;;;N;;;1EF4;;1EF4 -1EF6;LATIN CAPITAL LETTER Y WITH HOOK ABOVE;Lu;0;L;0059 0309;;;;N;;;;1EF7; -1EF7;LATIN SMALL LETTER Y WITH HOOK ABOVE;Ll;0;L;0079 0309;;;;N;;;1EF6;;1EF6 -1EF8;LATIN CAPITAL LETTER Y WITH TILDE;Lu;0;L;0059 0303;;;;N;;;;1EF9; -1EF9;LATIN SMALL LETTER Y WITH TILDE;Ll;0;L;0079 0303;;;;N;;;1EF8;;1EF8 -1EFA;LATIN CAPITAL LETTER MIDDLE-WELSH LL;Lu;0;L;;;;;N;;;;1EFB; -1EFB;LATIN SMALL LETTER MIDDLE-WELSH LL;Ll;0;L;;;;;N;;;1EFA;;1EFA -1EFC;LATIN CAPITAL LETTER MIDDLE-WELSH V;Lu;0;L;;;;;N;;;;1EFD; -1EFD;LATIN SMALL LETTER MIDDLE-WELSH V;Ll;0;L;;;;;N;;;1EFC;;1EFC -1EFE;LATIN CAPITAL LETTER Y WITH LOOP;Lu;0;L;;;;;N;;;;1EFF; -1EFF;LATIN SMALL LETTER Y WITH LOOP;Ll;0;L;;;;;N;;;1EFE;;1EFE -1F00;GREEK SMALL LETTER ALPHA WITH PSILI;Ll;0;L;03B1 0313;;;;N;;;1F08;;1F08 -1F01;GREEK SMALL LETTER ALPHA WITH DASIA;Ll;0;L;03B1 0314;;;;N;;;1F09;;1F09 -1F02;GREEK SMALL LETTER ALPHA WITH PSILI AND VARIA;Ll;0;L;1F00 0300;;;;N;;;1F0A;;1F0A -1F03;GREEK SMALL LETTER ALPHA WITH DASIA AND VARIA;Ll;0;L;1F01 0300;;;;N;;;1F0B;;1F0B -1F04;GREEK SMALL LETTER ALPHA WITH PSILI AND OXIA;Ll;0;L;1F00 0301;;;;N;;;1F0C;;1F0C -1F05;GREEK SMALL LETTER ALPHA WITH DASIA AND OXIA;Ll;0;L;1F01 0301;;;;N;;;1F0D;;1F0D -1F06;GREEK SMALL LETTER ALPHA WITH PSILI AND PERISPOMENI;Ll;0;L;1F00 0342;;;;N;;;1F0E;;1F0E -1F07;GREEK SMALL LETTER ALPHA WITH DASIA AND PERISPOMENI;Ll;0;L;1F01 0342;;;;N;;;1F0F;;1F0F -1F08;GREEK CAPITAL LETTER ALPHA WITH PSILI;Lu;0;L;0391 0313;;;;N;;;;1F00; -1F09;GREEK CAPITAL LETTER ALPHA WITH DASIA;Lu;0;L;0391 0314;;;;N;;;;1F01; -1F0A;GREEK CAPITAL LETTER ALPHA WITH PSILI AND VARIA;Lu;0;L;1F08 0300;;;;N;;;;1F02; -1F0B;GREEK CAPITAL LETTER ALPHA WITH DASIA AND VARIA;Lu;0;L;1F09 0300;;;;N;;;;1F03; -1F0C;GREEK CAPITAL LETTER ALPHA WITH PSILI AND OXIA;Lu;0;L;1F08 0301;;;;N;;;;1F04; -1F0D;GREEK CAPITAL LETTER ALPHA WITH DASIA AND OXIA;Lu;0;L;1F09 0301;;;;N;;;;1F05; -1F0E;GREEK CAPITAL LETTER ALPHA WITH PSILI AND PERISPOMENI;Lu;0;L;1F08 0342;;;;N;;;;1F06; -1F0F;GREEK CAPITAL LETTER ALPHA WITH DASIA AND PERISPOMENI;Lu;0;L;1F09 0342;;;;N;;;;1F07; -1F10;GREEK SMALL LETTER EPSILON WITH PSILI;Ll;0;L;03B5 0313;;;;N;;;1F18;;1F18 -1F11;GREEK SMALL LETTER EPSILON WITH DASIA;Ll;0;L;03B5 0314;;;;N;;;1F19;;1F19 -1F12;GREEK SMALL LETTER EPSILON WITH PSILI AND VARIA;Ll;0;L;1F10 0300;;;;N;;;1F1A;;1F1A -1F13;GREEK SMALL LETTER EPSILON WITH DASIA AND VARIA;Ll;0;L;1F11 0300;;;;N;;;1F1B;;1F1B -1F14;GREEK SMALL LETTER EPSILON WITH PSILI AND OXIA;Ll;0;L;1F10 0301;;;;N;;;1F1C;;1F1C -1F15;GREEK SMALL LETTER EPSILON WITH DASIA AND OXIA;Ll;0;L;1F11 0301;;;;N;;;1F1D;;1F1D -1F18;GREEK CAPITAL LETTER EPSILON WITH PSILI;Lu;0;L;0395 0313;;;;N;;;;1F10; -1F19;GREEK CAPITAL LETTER EPSILON WITH DASIA;Lu;0;L;0395 0314;;;;N;;;;1F11; -1F1A;GREEK CAPITAL LETTER EPSILON WITH PSILI AND VARIA;Lu;0;L;1F18 0300;;;;N;;;;1F12; -1F1B;GREEK CAPITAL LETTER EPSILON WITH DASIA AND VARIA;Lu;0;L;1F19 0300;;;;N;;;;1F13; -1F1C;GREEK CAPITAL LETTER EPSILON WITH PSILI AND OXIA;Lu;0;L;1F18 0301;;;;N;;;;1F14; -1F1D;GREEK CAPITAL LETTER EPSILON WITH DASIA AND OXIA;Lu;0;L;1F19 0301;;;;N;;;;1F15; -1F20;GREEK SMALL LETTER ETA WITH PSILI;Ll;0;L;03B7 0313;;;;N;;;1F28;;1F28 -1F21;GREEK SMALL LETTER ETA WITH DASIA;Ll;0;L;03B7 0314;;;;N;;;1F29;;1F29 -1F22;GREEK SMALL LETTER ETA WITH PSILI AND VARIA;Ll;0;L;1F20 0300;;;;N;;;1F2A;;1F2A -1F23;GREEK SMALL LETTER ETA WITH DASIA AND VARIA;Ll;0;L;1F21 0300;;;;N;;;1F2B;;1F2B -1F24;GREEK SMALL LETTER ETA WITH PSILI AND OXIA;Ll;0;L;1F20 0301;;;;N;;;1F2C;;1F2C -1F25;GREEK SMALL LETTER ETA WITH DASIA AND OXIA;Ll;0;L;1F21 0301;;;;N;;;1F2D;;1F2D -1F26;GREEK SMALL LETTER ETA WITH PSILI AND PERISPOMENI;Ll;0;L;1F20 0342;;;;N;;;1F2E;;1F2E -1F27;GREEK SMALL LETTER ETA WITH DASIA AND PERISPOMENI;Ll;0;L;1F21 0342;;;;N;;;1F2F;;1F2F -1F28;GREEK CAPITAL LETTER ETA WITH PSILI;Lu;0;L;0397 0313;;;;N;;;;1F20; -1F29;GREEK CAPITAL LETTER ETA WITH DASIA;Lu;0;L;0397 0314;;;;N;;;;1F21; -1F2A;GREEK CAPITAL LETTER ETA WITH PSILI AND VARIA;Lu;0;L;1F28 0300;;;;N;;;;1F22; -1F2B;GREEK CAPITAL LETTER ETA WITH DASIA AND VARIA;Lu;0;L;1F29 0300;;;;N;;;;1F23; -1F2C;GREEK CAPITAL LETTER ETA WITH PSILI AND OXIA;Lu;0;L;1F28 0301;;;;N;;;;1F24; -1F2D;GREEK CAPITAL LETTER ETA WITH DASIA AND OXIA;Lu;0;L;1F29 0301;;;;N;;;;1F25; -1F2E;GREEK CAPITAL LETTER ETA WITH PSILI AND PERISPOMENI;Lu;0;L;1F28 0342;;;;N;;;;1F26; -1F2F;GREEK CAPITAL LETTER ETA WITH DASIA AND PERISPOMENI;Lu;0;L;1F29 0342;;;;N;;;;1F27; -1F30;GREEK SMALL LETTER IOTA WITH PSILI;Ll;0;L;03B9 0313;;;;N;;;1F38;;1F38 -1F31;GREEK SMALL LETTER IOTA WITH DASIA;Ll;0;L;03B9 0314;;;;N;;;1F39;;1F39 -1F32;GREEK SMALL LETTER IOTA WITH PSILI AND VARIA;Ll;0;L;1F30 0300;;;;N;;;1F3A;;1F3A -1F33;GREEK SMALL LETTER IOTA WITH DASIA AND VARIA;Ll;0;L;1F31 0300;;;;N;;;1F3B;;1F3B -1F34;GREEK SMALL LETTER IOTA WITH PSILI AND OXIA;Ll;0;L;1F30 0301;;;;N;;;1F3C;;1F3C -1F35;GREEK SMALL LETTER IOTA WITH DASIA AND OXIA;Ll;0;L;1F31 0301;;;;N;;;1F3D;;1F3D -1F36;GREEK SMALL LETTER IOTA WITH PSILI AND PERISPOMENI;Ll;0;L;1F30 0342;;;;N;;;1F3E;;1F3E -1F37;GREEK SMALL LETTER IOTA WITH DASIA AND PERISPOMENI;Ll;0;L;1F31 0342;;;;N;;;1F3F;;1F3F -1F38;GREEK CAPITAL LETTER IOTA WITH PSILI;Lu;0;L;0399 0313;;;;N;;;;1F30; -1F39;GREEK CAPITAL LETTER IOTA WITH DASIA;Lu;0;L;0399 0314;;;;N;;;;1F31; -1F3A;GREEK CAPITAL LETTER IOTA WITH PSILI AND VARIA;Lu;0;L;1F38 0300;;;;N;;;;1F32; -1F3B;GREEK CAPITAL LETTER IOTA WITH DASIA AND VARIA;Lu;0;L;1F39 0300;;;;N;;;;1F33; -1F3C;GREEK CAPITAL LETTER IOTA WITH PSILI AND OXIA;Lu;0;L;1F38 0301;;;;N;;;;1F34; -1F3D;GREEK CAPITAL LETTER IOTA WITH DASIA AND OXIA;Lu;0;L;1F39 0301;;;;N;;;;1F35; -1F3E;GREEK CAPITAL LETTER IOTA WITH PSILI AND PERISPOMENI;Lu;0;L;1F38 0342;;;;N;;;;1F36; -1F3F;GREEK CAPITAL LETTER IOTA WITH DASIA AND PERISPOMENI;Lu;0;L;1F39 0342;;;;N;;;;1F37; -1F40;GREEK SMALL LETTER OMICRON WITH PSILI;Ll;0;L;03BF 0313;;;;N;;;1F48;;1F48 -1F41;GREEK SMALL LETTER OMICRON WITH DASIA;Ll;0;L;03BF 0314;;;;N;;;1F49;;1F49 -1F42;GREEK SMALL LETTER OMICRON WITH PSILI AND VARIA;Ll;0;L;1F40 0300;;;;N;;;1F4A;;1F4A -1F43;GREEK SMALL LETTER OMICRON WITH DASIA AND VARIA;Ll;0;L;1F41 0300;;;;N;;;1F4B;;1F4B -1F44;GREEK SMALL LETTER OMICRON WITH PSILI AND OXIA;Ll;0;L;1F40 0301;;;;N;;;1F4C;;1F4C -1F45;GREEK SMALL LETTER OMICRON WITH DASIA AND OXIA;Ll;0;L;1F41 0301;;;;N;;;1F4D;;1F4D -1F48;GREEK CAPITAL LETTER OMICRON WITH PSILI;Lu;0;L;039F 0313;;;;N;;;;1F40; -1F49;GREEK CAPITAL LETTER OMICRON WITH DASIA;Lu;0;L;039F 0314;;;;N;;;;1F41; -1F4A;GREEK CAPITAL LETTER OMICRON WITH PSILI AND VARIA;Lu;0;L;1F48 0300;;;;N;;;;1F42; -1F4B;GREEK CAPITAL LETTER OMICRON WITH DASIA AND VARIA;Lu;0;L;1F49 0300;;;;N;;;;1F43; -1F4C;GREEK CAPITAL LETTER OMICRON WITH PSILI AND OXIA;Lu;0;L;1F48 0301;;;;N;;;;1F44; -1F4D;GREEK CAPITAL LETTER OMICRON WITH DASIA AND OXIA;Lu;0;L;1F49 0301;;;;N;;;;1F45; -1F50;GREEK SMALL LETTER UPSILON WITH PSILI;Ll;0;L;03C5 0313;;;;N;;;;; -1F51;GREEK SMALL LETTER UPSILON WITH DASIA;Ll;0;L;03C5 0314;;;;N;;;1F59;;1F59 -1F52;GREEK SMALL LETTER UPSILON WITH PSILI AND VARIA;Ll;0;L;1F50 0300;;;;N;;;;; -1F53;GREEK SMALL LETTER UPSILON WITH DASIA AND VARIA;Ll;0;L;1F51 0300;;;;N;;;1F5B;;1F5B -1F54;GREEK SMALL LETTER UPSILON WITH PSILI AND OXIA;Ll;0;L;1F50 0301;;;;N;;;;; -1F55;GREEK SMALL LETTER UPSILON WITH DASIA AND OXIA;Ll;0;L;1F51 0301;;;;N;;;1F5D;;1F5D -1F56;GREEK SMALL LETTER UPSILON WITH PSILI AND PERISPOMENI;Ll;0;L;1F50 0342;;;;N;;;;; -1F57;GREEK SMALL LETTER UPSILON WITH DASIA AND PERISPOMENI;Ll;0;L;1F51 0342;;;;N;;;1F5F;;1F5F -1F59;GREEK CAPITAL LETTER UPSILON WITH DASIA;Lu;0;L;03A5 0314;;;;N;;;;1F51; -1F5B;GREEK CAPITAL LETTER UPSILON WITH DASIA AND VARIA;Lu;0;L;1F59 0300;;;;N;;;;1F53; -1F5D;GREEK CAPITAL LETTER UPSILON WITH DASIA AND OXIA;Lu;0;L;1F59 0301;;;;N;;;;1F55; -1F5F;GREEK CAPITAL LETTER UPSILON WITH DASIA AND PERISPOMENI;Lu;0;L;1F59 0342;;;;N;;;;1F57; -1F60;GREEK SMALL LETTER OMEGA WITH PSILI;Ll;0;L;03C9 0313;;;;N;;;1F68;;1F68 -1F61;GREEK SMALL LETTER OMEGA WITH DASIA;Ll;0;L;03C9 0314;;;;N;;;1F69;;1F69 -1F62;GREEK SMALL LETTER OMEGA WITH PSILI AND VARIA;Ll;0;L;1F60 0300;;;;N;;;1F6A;;1F6A -1F63;GREEK SMALL LETTER OMEGA WITH DASIA AND VARIA;Ll;0;L;1F61 0300;;;;N;;;1F6B;;1F6B -1F64;GREEK SMALL LETTER OMEGA WITH PSILI AND OXIA;Ll;0;L;1F60 0301;;;;N;;;1F6C;;1F6C -1F65;GREEK SMALL LETTER OMEGA WITH DASIA AND OXIA;Ll;0;L;1F61 0301;;;;N;;;1F6D;;1F6D -1F66;GREEK SMALL LETTER OMEGA WITH PSILI AND PERISPOMENI;Ll;0;L;1F60 0342;;;;N;;;1F6E;;1F6E -1F67;GREEK SMALL LETTER OMEGA WITH DASIA AND PERISPOMENI;Ll;0;L;1F61 0342;;;;N;;;1F6F;;1F6F -1F68;GREEK CAPITAL LETTER OMEGA WITH PSILI;Lu;0;L;03A9 0313;;;;N;;;;1F60; -1F69;GREEK CAPITAL LETTER OMEGA WITH DASIA;Lu;0;L;03A9 0314;;;;N;;;;1F61; -1F6A;GREEK CAPITAL LETTER OMEGA WITH PSILI AND VARIA;Lu;0;L;1F68 0300;;;;N;;;;1F62; -1F6B;GREEK CAPITAL LETTER OMEGA WITH DASIA AND VARIA;Lu;0;L;1F69 0300;;;;N;;;;1F63; -1F6C;GREEK CAPITAL LETTER OMEGA WITH PSILI AND OXIA;Lu;0;L;1F68 0301;;;;N;;;;1F64; -1F6D;GREEK CAPITAL LETTER OMEGA WITH DASIA AND OXIA;Lu;0;L;1F69 0301;;;;N;;;;1F65; -1F6E;GREEK CAPITAL LETTER OMEGA WITH PSILI AND PERISPOMENI;Lu;0;L;1F68 0342;;;;N;;;;1F66; -1F6F;GREEK CAPITAL LETTER OMEGA WITH DASIA AND PERISPOMENI;Lu;0;L;1F69 0342;;;;N;;;;1F67; -1F70;GREEK SMALL LETTER ALPHA WITH VARIA;Ll;0;L;03B1 0300;;;;N;;;1FBA;;1FBA -1F71;GREEK SMALL LETTER ALPHA WITH OXIA;Ll;0;L;03AC;;;;N;;;1FBB;;1FBB -1F72;GREEK SMALL LETTER EPSILON WITH VARIA;Ll;0;L;03B5 0300;;;;N;;;1FC8;;1FC8 -1F73;GREEK SMALL LETTER EPSILON WITH OXIA;Ll;0;L;03AD;;;;N;;;1FC9;;1FC9 -1F74;GREEK SMALL LETTER ETA WITH VARIA;Ll;0;L;03B7 0300;;;;N;;;1FCA;;1FCA -1F75;GREEK SMALL LETTER ETA WITH OXIA;Ll;0;L;03AE;;;;N;;;1FCB;;1FCB -1F76;GREEK SMALL LETTER IOTA WITH VARIA;Ll;0;L;03B9 0300;;;;N;;;1FDA;;1FDA -1F77;GREEK SMALL LETTER IOTA WITH OXIA;Ll;0;L;03AF;;;;N;;;1FDB;;1FDB -1F78;GREEK SMALL LETTER OMICRON WITH VARIA;Ll;0;L;03BF 0300;;;;N;;;1FF8;;1FF8 -1F79;GREEK SMALL LETTER OMICRON WITH OXIA;Ll;0;L;03CC;;;;N;;;1FF9;;1FF9 -1F7A;GREEK SMALL LETTER UPSILON WITH VARIA;Ll;0;L;03C5 0300;;;;N;;;1FEA;;1FEA -1F7B;GREEK SMALL LETTER UPSILON WITH OXIA;Ll;0;L;03CD;;;;N;;;1FEB;;1FEB -1F7C;GREEK SMALL LETTER OMEGA WITH VARIA;Ll;0;L;03C9 0300;;;;N;;;1FFA;;1FFA -1F7D;GREEK SMALL LETTER OMEGA WITH OXIA;Ll;0;L;03CE;;;;N;;;1FFB;;1FFB -1F80;GREEK SMALL LETTER ALPHA WITH PSILI AND YPOGEGRAMMENI;Ll;0;L;1F00 0345;;;;N;;;1F88;;1F88 -1F81;GREEK SMALL LETTER ALPHA WITH DASIA AND YPOGEGRAMMENI;Ll;0;L;1F01 0345;;;;N;;;1F89;;1F89 -1F82;GREEK SMALL LETTER ALPHA WITH PSILI AND VARIA AND YPOGEGRAMMENI;Ll;0;L;1F02 0345;;;;N;;;1F8A;;1F8A -1F83;GREEK SMALL LETTER ALPHA WITH DASIA AND VARIA AND YPOGEGRAMMENI;Ll;0;L;1F03 0345;;;;N;;;1F8B;;1F8B -1F84;GREEK SMALL LETTER ALPHA WITH PSILI AND OXIA AND YPOGEGRAMMENI;Ll;0;L;1F04 0345;;;;N;;;1F8C;;1F8C -1F85;GREEK SMALL LETTER ALPHA WITH DASIA AND OXIA AND YPOGEGRAMMENI;Ll;0;L;1F05 0345;;;;N;;;1F8D;;1F8D -1F86;GREEK SMALL LETTER ALPHA WITH PSILI AND PERISPOMENI AND YPOGEGRAMMENI;Ll;0;L;1F06 0345;;;;N;;;1F8E;;1F8E -1F87;GREEK SMALL LETTER ALPHA WITH DASIA AND PERISPOMENI AND YPOGEGRAMMENI;Ll;0;L;1F07 0345;;;;N;;;1F8F;;1F8F -1F88;GREEK CAPITAL LETTER ALPHA WITH PSILI AND PROSGEGRAMMENI;Lt;0;L;1F08 0345;;;;N;;;;1F80; -1F89;GREEK CAPITAL LETTER ALPHA WITH DASIA AND PROSGEGRAMMENI;Lt;0;L;1F09 0345;;;;N;;;;1F81; -1F8A;GREEK CAPITAL LETTER ALPHA WITH PSILI AND VARIA AND PROSGEGRAMMENI;Lt;0;L;1F0A 0345;;;;N;;;;1F82; -1F8B;GREEK CAPITAL LETTER ALPHA WITH DASIA AND VARIA AND PROSGEGRAMMENI;Lt;0;L;1F0B 0345;;;;N;;;;1F83; -1F8C;GREEK CAPITAL LETTER ALPHA WITH PSILI AND OXIA AND PROSGEGRAMMENI;Lt;0;L;1F0C 0345;;;;N;;;;1F84; -1F8D;GREEK CAPITAL LETTER ALPHA WITH DASIA AND OXIA AND PROSGEGRAMMENI;Lt;0;L;1F0D 0345;;;;N;;;;1F85; -1F8E;GREEK CAPITAL LETTER ALPHA WITH PSILI AND PERISPOMENI AND PROSGEGRAMMENI;Lt;0;L;1F0E 0345;;;;N;;;;1F86; -1F8F;GREEK CAPITAL LETTER ALPHA WITH DASIA AND PERISPOMENI AND PROSGEGRAMMENI;Lt;0;L;1F0F 0345;;;;N;;;;1F87; -1F90;GREEK SMALL LETTER ETA WITH PSILI AND YPOGEGRAMMENI;Ll;0;L;1F20 0345;;;;N;;;1F98;;1F98 -1F91;GREEK SMALL LETTER ETA WITH DASIA AND YPOGEGRAMMENI;Ll;0;L;1F21 0345;;;;N;;;1F99;;1F99 -1F92;GREEK SMALL LETTER ETA WITH PSILI AND VARIA AND YPOGEGRAMMENI;Ll;0;L;1F22 0345;;;;N;;;1F9A;;1F9A -1F93;GREEK SMALL LETTER ETA WITH DASIA AND VARIA AND YPOGEGRAMMENI;Ll;0;L;1F23 0345;;;;N;;;1F9B;;1F9B -1F94;GREEK SMALL LETTER ETA WITH PSILI AND OXIA AND YPOGEGRAMMENI;Ll;0;L;1F24 0345;;;;N;;;1F9C;;1F9C -1F95;GREEK SMALL LETTER ETA WITH DASIA AND OXIA AND YPOGEGRAMMENI;Ll;0;L;1F25 0345;;;;N;;;1F9D;;1F9D -1F96;GREEK SMALL LETTER ETA WITH PSILI AND PERISPOMENI AND YPOGEGRAMMENI;Ll;0;L;1F26 0345;;;;N;;;1F9E;;1F9E -1F97;GREEK SMALL LETTER ETA WITH DASIA AND PERISPOMENI AND YPOGEGRAMMENI;Ll;0;L;1F27 0345;;;;N;;;1F9F;;1F9F -1F98;GREEK CAPITAL LETTER ETA WITH PSILI AND PROSGEGRAMMENI;Lt;0;L;1F28 0345;;;;N;;;;1F90; -1F99;GREEK CAPITAL LETTER ETA WITH DASIA AND PROSGEGRAMMENI;Lt;0;L;1F29 0345;;;;N;;;;1F91; -1F9A;GREEK CAPITAL LETTER ETA WITH PSILI AND VARIA AND PROSGEGRAMMENI;Lt;0;L;1F2A 0345;;;;N;;;;1F92; -1F9B;GREEK CAPITAL LETTER ETA WITH DASIA AND VARIA AND PROSGEGRAMMENI;Lt;0;L;1F2B 0345;;;;N;;;;1F93; -1F9C;GREEK CAPITAL LETTER ETA WITH PSILI AND OXIA AND PROSGEGRAMMENI;Lt;0;L;1F2C 0345;;;;N;;;;1F94; -1F9D;GREEK CAPITAL LETTER ETA WITH DASIA AND OXIA AND PROSGEGRAMMENI;Lt;0;L;1F2D 0345;;;;N;;;;1F95; -1F9E;GREEK CAPITAL LETTER ETA WITH PSILI AND PERISPOMENI AND PROSGEGRAMMENI;Lt;0;L;1F2E 0345;;;;N;;;;1F96; -1F9F;GREEK CAPITAL LETTER ETA WITH DASIA AND PERISPOMENI AND PROSGEGRAMMENI;Lt;0;L;1F2F 0345;;;;N;;;;1F97; -1FA0;GREEK SMALL LETTER OMEGA WITH PSILI AND YPOGEGRAMMENI;Ll;0;L;1F60 0345;;;;N;;;1FA8;;1FA8 -1FA1;GREEK SMALL LETTER OMEGA WITH DASIA AND YPOGEGRAMMENI;Ll;0;L;1F61 0345;;;;N;;;1FA9;;1FA9 -1FA2;GREEK SMALL LETTER OMEGA WITH PSILI AND VARIA AND YPOGEGRAMMENI;Ll;0;L;1F62 0345;;;;N;;;1FAA;;1FAA -1FA3;GREEK SMALL LETTER OMEGA WITH DASIA AND VARIA AND YPOGEGRAMMENI;Ll;0;L;1F63 0345;;;;N;;;1FAB;;1FAB -1FA4;GREEK SMALL LETTER OMEGA WITH PSILI AND OXIA AND YPOGEGRAMMENI;Ll;0;L;1F64 0345;;;;N;;;1FAC;;1FAC -1FA5;GREEK SMALL LETTER OMEGA WITH DASIA AND OXIA AND YPOGEGRAMMENI;Ll;0;L;1F65 0345;;;;N;;;1FAD;;1FAD -1FA6;GREEK SMALL LETTER OMEGA WITH PSILI AND PERISPOMENI AND YPOGEGRAMMENI;Ll;0;L;1F66 0345;;;;N;;;1FAE;;1FAE -1FA7;GREEK SMALL LETTER OMEGA WITH DASIA AND PERISPOMENI AND YPOGEGRAMMENI;Ll;0;L;1F67 0345;;;;N;;;1FAF;;1FAF -1FA8;GREEK CAPITAL LETTER OMEGA WITH PSILI AND PROSGEGRAMMENI;Lt;0;L;1F68 0345;;;;N;;;;1FA0; -1FA9;GREEK CAPITAL LETTER OMEGA WITH DASIA AND PROSGEGRAMMENI;Lt;0;L;1F69 0345;;;;N;;;;1FA1; -1FAA;GREEK CAPITAL LETTER OMEGA WITH PSILI AND VARIA AND PROSGEGRAMMENI;Lt;0;L;1F6A 0345;;;;N;;;;1FA2; -1FAB;GREEK CAPITAL LETTER OMEGA WITH DASIA AND VARIA AND PROSGEGRAMMENI;Lt;0;L;1F6B 0345;;;;N;;;;1FA3; -1FAC;GREEK CAPITAL LETTER OMEGA WITH PSILI AND OXIA AND PROSGEGRAMMENI;Lt;0;L;1F6C 0345;;;;N;;;;1FA4; -1FAD;GREEK CAPITAL LETTER OMEGA WITH DASIA AND OXIA AND PROSGEGRAMMENI;Lt;0;L;1F6D 0345;;;;N;;;;1FA5; -1FAE;GREEK CAPITAL LETTER OMEGA WITH PSILI AND PERISPOMENI AND PROSGEGRAMMENI;Lt;0;L;1F6E 0345;;;;N;;;;1FA6; -1FAF;GREEK CAPITAL LETTER OMEGA WITH DASIA AND PERISPOMENI AND PROSGEGRAMMENI;Lt;0;L;1F6F 0345;;;;N;;;;1FA7; -1FB0;GREEK SMALL LETTER ALPHA WITH VRACHY;Ll;0;L;03B1 0306;;;;N;;;1FB8;;1FB8 -1FB1;GREEK SMALL LETTER ALPHA WITH MACRON;Ll;0;L;03B1 0304;;;;N;;;1FB9;;1FB9 -1FB2;GREEK SMALL LETTER ALPHA WITH VARIA AND YPOGEGRAMMENI;Ll;0;L;1F70 0345;;;;N;;;;; -1FB3;GREEK SMALL LETTER ALPHA WITH YPOGEGRAMMENI;Ll;0;L;03B1 0345;;;;N;;;1FBC;;1FBC -1FB4;GREEK SMALL LETTER ALPHA WITH OXIA AND YPOGEGRAMMENI;Ll;0;L;03AC 0345;;;;N;;;;; -1FB6;GREEK SMALL LETTER ALPHA WITH PERISPOMENI;Ll;0;L;03B1 0342;;;;N;;;;; -1FB7;GREEK SMALL LETTER ALPHA WITH PERISPOMENI AND YPOGEGRAMMENI;Ll;0;L;1FB6 0345;;;;N;;;;; -1FB8;GREEK CAPITAL LETTER ALPHA WITH VRACHY;Lu;0;L;0391 0306;;;;N;;;;1FB0; -1FB9;GREEK CAPITAL LETTER ALPHA WITH MACRON;Lu;0;L;0391 0304;;;;N;;;;1FB1; -1FBA;GREEK CAPITAL LETTER ALPHA WITH VARIA;Lu;0;L;0391 0300;;;;N;;;;1F70; -1FBB;GREEK CAPITAL LETTER ALPHA WITH OXIA;Lu;0;L;0386;;;;N;;;;1F71; -1FBC;GREEK CAPITAL LETTER ALPHA WITH PROSGEGRAMMENI;Lt;0;L;0391 0345;;;;N;;;;1FB3; -1FBD;GREEK KORONIS;Sk;0;ON; 0020 0313;;;;N;;;;; -1FBE;GREEK PROSGEGRAMMENI;Ll;0;L;03B9;;;;N;;;0399;;0399 -1FBF;GREEK PSILI;Sk;0;ON; 0020 0313;;;;N;;;;; -1FC0;GREEK PERISPOMENI;Sk;0;ON; 0020 0342;;;;N;;;;; -1FC1;GREEK DIALYTIKA AND PERISPOMENI;Sk;0;ON;00A8 0342;;;;N;;;;; -1FC2;GREEK SMALL LETTER ETA WITH VARIA AND YPOGEGRAMMENI;Ll;0;L;1F74 0345;;;;N;;;;; -1FC3;GREEK SMALL LETTER ETA WITH YPOGEGRAMMENI;Ll;0;L;03B7 0345;;;;N;;;1FCC;;1FCC -1FC4;GREEK SMALL LETTER ETA WITH OXIA AND YPOGEGRAMMENI;Ll;0;L;03AE 0345;;;;N;;;;; -1FC6;GREEK SMALL LETTER ETA WITH PERISPOMENI;Ll;0;L;03B7 0342;;;;N;;;;; -1FC7;GREEK SMALL LETTER ETA WITH PERISPOMENI AND YPOGEGRAMMENI;Ll;0;L;1FC6 0345;;;;N;;;;; -1FC8;GREEK CAPITAL LETTER EPSILON WITH VARIA;Lu;0;L;0395 0300;;;;N;;;;1F72; -1FC9;GREEK CAPITAL LETTER EPSILON WITH OXIA;Lu;0;L;0388;;;;N;;;;1F73; -1FCA;GREEK CAPITAL LETTER ETA WITH VARIA;Lu;0;L;0397 0300;;;;N;;;;1F74; -1FCB;GREEK CAPITAL LETTER ETA WITH OXIA;Lu;0;L;0389;;;;N;;;;1F75; -1FCC;GREEK CAPITAL LETTER ETA WITH PROSGEGRAMMENI;Lt;0;L;0397 0345;;;;N;;;;1FC3; -1FCD;GREEK PSILI AND VARIA;Sk;0;ON;1FBF 0300;;;;N;;;;; -1FCE;GREEK PSILI AND OXIA;Sk;0;ON;1FBF 0301;;;;N;;;;; -1FCF;GREEK PSILI AND PERISPOMENI;Sk;0;ON;1FBF 0342;;;;N;;;;; -1FD0;GREEK SMALL LETTER IOTA WITH VRACHY;Ll;0;L;03B9 0306;;;;N;;;1FD8;;1FD8 -1FD1;GREEK SMALL LETTER IOTA WITH MACRON;Ll;0;L;03B9 0304;;;;N;;;1FD9;;1FD9 -1FD2;GREEK SMALL LETTER IOTA WITH DIALYTIKA AND VARIA;Ll;0;L;03CA 0300;;;;N;;;;; -1FD3;GREEK SMALL LETTER IOTA WITH DIALYTIKA AND OXIA;Ll;0;L;0390;;;;N;;;;; -1FD6;GREEK SMALL LETTER IOTA WITH PERISPOMENI;Ll;0;L;03B9 0342;;;;N;;;;; -1FD7;GREEK SMALL LETTER IOTA WITH DIALYTIKA AND PERISPOMENI;Ll;0;L;03CA 0342;;;;N;;;;; -1FD8;GREEK CAPITAL LETTER IOTA WITH VRACHY;Lu;0;L;0399 0306;;;;N;;;;1FD0; -1FD9;GREEK CAPITAL LETTER IOTA WITH MACRON;Lu;0;L;0399 0304;;;;N;;;;1FD1; -1FDA;GREEK CAPITAL LETTER IOTA WITH VARIA;Lu;0;L;0399 0300;;;;N;;;;1F76; -1FDB;GREEK CAPITAL LETTER IOTA WITH OXIA;Lu;0;L;038A;;;;N;;;;1F77; -1FDD;GREEK DASIA AND VARIA;Sk;0;ON;1FFE 0300;;;;N;;;;; -1FDE;GREEK DASIA AND OXIA;Sk;0;ON;1FFE 0301;;;;N;;;;; -1FDF;GREEK DASIA AND PERISPOMENI;Sk;0;ON;1FFE 0342;;;;N;;;;; -1FE0;GREEK SMALL LETTER UPSILON WITH VRACHY;Ll;0;L;03C5 0306;;;;N;;;1FE8;;1FE8 -1FE1;GREEK SMALL LETTER UPSILON WITH MACRON;Ll;0;L;03C5 0304;;;;N;;;1FE9;;1FE9 -1FE2;GREEK SMALL LETTER UPSILON WITH DIALYTIKA AND VARIA;Ll;0;L;03CB 0300;;;;N;;;;; -1FE3;GREEK SMALL LETTER UPSILON WITH DIALYTIKA AND OXIA;Ll;0;L;03B0;;;;N;;;;; -1FE4;GREEK SMALL LETTER RHO WITH PSILI;Ll;0;L;03C1 0313;;;;N;;;;; -1FE5;GREEK SMALL LETTER RHO WITH DASIA;Ll;0;L;03C1 0314;;;;N;;;1FEC;;1FEC -1FE6;GREEK SMALL LETTER UPSILON WITH PERISPOMENI;Ll;0;L;03C5 0342;;;;N;;;;; -1FE7;GREEK SMALL LETTER UPSILON WITH DIALYTIKA AND PERISPOMENI;Ll;0;L;03CB 0342;;;;N;;;;; -1FE8;GREEK CAPITAL LETTER UPSILON WITH VRACHY;Lu;0;L;03A5 0306;;;;N;;;;1FE0; -1FE9;GREEK CAPITAL LETTER UPSILON WITH MACRON;Lu;0;L;03A5 0304;;;;N;;;;1FE1; -1FEA;GREEK CAPITAL LETTER UPSILON WITH VARIA;Lu;0;L;03A5 0300;;;;N;;;;1F7A; -1FEB;GREEK CAPITAL LETTER UPSILON WITH OXIA;Lu;0;L;038E;;;;N;;;;1F7B; -1FEC;GREEK CAPITAL LETTER RHO WITH DASIA;Lu;0;L;03A1 0314;;;;N;;;;1FE5; -1FED;GREEK DIALYTIKA AND VARIA;Sk;0;ON;00A8 0300;;;;N;;;;; -1FEE;GREEK DIALYTIKA AND OXIA;Sk;0;ON;0385;;;;N;;;;; -1FEF;GREEK VARIA;Sk;0;ON;0060;;;;N;;;;; -1FF2;GREEK SMALL LETTER OMEGA WITH VARIA AND YPOGEGRAMMENI;Ll;0;L;1F7C 0345;;;;N;;;;; -1FF3;GREEK SMALL LETTER OMEGA WITH YPOGEGRAMMENI;Ll;0;L;03C9 0345;;;;N;;;1FFC;;1FFC -1FF4;GREEK SMALL LETTER OMEGA WITH OXIA AND YPOGEGRAMMENI;Ll;0;L;03CE 0345;;;;N;;;;; -1FF6;GREEK SMALL LETTER OMEGA WITH PERISPOMENI;Ll;0;L;03C9 0342;;;;N;;;;; -1FF7;GREEK SMALL LETTER OMEGA WITH PERISPOMENI AND YPOGEGRAMMENI;Ll;0;L;1FF6 0345;;;;N;;;;; -1FF8;GREEK CAPITAL LETTER OMICRON WITH VARIA;Lu;0;L;039F 0300;;;;N;;;;1F78; -1FF9;GREEK CAPITAL LETTER OMICRON WITH OXIA;Lu;0;L;038C;;;;N;;;;1F79; -1FFA;GREEK CAPITAL LETTER OMEGA WITH VARIA;Lu;0;L;03A9 0300;;;;N;;;;1F7C; -1FFB;GREEK CAPITAL LETTER OMEGA WITH OXIA;Lu;0;L;038F;;;;N;;;;1F7D; -1FFC;GREEK CAPITAL LETTER OMEGA WITH PROSGEGRAMMENI;Lt;0;L;03A9 0345;;;;N;;;;1FF3; -1FFD;GREEK OXIA;Sk;0;ON;00B4;;;;N;;;;; -1FFE;GREEK DASIA;Sk;0;ON; 0020 0314;;;;N;;;;; -2000;EN QUAD;Zs;0;WS;2002;;;;N;;;;; -2001;EM QUAD;Zs;0;WS;2003;;;;N;;;;; -2002;EN SPACE;Zs;0;WS; 0020;;;;N;;;;; -2003;EM SPACE;Zs;0;WS; 0020;;;;N;;;;; -2004;THREE-PER-EM SPACE;Zs;0;WS; 0020;;;;N;;;;; -2005;FOUR-PER-EM SPACE;Zs;0;WS; 0020;;;;N;;;;; -2006;SIX-PER-EM SPACE;Zs;0;WS; 0020;;;;N;;;;; -2007;FIGURE SPACE;Zs;0;WS; 0020;;;;N;;;;; -2008;PUNCTUATION SPACE;Zs;0;WS; 0020;;;;N;;;;; -2009;THIN SPACE;Zs;0;WS; 0020;;;;N;;;;; -200A;HAIR SPACE;Zs;0;WS; 0020;;;;N;;;;; -200B;ZERO WIDTH SPACE;Cf;0;BN;;;;;N;;;;; -200C;ZERO WIDTH NON-JOINER;Cf;0;BN;;;;;N;;;;; -200D;ZERO WIDTH JOINER;Cf;0;BN;;;;;N;;;;; -200E;LEFT-TO-RIGHT MARK;Cf;0;L;;;;;N;;;;; -200F;RIGHT-TO-LEFT MARK;Cf;0;R;;;;;N;;;;; -2010;HYPHEN;Pd;0;ON;;;;;N;;;;; -2011;NON-BREAKING HYPHEN;Pd;0;ON; 2010;;;;N;;;;; -2012;FIGURE DASH;Pd;0;ON;;;;;N;;;;; -2013;EN DASH;Pd;0;ON;;;;;N;;;;; -2014;EM DASH;Pd;0;ON;;;;;N;;;;; -2015;HORIZONTAL BAR;Pd;0;ON;;;;;N;QUOTATION DASH;;;; -2016;DOUBLE VERTICAL LINE;Po;0;ON;;;;;N;DOUBLE VERTICAL BAR;;;; -2017;DOUBLE LOW LINE;Po;0;ON; 0020 0333;;;;N;SPACING DOUBLE UNDERSCORE;;;; -2018;LEFT SINGLE QUOTATION MARK;Pi;0;ON;;;;;N;SINGLE TURNED COMMA QUOTATION MARK;;;; -2019;RIGHT SINGLE QUOTATION MARK;Pf;0;ON;;;;;N;SINGLE COMMA QUOTATION MARK;;;; -201A;SINGLE LOW-9 QUOTATION MARK;Ps;0;ON;;;;;N;LOW SINGLE COMMA QUOTATION MARK;;;; -201B;SINGLE HIGH-REVERSED-9 QUOTATION MARK;Pi;0;ON;;;;;N;SINGLE REVERSED COMMA QUOTATION MARK;;;; -201C;LEFT DOUBLE QUOTATION MARK;Pi;0;ON;;;;;N;DOUBLE TURNED COMMA QUOTATION MARK;;;; -201D;RIGHT DOUBLE QUOTATION MARK;Pf;0;ON;;;;;N;DOUBLE COMMA QUOTATION MARK;;;; -201E;DOUBLE LOW-9 QUOTATION MARK;Ps;0;ON;;;;;N;LOW DOUBLE COMMA QUOTATION MARK;;;; -201F;DOUBLE HIGH-REVERSED-9 QUOTATION MARK;Pi;0;ON;;;;;N;DOUBLE REVERSED COMMA QUOTATION MARK;;;; -2020;DAGGER;Po;0;ON;;;;;N;;;;; -2021;DOUBLE DAGGER;Po;0;ON;;;;;N;;;;; -2022;BULLET;Po;0;ON;;;;;N;;;;; -2023;TRIANGULAR BULLET;Po;0;ON;;;;;N;;;;; -2024;ONE DOT LEADER;Po;0;ON; 002E;;;;N;;;;; -2025;TWO DOT LEADER;Po;0;ON; 002E 002E;;;;N;;;;; -2026;HORIZONTAL ELLIPSIS;Po;0;ON; 002E 002E 002E;;;;N;;;;; -2027;HYPHENATION POINT;Po;0;ON;;;;;N;;;;; -2028;LINE SEPARATOR;Zl;0;WS;;;;;N;;;;; -2029;PARAGRAPH SEPARATOR;Zp;0;B;;;;;N;;;;; -202A;LEFT-TO-RIGHT EMBEDDING;Cf;0;LRE;;;;;N;;;;; -202B;RIGHT-TO-LEFT EMBEDDING;Cf;0;RLE;;;;;N;;;;; -202C;POP DIRECTIONAL FORMATTING;Cf;0;PDF;;;;;N;;;;; -202D;LEFT-TO-RIGHT OVERRIDE;Cf;0;LRO;;;;;N;;;;; -202E;RIGHT-TO-LEFT OVERRIDE;Cf;0;RLO;;;;;N;;;;; -202F;NARROW NO-BREAK SPACE;Zs;0;CS; 0020;;;;N;;;;; -2030;PER MILLE SIGN;Po;0;ET;;;;;N;;;;; -2031;PER TEN THOUSAND SIGN;Po;0;ET;;;;;N;;;;; -2032;PRIME;Po;0;ET;;;;;N;;;;; -2033;DOUBLE PRIME;Po;0;ET; 2032 2032;;;;N;;;;; -2034;TRIPLE PRIME;Po;0;ET; 2032 2032 2032;;;;N;;;;; -2035;REVERSED PRIME;Po;0;ON;;;;;N;;;;; -2036;REVERSED DOUBLE PRIME;Po;0;ON; 2035 2035;;;;N;;;;; -2037;REVERSED TRIPLE PRIME;Po;0;ON; 2035 2035 2035;;;;N;;;;; -2038;CARET;Po;0;ON;;;;;N;;;;; -2039;SINGLE LEFT-POINTING ANGLE QUOTATION MARK;Pi;0;ON;;;;;Y;LEFT POINTING SINGLE GUILLEMET;;;; -203A;SINGLE RIGHT-POINTING ANGLE QUOTATION MARK;Pf;0;ON;;;;;Y;RIGHT POINTING SINGLE GUILLEMET;;;; -203B;REFERENCE MARK;Po;0;ON;;;;;N;;;;; -203C;DOUBLE EXCLAMATION MARK;Po;0;ON; 0021 0021;;;;N;;;;; -203D;INTERROBANG;Po;0;ON;;;;;N;;;;; -203E;OVERLINE;Po;0;ON; 0020 0305;;;;N;SPACING OVERSCORE;;;; -203F;UNDERTIE;Pc;0;ON;;;;;N;;;;; -2040;CHARACTER TIE;Pc;0;ON;;;;;N;;;;; -2041;CARET INSERTION POINT;Po;0;ON;;;;;N;;;;; -2042;ASTERISM;Po;0;ON;;;;;N;;;;; -2043;HYPHEN BULLET;Po;0;ON;;;;;N;;;;; -2044;FRACTION SLASH;Sm;0;CS;;;;;N;;;;; -2045;LEFT SQUARE BRACKET WITH QUILL;Ps;0;ON;;;;;Y;;;;; -2046;RIGHT SQUARE BRACKET WITH QUILL;Pe;0;ON;;;;;Y;;;;; -2047;DOUBLE QUESTION MARK;Po;0;ON; 003F 003F;;;;N;;;;; -2048;QUESTION EXCLAMATION MARK;Po;0;ON; 003F 0021;;;;N;;;;; -2049;EXCLAMATION QUESTION MARK;Po;0;ON; 0021 003F;;;;N;;;;; -204A;TIRONIAN SIGN ET;Po;0;ON;;;;;N;;;;; -204B;REVERSED PILCROW SIGN;Po;0;ON;;;;;N;;;;; -204C;BLACK LEFTWARDS BULLET;Po;0;ON;;;;;N;;;;; -204D;BLACK RIGHTWARDS BULLET;Po;0;ON;;;;;N;;;;; -204E;LOW ASTERISK;Po;0;ON;;;;;N;;;;; -204F;REVERSED SEMICOLON;Po;0;ON;;;;;N;;;;; -2050;CLOSE UP;Po;0;ON;;;;;N;;;;; -2051;TWO ASTERISKS ALIGNED VERTICALLY;Po;0;ON;;;;;N;;;;; -2052;COMMERCIAL MINUS SIGN;Sm;0;ON;;;;;N;;;;; -2053;SWUNG DASH;Po;0;ON;;;;;N;;;;; -2054;INVERTED UNDERTIE;Pc;0;ON;;;;;N;;;;; -2055;FLOWER PUNCTUATION MARK;Po;0;ON;;;;;N;;;;; -2056;THREE DOT PUNCTUATION;Po;0;ON;;;;;N;;;;; -2057;QUADRUPLE PRIME;Po;0;ON; 2032 2032 2032 2032;;;;N;;;;; -2058;FOUR DOT PUNCTUATION;Po;0;ON;;;;;N;;;;; -2059;FIVE DOT PUNCTUATION;Po;0;ON;;;;;N;;;;; -205A;TWO DOT PUNCTUATION;Po;0;ON;;;;;N;;;;; -205B;FOUR DOT MARK;Po;0;ON;;;;;N;;;;; -205C;DOTTED CROSS;Po;0;ON;;;;;N;;;;; -205D;TRICOLON;Po;0;ON;;;;;N;;;;; -205E;VERTICAL FOUR DOTS;Po;0;ON;;;;;N;;;;; -205F;MEDIUM MATHEMATICAL SPACE;Zs;0;WS; 0020;;;;N;;;;; -2060;WORD JOINER;Cf;0;BN;;;;;N;;;;; -2061;FUNCTION APPLICATION;Cf;0;BN;;;;;N;;;;; -2062;INVISIBLE TIMES;Cf;0;BN;;;;;N;;;;; -2063;INVISIBLE SEPARATOR;Cf;0;BN;;;;;N;;;;; -2064;INVISIBLE PLUS;Cf;0;BN;;;;;N;;;;; -206A;INHIBIT SYMMETRIC SWAPPING;Cf;0;BN;;;;;N;;;;; -206B;ACTIVATE SYMMETRIC SWAPPING;Cf;0;BN;;;;;N;;;;; -206C;INHIBIT ARABIC FORM SHAPING;Cf;0;BN;;;;;N;;;;; -206D;ACTIVATE ARABIC FORM SHAPING;Cf;0;BN;;;;;N;;;;; -206E;NATIONAL DIGIT SHAPES;Cf;0;BN;;;;;N;;;;; -206F;NOMINAL DIGIT SHAPES;Cf;0;BN;;;;;N;;;;; -2070;SUPERSCRIPT ZERO;No;0;EN; 0030;;0;0;N;SUPERSCRIPT DIGIT ZERO;;;; -2071;SUPERSCRIPT LATIN SMALL LETTER I;Lm;0;L; 0069;;;;N;;;;; -2074;SUPERSCRIPT FOUR;No;0;EN; 0034;;4;4;N;SUPERSCRIPT DIGIT FOUR;;;; -2075;SUPERSCRIPT FIVE;No;0;EN; 0035;;5;5;N;SUPERSCRIPT DIGIT FIVE;;;; -2076;SUPERSCRIPT SIX;No;0;EN; 0036;;6;6;N;SUPERSCRIPT DIGIT SIX;;;; -2077;SUPERSCRIPT SEVEN;No;0;EN; 0037;;7;7;N;SUPERSCRIPT DIGIT SEVEN;;;; -2078;SUPERSCRIPT EIGHT;No;0;EN; 0038;;8;8;N;SUPERSCRIPT DIGIT EIGHT;;;; -2079;SUPERSCRIPT NINE;No;0;EN; 0039;;9;9;N;SUPERSCRIPT DIGIT NINE;;;; -207A;SUPERSCRIPT PLUS SIGN;Sm;0;ES; 002B;;;;N;;;;; -207B;SUPERSCRIPT MINUS;Sm;0;ES; 2212;;;;N;SUPERSCRIPT HYPHEN-MINUS;;;; -207C;SUPERSCRIPT EQUALS SIGN;Sm;0;ON; 003D;;;;N;;;;; -207D;SUPERSCRIPT LEFT PARENTHESIS;Ps;0;ON; 0028;;;;Y;SUPERSCRIPT OPENING PARENTHESIS;;;; -207E;SUPERSCRIPT RIGHT PARENTHESIS;Pe;0;ON; 0029;;;;Y;SUPERSCRIPT CLOSING PARENTHESIS;;;; -207F;SUPERSCRIPT LATIN SMALL LETTER N;Lm;0;L; 006E;;;;N;;;;; -2080;SUBSCRIPT ZERO;No;0;EN; 0030;;0;0;N;SUBSCRIPT DIGIT ZERO;;;; -2081;SUBSCRIPT ONE;No;0;EN; 0031;;1;1;N;SUBSCRIPT DIGIT ONE;;;; -2082;SUBSCRIPT TWO;No;0;EN; 0032;;2;2;N;SUBSCRIPT DIGIT TWO;;;; -2083;SUBSCRIPT THREE;No;0;EN; 0033;;3;3;N;SUBSCRIPT DIGIT THREE;;;; -2084;SUBSCRIPT FOUR;No;0;EN; 0034;;4;4;N;SUBSCRIPT DIGIT FOUR;;;; -2085;SUBSCRIPT FIVE;No;0;EN; 0035;;5;5;N;SUBSCRIPT DIGIT FIVE;;;; -2086;SUBSCRIPT SIX;No;0;EN; 0036;;6;6;N;SUBSCRIPT DIGIT SIX;;;; -2087;SUBSCRIPT SEVEN;No;0;EN; 0037;;7;7;N;SUBSCRIPT DIGIT SEVEN;;;; -2088;SUBSCRIPT EIGHT;No;0;EN; 0038;;8;8;N;SUBSCRIPT DIGIT EIGHT;;;; -2089;SUBSCRIPT NINE;No;0;EN; 0039;;9;9;N;SUBSCRIPT DIGIT NINE;;;; -208A;SUBSCRIPT PLUS SIGN;Sm;0;ES; 002B;;;;N;;;;; -208B;SUBSCRIPT MINUS;Sm;0;ES; 2212;;;;N;SUBSCRIPT HYPHEN-MINUS;;;; -208C;SUBSCRIPT EQUALS SIGN;Sm;0;ON; 003D;;;;N;;;;; -208D;SUBSCRIPT LEFT PARENTHESIS;Ps;0;ON; 0028;;;;Y;SUBSCRIPT OPENING PARENTHESIS;;;; -208E;SUBSCRIPT RIGHT PARENTHESIS;Pe;0;ON; 0029;;;;Y;SUBSCRIPT CLOSING PARENTHESIS;;;; -2090;LATIN SUBSCRIPT SMALL LETTER A;Lm;0;L; 0061;;;;N;;;;; -2091;LATIN SUBSCRIPT SMALL LETTER E;Lm;0;L; 0065;;;;N;;;;; -2092;LATIN SUBSCRIPT SMALL LETTER O;Lm;0;L; 006F;;;;N;;;;; -2093;LATIN SUBSCRIPT SMALL LETTER X;Lm;0;L; 0078;;;;N;;;;; -2094;LATIN SUBSCRIPT SMALL LETTER SCHWA;Lm;0;L; 0259;;;;N;;;;; -2095;LATIN SUBSCRIPT SMALL LETTER H;Lm;0;L; 0068;;;;N;;;;; -2096;LATIN SUBSCRIPT SMALL LETTER K;Lm;0;L; 006B;;;;N;;;;; -2097;LATIN SUBSCRIPT SMALL LETTER L;Lm;0;L; 006C;;;;N;;;;; -2098;LATIN SUBSCRIPT SMALL LETTER M;Lm;0;L; 006D;;;;N;;;;; -2099;LATIN SUBSCRIPT SMALL LETTER N;Lm;0;L; 006E;;;;N;;;;; -209A;LATIN SUBSCRIPT SMALL LETTER P;Lm;0;L; 0070;;;;N;;;;; -209B;LATIN SUBSCRIPT SMALL LETTER S;Lm;0;L; 0073;;;;N;;;;; -209C;LATIN SUBSCRIPT SMALL LETTER T;Lm;0;L; 0074;;;;N;;;;; -20A0;EURO-CURRENCY SIGN;Sc;0;ET;;;;;N;;;;; -20A1;COLON SIGN;Sc;0;ET;;;;;N;;;;; -20A2;CRUZEIRO SIGN;Sc;0;ET;;;;;N;;;;; -20A3;FRENCH FRANC SIGN;Sc;0;ET;;;;;N;;;;; -20A4;LIRA SIGN;Sc;0;ET;;;;;N;;;;; -20A5;MILL SIGN;Sc;0;ET;;;;;N;;;;; -20A6;NAIRA SIGN;Sc;0;ET;;;;;N;;;;; -20A7;PESETA SIGN;Sc;0;ET;;;;;N;;;;; -20A8;RUPEE SIGN;Sc;0;ET; 0052 0073;;;;N;;;;; -20A9;WON SIGN;Sc;0;ET;;;;;N;;;;; -20AA;NEW SHEQEL SIGN;Sc;0;ET;;;;;N;;;;; -20AB;DONG SIGN;Sc;0;ET;;;;;N;;;;; -20AC;EURO SIGN;Sc;0;ET;;;;;N;;;;; -20AD;KIP SIGN;Sc;0;ET;;;;;N;;;;; -20AE;TUGRIK SIGN;Sc;0;ET;;;;;N;;;;; -20AF;DRACHMA SIGN;Sc;0;ET;;;;;N;;;;; -20B0;GERMAN PENNY SIGN;Sc;0;ET;;;;;N;;;;; -20B1;PESO SIGN;Sc;0;ET;;;;;N;;;;; -20B2;GUARANI SIGN;Sc;0;ET;;;;;N;;;;; -20B3;AUSTRAL SIGN;Sc;0;ET;;;;;N;;;;; -20B4;HRYVNIA SIGN;Sc;0;ET;;;;;N;;;;; -20B5;CEDI SIGN;Sc;0;ET;;;;;N;;;;; -20B6;LIVRE TOURNOIS SIGN;Sc;0;ET;;;;;N;;;;; -20B7;SPESMILO SIGN;Sc;0;ET;;;;;N;;;;; -20B8;TENGE SIGN;Sc;0;ET;;;;;N;;;;; -20B9;INDIAN RUPEE SIGN;Sc;0;ET;;;;;N;;;;; -20D0;COMBINING LEFT HARPOON ABOVE;Mn;230;NSM;;;;;N;NON-SPACING LEFT HARPOON ABOVE;;;; -20D1;COMBINING RIGHT HARPOON ABOVE;Mn;230;NSM;;;;;N;NON-SPACING RIGHT HARPOON ABOVE;;;; -20D2;COMBINING LONG VERTICAL LINE OVERLAY;Mn;1;NSM;;;;;N;NON-SPACING LONG VERTICAL BAR OVERLAY;;;; -20D3;COMBINING SHORT VERTICAL LINE OVERLAY;Mn;1;NSM;;;;;N;NON-SPACING SHORT VERTICAL BAR OVERLAY;;;; -20D4;COMBINING ANTICLOCKWISE ARROW ABOVE;Mn;230;NSM;;;;;N;NON-SPACING ANTICLOCKWISE ARROW ABOVE;;;; -20D5;COMBINING CLOCKWISE ARROW ABOVE;Mn;230;NSM;;;;;N;NON-SPACING CLOCKWISE ARROW ABOVE;;;; -20D6;COMBINING LEFT ARROW ABOVE;Mn;230;NSM;;;;;N;NON-SPACING LEFT ARROW ABOVE;;;; -20D7;COMBINING RIGHT ARROW ABOVE;Mn;230;NSM;;;;;N;NON-SPACING RIGHT ARROW ABOVE;;;; -20D8;COMBINING RING OVERLAY;Mn;1;NSM;;;;;N;NON-SPACING RING OVERLAY;;;; -20D9;COMBINING CLOCKWISE RING OVERLAY;Mn;1;NSM;;;;;N;NON-SPACING CLOCKWISE RING OVERLAY;;;; -20DA;COMBINING ANTICLOCKWISE RING OVERLAY;Mn;1;NSM;;;;;N;NON-SPACING ANTICLOCKWISE RING OVERLAY;;;; -20DB;COMBINING THREE DOTS ABOVE;Mn;230;NSM;;;;;N;NON-SPACING THREE DOTS ABOVE;;;; -20DC;COMBINING FOUR DOTS ABOVE;Mn;230;NSM;;;;;N;NON-SPACING FOUR DOTS ABOVE;;;; -20DD;COMBINING ENCLOSING CIRCLE;Me;0;NSM;;;;;N;ENCLOSING CIRCLE;;;; -20DE;COMBINING ENCLOSING SQUARE;Me;0;NSM;;;;;N;ENCLOSING SQUARE;;;; -20DF;COMBINING ENCLOSING DIAMOND;Me;0;NSM;;;;;N;ENCLOSING DIAMOND;;;; -20E0;COMBINING ENCLOSING CIRCLE BACKSLASH;Me;0;NSM;;;;;N;ENCLOSING CIRCLE SLASH;;;; -20E1;COMBINING LEFT RIGHT ARROW ABOVE;Mn;230;NSM;;;;;N;NON-SPACING LEFT RIGHT ARROW ABOVE;;;; -20E2;COMBINING ENCLOSING SCREEN;Me;0;NSM;;;;;N;;;;; -20E3;COMBINING ENCLOSING KEYCAP;Me;0;NSM;;;;;N;;;;; -20E4;COMBINING ENCLOSING UPWARD POINTING TRIANGLE;Me;0;NSM;;;;;N;;;;; -20E5;COMBINING REVERSE SOLIDUS OVERLAY;Mn;1;NSM;;;;;N;;;;; -20E6;COMBINING DOUBLE VERTICAL STROKE OVERLAY;Mn;1;NSM;;;;;N;;;;; -20E7;COMBINING ANNUITY SYMBOL;Mn;230;NSM;;;;;N;;;;; -20E8;COMBINING TRIPLE UNDERDOT;Mn;220;NSM;;;;;N;;;;; -20E9;COMBINING WIDE BRIDGE ABOVE;Mn;230;NSM;;;;;N;;;;; -20EA;COMBINING LEFTWARDS ARROW OVERLAY;Mn;1;NSM;;;;;N;;;;; -20EB;COMBINING LONG DOUBLE SOLIDUS OVERLAY;Mn;1;NSM;;;;;N;;;;; -20EC;COMBINING RIGHTWARDS HARPOON WITH BARB DOWNWARDS;Mn;220;NSM;;;;;N;;;;; -20ED;COMBINING LEFTWARDS HARPOON WITH BARB DOWNWARDS;Mn;220;NSM;;;;;N;;;;; -20EE;COMBINING LEFT ARROW BELOW;Mn;220;NSM;;;;;N;;;;; -20EF;COMBINING RIGHT ARROW BELOW;Mn;220;NSM;;;;;N;;;;; -20F0;COMBINING ASTERISK ABOVE;Mn;230;NSM;;;;;N;;;;; -2100;ACCOUNT OF;So;0;ON; 0061 002F 0063;;;;N;;;;; -2101;ADDRESSED TO THE SUBJECT;So;0;ON; 0061 002F 0073;;;;N;;;;; -2102;DOUBLE-STRUCK CAPITAL C;Lu;0;L; 0043;;;;N;DOUBLE-STRUCK C;;;; -2103;DEGREE CELSIUS;So;0;ON; 00B0 0043;;;;N;DEGREES CENTIGRADE;;;; -2104;CENTRE LINE SYMBOL;So;0;ON;;;;;N;C L SYMBOL;;;; -2105;CARE OF;So;0;ON; 0063 002F 006F;;;;N;;;;; -2106;CADA UNA;So;0;ON; 0063 002F 0075;;;;N;;;;; -2107;EULER CONSTANT;Lu;0;L; 0190;;;;N;EULERS;;;; -2108;SCRUPLE;So;0;ON;;;;;N;;;;; -2109;DEGREE FAHRENHEIT;So;0;ON; 00B0 0046;;;;N;DEGREES FAHRENHEIT;;;; -210A;SCRIPT SMALL G;Ll;0;L; 0067;;;;N;;;;; -210B;SCRIPT CAPITAL H;Lu;0;L; 0048;;;;N;SCRIPT H;;;; -210C;BLACK-LETTER CAPITAL H;Lu;0;L; 0048;;;;N;BLACK-LETTER H;;;; -210D;DOUBLE-STRUCK CAPITAL H;Lu;0;L; 0048;;;;N;DOUBLE-STRUCK H;;;; -210E;PLANCK CONSTANT;Ll;0;L; 0068;;;;N;;;;; -210F;PLANCK CONSTANT OVER TWO PI;Ll;0;L; 0127;;;;N;PLANCK CONSTANT OVER 2 PI;;;; -2110;SCRIPT CAPITAL I;Lu;0;L; 0049;;;;N;SCRIPT I;;;; -2111;BLACK-LETTER CAPITAL I;Lu;0;L; 0049;;;;N;BLACK-LETTER I;;;; -2112;SCRIPT CAPITAL L;Lu;0;L; 004C;;;;N;SCRIPT L;;;; -2113;SCRIPT SMALL L;Ll;0;L; 006C;;;;N;;;;; -2114;L B BAR SYMBOL;So;0;ON;;;;;N;;;;; -2115;DOUBLE-STRUCK CAPITAL N;Lu;0;L; 004E;;;;N;DOUBLE-STRUCK N;;;; -2116;NUMERO SIGN;So;0;ON; 004E 006F;;;;N;NUMERO;;;; -2117;SOUND RECORDING COPYRIGHT;So;0;ON;;;;;N;;;;; -2118;SCRIPT CAPITAL P;Sm;0;ON;;;;;N;SCRIPT P;;;; -2119;DOUBLE-STRUCK CAPITAL P;Lu;0;L; 0050;;;;N;DOUBLE-STRUCK P;;;; -211A;DOUBLE-STRUCK CAPITAL Q;Lu;0;L; 0051;;;;N;DOUBLE-STRUCK Q;;;; -211B;SCRIPT CAPITAL R;Lu;0;L; 0052;;;;N;SCRIPT R;;;; -211C;BLACK-LETTER CAPITAL R;Lu;0;L; 0052;;;;N;BLACK-LETTER R;;;; -211D;DOUBLE-STRUCK CAPITAL R;Lu;0;L; 0052;;;;N;DOUBLE-STRUCK R;;;; -211E;PRESCRIPTION TAKE;So;0;ON;;;;;N;;;;; -211F;RESPONSE;So;0;ON;;;;;N;;;;; -2120;SERVICE MARK;So;0;ON; 0053 004D;;;;N;;;;; -2121;TELEPHONE SIGN;So;0;ON; 0054 0045 004C;;;;N;T E L SYMBOL;;;; -2122;TRADE MARK SIGN;So;0;ON; 0054 004D;;;;N;TRADEMARK;;;; -2123;VERSICLE;So;0;ON;;;;;N;;;;; -2124;DOUBLE-STRUCK CAPITAL Z;Lu;0;L; 005A;;;;N;DOUBLE-STRUCK Z;;;; -2125;OUNCE SIGN;So;0;ON;;;;;N;OUNCE;;;; -2126;OHM SIGN;Lu;0;L;03A9;;;;N;OHM;;;03C9; -2127;INVERTED OHM SIGN;So;0;ON;;;;;N;MHO;;;; -2128;BLACK-LETTER CAPITAL Z;Lu;0;L; 005A;;;;N;BLACK-LETTER Z;;;; -2129;TURNED GREEK SMALL LETTER IOTA;So;0;ON;;;;;N;;;;; -212A;KELVIN SIGN;Lu;0;L;004B;;;;N;DEGREES KELVIN;;;006B; -212B;ANGSTROM SIGN;Lu;0;L;00C5;;;;N;ANGSTROM UNIT;;;00E5; -212C;SCRIPT CAPITAL B;Lu;0;L; 0042;;;;N;SCRIPT B;;;; -212D;BLACK-LETTER CAPITAL C;Lu;0;L; 0043;;;;N;BLACK-LETTER C;;;; -212E;ESTIMATED SYMBOL;So;0;ET;;;;;N;;;;; -212F;SCRIPT SMALL E;Ll;0;L; 0065;;;;N;;;;; -2130;SCRIPT CAPITAL E;Lu;0;L; 0045;;;;N;SCRIPT E;;;; -2131;SCRIPT CAPITAL F;Lu;0;L; 0046;;;;N;SCRIPT F;;;; -2132;TURNED CAPITAL F;Lu;0;L;;;;;N;TURNED F;;;214E; -2133;SCRIPT CAPITAL M;Lu;0;L; 004D;;;;N;SCRIPT M;;;; -2134;SCRIPT SMALL O;Ll;0;L; 006F;;;;N;;;;; -2135;ALEF SYMBOL;Lo;0;L; 05D0;;;;N;FIRST TRANSFINITE CARDINAL;;;; -2136;BET SYMBOL;Lo;0;L; 05D1;;;;N;SECOND TRANSFINITE CARDINAL;;;; -2137;GIMEL SYMBOL;Lo;0;L; 05D2;;;;N;THIRD TRANSFINITE CARDINAL;;;; -2138;DALET SYMBOL;Lo;0;L; 05D3;;;;N;FOURTH TRANSFINITE CARDINAL;;;; -2139;INFORMATION SOURCE;Ll;0;L; 0069;;;;N;;;;; -213A;ROTATED CAPITAL Q;So;0;ON;;;;;N;;;;; -213B;FACSIMILE SIGN;So;0;ON; 0046 0041 0058;;;;N;;;;; -213C;DOUBLE-STRUCK SMALL PI;Ll;0;L; 03C0;;;;N;;;;; -213D;DOUBLE-STRUCK SMALL GAMMA;Ll;0;L; 03B3;;;;N;;;;; -213E;DOUBLE-STRUCK CAPITAL GAMMA;Lu;0;L; 0393;;;;N;;;;; -213F;DOUBLE-STRUCK CAPITAL PI;Lu;0;L; 03A0;;;;N;;;;; -2140;DOUBLE-STRUCK N-ARY SUMMATION;Sm;0;ON; 2211;;;;Y;;;;; -2141;TURNED SANS-SERIF CAPITAL G;Sm;0;ON;;;;;N;;;;; -2142;TURNED SANS-SERIF CAPITAL L;Sm;0;ON;;;;;N;;;;; -2143;REVERSED SANS-SERIF CAPITAL L;Sm;0;ON;;;;;N;;;;; -2144;TURNED SANS-SERIF CAPITAL Y;Sm;0;ON;;;;;N;;;;; -2145;DOUBLE-STRUCK ITALIC CAPITAL D;Lu;0;L; 0044;;;;N;;;;; -2146;DOUBLE-STRUCK ITALIC SMALL D;Ll;0;L; 0064;;;;N;;;;; -2147;DOUBLE-STRUCK ITALIC SMALL E;Ll;0;L; 0065;;;;N;;;;; -2148;DOUBLE-STRUCK ITALIC SMALL I;Ll;0;L; 0069;;;;N;;;;; -2149;DOUBLE-STRUCK ITALIC SMALL J;Ll;0;L; 006A;;;;N;;;;; -214A;PROPERTY LINE;So;0;ON;;;;;N;;;;; -214B;TURNED AMPERSAND;Sm;0;ON;;;;;N;;;;; -214C;PER SIGN;So;0;ON;;;;;N;;;;; -214D;AKTIESELSKAB;So;0;ON;;;;;N;;;;; -214E;TURNED SMALL F;Ll;0;L;;;;;N;;;2132;;2132 -214F;SYMBOL FOR SAMARITAN SOURCE;So;0;L;;;;;N;;;;; -2150;VULGAR FRACTION ONE SEVENTH;No;0;ON; 0031 2044 0037;;;1/7;N;;;;; -2151;VULGAR FRACTION ONE NINTH;No;0;ON; 0031 2044 0039;;;1/9;N;;;;; -2152;VULGAR FRACTION ONE TENTH;No;0;ON; 0031 2044 0031 0030;;;1/10;N;;;;; -2153;VULGAR FRACTION ONE THIRD;No;0;ON; 0031 2044 0033;;;1/3;N;FRACTION ONE THIRD;;;; -2154;VULGAR FRACTION TWO THIRDS;No;0;ON; 0032 2044 0033;;;2/3;N;FRACTION TWO THIRDS;;;; -2155;VULGAR FRACTION ONE FIFTH;No;0;ON; 0031 2044 0035;;;1/5;N;FRACTION ONE FIFTH;;;; -2156;VULGAR FRACTION TWO FIFTHS;No;0;ON; 0032 2044 0035;;;2/5;N;FRACTION TWO FIFTHS;;;; -2157;VULGAR FRACTION THREE FIFTHS;No;0;ON; 0033 2044 0035;;;3/5;N;FRACTION THREE FIFTHS;;;; -2158;VULGAR FRACTION FOUR FIFTHS;No;0;ON; 0034 2044 0035;;;4/5;N;FRACTION FOUR FIFTHS;;;; -2159;VULGAR FRACTION ONE SIXTH;No;0;ON; 0031 2044 0036;;;1/6;N;FRACTION ONE SIXTH;;;; -215A;VULGAR FRACTION FIVE SIXTHS;No;0;ON; 0035 2044 0036;;;5/6;N;FRACTION FIVE SIXTHS;;;; -215B;VULGAR FRACTION ONE EIGHTH;No;0;ON; 0031 2044 0038;;;1/8;N;FRACTION ONE EIGHTH;;;; -215C;VULGAR FRACTION THREE EIGHTHS;No;0;ON; 0033 2044 0038;;;3/8;N;FRACTION THREE EIGHTHS;;;; -215D;VULGAR FRACTION FIVE EIGHTHS;No;0;ON; 0035 2044 0038;;;5/8;N;FRACTION FIVE EIGHTHS;;;; -215E;VULGAR FRACTION SEVEN EIGHTHS;No;0;ON; 0037 2044 0038;;;7/8;N;FRACTION SEVEN EIGHTHS;;;; -215F;FRACTION NUMERATOR ONE;No;0;ON; 0031 2044;;;1;N;;;;; -2160;ROMAN NUMERAL ONE;Nl;0;L; 0049;;;1;N;;;;2170; -2161;ROMAN NUMERAL TWO;Nl;0;L; 0049 0049;;;2;N;;;;2171; -2162;ROMAN NUMERAL THREE;Nl;0;L; 0049 0049 0049;;;3;N;;;;2172; -2163;ROMAN NUMERAL FOUR;Nl;0;L; 0049 0056;;;4;N;;;;2173; -2164;ROMAN NUMERAL FIVE;Nl;0;L; 0056;;;5;N;;;;2174; -2165;ROMAN NUMERAL SIX;Nl;0;L; 0056 0049;;;6;N;;;;2175; -2166;ROMAN NUMERAL SEVEN;Nl;0;L; 0056 0049 0049;;;7;N;;;;2176; -2167;ROMAN NUMERAL EIGHT;Nl;0;L; 0056 0049 0049 0049;;;8;N;;;;2177; -2168;ROMAN NUMERAL NINE;Nl;0;L; 0049 0058;;;9;N;;;;2178; -2169;ROMAN NUMERAL TEN;Nl;0;L; 0058;;;10;N;;;;2179; -216A;ROMAN NUMERAL ELEVEN;Nl;0;L; 0058 0049;;;11;N;;;;217A; -216B;ROMAN NUMERAL TWELVE;Nl;0;L; 0058 0049 0049;;;12;N;;;;217B; -216C;ROMAN NUMERAL FIFTY;Nl;0;L; 004C;;;50;N;;;;217C; -216D;ROMAN NUMERAL ONE HUNDRED;Nl;0;L; 0043;;;100;N;;;;217D; -216E;ROMAN NUMERAL FIVE HUNDRED;Nl;0;L; 0044;;;500;N;;;;217E; -216F;ROMAN NUMERAL ONE THOUSAND;Nl;0;L; 004D;;;1000;N;;;;217F; -2170;SMALL ROMAN NUMERAL ONE;Nl;0;L; 0069;;;1;N;;;2160;;2160 -2171;SMALL ROMAN NUMERAL TWO;Nl;0;L; 0069 0069;;;2;N;;;2161;;2161 -2172;SMALL ROMAN NUMERAL THREE;Nl;0;L; 0069 0069 0069;;;3;N;;;2162;;2162 -2173;SMALL ROMAN NUMERAL FOUR;Nl;0;L; 0069 0076;;;4;N;;;2163;;2163 -2174;SMALL ROMAN NUMERAL FIVE;Nl;0;L; 0076;;;5;N;;;2164;;2164 -2175;SMALL ROMAN NUMERAL SIX;Nl;0;L; 0076 0069;;;6;N;;;2165;;2165 -2176;SMALL ROMAN NUMERAL SEVEN;Nl;0;L; 0076 0069 0069;;;7;N;;;2166;;2166 -2177;SMALL ROMAN NUMERAL EIGHT;Nl;0;L; 0076 0069 0069 0069;;;8;N;;;2167;;2167 -2178;SMALL ROMAN NUMERAL NINE;Nl;0;L; 0069 0078;;;9;N;;;2168;;2168 -2179;SMALL ROMAN NUMERAL TEN;Nl;0;L; 0078;;;10;N;;;2169;;2169 -217A;SMALL ROMAN NUMERAL ELEVEN;Nl;0;L; 0078 0069;;;11;N;;;216A;;216A -217B;SMALL ROMAN NUMERAL TWELVE;Nl;0;L; 0078 0069 0069;;;12;N;;;216B;;216B -217C;SMALL ROMAN NUMERAL FIFTY;Nl;0;L; 006C;;;50;N;;;216C;;216C -217D;SMALL ROMAN NUMERAL ONE HUNDRED;Nl;0;L; 0063;;;100;N;;;216D;;216D -217E;SMALL ROMAN NUMERAL FIVE HUNDRED;Nl;0;L; 0064;;;500;N;;;216E;;216E -217F;SMALL ROMAN NUMERAL ONE THOUSAND;Nl;0;L; 006D;;;1000;N;;;216F;;216F -2180;ROMAN NUMERAL ONE THOUSAND C D;Nl;0;L;;;;1000;N;;;;; -2181;ROMAN NUMERAL FIVE THOUSAND;Nl;0;L;;;;5000;N;;;;; -2182;ROMAN NUMERAL TEN THOUSAND;Nl;0;L;;;;10000;N;;;;; -2183;ROMAN NUMERAL REVERSED ONE HUNDRED;Lu;0;L;;;;;N;;;;2184; -2184;LATIN SMALL LETTER REVERSED C;Ll;0;L;;;;;N;;;2183;;2183 -2185;ROMAN NUMERAL SIX LATE FORM;Nl;0;L;;;;6;N;;;;; -2186;ROMAN NUMERAL FIFTY EARLY FORM;Nl;0;L;;;;50;N;;;;; -2187;ROMAN NUMERAL FIFTY THOUSAND;Nl;0;L;;;;50000;N;;;;; -2188;ROMAN NUMERAL ONE HUNDRED THOUSAND;Nl;0;L;;;;100000;N;;;;; -2189;VULGAR FRACTION ZERO THIRDS;No;0;ON; 0030 2044 0033;;;0;N;;;;; -2190;LEFTWARDS ARROW;Sm;0;ON;;;;;N;LEFT ARROW;;;; -2191;UPWARDS ARROW;Sm;0;ON;;;;;N;UP ARROW;;;; -2192;RIGHTWARDS ARROW;Sm;0;ON;;;;;N;RIGHT ARROW;;;; -2193;DOWNWARDS ARROW;Sm;0;ON;;;;;N;DOWN ARROW;;;; -2194;LEFT RIGHT ARROW;Sm;0;ON;;;;;N;;;;; -2195;UP DOWN ARROW;So;0;ON;;;;;N;;;;; -2196;NORTH WEST ARROW;So;0;ON;;;;;N;UPPER LEFT ARROW;;;; -2197;NORTH EAST ARROW;So;0;ON;;;;;N;UPPER RIGHT ARROW;;;; -2198;SOUTH EAST ARROW;So;0;ON;;;;;N;LOWER RIGHT ARROW;;;; -2199;SOUTH WEST ARROW;So;0;ON;;;;;N;LOWER LEFT ARROW;;;; -219A;LEFTWARDS ARROW WITH STROKE;Sm;0;ON;2190 0338;;;;N;LEFT ARROW WITH STROKE;;;; -219B;RIGHTWARDS ARROW WITH STROKE;Sm;0;ON;2192 0338;;;;N;RIGHT ARROW WITH STROKE;;;; -219C;LEFTWARDS WAVE ARROW;So;0;ON;;;;;N;LEFT WAVE ARROW;;;; -219D;RIGHTWARDS WAVE ARROW;So;0;ON;;;;;N;RIGHT WAVE ARROW;;;; -219E;LEFTWARDS TWO HEADED ARROW;So;0;ON;;;;;N;LEFT TWO HEADED ARROW;;;; -219F;UPWARDS TWO HEADED ARROW;So;0;ON;;;;;N;UP TWO HEADED ARROW;;;; -21A0;RIGHTWARDS TWO HEADED ARROW;Sm;0;ON;;;;;N;RIGHT TWO HEADED ARROW;;;; -21A1;DOWNWARDS TWO HEADED ARROW;So;0;ON;;;;;N;DOWN TWO HEADED ARROW;;;; -21A2;LEFTWARDS ARROW WITH TAIL;So;0;ON;;;;;N;LEFT ARROW WITH TAIL;;;; -21A3;RIGHTWARDS ARROW WITH TAIL;Sm;0;ON;;;;;N;RIGHT ARROW WITH TAIL;;;; -21A4;LEFTWARDS ARROW FROM BAR;So;0;ON;;;;;N;LEFT ARROW FROM BAR;;;; -21A5;UPWARDS ARROW FROM BAR;So;0;ON;;;;;N;UP ARROW FROM BAR;;;; -21A6;RIGHTWARDS ARROW FROM BAR;Sm;0;ON;;;;;N;RIGHT ARROW FROM BAR;;;; -21A7;DOWNWARDS ARROW FROM BAR;So;0;ON;;;;;N;DOWN ARROW FROM BAR;;;; -21A8;UP DOWN ARROW WITH BASE;So;0;ON;;;;;N;;;;; -21A9;LEFTWARDS ARROW WITH HOOK;So;0;ON;;;;;N;LEFT ARROW WITH HOOK;;;; -21AA;RIGHTWARDS ARROW WITH HOOK;So;0;ON;;;;;N;RIGHT ARROW WITH HOOK;;;; -21AB;LEFTWARDS ARROW WITH LOOP;So;0;ON;;;;;N;LEFT ARROW WITH LOOP;;;; -21AC;RIGHTWARDS ARROW WITH LOOP;So;0;ON;;;;;N;RIGHT ARROW WITH LOOP;;;; -21AD;LEFT RIGHT WAVE ARROW;So;0;ON;;;;;N;;;;; -21AE;LEFT RIGHT ARROW WITH STROKE;Sm;0;ON;2194 0338;;;;N;;;;; -21AF;DOWNWARDS ZIGZAG ARROW;So;0;ON;;;;;N;DOWN ZIGZAG ARROW;;;; -21B0;UPWARDS ARROW WITH TIP LEFTWARDS;So;0;ON;;;;;N;UP ARROW WITH TIP LEFT;;;; -21B1;UPWARDS ARROW WITH TIP RIGHTWARDS;So;0;ON;;;;;N;UP ARROW WITH TIP RIGHT;;;; -21B2;DOWNWARDS ARROW WITH TIP LEFTWARDS;So;0;ON;;;;;N;DOWN ARROW WITH TIP LEFT;;;; -21B3;DOWNWARDS ARROW WITH TIP RIGHTWARDS;So;0;ON;;;;;N;DOWN ARROW WITH TIP RIGHT;;;; -21B4;RIGHTWARDS ARROW WITH CORNER DOWNWARDS;So;0;ON;;;;;N;RIGHT ARROW WITH CORNER DOWN;;;; -21B5;DOWNWARDS ARROW WITH CORNER LEFTWARDS;So;0;ON;;;;;N;DOWN ARROW WITH CORNER LEFT;;;; -21B6;ANTICLOCKWISE TOP SEMICIRCLE ARROW;So;0;ON;;;;;N;;;;; -21B7;CLOCKWISE TOP SEMICIRCLE ARROW;So;0;ON;;;;;N;;;;; -21B8;NORTH WEST ARROW TO LONG BAR;So;0;ON;;;;;N;UPPER LEFT ARROW TO LONG BAR;;;; -21B9;LEFTWARDS ARROW TO BAR OVER RIGHTWARDS ARROW TO BAR;So;0;ON;;;;;N;LEFT ARROW TO BAR OVER RIGHT ARROW TO BAR;;;; -21BA;ANTICLOCKWISE OPEN CIRCLE ARROW;So;0;ON;;;;;N;;;;; -21BB;CLOCKWISE OPEN CIRCLE ARROW;So;0;ON;;;;;N;;;;; -21BC;LEFTWARDS HARPOON WITH BARB UPWARDS;So;0;ON;;;;;N;LEFT HARPOON WITH BARB UP;;;; -21BD;LEFTWARDS HARPOON WITH BARB DOWNWARDS;So;0;ON;;;;;N;LEFT HARPOON WITH BARB DOWN;;;; -21BE;UPWARDS HARPOON WITH BARB RIGHTWARDS;So;0;ON;;;;;N;UP HARPOON WITH BARB RIGHT;;;; -21BF;UPWARDS HARPOON WITH BARB LEFTWARDS;So;0;ON;;;;;N;UP HARPOON WITH BARB LEFT;;;; -21C0;RIGHTWARDS HARPOON WITH BARB UPWARDS;So;0;ON;;;;;N;RIGHT HARPOON WITH BARB UP;;;; -21C1;RIGHTWARDS HARPOON WITH BARB DOWNWARDS;So;0;ON;;;;;N;RIGHT HARPOON WITH BARB DOWN;;;; -21C2;DOWNWARDS HARPOON WITH BARB RIGHTWARDS;So;0;ON;;;;;N;DOWN HARPOON WITH BARB RIGHT;;;; -21C3;DOWNWARDS HARPOON WITH BARB LEFTWARDS;So;0;ON;;;;;N;DOWN HARPOON WITH BARB LEFT;;;; -21C4;RIGHTWARDS ARROW OVER LEFTWARDS ARROW;So;0;ON;;;;;N;RIGHT ARROW OVER LEFT ARROW;;;; -21C5;UPWARDS ARROW LEFTWARDS OF DOWNWARDS ARROW;So;0;ON;;;;;N;UP ARROW LEFT OF DOWN ARROW;;;; -21C6;LEFTWARDS ARROW OVER RIGHTWARDS ARROW;So;0;ON;;;;;N;LEFT ARROW OVER RIGHT ARROW;;;; -21C7;LEFTWARDS PAIRED ARROWS;So;0;ON;;;;;N;LEFT PAIRED ARROWS;;;; -21C8;UPWARDS PAIRED ARROWS;So;0;ON;;;;;N;UP PAIRED ARROWS;;;; -21C9;RIGHTWARDS PAIRED ARROWS;So;0;ON;;;;;N;RIGHT PAIRED ARROWS;;;; -21CA;DOWNWARDS PAIRED ARROWS;So;0;ON;;;;;N;DOWN PAIRED ARROWS;;;; -21CB;LEFTWARDS HARPOON OVER RIGHTWARDS HARPOON;So;0;ON;;;;;N;LEFT HARPOON OVER RIGHT HARPOON;;;; -21CC;RIGHTWARDS HARPOON OVER LEFTWARDS HARPOON;So;0;ON;;;;;N;RIGHT HARPOON OVER LEFT HARPOON;;;; -21CD;LEFTWARDS DOUBLE ARROW WITH STROKE;So;0;ON;21D0 0338;;;;N;LEFT DOUBLE ARROW WITH STROKE;;;; -21CE;LEFT RIGHT DOUBLE ARROW WITH STROKE;Sm;0;ON;21D4 0338;;;;N;;;;; -21CF;RIGHTWARDS DOUBLE ARROW WITH STROKE;Sm;0;ON;21D2 0338;;;;N;RIGHT DOUBLE ARROW WITH STROKE;;;; -21D0;LEFTWARDS DOUBLE ARROW;So;0;ON;;;;;N;LEFT DOUBLE ARROW;;;; -21D1;UPWARDS DOUBLE ARROW;So;0;ON;;;;;N;UP DOUBLE ARROW;;;; -21D2;RIGHTWARDS DOUBLE ARROW;Sm;0;ON;;;;;N;RIGHT DOUBLE ARROW;;;; -21D3;DOWNWARDS DOUBLE ARROW;So;0;ON;;;;;N;DOWN DOUBLE ARROW;;;; -21D4;LEFT RIGHT DOUBLE ARROW;Sm;0;ON;;;;;N;;;;; -21D5;UP DOWN DOUBLE ARROW;So;0;ON;;;;;N;;;;; -21D6;NORTH WEST DOUBLE ARROW;So;0;ON;;;;;N;UPPER LEFT DOUBLE ARROW;;;; -21D7;NORTH EAST DOUBLE ARROW;So;0;ON;;;;;N;UPPER RIGHT DOUBLE ARROW;;;; -21D8;SOUTH EAST DOUBLE ARROW;So;0;ON;;;;;N;LOWER RIGHT DOUBLE ARROW;;;; -21D9;SOUTH WEST DOUBLE ARROW;So;0;ON;;;;;N;LOWER LEFT DOUBLE ARROW;;;; -21DA;LEFTWARDS TRIPLE ARROW;So;0;ON;;;;;N;LEFT TRIPLE ARROW;;;; -21DB;RIGHTWARDS TRIPLE ARROW;So;0;ON;;;;;N;RIGHT TRIPLE ARROW;;;; -21DC;LEFTWARDS SQUIGGLE ARROW;So;0;ON;;;;;N;LEFT SQUIGGLE ARROW;;;; -21DD;RIGHTWARDS SQUIGGLE ARROW;So;0;ON;;;;;N;RIGHT SQUIGGLE ARROW;;;; -21DE;UPWARDS ARROW WITH DOUBLE STROKE;So;0;ON;;;;;N;UP ARROW WITH DOUBLE STROKE;;;; -21DF;DOWNWARDS ARROW WITH DOUBLE STROKE;So;0;ON;;;;;N;DOWN ARROW WITH DOUBLE STROKE;;;; -21E0;LEFTWARDS DASHED ARROW;So;0;ON;;;;;N;LEFT DASHED ARROW;;;; -21E1;UPWARDS DASHED ARROW;So;0;ON;;;;;N;UP DASHED ARROW;;;; -21E2;RIGHTWARDS DASHED ARROW;So;0;ON;;;;;N;RIGHT DASHED ARROW;;;; -21E3;DOWNWARDS DASHED ARROW;So;0;ON;;;;;N;DOWN DASHED ARROW;;;; -21E4;LEFTWARDS ARROW TO BAR;So;0;ON;;;;;N;LEFT ARROW TO BAR;;;; -21E5;RIGHTWARDS ARROW TO BAR;So;0;ON;;;;;N;RIGHT ARROW TO BAR;;;; -21E6;LEFTWARDS WHITE ARROW;So;0;ON;;;;;N;WHITE LEFT ARROW;;;; -21E7;UPWARDS WHITE ARROW;So;0;ON;;;;;N;WHITE UP ARROW;;;; -21E8;RIGHTWARDS WHITE ARROW;So;0;ON;;;;;N;WHITE RIGHT ARROW;;;; -21E9;DOWNWARDS WHITE ARROW;So;0;ON;;;;;N;WHITE DOWN ARROW;;;; -21EA;UPWARDS WHITE ARROW FROM BAR;So;0;ON;;;;;N;WHITE UP ARROW FROM BAR;;;; -21EB;UPWARDS WHITE ARROW ON PEDESTAL;So;0;ON;;;;;N;;;;; -21EC;UPWARDS WHITE ARROW ON PEDESTAL WITH HORIZONTAL BAR;So;0;ON;;;;;N;;;;; -21ED;UPWARDS WHITE ARROW ON PEDESTAL WITH VERTICAL BAR;So;0;ON;;;;;N;;;;; -21EE;UPWARDS WHITE DOUBLE ARROW;So;0;ON;;;;;N;;;;; -21EF;UPWARDS WHITE DOUBLE ARROW ON PEDESTAL;So;0;ON;;;;;N;;;;; -21F0;RIGHTWARDS WHITE ARROW FROM WALL;So;0;ON;;;;;N;;;;; -21F1;NORTH WEST ARROW TO CORNER;So;0;ON;;;;;N;;;;; -21F2;SOUTH EAST ARROW TO CORNER;So;0;ON;;;;;N;;;;; -21F3;UP DOWN WHITE ARROW;So;0;ON;;;;;N;;;;; -21F4;RIGHT ARROW WITH SMALL CIRCLE;Sm;0;ON;;;;;N;;;;; -21F5;DOWNWARDS ARROW LEFTWARDS OF UPWARDS ARROW;Sm;0;ON;;;;;N;;;;; -21F6;THREE RIGHTWARDS ARROWS;Sm;0;ON;;;;;N;;;;; -21F7;LEFTWARDS ARROW WITH VERTICAL STROKE;Sm;0;ON;;;;;N;;;;; -21F8;RIGHTWARDS ARROW WITH VERTICAL STROKE;Sm;0;ON;;;;;N;;;;; -21F9;LEFT RIGHT ARROW WITH VERTICAL STROKE;Sm;0;ON;;;;;N;;;;; -21FA;LEFTWARDS ARROW WITH DOUBLE VERTICAL STROKE;Sm;0;ON;;;;;N;;;;; -21FB;RIGHTWARDS ARROW WITH DOUBLE VERTICAL STROKE;Sm;0;ON;;;;;N;;;;; -21FC;LEFT RIGHT ARROW WITH DOUBLE VERTICAL STROKE;Sm;0;ON;;;;;N;;;;; -21FD;LEFTWARDS OPEN-HEADED ARROW;Sm;0;ON;;;;;N;;;;; -21FE;RIGHTWARDS OPEN-HEADED ARROW;Sm;0;ON;;;;;N;;;;; -21FF;LEFT RIGHT OPEN-HEADED ARROW;Sm;0;ON;;;;;N;;;;; -2200;FOR ALL;Sm;0;ON;;;;;N;;;;; -2201;COMPLEMENT;Sm;0;ON;;;;;Y;;;;; -2202;PARTIAL DIFFERENTIAL;Sm;0;ON;;;;;Y;;;;; -2203;THERE EXISTS;Sm;0;ON;;;;;Y;;;;; -2204;THERE DOES NOT EXIST;Sm;0;ON;2203 0338;;;;Y;;;;; -2205;EMPTY SET;Sm;0;ON;;;;;N;;;;; -2206;INCREMENT;Sm;0;ON;;;;;N;;;;; -2207;NABLA;Sm;0;ON;;;;;N;;;;; -2208;ELEMENT OF;Sm;0;ON;;;;;Y;;;;; -2209;NOT AN ELEMENT OF;Sm;0;ON;2208 0338;;;;Y;;;;; -220A;SMALL ELEMENT OF;Sm;0;ON;;;;;Y;;;;; -220B;CONTAINS AS MEMBER;Sm;0;ON;;;;;Y;;;;; -220C;DOES NOT CONTAIN AS MEMBER;Sm;0;ON;220B 0338;;;;Y;;;;; -220D;SMALL CONTAINS AS MEMBER;Sm;0;ON;;;;;Y;;;;; -220E;END OF PROOF;Sm;0;ON;;;;;N;;;;; -220F;N-ARY PRODUCT;Sm;0;ON;;;;;N;;;;; -2210;N-ARY COPRODUCT;Sm;0;ON;;;;;N;;;;; -2211;N-ARY SUMMATION;Sm;0;ON;;;;;Y;;;;; -2212;MINUS SIGN;Sm;0;ES;;;;;N;;;;; -2213;MINUS-OR-PLUS SIGN;Sm;0;ET;;;;;N;;;;; -2214;DOT PLUS;Sm;0;ON;;;;;N;;;;; -2215;DIVISION SLASH;Sm;0;ON;;;;;Y;;;;; -2216;SET MINUS;Sm;0;ON;;;;;Y;;;;; -2217;ASTERISK OPERATOR;Sm;0;ON;;;;;N;;;;; -2218;RING OPERATOR;Sm;0;ON;;;;;N;;;;; -2219;BULLET OPERATOR;Sm;0;ON;;;;;N;;;;; -221A;SQUARE ROOT;Sm;0;ON;;;;;Y;;;;; -221B;CUBE ROOT;Sm;0;ON;;;;;Y;;;;; -221C;FOURTH ROOT;Sm;0;ON;;;;;Y;;;;; -221D;PROPORTIONAL TO;Sm;0;ON;;;;;Y;;;;; -221E;INFINITY;Sm;0;ON;;;;;N;;;;; -221F;RIGHT ANGLE;Sm;0;ON;;;;;Y;;;;; -2220;ANGLE;Sm;0;ON;;;;;Y;;;;; -2221;MEASURED ANGLE;Sm;0;ON;;;;;Y;;;;; -2222;SPHERICAL ANGLE;Sm;0;ON;;;;;Y;;;;; -2223;DIVIDES;Sm;0;ON;;;;;N;;;;; -2224;DOES NOT DIVIDE;Sm;0;ON;2223 0338;;;;Y;;;;; -2225;PARALLEL TO;Sm;0;ON;;;;;N;;;;; -2226;NOT PARALLEL TO;Sm;0;ON;2225 0338;;;;Y;;;;; -2227;LOGICAL AND;Sm;0;ON;;;;;N;;;;; -2228;LOGICAL OR;Sm;0;ON;;;;;N;;;;; -2229;INTERSECTION;Sm;0;ON;;;;;N;;;;; -222A;UNION;Sm;0;ON;;;;;N;;;;; -222B;INTEGRAL;Sm;0;ON;;;;;Y;;;;; -222C;DOUBLE INTEGRAL;Sm;0;ON; 222B 222B;;;;Y;;;;; -222D;TRIPLE INTEGRAL;Sm;0;ON; 222B 222B 222B;;;;Y;;;;; -222E;CONTOUR INTEGRAL;Sm;0;ON;;;;;Y;;;;; -222F;SURFACE INTEGRAL;Sm;0;ON; 222E 222E;;;;Y;;;;; -2230;VOLUME INTEGRAL;Sm;0;ON; 222E 222E 222E;;;;Y;;;;; -2231;CLOCKWISE INTEGRAL;Sm;0;ON;;;;;Y;;;;; -2232;CLOCKWISE CONTOUR INTEGRAL;Sm;0;ON;;;;;Y;;;;; -2233;ANTICLOCKWISE CONTOUR INTEGRAL;Sm;0;ON;;;;;Y;;;;; -2234;THEREFORE;Sm;0;ON;;;;;N;;;;; -2235;BECAUSE;Sm;0;ON;;;;;N;;;;; -2236;RATIO;Sm;0;ON;;;;;N;;;;; -2237;PROPORTION;Sm;0;ON;;;;;N;;;;; -2238;DOT MINUS;Sm;0;ON;;;;;N;;;;; -2239;EXCESS;Sm;0;ON;;;;;Y;;;;; -223A;GEOMETRIC PROPORTION;Sm;0;ON;;;;;N;;;;; -223B;HOMOTHETIC;Sm;0;ON;;;;;Y;;;;; -223C;TILDE OPERATOR;Sm;0;ON;;;;;Y;;;;; -223D;REVERSED TILDE;Sm;0;ON;;;;;Y;;;;; -223E;INVERTED LAZY S;Sm;0;ON;;;;;Y;;;;; -223F;SINE WAVE;Sm;0;ON;;;;;Y;;;;; -2240;WREATH PRODUCT;Sm;0;ON;;;;;Y;;;;; -2241;NOT TILDE;Sm;0;ON;223C 0338;;;;Y;;;;; -2242;MINUS TILDE;Sm;0;ON;;;;;Y;;;;; -2243;ASYMPTOTICALLY EQUAL TO;Sm;0;ON;;;;;Y;;;;; -2244;NOT ASYMPTOTICALLY EQUAL TO;Sm;0;ON;2243 0338;;;;Y;;;;; -2245;APPROXIMATELY EQUAL TO;Sm;0;ON;;;;;Y;;;;; -2246;APPROXIMATELY BUT NOT ACTUALLY EQUAL TO;Sm;0;ON;;;;;Y;;;;; -2247;NEITHER APPROXIMATELY NOR ACTUALLY EQUAL TO;Sm;0;ON;2245 0338;;;;Y;;;;; -2248;ALMOST EQUAL TO;Sm;0;ON;;;;;Y;;;;; -2249;NOT ALMOST EQUAL TO;Sm;0;ON;2248 0338;;;;Y;;;;; -224A;ALMOST EQUAL OR EQUAL TO;Sm;0;ON;;;;;Y;;;;; -224B;TRIPLE TILDE;Sm;0;ON;;;;;Y;;;;; -224C;ALL EQUAL TO;Sm;0;ON;;;;;Y;;;;; -224D;EQUIVALENT TO;Sm;0;ON;;;;;N;;;;; -224E;GEOMETRICALLY EQUIVALENT TO;Sm;0;ON;;;;;N;;;;; -224F;DIFFERENCE BETWEEN;Sm;0;ON;;;;;N;;;;; -2250;APPROACHES THE LIMIT;Sm;0;ON;;;;;N;;;;; -2251;GEOMETRICALLY EQUAL TO;Sm;0;ON;;;;;N;;;;; -2252;APPROXIMATELY EQUAL TO OR THE IMAGE OF;Sm;0;ON;;;;;Y;;;;; -2253;IMAGE OF OR APPROXIMATELY EQUAL TO;Sm;0;ON;;;;;Y;;;;; -2254;COLON EQUALS;Sm;0;ON;;;;;Y;COLON EQUAL;;;; -2255;EQUALS COLON;Sm;0;ON;;;;;Y;EQUAL COLON;;;; -2256;RING IN EQUAL TO;Sm;0;ON;;;;;N;;;;; -2257;RING EQUAL TO;Sm;0;ON;;;;;N;;;;; -2258;CORRESPONDS TO;Sm;0;ON;;;;;N;;;;; -2259;ESTIMATES;Sm;0;ON;;;;;N;;;;; -225A;EQUIANGULAR TO;Sm;0;ON;;;;;N;;;;; -225B;STAR EQUALS;Sm;0;ON;;;;;N;;;;; -225C;DELTA EQUAL TO;Sm;0;ON;;;;;N;;;;; -225D;EQUAL TO BY DEFINITION;Sm;0;ON;;;;;N;;;;; -225E;MEASURED BY;Sm;0;ON;;;;;N;;;;; -225F;QUESTIONED EQUAL TO;Sm;0;ON;;;;;Y;;;;; -2260;NOT EQUAL TO;Sm;0;ON;003D 0338;;;;Y;;;;; -2261;IDENTICAL TO;Sm;0;ON;;;;;N;;;;; -2262;NOT IDENTICAL TO;Sm;0;ON;2261 0338;;;;Y;;;;; -2263;STRICTLY EQUIVALENT TO;Sm;0;ON;;;;;N;;;;; -2264;LESS-THAN OR EQUAL TO;Sm;0;ON;;;;;Y;LESS THAN OR EQUAL TO;;;; -2265;GREATER-THAN OR EQUAL TO;Sm;0;ON;;;;;Y;GREATER THAN OR EQUAL TO;;;; -2266;LESS-THAN OVER EQUAL TO;Sm;0;ON;;;;;Y;LESS THAN OVER EQUAL TO;;;; -2267;GREATER-THAN OVER EQUAL TO;Sm;0;ON;;;;;Y;GREATER THAN OVER EQUAL TO;;;; -2268;LESS-THAN BUT NOT EQUAL TO;Sm;0;ON;;;;;Y;LESS THAN BUT NOT EQUAL TO;;;; -2269;GREATER-THAN BUT NOT EQUAL TO;Sm;0;ON;;;;;Y;GREATER THAN BUT NOT EQUAL TO;;;; -226A;MUCH LESS-THAN;Sm;0;ON;;;;;Y;MUCH LESS THAN;;;; -226B;MUCH GREATER-THAN;Sm;0;ON;;;;;Y;MUCH GREATER THAN;;;; -226C;BETWEEN;Sm;0;ON;;;;;N;;;;; -226D;NOT EQUIVALENT TO;Sm;0;ON;224D 0338;;;;N;;;;; -226E;NOT LESS-THAN;Sm;0;ON;003C 0338;;;;Y;NOT LESS THAN;;;; -226F;NOT GREATER-THAN;Sm;0;ON;003E 0338;;;;Y;NOT GREATER THAN;;;; -2270;NEITHER LESS-THAN NOR EQUAL TO;Sm;0;ON;2264 0338;;;;Y;NEITHER LESS THAN NOR EQUAL TO;;;; -2271;NEITHER GREATER-THAN NOR EQUAL TO;Sm;0;ON;2265 0338;;;;Y;NEITHER GREATER THAN NOR EQUAL TO;;;; -2272;LESS-THAN OR EQUIVALENT TO;Sm;0;ON;;;;;Y;LESS THAN OR EQUIVALENT TO;;;; -2273;GREATER-THAN OR EQUIVALENT TO;Sm;0;ON;;;;;Y;GREATER THAN OR EQUIVALENT TO;;;; -2274;NEITHER LESS-THAN NOR EQUIVALENT TO;Sm;0;ON;2272 0338;;;;Y;NEITHER LESS THAN NOR EQUIVALENT TO;;;; -2275;NEITHER GREATER-THAN NOR EQUIVALENT TO;Sm;0;ON;2273 0338;;;;Y;NEITHER GREATER THAN NOR EQUIVALENT TO;;;; -2276;LESS-THAN OR GREATER-THAN;Sm;0;ON;;;;;Y;LESS THAN OR GREATER THAN;;;; -2277;GREATER-THAN OR LESS-THAN;Sm;0;ON;;;;;Y;GREATER THAN OR LESS THAN;;;; -2278;NEITHER LESS-THAN NOR GREATER-THAN;Sm;0;ON;2276 0338;;;;Y;NEITHER LESS THAN NOR GREATER THAN;;;; -2279;NEITHER GREATER-THAN NOR LESS-THAN;Sm;0;ON;2277 0338;;;;Y;NEITHER GREATER THAN NOR LESS THAN;;;; -227A;PRECEDES;Sm;0;ON;;;;;Y;;;;; -227B;SUCCEEDS;Sm;0;ON;;;;;Y;;;;; -227C;PRECEDES OR EQUAL TO;Sm;0;ON;;;;;Y;;;;; -227D;SUCCEEDS OR EQUAL TO;Sm;0;ON;;;;;Y;;;;; -227E;PRECEDES OR EQUIVALENT TO;Sm;0;ON;;;;;Y;;;;; -227F;SUCCEEDS OR EQUIVALENT TO;Sm;0;ON;;;;;Y;;;;; -2280;DOES NOT PRECEDE;Sm;0;ON;227A 0338;;;;Y;;;;; -2281;DOES NOT SUCCEED;Sm;0;ON;227B 0338;;;;Y;;;;; -2282;SUBSET OF;Sm;0;ON;;;;;Y;;;;; -2283;SUPERSET OF;Sm;0;ON;;;;;Y;;;;; -2284;NOT A SUBSET OF;Sm;0;ON;2282 0338;;;;Y;;;;; -2285;NOT A SUPERSET OF;Sm;0;ON;2283 0338;;;;Y;;;;; -2286;SUBSET OF OR EQUAL TO;Sm;0;ON;;;;;Y;;;;; -2287;SUPERSET OF OR EQUAL TO;Sm;0;ON;;;;;Y;;;;; -2288;NEITHER A SUBSET OF NOR EQUAL TO;Sm;0;ON;2286 0338;;;;Y;;;;; -2289;NEITHER A SUPERSET OF NOR EQUAL TO;Sm;0;ON;2287 0338;;;;Y;;;;; -228A;SUBSET OF WITH NOT EQUAL TO;Sm;0;ON;;;;;Y;SUBSET OF OR NOT EQUAL TO;;;; -228B;SUPERSET OF WITH NOT EQUAL TO;Sm;0;ON;;;;;Y;SUPERSET OF OR NOT EQUAL TO;;;; -228C;MULTISET;Sm;0;ON;;;;;Y;;;;; -228D;MULTISET MULTIPLICATION;Sm;0;ON;;;;;N;;;;; -228E;MULTISET UNION;Sm;0;ON;;;;;N;;;;; -228F;SQUARE IMAGE OF;Sm;0;ON;;;;;Y;;;;; -2290;SQUARE ORIGINAL OF;Sm;0;ON;;;;;Y;;;;; -2291;SQUARE IMAGE OF OR EQUAL TO;Sm;0;ON;;;;;Y;;;;; -2292;SQUARE ORIGINAL OF OR EQUAL TO;Sm;0;ON;;;;;Y;;;;; -2293;SQUARE CAP;Sm;0;ON;;;;;N;;;;; -2294;SQUARE CUP;Sm;0;ON;;;;;N;;;;; -2295;CIRCLED PLUS;Sm;0;ON;;;;;N;;;;; -2296;CIRCLED MINUS;Sm;0;ON;;;;;N;;;;; -2297;CIRCLED TIMES;Sm;0;ON;;;;;N;;;;; -2298;CIRCLED DIVISION SLASH;Sm;0;ON;;;;;Y;;;;; -2299;CIRCLED DOT OPERATOR;Sm;0;ON;;;;;N;;;;; -229A;CIRCLED RING OPERATOR;Sm;0;ON;;;;;N;;;;; -229B;CIRCLED ASTERISK OPERATOR;Sm;0;ON;;;;;N;;;;; -229C;CIRCLED EQUALS;Sm;0;ON;;;;;N;;;;; -229D;CIRCLED DASH;Sm;0;ON;;;;;N;;;;; -229E;SQUARED PLUS;Sm;0;ON;;;;;N;;;;; -229F;SQUARED MINUS;Sm;0;ON;;;;;N;;;;; -22A0;SQUARED TIMES;Sm;0;ON;;;;;N;;;;; -22A1;SQUARED DOT OPERATOR;Sm;0;ON;;;;;N;;;;; -22A2;RIGHT TACK;Sm;0;ON;;;;;Y;;;;; -22A3;LEFT TACK;Sm;0;ON;;;;;Y;;;;; -22A4;DOWN TACK;Sm;0;ON;;;;;N;;;;; -22A5;UP TACK;Sm;0;ON;;;;;N;;;;; -22A6;ASSERTION;Sm;0;ON;;;;;Y;;;;; -22A7;MODELS;Sm;0;ON;;;;;Y;;;;; -22A8;TRUE;Sm;0;ON;;;;;Y;;;;; -22A9;FORCES;Sm;0;ON;;;;;Y;;;;; -22AA;TRIPLE VERTICAL BAR RIGHT TURNSTILE;Sm;0;ON;;;;;Y;;;;; -22AB;DOUBLE VERTICAL BAR DOUBLE RIGHT TURNSTILE;Sm;0;ON;;;;;Y;;;;; -22AC;DOES NOT PROVE;Sm;0;ON;22A2 0338;;;;Y;;;;; -22AD;NOT TRUE;Sm;0;ON;22A8 0338;;;;Y;;;;; -22AE;DOES NOT FORCE;Sm;0;ON;22A9 0338;;;;Y;;;;; -22AF;NEGATED DOUBLE VERTICAL BAR DOUBLE RIGHT TURNSTILE;Sm;0;ON;22AB 0338;;;;Y;;;;; -22B0;PRECEDES UNDER RELATION;Sm;0;ON;;;;;Y;;;;; -22B1;SUCCEEDS UNDER RELATION;Sm;0;ON;;;;;Y;;;;; -22B2;NORMAL SUBGROUP OF;Sm;0;ON;;;;;Y;;;;; -22B3;CONTAINS AS NORMAL SUBGROUP;Sm;0;ON;;;;;Y;;;;; -22B4;NORMAL SUBGROUP OF OR EQUAL TO;Sm;0;ON;;;;;Y;;;;; -22B5;CONTAINS AS NORMAL SUBGROUP OR EQUAL TO;Sm;0;ON;;;;;Y;;;;; -22B6;ORIGINAL OF;Sm;0;ON;;;;;Y;;;;; -22B7;IMAGE OF;Sm;0;ON;;;;;Y;;;;; -22B8;MULTIMAP;Sm;0;ON;;;;;Y;;;;; -22B9;HERMITIAN CONJUGATE MATRIX;Sm;0;ON;;;;;N;;;;; -22BA;INTERCALATE;Sm;0;ON;;;;;N;;;;; -22BB;XOR;Sm;0;ON;;;;;N;;;;; -22BC;NAND;Sm;0;ON;;;;;N;;;;; -22BD;NOR;Sm;0;ON;;;;;N;;;;; -22BE;RIGHT ANGLE WITH ARC;Sm;0;ON;;;;;Y;;;;; -22BF;RIGHT TRIANGLE;Sm;0;ON;;;;;Y;;;;; -22C0;N-ARY LOGICAL AND;Sm;0;ON;;;;;N;;;;; -22C1;N-ARY LOGICAL OR;Sm;0;ON;;;;;N;;;;; -22C2;N-ARY INTERSECTION;Sm;0;ON;;;;;N;;;;; -22C3;N-ARY UNION;Sm;0;ON;;;;;N;;;;; -22C4;DIAMOND OPERATOR;Sm;0;ON;;;;;N;;;;; -22C5;DOT OPERATOR;Sm;0;ON;;;;;N;;;;; -22C6;STAR OPERATOR;Sm;0;ON;;;;;N;;;;; -22C7;DIVISION TIMES;Sm;0;ON;;;;;N;;;;; -22C8;BOWTIE;Sm;0;ON;;;;;N;;;;; -22C9;LEFT NORMAL FACTOR SEMIDIRECT PRODUCT;Sm;0;ON;;;;;Y;;;;; -22CA;RIGHT NORMAL FACTOR SEMIDIRECT PRODUCT;Sm;0;ON;;;;;Y;;;;; -22CB;LEFT SEMIDIRECT PRODUCT;Sm;0;ON;;;;;Y;;;;; -22CC;RIGHT SEMIDIRECT PRODUCT;Sm;0;ON;;;;;Y;;;;; -22CD;REVERSED TILDE EQUALS;Sm;0;ON;;;;;Y;;;;; -22CE;CURLY LOGICAL OR;Sm;0;ON;;;;;N;;;;; -22CF;CURLY LOGICAL AND;Sm;0;ON;;;;;N;;;;; -22D0;DOUBLE SUBSET;Sm;0;ON;;;;;Y;;;;; -22D1;DOUBLE SUPERSET;Sm;0;ON;;;;;Y;;;;; -22D2;DOUBLE INTERSECTION;Sm;0;ON;;;;;N;;;;; -22D3;DOUBLE UNION;Sm;0;ON;;;;;N;;;;; -22D4;PITCHFORK;Sm;0;ON;;;;;N;;;;; -22D5;EQUAL AND PARALLEL TO;Sm;0;ON;;;;;N;;;;; -22D6;LESS-THAN WITH DOT;Sm;0;ON;;;;;Y;LESS THAN WITH DOT;;;; -22D7;GREATER-THAN WITH DOT;Sm;0;ON;;;;;Y;GREATER THAN WITH DOT;;;; -22D8;VERY MUCH LESS-THAN;Sm;0;ON;;;;;Y;VERY MUCH LESS THAN;;;; -22D9;VERY MUCH GREATER-THAN;Sm;0;ON;;;;;Y;VERY MUCH GREATER THAN;;;; -22DA;LESS-THAN EQUAL TO OR GREATER-THAN;Sm;0;ON;;;;;Y;LESS THAN EQUAL TO OR GREATER THAN;;;; -22DB;GREATER-THAN EQUAL TO OR LESS-THAN;Sm;0;ON;;;;;Y;GREATER THAN EQUAL TO OR LESS THAN;;;; -22DC;EQUAL TO OR LESS-THAN;Sm;0;ON;;;;;Y;EQUAL TO OR LESS THAN;;;; -22DD;EQUAL TO OR GREATER-THAN;Sm;0;ON;;;;;Y;EQUAL TO OR GREATER THAN;;;; -22DE;EQUAL TO OR PRECEDES;Sm;0;ON;;;;;Y;;;;; -22DF;EQUAL TO OR SUCCEEDS;Sm;0;ON;;;;;Y;;;;; -22E0;DOES NOT PRECEDE OR EQUAL;Sm;0;ON;227C 0338;;;;Y;;;;; -22E1;DOES NOT SUCCEED OR EQUAL;Sm;0;ON;227D 0338;;;;Y;;;;; -22E2;NOT SQUARE IMAGE OF OR EQUAL TO;Sm;0;ON;2291 0338;;;;Y;;;;; -22E3;NOT SQUARE ORIGINAL OF OR EQUAL TO;Sm;0;ON;2292 0338;;;;Y;;;;; -22E4;SQUARE IMAGE OF OR NOT EQUAL TO;Sm;0;ON;;;;;Y;;;;; -22E5;SQUARE ORIGINAL OF OR NOT EQUAL TO;Sm;0;ON;;;;;Y;;;;; -22E6;LESS-THAN BUT NOT EQUIVALENT TO;Sm;0;ON;;;;;Y;LESS THAN BUT NOT EQUIVALENT TO;;;; -22E7;GREATER-THAN BUT NOT EQUIVALENT TO;Sm;0;ON;;;;;Y;GREATER THAN BUT NOT EQUIVALENT TO;;;; -22E8;PRECEDES BUT NOT EQUIVALENT TO;Sm;0;ON;;;;;Y;;;;; -22E9;SUCCEEDS BUT NOT EQUIVALENT TO;Sm;0;ON;;;;;Y;;;;; -22EA;NOT NORMAL SUBGROUP OF;Sm;0;ON;22B2 0338;;;;Y;;;;; -22EB;DOES NOT CONTAIN AS NORMAL SUBGROUP;Sm;0;ON;22B3 0338;;;;Y;;;;; -22EC;NOT NORMAL SUBGROUP OF OR EQUAL TO;Sm;0;ON;22B4 0338;;;;Y;;;;; -22ED;DOES NOT CONTAIN AS NORMAL SUBGROUP OR EQUAL;Sm;0;ON;22B5 0338;;;;Y;;;;; -22EE;VERTICAL ELLIPSIS;Sm;0;ON;;;;;N;;;;; -22EF;MIDLINE HORIZONTAL ELLIPSIS;Sm;0;ON;;;;;N;;;;; -22F0;UP RIGHT DIAGONAL ELLIPSIS;Sm;0;ON;;;;;Y;;;;; -22F1;DOWN RIGHT DIAGONAL ELLIPSIS;Sm;0;ON;;;;;Y;;;;; -22F2;ELEMENT OF WITH LONG HORIZONTAL STROKE;Sm;0;ON;;;;;Y;;;;; -22F3;ELEMENT OF WITH VERTICAL BAR AT END OF HORIZONTAL STROKE;Sm;0;ON;;;;;Y;;;;; -22F4;SMALL ELEMENT OF WITH VERTICAL BAR AT END OF HORIZONTAL STROKE;Sm;0;ON;;;;;Y;;;;; -22F5;ELEMENT OF WITH DOT ABOVE;Sm;0;ON;;;;;Y;;;;; -22F6;ELEMENT OF WITH OVERBAR;Sm;0;ON;;;;;Y;;;;; -22F7;SMALL ELEMENT OF WITH OVERBAR;Sm;0;ON;;;;;Y;;;;; -22F8;ELEMENT OF WITH UNDERBAR;Sm;0;ON;;;;;Y;;;;; -22F9;ELEMENT OF WITH TWO HORIZONTAL STROKES;Sm;0;ON;;;;;Y;;;;; -22FA;CONTAINS WITH LONG HORIZONTAL STROKE;Sm;0;ON;;;;;Y;;;;; -22FB;CONTAINS WITH VERTICAL BAR AT END OF HORIZONTAL STROKE;Sm;0;ON;;;;;Y;;;;; -22FC;SMALL CONTAINS WITH VERTICAL BAR AT END OF HORIZONTAL STROKE;Sm;0;ON;;;;;Y;;;;; -22FD;CONTAINS WITH OVERBAR;Sm;0;ON;;;;;Y;;;;; -22FE;SMALL CONTAINS WITH OVERBAR;Sm;0;ON;;;;;Y;;;;; -22FF;Z NOTATION BAG MEMBERSHIP;Sm;0;ON;;;;;Y;;;;; -2300;DIAMETER SIGN;So;0;ON;;;;;N;;;;; -2301;ELECTRIC ARROW;So;0;ON;;;;;N;;;;; -2302;HOUSE;So;0;ON;;;;;N;;;;; -2303;UP ARROWHEAD;So;0;ON;;;;;N;;;;; -2304;DOWN ARROWHEAD;So;0;ON;;;;;N;;;;; -2305;PROJECTIVE;So;0;ON;;;;;N;;;;; -2306;PERSPECTIVE;So;0;ON;;;;;N;;;;; -2307;WAVY LINE;So;0;ON;;;;;N;;;;; -2308;LEFT CEILING;Sm;0;ON;;;;;Y;;;;; -2309;RIGHT CEILING;Sm;0;ON;;;;;Y;;;;; -230A;LEFT FLOOR;Sm;0;ON;;;;;Y;;;;; -230B;RIGHT FLOOR;Sm;0;ON;;;;;Y;;;;; -230C;BOTTOM RIGHT CROP;So;0;ON;;;;;N;;;;; -230D;BOTTOM LEFT CROP;So;0;ON;;;;;N;;;;; -230E;TOP RIGHT CROP;So;0;ON;;;;;N;;;;; -230F;TOP LEFT CROP;So;0;ON;;;;;N;;;;; -2310;REVERSED NOT SIGN;So;0;ON;;;;;N;;;;; -2311;SQUARE LOZENGE;So;0;ON;;;;;N;;;;; -2312;ARC;So;0;ON;;;;;N;;;;; -2313;SEGMENT;So;0;ON;;;;;N;;;;; -2314;SECTOR;So;0;ON;;;;;N;;;;; -2315;TELEPHONE RECORDER;So;0;ON;;;;;N;;;;; -2316;POSITION INDICATOR;So;0;ON;;;;;N;;;;; -2317;VIEWDATA SQUARE;So;0;ON;;;;;N;;;;; -2318;PLACE OF INTEREST SIGN;So;0;ON;;;;;N;COMMAND KEY;;;; -2319;TURNED NOT SIGN;So;0;ON;;;;;N;;;;; -231A;WATCH;So;0;ON;;;;;N;;;;; -231B;HOURGLASS;So;0;ON;;;;;N;;;;; -231C;TOP LEFT CORNER;So;0;ON;;;;;N;;;;; -231D;TOP RIGHT CORNER;So;0;ON;;;;;N;;;;; -231E;BOTTOM LEFT CORNER;So;0;ON;;;;;N;;;;; -231F;BOTTOM RIGHT CORNER;So;0;ON;;;;;N;;;;; -2320;TOP HALF INTEGRAL;Sm;0;ON;;;;;Y;;;;; -2321;BOTTOM HALF INTEGRAL;Sm;0;ON;;;;;Y;;;;; -2322;FROWN;So;0;ON;;;;;N;;;;; -2323;SMILE;So;0;ON;;;;;N;;;;; -2324;UP ARROWHEAD BETWEEN TWO HORIZONTAL BARS;So;0;ON;;;;;N;ENTER KEY;;;; -2325;OPTION KEY;So;0;ON;;;;;N;;;;; -2326;ERASE TO THE RIGHT;So;0;ON;;;;;N;DELETE TO THE RIGHT KEY;;;; -2327;X IN A RECTANGLE BOX;So;0;ON;;;;;N;CLEAR KEY;;;; -2328;KEYBOARD;So;0;ON;;;;;N;;;;; -2329;LEFT-POINTING ANGLE BRACKET;Ps;0;ON;3008;;;;Y;BRA;;;; -232A;RIGHT-POINTING ANGLE BRACKET;Pe;0;ON;3009;;;;Y;KET;;;; -232B;ERASE TO THE LEFT;So;0;ON;;;;;N;DELETE TO THE LEFT KEY;;;; -232C;BENZENE RING;So;0;ON;;;;;N;;;;; -232D;CYLINDRICITY;So;0;ON;;;;;N;;;;; -232E;ALL AROUND-PROFILE;So;0;ON;;;;;N;;;;; -232F;SYMMETRY;So;0;ON;;;;;N;;;;; -2330;TOTAL RUNOUT;So;0;ON;;;;;N;;;;; -2331;DIMENSION ORIGIN;So;0;ON;;;;;N;;;;; -2332;CONICAL TAPER;So;0;ON;;;;;N;;;;; -2333;SLOPE;So;0;ON;;;;;N;;;;; -2334;COUNTERBORE;So;0;ON;;;;;N;;;;; -2335;COUNTERSINK;So;0;ON;;;;;N;;;;; -2336;APL FUNCTIONAL SYMBOL I-BEAM;So;0;L;;;;;N;;;;; -2337;APL FUNCTIONAL SYMBOL SQUISH QUAD;So;0;L;;;;;N;;;;; -2338;APL FUNCTIONAL SYMBOL QUAD EQUAL;So;0;L;;;;;N;;;;; -2339;APL FUNCTIONAL SYMBOL QUAD DIVIDE;So;0;L;;;;;N;;;;; -233A;APL FUNCTIONAL SYMBOL QUAD DIAMOND;So;0;L;;;;;N;;;;; -233B;APL FUNCTIONAL SYMBOL QUAD JOT;So;0;L;;;;;N;;;;; -233C;APL FUNCTIONAL SYMBOL QUAD CIRCLE;So;0;L;;;;;N;;;;; -233D;APL FUNCTIONAL SYMBOL CIRCLE STILE;So;0;L;;;;;N;;;;; -233E;APL FUNCTIONAL SYMBOL CIRCLE JOT;So;0;L;;;;;N;;;;; -233F;APL FUNCTIONAL SYMBOL SLASH BAR;So;0;L;;;;;N;;;;; -2340;APL FUNCTIONAL SYMBOL BACKSLASH BAR;So;0;L;;;;;N;;;;; -2341;APL FUNCTIONAL SYMBOL QUAD SLASH;So;0;L;;;;;N;;;;; -2342;APL FUNCTIONAL SYMBOL QUAD BACKSLASH;So;0;L;;;;;N;;;;; -2343;APL FUNCTIONAL SYMBOL QUAD LESS-THAN;So;0;L;;;;;N;;;;; -2344;APL FUNCTIONAL SYMBOL QUAD GREATER-THAN;So;0;L;;;;;N;;;;; -2345;APL FUNCTIONAL SYMBOL LEFTWARDS VANE;So;0;L;;;;;N;;;;; -2346;APL FUNCTIONAL SYMBOL RIGHTWARDS VANE;So;0;L;;;;;N;;;;; -2347;APL FUNCTIONAL SYMBOL QUAD LEFTWARDS ARROW;So;0;L;;;;;N;;;;; -2348;APL FUNCTIONAL SYMBOL QUAD RIGHTWARDS ARROW;So;0;L;;;;;N;;;;; -2349;APL FUNCTIONAL SYMBOL CIRCLE BACKSLASH;So;0;L;;;;;N;;;;; -234A;APL FUNCTIONAL SYMBOL DOWN TACK UNDERBAR;So;0;L;;;;;N;;;;; -234B;APL FUNCTIONAL SYMBOL DELTA STILE;So;0;L;;;;;N;;;;; -234C;APL FUNCTIONAL SYMBOL QUAD DOWN CARET;So;0;L;;;;;N;;;;; -234D;APL FUNCTIONAL SYMBOL QUAD DELTA;So;0;L;;;;;N;;;;; -234E;APL FUNCTIONAL SYMBOL DOWN TACK JOT;So;0;L;;;;;N;;;;; -234F;APL FUNCTIONAL SYMBOL UPWARDS VANE;So;0;L;;;;;N;;;;; -2350;APL FUNCTIONAL SYMBOL QUAD UPWARDS ARROW;So;0;L;;;;;N;;;;; -2351;APL FUNCTIONAL SYMBOL UP TACK OVERBAR;So;0;L;;;;;N;;;;; -2352;APL FUNCTIONAL SYMBOL DEL STILE;So;0;L;;;;;N;;;;; -2353;APL FUNCTIONAL SYMBOL QUAD UP CARET;So;0;L;;;;;N;;;;; -2354;APL FUNCTIONAL SYMBOL QUAD DEL;So;0;L;;;;;N;;;;; -2355;APL FUNCTIONAL SYMBOL UP TACK JOT;So;0;L;;;;;N;;;;; -2356;APL FUNCTIONAL SYMBOL DOWNWARDS VANE;So;0;L;;;;;N;;;;; -2357;APL FUNCTIONAL SYMBOL QUAD DOWNWARDS ARROW;So;0;L;;;;;N;;;;; -2358;APL FUNCTIONAL SYMBOL QUOTE UNDERBAR;So;0;L;;;;;N;;;;; -2359;APL FUNCTIONAL SYMBOL DELTA UNDERBAR;So;0;L;;;;;N;;;;; -235A;APL FUNCTIONAL SYMBOL DIAMOND UNDERBAR;So;0;L;;;;;N;;;;; -235B;APL FUNCTIONAL SYMBOL JOT UNDERBAR;So;0;L;;;;;N;;;;; -235C;APL FUNCTIONAL SYMBOL CIRCLE UNDERBAR;So;0;L;;;;;N;;;;; -235D;APL FUNCTIONAL SYMBOL UP SHOE JOT;So;0;L;;;;;N;;;;; -235E;APL FUNCTIONAL SYMBOL QUOTE QUAD;So;0;L;;;;;N;;;;; -235F;APL FUNCTIONAL SYMBOL CIRCLE STAR;So;0;L;;;;;N;;;;; -2360;APL FUNCTIONAL SYMBOL QUAD COLON;So;0;L;;;;;N;;;;; -2361;APL FUNCTIONAL SYMBOL UP TACK DIAERESIS;So;0;L;;;;;N;;;;; -2362;APL FUNCTIONAL SYMBOL DEL DIAERESIS;So;0;L;;;;;N;;;;; -2363;APL FUNCTIONAL SYMBOL STAR DIAERESIS;So;0;L;;;;;N;;;;; -2364;APL FUNCTIONAL SYMBOL JOT DIAERESIS;So;0;L;;;;;N;;;;; -2365;APL FUNCTIONAL SYMBOL CIRCLE DIAERESIS;So;0;L;;;;;N;;;;; -2366;APL FUNCTIONAL SYMBOL DOWN SHOE STILE;So;0;L;;;;;N;;;;; -2367;APL FUNCTIONAL SYMBOL LEFT SHOE STILE;So;0;L;;;;;N;;;;; -2368;APL FUNCTIONAL SYMBOL TILDE DIAERESIS;So;0;L;;;;;N;;;;; -2369;APL FUNCTIONAL SYMBOL GREATER-THAN DIAERESIS;So;0;L;;;;;N;;;;; -236A;APL FUNCTIONAL SYMBOL COMMA BAR;So;0;L;;;;;N;;;;; -236B;APL FUNCTIONAL SYMBOL DEL TILDE;So;0;L;;;;;N;;;;; -236C;APL FUNCTIONAL SYMBOL ZILDE;So;0;L;;;;;N;;;;; -236D;APL FUNCTIONAL SYMBOL STILE TILDE;So;0;L;;;;;N;;;;; -236E;APL FUNCTIONAL SYMBOL SEMICOLON UNDERBAR;So;0;L;;;;;N;;;;; -236F;APL FUNCTIONAL SYMBOL QUAD NOT EQUAL;So;0;L;;;;;N;;;;; -2370;APL FUNCTIONAL SYMBOL QUAD QUESTION;So;0;L;;;;;N;;;;; -2371;APL FUNCTIONAL SYMBOL DOWN CARET TILDE;So;0;L;;;;;N;;;;; -2372;APL FUNCTIONAL SYMBOL UP CARET TILDE;So;0;L;;;;;N;;;;; -2373;APL FUNCTIONAL SYMBOL IOTA;So;0;L;;;;;N;;;;; -2374;APL FUNCTIONAL SYMBOL RHO;So;0;L;;;;;N;;;;; -2375;APL FUNCTIONAL SYMBOL OMEGA;So;0;L;;;;;N;;;;; -2376;APL FUNCTIONAL SYMBOL ALPHA UNDERBAR;So;0;L;;;;;N;;;;; -2377;APL FUNCTIONAL SYMBOL EPSILON UNDERBAR;So;0;L;;;;;N;;;;; -2378;APL FUNCTIONAL SYMBOL IOTA UNDERBAR;So;0;L;;;;;N;;;;; -2379;APL FUNCTIONAL SYMBOL OMEGA UNDERBAR;So;0;L;;;;;N;;;;; -237A;APL FUNCTIONAL SYMBOL ALPHA;So;0;L;;;;;N;;;;; -237B;NOT CHECK MARK;So;0;ON;;;;;N;;;;; -237C;RIGHT ANGLE WITH DOWNWARDS ZIGZAG ARROW;Sm;0;ON;;;;;N;;;;; -237D;SHOULDERED OPEN BOX;So;0;ON;;;;;N;;;;; -237E;BELL SYMBOL;So;0;ON;;;;;N;;;;; -237F;VERTICAL LINE WITH MIDDLE DOT;So;0;ON;;;;;N;;;;; -2380;INSERTION SYMBOL;So;0;ON;;;;;N;;;;; -2381;CONTINUOUS UNDERLINE SYMBOL;So;0;ON;;;;;N;;;;; -2382;DISCONTINUOUS UNDERLINE SYMBOL;So;0;ON;;;;;N;;;;; -2383;EMPHASIS SYMBOL;So;0;ON;;;;;N;;;;; -2384;COMPOSITION SYMBOL;So;0;ON;;;;;N;;;;; -2385;WHITE SQUARE WITH CENTRE VERTICAL LINE;So;0;ON;;;;;N;;;;; -2386;ENTER SYMBOL;So;0;ON;;;;;N;;;;; -2387;ALTERNATIVE KEY SYMBOL;So;0;ON;;;;;N;;;;; -2388;HELM SYMBOL;So;0;ON;;;;;N;;;;; -2389;CIRCLED HORIZONTAL BAR WITH NOTCH;So;0;ON;;;;;N;;;;; -238A;CIRCLED TRIANGLE DOWN;So;0;ON;;;;;N;;;;; -238B;BROKEN CIRCLE WITH NORTHWEST ARROW;So;0;ON;;;;;N;;;;; -238C;UNDO SYMBOL;So;0;ON;;;;;N;;;;; -238D;MONOSTABLE SYMBOL;So;0;ON;;;;;N;;;;; -238E;HYSTERESIS SYMBOL;So;0;ON;;;;;N;;;;; -238F;OPEN-CIRCUIT-OUTPUT H-TYPE SYMBOL;So;0;ON;;;;;N;;;;; -2390;OPEN-CIRCUIT-OUTPUT L-TYPE SYMBOL;So;0;ON;;;;;N;;;;; -2391;PASSIVE-PULL-DOWN-OUTPUT SYMBOL;So;0;ON;;;;;N;;;;; -2392;PASSIVE-PULL-UP-OUTPUT SYMBOL;So;0;ON;;;;;N;;;;; -2393;DIRECT CURRENT SYMBOL FORM TWO;So;0;ON;;;;;N;;;;; -2394;SOFTWARE-FUNCTION SYMBOL;So;0;ON;;;;;N;;;;; -2395;APL FUNCTIONAL SYMBOL QUAD;So;0;L;;;;;N;;;;; -2396;DECIMAL SEPARATOR KEY SYMBOL;So;0;ON;;;;;N;;;;; -2397;PREVIOUS PAGE;So;0;ON;;;;;N;;;;; -2398;NEXT PAGE;So;0;ON;;;;;N;;;;; -2399;PRINT SCREEN SYMBOL;So;0;ON;;;;;N;;;;; -239A;CLEAR SCREEN SYMBOL;So;0;ON;;;;;N;;;;; -239B;LEFT PARENTHESIS UPPER HOOK;Sm;0;ON;;;;;N;;;;; -239C;LEFT PARENTHESIS EXTENSION;Sm;0;ON;;;;;N;;;;; -239D;LEFT PARENTHESIS LOWER HOOK;Sm;0;ON;;;;;N;;;;; -239E;RIGHT PARENTHESIS UPPER HOOK;Sm;0;ON;;;;;N;;;;; -239F;RIGHT PARENTHESIS EXTENSION;Sm;0;ON;;;;;N;;;;; -23A0;RIGHT PARENTHESIS LOWER HOOK;Sm;0;ON;;;;;N;;;;; -23A1;LEFT SQUARE BRACKET UPPER CORNER;Sm;0;ON;;;;;N;;;;; -23A2;LEFT SQUARE BRACKET EXTENSION;Sm;0;ON;;;;;N;;;;; -23A3;LEFT SQUARE BRACKET LOWER CORNER;Sm;0;ON;;;;;N;;;;; -23A4;RIGHT SQUARE BRACKET UPPER CORNER;Sm;0;ON;;;;;N;;;;; -23A5;RIGHT SQUARE BRACKET EXTENSION;Sm;0;ON;;;;;N;;;;; -23A6;RIGHT SQUARE BRACKET LOWER CORNER;Sm;0;ON;;;;;N;;;;; -23A7;LEFT CURLY BRACKET UPPER HOOK;Sm;0;ON;;;;;N;;;;; -23A8;LEFT CURLY BRACKET MIDDLE PIECE;Sm;0;ON;;;;;N;;;;; -23A9;LEFT CURLY BRACKET LOWER HOOK;Sm;0;ON;;;;;N;;;;; -23AA;CURLY BRACKET EXTENSION;Sm;0;ON;;;;;N;;;;; -23AB;RIGHT CURLY BRACKET UPPER HOOK;Sm;0;ON;;;;;N;;;;; -23AC;RIGHT CURLY BRACKET MIDDLE PIECE;Sm;0;ON;;;;;N;;;;; -23AD;RIGHT CURLY BRACKET LOWER HOOK;Sm;0;ON;;;;;N;;;;; -23AE;INTEGRAL EXTENSION;Sm;0;ON;;;;;N;;;;; -23AF;HORIZONTAL LINE EXTENSION;Sm;0;ON;;;;;N;;;;; -23B0;UPPER LEFT OR LOWER RIGHT CURLY BRACKET SECTION;Sm;0;ON;;;;;N;;;;; -23B1;UPPER RIGHT OR LOWER LEFT CURLY BRACKET SECTION;Sm;0;ON;;;;;N;;;;; -23B2;SUMMATION TOP;Sm;0;ON;;;;;N;;;;; -23B3;SUMMATION BOTTOM;Sm;0;ON;;;;;N;;;;; -23B4;TOP SQUARE BRACKET;So;0;ON;;;;;N;;;;; -23B5;BOTTOM SQUARE BRACKET;So;0;ON;;;;;N;;;;; -23B6;BOTTOM SQUARE BRACKET OVER TOP SQUARE BRACKET;So;0;ON;;;;;N;;;;; -23B7;RADICAL SYMBOL BOTTOM;So;0;ON;;;;;N;;;;; -23B8;LEFT VERTICAL BOX LINE;So;0;ON;;;;;N;;;;; -23B9;RIGHT VERTICAL BOX LINE;So;0;ON;;;;;N;;;;; -23BA;HORIZONTAL SCAN LINE-1;So;0;ON;;;;;N;;;;; -23BB;HORIZONTAL SCAN LINE-3;So;0;ON;;;;;N;;;;; -23BC;HORIZONTAL SCAN LINE-7;So;0;ON;;;;;N;;;;; -23BD;HORIZONTAL SCAN LINE-9;So;0;ON;;;;;N;;;;; -23BE;DENTISTRY SYMBOL LIGHT VERTICAL AND TOP RIGHT;So;0;ON;;;;;N;;;;; -23BF;DENTISTRY SYMBOL LIGHT VERTICAL AND BOTTOM RIGHT;So;0;ON;;;;;N;;;;; -23C0;DENTISTRY SYMBOL LIGHT VERTICAL WITH CIRCLE;So;0;ON;;;;;N;;;;; -23C1;DENTISTRY SYMBOL LIGHT DOWN AND HORIZONTAL WITH CIRCLE;So;0;ON;;;;;N;;;;; -23C2;DENTISTRY SYMBOL LIGHT UP AND HORIZONTAL WITH CIRCLE;So;0;ON;;;;;N;;;;; -23C3;DENTISTRY SYMBOL LIGHT VERTICAL WITH TRIANGLE;So;0;ON;;;;;N;;;;; -23C4;DENTISTRY SYMBOL LIGHT DOWN AND HORIZONTAL WITH TRIANGLE;So;0;ON;;;;;N;;;;; -23C5;DENTISTRY SYMBOL LIGHT UP AND HORIZONTAL WITH TRIANGLE;So;0;ON;;;;;N;;;;; -23C6;DENTISTRY SYMBOL LIGHT VERTICAL AND WAVE;So;0;ON;;;;;N;;;;; -23C7;DENTISTRY SYMBOL LIGHT DOWN AND HORIZONTAL WITH WAVE;So;0;ON;;;;;N;;;;; -23C8;DENTISTRY SYMBOL LIGHT UP AND HORIZONTAL WITH WAVE;So;0;ON;;;;;N;;;;; -23C9;DENTISTRY SYMBOL LIGHT DOWN AND HORIZONTAL;So;0;ON;;;;;N;;;;; -23CA;DENTISTRY SYMBOL LIGHT UP AND HORIZONTAL;So;0;ON;;;;;N;;;;; -23CB;DENTISTRY SYMBOL LIGHT VERTICAL AND TOP LEFT;So;0;ON;;;;;N;;;;; -23CC;DENTISTRY SYMBOL LIGHT VERTICAL AND BOTTOM LEFT;So;0;ON;;;;;N;;;;; -23CD;SQUARE FOOT;So;0;ON;;;;;N;;;;; -23CE;RETURN SYMBOL;So;0;ON;;;;;N;;;;; -23CF;EJECT SYMBOL;So;0;ON;;;;;N;;;;; -23D0;VERTICAL LINE EXTENSION;So;0;ON;;;;;N;;;;; -23D1;METRICAL BREVE;So;0;ON;;;;;N;;;;; -23D2;METRICAL LONG OVER SHORT;So;0;ON;;;;;N;;;;; -23D3;METRICAL SHORT OVER LONG;So;0;ON;;;;;N;;;;; -23D4;METRICAL LONG OVER TWO SHORTS;So;0;ON;;;;;N;;;;; -23D5;METRICAL TWO SHORTS OVER LONG;So;0;ON;;;;;N;;;;; -23D6;METRICAL TWO SHORTS JOINED;So;0;ON;;;;;N;;;;; -23D7;METRICAL TRISEME;So;0;ON;;;;;N;;;;; -23D8;METRICAL TETRASEME;So;0;ON;;;;;N;;;;; -23D9;METRICAL PENTASEME;So;0;ON;;;;;N;;;;; -23DA;EARTH GROUND;So;0;ON;;;;;N;;;;; -23DB;FUSE;So;0;ON;;;;;N;;;;; -23DC;TOP PARENTHESIS;Sm;0;ON;;;;;N;;;;; -23DD;BOTTOM PARENTHESIS;Sm;0;ON;;;;;N;;;;; -23DE;TOP CURLY BRACKET;Sm;0;ON;;;;;N;;;;; -23DF;BOTTOM CURLY BRACKET;Sm;0;ON;;;;;N;;;;; -23E0;TOP TORTOISE SHELL BRACKET;Sm;0;ON;;;;;N;;;;; -23E1;BOTTOM TORTOISE SHELL BRACKET;Sm;0;ON;;;;;N;;;;; -23E2;WHITE TRAPEZIUM;So;0;ON;;;;;N;;;;; -23E3;BENZENE RING WITH CIRCLE;So;0;ON;;;;;N;;;;; -23E4;STRAIGHTNESS;So;0;ON;;;;;N;;;;; -23E5;FLATNESS;So;0;ON;;;;;N;;;;; -23E6;AC CURRENT;So;0;ON;;;;;N;;;;; -23E7;ELECTRICAL INTERSECTION;So;0;ON;;;;;N;;;;; -23E8;DECIMAL EXPONENT SYMBOL;So;0;ON;;;;;N;;;;; -23E9;BLACK RIGHT-POINTING DOUBLE TRIANGLE;So;0;ON;;;;;N;;;;; -23EA;BLACK LEFT-POINTING DOUBLE TRIANGLE;So;0;ON;;;;;N;;;;; -23EB;BLACK UP-POINTING DOUBLE TRIANGLE;So;0;ON;;;;;N;;;;; -23EC;BLACK DOWN-POINTING DOUBLE TRIANGLE;So;0;ON;;;;;N;;;;; -23ED;BLACK RIGHT-POINTING DOUBLE TRIANGLE WITH VERTICAL BAR;So;0;ON;;;;;N;;;;; -23EE;BLACK LEFT-POINTING DOUBLE TRIANGLE WITH VERTICAL BAR;So;0;ON;;;;;N;;;;; -23EF;BLACK RIGHT-POINTING TRIANGLE WITH DOUBLE VERTICAL BAR;So;0;ON;;;;;N;;;;; -23F0;ALARM CLOCK;So;0;ON;;;;;N;;;;; -23F1;STOPWATCH;So;0;ON;;;;;N;;;;; -23F2;TIMER CLOCK;So;0;ON;;;;;N;;;;; -23F3;HOURGLASS WITH FLOWING SAND;So;0;ON;;;;;N;;;;; -2400;SYMBOL FOR NULL;So;0;ON;;;;;N;GRAPHIC FOR NULL;;;; -2401;SYMBOL FOR START OF HEADING;So;0;ON;;;;;N;GRAPHIC FOR START OF HEADING;;;; -2402;SYMBOL FOR START OF TEXT;So;0;ON;;;;;N;GRAPHIC FOR START OF TEXT;;;; -2403;SYMBOL FOR END OF TEXT;So;0;ON;;;;;N;GRAPHIC FOR END OF TEXT;;;; -2404;SYMBOL FOR END OF TRANSMISSION;So;0;ON;;;;;N;GRAPHIC FOR END OF TRANSMISSION;;;; -2405;SYMBOL FOR ENQUIRY;So;0;ON;;;;;N;GRAPHIC FOR ENQUIRY;;;; -2406;SYMBOL FOR ACKNOWLEDGE;So;0;ON;;;;;N;GRAPHIC FOR ACKNOWLEDGE;;;; -2407;SYMBOL FOR BELL;So;0;ON;;;;;N;GRAPHIC FOR BELL;;;; -2408;SYMBOL FOR BACKSPACE;So;0;ON;;;;;N;GRAPHIC FOR BACKSPACE;;;; -2409;SYMBOL FOR HORIZONTAL TABULATION;So;0;ON;;;;;N;GRAPHIC FOR HORIZONTAL TABULATION;;;; -240A;SYMBOL FOR LINE FEED;So;0;ON;;;;;N;GRAPHIC FOR LINE FEED;;;; -240B;SYMBOL FOR VERTICAL TABULATION;So;0;ON;;;;;N;GRAPHIC FOR VERTICAL TABULATION;;;; -240C;SYMBOL FOR FORM FEED;So;0;ON;;;;;N;GRAPHIC FOR FORM FEED;;;; -240D;SYMBOL FOR CARRIAGE RETURN;So;0;ON;;;;;N;GRAPHIC FOR CARRIAGE RETURN;;;; -240E;SYMBOL FOR SHIFT OUT;So;0;ON;;;;;N;GRAPHIC FOR SHIFT OUT;;;; -240F;SYMBOL FOR SHIFT IN;So;0;ON;;;;;N;GRAPHIC FOR SHIFT IN;;;; -2410;SYMBOL FOR DATA LINK ESCAPE;So;0;ON;;;;;N;GRAPHIC FOR DATA LINK ESCAPE;;;; -2411;SYMBOL FOR DEVICE CONTROL ONE;So;0;ON;;;;;N;GRAPHIC FOR DEVICE CONTROL ONE;;;; -2412;SYMBOL FOR DEVICE CONTROL TWO;So;0;ON;;;;;N;GRAPHIC FOR DEVICE CONTROL TWO;;;; -2413;SYMBOL FOR DEVICE CONTROL THREE;So;0;ON;;;;;N;GRAPHIC FOR DEVICE CONTROL THREE;;;; -2414;SYMBOL FOR DEVICE CONTROL FOUR;So;0;ON;;;;;N;GRAPHIC FOR DEVICE CONTROL FOUR;;;; -2415;SYMBOL FOR NEGATIVE ACKNOWLEDGE;So;0;ON;;;;;N;GRAPHIC FOR NEGATIVE ACKNOWLEDGE;;;; -2416;SYMBOL FOR SYNCHRONOUS IDLE;So;0;ON;;;;;N;GRAPHIC FOR SYNCHRONOUS IDLE;;;; -2417;SYMBOL FOR END OF TRANSMISSION BLOCK;So;0;ON;;;;;N;GRAPHIC FOR END OF TRANSMISSION BLOCK;;;; -2418;SYMBOL FOR CANCEL;So;0;ON;;;;;N;GRAPHIC FOR CANCEL;;;; -2419;SYMBOL FOR END OF MEDIUM;So;0;ON;;;;;N;GRAPHIC FOR END OF MEDIUM;;;; -241A;SYMBOL FOR SUBSTITUTE;So;0;ON;;;;;N;GRAPHIC FOR SUBSTITUTE;;;; -241B;SYMBOL FOR ESCAPE;So;0;ON;;;;;N;GRAPHIC FOR ESCAPE;;;; -241C;SYMBOL FOR FILE SEPARATOR;So;0;ON;;;;;N;GRAPHIC FOR FILE SEPARATOR;;;; -241D;SYMBOL FOR GROUP SEPARATOR;So;0;ON;;;;;N;GRAPHIC FOR GROUP SEPARATOR;;;; -241E;SYMBOL FOR RECORD SEPARATOR;So;0;ON;;;;;N;GRAPHIC FOR RECORD SEPARATOR;;;; -241F;SYMBOL FOR UNIT SEPARATOR;So;0;ON;;;;;N;GRAPHIC FOR UNIT SEPARATOR;;;; -2420;SYMBOL FOR SPACE;So;0;ON;;;;;N;GRAPHIC FOR SPACE;;;; -2421;SYMBOL FOR DELETE;So;0;ON;;;;;N;GRAPHIC FOR DELETE;;;; -2422;BLANK SYMBOL;So;0;ON;;;;;N;BLANK;;;; -2423;OPEN BOX;So;0;ON;;;;;N;;;;; -2424;SYMBOL FOR NEWLINE;So;0;ON;;;;;N;GRAPHIC FOR NEWLINE;;;; -2425;SYMBOL FOR DELETE FORM TWO;So;0;ON;;;;;N;;;;; -2426;SYMBOL FOR SUBSTITUTE FORM TWO;So;0;ON;;;;;N;;;;; -2440;OCR HOOK;So;0;ON;;;;;N;;;;; -2441;OCR CHAIR;So;0;ON;;;;;N;;;;; -2442;OCR FORK;So;0;ON;;;;;N;;;;; -2443;OCR INVERTED FORK;So;0;ON;;;;;N;;;;; -2444;OCR BELT BUCKLE;So;0;ON;;;;;N;;;;; -2445;OCR BOW TIE;So;0;ON;;;;;N;;;;; -2446;OCR BRANCH BANK IDENTIFICATION;So;0;ON;;;;;N;;;;; -2447;OCR AMOUNT OF CHECK;So;0;ON;;;;;N;;;;; -2448;OCR DASH;So;0;ON;;;;;N;;;;; -2449;OCR CUSTOMER ACCOUNT NUMBER;So;0;ON;;;;;N;;;;; -244A;OCR DOUBLE BACKSLASH;So;0;ON;;;;;N;;;;; -2460;CIRCLED DIGIT ONE;No;0;ON; 0031;;1;1;N;;;;; -2461;CIRCLED DIGIT TWO;No;0;ON; 0032;;2;2;N;;;;; -2462;CIRCLED DIGIT THREE;No;0;ON; 0033;;3;3;N;;;;; -2463;CIRCLED DIGIT FOUR;No;0;ON; 0034;;4;4;N;;;;; -2464;CIRCLED DIGIT FIVE;No;0;ON; 0035;;5;5;N;;;;; -2465;CIRCLED DIGIT SIX;No;0;ON; 0036;;6;6;N;;;;; -2466;CIRCLED DIGIT SEVEN;No;0;ON; 0037;;7;7;N;;;;; -2467;CIRCLED DIGIT EIGHT;No;0;ON; 0038;;8;8;N;;;;; -2468;CIRCLED DIGIT NINE;No;0;ON; 0039;;9;9;N;;;;; -2469;CIRCLED NUMBER TEN;No;0;ON; 0031 0030;;;10;N;;;;; -246A;CIRCLED NUMBER ELEVEN;No;0;ON; 0031 0031;;;11;N;;;;; -246B;CIRCLED NUMBER TWELVE;No;0;ON; 0031 0032;;;12;N;;;;; -246C;CIRCLED NUMBER THIRTEEN;No;0;ON; 0031 0033;;;13;N;;;;; -246D;CIRCLED NUMBER FOURTEEN;No;0;ON; 0031 0034;;;14;N;;;;; -246E;CIRCLED NUMBER FIFTEEN;No;0;ON; 0031 0035;;;15;N;;;;; -246F;CIRCLED NUMBER SIXTEEN;No;0;ON; 0031 0036;;;16;N;;;;; -2470;CIRCLED NUMBER SEVENTEEN;No;0;ON; 0031 0037;;;17;N;;;;; -2471;CIRCLED NUMBER EIGHTEEN;No;0;ON; 0031 0038;;;18;N;;;;; -2472;CIRCLED NUMBER NINETEEN;No;0;ON; 0031 0039;;;19;N;;;;; -2473;CIRCLED NUMBER TWENTY;No;0;ON; 0032 0030;;;20;N;;;;; -2474;PARENTHESIZED DIGIT ONE;No;0;ON; 0028 0031 0029;;1;1;N;;;;; -2475;PARENTHESIZED DIGIT TWO;No;0;ON; 0028 0032 0029;;2;2;N;;;;; -2476;PARENTHESIZED DIGIT THREE;No;0;ON; 0028 0033 0029;;3;3;N;;;;; -2477;PARENTHESIZED DIGIT FOUR;No;0;ON; 0028 0034 0029;;4;4;N;;;;; -2478;PARENTHESIZED DIGIT FIVE;No;0;ON; 0028 0035 0029;;5;5;N;;;;; -2479;PARENTHESIZED DIGIT SIX;No;0;ON; 0028 0036 0029;;6;6;N;;;;; -247A;PARENTHESIZED DIGIT SEVEN;No;0;ON; 0028 0037 0029;;7;7;N;;;;; -247B;PARENTHESIZED DIGIT EIGHT;No;0;ON; 0028 0038 0029;;8;8;N;;;;; -247C;PARENTHESIZED DIGIT NINE;No;0;ON; 0028 0039 0029;;9;9;N;;;;; -247D;PARENTHESIZED NUMBER TEN;No;0;ON; 0028 0031 0030 0029;;;10;N;;;;; -247E;PARENTHESIZED NUMBER ELEVEN;No;0;ON; 0028 0031 0031 0029;;;11;N;;;;; -247F;PARENTHESIZED NUMBER TWELVE;No;0;ON; 0028 0031 0032 0029;;;12;N;;;;; -2480;PARENTHESIZED NUMBER THIRTEEN;No;0;ON; 0028 0031 0033 0029;;;13;N;;;;; -2481;PARENTHESIZED NUMBER FOURTEEN;No;0;ON; 0028 0031 0034 0029;;;14;N;;;;; -2482;PARENTHESIZED NUMBER FIFTEEN;No;0;ON; 0028 0031 0035 0029;;;15;N;;;;; -2483;PARENTHESIZED NUMBER SIXTEEN;No;0;ON; 0028 0031 0036 0029;;;16;N;;;;; -2484;PARENTHESIZED NUMBER SEVENTEEN;No;0;ON; 0028 0031 0037 0029;;;17;N;;;;; -2485;PARENTHESIZED NUMBER EIGHTEEN;No;0;ON; 0028 0031 0038 0029;;;18;N;;;;; -2486;PARENTHESIZED NUMBER NINETEEN;No;0;ON; 0028 0031 0039 0029;;;19;N;;;;; -2487;PARENTHESIZED NUMBER TWENTY;No;0;ON; 0028 0032 0030 0029;;;20;N;;;;; -2488;DIGIT ONE FULL STOP;No;0;EN; 0031 002E;;1;1;N;DIGIT ONE PERIOD;;;; -2489;DIGIT TWO FULL STOP;No;0;EN; 0032 002E;;2;2;N;DIGIT TWO PERIOD;;;; -248A;DIGIT THREE FULL STOP;No;0;EN; 0033 002E;;3;3;N;DIGIT THREE PERIOD;;;; -248B;DIGIT FOUR FULL STOP;No;0;EN; 0034 002E;;4;4;N;DIGIT FOUR PERIOD;;;; -248C;DIGIT FIVE FULL STOP;No;0;EN; 0035 002E;;5;5;N;DIGIT FIVE PERIOD;;;; -248D;DIGIT SIX FULL STOP;No;0;EN; 0036 002E;;6;6;N;DIGIT SIX PERIOD;;;; -248E;DIGIT SEVEN FULL STOP;No;0;EN; 0037 002E;;7;7;N;DIGIT SEVEN PERIOD;;;; -248F;DIGIT EIGHT FULL STOP;No;0;EN; 0038 002E;;8;8;N;DIGIT EIGHT PERIOD;;;; -2490;DIGIT NINE FULL STOP;No;0;EN; 0039 002E;;9;9;N;DIGIT NINE PERIOD;;;; -2491;NUMBER TEN FULL STOP;No;0;EN; 0031 0030 002E;;;10;N;NUMBER TEN PERIOD;;;; -2492;NUMBER ELEVEN FULL STOP;No;0;EN; 0031 0031 002E;;;11;N;NUMBER ELEVEN PERIOD;;;; -2493;NUMBER TWELVE FULL STOP;No;0;EN; 0031 0032 002E;;;12;N;NUMBER TWELVE PERIOD;;;; -2494;NUMBER THIRTEEN FULL STOP;No;0;EN; 0031 0033 002E;;;13;N;NUMBER THIRTEEN PERIOD;;;; -2495;NUMBER FOURTEEN FULL STOP;No;0;EN; 0031 0034 002E;;;14;N;NUMBER FOURTEEN PERIOD;;;; -2496;NUMBER FIFTEEN FULL STOP;No;0;EN; 0031 0035 002E;;;15;N;NUMBER FIFTEEN PERIOD;;;; -2497;NUMBER SIXTEEN FULL STOP;No;0;EN; 0031 0036 002E;;;16;N;NUMBER SIXTEEN PERIOD;;;; -2498;NUMBER SEVENTEEN FULL STOP;No;0;EN; 0031 0037 002E;;;17;N;NUMBER SEVENTEEN PERIOD;;;; -2499;NUMBER EIGHTEEN FULL STOP;No;0;EN; 0031 0038 002E;;;18;N;NUMBER EIGHTEEN PERIOD;;;; -249A;NUMBER NINETEEN FULL STOP;No;0;EN; 0031 0039 002E;;;19;N;NUMBER NINETEEN PERIOD;;;; -249B;NUMBER TWENTY FULL STOP;No;0;EN; 0032 0030 002E;;;20;N;NUMBER TWENTY PERIOD;;;; -249C;PARENTHESIZED LATIN SMALL LETTER A;So;0;L; 0028 0061 0029;;;;N;;;;; -249D;PARENTHESIZED LATIN SMALL LETTER B;So;0;L; 0028 0062 0029;;;;N;;;;; -249E;PARENTHESIZED LATIN SMALL LETTER C;So;0;L; 0028 0063 0029;;;;N;;;;; -249F;PARENTHESIZED LATIN SMALL LETTER D;So;0;L; 0028 0064 0029;;;;N;;;;; -24A0;PARENTHESIZED LATIN SMALL LETTER E;So;0;L; 0028 0065 0029;;;;N;;;;; -24A1;PARENTHESIZED LATIN SMALL LETTER F;So;0;L; 0028 0066 0029;;;;N;;;;; -24A2;PARENTHESIZED LATIN SMALL LETTER G;So;0;L; 0028 0067 0029;;;;N;;;;; -24A3;PARENTHESIZED LATIN SMALL LETTER H;So;0;L; 0028 0068 0029;;;;N;;;;; -24A4;PARENTHESIZED LATIN SMALL LETTER I;So;0;L; 0028 0069 0029;;;;N;;;;; -24A5;PARENTHESIZED LATIN SMALL LETTER J;So;0;L; 0028 006A 0029;;;;N;;;;; -24A6;PARENTHESIZED LATIN SMALL LETTER K;So;0;L; 0028 006B 0029;;;;N;;;;; -24A7;PARENTHESIZED LATIN SMALL LETTER L;So;0;L; 0028 006C 0029;;;;N;;;;; -24A8;PARENTHESIZED LATIN SMALL LETTER M;So;0;L; 0028 006D 0029;;;;N;;;;; -24A9;PARENTHESIZED LATIN SMALL LETTER N;So;0;L; 0028 006E 0029;;;;N;;;;; -24AA;PARENTHESIZED LATIN SMALL LETTER O;So;0;L; 0028 006F 0029;;;;N;;;;; -24AB;PARENTHESIZED LATIN SMALL LETTER P;So;0;L; 0028 0070 0029;;;;N;;;;; -24AC;PARENTHESIZED LATIN SMALL LETTER Q;So;0;L; 0028 0071 0029;;;;N;;;;; -24AD;PARENTHESIZED LATIN SMALL LETTER R;So;0;L; 0028 0072 0029;;;;N;;;;; -24AE;PARENTHESIZED LATIN SMALL LETTER S;So;0;L; 0028 0073 0029;;;;N;;;;; -24AF;PARENTHESIZED LATIN SMALL LETTER T;So;0;L; 0028 0074 0029;;;;N;;;;; -24B0;PARENTHESIZED LATIN SMALL LETTER U;So;0;L; 0028 0075 0029;;;;N;;;;; -24B1;PARENTHESIZED LATIN SMALL LETTER V;So;0;L; 0028 0076 0029;;;;N;;;;; -24B2;PARENTHESIZED LATIN SMALL LETTER W;So;0;L; 0028 0077 0029;;;;N;;;;; -24B3;PARENTHESIZED LATIN SMALL LETTER X;So;0;L; 0028 0078 0029;;;;N;;;;; -24B4;PARENTHESIZED LATIN SMALL LETTER Y;So;0;L; 0028 0079 0029;;;;N;;;;; -24B5;PARENTHESIZED LATIN SMALL LETTER Z;So;0;L; 0028 007A 0029;;;;N;;;;; -24B6;CIRCLED LATIN CAPITAL LETTER A;So;0;L; 0041;;;;N;;;;24D0; -24B7;CIRCLED LATIN CAPITAL LETTER B;So;0;L; 0042;;;;N;;;;24D1; -24B8;CIRCLED LATIN CAPITAL LETTER C;So;0;L; 0043;;;;N;;;;24D2; -24B9;CIRCLED LATIN CAPITAL LETTER D;So;0;L; 0044;;;;N;;;;24D3; -24BA;CIRCLED LATIN CAPITAL LETTER E;So;0;L; 0045;;;;N;;;;24D4; -24BB;CIRCLED LATIN CAPITAL LETTER F;So;0;L; 0046;;;;N;;;;24D5; -24BC;CIRCLED LATIN CAPITAL LETTER G;So;0;L; 0047;;;;N;;;;24D6; -24BD;CIRCLED LATIN CAPITAL LETTER H;So;0;L; 0048;;;;N;;;;24D7; -24BE;CIRCLED LATIN CAPITAL LETTER I;So;0;L; 0049;;;;N;;;;24D8; -24BF;CIRCLED LATIN CAPITAL LETTER J;So;0;L; 004A;;;;N;;;;24D9; -24C0;CIRCLED LATIN CAPITAL LETTER K;So;0;L; 004B;;;;N;;;;24DA; -24C1;CIRCLED LATIN CAPITAL LETTER L;So;0;L; 004C;;;;N;;;;24DB; -24C2;CIRCLED LATIN CAPITAL LETTER M;So;0;L; 004D;;;;N;;;;24DC; -24C3;CIRCLED LATIN CAPITAL LETTER N;So;0;L; 004E;;;;N;;;;24DD; -24C4;CIRCLED LATIN CAPITAL LETTER O;So;0;L; 004F;;;;N;;;;24DE; -24C5;CIRCLED LATIN CAPITAL LETTER P;So;0;L; 0050;;;;N;;;;24DF; -24C6;CIRCLED LATIN CAPITAL LETTER Q;So;0;L; 0051;;;;N;;;;24E0; -24C7;CIRCLED LATIN CAPITAL LETTER R;So;0;L; 0052;;;;N;;;;24E1; -24C8;CIRCLED LATIN CAPITAL LETTER S;So;0;L; 0053;;;;N;;;;24E2; -24C9;CIRCLED LATIN CAPITAL LETTER T;So;0;L; 0054;;;;N;;;;24E3; -24CA;CIRCLED LATIN CAPITAL LETTER U;So;0;L; 0055;;;;N;;;;24E4; -24CB;CIRCLED LATIN CAPITAL LETTER V;So;0;L; 0056;;;;N;;;;24E5; -24CC;CIRCLED LATIN CAPITAL LETTER W;So;0;L; 0057;;;;N;;;;24E6; -24CD;CIRCLED LATIN CAPITAL LETTER X;So;0;L; 0058;;;;N;;;;24E7; -24CE;CIRCLED LATIN CAPITAL LETTER Y;So;0;L; 0059;;;;N;;;;24E8; -24CF;CIRCLED LATIN CAPITAL LETTER Z;So;0;L; 005A;;;;N;;;;24E9; -24D0;CIRCLED LATIN SMALL LETTER A;So;0;L; 0061;;;;N;;;24B6;;24B6 -24D1;CIRCLED LATIN SMALL LETTER B;So;0;L; 0062;;;;N;;;24B7;;24B7 -24D2;CIRCLED LATIN SMALL LETTER C;So;0;L; 0063;;;;N;;;24B8;;24B8 -24D3;CIRCLED LATIN SMALL LETTER D;So;0;L; 0064;;;;N;;;24B9;;24B9 -24D4;CIRCLED LATIN SMALL LETTER E;So;0;L; 0065;;;;N;;;24BA;;24BA -24D5;CIRCLED LATIN SMALL LETTER F;So;0;L; 0066;;;;N;;;24BB;;24BB -24D6;CIRCLED LATIN SMALL LETTER G;So;0;L; 0067;;;;N;;;24BC;;24BC -24D7;CIRCLED LATIN SMALL LETTER H;So;0;L; 0068;;;;N;;;24BD;;24BD -24D8;CIRCLED LATIN SMALL LETTER I;So;0;L; 0069;;;;N;;;24BE;;24BE -24D9;CIRCLED LATIN SMALL LETTER J;So;0;L; 006A;;;;N;;;24BF;;24BF -24DA;CIRCLED LATIN SMALL LETTER K;So;0;L; 006B;;;;N;;;24C0;;24C0 -24DB;CIRCLED LATIN SMALL LETTER L;So;0;L; 006C;;;;N;;;24C1;;24C1 -24DC;CIRCLED LATIN SMALL LETTER M;So;0;L; 006D;;;;N;;;24C2;;24C2 -24DD;CIRCLED LATIN SMALL LETTER N;So;0;L; 006E;;;;N;;;24C3;;24C3 -24DE;CIRCLED LATIN SMALL LETTER O;So;0;L; 006F;;;;N;;;24C4;;24C4 -24DF;CIRCLED LATIN SMALL LETTER P;So;0;L; 0070;;;;N;;;24C5;;24C5 -24E0;CIRCLED LATIN SMALL LETTER Q;So;0;L; 0071;;;;N;;;24C6;;24C6 -24E1;CIRCLED LATIN SMALL LETTER R;So;0;L; 0072;;;;N;;;24C7;;24C7 -24E2;CIRCLED LATIN SMALL LETTER S;So;0;L; 0073;;;;N;;;24C8;;24C8 -24E3;CIRCLED LATIN SMALL LETTER T;So;0;L; 0074;;;;N;;;24C9;;24C9 -24E4;CIRCLED LATIN SMALL LETTER U;So;0;L; 0075;;;;N;;;24CA;;24CA -24E5;CIRCLED LATIN SMALL LETTER V;So;0;L; 0076;;;;N;;;24CB;;24CB -24E6;CIRCLED LATIN SMALL LETTER W;So;0;L; 0077;;;;N;;;24CC;;24CC -24E7;CIRCLED LATIN SMALL LETTER X;So;0;L; 0078;;;;N;;;24CD;;24CD -24E8;CIRCLED LATIN SMALL LETTER Y;So;0;L; 0079;;;;N;;;24CE;;24CE -24E9;CIRCLED LATIN SMALL LETTER Z;So;0;L; 007A;;;;N;;;24CF;;24CF -24EA;CIRCLED DIGIT ZERO;No;0;ON; 0030;;0;0;N;;;;; -24EB;NEGATIVE CIRCLED NUMBER ELEVEN;No;0;ON;;;;11;N;;;;; -24EC;NEGATIVE CIRCLED NUMBER TWELVE;No;0;ON;;;;12;N;;;;; -24ED;NEGATIVE CIRCLED NUMBER THIRTEEN;No;0;ON;;;;13;N;;;;; -24EE;NEGATIVE CIRCLED NUMBER FOURTEEN;No;0;ON;;;;14;N;;;;; -24EF;NEGATIVE CIRCLED NUMBER FIFTEEN;No;0;ON;;;;15;N;;;;; -24F0;NEGATIVE CIRCLED NUMBER SIXTEEN;No;0;ON;;;;16;N;;;;; -24F1;NEGATIVE CIRCLED NUMBER SEVENTEEN;No;0;ON;;;;17;N;;;;; -24F2;NEGATIVE CIRCLED NUMBER EIGHTEEN;No;0;ON;;;;18;N;;;;; -24F3;NEGATIVE CIRCLED NUMBER NINETEEN;No;0;ON;;;;19;N;;;;; -24F4;NEGATIVE CIRCLED NUMBER TWENTY;No;0;ON;;;;20;N;;;;; -24F5;DOUBLE CIRCLED DIGIT ONE;No;0;ON;;;1;1;N;;;;; -24F6;DOUBLE CIRCLED DIGIT TWO;No;0;ON;;;2;2;N;;;;; -24F7;DOUBLE CIRCLED DIGIT THREE;No;0;ON;;;3;3;N;;;;; -24F8;DOUBLE CIRCLED DIGIT FOUR;No;0;ON;;;4;4;N;;;;; -24F9;DOUBLE CIRCLED DIGIT FIVE;No;0;ON;;;5;5;N;;;;; -24FA;DOUBLE CIRCLED DIGIT SIX;No;0;ON;;;6;6;N;;;;; -24FB;DOUBLE CIRCLED DIGIT SEVEN;No;0;ON;;;7;7;N;;;;; -24FC;DOUBLE CIRCLED DIGIT EIGHT;No;0;ON;;;8;8;N;;;;; -24FD;DOUBLE CIRCLED DIGIT NINE;No;0;ON;;;9;9;N;;;;; -24FE;DOUBLE CIRCLED NUMBER TEN;No;0;ON;;;;10;N;;;;; -24FF;NEGATIVE CIRCLED DIGIT ZERO;No;0;ON;;;0;0;N;;;;; -2500;BOX DRAWINGS LIGHT HORIZONTAL;So;0;ON;;;;;N;FORMS LIGHT HORIZONTAL;;;; -2501;BOX DRAWINGS HEAVY HORIZONTAL;So;0;ON;;;;;N;FORMS HEAVY HORIZONTAL;;;; -2502;BOX DRAWINGS LIGHT VERTICAL;So;0;ON;;;;;N;FORMS LIGHT VERTICAL;;;; -2503;BOX DRAWINGS HEAVY VERTICAL;So;0;ON;;;;;N;FORMS HEAVY VERTICAL;;;; -2504;BOX DRAWINGS LIGHT TRIPLE DASH HORIZONTAL;So;0;ON;;;;;N;FORMS LIGHT TRIPLE DASH HORIZONTAL;;;; -2505;BOX DRAWINGS HEAVY TRIPLE DASH HORIZONTAL;So;0;ON;;;;;N;FORMS HEAVY TRIPLE DASH HORIZONTAL;;;; -2506;BOX DRAWINGS LIGHT TRIPLE DASH VERTICAL;So;0;ON;;;;;N;FORMS LIGHT TRIPLE DASH VERTICAL;;;; -2507;BOX DRAWINGS HEAVY TRIPLE DASH VERTICAL;So;0;ON;;;;;N;FORMS HEAVY TRIPLE DASH VERTICAL;;;; -2508;BOX DRAWINGS LIGHT QUADRUPLE DASH HORIZONTAL;So;0;ON;;;;;N;FORMS LIGHT QUADRUPLE DASH HORIZONTAL;;;; -2509;BOX DRAWINGS HEAVY QUADRUPLE DASH HORIZONTAL;So;0;ON;;;;;N;FORMS HEAVY QUADRUPLE DASH HORIZONTAL;;;; -250A;BOX DRAWINGS LIGHT QUADRUPLE DASH VERTICAL;So;0;ON;;;;;N;FORMS LIGHT QUADRUPLE DASH VERTICAL;;;; -250B;BOX DRAWINGS HEAVY QUADRUPLE DASH VERTICAL;So;0;ON;;;;;N;FORMS HEAVY QUADRUPLE DASH VERTICAL;;;; -250C;BOX DRAWINGS LIGHT DOWN AND RIGHT;So;0;ON;;;;;N;FORMS LIGHT DOWN AND RIGHT;;;; -250D;BOX DRAWINGS DOWN LIGHT AND RIGHT HEAVY;So;0;ON;;;;;N;FORMS DOWN LIGHT AND RIGHT HEAVY;;;; -250E;BOX DRAWINGS DOWN HEAVY AND RIGHT LIGHT;So;0;ON;;;;;N;FORMS DOWN HEAVY AND RIGHT LIGHT;;;; -250F;BOX DRAWINGS HEAVY DOWN AND RIGHT;So;0;ON;;;;;N;FORMS HEAVY DOWN AND RIGHT;;;; -2510;BOX DRAWINGS LIGHT DOWN AND LEFT;So;0;ON;;;;;N;FORMS LIGHT DOWN AND LEFT;;;; -2511;BOX DRAWINGS DOWN LIGHT AND LEFT HEAVY;So;0;ON;;;;;N;FORMS DOWN LIGHT AND LEFT HEAVY;;;; -2512;BOX DRAWINGS DOWN HEAVY AND LEFT LIGHT;So;0;ON;;;;;N;FORMS DOWN HEAVY AND LEFT LIGHT;;;; -2513;BOX DRAWINGS HEAVY DOWN AND LEFT;So;0;ON;;;;;N;FORMS HEAVY DOWN AND LEFT;;;; -2514;BOX DRAWINGS LIGHT UP AND RIGHT;So;0;ON;;;;;N;FORMS LIGHT UP AND RIGHT;;;; -2515;BOX DRAWINGS UP LIGHT AND RIGHT HEAVY;So;0;ON;;;;;N;FORMS UP LIGHT AND RIGHT HEAVY;;;; -2516;BOX DRAWINGS UP HEAVY AND RIGHT LIGHT;So;0;ON;;;;;N;FORMS UP HEAVY AND RIGHT LIGHT;;;; -2517;BOX DRAWINGS HEAVY UP AND RIGHT;So;0;ON;;;;;N;FORMS HEAVY UP AND RIGHT;;;; -2518;BOX DRAWINGS LIGHT UP AND LEFT;So;0;ON;;;;;N;FORMS LIGHT UP AND LEFT;;;; -2519;BOX DRAWINGS UP LIGHT AND LEFT HEAVY;So;0;ON;;;;;N;FORMS UP LIGHT AND LEFT HEAVY;;;; -251A;BOX DRAWINGS UP HEAVY AND LEFT LIGHT;So;0;ON;;;;;N;FORMS UP HEAVY AND LEFT LIGHT;;;; -251B;BOX DRAWINGS HEAVY UP AND LEFT;So;0;ON;;;;;N;FORMS HEAVY UP AND LEFT;;;; -251C;BOX DRAWINGS LIGHT VERTICAL AND RIGHT;So;0;ON;;;;;N;FORMS LIGHT VERTICAL AND RIGHT;;;; -251D;BOX DRAWINGS VERTICAL LIGHT AND RIGHT HEAVY;So;0;ON;;;;;N;FORMS VERTICAL LIGHT AND RIGHT HEAVY;;;; -251E;BOX DRAWINGS UP HEAVY AND RIGHT DOWN LIGHT;So;0;ON;;;;;N;FORMS UP HEAVY AND RIGHT DOWN LIGHT;;;; -251F;BOX DRAWINGS DOWN HEAVY AND RIGHT UP LIGHT;So;0;ON;;;;;N;FORMS DOWN HEAVY AND RIGHT UP LIGHT;;;; -2520;BOX DRAWINGS VERTICAL HEAVY AND RIGHT LIGHT;So;0;ON;;;;;N;FORMS VERTICAL HEAVY AND RIGHT LIGHT;;;; -2521;BOX DRAWINGS DOWN LIGHT AND RIGHT UP HEAVY;So;0;ON;;;;;N;FORMS DOWN LIGHT AND RIGHT UP HEAVY;;;; -2522;BOX DRAWINGS UP LIGHT AND RIGHT DOWN HEAVY;So;0;ON;;;;;N;FORMS UP LIGHT AND RIGHT DOWN HEAVY;;;; -2523;BOX DRAWINGS HEAVY VERTICAL AND RIGHT;So;0;ON;;;;;N;FORMS HEAVY VERTICAL AND RIGHT;;;; -2524;BOX DRAWINGS LIGHT VERTICAL AND LEFT;So;0;ON;;;;;N;FORMS LIGHT VERTICAL AND LEFT;;;; -2525;BOX DRAWINGS VERTICAL LIGHT AND LEFT HEAVY;So;0;ON;;;;;N;FORMS VERTICAL LIGHT AND LEFT HEAVY;;;; -2526;BOX DRAWINGS UP HEAVY AND LEFT DOWN LIGHT;So;0;ON;;;;;N;FORMS UP HEAVY AND LEFT DOWN LIGHT;;;; -2527;BOX DRAWINGS DOWN HEAVY AND LEFT UP LIGHT;So;0;ON;;;;;N;FORMS DOWN HEAVY AND LEFT UP LIGHT;;;; -2528;BOX DRAWINGS VERTICAL HEAVY AND LEFT LIGHT;So;0;ON;;;;;N;FORMS VERTICAL HEAVY AND LEFT LIGHT;;;; -2529;BOX DRAWINGS DOWN LIGHT AND LEFT UP HEAVY;So;0;ON;;;;;N;FORMS DOWN LIGHT AND LEFT UP HEAVY;;;; -252A;BOX DRAWINGS UP LIGHT AND LEFT DOWN HEAVY;So;0;ON;;;;;N;FORMS UP LIGHT AND LEFT DOWN HEAVY;;;; -252B;BOX DRAWINGS HEAVY VERTICAL AND LEFT;So;0;ON;;;;;N;FORMS HEAVY VERTICAL AND LEFT;;;; -252C;BOX DRAWINGS LIGHT DOWN AND HORIZONTAL;So;0;ON;;;;;N;FORMS LIGHT DOWN AND HORIZONTAL;;;; -252D;BOX DRAWINGS LEFT HEAVY AND RIGHT DOWN LIGHT;So;0;ON;;;;;N;FORMS LEFT HEAVY AND RIGHT DOWN LIGHT;;;; -252E;BOX DRAWINGS RIGHT HEAVY AND LEFT DOWN LIGHT;So;0;ON;;;;;N;FORMS RIGHT HEAVY AND LEFT DOWN LIGHT;;;; -252F;BOX DRAWINGS DOWN LIGHT AND HORIZONTAL HEAVY;So;0;ON;;;;;N;FORMS DOWN LIGHT AND HORIZONTAL HEAVY;;;; -2530;BOX DRAWINGS DOWN HEAVY AND HORIZONTAL LIGHT;So;0;ON;;;;;N;FORMS DOWN HEAVY AND HORIZONTAL LIGHT;;;; -2531;BOX DRAWINGS RIGHT LIGHT AND LEFT DOWN HEAVY;So;0;ON;;;;;N;FORMS RIGHT LIGHT AND LEFT DOWN HEAVY;;;; -2532;BOX DRAWINGS LEFT LIGHT AND RIGHT DOWN HEAVY;So;0;ON;;;;;N;FORMS LEFT LIGHT AND RIGHT DOWN HEAVY;;;; -2533;BOX DRAWINGS HEAVY DOWN AND HORIZONTAL;So;0;ON;;;;;N;FORMS HEAVY DOWN AND HORIZONTAL;;;; -2534;BOX DRAWINGS LIGHT UP AND HORIZONTAL;So;0;ON;;;;;N;FORMS LIGHT UP AND HORIZONTAL;;;; -2535;BOX DRAWINGS LEFT HEAVY AND RIGHT UP LIGHT;So;0;ON;;;;;N;FORMS LEFT HEAVY AND RIGHT UP LIGHT;;;; -2536;BOX DRAWINGS RIGHT HEAVY AND LEFT UP LIGHT;So;0;ON;;;;;N;FORMS RIGHT HEAVY AND LEFT UP LIGHT;;;; -2537;BOX DRAWINGS UP LIGHT AND HORIZONTAL HEAVY;So;0;ON;;;;;N;FORMS UP LIGHT AND HORIZONTAL HEAVY;;;; -2538;BOX DRAWINGS UP HEAVY AND HORIZONTAL LIGHT;So;0;ON;;;;;N;FORMS UP HEAVY AND HORIZONTAL LIGHT;;;; -2539;BOX DRAWINGS RIGHT LIGHT AND LEFT UP HEAVY;So;0;ON;;;;;N;FORMS RIGHT LIGHT AND LEFT UP HEAVY;;;; -253A;BOX DRAWINGS LEFT LIGHT AND RIGHT UP HEAVY;So;0;ON;;;;;N;FORMS LEFT LIGHT AND RIGHT UP HEAVY;;;; -253B;BOX DRAWINGS HEAVY UP AND HORIZONTAL;So;0;ON;;;;;N;FORMS HEAVY UP AND HORIZONTAL;;;; -253C;BOX DRAWINGS LIGHT VERTICAL AND HORIZONTAL;So;0;ON;;;;;N;FORMS LIGHT VERTICAL AND HORIZONTAL;;;; -253D;BOX DRAWINGS LEFT HEAVY AND RIGHT VERTICAL LIGHT;So;0;ON;;;;;N;FORMS LEFT HEAVY AND RIGHT VERTICAL LIGHT;;;; -253E;BOX DRAWINGS RIGHT HEAVY AND LEFT VERTICAL LIGHT;So;0;ON;;;;;N;FORMS RIGHT HEAVY AND LEFT VERTICAL LIGHT;;;; -253F;BOX DRAWINGS VERTICAL LIGHT AND HORIZONTAL HEAVY;So;0;ON;;;;;N;FORMS VERTICAL LIGHT AND HORIZONTAL HEAVY;;;; -2540;BOX DRAWINGS UP HEAVY AND DOWN HORIZONTAL LIGHT;So;0;ON;;;;;N;FORMS UP HEAVY AND DOWN HORIZONTAL LIGHT;;;; -2541;BOX DRAWINGS DOWN HEAVY AND UP HORIZONTAL LIGHT;So;0;ON;;;;;N;FORMS DOWN HEAVY AND UP HORIZONTAL LIGHT;;;; -2542;BOX DRAWINGS VERTICAL HEAVY AND HORIZONTAL LIGHT;So;0;ON;;;;;N;FORMS VERTICAL HEAVY AND HORIZONTAL LIGHT;;;; -2543;BOX DRAWINGS LEFT UP HEAVY AND RIGHT DOWN LIGHT;So;0;ON;;;;;N;FORMS LEFT UP HEAVY AND RIGHT DOWN LIGHT;;;; -2544;BOX DRAWINGS RIGHT UP HEAVY AND LEFT DOWN LIGHT;So;0;ON;;;;;N;FORMS RIGHT UP HEAVY AND LEFT DOWN LIGHT;;;; -2545;BOX DRAWINGS LEFT DOWN HEAVY AND RIGHT UP LIGHT;So;0;ON;;;;;N;FORMS LEFT DOWN HEAVY AND RIGHT UP LIGHT;;;; -2546;BOX DRAWINGS RIGHT DOWN HEAVY AND LEFT UP LIGHT;So;0;ON;;;;;N;FORMS RIGHT DOWN HEAVY AND LEFT UP LIGHT;;;; -2547;BOX DRAWINGS DOWN LIGHT AND UP HORIZONTAL HEAVY;So;0;ON;;;;;N;FORMS DOWN LIGHT AND UP HORIZONTAL HEAVY;;;; -2548;BOX DRAWINGS UP LIGHT AND DOWN HORIZONTAL HEAVY;So;0;ON;;;;;N;FORMS UP LIGHT AND DOWN HORIZONTAL HEAVY;;;; -2549;BOX DRAWINGS RIGHT LIGHT AND LEFT VERTICAL HEAVY;So;0;ON;;;;;N;FORMS RIGHT LIGHT AND LEFT VERTICAL HEAVY;;;; -254A;BOX DRAWINGS LEFT LIGHT AND RIGHT VERTICAL HEAVY;So;0;ON;;;;;N;FORMS LEFT LIGHT AND RIGHT VERTICAL HEAVY;;;; -254B;BOX DRAWINGS HEAVY VERTICAL AND HORIZONTAL;So;0;ON;;;;;N;FORMS HEAVY VERTICAL AND HORIZONTAL;;;; -254C;BOX DRAWINGS LIGHT DOUBLE DASH HORIZONTAL;So;0;ON;;;;;N;FORMS LIGHT DOUBLE DASH HORIZONTAL;;;; -254D;BOX DRAWINGS HEAVY DOUBLE DASH HORIZONTAL;So;0;ON;;;;;N;FORMS HEAVY DOUBLE DASH HORIZONTAL;;;; -254E;BOX DRAWINGS LIGHT DOUBLE DASH VERTICAL;So;0;ON;;;;;N;FORMS LIGHT DOUBLE DASH VERTICAL;;;; -254F;BOX DRAWINGS HEAVY DOUBLE DASH VERTICAL;So;0;ON;;;;;N;FORMS HEAVY DOUBLE DASH VERTICAL;;;; -2550;BOX DRAWINGS DOUBLE HORIZONTAL;So;0;ON;;;;;N;FORMS DOUBLE HORIZONTAL;;;; -2551;BOX DRAWINGS DOUBLE VERTICAL;So;0;ON;;;;;N;FORMS DOUBLE VERTICAL;;;; -2552;BOX DRAWINGS DOWN SINGLE AND RIGHT DOUBLE;So;0;ON;;;;;N;FORMS DOWN SINGLE AND RIGHT DOUBLE;;;; -2553;BOX DRAWINGS DOWN DOUBLE AND RIGHT SINGLE;So;0;ON;;;;;N;FORMS DOWN DOUBLE AND RIGHT SINGLE;;;; -2554;BOX DRAWINGS DOUBLE DOWN AND RIGHT;So;0;ON;;;;;N;FORMS DOUBLE DOWN AND RIGHT;;;; -2555;BOX DRAWINGS DOWN SINGLE AND LEFT DOUBLE;So;0;ON;;;;;N;FORMS DOWN SINGLE AND LEFT DOUBLE;;;; -2556;BOX DRAWINGS DOWN DOUBLE AND LEFT SINGLE;So;0;ON;;;;;N;FORMS DOWN DOUBLE AND LEFT SINGLE;;;; -2557;BOX DRAWINGS DOUBLE DOWN AND LEFT;So;0;ON;;;;;N;FORMS DOUBLE DOWN AND LEFT;;;; -2558;BOX DRAWINGS UP SINGLE AND RIGHT DOUBLE;So;0;ON;;;;;N;FORMS UP SINGLE AND RIGHT DOUBLE;;;; -2559;BOX DRAWINGS UP DOUBLE AND RIGHT SINGLE;So;0;ON;;;;;N;FORMS UP DOUBLE AND RIGHT SINGLE;;;; -255A;BOX DRAWINGS DOUBLE UP AND RIGHT;So;0;ON;;;;;N;FORMS DOUBLE UP AND RIGHT;;;; -255B;BOX DRAWINGS UP SINGLE AND LEFT DOUBLE;So;0;ON;;;;;N;FORMS UP SINGLE AND LEFT DOUBLE;;;; -255C;BOX DRAWINGS UP DOUBLE AND LEFT SINGLE;So;0;ON;;;;;N;FORMS UP DOUBLE AND LEFT SINGLE;;;; -255D;BOX DRAWINGS DOUBLE UP AND LEFT;So;0;ON;;;;;N;FORMS DOUBLE UP AND LEFT;;;; -255E;BOX DRAWINGS VERTICAL SINGLE AND RIGHT DOUBLE;So;0;ON;;;;;N;FORMS VERTICAL SINGLE AND RIGHT DOUBLE;;;; -255F;BOX DRAWINGS VERTICAL DOUBLE AND RIGHT SINGLE;So;0;ON;;;;;N;FORMS VERTICAL DOUBLE AND RIGHT SINGLE;;;; -2560;BOX DRAWINGS DOUBLE VERTICAL AND RIGHT;So;0;ON;;;;;N;FORMS DOUBLE VERTICAL AND RIGHT;;;; -2561;BOX DRAWINGS VERTICAL SINGLE AND LEFT DOUBLE;So;0;ON;;;;;N;FORMS VERTICAL SINGLE AND LEFT DOUBLE;;;; -2562;BOX DRAWINGS VERTICAL DOUBLE AND LEFT SINGLE;So;0;ON;;;;;N;FORMS VERTICAL DOUBLE AND LEFT SINGLE;;;; -2563;BOX DRAWINGS DOUBLE VERTICAL AND LEFT;So;0;ON;;;;;N;FORMS DOUBLE VERTICAL AND LEFT;;;; -2564;BOX DRAWINGS DOWN SINGLE AND HORIZONTAL DOUBLE;So;0;ON;;;;;N;FORMS DOWN SINGLE AND HORIZONTAL DOUBLE;;;; -2565;BOX DRAWINGS DOWN DOUBLE AND HORIZONTAL SINGLE;So;0;ON;;;;;N;FORMS DOWN DOUBLE AND HORIZONTAL SINGLE;;;; -2566;BOX DRAWINGS DOUBLE DOWN AND HORIZONTAL;So;0;ON;;;;;N;FORMS DOUBLE DOWN AND HORIZONTAL;;;; -2567;BOX DRAWINGS UP SINGLE AND HORIZONTAL DOUBLE;So;0;ON;;;;;N;FORMS UP SINGLE AND HORIZONTAL DOUBLE;;;; -2568;BOX DRAWINGS UP DOUBLE AND HORIZONTAL SINGLE;So;0;ON;;;;;N;FORMS UP DOUBLE AND HORIZONTAL SINGLE;;;; -2569;BOX DRAWINGS DOUBLE UP AND HORIZONTAL;So;0;ON;;;;;N;FORMS DOUBLE UP AND HORIZONTAL;;;; -256A;BOX DRAWINGS VERTICAL SINGLE AND HORIZONTAL DOUBLE;So;0;ON;;;;;N;FORMS VERTICAL SINGLE AND HORIZONTAL DOUBLE;;;; -256B;BOX DRAWINGS VERTICAL DOUBLE AND HORIZONTAL SINGLE;So;0;ON;;;;;N;FORMS VERTICAL DOUBLE AND HORIZONTAL SINGLE;;;; -256C;BOX DRAWINGS DOUBLE VERTICAL AND HORIZONTAL;So;0;ON;;;;;N;FORMS DOUBLE VERTICAL AND HORIZONTAL;;;; -256D;BOX DRAWINGS LIGHT ARC DOWN AND RIGHT;So;0;ON;;;;;N;FORMS LIGHT ARC DOWN AND RIGHT;;;; -256E;BOX DRAWINGS LIGHT ARC DOWN AND LEFT;So;0;ON;;;;;N;FORMS LIGHT ARC DOWN AND LEFT;;;; -256F;BOX DRAWINGS LIGHT ARC UP AND LEFT;So;0;ON;;;;;N;FORMS LIGHT ARC UP AND LEFT;;;; -2570;BOX DRAWINGS LIGHT ARC UP AND RIGHT;So;0;ON;;;;;N;FORMS LIGHT ARC UP AND RIGHT;;;; -2571;BOX DRAWINGS LIGHT DIAGONAL UPPER RIGHT TO LOWER LEFT;So;0;ON;;;;;N;FORMS LIGHT DIAGONAL UPPER RIGHT TO LOWER LEFT;;;; -2572;BOX DRAWINGS LIGHT DIAGONAL UPPER LEFT TO LOWER RIGHT;So;0;ON;;;;;N;FORMS LIGHT DIAGONAL UPPER LEFT TO LOWER RIGHT;;;; -2573;BOX DRAWINGS LIGHT DIAGONAL CROSS;So;0;ON;;;;;N;FORMS LIGHT DIAGONAL CROSS;;;; -2574;BOX DRAWINGS LIGHT LEFT;So;0;ON;;;;;N;FORMS LIGHT LEFT;;;; -2575;BOX DRAWINGS LIGHT UP;So;0;ON;;;;;N;FORMS LIGHT UP;;;; -2576;BOX DRAWINGS LIGHT RIGHT;So;0;ON;;;;;N;FORMS LIGHT RIGHT;;;; -2577;BOX DRAWINGS LIGHT DOWN;So;0;ON;;;;;N;FORMS LIGHT DOWN;;;; -2578;BOX DRAWINGS HEAVY LEFT;So;0;ON;;;;;N;FORMS HEAVY LEFT;;;; -2579;BOX DRAWINGS HEAVY UP;So;0;ON;;;;;N;FORMS HEAVY UP;;;; -257A;BOX DRAWINGS HEAVY RIGHT;So;0;ON;;;;;N;FORMS HEAVY RIGHT;;;; -257B;BOX DRAWINGS HEAVY DOWN;So;0;ON;;;;;N;FORMS HEAVY DOWN;;;; -257C;BOX DRAWINGS LIGHT LEFT AND HEAVY RIGHT;So;0;ON;;;;;N;FORMS LIGHT LEFT AND HEAVY RIGHT;;;; -257D;BOX DRAWINGS LIGHT UP AND HEAVY DOWN;So;0;ON;;;;;N;FORMS LIGHT UP AND HEAVY DOWN;;;; -257E;BOX DRAWINGS HEAVY LEFT AND LIGHT RIGHT;So;0;ON;;;;;N;FORMS HEAVY LEFT AND LIGHT RIGHT;;;; -257F;BOX DRAWINGS HEAVY UP AND LIGHT DOWN;So;0;ON;;;;;N;FORMS HEAVY UP AND LIGHT DOWN;;;; -2580;UPPER HALF BLOCK;So;0;ON;;;;;N;;;;; -2581;LOWER ONE EIGHTH BLOCK;So;0;ON;;;;;N;;;;; -2582;LOWER ONE QUARTER BLOCK;So;0;ON;;;;;N;;;;; -2583;LOWER THREE EIGHTHS BLOCK;So;0;ON;;;;;N;;;;; -2584;LOWER HALF BLOCK;So;0;ON;;;;;N;;;;; -2585;LOWER FIVE EIGHTHS BLOCK;So;0;ON;;;;;N;;;;; -2586;LOWER THREE QUARTERS BLOCK;So;0;ON;;;;;N;LOWER THREE QUARTER BLOCK;;;; -2587;LOWER SEVEN EIGHTHS BLOCK;So;0;ON;;;;;N;;;;; -2588;FULL BLOCK;So;0;ON;;;;;N;;;;; -2589;LEFT SEVEN EIGHTHS BLOCK;So;0;ON;;;;;N;;;;; -258A;LEFT THREE QUARTERS BLOCK;So;0;ON;;;;;N;LEFT THREE QUARTER BLOCK;;;; -258B;LEFT FIVE EIGHTHS BLOCK;So;0;ON;;;;;N;;;;; -258C;LEFT HALF BLOCK;So;0;ON;;;;;N;;;;; -258D;LEFT THREE EIGHTHS BLOCK;So;0;ON;;;;;N;;;;; -258E;LEFT ONE QUARTER BLOCK;So;0;ON;;;;;N;;;;; -258F;LEFT ONE EIGHTH BLOCK;So;0;ON;;;;;N;;;;; -2590;RIGHT HALF BLOCK;So;0;ON;;;;;N;;;;; -2591;LIGHT SHADE;So;0;ON;;;;;N;;;;; -2592;MEDIUM SHADE;So;0;ON;;;;;N;;;;; -2593;DARK SHADE;So;0;ON;;;;;N;;;;; -2594;UPPER ONE EIGHTH BLOCK;So;0;ON;;;;;N;;;;; -2595;RIGHT ONE EIGHTH BLOCK;So;0;ON;;;;;N;;;;; -2596;QUADRANT LOWER LEFT;So;0;ON;;;;;N;;;;; -2597;QUADRANT LOWER RIGHT;So;0;ON;;;;;N;;;;; -2598;QUADRANT UPPER LEFT;So;0;ON;;;;;N;;;;; -2599;QUADRANT UPPER LEFT AND LOWER LEFT AND LOWER RIGHT;So;0;ON;;;;;N;;;;; -259A;QUADRANT UPPER LEFT AND LOWER RIGHT;So;0;ON;;;;;N;;;;; -259B;QUADRANT UPPER LEFT AND UPPER RIGHT AND LOWER LEFT;So;0;ON;;;;;N;;;;; -259C;QUADRANT UPPER LEFT AND UPPER RIGHT AND LOWER RIGHT;So;0;ON;;;;;N;;;;; -259D;QUADRANT UPPER RIGHT;So;0;ON;;;;;N;;;;; -259E;QUADRANT UPPER RIGHT AND LOWER LEFT;So;0;ON;;;;;N;;;;; -259F;QUADRANT UPPER RIGHT AND LOWER LEFT AND LOWER RIGHT;So;0;ON;;;;;N;;;;; -25A0;BLACK SQUARE;So;0;ON;;;;;N;;;;; -25A1;WHITE SQUARE;So;0;ON;;;;;N;;;;; -25A2;WHITE SQUARE WITH ROUNDED CORNERS;So;0;ON;;;;;N;;;;; -25A3;WHITE SQUARE CONTAINING BLACK SMALL SQUARE;So;0;ON;;;;;N;;;;; -25A4;SQUARE WITH HORIZONTAL FILL;So;0;ON;;;;;N;;;;; -25A5;SQUARE WITH VERTICAL FILL;So;0;ON;;;;;N;;;;; -25A6;SQUARE WITH ORTHOGONAL CROSSHATCH FILL;So;0;ON;;;;;N;;;;; -25A7;SQUARE WITH UPPER LEFT TO LOWER RIGHT FILL;So;0;ON;;;;;N;;;;; -25A8;SQUARE WITH UPPER RIGHT TO LOWER LEFT FILL;So;0;ON;;;;;N;;;;; -25A9;SQUARE WITH DIAGONAL CROSSHATCH FILL;So;0;ON;;;;;N;;;;; -25AA;BLACK SMALL SQUARE;So;0;ON;;;;;N;;;;; -25AB;WHITE SMALL SQUARE;So;0;ON;;;;;N;;;;; -25AC;BLACK RECTANGLE;So;0;ON;;;;;N;;;;; -25AD;WHITE RECTANGLE;So;0;ON;;;;;N;;;;; -25AE;BLACK VERTICAL RECTANGLE;So;0;ON;;;;;N;;;;; -25AF;WHITE VERTICAL RECTANGLE;So;0;ON;;;;;N;;;;; -25B0;BLACK PARALLELOGRAM;So;0;ON;;;;;N;;;;; -25B1;WHITE PARALLELOGRAM;So;0;ON;;;;;N;;;;; -25B2;BLACK UP-POINTING TRIANGLE;So;0;ON;;;;;N;BLACK UP POINTING TRIANGLE;;;; -25B3;WHITE UP-POINTING TRIANGLE;So;0;ON;;;;;N;WHITE UP POINTING TRIANGLE;;;; -25B4;BLACK UP-POINTING SMALL TRIANGLE;So;0;ON;;;;;N;BLACK UP POINTING SMALL TRIANGLE;;;; -25B5;WHITE UP-POINTING SMALL TRIANGLE;So;0;ON;;;;;N;WHITE UP POINTING SMALL TRIANGLE;;;; -25B6;BLACK RIGHT-POINTING TRIANGLE;So;0;ON;;;;;N;BLACK RIGHT POINTING TRIANGLE;;;; -25B7;WHITE RIGHT-POINTING TRIANGLE;Sm;0;ON;;;;;N;WHITE RIGHT POINTING TRIANGLE;;;; -25B8;BLACK RIGHT-POINTING SMALL TRIANGLE;So;0;ON;;;;;N;BLACK RIGHT POINTING SMALL TRIANGLE;;;; -25B9;WHITE RIGHT-POINTING SMALL TRIANGLE;So;0;ON;;;;;N;WHITE RIGHT POINTING SMALL TRIANGLE;;;; -25BA;BLACK RIGHT-POINTING POINTER;So;0;ON;;;;;N;BLACK RIGHT POINTING POINTER;;;; -25BB;WHITE RIGHT-POINTING POINTER;So;0;ON;;;;;N;WHITE RIGHT POINTING POINTER;;;; -25BC;BLACK DOWN-POINTING TRIANGLE;So;0;ON;;;;;N;BLACK DOWN POINTING TRIANGLE;;;; -25BD;WHITE DOWN-POINTING TRIANGLE;So;0;ON;;;;;N;WHITE DOWN POINTING TRIANGLE;;;; -25BE;BLACK DOWN-POINTING SMALL TRIANGLE;So;0;ON;;;;;N;BLACK DOWN POINTING SMALL TRIANGLE;;;; -25BF;WHITE DOWN-POINTING SMALL TRIANGLE;So;0;ON;;;;;N;WHITE DOWN POINTING SMALL TRIANGLE;;;; -25C0;BLACK LEFT-POINTING TRIANGLE;So;0;ON;;;;;N;BLACK LEFT POINTING TRIANGLE;;;; -25C1;WHITE LEFT-POINTING TRIANGLE;Sm;0;ON;;;;;N;WHITE LEFT POINTING TRIANGLE;;;; -25C2;BLACK LEFT-POINTING SMALL TRIANGLE;So;0;ON;;;;;N;BLACK LEFT POINTING SMALL TRIANGLE;;;; -25C3;WHITE LEFT-POINTING SMALL TRIANGLE;So;0;ON;;;;;N;WHITE LEFT POINTING SMALL TRIANGLE;;;; -25C4;BLACK LEFT-POINTING POINTER;So;0;ON;;;;;N;BLACK LEFT POINTING POINTER;;;; -25C5;WHITE LEFT-POINTING POINTER;So;0;ON;;;;;N;WHITE LEFT POINTING POINTER;;;; -25C6;BLACK DIAMOND;So;0;ON;;;;;N;;;;; -25C7;WHITE DIAMOND;So;0;ON;;;;;N;;;;; -25C8;WHITE DIAMOND CONTAINING BLACK SMALL DIAMOND;So;0;ON;;;;;N;;;;; -25C9;FISHEYE;So;0;ON;;;;;N;;;;; -25CA;LOZENGE;So;0;ON;;;;;N;;;;; -25CB;WHITE CIRCLE;So;0;ON;;;;;N;;;;; -25CC;DOTTED CIRCLE;So;0;ON;;;;;N;;;;; -25CD;CIRCLE WITH VERTICAL FILL;So;0;ON;;;;;N;;;;; -25CE;BULLSEYE;So;0;ON;;;;;N;;;;; -25CF;BLACK CIRCLE;So;0;ON;;;;;N;;;;; -25D0;CIRCLE WITH LEFT HALF BLACK;So;0;ON;;;;;N;;;;; -25D1;CIRCLE WITH RIGHT HALF BLACK;So;0;ON;;;;;N;;;;; -25D2;CIRCLE WITH LOWER HALF BLACK;So;0;ON;;;;;N;;;;; -25D3;CIRCLE WITH UPPER HALF BLACK;So;0;ON;;;;;N;;;;; -25D4;CIRCLE WITH UPPER RIGHT QUADRANT BLACK;So;0;ON;;;;;N;;;;; -25D5;CIRCLE WITH ALL BUT UPPER LEFT QUADRANT BLACK;So;0;ON;;;;;N;;;;; -25D6;LEFT HALF BLACK CIRCLE;So;0;ON;;;;;N;;;;; -25D7;RIGHT HALF BLACK CIRCLE;So;0;ON;;;;;N;;;;; -25D8;INVERSE BULLET;So;0;ON;;;;;N;;;;; -25D9;INVERSE WHITE CIRCLE;So;0;ON;;;;;N;;;;; -25DA;UPPER HALF INVERSE WHITE CIRCLE;So;0;ON;;;;;N;;;;; -25DB;LOWER HALF INVERSE WHITE CIRCLE;So;0;ON;;;;;N;;;;; -25DC;UPPER LEFT QUADRANT CIRCULAR ARC;So;0;ON;;;;;N;;;;; -25DD;UPPER RIGHT QUADRANT CIRCULAR ARC;So;0;ON;;;;;N;;;;; -25DE;LOWER RIGHT QUADRANT CIRCULAR ARC;So;0;ON;;;;;N;;;;; -25DF;LOWER LEFT QUADRANT CIRCULAR ARC;So;0;ON;;;;;N;;;;; -25E0;UPPER HALF CIRCLE;So;0;ON;;;;;N;;;;; -25E1;LOWER HALF CIRCLE;So;0;ON;;;;;N;;;;; -25E2;BLACK LOWER RIGHT TRIANGLE;So;0;ON;;;;;N;;;;; -25E3;BLACK LOWER LEFT TRIANGLE;So;0;ON;;;;;N;;;;; -25E4;BLACK UPPER LEFT TRIANGLE;So;0;ON;;;;;N;;;;; -25E5;BLACK UPPER RIGHT TRIANGLE;So;0;ON;;;;;N;;;;; -25E6;WHITE BULLET;So;0;ON;;;;;N;;;;; -25E7;SQUARE WITH LEFT HALF BLACK;So;0;ON;;;;;N;;;;; -25E8;SQUARE WITH RIGHT HALF BLACK;So;0;ON;;;;;N;;;;; -25E9;SQUARE WITH UPPER LEFT DIAGONAL HALF BLACK;So;0;ON;;;;;N;;;;; -25EA;SQUARE WITH LOWER RIGHT DIAGONAL HALF BLACK;So;0;ON;;;;;N;;;;; -25EB;WHITE SQUARE WITH VERTICAL BISECTING LINE;So;0;ON;;;;;N;;;;; -25EC;WHITE UP-POINTING TRIANGLE WITH DOT;So;0;ON;;;;;N;WHITE UP POINTING TRIANGLE WITH DOT;;;; -25ED;UP-POINTING TRIANGLE WITH LEFT HALF BLACK;So;0;ON;;;;;N;UP POINTING TRIANGLE WITH LEFT HALF BLACK;;;; -25EE;UP-POINTING TRIANGLE WITH RIGHT HALF BLACK;So;0;ON;;;;;N;UP POINTING TRIANGLE WITH RIGHT HALF BLACK;;;; -25EF;LARGE CIRCLE;So;0;ON;;;;;N;;;;; -25F0;WHITE SQUARE WITH UPPER LEFT QUADRANT;So;0;ON;;;;;N;;;;; -25F1;WHITE SQUARE WITH LOWER LEFT QUADRANT;So;0;ON;;;;;N;;;;; -25F2;WHITE SQUARE WITH LOWER RIGHT QUADRANT;So;0;ON;;;;;N;;;;; -25F3;WHITE SQUARE WITH UPPER RIGHT QUADRANT;So;0;ON;;;;;N;;;;; -25F4;WHITE CIRCLE WITH UPPER LEFT QUADRANT;So;0;ON;;;;;N;;;;; -25F5;WHITE CIRCLE WITH LOWER LEFT QUADRANT;So;0;ON;;;;;N;;;;; -25F6;WHITE CIRCLE WITH LOWER RIGHT QUADRANT;So;0;ON;;;;;N;;;;; -25F7;WHITE CIRCLE WITH UPPER RIGHT QUADRANT;So;0;ON;;;;;N;;;;; -25F8;UPPER LEFT TRIANGLE;Sm;0;ON;;;;;N;;;;; -25F9;UPPER RIGHT TRIANGLE;Sm;0;ON;;;;;N;;;;; -25FA;LOWER LEFT TRIANGLE;Sm;0;ON;;;;;N;;;;; -25FB;WHITE MEDIUM SQUARE;Sm;0;ON;;;;;N;;;;; -25FC;BLACK MEDIUM SQUARE;Sm;0;ON;;;;;N;;;;; -25FD;WHITE MEDIUM SMALL SQUARE;Sm;0;ON;;;;;N;;;;; -25FE;BLACK MEDIUM SMALL SQUARE;Sm;0;ON;;;;;N;;;;; -25FF;LOWER RIGHT TRIANGLE;Sm;0;ON;;;;;N;;;;; -2600;BLACK SUN WITH RAYS;So;0;ON;;;;;N;;;;; -2601;CLOUD;So;0;ON;;;;;N;;;;; -2602;UMBRELLA;So;0;ON;;;;;N;;;;; -2603;SNOWMAN;So;0;ON;;;;;N;;;;; -2604;COMET;So;0;ON;;;;;N;;;;; -2605;BLACK STAR;So;0;ON;;;;;N;;;;; -2606;WHITE STAR;So;0;ON;;;;;N;;;;; -2607;LIGHTNING;So;0;ON;;;;;N;;;;; -2608;THUNDERSTORM;So;0;ON;;;;;N;;;;; -2609;SUN;So;0;ON;;;;;N;;;;; -260A;ASCENDING NODE;So;0;ON;;;;;N;;;;; -260B;DESCENDING NODE;So;0;ON;;;;;N;;;;; -260C;CONJUNCTION;So;0;ON;;;;;N;;;;; -260D;OPPOSITION;So;0;ON;;;;;N;;;;; -260E;BLACK TELEPHONE;So;0;ON;;;;;N;;;;; -260F;WHITE TELEPHONE;So;0;ON;;;;;N;;;;; -2610;BALLOT BOX;So;0;ON;;;;;N;;;;; -2611;BALLOT BOX WITH CHECK;So;0;ON;;;;;N;;;;; -2612;BALLOT BOX WITH X;So;0;ON;;;;;N;;;;; -2613;SALTIRE;So;0;ON;;;;;N;;;;; -2614;UMBRELLA WITH RAIN DROPS;So;0;ON;;;;;N;;;;; -2615;HOT BEVERAGE;So;0;ON;;;;;N;;;;; -2616;WHITE SHOGI PIECE;So;0;ON;;;;;N;;;;; -2617;BLACK SHOGI PIECE;So;0;ON;;;;;N;;;;; -2618;SHAMROCK;So;0;ON;;;;;N;;;;; -2619;REVERSED ROTATED FLORAL HEART BULLET;So;0;ON;;;;;N;;;;; -261A;BLACK LEFT POINTING INDEX;So;0;ON;;;;;N;;;;; -261B;BLACK RIGHT POINTING INDEX;So;0;ON;;;;;N;;;;; -261C;WHITE LEFT POINTING INDEX;So;0;ON;;;;;N;;;;; -261D;WHITE UP POINTING INDEX;So;0;ON;;;;;N;;;;; -261E;WHITE RIGHT POINTING INDEX;So;0;ON;;;;;N;;;;; -261F;WHITE DOWN POINTING INDEX;So;0;ON;;;;;N;;;;; -2620;SKULL AND CROSSBONES;So;0;ON;;;;;N;;;;; -2621;CAUTION SIGN;So;0;ON;;;;;N;;;;; -2622;RADIOACTIVE SIGN;So;0;ON;;;;;N;;;;; -2623;BIOHAZARD SIGN;So;0;ON;;;;;N;;;;; -2624;CADUCEUS;So;0;ON;;;;;N;;;;; -2625;ANKH;So;0;ON;;;;;N;;;;; -2626;ORTHODOX CROSS;So;0;ON;;;;;N;;;;; -2627;CHI RHO;So;0;ON;;;;;N;;;;; -2628;CROSS OF LORRAINE;So;0;ON;;;;;N;;;;; -2629;CROSS OF JERUSALEM;So;0;ON;;;;;N;;;;; -262A;STAR AND CRESCENT;So;0;ON;;;;;N;;;;; -262B;FARSI SYMBOL;So;0;ON;;;;;N;SYMBOL OF IRAN;;;; -262C;ADI SHAKTI;So;0;ON;;;;;N;;;;; -262D;HAMMER AND SICKLE;So;0;ON;;;;;N;;;;; -262E;PEACE SYMBOL;So;0;ON;;;;;N;;;;; -262F;YIN YANG;So;0;ON;;;;;N;;;;; -2630;TRIGRAM FOR HEAVEN;So;0;ON;;;;;N;;;;; -2631;TRIGRAM FOR LAKE;So;0;ON;;;;;N;;;;; -2632;TRIGRAM FOR FIRE;So;0;ON;;;;;N;;;;; -2633;TRIGRAM FOR THUNDER;So;0;ON;;;;;N;;;;; -2634;TRIGRAM FOR WIND;So;0;ON;;;;;N;;;;; -2635;TRIGRAM FOR WATER;So;0;ON;;;;;N;;;;; -2636;TRIGRAM FOR MOUNTAIN;So;0;ON;;;;;N;;;;; -2637;TRIGRAM FOR EARTH;So;0;ON;;;;;N;;;;; -2638;WHEEL OF DHARMA;So;0;ON;;;;;N;;;;; -2639;WHITE FROWNING FACE;So;0;ON;;;;;N;;;;; -263A;WHITE SMILING FACE;So;0;ON;;;;;N;;;;; -263B;BLACK SMILING FACE;So;0;ON;;;;;N;;;;; -263C;WHITE SUN WITH RAYS;So;0;ON;;;;;N;;;;; -263D;FIRST QUARTER MOON;So;0;ON;;;;;N;;;;; -263E;LAST QUARTER MOON;So;0;ON;;;;;N;;;;; -263F;MERCURY;So;0;ON;;;;;N;;;;; -2640;FEMALE SIGN;So;0;ON;;;;;N;;;;; -2641;EARTH;So;0;ON;;;;;N;;;;; -2642;MALE SIGN;So;0;ON;;;;;N;;;;; -2643;JUPITER;So;0;ON;;;;;N;;;;; -2644;SATURN;So;0;ON;;;;;N;;;;; -2645;URANUS;So;0;ON;;;;;N;;;;; -2646;NEPTUNE;So;0;ON;;;;;N;;;;; -2647;PLUTO;So;0;ON;;;;;N;;;;; -2648;ARIES;So;0;ON;;;;;N;;;;; -2649;TAURUS;So;0;ON;;;;;N;;;;; -264A;GEMINI;So;0;ON;;;;;N;;;;; -264B;CANCER;So;0;ON;;;;;N;;;;; -264C;LEO;So;0;ON;;;;;N;;;;; -264D;VIRGO;So;0;ON;;;;;N;;;;; -264E;LIBRA;So;0;ON;;;;;N;;;;; -264F;SCORPIUS;So;0;ON;;;;;N;;;;; -2650;SAGITTARIUS;So;0;ON;;;;;N;;;;; -2651;CAPRICORN;So;0;ON;;;;;N;;;;; -2652;AQUARIUS;So;0;ON;;;;;N;;;;; -2653;PISCES;So;0;ON;;;;;N;;;;; -2654;WHITE CHESS KING;So;0;ON;;;;;N;;;;; -2655;WHITE CHESS QUEEN;So;0;ON;;;;;N;;;;; -2656;WHITE CHESS ROOK;So;0;ON;;;;;N;;;;; -2657;WHITE CHESS BISHOP;So;0;ON;;;;;N;;;;; -2658;WHITE CHESS KNIGHT;So;0;ON;;;;;N;;;;; -2659;WHITE CHESS PAWN;So;0;ON;;;;;N;;;;; -265A;BLACK CHESS KING;So;0;ON;;;;;N;;;;; -265B;BLACK CHESS QUEEN;So;0;ON;;;;;N;;;;; -265C;BLACK CHESS ROOK;So;0;ON;;;;;N;;;;; -265D;BLACK CHESS BISHOP;So;0;ON;;;;;N;;;;; -265E;BLACK CHESS KNIGHT;So;0;ON;;;;;N;;;;; -265F;BLACK CHESS PAWN;So;0;ON;;;;;N;;;;; -2660;BLACK SPADE SUIT;So;0;ON;;;;;N;;;;; -2661;WHITE HEART SUIT;So;0;ON;;;;;N;;;;; -2662;WHITE DIAMOND SUIT;So;0;ON;;;;;N;;;;; -2663;BLACK CLUB SUIT;So;0;ON;;;;;N;;;;; -2664;WHITE SPADE SUIT;So;0;ON;;;;;N;;;;; -2665;BLACK HEART SUIT;So;0;ON;;;;;N;;;;; -2666;BLACK DIAMOND SUIT;So;0;ON;;;;;N;;;;; -2667;WHITE CLUB SUIT;So;0;ON;;;;;N;;;;; -2668;HOT SPRINGS;So;0;ON;;;;;N;;;;; -2669;QUARTER NOTE;So;0;ON;;;;;N;;;;; -266A;EIGHTH NOTE;So;0;ON;;;;;N;;;;; -266B;BEAMED EIGHTH NOTES;So;0;ON;;;;;N;BARRED EIGHTH NOTES;;;; -266C;BEAMED SIXTEENTH NOTES;So;0;ON;;;;;N;BARRED SIXTEENTH NOTES;;;; -266D;MUSIC FLAT SIGN;So;0;ON;;;;;N;FLAT;;;; -266E;MUSIC NATURAL SIGN;So;0;ON;;;;;N;NATURAL;;;; -266F;MUSIC SHARP SIGN;Sm;0;ON;;;;;N;SHARP;;;; -2670;WEST SYRIAC CROSS;So;0;ON;;;;;N;;;;; -2671;EAST SYRIAC CROSS;So;0;ON;;;;;N;;;;; -2672;UNIVERSAL RECYCLING SYMBOL;So;0;ON;;;;;N;;;;; -2673;RECYCLING SYMBOL FOR TYPE-1 PLASTICS;So;0;ON;;;;;N;;;;; -2674;RECYCLING SYMBOL FOR TYPE-2 PLASTICS;So;0;ON;;;;;N;;;;; -2675;RECYCLING SYMBOL FOR TYPE-3 PLASTICS;So;0;ON;;;;;N;;;;; -2676;RECYCLING SYMBOL FOR TYPE-4 PLASTICS;So;0;ON;;;;;N;;;;; -2677;RECYCLING SYMBOL FOR TYPE-5 PLASTICS;So;0;ON;;;;;N;;;;; -2678;RECYCLING SYMBOL FOR TYPE-6 PLASTICS;So;0;ON;;;;;N;;;;; -2679;RECYCLING SYMBOL FOR TYPE-7 PLASTICS;So;0;ON;;;;;N;;;;; -267A;RECYCLING SYMBOL FOR GENERIC MATERIALS;So;0;ON;;;;;N;;;;; -267B;BLACK UNIVERSAL RECYCLING SYMBOL;So;0;ON;;;;;N;;;;; -267C;RECYCLED PAPER SYMBOL;So;0;ON;;;;;N;;;;; -267D;PARTIALLY-RECYCLED PAPER SYMBOL;So;0;ON;;;;;N;;;;; -267E;PERMANENT PAPER SIGN;So;0;ON;;;;;N;;;;; -267F;WHEELCHAIR SYMBOL;So;0;ON;;;;;N;;;;; -2680;DIE FACE-1;So;0;ON;;;;;N;;;;; -2681;DIE FACE-2;So;0;ON;;;;;N;;;;; -2682;DIE FACE-3;So;0;ON;;;;;N;;;;; -2683;DIE FACE-4;So;0;ON;;;;;N;;;;; -2684;DIE FACE-5;So;0;ON;;;;;N;;;;; -2685;DIE FACE-6;So;0;ON;;;;;N;;;;; -2686;WHITE CIRCLE WITH DOT RIGHT;So;0;ON;;;;;N;;;;; -2687;WHITE CIRCLE WITH TWO DOTS;So;0;ON;;;;;N;;;;; -2688;BLACK CIRCLE WITH WHITE DOT RIGHT;So;0;ON;;;;;N;;;;; -2689;BLACK CIRCLE WITH TWO WHITE DOTS;So;0;ON;;;;;N;;;;; -268A;MONOGRAM FOR YANG;So;0;ON;;;;;N;;;;; -268B;MONOGRAM FOR YIN;So;0;ON;;;;;N;;;;; -268C;DIGRAM FOR GREATER YANG;So;0;ON;;;;;N;;;;; -268D;DIGRAM FOR LESSER YIN;So;0;ON;;;;;N;;;;; -268E;DIGRAM FOR LESSER YANG;So;0;ON;;;;;N;;;;; -268F;DIGRAM FOR GREATER YIN;So;0;ON;;;;;N;;;;; -2690;WHITE FLAG;So;0;ON;;;;;N;;;;; -2691;BLACK FLAG;So;0;ON;;;;;N;;;;; -2692;HAMMER AND PICK;So;0;ON;;;;;N;;;;; -2693;ANCHOR;So;0;ON;;;;;N;;;;; -2694;CROSSED SWORDS;So;0;ON;;;;;N;;;;; -2695;STAFF OF AESCULAPIUS;So;0;ON;;;;;N;;;;; -2696;SCALES;So;0;ON;;;;;N;;;;; -2697;ALEMBIC;So;0;ON;;;;;N;;;;; -2698;FLOWER;So;0;ON;;;;;N;;;;; -2699;GEAR;So;0;ON;;;;;N;;;;; -269A;STAFF OF HERMES;So;0;ON;;;;;N;;;;; -269B;ATOM SYMBOL;So;0;ON;;;;;N;;;;; -269C;FLEUR-DE-LIS;So;0;ON;;;;;N;;;;; -269D;OUTLINED WHITE STAR;So;0;ON;;;;;N;;;;; -269E;THREE LINES CONVERGING RIGHT;So;0;ON;;;;;N;;;;; -269F;THREE LINES CONVERGING LEFT;So;0;ON;;;;;N;;;;; -26A0;WARNING SIGN;So;0;ON;;;;;N;;;;; -26A1;HIGH VOLTAGE SIGN;So;0;ON;;;;;N;;;;; -26A2;DOUBLED FEMALE SIGN;So;0;ON;;;;;N;;;;; -26A3;DOUBLED MALE SIGN;So;0;ON;;;;;N;;;;; -26A4;INTERLOCKED FEMALE AND MALE SIGN;So;0;ON;;;;;N;;;;; -26A5;MALE AND FEMALE SIGN;So;0;ON;;;;;N;;;;; -26A6;MALE WITH STROKE SIGN;So;0;ON;;;;;N;;;;; -26A7;MALE WITH STROKE AND MALE AND FEMALE SIGN;So;0;ON;;;;;N;;;;; -26A8;VERTICAL MALE WITH STROKE SIGN;So;0;ON;;;;;N;;;;; -26A9;HORIZONTAL MALE WITH STROKE SIGN;So;0;ON;;;;;N;;;;; -26AA;MEDIUM WHITE CIRCLE;So;0;ON;;;;;N;;;;; -26AB;MEDIUM BLACK CIRCLE;So;0;ON;;;;;N;;;;; -26AC;MEDIUM SMALL WHITE CIRCLE;So;0;L;;;;;N;;;;; -26AD;MARRIAGE SYMBOL;So;0;ON;;;;;N;;;;; -26AE;DIVORCE SYMBOL;So;0;ON;;;;;N;;;;; -26AF;UNMARRIED PARTNERSHIP SYMBOL;So;0;ON;;;;;N;;;;; -26B0;COFFIN;So;0;ON;;;;;N;;;;; -26B1;FUNERAL URN;So;0;ON;;;;;N;;;;; -26B2;NEUTER;So;0;ON;;;;;N;;;;; -26B3;CERES;So;0;ON;;;;;N;;;;; -26B4;PALLAS;So;0;ON;;;;;N;;;;; -26B5;JUNO;So;0;ON;;;;;N;;;;; -26B6;VESTA;So;0;ON;;;;;N;;;;; -26B7;CHIRON;So;0;ON;;;;;N;;;;; -26B8;BLACK MOON LILITH;So;0;ON;;;;;N;;;;; -26B9;SEXTILE;So;0;ON;;;;;N;;;;; -26BA;SEMISEXTILE;So;0;ON;;;;;N;;;;; -26BB;QUINCUNX;So;0;ON;;;;;N;;;;; -26BC;SESQUIQUADRATE;So;0;ON;;;;;N;;;;; -26BD;SOCCER BALL;So;0;ON;;;;;N;;;;; -26BE;BASEBALL;So;0;ON;;;;;N;;;;; -26BF;SQUARED KEY;So;0;ON;;;;;N;;;;; -26C0;WHITE DRAUGHTS MAN;So;0;ON;;;;;N;;;;; -26C1;WHITE DRAUGHTS KING;So;0;ON;;;;;N;;;;; -26C2;BLACK DRAUGHTS MAN;So;0;ON;;;;;N;;;;; -26C3;BLACK DRAUGHTS KING;So;0;ON;;;;;N;;;;; -26C4;SNOWMAN WITHOUT SNOW;So;0;ON;;;;;N;;;;; -26C5;SUN BEHIND CLOUD;So;0;ON;;;;;N;;;;; -26C6;RAIN;So;0;ON;;;;;N;;;;; -26C7;BLACK SNOWMAN;So;0;ON;;;;;N;;;;; -26C8;THUNDER CLOUD AND RAIN;So;0;ON;;;;;N;;;;; -26C9;TURNED WHITE SHOGI PIECE;So;0;ON;;;;;N;;;;; -26CA;TURNED BLACK SHOGI PIECE;So;0;ON;;;;;N;;;;; -26CB;WHITE DIAMOND IN SQUARE;So;0;ON;;;;;N;;;;; -26CC;CROSSING LANES;So;0;ON;;;;;N;;;;; -26CD;DISABLED CAR;So;0;ON;;;;;N;;;;; -26CE;OPHIUCHUS;So;0;ON;;;;;N;;;;; -26CF;PICK;So;0;ON;;;;;N;;;;; -26D0;CAR SLIDING;So;0;ON;;;;;N;;;;; -26D1;HELMET WITH WHITE CROSS;So;0;ON;;;;;N;;;;; -26D2;CIRCLED CROSSING LANES;So;0;ON;;;;;N;;;;; -26D3;CHAINS;So;0;ON;;;;;N;;;;; -26D4;NO ENTRY;So;0;ON;;;;;N;;;;; -26D5;ALTERNATE ONE-WAY LEFT WAY TRAFFIC;So;0;ON;;;;;N;;;;; -26D6;BLACK TWO-WAY LEFT WAY TRAFFIC;So;0;ON;;;;;N;;;;; -26D7;WHITE TWO-WAY LEFT WAY TRAFFIC;So;0;ON;;;;;N;;;;; -26D8;BLACK LEFT LANE MERGE;So;0;ON;;;;;N;;;;; -26D9;WHITE LEFT LANE MERGE;So;0;ON;;;;;N;;;;; -26DA;DRIVE SLOW SIGN;So;0;ON;;;;;N;;;;; -26DB;HEAVY WHITE DOWN-POINTING TRIANGLE;So;0;ON;;;;;N;;;;; -26DC;LEFT CLOSED ENTRY;So;0;ON;;;;;N;;;;; -26DD;SQUARED SALTIRE;So;0;ON;;;;;N;;;;; -26DE;FALLING DIAGONAL IN WHITE CIRCLE IN BLACK SQUARE;So;0;ON;;;;;N;;;;; -26DF;BLACK TRUCK;So;0;ON;;;;;N;;;;; -26E0;RESTRICTED LEFT ENTRY-1;So;0;ON;;;;;N;;;;; -26E1;RESTRICTED LEFT ENTRY-2;So;0;ON;;;;;N;;;;; -26E2;ASTRONOMICAL SYMBOL FOR URANUS;So;0;ON;;;;;N;;;;; -26E3;HEAVY CIRCLE WITH STROKE AND TWO DOTS ABOVE;So;0;ON;;;;;N;;;;; -26E4;PENTAGRAM;So;0;ON;;;;;N;;;;; -26E5;RIGHT-HANDED INTERLACED PENTAGRAM;So;0;ON;;;;;N;;;;; -26E6;LEFT-HANDED INTERLACED PENTAGRAM;So;0;ON;;;;;N;;;;; -26E7;INVERTED PENTAGRAM;So;0;ON;;;;;N;;;;; -26E8;BLACK CROSS ON SHIELD;So;0;ON;;;;;N;;;;; -26E9;SHINTO SHRINE;So;0;ON;;;;;N;;;;; -26EA;CHURCH;So;0;ON;;;;;N;;;;; -26EB;CASTLE;So;0;ON;;;;;N;;;;; -26EC;HISTORIC SITE;So;0;ON;;;;;N;;;;; -26ED;GEAR WITHOUT HUB;So;0;ON;;;;;N;;;;; -26EE;GEAR WITH HANDLES;So;0;ON;;;;;N;;;;; -26EF;MAP SYMBOL FOR LIGHTHOUSE;So;0;ON;;;;;N;;;;; -26F0;MOUNTAIN;So;0;ON;;;;;N;;;;; -26F1;UMBRELLA ON GROUND;So;0;ON;;;;;N;;;;; -26F2;FOUNTAIN;So;0;ON;;;;;N;;;;; -26F3;FLAG IN HOLE;So;0;ON;;;;;N;;;;; -26F4;FERRY;So;0;ON;;;;;N;;;;; -26F5;SAILBOAT;So;0;ON;;;;;N;;;;; -26F6;SQUARE FOUR CORNERS;So;0;ON;;;;;N;;;;; -26F7;SKIER;So;0;ON;;;;;N;;;;; -26F8;ICE SKATE;So;0;ON;;;;;N;;;;; -26F9;PERSON WITH BALL;So;0;ON;;;;;N;;;;; -26FA;TENT;So;0;ON;;;;;N;;;;; -26FB;JAPANESE BANK SYMBOL;So;0;ON;;;;;N;;;;; -26FC;HEADSTONE GRAVEYARD SYMBOL;So;0;ON;;;;;N;;;;; -26FD;FUEL PUMP;So;0;ON;;;;;N;;;;; -26FE;CUP ON BLACK SQUARE;So;0;ON;;;;;N;;;;; -26FF;WHITE FLAG WITH HORIZONTAL MIDDLE BLACK STRIPE;So;0;ON;;;;;N;;;;; -2701;UPPER BLADE SCISSORS;So;0;ON;;;;;N;;;;; -2702;BLACK SCISSORS;So;0;ON;;;;;N;;;;; -2703;LOWER BLADE SCISSORS;So;0;ON;;;;;N;;;;; -2704;WHITE SCISSORS;So;0;ON;;;;;N;;;;; -2705;WHITE HEAVY CHECK MARK;So;0;ON;;;;;N;;;;; -2706;TELEPHONE LOCATION SIGN;So;0;ON;;;;;N;;;;; -2707;TAPE DRIVE;So;0;ON;;;;;N;;;;; -2708;AIRPLANE;So;0;ON;;;;;N;;;;; -2709;ENVELOPE;So;0;ON;;;;;N;;;;; -270A;RAISED FIST;So;0;ON;;;;;N;;;;; -270B;RAISED HAND;So;0;ON;;;;;N;;;;; -270C;VICTORY HAND;So;0;ON;;;;;N;;;;; -270D;WRITING HAND;So;0;ON;;;;;N;;;;; -270E;LOWER RIGHT PENCIL;So;0;ON;;;;;N;;;;; -270F;PENCIL;So;0;ON;;;;;N;;;;; -2710;UPPER RIGHT PENCIL;So;0;ON;;;;;N;;;;; -2711;WHITE NIB;So;0;ON;;;;;N;;;;; -2712;BLACK NIB;So;0;ON;;;;;N;;;;; -2713;CHECK MARK;So;0;ON;;;;;N;;;;; -2714;HEAVY CHECK MARK;So;0;ON;;;;;N;;;;; -2715;MULTIPLICATION X;So;0;ON;;;;;N;;;;; -2716;HEAVY MULTIPLICATION X;So;0;ON;;;;;N;;;;; -2717;BALLOT X;So;0;ON;;;;;N;;;;; -2718;HEAVY BALLOT X;So;0;ON;;;;;N;;;;; -2719;OUTLINED GREEK CROSS;So;0;ON;;;;;N;;;;; -271A;HEAVY GREEK CROSS;So;0;ON;;;;;N;;;;; -271B;OPEN CENTRE CROSS;So;0;ON;;;;;N;OPEN CENTER CROSS;;;; -271C;HEAVY OPEN CENTRE CROSS;So;0;ON;;;;;N;HEAVY OPEN CENTER CROSS;;;; -271D;LATIN CROSS;So;0;ON;;;;;N;;;;; -271E;SHADOWED WHITE LATIN CROSS;So;0;ON;;;;;N;;;;; -271F;OUTLINED LATIN CROSS;So;0;ON;;;;;N;;;;; -2720;MALTESE CROSS;So;0;ON;;;;;N;;;;; -2721;STAR OF DAVID;So;0;ON;;;;;N;;;;; -2722;FOUR TEARDROP-SPOKED ASTERISK;So;0;ON;;;;;N;;;;; -2723;FOUR BALLOON-SPOKED ASTERISK;So;0;ON;;;;;N;;;;; -2724;HEAVY FOUR BALLOON-SPOKED ASTERISK;So;0;ON;;;;;N;;;;; -2725;FOUR CLUB-SPOKED ASTERISK;So;0;ON;;;;;N;;;;; -2726;BLACK FOUR POINTED STAR;So;0;ON;;;;;N;;;;; -2727;WHITE FOUR POINTED STAR;So;0;ON;;;;;N;;;;; -2728;SPARKLES;So;0;ON;;;;;N;;;;; -2729;STRESS OUTLINED WHITE STAR;So;0;ON;;;;;N;;;;; -272A;CIRCLED WHITE STAR;So;0;ON;;;;;N;;;;; -272B;OPEN CENTRE BLACK STAR;So;0;ON;;;;;N;OPEN CENTER BLACK STAR;;;; -272C;BLACK CENTRE WHITE STAR;So;0;ON;;;;;N;BLACK CENTER WHITE STAR;;;; -272D;OUTLINED BLACK STAR;So;0;ON;;;;;N;;;;; -272E;HEAVY OUTLINED BLACK STAR;So;0;ON;;;;;N;;;;; -272F;PINWHEEL STAR;So;0;ON;;;;;N;;;;; -2730;SHADOWED WHITE STAR;So;0;ON;;;;;N;;;;; -2731;HEAVY ASTERISK;So;0;ON;;;;;N;;;;; -2732;OPEN CENTRE ASTERISK;So;0;ON;;;;;N;OPEN CENTER ASTERISK;;;; -2733;EIGHT SPOKED ASTERISK;So;0;ON;;;;;N;;;;; -2734;EIGHT POINTED BLACK STAR;So;0;ON;;;;;N;;;;; -2735;EIGHT POINTED PINWHEEL STAR;So;0;ON;;;;;N;;;;; -2736;SIX POINTED BLACK STAR;So;0;ON;;;;;N;;;;; -2737;EIGHT POINTED RECTILINEAR BLACK STAR;So;0;ON;;;;;N;;;;; -2738;HEAVY EIGHT POINTED RECTILINEAR BLACK STAR;So;0;ON;;;;;N;;;;; -2739;TWELVE POINTED BLACK STAR;So;0;ON;;;;;N;;;;; -273A;SIXTEEN POINTED ASTERISK;So;0;ON;;;;;N;;;;; -273B;TEARDROP-SPOKED ASTERISK;So;0;ON;;;;;N;;;;; -273C;OPEN CENTRE TEARDROP-SPOKED ASTERISK;So;0;ON;;;;;N;OPEN CENTER TEARDROP-SPOKED ASTERISK;;;; -273D;HEAVY TEARDROP-SPOKED ASTERISK;So;0;ON;;;;;N;;;;; -273E;SIX PETALLED BLACK AND WHITE FLORETTE;So;0;ON;;;;;N;;;;; -273F;BLACK FLORETTE;So;0;ON;;;;;N;;;;; -2740;WHITE FLORETTE;So;0;ON;;;;;N;;;;; -2741;EIGHT PETALLED OUTLINED BLACK FLORETTE;So;0;ON;;;;;N;;;;; -2742;CIRCLED OPEN CENTRE EIGHT POINTED STAR;So;0;ON;;;;;N;CIRCLED OPEN CENTER EIGHT POINTED STAR;;;; -2743;HEAVY TEARDROP-SPOKED PINWHEEL ASTERISK;So;0;ON;;;;;N;;;;; -2744;SNOWFLAKE;So;0;ON;;;;;N;;;;; -2745;TIGHT TRIFOLIATE SNOWFLAKE;So;0;ON;;;;;N;;;;; -2746;HEAVY CHEVRON SNOWFLAKE;So;0;ON;;;;;N;;;;; -2747;SPARKLE;So;0;ON;;;;;N;;;;; -2748;HEAVY SPARKLE;So;0;ON;;;;;N;;;;; -2749;BALLOON-SPOKED ASTERISK;So;0;ON;;;;;N;;;;; -274A;EIGHT TEARDROP-SPOKED PROPELLER ASTERISK;So;0;ON;;;;;N;;;;; -274B;HEAVY EIGHT TEARDROP-SPOKED PROPELLER ASTERISK;So;0;ON;;;;;N;;;;; -274C;CROSS MARK;So;0;ON;;;;;N;;;;; -274D;SHADOWED WHITE CIRCLE;So;0;ON;;;;;N;;;;; -274E;NEGATIVE SQUARED CROSS MARK;So;0;ON;;;;;N;;;;; -274F;LOWER RIGHT DROP-SHADOWED WHITE SQUARE;So;0;ON;;;;;N;;;;; -2750;UPPER RIGHT DROP-SHADOWED WHITE SQUARE;So;0;ON;;;;;N;;;;; -2751;LOWER RIGHT SHADOWED WHITE SQUARE;So;0;ON;;;;;N;;;;; -2752;UPPER RIGHT SHADOWED WHITE SQUARE;So;0;ON;;;;;N;;;;; -2753;BLACK QUESTION MARK ORNAMENT;So;0;ON;;;;;N;;;;; -2754;WHITE QUESTION MARK ORNAMENT;So;0;ON;;;;;N;;;;; -2755;WHITE EXCLAMATION MARK ORNAMENT;So;0;ON;;;;;N;;;;; -2756;BLACK DIAMOND MINUS WHITE X;So;0;ON;;;;;N;;;;; -2757;HEAVY EXCLAMATION MARK SYMBOL;So;0;ON;;;;;N;;;;; -2758;LIGHT VERTICAL BAR;So;0;ON;;;;;N;;;;; -2759;MEDIUM VERTICAL BAR;So;0;ON;;;;;N;;;;; -275A;HEAVY VERTICAL BAR;So;0;ON;;;;;N;;;;; -275B;HEAVY SINGLE TURNED COMMA QUOTATION MARK ORNAMENT;So;0;ON;;;;;N;;;;; -275C;HEAVY SINGLE COMMA QUOTATION MARK ORNAMENT;So;0;ON;;;;;N;;;;; -275D;HEAVY DOUBLE TURNED COMMA QUOTATION MARK ORNAMENT;So;0;ON;;;;;N;;;;; -275E;HEAVY DOUBLE COMMA QUOTATION MARK ORNAMENT;So;0;ON;;;;;N;;;;; -275F;HEAVY LOW SINGLE COMMA QUOTATION MARK ORNAMENT;So;0;ON;;;;;N;;;;; -2760;HEAVY LOW DOUBLE COMMA QUOTATION MARK ORNAMENT;So;0;ON;;;;;N;;;;; -2761;CURVED STEM PARAGRAPH SIGN ORNAMENT;So;0;ON;;;;;N;;;;; -2762;HEAVY EXCLAMATION MARK ORNAMENT;So;0;ON;;;;;N;;;;; -2763;HEAVY HEART EXCLAMATION MARK ORNAMENT;So;0;ON;;;;;N;;;;; -2764;HEAVY BLACK HEART;So;0;ON;;;;;N;;;;; -2765;ROTATED HEAVY BLACK HEART BULLET;So;0;ON;;;;;N;;;;; -2766;FLORAL HEART;So;0;ON;;;;;N;;;;; -2767;ROTATED FLORAL HEART BULLET;So;0;ON;;;;;N;;;;; -2768;MEDIUM LEFT PARENTHESIS ORNAMENT;Ps;0;ON;;;;;Y;;;;; -2769;MEDIUM RIGHT PARENTHESIS ORNAMENT;Pe;0;ON;;;;;Y;;;;; -276A;MEDIUM FLATTENED LEFT PARENTHESIS ORNAMENT;Ps;0;ON;;;;;Y;;;;; -276B;MEDIUM FLATTENED RIGHT PARENTHESIS ORNAMENT;Pe;0;ON;;;;;Y;;;;; -276C;MEDIUM LEFT-POINTING ANGLE BRACKET ORNAMENT;Ps;0;ON;;;;;Y;;;;; -276D;MEDIUM RIGHT-POINTING ANGLE BRACKET ORNAMENT;Pe;0;ON;;;;;Y;;;;; -276E;HEAVY LEFT-POINTING ANGLE QUOTATION MARK ORNAMENT;Ps;0;ON;;;;;Y;;;;; -276F;HEAVY RIGHT-POINTING ANGLE QUOTATION MARK ORNAMENT;Pe;0;ON;;;;;Y;;;;; -2770;HEAVY LEFT-POINTING ANGLE BRACKET ORNAMENT;Ps;0;ON;;;;;Y;;;;; -2771;HEAVY RIGHT-POINTING ANGLE BRACKET ORNAMENT;Pe;0;ON;;;;;Y;;;;; -2772;LIGHT LEFT TORTOISE SHELL BRACKET ORNAMENT;Ps;0;ON;;;;;Y;;;;; -2773;LIGHT RIGHT TORTOISE SHELL BRACKET ORNAMENT;Pe;0;ON;;;;;Y;;;;; -2774;MEDIUM LEFT CURLY BRACKET ORNAMENT;Ps;0;ON;;;;;Y;;;;; -2775;MEDIUM RIGHT CURLY BRACKET ORNAMENT;Pe;0;ON;;;;;Y;;;;; -2776;DINGBAT NEGATIVE CIRCLED DIGIT ONE;No;0;ON;;;1;1;N;INVERSE CIRCLED DIGIT ONE;;;; -2777;DINGBAT NEGATIVE CIRCLED DIGIT TWO;No;0;ON;;;2;2;N;INVERSE CIRCLED DIGIT TWO;;;; -2778;DINGBAT NEGATIVE CIRCLED DIGIT THREE;No;0;ON;;;3;3;N;INVERSE CIRCLED DIGIT THREE;;;; -2779;DINGBAT NEGATIVE CIRCLED DIGIT FOUR;No;0;ON;;;4;4;N;INVERSE CIRCLED DIGIT FOUR;;;; -277A;DINGBAT NEGATIVE CIRCLED DIGIT FIVE;No;0;ON;;;5;5;N;INVERSE CIRCLED DIGIT FIVE;;;; -277B;DINGBAT NEGATIVE CIRCLED DIGIT SIX;No;0;ON;;;6;6;N;INVERSE CIRCLED DIGIT SIX;;;; -277C;DINGBAT NEGATIVE CIRCLED DIGIT SEVEN;No;0;ON;;;7;7;N;INVERSE CIRCLED DIGIT SEVEN;;;; -277D;DINGBAT NEGATIVE CIRCLED DIGIT EIGHT;No;0;ON;;;8;8;N;INVERSE CIRCLED DIGIT EIGHT;;;; -277E;DINGBAT NEGATIVE CIRCLED DIGIT NINE;No;0;ON;;;9;9;N;INVERSE CIRCLED DIGIT NINE;;;; -277F;DINGBAT NEGATIVE CIRCLED NUMBER TEN;No;0;ON;;;;10;N;INVERSE CIRCLED NUMBER TEN;;;; -2780;DINGBAT CIRCLED SANS-SERIF DIGIT ONE;No;0;ON;;;1;1;N;CIRCLED SANS-SERIF DIGIT ONE;;;; -2781;DINGBAT CIRCLED SANS-SERIF DIGIT TWO;No;0;ON;;;2;2;N;CIRCLED SANS-SERIF DIGIT TWO;;;; -2782;DINGBAT CIRCLED SANS-SERIF DIGIT THREE;No;0;ON;;;3;3;N;CIRCLED SANS-SERIF DIGIT THREE;;;; -2783;DINGBAT CIRCLED SANS-SERIF DIGIT FOUR;No;0;ON;;;4;4;N;CIRCLED SANS-SERIF DIGIT FOUR;;;; -2784;DINGBAT CIRCLED SANS-SERIF DIGIT FIVE;No;0;ON;;;5;5;N;CIRCLED SANS-SERIF DIGIT FIVE;;;; -2785;DINGBAT CIRCLED SANS-SERIF DIGIT SIX;No;0;ON;;;6;6;N;CIRCLED SANS-SERIF DIGIT SIX;;;; -2786;DINGBAT CIRCLED SANS-SERIF DIGIT SEVEN;No;0;ON;;;7;7;N;CIRCLED SANS-SERIF DIGIT SEVEN;;;; -2787;DINGBAT CIRCLED SANS-SERIF DIGIT EIGHT;No;0;ON;;;8;8;N;CIRCLED SANS-SERIF DIGIT EIGHT;;;; -2788;DINGBAT CIRCLED SANS-SERIF DIGIT NINE;No;0;ON;;;9;9;N;CIRCLED SANS-SERIF DIGIT NINE;;;; -2789;DINGBAT CIRCLED SANS-SERIF NUMBER TEN;No;0;ON;;;;10;N;CIRCLED SANS-SERIF NUMBER TEN;;;; -278A;DINGBAT NEGATIVE CIRCLED SANS-SERIF DIGIT ONE;No;0;ON;;;1;1;N;INVERSE CIRCLED SANS-SERIF DIGIT ONE;;;; -278B;DINGBAT NEGATIVE CIRCLED SANS-SERIF DIGIT TWO;No;0;ON;;;2;2;N;INVERSE CIRCLED SANS-SERIF DIGIT TWO;;;; -278C;DINGBAT NEGATIVE CIRCLED SANS-SERIF DIGIT THREE;No;0;ON;;;3;3;N;INVERSE CIRCLED SANS-SERIF DIGIT THREE;;;; -278D;DINGBAT NEGATIVE CIRCLED SANS-SERIF DIGIT FOUR;No;0;ON;;;4;4;N;INVERSE CIRCLED SANS-SERIF DIGIT FOUR;;;; -278E;DINGBAT NEGATIVE CIRCLED SANS-SERIF DIGIT FIVE;No;0;ON;;;5;5;N;INVERSE CIRCLED SANS-SERIF DIGIT FIVE;;;; -278F;DINGBAT NEGATIVE CIRCLED SANS-SERIF DIGIT SIX;No;0;ON;;;6;6;N;INVERSE CIRCLED SANS-SERIF DIGIT SIX;;;; -2790;DINGBAT NEGATIVE CIRCLED SANS-SERIF DIGIT SEVEN;No;0;ON;;;7;7;N;INVERSE CIRCLED SANS-SERIF DIGIT SEVEN;;;; -2791;DINGBAT NEGATIVE CIRCLED SANS-SERIF DIGIT EIGHT;No;0;ON;;;8;8;N;INVERSE CIRCLED SANS-SERIF DIGIT EIGHT;;;; -2792;DINGBAT NEGATIVE CIRCLED SANS-SERIF DIGIT NINE;No;0;ON;;;9;9;N;INVERSE CIRCLED SANS-SERIF DIGIT NINE;;;; -2793;DINGBAT NEGATIVE CIRCLED SANS-SERIF NUMBER TEN;No;0;ON;;;;10;N;INVERSE CIRCLED SANS-SERIF NUMBER TEN;;;; -2794;HEAVY WIDE-HEADED RIGHTWARDS ARROW;So;0;ON;;;;;N;HEAVY WIDE-HEADED RIGHT ARROW;;;; -2795;HEAVY PLUS SIGN;So;0;ON;;;;;N;;;;; -2796;HEAVY MINUS SIGN;So;0;ON;;;;;N;;;;; -2797;HEAVY DIVISION SIGN;So;0;ON;;;;;N;;;;; -2798;HEAVY SOUTH EAST ARROW;So;0;ON;;;;;N;HEAVY LOWER RIGHT ARROW;;;; -2799;HEAVY RIGHTWARDS ARROW;So;0;ON;;;;;N;HEAVY RIGHT ARROW;;;; -279A;HEAVY NORTH EAST ARROW;So;0;ON;;;;;N;HEAVY UPPER RIGHT ARROW;;;; -279B;DRAFTING POINT RIGHTWARDS ARROW;So;0;ON;;;;;N;DRAFTING POINT RIGHT ARROW;;;; -279C;HEAVY ROUND-TIPPED RIGHTWARDS ARROW;So;0;ON;;;;;N;HEAVY ROUND-TIPPED RIGHT ARROW;;;; -279D;TRIANGLE-HEADED RIGHTWARDS ARROW;So;0;ON;;;;;N;TRIANGLE-HEADED RIGHT ARROW;;;; -279E;HEAVY TRIANGLE-HEADED RIGHTWARDS ARROW;So;0;ON;;;;;N;HEAVY TRIANGLE-HEADED RIGHT ARROW;;;; -279F;DASHED TRIANGLE-HEADED RIGHTWARDS ARROW;So;0;ON;;;;;N;DASHED TRIANGLE-HEADED RIGHT ARROW;;;; -27A0;HEAVY DASHED TRIANGLE-HEADED RIGHTWARDS ARROW;So;0;ON;;;;;N;HEAVY DASHED TRIANGLE-HEADED RIGHT ARROW;;;; -27A1;BLACK RIGHTWARDS ARROW;So;0;ON;;;;;N;BLACK RIGHT ARROW;;;; -27A2;THREE-D TOP-LIGHTED RIGHTWARDS ARROWHEAD;So;0;ON;;;;;N;THREE-D TOP-LIGHTED RIGHT ARROWHEAD;;;; -27A3;THREE-D BOTTOM-LIGHTED RIGHTWARDS ARROWHEAD;So;0;ON;;;;;N;THREE-D BOTTOM-LIGHTED RIGHT ARROWHEAD;;;; -27A4;BLACK RIGHTWARDS ARROWHEAD;So;0;ON;;;;;N;BLACK RIGHT ARROWHEAD;;;; -27A5;HEAVY BLACK CURVED DOWNWARDS AND RIGHTWARDS ARROW;So;0;ON;;;;;N;HEAVY BLACK CURVED DOWN AND RIGHT ARROW;;;; -27A6;HEAVY BLACK CURVED UPWARDS AND RIGHTWARDS ARROW;So;0;ON;;;;;N;HEAVY BLACK CURVED UP AND RIGHT ARROW;;;; -27A7;SQUAT BLACK RIGHTWARDS ARROW;So;0;ON;;;;;N;SQUAT BLACK RIGHT ARROW;;;; -27A8;HEAVY CONCAVE-POINTED BLACK RIGHTWARDS ARROW;So;0;ON;;;;;N;HEAVY CONCAVE-POINTED BLACK RIGHT ARROW;;;; -27A9;RIGHT-SHADED WHITE RIGHTWARDS ARROW;So;0;ON;;;;;N;RIGHT-SHADED WHITE RIGHT ARROW;;;; -27AA;LEFT-SHADED WHITE RIGHTWARDS ARROW;So;0;ON;;;;;N;LEFT-SHADED WHITE RIGHT ARROW;;;; -27AB;BACK-TILTED SHADOWED WHITE RIGHTWARDS ARROW;So;0;ON;;;;;N;BACK-TILTED SHADOWED WHITE RIGHT ARROW;;;; -27AC;FRONT-TILTED SHADOWED WHITE RIGHTWARDS ARROW;So;0;ON;;;;;N;FRONT-TILTED SHADOWED WHITE RIGHT ARROW;;;; -27AD;HEAVY LOWER RIGHT-SHADOWED WHITE RIGHTWARDS ARROW;So;0;ON;;;;;N;HEAVY LOWER RIGHT-SHADOWED WHITE RIGHT ARROW;;;; -27AE;HEAVY UPPER RIGHT-SHADOWED WHITE RIGHTWARDS ARROW;So;0;ON;;;;;N;HEAVY UPPER RIGHT-SHADOWED WHITE RIGHT ARROW;;;; -27AF;NOTCHED LOWER RIGHT-SHADOWED WHITE RIGHTWARDS ARROW;So;0;ON;;;;;N;NOTCHED LOWER RIGHT-SHADOWED WHITE RIGHT ARROW;;;; -27B0;CURLY LOOP;So;0;ON;;;;;N;;;;; -27B1;NOTCHED UPPER RIGHT-SHADOWED WHITE RIGHTWARDS ARROW;So;0;ON;;;;;N;NOTCHED UPPER RIGHT-SHADOWED WHITE RIGHT ARROW;;;; -27B2;CIRCLED HEAVY WHITE RIGHTWARDS ARROW;So;0;ON;;;;;N;CIRCLED HEAVY WHITE RIGHT ARROW;;;; -27B3;WHITE-FEATHERED RIGHTWARDS ARROW;So;0;ON;;;;;N;WHITE-FEATHERED RIGHT ARROW;;;; -27B4;BLACK-FEATHERED SOUTH EAST ARROW;So;0;ON;;;;;N;BLACK-FEATHERED LOWER RIGHT ARROW;;;; -27B5;BLACK-FEATHERED RIGHTWARDS ARROW;So;0;ON;;;;;N;BLACK-FEATHERED RIGHT ARROW;;;; -27B6;BLACK-FEATHERED NORTH EAST ARROW;So;0;ON;;;;;N;BLACK-FEATHERED UPPER RIGHT ARROW;;;; -27B7;HEAVY BLACK-FEATHERED SOUTH EAST ARROW;So;0;ON;;;;;N;HEAVY BLACK-FEATHERED LOWER RIGHT ARROW;;;; -27B8;HEAVY BLACK-FEATHERED RIGHTWARDS ARROW;So;0;ON;;;;;N;HEAVY BLACK-FEATHERED RIGHT ARROW;;;; -27B9;HEAVY BLACK-FEATHERED NORTH EAST ARROW;So;0;ON;;;;;N;HEAVY BLACK-FEATHERED UPPER RIGHT ARROW;;;; -27BA;TEARDROP-BARBED RIGHTWARDS ARROW;So;0;ON;;;;;N;TEARDROP-BARBED RIGHT ARROW;;;; -27BB;HEAVY TEARDROP-SHANKED RIGHTWARDS ARROW;So;0;ON;;;;;N;HEAVY TEARDROP-SHANKED RIGHT ARROW;;;; -27BC;WEDGE-TAILED RIGHTWARDS ARROW;So;0;ON;;;;;N;WEDGE-TAILED RIGHT ARROW;;;; -27BD;HEAVY WEDGE-TAILED RIGHTWARDS ARROW;So;0;ON;;;;;N;HEAVY WEDGE-TAILED RIGHT ARROW;;;; -27BE;OPEN-OUTLINED RIGHTWARDS ARROW;So;0;ON;;;;;N;OPEN-OUTLINED RIGHT ARROW;;;; -27BF;DOUBLE CURLY LOOP;So;0;ON;;;;;N;;;;; -27C0;THREE DIMENSIONAL ANGLE;Sm;0;ON;;;;;Y;;;;; -27C1;WHITE TRIANGLE CONTAINING SMALL WHITE TRIANGLE;Sm;0;ON;;;;;N;;;;; -27C2;PERPENDICULAR;Sm;0;ON;;;;;N;;;;; -27C3;OPEN SUBSET;Sm;0;ON;;;;;Y;;;;; -27C4;OPEN SUPERSET;Sm;0;ON;;;;;Y;;;;; -27C5;LEFT S-SHAPED BAG DELIMITER;Ps;0;ON;;;;;Y;;;;; -27C6;RIGHT S-SHAPED BAG DELIMITER;Pe;0;ON;;;;;Y;;;;; -27C7;OR WITH DOT INSIDE;Sm;0;ON;;;;;N;;;;; -27C8;REVERSE SOLIDUS PRECEDING SUBSET;Sm;0;ON;;;;;Y;;;;; -27C9;SUPERSET PRECEDING SOLIDUS;Sm;0;ON;;;;;Y;;;;; -27CA;VERTICAL BAR WITH HORIZONTAL STROKE;Sm;0;ON;;;;;N;;;;; -27CC;LONG DIVISION;Sm;0;ON;;;;;Y;;;;; -27CE;SQUARED LOGICAL AND;Sm;0;ON;;;;;N;;;;; -27CF;SQUARED LOGICAL OR;Sm;0;ON;;;;;N;;;;; -27D0;WHITE DIAMOND WITH CENTRED DOT;Sm;0;ON;;;;;N;;;;; -27D1;AND WITH DOT;Sm;0;ON;;;;;N;;;;; -27D2;ELEMENT OF OPENING UPWARDS;Sm;0;ON;;;;;N;;;;; -27D3;LOWER RIGHT CORNER WITH DOT;Sm;0;ON;;;;;Y;;;;; -27D4;UPPER LEFT CORNER WITH DOT;Sm;0;ON;;;;;Y;;;;; -27D5;LEFT OUTER JOIN;Sm;0;ON;;;;;Y;;;;; -27D6;RIGHT OUTER JOIN;Sm;0;ON;;;;;Y;;;;; -27D7;FULL OUTER JOIN;Sm;0;ON;;;;;N;;;;; -27D8;LARGE UP TACK;Sm;0;ON;;;;;N;;;;; -27D9;LARGE DOWN TACK;Sm;0;ON;;;;;N;;;;; -27DA;LEFT AND RIGHT DOUBLE TURNSTILE;Sm;0;ON;;;;;N;;;;; -27DB;LEFT AND RIGHT TACK;Sm;0;ON;;;;;N;;;;; -27DC;LEFT MULTIMAP;Sm;0;ON;;;;;Y;;;;; -27DD;LONG RIGHT TACK;Sm;0;ON;;;;;Y;;;;; -27DE;LONG LEFT TACK;Sm;0;ON;;;;;Y;;;;; -27DF;UP TACK WITH CIRCLE ABOVE;Sm;0;ON;;;;;N;;;;; -27E0;LOZENGE DIVIDED BY HORIZONTAL RULE;Sm;0;ON;;;;;N;;;;; -27E1;WHITE CONCAVE-SIDED DIAMOND;Sm;0;ON;;;;;N;;;;; -27E2;WHITE CONCAVE-SIDED DIAMOND WITH LEFTWARDS TICK;Sm;0;ON;;;;;Y;;;;; -27E3;WHITE CONCAVE-SIDED DIAMOND WITH RIGHTWARDS TICK;Sm;0;ON;;;;;Y;;;;; -27E4;WHITE SQUARE WITH LEFTWARDS TICK;Sm;0;ON;;;;;Y;;;;; -27E5;WHITE SQUARE WITH RIGHTWARDS TICK;Sm;0;ON;;;;;Y;;;;; -27E6;MATHEMATICAL LEFT WHITE SQUARE BRACKET;Ps;0;ON;;;;;Y;;;;; -27E7;MATHEMATICAL RIGHT WHITE SQUARE BRACKET;Pe;0;ON;;;;;Y;;;;; -27E8;MATHEMATICAL LEFT ANGLE BRACKET;Ps;0;ON;;;;;Y;;;;; -27E9;MATHEMATICAL RIGHT ANGLE BRACKET;Pe;0;ON;;;;;Y;;;;; -27EA;MATHEMATICAL LEFT DOUBLE ANGLE BRACKET;Ps;0;ON;;;;;Y;;;;; -27EB;MATHEMATICAL RIGHT DOUBLE ANGLE BRACKET;Pe;0;ON;;;;;Y;;;;; -27EC;MATHEMATICAL LEFT WHITE TORTOISE SHELL BRACKET;Ps;0;ON;;;;;Y;;;;; -27ED;MATHEMATICAL RIGHT WHITE TORTOISE SHELL BRACKET;Pe;0;ON;;;;;Y;;;;; -27EE;MATHEMATICAL LEFT FLATTENED PARENTHESIS;Ps;0;ON;;;;;Y;;;;; -27EF;MATHEMATICAL RIGHT FLATTENED PARENTHESIS;Pe;0;ON;;;;;Y;;;;; -27F0;UPWARDS QUADRUPLE ARROW;Sm;0;ON;;;;;N;;;;; -27F1;DOWNWARDS QUADRUPLE ARROW;Sm;0;ON;;;;;N;;;;; -27F2;ANTICLOCKWISE GAPPED CIRCLE ARROW;Sm;0;ON;;;;;N;;;;; -27F3;CLOCKWISE GAPPED CIRCLE ARROW;Sm;0;ON;;;;;N;;;;; -27F4;RIGHT ARROW WITH CIRCLED PLUS;Sm;0;ON;;;;;N;;;;; -27F5;LONG LEFTWARDS ARROW;Sm;0;ON;;;;;N;;;;; -27F6;LONG RIGHTWARDS ARROW;Sm;0;ON;;;;;N;;;;; -27F7;LONG LEFT RIGHT ARROW;Sm;0;ON;;;;;N;;;;; -27F8;LONG LEFTWARDS DOUBLE ARROW;Sm;0;ON;;;;;N;;;;; -27F9;LONG RIGHTWARDS DOUBLE ARROW;Sm;0;ON;;;;;N;;;;; -27FA;LONG LEFT RIGHT DOUBLE ARROW;Sm;0;ON;;;;;N;;;;; -27FB;LONG LEFTWARDS ARROW FROM BAR;Sm;0;ON;;;;;N;;;;; -27FC;LONG RIGHTWARDS ARROW FROM BAR;Sm;0;ON;;;;;N;;;;; -27FD;LONG LEFTWARDS DOUBLE ARROW FROM BAR;Sm;0;ON;;;;;N;;;;; -27FE;LONG RIGHTWARDS DOUBLE ARROW FROM BAR;Sm;0;ON;;;;;N;;;;; -27FF;LONG RIGHTWARDS SQUIGGLE ARROW;Sm;0;ON;;;;;N;;;;; -2800;BRAILLE PATTERN BLANK;So;0;L;;;;;N;;;;; -2801;BRAILLE PATTERN DOTS-1;So;0;L;;;;;N;;;;; -2802;BRAILLE PATTERN DOTS-2;So;0;L;;;;;N;;;;; -2803;BRAILLE PATTERN DOTS-12;So;0;L;;;;;N;;;;; -2804;BRAILLE PATTERN DOTS-3;So;0;L;;;;;N;;;;; -2805;BRAILLE PATTERN DOTS-13;So;0;L;;;;;N;;;;; -2806;BRAILLE PATTERN DOTS-23;So;0;L;;;;;N;;;;; -2807;BRAILLE PATTERN DOTS-123;So;0;L;;;;;N;;;;; -2808;BRAILLE PATTERN DOTS-4;So;0;L;;;;;N;;;;; -2809;BRAILLE PATTERN DOTS-14;So;0;L;;;;;N;;;;; -280A;BRAILLE PATTERN DOTS-24;So;0;L;;;;;N;;;;; -280B;BRAILLE PATTERN DOTS-124;So;0;L;;;;;N;;;;; -280C;BRAILLE PATTERN DOTS-34;So;0;L;;;;;N;;;;; -280D;BRAILLE PATTERN DOTS-134;So;0;L;;;;;N;;;;; -280E;BRAILLE PATTERN DOTS-234;So;0;L;;;;;N;;;;; -280F;BRAILLE PATTERN DOTS-1234;So;0;L;;;;;N;;;;; -2810;BRAILLE PATTERN DOTS-5;So;0;L;;;;;N;;;;; -2811;BRAILLE PATTERN DOTS-15;So;0;L;;;;;N;;;;; -2812;BRAILLE PATTERN DOTS-25;So;0;L;;;;;N;;;;; -2813;BRAILLE PATTERN DOTS-125;So;0;L;;;;;N;;;;; -2814;BRAILLE PATTERN DOTS-35;So;0;L;;;;;N;;;;; -2815;BRAILLE PATTERN DOTS-135;So;0;L;;;;;N;;;;; -2816;BRAILLE PATTERN DOTS-235;So;0;L;;;;;N;;;;; -2817;BRAILLE PATTERN DOTS-1235;So;0;L;;;;;N;;;;; -2818;BRAILLE PATTERN DOTS-45;So;0;L;;;;;N;;;;; -2819;BRAILLE PATTERN DOTS-145;So;0;L;;;;;N;;;;; -281A;BRAILLE PATTERN DOTS-245;So;0;L;;;;;N;;;;; -281B;BRAILLE PATTERN DOTS-1245;So;0;L;;;;;N;;;;; -281C;BRAILLE PATTERN DOTS-345;So;0;L;;;;;N;;;;; -281D;BRAILLE PATTERN DOTS-1345;So;0;L;;;;;N;;;;; -281E;BRAILLE PATTERN DOTS-2345;So;0;L;;;;;N;;;;; -281F;BRAILLE PATTERN DOTS-12345;So;0;L;;;;;N;;;;; -2820;BRAILLE PATTERN DOTS-6;So;0;L;;;;;N;;;;; -2821;BRAILLE PATTERN DOTS-16;So;0;L;;;;;N;;;;; -2822;BRAILLE PATTERN DOTS-26;So;0;L;;;;;N;;;;; -2823;BRAILLE PATTERN DOTS-126;So;0;L;;;;;N;;;;; -2824;BRAILLE PATTERN DOTS-36;So;0;L;;;;;N;;;;; -2825;BRAILLE PATTERN DOTS-136;So;0;L;;;;;N;;;;; -2826;BRAILLE PATTERN DOTS-236;So;0;L;;;;;N;;;;; -2827;BRAILLE PATTERN DOTS-1236;So;0;L;;;;;N;;;;; -2828;BRAILLE PATTERN DOTS-46;So;0;L;;;;;N;;;;; -2829;BRAILLE PATTERN DOTS-146;So;0;L;;;;;N;;;;; -282A;BRAILLE PATTERN DOTS-246;So;0;L;;;;;N;;;;; -282B;BRAILLE PATTERN DOTS-1246;So;0;L;;;;;N;;;;; -282C;BRAILLE PATTERN DOTS-346;So;0;L;;;;;N;;;;; -282D;BRAILLE PATTERN DOTS-1346;So;0;L;;;;;N;;;;; -282E;BRAILLE PATTERN DOTS-2346;So;0;L;;;;;N;;;;; -282F;BRAILLE PATTERN DOTS-12346;So;0;L;;;;;N;;;;; -2830;BRAILLE PATTERN DOTS-56;So;0;L;;;;;N;;;;; -2831;BRAILLE PATTERN DOTS-156;So;0;L;;;;;N;;;;; -2832;BRAILLE PATTERN DOTS-256;So;0;L;;;;;N;;;;; -2833;BRAILLE PATTERN DOTS-1256;So;0;L;;;;;N;;;;; -2834;BRAILLE PATTERN DOTS-356;So;0;L;;;;;N;;;;; -2835;BRAILLE PATTERN DOTS-1356;So;0;L;;;;;N;;;;; -2836;BRAILLE PATTERN DOTS-2356;So;0;L;;;;;N;;;;; -2837;BRAILLE PATTERN DOTS-12356;So;0;L;;;;;N;;;;; -2838;BRAILLE PATTERN DOTS-456;So;0;L;;;;;N;;;;; -2839;BRAILLE PATTERN DOTS-1456;So;0;L;;;;;N;;;;; -283A;BRAILLE PATTERN DOTS-2456;So;0;L;;;;;N;;;;; -283B;BRAILLE PATTERN DOTS-12456;So;0;L;;;;;N;;;;; -283C;BRAILLE PATTERN DOTS-3456;So;0;L;;;;;N;;;;; -283D;BRAILLE PATTERN DOTS-13456;So;0;L;;;;;N;;;;; -283E;BRAILLE PATTERN DOTS-23456;So;0;L;;;;;N;;;;; -283F;BRAILLE PATTERN DOTS-123456;So;0;L;;;;;N;;;;; -2840;BRAILLE PATTERN DOTS-7;So;0;L;;;;;N;;;;; -2841;BRAILLE PATTERN DOTS-17;So;0;L;;;;;N;;;;; -2842;BRAILLE PATTERN DOTS-27;So;0;L;;;;;N;;;;; -2843;BRAILLE PATTERN DOTS-127;So;0;L;;;;;N;;;;; -2844;BRAILLE PATTERN DOTS-37;So;0;L;;;;;N;;;;; -2845;BRAILLE PATTERN DOTS-137;So;0;L;;;;;N;;;;; -2846;BRAILLE PATTERN DOTS-237;So;0;L;;;;;N;;;;; -2847;BRAILLE PATTERN DOTS-1237;So;0;L;;;;;N;;;;; -2848;BRAILLE PATTERN DOTS-47;So;0;L;;;;;N;;;;; -2849;BRAILLE PATTERN DOTS-147;So;0;L;;;;;N;;;;; -284A;BRAILLE PATTERN DOTS-247;So;0;L;;;;;N;;;;; -284B;BRAILLE PATTERN DOTS-1247;So;0;L;;;;;N;;;;; -284C;BRAILLE PATTERN DOTS-347;So;0;L;;;;;N;;;;; -284D;BRAILLE PATTERN DOTS-1347;So;0;L;;;;;N;;;;; -284E;BRAILLE PATTERN DOTS-2347;So;0;L;;;;;N;;;;; -284F;BRAILLE PATTERN DOTS-12347;So;0;L;;;;;N;;;;; -2850;BRAILLE PATTERN DOTS-57;So;0;L;;;;;N;;;;; -2851;BRAILLE PATTERN DOTS-157;So;0;L;;;;;N;;;;; -2852;BRAILLE PATTERN DOTS-257;So;0;L;;;;;N;;;;; -2853;BRAILLE PATTERN DOTS-1257;So;0;L;;;;;N;;;;; -2854;BRAILLE PATTERN DOTS-357;So;0;L;;;;;N;;;;; -2855;BRAILLE PATTERN DOTS-1357;So;0;L;;;;;N;;;;; -2856;BRAILLE PATTERN DOTS-2357;So;0;L;;;;;N;;;;; -2857;BRAILLE PATTERN DOTS-12357;So;0;L;;;;;N;;;;; -2858;BRAILLE PATTERN DOTS-457;So;0;L;;;;;N;;;;; -2859;BRAILLE PATTERN DOTS-1457;So;0;L;;;;;N;;;;; -285A;BRAILLE PATTERN DOTS-2457;So;0;L;;;;;N;;;;; -285B;BRAILLE PATTERN DOTS-12457;So;0;L;;;;;N;;;;; -285C;BRAILLE PATTERN DOTS-3457;So;0;L;;;;;N;;;;; -285D;BRAILLE PATTERN DOTS-13457;So;0;L;;;;;N;;;;; -285E;BRAILLE PATTERN DOTS-23457;So;0;L;;;;;N;;;;; -285F;BRAILLE PATTERN DOTS-123457;So;0;L;;;;;N;;;;; -2860;BRAILLE PATTERN DOTS-67;So;0;L;;;;;N;;;;; -2861;BRAILLE PATTERN DOTS-167;So;0;L;;;;;N;;;;; -2862;BRAILLE PATTERN DOTS-267;So;0;L;;;;;N;;;;; -2863;BRAILLE PATTERN DOTS-1267;So;0;L;;;;;N;;;;; -2864;BRAILLE PATTERN DOTS-367;So;0;L;;;;;N;;;;; -2865;BRAILLE PATTERN DOTS-1367;So;0;L;;;;;N;;;;; -2866;BRAILLE PATTERN DOTS-2367;So;0;L;;;;;N;;;;; -2867;BRAILLE PATTERN DOTS-12367;So;0;L;;;;;N;;;;; -2868;BRAILLE PATTERN DOTS-467;So;0;L;;;;;N;;;;; -2869;BRAILLE PATTERN DOTS-1467;So;0;L;;;;;N;;;;; -286A;BRAILLE PATTERN DOTS-2467;So;0;L;;;;;N;;;;; -286B;BRAILLE PATTERN DOTS-12467;So;0;L;;;;;N;;;;; -286C;BRAILLE PATTERN DOTS-3467;So;0;L;;;;;N;;;;; -286D;BRAILLE PATTERN DOTS-13467;So;0;L;;;;;N;;;;; -286E;BRAILLE PATTERN DOTS-23467;So;0;L;;;;;N;;;;; -286F;BRAILLE PATTERN DOTS-123467;So;0;L;;;;;N;;;;; -2870;BRAILLE PATTERN DOTS-567;So;0;L;;;;;N;;;;; -2871;BRAILLE PATTERN DOTS-1567;So;0;L;;;;;N;;;;; -2872;BRAILLE PATTERN DOTS-2567;So;0;L;;;;;N;;;;; -2873;BRAILLE PATTERN DOTS-12567;So;0;L;;;;;N;;;;; -2874;BRAILLE PATTERN DOTS-3567;So;0;L;;;;;N;;;;; -2875;BRAILLE PATTERN DOTS-13567;So;0;L;;;;;N;;;;; -2876;BRAILLE PATTERN DOTS-23567;So;0;L;;;;;N;;;;; -2877;BRAILLE PATTERN DOTS-123567;So;0;L;;;;;N;;;;; -2878;BRAILLE PATTERN DOTS-4567;So;0;L;;;;;N;;;;; -2879;BRAILLE PATTERN DOTS-14567;So;0;L;;;;;N;;;;; -287A;BRAILLE PATTERN DOTS-24567;So;0;L;;;;;N;;;;; -287B;BRAILLE PATTERN DOTS-124567;So;0;L;;;;;N;;;;; -287C;BRAILLE PATTERN DOTS-34567;So;0;L;;;;;N;;;;; -287D;BRAILLE PATTERN DOTS-134567;So;0;L;;;;;N;;;;; -287E;BRAILLE PATTERN DOTS-234567;So;0;L;;;;;N;;;;; -287F;BRAILLE PATTERN DOTS-1234567;So;0;L;;;;;N;;;;; -2880;BRAILLE PATTERN DOTS-8;So;0;L;;;;;N;;;;; -2881;BRAILLE PATTERN DOTS-18;So;0;L;;;;;N;;;;; -2882;BRAILLE PATTERN DOTS-28;So;0;L;;;;;N;;;;; -2883;BRAILLE PATTERN DOTS-128;So;0;L;;;;;N;;;;; -2884;BRAILLE PATTERN DOTS-38;So;0;L;;;;;N;;;;; -2885;BRAILLE PATTERN DOTS-138;So;0;L;;;;;N;;;;; -2886;BRAILLE PATTERN DOTS-238;So;0;L;;;;;N;;;;; -2887;BRAILLE PATTERN DOTS-1238;So;0;L;;;;;N;;;;; -2888;BRAILLE PATTERN DOTS-48;So;0;L;;;;;N;;;;; -2889;BRAILLE PATTERN DOTS-148;So;0;L;;;;;N;;;;; -288A;BRAILLE PATTERN DOTS-248;So;0;L;;;;;N;;;;; -288B;BRAILLE PATTERN DOTS-1248;So;0;L;;;;;N;;;;; -288C;BRAILLE PATTERN DOTS-348;So;0;L;;;;;N;;;;; -288D;BRAILLE PATTERN DOTS-1348;So;0;L;;;;;N;;;;; -288E;BRAILLE PATTERN DOTS-2348;So;0;L;;;;;N;;;;; -288F;BRAILLE PATTERN DOTS-12348;So;0;L;;;;;N;;;;; -2890;BRAILLE PATTERN DOTS-58;So;0;L;;;;;N;;;;; -2891;BRAILLE PATTERN DOTS-158;So;0;L;;;;;N;;;;; -2892;BRAILLE PATTERN DOTS-258;So;0;L;;;;;N;;;;; -2893;BRAILLE PATTERN DOTS-1258;So;0;L;;;;;N;;;;; -2894;BRAILLE PATTERN DOTS-358;So;0;L;;;;;N;;;;; -2895;BRAILLE PATTERN DOTS-1358;So;0;L;;;;;N;;;;; -2896;BRAILLE PATTERN DOTS-2358;So;0;L;;;;;N;;;;; -2897;BRAILLE PATTERN DOTS-12358;So;0;L;;;;;N;;;;; -2898;BRAILLE PATTERN DOTS-458;So;0;L;;;;;N;;;;; -2899;BRAILLE PATTERN DOTS-1458;So;0;L;;;;;N;;;;; -289A;BRAILLE PATTERN DOTS-2458;So;0;L;;;;;N;;;;; -289B;BRAILLE PATTERN DOTS-12458;So;0;L;;;;;N;;;;; -289C;BRAILLE PATTERN DOTS-3458;So;0;L;;;;;N;;;;; -289D;BRAILLE PATTERN DOTS-13458;So;0;L;;;;;N;;;;; -289E;BRAILLE PATTERN DOTS-23458;So;0;L;;;;;N;;;;; -289F;BRAILLE PATTERN DOTS-123458;So;0;L;;;;;N;;;;; -28A0;BRAILLE PATTERN DOTS-68;So;0;L;;;;;N;;;;; -28A1;BRAILLE PATTERN DOTS-168;So;0;L;;;;;N;;;;; -28A2;BRAILLE PATTERN DOTS-268;So;0;L;;;;;N;;;;; -28A3;BRAILLE PATTERN DOTS-1268;So;0;L;;;;;N;;;;; -28A4;BRAILLE PATTERN DOTS-368;So;0;L;;;;;N;;;;; -28A5;BRAILLE PATTERN DOTS-1368;So;0;L;;;;;N;;;;; -28A6;BRAILLE PATTERN DOTS-2368;So;0;L;;;;;N;;;;; -28A7;BRAILLE PATTERN DOTS-12368;So;0;L;;;;;N;;;;; -28A8;BRAILLE PATTERN DOTS-468;So;0;L;;;;;N;;;;; -28A9;BRAILLE PATTERN DOTS-1468;So;0;L;;;;;N;;;;; -28AA;BRAILLE PATTERN DOTS-2468;So;0;L;;;;;N;;;;; -28AB;BRAILLE PATTERN DOTS-12468;So;0;L;;;;;N;;;;; -28AC;BRAILLE PATTERN DOTS-3468;So;0;L;;;;;N;;;;; -28AD;BRAILLE PATTERN DOTS-13468;So;0;L;;;;;N;;;;; -28AE;BRAILLE PATTERN DOTS-23468;So;0;L;;;;;N;;;;; -28AF;BRAILLE PATTERN DOTS-123468;So;0;L;;;;;N;;;;; -28B0;BRAILLE PATTERN DOTS-568;So;0;L;;;;;N;;;;; -28B1;BRAILLE PATTERN DOTS-1568;So;0;L;;;;;N;;;;; -28B2;BRAILLE PATTERN DOTS-2568;So;0;L;;;;;N;;;;; -28B3;BRAILLE PATTERN DOTS-12568;So;0;L;;;;;N;;;;; -28B4;BRAILLE PATTERN DOTS-3568;So;0;L;;;;;N;;;;; -28B5;BRAILLE PATTERN DOTS-13568;So;0;L;;;;;N;;;;; -28B6;BRAILLE PATTERN DOTS-23568;So;0;L;;;;;N;;;;; -28B7;BRAILLE PATTERN DOTS-123568;So;0;L;;;;;N;;;;; -28B8;BRAILLE PATTERN DOTS-4568;So;0;L;;;;;N;;;;; -28B9;BRAILLE PATTERN DOTS-14568;So;0;L;;;;;N;;;;; -28BA;BRAILLE PATTERN DOTS-24568;So;0;L;;;;;N;;;;; -28BB;BRAILLE PATTERN DOTS-124568;So;0;L;;;;;N;;;;; -28BC;BRAILLE PATTERN DOTS-34568;So;0;L;;;;;N;;;;; -28BD;BRAILLE PATTERN DOTS-134568;So;0;L;;;;;N;;;;; -28BE;BRAILLE PATTERN DOTS-234568;So;0;L;;;;;N;;;;; -28BF;BRAILLE PATTERN DOTS-1234568;So;0;L;;;;;N;;;;; -28C0;BRAILLE PATTERN DOTS-78;So;0;L;;;;;N;;;;; -28C1;BRAILLE PATTERN DOTS-178;So;0;L;;;;;N;;;;; -28C2;BRAILLE PATTERN DOTS-278;So;0;L;;;;;N;;;;; -28C3;BRAILLE PATTERN DOTS-1278;So;0;L;;;;;N;;;;; -28C4;BRAILLE PATTERN DOTS-378;So;0;L;;;;;N;;;;; -28C5;BRAILLE PATTERN DOTS-1378;So;0;L;;;;;N;;;;; -28C6;BRAILLE PATTERN DOTS-2378;So;0;L;;;;;N;;;;; -28C7;BRAILLE PATTERN DOTS-12378;So;0;L;;;;;N;;;;; -28C8;BRAILLE PATTERN DOTS-478;So;0;L;;;;;N;;;;; -28C9;BRAILLE PATTERN DOTS-1478;So;0;L;;;;;N;;;;; -28CA;BRAILLE PATTERN DOTS-2478;So;0;L;;;;;N;;;;; -28CB;BRAILLE PATTERN DOTS-12478;So;0;L;;;;;N;;;;; -28CC;BRAILLE PATTERN DOTS-3478;So;0;L;;;;;N;;;;; -28CD;BRAILLE PATTERN DOTS-13478;So;0;L;;;;;N;;;;; -28CE;BRAILLE PATTERN DOTS-23478;So;0;L;;;;;N;;;;; -28CF;BRAILLE PATTERN DOTS-123478;So;0;L;;;;;N;;;;; -28D0;BRAILLE PATTERN DOTS-578;So;0;L;;;;;N;;;;; -28D1;BRAILLE PATTERN DOTS-1578;So;0;L;;;;;N;;;;; -28D2;BRAILLE PATTERN DOTS-2578;So;0;L;;;;;N;;;;; -28D3;BRAILLE PATTERN DOTS-12578;So;0;L;;;;;N;;;;; -28D4;BRAILLE PATTERN DOTS-3578;So;0;L;;;;;N;;;;; -28D5;BRAILLE PATTERN DOTS-13578;So;0;L;;;;;N;;;;; -28D6;BRAILLE PATTERN DOTS-23578;So;0;L;;;;;N;;;;; -28D7;BRAILLE PATTERN DOTS-123578;So;0;L;;;;;N;;;;; -28D8;BRAILLE PATTERN DOTS-4578;So;0;L;;;;;N;;;;; -28D9;BRAILLE PATTERN DOTS-14578;So;0;L;;;;;N;;;;; -28DA;BRAILLE PATTERN DOTS-24578;So;0;L;;;;;N;;;;; -28DB;BRAILLE PATTERN DOTS-124578;So;0;L;;;;;N;;;;; -28DC;BRAILLE PATTERN DOTS-34578;So;0;L;;;;;N;;;;; -28DD;BRAILLE PATTERN DOTS-134578;So;0;L;;;;;N;;;;; -28DE;BRAILLE PATTERN DOTS-234578;So;0;L;;;;;N;;;;; -28DF;BRAILLE PATTERN DOTS-1234578;So;0;L;;;;;N;;;;; -28E0;BRAILLE PATTERN DOTS-678;So;0;L;;;;;N;;;;; -28E1;BRAILLE PATTERN DOTS-1678;So;0;L;;;;;N;;;;; -28E2;BRAILLE PATTERN DOTS-2678;So;0;L;;;;;N;;;;; -28E3;BRAILLE PATTERN DOTS-12678;So;0;L;;;;;N;;;;; -28E4;BRAILLE PATTERN DOTS-3678;So;0;L;;;;;N;;;;; -28E5;BRAILLE PATTERN DOTS-13678;So;0;L;;;;;N;;;;; -28E6;BRAILLE PATTERN DOTS-23678;So;0;L;;;;;N;;;;; -28E7;BRAILLE PATTERN DOTS-123678;So;0;L;;;;;N;;;;; -28E8;BRAILLE PATTERN DOTS-4678;So;0;L;;;;;N;;;;; -28E9;BRAILLE PATTERN DOTS-14678;So;0;L;;;;;N;;;;; -28EA;BRAILLE PATTERN DOTS-24678;So;0;L;;;;;N;;;;; -28EB;BRAILLE PATTERN DOTS-124678;So;0;L;;;;;N;;;;; -28EC;BRAILLE PATTERN DOTS-34678;So;0;L;;;;;N;;;;; -28ED;BRAILLE PATTERN DOTS-134678;So;0;L;;;;;N;;;;; -28EE;BRAILLE PATTERN DOTS-234678;So;0;L;;;;;N;;;;; -28EF;BRAILLE PATTERN DOTS-1234678;So;0;L;;;;;N;;;;; -28F0;BRAILLE PATTERN DOTS-5678;So;0;L;;;;;N;;;;; -28F1;BRAILLE PATTERN DOTS-15678;So;0;L;;;;;N;;;;; -28F2;BRAILLE PATTERN DOTS-25678;So;0;L;;;;;N;;;;; -28F3;BRAILLE PATTERN DOTS-125678;So;0;L;;;;;N;;;;; -28F4;BRAILLE PATTERN DOTS-35678;So;0;L;;;;;N;;;;; -28F5;BRAILLE PATTERN DOTS-135678;So;0;L;;;;;N;;;;; -28F6;BRAILLE PATTERN DOTS-235678;So;0;L;;;;;N;;;;; -28F7;BRAILLE PATTERN DOTS-1235678;So;0;L;;;;;N;;;;; -28F8;BRAILLE PATTERN DOTS-45678;So;0;L;;;;;N;;;;; -28F9;BRAILLE PATTERN DOTS-145678;So;0;L;;;;;N;;;;; -28FA;BRAILLE PATTERN DOTS-245678;So;0;L;;;;;N;;;;; -28FB;BRAILLE PATTERN DOTS-1245678;So;0;L;;;;;N;;;;; -28FC;BRAILLE PATTERN DOTS-345678;So;0;L;;;;;N;;;;; -28FD;BRAILLE PATTERN DOTS-1345678;So;0;L;;;;;N;;;;; -28FE;BRAILLE PATTERN DOTS-2345678;So;0;L;;;;;N;;;;; -28FF;BRAILLE PATTERN DOTS-12345678;So;0;L;;;;;N;;;;; -2900;RIGHTWARDS TWO-HEADED ARROW WITH VERTICAL STROKE;Sm;0;ON;;;;;N;;;;; -2901;RIGHTWARDS TWO-HEADED ARROW WITH DOUBLE VERTICAL STROKE;Sm;0;ON;;;;;N;;;;; -2902;LEFTWARDS DOUBLE ARROW WITH VERTICAL STROKE;Sm;0;ON;;;;;N;;;;; -2903;RIGHTWARDS DOUBLE ARROW WITH VERTICAL STROKE;Sm;0;ON;;;;;N;;;;; -2904;LEFT RIGHT DOUBLE ARROW WITH VERTICAL STROKE;Sm;0;ON;;;;;N;;;;; -2905;RIGHTWARDS TWO-HEADED ARROW FROM BAR;Sm;0;ON;;;;;N;;;;; -2906;LEFTWARDS DOUBLE ARROW FROM BAR;Sm;0;ON;;;;;N;;;;; -2907;RIGHTWARDS DOUBLE ARROW FROM BAR;Sm;0;ON;;;;;N;;;;; -2908;DOWNWARDS ARROW WITH HORIZONTAL STROKE;Sm;0;ON;;;;;N;;;;; -2909;UPWARDS ARROW WITH HORIZONTAL STROKE;Sm;0;ON;;;;;N;;;;; -290A;UPWARDS TRIPLE ARROW;Sm;0;ON;;;;;N;;;;; -290B;DOWNWARDS TRIPLE ARROW;Sm;0;ON;;;;;N;;;;; -290C;LEFTWARDS DOUBLE DASH ARROW;Sm;0;ON;;;;;N;;;;; -290D;RIGHTWARDS DOUBLE DASH ARROW;Sm;0;ON;;;;;N;;;;; -290E;LEFTWARDS TRIPLE DASH ARROW;Sm;0;ON;;;;;N;;;;; -290F;RIGHTWARDS TRIPLE DASH ARROW;Sm;0;ON;;;;;N;;;;; -2910;RIGHTWARDS TWO-HEADED TRIPLE DASH ARROW;Sm;0;ON;;;;;N;;;;; -2911;RIGHTWARDS ARROW WITH DOTTED STEM;Sm;0;ON;;;;;N;;;;; -2912;UPWARDS ARROW TO BAR;Sm;0;ON;;;;;N;;;;; -2913;DOWNWARDS ARROW TO BAR;Sm;0;ON;;;;;N;;;;; -2914;RIGHTWARDS ARROW WITH TAIL WITH VERTICAL STROKE;Sm;0;ON;;;;;N;;;;; -2915;RIGHTWARDS ARROW WITH TAIL WITH DOUBLE VERTICAL STROKE;Sm;0;ON;;;;;N;;;;; -2916;RIGHTWARDS TWO-HEADED ARROW WITH TAIL;Sm;0;ON;;;;;N;;;;; -2917;RIGHTWARDS TWO-HEADED ARROW WITH TAIL WITH VERTICAL STROKE;Sm;0;ON;;;;;N;;;;; -2918;RIGHTWARDS TWO-HEADED ARROW WITH TAIL WITH DOUBLE VERTICAL STROKE;Sm;0;ON;;;;;N;;;;; -2919;LEFTWARDS ARROW-TAIL;Sm;0;ON;;;;;N;;;;; -291A;RIGHTWARDS ARROW-TAIL;Sm;0;ON;;;;;N;;;;; -291B;LEFTWARDS DOUBLE ARROW-TAIL;Sm;0;ON;;;;;N;;;;; -291C;RIGHTWARDS DOUBLE ARROW-TAIL;Sm;0;ON;;;;;N;;;;; -291D;LEFTWARDS ARROW TO BLACK DIAMOND;Sm;0;ON;;;;;N;;;;; -291E;RIGHTWARDS ARROW TO BLACK DIAMOND;Sm;0;ON;;;;;N;;;;; -291F;LEFTWARDS ARROW FROM BAR TO BLACK DIAMOND;Sm;0;ON;;;;;N;;;;; -2920;RIGHTWARDS ARROW FROM BAR TO BLACK DIAMOND;Sm;0;ON;;;;;N;;;;; -2921;NORTH WEST AND SOUTH EAST ARROW;Sm;0;ON;;;;;N;;;;; -2922;NORTH EAST AND SOUTH WEST ARROW;Sm;0;ON;;;;;N;;;;; -2923;NORTH WEST ARROW WITH HOOK;Sm;0;ON;;;;;N;;;;; -2924;NORTH EAST ARROW WITH HOOK;Sm;0;ON;;;;;N;;;;; -2925;SOUTH EAST ARROW WITH HOOK;Sm;0;ON;;;;;N;;;;; -2926;SOUTH WEST ARROW WITH HOOK;Sm;0;ON;;;;;N;;;;; -2927;NORTH WEST ARROW AND NORTH EAST ARROW;Sm;0;ON;;;;;N;;;;; -2928;NORTH EAST ARROW AND SOUTH EAST ARROW;Sm;0;ON;;;;;N;;;;; -2929;SOUTH EAST ARROW AND SOUTH WEST ARROW;Sm;0;ON;;;;;N;;;;; -292A;SOUTH WEST ARROW AND NORTH WEST ARROW;Sm;0;ON;;;;;N;;;;; -292B;RISING DIAGONAL CROSSING FALLING DIAGONAL;Sm;0;ON;;;;;N;;;;; -292C;FALLING DIAGONAL CROSSING RISING DIAGONAL;Sm;0;ON;;;;;N;;;;; -292D;SOUTH EAST ARROW CROSSING NORTH EAST ARROW;Sm;0;ON;;;;;N;;;;; -292E;NORTH EAST ARROW CROSSING SOUTH EAST ARROW;Sm;0;ON;;;;;N;;;;; -292F;FALLING DIAGONAL CROSSING NORTH EAST ARROW;Sm;0;ON;;;;;N;;;;; -2930;RISING DIAGONAL CROSSING SOUTH EAST ARROW;Sm;0;ON;;;;;N;;;;; -2931;NORTH EAST ARROW CROSSING NORTH WEST ARROW;Sm;0;ON;;;;;N;;;;; -2932;NORTH WEST ARROW CROSSING NORTH EAST ARROW;Sm;0;ON;;;;;N;;;;; -2933;WAVE ARROW POINTING DIRECTLY RIGHT;Sm;0;ON;;;;;N;;;;; -2934;ARROW POINTING RIGHTWARDS THEN CURVING UPWARDS;Sm;0;ON;;;;;N;;;;; -2935;ARROW POINTING RIGHTWARDS THEN CURVING DOWNWARDS;Sm;0;ON;;;;;N;;;;; -2936;ARROW POINTING DOWNWARDS THEN CURVING LEFTWARDS;Sm;0;ON;;;;;N;;;;; -2937;ARROW POINTING DOWNWARDS THEN CURVING RIGHTWARDS;Sm;0;ON;;;;;N;;;;; -2938;RIGHT-SIDE ARC CLOCKWISE ARROW;Sm;0;ON;;;;;N;;;;; -2939;LEFT-SIDE ARC ANTICLOCKWISE ARROW;Sm;0;ON;;;;;N;;;;; -293A;TOP ARC ANTICLOCKWISE ARROW;Sm;0;ON;;;;;N;;;;; -293B;BOTTOM ARC ANTICLOCKWISE ARROW;Sm;0;ON;;;;;N;;;;; -293C;TOP ARC CLOCKWISE ARROW WITH MINUS;Sm;0;ON;;;;;N;;;;; -293D;TOP ARC ANTICLOCKWISE ARROW WITH PLUS;Sm;0;ON;;;;;N;;;;; -293E;LOWER RIGHT SEMICIRCULAR CLOCKWISE ARROW;Sm;0;ON;;;;;N;;;;; -293F;LOWER LEFT SEMICIRCULAR ANTICLOCKWISE ARROW;Sm;0;ON;;;;;N;;;;; -2940;ANTICLOCKWISE CLOSED CIRCLE ARROW;Sm;0;ON;;;;;N;;;;; -2941;CLOCKWISE CLOSED CIRCLE ARROW;Sm;0;ON;;;;;N;;;;; -2942;RIGHTWARDS ARROW ABOVE SHORT LEFTWARDS ARROW;Sm;0;ON;;;;;N;;;;; -2943;LEFTWARDS ARROW ABOVE SHORT RIGHTWARDS ARROW;Sm;0;ON;;;;;N;;;;; -2944;SHORT RIGHTWARDS ARROW ABOVE LEFTWARDS ARROW;Sm;0;ON;;;;;N;;;;; -2945;RIGHTWARDS ARROW WITH PLUS BELOW;Sm;0;ON;;;;;N;;;;; -2946;LEFTWARDS ARROW WITH PLUS BELOW;Sm;0;ON;;;;;N;;;;; -2947;RIGHTWARDS ARROW THROUGH X;Sm;0;ON;;;;;N;;;;; -2948;LEFT RIGHT ARROW THROUGH SMALL CIRCLE;Sm;0;ON;;;;;N;;;;; -2949;UPWARDS TWO-HEADED ARROW FROM SMALL CIRCLE;Sm;0;ON;;;;;N;;;;; -294A;LEFT BARB UP RIGHT BARB DOWN HARPOON;Sm;0;ON;;;;;N;;;;; -294B;LEFT BARB DOWN RIGHT BARB UP HARPOON;Sm;0;ON;;;;;N;;;;; -294C;UP BARB RIGHT DOWN BARB LEFT HARPOON;Sm;0;ON;;;;;N;;;;; -294D;UP BARB LEFT DOWN BARB RIGHT HARPOON;Sm;0;ON;;;;;N;;;;; -294E;LEFT BARB UP RIGHT BARB UP HARPOON;Sm;0;ON;;;;;N;;;;; -294F;UP BARB RIGHT DOWN BARB RIGHT HARPOON;Sm;0;ON;;;;;N;;;;; -2950;LEFT BARB DOWN RIGHT BARB DOWN HARPOON;Sm;0;ON;;;;;N;;;;; -2951;UP BARB LEFT DOWN BARB LEFT HARPOON;Sm;0;ON;;;;;N;;;;; -2952;LEFTWARDS HARPOON WITH BARB UP TO BAR;Sm;0;ON;;;;;N;;;;; -2953;RIGHTWARDS HARPOON WITH BARB UP TO BAR;Sm;0;ON;;;;;N;;;;; -2954;UPWARDS HARPOON WITH BARB RIGHT TO BAR;Sm;0;ON;;;;;N;;;;; -2955;DOWNWARDS HARPOON WITH BARB RIGHT TO BAR;Sm;0;ON;;;;;N;;;;; -2956;LEFTWARDS HARPOON WITH BARB DOWN TO BAR;Sm;0;ON;;;;;N;;;;; -2957;RIGHTWARDS HARPOON WITH BARB DOWN TO BAR;Sm;0;ON;;;;;N;;;;; -2958;UPWARDS HARPOON WITH BARB LEFT TO BAR;Sm;0;ON;;;;;N;;;;; -2959;DOWNWARDS HARPOON WITH BARB LEFT TO BAR;Sm;0;ON;;;;;N;;;;; -295A;LEFTWARDS HARPOON WITH BARB UP FROM BAR;Sm;0;ON;;;;;N;;;;; -295B;RIGHTWARDS HARPOON WITH BARB UP FROM BAR;Sm;0;ON;;;;;N;;;;; -295C;UPWARDS HARPOON WITH BARB RIGHT FROM BAR;Sm;0;ON;;;;;N;;;;; -295D;DOWNWARDS HARPOON WITH BARB RIGHT FROM BAR;Sm;0;ON;;;;;N;;;;; -295E;LEFTWARDS HARPOON WITH BARB DOWN FROM BAR;Sm;0;ON;;;;;N;;;;; -295F;RIGHTWARDS HARPOON WITH BARB DOWN FROM BAR;Sm;0;ON;;;;;N;;;;; -2960;UPWARDS HARPOON WITH BARB LEFT FROM BAR;Sm;0;ON;;;;;N;;;;; -2961;DOWNWARDS HARPOON WITH BARB LEFT FROM BAR;Sm;0;ON;;;;;N;;;;; -2962;LEFTWARDS HARPOON WITH BARB UP ABOVE LEFTWARDS HARPOON WITH BARB DOWN;Sm;0;ON;;;;;N;;;;; -2963;UPWARDS HARPOON WITH BARB LEFT BESIDE UPWARDS HARPOON WITH BARB RIGHT;Sm;0;ON;;;;;N;;;;; -2964;RIGHTWARDS HARPOON WITH BARB UP ABOVE RIGHTWARDS HARPOON WITH BARB DOWN;Sm;0;ON;;;;;N;;;;; -2965;DOWNWARDS HARPOON WITH BARB LEFT BESIDE DOWNWARDS HARPOON WITH BARB RIGHT;Sm;0;ON;;;;;N;;;;; -2966;LEFTWARDS HARPOON WITH BARB UP ABOVE RIGHTWARDS HARPOON WITH BARB UP;Sm;0;ON;;;;;N;;;;; -2967;LEFTWARDS HARPOON WITH BARB DOWN ABOVE RIGHTWARDS HARPOON WITH BARB DOWN;Sm;0;ON;;;;;N;;;;; -2968;RIGHTWARDS HARPOON WITH BARB UP ABOVE LEFTWARDS HARPOON WITH BARB UP;Sm;0;ON;;;;;N;;;;; -2969;RIGHTWARDS HARPOON WITH BARB DOWN ABOVE LEFTWARDS HARPOON WITH BARB DOWN;Sm;0;ON;;;;;N;;;;; -296A;LEFTWARDS HARPOON WITH BARB UP ABOVE LONG DASH;Sm;0;ON;;;;;N;;;;; -296B;LEFTWARDS HARPOON WITH BARB DOWN BELOW LONG DASH;Sm;0;ON;;;;;N;;;;; -296C;RIGHTWARDS HARPOON WITH BARB UP ABOVE LONG DASH;Sm;0;ON;;;;;N;;;;; -296D;RIGHTWARDS HARPOON WITH BARB DOWN BELOW LONG DASH;Sm;0;ON;;;;;N;;;;; -296E;UPWARDS HARPOON WITH BARB LEFT BESIDE DOWNWARDS HARPOON WITH BARB RIGHT;Sm;0;ON;;;;;N;;;;; -296F;DOWNWARDS HARPOON WITH BARB LEFT BESIDE UPWARDS HARPOON WITH BARB RIGHT;Sm;0;ON;;;;;N;;;;; -2970;RIGHT DOUBLE ARROW WITH ROUNDED HEAD;Sm;0;ON;;;;;N;;;;; -2971;EQUALS SIGN ABOVE RIGHTWARDS ARROW;Sm;0;ON;;;;;N;;;;; -2972;TILDE OPERATOR ABOVE RIGHTWARDS ARROW;Sm;0;ON;;;;;N;;;;; -2973;LEFTWARDS ARROW ABOVE TILDE OPERATOR;Sm;0;ON;;;;;N;;;;; -2974;RIGHTWARDS ARROW ABOVE TILDE OPERATOR;Sm;0;ON;;;;;N;;;;; -2975;RIGHTWARDS ARROW ABOVE ALMOST EQUAL TO;Sm;0;ON;;;;;N;;;;; -2976;LESS-THAN ABOVE LEFTWARDS ARROW;Sm;0;ON;;;;;N;;;;; -2977;LEFTWARDS ARROW THROUGH LESS-THAN;Sm;0;ON;;;;;N;;;;; -2978;GREATER-THAN ABOVE RIGHTWARDS ARROW;Sm;0;ON;;;;;N;;;;; -2979;SUBSET ABOVE RIGHTWARDS ARROW;Sm;0;ON;;;;;N;;;;; -297A;LEFTWARDS ARROW THROUGH SUBSET;Sm;0;ON;;;;;N;;;;; -297B;SUPERSET ABOVE LEFTWARDS ARROW;Sm;0;ON;;;;;N;;;;; -297C;LEFT FISH TAIL;Sm;0;ON;;;;;N;;;;; -297D;RIGHT FISH TAIL;Sm;0;ON;;;;;N;;;;; -297E;UP FISH TAIL;Sm;0;ON;;;;;N;;;;; -297F;DOWN FISH TAIL;Sm;0;ON;;;;;N;;;;; -2980;TRIPLE VERTICAL BAR DELIMITER;Sm;0;ON;;;;;N;;;;; -2981;Z NOTATION SPOT;Sm;0;ON;;;;;N;;;;; -2982;Z NOTATION TYPE COLON;Sm;0;ON;;;;;N;;;;; -2983;LEFT WHITE CURLY BRACKET;Ps;0;ON;;;;;Y;;;;; -2984;RIGHT WHITE CURLY BRACKET;Pe;0;ON;;;;;Y;;;;; -2985;LEFT WHITE PARENTHESIS;Ps;0;ON;;;;;Y;;;;; -2986;RIGHT WHITE PARENTHESIS;Pe;0;ON;;;;;Y;;;;; -2987;Z NOTATION LEFT IMAGE BRACKET;Ps;0;ON;;;;;Y;;;;; -2988;Z NOTATION RIGHT IMAGE BRACKET;Pe;0;ON;;;;;Y;;;;; -2989;Z NOTATION LEFT BINDING BRACKET;Ps;0;ON;;;;;Y;;;;; -298A;Z NOTATION RIGHT BINDING BRACKET;Pe;0;ON;;;;;Y;;;;; -298B;LEFT SQUARE BRACKET WITH UNDERBAR;Ps;0;ON;;;;;Y;;;;; -298C;RIGHT SQUARE BRACKET WITH UNDERBAR;Pe;0;ON;;;;;Y;;;;; -298D;LEFT SQUARE BRACKET WITH TICK IN TOP CORNER;Ps;0;ON;;;;;Y;;;;; -298E;RIGHT SQUARE BRACKET WITH TICK IN BOTTOM CORNER;Pe;0;ON;;;;;Y;;;;; -298F;LEFT SQUARE BRACKET WITH TICK IN BOTTOM CORNER;Ps;0;ON;;;;;Y;;;;; -2990;RIGHT SQUARE BRACKET WITH TICK IN TOP CORNER;Pe;0;ON;;;;;Y;;;;; -2991;LEFT ANGLE BRACKET WITH DOT;Ps;0;ON;;;;;Y;;;;; -2992;RIGHT ANGLE BRACKET WITH DOT;Pe;0;ON;;;;;Y;;;;; -2993;LEFT ARC LESS-THAN BRACKET;Ps;0;ON;;;;;Y;;;;; -2994;RIGHT ARC GREATER-THAN BRACKET;Pe;0;ON;;;;;Y;;;;; -2995;DOUBLE LEFT ARC GREATER-THAN BRACKET;Ps;0;ON;;;;;Y;;;;; -2996;DOUBLE RIGHT ARC LESS-THAN BRACKET;Pe;0;ON;;;;;Y;;;;; -2997;LEFT BLACK TORTOISE SHELL BRACKET;Ps;0;ON;;;;;Y;;;;; -2998;RIGHT BLACK TORTOISE SHELL BRACKET;Pe;0;ON;;;;;Y;;;;; -2999;DOTTED FENCE;Sm;0;ON;;;;;N;;;;; -299A;VERTICAL ZIGZAG LINE;Sm;0;ON;;;;;N;;;;; -299B;MEASURED ANGLE OPENING LEFT;Sm;0;ON;;;;;Y;;;;; -299C;RIGHT ANGLE VARIANT WITH SQUARE;Sm;0;ON;;;;;Y;;;;; -299D;MEASURED RIGHT ANGLE WITH DOT;Sm;0;ON;;;;;Y;;;;; -299E;ANGLE WITH S INSIDE;Sm;0;ON;;;;;Y;;;;; -299F;ACUTE ANGLE;Sm;0;ON;;;;;Y;;;;; -29A0;SPHERICAL ANGLE OPENING LEFT;Sm;0;ON;;;;;Y;;;;; -29A1;SPHERICAL ANGLE OPENING UP;Sm;0;ON;;;;;Y;;;;; -29A2;TURNED ANGLE;Sm;0;ON;;;;;Y;;;;; -29A3;REVERSED ANGLE;Sm;0;ON;;;;;Y;;;;; -29A4;ANGLE WITH UNDERBAR;Sm;0;ON;;;;;Y;;;;; -29A5;REVERSED ANGLE WITH UNDERBAR;Sm;0;ON;;;;;Y;;;;; -29A6;OBLIQUE ANGLE OPENING UP;Sm;0;ON;;;;;Y;;;;; -29A7;OBLIQUE ANGLE OPENING DOWN;Sm;0;ON;;;;;Y;;;;; -29A8;MEASURED ANGLE WITH OPEN ARM ENDING IN ARROW POINTING UP AND RIGHT;Sm;0;ON;;;;;Y;;;;; -29A9;MEASURED ANGLE WITH OPEN ARM ENDING IN ARROW POINTING UP AND LEFT;Sm;0;ON;;;;;Y;;;;; -29AA;MEASURED ANGLE WITH OPEN ARM ENDING IN ARROW POINTING DOWN AND RIGHT;Sm;0;ON;;;;;Y;;;;; -29AB;MEASURED ANGLE WITH OPEN ARM ENDING IN ARROW POINTING DOWN AND LEFT;Sm;0;ON;;;;;Y;;;;; -29AC;MEASURED ANGLE WITH OPEN ARM ENDING IN ARROW POINTING RIGHT AND UP;Sm;0;ON;;;;;Y;;;;; -29AD;MEASURED ANGLE WITH OPEN ARM ENDING IN ARROW POINTING LEFT AND UP;Sm;0;ON;;;;;Y;;;;; -29AE;MEASURED ANGLE WITH OPEN ARM ENDING IN ARROW POINTING RIGHT AND DOWN;Sm;0;ON;;;;;Y;;;;; -29AF;MEASURED ANGLE WITH OPEN ARM ENDING IN ARROW POINTING LEFT AND DOWN;Sm;0;ON;;;;;Y;;;;; -29B0;REVERSED EMPTY SET;Sm;0;ON;;;;;N;;;;; -29B1;EMPTY SET WITH OVERBAR;Sm;0;ON;;;;;N;;;;; -29B2;EMPTY SET WITH SMALL CIRCLE ABOVE;Sm;0;ON;;;;;N;;;;; -29B3;EMPTY SET WITH RIGHT ARROW ABOVE;Sm;0;ON;;;;;N;;;;; -29B4;EMPTY SET WITH LEFT ARROW ABOVE;Sm;0;ON;;;;;N;;;;; -29B5;CIRCLE WITH HORIZONTAL BAR;Sm;0;ON;;;;;N;;;;; -29B6;CIRCLED VERTICAL BAR;Sm;0;ON;;;;;N;;;;; -29B7;CIRCLED PARALLEL;Sm;0;ON;;;;;N;;;;; -29B8;CIRCLED REVERSE SOLIDUS;Sm;0;ON;;;;;Y;;;;; -29B9;CIRCLED PERPENDICULAR;Sm;0;ON;;;;;N;;;;; -29BA;CIRCLE DIVIDED BY HORIZONTAL BAR AND TOP HALF DIVIDED BY VERTICAL BAR;Sm;0;ON;;;;;N;;;;; -29BB;CIRCLE WITH SUPERIMPOSED X;Sm;0;ON;;;;;N;;;;; -29BC;CIRCLED ANTICLOCKWISE-ROTATED DIVISION SIGN;Sm;0;ON;;;;;N;;;;; -29BD;UP ARROW THROUGH CIRCLE;Sm;0;ON;;;;;N;;;;; -29BE;CIRCLED WHITE BULLET;Sm;0;ON;;;;;N;;;;; -29BF;CIRCLED BULLET;Sm;0;ON;;;;;N;;;;; -29C0;CIRCLED LESS-THAN;Sm;0;ON;;;;;Y;;;;; -29C1;CIRCLED GREATER-THAN;Sm;0;ON;;;;;Y;;;;; -29C2;CIRCLE WITH SMALL CIRCLE TO THE RIGHT;Sm;0;ON;;;;;Y;;;;; -29C3;CIRCLE WITH TWO HORIZONTAL STROKES TO THE RIGHT;Sm;0;ON;;;;;Y;;;;; -29C4;SQUARED RISING DIAGONAL SLASH;Sm;0;ON;;;;;Y;;;;; -29C5;SQUARED FALLING DIAGONAL SLASH;Sm;0;ON;;;;;Y;;;;; -29C6;SQUARED ASTERISK;Sm;0;ON;;;;;N;;;;; -29C7;SQUARED SMALL CIRCLE;Sm;0;ON;;;;;N;;;;; -29C8;SQUARED SQUARE;Sm;0;ON;;;;;N;;;;; -29C9;TWO JOINED SQUARES;Sm;0;ON;;;;;Y;;;;; -29CA;TRIANGLE WITH DOT ABOVE;Sm;0;ON;;;;;N;;;;; -29CB;TRIANGLE WITH UNDERBAR;Sm;0;ON;;;;;N;;;;; -29CC;S IN TRIANGLE;Sm;0;ON;;;;;N;;;;; -29CD;TRIANGLE WITH SERIFS AT BOTTOM;Sm;0;ON;;;;;N;;;;; -29CE;RIGHT TRIANGLE ABOVE LEFT TRIANGLE;Sm;0;ON;;;;;Y;;;;; -29CF;LEFT TRIANGLE BESIDE VERTICAL BAR;Sm;0;ON;;;;;Y;;;;; -29D0;VERTICAL BAR BESIDE RIGHT TRIANGLE;Sm;0;ON;;;;;Y;;;;; -29D1;BOWTIE WITH LEFT HALF BLACK;Sm;0;ON;;;;;Y;;;;; -29D2;BOWTIE WITH RIGHT HALF BLACK;Sm;0;ON;;;;;Y;;;;; -29D3;BLACK BOWTIE;Sm;0;ON;;;;;N;;;;; -29D4;TIMES WITH LEFT HALF BLACK;Sm;0;ON;;;;;Y;;;;; -29D5;TIMES WITH RIGHT HALF BLACK;Sm;0;ON;;;;;Y;;;;; -29D6;WHITE HOURGLASS;Sm;0;ON;;;;;N;;;;; -29D7;BLACK HOURGLASS;Sm;0;ON;;;;;N;;;;; -29D8;LEFT WIGGLY FENCE;Ps;0;ON;;;;;Y;;;;; -29D9;RIGHT WIGGLY FENCE;Pe;0;ON;;;;;Y;;;;; -29DA;LEFT DOUBLE WIGGLY FENCE;Ps;0;ON;;;;;Y;;;;; -29DB;RIGHT DOUBLE WIGGLY FENCE;Pe;0;ON;;;;;Y;;;;; -29DC;INCOMPLETE INFINITY;Sm;0;ON;;;;;Y;;;;; -29DD;TIE OVER INFINITY;Sm;0;ON;;;;;N;;;;; -29DE;INFINITY NEGATED WITH VERTICAL BAR;Sm;0;ON;;;;;N;;;;; -29DF;DOUBLE-ENDED MULTIMAP;Sm;0;ON;;;;;N;;;;; -29E0;SQUARE WITH CONTOURED OUTLINE;Sm;0;ON;;;;;N;;;;; -29E1;INCREASES AS;Sm;0;ON;;;;;Y;;;;; -29E2;SHUFFLE PRODUCT;Sm;0;ON;;;;;N;;;;; -29E3;EQUALS SIGN AND SLANTED PARALLEL;Sm;0;ON;;;;;Y;;;;; -29E4;EQUALS SIGN AND SLANTED PARALLEL WITH TILDE ABOVE;Sm;0;ON;;;;;Y;;;;; -29E5;IDENTICAL TO AND SLANTED PARALLEL;Sm;0;ON;;;;;Y;;;;; -29E6;GLEICH STARK;Sm;0;ON;;;;;N;;;;; -29E7;THERMODYNAMIC;Sm;0;ON;;;;;N;;;;; -29E8;DOWN-POINTING TRIANGLE WITH LEFT HALF BLACK;Sm;0;ON;;;;;Y;;;;; -29E9;DOWN-POINTING TRIANGLE WITH RIGHT HALF BLACK;Sm;0;ON;;;;;Y;;;;; -29EA;BLACK DIAMOND WITH DOWN ARROW;Sm;0;ON;;;;;N;;;;; -29EB;BLACK LOZENGE;Sm;0;ON;;;;;N;;;;; -29EC;WHITE CIRCLE WITH DOWN ARROW;Sm;0;ON;;;;;N;;;;; -29ED;BLACK CIRCLE WITH DOWN ARROW;Sm;0;ON;;;;;N;;;;; -29EE;ERROR-BARRED WHITE SQUARE;Sm;0;ON;;;;;N;;;;; -29EF;ERROR-BARRED BLACK SQUARE;Sm;0;ON;;;;;N;;;;; -29F0;ERROR-BARRED WHITE DIAMOND;Sm;0;ON;;;;;N;;;;; -29F1;ERROR-BARRED BLACK DIAMOND;Sm;0;ON;;;;;N;;;;; -29F2;ERROR-BARRED WHITE CIRCLE;Sm;0;ON;;;;;N;;;;; -29F3;ERROR-BARRED BLACK CIRCLE;Sm;0;ON;;;;;N;;;;; -29F4;RULE-DELAYED;Sm;0;ON;;;;;Y;;;;; -29F5;REVERSE SOLIDUS OPERATOR;Sm;0;ON;;;;;Y;;;;; -29F6;SOLIDUS WITH OVERBAR;Sm;0;ON;;;;;Y;;;;; -29F7;REVERSE SOLIDUS WITH HORIZONTAL STROKE;Sm;0;ON;;;;;Y;;;;; -29F8;BIG SOLIDUS;Sm;0;ON;;;;;Y;;;;; -29F9;BIG REVERSE SOLIDUS;Sm;0;ON;;;;;Y;;;;; -29FA;DOUBLE PLUS;Sm;0;ON;;;;;N;;;;; -29FB;TRIPLE PLUS;Sm;0;ON;;;;;N;;;;; -29FC;LEFT-POINTING CURVED ANGLE BRACKET;Ps;0;ON;;;;;Y;;;;; -29FD;RIGHT-POINTING CURVED ANGLE BRACKET;Pe;0;ON;;;;;Y;;;;; -29FE;TINY;Sm;0;ON;;;;;N;;;;; -29FF;MINY;Sm;0;ON;;;;;N;;;;; -2A00;N-ARY CIRCLED DOT OPERATOR;Sm;0;ON;;;;;N;;;;; -2A01;N-ARY CIRCLED PLUS OPERATOR;Sm;0;ON;;;;;N;;;;; -2A02;N-ARY CIRCLED TIMES OPERATOR;Sm;0;ON;;;;;N;;;;; -2A03;N-ARY UNION OPERATOR WITH DOT;Sm;0;ON;;;;;N;;;;; -2A04;N-ARY UNION OPERATOR WITH PLUS;Sm;0;ON;;;;;N;;;;; -2A05;N-ARY SQUARE INTERSECTION OPERATOR;Sm;0;ON;;;;;N;;;;; -2A06;N-ARY SQUARE UNION OPERATOR;Sm;0;ON;;;;;N;;;;; -2A07;TWO LOGICAL AND OPERATOR;Sm;0;ON;;;;;N;;;;; -2A08;TWO LOGICAL OR OPERATOR;Sm;0;ON;;;;;N;;;;; -2A09;N-ARY TIMES OPERATOR;Sm;0;ON;;;;;N;;;;; -2A0A;MODULO TWO SUM;Sm;0;ON;;;;;Y;;;;; -2A0B;SUMMATION WITH INTEGRAL;Sm;0;ON;;;;;Y;;;;; -2A0C;QUADRUPLE INTEGRAL OPERATOR;Sm;0;ON; 222B 222B 222B 222B;;;;Y;;;;; -2A0D;FINITE PART INTEGRAL;Sm;0;ON;;;;;Y;;;;; -2A0E;INTEGRAL WITH DOUBLE STROKE;Sm;0;ON;;;;;Y;;;;; -2A0F;INTEGRAL AVERAGE WITH SLASH;Sm;0;ON;;;;;Y;;;;; -2A10;CIRCULATION FUNCTION;Sm;0;ON;;;;;Y;;;;; -2A11;ANTICLOCKWISE INTEGRATION;Sm;0;ON;;;;;Y;;;;; -2A12;LINE INTEGRATION WITH RECTANGULAR PATH AROUND POLE;Sm;0;ON;;;;;Y;;;;; -2A13;LINE INTEGRATION WITH SEMICIRCULAR PATH AROUND POLE;Sm;0;ON;;;;;Y;;;;; -2A14;LINE INTEGRATION NOT INCLUDING THE POLE;Sm;0;ON;;;;;Y;;;;; -2A15;INTEGRAL AROUND A POINT OPERATOR;Sm;0;ON;;;;;Y;;;;; -2A16;QUATERNION INTEGRAL OPERATOR;Sm;0;ON;;;;;Y;;;;; -2A17;INTEGRAL WITH LEFTWARDS ARROW WITH HOOK;Sm;0;ON;;;;;Y;;;;; -2A18;INTEGRAL WITH TIMES SIGN;Sm;0;ON;;;;;Y;;;;; -2A19;INTEGRAL WITH INTERSECTION;Sm;0;ON;;;;;Y;;;;; -2A1A;INTEGRAL WITH UNION;Sm;0;ON;;;;;Y;;;;; -2A1B;INTEGRAL WITH OVERBAR;Sm;0;ON;;;;;Y;;;;; -2A1C;INTEGRAL WITH UNDERBAR;Sm;0;ON;;;;;Y;;;;; -2A1D;JOIN;Sm;0;ON;;;;;N;;;;; -2A1E;LARGE LEFT TRIANGLE OPERATOR;Sm;0;ON;;;;;Y;;;;; -2A1F;Z NOTATION SCHEMA COMPOSITION;Sm;0;ON;;;;;Y;;;;; -2A20;Z NOTATION SCHEMA PIPING;Sm;0;ON;;;;;Y;;;;; -2A21;Z NOTATION SCHEMA PROJECTION;Sm;0;ON;;;;;Y;;;;; -2A22;PLUS SIGN WITH SMALL CIRCLE ABOVE;Sm;0;ON;;;;;N;;;;; -2A23;PLUS SIGN WITH CIRCUMFLEX ACCENT ABOVE;Sm;0;ON;;;;;N;;;;; -2A24;PLUS SIGN WITH TILDE ABOVE;Sm;0;ON;;;;;Y;;;;; -2A25;PLUS SIGN WITH DOT BELOW;Sm;0;ON;;;;;N;;;;; -2A26;PLUS SIGN WITH TILDE BELOW;Sm;0;ON;;;;;Y;;;;; -2A27;PLUS SIGN WITH SUBSCRIPT TWO;Sm;0;ON;;;;;N;;;;; -2A28;PLUS SIGN WITH BLACK TRIANGLE;Sm;0;ON;;;;;N;;;;; -2A29;MINUS SIGN WITH COMMA ABOVE;Sm;0;ON;;;;;Y;;;;; -2A2A;MINUS SIGN WITH DOT BELOW;Sm;0;ON;;;;;N;;;;; -2A2B;MINUS SIGN WITH FALLING DOTS;Sm;0;ON;;;;;Y;;;;; -2A2C;MINUS SIGN WITH RISING DOTS;Sm;0;ON;;;;;Y;;;;; -2A2D;PLUS SIGN IN LEFT HALF CIRCLE;Sm;0;ON;;;;;Y;;;;; -2A2E;PLUS SIGN IN RIGHT HALF CIRCLE;Sm;0;ON;;;;;Y;;;;; -2A2F;VECTOR OR CROSS PRODUCT;Sm;0;ON;;;;;N;;;;; -2A30;MULTIPLICATION SIGN WITH DOT ABOVE;Sm;0;ON;;;;;N;;;;; -2A31;MULTIPLICATION SIGN WITH UNDERBAR;Sm;0;ON;;;;;N;;;;; -2A32;SEMIDIRECT PRODUCT WITH BOTTOM CLOSED;Sm;0;ON;;;;;N;;;;; -2A33;SMASH PRODUCT;Sm;0;ON;;;;;N;;;;; -2A34;MULTIPLICATION SIGN IN LEFT HALF CIRCLE;Sm;0;ON;;;;;Y;;;;; -2A35;MULTIPLICATION SIGN IN RIGHT HALF CIRCLE;Sm;0;ON;;;;;Y;;;;; -2A36;CIRCLED MULTIPLICATION SIGN WITH CIRCUMFLEX ACCENT;Sm;0;ON;;;;;N;;;;; -2A37;MULTIPLICATION SIGN IN DOUBLE CIRCLE;Sm;0;ON;;;;;N;;;;; -2A38;CIRCLED DIVISION SIGN;Sm;0;ON;;;;;N;;;;; -2A39;PLUS SIGN IN TRIANGLE;Sm;0;ON;;;;;N;;;;; -2A3A;MINUS SIGN IN TRIANGLE;Sm;0;ON;;;;;N;;;;; -2A3B;MULTIPLICATION SIGN IN TRIANGLE;Sm;0;ON;;;;;N;;;;; -2A3C;INTERIOR PRODUCT;Sm;0;ON;;;;;Y;;;;; -2A3D;RIGHTHAND INTERIOR PRODUCT;Sm;0;ON;;;;;Y;;;;; -2A3E;Z NOTATION RELATIONAL COMPOSITION;Sm;0;ON;;;;;Y;;;;; -2A3F;AMALGAMATION OR COPRODUCT;Sm;0;ON;;;;;N;;;;; -2A40;INTERSECTION WITH DOT;Sm;0;ON;;;;;N;;;;; -2A41;UNION WITH MINUS SIGN;Sm;0;ON;;;;;N;;;;; -2A42;UNION WITH OVERBAR;Sm;0;ON;;;;;N;;;;; -2A43;INTERSECTION WITH OVERBAR;Sm;0;ON;;;;;N;;;;; -2A44;INTERSECTION WITH LOGICAL AND;Sm;0;ON;;;;;N;;;;; -2A45;UNION WITH LOGICAL OR;Sm;0;ON;;;;;N;;;;; -2A46;UNION ABOVE INTERSECTION;Sm;0;ON;;;;;N;;;;; -2A47;INTERSECTION ABOVE UNION;Sm;0;ON;;;;;N;;;;; -2A48;UNION ABOVE BAR ABOVE INTERSECTION;Sm;0;ON;;;;;N;;;;; -2A49;INTERSECTION ABOVE BAR ABOVE UNION;Sm;0;ON;;;;;N;;;;; -2A4A;UNION BESIDE AND JOINED WITH UNION;Sm;0;ON;;;;;N;;;;; -2A4B;INTERSECTION BESIDE AND JOINED WITH INTERSECTION;Sm;0;ON;;;;;N;;;;; -2A4C;CLOSED UNION WITH SERIFS;Sm;0;ON;;;;;N;;;;; -2A4D;CLOSED INTERSECTION WITH SERIFS;Sm;0;ON;;;;;N;;;;; -2A4E;DOUBLE SQUARE INTERSECTION;Sm;0;ON;;;;;N;;;;; -2A4F;DOUBLE SQUARE UNION;Sm;0;ON;;;;;N;;;;; -2A50;CLOSED UNION WITH SERIFS AND SMASH PRODUCT;Sm;0;ON;;;;;N;;;;; -2A51;LOGICAL AND WITH DOT ABOVE;Sm;0;ON;;;;;N;;;;; -2A52;LOGICAL OR WITH DOT ABOVE;Sm;0;ON;;;;;N;;;;; -2A53;DOUBLE LOGICAL AND;Sm;0;ON;;;;;N;;;;; -2A54;DOUBLE LOGICAL OR;Sm;0;ON;;;;;N;;;;; -2A55;TWO INTERSECTING LOGICAL AND;Sm;0;ON;;;;;N;;;;; -2A56;TWO INTERSECTING LOGICAL OR;Sm;0;ON;;;;;N;;;;; -2A57;SLOPING LARGE OR;Sm;0;ON;;;;;Y;;;;; -2A58;SLOPING LARGE AND;Sm;0;ON;;;;;Y;;;;; -2A59;LOGICAL OR OVERLAPPING LOGICAL AND;Sm;0;ON;;;;;N;;;;; -2A5A;LOGICAL AND WITH MIDDLE STEM;Sm;0;ON;;;;;N;;;;; -2A5B;LOGICAL OR WITH MIDDLE STEM;Sm;0;ON;;;;;N;;;;; -2A5C;LOGICAL AND WITH HORIZONTAL DASH;Sm;0;ON;;;;;N;;;;; -2A5D;LOGICAL OR WITH HORIZONTAL DASH;Sm;0;ON;;;;;N;;;;; -2A5E;LOGICAL AND WITH DOUBLE OVERBAR;Sm;0;ON;;;;;N;;;;; -2A5F;LOGICAL AND WITH UNDERBAR;Sm;0;ON;;;;;N;;;;; -2A60;LOGICAL AND WITH DOUBLE UNDERBAR;Sm;0;ON;;;;;N;;;;; -2A61;SMALL VEE WITH UNDERBAR;Sm;0;ON;;;;;N;;;;; -2A62;LOGICAL OR WITH DOUBLE OVERBAR;Sm;0;ON;;;;;N;;;;; -2A63;LOGICAL OR WITH DOUBLE UNDERBAR;Sm;0;ON;;;;;N;;;;; -2A64;Z NOTATION DOMAIN ANTIRESTRICTION;Sm;0;ON;;;;;Y;;;;; -2A65;Z NOTATION RANGE ANTIRESTRICTION;Sm;0;ON;;;;;Y;;;;; -2A66;EQUALS SIGN WITH DOT BELOW;Sm;0;ON;;;;;N;;;;; -2A67;IDENTICAL WITH DOT ABOVE;Sm;0;ON;;;;;N;;;;; -2A68;TRIPLE HORIZONTAL BAR WITH DOUBLE VERTICAL STROKE;Sm;0;ON;;;;;N;;;;; -2A69;TRIPLE HORIZONTAL BAR WITH TRIPLE VERTICAL STROKE;Sm;0;ON;;;;;N;;;;; -2A6A;TILDE OPERATOR WITH DOT ABOVE;Sm;0;ON;;;;;Y;;;;; -2A6B;TILDE OPERATOR WITH RISING DOTS;Sm;0;ON;;;;;Y;;;;; -2A6C;SIMILAR MINUS SIMILAR;Sm;0;ON;;;;;Y;;;;; -2A6D;CONGRUENT WITH DOT ABOVE;Sm;0;ON;;;;;Y;;;;; -2A6E;EQUALS WITH ASTERISK;Sm;0;ON;;;;;N;;;;; -2A6F;ALMOST EQUAL TO WITH CIRCUMFLEX ACCENT;Sm;0;ON;;;;;Y;;;;; -2A70;APPROXIMATELY EQUAL OR EQUAL TO;Sm;0;ON;;;;;Y;;;;; -2A71;EQUALS SIGN ABOVE PLUS SIGN;Sm;0;ON;;;;;N;;;;; -2A72;PLUS SIGN ABOVE EQUALS SIGN;Sm;0;ON;;;;;N;;;;; -2A73;EQUALS SIGN ABOVE TILDE OPERATOR;Sm;0;ON;;;;;Y;;;;; -2A74;DOUBLE COLON EQUAL;Sm;0;ON; 003A 003A 003D;;;;Y;;;;; -2A75;TWO CONSECUTIVE EQUALS SIGNS;Sm;0;ON; 003D 003D;;;;N;;;;; -2A76;THREE CONSECUTIVE EQUALS SIGNS;Sm;0;ON; 003D 003D 003D;;;;N;;;;; -2A77;EQUALS SIGN WITH TWO DOTS ABOVE AND TWO DOTS BELOW;Sm;0;ON;;;;;N;;;;; -2A78;EQUIVALENT WITH FOUR DOTS ABOVE;Sm;0;ON;;;;;N;;;;; -2A79;LESS-THAN WITH CIRCLE INSIDE;Sm;0;ON;;;;;Y;;;;; -2A7A;GREATER-THAN WITH CIRCLE INSIDE;Sm;0;ON;;;;;Y;;;;; -2A7B;LESS-THAN WITH QUESTION MARK ABOVE;Sm;0;ON;;;;;Y;;;;; -2A7C;GREATER-THAN WITH QUESTION MARK ABOVE;Sm;0;ON;;;;;Y;;;;; -2A7D;LESS-THAN OR SLANTED EQUAL TO;Sm;0;ON;;;;;Y;;;;; -2A7E;GREATER-THAN OR SLANTED EQUAL TO;Sm;0;ON;;;;;Y;;;;; -2A7F;LESS-THAN OR SLANTED EQUAL TO WITH DOT INSIDE;Sm;0;ON;;;;;Y;;;;; -2A80;GREATER-THAN OR SLANTED EQUAL TO WITH DOT INSIDE;Sm;0;ON;;;;;Y;;;;; -2A81;LESS-THAN OR SLANTED EQUAL TO WITH DOT ABOVE;Sm;0;ON;;;;;Y;;;;; -2A82;GREATER-THAN OR SLANTED EQUAL TO WITH DOT ABOVE;Sm;0;ON;;;;;Y;;;;; -2A83;LESS-THAN OR SLANTED EQUAL TO WITH DOT ABOVE RIGHT;Sm;0;ON;;;;;Y;;;;; -2A84;GREATER-THAN OR SLANTED EQUAL TO WITH DOT ABOVE LEFT;Sm;0;ON;;;;;Y;;;;; -2A85;LESS-THAN OR APPROXIMATE;Sm;0;ON;;;;;Y;;;;; -2A86;GREATER-THAN OR APPROXIMATE;Sm;0;ON;;;;;Y;;;;; -2A87;LESS-THAN AND SINGLE-LINE NOT EQUAL TO;Sm;0;ON;;;;;Y;;;;; -2A88;GREATER-THAN AND SINGLE-LINE NOT EQUAL TO;Sm;0;ON;;;;;Y;;;;; -2A89;LESS-THAN AND NOT APPROXIMATE;Sm;0;ON;;;;;Y;;;;; -2A8A;GREATER-THAN AND NOT APPROXIMATE;Sm;0;ON;;;;;Y;;;;; -2A8B;LESS-THAN ABOVE DOUBLE-LINE EQUAL ABOVE GREATER-THAN;Sm;0;ON;;;;;Y;;;;; -2A8C;GREATER-THAN ABOVE DOUBLE-LINE EQUAL ABOVE LESS-THAN;Sm;0;ON;;;;;Y;;;;; -2A8D;LESS-THAN ABOVE SIMILAR OR EQUAL;Sm;0;ON;;;;;Y;;;;; -2A8E;GREATER-THAN ABOVE SIMILAR OR EQUAL;Sm;0;ON;;;;;Y;;;;; -2A8F;LESS-THAN ABOVE SIMILAR ABOVE GREATER-THAN;Sm;0;ON;;;;;Y;;;;; -2A90;GREATER-THAN ABOVE SIMILAR ABOVE LESS-THAN;Sm;0;ON;;;;;Y;;;;; -2A91;LESS-THAN ABOVE GREATER-THAN ABOVE DOUBLE-LINE EQUAL;Sm;0;ON;;;;;Y;;;;; -2A92;GREATER-THAN ABOVE LESS-THAN ABOVE DOUBLE-LINE EQUAL;Sm;0;ON;;;;;Y;;;;; -2A93;LESS-THAN ABOVE SLANTED EQUAL ABOVE GREATER-THAN ABOVE SLANTED EQUAL;Sm;0;ON;;;;;Y;;;;; -2A94;GREATER-THAN ABOVE SLANTED EQUAL ABOVE LESS-THAN ABOVE SLANTED EQUAL;Sm;0;ON;;;;;Y;;;;; -2A95;SLANTED EQUAL TO OR LESS-THAN;Sm;0;ON;;;;;Y;;;;; -2A96;SLANTED EQUAL TO OR GREATER-THAN;Sm;0;ON;;;;;Y;;;;; -2A97;SLANTED EQUAL TO OR LESS-THAN WITH DOT INSIDE;Sm;0;ON;;;;;Y;;;;; -2A98;SLANTED EQUAL TO OR GREATER-THAN WITH DOT INSIDE;Sm;0;ON;;;;;Y;;;;; -2A99;DOUBLE-LINE EQUAL TO OR LESS-THAN;Sm;0;ON;;;;;Y;;;;; -2A9A;DOUBLE-LINE EQUAL TO OR GREATER-THAN;Sm;0;ON;;;;;Y;;;;; -2A9B;DOUBLE-LINE SLANTED EQUAL TO OR LESS-THAN;Sm;0;ON;;;;;Y;;;;; -2A9C;DOUBLE-LINE SLANTED EQUAL TO OR GREATER-THAN;Sm;0;ON;;;;;Y;;;;; -2A9D;SIMILAR OR LESS-THAN;Sm;0;ON;;;;;Y;;;;; -2A9E;SIMILAR OR GREATER-THAN;Sm;0;ON;;;;;Y;;;;; -2A9F;SIMILAR ABOVE LESS-THAN ABOVE EQUALS SIGN;Sm;0;ON;;;;;Y;;;;; -2AA0;SIMILAR ABOVE GREATER-THAN ABOVE EQUALS SIGN;Sm;0;ON;;;;;Y;;;;; -2AA1;DOUBLE NESTED LESS-THAN;Sm;0;ON;;;;;Y;;;;; -2AA2;DOUBLE NESTED GREATER-THAN;Sm;0;ON;;;;;Y;;;;; -2AA3;DOUBLE NESTED LESS-THAN WITH UNDERBAR;Sm;0;ON;;;;;Y;;;;; -2AA4;GREATER-THAN OVERLAPPING LESS-THAN;Sm;0;ON;;;;;N;;;;; -2AA5;GREATER-THAN BESIDE LESS-THAN;Sm;0;ON;;;;;N;;;;; -2AA6;LESS-THAN CLOSED BY CURVE;Sm;0;ON;;;;;Y;;;;; -2AA7;GREATER-THAN CLOSED BY CURVE;Sm;0;ON;;;;;Y;;;;; -2AA8;LESS-THAN CLOSED BY CURVE ABOVE SLANTED EQUAL;Sm;0;ON;;;;;Y;;;;; -2AA9;GREATER-THAN CLOSED BY CURVE ABOVE SLANTED EQUAL;Sm;0;ON;;;;;Y;;;;; -2AAA;SMALLER THAN;Sm;0;ON;;;;;Y;;;;; -2AAB;LARGER THAN;Sm;0;ON;;;;;Y;;;;; -2AAC;SMALLER THAN OR EQUAL TO;Sm;0;ON;;;;;Y;;;;; -2AAD;LARGER THAN OR EQUAL TO;Sm;0;ON;;;;;Y;;;;; -2AAE;EQUALS SIGN WITH BUMPY ABOVE;Sm;0;ON;;;;;N;;;;; -2AAF;PRECEDES ABOVE SINGLE-LINE EQUALS SIGN;Sm;0;ON;;;;;Y;;;;; -2AB0;SUCCEEDS ABOVE SINGLE-LINE EQUALS SIGN;Sm;0;ON;;;;;Y;;;;; -2AB1;PRECEDES ABOVE SINGLE-LINE NOT EQUAL TO;Sm;0;ON;;;;;Y;;;;; -2AB2;SUCCEEDS ABOVE SINGLE-LINE NOT EQUAL TO;Sm;0;ON;;;;;Y;;;;; -2AB3;PRECEDES ABOVE EQUALS SIGN;Sm;0;ON;;;;;Y;;;;; -2AB4;SUCCEEDS ABOVE EQUALS SIGN;Sm;0;ON;;;;;Y;;;;; -2AB5;PRECEDES ABOVE NOT EQUAL TO;Sm;0;ON;;;;;Y;;;;; -2AB6;SUCCEEDS ABOVE NOT EQUAL TO;Sm;0;ON;;;;;Y;;;;; -2AB7;PRECEDES ABOVE ALMOST EQUAL TO;Sm;0;ON;;;;;Y;;;;; -2AB8;SUCCEEDS ABOVE ALMOST EQUAL TO;Sm;0;ON;;;;;Y;;;;; -2AB9;PRECEDES ABOVE NOT ALMOST EQUAL TO;Sm;0;ON;;;;;Y;;;;; -2ABA;SUCCEEDS ABOVE NOT ALMOST EQUAL TO;Sm;0;ON;;;;;Y;;;;; -2ABB;DOUBLE PRECEDES;Sm;0;ON;;;;;Y;;;;; -2ABC;DOUBLE SUCCEEDS;Sm;0;ON;;;;;Y;;;;; -2ABD;SUBSET WITH DOT;Sm;0;ON;;;;;Y;;;;; -2ABE;SUPERSET WITH DOT;Sm;0;ON;;;;;Y;;;;; -2ABF;SUBSET WITH PLUS SIGN BELOW;Sm;0;ON;;;;;Y;;;;; -2AC0;SUPERSET WITH PLUS SIGN BELOW;Sm;0;ON;;;;;Y;;;;; -2AC1;SUBSET WITH MULTIPLICATION SIGN BELOW;Sm;0;ON;;;;;Y;;;;; -2AC2;SUPERSET WITH MULTIPLICATION SIGN BELOW;Sm;0;ON;;;;;Y;;;;; -2AC3;SUBSET OF OR EQUAL TO WITH DOT ABOVE;Sm;0;ON;;;;;Y;;;;; -2AC4;SUPERSET OF OR EQUAL TO WITH DOT ABOVE;Sm;0;ON;;;;;Y;;;;; -2AC5;SUBSET OF ABOVE EQUALS SIGN;Sm;0;ON;;;;;Y;;;;; -2AC6;SUPERSET OF ABOVE EQUALS SIGN;Sm;0;ON;;;;;Y;;;;; -2AC7;SUBSET OF ABOVE TILDE OPERATOR;Sm;0;ON;;;;;Y;;;;; -2AC8;SUPERSET OF ABOVE TILDE OPERATOR;Sm;0;ON;;;;;Y;;;;; -2AC9;SUBSET OF ABOVE ALMOST EQUAL TO;Sm;0;ON;;;;;Y;;;;; -2ACA;SUPERSET OF ABOVE ALMOST EQUAL TO;Sm;0;ON;;;;;Y;;;;; -2ACB;SUBSET OF ABOVE NOT EQUAL TO;Sm;0;ON;;;;;Y;;;;; -2ACC;SUPERSET OF ABOVE NOT EQUAL TO;Sm;0;ON;;;;;Y;;;;; -2ACD;SQUARE LEFT OPEN BOX OPERATOR;Sm;0;ON;;;;;Y;;;;; -2ACE;SQUARE RIGHT OPEN BOX OPERATOR;Sm;0;ON;;;;;Y;;;;; -2ACF;CLOSED SUBSET;Sm;0;ON;;;;;Y;;;;; -2AD0;CLOSED SUPERSET;Sm;0;ON;;;;;Y;;;;; -2AD1;CLOSED SUBSET OR EQUAL TO;Sm;0;ON;;;;;Y;;;;; -2AD2;CLOSED SUPERSET OR EQUAL TO;Sm;0;ON;;;;;Y;;;;; -2AD3;SUBSET ABOVE SUPERSET;Sm;0;ON;;;;;Y;;;;; -2AD4;SUPERSET ABOVE SUBSET;Sm;0;ON;;;;;Y;;;;; -2AD5;SUBSET ABOVE SUBSET;Sm;0;ON;;;;;Y;;;;; -2AD6;SUPERSET ABOVE SUPERSET;Sm;0;ON;;;;;Y;;;;; -2AD7;SUPERSET BESIDE SUBSET;Sm;0;ON;;;;;N;;;;; -2AD8;SUPERSET BESIDE AND JOINED BY DASH WITH SUBSET;Sm;0;ON;;;;;N;;;;; -2AD9;ELEMENT OF OPENING DOWNWARDS;Sm;0;ON;;;;;N;;;;; -2ADA;PITCHFORK WITH TEE TOP;Sm;0;ON;;;;;N;;;;; -2ADB;TRANSVERSAL INTERSECTION;Sm;0;ON;;;;;N;;;;; -2ADC;FORKING;Sm;0;ON;2ADD 0338;;;;Y;;;;; -2ADD;NONFORKING;Sm;0;ON;;;;;N;;;;; -2ADE;SHORT LEFT TACK;Sm;0;ON;;;;;Y;;;;; -2ADF;SHORT DOWN TACK;Sm;0;ON;;;;;N;;;;; -2AE0;SHORT UP TACK;Sm;0;ON;;;;;N;;;;; -2AE1;PERPENDICULAR WITH S;Sm;0;ON;;;;;N;;;;; -2AE2;VERTICAL BAR TRIPLE RIGHT TURNSTILE;Sm;0;ON;;;;;Y;;;;; -2AE3;DOUBLE VERTICAL BAR LEFT TURNSTILE;Sm;0;ON;;;;;Y;;;;; -2AE4;VERTICAL BAR DOUBLE LEFT TURNSTILE;Sm;0;ON;;;;;Y;;;;; -2AE5;DOUBLE VERTICAL BAR DOUBLE LEFT TURNSTILE;Sm;0;ON;;;;;Y;;;;; -2AE6;LONG DASH FROM LEFT MEMBER OF DOUBLE VERTICAL;Sm;0;ON;;;;;Y;;;;; -2AE7;SHORT DOWN TACK WITH OVERBAR;Sm;0;ON;;;;;N;;;;; -2AE8;SHORT UP TACK WITH UNDERBAR;Sm;0;ON;;;;;N;;;;; -2AE9;SHORT UP TACK ABOVE SHORT DOWN TACK;Sm;0;ON;;;;;N;;;;; -2AEA;DOUBLE DOWN TACK;Sm;0;ON;;;;;N;;;;; -2AEB;DOUBLE UP TACK;Sm;0;ON;;;;;N;;;;; -2AEC;DOUBLE STROKE NOT SIGN;Sm;0;ON;;;;;Y;;;;; -2AED;REVERSED DOUBLE STROKE NOT SIGN;Sm;0;ON;;;;;Y;;;;; -2AEE;DOES NOT DIVIDE WITH REVERSED NEGATION SLASH;Sm;0;ON;;;;;Y;;;;; -2AEF;VERTICAL LINE WITH CIRCLE ABOVE;Sm;0;ON;;;;;N;;;;; -2AF0;VERTICAL LINE WITH CIRCLE BELOW;Sm;0;ON;;;;;N;;;;; -2AF1;DOWN TACK WITH CIRCLE BELOW;Sm;0;ON;;;;;N;;;;; -2AF2;PARALLEL WITH HORIZONTAL STROKE;Sm;0;ON;;;;;N;;;;; -2AF3;PARALLEL WITH TILDE OPERATOR;Sm;0;ON;;;;;Y;;;;; -2AF4;TRIPLE VERTICAL BAR BINARY RELATION;Sm;0;ON;;;;;N;;;;; -2AF5;TRIPLE VERTICAL BAR WITH HORIZONTAL STROKE;Sm;0;ON;;;;;N;;;;; -2AF6;TRIPLE COLON OPERATOR;Sm;0;ON;;;;;N;;;;; -2AF7;TRIPLE NESTED LESS-THAN;Sm;0;ON;;;;;Y;;;;; -2AF8;TRIPLE NESTED GREATER-THAN;Sm;0;ON;;;;;Y;;;;; -2AF9;DOUBLE-LINE SLANTED LESS-THAN OR EQUAL TO;Sm;0;ON;;;;;Y;;;;; -2AFA;DOUBLE-LINE SLANTED GREATER-THAN OR EQUAL TO;Sm;0;ON;;;;;Y;;;;; -2AFB;TRIPLE SOLIDUS BINARY RELATION;Sm;0;ON;;;;;Y;;;;; -2AFC;LARGE TRIPLE VERTICAL BAR OPERATOR;Sm;0;ON;;;;;N;;;;; -2AFD;DOUBLE SOLIDUS OPERATOR;Sm;0;ON;;;;;Y;;;;; -2AFE;WHITE VERTICAL BAR;Sm;0;ON;;;;;N;;;;; -2AFF;N-ARY WHITE VERTICAL BAR;Sm;0;ON;;;;;N;;;;; -2B00;NORTH EAST WHITE ARROW;So;0;ON;;;;;N;;;;; -2B01;NORTH WEST WHITE ARROW;So;0;ON;;;;;N;;;;; -2B02;SOUTH EAST WHITE ARROW;So;0;ON;;;;;N;;;;; -2B03;SOUTH WEST WHITE ARROW;So;0;ON;;;;;N;;;;; -2B04;LEFT RIGHT WHITE ARROW;So;0;ON;;;;;N;;;;; -2B05;LEFTWARDS BLACK ARROW;So;0;ON;;;;;N;;;;; -2B06;UPWARDS BLACK ARROW;So;0;ON;;;;;N;;;;; -2B07;DOWNWARDS BLACK ARROW;So;0;ON;;;;;N;;;;; -2B08;NORTH EAST BLACK ARROW;So;0;ON;;;;;N;;;;; -2B09;NORTH WEST BLACK ARROW;So;0;ON;;;;;N;;;;; -2B0A;SOUTH EAST BLACK ARROW;So;0;ON;;;;;N;;;;; -2B0B;SOUTH WEST BLACK ARROW;So;0;ON;;;;;N;;;;; -2B0C;LEFT RIGHT BLACK ARROW;So;0;ON;;;;;N;;;;; -2B0D;UP DOWN BLACK ARROW;So;0;ON;;;;;N;;;;; -2B0E;RIGHTWARDS ARROW WITH TIP DOWNWARDS;So;0;ON;;;;;N;;;;; -2B0F;RIGHTWARDS ARROW WITH TIP UPWARDS;So;0;ON;;;;;N;;;;; -2B10;LEFTWARDS ARROW WITH TIP DOWNWARDS;So;0;ON;;;;;N;;;;; -2B11;LEFTWARDS ARROW WITH TIP UPWARDS;So;0;ON;;;;;N;;;;; -2B12;SQUARE WITH TOP HALF BLACK;So;0;ON;;;;;N;;;;; -2B13;SQUARE WITH BOTTOM HALF BLACK;So;0;ON;;;;;N;;;;; -2B14;SQUARE WITH UPPER RIGHT DIAGONAL HALF BLACK;So;0;ON;;;;;N;;;;; -2B15;SQUARE WITH LOWER LEFT DIAGONAL HALF BLACK;So;0;ON;;;;;N;;;;; -2B16;DIAMOND WITH LEFT HALF BLACK;So;0;ON;;;;;N;;;;; -2B17;DIAMOND WITH RIGHT HALF BLACK;So;0;ON;;;;;N;;;;; -2B18;DIAMOND WITH TOP HALF BLACK;So;0;ON;;;;;N;;;;; -2B19;DIAMOND WITH BOTTOM HALF BLACK;So;0;ON;;;;;N;;;;; -2B1A;DOTTED SQUARE;So;0;ON;;;;;N;;;;; -2B1B;BLACK LARGE SQUARE;So;0;ON;;;;;N;;;;; -2B1C;WHITE LARGE SQUARE;So;0;ON;;;;;N;;;;; -2B1D;BLACK VERY SMALL SQUARE;So;0;ON;;;;;N;;;;; -2B1E;WHITE VERY SMALL SQUARE;So;0;ON;;;;;N;;;;; -2B1F;BLACK PENTAGON;So;0;ON;;;;;N;;;;; -2B20;WHITE PENTAGON;So;0;ON;;;;;N;;;;; -2B21;WHITE HEXAGON;So;0;ON;;;;;N;;;;; -2B22;BLACK HEXAGON;So;0;ON;;;;;N;;;;; -2B23;HORIZONTAL BLACK HEXAGON;So;0;ON;;;;;N;;;;; -2B24;BLACK LARGE CIRCLE;So;0;ON;;;;;N;;;;; -2B25;BLACK MEDIUM DIAMOND;So;0;ON;;;;;N;;;;; -2B26;WHITE MEDIUM DIAMOND;So;0;ON;;;;;N;;;;; -2B27;BLACK MEDIUM LOZENGE;So;0;ON;;;;;N;;;;; -2B28;WHITE MEDIUM LOZENGE;So;0;ON;;;;;N;;;;; -2B29;BLACK SMALL DIAMOND;So;0;ON;;;;;N;;;;; -2B2A;BLACK SMALL LOZENGE;So;0;ON;;;;;N;;;;; -2B2B;WHITE SMALL LOZENGE;So;0;ON;;;;;N;;;;; -2B2C;BLACK HORIZONTAL ELLIPSE;So;0;ON;;;;;N;;;;; -2B2D;WHITE HORIZONTAL ELLIPSE;So;0;ON;;;;;N;;;;; -2B2E;BLACK VERTICAL ELLIPSE;So;0;ON;;;;;N;;;;; -2B2F;WHITE VERTICAL ELLIPSE;So;0;ON;;;;;N;;;;; -2B30;LEFT ARROW WITH SMALL CIRCLE;Sm;0;ON;;;;;N;;;;; -2B31;THREE LEFTWARDS ARROWS;Sm;0;ON;;;;;N;;;;; -2B32;LEFT ARROW WITH CIRCLED PLUS;Sm;0;ON;;;;;N;;;;; -2B33;LONG LEFTWARDS SQUIGGLE ARROW;Sm;0;ON;;;;;N;;;;; -2B34;LEFTWARDS TWO-HEADED ARROW WITH VERTICAL STROKE;Sm;0;ON;;;;;N;;;;; -2B35;LEFTWARDS TWO-HEADED ARROW WITH DOUBLE VERTICAL STROKE;Sm;0;ON;;;;;N;;;;; -2B36;LEFTWARDS TWO-HEADED ARROW FROM BAR;Sm;0;ON;;;;;N;;;;; -2B37;LEFTWARDS TWO-HEADED TRIPLE DASH ARROW;Sm;0;ON;;;;;N;;;;; -2B38;LEFTWARDS ARROW WITH DOTTED STEM;Sm;0;ON;;;;;N;;;;; -2B39;LEFTWARDS ARROW WITH TAIL WITH VERTICAL STROKE;Sm;0;ON;;;;;N;;;;; -2B3A;LEFTWARDS ARROW WITH TAIL WITH DOUBLE VERTICAL STROKE;Sm;0;ON;;;;;N;;;;; -2B3B;LEFTWARDS TWO-HEADED ARROW WITH TAIL;Sm;0;ON;;;;;N;;;;; -2B3C;LEFTWARDS TWO-HEADED ARROW WITH TAIL WITH VERTICAL STROKE;Sm;0;ON;;;;;N;;;;; -2B3D;LEFTWARDS TWO-HEADED ARROW WITH TAIL WITH DOUBLE VERTICAL STROKE;Sm;0;ON;;;;;N;;;;; -2B3E;LEFTWARDS ARROW THROUGH X;Sm;0;ON;;;;;N;;;;; -2B3F;WAVE ARROW POINTING DIRECTLY LEFT;Sm;0;ON;;;;;N;;;;; -2B40;EQUALS SIGN ABOVE LEFTWARDS ARROW;Sm;0;ON;;;;;N;;;;; -2B41;REVERSE TILDE OPERATOR ABOVE LEFTWARDS ARROW;Sm;0;ON;;;;;N;;;;; -2B42;LEFTWARDS ARROW ABOVE REVERSE ALMOST EQUAL TO;Sm;0;ON;;;;;N;;;;; -2B43;RIGHTWARDS ARROW THROUGH GREATER-THAN;Sm;0;ON;;;;;N;;;;; -2B44;RIGHTWARDS ARROW THROUGH SUPERSET;Sm;0;ON;;;;;N;;;;; -2B45;LEFTWARDS QUADRUPLE ARROW;So;0;ON;;;;;N;;;;; -2B46;RIGHTWARDS QUADRUPLE ARROW;So;0;ON;;;;;N;;;;; -2B47;REVERSE TILDE OPERATOR ABOVE RIGHTWARDS ARROW;Sm;0;ON;;;;;N;;;;; -2B48;RIGHTWARDS ARROW ABOVE REVERSE ALMOST EQUAL TO;Sm;0;ON;;;;;N;;;;; -2B49;TILDE OPERATOR ABOVE LEFTWARDS ARROW;Sm;0;ON;;;;;N;;;;; -2B4A;LEFTWARDS ARROW ABOVE ALMOST EQUAL TO;Sm;0;ON;;;;;N;;;;; -2B4B;LEFTWARDS ARROW ABOVE REVERSE TILDE OPERATOR;Sm;0;ON;;;;;N;;;;; -2B4C;RIGHTWARDS ARROW ABOVE REVERSE TILDE OPERATOR;Sm;0;ON;;;;;N;;;;; -2B50;WHITE MEDIUM STAR;So;0;ON;;;;;N;;;;; -2B51;BLACK SMALL STAR;So;0;ON;;;;;N;;;;; -2B52;WHITE SMALL STAR;So;0;ON;;;;;N;;;;; -2B53;BLACK RIGHT-POINTING PENTAGON;So;0;ON;;;;;N;;;;; -2B54;WHITE RIGHT-POINTING PENTAGON;So;0;ON;;;;;N;;;;; -2B55;HEAVY LARGE CIRCLE;So;0;ON;;;;;N;;;;; -2B56;HEAVY OVAL WITH OVAL INSIDE;So;0;ON;;;;;N;;;;; -2B57;HEAVY CIRCLE WITH CIRCLE INSIDE;So;0;ON;;;;;N;;;;; -2B58;HEAVY CIRCLE;So;0;ON;;;;;N;;;;; -2B59;HEAVY CIRCLED SALTIRE;So;0;ON;;;;;N;;;;; -2C00;GLAGOLITIC CAPITAL LETTER AZU;Lu;0;L;;;;;N;;;;2C30; -2C01;GLAGOLITIC CAPITAL LETTER BUKY;Lu;0;L;;;;;N;;;;2C31; -2C02;GLAGOLITIC CAPITAL LETTER VEDE;Lu;0;L;;;;;N;;;;2C32; -2C03;GLAGOLITIC CAPITAL LETTER GLAGOLI;Lu;0;L;;;;;N;;;;2C33; -2C04;GLAGOLITIC CAPITAL LETTER DOBRO;Lu;0;L;;;;;N;;;;2C34; -2C05;GLAGOLITIC CAPITAL LETTER YESTU;Lu;0;L;;;;;N;;;;2C35; -2C06;GLAGOLITIC CAPITAL LETTER ZHIVETE;Lu;0;L;;;;;N;;;;2C36; -2C07;GLAGOLITIC CAPITAL LETTER DZELO;Lu;0;L;;;;;N;;;;2C37; -2C08;GLAGOLITIC CAPITAL LETTER ZEMLJA;Lu;0;L;;;;;N;;;;2C38; -2C09;GLAGOLITIC CAPITAL LETTER IZHE;Lu;0;L;;;;;N;;;;2C39; -2C0A;GLAGOLITIC CAPITAL LETTER INITIAL IZHE;Lu;0;L;;;;;N;;;;2C3A; -2C0B;GLAGOLITIC CAPITAL LETTER I;Lu;0;L;;;;;N;;;;2C3B; -2C0C;GLAGOLITIC CAPITAL LETTER DJERVI;Lu;0;L;;;;;N;;;;2C3C; -2C0D;GLAGOLITIC CAPITAL LETTER KAKO;Lu;0;L;;;;;N;;;;2C3D; -2C0E;GLAGOLITIC CAPITAL LETTER LJUDIJE;Lu;0;L;;;;;N;;;;2C3E; -2C0F;GLAGOLITIC CAPITAL LETTER MYSLITE;Lu;0;L;;;;;N;;;;2C3F; -2C10;GLAGOLITIC CAPITAL LETTER NASHI;Lu;0;L;;;;;N;;;;2C40; -2C11;GLAGOLITIC CAPITAL LETTER ONU;Lu;0;L;;;;;N;;;;2C41; -2C12;GLAGOLITIC CAPITAL LETTER POKOJI;Lu;0;L;;;;;N;;;;2C42; -2C13;GLAGOLITIC CAPITAL LETTER RITSI;Lu;0;L;;;;;N;;;;2C43; -2C14;GLAGOLITIC CAPITAL LETTER SLOVO;Lu;0;L;;;;;N;;;;2C44; -2C15;GLAGOLITIC CAPITAL LETTER TVRIDO;Lu;0;L;;;;;N;;;;2C45; -2C16;GLAGOLITIC CAPITAL LETTER UKU;Lu;0;L;;;;;N;;;;2C46; -2C17;GLAGOLITIC CAPITAL LETTER FRITU;Lu;0;L;;;;;N;;;;2C47; -2C18;GLAGOLITIC CAPITAL LETTER HERU;Lu;0;L;;;;;N;;;;2C48; -2C19;GLAGOLITIC CAPITAL LETTER OTU;Lu;0;L;;;;;N;;;;2C49; -2C1A;GLAGOLITIC CAPITAL LETTER PE;Lu;0;L;;;;;N;;;;2C4A; -2C1B;GLAGOLITIC CAPITAL LETTER SHTA;Lu;0;L;;;;;N;;;;2C4B; -2C1C;GLAGOLITIC CAPITAL LETTER TSI;Lu;0;L;;;;;N;;;;2C4C; -2C1D;GLAGOLITIC CAPITAL LETTER CHRIVI;Lu;0;L;;;;;N;;;;2C4D; -2C1E;GLAGOLITIC CAPITAL LETTER SHA;Lu;0;L;;;;;N;;;;2C4E; -2C1F;GLAGOLITIC CAPITAL LETTER YERU;Lu;0;L;;;;;N;;;;2C4F; -2C20;GLAGOLITIC CAPITAL LETTER YERI;Lu;0;L;;;;;N;;;;2C50; -2C21;GLAGOLITIC CAPITAL LETTER YATI;Lu;0;L;;;;;N;;;;2C51; -2C22;GLAGOLITIC CAPITAL LETTER SPIDERY HA;Lu;0;L;;;;;N;;;;2C52; -2C23;GLAGOLITIC CAPITAL LETTER YU;Lu;0;L;;;;;N;;;;2C53; -2C24;GLAGOLITIC CAPITAL LETTER SMALL YUS;Lu;0;L;;;;;N;;;;2C54; -2C25;GLAGOLITIC CAPITAL LETTER SMALL YUS WITH TAIL;Lu;0;L;;;;;N;;;;2C55; -2C26;GLAGOLITIC CAPITAL LETTER YO;Lu;0;L;;;;;N;;;;2C56; -2C27;GLAGOLITIC CAPITAL LETTER IOTATED SMALL YUS;Lu;0;L;;;;;N;;;;2C57; -2C28;GLAGOLITIC CAPITAL LETTER BIG YUS;Lu;0;L;;;;;N;;;;2C58; -2C29;GLAGOLITIC CAPITAL LETTER IOTATED BIG YUS;Lu;0;L;;;;;N;;;;2C59; -2C2A;GLAGOLITIC CAPITAL LETTER FITA;Lu;0;L;;;;;N;;;;2C5A; -2C2B;GLAGOLITIC CAPITAL LETTER IZHITSA;Lu;0;L;;;;;N;;;;2C5B; -2C2C;GLAGOLITIC CAPITAL LETTER SHTAPIC;Lu;0;L;;;;;N;;;;2C5C; -2C2D;GLAGOLITIC CAPITAL LETTER TROKUTASTI A;Lu;0;L;;;;;N;;;;2C5D; -2C2E;GLAGOLITIC CAPITAL LETTER LATINATE MYSLITE;Lu;0;L;;;;;N;;;;2C5E; -2C30;GLAGOLITIC SMALL LETTER AZU;Ll;0;L;;;;;N;;;2C00;;2C00 -2C31;GLAGOLITIC SMALL LETTER BUKY;Ll;0;L;;;;;N;;;2C01;;2C01 -2C32;GLAGOLITIC SMALL LETTER VEDE;Ll;0;L;;;;;N;;;2C02;;2C02 -2C33;GLAGOLITIC SMALL LETTER GLAGOLI;Ll;0;L;;;;;N;;;2C03;;2C03 -2C34;GLAGOLITIC SMALL LETTER DOBRO;Ll;0;L;;;;;N;;;2C04;;2C04 -2C35;GLAGOLITIC SMALL LETTER YESTU;Ll;0;L;;;;;N;;;2C05;;2C05 -2C36;GLAGOLITIC SMALL LETTER ZHIVETE;Ll;0;L;;;;;N;;;2C06;;2C06 -2C37;GLAGOLITIC SMALL LETTER DZELO;Ll;0;L;;;;;N;;;2C07;;2C07 -2C38;GLAGOLITIC SMALL LETTER ZEMLJA;Ll;0;L;;;;;N;;;2C08;;2C08 -2C39;GLAGOLITIC SMALL LETTER IZHE;Ll;0;L;;;;;N;;;2C09;;2C09 -2C3A;GLAGOLITIC SMALL LETTER INITIAL IZHE;Ll;0;L;;;;;N;;;2C0A;;2C0A -2C3B;GLAGOLITIC SMALL LETTER I;Ll;0;L;;;;;N;;;2C0B;;2C0B -2C3C;GLAGOLITIC SMALL LETTER DJERVI;Ll;0;L;;;;;N;;;2C0C;;2C0C -2C3D;GLAGOLITIC SMALL LETTER KAKO;Ll;0;L;;;;;N;;;2C0D;;2C0D -2C3E;GLAGOLITIC SMALL LETTER LJUDIJE;Ll;0;L;;;;;N;;;2C0E;;2C0E -2C3F;GLAGOLITIC SMALL LETTER MYSLITE;Ll;0;L;;;;;N;;;2C0F;;2C0F -2C40;GLAGOLITIC SMALL LETTER NASHI;Ll;0;L;;;;;N;;;2C10;;2C10 -2C41;GLAGOLITIC SMALL LETTER ONU;Ll;0;L;;;;;N;;;2C11;;2C11 -2C42;GLAGOLITIC SMALL LETTER POKOJI;Ll;0;L;;;;;N;;;2C12;;2C12 -2C43;GLAGOLITIC SMALL LETTER RITSI;Ll;0;L;;;;;N;;;2C13;;2C13 -2C44;GLAGOLITIC SMALL LETTER SLOVO;Ll;0;L;;;;;N;;;2C14;;2C14 -2C45;GLAGOLITIC SMALL LETTER TVRIDO;Ll;0;L;;;;;N;;;2C15;;2C15 -2C46;GLAGOLITIC SMALL LETTER UKU;Ll;0;L;;;;;N;;;2C16;;2C16 -2C47;GLAGOLITIC SMALL LETTER FRITU;Ll;0;L;;;;;N;;;2C17;;2C17 -2C48;GLAGOLITIC SMALL LETTER HERU;Ll;0;L;;;;;N;;;2C18;;2C18 -2C49;GLAGOLITIC SMALL LETTER OTU;Ll;0;L;;;;;N;;;2C19;;2C19 -2C4A;GLAGOLITIC SMALL LETTER PE;Ll;0;L;;;;;N;;;2C1A;;2C1A -2C4B;GLAGOLITIC SMALL LETTER SHTA;Ll;0;L;;;;;N;;;2C1B;;2C1B -2C4C;GLAGOLITIC SMALL LETTER TSI;Ll;0;L;;;;;N;;;2C1C;;2C1C -2C4D;GLAGOLITIC SMALL LETTER CHRIVI;Ll;0;L;;;;;N;;;2C1D;;2C1D -2C4E;GLAGOLITIC SMALL LETTER SHA;Ll;0;L;;;;;N;;;2C1E;;2C1E -2C4F;GLAGOLITIC SMALL LETTER YERU;Ll;0;L;;;;;N;;;2C1F;;2C1F -2C50;GLAGOLITIC SMALL LETTER YERI;Ll;0;L;;;;;N;;;2C20;;2C20 -2C51;GLAGOLITIC SMALL LETTER YATI;Ll;0;L;;;;;N;;;2C21;;2C21 -2C52;GLAGOLITIC SMALL LETTER SPIDERY HA;Ll;0;L;;;;;N;;;2C22;;2C22 -2C53;GLAGOLITIC SMALL LETTER YU;Ll;0;L;;;;;N;;;2C23;;2C23 -2C54;GLAGOLITIC SMALL LETTER SMALL YUS;Ll;0;L;;;;;N;;;2C24;;2C24 -2C55;GLAGOLITIC SMALL LETTER SMALL YUS WITH TAIL;Ll;0;L;;;;;N;;;2C25;;2C25 -2C56;GLAGOLITIC SMALL LETTER YO;Ll;0;L;;;;;N;;;2C26;;2C26 -2C57;GLAGOLITIC SMALL LETTER IOTATED SMALL YUS;Ll;0;L;;;;;N;;;2C27;;2C27 -2C58;GLAGOLITIC SMALL LETTER BIG YUS;Ll;0;L;;;;;N;;;2C28;;2C28 -2C59;GLAGOLITIC SMALL LETTER IOTATED BIG YUS;Ll;0;L;;;;;N;;;2C29;;2C29 -2C5A;GLAGOLITIC SMALL LETTER FITA;Ll;0;L;;;;;N;;;2C2A;;2C2A -2C5B;GLAGOLITIC SMALL LETTER IZHITSA;Ll;0;L;;;;;N;;;2C2B;;2C2B -2C5C;GLAGOLITIC SMALL LETTER SHTAPIC;Ll;0;L;;;;;N;;;2C2C;;2C2C -2C5D;GLAGOLITIC SMALL LETTER TROKUTASTI A;Ll;0;L;;;;;N;;;2C2D;;2C2D -2C5E;GLAGOLITIC SMALL LETTER LATINATE MYSLITE;Ll;0;L;;;;;N;;;2C2E;;2C2E -2C60;LATIN CAPITAL LETTER L WITH DOUBLE BAR;Lu;0;L;;;;;N;;;;2C61; -2C61;LATIN SMALL LETTER L WITH DOUBLE BAR;Ll;0;L;;;;;N;;;2C60;;2C60 -2C62;LATIN CAPITAL LETTER L WITH MIDDLE TILDE;Lu;0;L;;;;;N;;;;026B; -2C63;LATIN CAPITAL LETTER P WITH STROKE;Lu;0;L;;;;;N;;;;1D7D; -2C64;LATIN CAPITAL LETTER R WITH TAIL;Lu;0;L;;;;;N;;;;027D; -2C65;LATIN SMALL LETTER A WITH STROKE;Ll;0;L;;;;;N;;;023A;;023A -2C66;LATIN SMALL LETTER T WITH DIAGONAL STROKE;Ll;0;L;;;;;N;;;023E;;023E -2C67;LATIN CAPITAL LETTER H WITH DESCENDER;Lu;0;L;;;;;N;;;;2C68; -2C68;LATIN SMALL LETTER H WITH DESCENDER;Ll;0;L;;;;;N;;;2C67;;2C67 -2C69;LATIN CAPITAL LETTER K WITH DESCENDER;Lu;0;L;;;;;N;;;;2C6A; -2C6A;LATIN SMALL LETTER K WITH DESCENDER;Ll;0;L;;;;;N;;;2C69;;2C69 -2C6B;LATIN CAPITAL LETTER Z WITH DESCENDER;Lu;0;L;;;;;N;;;;2C6C; -2C6C;LATIN SMALL LETTER Z WITH DESCENDER;Ll;0;L;;;;;N;;;2C6B;;2C6B -2C6D;LATIN CAPITAL LETTER ALPHA;Lu;0;L;;;;;N;;;;0251; -2C6E;LATIN CAPITAL LETTER M WITH HOOK;Lu;0;L;;;;;N;;;;0271; -2C6F;LATIN CAPITAL LETTER TURNED A;Lu;0;L;;;;;N;;;;0250; -2C70;LATIN CAPITAL LETTER TURNED ALPHA;Lu;0;L;;;;;N;;;;0252; -2C71;LATIN SMALL LETTER V WITH RIGHT HOOK;Ll;0;L;;;;;N;;;;; -2C72;LATIN CAPITAL LETTER W WITH HOOK;Lu;0;L;;;;;N;;;;2C73; -2C73;LATIN SMALL LETTER W WITH HOOK;Ll;0;L;;;;;N;;;2C72;;2C72 -2C74;LATIN SMALL LETTER V WITH CURL;Ll;0;L;;;;;N;;;;; -2C75;LATIN CAPITAL LETTER HALF H;Lu;0;L;;;;;N;;;;2C76; -2C76;LATIN SMALL LETTER HALF H;Ll;0;L;;;;;N;;;2C75;;2C75 -2C77;LATIN SMALL LETTER TAILLESS PHI;Ll;0;L;;;;;N;;;;; -2C78;LATIN SMALL LETTER E WITH NOTCH;Ll;0;L;;;;;N;;;;; -2C79;LATIN SMALL LETTER TURNED R WITH TAIL;Ll;0;L;;;;;N;;;;; -2C7A;LATIN SMALL LETTER O WITH LOW RING INSIDE;Ll;0;L;;;;;N;;;;; -2C7B;LATIN LETTER SMALL CAPITAL TURNED E;Ll;0;L;;;;;N;;;;; -2C7C;LATIN SUBSCRIPT SMALL LETTER J;Ll;0;L; 006A;;;;N;;;;; -2C7D;MODIFIER LETTER CAPITAL V;Lm;0;L; 0056;;;;N;;;;; -2C7E;LATIN CAPITAL LETTER S WITH SWASH TAIL;Lu;0;L;;;;;N;;;;023F; -2C7F;LATIN CAPITAL LETTER Z WITH SWASH TAIL;Lu;0;L;;;;;N;;;;0240; -2C80;COPTIC CAPITAL LETTER ALFA;Lu;0;L;;;;;N;;;;2C81; -2C81;COPTIC SMALL LETTER ALFA;Ll;0;L;;;;;N;;;2C80;;2C80 -2C82;COPTIC CAPITAL LETTER VIDA;Lu;0;L;;;;;N;;;;2C83; -2C83;COPTIC SMALL LETTER VIDA;Ll;0;L;;;;;N;;;2C82;;2C82 -2C84;COPTIC CAPITAL LETTER GAMMA;Lu;0;L;;;;;N;;;;2C85; -2C85;COPTIC SMALL LETTER GAMMA;Ll;0;L;;;;;N;;;2C84;;2C84 -2C86;COPTIC CAPITAL LETTER DALDA;Lu;0;L;;;;;N;;;;2C87; -2C87;COPTIC SMALL LETTER DALDA;Ll;0;L;;;;;N;;;2C86;;2C86 -2C88;COPTIC CAPITAL LETTER EIE;Lu;0;L;;;;;N;;;;2C89; -2C89;COPTIC SMALL LETTER EIE;Ll;0;L;;;;;N;;;2C88;;2C88 -2C8A;COPTIC CAPITAL LETTER SOU;Lu;0;L;;;;;N;;;;2C8B; -2C8B;COPTIC SMALL LETTER SOU;Ll;0;L;;;;;N;;;2C8A;;2C8A -2C8C;COPTIC CAPITAL LETTER ZATA;Lu;0;L;;;;;N;;;;2C8D; -2C8D;COPTIC SMALL LETTER ZATA;Ll;0;L;;;;;N;;;2C8C;;2C8C -2C8E;COPTIC CAPITAL LETTER HATE;Lu;0;L;;;;;N;;;;2C8F; -2C8F;COPTIC SMALL LETTER HATE;Ll;0;L;;;;;N;;;2C8E;;2C8E -2C90;COPTIC CAPITAL LETTER THETHE;Lu;0;L;;;;;N;;;;2C91; -2C91;COPTIC SMALL LETTER THETHE;Ll;0;L;;;;;N;;;2C90;;2C90 -2C92;COPTIC CAPITAL LETTER IAUDA;Lu;0;L;;;;;N;;;;2C93; -2C93;COPTIC SMALL LETTER IAUDA;Ll;0;L;;;;;N;;;2C92;;2C92 -2C94;COPTIC CAPITAL LETTER KAPA;Lu;0;L;;;;;N;;;;2C95; -2C95;COPTIC SMALL LETTER KAPA;Ll;0;L;;;;;N;;;2C94;;2C94 -2C96;COPTIC CAPITAL LETTER LAULA;Lu;0;L;;;;;N;;;;2C97; -2C97;COPTIC SMALL LETTER LAULA;Ll;0;L;;;;;N;;;2C96;;2C96 -2C98;COPTIC CAPITAL LETTER MI;Lu;0;L;;;;;N;;;;2C99; -2C99;COPTIC SMALL LETTER MI;Ll;0;L;;;;;N;;;2C98;;2C98 -2C9A;COPTIC CAPITAL LETTER NI;Lu;0;L;;;;;N;;;;2C9B; -2C9B;COPTIC SMALL LETTER NI;Ll;0;L;;;;;N;;;2C9A;;2C9A -2C9C;COPTIC CAPITAL LETTER KSI;Lu;0;L;;;;;N;;;;2C9D; -2C9D;COPTIC SMALL LETTER KSI;Ll;0;L;;;;;N;;;2C9C;;2C9C -2C9E;COPTIC CAPITAL LETTER O;Lu;0;L;;;;;N;;;;2C9F; -2C9F;COPTIC SMALL LETTER O;Ll;0;L;;;;;N;;;2C9E;;2C9E -2CA0;COPTIC CAPITAL LETTER PI;Lu;0;L;;;;;N;;;;2CA1; -2CA1;COPTIC SMALL LETTER PI;Ll;0;L;;;;;N;;;2CA0;;2CA0 -2CA2;COPTIC CAPITAL LETTER RO;Lu;0;L;;;;;N;;;;2CA3; -2CA3;COPTIC SMALL LETTER RO;Ll;0;L;;;;;N;;;2CA2;;2CA2 -2CA4;COPTIC CAPITAL LETTER SIMA;Lu;0;L;;;;;N;;;;2CA5; -2CA5;COPTIC SMALL LETTER SIMA;Ll;0;L;;;;;N;;;2CA4;;2CA4 -2CA6;COPTIC CAPITAL LETTER TAU;Lu;0;L;;;;;N;;;;2CA7; -2CA7;COPTIC SMALL LETTER TAU;Ll;0;L;;;;;N;;;2CA6;;2CA6 -2CA8;COPTIC CAPITAL LETTER UA;Lu;0;L;;;;;N;;;;2CA9; -2CA9;COPTIC SMALL LETTER UA;Ll;0;L;;;;;N;;;2CA8;;2CA8 -2CAA;COPTIC CAPITAL LETTER FI;Lu;0;L;;;;;N;;;;2CAB; -2CAB;COPTIC SMALL LETTER FI;Ll;0;L;;;;;N;;;2CAA;;2CAA -2CAC;COPTIC CAPITAL LETTER KHI;Lu;0;L;;;;;N;;;;2CAD; -2CAD;COPTIC SMALL LETTER KHI;Ll;0;L;;;;;N;;;2CAC;;2CAC -2CAE;COPTIC CAPITAL LETTER PSI;Lu;0;L;;;;;N;;;;2CAF; -2CAF;COPTIC SMALL LETTER PSI;Ll;0;L;;;;;N;;;2CAE;;2CAE -2CB0;COPTIC CAPITAL LETTER OOU;Lu;0;L;;;;;N;;;;2CB1; -2CB1;COPTIC SMALL LETTER OOU;Ll;0;L;;;;;N;;;2CB0;;2CB0 -2CB2;COPTIC CAPITAL LETTER DIALECT-P ALEF;Lu;0;L;;;;;N;;;;2CB3; -2CB3;COPTIC SMALL LETTER DIALECT-P ALEF;Ll;0;L;;;;;N;;;2CB2;;2CB2 -2CB4;COPTIC CAPITAL LETTER OLD COPTIC AIN;Lu;0;L;;;;;N;;;;2CB5; -2CB5;COPTIC SMALL LETTER OLD COPTIC AIN;Ll;0;L;;;;;N;;;2CB4;;2CB4 -2CB6;COPTIC CAPITAL LETTER CRYPTOGRAMMIC EIE;Lu;0;L;;;;;N;;;;2CB7; -2CB7;COPTIC SMALL LETTER CRYPTOGRAMMIC EIE;Ll;0;L;;;;;N;;;2CB6;;2CB6 -2CB8;COPTIC CAPITAL LETTER DIALECT-P KAPA;Lu;0;L;;;;;N;;;;2CB9; -2CB9;COPTIC SMALL LETTER DIALECT-P KAPA;Ll;0;L;;;;;N;;;2CB8;;2CB8 -2CBA;COPTIC CAPITAL LETTER DIALECT-P NI;Lu;0;L;;;;;N;;;;2CBB; -2CBB;COPTIC SMALL LETTER DIALECT-P NI;Ll;0;L;;;;;N;;;2CBA;;2CBA -2CBC;COPTIC CAPITAL LETTER CRYPTOGRAMMIC NI;Lu;0;L;;;;;N;;;;2CBD; -2CBD;COPTIC SMALL LETTER CRYPTOGRAMMIC NI;Ll;0;L;;;;;N;;;2CBC;;2CBC -2CBE;COPTIC CAPITAL LETTER OLD COPTIC OOU;Lu;0;L;;;;;N;;;;2CBF; -2CBF;COPTIC SMALL LETTER OLD COPTIC OOU;Ll;0;L;;;;;N;;;2CBE;;2CBE -2CC0;COPTIC CAPITAL LETTER SAMPI;Lu;0;L;;;;;N;;;;2CC1; -2CC1;COPTIC SMALL LETTER SAMPI;Ll;0;L;;;;;N;;;2CC0;;2CC0 -2CC2;COPTIC CAPITAL LETTER CROSSED SHEI;Lu;0;L;;;;;N;;;;2CC3; -2CC3;COPTIC SMALL LETTER CROSSED SHEI;Ll;0;L;;;;;N;;;2CC2;;2CC2 -2CC4;COPTIC CAPITAL LETTER OLD COPTIC SHEI;Lu;0;L;;;;;N;;;;2CC5; -2CC5;COPTIC SMALL LETTER OLD COPTIC SHEI;Ll;0;L;;;;;N;;;2CC4;;2CC4 -2CC6;COPTIC CAPITAL LETTER OLD COPTIC ESH;Lu;0;L;;;;;N;;;;2CC7; -2CC7;COPTIC SMALL LETTER OLD COPTIC ESH;Ll;0;L;;;;;N;;;2CC6;;2CC6 -2CC8;COPTIC CAPITAL LETTER AKHMIMIC KHEI;Lu;0;L;;;;;N;;;;2CC9; -2CC9;COPTIC SMALL LETTER AKHMIMIC KHEI;Ll;0;L;;;;;N;;;2CC8;;2CC8 -2CCA;COPTIC CAPITAL LETTER DIALECT-P HORI;Lu;0;L;;;;;N;;;;2CCB; -2CCB;COPTIC SMALL LETTER DIALECT-P HORI;Ll;0;L;;;;;N;;;2CCA;;2CCA -2CCC;COPTIC CAPITAL LETTER OLD COPTIC HORI;Lu;0;L;;;;;N;;;;2CCD; -2CCD;COPTIC SMALL LETTER OLD COPTIC HORI;Ll;0;L;;;;;N;;;2CCC;;2CCC -2CCE;COPTIC CAPITAL LETTER OLD COPTIC HA;Lu;0;L;;;;;N;;;;2CCF; -2CCF;COPTIC SMALL LETTER OLD COPTIC HA;Ll;0;L;;;;;N;;;2CCE;;2CCE -2CD0;COPTIC CAPITAL LETTER L-SHAPED HA;Lu;0;L;;;;;N;;;;2CD1; -2CD1;COPTIC SMALL LETTER L-SHAPED HA;Ll;0;L;;;;;N;;;2CD0;;2CD0 -2CD2;COPTIC CAPITAL LETTER OLD COPTIC HEI;Lu;0;L;;;;;N;;;;2CD3; -2CD3;COPTIC SMALL LETTER OLD COPTIC HEI;Ll;0;L;;;;;N;;;2CD2;;2CD2 -2CD4;COPTIC CAPITAL LETTER OLD COPTIC HAT;Lu;0;L;;;;;N;;;;2CD5; -2CD5;COPTIC SMALL LETTER OLD COPTIC HAT;Ll;0;L;;;;;N;;;2CD4;;2CD4 -2CD6;COPTIC CAPITAL LETTER OLD COPTIC GANGIA;Lu;0;L;;;;;N;;;;2CD7; -2CD7;COPTIC SMALL LETTER OLD COPTIC GANGIA;Ll;0;L;;;;;N;;;2CD6;;2CD6 -2CD8;COPTIC CAPITAL LETTER OLD COPTIC DJA;Lu;0;L;;;;;N;;;;2CD9; -2CD9;COPTIC SMALL LETTER OLD COPTIC DJA;Ll;0;L;;;;;N;;;2CD8;;2CD8 -2CDA;COPTIC CAPITAL LETTER OLD COPTIC SHIMA;Lu;0;L;;;;;N;;;;2CDB; -2CDB;COPTIC SMALL LETTER OLD COPTIC SHIMA;Ll;0;L;;;;;N;;;2CDA;;2CDA -2CDC;COPTIC CAPITAL LETTER OLD NUBIAN SHIMA;Lu;0;L;;;;;N;;;;2CDD; -2CDD;COPTIC SMALL LETTER OLD NUBIAN SHIMA;Ll;0;L;;;;;N;;;2CDC;;2CDC -2CDE;COPTIC CAPITAL LETTER OLD NUBIAN NGI;Lu;0;L;;;;;N;;;;2CDF; -2CDF;COPTIC SMALL LETTER OLD NUBIAN NGI;Ll;0;L;;;;;N;;;2CDE;;2CDE -2CE0;COPTIC CAPITAL LETTER OLD NUBIAN NYI;Lu;0;L;;;;;N;;;;2CE1; -2CE1;COPTIC SMALL LETTER OLD NUBIAN NYI;Ll;0;L;;;;;N;;;2CE0;;2CE0 -2CE2;COPTIC CAPITAL LETTER OLD NUBIAN WAU;Lu;0;L;;;;;N;;;;2CE3; -2CE3;COPTIC SMALL LETTER OLD NUBIAN WAU;Ll;0;L;;;;;N;;;2CE2;;2CE2 -2CE4;COPTIC SYMBOL KAI;Ll;0;L;;;;;N;;;;; -2CE5;COPTIC SYMBOL MI RO;So;0;ON;;;;;N;;;;; -2CE6;COPTIC SYMBOL PI RO;So;0;ON;;;;;N;;;;; -2CE7;COPTIC SYMBOL STAUROS;So;0;ON;;;;;N;;;;; -2CE8;COPTIC SYMBOL TAU RO;So;0;ON;;;;;N;;;;; -2CE9;COPTIC SYMBOL KHI RO;So;0;ON;;;;;N;;;;; -2CEA;COPTIC SYMBOL SHIMA SIMA;So;0;ON;;;;;N;;;;; -2CEB;COPTIC CAPITAL LETTER CRYPTOGRAMMIC SHEI;Lu;0;L;;;;;N;;;;2CEC; -2CEC;COPTIC SMALL LETTER CRYPTOGRAMMIC SHEI;Ll;0;L;;;;;N;;;2CEB;;2CEB -2CED;COPTIC CAPITAL LETTER CRYPTOGRAMMIC GANGIA;Lu;0;L;;;;;N;;;;2CEE; -2CEE;COPTIC SMALL LETTER CRYPTOGRAMMIC GANGIA;Ll;0;L;;;;;N;;;2CED;;2CED -2CEF;COPTIC COMBINING NI ABOVE;Mn;230;NSM;;;;;N;;;;; -2CF0;COPTIC COMBINING SPIRITUS ASPER;Mn;230;NSM;;;;;N;;;;; -2CF1;COPTIC COMBINING SPIRITUS LENIS;Mn;230;NSM;;;;;N;;;;; -2CF9;COPTIC OLD NUBIAN FULL STOP;Po;0;ON;;;;;N;;;;; -2CFA;COPTIC OLD NUBIAN DIRECT QUESTION MARK;Po;0;ON;;;;;N;;;;; -2CFB;COPTIC OLD NUBIAN INDIRECT QUESTION MARK;Po;0;ON;;;;;N;;;;; -2CFC;COPTIC OLD NUBIAN VERSE DIVIDER;Po;0;ON;;;;;N;;;;; -2CFD;COPTIC FRACTION ONE HALF;No;0;ON;;;;1/2;N;;;;; -2CFE;COPTIC FULL STOP;Po;0;ON;;;;;N;;;;; -2CFF;COPTIC MORPHOLOGICAL DIVIDER;Po;0;ON;;;;;N;;;;; -2D00;GEORGIAN SMALL LETTER AN;Ll;0;L;;;;;N;;;10A0;;10A0 -2D01;GEORGIAN SMALL LETTER BAN;Ll;0;L;;;;;N;;;10A1;;10A1 -2D02;GEORGIAN SMALL LETTER GAN;Ll;0;L;;;;;N;;;10A2;;10A2 -2D03;GEORGIAN SMALL LETTER DON;Ll;0;L;;;;;N;;;10A3;;10A3 -2D04;GEORGIAN SMALL LETTER EN;Ll;0;L;;;;;N;;;10A4;;10A4 -2D05;GEORGIAN SMALL LETTER VIN;Ll;0;L;;;;;N;;;10A5;;10A5 -2D06;GEORGIAN SMALL LETTER ZEN;Ll;0;L;;;;;N;;;10A6;;10A6 -2D07;GEORGIAN SMALL LETTER TAN;Ll;0;L;;;;;N;;;10A7;;10A7 -2D08;GEORGIAN SMALL LETTER IN;Ll;0;L;;;;;N;;;10A8;;10A8 -2D09;GEORGIAN SMALL LETTER KAN;Ll;0;L;;;;;N;;;10A9;;10A9 -2D0A;GEORGIAN SMALL LETTER LAS;Ll;0;L;;;;;N;;;10AA;;10AA -2D0B;GEORGIAN SMALL LETTER MAN;Ll;0;L;;;;;N;;;10AB;;10AB -2D0C;GEORGIAN SMALL LETTER NAR;Ll;0;L;;;;;N;;;10AC;;10AC -2D0D;GEORGIAN SMALL LETTER ON;Ll;0;L;;;;;N;;;10AD;;10AD -2D0E;GEORGIAN SMALL LETTER PAR;Ll;0;L;;;;;N;;;10AE;;10AE -2D0F;GEORGIAN SMALL LETTER ZHAR;Ll;0;L;;;;;N;;;10AF;;10AF -2D10;GEORGIAN SMALL LETTER RAE;Ll;0;L;;;;;N;;;10B0;;10B0 -2D11;GEORGIAN SMALL LETTER SAN;Ll;0;L;;;;;N;;;10B1;;10B1 -2D12;GEORGIAN SMALL LETTER TAR;Ll;0;L;;;;;N;;;10B2;;10B2 -2D13;GEORGIAN SMALL LETTER UN;Ll;0;L;;;;;N;;;10B3;;10B3 -2D14;GEORGIAN SMALL LETTER PHAR;Ll;0;L;;;;;N;;;10B4;;10B4 -2D15;GEORGIAN SMALL LETTER KHAR;Ll;0;L;;;;;N;;;10B5;;10B5 -2D16;GEORGIAN SMALL LETTER GHAN;Ll;0;L;;;;;N;;;10B6;;10B6 -2D17;GEORGIAN SMALL LETTER QAR;Ll;0;L;;;;;N;;;10B7;;10B7 -2D18;GEORGIAN SMALL LETTER SHIN;Ll;0;L;;;;;N;;;10B8;;10B8 -2D19;GEORGIAN SMALL LETTER CHIN;Ll;0;L;;;;;N;;;10B9;;10B9 -2D1A;GEORGIAN SMALL LETTER CAN;Ll;0;L;;;;;N;;;10BA;;10BA -2D1B;GEORGIAN SMALL LETTER JIL;Ll;0;L;;;;;N;;;10BB;;10BB -2D1C;GEORGIAN SMALL LETTER CIL;Ll;0;L;;;;;N;;;10BC;;10BC -2D1D;GEORGIAN SMALL LETTER CHAR;Ll;0;L;;;;;N;;;10BD;;10BD -2D1E;GEORGIAN SMALL LETTER XAN;Ll;0;L;;;;;N;;;10BE;;10BE -2D1F;GEORGIAN SMALL LETTER JHAN;Ll;0;L;;;;;N;;;10BF;;10BF -2D20;GEORGIAN SMALL LETTER HAE;Ll;0;L;;;;;N;;;10C0;;10C0 -2D21;GEORGIAN SMALL LETTER HE;Ll;0;L;;;;;N;;;10C1;;10C1 -2D22;GEORGIAN SMALL LETTER HIE;Ll;0;L;;;;;N;;;10C2;;10C2 -2D23;GEORGIAN SMALL LETTER WE;Ll;0;L;;;;;N;;;10C3;;10C3 -2D24;GEORGIAN SMALL LETTER HAR;Ll;0;L;;;;;N;;;10C4;;10C4 -2D25;GEORGIAN SMALL LETTER HOE;Ll;0;L;;;;;N;;;10C5;;10C5 -2D30;TIFINAGH LETTER YA;Lo;0;L;;;;;N;;;;; -2D31;TIFINAGH LETTER YAB;Lo;0;L;;;;;N;;;;; -2D32;TIFINAGH LETTER YABH;Lo;0;L;;;;;N;;;;; -2D33;TIFINAGH LETTER YAG;Lo;0;L;;;;;N;;;;; -2D34;TIFINAGH LETTER YAGHH;Lo;0;L;;;;;N;;;;; -2D35;TIFINAGH LETTER BERBER ACADEMY YAJ;Lo;0;L;;;;;N;;;;; -2D36;TIFINAGH LETTER YAJ;Lo;0;L;;;;;N;;;;; -2D37;TIFINAGH LETTER YAD;Lo;0;L;;;;;N;;;;; -2D38;TIFINAGH LETTER YADH;Lo;0;L;;;;;N;;;;; -2D39;TIFINAGH LETTER YADD;Lo;0;L;;;;;N;;;;; -2D3A;TIFINAGH LETTER YADDH;Lo;0;L;;;;;N;;;;; -2D3B;TIFINAGH LETTER YEY;Lo;0;L;;;;;N;;;;; -2D3C;TIFINAGH LETTER YAF;Lo;0;L;;;;;N;;;;; -2D3D;TIFINAGH LETTER YAK;Lo;0;L;;;;;N;;;;; -2D3E;TIFINAGH LETTER TUAREG YAK;Lo;0;L;;;;;N;;;;; -2D3F;TIFINAGH LETTER YAKHH;Lo;0;L;;;;;N;;;;; -2D40;TIFINAGH LETTER YAH;Lo;0;L;;;;;N;;;;; -2D41;TIFINAGH LETTER BERBER ACADEMY YAH;Lo;0;L;;;;;N;;;;; -2D42;TIFINAGH LETTER TUAREG YAH;Lo;0;L;;;;;N;;;;; -2D43;TIFINAGH LETTER YAHH;Lo;0;L;;;;;N;;;;; -2D44;TIFINAGH LETTER YAA;Lo;0;L;;;;;N;;;;; -2D45;TIFINAGH LETTER YAKH;Lo;0;L;;;;;N;;;;; -2D46;TIFINAGH LETTER TUAREG YAKH;Lo;0;L;;;;;N;;;;; -2D47;TIFINAGH LETTER YAQ;Lo;0;L;;;;;N;;;;; -2D48;TIFINAGH LETTER TUAREG YAQ;Lo;0;L;;;;;N;;;;; -2D49;TIFINAGH LETTER YI;Lo;0;L;;;;;N;;;;; -2D4A;TIFINAGH LETTER YAZH;Lo;0;L;;;;;N;;;;; -2D4B;TIFINAGH LETTER AHAGGAR YAZH;Lo;0;L;;;;;N;;;;; -2D4C;TIFINAGH LETTER TUAREG YAZH;Lo;0;L;;;;;N;;;;; -2D4D;TIFINAGH LETTER YAL;Lo;0;L;;;;;N;;;;; -2D4E;TIFINAGH LETTER YAM;Lo;0;L;;;;;N;;;;; -2D4F;TIFINAGH LETTER YAN;Lo;0;L;;;;;N;;;;; -2D50;TIFINAGH LETTER TUAREG YAGN;Lo;0;L;;;;;N;;;;; -2D51;TIFINAGH LETTER TUAREG YANG;Lo;0;L;;;;;N;;;;; -2D52;TIFINAGH LETTER YAP;Lo;0;L;;;;;N;;;;; -2D53;TIFINAGH LETTER YU;Lo;0;L;;;;;N;;;;; -2D54;TIFINAGH LETTER YAR;Lo;0;L;;;;;N;;;;; -2D55;TIFINAGH LETTER YARR;Lo;0;L;;;;;N;;;;; -2D56;TIFINAGH LETTER YAGH;Lo;0;L;;;;;N;;;;; -2D57;TIFINAGH LETTER TUAREG YAGH;Lo;0;L;;;;;N;;;;; -2D58;TIFINAGH LETTER AYER YAGH;Lo;0;L;;;;;N;;;;; -2D59;TIFINAGH LETTER YAS;Lo;0;L;;;;;N;;;;; -2D5A;TIFINAGH LETTER YASS;Lo;0;L;;;;;N;;;;; -2D5B;TIFINAGH LETTER YASH;Lo;0;L;;;;;N;;;;; -2D5C;TIFINAGH LETTER YAT;Lo;0;L;;;;;N;;;;; -2D5D;TIFINAGH LETTER YATH;Lo;0;L;;;;;N;;;;; -2D5E;TIFINAGH LETTER YACH;Lo;0;L;;;;;N;;;;; -2D5F;TIFINAGH LETTER YATT;Lo;0;L;;;;;N;;;;; -2D60;TIFINAGH LETTER YAV;Lo;0;L;;;;;N;;;;; -2D61;TIFINAGH LETTER YAW;Lo;0;L;;;;;N;;;;; -2D62;TIFINAGH LETTER YAY;Lo;0;L;;;;;N;;;;; -2D63;TIFINAGH LETTER YAZ;Lo;0;L;;;;;N;;;;; -2D64;TIFINAGH LETTER TAWELLEMET YAZ;Lo;0;L;;;;;N;;;;; -2D65;TIFINAGH LETTER YAZZ;Lo;0;L;;;;;N;;;;; -2D6F;TIFINAGH MODIFIER LETTER LABIALIZATION MARK;Lm;0;L; 2D61;;;;N;;;;; -2D70;TIFINAGH SEPARATOR MARK;Po;0;L;;;;;N;;;;; -2D7F;TIFINAGH CONSONANT JOINER;Mn;9;NSM;;;;;N;;;;; -2D80;ETHIOPIC SYLLABLE LOA;Lo;0;L;;;;;N;;;;; -2D81;ETHIOPIC SYLLABLE MOA;Lo;0;L;;;;;N;;;;; -2D82;ETHIOPIC SYLLABLE ROA;Lo;0;L;;;;;N;;;;; -2D83;ETHIOPIC SYLLABLE SOA;Lo;0;L;;;;;N;;;;; -2D84;ETHIOPIC SYLLABLE SHOA;Lo;0;L;;;;;N;;;;; -2D85;ETHIOPIC SYLLABLE BOA;Lo;0;L;;;;;N;;;;; -2D86;ETHIOPIC SYLLABLE TOA;Lo;0;L;;;;;N;;;;; -2D87;ETHIOPIC SYLLABLE COA;Lo;0;L;;;;;N;;;;; -2D88;ETHIOPIC SYLLABLE NOA;Lo;0;L;;;;;N;;;;; -2D89;ETHIOPIC SYLLABLE NYOA;Lo;0;L;;;;;N;;;;; -2D8A;ETHIOPIC SYLLABLE GLOTTAL OA;Lo;0;L;;;;;N;;;;; -2D8B;ETHIOPIC SYLLABLE ZOA;Lo;0;L;;;;;N;;;;; -2D8C;ETHIOPIC SYLLABLE DOA;Lo;0;L;;;;;N;;;;; -2D8D;ETHIOPIC SYLLABLE DDOA;Lo;0;L;;;;;N;;;;; -2D8E;ETHIOPIC SYLLABLE JOA;Lo;0;L;;;;;N;;;;; -2D8F;ETHIOPIC SYLLABLE THOA;Lo;0;L;;;;;N;;;;; -2D90;ETHIOPIC SYLLABLE CHOA;Lo;0;L;;;;;N;;;;; -2D91;ETHIOPIC SYLLABLE PHOA;Lo;0;L;;;;;N;;;;; -2D92;ETHIOPIC SYLLABLE POA;Lo;0;L;;;;;N;;;;; -2D93;ETHIOPIC SYLLABLE GGWA;Lo;0;L;;;;;N;;;;; -2D94;ETHIOPIC SYLLABLE GGWI;Lo;0;L;;;;;N;;;;; -2D95;ETHIOPIC SYLLABLE GGWEE;Lo;0;L;;;;;N;;;;; -2D96;ETHIOPIC SYLLABLE GGWE;Lo;0;L;;;;;N;;;;; -2DA0;ETHIOPIC SYLLABLE SSA;Lo;0;L;;;;;N;;;;; -2DA1;ETHIOPIC SYLLABLE SSU;Lo;0;L;;;;;N;;;;; -2DA2;ETHIOPIC SYLLABLE SSI;Lo;0;L;;;;;N;;;;; -2DA3;ETHIOPIC SYLLABLE SSAA;Lo;0;L;;;;;N;;;;; -2DA4;ETHIOPIC SYLLABLE SSEE;Lo;0;L;;;;;N;;;;; -2DA5;ETHIOPIC SYLLABLE SSE;Lo;0;L;;;;;N;;;;; -2DA6;ETHIOPIC SYLLABLE SSO;Lo;0;L;;;;;N;;;;; -2DA8;ETHIOPIC SYLLABLE CCA;Lo;0;L;;;;;N;;;;; -2DA9;ETHIOPIC SYLLABLE CCU;Lo;0;L;;;;;N;;;;; -2DAA;ETHIOPIC SYLLABLE CCI;Lo;0;L;;;;;N;;;;; -2DAB;ETHIOPIC SYLLABLE CCAA;Lo;0;L;;;;;N;;;;; -2DAC;ETHIOPIC SYLLABLE CCEE;Lo;0;L;;;;;N;;;;; -2DAD;ETHIOPIC SYLLABLE CCE;Lo;0;L;;;;;N;;;;; -2DAE;ETHIOPIC SYLLABLE CCO;Lo;0;L;;;;;N;;;;; -2DB0;ETHIOPIC SYLLABLE ZZA;Lo;0;L;;;;;N;;;;; -2DB1;ETHIOPIC SYLLABLE ZZU;Lo;0;L;;;;;N;;;;; -2DB2;ETHIOPIC SYLLABLE ZZI;Lo;0;L;;;;;N;;;;; -2DB3;ETHIOPIC SYLLABLE ZZAA;Lo;0;L;;;;;N;;;;; -2DB4;ETHIOPIC SYLLABLE ZZEE;Lo;0;L;;;;;N;;;;; -2DB5;ETHIOPIC SYLLABLE ZZE;Lo;0;L;;;;;N;;;;; -2DB6;ETHIOPIC SYLLABLE ZZO;Lo;0;L;;;;;N;;;;; -2DB8;ETHIOPIC SYLLABLE CCHA;Lo;0;L;;;;;N;;;;; -2DB9;ETHIOPIC SYLLABLE CCHU;Lo;0;L;;;;;N;;;;; -2DBA;ETHIOPIC SYLLABLE CCHI;Lo;0;L;;;;;N;;;;; -2DBB;ETHIOPIC SYLLABLE CCHAA;Lo;0;L;;;;;N;;;;; -2DBC;ETHIOPIC SYLLABLE CCHEE;Lo;0;L;;;;;N;;;;; -2DBD;ETHIOPIC SYLLABLE CCHE;Lo;0;L;;;;;N;;;;; -2DBE;ETHIOPIC SYLLABLE CCHO;Lo;0;L;;;;;N;;;;; -2DC0;ETHIOPIC SYLLABLE QYA;Lo;0;L;;;;;N;;;;; -2DC1;ETHIOPIC SYLLABLE QYU;Lo;0;L;;;;;N;;;;; -2DC2;ETHIOPIC SYLLABLE QYI;Lo;0;L;;;;;N;;;;; -2DC3;ETHIOPIC SYLLABLE QYAA;Lo;0;L;;;;;N;;;;; -2DC4;ETHIOPIC SYLLABLE QYEE;Lo;0;L;;;;;N;;;;; -2DC5;ETHIOPIC SYLLABLE QYE;Lo;0;L;;;;;N;;;;; -2DC6;ETHIOPIC SYLLABLE QYO;Lo;0;L;;;;;N;;;;; -2DC8;ETHIOPIC SYLLABLE KYA;Lo;0;L;;;;;N;;;;; -2DC9;ETHIOPIC SYLLABLE KYU;Lo;0;L;;;;;N;;;;; -2DCA;ETHIOPIC SYLLABLE KYI;Lo;0;L;;;;;N;;;;; -2DCB;ETHIOPIC SYLLABLE KYAA;Lo;0;L;;;;;N;;;;; -2DCC;ETHIOPIC SYLLABLE KYEE;Lo;0;L;;;;;N;;;;; -2DCD;ETHIOPIC SYLLABLE KYE;Lo;0;L;;;;;N;;;;; -2DCE;ETHIOPIC SYLLABLE KYO;Lo;0;L;;;;;N;;;;; -2DD0;ETHIOPIC SYLLABLE XYA;Lo;0;L;;;;;N;;;;; -2DD1;ETHIOPIC SYLLABLE XYU;Lo;0;L;;;;;N;;;;; -2DD2;ETHIOPIC SYLLABLE XYI;Lo;0;L;;;;;N;;;;; -2DD3;ETHIOPIC SYLLABLE XYAA;Lo;0;L;;;;;N;;;;; -2DD4;ETHIOPIC SYLLABLE XYEE;Lo;0;L;;;;;N;;;;; -2DD5;ETHIOPIC SYLLABLE XYE;Lo;0;L;;;;;N;;;;; -2DD6;ETHIOPIC SYLLABLE XYO;Lo;0;L;;;;;N;;;;; -2DD8;ETHIOPIC SYLLABLE GYA;Lo;0;L;;;;;N;;;;; -2DD9;ETHIOPIC SYLLABLE GYU;Lo;0;L;;;;;N;;;;; -2DDA;ETHIOPIC SYLLABLE GYI;Lo;0;L;;;;;N;;;;; -2DDB;ETHIOPIC SYLLABLE GYAA;Lo;0;L;;;;;N;;;;; -2DDC;ETHIOPIC SYLLABLE GYEE;Lo;0;L;;;;;N;;;;; -2DDD;ETHIOPIC SYLLABLE GYE;Lo;0;L;;;;;N;;;;; -2DDE;ETHIOPIC SYLLABLE GYO;Lo;0;L;;;;;N;;;;; -2DE0;COMBINING CYRILLIC LETTER BE;Mn;230;NSM;;;;;N;;;;; -2DE1;COMBINING CYRILLIC LETTER VE;Mn;230;NSM;;;;;N;;;;; -2DE2;COMBINING CYRILLIC LETTER GHE;Mn;230;NSM;;;;;N;;;;; -2DE3;COMBINING CYRILLIC LETTER DE;Mn;230;NSM;;;;;N;;;;; -2DE4;COMBINING CYRILLIC LETTER ZHE;Mn;230;NSM;;;;;N;;;;; -2DE5;COMBINING CYRILLIC LETTER ZE;Mn;230;NSM;;;;;N;;;;; -2DE6;COMBINING CYRILLIC LETTER KA;Mn;230;NSM;;;;;N;;;;; -2DE7;COMBINING CYRILLIC LETTER EL;Mn;230;NSM;;;;;N;;;;; -2DE8;COMBINING CYRILLIC LETTER EM;Mn;230;NSM;;;;;N;;;;; -2DE9;COMBINING CYRILLIC LETTER EN;Mn;230;NSM;;;;;N;;;;; -2DEA;COMBINING CYRILLIC LETTER O;Mn;230;NSM;;;;;N;;;;; -2DEB;COMBINING CYRILLIC LETTER PE;Mn;230;NSM;;;;;N;;;;; -2DEC;COMBINING CYRILLIC LETTER ER;Mn;230;NSM;;;;;N;;;;; -2DED;COMBINING CYRILLIC LETTER ES;Mn;230;NSM;;;;;N;;;;; -2DEE;COMBINING CYRILLIC LETTER TE;Mn;230;NSM;;;;;N;;;;; -2DEF;COMBINING CYRILLIC LETTER HA;Mn;230;NSM;;;;;N;;;;; -2DF0;COMBINING CYRILLIC LETTER TSE;Mn;230;NSM;;;;;N;;;;; -2DF1;COMBINING CYRILLIC LETTER CHE;Mn;230;NSM;;;;;N;;;;; -2DF2;COMBINING CYRILLIC LETTER SHA;Mn;230;NSM;;;;;N;;;;; -2DF3;COMBINING CYRILLIC LETTER SHCHA;Mn;230;NSM;;;;;N;;;;; -2DF4;COMBINING CYRILLIC LETTER FITA;Mn;230;NSM;;;;;N;;;;; -2DF5;COMBINING CYRILLIC LETTER ES-TE;Mn;230;NSM;;;;;N;;;;; -2DF6;COMBINING CYRILLIC LETTER A;Mn;230;NSM;;;;;N;;;;; -2DF7;COMBINING CYRILLIC LETTER IE;Mn;230;NSM;;;;;N;;;;; -2DF8;COMBINING CYRILLIC LETTER DJERV;Mn;230;NSM;;;;;N;;;;; -2DF9;COMBINING CYRILLIC LETTER MONOGRAPH UK;Mn;230;NSM;;;;;N;;;;; -2DFA;COMBINING CYRILLIC LETTER YAT;Mn;230;NSM;;;;;N;;;;; -2DFB;COMBINING CYRILLIC LETTER YU;Mn;230;NSM;;;;;N;;;;; -2DFC;COMBINING CYRILLIC LETTER IOTIFIED A;Mn;230;NSM;;;;;N;;;;; -2DFD;COMBINING CYRILLIC LETTER LITTLE YUS;Mn;230;NSM;;;;;N;;;;; -2DFE;COMBINING CYRILLIC LETTER BIG YUS;Mn;230;NSM;;;;;N;;;;; -2DFF;COMBINING CYRILLIC LETTER IOTIFIED BIG YUS;Mn;230;NSM;;;;;N;;;;; -2E00;RIGHT ANGLE SUBSTITUTION MARKER;Po;0;ON;;;;;N;;;;; -2E01;RIGHT ANGLE DOTTED SUBSTITUTION MARKER;Po;0;ON;;;;;N;;;;; -2E02;LEFT SUBSTITUTION BRACKET;Pi;0;ON;;;;;Y;;;;; -2E03;RIGHT SUBSTITUTION BRACKET;Pf;0;ON;;;;;Y;;;;; -2E04;LEFT DOTTED SUBSTITUTION BRACKET;Pi;0;ON;;;;;Y;;;;; -2E05;RIGHT DOTTED SUBSTITUTION BRACKET;Pf;0;ON;;;;;Y;;;;; -2E06;RAISED INTERPOLATION MARKER;Po;0;ON;;;;;N;;;;; -2E07;RAISED DOTTED INTERPOLATION MARKER;Po;0;ON;;;;;N;;;;; -2E08;DOTTED TRANSPOSITION MARKER;Po;0;ON;;;;;N;;;;; -2E09;LEFT TRANSPOSITION BRACKET;Pi;0;ON;;;;;Y;;;;; -2E0A;RIGHT TRANSPOSITION BRACKET;Pf;0;ON;;;;;Y;;;;; -2E0B;RAISED SQUARE;Po;0;ON;;;;;N;;;;; -2E0C;LEFT RAISED OMISSION BRACKET;Pi;0;ON;;;;;Y;;;;; -2E0D;RIGHT RAISED OMISSION BRACKET;Pf;0;ON;;;;;Y;;;;; -2E0E;EDITORIAL CORONIS;Po;0;ON;;;;;N;;;;; -2E0F;PARAGRAPHOS;Po;0;ON;;;;;N;;;;; -2E10;FORKED PARAGRAPHOS;Po;0;ON;;;;;N;;;;; -2E11;REVERSED FORKED PARAGRAPHOS;Po;0;ON;;;;;N;;;;; -2E12;HYPODIASTOLE;Po;0;ON;;;;;N;;;;; -2E13;DOTTED OBELOS;Po;0;ON;;;;;N;;;;; -2E14;DOWNWARDS ANCORA;Po;0;ON;;;;;N;;;;; -2E15;UPWARDS ANCORA;Po;0;ON;;;;;N;;;;; -2E16;DOTTED RIGHT-POINTING ANGLE;Po;0;ON;;;;;N;;;;; -2E17;DOUBLE OBLIQUE HYPHEN;Pd;0;ON;;;;;N;;;;; -2E18;INVERTED INTERROBANG;Po;0;ON;;;;;N;;;;; -2E19;PALM BRANCH;Po;0;ON;;;;;N;;;;; -2E1A;HYPHEN WITH DIAERESIS;Pd;0;ON;;;;;N;;;;; -2E1B;TILDE WITH RING ABOVE;Po;0;ON;;;;;N;;;;; -2E1C;LEFT LOW PARAPHRASE BRACKET;Pi;0;ON;;;;;Y;;;;; -2E1D;RIGHT LOW PARAPHRASE BRACKET;Pf;0;ON;;;;;Y;;;;; -2E1E;TILDE WITH DOT ABOVE;Po;0;ON;;;;;N;;;;; -2E1F;TILDE WITH DOT BELOW;Po;0;ON;;;;;N;;;;; -2E20;LEFT VERTICAL BAR WITH QUILL;Pi;0;ON;;;;;Y;;;;; -2E21;RIGHT VERTICAL BAR WITH QUILL;Pf;0;ON;;;;;Y;;;;; -2E22;TOP LEFT HALF BRACKET;Ps;0;ON;;;;;Y;;;;; -2E23;TOP RIGHT HALF BRACKET;Pe;0;ON;;;;;Y;;;;; -2E24;BOTTOM LEFT HALF BRACKET;Ps;0;ON;;;;;Y;;;;; -2E25;BOTTOM RIGHT HALF BRACKET;Pe;0;ON;;;;;Y;;;;; -2E26;LEFT SIDEWAYS U BRACKET;Ps;0;ON;;;;;Y;;;;; -2E27;RIGHT SIDEWAYS U BRACKET;Pe;0;ON;;;;;Y;;;;; -2E28;LEFT DOUBLE PARENTHESIS;Ps;0;ON;;;;;Y;;;;; -2E29;RIGHT DOUBLE PARENTHESIS;Pe;0;ON;;;;;Y;;;;; -2E2A;TWO DOTS OVER ONE DOT PUNCTUATION;Po;0;ON;;;;;N;;;;; -2E2B;ONE DOT OVER TWO DOTS PUNCTUATION;Po;0;ON;;;;;N;;;;; -2E2C;SQUARED FOUR DOT PUNCTUATION;Po;0;ON;;;;;N;;;;; -2E2D;FIVE DOT MARK;Po;0;ON;;;;;N;;;;; -2E2E;REVERSED QUESTION MARK;Po;0;ON;;;;;N;;;;; -2E2F;VERTICAL TILDE;Lm;0;ON;;;;;N;;;;; -2E30;RING POINT;Po;0;ON;;;;;N;;;;; -2E31;WORD SEPARATOR MIDDLE DOT;Po;0;ON;;;;;N;;;;; -2E80;CJK RADICAL REPEAT;So;0;ON;;;;;N;;;;; -2E81;CJK RADICAL CLIFF;So;0;ON;;;;;N;;;;; -2E82;CJK RADICAL SECOND ONE;So;0;ON;;;;;N;;;;; -2E83;CJK RADICAL SECOND TWO;So;0;ON;;;;;N;;;;; -2E84;CJK RADICAL SECOND THREE;So;0;ON;;;;;N;;;;; -2E85;CJK RADICAL PERSON;So;0;ON;;;;;N;;;;; -2E86;CJK RADICAL BOX;So;0;ON;;;;;N;;;;; -2E87;CJK RADICAL TABLE;So;0;ON;;;;;N;;;;; -2E88;CJK RADICAL KNIFE ONE;So;0;ON;;;;;N;;;;; -2E89;CJK RADICAL KNIFE TWO;So;0;ON;;;;;N;;;;; -2E8A;CJK RADICAL DIVINATION;So;0;ON;;;;;N;;;;; -2E8B;CJK RADICAL SEAL;So;0;ON;;;;;N;;;;; -2E8C;CJK RADICAL SMALL ONE;So;0;ON;;;;;N;;;;; -2E8D;CJK RADICAL SMALL TWO;So;0;ON;;;;;N;;;;; -2E8E;CJK RADICAL LAME ONE;So;0;ON;;;;;N;;;;; -2E8F;CJK RADICAL LAME TWO;So;0;ON;;;;;N;;;;; -2E90;CJK RADICAL LAME THREE;So;0;ON;;;;;N;;;;; -2E91;CJK RADICAL LAME FOUR;So;0;ON;;;;;N;;;;; -2E92;CJK RADICAL SNAKE;So;0;ON;;;;;N;;;;; -2E93;CJK RADICAL THREAD;So;0;ON;;;;;N;;;;; -2E94;CJK RADICAL SNOUT ONE;So;0;ON;;;;;N;;;;; -2E95;CJK RADICAL SNOUT TWO;So;0;ON;;;;;N;;;;; -2E96;CJK RADICAL HEART ONE;So;0;ON;;;;;N;;;;; -2E97;CJK RADICAL HEART TWO;So;0;ON;;;;;N;;;;; -2E98;CJK RADICAL HAND;So;0;ON;;;;;N;;;;; -2E99;CJK RADICAL RAP;So;0;ON;;;;;N;;;;; -2E9B;CJK RADICAL CHOKE;So;0;ON;;;;;N;;;;; -2E9C;CJK RADICAL SUN;So;0;ON;;;;;N;;;;; -2E9D;CJK RADICAL MOON;So;0;ON;;;;;N;;;;; -2E9E;CJK RADICAL DEATH;So;0;ON;;;;;N;;;;; -2E9F;CJK RADICAL MOTHER;So;0;ON; 6BCD;;;;N;;;;; -2EA0;CJK RADICAL CIVILIAN;So;0;ON;;;;;N;;;;; -2EA1;CJK RADICAL WATER ONE;So;0;ON;;;;;N;;;;; -2EA2;CJK RADICAL WATER TWO;So;0;ON;;;;;N;;;;; -2EA3;CJK RADICAL FIRE;So;0;ON;;;;;N;;;;; -2EA4;CJK RADICAL PAW ONE;So;0;ON;;;;;N;;;;; -2EA5;CJK RADICAL PAW TWO;So;0;ON;;;;;N;;;;; -2EA6;CJK RADICAL SIMPLIFIED HALF TREE TRUNK;So;0;ON;;;;;N;;;;; -2EA7;CJK RADICAL COW;So;0;ON;;;;;N;;;;; -2EA8;CJK RADICAL DOG;So;0;ON;;;;;N;;;;; -2EA9;CJK RADICAL JADE;So;0;ON;;;;;N;;;;; -2EAA;CJK RADICAL BOLT OF CLOTH;So;0;ON;;;;;N;;;;; -2EAB;CJK RADICAL EYE;So;0;ON;;;;;N;;;;; -2EAC;CJK RADICAL SPIRIT ONE;So;0;ON;;;;;N;;;;; -2EAD;CJK RADICAL SPIRIT TWO;So;0;ON;;;;;N;;;;; -2EAE;CJK RADICAL BAMBOO;So;0;ON;;;;;N;;;;; -2EAF;CJK RADICAL SILK;So;0;ON;;;;;N;;;;; -2EB0;CJK RADICAL C-SIMPLIFIED SILK;So;0;ON;;;;;N;;;;; -2EB1;CJK RADICAL NET ONE;So;0;ON;;;;;N;;;;; -2EB2;CJK RADICAL NET TWO;So;0;ON;;;;;N;;;;; -2EB3;CJK RADICAL NET THREE;So;0;ON;;;;;N;;;;; -2EB4;CJK RADICAL NET FOUR;So;0;ON;;;;;N;;;;; -2EB5;CJK RADICAL MESH;So;0;ON;;;;;N;;;;; -2EB6;CJK RADICAL SHEEP;So;0;ON;;;;;N;;;;; -2EB7;CJK RADICAL RAM;So;0;ON;;;;;N;;;;; -2EB8;CJK RADICAL EWE;So;0;ON;;;;;N;;;;; -2EB9;CJK RADICAL OLD;So;0;ON;;;;;N;;;;; -2EBA;CJK RADICAL BRUSH ONE;So;0;ON;;;;;N;;;;; -2EBB;CJK RADICAL BRUSH TWO;So;0;ON;;;;;N;;;;; -2EBC;CJK RADICAL MEAT;So;0;ON;;;;;N;;;;; -2EBD;CJK RADICAL MORTAR;So;0;ON;;;;;N;;;;; -2EBE;CJK RADICAL GRASS ONE;So;0;ON;;;;;N;;;;; -2EBF;CJK RADICAL GRASS TWO;So;0;ON;;;;;N;;;;; -2EC0;CJK RADICAL GRASS THREE;So;0;ON;;;;;N;;;;; -2EC1;CJK RADICAL TIGER;So;0;ON;;;;;N;;;;; -2EC2;CJK RADICAL CLOTHES;So;0;ON;;;;;N;;;;; -2EC3;CJK RADICAL WEST ONE;So;0;ON;;;;;N;;;;; -2EC4;CJK RADICAL WEST TWO;So;0;ON;;;;;N;;;;; -2EC5;CJK RADICAL C-SIMPLIFIED SEE;So;0;ON;;;;;N;;;;; -2EC6;CJK RADICAL SIMPLIFIED HORN;So;0;ON;;;;;N;;;;; -2EC7;CJK RADICAL HORN;So;0;ON;;;;;N;;;;; -2EC8;CJK RADICAL C-SIMPLIFIED SPEECH;So;0;ON;;;;;N;;;;; -2EC9;CJK RADICAL C-SIMPLIFIED SHELL;So;0;ON;;;;;N;;;;; -2ECA;CJK RADICAL FOOT;So;0;ON;;;;;N;;;;; -2ECB;CJK RADICAL C-SIMPLIFIED CART;So;0;ON;;;;;N;;;;; -2ECC;CJK RADICAL SIMPLIFIED WALK;So;0;ON;;;;;N;;;;; -2ECD;CJK RADICAL WALK ONE;So;0;ON;;;;;N;;;;; -2ECE;CJK RADICAL WALK TWO;So;0;ON;;;;;N;;;;; -2ECF;CJK RADICAL CITY;So;0;ON;;;;;N;;;;; -2ED0;CJK RADICAL C-SIMPLIFIED GOLD;So;0;ON;;;;;N;;;;; -2ED1;CJK RADICAL LONG ONE;So;0;ON;;;;;N;;;;; -2ED2;CJK RADICAL LONG TWO;So;0;ON;;;;;N;;;;; -2ED3;CJK RADICAL C-SIMPLIFIED LONG;So;0;ON;;;;;N;;;;; -2ED4;CJK RADICAL C-SIMPLIFIED GATE;So;0;ON;;;;;N;;;;; -2ED5;CJK RADICAL MOUND ONE;So;0;ON;;;;;N;;;;; -2ED6;CJK RADICAL MOUND TWO;So;0;ON;;;;;N;;;;; -2ED7;CJK RADICAL RAIN;So;0;ON;;;;;N;;;;; -2ED8;CJK RADICAL BLUE;So;0;ON;;;;;N;;;;; -2ED9;CJK RADICAL C-SIMPLIFIED TANNED LEATHER;So;0;ON;;;;;N;;;;; -2EDA;CJK RADICAL C-SIMPLIFIED LEAF;So;0;ON;;;;;N;;;;; -2EDB;CJK RADICAL C-SIMPLIFIED WIND;So;0;ON;;;;;N;;;;; -2EDC;CJK RADICAL C-SIMPLIFIED FLY;So;0;ON;;;;;N;;;;; -2EDD;CJK RADICAL EAT ONE;So;0;ON;;;;;N;;;;; -2EDE;CJK RADICAL EAT TWO;So;0;ON;;;;;N;;;;; -2EDF;CJK RADICAL EAT THREE;So;0;ON;;;;;N;;;;; -2EE0;CJK RADICAL C-SIMPLIFIED EAT;So;0;ON;;;;;N;;;;; -2EE1;CJK RADICAL HEAD;So;0;ON;;;;;N;;;;; -2EE2;CJK RADICAL C-SIMPLIFIED HORSE;So;0;ON;;;;;N;;;;; -2EE3;CJK RADICAL BONE;So;0;ON;;;;;N;;;;; -2EE4;CJK RADICAL GHOST;So;0;ON;;;;;N;;;;; -2EE5;CJK RADICAL C-SIMPLIFIED FISH;So;0;ON;;;;;N;;;;; -2EE6;CJK RADICAL C-SIMPLIFIED BIRD;So;0;ON;;;;;N;;;;; -2EE7;CJK RADICAL C-SIMPLIFIED SALT;So;0;ON;;;;;N;;;;; -2EE8;CJK RADICAL SIMPLIFIED WHEAT;So;0;ON;;;;;N;;;;; -2EE9;CJK RADICAL SIMPLIFIED YELLOW;So;0;ON;;;;;N;;;;; -2EEA;CJK RADICAL C-SIMPLIFIED FROG;So;0;ON;;;;;N;;;;; -2EEB;CJK RADICAL J-SIMPLIFIED EVEN;So;0;ON;;;;;N;;;;; -2EEC;CJK RADICAL C-SIMPLIFIED EVEN;So;0;ON;;;;;N;;;;; -2EED;CJK RADICAL J-SIMPLIFIED TOOTH;So;0;ON;;;;;N;;;;; -2EEE;CJK RADICAL C-SIMPLIFIED TOOTH;So;0;ON;;;;;N;;;;; -2EEF;CJK RADICAL J-SIMPLIFIED DRAGON;So;0;ON;;;;;N;;;;; -2EF0;CJK RADICAL C-SIMPLIFIED DRAGON;So;0;ON;;;;;N;;;;; -2EF1;CJK RADICAL TURTLE;So;0;ON;;;;;N;;;;; -2EF2;CJK RADICAL J-SIMPLIFIED TURTLE;So;0;ON;;;;;N;;;;; -2EF3;CJK RADICAL C-SIMPLIFIED TURTLE;So;0;ON; 9F9F;;;;N;;;;; -2F00;KANGXI RADICAL ONE;So;0;ON; 4E00;;;;N;;;;; -2F01;KANGXI RADICAL LINE;So;0;ON; 4E28;;;;N;;;;; -2F02;KANGXI RADICAL DOT;So;0;ON; 4E36;;;;N;;;;; -2F03;KANGXI RADICAL SLASH;So;0;ON; 4E3F;;;;N;;;;; -2F04;KANGXI RADICAL SECOND;So;0;ON; 4E59;;;;N;;;;; -2F05;KANGXI RADICAL HOOK;So;0;ON; 4E85;;;;N;;;;; -2F06;KANGXI RADICAL TWO;So;0;ON; 4E8C;;;;N;;;;; -2F07;KANGXI RADICAL LID;So;0;ON; 4EA0;;;;N;;;;; -2F08;KANGXI RADICAL MAN;So;0;ON; 4EBA;;;;N;;;;; -2F09;KANGXI RADICAL LEGS;So;0;ON; 513F;;;;N;;;;; -2F0A;KANGXI RADICAL ENTER;So;0;ON; 5165;;;;N;;;;; -2F0B;KANGXI RADICAL EIGHT;So;0;ON; 516B;;;;N;;;;; -2F0C;KANGXI RADICAL DOWN BOX;So;0;ON; 5182;;;;N;;;;; -2F0D;KANGXI RADICAL COVER;So;0;ON; 5196;;;;N;;;;; -2F0E;KANGXI RADICAL ICE;So;0;ON; 51AB;;;;N;;;;; -2F0F;KANGXI RADICAL TABLE;So;0;ON; 51E0;;;;N;;;;; -2F10;KANGXI RADICAL OPEN BOX;So;0;ON; 51F5;;;;N;;;;; -2F11;KANGXI RADICAL KNIFE;So;0;ON; 5200;;;;N;;;;; -2F12;KANGXI RADICAL POWER;So;0;ON; 529B;;;;N;;;;; -2F13;KANGXI RADICAL WRAP;So;0;ON; 52F9;;;;N;;;;; -2F14;KANGXI RADICAL SPOON;So;0;ON; 5315;;;;N;;;;; -2F15;KANGXI RADICAL RIGHT OPEN BOX;So;0;ON; 531A;;;;N;;;;; -2F16;KANGXI RADICAL HIDING ENCLOSURE;So;0;ON; 5338;;;;N;;;;; -2F17;KANGXI RADICAL TEN;So;0;ON; 5341;;;;N;;;;; -2F18;KANGXI RADICAL DIVINATION;So;0;ON; 535C;;;;N;;;;; -2F19;KANGXI RADICAL SEAL;So;0;ON; 5369;;;;N;;;;; -2F1A;KANGXI RADICAL CLIFF;So;0;ON; 5382;;;;N;;;;; -2F1B;KANGXI RADICAL PRIVATE;So;0;ON; 53B6;;;;N;;;;; -2F1C;KANGXI RADICAL AGAIN;So;0;ON; 53C8;;;;N;;;;; -2F1D;KANGXI RADICAL MOUTH;So;0;ON; 53E3;;;;N;;;;; -2F1E;KANGXI RADICAL ENCLOSURE;So;0;ON; 56D7;;;;N;;;;; -2F1F;KANGXI RADICAL EARTH;So;0;ON; 571F;;;;N;;;;; -2F20;KANGXI RADICAL SCHOLAR;So;0;ON; 58EB;;;;N;;;;; -2F21;KANGXI RADICAL GO;So;0;ON; 5902;;;;N;;;;; -2F22;KANGXI RADICAL GO SLOWLY;So;0;ON; 590A;;;;N;;;;; -2F23;KANGXI RADICAL EVENING;So;0;ON; 5915;;;;N;;;;; -2F24;KANGXI RADICAL BIG;So;0;ON; 5927;;;;N;;;;; -2F25;KANGXI RADICAL WOMAN;So;0;ON; 5973;;;;N;;;;; -2F26;KANGXI RADICAL CHILD;So;0;ON; 5B50;;;;N;;;;; -2F27;KANGXI RADICAL ROOF;So;0;ON; 5B80;;;;N;;;;; -2F28;KANGXI RADICAL INCH;So;0;ON; 5BF8;;;;N;;;;; -2F29;KANGXI RADICAL SMALL;So;0;ON; 5C0F;;;;N;;;;; -2F2A;KANGXI RADICAL LAME;So;0;ON; 5C22;;;;N;;;;; -2F2B;KANGXI RADICAL CORPSE;So;0;ON; 5C38;;;;N;;;;; -2F2C;KANGXI RADICAL SPROUT;So;0;ON; 5C6E;;;;N;;;;; -2F2D;KANGXI RADICAL MOUNTAIN;So;0;ON; 5C71;;;;N;;;;; -2F2E;KANGXI RADICAL RIVER;So;0;ON; 5DDB;;;;N;;;;; -2F2F;KANGXI RADICAL WORK;So;0;ON; 5DE5;;;;N;;;;; -2F30;KANGXI RADICAL ONESELF;So;0;ON; 5DF1;;;;N;;;;; -2F31;KANGXI RADICAL TURBAN;So;0;ON; 5DFE;;;;N;;;;; -2F32;KANGXI RADICAL DRY;So;0;ON; 5E72;;;;N;;;;; -2F33;KANGXI RADICAL SHORT THREAD;So;0;ON; 5E7A;;;;N;;;;; -2F34;KANGXI RADICAL DOTTED CLIFF;So;0;ON; 5E7F;;;;N;;;;; -2F35;KANGXI RADICAL LONG STRIDE;So;0;ON; 5EF4;;;;N;;;;; -2F36;KANGXI RADICAL TWO HANDS;So;0;ON; 5EFE;;;;N;;;;; -2F37;KANGXI RADICAL SHOOT;So;0;ON; 5F0B;;;;N;;;;; -2F38;KANGXI RADICAL BOW;So;0;ON; 5F13;;;;N;;;;; -2F39;KANGXI RADICAL SNOUT;So;0;ON; 5F50;;;;N;;;;; -2F3A;KANGXI RADICAL BRISTLE;So;0;ON; 5F61;;;;N;;;;; -2F3B;KANGXI RADICAL STEP;So;0;ON; 5F73;;;;N;;;;; -2F3C;KANGXI RADICAL HEART;So;0;ON; 5FC3;;;;N;;;;; -2F3D;KANGXI RADICAL HALBERD;So;0;ON; 6208;;;;N;;;;; -2F3E;KANGXI RADICAL DOOR;So;0;ON; 6236;;;;N;;;;; -2F3F;KANGXI RADICAL HAND;So;0;ON; 624B;;;;N;;;;; -2F40;KANGXI RADICAL BRANCH;So;0;ON; 652F;;;;N;;;;; -2F41;KANGXI RADICAL RAP;So;0;ON; 6534;;;;N;;;;; -2F42;KANGXI RADICAL SCRIPT;So;0;ON; 6587;;;;N;;;;; -2F43;KANGXI RADICAL DIPPER;So;0;ON; 6597;;;;N;;;;; -2F44;KANGXI RADICAL AXE;So;0;ON; 65A4;;;;N;;;;; -2F45;KANGXI RADICAL SQUARE;So;0;ON; 65B9;;;;N;;;;; -2F46;KANGXI RADICAL NOT;So;0;ON; 65E0;;;;N;;;;; -2F47;KANGXI RADICAL SUN;So;0;ON; 65E5;;;;N;;;;; -2F48;KANGXI RADICAL SAY;So;0;ON; 66F0;;;;N;;;;; -2F49;KANGXI RADICAL MOON;So;0;ON; 6708;;;;N;;;;; -2F4A;KANGXI RADICAL TREE;So;0;ON; 6728;;;;N;;;;; -2F4B;KANGXI RADICAL LACK;So;0;ON; 6B20;;;;N;;;;; -2F4C;KANGXI RADICAL STOP;So;0;ON; 6B62;;;;N;;;;; -2F4D;KANGXI RADICAL DEATH;So;0;ON; 6B79;;;;N;;;;; -2F4E;KANGXI RADICAL WEAPON;So;0;ON; 6BB3;;;;N;;;;; -2F4F;KANGXI RADICAL DO NOT;So;0;ON; 6BCB;;;;N;;;;; -2F50;KANGXI RADICAL COMPARE;So;0;ON; 6BD4;;;;N;;;;; -2F51;KANGXI RADICAL FUR;So;0;ON; 6BDB;;;;N;;;;; -2F52;KANGXI RADICAL CLAN;So;0;ON; 6C0F;;;;N;;;;; -2F53;KANGXI RADICAL STEAM;So;0;ON; 6C14;;;;N;;;;; -2F54;KANGXI RADICAL WATER;So;0;ON; 6C34;;;;N;;;;; -2F55;KANGXI RADICAL FIRE;So;0;ON; 706B;;;;N;;;;; -2F56;KANGXI RADICAL CLAW;So;0;ON; 722A;;;;N;;;;; -2F57;KANGXI RADICAL FATHER;So;0;ON; 7236;;;;N;;;;; -2F58;KANGXI RADICAL DOUBLE X;So;0;ON; 723B;;;;N;;;;; -2F59;KANGXI RADICAL HALF TREE TRUNK;So;0;ON; 723F;;;;N;;;;; -2F5A;KANGXI RADICAL SLICE;So;0;ON; 7247;;;;N;;;;; -2F5B;KANGXI RADICAL FANG;So;0;ON; 7259;;;;N;;;;; -2F5C;KANGXI RADICAL COW;So;0;ON; 725B;;;;N;;;;; -2F5D;KANGXI RADICAL DOG;So;0;ON; 72AC;;;;N;;;;; -2F5E;KANGXI RADICAL PROFOUND;So;0;ON; 7384;;;;N;;;;; -2F5F;KANGXI RADICAL JADE;So;0;ON; 7389;;;;N;;;;; -2F60;KANGXI RADICAL MELON;So;0;ON; 74DC;;;;N;;;;; -2F61;KANGXI RADICAL TILE;So;0;ON; 74E6;;;;N;;;;; -2F62;KANGXI RADICAL SWEET;So;0;ON; 7518;;;;N;;;;; -2F63;KANGXI RADICAL LIFE;So;0;ON; 751F;;;;N;;;;; -2F64;KANGXI RADICAL USE;So;0;ON; 7528;;;;N;;;;; -2F65;KANGXI RADICAL FIELD;So;0;ON; 7530;;;;N;;;;; -2F66;KANGXI RADICAL BOLT OF CLOTH;So;0;ON; 758B;;;;N;;;;; -2F67;KANGXI RADICAL SICKNESS;So;0;ON; 7592;;;;N;;;;; -2F68;KANGXI RADICAL DOTTED TENT;So;0;ON; 7676;;;;N;;;;; -2F69;KANGXI RADICAL WHITE;So;0;ON; 767D;;;;N;;;;; -2F6A;KANGXI RADICAL SKIN;So;0;ON; 76AE;;;;N;;;;; -2F6B;KANGXI RADICAL DISH;So;0;ON; 76BF;;;;N;;;;; -2F6C;KANGXI RADICAL EYE;So;0;ON; 76EE;;;;N;;;;; -2F6D;KANGXI RADICAL SPEAR;So;0;ON; 77DB;;;;N;;;;; -2F6E;KANGXI RADICAL ARROW;So;0;ON; 77E2;;;;N;;;;; -2F6F;KANGXI RADICAL STONE;So;0;ON; 77F3;;;;N;;;;; -2F70;KANGXI RADICAL SPIRIT;So;0;ON; 793A;;;;N;;;;; -2F71;KANGXI RADICAL TRACK;So;0;ON; 79B8;;;;N;;;;; -2F72;KANGXI RADICAL GRAIN;So;0;ON; 79BE;;;;N;;;;; -2F73;KANGXI RADICAL CAVE;So;0;ON; 7A74;;;;N;;;;; -2F74;KANGXI RADICAL STAND;So;0;ON; 7ACB;;;;N;;;;; -2F75;KANGXI RADICAL BAMBOO;So;0;ON; 7AF9;;;;N;;;;; -2F76;KANGXI RADICAL RICE;So;0;ON; 7C73;;;;N;;;;; -2F77;KANGXI RADICAL SILK;So;0;ON; 7CF8;;;;N;;;;; -2F78;KANGXI RADICAL JAR;So;0;ON; 7F36;;;;N;;;;; -2F79;KANGXI RADICAL NET;So;0;ON; 7F51;;;;N;;;;; -2F7A;KANGXI RADICAL SHEEP;So;0;ON; 7F8A;;;;N;;;;; -2F7B;KANGXI RADICAL FEATHER;So;0;ON; 7FBD;;;;N;;;;; -2F7C;KANGXI RADICAL OLD;So;0;ON; 8001;;;;N;;;;; -2F7D;KANGXI RADICAL AND;So;0;ON; 800C;;;;N;;;;; -2F7E;KANGXI RADICAL PLOW;So;0;ON; 8012;;;;N;;;;; -2F7F;KANGXI RADICAL EAR;So;0;ON; 8033;;;;N;;;;; -2F80;KANGXI RADICAL BRUSH;So;0;ON; 807F;;;;N;;;;; -2F81;KANGXI RADICAL MEAT;So;0;ON; 8089;;;;N;;;;; -2F82;KANGXI RADICAL MINISTER;So;0;ON; 81E3;;;;N;;;;; -2F83;KANGXI RADICAL SELF;So;0;ON; 81EA;;;;N;;;;; -2F84;KANGXI RADICAL ARRIVE;So;0;ON; 81F3;;;;N;;;;; -2F85;KANGXI RADICAL MORTAR;So;0;ON; 81FC;;;;N;;;;; -2F86;KANGXI RADICAL TONGUE;So;0;ON; 820C;;;;N;;;;; -2F87;KANGXI RADICAL OPPOSE;So;0;ON; 821B;;;;N;;;;; -2F88;KANGXI RADICAL BOAT;So;0;ON; 821F;;;;N;;;;; -2F89;KANGXI RADICAL STOPPING;So;0;ON; 826E;;;;N;;;;; -2F8A;KANGXI RADICAL COLOR;So;0;ON; 8272;;;;N;;;;; -2F8B;KANGXI RADICAL GRASS;So;0;ON; 8278;;;;N;;;;; -2F8C;KANGXI RADICAL TIGER;So;0;ON; 864D;;;;N;;;;; -2F8D;KANGXI RADICAL INSECT;So;0;ON; 866B;;;;N;;;;; -2F8E;KANGXI RADICAL BLOOD;So;0;ON; 8840;;;;N;;;;; -2F8F;KANGXI RADICAL WALK ENCLOSURE;So;0;ON; 884C;;;;N;;;;; -2F90;KANGXI RADICAL CLOTHES;So;0;ON; 8863;;;;N;;;;; -2F91;KANGXI RADICAL WEST;So;0;ON; 897E;;;;N;;;;; -2F92;KANGXI RADICAL SEE;So;0;ON; 898B;;;;N;;;;; -2F93;KANGXI RADICAL HORN;So;0;ON; 89D2;;;;N;;;;; -2F94;KANGXI RADICAL SPEECH;So;0;ON; 8A00;;;;N;;;;; -2F95;KANGXI RADICAL VALLEY;So;0;ON; 8C37;;;;N;;;;; -2F96;KANGXI RADICAL BEAN;So;0;ON; 8C46;;;;N;;;;; -2F97;KANGXI RADICAL PIG;So;0;ON; 8C55;;;;N;;;;; -2F98;KANGXI RADICAL BADGER;So;0;ON; 8C78;;;;N;;;;; -2F99;KANGXI RADICAL SHELL;So;0;ON; 8C9D;;;;N;;;;; -2F9A;KANGXI RADICAL RED;So;0;ON; 8D64;;;;N;;;;; -2F9B;KANGXI RADICAL RUN;So;0;ON; 8D70;;;;N;;;;; -2F9C;KANGXI RADICAL FOOT;So;0;ON; 8DB3;;;;N;;;;; -2F9D;KANGXI RADICAL BODY;So;0;ON; 8EAB;;;;N;;;;; -2F9E;KANGXI RADICAL CART;So;0;ON; 8ECA;;;;N;;;;; -2F9F;KANGXI RADICAL BITTER;So;0;ON; 8F9B;;;;N;;;;; -2FA0;KANGXI RADICAL MORNING;So;0;ON; 8FB0;;;;N;;;;; -2FA1;KANGXI RADICAL WALK;So;0;ON; 8FB5;;;;N;;;;; -2FA2;KANGXI RADICAL CITY;So;0;ON; 9091;;;;N;;;;; -2FA3;KANGXI RADICAL WINE;So;0;ON; 9149;;;;N;;;;; -2FA4;KANGXI RADICAL DISTINGUISH;So;0;ON; 91C6;;;;N;;;;; -2FA5;KANGXI RADICAL VILLAGE;So;0;ON; 91CC;;;;N;;;;; -2FA6;KANGXI RADICAL GOLD;So;0;ON; 91D1;;;;N;;;;; -2FA7;KANGXI RADICAL LONG;So;0;ON; 9577;;;;N;;;;; -2FA8;KANGXI RADICAL GATE;So;0;ON; 9580;;;;N;;;;; -2FA9;KANGXI RADICAL MOUND;So;0;ON; 961C;;;;N;;;;; -2FAA;KANGXI RADICAL SLAVE;So;0;ON; 96B6;;;;N;;;;; -2FAB;KANGXI RADICAL SHORT TAILED BIRD;So;0;ON; 96B9;;;;N;;;;; -2FAC;KANGXI RADICAL RAIN;So;0;ON; 96E8;;;;N;;;;; -2FAD;KANGXI RADICAL BLUE;So;0;ON; 9751;;;;N;;;;; -2FAE;KANGXI RADICAL WRONG;So;0;ON; 975E;;;;N;;;;; -2FAF;KANGXI RADICAL FACE;So;0;ON; 9762;;;;N;;;;; -2FB0;KANGXI RADICAL LEATHER;So;0;ON; 9769;;;;N;;;;; -2FB1;KANGXI RADICAL TANNED LEATHER;So;0;ON; 97CB;;;;N;;;;; -2FB2;KANGXI RADICAL LEEK;So;0;ON; 97ED;;;;N;;;;; -2FB3;KANGXI RADICAL SOUND;So;0;ON; 97F3;;;;N;;;;; -2FB4;KANGXI RADICAL LEAF;So;0;ON; 9801;;;;N;;;;; -2FB5;KANGXI RADICAL WIND;So;0;ON; 98A8;;;;N;;;;; -2FB6;KANGXI RADICAL FLY;So;0;ON; 98DB;;;;N;;;;; -2FB7;KANGXI RADICAL EAT;So;0;ON; 98DF;;;;N;;;;; -2FB8;KANGXI RADICAL HEAD;So;0;ON; 9996;;;;N;;;;; -2FB9;KANGXI RADICAL FRAGRANT;So;0;ON; 9999;;;;N;;;;; -2FBA;KANGXI RADICAL HORSE;So;0;ON; 99AC;;;;N;;;;; -2FBB;KANGXI RADICAL BONE;So;0;ON; 9AA8;;;;N;;;;; -2FBC;KANGXI RADICAL TALL;So;0;ON; 9AD8;;;;N;;;;; -2FBD;KANGXI RADICAL HAIR;So;0;ON; 9ADF;;;;N;;;;; -2FBE;KANGXI RADICAL FIGHT;So;0;ON; 9B25;;;;N;;;;; -2FBF;KANGXI RADICAL SACRIFICIAL WINE;So;0;ON; 9B2F;;;;N;;;;; -2FC0;KANGXI RADICAL CAULDRON;So;0;ON; 9B32;;;;N;;;;; -2FC1;KANGXI RADICAL GHOST;So;0;ON; 9B3C;;;;N;;;;; -2FC2;KANGXI RADICAL FISH;So;0;ON; 9B5A;;;;N;;;;; -2FC3;KANGXI RADICAL BIRD;So;0;ON; 9CE5;;;;N;;;;; -2FC4;KANGXI RADICAL SALT;So;0;ON; 9E75;;;;N;;;;; -2FC5;KANGXI RADICAL DEER;So;0;ON; 9E7F;;;;N;;;;; -2FC6;KANGXI RADICAL WHEAT;So;0;ON; 9EA5;;;;N;;;;; -2FC7;KANGXI RADICAL HEMP;So;0;ON; 9EBB;;;;N;;;;; -2FC8;KANGXI RADICAL YELLOW;So;0;ON; 9EC3;;;;N;;;;; -2FC9;KANGXI RADICAL MILLET;So;0;ON; 9ECD;;;;N;;;;; -2FCA;KANGXI RADICAL BLACK;So;0;ON; 9ED1;;;;N;;;;; -2FCB;KANGXI RADICAL EMBROIDERY;So;0;ON; 9EF9;;;;N;;;;; -2FCC;KANGXI RADICAL FROG;So;0;ON; 9EFD;;;;N;;;;; -2FCD;KANGXI RADICAL TRIPOD;So;0;ON; 9F0E;;;;N;;;;; -2FCE;KANGXI RADICAL DRUM;So;0;ON; 9F13;;;;N;;;;; -2FCF;KANGXI RADICAL RAT;So;0;ON; 9F20;;;;N;;;;; -2FD0;KANGXI RADICAL NOSE;So;0;ON; 9F3B;;;;N;;;;; -2FD1;KANGXI RADICAL EVEN;So;0;ON; 9F4A;;;;N;;;;; -2FD2;KANGXI RADICAL TOOTH;So;0;ON; 9F52;;;;N;;;;; -2FD3;KANGXI RADICAL DRAGON;So;0;ON; 9F8D;;;;N;;;;; -2FD4;KANGXI RADICAL TURTLE;So;0;ON; 9F9C;;;;N;;;;; -2FD5;KANGXI RADICAL FLUTE;So;0;ON; 9FA0;;;;N;;;;; -2FF0;IDEOGRAPHIC DESCRIPTION CHARACTER LEFT TO RIGHT;So;0;ON;;;;;N;;;;; -2FF1;IDEOGRAPHIC DESCRIPTION CHARACTER ABOVE TO BELOW;So;0;ON;;;;;N;;;;; -2FF2;IDEOGRAPHIC DESCRIPTION CHARACTER LEFT TO MIDDLE AND RIGHT;So;0;ON;;;;;N;;;;; -2FF3;IDEOGRAPHIC DESCRIPTION CHARACTER ABOVE TO MIDDLE AND BELOW;So;0;ON;;;;;N;;;;; -2FF4;IDEOGRAPHIC DESCRIPTION CHARACTER FULL SURROUND;So;0;ON;;;;;N;;;;; -2FF5;IDEOGRAPHIC DESCRIPTION CHARACTER SURROUND FROM ABOVE;So;0;ON;;;;;N;;;;; -2FF6;IDEOGRAPHIC DESCRIPTION CHARACTER SURROUND FROM BELOW;So;0;ON;;;;;N;;;;; -2FF7;IDEOGRAPHIC DESCRIPTION CHARACTER SURROUND FROM LEFT;So;0;ON;;;;;N;;;;; -2FF8;IDEOGRAPHIC DESCRIPTION CHARACTER SURROUND FROM UPPER LEFT;So;0;ON;;;;;N;;;;; -2FF9;IDEOGRAPHIC DESCRIPTION CHARACTER SURROUND FROM UPPER RIGHT;So;0;ON;;;;;N;;;;; -2FFA;IDEOGRAPHIC DESCRIPTION CHARACTER SURROUND FROM LOWER LEFT;So;0;ON;;;;;N;;;;; -2FFB;IDEOGRAPHIC DESCRIPTION CHARACTER OVERLAID;So;0;ON;;;;;N;;;;; -3000;IDEOGRAPHIC SPACE;Zs;0;WS; 0020;;;;N;;;;; -3001;IDEOGRAPHIC COMMA;Po;0;ON;;;;;N;;;;; -3002;IDEOGRAPHIC FULL STOP;Po;0;ON;;;;;N;IDEOGRAPHIC PERIOD;;;; -3003;DITTO MARK;Po;0;ON;;;;;N;;;;; -3004;JAPANESE INDUSTRIAL STANDARD SYMBOL;So;0;ON;;;;;N;;;;; -3005;IDEOGRAPHIC ITERATION MARK;Lm;0;L;;;;;N;;;;; -3006;IDEOGRAPHIC CLOSING MARK;Lo;0;L;;;;;N;;;;; -3007;IDEOGRAPHIC NUMBER ZERO;Nl;0;L;;;;0;N;;;;; -3008;LEFT ANGLE BRACKET;Ps;0;ON;;;;;Y;OPENING ANGLE BRACKET;;;; -3009;RIGHT ANGLE BRACKET;Pe;0;ON;;;;;Y;CLOSING ANGLE BRACKET;;;; -300A;LEFT DOUBLE ANGLE BRACKET;Ps;0;ON;;;;;Y;OPENING DOUBLE ANGLE BRACKET;;;; -300B;RIGHT DOUBLE ANGLE BRACKET;Pe;0;ON;;;;;Y;CLOSING DOUBLE ANGLE BRACKET;;;; -300C;LEFT CORNER BRACKET;Ps;0;ON;;;;;Y;OPENING CORNER BRACKET;;;; -300D;RIGHT CORNER BRACKET;Pe;0;ON;;;;;Y;CLOSING CORNER BRACKET;;;; -300E;LEFT WHITE CORNER BRACKET;Ps;0;ON;;;;;Y;OPENING WHITE CORNER BRACKET;;;; -300F;RIGHT WHITE CORNER BRACKET;Pe;0;ON;;;;;Y;CLOSING WHITE CORNER BRACKET;;;; -3010;LEFT BLACK LENTICULAR BRACKET;Ps;0;ON;;;;;Y;OPENING BLACK LENTICULAR BRACKET;;;; -3011;RIGHT BLACK LENTICULAR BRACKET;Pe;0;ON;;;;;Y;CLOSING BLACK LENTICULAR BRACKET;;;; -3012;POSTAL MARK;So;0;ON;;;;;N;;;;; -3013;GETA MARK;So;0;ON;;;;;N;;;;; -3014;LEFT TORTOISE SHELL BRACKET;Ps;0;ON;;;;;Y;OPENING TORTOISE SHELL BRACKET;;;; -3015;RIGHT TORTOISE SHELL BRACKET;Pe;0;ON;;;;;Y;CLOSING TORTOISE SHELL BRACKET;;;; -3016;LEFT WHITE LENTICULAR BRACKET;Ps;0;ON;;;;;Y;OPENING WHITE LENTICULAR BRACKET;;;; -3017;RIGHT WHITE LENTICULAR BRACKET;Pe;0;ON;;;;;Y;CLOSING WHITE LENTICULAR BRACKET;;;; -3018;LEFT WHITE TORTOISE SHELL BRACKET;Ps;0;ON;;;;;Y;OPENING WHITE TORTOISE SHELL BRACKET;;;; -3019;RIGHT WHITE TORTOISE SHELL BRACKET;Pe;0;ON;;;;;Y;CLOSING WHITE TORTOISE SHELL BRACKET;;;; -301A;LEFT WHITE SQUARE BRACKET;Ps;0;ON;;;;;Y;OPENING WHITE SQUARE BRACKET;;;; -301B;RIGHT WHITE SQUARE BRACKET;Pe;0;ON;;;;;Y;CLOSING WHITE SQUARE BRACKET;;;; -301C;WAVE DASH;Pd;0;ON;;;;;N;;;;; -301D;REVERSED DOUBLE PRIME QUOTATION MARK;Ps;0;ON;;;;;N;;;;; -301E;DOUBLE PRIME QUOTATION MARK;Pe;0;ON;;;;;N;;;;; -301F;LOW DOUBLE PRIME QUOTATION MARK;Pe;0;ON;;;;;N;;;;; -3020;POSTAL MARK FACE;So;0;ON;;;;;N;;;;; -3021;HANGZHOU NUMERAL ONE;Nl;0;L;;;;1;N;;;;; -3022;HANGZHOU NUMERAL TWO;Nl;0;L;;;;2;N;;;;; -3023;HANGZHOU NUMERAL THREE;Nl;0;L;;;;3;N;;;;; -3024;HANGZHOU NUMERAL FOUR;Nl;0;L;;;;4;N;;;;; -3025;HANGZHOU NUMERAL FIVE;Nl;0;L;;;;5;N;;;;; -3026;HANGZHOU NUMERAL SIX;Nl;0;L;;;;6;N;;;;; -3027;HANGZHOU NUMERAL SEVEN;Nl;0;L;;;;7;N;;;;; -3028;HANGZHOU NUMERAL EIGHT;Nl;0;L;;;;8;N;;;;; -3029;HANGZHOU NUMERAL NINE;Nl;0;L;;;;9;N;;;;; -302A;IDEOGRAPHIC LEVEL TONE MARK;Mn;218;NSM;;;;;N;;;;; -302B;IDEOGRAPHIC RISING TONE MARK;Mn;228;NSM;;;;;N;;;;; -302C;IDEOGRAPHIC DEPARTING TONE MARK;Mn;232;NSM;;;;;N;;;;; -302D;IDEOGRAPHIC ENTERING TONE MARK;Mn;222;NSM;;;;;N;;;;; -302E;HANGUL SINGLE DOT TONE MARK;Mn;224;NSM;;;;;N;;;;; -302F;HANGUL DOUBLE DOT TONE MARK;Mn;224;NSM;;;;;N;;;;; -3030;WAVY DASH;Pd;0;ON;;;;;N;;;;; -3031;VERTICAL KANA REPEAT MARK;Lm;0;L;;;;;N;;;;; -3032;VERTICAL KANA REPEAT WITH VOICED SOUND MARK;Lm;0;L;;;;;N;;;;; -3033;VERTICAL KANA REPEAT MARK UPPER HALF;Lm;0;L;;;;;N;;;;; -3034;VERTICAL KANA REPEAT WITH VOICED SOUND MARK UPPER HALF;Lm;0;L;;;;;N;;;;; -3035;VERTICAL KANA REPEAT MARK LOWER HALF;Lm;0;L;;;;;N;;;;; -3036;CIRCLED POSTAL MARK;So;0;ON; 3012;;;;N;;;;; -3037;IDEOGRAPHIC TELEGRAPH LINE FEED SEPARATOR SYMBOL;So;0;ON;;;;;N;;;;; -3038;HANGZHOU NUMERAL TEN;Nl;0;L; 5341;;;10;N;;;;; -3039;HANGZHOU NUMERAL TWENTY;Nl;0;L; 5344;;;20;N;;;;; -303A;HANGZHOU NUMERAL THIRTY;Nl;0;L; 5345;;;30;N;;;;; -303B;VERTICAL IDEOGRAPHIC ITERATION MARK;Lm;0;L;;;;;N;;;;; -303C;MASU MARK;Lo;0;L;;;;;N;;;;; -303D;PART ALTERNATION MARK;Po;0;ON;;;;;N;;;;; -303E;IDEOGRAPHIC VARIATION INDICATOR;So;0;ON;;;;;N;;;;; -303F;IDEOGRAPHIC HALF FILL SPACE;So;0;ON;;;;;N;;;;; -3041;HIRAGANA LETTER SMALL A;Lo;0;L;;;;;N;;;;; -3042;HIRAGANA LETTER A;Lo;0;L;;;;;N;;;;; -3043;HIRAGANA LETTER SMALL I;Lo;0;L;;;;;N;;;;; -3044;HIRAGANA LETTER I;Lo;0;L;;;;;N;;;;; -3045;HIRAGANA LETTER SMALL U;Lo;0;L;;;;;N;;;;; -3046;HIRAGANA LETTER U;Lo;0;L;;;;;N;;;;; -3047;HIRAGANA LETTER SMALL E;Lo;0;L;;;;;N;;;;; -3048;HIRAGANA LETTER E;Lo;0;L;;;;;N;;;;; -3049;HIRAGANA LETTER SMALL O;Lo;0;L;;;;;N;;;;; -304A;HIRAGANA LETTER O;Lo;0;L;;;;;N;;;;; -304B;HIRAGANA LETTER KA;Lo;0;L;;;;;N;;;;; -304C;HIRAGANA LETTER GA;Lo;0;L;304B 3099;;;;N;;;;; -304D;HIRAGANA LETTER KI;Lo;0;L;;;;;N;;;;; -304E;HIRAGANA LETTER GI;Lo;0;L;304D 3099;;;;N;;;;; -304F;HIRAGANA LETTER KU;Lo;0;L;;;;;N;;;;; -3050;HIRAGANA LETTER GU;Lo;0;L;304F 3099;;;;N;;;;; -3051;HIRAGANA LETTER KE;Lo;0;L;;;;;N;;;;; -3052;HIRAGANA LETTER GE;Lo;0;L;3051 3099;;;;N;;;;; -3053;HIRAGANA LETTER KO;Lo;0;L;;;;;N;;;;; -3054;HIRAGANA LETTER GO;Lo;0;L;3053 3099;;;;N;;;;; -3055;HIRAGANA LETTER SA;Lo;0;L;;;;;N;;;;; -3056;HIRAGANA LETTER ZA;Lo;0;L;3055 3099;;;;N;;;;; -3057;HIRAGANA LETTER SI;Lo;0;L;;;;;N;;;;; -3058;HIRAGANA LETTER ZI;Lo;0;L;3057 3099;;;;N;;;;; -3059;HIRAGANA LETTER SU;Lo;0;L;;;;;N;;;;; -305A;HIRAGANA LETTER ZU;Lo;0;L;3059 3099;;;;N;;;;; -305B;HIRAGANA LETTER SE;Lo;0;L;;;;;N;;;;; -305C;HIRAGANA LETTER ZE;Lo;0;L;305B 3099;;;;N;;;;; -305D;HIRAGANA LETTER SO;Lo;0;L;;;;;N;;;;; -305E;HIRAGANA LETTER ZO;Lo;0;L;305D 3099;;;;N;;;;; -305F;HIRAGANA LETTER TA;Lo;0;L;;;;;N;;;;; -3060;HIRAGANA LETTER DA;Lo;0;L;305F 3099;;;;N;;;;; -3061;HIRAGANA LETTER TI;Lo;0;L;;;;;N;;;;; -3062;HIRAGANA LETTER DI;Lo;0;L;3061 3099;;;;N;;;;; -3063;HIRAGANA LETTER SMALL TU;Lo;0;L;;;;;N;;;;; -3064;HIRAGANA LETTER TU;Lo;0;L;;;;;N;;;;; -3065;HIRAGANA LETTER DU;Lo;0;L;3064 3099;;;;N;;;;; -3066;HIRAGANA LETTER TE;Lo;0;L;;;;;N;;;;; -3067;HIRAGANA LETTER DE;Lo;0;L;3066 3099;;;;N;;;;; -3068;HIRAGANA LETTER TO;Lo;0;L;;;;;N;;;;; -3069;HIRAGANA LETTER DO;Lo;0;L;3068 3099;;;;N;;;;; -306A;HIRAGANA LETTER NA;Lo;0;L;;;;;N;;;;; -306B;HIRAGANA LETTER NI;Lo;0;L;;;;;N;;;;; -306C;HIRAGANA LETTER NU;Lo;0;L;;;;;N;;;;; -306D;HIRAGANA LETTER NE;Lo;0;L;;;;;N;;;;; -306E;HIRAGANA LETTER NO;Lo;0;L;;;;;N;;;;; -306F;HIRAGANA LETTER HA;Lo;0;L;;;;;N;;;;; -3070;HIRAGANA LETTER BA;Lo;0;L;306F 3099;;;;N;;;;; -3071;HIRAGANA LETTER PA;Lo;0;L;306F 309A;;;;N;;;;; -3072;HIRAGANA LETTER HI;Lo;0;L;;;;;N;;;;; -3073;HIRAGANA LETTER BI;Lo;0;L;3072 3099;;;;N;;;;; -3074;HIRAGANA LETTER PI;Lo;0;L;3072 309A;;;;N;;;;; -3075;HIRAGANA LETTER HU;Lo;0;L;;;;;N;;;;; -3076;HIRAGANA LETTER BU;Lo;0;L;3075 3099;;;;N;;;;; -3077;HIRAGANA LETTER PU;Lo;0;L;3075 309A;;;;N;;;;; -3078;HIRAGANA LETTER HE;Lo;0;L;;;;;N;;;;; -3079;HIRAGANA LETTER BE;Lo;0;L;3078 3099;;;;N;;;;; -307A;HIRAGANA LETTER PE;Lo;0;L;3078 309A;;;;N;;;;; -307B;HIRAGANA LETTER HO;Lo;0;L;;;;;N;;;;; -307C;HIRAGANA LETTER BO;Lo;0;L;307B 3099;;;;N;;;;; -307D;HIRAGANA LETTER PO;Lo;0;L;307B 309A;;;;N;;;;; -307E;HIRAGANA LETTER MA;Lo;0;L;;;;;N;;;;; -307F;HIRAGANA LETTER MI;Lo;0;L;;;;;N;;;;; -3080;HIRAGANA LETTER MU;Lo;0;L;;;;;N;;;;; -3081;HIRAGANA LETTER ME;Lo;0;L;;;;;N;;;;; -3082;HIRAGANA LETTER MO;Lo;0;L;;;;;N;;;;; -3083;HIRAGANA LETTER SMALL YA;Lo;0;L;;;;;N;;;;; -3084;HIRAGANA LETTER YA;Lo;0;L;;;;;N;;;;; -3085;HIRAGANA LETTER SMALL YU;Lo;0;L;;;;;N;;;;; -3086;HIRAGANA LETTER YU;Lo;0;L;;;;;N;;;;; -3087;HIRAGANA LETTER SMALL YO;Lo;0;L;;;;;N;;;;; -3088;HIRAGANA LETTER YO;Lo;0;L;;;;;N;;;;; -3089;HIRAGANA LETTER RA;Lo;0;L;;;;;N;;;;; -308A;HIRAGANA LETTER RI;Lo;0;L;;;;;N;;;;; -308B;HIRAGANA LETTER RU;Lo;0;L;;;;;N;;;;; -308C;HIRAGANA LETTER RE;Lo;0;L;;;;;N;;;;; -308D;HIRAGANA LETTER RO;Lo;0;L;;;;;N;;;;; -308E;HIRAGANA LETTER SMALL WA;Lo;0;L;;;;;N;;;;; -308F;HIRAGANA LETTER WA;Lo;0;L;;;;;N;;;;; -3090;HIRAGANA LETTER WI;Lo;0;L;;;;;N;;;;; -3091;HIRAGANA LETTER WE;Lo;0;L;;;;;N;;;;; -3092;HIRAGANA LETTER WO;Lo;0;L;;;;;N;;;;; -3093;HIRAGANA LETTER N;Lo;0;L;;;;;N;;;;; -3094;HIRAGANA LETTER VU;Lo;0;L;3046 3099;;;;N;;;;; -3095;HIRAGANA LETTER SMALL KA;Lo;0;L;;;;;N;;;;; -3096;HIRAGANA LETTER SMALL KE;Lo;0;L;;;;;N;;;;; -3099;COMBINING KATAKANA-HIRAGANA VOICED SOUND MARK;Mn;8;NSM;;;;;N;NON-SPACING KATAKANA-HIRAGANA VOICED SOUND MARK;;;; -309A;COMBINING KATAKANA-HIRAGANA SEMI-VOICED SOUND MARK;Mn;8;NSM;;;;;N;NON-SPACING KATAKANA-HIRAGANA SEMI-VOICED SOUND MARK;;;; -309B;KATAKANA-HIRAGANA VOICED SOUND MARK;Sk;0;ON; 0020 3099;;;;N;;;;; -309C;KATAKANA-HIRAGANA SEMI-VOICED SOUND MARK;Sk;0;ON; 0020 309A;;;;N;;;;; -309D;HIRAGANA ITERATION MARK;Lm;0;L;;;;;N;;;;; -309E;HIRAGANA VOICED ITERATION MARK;Lm;0;L;309D 3099;;;;N;;;;; -309F;HIRAGANA DIGRAPH YORI;Lo;0;L; 3088 308A;;;;N;;;;; -30A0;KATAKANA-HIRAGANA DOUBLE HYPHEN;Pd;0;ON;;;;;N;;;;; -30A1;KATAKANA LETTER SMALL A;Lo;0;L;;;;;N;;;;; -30A2;KATAKANA LETTER A;Lo;0;L;;;;;N;;;;; -30A3;KATAKANA LETTER SMALL I;Lo;0;L;;;;;N;;;;; -30A4;KATAKANA LETTER I;Lo;0;L;;;;;N;;;;; -30A5;KATAKANA LETTER SMALL U;Lo;0;L;;;;;N;;;;; -30A6;KATAKANA LETTER U;Lo;0;L;;;;;N;;;;; -30A7;KATAKANA LETTER SMALL E;Lo;0;L;;;;;N;;;;; -30A8;KATAKANA LETTER E;Lo;0;L;;;;;N;;;;; -30A9;KATAKANA LETTER SMALL O;Lo;0;L;;;;;N;;;;; -30AA;KATAKANA LETTER O;Lo;0;L;;;;;N;;;;; -30AB;KATAKANA LETTER KA;Lo;0;L;;;;;N;;;;; -30AC;KATAKANA LETTER GA;Lo;0;L;30AB 3099;;;;N;;;;; -30AD;KATAKANA LETTER KI;Lo;0;L;;;;;N;;;;; -30AE;KATAKANA LETTER GI;Lo;0;L;30AD 3099;;;;N;;;;; -30AF;KATAKANA LETTER KU;Lo;0;L;;;;;N;;;;; -30B0;KATAKANA LETTER GU;Lo;0;L;30AF 3099;;;;N;;;;; -30B1;KATAKANA LETTER KE;Lo;0;L;;;;;N;;;;; -30B2;KATAKANA LETTER GE;Lo;0;L;30B1 3099;;;;N;;;;; -30B3;KATAKANA LETTER KO;Lo;0;L;;;;;N;;;;; -30B4;KATAKANA LETTER GO;Lo;0;L;30B3 3099;;;;N;;;;; -30B5;KATAKANA LETTER SA;Lo;0;L;;;;;N;;;;; -30B6;KATAKANA LETTER ZA;Lo;0;L;30B5 3099;;;;N;;;;; -30B7;KATAKANA LETTER SI;Lo;0;L;;;;;N;;;;; -30B8;KATAKANA LETTER ZI;Lo;0;L;30B7 3099;;;;N;;;;; -30B9;KATAKANA LETTER SU;Lo;0;L;;;;;N;;;;; -30BA;KATAKANA LETTER ZU;Lo;0;L;30B9 3099;;;;N;;;;; -30BB;KATAKANA LETTER SE;Lo;0;L;;;;;N;;;;; -30BC;KATAKANA LETTER ZE;Lo;0;L;30BB 3099;;;;N;;;;; -30BD;KATAKANA LETTER SO;Lo;0;L;;;;;N;;;;; -30BE;KATAKANA LETTER ZO;Lo;0;L;30BD 3099;;;;N;;;;; -30BF;KATAKANA LETTER TA;Lo;0;L;;;;;N;;;;; -30C0;KATAKANA LETTER DA;Lo;0;L;30BF 3099;;;;N;;;;; -30C1;KATAKANA LETTER TI;Lo;0;L;;;;;N;;;;; -30C2;KATAKANA LETTER DI;Lo;0;L;30C1 3099;;;;N;;;;; -30C3;KATAKANA LETTER SMALL TU;Lo;0;L;;;;;N;;;;; -30C4;KATAKANA LETTER TU;Lo;0;L;;;;;N;;;;; -30C5;KATAKANA LETTER DU;Lo;0;L;30C4 3099;;;;N;;;;; -30C6;KATAKANA LETTER TE;Lo;0;L;;;;;N;;;;; -30C7;KATAKANA LETTER DE;Lo;0;L;30C6 3099;;;;N;;;;; -30C8;KATAKANA LETTER TO;Lo;0;L;;;;;N;;;;; -30C9;KATAKANA LETTER DO;Lo;0;L;30C8 3099;;;;N;;;;; -30CA;KATAKANA LETTER NA;Lo;0;L;;;;;N;;;;; -30CB;KATAKANA LETTER NI;Lo;0;L;;;;;N;;;;; -30CC;KATAKANA LETTER NU;Lo;0;L;;;;;N;;;;; -30CD;KATAKANA LETTER NE;Lo;0;L;;;;;N;;;;; -30CE;KATAKANA LETTER NO;Lo;0;L;;;;;N;;;;; -30CF;KATAKANA LETTER HA;Lo;0;L;;;;;N;;;;; -30D0;KATAKANA LETTER BA;Lo;0;L;30CF 3099;;;;N;;;;; -30D1;KATAKANA LETTER PA;Lo;0;L;30CF 309A;;;;N;;;;; -30D2;KATAKANA LETTER HI;Lo;0;L;;;;;N;;;;; -30D3;KATAKANA LETTER BI;Lo;0;L;30D2 3099;;;;N;;;;; -30D4;KATAKANA LETTER PI;Lo;0;L;30D2 309A;;;;N;;;;; -30D5;KATAKANA LETTER HU;Lo;0;L;;;;;N;;;;; -30D6;KATAKANA LETTER BU;Lo;0;L;30D5 3099;;;;N;;;;; -30D7;KATAKANA LETTER PU;Lo;0;L;30D5 309A;;;;N;;;;; -30D8;KATAKANA LETTER HE;Lo;0;L;;;;;N;;;;; -30D9;KATAKANA LETTER BE;Lo;0;L;30D8 3099;;;;N;;;;; -30DA;KATAKANA LETTER PE;Lo;0;L;30D8 309A;;;;N;;;;; -30DB;KATAKANA LETTER HO;Lo;0;L;;;;;N;;;;; -30DC;KATAKANA LETTER BO;Lo;0;L;30DB 3099;;;;N;;;;; -30DD;KATAKANA LETTER PO;Lo;0;L;30DB 309A;;;;N;;;;; -30DE;KATAKANA LETTER MA;Lo;0;L;;;;;N;;;;; -30DF;KATAKANA LETTER MI;Lo;0;L;;;;;N;;;;; -30E0;KATAKANA LETTER MU;Lo;0;L;;;;;N;;;;; -30E1;KATAKANA LETTER ME;Lo;0;L;;;;;N;;;;; -30E2;KATAKANA LETTER MO;Lo;0;L;;;;;N;;;;; -30E3;KATAKANA LETTER SMALL YA;Lo;0;L;;;;;N;;;;; -30E4;KATAKANA LETTER YA;Lo;0;L;;;;;N;;;;; -30E5;KATAKANA LETTER SMALL YU;Lo;0;L;;;;;N;;;;; -30E6;KATAKANA LETTER YU;Lo;0;L;;;;;N;;;;; -30E7;KATAKANA LETTER SMALL YO;Lo;0;L;;;;;N;;;;; -30E8;KATAKANA LETTER YO;Lo;0;L;;;;;N;;;;; -30E9;KATAKANA LETTER RA;Lo;0;L;;;;;N;;;;; -30EA;KATAKANA LETTER RI;Lo;0;L;;;;;N;;;;; -30EB;KATAKANA LETTER RU;Lo;0;L;;;;;N;;;;; -30EC;KATAKANA LETTER RE;Lo;0;L;;;;;N;;;;; -30ED;KATAKANA LETTER RO;Lo;0;L;;;;;N;;;;; -30EE;KATAKANA LETTER SMALL WA;Lo;0;L;;;;;N;;;;; -30EF;KATAKANA LETTER WA;Lo;0;L;;;;;N;;;;; -30F0;KATAKANA LETTER WI;Lo;0;L;;;;;N;;;;; -30F1;KATAKANA LETTER WE;Lo;0;L;;;;;N;;;;; -30F2;KATAKANA LETTER WO;Lo;0;L;;;;;N;;;;; -30F3;KATAKANA LETTER N;Lo;0;L;;;;;N;;;;; -30F4;KATAKANA LETTER VU;Lo;0;L;30A6 3099;;;;N;;;;; -30F5;KATAKANA LETTER SMALL KA;Lo;0;L;;;;;N;;;;; -30F6;KATAKANA LETTER SMALL KE;Lo;0;L;;;;;N;;;;; -30F7;KATAKANA LETTER VA;Lo;0;L;30EF 3099;;;;N;;;;; -30F8;KATAKANA LETTER VI;Lo;0;L;30F0 3099;;;;N;;;;; -30F9;KATAKANA LETTER VE;Lo;0;L;30F1 3099;;;;N;;;;; -30FA;KATAKANA LETTER VO;Lo;0;L;30F2 3099;;;;N;;;;; -30FB;KATAKANA MIDDLE DOT;Po;0;ON;;;;;N;;;;; -30FC;KATAKANA-HIRAGANA PROLONGED SOUND MARK;Lm;0;L;;;;;N;;;;; -30FD;KATAKANA ITERATION MARK;Lm;0;L;;;;;N;;;;; -30FE;KATAKANA VOICED ITERATION MARK;Lm;0;L;30FD 3099;;;;N;;;;; -30FF;KATAKANA DIGRAPH KOTO;Lo;0;L; 30B3 30C8;;;;N;;;;; -3105;BOPOMOFO LETTER B;Lo;0;L;;;;;N;;;;; -3106;BOPOMOFO LETTER P;Lo;0;L;;;;;N;;;;; -3107;BOPOMOFO LETTER M;Lo;0;L;;;;;N;;;;; -3108;BOPOMOFO LETTER F;Lo;0;L;;;;;N;;;;; -3109;BOPOMOFO LETTER D;Lo;0;L;;;;;N;;;;; -310A;BOPOMOFO LETTER T;Lo;0;L;;;;;N;;;;; -310B;BOPOMOFO LETTER N;Lo;0;L;;;;;N;;;;; -310C;BOPOMOFO LETTER L;Lo;0;L;;;;;N;;;;; -310D;BOPOMOFO LETTER G;Lo;0;L;;;;;N;;;;; -310E;BOPOMOFO LETTER K;Lo;0;L;;;;;N;;;;; -310F;BOPOMOFO LETTER H;Lo;0;L;;;;;N;;;;; -3110;BOPOMOFO LETTER J;Lo;0;L;;;;;N;;;;; -3111;BOPOMOFO LETTER Q;Lo;0;L;;;;;N;;;;; -3112;BOPOMOFO LETTER X;Lo;0;L;;;;;N;;;;; -3113;BOPOMOFO LETTER ZH;Lo;0;L;;;;;N;;;;; -3114;BOPOMOFO LETTER CH;Lo;0;L;;;;;N;;;;; -3115;BOPOMOFO LETTER SH;Lo;0;L;;;;;N;;;;; -3116;BOPOMOFO LETTER R;Lo;0;L;;;;;N;;;;; -3117;BOPOMOFO LETTER Z;Lo;0;L;;;;;N;;;;; -3118;BOPOMOFO LETTER C;Lo;0;L;;;;;N;;;;; -3119;BOPOMOFO LETTER S;Lo;0;L;;;;;N;;;;; -311A;BOPOMOFO LETTER A;Lo;0;L;;;;;N;;;;; -311B;BOPOMOFO LETTER O;Lo;0;L;;;;;N;;;;; -311C;BOPOMOFO LETTER E;Lo;0;L;;;;;N;;;;; -311D;BOPOMOFO LETTER EH;Lo;0;L;;;;;N;;;;; -311E;BOPOMOFO LETTER AI;Lo;0;L;;;;;N;;;;; -311F;BOPOMOFO LETTER EI;Lo;0;L;;;;;N;;;;; -3120;BOPOMOFO LETTER AU;Lo;0;L;;;;;N;;;;; -3121;BOPOMOFO LETTER OU;Lo;0;L;;;;;N;;;;; -3122;BOPOMOFO LETTER AN;Lo;0;L;;;;;N;;;;; -3123;BOPOMOFO LETTER EN;Lo;0;L;;;;;N;;;;; -3124;BOPOMOFO LETTER ANG;Lo;0;L;;;;;N;;;;; -3125;BOPOMOFO LETTER ENG;Lo;0;L;;;;;N;;;;; -3126;BOPOMOFO LETTER ER;Lo;0;L;;;;;N;;;;; -3127;BOPOMOFO LETTER I;Lo;0;L;;;;;N;;;;; -3128;BOPOMOFO LETTER U;Lo;0;L;;;;;N;;;;; -3129;BOPOMOFO LETTER IU;Lo;0;L;;;;;N;;;;; -312A;BOPOMOFO LETTER V;Lo;0;L;;;;;N;;;;; -312B;BOPOMOFO LETTER NG;Lo;0;L;;;;;N;;;;; -312C;BOPOMOFO LETTER GN;Lo;0;L;;;;;N;;;;; -312D;BOPOMOFO LETTER IH;Lo;0;L;;;;;N;;;;; -3131;HANGUL LETTER KIYEOK;Lo;0;L; 1100;;;;N;HANGUL LETTER GIYEOG;;;; -3132;HANGUL LETTER SSANGKIYEOK;Lo;0;L; 1101;;;;N;HANGUL LETTER SSANG GIYEOG;;;; -3133;HANGUL LETTER KIYEOK-SIOS;Lo;0;L; 11AA;;;;N;HANGUL LETTER GIYEOG SIOS;;;; -3134;HANGUL LETTER NIEUN;Lo;0;L; 1102;;;;N;;;;; -3135;HANGUL LETTER NIEUN-CIEUC;Lo;0;L; 11AC;;;;N;HANGUL LETTER NIEUN JIEUJ;;;; -3136;HANGUL LETTER NIEUN-HIEUH;Lo;0;L; 11AD;;;;N;HANGUL LETTER NIEUN HIEUH;;;; -3137;HANGUL LETTER TIKEUT;Lo;0;L; 1103;;;;N;HANGUL LETTER DIGEUD;;;; -3138;HANGUL LETTER SSANGTIKEUT;Lo;0;L; 1104;;;;N;HANGUL LETTER SSANG DIGEUD;;;; -3139;HANGUL LETTER RIEUL;Lo;0;L; 1105;;;;N;HANGUL LETTER LIEUL;;;; -313A;HANGUL LETTER RIEUL-KIYEOK;Lo;0;L; 11B0;;;;N;HANGUL LETTER LIEUL GIYEOG;;;; -313B;HANGUL LETTER RIEUL-MIEUM;Lo;0;L; 11B1;;;;N;HANGUL LETTER LIEUL MIEUM;;;; -313C;HANGUL LETTER RIEUL-PIEUP;Lo;0;L; 11B2;;;;N;HANGUL LETTER LIEUL BIEUB;;;; -313D;HANGUL LETTER RIEUL-SIOS;Lo;0;L; 11B3;;;;N;HANGUL LETTER LIEUL SIOS;;;; -313E;HANGUL LETTER RIEUL-THIEUTH;Lo;0;L; 11B4;;;;N;HANGUL LETTER LIEUL TIEUT;;;; -313F;HANGUL LETTER RIEUL-PHIEUPH;Lo;0;L; 11B5;;;;N;HANGUL LETTER LIEUL PIEUP;;;; -3140;HANGUL LETTER RIEUL-HIEUH;Lo;0;L; 111A;;;;N;HANGUL LETTER LIEUL HIEUH;;;; -3141;HANGUL LETTER MIEUM;Lo;0;L; 1106;;;;N;;;;; -3142;HANGUL LETTER PIEUP;Lo;0;L; 1107;;;;N;HANGUL LETTER BIEUB;;;; -3143;HANGUL LETTER SSANGPIEUP;Lo;0;L; 1108;;;;N;HANGUL LETTER SSANG BIEUB;;;; -3144;HANGUL LETTER PIEUP-SIOS;Lo;0;L; 1121;;;;N;HANGUL LETTER BIEUB SIOS;;;; -3145;HANGUL LETTER SIOS;Lo;0;L; 1109;;;;N;;;;; -3146;HANGUL LETTER SSANGSIOS;Lo;0;L; 110A;;;;N;HANGUL LETTER SSANG SIOS;;;; -3147;HANGUL LETTER IEUNG;Lo;0;L; 110B;;;;N;;;;; -3148;HANGUL LETTER CIEUC;Lo;0;L; 110C;;;;N;HANGUL LETTER JIEUJ;;;; -3149;HANGUL LETTER SSANGCIEUC;Lo;0;L; 110D;;;;N;HANGUL LETTER SSANG JIEUJ;;;; -314A;HANGUL LETTER CHIEUCH;Lo;0;L; 110E;;;;N;HANGUL LETTER CIEUC;;;; -314B;HANGUL LETTER KHIEUKH;Lo;0;L; 110F;;;;N;HANGUL LETTER KIYEOK;;;; -314C;HANGUL LETTER THIEUTH;Lo;0;L; 1110;;;;N;HANGUL LETTER TIEUT;;;; -314D;HANGUL LETTER PHIEUPH;Lo;0;L; 1111;;;;N;HANGUL LETTER PIEUP;;;; -314E;HANGUL LETTER HIEUH;Lo;0;L; 1112;;;;N;;;;; -314F;HANGUL LETTER A;Lo;0;L; 1161;;;;N;;;;; -3150;HANGUL LETTER AE;Lo;0;L; 1162;;;;N;;;;; -3151;HANGUL LETTER YA;Lo;0;L; 1163;;;;N;;;;; -3152;HANGUL LETTER YAE;Lo;0;L; 1164;;;;N;;;;; -3153;HANGUL LETTER EO;Lo;0;L; 1165;;;;N;;;;; -3154;HANGUL LETTER E;Lo;0;L; 1166;;;;N;;;;; -3155;HANGUL LETTER YEO;Lo;0;L; 1167;;;;N;;;;; -3156;HANGUL LETTER YE;Lo;0;L; 1168;;;;N;;;;; -3157;HANGUL LETTER O;Lo;0;L; 1169;;;;N;;;;; -3158;HANGUL LETTER WA;Lo;0;L; 116A;;;;N;;;;; -3159;HANGUL LETTER WAE;Lo;0;L; 116B;;;;N;;;;; -315A;HANGUL LETTER OE;Lo;0;L; 116C;;;;N;;;;; -315B;HANGUL LETTER YO;Lo;0;L; 116D;;;;N;;;;; -315C;HANGUL LETTER U;Lo;0;L; 116E;;;;N;;;;; -315D;HANGUL LETTER WEO;Lo;0;L; 116F;;;;N;;;;; -315E;HANGUL LETTER WE;Lo;0;L; 1170;;;;N;;;;; -315F;HANGUL LETTER WI;Lo;0;L; 1171;;;;N;;;;; -3160;HANGUL LETTER YU;Lo;0;L; 1172;;;;N;;;;; -3161;HANGUL LETTER EU;Lo;0;L; 1173;;;;N;;;;; -3162;HANGUL LETTER YI;Lo;0;L; 1174;;;;N;;;;; -3163;HANGUL LETTER I;Lo;0;L; 1175;;;;N;;;;; -3164;HANGUL FILLER;Lo;0;L; 1160;;;;N;HANGUL CAE OM;;;; -3165;HANGUL LETTER SSANGNIEUN;Lo;0;L; 1114;;;;N;HANGUL LETTER SSANG NIEUN;;;; -3166;HANGUL LETTER NIEUN-TIKEUT;Lo;0;L; 1115;;;;N;HANGUL LETTER NIEUN DIGEUD;;;; -3167;HANGUL LETTER NIEUN-SIOS;Lo;0;L; 11C7;;;;N;HANGUL LETTER NIEUN SIOS;;;; -3168;HANGUL LETTER NIEUN-PANSIOS;Lo;0;L; 11C8;;;;N;HANGUL LETTER NIEUN BAN CHI EUM;;;; -3169;HANGUL LETTER RIEUL-KIYEOK-SIOS;Lo;0;L; 11CC;;;;N;HANGUL LETTER LIEUL GIYEOG SIOS;;;; -316A;HANGUL LETTER RIEUL-TIKEUT;Lo;0;L; 11CE;;;;N;HANGUL LETTER LIEUL DIGEUD;;;; -316B;HANGUL LETTER RIEUL-PIEUP-SIOS;Lo;0;L; 11D3;;;;N;HANGUL LETTER LIEUL BIEUB SIOS;;;; -316C;HANGUL LETTER RIEUL-PANSIOS;Lo;0;L; 11D7;;;;N;HANGUL LETTER LIEUL BAN CHI EUM;;;; -316D;HANGUL LETTER RIEUL-YEORINHIEUH;Lo;0;L; 11D9;;;;N;HANGUL LETTER LIEUL YEOLIN HIEUH;;;; -316E;HANGUL LETTER MIEUM-PIEUP;Lo;0;L; 111C;;;;N;HANGUL LETTER MIEUM BIEUB;;;; -316F;HANGUL LETTER MIEUM-SIOS;Lo;0;L; 11DD;;;;N;HANGUL LETTER MIEUM SIOS;;;; -3170;HANGUL LETTER MIEUM-PANSIOS;Lo;0;L; 11DF;;;;N;HANGUL LETTER BIEUB BAN CHI EUM;;;; -3171;HANGUL LETTER KAPYEOUNMIEUM;Lo;0;L; 111D;;;;N;HANGUL LETTER MIEUM SUN GYEONG EUM;;;; -3172;HANGUL LETTER PIEUP-KIYEOK;Lo;0;L; 111E;;;;N;HANGUL LETTER BIEUB GIYEOG;;;; -3173;HANGUL LETTER PIEUP-TIKEUT;Lo;0;L; 1120;;;;N;HANGUL LETTER BIEUB DIGEUD;;;; -3174;HANGUL LETTER PIEUP-SIOS-KIYEOK;Lo;0;L; 1122;;;;N;HANGUL LETTER BIEUB SIOS GIYEOG;;;; -3175;HANGUL LETTER PIEUP-SIOS-TIKEUT;Lo;0;L; 1123;;;;N;HANGUL LETTER BIEUB SIOS DIGEUD;;;; -3176;HANGUL LETTER PIEUP-CIEUC;Lo;0;L; 1127;;;;N;HANGUL LETTER BIEUB JIEUJ;;;; -3177;HANGUL LETTER PIEUP-THIEUTH;Lo;0;L; 1129;;;;N;HANGUL LETTER BIEUB TIEUT;;;; -3178;HANGUL LETTER KAPYEOUNPIEUP;Lo;0;L; 112B;;;;N;HANGUL LETTER BIEUB SUN GYEONG EUM;;;; -3179;HANGUL LETTER KAPYEOUNSSANGPIEUP;Lo;0;L; 112C;;;;N;HANGUL LETTER SSANG BIEUB SUN GYEONG EUM;;;; -317A;HANGUL LETTER SIOS-KIYEOK;Lo;0;L; 112D;;;;N;HANGUL LETTER SIOS GIYEOG;;;; -317B;HANGUL LETTER SIOS-NIEUN;Lo;0;L; 112E;;;;N;HANGUL LETTER SIOS NIEUN;;;; -317C;HANGUL LETTER SIOS-TIKEUT;Lo;0;L; 112F;;;;N;HANGUL LETTER SIOS DIGEUD;;;; -317D;HANGUL LETTER SIOS-PIEUP;Lo;0;L; 1132;;;;N;HANGUL LETTER SIOS BIEUB;;;; -317E;HANGUL LETTER SIOS-CIEUC;Lo;0;L; 1136;;;;N;HANGUL LETTER SIOS JIEUJ;;;; -317F;HANGUL LETTER PANSIOS;Lo;0;L; 1140;;;;N;HANGUL LETTER BAN CHI EUM;;;; -3180;HANGUL LETTER SSANGIEUNG;Lo;0;L; 1147;;;;N;HANGUL LETTER SSANG IEUNG;;;; -3181;HANGUL LETTER YESIEUNG;Lo;0;L; 114C;;;;N;HANGUL LETTER NGIEUNG;;;; -3182;HANGUL LETTER YESIEUNG-SIOS;Lo;0;L; 11F1;;;;N;HANGUL LETTER NGIEUNG SIOS;;;; -3183;HANGUL LETTER YESIEUNG-PANSIOS;Lo;0;L; 11F2;;;;N;HANGUL LETTER NGIEUNG BAN CHI EUM;;;; -3184;HANGUL LETTER KAPYEOUNPHIEUPH;Lo;0;L; 1157;;;;N;HANGUL LETTER PIEUP SUN GYEONG EUM;;;; -3185;HANGUL LETTER SSANGHIEUH;Lo;0;L; 1158;;;;N;HANGUL LETTER SSANG HIEUH;;;; -3186;HANGUL LETTER YEORINHIEUH;Lo;0;L; 1159;;;;N;HANGUL LETTER YEOLIN HIEUH;;;; -3187;HANGUL LETTER YO-YA;Lo;0;L; 1184;;;;N;HANGUL LETTER YOYA;;;; -3188;HANGUL LETTER YO-YAE;Lo;0;L; 1185;;;;N;HANGUL LETTER YOYAE;;;; -3189;HANGUL LETTER YO-I;Lo;0;L; 1188;;;;N;HANGUL LETTER YOI;;;; -318A;HANGUL LETTER YU-YEO;Lo;0;L; 1191;;;;N;HANGUL LETTER YUYEO;;;; -318B;HANGUL LETTER YU-YE;Lo;0;L; 1192;;;;N;HANGUL LETTER YUYE;;;; -318C;HANGUL LETTER YU-I;Lo;0;L; 1194;;;;N;HANGUL LETTER YUI;;;; -318D;HANGUL LETTER ARAEA;Lo;0;L; 119E;;;;N;HANGUL LETTER ALAE A;;;; -318E;HANGUL LETTER ARAEAE;Lo;0;L; 11A1;;;;N;HANGUL LETTER ALAE AE;;;; -3190;IDEOGRAPHIC ANNOTATION LINKING MARK;So;0;L;;;;;N;KANBUN TATETEN;;;; -3191;IDEOGRAPHIC ANNOTATION REVERSE MARK;So;0;L;;;;;N;KAERITEN RE;;;; -3192;IDEOGRAPHIC ANNOTATION ONE MARK;No;0;L; 4E00;;;1;N;KAERITEN ITI;;;; -3193;IDEOGRAPHIC ANNOTATION TWO MARK;No;0;L; 4E8C;;;2;N;KAERITEN NI;;;; -3194;IDEOGRAPHIC ANNOTATION THREE MARK;No;0;L; 4E09;;;3;N;KAERITEN SAN;;;; -3195;IDEOGRAPHIC ANNOTATION FOUR MARK;No;0;L; 56DB;;;4;N;KAERITEN SI;;;; -3196;IDEOGRAPHIC ANNOTATION TOP MARK;So;0;L; 4E0A;;;;N;KAERITEN ZYOU;;;; -3197;IDEOGRAPHIC ANNOTATION MIDDLE MARK;So;0;L; 4E2D;;;;N;KAERITEN TYUU;;;; -3198;IDEOGRAPHIC ANNOTATION BOTTOM MARK;So;0;L; 4E0B;;;;N;KAERITEN GE;;;; -3199;IDEOGRAPHIC ANNOTATION FIRST MARK;So;0;L; 7532;;;;N;KAERITEN KOU;;;; -319A;IDEOGRAPHIC ANNOTATION SECOND MARK;So;0;L; 4E59;;;;N;KAERITEN OTU;;;; -319B;IDEOGRAPHIC ANNOTATION THIRD MARK;So;0;L; 4E19;;;;N;KAERITEN HEI;;;; -319C;IDEOGRAPHIC ANNOTATION FOURTH MARK;So;0;L; 4E01;;;;N;KAERITEN TEI;;;; -319D;IDEOGRAPHIC ANNOTATION HEAVEN MARK;So;0;L; 5929;;;;N;KAERITEN TEN;;;; -319E;IDEOGRAPHIC ANNOTATION EARTH MARK;So;0;L; 5730;;;;N;KAERITEN TI;;;; -319F;IDEOGRAPHIC ANNOTATION MAN MARK;So;0;L; 4EBA;;;;N;KAERITEN ZIN;;;; -31A0;BOPOMOFO LETTER BU;Lo;0;L;;;;;N;;;;; -31A1;BOPOMOFO LETTER ZI;Lo;0;L;;;;;N;;;;; -31A2;BOPOMOFO LETTER JI;Lo;0;L;;;;;N;;;;; -31A3;BOPOMOFO LETTER GU;Lo;0;L;;;;;N;;;;; -31A4;BOPOMOFO LETTER EE;Lo;0;L;;;;;N;;;;; -31A5;BOPOMOFO LETTER ENN;Lo;0;L;;;;;N;;;;; -31A6;BOPOMOFO LETTER OO;Lo;0;L;;;;;N;;;;; -31A7;BOPOMOFO LETTER ONN;Lo;0;L;;;;;N;;;;; -31A8;BOPOMOFO LETTER IR;Lo;0;L;;;;;N;;;;; -31A9;BOPOMOFO LETTER ANN;Lo;0;L;;;;;N;;;;; -31AA;BOPOMOFO LETTER INN;Lo;0;L;;;;;N;;;;; -31AB;BOPOMOFO LETTER UNN;Lo;0;L;;;;;N;;;;; -31AC;BOPOMOFO LETTER IM;Lo;0;L;;;;;N;;;;; -31AD;BOPOMOFO LETTER NGG;Lo;0;L;;;;;N;;;;; -31AE;BOPOMOFO LETTER AINN;Lo;0;L;;;;;N;;;;; -31AF;BOPOMOFO LETTER AUNN;Lo;0;L;;;;;N;;;;; -31B0;BOPOMOFO LETTER AM;Lo;0;L;;;;;N;;;;; -31B1;BOPOMOFO LETTER OM;Lo;0;L;;;;;N;;;;; -31B2;BOPOMOFO LETTER ONG;Lo;0;L;;;;;N;;;;; -31B3;BOPOMOFO LETTER INNN;Lo;0;L;;;;;N;;;;; -31B4;BOPOMOFO FINAL LETTER P;Lo;0;L;;;;;N;;;;; -31B5;BOPOMOFO FINAL LETTER T;Lo;0;L;;;;;N;;;;; -31B6;BOPOMOFO FINAL LETTER K;Lo;0;L;;;;;N;;;;; -31B7;BOPOMOFO FINAL LETTER H;Lo;0;L;;;;;N;;;;; -31B8;BOPOMOFO LETTER GH;Lo;0;L;;;;;N;;;;; -31B9;BOPOMOFO LETTER LH;Lo;0;L;;;;;N;;;;; -31BA;BOPOMOFO LETTER ZY;Lo;0;L;;;;;N;;;;; -31C0;CJK STROKE T;So;0;ON;;;;;N;;;;; -31C1;CJK STROKE WG;So;0;ON;;;;;N;;;;; -31C2;CJK STROKE XG;So;0;ON;;;;;N;;;;; -31C3;CJK STROKE BXG;So;0;ON;;;;;N;;;;; -31C4;CJK STROKE SW;So;0;ON;;;;;N;;;;; -31C5;CJK STROKE HZZ;So;0;ON;;;;;N;;;;; -31C6;CJK STROKE HZG;So;0;ON;;;;;N;;;;; -31C7;CJK STROKE HP;So;0;ON;;;;;N;;;;; -31C8;CJK STROKE HZWG;So;0;ON;;;;;N;;;;; -31C9;CJK STROKE SZWG;So;0;ON;;;;;N;;;;; -31CA;CJK STROKE HZT;So;0;ON;;;;;N;;;;; -31CB;CJK STROKE HZZP;So;0;ON;;;;;N;;;;; -31CC;CJK STROKE HPWG;So;0;ON;;;;;N;;;;; -31CD;CJK STROKE HZW;So;0;ON;;;;;N;;;;; -31CE;CJK STROKE HZZZ;So;0;ON;;;;;N;;;;; -31CF;CJK STROKE N;So;0;ON;;;;;N;;;;; -31D0;CJK STROKE H;So;0;ON;;;;;N;;;;; -31D1;CJK STROKE S;So;0;ON;;;;;N;;;;; -31D2;CJK STROKE P;So;0;ON;;;;;N;;;;; -31D3;CJK STROKE SP;So;0;ON;;;;;N;;;;; -31D4;CJK STROKE D;So;0;ON;;;;;N;;;;; -31D5;CJK STROKE HZ;So;0;ON;;;;;N;;;;; -31D6;CJK STROKE HG;So;0;ON;;;;;N;;;;; -31D7;CJK STROKE SZ;So;0;ON;;;;;N;;;;; -31D8;CJK STROKE SWZ;So;0;ON;;;;;N;;;;; -31D9;CJK STROKE ST;So;0;ON;;;;;N;;;;; -31DA;CJK STROKE SG;So;0;ON;;;;;N;;;;; -31DB;CJK STROKE PD;So;0;ON;;;;;N;;;;; -31DC;CJK STROKE PZ;So;0;ON;;;;;N;;;;; -31DD;CJK STROKE TN;So;0;ON;;;;;N;;;;; -31DE;CJK STROKE SZZ;So;0;ON;;;;;N;;;;; -31DF;CJK STROKE SWG;So;0;ON;;;;;N;;;;; -31E0;CJK STROKE HXWG;So;0;ON;;;;;N;;;;; -31E1;CJK STROKE HZZZG;So;0;ON;;;;;N;;;;; -31E2;CJK STROKE PG;So;0;ON;;;;;N;;;;; -31E3;CJK STROKE Q;So;0;ON;;;;;N;;;;; -31F0;KATAKANA LETTER SMALL KU;Lo;0;L;;;;;N;;;;; -31F1;KATAKANA LETTER SMALL SI;Lo;0;L;;;;;N;;;;; -31F2;KATAKANA LETTER SMALL SU;Lo;0;L;;;;;N;;;;; -31F3;KATAKANA LETTER SMALL TO;Lo;0;L;;;;;N;;;;; -31F4;KATAKANA LETTER SMALL NU;Lo;0;L;;;;;N;;;;; -31F5;KATAKANA LETTER SMALL HA;Lo;0;L;;;;;N;;;;; -31F6;KATAKANA LETTER SMALL HI;Lo;0;L;;;;;N;;;;; -31F7;KATAKANA LETTER SMALL HU;Lo;0;L;;;;;N;;;;; -31F8;KATAKANA LETTER SMALL HE;Lo;0;L;;;;;N;;;;; -31F9;KATAKANA LETTER SMALL HO;Lo;0;L;;;;;N;;;;; -31FA;KATAKANA LETTER SMALL MU;Lo;0;L;;;;;N;;;;; -31FB;KATAKANA LETTER SMALL RA;Lo;0;L;;;;;N;;;;; -31FC;KATAKANA LETTER SMALL RI;Lo;0;L;;;;;N;;;;; -31FD;KATAKANA LETTER SMALL RU;Lo;0;L;;;;;N;;;;; -31FE;KATAKANA LETTER SMALL RE;Lo;0;L;;;;;N;;;;; -31FF;KATAKANA LETTER SMALL RO;Lo;0;L;;;;;N;;;;; -3200;PARENTHESIZED HANGUL KIYEOK;So;0;L; 0028 1100 0029;;;;N;PARENTHESIZED HANGUL GIYEOG;;;; -3201;PARENTHESIZED HANGUL NIEUN;So;0;L; 0028 1102 0029;;;;N;;;;; -3202;PARENTHESIZED HANGUL TIKEUT;So;0;L; 0028 1103 0029;;;;N;PARENTHESIZED HANGUL DIGEUD;;;; -3203;PARENTHESIZED HANGUL RIEUL;So;0;L; 0028 1105 0029;;;;N;PARENTHESIZED HANGUL LIEUL;;;; -3204;PARENTHESIZED HANGUL MIEUM;So;0;L; 0028 1106 0029;;;;N;;;;; -3205;PARENTHESIZED HANGUL PIEUP;So;0;L; 0028 1107 0029;;;;N;PARENTHESIZED HANGUL BIEUB;;;; -3206;PARENTHESIZED HANGUL SIOS;So;0;L; 0028 1109 0029;;;;N;;;;; -3207;PARENTHESIZED HANGUL IEUNG;So;0;L; 0028 110B 0029;;;;N;;;;; -3208;PARENTHESIZED HANGUL CIEUC;So;0;L; 0028 110C 0029;;;;N;PARENTHESIZED HANGUL JIEUJ;;;; -3209;PARENTHESIZED HANGUL CHIEUCH;So;0;L; 0028 110E 0029;;;;N;PARENTHESIZED HANGUL CIEUC;;;; -320A;PARENTHESIZED HANGUL KHIEUKH;So;0;L; 0028 110F 0029;;;;N;PARENTHESIZED HANGUL KIYEOK;;;; -320B;PARENTHESIZED HANGUL THIEUTH;So;0;L; 0028 1110 0029;;;;N;PARENTHESIZED HANGUL TIEUT;;;; -320C;PARENTHESIZED HANGUL PHIEUPH;So;0;L; 0028 1111 0029;;;;N;PARENTHESIZED HANGUL PIEUP;;;; -320D;PARENTHESIZED HANGUL HIEUH;So;0;L; 0028 1112 0029;;;;N;;;;; -320E;PARENTHESIZED HANGUL KIYEOK A;So;0;L; 0028 1100 1161 0029;;;;N;PARENTHESIZED HANGUL GA;;;; -320F;PARENTHESIZED HANGUL NIEUN A;So;0;L; 0028 1102 1161 0029;;;;N;PARENTHESIZED HANGUL NA;;;; -3210;PARENTHESIZED HANGUL TIKEUT A;So;0;L; 0028 1103 1161 0029;;;;N;PARENTHESIZED HANGUL DA;;;; -3211;PARENTHESIZED HANGUL RIEUL A;So;0;L; 0028 1105 1161 0029;;;;N;PARENTHESIZED HANGUL LA;;;; -3212;PARENTHESIZED HANGUL MIEUM A;So;0;L; 0028 1106 1161 0029;;;;N;PARENTHESIZED HANGUL MA;;;; -3213;PARENTHESIZED HANGUL PIEUP A;So;0;L; 0028 1107 1161 0029;;;;N;PARENTHESIZED HANGUL BA;;;; -3214;PARENTHESIZED HANGUL SIOS A;So;0;L; 0028 1109 1161 0029;;;;N;PARENTHESIZED HANGUL SA;;;; -3215;PARENTHESIZED HANGUL IEUNG A;So;0;L; 0028 110B 1161 0029;;;;N;PARENTHESIZED HANGUL A;;;; -3216;PARENTHESIZED HANGUL CIEUC A;So;0;L; 0028 110C 1161 0029;;;;N;PARENTHESIZED HANGUL JA;;;; -3217;PARENTHESIZED HANGUL CHIEUCH A;So;0;L; 0028 110E 1161 0029;;;;N;PARENTHESIZED HANGUL CA;;;; -3218;PARENTHESIZED HANGUL KHIEUKH A;So;0;L; 0028 110F 1161 0029;;;;N;PARENTHESIZED HANGUL KA;;;; -3219;PARENTHESIZED HANGUL THIEUTH A;So;0;L; 0028 1110 1161 0029;;;;N;PARENTHESIZED HANGUL TA;;;; -321A;PARENTHESIZED HANGUL PHIEUPH A;So;0;L; 0028 1111 1161 0029;;;;N;PARENTHESIZED HANGUL PA;;;; -321B;PARENTHESIZED HANGUL HIEUH A;So;0;L; 0028 1112 1161 0029;;;;N;PARENTHESIZED HANGUL HA;;;; -321C;PARENTHESIZED HANGUL CIEUC U;So;0;L; 0028 110C 116E 0029;;;;N;PARENTHESIZED HANGUL JU;;;; -321D;PARENTHESIZED KOREAN CHARACTER OJEON;So;0;ON; 0028 110B 1169 110C 1165 11AB 0029;;;;N;;;;; -321E;PARENTHESIZED KOREAN CHARACTER O HU;So;0;ON; 0028 110B 1169 1112 116E 0029;;;;N;;;;; -3220;PARENTHESIZED IDEOGRAPH ONE;No;0;L; 0028 4E00 0029;;;1;N;;;;; -3221;PARENTHESIZED IDEOGRAPH TWO;No;0;L; 0028 4E8C 0029;;;2;N;;;;; -3222;PARENTHESIZED IDEOGRAPH THREE;No;0;L; 0028 4E09 0029;;;3;N;;;;; -3223;PARENTHESIZED IDEOGRAPH FOUR;No;0;L; 0028 56DB 0029;;;4;N;;;;; -3224;PARENTHESIZED IDEOGRAPH FIVE;No;0;L; 0028 4E94 0029;;;5;N;;;;; -3225;PARENTHESIZED IDEOGRAPH SIX;No;0;L; 0028 516D 0029;;;6;N;;;;; -3226;PARENTHESIZED IDEOGRAPH SEVEN;No;0;L; 0028 4E03 0029;;;7;N;;;;; -3227;PARENTHESIZED IDEOGRAPH EIGHT;No;0;L; 0028 516B 0029;;;8;N;;;;; -3228;PARENTHESIZED IDEOGRAPH NINE;No;0;L; 0028 4E5D 0029;;;9;N;;;;; -3229;PARENTHESIZED IDEOGRAPH TEN;No;0;L; 0028 5341 0029;;;10;N;;;;; -322A;PARENTHESIZED IDEOGRAPH MOON;So;0;L; 0028 6708 0029;;;;N;;;;; -322B;PARENTHESIZED IDEOGRAPH FIRE;So;0;L; 0028 706B 0029;;;;N;;;;; -322C;PARENTHESIZED IDEOGRAPH WATER;So;0;L; 0028 6C34 0029;;;;N;;;;; -322D;PARENTHESIZED IDEOGRAPH WOOD;So;0;L; 0028 6728 0029;;;;N;;;;; -322E;PARENTHESIZED IDEOGRAPH METAL;So;0;L; 0028 91D1 0029;;;;N;;;;; -322F;PARENTHESIZED IDEOGRAPH EARTH;So;0;L; 0028 571F 0029;;;;N;;;;; -3230;PARENTHESIZED IDEOGRAPH SUN;So;0;L; 0028 65E5 0029;;;;N;;;;; -3231;PARENTHESIZED IDEOGRAPH STOCK;So;0;L; 0028 682A 0029;;;;N;;;;; -3232;PARENTHESIZED IDEOGRAPH HAVE;So;0;L; 0028 6709 0029;;;;N;;;;; -3233;PARENTHESIZED IDEOGRAPH SOCIETY;So;0;L; 0028 793E 0029;;;;N;;;;; -3234;PARENTHESIZED IDEOGRAPH NAME;So;0;L; 0028 540D 0029;;;;N;;;;; -3235;PARENTHESIZED IDEOGRAPH SPECIAL;So;0;L; 0028 7279 0029;;;;N;;;;; -3236;PARENTHESIZED IDEOGRAPH FINANCIAL;So;0;L; 0028 8CA1 0029;;;;N;;;;; -3237;PARENTHESIZED IDEOGRAPH CONGRATULATION;So;0;L; 0028 795D 0029;;;;N;;;;; -3238;PARENTHESIZED IDEOGRAPH LABOR;So;0;L; 0028 52B4 0029;;;;N;;;;; -3239;PARENTHESIZED IDEOGRAPH REPRESENT;So;0;L; 0028 4EE3 0029;;;;N;;;;; -323A;PARENTHESIZED IDEOGRAPH CALL;So;0;L; 0028 547C 0029;;;;N;;;;; -323B;PARENTHESIZED IDEOGRAPH STUDY;So;0;L; 0028 5B66 0029;;;;N;;;;; -323C;PARENTHESIZED IDEOGRAPH SUPERVISE;So;0;L; 0028 76E3 0029;;;;N;;;;; -323D;PARENTHESIZED IDEOGRAPH ENTERPRISE;So;0;L; 0028 4F01 0029;;;;N;;;;; -323E;PARENTHESIZED IDEOGRAPH RESOURCE;So;0;L; 0028 8CC7 0029;;;;N;;;;; -323F;PARENTHESIZED IDEOGRAPH ALLIANCE;So;0;L; 0028 5354 0029;;;;N;;;;; -3240;PARENTHESIZED IDEOGRAPH FESTIVAL;So;0;L; 0028 796D 0029;;;;N;;;;; -3241;PARENTHESIZED IDEOGRAPH REST;So;0;L; 0028 4F11 0029;;;;N;;;;; -3242;PARENTHESIZED IDEOGRAPH SELF;So;0;L; 0028 81EA 0029;;;;N;;;;; -3243;PARENTHESIZED IDEOGRAPH REACH;So;0;L; 0028 81F3 0029;;;;N;;;;; -3244;CIRCLED IDEOGRAPH QUESTION;So;0;L; 554F;;;;N;;;;; -3245;CIRCLED IDEOGRAPH KINDERGARTEN;So;0;L; 5E7C;;;;N;;;;; -3246;CIRCLED IDEOGRAPH SCHOOL;So;0;L; 6587;;;;N;;;;; -3247;CIRCLED IDEOGRAPH KOTO;So;0;L; 7B8F;;;;N;;;;; -3248;CIRCLED NUMBER TEN ON BLACK SQUARE;So;0;L;;;;;N;;;;; -3249;CIRCLED NUMBER TWENTY ON BLACK SQUARE;So;0;L;;;;;N;;;;; -324A;CIRCLED NUMBER THIRTY ON BLACK SQUARE;So;0;L;;;;;N;;;;; -324B;CIRCLED NUMBER FORTY ON BLACK SQUARE;So;0;L;;;;;N;;;;; -324C;CIRCLED NUMBER FIFTY ON BLACK SQUARE;So;0;L;;;;;N;;;;; -324D;CIRCLED NUMBER SIXTY ON BLACK SQUARE;So;0;L;;;;;N;;;;; -324E;CIRCLED NUMBER SEVENTY ON BLACK SQUARE;So;0;L;;;;;N;;;;; -324F;CIRCLED NUMBER EIGHTY ON BLACK SQUARE;So;0;L;;;;;N;;;;; -3250;PARTNERSHIP SIGN;So;0;ON; 0050 0054 0045;;;;N;;;;; -3251;CIRCLED NUMBER TWENTY ONE;No;0;ON; 0032 0031;;;21;N;;;;; -3252;CIRCLED NUMBER TWENTY TWO;No;0;ON; 0032 0032;;;22;N;;;;; -3253;CIRCLED NUMBER TWENTY THREE;No;0;ON; 0032 0033;;;23;N;;;;; -3254;CIRCLED NUMBER TWENTY FOUR;No;0;ON; 0032 0034;;;24;N;;;;; -3255;CIRCLED NUMBER TWENTY FIVE;No;0;ON; 0032 0035;;;25;N;;;;; -3256;CIRCLED NUMBER TWENTY SIX;No;0;ON; 0032 0036;;;26;N;;;;; -3257;CIRCLED NUMBER TWENTY SEVEN;No;0;ON; 0032 0037;;;27;N;;;;; -3258;CIRCLED NUMBER TWENTY EIGHT;No;0;ON; 0032 0038;;;28;N;;;;; -3259;CIRCLED NUMBER TWENTY NINE;No;0;ON; 0032 0039;;;29;N;;;;; -325A;CIRCLED NUMBER THIRTY;No;0;ON; 0033 0030;;;30;N;;;;; -325B;CIRCLED NUMBER THIRTY ONE;No;0;ON; 0033 0031;;;31;N;;;;; -325C;CIRCLED NUMBER THIRTY TWO;No;0;ON; 0033 0032;;;32;N;;;;; -325D;CIRCLED NUMBER THIRTY THREE;No;0;ON; 0033 0033;;;33;N;;;;; -325E;CIRCLED NUMBER THIRTY FOUR;No;0;ON; 0033 0034;;;34;N;;;;; -325F;CIRCLED NUMBER THIRTY FIVE;No;0;ON; 0033 0035;;;35;N;;;;; -3260;CIRCLED HANGUL KIYEOK;So;0;L; 1100;;;;N;CIRCLED HANGUL GIYEOG;;;; -3261;CIRCLED HANGUL NIEUN;So;0;L; 1102;;;;N;;;;; -3262;CIRCLED HANGUL TIKEUT;So;0;L; 1103;;;;N;CIRCLED HANGUL DIGEUD;;;; -3263;CIRCLED HANGUL RIEUL;So;0;L; 1105;;;;N;CIRCLED HANGUL LIEUL;;;; -3264;CIRCLED HANGUL MIEUM;So;0;L; 1106;;;;N;;;;; -3265;CIRCLED HANGUL PIEUP;So;0;L; 1107;;;;N;CIRCLED HANGUL BIEUB;;;; -3266;CIRCLED HANGUL SIOS;So;0;L; 1109;;;;N;;;;; -3267;CIRCLED HANGUL IEUNG;So;0;L; 110B;;;;N;;;;; -3268;CIRCLED HANGUL CIEUC;So;0;L; 110C;;;;N;CIRCLED HANGUL JIEUJ;;;; -3269;CIRCLED HANGUL CHIEUCH;So;0;L; 110E;;;;N;CIRCLED HANGUL CIEUC;;;; -326A;CIRCLED HANGUL KHIEUKH;So;0;L; 110F;;;;N;CIRCLED HANGUL KIYEOK;;;; -326B;CIRCLED HANGUL THIEUTH;So;0;L; 1110;;;;N;CIRCLED HANGUL TIEUT;;;; -326C;CIRCLED HANGUL PHIEUPH;So;0;L; 1111;;;;N;CIRCLED HANGUL PIEUP;;;; -326D;CIRCLED HANGUL HIEUH;So;0;L; 1112;;;;N;;;;; -326E;CIRCLED HANGUL KIYEOK A;So;0;L; 1100 1161;;;;N;CIRCLED HANGUL GA;;;; -326F;CIRCLED HANGUL NIEUN A;So;0;L; 1102 1161;;;;N;CIRCLED HANGUL NA;;;; -3270;CIRCLED HANGUL TIKEUT A;So;0;L; 1103 1161;;;;N;CIRCLED HANGUL DA;;;; -3271;CIRCLED HANGUL RIEUL A;So;0;L; 1105 1161;;;;N;CIRCLED HANGUL LA;;;; -3272;CIRCLED HANGUL MIEUM A;So;0;L; 1106 1161;;;;N;CIRCLED HANGUL MA;;;; -3273;CIRCLED HANGUL PIEUP A;So;0;L; 1107 1161;;;;N;CIRCLED HANGUL BA;;;; -3274;CIRCLED HANGUL SIOS A;So;0;L; 1109 1161;;;;N;CIRCLED HANGUL SA;;;; -3275;CIRCLED HANGUL IEUNG A;So;0;L; 110B 1161;;;;N;CIRCLED HANGUL A;;;; -3276;CIRCLED HANGUL CIEUC A;So;0;L; 110C 1161;;;;N;CIRCLED HANGUL JA;;;; -3277;CIRCLED HANGUL CHIEUCH A;So;0;L; 110E 1161;;;;N;CIRCLED HANGUL CA;;;; -3278;CIRCLED HANGUL KHIEUKH A;So;0;L; 110F 1161;;;;N;CIRCLED HANGUL KA;;;; -3279;CIRCLED HANGUL THIEUTH A;So;0;L; 1110 1161;;;;N;CIRCLED HANGUL TA;;;; -327A;CIRCLED HANGUL PHIEUPH A;So;0;L; 1111 1161;;;;N;CIRCLED HANGUL PA;;;; -327B;CIRCLED HANGUL HIEUH A;So;0;L; 1112 1161;;;;N;CIRCLED HANGUL HA;;;; -327C;CIRCLED KOREAN CHARACTER CHAMKO;So;0;ON; 110E 1161 11B7 1100 1169;;;;N;;;;; -327D;CIRCLED KOREAN CHARACTER JUEUI;So;0;ON; 110C 116E 110B 1174;;;;N;;;;; -327E;CIRCLED HANGUL IEUNG U;So;0;ON; 110B 116E;;;;N;;;;; -327F;KOREAN STANDARD SYMBOL;So;0;L;;;;;N;;;;; -3280;CIRCLED IDEOGRAPH ONE;No;0;L; 4E00;;;1;N;;;;; -3281;CIRCLED IDEOGRAPH TWO;No;0;L; 4E8C;;;2;N;;;;; -3282;CIRCLED IDEOGRAPH THREE;No;0;L; 4E09;;;3;N;;;;; -3283;CIRCLED IDEOGRAPH FOUR;No;0;L; 56DB;;;4;N;;;;; -3284;CIRCLED IDEOGRAPH FIVE;No;0;L; 4E94;;;5;N;;;;; -3285;CIRCLED IDEOGRAPH SIX;No;0;L; 516D;;;6;N;;;;; -3286;CIRCLED IDEOGRAPH SEVEN;No;0;L; 4E03;;;7;N;;;;; -3287;CIRCLED IDEOGRAPH EIGHT;No;0;L; 516B;;;8;N;;;;; -3288;CIRCLED IDEOGRAPH NINE;No;0;L; 4E5D;;;9;N;;;;; -3289;CIRCLED IDEOGRAPH TEN;No;0;L; 5341;;;10;N;;;;; -328A;CIRCLED IDEOGRAPH MOON;So;0;L; 6708;;;;N;;;;; -328B;CIRCLED IDEOGRAPH FIRE;So;0;L; 706B;;;;N;;;;; -328C;CIRCLED IDEOGRAPH WATER;So;0;L; 6C34;;;;N;;;;; -328D;CIRCLED IDEOGRAPH WOOD;So;0;L; 6728;;;;N;;;;; -328E;CIRCLED IDEOGRAPH METAL;So;0;L; 91D1;;;;N;;;;; -328F;CIRCLED IDEOGRAPH EARTH;So;0;L; 571F;;;;N;;;;; -3290;CIRCLED IDEOGRAPH SUN;So;0;L; 65E5;;;;N;;;;; -3291;CIRCLED IDEOGRAPH STOCK;So;0;L; 682A;;;;N;;;;; -3292;CIRCLED IDEOGRAPH HAVE;So;0;L; 6709;;;;N;;;;; -3293;CIRCLED IDEOGRAPH SOCIETY;So;0;L; 793E;;;;N;;;;; -3294;CIRCLED IDEOGRAPH NAME;So;0;L; 540D;;;;N;;;;; -3295;CIRCLED IDEOGRAPH SPECIAL;So;0;L; 7279;;;;N;;;;; -3296;CIRCLED IDEOGRAPH FINANCIAL;So;0;L; 8CA1;;;;N;;;;; -3297;CIRCLED IDEOGRAPH CONGRATULATION;So;0;L; 795D;;;;N;;;;; -3298;CIRCLED IDEOGRAPH LABOR;So;0;L; 52B4;;;;N;;;;; -3299;CIRCLED IDEOGRAPH SECRET;So;0;L; 79D8;;;;N;;;;; -329A;CIRCLED IDEOGRAPH MALE;So;0;L; 7537;;;;N;;;;; -329B;CIRCLED IDEOGRAPH FEMALE;So;0;L; 5973;;;;N;;;;; -329C;CIRCLED IDEOGRAPH SUITABLE;So;0;L; 9069;;;;N;;;;; -329D;CIRCLED IDEOGRAPH EXCELLENT;So;0;L; 512A;;;;N;;;;; -329E;CIRCLED IDEOGRAPH PRINT;So;0;L; 5370;;;;N;;;;; -329F;CIRCLED IDEOGRAPH ATTENTION;So;0;L; 6CE8;;;;N;;;;; -32A0;CIRCLED IDEOGRAPH ITEM;So;0;L; 9805;;;;N;;;;; -32A1;CIRCLED IDEOGRAPH REST;So;0;L; 4F11;;;;N;;;;; -32A2;CIRCLED IDEOGRAPH COPY;So;0;L; 5199;;;;N;;;;; -32A3;CIRCLED IDEOGRAPH CORRECT;So;0;L; 6B63;;;;N;;;;; -32A4;CIRCLED IDEOGRAPH HIGH;So;0;L; 4E0A;;;;N;;;;; -32A5;CIRCLED IDEOGRAPH CENTRE;So;0;L; 4E2D;;;;N;CIRCLED IDEOGRAPH CENTER;;;; -32A6;CIRCLED IDEOGRAPH LOW;So;0;L; 4E0B;;;;N;;;;; -32A7;CIRCLED IDEOGRAPH LEFT;So;0;L; 5DE6;;;;N;;;;; -32A8;CIRCLED IDEOGRAPH RIGHT;So;0;L; 53F3;;;;N;;;;; -32A9;CIRCLED IDEOGRAPH MEDICINE;So;0;L; 533B;;;;N;;;;; -32AA;CIRCLED IDEOGRAPH RELIGION;So;0;L; 5B97;;;;N;;;;; -32AB;CIRCLED IDEOGRAPH STUDY;So;0;L; 5B66;;;;N;;;;; -32AC;CIRCLED IDEOGRAPH SUPERVISE;So;0;L; 76E3;;;;N;;;;; -32AD;CIRCLED IDEOGRAPH ENTERPRISE;So;0;L; 4F01;;;;N;;;;; -32AE;CIRCLED IDEOGRAPH RESOURCE;So;0;L; 8CC7;;;;N;;;;; -32AF;CIRCLED IDEOGRAPH ALLIANCE;So;0;L; 5354;;;;N;;;;; -32B0;CIRCLED IDEOGRAPH NIGHT;So;0;L; 591C;;;;N;;;;; -32B1;CIRCLED NUMBER THIRTY SIX;No;0;ON; 0033 0036;;;36;N;;;;; -32B2;CIRCLED NUMBER THIRTY SEVEN;No;0;ON; 0033 0037;;;37;N;;;;; -32B3;CIRCLED NUMBER THIRTY EIGHT;No;0;ON; 0033 0038;;;38;N;;;;; -32B4;CIRCLED NUMBER THIRTY NINE;No;0;ON; 0033 0039;;;39;N;;;;; -32B5;CIRCLED NUMBER FORTY;No;0;ON; 0034 0030;;;40;N;;;;; -32B6;CIRCLED NUMBER FORTY ONE;No;0;ON; 0034 0031;;;41;N;;;;; -32B7;CIRCLED NUMBER FORTY TWO;No;0;ON; 0034 0032;;;42;N;;;;; -32B8;CIRCLED NUMBER FORTY THREE;No;0;ON; 0034 0033;;;43;N;;;;; -32B9;CIRCLED NUMBER FORTY FOUR;No;0;ON; 0034 0034;;;44;N;;;;; -32BA;CIRCLED NUMBER FORTY FIVE;No;0;ON; 0034 0035;;;45;N;;;;; -32BB;CIRCLED NUMBER FORTY SIX;No;0;ON; 0034 0036;;;46;N;;;;; -32BC;CIRCLED NUMBER FORTY SEVEN;No;0;ON; 0034 0037;;;47;N;;;;; -32BD;CIRCLED NUMBER FORTY EIGHT;No;0;ON; 0034 0038;;;48;N;;;;; -32BE;CIRCLED NUMBER FORTY NINE;No;0;ON; 0034 0039;;;49;N;;;;; -32BF;CIRCLED NUMBER FIFTY;No;0;ON; 0035 0030;;;50;N;;;;; -32C0;IDEOGRAPHIC TELEGRAPH SYMBOL FOR JANUARY;So;0;L; 0031 6708;;;;N;;;;; -32C1;IDEOGRAPHIC TELEGRAPH SYMBOL FOR FEBRUARY;So;0;L; 0032 6708;;;;N;;;;; -32C2;IDEOGRAPHIC TELEGRAPH SYMBOL FOR MARCH;So;0;L; 0033 6708;;;;N;;;;; -32C3;IDEOGRAPHIC TELEGRAPH SYMBOL FOR APRIL;So;0;L; 0034 6708;;;;N;;;;; -32C4;IDEOGRAPHIC TELEGRAPH SYMBOL FOR MAY;So;0;L; 0035 6708;;;;N;;;;; -32C5;IDEOGRAPHIC TELEGRAPH SYMBOL FOR JUNE;So;0;L; 0036 6708;;;;N;;;;; -32C6;IDEOGRAPHIC TELEGRAPH SYMBOL FOR JULY;So;0;L; 0037 6708;;;;N;;;;; -32C7;IDEOGRAPHIC TELEGRAPH SYMBOL FOR AUGUST;So;0;L; 0038 6708;;;;N;;;;; -32C8;IDEOGRAPHIC TELEGRAPH SYMBOL FOR SEPTEMBER;So;0;L; 0039 6708;;;;N;;;;; -32C9;IDEOGRAPHIC TELEGRAPH SYMBOL FOR OCTOBER;So;0;L; 0031 0030 6708;;;;N;;;;; -32CA;IDEOGRAPHIC TELEGRAPH SYMBOL FOR NOVEMBER;So;0;L; 0031 0031 6708;;;;N;;;;; -32CB;IDEOGRAPHIC TELEGRAPH SYMBOL FOR DECEMBER;So;0;L; 0031 0032 6708;;;;N;;;;; -32CC;SQUARE HG;So;0;ON; 0048 0067;;;;N;;;;; -32CD;SQUARE ERG;So;0;ON; 0065 0072 0067;;;;N;;;;; -32CE;SQUARE EV;So;0;ON; 0065 0056;;;;N;;;;; -32CF;LIMITED LIABILITY SIGN;So;0;ON; 004C 0054 0044;;;;N;;;;; -32D0;CIRCLED KATAKANA A;So;0;L; 30A2;;;;N;;;;; -32D1;CIRCLED KATAKANA I;So;0;L; 30A4;;;;N;;;;; -32D2;CIRCLED KATAKANA U;So;0;L; 30A6;;;;N;;;;; -32D3;CIRCLED KATAKANA E;So;0;L; 30A8;;;;N;;;;; -32D4;CIRCLED KATAKANA O;So;0;L; 30AA;;;;N;;;;; -32D5;CIRCLED KATAKANA KA;So;0;L; 30AB;;;;N;;;;; -32D6;CIRCLED KATAKANA KI;So;0;L; 30AD;;;;N;;;;; -32D7;CIRCLED KATAKANA KU;So;0;L; 30AF;;;;N;;;;; -32D8;CIRCLED KATAKANA KE;So;0;L; 30B1;;;;N;;;;; -32D9;CIRCLED KATAKANA KO;So;0;L; 30B3;;;;N;;;;; -32DA;CIRCLED KATAKANA SA;So;0;L; 30B5;;;;N;;;;; -32DB;CIRCLED KATAKANA SI;So;0;L; 30B7;;;;N;;;;; -32DC;CIRCLED KATAKANA SU;So;0;L; 30B9;;;;N;;;;; -32DD;CIRCLED KATAKANA SE;So;0;L; 30BB;;;;N;;;;; -32DE;CIRCLED KATAKANA SO;So;0;L; 30BD;;;;N;;;;; -32DF;CIRCLED KATAKANA TA;So;0;L; 30BF;;;;N;;;;; -32E0;CIRCLED KATAKANA TI;So;0;L; 30C1;;;;N;;;;; -32E1;CIRCLED KATAKANA TU;So;0;L; 30C4;;;;N;;;;; -32E2;CIRCLED KATAKANA TE;So;0;L; 30C6;;;;N;;;;; -32E3;CIRCLED KATAKANA TO;So;0;L; 30C8;;;;N;;;;; -32E4;CIRCLED KATAKANA NA;So;0;L; 30CA;;;;N;;;;; -32E5;CIRCLED KATAKANA NI;So;0;L; 30CB;;;;N;;;;; -32E6;CIRCLED KATAKANA NU;So;0;L; 30CC;;;;N;;;;; -32E7;CIRCLED KATAKANA NE;So;0;L; 30CD;;;;N;;;;; -32E8;CIRCLED KATAKANA NO;So;0;L; 30CE;;;;N;;;;; -32E9;CIRCLED KATAKANA HA;So;0;L; 30CF;;;;N;;;;; -32EA;CIRCLED KATAKANA HI;So;0;L; 30D2;;;;N;;;;; -32EB;CIRCLED KATAKANA HU;So;0;L; 30D5;;;;N;;;;; -32EC;CIRCLED KATAKANA HE;So;0;L; 30D8;;;;N;;;;; -32ED;CIRCLED KATAKANA HO;So;0;L; 30DB;;;;N;;;;; -32EE;CIRCLED KATAKANA MA;So;0;L; 30DE;;;;N;;;;; -32EF;CIRCLED KATAKANA MI;So;0;L; 30DF;;;;N;;;;; -32F0;CIRCLED KATAKANA MU;So;0;L; 30E0;;;;N;;;;; -32F1;CIRCLED KATAKANA ME;So;0;L; 30E1;;;;N;;;;; -32F2;CIRCLED KATAKANA MO;So;0;L; 30E2;;;;N;;;;; -32F3;CIRCLED KATAKANA YA;So;0;L; 30E4;;;;N;;;;; -32F4;CIRCLED KATAKANA YU;So;0;L; 30E6;;;;N;;;;; -32F5;CIRCLED KATAKANA YO;So;0;L; 30E8;;;;N;;;;; -32F6;CIRCLED KATAKANA RA;So;0;L; 30E9;;;;N;;;;; -32F7;CIRCLED KATAKANA RI;So;0;L; 30EA;;;;N;;;;; -32F8;CIRCLED KATAKANA RU;So;0;L; 30EB;;;;N;;;;; -32F9;CIRCLED KATAKANA RE;So;0;L; 30EC;;;;N;;;;; -32FA;CIRCLED KATAKANA RO;So;0;L; 30ED;;;;N;;;;; -32FB;CIRCLED KATAKANA WA;So;0;L; 30EF;;;;N;;;;; -32FC;CIRCLED KATAKANA WI;So;0;L; 30F0;;;;N;;;;; -32FD;CIRCLED KATAKANA WE;So;0;L; 30F1;;;;N;;;;; -32FE;CIRCLED KATAKANA WO;So;0;L; 30F2;;;;N;;;;; -3300;SQUARE APAATO;So;0;L; 30A2 30D1 30FC 30C8;;;;N;SQUARED APAATO;;;; -3301;SQUARE ARUHUA;So;0;L; 30A2 30EB 30D5 30A1;;;;N;SQUARED ARUHUA;;;; -3302;SQUARE ANPEA;So;0;L; 30A2 30F3 30DA 30A2;;;;N;SQUARED ANPEA;;;; -3303;SQUARE AARU;So;0;L; 30A2 30FC 30EB;;;;N;SQUARED AARU;;;; -3304;SQUARE ININGU;So;0;L; 30A4 30CB 30F3 30B0;;;;N;SQUARED ININGU;;;; -3305;SQUARE INTI;So;0;L; 30A4 30F3 30C1;;;;N;SQUARED INTI;;;; -3306;SQUARE UON;So;0;L; 30A6 30A9 30F3;;;;N;SQUARED UON;;;; -3307;SQUARE ESUKUUDO;So;0;L; 30A8 30B9 30AF 30FC 30C9;;;;N;SQUARED ESUKUUDO;;;; -3308;SQUARE EEKAA;So;0;L; 30A8 30FC 30AB 30FC;;;;N;SQUARED EEKAA;;;; -3309;SQUARE ONSU;So;0;L; 30AA 30F3 30B9;;;;N;SQUARED ONSU;;;; -330A;SQUARE OOMU;So;0;L; 30AA 30FC 30E0;;;;N;SQUARED OOMU;;;; -330B;SQUARE KAIRI;So;0;L; 30AB 30A4 30EA;;;;N;SQUARED KAIRI;;;; -330C;SQUARE KARATTO;So;0;L; 30AB 30E9 30C3 30C8;;;;N;SQUARED KARATTO;;;; -330D;SQUARE KARORII;So;0;L; 30AB 30ED 30EA 30FC;;;;N;SQUARED KARORII;;;; -330E;SQUARE GARON;So;0;L; 30AC 30ED 30F3;;;;N;SQUARED GARON;;;; -330F;SQUARE GANMA;So;0;L; 30AC 30F3 30DE;;;;N;SQUARED GANMA;;;; -3310;SQUARE GIGA;So;0;L; 30AE 30AC;;;;N;SQUARED GIGA;;;; -3311;SQUARE GINII;So;0;L; 30AE 30CB 30FC;;;;N;SQUARED GINII;;;; -3312;SQUARE KYURII;So;0;L; 30AD 30E5 30EA 30FC;;;;N;SQUARED KYURII;;;; -3313;SQUARE GIRUDAA;So;0;L; 30AE 30EB 30C0 30FC;;;;N;SQUARED GIRUDAA;;;; -3314;SQUARE KIRO;So;0;L; 30AD 30ED;;;;N;SQUARED KIRO;;;; -3315;SQUARE KIROGURAMU;So;0;L; 30AD 30ED 30B0 30E9 30E0;;;;N;SQUARED KIROGURAMU;;;; -3316;SQUARE KIROMEETORU;So;0;L; 30AD 30ED 30E1 30FC 30C8 30EB;;;;N;SQUARED KIROMEETORU;;;; -3317;SQUARE KIROWATTO;So;0;L; 30AD 30ED 30EF 30C3 30C8;;;;N;SQUARED KIROWATTO;;;; -3318;SQUARE GURAMU;So;0;L; 30B0 30E9 30E0;;;;N;SQUARED GURAMU;;;; -3319;SQUARE GURAMUTON;So;0;L; 30B0 30E9 30E0 30C8 30F3;;;;N;SQUARED GURAMUTON;;;; -331A;SQUARE KURUZEIRO;So;0;L; 30AF 30EB 30BC 30A4 30ED;;;;N;SQUARED KURUZEIRO;;;; -331B;SQUARE KUROONE;So;0;L; 30AF 30ED 30FC 30CD;;;;N;SQUARED KUROONE;;;; -331C;SQUARE KEESU;So;0;L; 30B1 30FC 30B9;;;;N;SQUARED KEESU;;;; -331D;SQUARE KORUNA;So;0;L; 30B3 30EB 30CA;;;;N;SQUARED KORUNA;;;; -331E;SQUARE KOOPO;So;0;L; 30B3 30FC 30DD;;;;N;SQUARED KOOPO;;;; -331F;SQUARE SAIKURU;So;0;L; 30B5 30A4 30AF 30EB;;;;N;SQUARED SAIKURU;;;; -3320;SQUARE SANTIIMU;So;0;L; 30B5 30F3 30C1 30FC 30E0;;;;N;SQUARED SANTIIMU;;;; -3321;SQUARE SIRINGU;So;0;L; 30B7 30EA 30F3 30B0;;;;N;SQUARED SIRINGU;;;; -3322;SQUARE SENTI;So;0;L; 30BB 30F3 30C1;;;;N;SQUARED SENTI;;;; -3323;SQUARE SENTO;So;0;L; 30BB 30F3 30C8;;;;N;SQUARED SENTO;;;; -3324;SQUARE DAASU;So;0;L; 30C0 30FC 30B9;;;;N;SQUARED DAASU;;;; -3325;SQUARE DESI;So;0;L; 30C7 30B7;;;;N;SQUARED DESI;;;; -3326;SQUARE DORU;So;0;L; 30C9 30EB;;;;N;SQUARED DORU;;;; -3327;SQUARE TON;So;0;L; 30C8 30F3;;;;N;SQUARED TON;;;; -3328;SQUARE NANO;So;0;L; 30CA 30CE;;;;N;SQUARED NANO;;;; -3329;SQUARE NOTTO;So;0;L; 30CE 30C3 30C8;;;;N;SQUARED NOTTO;;;; -332A;SQUARE HAITU;So;0;L; 30CF 30A4 30C4;;;;N;SQUARED HAITU;;;; -332B;SQUARE PAASENTO;So;0;L; 30D1 30FC 30BB 30F3 30C8;;;;N;SQUARED PAASENTO;;;; -332C;SQUARE PAATU;So;0;L; 30D1 30FC 30C4;;;;N;SQUARED PAATU;;;; -332D;SQUARE BAARERU;So;0;L; 30D0 30FC 30EC 30EB;;;;N;SQUARED BAARERU;;;; -332E;SQUARE PIASUTORU;So;0;L; 30D4 30A2 30B9 30C8 30EB;;;;N;SQUARED PIASUTORU;;;; -332F;SQUARE PIKURU;So;0;L; 30D4 30AF 30EB;;;;N;SQUARED PIKURU;;;; -3330;SQUARE PIKO;So;0;L; 30D4 30B3;;;;N;SQUARED PIKO;;;; -3331;SQUARE BIRU;So;0;L; 30D3 30EB;;;;N;SQUARED BIRU;;;; -3332;SQUARE HUARADDO;So;0;L; 30D5 30A1 30E9 30C3 30C9;;;;N;SQUARED HUARADDO;;;; -3333;SQUARE HUIITO;So;0;L; 30D5 30A3 30FC 30C8;;;;N;SQUARED HUIITO;;;; -3334;SQUARE BUSSYERU;So;0;L; 30D6 30C3 30B7 30A7 30EB;;;;N;SQUARED BUSSYERU;;;; -3335;SQUARE HURAN;So;0;L; 30D5 30E9 30F3;;;;N;SQUARED HURAN;;;; -3336;SQUARE HEKUTAARU;So;0;L; 30D8 30AF 30BF 30FC 30EB;;;;N;SQUARED HEKUTAARU;;;; -3337;SQUARE PESO;So;0;L; 30DA 30BD;;;;N;SQUARED PESO;;;; -3338;SQUARE PENIHI;So;0;L; 30DA 30CB 30D2;;;;N;SQUARED PENIHI;;;; -3339;SQUARE HERUTU;So;0;L; 30D8 30EB 30C4;;;;N;SQUARED HERUTU;;;; -333A;SQUARE PENSU;So;0;L; 30DA 30F3 30B9;;;;N;SQUARED PENSU;;;; -333B;SQUARE PEEZI;So;0;L; 30DA 30FC 30B8;;;;N;SQUARED PEEZI;;;; -333C;SQUARE BEETA;So;0;L; 30D9 30FC 30BF;;;;N;SQUARED BEETA;;;; -333D;SQUARE POINTO;So;0;L; 30DD 30A4 30F3 30C8;;;;N;SQUARED POINTO;;;; -333E;SQUARE BORUTO;So;0;L; 30DC 30EB 30C8;;;;N;SQUARED BORUTO;;;; -333F;SQUARE HON;So;0;L; 30DB 30F3;;;;N;SQUARED HON;;;; -3340;SQUARE PONDO;So;0;L; 30DD 30F3 30C9;;;;N;SQUARED PONDO;;;; -3341;SQUARE HOORU;So;0;L; 30DB 30FC 30EB;;;;N;SQUARED HOORU;;;; -3342;SQUARE HOON;So;0;L; 30DB 30FC 30F3;;;;N;SQUARED HOON;;;; -3343;SQUARE MAIKURO;So;0;L; 30DE 30A4 30AF 30ED;;;;N;SQUARED MAIKURO;;;; -3344;SQUARE MAIRU;So;0;L; 30DE 30A4 30EB;;;;N;SQUARED MAIRU;;;; -3345;SQUARE MAHHA;So;0;L; 30DE 30C3 30CF;;;;N;SQUARED MAHHA;;;; -3346;SQUARE MARUKU;So;0;L; 30DE 30EB 30AF;;;;N;SQUARED MARUKU;;;; -3347;SQUARE MANSYON;So;0;L; 30DE 30F3 30B7 30E7 30F3;;;;N;SQUARED MANSYON;;;; -3348;SQUARE MIKURON;So;0;L; 30DF 30AF 30ED 30F3;;;;N;SQUARED MIKURON;;;; -3349;SQUARE MIRI;So;0;L; 30DF 30EA;;;;N;SQUARED MIRI;;;; -334A;SQUARE MIRIBAARU;So;0;L; 30DF 30EA 30D0 30FC 30EB;;;;N;SQUARED MIRIBAARU;;;; -334B;SQUARE MEGA;So;0;L; 30E1 30AC;;;;N;SQUARED MEGA;;;; -334C;SQUARE MEGATON;So;0;L; 30E1 30AC 30C8 30F3;;;;N;SQUARED MEGATON;;;; -334D;SQUARE MEETORU;So;0;L; 30E1 30FC 30C8 30EB;;;;N;SQUARED MEETORU;;;; -334E;SQUARE YAADO;So;0;L; 30E4 30FC 30C9;;;;N;SQUARED YAADO;;;; -334F;SQUARE YAARU;So;0;L; 30E4 30FC 30EB;;;;N;SQUARED YAARU;;;; -3350;SQUARE YUAN;So;0;L; 30E6 30A2 30F3;;;;N;SQUARED YUAN;;;; -3351;SQUARE RITTORU;So;0;L; 30EA 30C3 30C8 30EB;;;;N;SQUARED RITTORU;;;; -3352;SQUARE RIRA;So;0;L; 30EA 30E9;;;;N;SQUARED RIRA;;;; -3353;SQUARE RUPII;So;0;L; 30EB 30D4 30FC;;;;N;SQUARED RUPII;;;; -3354;SQUARE RUUBURU;So;0;L; 30EB 30FC 30D6 30EB;;;;N;SQUARED RUUBURU;;;; -3355;SQUARE REMU;So;0;L; 30EC 30E0;;;;N;SQUARED REMU;;;; -3356;SQUARE RENTOGEN;So;0;L; 30EC 30F3 30C8 30B2 30F3;;;;N;SQUARED RENTOGEN;;;; -3357;SQUARE WATTO;So;0;L; 30EF 30C3 30C8;;;;N;SQUARED WATTO;;;; -3358;IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR ZERO;So;0;L; 0030 70B9;;;;N;;;;; -3359;IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR ONE;So;0;L; 0031 70B9;;;;N;;;;; -335A;IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR TWO;So;0;L; 0032 70B9;;;;N;;;;; -335B;IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR THREE;So;0;L; 0033 70B9;;;;N;;;;; -335C;IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR FOUR;So;0;L; 0034 70B9;;;;N;;;;; -335D;IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR FIVE;So;0;L; 0035 70B9;;;;N;;;;; -335E;IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR SIX;So;0;L; 0036 70B9;;;;N;;;;; -335F;IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR SEVEN;So;0;L; 0037 70B9;;;;N;;;;; -3360;IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR EIGHT;So;0;L; 0038 70B9;;;;N;;;;; -3361;IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR NINE;So;0;L; 0039 70B9;;;;N;;;;; -3362;IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR TEN;So;0;L; 0031 0030 70B9;;;;N;;;;; -3363;IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR ELEVEN;So;0;L; 0031 0031 70B9;;;;N;;;;; -3364;IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR TWELVE;So;0;L; 0031 0032 70B9;;;;N;;;;; -3365;IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR THIRTEEN;So;0;L; 0031 0033 70B9;;;;N;;;;; -3366;IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR FOURTEEN;So;0;L; 0031 0034 70B9;;;;N;;;;; -3367;IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR FIFTEEN;So;0;L; 0031 0035 70B9;;;;N;;;;; -3368;IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR SIXTEEN;So;0;L; 0031 0036 70B9;;;;N;;;;; -3369;IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR SEVENTEEN;So;0;L; 0031 0037 70B9;;;;N;;;;; -336A;IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR EIGHTEEN;So;0;L; 0031 0038 70B9;;;;N;;;;; -336B;IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR NINETEEN;So;0;L; 0031 0039 70B9;;;;N;;;;; -336C;IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR TWENTY;So;0;L; 0032 0030 70B9;;;;N;;;;; -336D;IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR TWENTY-ONE;So;0;L; 0032 0031 70B9;;;;N;;;;; -336E;IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR TWENTY-TWO;So;0;L; 0032 0032 70B9;;;;N;;;;; -336F;IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR TWENTY-THREE;So;0;L; 0032 0033 70B9;;;;N;;;;; -3370;IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR TWENTY-FOUR;So;0;L; 0032 0034 70B9;;;;N;;;;; -3371;SQUARE HPA;So;0;L; 0068 0050 0061;;;;N;;;;; -3372;SQUARE DA;So;0;L; 0064 0061;;;;N;;;;; -3373;SQUARE AU;So;0;L; 0041 0055;;;;N;;;;; -3374;SQUARE BAR;So;0;L; 0062 0061 0072;;;;N;;;;; -3375;SQUARE OV;So;0;L; 006F 0056;;;;N;;;;; -3376;SQUARE PC;So;0;L; 0070 0063;;;;N;;;;; -3377;SQUARE DM;So;0;ON; 0064 006D;;;;N;;;;; -3378;SQUARE DM SQUARED;So;0;ON; 0064 006D 00B2;;;;N;;;;; -3379;SQUARE DM CUBED;So;0;ON; 0064 006D 00B3;;;;N;;;;; -337A;SQUARE IU;So;0;ON; 0049 0055;;;;N;;;;; -337B;SQUARE ERA NAME HEISEI;So;0;L; 5E73 6210;;;;N;SQUARED TWO IDEOGRAPHS ERA NAME HEISEI;;;; -337C;SQUARE ERA NAME SYOUWA;So;0;L; 662D 548C;;;;N;SQUARED TWO IDEOGRAPHS ERA NAME SYOUWA;;;; -337D;SQUARE ERA NAME TAISYOU;So;0;L; 5927 6B63;;;;N;SQUARED TWO IDEOGRAPHS ERA NAME TAISYOU;;;; -337E;SQUARE ERA NAME MEIZI;So;0;L; 660E 6CBB;;;;N;SQUARED TWO IDEOGRAPHS ERA NAME MEIZI;;;; -337F;SQUARE CORPORATION;So;0;L; 682A 5F0F 4F1A 793E;;;;N;SQUARED FOUR IDEOGRAPHS CORPORATION;;;; -3380;SQUARE PA AMPS;So;0;L; 0070 0041;;;;N;SQUARED PA AMPS;;;; -3381;SQUARE NA;So;0;L; 006E 0041;;;;N;SQUARED NA;;;; -3382;SQUARE MU A;So;0;L; 03BC 0041;;;;N;SQUARED MU A;;;; -3383;SQUARE MA;So;0;L; 006D 0041;;;;N;SQUARED MA;;;; -3384;SQUARE KA;So;0;L; 006B 0041;;;;N;SQUARED KA;;;; -3385;SQUARE KB;So;0;L; 004B 0042;;;;N;SQUARED KB;;;; -3386;SQUARE MB;So;0;L; 004D 0042;;;;N;SQUARED MB;;;; -3387;SQUARE GB;So;0;L; 0047 0042;;;;N;SQUARED GB;;;; -3388;SQUARE CAL;So;0;L; 0063 0061 006C;;;;N;SQUARED CAL;;;; -3389;SQUARE KCAL;So;0;L; 006B 0063 0061 006C;;;;N;SQUARED KCAL;;;; -338A;SQUARE PF;So;0;L; 0070 0046;;;;N;SQUARED PF;;;; -338B;SQUARE NF;So;0;L; 006E 0046;;;;N;SQUARED NF;;;; -338C;SQUARE MU F;So;0;L; 03BC 0046;;;;N;SQUARED MU F;;;; -338D;SQUARE MU G;So;0;L; 03BC 0067;;;;N;SQUARED MU G;;;; -338E;SQUARE MG;So;0;L; 006D 0067;;;;N;SQUARED MG;;;; -338F;SQUARE KG;So;0;L; 006B 0067;;;;N;SQUARED KG;;;; -3390;SQUARE HZ;So;0;L; 0048 007A;;;;N;SQUARED HZ;;;; -3391;SQUARE KHZ;So;0;L; 006B 0048 007A;;;;N;SQUARED KHZ;;;; -3392;SQUARE MHZ;So;0;L; 004D 0048 007A;;;;N;SQUARED MHZ;;;; -3393;SQUARE GHZ;So;0;L; 0047 0048 007A;;;;N;SQUARED GHZ;;;; -3394;SQUARE THZ;So;0;L; 0054 0048 007A;;;;N;SQUARED THZ;;;; -3395;SQUARE MU L;So;0;L; 03BC 2113;;;;N;SQUARED MU L;;;; -3396;SQUARE ML;So;0;L; 006D 2113;;;;N;SQUARED ML;;;; -3397;SQUARE DL;So;0;L; 0064 2113;;;;N;SQUARED DL;;;; -3398;SQUARE KL;So;0;L; 006B 2113;;;;N;SQUARED KL;;;; -3399;SQUARE FM;So;0;L; 0066 006D;;;;N;SQUARED FM;;;; -339A;SQUARE NM;So;0;L; 006E 006D;;;;N;SQUARED NM;;;; -339B;SQUARE MU M;So;0;L; 03BC 006D;;;;N;SQUARED MU M;;;; -339C;SQUARE MM;So;0;L; 006D 006D;;;;N;SQUARED MM;;;; -339D;SQUARE CM;So;0;L; 0063 006D;;;;N;SQUARED CM;;;; -339E;SQUARE KM;So;0;L; 006B 006D;;;;N;SQUARED KM;;;; -339F;SQUARE MM SQUARED;So;0;L; 006D 006D 00B2;;;;N;SQUARED MM SQUARED;;;; -33A0;SQUARE CM SQUARED;So;0;L; 0063 006D 00B2;;;;N;SQUARED CM SQUARED;;;; -33A1;SQUARE M SQUARED;So;0;L; 006D 00B2;;;;N;SQUARED M SQUARED;;;; -33A2;SQUARE KM SQUARED;So;0;L; 006B 006D 00B2;;;;N;SQUARED KM SQUARED;;;; -33A3;SQUARE MM CUBED;So;0;L; 006D 006D 00B3;;;;N;SQUARED MM CUBED;;;; -33A4;SQUARE CM CUBED;So;0;L; 0063 006D 00B3;;;;N;SQUARED CM CUBED;;;; -33A5;SQUARE M CUBED;So;0;L; 006D 00B3;;;;N;SQUARED M CUBED;;;; -33A6;SQUARE KM CUBED;So;0;L; 006B 006D 00B3;;;;N;SQUARED KM CUBED;;;; -33A7;SQUARE M OVER S;So;0;L; 006D 2215 0073;;;;N;SQUARED M OVER S;;;; -33A8;SQUARE M OVER S SQUARED;So;0;L; 006D 2215 0073 00B2;;;;N;SQUARED M OVER S SQUARED;;;; -33A9;SQUARE PA;So;0;L; 0050 0061;;;;N;SQUARED PA;;;; -33AA;SQUARE KPA;So;0;L; 006B 0050 0061;;;;N;SQUARED KPA;;;; -33AB;SQUARE MPA;So;0;L; 004D 0050 0061;;;;N;SQUARED MPA;;;; -33AC;SQUARE GPA;So;0;L; 0047 0050 0061;;;;N;SQUARED GPA;;;; -33AD;SQUARE RAD;So;0;L; 0072 0061 0064;;;;N;SQUARED RAD;;;; -33AE;SQUARE RAD OVER S;So;0;L; 0072 0061 0064 2215 0073;;;;N;SQUARED RAD OVER S;;;; -33AF;SQUARE RAD OVER S SQUARED;So;0;L; 0072 0061 0064 2215 0073 00B2;;;;N;SQUARED RAD OVER S SQUARED;;;; -33B0;SQUARE PS;So;0;L; 0070 0073;;;;N;SQUARED PS;;;; -33B1;SQUARE NS;So;0;L; 006E 0073;;;;N;SQUARED NS;;;; -33B2;SQUARE MU S;So;0;L; 03BC 0073;;;;N;SQUARED MU S;;;; -33B3;SQUARE MS;So;0;L; 006D 0073;;;;N;SQUARED MS;;;; -33B4;SQUARE PV;So;0;L; 0070 0056;;;;N;SQUARED PV;;;; -33B5;SQUARE NV;So;0;L; 006E 0056;;;;N;SQUARED NV;;;; -33B6;SQUARE MU V;So;0;L; 03BC 0056;;;;N;SQUARED MU V;;;; -33B7;SQUARE MV;So;0;L; 006D 0056;;;;N;SQUARED MV;;;; -33B8;SQUARE KV;So;0;L; 006B 0056;;;;N;SQUARED KV;;;; -33B9;SQUARE MV MEGA;So;0;L; 004D 0056;;;;N;SQUARED MV MEGA;;;; -33BA;SQUARE PW;So;0;L; 0070 0057;;;;N;SQUARED PW;;;; -33BB;SQUARE NW;So;0;L; 006E 0057;;;;N;SQUARED NW;;;; -33BC;SQUARE MU W;So;0;L; 03BC 0057;;;;N;SQUARED MU W;;;; -33BD;SQUARE MW;So;0;L; 006D 0057;;;;N;SQUARED MW;;;; -33BE;SQUARE KW;So;0;L; 006B 0057;;;;N;SQUARED KW;;;; -33BF;SQUARE MW MEGA;So;0;L; 004D 0057;;;;N;SQUARED MW MEGA;;;; -33C0;SQUARE K OHM;So;0;L; 006B 03A9;;;;N;SQUARED K OHM;;;; -33C1;SQUARE M OHM;So;0;L; 004D 03A9;;;;N;SQUARED M OHM;;;; -33C2;SQUARE AM;So;0;L; 0061 002E 006D 002E;;;;N;SQUARED AM;;;; -33C3;SQUARE BQ;So;0;L; 0042 0071;;;;N;SQUARED BQ;;;; -33C4;SQUARE CC;So;0;L; 0063 0063;;;;N;SQUARED CC;;;; -33C5;SQUARE CD;So;0;L; 0063 0064;;;;N;SQUARED CD;;;; -33C6;SQUARE C OVER KG;So;0;L; 0043 2215 006B 0067;;;;N;SQUARED C OVER KG;;;; -33C7;SQUARE CO;So;0;L; 0043 006F 002E;;;;N;SQUARED CO;;;; -33C8;SQUARE DB;So;0;L; 0064 0042;;;;N;SQUARED DB;;;; -33C9;SQUARE GY;So;0;L; 0047 0079;;;;N;SQUARED GY;;;; -33CA;SQUARE HA;So;0;L; 0068 0061;;;;N;SQUARED HA;;;; -33CB;SQUARE HP;So;0;L; 0048 0050;;;;N;SQUARED HP;;;; -33CC;SQUARE IN;So;0;L; 0069 006E;;;;N;SQUARED IN;;;; -33CD;SQUARE KK;So;0;L; 004B 004B;;;;N;SQUARED KK;;;; -33CE;SQUARE KM CAPITAL;So;0;L; 004B 004D;;;;N;SQUARED KM CAPITAL;;;; -33CF;SQUARE KT;So;0;L; 006B 0074;;;;N;SQUARED KT;;;; -33D0;SQUARE LM;So;0;L; 006C 006D;;;;N;SQUARED LM;;;; -33D1;SQUARE LN;So;0;L; 006C 006E;;;;N;SQUARED LN;;;; -33D2;SQUARE LOG;So;0;L; 006C 006F 0067;;;;N;SQUARED LOG;;;; -33D3;SQUARE LX;So;0;L; 006C 0078;;;;N;SQUARED LX;;;; -33D4;SQUARE MB SMALL;So;0;L; 006D 0062;;;;N;SQUARED MB SMALL;;;; -33D5;SQUARE MIL;So;0;L; 006D 0069 006C;;;;N;SQUARED MIL;;;; -33D6;SQUARE MOL;So;0;L; 006D 006F 006C;;;;N;SQUARED MOL;;;; -33D7;SQUARE PH;So;0;L; 0050 0048;;;;N;SQUARED PH;;;; -33D8;SQUARE PM;So;0;L; 0070 002E 006D 002E;;;;N;SQUARED PM;;;; -33D9;SQUARE PPM;So;0;L; 0050 0050 004D;;;;N;SQUARED PPM;;;; -33DA;SQUARE PR;So;0;L; 0050 0052;;;;N;SQUARED PR;;;; -33DB;SQUARE SR;So;0;L; 0073 0072;;;;N;SQUARED SR;;;; -33DC;SQUARE SV;So;0;L; 0053 0076;;;;N;SQUARED SV;;;; -33DD;SQUARE WB;So;0;L; 0057 0062;;;;N;SQUARED WB;;;; -33DE;SQUARE V OVER M;So;0;ON; 0056 2215 006D;;;;N;;;;; -33DF;SQUARE A OVER M;So;0;ON; 0041 2215 006D;;;;N;;;;; -33E0;IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY ONE;So;0;L; 0031 65E5;;;;N;;;;; -33E1;IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY TWO;So;0;L; 0032 65E5;;;;N;;;;; -33E2;IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY THREE;So;0;L; 0033 65E5;;;;N;;;;; -33E3;IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY FOUR;So;0;L; 0034 65E5;;;;N;;;;; -33E4;IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY FIVE;So;0;L; 0035 65E5;;;;N;;;;; -33E5;IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY SIX;So;0;L; 0036 65E5;;;;N;;;;; -33E6;IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY SEVEN;So;0;L; 0037 65E5;;;;N;;;;; -33E7;IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY EIGHT;So;0;L; 0038 65E5;;;;N;;;;; -33E8;IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY NINE;So;0;L; 0039 65E5;;;;N;;;;; -33E9;IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY TEN;So;0;L; 0031 0030 65E5;;;;N;;;;; -33EA;IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY ELEVEN;So;0;L; 0031 0031 65E5;;;;N;;;;; -33EB;IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY TWELVE;So;0;L; 0031 0032 65E5;;;;N;;;;; -33EC;IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY THIRTEEN;So;0;L; 0031 0033 65E5;;;;N;;;;; -33ED;IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY FOURTEEN;So;0;L; 0031 0034 65E5;;;;N;;;;; -33EE;IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY FIFTEEN;So;0;L; 0031 0035 65E5;;;;N;;;;; -33EF;IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY SIXTEEN;So;0;L; 0031 0036 65E5;;;;N;;;;; -33F0;IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY SEVENTEEN;So;0;L; 0031 0037 65E5;;;;N;;;;; -33F1;IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY EIGHTEEN;So;0;L; 0031 0038 65E5;;;;N;;;;; -33F2;IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY NINETEEN;So;0;L; 0031 0039 65E5;;;;N;;;;; -33F3;IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY TWENTY;So;0;L; 0032 0030 65E5;;;;N;;;;; -33F4;IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY TWENTY-ONE;So;0;L; 0032 0031 65E5;;;;N;;;;; -33F5;IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY TWENTY-TWO;So;0;L; 0032 0032 65E5;;;;N;;;;; -33F6;IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY TWENTY-THREE;So;0;L; 0032 0033 65E5;;;;N;;;;; -33F7;IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY TWENTY-FOUR;So;0;L; 0032 0034 65E5;;;;N;;;;; -33F8;IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY TWENTY-FIVE;So;0;L; 0032 0035 65E5;;;;N;;;;; -33F9;IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY TWENTY-SIX;So;0;L; 0032 0036 65E5;;;;N;;;;; -33FA;IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY TWENTY-SEVEN;So;0;L; 0032 0037 65E5;;;;N;;;;; -33FB;IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY TWENTY-EIGHT;So;0;L; 0032 0038 65E5;;;;N;;;;; -33FC;IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY TWENTY-NINE;So;0;L; 0032 0039 65E5;;;;N;;;;; -33FD;IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY THIRTY;So;0;L; 0033 0030 65E5;;;;N;;;;; -33FE;IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY THIRTY-ONE;So;0;L; 0033 0031 65E5;;;;N;;;;; -33FF;SQUARE GAL;So;0;ON; 0067 0061 006C;;;;N;;;;; -3400;;Lo;0;L;;;;;N;;;;; -4DB5;;Lo;0;L;;;;;N;;;;; -4DC0;HEXAGRAM FOR THE CREATIVE HEAVEN;So;0;ON;;;;;N;;;;; -4DC1;HEXAGRAM FOR THE RECEPTIVE EARTH;So;0;ON;;;;;N;;;;; -4DC2;HEXAGRAM FOR DIFFICULTY AT THE BEGINNING;So;0;ON;;;;;N;;;;; -4DC3;HEXAGRAM FOR YOUTHFUL FOLLY;So;0;ON;;;;;N;;;;; -4DC4;HEXAGRAM FOR WAITING;So;0;ON;;;;;N;;;;; -4DC5;HEXAGRAM FOR CONFLICT;So;0;ON;;;;;N;;;;; -4DC6;HEXAGRAM FOR THE ARMY;So;0;ON;;;;;N;;;;; -4DC7;HEXAGRAM FOR HOLDING TOGETHER;So;0;ON;;;;;N;;;;; -4DC8;HEXAGRAM FOR SMALL TAMING;So;0;ON;;;;;N;;;;; -4DC9;HEXAGRAM FOR TREADING;So;0;ON;;;;;N;;;;; -4DCA;HEXAGRAM FOR PEACE;So;0;ON;;;;;N;;;;; -4DCB;HEXAGRAM FOR STANDSTILL;So;0;ON;;;;;N;;;;; -4DCC;HEXAGRAM FOR FELLOWSHIP;So;0;ON;;;;;N;;;;; -4DCD;HEXAGRAM FOR GREAT POSSESSION;So;0;ON;;;;;N;;;;; -4DCE;HEXAGRAM FOR MODESTY;So;0;ON;;;;;N;;;;; -4DCF;HEXAGRAM FOR ENTHUSIASM;So;0;ON;;;;;N;;;;; -4DD0;HEXAGRAM FOR FOLLOWING;So;0;ON;;;;;N;;;;; -4DD1;HEXAGRAM FOR WORK ON THE DECAYED;So;0;ON;;;;;N;;;;; -4DD2;HEXAGRAM FOR APPROACH;So;0;ON;;;;;N;;;;; -4DD3;HEXAGRAM FOR CONTEMPLATION;So;0;ON;;;;;N;;;;; -4DD4;HEXAGRAM FOR BITING THROUGH;So;0;ON;;;;;N;;;;; -4DD5;HEXAGRAM FOR GRACE;So;0;ON;;;;;N;;;;; -4DD6;HEXAGRAM FOR SPLITTING APART;So;0;ON;;;;;N;;;;; -4DD7;HEXAGRAM FOR RETURN;So;0;ON;;;;;N;;;;; -4DD8;HEXAGRAM FOR INNOCENCE;So;0;ON;;;;;N;;;;; -4DD9;HEXAGRAM FOR GREAT TAMING;So;0;ON;;;;;N;;;;; -4DDA;HEXAGRAM FOR MOUTH CORNERS;So;0;ON;;;;;N;;;;; -4DDB;HEXAGRAM FOR GREAT PREPONDERANCE;So;0;ON;;;;;N;;;;; -4DDC;HEXAGRAM FOR THE ABYSMAL WATER;So;0;ON;;;;;N;;;;; -4DDD;HEXAGRAM FOR THE CLINGING FIRE;So;0;ON;;;;;N;;;;; -4DDE;HEXAGRAM FOR INFLUENCE;So;0;ON;;;;;N;;;;; -4DDF;HEXAGRAM FOR DURATION;So;0;ON;;;;;N;;;;; -4DE0;HEXAGRAM FOR RETREAT;So;0;ON;;;;;N;;;;; -4DE1;HEXAGRAM FOR GREAT POWER;So;0;ON;;;;;N;;;;; -4DE2;HEXAGRAM FOR PROGRESS;So;0;ON;;;;;N;;;;; -4DE3;HEXAGRAM FOR DARKENING OF THE LIGHT;So;0;ON;;;;;N;;;;; -4DE4;HEXAGRAM FOR THE FAMILY;So;0;ON;;;;;N;;;;; -4DE5;HEXAGRAM FOR OPPOSITION;So;0;ON;;;;;N;;;;; -4DE6;HEXAGRAM FOR OBSTRUCTION;So;0;ON;;;;;N;;;;; -4DE7;HEXAGRAM FOR DELIVERANCE;So;0;ON;;;;;N;;;;; -4DE8;HEXAGRAM FOR DECREASE;So;0;ON;;;;;N;;;;; -4DE9;HEXAGRAM FOR INCREASE;So;0;ON;;;;;N;;;;; -4DEA;HEXAGRAM FOR BREAKTHROUGH;So;0;ON;;;;;N;;;;; -4DEB;HEXAGRAM FOR COMING TO MEET;So;0;ON;;;;;N;;;;; -4DEC;HEXAGRAM FOR GATHERING TOGETHER;So;0;ON;;;;;N;;;;; -4DED;HEXAGRAM FOR PUSHING UPWARD;So;0;ON;;;;;N;;;;; -4DEE;HEXAGRAM FOR OPPRESSION;So;0;ON;;;;;N;;;;; -4DEF;HEXAGRAM FOR THE WELL;So;0;ON;;;;;N;;;;; -4DF0;HEXAGRAM FOR REVOLUTION;So;0;ON;;;;;N;;;;; -4DF1;HEXAGRAM FOR THE CAULDRON;So;0;ON;;;;;N;;;;; -4DF2;HEXAGRAM FOR THE AROUSING THUNDER;So;0;ON;;;;;N;;;;; -4DF3;HEXAGRAM FOR THE KEEPING STILL MOUNTAIN;So;0;ON;;;;;N;;;;; -4DF4;HEXAGRAM FOR DEVELOPMENT;So;0;ON;;;;;N;;;;; -4DF5;HEXAGRAM FOR THE MARRYING MAIDEN;So;0;ON;;;;;N;;;;; -4DF6;HEXAGRAM FOR ABUNDANCE;So;0;ON;;;;;N;;;;; -4DF7;HEXAGRAM FOR THE WANDERER;So;0;ON;;;;;N;;;;; -4DF8;HEXAGRAM FOR THE GENTLE WIND;So;0;ON;;;;;N;;;;; -4DF9;HEXAGRAM FOR THE JOYOUS LAKE;So;0;ON;;;;;N;;;;; -4DFA;HEXAGRAM FOR DISPERSION;So;0;ON;;;;;N;;;;; -4DFB;HEXAGRAM FOR LIMITATION;So;0;ON;;;;;N;;;;; -4DFC;HEXAGRAM FOR INNER TRUTH;So;0;ON;;;;;N;;;;; -4DFD;HEXAGRAM FOR SMALL PREPONDERANCE;So;0;ON;;;;;N;;;;; -4DFE;HEXAGRAM FOR AFTER COMPLETION;So;0;ON;;;;;N;;;;; -4DFF;HEXAGRAM FOR BEFORE COMPLETION;So;0;ON;;;;;N;;;;; -4E00;;Lo;0;L;;;;;N;;;;; -9FCB;;Lo;0;L;;;;;N;;;;; -A000;YI SYLLABLE IT;Lo;0;L;;;;;N;;;;; -A001;YI SYLLABLE IX;Lo;0;L;;;;;N;;;;; -A002;YI SYLLABLE I;Lo;0;L;;;;;N;;;;; -A003;YI SYLLABLE IP;Lo;0;L;;;;;N;;;;; -A004;YI SYLLABLE IET;Lo;0;L;;;;;N;;;;; -A005;YI SYLLABLE IEX;Lo;0;L;;;;;N;;;;; -A006;YI SYLLABLE IE;Lo;0;L;;;;;N;;;;; -A007;YI SYLLABLE IEP;Lo;0;L;;;;;N;;;;; -A008;YI SYLLABLE AT;Lo;0;L;;;;;N;;;;; -A009;YI SYLLABLE AX;Lo;0;L;;;;;N;;;;; -A00A;YI SYLLABLE A;Lo;0;L;;;;;N;;;;; -A00B;YI SYLLABLE AP;Lo;0;L;;;;;N;;;;; -A00C;YI SYLLABLE UOX;Lo;0;L;;;;;N;;;;; -A00D;YI SYLLABLE UO;Lo;0;L;;;;;N;;;;; -A00E;YI SYLLABLE UOP;Lo;0;L;;;;;N;;;;; -A00F;YI SYLLABLE OT;Lo;0;L;;;;;N;;;;; -A010;YI SYLLABLE OX;Lo;0;L;;;;;N;;;;; -A011;YI SYLLABLE O;Lo;0;L;;;;;N;;;;; -A012;YI SYLLABLE OP;Lo;0;L;;;;;N;;;;; -A013;YI SYLLABLE EX;Lo;0;L;;;;;N;;;;; -A014;YI SYLLABLE E;Lo;0;L;;;;;N;;;;; -A015;YI SYLLABLE WU;Lm;0;L;;;;;N;;;;; -A016;YI SYLLABLE BIT;Lo;0;L;;;;;N;;;;; -A017;YI SYLLABLE BIX;Lo;0;L;;;;;N;;;;; -A018;YI SYLLABLE BI;Lo;0;L;;;;;N;;;;; -A019;YI SYLLABLE BIP;Lo;0;L;;;;;N;;;;; -A01A;YI SYLLABLE BIET;Lo;0;L;;;;;N;;;;; -A01B;YI SYLLABLE BIEX;Lo;0;L;;;;;N;;;;; -A01C;YI SYLLABLE BIE;Lo;0;L;;;;;N;;;;; -A01D;YI SYLLABLE BIEP;Lo;0;L;;;;;N;;;;; -A01E;YI SYLLABLE BAT;Lo;0;L;;;;;N;;;;; -A01F;YI SYLLABLE BAX;Lo;0;L;;;;;N;;;;; -A020;YI SYLLABLE BA;Lo;0;L;;;;;N;;;;; -A021;YI SYLLABLE BAP;Lo;0;L;;;;;N;;;;; -A022;YI SYLLABLE BUOX;Lo;0;L;;;;;N;;;;; -A023;YI SYLLABLE BUO;Lo;0;L;;;;;N;;;;; -A024;YI SYLLABLE BUOP;Lo;0;L;;;;;N;;;;; -A025;YI SYLLABLE BOT;Lo;0;L;;;;;N;;;;; -A026;YI SYLLABLE BOX;Lo;0;L;;;;;N;;;;; -A027;YI SYLLABLE BO;Lo;0;L;;;;;N;;;;; -A028;YI SYLLABLE BOP;Lo;0;L;;;;;N;;;;; -A029;YI SYLLABLE BEX;Lo;0;L;;;;;N;;;;; -A02A;YI SYLLABLE BE;Lo;0;L;;;;;N;;;;; -A02B;YI SYLLABLE BEP;Lo;0;L;;;;;N;;;;; -A02C;YI SYLLABLE BUT;Lo;0;L;;;;;N;;;;; -A02D;YI SYLLABLE BUX;Lo;0;L;;;;;N;;;;; -A02E;YI SYLLABLE BU;Lo;0;L;;;;;N;;;;; -A02F;YI SYLLABLE BUP;Lo;0;L;;;;;N;;;;; -A030;YI SYLLABLE BURX;Lo;0;L;;;;;N;;;;; -A031;YI SYLLABLE BUR;Lo;0;L;;;;;N;;;;; -A032;YI SYLLABLE BYT;Lo;0;L;;;;;N;;;;; -A033;YI SYLLABLE BYX;Lo;0;L;;;;;N;;;;; -A034;YI SYLLABLE BY;Lo;0;L;;;;;N;;;;; -A035;YI SYLLABLE BYP;Lo;0;L;;;;;N;;;;; -A036;YI SYLLABLE BYRX;Lo;0;L;;;;;N;;;;; -A037;YI SYLLABLE BYR;Lo;0;L;;;;;N;;;;; -A038;YI SYLLABLE PIT;Lo;0;L;;;;;N;;;;; -A039;YI SYLLABLE PIX;Lo;0;L;;;;;N;;;;; -A03A;YI SYLLABLE PI;Lo;0;L;;;;;N;;;;; -A03B;YI SYLLABLE PIP;Lo;0;L;;;;;N;;;;; -A03C;YI SYLLABLE PIEX;Lo;0;L;;;;;N;;;;; -A03D;YI SYLLABLE PIE;Lo;0;L;;;;;N;;;;; -A03E;YI SYLLABLE PIEP;Lo;0;L;;;;;N;;;;; -A03F;YI SYLLABLE PAT;Lo;0;L;;;;;N;;;;; -A040;YI SYLLABLE PAX;Lo;0;L;;;;;N;;;;; -A041;YI SYLLABLE PA;Lo;0;L;;;;;N;;;;; -A042;YI SYLLABLE PAP;Lo;0;L;;;;;N;;;;; -A043;YI SYLLABLE PUOX;Lo;0;L;;;;;N;;;;; -A044;YI SYLLABLE PUO;Lo;0;L;;;;;N;;;;; -A045;YI SYLLABLE PUOP;Lo;0;L;;;;;N;;;;; -A046;YI SYLLABLE POT;Lo;0;L;;;;;N;;;;; -A047;YI SYLLABLE POX;Lo;0;L;;;;;N;;;;; -A048;YI SYLLABLE PO;Lo;0;L;;;;;N;;;;; -A049;YI SYLLABLE POP;Lo;0;L;;;;;N;;;;; -A04A;YI SYLLABLE PUT;Lo;0;L;;;;;N;;;;; -A04B;YI SYLLABLE PUX;Lo;0;L;;;;;N;;;;; -A04C;YI SYLLABLE PU;Lo;0;L;;;;;N;;;;; -A04D;YI SYLLABLE PUP;Lo;0;L;;;;;N;;;;; -A04E;YI SYLLABLE PURX;Lo;0;L;;;;;N;;;;; -A04F;YI SYLLABLE PUR;Lo;0;L;;;;;N;;;;; -A050;YI SYLLABLE PYT;Lo;0;L;;;;;N;;;;; -A051;YI SYLLABLE PYX;Lo;0;L;;;;;N;;;;; -A052;YI SYLLABLE PY;Lo;0;L;;;;;N;;;;; -A053;YI SYLLABLE PYP;Lo;0;L;;;;;N;;;;; -A054;YI SYLLABLE PYRX;Lo;0;L;;;;;N;;;;; -A055;YI SYLLABLE PYR;Lo;0;L;;;;;N;;;;; -A056;YI SYLLABLE BBIT;Lo;0;L;;;;;N;;;;; -A057;YI SYLLABLE BBIX;Lo;0;L;;;;;N;;;;; -A058;YI SYLLABLE BBI;Lo;0;L;;;;;N;;;;; -A059;YI SYLLABLE BBIP;Lo;0;L;;;;;N;;;;; -A05A;YI SYLLABLE BBIET;Lo;0;L;;;;;N;;;;; -A05B;YI SYLLABLE BBIEX;Lo;0;L;;;;;N;;;;; -A05C;YI SYLLABLE BBIE;Lo;0;L;;;;;N;;;;; -A05D;YI SYLLABLE BBIEP;Lo;0;L;;;;;N;;;;; -A05E;YI SYLLABLE BBAT;Lo;0;L;;;;;N;;;;; -A05F;YI SYLLABLE BBAX;Lo;0;L;;;;;N;;;;; -A060;YI SYLLABLE BBA;Lo;0;L;;;;;N;;;;; -A061;YI SYLLABLE BBAP;Lo;0;L;;;;;N;;;;; -A062;YI SYLLABLE BBUOX;Lo;0;L;;;;;N;;;;; -A063;YI SYLLABLE BBUO;Lo;0;L;;;;;N;;;;; -A064;YI SYLLABLE BBUOP;Lo;0;L;;;;;N;;;;; -A065;YI SYLLABLE BBOT;Lo;0;L;;;;;N;;;;; -A066;YI SYLLABLE BBOX;Lo;0;L;;;;;N;;;;; -A067;YI SYLLABLE BBO;Lo;0;L;;;;;N;;;;; -A068;YI SYLLABLE BBOP;Lo;0;L;;;;;N;;;;; -A069;YI SYLLABLE BBEX;Lo;0;L;;;;;N;;;;; -A06A;YI SYLLABLE BBE;Lo;0;L;;;;;N;;;;; -A06B;YI SYLLABLE BBEP;Lo;0;L;;;;;N;;;;; -A06C;YI SYLLABLE BBUT;Lo;0;L;;;;;N;;;;; -A06D;YI SYLLABLE BBUX;Lo;0;L;;;;;N;;;;; -A06E;YI SYLLABLE BBU;Lo;0;L;;;;;N;;;;; -A06F;YI SYLLABLE BBUP;Lo;0;L;;;;;N;;;;; -A070;YI SYLLABLE BBURX;Lo;0;L;;;;;N;;;;; -A071;YI SYLLABLE BBUR;Lo;0;L;;;;;N;;;;; -A072;YI SYLLABLE BBYT;Lo;0;L;;;;;N;;;;; -A073;YI SYLLABLE BBYX;Lo;0;L;;;;;N;;;;; -A074;YI SYLLABLE BBY;Lo;0;L;;;;;N;;;;; -A075;YI SYLLABLE BBYP;Lo;0;L;;;;;N;;;;; -A076;YI SYLLABLE NBIT;Lo;0;L;;;;;N;;;;; -A077;YI SYLLABLE NBIX;Lo;0;L;;;;;N;;;;; -A078;YI SYLLABLE NBI;Lo;0;L;;;;;N;;;;; -A079;YI SYLLABLE NBIP;Lo;0;L;;;;;N;;;;; -A07A;YI SYLLABLE NBIEX;Lo;0;L;;;;;N;;;;; -A07B;YI SYLLABLE NBIE;Lo;0;L;;;;;N;;;;; -A07C;YI SYLLABLE NBIEP;Lo;0;L;;;;;N;;;;; -A07D;YI SYLLABLE NBAT;Lo;0;L;;;;;N;;;;; -A07E;YI SYLLABLE NBAX;Lo;0;L;;;;;N;;;;; -A07F;YI SYLLABLE NBA;Lo;0;L;;;;;N;;;;; -A080;YI SYLLABLE NBAP;Lo;0;L;;;;;N;;;;; -A081;YI SYLLABLE NBOT;Lo;0;L;;;;;N;;;;; -A082;YI SYLLABLE NBOX;Lo;0;L;;;;;N;;;;; -A083;YI SYLLABLE NBO;Lo;0;L;;;;;N;;;;; -A084;YI SYLLABLE NBOP;Lo;0;L;;;;;N;;;;; -A085;YI SYLLABLE NBUT;Lo;0;L;;;;;N;;;;; -A086;YI SYLLABLE NBUX;Lo;0;L;;;;;N;;;;; -A087;YI SYLLABLE NBU;Lo;0;L;;;;;N;;;;; -A088;YI SYLLABLE NBUP;Lo;0;L;;;;;N;;;;; -A089;YI SYLLABLE NBURX;Lo;0;L;;;;;N;;;;; -A08A;YI SYLLABLE NBUR;Lo;0;L;;;;;N;;;;; -A08B;YI SYLLABLE NBYT;Lo;0;L;;;;;N;;;;; -A08C;YI SYLLABLE NBYX;Lo;0;L;;;;;N;;;;; -A08D;YI SYLLABLE NBY;Lo;0;L;;;;;N;;;;; -A08E;YI SYLLABLE NBYP;Lo;0;L;;;;;N;;;;; -A08F;YI SYLLABLE NBYRX;Lo;0;L;;;;;N;;;;; -A090;YI SYLLABLE NBYR;Lo;0;L;;;;;N;;;;; -A091;YI SYLLABLE HMIT;Lo;0;L;;;;;N;;;;; -A092;YI SYLLABLE HMIX;Lo;0;L;;;;;N;;;;; -A093;YI SYLLABLE HMI;Lo;0;L;;;;;N;;;;; -A094;YI SYLLABLE HMIP;Lo;0;L;;;;;N;;;;; -A095;YI SYLLABLE HMIEX;Lo;0;L;;;;;N;;;;; -A096;YI SYLLABLE HMIE;Lo;0;L;;;;;N;;;;; -A097;YI SYLLABLE HMIEP;Lo;0;L;;;;;N;;;;; -A098;YI SYLLABLE HMAT;Lo;0;L;;;;;N;;;;; -A099;YI SYLLABLE HMAX;Lo;0;L;;;;;N;;;;; -A09A;YI SYLLABLE HMA;Lo;0;L;;;;;N;;;;; -A09B;YI SYLLABLE HMAP;Lo;0;L;;;;;N;;;;; -A09C;YI SYLLABLE HMUOX;Lo;0;L;;;;;N;;;;; -A09D;YI SYLLABLE HMUO;Lo;0;L;;;;;N;;;;; -A09E;YI SYLLABLE HMUOP;Lo;0;L;;;;;N;;;;; -A09F;YI SYLLABLE HMOT;Lo;0;L;;;;;N;;;;; -A0A0;YI SYLLABLE HMOX;Lo;0;L;;;;;N;;;;; -A0A1;YI SYLLABLE HMO;Lo;0;L;;;;;N;;;;; -A0A2;YI SYLLABLE HMOP;Lo;0;L;;;;;N;;;;; -A0A3;YI SYLLABLE HMUT;Lo;0;L;;;;;N;;;;; -A0A4;YI SYLLABLE HMUX;Lo;0;L;;;;;N;;;;; -A0A5;YI SYLLABLE HMU;Lo;0;L;;;;;N;;;;; -A0A6;YI SYLLABLE HMUP;Lo;0;L;;;;;N;;;;; -A0A7;YI SYLLABLE HMURX;Lo;0;L;;;;;N;;;;; -A0A8;YI SYLLABLE HMUR;Lo;0;L;;;;;N;;;;; -A0A9;YI SYLLABLE HMYX;Lo;0;L;;;;;N;;;;; -A0AA;YI SYLLABLE HMY;Lo;0;L;;;;;N;;;;; -A0AB;YI SYLLABLE HMYP;Lo;0;L;;;;;N;;;;; -A0AC;YI SYLLABLE HMYRX;Lo;0;L;;;;;N;;;;; -A0AD;YI SYLLABLE HMYR;Lo;0;L;;;;;N;;;;; -A0AE;YI SYLLABLE MIT;Lo;0;L;;;;;N;;;;; -A0AF;YI SYLLABLE MIX;Lo;0;L;;;;;N;;;;; -A0B0;YI SYLLABLE MI;Lo;0;L;;;;;N;;;;; -A0B1;YI SYLLABLE MIP;Lo;0;L;;;;;N;;;;; -A0B2;YI SYLLABLE MIEX;Lo;0;L;;;;;N;;;;; -A0B3;YI SYLLABLE MIE;Lo;0;L;;;;;N;;;;; -A0B4;YI SYLLABLE MIEP;Lo;0;L;;;;;N;;;;; -A0B5;YI SYLLABLE MAT;Lo;0;L;;;;;N;;;;; -A0B6;YI SYLLABLE MAX;Lo;0;L;;;;;N;;;;; -A0B7;YI SYLLABLE MA;Lo;0;L;;;;;N;;;;; -A0B8;YI SYLLABLE MAP;Lo;0;L;;;;;N;;;;; -A0B9;YI SYLLABLE MUOT;Lo;0;L;;;;;N;;;;; -A0BA;YI SYLLABLE MUOX;Lo;0;L;;;;;N;;;;; -A0BB;YI SYLLABLE MUO;Lo;0;L;;;;;N;;;;; -A0BC;YI SYLLABLE MUOP;Lo;0;L;;;;;N;;;;; -A0BD;YI SYLLABLE MOT;Lo;0;L;;;;;N;;;;; -A0BE;YI SYLLABLE MOX;Lo;0;L;;;;;N;;;;; -A0BF;YI SYLLABLE MO;Lo;0;L;;;;;N;;;;; -A0C0;YI SYLLABLE MOP;Lo;0;L;;;;;N;;;;; -A0C1;YI SYLLABLE MEX;Lo;0;L;;;;;N;;;;; -A0C2;YI SYLLABLE ME;Lo;0;L;;;;;N;;;;; -A0C3;YI SYLLABLE MUT;Lo;0;L;;;;;N;;;;; -A0C4;YI SYLLABLE MUX;Lo;0;L;;;;;N;;;;; -A0C5;YI SYLLABLE MU;Lo;0;L;;;;;N;;;;; -A0C6;YI SYLLABLE MUP;Lo;0;L;;;;;N;;;;; -A0C7;YI SYLLABLE MURX;Lo;0;L;;;;;N;;;;; -A0C8;YI SYLLABLE MUR;Lo;0;L;;;;;N;;;;; -A0C9;YI SYLLABLE MYT;Lo;0;L;;;;;N;;;;; -A0CA;YI SYLLABLE MYX;Lo;0;L;;;;;N;;;;; -A0CB;YI SYLLABLE MY;Lo;0;L;;;;;N;;;;; -A0CC;YI SYLLABLE MYP;Lo;0;L;;;;;N;;;;; -A0CD;YI SYLLABLE FIT;Lo;0;L;;;;;N;;;;; -A0CE;YI SYLLABLE FIX;Lo;0;L;;;;;N;;;;; -A0CF;YI SYLLABLE FI;Lo;0;L;;;;;N;;;;; -A0D0;YI SYLLABLE FIP;Lo;0;L;;;;;N;;;;; -A0D1;YI SYLLABLE FAT;Lo;0;L;;;;;N;;;;; -A0D2;YI SYLLABLE FAX;Lo;0;L;;;;;N;;;;; -A0D3;YI SYLLABLE FA;Lo;0;L;;;;;N;;;;; -A0D4;YI SYLLABLE FAP;Lo;0;L;;;;;N;;;;; -A0D5;YI SYLLABLE FOX;Lo;0;L;;;;;N;;;;; -A0D6;YI SYLLABLE FO;Lo;0;L;;;;;N;;;;; -A0D7;YI SYLLABLE FOP;Lo;0;L;;;;;N;;;;; -A0D8;YI SYLLABLE FUT;Lo;0;L;;;;;N;;;;; -A0D9;YI SYLLABLE FUX;Lo;0;L;;;;;N;;;;; -A0DA;YI SYLLABLE FU;Lo;0;L;;;;;N;;;;; -A0DB;YI SYLLABLE FUP;Lo;0;L;;;;;N;;;;; -A0DC;YI SYLLABLE FURX;Lo;0;L;;;;;N;;;;; -A0DD;YI SYLLABLE FUR;Lo;0;L;;;;;N;;;;; -A0DE;YI SYLLABLE FYT;Lo;0;L;;;;;N;;;;; -A0DF;YI SYLLABLE FYX;Lo;0;L;;;;;N;;;;; -A0E0;YI SYLLABLE FY;Lo;0;L;;;;;N;;;;; -A0E1;YI SYLLABLE FYP;Lo;0;L;;;;;N;;;;; -A0E2;YI SYLLABLE VIT;Lo;0;L;;;;;N;;;;; -A0E3;YI SYLLABLE VIX;Lo;0;L;;;;;N;;;;; -A0E4;YI SYLLABLE VI;Lo;0;L;;;;;N;;;;; -A0E5;YI SYLLABLE VIP;Lo;0;L;;;;;N;;;;; -A0E6;YI SYLLABLE VIET;Lo;0;L;;;;;N;;;;; -A0E7;YI SYLLABLE VIEX;Lo;0;L;;;;;N;;;;; -A0E8;YI SYLLABLE VIE;Lo;0;L;;;;;N;;;;; -A0E9;YI SYLLABLE VIEP;Lo;0;L;;;;;N;;;;; -A0EA;YI SYLLABLE VAT;Lo;0;L;;;;;N;;;;; -A0EB;YI SYLLABLE VAX;Lo;0;L;;;;;N;;;;; -A0EC;YI SYLLABLE VA;Lo;0;L;;;;;N;;;;; -A0ED;YI SYLLABLE VAP;Lo;0;L;;;;;N;;;;; -A0EE;YI SYLLABLE VOT;Lo;0;L;;;;;N;;;;; -A0EF;YI SYLLABLE VOX;Lo;0;L;;;;;N;;;;; -A0F0;YI SYLLABLE VO;Lo;0;L;;;;;N;;;;; -A0F1;YI SYLLABLE VOP;Lo;0;L;;;;;N;;;;; -A0F2;YI SYLLABLE VEX;Lo;0;L;;;;;N;;;;; -A0F3;YI SYLLABLE VEP;Lo;0;L;;;;;N;;;;; -A0F4;YI SYLLABLE VUT;Lo;0;L;;;;;N;;;;; -A0F5;YI SYLLABLE VUX;Lo;0;L;;;;;N;;;;; -A0F6;YI SYLLABLE VU;Lo;0;L;;;;;N;;;;; -A0F7;YI SYLLABLE VUP;Lo;0;L;;;;;N;;;;; -A0F8;YI SYLLABLE VURX;Lo;0;L;;;;;N;;;;; -A0F9;YI SYLLABLE VUR;Lo;0;L;;;;;N;;;;; -A0FA;YI SYLLABLE VYT;Lo;0;L;;;;;N;;;;; -A0FB;YI SYLLABLE VYX;Lo;0;L;;;;;N;;;;; -A0FC;YI SYLLABLE VY;Lo;0;L;;;;;N;;;;; -A0FD;YI SYLLABLE VYP;Lo;0;L;;;;;N;;;;; -A0FE;YI SYLLABLE VYRX;Lo;0;L;;;;;N;;;;; -A0FF;YI SYLLABLE VYR;Lo;0;L;;;;;N;;;;; -A100;YI SYLLABLE DIT;Lo;0;L;;;;;N;;;;; -A101;YI SYLLABLE DIX;Lo;0;L;;;;;N;;;;; -A102;YI SYLLABLE DI;Lo;0;L;;;;;N;;;;; -A103;YI SYLLABLE DIP;Lo;0;L;;;;;N;;;;; -A104;YI SYLLABLE DIEX;Lo;0;L;;;;;N;;;;; -A105;YI SYLLABLE DIE;Lo;0;L;;;;;N;;;;; -A106;YI SYLLABLE DIEP;Lo;0;L;;;;;N;;;;; -A107;YI SYLLABLE DAT;Lo;0;L;;;;;N;;;;; -A108;YI SYLLABLE DAX;Lo;0;L;;;;;N;;;;; -A109;YI SYLLABLE DA;Lo;0;L;;;;;N;;;;; -A10A;YI SYLLABLE DAP;Lo;0;L;;;;;N;;;;; -A10B;YI SYLLABLE DUOX;Lo;0;L;;;;;N;;;;; -A10C;YI SYLLABLE DUO;Lo;0;L;;;;;N;;;;; -A10D;YI SYLLABLE DOT;Lo;0;L;;;;;N;;;;; -A10E;YI SYLLABLE DOX;Lo;0;L;;;;;N;;;;; -A10F;YI SYLLABLE DO;Lo;0;L;;;;;N;;;;; -A110;YI SYLLABLE DOP;Lo;0;L;;;;;N;;;;; -A111;YI SYLLABLE DEX;Lo;0;L;;;;;N;;;;; -A112;YI SYLLABLE DE;Lo;0;L;;;;;N;;;;; -A113;YI SYLLABLE DEP;Lo;0;L;;;;;N;;;;; -A114;YI SYLLABLE DUT;Lo;0;L;;;;;N;;;;; -A115;YI SYLLABLE DUX;Lo;0;L;;;;;N;;;;; -A116;YI SYLLABLE DU;Lo;0;L;;;;;N;;;;; -A117;YI SYLLABLE DUP;Lo;0;L;;;;;N;;;;; -A118;YI SYLLABLE DURX;Lo;0;L;;;;;N;;;;; -A119;YI SYLLABLE DUR;Lo;0;L;;;;;N;;;;; -A11A;YI SYLLABLE TIT;Lo;0;L;;;;;N;;;;; -A11B;YI SYLLABLE TIX;Lo;0;L;;;;;N;;;;; -A11C;YI SYLLABLE TI;Lo;0;L;;;;;N;;;;; -A11D;YI SYLLABLE TIP;Lo;0;L;;;;;N;;;;; -A11E;YI SYLLABLE TIEX;Lo;0;L;;;;;N;;;;; -A11F;YI SYLLABLE TIE;Lo;0;L;;;;;N;;;;; -A120;YI SYLLABLE TIEP;Lo;0;L;;;;;N;;;;; -A121;YI SYLLABLE TAT;Lo;0;L;;;;;N;;;;; -A122;YI SYLLABLE TAX;Lo;0;L;;;;;N;;;;; -A123;YI SYLLABLE TA;Lo;0;L;;;;;N;;;;; -A124;YI SYLLABLE TAP;Lo;0;L;;;;;N;;;;; -A125;YI SYLLABLE TUOT;Lo;0;L;;;;;N;;;;; -A126;YI SYLLABLE TUOX;Lo;0;L;;;;;N;;;;; -A127;YI SYLLABLE TUO;Lo;0;L;;;;;N;;;;; -A128;YI SYLLABLE TUOP;Lo;0;L;;;;;N;;;;; -A129;YI SYLLABLE TOT;Lo;0;L;;;;;N;;;;; -A12A;YI SYLLABLE TOX;Lo;0;L;;;;;N;;;;; -A12B;YI SYLLABLE TO;Lo;0;L;;;;;N;;;;; -A12C;YI SYLLABLE TOP;Lo;0;L;;;;;N;;;;; -A12D;YI SYLLABLE TEX;Lo;0;L;;;;;N;;;;; -A12E;YI SYLLABLE TE;Lo;0;L;;;;;N;;;;; -A12F;YI SYLLABLE TEP;Lo;0;L;;;;;N;;;;; -A130;YI SYLLABLE TUT;Lo;0;L;;;;;N;;;;; -A131;YI SYLLABLE TUX;Lo;0;L;;;;;N;;;;; -A132;YI SYLLABLE TU;Lo;0;L;;;;;N;;;;; -A133;YI SYLLABLE TUP;Lo;0;L;;;;;N;;;;; -A134;YI SYLLABLE TURX;Lo;0;L;;;;;N;;;;; -A135;YI SYLLABLE TUR;Lo;0;L;;;;;N;;;;; -A136;YI SYLLABLE DDIT;Lo;0;L;;;;;N;;;;; -A137;YI SYLLABLE DDIX;Lo;0;L;;;;;N;;;;; -A138;YI SYLLABLE DDI;Lo;0;L;;;;;N;;;;; -A139;YI SYLLABLE DDIP;Lo;0;L;;;;;N;;;;; -A13A;YI SYLLABLE DDIEX;Lo;0;L;;;;;N;;;;; -A13B;YI SYLLABLE DDIE;Lo;0;L;;;;;N;;;;; -A13C;YI SYLLABLE DDIEP;Lo;0;L;;;;;N;;;;; -A13D;YI SYLLABLE DDAT;Lo;0;L;;;;;N;;;;; -A13E;YI SYLLABLE DDAX;Lo;0;L;;;;;N;;;;; -A13F;YI SYLLABLE DDA;Lo;0;L;;;;;N;;;;; -A140;YI SYLLABLE DDAP;Lo;0;L;;;;;N;;;;; -A141;YI SYLLABLE DDUOX;Lo;0;L;;;;;N;;;;; -A142;YI SYLLABLE DDUO;Lo;0;L;;;;;N;;;;; -A143;YI SYLLABLE DDUOP;Lo;0;L;;;;;N;;;;; -A144;YI SYLLABLE DDOT;Lo;0;L;;;;;N;;;;; -A145;YI SYLLABLE DDOX;Lo;0;L;;;;;N;;;;; -A146;YI SYLLABLE DDO;Lo;0;L;;;;;N;;;;; -A147;YI SYLLABLE DDOP;Lo;0;L;;;;;N;;;;; -A148;YI SYLLABLE DDEX;Lo;0;L;;;;;N;;;;; -A149;YI SYLLABLE DDE;Lo;0;L;;;;;N;;;;; -A14A;YI SYLLABLE DDEP;Lo;0;L;;;;;N;;;;; -A14B;YI SYLLABLE DDUT;Lo;0;L;;;;;N;;;;; -A14C;YI SYLLABLE DDUX;Lo;0;L;;;;;N;;;;; -A14D;YI SYLLABLE DDU;Lo;0;L;;;;;N;;;;; -A14E;YI SYLLABLE DDUP;Lo;0;L;;;;;N;;;;; -A14F;YI SYLLABLE DDURX;Lo;0;L;;;;;N;;;;; -A150;YI SYLLABLE DDUR;Lo;0;L;;;;;N;;;;; -A151;YI SYLLABLE NDIT;Lo;0;L;;;;;N;;;;; -A152;YI SYLLABLE NDIX;Lo;0;L;;;;;N;;;;; -A153;YI SYLLABLE NDI;Lo;0;L;;;;;N;;;;; -A154;YI SYLLABLE NDIP;Lo;0;L;;;;;N;;;;; -A155;YI SYLLABLE NDIEX;Lo;0;L;;;;;N;;;;; -A156;YI SYLLABLE NDIE;Lo;0;L;;;;;N;;;;; -A157;YI SYLLABLE NDAT;Lo;0;L;;;;;N;;;;; -A158;YI SYLLABLE NDAX;Lo;0;L;;;;;N;;;;; -A159;YI SYLLABLE NDA;Lo;0;L;;;;;N;;;;; -A15A;YI SYLLABLE NDAP;Lo;0;L;;;;;N;;;;; -A15B;YI SYLLABLE NDOT;Lo;0;L;;;;;N;;;;; -A15C;YI SYLLABLE NDOX;Lo;0;L;;;;;N;;;;; -A15D;YI SYLLABLE NDO;Lo;0;L;;;;;N;;;;; -A15E;YI SYLLABLE NDOP;Lo;0;L;;;;;N;;;;; -A15F;YI SYLLABLE NDEX;Lo;0;L;;;;;N;;;;; -A160;YI SYLLABLE NDE;Lo;0;L;;;;;N;;;;; -A161;YI SYLLABLE NDEP;Lo;0;L;;;;;N;;;;; -A162;YI SYLLABLE NDUT;Lo;0;L;;;;;N;;;;; -A163;YI SYLLABLE NDUX;Lo;0;L;;;;;N;;;;; -A164;YI SYLLABLE NDU;Lo;0;L;;;;;N;;;;; -A165;YI SYLLABLE NDUP;Lo;0;L;;;;;N;;;;; -A166;YI SYLLABLE NDURX;Lo;0;L;;;;;N;;;;; -A167;YI SYLLABLE NDUR;Lo;0;L;;;;;N;;;;; -A168;YI SYLLABLE HNIT;Lo;0;L;;;;;N;;;;; -A169;YI SYLLABLE HNIX;Lo;0;L;;;;;N;;;;; -A16A;YI SYLLABLE HNI;Lo;0;L;;;;;N;;;;; -A16B;YI SYLLABLE HNIP;Lo;0;L;;;;;N;;;;; -A16C;YI SYLLABLE HNIET;Lo;0;L;;;;;N;;;;; -A16D;YI SYLLABLE HNIEX;Lo;0;L;;;;;N;;;;; -A16E;YI SYLLABLE HNIE;Lo;0;L;;;;;N;;;;; -A16F;YI SYLLABLE HNIEP;Lo;0;L;;;;;N;;;;; -A170;YI SYLLABLE HNAT;Lo;0;L;;;;;N;;;;; -A171;YI SYLLABLE HNAX;Lo;0;L;;;;;N;;;;; -A172;YI SYLLABLE HNA;Lo;0;L;;;;;N;;;;; -A173;YI SYLLABLE HNAP;Lo;0;L;;;;;N;;;;; -A174;YI SYLLABLE HNUOX;Lo;0;L;;;;;N;;;;; -A175;YI SYLLABLE HNUO;Lo;0;L;;;;;N;;;;; -A176;YI SYLLABLE HNOT;Lo;0;L;;;;;N;;;;; -A177;YI SYLLABLE HNOX;Lo;0;L;;;;;N;;;;; -A178;YI SYLLABLE HNOP;Lo;0;L;;;;;N;;;;; -A179;YI SYLLABLE HNEX;Lo;0;L;;;;;N;;;;; -A17A;YI SYLLABLE HNE;Lo;0;L;;;;;N;;;;; -A17B;YI SYLLABLE HNEP;Lo;0;L;;;;;N;;;;; -A17C;YI SYLLABLE HNUT;Lo;0;L;;;;;N;;;;; -A17D;YI SYLLABLE NIT;Lo;0;L;;;;;N;;;;; -A17E;YI SYLLABLE NIX;Lo;0;L;;;;;N;;;;; -A17F;YI SYLLABLE NI;Lo;0;L;;;;;N;;;;; -A180;YI SYLLABLE NIP;Lo;0;L;;;;;N;;;;; -A181;YI SYLLABLE NIEX;Lo;0;L;;;;;N;;;;; -A182;YI SYLLABLE NIE;Lo;0;L;;;;;N;;;;; -A183;YI SYLLABLE NIEP;Lo;0;L;;;;;N;;;;; -A184;YI SYLLABLE NAX;Lo;0;L;;;;;N;;;;; -A185;YI SYLLABLE NA;Lo;0;L;;;;;N;;;;; -A186;YI SYLLABLE NAP;Lo;0;L;;;;;N;;;;; -A187;YI SYLLABLE NUOX;Lo;0;L;;;;;N;;;;; -A188;YI SYLLABLE NUO;Lo;0;L;;;;;N;;;;; -A189;YI SYLLABLE NUOP;Lo;0;L;;;;;N;;;;; -A18A;YI SYLLABLE NOT;Lo;0;L;;;;;N;;;;; -A18B;YI SYLLABLE NOX;Lo;0;L;;;;;N;;;;; -A18C;YI SYLLABLE NO;Lo;0;L;;;;;N;;;;; -A18D;YI SYLLABLE NOP;Lo;0;L;;;;;N;;;;; -A18E;YI SYLLABLE NEX;Lo;0;L;;;;;N;;;;; -A18F;YI SYLLABLE NE;Lo;0;L;;;;;N;;;;; -A190;YI SYLLABLE NEP;Lo;0;L;;;;;N;;;;; -A191;YI SYLLABLE NUT;Lo;0;L;;;;;N;;;;; -A192;YI SYLLABLE NUX;Lo;0;L;;;;;N;;;;; -A193;YI SYLLABLE NU;Lo;0;L;;;;;N;;;;; -A194;YI SYLLABLE NUP;Lo;0;L;;;;;N;;;;; -A195;YI SYLLABLE NURX;Lo;0;L;;;;;N;;;;; -A196;YI SYLLABLE NUR;Lo;0;L;;;;;N;;;;; -A197;YI SYLLABLE HLIT;Lo;0;L;;;;;N;;;;; -A198;YI SYLLABLE HLIX;Lo;0;L;;;;;N;;;;; -A199;YI SYLLABLE HLI;Lo;0;L;;;;;N;;;;; -A19A;YI SYLLABLE HLIP;Lo;0;L;;;;;N;;;;; -A19B;YI SYLLABLE HLIEX;Lo;0;L;;;;;N;;;;; -A19C;YI SYLLABLE HLIE;Lo;0;L;;;;;N;;;;; -A19D;YI SYLLABLE HLIEP;Lo;0;L;;;;;N;;;;; -A19E;YI SYLLABLE HLAT;Lo;0;L;;;;;N;;;;; -A19F;YI SYLLABLE HLAX;Lo;0;L;;;;;N;;;;; -A1A0;YI SYLLABLE HLA;Lo;0;L;;;;;N;;;;; -A1A1;YI SYLLABLE HLAP;Lo;0;L;;;;;N;;;;; -A1A2;YI SYLLABLE HLUOX;Lo;0;L;;;;;N;;;;; -A1A3;YI SYLLABLE HLUO;Lo;0;L;;;;;N;;;;; -A1A4;YI SYLLABLE HLUOP;Lo;0;L;;;;;N;;;;; -A1A5;YI SYLLABLE HLOX;Lo;0;L;;;;;N;;;;; -A1A6;YI SYLLABLE HLO;Lo;0;L;;;;;N;;;;; -A1A7;YI SYLLABLE HLOP;Lo;0;L;;;;;N;;;;; -A1A8;YI SYLLABLE HLEX;Lo;0;L;;;;;N;;;;; -A1A9;YI SYLLABLE HLE;Lo;0;L;;;;;N;;;;; -A1AA;YI SYLLABLE HLEP;Lo;0;L;;;;;N;;;;; -A1AB;YI SYLLABLE HLUT;Lo;0;L;;;;;N;;;;; -A1AC;YI SYLLABLE HLUX;Lo;0;L;;;;;N;;;;; -A1AD;YI SYLLABLE HLU;Lo;0;L;;;;;N;;;;; -A1AE;YI SYLLABLE HLUP;Lo;0;L;;;;;N;;;;; -A1AF;YI SYLLABLE HLURX;Lo;0;L;;;;;N;;;;; -A1B0;YI SYLLABLE HLUR;Lo;0;L;;;;;N;;;;; -A1B1;YI SYLLABLE HLYT;Lo;0;L;;;;;N;;;;; -A1B2;YI SYLLABLE HLYX;Lo;0;L;;;;;N;;;;; -A1B3;YI SYLLABLE HLY;Lo;0;L;;;;;N;;;;; -A1B4;YI SYLLABLE HLYP;Lo;0;L;;;;;N;;;;; -A1B5;YI SYLLABLE HLYRX;Lo;0;L;;;;;N;;;;; -A1B6;YI SYLLABLE HLYR;Lo;0;L;;;;;N;;;;; -A1B7;YI SYLLABLE LIT;Lo;0;L;;;;;N;;;;; -A1B8;YI SYLLABLE LIX;Lo;0;L;;;;;N;;;;; -A1B9;YI SYLLABLE LI;Lo;0;L;;;;;N;;;;; -A1BA;YI SYLLABLE LIP;Lo;0;L;;;;;N;;;;; -A1BB;YI SYLLABLE LIET;Lo;0;L;;;;;N;;;;; -A1BC;YI SYLLABLE LIEX;Lo;0;L;;;;;N;;;;; -A1BD;YI SYLLABLE LIE;Lo;0;L;;;;;N;;;;; -A1BE;YI SYLLABLE LIEP;Lo;0;L;;;;;N;;;;; -A1BF;YI SYLLABLE LAT;Lo;0;L;;;;;N;;;;; -A1C0;YI SYLLABLE LAX;Lo;0;L;;;;;N;;;;; -A1C1;YI SYLLABLE LA;Lo;0;L;;;;;N;;;;; -A1C2;YI SYLLABLE LAP;Lo;0;L;;;;;N;;;;; -A1C3;YI SYLLABLE LUOT;Lo;0;L;;;;;N;;;;; -A1C4;YI SYLLABLE LUOX;Lo;0;L;;;;;N;;;;; -A1C5;YI SYLLABLE LUO;Lo;0;L;;;;;N;;;;; -A1C6;YI SYLLABLE LUOP;Lo;0;L;;;;;N;;;;; -A1C7;YI SYLLABLE LOT;Lo;0;L;;;;;N;;;;; -A1C8;YI SYLLABLE LOX;Lo;0;L;;;;;N;;;;; -A1C9;YI SYLLABLE LO;Lo;0;L;;;;;N;;;;; -A1CA;YI SYLLABLE LOP;Lo;0;L;;;;;N;;;;; -A1CB;YI SYLLABLE LEX;Lo;0;L;;;;;N;;;;; -A1CC;YI SYLLABLE LE;Lo;0;L;;;;;N;;;;; -A1CD;YI SYLLABLE LEP;Lo;0;L;;;;;N;;;;; -A1CE;YI SYLLABLE LUT;Lo;0;L;;;;;N;;;;; -A1CF;YI SYLLABLE LUX;Lo;0;L;;;;;N;;;;; -A1D0;YI SYLLABLE LU;Lo;0;L;;;;;N;;;;; -A1D1;YI SYLLABLE LUP;Lo;0;L;;;;;N;;;;; -A1D2;YI SYLLABLE LURX;Lo;0;L;;;;;N;;;;; -A1D3;YI SYLLABLE LUR;Lo;0;L;;;;;N;;;;; -A1D4;YI SYLLABLE LYT;Lo;0;L;;;;;N;;;;; -A1D5;YI SYLLABLE LYX;Lo;0;L;;;;;N;;;;; -A1D6;YI SYLLABLE LY;Lo;0;L;;;;;N;;;;; -A1D7;YI SYLLABLE LYP;Lo;0;L;;;;;N;;;;; -A1D8;YI SYLLABLE LYRX;Lo;0;L;;;;;N;;;;; -A1D9;YI SYLLABLE LYR;Lo;0;L;;;;;N;;;;; -A1DA;YI SYLLABLE GIT;Lo;0;L;;;;;N;;;;; -A1DB;YI SYLLABLE GIX;Lo;0;L;;;;;N;;;;; -A1DC;YI SYLLABLE GI;Lo;0;L;;;;;N;;;;; -A1DD;YI SYLLABLE GIP;Lo;0;L;;;;;N;;;;; -A1DE;YI SYLLABLE GIET;Lo;0;L;;;;;N;;;;; -A1DF;YI SYLLABLE GIEX;Lo;0;L;;;;;N;;;;; -A1E0;YI SYLLABLE GIE;Lo;0;L;;;;;N;;;;; -A1E1;YI SYLLABLE GIEP;Lo;0;L;;;;;N;;;;; -A1E2;YI SYLLABLE GAT;Lo;0;L;;;;;N;;;;; -A1E3;YI SYLLABLE GAX;Lo;0;L;;;;;N;;;;; -A1E4;YI SYLLABLE GA;Lo;0;L;;;;;N;;;;; -A1E5;YI SYLLABLE GAP;Lo;0;L;;;;;N;;;;; -A1E6;YI SYLLABLE GUOT;Lo;0;L;;;;;N;;;;; -A1E7;YI SYLLABLE GUOX;Lo;0;L;;;;;N;;;;; -A1E8;YI SYLLABLE GUO;Lo;0;L;;;;;N;;;;; -A1E9;YI SYLLABLE GUOP;Lo;0;L;;;;;N;;;;; -A1EA;YI SYLLABLE GOT;Lo;0;L;;;;;N;;;;; -A1EB;YI SYLLABLE GOX;Lo;0;L;;;;;N;;;;; -A1EC;YI SYLLABLE GO;Lo;0;L;;;;;N;;;;; -A1ED;YI SYLLABLE GOP;Lo;0;L;;;;;N;;;;; -A1EE;YI SYLLABLE GET;Lo;0;L;;;;;N;;;;; -A1EF;YI SYLLABLE GEX;Lo;0;L;;;;;N;;;;; -A1F0;YI SYLLABLE GE;Lo;0;L;;;;;N;;;;; -A1F1;YI SYLLABLE GEP;Lo;0;L;;;;;N;;;;; -A1F2;YI SYLLABLE GUT;Lo;0;L;;;;;N;;;;; -A1F3;YI SYLLABLE GUX;Lo;0;L;;;;;N;;;;; -A1F4;YI SYLLABLE GU;Lo;0;L;;;;;N;;;;; -A1F5;YI SYLLABLE GUP;Lo;0;L;;;;;N;;;;; -A1F6;YI SYLLABLE GURX;Lo;0;L;;;;;N;;;;; -A1F7;YI SYLLABLE GUR;Lo;0;L;;;;;N;;;;; -A1F8;YI SYLLABLE KIT;Lo;0;L;;;;;N;;;;; -A1F9;YI SYLLABLE KIX;Lo;0;L;;;;;N;;;;; -A1FA;YI SYLLABLE KI;Lo;0;L;;;;;N;;;;; -A1FB;YI SYLLABLE KIP;Lo;0;L;;;;;N;;;;; -A1FC;YI SYLLABLE KIEX;Lo;0;L;;;;;N;;;;; -A1FD;YI SYLLABLE KIE;Lo;0;L;;;;;N;;;;; -A1FE;YI SYLLABLE KIEP;Lo;0;L;;;;;N;;;;; -A1FF;YI SYLLABLE KAT;Lo;0;L;;;;;N;;;;; -A200;YI SYLLABLE KAX;Lo;0;L;;;;;N;;;;; -A201;YI SYLLABLE KA;Lo;0;L;;;;;N;;;;; -A202;YI SYLLABLE KAP;Lo;0;L;;;;;N;;;;; -A203;YI SYLLABLE KUOX;Lo;0;L;;;;;N;;;;; -A204;YI SYLLABLE KUO;Lo;0;L;;;;;N;;;;; -A205;YI SYLLABLE KUOP;Lo;0;L;;;;;N;;;;; -A206;YI SYLLABLE KOT;Lo;0;L;;;;;N;;;;; -A207;YI SYLLABLE KOX;Lo;0;L;;;;;N;;;;; -A208;YI SYLLABLE KO;Lo;0;L;;;;;N;;;;; -A209;YI SYLLABLE KOP;Lo;0;L;;;;;N;;;;; -A20A;YI SYLLABLE KET;Lo;0;L;;;;;N;;;;; -A20B;YI SYLLABLE KEX;Lo;0;L;;;;;N;;;;; -A20C;YI SYLLABLE KE;Lo;0;L;;;;;N;;;;; -A20D;YI SYLLABLE KEP;Lo;0;L;;;;;N;;;;; -A20E;YI SYLLABLE KUT;Lo;0;L;;;;;N;;;;; -A20F;YI SYLLABLE KUX;Lo;0;L;;;;;N;;;;; -A210;YI SYLLABLE KU;Lo;0;L;;;;;N;;;;; -A211;YI SYLLABLE KUP;Lo;0;L;;;;;N;;;;; -A212;YI SYLLABLE KURX;Lo;0;L;;;;;N;;;;; -A213;YI SYLLABLE KUR;Lo;0;L;;;;;N;;;;; -A214;YI SYLLABLE GGIT;Lo;0;L;;;;;N;;;;; -A215;YI SYLLABLE GGIX;Lo;0;L;;;;;N;;;;; -A216;YI SYLLABLE GGI;Lo;0;L;;;;;N;;;;; -A217;YI SYLLABLE GGIEX;Lo;0;L;;;;;N;;;;; -A218;YI SYLLABLE GGIE;Lo;0;L;;;;;N;;;;; -A219;YI SYLLABLE GGIEP;Lo;0;L;;;;;N;;;;; -A21A;YI SYLLABLE GGAT;Lo;0;L;;;;;N;;;;; -A21B;YI SYLLABLE GGAX;Lo;0;L;;;;;N;;;;; -A21C;YI SYLLABLE GGA;Lo;0;L;;;;;N;;;;; -A21D;YI SYLLABLE GGAP;Lo;0;L;;;;;N;;;;; -A21E;YI SYLLABLE GGUOT;Lo;0;L;;;;;N;;;;; -A21F;YI SYLLABLE GGUOX;Lo;0;L;;;;;N;;;;; -A220;YI SYLLABLE GGUO;Lo;0;L;;;;;N;;;;; -A221;YI SYLLABLE GGUOP;Lo;0;L;;;;;N;;;;; -A222;YI SYLLABLE GGOT;Lo;0;L;;;;;N;;;;; -A223;YI SYLLABLE GGOX;Lo;0;L;;;;;N;;;;; -A224;YI SYLLABLE GGO;Lo;0;L;;;;;N;;;;; -A225;YI SYLLABLE GGOP;Lo;0;L;;;;;N;;;;; -A226;YI SYLLABLE GGET;Lo;0;L;;;;;N;;;;; -A227;YI SYLLABLE GGEX;Lo;0;L;;;;;N;;;;; -A228;YI SYLLABLE GGE;Lo;0;L;;;;;N;;;;; -A229;YI SYLLABLE GGEP;Lo;0;L;;;;;N;;;;; -A22A;YI SYLLABLE GGUT;Lo;0;L;;;;;N;;;;; -A22B;YI SYLLABLE GGUX;Lo;0;L;;;;;N;;;;; -A22C;YI SYLLABLE GGU;Lo;0;L;;;;;N;;;;; -A22D;YI SYLLABLE GGUP;Lo;0;L;;;;;N;;;;; -A22E;YI SYLLABLE GGURX;Lo;0;L;;;;;N;;;;; -A22F;YI SYLLABLE GGUR;Lo;0;L;;;;;N;;;;; -A230;YI SYLLABLE MGIEX;Lo;0;L;;;;;N;;;;; -A231;YI SYLLABLE MGIE;Lo;0;L;;;;;N;;;;; -A232;YI SYLLABLE MGAT;Lo;0;L;;;;;N;;;;; -A233;YI SYLLABLE MGAX;Lo;0;L;;;;;N;;;;; -A234;YI SYLLABLE MGA;Lo;0;L;;;;;N;;;;; -A235;YI SYLLABLE MGAP;Lo;0;L;;;;;N;;;;; -A236;YI SYLLABLE MGUOX;Lo;0;L;;;;;N;;;;; -A237;YI SYLLABLE MGUO;Lo;0;L;;;;;N;;;;; -A238;YI SYLLABLE MGUOP;Lo;0;L;;;;;N;;;;; -A239;YI SYLLABLE MGOT;Lo;0;L;;;;;N;;;;; -A23A;YI SYLLABLE MGOX;Lo;0;L;;;;;N;;;;; -A23B;YI SYLLABLE MGO;Lo;0;L;;;;;N;;;;; -A23C;YI SYLLABLE MGOP;Lo;0;L;;;;;N;;;;; -A23D;YI SYLLABLE MGEX;Lo;0;L;;;;;N;;;;; -A23E;YI SYLLABLE MGE;Lo;0;L;;;;;N;;;;; -A23F;YI SYLLABLE MGEP;Lo;0;L;;;;;N;;;;; -A240;YI SYLLABLE MGUT;Lo;0;L;;;;;N;;;;; -A241;YI SYLLABLE MGUX;Lo;0;L;;;;;N;;;;; -A242;YI SYLLABLE MGU;Lo;0;L;;;;;N;;;;; -A243;YI SYLLABLE MGUP;Lo;0;L;;;;;N;;;;; -A244;YI SYLLABLE MGURX;Lo;0;L;;;;;N;;;;; -A245;YI SYLLABLE MGUR;Lo;0;L;;;;;N;;;;; -A246;YI SYLLABLE HXIT;Lo;0;L;;;;;N;;;;; -A247;YI SYLLABLE HXIX;Lo;0;L;;;;;N;;;;; -A248;YI SYLLABLE HXI;Lo;0;L;;;;;N;;;;; -A249;YI SYLLABLE HXIP;Lo;0;L;;;;;N;;;;; -A24A;YI SYLLABLE HXIET;Lo;0;L;;;;;N;;;;; -A24B;YI SYLLABLE HXIEX;Lo;0;L;;;;;N;;;;; -A24C;YI SYLLABLE HXIE;Lo;0;L;;;;;N;;;;; -A24D;YI SYLLABLE HXIEP;Lo;0;L;;;;;N;;;;; -A24E;YI SYLLABLE HXAT;Lo;0;L;;;;;N;;;;; -A24F;YI SYLLABLE HXAX;Lo;0;L;;;;;N;;;;; -A250;YI SYLLABLE HXA;Lo;0;L;;;;;N;;;;; -A251;YI SYLLABLE HXAP;Lo;0;L;;;;;N;;;;; -A252;YI SYLLABLE HXUOT;Lo;0;L;;;;;N;;;;; -A253;YI SYLLABLE HXUOX;Lo;0;L;;;;;N;;;;; -A254;YI SYLLABLE HXUO;Lo;0;L;;;;;N;;;;; -A255;YI SYLLABLE HXUOP;Lo;0;L;;;;;N;;;;; -A256;YI SYLLABLE HXOT;Lo;0;L;;;;;N;;;;; -A257;YI SYLLABLE HXOX;Lo;0;L;;;;;N;;;;; -A258;YI SYLLABLE HXO;Lo;0;L;;;;;N;;;;; -A259;YI SYLLABLE HXOP;Lo;0;L;;;;;N;;;;; -A25A;YI SYLLABLE HXEX;Lo;0;L;;;;;N;;;;; -A25B;YI SYLLABLE HXE;Lo;0;L;;;;;N;;;;; -A25C;YI SYLLABLE HXEP;Lo;0;L;;;;;N;;;;; -A25D;YI SYLLABLE NGIEX;Lo;0;L;;;;;N;;;;; -A25E;YI SYLLABLE NGIE;Lo;0;L;;;;;N;;;;; -A25F;YI SYLLABLE NGIEP;Lo;0;L;;;;;N;;;;; -A260;YI SYLLABLE NGAT;Lo;0;L;;;;;N;;;;; -A261;YI SYLLABLE NGAX;Lo;0;L;;;;;N;;;;; -A262;YI SYLLABLE NGA;Lo;0;L;;;;;N;;;;; -A263;YI SYLLABLE NGAP;Lo;0;L;;;;;N;;;;; -A264;YI SYLLABLE NGUOT;Lo;0;L;;;;;N;;;;; -A265;YI SYLLABLE NGUOX;Lo;0;L;;;;;N;;;;; -A266;YI SYLLABLE NGUO;Lo;0;L;;;;;N;;;;; -A267;YI SYLLABLE NGOT;Lo;0;L;;;;;N;;;;; -A268;YI SYLLABLE NGOX;Lo;0;L;;;;;N;;;;; -A269;YI SYLLABLE NGO;Lo;0;L;;;;;N;;;;; -A26A;YI SYLLABLE NGOP;Lo;0;L;;;;;N;;;;; -A26B;YI SYLLABLE NGEX;Lo;0;L;;;;;N;;;;; -A26C;YI SYLLABLE NGE;Lo;0;L;;;;;N;;;;; -A26D;YI SYLLABLE NGEP;Lo;0;L;;;;;N;;;;; -A26E;YI SYLLABLE HIT;Lo;0;L;;;;;N;;;;; -A26F;YI SYLLABLE HIEX;Lo;0;L;;;;;N;;;;; -A270;YI SYLLABLE HIE;Lo;0;L;;;;;N;;;;; -A271;YI SYLLABLE HAT;Lo;0;L;;;;;N;;;;; -A272;YI SYLLABLE HAX;Lo;0;L;;;;;N;;;;; -A273;YI SYLLABLE HA;Lo;0;L;;;;;N;;;;; -A274;YI SYLLABLE HAP;Lo;0;L;;;;;N;;;;; -A275;YI SYLLABLE HUOT;Lo;0;L;;;;;N;;;;; -A276;YI SYLLABLE HUOX;Lo;0;L;;;;;N;;;;; -A277;YI SYLLABLE HUO;Lo;0;L;;;;;N;;;;; -A278;YI SYLLABLE HUOP;Lo;0;L;;;;;N;;;;; -A279;YI SYLLABLE HOT;Lo;0;L;;;;;N;;;;; -A27A;YI SYLLABLE HOX;Lo;0;L;;;;;N;;;;; -A27B;YI SYLLABLE HO;Lo;0;L;;;;;N;;;;; -A27C;YI SYLLABLE HOP;Lo;0;L;;;;;N;;;;; -A27D;YI SYLLABLE HEX;Lo;0;L;;;;;N;;;;; -A27E;YI SYLLABLE HE;Lo;0;L;;;;;N;;;;; -A27F;YI SYLLABLE HEP;Lo;0;L;;;;;N;;;;; -A280;YI SYLLABLE WAT;Lo;0;L;;;;;N;;;;; -A281;YI SYLLABLE WAX;Lo;0;L;;;;;N;;;;; -A282;YI SYLLABLE WA;Lo;0;L;;;;;N;;;;; -A283;YI SYLLABLE WAP;Lo;0;L;;;;;N;;;;; -A284;YI SYLLABLE WUOX;Lo;0;L;;;;;N;;;;; -A285;YI SYLLABLE WUO;Lo;0;L;;;;;N;;;;; -A286;YI SYLLABLE WUOP;Lo;0;L;;;;;N;;;;; -A287;YI SYLLABLE WOX;Lo;0;L;;;;;N;;;;; -A288;YI SYLLABLE WO;Lo;0;L;;;;;N;;;;; -A289;YI SYLLABLE WOP;Lo;0;L;;;;;N;;;;; -A28A;YI SYLLABLE WEX;Lo;0;L;;;;;N;;;;; -A28B;YI SYLLABLE WE;Lo;0;L;;;;;N;;;;; -A28C;YI SYLLABLE WEP;Lo;0;L;;;;;N;;;;; -A28D;YI SYLLABLE ZIT;Lo;0;L;;;;;N;;;;; -A28E;YI SYLLABLE ZIX;Lo;0;L;;;;;N;;;;; -A28F;YI SYLLABLE ZI;Lo;0;L;;;;;N;;;;; -A290;YI SYLLABLE ZIP;Lo;0;L;;;;;N;;;;; -A291;YI SYLLABLE ZIEX;Lo;0;L;;;;;N;;;;; -A292;YI SYLLABLE ZIE;Lo;0;L;;;;;N;;;;; -A293;YI SYLLABLE ZIEP;Lo;0;L;;;;;N;;;;; -A294;YI SYLLABLE ZAT;Lo;0;L;;;;;N;;;;; -A295;YI SYLLABLE ZAX;Lo;0;L;;;;;N;;;;; -A296;YI SYLLABLE ZA;Lo;0;L;;;;;N;;;;; -A297;YI SYLLABLE ZAP;Lo;0;L;;;;;N;;;;; -A298;YI SYLLABLE ZUOX;Lo;0;L;;;;;N;;;;; -A299;YI SYLLABLE ZUO;Lo;0;L;;;;;N;;;;; -A29A;YI SYLLABLE ZUOP;Lo;0;L;;;;;N;;;;; -A29B;YI SYLLABLE ZOT;Lo;0;L;;;;;N;;;;; -A29C;YI SYLLABLE ZOX;Lo;0;L;;;;;N;;;;; -A29D;YI SYLLABLE ZO;Lo;0;L;;;;;N;;;;; -A29E;YI SYLLABLE ZOP;Lo;0;L;;;;;N;;;;; -A29F;YI SYLLABLE ZEX;Lo;0;L;;;;;N;;;;; -A2A0;YI SYLLABLE ZE;Lo;0;L;;;;;N;;;;; -A2A1;YI SYLLABLE ZEP;Lo;0;L;;;;;N;;;;; -A2A2;YI SYLLABLE ZUT;Lo;0;L;;;;;N;;;;; -A2A3;YI SYLLABLE ZUX;Lo;0;L;;;;;N;;;;; -A2A4;YI SYLLABLE ZU;Lo;0;L;;;;;N;;;;; -A2A5;YI SYLLABLE ZUP;Lo;0;L;;;;;N;;;;; -A2A6;YI SYLLABLE ZURX;Lo;0;L;;;;;N;;;;; -A2A7;YI SYLLABLE ZUR;Lo;0;L;;;;;N;;;;; -A2A8;YI SYLLABLE ZYT;Lo;0;L;;;;;N;;;;; -A2A9;YI SYLLABLE ZYX;Lo;0;L;;;;;N;;;;; -A2AA;YI SYLLABLE ZY;Lo;0;L;;;;;N;;;;; -A2AB;YI SYLLABLE ZYP;Lo;0;L;;;;;N;;;;; -A2AC;YI SYLLABLE ZYRX;Lo;0;L;;;;;N;;;;; -A2AD;YI SYLLABLE ZYR;Lo;0;L;;;;;N;;;;; -A2AE;YI SYLLABLE CIT;Lo;0;L;;;;;N;;;;; -A2AF;YI SYLLABLE CIX;Lo;0;L;;;;;N;;;;; -A2B0;YI SYLLABLE CI;Lo;0;L;;;;;N;;;;; -A2B1;YI SYLLABLE CIP;Lo;0;L;;;;;N;;;;; -A2B2;YI SYLLABLE CIET;Lo;0;L;;;;;N;;;;; -A2B3;YI SYLLABLE CIEX;Lo;0;L;;;;;N;;;;; -A2B4;YI SYLLABLE CIE;Lo;0;L;;;;;N;;;;; -A2B5;YI SYLLABLE CIEP;Lo;0;L;;;;;N;;;;; -A2B6;YI SYLLABLE CAT;Lo;0;L;;;;;N;;;;; -A2B7;YI SYLLABLE CAX;Lo;0;L;;;;;N;;;;; -A2B8;YI SYLLABLE CA;Lo;0;L;;;;;N;;;;; -A2B9;YI SYLLABLE CAP;Lo;0;L;;;;;N;;;;; -A2BA;YI SYLLABLE CUOX;Lo;0;L;;;;;N;;;;; -A2BB;YI SYLLABLE CUO;Lo;0;L;;;;;N;;;;; -A2BC;YI SYLLABLE CUOP;Lo;0;L;;;;;N;;;;; -A2BD;YI SYLLABLE COT;Lo;0;L;;;;;N;;;;; -A2BE;YI SYLLABLE COX;Lo;0;L;;;;;N;;;;; -A2BF;YI SYLLABLE CO;Lo;0;L;;;;;N;;;;; -A2C0;YI SYLLABLE COP;Lo;0;L;;;;;N;;;;; -A2C1;YI SYLLABLE CEX;Lo;0;L;;;;;N;;;;; -A2C2;YI SYLLABLE CE;Lo;0;L;;;;;N;;;;; -A2C3;YI SYLLABLE CEP;Lo;0;L;;;;;N;;;;; -A2C4;YI SYLLABLE CUT;Lo;0;L;;;;;N;;;;; -A2C5;YI SYLLABLE CUX;Lo;0;L;;;;;N;;;;; -A2C6;YI SYLLABLE CU;Lo;0;L;;;;;N;;;;; -A2C7;YI SYLLABLE CUP;Lo;0;L;;;;;N;;;;; -A2C8;YI SYLLABLE CURX;Lo;0;L;;;;;N;;;;; -A2C9;YI SYLLABLE CUR;Lo;0;L;;;;;N;;;;; -A2CA;YI SYLLABLE CYT;Lo;0;L;;;;;N;;;;; -A2CB;YI SYLLABLE CYX;Lo;0;L;;;;;N;;;;; -A2CC;YI SYLLABLE CY;Lo;0;L;;;;;N;;;;; -A2CD;YI SYLLABLE CYP;Lo;0;L;;;;;N;;;;; -A2CE;YI SYLLABLE CYRX;Lo;0;L;;;;;N;;;;; -A2CF;YI SYLLABLE CYR;Lo;0;L;;;;;N;;;;; -A2D0;YI SYLLABLE ZZIT;Lo;0;L;;;;;N;;;;; -A2D1;YI SYLLABLE ZZIX;Lo;0;L;;;;;N;;;;; -A2D2;YI SYLLABLE ZZI;Lo;0;L;;;;;N;;;;; -A2D3;YI SYLLABLE ZZIP;Lo;0;L;;;;;N;;;;; -A2D4;YI SYLLABLE ZZIET;Lo;0;L;;;;;N;;;;; -A2D5;YI SYLLABLE ZZIEX;Lo;0;L;;;;;N;;;;; -A2D6;YI SYLLABLE ZZIE;Lo;0;L;;;;;N;;;;; -A2D7;YI SYLLABLE ZZIEP;Lo;0;L;;;;;N;;;;; -A2D8;YI SYLLABLE ZZAT;Lo;0;L;;;;;N;;;;; -A2D9;YI SYLLABLE ZZAX;Lo;0;L;;;;;N;;;;; -A2DA;YI SYLLABLE ZZA;Lo;0;L;;;;;N;;;;; -A2DB;YI SYLLABLE ZZAP;Lo;0;L;;;;;N;;;;; -A2DC;YI SYLLABLE ZZOX;Lo;0;L;;;;;N;;;;; -A2DD;YI SYLLABLE ZZO;Lo;0;L;;;;;N;;;;; -A2DE;YI SYLLABLE ZZOP;Lo;0;L;;;;;N;;;;; -A2DF;YI SYLLABLE ZZEX;Lo;0;L;;;;;N;;;;; -A2E0;YI SYLLABLE ZZE;Lo;0;L;;;;;N;;;;; -A2E1;YI SYLLABLE ZZEP;Lo;0;L;;;;;N;;;;; -A2E2;YI SYLLABLE ZZUX;Lo;0;L;;;;;N;;;;; -A2E3;YI SYLLABLE ZZU;Lo;0;L;;;;;N;;;;; -A2E4;YI SYLLABLE ZZUP;Lo;0;L;;;;;N;;;;; -A2E5;YI SYLLABLE ZZURX;Lo;0;L;;;;;N;;;;; -A2E6;YI SYLLABLE ZZUR;Lo;0;L;;;;;N;;;;; -A2E7;YI SYLLABLE ZZYT;Lo;0;L;;;;;N;;;;; -A2E8;YI SYLLABLE ZZYX;Lo;0;L;;;;;N;;;;; -A2E9;YI SYLLABLE ZZY;Lo;0;L;;;;;N;;;;; -A2EA;YI SYLLABLE ZZYP;Lo;0;L;;;;;N;;;;; -A2EB;YI SYLLABLE ZZYRX;Lo;0;L;;;;;N;;;;; -A2EC;YI SYLLABLE ZZYR;Lo;0;L;;;;;N;;;;; -A2ED;YI SYLLABLE NZIT;Lo;0;L;;;;;N;;;;; -A2EE;YI SYLLABLE NZIX;Lo;0;L;;;;;N;;;;; -A2EF;YI SYLLABLE NZI;Lo;0;L;;;;;N;;;;; -A2F0;YI SYLLABLE NZIP;Lo;0;L;;;;;N;;;;; -A2F1;YI SYLLABLE NZIEX;Lo;0;L;;;;;N;;;;; -A2F2;YI SYLLABLE NZIE;Lo;0;L;;;;;N;;;;; -A2F3;YI SYLLABLE NZIEP;Lo;0;L;;;;;N;;;;; -A2F4;YI SYLLABLE NZAT;Lo;0;L;;;;;N;;;;; -A2F5;YI SYLLABLE NZAX;Lo;0;L;;;;;N;;;;; -A2F6;YI SYLLABLE NZA;Lo;0;L;;;;;N;;;;; -A2F7;YI SYLLABLE NZAP;Lo;0;L;;;;;N;;;;; -A2F8;YI SYLLABLE NZUOX;Lo;0;L;;;;;N;;;;; -A2F9;YI SYLLABLE NZUO;Lo;0;L;;;;;N;;;;; -A2FA;YI SYLLABLE NZOX;Lo;0;L;;;;;N;;;;; -A2FB;YI SYLLABLE NZOP;Lo;0;L;;;;;N;;;;; -A2FC;YI SYLLABLE NZEX;Lo;0;L;;;;;N;;;;; -A2FD;YI SYLLABLE NZE;Lo;0;L;;;;;N;;;;; -A2FE;YI SYLLABLE NZUX;Lo;0;L;;;;;N;;;;; -A2FF;YI SYLLABLE NZU;Lo;0;L;;;;;N;;;;; -A300;YI SYLLABLE NZUP;Lo;0;L;;;;;N;;;;; -A301;YI SYLLABLE NZURX;Lo;0;L;;;;;N;;;;; -A302;YI SYLLABLE NZUR;Lo;0;L;;;;;N;;;;; -A303;YI SYLLABLE NZYT;Lo;0;L;;;;;N;;;;; -A304;YI SYLLABLE NZYX;Lo;0;L;;;;;N;;;;; -A305;YI SYLLABLE NZY;Lo;0;L;;;;;N;;;;; -A306;YI SYLLABLE NZYP;Lo;0;L;;;;;N;;;;; -A307;YI SYLLABLE NZYRX;Lo;0;L;;;;;N;;;;; -A308;YI SYLLABLE NZYR;Lo;0;L;;;;;N;;;;; -A309;YI SYLLABLE SIT;Lo;0;L;;;;;N;;;;; -A30A;YI SYLLABLE SIX;Lo;0;L;;;;;N;;;;; -A30B;YI SYLLABLE SI;Lo;0;L;;;;;N;;;;; -A30C;YI SYLLABLE SIP;Lo;0;L;;;;;N;;;;; -A30D;YI SYLLABLE SIEX;Lo;0;L;;;;;N;;;;; -A30E;YI SYLLABLE SIE;Lo;0;L;;;;;N;;;;; -A30F;YI SYLLABLE SIEP;Lo;0;L;;;;;N;;;;; -A310;YI SYLLABLE SAT;Lo;0;L;;;;;N;;;;; -A311;YI SYLLABLE SAX;Lo;0;L;;;;;N;;;;; -A312;YI SYLLABLE SA;Lo;0;L;;;;;N;;;;; -A313;YI SYLLABLE SAP;Lo;0;L;;;;;N;;;;; -A314;YI SYLLABLE SUOX;Lo;0;L;;;;;N;;;;; -A315;YI SYLLABLE SUO;Lo;0;L;;;;;N;;;;; -A316;YI SYLLABLE SUOP;Lo;0;L;;;;;N;;;;; -A317;YI SYLLABLE SOT;Lo;0;L;;;;;N;;;;; -A318;YI SYLLABLE SOX;Lo;0;L;;;;;N;;;;; -A319;YI SYLLABLE SO;Lo;0;L;;;;;N;;;;; -A31A;YI SYLLABLE SOP;Lo;0;L;;;;;N;;;;; -A31B;YI SYLLABLE SEX;Lo;0;L;;;;;N;;;;; -A31C;YI SYLLABLE SE;Lo;0;L;;;;;N;;;;; -A31D;YI SYLLABLE SEP;Lo;0;L;;;;;N;;;;; -A31E;YI SYLLABLE SUT;Lo;0;L;;;;;N;;;;; -A31F;YI SYLLABLE SUX;Lo;0;L;;;;;N;;;;; -A320;YI SYLLABLE SU;Lo;0;L;;;;;N;;;;; -A321;YI SYLLABLE SUP;Lo;0;L;;;;;N;;;;; -A322;YI SYLLABLE SURX;Lo;0;L;;;;;N;;;;; -A323;YI SYLLABLE SUR;Lo;0;L;;;;;N;;;;; -A324;YI SYLLABLE SYT;Lo;0;L;;;;;N;;;;; -A325;YI SYLLABLE SYX;Lo;0;L;;;;;N;;;;; -A326;YI SYLLABLE SY;Lo;0;L;;;;;N;;;;; -A327;YI SYLLABLE SYP;Lo;0;L;;;;;N;;;;; -A328;YI SYLLABLE SYRX;Lo;0;L;;;;;N;;;;; -A329;YI SYLLABLE SYR;Lo;0;L;;;;;N;;;;; -A32A;YI SYLLABLE SSIT;Lo;0;L;;;;;N;;;;; -A32B;YI SYLLABLE SSIX;Lo;0;L;;;;;N;;;;; -A32C;YI SYLLABLE SSI;Lo;0;L;;;;;N;;;;; -A32D;YI SYLLABLE SSIP;Lo;0;L;;;;;N;;;;; -A32E;YI SYLLABLE SSIEX;Lo;0;L;;;;;N;;;;; -A32F;YI SYLLABLE SSIE;Lo;0;L;;;;;N;;;;; -A330;YI SYLLABLE SSIEP;Lo;0;L;;;;;N;;;;; -A331;YI SYLLABLE SSAT;Lo;0;L;;;;;N;;;;; -A332;YI SYLLABLE SSAX;Lo;0;L;;;;;N;;;;; -A333;YI SYLLABLE SSA;Lo;0;L;;;;;N;;;;; -A334;YI SYLLABLE SSAP;Lo;0;L;;;;;N;;;;; -A335;YI SYLLABLE SSOT;Lo;0;L;;;;;N;;;;; -A336;YI SYLLABLE SSOX;Lo;0;L;;;;;N;;;;; -A337;YI SYLLABLE SSO;Lo;0;L;;;;;N;;;;; -A338;YI SYLLABLE SSOP;Lo;0;L;;;;;N;;;;; -A339;YI SYLLABLE SSEX;Lo;0;L;;;;;N;;;;; -A33A;YI SYLLABLE SSE;Lo;0;L;;;;;N;;;;; -A33B;YI SYLLABLE SSEP;Lo;0;L;;;;;N;;;;; -A33C;YI SYLLABLE SSUT;Lo;0;L;;;;;N;;;;; -A33D;YI SYLLABLE SSUX;Lo;0;L;;;;;N;;;;; -A33E;YI SYLLABLE SSU;Lo;0;L;;;;;N;;;;; -A33F;YI SYLLABLE SSUP;Lo;0;L;;;;;N;;;;; -A340;YI SYLLABLE SSYT;Lo;0;L;;;;;N;;;;; -A341;YI SYLLABLE SSYX;Lo;0;L;;;;;N;;;;; -A342;YI SYLLABLE SSY;Lo;0;L;;;;;N;;;;; -A343;YI SYLLABLE SSYP;Lo;0;L;;;;;N;;;;; -A344;YI SYLLABLE SSYRX;Lo;0;L;;;;;N;;;;; -A345;YI SYLLABLE SSYR;Lo;0;L;;;;;N;;;;; -A346;YI SYLLABLE ZHAT;Lo;0;L;;;;;N;;;;; -A347;YI SYLLABLE ZHAX;Lo;0;L;;;;;N;;;;; -A348;YI SYLLABLE ZHA;Lo;0;L;;;;;N;;;;; -A349;YI SYLLABLE ZHAP;Lo;0;L;;;;;N;;;;; -A34A;YI SYLLABLE ZHUOX;Lo;0;L;;;;;N;;;;; -A34B;YI SYLLABLE ZHUO;Lo;0;L;;;;;N;;;;; -A34C;YI SYLLABLE ZHUOP;Lo;0;L;;;;;N;;;;; -A34D;YI SYLLABLE ZHOT;Lo;0;L;;;;;N;;;;; -A34E;YI SYLLABLE ZHOX;Lo;0;L;;;;;N;;;;; -A34F;YI SYLLABLE ZHO;Lo;0;L;;;;;N;;;;; -A350;YI SYLLABLE ZHOP;Lo;0;L;;;;;N;;;;; -A351;YI SYLLABLE ZHET;Lo;0;L;;;;;N;;;;; -A352;YI SYLLABLE ZHEX;Lo;0;L;;;;;N;;;;; -A353;YI SYLLABLE ZHE;Lo;0;L;;;;;N;;;;; -A354;YI SYLLABLE ZHEP;Lo;0;L;;;;;N;;;;; -A355;YI SYLLABLE ZHUT;Lo;0;L;;;;;N;;;;; -A356;YI SYLLABLE ZHUX;Lo;0;L;;;;;N;;;;; -A357;YI SYLLABLE ZHU;Lo;0;L;;;;;N;;;;; -A358;YI SYLLABLE ZHUP;Lo;0;L;;;;;N;;;;; -A359;YI SYLLABLE ZHURX;Lo;0;L;;;;;N;;;;; -A35A;YI SYLLABLE ZHUR;Lo;0;L;;;;;N;;;;; -A35B;YI SYLLABLE ZHYT;Lo;0;L;;;;;N;;;;; -A35C;YI SYLLABLE ZHYX;Lo;0;L;;;;;N;;;;; -A35D;YI SYLLABLE ZHY;Lo;0;L;;;;;N;;;;; -A35E;YI SYLLABLE ZHYP;Lo;0;L;;;;;N;;;;; -A35F;YI SYLLABLE ZHYRX;Lo;0;L;;;;;N;;;;; -A360;YI SYLLABLE ZHYR;Lo;0;L;;;;;N;;;;; -A361;YI SYLLABLE CHAT;Lo;0;L;;;;;N;;;;; -A362;YI SYLLABLE CHAX;Lo;0;L;;;;;N;;;;; -A363;YI SYLLABLE CHA;Lo;0;L;;;;;N;;;;; -A364;YI SYLLABLE CHAP;Lo;0;L;;;;;N;;;;; -A365;YI SYLLABLE CHUOT;Lo;0;L;;;;;N;;;;; -A366;YI SYLLABLE CHUOX;Lo;0;L;;;;;N;;;;; -A367;YI SYLLABLE CHUO;Lo;0;L;;;;;N;;;;; -A368;YI SYLLABLE CHUOP;Lo;0;L;;;;;N;;;;; -A369;YI SYLLABLE CHOT;Lo;0;L;;;;;N;;;;; -A36A;YI SYLLABLE CHOX;Lo;0;L;;;;;N;;;;; -A36B;YI SYLLABLE CHO;Lo;0;L;;;;;N;;;;; -A36C;YI SYLLABLE CHOP;Lo;0;L;;;;;N;;;;; -A36D;YI SYLLABLE CHET;Lo;0;L;;;;;N;;;;; -A36E;YI SYLLABLE CHEX;Lo;0;L;;;;;N;;;;; -A36F;YI SYLLABLE CHE;Lo;0;L;;;;;N;;;;; -A370;YI SYLLABLE CHEP;Lo;0;L;;;;;N;;;;; -A371;YI SYLLABLE CHUX;Lo;0;L;;;;;N;;;;; -A372;YI SYLLABLE CHU;Lo;0;L;;;;;N;;;;; -A373;YI SYLLABLE CHUP;Lo;0;L;;;;;N;;;;; -A374;YI SYLLABLE CHURX;Lo;0;L;;;;;N;;;;; -A375;YI SYLLABLE CHUR;Lo;0;L;;;;;N;;;;; -A376;YI SYLLABLE CHYT;Lo;0;L;;;;;N;;;;; -A377;YI SYLLABLE CHYX;Lo;0;L;;;;;N;;;;; -A378;YI SYLLABLE CHY;Lo;0;L;;;;;N;;;;; -A379;YI SYLLABLE CHYP;Lo;0;L;;;;;N;;;;; -A37A;YI SYLLABLE CHYRX;Lo;0;L;;;;;N;;;;; -A37B;YI SYLLABLE CHYR;Lo;0;L;;;;;N;;;;; -A37C;YI SYLLABLE RRAX;Lo;0;L;;;;;N;;;;; -A37D;YI SYLLABLE RRA;Lo;0;L;;;;;N;;;;; -A37E;YI SYLLABLE RRUOX;Lo;0;L;;;;;N;;;;; -A37F;YI SYLLABLE RRUO;Lo;0;L;;;;;N;;;;; -A380;YI SYLLABLE RROT;Lo;0;L;;;;;N;;;;; -A381;YI SYLLABLE RROX;Lo;0;L;;;;;N;;;;; -A382;YI SYLLABLE RRO;Lo;0;L;;;;;N;;;;; -A383;YI SYLLABLE RROP;Lo;0;L;;;;;N;;;;; -A384;YI SYLLABLE RRET;Lo;0;L;;;;;N;;;;; -A385;YI SYLLABLE RREX;Lo;0;L;;;;;N;;;;; -A386;YI SYLLABLE RRE;Lo;0;L;;;;;N;;;;; -A387;YI SYLLABLE RREP;Lo;0;L;;;;;N;;;;; -A388;YI SYLLABLE RRUT;Lo;0;L;;;;;N;;;;; -A389;YI SYLLABLE RRUX;Lo;0;L;;;;;N;;;;; -A38A;YI SYLLABLE RRU;Lo;0;L;;;;;N;;;;; -A38B;YI SYLLABLE RRUP;Lo;0;L;;;;;N;;;;; -A38C;YI SYLLABLE RRURX;Lo;0;L;;;;;N;;;;; -A38D;YI SYLLABLE RRUR;Lo;0;L;;;;;N;;;;; -A38E;YI SYLLABLE RRYT;Lo;0;L;;;;;N;;;;; -A38F;YI SYLLABLE RRYX;Lo;0;L;;;;;N;;;;; -A390;YI SYLLABLE RRY;Lo;0;L;;;;;N;;;;; -A391;YI SYLLABLE RRYP;Lo;0;L;;;;;N;;;;; -A392;YI SYLLABLE RRYRX;Lo;0;L;;;;;N;;;;; -A393;YI SYLLABLE RRYR;Lo;0;L;;;;;N;;;;; -A394;YI SYLLABLE NRAT;Lo;0;L;;;;;N;;;;; -A395;YI SYLLABLE NRAX;Lo;0;L;;;;;N;;;;; -A396;YI SYLLABLE NRA;Lo;0;L;;;;;N;;;;; -A397;YI SYLLABLE NRAP;Lo;0;L;;;;;N;;;;; -A398;YI SYLLABLE NROX;Lo;0;L;;;;;N;;;;; -A399;YI SYLLABLE NRO;Lo;0;L;;;;;N;;;;; -A39A;YI SYLLABLE NROP;Lo;0;L;;;;;N;;;;; -A39B;YI SYLLABLE NRET;Lo;0;L;;;;;N;;;;; -A39C;YI SYLLABLE NREX;Lo;0;L;;;;;N;;;;; -A39D;YI SYLLABLE NRE;Lo;0;L;;;;;N;;;;; -A39E;YI SYLLABLE NREP;Lo;0;L;;;;;N;;;;; -A39F;YI SYLLABLE NRUT;Lo;0;L;;;;;N;;;;; -A3A0;YI SYLLABLE NRUX;Lo;0;L;;;;;N;;;;; -A3A1;YI SYLLABLE NRU;Lo;0;L;;;;;N;;;;; -A3A2;YI SYLLABLE NRUP;Lo;0;L;;;;;N;;;;; -A3A3;YI SYLLABLE NRURX;Lo;0;L;;;;;N;;;;; -A3A4;YI SYLLABLE NRUR;Lo;0;L;;;;;N;;;;; -A3A5;YI SYLLABLE NRYT;Lo;0;L;;;;;N;;;;; -A3A6;YI SYLLABLE NRYX;Lo;0;L;;;;;N;;;;; -A3A7;YI SYLLABLE NRY;Lo;0;L;;;;;N;;;;; -A3A8;YI SYLLABLE NRYP;Lo;0;L;;;;;N;;;;; -A3A9;YI SYLLABLE NRYRX;Lo;0;L;;;;;N;;;;; -A3AA;YI SYLLABLE NRYR;Lo;0;L;;;;;N;;;;; -A3AB;YI SYLLABLE SHAT;Lo;0;L;;;;;N;;;;; -A3AC;YI SYLLABLE SHAX;Lo;0;L;;;;;N;;;;; -A3AD;YI SYLLABLE SHA;Lo;0;L;;;;;N;;;;; -A3AE;YI SYLLABLE SHAP;Lo;0;L;;;;;N;;;;; -A3AF;YI SYLLABLE SHUOX;Lo;0;L;;;;;N;;;;; -A3B0;YI SYLLABLE SHUO;Lo;0;L;;;;;N;;;;; -A3B1;YI SYLLABLE SHUOP;Lo;0;L;;;;;N;;;;; -A3B2;YI SYLLABLE SHOT;Lo;0;L;;;;;N;;;;; -A3B3;YI SYLLABLE SHOX;Lo;0;L;;;;;N;;;;; -A3B4;YI SYLLABLE SHO;Lo;0;L;;;;;N;;;;; -A3B5;YI SYLLABLE SHOP;Lo;0;L;;;;;N;;;;; -A3B6;YI SYLLABLE SHET;Lo;0;L;;;;;N;;;;; -A3B7;YI SYLLABLE SHEX;Lo;0;L;;;;;N;;;;; -A3B8;YI SYLLABLE SHE;Lo;0;L;;;;;N;;;;; -A3B9;YI SYLLABLE SHEP;Lo;0;L;;;;;N;;;;; -A3BA;YI SYLLABLE SHUT;Lo;0;L;;;;;N;;;;; -A3BB;YI SYLLABLE SHUX;Lo;0;L;;;;;N;;;;; -A3BC;YI SYLLABLE SHU;Lo;0;L;;;;;N;;;;; -A3BD;YI SYLLABLE SHUP;Lo;0;L;;;;;N;;;;; -A3BE;YI SYLLABLE SHURX;Lo;0;L;;;;;N;;;;; -A3BF;YI SYLLABLE SHUR;Lo;0;L;;;;;N;;;;; -A3C0;YI SYLLABLE SHYT;Lo;0;L;;;;;N;;;;; -A3C1;YI SYLLABLE SHYX;Lo;0;L;;;;;N;;;;; -A3C2;YI SYLLABLE SHY;Lo;0;L;;;;;N;;;;; -A3C3;YI SYLLABLE SHYP;Lo;0;L;;;;;N;;;;; -A3C4;YI SYLLABLE SHYRX;Lo;0;L;;;;;N;;;;; -A3C5;YI SYLLABLE SHYR;Lo;0;L;;;;;N;;;;; -A3C6;YI SYLLABLE RAT;Lo;0;L;;;;;N;;;;; -A3C7;YI SYLLABLE RAX;Lo;0;L;;;;;N;;;;; -A3C8;YI SYLLABLE RA;Lo;0;L;;;;;N;;;;; -A3C9;YI SYLLABLE RAP;Lo;0;L;;;;;N;;;;; -A3CA;YI SYLLABLE RUOX;Lo;0;L;;;;;N;;;;; -A3CB;YI SYLLABLE RUO;Lo;0;L;;;;;N;;;;; -A3CC;YI SYLLABLE RUOP;Lo;0;L;;;;;N;;;;; -A3CD;YI SYLLABLE ROT;Lo;0;L;;;;;N;;;;; -A3CE;YI SYLLABLE ROX;Lo;0;L;;;;;N;;;;; -A3CF;YI SYLLABLE RO;Lo;0;L;;;;;N;;;;; -A3D0;YI SYLLABLE ROP;Lo;0;L;;;;;N;;;;; -A3D1;YI SYLLABLE REX;Lo;0;L;;;;;N;;;;; -A3D2;YI SYLLABLE RE;Lo;0;L;;;;;N;;;;; -A3D3;YI SYLLABLE REP;Lo;0;L;;;;;N;;;;; -A3D4;YI SYLLABLE RUT;Lo;0;L;;;;;N;;;;; -A3D5;YI SYLLABLE RUX;Lo;0;L;;;;;N;;;;; -A3D6;YI SYLLABLE RU;Lo;0;L;;;;;N;;;;; -A3D7;YI SYLLABLE RUP;Lo;0;L;;;;;N;;;;; -A3D8;YI SYLLABLE RURX;Lo;0;L;;;;;N;;;;; -A3D9;YI SYLLABLE RUR;Lo;0;L;;;;;N;;;;; -A3DA;YI SYLLABLE RYT;Lo;0;L;;;;;N;;;;; -A3DB;YI SYLLABLE RYX;Lo;0;L;;;;;N;;;;; -A3DC;YI SYLLABLE RY;Lo;0;L;;;;;N;;;;; -A3DD;YI SYLLABLE RYP;Lo;0;L;;;;;N;;;;; -A3DE;YI SYLLABLE RYRX;Lo;0;L;;;;;N;;;;; -A3DF;YI SYLLABLE RYR;Lo;0;L;;;;;N;;;;; -A3E0;YI SYLLABLE JIT;Lo;0;L;;;;;N;;;;; -A3E1;YI SYLLABLE JIX;Lo;0;L;;;;;N;;;;; -A3E2;YI SYLLABLE JI;Lo;0;L;;;;;N;;;;; -A3E3;YI SYLLABLE JIP;Lo;0;L;;;;;N;;;;; -A3E4;YI SYLLABLE JIET;Lo;0;L;;;;;N;;;;; -A3E5;YI SYLLABLE JIEX;Lo;0;L;;;;;N;;;;; -A3E6;YI SYLLABLE JIE;Lo;0;L;;;;;N;;;;; -A3E7;YI SYLLABLE JIEP;Lo;0;L;;;;;N;;;;; -A3E8;YI SYLLABLE JUOT;Lo;0;L;;;;;N;;;;; -A3E9;YI SYLLABLE JUOX;Lo;0;L;;;;;N;;;;; -A3EA;YI SYLLABLE JUO;Lo;0;L;;;;;N;;;;; -A3EB;YI SYLLABLE JUOP;Lo;0;L;;;;;N;;;;; -A3EC;YI SYLLABLE JOT;Lo;0;L;;;;;N;;;;; -A3ED;YI SYLLABLE JOX;Lo;0;L;;;;;N;;;;; -A3EE;YI SYLLABLE JO;Lo;0;L;;;;;N;;;;; -A3EF;YI SYLLABLE JOP;Lo;0;L;;;;;N;;;;; -A3F0;YI SYLLABLE JUT;Lo;0;L;;;;;N;;;;; -A3F1;YI SYLLABLE JUX;Lo;0;L;;;;;N;;;;; -A3F2;YI SYLLABLE JU;Lo;0;L;;;;;N;;;;; -A3F3;YI SYLLABLE JUP;Lo;0;L;;;;;N;;;;; -A3F4;YI SYLLABLE JURX;Lo;0;L;;;;;N;;;;; -A3F5;YI SYLLABLE JUR;Lo;0;L;;;;;N;;;;; -A3F6;YI SYLLABLE JYT;Lo;0;L;;;;;N;;;;; -A3F7;YI SYLLABLE JYX;Lo;0;L;;;;;N;;;;; -A3F8;YI SYLLABLE JY;Lo;0;L;;;;;N;;;;; -A3F9;YI SYLLABLE JYP;Lo;0;L;;;;;N;;;;; -A3FA;YI SYLLABLE JYRX;Lo;0;L;;;;;N;;;;; -A3FB;YI SYLLABLE JYR;Lo;0;L;;;;;N;;;;; -A3FC;YI SYLLABLE QIT;Lo;0;L;;;;;N;;;;; -A3FD;YI SYLLABLE QIX;Lo;0;L;;;;;N;;;;; -A3FE;YI SYLLABLE QI;Lo;0;L;;;;;N;;;;; -A3FF;YI SYLLABLE QIP;Lo;0;L;;;;;N;;;;; -A400;YI SYLLABLE QIET;Lo;0;L;;;;;N;;;;; -A401;YI SYLLABLE QIEX;Lo;0;L;;;;;N;;;;; -A402;YI SYLLABLE QIE;Lo;0;L;;;;;N;;;;; -A403;YI SYLLABLE QIEP;Lo;0;L;;;;;N;;;;; -A404;YI SYLLABLE QUOT;Lo;0;L;;;;;N;;;;; -A405;YI SYLLABLE QUOX;Lo;0;L;;;;;N;;;;; -A406;YI SYLLABLE QUO;Lo;0;L;;;;;N;;;;; -A407;YI SYLLABLE QUOP;Lo;0;L;;;;;N;;;;; -A408;YI SYLLABLE QOT;Lo;0;L;;;;;N;;;;; -A409;YI SYLLABLE QOX;Lo;0;L;;;;;N;;;;; -A40A;YI SYLLABLE QO;Lo;0;L;;;;;N;;;;; -A40B;YI SYLLABLE QOP;Lo;0;L;;;;;N;;;;; -A40C;YI SYLLABLE QUT;Lo;0;L;;;;;N;;;;; -A40D;YI SYLLABLE QUX;Lo;0;L;;;;;N;;;;; -A40E;YI SYLLABLE QU;Lo;0;L;;;;;N;;;;; -A40F;YI SYLLABLE QUP;Lo;0;L;;;;;N;;;;; -A410;YI SYLLABLE QURX;Lo;0;L;;;;;N;;;;; -A411;YI SYLLABLE QUR;Lo;0;L;;;;;N;;;;; -A412;YI SYLLABLE QYT;Lo;0;L;;;;;N;;;;; -A413;YI SYLLABLE QYX;Lo;0;L;;;;;N;;;;; -A414;YI SYLLABLE QY;Lo;0;L;;;;;N;;;;; -A415;YI SYLLABLE QYP;Lo;0;L;;;;;N;;;;; -A416;YI SYLLABLE QYRX;Lo;0;L;;;;;N;;;;; -A417;YI SYLLABLE QYR;Lo;0;L;;;;;N;;;;; -A418;YI SYLLABLE JJIT;Lo;0;L;;;;;N;;;;; -A419;YI SYLLABLE JJIX;Lo;0;L;;;;;N;;;;; -A41A;YI SYLLABLE JJI;Lo;0;L;;;;;N;;;;; -A41B;YI SYLLABLE JJIP;Lo;0;L;;;;;N;;;;; -A41C;YI SYLLABLE JJIET;Lo;0;L;;;;;N;;;;; -A41D;YI SYLLABLE JJIEX;Lo;0;L;;;;;N;;;;; -A41E;YI SYLLABLE JJIE;Lo;0;L;;;;;N;;;;; -A41F;YI SYLLABLE JJIEP;Lo;0;L;;;;;N;;;;; -A420;YI SYLLABLE JJUOX;Lo;0;L;;;;;N;;;;; -A421;YI SYLLABLE JJUO;Lo;0;L;;;;;N;;;;; -A422;YI SYLLABLE JJUOP;Lo;0;L;;;;;N;;;;; -A423;YI SYLLABLE JJOT;Lo;0;L;;;;;N;;;;; -A424;YI SYLLABLE JJOX;Lo;0;L;;;;;N;;;;; -A425;YI SYLLABLE JJO;Lo;0;L;;;;;N;;;;; -A426;YI SYLLABLE JJOP;Lo;0;L;;;;;N;;;;; -A427;YI SYLLABLE JJUT;Lo;0;L;;;;;N;;;;; -A428;YI SYLLABLE JJUX;Lo;0;L;;;;;N;;;;; -A429;YI SYLLABLE JJU;Lo;0;L;;;;;N;;;;; -A42A;YI SYLLABLE JJUP;Lo;0;L;;;;;N;;;;; -A42B;YI SYLLABLE JJURX;Lo;0;L;;;;;N;;;;; -A42C;YI SYLLABLE JJUR;Lo;0;L;;;;;N;;;;; -A42D;YI SYLLABLE JJYT;Lo;0;L;;;;;N;;;;; -A42E;YI SYLLABLE JJYX;Lo;0;L;;;;;N;;;;; -A42F;YI SYLLABLE JJY;Lo;0;L;;;;;N;;;;; -A430;YI SYLLABLE JJYP;Lo;0;L;;;;;N;;;;; -A431;YI SYLLABLE NJIT;Lo;0;L;;;;;N;;;;; -A432;YI SYLLABLE NJIX;Lo;0;L;;;;;N;;;;; -A433;YI SYLLABLE NJI;Lo;0;L;;;;;N;;;;; -A434;YI SYLLABLE NJIP;Lo;0;L;;;;;N;;;;; -A435;YI SYLLABLE NJIET;Lo;0;L;;;;;N;;;;; -A436;YI SYLLABLE NJIEX;Lo;0;L;;;;;N;;;;; -A437;YI SYLLABLE NJIE;Lo;0;L;;;;;N;;;;; -A438;YI SYLLABLE NJIEP;Lo;0;L;;;;;N;;;;; -A439;YI SYLLABLE NJUOX;Lo;0;L;;;;;N;;;;; -A43A;YI SYLLABLE NJUO;Lo;0;L;;;;;N;;;;; -A43B;YI SYLLABLE NJOT;Lo;0;L;;;;;N;;;;; -A43C;YI SYLLABLE NJOX;Lo;0;L;;;;;N;;;;; -A43D;YI SYLLABLE NJO;Lo;0;L;;;;;N;;;;; -A43E;YI SYLLABLE NJOP;Lo;0;L;;;;;N;;;;; -A43F;YI SYLLABLE NJUX;Lo;0;L;;;;;N;;;;; -A440;YI SYLLABLE NJU;Lo;0;L;;;;;N;;;;; -A441;YI SYLLABLE NJUP;Lo;0;L;;;;;N;;;;; -A442;YI SYLLABLE NJURX;Lo;0;L;;;;;N;;;;; -A443;YI SYLLABLE NJUR;Lo;0;L;;;;;N;;;;; -A444;YI SYLLABLE NJYT;Lo;0;L;;;;;N;;;;; -A445;YI SYLLABLE NJYX;Lo;0;L;;;;;N;;;;; -A446;YI SYLLABLE NJY;Lo;0;L;;;;;N;;;;; -A447;YI SYLLABLE NJYP;Lo;0;L;;;;;N;;;;; -A448;YI SYLLABLE NJYRX;Lo;0;L;;;;;N;;;;; -A449;YI SYLLABLE NJYR;Lo;0;L;;;;;N;;;;; -A44A;YI SYLLABLE NYIT;Lo;0;L;;;;;N;;;;; -A44B;YI SYLLABLE NYIX;Lo;0;L;;;;;N;;;;; -A44C;YI SYLLABLE NYI;Lo;0;L;;;;;N;;;;; -A44D;YI SYLLABLE NYIP;Lo;0;L;;;;;N;;;;; -A44E;YI SYLLABLE NYIET;Lo;0;L;;;;;N;;;;; -A44F;YI SYLLABLE NYIEX;Lo;0;L;;;;;N;;;;; -A450;YI SYLLABLE NYIE;Lo;0;L;;;;;N;;;;; -A451;YI SYLLABLE NYIEP;Lo;0;L;;;;;N;;;;; -A452;YI SYLLABLE NYUOX;Lo;0;L;;;;;N;;;;; -A453;YI SYLLABLE NYUO;Lo;0;L;;;;;N;;;;; -A454;YI SYLLABLE NYUOP;Lo;0;L;;;;;N;;;;; -A455;YI SYLLABLE NYOT;Lo;0;L;;;;;N;;;;; -A456;YI SYLLABLE NYOX;Lo;0;L;;;;;N;;;;; -A457;YI SYLLABLE NYO;Lo;0;L;;;;;N;;;;; -A458;YI SYLLABLE NYOP;Lo;0;L;;;;;N;;;;; -A459;YI SYLLABLE NYUT;Lo;0;L;;;;;N;;;;; -A45A;YI SYLLABLE NYUX;Lo;0;L;;;;;N;;;;; -A45B;YI SYLLABLE NYU;Lo;0;L;;;;;N;;;;; -A45C;YI SYLLABLE NYUP;Lo;0;L;;;;;N;;;;; -A45D;YI SYLLABLE XIT;Lo;0;L;;;;;N;;;;; -A45E;YI SYLLABLE XIX;Lo;0;L;;;;;N;;;;; -A45F;YI SYLLABLE XI;Lo;0;L;;;;;N;;;;; -A460;YI SYLLABLE XIP;Lo;0;L;;;;;N;;;;; -A461;YI SYLLABLE XIET;Lo;0;L;;;;;N;;;;; -A462;YI SYLLABLE XIEX;Lo;0;L;;;;;N;;;;; -A463;YI SYLLABLE XIE;Lo;0;L;;;;;N;;;;; -A464;YI SYLLABLE XIEP;Lo;0;L;;;;;N;;;;; -A465;YI SYLLABLE XUOX;Lo;0;L;;;;;N;;;;; -A466;YI SYLLABLE XUO;Lo;0;L;;;;;N;;;;; -A467;YI SYLLABLE XOT;Lo;0;L;;;;;N;;;;; -A468;YI SYLLABLE XOX;Lo;0;L;;;;;N;;;;; -A469;YI SYLLABLE XO;Lo;0;L;;;;;N;;;;; -A46A;YI SYLLABLE XOP;Lo;0;L;;;;;N;;;;; -A46B;YI SYLLABLE XYT;Lo;0;L;;;;;N;;;;; -A46C;YI SYLLABLE XYX;Lo;0;L;;;;;N;;;;; -A46D;YI SYLLABLE XY;Lo;0;L;;;;;N;;;;; -A46E;YI SYLLABLE XYP;Lo;0;L;;;;;N;;;;; -A46F;YI SYLLABLE XYRX;Lo;0;L;;;;;N;;;;; -A470;YI SYLLABLE XYR;Lo;0;L;;;;;N;;;;; -A471;YI SYLLABLE YIT;Lo;0;L;;;;;N;;;;; -A472;YI SYLLABLE YIX;Lo;0;L;;;;;N;;;;; -A473;YI SYLLABLE YI;Lo;0;L;;;;;N;;;;; -A474;YI SYLLABLE YIP;Lo;0;L;;;;;N;;;;; -A475;YI SYLLABLE YIET;Lo;0;L;;;;;N;;;;; -A476;YI SYLLABLE YIEX;Lo;0;L;;;;;N;;;;; -A477;YI SYLLABLE YIE;Lo;0;L;;;;;N;;;;; -A478;YI SYLLABLE YIEP;Lo;0;L;;;;;N;;;;; -A479;YI SYLLABLE YUOT;Lo;0;L;;;;;N;;;;; -A47A;YI SYLLABLE YUOX;Lo;0;L;;;;;N;;;;; -A47B;YI SYLLABLE YUO;Lo;0;L;;;;;N;;;;; -A47C;YI SYLLABLE YUOP;Lo;0;L;;;;;N;;;;; -A47D;YI SYLLABLE YOT;Lo;0;L;;;;;N;;;;; -A47E;YI SYLLABLE YOX;Lo;0;L;;;;;N;;;;; -A47F;YI SYLLABLE YO;Lo;0;L;;;;;N;;;;; -A480;YI SYLLABLE YOP;Lo;0;L;;;;;N;;;;; -A481;YI SYLLABLE YUT;Lo;0;L;;;;;N;;;;; -A482;YI SYLLABLE YUX;Lo;0;L;;;;;N;;;;; -A483;YI SYLLABLE YU;Lo;0;L;;;;;N;;;;; -A484;YI SYLLABLE YUP;Lo;0;L;;;;;N;;;;; -A485;YI SYLLABLE YURX;Lo;0;L;;;;;N;;;;; -A486;YI SYLLABLE YUR;Lo;0;L;;;;;N;;;;; -A487;YI SYLLABLE YYT;Lo;0;L;;;;;N;;;;; -A488;YI SYLLABLE YYX;Lo;0;L;;;;;N;;;;; -A489;YI SYLLABLE YY;Lo;0;L;;;;;N;;;;; -A48A;YI SYLLABLE YYP;Lo;0;L;;;;;N;;;;; -A48B;YI SYLLABLE YYRX;Lo;0;L;;;;;N;;;;; -A48C;YI SYLLABLE YYR;Lo;0;L;;;;;N;;;;; -A490;YI RADICAL QOT;So;0;ON;;;;;N;;;;; -A491;YI RADICAL LI;So;0;ON;;;;;N;;;;; -A492;YI RADICAL KIT;So;0;ON;;;;;N;;;;; -A493;YI RADICAL NYIP;So;0;ON;;;;;N;;;;; -A494;YI RADICAL CYP;So;0;ON;;;;;N;;;;; -A495;YI RADICAL SSI;So;0;ON;;;;;N;;;;; -A496;YI RADICAL GGOP;So;0;ON;;;;;N;;;;; -A497;YI RADICAL GEP;So;0;ON;;;;;N;;;;; -A498;YI RADICAL MI;So;0;ON;;;;;N;;;;; -A499;YI RADICAL HXIT;So;0;ON;;;;;N;;;;; -A49A;YI RADICAL LYR;So;0;ON;;;;;N;;;;; -A49B;YI RADICAL BBUT;So;0;ON;;;;;N;;;;; -A49C;YI RADICAL MOP;So;0;ON;;;;;N;;;;; -A49D;YI RADICAL YO;So;0;ON;;;;;N;;;;; -A49E;YI RADICAL PUT;So;0;ON;;;;;N;;;;; -A49F;YI RADICAL HXUO;So;0;ON;;;;;N;;;;; -A4A0;YI RADICAL TAT;So;0;ON;;;;;N;;;;; -A4A1;YI RADICAL GA;So;0;ON;;;;;N;;;;; -A4A2;YI RADICAL ZUP;So;0;ON;;;;;N;;;;; -A4A3;YI RADICAL CYT;So;0;ON;;;;;N;;;;; -A4A4;YI RADICAL DDUR;So;0;ON;;;;;N;;;;; -A4A5;YI RADICAL BUR;So;0;ON;;;;;N;;;;; -A4A6;YI RADICAL GGUO;So;0;ON;;;;;N;;;;; -A4A7;YI RADICAL NYOP;So;0;ON;;;;;N;;;;; -A4A8;YI RADICAL TU;So;0;ON;;;;;N;;;;; -A4A9;YI RADICAL OP;So;0;ON;;;;;N;;;;; -A4AA;YI RADICAL JJUT;So;0;ON;;;;;N;;;;; -A4AB;YI RADICAL ZOT;So;0;ON;;;;;N;;;;; -A4AC;YI RADICAL PYT;So;0;ON;;;;;N;;;;; -A4AD;YI RADICAL HMO;So;0;ON;;;;;N;;;;; -A4AE;YI RADICAL YIT;So;0;ON;;;;;N;;;;; -A4AF;YI RADICAL VUR;So;0;ON;;;;;N;;;;; -A4B0;YI RADICAL SHY;So;0;ON;;;;;N;;;;; -A4B1;YI RADICAL VEP;So;0;ON;;;;;N;;;;; -A4B2;YI RADICAL ZA;So;0;ON;;;;;N;;;;; -A4B3;YI RADICAL JO;So;0;ON;;;;;N;;;;; -A4B4;YI RADICAL NZUP;So;0;ON;;;;;N;;;;; -A4B5;YI RADICAL JJY;So;0;ON;;;;;N;;;;; -A4B6;YI RADICAL GOT;So;0;ON;;;;;N;;;;; -A4B7;YI RADICAL JJIE;So;0;ON;;;;;N;;;;; -A4B8;YI RADICAL WO;So;0;ON;;;;;N;;;;; -A4B9;YI RADICAL DU;So;0;ON;;;;;N;;;;; -A4BA;YI RADICAL SHUR;So;0;ON;;;;;N;;;;; -A4BB;YI RADICAL LIE;So;0;ON;;;;;N;;;;; -A4BC;YI RADICAL CY;So;0;ON;;;;;N;;;;; -A4BD;YI RADICAL CUOP;So;0;ON;;;;;N;;;;; -A4BE;YI RADICAL CIP;So;0;ON;;;;;N;;;;; -A4BF;YI RADICAL HXOP;So;0;ON;;;;;N;;;;; -A4C0;YI RADICAL SHAT;So;0;ON;;;;;N;;;;; -A4C1;YI RADICAL ZUR;So;0;ON;;;;;N;;;;; -A4C2;YI RADICAL SHOP;So;0;ON;;;;;N;;;;; -A4C3;YI RADICAL CHE;So;0;ON;;;;;N;;;;; -A4C4;YI RADICAL ZZIET;So;0;ON;;;;;N;;;;; -A4C5;YI RADICAL NBIE;So;0;ON;;;;;N;;;;; -A4C6;YI RADICAL KE;So;0;ON;;;;;N;;;;; -A4D0;LISU LETTER BA;Lo;0;L;;;;;N;;;;; -A4D1;LISU LETTER PA;Lo;0;L;;;;;N;;;;; -A4D2;LISU LETTER PHA;Lo;0;L;;;;;N;;;;; -A4D3;LISU LETTER DA;Lo;0;L;;;;;N;;;;; -A4D4;LISU LETTER TA;Lo;0;L;;;;;N;;;;; -A4D5;LISU LETTER THA;Lo;0;L;;;;;N;;;;; -A4D6;LISU LETTER GA;Lo;0;L;;;;;N;;;;; -A4D7;LISU LETTER KA;Lo;0;L;;;;;N;;;;; -A4D8;LISU LETTER KHA;Lo;0;L;;;;;N;;;;; -A4D9;LISU LETTER JA;Lo;0;L;;;;;N;;;;; -A4DA;LISU LETTER CA;Lo;0;L;;;;;N;;;;; -A4DB;LISU LETTER CHA;Lo;0;L;;;;;N;;;;; -A4DC;LISU LETTER DZA;Lo;0;L;;;;;N;;;;; -A4DD;LISU LETTER TSA;Lo;0;L;;;;;N;;;;; -A4DE;LISU LETTER TSHA;Lo;0;L;;;;;N;;;;; -A4DF;LISU LETTER MA;Lo;0;L;;;;;N;;;;; -A4E0;LISU LETTER NA;Lo;0;L;;;;;N;;;;; -A4E1;LISU LETTER LA;Lo;0;L;;;;;N;;;;; -A4E2;LISU LETTER SA;Lo;0;L;;;;;N;;;;; -A4E3;LISU LETTER ZHA;Lo;0;L;;;;;N;;;;; -A4E4;LISU LETTER ZA;Lo;0;L;;;;;N;;;;; -A4E5;LISU LETTER NGA;Lo;0;L;;;;;N;;;;; -A4E6;LISU LETTER HA;Lo;0;L;;;;;N;;;;; -A4E7;LISU LETTER XA;Lo;0;L;;;;;N;;;;; -A4E8;LISU LETTER HHA;Lo;0;L;;;;;N;;;;; -A4E9;LISU LETTER FA;Lo;0;L;;;;;N;;;;; -A4EA;LISU LETTER WA;Lo;0;L;;;;;N;;;;; -A4EB;LISU LETTER SHA;Lo;0;L;;;;;N;;;;; -A4EC;LISU LETTER YA;Lo;0;L;;;;;N;;;;; -A4ED;LISU LETTER GHA;Lo;0;L;;;;;N;;;;; -A4EE;LISU LETTER A;Lo;0;L;;;;;N;;;;; -A4EF;LISU LETTER AE;Lo;0;L;;;;;N;;;;; -A4F0;LISU LETTER E;Lo;0;L;;;;;N;;;;; -A4F1;LISU LETTER EU;Lo;0;L;;;;;N;;;;; -A4F2;LISU LETTER I;Lo;0;L;;;;;N;;;;; -A4F3;LISU LETTER O;Lo;0;L;;;;;N;;;;; -A4F4;LISU LETTER U;Lo;0;L;;;;;N;;;;; -A4F5;LISU LETTER UE;Lo;0;L;;;;;N;;;;; -A4F6;LISU LETTER UH;Lo;0;L;;;;;N;;;;; -A4F7;LISU LETTER OE;Lo;0;L;;;;;N;;;;; -A4F8;LISU LETTER TONE MYA TI;Lm;0;L;;;;;N;;;;; -A4F9;LISU LETTER TONE NA PO;Lm;0;L;;;;;N;;;;; -A4FA;LISU LETTER TONE MYA CYA;Lm;0;L;;;;;N;;;;; -A4FB;LISU LETTER TONE MYA BO;Lm;0;L;;;;;N;;;;; -A4FC;LISU LETTER TONE MYA NA;Lm;0;L;;;;;N;;;;; -A4FD;LISU LETTER TONE MYA JEU;Lm;0;L;;;;;N;;;;; -A4FE;LISU PUNCTUATION COMMA;Po;0;L;;;;;N;;;;; -A4FF;LISU PUNCTUATION FULL STOP;Po;0;L;;;;;N;;;;; -A500;VAI SYLLABLE EE;Lo;0;L;;;;;N;;;;; -A501;VAI SYLLABLE EEN;Lo;0;L;;;;;N;;;;; -A502;VAI SYLLABLE HEE;Lo;0;L;;;;;N;;;;; -A503;VAI SYLLABLE WEE;Lo;0;L;;;;;N;;;;; -A504;VAI SYLLABLE WEEN;Lo;0;L;;;;;N;;;;; -A505;VAI SYLLABLE PEE;Lo;0;L;;;;;N;;;;; -A506;VAI SYLLABLE BHEE;Lo;0;L;;;;;N;;;;; -A507;VAI SYLLABLE BEE;Lo;0;L;;;;;N;;;;; -A508;VAI SYLLABLE MBEE;Lo;0;L;;;;;N;;;;; -A509;VAI SYLLABLE KPEE;Lo;0;L;;;;;N;;;;; -A50A;VAI SYLLABLE MGBEE;Lo;0;L;;;;;N;;;;; -A50B;VAI SYLLABLE GBEE;Lo;0;L;;;;;N;;;;; -A50C;VAI SYLLABLE FEE;Lo;0;L;;;;;N;;;;; -A50D;VAI SYLLABLE VEE;Lo;0;L;;;;;N;;;;; -A50E;VAI SYLLABLE TEE;Lo;0;L;;;;;N;;;;; -A50F;VAI SYLLABLE THEE;Lo;0;L;;;;;N;;;;; -A510;VAI SYLLABLE DHEE;Lo;0;L;;;;;N;;;;; -A511;VAI SYLLABLE DHHEE;Lo;0;L;;;;;N;;;;; -A512;VAI SYLLABLE LEE;Lo;0;L;;;;;N;;;;; -A513;VAI SYLLABLE REE;Lo;0;L;;;;;N;;;;; -A514;VAI SYLLABLE DEE;Lo;0;L;;;;;N;;;;; -A515;VAI SYLLABLE NDEE;Lo;0;L;;;;;N;;;;; -A516;VAI SYLLABLE SEE;Lo;0;L;;;;;N;;;;; -A517;VAI SYLLABLE SHEE;Lo;0;L;;;;;N;;;;; -A518;VAI SYLLABLE ZEE;Lo;0;L;;;;;N;;;;; -A519;VAI SYLLABLE ZHEE;Lo;0;L;;;;;N;;;;; -A51A;VAI SYLLABLE CEE;Lo;0;L;;;;;N;;;;; -A51B;VAI SYLLABLE JEE;Lo;0;L;;;;;N;;;;; -A51C;VAI SYLLABLE NJEE;Lo;0;L;;;;;N;;;;; -A51D;VAI SYLLABLE YEE;Lo;0;L;;;;;N;;;;; -A51E;VAI SYLLABLE KEE;Lo;0;L;;;;;N;;;;; -A51F;VAI SYLLABLE NGGEE;Lo;0;L;;;;;N;;;;; -A520;VAI SYLLABLE GEE;Lo;0;L;;;;;N;;;;; -A521;VAI SYLLABLE MEE;Lo;0;L;;;;;N;;;;; -A522;VAI SYLLABLE NEE;Lo;0;L;;;;;N;;;;; -A523;VAI SYLLABLE NYEE;Lo;0;L;;;;;N;;;;; -A524;VAI SYLLABLE I;Lo;0;L;;;;;N;;;;; -A525;VAI SYLLABLE IN;Lo;0;L;;;;;N;;;;; -A526;VAI SYLLABLE HI;Lo;0;L;;;;;N;;;;; -A527;VAI SYLLABLE HIN;Lo;0;L;;;;;N;;;;; -A528;VAI SYLLABLE WI;Lo;0;L;;;;;N;;;;; -A529;VAI SYLLABLE WIN;Lo;0;L;;;;;N;;;;; -A52A;VAI SYLLABLE PI;Lo;0;L;;;;;N;;;;; -A52B;VAI SYLLABLE BHI;Lo;0;L;;;;;N;;;;; -A52C;VAI SYLLABLE BI;Lo;0;L;;;;;N;;;;; -A52D;VAI SYLLABLE MBI;Lo;0;L;;;;;N;;;;; -A52E;VAI SYLLABLE KPI;Lo;0;L;;;;;N;;;;; -A52F;VAI SYLLABLE MGBI;Lo;0;L;;;;;N;;;;; -A530;VAI SYLLABLE GBI;Lo;0;L;;;;;N;;;;; -A531;VAI SYLLABLE FI;Lo;0;L;;;;;N;;;;; -A532;VAI SYLLABLE VI;Lo;0;L;;;;;N;;;;; -A533;VAI SYLLABLE TI;Lo;0;L;;;;;N;;;;; -A534;VAI SYLLABLE THI;Lo;0;L;;;;;N;;;;; -A535;VAI SYLLABLE DHI;Lo;0;L;;;;;N;;;;; -A536;VAI SYLLABLE DHHI;Lo;0;L;;;;;N;;;;; -A537;VAI SYLLABLE LI;Lo;0;L;;;;;N;;;;; -A538;VAI SYLLABLE RI;Lo;0;L;;;;;N;;;;; -A539;VAI SYLLABLE DI;Lo;0;L;;;;;N;;;;; -A53A;VAI SYLLABLE NDI;Lo;0;L;;;;;N;;;;; -A53B;VAI SYLLABLE SI;Lo;0;L;;;;;N;;;;; -A53C;VAI SYLLABLE SHI;Lo;0;L;;;;;N;;;;; -A53D;VAI SYLLABLE ZI;Lo;0;L;;;;;N;;;;; -A53E;VAI SYLLABLE ZHI;Lo;0;L;;;;;N;;;;; -A53F;VAI SYLLABLE CI;Lo;0;L;;;;;N;;;;; -A540;VAI SYLLABLE JI;Lo;0;L;;;;;N;;;;; -A541;VAI SYLLABLE NJI;Lo;0;L;;;;;N;;;;; -A542;VAI SYLLABLE YI;Lo;0;L;;;;;N;;;;; -A543;VAI SYLLABLE KI;Lo;0;L;;;;;N;;;;; -A544;VAI SYLLABLE NGGI;Lo;0;L;;;;;N;;;;; -A545;VAI SYLLABLE GI;Lo;0;L;;;;;N;;;;; -A546;VAI SYLLABLE MI;Lo;0;L;;;;;N;;;;; -A547;VAI SYLLABLE NI;Lo;0;L;;;;;N;;;;; -A548;VAI SYLLABLE NYI;Lo;0;L;;;;;N;;;;; -A549;VAI SYLLABLE A;Lo;0;L;;;;;N;;;;; -A54A;VAI SYLLABLE AN;Lo;0;L;;;;;N;;;;; -A54B;VAI SYLLABLE NGAN;Lo;0;L;;;;;N;;;;; -A54C;VAI SYLLABLE HA;Lo;0;L;;;;;N;;;;; -A54D;VAI SYLLABLE HAN;Lo;0;L;;;;;N;;;;; -A54E;VAI SYLLABLE WA;Lo;0;L;;;;;N;;;;; -A54F;VAI SYLLABLE WAN;Lo;0;L;;;;;N;;;;; -A550;VAI SYLLABLE PA;Lo;0;L;;;;;N;;;;; -A551;VAI SYLLABLE BHA;Lo;0;L;;;;;N;;;;; -A552;VAI SYLLABLE BA;Lo;0;L;;;;;N;;;;; -A553;VAI SYLLABLE MBA;Lo;0;L;;;;;N;;;;; -A554;VAI SYLLABLE KPA;Lo;0;L;;;;;N;;;;; -A555;VAI SYLLABLE KPAN;Lo;0;L;;;;;N;;;;; -A556;VAI SYLLABLE MGBA;Lo;0;L;;;;;N;;;;; -A557;VAI SYLLABLE GBA;Lo;0;L;;;;;N;;;;; -A558;VAI SYLLABLE FA;Lo;0;L;;;;;N;;;;; -A559;VAI SYLLABLE VA;Lo;0;L;;;;;N;;;;; -A55A;VAI SYLLABLE TA;Lo;0;L;;;;;N;;;;; -A55B;VAI SYLLABLE THA;Lo;0;L;;;;;N;;;;; -A55C;VAI SYLLABLE DHA;Lo;0;L;;;;;N;;;;; -A55D;VAI SYLLABLE DHHA;Lo;0;L;;;;;N;;;;; -A55E;VAI SYLLABLE LA;Lo;0;L;;;;;N;;;;; -A55F;VAI SYLLABLE RA;Lo;0;L;;;;;N;;;;; -A560;VAI SYLLABLE DA;Lo;0;L;;;;;N;;;;; -A561;VAI SYLLABLE NDA;Lo;0;L;;;;;N;;;;; -A562;VAI SYLLABLE SA;Lo;0;L;;;;;N;;;;; -A563;VAI SYLLABLE SHA;Lo;0;L;;;;;N;;;;; -A564;VAI SYLLABLE ZA;Lo;0;L;;;;;N;;;;; -A565;VAI SYLLABLE ZHA;Lo;0;L;;;;;N;;;;; -A566;VAI SYLLABLE CA;Lo;0;L;;;;;N;;;;; -A567;VAI SYLLABLE JA;Lo;0;L;;;;;N;;;;; -A568;VAI SYLLABLE NJA;Lo;0;L;;;;;N;;;;; -A569;VAI SYLLABLE YA;Lo;0;L;;;;;N;;;;; -A56A;VAI SYLLABLE KA;Lo;0;L;;;;;N;;;;; -A56B;VAI SYLLABLE KAN;Lo;0;L;;;;;N;;;;; -A56C;VAI SYLLABLE NGGA;Lo;0;L;;;;;N;;;;; -A56D;VAI SYLLABLE GA;Lo;0;L;;;;;N;;;;; -A56E;VAI SYLLABLE MA;Lo;0;L;;;;;N;;;;; -A56F;VAI SYLLABLE NA;Lo;0;L;;;;;N;;;;; -A570;VAI SYLLABLE NYA;Lo;0;L;;;;;N;;;;; -A571;VAI SYLLABLE OO;Lo;0;L;;;;;N;;;;; -A572;VAI SYLLABLE OON;Lo;0;L;;;;;N;;;;; -A573;VAI SYLLABLE HOO;Lo;0;L;;;;;N;;;;; -A574;VAI SYLLABLE WOO;Lo;0;L;;;;;N;;;;; -A575;VAI SYLLABLE WOON;Lo;0;L;;;;;N;;;;; -A576;VAI SYLLABLE POO;Lo;0;L;;;;;N;;;;; -A577;VAI SYLLABLE BHOO;Lo;0;L;;;;;N;;;;; -A578;VAI SYLLABLE BOO;Lo;0;L;;;;;N;;;;; -A579;VAI SYLLABLE MBOO;Lo;0;L;;;;;N;;;;; -A57A;VAI SYLLABLE KPOO;Lo;0;L;;;;;N;;;;; -A57B;VAI SYLLABLE MGBOO;Lo;0;L;;;;;N;;;;; -A57C;VAI SYLLABLE GBOO;Lo;0;L;;;;;N;;;;; -A57D;VAI SYLLABLE FOO;Lo;0;L;;;;;N;;;;; -A57E;VAI SYLLABLE VOO;Lo;0;L;;;;;N;;;;; -A57F;VAI SYLLABLE TOO;Lo;0;L;;;;;N;;;;; -A580;VAI SYLLABLE THOO;Lo;0;L;;;;;N;;;;; -A581;VAI SYLLABLE DHOO;Lo;0;L;;;;;N;;;;; -A582;VAI SYLLABLE DHHOO;Lo;0;L;;;;;N;;;;; -A583;VAI SYLLABLE LOO;Lo;0;L;;;;;N;;;;; -A584;VAI SYLLABLE ROO;Lo;0;L;;;;;N;;;;; -A585;VAI SYLLABLE DOO;Lo;0;L;;;;;N;;;;; -A586;VAI SYLLABLE NDOO;Lo;0;L;;;;;N;;;;; -A587;VAI SYLLABLE SOO;Lo;0;L;;;;;N;;;;; -A588;VAI SYLLABLE SHOO;Lo;0;L;;;;;N;;;;; -A589;VAI SYLLABLE ZOO;Lo;0;L;;;;;N;;;;; -A58A;VAI SYLLABLE ZHOO;Lo;0;L;;;;;N;;;;; -A58B;VAI SYLLABLE COO;Lo;0;L;;;;;N;;;;; -A58C;VAI SYLLABLE JOO;Lo;0;L;;;;;N;;;;; -A58D;VAI SYLLABLE NJOO;Lo;0;L;;;;;N;;;;; -A58E;VAI SYLLABLE YOO;Lo;0;L;;;;;N;;;;; -A58F;VAI SYLLABLE KOO;Lo;0;L;;;;;N;;;;; -A590;VAI SYLLABLE NGGOO;Lo;0;L;;;;;N;;;;; -A591;VAI SYLLABLE GOO;Lo;0;L;;;;;N;;;;; -A592;VAI SYLLABLE MOO;Lo;0;L;;;;;N;;;;; -A593;VAI SYLLABLE NOO;Lo;0;L;;;;;N;;;;; -A594;VAI SYLLABLE NYOO;Lo;0;L;;;;;N;;;;; -A595;VAI SYLLABLE U;Lo;0;L;;;;;N;;;;; -A596;VAI SYLLABLE UN;Lo;0;L;;;;;N;;;;; -A597;VAI SYLLABLE HU;Lo;0;L;;;;;N;;;;; -A598;VAI SYLLABLE HUN;Lo;0;L;;;;;N;;;;; -A599;VAI SYLLABLE WU;Lo;0;L;;;;;N;;;;; -A59A;VAI SYLLABLE WUN;Lo;0;L;;;;;N;;;;; -A59B;VAI SYLLABLE PU;Lo;0;L;;;;;N;;;;; -A59C;VAI SYLLABLE BHU;Lo;0;L;;;;;N;;;;; -A59D;VAI SYLLABLE BU;Lo;0;L;;;;;N;;;;; -A59E;VAI SYLLABLE MBU;Lo;0;L;;;;;N;;;;; -A59F;VAI SYLLABLE KPU;Lo;0;L;;;;;N;;;;; -A5A0;VAI SYLLABLE MGBU;Lo;0;L;;;;;N;;;;; -A5A1;VAI SYLLABLE GBU;Lo;0;L;;;;;N;;;;; -A5A2;VAI SYLLABLE FU;Lo;0;L;;;;;N;;;;; -A5A3;VAI SYLLABLE VU;Lo;0;L;;;;;N;;;;; -A5A4;VAI SYLLABLE TU;Lo;0;L;;;;;N;;;;; -A5A5;VAI SYLLABLE THU;Lo;0;L;;;;;N;;;;; -A5A6;VAI SYLLABLE DHU;Lo;0;L;;;;;N;;;;; -A5A7;VAI SYLLABLE DHHU;Lo;0;L;;;;;N;;;;; -A5A8;VAI SYLLABLE LU;Lo;0;L;;;;;N;;;;; -A5A9;VAI SYLLABLE RU;Lo;0;L;;;;;N;;;;; -A5AA;VAI SYLLABLE DU;Lo;0;L;;;;;N;;;;; -A5AB;VAI SYLLABLE NDU;Lo;0;L;;;;;N;;;;; -A5AC;VAI SYLLABLE SU;Lo;0;L;;;;;N;;;;; -A5AD;VAI SYLLABLE SHU;Lo;0;L;;;;;N;;;;; -A5AE;VAI SYLLABLE ZU;Lo;0;L;;;;;N;;;;; -A5AF;VAI SYLLABLE ZHU;Lo;0;L;;;;;N;;;;; -A5B0;VAI SYLLABLE CU;Lo;0;L;;;;;N;;;;; -A5B1;VAI SYLLABLE JU;Lo;0;L;;;;;N;;;;; -A5B2;VAI SYLLABLE NJU;Lo;0;L;;;;;N;;;;; -A5B3;VAI SYLLABLE YU;Lo;0;L;;;;;N;;;;; -A5B4;VAI SYLLABLE KU;Lo;0;L;;;;;N;;;;; -A5B5;VAI SYLLABLE NGGU;Lo;0;L;;;;;N;;;;; -A5B6;VAI SYLLABLE GU;Lo;0;L;;;;;N;;;;; -A5B7;VAI SYLLABLE MU;Lo;0;L;;;;;N;;;;; -A5B8;VAI SYLLABLE NU;Lo;0;L;;;;;N;;;;; -A5B9;VAI SYLLABLE NYU;Lo;0;L;;;;;N;;;;; -A5BA;VAI SYLLABLE O;Lo;0;L;;;;;N;;;;; -A5BB;VAI SYLLABLE ON;Lo;0;L;;;;;N;;;;; -A5BC;VAI SYLLABLE NGON;Lo;0;L;;;;;N;;;;; -A5BD;VAI SYLLABLE HO;Lo;0;L;;;;;N;;;;; -A5BE;VAI SYLLABLE HON;Lo;0;L;;;;;N;;;;; -A5BF;VAI SYLLABLE WO;Lo;0;L;;;;;N;;;;; -A5C0;VAI SYLLABLE WON;Lo;0;L;;;;;N;;;;; -A5C1;VAI SYLLABLE PO;Lo;0;L;;;;;N;;;;; -A5C2;VAI SYLLABLE BHO;Lo;0;L;;;;;N;;;;; -A5C3;VAI SYLLABLE BO;Lo;0;L;;;;;N;;;;; -A5C4;VAI SYLLABLE MBO;Lo;0;L;;;;;N;;;;; -A5C5;VAI SYLLABLE KPO;Lo;0;L;;;;;N;;;;; -A5C6;VAI SYLLABLE MGBO;Lo;0;L;;;;;N;;;;; -A5C7;VAI SYLLABLE GBO;Lo;0;L;;;;;N;;;;; -A5C8;VAI SYLLABLE GBON;Lo;0;L;;;;;N;;;;; -A5C9;VAI SYLLABLE FO;Lo;0;L;;;;;N;;;;; -A5CA;VAI SYLLABLE VO;Lo;0;L;;;;;N;;;;; -A5CB;VAI SYLLABLE TO;Lo;0;L;;;;;N;;;;; -A5CC;VAI SYLLABLE THO;Lo;0;L;;;;;N;;;;; -A5CD;VAI SYLLABLE DHO;Lo;0;L;;;;;N;;;;; -A5CE;VAI SYLLABLE DHHO;Lo;0;L;;;;;N;;;;; -A5CF;VAI SYLLABLE LO;Lo;0;L;;;;;N;;;;; -A5D0;VAI SYLLABLE RO;Lo;0;L;;;;;N;;;;; -A5D1;VAI SYLLABLE DO;Lo;0;L;;;;;N;;;;; -A5D2;VAI SYLLABLE NDO;Lo;0;L;;;;;N;;;;; -A5D3;VAI SYLLABLE SO;Lo;0;L;;;;;N;;;;; -A5D4;VAI SYLLABLE SHO;Lo;0;L;;;;;N;;;;; -A5D5;VAI SYLLABLE ZO;Lo;0;L;;;;;N;;;;; -A5D6;VAI SYLLABLE ZHO;Lo;0;L;;;;;N;;;;; -A5D7;VAI SYLLABLE CO;Lo;0;L;;;;;N;;;;; -A5D8;VAI SYLLABLE JO;Lo;0;L;;;;;N;;;;; -A5D9;VAI SYLLABLE NJO;Lo;0;L;;;;;N;;;;; -A5DA;VAI SYLLABLE YO;Lo;0;L;;;;;N;;;;; -A5DB;VAI SYLLABLE KO;Lo;0;L;;;;;N;;;;; -A5DC;VAI SYLLABLE NGGO;Lo;0;L;;;;;N;;;;; -A5DD;VAI SYLLABLE GO;Lo;0;L;;;;;N;;;;; -A5DE;VAI SYLLABLE MO;Lo;0;L;;;;;N;;;;; -A5DF;VAI SYLLABLE NO;Lo;0;L;;;;;N;;;;; -A5E0;VAI SYLLABLE NYO;Lo;0;L;;;;;N;;;;; -A5E1;VAI SYLLABLE E;Lo;0;L;;;;;N;;;;; -A5E2;VAI SYLLABLE EN;Lo;0;L;;;;;N;;;;; -A5E3;VAI SYLLABLE NGEN;Lo;0;L;;;;;N;;;;; -A5E4;VAI SYLLABLE HE;Lo;0;L;;;;;N;;;;; -A5E5;VAI SYLLABLE HEN;Lo;0;L;;;;;N;;;;; -A5E6;VAI SYLLABLE WE;Lo;0;L;;;;;N;;;;; -A5E7;VAI SYLLABLE WEN;Lo;0;L;;;;;N;;;;; -A5E8;VAI SYLLABLE PE;Lo;0;L;;;;;N;;;;; -A5E9;VAI SYLLABLE BHE;Lo;0;L;;;;;N;;;;; -A5EA;VAI SYLLABLE BE;Lo;0;L;;;;;N;;;;; -A5EB;VAI SYLLABLE MBE;Lo;0;L;;;;;N;;;;; -A5EC;VAI SYLLABLE KPE;Lo;0;L;;;;;N;;;;; -A5ED;VAI SYLLABLE KPEN;Lo;0;L;;;;;N;;;;; -A5EE;VAI SYLLABLE MGBE;Lo;0;L;;;;;N;;;;; -A5EF;VAI SYLLABLE GBE;Lo;0;L;;;;;N;;;;; -A5F0;VAI SYLLABLE GBEN;Lo;0;L;;;;;N;;;;; -A5F1;VAI SYLLABLE FE;Lo;0;L;;;;;N;;;;; -A5F2;VAI SYLLABLE VE;Lo;0;L;;;;;N;;;;; -A5F3;VAI SYLLABLE TE;Lo;0;L;;;;;N;;;;; -A5F4;VAI SYLLABLE THE;Lo;0;L;;;;;N;;;;; -A5F5;VAI SYLLABLE DHE;Lo;0;L;;;;;N;;;;; -A5F6;VAI SYLLABLE DHHE;Lo;0;L;;;;;N;;;;; -A5F7;VAI SYLLABLE LE;Lo;0;L;;;;;N;;;;; -A5F8;VAI SYLLABLE RE;Lo;0;L;;;;;N;;;;; -A5F9;VAI SYLLABLE DE;Lo;0;L;;;;;N;;;;; -A5FA;VAI SYLLABLE NDE;Lo;0;L;;;;;N;;;;; -A5FB;VAI SYLLABLE SE;Lo;0;L;;;;;N;;;;; -A5FC;VAI SYLLABLE SHE;Lo;0;L;;;;;N;;;;; -A5FD;VAI SYLLABLE ZE;Lo;0;L;;;;;N;;;;; -A5FE;VAI SYLLABLE ZHE;Lo;0;L;;;;;N;;;;; -A5FF;VAI SYLLABLE CE;Lo;0;L;;;;;N;;;;; -A600;VAI SYLLABLE JE;Lo;0;L;;;;;N;;;;; -A601;VAI SYLLABLE NJE;Lo;0;L;;;;;N;;;;; -A602;VAI SYLLABLE YE;Lo;0;L;;;;;N;;;;; -A603;VAI SYLLABLE KE;Lo;0;L;;;;;N;;;;; -A604;VAI SYLLABLE NGGE;Lo;0;L;;;;;N;;;;; -A605;VAI SYLLABLE NGGEN;Lo;0;L;;;;;N;;;;; -A606;VAI SYLLABLE GE;Lo;0;L;;;;;N;;;;; -A607;VAI SYLLABLE GEN;Lo;0;L;;;;;N;;;;; -A608;VAI SYLLABLE ME;Lo;0;L;;;;;N;;;;; -A609;VAI SYLLABLE NE;Lo;0;L;;;;;N;;;;; -A60A;VAI SYLLABLE NYE;Lo;0;L;;;;;N;;;;; -A60B;VAI SYLLABLE NG;Lo;0;L;;;;;N;;;;; -A60C;VAI SYLLABLE LENGTHENER;Lm;0;L;;;;;N;;;;; -A60D;VAI COMMA;Po;0;ON;;;;;N;;;;; -A60E;VAI FULL STOP;Po;0;ON;;;;;N;;;;; -A60F;VAI QUESTION MARK;Po;0;ON;;;;;N;;;;; -A610;VAI SYLLABLE NDOLE FA;Lo;0;L;;;;;N;;;;; -A611;VAI SYLLABLE NDOLE KA;Lo;0;L;;;;;N;;;;; -A612;VAI SYLLABLE NDOLE SOO;Lo;0;L;;;;;N;;;;; -A613;VAI SYMBOL FEENG;Lo;0;L;;;;;N;;;;; -A614;VAI SYMBOL KEENG;Lo;0;L;;;;;N;;;;; -A615;VAI SYMBOL TING;Lo;0;L;;;;;N;;;;; -A616;VAI SYMBOL NII;Lo;0;L;;;;;N;;;;; -A617;VAI SYMBOL BANG;Lo;0;L;;;;;N;;;;; -A618;VAI SYMBOL FAA;Lo;0;L;;;;;N;;;;; -A619;VAI SYMBOL TAA;Lo;0;L;;;;;N;;;;; -A61A;VAI SYMBOL DANG;Lo;0;L;;;;;N;;;;; -A61B;VAI SYMBOL DOONG;Lo;0;L;;;;;N;;;;; -A61C;VAI SYMBOL KUNG;Lo;0;L;;;;;N;;;;; -A61D;VAI SYMBOL TONG;Lo;0;L;;;;;N;;;;; -A61E;VAI SYMBOL DO-O;Lo;0;L;;;;;N;;;;; -A61F;VAI SYMBOL JONG;Lo;0;L;;;;;N;;;;; -A620;VAI DIGIT ZERO;Nd;0;L;;0;0;0;N;;;;; -A621;VAI DIGIT ONE;Nd;0;L;;1;1;1;N;;;;; -A622;VAI DIGIT TWO;Nd;0;L;;2;2;2;N;;;;; -A623;VAI DIGIT THREE;Nd;0;L;;3;3;3;N;;;;; -A624;VAI DIGIT FOUR;Nd;0;L;;4;4;4;N;;;;; -A625;VAI DIGIT FIVE;Nd;0;L;;5;5;5;N;;;;; -A626;VAI DIGIT SIX;Nd;0;L;;6;6;6;N;;;;; -A627;VAI DIGIT SEVEN;Nd;0;L;;7;7;7;N;;;;; -A628;VAI DIGIT EIGHT;Nd;0;L;;8;8;8;N;;;;; -A629;VAI DIGIT NINE;Nd;0;L;;9;9;9;N;;;;; -A62A;VAI SYLLABLE NDOLE MA;Lo;0;L;;;;;N;;;;; -A62B;VAI SYLLABLE NDOLE DO;Lo;0;L;;;;;N;;;;; -A640;CYRILLIC CAPITAL LETTER ZEMLYA;Lu;0;L;;;;;N;;;;A641; -A641;CYRILLIC SMALL LETTER ZEMLYA;Ll;0;L;;;;;N;;;A640;;A640 -A642;CYRILLIC CAPITAL LETTER DZELO;Lu;0;L;;;;;N;;;;A643; -A643;CYRILLIC SMALL LETTER DZELO;Ll;0;L;;;;;N;;;A642;;A642 -A644;CYRILLIC CAPITAL LETTER REVERSED DZE;Lu;0;L;;;;;N;;;;A645; -A645;CYRILLIC SMALL LETTER REVERSED DZE;Ll;0;L;;;;;N;;;A644;;A644 -A646;CYRILLIC CAPITAL LETTER IOTA;Lu;0;L;;;;;N;;;;A647; -A647;CYRILLIC SMALL LETTER IOTA;Ll;0;L;;;;;N;;;A646;;A646 -A648;CYRILLIC CAPITAL LETTER DJERV;Lu;0;L;;;;;N;;;;A649; -A649;CYRILLIC SMALL LETTER DJERV;Ll;0;L;;;;;N;;;A648;;A648 -A64A;CYRILLIC CAPITAL LETTER MONOGRAPH UK;Lu;0;L;;;;;N;;;;A64B; -A64B;CYRILLIC SMALL LETTER MONOGRAPH UK;Ll;0;L;;;;;N;;;A64A;;A64A -A64C;CYRILLIC CAPITAL LETTER BROAD OMEGA;Lu;0;L;;;;;N;;;;A64D; -A64D;CYRILLIC SMALL LETTER BROAD OMEGA;Ll;0;L;;;;;N;;;A64C;;A64C -A64E;CYRILLIC CAPITAL LETTER NEUTRAL YER;Lu;0;L;;;;;N;;;;A64F; -A64F;CYRILLIC SMALL LETTER NEUTRAL YER;Ll;0;L;;;;;N;;;A64E;;A64E -A650;CYRILLIC CAPITAL LETTER YERU WITH BACK YER;Lu;0;L;;;;;N;;;;A651; -A651;CYRILLIC SMALL LETTER YERU WITH BACK YER;Ll;0;L;;;;;N;;;A650;;A650 -A652;CYRILLIC CAPITAL LETTER IOTIFIED YAT;Lu;0;L;;;;;N;;;;A653; -A653;CYRILLIC SMALL LETTER IOTIFIED YAT;Ll;0;L;;;;;N;;;A652;;A652 -A654;CYRILLIC CAPITAL LETTER REVERSED YU;Lu;0;L;;;;;N;;;;A655; -A655;CYRILLIC SMALL LETTER REVERSED YU;Ll;0;L;;;;;N;;;A654;;A654 -A656;CYRILLIC CAPITAL LETTER IOTIFIED A;Lu;0;L;;;;;N;;;;A657; -A657;CYRILLIC SMALL LETTER IOTIFIED A;Ll;0;L;;;;;N;;;A656;;A656 -A658;CYRILLIC CAPITAL LETTER CLOSED LITTLE YUS;Lu;0;L;;;;;N;;;;A659; -A659;CYRILLIC SMALL LETTER CLOSED LITTLE YUS;Ll;0;L;;;;;N;;;A658;;A658 -A65A;CYRILLIC CAPITAL LETTER BLENDED YUS;Lu;0;L;;;;;N;;;;A65B; -A65B;CYRILLIC SMALL LETTER BLENDED YUS;Ll;0;L;;;;;N;;;A65A;;A65A -A65C;CYRILLIC CAPITAL LETTER IOTIFIED CLOSED LITTLE YUS;Lu;0;L;;;;;N;;;;A65D; -A65D;CYRILLIC SMALL LETTER IOTIFIED CLOSED LITTLE YUS;Ll;0;L;;;;;N;;;A65C;;A65C -A65E;CYRILLIC CAPITAL LETTER YN;Lu;0;L;;;;;N;;;;A65F; -A65F;CYRILLIC SMALL LETTER YN;Ll;0;L;;;;;N;;;A65E;;A65E -A660;CYRILLIC CAPITAL LETTER REVERSED TSE;Lu;0;L;;;;;N;;;;A661; -A661;CYRILLIC SMALL LETTER REVERSED TSE;Ll;0;L;;;;;N;;;A660;;A660 -A662;CYRILLIC CAPITAL LETTER SOFT DE;Lu;0;L;;;;;N;;;;A663; -A663;CYRILLIC SMALL LETTER SOFT DE;Ll;0;L;;;;;N;;;A662;;A662 -A664;CYRILLIC CAPITAL LETTER SOFT EL;Lu;0;L;;;;;N;;;;A665; -A665;CYRILLIC SMALL LETTER SOFT EL;Ll;0;L;;;;;N;;;A664;;A664 -A666;CYRILLIC CAPITAL LETTER SOFT EM;Lu;0;L;;;;;N;;;;A667; -A667;CYRILLIC SMALL LETTER SOFT EM;Ll;0;L;;;;;N;;;A666;;A666 -A668;CYRILLIC CAPITAL LETTER MONOCULAR O;Lu;0;L;;;;;N;;;;A669; -A669;CYRILLIC SMALL LETTER MONOCULAR O;Ll;0;L;;;;;N;;;A668;;A668 -A66A;CYRILLIC CAPITAL LETTER BINOCULAR O;Lu;0;L;;;;;N;;;;A66B; -A66B;CYRILLIC SMALL LETTER BINOCULAR O;Ll;0;L;;;;;N;;;A66A;;A66A -A66C;CYRILLIC CAPITAL LETTER DOUBLE MONOCULAR O;Lu;0;L;;;;;N;;;;A66D; -A66D;CYRILLIC SMALL LETTER DOUBLE MONOCULAR O;Ll;0;L;;;;;N;;;A66C;;A66C -A66E;CYRILLIC LETTER MULTIOCULAR O;Lo;0;L;;;;;N;;;;; -A66F;COMBINING CYRILLIC VZMET;Mn;230;NSM;;;;;N;;;;; -A670;COMBINING CYRILLIC TEN MILLIONS SIGN;Me;0;NSM;;;;;N;;;;; -A671;COMBINING CYRILLIC HUNDRED MILLIONS SIGN;Me;0;NSM;;;;;N;;;;; -A672;COMBINING CYRILLIC THOUSAND MILLIONS SIGN;Me;0;NSM;;;;;N;;;;; -A673;SLAVONIC ASTERISK;Po;0;ON;;;;;N;;;;; -A67C;COMBINING CYRILLIC KAVYKA;Mn;230;NSM;;;;;N;;;;; -A67D;COMBINING CYRILLIC PAYEROK;Mn;230;NSM;;;;;N;;;;; -A67E;CYRILLIC KAVYKA;Po;0;ON;;;;;N;;;;; -A67F;CYRILLIC PAYEROK;Lm;0;ON;;;;;N;;;;; -A680;CYRILLIC CAPITAL LETTER DWE;Lu;0;L;;;;;N;;;;A681; -A681;CYRILLIC SMALL LETTER DWE;Ll;0;L;;;;;N;;;A680;;A680 -A682;CYRILLIC CAPITAL LETTER DZWE;Lu;0;L;;;;;N;;;;A683; -A683;CYRILLIC SMALL LETTER DZWE;Ll;0;L;;;;;N;;;A682;;A682 -A684;CYRILLIC CAPITAL LETTER ZHWE;Lu;0;L;;;;;N;;;;A685; -A685;CYRILLIC SMALL LETTER ZHWE;Ll;0;L;;;;;N;;;A684;;A684 -A686;CYRILLIC CAPITAL LETTER CCHE;Lu;0;L;;;;;N;;;;A687; -A687;CYRILLIC SMALL LETTER CCHE;Ll;0;L;;;;;N;;;A686;;A686 -A688;CYRILLIC CAPITAL LETTER DZZE;Lu;0;L;;;;;N;;;;A689; -A689;CYRILLIC SMALL LETTER DZZE;Ll;0;L;;;;;N;;;A688;;A688 -A68A;CYRILLIC CAPITAL LETTER TE WITH MIDDLE HOOK;Lu;0;L;;;;;N;;;;A68B; -A68B;CYRILLIC SMALL LETTER TE WITH MIDDLE HOOK;Ll;0;L;;;;;N;;;A68A;;A68A -A68C;CYRILLIC CAPITAL LETTER TWE;Lu;0;L;;;;;N;;;;A68D; -A68D;CYRILLIC SMALL LETTER TWE;Ll;0;L;;;;;N;;;A68C;;A68C -A68E;CYRILLIC CAPITAL LETTER TSWE;Lu;0;L;;;;;N;;;;A68F; -A68F;CYRILLIC SMALL LETTER TSWE;Ll;0;L;;;;;N;;;A68E;;A68E -A690;CYRILLIC CAPITAL LETTER TSSE;Lu;0;L;;;;;N;;;;A691; -A691;CYRILLIC SMALL LETTER TSSE;Ll;0;L;;;;;N;;;A690;;A690 -A692;CYRILLIC CAPITAL LETTER TCHE;Lu;0;L;;;;;N;;;;A693; -A693;CYRILLIC SMALL LETTER TCHE;Ll;0;L;;;;;N;;;A692;;A692 -A694;CYRILLIC CAPITAL LETTER HWE;Lu;0;L;;;;;N;;;;A695; -A695;CYRILLIC SMALL LETTER HWE;Ll;0;L;;;;;N;;;A694;;A694 -A696;CYRILLIC CAPITAL LETTER SHWE;Lu;0;L;;;;;N;;;;A697; -A697;CYRILLIC SMALL LETTER SHWE;Ll;0;L;;;;;N;;;A696;;A696 -A6A0;BAMUM LETTER A;Lo;0;L;;;;;N;;;;; -A6A1;BAMUM LETTER KA;Lo;0;L;;;;;N;;;;; -A6A2;BAMUM LETTER U;Lo;0;L;;;;;N;;;;; -A6A3;BAMUM LETTER KU;Lo;0;L;;;;;N;;;;; -A6A4;BAMUM LETTER EE;Lo;0;L;;;;;N;;;;; -A6A5;BAMUM LETTER REE;Lo;0;L;;;;;N;;;;; -A6A6;BAMUM LETTER TAE;Lo;0;L;;;;;N;;;;; -A6A7;BAMUM LETTER O;Lo;0;L;;;;;N;;;;; -A6A8;BAMUM LETTER NYI;Lo;0;L;;;;;N;;;;; -A6A9;BAMUM LETTER I;Lo;0;L;;;;;N;;;;; -A6AA;BAMUM LETTER LA;Lo;0;L;;;;;N;;;;; -A6AB;BAMUM LETTER PA;Lo;0;L;;;;;N;;;;; -A6AC;BAMUM LETTER RII;Lo;0;L;;;;;N;;;;; -A6AD;BAMUM LETTER RIEE;Lo;0;L;;;;;N;;;;; -A6AE;BAMUM LETTER LEEEE;Lo;0;L;;;;;N;;;;; -A6AF;BAMUM LETTER MEEEE;Lo;0;L;;;;;N;;;;; -A6B0;BAMUM LETTER TAA;Lo;0;L;;;;;N;;;;; -A6B1;BAMUM LETTER NDAA;Lo;0;L;;;;;N;;;;; -A6B2;BAMUM LETTER NJAEM;Lo;0;L;;;;;N;;;;; -A6B3;BAMUM LETTER M;Lo;0;L;;;;;N;;;;; -A6B4;BAMUM LETTER SUU;Lo;0;L;;;;;N;;;;; -A6B5;BAMUM LETTER MU;Lo;0;L;;;;;N;;;;; -A6B6;BAMUM LETTER SHII;Lo;0;L;;;;;N;;;;; -A6B7;BAMUM LETTER SI;Lo;0;L;;;;;N;;;;; -A6B8;BAMUM LETTER SHEUX;Lo;0;L;;;;;N;;;;; -A6B9;BAMUM LETTER SEUX;Lo;0;L;;;;;N;;;;; -A6BA;BAMUM LETTER KYEE;Lo;0;L;;;;;N;;;;; -A6BB;BAMUM LETTER KET;Lo;0;L;;;;;N;;;;; -A6BC;BAMUM LETTER NUAE;Lo;0;L;;;;;N;;;;; -A6BD;BAMUM LETTER NU;Lo;0;L;;;;;N;;;;; -A6BE;BAMUM LETTER NJUAE;Lo;0;L;;;;;N;;;;; -A6BF;BAMUM LETTER YOQ;Lo;0;L;;;;;N;;;;; -A6C0;BAMUM LETTER SHU;Lo;0;L;;;;;N;;;;; -A6C1;BAMUM LETTER YUQ;Lo;0;L;;;;;N;;;;; -A6C2;BAMUM LETTER YA;Lo;0;L;;;;;N;;;;; -A6C3;BAMUM LETTER NSHA;Lo;0;L;;;;;N;;;;; -A6C4;BAMUM LETTER KEUX;Lo;0;L;;;;;N;;;;; -A6C5;BAMUM LETTER PEUX;Lo;0;L;;;;;N;;;;; -A6C6;BAMUM LETTER NJEE;Lo;0;L;;;;;N;;;;; -A6C7;BAMUM LETTER NTEE;Lo;0;L;;;;;N;;;;; -A6C8;BAMUM LETTER PUE;Lo;0;L;;;;;N;;;;; -A6C9;BAMUM LETTER WUE;Lo;0;L;;;;;N;;;;; -A6CA;BAMUM LETTER PEE;Lo;0;L;;;;;N;;;;; -A6CB;BAMUM LETTER FEE;Lo;0;L;;;;;N;;;;; -A6CC;BAMUM LETTER RU;Lo;0;L;;;;;N;;;;; -A6CD;BAMUM LETTER LU;Lo;0;L;;;;;N;;;;; -A6CE;BAMUM LETTER MI;Lo;0;L;;;;;N;;;;; -A6CF;BAMUM LETTER NI;Lo;0;L;;;;;N;;;;; -A6D0;BAMUM LETTER REUX;Lo;0;L;;;;;N;;;;; -A6D1;BAMUM LETTER RAE;Lo;0;L;;;;;N;;;;; -A6D2;BAMUM LETTER KEN;Lo;0;L;;;;;N;;;;; -A6D3;BAMUM LETTER NGKWAEN;Lo;0;L;;;;;N;;;;; -A6D4;BAMUM LETTER NGGA;Lo;0;L;;;;;N;;;;; -A6D5;BAMUM LETTER NGA;Lo;0;L;;;;;N;;;;; -A6D6;BAMUM LETTER SHO;Lo;0;L;;;;;N;;;;; -A6D7;BAMUM LETTER PUAE;Lo;0;L;;;;;N;;;;; -A6D8;BAMUM LETTER FU;Lo;0;L;;;;;N;;;;; -A6D9;BAMUM LETTER FOM;Lo;0;L;;;;;N;;;;; -A6DA;BAMUM LETTER WA;Lo;0;L;;;;;N;;;;; -A6DB;BAMUM LETTER NA;Lo;0;L;;;;;N;;;;; -A6DC;BAMUM LETTER LI;Lo;0;L;;;;;N;;;;; -A6DD;BAMUM LETTER PI;Lo;0;L;;;;;N;;;;; -A6DE;BAMUM LETTER LOQ;Lo;0;L;;;;;N;;;;; -A6DF;BAMUM LETTER KO;Lo;0;L;;;;;N;;;;; -A6E0;BAMUM LETTER MBEN;Lo;0;L;;;;;N;;;;; -A6E1;BAMUM LETTER REN;Lo;0;L;;;;;N;;;;; -A6E2;BAMUM LETTER MEN;Lo;0;L;;;;;N;;;;; -A6E3;BAMUM LETTER MA;Lo;0;L;;;;;N;;;;; -A6E4;BAMUM LETTER TI;Lo;0;L;;;;;N;;;;; -A6E5;BAMUM LETTER KI;Lo;0;L;;;;;N;;;;; -A6E6;BAMUM LETTER MO;Nl;0;L;;;;1;N;;;;; -A6E7;BAMUM LETTER MBAA;Nl;0;L;;;;2;N;;;;; -A6E8;BAMUM LETTER TET;Nl;0;L;;;;3;N;;;;; -A6E9;BAMUM LETTER KPA;Nl;0;L;;;;4;N;;;;; -A6EA;BAMUM LETTER TEN;Nl;0;L;;;;5;N;;;;; -A6EB;BAMUM LETTER NTUU;Nl;0;L;;;;6;N;;;;; -A6EC;BAMUM LETTER SAMBA;Nl;0;L;;;;7;N;;;;; -A6ED;BAMUM LETTER FAAMAE;Nl;0;L;;;;8;N;;;;; -A6EE;BAMUM LETTER KOVUU;Nl;0;L;;;;9;N;;;;; -A6EF;BAMUM LETTER KOGHOM;Nl;0;L;;;;0;N;;;;; -A6F0;BAMUM COMBINING MARK KOQNDON;Mn;230;NSM;;;;;N;;;;; -A6F1;BAMUM COMBINING MARK TUKWENTIS;Mn;230;NSM;;;;;N;;;;; -A6F2;BAMUM NJAEMLI;Po;0;L;;;;;N;;;;; -A6F3;BAMUM FULL STOP;Po;0;L;;;;;N;;;;; -A6F4;BAMUM COLON;Po;0;L;;;;;N;;;;; -A6F5;BAMUM COMMA;Po;0;L;;;;;N;;;;; -A6F6;BAMUM SEMICOLON;Po;0;L;;;;;N;;;;; -A6F7;BAMUM QUESTION MARK;Po;0;L;;;;;N;;;;; -A700;MODIFIER LETTER CHINESE TONE YIN PING;Sk;0;ON;;;;;N;;;;; -A701;MODIFIER LETTER CHINESE TONE YANG PING;Sk;0;ON;;;;;N;;;;; -A702;MODIFIER LETTER CHINESE TONE YIN SHANG;Sk;0;ON;;;;;N;;;;; -A703;MODIFIER LETTER CHINESE TONE YANG SHANG;Sk;0;ON;;;;;N;;;;; -A704;MODIFIER LETTER CHINESE TONE YIN QU;Sk;0;ON;;;;;N;;;;; -A705;MODIFIER LETTER CHINESE TONE YANG QU;Sk;0;ON;;;;;N;;;;; -A706;MODIFIER LETTER CHINESE TONE YIN RU;Sk;0;ON;;;;;N;;;;; -A707;MODIFIER LETTER CHINESE TONE YANG RU;Sk;0;ON;;;;;N;;;;; -A708;MODIFIER LETTER EXTRA-HIGH DOTTED TONE BAR;Sk;0;ON;;;;;N;;;;; -A709;MODIFIER LETTER HIGH DOTTED TONE BAR;Sk;0;ON;;;;;N;;;;; -A70A;MODIFIER LETTER MID DOTTED TONE BAR;Sk;0;ON;;;;;N;;;;; -A70B;MODIFIER LETTER LOW DOTTED TONE BAR;Sk;0;ON;;;;;N;;;;; -A70C;MODIFIER LETTER EXTRA-LOW DOTTED TONE BAR;Sk;0;ON;;;;;N;;;;; -A70D;MODIFIER LETTER EXTRA-HIGH DOTTED LEFT-STEM TONE BAR;Sk;0;ON;;;;;N;;;;; -A70E;MODIFIER LETTER HIGH DOTTED LEFT-STEM TONE BAR;Sk;0;ON;;;;;N;;;;; -A70F;MODIFIER LETTER MID DOTTED LEFT-STEM TONE BAR;Sk;0;ON;;;;;N;;;;; -A710;MODIFIER LETTER LOW DOTTED LEFT-STEM TONE BAR;Sk;0;ON;;;;;N;;;;; -A711;MODIFIER LETTER EXTRA-LOW DOTTED LEFT-STEM TONE BAR;Sk;0;ON;;;;;N;;;;; -A712;MODIFIER LETTER EXTRA-HIGH LEFT-STEM TONE BAR;Sk;0;ON;;;;;N;;;;; -A713;MODIFIER LETTER HIGH LEFT-STEM TONE BAR;Sk;0;ON;;;;;N;;;;; -A714;MODIFIER LETTER MID LEFT-STEM TONE BAR;Sk;0;ON;;;;;N;;;;; -A715;MODIFIER LETTER LOW LEFT-STEM TONE BAR;Sk;0;ON;;;;;N;;;;; -A716;MODIFIER LETTER EXTRA-LOW LEFT-STEM TONE BAR;Sk;0;ON;;;;;N;;;;; -A717;MODIFIER LETTER DOT VERTICAL BAR;Lm;0;ON;;;;;N;;;;; -A718;MODIFIER LETTER DOT SLASH;Lm;0;ON;;;;;N;;;;; -A719;MODIFIER LETTER DOT HORIZONTAL BAR;Lm;0;ON;;;;;N;;;;; -A71A;MODIFIER LETTER LOWER RIGHT CORNER ANGLE;Lm;0;ON;;;;;N;;;;; -A71B;MODIFIER LETTER RAISED UP ARROW;Lm;0;ON;;;;;N;;;;; -A71C;MODIFIER LETTER RAISED DOWN ARROW;Lm;0;ON;;;;;N;;;;; -A71D;MODIFIER LETTER RAISED EXCLAMATION MARK;Lm;0;ON;;;;;N;;;;; -A71E;MODIFIER LETTER RAISED INVERTED EXCLAMATION MARK;Lm;0;ON;;;;;N;;;;; -A71F;MODIFIER LETTER LOW INVERTED EXCLAMATION MARK;Lm;0;ON;;;;;N;;;;; -A720;MODIFIER LETTER STRESS AND HIGH TONE;Sk;0;ON;;;;;N;;;;; -A721;MODIFIER LETTER STRESS AND LOW TONE;Sk;0;ON;;;;;N;;;;; -A722;LATIN CAPITAL LETTER EGYPTOLOGICAL ALEF;Lu;0;L;;;;;N;;;;A723; -A723;LATIN SMALL LETTER EGYPTOLOGICAL ALEF;Ll;0;L;;;;;N;;;A722;;A722 -A724;LATIN CAPITAL LETTER EGYPTOLOGICAL AIN;Lu;0;L;;;;;N;;;;A725; -A725;LATIN SMALL LETTER EGYPTOLOGICAL AIN;Ll;0;L;;;;;N;;;A724;;A724 -A726;LATIN CAPITAL LETTER HENG;Lu;0;L;;;;;N;;;;A727; -A727;LATIN SMALL LETTER HENG;Ll;0;L;;;;;N;;;A726;;A726 -A728;LATIN CAPITAL LETTER TZ;Lu;0;L;;;;;N;;;;A729; -A729;LATIN SMALL LETTER TZ;Ll;0;L;;;;;N;;;A728;;A728 -A72A;LATIN CAPITAL LETTER TRESILLO;Lu;0;L;;;;;N;;;;A72B; -A72B;LATIN SMALL LETTER TRESILLO;Ll;0;L;;;;;N;;;A72A;;A72A -A72C;LATIN CAPITAL LETTER CUATRILLO;Lu;0;L;;;;;N;;;;A72D; -A72D;LATIN SMALL LETTER CUATRILLO;Ll;0;L;;;;;N;;;A72C;;A72C -A72E;LATIN CAPITAL LETTER CUATRILLO WITH COMMA;Lu;0;L;;;;;N;;;;A72F; -A72F;LATIN SMALL LETTER CUATRILLO WITH COMMA;Ll;0;L;;;;;N;;;A72E;;A72E -A730;LATIN LETTER SMALL CAPITAL F;Ll;0;L;;;;;N;;;;; -A731;LATIN LETTER SMALL CAPITAL S;Ll;0;L;;;;;N;;;;; -A732;LATIN CAPITAL LETTER AA;Lu;0;L;;;;;N;;;;A733; -A733;LATIN SMALL LETTER AA;Ll;0;L;;;;;N;;;A732;;A732 -A734;LATIN CAPITAL LETTER AO;Lu;0;L;;;;;N;;;;A735; -A735;LATIN SMALL LETTER AO;Ll;0;L;;;;;N;;;A734;;A734 -A736;LATIN CAPITAL LETTER AU;Lu;0;L;;;;;N;;;;A737; -A737;LATIN SMALL LETTER AU;Ll;0;L;;;;;N;;;A736;;A736 -A738;LATIN CAPITAL LETTER AV;Lu;0;L;;;;;N;;;;A739; -A739;LATIN SMALL LETTER AV;Ll;0;L;;;;;N;;;A738;;A738 -A73A;LATIN CAPITAL LETTER AV WITH HORIZONTAL BAR;Lu;0;L;;;;;N;;;;A73B; -A73B;LATIN SMALL LETTER AV WITH HORIZONTAL BAR;Ll;0;L;;;;;N;;;A73A;;A73A -A73C;LATIN CAPITAL LETTER AY;Lu;0;L;;;;;N;;;;A73D; -A73D;LATIN SMALL LETTER AY;Ll;0;L;;;;;N;;;A73C;;A73C -A73E;LATIN CAPITAL LETTER REVERSED C WITH DOT;Lu;0;L;;;;;N;;;;A73F; -A73F;LATIN SMALL LETTER REVERSED C WITH DOT;Ll;0;L;;;;;N;;;A73E;;A73E -A740;LATIN CAPITAL LETTER K WITH STROKE;Lu;0;L;;;;;N;;;;A741; -A741;LATIN SMALL LETTER K WITH STROKE;Ll;0;L;;;;;N;;;A740;;A740 -A742;LATIN CAPITAL LETTER K WITH DIAGONAL STROKE;Lu;0;L;;;;;N;;;;A743; -A743;LATIN SMALL LETTER K WITH DIAGONAL STROKE;Ll;0;L;;;;;N;;;A742;;A742 -A744;LATIN CAPITAL LETTER K WITH STROKE AND DIAGONAL STROKE;Lu;0;L;;;;;N;;;;A745; -A745;LATIN SMALL LETTER K WITH STROKE AND DIAGONAL STROKE;Ll;0;L;;;;;N;;;A744;;A744 -A746;LATIN CAPITAL LETTER BROKEN L;Lu;0;L;;;;;N;;;;A747; -A747;LATIN SMALL LETTER BROKEN L;Ll;0;L;;;;;N;;;A746;;A746 -A748;LATIN CAPITAL LETTER L WITH HIGH STROKE;Lu;0;L;;;;;N;;;;A749; -A749;LATIN SMALL LETTER L WITH HIGH STROKE;Ll;0;L;;;;;N;;;A748;;A748 -A74A;LATIN CAPITAL LETTER O WITH LONG STROKE OVERLAY;Lu;0;L;;;;;N;;;;A74B; -A74B;LATIN SMALL LETTER O WITH LONG STROKE OVERLAY;Ll;0;L;;;;;N;;;A74A;;A74A -A74C;LATIN CAPITAL LETTER O WITH LOOP;Lu;0;L;;;;;N;;;;A74D; -A74D;LATIN SMALL LETTER O WITH LOOP;Ll;0;L;;;;;N;;;A74C;;A74C -A74E;LATIN CAPITAL LETTER OO;Lu;0;L;;;;;N;;;;A74F; -A74F;LATIN SMALL LETTER OO;Ll;0;L;;;;;N;;;A74E;;A74E -A750;LATIN CAPITAL LETTER P WITH STROKE THROUGH DESCENDER;Lu;0;L;;;;;N;;;;A751; -A751;LATIN SMALL LETTER P WITH STROKE THROUGH DESCENDER;Ll;0;L;;;;;N;;;A750;;A750 -A752;LATIN CAPITAL LETTER P WITH FLOURISH;Lu;0;L;;;;;N;;;;A753; -A753;LATIN SMALL LETTER P WITH FLOURISH;Ll;0;L;;;;;N;;;A752;;A752 -A754;LATIN CAPITAL LETTER P WITH SQUIRREL TAIL;Lu;0;L;;;;;N;;;;A755; -A755;LATIN SMALL LETTER P WITH SQUIRREL TAIL;Ll;0;L;;;;;N;;;A754;;A754 -A756;LATIN CAPITAL LETTER Q WITH STROKE THROUGH DESCENDER;Lu;0;L;;;;;N;;;;A757; -A757;LATIN SMALL LETTER Q WITH STROKE THROUGH DESCENDER;Ll;0;L;;;;;N;;;A756;;A756 -A758;LATIN CAPITAL LETTER Q WITH DIAGONAL STROKE;Lu;0;L;;;;;N;;;;A759; -A759;LATIN SMALL LETTER Q WITH DIAGONAL STROKE;Ll;0;L;;;;;N;;;A758;;A758 -A75A;LATIN CAPITAL LETTER R ROTUNDA;Lu;0;L;;;;;N;;;;A75B; -A75B;LATIN SMALL LETTER R ROTUNDA;Ll;0;L;;;;;N;;;A75A;;A75A -A75C;LATIN CAPITAL LETTER RUM ROTUNDA;Lu;0;L;;;;;N;;;;A75D; -A75D;LATIN SMALL LETTER RUM ROTUNDA;Ll;0;L;;;;;N;;;A75C;;A75C -A75E;LATIN CAPITAL LETTER V WITH DIAGONAL STROKE;Lu;0;L;;;;;N;;;;A75F; -A75F;LATIN SMALL LETTER V WITH DIAGONAL STROKE;Ll;0;L;;;;;N;;;A75E;;A75E -A760;LATIN CAPITAL LETTER VY;Lu;0;L;;;;;N;;;;A761; -A761;LATIN SMALL LETTER VY;Ll;0;L;;;;;N;;;A760;;A760 -A762;LATIN CAPITAL LETTER VISIGOTHIC Z;Lu;0;L;;;;;N;;;;A763; -A763;LATIN SMALL LETTER VISIGOTHIC Z;Ll;0;L;;;;;N;;;A762;;A762 -A764;LATIN CAPITAL LETTER THORN WITH STROKE;Lu;0;L;;;;;N;;;;A765; -A765;LATIN SMALL LETTER THORN WITH STROKE;Ll;0;L;;;;;N;;;A764;;A764 -A766;LATIN CAPITAL LETTER THORN WITH STROKE THROUGH DESCENDER;Lu;0;L;;;;;N;;;;A767; -A767;LATIN SMALL LETTER THORN WITH STROKE THROUGH DESCENDER;Ll;0;L;;;;;N;;;A766;;A766 -A768;LATIN CAPITAL LETTER VEND;Lu;0;L;;;;;N;;;;A769; -A769;LATIN SMALL LETTER VEND;Ll;0;L;;;;;N;;;A768;;A768 -A76A;LATIN CAPITAL LETTER ET;Lu;0;L;;;;;N;;;;A76B; -A76B;LATIN SMALL LETTER ET;Ll;0;L;;;;;N;;;A76A;;A76A -A76C;LATIN CAPITAL LETTER IS;Lu;0;L;;;;;N;;;;A76D; -A76D;LATIN SMALL LETTER IS;Ll;0;L;;;;;N;;;A76C;;A76C -A76E;LATIN CAPITAL LETTER CON;Lu;0;L;;;;;N;;;;A76F; -A76F;LATIN SMALL LETTER CON;Ll;0;L;;;;;N;;;A76E;;A76E -A770;MODIFIER LETTER US;Lm;0;L; A76F;;;;N;;;;; -A771;LATIN SMALL LETTER DUM;Ll;0;L;;;;;N;;;;; -A772;LATIN SMALL LETTER LUM;Ll;0;L;;;;;N;;;;; -A773;LATIN SMALL LETTER MUM;Ll;0;L;;;;;N;;;;; -A774;LATIN SMALL LETTER NUM;Ll;0;L;;;;;N;;;;; -A775;LATIN SMALL LETTER RUM;Ll;0;L;;;;;N;;;;; -A776;LATIN LETTER SMALL CAPITAL RUM;Ll;0;L;;;;;N;;;;; -A777;LATIN SMALL LETTER TUM;Ll;0;L;;;;;N;;;;; -A778;LATIN SMALL LETTER UM;Ll;0;L;;;;;N;;;;; -A779;LATIN CAPITAL LETTER INSULAR D;Lu;0;L;;;;;N;;;;A77A; -A77A;LATIN SMALL LETTER INSULAR D;Ll;0;L;;;;;N;;;A779;;A779 -A77B;LATIN CAPITAL LETTER INSULAR F;Lu;0;L;;;;;N;;;;A77C; -A77C;LATIN SMALL LETTER INSULAR F;Ll;0;L;;;;;N;;;A77B;;A77B -A77D;LATIN CAPITAL LETTER INSULAR G;Lu;0;L;;;;;N;;;;1D79; -A77E;LATIN CAPITAL LETTER TURNED INSULAR G;Lu;0;L;;;;;N;;;;A77F; -A77F;LATIN SMALL LETTER TURNED INSULAR G;Ll;0;L;;;;;N;;;A77E;;A77E -A780;LATIN CAPITAL LETTER TURNED L;Lu;0;L;;;;;N;;;;A781; -A781;LATIN SMALL LETTER TURNED L;Ll;0;L;;;;;N;;;A780;;A780 -A782;LATIN CAPITAL LETTER INSULAR R;Lu;0;L;;;;;N;;;;A783; -A783;LATIN SMALL LETTER INSULAR R;Ll;0;L;;;;;N;;;A782;;A782 -A784;LATIN CAPITAL LETTER INSULAR S;Lu;0;L;;;;;N;;;;A785; -A785;LATIN SMALL LETTER INSULAR S;Ll;0;L;;;;;N;;;A784;;A784 -A786;LATIN CAPITAL LETTER INSULAR T;Lu;0;L;;;;;N;;;;A787; -A787;LATIN SMALL LETTER INSULAR T;Ll;0;L;;;;;N;;;A786;;A786 -A788;MODIFIER LETTER LOW CIRCUMFLEX ACCENT;Lm;0;ON;;;;;N;;;;; -A789;MODIFIER LETTER COLON;Sk;0;L;;;;;N;;;;; -A78A;MODIFIER LETTER SHORT EQUALS SIGN;Sk;0;L;;;;;N;;;;; -A78B;LATIN CAPITAL LETTER SALTILLO;Lu;0;L;;;;;N;;;;A78C; -A78C;LATIN SMALL LETTER SALTILLO;Ll;0;L;;;;;N;;;A78B;;A78B -A78D;LATIN CAPITAL LETTER TURNED H;Lu;0;L;;;;;N;;;;0265; -A78E;LATIN SMALL LETTER L WITH RETROFLEX HOOK AND BELT;Ll;0;L;;;;;N;;;;; -A790;LATIN CAPITAL LETTER N WITH DESCENDER;Lu;0;L;;;;;N;;;;A791; -A791;LATIN SMALL LETTER N WITH DESCENDER;Ll;0;L;;;;;N;;;A790;;A790 -A7A0;LATIN CAPITAL LETTER G WITH OBLIQUE STROKE;Lu;0;L;;;;;N;;;;A7A1; -A7A1;LATIN SMALL LETTER G WITH OBLIQUE STROKE;Ll;0;L;;;;;N;;;A7A0;;A7A0 -A7A2;LATIN CAPITAL LETTER K WITH OBLIQUE STROKE;Lu;0;L;;;;;N;;;;A7A3; -A7A3;LATIN SMALL LETTER K WITH OBLIQUE STROKE;Ll;0;L;;;;;N;;;A7A2;;A7A2 -A7A4;LATIN CAPITAL LETTER N WITH OBLIQUE STROKE;Lu;0;L;;;;;N;;;;A7A5; -A7A5;LATIN SMALL LETTER N WITH OBLIQUE STROKE;Ll;0;L;;;;;N;;;A7A4;;A7A4 -A7A6;LATIN CAPITAL LETTER R WITH OBLIQUE STROKE;Lu;0;L;;;;;N;;;;A7A7; -A7A7;LATIN SMALL LETTER R WITH OBLIQUE STROKE;Ll;0;L;;;;;N;;;A7A6;;A7A6 -A7A8;LATIN CAPITAL LETTER S WITH OBLIQUE STROKE;Lu;0;L;;;;;N;;;;A7A9; -A7A9;LATIN SMALL LETTER S WITH OBLIQUE STROKE;Ll;0;L;;;;;N;;;A7A8;;A7A8 -A7FA;LATIN LETTER SMALL CAPITAL TURNED M;Ll;0;L;;;;;N;;;;; -A7FB;LATIN EPIGRAPHIC LETTER REVERSED F;Lo;0;L;;;;;N;;;;; -A7FC;LATIN EPIGRAPHIC LETTER REVERSED P;Lo;0;L;;;;;N;;;;; -A7FD;LATIN EPIGRAPHIC LETTER INVERTED M;Lo;0;L;;;;;N;;;;; -A7FE;LATIN EPIGRAPHIC LETTER I LONGA;Lo;0;L;;;;;N;;;;; -A7FF;LATIN EPIGRAPHIC LETTER ARCHAIC M;Lo;0;L;;;;;N;;;;; -A800;SYLOTI NAGRI LETTER A;Lo;0;L;;;;;N;;;;; -A801;SYLOTI NAGRI LETTER I;Lo;0;L;;;;;N;;;;; -A802;SYLOTI NAGRI SIGN DVISVARA;Mn;0;NSM;;;;;N;;;;; -A803;SYLOTI NAGRI LETTER U;Lo;0;L;;;;;N;;;;; -A804;SYLOTI NAGRI LETTER E;Lo;0;L;;;;;N;;;;; -A805;SYLOTI NAGRI LETTER O;Lo;0;L;;;;;N;;;;; -A806;SYLOTI NAGRI SIGN HASANTA;Mn;9;NSM;;;;;N;;;;; -A807;SYLOTI NAGRI LETTER KO;Lo;0;L;;;;;N;;;;; -A808;SYLOTI NAGRI LETTER KHO;Lo;0;L;;;;;N;;;;; -A809;SYLOTI NAGRI LETTER GO;Lo;0;L;;;;;N;;;;; -A80A;SYLOTI NAGRI LETTER GHO;Lo;0;L;;;;;N;;;;; -A80B;SYLOTI NAGRI SIGN ANUSVARA;Mn;0;NSM;;;;;N;;;;; -A80C;SYLOTI NAGRI LETTER CO;Lo;0;L;;;;;N;;;;; -A80D;SYLOTI NAGRI LETTER CHO;Lo;0;L;;;;;N;;;;; -A80E;SYLOTI NAGRI LETTER JO;Lo;0;L;;;;;N;;;;; -A80F;SYLOTI NAGRI LETTER JHO;Lo;0;L;;;;;N;;;;; -A810;SYLOTI NAGRI LETTER TTO;Lo;0;L;;;;;N;;;;; -A811;SYLOTI NAGRI LETTER TTHO;Lo;0;L;;;;;N;;;;; -A812;SYLOTI NAGRI LETTER DDO;Lo;0;L;;;;;N;;;;; -A813;SYLOTI NAGRI LETTER DDHO;Lo;0;L;;;;;N;;;;; -A814;SYLOTI NAGRI LETTER TO;Lo;0;L;;;;;N;;;;; -A815;SYLOTI NAGRI LETTER THO;Lo;0;L;;;;;N;;;;; -A816;SYLOTI NAGRI LETTER DO;Lo;0;L;;;;;N;;;;; -A817;SYLOTI NAGRI LETTER DHO;Lo;0;L;;;;;N;;;;; -A818;SYLOTI NAGRI LETTER NO;Lo;0;L;;;;;N;;;;; -A819;SYLOTI NAGRI LETTER PO;Lo;0;L;;;;;N;;;;; -A81A;SYLOTI NAGRI LETTER PHO;Lo;0;L;;;;;N;;;;; -A81B;SYLOTI NAGRI LETTER BO;Lo;0;L;;;;;N;;;;; -A81C;SYLOTI NAGRI LETTER BHO;Lo;0;L;;;;;N;;;;; -A81D;SYLOTI NAGRI LETTER MO;Lo;0;L;;;;;N;;;;; -A81E;SYLOTI NAGRI LETTER RO;Lo;0;L;;;;;N;;;;; -A81F;SYLOTI NAGRI LETTER LO;Lo;0;L;;;;;N;;;;; -A820;SYLOTI NAGRI LETTER RRO;Lo;0;L;;;;;N;;;;; -A821;SYLOTI NAGRI LETTER SO;Lo;0;L;;;;;N;;;;; -A822;SYLOTI NAGRI LETTER HO;Lo;0;L;;;;;N;;;;; -A823;SYLOTI NAGRI VOWEL SIGN A;Mc;0;L;;;;;N;;;;; -A824;SYLOTI NAGRI VOWEL SIGN I;Mc;0;L;;;;;N;;;;; -A825;SYLOTI NAGRI VOWEL SIGN U;Mn;0;NSM;;;;;N;;;;; -A826;SYLOTI NAGRI VOWEL SIGN E;Mn;0;NSM;;;;;N;;;;; -A827;SYLOTI NAGRI VOWEL SIGN OO;Mc;0;L;;;;;N;;;;; -A828;SYLOTI NAGRI POETRY MARK-1;So;0;ON;;;;;N;;;;; -A829;SYLOTI NAGRI POETRY MARK-2;So;0;ON;;;;;N;;;;; -A82A;SYLOTI NAGRI POETRY MARK-3;So;0;ON;;;;;N;;;;; -A82B;SYLOTI NAGRI POETRY MARK-4;So;0;ON;;;;;N;;;;; -A830;NORTH INDIC FRACTION ONE QUARTER;No;0;L;;;;1/4;N;;;;; -A831;NORTH INDIC FRACTION ONE HALF;No;0;L;;;;1/2;N;;;;; -A832;NORTH INDIC FRACTION THREE QUARTERS;No;0;L;;;;3/4;N;;;;; -A833;NORTH INDIC FRACTION ONE SIXTEENTH;No;0;L;;;;1/16;N;;;;; -A834;NORTH INDIC FRACTION ONE EIGHTH;No;0;L;;;;1/8;N;;;;; -A835;NORTH INDIC FRACTION THREE SIXTEENTHS;No;0;L;;;;3/16;N;;;;; -A836;NORTH INDIC QUARTER MARK;So;0;L;;;;;N;;;;; -A837;NORTH INDIC PLACEHOLDER MARK;So;0;L;;;;;N;;;;; -A838;NORTH INDIC RUPEE MARK;Sc;0;ET;;;;;N;;;;; -A839;NORTH INDIC QUANTITY MARK;So;0;ET;;;;;N;;;;; -A840;PHAGS-PA LETTER KA;Lo;0;L;;;;;N;;;;; -A841;PHAGS-PA LETTER KHA;Lo;0;L;;;;;N;;;;; -A842;PHAGS-PA LETTER GA;Lo;0;L;;;;;N;;;;; -A843;PHAGS-PA LETTER NGA;Lo;0;L;;;;;N;;;;; -A844;PHAGS-PA LETTER CA;Lo;0;L;;;;;N;;;;; -A845;PHAGS-PA LETTER CHA;Lo;0;L;;;;;N;;;;; -A846;PHAGS-PA LETTER JA;Lo;0;L;;;;;N;;;;; -A847;PHAGS-PA LETTER NYA;Lo;0;L;;;;;N;;;;; -A848;PHAGS-PA LETTER TA;Lo;0;L;;;;;N;;;;; -A849;PHAGS-PA LETTER THA;Lo;0;L;;;;;N;;;;; -A84A;PHAGS-PA LETTER DA;Lo;0;L;;;;;N;;;;; -A84B;PHAGS-PA LETTER NA;Lo;0;L;;;;;N;;;;; -A84C;PHAGS-PA LETTER PA;Lo;0;L;;;;;N;;;;; -A84D;PHAGS-PA LETTER PHA;Lo;0;L;;;;;N;;;;; -A84E;PHAGS-PA LETTER BA;Lo;0;L;;;;;N;;;;; -A84F;PHAGS-PA LETTER MA;Lo;0;L;;;;;N;;;;; -A850;PHAGS-PA LETTER TSA;Lo;0;L;;;;;N;;;;; -A851;PHAGS-PA LETTER TSHA;Lo;0;L;;;;;N;;;;; -A852;PHAGS-PA LETTER DZA;Lo;0;L;;;;;N;;;;; -A853;PHAGS-PA LETTER WA;Lo;0;L;;;;;N;;;;; -A854;PHAGS-PA LETTER ZHA;Lo;0;L;;;;;N;;;;; -A855;PHAGS-PA LETTER ZA;Lo;0;L;;;;;N;;;;; -A856;PHAGS-PA LETTER SMALL A;Lo;0;L;;;;;N;;;;; -A857;PHAGS-PA LETTER YA;Lo;0;L;;;;;N;;;;; -A858;PHAGS-PA LETTER RA;Lo;0;L;;;;;N;;;;; -A859;PHAGS-PA LETTER LA;Lo;0;L;;;;;N;;;;; -A85A;PHAGS-PA LETTER SHA;Lo;0;L;;;;;N;;;;; -A85B;PHAGS-PA LETTER SA;Lo;0;L;;;;;N;;;;; -A85C;PHAGS-PA LETTER HA;Lo;0;L;;;;;N;;;;; -A85D;PHAGS-PA LETTER A;Lo;0;L;;;;;N;;;;; -A85E;PHAGS-PA LETTER I;Lo;0;L;;;;;N;;;;; -A85F;PHAGS-PA LETTER U;Lo;0;L;;;;;N;;;;; -A860;PHAGS-PA LETTER E;Lo;0;L;;;;;N;;;;; -A861;PHAGS-PA LETTER O;Lo;0;L;;;;;N;;;;; -A862;PHAGS-PA LETTER QA;Lo;0;L;;;;;N;;;;; -A863;PHAGS-PA LETTER XA;Lo;0;L;;;;;N;;;;; -A864;PHAGS-PA LETTER FA;Lo;0;L;;;;;N;;;;; -A865;PHAGS-PA LETTER GGA;Lo;0;L;;;;;N;;;;; -A866;PHAGS-PA LETTER EE;Lo;0;L;;;;;N;;;;; -A867;PHAGS-PA SUBJOINED LETTER WA;Lo;0;L;;;;;N;;;;; -A868;PHAGS-PA SUBJOINED LETTER YA;Lo;0;L;;;;;N;;;;; -A869;PHAGS-PA LETTER TTA;Lo;0;L;;;;;N;;;;; -A86A;PHAGS-PA LETTER TTHA;Lo;0;L;;;;;N;;;;; -A86B;PHAGS-PA LETTER DDA;Lo;0;L;;;;;N;;;;; -A86C;PHAGS-PA LETTER NNA;Lo;0;L;;;;;N;;;;; -A86D;PHAGS-PA LETTER ALTERNATE YA;Lo;0;L;;;;;N;;;;; -A86E;PHAGS-PA LETTER VOICELESS SHA;Lo;0;L;;;;;N;;;;; -A86F;PHAGS-PA LETTER VOICED HA;Lo;0;L;;;;;N;;;;; -A870;PHAGS-PA LETTER ASPIRATED FA;Lo;0;L;;;;;N;;;;; -A871;PHAGS-PA SUBJOINED LETTER RA;Lo;0;L;;;;;N;;;;; -A872;PHAGS-PA SUPERFIXED LETTER RA;Lo;0;L;;;;;N;;;;; -A873;PHAGS-PA LETTER CANDRABINDU;Lo;0;L;;;;;N;;;;; -A874;PHAGS-PA SINGLE HEAD MARK;Po;0;ON;;;;;N;;;;; -A875;PHAGS-PA DOUBLE HEAD MARK;Po;0;ON;;;;;N;;;;; -A876;PHAGS-PA MARK SHAD;Po;0;ON;;;;;N;;;;; -A877;PHAGS-PA MARK DOUBLE SHAD;Po;0;ON;;;;;N;;;;; -A880;SAURASHTRA SIGN ANUSVARA;Mc;0;L;;;;;N;;;;; -A881;SAURASHTRA SIGN VISARGA;Mc;0;L;;;;;N;;;;; -A882;SAURASHTRA LETTER A;Lo;0;L;;;;;N;;;;; -A883;SAURASHTRA LETTER AA;Lo;0;L;;;;;N;;;;; -A884;SAURASHTRA LETTER I;Lo;0;L;;;;;N;;;;; -A885;SAURASHTRA LETTER II;Lo;0;L;;;;;N;;;;; -A886;SAURASHTRA LETTER U;Lo;0;L;;;;;N;;;;; -A887;SAURASHTRA LETTER UU;Lo;0;L;;;;;N;;;;; -A888;SAURASHTRA LETTER VOCALIC R;Lo;0;L;;;;;N;;;;; -A889;SAURASHTRA LETTER VOCALIC RR;Lo;0;L;;;;;N;;;;; -A88A;SAURASHTRA LETTER VOCALIC L;Lo;0;L;;;;;N;;;;; -A88B;SAURASHTRA LETTER VOCALIC LL;Lo;0;L;;;;;N;;;;; -A88C;SAURASHTRA LETTER E;Lo;0;L;;;;;N;;;;; -A88D;SAURASHTRA LETTER EE;Lo;0;L;;;;;N;;;;; -A88E;SAURASHTRA LETTER AI;Lo;0;L;;;;;N;;;;; -A88F;SAURASHTRA LETTER O;Lo;0;L;;;;;N;;;;; -A890;SAURASHTRA LETTER OO;Lo;0;L;;;;;N;;;;; -A891;SAURASHTRA LETTER AU;Lo;0;L;;;;;N;;;;; -A892;SAURASHTRA LETTER KA;Lo;0;L;;;;;N;;;;; -A893;SAURASHTRA LETTER KHA;Lo;0;L;;;;;N;;;;; -A894;SAURASHTRA LETTER GA;Lo;0;L;;;;;N;;;;; -A895;SAURASHTRA LETTER GHA;Lo;0;L;;;;;N;;;;; -A896;SAURASHTRA LETTER NGA;Lo;0;L;;;;;N;;;;; -A897;SAURASHTRA LETTER CA;Lo;0;L;;;;;N;;;;; -A898;SAURASHTRA LETTER CHA;Lo;0;L;;;;;N;;;;; -A899;SAURASHTRA LETTER JA;Lo;0;L;;;;;N;;;;; -A89A;SAURASHTRA LETTER JHA;Lo;0;L;;;;;N;;;;; -A89B;SAURASHTRA LETTER NYA;Lo;0;L;;;;;N;;;;; -A89C;SAURASHTRA LETTER TTA;Lo;0;L;;;;;N;;;;; -A89D;SAURASHTRA LETTER TTHA;Lo;0;L;;;;;N;;;;; -A89E;SAURASHTRA LETTER DDA;Lo;0;L;;;;;N;;;;; -A89F;SAURASHTRA LETTER DDHA;Lo;0;L;;;;;N;;;;; -A8A0;SAURASHTRA LETTER NNA;Lo;0;L;;;;;N;;;;; -A8A1;SAURASHTRA LETTER TA;Lo;0;L;;;;;N;;;;; -A8A2;SAURASHTRA LETTER THA;Lo;0;L;;;;;N;;;;; -A8A3;SAURASHTRA LETTER DA;Lo;0;L;;;;;N;;;;; -A8A4;SAURASHTRA LETTER DHA;Lo;0;L;;;;;N;;;;; -A8A5;SAURASHTRA LETTER NA;Lo;0;L;;;;;N;;;;; -A8A6;SAURASHTRA LETTER PA;Lo;0;L;;;;;N;;;;; -A8A7;SAURASHTRA LETTER PHA;Lo;0;L;;;;;N;;;;; -A8A8;SAURASHTRA LETTER BA;Lo;0;L;;;;;N;;;;; -A8A9;SAURASHTRA LETTER BHA;Lo;0;L;;;;;N;;;;; -A8AA;SAURASHTRA LETTER MA;Lo;0;L;;;;;N;;;;; -A8AB;SAURASHTRA LETTER YA;Lo;0;L;;;;;N;;;;; -A8AC;SAURASHTRA LETTER RA;Lo;0;L;;;;;N;;;;; -A8AD;SAURASHTRA LETTER LA;Lo;0;L;;;;;N;;;;; -A8AE;SAURASHTRA LETTER VA;Lo;0;L;;;;;N;;;;; -A8AF;SAURASHTRA LETTER SHA;Lo;0;L;;;;;N;;;;; -A8B0;SAURASHTRA LETTER SSA;Lo;0;L;;;;;N;;;;; -A8B1;SAURASHTRA LETTER SA;Lo;0;L;;;;;N;;;;; -A8B2;SAURASHTRA LETTER HA;Lo;0;L;;;;;N;;;;; -A8B3;SAURASHTRA LETTER LLA;Lo;0;L;;;;;N;;;;; -A8B4;SAURASHTRA CONSONANT SIGN HAARU;Mc;0;L;;;;;N;;;;; -A8B5;SAURASHTRA VOWEL SIGN AA;Mc;0;L;;;;;N;;;;; -A8B6;SAURASHTRA VOWEL SIGN I;Mc;0;L;;;;;N;;;;; -A8B7;SAURASHTRA VOWEL SIGN II;Mc;0;L;;;;;N;;;;; -A8B8;SAURASHTRA VOWEL SIGN U;Mc;0;L;;;;;N;;;;; -A8B9;SAURASHTRA VOWEL SIGN UU;Mc;0;L;;;;;N;;;;; -A8BA;SAURASHTRA VOWEL SIGN VOCALIC R;Mc;0;L;;;;;N;;;;; -A8BB;SAURASHTRA VOWEL SIGN VOCALIC RR;Mc;0;L;;;;;N;;;;; -A8BC;SAURASHTRA VOWEL SIGN VOCALIC L;Mc;0;L;;;;;N;;;;; -A8BD;SAURASHTRA VOWEL SIGN VOCALIC LL;Mc;0;L;;;;;N;;;;; -A8BE;SAURASHTRA VOWEL SIGN E;Mc;0;L;;;;;N;;;;; -A8BF;SAURASHTRA VOWEL SIGN EE;Mc;0;L;;;;;N;;;;; -A8C0;SAURASHTRA VOWEL SIGN AI;Mc;0;L;;;;;N;;;;; -A8C1;SAURASHTRA VOWEL SIGN O;Mc;0;L;;;;;N;;;;; -A8C2;SAURASHTRA VOWEL SIGN OO;Mc;0;L;;;;;N;;;;; -A8C3;SAURASHTRA VOWEL SIGN AU;Mc;0;L;;;;;N;;;;; -A8C4;SAURASHTRA SIGN VIRAMA;Mn;9;NSM;;;;;N;;;;; -A8CE;SAURASHTRA DANDA;Po;0;L;;;;;N;;;;; -A8CF;SAURASHTRA DOUBLE DANDA;Po;0;L;;;;;N;;;;; -A8D0;SAURASHTRA DIGIT ZERO;Nd;0;L;;0;0;0;N;;;;; -A8D1;SAURASHTRA DIGIT ONE;Nd;0;L;;1;1;1;N;;;;; -A8D2;SAURASHTRA DIGIT TWO;Nd;0;L;;2;2;2;N;;;;; -A8D3;SAURASHTRA DIGIT THREE;Nd;0;L;;3;3;3;N;;;;; -A8D4;SAURASHTRA DIGIT FOUR;Nd;0;L;;4;4;4;N;;;;; -A8D5;SAURASHTRA DIGIT FIVE;Nd;0;L;;5;5;5;N;;;;; -A8D6;SAURASHTRA DIGIT SIX;Nd;0;L;;6;6;6;N;;;;; -A8D7;SAURASHTRA DIGIT SEVEN;Nd;0;L;;7;7;7;N;;;;; -A8D8;SAURASHTRA DIGIT EIGHT;Nd;0;L;;8;8;8;N;;;;; -A8D9;SAURASHTRA DIGIT NINE;Nd;0;L;;9;9;9;N;;;;; -A8E0;COMBINING DEVANAGARI DIGIT ZERO;Mn;230;NSM;;;;;N;;;;; -A8E1;COMBINING DEVANAGARI DIGIT ONE;Mn;230;NSM;;;;;N;;;;; -A8E2;COMBINING DEVANAGARI DIGIT TWO;Mn;230;NSM;;;;;N;;;;; -A8E3;COMBINING DEVANAGARI DIGIT THREE;Mn;230;NSM;;;;;N;;;;; -A8E4;COMBINING DEVANAGARI DIGIT FOUR;Mn;230;NSM;;;;;N;;;;; -A8E5;COMBINING DEVANAGARI DIGIT FIVE;Mn;230;NSM;;;;;N;;;;; -A8E6;COMBINING DEVANAGARI DIGIT SIX;Mn;230;NSM;;;;;N;;;;; -A8E7;COMBINING DEVANAGARI DIGIT SEVEN;Mn;230;NSM;;;;;N;;;;; -A8E8;COMBINING DEVANAGARI DIGIT EIGHT;Mn;230;NSM;;;;;N;;;;; -A8E9;COMBINING DEVANAGARI DIGIT NINE;Mn;230;NSM;;;;;N;;;;; -A8EA;COMBINING DEVANAGARI LETTER A;Mn;230;NSM;;;;;N;;;;; -A8EB;COMBINING DEVANAGARI LETTER U;Mn;230;NSM;;;;;N;;;;; -A8EC;COMBINING DEVANAGARI LETTER KA;Mn;230;NSM;;;;;N;;;;; -A8ED;COMBINING DEVANAGARI LETTER NA;Mn;230;NSM;;;;;N;;;;; -A8EE;COMBINING DEVANAGARI LETTER PA;Mn;230;NSM;;;;;N;;;;; -A8EF;COMBINING DEVANAGARI LETTER RA;Mn;230;NSM;;;;;N;;;;; -A8F0;COMBINING DEVANAGARI LETTER VI;Mn;230;NSM;;;;;N;;;;; -A8F1;COMBINING DEVANAGARI SIGN AVAGRAHA;Mn;230;NSM;;;;;N;;;;; -A8F2;DEVANAGARI SIGN SPACING CANDRABINDU;Lo;0;L;;;;;N;;;;; -A8F3;DEVANAGARI SIGN CANDRABINDU VIRAMA;Lo;0;L;;;;;N;;;;; -A8F4;DEVANAGARI SIGN DOUBLE CANDRABINDU VIRAMA;Lo;0;L;;;;;N;;;;; -A8F5;DEVANAGARI SIGN CANDRABINDU TWO;Lo;0;L;;;;;N;;;;; -A8F6;DEVANAGARI SIGN CANDRABINDU THREE;Lo;0;L;;;;;N;;;;; -A8F7;DEVANAGARI SIGN CANDRABINDU AVAGRAHA;Lo;0;L;;;;;N;;;;; -A8F8;DEVANAGARI SIGN PUSHPIKA;Po;0;L;;;;;N;;;;; -A8F9;DEVANAGARI GAP FILLER;Po;0;L;;;;;N;;;;; -A8FA;DEVANAGARI CARET;Po;0;L;;;;;N;;;;; -A8FB;DEVANAGARI HEADSTROKE;Lo;0;L;;;;;N;;;;; -A900;KAYAH LI DIGIT ZERO;Nd;0;L;;0;0;0;N;;;;; -A901;KAYAH LI DIGIT ONE;Nd;0;L;;1;1;1;N;;;;; -A902;KAYAH LI DIGIT TWO;Nd;0;L;;2;2;2;N;;;;; -A903;KAYAH LI DIGIT THREE;Nd;0;L;;3;3;3;N;;;;; -A904;KAYAH LI DIGIT FOUR;Nd;0;L;;4;4;4;N;;;;; -A905;KAYAH LI DIGIT FIVE;Nd;0;L;;5;5;5;N;;;;; -A906;KAYAH LI DIGIT SIX;Nd;0;L;;6;6;6;N;;;;; -A907;KAYAH LI DIGIT SEVEN;Nd;0;L;;7;7;7;N;;;;; -A908;KAYAH LI DIGIT EIGHT;Nd;0;L;;8;8;8;N;;;;; -A909;KAYAH LI DIGIT NINE;Nd;0;L;;9;9;9;N;;;;; -A90A;KAYAH LI LETTER KA;Lo;0;L;;;;;N;;;;; -A90B;KAYAH LI LETTER KHA;Lo;0;L;;;;;N;;;;; -A90C;KAYAH LI LETTER GA;Lo;0;L;;;;;N;;;;; -A90D;KAYAH LI LETTER NGA;Lo;0;L;;;;;N;;;;; -A90E;KAYAH LI LETTER SA;Lo;0;L;;;;;N;;;;; -A90F;KAYAH LI LETTER SHA;Lo;0;L;;;;;N;;;;; -A910;KAYAH LI LETTER ZA;Lo;0;L;;;;;N;;;;; -A911;KAYAH LI LETTER NYA;Lo;0;L;;;;;N;;;;; -A912;KAYAH LI LETTER TA;Lo;0;L;;;;;N;;;;; -A913;KAYAH LI LETTER HTA;Lo;0;L;;;;;N;;;;; -A914;KAYAH LI LETTER NA;Lo;0;L;;;;;N;;;;; -A915;KAYAH LI LETTER PA;Lo;0;L;;;;;N;;;;; -A916;KAYAH LI LETTER PHA;Lo;0;L;;;;;N;;;;; -A917;KAYAH LI LETTER MA;Lo;0;L;;;;;N;;;;; -A918;KAYAH LI LETTER DA;Lo;0;L;;;;;N;;;;; -A919;KAYAH LI LETTER BA;Lo;0;L;;;;;N;;;;; -A91A;KAYAH LI LETTER RA;Lo;0;L;;;;;N;;;;; -A91B;KAYAH LI LETTER YA;Lo;0;L;;;;;N;;;;; -A91C;KAYAH LI LETTER LA;Lo;0;L;;;;;N;;;;; -A91D;KAYAH LI LETTER WA;Lo;0;L;;;;;N;;;;; -A91E;KAYAH LI LETTER THA;Lo;0;L;;;;;N;;;;; -A91F;KAYAH LI LETTER HA;Lo;0;L;;;;;N;;;;; -A920;KAYAH LI LETTER VA;Lo;0;L;;;;;N;;;;; -A921;KAYAH LI LETTER CA;Lo;0;L;;;;;N;;;;; -A922;KAYAH LI LETTER A;Lo;0;L;;;;;N;;;;; -A923;KAYAH LI LETTER OE;Lo;0;L;;;;;N;;;;; -A924;KAYAH LI LETTER I;Lo;0;L;;;;;N;;;;; -A925;KAYAH LI LETTER OO;Lo;0;L;;;;;N;;;;; -A926;KAYAH LI VOWEL UE;Mn;0;NSM;;;;;N;;;;; -A927;KAYAH LI VOWEL E;Mn;0;NSM;;;;;N;;;;; -A928;KAYAH LI VOWEL U;Mn;0;NSM;;;;;N;;;;; -A929;KAYAH LI VOWEL EE;Mn;0;NSM;;;;;N;;;;; -A92A;KAYAH LI VOWEL O;Mn;0;NSM;;;;;N;;;;; -A92B;KAYAH LI TONE PLOPHU;Mn;220;NSM;;;;;N;;;;; -A92C;KAYAH LI TONE CALYA;Mn;220;NSM;;;;;N;;;;; -A92D;KAYAH LI TONE CALYA PLOPHU;Mn;220;NSM;;;;;N;;;;; -A92E;KAYAH LI SIGN CWI;Po;0;L;;;;;N;;;;; -A92F;KAYAH LI SIGN SHYA;Po;0;L;;;;;N;;;;; -A930;REJANG LETTER KA;Lo;0;L;;;;;N;;;;; -A931;REJANG LETTER GA;Lo;0;L;;;;;N;;;;; -A932;REJANG LETTER NGA;Lo;0;L;;;;;N;;;;; -A933;REJANG LETTER TA;Lo;0;L;;;;;N;;;;; -A934;REJANG LETTER DA;Lo;0;L;;;;;N;;;;; -A935;REJANG LETTER NA;Lo;0;L;;;;;N;;;;; -A936;REJANG LETTER PA;Lo;0;L;;;;;N;;;;; -A937;REJANG LETTER BA;Lo;0;L;;;;;N;;;;; -A938;REJANG LETTER MA;Lo;0;L;;;;;N;;;;; -A939;REJANG LETTER CA;Lo;0;L;;;;;N;;;;; -A93A;REJANG LETTER JA;Lo;0;L;;;;;N;;;;; -A93B;REJANG LETTER NYA;Lo;0;L;;;;;N;;;;; -A93C;REJANG LETTER SA;Lo;0;L;;;;;N;;;;; -A93D;REJANG LETTER RA;Lo;0;L;;;;;N;;;;; -A93E;REJANG LETTER LA;Lo;0;L;;;;;N;;;;; -A93F;REJANG LETTER YA;Lo;0;L;;;;;N;;;;; -A940;REJANG LETTER WA;Lo;0;L;;;;;N;;;;; -A941;REJANG LETTER HA;Lo;0;L;;;;;N;;;;; -A942;REJANG LETTER MBA;Lo;0;L;;;;;N;;;;; -A943;REJANG LETTER NGGA;Lo;0;L;;;;;N;;;;; -A944;REJANG LETTER NDA;Lo;0;L;;;;;N;;;;; -A945;REJANG LETTER NYJA;Lo;0;L;;;;;N;;;;; -A946;REJANG LETTER A;Lo;0;L;;;;;N;;;;; -A947;REJANG VOWEL SIGN I;Mn;0;NSM;;;;;N;;;;; -A948;REJANG VOWEL SIGN U;Mn;0;NSM;;;;;N;;;;; -A949;REJANG VOWEL SIGN E;Mn;0;NSM;;;;;N;;;;; -A94A;REJANG VOWEL SIGN AI;Mn;0;NSM;;;;;N;;;;; -A94B;REJANG VOWEL SIGN O;Mn;0;NSM;;;;;N;;;;; -A94C;REJANG VOWEL SIGN AU;Mn;0;NSM;;;;;N;;;;; -A94D;REJANG VOWEL SIGN EU;Mn;0;NSM;;;;;N;;;;; -A94E;REJANG VOWEL SIGN EA;Mn;0;NSM;;;;;N;;;;; -A94F;REJANG CONSONANT SIGN NG;Mn;0;NSM;;;;;N;;;;; -A950;REJANG CONSONANT SIGN N;Mn;0;NSM;;;;;N;;;;; -A951;REJANG CONSONANT SIGN R;Mn;0;NSM;;;;;N;;;;; -A952;REJANG CONSONANT SIGN H;Mc;0;L;;;;;N;;;;; -A953;REJANG VIRAMA;Mc;9;L;;;;;N;;;;; -A95F;REJANG SECTION MARK;Po;0;L;;;;;N;;;;; -A960;HANGUL CHOSEONG TIKEUT-MIEUM;Lo;0;L;;;;;N;;;;; -A961;HANGUL CHOSEONG TIKEUT-PIEUP;Lo;0;L;;;;;N;;;;; -A962;HANGUL CHOSEONG TIKEUT-SIOS;Lo;0;L;;;;;N;;;;; -A963;HANGUL CHOSEONG TIKEUT-CIEUC;Lo;0;L;;;;;N;;;;; -A964;HANGUL CHOSEONG RIEUL-KIYEOK;Lo;0;L;;;;;N;;;;; -A965;HANGUL CHOSEONG RIEUL-SSANGKIYEOK;Lo;0;L;;;;;N;;;;; -A966;HANGUL CHOSEONG RIEUL-TIKEUT;Lo;0;L;;;;;N;;;;; -A967;HANGUL CHOSEONG RIEUL-SSANGTIKEUT;Lo;0;L;;;;;N;;;;; -A968;HANGUL CHOSEONG RIEUL-MIEUM;Lo;0;L;;;;;N;;;;; -A969;HANGUL CHOSEONG RIEUL-PIEUP;Lo;0;L;;;;;N;;;;; -A96A;HANGUL CHOSEONG RIEUL-SSANGPIEUP;Lo;0;L;;;;;N;;;;; -A96B;HANGUL CHOSEONG RIEUL-KAPYEOUNPIEUP;Lo;0;L;;;;;N;;;;; -A96C;HANGUL CHOSEONG RIEUL-SIOS;Lo;0;L;;;;;N;;;;; -A96D;HANGUL CHOSEONG RIEUL-CIEUC;Lo;0;L;;;;;N;;;;; -A96E;HANGUL CHOSEONG RIEUL-KHIEUKH;Lo;0;L;;;;;N;;;;; -A96F;HANGUL CHOSEONG MIEUM-KIYEOK;Lo;0;L;;;;;N;;;;; -A970;HANGUL CHOSEONG MIEUM-TIKEUT;Lo;0;L;;;;;N;;;;; -A971;HANGUL CHOSEONG MIEUM-SIOS;Lo;0;L;;;;;N;;;;; -A972;HANGUL CHOSEONG PIEUP-SIOS-THIEUTH;Lo;0;L;;;;;N;;;;; -A973;HANGUL CHOSEONG PIEUP-KHIEUKH;Lo;0;L;;;;;N;;;;; -A974;HANGUL CHOSEONG PIEUP-HIEUH;Lo;0;L;;;;;N;;;;; -A975;HANGUL CHOSEONG SSANGSIOS-PIEUP;Lo;0;L;;;;;N;;;;; -A976;HANGUL CHOSEONG IEUNG-RIEUL;Lo;0;L;;;;;N;;;;; -A977;HANGUL CHOSEONG IEUNG-HIEUH;Lo;0;L;;;;;N;;;;; -A978;HANGUL CHOSEONG SSANGCIEUC-HIEUH;Lo;0;L;;;;;N;;;;; -A979;HANGUL CHOSEONG SSANGTHIEUTH;Lo;0;L;;;;;N;;;;; -A97A;HANGUL CHOSEONG PHIEUPH-HIEUH;Lo;0;L;;;;;N;;;;; -A97B;HANGUL CHOSEONG HIEUH-SIOS;Lo;0;L;;;;;N;;;;; -A97C;HANGUL CHOSEONG SSANGYEORINHIEUH;Lo;0;L;;;;;N;;;;; -A980;JAVANESE SIGN PANYANGGA;Mn;0;NSM;;;;;N;;;;; -A981;JAVANESE SIGN CECAK;Mn;0;NSM;;;;;N;;;;; -A982;JAVANESE SIGN LAYAR;Mn;0;NSM;;;;;N;;;;; -A983;JAVANESE SIGN WIGNYAN;Mc;0;L;;;;;N;;;;; -A984;JAVANESE LETTER A;Lo;0;L;;;;;N;;;;; -A985;JAVANESE LETTER I KAWI;Lo;0;L;;;;;N;;;;; -A986;JAVANESE LETTER I;Lo;0;L;;;;;N;;;;; -A987;JAVANESE LETTER II;Lo;0;L;;;;;N;;;;; -A988;JAVANESE LETTER U;Lo;0;L;;;;;N;;;;; -A989;JAVANESE LETTER PA CEREK;Lo;0;L;;;;;N;;;;; -A98A;JAVANESE LETTER NGA LELET;Lo;0;L;;;;;N;;;;; -A98B;JAVANESE LETTER NGA LELET RASWADI;Lo;0;L;;;;;N;;;;; -A98C;JAVANESE LETTER E;Lo;0;L;;;;;N;;;;; -A98D;JAVANESE LETTER AI;Lo;0;L;;;;;N;;;;; -A98E;JAVANESE LETTER O;Lo;0;L;;;;;N;;;;; -A98F;JAVANESE LETTER KA;Lo;0;L;;;;;N;;;;; -A990;JAVANESE LETTER KA SASAK;Lo;0;L;;;;;N;;;;; -A991;JAVANESE LETTER KA MURDA;Lo;0;L;;;;;N;;;;; -A992;JAVANESE LETTER GA;Lo;0;L;;;;;N;;;;; -A993;JAVANESE LETTER GA MURDA;Lo;0;L;;;;;N;;;;; -A994;JAVANESE LETTER NGA;Lo;0;L;;;;;N;;;;; -A995;JAVANESE LETTER CA;Lo;0;L;;;;;N;;;;; -A996;JAVANESE LETTER CA MURDA;Lo;0;L;;;;;N;;;;; -A997;JAVANESE LETTER JA;Lo;0;L;;;;;N;;;;; -A998;JAVANESE LETTER NYA MURDA;Lo;0;L;;;;;N;;;;; -A999;JAVANESE LETTER JA MAHAPRANA;Lo;0;L;;;;;N;;;;; -A99A;JAVANESE LETTER NYA;Lo;0;L;;;;;N;;;;; -A99B;JAVANESE LETTER TTA;Lo;0;L;;;;;N;;;;; -A99C;JAVANESE LETTER TTA MAHAPRANA;Lo;0;L;;;;;N;;;;; -A99D;JAVANESE LETTER DDA;Lo;0;L;;;;;N;;;;; -A99E;JAVANESE LETTER DDA MAHAPRANA;Lo;0;L;;;;;N;;;;; -A99F;JAVANESE LETTER NA MURDA;Lo;0;L;;;;;N;;;;; -A9A0;JAVANESE LETTER TA;Lo;0;L;;;;;N;;;;; -A9A1;JAVANESE LETTER TA MURDA;Lo;0;L;;;;;N;;;;; -A9A2;JAVANESE LETTER DA;Lo;0;L;;;;;N;;;;; -A9A3;JAVANESE LETTER DA MAHAPRANA;Lo;0;L;;;;;N;;;;; -A9A4;JAVANESE LETTER NA;Lo;0;L;;;;;N;;;;; -A9A5;JAVANESE LETTER PA;Lo;0;L;;;;;N;;;;; -A9A6;JAVANESE LETTER PA MURDA;Lo;0;L;;;;;N;;;;; -A9A7;JAVANESE LETTER BA;Lo;0;L;;;;;N;;;;; -A9A8;JAVANESE LETTER BA MURDA;Lo;0;L;;;;;N;;;;; -A9A9;JAVANESE LETTER MA;Lo;0;L;;;;;N;;;;; -A9AA;JAVANESE LETTER YA;Lo;0;L;;;;;N;;;;; -A9AB;JAVANESE LETTER RA;Lo;0;L;;;;;N;;;;; -A9AC;JAVANESE LETTER RA AGUNG;Lo;0;L;;;;;N;;;;; -A9AD;JAVANESE LETTER LA;Lo;0;L;;;;;N;;;;; -A9AE;JAVANESE LETTER WA;Lo;0;L;;;;;N;;;;; -A9AF;JAVANESE LETTER SA MURDA;Lo;0;L;;;;;N;;;;; -A9B0;JAVANESE LETTER SA MAHAPRANA;Lo;0;L;;;;;N;;;;; -A9B1;JAVANESE LETTER SA;Lo;0;L;;;;;N;;;;; -A9B2;JAVANESE LETTER HA;Lo;0;L;;;;;N;;;;; -A9B3;JAVANESE SIGN CECAK TELU;Mn;7;NSM;;;;;N;;;;; -A9B4;JAVANESE VOWEL SIGN TARUNG;Mc;0;L;;;;;N;;;;; -A9B5;JAVANESE VOWEL SIGN TOLONG;Mc;0;L;;;;;N;;;;; -A9B6;JAVANESE VOWEL SIGN WULU;Mn;0;NSM;;;;;N;;;;; -A9B7;JAVANESE VOWEL SIGN WULU MELIK;Mn;0;NSM;;;;;N;;;;; -A9B8;JAVANESE VOWEL SIGN SUKU;Mn;0;NSM;;;;;N;;;;; -A9B9;JAVANESE VOWEL SIGN SUKU MENDUT;Mn;0;NSM;;;;;N;;;;; -A9BA;JAVANESE VOWEL SIGN TALING;Mc;0;L;;;;;N;;;;; -A9BB;JAVANESE VOWEL SIGN DIRGA MURE;Mc;0;L;;;;;N;;;;; -A9BC;JAVANESE VOWEL SIGN PEPET;Mn;0;NSM;;;;;N;;;;; -A9BD;JAVANESE CONSONANT SIGN KERET;Mc;0;L;;;;;N;;;;; -A9BE;JAVANESE CONSONANT SIGN PENGKAL;Mc;0;L;;;;;N;;;;; -A9BF;JAVANESE CONSONANT SIGN CAKRA;Mc;0;L;;;;;N;;;;; -A9C0;JAVANESE PANGKON;Mc;9;L;;;;;N;;;;; -A9C1;JAVANESE LEFT RERENGGAN;Po;0;L;;;;;N;;;;; -A9C2;JAVANESE RIGHT RERENGGAN;Po;0;L;;;;;N;;;;; -A9C3;JAVANESE PADA ANDAP;Po;0;L;;;;;N;;;;; -A9C4;JAVANESE PADA MADYA;Po;0;L;;;;;N;;;;; -A9C5;JAVANESE PADA LUHUR;Po;0;L;;;;;N;;;;; -A9C6;JAVANESE PADA WINDU;Po;0;L;;;;;N;;;;; -A9C7;JAVANESE PADA PANGKAT;Po;0;L;;;;;N;;;;; -A9C8;JAVANESE PADA LINGSA;Po;0;L;;;;;N;;;;; -A9C9;JAVANESE PADA LUNGSI;Po;0;L;;;;;N;;;;; -A9CA;JAVANESE PADA ADEG;Po;0;L;;;;;N;;;;; -A9CB;JAVANESE PADA ADEG ADEG;Po;0;L;;;;;N;;;;; -A9CC;JAVANESE PADA PISELEH;Po;0;L;;;;;N;;;;; -A9CD;JAVANESE TURNED PADA PISELEH;Po;0;L;;;;;N;;;;; -A9CF;JAVANESE PANGRANGKEP;Lm;0;L;;;;;N;;;;; -A9D0;JAVANESE DIGIT ZERO;Nd;0;L;;0;0;0;N;;;;; -A9D1;JAVANESE DIGIT ONE;Nd;0;L;;1;1;1;N;;;;; -A9D2;JAVANESE DIGIT TWO;Nd;0;L;;2;2;2;N;;;;; -A9D3;JAVANESE DIGIT THREE;Nd;0;L;;3;3;3;N;;;;; -A9D4;JAVANESE DIGIT FOUR;Nd;0;L;;4;4;4;N;;;;; -A9D5;JAVANESE DIGIT FIVE;Nd;0;L;;5;5;5;N;;;;; -A9D6;JAVANESE DIGIT SIX;Nd;0;L;;6;6;6;N;;;;; -A9D7;JAVANESE DIGIT SEVEN;Nd;0;L;;7;7;7;N;;;;; -A9D8;JAVANESE DIGIT EIGHT;Nd;0;L;;8;8;8;N;;;;; -A9D9;JAVANESE DIGIT NINE;Nd;0;L;;9;9;9;N;;;;; -A9DE;JAVANESE PADA TIRTA TUMETES;Po;0;L;;;;;N;;;;; -A9DF;JAVANESE PADA ISEN-ISEN;Po;0;L;;;;;N;;;;; -AA00;CHAM LETTER A;Lo;0;L;;;;;N;;;;; -AA01;CHAM LETTER I;Lo;0;L;;;;;N;;;;; -AA02;CHAM LETTER U;Lo;0;L;;;;;N;;;;; -AA03;CHAM LETTER E;Lo;0;L;;;;;N;;;;; -AA04;CHAM LETTER AI;Lo;0;L;;;;;N;;;;; -AA05;CHAM LETTER O;Lo;0;L;;;;;N;;;;; -AA06;CHAM LETTER KA;Lo;0;L;;;;;N;;;;; -AA07;CHAM LETTER KHA;Lo;0;L;;;;;N;;;;; -AA08;CHAM LETTER GA;Lo;0;L;;;;;N;;;;; -AA09;CHAM LETTER GHA;Lo;0;L;;;;;N;;;;; -AA0A;CHAM LETTER NGUE;Lo;0;L;;;;;N;;;;; -AA0B;CHAM LETTER NGA;Lo;0;L;;;;;N;;;;; -AA0C;CHAM LETTER CHA;Lo;0;L;;;;;N;;;;; -AA0D;CHAM LETTER CHHA;Lo;0;L;;;;;N;;;;; -AA0E;CHAM LETTER JA;Lo;0;L;;;;;N;;;;; -AA0F;CHAM LETTER JHA;Lo;0;L;;;;;N;;;;; -AA10;CHAM LETTER NHUE;Lo;0;L;;;;;N;;;;; -AA11;CHAM LETTER NHA;Lo;0;L;;;;;N;;;;; -AA12;CHAM LETTER NHJA;Lo;0;L;;;;;N;;;;; -AA13;CHAM LETTER TA;Lo;0;L;;;;;N;;;;; -AA14;CHAM LETTER THA;Lo;0;L;;;;;N;;;;; -AA15;CHAM LETTER DA;Lo;0;L;;;;;N;;;;; -AA16;CHAM LETTER DHA;Lo;0;L;;;;;N;;;;; -AA17;CHAM LETTER NUE;Lo;0;L;;;;;N;;;;; -AA18;CHAM LETTER NA;Lo;0;L;;;;;N;;;;; -AA19;CHAM LETTER DDA;Lo;0;L;;;;;N;;;;; -AA1A;CHAM LETTER PA;Lo;0;L;;;;;N;;;;; -AA1B;CHAM LETTER PPA;Lo;0;L;;;;;N;;;;; -AA1C;CHAM LETTER PHA;Lo;0;L;;;;;N;;;;; -AA1D;CHAM LETTER BA;Lo;0;L;;;;;N;;;;; -AA1E;CHAM LETTER BHA;Lo;0;L;;;;;N;;;;; -AA1F;CHAM LETTER MUE;Lo;0;L;;;;;N;;;;; -AA20;CHAM LETTER MA;Lo;0;L;;;;;N;;;;; -AA21;CHAM LETTER BBA;Lo;0;L;;;;;N;;;;; -AA22;CHAM LETTER YA;Lo;0;L;;;;;N;;;;; -AA23;CHAM LETTER RA;Lo;0;L;;;;;N;;;;; -AA24;CHAM LETTER LA;Lo;0;L;;;;;N;;;;; -AA25;CHAM LETTER VA;Lo;0;L;;;;;N;;;;; -AA26;CHAM LETTER SSA;Lo;0;L;;;;;N;;;;; -AA27;CHAM LETTER SA;Lo;0;L;;;;;N;;;;; -AA28;CHAM LETTER HA;Lo;0;L;;;;;N;;;;; -AA29;CHAM VOWEL SIGN AA;Mn;0;NSM;;;;;N;;;;; -AA2A;CHAM VOWEL SIGN I;Mn;0;NSM;;;;;N;;;;; -AA2B;CHAM VOWEL SIGN II;Mn;0;NSM;;;;;N;;;;; -AA2C;CHAM VOWEL SIGN EI;Mn;0;NSM;;;;;N;;;;; -AA2D;CHAM VOWEL SIGN U;Mn;0;NSM;;;;;N;;;;; -AA2E;CHAM VOWEL SIGN OE;Mn;0;NSM;;;;;N;;;;; -AA2F;CHAM VOWEL SIGN O;Mc;0;L;;;;;N;;;;; -AA30;CHAM VOWEL SIGN AI;Mc;0;L;;;;;N;;;;; -AA31;CHAM VOWEL SIGN AU;Mn;0;NSM;;;;;N;;;;; -AA32;CHAM VOWEL SIGN UE;Mn;0;NSM;;;;;N;;;;; -AA33;CHAM CONSONANT SIGN YA;Mc;0;L;;;;;N;;;;; -AA34;CHAM CONSONANT SIGN RA;Mc;0;L;;;;;N;;;;; -AA35;CHAM CONSONANT SIGN LA;Mn;0;NSM;;;;;N;;;;; -AA36;CHAM CONSONANT SIGN WA;Mn;0;NSM;;;;;N;;;;; -AA40;CHAM LETTER FINAL K;Lo;0;L;;;;;N;;;;; -AA41;CHAM LETTER FINAL G;Lo;0;L;;;;;N;;;;; -AA42;CHAM LETTER FINAL NG;Lo;0;L;;;;;N;;;;; -AA43;CHAM CONSONANT SIGN FINAL NG;Mn;0;NSM;;;;;N;;;;; -AA44;CHAM LETTER FINAL CH;Lo;0;L;;;;;N;;;;; -AA45;CHAM LETTER FINAL T;Lo;0;L;;;;;N;;;;; -AA46;CHAM LETTER FINAL N;Lo;0;L;;;;;N;;;;; -AA47;CHAM LETTER FINAL P;Lo;0;L;;;;;N;;;;; -AA48;CHAM LETTER FINAL Y;Lo;0;L;;;;;N;;;;; -AA49;CHAM LETTER FINAL R;Lo;0;L;;;;;N;;;;; -AA4A;CHAM LETTER FINAL L;Lo;0;L;;;;;N;;;;; -AA4B;CHAM LETTER FINAL SS;Lo;0;L;;;;;N;;;;; -AA4C;CHAM CONSONANT SIGN FINAL M;Mn;0;NSM;;;;;N;;;;; -AA4D;CHAM CONSONANT SIGN FINAL H;Mc;0;L;;;;;N;;;;; -AA50;CHAM DIGIT ZERO;Nd;0;L;;0;0;0;N;;;;; -AA51;CHAM DIGIT ONE;Nd;0;L;;1;1;1;N;;;;; -AA52;CHAM DIGIT TWO;Nd;0;L;;2;2;2;N;;;;; -AA53;CHAM DIGIT THREE;Nd;0;L;;3;3;3;N;;;;; -AA54;CHAM DIGIT FOUR;Nd;0;L;;4;4;4;N;;;;; -AA55;CHAM DIGIT FIVE;Nd;0;L;;5;5;5;N;;;;; -AA56;CHAM DIGIT SIX;Nd;0;L;;6;6;6;N;;;;; -AA57;CHAM DIGIT SEVEN;Nd;0;L;;7;7;7;N;;;;; -AA58;CHAM DIGIT EIGHT;Nd;0;L;;8;8;8;N;;;;; -AA59;CHAM DIGIT NINE;Nd;0;L;;9;9;9;N;;;;; -AA5C;CHAM PUNCTUATION SPIRAL;Po;0;L;;;;;N;;;;; -AA5D;CHAM PUNCTUATION DANDA;Po;0;L;;;;;N;;;;; -AA5E;CHAM PUNCTUATION DOUBLE DANDA;Po;0;L;;;;;N;;;;; -AA5F;CHAM PUNCTUATION TRIPLE DANDA;Po;0;L;;;;;N;;;;; -AA60;MYANMAR LETTER KHAMTI GA;Lo;0;L;;;;;N;;;;; -AA61;MYANMAR LETTER KHAMTI CA;Lo;0;L;;;;;N;;;;; -AA62;MYANMAR LETTER KHAMTI CHA;Lo;0;L;;;;;N;;;;; -AA63;MYANMAR LETTER KHAMTI JA;Lo;0;L;;;;;N;;;;; -AA64;MYANMAR LETTER KHAMTI JHA;Lo;0;L;;;;;N;;;;; -AA65;MYANMAR LETTER KHAMTI NYA;Lo;0;L;;;;;N;;;;; -AA66;MYANMAR LETTER KHAMTI TTA;Lo;0;L;;;;;N;;;;; -AA67;MYANMAR LETTER KHAMTI TTHA;Lo;0;L;;;;;N;;;;; -AA68;MYANMAR LETTER KHAMTI DDA;Lo;0;L;;;;;N;;;;; -AA69;MYANMAR LETTER KHAMTI DDHA;Lo;0;L;;;;;N;;;;; -AA6A;MYANMAR LETTER KHAMTI DHA;Lo;0;L;;;;;N;;;;; -AA6B;MYANMAR LETTER KHAMTI NA;Lo;0;L;;;;;N;;;;; -AA6C;MYANMAR LETTER KHAMTI SA;Lo;0;L;;;;;N;;;;; -AA6D;MYANMAR LETTER KHAMTI HA;Lo;0;L;;;;;N;;;;; -AA6E;MYANMAR LETTER KHAMTI HHA;Lo;0;L;;;;;N;;;;; -AA6F;MYANMAR LETTER KHAMTI FA;Lo;0;L;;;;;N;;;;; -AA70;MYANMAR MODIFIER LETTER KHAMTI REDUPLICATION;Lm;0;L;;;;;N;;;;; -AA71;MYANMAR LETTER KHAMTI XA;Lo;0;L;;;;;N;;;;; -AA72;MYANMAR LETTER KHAMTI ZA;Lo;0;L;;;;;N;;;;; -AA73;MYANMAR LETTER KHAMTI RA;Lo;0;L;;;;;N;;;;; -AA74;MYANMAR LOGOGRAM KHAMTI OAY;Lo;0;L;;;;;N;;;;; -AA75;MYANMAR LOGOGRAM KHAMTI QN;Lo;0;L;;;;;N;;;;; -AA76;MYANMAR LOGOGRAM KHAMTI HM;Lo;0;L;;;;;N;;;;; -AA77;MYANMAR SYMBOL AITON EXCLAMATION;So;0;L;;;;;N;;;;; -AA78;MYANMAR SYMBOL AITON ONE;So;0;L;;;;;N;;;;; -AA79;MYANMAR SYMBOL AITON TWO;So;0;L;;;;;N;;;;; -AA7A;MYANMAR LETTER AITON RA;Lo;0;L;;;;;N;;;;; -AA7B;MYANMAR SIGN PAO KAREN TONE;Mc;0;L;;;;;N;;;;; -AA80;TAI VIET LETTER LOW KO;Lo;0;L;;;;;N;;;;; -AA81;TAI VIET LETTER HIGH KO;Lo;0;L;;;;;N;;;;; -AA82;TAI VIET LETTER LOW KHO;Lo;0;L;;;;;N;;;;; -AA83;TAI VIET LETTER HIGH KHO;Lo;0;L;;;;;N;;;;; -AA84;TAI VIET LETTER LOW KHHO;Lo;0;L;;;;;N;;;;; -AA85;TAI VIET LETTER HIGH KHHO;Lo;0;L;;;;;N;;;;; -AA86;TAI VIET LETTER LOW GO;Lo;0;L;;;;;N;;;;; -AA87;TAI VIET LETTER HIGH GO;Lo;0;L;;;;;N;;;;; -AA88;TAI VIET LETTER LOW NGO;Lo;0;L;;;;;N;;;;; -AA89;TAI VIET LETTER HIGH NGO;Lo;0;L;;;;;N;;;;; -AA8A;TAI VIET LETTER LOW CO;Lo;0;L;;;;;N;;;;; -AA8B;TAI VIET LETTER HIGH CO;Lo;0;L;;;;;N;;;;; -AA8C;TAI VIET LETTER LOW CHO;Lo;0;L;;;;;N;;;;; -AA8D;TAI VIET LETTER HIGH CHO;Lo;0;L;;;;;N;;;;; -AA8E;TAI VIET LETTER LOW SO;Lo;0;L;;;;;N;;;;; -AA8F;TAI VIET LETTER HIGH SO;Lo;0;L;;;;;N;;;;; -AA90;TAI VIET LETTER LOW NYO;Lo;0;L;;;;;N;;;;; -AA91;TAI VIET LETTER HIGH NYO;Lo;0;L;;;;;N;;;;; -AA92;TAI VIET LETTER LOW DO;Lo;0;L;;;;;N;;;;; -AA93;TAI VIET LETTER HIGH DO;Lo;0;L;;;;;N;;;;; -AA94;TAI VIET LETTER LOW TO;Lo;0;L;;;;;N;;;;; -AA95;TAI VIET LETTER HIGH TO;Lo;0;L;;;;;N;;;;; -AA96;TAI VIET LETTER LOW THO;Lo;0;L;;;;;N;;;;; -AA97;TAI VIET LETTER HIGH THO;Lo;0;L;;;;;N;;;;; -AA98;TAI VIET LETTER LOW NO;Lo;0;L;;;;;N;;;;; -AA99;TAI VIET LETTER HIGH NO;Lo;0;L;;;;;N;;;;; -AA9A;TAI VIET LETTER LOW BO;Lo;0;L;;;;;N;;;;; -AA9B;TAI VIET LETTER HIGH BO;Lo;0;L;;;;;N;;;;; -AA9C;TAI VIET LETTER LOW PO;Lo;0;L;;;;;N;;;;; -AA9D;TAI VIET LETTER HIGH PO;Lo;0;L;;;;;N;;;;; -AA9E;TAI VIET LETTER LOW PHO;Lo;0;L;;;;;N;;;;; -AA9F;TAI VIET LETTER HIGH PHO;Lo;0;L;;;;;N;;;;; -AAA0;TAI VIET LETTER LOW FO;Lo;0;L;;;;;N;;;;; -AAA1;TAI VIET LETTER HIGH FO;Lo;0;L;;;;;N;;;;; -AAA2;TAI VIET LETTER LOW MO;Lo;0;L;;;;;N;;;;; -AAA3;TAI VIET LETTER HIGH MO;Lo;0;L;;;;;N;;;;; -AAA4;TAI VIET LETTER LOW YO;Lo;0;L;;;;;N;;;;; -AAA5;TAI VIET LETTER HIGH YO;Lo;0;L;;;;;N;;;;; -AAA6;TAI VIET LETTER LOW RO;Lo;0;L;;;;;N;;;;; -AAA7;TAI VIET LETTER HIGH RO;Lo;0;L;;;;;N;;;;; -AAA8;TAI VIET LETTER LOW LO;Lo;0;L;;;;;N;;;;; -AAA9;TAI VIET LETTER HIGH LO;Lo;0;L;;;;;N;;;;; -AAAA;TAI VIET LETTER LOW VO;Lo;0;L;;;;;N;;;;; -AAAB;TAI VIET LETTER HIGH VO;Lo;0;L;;;;;N;;;;; -AAAC;TAI VIET LETTER LOW HO;Lo;0;L;;;;;N;;;;; -AAAD;TAI VIET LETTER HIGH HO;Lo;0;L;;;;;N;;;;; -AAAE;TAI VIET LETTER LOW O;Lo;0;L;;;;;N;;;;; -AAAF;TAI VIET LETTER HIGH O;Lo;0;L;;;;;N;;;;; -AAB0;TAI VIET MAI KANG;Mn;230;NSM;;;;;N;;;;; -AAB1;TAI VIET VOWEL AA;Lo;0;L;;;;;N;;;;; -AAB2;TAI VIET VOWEL I;Mn;230;NSM;;;;;N;;;;; -AAB3;TAI VIET VOWEL UE;Mn;230;NSM;;;;;N;;;;; -AAB4;TAI VIET VOWEL U;Mn;220;NSM;;;;;N;;;;; -AAB5;TAI VIET VOWEL E;Lo;0;L;;;;;N;;;;; -AAB6;TAI VIET VOWEL O;Lo;0;L;;;;;N;;;;; -AAB7;TAI VIET MAI KHIT;Mn;230;NSM;;;;;N;;;;; -AAB8;TAI VIET VOWEL IA;Mn;230;NSM;;;;;N;;;;; -AAB9;TAI VIET VOWEL UEA;Lo;0;L;;;;;N;;;;; -AABA;TAI VIET VOWEL UA;Lo;0;L;;;;;N;;;;; -AABB;TAI VIET VOWEL AUE;Lo;0;L;;;;;N;;;;; -AABC;TAI VIET VOWEL AY;Lo;0;L;;;;;N;;;;; -AABD;TAI VIET VOWEL AN;Lo;0;L;;;;;N;;;;; -AABE;TAI VIET VOWEL AM;Mn;230;NSM;;;;;N;;;;; -AABF;TAI VIET TONE MAI EK;Mn;230;NSM;;;;;N;;;;; -AAC0;TAI VIET TONE MAI NUENG;Lo;0;L;;;;;N;;;;; -AAC1;TAI VIET TONE MAI THO;Mn;230;NSM;;;;;N;;;;; -AAC2;TAI VIET TONE MAI SONG;Lo;0;L;;;;;N;;;;; -AADB;TAI VIET SYMBOL KON;Lo;0;L;;;;;N;;;;; -AADC;TAI VIET SYMBOL NUENG;Lo;0;L;;;;;N;;;;; -AADD;TAI VIET SYMBOL SAM;Lm;0;L;;;;;N;;;;; -AADE;TAI VIET SYMBOL HO HOI;Po;0;L;;;;;N;;;;; -AADF;TAI VIET SYMBOL KOI KOI;Po;0;L;;;;;N;;;;; -AB01;ETHIOPIC SYLLABLE TTHU;Lo;0;L;;;;;N;;;;; -AB02;ETHIOPIC SYLLABLE TTHI;Lo;0;L;;;;;N;;;;; -AB03;ETHIOPIC SYLLABLE TTHAA;Lo;0;L;;;;;N;;;;; -AB04;ETHIOPIC SYLLABLE TTHEE;Lo;0;L;;;;;N;;;;; -AB05;ETHIOPIC SYLLABLE TTHE;Lo;0;L;;;;;N;;;;; -AB06;ETHIOPIC SYLLABLE TTHO;Lo;0;L;;;;;N;;;;; -AB09;ETHIOPIC SYLLABLE DDHU;Lo;0;L;;;;;N;;;;; -AB0A;ETHIOPIC SYLLABLE DDHI;Lo;0;L;;;;;N;;;;; -AB0B;ETHIOPIC SYLLABLE DDHAA;Lo;0;L;;;;;N;;;;; -AB0C;ETHIOPIC SYLLABLE DDHEE;Lo;0;L;;;;;N;;;;; -AB0D;ETHIOPIC SYLLABLE DDHE;Lo;0;L;;;;;N;;;;; -AB0E;ETHIOPIC SYLLABLE DDHO;Lo;0;L;;;;;N;;;;; -AB11;ETHIOPIC SYLLABLE DZU;Lo;0;L;;;;;N;;;;; -AB12;ETHIOPIC SYLLABLE DZI;Lo;0;L;;;;;N;;;;; -AB13;ETHIOPIC SYLLABLE DZAA;Lo;0;L;;;;;N;;;;; -AB14;ETHIOPIC SYLLABLE DZEE;Lo;0;L;;;;;N;;;;; -AB15;ETHIOPIC SYLLABLE DZE;Lo;0;L;;;;;N;;;;; -AB16;ETHIOPIC SYLLABLE DZO;Lo;0;L;;;;;N;;;;; -AB20;ETHIOPIC SYLLABLE CCHHA;Lo;0;L;;;;;N;;;;; -AB21;ETHIOPIC SYLLABLE CCHHU;Lo;0;L;;;;;N;;;;; -AB22;ETHIOPIC SYLLABLE CCHHI;Lo;0;L;;;;;N;;;;; -AB23;ETHIOPIC SYLLABLE CCHHAA;Lo;0;L;;;;;N;;;;; -AB24;ETHIOPIC SYLLABLE CCHHEE;Lo;0;L;;;;;N;;;;; -AB25;ETHIOPIC SYLLABLE CCHHE;Lo;0;L;;;;;N;;;;; -AB26;ETHIOPIC SYLLABLE CCHHO;Lo;0;L;;;;;N;;;;; -AB28;ETHIOPIC SYLLABLE BBA;Lo;0;L;;;;;N;;;;; -AB29;ETHIOPIC SYLLABLE BBU;Lo;0;L;;;;;N;;;;; -AB2A;ETHIOPIC SYLLABLE BBI;Lo;0;L;;;;;N;;;;; -AB2B;ETHIOPIC SYLLABLE BBAA;Lo;0;L;;;;;N;;;;; -AB2C;ETHIOPIC SYLLABLE BBEE;Lo;0;L;;;;;N;;;;; -AB2D;ETHIOPIC SYLLABLE BBE;Lo;0;L;;;;;N;;;;; -AB2E;ETHIOPIC SYLLABLE BBO;Lo;0;L;;;;;N;;;;; -ABC0;MEETEI MAYEK LETTER KOK;Lo;0;L;;;;;N;;;;; -ABC1;MEETEI MAYEK LETTER SAM;Lo;0;L;;;;;N;;;;; -ABC2;MEETEI MAYEK LETTER LAI;Lo;0;L;;;;;N;;;;; -ABC3;MEETEI MAYEK LETTER MIT;Lo;0;L;;;;;N;;;;; -ABC4;MEETEI MAYEK LETTER PA;Lo;0;L;;;;;N;;;;; -ABC5;MEETEI MAYEK LETTER NA;Lo;0;L;;;;;N;;;;; -ABC6;MEETEI MAYEK LETTER CHIL;Lo;0;L;;;;;N;;;;; -ABC7;MEETEI MAYEK LETTER TIL;Lo;0;L;;;;;N;;;;; -ABC8;MEETEI MAYEK LETTER KHOU;Lo;0;L;;;;;N;;;;; -ABC9;MEETEI MAYEK LETTER NGOU;Lo;0;L;;;;;N;;;;; -ABCA;MEETEI MAYEK LETTER THOU;Lo;0;L;;;;;N;;;;; -ABCB;MEETEI MAYEK LETTER WAI;Lo;0;L;;;;;N;;;;; -ABCC;MEETEI MAYEK LETTER YANG;Lo;0;L;;;;;N;;;;; -ABCD;MEETEI MAYEK LETTER HUK;Lo;0;L;;;;;N;;;;; -ABCE;MEETEI MAYEK LETTER UN;Lo;0;L;;;;;N;;;;; -ABCF;MEETEI MAYEK LETTER I;Lo;0;L;;;;;N;;;;; -ABD0;MEETEI MAYEK LETTER PHAM;Lo;0;L;;;;;N;;;;; -ABD1;MEETEI MAYEK LETTER ATIYA;Lo;0;L;;;;;N;;;;; -ABD2;MEETEI MAYEK LETTER GOK;Lo;0;L;;;;;N;;;;; -ABD3;MEETEI MAYEK LETTER JHAM;Lo;0;L;;;;;N;;;;; -ABD4;MEETEI MAYEK LETTER RAI;Lo;0;L;;;;;N;;;;; -ABD5;MEETEI MAYEK LETTER BA;Lo;0;L;;;;;N;;;;; -ABD6;MEETEI MAYEK LETTER JIL;Lo;0;L;;;;;N;;;;; -ABD7;MEETEI MAYEK LETTER DIL;Lo;0;L;;;;;N;;;;; -ABD8;MEETEI MAYEK LETTER GHOU;Lo;0;L;;;;;N;;;;; -ABD9;MEETEI MAYEK LETTER DHOU;Lo;0;L;;;;;N;;;;; -ABDA;MEETEI MAYEK LETTER BHAM;Lo;0;L;;;;;N;;;;; -ABDB;MEETEI MAYEK LETTER KOK LONSUM;Lo;0;L;;;;;N;;;;; -ABDC;MEETEI MAYEK LETTER LAI LONSUM;Lo;0;L;;;;;N;;;;; -ABDD;MEETEI MAYEK LETTER MIT LONSUM;Lo;0;L;;;;;N;;;;; -ABDE;MEETEI MAYEK LETTER PA LONSUM;Lo;0;L;;;;;N;;;;; -ABDF;MEETEI MAYEK LETTER NA LONSUM;Lo;0;L;;;;;N;;;;; -ABE0;MEETEI MAYEK LETTER TIL LONSUM;Lo;0;L;;;;;N;;;;; -ABE1;MEETEI MAYEK LETTER NGOU LONSUM;Lo;0;L;;;;;N;;;;; -ABE2;MEETEI MAYEK LETTER I LONSUM;Lo;0;L;;;;;N;;;;; -ABE3;MEETEI MAYEK VOWEL SIGN ONAP;Mc;0;L;;;;;N;;;;; -ABE4;MEETEI MAYEK VOWEL SIGN INAP;Mc;0;L;;;;;N;;;;; -ABE5;MEETEI MAYEK VOWEL SIGN ANAP;Mn;0;NSM;;;;;N;;;;; -ABE6;MEETEI MAYEK VOWEL SIGN YENAP;Mc;0;L;;;;;N;;;;; -ABE7;MEETEI MAYEK VOWEL SIGN SOUNAP;Mc;0;L;;;;;N;;;;; -ABE8;MEETEI MAYEK VOWEL SIGN UNAP;Mn;0;NSM;;;;;N;;;;; -ABE9;MEETEI MAYEK VOWEL SIGN CHEINAP;Mc;0;L;;;;;N;;;;; -ABEA;MEETEI MAYEK VOWEL SIGN NUNG;Mc;0;L;;;;;N;;;;; -ABEB;MEETEI MAYEK CHEIKHEI;Po;0;L;;;;;N;;;;; -ABEC;MEETEI MAYEK LUM IYEK;Mc;0;L;;;;;N;;;;; -ABED;MEETEI MAYEK APUN IYEK;Mn;9;NSM;;;;;N;;;;; -ABF0;MEETEI MAYEK DIGIT ZERO;Nd;0;L;;0;0;0;N;;;;; -ABF1;MEETEI MAYEK DIGIT ONE;Nd;0;L;;1;1;1;N;;;;; -ABF2;MEETEI MAYEK DIGIT TWO;Nd;0;L;;2;2;2;N;;;;; -ABF3;MEETEI MAYEK DIGIT THREE;Nd;0;L;;3;3;3;N;;;;; -ABF4;MEETEI MAYEK DIGIT FOUR;Nd;0;L;;4;4;4;N;;;;; -ABF5;MEETEI MAYEK DIGIT FIVE;Nd;0;L;;5;5;5;N;;;;; -ABF6;MEETEI MAYEK DIGIT SIX;Nd;0;L;;6;6;6;N;;;;; -ABF7;MEETEI MAYEK DIGIT SEVEN;Nd;0;L;;7;7;7;N;;;;; -ABF8;MEETEI MAYEK DIGIT EIGHT;Nd;0;L;;8;8;8;N;;;;; -ABF9;MEETEI MAYEK DIGIT NINE;Nd;0;L;;9;9;9;N;;;;; -AC00;;Lo;0;L;;;;;N;;;;; -D7A3;;Lo;0;L;;;;;N;;;;; -D7B0;HANGUL JUNGSEONG O-YEO;Lo;0;L;;;;;N;;;;; -D7B1;HANGUL JUNGSEONG O-O-I;Lo;0;L;;;;;N;;;;; -D7B2;HANGUL JUNGSEONG YO-A;Lo;0;L;;;;;N;;;;; -D7B3;HANGUL JUNGSEONG YO-AE;Lo;0;L;;;;;N;;;;; -D7B4;HANGUL JUNGSEONG YO-EO;Lo;0;L;;;;;N;;;;; -D7B5;HANGUL JUNGSEONG U-YEO;Lo;0;L;;;;;N;;;;; -D7B6;HANGUL JUNGSEONG U-I-I;Lo;0;L;;;;;N;;;;; -D7B7;HANGUL JUNGSEONG YU-AE;Lo;0;L;;;;;N;;;;; -D7B8;HANGUL JUNGSEONG YU-O;Lo;0;L;;;;;N;;;;; -D7B9;HANGUL JUNGSEONG EU-A;Lo;0;L;;;;;N;;;;; -D7BA;HANGUL JUNGSEONG EU-EO;Lo;0;L;;;;;N;;;;; -D7BB;HANGUL JUNGSEONG EU-E;Lo;0;L;;;;;N;;;;; -D7BC;HANGUL JUNGSEONG EU-O;Lo;0;L;;;;;N;;;;; -D7BD;HANGUL JUNGSEONG I-YA-O;Lo;0;L;;;;;N;;;;; -D7BE;HANGUL JUNGSEONG I-YAE;Lo;0;L;;;;;N;;;;; -D7BF;HANGUL JUNGSEONG I-YEO;Lo;0;L;;;;;N;;;;; -D7C0;HANGUL JUNGSEONG I-YE;Lo;0;L;;;;;N;;;;; -D7C1;HANGUL JUNGSEONG I-O-I;Lo;0;L;;;;;N;;;;; -D7C2;HANGUL JUNGSEONG I-YO;Lo;0;L;;;;;N;;;;; -D7C3;HANGUL JUNGSEONG I-YU;Lo;0;L;;;;;N;;;;; -D7C4;HANGUL JUNGSEONG I-I;Lo;0;L;;;;;N;;;;; -D7C5;HANGUL JUNGSEONG ARAEA-A;Lo;0;L;;;;;N;;;;; -D7C6;HANGUL JUNGSEONG ARAEA-E;Lo;0;L;;;;;N;;;;; -D7CB;HANGUL JONGSEONG NIEUN-RIEUL;Lo;0;L;;;;;N;;;;; -D7CC;HANGUL JONGSEONG NIEUN-CHIEUCH;Lo;0;L;;;;;N;;;;; -D7CD;HANGUL JONGSEONG SSANGTIKEUT;Lo;0;L;;;;;N;;;;; -D7CE;HANGUL JONGSEONG SSANGTIKEUT-PIEUP;Lo;0;L;;;;;N;;;;; -D7CF;HANGUL JONGSEONG TIKEUT-PIEUP;Lo;0;L;;;;;N;;;;; -D7D0;HANGUL JONGSEONG TIKEUT-SIOS;Lo;0;L;;;;;N;;;;; -D7D1;HANGUL JONGSEONG TIKEUT-SIOS-KIYEOK;Lo;0;L;;;;;N;;;;; -D7D2;HANGUL JONGSEONG TIKEUT-CIEUC;Lo;0;L;;;;;N;;;;; -D7D3;HANGUL JONGSEONG TIKEUT-CHIEUCH;Lo;0;L;;;;;N;;;;; -D7D4;HANGUL JONGSEONG TIKEUT-THIEUTH;Lo;0;L;;;;;N;;;;; -D7D5;HANGUL JONGSEONG RIEUL-SSANGKIYEOK;Lo;0;L;;;;;N;;;;; -D7D6;HANGUL JONGSEONG RIEUL-KIYEOK-HIEUH;Lo;0;L;;;;;N;;;;; -D7D7;HANGUL JONGSEONG SSANGRIEUL-KHIEUKH;Lo;0;L;;;;;N;;;;; -D7D8;HANGUL JONGSEONG RIEUL-MIEUM-HIEUH;Lo;0;L;;;;;N;;;;; -D7D9;HANGUL JONGSEONG RIEUL-PIEUP-TIKEUT;Lo;0;L;;;;;N;;;;; -D7DA;HANGUL JONGSEONG RIEUL-PIEUP-PHIEUPH;Lo;0;L;;;;;N;;;;; -D7DB;HANGUL JONGSEONG RIEUL-YESIEUNG;Lo;0;L;;;;;N;;;;; -D7DC;HANGUL JONGSEONG RIEUL-YEORINHIEUH-HIEUH;Lo;0;L;;;;;N;;;;; -D7DD;HANGUL JONGSEONG KAPYEOUNRIEUL;Lo;0;L;;;;;N;;;;; -D7DE;HANGUL JONGSEONG MIEUM-NIEUN;Lo;0;L;;;;;N;;;;; -D7DF;HANGUL JONGSEONG MIEUM-SSANGNIEUN;Lo;0;L;;;;;N;;;;; -D7E0;HANGUL JONGSEONG SSANGMIEUM;Lo;0;L;;;;;N;;;;; -D7E1;HANGUL JONGSEONG MIEUM-PIEUP-SIOS;Lo;0;L;;;;;N;;;;; -D7E2;HANGUL JONGSEONG MIEUM-CIEUC;Lo;0;L;;;;;N;;;;; -D7E3;HANGUL JONGSEONG PIEUP-TIKEUT;Lo;0;L;;;;;N;;;;; -D7E4;HANGUL JONGSEONG PIEUP-RIEUL-PHIEUPH;Lo;0;L;;;;;N;;;;; -D7E5;HANGUL JONGSEONG PIEUP-MIEUM;Lo;0;L;;;;;N;;;;; -D7E6;HANGUL JONGSEONG SSANGPIEUP;Lo;0;L;;;;;N;;;;; -D7E7;HANGUL JONGSEONG PIEUP-SIOS-TIKEUT;Lo;0;L;;;;;N;;;;; -D7E8;HANGUL JONGSEONG PIEUP-CIEUC;Lo;0;L;;;;;N;;;;; -D7E9;HANGUL JONGSEONG PIEUP-CHIEUCH;Lo;0;L;;;;;N;;;;; -D7EA;HANGUL JONGSEONG SIOS-MIEUM;Lo;0;L;;;;;N;;;;; -D7EB;HANGUL JONGSEONG SIOS-KAPYEOUNPIEUP;Lo;0;L;;;;;N;;;;; -D7EC;HANGUL JONGSEONG SSANGSIOS-KIYEOK;Lo;0;L;;;;;N;;;;; -D7ED;HANGUL JONGSEONG SSANGSIOS-TIKEUT;Lo;0;L;;;;;N;;;;; -D7EE;HANGUL JONGSEONG SIOS-PANSIOS;Lo;0;L;;;;;N;;;;; -D7EF;HANGUL JONGSEONG SIOS-CIEUC;Lo;0;L;;;;;N;;;;; -D7F0;HANGUL JONGSEONG SIOS-CHIEUCH;Lo;0;L;;;;;N;;;;; -D7F1;HANGUL JONGSEONG SIOS-THIEUTH;Lo;0;L;;;;;N;;;;; -D7F2;HANGUL JONGSEONG SIOS-HIEUH;Lo;0;L;;;;;N;;;;; -D7F3;HANGUL JONGSEONG PANSIOS-PIEUP;Lo;0;L;;;;;N;;;;; -D7F4;HANGUL JONGSEONG PANSIOS-KAPYEOUNPIEUP;Lo;0;L;;;;;N;;;;; -D7F5;HANGUL JONGSEONG YESIEUNG-MIEUM;Lo;0;L;;;;;N;;;;; -D7F6;HANGUL JONGSEONG YESIEUNG-HIEUH;Lo;0;L;;;;;N;;;;; -D7F7;HANGUL JONGSEONG CIEUC-PIEUP;Lo;0;L;;;;;N;;;;; -D7F8;HANGUL JONGSEONG CIEUC-SSANGPIEUP;Lo;0;L;;;;;N;;;;; -D7F9;HANGUL JONGSEONG SSANGCIEUC;Lo;0;L;;;;;N;;;;; -D7FA;HANGUL JONGSEONG PHIEUPH-SIOS;Lo;0;L;;;;;N;;;;; -D7FB;HANGUL JONGSEONG PHIEUPH-THIEUTH;Lo;0;L;;;;;N;;;;; -D800;;Cs;0;L;;;;;N;;;;; -DB7F;;Cs;0;L;;;;;N;;;;; -DB80;;Cs;0;L;;;;;N;;;;; -DBFF;;Cs;0;L;;;;;N;;;;; -DC00;;Cs;0;L;;;;;N;;;;; -DFFF;;Cs;0;L;;;;;N;;;;; -E000;;Co;0;L;;;;;N;;;;; -F8FF;;Co;0;L;;;;;N;;;;; -F900;CJK COMPATIBILITY IDEOGRAPH-F900;Lo;0;L;8C48;;;;N;;;;; -F901;CJK COMPATIBILITY IDEOGRAPH-F901;Lo;0;L;66F4;;;;N;;;;; -F902;CJK COMPATIBILITY IDEOGRAPH-F902;Lo;0;L;8ECA;;;;N;;;;; -F903;CJK COMPATIBILITY IDEOGRAPH-F903;Lo;0;L;8CC8;;;;N;;;;; -F904;CJK COMPATIBILITY IDEOGRAPH-F904;Lo;0;L;6ED1;;;;N;;;;; -F905;CJK COMPATIBILITY IDEOGRAPH-F905;Lo;0;L;4E32;;;;N;;;;; -F906;CJK COMPATIBILITY IDEOGRAPH-F906;Lo;0;L;53E5;;;;N;;;;; -F907;CJK COMPATIBILITY IDEOGRAPH-F907;Lo;0;L;9F9C;;;;N;;;;; -F908;CJK COMPATIBILITY IDEOGRAPH-F908;Lo;0;L;9F9C;;;;N;;;;; -F909;CJK COMPATIBILITY IDEOGRAPH-F909;Lo;0;L;5951;;;;N;;;;; -F90A;CJK COMPATIBILITY IDEOGRAPH-F90A;Lo;0;L;91D1;;;;N;;;;; -F90B;CJK COMPATIBILITY IDEOGRAPH-F90B;Lo;0;L;5587;;;;N;;;;; -F90C;CJK COMPATIBILITY IDEOGRAPH-F90C;Lo;0;L;5948;;;;N;;;;; -F90D;CJK COMPATIBILITY IDEOGRAPH-F90D;Lo;0;L;61F6;;;;N;;;;; -F90E;CJK COMPATIBILITY IDEOGRAPH-F90E;Lo;0;L;7669;;;;N;;;;; -F90F;CJK COMPATIBILITY IDEOGRAPH-F90F;Lo;0;L;7F85;;;;N;;;;; -F910;CJK COMPATIBILITY IDEOGRAPH-F910;Lo;0;L;863F;;;;N;;;;; -F911;CJK COMPATIBILITY IDEOGRAPH-F911;Lo;0;L;87BA;;;;N;;;;; -F912;CJK COMPATIBILITY IDEOGRAPH-F912;Lo;0;L;88F8;;;;N;;;;; -F913;CJK COMPATIBILITY IDEOGRAPH-F913;Lo;0;L;908F;;;;N;;;;; -F914;CJK COMPATIBILITY IDEOGRAPH-F914;Lo;0;L;6A02;;;;N;;;;; -F915;CJK COMPATIBILITY IDEOGRAPH-F915;Lo;0;L;6D1B;;;;N;;;;; -F916;CJK COMPATIBILITY IDEOGRAPH-F916;Lo;0;L;70D9;;;;N;;;;; -F917;CJK COMPATIBILITY IDEOGRAPH-F917;Lo;0;L;73DE;;;;N;;;;; -F918;CJK COMPATIBILITY IDEOGRAPH-F918;Lo;0;L;843D;;;;N;;;;; -F919;CJK COMPATIBILITY IDEOGRAPH-F919;Lo;0;L;916A;;;;N;;;;; -F91A;CJK COMPATIBILITY IDEOGRAPH-F91A;Lo;0;L;99F1;;;;N;;;;; -F91B;CJK COMPATIBILITY IDEOGRAPH-F91B;Lo;0;L;4E82;;;;N;;;;; -F91C;CJK COMPATIBILITY IDEOGRAPH-F91C;Lo;0;L;5375;;;;N;;;;; -F91D;CJK COMPATIBILITY IDEOGRAPH-F91D;Lo;0;L;6B04;;;;N;;;;; -F91E;CJK COMPATIBILITY IDEOGRAPH-F91E;Lo;0;L;721B;;;;N;;;;; -F91F;CJK COMPATIBILITY IDEOGRAPH-F91F;Lo;0;L;862D;;;;N;;;;; -F920;CJK COMPATIBILITY IDEOGRAPH-F920;Lo;0;L;9E1E;;;;N;;;;; -F921;CJK COMPATIBILITY IDEOGRAPH-F921;Lo;0;L;5D50;;;;N;;;;; -F922;CJK COMPATIBILITY IDEOGRAPH-F922;Lo;0;L;6FEB;;;;N;;;;; -F923;CJK COMPATIBILITY IDEOGRAPH-F923;Lo;0;L;85CD;;;;N;;;;; -F924;CJK COMPATIBILITY IDEOGRAPH-F924;Lo;0;L;8964;;;;N;;;;; -F925;CJK COMPATIBILITY IDEOGRAPH-F925;Lo;0;L;62C9;;;;N;;;;; -F926;CJK COMPATIBILITY IDEOGRAPH-F926;Lo;0;L;81D8;;;;N;;;;; -F927;CJK COMPATIBILITY IDEOGRAPH-F927;Lo;0;L;881F;;;;N;;;;; -F928;CJK COMPATIBILITY IDEOGRAPH-F928;Lo;0;L;5ECA;;;;N;;;;; -F929;CJK COMPATIBILITY IDEOGRAPH-F929;Lo;0;L;6717;;;;N;;;;; -F92A;CJK COMPATIBILITY IDEOGRAPH-F92A;Lo;0;L;6D6A;;;;N;;;;; -F92B;CJK COMPATIBILITY IDEOGRAPH-F92B;Lo;0;L;72FC;;;;N;;;;; -F92C;CJK COMPATIBILITY IDEOGRAPH-F92C;Lo;0;L;90CE;;;;N;;;;; -F92D;CJK COMPATIBILITY IDEOGRAPH-F92D;Lo;0;L;4F86;;;;N;;;;; -F92E;CJK COMPATIBILITY IDEOGRAPH-F92E;Lo;0;L;51B7;;;;N;;;;; -F92F;CJK COMPATIBILITY IDEOGRAPH-F92F;Lo;0;L;52DE;;;;N;;;;; -F930;CJK COMPATIBILITY IDEOGRAPH-F930;Lo;0;L;64C4;;;;N;;;;; -F931;CJK COMPATIBILITY IDEOGRAPH-F931;Lo;0;L;6AD3;;;;N;;;;; -F932;CJK COMPATIBILITY IDEOGRAPH-F932;Lo;0;L;7210;;;;N;;;;; -F933;CJK COMPATIBILITY IDEOGRAPH-F933;Lo;0;L;76E7;;;;N;;;;; -F934;CJK COMPATIBILITY IDEOGRAPH-F934;Lo;0;L;8001;;;;N;;;;; -F935;CJK COMPATIBILITY IDEOGRAPH-F935;Lo;0;L;8606;;;;N;;;;; -F936;CJK COMPATIBILITY IDEOGRAPH-F936;Lo;0;L;865C;;;;N;;;;; -F937;CJK COMPATIBILITY IDEOGRAPH-F937;Lo;0;L;8DEF;;;;N;;;;; -F938;CJK COMPATIBILITY IDEOGRAPH-F938;Lo;0;L;9732;;;;N;;;;; -F939;CJK COMPATIBILITY IDEOGRAPH-F939;Lo;0;L;9B6F;;;;N;;;;; -F93A;CJK COMPATIBILITY IDEOGRAPH-F93A;Lo;0;L;9DFA;;;;N;;;;; -F93B;CJK COMPATIBILITY IDEOGRAPH-F93B;Lo;0;L;788C;;;;N;;;;; -F93C;CJK COMPATIBILITY IDEOGRAPH-F93C;Lo;0;L;797F;;;;N;;;;; -F93D;CJK COMPATIBILITY IDEOGRAPH-F93D;Lo;0;L;7DA0;;;;N;;;;; -F93E;CJK COMPATIBILITY IDEOGRAPH-F93E;Lo;0;L;83C9;;;;N;;;;; -F93F;CJK COMPATIBILITY IDEOGRAPH-F93F;Lo;0;L;9304;;;;N;;;;; -F940;CJK COMPATIBILITY IDEOGRAPH-F940;Lo;0;L;9E7F;;;;N;;;;; -F941;CJK COMPATIBILITY IDEOGRAPH-F941;Lo;0;L;8AD6;;;;N;;;;; -F942;CJK COMPATIBILITY IDEOGRAPH-F942;Lo;0;L;58DF;;;;N;;;;; -F943;CJK COMPATIBILITY IDEOGRAPH-F943;Lo;0;L;5F04;;;;N;;;;; -F944;CJK COMPATIBILITY IDEOGRAPH-F944;Lo;0;L;7C60;;;;N;;;;; -F945;CJK COMPATIBILITY IDEOGRAPH-F945;Lo;0;L;807E;;;;N;;;;; -F946;CJK COMPATIBILITY IDEOGRAPH-F946;Lo;0;L;7262;;;;N;;;;; -F947;CJK COMPATIBILITY IDEOGRAPH-F947;Lo;0;L;78CA;;;;N;;;;; -F948;CJK COMPATIBILITY IDEOGRAPH-F948;Lo;0;L;8CC2;;;;N;;;;; -F949;CJK COMPATIBILITY IDEOGRAPH-F949;Lo;0;L;96F7;;;;N;;;;; -F94A;CJK COMPATIBILITY IDEOGRAPH-F94A;Lo;0;L;58D8;;;;N;;;;; -F94B;CJK COMPATIBILITY IDEOGRAPH-F94B;Lo;0;L;5C62;;;;N;;;;; -F94C;CJK COMPATIBILITY IDEOGRAPH-F94C;Lo;0;L;6A13;;;;N;;;;; -F94D;CJK COMPATIBILITY IDEOGRAPH-F94D;Lo;0;L;6DDA;;;;N;;;;; -F94E;CJK COMPATIBILITY IDEOGRAPH-F94E;Lo;0;L;6F0F;;;;N;;;;; -F94F;CJK COMPATIBILITY IDEOGRAPH-F94F;Lo;0;L;7D2F;;;;N;;;;; -F950;CJK COMPATIBILITY IDEOGRAPH-F950;Lo;0;L;7E37;;;;N;;;;; -F951;CJK COMPATIBILITY IDEOGRAPH-F951;Lo;0;L;964B;;;;N;;;;; -F952;CJK COMPATIBILITY IDEOGRAPH-F952;Lo;0;L;52D2;;;;N;;;;; -F953;CJK COMPATIBILITY IDEOGRAPH-F953;Lo;0;L;808B;;;;N;;;;; -F954;CJK COMPATIBILITY IDEOGRAPH-F954;Lo;0;L;51DC;;;;N;;;;; -F955;CJK COMPATIBILITY IDEOGRAPH-F955;Lo;0;L;51CC;;;;N;;;;; -F956;CJK COMPATIBILITY IDEOGRAPH-F956;Lo;0;L;7A1C;;;;N;;;;; -F957;CJK COMPATIBILITY IDEOGRAPH-F957;Lo;0;L;7DBE;;;;N;;;;; -F958;CJK COMPATIBILITY IDEOGRAPH-F958;Lo;0;L;83F1;;;;N;;;;; -F959;CJK COMPATIBILITY IDEOGRAPH-F959;Lo;0;L;9675;;;;N;;;;; -F95A;CJK COMPATIBILITY IDEOGRAPH-F95A;Lo;0;L;8B80;;;;N;;;;; -F95B;CJK COMPATIBILITY IDEOGRAPH-F95B;Lo;0;L;62CF;;;;N;;;;; -F95C;CJK COMPATIBILITY IDEOGRAPH-F95C;Lo;0;L;6A02;;;;N;;;;; -F95D;CJK COMPATIBILITY IDEOGRAPH-F95D;Lo;0;L;8AFE;;;;N;;;;; -F95E;CJK COMPATIBILITY IDEOGRAPH-F95E;Lo;0;L;4E39;;;;N;;;;; -F95F;CJK COMPATIBILITY IDEOGRAPH-F95F;Lo;0;L;5BE7;;;;N;;;;; -F960;CJK COMPATIBILITY IDEOGRAPH-F960;Lo;0;L;6012;;;;N;;;;; -F961;CJK COMPATIBILITY IDEOGRAPH-F961;Lo;0;L;7387;;;;N;;;;; -F962;CJK COMPATIBILITY IDEOGRAPH-F962;Lo;0;L;7570;;;;N;;;;; -F963;CJK COMPATIBILITY IDEOGRAPH-F963;Lo;0;L;5317;;;;N;;;;; -F964;CJK COMPATIBILITY IDEOGRAPH-F964;Lo;0;L;78FB;;;;N;;;;; -F965;CJK COMPATIBILITY IDEOGRAPH-F965;Lo;0;L;4FBF;;;;N;;;;; -F966;CJK COMPATIBILITY IDEOGRAPH-F966;Lo;0;L;5FA9;;;;N;;;;; -F967;CJK COMPATIBILITY IDEOGRAPH-F967;Lo;0;L;4E0D;;;;N;;;;; -F968;CJK COMPATIBILITY IDEOGRAPH-F968;Lo;0;L;6CCC;;;;N;;;;; -F969;CJK COMPATIBILITY IDEOGRAPH-F969;Lo;0;L;6578;;;;N;;;;; -F96A;CJK COMPATIBILITY IDEOGRAPH-F96A;Lo;0;L;7D22;;;;N;;;;; -F96B;CJK COMPATIBILITY IDEOGRAPH-F96B;Lo;0;L;53C3;;;3;N;;;;; -F96C;CJK COMPATIBILITY IDEOGRAPH-F96C;Lo;0;L;585E;;;;N;;;;; -F96D;CJK COMPATIBILITY IDEOGRAPH-F96D;Lo;0;L;7701;;;;N;;;;; -F96E;CJK COMPATIBILITY IDEOGRAPH-F96E;Lo;0;L;8449;;;;N;;;;; -F96F;CJK COMPATIBILITY IDEOGRAPH-F96F;Lo;0;L;8AAA;;;;N;;;;; -F970;CJK COMPATIBILITY IDEOGRAPH-F970;Lo;0;L;6BBA;;;;N;;;;; -F971;CJK COMPATIBILITY IDEOGRAPH-F971;Lo;0;L;8FB0;;;;N;;;;; -F972;CJK COMPATIBILITY IDEOGRAPH-F972;Lo;0;L;6C88;;;;N;;;;; -F973;CJK COMPATIBILITY IDEOGRAPH-F973;Lo;0;L;62FE;;;10;N;;;;; -F974;CJK COMPATIBILITY IDEOGRAPH-F974;Lo;0;L;82E5;;;;N;;;;; -F975;CJK COMPATIBILITY IDEOGRAPH-F975;Lo;0;L;63A0;;;;N;;;;; -F976;CJK COMPATIBILITY IDEOGRAPH-F976;Lo;0;L;7565;;;;N;;;;; -F977;CJK COMPATIBILITY IDEOGRAPH-F977;Lo;0;L;4EAE;;;;N;;;;; -F978;CJK COMPATIBILITY IDEOGRAPH-F978;Lo;0;L;5169;;;2;N;;;;; -F979;CJK COMPATIBILITY IDEOGRAPH-F979;Lo;0;L;51C9;;;;N;;;;; -F97A;CJK COMPATIBILITY IDEOGRAPH-F97A;Lo;0;L;6881;;;;N;;;;; -F97B;CJK COMPATIBILITY IDEOGRAPH-F97B;Lo;0;L;7CE7;;;;N;;;;; -F97C;CJK COMPATIBILITY IDEOGRAPH-F97C;Lo;0;L;826F;;;;N;;;;; -F97D;CJK COMPATIBILITY IDEOGRAPH-F97D;Lo;0;L;8AD2;;;;N;;;;; -F97E;CJK COMPATIBILITY IDEOGRAPH-F97E;Lo;0;L;91CF;;;;N;;;;; -F97F;CJK COMPATIBILITY IDEOGRAPH-F97F;Lo;0;L;52F5;;;;N;;;;; -F980;CJK COMPATIBILITY IDEOGRAPH-F980;Lo;0;L;5442;;;;N;;;;; -F981;CJK COMPATIBILITY IDEOGRAPH-F981;Lo;0;L;5973;;;;N;;;;; -F982;CJK COMPATIBILITY IDEOGRAPH-F982;Lo;0;L;5EEC;;;;N;;;;; -F983;CJK COMPATIBILITY IDEOGRAPH-F983;Lo;0;L;65C5;;;;N;;;;; -F984;CJK COMPATIBILITY IDEOGRAPH-F984;Lo;0;L;6FFE;;;;N;;;;; -F985;CJK COMPATIBILITY IDEOGRAPH-F985;Lo;0;L;792A;;;;N;;;;; -F986;CJK COMPATIBILITY IDEOGRAPH-F986;Lo;0;L;95AD;;;;N;;;;; -F987;CJK COMPATIBILITY IDEOGRAPH-F987;Lo;0;L;9A6A;;;;N;;;;; -F988;CJK COMPATIBILITY IDEOGRAPH-F988;Lo;0;L;9E97;;;;N;;;;; -F989;CJK COMPATIBILITY IDEOGRAPH-F989;Lo;0;L;9ECE;;;;N;;;;; -F98A;CJK COMPATIBILITY IDEOGRAPH-F98A;Lo;0;L;529B;;;;N;;;;; -F98B;CJK COMPATIBILITY IDEOGRAPH-F98B;Lo;0;L;66C6;;;;N;;;;; -F98C;CJK COMPATIBILITY IDEOGRAPH-F98C;Lo;0;L;6B77;;;;N;;;;; -F98D;CJK COMPATIBILITY IDEOGRAPH-F98D;Lo;0;L;8F62;;;;N;;;;; -F98E;CJK COMPATIBILITY IDEOGRAPH-F98E;Lo;0;L;5E74;;;;N;;;;; -F98F;CJK COMPATIBILITY IDEOGRAPH-F98F;Lo;0;L;6190;;;;N;;;;; -F990;CJK COMPATIBILITY IDEOGRAPH-F990;Lo;0;L;6200;;;;N;;;;; -F991;CJK COMPATIBILITY IDEOGRAPH-F991;Lo;0;L;649A;;;;N;;;;; -F992;CJK COMPATIBILITY IDEOGRAPH-F992;Lo;0;L;6F23;;;;N;;;;; -F993;CJK COMPATIBILITY IDEOGRAPH-F993;Lo;0;L;7149;;;;N;;;;; -F994;CJK COMPATIBILITY IDEOGRAPH-F994;Lo;0;L;7489;;;;N;;;;; -F995;CJK COMPATIBILITY IDEOGRAPH-F995;Lo;0;L;79CA;;;;N;;;;; -F996;CJK COMPATIBILITY IDEOGRAPH-F996;Lo;0;L;7DF4;;;;N;;;;; -F997;CJK COMPATIBILITY IDEOGRAPH-F997;Lo;0;L;806F;;;;N;;;;; -F998;CJK COMPATIBILITY IDEOGRAPH-F998;Lo;0;L;8F26;;;;N;;;;; -F999;CJK COMPATIBILITY IDEOGRAPH-F999;Lo;0;L;84EE;;;;N;;;;; -F99A;CJK COMPATIBILITY IDEOGRAPH-F99A;Lo;0;L;9023;;;;N;;;;; -F99B;CJK COMPATIBILITY IDEOGRAPH-F99B;Lo;0;L;934A;;;;N;;;;; -F99C;CJK COMPATIBILITY IDEOGRAPH-F99C;Lo;0;L;5217;;;;N;;;;; -F99D;CJK COMPATIBILITY IDEOGRAPH-F99D;Lo;0;L;52A3;;;;N;;;;; -F99E;CJK COMPATIBILITY IDEOGRAPH-F99E;Lo;0;L;54BD;;;;N;;;;; -F99F;CJK COMPATIBILITY IDEOGRAPH-F99F;Lo;0;L;70C8;;;;N;;;;; -F9A0;CJK COMPATIBILITY IDEOGRAPH-F9A0;Lo;0;L;88C2;;;;N;;;;; -F9A1;CJK COMPATIBILITY IDEOGRAPH-F9A1;Lo;0;L;8AAA;;;;N;;;;; -F9A2;CJK COMPATIBILITY IDEOGRAPH-F9A2;Lo;0;L;5EC9;;;;N;;;;; -F9A3;CJK COMPATIBILITY IDEOGRAPH-F9A3;Lo;0;L;5FF5;;;;N;;;;; -F9A4;CJK COMPATIBILITY IDEOGRAPH-F9A4;Lo;0;L;637B;;;;N;;;;; -F9A5;CJK COMPATIBILITY IDEOGRAPH-F9A5;Lo;0;L;6BAE;;;;N;;;;; -F9A6;CJK COMPATIBILITY IDEOGRAPH-F9A6;Lo;0;L;7C3E;;;;N;;;;; -F9A7;CJK COMPATIBILITY IDEOGRAPH-F9A7;Lo;0;L;7375;;;;N;;;;; -F9A8;CJK COMPATIBILITY IDEOGRAPH-F9A8;Lo;0;L;4EE4;;;;N;;;;; -F9A9;CJK COMPATIBILITY IDEOGRAPH-F9A9;Lo;0;L;56F9;;;;N;;;;; -F9AA;CJK COMPATIBILITY IDEOGRAPH-F9AA;Lo;0;L;5BE7;;;;N;;;;; -F9AB;CJK COMPATIBILITY IDEOGRAPH-F9AB;Lo;0;L;5DBA;;;;N;;;;; -F9AC;CJK COMPATIBILITY IDEOGRAPH-F9AC;Lo;0;L;601C;;;;N;;;;; -F9AD;CJK COMPATIBILITY IDEOGRAPH-F9AD;Lo;0;L;73B2;;;;N;;;;; -F9AE;CJK COMPATIBILITY IDEOGRAPH-F9AE;Lo;0;L;7469;;;;N;;;;; -F9AF;CJK COMPATIBILITY IDEOGRAPH-F9AF;Lo;0;L;7F9A;;;;N;;;;; -F9B0;CJK COMPATIBILITY IDEOGRAPH-F9B0;Lo;0;L;8046;;;;N;;;;; -F9B1;CJK COMPATIBILITY IDEOGRAPH-F9B1;Lo;0;L;9234;;;;N;;;;; -F9B2;CJK COMPATIBILITY IDEOGRAPH-F9B2;Lo;0;L;96F6;;;0;N;;;;; -F9B3;CJK COMPATIBILITY IDEOGRAPH-F9B3;Lo;0;L;9748;;;;N;;;;; -F9B4;CJK COMPATIBILITY IDEOGRAPH-F9B4;Lo;0;L;9818;;;;N;;;;; -F9B5;CJK COMPATIBILITY IDEOGRAPH-F9B5;Lo;0;L;4F8B;;;;N;;;;; -F9B6;CJK COMPATIBILITY IDEOGRAPH-F9B6;Lo;0;L;79AE;;;;N;;;;; -F9B7;CJK COMPATIBILITY IDEOGRAPH-F9B7;Lo;0;L;91B4;;;;N;;;;; -F9B8;CJK COMPATIBILITY IDEOGRAPH-F9B8;Lo;0;L;96B8;;;;N;;;;; -F9B9;CJK COMPATIBILITY IDEOGRAPH-F9B9;Lo;0;L;60E1;;;;N;;;;; -F9BA;CJK COMPATIBILITY IDEOGRAPH-F9BA;Lo;0;L;4E86;;;;N;;;;; -F9BB;CJK COMPATIBILITY IDEOGRAPH-F9BB;Lo;0;L;50DA;;;;N;;;;; -F9BC;CJK COMPATIBILITY IDEOGRAPH-F9BC;Lo;0;L;5BEE;;;;N;;;;; -F9BD;CJK COMPATIBILITY IDEOGRAPH-F9BD;Lo;0;L;5C3F;;;;N;;;;; -F9BE;CJK COMPATIBILITY IDEOGRAPH-F9BE;Lo;0;L;6599;;;;N;;;;; -F9BF;CJK COMPATIBILITY IDEOGRAPH-F9BF;Lo;0;L;6A02;;;;N;;;;; -F9C0;CJK COMPATIBILITY IDEOGRAPH-F9C0;Lo;0;L;71CE;;;;N;;;;; -F9C1;CJK COMPATIBILITY IDEOGRAPH-F9C1;Lo;0;L;7642;;;;N;;;;; -F9C2;CJK COMPATIBILITY IDEOGRAPH-F9C2;Lo;0;L;84FC;;;;N;;;;; -F9C3;CJK COMPATIBILITY IDEOGRAPH-F9C3;Lo;0;L;907C;;;;N;;;;; -F9C4;CJK COMPATIBILITY IDEOGRAPH-F9C4;Lo;0;L;9F8D;;;;N;;;;; -F9C5;CJK COMPATIBILITY IDEOGRAPH-F9C5;Lo;0;L;6688;;;;N;;;;; -F9C6;CJK COMPATIBILITY IDEOGRAPH-F9C6;Lo;0;L;962E;;;;N;;;;; -F9C7;CJK COMPATIBILITY IDEOGRAPH-F9C7;Lo;0;L;5289;;;;N;;;;; -F9C8;CJK COMPATIBILITY IDEOGRAPH-F9C8;Lo;0;L;677B;;;;N;;;;; -F9C9;CJK COMPATIBILITY IDEOGRAPH-F9C9;Lo;0;L;67F3;;;;N;;;;; -F9CA;CJK COMPATIBILITY IDEOGRAPH-F9CA;Lo;0;L;6D41;;;;N;;;;; -F9CB;CJK COMPATIBILITY IDEOGRAPH-F9CB;Lo;0;L;6E9C;;;;N;;;;; -F9CC;CJK COMPATIBILITY IDEOGRAPH-F9CC;Lo;0;L;7409;;;;N;;;;; -F9CD;CJK COMPATIBILITY IDEOGRAPH-F9CD;Lo;0;L;7559;;;;N;;;;; -F9CE;CJK COMPATIBILITY IDEOGRAPH-F9CE;Lo;0;L;786B;;;;N;;;;; -F9CF;CJK COMPATIBILITY IDEOGRAPH-F9CF;Lo;0;L;7D10;;;;N;;;;; -F9D0;CJK COMPATIBILITY IDEOGRAPH-F9D0;Lo;0;L;985E;;;;N;;;;; -F9D1;CJK COMPATIBILITY IDEOGRAPH-F9D1;Lo;0;L;516D;;;6;N;;;;; -F9D2;CJK COMPATIBILITY IDEOGRAPH-F9D2;Lo;0;L;622E;;;;N;;;;; -F9D3;CJK COMPATIBILITY IDEOGRAPH-F9D3;Lo;0;L;9678;;;6;N;;;;; -F9D4;CJK COMPATIBILITY IDEOGRAPH-F9D4;Lo;0;L;502B;;;;N;;;;; -F9D5;CJK COMPATIBILITY IDEOGRAPH-F9D5;Lo;0;L;5D19;;;;N;;;;; -F9D6;CJK COMPATIBILITY IDEOGRAPH-F9D6;Lo;0;L;6DEA;;;;N;;;;; -F9D7;CJK COMPATIBILITY IDEOGRAPH-F9D7;Lo;0;L;8F2A;;;;N;;;;; -F9D8;CJK COMPATIBILITY IDEOGRAPH-F9D8;Lo;0;L;5F8B;;;;N;;;;; -F9D9;CJK COMPATIBILITY IDEOGRAPH-F9D9;Lo;0;L;6144;;;;N;;;;; -F9DA;CJK COMPATIBILITY IDEOGRAPH-F9DA;Lo;0;L;6817;;;;N;;;;; -F9DB;CJK COMPATIBILITY IDEOGRAPH-F9DB;Lo;0;L;7387;;;;N;;;;; -F9DC;CJK COMPATIBILITY IDEOGRAPH-F9DC;Lo;0;L;9686;;;;N;;;;; -F9DD;CJK COMPATIBILITY IDEOGRAPH-F9DD;Lo;0;L;5229;;;;N;;;;; -F9DE;CJK COMPATIBILITY IDEOGRAPH-F9DE;Lo;0;L;540F;;;;N;;;;; -F9DF;CJK COMPATIBILITY IDEOGRAPH-F9DF;Lo;0;L;5C65;;;;N;;;;; -F9E0;CJK COMPATIBILITY IDEOGRAPH-F9E0;Lo;0;L;6613;;;;N;;;;; -F9E1;CJK COMPATIBILITY IDEOGRAPH-F9E1;Lo;0;L;674E;;;;N;;;;; -F9E2;CJK COMPATIBILITY IDEOGRAPH-F9E2;Lo;0;L;68A8;;;;N;;;;; -F9E3;CJK COMPATIBILITY IDEOGRAPH-F9E3;Lo;0;L;6CE5;;;;N;;;;; -F9E4;CJK COMPATIBILITY IDEOGRAPH-F9E4;Lo;0;L;7406;;;;N;;;;; -F9E5;CJK COMPATIBILITY IDEOGRAPH-F9E5;Lo;0;L;75E2;;;;N;;;;; -F9E6;CJK COMPATIBILITY IDEOGRAPH-F9E6;Lo;0;L;7F79;;;;N;;;;; -F9E7;CJK COMPATIBILITY IDEOGRAPH-F9E7;Lo;0;L;88CF;;;;N;;;;; -F9E8;CJK COMPATIBILITY IDEOGRAPH-F9E8;Lo;0;L;88E1;;;;N;;;;; -F9E9;CJK COMPATIBILITY IDEOGRAPH-F9E9;Lo;0;L;91CC;;;;N;;;;; -F9EA;CJK COMPATIBILITY IDEOGRAPH-F9EA;Lo;0;L;96E2;;;;N;;;;; -F9EB;CJK COMPATIBILITY IDEOGRAPH-F9EB;Lo;0;L;533F;;;;N;;;;; -F9EC;CJK COMPATIBILITY IDEOGRAPH-F9EC;Lo;0;L;6EBA;;;;N;;;;; -F9ED;CJK COMPATIBILITY IDEOGRAPH-F9ED;Lo;0;L;541D;;;;N;;;;; -F9EE;CJK COMPATIBILITY IDEOGRAPH-F9EE;Lo;0;L;71D0;;;;N;;;;; -F9EF;CJK COMPATIBILITY IDEOGRAPH-F9EF;Lo;0;L;7498;;;;N;;;;; -F9F0;CJK COMPATIBILITY IDEOGRAPH-F9F0;Lo;0;L;85FA;;;;N;;;;; -F9F1;CJK COMPATIBILITY IDEOGRAPH-F9F1;Lo;0;L;96A3;;;;N;;;;; -F9F2;CJK COMPATIBILITY IDEOGRAPH-F9F2;Lo;0;L;9C57;;;;N;;;;; -F9F3;CJK COMPATIBILITY IDEOGRAPH-F9F3;Lo;0;L;9E9F;;;;N;;;;; -F9F4;CJK COMPATIBILITY IDEOGRAPH-F9F4;Lo;0;L;6797;;;;N;;;;; -F9F5;CJK COMPATIBILITY IDEOGRAPH-F9F5;Lo;0;L;6DCB;;;;N;;;;; -F9F6;CJK COMPATIBILITY IDEOGRAPH-F9F6;Lo;0;L;81E8;;;;N;;;;; -F9F7;CJK COMPATIBILITY IDEOGRAPH-F9F7;Lo;0;L;7ACB;;;;N;;;;; -F9F8;CJK COMPATIBILITY IDEOGRAPH-F9F8;Lo;0;L;7B20;;;;N;;;;; -F9F9;CJK COMPATIBILITY IDEOGRAPH-F9F9;Lo;0;L;7C92;;;;N;;;;; -F9FA;CJK COMPATIBILITY IDEOGRAPH-F9FA;Lo;0;L;72C0;;;;N;;;;; -F9FB;CJK COMPATIBILITY IDEOGRAPH-F9FB;Lo;0;L;7099;;;;N;;;;; -F9FC;CJK COMPATIBILITY IDEOGRAPH-F9FC;Lo;0;L;8B58;;;;N;;;;; -F9FD;CJK COMPATIBILITY IDEOGRAPH-F9FD;Lo;0;L;4EC0;;;10;N;;;;; -F9FE;CJK COMPATIBILITY IDEOGRAPH-F9FE;Lo;0;L;8336;;;;N;;;;; -F9FF;CJK COMPATIBILITY IDEOGRAPH-F9FF;Lo;0;L;523A;;;;N;;;;; -FA00;CJK COMPATIBILITY IDEOGRAPH-FA00;Lo;0;L;5207;;;;N;;;;; -FA01;CJK COMPATIBILITY IDEOGRAPH-FA01;Lo;0;L;5EA6;;;;N;;;;; -FA02;CJK COMPATIBILITY IDEOGRAPH-FA02;Lo;0;L;62D3;;;;N;;;;; -FA03;CJK COMPATIBILITY IDEOGRAPH-FA03;Lo;0;L;7CD6;;;;N;;;;; -FA04;CJK COMPATIBILITY IDEOGRAPH-FA04;Lo;0;L;5B85;;;;N;;;;; -FA05;CJK COMPATIBILITY IDEOGRAPH-FA05;Lo;0;L;6D1E;;;;N;;;;; -FA06;CJK COMPATIBILITY IDEOGRAPH-FA06;Lo;0;L;66B4;;;;N;;;;; -FA07;CJK COMPATIBILITY IDEOGRAPH-FA07;Lo;0;L;8F3B;;;;N;;;;; -FA08;CJK COMPATIBILITY IDEOGRAPH-FA08;Lo;0;L;884C;;;;N;;;;; -FA09;CJK COMPATIBILITY IDEOGRAPH-FA09;Lo;0;L;964D;;;;N;;;;; -FA0A;CJK COMPATIBILITY IDEOGRAPH-FA0A;Lo;0;L;898B;;;;N;;;;; -FA0B;CJK COMPATIBILITY IDEOGRAPH-FA0B;Lo;0;L;5ED3;;;;N;;;;; -FA0C;CJK COMPATIBILITY IDEOGRAPH-FA0C;Lo;0;L;5140;;;;N;;;;; -FA0D;CJK COMPATIBILITY IDEOGRAPH-FA0D;Lo;0;L;55C0;;;;N;;;;; -FA0E;CJK COMPATIBILITY IDEOGRAPH-FA0E;Lo;0;L;;;;;N;;;;; -FA0F;CJK COMPATIBILITY IDEOGRAPH-FA0F;Lo;0;L;;;;;N;;;;; -FA10;CJK COMPATIBILITY IDEOGRAPH-FA10;Lo;0;L;585A;;;;N;;;;; -FA11;CJK COMPATIBILITY IDEOGRAPH-FA11;Lo;0;L;;;;;N;;;;; -FA12;CJK COMPATIBILITY IDEOGRAPH-FA12;Lo;0;L;6674;;;;N;;;;; -FA13;CJK COMPATIBILITY IDEOGRAPH-FA13;Lo;0;L;;;;;N;;;;; -FA14;CJK COMPATIBILITY IDEOGRAPH-FA14;Lo;0;L;;;;;N;;;;; -FA15;CJK COMPATIBILITY IDEOGRAPH-FA15;Lo;0;L;51DE;;;;N;;;;; -FA16;CJK COMPATIBILITY IDEOGRAPH-FA16;Lo;0;L;732A;;;;N;;;;; -FA17;CJK COMPATIBILITY IDEOGRAPH-FA17;Lo;0;L;76CA;;;;N;;;;; -FA18;CJK COMPATIBILITY IDEOGRAPH-FA18;Lo;0;L;793C;;;;N;;;;; -FA19;CJK COMPATIBILITY IDEOGRAPH-FA19;Lo;0;L;795E;;;;N;;;;; -FA1A;CJK COMPATIBILITY IDEOGRAPH-FA1A;Lo;0;L;7965;;;;N;;;;; -FA1B;CJK COMPATIBILITY IDEOGRAPH-FA1B;Lo;0;L;798F;;;;N;;;;; -FA1C;CJK COMPATIBILITY IDEOGRAPH-FA1C;Lo;0;L;9756;;;;N;;;;; -FA1D;CJK COMPATIBILITY IDEOGRAPH-FA1D;Lo;0;L;7CBE;;;;N;;;;; -FA1E;CJK COMPATIBILITY IDEOGRAPH-FA1E;Lo;0;L;7FBD;;;;N;;;;; -FA1F;CJK COMPATIBILITY IDEOGRAPH-FA1F;Lo;0;L;;;;;N;;;;; -FA20;CJK COMPATIBILITY IDEOGRAPH-FA20;Lo;0;L;8612;;;;N;;;;; -FA21;CJK COMPATIBILITY IDEOGRAPH-FA21;Lo;0;L;;;;;N;;;;; -FA22;CJK COMPATIBILITY IDEOGRAPH-FA22;Lo;0;L;8AF8;;;;N;;;;; -FA23;CJK COMPATIBILITY IDEOGRAPH-FA23;Lo;0;L;;;;;N;;;;; -FA24;CJK COMPATIBILITY IDEOGRAPH-FA24;Lo;0;L;;;;;N;;;;; -FA25;CJK COMPATIBILITY IDEOGRAPH-FA25;Lo;0;L;9038;;;;N;;;;; -FA26;CJK COMPATIBILITY IDEOGRAPH-FA26;Lo;0;L;90FD;;;;N;;;;; -FA27;CJK COMPATIBILITY IDEOGRAPH-FA27;Lo;0;L;;;;;N;;;;; -FA28;CJK COMPATIBILITY IDEOGRAPH-FA28;Lo;0;L;;;;;N;;;;; -FA29;CJK COMPATIBILITY IDEOGRAPH-FA29;Lo;0;L;;;;;N;;;;; -FA2A;CJK COMPATIBILITY IDEOGRAPH-FA2A;Lo;0;L;98EF;;;;N;;;;; -FA2B;CJK COMPATIBILITY IDEOGRAPH-FA2B;Lo;0;L;98FC;;;;N;;;;; -FA2C;CJK COMPATIBILITY IDEOGRAPH-FA2C;Lo;0;L;9928;;;;N;;;;; -FA2D;CJK COMPATIBILITY IDEOGRAPH-FA2D;Lo;0;L;9DB4;;;;N;;;;; -FA30;CJK COMPATIBILITY IDEOGRAPH-FA30;Lo;0;L;4FAE;;;;N;;;;; -FA31;CJK COMPATIBILITY IDEOGRAPH-FA31;Lo;0;L;50E7;;;;N;;;;; -FA32;CJK COMPATIBILITY IDEOGRAPH-FA32;Lo;0;L;514D;;;;N;;;;; -FA33;CJK COMPATIBILITY IDEOGRAPH-FA33;Lo;0;L;52C9;;;;N;;;;; -FA34;CJK COMPATIBILITY IDEOGRAPH-FA34;Lo;0;L;52E4;;;;N;;;;; -FA35;CJK COMPATIBILITY IDEOGRAPH-FA35;Lo;0;L;5351;;;;N;;;;; -FA36;CJK COMPATIBILITY IDEOGRAPH-FA36;Lo;0;L;559D;;;;N;;;;; -FA37;CJK COMPATIBILITY IDEOGRAPH-FA37;Lo;0;L;5606;;;;N;;;;; -FA38;CJK COMPATIBILITY IDEOGRAPH-FA38;Lo;0;L;5668;;;;N;;;;; -FA39;CJK COMPATIBILITY IDEOGRAPH-FA39;Lo;0;L;5840;;;;N;;;;; -FA3A;CJK COMPATIBILITY IDEOGRAPH-FA3A;Lo;0;L;58A8;;;;N;;;;; -FA3B;CJK COMPATIBILITY IDEOGRAPH-FA3B;Lo;0;L;5C64;;;;N;;;;; -FA3C;CJK COMPATIBILITY IDEOGRAPH-FA3C;Lo;0;L;5C6E;;;;N;;;;; -FA3D;CJK COMPATIBILITY IDEOGRAPH-FA3D;Lo;0;L;6094;;;;N;;;;; -FA3E;CJK COMPATIBILITY IDEOGRAPH-FA3E;Lo;0;L;6168;;;;N;;;;; -FA3F;CJK COMPATIBILITY IDEOGRAPH-FA3F;Lo;0;L;618E;;;;N;;;;; -FA40;CJK COMPATIBILITY IDEOGRAPH-FA40;Lo;0;L;61F2;;;;N;;;;; -FA41;CJK COMPATIBILITY IDEOGRAPH-FA41;Lo;0;L;654F;;;;N;;;;; -FA42;CJK COMPATIBILITY IDEOGRAPH-FA42;Lo;0;L;65E2;;;;N;;;;; -FA43;CJK COMPATIBILITY IDEOGRAPH-FA43;Lo;0;L;6691;;;;N;;;;; -FA44;CJK COMPATIBILITY IDEOGRAPH-FA44;Lo;0;L;6885;;;;N;;;;; -FA45;CJK COMPATIBILITY IDEOGRAPH-FA45;Lo;0;L;6D77;;;;N;;;;; -FA46;CJK COMPATIBILITY IDEOGRAPH-FA46;Lo;0;L;6E1A;;;;N;;;;; -FA47;CJK COMPATIBILITY IDEOGRAPH-FA47;Lo;0;L;6F22;;;;N;;;;; -FA48;CJK COMPATIBILITY IDEOGRAPH-FA48;Lo;0;L;716E;;;;N;;;;; -FA49;CJK COMPATIBILITY IDEOGRAPH-FA49;Lo;0;L;722B;;;;N;;;;; -FA4A;CJK COMPATIBILITY IDEOGRAPH-FA4A;Lo;0;L;7422;;;;N;;;;; -FA4B;CJK COMPATIBILITY IDEOGRAPH-FA4B;Lo;0;L;7891;;;;N;;;;; -FA4C;CJK COMPATIBILITY IDEOGRAPH-FA4C;Lo;0;L;793E;;;;N;;;;; -FA4D;CJK COMPATIBILITY IDEOGRAPH-FA4D;Lo;0;L;7949;;;;N;;;;; -FA4E;CJK COMPATIBILITY IDEOGRAPH-FA4E;Lo;0;L;7948;;;;N;;;;; -FA4F;CJK COMPATIBILITY IDEOGRAPH-FA4F;Lo;0;L;7950;;;;N;;;;; -FA50;CJK COMPATIBILITY IDEOGRAPH-FA50;Lo;0;L;7956;;;;N;;;;; -FA51;CJK COMPATIBILITY IDEOGRAPH-FA51;Lo;0;L;795D;;;;N;;;;; -FA52;CJK COMPATIBILITY IDEOGRAPH-FA52;Lo;0;L;798D;;;;N;;;;; -FA53;CJK COMPATIBILITY IDEOGRAPH-FA53;Lo;0;L;798E;;;;N;;;;; -FA54;CJK COMPATIBILITY IDEOGRAPH-FA54;Lo;0;L;7A40;;;;N;;;;; -FA55;CJK COMPATIBILITY IDEOGRAPH-FA55;Lo;0;L;7A81;;;;N;;;;; -FA56;CJK COMPATIBILITY IDEOGRAPH-FA56;Lo;0;L;7BC0;;;;N;;;;; -FA57;CJK COMPATIBILITY IDEOGRAPH-FA57;Lo;0;L;7DF4;;;;N;;;;; -FA58;CJK COMPATIBILITY IDEOGRAPH-FA58;Lo;0;L;7E09;;;;N;;;;; -FA59;CJK COMPATIBILITY IDEOGRAPH-FA59;Lo;0;L;7E41;;;;N;;;;; -FA5A;CJK COMPATIBILITY IDEOGRAPH-FA5A;Lo;0;L;7F72;;;;N;;;;; -FA5B;CJK COMPATIBILITY IDEOGRAPH-FA5B;Lo;0;L;8005;;;;N;;;;; -FA5C;CJK COMPATIBILITY IDEOGRAPH-FA5C;Lo;0;L;81ED;;;;N;;;;; -FA5D;CJK COMPATIBILITY IDEOGRAPH-FA5D;Lo;0;L;8279;;;;N;;;;; -FA5E;CJK COMPATIBILITY IDEOGRAPH-FA5E;Lo;0;L;8279;;;;N;;;;; -FA5F;CJK COMPATIBILITY IDEOGRAPH-FA5F;Lo;0;L;8457;;;;N;;;;; -FA60;CJK COMPATIBILITY IDEOGRAPH-FA60;Lo;0;L;8910;;;;N;;;;; -FA61;CJK COMPATIBILITY IDEOGRAPH-FA61;Lo;0;L;8996;;;;N;;;;; -FA62;CJK COMPATIBILITY IDEOGRAPH-FA62;Lo;0;L;8B01;;;;N;;;;; -FA63;CJK COMPATIBILITY IDEOGRAPH-FA63;Lo;0;L;8B39;;;;N;;;;; -FA64;CJK COMPATIBILITY IDEOGRAPH-FA64;Lo;0;L;8CD3;;;;N;;;;; -FA65;CJK COMPATIBILITY IDEOGRAPH-FA65;Lo;0;L;8D08;;;;N;;;;; -FA66;CJK COMPATIBILITY IDEOGRAPH-FA66;Lo;0;L;8FB6;;;;N;;;;; -FA67;CJK COMPATIBILITY IDEOGRAPH-FA67;Lo;0;L;9038;;;;N;;;;; -FA68;CJK COMPATIBILITY IDEOGRAPH-FA68;Lo;0;L;96E3;;;;N;;;;; -FA69;CJK COMPATIBILITY IDEOGRAPH-FA69;Lo;0;L;97FF;;;;N;;;;; -FA6A;CJK COMPATIBILITY IDEOGRAPH-FA6A;Lo;0;L;983B;;;;N;;;;; -FA6B;CJK COMPATIBILITY IDEOGRAPH-FA6B;Lo;0;L;6075;;;;N;;;;; -FA6C;CJK COMPATIBILITY IDEOGRAPH-FA6C;Lo;0;L;242EE;;;;N;;;;; -FA6D;CJK COMPATIBILITY IDEOGRAPH-FA6D;Lo;0;L;8218;;;;N;;;;; -FA70;CJK COMPATIBILITY IDEOGRAPH-FA70;Lo;0;L;4E26;;;;N;;;;; -FA71;CJK COMPATIBILITY IDEOGRAPH-FA71;Lo;0;L;51B5;;;;N;;;;; -FA72;CJK COMPATIBILITY IDEOGRAPH-FA72;Lo;0;L;5168;;;;N;;;;; -FA73;CJK COMPATIBILITY IDEOGRAPH-FA73;Lo;0;L;4F80;;;;N;;;;; -FA74;CJK COMPATIBILITY IDEOGRAPH-FA74;Lo;0;L;5145;;;;N;;;;; -FA75;CJK COMPATIBILITY IDEOGRAPH-FA75;Lo;0;L;5180;;;;N;;;;; -FA76;CJK COMPATIBILITY IDEOGRAPH-FA76;Lo;0;L;52C7;;;;N;;;;; -FA77;CJK COMPATIBILITY IDEOGRAPH-FA77;Lo;0;L;52FA;;;;N;;;;; -FA78;CJK COMPATIBILITY IDEOGRAPH-FA78;Lo;0;L;559D;;;;N;;;;; -FA79;CJK COMPATIBILITY IDEOGRAPH-FA79;Lo;0;L;5555;;;;N;;;;; -FA7A;CJK COMPATIBILITY IDEOGRAPH-FA7A;Lo;0;L;5599;;;;N;;;;; -FA7B;CJK COMPATIBILITY IDEOGRAPH-FA7B;Lo;0;L;55E2;;;;N;;;;; -FA7C;CJK COMPATIBILITY IDEOGRAPH-FA7C;Lo;0;L;585A;;;;N;;;;; -FA7D;CJK COMPATIBILITY IDEOGRAPH-FA7D;Lo;0;L;58B3;;;;N;;;;; -FA7E;CJK COMPATIBILITY IDEOGRAPH-FA7E;Lo;0;L;5944;;;;N;;;;; -FA7F;CJK COMPATIBILITY IDEOGRAPH-FA7F;Lo;0;L;5954;;;;N;;;;; -FA80;CJK COMPATIBILITY IDEOGRAPH-FA80;Lo;0;L;5A62;;;;N;;;;; -FA81;CJK COMPATIBILITY IDEOGRAPH-FA81;Lo;0;L;5B28;;;;N;;;;; -FA82;CJK COMPATIBILITY IDEOGRAPH-FA82;Lo;0;L;5ED2;;;;N;;;;; -FA83;CJK COMPATIBILITY IDEOGRAPH-FA83;Lo;0;L;5ED9;;;;N;;;;; -FA84;CJK COMPATIBILITY IDEOGRAPH-FA84;Lo;0;L;5F69;;;;N;;;;; -FA85;CJK COMPATIBILITY IDEOGRAPH-FA85;Lo;0;L;5FAD;;;;N;;;;; -FA86;CJK COMPATIBILITY IDEOGRAPH-FA86;Lo;0;L;60D8;;;;N;;;;; -FA87;CJK COMPATIBILITY IDEOGRAPH-FA87;Lo;0;L;614E;;;;N;;;;; -FA88;CJK COMPATIBILITY IDEOGRAPH-FA88;Lo;0;L;6108;;;;N;;;;; -FA89;CJK COMPATIBILITY IDEOGRAPH-FA89;Lo;0;L;618E;;;;N;;;;; -FA8A;CJK COMPATIBILITY IDEOGRAPH-FA8A;Lo;0;L;6160;;;;N;;;;; -FA8B;CJK COMPATIBILITY IDEOGRAPH-FA8B;Lo;0;L;61F2;;;;N;;;;; -FA8C;CJK COMPATIBILITY IDEOGRAPH-FA8C;Lo;0;L;6234;;;;N;;;;; -FA8D;CJK COMPATIBILITY IDEOGRAPH-FA8D;Lo;0;L;63C4;;;;N;;;;; -FA8E;CJK COMPATIBILITY IDEOGRAPH-FA8E;Lo;0;L;641C;;;;N;;;;; -FA8F;CJK COMPATIBILITY IDEOGRAPH-FA8F;Lo;0;L;6452;;;;N;;;;; -FA90;CJK COMPATIBILITY IDEOGRAPH-FA90;Lo;0;L;6556;;;;N;;;;; -FA91;CJK COMPATIBILITY IDEOGRAPH-FA91;Lo;0;L;6674;;;;N;;;;; -FA92;CJK COMPATIBILITY IDEOGRAPH-FA92;Lo;0;L;6717;;;;N;;;;; -FA93;CJK COMPATIBILITY IDEOGRAPH-FA93;Lo;0;L;671B;;;;N;;;;; -FA94;CJK COMPATIBILITY IDEOGRAPH-FA94;Lo;0;L;6756;;;;N;;;;; -FA95;CJK COMPATIBILITY IDEOGRAPH-FA95;Lo;0;L;6B79;;;;N;;;;; -FA96;CJK COMPATIBILITY IDEOGRAPH-FA96;Lo;0;L;6BBA;;;;N;;;;; -FA97;CJK COMPATIBILITY IDEOGRAPH-FA97;Lo;0;L;6D41;;;;N;;;;; -FA98;CJK COMPATIBILITY IDEOGRAPH-FA98;Lo;0;L;6EDB;;;;N;;;;; -FA99;CJK COMPATIBILITY IDEOGRAPH-FA99;Lo;0;L;6ECB;;;;N;;;;; -FA9A;CJK COMPATIBILITY IDEOGRAPH-FA9A;Lo;0;L;6F22;;;;N;;;;; -FA9B;CJK COMPATIBILITY IDEOGRAPH-FA9B;Lo;0;L;701E;;;;N;;;;; -FA9C;CJK COMPATIBILITY IDEOGRAPH-FA9C;Lo;0;L;716E;;;;N;;;;; -FA9D;CJK COMPATIBILITY IDEOGRAPH-FA9D;Lo;0;L;77A7;;;;N;;;;; -FA9E;CJK COMPATIBILITY IDEOGRAPH-FA9E;Lo;0;L;7235;;;;N;;;;; -FA9F;CJK COMPATIBILITY IDEOGRAPH-FA9F;Lo;0;L;72AF;;;;N;;;;; -FAA0;CJK COMPATIBILITY IDEOGRAPH-FAA0;Lo;0;L;732A;;;;N;;;;; -FAA1;CJK COMPATIBILITY IDEOGRAPH-FAA1;Lo;0;L;7471;;;;N;;;;; -FAA2;CJK COMPATIBILITY IDEOGRAPH-FAA2;Lo;0;L;7506;;;;N;;;;; -FAA3;CJK COMPATIBILITY IDEOGRAPH-FAA3;Lo;0;L;753B;;;;N;;;;; -FAA4;CJK COMPATIBILITY IDEOGRAPH-FAA4;Lo;0;L;761D;;;;N;;;;; -FAA5;CJK COMPATIBILITY IDEOGRAPH-FAA5;Lo;0;L;761F;;;;N;;;;; -FAA6;CJK COMPATIBILITY IDEOGRAPH-FAA6;Lo;0;L;76CA;;;;N;;;;; -FAA7;CJK COMPATIBILITY IDEOGRAPH-FAA7;Lo;0;L;76DB;;;;N;;;;; -FAA8;CJK COMPATIBILITY IDEOGRAPH-FAA8;Lo;0;L;76F4;;;;N;;;;; -FAA9;CJK COMPATIBILITY IDEOGRAPH-FAA9;Lo;0;L;774A;;;;N;;;;; -FAAA;CJK COMPATIBILITY IDEOGRAPH-FAAA;Lo;0;L;7740;;;;N;;;;; -FAAB;CJK COMPATIBILITY IDEOGRAPH-FAAB;Lo;0;L;78CC;;;;N;;;;; -FAAC;CJK COMPATIBILITY IDEOGRAPH-FAAC;Lo;0;L;7AB1;;;;N;;;;; -FAAD;CJK COMPATIBILITY IDEOGRAPH-FAAD;Lo;0;L;7BC0;;;;N;;;;; -FAAE;CJK COMPATIBILITY IDEOGRAPH-FAAE;Lo;0;L;7C7B;;;;N;;;;; -FAAF;CJK COMPATIBILITY IDEOGRAPH-FAAF;Lo;0;L;7D5B;;;;N;;;;; -FAB0;CJK COMPATIBILITY IDEOGRAPH-FAB0;Lo;0;L;7DF4;;;;N;;;;; -FAB1;CJK COMPATIBILITY IDEOGRAPH-FAB1;Lo;0;L;7F3E;;;;N;;;;; -FAB2;CJK COMPATIBILITY IDEOGRAPH-FAB2;Lo;0;L;8005;;;;N;;;;; -FAB3;CJK COMPATIBILITY IDEOGRAPH-FAB3;Lo;0;L;8352;;;;N;;;;; -FAB4;CJK COMPATIBILITY IDEOGRAPH-FAB4;Lo;0;L;83EF;;;;N;;;;; -FAB5;CJK COMPATIBILITY IDEOGRAPH-FAB5;Lo;0;L;8779;;;;N;;;;; -FAB6;CJK COMPATIBILITY IDEOGRAPH-FAB6;Lo;0;L;8941;;;;N;;;;; -FAB7;CJK COMPATIBILITY IDEOGRAPH-FAB7;Lo;0;L;8986;;;;N;;;;; -FAB8;CJK COMPATIBILITY IDEOGRAPH-FAB8;Lo;0;L;8996;;;;N;;;;; -FAB9;CJK COMPATIBILITY IDEOGRAPH-FAB9;Lo;0;L;8ABF;;;;N;;;;; -FABA;CJK COMPATIBILITY IDEOGRAPH-FABA;Lo;0;L;8AF8;;;;N;;;;; -FABB;CJK COMPATIBILITY IDEOGRAPH-FABB;Lo;0;L;8ACB;;;;N;;;;; -FABC;CJK COMPATIBILITY IDEOGRAPH-FABC;Lo;0;L;8B01;;;;N;;;;; -FABD;CJK COMPATIBILITY IDEOGRAPH-FABD;Lo;0;L;8AFE;;;;N;;;;; -FABE;CJK COMPATIBILITY IDEOGRAPH-FABE;Lo;0;L;8AED;;;;N;;;;; -FABF;CJK COMPATIBILITY IDEOGRAPH-FABF;Lo;0;L;8B39;;;;N;;;;; -FAC0;CJK COMPATIBILITY IDEOGRAPH-FAC0;Lo;0;L;8B8A;;;;N;;;;; -FAC1;CJK COMPATIBILITY IDEOGRAPH-FAC1;Lo;0;L;8D08;;;;N;;;;; -FAC2;CJK COMPATIBILITY IDEOGRAPH-FAC2;Lo;0;L;8F38;;;;N;;;;; -FAC3;CJK COMPATIBILITY IDEOGRAPH-FAC3;Lo;0;L;9072;;;;N;;;;; -FAC4;CJK COMPATIBILITY IDEOGRAPH-FAC4;Lo;0;L;9199;;;;N;;;;; -FAC5;CJK COMPATIBILITY IDEOGRAPH-FAC5;Lo;0;L;9276;;;;N;;;;; -FAC6;CJK COMPATIBILITY IDEOGRAPH-FAC6;Lo;0;L;967C;;;;N;;;;; -FAC7;CJK COMPATIBILITY IDEOGRAPH-FAC7;Lo;0;L;96E3;;;;N;;;;; -FAC8;CJK COMPATIBILITY IDEOGRAPH-FAC8;Lo;0;L;9756;;;;N;;;;; -FAC9;CJK COMPATIBILITY IDEOGRAPH-FAC9;Lo;0;L;97DB;;;;N;;;;; -FACA;CJK COMPATIBILITY IDEOGRAPH-FACA;Lo;0;L;97FF;;;;N;;;;; -FACB;CJK COMPATIBILITY IDEOGRAPH-FACB;Lo;0;L;980B;;;;N;;;;; -FACC;CJK COMPATIBILITY IDEOGRAPH-FACC;Lo;0;L;983B;;;;N;;;;; -FACD;CJK COMPATIBILITY IDEOGRAPH-FACD;Lo;0;L;9B12;;;;N;;;;; -FACE;CJK COMPATIBILITY IDEOGRAPH-FACE;Lo;0;L;9F9C;;;;N;;;;; -FACF;CJK COMPATIBILITY IDEOGRAPH-FACF;Lo;0;L;2284A;;;;N;;;;; -FAD0;CJK COMPATIBILITY IDEOGRAPH-FAD0;Lo;0;L;22844;;;;N;;;;; -FAD1;CJK COMPATIBILITY IDEOGRAPH-FAD1;Lo;0;L;233D5;;;;N;;;;; -FAD2;CJK COMPATIBILITY IDEOGRAPH-FAD2;Lo;0;L;3B9D;;;;N;;;;; -FAD3;CJK COMPATIBILITY IDEOGRAPH-FAD3;Lo;0;L;4018;;;;N;;;;; -FAD4;CJK COMPATIBILITY IDEOGRAPH-FAD4;Lo;0;L;4039;;;;N;;;;; -FAD5;CJK COMPATIBILITY IDEOGRAPH-FAD5;Lo;0;L;25249;;;;N;;;;; -FAD6;CJK COMPATIBILITY IDEOGRAPH-FAD6;Lo;0;L;25CD0;;;;N;;;;; -FAD7;CJK COMPATIBILITY IDEOGRAPH-FAD7;Lo;0;L;27ED3;;;;N;;;;; -FAD8;CJK COMPATIBILITY IDEOGRAPH-FAD8;Lo;0;L;9F43;;;;N;;;;; -FAD9;CJK COMPATIBILITY IDEOGRAPH-FAD9;Lo;0;L;9F8E;;;;N;;;;; -FB00;LATIN SMALL LIGATURE FF;Ll;0;L; 0066 0066;;;;N;;;;; -FB01;LATIN SMALL LIGATURE FI;Ll;0;L; 0066 0069;;;;N;;;;; -FB02;LATIN SMALL LIGATURE FL;Ll;0;L; 0066 006C;;;;N;;;;; -FB03;LATIN SMALL LIGATURE FFI;Ll;0;L; 0066 0066 0069;;;;N;;;;; -FB04;LATIN SMALL LIGATURE FFL;Ll;0;L; 0066 0066 006C;;;;N;;;;; -FB05;LATIN SMALL LIGATURE LONG S T;Ll;0;L; 017F 0074;;;;N;;;;; -FB06;LATIN SMALL LIGATURE ST;Ll;0;L; 0073 0074;;;;N;;;;; -FB13;ARMENIAN SMALL LIGATURE MEN NOW;Ll;0;L; 0574 0576;;;;N;;;;; -FB14;ARMENIAN SMALL LIGATURE MEN ECH;Ll;0;L; 0574 0565;;;;N;;;;; -FB15;ARMENIAN SMALL LIGATURE MEN INI;Ll;0;L; 0574 056B;;;;N;;;;; -FB16;ARMENIAN SMALL LIGATURE VEW NOW;Ll;0;L; 057E 0576;;;;N;;;;; -FB17;ARMENIAN SMALL LIGATURE MEN XEH;Ll;0;L; 0574 056D;;;;N;;;;; -FB1D;HEBREW LETTER YOD WITH HIRIQ;Lo;0;R;05D9 05B4;;;;N;;;;; -FB1E;HEBREW POINT JUDEO-SPANISH VARIKA;Mn;26;NSM;;;;;N;HEBREW POINT VARIKA;;;; -FB1F;HEBREW LIGATURE YIDDISH YOD YOD PATAH;Lo;0;R;05F2 05B7;;;;N;;;;; -FB20;HEBREW LETTER ALTERNATIVE AYIN;Lo;0;R; 05E2;;;;N;;;;; -FB21;HEBREW LETTER WIDE ALEF;Lo;0;R; 05D0;;;;N;;;;; -FB22;HEBREW LETTER WIDE DALET;Lo;0;R; 05D3;;;;N;;;;; -FB23;HEBREW LETTER WIDE HE;Lo;0;R; 05D4;;;;N;;;;; -FB24;HEBREW LETTER WIDE KAF;Lo;0;R; 05DB;;;;N;;;;; -FB25;HEBREW LETTER WIDE LAMED;Lo;0;R; 05DC;;;;N;;;;; -FB26;HEBREW LETTER WIDE FINAL MEM;Lo;0;R; 05DD;;;;N;;;;; -FB27;HEBREW LETTER WIDE RESH;Lo;0;R; 05E8;;;;N;;;;; -FB28;HEBREW LETTER WIDE TAV;Lo;0;R; 05EA;;;;N;;;;; -FB29;HEBREW LETTER ALTERNATIVE PLUS SIGN;Sm;0;ES; 002B;;;;N;;;;; -FB2A;HEBREW LETTER SHIN WITH SHIN DOT;Lo;0;R;05E9 05C1;;;;N;;;;; -FB2B;HEBREW LETTER SHIN WITH SIN DOT;Lo;0;R;05E9 05C2;;;;N;;;;; -FB2C;HEBREW LETTER SHIN WITH DAGESH AND SHIN DOT;Lo;0;R;FB49 05C1;;;;N;;;;; -FB2D;HEBREW LETTER SHIN WITH DAGESH AND SIN DOT;Lo;0;R;FB49 05C2;;;;N;;;;; -FB2E;HEBREW LETTER ALEF WITH PATAH;Lo;0;R;05D0 05B7;;;;N;;;;; -FB2F;HEBREW LETTER ALEF WITH QAMATS;Lo;0;R;05D0 05B8;;;;N;;;;; -FB30;HEBREW LETTER ALEF WITH MAPIQ;Lo;0;R;05D0 05BC;;;;N;;;;; -FB31;HEBREW LETTER BET WITH DAGESH;Lo;0;R;05D1 05BC;;;;N;;;;; -FB32;HEBREW LETTER GIMEL WITH DAGESH;Lo;0;R;05D2 05BC;;;;N;;;;; -FB33;HEBREW LETTER DALET WITH DAGESH;Lo;0;R;05D3 05BC;;;;N;;;;; -FB34;HEBREW LETTER HE WITH MAPIQ;Lo;0;R;05D4 05BC;;;;N;;;;; -FB35;HEBREW LETTER VAV WITH DAGESH;Lo;0;R;05D5 05BC;;;;N;;;;; -FB36;HEBREW LETTER ZAYIN WITH DAGESH;Lo;0;R;05D6 05BC;;;;N;;;;; -FB38;HEBREW LETTER TET WITH DAGESH;Lo;0;R;05D8 05BC;;;;N;;;;; -FB39;HEBREW LETTER YOD WITH DAGESH;Lo;0;R;05D9 05BC;;;;N;;;;; -FB3A;HEBREW LETTER FINAL KAF WITH DAGESH;Lo;0;R;05DA 05BC;;;;N;;;;; -FB3B;HEBREW LETTER KAF WITH DAGESH;Lo;0;R;05DB 05BC;;;;N;;;;; -FB3C;HEBREW LETTER LAMED WITH DAGESH;Lo;0;R;05DC 05BC;;;;N;;;;; -FB3E;HEBREW LETTER MEM WITH DAGESH;Lo;0;R;05DE 05BC;;;;N;;;;; -FB40;HEBREW LETTER NUN WITH DAGESH;Lo;0;R;05E0 05BC;;;;N;;;;; -FB41;HEBREW LETTER SAMEKH WITH DAGESH;Lo;0;R;05E1 05BC;;;;N;;;;; -FB43;HEBREW LETTER FINAL PE WITH DAGESH;Lo;0;R;05E3 05BC;;;;N;;;;; -FB44;HEBREW LETTER PE WITH DAGESH;Lo;0;R;05E4 05BC;;;;N;;;;; -FB46;HEBREW LETTER TSADI WITH DAGESH;Lo;0;R;05E6 05BC;;;;N;;;;; -FB47;HEBREW LETTER QOF WITH DAGESH;Lo;0;R;05E7 05BC;;;;N;;;;; -FB48;HEBREW LETTER RESH WITH DAGESH;Lo;0;R;05E8 05BC;;;;N;;;;; -FB49;HEBREW LETTER SHIN WITH DAGESH;Lo;0;R;05E9 05BC;;;;N;;;;; -FB4A;HEBREW LETTER TAV WITH DAGESH;Lo;0;R;05EA 05BC;;;;N;;;;; -FB4B;HEBREW LETTER VAV WITH HOLAM;Lo;0;R;05D5 05B9;;;;N;;;;; -FB4C;HEBREW LETTER BET WITH RAFE;Lo;0;R;05D1 05BF;;;;N;;;;; -FB4D;HEBREW LETTER KAF WITH RAFE;Lo;0;R;05DB 05BF;;;;N;;;;; -FB4E;HEBREW LETTER PE WITH RAFE;Lo;0;R;05E4 05BF;;;;N;;;;; -FB4F;HEBREW LIGATURE ALEF LAMED;Lo;0;R; 05D0 05DC;;;;N;;;;; -FB50;ARABIC LETTER ALEF WASLA ISOLATED FORM;Lo;0;AL; 0671;;;;N;;;;; -FB51;ARABIC LETTER ALEF WASLA FINAL FORM;Lo;0;AL; 0671;;;;N;;;;; -FB52;ARABIC LETTER BEEH ISOLATED FORM;Lo;0;AL; 067B;;;;N;;;;; -FB53;ARABIC LETTER BEEH FINAL FORM;Lo;0;AL; 067B;;;;N;;;;; -FB54;ARABIC LETTER BEEH INITIAL FORM;Lo;0;AL; 067B;;;;N;;;;; -FB55;ARABIC LETTER BEEH MEDIAL FORM;Lo;0;AL; 067B;;;;N;;;;; -FB56;ARABIC LETTER PEH ISOLATED FORM;Lo;0;AL; 067E;;;;N;;;;; -FB57;ARABIC LETTER PEH FINAL FORM;Lo;0;AL; 067E;;;;N;;;;; -FB58;ARABIC LETTER PEH INITIAL FORM;Lo;0;AL; 067E;;;;N;;;;; -FB59;ARABIC LETTER PEH MEDIAL FORM;Lo;0;AL; 067E;;;;N;;;;; -FB5A;ARABIC LETTER BEHEH ISOLATED FORM;Lo;0;AL; 0680;;;;N;;;;; -FB5B;ARABIC LETTER BEHEH FINAL FORM;Lo;0;AL; 0680;;;;N;;;;; -FB5C;ARABIC LETTER BEHEH INITIAL FORM;Lo;0;AL; 0680;;;;N;;;;; -FB5D;ARABIC LETTER BEHEH MEDIAL FORM;Lo;0;AL; 0680;;;;N;;;;; -FB5E;ARABIC LETTER TTEHEH ISOLATED FORM;Lo;0;AL; 067A;;;;N;;;;; -FB5F;ARABIC LETTER TTEHEH FINAL FORM;Lo;0;AL; 067A;;;;N;;;;; -FB60;ARABIC LETTER TTEHEH INITIAL FORM;Lo;0;AL; 067A;;;;N;;;;; -FB61;ARABIC LETTER TTEHEH MEDIAL FORM;Lo;0;AL; 067A;;;;N;;;;; -FB62;ARABIC LETTER TEHEH ISOLATED FORM;Lo;0;AL; 067F;;;;N;;;;; -FB63;ARABIC LETTER TEHEH FINAL FORM;Lo;0;AL; 067F;;;;N;;;;; -FB64;ARABIC LETTER TEHEH INITIAL FORM;Lo;0;AL; 067F;;;;N;;;;; -FB65;ARABIC LETTER TEHEH MEDIAL FORM;Lo;0;AL; 067F;;;;N;;;;; -FB66;ARABIC LETTER TTEH ISOLATED FORM;Lo;0;AL; 0679;;;;N;;;;; -FB67;ARABIC LETTER TTEH FINAL FORM;Lo;0;AL; 0679;;;;N;;;;; -FB68;ARABIC LETTER TTEH INITIAL FORM;Lo;0;AL; 0679;;;;N;;;;; -FB69;ARABIC LETTER TTEH MEDIAL FORM;Lo;0;AL; 0679;;;;N;;;;; -FB6A;ARABIC LETTER VEH ISOLATED FORM;Lo;0;AL; 06A4;;;;N;;;;; -FB6B;ARABIC LETTER VEH FINAL FORM;Lo;0;AL; 06A4;;;;N;;;;; -FB6C;ARABIC LETTER VEH INITIAL FORM;Lo;0;AL; 06A4;;;;N;;;;; -FB6D;ARABIC LETTER VEH MEDIAL FORM;Lo;0;AL; 06A4;;;;N;;;;; -FB6E;ARABIC LETTER PEHEH ISOLATED FORM;Lo;0;AL; 06A6;;;;N;;;;; -FB6F;ARABIC LETTER PEHEH FINAL FORM;Lo;0;AL; 06A6;;;;N;;;;; -FB70;ARABIC LETTER PEHEH INITIAL FORM;Lo;0;AL; 06A6;;;;N;;;;; -FB71;ARABIC LETTER PEHEH MEDIAL FORM;Lo;0;AL; 06A6;;;;N;;;;; -FB72;ARABIC LETTER DYEH ISOLATED FORM;Lo;0;AL; 0684;;;;N;;;;; -FB73;ARABIC LETTER DYEH FINAL FORM;Lo;0;AL; 0684;;;;N;;;;; -FB74;ARABIC LETTER DYEH INITIAL FORM;Lo;0;AL; 0684;;;;N;;;;; -FB75;ARABIC LETTER DYEH MEDIAL FORM;Lo;0;AL; 0684;;;;N;;;;; -FB76;ARABIC LETTER NYEH ISOLATED FORM;Lo;0;AL; 0683;;;;N;;;;; -FB77;ARABIC LETTER NYEH FINAL FORM;Lo;0;AL; 0683;;;;N;;;;; -FB78;ARABIC LETTER NYEH INITIAL FORM;Lo;0;AL; 0683;;;;N;;;;; -FB79;ARABIC LETTER NYEH MEDIAL FORM;Lo;0;AL; 0683;;;;N;;;;; -FB7A;ARABIC LETTER TCHEH ISOLATED FORM;Lo;0;AL; 0686;;;;N;;;;; -FB7B;ARABIC LETTER TCHEH FINAL FORM;Lo;0;AL; 0686;;;;N;;;;; -FB7C;ARABIC LETTER TCHEH INITIAL FORM;Lo;0;AL; 0686;;;;N;;;;; -FB7D;ARABIC LETTER TCHEH MEDIAL FORM;Lo;0;AL; 0686;;;;N;;;;; -FB7E;ARABIC LETTER TCHEHEH ISOLATED FORM;Lo;0;AL; 0687;;;;N;;;;; -FB7F;ARABIC LETTER TCHEHEH FINAL FORM;Lo;0;AL; 0687;;;;N;;;;; -FB80;ARABIC LETTER TCHEHEH INITIAL FORM;Lo;0;AL; 0687;;;;N;;;;; -FB81;ARABIC LETTER TCHEHEH MEDIAL FORM;Lo;0;AL; 0687;;;;N;;;;; -FB82;ARABIC LETTER DDAHAL ISOLATED FORM;Lo;0;AL; 068D;;;;N;;;;; -FB83;ARABIC LETTER DDAHAL FINAL FORM;Lo;0;AL; 068D;;;;N;;;;; -FB84;ARABIC LETTER DAHAL ISOLATED FORM;Lo;0;AL; 068C;;;;N;;;;; -FB85;ARABIC LETTER DAHAL FINAL FORM;Lo;0;AL; 068C;;;;N;;;;; -FB86;ARABIC LETTER DUL ISOLATED FORM;Lo;0;AL; 068E;;;;N;;;;; -FB87;ARABIC LETTER DUL FINAL FORM;Lo;0;AL; 068E;;;;N;;;;; -FB88;ARABIC LETTER DDAL ISOLATED FORM;Lo;0;AL; 0688;;;;N;;;;; -FB89;ARABIC LETTER DDAL FINAL FORM;Lo;0;AL; 0688;;;;N;;;;; -FB8A;ARABIC LETTER JEH ISOLATED FORM;Lo;0;AL; 0698;;;;N;;;;; -FB8B;ARABIC LETTER JEH FINAL FORM;Lo;0;AL; 0698;;;;N;;;;; -FB8C;ARABIC LETTER RREH ISOLATED FORM;Lo;0;AL; 0691;;;;N;;;;; -FB8D;ARABIC LETTER RREH FINAL FORM;Lo;0;AL; 0691;;;;N;;;;; -FB8E;ARABIC LETTER KEHEH ISOLATED FORM;Lo;0;AL; 06A9;;;;N;;;;; -FB8F;ARABIC LETTER KEHEH FINAL FORM;Lo;0;AL; 06A9;;;;N;;;;; -FB90;ARABIC LETTER KEHEH INITIAL FORM;Lo;0;AL; 06A9;;;;N;;;;; -FB91;ARABIC LETTER KEHEH MEDIAL FORM;Lo;0;AL; 06A9;;;;N;;;;; -FB92;ARABIC LETTER GAF ISOLATED FORM;Lo;0;AL; 06AF;;;;N;;;;; -FB93;ARABIC LETTER GAF FINAL FORM;Lo;0;AL; 06AF;;;;N;;;;; -FB94;ARABIC LETTER GAF INITIAL FORM;Lo;0;AL; 06AF;;;;N;;;;; -FB95;ARABIC LETTER GAF MEDIAL FORM;Lo;0;AL; 06AF;;;;N;;;;; -FB96;ARABIC LETTER GUEH ISOLATED FORM;Lo;0;AL; 06B3;;;;N;;;;; -FB97;ARABIC LETTER GUEH FINAL FORM;Lo;0;AL; 06B3;;;;N;;;;; -FB98;ARABIC LETTER GUEH INITIAL FORM;Lo;0;AL; 06B3;;;;N;;;;; -FB99;ARABIC LETTER GUEH MEDIAL FORM;Lo;0;AL; 06B3;;;;N;;;;; -FB9A;ARABIC LETTER NGOEH ISOLATED FORM;Lo;0;AL; 06B1;;;;N;;;;; -FB9B;ARABIC LETTER NGOEH FINAL FORM;Lo;0;AL; 06B1;;;;N;;;;; -FB9C;ARABIC LETTER NGOEH INITIAL FORM;Lo;0;AL; 06B1;;;;N;;;;; -FB9D;ARABIC LETTER NGOEH MEDIAL FORM;Lo;0;AL; 06B1;;;;N;;;;; -FB9E;ARABIC LETTER NOON GHUNNA ISOLATED FORM;Lo;0;AL; 06BA;;;;N;;;;; -FB9F;ARABIC LETTER NOON GHUNNA FINAL FORM;Lo;0;AL; 06BA;;;;N;;;;; -FBA0;ARABIC LETTER RNOON ISOLATED FORM;Lo;0;AL; 06BB;;;;N;;;;; -FBA1;ARABIC LETTER RNOON FINAL FORM;Lo;0;AL; 06BB;;;;N;;;;; -FBA2;ARABIC LETTER RNOON INITIAL FORM;Lo;0;AL; 06BB;;;;N;;;;; -FBA3;ARABIC LETTER RNOON MEDIAL FORM;Lo;0;AL; 06BB;;;;N;;;;; -FBA4;ARABIC LETTER HEH WITH YEH ABOVE ISOLATED FORM;Lo;0;AL; 06C0;;;;N;;;;; -FBA5;ARABIC LETTER HEH WITH YEH ABOVE FINAL FORM;Lo;0;AL; 06C0;;;;N;;;;; -FBA6;ARABIC LETTER HEH GOAL ISOLATED FORM;Lo;0;AL; 06C1;;;;N;;;;; -FBA7;ARABIC LETTER HEH GOAL FINAL FORM;Lo;0;AL; 06C1;;;;N;;;;; -FBA8;ARABIC LETTER HEH GOAL INITIAL FORM;Lo;0;AL; 06C1;;;;N;;;;; -FBA9;ARABIC LETTER HEH GOAL MEDIAL FORM;Lo;0;AL; 06C1;;;;N;;;;; -FBAA;ARABIC LETTER HEH DOACHASHMEE ISOLATED FORM;Lo;0;AL; 06BE;;;;N;;;;; -FBAB;ARABIC LETTER HEH DOACHASHMEE FINAL FORM;Lo;0;AL; 06BE;;;;N;;;;; -FBAC;ARABIC LETTER HEH DOACHASHMEE INITIAL FORM;Lo;0;AL; 06BE;;;;N;;;;; -FBAD;ARABIC LETTER HEH DOACHASHMEE MEDIAL FORM;Lo;0;AL; 06BE;;;;N;;;;; -FBAE;ARABIC LETTER YEH BARREE ISOLATED FORM;Lo;0;AL; 06D2;;;;N;;;;; -FBAF;ARABIC LETTER YEH BARREE FINAL FORM;Lo;0;AL; 06D2;;;;N;;;;; -FBB0;ARABIC LETTER YEH BARREE WITH HAMZA ABOVE ISOLATED FORM;Lo;0;AL; 06D3;;;;N;;;;; -FBB1;ARABIC LETTER YEH BARREE WITH HAMZA ABOVE FINAL FORM;Lo;0;AL; 06D3;;;;N;;;;; -FBB2;ARABIC SYMBOL DOT ABOVE;Sk;0;AL;;;;;N;;;;; -FBB3;ARABIC SYMBOL DOT BELOW;Sk;0;AL;;;;;N;;;;; -FBB4;ARABIC SYMBOL TWO DOTS ABOVE;Sk;0;AL;;;;;N;;;;; -FBB5;ARABIC SYMBOL TWO DOTS BELOW;Sk;0;AL;;;;;N;;;;; -FBB6;ARABIC SYMBOL THREE DOTS ABOVE;Sk;0;AL;;;;;N;;;;; -FBB7;ARABIC SYMBOL THREE DOTS BELOW;Sk;0;AL;;;;;N;;;;; -FBB8;ARABIC SYMBOL THREE DOTS POINTING DOWNWARDS ABOVE;Sk;0;AL;;;;;N;;;;; -FBB9;ARABIC SYMBOL THREE DOTS POINTING DOWNWARDS BELOW;Sk;0;AL;;;;;N;;;;; -FBBA;ARABIC SYMBOL FOUR DOTS ABOVE;Sk;0;AL;;;;;N;;;;; -FBBB;ARABIC SYMBOL FOUR DOTS BELOW;Sk;0;AL;;;;;N;;;;; -FBBC;ARABIC SYMBOL DOUBLE VERTICAL BAR BELOW;Sk;0;AL;;;;;N;;;;; -FBBD;ARABIC SYMBOL TWO DOTS VERTICALLY ABOVE;Sk;0;AL;;;;;N;;;;; -FBBE;ARABIC SYMBOL TWO DOTS VERTICALLY BELOW;Sk;0;AL;;;;;N;;;;; -FBBF;ARABIC SYMBOL RING;Sk;0;AL;;;;;N;;;;; -FBC0;ARABIC SYMBOL SMALL TAH ABOVE;Sk;0;AL;;;;;N;;;;; -FBC1;ARABIC SYMBOL SMALL TAH BELOW;Sk;0;AL;;;;;N;;;;; -FBD3;ARABIC LETTER NG ISOLATED FORM;Lo;0;AL; 06AD;;;;N;;;;; -FBD4;ARABIC LETTER NG FINAL FORM;Lo;0;AL; 06AD;;;;N;;;;; -FBD5;ARABIC LETTER NG INITIAL FORM;Lo;0;AL; 06AD;;;;N;;;;; -FBD6;ARABIC LETTER NG MEDIAL FORM;Lo;0;AL; 06AD;;;;N;;;;; -FBD7;ARABIC LETTER U ISOLATED FORM;Lo;0;AL; 06C7;;;;N;;;;; -FBD8;ARABIC LETTER U FINAL FORM;Lo;0;AL; 06C7;;;;N;;;;; -FBD9;ARABIC LETTER OE ISOLATED FORM;Lo;0;AL; 06C6;;;;N;;;;; -FBDA;ARABIC LETTER OE FINAL FORM;Lo;0;AL; 06C6;;;;N;;;;; -FBDB;ARABIC LETTER YU ISOLATED FORM;Lo;0;AL; 06C8;;;;N;;;;; -FBDC;ARABIC LETTER YU FINAL FORM;Lo;0;AL; 06C8;;;;N;;;;; -FBDD;ARABIC LETTER U WITH HAMZA ABOVE ISOLATED FORM;Lo;0;AL; 0677;;;;N;;;;; -FBDE;ARABIC LETTER VE ISOLATED FORM;Lo;0;AL; 06CB;;;;N;;;;; -FBDF;ARABIC LETTER VE FINAL FORM;Lo;0;AL; 06CB;;;;N;;;;; -FBE0;ARABIC LETTER KIRGHIZ OE ISOLATED FORM;Lo;0;AL; 06C5;;;;N;;;;; -FBE1;ARABIC LETTER KIRGHIZ OE FINAL FORM;Lo;0;AL; 06C5;;;;N;;;;; -FBE2;ARABIC LETTER KIRGHIZ YU ISOLATED FORM;Lo;0;AL; 06C9;;;;N;;;;; -FBE3;ARABIC LETTER KIRGHIZ YU FINAL FORM;Lo;0;AL; 06C9;;;;N;;;;; -FBE4;ARABIC LETTER E ISOLATED FORM;Lo;0;AL; 06D0;;;;N;;;;; -FBE5;ARABIC LETTER E FINAL FORM;Lo;0;AL; 06D0;;;;N;;;;; -FBE6;ARABIC LETTER E INITIAL FORM;Lo;0;AL; 06D0;;;;N;;;;; -FBE7;ARABIC LETTER E MEDIAL FORM;Lo;0;AL; 06D0;;;;N;;;;; -FBE8;ARABIC LETTER UIGHUR KAZAKH KIRGHIZ ALEF MAKSURA INITIAL FORM;Lo;0;AL; 0649;;;;N;;;;; -FBE9;ARABIC LETTER UIGHUR KAZAKH KIRGHIZ ALEF MAKSURA MEDIAL FORM;Lo;0;AL; 0649;;;;N;;;;; -FBEA;ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH ALEF ISOLATED FORM;Lo;0;AL; 0626 0627;;;;N;;;;; -FBEB;ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH ALEF FINAL FORM;Lo;0;AL; 0626 0627;;;;N;;;;; -FBEC;ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH AE ISOLATED FORM;Lo;0;AL; 0626 06D5;;;;N;;;;; -FBED;ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH AE FINAL FORM;Lo;0;AL; 0626 06D5;;;;N;;;;; -FBEE;ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH WAW ISOLATED FORM;Lo;0;AL; 0626 0648;;;;N;;;;; -FBEF;ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH WAW FINAL FORM;Lo;0;AL; 0626 0648;;;;N;;;;; -FBF0;ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH U ISOLATED FORM;Lo;0;AL; 0626 06C7;;;;N;;;;; -FBF1;ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH U FINAL FORM;Lo;0;AL; 0626 06C7;;;;N;;;;; -FBF2;ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH OE ISOLATED FORM;Lo;0;AL; 0626 06C6;;;;N;;;;; -FBF3;ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH OE FINAL FORM;Lo;0;AL; 0626 06C6;;;;N;;;;; -FBF4;ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH YU ISOLATED FORM;Lo;0;AL; 0626 06C8;;;;N;;;;; -FBF5;ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH YU FINAL FORM;Lo;0;AL; 0626 06C8;;;;N;;;;; -FBF6;ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH E ISOLATED FORM;Lo;0;AL; 0626 06D0;;;;N;;;;; -FBF7;ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH E FINAL FORM;Lo;0;AL; 0626 06D0;;;;N;;;;; -FBF8;ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH E INITIAL FORM;Lo;0;AL; 0626 06D0;;;;N;;;;; -FBF9;ARABIC LIGATURE UIGHUR KIRGHIZ YEH WITH HAMZA ABOVE WITH ALEF MAKSURA ISOLATED FORM;Lo;0;AL; 0626 0649;;;;N;;;;; -FBFA;ARABIC LIGATURE UIGHUR KIRGHIZ YEH WITH HAMZA ABOVE WITH ALEF MAKSURA FINAL FORM;Lo;0;AL; 0626 0649;;;;N;;;;; -FBFB;ARABIC LIGATURE UIGHUR KIRGHIZ YEH WITH HAMZA ABOVE WITH ALEF MAKSURA INITIAL FORM;Lo;0;AL; 0626 0649;;;;N;;;;; -FBFC;ARABIC LETTER FARSI YEH ISOLATED FORM;Lo;0;AL; 06CC;;;;N;;;;; -FBFD;ARABIC LETTER FARSI YEH FINAL FORM;Lo;0;AL; 06CC;;;;N;;;;; -FBFE;ARABIC LETTER FARSI YEH INITIAL FORM;Lo;0;AL; 06CC;;;;N;;;;; -FBFF;ARABIC LETTER FARSI YEH MEDIAL FORM;Lo;0;AL; 06CC;;;;N;;;;; -FC00;ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH JEEM ISOLATED FORM;Lo;0;AL; 0626 062C;;;;N;;;;; -FC01;ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH HAH ISOLATED FORM;Lo;0;AL; 0626 062D;;;;N;;;;; -FC02;ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH MEEM ISOLATED FORM;Lo;0;AL; 0626 0645;;;;N;;;;; -FC03;ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH ALEF MAKSURA ISOLATED FORM;Lo;0;AL; 0626 0649;;;;N;;;;; -FC04;ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH YEH ISOLATED FORM;Lo;0;AL; 0626 064A;;;;N;;;;; -FC05;ARABIC LIGATURE BEH WITH JEEM ISOLATED FORM;Lo;0;AL; 0628 062C;;;;N;;;;; -FC06;ARABIC LIGATURE BEH WITH HAH ISOLATED FORM;Lo;0;AL; 0628 062D;;;;N;;;;; -FC07;ARABIC LIGATURE BEH WITH KHAH ISOLATED FORM;Lo;0;AL; 0628 062E;;;;N;;;;; -FC08;ARABIC LIGATURE BEH WITH MEEM ISOLATED FORM;Lo;0;AL; 0628 0645;;;;N;;;;; -FC09;ARABIC LIGATURE BEH WITH ALEF MAKSURA ISOLATED FORM;Lo;0;AL; 0628 0649;;;;N;;;;; -FC0A;ARABIC LIGATURE BEH WITH YEH ISOLATED FORM;Lo;0;AL; 0628 064A;;;;N;;;;; -FC0B;ARABIC LIGATURE TEH WITH JEEM ISOLATED FORM;Lo;0;AL; 062A 062C;;;;N;;;;; -FC0C;ARABIC LIGATURE TEH WITH HAH ISOLATED FORM;Lo;0;AL; 062A 062D;;;;N;;;;; -FC0D;ARABIC LIGATURE TEH WITH KHAH ISOLATED FORM;Lo;0;AL; 062A 062E;;;;N;;;;; -FC0E;ARABIC LIGATURE TEH WITH MEEM ISOLATED FORM;Lo;0;AL; 062A 0645;;;;N;;;;; -FC0F;ARABIC LIGATURE TEH WITH ALEF MAKSURA ISOLATED FORM;Lo;0;AL; 062A 0649;;;;N;;;;; -FC10;ARABIC LIGATURE TEH WITH YEH ISOLATED FORM;Lo;0;AL; 062A 064A;;;;N;;;;; -FC11;ARABIC LIGATURE THEH WITH JEEM ISOLATED FORM;Lo;0;AL; 062B 062C;;;;N;;;;; -FC12;ARABIC LIGATURE THEH WITH MEEM ISOLATED FORM;Lo;0;AL; 062B 0645;;;;N;;;;; -FC13;ARABIC LIGATURE THEH WITH ALEF MAKSURA ISOLATED FORM;Lo;0;AL; 062B 0649;;;;N;;;;; -FC14;ARABIC LIGATURE THEH WITH YEH ISOLATED FORM;Lo;0;AL; 062B 064A;;;;N;;;;; -FC15;ARABIC LIGATURE JEEM WITH HAH ISOLATED FORM;Lo;0;AL; 062C 062D;;;;N;;;;; -FC16;ARABIC LIGATURE JEEM WITH MEEM ISOLATED FORM;Lo;0;AL; 062C 0645;;;;N;;;;; -FC17;ARABIC LIGATURE HAH WITH JEEM ISOLATED FORM;Lo;0;AL; 062D 062C;;;;N;;;;; -FC18;ARABIC LIGATURE HAH WITH MEEM ISOLATED FORM;Lo;0;AL; 062D 0645;;;;N;;;;; -FC19;ARABIC LIGATURE KHAH WITH JEEM ISOLATED FORM;Lo;0;AL; 062E 062C;;;;N;;;;; -FC1A;ARABIC LIGATURE KHAH WITH HAH ISOLATED FORM;Lo;0;AL; 062E 062D;;;;N;;;;; -FC1B;ARABIC LIGATURE KHAH WITH MEEM ISOLATED FORM;Lo;0;AL; 062E 0645;;;;N;;;;; -FC1C;ARABIC LIGATURE SEEN WITH JEEM ISOLATED FORM;Lo;0;AL; 0633 062C;;;;N;;;;; -FC1D;ARABIC LIGATURE SEEN WITH HAH ISOLATED FORM;Lo;0;AL; 0633 062D;;;;N;;;;; -FC1E;ARABIC LIGATURE SEEN WITH KHAH ISOLATED FORM;Lo;0;AL; 0633 062E;;;;N;;;;; -FC1F;ARABIC LIGATURE SEEN WITH MEEM ISOLATED FORM;Lo;0;AL; 0633 0645;;;;N;;;;; -FC20;ARABIC LIGATURE SAD WITH HAH ISOLATED FORM;Lo;0;AL; 0635 062D;;;;N;;;;; -FC21;ARABIC LIGATURE SAD WITH MEEM ISOLATED FORM;Lo;0;AL; 0635 0645;;;;N;;;;; -FC22;ARABIC LIGATURE DAD WITH JEEM ISOLATED FORM;Lo;0;AL; 0636 062C;;;;N;;;;; -FC23;ARABIC LIGATURE DAD WITH HAH ISOLATED FORM;Lo;0;AL; 0636 062D;;;;N;;;;; -FC24;ARABIC LIGATURE DAD WITH KHAH ISOLATED FORM;Lo;0;AL; 0636 062E;;;;N;;;;; -FC25;ARABIC LIGATURE DAD WITH MEEM ISOLATED FORM;Lo;0;AL; 0636 0645;;;;N;;;;; -FC26;ARABIC LIGATURE TAH WITH HAH ISOLATED FORM;Lo;0;AL; 0637 062D;;;;N;;;;; -FC27;ARABIC LIGATURE TAH WITH MEEM ISOLATED FORM;Lo;0;AL; 0637 0645;;;;N;;;;; -FC28;ARABIC LIGATURE ZAH WITH MEEM ISOLATED FORM;Lo;0;AL; 0638 0645;;;;N;;;;; -FC29;ARABIC LIGATURE AIN WITH JEEM ISOLATED FORM;Lo;0;AL; 0639 062C;;;;N;;;;; -FC2A;ARABIC LIGATURE AIN WITH MEEM ISOLATED FORM;Lo;0;AL; 0639 0645;;;;N;;;;; -FC2B;ARABIC LIGATURE GHAIN WITH JEEM ISOLATED FORM;Lo;0;AL; 063A 062C;;;;N;;;;; -FC2C;ARABIC LIGATURE GHAIN WITH MEEM ISOLATED FORM;Lo;0;AL; 063A 0645;;;;N;;;;; -FC2D;ARABIC LIGATURE FEH WITH JEEM ISOLATED FORM;Lo;0;AL; 0641 062C;;;;N;;;;; -FC2E;ARABIC LIGATURE FEH WITH HAH ISOLATED FORM;Lo;0;AL; 0641 062D;;;;N;;;;; -FC2F;ARABIC LIGATURE FEH WITH KHAH ISOLATED FORM;Lo;0;AL; 0641 062E;;;;N;;;;; -FC30;ARABIC LIGATURE FEH WITH MEEM ISOLATED FORM;Lo;0;AL; 0641 0645;;;;N;;;;; -FC31;ARABIC LIGATURE FEH WITH ALEF MAKSURA ISOLATED FORM;Lo;0;AL; 0641 0649;;;;N;;;;; -FC32;ARABIC LIGATURE FEH WITH YEH ISOLATED FORM;Lo;0;AL; 0641 064A;;;;N;;;;; -FC33;ARABIC LIGATURE QAF WITH HAH ISOLATED FORM;Lo;0;AL; 0642 062D;;;;N;;;;; -FC34;ARABIC LIGATURE QAF WITH MEEM ISOLATED FORM;Lo;0;AL; 0642 0645;;;;N;;;;; -FC35;ARABIC LIGATURE QAF WITH ALEF MAKSURA ISOLATED FORM;Lo;0;AL; 0642 0649;;;;N;;;;; -FC36;ARABIC LIGATURE QAF WITH YEH ISOLATED FORM;Lo;0;AL; 0642 064A;;;;N;;;;; -FC37;ARABIC LIGATURE KAF WITH ALEF ISOLATED FORM;Lo;0;AL; 0643 0627;;;;N;;;;; -FC38;ARABIC LIGATURE KAF WITH JEEM ISOLATED FORM;Lo;0;AL; 0643 062C;;;;N;;;;; -FC39;ARABIC LIGATURE KAF WITH HAH ISOLATED FORM;Lo;0;AL; 0643 062D;;;;N;;;;; -FC3A;ARABIC LIGATURE KAF WITH KHAH ISOLATED FORM;Lo;0;AL; 0643 062E;;;;N;;;;; -FC3B;ARABIC LIGATURE KAF WITH LAM ISOLATED FORM;Lo;0;AL; 0643 0644;;;;N;;;;; -FC3C;ARABIC LIGATURE KAF WITH MEEM ISOLATED FORM;Lo;0;AL; 0643 0645;;;;N;;;;; -FC3D;ARABIC LIGATURE KAF WITH ALEF MAKSURA ISOLATED FORM;Lo;0;AL; 0643 0649;;;;N;;;;; -FC3E;ARABIC LIGATURE KAF WITH YEH ISOLATED FORM;Lo;0;AL; 0643 064A;;;;N;;;;; -FC3F;ARABIC LIGATURE LAM WITH JEEM ISOLATED FORM;Lo;0;AL; 0644 062C;;;;N;;;;; -FC40;ARABIC LIGATURE LAM WITH HAH ISOLATED FORM;Lo;0;AL; 0644 062D;;;;N;;;;; -FC41;ARABIC LIGATURE LAM WITH KHAH ISOLATED FORM;Lo;0;AL; 0644 062E;;;;N;;;;; -FC42;ARABIC LIGATURE LAM WITH MEEM ISOLATED FORM;Lo;0;AL; 0644 0645;;;;N;;;;; -FC43;ARABIC LIGATURE LAM WITH ALEF MAKSURA ISOLATED FORM;Lo;0;AL; 0644 0649;;;;N;;;;; -FC44;ARABIC LIGATURE LAM WITH YEH ISOLATED FORM;Lo;0;AL; 0644 064A;;;;N;;;;; -FC45;ARABIC LIGATURE MEEM WITH JEEM ISOLATED FORM;Lo;0;AL; 0645 062C;;;;N;;;;; -FC46;ARABIC LIGATURE MEEM WITH HAH ISOLATED FORM;Lo;0;AL; 0645 062D;;;;N;;;;; -FC47;ARABIC LIGATURE MEEM WITH KHAH ISOLATED FORM;Lo;0;AL; 0645 062E;;;;N;;;;; -FC48;ARABIC LIGATURE MEEM WITH MEEM ISOLATED FORM;Lo;0;AL; 0645 0645;;;;N;;;;; -FC49;ARABIC LIGATURE MEEM WITH ALEF MAKSURA ISOLATED FORM;Lo;0;AL; 0645 0649;;;;N;;;;; -FC4A;ARABIC LIGATURE MEEM WITH YEH ISOLATED FORM;Lo;0;AL; 0645 064A;;;;N;;;;; -FC4B;ARABIC LIGATURE NOON WITH JEEM ISOLATED FORM;Lo;0;AL; 0646 062C;;;;N;;;;; -FC4C;ARABIC LIGATURE NOON WITH HAH ISOLATED FORM;Lo;0;AL; 0646 062D;;;;N;;;;; -FC4D;ARABIC LIGATURE NOON WITH KHAH ISOLATED FORM;Lo;0;AL; 0646 062E;;;;N;;;;; -FC4E;ARABIC LIGATURE NOON WITH MEEM ISOLATED FORM;Lo;0;AL; 0646 0645;;;;N;;;;; -FC4F;ARABIC LIGATURE NOON WITH ALEF MAKSURA ISOLATED FORM;Lo;0;AL; 0646 0649;;;;N;;;;; -FC50;ARABIC LIGATURE NOON WITH YEH ISOLATED FORM;Lo;0;AL; 0646 064A;;;;N;;;;; -FC51;ARABIC LIGATURE HEH WITH JEEM ISOLATED FORM;Lo;0;AL; 0647 062C;;;;N;;;;; -FC52;ARABIC LIGATURE HEH WITH MEEM ISOLATED FORM;Lo;0;AL; 0647 0645;;;;N;;;;; -FC53;ARABIC LIGATURE HEH WITH ALEF MAKSURA ISOLATED FORM;Lo;0;AL; 0647 0649;;;;N;;;;; -FC54;ARABIC LIGATURE HEH WITH YEH ISOLATED FORM;Lo;0;AL; 0647 064A;;;;N;;;;; -FC55;ARABIC LIGATURE YEH WITH JEEM ISOLATED FORM;Lo;0;AL; 064A 062C;;;;N;;;;; -FC56;ARABIC LIGATURE YEH WITH HAH ISOLATED FORM;Lo;0;AL; 064A 062D;;;;N;;;;; -FC57;ARABIC LIGATURE YEH WITH KHAH ISOLATED FORM;Lo;0;AL; 064A 062E;;;;N;;;;; -FC58;ARABIC LIGATURE YEH WITH MEEM ISOLATED FORM;Lo;0;AL; 064A 0645;;;;N;;;;; -FC59;ARABIC LIGATURE YEH WITH ALEF MAKSURA ISOLATED FORM;Lo;0;AL; 064A 0649;;;;N;;;;; -FC5A;ARABIC LIGATURE YEH WITH YEH ISOLATED FORM;Lo;0;AL; 064A 064A;;;;N;;;;; -FC5B;ARABIC LIGATURE THAL WITH SUPERSCRIPT ALEF ISOLATED FORM;Lo;0;AL; 0630 0670;;;;N;;;;; -FC5C;ARABIC LIGATURE REH WITH SUPERSCRIPT ALEF ISOLATED FORM;Lo;0;AL; 0631 0670;;;;N;;;;; -FC5D;ARABIC LIGATURE ALEF MAKSURA WITH SUPERSCRIPT ALEF ISOLATED FORM;Lo;0;AL; 0649 0670;;;;N;;;;; -FC5E;ARABIC LIGATURE SHADDA WITH DAMMATAN ISOLATED FORM;Lo;0;AL; 0020 064C 0651;;;;N;;;;; -FC5F;ARABIC LIGATURE SHADDA WITH KASRATAN ISOLATED FORM;Lo;0;AL; 0020 064D 0651;;;;N;;;;; -FC60;ARABIC LIGATURE SHADDA WITH FATHA ISOLATED FORM;Lo;0;AL; 0020 064E 0651;;;;N;;;;; -FC61;ARABIC LIGATURE SHADDA WITH DAMMA ISOLATED FORM;Lo;0;AL; 0020 064F 0651;;;;N;;;;; -FC62;ARABIC LIGATURE SHADDA WITH KASRA ISOLATED FORM;Lo;0;AL; 0020 0650 0651;;;;N;;;;; -FC63;ARABIC LIGATURE SHADDA WITH SUPERSCRIPT ALEF ISOLATED FORM;Lo;0;AL; 0020 0651 0670;;;;N;;;;; -FC64;ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH REH FINAL FORM;Lo;0;AL; 0626 0631;;;;N;;;;; -FC65;ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH ZAIN FINAL FORM;Lo;0;AL; 0626 0632;;;;N;;;;; -FC66;ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH MEEM FINAL FORM;Lo;0;AL; 0626 0645;;;;N;;;;; -FC67;ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH NOON FINAL FORM;Lo;0;AL; 0626 0646;;;;N;;;;; -FC68;ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH ALEF MAKSURA FINAL FORM;Lo;0;AL; 0626 0649;;;;N;;;;; -FC69;ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH YEH FINAL FORM;Lo;0;AL; 0626 064A;;;;N;;;;; -FC6A;ARABIC LIGATURE BEH WITH REH FINAL FORM;Lo;0;AL; 0628 0631;;;;N;;;;; -FC6B;ARABIC LIGATURE BEH WITH ZAIN FINAL FORM;Lo;0;AL; 0628 0632;;;;N;;;;; -FC6C;ARABIC LIGATURE BEH WITH MEEM FINAL FORM;Lo;0;AL; 0628 0645;;;;N;;;;; -FC6D;ARABIC LIGATURE BEH WITH NOON FINAL FORM;Lo;0;AL; 0628 0646;;;;N;;;;; -FC6E;ARABIC LIGATURE BEH WITH ALEF MAKSURA FINAL FORM;Lo;0;AL; 0628 0649;;;;N;;;;; -FC6F;ARABIC LIGATURE BEH WITH YEH FINAL FORM;Lo;0;AL; 0628 064A;;;;N;;;;; -FC70;ARABIC LIGATURE TEH WITH REH FINAL FORM;Lo;0;AL; 062A 0631;;;;N;;;;; -FC71;ARABIC LIGATURE TEH WITH ZAIN FINAL FORM;Lo;0;AL; 062A 0632;;;;N;;;;; -FC72;ARABIC LIGATURE TEH WITH MEEM FINAL FORM;Lo;0;AL; 062A 0645;;;;N;;;;; -FC73;ARABIC LIGATURE TEH WITH NOON FINAL FORM;Lo;0;AL; 062A 0646;;;;N;;;;; -FC74;ARABIC LIGATURE TEH WITH ALEF MAKSURA FINAL FORM;Lo;0;AL; 062A 0649;;;;N;;;;; -FC75;ARABIC LIGATURE TEH WITH YEH FINAL FORM;Lo;0;AL; 062A 064A;;;;N;;;;; -FC76;ARABIC LIGATURE THEH WITH REH FINAL FORM;Lo;0;AL; 062B 0631;;;;N;;;;; -FC77;ARABIC LIGATURE THEH WITH ZAIN FINAL FORM;Lo;0;AL; 062B 0632;;;;N;;;;; -FC78;ARABIC LIGATURE THEH WITH MEEM FINAL FORM;Lo;0;AL; 062B 0645;;;;N;;;;; -FC79;ARABIC LIGATURE THEH WITH NOON FINAL FORM;Lo;0;AL; 062B 0646;;;;N;;;;; -FC7A;ARABIC LIGATURE THEH WITH ALEF MAKSURA FINAL FORM;Lo;0;AL; 062B 0649;;;;N;;;;; -FC7B;ARABIC LIGATURE THEH WITH YEH FINAL FORM;Lo;0;AL; 062B 064A;;;;N;;;;; -FC7C;ARABIC LIGATURE FEH WITH ALEF MAKSURA FINAL FORM;Lo;0;AL; 0641 0649;;;;N;;;;; -FC7D;ARABIC LIGATURE FEH WITH YEH FINAL FORM;Lo;0;AL; 0641 064A;;;;N;;;;; -FC7E;ARABIC LIGATURE QAF WITH ALEF MAKSURA FINAL FORM;Lo;0;AL; 0642 0649;;;;N;;;;; -FC7F;ARABIC LIGATURE QAF WITH YEH FINAL FORM;Lo;0;AL; 0642 064A;;;;N;;;;; -FC80;ARABIC LIGATURE KAF WITH ALEF FINAL FORM;Lo;0;AL; 0643 0627;;;;N;;;;; -FC81;ARABIC LIGATURE KAF WITH LAM FINAL FORM;Lo;0;AL; 0643 0644;;;;N;;;;; -FC82;ARABIC LIGATURE KAF WITH MEEM FINAL FORM;Lo;0;AL; 0643 0645;;;;N;;;;; -FC83;ARABIC LIGATURE KAF WITH ALEF MAKSURA FINAL FORM;Lo;0;AL; 0643 0649;;;;N;;;;; -FC84;ARABIC LIGATURE KAF WITH YEH FINAL FORM;Lo;0;AL; 0643 064A;;;;N;;;;; -FC85;ARABIC LIGATURE LAM WITH MEEM FINAL FORM;Lo;0;AL; 0644 0645;;;;N;;;;; -FC86;ARABIC LIGATURE LAM WITH ALEF MAKSURA FINAL FORM;Lo;0;AL; 0644 0649;;;;N;;;;; -FC87;ARABIC LIGATURE LAM WITH YEH FINAL FORM;Lo;0;AL; 0644 064A;;;;N;;;;; -FC88;ARABIC LIGATURE MEEM WITH ALEF FINAL FORM;Lo;0;AL; 0645 0627;;;;N;;;;; -FC89;ARABIC LIGATURE MEEM WITH MEEM FINAL FORM;Lo;0;AL; 0645 0645;;;;N;;;;; -FC8A;ARABIC LIGATURE NOON WITH REH FINAL FORM;Lo;0;AL; 0646 0631;;;;N;;;;; -FC8B;ARABIC LIGATURE NOON WITH ZAIN FINAL FORM;Lo;0;AL; 0646 0632;;;;N;;;;; -FC8C;ARABIC LIGATURE NOON WITH MEEM FINAL FORM;Lo;0;AL; 0646 0645;;;;N;;;;; -FC8D;ARABIC LIGATURE NOON WITH NOON FINAL FORM;Lo;0;AL; 0646 0646;;;;N;;;;; -FC8E;ARABIC LIGATURE NOON WITH ALEF MAKSURA FINAL FORM;Lo;0;AL; 0646 0649;;;;N;;;;; -FC8F;ARABIC LIGATURE NOON WITH YEH FINAL FORM;Lo;0;AL; 0646 064A;;;;N;;;;; -FC90;ARABIC LIGATURE ALEF MAKSURA WITH SUPERSCRIPT ALEF FINAL FORM;Lo;0;AL; 0649 0670;;;;N;;;;; -FC91;ARABIC LIGATURE YEH WITH REH FINAL FORM;Lo;0;AL; 064A 0631;;;;N;;;;; -FC92;ARABIC LIGATURE YEH WITH ZAIN FINAL FORM;Lo;0;AL; 064A 0632;;;;N;;;;; -FC93;ARABIC LIGATURE YEH WITH MEEM FINAL FORM;Lo;0;AL; 064A 0645;;;;N;;;;; -FC94;ARABIC LIGATURE YEH WITH NOON FINAL FORM;Lo;0;AL; 064A 0646;;;;N;;;;; -FC95;ARABIC LIGATURE YEH WITH ALEF MAKSURA FINAL FORM;Lo;0;AL; 064A 0649;;;;N;;;;; -FC96;ARABIC LIGATURE YEH WITH YEH FINAL FORM;Lo;0;AL; 064A 064A;;;;N;;;;; -FC97;ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH JEEM INITIAL FORM;Lo;0;AL; 0626 062C;;;;N;;;;; -FC98;ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH HAH INITIAL FORM;Lo;0;AL; 0626 062D;;;;N;;;;; -FC99;ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH KHAH INITIAL FORM;Lo;0;AL; 0626 062E;;;;N;;;;; -FC9A;ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH MEEM INITIAL FORM;Lo;0;AL; 0626 0645;;;;N;;;;; -FC9B;ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH HEH INITIAL FORM;Lo;0;AL; 0626 0647;;;;N;;;;; -FC9C;ARABIC LIGATURE BEH WITH JEEM INITIAL FORM;Lo;0;AL; 0628 062C;;;;N;;;;; -FC9D;ARABIC LIGATURE BEH WITH HAH INITIAL FORM;Lo;0;AL; 0628 062D;;;;N;;;;; -FC9E;ARABIC LIGATURE BEH WITH KHAH INITIAL FORM;Lo;0;AL; 0628 062E;;;;N;;;;; -FC9F;ARABIC LIGATURE BEH WITH MEEM INITIAL FORM;Lo;0;AL; 0628 0645;;;;N;;;;; -FCA0;ARABIC LIGATURE BEH WITH HEH INITIAL FORM;Lo;0;AL; 0628 0647;;;;N;;;;; -FCA1;ARABIC LIGATURE TEH WITH JEEM INITIAL FORM;Lo;0;AL; 062A 062C;;;;N;;;;; -FCA2;ARABIC LIGATURE TEH WITH HAH INITIAL FORM;Lo;0;AL; 062A 062D;;;;N;;;;; -FCA3;ARABIC LIGATURE TEH WITH KHAH INITIAL FORM;Lo;0;AL; 062A 062E;;;;N;;;;; -FCA4;ARABIC LIGATURE TEH WITH MEEM INITIAL FORM;Lo;0;AL; 062A 0645;;;;N;;;;; -FCA5;ARABIC LIGATURE TEH WITH HEH INITIAL FORM;Lo;0;AL; 062A 0647;;;;N;;;;; -FCA6;ARABIC LIGATURE THEH WITH MEEM INITIAL FORM;Lo;0;AL; 062B 0645;;;;N;;;;; -FCA7;ARABIC LIGATURE JEEM WITH HAH INITIAL FORM;Lo;0;AL; 062C 062D;;;;N;;;;; -FCA8;ARABIC LIGATURE JEEM WITH MEEM INITIAL FORM;Lo;0;AL; 062C 0645;;;;N;;;;; -FCA9;ARABIC LIGATURE HAH WITH JEEM INITIAL FORM;Lo;0;AL; 062D 062C;;;;N;;;;; -FCAA;ARABIC LIGATURE HAH WITH MEEM INITIAL FORM;Lo;0;AL; 062D 0645;;;;N;;;;; -FCAB;ARABIC LIGATURE KHAH WITH JEEM INITIAL FORM;Lo;0;AL; 062E 062C;;;;N;;;;; -FCAC;ARABIC LIGATURE KHAH WITH MEEM INITIAL FORM;Lo;0;AL; 062E 0645;;;;N;;;;; -FCAD;ARABIC LIGATURE SEEN WITH JEEM INITIAL FORM;Lo;0;AL; 0633 062C;;;;N;;;;; -FCAE;ARABIC LIGATURE SEEN WITH HAH INITIAL FORM;Lo;0;AL; 0633 062D;;;;N;;;;; -FCAF;ARABIC LIGATURE SEEN WITH KHAH INITIAL FORM;Lo;0;AL; 0633 062E;;;;N;;;;; -FCB0;ARABIC LIGATURE SEEN WITH MEEM INITIAL FORM;Lo;0;AL; 0633 0645;;;;N;;;;; -FCB1;ARABIC LIGATURE SAD WITH HAH INITIAL FORM;Lo;0;AL; 0635 062D;;;;N;;;;; -FCB2;ARABIC LIGATURE SAD WITH KHAH INITIAL FORM;Lo;0;AL; 0635 062E;;;;N;;;;; -FCB3;ARABIC LIGATURE SAD WITH MEEM INITIAL FORM;Lo;0;AL; 0635 0645;;;;N;;;;; -FCB4;ARABIC LIGATURE DAD WITH JEEM INITIAL FORM;Lo;0;AL; 0636 062C;;;;N;;;;; -FCB5;ARABIC LIGATURE DAD WITH HAH INITIAL FORM;Lo;0;AL; 0636 062D;;;;N;;;;; -FCB6;ARABIC LIGATURE DAD WITH KHAH INITIAL FORM;Lo;0;AL; 0636 062E;;;;N;;;;; -FCB7;ARABIC LIGATURE DAD WITH MEEM INITIAL FORM;Lo;0;AL; 0636 0645;;;;N;;;;; -FCB8;ARABIC LIGATURE TAH WITH HAH INITIAL FORM;Lo;0;AL; 0637 062D;;;;N;;;;; -FCB9;ARABIC LIGATURE ZAH WITH MEEM INITIAL FORM;Lo;0;AL; 0638 0645;;;;N;;;;; -FCBA;ARABIC LIGATURE AIN WITH JEEM INITIAL FORM;Lo;0;AL; 0639 062C;;;;N;;;;; -FCBB;ARABIC LIGATURE AIN WITH MEEM INITIAL FORM;Lo;0;AL; 0639 0645;;;;N;;;;; -FCBC;ARABIC LIGATURE GHAIN WITH JEEM INITIAL FORM;Lo;0;AL; 063A 062C;;;;N;;;;; -FCBD;ARABIC LIGATURE GHAIN WITH MEEM INITIAL FORM;Lo;0;AL; 063A 0645;;;;N;;;;; -FCBE;ARABIC LIGATURE FEH WITH JEEM INITIAL FORM;Lo;0;AL; 0641 062C;;;;N;;;;; -FCBF;ARABIC LIGATURE FEH WITH HAH INITIAL FORM;Lo;0;AL; 0641 062D;;;;N;;;;; -FCC0;ARABIC LIGATURE FEH WITH KHAH INITIAL FORM;Lo;0;AL; 0641 062E;;;;N;;;;; -FCC1;ARABIC LIGATURE FEH WITH MEEM INITIAL FORM;Lo;0;AL; 0641 0645;;;;N;;;;; -FCC2;ARABIC LIGATURE QAF WITH HAH INITIAL FORM;Lo;0;AL; 0642 062D;;;;N;;;;; -FCC3;ARABIC LIGATURE QAF WITH MEEM INITIAL FORM;Lo;0;AL; 0642 0645;;;;N;;;;; -FCC4;ARABIC LIGATURE KAF WITH JEEM INITIAL FORM;Lo;0;AL; 0643 062C;;;;N;;;;; -FCC5;ARABIC LIGATURE KAF WITH HAH INITIAL FORM;Lo;0;AL; 0643 062D;;;;N;;;;; -FCC6;ARABIC LIGATURE KAF WITH KHAH INITIAL FORM;Lo;0;AL; 0643 062E;;;;N;;;;; -FCC7;ARABIC LIGATURE KAF WITH LAM INITIAL FORM;Lo;0;AL; 0643 0644;;;;N;;;;; -FCC8;ARABIC LIGATURE KAF WITH MEEM INITIAL FORM;Lo;0;AL; 0643 0645;;;;N;;;;; -FCC9;ARABIC LIGATURE LAM WITH JEEM INITIAL FORM;Lo;0;AL; 0644 062C;;;;N;;;;; -FCCA;ARABIC LIGATURE LAM WITH HAH INITIAL FORM;Lo;0;AL; 0644 062D;;;;N;;;;; -FCCB;ARABIC LIGATURE LAM WITH KHAH INITIAL FORM;Lo;0;AL; 0644 062E;;;;N;;;;; -FCCC;ARABIC LIGATURE LAM WITH MEEM INITIAL FORM;Lo;0;AL; 0644 0645;;;;N;;;;; -FCCD;ARABIC LIGATURE LAM WITH HEH INITIAL FORM;Lo;0;AL; 0644 0647;;;;N;;;;; -FCCE;ARABIC LIGATURE MEEM WITH JEEM INITIAL FORM;Lo;0;AL; 0645 062C;;;;N;;;;; -FCCF;ARABIC LIGATURE MEEM WITH HAH INITIAL FORM;Lo;0;AL; 0645 062D;;;;N;;;;; -FCD0;ARABIC LIGATURE MEEM WITH KHAH INITIAL FORM;Lo;0;AL; 0645 062E;;;;N;;;;; -FCD1;ARABIC LIGATURE MEEM WITH MEEM INITIAL FORM;Lo;0;AL; 0645 0645;;;;N;;;;; -FCD2;ARABIC LIGATURE NOON WITH JEEM INITIAL FORM;Lo;0;AL; 0646 062C;;;;N;;;;; -FCD3;ARABIC LIGATURE NOON WITH HAH INITIAL FORM;Lo;0;AL; 0646 062D;;;;N;;;;; -FCD4;ARABIC LIGATURE NOON WITH KHAH INITIAL FORM;Lo;0;AL; 0646 062E;;;;N;;;;; -FCD5;ARABIC LIGATURE NOON WITH MEEM INITIAL FORM;Lo;0;AL; 0646 0645;;;;N;;;;; -FCD6;ARABIC LIGATURE NOON WITH HEH INITIAL FORM;Lo;0;AL; 0646 0647;;;;N;;;;; -FCD7;ARABIC LIGATURE HEH WITH JEEM INITIAL FORM;Lo;0;AL; 0647 062C;;;;N;;;;; -FCD8;ARABIC LIGATURE HEH WITH MEEM INITIAL FORM;Lo;0;AL; 0647 0645;;;;N;;;;; -FCD9;ARABIC LIGATURE HEH WITH SUPERSCRIPT ALEF INITIAL FORM;Lo;0;AL; 0647 0670;;;;N;;;;; -FCDA;ARABIC LIGATURE YEH WITH JEEM INITIAL FORM;Lo;0;AL; 064A 062C;;;;N;;;;; -FCDB;ARABIC LIGATURE YEH WITH HAH INITIAL FORM;Lo;0;AL; 064A 062D;;;;N;;;;; -FCDC;ARABIC LIGATURE YEH WITH KHAH INITIAL FORM;Lo;0;AL; 064A 062E;;;;N;;;;; -FCDD;ARABIC LIGATURE YEH WITH MEEM INITIAL FORM;Lo;0;AL; 064A 0645;;;;N;;;;; -FCDE;ARABIC LIGATURE YEH WITH HEH INITIAL FORM;Lo;0;AL; 064A 0647;;;;N;;;;; -FCDF;ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH MEEM MEDIAL FORM;Lo;0;AL; 0626 0645;;;;N;;;;; -FCE0;ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH HEH MEDIAL FORM;Lo;0;AL; 0626 0647;;;;N;;;;; -FCE1;ARABIC LIGATURE BEH WITH MEEM MEDIAL FORM;Lo;0;AL; 0628 0645;;;;N;;;;; -FCE2;ARABIC LIGATURE BEH WITH HEH MEDIAL FORM;Lo;0;AL; 0628 0647;;;;N;;;;; -FCE3;ARABIC LIGATURE TEH WITH MEEM MEDIAL FORM;Lo;0;AL; 062A 0645;;;;N;;;;; -FCE4;ARABIC LIGATURE TEH WITH HEH MEDIAL FORM;Lo;0;AL; 062A 0647;;;;N;;;;; -FCE5;ARABIC LIGATURE THEH WITH MEEM MEDIAL FORM;Lo;0;AL; 062B 0645;;;;N;;;;; -FCE6;ARABIC LIGATURE THEH WITH HEH MEDIAL FORM;Lo;0;AL; 062B 0647;;;;N;;;;; -FCE7;ARABIC LIGATURE SEEN WITH MEEM MEDIAL FORM;Lo;0;AL; 0633 0645;;;;N;;;;; -FCE8;ARABIC LIGATURE SEEN WITH HEH MEDIAL FORM;Lo;0;AL; 0633 0647;;;;N;;;;; -FCE9;ARABIC LIGATURE SHEEN WITH MEEM MEDIAL FORM;Lo;0;AL; 0634 0645;;;;N;;;;; -FCEA;ARABIC LIGATURE SHEEN WITH HEH MEDIAL FORM;Lo;0;AL; 0634 0647;;;;N;;;;; -FCEB;ARABIC LIGATURE KAF WITH LAM MEDIAL FORM;Lo;0;AL; 0643 0644;;;;N;;;;; -FCEC;ARABIC LIGATURE KAF WITH MEEM MEDIAL FORM;Lo;0;AL; 0643 0645;;;;N;;;;; -FCED;ARABIC LIGATURE LAM WITH MEEM MEDIAL FORM;Lo;0;AL; 0644 0645;;;;N;;;;; -FCEE;ARABIC LIGATURE NOON WITH MEEM MEDIAL FORM;Lo;0;AL; 0646 0645;;;;N;;;;; -FCEF;ARABIC LIGATURE NOON WITH HEH MEDIAL FORM;Lo;0;AL; 0646 0647;;;;N;;;;; -FCF0;ARABIC LIGATURE YEH WITH MEEM MEDIAL FORM;Lo;0;AL; 064A 0645;;;;N;;;;; -FCF1;ARABIC LIGATURE YEH WITH HEH MEDIAL FORM;Lo;0;AL; 064A 0647;;;;N;;;;; -FCF2;ARABIC LIGATURE SHADDA WITH FATHA MEDIAL FORM;Lo;0;AL; 0640 064E 0651;;;;N;;;;; -FCF3;ARABIC LIGATURE SHADDA WITH DAMMA MEDIAL FORM;Lo;0;AL; 0640 064F 0651;;;;N;;;;; -FCF4;ARABIC LIGATURE SHADDA WITH KASRA MEDIAL FORM;Lo;0;AL; 0640 0650 0651;;;;N;;;;; -FCF5;ARABIC LIGATURE TAH WITH ALEF MAKSURA ISOLATED FORM;Lo;0;AL; 0637 0649;;;;N;;;;; -FCF6;ARABIC LIGATURE TAH WITH YEH ISOLATED FORM;Lo;0;AL; 0637 064A;;;;N;;;;; -FCF7;ARABIC LIGATURE AIN WITH ALEF MAKSURA ISOLATED FORM;Lo;0;AL; 0639 0649;;;;N;;;;; -FCF8;ARABIC LIGATURE AIN WITH YEH ISOLATED FORM;Lo;0;AL; 0639 064A;;;;N;;;;; -FCF9;ARABIC LIGATURE GHAIN WITH ALEF MAKSURA ISOLATED FORM;Lo;0;AL; 063A 0649;;;;N;;;;; -FCFA;ARABIC LIGATURE GHAIN WITH YEH ISOLATED FORM;Lo;0;AL; 063A 064A;;;;N;;;;; -FCFB;ARABIC LIGATURE SEEN WITH ALEF MAKSURA ISOLATED FORM;Lo;0;AL; 0633 0649;;;;N;;;;; -FCFC;ARABIC LIGATURE SEEN WITH YEH ISOLATED FORM;Lo;0;AL; 0633 064A;;;;N;;;;; -FCFD;ARABIC LIGATURE SHEEN WITH ALEF MAKSURA ISOLATED FORM;Lo;0;AL; 0634 0649;;;;N;;;;; -FCFE;ARABIC LIGATURE SHEEN WITH YEH ISOLATED FORM;Lo;0;AL; 0634 064A;;;;N;;;;; -FCFF;ARABIC LIGATURE HAH WITH ALEF MAKSURA ISOLATED FORM;Lo;0;AL; 062D 0649;;;;N;;;;; -FD00;ARABIC LIGATURE HAH WITH YEH ISOLATED FORM;Lo;0;AL; 062D 064A;;;;N;;;;; -FD01;ARABIC LIGATURE JEEM WITH ALEF MAKSURA ISOLATED FORM;Lo;0;AL; 062C 0649;;;;N;;;;; -FD02;ARABIC LIGATURE JEEM WITH YEH ISOLATED FORM;Lo;0;AL; 062C 064A;;;;N;;;;; -FD03;ARABIC LIGATURE KHAH WITH ALEF MAKSURA ISOLATED FORM;Lo;0;AL; 062E 0649;;;;N;;;;; -FD04;ARABIC LIGATURE KHAH WITH YEH ISOLATED FORM;Lo;0;AL; 062E 064A;;;;N;;;;; -FD05;ARABIC LIGATURE SAD WITH ALEF MAKSURA ISOLATED FORM;Lo;0;AL; 0635 0649;;;;N;;;;; -FD06;ARABIC LIGATURE SAD WITH YEH ISOLATED FORM;Lo;0;AL; 0635 064A;;;;N;;;;; -FD07;ARABIC LIGATURE DAD WITH ALEF MAKSURA ISOLATED FORM;Lo;0;AL; 0636 0649;;;;N;;;;; -FD08;ARABIC LIGATURE DAD WITH YEH ISOLATED FORM;Lo;0;AL; 0636 064A;;;;N;;;;; -FD09;ARABIC LIGATURE SHEEN WITH JEEM ISOLATED FORM;Lo;0;AL; 0634 062C;;;;N;;;;; -FD0A;ARABIC LIGATURE SHEEN WITH HAH ISOLATED FORM;Lo;0;AL; 0634 062D;;;;N;;;;; -FD0B;ARABIC LIGATURE SHEEN WITH KHAH ISOLATED FORM;Lo;0;AL; 0634 062E;;;;N;;;;; -FD0C;ARABIC LIGATURE SHEEN WITH MEEM ISOLATED FORM;Lo;0;AL; 0634 0645;;;;N;;;;; -FD0D;ARABIC LIGATURE SHEEN WITH REH ISOLATED FORM;Lo;0;AL; 0634 0631;;;;N;;;;; -FD0E;ARABIC LIGATURE SEEN WITH REH ISOLATED FORM;Lo;0;AL; 0633 0631;;;;N;;;;; -FD0F;ARABIC LIGATURE SAD WITH REH ISOLATED FORM;Lo;0;AL; 0635 0631;;;;N;;;;; -FD10;ARABIC LIGATURE DAD WITH REH ISOLATED FORM;Lo;0;AL; 0636 0631;;;;N;;;;; -FD11;ARABIC LIGATURE TAH WITH ALEF MAKSURA FINAL FORM;Lo;0;AL; 0637 0649;;;;N;;;;; -FD12;ARABIC LIGATURE TAH WITH YEH FINAL FORM;Lo;0;AL; 0637 064A;;;;N;;;;; -FD13;ARABIC LIGATURE AIN WITH ALEF MAKSURA FINAL FORM;Lo;0;AL; 0639 0649;;;;N;;;;; -FD14;ARABIC LIGATURE AIN WITH YEH FINAL FORM;Lo;0;AL; 0639 064A;;;;N;;;;; -FD15;ARABIC LIGATURE GHAIN WITH ALEF MAKSURA FINAL FORM;Lo;0;AL; 063A 0649;;;;N;;;;; -FD16;ARABIC LIGATURE GHAIN WITH YEH FINAL FORM;Lo;0;AL; 063A 064A;;;;N;;;;; -FD17;ARABIC LIGATURE SEEN WITH ALEF MAKSURA FINAL FORM;Lo;0;AL; 0633 0649;;;;N;;;;; -FD18;ARABIC LIGATURE SEEN WITH YEH FINAL FORM;Lo;0;AL; 0633 064A;;;;N;;;;; -FD19;ARABIC LIGATURE SHEEN WITH ALEF MAKSURA FINAL FORM;Lo;0;AL; 0634 0649;;;;N;;;;; -FD1A;ARABIC LIGATURE SHEEN WITH YEH FINAL FORM;Lo;0;AL; 0634 064A;;;;N;;;;; -FD1B;ARABIC LIGATURE HAH WITH ALEF MAKSURA FINAL FORM;Lo;0;AL; 062D 0649;;;;N;;;;; -FD1C;ARABIC LIGATURE HAH WITH YEH FINAL FORM;Lo;0;AL; 062D 064A;;;;N;;;;; -FD1D;ARABIC LIGATURE JEEM WITH ALEF MAKSURA FINAL FORM;Lo;0;AL; 062C 0649;;;;N;;;;; -FD1E;ARABIC LIGATURE JEEM WITH YEH FINAL FORM;Lo;0;AL; 062C 064A;;;;N;;;;; -FD1F;ARABIC LIGATURE KHAH WITH ALEF MAKSURA FINAL FORM;Lo;0;AL; 062E 0649;;;;N;;;;; -FD20;ARABIC LIGATURE KHAH WITH YEH FINAL FORM;Lo;0;AL; 062E 064A;;;;N;;;;; -FD21;ARABIC LIGATURE SAD WITH ALEF MAKSURA FINAL FORM;Lo;0;AL; 0635 0649;;;;N;;;;; -FD22;ARABIC LIGATURE SAD WITH YEH FINAL FORM;Lo;0;AL; 0635 064A;;;;N;;;;; -FD23;ARABIC LIGATURE DAD WITH ALEF MAKSURA FINAL FORM;Lo;0;AL; 0636 0649;;;;N;;;;; -FD24;ARABIC LIGATURE DAD WITH YEH FINAL FORM;Lo;0;AL; 0636 064A;;;;N;;;;; -FD25;ARABIC LIGATURE SHEEN WITH JEEM FINAL FORM;Lo;0;AL; 0634 062C;;;;N;;;;; -FD26;ARABIC LIGATURE SHEEN WITH HAH FINAL FORM;Lo;0;AL; 0634 062D;;;;N;;;;; -FD27;ARABIC LIGATURE SHEEN WITH KHAH FINAL FORM;Lo;0;AL; 0634 062E;;;;N;;;;; -FD28;ARABIC LIGATURE SHEEN WITH MEEM FINAL FORM;Lo;0;AL; 0634 0645;;;;N;;;;; -FD29;ARABIC LIGATURE SHEEN WITH REH FINAL FORM;Lo;0;AL; 0634 0631;;;;N;;;;; -FD2A;ARABIC LIGATURE SEEN WITH REH FINAL FORM;Lo;0;AL; 0633 0631;;;;N;;;;; -FD2B;ARABIC LIGATURE SAD WITH REH FINAL FORM;Lo;0;AL; 0635 0631;;;;N;;;;; -FD2C;ARABIC LIGATURE DAD WITH REH FINAL FORM;Lo;0;AL; 0636 0631;;;;N;;;;; -FD2D;ARABIC LIGATURE SHEEN WITH JEEM INITIAL FORM;Lo;0;AL; 0634 062C;;;;N;;;;; -FD2E;ARABIC LIGATURE SHEEN WITH HAH INITIAL FORM;Lo;0;AL; 0634 062D;;;;N;;;;; -FD2F;ARABIC LIGATURE SHEEN WITH KHAH INITIAL FORM;Lo;0;AL; 0634 062E;;;;N;;;;; -FD30;ARABIC LIGATURE SHEEN WITH MEEM INITIAL FORM;Lo;0;AL; 0634 0645;;;;N;;;;; -FD31;ARABIC LIGATURE SEEN WITH HEH INITIAL FORM;Lo;0;AL; 0633 0647;;;;N;;;;; -FD32;ARABIC LIGATURE SHEEN WITH HEH INITIAL FORM;Lo;0;AL; 0634 0647;;;;N;;;;; -FD33;ARABIC LIGATURE TAH WITH MEEM INITIAL FORM;Lo;0;AL; 0637 0645;;;;N;;;;; -FD34;ARABIC LIGATURE SEEN WITH JEEM MEDIAL FORM;Lo;0;AL; 0633 062C;;;;N;;;;; -FD35;ARABIC LIGATURE SEEN WITH HAH MEDIAL FORM;Lo;0;AL; 0633 062D;;;;N;;;;; -FD36;ARABIC LIGATURE SEEN WITH KHAH MEDIAL FORM;Lo;0;AL; 0633 062E;;;;N;;;;; -FD37;ARABIC LIGATURE SHEEN WITH JEEM MEDIAL FORM;Lo;0;AL; 0634 062C;;;;N;;;;; -FD38;ARABIC LIGATURE SHEEN WITH HAH MEDIAL FORM;Lo;0;AL; 0634 062D;;;;N;;;;; -FD39;ARABIC LIGATURE SHEEN WITH KHAH MEDIAL FORM;Lo;0;AL; 0634 062E;;;;N;;;;; -FD3A;ARABIC LIGATURE TAH WITH MEEM MEDIAL FORM;Lo;0;AL; 0637 0645;;;;N;;;;; -FD3B;ARABIC LIGATURE ZAH WITH MEEM MEDIAL FORM;Lo;0;AL; 0638 0645;;;;N;;;;; -FD3C;ARABIC LIGATURE ALEF WITH FATHATAN FINAL FORM;Lo;0;AL; 0627 064B;;;;N;;;;; -FD3D;ARABIC LIGATURE ALEF WITH FATHATAN ISOLATED FORM;Lo;0;AL; 0627 064B;;;;N;;;;; -FD3E;ORNATE LEFT PARENTHESIS;Ps;0;ON;;;;;N;;;;; -FD3F;ORNATE RIGHT PARENTHESIS;Pe;0;ON;;;;;N;;;;; -FD50;ARABIC LIGATURE TEH WITH JEEM WITH MEEM INITIAL FORM;Lo;0;AL; 062A 062C 0645;;;;N;;;;; -FD51;ARABIC LIGATURE TEH WITH HAH WITH JEEM FINAL FORM;Lo;0;AL; 062A 062D 062C;;;;N;;;;; -FD52;ARABIC LIGATURE TEH WITH HAH WITH JEEM INITIAL FORM;Lo;0;AL; 062A 062D 062C;;;;N;;;;; -FD53;ARABIC LIGATURE TEH WITH HAH WITH MEEM INITIAL FORM;Lo;0;AL; 062A 062D 0645;;;;N;;;;; -FD54;ARABIC LIGATURE TEH WITH KHAH WITH MEEM INITIAL FORM;Lo;0;AL; 062A 062E 0645;;;;N;;;;; -FD55;ARABIC LIGATURE TEH WITH MEEM WITH JEEM INITIAL FORM;Lo;0;AL; 062A 0645 062C;;;;N;;;;; -FD56;ARABIC LIGATURE TEH WITH MEEM WITH HAH INITIAL FORM;Lo;0;AL; 062A 0645 062D;;;;N;;;;; -FD57;ARABIC LIGATURE TEH WITH MEEM WITH KHAH INITIAL FORM;Lo;0;AL; 062A 0645 062E;;;;N;;;;; -FD58;ARABIC LIGATURE JEEM WITH MEEM WITH HAH FINAL FORM;Lo;0;AL; 062C 0645 062D;;;;N;;;;; -FD59;ARABIC LIGATURE JEEM WITH MEEM WITH HAH INITIAL FORM;Lo;0;AL; 062C 0645 062D;;;;N;;;;; -FD5A;ARABIC LIGATURE HAH WITH MEEM WITH YEH FINAL FORM;Lo;0;AL; 062D 0645 064A;;;;N;;;;; -FD5B;ARABIC LIGATURE HAH WITH MEEM WITH ALEF MAKSURA FINAL FORM;Lo;0;AL; 062D 0645 0649;;;;N;;;;; -FD5C;ARABIC LIGATURE SEEN WITH HAH WITH JEEM INITIAL FORM;Lo;0;AL; 0633 062D 062C;;;;N;;;;; -FD5D;ARABIC LIGATURE SEEN WITH JEEM WITH HAH INITIAL FORM;Lo;0;AL; 0633 062C 062D;;;;N;;;;; -FD5E;ARABIC LIGATURE SEEN WITH JEEM WITH ALEF MAKSURA FINAL FORM;Lo;0;AL; 0633 062C 0649;;;;N;;;;; -FD5F;ARABIC LIGATURE SEEN WITH MEEM WITH HAH FINAL FORM;Lo;0;AL; 0633 0645 062D;;;;N;;;;; -FD60;ARABIC LIGATURE SEEN WITH MEEM WITH HAH INITIAL FORM;Lo;0;AL; 0633 0645 062D;;;;N;;;;; -FD61;ARABIC LIGATURE SEEN WITH MEEM WITH JEEM INITIAL FORM;Lo;0;AL; 0633 0645 062C;;;;N;;;;; -FD62;ARABIC LIGATURE SEEN WITH MEEM WITH MEEM FINAL FORM;Lo;0;AL; 0633 0645 0645;;;;N;;;;; -FD63;ARABIC LIGATURE SEEN WITH MEEM WITH MEEM INITIAL FORM;Lo;0;AL; 0633 0645 0645;;;;N;;;;; -FD64;ARABIC LIGATURE SAD WITH HAH WITH HAH FINAL FORM;Lo;0;AL; 0635 062D 062D;;;;N;;;;; -FD65;ARABIC LIGATURE SAD WITH HAH WITH HAH INITIAL FORM;Lo;0;AL; 0635 062D 062D;;;;N;;;;; -FD66;ARABIC LIGATURE SAD WITH MEEM WITH MEEM FINAL FORM;Lo;0;AL; 0635 0645 0645;;;;N;;;;; -FD67;ARABIC LIGATURE SHEEN WITH HAH WITH MEEM FINAL FORM;Lo;0;AL; 0634 062D 0645;;;;N;;;;; -FD68;ARABIC LIGATURE SHEEN WITH HAH WITH MEEM INITIAL FORM;Lo;0;AL; 0634 062D 0645;;;;N;;;;; -FD69;ARABIC LIGATURE SHEEN WITH JEEM WITH YEH FINAL FORM;Lo;0;AL; 0634 062C 064A;;;;N;;;;; -FD6A;ARABIC LIGATURE SHEEN WITH MEEM WITH KHAH FINAL FORM;Lo;0;AL; 0634 0645 062E;;;;N;;;;; -FD6B;ARABIC LIGATURE SHEEN WITH MEEM WITH KHAH INITIAL FORM;Lo;0;AL; 0634 0645 062E;;;;N;;;;; -FD6C;ARABIC LIGATURE SHEEN WITH MEEM WITH MEEM FINAL FORM;Lo;0;AL; 0634 0645 0645;;;;N;;;;; -FD6D;ARABIC LIGATURE SHEEN WITH MEEM WITH MEEM INITIAL FORM;Lo;0;AL; 0634 0645 0645;;;;N;;;;; -FD6E;ARABIC LIGATURE DAD WITH HAH WITH ALEF MAKSURA FINAL FORM;Lo;0;AL; 0636 062D 0649;;;;N;;;;; -FD6F;ARABIC LIGATURE DAD WITH KHAH WITH MEEM FINAL FORM;Lo;0;AL; 0636 062E 0645;;;;N;;;;; -FD70;ARABIC LIGATURE DAD WITH KHAH WITH MEEM INITIAL FORM;Lo;0;AL; 0636 062E 0645;;;;N;;;;; -FD71;ARABIC LIGATURE TAH WITH MEEM WITH HAH FINAL FORM;Lo;0;AL; 0637 0645 062D;;;;N;;;;; -FD72;ARABIC LIGATURE TAH WITH MEEM WITH HAH INITIAL FORM;Lo;0;AL; 0637 0645 062D;;;;N;;;;; -FD73;ARABIC LIGATURE TAH WITH MEEM WITH MEEM INITIAL FORM;Lo;0;AL; 0637 0645 0645;;;;N;;;;; -FD74;ARABIC LIGATURE TAH WITH MEEM WITH YEH FINAL FORM;Lo;0;AL; 0637 0645 064A;;;;N;;;;; -FD75;ARABIC LIGATURE AIN WITH JEEM WITH MEEM FINAL FORM;Lo;0;AL; 0639 062C 0645;;;;N;;;;; -FD76;ARABIC LIGATURE AIN WITH MEEM WITH MEEM FINAL FORM;Lo;0;AL; 0639 0645 0645;;;;N;;;;; -FD77;ARABIC LIGATURE AIN WITH MEEM WITH MEEM INITIAL FORM;Lo;0;AL; 0639 0645 0645;;;;N;;;;; -FD78;ARABIC LIGATURE AIN WITH MEEM WITH ALEF MAKSURA FINAL FORM;Lo;0;AL; 0639 0645 0649;;;;N;;;;; -FD79;ARABIC LIGATURE GHAIN WITH MEEM WITH MEEM FINAL FORM;Lo;0;AL; 063A 0645 0645;;;;N;;;;; -FD7A;ARABIC LIGATURE GHAIN WITH MEEM WITH YEH FINAL FORM;Lo;0;AL; 063A 0645 064A;;;;N;;;;; -FD7B;ARABIC LIGATURE GHAIN WITH MEEM WITH ALEF MAKSURA FINAL FORM;Lo;0;AL; 063A 0645 0649;;;;N;;;;; -FD7C;ARABIC LIGATURE FEH WITH KHAH WITH MEEM FINAL FORM;Lo;0;AL; 0641 062E 0645;;;;N;;;;; -FD7D;ARABIC LIGATURE FEH WITH KHAH WITH MEEM INITIAL FORM;Lo;0;AL; 0641 062E 0645;;;;N;;;;; -FD7E;ARABIC LIGATURE QAF WITH MEEM WITH HAH FINAL FORM;Lo;0;AL; 0642 0645 062D;;;;N;;;;; -FD7F;ARABIC LIGATURE QAF WITH MEEM WITH MEEM FINAL FORM;Lo;0;AL; 0642 0645 0645;;;;N;;;;; -FD80;ARABIC LIGATURE LAM WITH HAH WITH MEEM FINAL FORM;Lo;0;AL; 0644 062D 0645;;;;N;;;;; -FD81;ARABIC LIGATURE LAM WITH HAH WITH YEH FINAL FORM;Lo;0;AL; 0644 062D 064A;;;;N;;;;; -FD82;ARABIC LIGATURE LAM WITH HAH WITH ALEF MAKSURA FINAL FORM;Lo;0;AL; 0644 062D 0649;;;;N;;;;; -FD83;ARABIC LIGATURE LAM WITH JEEM WITH JEEM INITIAL FORM;Lo;0;AL; 0644 062C 062C;;;;N;;;;; -FD84;ARABIC LIGATURE LAM WITH JEEM WITH JEEM FINAL FORM;Lo;0;AL; 0644 062C 062C;;;;N;;;;; -FD85;ARABIC LIGATURE LAM WITH KHAH WITH MEEM FINAL FORM;Lo;0;AL; 0644 062E 0645;;;;N;;;;; -FD86;ARABIC LIGATURE LAM WITH KHAH WITH MEEM INITIAL FORM;Lo;0;AL; 0644 062E 0645;;;;N;;;;; -FD87;ARABIC LIGATURE LAM WITH MEEM WITH HAH FINAL FORM;Lo;0;AL; 0644 0645 062D;;;;N;;;;; -FD88;ARABIC LIGATURE LAM WITH MEEM WITH HAH INITIAL FORM;Lo;0;AL; 0644 0645 062D;;;;N;;;;; -FD89;ARABIC LIGATURE MEEM WITH HAH WITH JEEM INITIAL FORM;Lo;0;AL; 0645 062D 062C;;;;N;;;;; -FD8A;ARABIC LIGATURE MEEM WITH HAH WITH MEEM INITIAL FORM;Lo;0;AL; 0645 062D 0645;;;;N;;;;; -FD8B;ARABIC LIGATURE MEEM WITH HAH WITH YEH FINAL FORM;Lo;0;AL; 0645 062D 064A;;;;N;;;;; -FD8C;ARABIC LIGATURE MEEM WITH JEEM WITH HAH INITIAL FORM;Lo;0;AL; 0645 062C 062D;;;;N;;;;; -FD8D;ARABIC LIGATURE MEEM WITH JEEM WITH MEEM INITIAL FORM;Lo;0;AL; 0645 062C 0645;;;;N;;;;; -FD8E;ARABIC LIGATURE MEEM WITH KHAH WITH JEEM INITIAL FORM;Lo;0;AL; 0645 062E 062C;;;;N;;;;; -FD8F;ARABIC LIGATURE MEEM WITH KHAH WITH MEEM INITIAL FORM;Lo;0;AL; 0645 062E 0645;;;;N;;;;; -FD92;ARABIC LIGATURE MEEM WITH JEEM WITH KHAH INITIAL FORM;Lo;0;AL; 0645 062C 062E;;;;N;;;;; -FD93;ARABIC LIGATURE HEH WITH MEEM WITH JEEM INITIAL FORM;Lo;0;AL; 0647 0645 062C;;;;N;;;;; -FD94;ARABIC LIGATURE HEH WITH MEEM WITH MEEM INITIAL FORM;Lo;0;AL; 0647 0645 0645;;;;N;;;;; -FD95;ARABIC LIGATURE NOON WITH HAH WITH MEEM INITIAL FORM;Lo;0;AL; 0646 062D 0645;;;;N;;;;; -FD96;ARABIC LIGATURE NOON WITH HAH WITH ALEF MAKSURA FINAL FORM;Lo;0;AL; 0646 062D 0649;;;;N;;;;; -FD97;ARABIC LIGATURE NOON WITH JEEM WITH MEEM FINAL FORM;Lo;0;AL; 0646 062C 0645;;;;N;;;;; -FD98;ARABIC LIGATURE NOON WITH JEEM WITH MEEM INITIAL FORM;Lo;0;AL; 0646 062C 0645;;;;N;;;;; -FD99;ARABIC LIGATURE NOON WITH JEEM WITH ALEF MAKSURA FINAL FORM;Lo;0;AL; 0646 062C 0649;;;;N;;;;; -FD9A;ARABIC LIGATURE NOON WITH MEEM WITH YEH FINAL FORM;Lo;0;AL; 0646 0645 064A;;;;N;;;;; -FD9B;ARABIC LIGATURE NOON WITH MEEM WITH ALEF MAKSURA FINAL FORM;Lo;0;AL; 0646 0645 0649;;;;N;;;;; -FD9C;ARABIC LIGATURE YEH WITH MEEM WITH MEEM FINAL FORM;Lo;0;AL; 064A 0645 0645;;;;N;;;;; -FD9D;ARABIC LIGATURE YEH WITH MEEM WITH MEEM INITIAL FORM;Lo;0;AL; 064A 0645 0645;;;;N;;;;; -FD9E;ARABIC LIGATURE BEH WITH KHAH WITH YEH FINAL FORM;Lo;0;AL; 0628 062E 064A;;;;N;;;;; -FD9F;ARABIC LIGATURE TEH WITH JEEM WITH YEH FINAL FORM;Lo;0;AL; 062A 062C 064A;;;;N;;;;; -FDA0;ARABIC LIGATURE TEH WITH JEEM WITH ALEF MAKSURA FINAL FORM;Lo;0;AL; 062A 062C 0649;;;;N;;;;; -FDA1;ARABIC LIGATURE TEH WITH KHAH WITH YEH FINAL FORM;Lo;0;AL; 062A 062E 064A;;;;N;;;;; -FDA2;ARABIC LIGATURE TEH WITH KHAH WITH ALEF MAKSURA FINAL FORM;Lo;0;AL; 062A 062E 0649;;;;N;;;;; -FDA3;ARABIC LIGATURE TEH WITH MEEM WITH YEH FINAL FORM;Lo;0;AL; 062A 0645 064A;;;;N;;;;; -FDA4;ARABIC LIGATURE TEH WITH MEEM WITH ALEF MAKSURA FINAL FORM;Lo;0;AL; 062A 0645 0649;;;;N;;;;; -FDA5;ARABIC LIGATURE JEEM WITH MEEM WITH YEH FINAL FORM;Lo;0;AL; 062C 0645 064A;;;;N;;;;; -FDA6;ARABIC LIGATURE JEEM WITH HAH WITH ALEF MAKSURA FINAL FORM;Lo;0;AL; 062C 062D 0649;;;;N;;;;; -FDA7;ARABIC LIGATURE JEEM WITH MEEM WITH ALEF MAKSURA FINAL FORM;Lo;0;AL; 062C 0645 0649;;;;N;;;;; -FDA8;ARABIC LIGATURE SEEN WITH KHAH WITH ALEF MAKSURA FINAL FORM;Lo;0;AL; 0633 062E 0649;;;;N;;;;; -FDA9;ARABIC LIGATURE SAD WITH HAH WITH YEH FINAL FORM;Lo;0;AL; 0635 062D 064A;;;;N;;;;; -FDAA;ARABIC LIGATURE SHEEN WITH HAH WITH YEH FINAL FORM;Lo;0;AL; 0634 062D 064A;;;;N;;;;; -FDAB;ARABIC LIGATURE DAD WITH HAH WITH YEH FINAL FORM;Lo;0;AL; 0636 062D 064A;;;;N;;;;; -FDAC;ARABIC LIGATURE LAM WITH JEEM WITH YEH FINAL FORM;Lo;0;AL; 0644 062C 064A;;;;N;;;;; -FDAD;ARABIC LIGATURE LAM WITH MEEM WITH YEH FINAL FORM;Lo;0;AL; 0644 0645 064A;;;;N;;;;; -FDAE;ARABIC LIGATURE YEH WITH HAH WITH YEH FINAL FORM;Lo;0;AL; 064A 062D 064A;;;;N;;;;; -FDAF;ARABIC LIGATURE YEH WITH JEEM WITH YEH FINAL FORM;Lo;0;AL; 064A 062C 064A;;;;N;;;;; -FDB0;ARABIC LIGATURE YEH WITH MEEM WITH YEH FINAL FORM;Lo;0;AL; 064A 0645 064A;;;;N;;;;; -FDB1;ARABIC LIGATURE MEEM WITH MEEM WITH YEH FINAL FORM;Lo;0;AL; 0645 0645 064A;;;;N;;;;; -FDB2;ARABIC LIGATURE QAF WITH MEEM WITH YEH FINAL FORM;Lo;0;AL; 0642 0645 064A;;;;N;;;;; -FDB3;ARABIC LIGATURE NOON WITH HAH WITH YEH FINAL FORM;Lo;0;AL; 0646 062D 064A;;;;N;;;;; -FDB4;ARABIC LIGATURE QAF WITH MEEM WITH HAH INITIAL FORM;Lo;0;AL; 0642 0645 062D;;;;N;;;;; -FDB5;ARABIC LIGATURE LAM WITH HAH WITH MEEM INITIAL FORM;Lo;0;AL; 0644 062D 0645;;;;N;;;;; -FDB6;ARABIC LIGATURE AIN WITH MEEM WITH YEH FINAL FORM;Lo;0;AL; 0639 0645 064A;;;;N;;;;; -FDB7;ARABIC LIGATURE KAF WITH MEEM WITH YEH FINAL FORM;Lo;0;AL; 0643 0645 064A;;;;N;;;;; -FDB8;ARABIC LIGATURE NOON WITH JEEM WITH HAH INITIAL FORM;Lo;0;AL; 0646 062C 062D;;;;N;;;;; -FDB9;ARABIC LIGATURE MEEM WITH KHAH WITH YEH FINAL FORM;Lo;0;AL; 0645 062E 064A;;;;N;;;;; -FDBA;ARABIC LIGATURE LAM WITH JEEM WITH MEEM INITIAL FORM;Lo;0;AL; 0644 062C 0645;;;;N;;;;; -FDBB;ARABIC LIGATURE KAF WITH MEEM WITH MEEM FINAL FORM;Lo;0;AL; 0643 0645 0645;;;;N;;;;; -FDBC;ARABIC LIGATURE LAM WITH JEEM WITH MEEM FINAL FORM;Lo;0;AL; 0644 062C 0645;;;;N;;;;; -FDBD;ARABIC LIGATURE NOON WITH JEEM WITH HAH FINAL FORM;Lo;0;AL; 0646 062C 062D;;;;N;;;;; -FDBE;ARABIC LIGATURE JEEM WITH HAH WITH YEH FINAL FORM;Lo;0;AL; 062C 062D 064A;;;;N;;;;; -FDBF;ARABIC LIGATURE HAH WITH JEEM WITH YEH FINAL FORM;Lo;0;AL; 062D 062C 064A;;;;N;;;;; -FDC0;ARABIC LIGATURE MEEM WITH JEEM WITH YEH FINAL FORM;Lo;0;AL; 0645 062C 064A;;;;N;;;;; -FDC1;ARABIC LIGATURE FEH WITH MEEM WITH YEH FINAL FORM;Lo;0;AL; 0641 0645 064A;;;;N;;;;; -FDC2;ARABIC LIGATURE BEH WITH HAH WITH YEH FINAL FORM;Lo;0;AL; 0628 062D 064A;;;;N;;;;; -FDC3;ARABIC LIGATURE KAF WITH MEEM WITH MEEM INITIAL FORM;Lo;0;AL; 0643 0645 0645;;;;N;;;;; -FDC4;ARABIC LIGATURE AIN WITH JEEM WITH MEEM INITIAL FORM;Lo;0;AL; 0639 062C 0645;;;;N;;;;; -FDC5;ARABIC LIGATURE SAD WITH MEEM WITH MEEM INITIAL FORM;Lo;0;AL; 0635 0645 0645;;;;N;;;;; -FDC6;ARABIC LIGATURE SEEN WITH KHAH WITH YEH FINAL FORM;Lo;0;AL; 0633 062E 064A;;;;N;;;;; -FDC7;ARABIC LIGATURE NOON WITH JEEM WITH YEH FINAL FORM;Lo;0;AL; 0646 062C 064A;;;;N;;;;; -FDF0;ARABIC LIGATURE SALLA USED AS KORANIC STOP SIGN ISOLATED FORM;Lo;0;AL; 0635 0644 06D2;;;;N;;;;; -FDF1;ARABIC LIGATURE QALA USED AS KORANIC STOP SIGN ISOLATED FORM;Lo;0;AL; 0642 0644 06D2;;;;N;;;;; -FDF2;ARABIC LIGATURE ALLAH ISOLATED FORM;Lo;0;AL; 0627 0644 0644 0647;;;;N;;;;; -FDF3;ARABIC LIGATURE AKBAR ISOLATED FORM;Lo;0;AL; 0627 0643 0628 0631;;;;N;;;;; -FDF4;ARABIC LIGATURE MOHAMMAD ISOLATED FORM;Lo;0;AL; 0645 062D 0645 062F;;;;N;;;;; -FDF5;ARABIC LIGATURE SALAM ISOLATED FORM;Lo;0;AL; 0635 0644 0639 0645;;;;N;;;;; -FDF6;ARABIC LIGATURE RASOUL ISOLATED FORM;Lo;0;AL; 0631 0633 0648 0644;;;;N;;;;; -FDF7;ARABIC LIGATURE ALAYHE ISOLATED FORM;Lo;0;AL; 0639 0644 064A 0647;;;;N;;;;; -FDF8;ARABIC LIGATURE WASALLAM ISOLATED FORM;Lo;0;AL; 0648 0633 0644 0645;;;;N;;;;; -FDF9;ARABIC LIGATURE SALLA ISOLATED FORM;Lo;0;AL; 0635 0644 0649;;;;N;;;;; -FDFA;ARABIC LIGATURE SALLALLAHOU ALAYHE WASALLAM;Lo;0;AL; 0635 0644 0649 0020 0627 0644 0644 0647 0020 0639 0644 064A 0647 0020 0648 0633 0644 0645;;;;N;ARABIC LETTER SALLALLAHOU ALAYHE WASALLAM;;;; -FDFB;ARABIC LIGATURE JALLAJALALOUHOU;Lo;0;AL; 062C 0644 0020 062C 0644 0627 0644 0647;;;;N;ARABIC LETTER JALLAJALALOUHOU;;;; -FDFC;RIAL SIGN;Sc;0;AL; 0631 06CC 0627 0644;;;;N;;;;; -FDFD;ARABIC LIGATURE BISMILLAH AR-RAHMAN AR-RAHEEM;So;0;ON;;;;;N;;;;; -FE00;VARIATION SELECTOR-1;Mn;0;NSM;;;;;N;;;;; -FE01;VARIATION SELECTOR-2;Mn;0;NSM;;;;;N;;;;; -FE02;VARIATION SELECTOR-3;Mn;0;NSM;;;;;N;;;;; -FE03;VARIATION SELECTOR-4;Mn;0;NSM;;;;;N;;;;; -FE04;VARIATION SELECTOR-5;Mn;0;NSM;;;;;N;;;;; -FE05;VARIATION SELECTOR-6;Mn;0;NSM;;;;;N;;;;; -FE06;VARIATION SELECTOR-7;Mn;0;NSM;;;;;N;;;;; -FE07;VARIATION SELECTOR-8;Mn;0;NSM;;;;;N;;;;; -FE08;VARIATION SELECTOR-9;Mn;0;NSM;;;;;N;;;;; -FE09;VARIATION SELECTOR-10;Mn;0;NSM;;;;;N;;;;; -FE0A;VARIATION SELECTOR-11;Mn;0;NSM;;;;;N;;;;; -FE0B;VARIATION SELECTOR-12;Mn;0;NSM;;;;;N;;;;; -FE0C;VARIATION SELECTOR-13;Mn;0;NSM;;;;;N;;;;; -FE0D;VARIATION SELECTOR-14;Mn;0;NSM;;;;;N;;;;; -FE0E;VARIATION SELECTOR-15;Mn;0;NSM;;;;;N;;;;; -FE0F;VARIATION SELECTOR-16;Mn;0;NSM;;;;;N;;;;; -FE10;PRESENTATION FORM FOR VERTICAL COMMA;Po;0;ON; 002C;;;;N;;;;; -FE11;PRESENTATION FORM FOR VERTICAL IDEOGRAPHIC COMMA;Po;0;ON; 3001;;;;N;;;;; -FE12;PRESENTATION FORM FOR VERTICAL IDEOGRAPHIC FULL STOP;Po;0;ON; 3002;;;;N;;;;; -FE13;PRESENTATION FORM FOR VERTICAL COLON;Po;0;ON; 003A;;;;N;;;;; -FE14;PRESENTATION FORM FOR VERTICAL SEMICOLON;Po;0;ON; 003B;;;;N;;;;; -FE15;PRESENTATION FORM FOR VERTICAL EXCLAMATION MARK;Po;0;ON; 0021;;;;N;;;;; -FE16;PRESENTATION FORM FOR VERTICAL QUESTION MARK;Po;0;ON; 003F;;;;N;;;;; -FE17;PRESENTATION FORM FOR VERTICAL LEFT WHITE LENTICULAR BRACKET;Ps;0;ON; 3016;;;;N;;;;; -FE18;PRESENTATION FORM FOR VERTICAL RIGHT WHITE LENTICULAR BRAKCET;Pe;0;ON; 3017;;;;N;;;;; -FE19;PRESENTATION FORM FOR VERTICAL HORIZONTAL ELLIPSIS;Po;0;ON; 2026;;;;N;;;;; -FE20;COMBINING LIGATURE LEFT HALF;Mn;230;NSM;;;;;N;;;;; -FE21;COMBINING LIGATURE RIGHT HALF;Mn;230;NSM;;;;;N;;;;; -FE22;COMBINING DOUBLE TILDE LEFT HALF;Mn;230;NSM;;;;;N;;;;; -FE23;COMBINING DOUBLE TILDE RIGHT HALF;Mn;230;NSM;;;;;N;;;;; -FE24;COMBINING MACRON LEFT HALF;Mn;230;NSM;;;;;N;;;;; -FE25;COMBINING MACRON RIGHT HALF;Mn;230;NSM;;;;;N;;;;; -FE26;COMBINING CONJOINING MACRON;Mn;230;NSM;;;;;N;;;;; -FE30;PRESENTATION FORM FOR VERTICAL TWO DOT LEADER;Po;0;ON; 2025;;;;N;GLYPH FOR VERTICAL TWO DOT LEADER;;;; -FE31;PRESENTATION FORM FOR VERTICAL EM DASH;Pd;0;ON; 2014;;;;N;GLYPH FOR VERTICAL EM DASH;;;; -FE32;PRESENTATION FORM FOR VERTICAL EN DASH;Pd;0;ON; 2013;;;;N;GLYPH FOR VERTICAL EN DASH;;;; -FE33;PRESENTATION FORM FOR VERTICAL LOW LINE;Pc;0;ON; 005F;;;;N;GLYPH FOR VERTICAL SPACING UNDERSCORE;;;; -FE34;PRESENTATION FORM FOR VERTICAL WAVY LOW LINE;Pc;0;ON; 005F;;;;N;GLYPH FOR VERTICAL SPACING WAVY UNDERSCORE;;;; -FE35;PRESENTATION FORM FOR VERTICAL LEFT PARENTHESIS;Ps;0;ON; 0028;;;;N;GLYPH FOR VERTICAL OPENING PARENTHESIS;;;; -FE36;PRESENTATION FORM FOR VERTICAL RIGHT PARENTHESIS;Pe;0;ON; 0029;;;;N;GLYPH FOR VERTICAL CLOSING PARENTHESIS;;;; -FE37;PRESENTATION FORM FOR VERTICAL LEFT CURLY BRACKET;Ps;0;ON; 007B;;;;N;GLYPH FOR VERTICAL OPENING CURLY BRACKET;;;; -FE38;PRESENTATION FORM FOR VERTICAL RIGHT CURLY BRACKET;Pe;0;ON; 007D;;;;N;GLYPH FOR VERTICAL CLOSING CURLY BRACKET;;;; -FE39;PRESENTATION FORM FOR VERTICAL LEFT TORTOISE SHELL BRACKET;Ps;0;ON; 3014;;;;N;GLYPH FOR VERTICAL OPENING TORTOISE SHELL BRACKET;;;; -FE3A;PRESENTATION FORM FOR VERTICAL RIGHT TORTOISE SHELL BRACKET;Pe;0;ON; 3015;;;;N;GLYPH FOR VERTICAL CLOSING TORTOISE SHELL BRACKET;;;; -FE3B;PRESENTATION FORM FOR VERTICAL LEFT BLACK LENTICULAR BRACKET;Ps;0;ON; 3010;;;;N;GLYPH FOR VERTICAL OPENING BLACK LENTICULAR BRACKET;;;; -FE3C;PRESENTATION FORM FOR VERTICAL RIGHT BLACK LENTICULAR BRACKET;Pe;0;ON; 3011;;;;N;GLYPH FOR VERTICAL CLOSING BLACK LENTICULAR BRACKET;;;; -FE3D;PRESENTATION FORM FOR VERTICAL LEFT DOUBLE ANGLE BRACKET;Ps;0;ON; 300A;;;;N;GLYPH FOR VERTICAL OPENING DOUBLE ANGLE BRACKET;;;; -FE3E;PRESENTATION FORM FOR VERTICAL RIGHT DOUBLE ANGLE BRACKET;Pe;0;ON; 300B;;;;N;GLYPH FOR VERTICAL CLOSING DOUBLE ANGLE BRACKET;;;; -FE3F;PRESENTATION FORM FOR VERTICAL LEFT ANGLE BRACKET;Ps;0;ON; 3008;;;;N;GLYPH FOR VERTICAL OPENING ANGLE BRACKET;;;; -FE40;PRESENTATION FORM FOR VERTICAL RIGHT ANGLE BRACKET;Pe;0;ON; 3009;;;;N;GLYPH FOR VERTICAL CLOSING ANGLE BRACKET;;;; -FE41;PRESENTATION FORM FOR VERTICAL LEFT CORNER BRACKET;Ps;0;ON; 300C;;;;N;GLYPH FOR VERTICAL OPENING CORNER BRACKET;;;; -FE42;PRESENTATION FORM FOR VERTICAL RIGHT CORNER BRACKET;Pe;0;ON; 300D;;;;N;GLYPH FOR VERTICAL CLOSING CORNER BRACKET;;;; -FE43;PRESENTATION FORM FOR VERTICAL LEFT WHITE CORNER BRACKET;Ps;0;ON; 300E;;;;N;GLYPH FOR VERTICAL OPENING WHITE CORNER BRACKET;;;; -FE44;PRESENTATION FORM FOR VERTICAL RIGHT WHITE CORNER BRACKET;Pe;0;ON; 300F;;;;N;GLYPH FOR VERTICAL CLOSING WHITE CORNER BRACKET;;;; -FE45;SESAME DOT;Po;0;ON;;;;;N;;;;; -FE46;WHITE SESAME DOT;Po;0;ON;;;;;N;;;;; -FE47;PRESENTATION FORM FOR VERTICAL LEFT SQUARE BRACKET;Ps;0;ON; 005B;;;;N;;;;; -FE48;PRESENTATION FORM FOR VERTICAL RIGHT SQUARE BRACKET;Pe;0;ON; 005D;;;;N;;;;; -FE49;DASHED OVERLINE;Po;0;ON; 203E;;;;N;SPACING DASHED OVERSCORE;;;; -FE4A;CENTRELINE OVERLINE;Po;0;ON; 203E;;;;N;SPACING CENTERLINE OVERSCORE;;;; -FE4B;WAVY OVERLINE;Po;0;ON; 203E;;;;N;SPACING WAVY OVERSCORE;;;; -FE4C;DOUBLE WAVY OVERLINE;Po;0;ON; 203E;;;;N;SPACING DOUBLE WAVY OVERSCORE;;;; -FE4D;DASHED LOW LINE;Pc;0;ON; 005F;;;;N;SPACING DASHED UNDERSCORE;;;; -FE4E;CENTRELINE LOW LINE;Pc;0;ON; 005F;;;;N;SPACING CENTERLINE UNDERSCORE;;;; -FE4F;WAVY LOW LINE;Pc;0;ON; 005F;;;;N;SPACING WAVY UNDERSCORE;;;; -FE50;SMALL COMMA;Po;0;CS; 002C;;;;N;;;;; -FE51;SMALL IDEOGRAPHIC COMMA;Po;0;ON; 3001;;;;N;;;;; -FE52;SMALL FULL STOP;Po;0;CS; 002E;;;;N;SMALL PERIOD;;;; -FE54;SMALL SEMICOLON;Po;0;ON; 003B;;;;N;;;;; -FE55;SMALL COLON;Po;0;CS; 003A;;;;N;;;;; -FE56;SMALL QUESTION MARK;Po;0;ON; 003F;;;;N;;;;; -FE57;SMALL EXCLAMATION MARK;Po;0;ON; 0021;;;;N;;;;; -FE58;SMALL EM DASH;Pd;0;ON; 2014;;;;N;;;;; -FE59;SMALL LEFT PARENTHESIS;Ps;0;ON; 0028;;;;Y;SMALL OPENING PARENTHESIS;;;; -FE5A;SMALL RIGHT PARENTHESIS;Pe;0;ON; 0029;;;;Y;SMALL CLOSING PARENTHESIS;;;; -FE5B;SMALL LEFT CURLY BRACKET;Ps;0;ON; 007B;;;;Y;SMALL OPENING CURLY BRACKET;;;; -FE5C;SMALL RIGHT CURLY BRACKET;Pe;0;ON; 007D;;;;Y;SMALL CLOSING CURLY BRACKET;;;; -FE5D;SMALL LEFT TORTOISE SHELL BRACKET;Ps;0;ON; 3014;;;;Y;SMALL OPENING TORTOISE SHELL BRACKET;;;; -FE5E;SMALL RIGHT TORTOISE SHELL BRACKET;Pe;0;ON; 3015;;;;Y;SMALL CLOSING TORTOISE SHELL BRACKET;;;; -FE5F;SMALL NUMBER SIGN;Po;0;ET; 0023;;;;N;;;;; -FE60;SMALL AMPERSAND;Po;0;ON; 0026;;;;N;;;;; -FE61;SMALL ASTERISK;Po;0;ON; 002A;;;;N;;;;; -FE62;SMALL PLUS SIGN;Sm;0;ES; 002B;;;;N;;;;; -FE63;SMALL HYPHEN-MINUS;Pd;0;ES; 002D;;;;N;;;;; -FE64;SMALL LESS-THAN SIGN;Sm;0;ON; 003C;;;;Y;;;;; -FE65;SMALL GREATER-THAN SIGN;Sm;0;ON; 003E;;;;Y;;;;; -FE66;SMALL EQUALS SIGN;Sm;0;ON; 003D;;;;N;;;;; -FE68;SMALL REVERSE SOLIDUS;Po;0;ON; 005C;;;;N;SMALL BACKSLASH;;;; -FE69;SMALL DOLLAR SIGN;Sc;0;ET; 0024;;;;N;;;;; -FE6A;SMALL PERCENT SIGN;Po;0;ET; 0025;;;;N;;;;; -FE6B;SMALL COMMERCIAL AT;Po;0;ON; 0040;;;;N;;;;; -FE70;ARABIC FATHATAN ISOLATED FORM;Lo;0;AL; 0020 064B;;;;N;ARABIC SPACING FATHATAN;;;; -FE71;ARABIC TATWEEL WITH FATHATAN ABOVE;Lo;0;AL; 0640 064B;;;;N;ARABIC FATHATAN ON TATWEEL;;;; -FE72;ARABIC DAMMATAN ISOLATED FORM;Lo;0;AL; 0020 064C;;;;N;ARABIC SPACING DAMMATAN;;;; -FE73;ARABIC TAIL FRAGMENT;Lo;0;AL;;;;;N;;;;; -FE74;ARABIC KASRATAN ISOLATED FORM;Lo;0;AL; 0020 064D;;;;N;ARABIC SPACING KASRATAN;;;; -FE76;ARABIC FATHA ISOLATED FORM;Lo;0;AL; 0020 064E;;;;N;ARABIC SPACING FATHAH;;;; -FE77;ARABIC FATHA MEDIAL FORM;Lo;0;AL; 0640 064E;;;;N;ARABIC FATHAH ON TATWEEL;;;; -FE78;ARABIC DAMMA ISOLATED FORM;Lo;0;AL; 0020 064F;;;;N;ARABIC SPACING DAMMAH;;;; -FE79;ARABIC DAMMA MEDIAL FORM;Lo;0;AL; 0640 064F;;;;N;ARABIC DAMMAH ON TATWEEL;;;; -FE7A;ARABIC KASRA ISOLATED FORM;Lo;0;AL; 0020 0650;;;;N;ARABIC SPACING KASRAH;;;; -FE7B;ARABIC KASRA MEDIAL FORM;Lo;0;AL; 0640 0650;;;;N;ARABIC KASRAH ON TATWEEL;;;; -FE7C;ARABIC SHADDA ISOLATED FORM;Lo;0;AL; 0020 0651;;;;N;ARABIC SPACING SHADDAH;;;; -FE7D;ARABIC SHADDA MEDIAL FORM;Lo;0;AL; 0640 0651;;;;N;ARABIC SHADDAH ON TATWEEL;;;; -FE7E;ARABIC SUKUN ISOLATED FORM;Lo;0;AL; 0020 0652;;;;N;ARABIC SPACING SUKUN;;;; -FE7F;ARABIC SUKUN MEDIAL FORM;Lo;0;AL; 0640 0652;;;;N;ARABIC SUKUN ON TATWEEL;;;; -FE80;ARABIC LETTER HAMZA ISOLATED FORM;Lo;0;AL; 0621;;;;N;GLYPH FOR ISOLATE ARABIC HAMZAH;;;; -FE81;ARABIC LETTER ALEF WITH MADDA ABOVE ISOLATED FORM;Lo;0;AL; 0622;;;;N;GLYPH FOR ISOLATE ARABIC MADDAH ON ALEF;;;; -FE82;ARABIC LETTER ALEF WITH MADDA ABOVE FINAL FORM;Lo;0;AL; 0622;;;;N;GLYPH FOR FINAL ARABIC MADDAH ON ALEF;;;; -FE83;ARABIC LETTER ALEF WITH HAMZA ABOVE ISOLATED FORM;Lo;0;AL; 0623;;;;N;GLYPH FOR ISOLATE ARABIC HAMZAH ON ALEF;;;; -FE84;ARABIC LETTER ALEF WITH HAMZA ABOVE FINAL FORM;Lo;0;AL; 0623;;;;N;GLYPH FOR FINAL ARABIC HAMZAH ON ALEF;;;; -FE85;ARABIC LETTER WAW WITH HAMZA ABOVE ISOLATED FORM;Lo;0;AL; 0624;;;;N;GLYPH FOR ISOLATE ARABIC HAMZAH ON WAW;;;; -FE86;ARABIC LETTER WAW WITH HAMZA ABOVE FINAL FORM;Lo;0;AL; 0624;;;;N;GLYPH FOR FINAL ARABIC HAMZAH ON WAW;;;; -FE87;ARABIC LETTER ALEF WITH HAMZA BELOW ISOLATED FORM;Lo;0;AL; 0625;;;;N;GLYPH FOR ISOLATE ARABIC HAMZAH UNDER ALEF;;;; -FE88;ARABIC LETTER ALEF WITH HAMZA BELOW FINAL FORM;Lo;0;AL; 0625;;;;N;GLYPH FOR FINAL ARABIC HAMZAH UNDER ALEF;;;; -FE89;ARABIC LETTER YEH WITH HAMZA ABOVE ISOLATED FORM;Lo;0;AL; 0626;;;;N;GLYPH FOR ISOLATE ARABIC HAMZAH ON YA;;;; -FE8A;ARABIC LETTER YEH WITH HAMZA ABOVE FINAL FORM;Lo;0;AL; 0626;;;;N;GLYPH FOR FINAL ARABIC HAMZAH ON YA;;;; -FE8B;ARABIC LETTER YEH WITH HAMZA ABOVE INITIAL FORM;Lo;0;AL; 0626;;;;N;GLYPH FOR INITIAL ARABIC HAMZAH ON YA;;;; -FE8C;ARABIC LETTER YEH WITH HAMZA ABOVE MEDIAL FORM;Lo;0;AL; 0626;;;;N;GLYPH FOR MEDIAL ARABIC HAMZAH ON YA;;;; -FE8D;ARABIC LETTER ALEF ISOLATED FORM;Lo;0;AL; 0627;;;;N;GLYPH FOR ISOLATE ARABIC ALEF;;;; -FE8E;ARABIC LETTER ALEF FINAL FORM;Lo;0;AL; 0627;;;;N;GLYPH FOR FINAL ARABIC ALEF;;;; -FE8F;ARABIC LETTER BEH ISOLATED FORM;Lo;0;AL; 0628;;;;N;GLYPH FOR ISOLATE ARABIC BAA;;;; -FE90;ARABIC LETTER BEH FINAL FORM;Lo;0;AL; 0628;;;;N;GLYPH FOR FINAL ARABIC BAA;;;; -FE91;ARABIC LETTER BEH INITIAL FORM;Lo;0;AL; 0628;;;;N;GLYPH FOR INITIAL ARABIC BAA;;;; -FE92;ARABIC LETTER BEH MEDIAL FORM;Lo;0;AL; 0628;;;;N;GLYPH FOR MEDIAL ARABIC BAA;;;; -FE93;ARABIC LETTER TEH MARBUTA ISOLATED FORM;Lo;0;AL; 0629;;;;N;GLYPH FOR ISOLATE ARABIC TAA MARBUTAH;;;; -FE94;ARABIC LETTER TEH MARBUTA FINAL FORM;Lo;0;AL; 0629;;;;N;GLYPH FOR FINAL ARABIC TAA MARBUTAH;;;; -FE95;ARABIC LETTER TEH ISOLATED FORM;Lo;0;AL; 062A;;;;N;GLYPH FOR ISOLATE ARABIC TAA;;;; -FE96;ARABIC LETTER TEH FINAL FORM;Lo;0;AL; 062A;;;;N;GLYPH FOR FINAL ARABIC TAA;;;; -FE97;ARABIC LETTER TEH INITIAL FORM;Lo;0;AL; 062A;;;;N;GLYPH FOR INITIAL ARABIC TAA;;;; -FE98;ARABIC LETTER TEH MEDIAL FORM;Lo;0;AL; 062A;;;;N;GLYPH FOR MEDIAL ARABIC TAA;;;; -FE99;ARABIC LETTER THEH ISOLATED FORM;Lo;0;AL; 062B;;;;N;GLYPH FOR ISOLATE ARABIC THAA;;;; -FE9A;ARABIC LETTER THEH FINAL FORM;Lo;0;AL; 062B;;;;N;GLYPH FOR FINAL ARABIC THAA;;;; -FE9B;ARABIC LETTER THEH INITIAL FORM;Lo;0;AL; 062B;;;;N;GLYPH FOR INITIAL ARABIC THAA;;;; -FE9C;ARABIC LETTER THEH MEDIAL FORM;Lo;0;AL; 062B;;;;N;GLYPH FOR MEDIAL ARABIC THAA;;;; -FE9D;ARABIC LETTER JEEM ISOLATED FORM;Lo;0;AL; 062C;;;;N;GLYPH FOR ISOLATE ARABIC JEEM;;;; -FE9E;ARABIC LETTER JEEM FINAL FORM;Lo;0;AL; 062C;;;;N;GLYPH FOR FINAL ARABIC JEEM;;;; -FE9F;ARABIC LETTER JEEM INITIAL FORM;Lo;0;AL; 062C;;;;N;GLYPH FOR INITIAL ARABIC JEEM;;;; -FEA0;ARABIC LETTER JEEM MEDIAL FORM;Lo;0;AL; 062C;;;;N;GLYPH FOR MEDIAL ARABIC JEEM;;;; -FEA1;ARABIC LETTER HAH ISOLATED FORM;Lo;0;AL; 062D;;;;N;GLYPH FOR ISOLATE ARABIC HAA;;;; -FEA2;ARABIC LETTER HAH FINAL FORM;Lo;0;AL; 062D;;;;N;GLYPH FOR FINAL ARABIC HAA;;;; -FEA3;ARABIC LETTER HAH INITIAL FORM;Lo;0;AL; 062D;;;;N;GLYPH FOR INITIAL ARABIC HAA;;;; -FEA4;ARABIC LETTER HAH MEDIAL FORM;Lo;0;AL; 062D;;;;N;GLYPH FOR MEDIAL ARABIC HAA;;;; -FEA5;ARABIC LETTER KHAH ISOLATED FORM;Lo;0;AL; 062E;;;;N;GLYPH FOR ISOLATE ARABIC KHAA;;;; -FEA6;ARABIC LETTER KHAH FINAL FORM;Lo;0;AL; 062E;;;;N;GLYPH FOR FINAL ARABIC KHAA;;;; -FEA7;ARABIC LETTER KHAH INITIAL FORM;Lo;0;AL; 062E;;;;N;GLYPH FOR INITIAL ARABIC KHAA;;;; -FEA8;ARABIC LETTER KHAH MEDIAL FORM;Lo;0;AL; 062E;;;;N;GLYPH FOR MEDIAL ARABIC KHAA;;;; -FEA9;ARABIC LETTER DAL ISOLATED FORM;Lo;0;AL; 062F;;;;N;GLYPH FOR ISOLATE ARABIC DAL;;;; -FEAA;ARABIC LETTER DAL FINAL FORM;Lo;0;AL; 062F;;;;N;GLYPH FOR FINAL ARABIC DAL;;;; -FEAB;ARABIC LETTER THAL ISOLATED FORM;Lo;0;AL; 0630;;;;N;GLYPH FOR ISOLATE ARABIC THAL;;;; -FEAC;ARABIC LETTER THAL FINAL FORM;Lo;0;AL; 0630;;;;N;GLYPH FOR FINAL ARABIC THAL;;;; -FEAD;ARABIC LETTER REH ISOLATED FORM;Lo;0;AL; 0631;;;;N;GLYPH FOR ISOLATE ARABIC RA;;;; -FEAE;ARABIC LETTER REH FINAL FORM;Lo;0;AL; 0631;;;;N;GLYPH FOR FINAL ARABIC RA;;;; -FEAF;ARABIC LETTER ZAIN ISOLATED FORM;Lo;0;AL; 0632;;;;N;GLYPH FOR ISOLATE ARABIC ZAIN;;;; -FEB0;ARABIC LETTER ZAIN FINAL FORM;Lo;0;AL; 0632;;;;N;GLYPH FOR FINAL ARABIC ZAIN;;;; -FEB1;ARABIC LETTER SEEN ISOLATED FORM;Lo;0;AL; 0633;;;;N;GLYPH FOR ISOLATE ARABIC SEEN;;;; -FEB2;ARABIC LETTER SEEN FINAL FORM;Lo;0;AL; 0633;;;;N;GLYPH FOR FINAL ARABIC SEEN;;;; -FEB3;ARABIC LETTER SEEN INITIAL FORM;Lo;0;AL; 0633;;;;N;GLYPH FOR INITIAL ARABIC SEEN;;;; -FEB4;ARABIC LETTER SEEN MEDIAL FORM;Lo;0;AL; 0633;;;;N;GLYPH FOR MEDIAL ARABIC SEEN;;;; -FEB5;ARABIC LETTER SHEEN ISOLATED FORM;Lo;0;AL; 0634;;;;N;GLYPH FOR ISOLATE ARABIC SHEEN;;;; -FEB6;ARABIC LETTER SHEEN FINAL FORM;Lo;0;AL; 0634;;;;N;GLYPH FOR FINAL ARABIC SHEEN;;;; -FEB7;ARABIC LETTER SHEEN INITIAL FORM;Lo;0;AL; 0634;;;;N;GLYPH FOR INITIAL ARABIC SHEEN;;;; -FEB8;ARABIC LETTER SHEEN MEDIAL FORM;Lo;0;AL; 0634;;;;N;GLYPH FOR MEDIAL ARABIC SHEEN;;;; -FEB9;ARABIC LETTER SAD ISOLATED FORM;Lo;0;AL; 0635;;;;N;GLYPH FOR ISOLATE ARABIC SAD;;;; -FEBA;ARABIC LETTER SAD FINAL FORM;Lo;0;AL; 0635;;;;N;GLYPH FOR FINAL ARABIC SAD;;;; -FEBB;ARABIC LETTER SAD INITIAL FORM;Lo;0;AL; 0635;;;;N;GLYPH FOR INITIAL ARABIC SAD;;;; -FEBC;ARABIC LETTER SAD MEDIAL FORM;Lo;0;AL; 0635;;;;N;GLYPH FOR MEDIAL ARABIC SAD;;;; -FEBD;ARABIC LETTER DAD ISOLATED FORM;Lo;0;AL; 0636;;;;N;GLYPH FOR ISOLATE ARABIC DAD;;;; -FEBE;ARABIC LETTER DAD FINAL FORM;Lo;0;AL; 0636;;;;N;GLYPH FOR FINAL ARABIC DAD;;;; -FEBF;ARABIC LETTER DAD INITIAL FORM;Lo;0;AL; 0636;;;;N;GLYPH FOR INITIAL ARABIC DAD;;;; -FEC0;ARABIC LETTER DAD MEDIAL FORM;Lo;0;AL; 0636;;;;N;GLYPH FOR MEDIAL ARABIC DAD;;;; -FEC1;ARABIC LETTER TAH ISOLATED FORM;Lo;0;AL; 0637;;;;N;GLYPH FOR ISOLATE ARABIC TAH;;;; -FEC2;ARABIC LETTER TAH FINAL FORM;Lo;0;AL; 0637;;;;N;GLYPH FOR FINAL ARABIC TAH;;;; -FEC3;ARABIC LETTER TAH INITIAL FORM;Lo;0;AL; 0637;;;;N;GLYPH FOR INITIAL ARABIC TAH;;;; -FEC4;ARABIC LETTER TAH MEDIAL FORM;Lo;0;AL; 0637;;;;N;GLYPH FOR MEDIAL ARABIC TAH;;;; -FEC5;ARABIC LETTER ZAH ISOLATED FORM;Lo;0;AL; 0638;;;;N;GLYPH FOR ISOLATE ARABIC DHAH;;;; -FEC6;ARABIC LETTER ZAH FINAL FORM;Lo;0;AL; 0638;;;;N;GLYPH FOR FINAL ARABIC DHAH;;;; -FEC7;ARABIC LETTER ZAH INITIAL FORM;Lo;0;AL; 0638;;;;N;GLYPH FOR INITIAL ARABIC DHAH;;;; -FEC8;ARABIC LETTER ZAH MEDIAL FORM;Lo;0;AL; 0638;;;;N;GLYPH FOR MEDIAL ARABIC DHAH;;;; -FEC9;ARABIC LETTER AIN ISOLATED FORM;Lo;0;AL; 0639;;;;N;GLYPH FOR ISOLATE ARABIC AIN;;;; -FECA;ARABIC LETTER AIN FINAL FORM;Lo;0;AL; 0639;;;;N;GLYPH FOR FINAL ARABIC AIN;;;; -FECB;ARABIC LETTER AIN INITIAL FORM;Lo;0;AL; 0639;;;;N;GLYPH FOR INITIAL ARABIC AIN;;;; -FECC;ARABIC LETTER AIN MEDIAL FORM;Lo;0;AL; 0639;;;;N;GLYPH FOR MEDIAL ARABIC AIN;;;; -FECD;ARABIC LETTER GHAIN ISOLATED FORM;Lo;0;AL; 063A;;;;N;GLYPH FOR ISOLATE ARABIC GHAIN;;;; -FECE;ARABIC LETTER GHAIN FINAL FORM;Lo;0;AL; 063A;;;;N;GLYPH FOR FINAL ARABIC GHAIN;;;; -FECF;ARABIC LETTER GHAIN INITIAL FORM;Lo;0;AL; 063A;;;;N;GLYPH FOR INITIAL ARABIC GHAIN;;;; -FED0;ARABIC LETTER GHAIN MEDIAL FORM;Lo;0;AL; 063A;;;;N;GLYPH FOR MEDIAL ARABIC GHAIN;;;; -FED1;ARABIC LETTER FEH ISOLATED FORM;Lo;0;AL; 0641;;;;N;GLYPH FOR ISOLATE ARABIC FA;;;; -FED2;ARABIC LETTER FEH FINAL FORM;Lo;0;AL; 0641;;;;N;GLYPH FOR FINAL ARABIC FA;;;; -FED3;ARABIC LETTER FEH INITIAL FORM;Lo;0;AL; 0641;;;;N;GLYPH FOR INITIAL ARABIC FA;;;; -FED4;ARABIC LETTER FEH MEDIAL FORM;Lo;0;AL; 0641;;;;N;GLYPH FOR MEDIAL ARABIC FA;;;; -FED5;ARABIC LETTER QAF ISOLATED FORM;Lo;0;AL; 0642;;;;N;GLYPH FOR ISOLATE ARABIC QAF;;;; -FED6;ARABIC LETTER QAF FINAL FORM;Lo;0;AL; 0642;;;;N;GLYPH FOR FINAL ARABIC QAF;;;; -FED7;ARABIC LETTER QAF INITIAL FORM;Lo;0;AL; 0642;;;;N;GLYPH FOR INITIAL ARABIC QAF;;;; -FED8;ARABIC LETTER QAF MEDIAL FORM;Lo;0;AL; 0642;;;;N;GLYPH FOR MEDIAL ARABIC QAF;;;; -FED9;ARABIC LETTER KAF ISOLATED FORM;Lo;0;AL; 0643;;;;N;GLYPH FOR ISOLATE ARABIC CAF;;;; -FEDA;ARABIC LETTER KAF FINAL FORM;Lo;0;AL; 0643;;;;N;GLYPH FOR FINAL ARABIC CAF;;;; -FEDB;ARABIC LETTER KAF INITIAL FORM;Lo;0;AL; 0643;;;;N;GLYPH FOR INITIAL ARABIC CAF;;;; -FEDC;ARABIC LETTER KAF MEDIAL FORM;Lo;0;AL; 0643;;;;N;GLYPH FOR MEDIAL ARABIC CAF;;;; -FEDD;ARABIC LETTER LAM ISOLATED FORM;Lo;0;AL; 0644;;;;N;GLYPH FOR ISOLATE ARABIC LAM;;;; -FEDE;ARABIC LETTER LAM FINAL FORM;Lo;0;AL; 0644;;;;N;GLYPH FOR FINAL ARABIC LAM;;;; -FEDF;ARABIC LETTER LAM INITIAL FORM;Lo;0;AL; 0644;;;;N;GLYPH FOR INITIAL ARABIC LAM;;;; -FEE0;ARABIC LETTER LAM MEDIAL FORM;Lo;0;AL; 0644;;;;N;GLYPH FOR MEDIAL ARABIC LAM;;;; -FEE1;ARABIC LETTER MEEM ISOLATED FORM;Lo;0;AL; 0645;;;;N;GLYPH FOR ISOLATE ARABIC MEEM;;;; -FEE2;ARABIC LETTER MEEM FINAL FORM;Lo;0;AL; 0645;;;;N;GLYPH FOR FINAL ARABIC MEEM;;;; -FEE3;ARABIC LETTER MEEM INITIAL FORM;Lo;0;AL; 0645;;;;N;GLYPH FOR INITIAL ARABIC MEEM;;;; -FEE4;ARABIC LETTER MEEM MEDIAL FORM;Lo;0;AL; 0645;;;;N;GLYPH FOR MEDIAL ARABIC MEEM;;;; -FEE5;ARABIC LETTER NOON ISOLATED FORM;Lo;0;AL; 0646;;;;N;GLYPH FOR ISOLATE ARABIC NOON;;;; -FEE6;ARABIC LETTER NOON FINAL FORM;Lo;0;AL; 0646;;;;N;GLYPH FOR FINAL ARABIC NOON;;;; -FEE7;ARABIC LETTER NOON INITIAL FORM;Lo;0;AL; 0646;;;;N;GLYPH FOR INITIAL ARABIC NOON;;;; -FEE8;ARABIC LETTER NOON MEDIAL FORM;Lo;0;AL; 0646;;;;N;GLYPH FOR MEDIAL ARABIC NOON;;;; -FEE9;ARABIC LETTER HEH ISOLATED FORM;Lo;0;AL; 0647;;;;N;GLYPH FOR ISOLATE ARABIC HA;;;; -FEEA;ARABIC LETTER HEH FINAL FORM;Lo;0;AL; 0647;;;;N;GLYPH FOR FINAL ARABIC HA;;;; -FEEB;ARABIC LETTER HEH INITIAL FORM;Lo;0;AL; 0647;;;;N;GLYPH FOR INITIAL ARABIC HA;;;; -FEEC;ARABIC LETTER HEH MEDIAL FORM;Lo;0;AL; 0647;;;;N;GLYPH FOR MEDIAL ARABIC HA;;;; -FEED;ARABIC LETTER WAW ISOLATED FORM;Lo;0;AL; 0648;;;;N;GLYPH FOR ISOLATE ARABIC WAW;;;; -FEEE;ARABIC LETTER WAW FINAL FORM;Lo;0;AL; 0648;;;;N;GLYPH FOR FINAL ARABIC WAW;;;; -FEEF;ARABIC LETTER ALEF MAKSURA ISOLATED FORM;Lo;0;AL; 0649;;;;N;GLYPH FOR ISOLATE ARABIC ALEF MAQSURAH;;;; -FEF0;ARABIC LETTER ALEF MAKSURA FINAL FORM;Lo;0;AL; 0649;;;;N;GLYPH FOR FINAL ARABIC ALEF MAQSURAH;;;; -FEF1;ARABIC LETTER YEH ISOLATED FORM;Lo;0;AL; 064A;;;;N;GLYPH FOR ISOLATE ARABIC YA;;;; -FEF2;ARABIC LETTER YEH FINAL FORM;Lo;0;AL; 064A;;;;N;GLYPH FOR FINAL ARABIC YA;;;; -FEF3;ARABIC LETTER YEH INITIAL FORM;Lo;0;AL; 064A;;;;N;GLYPH FOR INITIAL ARABIC YA;;;; -FEF4;ARABIC LETTER YEH MEDIAL FORM;Lo;0;AL; 064A;;;;N;GLYPH FOR MEDIAL ARABIC YA;;;; -FEF5;ARABIC LIGATURE LAM WITH ALEF WITH MADDA ABOVE ISOLATED FORM;Lo;0;AL; 0644 0622;;;;N;GLYPH FOR ISOLATE ARABIC MADDAH ON LIGATURE LAM ALEF;;;; -FEF6;ARABIC LIGATURE LAM WITH ALEF WITH MADDA ABOVE FINAL FORM;Lo;0;AL; 0644 0622;;;;N;GLYPH FOR FINAL ARABIC MADDAH ON LIGATURE LAM ALEF;;;; -FEF7;ARABIC LIGATURE LAM WITH ALEF WITH HAMZA ABOVE ISOLATED FORM;Lo;0;AL; 0644 0623;;;;N;GLYPH FOR ISOLATE ARABIC HAMZAH ON LIGATURE LAM ALEF;;;; -FEF8;ARABIC LIGATURE LAM WITH ALEF WITH HAMZA ABOVE FINAL FORM;Lo;0;AL; 0644 0623;;;;N;GLYPH FOR FINAL ARABIC HAMZAH ON LIGATURE LAM ALEF;;;; -FEF9;ARABIC LIGATURE LAM WITH ALEF WITH HAMZA BELOW ISOLATED FORM;Lo;0;AL; 0644 0625;;;;N;GLYPH FOR ISOLATE ARABIC HAMZAH UNDER LIGATURE LAM ALEF;;;; -FEFA;ARABIC LIGATURE LAM WITH ALEF WITH HAMZA BELOW FINAL FORM;Lo;0;AL; 0644 0625;;;;N;GLYPH FOR FINAL ARABIC HAMZAH UNDER LIGATURE LAM ALEF;;;; -FEFB;ARABIC LIGATURE LAM WITH ALEF ISOLATED FORM;Lo;0;AL; 0644 0627;;;;N;GLYPH FOR ISOLATE ARABIC LIGATURE LAM ALEF;;;; -FEFC;ARABIC LIGATURE LAM WITH ALEF FINAL FORM;Lo;0;AL; 0644 0627;;;;N;GLYPH FOR FINAL ARABIC LIGATURE LAM ALEF;;;; -FEFF;ZERO WIDTH NO-BREAK SPACE;Cf;0;BN;;;;;N;BYTE ORDER MARK;;;; -FF01;FULLWIDTH EXCLAMATION MARK;Po;0;ON; 0021;;;;N;;;;; -FF02;FULLWIDTH QUOTATION MARK;Po;0;ON; 0022;;;;N;;;;; -FF03;FULLWIDTH NUMBER SIGN;Po;0;ET; 0023;;;;N;;;;; -FF04;FULLWIDTH DOLLAR SIGN;Sc;0;ET; 0024;;;;N;;;;; -FF05;FULLWIDTH PERCENT SIGN;Po;0;ET; 0025;;;;N;;;;; -FF06;FULLWIDTH AMPERSAND;Po;0;ON; 0026;;;;N;;;;; -FF07;FULLWIDTH APOSTROPHE;Po;0;ON; 0027;;;;N;;;;; -FF08;FULLWIDTH LEFT PARENTHESIS;Ps;0;ON; 0028;;;;Y;FULLWIDTH OPENING PARENTHESIS;;;; -FF09;FULLWIDTH RIGHT PARENTHESIS;Pe;0;ON; 0029;;;;Y;FULLWIDTH CLOSING PARENTHESIS;;;; -FF0A;FULLWIDTH ASTERISK;Po;0;ON; 002A;;;;N;;;;; -FF0B;FULLWIDTH PLUS SIGN;Sm;0;ES; 002B;;;;N;;;;; -FF0C;FULLWIDTH COMMA;Po;0;CS; 002C;;;;N;;;;; -FF0D;FULLWIDTH HYPHEN-MINUS;Pd;0;ES; 002D;;;;N;;;;; -FF0E;FULLWIDTH FULL STOP;Po;0;CS; 002E;;;;N;FULLWIDTH PERIOD;;;; -FF0F;FULLWIDTH SOLIDUS;Po;0;CS; 002F;;;;N;FULLWIDTH SLASH;;;; -FF10;FULLWIDTH DIGIT ZERO;Nd;0;EN; 0030;0;0;0;N;;;;; -FF11;FULLWIDTH DIGIT ONE;Nd;0;EN; 0031;1;1;1;N;;;;; -FF12;FULLWIDTH DIGIT TWO;Nd;0;EN; 0032;2;2;2;N;;;;; -FF13;FULLWIDTH DIGIT THREE;Nd;0;EN; 0033;3;3;3;N;;;;; -FF14;FULLWIDTH DIGIT FOUR;Nd;0;EN; 0034;4;4;4;N;;;;; -FF15;FULLWIDTH DIGIT FIVE;Nd;0;EN; 0035;5;5;5;N;;;;; -FF16;FULLWIDTH DIGIT SIX;Nd;0;EN; 0036;6;6;6;N;;;;; -FF17;FULLWIDTH DIGIT SEVEN;Nd;0;EN; 0037;7;7;7;N;;;;; -FF18;FULLWIDTH DIGIT EIGHT;Nd;0;EN; 0038;8;8;8;N;;;;; -FF19;FULLWIDTH DIGIT NINE;Nd;0;EN; 0039;9;9;9;N;;;;; -FF1A;FULLWIDTH COLON;Po;0;CS; 003A;;;;N;;;;; -FF1B;FULLWIDTH SEMICOLON;Po;0;ON; 003B;;;;N;;;;; -FF1C;FULLWIDTH LESS-THAN SIGN;Sm;0;ON; 003C;;;;Y;;;;; -FF1D;FULLWIDTH EQUALS SIGN;Sm;0;ON; 003D;;;;N;;;;; -FF1E;FULLWIDTH GREATER-THAN SIGN;Sm;0;ON; 003E;;;;Y;;;;; -FF1F;FULLWIDTH QUESTION MARK;Po;0;ON; 003F;;;;N;;;;; -FF20;FULLWIDTH COMMERCIAL AT;Po;0;ON; 0040;;;;N;;;;; -FF21;FULLWIDTH LATIN CAPITAL LETTER A;Lu;0;L; 0041;;;;N;;;;FF41; -FF22;FULLWIDTH LATIN CAPITAL LETTER B;Lu;0;L; 0042;;;;N;;;;FF42; -FF23;FULLWIDTH LATIN CAPITAL LETTER C;Lu;0;L; 0043;;;;N;;;;FF43; -FF24;FULLWIDTH LATIN CAPITAL LETTER D;Lu;0;L; 0044;;;;N;;;;FF44; -FF25;FULLWIDTH LATIN CAPITAL LETTER E;Lu;0;L; 0045;;;;N;;;;FF45; -FF26;FULLWIDTH LATIN CAPITAL LETTER F;Lu;0;L; 0046;;;;N;;;;FF46; -FF27;FULLWIDTH LATIN CAPITAL LETTER G;Lu;0;L; 0047;;;;N;;;;FF47; -FF28;FULLWIDTH LATIN CAPITAL LETTER H;Lu;0;L; 0048;;;;N;;;;FF48; -FF29;FULLWIDTH LATIN CAPITAL LETTER I;Lu;0;L; 0049;;;;N;;;;FF49; -FF2A;FULLWIDTH LATIN CAPITAL LETTER J;Lu;0;L; 004A;;;;N;;;;FF4A; -FF2B;FULLWIDTH LATIN CAPITAL LETTER K;Lu;0;L; 004B;;;;N;;;;FF4B; -FF2C;FULLWIDTH LATIN CAPITAL LETTER L;Lu;0;L; 004C;;;;N;;;;FF4C; -FF2D;FULLWIDTH LATIN CAPITAL LETTER M;Lu;0;L; 004D;;;;N;;;;FF4D; -FF2E;FULLWIDTH LATIN CAPITAL LETTER N;Lu;0;L; 004E;;;;N;;;;FF4E; -FF2F;FULLWIDTH LATIN CAPITAL LETTER O;Lu;0;L; 004F;;;;N;;;;FF4F; -FF30;FULLWIDTH LATIN CAPITAL LETTER P;Lu;0;L; 0050;;;;N;;;;FF50; -FF31;FULLWIDTH LATIN CAPITAL LETTER Q;Lu;0;L; 0051;;;;N;;;;FF51; -FF32;FULLWIDTH LATIN CAPITAL LETTER R;Lu;0;L; 0052;;;;N;;;;FF52; -FF33;FULLWIDTH LATIN CAPITAL LETTER S;Lu;0;L; 0053;;;;N;;;;FF53; -FF34;FULLWIDTH LATIN CAPITAL LETTER T;Lu;0;L; 0054;;;;N;;;;FF54; -FF35;FULLWIDTH LATIN CAPITAL LETTER U;Lu;0;L; 0055;;;;N;;;;FF55; -FF36;FULLWIDTH LATIN CAPITAL LETTER V;Lu;0;L; 0056;;;;N;;;;FF56; -FF37;FULLWIDTH LATIN CAPITAL LETTER W;Lu;0;L; 0057;;;;N;;;;FF57; -FF38;FULLWIDTH LATIN CAPITAL LETTER X;Lu;0;L; 0058;;;;N;;;;FF58; -FF39;FULLWIDTH LATIN CAPITAL LETTER Y;Lu;0;L; 0059;;;;N;;;;FF59; -FF3A;FULLWIDTH LATIN CAPITAL LETTER Z;Lu;0;L; 005A;;;;N;;;;FF5A; -FF3B;FULLWIDTH LEFT SQUARE BRACKET;Ps;0;ON; 005B;;;;Y;FULLWIDTH OPENING SQUARE BRACKET;;;; -FF3C;FULLWIDTH REVERSE SOLIDUS;Po;0;ON; 005C;;;;N;FULLWIDTH BACKSLASH;;;; -FF3D;FULLWIDTH RIGHT SQUARE BRACKET;Pe;0;ON; 005D;;;;Y;FULLWIDTH CLOSING SQUARE BRACKET;;;; -FF3E;FULLWIDTH CIRCUMFLEX ACCENT;Sk;0;ON; 005E;;;;N;FULLWIDTH SPACING CIRCUMFLEX;;;; -FF3F;FULLWIDTH LOW LINE;Pc;0;ON; 005F;;;;N;FULLWIDTH SPACING UNDERSCORE;;;; -FF40;FULLWIDTH GRAVE ACCENT;Sk;0;ON; 0060;;;;N;FULLWIDTH SPACING GRAVE;;;; -FF41;FULLWIDTH LATIN SMALL LETTER A;Ll;0;L; 0061;;;;N;;;FF21;;FF21 -FF42;FULLWIDTH LATIN SMALL LETTER B;Ll;0;L; 0062;;;;N;;;FF22;;FF22 -FF43;FULLWIDTH LATIN SMALL LETTER C;Ll;0;L; 0063;;;;N;;;FF23;;FF23 -FF44;FULLWIDTH LATIN SMALL LETTER D;Ll;0;L; 0064;;;;N;;;FF24;;FF24 -FF45;FULLWIDTH LATIN SMALL LETTER E;Ll;0;L; 0065;;;;N;;;FF25;;FF25 -FF46;FULLWIDTH LATIN SMALL LETTER F;Ll;0;L; 0066;;;;N;;;FF26;;FF26 -FF47;FULLWIDTH LATIN SMALL LETTER G;Ll;0;L; 0067;;;;N;;;FF27;;FF27 -FF48;FULLWIDTH LATIN SMALL LETTER H;Ll;0;L; 0068;;;;N;;;FF28;;FF28 -FF49;FULLWIDTH LATIN SMALL LETTER I;Ll;0;L; 0069;;;;N;;;FF29;;FF29 -FF4A;FULLWIDTH LATIN SMALL LETTER J;Ll;0;L; 006A;;;;N;;;FF2A;;FF2A -FF4B;FULLWIDTH LATIN SMALL LETTER K;Ll;0;L; 006B;;;;N;;;FF2B;;FF2B -FF4C;FULLWIDTH LATIN SMALL LETTER L;Ll;0;L; 006C;;;;N;;;FF2C;;FF2C -FF4D;FULLWIDTH LATIN SMALL LETTER M;Ll;0;L; 006D;;;;N;;;FF2D;;FF2D -FF4E;FULLWIDTH LATIN SMALL LETTER N;Ll;0;L; 006E;;;;N;;;FF2E;;FF2E -FF4F;FULLWIDTH LATIN SMALL LETTER O;Ll;0;L; 006F;;;;N;;;FF2F;;FF2F -FF50;FULLWIDTH LATIN SMALL LETTER P;Ll;0;L; 0070;;;;N;;;FF30;;FF30 -FF51;FULLWIDTH LATIN SMALL LETTER Q;Ll;0;L; 0071;;;;N;;;FF31;;FF31 -FF52;FULLWIDTH LATIN SMALL LETTER R;Ll;0;L; 0072;;;;N;;;FF32;;FF32 -FF53;FULLWIDTH LATIN SMALL LETTER S;Ll;0;L; 0073;;;;N;;;FF33;;FF33 -FF54;FULLWIDTH LATIN SMALL LETTER T;Ll;0;L; 0074;;;;N;;;FF34;;FF34 -FF55;FULLWIDTH LATIN SMALL LETTER U;Ll;0;L; 0075;;;;N;;;FF35;;FF35 -FF56;FULLWIDTH LATIN SMALL LETTER V;Ll;0;L; 0076;;;;N;;;FF36;;FF36 -FF57;FULLWIDTH LATIN SMALL LETTER W;Ll;0;L; 0077;;;;N;;;FF37;;FF37 -FF58;FULLWIDTH LATIN SMALL LETTER X;Ll;0;L; 0078;;;;N;;;FF38;;FF38 -FF59;FULLWIDTH LATIN SMALL LETTER Y;Ll;0;L; 0079;;;;N;;;FF39;;FF39 -FF5A;FULLWIDTH LATIN SMALL LETTER Z;Ll;0;L; 007A;;;;N;;;FF3A;;FF3A -FF5B;FULLWIDTH LEFT CURLY BRACKET;Ps;0;ON; 007B;;;;Y;FULLWIDTH OPENING CURLY BRACKET;;;; -FF5C;FULLWIDTH VERTICAL LINE;Sm;0;ON; 007C;;;;N;FULLWIDTH VERTICAL BAR;;;; -FF5D;FULLWIDTH RIGHT CURLY BRACKET;Pe;0;ON; 007D;;;;Y;FULLWIDTH CLOSING CURLY BRACKET;;;; -FF5E;FULLWIDTH TILDE;Sm;0;ON; 007E;;;;N;FULLWIDTH SPACING TILDE;;;; -FF5F;FULLWIDTH LEFT WHITE PARENTHESIS;Ps;0;ON; 2985;;;;Y;;;;; -FF60;FULLWIDTH RIGHT WHITE PARENTHESIS;Pe;0;ON; 2986;;;;Y;;;;; -FF61;HALFWIDTH IDEOGRAPHIC FULL STOP;Po;0;ON; 3002;;;;N;HALFWIDTH IDEOGRAPHIC PERIOD;;;; -FF62;HALFWIDTH LEFT CORNER BRACKET;Ps;0;ON; 300C;;;;Y;HALFWIDTH OPENING CORNER BRACKET;;;; -FF63;HALFWIDTH RIGHT CORNER BRACKET;Pe;0;ON; 300D;;;;Y;HALFWIDTH CLOSING CORNER BRACKET;;;; -FF64;HALFWIDTH IDEOGRAPHIC COMMA;Po;0;ON; 3001;;;;N;;;;; -FF65;HALFWIDTH KATAKANA MIDDLE DOT;Po;0;ON; 30FB;;;;N;;;;; -FF66;HALFWIDTH KATAKANA LETTER WO;Lo;0;L; 30F2;;;;N;;;;; -FF67;HALFWIDTH KATAKANA LETTER SMALL A;Lo;0;L; 30A1;;;;N;;;;; -FF68;HALFWIDTH KATAKANA LETTER SMALL I;Lo;0;L; 30A3;;;;N;;;;; -FF69;HALFWIDTH KATAKANA LETTER SMALL U;Lo;0;L; 30A5;;;;N;;;;; -FF6A;HALFWIDTH KATAKANA LETTER SMALL E;Lo;0;L; 30A7;;;;N;;;;; -FF6B;HALFWIDTH KATAKANA LETTER SMALL O;Lo;0;L; 30A9;;;;N;;;;; -FF6C;HALFWIDTH KATAKANA LETTER SMALL YA;Lo;0;L; 30E3;;;;N;;;;; -FF6D;HALFWIDTH KATAKANA LETTER SMALL YU;Lo;0;L; 30E5;;;;N;;;;; -FF6E;HALFWIDTH KATAKANA LETTER SMALL YO;Lo;0;L; 30E7;;;;N;;;;; -FF6F;HALFWIDTH KATAKANA LETTER SMALL TU;Lo;0;L; 30C3;;;;N;;;;; -FF70;HALFWIDTH KATAKANA-HIRAGANA PROLONGED SOUND MARK;Lm;0;L; 30FC;;;;N;;;;; -FF71;HALFWIDTH KATAKANA LETTER A;Lo;0;L; 30A2;;;;N;;;;; -FF72;HALFWIDTH KATAKANA LETTER I;Lo;0;L; 30A4;;;;N;;;;; -FF73;HALFWIDTH KATAKANA LETTER U;Lo;0;L; 30A6;;;;N;;;;; -FF74;HALFWIDTH KATAKANA LETTER E;Lo;0;L; 30A8;;;;N;;;;; -FF75;HALFWIDTH KATAKANA LETTER O;Lo;0;L; 30AA;;;;N;;;;; -FF76;HALFWIDTH KATAKANA LETTER KA;Lo;0;L; 30AB;;;;N;;;;; -FF77;HALFWIDTH KATAKANA LETTER KI;Lo;0;L; 30AD;;;;N;;;;; -FF78;HALFWIDTH KATAKANA LETTER KU;Lo;0;L; 30AF;;;;N;;;;; -FF79;HALFWIDTH KATAKANA LETTER KE;Lo;0;L; 30B1;;;;N;;;;; -FF7A;HALFWIDTH KATAKANA LETTER KO;Lo;0;L; 30B3;;;;N;;;;; -FF7B;HALFWIDTH KATAKANA LETTER SA;Lo;0;L; 30B5;;;;N;;;;; -FF7C;HALFWIDTH KATAKANA LETTER SI;Lo;0;L; 30B7;;;;N;;;;; -FF7D;HALFWIDTH KATAKANA LETTER SU;Lo;0;L; 30B9;;;;N;;;;; -FF7E;HALFWIDTH KATAKANA LETTER SE;Lo;0;L; 30BB;;;;N;;;;; -FF7F;HALFWIDTH KATAKANA LETTER SO;Lo;0;L; 30BD;;;;N;;;;; -FF80;HALFWIDTH KATAKANA LETTER TA;Lo;0;L; 30BF;;;;N;;;;; -FF81;HALFWIDTH KATAKANA LETTER TI;Lo;0;L; 30C1;;;;N;;;;; -FF82;HALFWIDTH KATAKANA LETTER TU;Lo;0;L; 30C4;;;;N;;;;; -FF83;HALFWIDTH KATAKANA LETTER TE;Lo;0;L; 30C6;;;;N;;;;; -FF84;HALFWIDTH KATAKANA LETTER TO;Lo;0;L; 30C8;;;;N;;;;; -FF85;HALFWIDTH KATAKANA LETTER NA;Lo;0;L; 30CA;;;;N;;;;; -FF86;HALFWIDTH KATAKANA LETTER NI;Lo;0;L; 30CB;;;;N;;;;; -FF87;HALFWIDTH KATAKANA LETTER NU;Lo;0;L; 30CC;;;;N;;;;; -FF88;HALFWIDTH KATAKANA LETTER NE;Lo;0;L; 30CD;;;;N;;;;; -FF89;HALFWIDTH KATAKANA LETTER NO;Lo;0;L; 30CE;;;;N;;;;; -FF8A;HALFWIDTH KATAKANA LETTER HA;Lo;0;L; 30CF;;;;N;;;;; -FF8B;HALFWIDTH KATAKANA LETTER HI;Lo;0;L; 30D2;;;;N;;;;; -FF8C;HALFWIDTH KATAKANA LETTER HU;Lo;0;L; 30D5;;;;N;;;;; -FF8D;HALFWIDTH KATAKANA LETTER HE;Lo;0;L; 30D8;;;;N;;;;; -FF8E;HALFWIDTH KATAKANA LETTER HO;Lo;0;L; 30DB;;;;N;;;;; -FF8F;HALFWIDTH KATAKANA LETTER MA;Lo;0;L; 30DE;;;;N;;;;; -FF90;HALFWIDTH KATAKANA LETTER MI;Lo;0;L; 30DF;;;;N;;;;; -FF91;HALFWIDTH KATAKANA LETTER MU;Lo;0;L; 30E0;;;;N;;;;; -FF92;HALFWIDTH KATAKANA LETTER ME;Lo;0;L; 30E1;;;;N;;;;; -FF93;HALFWIDTH KATAKANA LETTER MO;Lo;0;L; 30E2;;;;N;;;;; -FF94;HALFWIDTH KATAKANA LETTER YA;Lo;0;L; 30E4;;;;N;;;;; -FF95;HALFWIDTH KATAKANA LETTER YU;Lo;0;L; 30E6;;;;N;;;;; -FF96;HALFWIDTH KATAKANA LETTER YO;Lo;0;L; 30E8;;;;N;;;;; -FF97;HALFWIDTH KATAKANA LETTER RA;Lo;0;L; 30E9;;;;N;;;;; -FF98;HALFWIDTH KATAKANA LETTER RI;Lo;0;L; 30EA;;;;N;;;;; -FF99;HALFWIDTH KATAKANA LETTER RU;Lo;0;L; 30EB;;;;N;;;;; -FF9A;HALFWIDTH KATAKANA LETTER RE;Lo;0;L; 30EC;;;;N;;;;; -FF9B;HALFWIDTH KATAKANA LETTER RO;Lo;0;L; 30ED;;;;N;;;;; -FF9C;HALFWIDTH KATAKANA LETTER WA;Lo;0;L; 30EF;;;;N;;;;; -FF9D;HALFWIDTH KATAKANA LETTER N;Lo;0;L; 30F3;;;;N;;;;; -FF9E;HALFWIDTH KATAKANA VOICED SOUND MARK;Lm;0;L; 3099;;;;N;;;;; -FF9F;HALFWIDTH KATAKANA SEMI-VOICED SOUND MARK;Lm;0;L; 309A;;;;N;;;;; -FFA0;HALFWIDTH HANGUL FILLER;Lo;0;L; 3164;;;;N;HALFWIDTH HANGUL CAE OM;;;; -FFA1;HALFWIDTH HANGUL LETTER KIYEOK;Lo;0;L; 3131;;;;N;HALFWIDTH HANGUL LETTER GIYEOG;;;; -FFA2;HALFWIDTH HANGUL LETTER SSANGKIYEOK;Lo;0;L; 3132;;;;N;HALFWIDTH HANGUL LETTER SSANG GIYEOG;;;; -FFA3;HALFWIDTH HANGUL LETTER KIYEOK-SIOS;Lo;0;L; 3133;;;;N;HALFWIDTH HANGUL LETTER GIYEOG SIOS;;;; -FFA4;HALFWIDTH HANGUL LETTER NIEUN;Lo;0;L; 3134;;;;N;;;;; -FFA5;HALFWIDTH HANGUL LETTER NIEUN-CIEUC;Lo;0;L; 3135;;;;N;HALFWIDTH HANGUL LETTER NIEUN JIEUJ;;;; -FFA6;HALFWIDTH HANGUL LETTER NIEUN-HIEUH;Lo;0;L; 3136;;;;N;HALFWIDTH HANGUL LETTER NIEUN HIEUH;;;; -FFA7;HALFWIDTH HANGUL LETTER TIKEUT;Lo;0;L; 3137;;;;N;HALFWIDTH HANGUL LETTER DIGEUD;;;; -FFA8;HALFWIDTH HANGUL LETTER SSANGTIKEUT;Lo;0;L; 3138;;;;N;HALFWIDTH HANGUL LETTER SSANG DIGEUD;;;; -FFA9;HALFWIDTH HANGUL LETTER RIEUL;Lo;0;L; 3139;;;;N;HALFWIDTH HANGUL LETTER LIEUL;;;; -FFAA;HALFWIDTH HANGUL LETTER RIEUL-KIYEOK;Lo;0;L; 313A;;;;N;HALFWIDTH HANGUL LETTER LIEUL GIYEOG;;;; -FFAB;HALFWIDTH HANGUL LETTER RIEUL-MIEUM;Lo;0;L; 313B;;;;N;HALFWIDTH HANGUL LETTER LIEUL MIEUM;;;; -FFAC;HALFWIDTH HANGUL LETTER RIEUL-PIEUP;Lo;0;L; 313C;;;;N;HALFWIDTH HANGUL LETTER LIEUL BIEUB;;;; -FFAD;HALFWIDTH HANGUL LETTER RIEUL-SIOS;Lo;0;L; 313D;;;;N;HALFWIDTH HANGUL LETTER LIEUL SIOS;;;; -FFAE;HALFWIDTH HANGUL LETTER RIEUL-THIEUTH;Lo;0;L; 313E;;;;N;HALFWIDTH HANGUL LETTER LIEUL TIEUT;;;; -FFAF;HALFWIDTH HANGUL LETTER RIEUL-PHIEUPH;Lo;0;L; 313F;;;;N;HALFWIDTH HANGUL LETTER LIEUL PIEUP;;;; -FFB0;HALFWIDTH HANGUL LETTER RIEUL-HIEUH;Lo;0;L; 3140;;;;N;HALFWIDTH HANGUL LETTER LIEUL HIEUH;;;; -FFB1;HALFWIDTH HANGUL LETTER MIEUM;Lo;0;L; 3141;;;;N;;;;; -FFB2;HALFWIDTH HANGUL LETTER PIEUP;Lo;0;L; 3142;;;;N;HALFWIDTH HANGUL LETTER BIEUB;;;; -FFB3;HALFWIDTH HANGUL LETTER SSANGPIEUP;Lo;0;L; 3143;;;;N;HALFWIDTH HANGUL LETTER SSANG BIEUB;;;; -FFB4;HALFWIDTH HANGUL LETTER PIEUP-SIOS;Lo;0;L; 3144;;;;N;HALFWIDTH HANGUL LETTER BIEUB SIOS;;;; -FFB5;HALFWIDTH HANGUL LETTER SIOS;Lo;0;L; 3145;;;;N;;;;; -FFB6;HALFWIDTH HANGUL LETTER SSANGSIOS;Lo;0;L; 3146;;;;N;HALFWIDTH HANGUL LETTER SSANG SIOS;;;; -FFB7;HALFWIDTH HANGUL LETTER IEUNG;Lo;0;L; 3147;;;;N;;;;; -FFB8;HALFWIDTH HANGUL LETTER CIEUC;Lo;0;L; 3148;;;;N;HALFWIDTH HANGUL LETTER JIEUJ;;;; -FFB9;HALFWIDTH HANGUL LETTER SSANGCIEUC;Lo;0;L; 3149;;;;N;HALFWIDTH HANGUL LETTER SSANG JIEUJ;;;; -FFBA;HALFWIDTH HANGUL LETTER CHIEUCH;Lo;0;L; 314A;;;;N;HALFWIDTH HANGUL LETTER CIEUC;;;; -FFBB;HALFWIDTH HANGUL LETTER KHIEUKH;Lo;0;L; 314B;;;;N;HALFWIDTH HANGUL LETTER KIYEOK;;;; -FFBC;HALFWIDTH HANGUL LETTER THIEUTH;Lo;0;L; 314C;;;;N;HALFWIDTH HANGUL LETTER TIEUT;;;; -FFBD;HALFWIDTH HANGUL LETTER PHIEUPH;Lo;0;L; 314D;;;;N;HALFWIDTH HANGUL LETTER PIEUP;;;; -FFBE;HALFWIDTH HANGUL LETTER HIEUH;Lo;0;L; 314E;;;;N;;;;; -FFC2;HALFWIDTH HANGUL LETTER A;Lo;0;L; 314F;;;;N;;;;; -FFC3;HALFWIDTH HANGUL LETTER AE;Lo;0;L; 3150;;;;N;;;;; -FFC4;HALFWIDTH HANGUL LETTER YA;Lo;0;L; 3151;;;;N;;;;; -FFC5;HALFWIDTH HANGUL LETTER YAE;Lo;0;L; 3152;;;;N;;;;; -FFC6;HALFWIDTH HANGUL LETTER EO;Lo;0;L; 3153;;;;N;;;;; -FFC7;HALFWIDTH HANGUL LETTER E;Lo;0;L; 3154;;;;N;;;;; -FFCA;HALFWIDTH HANGUL LETTER YEO;Lo;0;L; 3155;;;;N;;;;; -FFCB;HALFWIDTH HANGUL LETTER YE;Lo;0;L; 3156;;;;N;;;;; -FFCC;HALFWIDTH HANGUL LETTER O;Lo;0;L; 3157;;;;N;;;;; -FFCD;HALFWIDTH HANGUL LETTER WA;Lo;0;L; 3158;;;;N;;;;; -FFCE;HALFWIDTH HANGUL LETTER WAE;Lo;0;L; 3159;;;;N;;;;; -FFCF;HALFWIDTH HANGUL LETTER OE;Lo;0;L; 315A;;;;N;;;;; -FFD2;HALFWIDTH HANGUL LETTER YO;Lo;0;L; 315B;;;;N;;;;; -FFD3;HALFWIDTH HANGUL LETTER U;Lo;0;L; 315C;;;;N;;;;; -FFD4;HALFWIDTH HANGUL LETTER WEO;Lo;0;L; 315D;;;;N;;;;; -FFD5;HALFWIDTH HANGUL LETTER WE;Lo;0;L; 315E;;;;N;;;;; -FFD6;HALFWIDTH HANGUL LETTER WI;Lo;0;L; 315F;;;;N;;;;; -FFD7;HALFWIDTH HANGUL LETTER YU;Lo;0;L; 3160;;;;N;;;;; -FFDA;HALFWIDTH HANGUL LETTER EU;Lo;0;L; 3161;;;;N;;;;; -FFDB;HALFWIDTH HANGUL LETTER YI;Lo;0;L; 3162;;;;N;;;;; -FFDC;HALFWIDTH HANGUL LETTER I;Lo;0;L; 3163;;;;N;;;;; -FFE0;FULLWIDTH CENT SIGN;Sc;0;ET; 00A2;;;;N;;;;; -FFE1;FULLWIDTH POUND SIGN;Sc;0;ET; 00A3;;;;N;;;;; -FFE2;FULLWIDTH NOT SIGN;Sm;0;ON; 00AC;;;;N;;;;; -FFE3;FULLWIDTH MACRON;Sk;0;ON; 00AF;;;;N;FULLWIDTH SPACING MACRON;;;; -FFE4;FULLWIDTH BROKEN BAR;So;0;ON; 00A6;;;;N;FULLWIDTH BROKEN VERTICAL BAR;;;; -FFE5;FULLWIDTH YEN SIGN;Sc;0;ET; 00A5;;;;N;;;;; -FFE6;FULLWIDTH WON SIGN;Sc;0;ET; 20A9;;;;N;;;;; -FFE8;HALFWIDTH FORMS LIGHT VERTICAL;So;0;ON; 2502;;;;N;;;;; -FFE9;HALFWIDTH LEFTWARDS ARROW;Sm;0;ON; 2190;;;;N;;;;; -FFEA;HALFWIDTH UPWARDS ARROW;Sm;0;ON; 2191;;;;N;;;;; -FFEB;HALFWIDTH RIGHTWARDS ARROW;Sm;0;ON; 2192;;;;N;;;;; -FFEC;HALFWIDTH DOWNWARDS ARROW;Sm;0;ON; 2193;;;;N;;;;; -FFED;HALFWIDTH BLACK SQUARE;So;0;ON; 25A0;;;;N;;;;; -FFEE;HALFWIDTH WHITE CIRCLE;So;0;ON; 25CB;;;;N;;;;; -FFF9;INTERLINEAR ANNOTATION ANCHOR;Cf;0;ON;;;;;N;;;;; -FFFA;INTERLINEAR ANNOTATION SEPARATOR;Cf;0;ON;;;;;N;;;;; -FFFB;INTERLINEAR ANNOTATION TERMINATOR;Cf;0;ON;;;;;N;;;;; -FFFC;OBJECT REPLACEMENT CHARACTER;So;0;ON;;;;;N;;;;; -FFFD;REPLACEMENT CHARACTER;So;0;ON;;;;;N;;;;; -10000;LINEAR B SYLLABLE B008 A;Lo;0;L;;;;;N;;;;; -10001;LINEAR B SYLLABLE B038 E;Lo;0;L;;;;;N;;;;; -10002;LINEAR B SYLLABLE B028 I;Lo;0;L;;;;;N;;;;; -10003;LINEAR B SYLLABLE B061 O;Lo;0;L;;;;;N;;;;; -10004;LINEAR B SYLLABLE B010 U;Lo;0;L;;;;;N;;;;; -10005;LINEAR B SYLLABLE B001 DA;Lo;0;L;;;;;N;;;;; -10006;LINEAR B SYLLABLE B045 DE;Lo;0;L;;;;;N;;;;; -10007;LINEAR B SYLLABLE B007 DI;Lo;0;L;;;;;N;;;;; -10008;LINEAR B SYLLABLE B014 DO;Lo;0;L;;;;;N;;;;; -10009;LINEAR B SYLLABLE B051 DU;Lo;0;L;;;;;N;;;;; -1000A;LINEAR B SYLLABLE B057 JA;Lo;0;L;;;;;N;;;;; -1000B;LINEAR B SYLLABLE B046 JE;Lo;0;L;;;;;N;;;;; -1000D;LINEAR B SYLLABLE B036 JO;Lo;0;L;;;;;N;;;;; -1000E;LINEAR B SYLLABLE B065 JU;Lo;0;L;;;;;N;;;;; -1000F;LINEAR B SYLLABLE B077 KA;Lo;0;L;;;;;N;;;;; -10010;LINEAR B SYLLABLE B044 KE;Lo;0;L;;;;;N;;;;; -10011;LINEAR B SYLLABLE B067 KI;Lo;0;L;;;;;N;;;;; -10012;LINEAR B SYLLABLE B070 KO;Lo;0;L;;;;;N;;;;; -10013;LINEAR B SYLLABLE B081 KU;Lo;0;L;;;;;N;;;;; -10014;LINEAR B SYLLABLE B080 MA;Lo;0;L;;;;;N;;;;; -10015;LINEAR B SYLLABLE B013 ME;Lo;0;L;;;;;N;;;;; -10016;LINEAR B SYLLABLE B073 MI;Lo;0;L;;;;;N;;;;; -10017;LINEAR B SYLLABLE B015 MO;Lo;0;L;;;;;N;;;;; -10018;LINEAR B SYLLABLE B023 MU;Lo;0;L;;;;;N;;;;; -10019;LINEAR B SYLLABLE B006 NA;Lo;0;L;;;;;N;;;;; -1001A;LINEAR B SYLLABLE B024 NE;Lo;0;L;;;;;N;;;;; -1001B;LINEAR B SYLLABLE B030 NI;Lo;0;L;;;;;N;;;;; -1001C;LINEAR B SYLLABLE B052 NO;Lo;0;L;;;;;N;;;;; -1001D;LINEAR B SYLLABLE B055 NU;Lo;0;L;;;;;N;;;;; -1001E;LINEAR B SYLLABLE B003 PA;Lo;0;L;;;;;N;;;;; -1001F;LINEAR B SYLLABLE B072 PE;Lo;0;L;;;;;N;;;;; -10020;LINEAR B SYLLABLE B039 PI;Lo;0;L;;;;;N;;;;; -10021;LINEAR B SYLLABLE B011 PO;Lo;0;L;;;;;N;;;;; -10022;LINEAR B SYLLABLE B050 PU;Lo;0;L;;;;;N;;;;; -10023;LINEAR B SYLLABLE B016 QA;Lo;0;L;;;;;N;;;;; -10024;LINEAR B SYLLABLE B078 QE;Lo;0;L;;;;;N;;;;; -10025;LINEAR B SYLLABLE B021 QI;Lo;0;L;;;;;N;;;;; -10026;LINEAR B SYLLABLE B032 QO;Lo;0;L;;;;;N;;;;; -10028;LINEAR B SYLLABLE B060 RA;Lo;0;L;;;;;N;;;;; -10029;LINEAR B SYLLABLE B027 RE;Lo;0;L;;;;;N;;;;; -1002A;LINEAR B SYLLABLE B053 RI;Lo;0;L;;;;;N;;;;; -1002B;LINEAR B SYLLABLE B002 RO;Lo;0;L;;;;;N;;;;; -1002C;LINEAR B SYLLABLE B026 RU;Lo;0;L;;;;;N;;;;; -1002D;LINEAR B SYLLABLE B031 SA;Lo;0;L;;;;;N;;;;; -1002E;LINEAR B SYLLABLE B009 SE;Lo;0;L;;;;;N;;;;; -1002F;LINEAR B SYLLABLE B041 SI;Lo;0;L;;;;;N;;;;; -10030;LINEAR B SYLLABLE B012 SO;Lo;0;L;;;;;N;;;;; -10031;LINEAR B SYLLABLE B058 SU;Lo;0;L;;;;;N;;;;; -10032;LINEAR B SYLLABLE B059 TA;Lo;0;L;;;;;N;;;;; -10033;LINEAR B SYLLABLE B004 TE;Lo;0;L;;;;;N;;;;; -10034;LINEAR B SYLLABLE B037 TI;Lo;0;L;;;;;N;;;;; -10035;LINEAR B SYLLABLE B005 TO;Lo;0;L;;;;;N;;;;; -10036;LINEAR B SYLLABLE B069 TU;Lo;0;L;;;;;N;;;;; -10037;LINEAR B SYLLABLE B054 WA;Lo;0;L;;;;;N;;;;; -10038;LINEAR B SYLLABLE B075 WE;Lo;0;L;;;;;N;;;;; -10039;LINEAR B SYLLABLE B040 WI;Lo;0;L;;;;;N;;;;; -1003A;LINEAR B SYLLABLE B042 WO;Lo;0;L;;;;;N;;;;; -1003C;LINEAR B SYLLABLE B017 ZA;Lo;0;L;;;;;N;;;;; -1003D;LINEAR B SYLLABLE B074 ZE;Lo;0;L;;;;;N;;;;; -1003F;LINEAR B SYLLABLE B020 ZO;Lo;0;L;;;;;N;;;;; -10040;LINEAR B SYLLABLE B025 A2;Lo;0;L;;;;;N;;;;; -10041;LINEAR B SYLLABLE B043 A3;Lo;0;L;;;;;N;;;;; -10042;LINEAR B SYLLABLE B085 AU;Lo;0;L;;;;;N;;;;; -10043;LINEAR B SYLLABLE B071 DWE;Lo;0;L;;;;;N;;;;; -10044;LINEAR B SYLLABLE B090 DWO;Lo;0;L;;;;;N;;;;; -10045;LINEAR B SYLLABLE B048 NWA;Lo;0;L;;;;;N;;;;; -10046;LINEAR B SYLLABLE B029 PU2;Lo;0;L;;;;;N;;;;; -10047;LINEAR B SYLLABLE B062 PTE;Lo;0;L;;;;;N;;;;; -10048;LINEAR B SYLLABLE B076 RA2;Lo;0;L;;;;;N;;;;; -10049;LINEAR B SYLLABLE B033 RA3;Lo;0;L;;;;;N;;;;; -1004A;LINEAR B SYLLABLE B068 RO2;Lo;0;L;;;;;N;;;;; -1004B;LINEAR B SYLLABLE B066 TA2;Lo;0;L;;;;;N;;;;; -1004C;LINEAR B SYLLABLE B087 TWE;Lo;0;L;;;;;N;;;;; -1004D;LINEAR B SYLLABLE B091 TWO;Lo;0;L;;;;;N;;;;; -10050;LINEAR B SYMBOL B018;Lo;0;L;;;;;N;;;;; -10051;LINEAR B SYMBOL B019;Lo;0;L;;;;;N;;;;; -10052;LINEAR B SYMBOL B022;Lo;0;L;;;;;N;;;;; -10053;LINEAR B SYMBOL B034;Lo;0;L;;;;;N;;;;; -10054;LINEAR B SYMBOL B047;Lo;0;L;;;;;N;;;;; -10055;LINEAR B SYMBOL B049;Lo;0;L;;;;;N;;;;; -10056;LINEAR B SYMBOL B056;Lo;0;L;;;;;N;;;;; -10057;LINEAR B SYMBOL B063;Lo;0;L;;;;;N;;;;; -10058;LINEAR B SYMBOL B064;Lo;0;L;;;;;N;;;;; -10059;LINEAR B SYMBOL B079;Lo;0;L;;;;;N;;;;; -1005A;LINEAR B SYMBOL B082;Lo;0;L;;;;;N;;;;; -1005B;LINEAR B SYMBOL B083;Lo;0;L;;;;;N;;;;; -1005C;LINEAR B SYMBOL B086;Lo;0;L;;;;;N;;;;; -1005D;LINEAR B SYMBOL B089;Lo;0;L;;;;;N;;;;; -10080;LINEAR B IDEOGRAM B100 MAN;Lo;0;L;;;;;N;;;;; -10081;LINEAR B IDEOGRAM B102 WOMAN;Lo;0;L;;;;;N;;;;; -10082;LINEAR B IDEOGRAM B104 DEER;Lo;0;L;;;;;N;;;;; -10083;LINEAR B IDEOGRAM B105 EQUID;Lo;0;L;;;;;N;;;;; -10084;LINEAR B IDEOGRAM B105F MARE;Lo;0;L;;;;;N;;;;; -10085;LINEAR B IDEOGRAM B105M STALLION;Lo;0;L;;;;;N;;;;; -10086;LINEAR B IDEOGRAM B106F EWE;Lo;0;L;;;;;N;;;;; -10087;LINEAR B IDEOGRAM B106M RAM;Lo;0;L;;;;;N;;;;; -10088;LINEAR B IDEOGRAM B107F SHE-GOAT;Lo;0;L;;;;;N;;;;; -10089;LINEAR B IDEOGRAM B107M HE-GOAT;Lo;0;L;;;;;N;;;;; -1008A;LINEAR B IDEOGRAM B108F SOW;Lo;0;L;;;;;N;;;;; -1008B;LINEAR B IDEOGRAM B108M BOAR;Lo;0;L;;;;;N;;;;; -1008C;LINEAR B IDEOGRAM B109F COW;Lo;0;L;;;;;N;;;;; -1008D;LINEAR B IDEOGRAM B109M BULL;Lo;0;L;;;;;N;;;;; -1008E;LINEAR B IDEOGRAM B120 WHEAT;Lo;0;L;;;;;N;;;;; -1008F;LINEAR B IDEOGRAM B121 BARLEY;Lo;0;L;;;;;N;;;;; -10090;LINEAR B IDEOGRAM B122 OLIVE;Lo;0;L;;;;;N;;;;; -10091;LINEAR B IDEOGRAM B123 SPICE;Lo;0;L;;;;;N;;;;; -10092;LINEAR B IDEOGRAM B125 CYPERUS;Lo;0;L;;;;;N;;;;; -10093;LINEAR B MONOGRAM B127 KAPO;Lo;0;L;;;;;N;;;;; -10094;LINEAR B MONOGRAM B128 KANAKO;Lo;0;L;;;;;N;;;;; -10095;LINEAR B IDEOGRAM B130 OIL;Lo;0;L;;;;;N;;;;; -10096;LINEAR B IDEOGRAM B131 WINE;Lo;0;L;;;;;N;;;;; -10097;LINEAR B IDEOGRAM B132;Lo;0;L;;;;;N;;;;; -10098;LINEAR B MONOGRAM B133 AREPA;Lo;0;L;;;;;N;;;;; -10099;LINEAR B MONOGRAM B135 MERI;Lo;0;L;;;;;N;;;;; -1009A;LINEAR B IDEOGRAM B140 BRONZE;Lo;0;L;;;;;N;;;;; -1009B;LINEAR B IDEOGRAM B141 GOLD;Lo;0;L;;;;;N;;;;; -1009C;LINEAR B IDEOGRAM B142;Lo;0;L;;;;;N;;;;; -1009D;LINEAR B IDEOGRAM B145 WOOL;Lo;0;L;;;;;N;;;;; -1009E;LINEAR B IDEOGRAM B146;Lo;0;L;;;;;N;;;;; -1009F;LINEAR B IDEOGRAM B150;Lo;0;L;;;;;N;;;;; -100A0;LINEAR B IDEOGRAM B151 HORN;Lo;0;L;;;;;N;;;;; -100A1;LINEAR B IDEOGRAM B152;Lo;0;L;;;;;N;;;;; -100A2;LINEAR B IDEOGRAM B153;Lo;0;L;;;;;N;;;;; -100A3;LINEAR B IDEOGRAM B154;Lo;0;L;;;;;N;;;;; -100A4;LINEAR B MONOGRAM B156 TURO2;Lo;0;L;;;;;N;;;;; -100A5;LINEAR B IDEOGRAM B157;Lo;0;L;;;;;N;;;;; -100A6;LINEAR B IDEOGRAM B158;Lo;0;L;;;;;N;;;;; -100A7;LINEAR B IDEOGRAM B159 CLOTH;Lo;0;L;;;;;N;;;;; -100A8;LINEAR B IDEOGRAM B160;Lo;0;L;;;;;N;;;;; -100A9;LINEAR B IDEOGRAM B161;Lo;0;L;;;;;N;;;;; -100AA;LINEAR B IDEOGRAM B162 GARMENT;Lo;0;L;;;;;N;;;;; -100AB;LINEAR B IDEOGRAM B163 ARMOUR;Lo;0;L;;;;;N;;;;; -100AC;LINEAR B IDEOGRAM B164;Lo;0;L;;;;;N;;;;; -100AD;LINEAR B IDEOGRAM B165;Lo;0;L;;;;;N;;;;; -100AE;LINEAR B IDEOGRAM B166;Lo;0;L;;;;;N;;;;; -100AF;LINEAR B IDEOGRAM B167;Lo;0;L;;;;;N;;;;; -100B0;LINEAR B IDEOGRAM B168;Lo;0;L;;;;;N;;;;; -100B1;LINEAR B IDEOGRAM B169;Lo;0;L;;;;;N;;;;; -100B2;LINEAR B IDEOGRAM B170;Lo;0;L;;;;;N;;;;; -100B3;LINEAR B IDEOGRAM B171;Lo;0;L;;;;;N;;;;; -100B4;LINEAR B IDEOGRAM B172;Lo;0;L;;;;;N;;;;; -100B5;LINEAR B IDEOGRAM B173 MONTH;Lo;0;L;;;;;N;;;;; -100B6;LINEAR B IDEOGRAM B174;Lo;0;L;;;;;N;;;;; -100B7;LINEAR B IDEOGRAM B176 TREE;Lo;0;L;;;;;N;;;;; -100B8;LINEAR B IDEOGRAM B177;Lo;0;L;;;;;N;;;;; -100B9;LINEAR B IDEOGRAM B178;Lo;0;L;;;;;N;;;;; -100BA;LINEAR B IDEOGRAM B179;Lo;0;L;;;;;N;;;;; -100BB;LINEAR B IDEOGRAM B180;Lo;0;L;;;;;N;;;;; -100BC;LINEAR B IDEOGRAM B181;Lo;0;L;;;;;N;;;;; -100BD;LINEAR B IDEOGRAM B182;Lo;0;L;;;;;N;;;;; -100BE;LINEAR B IDEOGRAM B183;Lo;0;L;;;;;N;;;;; -100BF;LINEAR B IDEOGRAM B184;Lo;0;L;;;;;N;;;;; -100C0;LINEAR B IDEOGRAM B185;Lo;0;L;;;;;N;;;;; -100C1;LINEAR B IDEOGRAM B189;Lo;0;L;;;;;N;;;;; -100C2;LINEAR B IDEOGRAM B190;Lo;0;L;;;;;N;;;;; -100C3;LINEAR B IDEOGRAM B191 HELMET;Lo;0;L;;;;;N;;;;; -100C4;LINEAR B IDEOGRAM B220 FOOTSTOOL;Lo;0;L;;;;;N;;;;; -100C5;LINEAR B IDEOGRAM B225 BATHTUB;Lo;0;L;;;;;N;;;;; -100C6;LINEAR B IDEOGRAM B230 SPEAR;Lo;0;L;;;;;N;;;;; -100C7;LINEAR B IDEOGRAM B231 ARROW;Lo;0;L;;;;;N;;;;; -100C8;LINEAR B IDEOGRAM B232;Lo;0;L;;;;;N;;;;; -100C9;LINEAR B IDEOGRAM B233 SWORD;Lo;0;L;;;;;N;;;;; -100CA;LINEAR B IDEOGRAM B234;Lo;0;L;;;;;N;;;;; -100CB;LINEAR B IDEOGRAM B236;Lo;0;L;;;;;N;;;;; -100CC;LINEAR B IDEOGRAM B240 WHEELED CHARIOT;Lo;0;L;;;;;N;;;;; -100CD;LINEAR B IDEOGRAM B241 CHARIOT;Lo;0;L;;;;;N;;;;; -100CE;LINEAR B IDEOGRAM B242 CHARIOT FRAME;Lo;0;L;;;;;N;;;;; -100CF;LINEAR B IDEOGRAM B243 WHEEL;Lo;0;L;;;;;N;;;;; -100D0;LINEAR B IDEOGRAM B245;Lo;0;L;;;;;N;;;;; -100D1;LINEAR B IDEOGRAM B246;Lo;0;L;;;;;N;;;;; -100D2;LINEAR B MONOGRAM B247 DIPTE;Lo;0;L;;;;;N;;;;; -100D3;LINEAR B IDEOGRAM B248;Lo;0;L;;;;;N;;;;; -100D4;LINEAR B IDEOGRAM B249;Lo;0;L;;;;;N;;;;; -100D5;LINEAR B IDEOGRAM B251;Lo;0;L;;;;;N;;;;; -100D6;LINEAR B IDEOGRAM B252;Lo;0;L;;;;;N;;;;; -100D7;LINEAR B IDEOGRAM B253;Lo;0;L;;;;;N;;;;; -100D8;LINEAR B IDEOGRAM B254 DART;Lo;0;L;;;;;N;;;;; -100D9;LINEAR B IDEOGRAM B255;Lo;0;L;;;;;N;;;;; -100DA;LINEAR B IDEOGRAM B256;Lo;0;L;;;;;N;;;;; -100DB;LINEAR B IDEOGRAM B257;Lo;0;L;;;;;N;;;;; -100DC;LINEAR B IDEOGRAM B258;Lo;0;L;;;;;N;;;;; -100DD;LINEAR B IDEOGRAM B259;Lo;0;L;;;;;N;;;;; -100DE;LINEAR B IDEOGRAM VESSEL B155;Lo;0;L;;;;;N;;;;; -100DF;LINEAR B IDEOGRAM VESSEL B200;Lo;0;L;;;;;N;;;;; -100E0;LINEAR B IDEOGRAM VESSEL B201;Lo;0;L;;;;;N;;;;; -100E1;LINEAR B IDEOGRAM VESSEL B202;Lo;0;L;;;;;N;;;;; -100E2;LINEAR B IDEOGRAM VESSEL B203;Lo;0;L;;;;;N;;;;; -100E3;LINEAR B IDEOGRAM VESSEL B204;Lo;0;L;;;;;N;;;;; -100E4;LINEAR B IDEOGRAM VESSEL B205;Lo;0;L;;;;;N;;;;; -100E5;LINEAR B IDEOGRAM VESSEL B206;Lo;0;L;;;;;N;;;;; -100E6;LINEAR B IDEOGRAM VESSEL B207;Lo;0;L;;;;;N;;;;; -100E7;LINEAR B IDEOGRAM VESSEL B208;Lo;0;L;;;;;N;;;;; -100E8;LINEAR B IDEOGRAM VESSEL B209;Lo;0;L;;;;;N;;;;; -100E9;LINEAR B IDEOGRAM VESSEL B210;Lo;0;L;;;;;N;;;;; -100EA;LINEAR B IDEOGRAM VESSEL B211;Lo;0;L;;;;;N;;;;; -100EB;LINEAR B IDEOGRAM VESSEL B212;Lo;0;L;;;;;N;;;;; -100EC;LINEAR B IDEOGRAM VESSEL B213;Lo;0;L;;;;;N;;;;; -100ED;LINEAR B IDEOGRAM VESSEL B214;Lo;0;L;;;;;N;;;;; -100EE;LINEAR B IDEOGRAM VESSEL B215;Lo;0;L;;;;;N;;;;; -100EF;LINEAR B IDEOGRAM VESSEL B216;Lo;0;L;;;;;N;;;;; -100F0;LINEAR B IDEOGRAM VESSEL B217;Lo;0;L;;;;;N;;;;; -100F1;LINEAR B IDEOGRAM VESSEL B218;Lo;0;L;;;;;N;;;;; -100F2;LINEAR B IDEOGRAM VESSEL B219;Lo;0;L;;;;;N;;;;; -100F3;LINEAR B IDEOGRAM VESSEL B221;Lo;0;L;;;;;N;;;;; -100F4;LINEAR B IDEOGRAM VESSEL B222;Lo;0;L;;;;;N;;;;; -100F5;LINEAR B IDEOGRAM VESSEL B226;Lo;0;L;;;;;N;;;;; -100F6;LINEAR B IDEOGRAM VESSEL B227;Lo;0;L;;;;;N;;;;; -100F7;LINEAR B IDEOGRAM VESSEL B228;Lo;0;L;;;;;N;;;;; -100F8;LINEAR B IDEOGRAM VESSEL B229;Lo;0;L;;;;;N;;;;; -100F9;LINEAR B IDEOGRAM VESSEL B250;Lo;0;L;;;;;N;;;;; -100FA;LINEAR B IDEOGRAM VESSEL B305;Lo;0;L;;;;;N;;;;; -10100;AEGEAN WORD SEPARATOR LINE;Po;0;L;;;;;N;;;;; -10101;AEGEAN WORD SEPARATOR DOT;Po;0;ON;;;;;N;;;;; -10102;AEGEAN CHECK MARK;So;0;L;;;;;N;;;;; -10107;AEGEAN NUMBER ONE;No;0;L;;;;1;N;;;;; -10108;AEGEAN NUMBER TWO;No;0;L;;;;2;N;;;;; -10109;AEGEAN NUMBER THREE;No;0;L;;;;3;N;;;;; -1010A;AEGEAN NUMBER FOUR;No;0;L;;;;4;N;;;;; -1010B;AEGEAN NUMBER FIVE;No;0;L;;;;5;N;;;;; -1010C;AEGEAN NUMBER SIX;No;0;L;;;;6;N;;;;; -1010D;AEGEAN NUMBER SEVEN;No;0;L;;;;7;N;;;;; -1010E;AEGEAN NUMBER EIGHT;No;0;L;;;;8;N;;;;; -1010F;AEGEAN NUMBER NINE;No;0;L;;;;9;N;;;;; -10110;AEGEAN NUMBER TEN;No;0;L;;;;10;N;;;;; -10111;AEGEAN NUMBER TWENTY;No;0;L;;;;20;N;;;;; -10112;AEGEAN NUMBER THIRTY;No;0;L;;;;30;N;;;;; -10113;AEGEAN NUMBER FORTY;No;0;L;;;;40;N;;;;; -10114;AEGEAN NUMBER FIFTY;No;0;L;;;;50;N;;;;; -10115;AEGEAN NUMBER SIXTY;No;0;L;;;;60;N;;;;; -10116;AEGEAN NUMBER SEVENTY;No;0;L;;;;70;N;;;;; -10117;AEGEAN NUMBER EIGHTY;No;0;L;;;;80;N;;;;; -10118;AEGEAN NUMBER NINETY;No;0;L;;;;90;N;;;;; -10119;AEGEAN NUMBER ONE HUNDRED;No;0;L;;;;100;N;;;;; -1011A;AEGEAN NUMBER TWO HUNDRED;No;0;L;;;;200;N;;;;; -1011B;AEGEAN NUMBER THREE HUNDRED;No;0;L;;;;300;N;;;;; -1011C;AEGEAN NUMBER FOUR HUNDRED;No;0;L;;;;400;N;;;;; -1011D;AEGEAN NUMBER FIVE HUNDRED;No;0;L;;;;500;N;;;;; -1011E;AEGEAN NUMBER SIX HUNDRED;No;0;L;;;;600;N;;;;; -1011F;AEGEAN NUMBER SEVEN HUNDRED;No;0;L;;;;700;N;;;;; -10120;AEGEAN NUMBER EIGHT HUNDRED;No;0;L;;;;800;N;;;;; -10121;AEGEAN NUMBER NINE HUNDRED;No;0;L;;;;900;N;;;;; -10122;AEGEAN NUMBER ONE THOUSAND;No;0;L;;;;1000;N;;;;; -10123;AEGEAN NUMBER TWO THOUSAND;No;0;L;;;;2000;N;;;;; -10124;AEGEAN NUMBER THREE THOUSAND;No;0;L;;;;3000;N;;;;; -10125;AEGEAN NUMBER FOUR THOUSAND;No;0;L;;;;4000;N;;;;; -10126;AEGEAN NUMBER FIVE THOUSAND;No;0;L;;;;5000;N;;;;; -10127;AEGEAN NUMBER SIX THOUSAND;No;0;L;;;;6000;N;;;;; -10128;AEGEAN NUMBER SEVEN THOUSAND;No;0;L;;;;7000;N;;;;; -10129;AEGEAN NUMBER EIGHT THOUSAND;No;0;L;;;;8000;N;;;;; -1012A;AEGEAN NUMBER NINE THOUSAND;No;0;L;;;;9000;N;;;;; -1012B;AEGEAN NUMBER TEN THOUSAND;No;0;L;;;;10000;N;;;;; -1012C;AEGEAN NUMBER TWENTY THOUSAND;No;0;L;;;;20000;N;;;;; -1012D;AEGEAN NUMBER THIRTY THOUSAND;No;0;L;;;;30000;N;;;;; -1012E;AEGEAN NUMBER FORTY THOUSAND;No;0;L;;;;40000;N;;;;; -1012F;AEGEAN NUMBER FIFTY THOUSAND;No;0;L;;;;50000;N;;;;; -10130;AEGEAN NUMBER SIXTY THOUSAND;No;0;L;;;;60000;N;;;;; -10131;AEGEAN NUMBER SEVENTY THOUSAND;No;0;L;;;;70000;N;;;;; -10132;AEGEAN NUMBER EIGHTY THOUSAND;No;0;L;;;;80000;N;;;;; -10133;AEGEAN NUMBER NINETY THOUSAND;No;0;L;;;;90000;N;;;;; -10137;AEGEAN WEIGHT BASE UNIT;So;0;L;;;;;N;;;;; -10138;AEGEAN WEIGHT FIRST SUBUNIT;So;0;L;;;;;N;;;;; -10139;AEGEAN WEIGHT SECOND SUBUNIT;So;0;L;;;;;N;;;;; -1013A;AEGEAN WEIGHT THIRD SUBUNIT;So;0;L;;;;;N;;;;; -1013B;AEGEAN WEIGHT FOURTH SUBUNIT;So;0;L;;;;;N;;;;; -1013C;AEGEAN DRY MEASURE FIRST SUBUNIT;So;0;L;;;;;N;;;;; -1013D;AEGEAN LIQUID MEASURE FIRST SUBUNIT;So;0;L;;;;;N;;;;; -1013E;AEGEAN MEASURE SECOND SUBUNIT;So;0;L;;;;;N;;;;; -1013F;AEGEAN MEASURE THIRD SUBUNIT;So;0;L;;;;;N;;;;; -10140;GREEK ACROPHONIC ATTIC ONE QUARTER;Nl;0;ON;;;;1/4;N;;;;; -10141;GREEK ACROPHONIC ATTIC ONE HALF;Nl;0;ON;;;;1/2;N;;;;; -10142;GREEK ACROPHONIC ATTIC ONE DRACHMA;Nl;0;ON;;;;1;N;;;;; -10143;GREEK ACROPHONIC ATTIC FIVE;Nl;0;ON;;;;5;N;;;;; -10144;GREEK ACROPHONIC ATTIC FIFTY;Nl;0;ON;;;;50;N;;;;; -10145;GREEK ACROPHONIC ATTIC FIVE HUNDRED;Nl;0;ON;;;;500;N;;;;; -10146;GREEK ACROPHONIC ATTIC FIVE THOUSAND;Nl;0;ON;;;;5000;N;;;;; -10147;GREEK ACROPHONIC ATTIC FIFTY THOUSAND;Nl;0;ON;;;;50000;N;;;;; -10148;GREEK ACROPHONIC ATTIC FIVE TALENTS;Nl;0;ON;;;;5;N;;;;; -10149;GREEK ACROPHONIC ATTIC TEN TALENTS;Nl;0;ON;;;;10;N;;;;; -1014A;GREEK ACROPHONIC ATTIC FIFTY TALENTS;Nl;0;ON;;;;50;N;;;;; -1014B;GREEK ACROPHONIC ATTIC ONE HUNDRED TALENTS;Nl;0;ON;;;;100;N;;;;; -1014C;GREEK ACROPHONIC ATTIC FIVE HUNDRED TALENTS;Nl;0;ON;;;;500;N;;;;; -1014D;GREEK ACROPHONIC ATTIC ONE THOUSAND TALENTS;Nl;0;ON;;;;1000;N;;;;; -1014E;GREEK ACROPHONIC ATTIC FIVE THOUSAND TALENTS;Nl;0;ON;;;;5000;N;;;;; -1014F;GREEK ACROPHONIC ATTIC FIVE STATERS;Nl;0;ON;;;;5;N;;;;; -10150;GREEK ACROPHONIC ATTIC TEN STATERS;Nl;0;ON;;;;10;N;;;;; -10151;GREEK ACROPHONIC ATTIC FIFTY STATERS;Nl;0;ON;;;;50;N;;;;; -10152;GREEK ACROPHONIC ATTIC ONE HUNDRED STATERS;Nl;0;ON;;;;100;N;;;;; -10153;GREEK ACROPHONIC ATTIC FIVE HUNDRED STATERS;Nl;0;ON;;;;500;N;;;;; -10154;GREEK ACROPHONIC ATTIC ONE THOUSAND STATERS;Nl;0;ON;;;;1000;N;;;;; -10155;GREEK ACROPHONIC ATTIC TEN THOUSAND STATERS;Nl;0;ON;;;;10000;N;;;;; -10156;GREEK ACROPHONIC ATTIC FIFTY THOUSAND STATERS;Nl;0;ON;;;;50000;N;;;;; -10157;GREEK ACROPHONIC ATTIC TEN MNAS;Nl;0;ON;;;;10;N;;;;; -10158;GREEK ACROPHONIC HERAEUM ONE PLETHRON;Nl;0;ON;;;;1;N;;;;; -10159;GREEK ACROPHONIC THESPIAN ONE;Nl;0;ON;;;;1;N;;;;; -1015A;GREEK ACROPHONIC HERMIONIAN ONE;Nl;0;ON;;;;1;N;;;;; -1015B;GREEK ACROPHONIC EPIDAUREAN TWO;Nl;0;ON;;;;2;N;;;;; -1015C;GREEK ACROPHONIC THESPIAN TWO;Nl;0;ON;;;;2;N;;;;; -1015D;GREEK ACROPHONIC CYRENAIC TWO DRACHMAS;Nl;0;ON;;;;2;N;;;;; -1015E;GREEK ACROPHONIC EPIDAUREAN TWO DRACHMAS;Nl;0;ON;;;;2;N;;;;; -1015F;GREEK ACROPHONIC TROEZENIAN FIVE;Nl;0;ON;;;;5;N;;;;; -10160;GREEK ACROPHONIC TROEZENIAN TEN;Nl;0;ON;;;;10;N;;;;; -10161;GREEK ACROPHONIC TROEZENIAN TEN ALTERNATE FORM;Nl;0;ON;;;;10;N;;;;; -10162;GREEK ACROPHONIC HERMIONIAN TEN;Nl;0;ON;;;;10;N;;;;; -10163;GREEK ACROPHONIC MESSENIAN TEN;Nl;0;ON;;;;10;N;;;;; -10164;GREEK ACROPHONIC THESPIAN TEN;Nl;0;ON;;;;10;N;;;;; -10165;GREEK ACROPHONIC THESPIAN THIRTY;Nl;0;ON;;;;30;N;;;;; -10166;GREEK ACROPHONIC TROEZENIAN FIFTY;Nl;0;ON;;;;50;N;;;;; -10167;GREEK ACROPHONIC TROEZENIAN FIFTY ALTERNATE FORM;Nl;0;ON;;;;50;N;;;;; -10168;GREEK ACROPHONIC HERMIONIAN FIFTY;Nl;0;ON;;;;50;N;;;;; -10169;GREEK ACROPHONIC THESPIAN FIFTY;Nl;0;ON;;;;50;N;;;;; -1016A;GREEK ACROPHONIC THESPIAN ONE HUNDRED;Nl;0;ON;;;;100;N;;;;; -1016B;GREEK ACROPHONIC THESPIAN THREE HUNDRED;Nl;0;ON;;;;300;N;;;;; -1016C;GREEK ACROPHONIC EPIDAUREAN FIVE HUNDRED;Nl;0;ON;;;;500;N;;;;; -1016D;GREEK ACROPHONIC TROEZENIAN FIVE HUNDRED;Nl;0;ON;;;;500;N;;;;; -1016E;GREEK ACROPHONIC THESPIAN FIVE HUNDRED;Nl;0;ON;;;;500;N;;;;; -1016F;GREEK ACROPHONIC CARYSTIAN FIVE HUNDRED;Nl;0;ON;;;;500;N;;;;; -10170;GREEK ACROPHONIC NAXIAN FIVE HUNDRED;Nl;0;ON;;;;500;N;;;;; -10171;GREEK ACROPHONIC THESPIAN ONE THOUSAND;Nl;0;ON;;;;1000;N;;;;; -10172;GREEK ACROPHONIC THESPIAN FIVE THOUSAND;Nl;0;ON;;;;5000;N;;;;; -10173;GREEK ACROPHONIC DELPHIC FIVE MNAS;Nl;0;ON;;;;5;N;;;;; -10174;GREEK ACROPHONIC STRATIAN FIFTY MNAS;Nl;0;ON;;;;50;N;;;;; -10175;GREEK ONE HALF SIGN;No;0;ON;;;;1/2;N;;;;; -10176;GREEK ONE HALF SIGN ALTERNATE FORM;No;0;ON;;;;1/2;N;;;;; -10177;GREEK TWO THIRDS SIGN;No;0;ON;;;;2/3;N;;;;; -10178;GREEK THREE QUARTERS SIGN;No;0;ON;;;;3/4;N;;;;; -10179;GREEK YEAR SIGN;So;0;ON;;;;;N;;;;; -1017A;GREEK TALENT SIGN;So;0;ON;;;;;N;;;;; -1017B;GREEK DRACHMA SIGN;So;0;ON;;;;;N;;;;; -1017C;GREEK OBOL SIGN;So;0;ON;;;;;N;;;;; -1017D;GREEK TWO OBOLS SIGN;So;0;ON;;;;;N;;;;; -1017E;GREEK THREE OBOLS SIGN;So;0;ON;;;;;N;;;;; -1017F;GREEK FOUR OBOLS SIGN;So;0;ON;;;;;N;;;;; -10180;GREEK FIVE OBOLS SIGN;So;0;ON;;;;;N;;;;; -10181;GREEK METRETES SIGN;So;0;ON;;;;;N;;;;; -10182;GREEK KYATHOS BASE SIGN;So;0;ON;;;;;N;;;;; -10183;GREEK LITRA SIGN;So;0;ON;;;;;N;;;;; -10184;GREEK OUNKIA SIGN;So;0;ON;;;;;N;;;;; -10185;GREEK XESTES SIGN;So;0;ON;;;;;N;;;;; -10186;GREEK ARTABE SIGN;So;0;ON;;;;;N;;;;; -10187;GREEK AROURA SIGN;So;0;ON;;;;;N;;;;; -10188;GREEK GRAMMA SIGN;So;0;ON;;;;;N;;;;; -10189;GREEK TRYBLION BASE SIGN;So;0;ON;;;;;N;;;;; -1018A;GREEK ZERO SIGN;No;0;ON;;;;0;N;;;;; -10190;ROMAN SEXTANS SIGN;So;0;ON;;;;;N;;;;; -10191;ROMAN UNCIA SIGN;So;0;ON;;;;;N;;;;; -10192;ROMAN SEMUNCIA SIGN;So;0;ON;;;;;N;;;;; -10193;ROMAN SEXTULA SIGN;So;0;ON;;;;;N;;;;; -10194;ROMAN DIMIDIA SEXTULA SIGN;So;0;ON;;;;;N;;;;; -10195;ROMAN SILIQUA SIGN;So;0;ON;;;;;N;;;;; -10196;ROMAN DENARIUS SIGN;So;0;ON;;;;;N;;;;; -10197;ROMAN QUINARIUS SIGN;So;0;ON;;;;;N;;;;; -10198;ROMAN SESTERTIUS SIGN;So;0;ON;;;;;N;;;;; -10199;ROMAN DUPONDIUS SIGN;So;0;ON;;;;;N;;;;; -1019A;ROMAN AS SIGN;So;0;ON;;;;;N;;;;; -1019B;ROMAN CENTURIAL SIGN;So;0;ON;;;;;N;;;;; -101D0;PHAISTOS DISC SIGN PEDESTRIAN;So;0;L;;;;;N;;;;; -101D1;PHAISTOS DISC SIGN PLUMED HEAD;So;0;L;;;;;N;;;;; -101D2;PHAISTOS DISC SIGN TATTOOED HEAD;So;0;L;;;;;N;;;;; -101D3;PHAISTOS DISC SIGN CAPTIVE;So;0;L;;;;;N;;;;; -101D4;PHAISTOS DISC SIGN CHILD;So;0;L;;;;;N;;;;; -101D5;PHAISTOS DISC SIGN WOMAN;So;0;L;;;;;N;;;;; -101D6;PHAISTOS DISC SIGN HELMET;So;0;L;;;;;N;;;;; -101D7;PHAISTOS DISC SIGN GAUNTLET;So;0;L;;;;;N;;;;; -101D8;PHAISTOS DISC SIGN TIARA;So;0;L;;;;;N;;;;; -101D9;PHAISTOS DISC SIGN ARROW;So;0;L;;;;;N;;;;; -101DA;PHAISTOS DISC SIGN BOW;So;0;L;;;;;N;;;;; -101DB;PHAISTOS DISC SIGN SHIELD;So;0;L;;;;;N;;;;; -101DC;PHAISTOS DISC SIGN CLUB;So;0;L;;;;;N;;;;; -101DD;PHAISTOS DISC SIGN MANACLES;So;0;L;;;;;N;;;;; -101DE;PHAISTOS DISC SIGN MATTOCK;So;0;L;;;;;N;;;;; -101DF;PHAISTOS DISC SIGN SAW;So;0;L;;;;;N;;;;; -101E0;PHAISTOS DISC SIGN LID;So;0;L;;;;;N;;;;; -101E1;PHAISTOS DISC SIGN BOOMERANG;So;0;L;;;;;N;;;;; -101E2;PHAISTOS DISC SIGN CARPENTRY PLANE;So;0;L;;;;;N;;;;; -101E3;PHAISTOS DISC SIGN DOLIUM;So;0;L;;;;;N;;;;; -101E4;PHAISTOS DISC SIGN COMB;So;0;L;;;;;N;;;;; -101E5;PHAISTOS DISC SIGN SLING;So;0;L;;;;;N;;;;; -101E6;PHAISTOS DISC SIGN COLUMN;So;0;L;;;;;N;;;;; -101E7;PHAISTOS DISC SIGN BEEHIVE;So;0;L;;;;;N;;;;; -101E8;PHAISTOS DISC SIGN SHIP;So;0;L;;;;;N;;;;; -101E9;PHAISTOS DISC SIGN HORN;So;0;L;;;;;N;;;;; -101EA;PHAISTOS DISC SIGN HIDE;So;0;L;;;;;N;;;;; -101EB;PHAISTOS DISC SIGN BULLS LEG;So;0;L;;;;;N;;;;; -101EC;PHAISTOS DISC SIGN CAT;So;0;L;;;;;N;;;;; -101ED;PHAISTOS DISC SIGN RAM;So;0;L;;;;;N;;;;; -101EE;PHAISTOS DISC SIGN EAGLE;So;0;L;;;;;N;;;;; -101EF;PHAISTOS DISC SIGN DOVE;So;0;L;;;;;N;;;;; -101F0;PHAISTOS DISC SIGN TUNNY;So;0;L;;;;;N;;;;; -101F1;PHAISTOS DISC SIGN BEE;So;0;L;;;;;N;;;;; -101F2;PHAISTOS DISC SIGN PLANE TREE;So;0;L;;;;;N;;;;; -101F3;PHAISTOS DISC SIGN VINE;So;0;L;;;;;N;;;;; -101F4;PHAISTOS DISC SIGN PAPYRUS;So;0;L;;;;;N;;;;; -101F5;PHAISTOS DISC SIGN ROSETTE;So;0;L;;;;;N;;;;; -101F6;PHAISTOS DISC SIGN LILY;So;0;L;;;;;N;;;;; -101F7;PHAISTOS DISC SIGN OX BACK;So;0;L;;;;;N;;;;; -101F8;PHAISTOS DISC SIGN FLUTE;So;0;L;;;;;N;;;;; -101F9;PHAISTOS DISC SIGN GRATER;So;0;L;;;;;N;;;;; -101FA;PHAISTOS DISC SIGN STRAINER;So;0;L;;;;;N;;;;; -101FB;PHAISTOS DISC SIGN SMALL AXE;So;0;L;;;;;N;;;;; -101FC;PHAISTOS DISC SIGN WAVY BAND;So;0;L;;;;;N;;;;; -101FD;PHAISTOS DISC SIGN COMBINING OBLIQUE STROKE;Mn;220;NSM;;;;;N;;;;; -10280;LYCIAN LETTER A;Lo;0;L;;;;;N;;;;; -10281;LYCIAN LETTER E;Lo;0;L;;;;;N;;;;; -10282;LYCIAN LETTER B;Lo;0;L;;;;;N;;;;; -10283;LYCIAN LETTER BH;Lo;0;L;;;;;N;;;;; -10284;LYCIAN LETTER G;Lo;0;L;;;;;N;;;;; -10285;LYCIAN LETTER D;Lo;0;L;;;;;N;;;;; -10286;LYCIAN LETTER I;Lo;0;L;;;;;N;;;;; -10287;LYCIAN LETTER W;Lo;0;L;;;;;N;;;;; -10288;LYCIAN LETTER Z;Lo;0;L;;;;;N;;;;; -10289;LYCIAN LETTER TH;Lo;0;L;;;;;N;;;;; -1028A;LYCIAN LETTER J;Lo;0;L;;;;;N;;;;; -1028B;LYCIAN LETTER K;Lo;0;L;;;;;N;;;;; -1028C;LYCIAN LETTER Q;Lo;0;L;;;;;N;;;;; -1028D;LYCIAN LETTER L;Lo;0;L;;;;;N;;;;; -1028E;LYCIAN LETTER M;Lo;0;L;;;;;N;;;;; -1028F;LYCIAN LETTER N;Lo;0;L;;;;;N;;;;; -10290;LYCIAN LETTER MM;Lo;0;L;;;;;N;;;;; -10291;LYCIAN LETTER NN;Lo;0;L;;;;;N;;;;; -10292;LYCIAN LETTER U;Lo;0;L;;;;;N;;;;; -10293;LYCIAN LETTER P;Lo;0;L;;;;;N;;;;; -10294;LYCIAN LETTER KK;Lo;0;L;;;;;N;;;;; -10295;LYCIAN LETTER R;Lo;0;L;;;;;N;;;;; -10296;LYCIAN LETTER S;Lo;0;L;;;;;N;;;;; -10297;LYCIAN LETTER T;Lo;0;L;;;;;N;;;;; -10298;LYCIAN LETTER TT;Lo;0;L;;;;;N;;;;; -10299;LYCIAN LETTER AN;Lo;0;L;;;;;N;;;;; -1029A;LYCIAN LETTER EN;Lo;0;L;;;;;N;;;;; -1029B;LYCIAN LETTER H;Lo;0;L;;;;;N;;;;; -1029C;LYCIAN LETTER X;Lo;0;L;;;;;N;;;;; -102A0;CARIAN LETTER A;Lo;0;L;;;;;N;;;;; -102A1;CARIAN LETTER P2;Lo;0;L;;;;;N;;;;; -102A2;CARIAN LETTER D;Lo;0;L;;;;;N;;;;; -102A3;CARIAN LETTER L;Lo;0;L;;;;;N;;;;; -102A4;CARIAN LETTER UUU;Lo;0;L;;;;;N;;;;; -102A5;CARIAN LETTER R;Lo;0;L;;;;;N;;;;; -102A6;CARIAN LETTER LD;Lo;0;L;;;;;N;;;;; -102A7;CARIAN LETTER A2;Lo;0;L;;;;;N;;;;; -102A8;CARIAN LETTER Q;Lo;0;L;;;;;N;;;;; -102A9;CARIAN LETTER B;Lo;0;L;;;;;N;;;;; -102AA;CARIAN LETTER M;Lo;0;L;;;;;N;;;;; -102AB;CARIAN LETTER O;Lo;0;L;;;;;N;;;;; -102AC;CARIAN LETTER D2;Lo;0;L;;;;;N;;;;; -102AD;CARIAN LETTER T;Lo;0;L;;;;;N;;;;; -102AE;CARIAN LETTER SH;Lo;0;L;;;;;N;;;;; -102AF;CARIAN LETTER SH2;Lo;0;L;;;;;N;;;;; -102B0;CARIAN LETTER S;Lo;0;L;;;;;N;;;;; -102B1;CARIAN LETTER C-18;Lo;0;L;;;;;N;;;;; -102B2;CARIAN LETTER U;Lo;0;L;;;;;N;;;;; -102B3;CARIAN LETTER NN;Lo;0;L;;;;;N;;;;; -102B4;CARIAN LETTER X;Lo;0;L;;;;;N;;;;; -102B5;CARIAN LETTER N;Lo;0;L;;;;;N;;;;; -102B6;CARIAN LETTER TT2;Lo;0;L;;;;;N;;;;; -102B7;CARIAN LETTER P;Lo;0;L;;;;;N;;;;; -102B8;CARIAN LETTER SS;Lo;0;L;;;;;N;;;;; -102B9;CARIAN LETTER I;Lo;0;L;;;;;N;;;;; -102BA;CARIAN LETTER E;Lo;0;L;;;;;N;;;;; -102BB;CARIAN LETTER UUUU;Lo;0;L;;;;;N;;;;; -102BC;CARIAN LETTER K;Lo;0;L;;;;;N;;;;; -102BD;CARIAN LETTER K2;Lo;0;L;;;;;N;;;;; -102BE;CARIAN LETTER ND;Lo;0;L;;;;;N;;;;; -102BF;CARIAN LETTER UU;Lo;0;L;;;;;N;;;;; -102C0;CARIAN LETTER G;Lo;0;L;;;;;N;;;;; -102C1;CARIAN LETTER G2;Lo;0;L;;;;;N;;;;; -102C2;CARIAN LETTER ST;Lo;0;L;;;;;N;;;;; -102C3;CARIAN LETTER ST2;Lo;0;L;;;;;N;;;;; -102C4;CARIAN LETTER NG;Lo;0;L;;;;;N;;;;; -102C5;CARIAN LETTER II;Lo;0;L;;;;;N;;;;; -102C6;CARIAN LETTER C-39;Lo;0;L;;;;;N;;;;; -102C7;CARIAN LETTER TT;Lo;0;L;;;;;N;;;;; -102C8;CARIAN LETTER UUU2;Lo;0;L;;;;;N;;;;; -102C9;CARIAN LETTER RR;Lo;0;L;;;;;N;;;;; -102CA;CARIAN LETTER MB;Lo;0;L;;;;;N;;;;; -102CB;CARIAN LETTER MB2;Lo;0;L;;;;;N;;;;; -102CC;CARIAN LETTER MB3;Lo;0;L;;;;;N;;;;; -102CD;CARIAN LETTER MB4;Lo;0;L;;;;;N;;;;; -102CE;CARIAN LETTER LD2;Lo;0;L;;;;;N;;;;; -102CF;CARIAN LETTER E2;Lo;0;L;;;;;N;;;;; -102D0;CARIAN LETTER UUU3;Lo;0;L;;;;;N;;;;; -10300;OLD ITALIC LETTER A;Lo;0;L;;;;;N;;;;; -10301;OLD ITALIC LETTER BE;Lo;0;L;;;;;N;;;;; -10302;OLD ITALIC LETTER KE;Lo;0;L;;;;;N;;;;; -10303;OLD ITALIC LETTER DE;Lo;0;L;;;;;N;;;;; -10304;OLD ITALIC LETTER E;Lo;0;L;;;;;N;;;;; -10305;OLD ITALIC LETTER VE;Lo;0;L;;;;;N;;;;; -10306;OLD ITALIC LETTER ZE;Lo;0;L;;;;;N;;;;; -10307;OLD ITALIC LETTER HE;Lo;0;L;;;;;N;;;;; -10308;OLD ITALIC LETTER THE;Lo;0;L;;;;;N;;;;; -10309;OLD ITALIC LETTER I;Lo;0;L;;;;;N;;;;; -1030A;OLD ITALIC LETTER KA;Lo;0;L;;;;;N;;;;; -1030B;OLD ITALIC LETTER EL;Lo;0;L;;;;;N;;;;; -1030C;OLD ITALIC LETTER EM;Lo;0;L;;;;;N;;;;; -1030D;OLD ITALIC LETTER EN;Lo;0;L;;;;;N;;;;; -1030E;OLD ITALIC LETTER ESH;Lo;0;L;;;;;N;;;;; -1030F;OLD ITALIC LETTER O;Lo;0;L;;;;;N;;;;; -10310;OLD ITALIC LETTER PE;Lo;0;L;;;;;N;;;;; -10311;OLD ITALIC LETTER SHE;Lo;0;L;;;;;N;;;;; -10312;OLD ITALIC LETTER KU;Lo;0;L;;;;;N;;;;; -10313;OLD ITALIC LETTER ER;Lo;0;L;;;;;N;;;;; -10314;OLD ITALIC LETTER ES;Lo;0;L;;;;;N;;;;; -10315;OLD ITALIC LETTER TE;Lo;0;L;;;;;N;;;;; -10316;OLD ITALIC LETTER U;Lo;0;L;;;;;N;;;;; -10317;OLD ITALIC LETTER EKS;Lo;0;L;;;;;N;;;;; -10318;OLD ITALIC LETTER PHE;Lo;0;L;;;;;N;;;;; -10319;OLD ITALIC LETTER KHE;Lo;0;L;;;;;N;;;;; -1031A;OLD ITALIC LETTER EF;Lo;0;L;;;;;N;;;;; -1031B;OLD ITALIC LETTER ERS;Lo;0;L;;;;;N;;;;; -1031C;OLD ITALIC LETTER CHE;Lo;0;L;;;;;N;;;;; -1031D;OLD ITALIC LETTER II;Lo;0;L;;;;;N;;;;; -1031E;OLD ITALIC LETTER UU;Lo;0;L;;;;;N;;;;; -10320;OLD ITALIC NUMERAL ONE;No;0;L;;;;1;N;;;;; -10321;OLD ITALIC NUMERAL FIVE;No;0;L;;;;5;N;;;;; -10322;OLD ITALIC NUMERAL TEN;No;0;L;;;;10;N;;;;; -10323;OLD ITALIC NUMERAL FIFTY;No;0;L;;;;50;N;;;;; -10330;GOTHIC LETTER AHSA;Lo;0;L;;;;;N;;;;; -10331;GOTHIC LETTER BAIRKAN;Lo;0;L;;;;;N;;;;; -10332;GOTHIC LETTER GIBA;Lo;0;L;;;;;N;;;;; -10333;GOTHIC LETTER DAGS;Lo;0;L;;;;;N;;;;; -10334;GOTHIC LETTER AIHVUS;Lo;0;L;;;;;N;;;;; -10335;GOTHIC LETTER QAIRTHRA;Lo;0;L;;;;;N;;;;; -10336;GOTHIC LETTER IUJA;Lo;0;L;;;;;N;;;;; -10337;GOTHIC LETTER HAGL;Lo;0;L;;;;;N;;;;; -10338;GOTHIC LETTER THIUTH;Lo;0;L;;;;;N;;;;; -10339;GOTHIC LETTER EIS;Lo;0;L;;;;;N;;;;; -1033A;GOTHIC LETTER KUSMA;Lo;0;L;;;;;N;;;;; -1033B;GOTHIC LETTER LAGUS;Lo;0;L;;;;;N;;;;; -1033C;GOTHIC LETTER MANNA;Lo;0;L;;;;;N;;;;; -1033D;GOTHIC LETTER NAUTHS;Lo;0;L;;;;;N;;;;; -1033E;GOTHIC LETTER JER;Lo;0;L;;;;;N;;;;; -1033F;GOTHIC LETTER URUS;Lo;0;L;;;;;N;;;;; -10340;GOTHIC LETTER PAIRTHRA;Lo;0;L;;;;;N;;;;; -10341;GOTHIC LETTER NINETY;Nl;0;L;;;;90;N;;;;; -10342;GOTHIC LETTER RAIDA;Lo;0;L;;;;;N;;;;; -10343;GOTHIC LETTER SAUIL;Lo;0;L;;;;;N;;;;; -10344;GOTHIC LETTER TEIWS;Lo;0;L;;;;;N;;;;; -10345;GOTHIC LETTER WINJA;Lo;0;L;;;;;N;;;;; -10346;GOTHIC LETTER FAIHU;Lo;0;L;;;;;N;;;;; -10347;GOTHIC LETTER IGGWS;Lo;0;L;;;;;N;;;;; -10348;GOTHIC LETTER HWAIR;Lo;0;L;;;;;N;;;;; -10349;GOTHIC LETTER OTHAL;Lo;0;L;;;;;N;;;;; -1034A;GOTHIC LETTER NINE HUNDRED;Nl;0;L;;;;900;N;;;;; -10380;UGARITIC LETTER ALPA;Lo;0;L;;;;;N;;;;; -10381;UGARITIC LETTER BETA;Lo;0;L;;;;;N;;;;; -10382;UGARITIC LETTER GAMLA;Lo;0;L;;;;;N;;;;; -10383;UGARITIC LETTER KHA;Lo;0;L;;;;;N;;;;; -10384;UGARITIC LETTER DELTA;Lo;0;L;;;;;N;;;;; -10385;UGARITIC LETTER HO;Lo;0;L;;;;;N;;;;; -10386;UGARITIC LETTER WO;Lo;0;L;;;;;N;;;;; -10387;UGARITIC LETTER ZETA;Lo;0;L;;;;;N;;;;; -10388;UGARITIC LETTER HOTA;Lo;0;L;;;;;N;;;;; -10389;UGARITIC LETTER TET;Lo;0;L;;;;;N;;;;; -1038A;UGARITIC LETTER YOD;Lo;0;L;;;;;N;;;;; -1038B;UGARITIC LETTER KAF;Lo;0;L;;;;;N;;;;; -1038C;UGARITIC LETTER SHIN;Lo;0;L;;;;;N;;;;; -1038D;UGARITIC LETTER LAMDA;Lo;0;L;;;;;N;;;;; -1038E;UGARITIC LETTER MEM;Lo;0;L;;;;;N;;;;; -1038F;UGARITIC LETTER DHAL;Lo;0;L;;;;;N;;;;; -10390;UGARITIC LETTER NUN;Lo;0;L;;;;;N;;;;; -10391;UGARITIC LETTER ZU;Lo;0;L;;;;;N;;;;; -10392;UGARITIC LETTER SAMKA;Lo;0;L;;;;;N;;;;; -10393;UGARITIC LETTER AIN;Lo;0;L;;;;;N;;;;; -10394;UGARITIC LETTER PU;Lo;0;L;;;;;N;;;;; -10395;UGARITIC LETTER SADE;Lo;0;L;;;;;N;;;;; -10396;UGARITIC LETTER QOPA;Lo;0;L;;;;;N;;;;; -10397;UGARITIC LETTER RASHA;Lo;0;L;;;;;N;;;;; -10398;UGARITIC LETTER THANNA;Lo;0;L;;;;;N;;;;; -10399;UGARITIC LETTER GHAIN;Lo;0;L;;;;;N;;;;; -1039A;UGARITIC LETTER TO;Lo;0;L;;;;;N;;;;; -1039B;UGARITIC LETTER I;Lo;0;L;;;;;N;;;;; -1039C;UGARITIC LETTER U;Lo;0;L;;;;;N;;;;; -1039D;UGARITIC LETTER SSU;Lo;0;L;;;;;N;;;;; -1039F;UGARITIC WORD DIVIDER;Po;0;L;;;;;N;;;;; -103A0;OLD PERSIAN SIGN A;Lo;0;L;;;;;N;;;;; -103A1;OLD PERSIAN SIGN I;Lo;0;L;;;;;N;;;;; -103A2;OLD PERSIAN SIGN U;Lo;0;L;;;;;N;;;;; -103A3;OLD PERSIAN SIGN KA;Lo;0;L;;;;;N;;;;; -103A4;OLD PERSIAN SIGN KU;Lo;0;L;;;;;N;;;;; -103A5;OLD PERSIAN SIGN GA;Lo;0;L;;;;;N;;;;; -103A6;OLD PERSIAN SIGN GU;Lo;0;L;;;;;N;;;;; -103A7;OLD PERSIAN SIGN XA;Lo;0;L;;;;;N;;;;; -103A8;OLD PERSIAN SIGN CA;Lo;0;L;;;;;N;;;;; -103A9;OLD PERSIAN SIGN JA;Lo;0;L;;;;;N;;;;; -103AA;OLD PERSIAN SIGN JI;Lo;0;L;;;;;N;;;;; -103AB;OLD PERSIAN SIGN TA;Lo;0;L;;;;;N;;;;; -103AC;OLD PERSIAN SIGN TU;Lo;0;L;;;;;N;;;;; -103AD;OLD PERSIAN SIGN DA;Lo;0;L;;;;;N;;;;; -103AE;OLD PERSIAN SIGN DI;Lo;0;L;;;;;N;;;;; -103AF;OLD PERSIAN SIGN DU;Lo;0;L;;;;;N;;;;; -103B0;OLD PERSIAN SIGN THA;Lo;0;L;;;;;N;;;;; -103B1;OLD PERSIAN SIGN PA;Lo;0;L;;;;;N;;;;; -103B2;OLD PERSIAN SIGN BA;Lo;0;L;;;;;N;;;;; -103B3;OLD PERSIAN SIGN FA;Lo;0;L;;;;;N;;;;; -103B4;OLD PERSIAN SIGN NA;Lo;0;L;;;;;N;;;;; -103B5;OLD PERSIAN SIGN NU;Lo;0;L;;;;;N;;;;; -103B6;OLD PERSIAN SIGN MA;Lo;0;L;;;;;N;;;;; -103B7;OLD PERSIAN SIGN MI;Lo;0;L;;;;;N;;;;; -103B8;OLD PERSIAN SIGN MU;Lo;0;L;;;;;N;;;;; -103B9;OLD PERSIAN SIGN YA;Lo;0;L;;;;;N;;;;; -103BA;OLD PERSIAN SIGN VA;Lo;0;L;;;;;N;;;;; -103BB;OLD PERSIAN SIGN VI;Lo;0;L;;;;;N;;;;; -103BC;OLD PERSIAN SIGN RA;Lo;0;L;;;;;N;;;;; -103BD;OLD PERSIAN SIGN RU;Lo;0;L;;;;;N;;;;; -103BE;OLD PERSIAN SIGN LA;Lo;0;L;;;;;N;;;;; -103BF;OLD PERSIAN SIGN SA;Lo;0;L;;;;;N;;;;; -103C0;OLD PERSIAN SIGN ZA;Lo;0;L;;;;;N;;;;; -103C1;OLD PERSIAN SIGN SHA;Lo;0;L;;;;;N;;;;; -103C2;OLD PERSIAN SIGN SSA;Lo;0;L;;;;;N;;;;; -103C3;OLD PERSIAN SIGN HA;Lo;0;L;;;;;N;;;;; -103C8;OLD PERSIAN SIGN AURAMAZDAA;Lo;0;L;;;;;N;;;;; -103C9;OLD PERSIAN SIGN AURAMAZDAA-2;Lo;0;L;;;;;N;;;;; -103CA;OLD PERSIAN SIGN AURAMAZDAAHA;Lo;0;L;;;;;N;;;;; -103CB;OLD PERSIAN SIGN XSHAAYATHIYA;Lo;0;L;;;;;N;;;;; -103CC;OLD PERSIAN SIGN DAHYAAUSH;Lo;0;L;;;;;N;;;;; -103CD;OLD PERSIAN SIGN DAHYAAUSH-2;Lo;0;L;;;;;N;;;;; -103CE;OLD PERSIAN SIGN BAGA;Lo;0;L;;;;;N;;;;; -103CF;OLD PERSIAN SIGN BUUMISH;Lo;0;L;;;;;N;;;;; -103D0;OLD PERSIAN WORD DIVIDER;Po;0;L;;;;;N;;;;; -103D1;OLD PERSIAN NUMBER ONE;Nl;0;L;;;;1;N;;;;; -103D2;OLD PERSIAN NUMBER TWO;Nl;0;L;;;;2;N;;;;; -103D3;OLD PERSIAN NUMBER TEN;Nl;0;L;;;;10;N;;;;; -103D4;OLD PERSIAN NUMBER TWENTY;Nl;0;L;;;;20;N;;;;; -103D5;OLD PERSIAN NUMBER HUNDRED;Nl;0;L;;;;100;N;;;;; -10400;DESERET CAPITAL LETTER LONG I;Lu;0;L;;;;;N;;;;10428; -10401;DESERET CAPITAL LETTER LONG E;Lu;0;L;;;;;N;;;;10429; -10402;DESERET CAPITAL LETTER LONG A;Lu;0;L;;;;;N;;;;1042A; -10403;DESERET CAPITAL LETTER LONG AH;Lu;0;L;;;;;N;;;;1042B; -10404;DESERET CAPITAL LETTER LONG O;Lu;0;L;;;;;N;;;;1042C; -10405;DESERET CAPITAL LETTER LONG OO;Lu;0;L;;;;;N;;;;1042D; -10406;DESERET CAPITAL LETTER SHORT I;Lu;0;L;;;;;N;;;;1042E; -10407;DESERET CAPITAL LETTER SHORT E;Lu;0;L;;;;;N;;;;1042F; -10408;DESERET CAPITAL LETTER SHORT A;Lu;0;L;;;;;N;;;;10430; -10409;DESERET CAPITAL LETTER SHORT AH;Lu;0;L;;;;;N;;;;10431; -1040A;DESERET CAPITAL LETTER SHORT O;Lu;0;L;;;;;N;;;;10432; -1040B;DESERET CAPITAL LETTER SHORT OO;Lu;0;L;;;;;N;;;;10433; -1040C;DESERET CAPITAL LETTER AY;Lu;0;L;;;;;N;;;;10434; -1040D;DESERET CAPITAL LETTER OW;Lu;0;L;;;;;N;;;;10435; -1040E;DESERET CAPITAL LETTER WU;Lu;0;L;;;;;N;;;;10436; -1040F;DESERET CAPITAL LETTER YEE;Lu;0;L;;;;;N;;;;10437; -10410;DESERET CAPITAL LETTER H;Lu;0;L;;;;;N;;;;10438; -10411;DESERET CAPITAL LETTER PEE;Lu;0;L;;;;;N;;;;10439; -10412;DESERET CAPITAL LETTER BEE;Lu;0;L;;;;;N;;;;1043A; -10413;DESERET CAPITAL LETTER TEE;Lu;0;L;;;;;N;;;;1043B; -10414;DESERET CAPITAL LETTER DEE;Lu;0;L;;;;;N;;;;1043C; -10415;DESERET CAPITAL LETTER CHEE;Lu;0;L;;;;;N;;;;1043D; -10416;DESERET CAPITAL LETTER JEE;Lu;0;L;;;;;N;;;;1043E; -10417;DESERET CAPITAL LETTER KAY;Lu;0;L;;;;;N;;;;1043F; -10418;DESERET CAPITAL LETTER GAY;Lu;0;L;;;;;N;;;;10440; -10419;DESERET CAPITAL LETTER EF;Lu;0;L;;;;;N;;;;10441; -1041A;DESERET CAPITAL LETTER VEE;Lu;0;L;;;;;N;;;;10442; -1041B;DESERET CAPITAL LETTER ETH;Lu;0;L;;;;;N;;;;10443; -1041C;DESERET CAPITAL LETTER THEE;Lu;0;L;;;;;N;;;;10444; -1041D;DESERET CAPITAL LETTER ES;Lu;0;L;;;;;N;;;;10445; -1041E;DESERET CAPITAL LETTER ZEE;Lu;0;L;;;;;N;;;;10446; -1041F;DESERET CAPITAL LETTER ESH;Lu;0;L;;;;;N;;;;10447; -10420;DESERET CAPITAL LETTER ZHEE;Lu;0;L;;;;;N;;;;10448; -10421;DESERET CAPITAL LETTER ER;Lu;0;L;;;;;N;;;;10449; -10422;DESERET CAPITAL LETTER EL;Lu;0;L;;;;;N;;;;1044A; -10423;DESERET CAPITAL LETTER EM;Lu;0;L;;;;;N;;;;1044B; -10424;DESERET CAPITAL LETTER EN;Lu;0;L;;;;;N;;;;1044C; -10425;DESERET CAPITAL LETTER ENG;Lu;0;L;;;;;N;;;;1044D; -10426;DESERET CAPITAL LETTER OI;Lu;0;L;;;;;N;;;;1044E; -10427;DESERET CAPITAL LETTER EW;Lu;0;L;;;;;N;;;;1044F; -10428;DESERET SMALL LETTER LONG I;Ll;0;L;;;;;N;;;10400;;10400 -10429;DESERET SMALL LETTER LONG E;Ll;0;L;;;;;N;;;10401;;10401 -1042A;DESERET SMALL LETTER LONG A;Ll;0;L;;;;;N;;;10402;;10402 -1042B;DESERET SMALL LETTER LONG AH;Ll;0;L;;;;;N;;;10403;;10403 -1042C;DESERET SMALL LETTER LONG O;Ll;0;L;;;;;N;;;10404;;10404 -1042D;DESERET SMALL LETTER LONG OO;Ll;0;L;;;;;N;;;10405;;10405 -1042E;DESERET SMALL LETTER SHORT I;Ll;0;L;;;;;N;;;10406;;10406 -1042F;DESERET SMALL LETTER SHORT E;Ll;0;L;;;;;N;;;10407;;10407 -10430;DESERET SMALL LETTER SHORT A;Ll;0;L;;;;;N;;;10408;;10408 -10431;DESERET SMALL LETTER SHORT AH;Ll;0;L;;;;;N;;;10409;;10409 -10432;DESERET SMALL LETTER SHORT O;Ll;0;L;;;;;N;;;1040A;;1040A -10433;DESERET SMALL LETTER SHORT OO;Ll;0;L;;;;;N;;;1040B;;1040B -10434;DESERET SMALL LETTER AY;Ll;0;L;;;;;N;;;1040C;;1040C -10435;DESERET SMALL LETTER OW;Ll;0;L;;;;;N;;;1040D;;1040D -10436;DESERET SMALL LETTER WU;Ll;0;L;;;;;N;;;1040E;;1040E -10437;DESERET SMALL LETTER YEE;Ll;0;L;;;;;N;;;1040F;;1040F -10438;DESERET SMALL LETTER H;Ll;0;L;;;;;N;;;10410;;10410 -10439;DESERET SMALL LETTER PEE;Ll;0;L;;;;;N;;;10411;;10411 -1043A;DESERET SMALL LETTER BEE;Ll;0;L;;;;;N;;;10412;;10412 -1043B;DESERET SMALL LETTER TEE;Ll;0;L;;;;;N;;;10413;;10413 -1043C;DESERET SMALL LETTER DEE;Ll;0;L;;;;;N;;;10414;;10414 -1043D;DESERET SMALL LETTER CHEE;Ll;0;L;;;;;N;;;10415;;10415 -1043E;DESERET SMALL LETTER JEE;Ll;0;L;;;;;N;;;10416;;10416 -1043F;DESERET SMALL LETTER KAY;Ll;0;L;;;;;N;;;10417;;10417 -10440;DESERET SMALL LETTER GAY;Ll;0;L;;;;;N;;;10418;;10418 -10441;DESERET SMALL LETTER EF;Ll;0;L;;;;;N;;;10419;;10419 -10442;DESERET SMALL LETTER VEE;Ll;0;L;;;;;N;;;1041A;;1041A -10443;DESERET SMALL LETTER ETH;Ll;0;L;;;;;N;;;1041B;;1041B -10444;DESERET SMALL LETTER THEE;Ll;0;L;;;;;N;;;1041C;;1041C -10445;DESERET SMALL LETTER ES;Ll;0;L;;;;;N;;;1041D;;1041D -10446;DESERET SMALL LETTER ZEE;Ll;0;L;;;;;N;;;1041E;;1041E -10447;DESERET SMALL LETTER ESH;Ll;0;L;;;;;N;;;1041F;;1041F -10448;DESERET SMALL LETTER ZHEE;Ll;0;L;;;;;N;;;10420;;10420 -10449;DESERET SMALL LETTER ER;Ll;0;L;;;;;N;;;10421;;10421 -1044A;DESERET SMALL LETTER EL;Ll;0;L;;;;;N;;;10422;;10422 -1044B;DESERET SMALL LETTER EM;Ll;0;L;;;;;N;;;10423;;10423 -1044C;DESERET SMALL LETTER EN;Ll;0;L;;;;;N;;;10424;;10424 -1044D;DESERET SMALL LETTER ENG;Ll;0;L;;;;;N;;;10425;;10425 -1044E;DESERET SMALL LETTER OI;Ll;0;L;;;;;N;;;10426;;10426 -1044F;DESERET SMALL LETTER EW;Ll;0;L;;;;;N;;;10427;;10427 -10450;SHAVIAN LETTER PEEP;Lo;0;L;;;;;N;;;;; -10451;SHAVIAN LETTER TOT;Lo;0;L;;;;;N;;;;; -10452;SHAVIAN LETTER KICK;Lo;0;L;;;;;N;;;;; -10453;SHAVIAN LETTER FEE;Lo;0;L;;;;;N;;;;; -10454;SHAVIAN LETTER THIGH;Lo;0;L;;;;;N;;;;; -10455;SHAVIAN LETTER SO;Lo;0;L;;;;;N;;;;; -10456;SHAVIAN LETTER SURE;Lo;0;L;;;;;N;;;;; -10457;SHAVIAN LETTER CHURCH;Lo;0;L;;;;;N;;;;; -10458;SHAVIAN LETTER YEA;Lo;0;L;;;;;N;;;;; -10459;SHAVIAN LETTER HUNG;Lo;0;L;;;;;N;;;;; -1045A;SHAVIAN LETTER BIB;Lo;0;L;;;;;N;;;;; -1045B;SHAVIAN LETTER DEAD;Lo;0;L;;;;;N;;;;; -1045C;SHAVIAN LETTER GAG;Lo;0;L;;;;;N;;;;; -1045D;SHAVIAN LETTER VOW;Lo;0;L;;;;;N;;;;; -1045E;SHAVIAN LETTER THEY;Lo;0;L;;;;;N;;;;; -1045F;SHAVIAN LETTER ZOO;Lo;0;L;;;;;N;;;;; -10460;SHAVIAN LETTER MEASURE;Lo;0;L;;;;;N;;;;; -10461;SHAVIAN LETTER JUDGE;Lo;0;L;;;;;N;;;;; -10462;SHAVIAN LETTER WOE;Lo;0;L;;;;;N;;;;; -10463;SHAVIAN LETTER HA-HA;Lo;0;L;;;;;N;;;;; -10464;SHAVIAN LETTER LOLL;Lo;0;L;;;;;N;;;;; -10465;SHAVIAN LETTER MIME;Lo;0;L;;;;;N;;;;; -10466;SHAVIAN LETTER IF;Lo;0;L;;;;;N;;;;; -10467;SHAVIAN LETTER EGG;Lo;0;L;;;;;N;;;;; -10468;SHAVIAN LETTER ASH;Lo;0;L;;;;;N;;;;; -10469;SHAVIAN LETTER ADO;Lo;0;L;;;;;N;;;;; -1046A;SHAVIAN LETTER ON;Lo;0;L;;;;;N;;;;; -1046B;SHAVIAN LETTER WOOL;Lo;0;L;;;;;N;;;;; -1046C;SHAVIAN LETTER OUT;Lo;0;L;;;;;N;;;;; -1046D;SHAVIAN LETTER AH;Lo;0;L;;;;;N;;;;; -1046E;SHAVIAN LETTER ROAR;Lo;0;L;;;;;N;;;;; -1046F;SHAVIAN LETTER NUN;Lo;0;L;;;;;N;;;;; -10470;SHAVIAN LETTER EAT;Lo;0;L;;;;;N;;;;; -10471;SHAVIAN LETTER AGE;Lo;0;L;;;;;N;;;;; -10472;SHAVIAN LETTER ICE;Lo;0;L;;;;;N;;;;; -10473;SHAVIAN LETTER UP;Lo;0;L;;;;;N;;;;; -10474;SHAVIAN LETTER OAK;Lo;0;L;;;;;N;;;;; -10475;SHAVIAN LETTER OOZE;Lo;0;L;;;;;N;;;;; -10476;SHAVIAN LETTER OIL;Lo;0;L;;;;;N;;;;; -10477;SHAVIAN LETTER AWE;Lo;0;L;;;;;N;;;;; -10478;SHAVIAN LETTER ARE;Lo;0;L;;;;;N;;;;; -10479;SHAVIAN LETTER OR;Lo;0;L;;;;;N;;;;; -1047A;SHAVIAN LETTER AIR;Lo;0;L;;;;;N;;;;; -1047B;SHAVIAN LETTER ERR;Lo;0;L;;;;;N;;;;; -1047C;SHAVIAN LETTER ARRAY;Lo;0;L;;;;;N;;;;; -1047D;SHAVIAN LETTER EAR;Lo;0;L;;;;;N;;;;; -1047E;SHAVIAN LETTER IAN;Lo;0;L;;;;;N;;;;; -1047F;SHAVIAN LETTER YEW;Lo;0;L;;;;;N;;;;; -10480;OSMANYA LETTER ALEF;Lo;0;L;;;;;N;;;;; -10481;OSMANYA LETTER BA;Lo;0;L;;;;;N;;;;; -10482;OSMANYA LETTER TA;Lo;0;L;;;;;N;;;;; -10483;OSMANYA LETTER JA;Lo;0;L;;;;;N;;;;; -10484;OSMANYA LETTER XA;Lo;0;L;;;;;N;;;;; -10485;OSMANYA LETTER KHA;Lo;0;L;;;;;N;;;;; -10486;OSMANYA LETTER DEEL;Lo;0;L;;;;;N;;;;; -10487;OSMANYA LETTER RA;Lo;0;L;;;;;N;;;;; -10488;OSMANYA LETTER SA;Lo;0;L;;;;;N;;;;; -10489;OSMANYA LETTER SHIIN;Lo;0;L;;;;;N;;;;; -1048A;OSMANYA LETTER DHA;Lo;0;L;;;;;N;;;;; -1048B;OSMANYA LETTER CAYN;Lo;0;L;;;;;N;;;;; -1048C;OSMANYA LETTER GA;Lo;0;L;;;;;N;;;;; -1048D;OSMANYA LETTER FA;Lo;0;L;;;;;N;;;;; -1048E;OSMANYA LETTER QAAF;Lo;0;L;;;;;N;;;;; -1048F;OSMANYA LETTER KAAF;Lo;0;L;;;;;N;;;;; -10490;OSMANYA LETTER LAAN;Lo;0;L;;;;;N;;;;; -10491;OSMANYA LETTER MIIN;Lo;0;L;;;;;N;;;;; -10492;OSMANYA LETTER NUUN;Lo;0;L;;;;;N;;;;; -10493;OSMANYA LETTER WAW;Lo;0;L;;;;;N;;;;; -10494;OSMANYA LETTER HA;Lo;0;L;;;;;N;;;;; -10495;OSMANYA LETTER YA;Lo;0;L;;;;;N;;;;; -10496;OSMANYA LETTER A;Lo;0;L;;;;;N;;;;; -10497;OSMANYA LETTER E;Lo;0;L;;;;;N;;;;; -10498;OSMANYA LETTER I;Lo;0;L;;;;;N;;;;; -10499;OSMANYA LETTER O;Lo;0;L;;;;;N;;;;; -1049A;OSMANYA LETTER U;Lo;0;L;;;;;N;;;;; -1049B;OSMANYA LETTER AA;Lo;0;L;;;;;N;;;;; -1049C;OSMANYA LETTER EE;Lo;0;L;;;;;N;;;;; -1049D;OSMANYA LETTER OO;Lo;0;L;;;;;N;;;;; -104A0;OSMANYA DIGIT ZERO;Nd;0;L;;0;0;0;N;;;;; -104A1;OSMANYA DIGIT ONE;Nd;0;L;;1;1;1;N;;;;; -104A2;OSMANYA DIGIT TWO;Nd;0;L;;2;2;2;N;;;;; -104A3;OSMANYA DIGIT THREE;Nd;0;L;;3;3;3;N;;;;; -104A4;OSMANYA DIGIT FOUR;Nd;0;L;;4;4;4;N;;;;; -104A5;OSMANYA DIGIT FIVE;Nd;0;L;;5;5;5;N;;;;; -104A6;OSMANYA DIGIT SIX;Nd;0;L;;6;6;6;N;;;;; -104A7;OSMANYA DIGIT SEVEN;Nd;0;L;;7;7;7;N;;;;; -104A8;OSMANYA DIGIT EIGHT;Nd;0;L;;8;8;8;N;;;;; -104A9;OSMANYA DIGIT NINE;Nd;0;L;;9;9;9;N;;;;; -10800;CYPRIOT SYLLABLE A;Lo;0;R;;;;;N;;;;; -10801;CYPRIOT SYLLABLE E;Lo;0;R;;;;;N;;;;; -10802;CYPRIOT SYLLABLE I;Lo;0;R;;;;;N;;;;; -10803;CYPRIOT SYLLABLE O;Lo;0;R;;;;;N;;;;; -10804;CYPRIOT SYLLABLE U;Lo;0;R;;;;;N;;;;; -10805;CYPRIOT SYLLABLE JA;Lo;0;R;;;;;N;;;;; -10808;CYPRIOT SYLLABLE JO;Lo;0;R;;;;;N;;;;; -1080A;CYPRIOT SYLLABLE KA;Lo;0;R;;;;;N;;;;; -1080B;CYPRIOT SYLLABLE KE;Lo;0;R;;;;;N;;;;; -1080C;CYPRIOT SYLLABLE KI;Lo;0;R;;;;;N;;;;; -1080D;CYPRIOT SYLLABLE KO;Lo;0;R;;;;;N;;;;; -1080E;CYPRIOT SYLLABLE KU;Lo;0;R;;;;;N;;;;; -1080F;CYPRIOT SYLLABLE LA;Lo;0;R;;;;;N;;;;; -10810;CYPRIOT SYLLABLE LE;Lo;0;R;;;;;N;;;;; -10811;CYPRIOT SYLLABLE LI;Lo;0;R;;;;;N;;;;; -10812;CYPRIOT SYLLABLE LO;Lo;0;R;;;;;N;;;;; -10813;CYPRIOT SYLLABLE LU;Lo;0;R;;;;;N;;;;; -10814;CYPRIOT SYLLABLE MA;Lo;0;R;;;;;N;;;;; -10815;CYPRIOT SYLLABLE ME;Lo;0;R;;;;;N;;;;; -10816;CYPRIOT SYLLABLE MI;Lo;0;R;;;;;N;;;;; -10817;CYPRIOT SYLLABLE MO;Lo;0;R;;;;;N;;;;; -10818;CYPRIOT SYLLABLE MU;Lo;0;R;;;;;N;;;;; -10819;CYPRIOT SYLLABLE NA;Lo;0;R;;;;;N;;;;; -1081A;CYPRIOT SYLLABLE NE;Lo;0;R;;;;;N;;;;; -1081B;CYPRIOT SYLLABLE NI;Lo;0;R;;;;;N;;;;; -1081C;CYPRIOT SYLLABLE NO;Lo;0;R;;;;;N;;;;; -1081D;CYPRIOT SYLLABLE NU;Lo;0;R;;;;;N;;;;; -1081E;CYPRIOT SYLLABLE PA;Lo;0;R;;;;;N;;;;; -1081F;CYPRIOT SYLLABLE PE;Lo;0;R;;;;;N;;;;; -10820;CYPRIOT SYLLABLE PI;Lo;0;R;;;;;N;;;;; -10821;CYPRIOT SYLLABLE PO;Lo;0;R;;;;;N;;;;; -10822;CYPRIOT SYLLABLE PU;Lo;0;R;;;;;N;;;;; -10823;CYPRIOT SYLLABLE RA;Lo;0;R;;;;;N;;;;; -10824;CYPRIOT SYLLABLE RE;Lo;0;R;;;;;N;;;;; -10825;CYPRIOT SYLLABLE RI;Lo;0;R;;;;;N;;;;; -10826;CYPRIOT SYLLABLE RO;Lo;0;R;;;;;N;;;;; -10827;CYPRIOT SYLLABLE RU;Lo;0;R;;;;;N;;;;; -10828;CYPRIOT SYLLABLE SA;Lo;0;R;;;;;N;;;;; -10829;CYPRIOT SYLLABLE SE;Lo;0;R;;;;;N;;;;; -1082A;CYPRIOT SYLLABLE SI;Lo;0;R;;;;;N;;;;; -1082B;CYPRIOT SYLLABLE SO;Lo;0;R;;;;;N;;;;; -1082C;CYPRIOT SYLLABLE SU;Lo;0;R;;;;;N;;;;; -1082D;CYPRIOT SYLLABLE TA;Lo;0;R;;;;;N;;;;; -1082E;CYPRIOT SYLLABLE TE;Lo;0;R;;;;;N;;;;; -1082F;CYPRIOT SYLLABLE TI;Lo;0;R;;;;;N;;;;; -10830;CYPRIOT SYLLABLE TO;Lo;0;R;;;;;N;;;;; -10831;CYPRIOT SYLLABLE TU;Lo;0;R;;;;;N;;;;; -10832;CYPRIOT SYLLABLE WA;Lo;0;R;;;;;N;;;;; -10833;CYPRIOT SYLLABLE WE;Lo;0;R;;;;;N;;;;; -10834;CYPRIOT SYLLABLE WI;Lo;0;R;;;;;N;;;;; -10835;CYPRIOT SYLLABLE WO;Lo;0;R;;;;;N;;;;; -10837;CYPRIOT SYLLABLE XA;Lo;0;R;;;;;N;;;;; -10838;CYPRIOT SYLLABLE XE;Lo;0;R;;;;;N;;;;; -1083C;CYPRIOT SYLLABLE ZA;Lo;0;R;;;;;N;;;;; -1083F;CYPRIOT SYLLABLE ZO;Lo;0;R;;;;;N;;;;; -10840;IMPERIAL ARAMAIC LETTER ALEPH;Lo;0;R;;;;;N;;;;; -10841;IMPERIAL ARAMAIC LETTER BETH;Lo;0;R;;;;;N;;;;; -10842;IMPERIAL ARAMAIC LETTER GIMEL;Lo;0;R;;;;;N;;;;; -10843;IMPERIAL ARAMAIC LETTER DALETH;Lo;0;R;;;;;N;;;;; -10844;IMPERIAL ARAMAIC LETTER HE;Lo;0;R;;;;;N;;;;; -10845;IMPERIAL ARAMAIC LETTER WAW;Lo;0;R;;;;;N;;;;; -10846;IMPERIAL ARAMAIC LETTER ZAYIN;Lo;0;R;;;;;N;;;;; -10847;IMPERIAL ARAMAIC LETTER HETH;Lo;0;R;;;;;N;;;;; -10848;IMPERIAL ARAMAIC LETTER TETH;Lo;0;R;;;;;N;;;;; -10849;IMPERIAL ARAMAIC LETTER YODH;Lo;0;R;;;;;N;;;;; -1084A;IMPERIAL ARAMAIC LETTER KAPH;Lo;0;R;;;;;N;;;;; -1084B;IMPERIAL ARAMAIC LETTER LAMEDH;Lo;0;R;;;;;N;;;;; -1084C;IMPERIAL ARAMAIC LETTER MEM;Lo;0;R;;;;;N;;;;; -1084D;IMPERIAL ARAMAIC LETTER NUN;Lo;0;R;;;;;N;;;;; -1084E;IMPERIAL ARAMAIC LETTER SAMEKH;Lo;0;R;;;;;N;;;;; -1084F;IMPERIAL ARAMAIC LETTER AYIN;Lo;0;R;;;;;N;;;;; -10850;IMPERIAL ARAMAIC LETTER PE;Lo;0;R;;;;;N;;;;; -10851;IMPERIAL ARAMAIC LETTER SADHE;Lo;0;R;;;;;N;;;;; -10852;IMPERIAL ARAMAIC LETTER QOPH;Lo;0;R;;;;;N;;;;; -10853;IMPERIAL ARAMAIC LETTER RESH;Lo;0;R;;;;;N;;;;; -10854;IMPERIAL ARAMAIC LETTER SHIN;Lo;0;R;;;;;N;;;;; -10855;IMPERIAL ARAMAIC LETTER TAW;Lo;0;R;;;;;N;;;;; -10857;IMPERIAL ARAMAIC SECTION SIGN;Po;0;R;;;;;N;;;;; -10858;IMPERIAL ARAMAIC NUMBER ONE;No;0;R;;;;1;N;;;;; -10859;IMPERIAL ARAMAIC NUMBER TWO;No;0;R;;;;2;N;;;;; -1085A;IMPERIAL ARAMAIC NUMBER THREE;No;0;R;;;;3;N;;;;; -1085B;IMPERIAL ARAMAIC NUMBER TEN;No;0;R;;;;10;N;;;;; -1085C;IMPERIAL ARAMAIC NUMBER TWENTY;No;0;R;;;;20;N;;;;; -1085D;IMPERIAL ARAMAIC NUMBER ONE HUNDRED;No;0;R;;;;100;N;;;;; -1085E;IMPERIAL ARAMAIC NUMBER ONE THOUSAND;No;0;R;;;;1000;N;;;;; -1085F;IMPERIAL ARAMAIC NUMBER TEN THOUSAND;No;0;R;;;;10000;N;;;;; -10900;PHOENICIAN LETTER ALF;Lo;0;R;;;;;N;;;;; -10901;PHOENICIAN LETTER BET;Lo;0;R;;;;;N;;;;; -10902;PHOENICIAN LETTER GAML;Lo;0;R;;;;;N;;;;; -10903;PHOENICIAN LETTER DELT;Lo;0;R;;;;;N;;;;; -10904;PHOENICIAN LETTER HE;Lo;0;R;;;;;N;;;;; -10905;PHOENICIAN LETTER WAU;Lo;0;R;;;;;N;;;;; -10906;PHOENICIAN LETTER ZAI;Lo;0;R;;;;;N;;;;; -10907;PHOENICIAN LETTER HET;Lo;0;R;;;;;N;;;;; -10908;PHOENICIAN LETTER TET;Lo;0;R;;;;;N;;;;; -10909;PHOENICIAN LETTER YOD;Lo;0;R;;;;;N;;;;; -1090A;PHOENICIAN LETTER KAF;Lo;0;R;;;;;N;;;;; -1090B;PHOENICIAN LETTER LAMD;Lo;0;R;;;;;N;;;;; -1090C;PHOENICIAN LETTER MEM;Lo;0;R;;;;;N;;;;; -1090D;PHOENICIAN LETTER NUN;Lo;0;R;;;;;N;;;;; -1090E;PHOENICIAN LETTER SEMK;Lo;0;R;;;;;N;;;;; -1090F;PHOENICIAN LETTER AIN;Lo;0;R;;;;;N;;;;; -10910;PHOENICIAN LETTER PE;Lo;0;R;;;;;N;;;;; -10911;PHOENICIAN LETTER SADE;Lo;0;R;;;;;N;;;;; -10912;PHOENICIAN LETTER QOF;Lo;0;R;;;;;N;;;;; -10913;PHOENICIAN LETTER ROSH;Lo;0;R;;;;;N;;;;; -10914;PHOENICIAN LETTER SHIN;Lo;0;R;;;;;N;;;;; -10915;PHOENICIAN LETTER TAU;Lo;0;R;;;;;N;;;;; -10916;PHOENICIAN NUMBER ONE;No;0;R;;;;1;N;;;;; -10917;PHOENICIAN NUMBER TEN;No;0;R;;;;10;N;;;;; -10918;PHOENICIAN NUMBER TWENTY;No;0;R;;;;20;N;;;;; -10919;PHOENICIAN NUMBER ONE HUNDRED;No;0;R;;;;100;N;;;;; -1091A;PHOENICIAN NUMBER TWO;No;0;R;;;;2;N;;;;; -1091B;PHOENICIAN NUMBER THREE;No;0;R;;;;3;N;;;;; -1091F;PHOENICIAN WORD SEPARATOR;Po;0;ON;;;;;N;;;;; -10920;LYDIAN LETTER A;Lo;0;R;;;;;N;;;;; -10921;LYDIAN LETTER B;Lo;0;R;;;;;N;;;;; -10922;LYDIAN LETTER G;Lo;0;R;;;;;N;;;;; -10923;LYDIAN LETTER D;Lo;0;R;;;;;N;;;;; -10924;LYDIAN LETTER E;Lo;0;R;;;;;N;;;;; -10925;LYDIAN LETTER V;Lo;0;R;;;;;N;;;;; -10926;LYDIAN LETTER I;Lo;0;R;;;;;N;;;;; -10927;LYDIAN LETTER Y;Lo;0;R;;;;;N;;;;; -10928;LYDIAN LETTER K;Lo;0;R;;;;;N;;;;; -10929;LYDIAN LETTER L;Lo;0;R;;;;;N;;;;; -1092A;LYDIAN LETTER M;Lo;0;R;;;;;N;;;;; -1092B;LYDIAN LETTER N;Lo;0;R;;;;;N;;;;; -1092C;LYDIAN LETTER O;Lo;0;R;;;;;N;;;;; -1092D;LYDIAN LETTER R;Lo;0;R;;;;;N;;;;; -1092E;LYDIAN LETTER SS;Lo;0;R;;;;;N;;;;; -1092F;LYDIAN LETTER T;Lo;0;R;;;;;N;;;;; -10930;LYDIAN LETTER U;Lo;0;R;;;;;N;;;;; -10931;LYDIAN LETTER F;Lo;0;R;;;;;N;;;;; -10932;LYDIAN LETTER Q;Lo;0;R;;;;;N;;;;; -10933;LYDIAN LETTER S;Lo;0;R;;;;;N;;;;; -10934;LYDIAN LETTER TT;Lo;0;R;;;;;N;;;;; -10935;LYDIAN LETTER AN;Lo;0;R;;;;;N;;;;; -10936;LYDIAN LETTER EN;Lo;0;R;;;;;N;;;;; -10937;LYDIAN LETTER LY;Lo;0;R;;;;;N;;;;; -10938;LYDIAN LETTER NN;Lo;0;R;;;;;N;;;;; -10939;LYDIAN LETTER C;Lo;0;R;;;;;N;;;;; -1093F;LYDIAN TRIANGULAR MARK;Po;0;R;;;;;N;;;;; -10A00;KHAROSHTHI LETTER A;Lo;0;R;;;;;N;;;;; -10A01;KHAROSHTHI VOWEL SIGN I;Mn;0;NSM;;;;;N;;;;; -10A02;KHAROSHTHI VOWEL SIGN U;Mn;0;NSM;;;;;N;;;;; -10A03;KHAROSHTHI VOWEL SIGN VOCALIC R;Mn;0;NSM;;;;;N;;;;; -10A05;KHAROSHTHI VOWEL SIGN E;Mn;0;NSM;;;;;N;;;;; -10A06;KHAROSHTHI VOWEL SIGN O;Mn;0;NSM;;;;;N;;;;; -10A0C;KHAROSHTHI VOWEL LENGTH MARK;Mn;0;NSM;;;;;N;;;;; -10A0D;KHAROSHTHI SIGN DOUBLE RING BELOW;Mn;220;NSM;;;;;N;;;;; -10A0E;KHAROSHTHI SIGN ANUSVARA;Mn;0;NSM;;;;;N;;;;; -10A0F;KHAROSHTHI SIGN VISARGA;Mn;230;NSM;;;;;N;;;;; -10A10;KHAROSHTHI LETTER KA;Lo;0;R;;;;;N;;;;; -10A11;KHAROSHTHI LETTER KHA;Lo;0;R;;;;;N;;;;; -10A12;KHAROSHTHI LETTER GA;Lo;0;R;;;;;N;;;;; -10A13;KHAROSHTHI LETTER GHA;Lo;0;R;;;;;N;;;;; -10A15;KHAROSHTHI LETTER CA;Lo;0;R;;;;;N;;;;; -10A16;KHAROSHTHI LETTER CHA;Lo;0;R;;;;;N;;;;; -10A17;KHAROSHTHI LETTER JA;Lo;0;R;;;;;N;;;;; -10A19;KHAROSHTHI LETTER NYA;Lo;0;R;;;;;N;;;;; -10A1A;KHAROSHTHI LETTER TTA;Lo;0;R;;;;;N;;;;; -10A1B;KHAROSHTHI LETTER TTHA;Lo;0;R;;;;;N;;;;; -10A1C;KHAROSHTHI LETTER DDA;Lo;0;R;;;;;N;;;;; -10A1D;KHAROSHTHI LETTER DDHA;Lo;0;R;;;;;N;;;;; -10A1E;KHAROSHTHI LETTER NNA;Lo;0;R;;;;;N;;;;; -10A1F;KHAROSHTHI LETTER TA;Lo;0;R;;;;;N;;;;; -10A20;KHAROSHTHI LETTER THA;Lo;0;R;;;;;N;;;;; -10A21;KHAROSHTHI LETTER DA;Lo;0;R;;;;;N;;;;; -10A22;KHAROSHTHI LETTER DHA;Lo;0;R;;;;;N;;;;; -10A23;KHAROSHTHI LETTER NA;Lo;0;R;;;;;N;;;;; -10A24;KHAROSHTHI LETTER PA;Lo;0;R;;;;;N;;;;; -10A25;KHAROSHTHI LETTER PHA;Lo;0;R;;;;;N;;;;; -10A26;KHAROSHTHI LETTER BA;Lo;0;R;;;;;N;;;;; -10A27;KHAROSHTHI LETTER BHA;Lo;0;R;;;;;N;;;;; -10A28;KHAROSHTHI LETTER MA;Lo;0;R;;;;;N;;;;; -10A29;KHAROSHTHI LETTER YA;Lo;0;R;;;;;N;;;;; -10A2A;KHAROSHTHI LETTER RA;Lo;0;R;;;;;N;;;;; -10A2B;KHAROSHTHI LETTER LA;Lo;0;R;;;;;N;;;;; -10A2C;KHAROSHTHI LETTER VA;Lo;0;R;;;;;N;;;;; -10A2D;KHAROSHTHI LETTER SHA;Lo;0;R;;;;;N;;;;; -10A2E;KHAROSHTHI LETTER SSA;Lo;0;R;;;;;N;;;;; -10A2F;KHAROSHTHI LETTER SA;Lo;0;R;;;;;N;;;;; -10A30;KHAROSHTHI LETTER ZA;Lo;0;R;;;;;N;;;;; -10A31;KHAROSHTHI LETTER HA;Lo;0;R;;;;;N;;;;; -10A32;KHAROSHTHI LETTER KKA;Lo;0;R;;;;;N;;;;; -10A33;KHAROSHTHI LETTER TTTHA;Lo;0;R;;;;;N;;;;; -10A38;KHAROSHTHI SIGN BAR ABOVE;Mn;230;NSM;;;;;N;;;;; -10A39;KHAROSHTHI SIGN CAUDA;Mn;1;NSM;;;;;N;;;;; -10A3A;KHAROSHTHI SIGN DOT BELOW;Mn;220;NSM;;;;;N;;;;; -10A3F;KHAROSHTHI VIRAMA;Mn;9;NSM;;;;;N;;;;; -10A40;KHAROSHTHI DIGIT ONE;No;0;R;;;1;1;N;;;;; -10A41;KHAROSHTHI DIGIT TWO;No;0;R;;;2;2;N;;;;; -10A42;KHAROSHTHI DIGIT THREE;No;0;R;;;3;3;N;;;;; -10A43;KHAROSHTHI DIGIT FOUR;No;0;R;;;4;4;N;;;;; -10A44;KHAROSHTHI NUMBER TEN;No;0;R;;;;10;N;;;;; -10A45;KHAROSHTHI NUMBER TWENTY;No;0;R;;;;20;N;;;;; -10A46;KHAROSHTHI NUMBER ONE HUNDRED;No;0;R;;;;100;N;;;;; -10A47;KHAROSHTHI NUMBER ONE THOUSAND;No;0;R;;;;1000;N;;;;; -10A50;KHAROSHTHI PUNCTUATION DOT;Po;0;R;;;;;N;;;;; -10A51;KHAROSHTHI PUNCTUATION SMALL CIRCLE;Po;0;R;;;;;N;;;;; -10A52;KHAROSHTHI PUNCTUATION CIRCLE;Po;0;R;;;;;N;;;;; -10A53;KHAROSHTHI PUNCTUATION CRESCENT BAR;Po;0;R;;;;;N;;;;; -10A54;KHAROSHTHI PUNCTUATION MANGALAM;Po;0;R;;;;;N;;;;; -10A55;KHAROSHTHI PUNCTUATION LOTUS;Po;0;R;;;;;N;;;;; -10A56;KHAROSHTHI PUNCTUATION DANDA;Po;0;R;;;;;N;;;;; -10A57;KHAROSHTHI PUNCTUATION DOUBLE DANDA;Po;0;R;;;;;N;;;;; -10A58;KHAROSHTHI PUNCTUATION LINES;Po;0;R;;;;;N;;;;; -10A60;OLD SOUTH ARABIAN LETTER HE;Lo;0;R;;;;;N;;;;; -10A61;OLD SOUTH ARABIAN LETTER LAMEDH;Lo;0;R;;;;;N;;;;; -10A62;OLD SOUTH ARABIAN LETTER HETH;Lo;0;R;;;;;N;;;;; -10A63;OLD SOUTH ARABIAN LETTER MEM;Lo;0;R;;;;;N;;;;; -10A64;OLD SOUTH ARABIAN LETTER QOPH;Lo;0;R;;;;;N;;;;; -10A65;OLD SOUTH ARABIAN LETTER WAW;Lo;0;R;;;;;N;;;;; -10A66;OLD SOUTH ARABIAN LETTER SHIN;Lo;0;R;;;;;N;;;;; -10A67;OLD SOUTH ARABIAN LETTER RESH;Lo;0;R;;;;;N;;;;; -10A68;OLD SOUTH ARABIAN LETTER BETH;Lo;0;R;;;;;N;;;;; -10A69;OLD SOUTH ARABIAN LETTER TAW;Lo;0;R;;;;;N;;;;; -10A6A;OLD SOUTH ARABIAN LETTER SAT;Lo;0;R;;;;;N;;;;; -10A6B;OLD SOUTH ARABIAN LETTER KAPH;Lo;0;R;;;;;N;;;;; -10A6C;OLD SOUTH ARABIAN LETTER NUN;Lo;0;R;;;;;N;;;;; -10A6D;OLD SOUTH ARABIAN LETTER KHETH;Lo;0;R;;;;;N;;;;; -10A6E;OLD SOUTH ARABIAN LETTER SADHE;Lo;0;R;;;;;N;;;;; -10A6F;OLD SOUTH ARABIAN LETTER SAMEKH;Lo;0;R;;;;;N;;;;; -10A70;OLD SOUTH ARABIAN LETTER FE;Lo;0;R;;;;;N;;;;; -10A71;OLD SOUTH ARABIAN LETTER ALEF;Lo;0;R;;;;;N;;;;; -10A72;OLD SOUTH ARABIAN LETTER AYN;Lo;0;R;;;;;N;;;;; -10A73;OLD SOUTH ARABIAN LETTER DHADHE;Lo;0;R;;;;;N;;;;; -10A74;OLD SOUTH ARABIAN LETTER GIMEL;Lo;0;R;;;;;N;;;;; -10A75;OLD SOUTH ARABIAN LETTER DALETH;Lo;0;R;;;;;N;;;;; -10A76;OLD SOUTH ARABIAN LETTER GHAYN;Lo;0;R;;;;;N;;;;; -10A77;OLD SOUTH ARABIAN LETTER TETH;Lo;0;R;;;;;N;;;;; -10A78;OLD SOUTH ARABIAN LETTER ZAYN;Lo;0;R;;;;;N;;;;; -10A79;OLD SOUTH ARABIAN LETTER DHALETH;Lo;0;R;;;;;N;;;;; -10A7A;OLD SOUTH ARABIAN LETTER YODH;Lo;0;R;;;;;N;;;;; -10A7B;OLD SOUTH ARABIAN LETTER THAW;Lo;0;R;;;;;N;;;;; -10A7C;OLD SOUTH ARABIAN LETTER THETH;Lo;0;R;;;;;N;;;;; -10A7D;OLD SOUTH ARABIAN NUMBER ONE;No;0;R;;;;1;N;;;;; -10A7E;OLD SOUTH ARABIAN NUMBER FIFTY;No;0;R;;;;50;N;;;;; -10A7F;OLD SOUTH ARABIAN NUMERIC INDICATOR;Po;0;R;;;;;N;;;;; -10B00;AVESTAN LETTER A;Lo;0;R;;;;;N;;;;; -10B01;AVESTAN LETTER AA;Lo;0;R;;;;;N;;;;; -10B02;AVESTAN LETTER AO;Lo;0;R;;;;;N;;;;; -10B03;AVESTAN LETTER AAO;Lo;0;R;;;;;N;;;;; -10B04;AVESTAN LETTER AN;Lo;0;R;;;;;N;;;;; -10B05;AVESTAN LETTER AAN;Lo;0;R;;;;;N;;;;; -10B06;AVESTAN LETTER AE;Lo;0;R;;;;;N;;;;; -10B07;AVESTAN LETTER AEE;Lo;0;R;;;;;N;;;;; -10B08;AVESTAN LETTER E;Lo;0;R;;;;;N;;;;; -10B09;AVESTAN LETTER EE;Lo;0;R;;;;;N;;;;; -10B0A;AVESTAN LETTER O;Lo;0;R;;;;;N;;;;; -10B0B;AVESTAN LETTER OO;Lo;0;R;;;;;N;;;;; -10B0C;AVESTAN LETTER I;Lo;0;R;;;;;N;;;;; -10B0D;AVESTAN LETTER II;Lo;0;R;;;;;N;;;;; -10B0E;AVESTAN LETTER U;Lo;0;R;;;;;N;;;;; -10B0F;AVESTAN LETTER UU;Lo;0;R;;;;;N;;;;; -10B10;AVESTAN LETTER KE;Lo;0;R;;;;;N;;;;; -10B11;AVESTAN LETTER XE;Lo;0;R;;;;;N;;;;; -10B12;AVESTAN LETTER XYE;Lo;0;R;;;;;N;;;;; -10B13;AVESTAN LETTER XVE;Lo;0;R;;;;;N;;;;; -10B14;AVESTAN LETTER GE;Lo;0;R;;;;;N;;;;; -10B15;AVESTAN LETTER GGE;Lo;0;R;;;;;N;;;;; -10B16;AVESTAN LETTER GHE;Lo;0;R;;;;;N;;;;; -10B17;AVESTAN LETTER CE;Lo;0;R;;;;;N;;;;; -10B18;AVESTAN LETTER JE;Lo;0;R;;;;;N;;;;; -10B19;AVESTAN LETTER TE;Lo;0;R;;;;;N;;;;; -10B1A;AVESTAN LETTER THE;Lo;0;R;;;;;N;;;;; -10B1B;AVESTAN LETTER DE;Lo;0;R;;;;;N;;;;; -10B1C;AVESTAN LETTER DHE;Lo;0;R;;;;;N;;;;; -10B1D;AVESTAN LETTER TTE;Lo;0;R;;;;;N;;;;; -10B1E;AVESTAN LETTER PE;Lo;0;R;;;;;N;;;;; -10B1F;AVESTAN LETTER FE;Lo;0;R;;;;;N;;;;; -10B20;AVESTAN LETTER BE;Lo;0;R;;;;;N;;;;; -10B21;AVESTAN LETTER BHE;Lo;0;R;;;;;N;;;;; -10B22;AVESTAN LETTER NGE;Lo;0;R;;;;;N;;;;; -10B23;AVESTAN LETTER NGYE;Lo;0;R;;;;;N;;;;; -10B24;AVESTAN LETTER NGVE;Lo;0;R;;;;;N;;;;; -10B25;AVESTAN LETTER NE;Lo;0;R;;;;;N;;;;; -10B26;AVESTAN LETTER NYE;Lo;0;R;;;;;N;;;;; -10B27;AVESTAN LETTER NNE;Lo;0;R;;;;;N;;;;; -10B28;AVESTAN LETTER ME;Lo;0;R;;;;;N;;;;; -10B29;AVESTAN LETTER HME;Lo;0;R;;;;;N;;;;; -10B2A;AVESTAN LETTER YYE;Lo;0;R;;;;;N;;;;; -10B2B;AVESTAN LETTER YE;Lo;0;R;;;;;N;;;;; -10B2C;AVESTAN LETTER VE;Lo;0;R;;;;;N;;;;; -10B2D;AVESTAN LETTER RE;Lo;0;R;;;;;N;;;;; -10B2E;AVESTAN LETTER LE;Lo;0;R;;;;;N;;;;; -10B2F;AVESTAN LETTER SE;Lo;0;R;;;;;N;;;;; -10B30;AVESTAN LETTER ZE;Lo;0;R;;;;;N;;;;; -10B31;AVESTAN LETTER SHE;Lo;0;R;;;;;N;;;;; -10B32;AVESTAN LETTER ZHE;Lo;0;R;;;;;N;;;;; -10B33;AVESTAN LETTER SHYE;Lo;0;R;;;;;N;;;;; -10B34;AVESTAN LETTER SSHE;Lo;0;R;;;;;N;;;;; -10B35;AVESTAN LETTER HE;Lo;0;R;;;;;N;;;;; -10B39;AVESTAN ABBREVIATION MARK;Po;0;ON;;;;;N;;;;; -10B3A;TINY TWO DOTS OVER ONE DOT PUNCTUATION;Po;0;ON;;;;;N;;;;; -10B3B;SMALL TWO DOTS OVER ONE DOT PUNCTUATION;Po;0;ON;;;;;N;;;;; -10B3C;LARGE TWO DOTS OVER ONE DOT PUNCTUATION;Po;0;ON;;;;;N;;;;; -10B3D;LARGE ONE DOT OVER TWO DOTS PUNCTUATION;Po;0;ON;;;;;N;;;;; -10B3E;LARGE TWO RINGS OVER ONE RING PUNCTUATION;Po;0;ON;;;;;N;;;;; -10B3F;LARGE ONE RING OVER TWO RINGS PUNCTUATION;Po;0;ON;;;;;N;;;;; -10B40;INSCRIPTIONAL PARTHIAN LETTER ALEPH;Lo;0;R;;;;;N;;;;; -10B41;INSCRIPTIONAL PARTHIAN LETTER BETH;Lo;0;R;;;;;N;;;;; -10B42;INSCRIPTIONAL PARTHIAN LETTER GIMEL;Lo;0;R;;;;;N;;;;; -10B43;INSCRIPTIONAL PARTHIAN LETTER DALETH;Lo;0;R;;;;;N;;;;; -10B44;INSCRIPTIONAL PARTHIAN LETTER HE;Lo;0;R;;;;;N;;;;; -10B45;INSCRIPTIONAL PARTHIAN LETTER WAW;Lo;0;R;;;;;N;;;;; -10B46;INSCRIPTIONAL PARTHIAN LETTER ZAYIN;Lo;0;R;;;;;N;;;;; -10B47;INSCRIPTIONAL PARTHIAN LETTER HETH;Lo;0;R;;;;;N;;;;; -10B48;INSCRIPTIONAL PARTHIAN LETTER TETH;Lo;0;R;;;;;N;;;;; -10B49;INSCRIPTIONAL PARTHIAN LETTER YODH;Lo;0;R;;;;;N;;;;; -10B4A;INSCRIPTIONAL PARTHIAN LETTER KAPH;Lo;0;R;;;;;N;;;;; -10B4B;INSCRIPTIONAL PARTHIAN LETTER LAMEDH;Lo;0;R;;;;;N;;;;; -10B4C;INSCRIPTIONAL PARTHIAN LETTER MEM;Lo;0;R;;;;;N;;;;; -10B4D;INSCRIPTIONAL PARTHIAN LETTER NUN;Lo;0;R;;;;;N;;;;; -10B4E;INSCRIPTIONAL PARTHIAN LETTER SAMEKH;Lo;0;R;;;;;N;;;;; -10B4F;INSCRIPTIONAL PARTHIAN LETTER AYIN;Lo;0;R;;;;;N;;;;; -10B50;INSCRIPTIONAL PARTHIAN LETTER PE;Lo;0;R;;;;;N;;;;; -10B51;INSCRIPTIONAL PARTHIAN LETTER SADHE;Lo;0;R;;;;;N;;;;; -10B52;INSCRIPTIONAL PARTHIAN LETTER QOPH;Lo;0;R;;;;;N;;;;; -10B53;INSCRIPTIONAL PARTHIAN LETTER RESH;Lo;0;R;;;;;N;;;;; -10B54;INSCRIPTIONAL PARTHIAN LETTER SHIN;Lo;0;R;;;;;N;;;;; -10B55;INSCRIPTIONAL PARTHIAN LETTER TAW;Lo;0;R;;;;;N;;;;; -10B58;INSCRIPTIONAL PARTHIAN NUMBER ONE;No;0;R;;;;1;N;;;;; -10B59;INSCRIPTIONAL PARTHIAN NUMBER TWO;No;0;R;;;;2;N;;;;; -10B5A;INSCRIPTIONAL PARTHIAN NUMBER THREE;No;0;R;;;;3;N;;;;; -10B5B;INSCRIPTIONAL PARTHIAN NUMBER FOUR;No;0;R;;;;4;N;;;;; -10B5C;INSCRIPTIONAL PARTHIAN NUMBER TEN;No;0;R;;;;10;N;;;;; -10B5D;INSCRIPTIONAL PARTHIAN NUMBER TWENTY;No;0;R;;;;20;N;;;;; -10B5E;INSCRIPTIONAL PARTHIAN NUMBER ONE HUNDRED;No;0;R;;;;100;N;;;;; -10B5F;INSCRIPTIONAL PARTHIAN NUMBER ONE THOUSAND;No;0;R;;;;1000;N;;;;; -10B60;INSCRIPTIONAL PAHLAVI LETTER ALEPH;Lo;0;R;;;;;N;;;;; -10B61;INSCRIPTIONAL PAHLAVI LETTER BETH;Lo;0;R;;;;;N;;;;; -10B62;INSCRIPTIONAL PAHLAVI LETTER GIMEL;Lo;0;R;;;;;N;;;;; -10B63;INSCRIPTIONAL PAHLAVI LETTER DALETH;Lo;0;R;;;;;N;;;;; -10B64;INSCRIPTIONAL PAHLAVI LETTER HE;Lo;0;R;;;;;N;;;;; -10B65;INSCRIPTIONAL PAHLAVI LETTER WAW-AYIN-RESH;Lo;0;R;;;;;N;;;;; -10B66;INSCRIPTIONAL PAHLAVI LETTER ZAYIN;Lo;0;R;;;;;N;;;;; -10B67;INSCRIPTIONAL PAHLAVI LETTER HETH;Lo;0;R;;;;;N;;;;; -10B68;INSCRIPTIONAL PAHLAVI LETTER TETH;Lo;0;R;;;;;N;;;;; -10B69;INSCRIPTIONAL PAHLAVI LETTER YODH;Lo;0;R;;;;;N;;;;; -10B6A;INSCRIPTIONAL PAHLAVI LETTER KAPH;Lo;0;R;;;;;N;;;;; -10B6B;INSCRIPTIONAL PAHLAVI LETTER LAMEDH;Lo;0;R;;;;;N;;;;; -10B6C;INSCRIPTIONAL PAHLAVI LETTER MEM-QOPH;Lo;0;R;;;;;N;;;;; -10B6D;INSCRIPTIONAL PAHLAVI LETTER NUN;Lo;0;R;;;;;N;;;;; -10B6E;INSCRIPTIONAL PAHLAVI LETTER SAMEKH;Lo;0;R;;;;;N;;;;; -10B6F;INSCRIPTIONAL PAHLAVI LETTER PE;Lo;0;R;;;;;N;;;;; -10B70;INSCRIPTIONAL PAHLAVI LETTER SADHE;Lo;0;R;;;;;N;;;;; -10B71;INSCRIPTIONAL PAHLAVI LETTER SHIN;Lo;0;R;;;;;N;;;;; -10B72;INSCRIPTIONAL PAHLAVI LETTER TAW;Lo;0;R;;;;;N;;;;; -10B78;INSCRIPTIONAL PAHLAVI NUMBER ONE;No;0;R;;;;1;N;;;;; -10B79;INSCRIPTIONAL PAHLAVI NUMBER TWO;No;0;R;;;;2;N;;;;; -10B7A;INSCRIPTIONAL PAHLAVI NUMBER THREE;No;0;R;;;;3;N;;;;; -10B7B;INSCRIPTIONAL PAHLAVI NUMBER FOUR;No;0;R;;;;4;N;;;;; -10B7C;INSCRIPTIONAL PAHLAVI NUMBER TEN;No;0;R;;;;10;N;;;;; -10B7D;INSCRIPTIONAL PAHLAVI NUMBER TWENTY;No;0;R;;;;20;N;;;;; -10B7E;INSCRIPTIONAL PAHLAVI NUMBER ONE HUNDRED;No;0;R;;;;100;N;;;;; -10B7F;INSCRIPTIONAL PAHLAVI NUMBER ONE THOUSAND;No;0;R;;;;1000;N;;;;; -10C00;OLD TURKIC LETTER ORKHON A;Lo;0;R;;;;;N;;;;; -10C01;OLD TURKIC LETTER YENISEI A;Lo;0;R;;;;;N;;;;; -10C02;OLD TURKIC LETTER YENISEI AE;Lo;0;R;;;;;N;;;;; -10C03;OLD TURKIC LETTER ORKHON I;Lo;0;R;;;;;N;;;;; -10C04;OLD TURKIC LETTER YENISEI I;Lo;0;R;;;;;N;;;;; -10C05;OLD TURKIC LETTER YENISEI E;Lo;0;R;;;;;N;;;;; -10C06;OLD TURKIC LETTER ORKHON O;Lo;0;R;;;;;N;;;;; -10C07;OLD TURKIC LETTER ORKHON OE;Lo;0;R;;;;;N;;;;; -10C08;OLD TURKIC LETTER YENISEI OE;Lo;0;R;;;;;N;;;;; -10C09;OLD TURKIC LETTER ORKHON AB;Lo;0;R;;;;;N;;;;; -10C0A;OLD TURKIC LETTER YENISEI AB;Lo;0;R;;;;;N;;;;; -10C0B;OLD TURKIC LETTER ORKHON AEB;Lo;0;R;;;;;N;;;;; -10C0C;OLD TURKIC LETTER YENISEI AEB;Lo;0;R;;;;;N;;;;; -10C0D;OLD TURKIC LETTER ORKHON AG;Lo;0;R;;;;;N;;;;; -10C0E;OLD TURKIC LETTER YENISEI AG;Lo;0;R;;;;;N;;;;; -10C0F;OLD TURKIC LETTER ORKHON AEG;Lo;0;R;;;;;N;;;;; -10C10;OLD TURKIC LETTER YENISEI AEG;Lo;0;R;;;;;N;;;;; -10C11;OLD TURKIC LETTER ORKHON AD;Lo;0;R;;;;;N;;;;; -10C12;OLD TURKIC LETTER YENISEI AD;Lo;0;R;;;;;N;;;;; -10C13;OLD TURKIC LETTER ORKHON AED;Lo;0;R;;;;;N;;;;; -10C14;OLD TURKIC LETTER ORKHON EZ;Lo;0;R;;;;;N;;;;; -10C15;OLD TURKIC LETTER YENISEI EZ;Lo;0;R;;;;;N;;;;; -10C16;OLD TURKIC LETTER ORKHON AY;Lo;0;R;;;;;N;;;;; -10C17;OLD TURKIC LETTER YENISEI AY;Lo;0;R;;;;;N;;;;; -10C18;OLD TURKIC LETTER ORKHON AEY;Lo;0;R;;;;;N;;;;; -10C19;OLD TURKIC LETTER YENISEI AEY;Lo;0;R;;;;;N;;;;; -10C1A;OLD TURKIC LETTER ORKHON AEK;Lo;0;R;;;;;N;;;;; -10C1B;OLD TURKIC LETTER YENISEI AEK;Lo;0;R;;;;;N;;;;; -10C1C;OLD TURKIC LETTER ORKHON OEK;Lo;0;R;;;;;N;;;;; -10C1D;OLD TURKIC LETTER YENISEI OEK;Lo;0;R;;;;;N;;;;; -10C1E;OLD TURKIC LETTER ORKHON AL;Lo;0;R;;;;;N;;;;; -10C1F;OLD TURKIC LETTER YENISEI AL;Lo;0;R;;;;;N;;;;; -10C20;OLD TURKIC LETTER ORKHON AEL;Lo;0;R;;;;;N;;;;; -10C21;OLD TURKIC LETTER ORKHON ELT;Lo;0;R;;;;;N;;;;; -10C22;OLD TURKIC LETTER ORKHON EM;Lo;0;R;;;;;N;;;;; -10C23;OLD TURKIC LETTER ORKHON AN;Lo;0;R;;;;;N;;;;; -10C24;OLD TURKIC LETTER ORKHON AEN;Lo;0;R;;;;;N;;;;; -10C25;OLD TURKIC LETTER YENISEI AEN;Lo;0;R;;;;;N;;;;; -10C26;OLD TURKIC LETTER ORKHON ENT;Lo;0;R;;;;;N;;;;; -10C27;OLD TURKIC LETTER YENISEI ENT;Lo;0;R;;;;;N;;;;; -10C28;OLD TURKIC LETTER ORKHON ENC;Lo;0;R;;;;;N;;;;; -10C29;OLD TURKIC LETTER YENISEI ENC;Lo;0;R;;;;;N;;;;; -10C2A;OLD TURKIC LETTER ORKHON ENY;Lo;0;R;;;;;N;;;;; -10C2B;OLD TURKIC LETTER YENISEI ENY;Lo;0;R;;;;;N;;;;; -10C2C;OLD TURKIC LETTER YENISEI ANG;Lo;0;R;;;;;N;;;;; -10C2D;OLD TURKIC LETTER ORKHON ENG;Lo;0;R;;;;;N;;;;; -10C2E;OLD TURKIC LETTER YENISEI AENG;Lo;0;R;;;;;N;;;;; -10C2F;OLD TURKIC LETTER ORKHON EP;Lo;0;R;;;;;N;;;;; -10C30;OLD TURKIC LETTER ORKHON OP;Lo;0;R;;;;;N;;;;; -10C31;OLD TURKIC LETTER ORKHON IC;Lo;0;R;;;;;N;;;;; -10C32;OLD TURKIC LETTER ORKHON EC;Lo;0;R;;;;;N;;;;; -10C33;OLD TURKIC LETTER YENISEI EC;Lo;0;R;;;;;N;;;;; -10C34;OLD TURKIC LETTER ORKHON AQ;Lo;0;R;;;;;N;;;;; -10C35;OLD TURKIC LETTER YENISEI AQ;Lo;0;R;;;;;N;;;;; -10C36;OLD TURKIC LETTER ORKHON IQ;Lo;0;R;;;;;N;;;;; -10C37;OLD TURKIC LETTER YENISEI IQ;Lo;0;R;;;;;N;;;;; -10C38;OLD TURKIC LETTER ORKHON OQ;Lo;0;R;;;;;N;;;;; -10C39;OLD TURKIC LETTER YENISEI OQ;Lo;0;R;;;;;N;;;;; -10C3A;OLD TURKIC LETTER ORKHON AR;Lo;0;R;;;;;N;;;;; -10C3B;OLD TURKIC LETTER YENISEI AR;Lo;0;R;;;;;N;;;;; -10C3C;OLD TURKIC LETTER ORKHON AER;Lo;0;R;;;;;N;;;;; -10C3D;OLD TURKIC LETTER ORKHON AS;Lo;0;R;;;;;N;;;;; -10C3E;OLD TURKIC LETTER ORKHON AES;Lo;0;R;;;;;N;;;;; -10C3F;OLD TURKIC LETTER ORKHON ASH;Lo;0;R;;;;;N;;;;; -10C40;OLD TURKIC LETTER YENISEI ASH;Lo;0;R;;;;;N;;;;; -10C41;OLD TURKIC LETTER ORKHON ESH;Lo;0;R;;;;;N;;;;; -10C42;OLD TURKIC LETTER YENISEI ESH;Lo;0;R;;;;;N;;;;; -10C43;OLD TURKIC LETTER ORKHON AT;Lo;0;R;;;;;N;;;;; -10C44;OLD TURKIC LETTER YENISEI AT;Lo;0;R;;;;;N;;;;; -10C45;OLD TURKIC LETTER ORKHON AET;Lo;0;R;;;;;N;;;;; -10C46;OLD TURKIC LETTER YENISEI AET;Lo;0;R;;;;;N;;;;; -10C47;OLD TURKIC LETTER ORKHON OT;Lo;0;R;;;;;N;;;;; -10C48;OLD TURKIC LETTER ORKHON BASH;Lo;0;R;;;;;N;;;;; -10E60;RUMI DIGIT ONE;No;0;AN;;;1;1;N;;;;; -10E61;RUMI DIGIT TWO;No;0;AN;;;2;2;N;;;;; -10E62;RUMI DIGIT THREE;No;0;AN;;;3;3;N;;;;; -10E63;RUMI DIGIT FOUR;No;0;AN;;;4;4;N;;;;; -10E64;RUMI DIGIT FIVE;No;0;AN;;;5;5;N;;;;; -10E65;RUMI DIGIT SIX;No;0;AN;;;6;6;N;;;;; -10E66;RUMI DIGIT SEVEN;No;0;AN;;;7;7;N;;;;; -10E67;RUMI DIGIT EIGHT;No;0;AN;;;8;8;N;;;;; -10E68;RUMI DIGIT NINE;No;0;AN;;;9;9;N;;;;; -10E69;RUMI NUMBER TEN;No;0;AN;;;;10;N;;;;; -10E6A;RUMI NUMBER TWENTY;No;0;AN;;;;20;N;;;;; -10E6B;RUMI NUMBER THIRTY;No;0;AN;;;;30;N;;;;; -10E6C;RUMI NUMBER FORTY;No;0;AN;;;;40;N;;;;; -10E6D;RUMI NUMBER FIFTY;No;0;AN;;;;50;N;;;;; -10E6E;RUMI NUMBER SIXTY;No;0;AN;;;;60;N;;;;; -10E6F;RUMI NUMBER SEVENTY;No;0;AN;;;;70;N;;;;; -10E70;RUMI NUMBER EIGHTY;No;0;AN;;;;80;N;;;;; -10E71;RUMI NUMBER NINETY;No;0;AN;;;;90;N;;;;; -10E72;RUMI NUMBER ONE HUNDRED;No;0;AN;;;;100;N;;;;; -10E73;RUMI NUMBER TWO HUNDRED;No;0;AN;;;;200;N;;;;; -10E74;RUMI NUMBER THREE HUNDRED;No;0;AN;;;;300;N;;;;; -10E75;RUMI NUMBER FOUR HUNDRED;No;0;AN;;;;400;N;;;;; -10E76;RUMI NUMBER FIVE HUNDRED;No;0;AN;;;;500;N;;;;; -10E77;RUMI NUMBER SIX HUNDRED;No;0;AN;;;;600;N;;;;; -10E78;RUMI NUMBER SEVEN HUNDRED;No;0;AN;;;;700;N;;;;; -10E79;RUMI NUMBER EIGHT HUNDRED;No;0;AN;;;;800;N;;;;; -10E7A;RUMI NUMBER NINE HUNDRED;No;0;AN;;;;900;N;;;;; -10E7B;RUMI FRACTION ONE HALF;No;0;AN;;;;1/2;N;;;;; -10E7C;RUMI FRACTION ONE QUARTER;No;0;AN;;;;1/4;N;;;;; -10E7D;RUMI FRACTION ONE THIRD;No;0;AN;;;;1/3;N;;;;; -10E7E;RUMI FRACTION TWO THIRDS;No;0;AN;;;;2/3;N;;;;; -11000;BRAHMI SIGN CANDRABINDU;Mc;0;L;;;;;N;;;;; -11001;BRAHMI SIGN ANUSVARA;Mn;0;NSM;;;;;N;;;;; -11002;BRAHMI SIGN VISARGA;Mc;0;L;;;;;N;;;;; -11003;BRAHMI SIGN JIHVAMULIYA;Lo;0;L;;;;;N;;;;; -11004;BRAHMI SIGN UPADHMANIYA;Lo;0;L;;;;;N;;;;; -11005;BRAHMI LETTER A;Lo;0;L;;;;;N;;;;; -11006;BRAHMI LETTER AA;Lo;0;L;;;;;N;;;;; -11007;BRAHMI LETTER I;Lo;0;L;;;;;N;;;;; -11008;BRAHMI LETTER II;Lo;0;L;;;;;N;;;;; -11009;BRAHMI LETTER U;Lo;0;L;;;;;N;;;;; -1100A;BRAHMI LETTER UU;Lo;0;L;;;;;N;;;;; -1100B;BRAHMI LETTER VOCALIC R;Lo;0;L;;;;;N;;;;; -1100C;BRAHMI LETTER VOCALIC RR;Lo;0;L;;;;;N;;;;; -1100D;BRAHMI LETTER VOCALIC L;Lo;0;L;;;;;N;;;;; -1100E;BRAHMI LETTER VOCALIC LL;Lo;0;L;;;;;N;;;;; -1100F;BRAHMI LETTER E;Lo;0;L;;;;;N;;;;; -11010;BRAHMI LETTER AI;Lo;0;L;;;;;N;;;;; -11011;BRAHMI LETTER O;Lo;0;L;;;;;N;;;;; -11012;BRAHMI LETTER AU;Lo;0;L;;;;;N;;;;; -11013;BRAHMI LETTER KA;Lo;0;L;;;;;N;;;;; -11014;BRAHMI LETTER KHA;Lo;0;L;;;;;N;;;;; -11015;BRAHMI LETTER GA;Lo;0;L;;;;;N;;;;; -11016;BRAHMI LETTER GHA;Lo;0;L;;;;;N;;;;; -11017;BRAHMI LETTER NGA;Lo;0;L;;;;;N;;;;; -11018;BRAHMI LETTER CA;Lo;0;L;;;;;N;;;;; -11019;BRAHMI LETTER CHA;Lo;0;L;;;;;N;;;;; -1101A;BRAHMI LETTER JA;Lo;0;L;;;;;N;;;;; -1101B;BRAHMI LETTER JHA;Lo;0;L;;;;;N;;;;; -1101C;BRAHMI LETTER NYA;Lo;0;L;;;;;N;;;;; -1101D;BRAHMI LETTER TTA;Lo;0;L;;;;;N;;;;; -1101E;BRAHMI LETTER TTHA;Lo;0;L;;;;;N;;;;; -1101F;BRAHMI LETTER DDA;Lo;0;L;;;;;N;;;;; -11020;BRAHMI LETTER DDHA;Lo;0;L;;;;;N;;;;; -11021;BRAHMI LETTER NNA;Lo;0;L;;;;;N;;;;; -11022;BRAHMI LETTER TA;Lo;0;L;;;;;N;;;;; -11023;BRAHMI LETTER THA;Lo;0;L;;;;;N;;;;; -11024;BRAHMI LETTER DA;Lo;0;L;;;;;N;;;;; -11025;BRAHMI LETTER DHA;Lo;0;L;;;;;N;;;;; -11026;BRAHMI LETTER NA;Lo;0;L;;;;;N;;;;; -11027;BRAHMI LETTER PA;Lo;0;L;;;;;N;;;;; -11028;BRAHMI LETTER PHA;Lo;0;L;;;;;N;;;;; -11029;BRAHMI LETTER BA;Lo;0;L;;;;;N;;;;; -1102A;BRAHMI LETTER BHA;Lo;0;L;;;;;N;;;;; -1102B;BRAHMI LETTER MA;Lo;0;L;;;;;N;;;;; -1102C;BRAHMI LETTER YA;Lo;0;L;;;;;N;;;;; -1102D;BRAHMI LETTER RA;Lo;0;L;;;;;N;;;;; -1102E;BRAHMI LETTER LA;Lo;0;L;;;;;N;;;;; -1102F;BRAHMI LETTER VA;Lo;0;L;;;;;N;;;;; -11030;BRAHMI LETTER SHA;Lo;0;L;;;;;N;;;;; -11031;BRAHMI LETTER SSA;Lo;0;L;;;;;N;;;;; -11032;BRAHMI LETTER SA;Lo;0;L;;;;;N;;;;; -11033;BRAHMI LETTER HA;Lo;0;L;;;;;N;;;;; -11034;BRAHMI LETTER LLA;Lo;0;L;;;;;N;;;;; -11035;BRAHMI LETTER OLD TAMIL LLLA;Lo;0;L;;;;;N;;;;; -11036;BRAHMI LETTER OLD TAMIL RRA;Lo;0;L;;;;;N;;;;; -11037;BRAHMI LETTER OLD TAMIL NNNA;Lo;0;L;;;;;N;;;;; -11038;BRAHMI VOWEL SIGN AA;Mn;0;NSM;;;;;N;;;;; -11039;BRAHMI VOWEL SIGN BHATTIPROLU AA;Mn;0;NSM;;;;;N;;;;; -1103A;BRAHMI VOWEL SIGN I;Mn;0;NSM;;;;;N;;;;; -1103B;BRAHMI VOWEL SIGN II;Mn;0;NSM;;;;;N;;;;; -1103C;BRAHMI VOWEL SIGN U;Mn;0;NSM;;;;;N;;;;; -1103D;BRAHMI VOWEL SIGN UU;Mn;0;NSM;;;;;N;;;;; -1103E;BRAHMI VOWEL SIGN VOCALIC R;Mn;0;NSM;;;;;N;;;;; -1103F;BRAHMI VOWEL SIGN VOCALIC RR;Mn;0;NSM;;;;;N;;;;; -11040;BRAHMI VOWEL SIGN VOCALIC L;Mn;0;NSM;;;;;N;;;;; -11041;BRAHMI VOWEL SIGN VOCALIC LL;Mn;0;NSM;;;;;N;;;;; -11042;BRAHMI VOWEL SIGN E;Mn;0;NSM;;;;;N;;;;; -11043;BRAHMI VOWEL SIGN AI;Mn;0;NSM;;;;;N;;;;; -11044;BRAHMI VOWEL SIGN O;Mn;0;NSM;;;;;N;;;;; -11045;BRAHMI VOWEL SIGN AU;Mn;0;NSM;;;;;N;;;;; -11046;BRAHMI VIRAMA;Mn;9;NSM;;;;;N;;;;; -11047;BRAHMI DANDA;Po;0;L;;;;;N;;;;; -11048;BRAHMI DOUBLE DANDA;Po;0;L;;;;;N;;;;; -11049;BRAHMI PUNCTUATION DOT;Po;0;L;;;;;N;;;;; -1104A;BRAHMI PUNCTUATION DOUBLE DOT;Po;0;L;;;;;N;;;;; -1104B;BRAHMI PUNCTUATION LINE;Po;0;L;;;;;N;;;;; -1104C;BRAHMI PUNCTUATION CRESCENT BAR;Po;0;L;;;;;N;;;;; -1104D;BRAHMI PUNCTUATION LOTUS;Po;0;L;;;;;N;;;;; -11052;BRAHMI NUMBER ONE;No;0;ON;;;1;1;N;;;;; -11053;BRAHMI NUMBER TWO;No;0;ON;;;2;2;N;;;;; -11054;BRAHMI NUMBER THREE;No;0;ON;;;3;3;N;;;;; -11055;BRAHMI NUMBER FOUR;No;0;ON;;;4;4;N;;;;; -11056;BRAHMI NUMBER FIVE;No;0;ON;;;5;5;N;;;;; -11057;BRAHMI NUMBER SIX;No;0;ON;;;6;6;N;;;;; -11058;BRAHMI NUMBER SEVEN;No;0;ON;;;7;7;N;;;;; -11059;BRAHMI NUMBER EIGHT;No;0;ON;;;8;8;N;;;;; -1105A;BRAHMI NUMBER NINE;No;0;ON;;;9;9;N;;;;; -1105B;BRAHMI NUMBER TEN;No;0;ON;;;;10;N;;;;; -1105C;BRAHMI NUMBER TWENTY;No;0;ON;;;;20;N;;;;; -1105D;BRAHMI NUMBER THIRTY;No;0;ON;;;;30;N;;;;; -1105E;BRAHMI NUMBER FORTY;No;0;ON;;;;40;N;;;;; -1105F;BRAHMI NUMBER FIFTY;No;0;ON;;;;50;N;;;;; -11060;BRAHMI NUMBER SIXTY;No;0;ON;;;;60;N;;;;; -11061;BRAHMI NUMBER SEVENTY;No;0;ON;;;;70;N;;;;; -11062;BRAHMI NUMBER EIGHTY;No;0;ON;;;;80;N;;;;; -11063;BRAHMI NUMBER NINETY;No;0;ON;;;;90;N;;;;; -11064;BRAHMI NUMBER ONE HUNDRED;No;0;ON;;;;100;N;;;;; -11065;BRAHMI NUMBER ONE THOUSAND;No;0;ON;;;;1000;N;;;;; -11066;BRAHMI DIGIT ZERO;Nd;0;L;;0;0;0;N;;;;; -11067;BRAHMI DIGIT ONE;Nd;0;L;;1;1;1;N;;;;; -11068;BRAHMI DIGIT TWO;Nd;0;L;;2;2;2;N;;;;; -11069;BRAHMI DIGIT THREE;Nd;0;L;;3;3;3;N;;;;; -1106A;BRAHMI DIGIT FOUR;Nd;0;L;;4;4;4;N;;;;; -1106B;BRAHMI DIGIT FIVE;Nd;0;L;;5;5;5;N;;;;; -1106C;BRAHMI DIGIT SIX;Nd;0;L;;6;6;6;N;;;;; -1106D;BRAHMI DIGIT SEVEN;Nd;0;L;;7;7;7;N;;;;; -1106E;BRAHMI DIGIT EIGHT;Nd;0;L;;8;8;8;N;;;;; -1106F;BRAHMI DIGIT NINE;Nd;0;L;;9;9;9;N;;;;; -11080;KAITHI SIGN CANDRABINDU;Mn;0;NSM;;;;;N;;;;; -11081;KAITHI SIGN ANUSVARA;Mn;0;NSM;;;;;N;;;;; -11082;KAITHI SIGN VISARGA;Mc;0;L;;;;;N;;;;; -11083;KAITHI LETTER A;Lo;0;L;;;;;N;;;;; -11084;KAITHI LETTER AA;Lo;0;L;;;;;N;;;;; -11085;KAITHI LETTER I;Lo;0;L;;;;;N;;;;; -11086;KAITHI LETTER II;Lo;0;L;;;;;N;;;;; -11087;KAITHI LETTER U;Lo;0;L;;;;;N;;;;; -11088;KAITHI LETTER UU;Lo;0;L;;;;;N;;;;; -11089;KAITHI LETTER E;Lo;0;L;;;;;N;;;;; -1108A;KAITHI LETTER AI;Lo;0;L;;;;;N;;;;; -1108B;KAITHI LETTER O;Lo;0;L;;;;;N;;;;; -1108C;KAITHI LETTER AU;Lo;0;L;;;;;N;;;;; -1108D;KAITHI LETTER KA;Lo;0;L;;;;;N;;;;; -1108E;KAITHI LETTER KHA;Lo;0;L;;;;;N;;;;; -1108F;KAITHI LETTER GA;Lo;0;L;;;;;N;;;;; -11090;KAITHI LETTER GHA;Lo;0;L;;;;;N;;;;; -11091;KAITHI LETTER NGA;Lo;0;L;;;;;N;;;;; -11092;KAITHI LETTER CA;Lo;0;L;;;;;N;;;;; -11093;KAITHI LETTER CHA;Lo;0;L;;;;;N;;;;; -11094;KAITHI LETTER JA;Lo;0;L;;;;;N;;;;; -11095;KAITHI LETTER JHA;Lo;0;L;;;;;N;;;;; -11096;KAITHI LETTER NYA;Lo;0;L;;;;;N;;;;; -11097;KAITHI LETTER TTA;Lo;0;L;;;;;N;;;;; -11098;KAITHI LETTER TTHA;Lo;0;L;;;;;N;;;;; -11099;KAITHI LETTER DDA;Lo;0;L;;;;;N;;;;; -1109A;KAITHI LETTER DDDHA;Lo;0;L;11099 110BA;;;;N;;;;; -1109B;KAITHI LETTER DDHA;Lo;0;L;;;;;N;;;;; -1109C;KAITHI LETTER RHA;Lo;0;L;1109B 110BA;;;;N;;;;; -1109D;KAITHI LETTER NNA;Lo;0;L;;;;;N;;;;; -1109E;KAITHI LETTER TA;Lo;0;L;;;;;N;;;;; -1109F;KAITHI LETTER THA;Lo;0;L;;;;;N;;;;; -110A0;KAITHI LETTER DA;Lo;0;L;;;;;N;;;;; -110A1;KAITHI LETTER DHA;Lo;0;L;;;;;N;;;;; -110A2;KAITHI LETTER NA;Lo;0;L;;;;;N;;;;; -110A3;KAITHI LETTER PA;Lo;0;L;;;;;N;;;;; -110A4;KAITHI LETTER PHA;Lo;0;L;;;;;N;;;;; -110A5;KAITHI LETTER BA;Lo;0;L;;;;;N;;;;; -110A6;KAITHI LETTER BHA;Lo;0;L;;;;;N;;;;; -110A7;KAITHI LETTER MA;Lo;0;L;;;;;N;;;;; -110A8;KAITHI LETTER YA;Lo;0;L;;;;;N;;;;; -110A9;KAITHI LETTER RA;Lo;0;L;;;;;N;;;;; -110AA;KAITHI LETTER LA;Lo;0;L;;;;;N;;;;; -110AB;KAITHI LETTER VA;Lo;0;L;110A5 110BA;;;;N;;;;; -110AC;KAITHI LETTER SHA;Lo;0;L;;;;;N;;;;; -110AD;KAITHI LETTER SSA;Lo;0;L;;;;;N;;;;; -110AE;KAITHI LETTER SA;Lo;0;L;;;;;N;;;;; -110AF;KAITHI LETTER HA;Lo;0;L;;;;;N;;;;; -110B0;KAITHI VOWEL SIGN AA;Mc;0;L;;;;;N;;;;; -110B1;KAITHI VOWEL SIGN I;Mc;0;L;;;;;N;;;;; -110B2;KAITHI VOWEL SIGN II;Mc;0;L;;;;;N;;;;; -110B3;KAITHI VOWEL SIGN U;Mn;0;NSM;;;;;N;;;;; -110B4;KAITHI VOWEL SIGN UU;Mn;0;NSM;;;;;N;;;;; -110B5;KAITHI VOWEL SIGN E;Mn;0;NSM;;;;;N;;;;; -110B6;KAITHI VOWEL SIGN AI;Mn;0;NSM;;;;;N;;;;; -110B7;KAITHI VOWEL SIGN O;Mc;0;L;;;;;N;;;;; -110B8;KAITHI VOWEL SIGN AU;Mc;0;L;;;;;N;;;;; -110B9;KAITHI SIGN VIRAMA;Mn;9;NSM;;;;;N;;;;; -110BA;KAITHI SIGN NUKTA;Mn;7;NSM;;;;;N;;;;; -110BB;KAITHI ABBREVIATION SIGN;Po;0;L;;;;;N;;;;; -110BC;KAITHI ENUMERATION SIGN;Po;0;L;;;;;N;;;;; -110BD;KAITHI NUMBER SIGN;Cf;0;L;;;;;N;;;;; -110BE;KAITHI SECTION MARK;Po;0;L;;;;;N;;;;; -110BF;KAITHI DOUBLE SECTION MARK;Po;0;L;;;;;N;;;;; -110C0;KAITHI DANDA;Po;0;L;;;;;N;;;;; -110C1;KAITHI DOUBLE DANDA;Po;0;L;;;;;N;;;;; -12000;CUNEIFORM SIGN A;Lo;0;L;;;;;N;;;;; -12001;CUNEIFORM SIGN A TIMES A;Lo;0;L;;;;;N;;;;; -12002;CUNEIFORM SIGN A TIMES BAD;Lo;0;L;;;;;N;;;;; -12003;CUNEIFORM SIGN A TIMES GAN2 TENU;Lo;0;L;;;;;N;;;;; -12004;CUNEIFORM SIGN A TIMES HA;Lo;0;L;;;;;N;;;;; -12005;CUNEIFORM SIGN A TIMES IGI;Lo;0;L;;;;;N;;;;; -12006;CUNEIFORM SIGN A TIMES LAGAR GUNU;Lo;0;L;;;;;N;;;;; -12007;CUNEIFORM SIGN A TIMES MUSH;Lo;0;L;;;;;N;;;;; -12008;CUNEIFORM SIGN A TIMES SAG;Lo;0;L;;;;;N;;;;; -12009;CUNEIFORM SIGN A2;Lo;0;L;;;;;N;;;;; -1200A;CUNEIFORM SIGN AB;Lo;0;L;;;;;N;;;;; -1200B;CUNEIFORM SIGN AB TIMES ASH2;Lo;0;L;;;;;N;;;;; -1200C;CUNEIFORM SIGN AB TIMES DUN3 GUNU;Lo;0;L;;;;;N;;;;; -1200D;CUNEIFORM SIGN AB TIMES GAL;Lo;0;L;;;;;N;;;;; -1200E;CUNEIFORM SIGN AB TIMES GAN2 TENU;Lo;0;L;;;;;N;;;;; -1200F;CUNEIFORM SIGN AB TIMES HA;Lo;0;L;;;;;N;;;;; -12010;CUNEIFORM SIGN AB TIMES IGI GUNU;Lo;0;L;;;;;N;;;;; -12011;CUNEIFORM SIGN AB TIMES IMIN;Lo;0;L;;;;;N;;;;; -12012;CUNEIFORM SIGN AB TIMES LAGAB;Lo;0;L;;;;;N;;;;; -12013;CUNEIFORM SIGN AB TIMES SHESH;Lo;0;L;;;;;N;;;;; -12014;CUNEIFORM SIGN AB TIMES U PLUS U PLUS U;Lo;0;L;;;;;N;;;;; -12015;CUNEIFORM SIGN AB GUNU;Lo;0;L;;;;;N;;;;; -12016;CUNEIFORM SIGN AB2;Lo;0;L;;;;;N;;;;; -12017;CUNEIFORM SIGN AB2 TIMES BALAG;Lo;0;L;;;;;N;;;;; -12018;CUNEIFORM SIGN AB2 TIMES GAN2 TENU;Lo;0;L;;;;;N;;;;; -12019;CUNEIFORM SIGN AB2 TIMES ME PLUS EN;Lo;0;L;;;;;N;;;;; -1201A;CUNEIFORM SIGN AB2 TIMES SHA3;Lo;0;L;;;;;N;;;;; -1201B;CUNEIFORM SIGN AB2 TIMES TAK4;Lo;0;L;;;;;N;;;;; -1201C;CUNEIFORM SIGN AD;Lo;0;L;;;;;N;;;;; -1201D;CUNEIFORM SIGN AK;Lo;0;L;;;;;N;;;;; -1201E;CUNEIFORM SIGN AK TIMES ERIN2;Lo;0;L;;;;;N;;;;; -1201F;CUNEIFORM SIGN AK TIMES SHITA PLUS GISH;Lo;0;L;;;;;N;;;;; -12020;CUNEIFORM SIGN AL;Lo;0;L;;;;;N;;;;; -12021;CUNEIFORM SIGN AL TIMES AL;Lo;0;L;;;;;N;;;;; -12022;CUNEIFORM SIGN AL TIMES DIM2;Lo;0;L;;;;;N;;;;; -12023;CUNEIFORM SIGN AL TIMES GISH;Lo;0;L;;;;;N;;;;; -12024;CUNEIFORM SIGN AL TIMES HA;Lo;0;L;;;;;N;;;;; -12025;CUNEIFORM SIGN AL TIMES KAD3;Lo;0;L;;;;;N;;;;; -12026;CUNEIFORM SIGN AL TIMES KI;Lo;0;L;;;;;N;;;;; -12027;CUNEIFORM SIGN AL TIMES SHE;Lo;0;L;;;;;N;;;;; -12028;CUNEIFORM SIGN AL TIMES USH;Lo;0;L;;;;;N;;;;; -12029;CUNEIFORM SIGN ALAN;Lo;0;L;;;;;N;;;;; -1202A;CUNEIFORM SIGN ALEPH;Lo;0;L;;;;;N;;;;; -1202B;CUNEIFORM SIGN AMAR;Lo;0;L;;;;;N;;;;; -1202C;CUNEIFORM SIGN AMAR TIMES SHE;Lo;0;L;;;;;N;;;;; -1202D;CUNEIFORM SIGN AN;Lo;0;L;;;;;N;;;;; -1202E;CUNEIFORM SIGN AN OVER AN;Lo;0;L;;;;;N;;;;; -1202F;CUNEIFORM SIGN AN THREE TIMES;Lo;0;L;;;;;N;;;;; -12030;CUNEIFORM SIGN AN PLUS NAGA OPPOSING AN PLUS NAGA;Lo;0;L;;;;;N;;;;; -12031;CUNEIFORM SIGN AN PLUS NAGA SQUARED;Lo;0;L;;;;;N;;;;; -12032;CUNEIFORM SIGN ANSHE;Lo;0;L;;;;;N;;;;; -12033;CUNEIFORM SIGN APIN;Lo;0;L;;;;;N;;;;; -12034;CUNEIFORM SIGN ARAD;Lo;0;L;;;;;N;;;;; -12035;CUNEIFORM SIGN ARAD TIMES KUR;Lo;0;L;;;;;N;;;;; -12036;CUNEIFORM SIGN ARKAB;Lo;0;L;;;;;N;;;;; -12037;CUNEIFORM SIGN ASAL2;Lo;0;L;;;;;N;;;;; -12038;CUNEIFORM SIGN ASH;Lo;0;L;;;;;N;;;;; -12039;CUNEIFORM SIGN ASH ZIDA TENU;Lo;0;L;;;;;N;;;;; -1203A;CUNEIFORM SIGN ASH KABA TENU;Lo;0;L;;;;;N;;;;; -1203B;CUNEIFORM SIGN ASH OVER ASH TUG2 OVER TUG2 TUG2 OVER TUG2 PAP;Lo;0;L;;;;;N;;;;; -1203C;CUNEIFORM SIGN ASH OVER ASH OVER ASH;Lo;0;L;;;;;N;;;;; -1203D;CUNEIFORM SIGN ASH OVER ASH OVER ASH CROSSING ASH OVER ASH OVER ASH;Lo;0;L;;;;;N;;;;; -1203E;CUNEIFORM SIGN ASH2;Lo;0;L;;;;;N;;;;; -1203F;CUNEIFORM SIGN ASHGAB;Lo;0;L;;;;;N;;;;; -12040;CUNEIFORM SIGN BA;Lo;0;L;;;;;N;;;;; -12041;CUNEIFORM SIGN BAD;Lo;0;L;;;;;N;;;;; -12042;CUNEIFORM SIGN BAG3;Lo;0;L;;;;;N;;;;; -12043;CUNEIFORM SIGN BAHAR2;Lo;0;L;;;;;N;;;;; -12044;CUNEIFORM SIGN BAL;Lo;0;L;;;;;N;;;;; -12045;CUNEIFORM SIGN BAL OVER BAL;Lo;0;L;;;;;N;;;;; -12046;CUNEIFORM SIGN BALAG;Lo;0;L;;;;;N;;;;; -12047;CUNEIFORM SIGN BAR;Lo;0;L;;;;;N;;;;; -12048;CUNEIFORM SIGN BARA2;Lo;0;L;;;;;N;;;;; -12049;CUNEIFORM SIGN BI;Lo;0;L;;;;;N;;;;; -1204A;CUNEIFORM SIGN BI TIMES A;Lo;0;L;;;;;N;;;;; -1204B;CUNEIFORM SIGN BI TIMES GAR;Lo;0;L;;;;;N;;;;; -1204C;CUNEIFORM SIGN BI TIMES IGI GUNU;Lo;0;L;;;;;N;;;;; -1204D;CUNEIFORM SIGN BU;Lo;0;L;;;;;N;;;;; -1204E;CUNEIFORM SIGN BU OVER BU AB;Lo;0;L;;;;;N;;;;; -1204F;CUNEIFORM SIGN BU OVER BU UN;Lo;0;L;;;;;N;;;;; -12050;CUNEIFORM SIGN BU CROSSING BU;Lo;0;L;;;;;N;;;;; -12051;CUNEIFORM SIGN BULUG;Lo;0;L;;;;;N;;;;; -12052;CUNEIFORM SIGN BULUG OVER BULUG;Lo;0;L;;;;;N;;;;; -12053;CUNEIFORM SIGN BUR;Lo;0;L;;;;;N;;;;; -12054;CUNEIFORM SIGN BUR2;Lo;0;L;;;;;N;;;;; -12055;CUNEIFORM SIGN DA;Lo;0;L;;;;;N;;;;; -12056;CUNEIFORM SIGN DAG;Lo;0;L;;;;;N;;;;; -12057;CUNEIFORM SIGN DAG KISIM5 TIMES A PLUS MASH;Lo;0;L;;;;;N;;;;; -12058;CUNEIFORM SIGN DAG KISIM5 TIMES AMAR;Lo;0;L;;;;;N;;;;; -12059;CUNEIFORM SIGN DAG KISIM5 TIMES BALAG;Lo;0;L;;;;;N;;;;; -1205A;CUNEIFORM SIGN DAG KISIM5 TIMES BI;Lo;0;L;;;;;N;;;;; -1205B;CUNEIFORM SIGN DAG KISIM5 TIMES GA;Lo;0;L;;;;;N;;;;; -1205C;CUNEIFORM SIGN DAG KISIM5 TIMES GA PLUS MASH;Lo;0;L;;;;;N;;;;; -1205D;CUNEIFORM SIGN DAG KISIM5 TIMES GI;Lo;0;L;;;;;N;;;;; -1205E;CUNEIFORM SIGN DAG KISIM5 TIMES GIR2;Lo;0;L;;;;;N;;;;; -1205F;CUNEIFORM SIGN DAG KISIM5 TIMES GUD;Lo;0;L;;;;;N;;;;; -12060;CUNEIFORM SIGN DAG KISIM5 TIMES HA;Lo;0;L;;;;;N;;;;; -12061;CUNEIFORM SIGN DAG KISIM5 TIMES IR;Lo;0;L;;;;;N;;;;; -12062;CUNEIFORM SIGN DAG KISIM5 TIMES IR PLUS LU;Lo;0;L;;;;;N;;;;; -12063;CUNEIFORM SIGN DAG KISIM5 TIMES KAK;Lo;0;L;;;;;N;;;;; -12064;CUNEIFORM SIGN DAG KISIM5 TIMES LA;Lo;0;L;;;;;N;;;;; -12065;CUNEIFORM SIGN DAG KISIM5 TIMES LU;Lo;0;L;;;;;N;;;;; -12066;CUNEIFORM SIGN DAG KISIM5 TIMES LU PLUS MASH2;Lo;0;L;;;;;N;;;;; -12067;CUNEIFORM SIGN DAG KISIM5 TIMES LUM;Lo;0;L;;;;;N;;;;; -12068;CUNEIFORM SIGN DAG KISIM5 TIMES NE;Lo;0;L;;;;;N;;;;; -12069;CUNEIFORM SIGN DAG KISIM5 TIMES PAP PLUS PAP;Lo;0;L;;;;;N;;;;; -1206A;CUNEIFORM SIGN DAG KISIM5 TIMES SI;Lo;0;L;;;;;N;;;;; -1206B;CUNEIFORM SIGN DAG KISIM5 TIMES TAK4;Lo;0;L;;;;;N;;;;; -1206C;CUNEIFORM SIGN DAG KISIM5 TIMES U2 PLUS GIR2;Lo;0;L;;;;;N;;;;; -1206D;CUNEIFORM SIGN DAG KISIM5 TIMES USH;Lo;0;L;;;;;N;;;;; -1206E;CUNEIFORM SIGN DAM;Lo;0;L;;;;;N;;;;; -1206F;CUNEIFORM SIGN DAR;Lo;0;L;;;;;N;;;;; -12070;CUNEIFORM SIGN DARA3;Lo;0;L;;;;;N;;;;; -12071;CUNEIFORM SIGN DARA4;Lo;0;L;;;;;N;;;;; -12072;CUNEIFORM SIGN DI;Lo;0;L;;;;;N;;;;; -12073;CUNEIFORM SIGN DIB;Lo;0;L;;;;;N;;;;; -12074;CUNEIFORM SIGN DIM;Lo;0;L;;;;;N;;;;; -12075;CUNEIFORM SIGN DIM TIMES SHE;Lo;0;L;;;;;N;;;;; -12076;CUNEIFORM SIGN DIM2;Lo;0;L;;;;;N;;;;; -12077;CUNEIFORM SIGN DIN;Lo;0;L;;;;;N;;;;; -12078;CUNEIFORM SIGN DIN KASKAL U GUNU DISH;Lo;0;L;;;;;N;;;;; -12079;CUNEIFORM SIGN DISH;Lo;0;L;;;;;N;;;;; -1207A;CUNEIFORM SIGN DU;Lo;0;L;;;;;N;;;;; -1207B;CUNEIFORM SIGN DU OVER DU;Lo;0;L;;;;;N;;;;; -1207C;CUNEIFORM SIGN DU GUNU;Lo;0;L;;;;;N;;;;; -1207D;CUNEIFORM SIGN DU SHESHIG;Lo;0;L;;;;;N;;;;; -1207E;CUNEIFORM SIGN DUB;Lo;0;L;;;;;N;;;;; -1207F;CUNEIFORM SIGN DUB TIMES ESH2;Lo;0;L;;;;;N;;;;; -12080;CUNEIFORM SIGN DUB2;Lo;0;L;;;;;N;;;;; -12081;CUNEIFORM SIGN DUG;Lo;0;L;;;;;N;;;;; -12082;CUNEIFORM SIGN DUGUD;Lo;0;L;;;;;N;;;;; -12083;CUNEIFORM SIGN DUH;Lo;0;L;;;;;N;;;;; -12084;CUNEIFORM SIGN DUN;Lo;0;L;;;;;N;;;;; -12085;CUNEIFORM SIGN DUN3;Lo;0;L;;;;;N;;;;; -12086;CUNEIFORM SIGN DUN3 GUNU;Lo;0;L;;;;;N;;;;; -12087;CUNEIFORM SIGN DUN3 GUNU GUNU;Lo;0;L;;;;;N;;;;; -12088;CUNEIFORM SIGN DUN4;Lo;0;L;;;;;N;;;;; -12089;CUNEIFORM SIGN DUR2;Lo;0;L;;;;;N;;;;; -1208A;CUNEIFORM SIGN E;Lo;0;L;;;;;N;;;;; -1208B;CUNEIFORM SIGN E TIMES PAP;Lo;0;L;;;;;N;;;;; -1208C;CUNEIFORM SIGN E OVER E NUN OVER NUN;Lo;0;L;;;;;N;;;;; -1208D;CUNEIFORM SIGN E2;Lo;0;L;;;;;N;;;;; -1208E;CUNEIFORM SIGN E2 TIMES A PLUS HA PLUS DA;Lo;0;L;;;;;N;;;;; -1208F;CUNEIFORM SIGN E2 TIMES GAR;Lo;0;L;;;;;N;;;;; -12090;CUNEIFORM SIGN E2 TIMES MI;Lo;0;L;;;;;N;;;;; -12091;CUNEIFORM SIGN E2 TIMES SAL;Lo;0;L;;;;;N;;;;; -12092;CUNEIFORM SIGN E2 TIMES SHE;Lo;0;L;;;;;N;;;;; -12093;CUNEIFORM SIGN E2 TIMES U;Lo;0;L;;;;;N;;;;; -12094;CUNEIFORM SIGN EDIN;Lo;0;L;;;;;N;;;;; -12095;CUNEIFORM SIGN EGIR;Lo;0;L;;;;;N;;;;; -12096;CUNEIFORM SIGN EL;Lo;0;L;;;;;N;;;;; -12097;CUNEIFORM SIGN EN;Lo;0;L;;;;;N;;;;; -12098;CUNEIFORM SIGN EN TIMES GAN2;Lo;0;L;;;;;N;;;;; -12099;CUNEIFORM SIGN EN TIMES GAN2 TENU;Lo;0;L;;;;;N;;;;; -1209A;CUNEIFORM SIGN EN TIMES ME;Lo;0;L;;;;;N;;;;; -1209B;CUNEIFORM SIGN EN CROSSING EN;Lo;0;L;;;;;N;;;;; -1209C;CUNEIFORM SIGN EN OPPOSING EN;Lo;0;L;;;;;N;;;;; -1209D;CUNEIFORM SIGN EN SQUARED;Lo;0;L;;;;;N;;;;; -1209E;CUNEIFORM SIGN EREN;Lo;0;L;;;;;N;;;;; -1209F;CUNEIFORM SIGN ERIN2;Lo;0;L;;;;;N;;;;; -120A0;CUNEIFORM SIGN ESH2;Lo;0;L;;;;;N;;;;; -120A1;CUNEIFORM SIGN EZEN;Lo;0;L;;;;;N;;;;; -120A2;CUNEIFORM SIGN EZEN TIMES A;Lo;0;L;;;;;N;;;;; -120A3;CUNEIFORM SIGN EZEN TIMES A PLUS LAL;Lo;0;L;;;;;N;;;;; -120A4;CUNEIFORM SIGN EZEN TIMES A PLUS LAL TIMES LAL;Lo;0;L;;;;;N;;;;; -120A5;CUNEIFORM SIGN EZEN TIMES AN;Lo;0;L;;;;;N;;;;; -120A6;CUNEIFORM SIGN EZEN TIMES BAD;Lo;0;L;;;;;N;;;;; -120A7;CUNEIFORM SIGN EZEN TIMES DUN3 GUNU;Lo;0;L;;;;;N;;;;; -120A8;CUNEIFORM SIGN EZEN TIMES DUN3 GUNU GUNU;Lo;0;L;;;;;N;;;;; -120A9;CUNEIFORM SIGN EZEN TIMES HA;Lo;0;L;;;;;N;;;;; -120AA;CUNEIFORM SIGN EZEN TIMES HA GUNU;Lo;0;L;;;;;N;;;;; -120AB;CUNEIFORM SIGN EZEN TIMES IGI GUNU;Lo;0;L;;;;;N;;;;; -120AC;CUNEIFORM SIGN EZEN TIMES KASKAL;Lo;0;L;;;;;N;;;;; -120AD;CUNEIFORM SIGN EZEN TIMES KASKAL SQUARED;Lo;0;L;;;;;N;;;;; -120AE;CUNEIFORM SIGN EZEN TIMES KU3;Lo;0;L;;;;;N;;;;; -120AF;CUNEIFORM SIGN EZEN TIMES LA;Lo;0;L;;;;;N;;;;; -120B0;CUNEIFORM SIGN EZEN TIMES LAL TIMES LAL;Lo;0;L;;;;;N;;;;; -120B1;CUNEIFORM SIGN EZEN TIMES LI;Lo;0;L;;;;;N;;;;; -120B2;CUNEIFORM SIGN EZEN TIMES LU;Lo;0;L;;;;;N;;;;; -120B3;CUNEIFORM SIGN EZEN TIMES U2;Lo;0;L;;;;;N;;;;; -120B4;CUNEIFORM SIGN EZEN TIMES UD;Lo;0;L;;;;;N;;;;; -120B5;CUNEIFORM SIGN GA;Lo;0;L;;;;;N;;;;; -120B6;CUNEIFORM SIGN GA GUNU;Lo;0;L;;;;;N;;;;; -120B7;CUNEIFORM SIGN GA2;Lo;0;L;;;;;N;;;;; -120B8;CUNEIFORM SIGN GA2 TIMES A PLUS DA PLUS HA;Lo;0;L;;;;;N;;;;; -120B9;CUNEIFORM SIGN GA2 TIMES A PLUS HA;Lo;0;L;;;;;N;;;;; -120BA;CUNEIFORM SIGN GA2 TIMES A PLUS IGI;Lo;0;L;;;;;N;;;;; -120BB;CUNEIFORM SIGN GA2 TIMES AB2 TENU PLUS TAB;Lo;0;L;;;;;N;;;;; -120BC;CUNEIFORM SIGN GA2 TIMES AN;Lo;0;L;;;;;N;;;;; -120BD;CUNEIFORM SIGN GA2 TIMES ASH;Lo;0;L;;;;;N;;;;; -120BE;CUNEIFORM SIGN GA2 TIMES ASH2 PLUS GAL;Lo;0;L;;;;;N;;;;; -120BF;CUNEIFORM SIGN GA2 TIMES BAD;Lo;0;L;;;;;N;;;;; -120C0;CUNEIFORM SIGN GA2 TIMES BAR PLUS RA;Lo;0;L;;;;;N;;;;; -120C1;CUNEIFORM SIGN GA2 TIMES BUR;Lo;0;L;;;;;N;;;;; -120C2;CUNEIFORM SIGN GA2 TIMES BUR PLUS RA;Lo;0;L;;;;;N;;;;; -120C3;CUNEIFORM SIGN GA2 TIMES DA;Lo;0;L;;;;;N;;;;; -120C4;CUNEIFORM SIGN GA2 TIMES DI;Lo;0;L;;;;;N;;;;; -120C5;CUNEIFORM SIGN GA2 TIMES DIM TIMES SHE;Lo;0;L;;;;;N;;;;; -120C6;CUNEIFORM SIGN GA2 TIMES DUB;Lo;0;L;;;;;N;;;;; -120C7;CUNEIFORM SIGN GA2 TIMES EL;Lo;0;L;;;;;N;;;;; -120C8;CUNEIFORM SIGN GA2 TIMES EL PLUS LA;Lo;0;L;;;;;N;;;;; -120C9;CUNEIFORM SIGN GA2 TIMES EN;Lo;0;L;;;;;N;;;;; -120CA;CUNEIFORM SIGN GA2 TIMES EN TIMES GAN2 TENU;Lo;0;L;;;;;N;;;;; -120CB;CUNEIFORM SIGN GA2 TIMES GAN2 TENU;Lo;0;L;;;;;N;;;;; -120CC;CUNEIFORM SIGN GA2 TIMES GAR;Lo;0;L;;;;;N;;;;; -120CD;CUNEIFORM SIGN GA2 TIMES GI;Lo;0;L;;;;;N;;;;; -120CE;CUNEIFORM SIGN GA2 TIMES GI4;Lo;0;L;;;;;N;;;;; -120CF;CUNEIFORM SIGN GA2 TIMES GI4 PLUS A;Lo;0;L;;;;;N;;;;; -120D0;CUNEIFORM SIGN GA2 TIMES GIR2 PLUS SU;Lo;0;L;;;;;N;;;;; -120D1;CUNEIFORM SIGN GA2 TIMES HA PLUS LU PLUS ESH2;Lo;0;L;;;;;N;;;;; -120D2;CUNEIFORM SIGN GA2 TIMES HAL;Lo;0;L;;;;;N;;;;; -120D3;CUNEIFORM SIGN GA2 TIMES HAL PLUS LA;Lo;0;L;;;;;N;;;;; -120D4;CUNEIFORM SIGN GA2 TIMES HI PLUS LI;Lo;0;L;;;;;N;;;;; -120D5;CUNEIFORM SIGN GA2 TIMES HUB2;Lo;0;L;;;;;N;;;;; -120D6;CUNEIFORM SIGN GA2 TIMES IGI GUNU;Lo;0;L;;;;;N;;;;; -120D7;CUNEIFORM SIGN GA2 TIMES ISH PLUS HU PLUS ASH;Lo;0;L;;;;;N;;;;; -120D8;CUNEIFORM SIGN GA2 TIMES KAK;Lo;0;L;;;;;N;;;;; -120D9;CUNEIFORM SIGN GA2 TIMES KASKAL;Lo;0;L;;;;;N;;;;; -120DA;CUNEIFORM SIGN GA2 TIMES KID;Lo;0;L;;;;;N;;;;; -120DB;CUNEIFORM SIGN GA2 TIMES KID PLUS LAL;Lo;0;L;;;;;N;;;;; -120DC;CUNEIFORM SIGN GA2 TIMES KU3 PLUS AN;Lo;0;L;;;;;N;;;;; -120DD;CUNEIFORM SIGN GA2 TIMES LA;Lo;0;L;;;;;N;;;;; -120DE;CUNEIFORM SIGN GA2 TIMES ME PLUS EN;Lo;0;L;;;;;N;;;;; -120DF;CUNEIFORM SIGN GA2 TIMES MI;Lo;0;L;;;;;N;;;;; -120E0;CUNEIFORM SIGN GA2 TIMES NUN;Lo;0;L;;;;;N;;;;; -120E1;CUNEIFORM SIGN GA2 TIMES NUN OVER NUN;Lo;0;L;;;;;N;;;;; -120E2;CUNEIFORM SIGN GA2 TIMES PA;Lo;0;L;;;;;N;;;;; -120E3;CUNEIFORM SIGN GA2 TIMES SAL;Lo;0;L;;;;;N;;;;; -120E4;CUNEIFORM SIGN GA2 TIMES SAR;Lo;0;L;;;;;N;;;;; -120E5;CUNEIFORM SIGN GA2 TIMES SHE;Lo;0;L;;;;;N;;;;; -120E6;CUNEIFORM SIGN GA2 TIMES SHE PLUS TUR;Lo;0;L;;;;;N;;;;; -120E7;CUNEIFORM SIGN GA2 TIMES SHID;Lo;0;L;;;;;N;;;;; -120E8;CUNEIFORM SIGN GA2 TIMES SUM;Lo;0;L;;;;;N;;;;; -120E9;CUNEIFORM SIGN GA2 TIMES TAK4;Lo;0;L;;;;;N;;;;; -120EA;CUNEIFORM SIGN GA2 TIMES U;Lo;0;L;;;;;N;;;;; -120EB;CUNEIFORM SIGN GA2 TIMES UD;Lo;0;L;;;;;N;;;;; -120EC;CUNEIFORM SIGN GA2 TIMES UD PLUS DU;Lo;0;L;;;;;N;;;;; -120ED;CUNEIFORM SIGN GA2 OVER GA2;Lo;0;L;;;;;N;;;;; -120EE;CUNEIFORM SIGN GABA;Lo;0;L;;;;;N;;;;; -120EF;CUNEIFORM SIGN GABA CROSSING GABA;Lo;0;L;;;;;N;;;;; -120F0;CUNEIFORM SIGN GAD;Lo;0;L;;;;;N;;;;; -120F1;CUNEIFORM SIGN GAD OVER GAD GAR OVER GAR;Lo;0;L;;;;;N;;;;; -120F2;CUNEIFORM SIGN GAL;Lo;0;L;;;;;N;;;;; -120F3;CUNEIFORM SIGN GAL GAD OVER GAD GAR OVER GAR;Lo;0;L;;;;;N;;;;; -120F4;CUNEIFORM SIGN GALAM;Lo;0;L;;;;;N;;;;; -120F5;CUNEIFORM SIGN GAM;Lo;0;L;;;;;N;;;;; -120F6;CUNEIFORM SIGN GAN;Lo;0;L;;;;;N;;;;; -120F7;CUNEIFORM SIGN GAN2;Lo;0;L;;;;;N;;;;; -120F8;CUNEIFORM SIGN GAN2 TENU;Lo;0;L;;;;;N;;;;; -120F9;CUNEIFORM SIGN GAN2 OVER GAN2;Lo;0;L;;;;;N;;;;; -120FA;CUNEIFORM SIGN GAN2 CROSSING GAN2;Lo;0;L;;;;;N;;;;; -120FB;CUNEIFORM SIGN GAR;Lo;0;L;;;;;N;;;;; -120FC;CUNEIFORM SIGN GAR3;Lo;0;L;;;;;N;;;;; -120FD;CUNEIFORM SIGN GASHAN;Lo;0;L;;;;;N;;;;; -120FE;CUNEIFORM SIGN GESHTIN;Lo;0;L;;;;;N;;;;; -120FF;CUNEIFORM SIGN GESHTIN TIMES KUR;Lo;0;L;;;;;N;;;;; -12100;CUNEIFORM SIGN GI;Lo;0;L;;;;;N;;;;; -12101;CUNEIFORM SIGN GI TIMES E;Lo;0;L;;;;;N;;;;; -12102;CUNEIFORM SIGN GI TIMES U;Lo;0;L;;;;;N;;;;; -12103;CUNEIFORM SIGN GI CROSSING GI;Lo;0;L;;;;;N;;;;; -12104;CUNEIFORM SIGN GI4;Lo;0;L;;;;;N;;;;; -12105;CUNEIFORM SIGN GI4 OVER GI4;Lo;0;L;;;;;N;;;;; -12106;CUNEIFORM SIGN GI4 CROSSING GI4;Lo;0;L;;;;;N;;;;; -12107;CUNEIFORM SIGN GIDIM;Lo;0;L;;;;;N;;;;; -12108;CUNEIFORM SIGN GIR2;Lo;0;L;;;;;N;;;;; -12109;CUNEIFORM SIGN GIR2 GUNU;Lo;0;L;;;;;N;;;;; -1210A;CUNEIFORM SIGN GIR3;Lo;0;L;;;;;N;;;;; -1210B;CUNEIFORM SIGN GIR3 TIMES A PLUS IGI;Lo;0;L;;;;;N;;;;; -1210C;CUNEIFORM SIGN GIR3 TIMES GAN2 TENU;Lo;0;L;;;;;N;;;;; -1210D;CUNEIFORM SIGN GIR3 TIMES IGI;Lo;0;L;;;;;N;;;;; -1210E;CUNEIFORM SIGN GIR3 TIMES LU PLUS IGI;Lo;0;L;;;;;N;;;;; -1210F;CUNEIFORM SIGN GIR3 TIMES PA;Lo;0;L;;;;;N;;;;; -12110;CUNEIFORM SIGN GISAL;Lo;0;L;;;;;N;;;;; -12111;CUNEIFORM SIGN GISH;Lo;0;L;;;;;N;;;;; -12112;CUNEIFORM SIGN GISH CROSSING GISH;Lo;0;L;;;;;N;;;;; -12113;CUNEIFORM SIGN GISH TIMES BAD;Lo;0;L;;;;;N;;;;; -12114;CUNEIFORM SIGN GISH TIMES TAK4;Lo;0;L;;;;;N;;;;; -12115;CUNEIFORM SIGN GISH TENU;Lo;0;L;;;;;N;;;;; -12116;CUNEIFORM SIGN GU;Lo;0;L;;;;;N;;;;; -12117;CUNEIFORM SIGN GU CROSSING GU;Lo;0;L;;;;;N;;;;; -12118;CUNEIFORM SIGN GU2;Lo;0;L;;;;;N;;;;; -12119;CUNEIFORM SIGN GU2 TIMES KAK;Lo;0;L;;;;;N;;;;; -1211A;CUNEIFORM SIGN GU2 TIMES KAK TIMES IGI GUNU;Lo;0;L;;;;;N;;;;; -1211B;CUNEIFORM SIGN GU2 TIMES NUN;Lo;0;L;;;;;N;;;;; -1211C;CUNEIFORM SIGN GU2 TIMES SAL PLUS TUG2;Lo;0;L;;;;;N;;;;; -1211D;CUNEIFORM SIGN GU2 GUNU;Lo;0;L;;;;;N;;;;; -1211E;CUNEIFORM SIGN GUD;Lo;0;L;;;;;N;;;;; -1211F;CUNEIFORM SIGN GUD TIMES A PLUS KUR;Lo;0;L;;;;;N;;;;; -12120;CUNEIFORM SIGN GUD TIMES KUR;Lo;0;L;;;;;N;;;;; -12121;CUNEIFORM SIGN GUD OVER GUD LUGAL;Lo;0;L;;;;;N;;;;; -12122;CUNEIFORM SIGN GUL;Lo;0;L;;;;;N;;;;; -12123;CUNEIFORM SIGN GUM;Lo;0;L;;;;;N;;;;; -12124;CUNEIFORM SIGN GUM TIMES SHE;Lo;0;L;;;;;N;;;;; -12125;CUNEIFORM SIGN GUR;Lo;0;L;;;;;N;;;;; -12126;CUNEIFORM SIGN GUR7;Lo;0;L;;;;;N;;;;; -12127;CUNEIFORM SIGN GURUN;Lo;0;L;;;;;N;;;;; -12128;CUNEIFORM SIGN GURUSH;Lo;0;L;;;;;N;;;;; -12129;CUNEIFORM SIGN HA;Lo;0;L;;;;;N;;;;; -1212A;CUNEIFORM SIGN HA TENU;Lo;0;L;;;;;N;;;;; -1212B;CUNEIFORM SIGN HA GUNU;Lo;0;L;;;;;N;;;;; -1212C;CUNEIFORM SIGN HAL;Lo;0;L;;;;;N;;;;; -1212D;CUNEIFORM SIGN HI;Lo;0;L;;;;;N;;;;; -1212E;CUNEIFORM SIGN HI TIMES ASH;Lo;0;L;;;;;N;;;;; -1212F;CUNEIFORM SIGN HI TIMES ASH2;Lo;0;L;;;;;N;;;;; -12130;CUNEIFORM SIGN HI TIMES BAD;Lo;0;L;;;;;N;;;;; -12131;CUNEIFORM SIGN HI TIMES DISH;Lo;0;L;;;;;N;;;;; -12132;CUNEIFORM SIGN HI TIMES GAD;Lo;0;L;;;;;N;;;;; -12133;CUNEIFORM SIGN HI TIMES KIN;Lo;0;L;;;;;N;;;;; -12134;CUNEIFORM SIGN HI TIMES NUN;Lo;0;L;;;;;N;;;;; -12135;CUNEIFORM SIGN HI TIMES SHE;Lo;0;L;;;;;N;;;;; -12136;CUNEIFORM SIGN HI TIMES U;Lo;0;L;;;;;N;;;;; -12137;CUNEIFORM SIGN HU;Lo;0;L;;;;;N;;;;; -12138;CUNEIFORM SIGN HUB2;Lo;0;L;;;;;N;;;;; -12139;CUNEIFORM SIGN HUB2 TIMES AN;Lo;0;L;;;;;N;;;;; -1213A;CUNEIFORM SIGN HUB2 TIMES HAL;Lo;0;L;;;;;N;;;;; -1213B;CUNEIFORM SIGN HUB2 TIMES KASKAL;Lo;0;L;;;;;N;;;;; -1213C;CUNEIFORM SIGN HUB2 TIMES LISH;Lo;0;L;;;;;N;;;;; -1213D;CUNEIFORM SIGN HUB2 TIMES UD;Lo;0;L;;;;;N;;;;; -1213E;CUNEIFORM SIGN HUL2;Lo;0;L;;;;;N;;;;; -1213F;CUNEIFORM SIGN I;Lo;0;L;;;;;N;;;;; -12140;CUNEIFORM SIGN I A;Lo;0;L;;;;;N;;;;; -12141;CUNEIFORM SIGN IB;Lo;0;L;;;;;N;;;;; -12142;CUNEIFORM SIGN IDIM;Lo;0;L;;;;;N;;;;; -12143;CUNEIFORM SIGN IDIM OVER IDIM BUR;Lo;0;L;;;;;N;;;;; -12144;CUNEIFORM SIGN IDIM OVER IDIM SQUARED;Lo;0;L;;;;;N;;;;; -12145;CUNEIFORM SIGN IG;Lo;0;L;;;;;N;;;;; -12146;CUNEIFORM SIGN IGI;Lo;0;L;;;;;N;;;;; -12147;CUNEIFORM SIGN IGI DIB;Lo;0;L;;;;;N;;;;; -12148;CUNEIFORM SIGN IGI RI;Lo;0;L;;;;;N;;;;; -12149;CUNEIFORM SIGN IGI OVER IGI SHIR OVER SHIR UD OVER UD;Lo;0;L;;;;;N;;;;; -1214A;CUNEIFORM SIGN IGI GUNU;Lo;0;L;;;;;N;;;;; -1214B;CUNEIFORM SIGN IL;Lo;0;L;;;;;N;;;;; -1214C;CUNEIFORM SIGN IL TIMES GAN2 TENU;Lo;0;L;;;;;N;;;;; -1214D;CUNEIFORM SIGN IL2;Lo;0;L;;;;;N;;;;; -1214E;CUNEIFORM SIGN IM;Lo;0;L;;;;;N;;;;; -1214F;CUNEIFORM SIGN IM TIMES TAK4;Lo;0;L;;;;;N;;;;; -12150;CUNEIFORM SIGN IM CROSSING IM;Lo;0;L;;;;;N;;;;; -12151;CUNEIFORM SIGN IM OPPOSING IM;Lo;0;L;;;;;N;;;;; -12152;CUNEIFORM SIGN IM SQUARED;Lo;0;L;;;;;N;;;;; -12153;CUNEIFORM SIGN IMIN;Lo;0;L;;;;;N;;;;; -12154;CUNEIFORM SIGN IN;Lo;0;L;;;;;N;;;;; -12155;CUNEIFORM SIGN IR;Lo;0;L;;;;;N;;;;; -12156;CUNEIFORM SIGN ISH;Lo;0;L;;;;;N;;;;; -12157;CUNEIFORM SIGN KA;Lo;0;L;;;;;N;;;;; -12158;CUNEIFORM SIGN KA TIMES A;Lo;0;L;;;;;N;;;;; -12159;CUNEIFORM SIGN KA TIMES AD;Lo;0;L;;;;;N;;;;; -1215A;CUNEIFORM SIGN KA TIMES AD PLUS KU3;Lo;0;L;;;;;N;;;;; -1215B;CUNEIFORM SIGN KA TIMES ASH2;Lo;0;L;;;;;N;;;;; -1215C;CUNEIFORM SIGN KA TIMES BAD;Lo;0;L;;;;;N;;;;; -1215D;CUNEIFORM SIGN KA TIMES BALAG;Lo;0;L;;;;;N;;;;; -1215E;CUNEIFORM SIGN KA TIMES BAR;Lo;0;L;;;;;N;;;;; -1215F;CUNEIFORM SIGN KA TIMES BI;Lo;0;L;;;;;N;;;;; -12160;CUNEIFORM SIGN KA TIMES ERIN2;Lo;0;L;;;;;N;;;;; -12161;CUNEIFORM SIGN KA TIMES ESH2;Lo;0;L;;;;;N;;;;; -12162;CUNEIFORM SIGN KA TIMES GA;Lo;0;L;;;;;N;;;;; -12163;CUNEIFORM SIGN KA TIMES GAL;Lo;0;L;;;;;N;;;;; -12164;CUNEIFORM SIGN KA TIMES GAN2 TENU;Lo;0;L;;;;;N;;;;; -12165;CUNEIFORM SIGN KA TIMES GAR;Lo;0;L;;;;;N;;;;; -12166;CUNEIFORM SIGN KA TIMES GAR PLUS SHA3 PLUS A;Lo;0;L;;;;;N;;;;; -12167;CUNEIFORM SIGN KA TIMES GI;Lo;0;L;;;;;N;;;;; -12168;CUNEIFORM SIGN KA TIMES GIR2;Lo;0;L;;;;;N;;;;; -12169;CUNEIFORM SIGN KA TIMES GISH PLUS SAR;Lo;0;L;;;;;N;;;;; -1216A;CUNEIFORM SIGN KA TIMES GISH CROSSING GISH;Lo;0;L;;;;;N;;;;; -1216B;CUNEIFORM SIGN KA TIMES GU;Lo;0;L;;;;;N;;;;; -1216C;CUNEIFORM SIGN KA TIMES GUR7;Lo;0;L;;;;;N;;;;; -1216D;CUNEIFORM SIGN KA TIMES IGI;Lo;0;L;;;;;N;;;;; -1216E;CUNEIFORM SIGN KA TIMES IM;Lo;0;L;;;;;N;;;;; -1216F;CUNEIFORM SIGN KA TIMES KAK;Lo;0;L;;;;;N;;;;; -12170;CUNEIFORM SIGN KA TIMES KI;Lo;0;L;;;;;N;;;;; -12171;CUNEIFORM SIGN KA TIMES KID;Lo;0;L;;;;;N;;;;; -12172;CUNEIFORM SIGN KA TIMES LI;Lo;0;L;;;;;N;;;;; -12173;CUNEIFORM SIGN KA TIMES LU;Lo;0;L;;;;;N;;;;; -12174;CUNEIFORM SIGN KA TIMES ME;Lo;0;L;;;;;N;;;;; -12175;CUNEIFORM SIGN KA TIMES ME PLUS DU;Lo;0;L;;;;;N;;;;; -12176;CUNEIFORM SIGN KA TIMES ME PLUS GI;Lo;0;L;;;;;N;;;;; -12177;CUNEIFORM SIGN KA TIMES ME PLUS TE;Lo;0;L;;;;;N;;;;; -12178;CUNEIFORM SIGN KA TIMES MI;Lo;0;L;;;;;N;;;;; -12179;CUNEIFORM SIGN KA TIMES MI PLUS NUNUZ;Lo;0;L;;;;;N;;;;; -1217A;CUNEIFORM SIGN KA TIMES NE;Lo;0;L;;;;;N;;;;; -1217B;CUNEIFORM SIGN KA TIMES NUN;Lo;0;L;;;;;N;;;;; -1217C;CUNEIFORM SIGN KA TIMES PI;Lo;0;L;;;;;N;;;;; -1217D;CUNEIFORM SIGN KA TIMES RU;Lo;0;L;;;;;N;;;;; -1217E;CUNEIFORM SIGN KA TIMES SA;Lo;0;L;;;;;N;;;;; -1217F;CUNEIFORM SIGN KA TIMES SAR;Lo;0;L;;;;;N;;;;; -12180;CUNEIFORM SIGN KA TIMES SHA;Lo;0;L;;;;;N;;;;; -12181;CUNEIFORM SIGN KA TIMES SHE;Lo;0;L;;;;;N;;;;; -12182;CUNEIFORM SIGN KA TIMES SHID;Lo;0;L;;;;;N;;;;; -12183;CUNEIFORM SIGN KA TIMES SHU;Lo;0;L;;;;;N;;;;; -12184;CUNEIFORM SIGN KA TIMES SIG;Lo;0;L;;;;;N;;;;; -12185;CUNEIFORM SIGN KA TIMES SUHUR;Lo;0;L;;;;;N;;;;; -12186;CUNEIFORM SIGN KA TIMES TAR;Lo;0;L;;;;;N;;;;; -12187;CUNEIFORM SIGN KA TIMES U;Lo;0;L;;;;;N;;;;; -12188;CUNEIFORM SIGN KA TIMES U2;Lo;0;L;;;;;N;;;;; -12189;CUNEIFORM SIGN KA TIMES UD;Lo;0;L;;;;;N;;;;; -1218A;CUNEIFORM SIGN KA TIMES UMUM TIMES PA;Lo;0;L;;;;;N;;;;; -1218B;CUNEIFORM SIGN KA TIMES USH;Lo;0;L;;;;;N;;;;; -1218C;CUNEIFORM SIGN KA TIMES ZI;Lo;0;L;;;;;N;;;;; -1218D;CUNEIFORM SIGN KA2;Lo;0;L;;;;;N;;;;; -1218E;CUNEIFORM SIGN KA2 CROSSING KA2;Lo;0;L;;;;;N;;;;; -1218F;CUNEIFORM SIGN KAB;Lo;0;L;;;;;N;;;;; -12190;CUNEIFORM SIGN KAD2;Lo;0;L;;;;;N;;;;; -12191;CUNEIFORM SIGN KAD3;Lo;0;L;;;;;N;;;;; -12192;CUNEIFORM SIGN KAD4;Lo;0;L;;;;;N;;;;; -12193;CUNEIFORM SIGN KAD5;Lo;0;L;;;;;N;;;;; -12194;CUNEIFORM SIGN KAD5 OVER KAD5;Lo;0;L;;;;;N;;;;; -12195;CUNEIFORM SIGN KAK;Lo;0;L;;;;;N;;;;; -12196;CUNEIFORM SIGN KAK TIMES IGI GUNU;Lo;0;L;;;;;N;;;;; -12197;CUNEIFORM SIGN KAL;Lo;0;L;;;;;N;;;;; -12198;CUNEIFORM SIGN KAL TIMES BAD;Lo;0;L;;;;;N;;;;; -12199;CUNEIFORM SIGN KAL CROSSING KAL;Lo;0;L;;;;;N;;;;; -1219A;CUNEIFORM SIGN KAM2;Lo;0;L;;;;;N;;;;; -1219B;CUNEIFORM SIGN KAM4;Lo;0;L;;;;;N;;;;; -1219C;CUNEIFORM SIGN KASKAL;Lo;0;L;;;;;N;;;;; -1219D;CUNEIFORM SIGN KASKAL LAGAB TIMES U OVER LAGAB TIMES U;Lo;0;L;;;;;N;;;;; -1219E;CUNEIFORM SIGN KASKAL OVER KASKAL LAGAB TIMES U OVER LAGAB TIMES U;Lo;0;L;;;;;N;;;;; -1219F;CUNEIFORM SIGN KESH2;Lo;0;L;;;;;N;;;;; -121A0;CUNEIFORM SIGN KI;Lo;0;L;;;;;N;;;;; -121A1;CUNEIFORM SIGN KI TIMES BAD;Lo;0;L;;;;;N;;;;; -121A2;CUNEIFORM SIGN KI TIMES U;Lo;0;L;;;;;N;;;;; -121A3;CUNEIFORM SIGN KI TIMES UD;Lo;0;L;;;;;N;;;;; -121A4;CUNEIFORM SIGN KID;Lo;0;L;;;;;N;;;;; -121A5;CUNEIFORM SIGN KIN;Lo;0;L;;;;;N;;;;; -121A6;CUNEIFORM SIGN KISAL;Lo;0;L;;;;;N;;;;; -121A7;CUNEIFORM SIGN KISH;Lo;0;L;;;;;N;;;;; -121A8;CUNEIFORM SIGN KISIM5;Lo;0;L;;;;;N;;;;; -121A9;CUNEIFORM SIGN KISIM5 OVER KISIM5;Lo;0;L;;;;;N;;;;; -121AA;CUNEIFORM SIGN KU;Lo;0;L;;;;;N;;;;; -121AB;CUNEIFORM SIGN KU OVER HI TIMES ASH2 KU OVER HI TIMES ASH2;Lo;0;L;;;;;N;;;;; -121AC;CUNEIFORM SIGN KU3;Lo;0;L;;;;;N;;;;; -121AD;CUNEIFORM SIGN KU4;Lo;0;L;;;;;N;;;;; -121AE;CUNEIFORM SIGN KU4 VARIANT FORM;Lo;0;L;;;;;N;;;;; -121AF;CUNEIFORM SIGN KU7;Lo;0;L;;;;;N;;;;; -121B0;CUNEIFORM SIGN KUL;Lo;0;L;;;;;N;;;;; -121B1;CUNEIFORM SIGN KUL GUNU;Lo;0;L;;;;;N;;;;; -121B2;CUNEIFORM SIGN KUN;Lo;0;L;;;;;N;;;;; -121B3;CUNEIFORM SIGN KUR;Lo;0;L;;;;;N;;;;; -121B4;CUNEIFORM SIGN KUR OPPOSING KUR;Lo;0;L;;;;;N;;;;; -121B5;CUNEIFORM SIGN KUSHU2;Lo;0;L;;;;;N;;;;; -121B6;CUNEIFORM SIGN KWU318;Lo;0;L;;;;;N;;;;; -121B7;CUNEIFORM SIGN LA;Lo;0;L;;;;;N;;;;; -121B8;CUNEIFORM SIGN LAGAB;Lo;0;L;;;;;N;;;;; -121B9;CUNEIFORM SIGN LAGAB TIMES A;Lo;0;L;;;;;N;;;;; -121BA;CUNEIFORM SIGN LAGAB TIMES A PLUS DA PLUS HA;Lo;0;L;;;;;N;;;;; -121BB;CUNEIFORM SIGN LAGAB TIMES A PLUS GAR;Lo;0;L;;;;;N;;;;; -121BC;CUNEIFORM SIGN LAGAB TIMES A PLUS LAL;Lo;0;L;;;;;N;;;;; -121BD;CUNEIFORM SIGN LAGAB TIMES AL;Lo;0;L;;;;;N;;;;; -121BE;CUNEIFORM SIGN LAGAB TIMES AN;Lo;0;L;;;;;N;;;;; -121BF;CUNEIFORM SIGN LAGAB TIMES ASH ZIDA TENU;Lo;0;L;;;;;N;;;;; -121C0;CUNEIFORM SIGN LAGAB TIMES BAD;Lo;0;L;;;;;N;;;;; -121C1;CUNEIFORM SIGN LAGAB TIMES BI;Lo;0;L;;;;;N;;;;; -121C2;CUNEIFORM SIGN LAGAB TIMES DAR;Lo;0;L;;;;;N;;;;; -121C3;CUNEIFORM SIGN LAGAB TIMES EN;Lo;0;L;;;;;N;;;;; -121C4;CUNEIFORM SIGN LAGAB TIMES GA;Lo;0;L;;;;;N;;;;; -121C5;CUNEIFORM SIGN LAGAB TIMES GAR;Lo;0;L;;;;;N;;;;; -121C6;CUNEIFORM SIGN LAGAB TIMES GUD;Lo;0;L;;;;;N;;;;; -121C7;CUNEIFORM SIGN LAGAB TIMES GUD PLUS GUD;Lo;0;L;;;;;N;;;;; -121C8;CUNEIFORM SIGN LAGAB TIMES HA;Lo;0;L;;;;;N;;;;; -121C9;CUNEIFORM SIGN LAGAB TIMES HAL;Lo;0;L;;;;;N;;;;; -121CA;CUNEIFORM SIGN LAGAB TIMES HI TIMES NUN;Lo;0;L;;;;;N;;;;; -121CB;CUNEIFORM SIGN LAGAB TIMES IGI GUNU;Lo;0;L;;;;;N;;;;; -121CC;CUNEIFORM SIGN LAGAB TIMES IM;Lo;0;L;;;;;N;;;;; -121CD;CUNEIFORM SIGN LAGAB TIMES IM PLUS HA;Lo;0;L;;;;;N;;;;; -121CE;CUNEIFORM SIGN LAGAB TIMES IM PLUS LU;Lo;0;L;;;;;N;;;;; -121CF;CUNEIFORM SIGN LAGAB TIMES KI;Lo;0;L;;;;;N;;;;; -121D0;CUNEIFORM SIGN LAGAB TIMES KIN;Lo;0;L;;;;;N;;;;; -121D1;CUNEIFORM SIGN LAGAB TIMES KU3;Lo;0;L;;;;;N;;;;; -121D2;CUNEIFORM SIGN LAGAB TIMES KUL;Lo;0;L;;;;;N;;;;; -121D3;CUNEIFORM SIGN LAGAB TIMES KUL PLUS HI PLUS A;Lo;0;L;;;;;N;;;;; -121D4;CUNEIFORM SIGN LAGAB TIMES LAGAB;Lo;0;L;;;;;N;;;;; -121D5;CUNEIFORM SIGN LAGAB TIMES LISH;Lo;0;L;;;;;N;;;;; -121D6;CUNEIFORM SIGN LAGAB TIMES LU;Lo;0;L;;;;;N;;;;; -121D7;CUNEIFORM SIGN LAGAB TIMES LUL;Lo;0;L;;;;;N;;;;; -121D8;CUNEIFORM SIGN LAGAB TIMES ME;Lo;0;L;;;;;N;;;;; -121D9;CUNEIFORM SIGN LAGAB TIMES ME PLUS EN;Lo;0;L;;;;;N;;;;; -121DA;CUNEIFORM SIGN LAGAB TIMES MUSH;Lo;0;L;;;;;N;;;;; -121DB;CUNEIFORM SIGN LAGAB TIMES NE;Lo;0;L;;;;;N;;;;; -121DC;CUNEIFORM SIGN LAGAB TIMES SHE PLUS SUM;Lo;0;L;;;;;N;;;;; -121DD;CUNEIFORM SIGN LAGAB TIMES SHITA PLUS GISH PLUS ERIN2;Lo;0;L;;;;;N;;;;; -121DE;CUNEIFORM SIGN LAGAB TIMES SHITA PLUS GISH TENU;Lo;0;L;;;;;N;;;;; -121DF;CUNEIFORM SIGN LAGAB TIMES SHU2;Lo;0;L;;;;;N;;;;; -121E0;CUNEIFORM SIGN LAGAB TIMES SHU2 PLUS SHU2;Lo;0;L;;;;;N;;;;; -121E1;CUNEIFORM SIGN LAGAB TIMES SUM;Lo;0;L;;;;;N;;;;; -121E2;CUNEIFORM SIGN LAGAB TIMES TAG;Lo;0;L;;;;;N;;;;; -121E3;CUNEIFORM SIGN LAGAB TIMES TAK4;Lo;0;L;;;;;N;;;;; -121E4;CUNEIFORM SIGN LAGAB TIMES TE PLUS A PLUS SU PLUS NA;Lo;0;L;;;;;N;;;;; -121E5;CUNEIFORM SIGN LAGAB TIMES U;Lo;0;L;;;;;N;;;;; -121E6;CUNEIFORM SIGN LAGAB TIMES U PLUS A;Lo;0;L;;;;;N;;;;; -121E7;CUNEIFORM SIGN LAGAB TIMES U PLUS U PLUS U;Lo;0;L;;;;;N;;;;; -121E8;CUNEIFORM SIGN LAGAB TIMES U2 PLUS ASH;Lo;0;L;;;;;N;;;;; -121E9;CUNEIFORM SIGN LAGAB TIMES UD;Lo;0;L;;;;;N;;;;; -121EA;CUNEIFORM SIGN LAGAB TIMES USH;Lo;0;L;;;;;N;;;;; -121EB;CUNEIFORM SIGN LAGAB SQUARED;Lo;0;L;;;;;N;;;;; -121EC;CUNEIFORM SIGN LAGAR;Lo;0;L;;;;;N;;;;; -121ED;CUNEIFORM SIGN LAGAR TIMES SHE;Lo;0;L;;;;;N;;;;; -121EE;CUNEIFORM SIGN LAGAR TIMES SHE PLUS SUM;Lo;0;L;;;;;N;;;;; -121EF;CUNEIFORM SIGN LAGAR GUNU;Lo;0;L;;;;;N;;;;; -121F0;CUNEIFORM SIGN LAGAR GUNU OVER LAGAR GUNU SHE;Lo;0;L;;;;;N;;;;; -121F1;CUNEIFORM SIGN LAHSHU;Lo;0;L;;;;;N;;;;; -121F2;CUNEIFORM SIGN LAL;Lo;0;L;;;;;N;;;;; -121F3;CUNEIFORM SIGN LAL TIMES LAL;Lo;0;L;;;;;N;;;;; -121F4;CUNEIFORM SIGN LAM;Lo;0;L;;;;;N;;;;; -121F5;CUNEIFORM SIGN LAM TIMES KUR;Lo;0;L;;;;;N;;;;; -121F6;CUNEIFORM SIGN LAM TIMES KUR PLUS RU;Lo;0;L;;;;;N;;;;; -121F7;CUNEIFORM SIGN LI;Lo;0;L;;;;;N;;;;; -121F8;CUNEIFORM SIGN LIL;Lo;0;L;;;;;N;;;;; -121F9;CUNEIFORM SIGN LIMMU2;Lo;0;L;;;;;N;;;;; -121FA;CUNEIFORM SIGN LISH;Lo;0;L;;;;;N;;;;; -121FB;CUNEIFORM SIGN LU;Lo;0;L;;;;;N;;;;; -121FC;CUNEIFORM SIGN LU TIMES BAD;Lo;0;L;;;;;N;;;;; -121FD;CUNEIFORM SIGN LU2;Lo;0;L;;;;;N;;;;; -121FE;CUNEIFORM SIGN LU2 TIMES AL;Lo;0;L;;;;;N;;;;; -121FF;CUNEIFORM SIGN LU2 TIMES BAD;Lo;0;L;;;;;N;;;;; -12200;CUNEIFORM SIGN LU2 TIMES ESH2;Lo;0;L;;;;;N;;;;; -12201;CUNEIFORM SIGN LU2 TIMES ESH2 TENU;Lo;0;L;;;;;N;;;;; -12202;CUNEIFORM SIGN LU2 TIMES GAN2 TENU;Lo;0;L;;;;;N;;;;; -12203;CUNEIFORM SIGN LU2 TIMES HI TIMES BAD;Lo;0;L;;;;;N;;;;; -12204;CUNEIFORM SIGN LU2 TIMES IM;Lo;0;L;;;;;N;;;;; -12205;CUNEIFORM SIGN LU2 TIMES KAD2;Lo;0;L;;;;;N;;;;; -12206;CUNEIFORM SIGN LU2 TIMES KAD3;Lo;0;L;;;;;N;;;;; -12207;CUNEIFORM SIGN LU2 TIMES KAD3 PLUS ASH;Lo;0;L;;;;;N;;;;; -12208;CUNEIFORM SIGN LU2 TIMES KI;Lo;0;L;;;;;N;;;;; -12209;CUNEIFORM SIGN LU2 TIMES LA PLUS ASH;Lo;0;L;;;;;N;;;;; -1220A;CUNEIFORM SIGN LU2 TIMES LAGAB;Lo;0;L;;;;;N;;;;; -1220B;CUNEIFORM SIGN LU2 TIMES ME PLUS EN;Lo;0;L;;;;;N;;;;; -1220C;CUNEIFORM SIGN LU2 TIMES NE;Lo;0;L;;;;;N;;;;; -1220D;CUNEIFORM SIGN LU2 TIMES NU;Lo;0;L;;;;;N;;;;; -1220E;CUNEIFORM SIGN LU2 TIMES SI PLUS ASH;Lo;0;L;;;;;N;;;;; -1220F;CUNEIFORM SIGN LU2 TIMES SIK2 PLUS BU;Lo;0;L;;;;;N;;;;; -12210;CUNEIFORM SIGN LU2 TIMES TUG2;Lo;0;L;;;;;N;;;;; -12211;CUNEIFORM SIGN LU2 TENU;Lo;0;L;;;;;N;;;;; -12212;CUNEIFORM SIGN LU2 CROSSING LU2;Lo;0;L;;;;;N;;;;; -12213;CUNEIFORM SIGN LU2 OPPOSING LU2;Lo;0;L;;;;;N;;;;; -12214;CUNEIFORM SIGN LU2 SQUARED;Lo;0;L;;;;;N;;;;; -12215;CUNEIFORM SIGN LU2 SHESHIG;Lo;0;L;;;;;N;;;;; -12216;CUNEIFORM SIGN LU3;Lo;0;L;;;;;N;;;;; -12217;CUNEIFORM SIGN LUGAL;Lo;0;L;;;;;N;;;;; -12218;CUNEIFORM SIGN LUGAL OVER LUGAL;Lo;0;L;;;;;N;;;;; -12219;CUNEIFORM SIGN LUGAL OPPOSING LUGAL;Lo;0;L;;;;;N;;;;; -1221A;CUNEIFORM SIGN LUGAL SHESHIG;Lo;0;L;;;;;N;;;;; -1221B;CUNEIFORM SIGN LUH;Lo;0;L;;;;;N;;;;; -1221C;CUNEIFORM SIGN LUL;Lo;0;L;;;;;N;;;;; -1221D;CUNEIFORM SIGN LUM;Lo;0;L;;;;;N;;;;; -1221E;CUNEIFORM SIGN LUM OVER LUM;Lo;0;L;;;;;N;;;;; -1221F;CUNEIFORM SIGN LUM OVER LUM GAR OVER GAR;Lo;0;L;;;;;N;;;;; -12220;CUNEIFORM SIGN MA;Lo;0;L;;;;;N;;;;; -12221;CUNEIFORM SIGN MA TIMES TAK4;Lo;0;L;;;;;N;;;;; -12222;CUNEIFORM SIGN MA GUNU;Lo;0;L;;;;;N;;;;; -12223;CUNEIFORM SIGN MA2;Lo;0;L;;;;;N;;;;; -12224;CUNEIFORM SIGN MAH;Lo;0;L;;;;;N;;;;; -12225;CUNEIFORM SIGN MAR;Lo;0;L;;;;;N;;;;; -12226;CUNEIFORM SIGN MASH;Lo;0;L;;;;;N;;;;; -12227;CUNEIFORM SIGN MASH2;Lo;0;L;;;;;N;;;;; -12228;CUNEIFORM SIGN ME;Lo;0;L;;;;;N;;;;; -12229;CUNEIFORM SIGN MES;Lo;0;L;;;;;N;;;;; -1222A;CUNEIFORM SIGN MI;Lo;0;L;;;;;N;;;;; -1222B;CUNEIFORM SIGN MIN;Lo;0;L;;;;;N;;;;; -1222C;CUNEIFORM SIGN MU;Lo;0;L;;;;;N;;;;; -1222D;CUNEIFORM SIGN MU OVER MU;Lo;0;L;;;;;N;;;;; -1222E;CUNEIFORM SIGN MUG;Lo;0;L;;;;;N;;;;; -1222F;CUNEIFORM SIGN MUG GUNU;Lo;0;L;;;;;N;;;;; -12230;CUNEIFORM SIGN MUNSUB;Lo;0;L;;;;;N;;;;; -12231;CUNEIFORM SIGN MURGU2;Lo;0;L;;;;;N;;;;; -12232;CUNEIFORM SIGN MUSH;Lo;0;L;;;;;N;;;;; -12233;CUNEIFORM SIGN MUSH TIMES A;Lo;0;L;;;;;N;;;;; -12234;CUNEIFORM SIGN MUSH TIMES KUR;Lo;0;L;;;;;N;;;;; -12235;CUNEIFORM SIGN MUSH TIMES ZA;Lo;0;L;;;;;N;;;;; -12236;CUNEIFORM SIGN MUSH OVER MUSH;Lo;0;L;;;;;N;;;;; -12237;CUNEIFORM SIGN MUSH OVER MUSH TIMES A PLUS NA;Lo;0;L;;;;;N;;;;; -12238;CUNEIFORM SIGN MUSH CROSSING MUSH;Lo;0;L;;;;;N;;;;; -12239;CUNEIFORM SIGN MUSH3;Lo;0;L;;;;;N;;;;; -1223A;CUNEIFORM SIGN MUSH3 TIMES A;Lo;0;L;;;;;N;;;;; -1223B;CUNEIFORM SIGN MUSH3 TIMES A PLUS DI;Lo;0;L;;;;;N;;;;; -1223C;CUNEIFORM SIGN MUSH3 TIMES DI;Lo;0;L;;;;;N;;;;; -1223D;CUNEIFORM SIGN MUSH3 GUNU;Lo;0;L;;;;;N;;;;; -1223E;CUNEIFORM SIGN NA;Lo;0;L;;;;;N;;;;; -1223F;CUNEIFORM SIGN NA2;Lo;0;L;;;;;N;;;;; -12240;CUNEIFORM SIGN NAGA;Lo;0;L;;;;;N;;;;; -12241;CUNEIFORM SIGN NAGA INVERTED;Lo;0;L;;;;;N;;;;; -12242;CUNEIFORM SIGN NAGA TIMES SHU TENU;Lo;0;L;;;;;N;;;;; -12243;CUNEIFORM SIGN NAGA OPPOSING NAGA;Lo;0;L;;;;;N;;;;; -12244;CUNEIFORM SIGN NAGAR;Lo;0;L;;;;;N;;;;; -12245;CUNEIFORM SIGN NAM NUTILLU;Lo;0;L;;;;;N;;;;; -12246;CUNEIFORM SIGN NAM;Lo;0;L;;;;;N;;;;; -12247;CUNEIFORM SIGN NAM2;Lo;0;L;;;;;N;;;;; -12248;CUNEIFORM SIGN NE;Lo;0;L;;;;;N;;;;; -12249;CUNEIFORM SIGN NE TIMES A;Lo;0;L;;;;;N;;;;; -1224A;CUNEIFORM SIGN NE TIMES UD;Lo;0;L;;;;;N;;;;; -1224B;CUNEIFORM SIGN NE SHESHIG;Lo;0;L;;;;;N;;;;; -1224C;CUNEIFORM SIGN NI;Lo;0;L;;;;;N;;;;; -1224D;CUNEIFORM SIGN NI TIMES E;Lo;0;L;;;;;N;;;;; -1224E;CUNEIFORM SIGN NI2;Lo;0;L;;;;;N;;;;; -1224F;CUNEIFORM SIGN NIM;Lo;0;L;;;;;N;;;;; -12250;CUNEIFORM SIGN NIM TIMES GAN2 TENU;Lo;0;L;;;;;N;;;;; -12251;CUNEIFORM SIGN NIM TIMES GAR PLUS GAN2 TENU;Lo;0;L;;;;;N;;;;; -12252;CUNEIFORM SIGN NINDA2;Lo;0;L;;;;;N;;;;; -12253;CUNEIFORM SIGN NINDA2 TIMES AN;Lo;0;L;;;;;N;;;;; -12254;CUNEIFORM SIGN NINDA2 TIMES ASH;Lo;0;L;;;;;N;;;;; -12255;CUNEIFORM SIGN NINDA2 TIMES ASH PLUS ASH;Lo;0;L;;;;;N;;;;; -12256;CUNEIFORM SIGN NINDA2 TIMES GUD;Lo;0;L;;;;;N;;;;; -12257;CUNEIFORM SIGN NINDA2 TIMES ME PLUS GAN2 TENU;Lo;0;L;;;;;N;;;;; -12258;CUNEIFORM SIGN NINDA2 TIMES NE;Lo;0;L;;;;;N;;;;; -12259;CUNEIFORM SIGN NINDA2 TIMES NUN;Lo;0;L;;;;;N;;;;; -1225A;CUNEIFORM SIGN NINDA2 TIMES SHE;Lo;0;L;;;;;N;;;;; -1225B;CUNEIFORM SIGN NINDA2 TIMES SHE PLUS A AN;Lo;0;L;;;;;N;;;;; -1225C;CUNEIFORM SIGN NINDA2 TIMES SHE PLUS ASH;Lo;0;L;;;;;N;;;;; -1225D;CUNEIFORM SIGN NINDA2 TIMES SHE PLUS ASH PLUS ASH;Lo;0;L;;;;;N;;;;; -1225E;CUNEIFORM SIGN NINDA2 TIMES U2 PLUS ASH;Lo;0;L;;;;;N;;;;; -1225F;CUNEIFORM SIGN NINDA2 TIMES USH;Lo;0;L;;;;;N;;;;; -12260;CUNEIFORM SIGN NISAG;Lo;0;L;;;;;N;;;;; -12261;CUNEIFORM SIGN NU;Lo;0;L;;;;;N;;;;; -12262;CUNEIFORM SIGN NU11;Lo;0;L;;;;;N;;;;; -12263;CUNEIFORM SIGN NUN;Lo;0;L;;;;;N;;;;; -12264;CUNEIFORM SIGN NUN LAGAR TIMES GAR;Lo;0;L;;;;;N;;;;; -12265;CUNEIFORM SIGN NUN LAGAR TIMES MASH;Lo;0;L;;;;;N;;;;; -12266;CUNEIFORM SIGN NUN LAGAR TIMES SAL;Lo;0;L;;;;;N;;;;; -12267;CUNEIFORM SIGN NUN LAGAR TIMES SAL OVER NUN LAGAR TIMES SAL;Lo;0;L;;;;;N;;;;; -12268;CUNEIFORM SIGN NUN LAGAR TIMES USH;Lo;0;L;;;;;N;;;;; -12269;CUNEIFORM SIGN NUN TENU;Lo;0;L;;;;;N;;;;; -1226A;CUNEIFORM SIGN NUN OVER NUN;Lo;0;L;;;;;N;;;;; -1226B;CUNEIFORM SIGN NUN CROSSING NUN;Lo;0;L;;;;;N;;;;; -1226C;CUNEIFORM SIGN NUN CROSSING NUN LAGAR OVER LAGAR;Lo;0;L;;;;;N;;;;; -1226D;CUNEIFORM SIGN NUNUZ;Lo;0;L;;;;;N;;;;; -1226E;CUNEIFORM SIGN NUNUZ AB2 TIMES ASHGAB;Lo;0;L;;;;;N;;;;; -1226F;CUNEIFORM SIGN NUNUZ AB2 TIMES BI;Lo;0;L;;;;;N;;;;; -12270;CUNEIFORM SIGN NUNUZ AB2 TIMES DUG;Lo;0;L;;;;;N;;;;; -12271;CUNEIFORM SIGN NUNUZ AB2 TIMES GUD;Lo;0;L;;;;;N;;;;; -12272;CUNEIFORM SIGN NUNUZ AB2 TIMES IGI GUNU;Lo;0;L;;;;;N;;;;; -12273;CUNEIFORM SIGN NUNUZ AB2 TIMES KAD3;Lo;0;L;;;;;N;;;;; -12274;CUNEIFORM SIGN NUNUZ AB2 TIMES LA;Lo;0;L;;;;;N;;;;; -12275;CUNEIFORM SIGN NUNUZ AB2 TIMES NE;Lo;0;L;;;;;N;;;;; -12276;CUNEIFORM SIGN NUNUZ AB2 TIMES SILA3;Lo;0;L;;;;;N;;;;; -12277;CUNEIFORM SIGN NUNUZ AB2 TIMES U2;Lo;0;L;;;;;N;;;;; -12278;CUNEIFORM SIGN NUNUZ KISIM5 TIMES BI;Lo;0;L;;;;;N;;;;; -12279;CUNEIFORM SIGN NUNUZ KISIM5 TIMES BI U;Lo;0;L;;;;;N;;;;; -1227A;CUNEIFORM SIGN PA;Lo;0;L;;;;;N;;;;; -1227B;CUNEIFORM SIGN PAD;Lo;0;L;;;;;N;;;;; -1227C;CUNEIFORM SIGN PAN;Lo;0;L;;;;;N;;;;; -1227D;CUNEIFORM SIGN PAP;Lo;0;L;;;;;N;;;;; -1227E;CUNEIFORM SIGN PESH2;Lo;0;L;;;;;N;;;;; -1227F;CUNEIFORM SIGN PI;Lo;0;L;;;;;N;;;;; -12280;CUNEIFORM SIGN PI TIMES A;Lo;0;L;;;;;N;;;;; -12281;CUNEIFORM SIGN PI TIMES AB;Lo;0;L;;;;;N;;;;; -12282;CUNEIFORM SIGN PI TIMES BI;Lo;0;L;;;;;N;;;;; -12283;CUNEIFORM SIGN PI TIMES BU;Lo;0;L;;;;;N;;;;; -12284;CUNEIFORM SIGN PI TIMES E;Lo;0;L;;;;;N;;;;; -12285;CUNEIFORM SIGN PI TIMES I;Lo;0;L;;;;;N;;;;; -12286;CUNEIFORM SIGN PI TIMES IB;Lo;0;L;;;;;N;;;;; -12287;CUNEIFORM SIGN PI TIMES U;Lo;0;L;;;;;N;;;;; -12288;CUNEIFORM SIGN PI TIMES U2;Lo;0;L;;;;;N;;;;; -12289;CUNEIFORM SIGN PI CROSSING PI;Lo;0;L;;;;;N;;;;; -1228A;CUNEIFORM SIGN PIRIG;Lo;0;L;;;;;N;;;;; -1228B;CUNEIFORM SIGN PIRIG TIMES KAL;Lo;0;L;;;;;N;;;;; -1228C;CUNEIFORM SIGN PIRIG TIMES UD;Lo;0;L;;;;;N;;;;; -1228D;CUNEIFORM SIGN PIRIG TIMES ZA;Lo;0;L;;;;;N;;;;; -1228E;CUNEIFORM SIGN PIRIG OPPOSING PIRIG;Lo;0;L;;;;;N;;;;; -1228F;CUNEIFORM SIGN RA;Lo;0;L;;;;;N;;;;; -12290;CUNEIFORM SIGN RAB;Lo;0;L;;;;;N;;;;; -12291;CUNEIFORM SIGN RI;Lo;0;L;;;;;N;;;;; -12292;CUNEIFORM SIGN RU;Lo;0;L;;;;;N;;;;; -12293;CUNEIFORM SIGN SA;Lo;0;L;;;;;N;;;;; -12294;CUNEIFORM SIGN SAG NUTILLU;Lo;0;L;;;;;N;;;;; -12295;CUNEIFORM SIGN SAG;Lo;0;L;;;;;N;;;;; -12296;CUNEIFORM SIGN SAG TIMES A;Lo;0;L;;;;;N;;;;; -12297;CUNEIFORM SIGN SAG TIMES DU;Lo;0;L;;;;;N;;;;; -12298;CUNEIFORM SIGN SAG TIMES DUB;Lo;0;L;;;;;N;;;;; -12299;CUNEIFORM SIGN SAG TIMES HA;Lo;0;L;;;;;N;;;;; -1229A;CUNEIFORM SIGN SAG TIMES KAK;Lo;0;L;;;;;N;;;;; -1229B;CUNEIFORM SIGN SAG TIMES KUR;Lo;0;L;;;;;N;;;;; -1229C;CUNEIFORM SIGN SAG TIMES LUM;Lo;0;L;;;;;N;;;;; -1229D;CUNEIFORM SIGN SAG TIMES MI;Lo;0;L;;;;;N;;;;; -1229E;CUNEIFORM SIGN SAG TIMES NUN;Lo;0;L;;;;;N;;;;; -1229F;CUNEIFORM SIGN SAG TIMES SAL;Lo;0;L;;;;;N;;;;; -122A0;CUNEIFORM SIGN SAG TIMES SHID;Lo;0;L;;;;;N;;;;; -122A1;CUNEIFORM SIGN SAG TIMES TAB;Lo;0;L;;;;;N;;;;; -122A2;CUNEIFORM SIGN SAG TIMES U2;Lo;0;L;;;;;N;;;;; -122A3;CUNEIFORM SIGN SAG TIMES UB;Lo;0;L;;;;;N;;;;; -122A4;CUNEIFORM SIGN SAG TIMES UM;Lo;0;L;;;;;N;;;;; -122A5;CUNEIFORM SIGN SAG TIMES UR;Lo;0;L;;;;;N;;;;; -122A6;CUNEIFORM SIGN SAG TIMES USH;Lo;0;L;;;;;N;;;;; -122A7;CUNEIFORM SIGN SAG OVER SAG;Lo;0;L;;;;;N;;;;; -122A8;CUNEIFORM SIGN SAG GUNU;Lo;0;L;;;;;N;;;;; -122A9;CUNEIFORM SIGN SAL;Lo;0;L;;;;;N;;;;; -122AA;CUNEIFORM SIGN SAL LAGAB TIMES ASH2;Lo;0;L;;;;;N;;;;; -122AB;CUNEIFORM SIGN SANGA2;Lo;0;L;;;;;N;;;;; -122AC;CUNEIFORM SIGN SAR;Lo;0;L;;;;;N;;;;; -122AD;CUNEIFORM SIGN SHA;Lo;0;L;;;;;N;;;;; -122AE;CUNEIFORM SIGN SHA3;Lo;0;L;;;;;N;;;;; -122AF;CUNEIFORM SIGN SHA3 TIMES A;Lo;0;L;;;;;N;;;;; -122B0;CUNEIFORM SIGN SHA3 TIMES BAD;Lo;0;L;;;;;N;;;;; -122B1;CUNEIFORM SIGN SHA3 TIMES GISH;Lo;0;L;;;;;N;;;;; -122B2;CUNEIFORM SIGN SHA3 TIMES NE;Lo;0;L;;;;;N;;;;; -122B3;CUNEIFORM SIGN SHA3 TIMES SHU2;Lo;0;L;;;;;N;;;;; -122B4;CUNEIFORM SIGN SHA3 TIMES TUR;Lo;0;L;;;;;N;;;;; -122B5;CUNEIFORM SIGN SHA3 TIMES U;Lo;0;L;;;;;N;;;;; -122B6;CUNEIFORM SIGN SHA3 TIMES U PLUS A;Lo;0;L;;;;;N;;;;; -122B7;CUNEIFORM SIGN SHA6;Lo;0;L;;;;;N;;;;; -122B8;CUNEIFORM SIGN SHAB6;Lo;0;L;;;;;N;;;;; -122B9;CUNEIFORM SIGN SHAR2;Lo;0;L;;;;;N;;;;; -122BA;CUNEIFORM SIGN SHE;Lo;0;L;;;;;N;;;;; -122BB;CUNEIFORM SIGN SHE HU;Lo;0;L;;;;;N;;;;; -122BC;CUNEIFORM SIGN SHE OVER SHE GAD OVER GAD GAR OVER GAR;Lo;0;L;;;;;N;;;;; -122BD;CUNEIFORM SIGN SHE OVER SHE TAB OVER TAB GAR OVER GAR;Lo;0;L;;;;;N;;;;; -122BE;CUNEIFORM SIGN SHEG9;Lo;0;L;;;;;N;;;;; -122BF;CUNEIFORM SIGN SHEN;Lo;0;L;;;;;N;;;;; -122C0;CUNEIFORM SIGN SHESH;Lo;0;L;;;;;N;;;;; -122C1;CUNEIFORM SIGN SHESH2;Lo;0;L;;;;;N;;;;; -122C2;CUNEIFORM SIGN SHESHLAM;Lo;0;L;;;;;N;;;;; -122C3;CUNEIFORM SIGN SHID;Lo;0;L;;;;;N;;;;; -122C4;CUNEIFORM SIGN SHID TIMES A;Lo;0;L;;;;;N;;;;; -122C5;CUNEIFORM SIGN SHID TIMES IM;Lo;0;L;;;;;N;;;;; -122C6;CUNEIFORM SIGN SHIM;Lo;0;L;;;;;N;;;;; -122C7;CUNEIFORM SIGN SHIM TIMES A;Lo;0;L;;;;;N;;;;; -122C8;CUNEIFORM SIGN SHIM TIMES BAL;Lo;0;L;;;;;N;;;;; -122C9;CUNEIFORM SIGN SHIM TIMES BULUG;Lo;0;L;;;;;N;;;;; -122CA;CUNEIFORM SIGN SHIM TIMES DIN;Lo;0;L;;;;;N;;;;; -122CB;CUNEIFORM SIGN SHIM TIMES GAR;Lo;0;L;;;;;N;;;;; -122CC;CUNEIFORM SIGN SHIM TIMES IGI;Lo;0;L;;;;;N;;;;; -122CD;CUNEIFORM SIGN SHIM TIMES IGI GUNU;Lo;0;L;;;;;N;;;;; -122CE;CUNEIFORM SIGN SHIM TIMES KUSHU2;Lo;0;L;;;;;N;;;;; -122CF;CUNEIFORM SIGN SHIM TIMES LUL;Lo;0;L;;;;;N;;;;; -122D0;CUNEIFORM SIGN SHIM TIMES MUG;Lo;0;L;;;;;N;;;;; -122D1;CUNEIFORM SIGN SHIM TIMES SAL;Lo;0;L;;;;;N;;;;; -122D2;CUNEIFORM SIGN SHINIG;Lo;0;L;;;;;N;;;;; -122D3;CUNEIFORM SIGN SHIR;Lo;0;L;;;;;N;;;;; -122D4;CUNEIFORM SIGN SHIR TENU;Lo;0;L;;;;;N;;;;; -122D5;CUNEIFORM SIGN SHIR OVER SHIR BUR OVER BUR;Lo;0;L;;;;;N;;;;; -122D6;CUNEIFORM SIGN SHITA;Lo;0;L;;;;;N;;;;; -122D7;CUNEIFORM SIGN SHU;Lo;0;L;;;;;N;;;;; -122D8;CUNEIFORM SIGN SHU OVER INVERTED SHU;Lo;0;L;;;;;N;;;;; -122D9;CUNEIFORM SIGN SHU2;Lo;0;L;;;;;N;;;;; -122DA;CUNEIFORM SIGN SHUBUR;Lo;0;L;;;;;N;;;;; -122DB;CUNEIFORM SIGN SI;Lo;0;L;;;;;N;;;;; -122DC;CUNEIFORM SIGN SI GUNU;Lo;0;L;;;;;N;;;;; -122DD;CUNEIFORM SIGN SIG;Lo;0;L;;;;;N;;;;; -122DE;CUNEIFORM SIGN SIG4;Lo;0;L;;;;;N;;;;; -122DF;CUNEIFORM SIGN SIG4 OVER SIG4 SHU2;Lo;0;L;;;;;N;;;;; -122E0;CUNEIFORM SIGN SIK2;Lo;0;L;;;;;N;;;;; -122E1;CUNEIFORM SIGN SILA3;Lo;0;L;;;;;N;;;;; -122E2;CUNEIFORM SIGN SU;Lo;0;L;;;;;N;;;;; -122E3;CUNEIFORM SIGN SU OVER SU;Lo;0;L;;;;;N;;;;; -122E4;CUNEIFORM SIGN SUD;Lo;0;L;;;;;N;;;;; -122E5;CUNEIFORM SIGN SUD2;Lo;0;L;;;;;N;;;;; -122E6;CUNEIFORM SIGN SUHUR;Lo;0;L;;;;;N;;;;; -122E7;CUNEIFORM SIGN SUM;Lo;0;L;;;;;N;;;;; -122E8;CUNEIFORM SIGN SUMASH;Lo;0;L;;;;;N;;;;; -122E9;CUNEIFORM SIGN SUR;Lo;0;L;;;;;N;;;;; -122EA;CUNEIFORM SIGN SUR9;Lo;0;L;;;;;N;;;;; -122EB;CUNEIFORM SIGN TA;Lo;0;L;;;;;N;;;;; -122EC;CUNEIFORM SIGN TA ASTERISK;Lo;0;L;;;;;N;;;;; -122ED;CUNEIFORM SIGN TA TIMES HI;Lo;0;L;;;;;N;;;;; -122EE;CUNEIFORM SIGN TA TIMES MI;Lo;0;L;;;;;N;;;;; -122EF;CUNEIFORM SIGN TA GUNU;Lo;0;L;;;;;N;;;;; -122F0;CUNEIFORM SIGN TAB;Lo;0;L;;;;;N;;;;; -122F1;CUNEIFORM SIGN TAB OVER TAB NI OVER NI DISH OVER DISH;Lo;0;L;;;;;N;;;;; -122F2;CUNEIFORM SIGN TAB SQUARED;Lo;0;L;;;;;N;;;;; -122F3;CUNEIFORM SIGN TAG;Lo;0;L;;;;;N;;;;; -122F4;CUNEIFORM SIGN TAG TIMES BI;Lo;0;L;;;;;N;;;;; -122F5;CUNEIFORM SIGN TAG TIMES GUD;Lo;0;L;;;;;N;;;;; -122F6;CUNEIFORM SIGN TAG TIMES SHE;Lo;0;L;;;;;N;;;;; -122F7;CUNEIFORM SIGN TAG TIMES SHU;Lo;0;L;;;;;N;;;;; -122F8;CUNEIFORM SIGN TAG TIMES TUG2;Lo;0;L;;;;;N;;;;; -122F9;CUNEIFORM SIGN TAG TIMES UD;Lo;0;L;;;;;N;;;;; -122FA;CUNEIFORM SIGN TAK4;Lo;0;L;;;;;N;;;;; -122FB;CUNEIFORM SIGN TAR;Lo;0;L;;;;;N;;;;; -122FC;CUNEIFORM SIGN TE;Lo;0;L;;;;;N;;;;; -122FD;CUNEIFORM SIGN TE GUNU;Lo;0;L;;;;;N;;;;; -122FE;CUNEIFORM SIGN TI;Lo;0;L;;;;;N;;;;; -122FF;CUNEIFORM SIGN TI TENU;Lo;0;L;;;;;N;;;;; -12300;CUNEIFORM SIGN TIL;Lo;0;L;;;;;N;;;;; -12301;CUNEIFORM SIGN TIR;Lo;0;L;;;;;N;;;;; -12302;CUNEIFORM SIGN TIR TIMES TAK4;Lo;0;L;;;;;N;;;;; -12303;CUNEIFORM SIGN TIR OVER TIR;Lo;0;L;;;;;N;;;;; -12304;CUNEIFORM SIGN TIR OVER TIR GAD OVER GAD GAR OVER GAR;Lo;0;L;;;;;N;;;;; -12305;CUNEIFORM SIGN TU;Lo;0;L;;;;;N;;;;; -12306;CUNEIFORM SIGN TUG2;Lo;0;L;;;;;N;;;;; -12307;CUNEIFORM SIGN TUK;Lo;0;L;;;;;N;;;;; -12308;CUNEIFORM SIGN TUM;Lo;0;L;;;;;N;;;;; -12309;CUNEIFORM SIGN TUR;Lo;0;L;;;;;N;;;;; -1230A;CUNEIFORM SIGN TUR OVER TUR ZA OVER ZA;Lo;0;L;;;;;N;;;;; -1230B;CUNEIFORM SIGN U;Lo;0;L;;;;;N;;;;; -1230C;CUNEIFORM SIGN U GUD;Lo;0;L;;;;;N;;;;; -1230D;CUNEIFORM SIGN U U U;Lo;0;L;;;;;N;;;;; -1230E;CUNEIFORM SIGN U OVER U PA OVER PA GAR OVER GAR;Lo;0;L;;;;;N;;;;; -1230F;CUNEIFORM SIGN U OVER U SUR OVER SUR;Lo;0;L;;;;;N;;;;; -12310;CUNEIFORM SIGN U OVER U U REVERSED OVER U REVERSED;Lo;0;L;;;;;N;;;;; -12311;CUNEIFORM SIGN U2;Lo;0;L;;;;;N;;;;; -12312;CUNEIFORM SIGN UB;Lo;0;L;;;;;N;;;;; -12313;CUNEIFORM SIGN UD;Lo;0;L;;;;;N;;;;; -12314;CUNEIFORM SIGN UD KUSHU2;Lo;0;L;;;;;N;;;;; -12315;CUNEIFORM SIGN UD TIMES BAD;Lo;0;L;;;;;N;;;;; -12316;CUNEIFORM SIGN UD TIMES MI;Lo;0;L;;;;;N;;;;; -12317;CUNEIFORM SIGN UD TIMES U PLUS U PLUS U;Lo;0;L;;;;;N;;;;; -12318;CUNEIFORM SIGN UD TIMES U PLUS U PLUS U GUNU;Lo;0;L;;;;;N;;;;; -12319;CUNEIFORM SIGN UD GUNU;Lo;0;L;;;;;N;;;;; -1231A;CUNEIFORM SIGN UD SHESHIG;Lo;0;L;;;;;N;;;;; -1231B;CUNEIFORM SIGN UD SHESHIG TIMES BAD;Lo;0;L;;;;;N;;;;; -1231C;CUNEIFORM SIGN UDUG;Lo;0;L;;;;;N;;;;; -1231D;CUNEIFORM SIGN UM;Lo;0;L;;;;;N;;;;; -1231E;CUNEIFORM SIGN UM TIMES LAGAB;Lo;0;L;;;;;N;;;;; -1231F;CUNEIFORM SIGN UM TIMES ME PLUS DA;Lo;0;L;;;;;N;;;;; -12320;CUNEIFORM SIGN UM TIMES SHA3;Lo;0;L;;;;;N;;;;; -12321;CUNEIFORM SIGN UM TIMES U;Lo;0;L;;;;;N;;;;; -12322;CUNEIFORM SIGN UMBIN;Lo;0;L;;;;;N;;;;; -12323;CUNEIFORM SIGN UMUM;Lo;0;L;;;;;N;;;;; -12324;CUNEIFORM SIGN UMUM TIMES KASKAL;Lo;0;L;;;;;N;;;;; -12325;CUNEIFORM SIGN UMUM TIMES PA;Lo;0;L;;;;;N;;;;; -12326;CUNEIFORM SIGN UN;Lo;0;L;;;;;N;;;;; -12327;CUNEIFORM SIGN UN GUNU;Lo;0;L;;;;;N;;;;; -12328;CUNEIFORM SIGN UR;Lo;0;L;;;;;N;;;;; -12329;CUNEIFORM SIGN UR CROSSING UR;Lo;0;L;;;;;N;;;;; -1232A;CUNEIFORM SIGN UR SHESHIG;Lo;0;L;;;;;N;;;;; -1232B;CUNEIFORM SIGN UR2;Lo;0;L;;;;;N;;;;; -1232C;CUNEIFORM SIGN UR2 TIMES A PLUS HA;Lo;0;L;;;;;N;;;;; -1232D;CUNEIFORM SIGN UR2 TIMES A PLUS NA;Lo;0;L;;;;;N;;;;; -1232E;CUNEIFORM SIGN UR2 TIMES AL;Lo;0;L;;;;;N;;;;; -1232F;CUNEIFORM SIGN UR2 TIMES HA;Lo;0;L;;;;;N;;;;; -12330;CUNEIFORM SIGN UR2 TIMES NUN;Lo;0;L;;;;;N;;;;; -12331;CUNEIFORM SIGN UR2 TIMES U2;Lo;0;L;;;;;N;;;;; -12332;CUNEIFORM SIGN UR2 TIMES U2 PLUS ASH;Lo;0;L;;;;;N;;;;; -12333;CUNEIFORM SIGN UR2 TIMES U2 PLUS BI;Lo;0;L;;;;;N;;;;; -12334;CUNEIFORM SIGN UR4;Lo;0;L;;;;;N;;;;; -12335;CUNEIFORM SIGN URI;Lo;0;L;;;;;N;;;;; -12336;CUNEIFORM SIGN URI3;Lo;0;L;;;;;N;;;;; -12337;CUNEIFORM SIGN URU;Lo;0;L;;;;;N;;;;; -12338;CUNEIFORM SIGN URU TIMES A;Lo;0;L;;;;;N;;;;; -12339;CUNEIFORM SIGN URU TIMES ASHGAB;Lo;0;L;;;;;N;;;;; -1233A;CUNEIFORM SIGN URU TIMES BAR;Lo;0;L;;;;;N;;;;; -1233B;CUNEIFORM SIGN URU TIMES DUN;Lo;0;L;;;;;N;;;;; -1233C;CUNEIFORM SIGN URU TIMES GA;Lo;0;L;;;;;N;;;;; -1233D;CUNEIFORM SIGN URU TIMES GAL;Lo;0;L;;;;;N;;;;; -1233E;CUNEIFORM SIGN URU TIMES GAN2 TENU;Lo;0;L;;;;;N;;;;; -1233F;CUNEIFORM SIGN URU TIMES GAR;Lo;0;L;;;;;N;;;;; -12340;CUNEIFORM SIGN URU TIMES GU;Lo;0;L;;;;;N;;;;; -12341;CUNEIFORM SIGN URU TIMES HA;Lo;0;L;;;;;N;;;;; -12342;CUNEIFORM SIGN URU TIMES IGI;Lo;0;L;;;;;N;;;;; -12343;CUNEIFORM SIGN URU TIMES IM;Lo;0;L;;;;;N;;;;; -12344;CUNEIFORM SIGN URU TIMES ISH;Lo;0;L;;;;;N;;;;; -12345;CUNEIFORM SIGN URU TIMES KI;Lo;0;L;;;;;N;;;;; -12346;CUNEIFORM SIGN URU TIMES LUM;Lo;0;L;;;;;N;;;;; -12347;CUNEIFORM SIGN URU TIMES MIN;Lo;0;L;;;;;N;;;;; -12348;CUNEIFORM SIGN URU TIMES PA;Lo;0;L;;;;;N;;;;; -12349;CUNEIFORM SIGN URU TIMES SHE;Lo;0;L;;;;;N;;;;; -1234A;CUNEIFORM SIGN URU TIMES SIG4;Lo;0;L;;;;;N;;;;; -1234B;CUNEIFORM SIGN URU TIMES TU;Lo;0;L;;;;;N;;;;; -1234C;CUNEIFORM SIGN URU TIMES U PLUS GUD;Lo;0;L;;;;;N;;;;; -1234D;CUNEIFORM SIGN URU TIMES UD;Lo;0;L;;;;;N;;;;; -1234E;CUNEIFORM SIGN URU TIMES URUDA;Lo;0;L;;;;;N;;;;; -1234F;CUNEIFORM SIGN URUDA;Lo;0;L;;;;;N;;;;; -12350;CUNEIFORM SIGN URUDA TIMES U;Lo;0;L;;;;;N;;;;; -12351;CUNEIFORM SIGN USH;Lo;0;L;;;;;N;;;;; -12352;CUNEIFORM SIGN USH TIMES A;Lo;0;L;;;;;N;;;;; -12353;CUNEIFORM SIGN USH TIMES KU;Lo;0;L;;;;;N;;;;; -12354;CUNEIFORM SIGN USH TIMES KUR;Lo;0;L;;;;;N;;;;; -12355;CUNEIFORM SIGN USH TIMES TAK4;Lo;0;L;;;;;N;;;;; -12356;CUNEIFORM SIGN USHX;Lo;0;L;;;;;N;;;;; -12357;CUNEIFORM SIGN USH2;Lo;0;L;;;;;N;;;;; -12358;CUNEIFORM SIGN USHUMX;Lo;0;L;;;;;N;;;;; -12359;CUNEIFORM SIGN UTUKI;Lo;0;L;;;;;N;;;;; -1235A;CUNEIFORM SIGN UZ3;Lo;0;L;;;;;N;;;;; -1235B;CUNEIFORM SIGN UZ3 TIMES KASKAL;Lo;0;L;;;;;N;;;;; -1235C;CUNEIFORM SIGN UZU;Lo;0;L;;;;;N;;;;; -1235D;CUNEIFORM SIGN ZA;Lo;0;L;;;;;N;;;;; -1235E;CUNEIFORM SIGN ZA TENU;Lo;0;L;;;;;N;;;;; -1235F;CUNEIFORM SIGN ZA SQUARED TIMES KUR;Lo;0;L;;;;;N;;;;; -12360;CUNEIFORM SIGN ZAG;Lo;0;L;;;;;N;;;;; -12361;CUNEIFORM SIGN ZAMX;Lo;0;L;;;;;N;;;;; -12362;CUNEIFORM SIGN ZE2;Lo;0;L;;;;;N;;;;; -12363;CUNEIFORM SIGN ZI;Lo;0;L;;;;;N;;;;; -12364;CUNEIFORM SIGN ZI OVER ZI;Lo;0;L;;;;;N;;;;; -12365;CUNEIFORM SIGN ZI3;Lo;0;L;;;;;N;;;;; -12366;CUNEIFORM SIGN ZIB;Lo;0;L;;;;;N;;;;; -12367;CUNEIFORM SIGN ZIB KABA TENU;Lo;0;L;;;;;N;;;;; -12368;CUNEIFORM SIGN ZIG;Lo;0;L;;;;;N;;;;; -12369;CUNEIFORM SIGN ZIZ2;Lo;0;L;;;;;N;;;;; -1236A;CUNEIFORM SIGN ZU;Lo;0;L;;;;;N;;;;; -1236B;CUNEIFORM SIGN ZU5;Lo;0;L;;;;;N;;;;; -1236C;CUNEIFORM SIGN ZU5 TIMES A;Lo;0;L;;;;;N;;;;; -1236D;CUNEIFORM SIGN ZUBUR;Lo;0;L;;;;;N;;;;; -1236E;CUNEIFORM SIGN ZUM;Lo;0;L;;;;;N;;;;; -12400;CUNEIFORM NUMERIC SIGN TWO ASH;Nl;0;L;;;;2;N;;;;; -12401;CUNEIFORM NUMERIC SIGN THREE ASH;Nl;0;L;;;;3;N;;;;; -12402;CUNEIFORM NUMERIC SIGN FOUR ASH;Nl;0;L;;;;4;N;;;;; -12403;CUNEIFORM NUMERIC SIGN FIVE ASH;Nl;0;L;;;;5;N;;;;; -12404;CUNEIFORM NUMERIC SIGN SIX ASH;Nl;0;L;;;;6;N;;;;; -12405;CUNEIFORM NUMERIC SIGN SEVEN ASH;Nl;0;L;;;;7;N;;;;; -12406;CUNEIFORM NUMERIC SIGN EIGHT ASH;Nl;0;L;;;;8;N;;;;; -12407;CUNEIFORM NUMERIC SIGN NINE ASH;Nl;0;L;;;;9;N;;;;; -12408;CUNEIFORM NUMERIC SIGN THREE DISH;Nl;0;L;;;;3;N;;;;; -12409;CUNEIFORM NUMERIC SIGN FOUR DISH;Nl;0;L;;;;4;N;;;;; -1240A;CUNEIFORM NUMERIC SIGN FIVE DISH;Nl;0;L;;;;5;N;;;;; -1240B;CUNEIFORM NUMERIC SIGN SIX DISH;Nl;0;L;;;;6;N;;;;; -1240C;CUNEIFORM NUMERIC SIGN SEVEN DISH;Nl;0;L;;;;7;N;;;;; -1240D;CUNEIFORM NUMERIC SIGN EIGHT DISH;Nl;0;L;;;;8;N;;;;; -1240E;CUNEIFORM NUMERIC SIGN NINE DISH;Nl;0;L;;;;9;N;;;;; -1240F;CUNEIFORM NUMERIC SIGN FOUR U;Nl;0;L;;;;4;N;;;;; -12410;CUNEIFORM NUMERIC SIGN FIVE U;Nl;0;L;;;;5;N;;;;; -12411;CUNEIFORM NUMERIC SIGN SIX U;Nl;0;L;;;;6;N;;;;; -12412;CUNEIFORM NUMERIC SIGN SEVEN U;Nl;0;L;;;;7;N;;;;; -12413;CUNEIFORM NUMERIC SIGN EIGHT U;Nl;0;L;;;;8;N;;;;; -12414;CUNEIFORM NUMERIC SIGN NINE U;Nl;0;L;;;;9;N;;;;; -12415;CUNEIFORM NUMERIC SIGN ONE GESH2;Nl;0;L;;;;1;N;;;;; -12416;CUNEIFORM NUMERIC SIGN TWO GESH2;Nl;0;L;;;;2;N;;;;; -12417;CUNEIFORM NUMERIC SIGN THREE GESH2;Nl;0;L;;;;3;N;;;;; -12418;CUNEIFORM NUMERIC SIGN FOUR GESH2;Nl;0;L;;;;4;N;;;;; -12419;CUNEIFORM NUMERIC SIGN FIVE GESH2;Nl;0;L;;;;5;N;;;;; -1241A;CUNEIFORM NUMERIC SIGN SIX GESH2;Nl;0;L;;;;6;N;;;;; -1241B;CUNEIFORM NUMERIC SIGN SEVEN GESH2;Nl;0;L;;;;7;N;;;;; -1241C;CUNEIFORM NUMERIC SIGN EIGHT GESH2;Nl;0;L;;;;8;N;;;;; -1241D;CUNEIFORM NUMERIC SIGN NINE GESH2;Nl;0;L;;;;9;N;;;;; -1241E;CUNEIFORM NUMERIC SIGN ONE GESHU;Nl;0;L;;;;1;N;;;;; -1241F;CUNEIFORM NUMERIC SIGN TWO GESHU;Nl;0;L;;;;2;N;;;;; -12420;CUNEIFORM NUMERIC SIGN THREE GESHU;Nl;0;L;;;;3;N;;;;; -12421;CUNEIFORM NUMERIC SIGN FOUR GESHU;Nl;0;L;;;;4;N;;;;; -12422;CUNEIFORM NUMERIC SIGN FIVE GESHU;Nl;0;L;;;;5;N;;;;; -12423;CUNEIFORM NUMERIC SIGN TWO SHAR2;Nl;0;L;;;;2;N;;;;; -12424;CUNEIFORM NUMERIC SIGN THREE SHAR2;Nl;0;L;;;;3;N;;;;; -12425;CUNEIFORM NUMERIC SIGN THREE SHAR2 VARIANT FORM;Nl;0;L;;;;3;N;;;;; -12426;CUNEIFORM NUMERIC SIGN FOUR SHAR2;Nl;0;L;;;;4;N;;;;; -12427;CUNEIFORM NUMERIC SIGN FIVE SHAR2;Nl;0;L;;;;5;N;;;;; -12428;CUNEIFORM NUMERIC SIGN SIX SHAR2;Nl;0;L;;;;6;N;;;;; -12429;CUNEIFORM NUMERIC SIGN SEVEN SHAR2;Nl;0;L;;;;7;N;;;;; -1242A;CUNEIFORM NUMERIC SIGN EIGHT SHAR2;Nl;0;L;;;;8;N;;;;; -1242B;CUNEIFORM NUMERIC SIGN NINE SHAR2;Nl;0;L;;;;9;N;;;;; -1242C;CUNEIFORM NUMERIC SIGN ONE SHARU;Nl;0;L;;;;1;N;;;;; -1242D;CUNEIFORM NUMERIC SIGN TWO SHARU;Nl;0;L;;;;2;N;;;;; -1242E;CUNEIFORM NUMERIC SIGN THREE SHARU;Nl;0;L;;;;3;N;;;;; -1242F;CUNEIFORM NUMERIC SIGN THREE SHARU VARIANT FORM;Nl;0;L;;;;3;N;;;;; -12430;CUNEIFORM NUMERIC SIGN FOUR SHARU;Nl;0;L;;;;4;N;;;;; -12431;CUNEIFORM NUMERIC SIGN FIVE SHARU;Nl;0;L;;;;5;N;;;;; -12432;CUNEIFORM NUMERIC SIGN SHAR2 TIMES GAL PLUS DISH;Nl;0;L;;;;;N;;;;; -12433;CUNEIFORM NUMERIC SIGN SHAR2 TIMES GAL PLUS MIN;Nl;0;L;;;;;N;;;;; -12434;CUNEIFORM NUMERIC SIGN ONE BURU;Nl;0;L;;;;1;N;;;;; -12435;CUNEIFORM NUMERIC SIGN TWO BURU;Nl;0;L;;;;2;N;;;;; -12436;CUNEIFORM NUMERIC SIGN THREE BURU;Nl;0;L;;;;3;N;;;;; -12437;CUNEIFORM NUMERIC SIGN THREE BURU VARIANT FORM;Nl;0;L;;;;3;N;;;;; -12438;CUNEIFORM NUMERIC SIGN FOUR BURU;Nl;0;L;;;;4;N;;;;; -12439;CUNEIFORM NUMERIC SIGN FIVE BURU;Nl;0;L;;;;5;N;;;;; -1243A;CUNEIFORM NUMERIC SIGN THREE VARIANT FORM ESH16;Nl;0;L;;;;3;N;;;;; -1243B;CUNEIFORM NUMERIC SIGN THREE VARIANT FORM ESH21;Nl;0;L;;;;3;N;;;;; -1243C;CUNEIFORM NUMERIC SIGN FOUR VARIANT FORM LIMMU;Nl;0;L;;;;4;N;;;;; -1243D;CUNEIFORM NUMERIC SIGN FOUR VARIANT FORM LIMMU4;Nl;0;L;;;;4;N;;;;; -1243E;CUNEIFORM NUMERIC SIGN FOUR VARIANT FORM LIMMU A;Nl;0;L;;;;4;N;;;;; -1243F;CUNEIFORM NUMERIC SIGN FOUR VARIANT FORM LIMMU B;Nl;0;L;;;;4;N;;;;; -12440;CUNEIFORM NUMERIC SIGN SIX VARIANT FORM ASH9;Nl;0;L;;;;6;N;;;;; -12441;CUNEIFORM NUMERIC SIGN SEVEN VARIANT FORM IMIN3;Nl;0;L;;;;7;N;;;;; -12442;CUNEIFORM NUMERIC SIGN SEVEN VARIANT FORM IMIN A;Nl;0;L;;;;7;N;;;;; -12443;CUNEIFORM NUMERIC SIGN SEVEN VARIANT FORM IMIN B;Nl;0;L;;;;7;N;;;;; -12444;CUNEIFORM NUMERIC SIGN EIGHT VARIANT FORM USSU;Nl;0;L;;;;8;N;;;;; -12445;CUNEIFORM NUMERIC SIGN EIGHT VARIANT FORM USSU3;Nl;0;L;;;;8;N;;;;; -12446;CUNEIFORM NUMERIC SIGN NINE VARIANT FORM ILIMMU;Nl;0;L;;;;9;N;;;;; -12447;CUNEIFORM NUMERIC SIGN NINE VARIANT FORM ILIMMU3;Nl;0;L;;;;9;N;;;;; -12448;CUNEIFORM NUMERIC SIGN NINE VARIANT FORM ILIMMU4;Nl;0;L;;;;9;N;;;;; -12449;CUNEIFORM NUMERIC SIGN NINE VARIANT FORM ILIMMU A;Nl;0;L;;;;9;N;;;;; -1244A;CUNEIFORM NUMERIC SIGN TWO ASH TENU;Nl;0;L;;;;2;N;;;;; -1244B;CUNEIFORM NUMERIC SIGN THREE ASH TENU;Nl;0;L;;;;3;N;;;;; -1244C;CUNEIFORM NUMERIC SIGN FOUR ASH TENU;Nl;0;L;;;;4;N;;;;; -1244D;CUNEIFORM NUMERIC SIGN FIVE ASH TENU;Nl;0;L;;;;5;N;;;;; -1244E;CUNEIFORM NUMERIC SIGN SIX ASH TENU;Nl;0;L;;;;6;N;;;;; -1244F;CUNEIFORM NUMERIC SIGN ONE BAN2;Nl;0;L;;;;1;N;;;;; -12450;CUNEIFORM NUMERIC SIGN TWO BAN2;Nl;0;L;;;;2;N;;;;; -12451;CUNEIFORM NUMERIC SIGN THREE BAN2;Nl;0;L;;;;3;N;;;;; -12452;CUNEIFORM NUMERIC SIGN FOUR BAN2;Nl;0;L;;;;4;N;;;;; -12453;CUNEIFORM NUMERIC SIGN FOUR BAN2 VARIANT FORM;Nl;0;L;;;;4;N;;;;; -12454;CUNEIFORM NUMERIC SIGN FIVE BAN2;Nl;0;L;;;;5;N;;;;; -12455;CUNEIFORM NUMERIC SIGN FIVE BAN2 VARIANT FORM;Nl;0;L;;;;5;N;;;;; -12456;CUNEIFORM NUMERIC SIGN NIGIDAMIN;Nl;0;L;;;;;N;;;;; -12457;CUNEIFORM NUMERIC SIGN NIGIDAESH;Nl;0;L;;;;;N;;;;; -12458;CUNEIFORM NUMERIC SIGN ONE ESHE3;Nl;0;L;;;;1;N;;;;; -12459;CUNEIFORM NUMERIC SIGN TWO ESHE3;Nl;0;L;;;;2;N;;;;; -1245A;CUNEIFORM NUMERIC SIGN ONE THIRD DISH;Nl;0;L;;;;1/3;N;;;;; -1245B;CUNEIFORM NUMERIC SIGN TWO THIRDS DISH;Nl;0;L;;;;2/3;N;;;;; -1245C;CUNEIFORM NUMERIC SIGN FIVE SIXTHS DISH;Nl;0;L;;;;5/6;N;;;;; -1245D;CUNEIFORM NUMERIC SIGN ONE THIRD VARIANT FORM A;Nl;0;L;;;;1/3;N;;;;; -1245E;CUNEIFORM NUMERIC SIGN TWO THIRDS VARIANT FORM A;Nl;0;L;;;;2/3;N;;;;; -1245F;CUNEIFORM NUMERIC SIGN ONE EIGHTH ASH;Nl;0;L;;;;1/8;N;;;;; -12460;CUNEIFORM NUMERIC SIGN ONE QUARTER ASH;Nl;0;L;;;;1/4;N;;;;; -12461;CUNEIFORM NUMERIC SIGN OLD ASSYRIAN ONE SIXTH;Nl;0;L;;;;1/6;N;;;;; -12462;CUNEIFORM NUMERIC SIGN OLD ASSYRIAN ONE QUARTER;Nl;0;L;;;;1/4;N;;;;; -12470;CUNEIFORM PUNCTUATION SIGN OLD ASSYRIAN WORD DIVIDER;Po;0;L;;;;;N;;;;; -12471;CUNEIFORM PUNCTUATION SIGN VERTICAL COLON;Po;0;L;;;;;N;;;;; -12472;CUNEIFORM PUNCTUATION SIGN DIAGONAL COLON;Po;0;L;;;;;N;;;;; -12473;CUNEIFORM PUNCTUATION SIGN DIAGONAL TRICOLON;Po;0;L;;;;;N;;;;; -13000;EGYPTIAN HIEROGLYPH A001;Lo;0;L;;;;;N;;;;; -13001;EGYPTIAN HIEROGLYPH A002;Lo;0;L;;;;;N;;;;; -13002;EGYPTIAN HIEROGLYPH A003;Lo;0;L;;;;;N;;;;; -13003;EGYPTIAN HIEROGLYPH A004;Lo;0;L;;;;;N;;;;; -13004;EGYPTIAN HIEROGLYPH A005;Lo;0;L;;;;;N;;;;; -13005;EGYPTIAN HIEROGLYPH A005A;Lo;0;L;;;;;N;;;;; -13006;EGYPTIAN HIEROGLYPH A006;Lo;0;L;;;;;N;;;;; -13007;EGYPTIAN HIEROGLYPH A006A;Lo;0;L;;;;;N;;;;; -13008;EGYPTIAN HIEROGLYPH A006B;Lo;0;L;;;;;N;;;;; -13009;EGYPTIAN HIEROGLYPH A007;Lo;0;L;;;;;N;;;;; -1300A;EGYPTIAN HIEROGLYPH A008;Lo;0;L;;;;;N;;;;; -1300B;EGYPTIAN HIEROGLYPH A009;Lo;0;L;;;;;N;;;;; -1300C;EGYPTIAN HIEROGLYPH A010;Lo;0;L;;;;;N;;;;; -1300D;EGYPTIAN HIEROGLYPH A011;Lo;0;L;;;;;N;;;;; -1300E;EGYPTIAN HIEROGLYPH A012;Lo;0;L;;;;;N;;;;; -1300F;EGYPTIAN HIEROGLYPH A013;Lo;0;L;;;;;N;;;;; -13010;EGYPTIAN HIEROGLYPH A014;Lo;0;L;;;;;N;;;;; -13011;EGYPTIAN HIEROGLYPH A014A;Lo;0;L;;;;;N;;;;; -13012;EGYPTIAN HIEROGLYPH A015;Lo;0;L;;;;;N;;;;; -13013;EGYPTIAN HIEROGLYPH A016;Lo;0;L;;;;;N;;;;; -13014;EGYPTIAN HIEROGLYPH A017;Lo;0;L;;;;;N;;;;; -13015;EGYPTIAN HIEROGLYPH A017A;Lo;0;L;;;;;N;;;;; -13016;EGYPTIAN HIEROGLYPH A018;Lo;0;L;;;;;N;;;;; -13017;EGYPTIAN HIEROGLYPH A019;Lo;0;L;;;;;N;;;;; -13018;EGYPTIAN HIEROGLYPH A020;Lo;0;L;;;;;N;;;;; -13019;EGYPTIAN HIEROGLYPH A021;Lo;0;L;;;;;N;;;;; -1301A;EGYPTIAN HIEROGLYPH A022;Lo;0;L;;;;;N;;;;; -1301B;EGYPTIAN HIEROGLYPH A023;Lo;0;L;;;;;N;;;;; -1301C;EGYPTIAN HIEROGLYPH A024;Lo;0;L;;;;;N;;;;; -1301D;EGYPTIAN HIEROGLYPH A025;Lo;0;L;;;;;N;;;;; -1301E;EGYPTIAN HIEROGLYPH A026;Lo;0;L;;;;;N;;;;; -1301F;EGYPTIAN HIEROGLYPH A027;Lo;0;L;;;;;N;;;;; -13020;EGYPTIAN HIEROGLYPH A028;Lo;0;L;;;;;N;;;;; -13021;EGYPTIAN HIEROGLYPH A029;Lo;0;L;;;;;N;;;;; -13022;EGYPTIAN HIEROGLYPH A030;Lo;0;L;;;;;N;;;;; -13023;EGYPTIAN HIEROGLYPH A031;Lo;0;L;;;;;N;;;;; -13024;EGYPTIAN HIEROGLYPH A032;Lo;0;L;;;;;N;;;;; -13025;EGYPTIAN HIEROGLYPH A032A;Lo;0;L;;;;;N;;;;; -13026;EGYPTIAN HIEROGLYPH A033;Lo;0;L;;;;;N;;;;; -13027;EGYPTIAN HIEROGLYPH A034;Lo;0;L;;;;;N;;;;; -13028;EGYPTIAN HIEROGLYPH A035;Lo;0;L;;;;;N;;;;; -13029;EGYPTIAN HIEROGLYPH A036;Lo;0;L;;;;;N;;;;; -1302A;EGYPTIAN HIEROGLYPH A037;Lo;0;L;;;;;N;;;;; -1302B;EGYPTIAN HIEROGLYPH A038;Lo;0;L;;;;;N;;;;; -1302C;EGYPTIAN HIEROGLYPH A039;Lo;0;L;;;;;N;;;;; -1302D;EGYPTIAN HIEROGLYPH A040;Lo;0;L;;;;;N;;;;; -1302E;EGYPTIAN HIEROGLYPH A040A;Lo;0;L;;;;;N;;;;; -1302F;EGYPTIAN HIEROGLYPH A041;Lo;0;L;;;;;N;;;;; -13030;EGYPTIAN HIEROGLYPH A042;Lo;0;L;;;;;N;;;;; -13031;EGYPTIAN HIEROGLYPH A042A;Lo;0;L;;;;;N;;;;; -13032;EGYPTIAN HIEROGLYPH A043;Lo;0;L;;;;;N;;;;; -13033;EGYPTIAN HIEROGLYPH A043A;Lo;0;L;;;;;N;;;;; -13034;EGYPTIAN HIEROGLYPH A044;Lo;0;L;;;;;N;;;;; -13035;EGYPTIAN HIEROGLYPH A045;Lo;0;L;;;;;N;;;;; -13036;EGYPTIAN HIEROGLYPH A045A;Lo;0;L;;;;;N;;;;; -13037;EGYPTIAN HIEROGLYPH A046;Lo;0;L;;;;;N;;;;; -13038;EGYPTIAN HIEROGLYPH A047;Lo;0;L;;;;;N;;;;; -13039;EGYPTIAN HIEROGLYPH A048;Lo;0;L;;;;;N;;;;; -1303A;EGYPTIAN HIEROGLYPH A049;Lo;0;L;;;;;N;;;;; -1303B;EGYPTIAN HIEROGLYPH A050;Lo;0;L;;;;;N;;;;; -1303C;EGYPTIAN HIEROGLYPH A051;Lo;0;L;;;;;N;;;;; -1303D;EGYPTIAN HIEROGLYPH A052;Lo;0;L;;;;;N;;;;; -1303E;EGYPTIAN HIEROGLYPH A053;Lo;0;L;;;;;N;;;;; -1303F;EGYPTIAN HIEROGLYPH A054;Lo;0;L;;;;;N;;;;; -13040;EGYPTIAN HIEROGLYPH A055;Lo;0;L;;;;;N;;;;; -13041;EGYPTIAN HIEROGLYPH A056;Lo;0;L;;;;;N;;;;; -13042;EGYPTIAN HIEROGLYPH A057;Lo;0;L;;;;;N;;;;; -13043;EGYPTIAN HIEROGLYPH A058;Lo;0;L;;;;;N;;;;; -13044;EGYPTIAN HIEROGLYPH A059;Lo;0;L;;;;;N;;;;; -13045;EGYPTIAN HIEROGLYPH A060;Lo;0;L;;;;;N;;;;; -13046;EGYPTIAN HIEROGLYPH A061;Lo;0;L;;;;;N;;;;; -13047;EGYPTIAN HIEROGLYPH A062;Lo;0;L;;;;;N;;;;; -13048;EGYPTIAN HIEROGLYPH A063;Lo;0;L;;;;;N;;;;; -13049;EGYPTIAN HIEROGLYPH A064;Lo;0;L;;;;;N;;;;; -1304A;EGYPTIAN HIEROGLYPH A065;Lo;0;L;;;;;N;;;;; -1304B;EGYPTIAN HIEROGLYPH A066;Lo;0;L;;;;;N;;;;; -1304C;EGYPTIAN HIEROGLYPH A067;Lo;0;L;;;;;N;;;;; -1304D;EGYPTIAN HIEROGLYPH A068;Lo;0;L;;;;;N;;;;; -1304E;EGYPTIAN HIEROGLYPH A069;Lo;0;L;;;;;N;;;;; -1304F;EGYPTIAN HIEROGLYPH A070;Lo;0;L;;;;;N;;;;; -13050;EGYPTIAN HIEROGLYPH B001;Lo;0;L;;;;;N;;;;; -13051;EGYPTIAN HIEROGLYPH B002;Lo;0;L;;;;;N;;;;; -13052;EGYPTIAN HIEROGLYPH B003;Lo;0;L;;;;;N;;;;; -13053;EGYPTIAN HIEROGLYPH B004;Lo;0;L;;;;;N;;;;; -13054;EGYPTIAN HIEROGLYPH B005;Lo;0;L;;;;;N;;;;; -13055;EGYPTIAN HIEROGLYPH B005A;Lo;0;L;;;;;N;;;;; -13056;EGYPTIAN HIEROGLYPH B006;Lo;0;L;;;;;N;;;;; -13057;EGYPTIAN HIEROGLYPH B007;Lo;0;L;;;;;N;;;;; -13058;EGYPTIAN HIEROGLYPH B008;Lo;0;L;;;;;N;;;;; -13059;EGYPTIAN HIEROGLYPH B009;Lo;0;L;;;;;N;;;;; -1305A;EGYPTIAN HIEROGLYPH C001;Lo;0;L;;;;;N;;;;; -1305B;EGYPTIAN HIEROGLYPH C002;Lo;0;L;;;;;N;;;;; -1305C;EGYPTIAN HIEROGLYPH C002A;Lo;0;L;;;;;N;;;;; -1305D;EGYPTIAN HIEROGLYPH C002B;Lo;0;L;;;;;N;;;;; -1305E;EGYPTIAN HIEROGLYPH C002C;Lo;0;L;;;;;N;;;;; -1305F;EGYPTIAN HIEROGLYPH C003;Lo;0;L;;;;;N;;;;; -13060;EGYPTIAN HIEROGLYPH C004;Lo;0;L;;;;;N;;;;; -13061;EGYPTIAN HIEROGLYPH C005;Lo;0;L;;;;;N;;;;; -13062;EGYPTIAN HIEROGLYPH C006;Lo;0;L;;;;;N;;;;; -13063;EGYPTIAN HIEROGLYPH C007;Lo;0;L;;;;;N;;;;; -13064;EGYPTIAN HIEROGLYPH C008;Lo;0;L;;;;;N;;;;; -13065;EGYPTIAN HIEROGLYPH C009;Lo;0;L;;;;;N;;;;; -13066;EGYPTIAN HIEROGLYPH C010;Lo;0;L;;;;;N;;;;; -13067;EGYPTIAN HIEROGLYPH C010A;Lo;0;L;;;;;N;;;;; -13068;EGYPTIAN HIEROGLYPH C011;Lo;0;L;;;;;N;;;;; -13069;EGYPTIAN HIEROGLYPH C012;Lo;0;L;;;;;N;;;;; -1306A;EGYPTIAN HIEROGLYPH C013;Lo;0;L;;;;;N;;;;; -1306B;EGYPTIAN HIEROGLYPH C014;Lo;0;L;;;;;N;;;;; -1306C;EGYPTIAN HIEROGLYPH C015;Lo;0;L;;;;;N;;;;; -1306D;EGYPTIAN HIEROGLYPH C016;Lo;0;L;;;;;N;;;;; -1306E;EGYPTIAN HIEROGLYPH C017;Lo;0;L;;;;;N;;;;; -1306F;EGYPTIAN HIEROGLYPH C018;Lo;0;L;;;;;N;;;;; -13070;EGYPTIAN HIEROGLYPH C019;Lo;0;L;;;;;N;;;;; -13071;EGYPTIAN HIEROGLYPH C020;Lo;0;L;;;;;N;;;;; -13072;EGYPTIAN HIEROGLYPH C021;Lo;0;L;;;;;N;;;;; -13073;EGYPTIAN HIEROGLYPH C022;Lo;0;L;;;;;N;;;;; -13074;EGYPTIAN HIEROGLYPH C023;Lo;0;L;;;;;N;;;;; -13075;EGYPTIAN HIEROGLYPH C024;Lo;0;L;;;;;N;;;;; -13076;EGYPTIAN HIEROGLYPH D001;Lo;0;L;;;;;N;;;;; -13077;EGYPTIAN HIEROGLYPH D002;Lo;0;L;;;;;N;;;;; -13078;EGYPTIAN HIEROGLYPH D003;Lo;0;L;;;;;N;;;;; -13079;EGYPTIAN HIEROGLYPH D004;Lo;0;L;;;;;N;;;;; -1307A;EGYPTIAN HIEROGLYPH D005;Lo;0;L;;;;;N;;;;; -1307B;EGYPTIAN HIEROGLYPH D006;Lo;0;L;;;;;N;;;;; -1307C;EGYPTIAN HIEROGLYPH D007;Lo;0;L;;;;;N;;;;; -1307D;EGYPTIAN HIEROGLYPH D008;Lo;0;L;;;;;N;;;;; -1307E;EGYPTIAN HIEROGLYPH D008A;Lo;0;L;;;;;N;;;;; -1307F;EGYPTIAN HIEROGLYPH D009;Lo;0;L;;;;;N;;;;; -13080;EGYPTIAN HIEROGLYPH D010;Lo;0;L;;;;;N;;;;; -13081;EGYPTIAN HIEROGLYPH D011;Lo;0;L;;;;;N;;;;; -13082;EGYPTIAN HIEROGLYPH D012;Lo;0;L;;;;;N;;;;; -13083;EGYPTIAN HIEROGLYPH D013;Lo;0;L;;;;;N;;;;; -13084;EGYPTIAN HIEROGLYPH D014;Lo;0;L;;;;;N;;;;; -13085;EGYPTIAN HIEROGLYPH D015;Lo;0;L;;;;;N;;;;; -13086;EGYPTIAN HIEROGLYPH D016;Lo;0;L;;;;;N;;;;; -13087;EGYPTIAN HIEROGLYPH D017;Lo;0;L;;;;;N;;;;; -13088;EGYPTIAN HIEROGLYPH D018;Lo;0;L;;;;;N;;;;; -13089;EGYPTIAN HIEROGLYPH D019;Lo;0;L;;;;;N;;;;; -1308A;EGYPTIAN HIEROGLYPH D020;Lo;0;L;;;;;N;;;;; -1308B;EGYPTIAN HIEROGLYPH D021;Lo;0;L;;;;;N;;;;; -1308C;EGYPTIAN HIEROGLYPH D022;Lo;0;L;;;;;N;;;;; -1308D;EGYPTIAN HIEROGLYPH D023;Lo;0;L;;;;;N;;;;; -1308E;EGYPTIAN HIEROGLYPH D024;Lo;0;L;;;;;N;;;;; -1308F;EGYPTIAN HIEROGLYPH D025;Lo;0;L;;;;;N;;;;; -13090;EGYPTIAN HIEROGLYPH D026;Lo;0;L;;;;;N;;;;; -13091;EGYPTIAN HIEROGLYPH D027;Lo;0;L;;;;;N;;;;; -13092;EGYPTIAN HIEROGLYPH D027A;Lo;0;L;;;;;N;;;;; -13093;EGYPTIAN HIEROGLYPH D028;Lo;0;L;;;;;N;;;;; -13094;EGYPTIAN HIEROGLYPH D029;Lo;0;L;;;;;N;;;;; -13095;EGYPTIAN HIEROGLYPH D030;Lo;0;L;;;;;N;;;;; -13096;EGYPTIAN HIEROGLYPH D031;Lo;0;L;;;;;N;;;;; -13097;EGYPTIAN HIEROGLYPH D031A;Lo;0;L;;;;;N;;;;; -13098;EGYPTIAN HIEROGLYPH D032;Lo;0;L;;;;;N;;;;; -13099;EGYPTIAN HIEROGLYPH D033;Lo;0;L;;;;;N;;;;; -1309A;EGYPTIAN HIEROGLYPH D034;Lo;0;L;;;;;N;;;;; -1309B;EGYPTIAN HIEROGLYPH D034A;Lo;0;L;;;;;N;;;;; -1309C;EGYPTIAN HIEROGLYPH D035;Lo;0;L;;;;;N;;;;; -1309D;EGYPTIAN HIEROGLYPH D036;Lo;0;L;;;;;N;;;;; -1309E;EGYPTIAN HIEROGLYPH D037;Lo;0;L;;;;;N;;;;; -1309F;EGYPTIAN HIEROGLYPH D038;Lo;0;L;;;;;N;;;;; -130A0;EGYPTIAN HIEROGLYPH D039;Lo;0;L;;;;;N;;;;; -130A1;EGYPTIAN HIEROGLYPH D040;Lo;0;L;;;;;N;;;;; -130A2;EGYPTIAN HIEROGLYPH D041;Lo;0;L;;;;;N;;;;; -130A3;EGYPTIAN HIEROGLYPH D042;Lo;0;L;;;;;N;;;;; -130A4;EGYPTIAN HIEROGLYPH D043;Lo;0;L;;;;;N;;;;; -130A5;EGYPTIAN HIEROGLYPH D044;Lo;0;L;;;;;N;;;;; -130A6;EGYPTIAN HIEROGLYPH D045;Lo;0;L;;;;;N;;;;; -130A7;EGYPTIAN HIEROGLYPH D046;Lo;0;L;;;;;N;;;;; -130A8;EGYPTIAN HIEROGLYPH D046A;Lo;0;L;;;;;N;;;;; -130A9;EGYPTIAN HIEROGLYPH D047;Lo;0;L;;;;;N;;;;; -130AA;EGYPTIAN HIEROGLYPH D048;Lo;0;L;;;;;N;;;;; -130AB;EGYPTIAN HIEROGLYPH D048A;Lo;0;L;;;;;N;;;;; -130AC;EGYPTIAN HIEROGLYPH D049;Lo;0;L;;;;;N;;;;; -130AD;EGYPTIAN HIEROGLYPH D050;Lo;0;L;;;;;N;;;;; -130AE;EGYPTIAN HIEROGLYPH D050A;Lo;0;L;;;;;N;;;;; -130AF;EGYPTIAN HIEROGLYPH D050B;Lo;0;L;;;;;N;;;;; -130B0;EGYPTIAN HIEROGLYPH D050C;Lo;0;L;;;;;N;;;;; -130B1;EGYPTIAN HIEROGLYPH D050D;Lo;0;L;;;;;N;;;;; -130B2;EGYPTIAN HIEROGLYPH D050E;Lo;0;L;;;;;N;;;;; -130B3;EGYPTIAN HIEROGLYPH D050F;Lo;0;L;;;;;N;;;;; -130B4;EGYPTIAN HIEROGLYPH D050G;Lo;0;L;;;;;N;;;;; -130B5;EGYPTIAN HIEROGLYPH D050H;Lo;0;L;;;;;N;;;;; -130B6;EGYPTIAN HIEROGLYPH D050I;Lo;0;L;;;;;N;;;;; -130B7;EGYPTIAN HIEROGLYPH D051;Lo;0;L;;;;;N;;;;; -130B8;EGYPTIAN HIEROGLYPH D052;Lo;0;L;;;;;N;;;;; -130B9;EGYPTIAN HIEROGLYPH D052A;Lo;0;L;;;;;N;;;;; -130BA;EGYPTIAN HIEROGLYPH D053;Lo;0;L;;;;;N;;;;; -130BB;EGYPTIAN HIEROGLYPH D054;Lo;0;L;;;;;N;;;;; -130BC;EGYPTIAN HIEROGLYPH D054A;Lo;0;L;;;;;N;;;;; -130BD;EGYPTIAN HIEROGLYPH D055;Lo;0;L;;;;;N;;;;; -130BE;EGYPTIAN HIEROGLYPH D056;Lo;0;L;;;;;N;;;;; -130BF;EGYPTIAN HIEROGLYPH D057;Lo;0;L;;;;;N;;;;; -130C0;EGYPTIAN HIEROGLYPH D058;Lo;0;L;;;;;N;;;;; -130C1;EGYPTIAN HIEROGLYPH D059;Lo;0;L;;;;;N;;;;; -130C2;EGYPTIAN HIEROGLYPH D060;Lo;0;L;;;;;N;;;;; -130C3;EGYPTIAN HIEROGLYPH D061;Lo;0;L;;;;;N;;;;; -130C4;EGYPTIAN HIEROGLYPH D062;Lo;0;L;;;;;N;;;;; -130C5;EGYPTIAN HIEROGLYPH D063;Lo;0;L;;;;;N;;;;; -130C6;EGYPTIAN HIEROGLYPH D064;Lo;0;L;;;;;N;;;;; -130C7;EGYPTIAN HIEROGLYPH D065;Lo;0;L;;;;;N;;;;; -130C8;EGYPTIAN HIEROGLYPH D066;Lo;0;L;;;;;N;;;;; -130C9;EGYPTIAN HIEROGLYPH D067;Lo;0;L;;;;;N;;;;; -130CA;EGYPTIAN HIEROGLYPH D067A;Lo;0;L;;;;;N;;;;; -130CB;EGYPTIAN HIEROGLYPH D067B;Lo;0;L;;;;;N;;;;; -130CC;EGYPTIAN HIEROGLYPH D067C;Lo;0;L;;;;;N;;;;; -130CD;EGYPTIAN HIEROGLYPH D067D;Lo;0;L;;;;;N;;;;; -130CE;EGYPTIAN HIEROGLYPH D067E;Lo;0;L;;;;;N;;;;; -130CF;EGYPTIAN HIEROGLYPH D067F;Lo;0;L;;;;;N;;;;; -130D0;EGYPTIAN HIEROGLYPH D067G;Lo;0;L;;;;;N;;;;; -130D1;EGYPTIAN HIEROGLYPH D067H;Lo;0;L;;;;;N;;;;; -130D2;EGYPTIAN HIEROGLYPH E001;Lo;0;L;;;;;N;;;;; -130D3;EGYPTIAN HIEROGLYPH E002;Lo;0;L;;;;;N;;;;; -130D4;EGYPTIAN HIEROGLYPH E003;Lo;0;L;;;;;N;;;;; -130D5;EGYPTIAN HIEROGLYPH E004;Lo;0;L;;;;;N;;;;; -130D6;EGYPTIAN HIEROGLYPH E005;Lo;0;L;;;;;N;;;;; -130D7;EGYPTIAN HIEROGLYPH E006;Lo;0;L;;;;;N;;;;; -130D8;EGYPTIAN HIEROGLYPH E007;Lo;0;L;;;;;N;;;;; -130D9;EGYPTIAN HIEROGLYPH E008;Lo;0;L;;;;;N;;;;; -130DA;EGYPTIAN HIEROGLYPH E008A;Lo;0;L;;;;;N;;;;; -130DB;EGYPTIAN HIEROGLYPH E009;Lo;0;L;;;;;N;;;;; -130DC;EGYPTIAN HIEROGLYPH E009A;Lo;0;L;;;;;N;;;;; -130DD;EGYPTIAN HIEROGLYPH E010;Lo;0;L;;;;;N;;;;; -130DE;EGYPTIAN HIEROGLYPH E011;Lo;0;L;;;;;N;;;;; -130DF;EGYPTIAN HIEROGLYPH E012;Lo;0;L;;;;;N;;;;; -130E0;EGYPTIAN HIEROGLYPH E013;Lo;0;L;;;;;N;;;;; -130E1;EGYPTIAN HIEROGLYPH E014;Lo;0;L;;;;;N;;;;; -130E2;EGYPTIAN HIEROGLYPH E015;Lo;0;L;;;;;N;;;;; -130E3;EGYPTIAN HIEROGLYPH E016;Lo;0;L;;;;;N;;;;; -130E4;EGYPTIAN HIEROGLYPH E016A;Lo;0;L;;;;;N;;;;; -130E5;EGYPTIAN HIEROGLYPH E017;Lo;0;L;;;;;N;;;;; -130E6;EGYPTIAN HIEROGLYPH E017A;Lo;0;L;;;;;N;;;;; -130E7;EGYPTIAN HIEROGLYPH E018;Lo;0;L;;;;;N;;;;; -130E8;EGYPTIAN HIEROGLYPH E019;Lo;0;L;;;;;N;;;;; -130E9;EGYPTIAN HIEROGLYPH E020;Lo;0;L;;;;;N;;;;; -130EA;EGYPTIAN HIEROGLYPH E020A;Lo;0;L;;;;;N;;;;; -130EB;EGYPTIAN HIEROGLYPH E021;Lo;0;L;;;;;N;;;;; -130EC;EGYPTIAN HIEROGLYPH E022;Lo;0;L;;;;;N;;;;; -130ED;EGYPTIAN HIEROGLYPH E023;Lo;0;L;;;;;N;;;;; -130EE;EGYPTIAN HIEROGLYPH E024;Lo;0;L;;;;;N;;;;; -130EF;EGYPTIAN HIEROGLYPH E025;Lo;0;L;;;;;N;;;;; -130F0;EGYPTIAN HIEROGLYPH E026;Lo;0;L;;;;;N;;;;; -130F1;EGYPTIAN HIEROGLYPH E027;Lo;0;L;;;;;N;;;;; -130F2;EGYPTIAN HIEROGLYPH E028;Lo;0;L;;;;;N;;;;; -130F3;EGYPTIAN HIEROGLYPH E028A;Lo;0;L;;;;;N;;;;; -130F4;EGYPTIAN HIEROGLYPH E029;Lo;0;L;;;;;N;;;;; -130F5;EGYPTIAN HIEROGLYPH E030;Lo;0;L;;;;;N;;;;; -130F6;EGYPTIAN HIEROGLYPH E031;Lo;0;L;;;;;N;;;;; -130F7;EGYPTIAN HIEROGLYPH E032;Lo;0;L;;;;;N;;;;; -130F8;EGYPTIAN HIEROGLYPH E033;Lo;0;L;;;;;N;;;;; -130F9;EGYPTIAN HIEROGLYPH E034;Lo;0;L;;;;;N;;;;; -130FA;EGYPTIAN HIEROGLYPH E034A;Lo;0;L;;;;;N;;;;; -130FB;EGYPTIAN HIEROGLYPH E036;Lo;0;L;;;;;N;;;;; -130FC;EGYPTIAN HIEROGLYPH E037;Lo;0;L;;;;;N;;;;; -130FD;EGYPTIAN HIEROGLYPH E038;Lo;0;L;;;;;N;;;;; -130FE;EGYPTIAN HIEROGLYPH F001;Lo;0;L;;;;;N;;;;; -130FF;EGYPTIAN HIEROGLYPH F001A;Lo;0;L;;;;;N;;;;; -13100;EGYPTIAN HIEROGLYPH F002;Lo;0;L;;;;;N;;;;; -13101;EGYPTIAN HIEROGLYPH F003;Lo;0;L;;;;;N;;;;; -13102;EGYPTIAN HIEROGLYPH F004;Lo;0;L;;;;;N;;;;; -13103;EGYPTIAN HIEROGLYPH F005;Lo;0;L;;;;;N;;;;; -13104;EGYPTIAN HIEROGLYPH F006;Lo;0;L;;;;;N;;;;; -13105;EGYPTIAN HIEROGLYPH F007;Lo;0;L;;;;;N;;;;; -13106;EGYPTIAN HIEROGLYPH F008;Lo;0;L;;;;;N;;;;; -13107;EGYPTIAN HIEROGLYPH F009;Lo;0;L;;;;;N;;;;; -13108;EGYPTIAN HIEROGLYPH F010;Lo;0;L;;;;;N;;;;; -13109;EGYPTIAN HIEROGLYPH F011;Lo;0;L;;;;;N;;;;; -1310A;EGYPTIAN HIEROGLYPH F012;Lo;0;L;;;;;N;;;;; -1310B;EGYPTIAN HIEROGLYPH F013;Lo;0;L;;;;;N;;;;; -1310C;EGYPTIAN HIEROGLYPH F013A;Lo;0;L;;;;;N;;;;; -1310D;EGYPTIAN HIEROGLYPH F014;Lo;0;L;;;;;N;;;;; -1310E;EGYPTIAN HIEROGLYPH F015;Lo;0;L;;;;;N;;;;; -1310F;EGYPTIAN HIEROGLYPH F016;Lo;0;L;;;;;N;;;;; -13110;EGYPTIAN HIEROGLYPH F017;Lo;0;L;;;;;N;;;;; -13111;EGYPTIAN HIEROGLYPH F018;Lo;0;L;;;;;N;;;;; -13112;EGYPTIAN HIEROGLYPH F019;Lo;0;L;;;;;N;;;;; -13113;EGYPTIAN HIEROGLYPH F020;Lo;0;L;;;;;N;;;;; -13114;EGYPTIAN HIEROGLYPH F021;Lo;0;L;;;;;N;;;;; -13115;EGYPTIAN HIEROGLYPH F021A;Lo;0;L;;;;;N;;;;; -13116;EGYPTIAN HIEROGLYPH F022;Lo;0;L;;;;;N;;;;; -13117;EGYPTIAN HIEROGLYPH F023;Lo;0;L;;;;;N;;;;; -13118;EGYPTIAN HIEROGLYPH F024;Lo;0;L;;;;;N;;;;; -13119;EGYPTIAN HIEROGLYPH F025;Lo;0;L;;;;;N;;;;; -1311A;EGYPTIAN HIEROGLYPH F026;Lo;0;L;;;;;N;;;;; -1311B;EGYPTIAN HIEROGLYPH F027;Lo;0;L;;;;;N;;;;; -1311C;EGYPTIAN HIEROGLYPH F028;Lo;0;L;;;;;N;;;;; -1311D;EGYPTIAN HIEROGLYPH F029;Lo;0;L;;;;;N;;;;; -1311E;EGYPTIAN HIEROGLYPH F030;Lo;0;L;;;;;N;;;;; -1311F;EGYPTIAN HIEROGLYPH F031;Lo;0;L;;;;;N;;;;; -13120;EGYPTIAN HIEROGLYPH F031A;Lo;0;L;;;;;N;;;;; -13121;EGYPTIAN HIEROGLYPH F032;Lo;0;L;;;;;N;;;;; -13122;EGYPTIAN HIEROGLYPH F033;Lo;0;L;;;;;N;;;;; -13123;EGYPTIAN HIEROGLYPH F034;Lo;0;L;;;;;N;;;;; -13124;EGYPTIAN HIEROGLYPH F035;Lo;0;L;;;;;N;;;;; -13125;EGYPTIAN HIEROGLYPH F036;Lo;0;L;;;;;N;;;;; -13126;EGYPTIAN HIEROGLYPH F037;Lo;0;L;;;;;N;;;;; -13127;EGYPTIAN HIEROGLYPH F037A;Lo;0;L;;;;;N;;;;; -13128;EGYPTIAN HIEROGLYPH F038;Lo;0;L;;;;;N;;;;; -13129;EGYPTIAN HIEROGLYPH F038A;Lo;0;L;;;;;N;;;;; -1312A;EGYPTIAN HIEROGLYPH F039;Lo;0;L;;;;;N;;;;; -1312B;EGYPTIAN HIEROGLYPH F040;Lo;0;L;;;;;N;;;;; -1312C;EGYPTIAN HIEROGLYPH F041;Lo;0;L;;;;;N;;;;; -1312D;EGYPTIAN HIEROGLYPH F042;Lo;0;L;;;;;N;;;;; -1312E;EGYPTIAN HIEROGLYPH F043;Lo;0;L;;;;;N;;;;; -1312F;EGYPTIAN HIEROGLYPH F044;Lo;0;L;;;;;N;;;;; -13130;EGYPTIAN HIEROGLYPH F045;Lo;0;L;;;;;N;;;;; -13131;EGYPTIAN HIEROGLYPH F045A;Lo;0;L;;;;;N;;;;; -13132;EGYPTIAN HIEROGLYPH F046;Lo;0;L;;;;;N;;;;; -13133;EGYPTIAN HIEROGLYPH F046A;Lo;0;L;;;;;N;;;;; -13134;EGYPTIAN HIEROGLYPH F047;Lo;0;L;;;;;N;;;;; -13135;EGYPTIAN HIEROGLYPH F047A;Lo;0;L;;;;;N;;;;; -13136;EGYPTIAN HIEROGLYPH F048;Lo;0;L;;;;;N;;;;; -13137;EGYPTIAN HIEROGLYPH F049;Lo;0;L;;;;;N;;;;; -13138;EGYPTIAN HIEROGLYPH F050;Lo;0;L;;;;;N;;;;; -13139;EGYPTIAN HIEROGLYPH F051;Lo;0;L;;;;;N;;;;; -1313A;EGYPTIAN HIEROGLYPH F051A;Lo;0;L;;;;;N;;;;; -1313B;EGYPTIAN HIEROGLYPH F051B;Lo;0;L;;;;;N;;;;; -1313C;EGYPTIAN HIEROGLYPH F051C;Lo;0;L;;;;;N;;;;; -1313D;EGYPTIAN HIEROGLYPH F052;Lo;0;L;;;;;N;;;;; -1313E;EGYPTIAN HIEROGLYPH F053;Lo;0;L;;;;;N;;;;; -1313F;EGYPTIAN HIEROGLYPH G001;Lo;0;L;;;;;N;;;;; -13140;EGYPTIAN HIEROGLYPH G002;Lo;0;L;;;;;N;;;;; -13141;EGYPTIAN HIEROGLYPH G003;Lo;0;L;;;;;N;;;;; -13142;EGYPTIAN HIEROGLYPH G004;Lo;0;L;;;;;N;;;;; -13143;EGYPTIAN HIEROGLYPH G005;Lo;0;L;;;;;N;;;;; -13144;EGYPTIAN HIEROGLYPH G006;Lo;0;L;;;;;N;;;;; -13145;EGYPTIAN HIEROGLYPH G006A;Lo;0;L;;;;;N;;;;; -13146;EGYPTIAN HIEROGLYPH G007;Lo;0;L;;;;;N;;;;; -13147;EGYPTIAN HIEROGLYPH G007A;Lo;0;L;;;;;N;;;;; -13148;EGYPTIAN HIEROGLYPH G007B;Lo;0;L;;;;;N;;;;; -13149;EGYPTIAN HIEROGLYPH G008;Lo;0;L;;;;;N;;;;; -1314A;EGYPTIAN HIEROGLYPH G009;Lo;0;L;;;;;N;;;;; -1314B;EGYPTIAN HIEROGLYPH G010;Lo;0;L;;;;;N;;;;; -1314C;EGYPTIAN HIEROGLYPH G011;Lo;0;L;;;;;N;;;;; -1314D;EGYPTIAN HIEROGLYPH G011A;Lo;0;L;;;;;N;;;;; -1314E;EGYPTIAN HIEROGLYPH G012;Lo;0;L;;;;;N;;;;; -1314F;EGYPTIAN HIEROGLYPH G013;Lo;0;L;;;;;N;;;;; -13150;EGYPTIAN HIEROGLYPH G014;Lo;0;L;;;;;N;;;;; -13151;EGYPTIAN HIEROGLYPH G015;Lo;0;L;;;;;N;;;;; -13152;EGYPTIAN HIEROGLYPH G016;Lo;0;L;;;;;N;;;;; -13153;EGYPTIAN HIEROGLYPH G017;Lo;0;L;;;;;N;;;;; -13154;EGYPTIAN HIEROGLYPH G018;Lo;0;L;;;;;N;;;;; -13155;EGYPTIAN HIEROGLYPH G019;Lo;0;L;;;;;N;;;;; -13156;EGYPTIAN HIEROGLYPH G020;Lo;0;L;;;;;N;;;;; -13157;EGYPTIAN HIEROGLYPH G020A;Lo;0;L;;;;;N;;;;; -13158;EGYPTIAN HIEROGLYPH G021;Lo;0;L;;;;;N;;;;; -13159;EGYPTIAN HIEROGLYPH G022;Lo;0;L;;;;;N;;;;; -1315A;EGYPTIAN HIEROGLYPH G023;Lo;0;L;;;;;N;;;;; -1315B;EGYPTIAN HIEROGLYPH G024;Lo;0;L;;;;;N;;;;; -1315C;EGYPTIAN HIEROGLYPH G025;Lo;0;L;;;;;N;;;;; -1315D;EGYPTIAN HIEROGLYPH G026;Lo;0;L;;;;;N;;;;; -1315E;EGYPTIAN HIEROGLYPH G026A;Lo;0;L;;;;;N;;;;; -1315F;EGYPTIAN HIEROGLYPH G027;Lo;0;L;;;;;N;;;;; -13160;EGYPTIAN HIEROGLYPH G028;Lo;0;L;;;;;N;;;;; -13161;EGYPTIAN HIEROGLYPH G029;Lo;0;L;;;;;N;;;;; -13162;EGYPTIAN HIEROGLYPH G030;Lo;0;L;;;;;N;;;;; -13163;EGYPTIAN HIEROGLYPH G031;Lo;0;L;;;;;N;;;;; -13164;EGYPTIAN HIEROGLYPH G032;Lo;0;L;;;;;N;;;;; -13165;EGYPTIAN HIEROGLYPH G033;Lo;0;L;;;;;N;;;;; -13166;EGYPTIAN HIEROGLYPH G034;Lo;0;L;;;;;N;;;;; -13167;EGYPTIAN HIEROGLYPH G035;Lo;0;L;;;;;N;;;;; -13168;EGYPTIAN HIEROGLYPH G036;Lo;0;L;;;;;N;;;;; -13169;EGYPTIAN HIEROGLYPH G036A;Lo;0;L;;;;;N;;;;; -1316A;EGYPTIAN HIEROGLYPH G037;Lo;0;L;;;;;N;;;;; -1316B;EGYPTIAN HIEROGLYPH G037A;Lo;0;L;;;;;N;;;;; -1316C;EGYPTIAN HIEROGLYPH G038;Lo;0;L;;;;;N;;;;; -1316D;EGYPTIAN HIEROGLYPH G039;Lo;0;L;;;;;N;;;;; -1316E;EGYPTIAN HIEROGLYPH G040;Lo;0;L;;;;;N;;;;; -1316F;EGYPTIAN HIEROGLYPH G041;Lo;0;L;;;;;N;;;;; -13170;EGYPTIAN HIEROGLYPH G042;Lo;0;L;;;;;N;;;;; -13171;EGYPTIAN HIEROGLYPH G043;Lo;0;L;;;;;N;;;;; -13172;EGYPTIAN HIEROGLYPH G043A;Lo;0;L;;;;;N;;;;; -13173;EGYPTIAN HIEROGLYPH G044;Lo;0;L;;;;;N;;;;; -13174;EGYPTIAN HIEROGLYPH G045;Lo;0;L;;;;;N;;;;; -13175;EGYPTIAN HIEROGLYPH G045A;Lo;0;L;;;;;N;;;;; -13176;EGYPTIAN HIEROGLYPH G046;Lo;0;L;;;;;N;;;;; -13177;EGYPTIAN HIEROGLYPH G047;Lo;0;L;;;;;N;;;;; -13178;EGYPTIAN HIEROGLYPH G048;Lo;0;L;;;;;N;;;;; -13179;EGYPTIAN HIEROGLYPH G049;Lo;0;L;;;;;N;;;;; -1317A;EGYPTIAN HIEROGLYPH G050;Lo;0;L;;;;;N;;;;; -1317B;EGYPTIAN HIEROGLYPH G051;Lo;0;L;;;;;N;;;;; -1317C;EGYPTIAN HIEROGLYPH G052;Lo;0;L;;;;;N;;;;; -1317D;EGYPTIAN HIEROGLYPH G053;Lo;0;L;;;;;N;;;;; -1317E;EGYPTIAN HIEROGLYPH G054;Lo;0;L;;;;;N;;;;; -1317F;EGYPTIAN HIEROGLYPH H001;Lo;0;L;;;;;N;;;;; -13180;EGYPTIAN HIEROGLYPH H002;Lo;0;L;;;;;N;;;;; -13181;EGYPTIAN HIEROGLYPH H003;Lo;0;L;;;;;N;;;;; -13182;EGYPTIAN HIEROGLYPH H004;Lo;0;L;;;;;N;;;;; -13183;EGYPTIAN HIEROGLYPH H005;Lo;0;L;;;;;N;;;;; -13184;EGYPTIAN HIEROGLYPH H006;Lo;0;L;;;;;N;;;;; -13185;EGYPTIAN HIEROGLYPH H006A;Lo;0;L;;;;;N;;;;; -13186;EGYPTIAN HIEROGLYPH H007;Lo;0;L;;;;;N;;;;; -13187;EGYPTIAN HIEROGLYPH H008;Lo;0;L;;;;;N;;;;; -13188;EGYPTIAN HIEROGLYPH I001;Lo;0;L;;;;;N;;;;; -13189;EGYPTIAN HIEROGLYPH I002;Lo;0;L;;;;;N;;;;; -1318A;EGYPTIAN HIEROGLYPH I003;Lo;0;L;;;;;N;;;;; -1318B;EGYPTIAN HIEROGLYPH I004;Lo;0;L;;;;;N;;;;; -1318C;EGYPTIAN HIEROGLYPH I005;Lo;0;L;;;;;N;;;;; -1318D;EGYPTIAN HIEROGLYPH I005A;Lo;0;L;;;;;N;;;;; -1318E;EGYPTIAN HIEROGLYPH I006;Lo;0;L;;;;;N;;;;; -1318F;EGYPTIAN HIEROGLYPH I007;Lo;0;L;;;;;N;;;;; -13190;EGYPTIAN HIEROGLYPH I008;Lo;0;L;;;;;N;;;;; -13191;EGYPTIAN HIEROGLYPH I009;Lo;0;L;;;;;N;;;;; -13192;EGYPTIAN HIEROGLYPH I009A;Lo;0;L;;;;;N;;;;; -13193;EGYPTIAN HIEROGLYPH I010;Lo;0;L;;;;;N;;;;; -13194;EGYPTIAN HIEROGLYPH I010A;Lo;0;L;;;;;N;;;;; -13195;EGYPTIAN HIEROGLYPH I011;Lo;0;L;;;;;N;;;;; -13196;EGYPTIAN HIEROGLYPH I011A;Lo;0;L;;;;;N;;;;; -13197;EGYPTIAN HIEROGLYPH I012;Lo;0;L;;;;;N;;;;; -13198;EGYPTIAN HIEROGLYPH I013;Lo;0;L;;;;;N;;;;; -13199;EGYPTIAN HIEROGLYPH I014;Lo;0;L;;;;;N;;;;; -1319A;EGYPTIAN HIEROGLYPH I015;Lo;0;L;;;;;N;;;;; -1319B;EGYPTIAN HIEROGLYPH K001;Lo;0;L;;;;;N;;;;; -1319C;EGYPTIAN HIEROGLYPH K002;Lo;0;L;;;;;N;;;;; -1319D;EGYPTIAN HIEROGLYPH K003;Lo;0;L;;;;;N;;;;; -1319E;EGYPTIAN HIEROGLYPH K004;Lo;0;L;;;;;N;;;;; -1319F;EGYPTIAN HIEROGLYPH K005;Lo;0;L;;;;;N;;;;; -131A0;EGYPTIAN HIEROGLYPH K006;Lo;0;L;;;;;N;;;;; -131A1;EGYPTIAN HIEROGLYPH K007;Lo;0;L;;;;;N;;;;; -131A2;EGYPTIAN HIEROGLYPH K008;Lo;0;L;;;;;N;;;;; -131A3;EGYPTIAN HIEROGLYPH L001;Lo;0;L;;;;;N;;;;; -131A4;EGYPTIAN HIEROGLYPH L002;Lo;0;L;;;;;N;;;;; -131A5;EGYPTIAN HIEROGLYPH L002A;Lo;0;L;;;;;N;;;;; -131A6;EGYPTIAN HIEROGLYPH L003;Lo;0;L;;;;;N;;;;; -131A7;EGYPTIAN HIEROGLYPH L004;Lo;0;L;;;;;N;;;;; -131A8;EGYPTIAN HIEROGLYPH L005;Lo;0;L;;;;;N;;;;; -131A9;EGYPTIAN HIEROGLYPH L006;Lo;0;L;;;;;N;;;;; -131AA;EGYPTIAN HIEROGLYPH L006A;Lo;0;L;;;;;N;;;;; -131AB;EGYPTIAN HIEROGLYPH L007;Lo;0;L;;;;;N;;;;; -131AC;EGYPTIAN HIEROGLYPH L008;Lo;0;L;;;;;N;;;;; -131AD;EGYPTIAN HIEROGLYPH M001;Lo;0;L;;;;;N;;;;; -131AE;EGYPTIAN HIEROGLYPH M001A;Lo;0;L;;;;;N;;;;; -131AF;EGYPTIAN HIEROGLYPH M001B;Lo;0;L;;;;;N;;;;; -131B0;EGYPTIAN HIEROGLYPH M002;Lo;0;L;;;;;N;;;;; -131B1;EGYPTIAN HIEROGLYPH M003;Lo;0;L;;;;;N;;;;; -131B2;EGYPTIAN HIEROGLYPH M003A;Lo;0;L;;;;;N;;;;; -131B3;EGYPTIAN HIEROGLYPH M004;Lo;0;L;;;;;N;;;;; -131B4;EGYPTIAN HIEROGLYPH M005;Lo;0;L;;;;;N;;;;; -131B5;EGYPTIAN HIEROGLYPH M006;Lo;0;L;;;;;N;;;;; -131B6;EGYPTIAN HIEROGLYPH M007;Lo;0;L;;;;;N;;;;; -131B7;EGYPTIAN HIEROGLYPH M008;Lo;0;L;;;;;N;;;;; -131B8;EGYPTIAN HIEROGLYPH M009;Lo;0;L;;;;;N;;;;; -131B9;EGYPTIAN HIEROGLYPH M010;Lo;0;L;;;;;N;;;;; -131BA;EGYPTIAN HIEROGLYPH M010A;Lo;0;L;;;;;N;;;;; -131BB;EGYPTIAN HIEROGLYPH M011;Lo;0;L;;;;;N;;;;; -131BC;EGYPTIAN HIEROGLYPH M012;Lo;0;L;;;;;N;;;;; -131BD;EGYPTIAN HIEROGLYPH M012A;Lo;0;L;;;;;N;;;;; -131BE;EGYPTIAN HIEROGLYPH M012B;Lo;0;L;;;;;N;;;;; -131BF;EGYPTIAN HIEROGLYPH M012C;Lo;0;L;;;;;N;;;;; -131C0;EGYPTIAN HIEROGLYPH M012D;Lo;0;L;;;;;N;;;;; -131C1;EGYPTIAN HIEROGLYPH M012E;Lo;0;L;;;;;N;;;;; -131C2;EGYPTIAN HIEROGLYPH M012F;Lo;0;L;;;;;N;;;;; -131C3;EGYPTIAN HIEROGLYPH M012G;Lo;0;L;;;;;N;;;;; -131C4;EGYPTIAN HIEROGLYPH M012H;Lo;0;L;;;;;N;;;;; -131C5;EGYPTIAN HIEROGLYPH M013;Lo;0;L;;;;;N;;;;; -131C6;EGYPTIAN HIEROGLYPH M014;Lo;0;L;;;;;N;;;;; -131C7;EGYPTIAN HIEROGLYPH M015;Lo;0;L;;;;;N;;;;; -131C8;EGYPTIAN HIEROGLYPH M015A;Lo;0;L;;;;;N;;;;; -131C9;EGYPTIAN HIEROGLYPH M016;Lo;0;L;;;;;N;;;;; -131CA;EGYPTIAN HIEROGLYPH M016A;Lo;0;L;;;;;N;;;;; -131CB;EGYPTIAN HIEROGLYPH M017;Lo;0;L;;;;;N;;;;; -131CC;EGYPTIAN HIEROGLYPH M017A;Lo;0;L;;;;;N;;;;; -131CD;EGYPTIAN HIEROGLYPH M018;Lo;0;L;;;;;N;;;;; -131CE;EGYPTIAN HIEROGLYPH M019;Lo;0;L;;;;;N;;;;; -131CF;EGYPTIAN HIEROGLYPH M020;Lo;0;L;;;;;N;;;;; -131D0;EGYPTIAN HIEROGLYPH M021;Lo;0;L;;;;;N;;;;; -131D1;EGYPTIAN HIEROGLYPH M022;Lo;0;L;;;;;N;;;;; -131D2;EGYPTIAN HIEROGLYPH M022A;Lo;0;L;;;;;N;;;;; -131D3;EGYPTIAN HIEROGLYPH M023;Lo;0;L;;;;;N;;;;; -131D4;EGYPTIAN HIEROGLYPH M024;Lo;0;L;;;;;N;;;;; -131D5;EGYPTIAN HIEROGLYPH M024A;Lo;0;L;;;;;N;;;;; -131D6;EGYPTIAN HIEROGLYPH M025;Lo;0;L;;;;;N;;;;; -131D7;EGYPTIAN HIEROGLYPH M026;Lo;0;L;;;;;N;;;;; -131D8;EGYPTIAN HIEROGLYPH M027;Lo;0;L;;;;;N;;;;; -131D9;EGYPTIAN HIEROGLYPH M028;Lo;0;L;;;;;N;;;;; -131DA;EGYPTIAN HIEROGLYPH M028A;Lo;0;L;;;;;N;;;;; -131DB;EGYPTIAN HIEROGLYPH M029;Lo;0;L;;;;;N;;;;; -131DC;EGYPTIAN HIEROGLYPH M030;Lo;0;L;;;;;N;;;;; -131DD;EGYPTIAN HIEROGLYPH M031;Lo;0;L;;;;;N;;;;; -131DE;EGYPTIAN HIEROGLYPH M031A;Lo;0;L;;;;;N;;;;; -131DF;EGYPTIAN HIEROGLYPH M032;Lo;0;L;;;;;N;;;;; -131E0;EGYPTIAN HIEROGLYPH M033;Lo;0;L;;;;;N;;;;; -131E1;EGYPTIAN HIEROGLYPH M033A;Lo;0;L;;;;;N;;;;; -131E2;EGYPTIAN HIEROGLYPH M033B;Lo;0;L;;;;;N;;;;; -131E3;EGYPTIAN HIEROGLYPH M034;Lo;0;L;;;;;N;;;;; -131E4;EGYPTIAN HIEROGLYPH M035;Lo;0;L;;;;;N;;;;; -131E5;EGYPTIAN HIEROGLYPH M036;Lo;0;L;;;;;N;;;;; -131E6;EGYPTIAN HIEROGLYPH M037;Lo;0;L;;;;;N;;;;; -131E7;EGYPTIAN HIEROGLYPH M038;Lo;0;L;;;;;N;;;;; -131E8;EGYPTIAN HIEROGLYPH M039;Lo;0;L;;;;;N;;;;; -131E9;EGYPTIAN HIEROGLYPH M040;Lo;0;L;;;;;N;;;;; -131EA;EGYPTIAN HIEROGLYPH M040A;Lo;0;L;;;;;N;;;;; -131EB;EGYPTIAN HIEROGLYPH M041;Lo;0;L;;;;;N;;;;; -131EC;EGYPTIAN HIEROGLYPH M042;Lo;0;L;;;;;N;;;;; -131ED;EGYPTIAN HIEROGLYPH M043;Lo;0;L;;;;;N;;;;; -131EE;EGYPTIAN HIEROGLYPH M044;Lo;0;L;;;;;N;;;;; -131EF;EGYPTIAN HIEROGLYPH N001;Lo;0;L;;;;;N;;;;; -131F0;EGYPTIAN HIEROGLYPH N002;Lo;0;L;;;;;N;;;;; -131F1;EGYPTIAN HIEROGLYPH N003;Lo;0;L;;;;;N;;;;; -131F2;EGYPTIAN HIEROGLYPH N004;Lo;0;L;;;;;N;;;;; -131F3;EGYPTIAN HIEROGLYPH N005;Lo;0;L;;;;;N;;;;; -131F4;EGYPTIAN HIEROGLYPH N006;Lo;0;L;;;;;N;;;;; -131F5;EGYPTIAN HIEROGLYPH N007;Lo;0;L;;;;;N;;;;; -131F6;EGYPTIAN HIEROGLYPH N008;Lo;0;L;;;;;N;;;;; -131F7;EGYPTIAN HIEROGLYPH N009;Lo;0;L;;;;;N;;;;; -131F8;EGYPTIAN HIEROGLYPH N010;Lo;0;L;;;;;N;;;;; -131F9;EGYPTIAN HIEROGLYPH N011;Lo;0;L;;;;;N;;;;; -131FA;EGYPTIAN HIEROGLYPH N012;Lo;0;L;;;;;N;;;;; -131FB;EGYPTIAN HIEROGLYPH N013;Lo;0;L;;;;;N;;;;; -131FC;EGYPTIAN HIEROGLYPH N014;Lo;0;L;;;;;N;;;;; -131FD;EGYPTIAN HIEROGLYPH N015;Lo;0;L;;;;;N;;;;; -131FE;EGYPTIAN HIEROGLYPH N016;Lo;0;L;;;;;N;;;;; -131FF;EGYPTIAN HIEROGLYPH N017;Lo;0;L;;;;;N;;;;; -13200;EGYPTIAN HIEROGLYPH N018;Lo;0;L;;;;;N;;;;; -13201;EGYPTIAN HIEROGLYPH N018A;Lo;0;L;;;;;N;;;;; -13202;EGYPTIAN HIEROGLYPH N018B;Lo;0;L;;;;;N;;;;; -13203;EGYPTIAN HIEROGLYPH N019;Lo;0;L;;;;;N;;;;; -13204;EGYPTIAN HIEROGLYPH N020;Lo;0;L;;;;;N;;;;; -13205;EGYPTIAN HIEROGLYPH N021;Lo;0;L;;;;;N;;;;; -13206;EGYPTIAN HIEROGLYPH N022;Lo;0;L;;;;;N;;;;; -13207;EGYPTIAN HIEROGLYPH N023;Lo;0;L;;;;;N;;;;; -13208;EGYPTIAN HIEROGLYPH N024;Lo;0;L;;;;;N;;;;; -13209;EGYPTIAN HIEROGLYPH N025;Lo;0;L;;;;;N;;;;; -1320A;EGYPTIAN HIEROGLYPH N025A;Lo;0;L;;;;;N;;;;; -1320B;EGYPTIAN HIEROGLYPH N026;Lo;0;L;;;;;N;;;;; -1320C;EGYPTIAN HIEROGLYPH N027;Lo;0;L;;;;;N;;;;; -1320D;EGYPTIAN HIEROGLYPH N028;Lo;0;L;;;;;N;;;;; -1320E;EGYPTIAN HIEROGLYPH N029;Lo;0;L;;;;;N;;;;; -1320F;EGYPTIAN HIEROGLYPH N030;Lo;0;L;;;;;N;;;;; -13210;EGYPTIAN HIEROGLYPH N031;Lo;0;L;;;;;N;;;;; -13211;EGYPTIAN HIEROGLYPH N032;Lo;0;L;;;;;N;;;;; -13212;EGYPTIAN HIEROGLYPH N033;Lo;0;L;;;;;N;;;;; -13213;EGYPTIAN HIEROGLYPH N033A;Lo;0;L;;;;;N;;;;; -13214;EGYPTIAN HIEROGLYPH N034;Lo;0;L;;;;;N;;;;; -13215;EGYPTIAN HIEROGLYPH N034A;Lo;0;L;;;;;N;;;;; -13216;EGYPTIAN HIEROGLYPH N035;Lo;0;L;;;;;N;;;;; -13217;EGYPTIAN HIEROGLYPH N035A;Lo;0;L;;;;;N;;;;; -13218;EGYPTIAN HIEROGLYPH N036;Lo;0;L;;;;;N;;;;; -13219;EGYPTIAN HIEROGLYPH N037;Lo;0;L;;;;;N;;;;; -1321A;EGYPTIAN HIEROGLYPH N037A;Lo;0;L;;;;;N;;;;; -1321B;EGYPTIAN HIEROGLYPH N038;Lo;0;L;;;;;N;;;;; -1321C;EGYPTIAN HIEROGLYPH N039;Lo;0;L;;;;;N;;;;; -1321D;EGYPTIAN HIEROGLYPH N040;Lo;0;L;;;;;N;;;;; -1321E;EGYPTIAN HIEROGLYPH N041;Lo;0;L;;;;;N;;;;; -1321F;EGYPTIAN HIEROGLYPH N042;Lo;0;L;;;;;N;;;;; -13220;EGYPTIAN HIEROGLYPH NL001;Lo;0;L;;;;;N;;;;; -13221;EGYPTIAN HIEROGLYPH NL002;Lo;0;L;;;;;N;;;;; -13222;EGYPTIAN HIEROGLYPH NL003;Lo;0;L;;;;;N;;;;; -13223;EGYPTIAN HIEROGLYPH NL004;Lo;0;L;;;;;N;;;;; -13224;EGYPTIAN HIEROGLYPH NL005;Lo;0;L;;;;;N;;;;; -13225;EGYPTIAN HIEROGLYPH NL005A;Lo;0;L;;;;;N;;;;; -13226;EGYPTIAN HIEROGLYPH NL006;Lo;0;L;;;;;N;;;;; -13227;EGYPTIAN HIEROGLYPH NL007;Lo;0;L;;;;;N;;;;; -13228;EGYPTIAN HIEROGLYPH NL008;Lo;0;L;;;;;N;;;;; -13229;EGYPTIAN HIEROGLYPH NL009;Lo;0;L;;;;;N;;;;; -1322A;EGYPTIAN HIEROGLYPH NL010;Lo;0;L;;;;;N;;;;; -1322B;EGYPTIAN HIEROGLYPH NL011;Lo;0;L;;;;;N;;;;; -1322C;EGYPTIAN HIEROGLYPH NL012;Lo;0;L;;;;;N;;;;; -1322D;EGYPTIAN HIEROGLYPH NL013;Lo;0;L;;;;;N;;;;; -1322E;EGYPTIAN HIEROGLYPH NL014;Lo;0;L;;;;;N;;;;; -1322F;EGYPTIAN HIEROGLYPH NL015;Lo;0;L;;;;;N;;;;; -13230;EGYPTIAN HIEROGLYPH NL016;Lo;0;L;;;;;N;;;;; -13231;EGYPTIAN HIEROGLYPH NL017;Lo;0;L;;;;;N;;;;; -13232;EGYPTIAN HIEROGLYPH NL017A;Lo;0;L;;;;;N;;;;; -13233;EGYPTIAN HIEROGLYPH NL018;Lo;0;L;;;;;N;;;;; -13234;EGYPTIAN HIEROGLYPH NL019;Lo;0;L;;;;;N;;;;; -13235;EGYPTIAN HIEROGLYPH NL020;Lo;0;L;;;;;N;;;;; -13236;EGYPTIAN HIEROGLYPH NU001;Lo;0;L;;;;;N;;;;; -13237;EGYPTIAN HIEROGLYPH NU002;Lo;0;L;;;;;N;;;;; -13238;EGYPTIAN HIEROGLYPH NU003;Lo;0;L;;;;;N;;;;; -13239;EGYPTIAN HIEROGLYPH NU004;Lo;0;L;;;;;N;;;;; -1323A;EGYPTIAN HIEROGLYPH NU005;Lo;0;L;;;;;N;;;;; -1323B;EGYPTIAN HIEROGLYPH NU006;Lo;0;L;;;;;N;;;;; -1323C;EGYPTIAN HIEROGLYPH NU007;Lo;0;L;;;;;N;;;;; -1323D;EGYPTIAN HIEROGLYPH NU008;Lo;0;L;;;;;N;;;;; -1323E;EGYPTIAN HIEROGLYPH NU009;Lo;0;L;;;;;N;;;;; -1323F;EGYPTIAN HIEROGLYPH NU010;Lo;0;L;;;;;N;;;;; -13240;EGYPTIAN HIEROGLYPH NU010A;Lo;0;L;;;;;N;;;;; -13241;EGYPTIAN HIEROGLYPH NU011;Lo;0;L;;;;;N;;;;; -13242;EGYPTIAN HIEROGLYPH NU011A;Lo;0;L;;;;;N;;;;; -13243;EGYPTIAN HIEROGLYPH NU012;Lo;0;L;;;;;N;;;;; -13244;EGYPTIAN HIEROGLYPH NU013;Lo;0;L;;;;;N;;;;; -13245;EGYPTIAN HIEROGLYPH NU014;Lo;0;L;;;;;N;;;;; -13246;EGYPTIAN HIEROGLYPH NU015;Lo;0;L;;;;;N;;;;; -13247;EGYPTIAN HIEROGLYPH NU016;Lo;0;L;;;;;N;;;;; -13248;EGYPTIAN HIEROGLYPH NU017;Lo;0;L;;;;;N;;;;; -13249;EGYPTIAN HIEROGLYPH NU018;Lo;0;L;;;;;N;;;;; -1324A;EGYPTIAN HIEROGLYPH NU018A;Lo;0;L;;;;;N;;;;; -1324B;EGYPTIAN HIEROGLYPH NU019;Lo;0;L;;;;;N;;;;; -1324C;EGYPTIAN HIEROGLYPH NU020;Lo;0;L;;;;;N;;;;; -1324D;EGYPTIAN HIEROGLYPH NU021;Lo;0;L;;;;;N;;;;; -1324E;EGYPTIAN HIEROGLYPH NU022;Lo;0;L;;;;;N;;;;; -1324F;EGYPTIAN HIEROGLYPH NU022A;Lo;0;L;;;;;N;;;;; -13250;EGYPTIAN HIEROGLYPH O001;Lo;0;L;;;;;N;;;;; -13251;EGYPTIAN HIEROGLYPH O001A;Lo;0;L;;;;;N;;;;; -13252;EGYPTIAN HIEROGLYPH O002;Lo;0;L;;;;;N;;;;; -13253;EGYPTIAN HIEROGLYPH O003;Lo;0;L;;;;;N;;;;; -13254;EGYPTIAN HIEROGLYPH O004;Lo;0;L;;;;;N;;;;; -13255;EGYPTIAN HIEROGLYPH O005;Lo;0;L;;;;;N;;;;; -13256;EGYPTIAN HIEROGLYPH O005A;Lo;0;L;;;;;N;;;;; -13257;EGYPTIAN HIEROGLYPH O006;Lo;0;L;;;;;N;;;;; -13258;EGYPTIAN HIEROGLYPH O006A;Lo;0;L;;;;;N;;;;; -13259;EGYPTIAN HIEROGLYPH O006B;Lo;0;L;;;;;N;;;;; -1325A;EGYPTIAN HIEROGLYPH O006C;Lo;0;L;;;;;N;;;;; -1325B;EGYPTIAN HIEROGLYPH O006D;Lo;0;L;;;;;N;;;;; -1325C;EGYPTIAN HIEROGLYPH O006E;Lo;0;L;;;;;N;;;;; -1325D;EGYPTIAN HIEROGLYPH O006F;Lo;0;L;;;;;N;;;;; -1325E;EGYPTIAN HIEROGLYPH O007;Lo;0;L;;;;;N;;;;; -1325F;EGYPTIAN HIEROGLYPH O008;Lo;0;L;;;;;N;;;;; -13260;EGYPTIAN HIEROGLYPH O009;Lo;0;L;;;;;N;;;;; -13261;EGYPTIAN HIEROGLYPH O010;Lo;0;L;;;;;N;;;;; -13262;EGYPTIAN HIEROGLYPH O010A;Lo;0;L;;;;;N;;;;; -13263;EGYPTIAN HIEROGLYPH O010B;Lo;0;L;;;;;N;;;;; -13264;EGYPTIAN HIEROGLYPH O010C;Lo;0;L;;;;;N;;;;; -13265;EGYPTIAN HIEROGLYPH O011;Lo;0;L;;;;;N;;;;; -13266;EGYPTIAN HIEROGLYPH O012;Lo;0;L;;;;;N;;;;; -13267;EGYPTIAN HIEROGLYPH O013;Lo;0;L;;;;;N;;;;; -13268;EGYPTIAN HIEROGLYPH O014;Lo;0;L;;;;;N;;;;; -13269;EGYPTIAN HIEROGLYPH O015;Lo;0;L;;;;;N;;;;; -1326A;EGYPTIAN HIEROGLYPH O016;Lo;0;L;;;;;N;;;;; -1326B;EGYPTIAN HIEROGLYPH O017;Lo;0;L;;;;;N;;;;; -1326C;EGYPTIAN HIEROGLYPH O018;Lo;0;L;;;;;N;;;;; -1326D;EGYPTIAN HIEROGLYPH O019;Lo;0;L;;;;;N;;;;; -1326E;EGYPTIAN HIEROGLYPH O019A;Lo;0;L;;;;;N;;;;; -1326F;EGYPTIAN HIEROGLYPH O020;Lo;0;L;;;;;N;;;;; -13270;EGYPTIAN HIEROGLYPH O020A;Lo;0;L;;;;;N;;;;; -13271;EGYPTIAN HIEROGLYPH O021;Lo;0;L;;;;;N;;;;; -13272;EGYPTIAN HIEROGLYPH O022;Lo;0;L;;;;;N;;;;; -13273;EGYPTIAN HIEROGLYPH O023;Lo;0;L;;;;;N;;;;; -13274;EGYPTIAN HIEROGLYPH O024;Lo;0;L;;;;;N;;;;; -13275;EGYPTIAN HIEROGLYPH O024A;Lo;0;L;;;;;N;;;;; -13276;EGYPTIAN HIEROGLYPH O025;Lo;0;L;;;;;N;;;;; -13277;EGYPTIAN HIEROGLYPH O025A;Lo;0;L;;;;;N;;;;; -13278;EGYPTIAN HIEROGLYPH O026;Lo;0;L;;;;;N;;;;; -13279;EGYPTIAN HIEROGLYPH O027;Lo;0;L;;;;;N;;;;; -1327A;EGYPTIAN HIEROGLYPH O028;Lo;0;L;;;;;N;;;;; -1327B;EGYPTIAN HIEROGLYPH O029;Lo;0;L;;;;;N;;;;; -1327C;EGYPTIAN HIEROGLYPH O029A;Lo;0;L;;;;;N;;;;; -1327D;EGYPTIAN HIEROGLYPH O030;Lo;0;L;;;;;N;;;;; -1327E;EGYPTIAN HIEROGLYPH O030A;Lo;0;L;;;;;N;;;;; -1327F;EGYPTIAN HIEROGLYPH O031;Lo;0;L;;;;;N;;;;; -13280;EGYPTIAN HIEROGLYPH O032;Lo;0;L;;;;;N;;;;; -13281;EGYPTIAN HIEROGLYPH O033;Lo;0;L;;;;;N;;;;; -13282;EGYPTIAN HIEROGLYPH O033A;Lo;0;L;;;;;N;;;;; -13283;EGYPTIAN HIEROGLYPH O034;Lo;0;L;;;;;N;;;;; -13284;EGYPTIAN HIEROGLYPH O035;Lo;0;L;;;;;N;;;;; -13285;EGYPTIAN HIEROGLYPH O036;Lo;0;L;;;;;N;;;;; -13286;EGYPTIAN HIEROGLYPH O036A;Lo;0;L;;;;;N;;;;; -13287;EGYPTIAN HIEROGLYPH O036B;Lo;0;L;;;;;N;;;;; -13288;EGYPTIAN HIEROGLYPH O036C;Lo;0;L;;;;;N;;;;; -13289;EGYPTIAN HIEROGLYPH O036D;Lo;0;L;;;;;N;;;;; -1328A;EGYPTIAN HIEROGLYPH O037;Lo;0;L;;;;;N;;;;; -1328B;EGYPTIAN HIEROGLYPH O038;Lo;0;L;;;;;N;;;;; -1328C;EGYPTIAN HIEROGLYPH O039;Lo;0;L;;;;;N;;;;; -1328D;EGYPTIAN HIEROGLYPH O040;Lo;0;L;;;;;N;;;;; -1328E;EGYPTIAN HIEROGLYPH O041;Lo;0;L;;;;;N;;;;; -1328F;EGYPTIAN HIEROGLYPH O042;Lo;0;L;;;;;N;;;;; -13290;EGYPTIAN HIEROGLYPH O043;Lo;0;L;;;;;N;;;;; -13291;EGYPTIAN HIEROGLYPH O044;Lo;0;L;;;;;N;;;;; -13292;EGYPTIAN HIEROGLYPH O045;Lo;0;L;;;;;N;;;;; -13293;EGYPTIAN HIEROGLYPH O046;Lo;0;L;;;;;N;;;;; -13294;EGYPTIAN HIEROGLYPH O047;Lo;0;L;;;;;N;;;;; -13295;EGYPTIAN HIEROGLYPH O048;Lo;0;L;;;;;N;;;;; -13296;EGYPTIAN HIEROGLYPH O049;Lo;0;L;;;;;N;;;;; -13297;EGYPTIAN HIEROGLYPH O050;Lo;0;L;;;;;N;;;;; -13298;EGYPTIAN HIEROGLYPH O050A;Lo;0;L;;;;;N;;;;; -13299;EGYPTIAN HIEROGLYPH O050B;Lo;0;L;;;;;N;;;;; -1329A;EGYPTIAN HIEROGLYPH O051;Lo;0;L;;;;;N;;;;; -1329B;EGYPTIAN HIEROGLYPH P001;Lo;0;L;;;;;N;;;;; -1329C;EGYPTIAN HIEROGLYPH P001A;Lo;0;L;;;;;N;;;;; -1329D;EGYPTIAN HIEROGLYPH P002;Lo;0;L;;;;;N;;;;; -1329E;EGYPTIAN HIEROGLYPH P003;Lo;0;L;;;;;N;;;;; -1329F;EGYPTIAN HIEROGLYPH P003A;Lo;0;L;;;;;N;;;;; -132A0;EGYPTIAN HIEROGLYPH P004;Lo;0;L;;;;;N;;;;; -132A1;EGYPTIAN HIEROGLYPH P005;Lo;0;L;;;;;N;;;;; -132A2;EGYPTIAN HIEROGLYPH P006;Lo;0;L;;;;;N;;;;; -132A3;EGYPTIAN HIEROGLYPH P007;Lo;0;L;;;;;N;;;;; -132A4;EGYPTIAN HIEROGLYPH P008;Lo;0;L;;;;;N;;;;; -132A5;EGYPTIAN HIEROGLYPH P009;Lo;0;L;;;;;N;;;;; -132A6;EGYPTIAN HIEROGLYPH P010;Lo;0;L;;;;;N;;;;; -132A7;EGYPTIAN HIEROGLYPH P011;Lo;0;L;;;;;N;;;;; -132A8;EGYPTIAN HIEROGLYPH Q001;Lo;0;L;;;;;N;;;;; -132A9;EGYPTIAN HIEROGLYPH Q002;Lo;0;L;;;;;N;;;;; -132AA;EGYPTIAN HIEROGLYPH Q003;Lo;0;L;;;;;N;;;;; -132AB;EGYPTIAN HIEROGLYPH Q004;Lo;0;L;;;;;N;;;;; -132AC;EGYPTIAN HIEROGLYPH Q005;Lo;0;L;;;;;N;;;;; -132AD;EGYPTIAN HIEROGLYPH Q006;Lo;0;L;;;;;N;;;;; -132AE;EGYPTIAN HIEROGLYPH Q007;Lo;0;L;;;;;N;;;;; -132AF;EGYPTIAN HIEROGLYPH R001;Lo;0;L;;;;;N;;;;; -132B0;EGYPTIAN HIEROGLYPH R002;Lo;0;L;;;;;N;;;;; -132B1;EGYPTIAN HIEROGLYPH R002A;Lo;0;L;;;;;N;;;;; -132B2;EGYPTIAN HIEROGLYPH R003;Lo;0;L;;;;;N;;;;; -132B3;EGYPTIAN HIEROGLYPH R003A;Lo;0;L;;;;;N;;;;; -132B4;EGYPTIAN HIEROGLYPH R003B;Lo;0;L;;;;;N;;;;; -132B5;EGYPTIAN HIEROGLYPH R004;Lo;0;L;;;;;N;;;;; -132B6;EGYPTIAN HIEROGLYPH R005;Lo;0;L;;;;;N;;;;; -132B7;EGYPTIAN HIEROGLYPH R006;Lo;0;L;;;;;N;;;;; -132B8;EGYPTIAN HIEROGLYPH R007;Lo;0;L;;;;;N;;;;; -132B9;EGYPTIAN HIEROGLYPH R008;Lo;0;L;;;;;N;;;;; -132BA;EGYPTIAN HIEROGLYPH R009;Lo;0;L;;;;;N;;;;; -132BB;EGYPTIAN HIEROGLYPH R010;Lo;0;L;;;;;N;;;;; -132BC;EGYPTIAN HIEROGLYPH R010A;Lo;0;L;;;;;N;;;;; -132BD;EGYPTIAN HIEROGLYPH R011;Lo;0;L;;;;;N;;;;; -132BE;EGYPTIAN HIEROGLYPH R012;Lo;0;L;;;;;N;;;;; -132BF;EGYPTIAN HIEROGLYPH R013;Lo;0;L;;;;;N;;;;; -132C0;EGYPTIAN HIEROGLYPH R014;Lo;0;L;;;;;N;;;;; -132C1;EGYPTIAN HIEROGLYPH R015;Lo;0;L;;;;;N;;;;; -132C2;EGYPTIAN HIEROGLYPH R016;Lo;0;L;;;;;N;;;;; -132C3;EGYPTIAN HIEROGLYPH R016A;Lo;0;L;;;;;N;;;;; -132C4;EGYPTIAN HIEROGLYPH R017;Lo;0;L;;;;;N;;;;; -132C5;EGYPTIAN HIEROGLYPH R018;Lo;0;L;;;;;N;;;;; -132C6;EGYPTIAN HIEROGLYPH R019;Lo;0;L;;;;;N;;;;; -132C7;EGYPTIAN HIEROGLYPH R020;Lo;0;L;;;;;N;;;;; -132C8;EGYPTIAN HIEROGLYPH R021;Lo;0;L;;;;;N;;;;; -132C9;EGYPTIAN HIEROGLYPH R022;Lo;0;L;;;;;N;;;;; -132CA;EGYPTIAN HIEROGLYPH R023;Lo;0;L;;;;;N;;;;; -132CB;EGYPTIAN HIEROGLYPH R024;Lo;0;L;;;;;N;;;;; -132CC;EGYPTIAN HIEROGLYPH R025;Lo;0;L;;;;;N;;;;; -132CD;EGYPTIAN HIEROGLYPH R026;Lo;0;L;;;;;N;;;;; -132CE;EGYPTIAN HIEROGLYPH R027;Lo;0;L;;;;;N;;;;; -132CF;EGYPTIAN HIEROGLYPH R028;Lo;0;L;;;;;N;;;;; -132D0;EGYPTIAN HIEROGLYPH R029;Lo;0;L;;;;;N;;;;; -132D1;EGYPTIAN HIEROGLYPH S001;Lo;0;L;;;;;N;;;;; -132D2;EGYPTIAN HIEROGLYPH S002;Lo;0;L;;;;;N;;;;; -132D3;EGYPTIAN HIEROGLYPH S002A;Lo;0;L;;;;;N;;;;; -132D4;EGYPTIAN HIEROGLYPH S003;Lo;0;L;;;;;N;;;;; -132D5;EGYPTIAN HIEROGLYPH S004;Lo;0;L;;;;;N;;;;; -132D6;EGYPTIAN HIEROGLYPH S005;Lo;0;L;;;;;N;;;;; -132D7;EGYPTIAN HIEROGLYPH S006;Lo;0;L;;;;;N;;;;; -132D8;EGYPTIAN HIEROGLYPH S006A;Lo;0;L;;;;;N;;;;; -132D9;EGYPTIAN HIEROGLYPH S007;Lo;0;L;;;;;N;;;;; -132DA;EGYPTIAN HIEROGLYPH S008;Lo;0;L;;;;;N;;;;; -132DB;EGYPTIAN HIEROGLYPH S009;Lo;0;L;;;;;N;;;;; -132DC;EGYPTIAN HIEROGLYPH S010;Lo;0;L;;;;;N;;;;; -132DD;EGYPTIAN HIEROGLYPH S011;Lo;0;L;;;;;N;;;;; -132DE;EGYPTIAN HIEROGLYPH S012;Lo;0;L;;;;;N;;;;; -132DF;EGYPTIAN HIEROGLYPH S013;Lo;0;L;;;;;N;;;;; -132E0;EGYPTIAN HIEROGLYPH S014;Lo;0;L;;;;;N;;;;; -132E1;EGYPTIAN HIEROGLYPH S014A;Lo;0;L;;;;;N;;;;; -132E2;EGYPTIAN HIEROGLYPH S014B;Lo;0;L;;;;;N;;;;; -132E3;EGYPTIAN HIEROGLYPH S015;Lo;0;L;;;;;N;;;;; -132E4;EGYPTIAN HIEROGLYPH S016;Lo;0;L;;;;;N;;;;; -132E5;EGYPTIAN HIEROGLYPH S017;Lo;0;L;;;;;N;;;;; -132E6;EGYPTIAN HIEROGLYPH S017A;Lo;0;L;;;;;N;;;;; -132E7;EGYPTIAN HIEROGLYPH S018;Lo;0;L;;;;;N;;;;; -132E8;EGYPTIAN HIEROGLYPH S019;Lo;0;L;;;;;N;;;;; -132E9;EGYPTIAN HIEROGLYPH S020;Lo;0;L;;;;;N;;;;; -132EA;EGYPTIAN HIEROGLYPH S021;Lo;0;L;;;;;N;;;;; -132EB;EGYPTIAN HIEROGLYPH S022;Lo;0;L;;;;;N;;;;; -132EC;EGYPTIAN HIEROGLYPH S023;Lo;0;L;;;;;N;;;;; -132ED;EGYPTIAN HIEROGLYPH S024;Lo;0;L;;;;;N;;;;; -132EE;EGYPTIAN HIEROGLYPH S025;Lo;0;L;;;;;N;;;;; -132EF;EGYPTIAN HIEROGLYPH S026;Lo;0;L;;;;;N;;;;; -132F0;EGYPTIAN HIEROGLYPH S026A;Lo;0;L;;;;;N;;;;; -132F1;EGYPTIAN HIEROGLYPH S026B;Lo;0;L;;;;;N;;;;; -132F2;EGYPTIAN HIEROGLYPH S027;Lo;0;L;;;;;N;;;;; -132F3;EGYPTIAN HIEROGLYPH S028;Lo;0;L;;;;;N;;;;; -132F4;EGYPTIAN HIEROGLYPH S029;Lo;0;L;;;;;N;;;;; -132F5;EGYPTIAN HIEROGLYPH S030;Lo;0;L;;;;;N;;;;; -132F6;EGYPTIAN HIEROGLYPH S031;Lo;0;L;;;;;N;;;;; -132F7;EGYPTIAN HIEROGLYPH S032;Lo;0;L;;;;;N;;;;; -132F8;EGYPTIAN HIEROGLYPH S033;Lo;0;L;;;;;N;;;;; -132F9;EGYPTIAN HIEROGLYPH S034;Lo;0;L;;;;;N;;;;; -132FA;EGYPTIAN HIEROGLYPH S035;Lo;0;L;;;;;N;;;;; -132FB;EGYPTIAN HIEROGLYPH S035A;Lo;0;L;;;;;N;;;;; -132FC;EGYPTIAN HIEROGLYPH S036;Lo;0;L;;;;;N;;;;; -132FD;EGYPTIAN HIEROGLYPH S037;Lo;0;L;;;;;N;;;;; -132FE;EGYPTIAN HIEROGLYPH S038;Lo;0;L;;;;;N;;;;; -132FF;EGYPTIAN HIEROGLYPH S039;Lo;0;L;;;;;N;;;;; -13300;EGYPTIAN HIEROGLYPH S040;Lo;0;L;;;;;N;;;;; -13301;EGYPTIAN HIEROGLYPH S041;Lo;0;L;;;;;N;;;;; -13302;EGYPTIAN HIEROGLYPH S042;Lo;0;L;;;;;N;;;;; -13303;EGYPTIAN HIEROGLYPH S043;Lo;0;L;;;;;N;;;;; -13304;EGYPTIAN HIEROGLYPH S044;Lo;0;L;;;;;N;;;;; -13305;EGYPTIAN HIEROGLYPH S045;Lo;0;L;;;;;N;;;;; -13306;EGYPTIAN HIEROGLYPH S046;Lo;0;L;;;;;N;;;;; -13307;EGYPTIAN HIEROGLYPH T001;Lo;0;L;;;;;N;;;;; -13308;EGYPTIAN HIEROGLYPH T002;Lo;0;L;;;;;N;;;;; -13309;EGYPTIAN HIEROGLYPH T003;Lo;0;L;;;;;N;;;;; -1330A;EGYPTIAN HIEROGLYPH T003A;Lo;0;L;;;;;N;;;;; -1330B;EGYPTIAN HIEROGLYPH T004;Lo;0;L;;;;;N;;;;; -1330C;EGYPTIAN HIEROGLYPH T005;Lo;0;L;;;;;N;;;;; -1330D;EGYPTIAN HIEROGLYPH T006;Lo;0;L;;;;;N;;;;; -1330E;EGYPTIAN HIEROGLYPH T007;Lo;0;L;;;;;N;;;;; -1330F;EGYPTIAN HIEROGLYPH T007A;Lo;0;L;;;;;N;;;;; -13310;EGYPTIAN HIEROGLYPH T008;Lo;0;L;;;;;N;;;;; -13311;EGYPTIAN HIEROGLYPH T008A;Lo;0;L;;;;;N;;;;; -13312;EGYPTIAN HIEROGLYPH T009;Lo;0;L;;;;;N;;;;; -13313;EGYPTIAN HIEROGLYPH T009A;Lo;0;L;;;;;N;;;;; -13314;EGYPTIAN HIEROGLYPH T010;Lo;0;L;;;;;N;;;;; -13315;EGYPTIAN HIEROGLYPH T011;Lo;0;L;;;;;N;;;;; -13316;EGYPTIAN HIEROGLYPH T011A;Lo;0;L;;;;;N;;;;; -13317;EGYPTIAN HIEROGLYPH T012;Lo;0;L;;;;;N;;;;; -13318;EGYPTIAN HIEROGLYPH T013;Lo;0;L;;;;;N;;;;; -13319;EGYPTIAN HIEROGLYPH T014;Lo;0;L;;;;;N;;;;; -1331A;EGYPTIAN HIEROGLYPH T015;Lo;0;L;;;;;N;;;;; -1331B;EGYPTIAN HIEROGLYPH T016;Lo;0;L;;;;;N;;;;; -1331C;EGYPTIAN HIEROGLYPH T016A;Lo;0;L;;;;;N;;;;; -1331D;EGYPTIAN HIEROGLYPH T017;Lo;0;L;;;;;N;;;;; -1331E;EGYPTIAN HIEROGLYPH T018;Lo;0;L;;;;;N;;;;; -1331F;EGYPTIAN HIEROGLYPH T019;Lo;0;L;;;;;N;;;;; -13320;EGYPTIAN HIEROGLYPH T020;Lo;0;L;;;;;N;;;;; -13321;EGYPTIAN HIEROGLYPH T021;Lo;0;L;;;;;N;;;;; -13322;EGYPTIAN HIEROGLYPH T022;Lo;0;L;;;;;N;;;;; -13323;EGYPTIAN HIEROGLYPH T023;Lo;0;L;;;;;N;;;;; -13324;EGYPTIAN HIEROGLYPH T024;Lo;0;L;;;;;N;;;;; -13325;EGYPTIAN HIEROGLYPH T025;Lo;0;L;;;;;N;;;;; -13326;EGYPTIAN HIEROGLYPH T026;Lo;0;L;;;;;N;;;;; -13327;EGYPTIAN HIEROGLYPH T027;Lo;0;L;;;;;N;;;;; -13328;EGYPTIAN HIEROGLYPH T028;Lo;0;L;;;;;N;;;;; -13329;EGYPTIAN HIEROGLYPH T029;Lo;0;L;;;;;N;;;;; -1332A;EGYPTIAN HIEROGLYPH T030;Lo;0;L;;;;;N;;;;; -1332B;EGYPTIAN HIEROGLYPH T031;Lo;0;L;;;;;N;;;;; -1332C;EGYPTIAN HIEROGLYPH T032;Lo;0;L;;;;;N;;;;; -1332D;EGYPTIAN HIEROGLYPH T032A;Lo;0;L;;;;;N;;;;; -1332E;EGYPTIAN HIEROGLYPH T033;Lo;0;L;;;;;N;;;;; -1332F;EGYPTIAN HIEROGLYPH T033A;Lo;0;L;;;;;N;;;;; -13330;EGYPTIAN HIEROGLYPH T034;Lo;0;L;;;;;N;;;;; -13331;EGYPTIAN HIEROGLYPH T035;Lo;0;L;;;;;N;;;;; -13332;EGYPTIAN HIEROGLYPH T036;Lo;0;L;;;;;N;;;;; -13333;EGYPTIAN HIEROGLYPH U001;Lo;0;L;;;;;N;;;;; -13334;EGYPTIAN HIEROGLYPH U002;Lo;0;L;;;;;N;;;;; -13335;EGYPTIAN HIEROGLYPH U003;Lo;0;L;;;;;N;;;;; -13336;EGYPTIAN HIEROGLYPH U004;Lo;0;L;;;;;N;;;;; -13337;EGYPTIAN HIEROGLYPH U005;Lo;0;L;;;;;N;;;;; -13338;EGYPTIAN HIEROGLYPH U006;Lo;0;L;;;;;N;;;;; -13339;EGYPTIAN HIEROGLYPH U006A;Lo;0;L;;;;;N;;;;; -1333A;EGYPTIAN HIEROGLYPH U006B;Lo;0;L;;;;;N;;;;; -1333B;EGYPTIAN HIEROGLYPH U007;Lo;0;L;;;;;N;;;;; -1333C;EGYPTIAN HIEROGLYPH U008;Lo;0;L;;;;;N;;;;; -1333D;EGYPTIAN HIEROGLYPH U009;Lo;0;L;;;;;N;;;;; -1333E;EGYPTIAN HIEROGLYPH U010;Lo;0;L;;;;;N;;;;; -1333F;EGYPTIAN HIEROGLYPH U011;Lo;0;L;;;;;N;;;;; -13340;EGYPTIAN HIEROGLYPH U012;Lo;0;L;;;;;N;;;;; -13341;EGYPTIAN HIEROGLYPH U013;Lo;0;L;;;;;N;;;;; -13342;EGYPTIAN HIEROGLYPH U014;Lo;0;L;;;;;N;;;;; -13343;EGYPTIAN HIEROGLYPH U015;Lo;0;L;;;;;N;;;;; -13344;EGYPTIAN HIEROGLYPH U016;Lo;0;L;;;;;N;;;;; -13345;EGYPTIAN HIEROGLYPH U017;Lo;0;L;;;;;N;;;;; -13346;EGYPTIAN HIEROGLYPH U018;Lo;0;L;;;;;N;;;;; -13347;EGYPTIAN HIEROGLYPH U019;Lo;0;L;;;;;N;;;;; -13348;EGYPTIAN HIEROGLYPH U020;Lo;0;L;;;;;N;;;;; -13349;EGYPTIAN HIEROGLYPH U021;Lo;0;L;;;;;N;;;;; -1334A;EGYPTIAN HIEROGLYPH U022;Lo;0;L;;;;;N;;;;; -1334B;EGYPTIAN HIEROGLYPH U023;Lo;0;L;;;;;N;;;;; -1334C;EGYPTIAN HIEROGLYPH U023A;Lo;0;L;;;;;N;;;;; -1334D;EGYPTIAN HIEROGLYPH U024;Lo;0;L;;;;;N;;;;; -1334E;EGYPTIAN HIEROGLYPH U025;Lo;0;L;;;;;N;;;;; -1334F;EGYPTIAN HIEROGLYPH U026;Lo;0;L;;;;;N;;;;; -13350;EGYPTIAN HIEROGLYPH U027;Lo;0;L;;;;;N;;;;; -13351;EGYPTIAN HIEROGLYPH U028;Lo;0;L;;;;;N;;;;; -13352;EGYPTIAN HIEROGLYPH U029;Lo;0;L;;;;;N;;;;; -13353;EGYPTIAN HIEROGLYPH U029A;Lo;0;L;;;;;N;;;;; -13354;EGYPTIAN HIEROGLYPH U030;Lo;0;L;;;;;N;;;;; -13355;EGYPTIAN HIEROGLYPH U031;Lo;0;L;;;;;N;;;;; -13356;EGYPTIAN HIEROGLYPH U032;Lo;0;L;;;;;N;;;;; -13357;EGYPTIAN HIEROGLYPH U032A;Lo;0;L;;;;;N;;;;; -13358;EGYPTIAN HIEROGLYPH U033;Lo;0;L;;;;;N;;;;; -13359;EGYPTIAN HIEROGLYPH U034;Lo;0;L;;;;;N;;;;; -1335A;EGYPTIAN HIEROGLYPH U035;Lo;0;L;;;;;N;;;;; -1335B;EGYPTIAN HIEROGLYPH U036;Lo;0;L;;;;;N;;;;; -1335C;EGYPTIAN HIEROGLYPH U037;Lo;0;L;;;;;N;;;;; -1335D;EGYPTIAN HIEROGLYPH U038;Lo;0;L;;;;;N;;;;; -1335E;EGYPTIAN HIEROGLYPH U039;Lo;0;L;;;;;N;;;;; -1335F;EGYPTIAN HIEROGLYPH U040;Lo;0;L;;;;;N;;;;; -13360;EGYPTIAN HIEROGLYPH U041;Lo;0;L;;;;;N;;;;; -13361;EGYPTIAN HIEROGLYPH U042;Lo;0;L;;;;;N;;;;; -13362;EGYPTIAN HIEROGLYPH V001;Lo;0;L;;;;;N;;;;; -13363;EGYPTIAN HIEROGLYPH V001A;Lo;0;L;;;;;N;;;;; -13364;EGYPTIAN HIEROGLYPH V001B;Lo;0;L;;;;;N;;;;; -13365;EGYPTIAN HIEROGLYPH V001C;Lo;0;L;;;;;N;;;;; -13366;EGYPTIAN HIEROGLYPH V001D;Lo;0;L;;;;;N;;;;; -13367;EGYPTIAN HIEROGLYPH V001E;Lo;0;L;;;;;N;;;;; -13368;EGYPTIAN HIEROGLYPH V001F;Lo;0;L;;;;;N;;;;; -13369;EGYPTIAN HIEROGLYPH V001G;Lo;0;L;;;;;N;;;;; -1336A;EGYPTIAN HIEROGLYPH V001H;Lo;0;L;;;;;N;;;;; -1336B;EGYPTIAN HIEROGLYPH V001I;Lo;0;L;;;;;N;;;;; -1336C;EGYPTIAN HIEROGLYPH V002;Lo;0;L;;;;;N;;;;; -1336D;EGYPTIAN HIEROGLYPH V002A;Lo;0;L;;;;;N;;;;; -1336E;EGYPTIAN HIEROGLYPH V003;Lo;0;L;;;;;N;;;;; -1336F;EGYPTIAN HIEROGLYPH V004;Lo;0;L;;;;;N;;;;; -13370;EGYPTIAN HIEROGLYPH V005;Lo;0;L;;;;;N;;;;; -13371;EGYPTIAN HIEROGLYPH V006;Lo;0;L;;;;;N;;;;; -13372;EGYPTIAN HIEROGLYPH V007;Lo;0;L;;;;;N;;;;; -13373;EGYPTIAN HIEROGLYPH V007A;Lo;0;L;;;;;N;;;;; -13374;EGYPTIAN HIEROGLYPH V007B;Lo;0;L;;;;;N;;;;; -13375;EGYPTIAN HIEROGLYPH V008;Lo;0;L;;;;;N;;;;; -13376;EGYPTIAN HIEROGLYPH V009;Lo;0;L;;;;;N;;;;; -13377;EGYPTIAN HIEROGLYPH V010;Lo;0;L;;;;;N;;;;; -13378;EGYPTIAN HIEROGLYPH V011;Lo;0;L;;;;;N;;;;; -13379;EGYPTIAN HIEROGLYPH V011A;Lo;0;L;;;;;N;;;;; -1337A;EGYPTIAN HIEROGLYPH V011B;Lo;0;L;;;;;N;;;;; -1337B;EGYPTIAN HIEROGLYPH V011C;Lo;0;L;;;;;N;;;;; -1337C;EGYPTIAN HIEROGLYPH V012;Lo;0;L;;;;;N;;;;; -1337D;EGYPTIAN HIEROGLYPH V012A;Lo;0;L;;;;;N;;;;; -1337E;EGYPTIAN HIEROGLYPH V012B;Lo;0;L;;;;;N;;;;; -1337F;EGYPTIAN HIEROGLYPH V013;Lo;0;L;;;;;N;;;;; -13380;EGYPTIAN HIEROGLYPH V014;Lo;0;L;;;;;N;;;;; -13381;EGYPTIAN HIEROGLYPH V015;Lo;0;L;;;;;N;;;;; -13382;EGYPTIAN HIEROGLYPH V016;Lo;0;L;;;;;N;;;;; -13383;EGYPTIAN HIEROGLYPH V017;Lo;0;L;;;;;N;;;;; -13384;EGYPTIAN HIEROGLYPH V018;Lo;0;L;;;;;N;;;;; -13385;EGYPTIAN HIEROGLYPH V019;Lo;0;L;;;;;N;;;;; -13386;EGYPTIAN HIEROGLYPH V020;Lo;0;L;;;;;N;;;;; -13387;EGYPTIAN HIEROGLYPH V020A;Lo;0;L;;;;;N;;;;; -13388;EGYPTIAN HIEROGLYPH V020B;Lo;0;L;;;;;N;;;;; -13389;EGYPTIAN HIEROGLYPH V020C;Lo;0;L;;;;;N;;;;; -1338A;EGYPTIAN HIEROGLYPH V020D;Lo;0;L;;;;;N;;;;; -1338B;EGYPTIAN HIEROGLYPH V020E;Lo;0;L;;;;;N;;;;; -1338C;EGYPTIAN HIEROGLYPH V020F;Lo;0;L;;;;;N;;;;; -1338D;EGYPTIAN HIEROGLYPH V020G;Lo;0;L;;;;;N;;;;; -1338E;EGYPTIAN HIEROGLYPH V020H;Lo;0;L;;;;;N;;;;; -1338F;EGYPTIAN HIEROGLYPH V020I;Lo;0;L;;;;;N;;;;; -13390;EGYPTIAN HIEROGLYPH V020J;Lo;0;L;;;;;N;;;;; -13391;EGYPTIAN HIEROGLYPH V020K;Lo;0;L;;;;;N;;;;; -13392;EGYPTIAN HIEROGLYPH V020L;Lo;0;L;;;;;N;;;;; -13393;EGYPTIAN HIEROGLYPH V021;Lo;0;L;;;;;N;;;;; -13394;EGYPTIAN HIEROGLYPH V022;Lo;0;L;;;;;N;;;;; -13395;EGYPTIAN HIEROGLYPH V023;Lo;0;L;;;;;N;;;;; -13396;EGYPTIAN HIEROGLYPH V023A;Lo;0;L;;;;;N;;;;; -13397;EGYPTIAN HIEROGLYPH V024;Lo;0;L;;;;;N;;;;; -13398;EGYPTIAN HIEROGLYPH V025;Lo;0;L;;;;;N;;;;; -13399;EGYPTIAN HIEROGLYPH V026;Lo;0;L;;;;;N;;;;; -1339A;EGYPTIAN HIEROGLYPH V027;Lo;0;L;;;;;N;;;;; -1339B;EGYPTIAN HIEROGLYPH V028;Lo;0;L;;;;;N;;;;; -1339C;EGYPTIAN HIEROGLYPH V028A;Lo;0;L;;;;;N;;;;; -1339D;EGYPTIAN HIEROGLYPH V029;Lo;0;L;;;;;N;;;;; -1339E;EGYPTIAN HIEROGLYPH V029A;Lo;0;L;;;;;N;;;;; -1339F;EGYPTIAN HIEROGLYPH V030;Lo;0;L;;;;;N;;;;; -133A0;EGYPTIAN HIEROGLYPH V030A;Lo;0;L;;;;;N;;;;; -133A1;EGYPTIAN HIEROGLYPH V031;Lo;0;L;;;;;N;;;;; -133A2;EGYPTIAN HIEROGLYPH V031A;Lo;0;L;;;;;N;;;;; -133A3;EGYPTIAN HIEROGLYPH V032;Lo;0;L;;;;;N;;;;; -133A4;EGYPTIAN HIEROGLYPH V033;Lo;0;L;;;;;N;;;;; -133A5;EGYPTIAN HIEROGLYPH V033A;Lo;0;L;;;;;N;;;;; -133A6;EGYPTIAN HIEROGLYPH V034;Lo;0;L;;;;;N;;;;; -133A7;EGYPTIAN HIEROGLYPH V035;Lo;0;L;;;;;N;;;;; -133A8;EGYPTIAN HIEROGLYPH V036;Lo;0;L;;;;;N;;;;; -133A9;EGYPTIAN HIEROGLYPH V037;Lo;0;L;;;;;N;;;;; -133AA;EGYPTIAN HIEROGLYPH V037A;Lo;0;L;;;;;N;;;;; -133AB;EGYPTIAN HIEROGLYPH V038;Lo;0;L;;;;;N;;;;; -133AC;EGYPTIAN HIEROGLYPH V039;Lo;0;L;;;;;N;;;;; -133AD;EGYPTIAN HIEROGLYPH V040;Lo;0;L;;;;;N;;;;; -133AE;EGYPTIAN HIEROGLYPH V040A;Lo;0;L;;;;;N;;;;; -133AF;EGYPTIAN HIEROGLYPH W001;Lo;0;L;;;;;N;;;;; -133B0;EGYPTIAN HIEROGLYPH W002;Lo;0;L;;;;;N;;;;; -133B1;EGYPTIAN HIEROGLYPH W003;Lo;0;L;;;;;N;;;;; -133B2;EGYPTIAN HIEROGLYPH W003A;Lo;0;L;;;;;N;;;;; -133B3;EGYPTIAN HIEROGLYPH W004;Lo;0;L;;;;;N;;;;; -133B4;EGYPTIAN HIEROGLYPH W005;Lo;0;L;;;;;N;;;;; -133B5;EGYPTIAN HIEROGLYPH W006;Lo;0;L;;;;;N;;;;; -133B6;EGYPTIAN HIEROGLYPH W007;Lo;0;L;;;;;N;;;;; -133B7;EGYPTIAN HIEROGLYPH W008;Lo;0;L;;;;;N;;;;; -133B8;EGYPTIAN HIEROGLYPH W009;Lo;0;L;;;;;N;;;;; -133B9;EGYPTIAN HIEROGLYPH W009A;Lo;0;L;;;;;N;;;;; -133BA;EGYPTIAN HIEROGLYPH W010;Lo;0;L;;;;;N;;;;; -133BB;EGYPTIAN HIEROGLYPH W010A;Lo;0;L;;;;;N;;;;; -133BC;EGYPTIAN HIEROGLYPH W011;Lo;0;L;;;;;N;;;;; -133BD;EGYPTIAN HIEROGLYPH W012;Lo;0;L;;;;;N;;;;; -133BE;EGYPTIAN HIEROGLYPH W013;Lo;0;L;;;;;N;;;;; -133BF;EGYPTIAN HIEROGLYPH W014;Lo;0;L;;;;;N;;;;; -133C0;EGYPTIAN HIEROGLYPH W014A;Lo;0;L;;;;;N;;;;; -133C1;EGYPTIAN HIEROGLYPH W015;Lo;0;L;;;;;N;;;;; -133C2;EGYPTIAN HIEROGLYPH W016;Lo;0;L;;;;;N;;;;; -133C3;EGYPTIAN HIEROGLYPH W017;Lo;0;L;;;;;N;;;;; -133C4;EGYPTIAN HIEROGLYPH W017A;Lo;0;L;;;;;N;;;;; -133C5;EGYPTIAN HIEROGLYPH W018;Lo;0;L;;;;;N;;;;; -133C6;EGYPTIAN HIEROGLYPH W018A;Lo;0;L;;;;;N;;;;; -133C7;EGYPTIAN HIEROGLYPH W019;Lo;0;L;;;;;N;;;;; -133C8;EGYPTIAN HIEROGLYPH W020;Lo;0;L;;;;;N;;;;; -133C9;EGYPTIAN HIEROGLYPH W021;Lo;0;L;;;;;N;;;;; -133CA;EGYPTIAN HIEROGLYPH W022;Lo;0;L;;;;;N;;;;; -133CB;EGYPTIAN HIEROGLYPH W023;Lo;0;L;;;;;N;;;;; -133CC;EGYPTIAN HIEROGLYPH W024;Lo;0;L;;;;;N;;;;; -133CD;EGYPTIAN HIEROGLYPH W024A;Lo;0;L;;;;;N;;;;; -133CE;EGYPTIAN HIEROGLYPH W025;Lo;0;L;;;;;N;;;;; -133CF;EGYPTIAN HIEROGLYPH X001;Lo;0;L;;;;;N;;;;; -133D0;EGYPTIAN HIEROGLYPH X002;Lo;0;L;;;;;N;;;;; -133D1;EGYPTIAN HIEROGLYPH X003;Lo;0;L;;;;;N;;;;; -133D2;EGYPTIAN HIEROGLYPH X004;Lo;0;L;;;;;N;;;;; -133D3;EGYPTIAN HIEROGLYPH X004A;Lo;0;L;;;;;N;;;;; -133D4;EGYPTIAN HIEROGLYPH X004B;Lo;0;L;;;;;N;;;;; -133D5;EGYPTIAN HIEROGLYPH X005;Lo;0;L;;;;;N;;;;; -133D6;EGYPTIAN HIEROGLYPH X006;Lo;0;L;;;;;N;;;;; -133D7;EGYPTIAN HIEROGLYPH X006A;Lo;0;L;;;;;N;;;;; -133D8;EGYPTIAN HIEROGLYPH X007;Lo;0;L;;;;;N;;;;; -133D9;EGYPTIAN HIEROGLYPH X008;Lo;0;L;;;;;N;;;;; -133DA;EGYPTIAN HIEROGLYPH X008A;Lo;0;L;;;;;N;;;;; -133DB;EGYPTIAN HIEROGLYPH Y001;Lo;0;L;;;;;N;;;;; -133DC;EGYPTIAN HIEROGLYPH Y001A;Lo;0;L;;;;;N;;;;; -133DD;EGYPTIAN HIEROGLYPH Y002;Lo;0;L;;;;;N;;;;; -133DE;EGYPTIAN HIEROGLYPH Y003;Lo;0;L;;;;;N;;;;; -133DF;EGYPTIAN HIEROGLYPH Y004;Lo;0;L;;;;;N;;;;; -133E0;EGYPTIAN HIEROGLYPH Y005;Lo;0;L;;;;;N;;;;; -133E1;EGYPTIAN HIEROGLYPH Y006;Lo;0;L;;;;;N;;;;; -133E2;EGYPTIAN HIEROGLYPH Y007;Lo;0;L;;;;;N;;;;; -133E3;EGYPTIAN HIEROGLYPH Y008;Lo;0;L;;;;;N;;;;; -133E4;EGYPTIAN HIEROGLYPH Z001;Lo;0;L;;;;;N;;;;; -133E5;EGYPTIAN HIEROGLYPH Z002;Lo;0;L;;;;;N;;;;; -133E6;EGYPTIAN HIEROGLYPH Z002A;Lo;0;L;;;;;N;;;;; -133E7;EGYPTIAN HIEROGLYPH Z002B;Lo;0;L;;;;;N;;;;; -133E8;EGYPTIAN HIEROGLYPH Z002C;Lo;0;L;;;;;N;;;;; -133E9;EGYPTIAN HIEROGLYPH Z002D;Lo;0;L;;;;;N;;;;; -133EA;EGYPTIAN HIEROGLYPH Z003;Lo;0;L;;;;;N;;;;; -133EB;EGYPTIAN HIEROGLYPH Z003A;Lo;0;L;;;;;N;;;;; -133EC;EGYPTIAN HIEROGLYPH Z003B;Lo;0;L;;;;;N;;;;; -133ED;EGYPTIAN HIEROGLYPH Z004;Lo;0;L;;;;;N;;;;; -133EE;EGYPTIAN HIEROGLYPH Z004A;Lo;0;L;;;;;N;;;;; -133EF;EGYPTIAN HIEROGLYPH Z005;Lo;0;L;;;;;N;;;;; -133F0;EGYPTIAN HIEROGLYPH Z005A;Lo;0;L;;;;;N;;;;; -133F1;EGYPTIAN HIEROGLYPH Z006;Lo;0;L;;;;;N;;;;; -133F2;EGYPTIAN HIEROGLYPH Z007;Lo;0;L;;;;;N;;;;; -133F3;EGYPTIAN HIEROGLYPH Z008;Lo;0;L;;;;;N;;;;; -133F4;EGYPTIAN HIEROGLYPH Z009;Lo;0;L;;;;;N;;;;; -133F5;EGYPTIAN HIEROGLYPH Z010;Lo;0;L;;;;;N;;;;; -133F6;EGYPTIAN HIEROGLYPH Z011;Lo;0;L;;;;;N;;;;; -133F7;EGYPTIAN HIEROGLYPH Z012;Lo;0;L;;;;;N;;;;; -133F8;EGYPTIAN HIEROGLYPH Z013;Lo;0;L;;;;;N;;;;; -133F9;EGYPTIAN HIEROGLYPH Z014;Lo;0;L;;;;;N;;;;; -133FA;EGYPTIAN HIEROGLYPH Z015;Lo;0;L;;;;;N;;;;; -133FB;EGYPTIAN HIEROGLYPH Z015A;Lo;0;L;;;;;N;;;;; -133FC;EGYPTIAN HIEROGLYPH Z015B;Lo;0;L;;;;;N;;;;; -133FD;EGYPTIAN HIEROGLYPH Z015C;Lo;0;L;;;;;N;;;;; -133FE;EGYPTIAN HIEROGLYPH Z015D;Lo;0;L;;;;;N;;;;; -133FF;EGYPTIAN HIEROGLYPH Z015E;Lo;0;L;;;;;N;;;;; -13400;EGYPTIAN HIEROGLYPH Z015F;Lo;0;L;;;;;N;;;;; -13401;EGYPTIAN HIEROGLYPH Z015G;Lo;0;L;;;;;N;;;;; -13402;EGYPTIAN HIEROGLYPH Z015H;Lo;0;L;;;;;N;;;;; -13403;EGYPTIAN HIEROGLYPH Z015I;Lo;0;L;;;;;N;;;;; -13404;EGYPTIAN HIEROGLYPH Z016;Lo;0;L;;;;;N;;;;; -13405;EGYPTIAN HIEROGLYPH Z016A;Lo;0;L;;;;;N;;;;; -13406;EGYPTIAN HIEROGLYPH Z016B;Lo;0;L;;;;;N;;;;; -13407;EGYPTIAN HIEROGLYPH Z016C;Lo;0;L;;;;;N;;;;; -13408;EGYPTIAN HIEROGLYPH Z016D;Lo;0;L;;;;;N;;;;; -13409;EGYPTIAN HIEROGLYPH Z016E;Lo;0;L;;;;;N;;;;; -1340A;EGYPTIAN HIEROGLYPH Z016F;Lo;0;L;;;;;N;;;;; -1340B;EGYPTIAN HIEROGLYPH Z016G;Lo;0;L;;;;;N;;;;; -1340C;EGYPTIAN HIEROGLYPH Z016H;Lo;0;L;;;;;N;;;;; -1340D;EGYPTIAN HIEROGLYPH AA001;Lo;0;L;;;;;N;;;;; -1340E;EGYPTIAN HIEROGLYPH AA002;Lo;0;L;;;;;N;;;;; -1340F;EGYPTIAN HIEROGLYPH AA003;Lo;0;L;;;;;N;;;;; -13410;EGYPTIAN HIEROGLYPH AA004;Lo;0;L;;;;;N;;;;; -13411;EGYPTIAN HIEROGLYPH AA005;Lo;0;L;;;;;N;;;;; -13412;EGYPTIAN HIEROGLYPH AA006;Lo;0;L;;;;;N;;;;; -13413;EGYPTIAN HIEROGLYPH AA007;Lo;0;L;;;;;N;;;;; -13414;EGYPTIAN HIEROGLYPH AA007A;Lo;0;L;;;;;N;;;;; -13415;EGYPTIAN HIEROGLYPH AA007B;Lo;0;L;;;;;N;;;;; -13416;EGYPTIAN HIEROGLYPH AA008;Lo;0;L;;;;;N;;;;; -13417;EGYPTIAN HIEROGLYPH AA009;Lo;0;L;;;;;N;;;;; -13418;EGYPTIAN HIEROGLYPH AA010;Lo;0;L;;;;;N;;;;; -13419;EGYPTIAN HIEROGLYPH AA011;Lo;0;L;;;;;N;;;;; -1341A;EGYPTIAN HIEROGLYPH AA012;Lo;0;L;;;;;N;;;;; -1341B;EGYPTIAN HIEROGLYPH AA013;Lo;0;L;;;;;N;;;;; -1341C;EGYPTIAN HIEROGLYPH AA014;Lo;0;L;;;;;N;;;;; -1341D;EGYPTIAN HIEROGLYPH AA015;Lo;0;L;;;;;N;;;;; -1341E;EGYPTIAN HIEROGLYPH AA016;Lo;0;L;;;;;N;;;;; -1341F;EGYPTIAN HIEROGLYPH AA017;Lo;0;L;;;;;N;;;;; -13420;EGYPTIAN HIEROGLYPH AA018;Lo;0;L;;;;;N;;;;; -13421;EGYPTIAN HIEROGLYPH AA019;Lo;0;L;;;;;N;;;;; -13422;EGYPTIAN HIEROGLYPH AA020;Lo;0;L;;;;;N;;;;; -13423;EGYPTIAN HIEROGLYPH AA021;Lo;0;L;;;;;N;;;;; -13424;EGYPTIAN HIEROGLYPH AA022;Lo;0;L;;;;;N;;;;; -13425;EGYPTIAN HIEROGLYPH AA023;Lo;0;L;;;;;N;;;;; -13426;EGYPTIAN HIEROGLYPH AA024;Lo;0;L;;;;;N;;;;; -13427;EGYPTIAN HIEROGLYPH AA025;Lo;0;L;;;;;N;;;;; -13428;EGYPTIAN HIEROGLYPH AA026;Lo;0;L;;;;;N;;;;; -13429;EGYPTIAN HIEROGLYPH AA027;Lo;0;L;;;;;N;;;;; -1342A;EGYPTIAN HIEROGLYPH AA028;Lo;0;L;;;;;N;;;;; -1342B;EGYPTIAN HIEROGLYPH AA029;Lo;0;L;;;;;N;;;;; -1342C;EGYPTIAN HIEROGLYPH AA030;Lo;0;L;;;;;N;;;;; -1342D;EGYPTIAN HIEROGLYPH AA031;Lo;0;L;;;;;N;;;;; -1342E;EGYPTIAN HIEROGLYPH AA032;Lo;0;L;;;;;N;;;;; -16800;BAMUM LETTER PHASE-A NGKUE MFON;Lo;0;L;;;;;N;;;;; -16801;BAMUM LETTER PHASE-A GBIEE FON;Lo;0;L;;;;;N;;;;; -16802;BAMUM LETTER PHASE-A PON MFON PIPAEMGBIEE;Lo;0;L;;;;;N;;;;; -16803;BAMUM LETTER PHASE-A PON MFON PIPAEMBA;Lo;0;L;;;;;N;;;;; -16804;BAMUM LETTER PHASE-A NAA MFON;Lo;0;L;;;;;N;;;;; -16805;BAMUM LETTER PHASE-A SHUENSHUET;Lo;0;L;;;;;N;;;;; -16806;BAMUM LETTER PHASE-A TITA MFON;Lo;0;L;;;;;N;;;;; -16807;BAMUM LETTER PHASE-A NZA MFON;Lo;0;L;;;;;N;;;;; -16808;BAMUM LETTER PHASE-A SHINDA PA NJI;Lo;0;L;;;;;N;;;;; -16809;BAMUM LETTER PHASE-A PON PA NJI PIPAEMGBIEE;Lo;0;L;;;;;N;;;;; -1680A;BAMUM LETTER PHASE-A PON PA NJI PIPAEMBA;Lo;0;L;;;;;N;;;;; -1680B;BAMUM LETTER PHASE-A MAEMBGBIEE;Lo;0;L;;;;;N;;;;; -1680C;BAMUM LETTER PHASE-A TU MAEMBA;Lo;0;L;;;;;N;;;;; -1680D;BAMUM LETTER PHASE-A NGANGU;Lo;0;L;;;;;N;;;;; -1680E;BAMUM LETTER PHASE-A MAEMVEUX;Lo;0;L;;;;;N;;;;; -1680F;BAMUM LETTER PHASE-A MANSUAE;Lo;0;L;;;;;N;;;;; -16810;BAMUM LETTER PHASE-A MVEUAENGAM;Lo;0;L;;;;;N;;;;; -16811;BAMUM LETTER PHASE-A SEUNYAM;Lo;0;L;;;;;N;;;;; -16812;BAMUM LETTER PHASE-A NTOQPEN;Lo;0;L;;;;;N;;;;; -16813;BAMUM LETTER PHASE-A KEUKEUTNDA;Lo;0;L;;;;;N;;;;; -16814;BAMUM LETTER PHASE-A NKINDI;Lo;0;L;;;;;N;;;;; -16815;BAMUM LETTER PHASE-A SUU;Lo;0;L;;;;;N;;;;; -16816;BAMUM LETTER PHASE-A NGKUENZEUM;Lo;0;L;;;;;N;;;;; -16817;BAMUM LETTER PHASE-A LAPAQ;Lo;0;L;;;;;N;;;;; -16818;BAMUM LETTER PHASE-A LET KUT;Lo;0;L;;;;;N;;;;; -16819;BAMUM LETTER PHASE-A NTAP MFAA;Lo;0;L;;;;;N;;;;; -1681A;BAMUM LETTER PHASE-A MAEKEUP;Lo;0;L;;;;;N;;;;; -1681B;BAMUM LETTER PHASE-A PASHAE;Lo;0;L;;;;;N;;;;; -1681C;BAMUM LETTER PHASE-A GHEUAERAE;Lo;0;L;;;;;N;;;;; -1681D;BAMUM LETTER PHASE-A PAMSHAE;Lo;0;L;;;;;N;;;;; -1681E;BAMUM LETTER PHASE-A MON NGGEUAET;Lo;0;L;;;;;N;;;;; -1681F;BAMUM LETTER PHASE-A NZUN MEUT;Lo;0;L;;;;;N;;;;; -16820;BAMUM LETTER PHASE-A U YUQ NAE;Lo;0;L;;;;;N;;;;; -16821;BAMUM LETTER PHASE-A GHEUAEGHEUAE;Lo;0;L;;;;;N;;;;; -16822;BAMUM LETTER PHASE-A NTAP NTAA;Lo;0;L;;;;;N;;;;; -16823;BAMUM LETTER PHASE-A SISA;Lo;0;L;;;;;N;;;;; -16824;BAMUM LETTER PHASE-A MGBASA;Lo;0;L;;;;;N;;;;; -16825;BAMUM LETTER PHASE-A MEUNJOMNDEUQ;Lo;0;L;;;;;N;;;;; -16826;BAMUM LETTER PHASE-A MOOMPUQ;Lo;0;L;;;;;N;;;;; -16827;BAMUM LETTER PHASE-A KAFA;Lo;0;L;;;;;N;;;;; -16828;BAMUM LETTER PHASE-A PA LEERAEWA;Lo;0;L;;;;;N;;;;; -16829;BAMUM LETTER PHASE-A NDA LEERAEWA;Lo;0;L;;;;;N;;;;; -1682A;BAMUM LETTER PHASE-A PET;Lo;0;L;;;;;N;;;;; -1682B;BAMUM LETTER PHASE-A MAEMKPEN;Lo;0;L;;;;;N;;;;; -1682C;BAMUM LETTER PHASE-A NIKA;Lo;0;L;;;;;N;;;;; -1682D;BAMUM LETTER PHASE-A PUP;Lo;0;L;;;;;N;;;;; -1682E;BAMUM LETTER PHASE-A TUAEP;Lo;0;L;;;;;N;;;;; -1682F;BAMUM LETTER PHASE-A LUAEP;Lo;0;L;;;;;N;;;;; -16830;BAMUM LETTER PHASE-A SONJAM;Lo;0;L;;;;;N;;;;; -16831;BAMUM LETTER PHASE-A TEUTEUWEN;Lo;0;L;;;;;N;;;;; -16832;BAMUM LETTER PHASE-A MAENYI;Lo;0;L;;;;;N;;;;; -16833;BAMUM LETTER PHASE-A KET;Lo;0;L;;;;;N;;;;; -16834;BAMUM LETTER PHASE-A NDAANGGEUAET;Lo;0;L;;;;;N;;;;; -16835;BAMUM LETTER PHASE-A KUOQ;Lo;0;L;;;;;N;;;;; -16836;BAMUM LETTER PHASE-A MOOMEUT;Lo;0;L;;;;;N;;;;; -16837;BAMUM LETTER PHASE-A SHUM;Lo;0;L;;;;;N;;;;; -16838;BAMUM LETTER PHASE-A LOMMAE;Lo;0;L;;;;;N;;;;; -16839;BAMUM LETTER PHASE-A FIRI;Lo;0;L;;;;;N;;;;; -1683A;BAMUM LETTER PHASE-A ROM;Lo;0;L;;;;;N;;;;; -1683B;BAMUM LETTER PHASE-A KPOQ;Lo;0;L;;;;;N;;;;; -1683C;BAMUM LETTER PHASE-A SOQ;Lo;0;L;;;;;N;;;;; -1683D;BAMUM LETTER PHASE-A MAP PIEET;Lo;0;L;;;;;N;;;;; -1683E;BAMUM LETTER PHASE-A SHIRAE;Lo;0;L;;;;;N;;;;; -1683F;BAMUM LETTER PHASE-A NTAP;Lo;0;L;;;;;N;;;;; -16840;BAMUM LETTER PHASE-A SHOQ NSHUT YUM;Lo;0;L;;;;;N;;;;; -16841;BAMUM LETTER PHASE-A NYIT MONGKEUAEQ;Lo;0;L;;;;;N;;;;; -16842;BAMUM LETTER PHASE-A PAARAE;Lo;0;L;;;;;N;;;;; -16843;BAMUM LETTER PHASE-A NKAARAE;Lo;0;L;;;;;N;;;;; -16844;BAMUM LETTER PHASE-A UNKNOWN;Lo;0;L;;;;;N;;;;; -16845;BAMUM LETTER PHASE-A NGGEN;Lo;0;L;;;;;N;;;;; -16846;BAMUM LETTER PHASE-A MAESI;Lo;0;L;;;;;N;;;;; -16847;BAMUM LETTER PHASE-A NJAM;Lo;0;L;;;;;N;;;;; -16848;BAMUM LETTER PHASE-A MBANYI;Lo;0;L;;;;;N;;;;; -16849;BAMUM LETTER PHASE-A NYET;Lo;0;L;;;;;N;;;;; -1684A;BAMUM LETTER PHASE-A TEUAEN;Lo;0;L;;;;;N;;;;; -1684B;BAMUM LETTER PHASE-A SOT;Lo;0;L;;;;;N;;;;; -1684C;BAMUM LETTER PHASE-A PAAM;Lo;0;L;;;;;N;;;;; -1684D;BAMUM LETTER PHASE-A NSHIEE;Lo;0;L;;;;;N;;;;; -1684E;BAMUM LETTER PHASE-A MAEM;Lo;0;L;;;;;N;;;;; -1684F;BAMUM LETTER PHASE-A NYI;Lo;0;L;;;;;N;;;;; -16850;BAMUM LETTER PHASE-A KAQ;Lo;0;L;;;;;N;;;;; -16851;BAMUM LETTER PHASE-A NSHA;Lo;0;L;;;;;N;;;;; -16852;BAMUM LETTER PHASE-A VEE;Lo;0;L;;;;;N;;;;; -16853;BAMUM LETTER PHASE-A LU;Lo;0;L;;;;;N;;;;; -16854;BAMUM LETTER PHASE-A NEN;Lo;0;L;;;;;N;;;;; -16855;BAMUM LETTER PHASE-A NAQ;Lo;0;L;;;;;N;;;;; -16856;BAMUM LETTER PHASE-A MBAQ;Lo;0;L;;;;;N;;;;; -16857;BAMUM LETTER PHASE-B NSHUET;Lo;0;L;;;;;N;;;;; -16858;BAMUM LETTER PHASE-B TU MAEMGBIEE;Lo;0;L;;;;;N;;;;; -16859;BAMUM LETTER PHASE-B SIEE;Lo;0;L;;;;;N;;;;; -1685A;BAMUM LETTER PHASE-B SET TU;Lo;0;L;;;;;N;;;;; -1685B;BAMUM LETTER PHASE-B LOM NTEUM;Lo;0;L;;;;;N;;;;; -1685C;BAMUM LETTER PHASE-B MBA MAELEE;Lo;0;L;;;;;N;;;;; -1685D;BAMUM LETTER PHASE-B KIEEM;Lo;0;L;;;;;N;;;;; -1685E;BAMUM LETTER PHASE-B YEURAE;Lo;0;L;;;;;N;;;;; -1685F;BAMUM LETTER PHASE-B MBAARAE;Lo;0;L;;;;;N;;;;; -16860;BAMUM LETTER PHASE-B KAM;Lo;0;L;;;;;N;;;;; -16861;BAMUM LETTER PHASE-B PEESHI;Lo;0;L;;;;;N;;;;; -16862;BAMUM LETTER PHASE-B YAFU LEERAEWA;Lo;0;L;;;;;N;;;;; -16863;BAMUM LETTER PHASE-B LAM NSHUT NYAM;Lo;0;L;;;;;N;;;;; -16864;BAMUM LETTER PHASE-B NTIEE SHEUOQ;Lo;0;L;;;;;N;;;;; -16865;BAMUM LETTER PHASE-B NDU NJAA;Lo;0;L;;;;;N;;;;; -16866;BAMUM LETTER PHASE-B GHEUGHEUAEM;Lo;0;L;;;;;N;;;;; -16867;BAMUM LETTER PHASE-B PIT;Lo;0;L;;;;;N;;;;; -16868;BAMUM LETTER PHASE-B TU NSIEE;Lo;0;L;;;;;N;;;;; -16869;BAMUM LETTER PHASE-B SHET NJAQ;Lo;0;L;;;;;N;;;;; -1686A;BAMUM LETTER PHASE-B SHEUAEQTU;Lo;0;L;;;;;N;;;;; -1686B;BAMUM LETTER PHASE-B MFON TEUAEQ;Lo;0;L;;;;;N;;;;; -1686C;BAMUM LETTER PHASE-B MBIT MBAAKET;Lo;0;L;;;;;N;;;;; -1686D;BAMUM LETTER PHASE-B NYI NTEUM;Lo;0;L;;;;;N;;;;; -1686E;BAMUM LETTER PHASE-B KEUPUQ;Lo;0;L;;;;;N;;;;; -1686F;BAMUM LETTER PHASE-B GHEUGHEN;Lo;0;L;;;;;N;;;;; -16870;BAMUM LETTER PHASE-B KEUYEUX;Lo;0;L;;;;;N;;;;; -16871;BAMUM LETTER PHASE-B LAANAE;Lo;0;L;;;;;N;;;;; -16872;BAMUM LETTER PHASE-B PARUM;Lo;0;L;;;;;N;;;;; -16873;BAMUM LETTER PHASE-B VEUM;Lo;0;L;;;;;N;;;;; -16874;BAMUM LETTER PHASE-B NGKINDI MVOP;Lo;0;L;;;;;N;;;;; -16875;BAMUM LETTER PHASE-B NGGEU MBU;Lo;0;L;;;;;N;;;;; -16876;BAMUM LETTER PHASE-B WUAET;Lo;0;L;;;;;N;;;;; -16877;BAMUM LETTER PHASE-B SAKEUAE;Lo;0;L;;;;;N;;;;; -16878;BAMUM LETTER PHASE-B TAAM;Lo;0;L;;;;;N;;;;; -16879;BAMUM LETTER PHASE-B MEUQ;Lo;0;L;;;;;N;;;;; -1687A;BAMUM LETTER PHASE-B NGGUOQ;Lo;0;L;;;;;N;;;;; -1687B;BAMUM LETTER PHASE-B NGGUOQ LARGE;Lo;0;L;;;;;N;;;;; -1687C;BAMUM LETTER PHASE-B MFIYAQ;Lo;0;L;;;;;N;;;;; -1687D;BAMUM LETTER PHASE-B SUE;Lo;0;L;;;;;N;;;;; -1687E;BAMUM LETTER PHASE-B MBEURI;Lo;0;L;;;;;N;;;;; -1687F;BAMUM LETTER PHASE-B MONTIEEN;Lo;0;L;;;;;N;;;;; -16880;BAMUM LETTER PHASE-B NYAEMAE;Lo;0;L;;;;;N;;;;; -16881;BAMUM LETTER PHASE-B PUNGAAM;Lo;0;L;;;;;N;;;;; -16882;BAMUM LETTER PHASE-B MEUT NGGEET;Lo;0;L;;;;;N;;;;; -16883;BAMUM LETTER PHASE-B FEUX;Lo;0;L;;;;;N;;;;; -16884;BAMUM LETTER PHASE-B MBUOQ;Lo;0;L;;;;;N;;;;; -16885;BAMUM LETTER PHASE-B FEE;Lo;0;L;;;;;N;;;;; -16886;BAMUM LETTER PHASE-B KEUAEM;Lo;0;L;;;;;N;;;;; -16887;BAMUM LETTER PHASE-B MA NJEUAENA;Lo;0;L;;;;;N;;;;; -16888;BAMUM LETTER PHASE-B MA NJUQA;Lo;0;L;;;;;N;;;;; -16889;BAMUM LETTER PHASE-B LET;Lo;0;L;;;;;N;;;;; -1688A;BAMUM LETTER PHASE-B NGGAAM;Lo;0;L;;;;;N;;;;; -1688B;BAMUM LETTER PHASE-B NSEN;Lo;0;L;;;;;N;;;;; -1688C;BAMUM LETTER PHASE-B MA;Lo;0;L;;;;;N;;;;; -1688D;BAMUM LETTER PHASE-B KIQ;Lo;0;L;;;;;N;;;;; -1688E;BAMUM LETTER PHASE-B NGOM;Lo;0;L;;;;;N;;;;; -1688F;BAMUM LETTER PHASE-C NGKUE MAEMBA;Lo;0;L;;;;;N;;;;; -16890;BAMUM LETTER PHASE-C NZA;Lo;0;L;;;;;N;;;;; -16891;BAMUM LETTER PHASE-C YUM;Lo;0;L;;;;;N;;;;; -16892;BAMUM LETTER PHASE-C WANGKUOQ;Lo;0;L;;;;;N;;;;; -16893;BAMUM LETTER PHASE-C NGGEN;Lo;0;L;;;;;N;;;;; -16894;BAMUM LETTER PHASE-C NDEUAEREE;Lo;0;L;;;;;N;;;;; -16895;BAMUM LETTER PHASE-C NGKAQ;Lo;0;L;;;;;N;;;;; -16896;BAMUM LETTER PHASE-C GHARAE;Lo;0;L;;;;;N;;;;; -16897;BAMUM LETTER PHASE-C MBEEKEET;Lo;0;L;;;;;N;;;;; -16898;BAMUM LETTER PHASE-C GBAYI;Lo;0;L;;;;;N;;;;; -16899;BAMUM LETTER PHASE-C NYIR MKPARAQ MEUN;Lo;0;L;;;;;N;;;;; -1689A;BAMUM LETTER PHASE-C NTU MBIT;Lo;0;L;;;;;N;;;;; -1689B;BAMUM LETTER PHASE-C MBEUM;Lo;0;L;;;;;N;;;;; -1689C;BAMUM LETTER PHASE-C PIRIEEN;Lo;0;L;;;;;N;;;;; -1689D;BAMUM LETTER PHASE-C NDOMBU;Lo;0;L;;;;;N;;;;; -1689E;BAMUM LETTER PHASE-C MBAA CABBAGE-TREE;Lo;0;L;;;;;N;;;;; -1689F;BAMUM LETTER PHASE-C KEUSHEUAEP;Lo;0;L;;;;;N;;;;; -168A0;BAMUM LETTER PHASE-C GHAP;Lo;0;L;;;;;N;;;;; -168A1;BAMUM LETTER PHASE-C KEUKAQ;Lo;0;L;;;;;N;;;;; -168A2;BAMUM LETTER PHASE-C YU MUOMAE;Lo;0;L;;;;;N;;;;; -168A3;BAMUM LETTER PHASE-C NZEUM;Lo;0;L;;;;;N;;;;; -168A4;BAMUM LETTER PHASE-C MBUE;Lo;0;L;;;;;N;;;;; -168A5;BAMUM LETTER PHASE-C NSEUAEN;Lo;0;L;;;;;N;;;;; -168A6;BAMUM LETTER PHASE-C MBIT;Lo;0;L;;;;;N;;;;; -168A7;BAMUM LETTER PHASE-C YEUQ;Lo;0;L;;;;;N;;;;; -168A8;BAMUM LETTER PHASE-C KPARAQ;Lo;0;L;;;;;N;;;;; -168A9;BAMUM LETTER PHASE-C KAA;Lo;0;L;;;;;N;;;;; -168AA;BAMUM LETTER PHASE-C SEUX;Lo;0;L;;;;;N;;;;; -168AB;BAMUM LETTER PHASE-C NDIDA;Lo;0;L;;;;;N;;;;; -168AC;BAMUM LETTER PHASE-C TAASHAE;Lo;0;L;;;;;N;;;;; -168AD;BAMUM LETTER PHASE-C NJUEQ;Lo;0;L;;;;;N;;;;; -168AE;BAMUM LETTER PHASE-C TITA YUE;Lo;0;L;;;;;N;;;;; -168AF;BAMUM LETTER PHASE-C SUAET;Lo;0;L;;;;;N;;;;; -168B0;BAMUM LETTER PHASE-C NGGUAEN NYAM;Lo;0;L;;;;;N;;;;; -168B1;BAMUM LETTER PHASE-C VEUX;Lo;0;L;;;;;N;;;;; -168B2;BAMUM LETTER PHASE-C NANSANAQ;Lo;0;L;;;;;N;;;;; -168B3;BAMUM LETTER PHASE-C MA KEUAERI;Lo;0;L;;;;;N;;;;; -168B4;BAMUM LETTER PHASE-C NTAA;Lo;0;L;;;;;N;;;;; -168B5;BAMUM LETTER PHASE-C NGGUON;Lo;0;L;;;;;N;;;;; -168B6;BAMUM LETTER PHASE-C LAP;Lo;0;L;;;;;N;;;;; -168B7;BAMUM LETTER PHASE-C MBIRIEEN;Lo;0;L;;;;;N;;;;; -168B8;BAMUM LETTER PHASE-C MGBASAQ;Lo;0;L;;;;;N;;;;; -168B9;BAMUM LETTER PHASE-C NTEUNGBA;Lo;0;L;;;;;N;;;;; -168BA;BAMUM LETTER PHASE-C TEUTEUX;Lo;0;L;;;;;N;;;;; -168BB;BAMUM LETTER PHASE-C NGGUM;Lo;0;L;;;;;N;;;;; -168BC;BAMUM LETTER PHASE-C FUE;Lo;0;L;;;;;N;;;;; -168BD;BAMUM LETTER PHASE-C NDEUT;Lo;0;L;;;;;N;;;;; -168BE;BAMUM LETTER PHASE-C NSA;Lo;0;L;;;;;N;;;;; -168BF;BAMUM LETTER PHASE-C NSHAQ;Lo;0;L;;;;;N;;;;; -168C0;BAMUM LETTER PHASE-C BUNG;Lo;0;L;;;;;N;;;;; -168C1;BAMUM LETTER PHASE-C VEUAEPEN;Lo;0;L;;;;;N;;;;; -168C2;BAMUM LETTER PHASE-C MBERAE;Lo;0;L;;;;;N;;;;; -168C3;BAMUM LETTER PHASE-C RU;Lo;0;L;;;;;N;;;;; -168C4;BAMUM LETTER PHASE-C NJAEM;Lo;0;L;;;;;N;;;;; -168C5;BAMUM LETTER PHASE-C LAM;Lo;0;L;;;;;N;;;;; -168C6;BAMUM LETTER PHASE-C TITUAEP;Lo;0;L;;;;;N;;;;; -168C7;BAMUM LETTER PHASE-C NSUOT NGOM;Lo;0;L;;;;;N;;;;; -168C8;BAMUM LETTER PHASE-C NJEEEE;Lo;0;L;;;;;N;;;;; -168C9;BAMUM LETTER PHASE-C KET;Lo;0;L;;;;;N;;;;; -168CA;BAMUM LETTER PHASE-C NGGU;Lo;0;L;;;;;N;;;;; -168CB;BAMUM LETTER PHASE-C MAESI;Lo;0;L;;;;;N;;;;; -168CC;BAMUM LETTER PHASE-C MBUAEM;Lo;0;L;;;;;N;;;;; -168CD;BAMUM LETTER PHASE-C LU;Lo;0;L;;;;;N;;;;; -168CE;BAMUM LETTER PHASE-C KUT;Lo;0;L;;;;;N;;;;; -168CF;BAMUM LETTER PHASE-C NJAM;Lo;0;L;;;;;N;;;;; -168D0;BAMUM LETTER PHASE-C NGOM;Lo;0;L;;;;;N;;;;; -168D1;BAMUM LETTER PHASE-C WUP;Lo;0;L;;;;;N;;;;; -168D2;BAMUM LETTER PHASE-C NGGUEET;Lo;0;L;;;;;N;;;;; -168D3;BAMUM LETTER PHASE-C NSOM;Lo;0;L;;;;;N;;;;; -168D4;BAMUM LETTER PHASE-C NTEN;Lo;0;L;;;;;N;;;;; -168D5;BAMUM LETTER PHASE-C KUOP NKAARAE;Lo;0;L;;;;;N;;;;; -168D6;BAMUM LETTER PHASE-C NSUN;Lo;0;L;;;;;N;;;;; -168D7;BAMUM LETTER PHASE-C NDAM;Lo;0;L;;;;;N;;;;; -168D8;BAMUM LETTER PHASE-C MA NSIEE;Lo;0;L;;;;;N;;;;; -168D9;BAMUM LETTER PHASE-C YAA;Lo;0;L;;;;;N;;;;; -168DA;BAMUM LETTER PHASE-C NDAP;Lo;0;L;;;;;N;;;;; -168DB;BAMUM LETTER PHASE-C SHUEQ;Lo;0;L;;;;;N;;;;; -168DC;BAMUM LETTER PHASE-C SETFON;Lo;0;L;;;;;N;;;;; -168DD;BAMUM LETTER PHASE-C MBI;Lo;0;L;;;;;N;;;;; -168DE;BAMUM LETTER PHASE-C MAEMBA;Lo;0;L;;;;;N;;;;; -168DF;BAMUM LETTER PHASE-C MBANYI;Lo;0;L;;;;;N;;;;; -168E0;BAMUM LETTER PHASE-C KEUSEUX;Lo;0;L;;;;;N;;;;; -168E1;BAMUM LETTER PHASE-C MBEUX;Lo;0;L;;;;;N;;;;; -168E2;BAMUM LETTER PHASE-C KEUM;Lo;0;L;;;;;N;;;;; -168E3;BAMUM LETTER PHASE-C MBAA PICKET;Lo;0;L;;;;;N;;;;; -168E4;BAMUM LETTER PHASE-C YUWOQ;Lo;0;L;;;;;N;;;;; -168E5;BAMUM LETTER PHASE-C NJEUX;Lo;0;L;;;;;N;;;;; -168E6;BAMUM LETTER PHASE-C MIEE;Lo;0;L;;;;;N;;;;; -168E7;BAMUM LETTER PHASE-C MUAE;Lo;0;L;;;;;N;;;;; -168E8;BAMUM LETTER PHASE-C SHIQ;Lo;0;L;;;;;N;;;;; -168E9;BAMUM LETTER PHASE-C KEN LAW;Lo;0;L;;;;;N;;;;; -168EA;BAMUM LETTER PHASE-C KEN FATIGUE;Lo;0;L;;;;;N;;;;; -168EB;BAMUM LETTER PHASE-C NGAQ;Lo;0;L;;;;;N;;;;; -168EC;BAMUM LETTER PHASE-C NAQ;Lo;0;L;;;;;N;;;;; -168ED;BAMUM LETTER PHASE-C LIQ;Lo;0;L;;;;;N;;;;; -168EE;BAMUM LETTER PHASE-C PIN;Lo;0;L;;;;;N;;;;; -168EF;BAMUM LETTER PHASE-C PEN;Lo;0;L;;;;;N;;;;; -168F0;BAMUM LETTER PHASE-C TET;Lo;0;L;;;;;N;;;;; -168F1;BAMUM LETTER PHASE-D MBUO;Lo;0;L;;;;;N;;;;; -168F2;BAMUM LETTER PHASE-D WAP;Lo;0;L;;;;;N;;;;; -168F3;BAMUM LETTER PHASE-D NJI;Lo;0;L;;;;;N;;;;; -168F4;BAMUM LETTER PHASE-D MFON;Lo;0;L;;;;;N;;;;; -168F5;BAMUM LETTER PHASE-D NJIEE;Lo;0;L;;;;;N;;;;; -168F6;BAMUM LETTER PHASE-D LIEE;Lo;0;L;;;;;N;;;;; -168F7;BAMUM LETTER PHASE-D NJEUT;Lo;0;L;;;;;N;;;;; -168F8;BAMUM LETTER PHASE-D NSHEE;Lo;0;L;;;;;N;;;;; -168F9;BAMUM LETTER PHASE-D NGGAAMAE;Lo;0;L;;;;;N;;;;; -168FA;BAMUM LETTER PHASE-D NYAM;Lo;0;L;;;;;N;;;;; -168FB;BAMUM LETTER PHASE-D WUAEN;Lo;0;L;;;;;N;;;;; -168FC;BAMUM LETTER PHASE-D NGKUN;Lo;0;L;;;;;N;;;;; -168FD;BAMUM LETTER PHASE-D SHEE;Lo;0;L;;;;;N;;;;; -168FE;BAMUM LETTER PHASE-D NGKAP;Lo;0;L;;;;;N;;;;; -168FF;BAMUM LETTER PHASE-D KEUAETMEUN;Lo;0;L;;;;;N;;;;; -16900;BAMUM LETTER PHASE-D TEUT;Lo;0;L;;;;;N;;;;; -16901;BAMUM LETTER PHASE-D SHEUAE;Lo;0;L;;;;;N;;;;; -16902;BAMUM LETTER PHASE-D NJAP;Lo;0;L;;;;;N;;;;; -16903;BAMUM LETTER PHASE-D SUE;Lo;0;L;;;;;N;;;;; -16904;BAMUM LETTER PHASE-D KET;Lo;0;L;;;;;N;;;;; -16905;BAMUM LETTER PHASE-D YAEMMAE;Lo;0;L;;;;;N;;;;; -16906;BAMUM LETTER PHASE-D KUOM;Lo;0;L;;;;;N;;;;; -16907;BAMUM LETTER PHASE-D SAP;Lo;0;L;;;;;N;;;;; -16908;BAMUM LETTER PHASE-D MFEUT;Lo;0;L;;;;;N;;;;; -16909;BAMUM LETTER PHASE-D NDEUX;Lo;0;L;;;;;N;;;;; -1690A;BAMUM LETTER PHASE-D MALEERI;Lo;0;L;;;;;N;;;;; -1690B;BAMUM LETTER PHASE-D MEUT;Lo;0;L;;;;;N;;;;; -1690C;BAMUM LETTER PHASE-D SEUAEQ;Lo;0;L;;;;;N;;;;; -1690D;BAMUM LETTER PHASE-D YEN;Lo;0;L;;;;;N;;;;; -1690E;BAMUM LETTER PHASE-D NJEUAEM;Lo;0;L;;;;;N;;;;; -1690F;BAMUM LETTER PHASE-D KEUOT MBUAE;Lo;0;L;;;;;N;;;;; -16910;BAMUM LETTER PHASE-D NGKEURI;Lo;0;L;;;;;N;;;;; -16911;BAMUM LETTER PHASE-D TU;Lo;0;L;;;;;N;;;;; -16912;BAMUM LETTER PHASE-D GHAA;Lo;0;L;;;;;N;;;;; -16913;BAMUM LETTER PHASE-D NGKYEE;Lo;0;L;;;;;N;;;;; -16914;BAMUM LETTER PHASE-D FEUFEUAET;Lo;0;L;;;;;N;;;;; -16915;BAMUM LETTER PHASE-D NDEE;Lo;0;L;;;;;N;;;;; -16916;BAMUM LETTER PHASE-D MGBOFUM;Lo;0;L;;;;;N;;;;; -16917;BAMUM LETTER PHASE-D LEUAEP;Lo;0;L;;;;;N;;;;; -16918;BAMUM LETTER PHASE-D NDON;Lo;0;L;;;;;N;;;;; -16919;BAMUM LETTER PHASE-D MONI;Lo;0;L;;;;;N;;;;; -1691A;BAMUM LETTER PHASE-D MGBEUN;Lo;0;L;;;;;N;;;;; -1691B;BAMUM LETTER PHASE-D PUUT;Lo;0;L;;;;;N;;;;; -1691C;BAMUM LETTER PHASE-D MGBIEE;Lo;0;L;;;;;N;;;;; -1691D;BAMUM LETTER PHASE-D MFO;Lo;0;L;;;;;N;;;;; -1691E;BAMUM LETTER PHASE-D LUM;Lo;0;L;;;;;N;;;;; -1691F;BAMUM LETTER PHASE-D NSIEEP;Lo;0;L;;;;;N;;;;; -16920;BAMUM LETTER PHASE-D MBAA;Lo;0;L;;;;;N;;;;; -16921;BAMUM LETTER PHASE-D KWAET;Lo;0;L;;;;;N;;;;; -16922;BAMUM LETTER PHASE-D NYET;Lo;0;L;;;;;N;;;;; -16923;BAMUM LETTER PHASE-D TEUAEN;Lo;0;L;;;;;N;;;;; -16924;BAMUM LETTER PHASE-D SOT;Lo;0;L;;;;;N;;;;; -16925;BAMUM LETTER PHASE-D YUWOQ;Lo;0;L;;;;;N;;;;; -16926;BAMUM LETTER PHASE-D KEUM;Lo;0;L;;;;;N;;;;; -16927;BAMUM LETTER PHASE-D RAEM;Lo;0;L;;;;;N;;;;; -16928;BAMUM LETTER PHASE-D TEEEE;Lo;0;L;;;;;N;;;;; -16929;BAMUM LETTER PHASE-D NGKEUAEQ;Lo;0;L;;;;;N;;;;; -1692A;BAMUM LETTER PHASE-D MFEUAE;Lo;0;L;;;;;N;;;;; -1692B;BAMUM LETTER PHASE-D NSIEET;Lo;0;L;;;;;N;;;;; -1692C;BAMUM LETTER PHASE-D KEUP;Lo;0;L;;;;;N;;;;; -1692D;BAMUM LETTER PHASE-D PIP;Lo;0;L;;;;;N;;;;; -1692E;BAMUM LETTER PHASE-D PEUTAE;Lo;0;L;;;;;N;;;;; -1692F;BAMUM LETTER PHASE-D NYUE;Lo;0;L;;;;;N;;;;; -16930;BAMUM LETTER PHASE-D LET;Lo;0;L;;;;;N;;;;; -16931;BAMUM LETTER PHASE-D NGGAAM;Lo;0;L;;;;;N;;;;; -16932;BAMUM LETTER PHASE-D MFIEE;Lo;0;L;;;;;N;;;;; -16933;BAMUM LETTER PHASE-D NGGWAEN;Lo;0;L;;;;;N;;;;; -16934;BAMUM LETTER PHASE-D YUOM;Lo;0;L;;;;;N;;;;; -16935;BAMUM LETTER PHASE-D PAP;Lo;0;L;;;;;N;;;;; -16936;BAMUM LETTER PHASE-D YUOP;Lo;0;L;;;;;N;;;;; -16937;BAMUM LETTER PHASE-D NDAM;Lo;0;L;;;;;N;;;;; -16938;BAMUM LETTER PHASE-D NTEUM;Lo;0;L;;;;;N;;;;; -16939;BAMUM LETTER PHASE-D SUAE;Lo;0;L;;;;;N;;;;; -1693A;BAMUM LETTER PHASE-D KUN;Lo;0;L;;;;;N;;;;; -1693B;BAMUM LETTER PHASE-D NGGEUX;Lo;0;L;;;;;N;;;;; -1693C;BAMUM LETTER PHASE-D NGKIEE;Lo;0;L;;;;;N;;;;; -1693D;BAMUM LETTER PHASE-D TUOT;Lo;0;L;;;;;N;;;;; -1693E;BAMUM LETTER PHASE-D MEUN;Lo;0;L;;;;;N;;;;; -1693F;BAMUM LETTER PHASE-D KUQ;Lo;0;L;;;;;N;;;;; -16940;BAMUM LETTER PHASE-D NSUM;Lo;0;L;;;;;N;;;;; -16941;BAMUM LETTER PHASE-D TEUN;Lo;0;L;;;;;N;;;;; -16942;BAMUM LETTER PHASE-D MAENJET;Lo;0;L;;;;;N;;;;; -16943;BAMUM LETTER PHASE-D NGGAP;Lo;0;L;;;;;N;;;;; -16944;BAMUM LETTER PHASE-D LEUM;Lo;0;L;;;;;N;;;;; -16945;BAMUM LETTER PHASE-D NGGUOM;Lo;0;L;;;;;N;;;;; -16946;BAMUM LETTER PHASE-D NSHUT;Lo;0;L;;;;;N;;;;; -16947;BAMUM LETTER PHASE-D NJUEQ;Lo;0;L;;;;;N;;;;; -16948;BAMUM LETTER PHASE-D GHEUAE;Lo;0;L;;;;;N;;;;; -16949;BAMUM LETTER PHASE-D KU;Lo;0;L;;;;;N;;;;; -1694A;BAMUM LETTER PHASE-D REN OLD;Lo;0;L;;;;;N;;;;; -1694B;BAMUM LETTER PHASE-D TAE;Lo;0;L;;;;;N;;;;; -1694C;BAMUM LETTER PHASE-D TOQ;Lo;0;L;;;;;N;;;;; -1694D;BAMUM LETTER PHASE-D NYI;Lo;0;L;;;;;N;;;;; -1694E;BAMUM LETTER PHASE-D RII;Lo;0;L;;;;;N;;;;; -1694F;BAMUM LETTER PHASE-D LEEEE;Lo;0;L;;;;;N;;;;; -16950;BAMUM LETTER PHASE-D MEEEE;Lo;0;L;;;;;N;;;;; -16951;BAMUM LETTER PHASE-D M;Lo;0;L;;;;;N;;;;; -16952;BAMUM LETTER PHASE-D SUU;Lo;0;L;;;;;N;;;;; -16953;BAMUM LETTER PHASE-D MU;Lo;0;L;;;;;N;;;;; -16954;BAMUM LETTER PHASE-D SHII;Lo;0;L;;;;;N;;;;; -16955;BAMUM LETTER PHASE-D SHEUX;Lo;0;L;;;;;N;;;;; -16956;BAMUM LETTER PHASE-D KYEE;Lo;0;L;;;;;N;;;;; -16957;BAMUM LETTER PHASE-D NU;Lo;0;L;;;;;N;;;;; -16958;BAMUM LETTER PHASE-D SHU;Lo;0;L;;;;;N;;;;; -16959;BAMUM LETTER PHASE-D NTEE;Lo;0;L;;;;;N;;;;; -1695A;BAMUM LETTER PHASE-D PEE;Lo;0;L;;;;;N;;;;; -1695B;BAMUM LETTER PHASE-D NI;Lo;0;L;;;;;N;;;;; -1695C;BAMUM LETTER PHASE-D SHOQ;Lo;0;L;;;;;N;;;;; -1695D;BAMUM LETTER PHASE-D PUQ;Lo;0;L;;;;;N;;;;; -1695E;BAMUM LETTER PHASE-D MVOP;Lo;0;L;;;;;N;;;;; -1695F;BAMUM LETTER PHASE-D LOQ;Lo;0;L;;;;;N;;;;; -16960;BAMUM LETTER PHASE-D REN MUCH;Lo;0;L;;;;;N;;;;; -16961;BAMUM LETTER PHASE-D TI;Lo;0;L;;;;;N;;;;; -16962;BAMUM LETTER PHASE-D NTUU;Lo;0;L;;;;;N;;;;; -16963;BAMUM LETTER PHASE-D MBAA SEVEN;Lo;0;L;;;;;N;;;;; -16964;BAMUM LETTER PHASE-D SAQ;Lo;0;L;;;;;N;;;;; -16965;BAMUM LETTER PHASE-D FAA;Lo;0;L;;;;;N;;;;; -16966;BAMUM LETTER PHASE-E NDAP;Lo;0;L;;;;;N;;;;; -16967;BAMUM LETTER PHASE-E TOON;Lo;0;L;;;;;N;;;;; -16968;BAMUM LETTER PHASE-E MBEUM;Lo;0;L;;;;;N;;;;; -16969;BAMUM LETTER PHASE-E LAP;Lo;0;L;;;;;N;;;;; -1696A;BAMUM LETTER PHASE-E VOM;Lo;0;L;;;;;N;;;;; -1696B;BAMUM LETTER PHASE-E LOON;Lo;0;L;;;;;N;;;;; -1696C;BAMUM LETTER PHASE-E PAA;Lo;0;L;;;;;N;;;;; -1696D;BAMUM LETTER PHASE-E SOM;Lo;0;L;;;;;N;;;;; -1696E;BAMUM LETTER PHASE-E RAQ;Lo;0;L;;;;;N;;;;; -1696F;BAMUM LETTER PHASE-E NSHUOP;Lo;0;L;;;;;N;;;;; -16970;BAMUM LETTER PHASE-E NDUN;Lo;0;L;;;;;N;;;;; -16971;BAMUM LETTER PHASE-E PUAE;Lo;0;L;;;;;N;;;;; -16972;BAMUM LETTER PHASE-E TAM;Lo;0;L;;;;;N;;;;; -16973;BAMUM LETTER PHASE-E NGKA;Lo;0;L;;;;;N;;;;; -16974;BAMUM LETTER PHASE-E KPEUX;Lo;0;L;;;;;N;;;;; -16975;BAMUM LETTER PHASE-E WUO;Lo;0;L;;;;;N;;;;; -16976;BAMUM LETTER PHASE-E SEE;Lo;0;L;;;;;N;;;;; -16977;BAMUM LETTER PHASE-E NGGEUAET;Lo;0;L;;;;;N;;;;; -16978;BAMUM LETTER PHASE-E PAAM;Lo;0;L;;;;;N;;;;; -16979;BAMUM LETTER PHASE-E TOO;Lo;0;L;;;;;N;;;;; -1697A;BAMUM LETTER PHASE-E KUOP;Lo;0;L;;;;;N;;;;; -1697B;BAMUM LETTER PHASE-E LOM;Lo;0;L;;;;;N;;;;; -1697C;BAMUM LETTER PHASE-E NSHIEE;Lo;0;L;;;;;N;;;;; -1697D;BAMUM LETTER PHASE-E NGOP;Lo;0;L;;;;;N;;;;; -1697E;BAMUM LETTER PHASE-E MAEM;Lo;0;L;;;;;N;;;;; -1697F;BAMUM LETTER PHASE-E NGKEUX;Lo;0;L;;;;;N;;;;; -16980;BAMUM LETTER PHASE-E NGOQ;Lo;0;L;;;;;N;;;;; -16981;BAMUM LETTER PHASE-E NSHUE;Lo;0;L;;;;;N;;;;; -16982;BAMUM LETTER PHASE-E RIMGBA;Lo;0;L;;;;;N;;;;; -16983;BAMUM LETTER PHASE-E NJEUX;Lo;0;L;;;;;N;;;;; -16984;BAMUM LETTER PHASE-E PEEM;Lo;0;L;;;;;N;;;;; -16985;BAMUM LETTER PHASE-E SAA;Lo;0;L;;;;;N;;;;; -16986;BAMUM LETTER PHASE-E NGGURAE;Lo;0;L;;;;;N;;;;; -16987;BAMUM LETTER PHASE-E MGBA;Lo;0;L;;;;;N;;;;; -16988;BAMUM LETTER PHASE-E GHEUX;Lo;0;L;;;;;N;;;;; -16989;BAMUM LETTER PHASE-E NGKEUAEM;Lo;0;L;;;;;N;;;;; -1698A;BAMUM LETTER PHASE-E NJAEMLI;Lo;0;L;;;;;N;;;;; -1698B;BAMUM LETTER PHASE-E MAP;Lo;0;L;;;;;N;;;;; -1698C;BAMUM LETTER PHASE-E LOOT;Lo;0;L;;;;;N;;;;; -1698D;BAMUM LETTER PHASE-E NGGEEEE;Lo;0;L;;;;;N;;;;; -1698E;BAMUM LETTER PHASE-E NDIQ;Lo;0;L;;;;;N;;;;; -1698F;BAMUM LETTER PHASE-E TAEN NTEUM;Lo;0;L;;;;;N;;;;; -16990;BAMUM LETTER PHASE-E SET;Lo;0;L;;;;;N;;;;; -16991;BAMUM LETTER PHASE-E PUM;Lo;0;L;;;;;N;;;;; -16992;BAMUM LETTER PHASE-E NDAA SOFTNESS;Lo;0;L;;;;;N;;;;; -16993;BAMUM LETTER PHASE-E NGGUAESHAE NYAM;Lo;0;L;;;;;N;;;;; -16994;BAMUM LETTER PHASE-E YIEE;Lo;0;L;;;;;N;;;;; -16995;BAMUM LETTER PHASE-E GHEUN;Lo;0;L;;;;;N;;;;; -16996;BAMUM LETTER PHASE-E TUAE;Lo;0;L;;;;;N;;;;; -16997;BAMUM LETTER PHASE-E YEUAE;Lo;0;L;;;;;N;;;;; -16998;BAMUM LETTER PHASE-E PO;Lo;0;L;;;;;N;;;;; -16999;BAMUM LETTER PHASE-E TUMAE;Lo;0;L;;;;;N;;;;; -1699A;BAMUM LETTER PHASE-E KEUAE;Lo;0;L;;;;;N;;;;; -1699B;BAMUM LETTER PHASE-E SUAEN;Lo;0;L;;;;;N;;;;; -1699C;BAMUM LETTER PHASE-E TEUAEQ;Lo;0;L;;;;;N;;;;; -1699D;BAMUM LETTER PHASE-E VEUAE;Lo;0;L;;;;;N;;;;; -1699E;BAMUM LETTER PHASE-E WEUX;Lo;0;L;;;;;N;;;;; -1699F;BAMUM LETTER PHASE-E LAAM;Lo;0;L;;;;;N;;;;; -169A0;BAMUM LETTER PHASE-E PU;Lo;0;L;;;;;N;;;;; -169A1;BAMUM LETTER PHASE-E TAAQ;Lo;0;L;;;;;N;;;;; -169A2;BAMUM LETTER PHASE-E GHAAMAE;Lo;0;L;;;;;N;;;;; -169A3;BAMUM LETTER PHASE-E NGEUREUT;Lo;0;L;;;;;N;;;;; -169A4;BAMUM LETTER PHASE-E SHEUAEQ;Lo;0;L;;;;;N;;;;; -169A5;BAMUM LETTER PHASE-E MGBEN;Lo;0;L;;;;;N;;;;; -169A6;BAMUM LETTER PHASE-E MBEE;Lo;0;L;;;;;N;;;;; -169A7;BAMUM LETTER PHASE-E NZAQ;Lo;0;L;;;;;N;;;;; -169A8;BAMUM LETTER PHASE-E NKOM;Lo;0;L;;;;;N;;;;; -169A9;BAMUM LETTER PHASE-E GBET;Lo;0;L;;;;;N;;;;; -169AA;BAMUM LETTER PHASE-E TUM;Lo;0;L;;;;;N;;;;; -169AB;BAMUM LETTER PHASE-E KUET;Lo;0;L;;;;;N;;;;; -169AC;BAMUM LETTER PHASE-E YAP;Lo;0;L;;;;;N;;;;; -169AD;BAMUM LETTER PHASE-E NYI CLEAVER;Lo;0;L;;;;;N;;;;; -169AE;BAMUM LETTER PHASE-E YIT;Lo;0;L;;;;;N;;;;; -169AF;BAMUM LETTER PHASE-E MFEUQ;Lo;0;L;;;;;N;;;;; -169B0;BAMUM LETTER PHASE-E NDIAQ;Lo;0;L;;;;;N;;;;; -169B1;BAMUM LETTER PHASE-E PIEEQ;Lo;0;L;;;;;N;;;;; -169B2;BAMUM LETTER PHASE-E YUEQ;Lo;0;L;;;;;N;;;;; -169B3;BAMUM LETTER PHASE-E LEUAEM;Lo;0;L;;;;;N;;;;; -169B4;BAMUM LETTER PHASE-E FUE;Lo;0;L;;;;;N;;;;; -169B5;BAMUM LETTER PHASE-E GBEUX;Lo;0;L;;;;;N;;;;; -169B6;BAMUM LETTER PHASE-E NGKUP;Lo;0;L;;;;;N;;;;; -169B7;BAMUM LETTER PHASE-E KET;Lo;0;L;;;;;N;;;;; -169B8;BAMUM LETTER PHASE-E MAE;Lo;0;L;;;;;N;;;;; -169B9;BAMUM LETTER PHASE-E NGKAAMI;Lo;0;L;;;;;N;;;;; -169BA;BAMUM LETTER PHASE-E GHET;Lo;0;L;;;;;N;;;;; -169BB;BAMUM LETTER PHASE-E FA;Lo;0;L;;;;;N;;;;; -169BC;BAMUM LETTER PHASE-E NTUM;Lo;0;L;;;;;N;;;;; -169BD;BAMUM LETTER PHASE-E PEUT;Lo;0;L;;;;;N;;;;; -169BE;BAMUM LETTER PHASE-E YEUM;Lo;0;L;;;;;N;;;;; -169BF;BAMUM LETTER PHASE-E NGGEUAE;Lo;0;L;;;;;N;;;;; -169C0;BAMUM LETTER PHASE-E NYI BETWEEN;Lo;0;L;;;;;N;;;;; -169C1;BAMUM LETTER PHASE-E NZUQ;Lo;0;L;;;;;N;;;;; -169C2;BAMUM LETTER PHASE-E POON;Lo;0;L;;;;;N;;;;; -169C3;BAMUM LETTER PHASE-E MIEE;Lo;0;L;;;;;N;;;;; -169C4;BAMUM LETTER PHASE-E FUET;Lo;0;L;;;;;N;;;;; -169C5;BAMUM LETTER PHASE-E NAE;Lo;0;L;;;;;N;;;;; -169C6;BAMUM LETTER PHASE-E MUAE;Lo;0;L;;;;;N;;;;; -169C7;BAMUM LETTER PHASE-E GHEUAE;Lo;0;L;;;;;N;;;;; -169C8;BAMUM LETTER PHASE-E FU I;Lo;0;L;;;;;N;;;;; -169C9;BAMUM LETTER PHASE-E MVI;Lo;0;L;;;;;N;;;;; -169CA;BAMUM LETTER PHASE-E PUAQ;Lo;0;L;;;;;N;;;;; -169CB;BAMUM LETTER PHASE-E NGKUM;Lo;0;L;;;;;N;;;;; -169CC;BAMUM LETTER PHASE-E KUT;Lo;0;L;;;;;N;;;;; -169CD;BAMUM LETTER PHASE-E PIET;Lo;0;L;;;;;N;;;;; -169CE;BAMUM LETTER PHASE-E NTAP;Lo;0;L;;;;;N;;;;; -169CF;BAMUM LETTER PHASE-E YEUAET;Lo;0;L;;;;;N;;;;; -169D0;BAMUM LETTER PHASE-E NGGUP;Lo;0;L;;;;;N;;;;; -169D1;BAMUM LETTER PHASE-E PA PEOPLE;Lo;0;L;;;;;N;;;;; -169D2;BAMUM LETTER PHASE-E FU CALL;Lo;0;L;;;;;N;;;;; -169D3;BAMUM LETTER PHASE-E FOM;Lo;0;L;;;;;N;;;;; -169D4;BAMUM LETTER PHASE-E NJEE;Lo;0;L;;;;;N;;;;; -169D5;BAMUM LETTER PHASE-E A;Lo;0;L;;;;;N;;;;; -169D6;BAMUM LETTER PHASE-E TOQ;Lo;0;L;;;;;N;;;;; -169D7;BAMUM LETTER PHASE-E O;Lo;0;L;;;;;N;;;;; -169D8;BAMUM LETTER PHASE-E I;Lo;0;L;;;;;N;;;;; -169D9;BAMUM LETTER PHASE-E LAQ;Lo;0;L;;;;;N;;;;; -169DA;BAMUM LETTER PHASE-E PA PLURAL;Lo;0;L;;;;;N;;;;; -169DB;BAMUM LETTER PHASE-E TAA;Lo;0;L;;;;;N;;;;; -169DC;BAMUM LETTER PHASE-E TAQ;Lo;0;L;;;;;N;;;;; -169DD;BAMUM LETTER PHASE-E NDAA MY HOUSE;Lo;0;L;;;;;N;;;;; -169DE;BAMUM LETTER PHASE-E SHIQ;Lo;0;L;;;;;N;;;;; -169DF;BAMUM LETTER PHASE-E YEUX;Lo;0;L;;;;;N;;;;; -169E0;BAMUM LETTER PHASE-E NGUAE;Lo;0;L;;;;;N;;;;; -169E1;BAMUM LETTER PHASE-E YUAEN;Lo;0;L;;;;;N;;;;; -169E2;BAMUM LETTER PHASE-E YOQ SWIMMING;Lo;0;L;;;;;N;;;;; -169E3;BAMUM LETTER PHASE-E YOQ COVER;Lo;0;L;;;;;N;;;;; -169E4;BAMUM LETTER PHASE-E YUQ;Lo;0;L;;;;;N;;;;; -169E5;BAMUM LETTER PHASE-E YUN;Lo;0;L;;;;;N;;;;; -169E6;BAMUM LETTER PHASE-E KEUX;Lo;0;L;;;;;N;;;;; -169E7;BAMUM LETTER PHASE-E PEUX;Lo;0;L;;;;;N;;;;; -169E8;BAMUM LETTER PHASE-E NJEE EPOCH;Lo;0;L;;;;;N;;;;; -169E9;BAMUM LETTER PHASE-E PUE;Lo;0;L;;;;;N;;;;; -169EA;BAMUM LETTER PHASE-E WUE;Lo;0;L;;;;;N;;;;; -169EB;BAMUM LETTER PHASE-E FEE;Lo;0;L;;;;;N;;;;; -169EC;BAMUM LETTER PHASE-E VEE;Lo;0;L;;;;;N;;;;; -169ED;BAMUM LETTER PHASE-E LU;Lo;0;L;;;;;N;;;;; -169EE;BAMUM LETTER PHASE-E MI;Lo;0;L;;;;;N;;;;; -169EF;BAMUM LETTER PHASE-E REUX;Lo;0;L;;;;;N;;;;; -169F0;BAMUM LETTER PHASE-E RAE;Lo;0;L;;;;;N;;;;; -169F1;BAMUM LETTER PHASE-E NGUAET;Lo;0;L;;;;;N;;;;; -169F2;BAMUM LETTER PHASE-E NGA;Lo;0;L;;;;;N;;;;; -169F3;BAMUM LETTER PHASE-E SHO;Lo;0;L;;;;;N;;;;; -169F4;BAMUM LETTER PHASE-E SHOQ;Lo;0;L;;;;;N;;;;; -169F5;BAMUM LETTER PHASE-E FU REMEDY;Lo;0;L;;;;;N;;;;; -169F6;BAMUM LETTER PHASE-E NA;Lo;0;L;;;;;N;;;;; -169F7;BAMUM LETTER PHASE-E PI;Lo;0;L;;;;;N;;;;; -169F8;BAMUM LETTER PHASE-E LOQ;Lo;0;L;;;;;N;;;;; -169F9;BAMUM LETTER PHASE-E KO;Lo;0;L;;;;;N;;;;; -169FA;BAMUM LETTER PHASE-E MEN;Lo;0;L;;;;;N;;;;; -169FB;BAMUM LETTER PHASE-E MA;Lo;0;L;;;;;N;;;;; -169FC;BAMUM LETTER PHASE-E MAQ;Lo;0;L;;;;;N;;;;; -169FD;BAMUM LETTER PHASE-E TEU;Lo;0;L;;;;;N;;;;; -169FE;BAMUM LETTER PHASE-E KI;Lo;0;L;;;;;N;;;;; -169FF;BAMUM LETTER PHASE-E MON;Lo;0;L;;;;;N;;;;; -16A00;BAMUM LETTER PHASE-E TEN;Lo;0;L;;;;;N;;;;; -16A01;BAMUM LETTER PHASE-E FAQ;Lo;0;L;;;;;N;;;;; -16A02;BAMUM LETTER PHASE-E GHOM;Lo;0;L;;;;;N;;;;; -16A03;BAMUM LETTER PHASE-F KA;Lo;0;L;;;;;N;;;;; -16A04;BAMUM LETTER PHASE-F U;Lo;0;L;;;;;N;;;;; -16A05;BAMUM LETTER PHASE-F KU;Lo;0;L;;;;;N;;;;; -16A06;BAMUM LETTER PHASE-F EE;Lo;0;L;;;;;N;;;;; -16A07;BAMUM LETTER PHASE-F REE;Lo;0;L;;;;;N;;;;; -16A08;BAMUM LETTER PHASE-F TAE;Lo;0;L;;;;;N;;;;; -16A09;BAMUM LETTER PHASE-F NYI;Lo;0;L;;;;;N;;;;; -16A0A;BAMUM LETTER PHASE-F LA;Lo;0;L;;;;;N;;;;; -16A0B;BAMUM LETTER PHASE-F RII;Lo;0;L;;;;;N;;;;; -16A0C;BAMUM LETTER PHASE-F RIEE;Lo;0;L;;;;;N;;;;; -16A0D;BAMUM LETTER PHASE-F MEEEE;Lo;0;L;;;;;N;;;;; -16A0E;BAMUM LETTER PHASE-F TAA;Lo;0;L;;;;;N;;;;; -16A0F;BAMUM LETTER PHASE-F NDAA;Lo;0;L;;;;;N;;;;; -16A10;BAMUM LETTER PHASE-F NJAEM;Lo;0;L;;;;;N;;;;; -16A11;BAMUM LETTER PHASE-F M;Lo;0;L;;;;;N;;;;; -16A12;BAMUM LETTER PHASE-F SUU;Lo;0;L;;;;;N;;;;; -16A13;BAMUM LETTER PHASE-F SHII;Lo;0;L;;;;;N;;;;; -16A14;BAMUM LETTER PHASE-F SI;Lo;0;L;;;;;N;;;;; -16A15;BAMUM LETTER PHASE-F SEUX;Lo;0;L;;;;;N;;;;; -16A16;BAMUM LETTER PHASE-F KYEE;Lo;0;L;;;;;N;;;;; -16A17;BAMUM LETTER PHASE-F KET;Lo;0;L;;;;;N;;;;; -16A18;BAMUM LETTER PHASE-F NUAE;Lo;0;L;;;;;N;;;;; -16A19;BAMUM LETTER PHASE-F NU;Lo;0;L;;;;;N;;;;; -16A1A;BAMUM LETTER PHASE-F NJUAE;Lo;0;L;;;;;N;;;;; -16A1B;BAMUM LETTER PHASE-F YOQ;Lo;0;L;;;;;N;;;;; -16A1C;BAMUM LETTER PHASE-F SHU;Lo;0;L;;;;;N;;;;; -16A1D;BAMUM LETTER PHASE-F YA;Lo;0;L;;;;;N;;;;; -16A1E;BAMUM LETTER PHASE-F NSHA;Lo;0;L;;;;;N;;;;; -16A1F;BAMUM LETTER PHASE-F PEUX;Lo;0;L;;;;;N;;;;; -16A20;BAMUM LETTER PHASE-F NTEE;Lo;0;L;;;;;N;;;;; -16A21;BAMUM LETTER PHASE-F WUE;Lo;0;L;;;;;N;;;;; -16A22;BAMUM LETTER PHASE-F PEE;Lo;0;L;;;;;N;;;;; -16A23;BAMUM LETTER PHASE-F RU;Lo;0;L;;;;;N;;;;; -16A24;BAMUM LETTER PHASE-F NI;Lo;0;L;;;;;N;;;;; -16A25;BAMUM LETTER PHASE-F REUX;Lo;0;L;;;;;N;;;;; -16A26;BAMUM LETTER PHASE-F KEN;Lo;0;L;;;;;N;;;;; -16A27;BAMUM LETTER PHASE-F NGKWAEN;Lo;0;L;;;;;N;;;;; -16A28;BAMUM LETTER PHASE-F NGGA;Lo;0;L;;;;;N;;;;; -16A29;BAMUM LETTER PHASE-F SHO;Lo;0;L;;;;;N;;;;; -16A2A;BAMUM LETTER PHASE-F PUAE;Lo;0;L;;;;;N;;;;; -16A2B;BAMUM LETTER PHASE-F FOM;Lo;0;L;;;;;N;;;;; -16A2C;BAMUM LETTER PHASE-F WA;Lo;0;L;;;;;N;;;;; -16A2D;BAMUM LETTER PHASE-F LI;Lo;0;L;;;;;N;;;;; -16A2E;BAMUM LETTER PHASE-F LOQ;Lo;0;L;;;;;N;;;;; -16A2F;BAMUM LETTER PHASE-F KO;Lo;0;L;;;;;N;;;;; -16A30;BAMUM LETTER PHASE-F MBEN;Lo;0;L;;;;;N;;;;; -16A31;BAMUM LETTER PHASE-F REN;Lo;0;L;;;;;N;;;;; -16A32;BAMUM LETTER PHASE-F MA;Lo;0;L;;;;;N;;;;; -16A33;BAMUM LETTER PHASE-F MO;Lo;0;L;;;;;N;;;;; -16A34;BAMUM LETTER PHASE-F MBAA;Lo;0;L;;;;;N;;;;; -16A35;BAMUM LETTER PHASE-F TET;Lo;0;L;;;;;N;;;;; -16A36;BAMUM LETTER PHASE-F KPA;Lo;0;L;;;;;N;;;;; -16A37;BAMUM LETTER PHASE-F SAMBA;Lo;0;L;;;;;N;;;;; -16A38;BAMUM LETTER PHASE-F VUEQ;Lo;0;L;;;;;N;;;;; -1B000;KATAKANA LETTER ARCHAIC E;Lo;0;L;;;;;N;;;;; -1B001;HIRAGANA LETTER ARCHAIC YE;Lo;0;L;;;;;N;;;;; -1D000;BYZANTINE MUSICAL SYMBOL PSILI;So;0;L;;;;;N;;;;; -1D001;BYZANTINE MUSICAL SYMBOL DASEIA;So;0;L;;;;;N;;;;; -1D002;BYZANTINE MUSICAL SYMBOL PERISPOMENI;So;0;L;;;;;N;;;;; -1D003;BYZANTINE MUSICAL SYMBOL OXEIA EKFONITIKON;So;0;L;;;;;N;;;;; -1D004;BYZANTINE MUSICAL SYMBOL OXEIA DIPLI;So;0;L;;;;;N;;;;; -1D005;BYZANTINE MUSICAL SYMBOL VAREIA EKFONITIKON;So;0;L;;;;;N;;;;; -1D006;BYZANTINE MUSICAL SYMBOL VAREIA DIPLI;So;0;L;;;;;N;;;;; -1D007;BYZANTINE MUSICAL SYMBOL KATHISTI;So;0;L;;;;;N;;;;; -1D008;BYZANTINE MUSICAL SYMBOL SYRMATIKI;So;0;L;;;;;N;;;;; -1D009;BYZANTINE MUSICAL SYMBOL PARAKLITIKI;So;0;L;;;;;N;;;;; -1D00A;BYZANTINE MUSICAL SYMBOL YPOKRISIS;So;0;L;;;;;N;;;;; -1D00B;BYZANTINE MUSICAL SYMBOL YPOKRISIS DIPLI;So;0;L;;;;;N;;;;; -1D00C;BYZANTINE MUSICAL SYMBOL KREMASTI;So;0;L;;;;;N;;;;; -1D00D;BYZANTINE MUSICAL SYMBOL APESO EKFONITIKON;So;0;L;;;;;N;;;;; -1D00E;BYZANTINE MUSICAL SYMBOL EXO EKFONITIKON;So;0;L;;;;;N;;;;; -1D00F;BYZANTINE MUSICAL SYMBOL TELEIA;So;0;L;;;;;N;;;;; -1D010;BYZANTINE MUSICAL SYMBOL KENTIMATA;So;0;L;;;;;N;;;;; -1D011;BYZANTINE MUSICAL SYMBOL APOSTROFOS;So;0;L;;;;;N;;;;; -1D012;BYZANTINE MUSICAL SYMBOL APOSTROFOS DIPLI;So;0;L;;;;;N;;;;; -1D013;BYZANTINE MUSICAL SYMBOL SYNEVMA;So;0;L;;;;;N;;;;; -1D014;BYZANTINE MUSICAL SYMBOL THITA;So;0;L;;;;;N;;;;; -1D015;BYZANTINE MUSICAL SYMBOL OLIGON ARCHAION;So;0;L;;;;;N;;;;; -1D016;BYZANTINE MUSICAL SYMBOL GORGON ARCHAION;So;0;L;;;;;N;;;;; -1D017;BYZANTINE MUSICAL SYMBOL PSILON;So;0;L;;;;;N;;;;; -1D018;BYZANTINE MUSICAL SYMBOL CHAMILON;So;0;L;;;;;N;;;;; -1D019;BYZANTINE MUSICAL SYMBOL VATHY;So;0;L;;;;;N;;;;; -1D01A;BYZANTINE MUSICAL SYMBOL ISON ARCHAION;So;0;L;;;;;N;;;;; -1D01B;BYZANTINE MUSICAL SYMBOL KENTIMA ARCHAION;So;0;L;;;;;N;;;;; -1D01C;BYZANTINE MUSICAL SYMBOL KENTIMATA ARCHAION;So;0;L;;;;;N;;;;; -1D01D;BYZANTINE MUSICAL SYMBOL SAXIMATA;So;0;L;;;;;N;;;;; -1D01E;BYZANTINE MUSICAL SYMBOL PARICHON;So;0;L;;;;;N;;;;; -1D01F;BYZANTINE MUSICAL SYMBOL STAVROS APODEXIA;So;0;L;;;;;N;;;;; -1D020;BYZANTINE MUSICAL SYMBOL OXEIAI ARCHAION;So;0;L;;;;;N;;;;; -1D021;BYZANTINE MUSICAL SYMBOL VAREIAI ARCHAION;So;0;L;;;;;N;;;;; -1D022;BYZANTINE MUSICAL SYMBOL APODERMA ARCHAION;So;0;L;;;;;N;;;;; -1D023;BYZANTINE MUSICAL SYMBOL APOTHEMA;So;0;L;;;;;N;;;;; -1D024;BYZANTINE MUSICAL SYMBOL KLASMA;So;0;L;;;;;N;;;;; -1D025;BYZANTINE MUSICAL SYMBOL REVMA;So;0;L;;;;;N;;;;; -1D026;BYZANTINE MUSICAL SYMBOL PIASMA ARCHAION;So;0;L;;;;;N;;;;; -1D027;BYZANTINE MUSICAL SYMBOL TINAGMA;So;0;L;;;;;N;;;;; -1D028;BYZANTINE MUSICAL SYMBOL ANATRICHISMA;So;0;L;;;;;N;;;;; -1D029;BYZANTINE MUSICAL SYMBOL SEISMA;So;0;L;;;;;N;;;;; -1D02A;BYZANTINE MUSICAL SYMBOL SYNAGMA ARCHAION;So;0;L;;;;;N;;;;; -1D02B;BYZANTINE MUSICAL SYMBOL SYNAGMA META STAVROU;So;0;L;;;;;N;;;;; -1D02C;BYZANTINE MUSICAL SYMBOL OYRANISMA ARCHAION;So;0;L;;;;;N;;;;; -1D02D;BYZANTINE MUSICAL SYMBOL THEMA;So;0;L;;;;;N;;;;; -1D02E;BYZANTINE MUSICAL SYMBOL LEMOI;So;0;L;;;;;N;;;;; -1D02F;BYZANTINE MUSICAL SYMBOL DYO;So;0;L;;;;;N;;;;; -1D030;BYZANTINE MUSICAL SYMBOL TRIA;So;0;L;;;;;N;;;;; -1D031;BYZANTINE MUSICAL SYMBOL TESSERA;So;0;L;;;;;N;;;;; -1D032;BYZANTINE MUSICAL SYMBOL KRATIMATA;So;0;L;;;;;N;;;;; -1D033;BYZANTINE MUSICAL SYMBOL APESO EXO NEO;So;0;L;;;;;N;;;;; -1D034;BYZANTINE MUSICAL SYMBOL FTHORA ARCHAION;So;0;L;;;;;N;;;;; -1D035;BYZANTINE MUSICAL SYMBOL IMIFTHORA;So;0;L;;;;;N;;;;; -1D036;BYZANTINE MUSICAL SYMBOL TROMIKON ARCHAION;So;0;L;;;;;N;;;;; -1D037;BYZANTINE MUSICAL SYMBOL KATAVA TROMIKON;So;0;L;;;;;N;;;;; -1D038;BYZANTINE MUSICAL SYMBOL PELASTON;So;0;L;;;;;N;;;;; -1D039;BYZANTINE MUSICAL SYMBOL PSIFISTON;So;0;L;;;;;N;;;;; -1D03A;BYZANTINE MUSICAL SYMBOL KONTEVMA;So;0;L;;;;;N;;;;; -1D03B;BYZANTINE MUSICAL SYMBOL CHOREVMA ARCHAION;So;0;L;;;;;N;;;;; -1D03C;BYZANTINE MUSICAL SYMBOL RAPISMA;So;0;L;;;;;N;;;;; -1D03D;BYZANTINE MUSICAL SYMBOL PARAKALESMA ARCHAION;So;0;L;;;;;N;;;;; -1D03E;BYZANTINE MUSICAL SYMBOL PARAKLITIKI ARCHAION;So;0;L;;;;;N;;;;; -1D03F;BYZANTINE MUSICAL SYMBOL ICHADIN;So;0;L;;;;;N;;;;; -1D040;BYZANTINE MUSICAL SYMBOL NANA;So;0;L;;;;;N;;;;; -1D041;BYZANTINE MUSICAL SYMBOL PETASMA;So;0;L;;;;;N;;;;; -1D042;BYZANTINE MUSICAL SYMBOL KONTEVMA ALLO;So;0;L;;;;;N;;;;; -1D043;BYZANTINE MUSICAL SYMBOL TROMIKON ALLO;So;0;L;;;;;N;;;;; -1D044;BYZANTINE MUSICAL SYMBOL STRAGGISMATA;So;0;L;;;;;N;;;;; -1D045;BYZANTINE MUSICAL SYMBOL GRONTHISMATA;So;0;L;;;;;N;;;;; -1D046;BYZANTINE MUSICAL SYMBOL ISON NEO;So;0;L;;;;;N;;;;; -1D047;BYZANTINE MUSICAL SYMBOL OLIGON NEO;So;0;L;;;;;N;;;;; -1D048;BYZANTINE MUSICAL SYMBOL OXEIA NEO;So;0;L;;;;;N;;;;; -1D049;BYZANTINE MUSICAL SYMBOL PETASTI;So;0;L;;;;;N;;;;; -1D04A;BYZANTINE MUSICAL SYMBOL KOUFISMA;So;0;L;;;;;N;;;;; -1D04B;BYZANTINE MUSICAL SYMBOL PETASTOKOUFISMA;So;0;L;;;;;N;;;;; -1D04C;BYZANTINE MUSICAL SYMBOL KRATIMOKOUFISMA;So;0;L;;;;;N;;;;; -1D04D;BYZANTINE MUSICAL SYMBOL PELASTON NEO;So;0;L;;;;;N;;;;; -1D04E;BYZANTINE MUSICAL SYMBOL KENTIMATA NEO ANO;So;0;L;;;;;N;;;;; -1D04F;BYZANTINE MUSICAL SYMBOL KENTIMA NEO ANO;So;0;L;;;;;N;;;;; -1D050;BYZANTINE MUSICAL SYMBOL YPSILI;So;0;L;;;;;N;;;;; -1D051;BYZANTINE MUSICAL SYMBOL APOSTROFOS NEO;So;0;L;;;;;N;;;;; -1D052;BYZANTINE MUSICAL SYMBOL APOSTROFOI SYNDESMOS NEO;So;0;L;;;;;N;;;;; -1D053;BYZANTINE MUSICAL SYMBOL YPORROI;So;0;L;;;;;N;;;;; -1D054;BYZANTINE MUSICAL SYMBOL KRATIMOYPORROON;So;0;L;;;;;N;;;;; -1D055;BYZANTINE MUSICAL SYMBOL ELAFRON;So;0;L;;;;;N;;;;; -1D056;BYZANTINE MUSICAL SYMBOL CHAMILI;So;0;L;;;;;N;;;;; -1D057;BYZANTINE MUSICAL SYMBOL MIKRON ISON;So;0;L;;;;;N;;;;; -1D058;BYZANTINE MUSICAL SYMBOL VAREIA NEO;So;0;L;;;;;N;;;;; -1D059;BYZANTINE MUSICAL SYMBOL PIASMA NEO;So;0;L;;;;;N;;;;; -1D05A;BYZANTINE MUSICAL SYMBOL PSIFISTON NEO;So;0;L;;;;;N;;;;; -1D05B;BYZANTINE MUSICAL SYMBOL OMALON;So;0;L;;;;;N;;;;; -1D05C;BYZANTINE MUSICAL SYMBOL ANTIKENOMA;So;0;L;;;;;N;;;;; -1D05D;BYZANTINE MUSICAL SYMBOL LYGISMA;So;0;L;;;;;N;;;;; -1D05E;BYZANTINE MUSICAL SYMBOL PARAKLITIKI NEO;So;0;L;;;;;N;;;;; -1D05F;BYZANTINE MUSICAL SYMBOL PARAKALESMA NEO;So;0;L;;;;;N;;;;; -1D060;BYZANTINE MUSICAL SYMBOL ETERON PARAKALESMA;So;0;L;;;;;N;;;;; -1D061;BYZANTINE MUSICAL SYMBOL KYLISMA;So;0;L;;;;;N;;;;; -1D062;BYZANTINE MUSICAL SYMBOL ANTIKENOKYLISMA;So;0;L;;;;;N;;;;; -1D063;BYZANTINE MUSICAL SYMBOL TROMIKON NEO;So;0;L;;;;;N;;;;; -1D064;BYZANTINE MUSICAL SYMBOL EKSTREPTON;So;0;L;;;;;N;;;;; -1D065;BYZANTINE MUSICAL SYMBOL SYNAGMA NEO;So;0;L;;;;;N;;;;; -1D066;BYZANTINE MUSICAL SYMBOL SYRMA;So;0;L;;;;;N;;;;; -1D067;BYZANTINE MUSICAL SYMBOL CHOREVMA NEO;So;0;L;;;;;N;;;;; -1D068;BYZANTINE MUSICAL SYMBOL EPEGERMA;So;0;L;;;;;N;;;;; -1D069;BYZANTINE MUSICAL SYMBOL SEISMA NEO;So;0;L;;;;;N;;;;; -1D06A;BYZANTINE MUSICAL SYMBOL XIRON KLASMA;So;0;L;;;;;N;;;;; -1D06B;BYZANTINE MUSICAL SYMBOL TROMIKOPSIFISTON;So;0;L;;;;;N;;;;; -1D06C;BYZANTINE MUSICAL SYMBOL PSIFISTOLYGISMA;So;0;L;;;;;N;;;;; -1D06D;BYZANTINE MUSICAL SYMBOL TROMIKOLYGISMA;So;0;L;;;;;N;;;;; -1D06E;BYZANTINE MUSICAL SYMBOL TROMIKOPARAKALESMA;So;0;L;;;;;N;;;;; -1D06F;BYZANTINE MUSICAL SYMBOL PSIFISTOPARAKALESMA;So;0;L;;;;;N;;;;; -1D070;BYZANTINE MUSICAL SYMBOL TROMIKOSYNAGMA;So;0;L;;;;;N;;;;; -1D071;BYZANTINE MUSICAL SYMBOL PSIFISTOSYNAGMA;So;0;L;;;;;N;;;;; -1D072;BYZANTINE MUSICAL SYMBOL GORGOSYNTHETON;So;0;L;;;;;N;;;;; -1D073;BYZANTINE MUSICAL SYMBOL ARGOSYNTHETON;So;0;L;;;;;N;;;;; -1D074;BYZANTINE MUSICAL SYMBOL ETERON ARGOSYNTHETON;So;0;L;;;;;N;;;;; -1D075;BYZANTINE MUSICAL SYMBOL OYRANISMA NEO;So;0;L;;;;;N;;;;; -1D076;BYZANTINE MUSICAL SYMBOL THEMATISMOS ESO;So;0;L;;;;;N;;;;; -1D077;BYZANTINE MUSICAL SYMBOL THEMATISMOS EXO;So;0;L;;;;;N;;;;; -1D078;BYZANTINE MUSICAL SYMBOL THEMA APLOUN;So;0;L;;;;;N;;;;; -1D079;BYZANTINE MUSICAL SYMBOL THES KAI APOTHES;So;0;L;;;;;N;;;;; -1D07A;BYZANTINE MUSICAL SYMBOL KATAVASMA;So;0;L;;;;;N;;;;; -1D07B;BYZANTINE MUSICAL SYMBOL ENDOFONON;So;0;L;;;;;N;;;;; -1D07C;BYZANTINE MUSICAL SYMBOL YFEN KATO;So;0;L;;;;;N;;;;; -1D07D;BYZANTINE MUSICAL SYMBOL YFEN ANO;So;0;L;;;;;N;;;;; -1D07E;BYZANTINE MUSICAL SYMBOL STAVROS;So;0;L;;;;;N;;;;; -1D07F;BYZANTINE MUSICAL SYMBOL KLASMA ANO;So;0;L;;;;;N;;;;; -1D080;BYZANTINE MUSICAL SYMBOL DIPLI ARCHAION;So;0;L;;;;;N;;;;; -1D081;BYZANTINE MUSICAL SYMBOL KRATIMA ARCHAION;So;0;L;;;;;N;;;;; -1D082;BYZANTINE MUSICAL SYMBOL KRATIMA ALLO;So;0;L;;;;;N;;;;; -1D083;BYZANTINE MUSICAL SYMBOL KRATIMA NEO;So;0;L;;;;;N;;;;; -1D084;BYZANTINE MUSICAL SYMBOL APODERMA NEO;So;0;L;;;;;N;;;;; -1D085;BYZANTINE MUSICAL SYMBOL APLI;So;0;L;;;;;N;;;;; -1D086;BYZANTINE MUSICAL SYMBOL DIPLI;So;0;L;;;;;N;;;;; -1D087;BYZANTINE MUSICAL SYMBOL TRIPLI;So;0;L;;;;;N;;;;; -1D088;BYZANTINE MUSICAL SYMBOL TETRAPLI;So;0;L;;;;;N;;;;; -1D089;BYZANTINE MUSICAL SYMBOL KORONIS;So;0;L;;;;;N;;;;; -1D08A;BYZANTINE MUSICAL SYMBOL LEIMMA ENOS CHRONOU;So;0;L;;;;;N;;;;; -1D08B;BYZANTINE MUSICAL SYMBOL LEIMMA DYO CHRONON;So;0;L;;;;;N;;;;; -1D08C;BYZANTINE MUSICAL SYMBOL LEIMMA TRION CHRONON;So;0;L;;;;;N;;;;; -1D08D;BYZANTINE MUSICAL SYMBOL LEIMMA TESSARON CHRONON;So;0;L;;;;;N;;;;; -1D08E;BYZANTINE MUSICAL SYMBOL LEIMMA IMISEOS CHRONOU;So;0;L;;;;;N;;;;; -1D08F;BYZANTINE MUSICAL SYMBOL GORGON NEO ANO;So;0;L;;;;;N;;;;; -1D090;BYZANTINE MUSICAL SYMBOL GORGON PARESTIGMENON ARISTERA;So;0;L;;;;;N;;;;; -1D091;BYZANTINE MUSICAL SYMBOL GORGON PARESTIGMENON DEXIA;So;0;L;;;;;N;;;;; -1D092;BYZANTINE MUSICAL SYMBOL DIGORGON;So;0;L;;;;;N;;;;; -1D093;BYZANTINE MUSICAL SYMBOL DIGORGON PARESTIGMENON ARISTERA KATO;So;0;L;;;;;N;;;;; -1D094;BYZANTINE MUSICAL SYMBOL DIGORGON PARESTIGMENON ARISTERA ANO;So;0;L;;;;;N;;;;; -1D095;BYZANTINE MUSICAL SYMBOL DIGORGON PARESTIGMENON DEXIA;So;0;L;;;;;N;;;;; -1D096;BYZANTINE MUSICAL SYMBOL TRIGORGON;So;0;L;;;;;N;;;;; -1D097;BYZANTINE MUSICAL SYMBOL ARGON;So;0;L;;;;;N;;;;; -1D098;BYZANTINE MUSICAL SYMBOL IMIDIARGON;So;0;L;;;;;N;;;;; -1D099;BYZANTINE MUSICAL SYMBOL DIARGON;So;0;L;;;;;N;;;;; -1D09A;BYZANTINE MUSICAL SYMBOL AGOGI POLI ARGI;So;0;L;;;;;N;;;;; -1D09B;BYZANTINE MUSICAL SYMBOL AGOGI ARGOTERI;So;0;L;;;;;N;;;;; -1D09C;BYZANTINE MUSICAL SYMBOL AGOGI ARGI;So;0;L;;;;;N;;;;; -1D09D;BYZANTINE MUSICAL SYMBOL AGOGI METRIA;So;0;L;;;;;N;;;;; -1D09E;BYZANTINE MUSICAL SYMBOL AGOGI MESI;So;0;L;;;;;N;;;;; -1D09F;BYZANTINE MUSICAL SYMBOL AGOGI GORGI;So;0;L;;;;;N;;;;; -1D0A0;BYZANTINE MUSICAL SYMBOL AGOGI GORGOTERI;So;0;L;;;;;N;;;;; -1D0A1;BYZANTINE MUSICAL SYMBOL AGOGI POLI GORGI;So;0;L;;;;;N;;;;; -1D0A2;BYZANTINE MUSICAL SYMBOL MARTYRIA PROTOS ICHOS;So;0;L;;;;;N;;;;; -1D0A3;BYZANTINE MUSICAL SYMBOL MARTYRIA ALLI PROTOS ICHOS;So;0;L;;;;;N;;;;; -1D0A4;BYZANTINE MUSICAL SYMBOL MARTYRIA DEYTEROS ICHOS;So;0;L;;;;;N;;;;; -1D0A5;BYZANTINE MUSICAL SYMBOL MARTYRIA ALLI DEYTEROS ICHOS;So;0;L;;;;;N;;;;; -1D0A6;BYZANTINE MUSICAL SYMBOL MARTYRIA TRITOS ICHOS;So;0;L;;;;;N;;;;; -1D0A7;BYZANTINE MUSICAL SYMBOL MARTYRIA TRIFONIAS;So;0;L;;;;;N;;;;; -1D0A8;BYZANTINE MUSICAL SYMBOL MARTYRIA TETARTOS ICHOS;So;0;L;;;;;N;;;;; -1D0A9;BYZANTINE MUSICAL SYMBOL MARTYRIA TETARTOS LEGETOS ICHOS;So;0;L;;;;;N;;;;; -1D0AA;BYZANTINE MUSICAL SYMBOL MARTYRIA LEGETOS ICHOS;So;0;L;;;;;N;;;;; -1D0AB;BYZANTINE MUSICAL SYMBOL MARTYRIA PLAGIOS ICHOS;So;0;L;;;;;N;;;;; -1D0AC;BYZANTINE MUSICAL SYMBOL ISAKIA TELOUS ICHIMATOS;So;0;L;;;;;N;;;;; -1D0AD;BYZANTINE MUSICAL SYMBOL APOSTROFOI TELOUS ICHIMATOS;So;0;L;;;;;N;;;;; -1D0AE;BYZANTINE MUSICAL SYMBOL FANEROSIS TETRAFONIAS;So;0;L;;;;;N;;;;; -1D0AF;BYZANTINE MUSICAL SYMBOL FANEROSIS MONOFONIAS;So;0;L;;;;;N;;;;; -1D0B0;BYZANTINE MUSICAL SYMBOL FANEROSIS DIFONIAS;So;0;L;;;;;N;;;;; -1D0B1;BYZANTINE MUSICAL SYMBOL MARTYRIA VARYS ICHOS;So;0;L;;;;;N;;;;; -1D0B2;BYZANTINE MUSICAL SYMBOL MARTYRIA PROTOVARYS ICHOS;So;0;L;;;;;N;;;;; -1D0B3;BYZANTINE MUSICAL SYMBOL MARTYRIA PLAGIOS TETARTOS ICHOS;So;0;L;;;;;N;;;;; -1D0B4;BYZANTINE MUSICAL SYMBOL GORTHMIKON N APLOUN;So;0;L;;;;;N;;;;; -1D0B5;BYZANTINE MUSICAL SYMBOL GORTHMIKON N DIPLOUN;So;0;L;;;;;N;;;;; -1D0B6;BYZANTINE MUSICAL SYMBOL ENARXIS KAI FTHORA VOU;So;0;L;;;;;N;;;;; -1D0B7;BYZANTINE MUSICAL SYMBOL IMIFONON;So;0;L;;;;;N;;;;; -1D0B8;BYZANTINE MUSICAL SYMBOL IMIFTHORON;So;0;L;;;;;N;;;;; -1D0B9;BYZANTINE MUSICAL SYMBOL FTHORA ARCHAION DEYTEROU ICHOU;So;0;L;;;;;N;;;;; -1D0BA;BYZANTINE MUSICAL SYMBOL FTHORA DIATONIKI PA;So;0;L;;;;;N;;;;; -1D0BB;BYZANTINE MUSICAL SYMBOL FTHORA DIATONIKI NANA;So;0;L;;;;;N;;;;; -1D0BC;BYZANTINE MUSICAL SYMBOL FTHORA NAOS ICHOS;So;0;L;;;;;N;;;;; -1D0BD;BYZANTINE MUSICAL SYMBOL FTHORA DIATONIKI DI;So;0;L;;;;;N;;;;; -1D0BE;BYZANTINE MUSICAL SYMBOL FTHORA SKLIRON DIATONON DI;So;0;L;;;;;N;;;;; -1D0BF;BYZANTINE MUSICAL SYMBOL FTHORA DIATONIKI KE;So;0;L;;;;;N;;;;; -1D0C0;BYZANTINE MUSICAL SYMBOL FTHORA DIATONIKI ZO;So;0;L;;;;;N;;;;; -1D0C1;BYZANTINE MUSICAL SYMBOL FTHORA DIATONIKI NI KATO;So;0;L;;;;;N;;;;; -1D0C2;BYZANTINE MUSICAL SYMBOL FTHORA DIATONIKI NI ANO;So;0;L;;;;;N;;;;; -1D0C3;BYZANTINE MUSICAL SYMBOL FTHORA MALAKON CHROMA DIFONIAS;So;0;L;;;;;N;;;;; -1D0C4;BYZANTINE MUSICAL SYMBOL FTHORA MALAKON CHROMA MONOFONIAS;So;0;L;;;;;N;;;;; -1D0C5;BYZANTINE MUSICAL SYMBOL FHTORA SKLIRON CHROMA VASIS;So;0;L;;;;;N;;;;; -1D0C6;BYZANTINE MUSICAL SYMBOL FTHORA SKLIRON CHROMA SYNAFI;So;0;L;;;;;N;;;;; -1D0C7;BYZANTINE MUSICAL SYMBOL FTHORA NENANO;So;0;L;;;;;N;;;;; -1D0C8;BYZANTINE MUSICAL SYMBOL CHROA ZYGOS;So;0;L;;;;;N;;;;; -1D0C9;BYZANTINE MUSICAL SYMBOL CHROA KLITON;So;0;L;;;;;N;;;;; -1D0CA;BYZANTINE MUSICAL SYMBOL CHROA SPATHI;So;0;L;;;;;N;;;;; -1D0CB;BYZANTINE MUSICAL SYMBOL FTHORA I YFESIS TETARTIMORION;So;0;L;;;;;N;;;;; -1D0CC;BYZANTINE MUSICAL SYMBOL FTHORA ENARMONIOS ANTIFONIA;So;0;L;;;;;N;;;;; -1D0CD;BYZANTINE MUSICAL SYMBOL YFESIS TRITIMORION;So;0;L;;;;;N;;;;; -1D0CE;BYZANTINE MUSICAL SYMBOL DIESIS TRITIMORION;So;0;L;;;;;N;;;;; -1D0CF;BYZANTINE MUSICAL SYMBOL DIESIS TETARTIMORION;So;0;L;;;;;N;;;;; -1D0D0;BYZANTINE MUSICAL SYMBOL DIESIS APLI DYO DODEKATA;So;0;L;;;;;N;;;;; -1D0D1;BYZANTINE MUSICAL SYMBOL DIESIS MONOGRAMMOS TESSERA DODEKATA;So;0;L;;;;;N;;;;; -1D0D2;BYZANTINE MUSICAL SYMBOL DIESIS DIGRAMMOS EX DODEKATA;So;0;L;;;;;N;;;;; -1D0D3;BYZANTINE MUSICAL SYMBOL DIESIS TRIGRAMMOS OKTO DODEKATA;So;0;L;;;;;N;;;;; -1D0D4;BYZANTINE MUSICAL SYMBOL YFESIS APLI DYO DODEKATA;So;0;L;;;;;N;;;;; -1D0D5;BYZANTINE MUSICAL SYMBOL YFESIS MONOGRAMMOS TESSERA DODEKATA;So;0;L;;;;;N;;;;; -1D0D6;BYZANTINE MUSICAL SYMBOL YFESIS DIGRAMMOS EX DODEKATA;So;0;L;;;;;N;;;;; -1D0D7;BYZANTINE MUSICAL SYMBOL YFESIS TRIGRAMMOS OKTO DODEKATA;So;0;L;;;;;N;;;;; -1D0D8;BYZANTINE MUSICAL SYMBOL GENIKI DIESIS;So;0;L;;;;;N;;;;; -1D0D9;BYZANTINE MUSICAL SYMBOL GENIKI YFESIS;So;0;L;;;;;N;;;;; -1D0DA;BYZANTINE MUSICAL SYMBOL DIASTOLI APLI MIKRI;So;0;L;;;;;N;;;;; -1D0DB;BYZANTINE MUSICAL SYMBOL DIASTOLI APLI MEGALI;So;0;L;;;;;N;;;;; -1D0DC;BYZANTINE MUSICAL SYMBOL DIASTOLI DIPLI;So;0;L;;;;;N;;;;; -1D0DD;BYZANTINE MUSICAL SYMBOL DIASTOLI THESEOS;So;0;L;;;;;N;;;;; -1D0DE;BYZANTINE MUSICAL SYMBOL SIMANSIS THESEOS;So;0;L;;;;;N;;;;; -1D0DF;BYZANTINE MUSICAL SYMBOL SIMANSIS THESEOS DISIMOU;So;0;L;;;;;N;;;;; -1D0E0;BYZANTINE MUSICAL SYMBOL SIMANSIS THESEOS TRISIMOU;So;0;L;;;;;N;;;;; -1D0E1;BYZANTINE MUSICAL SYMBOL SIMANSIS THESEOS TETRASIMOU;So;0;L;;;;;N;;;;; -1D0E2;BYZANTINE MUSICAL SYMBOL SIMANSIS ARSEOS;So;0;L;;;;;N;;;;; -1D0E3;BYZANTINE MUSICAL SYMBOL SIMANSIS ARSEOS DISIMOU;So;0;L;;;;;N;;;;; -1D0E4;BYZANTINE MUSICAL SYMBOL SIMANSIS ARSEOS TRISIMOU;So;0;L;;;;;N;;;;; -1D0E5;BYZANTINE MUSICAL SYMBOL SIMANSIS ARSEOS TETRASIMOU;So;0;L;;;;;N;;;;; -1D0E6;BYZANTINE MUSICAL SYMBOL DIGRAMMA GG;So;0;L;;;;;N;;;;; -1D0E7;BYZANTINE MUSICAL SYMBOL DIFTOGGOS OU;So;0;L;;;;;N;;;;; -1D0E8;BYZANTINE MUSICAL SYMBOL STIGMA;So;0;L;;;;;N;;;;; -1D0E9;BYZANTINE MUSICAL SYMBOL ARKTIKO PA;So;0;L;;;;;N;;;;; -1D0EA;BYZANTINE MUSICAL SYMBOL ARKTIKO VOU;So;0;L;;;;;N;;;;; -1D0EB;BYZANTINE MUSICAL SYMBOL ARKTIKO GA;So;0;L;;;;;N;;;;; -1D0EC;BYZANTINE MUSICAL SYMBOL ARKTIKO DI;So;0;L;;;;;N;;;;; -1D0ED;BYZANTINE MUSICAL SYMBOL ARKTIKO KE;So;0;L;;;;;N;;;;; -1D0EE;BYZANTINE MUSICAL SYMBOL ARKTIKO ZO;So;0;L;;;;;N;;;;; -1D0EF;BYZANTINE MUSICAL SYMBOL ARKTIKO NI;So;0;L;;;;;N;;;;; -1D0F0;BYZANTINE MUSICAL SYMBOL KENTIMATA NEO MESO;So;0;L;;;;;N;;;;; -1D0F1;BYZANTINE MUSICAL SYMBOL KENTIMA NEO MESO;So;0;L;;;;;N;;;;; -1D0F2;BYZANTINE MUSICAL SYMBOL KENTIMATA NEO KATO;So;0;L;;;;;N;;;;; -1D0F3;BYZANTINE MUSICAL SYMBOL KENTIMA NEO KATO;So;0;L;;;;;N;;;;; -1D0F4;BYZANTINE MUSICAL SYMBOL KLASMA KATO;So;0;L;;;;;N;;;;; -1D0F5;BYZANTINE MUSICAL SYMBOL GORGON NEO KATO;So;0;L;;;;;N;;;;; -1D100;MUSICAL SYMBOL SINGLE BARLINE;So;0;L;;;;;N;;;;; -1D101;MUSICAL SYMBOL DOUBLE BARLINE;So;0;L;;;;;N;;;;; -1D102;MUSICAL SYMBOL FINAL BARLINE;So;0;L;;;;;N;;;;; -1D103;MUSICAL SYMBOL REVERSE FINAL BARLINE;So;0;L;;;;;N;;;;; -1D104;MUSICAL SYMBOL DASHED BARLINE;So;0;L;;;;;N;;;;; -1D105;MUSICAL SYMBOL SHORT BARLINE;So;0;L;;;;;N;;;;; -1D106;MUSICAL SYMBOL LEFT REPEAT SIGN;So;0;L;;;;;N;;;;; -1D107;MUSICAL SYMBOL RIGHT REPEAT SIGN;So;0;L;;;;;N;;;;; -1D108;MUSICAL SYMBOL REPEAT DOTS;So;0;L;;;;;N;;;;; -1D109;MUSICAL SYMBOL DAL SEGNO;So;0;L;;;;;N;;;;; -1D10A;MUSICAL SYMBOL DA CAPO;So;0;L;;;;;N;;;;; -1D10B;MUSICAL SYMBOL SEGNO;So;0;L;;;;;N;;;;; -1D10C;MUSICAL SYMBOL CODA;So;0;L;;;;;N;;;;; -1D10D;MUSICAL SYMBOL REPEATED FIGURE-1;So;0;L;;;;;N;;;;; -1D10E;MUSICAL SYMBOL REPEATED FIGURE-2;So;0;L;;;;;N;;;;; -1D10F;MUSICAL SYMBOL REPEATED FIGURE-3;So;0;L;;;;;N;;;;; -1D110;MUSICAL SYMBOL FERMATA;So;0;L;;;;;N;;;;; -1D111;MUSICAL SYMBOL FERMATA BELOW;So;0;L;;;;;N;;;;; -1D112;MUSICAL SYMBOL BREATH MARK;So;0;L;;;;;N;;;;; -1D113;MUSICAL SYMBOL CAESURA;So;0;L;;;;;N;;;;; -1D114;MUSICAL SYMBOL BRACE;So;0;L;;;;;N;;;;; -1D115;MUSICAL SYMBOL BRACKET;So;0;L;;;;;N;;;;; -1D116;MUSICAL SYMBOL ONE-LINE STAFF;So;0;L;;;;;N;;;;; -1D117;MUSICAL SYMBOL TWO-LINE STAFF;So;0;L;;;;;N;;;;; -1D118;MUSICAL SYMBOL THREE-LINE STAFF;So;0;L;;;;;N;;;;; -1D119;MUSICAL SYMBOL FOUR-LINE STAFF;So;0;L;;;;;N;;;;; -1D11A;MUSICAL SYMBOL FIVE-LINE STAFF;So;0;L;;;;;N;;;;; -1D11B;MUSICAL SYMBOL SIX-LINE STAFF;So;0;L;;;;;N;;;;; -1D11C;MUSICAL SYMBOL SIX-STRING FRETBOARD;So;0;L;;;;;N;;;;; -1D11D;MUSICAL SYMBOL FOUR-STRING FRETBOARD;So;0;L;;;;;N;;;;; -1D11E;MUSICAL SYMBOL G CLEF;So;0;L;;;;;N;;;;; -1D11F;MUSICAL SYMBOL G CLEF OTTAVA ALTA;So;0;L;;;;;N;;;;; -1D120;MUSICAL SYMBOL G CLEF OTTAVA BASSA;So;0;L;;;;;N;;;;; -1D121;MUSICAL SYMBOL C CLEF;So;0;L;;;;;N;;;;; -1D122;MUSICAL SYMBOL F CLEF;So;0;L;;;;;N;;;;; -1D123;MUSICAL SYMBOL F CLEF OTTAVA ALTA;So;0;L;;;;;N;;;;; -1D124;MUSICAL SYMBOL F CLEF OTTAVA BASSA;So;0;L;;;;;N;;;;; -1D125;MUSICAL SYMBOL DRUM CLEF-1;So;0;L;;;;;N;;;;; -1D126;MUSICAL SYMBOL DRUM CLEF-2;So;0;L;;;;;N;;;;; -1D129;MUSICAL SYMBOL MULTIPLE MEASURE REST;So;0;L;;;;;N;;;;; -1D12A;MUSICAL SYMBOL DOUBLE SHARP;So;0;L;;;;;N;;;;; -1D12B;MUSICAL SYMBOL DOUBLE FLAT;So;0;L;;;;;N;;;;; -1D12C;MUSICAL SYMBOL FLAT UP;So;0;L;;;;;N;;;;; -1D12D;MUSICAL SYMBOL FLAT DOWN;So;0;L;;;;;N;;;;; -1D12E;MUSICAL SYMBOL NATURAL UP;So;0;L;;;;;N;;;;; -1D12F;MUSICAL SYMBOL NATURAL DOWN;So;0;L;;;;;N;;;;; -1D130;MUSICAL SYMBOL SHARP UP;So;0;L;;;;;N;;;;; -1D131;MUSICAL SYMBOL SHARP DOWN;So;0;L;;;;;N;;;;; -1D132;MUSICAL SYMBOL QUARTER TONE SHARP;So;0;L;;;;;N;;;;; -1D133;MUSICAL SYMBOL QUARTER TONE FLAT;So;0;L;;;;;N;;;;; -1D134;MUSICAL SYMBOL COMMON TIME;So;0;L;;;;;N;;;;; -1D135;MUSICAL SYMBOL CUT TIME;So;0;L;;;;;N;;;;; -1D136;MUSICAL SYMBOL OTTAVA ALTA;So;0;L;;;;;N;;;;; -1D137;MUSICAL SYMBOL OTTAVA BASSA;So;0;L;;;;;N;;;;; -1D138;MUSICAL SYMBOL QUINDICESIMA ALTA;So;0;L;;;;;N;;;;; -1D139;MUSICAL SYMBOL QUINDICESIMA BASSA;So;0;L;;;;;N;;;;; -1D13A;MUSICAL SYMBOL MULTI REST;So;0;L;;;;;N;;;;; -1D13B;MUSICAL SYMBOL WHOLE REST;So;0;L;;;;;N;;;;; -1D13C;MUSICAL SYMBOL HALF REST;So;0;L;;;;;N;;;;; -1D13D;MUSICAL SYMBOL QUARTER REST;So;0;L;;;;;N;;;;; -1D13E;MUSICAL SYMBOL EIGHTH REST;So;0;L;;;;;N;;;;; -1D13F;MUSICAL SYMBOL SIXTEENTH REST;So;0;L;;;;;N;;;;; -1D140;MUSICAL SYMBOL THIRTY-SECOND REST;So;0;L;;;;;N;;;;; -1D141;MUSICAL SYMBOL SIXTY-FOURTH REST;So;0;L;;;;;N;;;;; -1D142;MUSICAL SYMBOL ONE HUNDRED TWENTY-EIGHTH REST;So;0;L;;;;;N;;;;; -1D143;MUSICAL SYMBOL X NOTEHEAD;So;0;L;;;;;N;;;;; -1D144;MUSICAL SYMBOL PLUS NOTEHEAD;So;0;L;;;;;N;;;;; -1D145;MUSICAL SYMBOL CIRCLE X NOTEHEAD;So;0;L;;;;;N;;;;; -1D146;MUSICAL SYMBOL SQUARE NOTEHEAD WHITE;So;0;L;;;;;N;;;;; -1D147;MUSICAL SYMBOL SQUARE NOTEHEAD BLACK;So;0;L;;;;;N;;;;; -1D148;MUSICAL SYMBOL TRIANGLE NOTEHEAD UP WHITE;So;0;L;;;;;N;;;;; -1D149;MUSICAL SYMBOL TRIANGLE NOTEHEAD UP BLACK;So;0;L;;;;;N;;;;; -1D14A;MUSICAL SYMBOL TRIANGLE NOTEHEAD LEFT WHITE;So;0;L;;;;;N;;;;; -1D14B;MUSICAL SYMBOL TRIANGLE NOTEHEAD LEFT BLACK;So;0;L;;;;;N;;;;; -1D14C;MUSICAL SYMBOL TRIANGLE NOTEHEAD RIGHT WHITE;So;0;L;;;;;N;;;;; -1D14D;MUSICAL SYMBOL TRIANGLE NOTEHEAD RIGHT BLACK;So;0;L;;;;;N;;;;; -1D14E;MUSICAL SYMBOL TRIANGLE NOTEHEAD DOWN WHITE;So;0;L;;;;;N;;;;; -1D14F;MUSICAL SYMBOL TRIANGLE NOTEHEAD DOWN BLACK;So;0;L;;;;;N;;;;; -1D150;MUSICAL SYMBOL TRIANGLE NOTEHEAD UP RIGHT WHITE;So;0;L;;;;;N;;;;; -1D151;MUSICAL SYMBOL TRIANGLE NOTEHEAD UP RIGHT BLACK;So;0;L;;;;;N;;;;; -1D152;MUSICAL SYMBOL MOON NOTEHEAD WHITE;So;0;L;;;;;N;;;;; -1D153;MUSICAL SYMBOL MOON NOTEHEAD BLACK;So;0;L;;;;;N;;;;; -1D154;MUSICAL SYMBOL TRIANGLE-ROUND NOTEHEAD DOWN WHITE;So;0;L;;;;;N;;;;; -1D155;MUSICAL SYMBOL TRIANGLE-ROUND NOTEHEAD DOWN BLACK;So;0;L;;;;;N;;;;; -1D156;MUSICAL SYMBOL PARENTHESIS NOTEHEAD;So;0;L;;;;;N;;;;; -1D157;MUSICAL SYMBOL VOID NOTEHEAD;So;0;L;;;;;N;;;;; -1D158;MUSICAL SYMBOL NOTEHEAD BLACK;So;0;L;;;;;N;;;;; -1D159;MUSICAL SYMBOL NULL NOTEHEAD;So;0;L;;;;;N;;;;; -1D15A;MUSICAL SYMBOL CLUSTER NOTEHEAD WHITE;So;0;L;;;;;N;;;;; -1D15B;MUSICAL SYMBOL CLUSTER NOTEHEAD BLACK;So;0;L;;;;;N;;;;; -1D15C;MUSICAL SYMBOL BREVE;So;0;L;;;;;N;;;;; -1D15D;MUSICAL SYMBOL WHOLE NOTE;So;0;L;;;;;N;;;;; -1D15E;MUSICAL SYMBOL HALF NOTE;So;0;L;1D157 1D165;;;;N;;;;; -1D15F;MUSICAL SYMBOL QUARTER NOTE;So;0;L;1D158 1D165;;;;N;;;;; -1D160;MUSICAL SYMBOL EIGHTH NOTE;So;0;L;1D15F 1D16E;;;;N;;;;; -1D161;MUSICAL SYMBOL SIXTEENTH NOTE;So;0;L;1D15F 1D16F;;;;N;;;;; -1D162;MUSICAL SYMBOL THIRTY-SECOND NOTE;So;0;L;1D15F 1D170;;;;N;;;;; -1D163;MUSICAL SYMBOL SIXTY-FOURTH NOTE;So;0;L;1D15F 1D171;;;;N;;;;; -1D164;MUSICAL SYMBOL ONE HUNDRED TWENTY-EIGHTH NOTE;So;0;L;1D15F 1D172;;;;N;;;;; -1D165;MUSICAL SYMBOL COMBINING STEM;Mc;216;L;;;;;N;;;;; -1D166;MUSICAL SYMBOL COMBINING SPRECHGESANG STEM;Mc;216;L;;;;;N;;;;; -1D167;MUSICAL SYMBOL COMBINING TREMOLO-1;Mn;1;NSM;;;;;N;;;;; -1D168;MUSICAL SYMBOL COMBINING TREMOLO-2;Mn;1;NSM;;;;;N;;;;; -1D169;MUSICAL SYMBOL COMBINING TREMOLO-3;Mn;1;NSM;;;;;N;;;;; -1D16A;MUSICAL SYMBOL FINGERED TREMOLO-1;So;0;L;;;;;N;;;;; -1D16B;MUSICAL SYMBOL FINGERED TREMOLO-2;So;0;L;;;;;N;;;;; -1D16C;MUSICAL SYMBOL FINGERED TREMOLO-3;So;0;L;;;;;N;;;;; -1D16D;MUSICAL SYMBOL COMBINING AUGMENTATION DOT;Mc;226;L;;;;;N;;;;; -1D16E;MUSICAL SYMBOL COMBINING FLAG-1;Mc;216;L;;;;;N;;;;; -1D16F;MUSICAL SYMBOL COMBINING FLAG-2;Mc;216;L;;;;;N;;;;; -1D170;MUSICAL SYMBOL COMBINING FLAG-3;Mc;216;L;;;;;N;;;;; -1D171;MUSICAL SYMBOL COMBINING FLAG-4;Mc;216;L;;;;;N;;;;; -1D172;MUSICAL SYMBOL COMBINING FLAG-5;Mc;216;L;;;;;N;;;;; -1D173;MUSICAL SYMBOL BEGIN BEAM;Cf;0;BN;;;;;N;;;;; -1D174;MUSICAL SYMBOL END BEAM;Cf;0;BN;;;;;N;;;;; -1D175;MUSICAL SYMBOL BEGIN TIE;Cf;0;BN;;;;;N;;;;; -1D176;MUSICAL SYMBOL END TIE;Cf;0;BN;;;;;N;;;;; -1D177;MUSICAL SYMBOL BEGIN SLUR;Cf;0;BN;;;;;N;;;;; -1D178;MUSICAL SYMBOL END SLUR;Cf;0;BN;;;;;N;;;;; -1D179;MUSICAL SYMBOL BEGIN PHRASE;Cf;0;BN;;;;;N;;;;; -1D17A;MUSICAL SYMBOL END PHRASE;Cf;0;BN;;;;;N;;;;; -1D17B;MUSICAL SYMBOL COMBINING ACCENT;Mn;220;NSM;;;;;N;;;;; -1D17C;MUSICAL SYMBOL COMBINING STACCATO;Mn;220;NSM;;;;;N;;;;; -1D17D;MUSICAL SYMBOL COMBINING TENUTO;Mn;220;NSM;;;;;N;;;;; -1D17E;MUSICAL SYMBOL COMBINING STACCATISSIMO;Mn;220;NSM;;;;;N;;;;; -1D17F;MUSICAL SYMBOL COMBINING MARCATO;Mn;220;NSM;;;;;N;;;;; -1D180;MUSICAL SYMBOL COMBINING MARCATO-STACCATO;Mn;220;NSM;;;;;N;;;;; -1D181;MUSICAL SYMBOL COMBINING ACCENT-STACCATO;Mn;220;NSM;;;;;N;;;;; -1D182;MUSICAL SYMBOL COMBINING LOURE;Mn;220;NSM;;;;;N;;;;; -1D183;MUSICAL SYMBOL ARPEGGIATO UP;So;0;L;;;;;N;;;;; -1D184;MUSICAL SYMBOL ARPEGGIATO DOWN;So;0;L;;;;;N;;;;; -1D185;MUSICAL SYMBOL COMBINING DOIT;Mn;230;NSM;;;;;N;;;;; -1D186;MUSICAL SYMBOL COMBINING RIP;Mn;230;NSM;;;;;N;;;;; -1D187;MUSICAL SYMBOL COMBINING FLIP;Mn;230;NSM;;;;;N;;;;; -1D188;MUSICAL SYMBOL COMBINING SMEAR;Mn;230;NSM;;;;;N;;;;; -1D189;MUSICAL SYMBOL COMBINING BEND;Mn;230;NSM;;;;;N;;;;; -1D18A;MUSICAL SYMBOL COMBINING DOUBLE TONGUE;Mn;220;NSM;;;;;N;;;;; -1D18B;MUSICAL SYMBOL COMBINING TRIPLE TONGUE;Mn;220;NSM;;;;;N;;;;; -1D18C;MUSICAL SYMBOL RINFORZANDO;So;0;L;;;;;N;;;;; -1D18D;MUSICAL SYMBOL SUBITO;So;0;L;;;;;N;;;;; -1D18E;MUSICAL SYMBOL Z;So;0;L;;;;;N;;;;; -1D18F;MUSICAL SYMBOL PIANO;So;0;L;;;;;N;;;;; -1D190;MUSICAL SYMBOL MEZZO;So;0;L;;;;;N;;;;; -1D191;MUSICAL SYMBOL FORTE;So;0;L;;;;;N;;;;; -1D192;MUSICAL SYMBOL CRESCENDO;So;0;L;;;;;N;;;;; -1D193;MUSICAL SYMBOL DECRESCENDO;So;0;L;;;;;N;;;;; -1D194;MUSICAL SYMBOL GRACE NOTE SLASH;So;0;L;;;;;N;;;;; -1D195;MUSICAL SYMBOL GRACE NOTE NO SLASH;So;0;L;;;;;N;;;;; -1D196;MUSICAL SYMBOL TR;So;0;L;;;;;N;;;;; -1D197;MUSICAL SYMBOL TURN;So;0;L;;;;;N;;;;; -1D198;MUSICAL SYMBOL INVERTED TURN;So;0;L;;;;;N;;;;; -1D199;MUSICAL SYMBOL TURN SLASH;So;0;L;;;;;N;;;;; -1D19A;MUSICAL SYMBOL TURN UP;So;0;L;;;;;N;;;;; -1D19B;MUSICAL SYMBOL ORNAMENT STROKE-1;So;0;L;;;;;N;;;;; -1D19C;MUSICAL SYMBOL ORNAMENT STROKE-2;So;0;L;;;;;N;;;;; -1D19D;MUSICAL SYMBOL ORNAMENT STROKE-3;So;0;L;;;;;N;;;;; -1D19E;MUSICAL SYMBOL ORNAMENT STROKE-4;So;0;L;;;;;N;;;;; -1D19F;MUSICAL SYMBOL ORNAMENT STROKE-5;So;0;L;;;;;N;;;;; -1D1A0;MUSICAL SYMBOL ORNAMENT STROKE-6;So;0;L;;;;;N;;;;; -1D1A1;MUSICAL SYMBOL ORNAMENT STROKE-7;So;0;L;;;;;N;;;;; -1D1A2;MUSICAL SYMBOL ORNAMENT STROKE-8;So;0;L;;;;;N;;;;; -1D1A3;MUSICAL SYMBOL ORNAMENT STROKE-9;So;0;L;;;;;N;;;;; -1D1A4;MUSICAL SYMBOL ORNAMENT STROKE-10;So;0;L;;;;;N;;;;; -1D1A5;MUSICAL SYMBOL ORNAMENT STROKE-11;So;0;L;;;;;N;;;;; -1D1A6;MUSICAL SYMBOL HAUPTSTIMME;So;0;L;;;;;N;;;;; -1D1A7;MUSICAL SYMBOL NEBENSTIMME;So;0;L;;;;;N;;;;; -1D1A8;MUSICAL SYMBOL END OF STIMME;So;0;L;;;;;N;;;;; -1D1A9;MUSICAL SYMBOL DEGREE SLASH;So;0;L;;;;;N;;;;; -1D1AA;MUSICAL SYMBOL COMBINING DOWN BOW;Mn;230;NSM;;;;;N;;;;; -1D1AB;MUSICAL SYMBOL COMBINING UP BOW;Mn;230;NSM;;;;;N;;;;; -1D1AC;MUSICAL SYMBOL COMBINING HARMONIC;Mn;230;NSM;;;;;N;;;;; -1D1AD;MUSICAL SYMBOL COMBINING SNAP PIZZICATO;Mn;230;NSM;;;;;N;;;;; -1D1AE;MUSICAL SYMBOL PEDAL MARK;So;0;L;;;;;N;;;;; -1D1AF;MUSICAL SYMBOL PEDAL UP MARK;So;0;L;;;;;N;;;;; -1D1B0;MUSICAL SYMBOL HALF PEDAL MARK;So;0;L;;;;;N;;;;; -1D1B1;MUSICAL SYMBOL GLISSANDO UP;So;0;L;;;;;N;;;;; -1D1B2;MUSICAL SYMBOL GLISSANDO DOWN;So;0;L;;;;;N;;;;; -1D1B3;MUSICAL SYMBOL WITH FINGERNAILS;So;0;L;;;;;N;;;;; -1D1B4;MUSICAL SYMBOL DAMP;So;0;L;;;;;N;;;;; -1D1B5;MUSICAL SYMBOL DAMP ALL;So;0;L;;;;;N;;;;; -1D1B6;MUSICAL SYMBOL MAXIMA;So;0;L;;;;;N;;;;; -1D1B7;MUSICAL SYMBOL LONGA;So;0;L;;;;;N;;;;; -1D1B8;MUSICAL SYMBOL BREVIS;So;0;L;;;;;N;;;;; -1D1B9;MUSICAL SYMBOL SEMIBREVIS WHITE;So;0;L;;;;;N;;;;; -1D1BA;MUSICAL SYMBOL SEMIBREVIS BLACK;So;0;L;;;;;N;;;;; -1D1BB;MUSICAL SYMBOL MINIMA;So;0;L;1D1B9 1D165;;;;N;;;;; -1D1BC;MUSICAL SYMBOL MINIMA BLACK;So;0;L;1D1BA 1D165;;;;N;;;;; -1D1BD;MUSICAL SYMBOL SEMIMINIMA WHITE;So;0;L;1D1BB 1D16E;;;;N;;;;; -1D1BE;MUSICAL SYMBOL SEMIMINIMA BLACK;So;0;L;1D1BC 1D16E;;;;N;;;;; -1D1BF;MUSICAL SYMBOL FUSA WHITE;So;0;L;1D1BB 1D16F;;;;N;;;;; -1D1C0;MUSICAL SYMBOL FUSA BLACK;So;0;L;1D1BC 1D16F;;;;N;;;;; -1D1C1;MUSICAL SYMBOL LONGA PERFECTA REST;So;0;L;;;;;N;;;;; -1D1C2;MUSICAL SYMBOL LONGA IMPERFECTA REST;So;0;L;;;;;N;;;;; -1D1C3;MUSICAL SYMBOL BREVIS REST;So;0;L;;;;;N;;;;; -1D1C4;MUSICAL SYMBOL SEMIBREVIS REST;So;0;L;;;;;N;;;;; -1D1C5;MUSICAL SYMBOL MINIMA REST;So;0;L;;;;;N;;;;; -1D1C6;MUSICAL SYMBOL SEMIMINIMA REST;So;0;L;;;;;N;;;;; -1D1C7;MUSICAL SYMBOL TEMPUS PERFECTUM CUM PROLATIONE PERFECTA;So;0;L;;;;;N;;;;; -1D1C8;MUSICAL SYMBOL TEMPUS PERFECTUM CUM PROLATIONE IMPERFECTA;So;0;L;;;;;N;;;;; -1D1C9;MUSICAL SYMBOL TEMPUS PERFECTUM CUM PROLATIONE PERFECTA DIMINUTION-1;So;0;L;;;;;N;;;;; -1D1CA;MUSICAL SYMBOL TEMPUS IMPERFECTUM CUM PROLATIONE PERFECTA;So;0;L;;;;;N;;;;; -1D1CB;MUSICAL SYMBOL TEMPUS IMPERFECTUM CUM PROLATIONE IMPERFECTA;So;0;L;;;;;N;;;;; -1D1CC;MUSICAL SYMBOL TEMPUS IMPERFECTUM CUM PROLATIONE IMPERFECTA DIMINUTION-1;So;0;L;;;;;N;;;;; -1D1CD;MUSICAL SYMBOL TEMPUS IMPERFECTUM CUM PROLATIONE IMPERFECTA DIMINUTION-2;So;0;L;;;;;N;;;;; -1D1CE;MUSICAL SYMBOL TEMPUS IMPERFECTUM CUM PROLATIONE IMPERFECTA DIMINUTION-3;So;0;L;;;;;N;;;;; -1D1CF;MUSICAL SYMBOL CROIX;So;0;L;;;;;N;;;;; -1D1D0;MUSICAL SYMBOL GREGORIAN C CLEF;So;0;L;;;;;N;;;;; -1D1D1;MUSICAL SYMBOL GREGORIAN F CLEF;So;0;L;;;;;N;;;;; -1D1D2;MUSICAL SYMBOL SQUARE B;So;0;L;;;;;N;;;;; -1D1D3;MUSICAL SYMBOL VIRGA;So;0;L;;;;;N;;;;; -1D1D4;MUSICAL SYMBOL PODATUS;So;0;L;;;;;N;;;;; -1D1D5;MUSICAL SYMBOL CLIVIS;So;0;L;;;;;N;;;;; -1D1D6;MUSICAL SYMBOL SCANDICUS;So;0;L;;;;;N;;;;; -1D1D7;MUSICAL SYMBOL CLIMACUS;So;0;L;;;;;N;;;;; -1D1D8;MUSICAL SYMBOL TORCULUS;So;0;L;;;;;N;;;;; -1D1D9;MUSICAL SYMBOL PORRECTUS;So;0;L;;;;;N;;;;; -1D1DA;MUSICAL SYMBOL PORRECTUS FLEXUS;So;0;L;;;;;N;;;;; -1D1DB;MUSICAL SYMBOL SCANDICUS FLEXUS;So;0;L;;;;;N;;;;; -1D1DC;MUSICAL SYMBOL TORCULUS RESUPINUS;So;0;L;;;;;N;;;;; -1D1DD;MUSICAL SYMBOL PES SUBPUNCTIS;So;0;L;;;;;N;;;;; -1D200;GREEK VOCAL NOTATION SYMBOL-1;So;0;ON;;;;;N;;;;; -1D201;GREEK VOCAL NOTATION SYMBOL-2;So;0;ON;;;;;N;;;;; -1D202;GREEK VOCAL NOTATION SYMBOL-3;So;0;ON;;;;;N;;;;; -1D203;GREEK VOCAL NOTATION SYMBOL-4;So;0;ON;;;;;N;;;;; -1D204;GREEK VOCAL NOTATION SYMBOL-5;So;0;ON;;;;;N;;;;; -1D205;GREEK VOCAL NOTATION SYMBOL-6;So;0;ON;;;;;N;;;;; -1D206;GREEK VOCAL NOTATION SYMBOL-7;So;0;ON;;;;;N;;;;; -1D207;GREEK VOCAL NOTATION SYMBOL-8;So;0;ON;;;;;N;;;;; -1D208;GREEK VOCAL NOTATION SYMBOL-9;So;0;ON;;;;;N;;;;; -1D209;GREEK VOCAL NOTATION SYMBOL-10;So;0;ON;;;;;N;;;;; -1D20A;GREEK VOCAL NOTATION SYMBOL-11;So;0;ON;;;;;N;;;;; -1D20B;GREEK VOCAL NOTATION SYMBOL-12;So;0;ON;;;;;N;;;;; -1D20C;GREEK VOCAL NOTATION SYMBOL-13;So;0;ON;;;;;N;;;;; -1D20D;GREEK VOCAL NOTATION SYMBOL-14;So;0;ON;;;;;N;;;;; -1D20E;GREEK VOCAL NOTATION SYMBOL-15;So;0;ON;;;;;N;;;;; -1D20F;GREEK VOCAL NOTATION SYMBOL-16;So;0;ON;;;;;N;;;;; -1D210;GREEK VOCAL NOTATION SYMBOL-17;So;0;ON;;;;;N;;;;; -1D211;GREEK VOCAL NOTATION SYMBOL-18;So;0;ON;;;;;N;;;;; -1D212;GREEK VOCAL NOTATION SYMBOL-19;So;0;ON;;;;;N;;;;; -1D213;GREEK VOCAL NOTATION SYMBOL-20;So;0;ON;;;;;N;;;;; -1D214;GREEK VOCAL NOTATION SYMBOL-21;So;0;ON;;;;;N;;;;; -1D215;GREEK VOCAL NOTATION SYMBOL-22;So;0;ON;;;;;N;;;;; -1D216;GREEK VOCAL NOTATION SYMBOL-23;So;0;ON;;;;;N;;;;; -1D217;GREEK VOCAL NOTATION SYMBOL-24;So;0;ON;;;;;N;;;;; -1D218;GREEK VOCAL NOTATION SYMBOL-50;So;0;ON;;;;;N;;;;; -1D219;GREEK VOCAL NOTATION SYMBOL-51;So;0;ON;;;;;N;;;;; -1D21A;GREEK VOCAL NOTATION SYMBOL-52;So;0;ON;;;;;N;;;;; -1D21B;GREEK VOCAL NOTATION SYMBOL-53;So;0;ON;;;;;N;;;;; -1D21C;GREEK VOCAL NOTATION SYMBOL-54;So;0;ON;;;;;N;;;;; -1D21D;GREEK INSTRUMENTAL NOTATION SYMBOL-1;So;0;ON;;;;;N;;;;; -1D21E;GREEK INSTRUMENTAL NOTATION SYMBOL-2;So;0;ON;;;;;N;;;;; -1D21F;GREEK INSTRUMENTAL NOTATION SYMBOL-4;So;0;ON;;;;;N;;;;; -1D220;GREEK INSTRUMENTAL NOTATION SYMBOL-5;So;0;ON;;;;;N;;;;; -1D221;GREEK INSTRUMENTAL NOTATION SYMBOL-7;So;0;ON;;;;;N;;;;; -1D222;GREEK INSTRUMENTAL NOTATION SYMBOL-8;So;0;ON;;;;;N;;;;; -1D223;GREEK INSTRUMENTAL NOTATION SYMBOL-11;So;0;ON;;;;;N;;;;; -1D224;GREEK INSTRUMENTAL NOTATION SYMBOL-12;So;0;ON;;;;;N;;;;; -1D225;GREEK INSTRUMENTAL NOTATION SYMBOL-13;So;0;ON;;;;;N;;;;; -1D226;GREEK INSTRUMENTAL NOTATION SYMBOL-14;So;0;ON;;;;;N;;;;; -1D227;GREEK INSTRUMENTAL NOTATION SYMBOL-17;So;0;ON;;;;;N;;;;; -1D228;GREEK INSTRUMENTAL NOTATION SYMBOL-18;So;0;ON;;;;;N;;;;; -1D229;GREEK INSTRUMENTAL NOTATION SYMBOL-19;So;0;ON;;;;;N;;;;; -1D22A;GREEK INSTRUMENTAL NOTATION SYMBOL-23;So;0;ON;;;;;N;;;;; -1D22B;GREEK INSTRUMENTAL NOTATION SYMBOL-24;So;0;ON;;;;;N;;;;; -1D22C;GREEK INSTRUMENTAL NOTATION SYMBOL-25;So;0;ON;;;;;N;;;;; -1D22D;GREEK INSTRUMENTAL NOTATION SYMBOL-26;So;0;ON;;;;;N;;;;; -1D22E;GREEK INSTRUMENTAL NOTATION SYMBOL-27;So;0;ON;;;;;N;;;;; -1D22F;GREEK INSTRUMENTAL NOTATION SYMBOL-29;So;0;ON;;;;;N;;;;; -1D230;GREEK INSTRUMENTAL NOTATION SYMBOL-30;So;0;ON;;;;;N;;;;; -1D231;GREEK INSTRUMENTAL NOTATION SYMBOL-32;So;0;ON;;;;;N;;;;; -1D232;GREEK INSTRUMENTAL NOTATION SYMBOL-36;So;0;ON;;;;;N;;;;; -1D233;GREEK INSTRUMENTAL NOTATION SYMBOL-37;So;0;ON;;;;;N;;;;; -1D234;GREEK INSTRUMENTAL NOTATION SYMBOL-38;So;0;ON;;;;;N;;;;; -1D235;GREEK INSTRUMENTAL NOTATION SYMBOL-39;So;0;ON;;;;;N;;;;; -1D236;GREEK INSTRUMENTAL NOTATION SYMBOL-40;So;0;ON;;;;;N;;;;; -1D237;GREEK INSTRUMENTAL NOTATION SYMBOL-42;So;0;ON;;;;;N;;;;; -1D238;GREEK INSTRUMENTAL NOTATION SYMBOL-43;So;0;ON;;;;;N;;;;; -1D239;GREEK INSTRUMENTAL NOTATION SYMBOL-45;So;0;ON;;;;;N;;;;; -1D23A;GREEK INSTRUMENTAL NOTATION SYMBOL-47;So;0;ON;;;;;N;;;;; -1D23B;GREEK INSTRUMENTAL NOTATION SYMBOL-48;So;0;ON;;;;;N;;;;; -1D23C;GREEK INSTRUMENTAL NOTATION SYMBOL-49;So;0;ON;;;;;N;;;;; -1D23D;GREEK INSTRUMENTAL NOTATION SYMBOL-50;So;0;ON;;;;;N;;;;; -1D23E;GREEK INSTRUMENTAL NOTATION SYMBOL-51;So;0;ON;;;;;N;;;;; -1D23F;GREEK INSTRUMENTAL NOTATION SYMBOL-52;So;0;ON;;;;;N;;;;; -1D240;GREEK INSTRUMENTAL NOTATION SYMBOL-53;So;0;ON;;;;;N;;;;; -1D241;GREEK INSTRUMENTAL NOTATION SYMBOL-54;So;0;ON;;;;;N;;;;; -1D242;COMBINING GREEK MUSICAL TRISEME;Mn;230;NSM;;;;;N;;;;; -1D243;COMBINING GREEK MUSICAL TETRASEME;Mn;230;NSM;;;;;N;;;;; -1D244;COMBINING GREEK MUSICAL PENTASEME;Mn;230;NSM;;;;;N;;;;; -1D245;GREEK MUSICAL LEIMMA;So;0;ON;;;;;N;;;;; -1D300;MONOGRAM FOR EARTH;So;0;ON;;;;;N;;;;; -1D301;DIGRAM FOR HEAVENLY EARTH;So;0;ON;;;;;N;;;;; -1D302;DIGRAM FOR HUMAN EARTH;So;0;ON;;;;;N;;;;; -1D303;DIGRAM FOR EARTHLY HEAVEN;So;0;ON;;;;;N;;;;; -1D304;DIGRAM FOR EARTHLY HUMAN;So;0;ON;;;;;N;;;;; -1D305;DIGRAM FOR EARTH;So;0;ON;;;;;N;;;;; -1D306;TETRAGRAM FOR CENTRE;So;0;ON;;;;;N;;;;; -1D307;TETRAGRAM FOR FULL CIRCLE;So;0;ON;;;;;N;;;;; -1D308;TETRAGRAM FOR MIRED;So;0;ON;;;;;N;;;;; -1D309;TETRAGRAM FOR BARRIER;So;0;ON;;;;;N;;;;; -1D30A;TETRAGRAM FOR KEEPING SMALL;So;0;ON;;;;;N;;;;; -1D30B;TETRAGRAM FOR CONTRARIETY;So;0;ON;;;;;N;;;;; -1D30C;TETRAGRAM FOR ASCENT;So;0;ON;;;;;N;;;;; -1D30D;TETRAGRAM FOR OPPOSITION;So;0;ON;;;;;N;;;;; -1D30E;TETRAGRAM FOR BRANCHING OUT;So;0;ON;;;;;N;;;;; -1D30F;TETRAGRAM FOR DEFECTIVENESS OR DISTORTION;So;0;ON;;;;;N;;;;; -1D310;TETRAGRAM FOR DIVERGENCE;So;0;ON;;;;;N;;;;; -1D311;TETRAGRAM FOR YOUTHFULNESS;So;0;ON;;;;;N;;;;; -1D312;TETRAGRAM FOR INCREASE;So;0;ON;;;;;N;;;;; -1D313;TETRAGRAM FOR PENETRATION;So;0;ON;;;;;N;;;;; -1D314;TETRAGRAM FOR REACH;So;0;ON;;;;;N;;;;; -1D315;TETRAGRAM FOR CONTACT;So;0;ON;;;;;N;;;;; -1D316;TETRAGRAM FOR HOLDING BACK;So;0;ON;;;;;N;;;;; -1D317;TETRAGRAM FOR WAITING;So;0;ON;;;;;N;;;;; -1D318;TETRAGRAM FOR FOLLOWING;So;0;ON;;;;;N;;;;; -1D319;TETRAGRAM FOR ADVANCE;So;0;ON;;;;;N;;;;; -1D31A;TETRAGRAM FOR RELEASE;So;0;ON;;;;;N;;;;; -1D31B;TETRAGRAM FOR RESISTANCE;So;0;ON;;;;;N;;;;; -1D31C;TETRAGRAM FOR EASE;So;0;ON;;;;;N;;;;; -1D31D;TETRAGRAM FOR JOY;So;0;ON;;;;;N;;;;; -1D31E;TETRAGRAM FOR CONTENTION;So;0;ON;;;;;N;;;;; -1D31F;TETRAGRAM FOR ENDEAVOUR;So;0;ON;;;;;N;;;;; -1D320;TETRAGRAM FOR DUTIES;So;0;ON;;;;;N;;;;; -1D321;TETRAGRAM FOR CHANGE;So;0;ON;;;;;N;;;;; -1D322;TETRAGRAM FOR DECISIVENESS;So;0;ON;;;;;N;;;;; -1D323;TETRAGRAM FOR BOLD RESOLUTION;So;0;ON;;;;;N;;;;; -1D324;TETRAGRAM FOR PACKING;So;0;ON;;;;;N;;;;; -1D325;TETRAGRAM FOR LEGION;So;0;ON;;;;;N;;;;; -1D326;TETRAGRAM FOR CLOSENESS;So;0;ON;;;;;N;;;;; -1D327;TETRAGRAM FOR KINSHIP;So;0;ON;;;;;N;;;;; -1D328;TETRAGRAM FOR GATHERING;So;0;ON;;;;;N;;;;; -1D329;TETRAGRAM FOR STRENGTH;So;0;ON;;;;;N;;;;; -1D32A;TETRAGRAM FOR PURITY;So;0;ON;;;;;N;;;;; -1D32B;TETRAGRAM FOR FULLNESS;So;0;ON;;;;;N;;;;; -1D32C;TETRAGRAM FOR RESIDENCE;So;0;ON;;;;;N;;;;; -1D32D;TETRAGRAM FOR LAW OR MODEL;So;0;ON;;;;;N;;;;; -1D32E;TETRAGRAM FOR RESPONSE;So;0;ON;;;;;N;;;;; -1D32F;TETRAGRAM FOR GOING TO MEET;So;0;ON;;;;;N;;;;; -1D330;TETRAGRAM FOR ENCOUNTERS;So;0;ON;;;;;N;;;;; -1D331;TETRAGRAM FOR STOVE;So;0;ON;;;;;N;;;;; -1D332;TETRAGRAM FOR GREATNESS;So;0;ON;;;;;N;;;;; -1D333;TETRAGRAM FOR ENLARGEMENT;So;0;ON;;;;;N;;;;; -1D334;TETRAGRAM FOR PATTERN;So;0;ON;;;;;N;;;;; -1D335;TETRAGRAM FOR RITUAL;So;0;ON;;;;;N;;;;; -1D336;TETRAGRAM FOR FLIGHT;So;0;ON;;;;;N;;;;; -1D337;TETRAGRAM FOR VASTNESS OR WASTING;So;0;ON;;;;;N;;;;; -1D338;TETRAGRAM FOR CONSTANCY;So;0;ON;;;;;N;;;;; -1D339;TETRAGRAM FOR MEASURE;So;0;ON;;;;;N;;;;; -1D33A;TETRAGRAM FOR ETERNITY;So;0;ON;;;;;N;;;;; -1D33B;TETRAGRAM FOR UNITY;So;0;ON;;;;;N;;;;; -1D33C;TETRAGRAM FOR DIMINISHMENT;So;0;ON;;;;;N;;;;; -1D33D;TETRAGRAM FOR CLOSED MOUTH;So;0;ON;;;;;N;;;;; -1D33E;TETRAGRAM FOR GUARDEDNESS;So;0;ON;;;;;N;;;;; -1D33F;TETRAGRAM FOR GATHERING IN;So;0;ON;;;;;N;;;;; -1D340;TETRAGRAM FOR MASSING;So;0;ON;;;;;N;;;;; -1D341;TETRAGRAM FOR ACCUMULATION;So;0;ON;;;;;N;;;;; -1D342;TETRAGRAM FOR EMBELLISHMENT;So;0;ON;;;;;N;;;;; -1D343;TETRAGRAM FOR DOUBT;So;0;ON;;;;;N;;;;; -1D344;TETRAGRAM FOR WATCH;So;0;ON;;;;;N;;;;; -1D345;TETRAGRAM FOR SINKING;So;0;ON;;;;;N;;;;; -1D346;TETRAGRAM FOR INNER;So;0;ON;;;;;N;;;;; -1D347;TETRAGRAM FOR DEPARTURE;So;0;ON;;;;;N;;;;; -1D348;TETRAGRAM FOR DARKENING;So;0;ON;;;;;N;;;;; -1D349;TETRAGRAM FOR DIMMING;So;0;ON;;;;;N;;;;; -1D34A;TETRAGRAM FOR EXHAUSTION;So;0;ON;;;;;N;;;;; -1D34B;TETRAGRAM FOR SEVERANCE;So;0;ON;;;;;N;;;;; -1D34C;TETRAGRAM FOR STOPPAGE;So;0;ON;;;;;N;;;;; -1D34D;TETRAGRAM FOR HARDNESS;So;0;ON;;;;;N;;;;; -1D34E;TETRAGRAM FOR COMPLETION;So;0;ON;;;;;N;;;;; -1D34F;TETRAGRAM FOR CLOSURE;So;0;ON;;;;;N;;;;; -1D350;TETRAGRAM FOR FAILURE;So;0;ON;;;;;N;;;;; -1D351;TETRAGRAM FOR AGGRAVATION;So;0;ON;;;;;N;;;;; -1D352;TETRAGRAM FOR COMPLIANCE;So;0;ON;;;;;N;;;;; -1D353;TETRAGRAM FOR ON THE VERGE;So;0;ON;;;;;N;;;;; -1D354;TETRAGRAM FOR DIFFICULTIES;So;0;ON;;;;;N;;;;; -1D355;TETRAGRAM FOR LABOURING;So;0;ON;;;;;N;;;;; -1D356;TETRAGRAM FOR FOSTERING;So;0;ON;;;;;N;;;;; -1D360;COUNTING ROD UNIT DIGIT ONE;No;0;L;;;;1;N;;;;; -1D361;COUNTING ROD UNIT DIGIT TWO;No;0;L;;;;2;N;;;;; -1D362;COUNTING ROD UNIT DIGIT THREE;No;0;L;;;;3;N;;;;; -1D363;COUNTING ROD UNIT DIGIT FOUR;No;0;L;;;;4;N;;;;; -1D364;COUNTING ROD UNIT DIGIT FIVE;No;0;L;;;;5;N;;;;; -1D365;COUNTING ROD UNIT DIGIT SIX;No;0;L;;;;6;N;;;;; -1D366;COUNTING ROD UNIT DIGIT SEVEN;No;0;L;;;;7;N;;;;; -1D367;COUNTING ROD UNIT DIGIT EIGHT;No;0;L;;;;8;N;;;;; -1D368;COUNTING ROD UNIT DIGIT NINE;No;0;L;;;;9;N;;;;; -1D369;COUNTING ROD TENS DIGIT ONE;No;0;L;;;;10;N;;;;; -1D36A;COUNTING ROD TENS DIGIT TWO;No;0;L;;;;20;N;;;;; -1D36B;COUNTING ROD TENS DIGIT THREE;No;0;L;;;;30;N;;;;; -1D36C;COUNTING ROD TENS DIGIT FOUR;No;0;L;;;;40;N;;;;; -1D36D;COUNTING ROD TENS DIGIT FIVE;No;0;L;;;;50;N;;;;; -1D36E;COUNTING ROD TENS DIGIT SIX;No;0;L;;;;60;N;;;;; -1D36F;COUNTING ROD TENS DIGIT SEVEN;No;0;L;;;;70;N;;;;; -1D370;COUNTING ROD TENS DIGIT EIGHT;No;0;L;;;;80;N;;;;; -1D371;COUNTING ROD TENS DIGIT NINE;No;0;L;;;;90;N;;;;; -1D400;MATHEMATICAL BOLD CAPITAL A;Lu;0;L; 0041;;;;N;;;;; -1D401;MATHEMATICAL BOLD CAPITAL B;Lu;0;L; 0042;;;;N;;;;; -1D402;MATHEMATICAL BOLD CAPITAL C;Lu;0;L; 0043;;;;N;;;;; -1D403;MATHEMATICAL BOLD CAPITAL D;Lu;0;L; 0044;;;;N;;;;; -1D404;MATHEMATICAL BOLD CAPITAL E;Lu;0;L; 0045;;;;N;;;;; -1D405;MATHEMATICAL BOLD CAPITAL F;Lu;0;L; 0046;;;;N;;;;; -1D406;MATHEMATICAL BOLD CAPITAL G;Lu;0;L; 0047;;;;N;;;;; -1D407;MATHEMATICAL BOLD CAPITAL H;Lu;0;L; 0048;;;;N;;;;; -1D408;MATHEMATICAL BOLD CAPITAL I;Lu;0;L; 0049;;;;N;;;;; -1D409;MATHEMATICAL BOLD CAPITAL J;Lu;0;L; 004A;;;;N;;;;; -1D40A;MATHEMATICAL BOLD CAPITAL K;Lu;0;L; 004B;;;;N;;;;; -1D40B;MATHEMATICAL BOLD CAPITAL L;Lu;0;L; 004C;;;;N;;;;; -1D40C;MATHEMATICAL BOLD CAPITAL M;Lu;0;L; 004D;;;;N;;;;; -1D40D;MATHEMATICAL BOLD CAPITAL N;Lu;0;L; 004E;;;;N;;;;; -1D40E;MATHEMATICAL BOLD CAPITAL O;Lu;0;L; 004F;;;;N;;;;; -1D40F;MATHEMATICAL BOLD CAPITAL P;Lu;0;L; 0050;;;;N;;;;; -1D410;MATHEMATICAL BOLD CAPITAL Q;Lu;0;L; 0051;;;;N;;;;; -1D411;MATHEMATICAL BOLD CAPITAL R;Lu;0;L; 0052;;;;N;;;;; -1D412;MATHEMATICAL BOLD CAPITAL S;Lu;0;L; 0053;;;;N;;;;; -1D413;MATHEMATICAL BOLD CAPITAL T;Lu;0;L; 0054;;;;N;;;;; -1D414;MATHEMATICAL BOLD CAPITAL U;Lu;0;L; 0055;;;;N;;;;; -1D415;MATHEMATICAL BOLD CAPITAL V;Lu;0;L; 0056;;;;N;;;;; -1D416;MATHEMATICAL BOLD CAPITAL W;Lu;0;L; 0057;;;;N;;;;; -1D417;MATHEMATICAL BOLD CAPITAL X;Lu;0;L; 0058;;;;N;;;;; -1D418;MATHEMATICAL BOLD CAPITAL Y;Lu;0;L; 0059;;;;N;;;;; -1D419;MATHEMATICAL BOLD CAPITAL Z;Lu;0;L; 005A;;;;N;;;;; -1D41A;MATHEMATICAL BOLD SMALL A;Ll;0;L; 0061;;;;N;;;;; -1D41B;MATHEMATICAL BOLD SMALL B;Ll;0;L; 0062;;;;N;;;;; -1D41C;MATHEMATICAL BOLD SMALL C;Ll;0;L; 0063;;;;N;;;;; -1D41D;MATHEMATICAL BOLD SMALL D;Ll;0;L; 0064;;;;N;;;;; -1D41E;MATHEMATICAL BOLD SMALL E;Ll;0;L; 0065;;;;N;;;;; -1D41F;MATHEMATICAL BOLD SMALL F;Ll;0;L; 0066;;;;N;;;;; -1D420;MATHEMATICAL BOLD SMALL G;Ll;0;L; 0067;;;;N;;;;; -1D421;MATHEMATICAL BOLD SMALL H;Ll;0;L; 0068;;;;N;;;;; -1D422;MATHEMATICAL BOLD SMALL I;Ll;0;L; 0069;;;;N;;;;; -1D423;MATHEMATICAL BOLD SMALL J;Ll;0;L; 006A;;;;N;;;;; -1D424;MATHEMATICAL BOLD SMALL K;Ll;0;L; 006B;;;;N;;;;; -1D425;MATHEMATICAL BOLD SMALL L;Ll;0;L; 006C;;;;N;;;;; -1D426;MATHEMATICAL BOLD SMALL M;Ll;0;L; 006D;;;;N;;;;; -1D427;MATHEMATICAL BOLD SMALL N;Ll;0;L; 006E;;;;N;;;;; -1D428;MATHEMATICAL BOLD SMALL O;Ll;0;L; 006F;;;;N;;;;; -1D429;MATHEMATICAL BOLD SMALL P;Ll;0;L; 0070;;;;N;;;;; -1D42A;MATHEMATICAL BOLD SMALL Q;Ll;0;L; 0071;;;;N;;;;; -1D42B;MATHEMATICAL BOLD SMALL R;Ll;0;L; 0072;;;;N;;;;; -1D42C;MATHEMATICAL BOLD SMALL S;Ll;0;L; 0073;;;;N;;;;; -1D42D;MATHEMATICAL BOLD SMALL T;Ll;0;L; 0074;;;;N;;;;; -1D42E;MATHEMATICAL BOLD SMALL U;Ll;0;L; 0075;;;;N;;;;; -1D42F;MATHEMATICAL BOLD SMALL V;Ll;0;L; 0076;;;;N;;;;; -1D430;MATHEMATICAL BOLD SMALL W;Ll;0;L; 0077;;;;N;;;;; -1D431;MATHEMATICAL BOLD SMALL X;Ll;0;L; 0078;;;;N;;;;; -1D432;MATHEMATICAL BOLD SMALL Y;Ll;0;L; 0079;;;;N;;;;; -1D433;MATHEMATICAL BOLD SMALL Z;Ll;0;L; 007A;;;;N;;;;; -1D434;MATHEMATICAL ITALIC CAPITAL A;Lu;0;L; 0041;;;;N;;;;; -1D435;MATHEMATICAL ITALIC CAPITAL B;Lu;0;L; 0042;;;;N;;;;; -1D436;MATHEMATICAL ITALIC CAPITAL C;Lu;0;L; 0043;;;;N;;;;; -1D437;MATHEMATICAL ITALIC CAPITAL D;Lu;0;L; 0044;;;;N;;;;; -1D438;MATHEMATICAL ITALIC CAPITAL E;Lu;0;L; 0045;;;;N;;;;; -1D439;MATHEMATICAL ITALIC CAPITAL F;Lu;0;L; 0046;;;;N;;;;; -1D43A;MATHEMATICAL ITALIC CAPITAL G;Lu;0;L; 0047;;;;N;;;;; -1D43B;MATHEMATICAL ITALIC CAPITAL H;Lu;0;L; 0048;;;;N;;;;; -1D43C;MATHEMATICAL ITALIC CAPITAL I;Lu;0;L; 0049;;;;N;;;;; -1D43D;MATHEMATICAL ITALIC CAPITAL J;Lu;0;L; 004A;;;;N;;;;; -1D43E;MATHEMATICAL ITALIC CAPITAL K;Lu;0;L; 004B;;;;N;;;;; -1D43F;MATHEMATICAL ITALIC CAPITAL L;Lu;0;L; 004C;;;;N;;;;; -1D440;MATHEMATICAL ITALIC CAPITAL M;Lu;0;L; 004D;;;;N;;;;; -1D441;MATHEMATICAL ITALIC CAPITAL N;Lu;0;L; 004E;;;;N;;;;; -1D442;MATHEMATICAL ITALIC CAPITAL O;Lu;0;L; 004F;;;;N;;;;; -1D443;MATHEMATICAL ITALIC CAPITAL P;Lu;0;L; 0050;;;;N;;;;; -1D444;MATHEMATICAL ITALIC CAPITAL Q;Lu;0;L; 0051;;;;N;;;;; -1D445;MATHEMATICAL ITALIC CAPITAL R;Lu;0;L; 0052;;;;N;;;;; -1D446;MATHEMATICAL ITALIC CAPITAL S;Lu;0;L; 0053;;;;N;;;;; -1D447;MATHEMATICAL ITALIC CAPITAL T;Lu;0;L; 0054;;;;N;;;;; -1D448;MATHEMATICAL ITALIC CAPITAL U;Lu;0;L; 0055;;;;N;;;;; -1D449;MATHEMATICAL ITALIC CAPITAL V;Lu;0;L; 0056;;;;N;;;;; -1D44A;MATHEMATICAL ITALIC CAPITAL W;Lu;0;L; 0057;;;;N;;;;; -1D44B;MATHEMATICAL ITALIC CAPITAL X;Lu;0;L; 0058;;;;N;;;;; -1D44C;MATHEMATICAL ITALIC CAPITAL Y;Lu;0;L; 0059;;;;N;;;;; -1D44D;MATHEMATICAL ITALIC CAPITAL Z;Lu;0;L; 005A;;;;N;;;;; -1D44E;MATHEMATICAL ITALIC SMALL A;Ll;0;L; 0061;;;;N;;;;; -1D44F;MATHEMATICAL ITALIC SMALL B;Ll;0;L; 0062;;;;N;;;;; -1D450;MATHEMATICAL ITALIC SMALL C;Ll;0;L; 0063;;;;N;;;;; -1D451;MATHEMATICAL ITALIC SMALL D;Ll;0;L; 0064;;;;N;;;;; -1D452;MATHEMATICAL ITALIC SMALL E;Ll;0;L; 0065;;;;N;;;;; -1D453;MATHEMATICAL ITALIC SMALL F;Ll;0;L; 0066;;;;N;;;;; -1D454;MATHEMATICAL ITALIC SMALL G;Ll;0;L; 0067;;;;N;;;;; -1D456;MATHEMATICAL ITALIC SMALL I;Ll;0;L; 0069;;;;N;;;;; -1D457;MATHEMATICAL ITALIC SMALL J;Ll;0;L; 006A;;;;N;;;;; -1D458;MATHEMATICAL ITALIC SMALL K;Ll;0;L; 006B;;;;N;;;;; -1D459;MATHEMATICAL ITALIC SMALL L;Ll;0;L; 006C;;;;N;;;;; -1D45A;MATHEMATICAL ITALIC SMALL M;Ll;0;L; 006D;;;;N;;;;; -1D45B;MATHEMATICAL ITALIC SMALL N;Ll;0;L; 006E;;;;N;;;;; -1D45C;MATHEMATICAL ITALIC SMALL O;Ll;0;L; 006F;;;;N;;;;; -1D45D;MATHEMATICAL ITALIC SMALL P;Ll;0;L; 0070;;;;N;;;;; -1D45E;MATHEMATICAL ITALIC SMALL Q;Ll;0;L; 0071;;;;N;;;;; -1D45F;MATHEMATICAL ITALIC SMALL R;Ll;0;L; 0072;;;;N;;;;; -1D460;MATHEMATICAL ITALIC SMALL S;Ll;0;L; 0073;;;;N;;;;; -1D461;MATHEMATICAL ITALIC SMALL T;Ll;0;L; 0074;;;;N;;;;; -1D462;MATHEMATICAL ITALIC SMALL U;Ll;0;L; 0075;;;;N;;;;; -1D463;MATHEMATICAL ITALIC SMALL V;Ll;0;L; 0076;;;;N;;;;; -1D464;MATHEMATICAL ITALIC SMALL W;Ll;0;L; 0077;;;;N;;;;; -1D465;MATHEMATICAL ITALIC SMALL X;Ll;0;L; 0078;;;;N;;;;; -1D466;MATHEMATICAL ITALIC SMALL Y;Ll;0;L; 0079;;;;N;;;;; -1D467;MATHEMATICAL ITALIC SMALL Z;Ll;0;L; 007A;;;;N;;;;; -1D468;MATHEMATICAL BOLD ITALIC CAPITAL A;Lu;0;L; 0041;;;;N;;;;; -1D469;MATHEMATICAL BOLD ITALIC CAPITAL B;Lu;0;L; 0042;;;;N;;;;; -1D46A;MATHEMATICAL BOLD ITALIC CAPITAL C;Lu;0;L; 0043;;;;N;;;;; -1D46B;MATHEMATICAL BOLD ITALIC CAPITAL D;Lu;0;L; 0044;;;;N;;;;; -1D46C;MATHEMATICAL BOLD ITALIC CAPITAL E;Lu;0;L; 0045;;;;N;;;;; -1D46D;MATHEMATICAL BOLD ITALIC CAPITAL F;Lu;0;L; 0046;;;;N;;;;; -1D46E;MATHEMATICAL BOLD ITALIC CAPITAL G;Lu;0;L; 0047;;;;N;;;;; -1D46F;MATHEMATICAL BOLD ITALIC CAPITAL H;Lu;0;L; 0048;;;;N;;;;; -1D470;MATHEMATICAL BOLD ITALIC CAPITAL I;Lu;0;L; 0049;;;;N;;;;; -1D471;MATHEMATICAL BOLD ITALIC CAPITAL J;Lu;0;L; 004A;;;;N;;;;; -1D472;MATHEMATICAL BOLD ITALIC CAPITAL K;Lu;0;L; 004B;;;;N;;;;; -1D473;MATHEMATICAL BOLD ITALIC CAPITAL L;Lu;0;L; 004C;;;;N;;;;; -1D474;MATHEMATICAL BOLD ITALIC CAPITAL M;Lu;0;L; 004D;;;;N;;;;; -1D475;MATHEMATICAL BOLD ITALIC CAPITAL N;Lu;0;L; 004E;;;;N;;;;; -1D476;MATHEMATICAL BOLD ITALIC CAPITAL O;Lu;0;L; 004F;;;;N;;;;; -1D477;MATHEMATICAL BOLD ITALIC CAPITAL P;Lu;0;L; 0050;;;;N;;;;; -1D478;MATHEMATICAL BOLD ITALIC CAPITAL Q;Lu;0;L; 0051;;;;N;;;;; -1D479;MATHEMATICAL BOLD ITALIC CAPITAL R;Lu;0;L; 0052;;;;N;;;;; -1D47A;MATHEMATICAL BOLD ITALIC CAPITAL S;Lu;0;L; 0053;;;;N;;;;; -1D47B;MATHEMATICAL BOLD ITALIC CAPITAL T;Lu;0;L; 0054;;;;N;;;;; -1D47C;MATHEMATICAL BOLD ITALIC CAPITAL U;Lu;0;L; 0055;;;;N;;;;; -1D47D;MATHEMATICAL BOLD ITALIC CAPITAL V;Lu;0;L; 0056;;;;N;;;;; -1D47E;MATHEMATICAL BOLD ITALIC CAPITAL W;Lu;0;L; 0057;;;;N;;;;; -1D47F;MATHEMATICAL BOLD ITALIC CAPITAL X;Lu;0;L; 0058;;;;N;;;;; -1D480;MATHEMATICAL BOLD ITALIC CAPITAL Y;Lu;0;L; 0059;;;;N;;;;; -1D481;MATHEMATICAL BOLD ITALIC CAPITAL Z;Lu;0;L; 005A;;;;N;;;;; -1D482;MATHEMATICAL BOLD ITALIC SMALL A;Ll;0;L; 0061;;;;N;;;;; -1D483;MATHEMATICAL BOLD ITALIC SMALL B;Ll;0;L; 0062;;;;N;;;;; -1D484;MATHEMATICAL BOLD ITALIC SMALL C;Ll;0;L; 0063;;;;N;;;;; -1D485;MATHEMATICAL BOLD ITALIC SMALL D;Ll;0;L; 0064;;;;N;;;;; -1D486;MATHEMATICAL BOLD ITALIC SMALL E;Ll;0;L; 0065;;;;N;;;;; -1D487;MATHEMATICAL BOLD ITALIC SMALL F;Ll;0;L; 0066;;;;N;;;;; -1D488;MATHEMATICAL BOLD ITALIC SMALL G;Ll;0;L; 0067;;;;N;;;;; -1D489;MATHEMATICAL BOLD ITALIC SMALL H;Ll;0;L; 0068;;;;N;;;;; -1D48A;MATHEMATICAL BOLD ITALIC SMALL I;Ll;0;L; 0069;;;;N;;;;; -1D48B;MATHEMATICAL BOLD ITALIC SMALL J;Ll;0;L; 006A;;;;N;;;;; -1D48C;MATHEMATICAL BOLD ITALIC SMALL K;Ll;0;L; 006B;;;;N;;;;; -1D48D;MATHEMATICAL BOLD ITALIC SMALL L;Ll;0;L; 006C;;;;N;;;;; -1D48E;MATHEMATICAL BOLD ITALIC SMALL M;Ll;0;L; 006D;;;;N;;;;; -1D48F;MATHEMATICAL BOLD ITALIC SMALL N;Ll;0;L; 006E;;;;N;;;;; -1D490;MATHEMATICAL BOLD ITALIC SMALL O;Ll;0;L; 006F;;;;N;;;;; -1D491;MATHEMATICAL BOLD ITALIC SMALL P;Ll;0;L; 0070;;;;N;;;;; -1D492;MATHEMATICAL BOLD ITALIC SMALL Q;Ll;0;L; 0071;;;;N;;;;; -1D493;MATHEMATICAL BOLD ITALIC SMALL R;Ll;0;L; 0072;;;;N;;;;; -1D494;MATHEMATICAL BOLD ITALIC SMALL S;Ll;0;L; 0073;;;;N;;;;; -1D495;MATHEMATICAL BOLD ITALIC SMALL T;Ll;0;L; 0074;;;;N;;;;; -1D496;MATHEMATICAL BOLD ITALIC SMALL U;Ll;0;L; 0075;;;;N;;;;; -1D497;MATHEMATICAL BOLD ITALIC SMALL V;Ll;0;L; 0076;;;;N;;;;; -1D498;MATHEMATICAL BOLD ITALIC SMALL W;Ll;0;L; 0077;;;;N;;;;; -1D499;MATHEMATICAL BOLD ITALIC SMALL X;Ll;0;L; 0078;;;;N;;;;; -1D49A;MATHEMATICAL BOLD ITALIC SMALL Y;Ll;0;L; 0079;;;;N;;;;; -1D49B;MATHEMATICAL BOLD ITALIC SMALL Z;Ll;0;L; 007A;;;;N;;;;; -1D49C;MATHEMATICAL SCRIPT CAPITAL A;Lu;0;L; 0041;;;;N;;;;; -1D49E;MATHEMATICAL SCRIPT CAPITAL C;Lu;0;L; 0043;;;;N;;;;; -1D49F;MATHEMATICAL SCRIPT CAPITAL D;Lu;0;L; 0044;;;;N;;;;; -1D4A2;MATHEMATICAL SCRIPT CAPITAL G;Lu;0;L; 0047;;;;N;;;;; -1D4A5;MATHEMATICAL SCRIPT CAPITAL J;Lu;0;L; 004A;;;;N;;;;; -1D4A6;MATHEMATICAL SCRIPT CAPITAL K;Lu;0;L; 004B;;;;N;;;;; -1D4A9;MATHEMATICAL SCRIPT CAPITAL N;Lu;0;L; 004E;;;;N;;;;; -1D4AA;MATHEMATICAL SCRIPT CAPITAL O;Lu;0;L; 004F;;;;N;;;;; -1D4AB;MATHEMATICAL SCRIPT CAPITAL P;Lu;0;L; 0050;;;;N;;;;; -1D4AC;MATHEMATICAL SCRIPT CAPITAL Q;Lu;0;L; 0051;;;;N;;;;; -1D4AE;MATHEMATICAL SCRIPT CAPITAL S;Lu;0;L; 0053;;;;N;;;;; -1D4AF;MATHEMATICAL SCRIPT CAPITAL T;Lu;0;L; 0054;;;;N;;;;; -1D4B0;MATHEMATICAL SCRIPT CAPITAL U;Lu;0;L; 0055;;;;N;;;;; -1D4B1;MATHEMATICAL SCRIPT CAPITAL V;Lu;0;L; 0056;;;;N;;;;; -1D4B2;MATHEMATICAL SCRIPT CAPITAL W;Lu;0;L; 0057;;;;N;;;;; -1D4B3;MATHEMATICAL SCRIPT CAPITAL X;Lu;0;L; 0058;;;;N;;;;; -1D4B4;MATHEMATICAL SCRIPT CAPITAL Y;Lu;0;L; 0059;;;;N;;;;; -1D4B5;MATHEMATICAL SCRIPT CAPITAL Z;Lu;0;L; 005A;;;;N;;;;; -1D4B6;MATHEMATICAL SCRIPT SMALL A;Ll;0;L; 0061;;;;N;;;;; -1D4B7;MATHEMATICAL SCRIPT SMALL B;Ll;0;L; 0062;;;;N;;;;; -1D4B8;MATHEMATICAL SCRIPT SMALL C;Ll;0;L; 0063;;;;N;;;;; -1D4B9;MATHEMATICAL SCRIPT SMALL D;Ll;0;L; 0064;;;;N;;;;; -1D4BB;MATHEMATICAL SCRIPT SMALL F;Ll;0;L; 0066;;;;N;;;;; -1D4BD;MATHEMATICAL SCRIPT SMALL H;Ll;0;L; 0068;;;;N;;;;; -1D4BE;MATHEMATICAL SCRIPT SMALL I;Ll;0;L; 0069;;;;N;;;;; -1D4BF;MATHEMATICAL SCRIPT SMALL J;Ll;0;L; 006A;;;;N;;;;; -1D4C0;MATHEMATICAL SCRIPT SMALL K;Ll;0;L; 006B;;;;N;;;;; -1D4C1;MATHEMATICAL SCRIPT SMALL L;Ll;0;L; 006C;;;;N;;;;; -1D4C2;MATHEMATICAL SCRIPT SMALL M;Ll;0;L; 006D;;;;N;;;;; -1D4C3;MATHEMATICAL SCRIPT SMALL N;Ll;0;L; 006E;;;;N;;;;; -1D4C5;MATHEMATICAL SCRIPT SMALL P;Ll;0;L; 0070;;;;N;;;;; -1D4C6;MATHEMATICAL SCRIPT SMALL Q;Ll;0;L; 0071;;;;N;;;;; -1D4C7;MATHEMATICAL SCRIPT SMALL R;Ll;0;L; 0072;;;;N;;;;; -1D4C8;MATHEMATICAL SCRIPT SMALL S;Ll;0;L; 0073;;;;N;;;;; -1D4C9;MATHEMATICAL SCRIPT SMALL T;Ll;0;L; 0074;;;;N;;;;; -1D4CA;MATHEMATICAL SCRIPT SMALL U;Ll;0;L; 0075;;;;N;;;;; -1D4CB;MATHEMATICAL SCRIPT SMALL V;Ll;0;L; 0076;;;;N;;;;; -1D4CC;MATHEMATICAL SCRIPT SMALL W;Ll;0;L; 0077;;;;N;;;;; -1D4CD;MATHEMATICAL SCRIPT SMALL X;Ll;0;L; 0078;;;;N;;;;; -1D4CE;MATHEMATICAL SCRIPT SMALL Y;Ll;0;L; 0079;;;;N;;;;; -1D4CF;MATHEMATICAL SCRIPT SMALL Z;Ll;0;L; 007A;;;;N;;;;; -1D4D0;MATHEMATICAL BOLD SCRIPT CAPITAL A;Lu;0;L; 0041;;;;N;;;;; -1D4D1;MATHEMATICAL BOLD SCRIPT CAPITAL B;Lu;0;L; 0042;;;;N;;;;; -1D4D2;MATHEMATICAL BOLD SCRIPT CAPITAL C;Lu;0;L; 0043;;;;N;;;;; -1D4D3;MATHEMATICAL BOLD SCRIPT CAPITAL D;Lu;0;L; 0044;;;;N;;;;; -1D4D4;MATHEMATICAL BOLD SCRIPT CAPITAL E;Lu;0;L; 0045;;;;N;;;;; -1D4D5;MATHEMATICAL BOLD SCRIPT CAPITAL F;Lu;0;L; 0046;;;;N;;;;; -1D4D6;MATHEMATICAL BOLD SCRIPT CAPITAL G;Lu;0;L; 0047;;;;N;;;;; -1D4D7;MATHEMATICAL BOLD SCRIPT CAPITAL H;Lu;0;L; 0048;;;;N;;;;; -1D4D8;MATHEMATICAL BOLD SCRIPT CAPITAL I;Lu;0;L; 0049;;;;N;;;;; -1D4D9;MATHEMATICAL BOLD SCRIPT CAPITAL J;Lu;0;L; 004A;;;;N;;;;; -1D4DA;MATHEMATICAL BOLD SCRIPT CAPITAL K;Lu;0;L; 004B;;;;N;;;;; -1D4DB;MATHEMATICAL BOLD SCRIPT CAPITAL L;Lu;0;L; 004C;;;;N;;;;; -1D4DC;MATHEMATICAL BOLD SCRIPT CAPITAL M;Lu;0;L; 004D;;;;N;;;;; -1D4DD;MATHEMATICAL BOLD SCRIPT CAPITAL N;Lu;0;L; 004E;;;;N;;;;; -1D4DE;MATHEMATICAL BOLD SCRIPT CAPITAL O;Lu;0;L; 004F;;;;N;;;;; -1D4DF;MATHEMATICAL BOLD SCRIPT CAPITAL P;Lu;0;L; 0050;;;;N;;;;; -1D4E0;MATHEMATICAL BOLD SCRIPT CAPITAL Q;Lu;0;L; 0051;;;;N;;;;; -1D4E1;MATHEMATICAL BOLD SCRIPT CAPITAL R;Lu;0;L; 0052;;;;N;;;;; -1D4E2;MATHEMATICAL BOLD SCRIPT CAPITAL S;Lu;0;L; 0053;;;;N;;;;; -1D4E3;MATHEMATICAL BOLD SCRIPT CAPITAL T;Lu;0;L; 0054;;;;N;;;;; -1D4E4;MATHEMATICAL BOLD SCRIPT CAPITAL U;Lu;0;L; 0055;;;;N;;;;; -1D4E5;MATHEMATICAL BOLD SCRIPT CAPITAL V;Lu;0;L; 0056;;;;N;;;;; -1D4E6;MATHEMATICAL BOLD SCRIPT CAPITAL W;Lu;0;L; 0057;;;;N;;;;; -1D4E7;MATHEMATICAL BOLD SCRIPT CAPITAL X;Lu;0;L; 0058;;;;N;;;;; -1D4E8;MATHEMATICAL BOLD SCRIPT CAPITAL Y;Lu;0;L; 0059;;;;N;;;;; -1D4E9;MATHEMATICAL BOLD SCRIPT CAPITAL Z;Lu;0;L; 005A;;;;N;;;;; -1D4EA;MATHEMATICAL BOLD SCRIPT SMALL A;Ll;0;L; 0061;;;;N;;;;; -1D4EB;MATHEMATICAL BOLD SCRIPT SMALL B;Ll;0;L; 0062;;;;N;;;;; -1D4EC;MATHEMATICAL BOLD SCRIPT SMALL C;Ll;0;L; 0063;;;;N;;;;; -1D4ED;MATHEMATICAL BOLD SCRIPT SMALL D;Ll;0;L; 0064;;;;N;;;;; -1D4EE;MATHEMATICAL BOLD SCRIPT SMALL E;Ll;0;L; 0065;;;;N;;;;; -1D4EF;MATHEMATICAL BOLD SCRIPT SMALL F;Ll;0;L; 0066;;;;N;;;;; -1D4F0;MATHEMATICAL BOLD SCRIPT SMALL G;Ll;0;L; 0067;;;;N;;;;; -1D4F1;MATHEMATICAL BOLD SCRIPT SMALL H;Ll;0;L; 0068;;;;N;;;;; -1D4F2;MATHEMATICAL BOLD SCRIPT SMALL I;Ll;0;L; 0069;;;;N;;;;; -1D4F3;MATHEMATICAL BOLD SCRIPT SMALL J;Ll;0;L; 006A;;;;N;;;;; -1D4F4;MATHEMATICAL BOLD SCRIPT SMALL K;Ll;0;L; 006B;;;;N;;;;; -1D4F5;MATHEMATICAL BOLD SCRIPT SMALL L;Ll;0;L; 006C;;;;N;;;;; -1D4F6;MATHEMATICAL BOLD SCRIPT SMALL M;Ll;0;L; 006D;;;;N;;;;; -1D4F7;MATHEMATICAL BOLD SCRIPT SMALL N;Ll;0;L; 006E;;;;N;;;;; -1D4F8;MATHEMATICAL BOLD SCRIPT SMALL O;Ll;0;L; 006F;;;;N;;;;; -1D4F9;MATHEMATICAL BOLD SCRIPT SMALL P;Ll;0;L; 0070;;;;N;;;;; -1D4FA;MATHEMATICAL BOLD SCRIPT SMALL Q;Ll;0;L; 0071;;;;N;;;;; -1D4FB;MATHEMATICAL BOLD SCRIPT SMALL R;Ll;0;L; 0072;;;;N;;;;; -1D4FC;MATHEMATICAL BOLD SCRIPT SMALL S;Ll;0;L; 0073;;;;N;;;;; -1D4FD;MATHEMATICAL BOLD SCRIPT SMALL T;Ll;0;L; 0074;;;;N;;;;; -1D4FE;MATHEMATICAL BOLD SCRIPT SMALL U;Ll;0;L; 0075;;;;N;;;;; -1D4FF;MATHEMATICAL BOLD SCRIPT SMALL V;Ll;0;L; 0076;;;;N;;;;; -1D500;MATHEMATICAL BOLD SCRIPT SMALL W;Ll;0;L; 0077;;;;N;;;;; -1D501;MATHEMATICAL BOLD SCRIPT SMALL X;Ll;0;L; 0078;;;;N;;;;; -1D502;MATHEMATICAL BOLD SCRIPT SMALL Y;Ll;0;L; 0079;;;;N;;;;; -1D503;MATHEMATICAL BOLD SCRIPT SMALL Z;Ll;0;L; 007A;;;;N;;;;; -1D504;MATHEMATICAL FRAKTUR CAPITAL A;Lu;0;L; 0041;;;;N;;;;; -1D505;MATHEMATICAL FRAKTUR CAPITAL B;Lu;0;L; 0042;;;;N;;;;; -1D507;MATHEMATICAL FRAKTUR CAPITAL D;Lu;0;L; 0044;;;;N;;;;; -1D508;MATHEMATICAL FRAKTUR CAPITAL E;Lu;0;L; 0045;;;;N;;;;; -1D509;MATHEMATICAL FRAKTUR CAPITAL F;Lu;0;L; 0046;;;;N;;;;; -1D50A;MATHEMATICAL FRAKTUR CAPITAL G;Lu;0;L; 0047;;;;N;;;;; -1D50D;MATHEMATICAL FRAKTUR CAPITAL J;Lu;0;L; 004A;;;;N;;;;; -1D50E;MATHEMATICAL FRAKTUR CAPITAL K;Lu;0;L; 004B;;;;N;;;;; -1D50F;MATHEMATICAL FRAKTUR CAPITAL L;Lu;0;L; 004C;;;;N;;;;; -1D510;MATHEMATICAL FRAKTUR CAPITAL M;Lu;0;L; 004D;;;;N;;;;; -1D511;MATHEMATICAL FRAKTUR CAPITAL N;Lu;0;L; 004E;;;;N;;;;; -1D512;MATHEMATICAL FRAKTUR CAPITAL O;Lu;0;L; 004F;;;;N;;;;; -1D513;MATHEMATICAL FRAKTUR CAPITAL P;Lu;0;L; 0050;;;;N;;;;; -1D514;MATHEMATICAL FRAKTUR CAPITAL Q;Lu;0;L; 0051;;;;N;;;;; -1D516;MATHEMATICAL FRAKTUR CAPITAL S;Lu;0;L; 0053;;;;N;;;;; -1D517;MATHEMATICAL FRAKTUR CAPITAL T;Lu;0;L; 0054;;;;N;;;;; -1D518;MATHEMATICAL FRAKTUR CAPITAL U;Lu;0;L; 0055;;;;N;;;;; -1D519;MATHEMATICAL FRAKTUR CAPITAL V;Lu;0;L; 0056;;;;N;;;;; -1D51A;MATHEMATICAL FRAKTUR CAPITAL W;Lu;0;L; 0057;;;;N;;;;; -1D51B;MATHEMATICAL FRAKTUR CAPITAL X;Lu;0;L; 0058;;;;N;;;;; -1D51C;MATHEMATICAL FRAKTUR CAPITAL Y;Lu;0;L; 0059;;;;N;;;;; -1D51E;MATHEMATICAL FRAKTUR SMALL A;Ll;0;L; 0061;;;;N;;;;; -1D51F;MATHEMATICAL FRAKTUR SMALL B;Ll;0;L; 0062;;;;N;;;;; -1D520;MATHEMATICAL FRAKTUR SMALL C;Ll;0;L; 0063;;;;N;;;;; -1D521;MATHEMATICAL FRAKTUR SMALL D;Ll;0;L; 0064;;;;N;;;;; -1D522;MATHEMATICAL FRAKTUR SMALL E;Ll;0;L; 0065;;;;N;;;;; -1D523;MATHEMATICAL FRAKTUR SMALL F;Ll;0;L; 0066;;;;N;;;;; -1D524;MATHEMATICAL FRAKTUR SMALL G;Ll;0;L; 0067;;;;N;;;;; -1D525;MATHEMATICAL FRAKTUR SMALL H;Ll;0;L; 0068;;;;N;;;;; -1D526;MATHEMATICAL FRAKTUR SMALL I;Ll;0;L; 0069;;;;N;;;;; -1D527;MATHEMATICAL FRAKTUR SMALL J;Ll;0;L; 006A;;;;N;;;;; -1D528;MATHEMATICAL FRAKTUR SMALL K;Ll;0;L; 006B;;;;N;;;;; -1D529;MATHEMATICAL FRAKTUR SMALL L;Ll;0;L; 006C;;;;N;;;;; -1D52A;MATHEMATICAL FRAKTUR SMALL M;Ll;0;L; 006D;;;;N;;;;; -1D52B;MATHEMATICAL FRAKTUR SMALL N;Ll;0;L; 006E;;;;N;;;;; -1D52C;MATHEMATICAL FRAKTUR SMALL O;Ll;0;L; 006F;;;;N;;;;; -1D52D;MATHEMATICAL FRAKTUR SMALL P;Ll;0;L; 0070;;;;N;;;;; -1D52E;MATHEMATICAL FRAKTUR SMALL Q;Ll;0;L; 0071;;;;N;;;;; -1D52F;MATHEMATICAL FRAKTUR SMALL R;Ll;0;L; 0072;;;;N;;;;; -1D530;MATHEMATICAL FRAKTUR SMALL S;Ll;0;L; 0073;;;;N;;;;; -1D531;MATHEMATICAL FRAKTUR SMALL T;Ll;0;L; 0074;;;;N;;;;; -1D532;MATHEMATICAL FRAKTUR SMALL U;Ll;0;L; 0075;;;;N;;;;; -1D533;MATHEMATICAL FRAKTUR SMALL V;Ll;0;L; 0076;;;;N;;;;; -1D534;MATHEMATICAL FRAKTUR SMALL W;Ll;0;L; 0077;;;;N;;;;; -1D535;MATHEMATICAL FRAKTUR SMALL X;Ll;0;L; 0078;;;;N;;;;; -1D536;MATHEMATICAL FRAKTUR SMALL Y;Ll;0;L; 0079;;;;N;;;;; -1D537;MATHEMATICAL FRAKTUR SMALL Z;Ll;0;L; 007A;;;;N;;;;; -1D538;MATHEMATICAL DOUBLE-STRUCK CAPITAL A;Lu;0;L; 0041;;;;N;;;;; -1D539;MATHEMATICAL DOUBLE-STRUCK CAPITAL B;Lu;0;L; 0042;;;;N;;;;; -1D53B;MATHEMATICAL DOUBLE-STRUCK CAPITAL D;Lu;0;L; 0044;;;;N;;;;; -1D53C;MATHEMATICAL DOUBLE-STRUCK CAPITAL E;Lu;0;L; 0045;;;;N;;;;; -1D53D;MATHEMATICAL DOUBLE-STRUCK CAPITAL F;Lu;0;L; 0046;;;;N;;;;; -1D53E;MATHEMATICAL DOUBLE-STRUCK CAPITAL G;Lu;0;L; 0047;;;;N;;;;; -1D540;MATHEMATICAL DOUBLE-STRUCK CAPITAL I;Lu;0;L; 0049;;;;N;;;;; -1D541;MATHEMATICAL DOUBLE-STRUCK CAPITAL J;Lu;0;L; 004A;;;;N;;;;; -1D542;MATHEMATICAL DOUBLE-STRUCK CAPITAL K;Lu;0;L; 004B;;;;N;;;;; -1D543;MATHEMATICAL DOUBLE-STRUCK CAPITAL L;Lu;0;L; 004C;;;;N;;;;; -1D544;MATHEMATICAL DOUBLE-STRUCK CAPITAL M;Lu;0;L; 004D;;;;N;;;;; -1D546;MATHEMATICAL DOUBLE-STRUCK CAPITAL O;Lu;0;L; 004F;;;;N;;;;; -1D54A;MATHEMATICAL DOUBLE-STRUCK CAPITAL S;Lu;0;L; 0053;;;;N;;;;; -1D54B;MATHEMATICAL DOUBLE-STRUCK CAPITAL T;Lu;0;L; 0054;;;;N;;;;; -1D54C;MATHEMATICAL DOUBLE-STRUCK CAPITAL U;Lu;0;L; 0055;;;;N;;;;; -1D54D;MATHEMATICAL DOUBLE-STRUCK CAPITAL V;Lu;0;L; 0056;;;;N;;;;; -1D54E;MATHEMATICAL DOUBLE-STRUCK CAPITAL W;Lu;0;L; 0057;;;;N;;;;; -1D54F;MATHEMATICAL DOUBLE-STRUCK CAPITAL X;Lu;0;L; 0058;;;;N;;;;; -1D550;MATHEMATICAL DOUBLE-STRUCK CAPITAL Y;Lu;0;L; 0059;;;;N;;;;; -1D552;MATHEMATICAL DOUBLE-STRUCK SMALL A;Ll;0;L; 0061;;;;N;;;;; -1D553;MATHEMATICAL DOUBLE-STRUCK SMALL B;Ll;0;L; 0062;;;;N;;;;; -1D554;MATHEMATICAL DOUBLE-STRUCK SMALL C;Ll;0;L; 0063;;;;N;;;;; -1D555;MATHEMATICAL DOUBLE-STRUCK SMALL D;Ll;0;L; 0064;;;;N;;;;; -1D556;MATHEMATICAL DOUBLE-STRUCK SMALL E;Ll;0;L; 0065;;;;N;;;;; -1D557;MATHEMATICAL DOUBLE-STRUCK SMALL F;Ll;0;L; 0066;;;;N;;;;; -1D558;MATHEMATICAL DOUBLE-STRUCK SMALL G;Ll;0;L; 0067;;;;N;;;;; -1D559;MATHEMATICAL DOUBLE-STRUCK SMALL H;Ll;0;L; 0068;;;;N;;;;; -1D55A;MATHEMATICAL DOUBLE-STRUCK SMALL I;Ll;0;L; 0069;;;;N;;;;; -1D55B;MATHEMATICAL DOUBLE-STRUCK SMALL J;Ll;0;L; 006A;;;;N;;;;; -1D55C;MATHEMATICAL DOUBLE-STRUCK SMALL K;Ll;0;L; 006B;;;;N;;;;; -1D55D;MATHEMATICAL DOUBLE-STRUCK SMALL L;Ll;0;L; 006C;;;;N;;;;; -1D55E;MATHEMATICAL DOUBLE-STRUCK SMALL M;Ll;0;L; 006D;;;;N;;;;; -1D55F;MATHEMATICAL DOUBLE-STRUCK SMALL N;Ll;0;L; 006E;;;;N;;;;; -1D560;MATHEMATICAL DOUBLE-STRUCK SMALL O;Ll;0;L; 006F;;;;N;;;;; -1D561;MATHEMATICAL DOUBLE-STRUCK SMALL P;Ll;0;L; 0070;;;;N;;;;; -1D562;MATHEMATICAL DOUBLE-STRUCK SMALL Q;Ll;0;L; 0071;;;;N;;;;; -1D563;MATHEMATICAL DOUBLE-STRUCK SMALL R;Ll;0;L; 0072;;;;N;;;;; -1D564;MATHEMATICAL DOUBLE-STRUCK SMALL S;Ll;0;L; 0073;;;;N;;;;; -1D565;MATHEMATICAL DOUBLE-STRUCK SMALL T;Ll;0;L; 0074;;;;N;;;;; -1D566;MATHEMATICAL DOUBLE-STRUCK SMALL U;Ll;0;L; 0075;;;;N;;;;; -1D567;MATHEMATICAL DOUBLE-STRUCK SMALL V;Ll;0;L; 0076;;;;N;;;;; -1D568;MATHEMATICAL DOUBLE-STRUCK SMALL W;Ll;0;L; 0077;;;;N;;;;; -1D569;MATHEMATICAL DOUBLE-STRUCK SMALL X;Ll;0;L; 0078;;;;N;;;;; -1D56A;MATHEMATICAL DOUBLE-STRUCK SMALL Y;Ll;0;L; 0079;;;;N;;;;; -1D56B;MATHEMATICAL DOUBLE-STRUCK SMALL Z;Ll;0;L; 007A;;;;N;;;;; -1D56C;MATHEMATICAL BOLD FRAKTUR CAPITAL A;Lu;0;L; 0041;;;;N;;;;; -1D56D;MATHEMATICAL BOLD FRAKTUR CAPITAL B;Lu;0;L; 0042;;;;N;;;;; -1D56E;MATHEMATICAL BOLD FRAKTUR CAPITAL C;Lu;0;L; 0043;;;;N;;;;; -1D56F;MATHEMATICAL BOLD FRAKTUR CAPITAL D;Lu;0;L; 0044;;;;N;;;;; -1D570;MATHEMATICAL BOLD FRAKTUR CAPITAL E;Lu;0;L; 0045;;;;N;;;;; -1D571;MATHEMATICAL BOLD FRAKTUR CAPITAL F;Lu;0;L; 0046;;;;N;;;;; -1D572;MATHEMATICAL BOLD FRAKTUR CAPITAL G;Lu;0;L; 0047;;;;N;;;;; -1D573;MATHEMATICAL BOLD FRAKTUR CAPITAL H;Lu;0;L; 0048;;;;N;;;;; -1D574;MATHEMATICAL BOLD FRAKTUR CAPITAL I;Lu;0;L; 0049;;;;N;;;;; -1D575;MATHEMATICAL BOLD FRAKTUR CAPITAL J;Lu;0;L; 004A;;;;N;;;;; -1D576;MATHEMATICAL BOLD FRAKTUR CAPITAL K;Lu;0;L; 004B;;;;N;;;;; -1D577;MATHEMATICAL BOLD FRAKTUR CAPITAL L;Lu;0;L; 004C;;;;N;;;;; -1D578;MATHEMATICAL BOLD FRAKTUR CAPITAL M;Lu;0;L; 004D;;;;N;;;;; -1D579;MATHEMATICAL BOLD FRAKTUR CAPITAL N;Lu;0;L; 004E;;;;N;;;;; -1D57A;MATHEMATICAL BOLD FRAKTUR CAPITAL O;Lu;0;L; 004F;;;;N;;;;; -1D57B;MATHEMATICAL BOLD FRAKTUR CAPITAL P;Lu;0;L; 0050;;;;N;;;;; -1D57C;MATHEMATICAL BOLD FRAKTUR CAPITAL Q;Lu;0;L; 0051;;;;N;;;;; -1D57D;MATHEMATICAL BOLD FRAKTUR CAPITAL R;Lu;0;L; 0052;;;;N;;;;; -1D57E;MATHEMATICAL BOLD FRAKTUR CAPITAL S;Lu;0;L; 0053;;;;N;;;;; -1D57F;MATHEMATICAL BOLD FRAKTUR CAPITAL T;Lu;0;L; 0054;;;;N;;;;; -1D580;MATHEMATICAL BOLD FRAKTUR CAPITAL U;Lu;0;L; 0055;;;;N;;;;; -1D581;MATHEMATICAL BOLD FRAKTUR CAPITAL V;Lu;0;L; 0056;;;;N;;;;; -1D582;MATHEMATICAL BOLD FRAKTUR CAPITAL W;Lu;0;L; 0057;;;;N;;;;; -1D583;MATHEMATICAL BOLD FRAKTUR CAPITAL X;Lu;0;L; 0058;;;;N;;;;; -1D584;MATHEMATICAL BOLD FRAKTUR CAPITAL Y;Lu;0;L; 0059;;;;N;;;;; -1D585;MATHEMATICAL BOLD FRAKTUR CAPITAL Z;Lu;0;L; 005A;;;;N;;;;; -1D586;MATHEMATICAL BOLD FRAKTUR SMALL A;Ll;0;L; 0061;;;;N;;;;; -1D587;MATHEMATICAL BOLD FRAKTUR SMALL B;Ll;0;L; 0062;;;;N;;;;; -1D588;MATHEMATICAL BOLD FRAKTUR SMALL C;Ll;0;L; 0063;;;;N;;;;; -1D589;MATHEMATICAL BOLD FRAKTUR SMALL D;Ll;0;L; 0064;;;;N;;;;; -1D58A;MATHEMATICAL BOLD FRAKTUR SMALL E;Ll;0;L; 0065;;;;N;;;;; -1D58B;MATHEMATICAL BOLD FRAKTUR SMALL F;Ll;0;L; 0066;;;;N;;;;; -1D58C;MATHEMATICAL BOLD FRAKTUR SMALL G;Ll;0;L; 0067;;;;N;;;;; -1D58D;MATHEMATICAL BOLD FRAKTUR SMALL H;Ll;0;L; 0068;;;;N;;;;; -1D58E;MATHEMATICAL BOLD FRAKTUR SMALL I;Ll;0;L; 0069;;;;N;;;;; -1D58F;MATHEMATICAL BOLD FRAKTUR SMALL J;Ll;0;L; 006A;;;;N;;;;; -1D590;MATHEMATICAL BOLD FRAKTUR SMALL K;Ll;0;L; 006B;;;;N;;;;; -1D591;MATHEMATICAL BOLD FRAKTUR SMALL L;Ll;0;L; 006C;;;;N;;;;; -1D592;MATHEMATICAL BOLD FRAKTUR SMALL M;Ll;0;L; 006D;;;;N;;;;; -1D593;MATHEMATICAL BOLD FRAKTUR SMALL N;Ll;0;L; 006E;;;;N;;;;; -1D594;MATHEMATICAL BOLD FRAKTUR SMALL O;Ll;0;L; 006F;;;;N;;;;; -1D595;MATHEMATICAL BOLD FRAKTUR SMALL P;Ll;0;L; 0070;;;;N;;;;; -1D596;MATHEMATICAL BOLD FRAKTUR SMALL Q;Ll;0;L; 0071;;;;N;;;;; -1D597;MATHEMATICAL BOLD FRAKTUR SMALL R;Ll;0;L; 0072;;;;N;;;;; -1D598;MATHEMATICAL BOLD FRAKTUR SMALL S;Ll;0;L; 0073;;;;N;;;;; -1D599;MATHEMATICAL BOLD FRAKTUR SMALL T;Ll;0;L; 0074;;;;N;;;;; -1D59A;MATHEMATICAL BOLD FRAKTUR SMALL U;Ll;0;L; 0075;;;;N;;;;; -1D59B;MATHEMATICAL BOLD FRAKTUR SMALL V;Ll;0;L; 0076;;;;N;;;;; -1D59C;MATHEMATICAL BOLD FRAKTUR SMALL W;Ll;0;L; 0077;;;;N;;;;; -1D59D;MATHEMATICAL BOLD FRAKTUR SMALL X;Ll;0;L; 0078;;;;N;;;;; -1D59E;MATHEMATICAL BOLD FRAKTUR SMALL Y;Ll;0;L; 0079;;;;N;;;;; -1D59F;MATHEMATICAL BOLD FRAKTUR SMALL Z;Ll;0;L; 007A;;;;N;;;;; -1D5A0;MATHEMATICAL SANS-SERIF CAPITAL A;Lu;0;L; 0041;;;;N;;;;; -1D5A1;MATHEMATICAL SANS-SERIF CAPITAL B;Lu;0;L; 0042;;;;N;;;;; -1D5A2;MATHEMATICAL SANS-SERIF CAPITAL C;Lu;0;L; 0043;;;;N;;;;; -1D5A3;MATHEMATICAL SANS-SERIF CAPITAL D;Lu;0;L; 0044;;;;N;;;;; -1D5A4;MATHEMATICAL SANS-SERIF CAPITAL E;Lu;0;L; 0045;;;;N;;;;; -1D5A5;MATHEMATICAL SANS-SERIF CAPITAL F;Lu;0;L; 0046;;;;N;;;;; -1D5A6;MATHEMATICAL SANS-SERIF CAPITAL G;Lu;0;L; 0047;;;;N;;;;; -1D5A7;MATHEMATICAL SANS-SERIF CAPITAL H;Lu;0;L; 0048;;;;N;;;;; -1D5A8;MATHEMATICAL SANS-SERIF CAPITAL I;Lu;0;L; 0049;;;;N;;;;; -1D5A9;MATHEMATICAL SANS-SERIF CAPITAL J;Lu;0;L; 004A;;;;N;;;;; -1D5AA;MATHEMATICAL SANS-SERIF CAPITAL K;Lu;0;L; 004B;;;;N;;;;; -1D5AB;MATHEMATICAL SANS-SERIF CAPITAL L;Lu;0;L; 004C;;;;N;;;;; -1D5AC;MATHEMATICAL SANS-SERIF CAPITAL M;Lu;0;L; 004D;;;;N;;;;; -1D5AD;MATHEMATICAL SANS-SERIF CAPITAL N;Lu;0;L; 004E;;;;N;;;;; -1D5AE;MATHEMATICAL SANS-SERIF CAPITAL O;Lu;0;L; 004F;;;;N;;;;; -1D5AF;MATHEMATICAL SANS-SERIF CAPITAL P;Lu;0;L; 0050;;;;N;;;;; -1D5B0;MATHEMATICAL SANS-SERIF CAPITAL Q;Lu;0;L; 0051;;;;N;;;;; -1D5B1;MATHEMATICAL SANS-SERIF CAPITAL R;Lu;0;L; 0052;;;;N;;;;; -1D5B2;MATHEMATICAL SANS-SERIF CAPITAL S;Lu;0;L; 0053;;;;N;;;;; -1D5B3;MATHEMATICAL SANS-SERIF CAPITAL T;Lu;0;L; 0054;;;;N;;;;; -1D5B4;MATHEMATICAL SANS-SERIF CAPITAL U;Lu;0;L; 0055;;;;N;;;;; -1D5B5;MATHEMATICAL SANS-SERIF CAPITAL V;Lu;0;L; 0056;;;;N;;;;; -1D5B6;MATHEMATICAL SANS-SERIF CAPITAL W;Lu;0;L; 0057;;;;N;;;;; -1D5B7;MATHEMATICAL SANS-SERIF CAPITAL X;Lu;0;L; 0058;;;;N;;;;; -1D5B8;MATHEMATICAL SANS-SERIF CAPITAL Y;Lu;0;L; 0059;;;;N;;;;; -1D5B9;MATHEMATICAL SANS-SERIF CAPITAL Z;Lu;0;L; 005A;;;;N;;;;; -1D5BA;MATHEMATICAL SANS-SERIF SMALL A;Ll;0;L; 0061;;;;N;;;;; -1D5BB;MATHEMATICAL SANS-SERIF SMALL B;Ll;0;L; 0062;;;;N;;;;; -1D5BC;MATHEMATICAL SANS-SERIF SMALL C;Ll;0;L; 0063;;;;N;;;;; -1D5BD;MATHEMATICAL SANS-SERIF SMALL D;Ll;0;L; 0064;;;;N;;;;; -1D5BE;MATHEMATICAL SANS-SERIF SMALL E;Ll;0;L; 0065;;;;N;;;;; -1D5BF;MATHEMATICAL SANS-SERIF SMALL F;Ll;0;L; 0066;;;;N;;;;; -1D5C0;MATHEMATICAL SANS-SERIF SMALL G;Ll;0;L; 0067;;;;N;;;;; -1D5C1;MATHEMATICAL SANS-SERIF SMALL H;Ll;0;L; 0068;;;;N;;;;; -1D5C2;MATHEMATICAL SANS-SERIF SMALL I;Ll;0;L; 0069;;;;N;;;;; -1D5C3;MATHEMATICAL SANS-SERIF SMALL J;Ll;0;L; 006A;;;;N;;;;; -1D5C4;MATHEMATICAL SANS-SERIF SMALL K;Ll;0;L; 006B;;;;N;;;;; -1D5C5;MATHEMATICAL SANS-SERIF SMALL L;Ll;0;L; 006C;;;;N;;;;; -1D5C6;MATHEMATICAL SANS-SERIF SMALL M;Ll;0;L; 006D;;;;N;;;;; -1D5C7;MATHEMATICAL SANS-SERIF SMALL N;Ll;0;L; 006E;;;;N;;;;; -1D5C8;MATHEMATICAL SANS-SERIF SMALL O;Ll;0;L; 006F;;;;N;;;;; -1D5C9;MATHEMATICAL SANS-SERIF SMALL P;Ll;0;L; 0070;;;;N;;;;; -1D5CA;MATHEMATICAL SANS-SERIF SMALL Q;Ll;0;L; 0071;;;;N;;;;; -1D5CB;MATHEMATICAL SANS-SERIF SMALL R;Ll;0;L; 0072;;;;N;;;;; -1D5CC;MATHEMATICAL SANS-SERIF SMALL S;Ll;0;L; 0073;;;;N;;;;; -1D5CD;MATHEMATICAL SANS-SERIF SMALL T;Ll;0;L; 0074;;;;N;;;;; -1D5CE;MATHEMATICAL SANS-SERIF SMALL U;Ll;0;L; 0075;;;;N;;;;; -1D5CF;MATHEMATICAL SANS-SERIF SMALL V;Ll;0;L; 0076;;;;N;;;;; -1D5D0;MATHEMATICAL SANS-SERIF SMALL W;Ll;0;L; 0077;;;;N;;;;; -1D5D1;MATHEMATICAL SANS-SERIF SMALL X;Ll;0;L; 0078;;;;N;;;;; -1D5D2;MATHEMATICAL SANS-SERIF SMALL Y;Ll;0;L; 0079;;;;N;;;;; -1D5D3;MATHEMATICAL SANS-SERIF SMALL Z;Ll;0;L; 007A;;;;N;;;;; -1D5D4;MATHEMATICAL SANS-SERIF BOLD CAPITAL A;Lu;0;L; 0041;;;;N;;;;; -1D5D5;MATHEMATICAL SANS-SERIF BOLD CAPITAL B;Lu;0;L; 0042;;;;N;;;;; -1D5D6;MATHEMATICAL SANS-SERIF BOLD CAPITAL C;Lu;0;L; 0043;;;;N;;;;; -1D5D7;MATHEMATICAL SANS-SERIF BOLD CAPITAL D;Lu;0;L; 0044;;;;N;;;;; -1D5D8;MATHEMATICAL SANS-SERIF BOLD CAPITAL E;Lu;0;L; 0045;;;;N;;;;; -1D5D9;MATHEMATICAL SANS-SERIF BOLD CAPITAL F;Lu;0;L; 0046;;;;N;;;;; -1D5DA;MATHEMATICAL SANS-SERIF BOLD CAPITAL G;Lu;0;L; 0047;;;;N;;;;; -1D5DB;MATHEMATICAL SANS-SERIF BOLD CAPITAL H;Lu;0;L; 0048;;;;N;;;;; -1D5DC;MATHEMATICAL SANS-SERIF BOLD CAPITAL I;Lu;0;L; 0049;;;;N;;;;; -1D5DD;MATHEMATICAL SANS-SERIF BOLD CAPITAL J;Lu;0;L; 004A;;;;N;;;;; -1D5DE;MATHEMATICAL SANS-SERIF BOLD CAPITAL K;Lu;0;L; 004B;;;;N;;;;; -1D5DF;MATHEMATICAL SANS-SERIF BOLD CAPITAL L;Lu;0;L; 004C;;;;N;;;;; -1D5E0;MATHEMATICAL SANS-SERIF BOLD CAPITAL M;Lu;0;L; 004D;;;;N;;;;; -1D5E1;MATHEMATICAL SANS-SERIF BOLD CAPITAL N;Lu;0;L; 004E;;;;N;;;;; -1D5E2;MATHEMATICAL SANS-SERIF BOLD CAPITAL O;Lu;0;L; 004F;;;;N;;;;; -1D5E3;MATHEMATICAL SANS-SERIF BOLD CAPITAL P;Lu;0;L; 0050;;;;N;;;;; -1D5E4;MATHEMATICAL SANS-SERIF BOLD CAPITAL Q;Lu;0;L; 0051;;;;N;;;;; -1D5E5;MATHEMATICAL SANS-SERIF BOLD CAPITAL R;Lu;0;L; 0052;;;;N;;;;; -1D5E6;MATHEMATICAL SANS-SERIF BOLD CAPITAL S;Lu;0;L; 0053;;;;N;;;;; -1D5E7;MATHEMATICAL SANS-SERIF BOLD CAPITAL T;Lu;0;L; 0054;;;;N;;;;; -1D5E8;MATHEMATICAL SANS-SERIF BOLD CAPITAL U;Lu;0;L; 0055;;;;N;;;;; -1D5E9;MATHEMATICAL SANS-SERIF BOLD CAPITAL V;Lu;0;L; 0056;;;;N;;;;; -1D5EA;MATHEMATICAL SANS-SERIF BOLD CAPITAL W;Lu;0;L; 0057;;;;N;;;;; -1D5EB;MATHEMATICAL SANS-SERIF BOLD CAPITAL X;Lu;0;L; 0058;;;;N;;;;; -1D5EC;MATHEMATICAL SANS-SERIF BOLD CAPITAL Y;Lu;0;L; 0059;;;;N;;;;; -1D5ED;MATHEMATICAL SANS-SERIF BOLD CAPITAL Z;Lu;0;L; 005A;;;;N;;;;; -1D5EE;MATHEMATICAL SANS-SERIF BOLD SMALL A;Ll;0;L; 0061;;;;N;;;;; -1D5EF;MATHEMATICAL SANS-SERIF BOLD SMALL B;Ll;0;L; 0062;;;;N;;;;; -1D5F0;MATHEMATICAL SANS-SERIF BOLD SMALL C;Ll;0;L; 0063;;;;N;;;;; -1D5F1;MATHEMATICAL SANS-SERIF BOLD SMALL D;Ll;0;L; 0064;;;;N;;;;; -1D5F2;MATHEMATICAL SANS-SERIF BOLD SMALL E;Ll;0;L; 0065;;;;N;;;;; -1D5F3;MATHEMATICAL SANS-SERIF BOLD SMALL F;Ll;0;L; 0066;;;;N;;;;; -1D5F4;MATHEMATICAL SANS-SERIF BOLD SMALL G;Ll;0;L; 0067;;;;N;;;;; -1D5F5;MATHEMATICAL SANS-SERIF BOLD SMALL H;Ll;0;L; 0068;;;;N;;;;; -1D5F6;MATHEMATICAL SANS-SERIF BOLD SMALL I;Ll;0;L; 0069;;;;N;;;;; -1D5F7;MATHEMATICAL SANS-SERIF BOLD SMALL J;Ll;0;L; 006A;;;;N;;;;; -1D5F8;MATHEMATICAL SANS-SERIF BOLD SMALL K;Ll;0;L; 006B;;;;N;;;;; -1D5F9;MATHEMATICAL SANS-SERIF BOLD SMALL L;Ll;0;L; 006C;;;;N;;;;; -1D5FA;MATHEMATICAL SANS-SERIF BOLD SMALL M;Ll;0;L; 006D;;;;N;;;;; -1D5FB;MATHEMATICAL SANS-SERIF BOLD SMALL N;Ll;0;L; 006E;;;;N;;;;; -1D5FC;MATHEMATICAL SANS-SERIF BOLD SMALL O;Ll;0;L; 006F;;;;N;;;;; -1D5FD;MATHEMATICAL SANS-SERIF BOLD SMALL P;Ll;0;L; 0070;;;;N;;;;; -1D5FE;MATHEMATICAL SANS-SERIF BOLD SMALL Q;Ll;0;L; 0071;;;;N;;;;; -1D5FF;MATHEMATICAL SANS-SERIF BOLD SMALL R;Ll;0;L; 0072;;;;N;;;;; -1D600;MATHEMATICAL SANS-SERIF BOLD SMALL S;Ll;0;L; 0073;;;;N;;;;; -1D601;MATHEMATICAL SANS-SERIF BOLD SMALL T;Ll;0;L; 0074;;;;N;;;;; -1D602;MATHEMATICAL SANS-SERIF BOLD SMALL U;Ll;0;L; 0075;;;;N;;;;; -1D603;MATHEMATICAL SANS-SERIF BOLD SMALL V;Ll;0;L; 0076;;;;N;;;;; -1D604;MATHEMATICAL SANS-SERIF BOLD SMALL W;Ll;0;L; 0077;;;;N;;;;; -1D605;MATHEMATICAL SANS-SERIF BOLD SMALL X;Ll;0;L; 0078;;;;N;;;;; -1D606;MATHEMATICAL SANS-SERIF BOLD SMALL Y;Ll;0;L; 0079;;;;N;;;;; -1D607;MATHEMATICAL SANS-SERIF BOLD SMALL Z;Ll;0;L; 007A;;;;N;;;;; -1D608;MATHEMATICAL SANS-SERIF ITALIC CAPITAL A;Lu;0;L; 0041;;;;N;;;;; -1D609;MATHEMATICAL SANS-SERIF ITALIC CAPITAL B;Lu;0;L; 0042;;;;N;;;;; -1D60A;MATHEMATICAL SANS-SERIF ITALIC CAPITAL C;Lu;0;L; 0043;;;;N;;;;; -1D60B;MATHEMATICAL SANS-SERIF ITALIC CAPITAL D;Lu;0;L; 0044;;;;N;;;;; -1D60C;MATHEMATICAL SANS-SERIF ITALIC CAPITAL E;Lu;0;L; 0045;;;;N;;;;; -1D60D;MATHEMATICAL SANS-SERIF ITALIC CAPITAL F;Lu;0;L; 0046;;;;N;;;;; -1D60E;MATHEMATICAL SANS-SERIF ITALIC CAPITAL G;Lu;0;L; 0047;;;;N;;;;; -1D60F;MATHEMATICAL SANS-SERIF ITALIC CAPITAL H;Lu;0;L; 0048;;;;N;;;;; -1D610;MATHEMATICAL SANS-SERIF ITALIC CAPITAL I;Lu;0;L; 0049;;;;N;;;;; -1D611;MATHEMATICAL SANS-SERIF ITALIC CAPITAL J;Lu;0;L; 004A;;;;N;;;;; -1D612;MATHEMATICAL SANS-SERIF ITALIC CAPITAL K;Lu;0;L; 004B;;;;N;;;;; -1D613;MATHEMATICAL SANS-SERIF ITALIC CAPITAL L;Lu;0;L; 004C;;;;N;;;;; -1D614;MATHEMATICAL SANS-SERIF ITALIC CAPITAL M;Lu;0;L; 004D;;;;N;;;;; -1D615;MATHEMATICAL SANS-SERIF ITALIC CAPITAL N;Lu;0;L; 004E;;;;N;;;;; -1D616;MATHEMATICAL SANS-SERIF ITALIC CAPITAL O;Lu;0;L; 004F;;;;N;;;;; -1D617;MATHEMATICAL SANS-SERIF ITALIC CAPITAL P;Lu;0;L; 0050;;;;N;;;;; -1D618;MATHEMATICAL SANS-SERIF ITALIC CAPITAL Q;Lu;0;L; 0051;;;;N;;;;; -1D619;MATHEMATICAL SANS-SERIF ITALIC CAPITAL R;Lu;0;L; 0052;;;;N;;;;; -1D61A;MATHEMATICAL SANS-SERIF ITALIC CAPITAL S;Lu;0;L; 0053;;;;N;;;;; -1D61B;MATHEMATICAL SANS-SERIF ITALIC CAPITAL T;Lu;0;L; 0054;;;;N;;;;; -1D61C;MATHEMATICAL SANS-SERIF ITALIC CAPITAL U;Lu;0;L; 0055;;;;N;;;;; -1D61D;MATHEMATICAL SANS-SERIF ITALIC CAPITAL V;Lu;0;L; 0056;;;;N;;;;; -1D61E;MATHEMATICAL SANS-SERIF ITALIC CAPITAL W;Lu;0;L; 0057;;;;N;;;;; -1D61F;MATHEMATICAL SANS-SERIF ITALIC CAPITAL X;Lu;0;L; 0058;;;;N;;;;; -1D620;MATHEMATICAL SANS-SERIF ITALIC CAPITAL Y;Lu;0;L; 0059;;;;N;;;;; -1D621;MATHEMATICAL SANS-SERIF ITALIC CAPITAL Z;Lu;0;L; 005A;;;;N;;;;; -1D622;MATHEMATICAL SANS-SERIF ITALIC SMALL A;Ll;0;L; 0061;;;;N;;;;; -1D623;MATHEMATICAL SANS-SERIF ITALIC SMALL B;Ll;0;L; 0062;;;;N;;;;; -1D624;MATHEMATICAL SANS-SERIF ITALIC SMALL C;Ll;0;L; 0063;;;;N;;;;; -1D625;MATHEMATICAL SANS-SERIF ITALIC SMALL D;Ll;0;L; 0064;;;;N;;;;; -1D626;MATHEMATICAL SANS-SERIF ITALIC SMALL E;Ll;0;L; 0065;;;;N;;;;; -1D627;MATHEMATICAL SANS-SERIF ITALIC SMALL F;Ll;0;L; 0066;;;;N;;;;; -1D628;MATHEMATICAL SANS-SERIF ITALIC SMALL G;Ll;0;L; 0067;;;;N;;;;; -1D629;MATHEMATICAL SANS-SERIF ITALIC SMALL H;Ll;0;L; 0068;;;;N;;;;; -1D62A;MATHEMATICAL SANS-SERIF ITALIC SMALL I;Ll;0;L; 0069;;;;N;;;;; -1D62B;MATHEMATICAL SANS-SERIF ITALIC SMALL J;Ll;0;L; 006A;;;;N;;;;; -1D62C;MATHEMATICAL SANS-SERIF ITALIC SMALL K;Ll;0;L; 006B;;;;N;;;;; -1D62D;MATHEMATICAL SANS-SERIF ITALIC SMALL L;Ll;0;L; 006C;;;;N;;;;; -1D62E;MATHEMATICAL SANS-SERIF ITALIC SMALL M;Ll;0;L; 006D;;;;N;;;;; -1D62F;MATHEMATICAL SANS-SERIF ITALIC SMALL N;Ll;0;L; 006E;;;;N;;;;; -1D630;MATHEMATICAL SANS-SERIF ITALIC SMALL O;Ll;0;L; 006F;;;;N;;;;; -1D631;MATHEMATICAL SANS-SERIF ITALIC SMALL P;Ll;0;L; 0070;;;;N;;;;; -1D632;MATHEMATICAL SANS-SERIF ITALIC SMALL Q;Ll;0;L; 0071;;;;N;;;;; -1D633;MATHEMATICAL SANS-SERIF ITALIC SMALL R;Ll;0;L; 0072;;;;N;;;;; -1D634;MATHEMATICAL SANS-SERIF ITALIC SMALL S;Ll;0;L; 0073;;;;N;;;;; -1D635;MATHEMATICAL SANS-SERIF ITALIC SMALL T;Ll;0;L; 0074;;;;N;;;;; -1D636;MATHEMATICAL SANS-SERIF ITALIC SMALL U;Ll;0;L; 0075;;;;N;;;;; -1D637;MATHEMATICAL SANS-SERIF ITALIC SMALL V;Ll;0;L; 0076;;;;N;;;;; -1D638;MATHEMATICAL SANS-SERIF ITALIC SMALL W;Ll;0;L; 0077;;;;N;;;;; -1D639;MATHEMATICAL SANS-SERIF ITALIC SMALL X;Ll;0;L; 0078;;;;N;;;;; -1D63A;MATHEMATICAL SANS-SERIF ITALIC SMALL Y;Ll;0;L; 0079;;;;N;;;;; -1D63B;MATHEMATICAL SANS-SERIF ITALIC SMALL Z;Ll;0;L; 007A;;;;N;;;;; -1D63C;MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL A;Lu;0;L; 0041;;;;N;;;;; -1D63D;MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL B;Lu;0;L; 0042;;;;N;;;;; -1D63E;MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL C;Lu;0;L; 0043;;;;N;;;;; -1D63F;MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL D;Lu;0;L; 0044;;;;N;;;;; -1D640;MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL E;Lu;0;L; 0045;;;;N;;;;; -1D641;MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL F;Lu;0;L; 0046;;;;N;;;;; -1D642;MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL G;Lu;0;L; 0047;;;;N;;;;; -1D643;MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL H;Lu;0;L; 0048;;;;N;;;;; -1D644;MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL I;Lu;0;L; 0049;;;;N;;;;; -1D645;MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL J;Lu;0;L; 004A;;;;N;;;;; -1D646;MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL K;Lu;0;L; 004B;;;;N;;;;; -1D647;MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL L;Lu;0;L; 004C;;;;N;;;;; -1D648;MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL M;Lu;0;L; 004D;;;;N;;;;; -1D649;MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL N;Lu;0;L; 004E;;;;N;;;;; -1D64A;MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL O;Lu;0;L; 004F;;;;N;;;;; -1D64B;MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL P;Lu;0;L; 0050;;;;N;;;;; -1D64C;MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL Q;Lu;0;L; 0051;;;;N;;;;; -1D64D;MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL R;Lu;0;L; 0052;;;;N;;;;; -1D64E;MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL S;Lu;0;L; 0053;;;;N;;;;; -1D64F;MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL T;Lu;0;L; 0054;;;;N;;;;; -1D650;MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL U;Lu;0;L; 0055;;;;N;;;;; -1D651;MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL V;Lu;0;L; 0056;;;;N;;;;; -1D652;MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL W;Lu;0;L; 0057;;;;N;;;;; -1D653;MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL X;Lu;0;L; 0058;;;;N;;;;; -1D654;MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL Y;Lu;0;L; 0059;;;;N;;;;; -1D655;MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL Z;Lu;0;L; 005A;;;;N;;;;; -1D656;MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL A;Ll;0;L; 0061;;;;N;;;;; -1D657;MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL B;Ll;0;L; 0062;;;;N;;;;; -1D658;MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL C;Ll;0;L; 0063;;;;N;;;;; -1D659;MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL D;Ll;0;L; 0064;;;;N;;;;; -1D65A;MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL E;Ll;0;L; 0065;;;;N;;;;; -1D65B;MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL F;Ll;0;L; 0066;;;;N;;;;; -1D65C;MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL G;Ll;0;L; 0067;;;;N;;;;; -1D65D;MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL H;Ll;0;L; 0068;;;;N;;;;; -1D65E;MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL I;Ll;0;L; 0069;;;;N;;;;; -1D65F;MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL J;Ll;0;L; 006A;;;;N;;;;; -1D660;MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL K;Ll;0;L; 006B;;;;N;;;;; -1D661;MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL L;Ll;0;L; 006C;;;;N;;;;; -1D662;MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL M;Ll;0;L; 006D;;;;N;;;;; -1D663;MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL N;Ll;0;L; 006E;;;;N;;;;; -1D664;MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL O;Ll;0;L; 006F;;;;N;;;;; -1D665;MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL P;Ll;0;L; 0070;;;;N;;;;; -1D666;MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL Q;Ll;0;L; 0071;;;;N;;;;; -1D667;MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL R;Ll;0;L; 0072;;;;N;;;;; -1D668;MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL S;Ll;0;L; 0073;;;;N;;;;; -1D669;MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL T;Ll;0;L; 0074;;;;N;;;;; -1D66A;MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL U;Ll;0;L; 0075;;;;N;;;;; -1D66B;MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL V;Ll;0;L; 0076;;;;N;;;;; -1D66C;MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL W;Ll;0;L; 0077;;;;N;;;;; -1D66D;MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL X;Ll;0;L; 0078;;;;N;;;;; -1D66E;MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL Y;Ll;0;L; 0079;;;;N;;;;; -1D66F;MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL Z;Ll;0;L; 007A;;;;N;;;;; -1D670;MATHEMATICAL MONOSPACE CAPITAL A;Lu;0;L; 0041;;;;N;;;;; -1D671;MATHEMATICAL MONOSPACE CAPITAL B;Lu;0;L; 0042;;;;N;;;;; -1D672;MATHEMATICAL MONOSPACE CAPITAL C;Lu;0;L; 0043;;;;N;;;;; -1D673;MATHEMATICAL MONOSPACE CAPITAL D;Lu;0;L; 0044;;;;N;;;;; -1D674;MATHEMATICAL MONOSPACE CAPITAL E;Lu;0;L; 0045;;;;N;;;;; -1D675;MATHEMATICAL MONOSPACE CAPITAL F;Lu;0;L; 0046;;;;N;;;;; -1D676;MATHEMATICAL MONOSPACE CAPITAL G;Lu;0;L; 0047;;;;N;;;;; -1D677;MATHEMATICAL MONOSPACE CAPITAL H;Lu;0;L; 0048;;;;N;;;;; -1D678;MATHEMATICAL MONOSPACE CAPITAL I;Lu;0;L; 0049;;;;N;;;;; -1D679;MATHEMATICAL MONOSPACE CAPITAL J;Lu;0;L; 004A;;;;N;;;;; -1D67A;MATHEMATICAL MONOSPACE CAPITAL K;Lu;0;L; 004B;;;;N;;;;; -1D67B;MATHEMATICAL MONOSPACE CAPITAL L;Lu;0;L; 004C;;;;N;;;;; -1D67C;MATHEMATICAL MONOSPACE CAPITAL M;Lu;0;L; 004D;;;;N;;;;; -1D67D;MATHEMATICAL MONOSPACE CAPITAL N;Lu;0;L; 004E;;;;N;;;;; -1D67E;MATHEMATICAL MONOSPACE CAPITAL O;Lu;0;L; 004F;;;;N;;;;; -1D67F;MATHEMATICAL MONOSPACE CAPITAL P;Lu;0;L; 0050;;;;N;;;;; -1D680;MATHEMATICAL MONOSPACE CAPITAL Q;Lu;0;L; 0051;;;;N;;;;; -1D681;MATHEMATICAL MONOSPACE CAPITAL R;Lu;0;L; 0052;;;;N;;;;; -1D682;MATHEMATICAL MONOSPACE CAPITAL S;Lu;0;L; 0053;;;;N;;;;; -1D683;MATHEMATICAL MONOSPACE CAPITAL T;Lu;0;L; 0054;;;;N;;;;; -1D684;MATHEMATICAL MONOSPACE CAPITAL U;Lu;0;L; 0055;;;;N;;;;; -1D685;MATHEMATICAL MONOSPACE CAPITAL V;Lu;0;L; 0056;;;;N;;;;; -1D686;MATHEMATICAL MONOSPACE CAPITAL W;Lu;0;L; 0057;;;;N;;;;; -1D687;MATHEMATICAL MONOSPACE CAPITAL X;Lu;0;L; 0058;;;;N;;;;; -1D688;MATHEMATICAL MONOSPACE CAPITAL Y;Lu;0;L; 0059;;;;N;;;;; -1D689;MATHEMATICAL MONOSPACE CAPITAL Z;Lu;0;L; 005A;;;;N;;;;; -1D68A;MATHEMATICAL MONOSPACE SMALL A;Ll;0;L; 0061;;;;N;;;;; -1D68B;MATHEMATICAL MONOSPACE SMALL B;Ll;0;L; 0062;;;;N;;;;; -1D68C;MATHEMATICAL MONOSPACE SMALL C;Ll;0;L; 0063;;;;N;;;;; -1D68D;MATHEMATICAL MONOSPACE SMALL D;Ll;0;L; 0064;;;;N;;;;; -1D68E;MATHEMATICAL MONOSPACE SMALL E;Ll;0;L; 0065;;;;N;;;;; -1D68F;MATHEMATICAL MONOSPACE SMALL F;Ll;0;L; 0066;;;;N;;;;; -1D690;MATHEMATICAL MONOSPACE SMALL G;Ll;0;L; 0067;;;;N;;;;; -1D691;MATHEMATICAL MONOSPACE SMALL H;Ll;0;L; 0068;;;;N;;;;; -1D692;MATHEMATICAL MONOSPACE SMALL I;Ll;0;L; 0069;;;;N;;;;; -1D693;MATHEMATICAL MONOSPACE SMALL J;Ll;0;L; 006A;;;;N;;;;; -1D694;MATHEMATICAL MONOSPACE SMALL K;Ll;0;L; 006B;;;;N;;;;; -1D695;MATHEMATICAL MONOSPACE SMALL L;Ll;0;L; 006C;;;;N;;;;; -1D696;MATHEMATICAL MONOSPACE SMALL M;Ll;0;L; 006D;;;;N;;;;; -1D697;MATHEMATICAL MONOSPACE SMALL N;Ll;0;L; 006E;;;;N;;;;; -1D698;MATHEMATICAL MONOSPACE SMALL O;Ll;0;L; 006F;;;;N;;;;; -1D699;MATHEMATICAL MONOSPACE SMALL P;Ll;0;L; 0070;;;;N;;;;; -1D69A;MATHEMATICAL MONOSPACE SMALL Q;Ll;0;L; 0071;;;;N;;;;; -1D69B;MATHEMATICAL MONOSPACE SMALL R;Ll;0;L; 0072;;;;N;;;;; -1D69C;MATHEMATICAL MONOSPACE SMALL S;Ll;0;L; 0073;;;;N;;;;; -1D69D;MATHEMATICAL MONOSPACE SMALL T;Ll;0;L; 0074;;;;N;;;;; -1D69E;MATHEMATICAL MONOSPACE SMALL U;Ll;0;L; 0075;;;;N;;;;; -1D69F;MATHEMATICAL MONOSPACE SMALL V;Ll;0;L; 0076;;;;N;;;;; -1D6A0;MATHEMATICAL MONOSPACE SMALL W;Ll;0;L; 0077;;;;N;;;;; -1D6A1;MATHEMATICAL MONOSPACE SMALL X;Ll;0;L; 0078;;;;N;;;;; -1D6A2;MATHEMATICAL MONOSPACE SMALL Y;Ll;0;L; 0079;;;;N;;;;; -1D6A3;MATHEMATICAL MONOSPACE SMALL Z;Ll;0;L; 007A;;;;N;;;;; -1D6A4;MATHEMATICAL ITALIC SMALL DOTLESS I;Ll;0;L; 0131;;;;N;;;;; -1D6A5;MATHEMATICAL ITALIC SMALL DOTLESS J;Ll;0;L; 0237;;;;N;;;;; -1D6A8;MATHEMATICAL BOLD CAPITAL ALPHA;Lu;0;L; 0391;;;;N;;;;; -1D6A9;MATHEMATICAL BOLD CAPITAL BETA;Lu;0;L; 0392;;;;N;;;;; -1D6AA;MATHEMATICAL BOLD CAPITAL GAMMA;Lu;0;L; 0393;;;;N;;;;; -1D6AB;MATHEMATICAL BOLD CAPITAL DELTA;Lu;0;L; 0394;;;;N;;;;; -1D6AC;MATHEMATICAL BOLD CAPITAL EPSILON;Lu;0;L; 0395;;;;N;;;;; -1D6AD;MATHEMATICAL BOLD CAPITAL ZETA;Lu;0;L; 0396;;;;N;;;;; -1D6AE;MATHEMATICAL BOLD CAPITAL ETA;Lu;0;L; 0397;;;;N;;;;; -1D6AF;MATHEMATICAL BOLD CAPITAL THETA;Lu;0;L; 0398;;;;N;;;;; -1D6B0;MATHEMATICAL BOLD CAPITAL IOTA;Lu;0;L; 0399;;;;N;;;;; -1D6B1;MATHEMATICAL BOLD CAPITAL KAPPA;Lu;0;L; 039A;;;;N;;;;; -1D6B2;MATHEMATICAL BOLD CAPITAL LAMDA;Lu;0;L; 039B;;;;N;;;;; -1D6B3;MATHEMATICAL BOLD CAPITAL MU;Lu;0;L; 039C;;;;N;;;;; -1D6B4;MATHEMATICAL BOLD CAPITAL NU;Lu;0;L; 039D;;;;N;;;;; -1D6B5;MATHEMATICAL BOLD CAPITAL XI;Lu;0;L; 039E;;;;N;;;;; -1D6B6;MATHEMATICAL BOLD CAPITAL OMICRON;Lu;0;L; 039F;;;;N;;;;; -1D6B7;MATHEMATICAL BOLD CAPITAL PI;Lu;0;L; 03A0;;;;N;;;;; -1D6B8;MATHEMATICAL BOLD CAPITAL RHO;Lu;0;L; 03A1;;;;N;;;;; -1D6B9;MATHEMATICAL BOLD CAPITAL THETA SYMBOL;Lu;0;L; 03F4;;;;N;;;;; -1D6BA;MATHEMATICAL BOLD CAPITAL SIGMA;Lu;0;L; 03A3;;;;N;;;;; -1D6BB;MATHEMATICAL BOLD CAPITAL TAU;Lu;0;L; 03A4;;;;N;;;;; -1D6BC;MATHEMATICAL BOLD CAPITAL UPSILON;Lu;0;L; 03A5;;;;N;;;;; -1D6BD;MATHEMATICAL BOLD CAPITAL PHI;Lu;0;L; 03A6;;;;N;;;;; -1D6BE;MATHEMATICAL BOLD CAPITAL CHI;Lu;0;L; 03A7;;;;N;;;;; -1D6BF;MATHEMATICAL BOLD CAPITAL PSI;Lu;0;L; 03A8;;;;N;;;;; -1D6C0;MATHEMATICAL BOLD CAPITAL OMEGA;Lu;0;L; 03A9;;;;N;;;;; -1D6C1;MATHEMATICAL BOLD NABLA;Sm;0;L; 2207;;;;N;;;;; -1D6C2;MATHEMATICAL BOLD SMALL ALPHA;Ll;0;L; 03B1;;;;N;;;;; -1D6C3;MATHEMATICAL BOLD SMALL BETA;Ll;0;L; 03B2;;;;N;;;;; -1D6C4;MATHEMATICAL BOLD SMALL GAMMA;Ll;0;L; 03B3;;;;N;;;;; -1D6C5;MATHEMATICAL BOLD SMALL DELTA;Ll;0;L; 03B4;;;;N;;;;; -1D6C6;MATHEMATICAL BOLD SMALL EPSILON;Ll;0;L; 03B5;;;;N;;;;; -1D6C7;MATHEMATICAL BOLD SMALL ZETA;Ll;0;L; 03B6;;;;N;;;;; -1D6C8;MATHEMATICAL BOLD SMALL ETA;Ll;0;L; 03B7;;;;N;;;;; -1D6C9;MATHEMATICAL BOLD SMALL THETA;Ll;0;L; 03B8;;;;N;;;;; -1D6CA;MATHEMATICAL BOLD SMALL IOTA;Ll;0;L; 03B9;;;;N;;;;; -1D6CB;MATHEMATICAL BOLD SMALL KAPPA;Ll;0;L; 03BA;;;;N;;;;; -1D6CC;MATHEMATICAL BOLD SMALL LAMDA;Ll;0;L; 03BB;;;;N;;;;; -1D6CD;MATHEMATICAL BOLD SMALL MU;Ll;0;L; 03BC;;;;N;;;;; -1D6CE;MATHEMATICAL BOLD SMALL NU;Ll;0;L; 03BD;;;;N;;;;; -1D6CF;MATHEMATICAL BOLD SMALL XI;Ll;0;L; 03BE;;;;N;;;;; -1D6D0;MATHEMATICAL BOLD SMALL OMICRON;Ll;0;L; 03BF;;;;N;;;;; -1D6D1;MATHEMATICAL BOLD SMALL PI;Ll;0;L; 03C0;;;;N;;;;; -1D6D2;MATHEMATICAL BOLD SMALL RHO;Ll;0;L; 03C1;;;;N;;;;; -1D6D3;MATHEMATICAL BOLD SMALL FINAL SIGMA;Ll;0;L; 03C2;;;;N;;;;; -1D6D4;MATHEMATICAL BOLD SMALL SIGMA;Ll;0;L; 03C3;;;;N;;;;; -1D6D5;MATHEMATICAL BOLD SMALL TAU;Ll;0;L; 03C4;;;;N;;;;; -1D6D6;MATHEMATICAL BOLD SMALL UPSILON;Ll;0;L; 03C5;;;;N;;;;; -1D6D7;MATHEMATICAL BOLD SMALL PHI;Ll;0;L; 03C6;;;;N;;;;; -1D6D8;MATHEMATICAL BOLD SMALL CHI;Ll;0;L; 03C7;;;;N;;;;; -1D6D9;MATHEMATICAL BOLD SMALL PSI;Ll;0;L; 03C8;;;;N;;;;; -1D6DA;MATHEMATICAL BOLD SMALL OMEGA;Ll;0;L; 03C9;;;;N;;;;; -1D6DB;MATHEMATICAL BOLD PARTIAL DIFFERENTIAL;Sm;0;ON; 2202;;;;Y;;;;; -1D6DC;MATHEMATICAL BOLD EPSILON SYMBOL;Ll;0;L; 03F5;;;;N;;;;; -1D6DD;MATHEMATICAL BOLD THETA SYMBOL;Ll;0;L; 03D1;;;;N;;;;; -1D6DE;MATHEMATICAL BOLD KAPPA SYMBOL;Ll;0;L; 03F0;;;;N;;;;; -1D6DF;MATHEMATICAL BOLD PHI SYMBOL;Ll;0;L; 03D5;;;;N;;;;; -1D6E0;MATHEMATICAL BOLD RHO SYMBOL;Ll;0;L; 03F1;;;;N;;;;; -1D6E1;MATHEMATICAL BOLD PI SYMBOL;Ll;0;L; 03D6;;;;N;;;;; -1D6E2;MATHEMATICAL ITALIC CAPITAL ALPHA;Lu;0;L; 0391;;;;N;;;;; -1D6E3;MATHEMATICAL ITALIC CAPITAL BETA;Lu;0;L; 0392;;;;N;;;;; -1D6E4;MATHEMATICAL ITALIC CAPITAL GAMMA;Lu;0;L; 0393;;;;N;;;;; -1D6E5;MATHEMATICAL ITALIC CAPITAL DELTA;Lu;0;L; 0394;;;;N;;;;; -1D6E6;MATHEMATICAL ITALIC CAPITAL EPSILON;Lu;0;L; 0395;;;;N;;;;; -1D6E7;MATHEMATICAL ITALIC CAPITAL ZETA;Lu;0;L; 0396;;;;N;;;;; -1D6E8;MATHEMATICAL ITALIC CAPITAL ETA;Lu;0;L; 0397;;;;N;;;;; -1D6E9;MATHEMATICAL ITALIC CAPITAL THETA;Lu;0;L; 0398;;;;N;;;;; -1D6EA;MATHEMATICAL ITALIC CAPITAL IOTA;Lu;0;L; 0399;;;;N;;;;; -1D6EB;MATHEMATICAL ITALIC CAPITAL KAPPA;Lu;0;L; 039A;;;;N;;;;; -1D6EC;MATHEMATICAL ITALIC CAPITAL LAMDA;Lu;0;L; 039B;;;;N;;;;; -1D6ED;MATHEMATICAL ITALIC CAPITAL MU;Lu;0;L; 039C;;;;N;;;;; -1D6EE;MATHEMATICAL ITALIC CAPITAL NU;Lu;0;L; 039D;;;;N;;;;; -1D6EF;MATHEMATICAL ITALIC CAPITAL XI;Lu;0;L; 039E;;;;N;;;;; -1D6F0;MATHEMATICAL ITALIC CAPITAL OMICRON;Lu;0;L; 039F;;;;N;;;;; -1D6F1;MATHEMATICAL ITALIC CAPITAL PI;Lu;0;L; 03A0;;;;N;;;;; -1D6F2;MATHEMATICAL ITALIC CAPITAL RHO;Lu;0;L; 03A1;;;;N;;;;; -1D6F3;MATHEMATICAL ITALIC CAPITAL THETA SYMBOL;Lu;0;L; 03F4;;;;N;;;;; -1D6F4;MATHEMATICAL ITALIC CAPITAL SIGMA;Lu;0;L; 03A3;;;;N;;;;; -1D6F5;MATHEMATICAL ITALIC CAPITAL TAU;Lu;0;L; 03A4;;;;N;;;;; -1D6F6;MATHEMATICAL ITALIC CAPITAL UPSILON;Lu;0;L; 03A5;;;;N;;;;; -1D6F7;MATHEMATICAL ITALIC CAPITAL PHI;Lu;0;L; 03A6;;;;N;;;;; -1D6F8;MATHEMATICAL ITALIC CAPITAL CHI;Lu;0;L; 03A7;;;;N;;;;; -1D6F9;MATHEMATICAL ITALIC CAPITAL PSI;Lu;0;L; 03A8;;;;N;;;;; -1D6FA;MATHEMATICAL ITALIC CAPITAL OMEGA;Lu;0;L; 03A9;;;;N;;;;; -1D6FB;MATHEMATICAL ITALIC NABLA;Sm;0;L; 2207;;;;N;;;;; -1D6FC;MATHEMATICAL ITALIC SMALL ALPHA;Ll;0;L; 03B1;;;;N;;;;; -1D6FD;MATHEMATICAL ITALIC SMALL BETA;Ll;0;L; 03B2;;;;N;;;;; -1D6FE;MATHEMATICAL ITALIC SMALL GAMMA;Ll;0;L; 03B3;;;;N;;;;; -1D6FF;MATHEMATICAL ITALIC SMALL DELTA;Ll;0;L; 03B4;;;;N;;;;; -1D700;MATHEMATICAL ITALIC SMALL EPSILON;Ll;0;L; 03B5;;;;N;;;;; -1D701;MATHEMATICAL ITALIC SMALL ZETA;Ll;0;L; 03B6;;;;N;;;;; -1D702;MATHEMATICAL ITALIC SMALL ETA;Ll;0;L; 03B7;;;;N;;;;; -1D703;MATHEMATICAL ITALIC SMALL THETA;Ll;0;L; 03B8;;;;N;;;;; -1D704;MATHEMATICAL ITALIC SMALL IOTA;Ll;0;L; 03B9;;;;N;;;;; -1D705;MATHEMATICAL ITALIC SMALL KAPPA;Ll;0;L; 03BA;;;;N;;;;; -1D706;MATHEMATICAL ITALIC SMALL LAMDA;Ll;0;L; 03BB;;;;N;;;;; -1D707;MATHEMATICAL ITALIC SMALL MU;Ll;0;L; 03BC;;;;N;;;;; -1D708;MATHEMATICAL ITALIC SMALL NU;Ll;0;L; 03BD;;;;N;;;;; -1D709;MATHEMATICAL ITALIC SMALL XI;Ll;0;L; 03BE;;;;N;;;;; -1D70A;MATHEMATICAL ITALIC SMALL OMICRON;Ll;0;L; 03BF;;;;N;;;;; -1D70B;MATHEMATICAL ITALIC SMALL PI;Ll;0;L; 03C0;;;;N;;;;; -1D70C;MATHEMATICAL ITALIC SMALL RHO;Ll;0;L; 03C1;;;;N;;;;; -1D70D;MATHEMATICAL ITALIC SMALL FINAL SIGMA;Ll;0;L; 03C2;;;;N;;;;; -1D70E;MATHEMATICAL ITALIC SMALL SIGMA;Ll;0;L; 03C3;;;;N;;;;; -1D70F;MATHEMATICAL ITALIC SMALL TAU;Ll;0;L; 03C4;;;;N;;;;; -1D710;MATHEMATICAL ITALIC SMALL UPSILON;Ll;0;L; 03C5;;;;N;;;;; -1D711;MATHEMATICAL ITALIC SMALL PHI;Ll;0;L; 03C6;;;;N;;;;; -1D712;MATHEMATICAL ITALIC SMALL CHI;Ll;0;L; 03C7;;;;N;;;;; -1D713;MATHEMATICAL ITALIC SMALL PSI;Ll;0;L; 03C8;;;;N;;;;; -1D714;MATHEMATICAL ITALIC SMALL OMEGA;Ll;0;L; 03C9;;;;N;;;;; -1D715;MATHEMATICAL ITALIC PARTIAL DIFFERENTIAL;Sm;0;ON; 2202;;;;Y;;;;; -1D716;MATHEMATICAL ITALIC EPSILON SYMBOL;Ll;0;L; 03F5;;;;N;;;;; -1D717;MATHEMATICAL ITALIC THETA SYMBOL;Ll;0;L; 03D1;;;;N;;;;; -1D718;MATHEMATICAL ITALIC KAPPA SYMBOL;Ll;0;L; 03F0;;;;N;;;;; -1D719;MATHEMATICAL ITALIC PHI SYMBOL;Ll;0;L; 03D5;;;;N;;;;; -1D71A;MATHEMATICAL ITALIC RHO SYMBOL;Ll;0;L; 03F1;;;;N;;;;; -1D71B;MATHEMATICAL ITALIC PI SYMBOL;Ll;0;L; 03D6;;;;N;;;;; -1D71C;MATHEMATICAL BOLD ITALIC CAPITAL ALPHA;Lu;0;L; 0391;;;;N;;;;; -1D71D;MATHEMATICAL BOLD ITALIC CAPITAL BETA;Lu;0;L; 0392;;;;N;;;;; -1D71E;MATHEMATICAL BOLD ITALIC CAPITAL GAMMA;Lu;0;L; 0393;;;;N;;;;; -1D71F;MATHEMATICAL BOLD ITALIC CAPITAL DELTA;Lu;0;L; 0394;;;;N;;;;; -1D720;MATHEMATICAL BOLD ITALIC CAPITAL EPSILON;Lu;0;L; 0395;;;;N;;;;; -1D721;MATHEMATICAL BOLD ITALIC CAPITAL ZETA;Lu;0;L; 0396;;;;N;;;;; -1D722;MATHEMATICAL BOLD ITALIC CAPITAL ETA;Lu;0;L; 0397;;;;N;;;;; -1D723;MATHEMATICAL BOLD ITALIC CAPITAL THETA;Lu;0;L; 0398;;;;N;;;;; -1D724;MATHEMATICAL BOLD ITALIC CAPITAL IOTA;Lu;0;L; 0399;;;;N;;;;; -1D725;MATHEMATICAL BOLD ITALIC CAPITAL KAPPA;Lu;0;L; 039A;;;;N;;;;; -1D726;MATHEMATICAL BOLD ITALIC CAPITAL LAMDA;Lu;0;L; 039B;;;;N;;;;; -1D727;MATHEMATICAL BOLD ITALIC CAPITAL MU;Lu;0;L; 039C;;;;N;;;;; -1D728;MATHEMATICAL BOLD ITALIC CAPITAL NU;Lu;0;L; 039D;;;;N;;;;; -1D729;MATHEMATICAL BOLD ITALIC CAPITAL XI;Lu;0;L; 039E;;;;N;;;;; -1D72A;MATHEMATICAL BOLD ITALIC CAPITAL OMICRON;Lu;0;L; 039F;;;;N;;;;; -1D72B;MATHEMATICAL BOLD ITALIC CAPITAL PI;Lu;0;L; 03A0;;;;N;;;;; -1D72C;MATHEMATICAL BOLD ITALIC CAPITAL RHO;Lu;0;L; 03A1;;;;N;;;;; -1D72D;MATHEMATICAL BOLD ITALIC CAPITAL THETA SYMBOL;Lu;0;L; 03F4;;;;N;;;;; -1D72E;MATHEMATICAL BOLD ITALIC CAPITAL SIGMA;Lu;0;L; 03A3;;;;N;;;;; -1D72F;MATHEMATICAL BOLD ITALIC CAPITAL TAU;Lu;0;L; 03A4;;;;N;;;;; -1D730;MATHEMATICAL BOLD ITALIC CAPITAL UPSILON;Lu;0;L; 03A5;;;;N;;;;; -1D731;MATHEMATICAL BOLD ITALIC CAPITAL PHI;Lu;0;L; 03A6;;;;N;;;;; -1D732;MATHEMATICAL BOLD ITALIC CAPITAL CHI;Lu;0;L; 03A7;;;;N;;;;; -1D733;MATHEMATICAL BOLD ITALIC CAPITAL PSI;Lu;0;L; 03A8;;;;N;;;;; -1D734;MATHEMATICAL BOLD ITALIC CAPITAL OMEGA;Lu;0;L; 03A9;;;;N;;;;; -1D735;MATHEMATICAL BOLD ITALIC NABLA;Sm;0;L; 2207;;;;N;;;;; -1D736;MATHEMATICAL BOLD ITALIC SMALL ALPHA;Ll;0;L; 03B1;;;;N;;;;; -1D737;MATHEMATICAL BOLD ITALIC SMALL BETA;Ll;0;L; 03B2;;;;N;;;;; -1D738;MATHEMATICAL BOLD ITALIC SMALL GAMMA;Ll;0;L; 03B3;;;;N;;;;; -1D739;MATHEMATICAL BOLD ITALIC SMALL DELTA;Ll;0;L; 03B4;;;;N;;;;; -1D73A;MATHEMATICAL BOLD ITALIC SMALL EPSILON;Ll;0;L; 03B5;;;;N;;;;; -1D73B;MATHEMATICAL BOLD ITALIC SMALL ZETA;Ll;0;L; 03B6;;;;N;;;;; -1D73C;MATHEMATICAL BOLD ITALIC SMALL ETA;Ll;0;L; 03B7;;;;N;;;;; -1D73D;MATHEMATICAL BOLD ITALIC SMALL THETA;Ll;0;L; 03B8;;;;N;;;;; -1D73E;MATHEMATICAL BOLD ITALIC SMALL IOTA;Ll;0;L; 03B9;;;;N;;;;; -1D73F;MATHEMATICAL BOLD ITALIC SMALL KAPPA;Ll;0;L; 03BA;;;;N;;;;; -1D740;MATHEMATICAL BOLD ITALIC SMALL LAMDA;Ll;0;L; 03BB;;;;N;;;;; -1D741;MATHEMATICAL BOLD ITALIC SMALL MU;Ll;0;L; 03BC;;;;N;;;;; -1D742;MATHEMATICAL BOLD ITALIC SMALL NU;Ll;0;L; 03BD;;;;N;;;;; -1D743;MATHEMATICAL BOLD ITALIC SMALL XI;Ll;0;L; 03BE;;;;N;;;;; -1D744;MATHEMATICAL BOLD ITALIC SMALL OMICRON;Ll;0;L; 03BF;;;;N;;;;; -1D745;MATHEMATICAL BOLD ITALIC SMALL PI;Ll;0;L; 03C0;;;;N;;;;; -1D746;MATHEMATICAL BOLD ITALIC SMALL RHO;Ll;0;L; 03C1;;;;N;;;;; -1D747;MATHEMATICAL BOLD ITALIC SMALL FINAL SIGMA;Ll;0;L; 03C2;;;;N;;;;; -1D748;MATHEMATICAL BOLD ITALIC SMALL SIGMA;Ll;0;L; 03C3;;;;N;;;;; -1D749;MATHEMATICAL BOLD ITALIC SMALL TAU;Ll;0;L; 03C4;;;;N;;;;; -1D74A;MATHEMATICAL BOLD ITALIC SMALL UPSILON;Ll;0;L; 03C5;;;;N;;;;; -1D74B;MATHEMATICAL BOLD ITALIC SMALL PHI;Ll;0;L; 03C6;;;;N;;;;; -1D74C;MATHEMATICAL BOLD ITALIC SMALL CHI;Ll;0;L; 03C7;;;;N;;;;; -1D74D;MATHEMATICAL BOLD ITALIC SMALL PSI;Ll;0;L; 03C8;;;;N;;;;; -1D74E;MATHEMATICAL BOLD ITALIC SMALL OMEGA;Ll;0;L; 03C9;;;;N;;;;; -1D74F;MATHEMATICAL BOLD ITALIC PARTIAL DIFFERENTIAL;Sm;0;ON; 2202;;;;Y;;;;; -1D750;MATHEMATICAL BOLD ITALIC EPSILON SYMBOL;Ll;0;L; 03F5;;;;N;;;;; -1D751;MATHEMATICAL BOLD ITALIC THETA SYMBOL;Ll;0;L; 03D1;;;;N;;;;; -1D752;MATHEMATICAL BOLD ITALIC KAPPA SYMBOL;Ll;0;L; 03F0;;;;N;;;;; -1D753;MATHEMATICAL BOLD ITALIC PHI SYMBOL;Ll;0;L; 03D5;;;;N;;;;; -1D754;MATHEMATICAL BOLD ITALIC RHO SYMBOL;Ll;0;L; 03F1;;;;N;;;;; -1D755;MATHEMATICAL BOLD ITALIC PI SYMBOL;Ll;0;L; 03D6;;;;N;;;;; -1D756;MATHEMATICAL SANS-SERIF BOLD CAPITAL ALPHA;Lu;0;L; 0391;;;;N;;;;; -1D757;MATHEMATICAL SANS-SERIF BOLD CAPITAL BETA;Lu;0;L; 0392;;;;N;;;;; -1D758;MATHEMATICAL SANS-SERIF BOLD CAPITAL GAMMA;Lu;0;L; 0393;;;;N;;;;; -1D759;MATHEMATICAL SANS-SERIF BOLD CAPITAL DELTA;Lu;0;L; 0394;;;;N;;;;; -1D75A;MATHEMATICAL SANS-SERIF BOLD CAPITAL EPSILON;Lu;0;L; 0395;;;;N;;;;; -1D75B;MATHEMATICAL SANS-SERIF BOLD CAPITAL ZETA;Lu;0;L; 0396;;;;N;;;;; -1D75C;MATHEMATICAL SANS-SERIF BOLD CAPITAL ETA;Lu;0;L; 0397;;;;N;;;;; -1D75D;MATHEMATICAL SANS-SERIF BOLD CAPITAL THETA;Lu;0;L; 0398;;;;N;;;;; -1D75E;MATHEMATICAL SANS-SERIF BOLD CAPITAL IOTA;Lu;0;L; 0399;;;;N;;;;; -1D75F;MATHEMATICAL SANS-SERIF BOLD CAPITAL KAPPA;Lu;0;L; 039A;;;;N;;;;; -1D760;MATHEMATICAL SANS-SERIF BOLD CAPITAL LAMDA;Lu;0;L; 039B;;;;N;;;;; -1D761;MATHEMATICAL SANS-SERIF BOLD CAPITAL MU;Lu;0;L; 039C;;;;N;;;;; -1D762;MATHEMATICAL SANS-SERIF BOLD CAPITAL NU;Lu;0;L; 039D;;;;N;;;;; -1D763;MATHEMATICAL SANS-SERIF BOLD CAPITAL XI;Lu;0;L; 039E;;;;N;;;;; -1D764;MATHEMATICAL SANS-SERIF BOLD CAPITAL OMICRON;Lu;0;L; 039F;;;;N;;;;; -1D765;MATHEMATICAL SANS-SERIF BOLD CAPITAL PI;Lu;0;L; 03A0;;;;N;;;;; -1D766;MATHEMATICAL SANS-SERIF BOLD CAPITAL RHO;Lu;0;L; 03A1;;;;N;;;;; -1D767;MATHEMATICAL SANS-SERIF BOLD CAPITAL THETA SYMBOL;Lu;0;L; 03F4;;;;N;;;;; -1D768;MATHEMATICAL SANS-SERIF BOLD CAPITAL SIGMA;Lu;0;L; 03A3;;;;N;;;;; -1D769;MATHEMATICAL SANS-SERIF BOLD CAPITAL TAU;Lu;0;L; 03A4;;;;N;;;;; -1D76A;MATHEMATICAL SANS-SERIF BOLD CAPITAL UPSILON;Lu;0;L; 03A5;;;;N;;;;; -1D76B;MATHEMATICAL SANS-SERIF BOLD CAPITAL PHI;Lu;0;L; 03A6;;;;N;;;;; -1D76C;MATHEMATICAL SANS-SERIF BOLD CAPITAL CHI;Lu;0;L; 03A7;;;;N;;;;; -1D76D;MATHEMATICAL SANS-SERIF BOLD CAPITAL PSI;Lu;0;L; 03A8;;;;N;;;;; -1D76E;MATHEMATICAL SANS-SERIF BOLD CAPITAL OMEGA;Lu;0;L; 03A9;;;;N;;;;; -1D76F;MATHEMATICAL SANS-SERIF BOLD NABLA;Sm;0;L; 2207;;;;N;;;;; -1D770;MATHEMATICAL SANS-SERIF BOLD SMALL ALPHA;Ll;0;L; 03B1;;;;N;;;;; -1D771;MATHEMATICAL SANS-SERIF BOLD SMALL BETA;Ll;0;L; 03B2;;;;N;;;;; -1D772;MATHEMATICAL SANS-SERIF BOLD SMALL GAMMA;Ll;0;L; 03B3;;;;N;;;;; -1D773;MATHEMATICAL SANS-SERIF BOLD SMALL DELTA;Ll;0;L; 03B4;;;;N;;;;; -1D774;MATHEMATICAL SANS-SERIF BOLD SMALL EPSILON;Ll;0;L; 03B5;;;;N;;;;; -1D775;MATHEMATICAL SANS-SERIF BOLD SMALL ZETA;Ll;0;L; 03B6;;;;N;;;;; -1D776;MATHEMATICAL SANS-SERIF BOLD SMALL ETA;Ll;0;L; 03B7;;;;N;;;;; -1D777;MATHEMATICAL SANS-SERIF BOLD SMALL THETA;Ll;0;L; 03B8;;;;N;;;;; -1D778;MATHEMATICAL SANS-SERIF BOLD SMALL IOTA;Ll;0;L; 03B9;;;;N;;;;; -1D779;MATHEMATICAL SANS-SERIF BOLD SMALL KAPPA;Ll;0;L; 03BA;;;;N;;;;; -1D77A;MATHEMATICAL SANS-SERIF BOLD SMALL LAMDA;Ll;0;L; 03BB;;;;N;;;;; -1D77B;MATHEMATICAL SANS-SERIF BOLD SMALL MU;Ll;0;L; 03BC;;;;N;;;;; -1D77C;MATHEMATICAL SANS-SERIF BOLD SMALL NU;Ll;0;L; 03BD;;;;N;;;;; -1D77D;MATHEMATICAL SANS-SERIF BOLD SMALL XI;Ll;0;L; 03BE;;;;N;;;;; -1D77E;MATHEMATICAL SANS-SERIF BOLD SMALL OMICRON;Ll;0;L; 03BF;;;;N;;;;; -1D77F;MATHEMATICAL SANS-SERIF BOLD SMALL PI;Ll;0;L; 03C0;;;;N;;;;; -1D780;MATHEMATICAL SANS-SERIF BOLD SMALL RHO;Ll;0;L; 03C1;;;;N;;;;; -1D781;MATHEMATICAL SANS-SERIF BOLD SMALL FINAL SIGMA;Ll;0;L; 03C2;;;;N;;;;; -1D782;MATHEMATICAL SANS-SERIF BOLD SMALL SIGMA;Ll;0;L; 03C3;;;;N;;;;; -1D783;MATHEMATICAL SANS-SERIF BOLD SMALL TAU;Ll;0;L; 03C4;;;;N;;;;; -1D784;MATHEMATICAL SANS-SERIF BOLD SMALL UPSILON;Ll;0;L; 03C5;;;;N;;;;; -1D785;MATHEMATICAL SANS-SERIF BOLD SMALL PHI;Ll;0;L; 03C6;;;;N;;;;; -1D786;MATHEMATICAL SANS-SERIF BOLD SMALL CHI;Ll;0;L; 03C7;;;;N;;;;; -1D787;MATHEMATICAL SANS-SERIF BOLD SMALL PSI;Ll;0;L; 03C8;;;;N;;;;; -1D788;MATHEMATICAL SANS-SERIF BOLD SMALL OMEGA;Ll;0;L; 03C9;;;;N;;;;; -1D789;MATHEMATICAL SANS-SERIF BOLD PARTIAL DIFFERENTIAL;Sm;0;ON; 2202;;;;Y;;;;; -1D78A;MATHEMATICAL SANS-SERIF BOLD EPSILON SYMBOL;Ll;0;L; 03F5;;;;N;;;;; -1D78B;MATHEMATICAL SANS-SERIF BOLD THETA SYMBOL;Ll;0;L; 03D1;;;;N;;;;; -1D78C;MATHEMATICAL SANS-SERIF BOLD KAPPA SYMBOL;Ll;0;L; 03F0;;;;N;;;;; -1D78D;MATHEMATICAL SANS-SERIF BOLD PHI SYMBOL;Ll;0;L; 03D5;;;;N;;;;; -1D78E;MATHEMATICAL SANS-SERIF BOLD RHO SYMBOL;Ll;0;L; 03F1;;;;N;;;;; -1D78F;MATHEMATICAL SANS-SERIF BOLD PI SYMBOL;Ll;0;L; 03D6;;;;N;;;;; -1D790;MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL ALPHA;Lu;0;L; 0391;;;;N;;;;; -1D791;MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL BETA;Lu;0;L; 0392;;;;N;;;;; -1D792;MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL GAMMA;Lu;0;L; 0393;;;;N;;;;; -1D793;MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL DELTA;Lu;0;L; 0394;;;;N;;;;; -1D794;MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL EPSILON;Lu;0;L; 0395;;;;N;;;;; -1D795;MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL ZETA;Lu;0;L; 0396;;;;N;;;;; -1D796;MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL ETA;Lu;0;L; 0397;;;;N;;;;; -1D797;MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL THETA;Lu;0;L; 0398;;;;N;;;;; -1D798;MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL IOTA;Lu;0;L; 0399;;;;N;;;;; -1D799;MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL KAPPA;Lu;0;L; 039A;;;;N;;;;; -1D79A;MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL LAMDA;Lu;0;L; 039B;;;;N;;;;; -1D79B;MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL MU;Lu;0;L; 039C;;;;N;;;;; -1D79C;MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL NU;Lu;0;L; 039D;;;;N;;;;; -1D79D;MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL XI;Lu;0;L; 039E;;;;N;;;;; -1D79E;MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL OMICRON;Lu;0;L; 039F;;;;N;;;;; -1D79F;MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL PI;Lu;0;L; 03A0;;;;N;;;;; -1D7A0;MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL RHO;Lu;0;L; 03A1;;;;N;;;;; -1D7A1;MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL THETA SYMBOL;Lu;0;L; 03F4;;;;N;;;;; -1D7A2;MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL SIGMA;Lu;0;L; 03A3;;;;N;;;;; -1D7A3;MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL TAU;Lu;0;L; 03A4;;;;N;;;;; -1D7A4;MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL UPSILON;Lu;0;L; 03A5;;;;N;;;;; -1D7A5;MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL PHI;Lu;0;L; 03A6;;;;N;;;;; -1D7A6;MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL CHI;Lu;0;L; 03A7;;;;N;;;;; -1D7A7;MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL PSI;Lu;0;L; 03A8;;;;N;;;;; -1D7A8;MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL OMEGA;Lu;0;L; 03A9;;;;N;;;;; -1D7A9;MATHEMATICAL SANS-SERIF BOLD ITALIC NABLA;Sm;0;L; 2207;;;;N;;;;; -1D7AA;MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL ALPHA;Ll;0;L; 03B1;;;;N;;;;; -1D7AB;MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL BETA;Ll;0;L; 03B2;;;;N;;;;; -1D7AC;MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL GAMMA;Ll;0;L; 03B3;;;;N;;;;; -1D7AD;MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL DELTA;Ll;0;L; 03B4;;;;N;;;;; -1D7AE;MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL EPSILON;Ll;0;L; 03B5;;;;N;;;;; -1D7AF;MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL ZETA;Ll;0;L; 03B6;;;;N;;;;; -1D7B0;MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL ETA;Ll;0;L; 03B7;;;;N;;;;; -1D7B1;MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL THETA;Ll;0;L; 03B8;;;;N;;;;; -1D7B2;MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL IOTA;Ll;0;L; 03B9;;;;N;;;;; -1D7B3;MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL KAPPA;Ll;0;L; 03BA;;;;N;;;;; -1D7B4;MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL LAMDA;Ll;0;L; 03BB;;;;N;;;;; -1D7B5;MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL MU;Ll;0;L; 03BC;;;;N;;;;; -1D7B6;MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL NU;Ll;0;L; 03BD;;;;N;;;;; -1D7B7;MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL XI;Ll;0;L; 03BE;;;;N;;;;; -1D7B8;MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL OMICRON;Ll;0;L; 03BF;;;;N;;;;; -1D7B9;MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL PI;Ll;0;L; 03C0;;;;N;;;;; -1D7BA;MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL RHO;Ll;0;L; 03C1;;;;N;;;;; -1D7BB;MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL FINAL SIGMA;Ll;0;L; 03C2;;;;N;;;;; -1D7BC;MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL SIGMA;Ll;0;L; 03C3;;;;N;;;;; -1D7BD;MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL TAU;Ll;0;L; 03C4;;;;N;;;;; -1D7BE;MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL UPSILON;Ll;0;L; 03C5;;;;N;;;;; -1D7BF;MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL PHI;Ll;0;L; 03C6;;;;N;;;;; -1D7C0;MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL CHI;Ll;0;L; 03C7;;;;N;;;;; -1D7C1;MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL PSI;Ll;0;L; 03C8;;;;N;;;;; -1D7C2;MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL OMEGA;Ll;0;L; 03C9;;;;N;;;;; -1D7C3;MATHEMATICAL SANS-SERIF BOLD ITALIC PARTIAL DIFFERENTIAL;Sm;0;ON; 2202;;;;Y;;;;; -1D7C4;MATHEMATICAL SANS-SERIF BOLD ITALIC EPSILON SYMBOL;Ll;0;L; 03F5;;;;N;;;;; -1D7C5;MATHEMATICAL SANS-SERIF BOLD ITALIC THETA SYMBOL;Ll;0;L; 03D1;;;;N;;;;; -1D7C6;MATHEMATICAL SANS-SERIF BOLD ITALIC KAPPA SYMBOL;Ll;0;L; 03F0;;;;N;;;;; -1D7C7;MATHEMATICAL SANS-SERIF BOLD ITALIC PHI SYMBOL;Ll;0;L; 03D5;;;;N;;;;; -1D7C8;MATHEMATICAL SANS-SERIF BOLD ITALIC RHO SYMBOL;Ll;0;L; 03F1;;;;N;;;;; -1D7C9;MATHEMATICAL SANS-SERIF BOLD ITALIC PI SYMBOL;Ll;0;L; 03D6;;;;N;;;;; -1D7CA;MATHEMATICAL BOLD CAPITAL DIGAMMA;Lu;0;L; 03DC;;;;N;;;;; -1D7CB;MATHEMATICAL BOLD SMALL DIGAMMA;Ll;0;L; 03DD;;;;N;;;;; -1D7CE;MATHEMATICAL BOLD DIGIT ZERO;Nd;0;EN; 0030;0;0;0;N;;;;; -1D7CF;MATHEMATICAL BOLD DIGIT ONE;Nd;0;EN; 0031;1;1;1;N;;;;; -1D7D0;MATHEMATICAL BOLD DIGIT TWO;Nd;0;EN; 0032;2;2;2;N;;;;; -1D7D1;MATHEMATICAL BOLD DIGIT THREE;Nd;0;EN; 0033;3;3;3;N;;;;; -1D7D2;MATHEMATICAL BOLD DIGIT FOUR;Nd;0;EN; 0034;4;4;4;N;;;;; -1D7D3;MATHEMATICAL BOLD DIGIT FIVE;Nd;0;EN; 0035;5;5;5;N;;;;; -1D7D4;MATHEMATICAL BOLD DIGIT SIX;Nd;0;EN; 0036;6;6;6;N;;;;; -1D7D5;MATHEMATICAL BOLD DIGIT SEVEN;Nd;0;EN; 0037;7;7;7;N;;;;; -1D7D6;MATHEMATICAL BOLD DIGIT EIGHT;Nd;0;EN; 0038;8;8;8;N;;;;; -1D7D7;MATHEMATICAL BOLD DIGIT NINE;Nd;0;EN; 0039;9;9;9;N;;;;; -1D7D8;MATHEMATICAL DOUBLE-STRUCK DIGIT ZERO;Nd;0;EN; 0030;0;0;0;N;;;;; -1D7D9;MATHEMATICAL DOUBLE-STRUCK DIGIT ONE;Nd;0;EN; 0031;1;1;1;N;;;;; -1D7DA;MATHEMATICAL DOUBLE-STRUCK DIGIT TWO;Nd;0;EN; 0032;2;2;2;N;;;;; -1D7DB;MATHEMATICAL DOUBLE-STRUCK DIGIT THREE;Nd;0;EN; 0033;3;3;3;N;;;;; -1D7DC;MATHEMATICAL DOUBLE-STRUCK DIGIT FOUR;Nd;0;EN; 0034;4;4;4;N;;;;; -1D7DD;MATHEMATICAL DOUBLE-STRUCK DIGIT FIVE;Nd;0;EN; 0035;5;5;5;N;;;;; -1D7DE;MATHEMATICAL DOUBLE-STRUCK DIGIT SIX;Nd;0;EN; 0036;6;6;6;N;;;;; -1D7DF;MATHEMATICAL DOUBLE-STRUCK DIGIT SEVEN;Nd;0;EN; 0037;7;7;7;N;;;;; -1D7E0;MATHEMATICAL DOUBLE-STRUCK DIGIT EIGHT;Nd;0;EN; 0038;8;8;8;N;;;;; -1D7E1;MATHEMATICAL DOUBLE-STRUCK DIGIT NINE;Nd;0;EN; 0039;9;9;9;N;;;;; -1D7E2;MATHEMATICAL SANS-SERIF DIGIT ZERO;Nd;0;EN; 0030;0;0;0;N;;;;; -1D7E3;MATHEMATICAL SANS-SERIF DIGIT ONE;Nd;0;EN; 0031;1;1;1;N;;;;; -1D7E4;MATHEMATICAL SANS-SERIF DIGIT TWO;Nd;0;EN; 0032;2;2;2;N;;;;; -1D7E5;MATHEMATICAL SANS-SERIF DIGIT THREE;Nd;0;EN; 0033;3;3;3;N;;;;; -1D7E6;MATHEMATICAL SANS-SERIF DIGIT FOUR;Nd;0;EN; 0034;4;4;4;N;;;;; -1D7E7;MATHEMATICAL SANS-SERIF DIGIT FIVE;Nd;0;EN; 0035;5;5;5;N;;;;; -1D7E8;MATHEMATICAL SANS-SERIF DIGIT SIX;Nd;0;EN; 0036;6;6;6;N;;;;; -1D7E9;MATHEMATICAL SANS-SERIF DIGIT SEVEN;Nd;0;EN; 0037;7;7;7;N;;;;; -1D7EA;MATHEMATICAL SANS-SERIF DIGIT EIGHT;Nd;0;EN; 0038;8;8;8;N;;;;; -1D7EB;MATHEMATICAL SANS-SERIF DIGIT NINE;Nd;0;EN; 0039;9;9;9;N;;;;; -1D7EC;MATHEMATICAL SANS-SERIF BOLD DIGIT ZERO;Nd;0;EN; 0030;0;0;0;N;;;;; -1D7ED;MATHEMATICAL SANS-SERIF BOLD DIGIT ONE;Nd;0;EN; 0031;1;1;1;N;;;;; -1D7EE;MATHEMATICAL SANS-SERIF BOLD DIGIT TWO;Nd;0;EN; 0032;2;2;2;N;;;;; -1D7EF;MATHEMATICAL SANS-SERIF BOLD DIGIT THREE;Nd;0;EN; 0033;3;3;3;N;;;;; -1D7F0;MATHEMATICAL SANS-SERIF BOLD DIGIT FOUR;Nd;0;EN; 0034;4;4;4;N;;;;; -1D7F1;MATHEMATICAL SANS-SERIF BOLD DIGIT FIVE;Nd;0;EN; 0035;5;5;5;N;;;;; -1D7F2;MATHEMATICAL SANS-SERIF BOLD DIGIT SIX;Nd;0;EN; 0036;6;6;6;N;;;;; -1D7F3;MATHEMATICAL SANS-SERIF BOLD DIGIT SEVEN;Nd;0;EN; 0037;7;7;7;N;;;;; -1D7F4;MATHEMATICAL SANS-SERIF BOLD DIGIT EIGHT;Nd;0;EN; 0038;8;8;8;N;;;;; -1D7F5;MATHEMATICAL SANS-SERIF BOLD DIGIT NINE;Nd;0;EN; 0039;9;9;9;N;;;;; -1D7F6;MATHEMATICAL MONOSPACE DIGIT ZERO;Nd;0;EN; 0030;0;0;0;N;;;;; -1D7F7;MATHEMATICAL MONOSPACE DIGIT ONE;Nd;0;EN; 0031;1;1;1;N;;;;; -1D7F8;MATHEMATICAL MONOSPACE DIGIT TWO;Nd;0;EN; 0032;2;2;2;N;;;;; -1D7F9;MATHEMATICAL MONOSPACE DIGIT THREE;Nd;0;EN; 0033;3;3;3;N;;;;; -1D7FA;MATHEMATICAL MONOSPACE DIGIT FOUR;Nd;0;EN; 0034;4;4;4;N;;;;; -1D7FB;MATHEMATICAL MONOSPACE DIGIT FIVE;Nd;0;EN; 0035;5;5;5;N;;;;; -1D7FC;MATHEMATICAL MONOSPACE DIGIT SIX;Nd;0;EN; 0036;6;6;6;N;;;;; -1D7FD;MATHEMATICAL MONOSPACE DIGIT SEVEN;Nd;0;EN; 0037;7;7;7;N;;;;; -1D7FE;MATHEMATICAL MONOSPACE DIGIT EIGHT;Nd;0;EN; 0038;8;8;8;N;;;;; -1D7FF;MATHEMATICAL MONOSPACE DIGIT NINE;Nd;0;EN; 0039;9;9;9;N;;;;; -1F000;MAHJONG TILE EAST WIND;So;0;ON;;;;;N;;;;; -1F001;MAHJONG TILE SOUTH WIND;So;0;ON;;;;;N;;;;; -1F002;MAHJONG TILE WEST WIND;So;0;ON;;;;;N;;;;; -1F003;MAHJONG TILE NORTH WIND;So;0;ON;;;;;N;;;;; -1F004;MAHJONG TILE RED DRAGON;So;0;ON;;;;;N;;;;; -1F005;MAHJONG TILE GREEN DRAGON;So;0;ON;;;;;N;;;;; -1F006;MAHJONG TILE WHITE DRAGON;So;0;ON;;;;;N;;;;; -1F007;MAHJONG TILE ONE OF CHARACTERS;So;0;ON;;;;;N;;;;; -1F008;MAHJONG TILE TWO OF CHARACTERS;So;0;ON;;;;;N;;;;; -1F009;MAHJONG TILE THREE OF CHARACTERS;So;0;ON;;;;;N;;;;; -1F00A;MAHJONG TILE FOUR OF CHARACTERS;So;0;ON;;;;;N;;;;; -1F00B;MAHJONG TILE FIVE OF CHARACTERS;So;0;ON;;;;;N;;;;; -1F00C;MAHJONG TILE SIX OF CHARACTERS;So;0;ON;;;;;N;;;;; -1F00D;MAHJONG TILE SEVEN OF CHARACTERS;So;0;ON;;;;;N;;;;; -1F00E;MAHJONG TILE EIGHT OF CHARACTERS;So;0;ON;;;;;N;;;;; -1F00F;MAHJONG TILE NINE OF CHARACTERS;So;0;ON;;;;;N;;;;; -1F010;MAHJONG TILE ONE OF BAMBOOS;So;0;ON;;;;;N;;;;; -1F011;MAHJONG TILE TWO OF BAMBOOS;So;0;ON;;;;;N;;;;; -1F012;MAHJONG TILE THREE OF BAMBOOS;So;0;ON;;;;;N;;;;; -1F013;MAHJONG TILE FOUR OF BAMBOOS;So;0;ON;;;;;N;;;;; -1F014;MAHJONG TILE FIVE OF BAMBOOS;So;0;ON;;;;;N;;;;; -1F015;MAHJONG TILE SIX OF BAMBOOS;So;0;ON;;;;;N;;;;; -1F016;MAHJONG TILE SEVEN OF BAMBOOS;So;0;ON;;;;;N;;;;; -1F017;MAHJONG TILE EIGHT OF BAMBOOS;So;0;ON;;;;;N;;;;; -1F018;MAHJONG TILE NINE OF BAMBOOS;So;0;ON;;;;;N;;;;; -1F019;MAHJONG TILE ONE OF CIRCLES;So;0;ON;;;;;N;;;;; -1F01A;MAHJONG TILE TWO OF CIRCLES;So;0;ON;;;;;N;;;;; -1F01B;MAHJONG TILE THREE OF CIRCLES;So;0;ON;;;;;N;;;;; -1F01C;MAHJONG TILE FOUR OF CIRCLES;So;0;ON;;;;;N;;;;; -1F01D;MAHJONG TILE FIVE OF CIRCLES;So;0;ON;;;;;N;;;;; -1F01E;MAHJONG TILE SIX OF CIRCLES;So;0;ON;;;;;N;;;;; -1F01F;MAHJONG TILE SEVEN OF CIRCLES;So;0;ON;;;;;N;;;;; -1F020;MAHJONG TILE EIGHT OF CIRCLES;So;0;ON;;;;;N;;;;; -1F021;MAHJONG TILE NINE OF CIRCLES;So;0;ON;;;;;N;;;;; -1F022;MAHJONG TILE PLUM;So;0;ON;;;;;N;;;;; -1F023;MAHJONG TILE ORCHID;So;0;ON;;;;;N;;;;; -1F024;MAHJONG TILE BAMBOO;So;0;ON;;;;;N;;;;; -1F025;MAHJONG TILE CHRYSANTHEMUM;So;0;ON;;;;;N;;;;; -1F026;MAHJONG TILE SPRING;So;0;ON;;;;;N;;;;; -1F027;MAHJONG TILE SUMMER;So;0;ON;;;;;N;;;;; -1F028;MAHJONG TILE AUTUMN;So;0;ON;;;;;N;;;;; -1F029;MAHJONG TILE WINTER;So;0;ON;;;;;N;;;;; -1F02A;MAHJONG TILE JOKER;So;0;ON;;;;;N;;;;; -1F02B;MAHJONG TILE BACK;So;0;ON;;;;;N;;;;; -1F030;DOMINO TILE HORIZONTAL BACK;So;0;ON;;;;;N;;;;; -1F031;DOMINO TILE HORIZONTAL-00-00;So;0;ON;;;;;N;;;;; -1F032;DOMINO TILE HORIZONTAL-00-01;So;0;ON;;;;;N;;;;; -1F033;DOMINO TILE HORIZONTAL-00-02;So;0;ON;;;;;N;;;;; -1F034;DOMINO TILE HORIZONTAL-00-03;So;0;ON;;;;;N;;;;; -1F035;DOMINO TILE HORIZONTAL-00-04;So;0;ON;;;;;N;;;;; -1F036;DOMINO TILE HORIZONTAL-00-05;So;0;ON;;;;;N;;;;; -1F037;DOMINO TILE HORIZONTAL-00-06;So;0;ON;;;;;N;;;;; -1F038;DOMINO TILE HORIZONTAL-01-00;So;0;ON;;;;;N;;;;; -1F039;DOMINO TILE HORIZONTAL-01-01;So;0;ON;;;;;N;;;;; -1F03A;DOMINO TILE HORIZONTAL-01-02;So;0;ON;;;;;N;;;;; -1F03B;DOMINO TILE HORIZONTAL-01-03;So;0;ON;;;;;N;;;;; -1F03C;DOMINO TILE HORIZONTAL-01-04;So;0;ON;;;;;N;;;;; -1F03D;DOMINO TILE HORIZONTAL-01-05;So;0;ON;;;;;N;;;;; -1F03E;DOMINO TILE HORIZONTAL-01-06;So;0;ON;;;;;N;;;;; -1F03F;DOMINO TILE HORIZONTAL-02-00;So;0;ON;;;;;N;;;;; -1F040;DOMINO TILE HORIZONTAL-02-01;So;0;ON;;;;;N;;;;; -1F041;DOMINO TILE HORIZONTAL-02-02;So;0;ON;;;;;N;;;;; -1F042;DOMINO TILE HORIZONTAL-02-03;So;0;ON;;;;;N;;;;; -1F043;DOMINO TILE HORIZONTAL-02-04;So;0;ON;;;;;N;;;;; -1F044;DOMINO TILE HORIZONTAL-02-05;So;0;ON;;;;;N;;;;; -1F045;DOMINO TILE HORIZONTAL-02-06;So;0;ON;;;;;N;;;;; -1F046;DOMINO TILE HORIZONTAL-03-00;So;0;ON;;;;;N;;;;; -1F047;DOMINO TILE HORIZONTAL-03-01;So;0;ON;;;;;N;;;;; -1F048;DOMINO TILE HORIZONTAL-03-02;So;0;ON;;;;;N;;;;; -1F049;DOMINO TILE HORIZONTAL-03-03;So;0;ON;;;;;N;;;;; -1F04A;DOMINO TILE HORIZONTAL-03-04;So;0;ON;;;;;N;;;;; -1F04B;DOMINO TILE HORIZONTAL-03-05;So;0;ON;;;;;N;;;;; -1F04C;DOMINO TILE HORIZONTAL-03-06;So;0;ON;;;;;N;;;;; -1F04D;DOMINO TILE HORIZONTAL-04-00;So;0;ON;;;;;N;;;;; -1F04E;DOMINO TILE HORIZONTAL-04-01;So;0;ON;;;;;N;;;;; -1F04F;DOMINO TILE HORIZONTAL-04-02;So;0;ON;;;;;N;;;;; -1F050;DOMINO TILE HORIZONTAL-04-03;So;0;ON;;;;;N;;;;; -1F051;DOMINO TILE HORIZONTAL-04-04;So;0;ON;;;;;N;;;;; -1F052;DOMINO TILE HORIZONTAL-04-05;So;0;ON;;;;;N;;;;; -1F053;DOMINO TILE HORIZONTAL-04-06;So;0;ON;;;;;N;;;;; -1F054;DOMINO TILE HORIZONTAL-05-00;So;0;ON;;;;;N;;;;; -1F055;DOMINO TILE HORIZONTAL-05-01;So;0;ON;;;;;N;;;;; -1F056;DOMINO TILE HORIZONTAL-05-02;So;0;ON;;;;;N;;;;; -1F057;DOMINO TILE HORIZONTAL-05-03;So;0;ON;;;;;N;;;;; -1F058;DOMINO TILE HORIZONTAL-05-04;So;0;ON;;;;;N;;;;; -1F059;DOMINO TILE HORIZONTAL-05-05;So;0;ON;;;;;N;;;;; -1F05A;DOMINO TILE HORIZONTAL-05-06;So;0;ON;;;;;N;;;;; -1F05B;DOMINO TILE HORIZONTAL-06-00;So;0;ON;;;;;N;;;;; -1F05C;DOMINO TILE HORIZONTAL-06-01;So;0;ON;;;;;N;;;;; -1F05D;DOMINO TILE HORIZONTAL-06-02;So;0;ON;;;;;N;;;;; -1F05E;DOMINO TILE HORIZONTAL-06-03;So;0;ON;;;;;N;;;;; -1F05F;DOMINO TILE HORIZONTAL-06-04;So;0;ON;;;;;N;;;;; -1F060;DOMINO TILE HORIZONTAL-06-05;So;0;ON;;;;;N;;;;; -1F061;DOMINO TILE HORIZONTAL-06-06;So;0;ON;;;;;N;;;;; -1F062;DOMINO TILE VERTICAL BACK;So;0;ON;;;;;N;;;;; -1F063;DOMINO TILE VERTICAL-00-00;So;0;ON;;;;;N;;;;; -1F064;DOMINO TILE VERTICAL-00-01;So;0;ON;;;;;N;;;;; -1F065;DOMINO TILE VERTICAL-00-02;So;0;ON;;;;;N;;;;; -1F066;DOMINO TILE VERTICAL-00-03;So;0;ON;;;;;N;;;;; -1F067;DOMINO TILE VERTICAL-00-04;So;0;ON;;;;;N;;;;; -1F068;DOMINO TILE VERTICAL-00-05;So;0;ON;;;;;N;;;;; -1F069;DOMINO TILE VERTICAL-00-06;So;0;ON;;;;;N;;;;; -1F06A;DOMINO TILE VERTICAL-01-00;So;0;ON;;;;;N;;;;; -1F06B;DOMINO TILE VERTICAL-01-01;So;0;ON;;;;;N;;;;; -1F06C;DOMINO TILE VERTICAL-01-02;So;0;ON;;;;;N;;;;; -1F06D;DOMINO TILE VERTICAL-01-03;So;0;ON;;;;;N;;;;; -1F06E;DOMINO TILE VERTICAL-01-04;So;0;ON;;;;;N;;;;; -1F06F;DOMINO TILE VERTICAL-01-05;So;0;ON;;;;;N;;;;; -1F070;DOMINO TILE VERTICAL-01-06;So;0;ON;;;;;N;;;;; -1F071;DOMINO TILE VERTICAL-02-00;So;0;ON;;;;;N;;;;; -1F072;DOMINO TILE VERTICAL-02-01;So;0;ON;;;;;N;;;;; -1F073;DOMINO TILE VERTICAL-02-02;So;0;ON;;;;;N;;;;; -1F074;DOMINO TILE VERTICAL-02-03;So;0;ON;;;;;N;;;;; -1F075;DOMINO TILE VERTICAL-02-04;So;0;ON;;;;;N;;;;; -1F076;DOMINO TILE VERTICAL-02-05;So;0;ON;;;;;N;;;;; -1F077;DOMINO TILE VERTICAL-02-06;So;0;ON;;;;;N;;;;; -1F078;DOMINO TILE VERTICAL-03-00;So;0;ON;;;;;N;;;;; -1F079;DOMINO TILE VERTICAL-03-01;So;0;ON;;;;;N;;;;; -1F07A;DOMINO TILE VERTICAL-03-02;So;0;ON;;;;;N;;;;; -1F07B;DOMINO TILE VERTICAL-03-03;So;0;ON;;;;;N;;;;; -1F07C;DOMINO TILE VERTICAL-03-04;So;0;ON;;;;;N;;;;; -1F07D;DOMINO TILE VERTICAL-03-05;So;0;ON;;;;;N;;;;; -1F07E;DOMINO TILE VERTICAL-03-06;So;0;ON;;;;;N;;;;; -1F07F;DOMINO TILE VERTICAL-04-00;So;0;ON;;;;;N;;;;; -1F080;DOMINO TILE VERTICAL-04-01;So;0;ON;;;;;N;;;;; -1F081;DOMINO TILE VERTICAL-04-02;So;0;ON;;;;;N;;;;; -1F082;DOMINO TILE VERTICAL-04-03;So;0;ON;;;;;N;;;;; -1F083;DOMINO TILE VERTICAL-04-04;So;0;ON;;;;;N;;;;; -1F084;DOMINO TILE VERTICAL-04-05;So;0;ON;;;;;N;;;;; -1F085;DOMINO TILE VERTICAL-04-06;So;0;ON;;;;;N;;;;; -1F086;DOMINO TILE VERTICAL-05-00;So;0;ON;;;;;N;;;;; -1F087;DOMINO TILE VERTICAL-05-01;So;0;ON;;;;;N;;;;; -1F088;DOMINO TILE VERTICAL-05-02;So;0;ON;;;;;N;;;;; -1F089;DOMINO TILE VERTICAL-05-03;So;0;ON;;;;;N;;;;; -1F08A;DOMINO TILE VERTICAL-05-04;So;0;ON;;;;;N;;;;; -1F08B;DOMINO TILE VERTICAL-05-05;So;0;ON;;;;;N;;;;; -1F08C;DOMINO TILE VERTICAL-05-06;So;0;ON;;;;;N;;;;; -1F08D;DOMINO TILE VERTICAL-06-00;So;0;ON;;;;;N;;;;; -1F08E;DOMINO TILE VERTICAL-06-01;So;0;ON;;;;;N;;;;; -1F08F;DOMINO TILE VERTICAL-06-02;So;0;ON;;;;;N;;;;; -1F090;DOMINO TILE VERTICAL-06-03;So;0;ON;;;;;N;;;;; -1F091;DOMINO TILE VERTICAL-06-04;So;0;ON;;;;;N;;;;; -1F092;DOMINO TILE VERTICAL-06-05;So;0;ON;;;;;N;;;;; -1F093;DOMINO TILE VERTICAL-06-06;So;0;ON;;;;;N;;;;; -1F0A0;PLAYING CARD BACK;So;0;ON;;;;;N;;;;; -1F0A1;PLAYING CARD ACE OF SPADES;So;0;ON;;;;;N;;;;; -1F0A2;PLAYING CARD TWO OF SPADES;So;0;ON;;;;;N;;;;; -1F0A3;PLAYING CARD THREE OF SPADES;So;0;ON;;;;;N;;;;; -1F0A4;PLAYING CARD FOUR OF SPADES;So;0;ON;;;;;N;;;;; -1F0A5;PLAYING CARD FIVE OF SPADES;So;0;ON;;;;;N;;;;; -1F0A6;PLAYING CARD SIX OF SPADES;So;0;ON;;;;;N;;;;; -1F0A7;PLAYING CARD SEVEN OF SPADES;So;0;ON;;;;;N;;;;; -1F0A8;PLAYING CARD EIGHT OF SPADES;So;0;ON;;;;;N;;;;; -1F0A9;PLAYING CARD NINE OF SPADES;So;0;ON;;;;;N;;;;; -1F0AA;PLAYING CARD TEN OF SPADES;So;0;ON;;;;;N;;;;; -1F0AB;PLAYING CARD JACK OF SPADES;So;0;ON;;;;;N;;;;; -1F0AC;PLAYING CARD KNIGHT OF SPADES;So;0;ON;;;;;N;;;;; -1F0AD;PLAYING CARD QUEEN OF SPADES;So;0;ON;;;;;N;;;;; -1F0AE;PLAYING CARD KING OF SPADES;So;0;ON;;;;;N;;;;; -1F0B1;PLAYING CARD ACE OF HEARTS;So;0;ON;;;;;N;;;;; -1F0B2;PLAYING CARD TWO OF HEARTS;So;0;ON;;;;;N;;;;; -1F0B3;PLAYING CARD THREE OF HEARTS;So;0;ON;;;;;N;;;;; -1F0B4;PLAYING CARD FOUR OF HEARTS;So;0;ON;;;;;N;;;;; -1F0B5;PLAYING CARD FIVE OF HEARTS;So;0;ON;;;;;N;;;;; -1F0B6;PLAYING CARD SIX OF HEARTS;So;0;ON;;;;;N;;;;; -1F0B7;PLAYING CARD SEVEN OF HEARTS;So;0;ON;;;;;N;;;;; -1F0B8;PLAYING CARD EIGHT OF HEARTS;So;0;ON;;;;;N;;;;; -1F0B9;PLAYING CARD NINE OF HEARTS;So;0;ON;;;;;N;;;;; -1F0BA;PLAYING CARD TEN OF HEARTS;So;0;ON;;;;;N;;;;; -1F0BB;PLAYING CARD JACK OF HEARTS;So;0;ON;;;;;N;;;;; -1F0BC;PLAYING CARD KNIGHT OF HEARTS;So;0;ON;;;;;N;;;;; -1F0BD;PLAYING CARD QUEEN OF HEARTS;So;0;ON;;;;;N;;;;; -1F0BE;PLAYING CARD KING OF HEARTS;So;0;ON;;;;;N;;;;; -1F0C1;PLAYING CARD ACE OF DIAMONDS;So;0;ON;;;;;N;;;;; -1F0C2;PLAYING CARD TWO OF DIAMONDS;So;0;ON;;;;;N;;;;; -1F0C3;PLAYING CARD THREE OF DIAMONDS;So;0;ON;;;;;N;;;;; -1F0C4;PLAYING CARD FOUR OF DIAMONDS;So;0;ON;;;;;N;;;;; -1F0C5;PLAYING CARD FIVE OF DIAMONDS;So;0;ON;;;;;N;;;;; -1F0C6;PLAYING CARD SIX OF DIAMONDS;So;0;ON;;;;;N;;;;; -1F0C7;PLAYING CARD SEVEN OF DIAMONDS;So;0;ON;;;;;N;;;;; -1F0C8;PLAYING CARD EIGHT OF DIAMONDS;So;0;ON;;;;;N;;;;; -1F0C9;PLAYING CARD NINE OF DIAMONDS;So;0;ON;;;;;N;;;;; -1F0CA;PLAYING CARD TEN OF DIAMONDS;So;0;ON;;;;;N;;;;; -1F0CB;PLAYING CARD JACK OF DIAMONDS;So;0;ON;;;;;N;;;;; -1F0CC;PLAYING CARD KNIGHT OF DIAMONDS;So;0;ON;;;;;N;;;;; -1F0CD;PLAYING CARD QUEEN OF DIAMONDS;So;0;ON;;;;;N;;;;; -1F0CE;PLAYING CARD KING OF DIAMONDS;So;0;ON;;;;;N;;;;; -1F0CF;PLAYING CARD BLACK JOKER;So;0;ON;;;;;N;;;;; -1F0D1;PLAYING CARD ACE OF CLUBS;So;0;ON;;;;;N;;;;; -1F0D2;PLAYING CARD TWO OF CLUBS;So;0;ON;;;;;N;;;;; -1F0D3;PLAYING CARD THREE OF CLUBS;So;0;ON;;;;;N;;;;; -1F0D4;PLAYING CARD FOUR OF CLUBS;So;0;ON;;;;;N;;;;; -1F0D5;PLAYING CARD FIVE OF CLUBS;So;0;ON;;;;;N;;;;; -1F0D6;PLAYING CARD SIX OF CLUBS;So;0;ON;;;;;N;;;;; -1F0D7;PLAYING CARD SEVEN OF CLUBS;So;0;ON;;;;;N;;;;; -1F0D8;PLAYING CARD EIGHT OF CLUBS;So;0;ON;;;;;N;;;;; -1F0D9;PLAYING CARD NINE OF CLUBS;So;0;ON;;;;;N;;;;; -1F0DA;PLAYING CARD TEN OF CLUBS;So;0;ON;;;;;N;;;;; -1F0DB;PLAYING CARD JACK OF CLUBS;So;0;ON;;;;;N;;;;; -1F0DC;PLAYING CARD KNIGHT OF CLUBS;So;0;ON;;;;;N;;;;; -1F0DD;PLAYING CARD QUEEN OF CLUBS;So;0;ON;;;;;N;;;;; -1F0DE;PLAYING CARD KING OF CLUBS;So;0;ON;;;;;N;;;;; -1F0DF;PLAYING CARD WHITE JOKER;So;0;ON;;;;;N;;;;; -1F100;DIGIT ZERO FULL STOP;No;0;EN; 0030 002E;;0;0;N;;;;; -1F101;DIGIT ZERO COMMA;No;0;EN; 0030 002C;;0;0;N;;;;; -1F102;DIGIT ONE COMMA;No;0;EN; 0031 002C;;1;1;N;;;;; -1F103;DIGIT TWO COMMA;No;0;EN; 0032 002C;;2;2;N;;;;; -1F104;DIGIT THREE COMMA;No;0;EN; 0033 002C;;3;3;N;;;;; -1F105;DIGIT FOUR COMMA;No;0;EN; 0034 002C;;4;4;N;;;;; -1F106;DIGIT FIVE COMMA;No;0;EN; 0035 002C;;5;5;N;;;;; -1F107;DIGIT SIX COMMA;No;0;EN; 0036 002C;;6;6;N;;;;; -1F108;DIGIT SEVEN COMMA;No;0;EN; 0037 002C;;7;7;N;;;;; -1F109;DIGIT EIGHT COMMA;No;0;EN; 0038 002C;;8;8;N;;;;; -1F10A;DIGIT NINE COMMA;No;0;EN; 0039 002C;;9;9;N;;;;; -1F110;PARENTHESIZED LATIN CAPITAL LETTER A;So;0;L; 0028 0041 0029;;;;N;;;;; -1F111;PARENTHESIZED LATIN CAPITAL LETTER B;So;0;L; 0028 0042 0029;;;;N;;;;; -1F112;PARENTHESIZED LATIN CAPITAL LETTER C;So;0;L; 0028 0043 0029;;;;N;;;;; -1F113;PARENTHESIZED LATIN CAPITAL LETTER D;So;0;L; 0028 0044 0029;;;;N;;;;; -1F114;PARENTHESIZED LATIN CAPITAL LETTER E;So;0;L; 0028 0045 0029;;;;N;;;;; -1F115;PARENTHESIZED LATIN CAPITAL LETTER F;So;0;L; 0028 0046 0029;;;;N;;;;; -1F116;PARENTHESIZED LATIN CAPITAL LETTER G;So;0;L; 0028 0047 0029;;;;N;;;;; -1F117;PARENTHESIZED LATIN CAPITAL LETTER H;So;0;L; 0028 0048 0029;;;;N;;;;; -1F118;PARENTHESIZED LATIN CAPITAL LETTER I;So;0;L; 0028 0049 0029;;;;N;;;;; -1F119;PARENTHESIZED LATIN CAPITAL LETTER J;So;0;L; 0028 004A 0029;;;;N;;;;; -1F11A;PARENTHESIZED LATIN CAPITAL LETTER K;So;0;L; 0028 004B 0029;;;;N;;;;; -1F11B;PARENTHESIZED LATIN CAPITAL LETTER L;So;0;L; 0028 004C 0029;;;;N;;;;; -1F11C;PARENTHESIZED LATIN CAPITAL LETTER M;So;0;L; 0028 004D 0029;;;;N;;;;; -1F11D;PARENTHESIZED LATIN CAPITAL LETTER N;So;0;L; 0028 004E 0029;;;;N;;;;; -1F11E;PARENTHESIZED LATIN CAPITAL LETTER O;So;0;L; 0028 004F 0029;;;;N;;;;; -1F11F;PARENTHESIZED LATIN CAPITAL LETTER P;So;0;L; 0028 0050 0029;;;;N;;;;; -1F120;PARENTHESIZED LATIN CAPITAL LETTER Q;So;0;L; 0028 0051 0029;;;;N;;;;; -1F121;PARENTHESIZED LATIN CAPITAL LETTER R;So;0;L; 0028 0052 0029;;;;N;;;;; -1F122;PARENTHESIZED LATIN CAPITAL LETTER S;So;0;L; 0028 0053 0029;;;;N;;;;; -1F123;PARENTHESIZED LATIN CAPITAL LETTER T;So;0;L; 0028 0054 0029;;;;N;;;;; -1F124;PARENTHESIZED LATIN CAPITAL LETTER U;So;0;L; 0028 0055 0029;;;;N;;;;; -1F125;PARENTHESIZED LATIN CAPITAL LETTER V;So;0;L; 0028 0056 0029;;;;N;;;;; -1F126;PARENTHESIZED LATIN CAPITAL LETTER W;So;0;L; 0028 0057 0029;;;;N;;;;; -1F127;PARENTHESIZED LATIN CAPITAL LETTER X;So;0;L; 0028 0058 0029;;;;N;;;;; -1F128;PARENTHESIZED LATIN CAPITAL LETTER Y;So;0;L; 0028 0059 0029;;;;N;;;;; -1F129;PARENTHESIZED LATIN CAPITAL LETTER Z;So;0;L; 0028 005A 0029;;;;N;;;;; -1F12A;TORTOISE SHELL BRACKETED LATIN CAPITAL LETTER S;So;0;L; 3014 0053 3015;;;;N;;;;; -1F12B;CIRCLED ITALIC LATIN CAPITAL LETTER C;So;0;L; 0043;;;;N;;;;; -1F12C;CIRCLED ITALIC LATIN CAPITAL LETTER R;So;0;L; 0052;;;;N;;;;; -1F12D;CIRCLED CD;So;0;L; 0043 0044;;;;N;;;;; -1F12E;CIRCLED WZ;So;0;L; 0057 005A;;;;N;;;;; -1F130;SQUARED LATIN CAPITAL LETTER A;So;0;L; 0041;;;;N;;;;; -1F131;SQUARED LATIN CAPITAL LETTER B;So;0;L; 0042;;;;N;;;;; -1F132;SQUARED LATIN CAPITAL LETTER C;So;0;L; 0043;;;;N;;;;; -1F133;SQUARED LATIN CAPITAL LETTER D;So;0;L; 0044;;;;N;;;;; -1F134;SQUARED LATIN CAPITAL LETTER E;So;0;L; 0045;;;;N;;;;; -1F135;SQUARED LATIN CAPITAL LETTER F;So;0;L; 0046;;;;N;;;;; -1F136;SQUARED LATIN CAPITAL LETTER G;So;0;L; 0047;;;;N;;;;; -1F137;SQUARED LATIN CAPITAL LETTER H;So;0;L; 0048;;;;N;;;;; -1F138;SQUARED LATIN CAPITAL LETTER I;So;0;L; 0049;;;;N;;;;; -1F139;SQUARED LATIN CAPITAL LETTER J;So;0;L; 004A;;;;N;;;;; -1F13A;SQUARED LATIN CAPITAL LETTER K;So;0;L; 004B;;;;N;;;;; -1F13B;SQUARED LATIN CAPITAL LETTER L;So;0;L; 004C;;;;N;;;;; -1F13C;SQUARED LATIN CAPITAL LETTER M;So;0;L; 004D;;;;N;;;;; -1F13D;SQUARED LATIN CAPITAL LETTER N;So;0;L; 004E;;;;N;;;;; -1F13E;SQUARED LATIN CAPITAL LETTER O;So;0;L; 004F;;;;N;;;;; -1F13F;SQUARED LATIN CAPITAL LETTER P;So;0;L; 0050;;;;N;;;;; -1F140;SQUARED LATIN CAPITAL LETTER Q;So;0;L; 0051;;;;N;;;;; -1F141;SQUARED LATIN CAPITAL LETTER R;So;0;L; 0052;;;;N;;;;; -1F142;SQUARED LATIN CAPITAL LETTER S;So;0;L; 0053;;;;N;;;;; -1F143;SQUARED LATIN CAPITAL LETTER T;So;0;L; 0054;;;;N;;;;; -1F144;SQUARED LATIN CAPITAL LETTER U;So;0;L; 0055;;;;N;;;;; -1F145;SQUARED LATIN CAPITAL LETTER V;So;0;L; 0056;;;;N;;;;; -1F146;SQUARED LATIN CAPITAL LETTER W;So;0;L; 0057;;;;N;;;;; -1F147;SQUARED LATIN CAPITAL LETTER X;So;0;L; 0058;;;;N;;;;; -1F148;SQUARED LATIN CAPITAL LETTER Y;So;0;L; 0059;;;;N;;;;; -1F149;SQUARED LATIN CAPITAL LETTER Z;So;0;L; 005A;;;;N;;;;; -1F14A;SQUARED HV;So;0;L; 0048 0056;;;;N;;;;; -1F14B;SQUARED MV;So;0;L; 004D 0056;;;;N;;;;; -1F14C;SQUARED SD;So;0;L; 0053 0044;;;;N;;;;; -1F14D;SQUARED SS;So;0;L; 0053 0053;;;;N;;;;; -1F14E;SQUARED PPV;So;0;L; 0050 0050 0056;;;;N;;;;; -1F14F;SQUARED WC;So;0;L; 0057 0043;;;;N;;;;; -1F150;NEGATIVE CIRCLED LATIN CAPITAL LETTER A;So;0;L;;;;;N;;;;; -1F151;NEGATIVE CIRCLED LATIN CAPITAL LETTER B;So;0;L;;;;;N;;;;; -1F152;NEGATIVE CIRCLED LATIN CAPITAL LETTER C;So;0;L;;;;;N;;;;; -1F153;NEGATIVE CIRCLED LATIN CAPITAL LETTER D;So;0;L;;;;;N;;;;; -1F154;NEGATIVE CIRCLED LATIN CAPITAL LETTER E;So;0;L;;;;;N;;;;; -1F155;NEGATIVE CIRCLED LATIN CAPITAL LETTER F;So;0;L;;;;;N;;;;; -1F156;NEGATIVE CIRCLED LATIN CAPITAL LETTER G;So;0;L;;;;;N;;;;; -1F157;NEGATIVE CIRCLED LATIN CAPITAL LETTER H;So;0;L;;;;;N;;;;; -1F158;NEGATIVE CIRCLED LATIN CAPITAL LETTER I;So;0;L;;;;;N;;;;; -1F159;NEGATIVE CIRCLED LATIN CAPITAL LETTER J;So;0;L;;;;;N;;;;; -1F15A;NEGATIVE CIRCLED LATIN CAPITAL LETTER K;So;0;L;;;;;N;;;;; -1F15B;NEGATIVE CIRCLED LATIN CAPITAL LETTER L;So;0;L;;;;;N;;;;; -1F15C;NEGATIVE CIRCLED LATIN CAPITAL LETTER M;So;0;L;;;;;N;;;;; -1F15D;NEGATIVE CIRCLED LATIN CAPITAL LETTER N;So;0;L;;;;;N;;;;; -1F15E;NEGATIVE CIRCLED LATIN CAPITAL LETTER O;So;0;L;;;;;N;;;;; -1F15F;NEGATIVE CIRCLED LATIN CAPITAL LETTER P;So;0;L;;;;;N;;;;; -1F160;NEGATIVE CIRCLED LATIN CAPITAL LETTER Q;So;0;L;;;;;N;;;;; -1F161;NEGATIVE CIRCLED LATIN CAPITAL LETTER R;So;0;L;;;;;N;;;;; -1F162;NEGATIVE CIRCLED LATIN CAPITAL LETTER S;So;0;L;;;;;N;;;;; -1F163;NEGATIVE CIRCLED LATIN CAPITAL LETTER T;So;0;L;;;;;N;;;;; -1F164;NEGATIVE CIRCLED LATIN CAPITAL LETTER U;So;0;L;;;;;N;;;;; -1F165;NEGATIVE CIRCLED LATIN CAPITAL LETTER V;So;0;L;;;;;N;;;;; -1F166;NEGATIVE CIRCLED LATIN CAPITAL LETTER W;So;0;L;;;;;N;;;;; -1F167;NEGATIVE CIRCLED LATIN CAPITAL LETTER X;So;0;L;;;;;N;;;;; -1F168;NEGATIVE CIRCLED LATIN CAPITAL LETTER Y;So;0;L;;;;;N;;;;; -1F169;NEGATIVE CIRCLED LATIN CAPITAL LETTER Z;So;0;L;;;;;N;;;;; -1F170;NEGATIVE SQUARED LATIN CAPITAL LETTER A;So;0;L;;;;;N;;;;; -1F171;NEGATIVE SQUARED LATIN CAPITAL LETTER B;So;0;L;;;;;N;;;;; -1F172;NEGATIVE SQUARED LATIN CAPITAL LETTER C;So;0;L;;;;;N;;;;; -1F173;NEGATIVE SQUARED LATIN CAPITAL LETTER D;So;0;L;;;;;N;;;;; -1F174;NEGATIVE SQUARED LATIN CAPITAL LETTER E;So;0;L;;;;;N;;;;; -1F175;NEGATIVE SQUARED LATIN CAPITAL LETTER F;So;0;L;;;;;N;;;;; -1F176;NEGATIVE SQUARED LATIN CAPITAL LETTER G;So;0;L;;;;;N;;;;; -1F177;NEGATIVE SQUARED LATIN CAPITAL LETTER H;So;0;L;;;;;N;;;;; -1F178;NEGATIVE SQUARED LATIN CAPITAL LETTER I;So;0;L;;;;;N;;;;; -1F179;NEGATIVE SQUARED LATIN CAPITAL LETTER J;So;0;L;;;;;N;;;;; -1F17A;NEGATIVE SQUARED LATIN CAPITAL LETTER K;So;0;L;;;;;N;;;;; -1F17B;NEGATIVE SQUARED LATIN CAPITAL LETTER L;So;0;L;;;;;N;;;;; -1F17C;NEGATIVE SQUARED LATIN CAPITAL LETTER M;So;0;L;;;;;N;;;;; -1F17D;NEGATIVE SQUARED LATIN CAPITAL LETTER N;So;0;L;;;;;N;;;;; -1F17E;NEGATIVE SQUARED LATIN CAPITAL LETTER O;So;0;L;;;;;N;;;;; -1F17F;NEGATIVE SQUARED LATIN CAPITAL LETTER P;So;0;L;;;;;N;;;;; -1F180;NEGATIVE SQUARED LATIN CAPITAL LETTER Q;So;0;L;;;;;N;;;;; -1F181;NEGATIVE SQUARED LATIN CAPITAL LETTER R;So;0;L;;;;;N;;;;; -1F182;NEGATIVE SQUARED LATIN CAPITAL LETTER S;So;0;L;;;;;N;;;;; -1F183;NEGATIVE SQUARED LATIN CAPITAL LETTER T;So;0;L;;;;;N;;;;; -1F184;NEGATIVE SQUARED LATIN CAPITAL LETTER U;So;0;L;;;;;N;;;;; -1F185;NEGATIVE SQUARED LATIN CAPITAL LETTER V;So;0;L;;;;;N;;;;; -1F186;NEGATIVE SQUARED LATIN CAPITAL LETTER W;So;0;L;;;;;N;;;;; -1F187;NEGATIVE SQUARED LATIN CAPITAL LETTER X;So;0;L;;;;;N;;;;; -1F188;NEGATIVE SQUARED LATIN CAPITAL LETTER Y;So;0;L;;;;;N;;;;; -1F189;NEGATIVE SQUARED LATIN CAPITAL LETTER Z;So;0;L;;;;;N;;;;; -1F18A;CROSSED NEGATIVE SQUARED LATIN CAPITAL LETTER P;So;0;L;;;;;N;;;;; -1F18B;NEGATIVE SQUARED IC;So;0;L;;;;;N;;;;; -1F18C;NEGATIVE SQUARED PA;So;0;L;;;;;N;;;;; -1F18D;NEGATIVE SQUARED SA;So;0;L;;;;;N;;;;; -1F18E;NEGATIVE SQUARED AB;So;0;L;;;;;N;;;;; -1F18F;NEGATIVE SQUARED WC;So;0;L;;;;;N;;;;; -1F190;SQUARE DJ;So;0;L; 0044 004A;;;;N;;;;; -1F191;SQUARED CL;So;0;L;;;;;N;;;;; -1F192;SQUARED COOL;So;0;L;;;;;N;;;;; -1F193;SQUARED FREE;So;0;L;;;;;N;;;;; -1F194;SQUARED ID;So;0;L;;;;;N;;;;; -1F195;SQUARED NEW;So;0;L;;;;;N;;;;; -1F196;SQUARED NG;So;0;L;;;;;N;;;;; -1F197;SQUARED OK;So;0;L;;;;;N;;;;; -1F198;SQUARED SOS;So;0;L;;;;;N;;;;; -1F199;SQUARED UP WITH EXCLAMATION MARK;So;0;L;;;;;N;;;;; -1F19A;SQUARED VS;So;0;L;;;;;N;;;;; -1F1E6;REGIONAL INDICATOR SYMBOL LETTER A;So;0;L;;;;;N;;;;; -1F1E7;REGIONAL INDICATOR SYMBOL LETTER B;So;0;L;;;;;N;;;;; -1F1E8;REGIONAL INDICATOR SYMBOL LETTER C;So;0;L;;;;;N;;;;; -1F1E9;REGIONAL INDICATOR SYMBOL LETTER D;So;0;L;;;;;N;;;;; -1F1EA;REGIONAL INDICATOR SYMBOL LETTER E;So;0;L;;;;;N;;;;; -1F1EB;REGIONAL INDICATOR SYMBOL LETTER F;So;0;L;;;;;N;;;;; -1F1EC;REGIONAL INDICATOR SYMBOL LETTER G;So;0;L;;;;;N;;;;; -1F1ED;REGIONAL INDICATOR SYMBOL LETTER H;So;0;L;;;;;N;;;;; -1F1EE;REGIONAL INDICATOR SYMBOL LETTER I;So;0;L;;;;;N;;;;; -1F1EF;REGIONAL INDICATOR SYMBOL LETTER J;So;0;L;;;;;N;;;;; -1F1F0;REGIONAL INDICATOR SYMBOL LETTER K;So;0;L;;;;;N;;;;; -1F1F1;REGIONAL INDICATOR SYMBOL LETTER L;So;0;L;;;;;N;;;;; -1F1F2;REGIONAL INDICATOR SYMBOL LETTER M;So;0;L;;;;;N;;;;; -1F1F3;REGIONAL INDICATOR SYMBOL LETTER N;So;0;L;;;;;N;;;;; -1F1F4;REGIONAL INDICATOR SYMBOL LETTER O;So;0;L;;;;;N;;;;; -1F1F5;REGIONAL INDICATOR SYMBOL LETTER P;So;0;L;;;;;N;;;;; -1F1F6;REGIONAL INDICATOR SYMBOL LETTER Q;So;0;L;;;;;N;;;;; -1F1F7;REGIONAL INDICATOR SYMBOL LETTER R;So;0;L;;;;;N;;;;; -1F1F8;REGIONAL INDICATOR SYMBOL LETTER S;So;0;L;;;;;N;;;;; -1F1F9;REGIONAL INDICATOR SYMBOL LETTER T;So;0;L;;;;;N;;;;; -1F1FA;REGIONAL INDICATOR SYMBOL LETTER U;So;0;L;;;;;N;;;;; -1F1FB;REGIONAL INDICATOR SYMBOL LETTER V;So;0;L;;;;;N;;;;; -1F1FC;REGIONAL INDICATOR SYMBOL LETTER W;So;0;L;;;;;N;;;;; -1F1FD;REGIONAL INDICATOR SYMBOL LETTER X;So;0;L;;;;;N;;;;; -1F1FE;REGIONAL INDICATOR SYMBOL LETTER Y;So;0;L;;;;;N;;;;; -1F1FF;REGIONAL INDICATOR SYMBOL LETTER Z;So;0;L;;;;;N;;;;; -1F200;SQUARE HIRAGANA HOKA;So;0;L; 307B 304B;;;;N;;;;; -1F201;SQUARED KATAKANA KOKO;So;0;L; 30B3 30B3;;;;N;;;;; -1F202;SQUARED KATAKANA SA;So;0;L; 30B5;;;;N;;;;; -1F210;SQUARED CJK UNIFIED IDEOGRAPH-624B;So;0;L; 624B;;;;N;;;;; -1F211;SQUARED CJK UNIFIED IDEOGRAPH-5B57;So;0;L; 5B57;;;;N;;;;; -1F212;SQUARED CJK UNIFIED IDEOGRAPH-53CC;So;0;L; 53CC;;;;N;;;;; -1F213;SQUARED KATAKANA DE;So;0;L; 30C7;;;;N;;;;; -1F214;SQUARED CJK UNIFIED IDEOGRAPH-4E8C;So;0;L; 4E8C;;;;N;;;;; -1F215;SQUARED CJK UNIFIED IDEOGRAPH-591A;So;0;L; 591A;;;;N;;;;; -1F216;SQUARED CJK UNIFIED IDEOGRAPH-89E3;So;0;L; 89E3;;;;N;;;;; -1F217;SQUARED CJK UNIFIED IDEOGRAPH-5929;So;0;L; 5929;;;;N;;;;; -1F218;SQUARED CJK UNIFIED IDEOGRAPH-4EA4;So;0;L; 4EA4;;;;N;;;;; -1F219;SQUARED CJK UNIFIED IDEOGRAPH-6620;So;0;L; 6620;;;;N;;;;; -1F21A;SQUARED CJK UNIFIED IDEOGRAPH-7121;So;0;L; 7121;;;;N;;;;; -1F21B;SQUARED CJK UNIFIED IDEOGRAPH-6599;So;0;L; 6599;;;;N;;;;; -1F21C;SQUARED CJK UNIFIED IDEOGRAPH-524D;So;0;L; 524D;;;;N;;;;; -1F21D;SQUARED CJK UNIFIED IDEOGRAPH-5F8C;So;0;L; 5F8C;;;;N;;;;; -1F21E;SQUARED CJK UNIFIED IDEOGRAPH-518D;So;0;L; 518D;;;;N;;;;; -1F21F;SQUARED CJK UNIFIED IDEOGRAPH-65B0;So;0;L; 65B0;;;;N;;;;; -1F220;SQUARED CJK UNIFIED IDEOGRAPH-521D;So;0;L; 521D;;;;N;;;;; -1F221;SQUARED CJK UNIFIED IDEOGRAPH-7D42;So;0;L; 7D42;;;;N;;;;; -1F222;SQUARED CJK UNIFIED IDEOGRAPH-751F;So;0;L; 751F;;;;N;;;;; -1F223;SQUARED CJK UNIFIED IDEOGRAPH-8CA9;So;0;L; 8CA9;;;;N;;;;; -1F224;SQUARED CJK UNIFIED IDEOGRAPH-58F0;So;0;L; 58F0;;;;N;;;;; -1F225;SQUARED CJK UNIFIED IDEOGRAPH-5439;So;0;L; 5439;;;;N;;;;; -1F226;SQUARED CJK UNIFIED IDEOGRAPH-6F14;So;0;L; 6F14;;;;N;;;;; -1F227;SQUARED CJK UNIFIED IDEOGRAPH-6295;So;0;L; 6295;;;;N;;;;; -1F228;SQUARED CJK UNIFIED IDEOGRAPH-6355;So;0;L; 6355;;;;N;;;;; -1F229;SQUARED CJK UNIFIED IDEOGRAPH-4E00;So;0;L; 4E00;;;;N;;;;; -1F22A;SQUARED CJK UNIFIED IDEOGRAPH-4E09;So;0;L; 4E09;;;;N;;;;; -1F22B;SQUARED CJK UNIFIED IDEOGRAPH-904A;So;0;L; 904A;;;;N;;;;; -1F22C;SQUARED CJK UNIFIED IDEOGRAPH-5DE6;So;0;L; 5DE6;;;;N;;;;; -1F22D;SQUARED CJK UNIFIED IDEOGRAPH-4E2D;So;0;L; 4E2D;;;;N;;;;; -1F22E;SQUARED CJK UNIFIED IDEOGRAPH-53F3;So;0;L; 53F3;;;;N;;;;; -1F22F;SQUARED CJK UNIFIED IDEOGRAPH-6307;So;0;L; 6307;;;;N;;;;; -1F230;SQUARED CJK UNIFIED IDEOGRAPH-8D70;So;0;L; 8D70;;;;N;;;;; -1F231;SQUARED CJK UNIFIED IDEOGRAPH-6253;So;0;L; 6253;;;;N;;;;; -1F232;SQUARED CJK UNIFIED IDEOGRAPH-7981;So;0;L; 7981;;;;N;;;;; -1F233;SQUARED CJK UNIFIED IDEOGRAPH-7A7A;So;0;L; 7A7A;;;;N;;;;; -1F234;SQUARED CJK UNIFIED IDEOGRAPH-5408;So;0;L; 5408;;;;N;;;;; -1F235;SQUARED CJK UNIFIED IDEOGRAPH-6E80;So;0;L; 6E80;;;;N;;;;; -1F236;SQUARED CJK UNIFIED IDEOGRAPH-6709;So;0;L; 6709;;;;N;;;;; -1F237;SQUARED CJK UNIFIED IDEOGRAPH-6708;So;0;L; 6708;;;;N;;;;; -1F238;SQUARED CJK UNIFIED IDEOGRAPH-7533;So;0;L; 7533;;;;N;;;;; -1F239;SQUARED CJK UNIFIED IDEOGRAPH-5272;So;0;L; 5272;;;;N;;;;; -1F23A;SQUARED CJK UNIFIED IDEOGRAPH-55B6;So;0;L; 55B6;;;;N;;;;; -1F240;TORTOISE SHELL BRACKETED CJK UNIFIED IDEOGRAPH-672C;So;0;L; 3014 672C 3015;;;;N;;;;; -1F241;TORTOISE SHELL BRACKETED CJK UNIFIED IDEOGRAPH-4E09;So;0;L; 3014 4E09 3015;;;;N;;;;; -1F242;TORTOISE SHELL BRACKETED CJK UNIFIED IDEOGRAPH-4E8C;So;0;L; 3014 4E8C 3015;;;;N;;;;; -1F243;TORTOISE SHELL BRACKETED CJK UNIFIED IDEOGRAPH-5B89;So;0;L; 3014 5B89 3015;;;;N;;;;; -1F244;TORTOISE SHELL BRACKETED CJK UNIFIED IDEOGRAPH-70B9;So;0;L; 3014 70B9 3015;;;;N;;;;; -1F245;TORTOISE SHELL BRACKETED CJK UNIFIED IDEOGRAPH-6253;So;0;L; 3014 6253 3015;;;;N;;;;; -1F246;TORTOISE SHELL BRACKETED CJK UNIFIED IDEOGRAPH-76D7;So;0;L; 3014 76D7 3015;;;;N;;;;; -1F247;TORTOISE SHELL BRACKETED CJK UNIFIED IDEOGRAPH-52DD;So;0;L; 3014 52DD 3015;;;;N;;;;; -1F248;TORTOISE SHELL BRACKETED CJK UNIFIED IDEOGRAPH-6557;So;0;L; 3014 6557 3015;;;;N;;;;; -1F250;CIRCLED IDEOGRAPH ADVANTAGE;So;0;L; 5F97;;;;N;;;;; -1F251;CIRCLED IDEOGRAPH ACCEPT;So;0;L; 53EF;;;;N;;;;; -1F300;CYCLONE;So;0;ON;;;;;N;;;;; -1F301;FOGGY;So;0;ON;;;;;N;;;;; -1F302;CLOSED UMBRELLA;So;0;ON;;;;;N;;;;; -1F303;NIGHT WITH STARS;So;0;ON;;;;;N;;;;; -1F304;SUNRISE OVER MOUNTAINS;So;0;ON;;;;;N;;;;; -1F305;SUNRISE;So;0;ON;;;;;N;;;;; -1F306;CITYSCAPE AT DUSK;So;0;ON;;;;;N;;;;; -1F307;SUNSET OVER BUILDINGS;So;0;ON;;;;;N;;;;; -1F308;RAINBOW;So;0;ON;;;;;N;;;;; -1F309;BRIDGE AT NIGHT;So;0;ON;;;;;N;;;;; -1F30A;WATER WAVE;So;0;ON;;;;;N;;;;; -1F30B;VOLCANO;So;0;ON;;;;;N;;;;; -1F30C;MILKY WAY;So;0;ON;;;;;N;;;;; -1F30D;EARTH GLOBE EUROPE-AFRICA;So;0;ON;;;;;N;;;;; -1F30E;EARTH GLOBE AMERICAS;So;0;ON;;;;;N;;;;; -1F30F;EARTH GLOBE ASIA-AUSTRALIA;So;0;ON;;;;;N;;;;; -1F310;GLOBE WITH MERIDIANS;So;0;ON;;;;;N;;;;; -1F311;NEW MOON SYMBOL;So;0;ON;;;;;N;;;;; -1F312;WAXING CRESCENT MOON SYMBOL;So;0;ON;;;;;N;;;;; -1F313;FIRST QUARTER MOON SYMBOL;So;0;ON;;;;;N;;;;; -1F314;WAXING GIBBOUS MOON SYMBOL;So;0;ON;;;;;N;;;;; -1F315;FULL MOON SYMBOL;So;0;ON;;;;;N;;;;; -1F316;WANING GIBBOUS MOON SYMBOL;So;0;ON;;;;;N;;;;; -1F317;LAST QUARTER MOON SYMBOL;So;0;ON;;;;;N;;;;; -1F318;WANING CRESCENT MOON SYMBOL;So;0;ON;;;;;N;;;;; -1F319;CRESCENT MOON;So;0;ON;;;;;N;;;;; -1F31A;NEW MOON WITH FACE;So;0;ON;;;;;N;;;;; -1F31B;FIRST QUARTER MOON WITH FACE;So;0;ON;;;;;N;;;;; -1F31C;LAST QUARTER MOON WITH FACE;So;0;ON;;;;;N;;;;; -1F31D;FULL MOON WITH FACE;So;0;ON;;;;;N;;;;; -1F31E;SUN WITH FACE;So;0;ON;;;;;N;;;;; -1F31F;GLOWING STAR;So;0;ON;;;;;N;;;;; -1F320;SHOOTING STAR;So;0;ON;;;;;N;;;;; -1F330;CHESTNUT;So;0;ON;;;;;N;;;;; -1F331;SEEDLING;So;0;ON;;;;;N;;;;; -1F332;EVERGREEN TREE;So;0;ON;;;;;N;;;;; -1F333;DECIDUOUS TREE;So;0;ON;;;;;N;;;;; -1F334;PALM TREE;So;0;ON;;;;;N;;;;; -1F335;CACTUS;So;0;ON;;;;;N;;;;; -1F337;TULIP;So;0;ON;;;;;N;;;;; -1F338;CHERRY BLOSSOM;So;0;ON;;;;;N;;;;; -1F339;ROSE;So;0;ON;;;;;N;;;;; -1F33A;HIBISCUS;So;0;ON;;;;;N;;;;; -1F33B;SUNFLOWER;So;0;ON;;;;;N;;;;; -1F33C;BLOSSOM;So;0;ON;;;;;N;;;;; -1F33D;EAR OF MAIZE;So;0;ON;;;;;N;;;;; -1F33E;EAR OF RICE;So;0;ON;;;;;N;;;;; -1F33F;HERB;So;0;ON;;;;;N;;;;; -1F340;FOUR LEAF CLOVER;So;0;ON;;;;;N;;;;; -1F341;MAPLE LEAF;So;0;ON;;;;;N;;;;; -1F342;FALLEN LEAF;So;0;ON;;;;;N;;;;; -1F343;LEAF FLUTTERING IN WIND;So;0;ON;;;;;N;;;;; -1F344;MUSHROOM;So;0;ON;;;;;N;;;;; -1F345;TOMATO;So;0;ON;;;;;N;;;;; -1F346;AUBERGINE;So;0;ON;;;;;N;;;;; -1F347;GRAPES;So;0;ON;;;;;N;;;;; -1F348;MELON;So;0;ON;;;;;N;;;;; -1F349;WATERMELON;So;0;ON;;;;;N;;;;; -1F34A;TANGERINE;So;0;ON;;;;;N;;;;; -1F34B;LEMON;So;0;ON;;;;;N;;;;; -1F34C;BANANA;So;0;ON;;;;;N;;;;; -1F34D;PINEAPPLE;So;0;ON;;;;;N;;;;; -1F34E;RED APPLE;So;0;ON;;;;;N;;;;; -1F34F;GREEN APPLE;So;0;ON;;;;;N;;;;; -1F350;PEAR;So;0;ON;;;;;N;;;;; -1F351;PEACH;So;0;ON;;;;;N;;;;; -1F352;CHERRIES;So;0;ON;;;;;N;;;;; -1F353;STRAWBERRY;So;0;ON;;;;;N;;;;; -1F354;HAMBURGER;So;0;ON;;;;;N;;;;; -1F355;SLICE OF PIZZA;So;0;ON;;;;;N;;;;; -1F356;MEAT ON BONE;So;0;ON;;;;;N;;;;; -1F357;POULTRY LEG;So;0;ON;;;;;N;;;;; -1F358;RICE CRACKER;So;0;ON;;;;;N;;;;; -1F359;RICE BALL;So;0;ON;;;;;N;;;;; -1F35A;COOKED RICE;So;0;ON;;;;;N;;;;; -1F35B;CURRY AND RICE;So;0;ON;;;;;N;;;;; -1F35C;STEAMING BOWL;So;0;ON;;;;;N;;;;; -1F35D;SPAGHETTI;So;0;ON;;;;;N;;;;; -1F35E;BREAD;So;0;ON;;;;;N;;;;; -1F35F;FRENCH FRIES;So;0;ON;;;;;N;;;;; -1F360;ROASTED SWEET POTATO;So;0;ON;;;;;N;;;;; -1F361;DANGO;So;0;ON;;;;;N;;;;; -1F362;ODEN;So;0;ON;;;;;N;;;;; -1F363;SUSHI;So;0;ON;;;;;N;;;;; -1F364;FRIED SHRIMP;So;0;ON;;;;;N;;;;; -1F365;FISH CAKE WITH SWIRL DESIGN;So;0;ON;;;;;N;;;;; -1F366;SOFT ICE CREAM;So;0;ON;;;;;N;;;;; -1F367;SHAVED ICE;So;0;ON;;;;;N;;;;; -1F368;ICE CREAM;So;0;ON;;;;;N;;;;; -1F369;DOUGHNUT;So;0;ON;;;;;N;;;;; -1F36A;COOKIE;So;0;ON;;;;;N;;;;; -1F36B;CHOCOLATE BAR;So;0;ON;;;;;N;;;;; -1F36C;CANDY;So;0;ON;;;;;N;;;;; -1F36D;LOLLIPOP;So;0;ON;;;;;N;;;;; -1F36E;CUSTARD;So;0;ON;;;;;N;;;;; -1F36F;HONEY POT;So;0;ON;;;;;N;;;;; -1F370;SHORTCAKE;So;0;ON;;;;;N;;;;; -1F371;BENTO BOX;So;0;ON;;;;;N;;;;; -1F372;POT OF FOOD;So;0;ON;;;;;N;;;;; -1F373;COOKING;So;0;ON;;;;;N;;;;; -1F374;FORK AND KNIFE;So;0;ON;;;;;N;;;;; -1F375;TEACUP WITHOUT HANDLE;So;0;ON;;;;;N;;;;; -1F376;SAKE BOTTLE AND CUP;So;0;ON;;;;;N;;;;; -1F377;WINE GLASS;So;0;ON;;;;;N;;;;; -1F378;COCKTAIL GLASS;So;0;ON;;;;;N;;;;; -1F379;TROPICAL DRINK;So;0;ON;;;;;N;;;;; -1F37A;BEER MUG;So;0;ON;;;;;N;;;;; -1F37B;CLINKING BEER MUGS;So;0;ON;;;;;N;;;;; -1F37C;BABY BOTTLE;So;0;ON;;;;;N;;;;; -1F380;RIBBON;So;0;ON;;;;;N;;;;; -1F381;WRAPPED PRESENT;So;0;ON;;;;;N;;;;; -1F382;BIRTHDAY CAKE;So;0;ON;;;;;N;;;;; -1F383;JACK-O-LANTERN;So;0;ON;;;;;N;;;;; -1F384;CHRISTMAS TREE;So;0;ON;;;;;N;;;;; -1F385;FATHER CHRISTMAS;So;0;ON;;;;;N;;;;; -1F386;FIREWORKS;So;0;ON;;;;;N;;;;; -1F387;FIREWORK SPARKLER;So;0;ON;;;;;N;;;;; -1F388;BALLOON;So;0;ON;;;;;N;;;;; -1F389;PARTY POPPER;So;0;ON;;;;;N;;;;; -1F38A;CONFETTI BALL;So;0;ON;;;;;N;;;;; -1F38B;TANABATA TREE;So;0;ON;;;;;N;;;;; -1F38C;CROSSED FLAGS;So;0;ON;;;;;N;;;;; -1F38D;PINE DECORATION;So;0;ON;;;;;N;;;;; -1F38E;JAPANESE DOLLS;So;0;ON;;;;;N;;;;; -1F38F;CARP STREAMER;So;0;ON;;;;;N;;;;; -1F390;WIND CHIME;So;0;ON;;;;;N;;;;; -1F391;MOON VIEWING CEREMONY;So;0;ON;;;;;N;;;;; -1F392;SCHOOL SATCHEL;So;0;ON;;;;;N;;;;; -1F393;GRADUATION CAP;So;0;ON;;;;;N;;;;; -1F3A0;CAROUSEL HORSE;So;0;ON;;;;;N;;;;; -1F3A1;FERRIS WHEEL;So;0;ON;;;;;N;;;;; -1F3A2;ROLLER COASTER;So;0;ON;;;;;N;;;;; -1F3A3;FISHING POLE AND FISH;So;0;ON;;;;;N;;;;; -1F3A4;MICROPHONE;So;0;ON;;;;;N;;;;; -1F3A5;MOVIE CAMERA;So;0;ON;;;;;N;;;;; -1F3A6;CINEMA;So;0;ON;;;;;N;;;;; -1F3A7;HEADPHONE;So;0;ON;;;;;N;;;;; -1F3A8;ARTIST PALETTE;So;0;ON;;;;;N;;;;; -1F3A9;TOP HAT;So;0;ON;;;;;N;;;;; -1F3AA;CIRCUS TENT;So;0;ON;;;;;N;;;;; -1F3AB;TICKET;So;0;ON;;;;;N;;;;; -1F3AC;CLAPPER BOARD;So;0;ON;;;;;N;;;;; -1F3AD;PERFORMING ARTS;So;0;ON;;;;;N;;;;; -1F3AE;VIDEO GAME;So;0;ON;;;;;N;;;;; -1F3AF;DIRECT HIT;So;0;ON;;;;;N;;;;; -1F3B0;SLOT MACHINE;So;0;ON;;;;;N;;;;; -1F3B1;BILLIARDS;So;0;ON;;;;;N;;;;; -1F3B2;GAME DIE;So;0;ON;;;;;N;;;;; -1F3B3;BOWLING;So;0;ON;;;;;N;;;;; -1F3B4;FLOWER PLAYING CARDS;So;0;ON;;;;;N;;;;; -1F3B5;MUSICAL NOTE;So;0;ON;;;;;N;;;;; -1F3B6;MULTIPLE MUSICAL NOTES;So;0;ON;;;;;N;;;;; -1F3B7;SAXOPHONE;So;0;ON;;;;;N;;;;; -1F3B8;GUITAR;So;0;ON;;;;;N;;;;; -1F3B9;MUSICAL KEYBOARD;So;0;ON;;;;;N;;;;; -1F3BA;TRUMPET;So;0;ON;;;;;N;;;;; -1F3BB;VIOLIN;So;0;ON;;;;;N;;;;; -1F3BC;MUSICAL SCORE;So;0;ON;;;;;N;;;;; -1F3BD;RUNNING SHIRT WITH SASH;So;0;ON;;;;;N;;;;; -1F3BE;TENNIS RACQUET AND BALL;So;0;ON;;;;;N;;;;; -1F3BF;SKI AND SKI BOOT;So;0;ON;;;;;N;;;;; -1F3C0;BASKETBALL AND HOOP;So;0;ON;;;;;N;;;;; -1F3C1;CHEQUERED FLAG;So;0;ON;;;;;N;;;;; -1F3C2;SNOWBOARDER;So;0;ON;;;;;N;;;;; -1F3C3;RUNNER;So;0;ON;;;;;N;;;;; -1F3C4;SURFER;So;0;ON;;;;;N;;;;; -1F3C6;TROPHY;So;0;ON;;;;;N;;;;; -1F3C7;HORSE RACING;So;0;ON;;;;;N;;;;; -1F3C8;AMERICAN FOOTBALL;So;0;ON;;;;;N;;;;; -1F3C9;RUGBY FOOTBALL;So;0;ON;;;;;N;;;;; -1F3CA;SWIMMER;So;0;ON;;;;;N;;;;; -1F3E0;HOUSE BUILDING;So;0;ON;;;;;N;;;;; -1F3E1;HOUSE WITH GARDEN;So;0;ON;;;;;N;;;;; -1F3E2;OFFICE BUILDING;So;0;ON;;;;;N;;;;; -1F3E3;JAPANESE POST OFFICE;So;0;ON;;;;;N;;;;; -1F3E4;EUROPEAN POST OFFICE;So;0;ON;;;;;N;;;;; -1F3E5;HOSPITAL;So;0;ON;;;;;N;;;;; -1F3E6;BANK;So;0;ON;;;;;N;;;;; -1F3E7;AUTOMATED TELLER MACHINE;So;0;ON;;;;;N;;;;; -1F3E8;HOTEL;So;0;ON;;;;;N;;;;; -1F3E9;LOVE HOTEL;So;0;ON;;;;;N;;;;; -1F3EA;CONVENIENCE STORE;So;0;ON;;;;;N;;;;; -1F3EB;SCHOOL;So;0;ON;;;;;N;;;;; -1F3EC;DEPARTMENT STORE;So;0;ON;;;;;N;;;;; -1F3ED;FACTORY;So;0;ON;;;;;N;;;;; -1F3EE;IZAKAYA LANTERN;So;0;ON;;;;;N;;;;; -1F3EF;JAPANESE CASTLE;So;0;ON;;;;;N;;;;; -1F3F0;EUROPEAN CASTLE;So;0;ON;;;;;N;;;;; -1F400;RAT;So;0;ON;;;;;N;;;;; -1F401;MOUSE;So;0;ON;;;;;N;;;;; -1F402;OX;So;0;ON;;;;;N;;;;; -1F403;WATER BUFFALO;So;0;ON;;;;;N;;;;; -1F404;COW;So;0;ON;;;;;N;;;;; -1F405;TIGER;So;0;ON;;;;;N;;;;; -1F406;LEOPARD;So;0;ON;;;;;N;;;;; -1F407;RABBIT;So;0;ON;;;;;N;;;;; -1F408;CAT;So;0;ON;;;;;N;;;;; -1F409;DRAGON;So;0;ON;;;;;N;;;;; -1F40A;CROCODILE;So;0;ON;;;;;N;;;;; -1F40B;WHALE;So;0;ON;;;;;N;;;;; -1F40C;SNAIL;So;0;ON;;;;;N;;;;; -1F40D;SNAKE;So;0;ON;;;;;N;;;;; -1F40E;HORSE;So;0;ON;;;;;N;;;;; -1F40F;RAM;So;0;ON;;;;;N;;;;; -1F410;GOAT;So;0;ON;;;;;N;;;;; -1F411;SHEEP;So;0;ON;;;;;N;;;;; -1F412;MONKEY;So;0;ON;;;;;N;;;;; -1F413;ROOSTER;So;0;ON;;;;;N;;;;; -1F414;CHICKEN;So;0;ON;;;;;N;;;;; -1F415;DOG;So;0;ON;;;;;N;;;;; -1F416;PIG;So;0;ON;;;;;N;;;;; -1F417;BOAR;So;0;ON;;;;;N;;;;; -1F418;ELEPHANT;So;0;ON;;;;;N;;;;; -1F419;OCTOPUS;So;0;ON;;;;;N;;;;; -1F41A;SPIRAL SHELL;So;0;ON;;;;;N;;;;; -1F41B;BUG;So;0;ON;;;;;N;;;;; -1F41C;ANT;So;0;ON;;;;;N;;;;; -1F41D;HONEYBEE;So;0;ON;;;;;N;;;;; -1F41E;LADY BEETLE;So;0;ON;;;;;N;;;;; -1F41F;FISH;So;0;ON;;;;;N;;;;; -1F420;TROPICAL FISH;So;0;ON;;;;;N;;;;; -1F421;BLOWFISH;So;0;ON;;;;;N;;;;; -1F422;TURTLE;So;0;ON;;;;;N;;;;; -1F423;HATCHING CHICK;So;0;ON;;;;;N;;;;; -1F424;BABY CHICK;So;0;ON;;;;;N;;;;; -1F425;FRONT-FACING BABY CHICK;So;0;ON;;;;;N;;;;; -1F426;BIRD;So;0;ON;;;;;N;;;;; -1F427;PENGUIN;So;0;ON;;;;;N;;;;; -1F428;KOALA;So;0;ON;;;;;N;;;;; -1F429;POODLE;So;0;ON;;;;;N;;;;; -1F42A;DROMEDARY CAMEL;So;0;ON;;;;;N;;;;; -1F42B;BACTRIAN CAMEL;So;0;ON;;;;;N;;;;; -1F42C;DOLPHIN;So;0;ON;;;;;N;;;;; -1F42D;MOUSE FACE;So;0;ON;;;;;N;;;;; -1F42E;COW FACE;So;0;ON;;;;;N;;;;; -1F42F;TIGER FACE;So;0;ON;;;;;N;;;;; -1F430;RABBIT FACE;So;0;ON;;;;;N;;;;; -1F431;CAT FACE;So;0;ON;;;;;N;;;;; -1F432;DRAGON FACE;So;0;ON;;;;;N;;;;; -1F433;SPOUTING WHALE;So;0;ON;;;;;N;;;;; -1F434;HORSE FACE;So;0;ON;;;;;N;;;;; -1F435;MONKEY FACE;So;0;ON;;;;;N;;;;; -1F436;DOG FACE;So;0;ON;;;;;N;;;;; -1F437;PIG FACE;So;0;ON;;;;;N;;;;; -1F438;FROG FACE;So;0;ON;;;;;N;;;;; -1F439;HAMSTER FACE;So;0;ON;;;;;N;;;;; -1F43A;WOLF FACE;So;0;ON;;;;;N;;;;; -1F43B;BEAR FACE;So;0;ON;;;;;N;;;;; -1F43C;PANDA FACE;So;0;ON;;;;;N;;;;; -1F43D;PIG NOSE;So;0;ON;;;;;N;;;;; -1F43E;PAW PRINTS;So;0;ON;;;;;N;;;;; -1F440;EYES;So;0;ON;;;;;N;;;;; -1F442;EAR;So;0;ON;;;;;N;;;;; -1F443;NOSE;So;0;ON;;;;;N;;;;; -1F444;MOUTH;So;0;ON;;;;;N;;;;; -1F445;TONGUE;So;0;ON;;;;;N;;;;; -1F446;WHITE UP POINTING BACKHAND INDEX;So;0;ON;;;;;N;;;;; -1F447;WHITE DOWN POINTING BACKHAND INDEX;So;0;ON;;;;;N;;;;; -1F448;WHITE LEFT POINTING BACKHAND INDEX;So;0;ON;;;;;N;;;;; -1F449;WHITE RIGHT POINTING BACKHAND INDEX;So;0;ON;;;;;N;;;;; -1F44A;FISTED HAND SIGN;So;0;ON;;;;;N;;;;; -1F44B;WAVING HAND SIGN;So;0;ON;;;;;N;;;;; -1F44C;OK HAND SIGN;So;0;ON;;;;;N;;;;; -1F44D;THUMBS UP SIGN;So;0;ON;;;;;N;;;;; -1F44E;THUMBS DOWN SIGN;So;0;ON;;;;;N;;;;; -1F44F;CLAPPING HANDS SIGN;So;0;ON;;;;;N;;;;; -1F450;OPEN HANDS SIGN;So;0;ON;;;;;N;;;;; -1F451;CROWN;So;0;ON;;;;;N;;;;; -1F452;WOMANS HAT;So;0;ON;;;;;N;;;;; -1F453;EYEGLASSES;So;0;ON;;;;;N;;;;; -1F454;NECKTIE;So;0;ON;;;;;N;;;;; -1F455;T-SHIRT;So;0;ON;;;;;N;;;;; -1F456;JEANS;So;0;ON;;;;;N;;;;; -1F457;DRESS;So;0;ON;;;;;N;;;;; -1F458;KIMONO;So;0;ON;;;;;N;;;;; -1F459;BIKINI;So;0;ON;;;;;N;;;;; -1F45A;WOMANS CLOTHES;So;0;ON;;;;;N;;;;; -1F45B;PURSE;So;0;ON;;;;;N;;;;; -1F45C;HANDBAG;So;0;ON;;;;;N;;;;; -1F45D;POUCH;So;0;ON;;;;;N;;;;; -1F45E;MANS SHOE;So;0;ON;;;;;N;;;;; -1F45F;ATHLETIC SHOE;So;0;ON;;;;;N;;;;; -1F460;HIGH-HEELED SHOE;So;0;ON;;;;;N;;;;; -1F461;WOMANS SANDAL;So;0;ON;;;;;N;;;;; -1F462;WOMANS BOOTS;So;0;ON;;;;;N;;;;; -1F463;FOOTPRINTS;So;0;ON;;;;;N;;;;; -1F464;BUST IN SILHOUETTE;So;0;ON;;;;;N;;;;; -1F465;BUSTS IN SILHOUETTE;So;0;ON;;;;;N;;;;; -1F466;BOY;So;0;ON;;;;;N;;;;; -1F467;GIRL;So;0;ON;;;;;N;;;;; -1F468;MAN;So;0;ON;;;;;N;;;;; -1F469;WOMAN;So;0;ON;;;;;N;;;;; -1F46A;FAMILY;So;0;ON;;;;;N;;;;; -1F46B;MAN AND WOMAN HOLDING HANDS;So;0;ON;;;;;N;;;;; -1F46C;TWO MEN HOLDING HANDS;So;0;ON;;;;;N;;;;; -1F46D;TWO WOMEN HOLDING HANDS;So;0;ON;;;;;N;;;;; -1F46E;POLICE OFFICER;So;0;ON;;;;;N;;;;; -1F46F;WOMAN WITH BUNNY EARS;So;0;ON;;;;;N;;;;; -1F470;BRIDE WITH VEIL;So;0;ON;;;;;N;;;;; -1F471;PERSON WITH BLOND HAIR;So;0;ON;;;;;N;;;;; -1F472;MAN WITH GUA PI MAO;So;0;ON;;;;;N;;;;; -1F473;MAN WITH TURBAN;So;0;ON;;;;;N;;;;; -1F474;OLDER MAN;So;0;ON;;;;;N;;;;; -1F475;OLDER WOMAN;So;0;ON;;;;;N;;;;; -1F476;BABY;So;0;ON;;;;;N;;;;; -1F477;CONSTRUCTION WORKER;So;0;ON;;;;;N;;;;; -1F478;PRINCESS;So;0;ON;;;;;N;;;;; -1F479;JAPANESE OGRE;So;0;ON;;;;;N;;;;; -1F47A;JAPANESE GOBLIN;So;0;ON;;;;;N;;;;; -1F47B;GHOST;So;0;ON;;;;;N;;;;; -1F47C;BABY ANGEL;So;0;ON;;;;;N;;;;; -1F47D;EXTRATERRESTRIAL ALIEN;So;0;ON;;;;;N;;;;; -1F47E;ALIEN MONSTER;So;0;ON;;;;;N;;;;; -1F47F;IMP;So;0;ON;;;;;N;;;;; -1F480;SKULL;So;0;ON;;;;;N;;;;; -1F481;INFORMATION DESK PERSON;So;0;ON;;;;;N;;;;; -1F482;GUARDSMAN;So;0;ON;;;;;N;;;;; -1F483;DANCER;So;0;ON;;;;;N;;;;; -1F484;LIPSTICK;So;0;ON;;;;;N;;;;; -1F485;NAIL POLISH;So;0;ON;;;;;N;;;;; -1F486;FACE MASSAGE;So;0;ON;;;;;N;;;;; -1F487;HAIRCUT;So;0;ON;;;;;N;;;;; -1F488;BARBER POLE;So;0;ON;;;;;N;;;;; -1F489;SYRINGE;So;0;ON;;;;;N;;;;; -1F48A;PILL;So;0;ON;;;;;N;;;;; -1F48B;KISS MARK;So;0;ON;;;;;N;;;;; -1F48C;LOVE LETTER;So;0;L;;;;;N;;;;; -1F48D;RING;So;0;ON;;;;;N;;;;; -1F48E;GEM STONE;So;0;ON;;;;;N;;;;; -1F48F;KISS;So;0;ON;;;;;N;;;;; -1F490;BOUQUET;So;0;ON;;;;;N;;;;; -1F491;COUPLE WITH HEART;So;0;ON;;;;;N;;;;; -1F492;WEDDING;So;0;ON;;;;;N;;;;; -1F493;BEATING HEART;So;0;ON;;;;;N;;;;; -1F494;BROKEN HEART;So;0;ON;;;;;N;;;;; -1F495;TWO HEARTS;So;0;ON;;;;;N;;;;; -1F496;SPARKLING HEART;So;0;ON;;;;;N;;;;; -1F497;GROWING HEART;So;0;ON;;;;;N;;;;; -1F498;HEART WITH ARROW;So;0;ON;;;;;N;;;;; -1F499;BLUE HEART;So;0;ON;;;;;N;;;;; -1F49A;GREEN HEART;So;0;ON;;;;;N;;;;; -1F49B;YELLOW HEART;So;0;ON;;;;;N;;;;; -1F49C;PURPLE HEART;So;0;ON;;;;;N;;;;; -1F49D;HEART WITH RIBBON;So;0;ON;;;;;N;;;;; -1F49E;REVOLVING HEARTS;So;0;ON;;;;;N;;;;; -1F49F;HEART DECORATION;So;0;ON;;;;;N;;;;; -1F4A0;DIAMOND SHAPE WITH A DOT INSIDE;So;0;ON;;;;;N;;;;; -1F4A1;ELECTRIC LIGHT BULB;So;0;ON;;;;;N;;;;; -1F4A2;ANGER SYMBOL;So;0;ON;;;;;N;;;;; -1F4A3;BOMB;So;0;ON;;;;;N;;;;; -1F4A4;SLEEPING SYMBOL;So;0;ON;;;;;N;;;;; -1F4A5;COLLISION SYMBOL;So;0;ON;;;;;N;;;;; -1F4A6;SPLASHING SWEAT SYMBOL;So;0;ON;;;;;N;;;;; -1F4A7;DROPLET;So;0;ON;;;;;N;;;;; -1F4A8;DASH SYMBOL;So;0;ON;;;;;N;;;;; -1F4A9;PILE OF POO;So;0;ON;;;;;N;;;;; -1F4AA;FLEXED BICEPS;So;0;ON;;;;;N;;;;; -1F4AB;DIZZY SYMBOL;So;0;ON;;;;;N;;;;; -1F4AC;SPEECH BALLOON;So;0;ON;;;;;N;;;;; -1F4AD;THOUGHT BALLOON;So;0;ON;;;;;N;;;;; -1F4AE;WHITE FLOWER;So;0;ON;;;;;N;;;;; -1F4AF;HUNDRED POINTS SYMBOL;So;0;ON;;;;;N;;;;; -1F4B0;MONEY BAG;So;0;ON;;;;;N;;;;; -1F4B1;CURRENCY EXCHANGE;So;0;ON;;;;;N;;;;; -1F4B2;HEAVY DOLLAR SIGN;So;0;ON;;;;;N;;;;; -1F4B3;CREDIT CARD;So;0;ON;;;;;N;;;;; -1F4B4;BANKNOTE WITH YEN SIGN;So;0;ON;;;;;N;;;;; -1F4B5;BANKNOTE WITH DOLLAR SIGN;So;0;ON;;;;;N;;;;; -1F4B6;BANKNOTE WITH EURO SIGN;So;0;ON;;;;;N;;;;; -1F4B7;BANKNOTE WITH POUND SIGN;So;0;ON;;;;;N;;;;; -1F4B8;MONEY WITH WINGS;So;0;ON;;;;;N;;;;; -1F4B9;CHART WITH UPWARDS TREND AND YEN SIGN;So;0;ON;;;;;N;;;;; -1F4BA;SEAT;So;0;ON;;;;;N;;;;; -1F4BB;PERSONAL COMPUTER;So;0;ON;;;;;N;;;;; -1F4BC;BRIEFCASE;So;0;ON;;;;;N;;;;; -1F4BD;MINIDISC;So;0;ON;;;;;N;;;;; -1F4BE;FLOPPY DISK;So;0;ON;;;;;N;;;;; -1F4BF;OPTICAL DISC;So;0;ON;;;;;N;;;;; -1F4C0;DVD;So;0;ON;;;;;N;;;;; -1F4C1;FILE FOLDER;So;0;ON;;;;;N;;;;; -1F4C2;OPEN FILE FOLDER;So;0;ON;;;;;N;;;;; -1F4C3;PAGE WITH CURL;So;0;ON;;;;;N;;;;; -1F4C4;PAGE FACING UP;So;0;ON;;;;;N;;;;; -1F4C5;CALENDAR;So;0;ON;;;;;N;;;;; -1F4C6;TEAR-OFF CALENDAR;So;0;ON;;;;;N;;;;; -1F4C7;CARD INDEX;So;0;ON;;;;;N;;;;; -1F4C8;CHART WITH UPWARDS TREND;So;0;ON;;;;;N;;;;; -1F4C9;CHART WITH DOWNWARDS TREND;So;0;ON;;;;;N;;;;; -1F4CA;BAR CHART;So;0;ON;;;;;N;;;;; -1F4CB;CLIPBOARD;So;0;ON;;;;;N;;;;; -1F4CC;PUSHPIN;So;0;ON;;;;;N;;;;; -1F4CD;ROUND PUSHPIN;So;0;ON;;;;;N;;;;; -1F4CE;PAPERCLIP;So;0;ON;;;;;N;;;;; -1F4CF;STRAIGHT RULER;So;0;ON;;;;;N;;;;; -1F4D0;TRIANGULAR RULER;So;0;ON;;;;;N;;;;; -1F4D1;BOOKMARK TABS;So;0;ON;;;;;N;;;;; -1F4D2;LEDGER;So;0;ON;;;;;N;;;;; -1F4D3;NOTEBOOK;So;0;ON;;;;;N;;;;; -1F4D4;NOTEBOOK WITH DECORATIVE COVER;So;0;ON;;;;;N;;;;; -1F4D5;CLOSED BOOK;So;0;ON;;;;;N;;;;; -1F4D6;OPEN BOOK;So;0;ON;;;;;N;;;;; -1F4D7;GREEN BOOK;So;0;ON;;;;;N;;;;; -1F4D8;BLUE BOOK;So;0;ON;;;;;N;;;;; -1F4D9;ORANGE BOOK;So;0;ON;;;;;N;;;;; -1F4DA;BOOKS;So;0;ON;;;;;N;;;;; -1F4DB;NAME BADGE;So;0;ON;;;;;N;;;;; -1F4DC;SCROLL;So;0;ON;;;;;N;;;;; -1F4DD;MEMO;So;0;ON;;;;;N;;;;; -1F4DE;TELEPHONE RECEIVER;So;0;ON;;;;;N;;;;; -1F4DF;PAGER;So;0;ON;;;;;N;;;;; -1F4E0;FAX MACHINE;So;0;ON;;;;;N;;;;; -1F4E1;SATELLITE ANTENNA;So;0;ON;;;;;N;;;;; -1F4E2;PUBLIC ADDRESS LOUDSPEAKER;So;0;ON;;;;;N;;;;; -1F4E3;CHEERING MEGAPHONE;So;0;ON;;;;;N;;;;; -1F4E4;OUTBOX TRAY;So;0;ON;;;;;N;;;;; -1F4E5;INBOX TRAY;So;0;ON;;;;;N;;;;; -1F4E6;PACKAGE;So;0;ON;;;;;N;;;;; -1F4E7;E-MAIL SYMBOL;So;0;ON;;;;;N;;;;; -1F4E8;INCOMING ENVELOPE;So;0;ON;;;;;N;;;;; -1F4E9;ENVELOPE WITH DOWNWARDS ARROW ABOVE;So;0;ON;;;;;N;;;;; -1F4EA;CLOSED MAILBOX WITH LOWERED FLAG;So;0;ON;;;;;N;;;;; -1F4EB;CLOSED MAILBOX WITH RAISED FLAG;So;0;ON;;;;;N;;;;; -1F4EC;OPEN MAILBOX WITH RAISED FLAG;So;0;ON;;;;;N;;;;; -1F4ED;OPEN MAILBOX WITH LOWERED FLAG;So;0;ON;;;;;N;;;;; -1F4EE;POSTBOX;So;0;ON;;;;;N;;;;; -1F4EF;POSTAL HORN;So;0;ON;;;;;N;;;;; -1F4F0;NEWSPAPER;So;0;ON;;;;;N;;;;; -1F4F1;MOBILE PHONE;So;0;ON;;;;;N;;;;; -1F4F2;MOBILE PHONE WITH RIGHTWARDS ARROW AT LEFT;So;0;ON;;;;;N;;;;; -1F4F3;VIBRATION MODE;So;0;ON;;;;;N;;;;; -1F4F4;MOBILE PHONE OFF;So;0;ON;;;;;N;;;;; -1F4F5;NO MOBILE PHONES;So;0;ON;;;;;N;;;;; -1F4F6;ANTENNA WITH BARS;So;0;ON;;;;;N;;;;; -1F4F7;CAMERA;So;0;ON;;;;;N;;;;; -1F4F9;VIDEO CAMERA;So;0;ON;;;;;N;;;;; -1F4FA;TELEVISION;So;0;ON;;;;;N;;;;; -1F4FB;RADIO;So;0;ON;;;;;N;;;;; -1F4FC;VIDEOCASSETTE;So;0;ON;;;;;N;;;;; -1F500;TWISTED RIGHTWARDS ARROWS;So;0;ON;;;;;N;;;;; -1F501;CLOCKWISE RIGHTWARDS AND LEFTWARDS OPEN CIRCLE ARROWS;So;0;ON;;;;;N;;;;; -1F502;CLOCKWISE RIGHTWARDS AND LEFTWARDS OPEN CIRCLE ARROWS WITH CIRCLED ONE OVERLAY;So;0;ON;;;;;N;;;;; -1F503;CLOCKWISE DOWNWARDS AND UPWARDS OPEN CIRCLE ARROWS;So;0;ON;;;;;N;;;;; -1F504;ANTICLOCKWISE DOWNWARDS AND UPWARDS OPEN CIRCLE ARROWS;So;0;ON;;;;;N;;;;; -1F505;LOW BRIGHTNESS SYMBOL;So;0;ON;;;;;N;;;;; -1F506;HIGH BRIGHTNESS SYMBOL;So;0;ON;;;;;N;;;;; -1F507;SPEAKER WITH CANCELLATION STROKE;So;0;ON;;;;;N;;;;; -1F508;SPEAKER;So;0;ON;;;;;N;;;;; -1F509;SPEAKER WITH ONE SOUND WAVE;So;0;ON;;;;;N;;;;; -1F50A;SPEAKER WITH THREE SOUND WAVES;So;0;ON;;;;;N;;;;; -1F50B;BATTERY;So;0;ON;;;;;N;;;;; -1F50C;ELECTRIC PLUG;So;0;ON;;;;;N;;;;; -1F50D;LEFT-POINTING MAGNIFYING GLASS;So;0;ON;;;;;N;;;;; -1F50E;RIGHT-POINTING MAGNIFYING GLASS;So;0;ON;;;;;N;;;;; -1F50F;LOCK WITH INK PEN;So;0;ON;;;;;N;;;;; -1F510;CLOSED LOCK WITH KEY;So;0;ON;;;;;N;;;;; -1F511;KEY;So;0;ON;;;;;N;;;;; -1F512;LOCK;So;0;ON;;;;;N;;;;; -1F513;OPEN LOCK;So;0;ON;;;;;N;;;;; -1F514;BELL;So;0;ON;;;;;N;;;;; -1F515;BELL WITH CANCELLATION STROKE;So;0;ON;;;;;N;;;;; -1F516;BOOKMARK;So;0;ON;;;;;N;;;;; -1F517;LINK SYMBOL;So;0;ON;;;;;N;;;;; -1F518;RADIO BUTTON;So;0;ON;;;;;N;;;;; -1F519;BACK WITH LEFTWARDS ARROW ABOVE;So;0;ON;;;;;N;;;;; -1F51A;END WITH LEFTWARDS ARROW ABOVE;So;0;ON;;;;;N;;;;; -1F51B;ON WITH EXCLAMATION MARK WITH LEFT RIGHT ARROW ABOVE;So;0;ON;;;;;N;;;;; -1F51C;SOON WITH RIGHTWARDS ARROW ABOVE;So;0;ON;;;;;N;;;;; -1F51D;TOP WITH UPWARDS ARROW ABOVE;So;0;ON;;;;;N;;;;; -1F51E;NO ONE UNDER EIGHTEEN SYMBOL;So;0;ON;;;;;N;;;;; -1F51F;KEYCAP TEN;So;0;ON;;;;;N;;;;; -1F520;INPUT SYMBOL FOR LATIN CAPITAL LETTERS;So;0;ON;;;;;N;;;;; -1F521;INPUT SYMBOL FOR LATIN SMALL LETTERS;So;0;ON;;;;;N;;;;; -1F522;INPUT SYMBOL FOR NUMBERS;So;0;ON;;;;;N;;;;; -1F523;INPUT SYMBOL FOR SYMBOLS;So;0;ON;;;;;N;;;;; -1F524;INPUT SYMBOL FOR LATIN LETTERS;So;0;L;;;;;N;;;;; -1F525;FIRE;So;0;ON;;;;;N;;;;; -1F526;ELECTRIC TORCH;So;0;ON;;;;;N;;;;; -1F527;WRENCH;So;0;ON;;;;;N;;;;; -1F528;HAMMER;So;0;ON;;;;;N;;;;; -1F529;NUT AND BOLT;So;0;ON;;;;;N;;;;; -1F52A;HOCHO;So;0;ON;;;;;N;;;;; -1F52B;PISTOL;So;0;ON;;;;;N;;;;; -1F52C;MICROSCOPE;So;0;ON;;;;;N;;;;; -1F52D;TELESCOPE;So;0;ON;;;;;N;;;;; -1F52E;CRYSTAL BALL;So;0;ON;;;;;N;;;;; -1F52F;SIX POINTED STAR WITH MIDDLE DOT;So;0;ON;;;;;N;;;;; -1F530;JAPANESE SYMBOL FOR BEGINNER;So;0;ON;;;;;N;;;;; -1F531;TRIDENT EMBLEM;So;0;ON;;;;;N;;;;; -1F532;BLACK SQUARE BUTTON;So;0;ON;;;;;N;;;;; -1F533;WHITE SQUARE BUTTON;So;0;ON;;;;;N;;;;; -1F534;LARGE RED CIRCLE;So;0;ON;;;;;N;;;;; -1F535;LARGE BLUE CIRCLE;So;0;ON;;;;;N;;;;; -1F536;LARGE ORANGE DIAMOND;So;0;ON;;;;;N;;;;; -1F537;LARGE BLUE DIAMOND;So;0;ON;;;;;N;;;;; -1F538;SMALL ORANGE DIAMOND;So;0;ON;;;;;N;;;;; -1F539;SMALL BLUE DIAMOND;So;0;ON;;;;;N;;;;; -1F53A;UP-POINTING RED TRIANGLE;So;0;ON;;;;;N;;;;; -1F53B;DOWN-POINTING RED TRIANGLE;So;0;ON;;;;;N;;;;; -1F53C;UP-POINTING SMALL RED TRIANGLE;So;0;ON;;;;;N;;;;; -1F53D;DOWN-POINTING SMALL RED TRIANGLE;So;0;ON;;;;;N;;;;; -1F550;CLOCK FACE ONE OCLOCK;So;0;ON;;;;;N;;;;; -1F551;CLOCK FACE TWO OCLOCK;So;0;ON;;;;;N;;;;; -1F552;CLOCK FACE THREE OCLOCK;So;0;ON;;;;;N;;;;; -1F553;CLOCK FACE FOUR OCLOCK;So;0;ON;;;;;N;;;;; -1F554;CLOCK FACE FIVE OCLOCK;So;0;ON;;;;;N;;;;; -1F555;CLOCK FACE SIX OCLOCK;So;0;ON;;;;;N;;;;; -1F556;CLOCK FACE SEVEN OCLOCK;So;0;ON;;;;;N;;;;; -1F557;CLOCK FACE EIGHT OCLOCK;So;0;ON;;;;;N;;;;; -1F558;CLOCK FACE NINE OCLOCK;So;0;ON;;;;;N;;;;; -1F559;CLOCK FACE TEN OCLOCK;So;0;ON;;;;;N;;;;; -1F55A;CLOCK FACE ELEVEN OCLOCK;So;0;ON;;;;;N;;;;; -1F55B;CLOCK FACE TWELVE OCLOCK;So;0;ON;;;;;N;;;;; -1F55C;CLOCK FACE ONE-THIRTY;So;0;ON;;;;;N;;;;; -1F55D;CLOCK FACE TWO-THIRTY;So;0;ON;;;;;N;;;;; -1F55E;CLOCK FACE THREE-THIRTY;So;0;ON;;;;;N;;;;; -1F55F;CLOCK FACE FOUR-THIRTY;So;0;ON;;;;;N;;;;; -1F560;CLOCK FACE FIVE-THIRTY;So;0;ON;;;;;N;;;;; -1F561;CLOCK FACE SIX-THIRTY;So;0;ON;;;;;N;;;;; -1F562;CLOCK FACE SEVEN-THIRTY;So;0;ON;;;;;N;;;;; -1F563;CLOCK FACE EIGHT-THIRTY;So;0;ON;;;;;N;;;;; -1F564;CLOCK FACE NINE-THIRTY;So;0;ON;;;;;N;;;;; -1F565;CLOCK FACE TEN-THIRTY;So;0;ON;;;;;N;;;;; -1F566;CLOCK FACE ELEVEN-THIRTY;So;0;ON;;;;;N;;;;; -1F567;CLOCK FACE TWELVE-THIRTY;So;0;ON;;;;;N;;;;; -1F5FB;MOUNT FUJI;So;0;ON;;;;;N;;;;; -1F5FC;TOKYO TOWER;So;0;ON;;;;;N;;;;; -1F5FD;STATUE OF LIBERTY;So;0;ON;;;;;N;;;;; -1F5FE;SILHOUETTE OF JAPAN;So;0;ON;;;;;N;;;;; -1F5FF;MOYAI;So;0;ON;;;;;N;;;;; -1F601;GRINNING FACE WITH SMILING EYES;So;0;ON;;;;;N;;;;; -1F602;FACE WITH TEARS OF JOY;So;0;ON;;;;;N;;;;; -1F603;SMILING FACE WITH OPEN MOUTH;So;0;ON;;;;;N;;;;; -1F604;SMILING FACE WITH OPEN MOUTH AND SMILING EYES;So;0;ON;;;;;N;;;;; -1F605;SMILING FACE WITH OPEN MOUTH AND COLD SWEAT;So;0;ON;;;;;N;;;;; -1F606;SMILING FACE WITH OPEN MOUTH AND TIGHTLY-CLOSED EYES;So;0;ON;;;;;N;;;;; -1F607;SMILING FACE WITH HALO;So;0;ON;;;;;N;;;;; -1F608;SMILING FACE WITH HORNS;So;0;ON;;;;;N;;;;; -1F609;WINKING FACE;So;0;ON;;;;;N;;;;; -1F60A;SMILING FACE WITH SMILING EYES;So;0;ON;;;;;N;;;;; -1F60B;FACE SAVOURING DELICIOUS FOOD;So;0;ON;;;;;N;;;;; -1F60C;RELIEVED FACE;So;0;ON;;;;;N;;;;; -1F60D;SMILING FACE WITH HEART-SHAPED EYES;So;0;ON;;;;;N;;;;; -1F60E;SMILING FACE WITH SUNGLASSES;So;0;ON;;;;;N;;;;; -1F60F;SMIRKING FACE;So;0;ON;;;;;N;;;;; -1F610;NEUTRAL FACE;So;0;ON;;;;;N;;;;; -1F612;UNAMUSED FACE;So;0;ON;;;;;N;;;;; -1F613;FACE WITH COLD SWEAT;So;0;ON;;;;;N;;;;; -1F614;PENSIVE FACE;So;0;ON;;;;;N;;;;; -1F616;CONFOUNDED FACE;So;0;ON;;;;;N;;;;; -1F618;FACE THROWING A KISS;So;0;ON;;;;;N;;;;; -1F61A;KISSING FACE WITH CLOSED EYES;So;0;ON;;;;;N;;;;; -1F61C;FACE WITH STUCK-OUT TONGUE AND WINKING EYE;So;0;ON;;;;;N;;;;; -1F61D;FACE WITH STUCK-OUT TONGUE AND TIGHTLY-CLOSED EYES;So;0;ON;;;;;N;;;;; -1F61E;DISAPPOINTED FACE;So;0;ON;;;;;N;;;;; -1F620;ANGRY FACE;So;0;ON;;;;;N;;;;; -1F621;POUTING FACE;So;0;ON;;;;;N;;;;; -1F622;CRYING FACE;So;0;ON;;;;;N;;;;; -1F623;PERSEVERING FACE;So;0;ON;;;;;N;;;;; -1F624;FACE WITH LOOK OF TRIUMPH;So;0;ON;;;;;N;;;;; -1F625;DISAPPOINTED BUT RELIEVED FACE;So;0;ON;;;;;N;;;;; -1F628;FEARFUL FACE;So;0;ON;;;;;N;;;;; -1F629;WEARY FACE;So;0;ON;;;;;N;;;;; -1F62A;SLEEPY FACE;So;0;ON;;;;;N;;;;; -1F62B;TIRED FACE;So;0;ON;;;;;N;;;;; -1F62D;LOUDLY CRYING FACE;So;0;ON;;;;;N;;;;; -1F630;FACE WITH OPEN MOUTH AND COLD SWEAT;So;0;ON;;;;;N;;;;; -1F631;FACE SCREAMING IN FEAR;So;0;ON;;;;;N;;;;; -1F632;ASTONISHED FACE;So;0;ON;;;;;N;;;;; -1F633;FLUSHED FACE;So;0;ON;;;;;N;;;;; -1F635;DIZZY FACE;So;0;ON;;;;;N;;;;; -1F636;FACE WITHOUT MOUTH;So;0;ON;;;;;N;;;;; -1F637;FACE WITH MEDICAL MASK;So;0;ON;;;;;N;;;;; -1F638;GRINNING CAT FACE WITH SMILING EYES;So;0;ON;;;;;N;;;;; -1F639;CAT FACE WITH TEARS OF JOY;So;0;ON;;;;;N;;;;; -1F63A;SMILING CAT FACE WITH OPEN MOUTH;So;0;ON;;;;;N;;;;; -1F63B;SMILING CAT FACE WITH HEART-SHAPED EYES;So;0;ON;;;;;N;;;;; -1F63C;CAT FACE WITH WRY SMILE;So;0;ON;;;;;N;;;;; -1F63D;KISSING CAT FACE WITH CLOSED EYES;So;0;ON;;;;;N;;;;; -1F63E;POUTING CAT FACE;So;0;ON;;;;;N;;;;; -1F63F;CRYING CAT FACE;So;0;ON;;;;;N;;;;; -1F640;WEARY CAT FACE;So;0;ON;;;;;N;;;;; -1F645;FACE WITH NO GOOD GESTURE;So;0;ON;;;;;N;;;;; -1F646;FACE WITH OK GESTURE;So;0;ON;;;;;N;;;;; -1F647;PERSON BOWING DEEPLY;So;0;ON;;;;;N;;;;; -1F648;SEE-NO-EVIL MONKEY;So;0;ON;;;;;N;;;;; -1F649;HEAR-NO-EVIL MONKEY;So;0;ON;;;;;N;;;;; -1F64A;SPEAK-NO-EVIL MONKEY;So;0;ON;;;;;N;;;;; -1F64B;HAPPY PERSON RAISING ONE HAND;So;0;ON;;;;;N;;;;; -1F64C;PERSON RAISING BOTH HANDS IN CELEBRATION;So;0;ON;;;;;N;;;;; -1F64D;PERSON FROWNING;So;0;ON;;;;;N;;;;; -1F64E;PERSON WITH POUTING FACE;So;0;ON;;;;;N;;;;; -1F64F;PERSON WITH FOLDED HANDS;So;0;ON;;;;;N;;;;; -1F680;ROCKET;So;0;ON;;;;;N;;;;; -1F681;HELICOPTER;So;0;ON;;;;;N;;;;; -1F682;STEAM LOCOMOTIVE;So;0;ON;;;;;N;;;;; -1F683;RAILWAY CAR;So;0;ON;;;;;N;;;;; -1F684;HIGH-SPEED TRAIN;So;0;ON;;;;;N;;;;; -1F685;HIGH-SPEED TRAIN WITH BULLET NOSE;So;0;ON;;;;;N;;;;; -1F686;TRAIN;So;0;ON;;;;;N;;;;; -1F687;METRO;So;0;ON;;;;;N;;;;; -1F688;LIGHT RAIL;So;0;ON;;;;;N;;;;; -1F689;STATION;So;0;ON;;;;;N;;;;; -1F68A;TRAM;So;0;ON;;;;;N;;;;; -1F68B;TRAM CAR;So;0;ON;;;;;N;;;;; -1F68C;BUS;So;0;ON;;;;;N;;;;; -1F68D;ONCOMING BUS;So;0;ON;;;;;N;;;;; -1F68E;TROLLEYBUS;So;0;ON;;;;;N;;;;; -1F68F;BUS STOP;So;0;ON;;;;;N;;;;; -1F690;MINIBUS;So;0;ON;;;;;N;;;;; -1F691;AMBULANCE;So;0;ON;;;;;N;;;;; -1F692;FIRE ENGINE;So;0;ON;;;;;N;;;;; -1F693;POLICE CAR;So;0;ON;;;;;N;;;;; -1F694;ONCOMING POLICE CAR;So;0;ON;;;;;N;;;;; -1F695;TAXI;So;0;ON;;;;;N;;;;; -1F696;ONCOMING TAXI;So;0;ON;;;;;N;;;;; -1F697;AUTOMOBILE;So;0;ON;;;;;N;;;;; -1F698;ONCOMING AUTOMOBILE;So;0;ON;;;;;N;;;;; -1F699;RECREATIONAL VEHICLE;So;0;ON;;;;;N;;;;; -1F69A;DELIVERY TRUCK;So;0;ON;;;;;N;;;;; -1F69B;ARTICULATED LORRY;So;0;ON;;;;;N;;;;; -1F69C;TRACTOR;So;0;ON;;;;;N;;;;; -1F69D;MONORAIL;So;0;ON;;;;;N;;;;; -1F69E;MOUNTAIN RAILWAY;So;0;ON;;;;;N;;;;; -1F69F;SUSPENSION RAILWAY;So;0;ON;;;;;N;;;;; -1F6A0;MOUNTAIN CABLEWAY;So;0;ON;;;;;N;;;;; -1F6A1;AERIAL TRAMWAY;So;0;ON;;;;;N;;;;; -1F6A2;SHIP;So;0;ON;;;;;N;;;;; -1F6A3;ROWBOAT;So;0;ON;;;;;N;;;;; -1F6A4;SPEEDBOAT;So;0;ON;;;;;N;;;;; -1F6A5;HORIZONTAL TRAFFIC LIGHT;So;0;ON;;;;;N;;;;; -1F6A6;VERTICAL TRAFFIC LIGHT;So;0;ON;;;;;N;;;;; -1F6A7;CONSTRUCTION SIGN;So;0;ON;;;;;N;;;;; -1F6A8;POLICE CARS REVOLVING LIGHT;So;0;ON;;;;;N;;;;; -1F6A9;TRIANGULAR FLAG ON POST;So;0;ON;;;;;N;;;;; -1F6AA;DOOR;So;0;ON;;;;;N;;;;; -1F6AB;NO ENTRY SIGN;So;0;ON;;;;;N;;;;; -1F6AC;SMOKING SYMBOL;So;0;ON;;;;;N;;;;; -1F6AD;NO SMOKING SYMBOL;So;0;ON;;;;;N;;;;; -1F6AE;PUT LITTER IN ITS PLACE SYMBOL;So;0;ON;;;;;N;;;;; -1F6AF;DO NOT LITTER SYMBOL;So;0;ON;;;;;N;;;;; -1F6B0;POTABLE WATER SYMBOL;So;0;ON;;;;;N;;;;; -1F6B1;NON-POTABLE WATER SYMBOL;So;0;ON;;;;;N;;;;; -1F6B2;BICYCLE;So;0;ON;;;;;N;;;;; -1F6B3;NO BICYCLES;So;0;ON;;;;;N;;;;; -1F6B4;BICYCLIST;So;0;ON;;;;;N;;;;; -1F6B5;MOUNTAIN BICYCLIST;So;0;ON;;;;;N;;;;; -1F6B6;PEDESTRIAN;So;0;ON;;;;;N;;;;; -1F6B7;NO PEDESTRIANS;So;0;ON;;;;;N;;;;; -1F6B8;CHILDREN CROSSING;So;0;ON;;;;;N;;;;; -1F6B9;MENS SYMBOL;So;0;ON;;;;;N;;;;; -1F6BA;WOMENS SYMBOL;So;0;ON;;;;;N;;;;; -1F6BB;RESTROOM;So;0;ON;;;;;N;;;;; -1F6BC;BABY SYMBOL;So;0;ON;;;;;N;;;;; -1F6BD;TOILET;So;0;ON;;;;;N;;;;; -1F6BE;WATER CLOSET;So;0;ON;;;;;N;;;;; -1F6BF;SHOWER;So;0;ON;;;;;N;;;;; -1F6C0;BATH;So;0;ON;;;;;N;;;;; -1F6C1;BATHTUB;So;0;ON;;;;;N;;;;; -1F6C2;PASSPORT CONTROL;So;0;ON;;;;;N;;;;; -1F6C3;CUSTOMS;So;0;ON;;;;;N;;;;; -1F6C4;BAGGAGE CLAIM;So;0;ON;;;;;N;;;;; -1F6C5;LEFT LUGGAGE;So;0;ON;;;;;N;;;;; -1F700;ALCHEMICAL SYMBOL FOR QUINTESSENCE;So;0;ON;;;;;N;;;;; -1F701;ALCHEMICAL SYMBOL FOR AIR;So;0;ON;;;;;N;;;;; -1F702;ALCHEMICAL SYMBOL FOR FIRE;So;0;ON;;;;;N;;;;; -1F703;ALCHEMICAL SYMBOL FOR EARTH;So;0;ON;;;;;N;;;;; -1F704;ALCHEMICAL SYMBOL FOR WATER;So;0;ON;;;;;N;;;;; -1F705;ALCHEMICAL SYMBOL FOR AQUAFORTIS;So;0;ON;;;;;N;;;;; -1F706;ALCHEMICAL SYMBOL FOR AQUA REGIA;So;0;ON;;;;;N;;;;; -1F707;ALCHEMICAL SYMBOL FOR AQUA REGIA-2;So;0;ON;;;;;N;;;;; -1F708;ALCHEMICAL SYMBOL FOR AQUA VITAE;So;0;ON;;;;;N;;;;; -1F709;ALCHEMICAL SYMBOL FOR AQUA VITAE-2;So;0;ON;;;;;N;;;;; -1F70A;ALCHEMICAL SYMBOL FOR VINEGAR;So;0;ON;;;;;N;;;;; -1F70B;ALCHEMICAL SYMBOL FOR VINEGAR-2;So;0;ON;;;;;N;;;;; -1F70C;ALCHEMICAL SYMBOL FOR VINEGAR-3;So;0;ON;;;;;N;;;;; -1F70D;ALCHEMICAL SYMBOL FOR SULFUR;So;0;ON;;;;;N;;;;; -1F70E;ALCHEMICAL SYMBOL FOR PHILOSOPHERS SULFUR;So;0;ON;;;;;N;;;;; -1F70F;ALCHEMICAL SYMBOL FOR BLACK SULFUR;So;0;ON;;;;;N;;;;; -1F710;ALCHEMICAL SYMBOL FOR MERCURY SUBLIMATE;So;0;ON;;;;;N;;;;; -1F711;ALCHEMICAL SYMBOL FOR MERCURY SUBLIMATE-2;So;0;ON;;;;;N;;;;; -1F712;ALCHEMICAL SYMBOL FOR MERCURY SUBLIMATE-3;So;0;ON;;;;;N;;;;; -1F713;ALCHEMICAL SYMBOL FOR CINNABAR;So;0;ON;;;;;N;;;;; -1F714;ALCHEMICAL SYMBOL FOR SALT;So;0;ON;;;;;N;;;;; -1F715;ALCHEMICAL SYMBOL FOR NITRE;So;0;ON;;;;;N;;;;; -1F716;ALCHEMICAL SYMBOL FOR VITRIOL;So;0;ON;;;;;N;;;;; -1F717;ALCHEMICAL SYMBOL FOR VITRIOL-2;So;0;ON;;;;;N;;;;; -1F718;ALCHEMICAL SYMBOL FOR ROCK SALT;So;0;ON;;;;;N;;;;; -1F719;ALCHEMICAL SYMBOL FOR ROCK SALT-2;So;0;ON;;;;;N;;;;; -1F71A;ALCHEMICAL SYMBOL FOR GOLD;So;0;ON;;;;;N;;;;; -1F71B;ALCHEMICAL SYMBOL FOR SILVER;So;0;ON;;;;;N;;;;; -1F71C;ALCHEMICAL SYMBOL FOR IRON ORE;So;0;ON;;;;;N;;;;; -1F71D;ALCHEMICAL SYMBOL FOR IRON ORE-2;So;0;ON;;;;;N;;;;; -1F71E;ALCHEMICAL SYMBOL FOR CROCUS OF IRON;So;0;ON;;;;;N;;;;; -1F71F;ALCHEMICAL SYMBOL FOR REGULUS OF IRON;So;0;ON;;;;;N;;;;; -1F720;ALCHEMICAL SYMBOL FOR COPPER ORE;So;0;ON;;;;;N;;;;; -1F721;ALCHEMICAL SYMBOL FOR IRON-COPPER ORE;So;0;ON;;;;;N;;;;; -1F722;ALCHEMICAL SYMBOL FOR SUBLIMATE OF COPPER;So;0;ON;;;;;N;;;;; -1F723;ALCHEMICAL SYMBOL FOR CROCUS OF COPPER;So;0;ON;;;;;N;;;;; -1F724;ALCHEMICAL SYMBOL FOR CROCUS OF COPPER-2;So;0;ON;;;;;N;;;;; -1F725;ALCHEMICAL SYMBOL FOR COPPER ANTIMONIATE;So;0;ON;;;;;N;;;;; -1F726;ALCHEMICAL SYMBOL FOR SALT OF COPPER ANTIMONIATE;So;0;ON;;;;;N;;;;; -1F727;ALCHEMICAL SYMBOL FOR SUBLIMATE OF SALT OF COPPER;So;0;ON;;;;;N;;;;; -1F728;ALCHEMICAL SYMBOL FOR VERDIGRIS;So;0;ON;;;;;N;;;;; -1F729;ALCHEMICAL SYMBOL FOR TIN ORE;So;0;ON;;;;;N;;;;; -1F72A;ALCHEMICAL SYMBOL FOR LEAD ORE;So;0;ON;;;;;N;;;;; -1F72B;ALCHEMICAL SYMBOL FOR ANTIMONY ORE;So;0;ON;;;;;N;;;;; -1F72C;ALCHEMICAL SYMBOL FOR SUBLIMATE OF ANTIMONY;So;0;ON;;;;;N;;;;; -1F72D;ALCHEMICAL SYMBOL FOR SALT OF ANTIMONY;So;0;ON;;;;;N;;;;; -1F72E;ALCHEMICAL SYMBOL FOR SUBLIMATE OF SALT OF ANTIMONY;So;0;ON;;;;;N;;;;; -1F72F;ALCHEMICAL SYMBOL FOR VINEGAR OF ANTIMONY;So;0;ON;;;;;N;;;;; -1F730;ALCHEMICAL SYMBOL FOR REGULUS OF ANTIMONY;So;0;ON;;;;;N;;;;; -1F731;ALCHEMICAL SYMBOL FOR REGULUS OF ANTIMONY-2;So;0;ON;;;;;N;;;;; -1F732;ALCHEMICAL SYMBOL FOR REGULUS;So;0;ON;;;;;N;;;;; -1F733;ALCHEMICAL SYMBOL FOR REGULUS-2;So;0;ON;;;;;N;;;;; -1F734;ALCHEMICAL SYMBOL FOR REGULUS-3;So;0;ON;;;;;N;;;;; -1F735;ALCHEMICAL SYMBOL FOR REGULUS-4;So;0;ON;;;;;N;;;;; -1F736;ALCHEMICAL SYMBOL FOR ALKALI;So;0;ON;;;;;N;;;;; -1F737;ALCHEMICAL SYMBOL FOR ALKALI-2;So;0;ON;;;;;N;;;;; -1F738;ALCHEMICAL SYMBOL FOR MARCASITE;So;0;ON;;;;;N;;;;; -1F739;ALCHEMICAL SYMBOL FOR SAL-AMMONIAC;So;0;ON;;;;;N;;;;; -1F73A;ALCHEMICAL SYMBOL FOR ARSENIC;So;0;ON;;;;;N;;;;; -1F73B;ALCHEMICAL SYMBOL FOR REALGAR;So;0;ON;;;;;N;;;;; -1F73C;ALCHEMICAL SYMBOL FOR REALGAR-2;So;0;ON;;;;;N;;;;; -1F73D;ALCHEMICAL SYMBOL FOR AURIPIGMENT;So;0;ON;;;;;N;;;;; -1F73E;ALCHEMICAL SYMBOL FOR BISMUTH ORE;So;0;ON;;;;;N;;;;; -1F73F;ALCHEMICAL SYMBOL FOR TARTAR;So;0;ON;;;;;N;;;;; -1F740;ALCHEMICAL SYMBOL FOR TARTAR-2;So;0;ON;;;;;N;;;;; -1F741;ALCHEMICAL SYMBOL FOR QUICK LIME;So;0;ON;;;;;N;;;;; -1F742;ALCHEMICAL SYMBOL FOR BORAX;So;0;ON;;;;;N;;;;; -1F743;ALCHEMICAL SYMBOL FOR BORAX-2;So;0;ON;;;;;N;;;;; -1F744;ALCHEMICAL SYMBOL FOR BORAX-3;So;0;ON;;;;;N;;;;; -1F745;ALCHEMICAL SYMBOL FOR ALUM;So;0;ON;;;;;N;;;;; -1F746;ALCHEMICAL SYMBOL FOR OIL;So;0;ON;;;;;N;;;;; -1F747;ALCHEMICAL SYMBOL FOR SPIRIT;So;0;ON;;;;;N;;;;; -1F748;ALCHEMICAL SYMBOL FOR TINCTURE;So;0;ON;;;;;N;;;;; -1F749;ALCHEMICAL SYMBOL FOR GUM;So;0;ON;;;;;N;;;;; -1F74A;ALCHEMICAL SYMBOL FOR WAX;So;0;ON;;;;;N;;;;; -1F74B;ALCHEMICAL SYMBOL FOR POWDER;So;0;ON;;;;;N;;;;; -1F74C;ALCHEMICAL SYMBOL FOR CALX;So;0;ON;;;;;N;;;;; -1F74D;ALCHEMICAL SYMBOL FOR TUTTY;So;0;ON;;;;;N;;;;; -1F74E;ALCHEMICAL SYMBOL FOR CAPUT MORTUUM;So;0;ON;;;;;N;;;;; -1F74F;ALCHEMICAL SYMBOL FOR SCEPTER OF JOVE;So;0;ON;;;;;N;;;;; -1F750;ALCHEMICAL SYMBOL FOR CADUCEUS;So;0;ON;;;;;N;;;;; -1F751;ALCHEMICAL SYMBOL FOR TRIDENT;So;0;ON;;;;;N;;;;; -1F752;ALCHEMICAL SYMBOL FOR STARRED TRIDENT;So;0;ON;;;;;N;;;;; -1F753;ALCHEMICAL SYMBOL FOR LODESTONE;So;0;ON;;;;;N;;;;; -1F754;ALCHEMICAL SYMBOL FOR SOAP;So;0;ON;;;;;N;;;;; -1F755;ALCHEMICAL SYMBOL FOR URINE;So;0;ON;;;;;N;;;;; -1F756;ALCHEMICAL SYMBOL FOR HORSE DUNG;So;0;ON;;;;;N;;;;; -1F757;ALCHEMICAL SYMBOL FOR ASHES;So;0;ON;;;;;N;;;;; -1F758;ALCHEMICAL SYMBOL FOR POT ASHES;So;0;ON;;;;;N;;;;; -1F759;ALCHEMICAL SYMBOL FOR BRICK;So;0;ON;;;;;N;;;;; -1F75A;ALCHEMICAL SYMBOL FOR POWDERED BRICK;So;0;ON;;;;;N;;;;; -1F75B;ALCHEMICAL SYMBOL FOR AMALGAM;So;0;ON;;;;;N;;;;; -1F75C;ALCHEMICAL SYMBOL FOR STRATUM SUPER STRATUM;So;0;ON;;;;;N;;;;; -1F75D;ALCHEMICAL SYMBOL FOR STRATUM SUPER STRATUM-2;So;0;ON;;;;;N;;;;; -1F75E;ALCHEMICAL SYMBOL FOR SUBLIMATION;So;0;ON;;;;;N;;;;; -1F75F;ALCHEMICAL SYMBOL FOR PRECIPITATE;So;0;ON;;;;;N;;;;; -1F760;ALCHEMICAL SYMBOL FOR DISTILL;So;0;ON;;;;;N;;;;; -1F761;ALCHEMICAL SYMBOL FOR DISSOLVE;So;0;ON;;;;;N;;;;; -1F762;ALCHEMICAL SYMBOL FOR DISSOLVE-2;So;0;ON;;;;;N;;;;; -1F763;ALCHEMICAL SYMBOL FOR PURIFY;So;0;ON;;;;;N;;;;; -1F764;ALCHEMICAL SYMBOL FOR PUTREFACTION;So;0;ON;;;;;N;;;;; -1F765;ALCHEMICAL SYMBOL FOR CRUCIBLE;So;0;ON;;;;;N;;;;; -1F766;ALCHEMICAL SYMBOL FOR CRUCIBLE-2;So;0;ON;;;;;N;;;;; -1F767;ALCHEMICAL SYMBOL FOR CRUCIBLE-3;So;0;ON;;;;;N;;;;; -1F768;ALCHEMICAL SYMBOL FOR CRUCIBLE-4;So;0;ON;;;;;N;;;;; -1F769;ALCHEMICAL SYMBOL FOR CRUCIBLE-5;So;0;ON;;;;;N;;;;; -1F76A;ALCHEMICAL SYMBOL FOR ALEMBIC;So;0;ON;;;;;N;;;;; -1F76B;ALCHEMICAL SYMBOL FOR BATH OF MARY;So;0;ON;;;;;N;;;;; -1F76C;ALCHEMICAL SYMBOL FOR BATH OF VAPOURS;So;0;ON;;;;;N;;;;; -1F76D;ALCHEMICAL SYMBOL FOR RETORT;So;0;ON;;;;;N;;;;; -1F76E;ALCHEMICAL SYMBOL FOR HOUR;So;0;ON;;;;;N;;;;; -1F76F;ALCHEMICAL SYMBOL FOR NIGHT;So;0;ON;;;;;N;;;;; -1F770;ALCHEMICAL SYMBOL FOR DAY-NIGHT;So;0;ON;;;;;N;;;;; -1F771;ALCHEMICAL SYMBOL FOR MONTH;So;0;ON;;;;;N;;;;; -1F772;ALCHEMICAL SYMBOL FOR HALF DRAM;So;0;ON;;;;;N;;;;; -1F773;ALCHEMICAL SYMBOL FOR HALF OUNCE;So;0;ON;;;;;N;;;;; -20000;;Lo;0;L;;;;;N;;;;; -2A6D6;;Lo;0;L;;;;;N;;;;; -2A700;;Lo;0;L;;;;;N;;;;; -2B734;;Lo;0;L;;;;;N;;;;; -2B740;;Lo;0;L;;;;;N;;;;; -2B81D;;Lo;0;L;;;;;N;;;;; -2F800;CJK COMPATIBILITY IDEOGRAPH-2F800;Lo;0;L;4E3D;;;;N;;;;; -2F801;CJK COMPATIBILITY IDEOGRAPH-2F801;Lo;0;L;4E38;;;;N;;;;; -2F802;CJK COMPATIBILITY IDEOGRAPH-2F802;Lo;0;L;4E41;;;;N;;;;; -2F803;CJK COMPATIBILITY IDEOGRAPH-2F803;Lo;0;L;20122;;;;N;;;;; -2F804;CJK COMPATIBILITY IDEOGRAPH-2F804;Lo;0;L;4F60;;;;N;;;;; -2F805;CJK COMPATIBILITY IDEOGRAPH-2F805;Lo;0;L;4FAE;;;;N;;;;; -2F806;CJK COMPATIBILITY IDEOGRAPH-2F806;Lo;0;L;4FBB;;;;N;;;;; -2F807;CJK COMPATIBILITY IDEOGRAPH-2F807;Lo;0;L;5002;;;;N;;;;; -2F808;CJK COMPATIBILITY IDEOGRAPH-2F808;Lo;0;L;507A;;;;N;;;;; -2F809;CJK COMPATIBILITY IDEOGRAPH-2F809;Lo;0;L;5099;;;;N;;;;; -2F80A;CJK COMPATIBILITY IDEOGRAPH-2F80A;Lo;0;L;50E7;;;;N;;;;; -2F80B;CJK COMPATIBILITY IDEOGRAPH-2F80B;Lo;0;L;50CF;;;;N;;;;; -2F80C;CJK COMPATIBILITY IDEOGRAPH-2F80C;Lo;0;L;349E;;;;N;;;;; -2F80D;CJK COMPATIBILITY IDEOGRAPH-2F80D;Lo;0;L;2063A;;;;N;;;;; -2F80E;CJK COMPATIBILITY IDEOGRAPH-2F80E;Lo;0;L;514D;;;;N;;;;; -2F80F;CJK COMPATIBILITY IDEOGRAPH-2F80F;Lo;0;L;5154;;;;N;;;;; -2F810;CJK COMPATIBILITY IDEOGRAPH-2F810;Lo;0;L;5164;;;;N;;;;; -2F811;CJK COMPATIBILITY IDEOGRAPH-2F811;Lo;0;L;5177;;;;N;;;;; -2F812;CJK COMPATIBILITY IDEOGRAPH-2F812;Lo;0;L;2051C;;;;N;;;;; -2F813;CJK COMPATIBILITY IDEOGRAPH-2F813;Lo;0;L;34B9;;;;N;;;;; -2F814;CJK COMPATIBILITY IDEOGRAPH-2F814;Lo;0;L;5167;;;;N;;;;; -2F815;CJK COMPATIBILITY IDEOGRAPH-2F815;Lo;0;L;518D;;;;N;;;;; -2F816;CJK COMPATIBILITY IDEOGRAPH-2F816;Lo;0;L;2054B;;;;N;;;;; -2F817;CJK COMPATIBILITY IDEOGRAPH-2F817;Lo;0;L;5197;;;;N;;;;; -2F818;CJK COMPATIBILITY IDEOGRAPH-2F818;Lo;0;L;51A4;;;;N;;;;; -2F819;CJK COMPATIBILITY IDEOGRAPH-2F819;Lo;0;L;4ECC;;;;N;;;;; -2F81A;CJK COMPATIBILITY IDEOGRAPH-2F81A;Lo;0;L;51AC;;;;N;;;;; -2F81B;CJK COMPATIBILITY IDEOGRAPH-2F81B;Lo;0;L;51B5;;;;N;;;;; -2F81C;CJK COMPATIBILITY IDEOGRAPH-2F81C;Lo;0;L;291DF;;;;N;;;;; -2F81D;CJK COMPATIBILITY IDEOGRAPH-2F81D;Lo;0;L;51F5;;;;N;;;;; -2F81E;CJK COMPATIBILITY IDEOGRAPH-2F81E;Lo;0;L;5203;;;;N;;;;; -2F81F;CJK COMPATIBILITY IDEOGRAPH-2F81F;Lo;0;L;34DF;;;;N;;;;; -2F820;CJK COMPATIBILITY IDEOGRAPH-2F820;Lo;0;L;523B;;;;N;;;;; -2F821;CJK COMPATIBILITY IDEOGRAPH-2F821;Lo;0;L;5246;;;;N;;;;; -2F822;CJK COMPATIBILITY IDEOGRAPH-2F822;Lo;0;L;5272;;;;N;;;;; -2F823;CJK COMPATIBILITY IDEOGRAPH-2F823;Lo;0;L;5277;;;;N;;;;; -2F824;CJK COMPATIBILITY IDEOGRAPH-2F824;Lo;0;L;3515;;;;N;;;;; -2F825;CJK COMPATIBILITY IDEOGRAPH-2F825;Lo;0;L;52C7;;;;N;;;;; -2F826;CJK COMPATIBILITY IDEOGRAPH-2F826;Lo;0;L;52C9;;;;N;;;;; -2F827;CJK COMPATIBILITY IDEOGRAPH-2F827;Lo;0;L;52E4;;;;N;;;;; -2F828;CJK COMPATIBILITY IDEOGRAPH-2F828;Lo;0;L;52FA;;;;N;;;;; -2F829;CJK COMPATIBILITY IDEOGRAPH-2F829;Lo;0;L;5305;;;;N;;;;; -2F82A;CJK COMPATIBILITY IDEOGRAPH-2F82A;Lo;0;L;5306;;;;N;;;;; -2F82B;CJK COMPATIBILITY IDEOGRAPH-2F82B;Lo;0;L;5317;;;;N;;;;; -2F82C;CJK COMPATIBILITY IDEOGRAPH-2F82C;Lo;0;L;5349;;;;N;;;;; -2F82D;CJK COMPATIBILITY IDEOGRAPH-2F82D;Lo;0;L;5351;;;;N;;;;; -2F82E;CJK COMPATIBILITY IDEOGRAPH-2F82E;Lo;0;L;535A;;;;N;;;;; -2F82F;CJK COMPATIBILITY IDEOGRAPH-2F82F;Lo;0;L;5373;;;;N;;;;; -2F830;CJK COMPATIBILITY IDEOGRAPH-2F830;Lo;0;L;537D;;;;N;;;;; -2F831;CJK COMPATIBILITY IDEOGRAPH-2F831;Lo;0;L;537F;;;;N;;;;; -2F832;CJK COMPATIBILITY IDEOGRAPH-2F832;Lo;0;L;537F;;;;N;;;;; -2F833;CJK COMPATIBILITY IDEOGRAPH-2F833;Lo;0;L;537F;;;;N;;;;; -2F834;CJK COMPATIBILITY IDEOGRAPH-2F834;Lo;0;L;20A2C;;;;N;;;;; -2F835;CJK COMPATIBILITY IDEOGRAPH-2F835;Lo;0;L;7070;;;;N;;;;; -2F836;CJK COMPATIBILITY IDEOGRAPH-2F836;Lo;0;L;53CA;;;;N;;;;; -2F837;CJK COMPATIBILITY IDEOGRAPH-2F837;Lo;0;L;53DF;;;;N;;;;; -2F838;CJK COMPATIBILITY IDEOGRAPH-2F838;Lo;0;L;20B63;;;;N;;;;; -2F839;CJK COMPATIBILITY IDEOGRAPH-2F839;Lo;0;L;53EB;;;;N;;;;; -2F83A;CJK COMPATIBILITY IDEOGRAPH-2F83A;Lo;0;L;53F1;;;;N;;;;; -2F83B;CJK COMPATIBILITY IDEOGRAPH-2F83B;Lo;0;L;5406;;;;N;;;;; -2F83C;CJK COMPATIBILITY IDEOGRAPH-2F83C;Lo;0;L;549E;;;;N;;;;; -2F83D;CJK COMPATIBILITY IDEOGRAPH-2F83D;Lo;0;L;5438;;;;N;;;;; -2F83E;CJK COMPATIBILITY IDEOGRAPH-2F83E;Lo;0;L;5448;;;;N;;;;; -2F83F;CJK COMPATIBILITY IDEOGRAPH-2F83F;Lo;0;L;5468;;;;N;;;;; -2F840;CJK COMPATIBILITY IDEOGRAPH-2F840;Lo;0;L;54A2;;;;N;;;;; -2F841;CJK COMPATIBILITY IDEOGRAPH-2F841;Lo;0;L;54F6;;;;N;;;;; -2F842;CJK COMPATIBILITY IDEOGRAPH-2F842;Lo;0;L;5510;;;;N;;;;; -2F843;CJK COMPATIBILITY IDEOGRAPH-2F843;Lo;0;L;5553;;;;N;;;;; -2F844;CJK COMPATIBILITY IDEOGRAPH-2F844;Lo;0;L;5563;;;;N;;;;; -2F845;CJK COMPATIBILITY IDEOGRAPH-2F845;Lo;0;L;5584;;;;N;;;;; -2F846;CJK COMPATIBILITY IDEOGRAPH-2F846;Lo;0;L;5584;;;;N;;;;; -2F847;CJK COMPATIBILITY IDEOGRAPH-2F847;Lo;0;L;5599;;;;N;;;;; -2F848;CJK COMPATIBILITY IDEOGRAPH-2F848;Lo;0;L;55AB;;;;N;;;;; -2F849;CJK COMPATIBILITY IDEOGRAPH-2F849;Lo;0;L;55B3;;;;N;;;;; -2F84A;CJK COMPATIBILITY IDEOGRAPH-2F84A;Lo;0;L;55C2;;;;N;;;;; -2F84B;CJK COMPATIBILITY IDEOGRAPH-2F84B;Lo;0;L;5716;;;;N;;;;; -2F84C;CJK COMPATIBILITY IDEOGRAPH-2F84C;Lo;0;L;5606;;;;N;;;;; -2F84D;CJK COMPATIBILITY IDEOGRAPH-2F84D;Lo;0;L;5717;;;;N;;;;; -2F84E;CJK COMPATIBILITY IDEOGRAPH-2F84E;Lo;0;L;5651;;;;N;;;;; -2F84F;CJK COMPATIBILITY IDEOGRAPH-2F84F;Lo;0;L;5674;;;;N;;;;; -2F850;CJK COMPATIBILITY IDEOGRAPH-2F850;Lo;0;L;5207;;;;N;;;;; -2F851;CJK COMPATIBILITY IDEOGRAPH-2F851;Lo;0;L;58EE;;;;N;;;;; -2F852;CJK COMPATIBILITY IDEOGRAPH-2F852;Lo;0;L;57CE;;;;N;;;;; -2F853;CJK COMPATIBILITY IDEOGRAPH-2F853;Lo;0;L;57F4;;;;N;;;;; -2F854;CJK COMPATIBILITY IDEOGRAPH-2F854;Lo;0;L;580D;;;;N;;;;; -2F855;CJK COMPATIBILITY IDEOGRAPH-2F855;Lo;0;L;578B;;;;N;;;;; -2F856;CJK COMPATIBILITY IDEOGRAPH-2F856;Lo;0;L;5832;;;;N;;;;; -2F857;CJK COMPATIBILITY IDEOGRAPH-2F857;Lo;0;L;5831;;;;N;;;;; -2F858;CJK COMPATIBILITY IDEOGRAPH-2F858;Lo;0;L;58AC;;;;N;;;;; -2F859;CJK COMPATIBILITY IDEOGRAPH-2F859;Lo;0;L;214E4;;;;N;;;;; -2F85A;CJK COMPATIBILITY IDEOGRAPH-2F85A;Lo;0;L;58F2;;;;N;;;;; -2F85B;CJK COMPATIBILITY IDEOGRAPH-2F85B;Lo;0;L;58F7;;;;N;;;;; -2F85C;CJK COMPATIBILITY IDEOGRAPH-2F85C;Lo;0;L;5906;;;;N;;;;; -2F85D;CJK COMPATIBILITY IDEOGRAPH-2F85D;Lo;0;L;591A;;;;N;;;;; -2F85E;CJK COMPATIBILITY IDEOGRAPH-2F85E;Lo;0;L;5922;;;;N;;;;; -2F85F;CJK COMPATIBILITY IDEOGRAPH-2F85F;Lo;0;L;5962;;;;N;;;;; -2F860;CJK COMPATIBILITY IDEOGRAPH-2F860;Lo;0;L;216A8;;;;N;;;;; -2F861;CJK COMPATIBILITY IDEOGRAPH-2F861;Lo;0;L;216EA;;;;N;;;;; -2F862;CJK COMPATIBILITY IDEOGRAPH-2F862;Lo;0;L;59EC;;;;N;;;;; -2F863;CJK COMPATIBILITY IDEOGRAPH-2F863;Lo;0;L;5A1B;;;;N;;;;; -2F864;CJK COMPATIBILITY IDEOGRAPH-2F864;Lo;0;L;5A27;;;;N;;;;; -2F865;CJK COMPATIBILITY IDEOGRAPH-2F865;Lo;0;L;59D8;;;;N;;;;; -2F866;CJK COMPATIBILITY IDEOGRAPH-2F866;Lo;0;L;5A66;;;;N;;;;; -2F867;CJK COMPATIBILITY IDEOGRAPH-2F867;Lo;0;L;36EE;;;;N;;;;; -2F868;CJK COMPATIBILITY IDEOGRAPH-2F868;Lo;0;L;36FC;;;;N;;;;; -2F869;CJK COMPATIBILITY IDEOGRAPH-2F869;Lo;0;L;5B08;;;;N;;;;; -2F86A;CJK COMPATIBILITY IDEOGRAPH-2F86A;Lo;0;L;5B3E;;;;N;;;;; -2F86B;CJK COMPATIBILITY IDEOGRAPH-2F86B;Lo;0;L;5B3E;;;;N;;;;; -2F86C;CJK COMPATIBILITY IDEOGRAPH-2F86C;Lo;0;L;219C8;;;;N;;;;; -2F86D;CJK COMPATIBILITY IDEOGRAPH-2F86D;Lo;0;L;5BC3;;;;N;;;;; -2F86E;CJK COMPATIBILITY IDEOGRAPH-2F86E;Lo;0;L;5BD8;;;;N;;;;; -2F86F;CJK COMPATIBILITY IDEOGRAPH-2F86F;Lo;0;L;5BE7;;;;N;;;;; -2F870;CJK COMPATIBILITY IDEOGRAPH-2F870;Lo;0;L;5BF3;;;;N;;;;; -2F871;CJK COMPATIBILITY IDEOGRAPH-2F871;Lo;0;L;21B18;;;;N;;;;; -2F872;CJK COMPATIBILITY IDEOGRAPH-2F872;Lo;0;L;5BFF;;;;N;;;;; -2F873;CJK COMPATIBILITY IDEOGRAPH-2F873;Lo;0;L;5C06;;;;N;;;;; -2F874;CJK COMPATIBILITY IDEOGRAPH-2F874;Lo;0;L;5F53;;;;N;;;;; -2F875;CJK COMPATIBILITY IDEOGRAPH-2F875;Lo;0;L;5C22;;;;N;;;;; -2F876;CJK COMPATIBILITY IDEOGRAPH-2F876;Lo;0;L;3781;;;;N;;;;; -2F877;CJK COMPATIBILITY IDEOGRAPH-2F877;Lo;0;L;5C60;;;;N;;;;; -2F878;CJK COMPATIBILITY IDEOGRAPH-2F878;Lo;0;L;5C6E;;;;N;;;;; -2F879;CJK COMPATIBILITY IDEOGRAPH-2F879;Lo;0;L;5CC0;;;;N;;;;; -2F87A;CJK COMPATIBILITY IDEOGRAPH-2F87A;Lo;0;L;5C8D;;;;N;;;;; -2F87B;CJK COMPATIBILITY IDEOGRAPH-2F87B;Lo;0;L;21DE4;;;;N;;;;; -2F87C;CJK COMPATIBILITY IDEOGRAPH-2F87C;Lo;0;L;5D43;;;;N;;;;; -2F87D;CJK COMPATIBILITY IDEOGRAPH-2F87D;Lo;0;L;21DE6;;;;N;;;;; -2F87E;CJK COMPATIBILITY IDEOGRAPH-2F87E;Lo;0;L;5D6E;;;;N;;;;; -2F87F;CJK COMPATIBILITY IDEOGRAPH-2F87F;Lo;0;L;5D6B;;;;N;;;;; -2F880;CJK COMPATIBILITY IDEOGRAPH-2F880;Lo;0;L;5D7C;;;;N;;;;; -2F881;CJK COMPATIBILITY IDEOGRAPH-2F881;Lo;0;L;5DE1;;;;N;;;;; -2F882;CJK COMPATIBILITY IDEOGRAPH-2F882;Lo;0;L;5DE2;;;;N;;;;; -2F883;CJK COMPATIBILITY IDEOGRAPH-2F883;Lo;0;L;382F;;;;N;;;;; -2F884;CJK COMPATIBILITY IDEOGRAPH-2F884;Lo;0;L;5DFD;;;;N;;;;; -2F885;CJK COMPATIBILITY IDEOGRAPH-2F885;Lo;0;L;5E28;;;;N;;;;; -2F886;CJK COMPATIBILITY IDEOGRAPH-2F886;Lo;0;L;5E3D;;;;N;;;;; -2F887;CJK COMPATIBILITY IDEOGRAPH-2F887;Lo;0;L;5E69;;;;N;;;;; -2F888;CJK COMPATIBILITY IDEOGRAPH-2F888;Lo;0;L;3862;;;;N;;;;; -2F889;CJK COMPATIBILITY IDEOGRAPH-2F889;Lo;0;L;22183;;;;N;;;;; -2F88A;CJK COMPATIBILITY IDEOGRAPH-2F88A;Lo;0;L;387C;;;;N;;;;; -2F88B;CJK COMPATIBILITY IDEOGRAPH-2F88B;Lo;0;L;5EB0;;;;N;;;;; -2F88C;CJK COMPATIBILITY IDEOGRAPH-2F88C;Lo;0;L;5EB3;;;;N;;;;; -2F88D;CJK COMPATIBILITY IDEOGRAPH-2F88D;Lo;0;L;5EB6;;;;N;;;;; -2F88E;CJK COMPATIBILITY IDEOGRAPH-2F88E;Lo;0;L;5ECA;;;;N;;;;; -2F88F;CJK COMPATIBILITY IDEOGRAPH-2F88F;Lo;0;L;2A392;;;;N;;;;; -2F890;CJK COMPATIBILITY IDEOGRAPH-2F890;Lo;0;L;5EFE;;;9;N;;;;; -2F891;CJK COMPATIBILITY IDEOGRAPH-2F891;Lo;0;L;22331;;;;N;;;;; -2F892;CJK COMPATIBILITY IDEOGRAPH-2F892;Lo;0;L;22331;;;;N;;;;; -2F893;CJK COMPATIBILITY IDEOGRAPH-2F893;Lo;0;L;8201;;;;N;;;;; -2F894;CJK COMPATIBILITY IDEOGRAPH-2F894;Lo;0;L;5F22;;;;N;;;;; -2F895;CJK COMPATIBILITY IDEOGRAPH-2F895;Lo;0;L;5F22;;;;N;;;;; -2F896;CJK COMPATIBILITY IDEOGRAPH-2F896;Lo;0;L;38C7;;;;N;;;;; -2F897;CJK COMPATIBILITY IDEOGRAPH-2F897;Lo;0;L;232B8;;;;N;;;;; -2F898;CJK COMPATIBILITY IDEOGRAPH-2F898;Lo;0;L;261DA;;;;N;;;;; -2F899;CJK COMPATIBILITY IDEOGRAPH-2F899;Lo;0;L;5F62;;;;N;;;;; -2F89A;CJK COMPATIBILITY IDEOGRAPH-2F89A;Lo;0;L;5F6B;;;;N;;;;; -2F89B;CJK COMPATIBILITY IDEOGRAPH-2F89B;Lo;0;L;38E3;;;;N;;;;; -2F89C;CJK COMPATIBILITY IDEOGRAPH-2F89C;Lo;0;L;5F9A;;;;N;;;;; -2F89D;CJK COMPATIBILITY IDEOGRAPH-2F89D;Lo;0;L;5FCD;;;;N;;;;; -2F89E;CJK COMPATIBILITY IDEOGRAPH-2F89E;Lo;0;L;5FD7;;;;N;;;;; -2F89F;CJK COMPATIBILITY IDEOGRAPH-2F89F;Lo;0;L;5FF9;;;;N;;;;; -2F8A0;CJK COMPATIBILITY IDEOGRAPH-2F8A0;Lo;0;L;6081;;;;N;;;;; -2F8A1;CJK COMPATIBILITY IDEOGRAPH-2F8A1;Lo;0;L;393A;;;;N;;;;; -2F8A2;CJK COMPATIBILITY IDEOGRAPH-2F8A2;Lo;0;L;391C;;;;N;;;;; -2F8A3;CJK COMPATIBILITY IDEOGRAPH-2F8A3;Lo;0;L;6094;;;;N;;;;; -2F8A4;CJK COMPATIBILITY IDEOGRAPH-2F8A4;Lo;0;L;226D4;;;;N;;;;; -2F8A5;CJK COMPATIBILITY IDEOGRAPH-2F8A5;Lo;0;L;60C7;;;;N;;;;; -2F8A6;CJK COMPATIBILITY IDEOGRAPH-2F8A6;Lo;0;L;6148;;;;N;;;;; -2F8A7;CJK COMPATIBILITY IDEOGRAPH-2F8A7;Lo;0;L;614C;;;;N;;;;; -2F8A8;CJK COMPATIBILITY IDEOGRAPH-2F8A8;Lo;0;L;614E;;;;N;;;;; -2F8A9;CJK COMPATIBILITY IDEOGRAPH-2F8A9;Lo;0;L;614C;;;;N;;;;; -2F8AA;CJK COMPATIBILITY IDEOGRAPH-2F8AA;Lo;0;L;617A;;;;N;;;;; -2F8AB;CJK COMPATIBILITY IDEOGRAPH-2F8AB;Lo;0;L;618E;;;;N;;;;; -2F8AC;CJK COMPATIBILITY IDEOGRAPH-2F8AC;Lo;0;L;61B2;;;;N;;;;; -2F8AD;CJK COMPATIBILITY IDEOGRAPH-2F8AD;Lo;0;L;61A4;;;;N;;;;; -2F8AE;CJK COMPATIBILITY IDEOGRAPH-2F8AE;Lo;0;L;61AF;;;;N;;;;; -2F8AF;CJK COMPATIBILITY IDEOGRAPH-2F8AF;Lo;0;L;61DE;;;;N;;;;; -2F8B0;CJK COMPATIBILITY IDEOGRAPH-2F8B0;Lo;0;L;61F2;;;;N;;;;; -2F8B1;CJK COMPATIBILITY IDEOGRAPH-2F8B1;Lo;0;L;61F6;;;;N;;;;; -2F8B2;CJK COMPATIBILITY IDEOGRAPH-2F8B2;Lo;0;L;6210;;;;N;;;;; -2F8B3;CJK COMPATIBILITY IDEOGRAPH-2F8B3;Lo;0;L;621B;;;;N;;;;; -2F8B4;CJK COMPATIBILITY IDEOGRAPH-2F8B4;Lo;0;L;625D;;;;N;;;;; -2F8B5;CJK COMPATIBILITY IDEOGRAPH-2F8B5;Lo;0;L;62B1;;;;N;;;;; -2F8B6;CJK COMPATIBILITY IDEOGRAPH-2F8B6;Lo;0;L;62D4;;;;N;;;;; -2F8B7;CJK COMPATIBILITY IDEOGRAPH-2F8B7;Lo;0;L;6350;;;;N;;;;; -2F8B8;CJK COMPATIBILITY IDEOGRAPH-2F8B8;Lo;0;L;22B0C;;;;N;;;;; -2F8B9;CJK COMPATIBILITY IDEOGRAPH-2F8B9;Lo;0;L;633D;;;;N;;;;; -2F8BA;CJK COMPATIBILITY IDEOGRAPH-2F8BA;Lo;0;L;62FC;;;;N;;;;; -2F8BB;CJK COMPATIBILITY IDEOGRAPH-2F8BB;Lo;0;L;6368;;;;N;;;;; -2F8BC;CJK COMPATIBILITY IDEOGRAPH-2F8BC;Lo;0;L;6383;;;;N;;;;; -2F8BD;CJK COMPATIBILITY IDEOGRAPH-2F8BD;Lo;0;L;63E4;;;;N;;;;; -2F8BE;CJK COMPATIBILITY IDEOGRAPH-2F8BE;Lo;0;L;22BF1;;;;N;;;;; -2F8BF;CJK COMPATIBILITY IDEOGRAPH-2F8BF;Lo;0;L;6422;;;;N;;;;; -2F8C0;CJK COMPATIBILITY IDEOGRAPH-2F8C0;Lo;0;L;63C5;;;;N;;;;; -2F8C1;CJK COMPATIBILITY IDEOGRAPH-2F8C1;Lo;0;L;63A9;;;;N;;;;; -2F8C2;CJK COMPATIBILITY IDEOGRAPH-2F8C2;Lo;0;L;3A2E;;;;N;;;;; -2F8C3;CJK COMPATIBILITY IDEOGRAPH-2F8C3;Lo;0;L;6469;;;;N;;;;; -2F8C4;CJK COMPATIBILITY IDEOGRAPH-2F8C4;Lo;0;L;647E;;;;N;;;;; -2F8C5;CJK COMPATIBILITY IDEOGRAPH-2F8C5;Lo;0;L;649D;;;;N;;;;; -2F8C6;CJK COMPATIBILITY IDEOGRAPH-2F8C6;Lo;0;L;6477;;;;N;;;;; -2F8C7;CJK COMPATIBILITY IDEOGRAPH-2F8C7;Lo;0;L;3A6C;;;;N;;;;; -2F8C8;CJK COMPATIBILITY IDEOGRAPH-2F8C8;Lo;0;L;654F;;;;N;;;;; -2F8C9;CJK COMPATIBILITY IDEOGRAPH-2F8C9;Lo;0;L;656C;;;;N;;;;; -2F8CA;CJK COMPATIBILITY IDEOGRAPH-2F8CA;Lo;0;L;2300A;;;;N;;;;; -2F8CB;CJK COMPATIBILITY IDEOGRAPH-2F8CB;Lo;0;L;65E3;;;;N;;;;; -2F8CC;CJK COMPATIBILITY IDEOGRAPH-2F8CC;Lo;0;L;66F8;;;;N;;;;; -2F8CD;CJK COMPATIBILITY IDEOGRAPH-2F8CD;Lo;0;L;6649;;;;N;;;;; -2F8CE;CJK COMPATIBILITY IDEOGRAPH-2F8CE;Lo;0;L;3B19;;;;N;;;;; -2F8CF;CJK COMPATIBILITY IDEOGRAPH-2F8CF;Lo;0;L;6691;;;;N;;;;; -2F8D0;CJK COMPATIBILITY IDEOGRAPH-2F8D0;Lo;0;L;3B08;;;;N;;;;; -2F8D1;CJK COMPATIBILITY IDEOGRAPH-2F8D1;Lo;0;L;3AE4;;;;N;;;;; -2F8D2;CJK COMPATIBILITY IDEOGRAPH-2F8D2;Lo;0;L;5192;;;;N;;;;; -2F8D3;CJK COMPATIBILITY IDEOGRAPH-2F8D3;Lo;0;L;5195;;;;N;;;;; -2F8D4;CJK COMPATIBILITY IDEOGRAPH-2F8D4;Lo;0;L;6700;;;;N;;;;; -2F8D5;CJK COMPATIBILITY IDEOGRAPH-2F8D5;Lo;0;L;669C;;;;N;;;;; -2F8D6;CJK COMPATIBILITY IDEOGRAPH-2F8D6;Lo;0;L;80AD;;;;N;;;;; -2F8D7;CJK COMPATIBILITY IDEOGRAPH-2F8D7;Lo;0;L;43D9;;;;N;;;;; -2F8D8;CJK COMPATIBILITY IDEOGRAPH-2F8D8;Lo;0;L;6717;;;;N;;;;; -2F8D9;CJK COMPATIBILITY IDEOGRAPH-2F8D9;Lo;0;L;671B;;;;N;;;;; -2F8DA;CJK COMPATIBILITY IDEOGRAPH-2F8DA;Lo;0;L;6721;;;;N;;;;; -2F8DB;CJK COMPATIBILITY IDEOGRAPH-2F8DB;Lo;0;L;675E;;;;N;;;;; -2F8DC;CJK COMPATIBILITY IDEOGRAPH-2F8DC;Lo;0;L;6753;;;;N;;;;; -2F8DD;CJK COMPATIBILITY IDEOGRAPH-2F8DD;Lo;0;L;233C3;;;;N;;;;; -2F8DE;CJK COMPATIBILITY IDEOGRAPH-2F8DE;Lo;0;L;3B49;;;;N;;;;; -2F8DF;CJK COMPATIBILITY IDEOGRAPH-2F8DF;Lo;0;L;67FA;;;;N;;;;; -2F8E0;CJK COMPATIBILITY IDEOGRAPH-2F8E0;Lo;0;L;6785;;;;N;;;;; -2F8E1;CJK COMPATIBILITY IDEOGRAPH-2F8E1;Lo;0;L;6852;;;;N;;;;; -2F8E2;CJK COMPATIBILITY IDEOGRAPH-2F8E2;Lo;0;L;6885;;;;N;;;;; -2F8E3;CJK COMPATIBILITY IDEOGRAPH-2F8E3;Lo;0;L;2346D;;;;N;;;;; -2F8E4;CJK COMPATIBILITY IDEOGRAPH-2F8E4;Lo;0;L;688E;;;;N;;;;; -2F8E5;CJK COMPATIBILITY IDEOGRAPH-2F8E5;Lo;0;L;681F;;;;N;;;;; -2F8E6;CJK COMPATIBILITY IDEOGRAPH-2F8E6;Lo;0;L;6914;;;;N;;;;; -2F8E7;CJK COMPATIBILITY IDEOGRAPH-2F8E7;Lo;0;L;3B9D;;;;N;;;;; -2F8E8;CJK COMPATIBILITY IDEOGRAPH-2F8E8;Lo;0;L;6942;;;;N;;;;; -2F8E9;CJK COMPATIBILITY IDEOGRAPH-2F8E9;Lo;0;L;69A3;;;;N;;;;; -2F8EA;CJK COMPATIBILITY IDEOGRAPH-2F8EA;Lo;0;L;69EA;;;;N;;;;; -2F8EB;CJK COMPATIBILITY IDEOGRAPH-2F8EB;Lo;0;L;6AA8;;;;N;;;;; -2F8EC;CJK COMPATIBILITY IDEOGRAPH-2F8EC;Lo;0;L;236A3;;;;N;;;;; -2F8ED;CJK COMPATIBILITY IDEOGRAPH-2F8ED;Lo;0;L;6ADB;;;;N;;;;; -2F8EE;CJK COMPATIBILITY IDEOGRAPH-2F8EE;Lo;0;L;3C18;;;;N;;;;; -2F8EF;CJK COMPATIBILITY IDEOGRAPH-2F8EF;Lo;0;L;6B21;;;;N;;;;; -2F8F0;CJK COMPATIBILITY IDEOGRAPH-2F8F0;Lo;0;L;238A7;;;;N;;;;; -2F8F1;CJK COMPATIBILITY IDEOGRAPH-2F8F1;Lo;0;L;6B54;;;;N;;;;; -2F8F2;CJK COMPATIBILITY IDEOGRAPH-2F8F2;Lo;0;L;3C4E;;;;N;;;;; -2F8F3;CJK COMPATIBILITY IDEOGRAPH-2F8F3;Lo;0;L;6B72;;;;N;;;;; -2F8F4;CJK COMPATIBILITY IDEOGRAPH-2F8F4;Lo;0;L;6B9F;;;;N;;;;; -2F8F5;CJK COMPATIBILITY IDEOGRAPH-2F8F5;Lo;0;L;6BBA;;;;N;;;;; -2F8F6;CJK COMPATIBILITY IDEOGRAPH-2F8F6;Lo;0;L;6BBB;;;;N;;;;; -2F8F7;CJK COMPATIBILITY IDEOGRAPH-2F8F7;Lo;0;L;23A8D;;;;N;;;;; -2F8F8;CJK COMPATIBILITY IDEOGRAPH-2F8F8;Lo;0;L;21D0B;;;;N;;;;; -2F8F9;CJK COMPATIBILITY IDEOGRAPH-2F8F9;Lo;0;L;23AFA;;;;N;;;;; -2F8FA;CJK COMPATIBILITY IDEOGRAPH-2F8FA;Lo;0;L;6C4E;;;;N;;;;; -2F8FB;CJK COMPATIBILITY IDEOGRAPH-2F8FB;Lo;0;L;23CBC;;;;N;;;;; -2F8FC;CJK COMPATIBILITY IDEOGRAPH-2F8FC;Lo;0;L;6CBF;;;;N;;;;; -2F8FD;CJK COMPATIBILITY IDEOGRAPH-2F8FD;Lo;0;L;6CCD;;;;N;;;;; -2F8FE;CJK COMPATIBILITY IDEOGRAPH-2F8FE;Lo;0;L;6C67;;;;N;;;;; -2F8FF;CJK COMPATIBILITY IDEOGRAPH-2F8FF;Lo;0;L;6D16;;;;N;;;;; -2F900;CJK COMPATIBILITY IDEOGRAPH-2F900;Lo;0;L;6D3E;;;;N;;;;; -2F901;CJK COMPATIBILITY IDEOGRAPH-2F901;Lo;0;L;6D77;;;;N;;;;; -2F902;CJK COMPATIBILITY IDEOGRAPH-2F902;Lo;0;L;6D41;;;;N;;;;; -2F903;CJK COMPATIBILITY IDEOGRAPH-2F903;Lo;0;L;6D69;;;;N;;;;; -2F904;CJK COMPATIBILITY IDEOGRAPH-2F904;Lo;0;L;6D78;;;;N;;;;; -2F905;CJK COMPATIBILITY IDEOGRAPH-2F905;Lo;0;L;6D85;;;;N;;;;; -2F906;CJK COMPATIBILITY IDEOGRAPH-2F906;Lo;0;L;23D1E;;;;N;;;;; -2F907;CJK COMPATIBILITY IDEOGRAPH-2F907;Lo;0;L;6D34;;;;N;;;;; -2F908;CJK COMPATIBILITY IDEOGRAPH-2F908;Lo;0;L;6E2F;;;;N;;;;; -2F909;CJK COMPATIBILITY IDEOGRAPH-2F909;Lo;0;L;6E6E;;;;N;;;;; -2F90A;CJK COMPATIBILITY IDEOGRAPH-2F90A;Lo;0;L;3D33;;;;N;;;;; -2F90B;CJK COMPATIBILITY IDEOGRAPH-2F90B;Lo;0;L;6ECB;;;;N;;;;; -2F90C;CJK COMPATIBILITY IDEOGRAPH-2F90C;Lo;0;L;6EC7;;;;N;;;;; -2F90D;CJK COMPATIBILITY IDEOGRAPH-2F90D;Lo;0;L;23ED1;;;;N;;;;; -2F90E;CJK COMPATIBILITY IDEOGRAPH-2F90E;Lo;0;L;6DF9;;;;N;;;;; -2F90F;CJK COMPATIBILITY IDEOGRAPH-2F90F;Lo;0;L;6F6E;;;;N;;;;; -2F910;CJK COMPATIBILITY IDEOGRAPH-2F910;Lo;0;L;23F5E;;;;N;;;;; -2F911;CJK COMPATIBILITY IDEOGRAPH-2F911;Lo;0;L;23F8E;;;;N;;;;; -2F912;CJK COMPATIBILITY IDEOGRAPH-2F912;Lo;0;L;6FC6;;;;N;;;;; -2F913;CJK COMPATIBILITY IDEOGRAPH-2F913;Lo;0;L;7039;;;;N;;;;; -2F914;CJK COMPATIBILITY IDEOGRAPH-2F914;Lo;0;L;701E;;;;N;;;;; -2F915;CJK COMPATIBILITY IDEOGRAPH-2F915;Lo;0;L;701B;;;;N;;;;; -2F916;CJK COMPATIBILITY IDEOGRAPH-2F916;Lo;0;L;3D96;;;;N;;;;; -2F917;CJK COMPATIBILITY IDEOGRAPH-2F917;Lo;0;L;704A;;;;N;;;;; -2F918;CJK COMPATIBILITY IDEOGRAPH-2F918;Lo;0;L;707D;;;;N;;;;; -2F919;CJK COMPATIBILITY IDEOGRAPH-2F919;Lo;0;L;7077;;;;N;;;;; -2F91A;CJK COMPATIBILITY IDEOGRAPH-2F91A;Lo;0;L;70AD;;;;N;;;;; -2F91B;CJK COMPATIBILITY IDEOGRAPH-2F91B;Lo;0;L;20525;;;;N;;;;; -2F91C;CJK COMPATIBILITY IDEOGRAPH-2F91C;Lo;0;L;7145;;;;N;;;;; -2F91D;CJK COMPATIBILITY IDEOGRAPH-2F91D;Lo;0;L;24263;;;;N;;;;; -2F91E;CJK COMPATIBILITY IDEOGRAPH-2F91E;Lo;0;L;719C;;;;N;;;;; -2F91F;CJK COMPATIBILITY IDEOGRAPH-2F91F;Lo;0;L;243AB;;;;N;;;;; -2F920;CJK COMPATIBILITY IDEOGRAPH-2F920;Lo;0;L;7228;;;;N;;;;; -2F921;CJK COMPATIBILITY IDEOGRAPH-2F921;Lo;0;L;7235;;;;N;;;;; -2F922;CJK COMPATIBILITY IDEOGRAPH-2F922;Lo;0;L;7250;;;;N;;;;; -2F923;CJK COMPATIBILITY IDEOGRAPH-2F923;Lo;0;L;24608;;;;N;;;;; -2F924;CJK COMPATIBILITY IDEOGRAPH-2F924;Lo;0;L;7280;;;;N;;;;; -2F925;CJK COMPATIBILITY IDEOGRAPH-2F925;Lo;0;L;7295;;;;N;;;;; -2F926;CJK COMPATIBILITY IDEOGRAPH-2F926;Lo;0;L;24735;;;;N;;;;; -2F927;CJK COMPATIBILITY IDEOGRAPH-2F927;Lo;0;L;24814;;;;N;;;;; -2F928;CJK COMPATIBILITY IDEOGRAPH-2F928;Lo;0;L;737A;;;;N;;;;; -2F929;CJK COMPATIBILITY IDEOGRAPH-2F929;Lo;0;L;738B;;;;N;;;;; -2F92A;CJK COMPATIBILITY IDEOGRAPH-2F92A;Lo;0;L;3EAC;;;;N;;;;; -2F92B;CJK COMPATIBILITY IDEOGRAPH-2F92B;Lo;0;L;73A5;;;;N;;;;; -2F92C;CJK COMPATIBILITY IDEOGRAPH-2F92C;Lo;0;L;3EB8;;;;N;;;;; -2F92D;CJK COMPATIBILITY IDEOGRAPH-2F92D;Lo;0;L;3EB8;;;;N;;;;; -2F92E;CJK COMPATIBILITY IDEOGRAPH-2F92E;Lo;0;L;7447;;;;N;;;;; -2F92F;CJK COMPATIBILITY IDEOGRAPH-2F92F;Lo;0;L;745C;;;;N;;;;; -2F930;CJK COMPATIBILITY IDEOGRAPH-2F930;Lo;0;L;7471;;;;N;;;;; -2F931;CJK COMPATIBILITY IDEOGRAPH-2F931;Lo;0;L;7485;;;;N;;;;; -2F932;CJK COMPATIBILITY IDEOGRAPH-2F932;Lo;0;L;74CA;;;;N;;;;; -2F933;CJK COMPATIBILITY IDEOGRAPH-2F933;Lo;0;L;3F1B;;;;N;;;;; -2F934;CJK COMPATIBILITY IDEOGRAPH-2F934;Lo;0;L;7524;;;;N;;;;; -2F935;CJK COMPATIBILITY IDEOGRAPH-2F935;Lo;0;L;24C36;;;;N;;;;; -2F936;CJK COMPATIBILITY IDEOGRAPH-2F936;Lo;0;L;753E;;;;N;;;;; -2F937;CJK COMPATIBILITY IDEOGRAPH-2F937;Lo;0;L;24C92;;;;N;;;;; -2F938;CJK COMPATIBILITY IDEOGRAPH-2F938;Lo;0;L;7570;;;;N;;;;; -2F939;CJK COMPATIBILITY IDEOGRAPH-2F939;Lo;0;L;2219F;;;;N;;;;; -2F93A;CJK COMPATIBILITY IDEOGRAPH-2F93A;Lo;0;L;7610;;;;N;;;;; -2F93B;CJK COMPATIBILITY IDEOGRAPH-2F93B;Lo;0;L;24FA1;;;;N;;;;; -2F93C;CJK COMPATIBILITY IDEOGRAPH-2F93C;Lo;0;L;24FB8;;;;N;;;;; -2F93D;CJK COMPATIBILITY IDEOGRAPH-2F93D;Lo;0;L;25044;;;;N;;;;; -2F93E;CJK COMPATIBILITY IDEOGRAPH-2F93E;Lo;0;L;3FFC;;;;N;;;;; -2F93F;CJK COMPATIBILITY IDEOGRAPH-2F93F;Lo;0;L;4008;;;;N;;;;; -2F940;CJK COMPATIBILITY IDEOGRAPH-2F940;Lo;0;L;76F4;;;;N;;;;; -2F941;CJK COMPATIBILITY IDEOGRAPH-2F941;Lo;0;L;250F3;;;;N;;;;; -2F942;CJK COMPATIBILITY IDEOGRAPH-2F942;Lo;0;L;250F2;;;;N;;;;; -2F943;CJK COMPATIBILITY IDEOGRAPH-2F943;Lo;0;L;25119;;;;N;;;;; -2F944;CJK COMPATIBILITY IDEOGRAPH-2F944;Lo;0;L;25133;;;;N;;;;; -2F945;CJK COMPATIBILITY IDEOGRAPH-2F945;Lo;0;L;771E;;;;N;;;;; -2F946;CJK COMPATIBILITY IDEOGRAPH-2F946;Lo;0;L;771F;;;;N;;;;; -2F947;CJK COMPATIBILITY IDEOGRAPH-2F947;Lo;0;L;771F;;;;N;;;;; -2F948;CJK COMPATIBILITY IDEOGRAPH-2F948;Lo;0;L;774A;;;;N;;;;; -2F949;CJK COMPATIBILITY IDEOGRAPH-2F949;Lo;0;L;4039;;;;N;;;;; -2F94A;CJK COMPATIBILITY IDEOGRAPH-2F94A;Lo;0;L;778B;;;;N;;;;; -2F94B;CJK COMPATIBILITY IDEOGRAPH-2F94B;Lo;0;L;4046;;;;N;;;;; -2F94C;CJK COMPATIBILITY IDEOGRAPH-2F94C;Lo;0;L;4096;;;;N;;;;; -2F94D;CJK COMPATIBILITY IDEOGRAPH-2F94D;Lo;0;L;2541D;;;;N;;;;; -2F94E;CJK COMPATIBILITY IDEOGRAPH-2F94E;Lo;0;L;784E;;;;N;;;;; -2F94F;CJK COMPATIBILITY IDEOGRAPH-2F94F;Lo;0;L;788C;;;;N;;;;; -2F950;CJK COMPATIBILITY IDEOGRAPH-2F950;Lo;0;L;78CC;;;;N;;;;; -2F951;CJK COMPATIBILITY IDEOGRAPH-2F951;Lo;0;L;40E3;;;;N;;;;; -2F952;CJK COMPATIBILITY IDEOGRAPH-2F952;Lo;0;L;25626;;;;N;;;;; -2F953;CJK COMPATIBILITY IDEOGRAPH-2F953;Lo;0;L;7956;;;;N;;;;; -2F954;CJK COMPATIBILITY IDEOGRAPH-2F954;Lo;0;L;2569A;;;;N;;;;; -2F955;CJK COMPATIBILITY IDEOGRAPH-2F955;Lo;0;L;256C5;;;;N;;;;; -2F956;CJK COMPATIBILITY IDEOGRAPH-2F956;Lo;0;L;798F;;;;N;;;;; -2F957;CJK COMPATIBILITY IDEOGRAPH-2F957;Lo;0;L;79EB;;;;N;;;;; -2F958;CJK COMPATIBILITY IDEOGRAPH-2F958;Lo;0;L;412F;;;;N;;;;; -2F959;CJK COMPATIBILITY IDEOGRAPH-2F959;Lo;0;L;7A40;;;;N;;;;; -2F95A;CJK COMPATIBILITY IDEOGRAPH-2F95A;Lo;0;L;7A4A;;;;N;;;;; -2F95B;CJK COMPATIBILITY IDEOGRAPH-2F95B;Lo;0;L;7A4F;;;;N;;;;; -2F95C;CJK COMPATIBILITY IDEOGRAPH-2F95C;Lo;0;L;2597C;;;;N;;;;; -2F95D;CJK COMPATIBILITY IDEOGRAPH-2F95D;Lo;0;L;25AA7;;;;N;;;;; -2F95E;CJK COMPATIBILITY IDEOGRAPH-2F95E;Lo;0;L;25AA7;;;;N;;;;; -2F95F;CJK COMPATIBILITY IDEOGRAPH-2F95F;Lo;0;L;7AEE;;;;N;;;;; -2F960;CJK COMPATIBILITY IDEOGRAPH-2F960;Lo;0;L;4202;;;;N;;;;; -2F961;CJK COMPATIBILITY IDEOGRAPH-2F961;Lo;0;L;25BAB;;;;N;;;;; -2F962;CJK COMPATIBILITY IDEOGRAPH-2F962;Lo;0;L;7BC6;;;;N;;;;; -2F963;CJK COMPATIBILITY IDEOGRAPH-2F963;Lo;0;L;7BC9;;;;N;;;;; -2F964;CJK COMPATIBILITY IDEOGRAPH-2F964;Lo;0;L;4227;;;;N;;;;; -2F965;CJK COMPATIBILITY IDEOGRAPH-2F965;Lo;0;L;25C80;;;;N;;;;; -2F966;CJK COMPATIBILITY IDEOGRAPH-2F966;Lo;0;L;7CD2;;;;N;;;;; -2F967;CJK COMPATIBILITY IDEOGRAPH-2F967;Lo;0;L;42A0;;;;N;;;;; -2F968;CJK COMPATIBILITY IDEOGRAPH-2F968;Lo;0;L;7CE8;;;;N;;;;; -2F969;CJK COMPATIBILITY IDEOGRAPH-2F969;Lo;0;L;7CE3;;;;N;;;;; -2F96A;CJK COMPATIBILITY IDEOGRAPH-2F96A;Lo;0;L;7D00;;;;N;;;;; -2F96B;CJK COMPATIBILITY IDEOGRAPH-2F96B;Lo;0;L;25F86;;;;N;;;;; -2F96C;CJK COMPATIBILITY IDEOGRAPH-2F96C;Lo;0;L;7D63;;;;N;;;;; -2F96D;CJK COMPATIBILITY IDEOGRAPH-2F96D;Lo;0;L;4301;;;;N;;;;; -2F96E;CJK COMPATIBILITY IDEOGRAPH-2F96E;Lo;0;L;7DC7;;;;N;;;;; -2F96F;CJK COMPATIBILITY IDEOGRAPH-2F96F;Lo;0;L;7E02;;;;N;;;;; -2F970;CJK COMPATIBILITY IDEOGRAPH-2F970;Lo;0;L;7E45;;;;N;;;;; -2F971;CJK COMPATIBILITY IDEOGRAPH-2F971;Lo;0;L;4334;;;;N;;;;; -2F972;CJK COMPATIBILITY IDEOGRAPH-2F972;Lo;0;L;26228;;;;N;;;;; -2F973;CJK COMPATIBILITY IDEOGRAPH-2F973;Lo;0;L;26247;;;;N;;;;; -2F974;CJK COMPATIBILITY IDEOGRAPH-2F974;Lo;0;L;4359;;;;N;;;;; -2F975;CJK COMPATIBILITY IDEOGRAPH-2F975;Lo;0;L;262D9;;;;N;;;;; -2F976;CJK COMPATIBILITY IDEOGRAPH-2F976;Lo;0;L;7F7A;;;;N;;;;; -2F977;CJK COMPATIBILITY IDEOGRAPH-2F977;Lo;0;L;2633E;;;;N;;;;; -2F978;CJK COMPATIBILITY IDEOGRAPH-2F978;Lo;0;L;7F95;;;;N;;;;; -2F979;CJK COMPATIBILITY IDEOGRAPH-2F979;Lo;0;L;7FFA;;;;N;;;;; -2F97A;CJK COMPATIBILITY IDEOGRAPH-2F97A;Lo;0;L;8005;;;;N;;;;; -2F97B;CJK COMPATIBILITY IDEOGRAPH-2F97B;Lo;0;L;264DA;;;;N;;;;; -2F97C;CJK COMPATIBILITY IDEOGRAPH-2F97C;Lo;0;L;26523;;;;N;;;;; -2F97D;CJK COMPATIBILITY IDEOGRAPH-2F97D;Lo;0;L;8060;;;;N;;;;; -2F97E;CJK COMPATIBILITY IDEOGRAPH-2F97E;Lo;0;L;265A8;;;;N;;;;; -2F97F;CJK COMPATIBILITY IDEOGRAPH-2F97F;Lo;0;L;8070;;;;N;;;;; -2F980;CJK COMPATIBILITY IDEOGRAPH-2F980;Lo;0;L;2335F;;;;N;;;;; -2F981;CJK COMPATIBILITY IDEOGRAPH-2F981;Lo;0;L;43D5;;;;N;;;;; -2F982;CJK COMPATIBILITY IDEOGRAPH-2F982;Lo;0;L;80B2;;;;N;;;;; -2F983;CJK COMPATIBILITY IDEOGRAPH-2F983;Lo;0;L;8103;;;;N;;;;; -2F984;CJK COMPATIBILITY IDEOGRAPH-2F984;Lo;0;L;440B;;;;N;;;;; -2F985;CJK COMPATIBILITY IDEOGRAPH-2F985;Lo;0;L;813E;;;;N;;;;; -2F986;CJK COMPATIBILITY IDEOGRAPH-2F986;Lo;0;L;5AB5;;;;N;;;;; -2F987;CJK COMPATIBILITY IDEOGRAPH-2F987;Lo;0;L;267A7;;;;N;;;;; -2F988;CJK COMPATIBILITY IDEOGRAPH-2F988;Lo;0;L;267B5;;;;N;;;;; -2F989;CJK COMPATIBILITY IDEOGRAPH-2F989;Lo;0;L;23393;;;;N;;;;; -2F98A;CJK COMPATIBILITY IDEOGRAPH-2F98A;Lo;0;L;2339C;;;;N;;;;; -2F98B;CJK COMPATIBILITY IDEOGRAPH-2F98B;Lo;0;L;8201;;;;N;;;;; -2F98C;CJK COMPATIBILITY IDEOGRAPH-2F98C;Lo;0;L;8204;;;;N;;;;; -2F98D;CJK COMPATIBILITY IDEOGRAPH-2F98D;Lo;0;L;8F9E;;;;N;;;;; -2F98E;CJK COMPATIBILITY IDEOGRAPH-2F98E;Lo;0;L;446B;;;;N;;;;; -2F98F;CJK COMPATIBILITY IDEOGRAPH-2F98F;Lo;0;L;8291;;;;N;;;;; -2F990;CJK COMPATIBILITY IDEOGRAPH-2F990;Lo;0;L;828B;;;;N;;;;; -2F991;CJK COMPATIBILITY IDEOGRAPH-2F991;Lo;0;L;829D;;;;N;;;;; -2F992;CJK COMPATIBILITY IDEOGRAPH-2F992;Lo;0;L;52B3;;;;N;;;;; -2F993;CJK COMPATIBILITY IDEOGRAPH-2F993;Lo;0;L;82B1;;;;N;;;;; -2F994;CJK COMPATIBILITY IDEOGRAPH-2F994;Lo;0;L;82B3;;;;N;;;;; -2F995;CJK COMPATIBILITY IDEOGRAPH-2F995;Lo;0;L;82BD;;;;N;;;;; -2F996;CJK COMPATIBILITY IDEOGRAPH-2F996;Lo;0;L;82E6;;;;N;;;;; -2F997;CJK COMPATIBILITY IDEOGRAPH-2F997;Lo;0;L;26B3C;;;;N;;;;; -2F998;CJK COMPATIBILITY IDEOGRAPH-2F998;Lo;0;L;82E5;;;;N;;;;; -2F999;CJK COMPATIBILITY IDEOGRAPH-2F999;Lo;0;L;831D;;;;N;;;;; -2F99A;CJK COMPATIBILITY IDEOGRAPH-2F99A;Lo;0;L;8363;;;;N;;;;; -2F99B;CJK COMPATIBILITY IDEOGRAPH-2F99B;Lo;0;L;83AD;;;;N;;;;; -2F99C;CJK COMPATIBILITY IDEOGRAPH-2F99C;Lo;0;L;8323;;;;N;;;;; -2F99D;CJK COMPATIBILITY IDEOGRAPH-2F99D;Lo;0;L;83BD;;;;N;;;;; -2F99E;CJK COMPATIBILITY IDEOGRAPH-2F99E;Lo;0;L;83E7;;;;N;;;;; -2F99F;CJK COMPATIBILITY IDEOGRAPH-2F99F;Lo;0;L;8457;;;;N;;;;; -2F9A0;CJK COMPATIBILITY IDEOGRAPH-2F9A0;Lo;0;L;8353;;;;N;;;;; -2F9A1;CJK COMPATIBILITY IDEOGRAPH-2F9A1;Lo;0;L;83CA;;;;N;;;;; -2F9A2;CJK COMPATIBILITY IDEOGRAPH-2F9A2;Lo;0;L;83CC;;;;N;;;;; -2F9A3;CJK COMPATIBILITY IDEOGRAPH-2F9A3;Lo;0;L;83DC;;;;N;;;;; -2F9A4;CJK COMPATIBILITY IDEOGRAPH-2F9A4;Lo;0;L;26C36;;;;N;;;;; -2F9A5;CJK COMPATIBILITY IDEOGRAPH-2F9A5;Lo;0;L;26D6B;;;;N;;;;; -2F9A6;CJK COMPATIBILITY IDEOGRAPH-2F9A6;Lo;0;L;26CD5;;;;N;;;;; -2F9A7;CJK COMPATIBILITY IDEOGRAPH-2F9A7;Lo;0;L;452B;;;;N;;;;; -2F9A8;CJK COMPATIBILITY IDEOGRAPH-2F9A8;Lo;0;L;84F1;;;;N;;;;; -2F9A9;CJK COMPATIBILITY IDEOGRAPH-2F9A9;Lo;0;L;84F3;;;;N;;;;; -2F9AA;CJK COMPATIBILITY IDEOGRAPH-2F9AA;Lo;0;L;8516;;;;N;;;;; -2F9AB;CJK COMPATIBILITY IDEOGRAPH-2F9AB;Lo;0;L;273CA;;;;N;;;;; -2F9AC;CJK COMPATIBILITY IDEOGRAPH-2F9AC;Lo;0;L;8564;;;;N;;;;; -2F9AD;CJK COMPATIBILITY IDEOGRAPH-2F9AD;Lo;0;L;26F2C;;;;N;;;;; -2F9AE;CJK COMPATIBILITY IDEOGRAPH-2F9AE;Lo;0;L;455D;;;;N;;;;; -2F9AF;CJK COMPATIBILITY IDEOGRAPH-2F9AF;Lo;0;L;4561;;;;N;;;;; -2F9B0;CJK COMPATIBILITY IDEOGRAPH-2F9B0;Lo;0;L;26FB1;;;;N;;;;; -2F9B1;CJK COMPATIBILITY IDEOGRAPH-2F9B1;Lo;0;L;270D2;;;;N;;;;; -2F9B2;CJK COMPATIBILITY IDEOGRAPH-2F9B2;Lo;0;L;456B;;;;N;;;;; -2F9B3;CJK COMPATIBILITY IDEOGRAPH-2F9B3;Lo;0;L;8650;;;;N;;;;; -2F9B4;CJK COMPATIBILITY IDEOGRAPH-2F9B4;Lo;0;L;865C;;;;N;;;;; -2F9B5;CJK COMPATIBILITY IDEOGRAPH-2F9B5;Lo;0;L;8667;;;;N;;;;; -2F9B6;CJK COMPATIBILITY IDEOGRAPH-2F9B6;Lo;0;L;8669;;;;N;;;;; -2F9B7;CJK COMPATIBILITY IDEOGRAPH-2F9B7;Lo;0;L;86A9;;;;N;;;;; -2F9B8;CJK COMPATIBILITY IDEOGRAPH-2F9B8;Lo;0;L;8688;;;;N;;;;; -2F9B9;CJK COMPATIBILITY IDEOGRAPH-2F9B9;Lo;0;L;870E;;;;N;;;;; -2F9BA;CJK COMPATIBILITY IDEOGRAPH-2F9BA;Lo;0;L;86E2;;;;N;;;;; -2F9BB;CJK COMPATIBILITY IDEOGRAPH-2F9BB;Lo;0;L;8779;;;;N;;;;; -2F9BC;CJK COMPATIBILITY IDEOGRAPH-2F9BC;Lo;0;L;8728;;;;N;;;;; -2F9BD;CJK COMPATIBILITY IDEOGRAPH-2F9BD;Lo;0;L;876B;;;;N;;;;; -2F9BE;CJK COMPATIBILITY IDEOGRAPH-2F9BE;Lo;0;L;8786;;;;N;;;;; -2F9BF;CJK COMPATIBILITY IDEOGRAPH-2F9BF;Lo;0;L;45D7;;;;N;;;;; -2F9C0;CJK COMPATIBILITY IDEOGRAPH-2F9C0;Lo;0;L;87E1;;;;N;;;;; -2F9C1;CJK COMPATIBILITY IDEOGRAPH-2F9C1;Lo;0;L;8801;;;;N;;;;; -2F9C2;CJK COMPATIBILITY IDEOGRAPH-2F9C2;Lo;0;L;45F9;;;;N;;;;; -2F9C3;CJK COMPATIBILITY IDEOGRAPH-2F9C3;Lo;0;L;8860;;;;N;;;;; -2F9C4;CJK COMPATIBILITY IDEOGRAPH-2F9C4;Lo;0;L;8863;;;;N;;;;; -2F9C5;CJK COMPATIBILITY IDEOGRAPH-2F9C5;Lo;0;L;27667;;;;N;;;;; -2F9C6;CJK COMPATIBILITY IDEOGRAPH-2F9C6;Lo;0;L;88D7;;;;N;;;;; -2F9C7;CJK COMPATIBILITY IDEOGRAPH-2F9C7;Lo;0;L;88DE;;;;N;;;;; -2F9C8;CJK COMPATIBILITY IDEOGRAPH-2F9C8;Lo;0;L;4635;;;;N;;;;; -2F9C9;CJK COMPATIBILITY IDEOGRAPH-2F9C9;Lo;0;L;88FA;;;;N;;;;; -2F9CA;CJK COMPATIBILITY IDEOGRAPH-2F9CA;Lo;0;L;34BB;;;;N;;;;; -2F9CB;CJK COMPATIBILITY IDEOGRAPH-2F9CB;Lo;0;L;278AE;;;;N;;;;; -2F9CC;CJK COMPATIBILITY IDEOGRAPH-2F9CC;Lo;0;L;27966;;;;N;;;;; -2F9CD;CJK COMPATIBILITY IDEOGRAPH-2F9CD;Lo;0;L;46BE;;;;N;;;;; -2F9CE;CJK COMPATIBILITY IDEOGRAPH-2F9CE;Lo;0;L;46C7;;;;N;;;;; -2F9CF;CJK COMPATIBILITY IDEOGRAPH-2F9CF;Lo;0;L;8AA0;;;;N;;;;; -2F9D0;CJK COMPATIBILITY IDEOGRAPH-2F9D0;Lo;0;L;8AED;;;;N;;;;; -2F9D1;CJK COMPATIBILITY IDEOGRAPH-2F9D1;Lo;0;L;8B8A;;;;N;;;;; -2F9D2;CJK COMPATIBILITY IDEOGRAPH-2F9D2;Lo;0;L;8C55;;;;N;;;;; -2F9D3;CJK COMPATIBILITY IDEOGRAPH-2F9D3;Lo;0;L;27CA8;;;;N;;;;; -2F9D4;CJK COMPATIBILITY IDEOGRAPH-2F9D4;Lo;0;L;8CAB;;;;N;;;;; -2F9D5;CJK COMPATIBILITY IDEOGRAPH-2F9D5;Lo;0;L;8CC1;;;;N;;;;; -2F9D6;CJK COMPATIBILITY IDEOGRAPH-2F9D6;Lo;0;L;8D1B;;;;N;;;;; -2F9D7;CJK COMPATIBILITY IDEOGRAPH-2F9D7;Lo;0;L;8D77;;;;N;;;;; -2F9D8;CJK COMPATIBILITY IDEOGRAPH-2F9D8;Lo;0;L;27F2F;;;;N;;;;; -2F9D9;CJK COMPATIBILITY IDEOGRAPH-2F9D9;Lo;0;L;20804;;;;N;;;;; -2F9DA;CJK COMPATIBILITY IDEOGRAPH-2F9DA;Lo;0;L;8DCB;;;;N;;;;; -2F9DB;CJK COMPATIBILITY IDEOGRAPH-2F9DB;Lo;0;L;8DBC;;;;N;;;;; -2F9DC;CJK COMPATIBILITY IDEOGRAPH-2F9DC;Lo;0;L;8DF0;;;;N;;;;; -2F9DD;CJK COMPATIBILITY IDEOGRAPH-2F9DD;Lo;0;L;208DE;;;;N;;;;; -2F9DE;CJK COMPATIBILITY IDEOGRAPH-2F9DE;Lo;0;L;8ED4;;;;N;;;;; -2F9DF;CJK COMPATIBILITY IDEOGRAPH-2F9DF;Lo;0;L;8F38;;;;N;;;;; -2F9E0;CJK COMPATIBILITY IDEOGRAPH-2F9E0;Lo;0;L;285D2;;;;N;;;;; -2F9E1;CJK COMPATIBILITY IDEOGRAPH-2F9E1;Lo;0;L;285ED;;;;N;;;;; -2F9E2;CJK COMPATIBILITY IDEOGRAPH-2F9E2;Lo;0;L;9094;;;;N;;;;; -2F9E3;CJK COMPATIBILITY IDEOGRAPH-2F9E3;Lo;0;L;90F1;;;;N;;;;; -2F9E4;CJK COMPATIBILITY IDEOGRAPH-2F9E4;Lo;0;L;9111;;;;N;;;;; -2F9E5;CJK COMPATIBILITY IDEOGRAPH-2F9E5;Lo;0;L;2872E;;;;N;;;;; -2F9E6;CJK COMPATIBILITY IDEOGRAPH-2F9E6;Lo;0;L;911B;;;;N;;;;; -2F9E7;CJK COMPATIBILITY IDEOGRAPH-2F9E7;Lo;0;L;9238;;;;N;;;;; -2F9E8;CJK COMPATIBILITY IDEOGRAPH-2F9E8;Lo;0;L;92D7;;;;N;;;;; -2F9E9;CJK COMPATIBILITY IDEOGRAPH-2F9E9;Lo;0;L;92D8;;;;N;;;;; -2F9EA;CJK COMPATIBILITY IDEOGRAPH-2F9EA;Lo;0;L;927C;;;;N;;;;; -2F9EB;CJK COMPATIBILITY IDEOGRAPH-2F9EB;Lo;0;L;93F9;;;;N;;;;; -2F9EC;CJK COMPATIBILITY IDEOGRAPH-2F9EC;Lo;0;L;9415;;;;N;;;;; -2F9ED;CJK COMPATIBILITY IDEOGRAPH-2F9ED;Lo;0;L;28BFA;;;;N;;;;; -2F9EE;CJK COMPATIBILITY IDEOGRAPH-2F9EE;Lo;0;L;958B;;;;N;;;;; -2F9EF;CJK COMPATIBILITY IDEOGRAPH-2F9EF;Lo;0;L;4995;;;;N;;;;; -2F9F0;CJK COMPATIBILITY IDEOGRAPH-2F9F0;Lo;0;L;95B7;;;;N;;;;; -2F9F1;CJK COMPATIBILITY IDEOGRAPH-2F9F1;Lo;0;L;28D77;;;;N;;;;; -2F9F2;CJK COMPATIBILITY IDEOGRAPH-2F9F2;Lo;0;L;49E6;;;;N;;;;; -2F9F3;CJK COMPATIBILITY IDEOGRAPH-2F9F3;Lo;0;L;96C3;;;;N;;;;; -2F9F4;CJK COMPATIBILITY IDEOGRAPH-2F9F4;Lo;0;L;5DB2;;;;N;;;;; -2F9F5;CJK COMPATIBILITY IDEOGRAPH-2F9F5;Lo;0;L;9723;;;;N;;;;; -2F9F6;CJK COMPATIBILITY IDEOGRAPH-2F9F6;Lo;0;L;29145;;;;N;;;;; -2F9F7;CJK COMPATIBILITY IDEOGRAPH-2F9F7;Lo;0;L;2921A;;;;N;;;;; -2F9F8;CJK COMPATIBILITY IDEOGRAPH-2F9F8;Lo;0;L;4A6E;;;;N;;;;; -2F9F9;CJK COMPATIBILITY IDEOGRAPH-2F9F9;Lo;0;L;4A76;;;;N;;;;; -2F9FA;CJK COMPATIBILITY IDEOGRAPH-2F9FA;Lo;0;L;97E0;;;;N;;;;; -2F9FB;CJK COMPATIBILITY IDEOGRAPH-2F9FB;Lo;0;L;2940A;;;;N;;;;; -2F9FC;CJK COMPATIBILITY IDEOGRAPH-2F9FC;Lo;0;L;4AB2;;;;N;;;;; -2F9FD;CJK COMPATIBILITY IDEOGRAPH-2F9FD;Lo;0;L;29496;;;;N;;;;; -2F9FE;CJK COMPATIBILITY IDEOGRAPH-2F9FE;Lo;0;L;980B;;;;N;;;;; -2F9FF;CJK COMPATIBILITY IDEOGRAPH-2F9FF;Lo;0;L;980B;;;;N;;;;; -2FA00;CJK COMPATIBILITY IDEOGRAPH-2FA00;Lo;0;L;9829;;;;N;;;;; -2FA01;CJK COMPATIBILITY IDEOGRAPH-2FA01;Lo;0;L;295B6;;;;N;;;;; -2FA02;CJK COMPATIBILITY IDEOGRAPH-2FA02;Lo;0;L;98E2;;;;N;;;;; -2FA03;CJK COMPATIBILITY IDEOGRAPH-2FA03;Lo;0;L;4B33;;;;N;;;;; -2FA04;CJK COMPATIBILITY IDEOGRAPH-2FA04;Lo;0;L;9929;;;;N;;;;; -2FA05;CJK COMPATIBILITY IDEOGRAPH-2FA05;Lo;0;L;99A7;;;;N;;;;; -2FA06;CJK COMPATIBILITY IDEOGRAPH-2FA06;Lo;0;L;99C2;;;;N;;;;; -2FA07;CJK COMPATIBILITY IDEOGRAPH-2FA07;Lo;0;L;99FE;;;;N;;;;; -2FA08;CJK COMPATIBILITY IDEOGRAPH-2FA08;Lo;0;L;4BCE;;;;N;;;;; -2FA09;CJK COMPATIBILITY IDEOGRAPH-2FA09;Lo;0;L;29B30;;;;N;;;;; -2FA0A;CJK COMPATIBILITY IDEOGRAPH-2FA0A;Lo;0;L;9B12;;;;N;;;;; -2FA0B;CJK COMPATIBILITY IDEOGRAPH-2FA0B;Lo;0;L;9C40;;;;N;;;;; -2FA0C;CJK COMPATIBILITY IDEOGRAPH-2FA0C;Lo;0;L;9CFD;;;;N;;;;; -2FA0D;CJK COMPATIBILITY IDEOGRAPH-2FA0D;Lo;0;L;4CCE;;;;N;;;;; -2FA0E;CJK COMPATIBILITY IDEOGRAPH-2FA0E;Lo;0;L;4CED;;;;N;;;;; -2FA0F;CJK COMPATIBILITY IDEOGRAPH-2FA0F;Lo;0;L;9D67;;;;N;;;;; -2FA10;CJK COMPATIBILITY IDEOGRAPH-2FA10;Lo;0;L;2A0CE;;;;N;;;;; -2FA11;CJK COMPATIBILITY IDEOGRAPH-2FA11;Lo;0;L;4CF8;;;;N;;;;; -2FA12;CJK COMPATIBILITY IDEOGRAPH-2FA12;Lo;0;L;2A105;;;;N;;;;; -2FA13;CJK COMPATIBILITY IDEOGRAPH-2FA13;Lo;0;L;2A20E;;;;N;;;;; -2FA14;CJK COMPATIBILITY IDEOGRAPH-2FA14;Lo;0;L;2A291;;;;N;;;;; -2FA15;CJK COMPATIBILITY IDEOGRAPH-2FA15;Lo;0;L;9EBB;;;;N;;;;; -2FA16;CJK COMPATIBILITY IDEOGRAPH-2FA16;Lo;0;L;4D56;;;;N;;;;; -2FA17;CJK COMPATIBILITY IDEOGRAPH-2FA17;Lo;0;L;9EF9;;;;N;;;;; -2FA18;CJK COMPATIBILITY IDEOGRAPH-2FA18;Lo;0;L;9EFE;;;;N;;;;; -2FA19;CJK COMPATIBILITY IDEOGRAPH-2FA19;Lo;0;L;9F05;;;;N;;;;; -2FA1A;CJK COMPATIBILITY IDEOGRAPH-2FA1A;Lo;0;L;9F0F;;;;N;;;;; -2FA1B;CJK COMPATIBILITY IDEOGRAPH-2FA1B;Lo;0;L;9F16;;;;N;;;;; -2FA1C;CJK COMPATIBILITY IDEOGRAPH-2FA1C;Lo;0;L;9F3B;;;;N;;;;; -2FA1D;CJK COMPATIBILITY IDEOGRAPH-2FA1D;Lo;0;L;2A600;;;;N;;;;; -E0001;LANGUAGE TAG;Cf;0;BN;;;;;N;;;;; -E0020;TAG SPACE;Cf;0;BN;;;;;N;;;;; -E0021;TAG EXCLAMATION MARK;Cf;0;BN;;;;;N;;;;; -E0022;TAG QUOTATION MARK;Cf;0;BN;;;;;N;;;;; -E0023;TAG NUMBER SIGN;Cf;0;BN;;;;;N;;;;; -E0024;TAG DOLLAR SIGN;Cf;0;BN;;;;;N;;;;; -E0025;TAG PERCENT SIGN;Cf;0;BN;;;;;N;;;;; -E0026;TAG AMPERSAND;Cf;0;BN;;;;;N;;;;; -E0027;TAG APOSTROPHE;Cf;0;BN;;;;;N;;;;; -E0028;TAG LEFT PARENTHESIS;Cf;0;BN;;;;;N;;;;; -E0029;TAG RIGHT PARENTHESIS;Cf;0;BN;;;;;N;;;;; -E002A;TAG ASTERISK;Cf;0;BN;;;;;N;;;;; -E002B;TAG PLUS SIGN;Cf;0;BN;;;;;N;;;;; -E002C;TAG COMMA;Cf;0;BN;;;;;N;;;;; -E002D;TAG HYPHEN-MINUS;Cf;0;BN;;;;;N;;;;; -E002E;TAG FULL STOP;Cf;0;BN;;;;;N;;;;; -E002F;TAG SOLIDUS;Cf;0;BN;;;;;N;;;;; -E0030;TAG DIGIT ZERO;Cf;0;BN;;;;;N;;;;; -E0031;TAG DIGIT ONE;Cf;0;BN;;;;;N;;;;; -E0032;TAG DIGIT TWO;Cf;0;BN;;;;;N;;;;; -E0033;TAG DIGIT THREE;Cf;0;BN;;;;;N;;;;; -E0034;TAG DIGIT FOUR;Cf;0;BN;;;;;N;;;;; -E0035;TAG DIGIT FIVE;Cf;0;BN;;;;;N;;;;; -E0036;TAG DIGIT SIX;Cf;0;BN;;;;;N;;;;; -E0037;TAG DIGIT SEVEN;Cf;0;BN;;;;;N;;;;; -E0038;TAG DIGIT EIGHT;Cf;0;BN;;;;;N;;;;; -E0039;TAG DIGIT NINE;Cf;0;BN;;;;;N;;;;; -E003A;TAG COLON;Cf;0;BN;;;;;N;;;;; -E003B;TAG SEMICOLON;Cf;0;BN;;;;;N;;;;; -E003C;TAG LESS-THAN SIGN;Cf;0;BN;;;;;N;;;;; -E003D;TAG EQUALS SIGN;Cf;0;BN;;;;;N;;;;; -E003E;TAG GREATER-THAN SIGN;Cf;0;BN;;;;;N;;;;; -E003F;TAG QUESTION MARK;Cf;0;BN;;;;;N;;;;; -E0040;TAG COMMERCIAL AT;Cf;0;BN;;;;;N;;;;; -E0041;TAG LATIN CAPITAL LETTER A;Cf;0;BN;;;;;N;;;;; -E0042;TAG LATIN CAPITAL LETTER B;Cf;0;BN;;;;;N;;;;; -E0043;TAG LATIN CAPITAL LETTER C;Cf;0;BN;;;;;N;;;;; -E0044;TAG LATIN CAPITAL LETTER D;Cf;0;BN;;;;;N;;;;; -E0045;TAG LATIN CAPITAL LETTER E;Cf;0;BN;;;;;N;;;;; -E0046;TAG LATIN CAPITAL LETTER F;Cf;0;BN;;;;;N;;;;; -E0047;TAG LATIN CAPITAL LETTER G;Cf;0;BN;;;;;N;;;;; -E0048;TAG LATIN CAPITAL LETTER H;Cf;0;BN;;;;;N;;;;; -E0049;TAG LATIN CAPITAL LETTER I;Cf;0;BN;;;;;N;;;;; -E004A;TAG LATIN CAPITAL LETTER J;Cf;0;BN;;;;;N;;;;; -E004B;TAG LATIN CAPITAL LETTER K;Cf;0;BN;;;;;N;;;;; -E004C;TAG LATIN CAPITAL LETTER L;Cf;0;BN;;;;;N;;;;; -E004D;TAG LATIN CAPITAL LETTER M;Cf;0;BN;;;;;N;;;;; -E004E;TAG LATIN CAPITAL LETTER N;Cf;0;BN;;;;;N;;;;; -E004F;TAG LATIN CAPITAL LETTER O;Cf;0;BN;;;;;N;;;;; -E0050;TAG LATIN CAPITAL LETTER P;Cf;0;BN;;;;;N;;;;; -E0051;TAG LATIN CAPITAL LETTER Q;Cf;0;BN;;;;;N;;;;; -E0052;TAG LATIN CAPITAL LETTER R;Cf;0;BN;;;;;N;;;;; -E0053;TAG LATIN CAPITAL LETTER S;Cf;0;BN;;;;;N;;;;; -E0054;TAG LATIN CAPITAL LETTER T;Cf;0;BN;;;;;N;;;;; -E0055;TAG LATIN CAPITAL LETTER U;Cf;0;BN;;;;;N;;;;; -E0056;TAG LATIN CAPITAL LETTER V;Cf;0;BN;;;;;N;;;;; -E0057;TAG LATIN CAPITAL LETTER W;Cf;0;BN;;;;;N;;;;; -E0058;TAG LATIN CAPITAL LETTER X;Cf;0;BN;;;;;N;;;;; -E0059;TAG LATIN CAPITAL LETTER Y;Cf;0;BN;;;;;N;;;;; -E005A;TAG LATIN CAPITAL LETTER Z;Cf;0;BN;;;;;N;;;;; -E005B;TAG LEFT SQUARE BRACKET;Cf;0;BN;;;;;N;;;;; -E005C;TAG REVERSE SOLIDUS;Cf;0;BN;;;;;N;;;;; -E005D;TAG RIGHT SQUARE BRACKET;Cf;0;BN;;;;;N;;;;; -E005E;TAG CIRCUMFLEX ACCENT;Cf;0;BN;;;;;N;;;;; -E005F;TAG LOW LINE;Cf;0;BN;;;;;N;;;;; -E0060;TAG GRAVE ACCENT;Cf;0;BN;;;;;N;;;;; -E0061;TAG LATIN SMALL LETTER A;Cf;0;BN;;;;;N;;;;; -E0062;TAG LATIN SMALL LETTER B;Cf;0;BN;;;;;N;;;;; -E0063;TAG LATIN SMALL LETTER C;Cf;0;BN;;;;;N;;;;; -E0064;TAG LATIN SMALL LETTER D;Cf;0;BN;;;;;N;;;;; -E0065;TAG LATIN SMALL LETTER E;Cf;0;BN;;;;;N;;;;; -E0066;TAG LATIN SMALL LETTER F;Cf;0;BN;;;;;N;;;;; -E0067;TAG LATIN SMALL LETTER G;Cf;0;BN;;;;;N;;;;; -E0068;TAG LATIN SMALL LETTER H;Cf;0;BN;;;;;N;;;;; -E0069;TAG LATIN SMALL LETTER I;Cf;0;BN;;;;;N;;;;; -E006A;TAG LATIN SMALL LETTER J;Cf;0;BN;;;;;N;;;;; -E006B;TAG LATIN SMALL LETTER K;Cf;0;BN;;;;;N;;;;; -E006C;TAG LATIN SMALL LETTER L;Cf;0;BN;;;;;N;;;;; -E006D;TAG LATIN SMALL LETTER M;Cf;0;BN;;;;;N;;;;; -E006E;TAG LATIN SMALL LETTER N;Cf;0;BN;;;;;N;;;;; -E006F;TAG LATIN SMALL LETTER O;Cf;0;BN;;;;;N;;;;; -E0070;TAG LATIN SMALL LETTER P;Cf;0;BN;;;;;N;;;;; -E0071;TAG LATIN SMALL LETTER Q;Cf;0;BN;;;;;N;;;;; -E0072;TAG LATIN SMALL LETTER R;Cf;0;BN;;;;;N;;;;; -E0073;TAG LATIN SMALL LETTER S;Cf;0;BN;;;;;N;;;;; -E0074;TAG LATIN SMALL LETTER T;Cf;0;BN;;;;;N;;;;; -E0075;TAG LATIN SMALL LETTER U;Cf;0;BN;;;;;N;;;;; -E0076;TAG LATIN SMALL LETTER V;Cf;0;BN;;;;;N;;;;; -E0077;TAG LATIN SMALL LETTER W;Cf;0;BN;;;;;N;;;;; -E0078;TAG LATIN SMALL LETTER X;Cf;0;BN;;;;;N;;;;; -E0079;TAG LATIN SMALL LETTER Y;Cf;0;BN;;;;;N;;;;; -E007A;TAG LATIN SMALL LETTER Z;Cf;0;BN;;;;;N;;;;; -E007B;TAG LEFT CURLY BRACKET;Cf;0;BN;;;;;N;;;;; -E007C;TAG VERTICAL LINE;Cf;0;BN;;;;;N;;;;; -E007D;TAG RIGHT CURLY BRACKET;Cf;0;BN;;;;;N;;;;; -E007E;TAG TILDE;Cf;0;BN;;;;;N;;;;; -E007F;CANCEL TAG;Cf;0;BN;;;;;N;;;;; -E0100;VARIATION SELECTOR-17;Mn;0;NSM;;;;;N;;;;; -E0101;VARIATION SELECTOR-18;Mn;0;NSM;;;;;N;;;;; -E0102;VARIATION SELECTOR-19;Mn;0;NSM;;;;;N;;;;; -E0103;VARIATION SELECTOR-20;Mn;0;NSM;;;;;N;;;;; -E0104;VARIATION SELECTOR-21;Mn;0;NSM;;;;;N;;;;; -E0105;VARIATION SELECTOR-22;Mn;0;NSM;;;;;N;;;;; -E0106;VARIATION SELECTOR-23;Mn;0;NSM;;;;;N;;;;; -E0107;VARIATION SELECTOR-24;Mn;0;NSM;;;;;N;;;;; -E0108;VARIATION SELECTOR-25;Mn;0;NSM;;;;;N;;;;; -E0109;VARIATION SELECTOR-26;Mn;0;NSM;;;;;N;;;;; -E010A;VARIATION SELECTOR-27;Mn;0;NSM;;;;;N;;;;; -E010B;VARIATION SELECTOR-28;Mn;0;NSM;;;;;N;;;;; -E010C;VARIATION SELECTOR-29;Mn;0;NSM;;;;;N;;;;; -E010D;VARIATION SELECTOR-30;Mn;0;NSM;;;;;N;;;;; -E010E;VARIATION SELECTOR-31;Mn;0;NSM;;;;;N;;;;; -E010F;VARIATION SELECTOR-32;Mn;0;NSM;;;;;N;;;;; -E0110;VARIATION SELECTOR-33;Mn;0;NSM;;;;;N;;;;; -E0111;VARIATION SELECTOR-34;Mn;0;NSM;;;;;N;;;;; -E0112;VARIATION SELECTOR-35;Mn;0;NSM;;;;;N;;;;; -E0113;VARIATION SELECTOR-36;Mn;0;NSM;;;;;N;;;;; -E0114;VARIATION SELECTOR-37;Mn;0;NSM;;;;;N;;;;; -E0115;VARIATION SELECTOR-38;Mn;0;NSM;;;;;N;;;;; -E0116;VARIATION SELECTOR-39;Mn;0;NSM;;;;;N;;;;; -E0117;VARIATION SELECTOR-40;Mn;0;NSM;;;;;N;;;;; -E0118;VARIATION SELECTOR-41;Mn;0;NSM;;;;;N;;;;; -E0119;VARIATION SELECTOR-42;Mn;0;NSM;;;;;N;;;;; -E011A;VARIATION SELECTOR-43;Mn;0;NSM;;;;;N;;;;; -E011B;VARIATION SELECTOR-44;Mn;0;NSM;;;;;N;;;;; -E011C;VARIATION SELECTOR-45;Mn;0;NSM;;;;;N;;;;; -E011D;VARIATION SELECTOR-46;Mn;0;NSM;;;;;N;;;;; -E011E;VARIATION SELECTOR-47;Mn;0;NSM;;;;;N;;;;; -E011F;VARIATION SELECTOR-48;Mn;0;NSM;;;;;N;;;;; -E0120;VARIATION SELECTOR-49;Mn;0;NSM;;;;;N;;;;; -E0121;VARIATION SELECTOR-50;Mn;0;NSM;;;;;N;;;;; -E0122;VARIATION SELECTOR-51;Mn;0;NSM;;;;;N;;;;; -E0123;VARIATION SELECTOR-52;Mn;0;NSM;;;;;N;;;;; -E0124;VARIATION SELECTOR-53;Mn;0;NSM;;;;;N;;;;; -E0125;VARIATION SELECTOR-54;Mn;0;NSM;;;;;N;;;;; -E0126;VARIATION SELECTOR-55;Mn;0;NSM;;;;;N;;;;; -E0127;VARIATION SELECTOR-56;Mn;0;NSM;;;;;N;;;;; -E0128;VARIATION SELECTOR-57;Mn;0;NSM;;;;;N;;;;; -E0129;VARIATION SELECTOR-58;Mn;0;NSM;;;;;N;;;;; -E012A;VARIATION SELECTOR-59;Mn;0;NSM;;;;;N;;;;; -E012B;VARIATION SELECTOR-60;Mn;0;NSM;;;;;N;;;;; -E012C;VARIATION SELECTOR-61;Mn;0;NSM;;;;;N;;;;; -E012D;VARIATION SELECTOR-62;Mn;0;NSM;;;;;N;;;;; -E012E;VARIATION SELECTOR-63;Mn;0;NSM;;;;;N;;;;; -E012F;VARIATION SELECTOR-64;Mn;0;NSM;;;;;N;;;;; -E0130;VARIATION SELECTOR-65;Mn;0;NSM;;;;;N;;;;; -E0131;VARIATION SELECTOR-66;Mn;0;NSM;;;;;N;;;;; -E0132;VARIATION SELECTOR-67;Mn;0;NSM;;;;;N;;;;; -E0133;VARIATION SELECTOR-68;Mn;0;NSM;;;;;N;;;;; -E0134;VARIATION SELECTOR-69;Mn;0;NSM;;;;;N;;;;; -E0135;VARIATION SELECTOR-70;Mn;0;NSM;;;;;N;;;;; -E0136;VARIATION SELECTOR-71;Mn;0;NSM;;;;;N;;;;; -E0137;VARIATION SELECTOR-72;Mn;0;NSM;;;;;N;;;;; -E0138;VARIATION SELECTOR-73;Mn;0;NSM;;;;;N;;;;; -E0139;VARIATION SELECTOR-74;Mn;0;NSM;;;;;N;;;;; -E013A;VARIATION SELECTOR-75;Mn;0;NSM;;;;;N;;;;; -E013B;VARIATION SELECTOR-76;Mn;0;NSM;;;;;N;;;;; -E013C;VARIATION SELECTOR-77;Mn;0;NSM;;;;;N;;;;; -E013D;VARIATION SELECTOR-78;Mn;0;NSM;;;;;N;;;;; -E013E;VARIATION SELECTOR-79;Mn;0;NSM;;;;;N;;;;; -E013F;VARIATION SELECTOR-80;Mn;0;NSM;;;;;N;;;;; -E0140;VARIATION SELECTOR-81;Mn;0;NSM;;;;;N;;;;; -E0141;VARIATION SELECTOR-82;Mn;0;NSM;;;;;N;;;;; -E0142;VARIATION SELECTOR-83;Mn;0;NSM;;;;;N;;;;; -E0143;VARIATION SELECTOR-84;Mn;0;NSM;;;;;N;;;;; -E0144;VARIATION SELECTOR-85;Mn;0;NSM;;;;;N;;;;; -E0145;VARIATION SELECTOR-86;Mn;0;NSM;;;;;N;;;;; -E0146;VARIATION SELECTOR-87;Mn;0;NSM;;;;;N;;;;; -E0147;VARIATION SELECTOR-88;Mn;0;NSM;;;;;N;;;;; -E0148;VARIATION SELECTOR-89;Mn;0;NSM;;;;;N;;;;; -E0149;VARIATION SELECTOR-90;Mn;0;NSM;;;;;N;;;;; -E014A;VARIATION SELECTOR-91;Mn;0;NSM;;;;;N;;;;; -E014B;VARIATION SELECTOR-92;Mn;0;NSM;;;;;N;;;;; -E014C;VARIATION SELECTOR-93;Mn;0;NSM;;;;;N;;;;; -E014D;VARIATION SELECTOR-94;Mn;0;NSM;;;;;N;;;;; -E014E;VARIATION SELECTOR-95;Mn;0;NSM;;;;;N;;;;; -E014F;VARIATION SELECTOR-96;Mn;0;NSM;;;;;N;;;;; -E0150;VARIATION SELECTOR-97;Mn;0;NSM;;;;;N;;;;; -E0151;VARIATION SELECTOR-98;Mn;0;NSM;;;;;N;;;;; -E0152;VARIATION SELECTOR-99;Mn;0;NSM;;;;;N;;;;; -E0153;VARIATION SELECTOR-100;Mn;0;NSM;;;;;N;;;;; -E0154;VARIATION SELECTOR-101;Mn;0;NSM;;;;;N;;;;; -E0155;VARIATION SELECTOR-102;Mn;0;NSM;;;;;N;;;;; -E0156;VARIATION SELECTOR-103;Mn;0;NSM;;;;;N;;;;; -E0157;VARIATION SELECTOR-104;Mn;0;NSM;;;;;N;;;;; -E0158;VARIATION SELECTOR-105;Mn;0;NSM;;;;;N;;;;; -E0159;VARIATION SELECTOR-106;Mn;0;NSM;;;;;N;;;;; -E015A;VARIATION SELECTOR-107;Mn;0;NSM;;;;;N;;;;; -E015B;VARIATION SELECTOR-108;Mn;0;NSM;;;;;N;;;;; -E015C;VARIATION SELECTOR-109;Mn;0;NSM;;;;;N;;;;; -E015D;VARIATION SELECTOR-110;Mn;0;NSM;;;;;N;;;;; -E015E;VARIATION SELECTOR-111;Mn;0;NSM;;;;;N;;;;; -E015F;VARIATION SELECTOR-112;Mn;0;NSM;;;;;N;;;;; -E0160;VARIATION SELECTOR-113;Mn;0;NSM;;;;;N;;;;; -E0161;VARIATION SELECTOR-114;Mn;0;NSM;;;;;N;;;;; -E0162;VARIATION SELECTOR-115;Mn;0;NSM;;;;;N;;;;; -E0163;VARIATION SELECTOR-116;Mn;0;NSM;;;;;N;;;;; -E0164;VARIATION SELECTOR-117;Mn;0;NSM;;;;;N;;;;; -E0165;VARIATION SELECTOR-118;Mn;0;NSM;;;;;N;;;;; -E0166;VARIATION SELECTOR-119;Mn;0;NSM;;;;;N;;;;; -E0167;VARIATION SELECTOR-120;Mn;0;NSM;;;;;N;;;;; -E0168;VARIATION SELECTOR-121;Mn;0;NSM;;;;;N;;;;; -E0169;VARIATION SELECTOR-122;Mn;0;NSM;;;;;N;;;;; -E016A;VARIATION SELECTOR-123;Mn;0;NSM;;;;;N;;;;; -E016B;VARIATION SELECTOR-124;Mn;0;NSM;;;;;N;;;;; -E016C;VARIATION SELECTOR-125;Mn;0;NSM;;;;;N;;;;; -E016D;VARIATION SELECTOR-126;Mn;0;NSM;;;;;N;;;;; -E016E;VARIATION SELECTOR-127;Mn;0;NSM;;;;;N;;;;; -E016F;VARIATION SELECTOR-128;Mn;0;NSM;;;;;N;;;;; -E0170;VARIATION SELECTOR-129;Mn;0;NSM;;;;;N;;;;; -E0171;VARIATION SELECTOR-130;Mn;0;NSM;;;;;N;;;;; -E0172;VARIATION SELECTOR-131;Mn;0;NSM;;;;;N;;;;; -E0173;VARIATION SELECTOR-132;Mn;0;NSM;;;;;N;;;;; -E0174;VARIATION SELECTOR-133;Mn;0;NSM;;;;;N;;;;; -E0175;VARIATION SELECTOR-134;Mn;0;NSM;;;;;N;;;;; -E0176;VARIATION SELECTOR-135;Mn;0;NSM;;;;;N;;;;; -E0177;VARIATION SELECTOR-136;Mn;0;NSM;;;;;N;;;;; -E0178;VARIATION SELECTOR-137;Mn;0;NSM;;;;;N;;;;; -E0179;VARIATION SELECTOR-138;Mn;0;NSM;;;;;N;;;;; -E017A;VARIATION SELECTOR-139;Mn;0;NSM;;;;;N;;;;; -E017B;VARIATION SELECTOR-140;Mn;0;NSM;;;;;N;;;;; -E017C;VARIATION SELECTOR-141;Mn;0;NSM;;;;;N;;;;; -E017D;VARIATION SELECTOR-142;Mn;0;NSM;;;;;N;;;;; -E017E;VARIATION SELECTOR-143;Mn;0;NSM;;;;;N;;;;; -E017F;VARIATION SELECTOR-144;Mn;0;NSM;;;;;N;;;;; -E0180;VARIATION SELECTOR-145;Mn;0;NSM;;;;;N;;;;; -E0181;VARIATION SELECTOR-146;Mn;0;NSM;;;;;N;;;;; -E0182;VARIATION SELECTOR-147;Mn;0;NSM;;;;;N;;;;; -E0183;VARIATION SELECTOR-148;Mn;0;NSM;;;;;N;;;;; -E0184;VARIATION SELECTOR-149;Mn;0;NSM;;;;;N;;;;; -E0185;VARIATION SELECTOR-150;Mn;0;NSM;;;;;N;;;;; -E0186;VARIATION SELECTOR-151;Mn;0;NSM;;;;;N;;;;; -E0187;VARIATION SELECTOR-152;Mn;0;NSM;;;;;N;;;;; -E0188;VARIATION SELECTOR-153;Mn;0;NSM;;;;;N;;;;; -E0189;VARIATION SELECTOR-154;Mn;0;NSM;;;;;N;;;;; -E018A;VARIATION SELECTOR-155;Mn;0;NSM;;;;;N;;;;; -E018B;VARIATION SELECTOR-156;Mn;0;NSM;;;;;N;;;;; -E018C;VARIATION SELECTOR-157;Mn;0;NSM;;;;;N;;;;; -E018D;VARIATION SELECTOR-158;Mn;0;NSM;;;;;N;;;;; -E018E;VARIATION SELECTOR-159;Mn;0;NSM;;;;;N;;;;; -E018F;VARIATION SELECTOR-160;Mn;0;NSM;;;;;N;;;;; -E0190;VARIATION SELECTOR-161;Mn;0;NSM;;;;;N;;;;; -E0191;VARIATION SELECTOR-162;Mn;0;NSM;;;;;N;;;;; -E0192;VARIATION SELECTOR-163;Mn;0;NSM;;;;;N;;;;; -E0193;VARIATION SELECTOR-164;Mn;0;NSM;;;;;N;;;;; -E0194;VARIATION SELECTOR-165;Mn;0;NSM;;;;;N;;;;; -E0195;VARIATION SELECTOR-166;Mn;0;NSM;;;;;N;;;;; -E0196;VARIATION SELECTOR-167;Mn;0;NSM;;;;;N;;;;; -E0197;VARIATION SELECTOR-168;Mn;0;NSM;;;;;N;;;;; -E0198;VARIATION SELECTOR-169;Mn;0;NSM;;;;;N;;;;; -E0199;VARIATION SELECTOR-170;Mn;0;NSM;;;;;N;;;;; -E019A;VARIATION SELECTOR-171;Mn;0;NSM;;;;;N;;;;; -E019B;VARIATION SELECTOR-172;Mn;0;NSM;;;;;N;;;;; -E019C;VARIATION SELECTOR-173;Mn;0;NSM;;;;;N;;;;; -E019D;VARIATION SELECTOR-174;Mn;0;NSM;;;;;N;;;;; -E019E;VARIATION SELECTOR-175;Mn;0;NSM;;;;;N;;;;; -E019F;VARIATION SELECTOR-176;Mn;0;NSM;;;;;N;;;;; -E01A0;VARIATION SELECTOR-177;Mn;0;NSM;;;;;N;;;;; -E01A1;VARIATION SELECTOR-178;Mn;0;NSM;;;;;N;;;;; -E01A2;VARIATION SELECTOR-179;Mn;0;NSM;;;;;N;;;;; -E01A3;VARIATION SELECTOR-180;Mn;0;NSM;;;;;N;;;;; -E01A4;VARIATION SELECTOR-181;Mn;0;NSM;;;;;N;;;;; -E01A5;VARIATION SELECTOR-182;Mn;0;NSM;;;;;N;;;;; -E01A6;VARIATION SELECTOR-183;Mn;0;NSM;;;;;N;;;;; -E01A7;VARIATION SELECTOR-184;Mn;0;NSM;;;;;N;;;;; -E01A8;VARIATION SELECTOR-185;Mn;0;NSM;;;;;N;;;;; -E01A9;VARIATION SELECTOR-186;Mn;0;NSM;;;;;N;;;;; -E01AA;VARIATION SELECTOR-187;Mn;0;NSM;;;;;N;;;;; -E01AB;VARIATION SELECTOR-188;Mn;0;NSM;;;;;N;;;;; -E01AC;VARIATION SELECTOR-189;Mn;0;NSM;;;;;N;;;;; -E01AD;VARIATION SELECTOR-190;Mn;0;NSM;;;;;N;;;;; -E01AE;VARIATION SELECTOR-191;Mn;0;NSM;;;;;N;;;;; -E01AF;VARIATION SELECTOR-192;Mn;0;NSM;;;;;N;;;;; -E01B0;VARIATION SELECTOR-193;Mn;0;NSM;;;;;N;;;;; -E01B1;VARIATION SELECTOR-194;Mn;0;NSM;;;;;N;;;;; -E01B2;VARIATION SELECTOR-195;Mn;0;NSM;;;;;N;;;;; -E01B3;VARIATION SELECTOR-196;Mn;0;NSM;;;;;N;;;;; -E01B4;VARIATION SELECTOR-197;Mn;0;NSM;;;;;N;;;;; -E01B5;VARIATION SELECTOR-198;Mn;0;NSM;;;;;N;;;;; -E01B6;VARIATION SELECTOR-199;Mn;0;NSM;;;;;N;;;;; -E01B7;VARIATION SELECTOR-200;Mn;0;NSM;;;;;N;;;;; -E01B8;VARIATION SELECTOR-201;Mn;0;NSM;;;;;N;;;;; -E01B9;VARIATION SELECTOR-202;Mn;0;NSM;;;;;N;;;;; -E01BA;VARIATION SELECTOR-203;Mn;0;NSM;;;;;N;;;;; -E01BB;VARIATION SELECTOR-204;Mn;0;NSM;;;;;N;;;;; -E01BC;VARIATION SELECTOR-205;Mn;0;NSM;;;;;N;;;;; -E01BD;VARIATION SELECTOR-206;Mn;0;NSM;;;;;N;;;;; -E01BE;VARIATION SELECTOR-207;Mn;0;NSM;;;;;N;;;;; -E01BF;VARIATION SELECTOR-208;Mn;0;NSM;;;;;N;;;;; -E01C0;VARIATION SELECTOR-209;Mn;0;NSM;;;;;N;;;;; -E01C1;VARIATION SELECTOR-210;Mn;0;NSM;;;;;N;;;;; -E01C2;VARIATION SELECTOR-211;Mn;0;NSM;;;;;N;;;;; -E01C3;VARIATION SELECTOR-212;Mn;0;NSM;;;;;N;;;;; -E01C4;VARIATION SELECTOR-213;Mn;0;NSM;;;;;N;;;;; -E01C5;VARIATION SELECTOR-214;Mn;0;NSM;;;;;N;;;;; -E01C6;VARIATION SELECTOR-215;Mn;0;NSM;;;;;N;;;;; -E01C7;VARIATION SELECTOR-216;Mn;0;NSM;;;;;N;;;;; -E01C8;VARIATION SELECTOR-217;Mn;0;NSM;;;;;N;;;;; -E01C9;VARIATION SELECTOR-218;Mn;0;NSM;;;;;N;;;;; -E01CA;VARIATION SELECTOR-219;Mn;0;NSM;;;;;N;;;;; -E01CB;VARIATION SELECTOR-220;Mn;0;NSM;;;;;N;;;;; -E01CC;VARIATION SELECTOR-221;Mn;0;NSM;;;;;N;;;;; -E01CD;VARIATION SELECTOR-222;Mn;0;NSM;;;;;N;;;;; -E01CE;VARIATION SELECTOR-223;Mn;0;NSM;;;;;N;;;;; -E01CF;VARIATION SELECTOR-224;Mn;0;NSM;;;;;N;;;;; -E01D0;VARIATION SELECTOR-225;Mn;0;NSM;;;;;N;;;;; -E01D1;VARIATION SELECTOR-226;Mn;0;NSM;;;;;N;;;;; -E01D2;VARIATION SELECTOR-227;Mn;0;NSM;;;;;N;;;;; -E01D3;VARIATION SELECTOR-228;Mn;0;NSM;;;;;N;;;;; -E01D4;VARIATION SELECTOR-229;Mn;0;NSM;;;;;N;;;;; -E01D5;VARIATION SELECTOR-230;Mn;0;NSM;;;;;N;;;;; -E01D6;VARIATION SELECTOR-231;Mn;0;NSM;;;;;N;;;;; -E01D7;VARIATION SELECTOR-232;Mn;0;NSM;;;;;N;;;;; -E01D8;VARIATION SELECTOR-233;Mn;0;NSM;;;;;N;;;;; -E01D9;VARIATION SELECTOR-234;Mn;0;NSM;;;;;N;;;;; -E01DA;VARIATION SELECTOR-235;Mn;0;NSM;;;;;N;;;;; -E01DB;VARIATION SELECTOR-236;Mn;0;NSM;;;;;N;;;;; -E01DC;VARIATION SELECTOR-237;Mn;0;NSM;;;;;N;;;;; -E01DD;VARIATION SELECTOR-238;Mn;0;NSM;;;;;N;;;;; -E01DE;VARIATION SELECTOR-239;Mn;0;NSM;;;;;N;;;;; -E01DF;VARIATION SELECTOR-240;Mn;0;NSM;;;;;N;;;;; -E01E0;VARIATION SELECTOR-241;Mn;0;NSM;;;;;N;;;;; -E01E1;VARIATION SELECTOR-242;Mn;0;NSM;;;;;N;;;;; -E01E2;VARIATION SELECTOR-243;Mn;0;NSM;;;;;N;;;;; -E01E3;VARIATION SELECTOR-244;Mn;0;NSM;;;;;N;;;;; -E01E4;VARIATION SELECTOR-245;Mn;0;NSM;;;;;N;;;;; -E01E5;VARIATION SELECTOR-246;Mn;0;NSM;;;;;N;;;;; -E01E6;VARIATION SELECTOR-247;Mn;0;NSM;;;;;N;;;;; -E01E7;VARIATION SELECTOR-248;Mn;0;NSM;;;;;N;;;;; -E01E8;VARIATION SELECTOR-249;Mn;0;NSM;;;;;N;;;;; -E01E9;VARIATION SELECTOR-250;Mn;0;NSM;;;;;N;;;;; -E01EA;VARIATION SELECTOR-251;Mn;0;NSM;;;;;N;;;;; -E01EB;VARIATION SELECTOR-252;Mn;0;NSM;;;;;N;;;;; -E01EC;VARIATION SELECTOR-253;Mn;0;NSM;;;;;N;;;;; -E01ED;VARIATION SELECTOR-254;Mn;0;NSM;;;;;N;;;;; -E01EE;VARIATION SELECTOR-255;Mn;0;NSM;;;;;N;;;;; -E01EF;VARIATION SELECTOR-256;Mn;0;NSM;;;;;N;;;;; -F0000;;Co;0;L;;;;;N;;;;; -FFFFD;;Co;0;L;;;;;N;;;;; -100000;;Co;0;L;;;;;N;;;;; -10FFFD;;Co;0;L;;;;;N;;;;; diff --git a/thirdparty/grub-2.04/util/bash-completion.d/Makefile.am b/thirdparty/grub-2.04/util/bash-completion.d/Makefile.am deleted file mode 100644 index 136287cf1..000000000 --- a/thirdparty/grub-2.04/util/bash-completion.d/Makefile.am +++ /dev/null @@ -1,13 +0,0 @@ - -bash_completion_source = grub-completion.bash.in -bash_completion_script = grub - -EXTRA_DIST = $(bash_completion_source) - -CLEANFILES = $(bash_completion_script) config.log - -bashcompletiondir = $(sysconfdir)/bash_completion.d -bashcompletion_DATA = $(bash_completion_script) - -$(bash_completion_script): $(bash_completion_source) $(top_builddir)/config.status - $(top_builddir)/config.status --file=$@:$< diff --git a/thirdparty/grub-2.04/util/bash-completion.d/Makefile.in b/thirdparty/grub-2.04/util/bash-completion.d/Makefile.in deleted file mode 100644 index 80aa37987..000000000 --- a/thirdparty/grub-2.04/util/bash-completion.d/Makefile.in +++ /dev/null @@ -1,1443 +0,0 @@ -# Makefile.in generated by automake 1.15 from Makefile.am. -# @configure_input@ - -# Copyright (C) 1994-2014 Free Software Foundation, Inc. - -# This Makefile.in is free software; the Free Software Foundation -# gives unlimited permission to copy and/or distribute it, -# with or without modifications, as long as this notice is preserved. - -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY, to the extent permitted by law; without -# even the implied warranty of MERCHANTABILITY or FITNESS FOR A -# PARTICULAR PURPOSE. - -@SET_MAKE@ - -VPATH = @srcdir@ -am__is_gnu_make = { \ - if test -z '$(MAKELEVEL)'; then \ - false; \ - elif test -n '$(MAKE_HOST)'; then \ - true; \ - elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \ - true; \ - else \ - false; \ - fi; \ -} -am__make_running_with_option = \ - case $${target_option-} in \ - ?) ;; \ - *) echo "am__make_running_with_option: internal error: invalid" \ - "target option '$${target_option-}' specified" >&2; \ - exit 1;; \ - esac; \ - has_opt=no; \ - sane_makeflags=$$MAKEFLAGS; \ - if $(am__is_gnu_make); then \ - sane_makeflags=$$MFLAGS; \ - else \ - case $$MAKEFLAGS in \ - *\\[\ \ ]*) \ - bs=\\; \ - sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \ - | sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \ - esac; \ - fi; \ - skip_next=no; \ - strip_trailopt () \ - { \ - flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \ - }; \ - for flg in $$sane_makeflags; do \ - test $$skip_next = yes && { skip_next=no; continue; }; \ - case $$flg in \ - *=*|--*) continue;; \ - -*I) strip_trailopt 'I'; skip_next=yes;; \ - -*I?*) strip_trailopt 'I';; \ - -*O) strip_trailopt 'O'; skip_next=yes;; \ - -*O?*) strip_trailopt 'O';; \ - -*l) strip_trailopt 'l'; skip_next=yes;; \ - -*l?*) strip_trailopt 'l';; \ - -[dEDm]) skip_next=yes;; \ - -[JT]) skip_next=yes;; \ - esac; \ - case $$flg in \ - *$$target_option*) has_opt=yes; break;; \ - esac; \ - done; \ - test $$has_opt = yes -am__make_dryrun = (target_option=n; $(am__make_running_with_option)) -am__make_keepgoing = (target_option=k; $(am__make_running_with_option)) -pkgdatadir = $(datadir)/@PACKAGE@ -pkgincludedir = $(includedir)/@PACKAGE@ -pkglibdir = $(libdir)/@PACKAGE@ -pkglibexecdir = $(libexecdir)/@PACKAGE@ -am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd -install_sh_DATA = $(install_sh) -c -m 644 -install_sh_PROGRAM = $(install_sh) -c -install_sh_SCRIPT = $(install_sh) -c -INSTALL_HEADER = $(INSTALL_DATA) -transform = $(program_transform_name) -NORMAL_INSTALL = : -PRE_INSTALL = : -POST_INSTALL = : -NORMAL_UNINSTALL = : -PRE_UNINSTALL = : -POST_UNINSTALL = : -build_triplet = @build@ -host_triplet = @host@ -target_triplet = @target@ -subdir = util/bash-completion.d -ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 -am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \ - $(top_srcdir)/m4/__inline.m4 \ - $(top_srcdir)/m4/absolute-header.m4 $(top_srcdir)/m4/alloca.m4 \ - $(top_srcdir)/m4/argp.m4 $(top_srcdir)/m4/btowc.m4 \ - $(top_srcdir)/m4/builtin-expect.m4 \ - $(top_srcdir)/m4/chdir-long.m4 $(top_srcdir)/m4/close.m4 \ - $(top_srcdir)/m4/codeset.m4 $(top_srcdir)/m4/dirent_h.m4 \ - $(top_srcdir)/m4/dirfd.m4 $(top_srcdir)/m4/dirname.m4 \ - $(top_srcdir)/m4/double-slash-root.m4 $(top_srcdir)/m4/dup2.m4 \ - $(top_srcdir)/m4/eealloc.m4 $(top_srcdir)/m4/errno_h.m4 \ - $(top_srcdir)/m4/error.m4 $(top_srcdir)/m4/exponentd.m4 \ - $(top_srcdir)/m4/extensions.m4 \ - $(top_srcdir)/m4/extern-inline.m4 $(top_srcdir)/m4/fchdir.m4 \ - $(top_srcdir)/m4/fcntl-o.m4 $(top_srcdir)/m4/fcntl.m4 \ - $(top_srcdir)/m4/fcntl_h.m4 $(top_srcdir)/m4/filenamecat.m4 \ - $(top_srcdir)/m4/flexmember.m4 $(top_srcdir)/m4/float_h.m4 \ - $(top_srcdir)/m4/fnmatch.m4 $(top_srcdir)/m4/fnmatch_h.m4 \ - $(top_srcdir)/m4/fstat.m4 $(top_srcdir)/m4/getcwd.m4 \ - $(top_srcdir)/m4/getdelim.m4 $(top_srcdir)/m4/getdtablesize.m4 \ - $(top_srcdir)/m4/getline.m4 $(top_srcdir)/m4/getopt.m4 \ - $(top_srcdir)/m4/getprogname.m4 $(top_srcdir)/m4/gettext.m4 \ - $(top_srcdir)/m4/glibc21.m4 $(top_srcdir)/m4/gnulib-common.m4 \ - $(top_srcdir)/m4/gnulib-comp.m4 \ - $(top_srcdir)/m4/host-cpu-c-abi.m4 $(top_srcdir)/m4/iconv.m4 \ - $(top_srcdir)/m4/include_next.m4 \ - $(top_srcdir)/m4/intlmacosx.m4 $(top_srcdir)/m4/intmax_t.m4 \ - $(top_srcdir)/m4/inttypes_h.m4 $(top_srcdir)/m4/langinfo_h.m4 \ - $(top_srcdir)/m4/largefile.m4 $(top_srcdir)/m4/lib-ld.m4 \ - $(top_srcdir)/m4/lib-link.m4 $(top_srcdir)/m4/lib-prefix.m4 \ - $(top_srcdir)/m4/libunistring-base.m4 \ - $(top_srcdir)/m4/limits-h.m4 $(top_srcdir)/m4/localcharset.m4 \ - $(top_srcdir)/m4/locale-fr.m4 $(top_srcdir)/m4/locale-ja.m4 \ - $(top_srcdir)/m4/locale-zh.m4 $(top_srcdir)/m4/locale_h.m4 \ - $(top_srcdir)/m4/localeconv.m4 $(top_srcdir)/m4/lock.m4 \ - $(top_srcdir)/m4/longlong.m4 $(top_srcdir)/m4/lstat.m4 \ - $(top_srcdir)/m4/malloc.m4 $(top_srcdir)/m4/malloca.m4 \ - $(top_srcdir)/m4/mbrtowc.m4 $(top_srcdir)/m4/mbsinit.m4 \ - $(top_srcdir)/m4/mbsrtowcs.m4 $(top_srcdir)/m4/mbstate_t.m4 \ - $(top_srcdir)/m4/mbswidth.m4 $(top_srcdir)/m4/mbtowc.m4 \ - $(top_srcdir)/m4/memchr.m4 $(top_srcdir)/m4/mempcpy.m4 \ - $(top_srcdir)/m4/memrchr.m4 $(top_srcdir)/m4/mmap-anon.m4 \ - $(top_srcdir)/m4/mode_t.m4 $(top_srcdir)/m4/msvc-inval.m4 \ - $(top_srcdir)/m4/msvc-nothrow.m4 $(top_srcdir)/m4/multiarch.m4 \ - $(top_srcdir)/m4/nl_langinfo.m4 $(top_srcdir)/m4/nls.m4 \ - $(top_srcdir)/m4/nocrash.m4 $(top_srcdir)/m4/off_t.m4 \ - $(top_srcdir)/m4/open-cloexec.m4 $(top_srcdir)/m4/open.m4 \ - $(top_srcdir)/m4/openat.m4 $(top_srcdir)/m4/pathmax.m4 \ - $(top_srcdir)/m4/po.m4 $(top_srcdir)/m4/printf.m4 \ - $(top_srcdir)/m4/progtest.m4 \ - $(top_srcdir)/m4/pthread_rwlock_rdlock.m4 \ - $(top_srcdir)/m4/rawmemchr.m4 $(top_srcdir)/m4/realloc.m4 \ - $(top_srcdir)/m4/regex.m4 $(top_srcdir)/m4/save-cwd.m4 \ - $(top_srcdir)/m4/size_max.m4 $(top_srcdir)/m4/sleep.m4 \ - $(top_srcdir)/m4/ssize_t.m4 $(top_srcdir)/m4/stat-time.m4 \ - $(top_srcdir)/m4/stat.m4 $(top_srcdir)/m4/stdalign.m4 \ - $(top_srcdir)/m4/stdbool.m4 $(top_srcdir)/m4/stddef_h.m4 \ - $(top_srcdir)/m4/stdint.m4 $(top_srcdir)/m4/stdint_h.m4 \ - $(top_srcdir)/m4/stdio_h.m4 $(top_srcdir)/m4/stdlib_h.m4 \ - $(top_srcdir)/m4/strcase.m4 $(top_srcdir)/m4/strchrnul.m4 \ - $(top_srcdir)/m4/strdup.m4 $(top_srcdir)/m4/strerror.m4 \ - $(top_srcdir)/m4/string_h.m4 $(top_srcdir)/m4/strings_h.m4 \ - $(top_srcdir)/m4/strndup.m4 $(top_srcdir)/m4/strnlen.m4 \ - $(top_srcdir)/m4/sys_socket_h.m4 \ - $(top_srcdir)/m4/sys_stat_h.m4 $(top_srcdir)/m4/sys_types_h.m4 \ - $(top_srcdir)/m4/sysexits.m4 $(top_srcdir)/m4/threadlib.m4 \ - $(top_srcdir)/m4/time_h.m4 $(top_srcdir)/m4/unistd-safer.m4 \ - $(top_srcdir)/m4/unistd_h.m4 $(top_srcdir)/m4/vasnprintf.m4 \ - $(top_srcdir)/m4/vsnprintf.m4 $(top_srcdir)/m4/warn-on-use.m4 \ - $(top_srcdir)/m4/wchar_h.m4 $(top_srcdir)/m4/wchar_t.m4 \ - $(top_srcdir)/m4/wcrtomb.m4 $(top_srcdir)/m4/wctype_h.m4 \ - $(top_srcdir)/m4/wcwidth.m4 $(top_srcdir)/m4/wint_t.m4 \ - $(top_srcdir)/m4/xsize.m4 $(top_srcdir)/acinclude.m4 \ - $(top_srcdir)/configure.ac -am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ - $(ACLOCAL_M4) -DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON) -mkinstalldirs = $(install_sh) -d -CONFIG_HEADER = $(top_builddir)/config-util.h -CONFIG_CLEAN_FILES = -CONFIG_CLEAN_VPATH_FILES = -AM_V_P = $(am__v_P_@AM_V@) -am__v_P_ = $(am__v_P_@AM_DEFAULT_V@) -am__v_P_0 = false -am__v_P_1 = : -AM_V_GEN = $(am__v_GEN_@AM_V@) -am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@) -am__v_GEN_0 = @echo " GEN " $@; -am__v_GEN_1 = -AM_V_at = $(am__v_at_@AM_V@) -am__v_at_ = $(am__v_at_@AM_DEFAULT_V@) -am__v_at_0 = @ -am__v_at_1 = -SOURCES = -DIST_SOURCES = -am__can_run_installinfo = \ - case $$AM_UPDATE_INFO_DIR in \ - n|no|NO) false;; \ - *) (install-info --version) >/dev/null 2>&1;; \ - esac -am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; -am__vpath_adj = case $$p in \ - $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \ - *) f=$$p;; \ - esac; -am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`; -am__install_max = 40 -am__nobase_strip_setup = \ - srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'` -am__nobase_strip = \ - for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||" -am__nobase_list = $(am__nobase_strip_setup); \ - for p in $$list; do echo "$$p $$p"; done | \ - sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \ - $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \ - if (++n[$$2] == $(am__install_max)) \ - { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \ - END { for (dir in files) print dir, files[dir] }' -am__base_list = \ - sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \ - sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g' -am__uninstall_files_from_dir = { \ - test -z "$$files" \ - || { test ! -d "$$dir" && test ! -f "$$dir" && test ! -r "$$dir"; } \ - || { echo " ( cd '$$dir' && rm -f" $$files ")"; \ - $(am__cd) "$$dir" && rm -f $$files; }; \ - } -am__installdirs = "$(DESTDIR)$(bashcompletiondir)" -DATA = $(bashcompletion_DATA) -am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) -am__DIST_COMMON = $(srcdir)/Makefile.in -DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) -ACLOCAL = @ACLOCAL@ -ALLOCA = @ALLOCA@ -ALLOCA_H = @ALLOCA_H@ -AMTAR = @AMTAR@ -AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ -APPLE_UNIVERSAL_BUILD = @APPLE_UNIVERSAL_BUILD@ -AR = @AR@ -ARFLAGS = @ARFLAGS@ -AUTOCONF = @AUTOCONF@ -AUTOHEADER = @AUTOHEADER@ -AUTOMAKE = @AUTOMAKE@ -AWK = @AWK@ -BITSIZEOF_PTRDIFF_T = @BITSIZEOF_PTRDIFF_T@ -BITSIZEOF_SIG_ATOMIC_T = @BITSIZEOF_SIG_ATOMIC_T@ -BITSIZEOF_SIZE_T = @BITSIZEOF_SIZE_T@ -BITSIZEOF_WCHAR_T = @BITSIZEOF_WCHAR_T@ -BITSIZEOF_WINT_T = @BITSIZEOF_WINT_T@ -BOOT_TIME_STATS = @BOOT_TIME_STATS@ -BSS_START_SYMBOL = @BSS_START_SYMBOL@ -BUILD_CC = @BUILD_CC@ -BUILD_CFLAGS = @BUILD_CFLAGS@ -BUILD_CPPFLAGS = @BUILD_CPPFLAGS@ -BUILD_EXEEXT = @BUILD_EXEEXT@ -BUILD_FREETYPE_CFLAGS = @BUILD_FREETYPE_CFLAGS@ -BUILD_FREETYPE_LIBS = @BUILD_FREETYPE_LIBS@ -BUILD_LDFLAGS = @BUILD_LDFLAGS@ -BUILD_LIBM = @BUILD_LIBM@ -BUILD_SHEBANG = @BUILD_SHEBANG@ -BUILD_SIZEOF_LONG = @BUILD_SIZEOF_LONG@ -BUILD_SIZEOF_VOID_P = @BUILD_SIZEOF_VOID_P@ -BUILD_WORDS_BIGENDIAN = @BUILD_WORDS_BIGENDIAN@ -CC = @CC@ -CCAS = @CCAS@ -CCASDEPMODE = @CCASDEPMODE@ -CCASFLAGS = @CCASFLAGS@ -CCDEPMODE = @CCDEPMODE@ -CFLAGS = @CFLAGS@ -CMP = @CMP@ -CPP = @CPP@ -CPPFLAGS = @CPPFLAGS@ -CXX = @CXX@ -CXXDEPMODE = @CXXDEPMODE@ -CXXFLAGS = @CXXFLAGS@ -CYGPATH_W = @CYGPATH_W@ -DEFS = @DEFS@ -DEPDIR = @DEPDIR@ -DISK_CACHE_STATS = @DISK_CACHE_STATS@ -DJVU_FONT_SOURCE = @DJVU_FONT_SOURCE@ -ECHO_C = @ECHO_C@ -ECHO_N = @ECHO_N@ -ECHO_T = @ECHO_T@ -EFIEMU64_LINK_FORMAT = @EFIEMU64_LINK_FORMAT@ -EGREP = @EGREP@ -EMULTIHOP_HIDDEN = @EMULTIHOP_HIDDEN@ -EMULTIHOP_VALUE = @EMULTIHOP_VALUE@ -END_SYMBOL = @END_SYMBOL@ -ENOLINK_HIDDEN = @ENOLINK_HIDDEN@ -ENOLINK_VALUE = @ENOLINK_VALUE@ -EOVERFLOW_HIDDEN = @EOVERFLOW_HIDDEN@ -EOVERFLOW_VALUE = @EOVERFLOW_VALUE@ -ERRNO_H = @ERRNO_H@ -EXEEXT = @EXEEXT@ -FLOAT_H = @FLOAT_H@ -FNMATCH_H = @FNMATCH_H@ -FONT_SOURCE = @FONT_SOURCE@ -FREETYPE_CFLAGS = @FREETYPE_CFLAGS@ -FREETYPE_LIBS = @FREETYPE_LIBS@ -GETOPT_CDEFS_H = @GETOPT_CDEFS_H@ -GETOPT_H = @GETOPT_H@ -GETTEXT_MACRO_VERSION = @GETTEXT_MACRO_VERSION@ -GLIBC21 = @GLIBC21@ -GMSGFMT = @GMSGFMT@ -GMSGFMT_015 = @GMSGFMT_015@ -GNULIB_ALPHASORT = @GNULIB_ALPHASORT@ -GNULIB_ATOLL = @GNULIB_ATOLL@ -GNULIB_BTOWC = @GNULIB_BTOWC@ -GNULIB_CALLOC_POSIX = @GNULIB_CALLOC_POSIX@ -GNULIB_CANONICALIZE_FILE_NAME = @GNULIB_CANONICALIZE_FILE_NAME@ -GNULIB_CHDIR = @GNULIB_CHDIR@ -GNULIB_CHOWN = @GNULIB_CHOWN@ -GNULIB_CLOSE = @GNULIB_CLOSE@ -GNULIB_CLOSEDIR = @GNULIB_CLOSEDIR@ -GNULIB_CTIME = @GNULIB_CTIME@ -GNULIB_DIRFD = @GNULIB_DIRFD@ -GNULIB_DPRINTF = @GNULIB_DPRINTF@ -GNULIB_DUP = @GNULIB_DUP@ -GNULIB_DUP2 = @GNULIB_DUP2@ -GNULIB_DUP3 = @GNULIB_DUP3@ -GNULIB_DUPLOCALE = @GNULIB_DUPLOCALE@ -GNULIB_ENVIRON = @GNULIB_ENVIRON@ -GNULIB_EUIDACCESS = @GNULIB_EUIDACCESS@ -GNULIB_EXPLICIT_BZERO = @GNULIB_EXPLICIT_BZERO@ -GNULIB_FACCESSAT = @GNULIB_FACCESSAT@ -GNULIB_FCHDIR = @GNULIB_FCHDIR@ -GNULIB_FCHMODAT = @GNULIB_FCHMODAT@ -GNULIB_FCHOWNAT = @GNULIB_FCHOWNAT@ -GNULIB_FCLOSE = @GNULIB_FCLOSE@ -GNULIB_FCNTL = @GNULIB_FCNTL@ -GNULIB_FDATASYNC = @GNULIB_FDATASYNC@ -GNULIB_FDOPEN = @GNULIB_FDOPEN@ -GNULIB_FDOPENDIR = @GNULIB_FDOPENDIR@ -GNULIB_FFLUSH = @GNULIB_FFLUSH@ -GNULIB_FFS = @GNULIB_FFS@ -GNULIB_FFSL = @GNULIB_FFSL@ -GNULIB_FFSLL = @GNULIB_FFSLL@ -GNULIB_FGETC = @GNULIB_FGETC@ -GNULIB_FGETS = @GNULIB_FGETS@ -GNULIB_FNMATCH = @GNULIB_FNMATCH@ -GNULIB_FOPEN = @GNULIB_FOPEN@ -GNULIB_FPRINTF = @GNULIB_FPRINTF@ -GNULIB_FPRINTF_POSIX = @GNULIB_FPRINTF_POSIX@ -GNULIB_FPURGE = @GNULIB_FPURGE@ -GNULIB_FPUTC = @GNULIB_FPUTC@ -GNULIB_FPUTS = @GNULIB_FPUTS@ -GNULIB_FREAD = @GNULIB_FREAD@ -GNULIB_FREOPEN = @GNULIB_FREOPEN@ -GNULIB_FSCANF = @GNULIB_FSCANF@ -GNULIB_FSEEK = @GNULIB_FSEEK@ -GNULIB_FSEEKO = @GNULIB_FSEEKO@ -GNULIB_FSTAT = @GNULIB_FSTAT@ -GNULIB_FSTATAT = @GNULIB_FSTATAT@ -GNULIB_FSYNC = @GNULIB_FSYNC@ -GNULIB_FTELL = @GNULIB_FTELL@ -GNULIB_FTELLO = @GNULIB_FTELLO@ -GNULIB_FTRUNCATE = @GNULIB_FTRUNCATE@ -GNULIB_FUTIMENS = @GNULIB_FUTIMENS@ -GNULIB_FWRITE = @GNULIB_FWRITE@ -GNULIB_GETC = @GNULIB_GETC@ -GNULIB_GETCHAR = @GNULIB_GETCHAR@ -GNULIB_GETCWD = @GNULIB_GETCWD@ -GNULIB_GETDELIM = @GNULIB_GETDELIM@ -GNULIB_GETDOMAINNAME = @GNULIB_GETDOMAINNAME@ -GNULIB_GETDTABLESIZE = @GNULIB_GETDTABLESIZE@ -GNULIB_GETGROUPS = @GNULIB_GETGROUPS@ -GNULIB_GETHOSTNAME = @GNULIB_GETHOSTNAME@ -GNULIB_GETLINE = @GNULIB_GETLINE@ -GNULIB_GETLOADAVG = @GNULIB_GETLOADAVG@ -GNULIB_GETLOGIN = @GNULIB_GETLOGIN@ -GNULIB_GETLOGIN_R = @GNULIB_GETLOGIN_R@ -GNULIB_GETPAGESIZE = @GNULIB_GETPAGESIZE@ -GNULIB_GETPASS = @GNULIB_GETPASS@ -GNULIB_GETSUBOPT = @GNULIB_GETSUBOPT@ -GNULIB_GETTIMEOFDAY = @GNULIB_GETTIMEOFDAY@ -GNULIB_GETUSERSHELL = @GNULIB_GETUSERSHELL@ -GNULIB_GL_UNISTD_H_GETOPT = @GNULIB_GL_UNISTD_H_GETOPT@ -GNULIB_GRANTPT = @GNULIB_GRANTPT@ -GNULIB_GROUP_MEMBER = @GNULIB_GROUP_MEMBER@ -GNULIB_ISATTY = @GNULIB_ISATTY@ -GNULIB_ISWBLANK = @GNULIB_ISWBLANK@ -GNULIB_ISWCTYPE = @GNULIB_ISWCTYPE@ -GNULIB_LCHMOD = @GNULIB_LCHMOD@ -GNULIB_LCHOWN = @GNULIB_LCHOWN@ -GNULIB_LINK = @GNULIB_LINK@ -GNULIB_LINKAT = @GNULIB_LINKAT@ -GNULIB_LOCALECONV = @GNULIB_LOCALECONV@ -GNULIB_LOCALENAME = @GNULIB_LOCALENAME@ -GNULIB_LOCALTIME = @GNULIB_LOCALTIME@ -GNULIB_LSEEK = @GNULIB_LSEEK@ -GNULIB_LSTAT = @GNULIB_LSTAT@ -GNULIB_MALLOC_POSIX = @GNULIB_MALLOC_POSIX@ -GNULIB_MBRLEN = @GNULIB_MBRLEN@ -GNULIB_MBRTOWC = @GNULIB_MBRTOWC@ -GNULIB_MBSCASECMP = @GNULIB_MBSCASECMP@ -GNULIB_MBSCASESTR = @GNULIB_MBSCASESTR@ -GNULIB_MBSCHR = @GNULIB_MBSCHR@ -GNULIB_MBSCSPN = @GNULIB_MBSCSPN@ -GNULIB_MBSINIT = @GNULIB_MBSINIT@ -GNULIB_MBSLEN = @GNULIB_MBSLEN@ -GNULIB_MBSNCASECMP = @GNULIB_MBSNCASECMP@ -GNULIB_MBSNLEN = @GNULIB_MBSNLEN@ -GNULIB_MBSNRTOWCS = @GNULIB_MBSNRTOWCS@ -GNULIB_MBSPBRK = @GNULIB_MBSPBRK@ -GNULIB_MBSPCASECMP = @GNULIB_MBSPCASECMP@ -GNULIB_MBSRCHR = @GNULIB_MBSRCHR@ -GNULIB_MBSRTOWCS = @GNULIB_MBSRTOWCS@ -GNULIB_MBSSEP = @GNULIB_MBSSEP@ -GNULIB_MBSSPN = @GNULIB_MBSSPN@ -GNULIB_MBSSTR = @GNULIB_MBSSTR@ -GNULIB_MBSTOK_R = @GNULIB_MBSTOK_R@ -GNULIB_MBTOWC = @GNULIB_MBTOWC@ -GNULIB_MEMCHR = @GNULIB_MEMCHR@ -GNULIB_MEMMEM = @GNULIB_MEMMEM@ -GNULIB_MEMPCPY = @GNULIB_MEMPCPY@ -GNULIB_MEMRCHR = @GNULIB_MEMRCHR@ -GNULIB_MKDIRAT = @GNULIB_MKDIRAT@ -GNULIB_MKDTEMP = @GNULIB_MKDTEMP@ -GNULIB_MKFIFO = @GNULIB_MKFIFO@ -GNULIB_MKFIFOAT = @GNULIB_MKFIFOAT@ -GNULIB_MKNOD = @GNULIB_MKNOD@ -GNULIB_MKNODAT = @GNULIB_MKNODAT@ -GNULIB_MKOSTEMP = @GNULIB_MKOSTEMP@ -GNULIB_MKOSTEMPS = @GNULIB_MKOSTEMPS@ -GNULIB_MKSTEMP = @GNULIB_MKSTEMP@ -GNULIB_MKSTEMPS = @GNULIB_MKSTEMPS@ -GNULIB_MKTIME = @GNULIB_MKTIME@ -GNULIB_NANOSLEEP = @GNULIB_NANOSLEEP@ -GNULIB_NL_LANGINFO = @GNULIB_NL_LANGINFO@ -GNULIB_NONBLOCKING = @GNULIB_NONBLOCKING@ -GNULIB_OBSTACK_PRINTF = @GNULIB_OBSTACK_PRINTF@ -GNULIB_OBSTACK_PRINTF_POSIX = @GNULIB_OBSTACK_PRINTF_POSIX@ -GNULIB_OPEN = @GNULIB_OPEN@ -GNULIB_OPENAT = @GNULIB_OPENAT@ -GNULIB_OPENDIR = @GNULIB_OPENDIR@ -GNULIB_OVERRIDES_STRUCT_STAT = @GNULIB_OVERRIDES_STRUCT_STAT@ -GNULIB_OVERRIDES_WINT_T = @GNULIB_OVERRIDES_WINT_T@ -GNULIB_PCLOSE = @GNULIB_PCLOSE@ -GNULIB_PERROR = @GNULIB_PERROR@ -GNULIB_PIPE = @GNULIB_PIPE@ -GNULIB_PIPE2 = @GNULIB_PIPE2@ -GNULIB_POPEN = @GNULIB_POPEN@ -GNULIB_POSIX_OPENPT = @GNULIB_POSIX_OPENPT@ -GNULIB_PREAD = @GNULIB_PREAD@ -GNULIB_PRINTF = @GNULIB_PRINTF@ -GNULIB_PRINTF_POSIX = @GNULIB_PRINTF_POSIX@ -GNULIB_PTSNAME = @GNULIB_PTSNAME@ -GNULIB_PTSNAME_R = @GNULIB_PTSNAME_R@ -GNULIB_PUTC = @GNULIB_PUTC@ -GNULIB_PUTCHAR = @GNULIB_PUTCHAR@ -GNULIB_PUTENV = @GNULIB_PUTENV@ -GNULIB_PUTS = @GNULIB_PUTS@ -GNULIB_PWRITE = @GNULIB_PWRITE@ -GNULIB_QSORT_R = @GNULIB_QSORT_R@ -GNULIB_RANDOM = @GNULIB_RANDOM@ -GNULIB_RANDOM_R = @GNULIB_RANDOM_R@ -GNULIB_RAWMEMCHR = @GNULIB_RAWMEMCHR@ -GNULIB_READ = @GNULIB_READ@ -GNULIB_READDIR = @GNULIB_READDIR@ -GNULIB_READLINK = @GNULIB_READLINK@ -GNULIB_READLINKAT = @GNULIB_READLINKAT@ -GNULIB_REALLOCARRAY = @GNULIB_REALLOCARRAY@ -GNULIB_REALLOC_POSIX = @GNULIB_REALLOC_POSIX@ -GNULIB_REALPATH = @GNULIB_REALPATH@ -GNULIB_REMOVE = @GNULIB_REMOVE@ -GNULIB_RENAME = @GNULIB_RENAME@ -GNULIB_RENAMEAT = @GNULIB_RENAMEAT@ -GNULIB_REWINDDIR = @GNULIB_REWINDDIR@ -GNULIB_RMDIR = @GNULIB_RMDIR@ -GNULIB_RPMATCH = @GNULIB_RPMATCH@ -GNULIB_SCANDIR = @GNULIB_SCANDIR@ -GNULIB_SCANF = @GNULIB_SCANF@ -GNULIB_SECURE_GETENV = @GNULIB_SECURE_GETENV@ -GNULIB_SETENV = @GNULIB_SETENV@ -GNULIB_SETHOSTNAME = @GNULIB_SETHOSTNAME@ -GNULIB_SETLOCALE = @GNULIB_SETLOCALE@ -GNULIB_SLEEP = @GNULIB_SLEEP@ -GNULIB_SNPRINTF = @GNULIB_SNPRINTF@ -GNULIB_SPRINTF_POSIX = @GNULIB_SPRINTF_POSIX@ -GNULIB_STAT = @GNULIB_STAT@ -GNULIB_STDIO_H_NONBLOCKING = @GNULIB_STDIO_H_NONBLOCKING@ -GNULIB_STDIO_H_SIGPIPE = @GNULIB_STDIO_H_SIGPIPE@ -GNULIB_STPCPY = @GNULIB_STPCPY@ -GNULIB_STPNCPY = @GNULIB_STPNCPY@ -GNULIB_STRCASESTR = @GNULIB_STRCASESTR@ -GNULIB_STRCHRNUL = @GNULIB_STRCHRNUL@ -GNULIB_STRDUP = @GNULIB_STRDUP@ -GNULIB_STRERROR = @GNULIB_STRERROR@ -GNULIB_STRERROR_R = @GNULIB_STRERROR_R@ -GNULIB_STRFTIME = @GNULIB_STRFTIME@ -GNULIB_STRNCAT = @GNULIB_STRNCAT@ -GNULIB_STRNDUP = @GNULIB_STRNDUP@ -GNULIB_STRNLEN = @GNULIB_STRNLEN@ -GNULIB_STRPBRK = @GNULIB_STRPBRK@ -GNULIB_STRPTIME = @GNULIB_STRPTIME@ -GNULIB_STRSEP = @GNULIB_STRSEP@ -GNULIB_STRSIGNAL = @GNULIB_STRSIGNAL@ -GNULIB_STRSTR = @GNULIB_STRSTR@ -GNULIB_STRTOD = @GNULIB_STRTOD@ -GNULIB_STRTOK_R = @GNULIB_STRTOK_R@ -GNULIB_STRTOLL = @GNULIB_STRTOLL@ -GNULIB_STRTOULL = @GNULIB_STRTOULL@ -GNULIB_STRVERSCMP = @GNULIB_STRVERSCMP@ -GNULIB_SYMLINK = @GNULIB_SYMLINK@ -GNULIB_SYMLINKAT = @GNULIB_SYMLINKAT@ -GNULIB_SYSTEM_POSIX = @GNULIB_SYSTEM_POSIX@ -GNULIB_TIMEGM = @GNULIB_TIMEGM@ -GNULIB_TIME_R = @GNULIB_TIME_R@ -GNULIB_TIME_RZ = @GNULIB_TIME_RZ@ -GNULIB_TMPFILE = @GNULIB_TMPFILE@ -GNULIB_TOWCTRANS = @GNULIB_TOWCTRANS@ -GNULIB_TRUNCATE = @GNULIB_TRUNCATE@ -GNULIB_TTYNAME_R = @GNULIB_TTYNAME_R@ -GNULIB_TZSET = @GNULIB_TZSET@ -GNULIB_UNISTD_H_NONBLOCKING = @GNULIB_UNISTD_H_NONBLOCKING@ -GNULIB_UNISTD_H_SIGPIPE = @GNULIB_UNISTD_H_SIGPIPE@ -GNULIB_UNLINK = @GNULIB_UNLINK@ -GNULIB_UNLINKAT = @GNULIB_UNLINKAT@ -GNULIB_UNLOCKPT = @GNULIB_UNLOCKPT@ -GNULIB_UNSETENV = @GNULIB_UNSETENV@ -GNULIB_USLEEP = @GNULIB_USLEEP@ -GNULIB_UTIMENSAT = @GNULIB_UTIMENSAT@ -GNULIB_VASPRINTF = @GNULIB_VASPRINTF@ -GNULIB_VDPRINTF = @GNULIB_VDPRINTF@ -GNULIB_VFPRINTF = @GNULIB_VFPRINTF@ -GNULIB_VFPRINTF_POSIX = @GNULIB_VFPRINTF_POSIX@ -GNULIB_VFSCANF = @GNULIB_VFSCANF@ -GNULIB_VPRINTF = @GNULIB_VPRINTF@ -GNULIB_VPRINTF_POSIX = @GNULIB_VPRINTF_POSIX@ -GNULIB_VSCANF = @GNULIB_VSCANF@ -GNULIB_VSNPRINTF = @GNULIB_VSNPRINTF@ -GNULIB_VSPRINTF_POSIX = @GNULIB_VSPRINTF_POSIX@ -GNULIB_WCPCPY = @GNULIB_WCPCPY@ -GNULIB_WCPNCPY = @GNULIB_WCPNCPY@ -GNULIB_WCRTOMB = @GNULIB_WCRTOMB@ -GNULIB_WCSCASECMP = @GNULIB_WCSCASECMP@ -GNULIB_WCSCAT = @GNULIB_WCSCAT@ -GNULIB_WCSCHR = @GNULIB_WCSCHR@ -GNULIB_WCSCMP = @GNULIB_WCSCMP@ -GNULIB_WCSCOLL = @GNULIB_WCSCOLL@ -GNULIB_WCSCPY = @GNULIB_WCSCPY@ -GNULIB_WCSCSPN = @GNULIB_WCSCSPN@ -GNULIB_WCSDUP = @GNULIB_WCSDUP@ -GNULIB_WCSFTIME = @GNULIB_WCSFTIME@ -GNULIB_WCSLEN = @GNULIB_WCSLEN@ -GNULIB_WCSNCASECMP = @GNULIB_WCSNCASECMP@ -GNULIB_WCSNCAT = @GNULIB_WCSNCAT@ -GNULIB_WCSNCMP = @GNULIB_WCSNCMP@ -GNULIB_WCSNCPY = @GNULIB_WCSNCPY@ -GNULIB_WCSNLEN = @GNULIB_WCSNLEN@ -GNULIB_WCSNRTOMBS = @GNULIB_WCSNRTOMBS@ -GNULIB_WCSPBRK = @GNULIB_WCSPBRK@ -GNULIB_WCSRCHR = @GNULIB_WCSRCHR@ -GNULIB_WCSRTOMBS = @GNULIB_WCSRTOMBS@ -GNULIB_WCSSPN = @GNULIB_WCSSPN@ -GNULIB_WCSSTR = @GNULIB_WCSSTR@ -GNULIB_WCSTOK = @GNULIB_WCSTOK@ -GNULIB_WCSWIDTH = @GNULIB_WCSWIDTH@ -GNULIB_WCSXFRM = @GNULIB_WCSXFRM@ -GNULIB_WCTOB = @GNULIB_WCTOB@ -GNULIB_WCTOMB = @GNULIB_WCTOMB@ -GNULIB_WCTRANS = @GNULIB_WCTRANS@ -GNULIB_WCTYPE = @GNULIB_WCTYPE@ -GNULIB_WCWIDTH = @GNULIB_WCWIDTH@ -GNULIB_WMEMCHR = @GNULIB_WMEMCHR@ -GNULIB_WMEMCMP = @GNULIB_WMEMCMP@ -GNULIB_WMEMCPY = @GNULIB_WMEMCPY@ -GNULIB_WMEMMOVE = @GNULIB_WMEMMOVE@ -GNULIB_WMEMSET = @GNULIB_WMEMSET@ -GNULIB_WRITE = @GNULIB_WRITE@ -GNULIB__EXIT = @GNULIB__EXIT@ -GREP = @GREP@ -GRUB_BOOT_MACHINE_LINK_ADDR = @GRUB_BOOT_MACHINE_LINK_ADDR@ -GRUB_PLATFORM = @GRUB_PLATFORM@ -GRUB_TARGET_CPU = @GRUB_TARGET_CPU@ -HAVE_ALPHASORT = @HAVE_ALPHASORT@ -HAVE_ASM_USCORE = @HAVE_ASM_USCORE@ -HAVE_ATOLL = @HAVE_ATOLL@ -HAVE_BTOWC = @HAVE_BTOWC@ -HAVE_C99_STDINT_H = @HAVE_C99_STDINT_H@ -HAVE_CANONICALIZE_FILE_NAME = @HAVE_CANONICALIZE_FILE_NAME@ -HAVE_CHOWN = @HAVE_CHOWN@ -HAVE_CLOSEDIR = @HAVE_CLOSEDIR@ -HAVE_CRTDEFS_H = @HAVE_CRTDEFS_H@ -HAVE_CXX = @HAVE_CXX@ -HAVE_DECL_DIRFD = @HAVE_DECL_DIRFD@ -HAVE_DECL_ENVIRON = @HAVE_DECL_ENVIRON@ -HAVE_DECL_FCHDIR = @HAVE_DECL_FCHDIR@ -HAVE_DECL_FDATASYNC = @HAVE_DECL_FDATASYNC@ -HAVE_DECL_FDOPENDIR = @HAVE_DECL_FDOPENDIR@ -HAVE_DECL_FPURGE = @HAVE_DECL_FPURGE@ -HAVE_DECL_FSEEKO = @HAVE_DECL_FSEEKO@ -HAVE_DECL_FTELLO = @HAVE_DECL_FTELLO@ -HAVE_DECL_GETDELIM = @HAVE_DECL_GETDELIM@ -HAVE_DECL_GETDOMAINNAME = @HAVE_DECL_GETDOMAINNAME@ -HAVE_DECL_GETLINE = @HAVE_DECL_GETLINE@ -HAVE_DECL_GETLOADAVG = @HAVE_DECL_GETLOADAVG@ -HAVE_DECL_GETLOGIN = @HAVE_DECL_GETLOGIN@ -HAVE_DECL_GETLOGIN_R = @HAVE_DECL_GETLOGIN_R@ -HAVE_DECL_GETPAGESIZE = @HAVE_DECL_GETPAGESIZE@ -HAVE_DECL_GETUSERSHELL = @HAVE_DECL_GETUSERSHELL@ -HAVE_DECL_INITSTATE = @HAVE_DECL_INITSTATE@ -HAVE_DECL_LOCALTIME_R = @HAVE_DECL_LOCALTIME_R@ -HAVE_DECL_MEMMEM = @HAVE_DECL_MEMMEM@ -HAVE_DECL_MEMRCHR = @HAVE_DECL_MEMRCHR@ -HAVE_DECL_OBSTACK_PRINTF = @HAVE_DECL_OBSTACK_PRINTF@ -HAVE_DECL_SETENV = @HAVE_DECL_SETENV@ -HAVE_DECL_SETHOSTNAME = @HAVE_DECL_SETHOSTNAME@ -HAVE_DECL_SETSTATE = @HAVE_DECL_SETSTATE@ -HAVE_DECL_SNPRINTF = @HAVE_DECL_SNPRINTF@ -HAVE_DECL_STRDUP = @HAVE_DECL_STRDUP@ -HAVE_DECL_STRERROR_R = @HAVE_DECL_STRERROR_R@ -HAVE_DECL_STRNCASECMP = @HAVE_DECL_STRNCASECMP@ -HAVE_DECL_STRNDUP = @HAVE_DECL_STRNDUP@ -HAVE_DECL_STRNLEN = @HAVE_DECL_STRNLEN@ -HAVE_DECL_STRSIGNAL = @HAVE_DECL_STRSIGNAL@ -HAVE_DECL_STRTOK_R = @HAVE_DECL_STRTOK_R@ -HAVE_DECL_TRUNCATE = @HAVE_DECL_TRUNCATE@ -HAVE_DECL_TTYNAME_R = @HAVE_DECL_TTYNAME_R@ -HAVE_DECL_UNSETENV = @HAVE_DECL_UNSETENV@ -HAVE_DECL_VSNPRINTF = @HAVE_DECL_VSNPRINTF@ -HAVE_DECL_WCTOB = @HAVE_DECL_WCTOB@ -HAVE_DECL_WCWIDTH = @HAVE_DECL_WCWIDTH@ -HAVE_DIRENT_H = @HAVE_DIRENT_H@ -HAVE_DPRINTF = @HAVE_DPRINTF@ -HAVE_DUP2 = @HAVE_DUP2@ -HAVE_DUP3 = @HAVE_DUP3@ -HAVE_DUPLOCALE = @HAVE_DUPLOCALE@ -HAVE_EUIDACCESS = @HAVE_EUIDACCESS@ -HAVE_EXPLICIT_BZERO = @HAVE_EXPLICIT_BZERO@ -HAVE_FACCESSAT = @HAVE_FACCESSAT@ -HAVE_FCHDIR = @HAVE_FCHDIR@ -HAVE_FCHMODAT = @HAVE_FCHMODAT@ -HAVE_FCHOWNAT = @HAVE_FCHOWNAT@ -HAVE_FCNTL = @HAVE_FCNTL@ -HAVE_FDATASYNC = @HAVE_FDATASYNC@ -HAVE_FDOPENDIR = @HAVE_FDOPENDIR@ -HAVE_FEATURES_H = @HAVE_FEATURES_H@ -HAVE_FFS = @HAVE_FFS@ -HAVE_FFSL = @HAVE_FFSL@ -HAVE_FFSLL = @HAVE_FFSLL@ -HAVE_FNMATCH = @HAVE_FNMATCH@ -HAVE_FNMATCH_H = @HAVE_FNMATCH_H@ -HAVE_FONT_SOURCE = @HAVE_FONT_SOURCE@ -HAVE_FREELOCALE = @HAVE_FREELOCALE@ -HAVE_FSEEKO = @HAVE_FSEEKO@ -HAVE_FSTATAT = @HAVE_FSTATAT@ -HAVE_FSYNC = @HAVE_FSYNC@ -HAVE_FTELLO = @HAVE_FTELLO@ -HAVE_FTRUNCATE = @HAVE_FTRUNCATE@ -HAVE_FUTIMENS = @HAVE_FUTIMENS@ -HAVE_GETDTABLESIZE = @HAVE_GETDTABLESIZE@ -HAVE_GETGROUPS = @HAVE_GETGROUPS@ -HAVE_GETHOSTNAME = @HAVE_GETHOSTNAME@ -HAVE_GETLOGIN = @HAVE_GETLOGIN@ -HAVE_GETOPT_H = @HAVE_GETOPT_H@ -HAVE_GETPAGESIZE = @HAVE_GETPAGESIZE@ -HAVE_GETPASS = @HAVE_GETPASS@ -HAVE_GETSUBOPT = @HAVE_GETSUBOPT@ -HAVE_GRANTPT = @HAVE_GRANTPT@ -HAVE_GROUP_MEMBER = @HAVE_GROUP_MEMBER@ -HAVE_INTTYPES_H = @HAVE_INTTYPES_H@ -HAVE_ISWBLANK = @HAVE_ISWBLANK@ -HAVE_ISWCNTRL = @HAVE_ISWCNTRL@ -HAVE_LANGINFO_ALTMON = @HAVE_LANGINFO_ALTMON@ -HAVE_LANGINFO_CODESET = @HAVE_LANGINFO_CODESET@ -HAVE_LANGINFO_ERA = @HAVE_LANGINFO_ERA@ -HAVE_LANGINFO_H = @HAVE_LANGINFO_H@ -HAVE_LANGINFO_T_FMT_AMPM = @HAVE_LANGINFO_T_FMT_AMPM@ -HAVE_LANGINFO_YESEXPR = @HAVE_LANGINFO_YESEXPR@ -HAVE_LCHMOD = @HAVE_LCHMOD@ -HAVE_LCHOWN = @HAVE_LCHOWN@ -HAVE_LINK = @HAVE_LINK@ -HAVE_LINKAT = @HAVE_LINKAT@ -HAVE_LONG_LONG_INT = @HAVE_LONG_LONG_INT@ -HAVE_LSTAT = @HAVE_LSTAT@ -HAVE_MAX_ALIGN_T = @HAVE_MAX_ALIGN_T@ -HAVE_MBRLEN = @HAVE_MBRLEN@ -HAVE_MBRTOWC = @HAVE_MBRTOWC@ -HAVE_MBSINIT = @HAVE_MBSINIT@ -HAVE_MBSLEN = @HAVE_MBSLEN@ -HAVE_MBSNRTOWCS = @HAVE_MBSNRTOWCS@ -HAVE_MBSRTOWCS = @HAVE_MBSRTOWCS@ -HAVE_MEMCHR = @HAVE_MEMCHR@ -HAVE_MEMPCPY = @HAVE_MEMPCPY@ -HAVE_MKDIRAT = @HAVE_MKDIRAT@ -HAVE_MKDTEMP = @HAVE_MKDTEMP@ -HAVE_MKFIFO = @HAVE_MKFIFO@ -HAVE_MKFIFOAT = @HAVE_MKFIFOAT@ -HAVE_MKNOD = @HAVE_MKNOD@ -HAVE_MKNODAT = @HAVE_MKNODAT@ -HAVE_MKOSTEMP = @HAVE_MKOSTEMP@ -HAVE_MKOSTEMPS = @HAVE_MKOSTEMPS@ -HAVE_MKSTEMP = @HAVE_MKSTEMP@ -HAVE_MKSTEMPS = @HAVE_MKSTEMPS@ -HAVE_MSVC_INVALID_PARAMETER_HANDLER = @HAVE_MSVC_INVALID_PARAMETER_HANDLER@ -HAVE_NANOSLEEP = @HAVE_NANOSLEEP@ -HAVE_NEWLOCALE = @HAVE_NEWLOCALE@ -HAVE_NL_LANGINFO = @HAVE_NL_LANGINFO@ -HAVE_OPENAT = @HAVE_OPENAT@ -HAVE_OPENDIR = @HAVE_OPENDIR@ -HAVE_OS_H = @HAVE_OS_H@ -HAVE_PCLOSE = @HAVE_PCLOSE@ -HAVE_PIPE = @HAVE_PIPE@ -HAVE_PIPE2 = @HAVE_PIPE2@ -HAVE_POPEN = @HAVE_POPEN@ -HAVE_POSIX_OPENPT = @HAVE_POSIX_OPENPT@ -HAVE_PREAD = @HAVE_PREAD@ -HAVE_PTSNAME = @HAVE_PTSNAME@ -HAVE_PTSNAME_R = @HAVE_PTSNAME_R@ -HAVE_PWRITE = @HAVE_PWRITE@ -HAVE_QSORT_R = @HAVE_QSORT_R@ -HAVE_RANDOM = @HAVE_RANDOM@ -HAVE_RANDOM_H = @HAVE_RANDOM_H@ -HAVE_RANDOM_R = @HAVE_RANDOM_R@ -HAVE_RAWMEMCHR = @HAVE_RAWMEMCHR@ -HAVE_READDIR = @HAVE_READDIR@ -HAVE_READLINK = @HAVE_READLINK@ -HAVE_READLINKAT = @HAVE_READLINKAT@ -HAVE_REALLOCARRAY = @HAVE_REALLOCARRAY@ -HAVE_REALPATH = @HAVE_REALPATH@ -HAVE_RENAMEAT = @HAVE_RENAMEAT@ -HAVE_REWINDDIR = @HAVE_REWINDDIR@ -HAVE_RPMATCH = @HAVE_RPMATCH@ -HAVE_SCANDIR = @HAVE_SCANDIR@ -HAVE_SECURE_GETENV = @HAVE_SECURE_GETENV@ -HAVE_SETENV = @HAVE_SETENV@ -HAVE_SETHOSTNAME = @HAVE_SETHOSTNAME@ -HAVE_SIGNED_SIG_ATOMIC_T = @HAVE_SIGNED_SIG_ATOMIC_T@ -HAVE_SIGNED_WCHAR_T = @HAVE_SIGNED_WCHAR_T@ -HAVE_SIGNED_WINT_T = @HAVE_SIGNED_WINT_T@ -HAVE_SLEEP = @HAVE_SLEEP@ -HAVE_STDINT_H = @HAVE_STDINT_H@ -HAVE_STPCPY = @HAVE_STPCPY@ -HAVE_STPNCPY = @HAVE_STPNCPY@ -HAVE_STRCASECMP = @HAVE_STRCASECMP@ -HAVE_STRCASESTR = @HAVE_STRCASESTR@ -HAVE_STRCHRNUL = @HAVE_STRCHRNUL@ -HAVE_STRINGS_H = @HAVE_STRINGS_H@ -HAVE_STRPBRK = @HAVE_STRPBRK@ -HAVE_STRPTIME = @HAVE_STRPTIME@ -HAVE_STRSEP = @HAVE_STRSEP@ -HAVE_STRTOD = @HAVE_STRTOD@ -HAVE_STRTOLL = @HAVE_STRTOLL@ -HAVE_STRTOULL = @HAVE_STRTOULL@ -HAVE_STRUCT_RANDOM_DATA = @HAVE_STRUCT_RANDOM_DATA@ -HAVE_STRVERSCMP = @HAVE_STRVERSCMP@ -HAVE_SYMLINK = @HAVE_SYMLINK@ -HAVE_SYMLINKAT = @HAVE_SYMLINKAT@ -HAVE_SYSEXITS_H = @HAVE_SYSEXITS_H@ -HAVE_SYS_BITYPES_H = @HAVE_SYS_BITYPES_H@ -HAVE_SYS_CDEFS_H = @HAVE_SYS_CDEFS_H@ -HAVE_SYS_INTTYPES_H = @HAVE_SYS_INTTYPES_H@ -HAVE_SYS_LOADAVG_H = @HAVE_SYS_LOADAVG_H@ -HAVE_SYS_PARAM_H = @HAVE_SYS_PARAM_H@ -HAVE_SYS_TYPES_H = @HAVE_SYS_TYPES_H@ -HAVE_TIMEGM = @HAVE_TIMEGM@ -HAVE_TIMEZONE_T = @HAVE_TIMEZONE_T@ -HAVE_TZSET = @HAVE_TZSET@ -HAVE_UNISTD_H = @HAVE_UNISTD_H@ -HAVE_UNLINKAT = @HAVE_UNLINKAT@ -HAVE_UNLOCKPT = @HAVE_UNLOCKPT@ -HAVE_UNSIGNED_LONG_LONG_INT = @HAVE_UNSIGNED_LONG_LONG_INT@ -HAVE_USLEEP = @HAVE_USLEEP@ -HAVE_UTIMENSAT = @HAVE_UTIMENSAT@ -HAVE_VASPRINTF = @HAVE_VASPRINTF@ -HAVE_VDPRINTF = @HAVE_VDPRINTF@ -HAVE_WCHAR_H = @HAVE_WCHAR_H@ -HAVE_WCHAR_T = @HAVE_WCHAR_T@ -HAVE_WCPCPY = @HAVE_WCPCPY@ -HAVE_WCPNCPY = @HAVE_WCPNCPY@ -HAVE_WCRTOMB = @HAVE_WCRTOMB@ -HAVE_WCSCASECMP = @HAVE_WCSCASECMP@ -HAVE_WCSCAT = @HAVE_WCSCAT@ -HAVE_WCSCHR = @HAVE_WCSCHR@ -HAVE_WCSCMP = @HAVE_WCSCMP@ -HAVE_WCSCOLL = @HAVE_WCSCOLL@ -HAVE_WCSCPY = @HAVE_WCSCPY@ -HAVE_WCSCSPN = @HAVE_WCSCSPN@ -HAVE_WCSDUP = @HAVE_WCSDUP@ -HAVE_WCSFTIME = @HAVE_WCSFTIME@ -HAVE_WCSLEN = @HAVE_WCSLEN@ -HAVE_WCSNCASECMP = @HAVE_WCSNCASECMP@ -HAVE_WCSNCAT = @HAVE_WCSNCAT@ -HAVE_WCSNCMP = @HAVE_WCSNCMP@ -HAVE_WCSNCPY = @HAVE_WCSNCPY@ -HAVE_WCSNLEN = @HAVE_WCSNLEN@ -HAVE_WCSNRTOMBS = @HAVE_WCSNRTOMBS@ -HAVE_WCSPBRK = @HAVE_WCSPBRK@ -HAVE_WCSRCHR = @HAVE_WCSRCHR@ -HAVE_WCSRTOMBS = @HAVE_WCSRTOMBS@ -HAVE_WCSSPN = @HAVE_WCSSPN@ -HAVE_WCSSTR = @HAVE_WCSSTR@ -HAVE_WCSTOK = @HAVE_WCSTOK@ -HAVE_WCSWIDTH = @HAVE_WCSWIDTH@ -HAVE_WCSXFRM = @HAVE_WCSXFRM@ -HAVE_WCTRANS_T = @HAVE_WCTRANS_T@ -HAVE_WCTYPE_H = @HAVE_WCTYPE_H@ -HAVE_WCTYPE_T = @HAVE_WCTYPE_T@ -HAVE_WINSOCK2_H = @HAVE_WINSOCK2_H@ -HAVE_WINT_T = @HAVE_WINT_T@ -HAVE_WMEMCHR = @HAVE_WMEMCHR@ -HAVE_WMEMCMP = @HAVE_WMEMCMP@ -HAVE_WMEMCPY = @HAVE_WMEMCPY@ -HAVE_WMEMMOVE = @HAVE_WMEMMOVE@ -HAVE_WMEMSET = @HAVE_WMEMSET@ -HAVE_XLOCALE_H = @HAVE_XLOCALE_H@ -HAVE__BOOL = @HAVE__BOOL@ -HAVE__EXIT = @HAVE__EXIT@ -HELP2MAN = @HELP2MAN@ -HOST_CC = @HOST_CC@ -HOST_CCASFLAGS = @HOST_CCASFLAGS@ -HOST_CFLAGS = @HOST_CFLAGS@ -HOST_CPPFLAGS = @HOST_CPPFLAGS@ -HOST_LDFLAGS = @HOST_LDFLAGS@ -INCLUDE_NEXT = @INCLUDE_NEXT@ -INCLUDE_NEXT_AS_FIRST_DIRECTIVE = @INCLUDE_NEXT_AS_FIRST_DIRECTIVE@ -INSTALL = @INSTALL@ -INSTALL_DATA = @INSTALL_DATA@ -INSTALL_PROGRAM = @INSTALL_PROGRAM@ -INSTALL_SCRIPT = @INSTALL_SCRIPT@ -INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ -INTLLIBS = @INTLLIBS@ -INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -LDFLAGS = @LDFLAGS@ -LEX = @LEX@ -LEXLIB = @LEXLIB@ -LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@ -LIBDEVMAPPER = @LIBDEVMAPPER@ -LIBGEOM = @LIBGEOM@ -LIBGNU_LIBDEPS = @LIBGNU_LIBDEPS@ -LIBGNU_LTLIBDEPS = @LIBGNU_LTLIBDEPS@ -LIBICONV = @LIBICONV@ -LIBINTL = @LIBINTL@ -LIBLZMA = @LIBLZMA@ -LIBMULTITHREAD = @LIBMULTITHREAD@ -LIBNVPAIR = @LIBNVPAIR@ -LIBOBJS = @LIBOBJS@ -LIBPCIACCESS = @LIBPCIACCESS@ -LIBPTH = @LIBPTH@ -LIBPTH_PREFIX = @LIBPTH_PREFIX@ -LIBS = @LIBS@ -LIBSDL = @LIBSDL@ -LIBTHREAD = @LIBTHREAD@ -LIBUNISTRING_UNITYPES_H = @LIBUNISTRING_UNITYPES_H@ -LIBUNISTRING_UNIWIDTH_H = @LIBUNISTRING_UNIWIDTH_H@ -LIBUTIL = @LIBUTIL@ -LIBZFS = @LIBZFS@ -LIMITS_H = @LIMITS_H@ -LN_S = @LN_S@ -LOCALCHARSET_TESTS_ENVIRONMENT = @LOCALCHARSET_TESTS_ENVIRONMENT@ -LOCALE_FR = @LOCALE_FR@ -LOCALE_FR_UTF8 = @LOCALE_FR_UTF8@ -LOCALE_JA = @LOCALE_JA@ -LOCALE_ZH_CN = @LOCALE_ZH_CN@ -LTLIBICONV = @LTLIBICONV@ -LTLIBINTL = @LTLIBINTL@ -LTLIBMULTITHREAD = @LTLIBMULTITHREAD@ -LTLIBOBJS = @LTLIBOBJS@ -LTLIBPTH = @LTLIBPTH@ -LTLIBTHREAD = @LTLIBTHREAD@ -MAKEINFO = @MAKEINFO@ -MKDIR_P = @MKDIR_P@ -MSGFMT = @MSGFMT@ -MSGFMT_015 = @MSGFMT_015@ -MSGMERGE = @MSGMERGE@ -NEXT_AS_FIRST_DIRECTIVE_DIRENT_H = @NEXT_AS_FIRST_DIRECTIVE_DIRENT_H@ -NEXT_AS_FIRST_DIRECTIVE_ERRNO_H = @NEXT_AS_FIRST_DIRECTIVE_ERRNO_H@ -NEXT_AS_FIRST_DIRECTIVE_FCNTL_H = @NEXT_AS_FIRST_DIRECTIVE_FCNTL_H@ -NEXT_AS_FIRST_DIRECTIVE_FLOAT_H = @NEXT_AS_FIRST_DIRECTIVE_FLOAT_H@ -NEXT_AS_FIRST_DIRECTIVE_FNMATCH_H = @NEXT_AS_FIRST_DIRECTIVE_FNMATCH_H@ -NEXT_AS_FIRST_DIRECTIVE_GETOPT_H = @NEXT_AS_FIRST_DIRECTIVE_GETOPT_H@ -NEXT_AS_FIRST_DIRECTIVE_LANGINFO_H = @NEXT_AS_FIRST_DIRECTIVE_LANGINFO_H@ -NEXT_AS_FIRST_DIRECTIVE_LIMITS_H = @NEXT_AS_FIRST_DIRECTIVE_LIMITS_H@ -NEXT_AS_FIRST_DIRECTIVE_LOCALE_H = @NEXT_AS_FIRST_DIRECTIVE_LOCALE_H@ -NEXT_AS_FIRST_DIRECTIVE_STDDEF_H = @NEXT_AS_FIRST_DIRECTIVE_STDDEF_H@ -NEXT_AS_FIRST_DIRECTIVE_STDINT_H = @NEXT_AS_FIRST_DIRECTIVE_STDINT_H@ -NEXT_AS_FIRST_DIRECTIVE_STDIO_H = @NEXT_AS_FIRST_DIRECTIVE_STDIO_H@ -NEXT_AS_FIRST_DIRECTIVE_STDLIB_H = @NEXT_AS_FIRST_DIRECTIVE_STDLIB_H@ -NEXT_AS_FIRST_DIRECTIVE_STRINGS_H = @NEXT_AS_FIRST_DIRECTIVE_STRINGS_H@ -NEXT_AS_FIRST_DIRECTIVE_STRING_H = @NEXT_AS_FIRST_DIRECTIVE_STRING_H@ -NEXT_AS_FIRST_DIRECTIVE_SYSEXITS_H = @NEXT_AS_FIRST_DIRECTIVE_SYSEXITS_H@ -NEXT_AS_FIRST_DIRECTIVE_SYS_STAT_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_STAT_H@ -NEXT_AS_FIRST_DIRECTIVE_SYS_TYPES_H = @NEXT_AS_FIRST_DIRECTIVE_SYS_TYPES_H@ -NEXT_AS_FIRST_DIRECTIVE_TIME_H = @NEXT_AS_FIRST_DIRECTIVE_TIME_H@ -NEXT_AS_FIRST_DIRECTIVE_UNISTD_H = @NEXT_AS_FIRST_DIRECTIVE_UNISTD_H@ -NEXT_AS_FIRST_DIRECTIVE_WCHAR_H = @NEXT_AS_FIRST_DIRECTIVE_WCHAR_H@ -NEXT_AS_FIRST_DIRECTIVE_WCTYPE_H = @NEXT_AS_FIRST_DIRECTIVE_WCTYPE_H@ -NEXT_DIRENT_H = @NEXT_DIRENT_H@ -NEXT_ERRNO_H = @NEXT_ERRNO_H@ -NEXT_FCNTL_H = @NEXT_FCNTL_H@ -NEXT_FLOAT_H = @NEXT_FLOAT_H@ -NEXT_FNMATCH_H = @NEXT_FNMATCH_H@ -NEXT_GETOPT_H = @NEXT_GETOPT_H@ -NEXT_LANGINFO_H = @NEXT_LANGINFO_H@ -NEXT_LIMITS_H = @NEXT_LIMITS_H@ -NEXT_LOCALE_H = @NEXT_LOCALE_H@ -NEXT_STDDEF_H = @NEXT_STDDEF_H@ -NEXT_STDINT_H = @NEXT_STDINT_H@ -NEXT_STDIO_H = @NEXT_STDIO_H@ -NEXT_STDLIB_H = @NEXT_STDLIB_H@ -NEXT_STRINGS_H = @NEXT_STRINGS_H@ -NEXT_STRING_H = @NEXT_STRING_H@ -NEXT_SYSEXITS_H = @NEXT_SYSEXITS_H@ -NEXT_SYS_STAT_H = @NEXT_SYS_STAT_H@ -NEXT_SYS_TYPES_H = @NEXT_SYS_TYPES_H@ -NEXT_TIME_H = @NEXT_TIME_H@ -NEXT_UNISTD_H = @NEXT_UNISTD_H@ -NEXT_WCHAR_H = @NEXT_WCHAR_H@ -NEXT_WCTYPE_H = @NEXT_WCTYPE_H@ -OBJEXT = @OBJEXT@ -PACKAGE = @PACKAGE@ -PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ -PACKAGE_NAME = @PACKAGE_NAME@ -PACKAGE_STRING = @PACKAGE_STRING@ -PACKAGE_TARNAME = @PACKAGE_TARNAME@ -PACKAGE_URL = @PACKAGE_URL@ -PACKAGE_VERSION = @PACKAGE_VERSION@ -PATH_SEPARATOR = @PATH_SEPARATOR@ -PKG_CONFIG = @PKG_CONFIG@ -PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ -PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ -POSUB = @POSUB@ -PRAGMA_COLUMNS = @PRAGMA_COLUMNS@ -PRAGMA_SYSTEM_HEADER = @PRAGMA_SYSTEM_HEADER@ -PTHREAD_H_DEFINES_STRUCT_TIMESPEC = @PTHREAD_H_DEFINES_STRUCT_TIMESPEC@ -PTRDIFF_T_SUFFIX = @PTRDIFF_T_SUFFIX@ -PYTHON = @PYTHON@ -PYTHON_EXEC_PREFIX = @PYTHON_EXEC_PREFIX@ -PYTHON_PLATFORM = @PYTHON_PLATFORM@ -PYTHON_PREFIX = @PYTHON_PREFIX@ -PYTHON_VERSION = @PYTHON_VERSION@ -RANLIB = @RANLIB@ -REPLACE_BTOWC = @REPLACE_BTOWC@ -REPLACE_CALLOC = @REPLACE_CALLOC@ -REPLACE_CANONICALIZE_FILE_NAME = @REPLACE_CANONICALIZE_FILE_NAME@ -REPLACE_CHOWN = @REPLACE_CHOWN@ -REPLACE_CLOSE = @REPLACE_CLOSE@ -REPLACE_CLOSEDIR = @REPLACE_CLOSEDIR@ -REPLACE_CTIME = @REPLACE_CTIME@ -REPLACE_DIRFD = @REPLACE_DIRFD@ -REPLACE_DPRINTF = @REPLACE_DPRINTF@ -REPLACE_DUP = @REPLACE_DUP@ -REPLACE_DUP2 = @REPLACE_DUP2@ -REPLACE_DUPLOCALE = @REPLACE_DUPLOCALE@ -REPLACE_FACCESSAT = @REPLACE_FACCESSAT@ -REPLACE_FCHOWNAT = @REPLACE_FCHOWNAT@ -REPLACE_FCLOSE = @REPLACE_FCLOSE@ -REPLACE_FCNTL = @REPLACE_FCNTL@ -REPLACE_FDOPEN = @REPLACE_FDOPEN@ -REPLACE_FDOPENDIR = @REPLACE_FDOPENDIR@ -REPLACE_FFLUSH = @REPLACE_FFLUSH@ -REPLACE_FNMATCH = @REPLACE_FNMATCH@ -REPLACE_FOPEN = @REPLACE_FOPEN@ -REPLACE_FPRINTF = @REPLACE_FPRINTF@ -REPLACE_FPURGE = @REPLACE_FPURGE@ -REPLACE_FREELOCALE = @REPLACE_FREELOCALE@ -REPLACE_FREOPEN = @REPLACE_FREOPEN@ -REPLACE_FSEEK = @REPLACE_FSEEK@ -REPLACE_FSEEKO = @REPLACE_FSEEKO@ -REPLACE_FSTAT = @REPLACE_FSTAT@ -REPLACE_FSTATAT = @REPLACE_FSTATAT@ -REPLACE_FTELL = @REPLACE_FTELL@ -REPLACE_FTELLO = @REPLACE_FTELLO@ -REPLACE_FTRUNCATE = @REPLACE_FTRUNCATE@ -REPLACE_FUTIMENS = @REPLACE_FUTIMENS@ -REPLACE_GETCWD = @REPLACE_GETCWD@ -REPLACE_GETDELIM = @REPLACE_GETDELIM@ -REPLACE_GETDOMAINNAME = @REPLACE_GETDOMAINNAME@ -REPLACE_GETDTABLESIZE = @REPLACE_GETDTABLESIZE@ -REPLACE_GETGROUPS = @REPLACE_GETGROUPS@ -REPLACE_GETLINE = @REPLACE_GETLINE@ -REPLACE_GETLOGIN_R = @REPLACE_GETLOGIN_R@ -REPLACE_GETPAGESIZE = @REPLACE_GETPAGESIZE@ -REPLACE_GETPASS = @REPLACE_GETPASS@ -REPLACE_GMTIME = @REPLACE_GMTIME@ -REPLACE_ISATTY = @REPLACE_ISATTY@ -REPLACE_ISWBLANK = @REPLACE_ISWBLANK@ -REPLACE_ISWCNTRL = @REPLACE_ISWCNTRL@ -REPLACE_ITOLD = @REPLACE_ITOLD@ -REPLACE_LCHOWN = @REPLACE_LCHOWN@ -REPLACE_LINK = @REPLACE_LINK@ -REPLACE_LINKAT = @REPLACE_LINKAT@ -REPLACE_LOCALECONV = @REPLACE_LOCALECONV@ -REPLACE_LOCALTIME = @REPLACE_LOCALTIME@ -REPLACE_LOCALTIME_R = @REPLACE_LOCALTIME_R@ -REPLACE_LSEEK = @REPLACE_LSEEK@ -REPLACE_LSTAT = @REPLACE_LSTAT@ -REPLACE_MALLOC = @REPLACE_MALLOC@ -REPLACE_MBRLEN = @REPLACE_MBRLEN@ -REPLACE_MBRTOWC = @REPLACE_MBRTOWC@ -REPLACE_MBSINIT = @REPLACE_MBSINIT@ -REPLACE_MBSNRTOWCS = @REPLACE_MBSNRTOWCS@ -REPLACE_MBSRTOWCS = @REPLACE_MBSRTOWCS@ -REPLACE_MBSTATE_T = @REPLACE_MBSTATE_T@ -REPLACE_MBTOWC = @REPLACE_MBTOWC@ -REPLACE_MEMCHR = @REPLACE_MEMCHR@ -REPLACE_MEMMEM = @REPLACE_MEMMEM@ -REPLACE_MKDIR = @REPLACE_MKDIR@ -REPLACE_MKFIFO = @REPLACE_MKFIFO@ -REPLACE_MKNOD = @REPLACE_MKNOD@ -REPLACE_MKSTEMP = @REPLACE_MKSTEMP@ -REPLACE_MKTIME = @REPLACE_MKTIME@ -REPLACE_NANOSLEEP = @REPLACE_NANOSLEEP@ -REPLACE_NEWLOCALE = @REPLACE_NEWLOCALE@ -REPLACE_NL_LANGINFO = @REPLACE_NL_LANGINFO@ -REPLACE_NULL = @REPLACE_NULL@ -REPLACE_OBSTACK_PRINTF = @REPLACE_OBSTACK_PRINTF@ -REPLACE_OPEN = @REPLACE_OPEN@ -REPLACE_OPENAT = @REPLACE_OPENAT@ -REPLACE_OPENDIR = @REPLACE_OPENDIR@ -REPLACE_PERROR = @REPLACE_PERROR@ -REPLACE_POPEN = @REPLACE_POPEN@ -REPLACE_PREAD = @REPLACE_PREAD@ -REPLACE_PRINTF = @REPLACE_PRINTF@ -REPLACE_PTSNAME = @REPLACE_PTSNAME@ -REPLACE_PTSNAME_R = @REPLACE_PTSNAME_R@ -REPLACE_PUTENV = @REPLACE_PUTENV@ -REPLACE_PWRITE = @REPLACE_PWRITE@ -REPLACE_QSORT_R = @REPLACE_QSORT_R@ -REPLACE_RANDOM_R = @REPLACE_RANDOM_R@ -REPLACE_READ = @REPLACE_READ@ -REPLACE_READLINK = @REPLACE_READLINK@ -REPLACE_READLINKAT = @REPLACE_READLINKAT@ -REPLACE_REALLOC = @REPLACE_REALLOC@ -REPLACE_REALPATH = @REPLACE_REALPATH@ -REPLACE_REMOVE = @REPLACE_REMOVE@ -REPLACE_RENAME = @REPLACE_RENAME@ -REPLACE_RENAMEAT = @REPLACE_RENAMEAT@ -REPLACE_RMDIR = @REPLACE_RMDIR@ -REPLACE_SETENV = @REPLACE_SETENV@ -REPLACE_SETLOCALE = @REPLACE_SETLOCALE@ -REPLACE_SLEEP = @REPLACE_SLEEP@ -REPLACE_SNPRINTF = @REPLACE_SNPRINTF@ -REPLACE_SPRINTF = @REPLACE_SPRINTF@ -REPLACE_STAT = @REPLACE_STAT@ -REPLACE_STDIO_READ_FUNCS = @REPLACE_STDIO_READ_FUNCS@ -REPLACE_STDIO_WRITE_FUNCS = @REPLACE_STDIO_WRITE_FUNCS@ -REPLACE_STPNCPY = @REPLACE_STPNCPY@ -REPLACE_STRCASESTR = @REPLACE_STRCASESTR@ -REPLACE_STRCHRNUL = @REPLACE_STRCHRNUL@ -REPLACE_STRDUP = @REPLACE_STRDUP@ -REPLACE_STRERROR = @REPLACE_STRERROR@ -REPLACE_STRERROR_R = @REPLACE_STRERROR_R@ -REPLACE_STRFTIME = @REPLACE_STRFTIME@ -REPLACE_STRNCAT = @REPLACE_STRNCAT@ -REPLACE_STRNDUP = @REPLACE_STRNDUP@ -REPLACE_STRNLEN = @REPLACE_STRNLEN@ -REPLACE_STRSIGNAL = @REPLACE_STRSIGNAL@ -REPLACE_STRSTR = @REPLACE_STRSTR@ -REPLACE_STRTOD = @REPLACE_STRTOD@ -REPLACE_STRTOK_R = @REPLACE_STRTOK_R@ -REPLACE_STRUCT_LCONV = @REPLACE_STRUCT_LCONV@ -REPLACE_SYMLINK = @REPLACE_SYMLINK@ -REPLACE_SYMLINKAT = @REPLACE_SYMLINKAT@ -REPLACE_TIMEGM = @REPLACE_TIMEGM@ -REPLACE_TMPFILE = @REPLACE_TMPFILE@ -REPLACE_TOWLOWER = @REPLACE_TOWLOWER@ -REPLACE_TRUNCATE = @REPLACE_TRUNCATE@ -REPLACE_TTYNAME_R = @REPLACE_TTYNAME_R@ -REPLACE_TZSET = @REPLACE_TZSET@ -REPLACE_UNLINK = @REPLACE_UNLINK@ -REPLACE_UNLINKAT = @REPLACE_UNLINKAT@ -REPLACE_UNSETENV = @REPLACE_UNSETENV@ -REPLACE_USLEEP = @REPLACE_USLEEP@ -REPLACE_UTIMENSAT = @REPLACE_UTIMENSAT@ -REPLACE_VASPRINTF = @REPLACE_VASPRINTF@ -REPLACE_VDPRINTF = @REPLACE_VDPRINTF@ -REPLACE_VFPRINTF = @REPLACE_VFPRINTF@ -REPLACE_VPRINTF = @REPLACE_VPRINTF@ -REPLACE_VSNPRINTF = @REPLACE_VSNPRINTF@ -REPLACE_VSPRINTF = @REPLACE_VSPRINTF@ -REPLACE_WCRTOMB = @REPLACE_WCRTOMB@ -REPLACE_WCSFTIME = @REPLACE_WCSFTIME@ -REPLACE_WCSNRTOMBS = @REPLACE_WCSNRTOMBS@ -REPLACE_WCSRTOMBS = @REPLACE_WCSRTOMBS@ -REPLACE_WCSWIDTH = @REPLACE_WCSWIDTH@ -REPLACE_WCTOB = @REPLACE_WCTOB@ -REPLACE_WCTOMB = @REPLACE_WCTOMB@ -REPLACE_WCWIDTH = @REPLACE_WCWIDTH@ -REPLACE_WRITE = @REPLACE_WRITE@ -SED = @SED@ -SET_MAKE = @SET_MAKE@ -SHELL = @SHELL@ -SIG_ATOMIC_T_SUFFIX = @SIG_ATOMIC_T_SUFFIX@ -SIZE_T_SUFFIX = @SIZE_T_SUFFIX@ -STDALIGN_H = @STDALIGN_H@ -STDBOOL_H = @STDBOOL_H@ -STDDEF_H = @STDDEF_H@ -STDINT_H = @STDINT_H@ -STRIP = @STRIP@ -SYSEXITS_H = @SYSEXITS_H@ -SYS_TIME_H_DEFINES_STRUCT_TIMESPEC = @SYS_TIME_H_DEFINES_STRUCT_TIMESPEC@ -TARGET_APPLE_LINKER = @TARGET_APPLE_LINKER@ -TARGET_CC = @TARGET_CC@ -TARGET_CCAS = @TARGET_CCAS@ -TARGET_CCASFLAGS = @TARGET_CCASFLAGS@ -TARGET_CC_VERSION = @TARGET_CC_VERSION@ -TARGET_CFLAGS = @TARGET_CFLAGS@ -TARGET_CPP = @TARGET_CPP@ -TARGET_CPPFLAGS = @TARGET_CPPFLAGS@ -TARGET_DECOMPRESSOR_LINK_ADDR = @TARGET_DECOMPRESSOR_LINK_ADDR@ -TARGET_IMG_BASE_LDOPT = @TARGET_IMG_BASE_LDOPT@ -TARGET_IMG_CFLAGS = @TARGET_IMG_CFLAGS@ -TARGET_IMG_LDFLAGS = @TARGET_IMG_LDFLAGS@ -TARGET_LDFLAGS = @TARGET_LDFLAGS@ -TARGET_LDFLAGS_OLDMAGIC = @TARGET_LDFLAGS_OLDMAGIC@ -TARGET_LINK_ADDR = @TARGET_LINK_ADDR@ -TARGET_MODULE_FORMAT = @TARGET_MODULE_FORMAT@ -TARGET_NM = @TARGET_NM@ -TARGET_NMFLAGS_DEFINED_ONLY = @TARGET_NMFLAGS_DEFINED_ONLY@ -TARGET_NMFLAGS_MINUS_P = @TARGET_NMFLAGS_MINUS_P@ -TARGET_OBJ2ELF = @TARGET_OBJ2ELF@ -TARGET_OBJCONV = @TARGET_OBJCONV@ -TARGET_OBJCOPY = @TARGET_OBJCOPY@ -TARGET_RANLIB = @TARGET_RANLIB@ -TARGET_STRIP = @TARGET_STRIP@ -TIME_H_DEFINES_STRUCT_TIMESPEC = @TIME_H_DEFINES_STRUCT_TIMESPEC@ -UNDEFINE_STRTOK_R = @UNDEFINE_STRTOK_R@ -UNISTD_H_DEFINES_STRUCT_TIMESPEC = @UNISTD_H_DEFINES_STRUCT_TIMESPEC@ -UNISTD_H_HAVE_WINSOCK2_H = @UNISTD_H_HAVE_WINSOCK2_H@ -UNISTD_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS = @UNISTD_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS@ -USE_NLS = @USE_NLS@ -VERSION = @VERSION@ -WCHAR_T_SUFFIX = @WCHAR_T_SUFFIX@ -WINDOWS_64_BIT_OFF_T = @WINDOWS_64_BIT_OFF_T@ -WINDOWS_64_BIT_ST_SIZE = @WINDOWS_64_BIT_ST_SIZE@ -WINDOWS_STAT_INODES = @WINDOWS_STAT_INODES@ -WINDOWS_STAT_TIMESPEC = @WINDOWS_STAT_TIMESPEC@ -WINT_T_SUFFIX = @WINT_T_SUFFIX@ -XGETTEXT = @XGETTEXT@ -XGETTEXT_015 = @XGETTEXT_015@ -XGETTEXT_EXTRA_OPTIONS = @XGETTEXT_EXTRA_OPTIONS@ -YACC = @YACC@ -YFLAGS = @YFLAGS@ -abs_builddir = @abs_builddir@ -abs_srcdir = @abs_srcdir@ -abs_top_builddir = @abs_top_builddir@ -abs_top_srcdir = @abs_top_srcdir@ -ac_ct_CC = @ac_ct_CC@ -ac_ct_CXX = @ac_ct_CXX@ -ac_ct_TARGET_CC = @ac_ct_TARGET_CC@ -am__include = @am__include@ -am__leading_dot = @am__leading_dot@ -am__quote = @am__quote@ -am__tar = @am__tar@ -am__untar = @am__untar@ -bindir = @bindir@ -bootdirname = @bootdirname@ -build = @build@ -build_alias = @build_alias@ -build_cpu = @build_cpu@ -build_os = @build_os@ -build_vendor = @build_vendor@ -builddir = @builddir@ -datadir = @datadir@ -datarootdir = @datarootdir@ -docdir = @docdir@ -dvidir = @dvidir@ -enable_efiemu = @enable_efiemu@ -enable_grub_emu_pci = @enable_grub_emu_pci@ -enable_grub_emu_sdl = @enable_grub_emu_sdl@ -enable_grub_mkfont = @enable_grub_mkfont@ -enable_grub_mount = @enable_grub_mount@ -exec_prefix = @exec_prefix@ -gl_LIBOBJS = @gl_LIBOBJS@ -gl_LTLIBOBJS = @gl_LTLIBOBJS@ -gltests_LIBOBJS = @gltests_LIBOBJS@ -gltests_LTLIBOBJS = @gltests_LTLIBOBJS@ -gltests_WITNESS = @gltests_WITNESS@ -grub_bios_setup = @grub_bios_setup@ -grub_editenv = @grub_editenv@ -grub_file = @grub_file@ -grub_glue_efi = @grub_glue_efi@ -grub_install = @grub_install@ -grub_mkconfig = @grub_mkconfig@ -grub_mkfont = @grub_mkfont@ -grub_mkimage = @grub_mkimage@ -grub_mklayout = @grub_mklayout@ -grub_mkpasswd_pbkdf2 = @grub_mkpasswd_pbkdf2@ -grub_mkrelpath = @grub_mkrelpath@ -grub_mkrescue = @grub_mkrescue@ -grub_probe = @grub_probe@ -grub_reboot = @grub_reboot@ -grub_render_label = @grub_render_label@ -grub_script_check = @grub_script_check@ -grub_set_default = @grub_set_default@ -grub_sparc64_setup = @grub_sparc64_setup@ -grubdirname = @grubdirname@ -host = @host@ -host_alias = @host_alias@ -host_cpu = @host_cpu@ -host_kernel = @host_kernel@ -host_os = @host_os@ -host_vendor = @host_vendor@ -htmldir = @htmldir@ -includedir = @includedir@ -infodir = @infodir@ -install_sh = @install_sh@ -libdir = @libdir@ -libexecdir = @libexecdir@ -localedir = @localedir@ -localstatedir = @localstatedir@ -mandir = @mandir@ -mkdir_p = @mkdir_p@ -oldincludedir = @oldincludedir@ -pdfdir = @pdfdir@ -pkgpyexecdir = @pkgpyexecdir@ -pkgpythondir = @pkgpythondir@ -platform = @platform@ -prefix = @prefix@ -program_transform_name = @program_transform_name@ -psdir = @psdir@ -pyexecdir = @pyexecdir@ -pythondir = @pythondir@ -runstatedir = @runstatedir@ -sbindir = @sbindir@ -sharedstatedir = @sharedstatedir@ -srcdir = @srcdir@ -sysconfdir = @sysconfdir@ -target = @target@ -target_alias = @target_alias@ -target_cpu = @target_cpu@ -target_os = @target_os@ -target_vendor = @target_vendor@ -top_build_prefix = @top_build_prefix@ -top_builddir = @top_builddir@ -top_srcdir = @top_srcdir@ -bash_completion_source = grub-completion.bash.in -bash_completion_script = grub -EXTRA_DIST = $(bash_completion_source) -CLEANFILES = $(bash_completion_script) config.log -bashcompletiondir = $(sysconfdir)/bash_completion.d -bashcompletion_DATA = $(bash_completion_script) -all: all-am - -.SUFFIXES: -$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps) - @for dep in $?; do \ - case '$(am__configure_deps)' in \ - *$$dep*) \ - ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \ - && { if test -f $@; then exit 0; else break; fi; }; \ - exit 1;; \ - esac; \ - done; \ - echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu util/bash-completion.d/Makefile'; \ - $(am__cd) $(top_srcdir) && \ - $(AUTOMAKE) --gnu util/bash-completion.d/Makefile -Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status - @case '$?' in \ - *config.status*) \ - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ - *) \ - echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ - esac; - -$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh - -$(top_srcdir)/configure: $(am__configure_deps) - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh -$(ACLOCAL_M4): $(am__aclocal_m4_deps) - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh -$(am__aclocal_m4_deps): -install-bashcompletionDATA: $(bashcompletion_DATA) - @$(NORMAL_INSTALL) - @list='$(bashcompletion_DATA)'; test -n "$(bashcompletiondir)" || list=; \ - if test -n "$$list"; then \ - echo " $(MKDIR_P) '$(DESTDIR)$(bashcompletiondir)'"; \ - $(MKDIR_P) "$(DESTDIR)$(bashcompletiondir)" || exit 1; \ - fi; \ - for p in $$list; do \ - if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ - echo "$$d$$p"; \ - done | $(am__base_list) | \ - while read files; do \ - echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(bashcompletiondir)'"; \ - $(INSTALL_DATA) $$files "$(DESTDIR)$(bashcompletiondir)" || exit $$?; \ - done - -uninstall-bashcompletionDATA: - @$(NORMAL_UNINSTALL) - @list='$(bashcompletion_DATA)'; test -n "$(bashcompletiondir)" || list=; \ - files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ - dir='$(DESTDIR)$(bashcompletiondir)'; $(am__uninstall_files_from_dir) -tags TAGS: - -ctags CTAGS: - -cscope cscopelist: - - -distdir: $(DISTFILES) - @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ - topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ - list='$(DISTFILES)'; \ - dist_files=`for file in $$list; do echo $$file; done | \ - sed -e "s|^$$srcdirstrip/||;t" \ - -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ - case $$dist_files in \ - */*) $(MKDIR_P) `echo "$$dist_files" | \ - sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ - sort -u` ;; \ - esac; \ - for file in $$dist_files; do \ - if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ - if test -d $$d/$$file; then \ - dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ - if test -d "$(distdir)/$$file"; then \ - find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ - fi; \ - if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ - cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ - find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ - fi; \ - cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ - else \ - test -f "$(distdir)/$$file" \ - || cp -p $$d/$$file "$(distdir)/$$file" \ - || exit 1; \ - fi; \ - done -check-am: all-am -check: check-am -all-am: Makefile $(DATA) -installdirs: - for dir in "$(DESTDIR)$(bashcompletiondir)"; do \ - test -z "$$dir" || $(MKDIR_P) "$$dir"; \ - done -install: install-am -install-exec: install-exec-am -install-data: install-data-am -uninstall: uninstall-am - -install-am: all-am - @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am - -installcheck: installcheck-am -install-strip: - if test -z '$(STRIP)'; then \ - $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ - install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ - install; \ - else \ - $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ - install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ - "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \ - fi -mostlyclean-generic: - -clean-generic: - -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES) - -distclean-generic: - -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) - -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) - -maintainer-clean-generic: - @echo "This command is intended for maintainers to use" - @echo "it deletes files that may require special tools to rebuild." -clean: clean-am - -clean-am: clean-generic mostlyclean-am - -distclean: distclean-am - -rm -f Makefile -distclean-am: clean-am distclean-generic - -dvi: dvi-am - -dvi-am: - -html: html-am - -html-am: - -info: info-am - -info-am: - -install-data-am: install-bashcompletionDATA - -install-dvi: install-dvi-am - -install-dvi-am: - -install-exec-am: - -install-html: install-html-am - -install-html-am: - -install-info: install-info-am - -install-info-am: - -install-man: - -install-pdf: install-pdf-am - -install-pdf-am: - -install-ps: install-ps-am - -install-ps-am: - -installcheck-am: - -maintainer-clean: maintainer-clean-am - -rm -f Makefile -maintainer-clean-am: distclean-am maintainer-clean-generic - -mostlyclean: mostlyclean-am - -mostlyclean-am: mostlyclean-generic - -pdf: pdf-am - -pdf-am: - -ps: ps-am - -ps-am: - -uninstall-am: uninstall-bashcompletionDATA - -.MAKE: install-am install-strip - -.PHONY: all all-am check check-am clean clean-generic cscopelist-am \ - ctags-am distclean distclean-generic distdir dvi dvi-am html \ - html-am info info-am install install-am \ - install-bashcompletionDATA install-data install-data-am \ - install-dvi install-dvi-am install-exec install-exec-am \ - install-html install-html-am install-info install-info-am \ - install-man install-pdf install-pdf-am install-ps \ - install-ps-am install-strip installcheck installcheck-am \ - installdirs maintainer-clean maintainer-clean-generic \ - mostlyclean mostlyclean-generic pdf pdf-am ps ps-am tags-am \ - uninstall uninstall-am uninstall-bashcompletionDATA - -.PRECIOUS: Makefile - - -$(bash_completion_script): $(bash_completion_source) $(top_builddir)/config.status - $(top_builddir)/config.status --file=$@:$< - -# Tell versions [3.59,3.63) of GNU make to not export all variables. -# Otherwise a system limit (for SysV at least) may be exceeded. -.NOEXPORT: diff --git a/thirdparty/grub-2.04/util/bash-completion.d/grub-completion.bash.in b/thirdparty/grub-2.04/util/bash-completion.d/grub-completion.bash.in deleted file mode 100644 index 44bf135b9..000000000 --- a/thirdparty/grub-2.04/util/bash-completion.d/grub-completion.bash.in +++ /dev/null @@ -1,495 +0,0 @@ -# -# Bash completion for grub -# -# Copyright (C) 2010 Free Software Foundation, Inc. -# -# GRUB is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# GRUB is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with GRUB. If not, see . -# bash completion for grub - -__grub_dir() { - local i c=1 boot_dir - - for (( c=1; c <= ${#COMP_WORDS[@]}; c++ )); do - i="${COMP_WORDS[c]}" - case "$i" in - --boot-directory) - c=$((++c)) - i="${COMP_WORDS[c]}" - boot_dir="${i##*=}"; - break - ;; - esac - done - boot_dir=${boot_dir-/@bootdirname@} - echo "${boot_dir%/}/@grubdirname@" -} - - -# This function generates completion reply with compgen -# - arg: accepts 1, 2, 3, or 4 arguments -# $1 wordlist separate by space, tab or newline -# $2 (optional) prefix to add -# $3 (optional) current word to complete -# $4 (optional) suffix to add -__grubcomp () { - local cur="${COMP_WORDS[COMP_CWORD]}" - if [ $# -gt 2 ]; then - cur="$3" - fi - case "$cur" in - --*=) - COMPREPLY=() - ;; - *) - local IFS=' '$'\t'$'\n' - COMPREPLY=($(compgen -P "${2-}" -W "${1-}" -S "${4-}" -- "$cur")) - ;; - esac -} - -# Function that return long options from the help of the command -# - arg: $1 (optional) command to get the long options from -__grub_get_options_from_help () { - local prog - - if [ $# -ge 1 ]; then - prog="$1" - else - prog="${COMP_WORDS[0]}" - fi - - local i IFS=" "$'\t'$'\n' - for i in $(LC_ALL=C $prog --help) - do - case $i in - --*) echo "${i%=*}";; - esac - done -} - -# Function that return long options from the usage of the command -# - arg: $1 (optional) command to get the long options from -__grub_get_options_from_usage () { - local prog - - if [ $# -ge 1 ]; then - prog="$1" - else - prog="${COMP_WORDS[0]}" - fi - - local i IFS=" "$'\t'$'\n' - for i in $(LC_ALL=C $prog --usage) - do - case $i in - \[--*\]) i=${i#[} # Remove leading [ - echo ${i%%?(=*)]} # Remove optional value and trailing ] - ;; - esac - done -} - -__grub_get_last_option () { - local i - for (( i=$COMP_CWORD-1; i > 0; i-- )); do - if [[ "${COMP_WORDS[i]}" == -* ]]; then - echo "${COMP_WORDS[i]}" - break; - fi - done -} - -__grub_list_menuentries () { - local cur="${COMP_WORDS[COMP_CWORD]}" - local config_file=$(__grub_dir)/grub.cfg - - if [ -f "$config_file" ];then - local IFS=$'\n' - COMPREPLY=( $(compgen \ - -W "$( awk -F "[\"']" '/menuentry/ { print $2 }' $config_file )" \ - -- "$cur" )) #'# Help emacs syntax highlighting - fi -} - -__grub_list_modules () { - local grub_dir=$(__grub_dir) - local IFS=$'\n' - COMPREPLY=( $( compgen -f -X '!*/*.mod' -- "${grub_dir}/$cur" | { - while read -r tmp; do - [ -n $tmp ] && { - tmp=${tmp##*/} - printf '%s\n' ${tmp%.mod} - } - done - } - )) -} - -# -# grub-set-default & grub-reboot -# -_grub_set_entry () { - local cur prev split=false - - COMPREPLY=() - cur=`_get_cword` - prev=${COMP_WORDS[COMP_CWORD-1]} - - _split_longopt && split=true - - case "$prev" in - --boot-directory) - _filedir -d - return - ;; - esac - - $split && return 0 - - if [[ "$cur" == -* ]]; then - __grubcomp "$(__grub_get_options_from_help)" - else - # Default complete with a menuentry - __grub_list_menuentries - fi -} - -__grub_set_default_program="@grub_set_default@" -have ${__grub_set_default_program} && \ - complete -F _grub_set_entry -o filenames ${__grub_set_default_program} -unset __grub_set_default_program - -__grub_reboot_program="@grub_reboot@" -have ${__grub_reboot_program} && \ - complete -F _grub_set_entry -o filenames ${__grub_reboot_program} -unset __grub_reboot_program - - -# -# grub-editenv -# -_grub_editenv () { - local cur prev - - COMPREPLY=() - cur=`_get_cword` - prev=${COMP_WORDS[COMP_CWORD-1]} - - case "$prev" in - create|list|set|unset) - COMPREPLY=( "" ) - return - ;; - esac - - __grubcomp "$(__grub_get_options_from_help) - create list set unset" -} - -__grub_editenv_program="@grub_editenv@" -have ${__grub_editenv_program} && \ - complete -F _grub_editenv -o filenames ${__grub_editenv_program} -unset __grub_editenv_program - - -# -# grub-mkconfig -# -_grub_mkconfig () { - local cur prev - - COMPREPLY=() - cur=`_get_cword` - - if [[ "$cur" == -* ]]; then - __grubcomp "$(__grub_get_options_from_help)" - else - _filedir - fi -} -__grub_mkconfig_program="@grub_mkconfig@" -have ${__grub_mkconfig_program} && \ - complete -F _grub_mkconfig -o filenames ${__grub_mkconfig_program} -unset __grub_mkconfig_program - - -# -# grub-setup -# -_grub_setup () { - local cur prev split=false - - COMPREPLY=() - cur=`_get_cword` - prev=${COMP_WORDS[COMP_CWORD-1]} - - _split_longopt && split=true - - case "$prev" in - -d|--directory) - _filedir -d - return - ;; - esac - - $split && return 0 - - if [[ "$cur" == -* ]]; then - __grubcomp "$(__grub_get_options_from_help)" - else - # Default complete with a filename - _filedir - fi -} - -__grub_bios_setup_program="@grub_bios_setup@" -have ${__grub_bios_setup_program} && \ - complete -F _grub_setup -o filenames ${__grub_bios_setup_program} -unset __grub_bios_setup_program - -__grub_sparc64_setup_program="@grub_sparc64_setup@" -have ${__grub_sparc64_setup_program} && \ - complete -F _grub_setup -o filenames ${__grub_sparc64_setup_program} -unset __grub_sparc64_setup_program - - -# -# grub-install -# -_grub_install () { - local cur prev last split=false - - COMPREPLY=() - cur=`_get_cword` - prev=${COMP_WORDS[COMP_CWORD-1]} - last=$(__grub_get_last_option) - - _split_longopt && split=true - - case "$prev" in - --boot-directory) - _filedir -d - return - ;; - --disk-module) - __grubcomp "biosdisk ata" - return - ;; - esac - - $split && return 0 - - if [[ "$cur" == -* ]]; then - __grubcomp "$(__grub_get_options_from_help)" - else - case "$last" in - --modules) - __grub_list_modules - return - ;; - esac - - # Default complete with a filename - _filedir - fi -} -__grub_install_program="@grub_install@" -have ${__grub_install_program} && \ - complete -F _grub_install -o filenames ${__grub_install_program} -unset __grub_install_program - - -# -# grub-mkfont -# -_grub_mkfont () { - local cur - - COMPREPLY=() - cur=`_get_cword` - - if [[ "$cur" == -* ]]; then - __grubcomp "$(__grub_get_options_from_help)" - else - # Default complete with a filename - _filedir - fi -} -__grub_mkfont_program="@grub_mkfont@" -have ${__grub_mkfont_program} && \ - complete -F _grub_mkfont -o filenames ${__grub_mkfont_program} -unset __grub_mkfont_program - - -# -# grub-mkrescue -# -_grub_mkrescue () { - local cur prev last - - COMPREPLY=() - cur=`_get_cword` - prev=${COMP_WORDS[COMP_CWORD-1]} - last=$(__grub_get_last_option) - - if [[ "$cur" == -* ]]; then - __grubcomp "$(__grub_get_options_from_help)" - else - case "$last" in - --modules) - __grub_list_modules - return - ;; - esac - - # Default complete with a filename - _filedir - fi -} -__grub_mkrescue_program="@grub_mkrescue@" -have ${__grub_mkrescue_program} && \ - complete -F _grub_mkrescue -o filenames ${__grub_mkrescue_program} -unset __grub_mkrescue_program - - -# -# grub-mkimage -# -_grub_mkimage () { - local cur prev split=false - - COMPREPLY=() - cur=`_get_cword` - prev=${COMP_WORDS[COMP_CWORD-1]} - - _split_longopt && split=true - - case "$prev" in - -d|--directory|-p|--prefix) - _filedir -d - return - ;; - -O|--format) - # Get available format from help - local prog=${COMP_WORDS[0]} - __grubcomp "$(LC_ALL=C $prog --help | \ - awk -F ":" '/available formats/ { print $2 }' | \ - sed 's/, / /g')" - return - ;; - esac - - $split && return 0 - - if [[ "$cur" == -* ]]; then - __grubcomp "$(__grub_get_options_from_help)" - else - # Default complete with a filename - _filedir - fi -} -__grub_mkimage_program="@grub_mkimage@" -have ${__grub_mkimage_program} && \ - complete -F _grub_mkimage -o filenames ${__grub_mkimage_program} -unset __grub_mkimage_program - - -# -# grub-mkpasswd-pbkdf2 -# -_grub_mkpasswd_pbkdf2 () { - local cur - - COMPREPLY=() - cur=`_get_cword` - - if [[ "$cur" == -* ]]; then - __grubcomp "$(__grub_get_options_from_help)" - else - # Default complete with a filename - _filedir - fi -} -__grub_mkpasswd_pbkdf2_program="@grub_mkpasswd_pbkdf2@" -have ${__grub_mkpasswd_pbkdf2_program} && \ - complete -F _grub_mkpasswd_pbkdf2 -o filenames ${__grub_mkpasswd_pbkdf2_program} -unset __grub_mkpasswd_pbkdf2_program - - -# -# grub-probe -# -_grub_probe () { - local cur prev split=false - - COMPREPLY=() - cur=`_get_cword` - prev=${COMP_WORDS[COMP_CWORD-1]} - - _split_longopt && split=true - - case "$prev" in - -t|--target) - # Get target type from help - local prog=${COMP_WORDS[0]} - __grubcomp "$(LC_ALL=C $prog --help | \ - awk -F "[()]" '/--target=/ { print $2 }' | \ - sed 's/|/ /g')" - return - ;; - esac - - $split && return 0 - - if [[ "$cur" == -* ]]; then - __grubcomp "$(__grub_get_options_from_help)" - else - # Default complete with a filename - _filedir - fi -} -__grub_probe_program="@grub_probe@" -have ${__grub_probe_program} && \ - complete -F _grub_probe -o filenames ${__grub_probe_program} -unset __grub_probe_program - - -# -# grub-script-check -# -_grub_script_check () { - local cur - - COMPREPLY=() - cur=`_get_cword` - - if [[ "$cur" == -* ]]; then - __grubcomp "$(__grub_get_options_from_help)" - else - # Default complete with a filename - _filedir - fi -} -__grub_script_check_program="@grub_script_check@" -have ${__grub_script_check_program} && \ - complete -F _grub_script_check -o filenames ${__grub_script_check_program} - - -# Local variables: -# mode: shell-script -# sh-basic-offset: 4 -# sh-indent-comment: t -# indent-tabs-mode: nil -# End: -# ex: ts=4 sw=4 et filetype=sh diff --git a/thirdparty/grub-2.04/util/bin2h.c b/thirdparty/grub-2.04/util/bin2h.c deleted file mode 100644 index dd75fb8b7..000000000 --- a/thirdparty/grub-2.04/util/bin2h.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Copyright (C) 2008,2010 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include - -int -main (int argc, char *argv[]) -{ - int b, i; - char *sym; - - if (2 != argc) - return 1; - - sym = argv[1]; - - b = getchar (); - if (b == EOF) - goto abort; - - printf ("/* THIS CHUNK OF BYTES IS AUTOMATICALLY GENERATED */\n" - "unsigned char %s[] =\n{\n", sym); - - while (1) - { - printf ("0x%02x", b); - - b = getchar (); - if (b == EOF) - goto end; - - for (i = 0; i < 16 - 1; i++) - { - printf (", 0x%02x", b); - - b = getchar (); - if (b == EOF) - goto end; - } - - printf (",\n"); - } - -end: - printf ("\n};\n"); - -abort: - exit (0); -} diff --git a/thirdparty/grub-2.04/util/config.c b/thirdparty/grub-2.04/util/config.c deleted file mode 100644 index ebcdd8f5e..000000000 --- a/thirdparty/grub-2.04/util/config.c +++ /dev/null @@ -1,121 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2013 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include - -#include - -#include -#include - -void -grub_util_parse_config (FILE *f, struct grub_util_config *cfg, int simple) -{ - char *buffer = NULL; - size_t sz = 0; - while (getline (&buffer, &sz, f) >= 0) - { - const char *ptr; - for (ptr = buffer; *ptr && grub_isspace (*ptr); ptr++); - if (grub_strncmp (ptr, "GRUB_ENABLE_CRYPTODISK=", - sizeof ("GRUB_ENABLE_CRYPTODISK=") - 1) == 0) - { - ptr += sizeof ("GRUB_ENABLE_CRYPTODISK=") - 1; - if (*ptr == '"' || *ptr == '\'') - ptr++; - if (*ptr == 'y') - cfg->is_cryptodisk_enabled = 1; - continue; - } - if (grub_strncmp (ptr, "GRUB_DISTRIBUTOR=", - sizeof ("GRUB_DISTRIBUTOR=") - 1) == 0) - { - char *optr; - enum { NONE, SNGLQUOT, DBLQUOT } state; - - ptr += sizeof ("GRUB_DISTRIBUTOR=") - 1; - - if (simple) - { - char *ptr2; - free (cfg->grub_distributor); - cfg->grub_distributor = xstrdup (ptr); - for (ptr2 = cfg->grub_distributor - + grub_strlen (cfg->grub_distributor) - 1; - ptr2 >= cfg->grub_distributor - && (*ptr2 == '\r' || *ptr2 == '\n'); ptr2--); - ptr2[1] = '\0'; - continue; - } - free (cfg->grub_distributor); - cfg->grub_distributor = xmalloc (strlen (ptr) + 1); - optr = cfg->grub_distributor; - state = NONE; - - for (; *ptr; ptr++) - switch (*ptr) - { - case '\\': - if (state == SNGLQUOT) - { - *optr++ = *ptr; - continue; - } - if (ptr[1]) - { - *optr++ = ptr[1]; - ptr++; - continue; - } - ptr++; - break; - case '"': - if (state == NONE) - { - state = DBLQUOT; - continue; - } - if (state == DBLQUOT) - { - state = NONE; - continue; - } - *optr++ = *ptr; - continue; - case '\'': - if (state == SNGLQUOT) - { - state = NONE; - continue; - } - if (state == NONE) - { - state = SNGLQUOT; - continue; - } - *optr++ = *ptr; - continue; - default: - *optr++ = *ptr; - continue; - } - *optr = '\0'; - } - } -} - diff --git a/thirdparty/grub-2.04/util/editenv.c b/thirdparty/grub-2.04/util/editenv.c deleted file mode 100644 index eb2d0c03a..000000000 --- a/thirdparty/grub-2.04/util/editenv.c +++ /dev/null @@ -1,66 +0,0 @@ -/* editenv.c - tool to edit environment block. */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2008,2009,2010,2013 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include -#include - -#include -#include - -#define DEFAULT_ENVBLK_SIZE 1024 - -void -grub_util_create_envblk_file (const char *name) -{ - FILE *fp; - char *buf; - char *namenew; - - buf = xmalloc (DEFAULT_ENVBLK_SIZE); - - namenew = xasprintf ("%s.new", name); - fp = grub_util_fopen (namenew, "wb"); - if (! fp) - grub_util_error (_("cannot open `%s': %s"), namenew, - strerror (errno)); - - memcpy (buf, GRUB_ENVBLK_SIGNATURE, sizeof (GRUB_ENVBLK_SIGNATURE) - 1); - memset (buf + sizeof (GRUB_ENVBLK_SIGNATURE) - 1, '#', - DEFAULT_ENVBLK_SIZE - sizeof (GRUB_ENVBLK_SIGNATURE) + 1); - - if (fwrite (buf, 1, DEFAULT_ENVBLK_SIZE, fp) != DEFAULT_ENVBLK_SIZE) - grub_util_error (_("cannot write to `%s': %s"), namenew, - strerror (errno)); - - - if (grub_util_file_sync (fp) < 0) - grub_util_error (_("cannot sync `%s': %s"), namenew, strerror (errno)); - free (buf); - fclose (fp); - - if (grub_util_rename (namenew, name) < 0) - grub_util_error (_("cannot rename the file %s to %s"), namenew, name); - free (namenew); -} diff --git a/thirdparty/grub-2.04/util/garbage-gen.c b/thirdparty/grub-2.04/util/garbage-gen.c deleted file mode 100644 index ccba1bf1c..000000000 --- a/thirdparty/grub-2.04/util/garbage-gen.c +++ /dev/null @@ -1,67 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2013 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -/* Standard random generator is slow. For FS testing we need just some - garbage files, we don't need them to be high-quality random. - */ - -#include -#include -#include -#include - -static unsigned long long buffer[1048576]; - -int -main (int argc, char **argv) -{ - unsigned long long high = 0, low = 1; - unsigned long i, j; - unsigned long long cnt = strtoull (argv[1], 0, 0); - struct timeval tv; - gettimeofday (&tv, NULL); - high = tv.tv_sec; - low = tv.tv_usec; - if (!high) - high = 1; - if (!low) - low = 2; - - for (j = 0; j < (cnt + sizeof (buffer) - 1) / sizeof (buffer); j++) - { - for (i = 0; i < sizeof (buffer) / sizeof (buffer[0]); i += 2) - { - int c1 = 0, c2 = 0; - buffer[i] = low; - buffer[i+1] = high; - if (low & (1ULL << 63)) - c1 = 1; - low <<= 1; - if (high & (1ULL << 63)) - c2 = 1; - high = (high << 1) | c1; - if (c2) - low ^= 0x87; - } - if (sizeof (buffer) < cnt - sizeof (buffer) * j) - fwrite (buffer, 1, sizeof (buffer), stdout); - else - fwrite (buffer, 1, cnt - sizeof (buffer) * j, stdout); - } - return 0; -} diff --git a/thirdparty/grub-2.04/util/getroot.c b/thirdparty/grub-2.04/util/getroot.c deleted file mode 100644 index 847406fba..000000000 --- a/thirdparty/grub-2.04/util/getroot.c +++ /dev/null @@ -1,482 +0,0 @@ -/* getroot.c - Get root device */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 1999,2000,2001,2002,2003,2006,2007,2008,2009,2010,2011 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#ifdef HAVE_LIMITS_H -#include -#endif -#include - -#include -#include - -#ifdef __linux__ -#include /* ioctl */ -#include -#endif - -#include - -#if defined(HAVE_LIBZFS) && defined(HAVE_LIBNVPAIR) -# include -# include -#endif - -#include -#include -#include -#include -#include - -#if defined (__FreeBSD__) || defined (__FreeBSD_kernel__) -#include -#endif - -#if defined(__NetBSD__) || defined(__OpenBSD__) -# include -# include /* struct disklabel */ -# include /* struct dkwedge_info */ -#include -#include -#endif /* defined(__NetBSD__) || defined(__FreeBSD__) || defined(__FreeBSD_kernel__) */ - -#if defined(__NetBSD__) -# include -#endif - -grub_disk_addr_t -grub_util_find_partition_start (const char *dev) -{ -#if GRUB_UTIL_FD_STAT_IS_FUNCTIONAL - struct stat st; - grub_disk_addr_t partition_start; - - if (stat (dev, &st) >= 0 - && grub_util_device_is_mapped_stat (&st) - && grub_util_get_dm_node_linear_info (st.st_rdev, 0, 0, &partition_start)) - return partition_start; -#endif - - return grub_util_find_partition_start_os (dev); -} - -void -grub_util_pull_device (const char *os_dev) -{ - enum grub_dev_abstraction_types ab; - ab = grub_util_get_dev_abstraction (os_dev); - switch (ab) - { - case GRUB_DEV_ABSTRACTION_LVM: - grub_util_pull_lvm_by_command (os_dev); - /* Fallthrough - in case that lvm-tools are unavailable. */ - case GRUB_DEV_ABSTRACTION_LUKS: - grub_util_pull_devmapper (os_dev); - return; - - default: - if (grub_util_pull_device_os (os_dev, ab)) - return; - /* Fallthrough. */ - case GRUB_DEV_ABSTRACTION_NONE: - free (grub_util_biosdisk_get_grub_dev (os_dev)); - return; - } -} - -char * -grub_util_get_grub_dev (const char *os_dev) -{ - char *ret; - - grub_util_pull_device (os_dev); - - ret = grub_util_get_devmapper_grub_dev (os_dev); - if (ret) - return ret; - ret = grub_util_get_grub_dev_os (os_dev); - if (ret) - return ret; - return grub_util_biosdisk_get_grub_dev (os_dev); -} - -int -grub_util_get_dev_abstraction (const char *os_dev) -{ - enum grub_dev_abstraction_types ret; - - /* User explicitly claims that this drive is visible by BIOS. */ - if (grub_util_biosdisk_is_present (os_dev)) - return GRUB_DEV_ABSTRACTION_NONE; - - /* Check for LVM and LUKS. */ - ret = grub_util_get_dm_abstraction (os_dev); - - if (ret != GRUB_DEV_ABSTRACTION_NONE) - return ret; - - return grub_util_get_dev_abstraction_os (os_dev); -} - -static char * -convert_system_partition_to_system_disk (const char *os_dev, int *is_part) -{ -#if GRUB_UTIL_FD_STAT_IS_FUNCTIONAL - struct stat st; - - if (stat (os_dev, &st) < 0) - { - const char *errstr = strerror (errno); - grub_error (GRUB_ERR_BAD_DEVICE, N_("cannot stat `%s': %s"), - os_dev, errstr); - grub_util_info (_("cannot stat `%s': %s"), os_dev, errstr); - return 0; - } - - *is_part = 0; - - if (grub_util_device_is_mapped_stat (&st)) - return grub_util_devmapper_part_to_disk (&st, is_part, os_dev); - - *is_part = 0; - - return grub_util_part_to_disk (os_dev, &st, is_part); -#else - *is_part = 0; - - return grub_util_part_to_disk (os_dev, NULL, is_part); -#endif -} - -static const char * -find_system_device (const char *os_dev) -{ - char *os_disk; - const char *drive; - int is_part; - - os_disk = convert_system_partition_to_system_disk (os_dev, &is_part); - if (! os_disk) - return NULL; - - drive = grub_hostdisk_os_dev_to_grub_drive (os_disk, 0); - free (os_disk); - return drive; -} - -static char * -make_device_name (const char *drive) -{ - char *ret, *ptr; - const char *iptr; - - ret = xmalloc (strlen (drive) * 2); - ptr = ret; - for (iptr = drive; *iptr; iptr++) - { - if (*iptr == ',' || *iptr == '\\') - *ptr++ = '\\'; - *ptr++ = *iptr; - } - *ptr = 0; - - return ret; -} - -char * -grub_util_get_os_disk (const char *os_dev) -{ - int is_part; - - grub_util_info ("Looking for %s", os_dev); - - return convert_system_partition_to_system_disk (os_dev, &is_part); -} - -#if !defined(__APPLE__) -/* Context for grub_util_biosdisk_get_grub_dev. */ -struct grub_util_biosdisk_get_grub_dev_ctx -{ - char *partname; - grub_disk_addr_t start; -}; - -/* Helper for grub_util_biosdisk_get_grub_dev. */ -static int -find_partition (grub_disk_t dsk __attribute__ ((unused)), - const grub_partition_t partition, void *data) -{ - struct grub_util_biosdisk_get_grub_dev_ctx *ctx = data; - grub_disk_addr_t part_start = 0; - grub_util_info ("Partition %d starts from %" GRUB_HOST_PRIuLONG_LONG, - partition->number, (unsigned long long) partition->start); - - part_start = grub_partition_get_start (partition); - - if (ctx->start == part_start) - { - ctx->partname = grub_partition_get_name (partition); - return 1; - } - - return 0; -} -#endif - -char * -grub_util_biosdisk_get_grub_dev (const char *os_dev) -{ - const char *drive; - char *sys_disk; - int is_part; - - grub_util_info ("Looking for %s", os_dev); - - sys_disk = convert_system_partition_to_system_disk (os_dev, &is_part); - - if (!sys_disk) - return 0; - - drive = grub_hostdisk_os_dev_to_grub_drive (sys_disk, 1); - - grub_util_info ("%s is a parent of %s", sys_disk, os_dev); - if (!is_part) - { - free (sys_disk); - return make_device_name (drive); - } - free (sys_disk); - -#if defined(__APPLE__) - /* Apple uses "/dev/r?disk[0-9]+(s[0-9]+)?". */ - /* - * Note: we do not use the new partition naming scheme as dos_part does not - * necessarily correspond to an msdos partition. - */ - { - const char *p; - char *dri, *ret; - int part; - int disk = (grub_memcmp (os_dev, "/dev/disk", sizeof ("/dev/disk") - 1) - == 0); - int rdisk = (grub_memcmp (os_dev, "/dev/rdisk", sizeof ("/dev/rdisk") - 1) - == 0); - - dri = make_device_name (drive); - - if (!disk && !rdisk) - return dri; - - p = os_dev + sizeof ("/dev/disk") + rdisk - 1; - while (*p >= '0' && *p <= '9') - p++; - if (*p != 's') - return dri; - p++; - - part = strtol (p, NULL, 10); - if (part == 0) - return dri; - - ret = xasprintf ("%s,%d", dri, part); - free (dri); - - return ret; - } - -#else - - /* Linux counts partitions uniformly, whether a BSD partition or a DOS - partition, so mapping them to GRUB devices is not trivial. - Here, get the start sector of a partition by HDIO_GETGEO, and - compare it with each partition GRUB recognizes. - - Cygwin /dev/sdXN emulation uses Windows partition mapping. It - does not count the extended partition and missing primary - partitions. Use same method as on Linux here. - - For NetBSD and FreeBSD, proceed as for Linux, except that the start - sector is obtained from the disk label. */ - { - char *name; - grub_disk_t disk; - struct grub_util_biosdisk_get_grub_dev_ctx ctx; - - name = make_device_name (drive); - - ctx.start = grub_util_find_partition_start (os_dev); - if (grub_errno != GRUB_ERR_NONE) - { - free (name); - return 0; - } - -#if defined(__GNU__) - /* Some versions of Hurd use badly glued Linux code to handle partitions - resulting in partitions being promoted to disks. */ - /* GNU uses "/dev/[hs]d[0-9]+(s[0-9]+[a-z]?)?". */ - /* - * Note: we do not use the new partition naming scheme as dos_part does not - * necessarily correspond to an msdos partition. - */ - if (ctx.start == (grub_disk_addr_t) -1) - { - char *p; - char *dri; - - dri = make_device_name (drive); - - p = strrchr (os_dev + sizeof ("/dev/hd") - 1, 's'); - if (p) - { - long int n; - char *q; - - p++; - n = strtol (p, &q, 10); - if (p != q && n > 0 && n != GRUB_LONG_MAX) - { - char *t; - t = dri; - if (*q >= 'a' && *q <= 'g') - dri = xasprintf ("%s,%ld,%d", t, n, *q - 'a' + 1); - else - dri = xasprintf ("%s,%ld", t, n); - free (t); - } - } - - return dri; - } -#endif - - grub_util_info ("%s starts from %" GRUB_HOST_PRIuLONG_LONG, - os_dev, (unsigned long long) ctx.start); - - grub_util_info ("opening the device %s", name); - disk = grub_disk_open (name); - free (name); - - if (! disk) - { - /* We already know that the partition exists. Given that we already - checked the device map above, we can only get - GRUB_ERR_UNKNOWN_DEVICE at this point if the disk does not exist. - This can happen on Xen, where disk images in the host can be - assigned to devices that have partition-like names in the guest - but are really more like disks. */ - if (grub_errno == GRUB_ERR_UNKNOWN_DEVICE) - { - char *canon; - grub_util_warn - (_("disk does not exist, so falling back to partition device %s"), - os_dev); - grub_errno = GRUB_ERR_NONE; - - canon = grub_canonicalize_file_name (os_dev); - drive = grub_hostdisk_os_dev_to_grub_drive (canon ? : os_dev, 1); - if (canon) - free (canon); - return make_device_name (drive); - } - else - return 0; - } - - name = grub_util_get_ldm (disk, ctx.start); - if (name) - { - grub_disk_close (disk); - return name; - } - - ctx.partname = NULL; - - grub_partition_iterate (disk, find_partition, &ctx); - if (grub_errno != GRUB_ERR_NONE) - { - grub_disk_close (disk); - return 0; - } - - if (ctx.partname == NULL) - { - grub_disk_close (disk); - grub_util_info ("cannot find the partition of `%s'", os_dev); - grub_error (GRUB_ERR_BAD_DEVICE, - "cannot find the partition of `%s'", os_dev); - return 0; - } - - name = grub_xasprintf ("%s,%s", disk->name, ctx.partname); - free (ctx.partname); - grub_disk_close (disk); - return name; - } - -#endif -} - -int -grub_util_biosdisk_is_present (const char *os_dev) -{ - int ret = (find_system_device (os_dev) != NULL); - grub_util_info ((ret ? "%s is present" : "%s is not present"), - os_dev); - return ret; -} - -#ifdef HAVE_LIBZFS -static libzfs_handle_t *__libzfs_handle; - -static void -fini_libzfs (void) -{ - libzfs_fini (__libzfs_handle); -} - -libzfs_handle_t * -grub_get_libzfs_handle (void) -{ - if (! __libzfs_handle) - { - __libzfs_handle = libzfs_init (); - - if (__libzfs_handle) - atexit (fini_libzfs); - } - - return __libzfs_handle; -} -#endif /* HAVE_LIBZFS */ - diff --git a/thirdparty/grub-2.04/util/glue-efi.c b/thirdparty/grub-2.04/util/glue-efi.c deleted file mode 100644 index 68f53168b..000000000 --- a/thirdparty/grub-2.04/util/glue-efi.c +++ /dev/null @@ -1,143 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2010,2012,2013 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include - -#include -#include -#include -#include -#include - -#define _GNU_SOURCE 1 - -#include -#include -#include -#include -#include - -static void -write_fat (FILE *in32, FILE *in64, FILE *out, const char *out_filename, - const char *name32, const char *name64) -{ - struct grub_macho_fat_header head; - struct grub_macho_fat_arch arch32, arch64; - grub_uint32_t size32, size64; - char *buf; - - fseek (in32, 0, SEEK_END); - size32 = ftell (in32); - fseek (in32, 0, SEEK_SET); - fseek (in64, 0, SEEK_END); - size64 = ftell (in64); - fseek (in64, 0, SEEK_SET); - - head.magic = grub_cpu_to_le32_compile_time (GRUB_MACHO_FAT_EFI_MAGIC); - head.nfat_arch = grub_cpu_to_le32_compile_time (2); - arch32.cputype = grub_cpu_to_le32_compile_time (GRUB_MACHO_CPUTYPE_IA32); - arch32.cpusubtype = grub_cpu_to_le32_compile_time (3); - arch32.offset = grub_cpu_to_le32_compile_time (sizeof (head) - + sizeof (arch32) - + sizeof (arch64)); - arch32.size = grub_cpu_to_le32 (size32); - arch32.align = 0; - - arch64.cputype = grub_cpu_to_le32_compile_time (GRUB_MACHO_CPUTYPE_AMD64); - arch64.cpusubtype = grub_cpu_to_le32_compile_time (3); - arch64.offset = grub_cpu_to_le32 (sizeof (head) + sizeof (arch32) - + sizeof (arch64) + size32); - arch64.size = grub_cpu_to_le32 (size64); - arch64.align = 0; - if (fwrite (&head, 1, sizeof (head), out) != sizeof (head) - || fwrite (&arch32, 1, sizeof (arch32), out) != sizeof (arch32) - || fwrite (&arch64, 1, sizeof (arch64), out) != sizeof (arch64)) - { - if (out_filename) - grub_util_error ("cannot write to `%s': %s", - out_filename, strerror (errno)); - else - grub_util_error ("cannot write to the stdout: %s", strerror (errno)); - } - - buf = xmalloc (size32); - if (fread (buf, 1, size32, in32) != size32) - grub_util_error (_("cannot read `%s': %s"), name32, - strerror (errno)); - if (fwrite (buf, 1, size32, out) != size32) - { - if (out_filename) - grub_util_error ("cannot write to `%s': %s", - out_filename, strerror (errno)); - else - grub_util_error ("cannot write to the stdout: %s", strerror (errno)); - } - free (buf); - - buf = xmalloc (size64); - if (fread (buf, 1, size64, in64) != size64) - grub_util_error (_("cannot read `%s': %s"), name64, - strerror (errno)); - if (fwrite (buf, 1, size64, out) != size64) - { - if (out_filename) - grub_util_error ("cannot write to `%s': %s", - out_filename, strerror (errno)); - else - grub_util_error ("cannot write to the stdout: %s", strerror (errno)); - } - free (buf); -} - -void -grub_util_glue_efi (const char *file32, const char *file64, const char *outname) -{ - FILE *in32, *in64, *out; - - in32 = grub_util_fopen (file32, "r"); - - if (!in32) - grub_util_error (_("cannot open `%s': %s"), file32, - strerror (errno)); - - in64 = grub_util_fopen (file64, "r"); - if (!in64) - grub_util_error (_("cannot open `%s': %s"), file64, - strerror (errno)); - - if (outname) - out = grub_util_fopen (outname, "wb"); - else - out = stdout; - - if (!out) - { - grub_util_error (_("cannot open `%s': %s"), outname ? : "stdout", - strerror (errno)); - } - - write_fat (in32, in64, out, outname, - file32, file64); - - fclose (in32); - fclose (in64); - - if (out != stdout) - fclose (out); -} - diff --git a/thirdparty/grub-2.04/util/grub-editenv.c b/thirdparty/grub-2.04/util/grub-editenv.c deleted file mode 100644 index f3662c95b..000000000 --- a/thirdparty/grub-2.04/util/grub-editenv.c +++ /dev/null @@ -1,299 +0,0 @@ -/* grub-editenv.c - tool to edit environment block. */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2008,2009,2010 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include -#include - -#include -#include -#include -#include -#pragma GCC diagnostic ignored "-Wmissing-prototypes" -#pragma GCC diagnostic ignored "-Wmissing-declarations" -#include -#pragma GCC diagnostic error "-Wmissing-prototypes" -#pragma GCC diagnostic error "-Wmissing-declarations" - - -#include "progname.h" - -#define DEFAULT_ENVBLK_PATH DEFAULT_DIRECTORY "/" GRUB_ENVBLK_DEFCFG - -static struct argp_option options[] = { - {0, 0, 0, OPTION_DOC, N_("Commands:"), 1}, - {"create", 0, 0, OPTION_DOC|OPTION_NO_USAGE, - N_("Create a blank environment block file."), 0}, - {"list", 0, 0, OPTION_DOC|OPTION_NO_USAGE, - N_("List the current variables."), 0}, - /* TRANSLATORS: "set" is a keyword. It's a summary of "set" subcommand. */ - {N_("set [NAME=VALUE ...]"), 0, 0, OPTION_DOC|OPTION_NO_USAGE, - N_("Set variables."), 0}, - /* TRANSLATORS: "unset" is a keyword. It's a summary of "unset" subcommand. */ - {N_("unset [NAME ...]"), 0, 0, OPTION_DOC|OPTION_NO_USAGE, - N_("Delete variables."), 0}, - - {0, 0, 0, OPTION_DOC, N_("Options:"), -1}, - {"verbose", 'v', 0, 0, N_("print verbose messages."), 0}, - - { 0, 0, 0, 0, 0, 0 } -}; - -/* Print the version information. */ -static void -print_version (FILE *stream, struct argp_state *state) -{ - fprintf (stream, "%s (%s) %s\n", program_name, PACKAGE_NAME, PACKAGE_VERSION); -} -void (*argp_program_version_hook) (FILE *, struct argp_state *) = print_version; - -/* Set the bug report address */ -const char *argp_program_bug_address = "<"PACKAGE_BUGREPORT">"; - -static error_t argp_parser (int key, char *arg, struct argp_state *state) -{ - switch (key) - { - case 'v': - verbosity++; - break; - - case ARGP_KEY_NO_ARGS: - fprintf (stderr, "%s", - _("You need to specify at least one command.\n")); - argp_usage (state); - break; - - default: - return ARGP_ERR_UNKNOWN; - } - - return 0; -} - -#pragma GCC diagnostic ignored "-Wformat-nonliteral" - -static char * -help_filter (int key, const char *text, void *input __attribute__ ((unused))) -{ - switch (key) - { - case ARGP_KEY_HELP_POST_DOC: - return xasprintf (text, DEFAULT_ENVBLK_PATH, DEFAULT_ENVBLK_PATH); - - default: - return (char *) text; - } -} - -#pragma GCC diagnostic error "-Wformat-nonliteral" - -struct argp argp = { - options, argp_parser, N_("FILENAME COMMAND"), - "\n"N_("\ -Tool to edit environment block.") -"\v"N_("\ -If FILENAME is `-', the default value %s is used.\n\n\ -There is no `delete' command; if you want to delete the whole environment\n\ -block, use `rm %s'."), - NULL, help_filter, NULL -}; - -static grub_envblk_t -open_envblk_file (const char *name) -{ - FILE *fp; - char *buf; - size_t size; - grub_envblk_t envblk; - - fp = grub_util_fopen (name, "rb"); - if (! fp) - { - /* Create the file implicitly. */ - grub_util_create_envblk_file (name); - fp = grub_util_fopen (name, "rb"); - if (! fp) - grub_util_error (_("cannot open `%s': %s"), name, - strerror (errno)); - } - - if (fseek (fp, 0, SEEK_END) < 0) - grub_util_error (_("cannot seek `%s': %s"), name, - strerror (errno)); - - size = (size_t) ftell (fp); - - if (fseek (fp, 0, SEEK_SET) < 0) - grub_util_error (_("cannot seek `%s': %s"), name, - strerror (errno)); - - buf = xmalloc (size); - - if (fread (buf, 1, size, fp) != size) - grub_util_error (_("cannot read `%s': %s"), name, - strerror (errno)); - - fclose (fp); - - envblk = grub_envblk_open (buf, size); - if (! envblk) - grub_util_error ("%s", _("invalid environment block")); - - return envblk; -} - -static int -print_var (const char *varname, const char *value, - void *hook_data __attribute__ ((unused))) -{ - printf ("%s=%s\n", varname, value); - return 0; -} - -static void -list_variables (const char *name) -{ - grub_envblk_t envblk; - - envblk = open_envblk_file (name); - grub_envblk_iterate (envblk, NULL, print_var); - grub_envblk_close (envblk); -} - -static void -write_envblk (const char *name, grub_envblk_t envblk) -{ - FILE *fp; - - fp = grub_util_fopen (name, "wb"); - if (! fp) - grub_util_error (_("cannot open `%s': %s"), name, - strerror (errno)); - - if (fwrite (grub_envblk_buffer (envblk), 1, grub_envblk_size (envblk), fp) - != grub_envblk_size (envblk)) - grub_util_error (_("cannot write to `%s': %s"), name, - strerror (errno)); - - if (grub_util_file_sync (fp) < 0) - grub_util_error (_("cannot sync `%s': %s"), name, strerror (errno)); - fclose (fp); -} - -static void -set_variables (const char *name, int argc, char *argv[]) -{ - grub_envblk_t envblk; - - envblk = open_envblk_file (name); - while (argc) - { - char *p; - - p = strchr (argv[0], '='); - if (! p) - grub_util_error (_("invalid parameter %s"), argv[0]); - - *(p++) = 0; - - if (! grub_envblk_set (envblk, argv[0], p)) - grub_util_error ("%s", _("environment block too small")); - - argc--; - argv++; - } - - write_envblk (name, envblk); - grub_envblk_close (envblk); -} - -static void -unset_variables (const char *name, int argc, char *argv[]) -{ - grub_envblk_t envblk; - - envblk = open_envblk_file (name); - while (argc) - { - grub_envblk_delete (envblk, argv[0]); - - argc--; - argv++; - } - - write_envblk (name, envblk); - grub_envblk_close (envblk); -} - -int -main (int argc, char *argv[]) -{ - const char *filename; - char *command; - int curindex, arg_count; - - grub_util_host_init (&argc, &argv); - - /* Parse our arguments */ - if (argp_parse (&argp, argc, argv, 0, &curindex, 0) != 0) - { - fprintf (stderr, "%s", _("Error in parsing command line arguments\n")); - exit(1); - } - - arg_count = argc - curindex; - - if (arg_count == 1) - { - filename = DEFAULT_ENVBLK_PATH; - command = argv[curindex++]; - } - else - { - filename = argv[curindex++]; - if (strcmp (filename, "-") == 0) - filename = DEFAULT_ENVBLK_PATH; - command = argv[curindex++]; - } - - if (strcmp (command, "create") == 0) - grub_util_create_envblk_file (filename); - else if (strcmp (command, "list") == 0) - list_variables (filename); - else if (strcmp (command, "set") == 0) - set_variables (filename, argc - curindex, argv + curindex); - else if (strcmp (command, "unset") == 0) - unset_variables (filename, argc - curindex, argv + curindex); - else - { - char *program = xstrdup(program_name); - fprintf (stderr, _("Unknown command `%s'.\n"), command); - argp_help (&argp, stderr, ARGP_HELP_STD_USAGE, program); - free(program); - exit(1); - } - - return 0; -} diff --git a/thirdparty/grub-2.04/util/grub-file.c b/thirdparty/grub-2.04/util/grub-file.c deleted file mode 100644 index 50c18b683..000000000 --- a/thirdparty/grub-2.04/util/grub-file.c +++ /dev/null @@ -1,106 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2010,2012,2013 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - - -#include - -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#define _GNU_SOURCE 1 - -#include -#include -#include -#include -#include - -#include "progname.h" - -void grub_file_init (void); -void grub_host_init (void); -void grub_hostfs_init (void); - -int -main (int argc, char *argv[]) -{ - char **argv2; - int i; - int had_file = 0, had_separator = 0; - grub_command_t cmd; - grub_err_t err; - - grub_util_host_init (&argc, &argv); - - argv2 = xmalloc (argc * sizeof (argv2[0])); - - if (argc == 2 && strcmp (argv[1], "--version") == 0) - { - printf ("%s (%s) %s\n", program_name, PACKAGE_NAME, PACKAGE_VERSION); - } - - for (i = 1; i < argc; i++) - { - if (argv[i][0] == '-' && argv[i][1] == '-' - && argv[i][2] == '\0' && !had_separator) - { - had_separator = 1; - argv2[i - 1] = xstrdup (argv[i]); - continue; - } - if (argv[i][0] == '-' && !had_separator) - { - argv2[i - 1] = xstrdup (argv[i]); - continue; - } - if (had_file) - grub_util_error ("one argument expected"); - argv2[i - 1] = grub_canonicalize_file_name (argv[i]); - if (!argv2[i - 1]) - { - grub_util_error (_("cannot open `%s': %s"), argv[i], - strerror (errno)); - } - had_file = 1; - } - argv2[i - 1] = NULL; - - /* Initialize all modules. */ - grub_init_all (); - grub_file_init (); - grub_hostfs_init (); - grub_host_init (); - - grub_env_set ("root", "host"); - - cmd = grub_command_find ("file"); - if (! cmd) - grub_util_error (_("can't find command `%s'"), "file"); - - err = (cmd->func) (cmd, argc - 1, argv2); - if (err && err != GRUB_ERR_TEST_FAILURE) - grub_print_error (); - return err; -} diff --git a/thirdparty/grub-2.04/util/grub-fstest.c b/thirdparty/grub-2.04/util/grub-fstest.c deleted file mode 100644 index f14e02d97..000000000 --- a/thirdparty/grub-2.04/util/grub-fstest.c +++ /dev/null @@ -1,776 +0,0 @@ -/* grub-fstest.c - debug tool for filesystem driver */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2008,2009,2010 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#include -#include -#include - -#include "progname.h" -#pragma GCC diagnostic ignored "-Wmissing-prototypes" -#pragma GCC diagnostic ignored "-Wmissing-declarations" -#include "argp.h" -#pragma GCC diagnostic error "-Wmissing-prototypes" -#pragma GCC diagnostic error "-Wmissing-declarations" - -static grub_err_t -execute_command (const char *name, int n, char **args) -{ - grub_command_t cmd; - - cmd = grub_command_find (name); - if (! cmd) - grub_util_error (_("can't find command `%s'"), name); - - return (cmd->func) (cmd, n, args); -} - -enum { - CMD_LS = 1, - CMD_CP, - CMD_CAT, - CMD_CMP, - CMD_HEX, - CMD_CRC, - CMD_BLOCKLIST, - CMD_TESTLOAD, - CMD_ZFSINFO, - CMD_XNU_UUID -}; -#define BUF_SIZE 32256 - -static grub_disk_addr_t skip, leng; -static int uncompress = 0; - -static void -read_file (char *pathname, int (*hook) (grub_off_t ofs, char *buf, int len, void *hook_arg), void *hook_arg) -{ - static char buf[BUF_SIZE]; - grub_file_t file; - - if ((pathname[0] == '-') && (pathname[1] == 0)) - { - grub_device_t dev; - - dev = grub_device_open (0); - if ((! dev) || (! dev->disk)) - grub_util_error ("%s", grub_errmsg); - - grub_util_info ("total sectors : %" GRUB_HOST_PRIuLONG_LONG, - (unsigned long long) dev->disk->total_sectors); - - if (! leng) - leng = (dev->disk->total_sectors << GRUB_DISK_SECTOR_BITS) - skip; - - while (leng) - { - grub_size_t len; - - len = (leng > BUF_SIZE) ? BUF_SIZE : leng; - - if (grub_disk_read (dev->disk, 0, skip, len, buf)) - { - char *msg = grub_xasprintf (_("disk read fails at offset %lld, length %lld"), - (long long) skip, (long long) len); - grub_util_error ("%s", msg); - } - - if (hook (skip, buf, len, hook_arg)) - break; - - skip += len; - leng -= len; - } - - grub_device_close (dev); - return; - } - - file = grub_file_open (pathname, ((uncompress == 0) - ? GRUB_FILE_TYPE_NO_DECOMPRESS : GRUB_FILE_TYPE_NONE) - | GRUB_FILE_TYPE_FSTEST); - if (!file) - { - grub_util_error (_("cannot open `%s': %s"), pathname, - grub_errmsg); - return; - } - - grub_util_info ("file size : %" GRUB_HOST_PRIuLONG_LONG, - (unsigned long long) file->size); - - if (skip > file->size) - { - char *msg = grub_xasprintf (_("invalid skip value %lld"), - (unsigned long long) skip); - grub_util_error ("%s", msg); - return; - } - - { - grub_off_t ofs, len; - ofs = skip; - len = file->size - skip; - if ((leng) && (leng < len)) - len = leng; - - file->offset = skip; - - while (len) - { - grub_ssize_t sz; - - sz = grub_file_read (file, buf, (len > BUF_SIZE) ? BUF_SIZE : len); - if (sz < 0) - { - char *msg = grub_xasprintf (_("read error at offset %llu: %s"), - (unsigned long long) ofs, grub_errmsg); - grub_util_error ("%s", msg); - break; - } - - if ((sz == 0) || (hook (ofs, buf, sz, hook_arg))) - break; - - ofs += sz; - len -= sz; - } - } - - grub_file_close (file); -} - -struct cp_hook_ctx -{ - FILE *ff; - const char *dest; -}; - -static int -cp_hook (grub_off_t ofs, char *buf, int len, void *_ctx) -{ - struct cp_hook_ctx *ctx = _ctx; - (void) ofs; - - if ((int) fwrite (buf, 1, len, ctx->ff) != len) - { - grub_util_error (_("cannot write to `%s': %s"), - ctx->dest, strerror (errno)); - return 1; - } - - return 0; -} - -static void -cmd_cp (char *src, const char *dest) -{ - struct cp_hook_ctx ctx = - { - .dest = dest - }; - - ctx.ff = grub_util_fopen (dest, "wb"); - if (ctx.ff == NULL) - { - grub_util_error (_("cannot open OS file `%s': %s"), dest, - strerror (errno)); - return; - } - read_file (src, cp_hook, &ctx); - fclose (ctx.ff); -} - -static int -cat_hook (grub_off_t ofs, char *buf, int len, void *_arg __attribute__ ((unused))) -{ - (void) ofs; - - if ((int) fwrite (buf, 1, len, stdout) != len) - { - grub_util_error (_("cannot write to the stdout: %s"), - strerror (errno)); - return 1; - } - - return 0; -} - -static void -cmd_cat (char *src) -{ - read_file (src, cat_hook, 0); -} - -static int -cmp_hook (grub_off_t ofs, char *buf, int len, void *ff_in) -{ - FILE *ff = ff_in; - static char buf_1[BUF_SIZE]; - if ((int) fread (buf_1, 1, len, ff) != len) - { - char *msg = grub_xasprintf (_("read error at offset %llu: %s"), - (unsigned long long) ofs, grub_errmsg); - grub_util_error ("%s", msg); - return 1; - } - - if (grub_memcmp (buf, buf_1, len) != 0) - { - int i; - - for (i = 0; i < len; i++, ofs++) - if (buf_1[i] != buf[i]) - { - char *msg = grub_xasprintf (_("compare fail at offset %llu"), - (unsigned long long) ofs); - grub_util_error ("%s", msg); - return 1; - } - } - return 0; -} - - -static void -cmd_cmp (char *src, char *dest) -{ - FILE *ff; - - if (grub_util_is_directory (dest)) - { - grub_util_fd_dir_t dir = grub_util_fd_opendir (dest); - grub_util_fd_dirent_t entry; - if (dir == NULL) - { - grub_util_error (_("OS file %s open error: %s"), dest, - grub_util_fd_strerror ()); - return; - } - while ((entry = grub_util_fd_readdir (dir))) - { - char *srcnew, *destnew; - char *ptr; - if (strcmp (entry->d_name, ".") == 0 - || strcmp (entry->d_name, "..") == 0) - continue; - srcnew = xmalloc (strlen (src) + sizeof ("/") - + strlen (entry->d_name)); - destnew = xmalloc (strlen (dest) + sizeof ("/") - + strlen (entry->d_name)); - ptr = grub_stpcpy (srcnew, src); - *ptr++ = '/'; - strcpy (ptr, entry->d_name); - ptr = grub_stpcpy (destnew, dest); - *ptr++ = '/'; - strcpy (ptr, entry->d_name); - - if (grub_util_is_special_file (destnew)) - continue; - - cmd_cmp (srcnew, destnew); - } - grub_util_fd_closedir (dir); - return; - } - - ff = grub_util_fopen (dest, "rb"); - if (ff == NULL) - { - grub_util_error (_("OS file %s open error: %s"), dest, - strerror (errno)); - return; - } - - if ((skip) && (fseeko (ff, skip, SEEK_SET))) - grub_util_error (_("cannot seek `%s': %s"), dest, - strerror (errno)); - - read_file (src, cmp_hook, ff); - - { - grub_uint64_t pre; - pre = ftell (ff); - fseek (ff, 0, SEEK_END); - if (pre != ftell (ff)) - grub_util_error ("%s", _("unexpected end of file")); - } - fclose (ff); -} - -static int -hex_hook (grub_off_t ofs, char *buf, int len, void *arg __attribute__ ((unused))) -{ - hexdump (ofs, buf, len); - return 0; -} - -static void -cmd_hex (char *pathname) -{ - read_file (pathname, hex_hook, 0); -} - -static int -crc_hook (grub_off_t ofs, char *buf, int len, void *crc_ctx) -{ - (void) ofs; - - GRUB_MD_CRC32->write(crc_ctx, buf, len); - return 0; -} - -static void -cmd_crc (char *pathname) -{ - grub_uint8_t *crc32_context = xmalloc (GRUB_MD_CRC32->contextsize); - GRUB_MD_CRC32->init(crc32_context); - - read_file (pathname, crc_hook, crc32_context); - GRUB_MD_CRC32->final(crc32_context); - printf ("%08x\n", - grub_be_to_cpu32 (grub_get_unaligned32 (GRUB_MD_CRC32->read (crc32_context)))); - free (crc32_context); -} - -static const char *root = NULL; -static int args_count = 0; -static int nparm = 0; -static int num_disks = 1; -static char **images = NULL; -static int cmd = 0; -static char *debug_str = NULL; -static char **args = NULL; -static int mount_crypt = 0; - -static void -fstest (int n) -{ - char *host_file; - char *loop_name; - int i; - - for (i = 0; i < num_disks; i++) - { - char *argv[2]; - loop_name = grub_xasprintf ("loop%d", i); - if (!loop_name) - grub_util_error ("%s", grub_errmsg); - - host_file = grub_xasprintf ("(host)%s", images[i]); - if (!host_file) - grub_util_error ("%s", grub_errmsg); - - argv[0] = loop_name; - argv[1] = host_file; - - if (execute_command ("loopback", 2, argv)) - grub_util_error (_("`loopback' command fails: %s"), grub_errmsg); - - grub_free (loop_name); - grub_free (host_file); - } - - { - if (mount_crypt) - { - char *argv[2] = { xstrdup ("-a"), NULL}; - if (execute_command ("cryptomount", 1, argv)) - grub_util_error (_("`cryptomount' command fails: %s"), - grub_errmsg); - free (argv[0]); - } - } - - grub_ldm_fini (); - grub_lvm_fini (); - grub_mdraid09_fini (); - grub_mdraid1x_fini (); - grub_diskfilter_fini (); - grub_diskfilter_init (); - grub_mdraid09_init (); - grub_mdraid1x_init (); - grub_lvm_init (); - grub_ldm_init (); - - switch (cmd) - { - case CMD_LS: - execute_command ("ls", n, args); - break; - case CMD_ZFSINFO: - execute_command ("zfsinfo", n, args); - break; - case CMD_CP: - cmd_cp (args[0], args[1]); - break; - case CMD_CAT: - cmd_cat (args[0]); - break; - case CMD_CMP: - cmd_cmp (args[0], args[1]); - break; - case CMD_HEX: - cmd_hex (args[0]); - break; - case CMD_CRC: - cmd_crc (args[0]); - break; - case CMD_BLOCKLIST: - execute_command ("blocklist", n, args); - grub_printf ("\n"); - break; - case CMD_TESTLOAD: - execute_command ("testload", n, args); - grub_printf ("\n"); - break; - case CMD_XNU_UUID: - { - grub_device_t dev; - grub_fs_t fs; - char *uuid = 0; - char *argv[3] = { xstrdup ("-l"), NULL, NULL}; - dev = grub_device_open (n ? args[0] : 0); - if (!dev) - grub_util_error ("%s", grub_errmsg); - fs = grub_fs_probe (dev); - if (!fs) - grub_util_error ("%s", grub_errmsg); - if (!fs->fs_uuid) - grub_util_error ("%s", _("couldn't retrieve UUID")); - if (fs->fs_uuid (dev, &uuid)) - grub_util_error ("%s", grub_errmsg); - if (!uuid) - grub_util_error ("%s", _("couldn't retrieve UUID")); - argv[1] = uuid; - execute_command ("xnu_uuid", 2, argv); - grub_free (argv[0]); - grub_free (uuid); - grub_device_close (dev); - } - } - - for (i = 0; i < num_disks; i++) - { - char *argv[2]; - - loop_name = grub_xasprintf ("loop%d", i); - if (!loop_name) - grub_util_error ("%s", grub_errmsg); - - argv[0] = xstrdup ("-d"); - argv[1] = loop_name; - - execute_command ("loopback", 2, argv); - - grub_free (loop_name); - grub_free (argv[0]); - } -} - -static struct argp_option options[] = { - {0, 0, 0 , OPTION_DOC, N_("Commands:"), 1}, - {N_("ls PATH"), 0, 0 , OPTION_DOC, N_("List files in PATH."), 1}, - {N_("cp FILE LOCAL"), 0, 0, OPTION_DOC, N_("Copy FILE to local file LOCAL."), 1}, - {N_("cat FILE"), 0, 0 , OPTION_DOC, N_("Copy FILE to standard output."), 1}, - {N_("cmp FILE LOCAL"), 0, 0, OPTION_DOC, N_("Compare FILE with local file LOCAL."), 1}, - {N_("hex FILE"), 0, 0 , OPTION_DOC, N_("Show contents of FILE in hex."), 1}, - {N_("crc FILE"), 0, 0 , OPTION_DOC, N_("Get crc32 checksum of FILE."), 1}, - {N_("blocklist FILE"), 0, 0, OPTION_DOC, N_("Display blocklist of FILE."), 1}, - {N_("xnu_uuid DEVICE"), 0, 0, OPTION_DOC, N_("Compute XNU UUID of the device."), 1}, - - {"root", 'r', N_("DEVICE_NAME"), 0, N_("Set root device."), 2}, - {"skip", 's', N_("NUM"), 0, N_("Skip N bytes from output file."), 2}, - {"length", 'n', N_("NUM"), 0, N_("Handle N bytes in output file."), 2}, - {"diskcount", 'c', N_("NUM"), 0, N_("Specify the number of input files."), 2}, - {"debug", 'd', N_("STRING"), 0, N_("Set debug environment variable."), 2}, - {"crypto", 'C', NULL, 0, N_("Mount crypto devices."), 2}, - {"zfs-key", 'K', - /* TRANSLATORS: "prompt" is a keyword. */ - N_("FILE|prompt"), 0, N_("Load zfs crypto key."), 2}, - {"verbose", 'v', NULL, 0, N_("print verbose messages."), 2}, - {"uncompress", 'u', NULL, 0, N_("Uncompress data."), 2}, - {0, 0, 0, 0, 0, 0} -}; - -/* Print the version information. */ -static void -print_version (FILE *stream, struct argp_state *state) -{ - fprintf (stream, "%s (%s) %s\n", program_name, PACKAGE_NAME, PACKAGE_VERSION); -} -void (*argp_program_version_hook) (FILE *, struct argp_state *) = print_version; - -static error_t -argp_parser (int key, char *arg, struct argp_state *state) -{ - char *p; - - switch (key) - { - case 'r': - root = arg; - return 0; - - case 'K': - if (strcmp (arg, "prompt") == 0) - { - char buf[1024]; - grub_puts_ (N_("Enter ZFS password: ")); - if (grub_password_get (buf, 1023)) - { - grub_zfs_add_key ((grub_uint8_t *) buf, grub_strlen (buf), 1); - } - } - else - { - FILE *f; - ssize_t real_size; - grub_uint8_t buf[1024]; - f = grub_util_fopen (arg, "rb"); - if (!f) - { - printf (_("%s: error:"), program_name); - printf (_("cannot open `%s': %s"), arg, strerror (errno)); - printf ("\n"); - return 0; - } - real_size = fread (buf, 1, 1024, f); - fclose (f); - if (real_size < 0) - { - printf (_("%s: error:"), program_name); - printf (_("cannot read `%s': %s"), arg, strerror (errno)); - printf ("\n"); - return 0; - } - grub_zfs_add_key (buf, real_size, 0); - } - return 0; - - case 'C': - mount_crypt = 1; - return 0; - - case 's': - skip = grub_strtoul (arg, &p, 0); - if (*p == 's') - skip <<= GRUB_DISK_SECTOR_BITS; - return 0; - - case 'n': - leng = grub_strtoul (arg, &p, 0); - if (*p == 's') - leng <<= GRUB_DISK_SECTOR_BITS; - return 0; - - case 'c': - num_disks = grub_strtoul (arg, NULL, 0); - if (num_disks < 1) - { - fprintf (stderr, "%s", _("Invalid disk count.\n")); - argp_usage (state); - } - if (args_count != 0) - { - /* TRANSLATORS: disk count is optional but if it's there it must - be before disk list. So please don't imply disk count as mandatory. - */ - fprintf (stderr, "%s", _("Disk count must precede disks list.\n")); - argp_usage (state); - } - return 0; - - case 'd': - debug_str = arg; - return 0; - - case 'v': - verbosity++; - return 0; - - case 'u': - uncompress = 1; - return 0; - - case ARGP_KEY_END: - if (args_count < num_disks) - { - fprintf (stderr, "%s", _("No command is specified.\n")); - argp_usage (state); - } - if (args_count - 1 - num_disks < nparm) - { - fprintf (stderr, "%s", _("Not enough parameters to command.\n")); - argp_usage (state); - } - return 0; - - case ARGP_KEY_ARG: - break; - - default: - return ARGP_ERR_UNKNOWN; - } - - if (args_count < num_disks) - { - if (args_count == 0) - images = xmalloc (num_disks * sizeof (images[0])); - images[args_count] = grub_canonicalize_file_name (arg); - args_count++; - return 0; - } - - if (args_count == num_disks) - { - if (!grub_strcmp (arg, "ls")) - { - cmd = CMD_LS; - } - else if (!grub_strcmp (arg, "zfsinfo")) - { - cmd = CMD_ZFSINFO; - } - else if (!grub_strcmp (arg, "cp")) - { - cmd = CMD_CP; - nparm = 2; - } - else if (!grub_strcmp (arg, "cat")) - { - cmd = CMD_CAT; - nparm = 1; - } - else if (!grub_strcmp (arg, "cmp")) - { - cmd = CMD_CMP; - nparm = 2; - } - else if (!grub_strcmp (arg, "hex")) - { - cmd = CMD_HEX; - nparm = 1; - } - else if (!grub_strcmp (arg, "crc")) - { - cmd = CMD_CRC; - nparm = 1; - } - else if (!grub_strcmp (arg, "blocklist")) - { - cmd = CMD_BLOCKLIST; - nparm = 1; - } - else if (!grub_strcmp (arg, "testload")) - { - cmd = CMD_TESTLOAD; - nparm = 1; - } - else if (grub_strcmp (arg, "xnu_uuid") == 0) - { - cmd = CMD_XNU_UUID; - nparm = 0; - } - else - { - fprintf (stderr, _("Invalid command %s.\n"), arg); - argp_usage (state); - } - args_count++; - return 0; - } - - args[args_count - 1 - num_disks] = xstrdup (arg); - args_count++; - return 0; -} - -struct argp argp = { - options, argp_parser, N_("IMAGE_PATH COMMANDS"), - N_("Debug tool for filesystem driver."), - NULL, NULL, NULL -}; - -int -main (int argc, char *argv[]) -{ - const char *default_root; - char *alloc_root; - - grub_util_host_init (&argc, &argv); - - args = xmalloc (argc * sizeof (args[0])); - - argp_parse (&argp, argc, argv, 0, 0, 0); - - /* Initialize all modules. */ - grub_init_all (); - grub_gcry_init_all (); - - if (debug_str) - grub_env_set ("debug", debug_str); - - default_root = (num_disks == 1) ? "loop0" : "md0"; - alloc_root = 0; - if (root) - { - if ((*root >= '0') && (*root <= '9')) - { - alloc_root = xmalloc (strlen (default_root) + strlen (root) + 2); - - sprintf (alloc_root, "%s,%s", default_root, root); - root = alloc_root; - } - } - else - root = default_root; - - grub_env_set ("root", root); - - if (alloc_root) - free (alloc_root); - - /* Do it. */ - fstest (args_count - 1 - num_disks); - - /* Free resources. */ - grub_gcry_fini_all (); - grub_fini_all (); - - return 0; -} diff --git a/thirdparty/grub-2.04/util/grub-gen-asciih.c b/thirdparty/grub-2.04/util/grub-gen-asciih.c deleted file mode 100644 index e35dcb78f..000000000 --- a/thirdparty/grub-2.04/util/grub-gen-asciih.c +++ /dev/null @@ -1,256 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2009,2010 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include - -#include - -#include -#include FT_FREETYPE_H -#include FT_TRUETYPE_TAGS_H -#include FT_TRUETYPE_TABLES_H -#include FT_SYNTHESIS_H - -#undef __FTERRORS_H__ -#define FT_ERROR_START_LIST const char *ft_errmsgs[] = { -#define FT_ERRORDEF(e, v, s) [e] = s, -#define FT_ERROR_END_LIST }; -#include FT_ERRORS_H - -#define GRUB_FONT_DEFAULT_SIZE 16 - -#define ARRAY_SIZE(array) (sizeof (array) / sizeof (array[0])) - -struct grub_glyph_info -{ - int width; - int height; - int x_ofs; - int y_ofs; - int device_width; - int bitmap_size; - unsigned char *bitmap; -}; - -static void -add_pixel (unsigned char **data, int *mask, int not_blank) -{ - if (*mask == 0) - { - (*data)++; - **data = 0; - *mask = 128; - } - - if (not_blank) - **data |= *mask; - - *mask >>= 1; -} - -static void -add_glyph (FT_UInt glyph_idx, FT_Face face, - unsigned int char_code, - struct grub_glyph_info *glyph_info) -{ - int width, height; - int cuttop, cutbottom, cutleft, cutright; - unsigned char *data; - int mask, i, j, bitmap_size; - FT_GlyphSlot glyph; - int flag = FT_LOAD_RENDER | FT_LOAD_MONOCHROME; - FT_Error err; - - err = FT_Load_Glyph (face, glyph_idx, flag); - if (err) - { - fprintf (stderr, "Freetype Error %d loading glyph 0x%x for U+0x%x", - err, glyph_idx, char_code); - - if (err > 0 && err < (signed) ARRAY_SIZE (ft_errmsgs)) - fprintf (stderr, ": %s\n", ft_errmsgs[err]); - else - fprintf (stderr, "\n"); - exit (1); - } - - glyph = face->glyph; - - if (glyph->next) - printf ("%x\n", char_code); - - cuttop = cutbottom = cutleft = cutright = 0; - - width = glyph->bitmap.width; - height = glyph->bitmap.rows; - - bitmap_size = ((width * height + 7) / 8); - glyph_info->bitmap = malloc (bitmap_size); - if (!glyph_info->bitmap) - { - fprintf (stderr, "grub-gen-asciih: error: out of memory"); - exit (1); - } - glyph_info->bitmap_size = bitmap_size; - - glyph_info->width = width; - glyph_info->height = height; - glyph_info->x_ofs = glyph->bitmap_left; - glyph_info->y_ofs = glyph->bitmap_top - height; - glyph_info->device_width = glyph->metrics.horiAdvance / 64; - - mask = 0; - data = &glyph_info->bitmap[0] - 1; - for (j = cuttop; j < height + cuttop; j++) - for (i = cutleft; i < width + cutleft; i++) - add_pixel (&data, &mask, - glyph->bitmap.buffer[i / 8 + j * glyph->bitmap.pitch] & - (1 << (7 - (i & 7)))); -} - -static void -write_font_ascii_bitmap (FILE *file, FT_Face face) -{ - int char_code; - - fprintf (file, "/* THIS CHUNK OF BYTES IS AUTOMATICALLY GENERATED */\n"); - fprintf (file, "unsigned char ascii_bitmaps[] =\n"); - fprintf (file, "{\n"); - - for (char_code = 0; char_code <= 0x7f; char_code++) - { - FT_UInt glyph_idx; - struct grub_glyph_info glyph; - - glyph_idx = FT_Get_Char_Index (face, char_code); - if (!glyph_idx) - return; - - memset (&glyph, 0, sizeof(glyph)); - - add_glyph (glyph_idx, face, char_code, &glyph); - - if (glyph.width == 8 && glyph.height == 16 - && glyph.x_ofs == 0 && glyph.y_ofs == 0) - { - int row; - for (row = 0; row < 16; row++) - fprintf (file, "0x%02x, ", glyph.bitmap[row]); - } - else - { - unsigned char glph[16]; - int p = 0, mask = 0x80; - int row, col; - int dy = 12 - glyph.height - glyph.y_ofs; - for (row = 0; row < 16; row++) - glph[row] = 0; - for (row = 0; row < glyph.height; row++) - for (col = 0; col < glyph.width; col++) - { - int val = glyph.bitmap[p] & mask; - mask >>= 1; - if (mask == 0) - { - mask = 0x80; - p++; - } - if (val && dy + row >= 0 - && dy + row < 16 - && glyph.x_ofs + col >= 0 - && glyph.x_ofs + col < 8) - glph[dy + row] |= 1 << (7 - (glyph.x_ofs + col)); - } - for (row = 0; row < 16; row++) - fprintf (file, "0x%02x, ", glph[row]); - } - fprintf (file, "\n"); - free (glyph.bitmap); - } - fprintf (file, "};\n"); -} - -int -main (int argc, char *argv[]) -{ - FT_Library ft_lib; - FT_Face ft_face; - FILE *file; - - if (argc != 3) - { - fprintf (stderr, "grub-gen-asciih: usage: INPUT OUTPUT"); - return 1; - } - - if (FT_Init_FreeType (&ft_lib)) - { - fprintf (stderr, "grub-gen-asciih: error: FT_Init_FreeType fails"); - return 1; - } - - { - int size; - FT_Error err; - - err = FT_New_Face (ft_lib, argv[1], 0, &ft_face); - if (err) - { - fprintf (stderr, "can't open file %s, index %d: error %d", - argv[1], 0, err); - if (err > 0 && err < (signed) ARRAY_SIZE (ft_errmsgs)) - fprintf (stderr, ": %s\n", ft_errmsgs[err]); - else - fprintf (stderr, "\n"); - - return 1; - } - - if ((ft_face->face_flags & FT_FACE_FLAG_SCALABLE) || - (! ft_face->num_fixed_sizes)) - size = GRUB_FONT_DEFAULT_SIZE; - else - size = ft_face->available_sizes[0].height; - - if (FT_Set_Pixel_Sizes (ft_face, size, size)) - { - fprintf (stderr, "grub-gen-asciih: error: can't set %dx%d font size", size, size); - return 1; - } - } - - file = fopen (argv[2], "w"); - if (! file) - { - fprintf (stderr, "grub-gen-asciih: error: cannot write to `%s': %s", argv[2], - strerror (errno)); - return 1; - } - - write_font_ascii_bitmap (file, ft_face); - - fclose (file); - - FT_Done_Face (ft_face); - - FT_Done_FreeType (ft_lib); - - return 0; -} diff --git a/thirdparty/grub-2.04/util/grub-gen-widthspec.c b/thirdparty/grub-2.04/util/grub-gen-widthspec.c deleted file mode 100644 index 33bc8cb2d..000000000 --- a/thirdparty/grub-2.04/util/grub-gen-widthspec.c +++ /dev/null @@ -1,153 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2009,2010 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include - -#include - -#include -#include FT_FREETYPE_H -#include FT_TRUETYPE_TAGS_H -#include FT_TRUETYPE_TABLES_H -#include FT_SYNTHESIS_H - -#undef __FTERRORS_H__ -#define FT_ERROR_START_LIST const char *ft_errmsgs[] = { -#define FT_ERRORDEF(e, v, s) [e] = s, -#define FT_ERROR_END_LIST }; -#include FT_ERRORS_H - -#define GRUB_FONT_DEFAULT_SIZE 16 - -#define ARRAY_SIZE(array) (sizeof (array) / sizeof (array[0])) - -#define MAX_CODE 65536 -static unsigned char result[MAX_CODE / 8]; - -static void -add_glyph (FT_Face face, - unsigned int char_code) -{ - int flag = FT_LOAD_RENDER | FT_LOAD_MONOCHROME; - FT_Error err; - FT_UInt glyph_idx; - - glyph_idx = FT_Get_Char_Index (face, char_code); - if (!glyph_idx) - return; - - err = FT_Load_Glyph (face, glyph_idx, flag); - if (err) - { - printf ("Freetype Error %d loading glyph 0x%x for U+0x%x", - err, glyph_idx, char_code); - - if (err > 0 && err < (signed) ARRAY_SIZE (ft_errmsgs)) - printf (": %s\n", ft_errmsgs[err]); - else - printf ("\n"); - return; - } - - if (face->glyph->bitmap.width > 12 && char_code < MAX_CODE) - result[char_code >> 3] |= (1 << (char_code & 7)); -} - -int -main (int argc, char *argv[]) -{ - FT_Library ft_lib; - FILE *file; - int i; - - if (argc != 3) - { - fprintf (stderr, "grub-gen-widthspec: usage: INPUT OUTPUT"); - return 1; - } - - if (FT_Init_FreeType (&ft_lib)) - { - fprintf (stderr, "grub-gen-widthspec: error: FT_Init_FreeType fails"); - return 1; - } - - { - FT_Face ft_face; - int size; - FT_Error err; - unsigned int char_code, glyph_index; - - err = FT_New_Face (ft_lib, argv[1], 0, &ft_face); - if (err) - { - fprintf (stderr, "can't open file %s, index %d: error %d", - argv[1], 0, err); - if (err > 0 && err < (signed) ARRAY_SIZE (ft_errmsgs)) - fprintf (stderr, ": %s\n", ft_errmsgs[err]); - else - fprintf (stderr, "\n"); - - return 1; - } - - if ((ft_face->face_flags & FT_FACE_FLAG_SCALABLE) || - (! ft_face->num_fixed_sizes)) - size = GRUB_FONT_DEFAULT_SIZE; - else - size = ft_face->available_sizes[0].height; - - if (FT_Set_Pixel_Sizes (ft_face, size, size)) - { - fprintf (stderr, "grub-gen-widthspec: error: can't set %dx%d font size", size, size); - return 1; - } - - for (char_code = FT_Get_First_Char (ft_face, &glyph_index); - glyph_index; - char_code = FT_Get_Next_Char (ft_face, char_code, &glyph_index)) - add_glyph (ft_face, char_code); - - FT_Done_Face (ft_face); - } - - FT_Done_FreeType (ft_lib); - - file = fopen (argv[2], "w"); - if (! file) - { - fprintf (stderr, "grub-gen-asciih: error: cannot write to `%s': %s", argv[2], - strerror (errno)); - return 1; - } - - fprintf (file, "/* THIS CHUNK OF BYTES IS AUTOMATICALLY GENERATED */\n"); - fprintf (file, "unsigned char widthspec[] =\n"); - fprintf (file, "{\n"); - - for (i = 0; i < MAX_CODE / 8; i++) - fprintf (file, "0x%02x,%c", result[i], ((i & 0xf) == 0xf) ? '\n' : ' '); - - fprintf (file, "};\n"); - - fclose (file); - - return 0; -} diff --git a/thirdparty/grub-2.04/util/grub-glue-efi.c b/thirdparty/grub-2.04/util/grub-glue-efi.c deleted file mode 100644 index 07fa43030..000000000 --- a/thirdparty/grub-2.04/util/grub-glue-efi.c +++ /dev/null @@ -1,125 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2010,2012,2013 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include - -#include -#include -#include -#include -#include - -#define _GNU_SOURCE 1 - -#include -#include -#include -#include -#include - -#pragma GCC diagnostic ignored "-Wmissing-prototypes" -#pragma GCC diagnostic ignored "-Wmissing-declarations" -#include -#pragma GCC diagnostic error "-Wmissing-prototypes" -#pragma GCC diagnostic error "-Wmissing-declarations" - -#include "progname.h" - -struct arguments -{ - char *input32; - char *input64; - char *output; - int verbosity; -}; - -static struct argp_option options[] = { - {"input32", '3', N_("FILE"), 0, - N_("set input filename for 32-bit part."), 0}, - {"input64", '6', N_("FILE"), 0, - N_("set input filename for 64-bit part."), 0}, - {"output", 'o', N_("FILE"), 0, - N_("set output filename. Default is STDOUT"), 0}, - {"verbose", 'v', 0, 0, N_("print verbose messages."), 0}, - { 0, 0, 0, 0, 0, 0 } -}; - -static error_t -argp_parser (int key, char *arg, struct argp_state *state) -{ - /* Get the input argument from argp_parse, which we - know is a pointer to our arguments structure. */ - struct arguments *arguments = state->input; - - switch (key) - { - case '6': - arguments->input64 = xstrdup (arg); - break; - case '3': - arguments->input32 = xstrdup (arg); - break; - - case 'o': - arguments->output = xstrdup (arg); - break; - - case 'v': - arguments->verbosity++; - break; - - default: - return ARGP_ERR_UNKNOWN; - } - - return 0; -} - -static struct argp argp = { - options, argp_parser, N_("[OPTIONS]"), - N_("Glue 32-bit and 64-bit binary into Apple universal one."), - NULL, NULL, NULL -}; - -int -main (int argc, char *argv[]) -{ - struct arguments arguments; - - grub_util_host_init (&argc, &argv); - - /* Check for options. */ - memset (&arguments, 0, sizeof (struct arguments)); - if (argp_parse (&argp, argc, argv, 0, 0, &arguments) != 0) - { - fprintf (stderr, "%s", _("Error in parsing command line arguments\n")); - exit(1); - } - - if (!arguments.input32 || !arguments.input64) - { - fprintf (stderr, "%s", _("Missing input file\n")); - exit(1); - } - - grub_util_glue_efi (arguments.input32, - arguments.input64, - arguments.output); - - return 0; -} diff --git a/thirdparty/grub-2.04/util/grub-install-common.c b/thirdparty/grub-2.04/util/grub-install-common.c deleted file mode 100644 index ca0ac612a..000000000 --- a/thirdparty/grub-2.04/util/grub-install-common.c +++ /dev/null @@ -1,999 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 1999,2000,2001,2002,2003,2004,2005,2006,2007,2008,2009,2010,2011,2012,2013 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#include -#include -#include -#include -#include - -#pragma GCC diagnostic ignored "-Wformat-nonliteral" - -char * -grub_install_help_filter (int key, const char *text, - void *input __attribute__ ((unused))) -{ - switch (key) - { - case GRUB_INSTALL_OPTIONS_INSTALL_THEMES: - return xasprintf(text, "starfield"); - case GRUB_INSTALL_OPTIONS_INSTALL_FONTS: - return xasprintf(text, "unicode"); - case GRUB_INSTALL_OPTIONS_DIRECTORY: - case GRUB_INSTALL_OPTIONS_DIRECTORY2: - return xasprintf(text, grub_util_get_pkglibdir ()); - case GRUB_INSTALL_OPTIONS_LOCALE_DIRECTORY: - return xasprintf(text, grub_util_get_localedir ()); - case GRUB_INSTALL_OPTIONS_THEMES_DIRECTORY: - return grub_util_path_concat (2, grub_util_get_pkgdatadir (), "themes"); - default: - return (char *) text; - } -} - -#pragma GCC diagnostic error "-Wformat-nonliteral" - -static int (*compress_func) (const char *src, const char *dest) = NULL; -char *grub_install_copy_buffer; -static char *dtb; - -int -grub_install_copy_file (const char *src, - const char *dst, - int is_needed) -{ - grub_util_fd_t in, out; - ssize_t r; - - grub_util_info ("copying `%s' -> `%s'", src, dst); - - in = grub_util_fd_open (src, GRUB_UTIL_FD_O_RDONLY); - if (!GRUB_UTIL_FD_IS_VALID (in)) - { - if (is_needed) - grub_util_error (_("cannot open `%s': %s"), src, grub_util_fd_strerror ()); - else - grub_util_info (_("cannot open `%s': %s"), src, grub_util_fd_strerror ()); - return 0; - } - out = grub_util_fd_open (dst, GRUB_UTIL_FD_O_WRONLY - | GRUB_UTIL_FD_O_CREATTRUNC); - if (!GRUB_UTIL_FD_IS_VALID (out)) - { - grub_util_error (_("cannot open `%s': %s"), dst, - grub_util_fd_strerror ()); - grub_util_fd_close (in); - return 0; - } - - if (!grub_install_copy_buffer) - grub_install_copy_buffer = xmalloc (GRUB_INSTALL_COPY_BUFFER_SIZE); - - while (1) - { - r = grub_util_fd_read (in, grub_install_copy_buffer, GRUB_INSTALL_COPY_BUFFER_SIZE); - if (r <= 0) - break; - r = grub_util_fd_write (out, grub_install_copy_buffer, r); - if (r <= 0) - break; - } - if (grub_util_fd_sync (out) < 0) - r = -1; - if (grub_util_fd_close (in) < 0) - r = -1; - if (grub_util_fd_close (out) < 0) - r = -1; - - if (r < 0) - grub_util_error (_("cannot copy `%s' to `%s': %s"), - src, dst, grub_util_fd_strerror ()); - - return 1; -} - -static int -grub_install_compress_file (const char *in_name, - const char *out_name, - int is_needed) -{ - int ret; - - if (!compress_func) - ret = grub_install_copy_file (in_name, out_name, is_needed); - else - { - grub_util_info ("compressing `%s' -> `%s'", in_name, out_name); - ret = !compress_func (in_name, out_name); - if (!ret && is_needed) - grub_util_warn (_("can't compress `%s' to `%s'"), in_name, out_name); - } - - if (!ret && is_needed) - grub_util_error (_("cannot copy `%s' to `%s': %s"), - in_name, out_name, grub_util_fd_strerror ()); - - return ret; -} - -static int -is_path_separator (char c) -{ -#if defined (__MINGW32__) || defined (__CYGWIN__) - if (c == '\\') - return 1; -#endif - if (c == '/') - return 1; - return 0; -} - -void -grub_install_mkdir_p (const char *dst) -{ - char *t = xstrdup (dst); - char *p; - for (p = t; *p; p++) - { - if (is_path_separator (*p)) - { - char s = *p; - *p = '\0'; - grub_util_mkdir (t); - *p = s; - } - } - grub_util_mkdir (t); - free (t); -} - -static void -clean_grub_dir (const char *di) -{ - grub_util_fd_dir_t d; - grub_util_fd_dirent_t de; - - d = grub_util_fd_opendir (di); - if (!d) - grub_util_error (_("cannot open directory `%s': %s"), - di, grub_util_fd_strerror ()); - - while ((de = grub_util_fd_readdir (d))) - { - const char *ext = strrchr (de->d_name, '.'); - if ((ext && (strcmp (ext, ".mod") == 0 - || strcmp (ext, ".lst") == 0 - || strcmp (ext, ".img") == 0 - || strcmp (ext, ".mo") == 0) - && strcmp (de->d_name, "menu.lst") != 0) - || strcmp (de->d_name, "efiemu32.o") == 0 - || strcmp (de->d_name, "efiemu64.o") == 0) - { - char *x = grub_util_path_concat (2, di, de->d_name); - if (grub_util_unlink (x) < 0) - grub_util_error (_("cannot delete `%s': %s"), x, - grub_util_fd_strerror ()); - free (x); - } - } - grub_util_fd_closedir (d); -} - -struct install_list -{ - int is_default; - char **entries; - size_t n_entries; - size_t n_alloc; -}; - -struct install_list install_modules = { 1, 0, 0, 0 }; -struct install_list modules = { 1, 0, 0, 0 }; -struct install_list install_locales = { 1, 0, 0, 0 }; -struct install_list install_fonts = { 1, 0, 0, 0 }; -struct install_list install_themes = { 1, 0, 0, 0 }; -char *grub_install_source_directory = NULL; -char *grub_install_locale_directory = NULL; -char *grub_install_themes_directory = NULL; - -void -grub_install_push_module (const char *val) -{ - modules.is_default = 0; - if (modules.n_entries + 1 >= modules.n_alloc) - { - modules.n_alloc <<= 1; - if (modules.n_alloc < 16) - modules.n_alloc = 16; - modules.entries = xrealloc (modules.entries, - modules.n_alloc * sizeof (*modules.entries)); - } - modules.entries[modules.n_entries++] = xstrdup (val); - modules.entries[modules.n_entries] = NULL; -} - -void -grub_install_pop_module (void) -{ - modules.n_entries--; - free (modules.entries[modules.n_entries]); - modules.entries[modules.n_entries] = NULL; -} - - -static void -handle_install_list (struct install_list *il, const char *val, - int default_all) -{ - const char *ptr; - char **ce; - il->is_default = 0; - free (il->entries); - il->entries = NULL; - il->n_entries = 0; - if (strcmp (val, "all") == 0 && default_all) - { - il->is_default = 1; - return; - } - ptr = val; - while (1) - { - while (*ptr && grub_isspace (*ptr)) - ptr++; - if (!*ptr) - break; - while (*ptr && !grub_isspace (*ptr)) - ptr++; - il->n_entries++; - } - il->n_alloc = il->n_entries + 1; - il->entries = xmalloc (il->n_alloc * sizeof (il->entries[0])); - ptr = val; - for (ce = il->entries; ; ce++) - { - const char *bptr; - while (*ptr && grub_isspace (*ptr)) - ptr++; - if (!*ptr) - break; - bptr = ptr; - while (*ptr && !grub_isspace (*ptr)) - ptr++; - *ce = xmalloc (ptr - bptr + 1); - memcpy (*ce, bptr, ptr - bptr); - (*ce)[ptr - bptr] = '\0'; - } - *ce = NULL; -} - -static char **pubkeys; -static size_t npubkeys; -static grub_compression_t compression; - -int -grub_install_parse (int key, char *arg) -{ - switch (key) - { - case 'C': - if (grub_strcmp (arg, "xz") == 0) - { -#ifdef HAVE_LIBLZMA - compression = GRUB_COMPRESSION_XZ; -#else - grub_util_error ("%s", - _("grub-mkimage is compiled without XZ support")); -#endif - } - else if (grub_strcmp (arg, "none") == 0) - compression = GRUB_COMPRESSION_NONE; - else if (grub_strcmp (arg, "auto") == 0) - compression = GRUB_COMPRESSION_AUTO; - else - grub_util_error (_("Unknown compression format %s"), arg); - return 1; - case 'k': - pubkeys = xrealloc (pubkeys, - sizeof (pubkeys[0]) - * (npubkeys + 1)); - pubkeys[npubkeys++] = xstrdup (arg); - return 1; - - case GRUB_INSTALL_OPTIONS_VERBOSITY: - verbosity++; - return 1; - - case GRUB_INSTALL_OPTIONS_DIRECTORY: - case GRUB_INSTALL_OPTIONS_DIRECTORY2: - free (grub_install_source_directory); - grub_install_source_directory = xstrdup (arg); - return 1; - case GRUB_INSTALL_OPTIONS_LOCALE_DIRECTORY: - free (grub_install_locale_directory); - grub_install_locale_directory = xstrdup (arg); - return 1; - case GRUB_INSTALL_OPTIONS_THEMES_DIRECTORY: - free (grub_install_themes_directory); - grub_install_themes_directory = xstrdup (arg); - return 1; - case GRUB_INSTALL_OPTIONS_INSTALL_MODULES: - handle_install_list (&install_modules, arg, 0); - return 1; - case GRUB_INSTALL_OPTIONS_MODULES: - handle_install_list (&modules, arg, 0); - return 1; - case GRUB_INSTALL_OPTIONS_INSTALL_LOCALES: - handle_install_list (&install_locales, arg, 0); - return 1; - case GRUB_INSTALL_OPTIONS_INSTALL_THEMES: - handle_install_list (&install_themes, arg, 0); - return 1; - case GRUB_INSTALL_OPTIONS_INSTALL_FONTS: - handle_install_list (&install_fonts, arg, 0); - return 1; - case GRUB_INSTALL_OPTIONS_DTB: - if (dtb) - free (dtb); - dtb = xstrdup (arg); - return 1; - case GRUB_INSTALL_OPTIONS_INSTALL_COMPRESS: - if (strcmp (arg, "no") == 0 - || strcmp (arg, "none") == 0) - { - compress_func = NULL; - return 1; - } - if (strcmp (arg, "gz") == 0) - { - compress_func = grub_install_compress_gzip; - return 1; - } - if (strcmp (arg, "xz") == 0) - { - compress_func = grub_install_compress_xz; - return 1; - } - if (strcmp (arg, "lzo") == 0) - { - compress_func = grub_install_compress_lzop; - return 1; - } - grub_util_error (_("Unrecognized compression `%s'"), arg); - case GRUB_INSTALL_OPTIONS_GRUB_MKIMAGE: - return 1; - default: - return 0; - } -} - -static int -decompressors (void) -{ - if (compress_func == grub_install_compress_gzip) - { - grub_install_push_module ("gzio"); - return 1; - } - if (compress_func == grub_install_compress_xz) - { - grub_install_push_module ("xzio"); - grub_install_push_module ("gcry_crc"); - return 2; - } - if (compress_func == grub_install_compress_lzop) - { - grub_install_push_module ("lzopio"); - grub_install_push_module ("adler32"); - grub_install_push_module ("gcry_crc"); - return 3; - } - return 0; -} - -void -grub_install_make_image_wrap_file (const char *dir, const char *prefix, - FILE *fp, const char *outname, - char *memdisk_path, - char *config_path, - const char *mkimage_target, int note) -{ - const struct grub_install_image_target_desc *tgt; - const char *const compnames[] = - { - [GRUB_COMPRESSION_AUTO] = "auto", - [GRUB_COMPRESSION_NONE] = "none", - [GRUB_COMPRESSION_XZ] = "xz", - [GRUB_COMPRESSION_LZMA] = "lzma", - }; - grub_size_t slen = 1; - char *s, *p; - char **pk, **md; - int dc = decompressors (); - - if (memdisk_path) - slen += 20 + grub_strlen (memdisk_path); - if (config_path) - slen += 20 + grub_strlen (config_path); - - for (pk = pubkeys; pk < pubkeys + npubkeys; pk++) - slen += 20 + grub_strlen (*pk); - - for (md = modules.entries; *md; md++) - { - slen += 10 + grub_strlen (*md); - } - - p = s = xmalloc (slen); - if (memdisk_path) - { - p = grub_stpcpy (p, "--memdisk '"); - p = grub_stpcpy (p, memdisk_path); - *p++ = '\''; - *p++ = ' '; - } - if (config_path) - { - p = grub_stpcpy (p, "--config '"); - p = grub_stpcpy (p, config_path); - *p++ = '\''; - *p++ = ' '; - } - for (pk = pubkeys; pk < pubkeys + npubkeys; pk++) - { - p = grub_stpcpy (p, "--pubkey '"); - p = grub_stpcpy (p, *pk); - *p++ = '\''; - *p++ = ' '; - } - - for (md = modules.entries; *md; md++) - { - *p++ = '\''; - p = grub_stpcpy (p, *md); - *p++ = '\''; - *p++ = ' '; - } - - *p = '\0'; - - grub_util_info ("grub-mkimage --directory '%s' --prefix '%s'" - " --output '%s' " - " --dtb '%s' " - "--format '%s' --compression '%s' %s %s\n", - dir, prefix, - outname, dtb ? : "", mkimage_target, - compnames[compression], note ? "--note" : "", s); - free (s); - - tgt = grub_install_get_image_target (mkimage_target); - if (!tgt) - grub_util_error (_("unknown target format %s"), mkimage_target); - - grub_install_generate_image (dir, prefix, fp, outname, - modules.entries, memdisk_path, - pubkeys, npubkeys, config_path, tgt, - note, compression, dtb); - while (dc--) - grub_install_pop_module (); -} - -void -grub_install_make_image_wrap (const char *dir, const char *prefix, - const char *outname, char *memdisk_path, - char *config_path, - const char *mkimage_target, int note) -{ - FILE *fp; - - fp = grub_util_fopen (outname, "wb"); - if (! fp) - grub_util_error (_("cannot open `%s': %s"), outname, - strerror (errno)); - grub_install_make_image_wrap_file (dir, prefix, fp, outname, - memdisk_path, config_path, - mkimage_target, note); - if (grub_util_file_sync (fp) < 0) - grub_util_error (_("cannot sync `%s': %s"), outname, strerror (errno)); - fclose (fp); -} - -static void -copy_by_ext (const char *srcd, - const char *dstd, - const char *extf, - int req) -{ - grub_util_fd_dir_t d; - grub_util_fd_dirent_t de; - - d = grub_util_fd_opendir (srcd); - if (!d && !req) - return; - if (!d) - grub_util_error (_("cannot open directory `%s': %s"), - srcd, grub_util_fd_strerror ()); - - while ((de = grub_util_fd_readdir (d))) - { - const char *ext = strrchr (de->d_name, '.'); - if (ext && strcmp (ext, extf) == 0) - { - char *srcf = grub_util_path_concat (2, srcd, de->d_name); - char *dstf = grub_util_path_concat (2, dstd, de->d_name); - grub_install_compress_file (srcf, dstf, 1); - free (srcf); - free (dstf); - } - } - grub_util_fd_closedir (d); -} - -static void -copy_all (const char *srcd, - const char *dstd) -{ - grub_util_fd_dir_t d; - grub_util_fd_dirent_t de; - - d = grub_util_fd_opendir (srcd); - if (!d) - grub_util_error (_("cannot open directory `%s': %s"), - srcd, grub_util_fd_strerror ()); - - while ((de = grub_util_fd_readdir (d))) - { - char *srcf; - char *dstf; - if (strcmp (de->d_name, ".") == 0 - || strcmp (de->d_name, "..") == 0) - continue; - srcf = grub_util_path_concat (2, srcd, de->d_name); - if (grub_util_is_special_file (srcf) - || grub_util_is_directory (srcf)) - continue; - dstf = grub_util_path_concat (2, dstd, de->d_name); - grub_install_compress_file (srcf, dstf, 1); - free (srcf); - free (dstf); - } - grub_util_fd_closedir (d); -} - -#if !(defined (GRUB_UTIL) && defined(ENABLE_NLS) && ENABLE_NLS) -static const char * -get_localedir (void) -{ - if (grub_install_locale_directory) - return grub_install_locale_directory; - else - return grub_util_get_localedir (); -} - -static void -copy_locales (const char *dstd) -{ - grub_util_fd_dir_t d; - grub_util_fd_dirent_t de; - const char *locale_dir = get_localedir (); - - d = grub_util_fd_opendir (locale_dir); - if (!d) - { - grub_util_warn (_("cannot open directory `%s': %s"), - locale_dir, grub_util_fd_strerror ()); - return; - } - - while ((de = grub_util_fd_readdir (d))) - { - char *srcf; - char *dstf; - char *ext; - if (strcmp (de->d_name, ".") == 0) - continue; - if (strcmp (de->d_name, "..") == 0) - continue; - ext = grub_strrchr (de->d_name, '.'); - if (ext && (grub_strcmp (ext, ".mo") == 0 - || grub_strcmp (ext, ".gmo") == 0)) - { - srcf = grub_util_path_concat (2, locale_dir, de->d_name); - dstf = grub_util_path_concat (2, dstd, de->d_name); - ext = grub_strrchr (dstf, '.'); - grub_strcpy (ext, ".mo"); - } - else - { - srcf = grub_util_path_concat_ext (4, locale_dir, de->d_name, - "LC_MESSAGES", PACKAGE, ".mo"); - dstf = grub_util_path_concat_ext (2, dstd, de->d_name, ".mo"); - } - grub_install_compress_file (srcf, dstf, 0); - free (srcf); - free (dstf); - } - grub_util_fd_closedir (d); -} -#endif - -static void -grub_install_copy_nls(const char *src __attribute__ ((unused)), - const char *dst __attribute__ ((unused))) -{ -#if !(defined (GRUB_UTIL) && defined(ENABLE_NLS) && ENABLE_NLS) - char *dst_locale; - - dst_locale = grub_util_path_concat (2, dst, "locale"); - grub_install_mkdir_p (dst_locale); - clean_grub_dir (dst_locale); - - if (install_locales.is_default) - { - char *srcd = grub_util_path_concat (2, src, "po"); - copy_by_ext (srcd, dst_locale, ".mo", 0); - copy_locales (dst_locale); - free (srcd); - } - else - { - size_t i; - const char *locale_dir = get_localedir (); - - for (i = 0; i < install_locales.n_entries; i++) - { - char *srcf = grub_util_path_concat_ext (3, src, "po", - install_locales.entries[i], - ".mo"); - char *dstf = grub_util_path_concat_ext (2, dst_locale, - install_locales.entries[i], - ".mo"); - if (grub_install_compress_file (srcf, dstf, 0)) - { - free (srcf); - free (dstf); - continue; - } - free (srcf); - srcf = grub_util_path_concat_ext (4, locale_dir, - install_locales.entries[i], - "LC_MESSAGES", PACKAGE, ".mo"); - if (grub_install_compress_file (srcf, dstf, 0) == 0) - grub_util_error (_("cannot find locale `%s'"), - install_locales.entries[i]); - free (srcf); - free (dstf); - } - } - free (dst_locale); -#endif -} - -static struct -{ - const char *cpu; - const char *platform; -} platforms[GRUB_INSTALL_PLATFORM_MAX] = - { - [GRUB_INSTALL_PLATFORM_I386_PC] = { "i386", "pc" }, - [GRUB_INSTALL_PLATFORM_I386_EFI] = { "i386", "efi" }, - [GRUB_INSTALL_PLATFORM_I386_QEMU] = { "i386", "qemu" }, - [GRUB_INSTALL_PLATFORM_I386_COREBOOT] = { "i386", "coreboot" }, - [GRUB_INSTALL_PLATFORM_I386_MULTIBOOT] = { "i386", "multiboot" }, - [GRUB_INSTALL_PLATFORM_I386_IEEE1275] = { "i386", "ieee1275" }, - [GRUB_INSTALL_PLATFORM_X86_64_EFI] = { "x86_64", "efi" }, - [GRUB_INSTALL_PLATFORM_I386_XEN] = { "i386", "xen" }, - [GRUB_INSTALL_PLATFORM_X86_64_XEN] = { "x86_64", "xen" }, - [GRUB_INSTALL_PLATFORM_I386_XEN_PVH] = { "i386", "xen_pvh" }, - [GRUB_INSTALL_PLATFORM_MIPSEL_LOONGSON] = { "mipsel", "loongson" }, - [GRUB_INSTALL_PLATFORM_MIPSEL_QEMU_MIPS] = { "mipsel", "qemu_mips" }, - [GRUB_INSTALL_PLATFORM_MIPS_QEMU_MIPS] = { "mips", "qemu_mips" }, - [GRUB_INSTALL_PLATFORM_MIPSEL_ARC] = { "mipsel", "arc" }, - [GRUB_INSTALL_PLATFORM_MIPS_ARC] = { "mips", "arc" }, - [GRUB_INSTALL_PLATFORM_SPARC64_IEEE1275] = { "sparc64", "ieee1275" }, - [GRUB_INSTALL_PLATFORM_POWERPC_IEEE1275] = { "powerpc", "ieee1275" }, - [GRUB_INSTALL_PLATFORM_IA64_EFI] = { "ia64", "efi" }, - [GRUB_INSTALL_PLATFORM_ARM_EFI] = { "arm", "efi" }, - [GRUB_INSTALL_PLATFORM_ARM64_EFI] = { "arm64", "efi" }, - [GRUB_INSTALL_PLATFORM_ARM_UBOOT] = { "arm", "uboot" }, - [GRUB_INSTALL_PLATFORM_ARM_COREBOOT] = { "arm", "coreboot" }, - [GRUB_INSTALL_PLATFORM_RISCV32_EFI] = { "riscv32", "efi" }, - [GRUB_INSTALL_PLATFORM_RISCV64_EFI] = { "riscv64", "efi" }, - }; - -char * -grub_install_get_platforms_string (void) -{ - char **arr = xmalloc (sizeof (char *) * ARRAY_SIZE (platforms)); - int platform_strins_len = 0; - char *platforms_string; - char *ptr; - unsigned i; - for (i = 0; i < ARRAY_SIZE (platforms); i++) - { - arr[i] = xasprintf ("%s-%s", platforms[i].cpu, - platforms[i].platform); - platform_strins_len += strlen (arr[i]) + 2; - } - ptr = platforms_string = xmalloc (platform_strins_len); - qsort (arr, ARRAY_SIZE (platforms), sizeof (char *), grub_qsort_strcmp); - for (i = 0; i < ARRAY_SIZE (platforms); i++) - { - strcpy (ptr, arr[i]); - ptr += strlen (arr[i]); - *ptr++ = ','; - *ptr++ = ' '; - free (arr[i]); - } - ptr[-2] = 0; - free (arr); - - return platforms_string; -} - -char * -grub_install_get_platform_name (enum grub_install_plat platid) -{ - return xasprintf ("%s-%s", platforms[platid].cpu, - platforms[platid].platform); -} - -const char * -grub_install_get_platform_cpu (enum grub_install_plat platid) -{ - return platforms[platid].cpu; -} - -const char * -grub_install_get_platform_platform (enum grub_install_plat platid) -{ - return platforms[platid].platform; -} - - -void -grub_install_copy_files (const char *src, - const char *dst, - enum grub_install_plat platid) -{ - char *dst_platform, *dst_fonts; - const char *pkgdatadir = grub_util_get_pkgdatadir (); - char *themes_dir; - - { - char *platform; - platform = xasprintf ("%s-%s", platforms[platid].cpu, - platforms[platid].platform); - dst_platform = grub_util_path_concat (2, dst, platform); - free (platform); - } - dst_fonts = grub_util_path_concat (2, dst, "fonts"); - grub_install_mkdir_p (dst_platform); - clean_grub_dir (dst); - clean_grub_dir (dst_platform); - - grub_install_copy_nls(src, dst); - - if (install_modules.is_default) - copy_by_ext (src, dst_platform, ".mod", 1); - else - { - struct grub_util_path_list *path_list, *p; - - path_list = grub_util_resolve_dependencies (src, "moddep.lst", - install_modules.entries); - for (p = path_list; p; p = p->next) - { - const char *srcf = p->name; - const char *dir; - char *dstf; - - dir = grub_strrchr (srcf, '/'); - if (dir) - dir++; - else - dir = srcf; - dstf = grub_util_path_concat (2, dst_platform, dir); - grub_install_compress_file (srcf, dstf, 1); - free (dstf); - } - - grub_util_free_path_list (path_list); - } - - const char *pkglib_DATA[] = {"efiemu32.o", "efiemu64.o", - "moddep.lst", "command.lst", - "fs.lst", "partmap.lst", - "parttool.lst", - "video.lst", "crypto.lst", - "terminal.lst", "modinfo.sh" }; - size_t i; - - for (i = 0; i < ARRAY_SIZE (pkglib_DATA); i++) - { - char *srcf = grub_util_path_concat (2, src, pkglib_DATA[i]); - char *dstf = grub_util_path_concat (2, dst_platform, pkglib_DATA[i]); - if (i == 0 || i == 1) - grub_install_compress_file (srcf, dstf, 0); - else - grub_install_compress_file (srcf, dstf, 1); - free (srcf); - free (dstf); - } - - if (install_themes.is_default) - { - install_themes.is_default = 0; - install_themes.n_entries = 1; - install_themes.entries = xmalloc (2 * sizeof (install_themes.entries[0])); - install_themes.entries[0] = xstrdup ("starfield"); - install_themes.entries[1] = NULL; - } - - if (grub_install_themes_directory) - themes_dir = xstrdup (grub_install_themes_directory); - else - themes_dir = grub_util_path_concat (2, grub_util_get_pkgdatadir (), - "themes"); - - for (i = 0; i < install_themes.n_entries; i++) - { - char *srcf = grub_util_path_concat (3, themes_dir, - install_themes.entries[i], - "theme.txt"); - if (grub_util_is_regular (srcf)) - { - char *srcd = grub_util_path_concat (2, themes_dir, - install_themes.entries[i]); - char *dstd = grub_util_path_concat (3, dst, "themes", - install_themes.entries[i]); - grub_install_mkdir_p (dstd); - copy_all (srcd, dstd); - free (srcd); - free (dstd); - } - free (srcf); - } - - free (themes_dir); - - if (install_fonts.is_default) - { - install_fonts.is_default = 0; - install_fonts.n_entries = 1; - install_fonts.entries = xmalloc (2 * sizeof (install_fonts.entries[0])); - install_fonts.entries[0] = xstrdup ("unicode"); - install_fonts.entries[1] = NULL; - } - - grub_install_mkdir_p (dst_fonts); - - for (i = 0; i < install_fonts.n_entries; i++) - { - char *srcf = grub_util_path_concat_ext (2, pkgdatadir, - install_fonts.entries[i], - ".pf2"); - char *dstf = grub_util_path_concat_ext (2, dst_fonts, - install_fonts.entries[i], - ".pf2"); - - grub_install_compress_file (srcf, dstf, 0); - free (srcf); - free (dstf); - } - - free (dst_platform); - free (dst_fonts); -} - -enum grub_install_plat -grub_install_get_target (const char *src) -{ - char *fn; - grub_util_fd_t f; - char buf[8192]; - ssize_t r; - char *c, *pl, *p; - size_t i; - fn = grub_util_path_concat (2, src, "modinfo.sh"); - f = grub_util_fd_open (fn, GRUB_UTIL_FD_O_RDONLY); - if (!GRUB_UTIL_FD_IS_VALID (f)) - grub_util_error (_("%s doesn't exist. Please specify --target or --directory"), - fn); - r = grub_util_fd_read (f, buf, sizeof (buf) - 1); - if (r < 0) - grub_util_error (_("cannot read `%s': %s"), fn, strerror (errno)); - grub_util_fd_close (f); - buf[r] = '\0'; - c = strstr (buf, "grub_modinfo_target_cpu="); - if (!c || (c != buf && !grub_isspace (*(c-1)))) - grub_util_error (_("invalid modinfo file `%s'"), fn); - pl = strstr (buf, "grub_modinfo_platform="); - if (!pl || (pl != buf && !grub_isspace (*(pl-1)))) - grub_util_error (_("invalid modinfo file `%s'"), fn); - c += sizeof ("grub_modinfo_target_cpu=") - 1; - pl += sizeof ("grub_modinfo_platform=") - 1; - for (p = c; *p && !grub_isspace (*p); p++); - *p = '\0'; - for (p = pl; *p && !grub_isspace (*p); p++); - *p = '\0'; - - for (i = 0; i < ARRAY_SIZE (platforms); i++) - if (strcmp (platforms[i].cpu, c) == 0 - && strcmp (platforms[i].platform, pl) == 0) - { - free (fn); - return i; - } - grub_util_error (_("Unknown platform `%s-%s'"), c, pl); -} - - -void -grub_util_unlink_recursive (const char *name) -{ - grub_util_fd_dir_t d; - grub_util_fd_dirent_t de; - - d = grub_util_fd_opendir (name); - - while ((de = grub_util_fd_readdir (d))) - { - char *fp; - if (strcmp (de->d_name, ".") == 0) - continue; - if (strcmp (de->d_name, "..") == 0) - continue; - fp = grub_util_path_concat (2, name, de->d_name); - if (grub_util_is_special_file (fp)) - { - free (fp); - continue; - } - if (grub_util_is_regular (fp)) - grub_util_unlink (fp); - else if (grub_util_is_directory (fp)) - grub_util_unlink_recursive (fp); - free (fp); - } - grub_util_rmdir (name); - grub_util_fd_closedir (d); -} diff --git a/thirdparty/grub-2.04/util/grub-install.c b/thirdparty/grub-2.04/util/grub-install.c deleted file mode 100644 index 8a55ad4b8..000000000 --- a/thirdparty/grub-2.04/util/grub-install.c +++ /dev/null @@ -1,1964 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 1999,2000,2001,2002,2003,2004,2005,2006,2007,2008,2009,2010,2011,2012,2013 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#include - -#pragma GCC diagnostic ignored "-Wmissing-prototypes" -#pragma GCC diagnostic ignored "-Wmissing-declarations" -#include -#pragma GCC diagnostic error "-Wmissing-prototypes" -#pragma GCC diagnostic error "-Wmissing-declarations" - -#include "progname.h" - -static char *target; -static int removable = 0; -static int recheck = 0; -static int update_nvram = 1; -static char *install_device = NULL; -static char *debug_image = NULL; -static char *rootdir = NULL; -static char *bootdir = NULL; -static int allow_floppy = 0; -static int force_file_id = 0; -static char *disk_module = NULL; -static char *efidir = NULL; -static char *macppcdir = NULL; -static int force = 0; -static int have_abstractions = 0; -static int have_cryptodisk = 0; -static char * bootloader_id; -static int have_load_cfg = 0; -static FILE * load_cfg_f = NULL; -static char *load_cfg; -static int install_bootsector = 1; -static char *label_font; -static char *label_color; -static char *label_bgcolor; -static char *product_version; -static int add_rs_codes = 1; - -enum - { - OPTION_BOOT_DIRECTORY = 0x301, - OPTION_ROOT_DIRECTORY, - OPTION_TARGET, - OPTION_SETUP, - OPTION_MKRELPATH, - OPTION_MKDEVICEMAP, - OPTION_PROBE, - OPTION_EDITENV, - OPTION_ALLOW_FLOPPY, - OPTION_RECHECK, - OPTION_FORCE, - OPTION_FORCE_FILE_ID, - OPTION_NO_NVRAM, - OPTION_REMOVABLE, - OPTION_BOOTLOADER_ID, - OPTION_EFI_DIRECTORY, - OPTION_FONT, - OPTION_DEBUG, - OPTION_DEBUG_IMAGE, - OPTION_NO_FLOPPY, - OPTION_DISK_MODULE, - OPTION_NO_BOOTSECTOR, - OPTION_NO_RS_CODES, - OPTION_MACPPC_DIRECTORY, - OPTION_LABEL_FONT, - OPTION_LABEL_COLOR, - OPTION_LABEL_BGCOLOR, - OPTION_PRODUCT_VERSION - }; - -static int fs_probe = 1; - -static error_t -argp_parser (int key, char *arg, struct argp_state *state) -{ - if (grub_install_parse (key, arg)) - return 0; - switch (key) - { - case OPTION_FORCE_FILE_ID: - force_file_id = 1; - return 0; - case 's': - fs_probe = 0; - return 0; - - case OPTION_SETUP: - if (!grub_strstr (arg, "setup")) - install_bootsector = 0; - return 0; - - case OPTION_PRODUCT_VERSION: - free (product_version); - product_version = xstrdup (arg); - return 0; - case OPTION_LABEL_FONT: - free (label_font); - label_font = xstrdup (arg); - return 0; - - case OPTION_LABEL_COLOR: - free (label_color); - label_color = xstrdup (arg); - return 0; - - case OPTION_LABEL_BGCOLOR: - free (label_bgcolor); - label_bgcolor = xstrdup (arg); - return 0; - - /* Accept and ignore for compatibility. */ - case OPTION_FONT: - case OPTION_MKRELPATH: - case OPTION_PROBE: - case OPTION_EDITENV: - case OPTION_MKDEVICEMAP: - case OPTION_NO_FLOPPY: - return 0; - case OPTION_ROOT_DIRECTORY: - /* Accept for compatibility. */ - free (rootdir); - rootdir = xstrdup (arg); - return 0; - - case OPTION_BOOT_DIRECTORY: - free (bootdir); - bootdir = xstrdup (arg); - return 0; - - case OPTION_MACPPC_DIRECTORY: - free (macppcdir); - macppcdir = xstrdup (arg); - return 0; - - case OPTION_EFI_DIRECTORY: - free (efidir); - efidir = xstrdup (arg); - return 0; - - case OPTION_DISK_MODULE: - free (disk_module); - disk_module = xstrdup (arg); - return 0; - - case OPTION_TARGET: - free (target); - target = xstrdup (arg); - return 0; - - case OPTION_DEBUG_IMAGE: - free (debug_image); - debug_image = xstrdup (arg); - return 0; - - case OPTION_NO_NVRAM: - update_nvram = 0; - return 0; - - case OPTION_FORCE: - force = 1; - return 0; - - case OPTION_RECHECK: - recheck = 1; - return 0; - - case OPTION_REMOVABLE: - removable = 1; - return 0; - - case OPTION_ALLOW_FLOPPY: - allow_floppy = 1; - return 0; - - case OPTION_NO_BOOTSECTOR: - install_bootsector = 0; - return 0; - - case OPTION_NO_RS_CODES: - add_rs_codes = 0; - return 0; - - case OPTION_DEBUG: - verbosity++; - return 0; - - case OPTION_BOOTLOADER_ID: - free (bootloader_id); - bootloader_id = xstrdup (arg); - return 0; - - case ARGP_KEY_ARG: - if (install_device) - grub_util_error ("%s", _("More than one install device?")); - install_device = xstrdup (arg); - return 0; - - default: - return ARGP_ERR_UNKNOWN; - } -} - - -static struct argp_option options[] = { - GRUB_INSTALL_OPTIONS, - {"boot-directory", OPTION_BOOT_DIRECTORY, N_("DIR"), - 0, N_("install GRUB images under the directory DIR/%s instead of the %s directory"), 2}, - {"root-directory", OPTION_ROOT_DIRECTORY, N_("DIR"), - OPTION_HIDDEN, 0, 2}, - {"font", OPTION_FONT, N_("FILE"), - OPTION_HIDDEN, 0, 2}, - {"target", OPTION_TARGET, N_("TARGET"), - /* TRANSLATORS: "TARGET" as in "target platform". */ - 0, N_("install GRUB for TARGET platform [default=%s]; available targets: %s"), 2}, - {"grub-setup", OPTION_SETUP, "FILE", OPTION_HIDDEN, 0, 2}, - {"grub-mkrelpath", OPTION_MKRELPATH, "FILE", OPTION_HIDDEN, 0, 2}, - {"grub-mkdevicemap", OPTION_MKDEVICEMAP, "FILE", OPTION_HIDDEN, 0, 2}, - {"grub-probe", OPTION_PROBE, "FILE", OPTION_HIDDEN, 0, 2}, - {"grub-editenv", OPTION_EDITENV, "FILE", OPTION_HIDDEN, 0, 2}, - {"allow-floppy", OPTION_ALLOW_FLOPPY, 0, 0, - /* TRANSLATORS: "may break" doesn't just mean that option wouldn't have any - effect but that it will make the resulting install unbootable from HDD. */ - N_("make the drive also bootable as floppy (default for fdX devices)." - " May break on some BIOSes."), 2}, - {"recheck", OPTION_RECHECK, 0, 0, - N_("delete device map if it already exists"), 2}, - {"force", OPTION_FORCE, 0, 0, - N_("install even if problems are detected"), 2}, - {"force-file-id", OPTION_FORCE_FILE_ID, 0, 0, - N_("use identifier file even if UUID is available"), 2}, - {"disk-module", OPTION_DISK_MODULE, N_("MODULE"), 0, - N_("disk module to use (biosdisk or native). " - "This option is only available on BIOS target."), 2}, - {"no-nvram", OPTION_NO_NVRAM, 0, 0, - N_("don't update the `boot-device'/`Boot*' NVRAM variables. " - "This option is only available on EFI and IEEE1275 targets."), 2}, - {"skip-fs-probe",'s',0, 0, - N_("do not probe for filesystems in DEVICE"), 0}, - {"no-bootsector", OPTION_NO_BOOTSECTOR, 0, 0, - N_("do not install bootsector"), 0}, - {"no-rs-codes", OPTION_NO_RS_CODES, 0, 0, - N_("Do not apply any reed-solomon codes when embedding core.img. " - "This option is only available on x86 BIOS targets."), 0}, - - {"debug", OPTION_DEBUG, 0, OPTION_HIDDEN, 0, 2}, - {"no-floppy", OPTION_NO_FLOPPY, 0, OPTION_HIDDEN, 0, 2}, - {"debug-image", OPTION_DEBUG_IMAGE, N_("STRING"), OPTION_HIDDEN, 0, 2}, - {"removable", OPTION_REMOVABLE, 0, 0, - N_("the installation device is removable. " - "This option is only available on EFI."), 2}, - {"bootloader-id", OPTION_BOOTLOADER_ID, N_("ID"), 0, - N_("the ID of bootloader. This option is only available on EFI and Macs."), 2}, - {"efi-directory", OPTION_EFI_DIRECTORY, N_("DIR"), 0, - N_("use DIR as the EFI System Partition root."), 2}, - {"macppc-directory", OPTION_MACPPC_DIRECTORY, N_("DIR"), 0, - N_("use DIR for PPC MAC install."), 2}, - {"label-font", OPTION_LABEL_FONT, N_("FILE"), 0, N_("use FILE as font for label"), 2}, - {"label-color", OPTION_LABEL_COLOR, N_("COLOR"), 0, N_("use COLOR for label"), 2}, - {"label-bgcolor", OPTION_LABEL_BGCOLOR, N_("COLOR"), 0, N_("use COLOR for label background"), 2}, - {"product-version", OPTION_PRODUCT_VERSION, N_("STRING"), 0, N_("use STRING as product version"), 2}, - {0, 0, 0, 0, 0, 0} -}; - -static const char * -get_default_platform (void) -{ -#ifdef __powerpc__ - return "powerpc-ieee1275"; -#elif defined (__sparc__) || defined (__sparc64__) - return "sparc64-ieee1275"; -#elif defined (__MIPSEL__) - return "mipsel-loongson"; -#elif defined (__MIPSEB__) - return "mips-arc"; -#elif defined (__ia64__) - return "ia64-efi"; -#elif defined (__arm__) - return grub_install_get_default_arm_platform (); -#elif defined (__aarch64__) - return "arm64-efi"; -#elif defined (__amd64__) || defined (__x86_64__) || defined (__i386__) - return grub_install_get_default_x86_platform (); -#else - return NULL; -#endif -} - -#pragma GCC diagnostic ignored "-Wformat-nonliteral" - -static char * -help_filter (int key, const char *text, void *input __attribute__ ((unused))) -{ - switch (key) - { - case OPTION_BOOT_DIRECTORY: - return xasprintf (text, GRUB_DIR_NAME, GRUB_BOOT_DIR_NAME "/" GRUB_DIR_NAME); - case OPTION_TARGET: - { - char *plats = grub_install_get_platforms_string (); - char *ret; - ret = xasprintf (text, get_default_platform (), plats); - free (plats); - return ret; - } - case ARGP_KEY_HELP_POST_DOC: - return xasprintf (text, program_name, GRUB_BOOT_DIR_NAME "/" GRUB_DIR_NAME); - default: - return grub_install_help_filter (key, text, input); - } -} - -#pragma GCC diagnostic error "-Wformat-nonliteral" - -/* TRANSLATORS: INSTALL_DEVICE isn't an identifier and is the DEVICE you - install to. */ -struct argp argp = { - options, argp_parser, N_("[OPTION] [INSTALL_DEVICE]"), - N_("Install GRUB on your drive.")"\v" - N_("INSTALL_DEVICE must be system device filename.\n" - "%s copies GRUB images into %s. On some platforms, it" - " may also install GRUB into the boot sector."), - NULL, help_filter, NULL -}; - -static int -probe_raid_level (grub_disk_t disk) -{ - /* disk might be NULL in the case of a LVM physical volume with no LVM - signature. Ignore such cases here. */ - if (!disk) - return -1; - - if (disk->dev->id != GRUB_DISK_DEVICE_DISKFILTER_ID) - return -1; - - if (disk->name[0] != 'm' || disk->name[1] != 'd') - return -1; - - if (!((struct grub_diskfilter_lv *) disk->data)->segments) - return -1; - return ((struct grub_diskfilter_lv *) disk->data)->segments->type; -} - -static void -push_partmap_module (const char *map, void *data __attribute__ ((unused))) -{ - char buf[50]; - - if (strcmp (map, "openbsd") == 0 || strcmp (map, "netbsd") == 0) - { - grub_install_push_module ("part_bsd"); - return; - } - - snprintf (buf, sizeof (buf), "part_%s", map); - grub_install_push_module (buf); -} - -static void -push_cryptodisk_module (const char *mod, void *data __attribute__ ((unused))) -{ - grub_install_push_module (mod); -} - -static void -probe_mods (grub_disk_t disk) -{ - grub_partition_t part; - grub_disk_memberlist_t list = NULL, tmp; - int raid_level; - - if (disk->partition == NULL) - grub_util_info ("no partition map found for %s", disk->name); - - for (part = disk->partition; part; part = part->parent) - push_partmap_module (part->partmap->name, NULL); - - if (disk->dev->id == GRUB_DISK_DEVICE_DISKFILTER_ID) - { - grub_diskfilter_get_partmap (disk, push_partmap_module, NULL); - have_abstractions = 1; - } - - if (disk->dev->id == GRUB_DISK_DEVICE_DISKFILTER_ID - && (grub_memcmp (disk->name, "lvm/", sizeof ("lvm/") - 1) == 0 || - grub_memcmp (disk->name, "lvmid/", sizeof ("lvmid/") - 1) == 0)) - grub_install_push_module ("lvm"); - - if (disk->dev->id == GRUB_DISK_DEVICE_DISKFILTER_ID - && grub_memcmp (disk->name, "ldm/", sizeof ("ldm/") - 1) == 0) - grub_install_push_module ("ldm"); - - if (disk->dev->id == GRUB_DISK_DEVICE_CRYPTODISK_ID) - { - grub_util_cryptodisk_get_abstraction (disk, - push_cryptodisk_module, NULL); - have_abstractions = 1; - have_cryptodisk = 1; - } - - raid_level = probe_raid_level (disk); - if (raid_level >= 0) - { - grub_install_push_module ("diskfilter"); - if (disk->dev->disk_raidname) - grub_install_push_module (disk->dev->disk_raidname (disk)); - } - if (raid_level == 5) - grub_install_push_module ("raid5rec"); - if (raid_level == 6) - grub_install_push_module ("raid6rec"); - - /* In case of LVM/RAID, check the member devices as well. */ - if (disk->dev->disk_memberlist) - list = disk->dev->disk_memberlist (disk); - while (list) - { - probe_mods (list->disk); - tmp = list->next; - free (list); - list = tmp; - } -} - -static int -have_bootdev (enum grub_install_plat pl) -{ - switch (pl) - { - case GRUB_INSTALL_PLATFORM_I386_PC: - case GRUB_INSTALL_PLATFORM_I386_EFI: - case GRUB_INSTALL_PLATFORM_X86_64_EFI: - case GRUB_INSTALL_PLATFORM_IA64_EFI: - case GRUB_INSTALL_PLATFORM_ARM_EFI: - case GRUB_INSTALL_PLATFORM_ARM64_EFI: - case GRUB_INSTALL_PLATFORM_RISCV32_EFI: - case GRUB_INSTALL_PLATFORM_RISCV64_EFI: - case GRUB_INSTALL_PLATFORM_I386_IEEE1275: - case GRUB_INSTALL_PLATFORM_SPARC64_IEEE1275: - case GRUB_INSTALL_PLATFORM_POWERPC_IEEE1275: - case GRUB_INSTALL_PLATFORM_MIPSEL_ARC: - case GRUB_INSTALL_PLATFORM_MIPS_ARC: - return 1; - - case GRUB_INSTALL_PLATFORM_I386_QEMU: - case GRUB_INSTALL_PLATFORM_I386_COREBOOT: - case GRUB_INSTALL_PLATFORM_ARM_COREBOOT: - case GRUB_INSTALL_PLATFORM_I386_MULTIBOOT: - case GRUB_INSTALL_PLATFORM_MIPSEL_QEMU_MIPS: - case GRUB_INSTALL_PLATFORM_MIPS_QEMU_MIPS: - - case GRUB_INSTALL_PLATFORM_MIPSEL_LOONGSON: - case GRUB_INSTALL_PLATFORM_ARM_UBOOT: - - case GRUB_INSTALL_PLATFORM_I386_XEN: - case GRUB_INSTALL_PLATFORM_X86_64_XEN: - case GRUB_INSTALL_PLATFORM_I386_XEN_PVH: - return 0; - - /* pacify warning. */ - case GRUB_INSTALL_PLATFORM_MAX: - return 0; - } - return 0; -} - -static void -probe_cryptodisk_uuid (grub_disk_t disk) -{ - grub_disk_memberlist_t list = NULL, tmp; - - /* In case of LVM/RAID, check the member devices as well. */ - if (disk->dev->disk_memberlist) - { - list = disk->dev->disk_memberlist (disk); - } - while (list) - { - probe_cryptodisk_uuid (list->disk); - tmp = list->next; - free (list); - list = tmp; - } - if (disk->dev->id == GRUB_DISK_DEVICE_CRYPTODISK_ID) - { - const char *uuid = grub_util_cryptodisk_get_uuid (disk); - if (!load_cfg_f) - load_cfg_f = grub_util_fopen (load_cfg, "wb"); - have_load_cfg = 1; - - fprintf (load_cfg_f, "cryptomount -u %s\n", - uuid); - } -} - -static int -is_same_disk (const char *a, const char *b) -{ - while (1) - { - if ((*a == ',' || *a == '\0') && (*b == ',' || *b == '\0')) - return 1; - if (*a != *b) - return 0; - if (*a == '\\') - { - if (a[1] != b[1]) - return 0; - a += 2; - b += 2; - continue; - } - a++; - b++; - } -} - -static char * -get_rndstr (void) -{ - grub_uint8_t rnd[15]; - const size_t sz = sizeof (rnd) * GRUB_CHAR_BIT / 5; - char * ret = xmalloc (sz + 1); - size_t i; - if (grub_get_random (rnd, sizeof (rnd))) - grub_util_error ("%s", _("couldn't retrieve random data")); - for (i = 0; i < sz; i++) - { - grub_size_t b = i * 5; - grub_uint8_t r; - grub_size_t f1 = GRUB_CHAR_BIT - b % GRUB_CHAR_BIT; - grub_size_t f2; - if (f1 > 5) - f1 = 5; - f2 = 5 - f1; - r = (rnd[b / GRUB_CHAR_BIT] >> (b % GRUB_CHAR_BIT)) & ((1 << f1) - 1); - if (f2) - r |= (rnd[b / GRUB_CHAR_BIT + 1] & ((1 << f2) - 1)) << f1; - if (r < 10) - ret[i] = '0' + r; - else - ret[i] = 'a' + (r - 10); - } - ret[sz] = '\0'; - return ret; -} - -static char * -escape (const char *in) -{ - char *ptr; - char *ret; - int overhead = 0; - - for (ptr = (char*)in; *ptr; ptr++) - if (*ptr == '\'') - overhead += 3; - ret = grub_malloc (ptr - in + overhead + 1); - if (!ret) - return NULL; - - grub_strchrsub (ret, in, '\'', "'\\''"); - return ret; -} - -static struct grub_util_config config; - -static void -device_map_check_duplicates (const char *dev_map) -{ - FILE *fp; - char buf[1024]; /* XXX */ - size_t alloced = 8; - size_t filled = 0; - char **d; - size_t i; - - if (dev_map[0] == '\0') - return; - - fp = grub_util_fopen (dev_map, "r"); - if (! fp) - return; - - d = xmalloc (alloced * sizeof (d[0])); - - while (fgets (buf, sizeof (buf), fp)) - { - char *p = buf; - char *e; - - /* Skip leading spaces. */ - while (*p && grub_isspace (*p)) - p++; - - /* If the first character is `#' or NUL, skip this line. */ - if (*p == '\0' || *p == '#') - continue; - - if (*p != '(') - continue; - - p++; - - e = p; - p = strchr (p, ')'); - if (! p) - continue; - - if (filled >= alloced) - { - alloced *= 2; - d = xrealloc (d, alloced * sizeof (d[0])); - } - - *p = '\0'; - - d[filled++] = xstrdup (e); - } - - fclose (fp); - - qsort (d, filled, sizeof (d[0]), grub_qsort_strcmp); - - for (i = 0; i + 1 < filled; i++) - if (strcmp (d[i], d[i+1]) == 0) - { - grub_util_error (_("the drive %s is defined multiple times in the device map %s"), - d[i], dev_map); - } - - for (i = 0; i < filled; i++) - free (d[i]); - - free (d); -} - -static grub_err_t -write_to_disk (grub_device_t dev, const char *fn) -{ - char *core_img; - size_t core_size; - grub_err_t err; - - core_size = grub_util_get_image_size (fn); - - core_img = grub_util_read_image (fn); - - grub_util_info ("writing `%s' to `%s'", fn, dev->disk->name); - err = grub_disk_write (dev->disk, 0, 0, - core_size, core_img); - free (core_img); - return err; -} - -static int -is_prep_partition (grub_device_t dev) -{ - if (!dev->disk) - return 0; - if (!dev->disk->partition) - return 0; - if (strcmp(dev->disk->partition->partmap->name, "msdos") == 0) - return (dev->disk->partition->msdostype == 0x41); - - if (strcmp (dev->disk->partition->partmap->name, "gpt") == 0) - { - struct grub_gpt_partentry gptdata; - grub_partition_t p = dev->disk->partition; - int ret = 0; - dev->disk->partition = dev->disk->partition->parent; - - if (grub_disk_read (dev->disk, p->offset, p->index, - sizeof (gptdata), &gptdata) == 0) - { - const grub_gpt_part_guid_t template = { - grub_cpu_to_le32_compile_time (0x9e1a2d38), - grub_cpu_to_le16_compile_time (0xc612), - grub_cpu_to_le16_compile_time (0x4316), - { 0xaa, 0x26, 0x8b, 0x49, 0x52, 0x1e, 0x5a, 0x8b } - }; - - ret = grub_memcmp (&template, &gptdata.type, - sizeof (template)) == 0; - } - dev->disk->partition = p; - return ret; - } - - return 0; -} - -static int -is_prep_empty (grub_device_t dev) -{ - grub_disk_addr_t dsize, addr; - grub_uint32_t buffer[32768]; - - dsize = grub_disk_get_size (dev->disk); - for (addr = 0; addr < dsize; - addr += sizeof (buffer) / GRUB_DISK_SECTOR_SIZE) - { - grub_size_t sz = sizeof (buffer); - grub_uint32_t *ptr; - - if (sizeof (buffer) / GRUB_DISK_SECTOR_SIZE > dsize - addr) - sz = (dsize - addr) * GRUB_DISK_SECTOR_SIZE; - grub_disk_read (dev->disk, addr, 0, sz, buffer); - - if (addr == 0 && grub_memcmp (buffer, ELFMAG, SELFMAG) == 0) - return 1; - - for (ptr = buffer; ptr < buffer + sz / sizeof (*buffer); ptr++) - if (*ptr) - return 0; - } - - return 1; -} - -static void -bless (grub_device_t dev, const char *path, int x86) -{ - struct stat st; - grub_err_t err; - - grub_util_info ("blessing %s", path); - - if (stat (path, &st) < 0) - grub_util_error (N_("cannot stat `%s': %s"), - path, strerror (errno)); - - err = grub_mac_bless_inode (dev, st.st_ino, S_ISDIR (st.st_mode), x86); - if (err) - grub_util_error ("%s", grub_errmsg); - grub_util_info ("blessed"); -} - -static void -fill_core_services (const char *core_services) -{ - char *label; - FILE *f; - char *label_text; - char *label_string = xasprintf ("%s %s", bootloader_id, product_version); - char *sysv_plist; - - label = grub_util_path_concat (2, core_services, ".disk_label"); - grub_util_info ("rendering label %s", label_string); - grub_util_render_label (label_font, label_bgcolor ? : "white", - label_color ? : "black", label_string, label); - grub_util_info ("label rendered"); - free (label); - label_text = grub_util_path_concat (2, core_services, ".disk_label.contentDetails"); - f = grub_util_fopen (label_text, "wb"); - fprintf (f, "%s\n", label_string); - fclose (f); - free (label_string); - free (label_text); - - sysv_plist = grub_util_path_concat (2, core_services, "SystemVersion.plist"); - f = grub_util_fopen (sysv_plist, "wb"); - fprintf (f, - "\n" - "\n" - " ProductBuildVersion\n" - " \n" - " ProductName\n" - " %s\n" - " ProductVersion\n" - " %s\n" - "\n" - "\n", bootloader_id, product_version); - fclose (f); - free (sysv_plist); -} - -int -main (int argc, char *argv[]) -{ - int is_efi = 0; - const char *efi_distributor = NULL; - const char *efi_file = NULL; - char **grub_devices; - grub_fs_t grub_fs; - grub_device_t grub_dev = NULL; - enum grub_install_plat platform; - char *grubdir, *device_map; - char **curdev, **curdrive; - char **grub_drives; - char *relative_grubdir; - char **efidir_device_names = NULL; - grub_device_t efidir_grub_dev = NULL; - char *efidir_grub_devname; - int efidir_is_mac = 0; - int is_prep = 0; - const char *pkgdatadir; - - grub_util_host_init (&argc, &argv); - product_version = xstrdup (PACKAGE_VERSION); - pkgdatadir = grub_util_get_pkgdatadir (); - label_font = grub_util_path_concat (2, pkgdatadir, "unicode.pf2"); - - argp_parse (&argp, argc, argv, 0, 0, 0); - - if (verbosity > 1) - grub_env_set ("debug", "all"); - - grub_util_load_config (&config); - - if (!bootloader_id && config.grub_distributor) - { - char *ptr; - bootloader_id = xstrdup (config.grub_distributor); - for (ptr = bootloader_id; *ptr && *ptr != ' '; ptr++) - if (*ptr >= 'A' && *ptr <= 'Z') - *ptr = *ptr - 'A' + 'a'; - *ptr = '\0'; - } - if (!bootloader_id || bootloader_id[0] == '\0') - { - free (bootloader_id); - bootloader_id = xstrdup ("grub"); - } - - if (!grub_install_source_directory) - { - if (!target) - { - const char * t; - t = get_default_platform (); - if (!t) - grub_util_error ("%s", - _("Unable to determine your platform." - " Use --target.") - ); - target = xstrdup (t); - } - grub_install_source_directory - = grub_util_path_concat (2, grub_util_get_pkglibdir (), target); - } - - platform = grub_install_get_target (grub_install_source_directory); - - { - char *platname = grub_install_get_platform_name (platform); - fprintf (stderr, _("Installing for %s platform.\n"), platname); - free (platname); - } - - switch (platform) - { - case GRUB_INSTALL_PLATFORM_I386_PC: - if (!disk_module) - disk_module = xstrdup ("biosdisk"); - break; - case GRUB_INSTALL_PLATFORM_I386_EFI: - case GRUB_INSTALL_PLATFORM_X86_64_EFI: - case GRUB_INSTALL_PLATFORM_ARM_EFI: - case GRUB_INSTALL_PLATFORM_ARM64_EFI: - case GRUB_INSTALL_PLATFORM_RISCV32_EFI: - case GRUB_INSTALL_PLATFORM_RISCV64_EFI: - case GRUB_INSTALL_PLATFORM_IA64_EFI: - case GRUB_INSTALL_PLATFORM_I386_IEEE1275: - case GRUB_INSTALL_PLATFORM_SPARC64_IEEE1275: - case GRUB_INSTALL_PLATFORM_POWERPC_IEEE1275: - case GRUB_INSTALL_PLATFORM_MIPSEL_ARC: - case GRUB_INSTALL_PLATFORM_MIPS_ARC: - case GRUB_INSTALL_PLATFORM_ARM_UBOOT: - case GRUB_INSTALL_PLATFORM_I386_XEN: - case GRUB_INSTALL_PLATFORM_X86_64_XEN: - case GRUB_INSTALL_PLATFORM_I386_XEN_PVH: - break; - - case GRUB_INSTALL_PLATFORM_I386_QEMU: - case GRUB_INSTALL_PLATFORM_I386_COREBOOT: - case GRUB_INSTALL_PLATFORM_ARM_COREBOOT: - case GRUB_INSTALL_PLATFORM_I386_MULTIBOOT: - case GRUB_INSTALL_PLATFORM_MIPSEL_LOONGSON: - case GRUB_INSTALL_PLATFORM_MIPSEL_QEMU_MIPS: - case GRUB_INSTALL_PLATFORM_MIPS_QEMU_MIPS: - disk_module = xstrdup ("native"); - break; - - /* pacify warning. */ - case GRUB_INSTALL_PLATFORM_MAX: - break; - } - - switch (platform) - { - case GRUB_INSTALL_PLATFORM_I386_PC: - case GRUB_INSTALL_PLATFORM_SPARC64_IEEE1275: - if (!install_device) - grub_util_error ("%s", _("install device isn't specified")); - break; - case GRUB_INSTALL_PLATFORM_POWERPC_IEEE1275: - if (install_device) - is_prep = 1; - break; - case GRUB_INSTALL_PLATFORM_MIPS_ARC: - case GRUB_INSTALL_PLATFORM_MIPSEL_ARC: - break; - case GRUB_INSTALL_PLATFORM_I386_EFI: - case GRUB_INSTALL_PLATFORM_X86_64_EFI: - case GRUB_INSTALL_PLATFORM_ARM_EFI: - case GRUB_INSTALL_PLATFORM_ARM64_EFI: - case GRUB_INSTALL_PLATFORM_RISCV32_EFI: - case GRUB_INSTALL_PLATFORM_RISCV64_EFI: - case GRUB_INSTALL_PLATFORM_IA64_EFI: - case GRUB_INSTALL_PLATFORM_I386_IEEE1275: - case GRUB_INSTALL_PLATFORM_ARM_UBOOT: - case GRUB_INSTALL_PLATFORM_I386_QEMU: - case GRUB_INSTALL_PLATFORM_I386_COREBOOT: - case GRUB_INSTALL_PLATFORM_ARM_COREBOOT: - case GRUB_INSTALL_PLATFORM_I386_MULTIBOOT: - case GRUB_INSTALL_PLATFORM_MIPSEL_LOONGSON: - case GRUB_INSTALL_PLATFORM_MIPSEL_QEMU_MIPS: - case GRUB_INSTALL_PLATFORM_MIPS_QEMU_MIPS: - case GRUB_INSTALL_PLATFORM_I386_XEN: - case GRUB_INSTALL_PLATFORM_X86_64_XEN: - case GRUB_INSTALL_PLATFORM_I386_XEN_PVH: - free (install_device); - install_device = NULL; - break; - - /* pacify warning. */ - case GRUB_INSTALL_PLATFORM_MAX: - break; - } - - if (!bootdir) - bootdir = grub_util_path_concat (3, "/", rootdir, GRUB_BOOT_DIR_NAME); - - { - char * t = grub_util_path_concat (2, bootdir, GRUB_DIR_NAME); - grub_install_mkdir_p (t); - grubdir = grub_canonicalize_file_name (t); - if (!grubdir) - grub_util_error (_("failed to get canonical path of `%s'"), t); - free (t); - } - device_map = grub_util_path_concat (2, grubdir, "device.map"); - - if (recheck) - grub_util_unlink (device_map); - - device_map_check_duplicates (device_map); - grub_util_biosdisk_init (device_map); - - /* Initialize all modules. */ - grub_init_all (); - grub_gcry_init_all (); - grub_hostfs_init (); - grub_host_init (); - - switch (platform) - { - case GRUB_INSTALL_PLATFORM_I386_EFI: - case GRUB_INSTALL_PLATFORM_X86_64_EFI: - case GRUB_INSTALL_PLATFORM_ARM_EFI: - case GRUB_INSTALL_PLATFORM_ARM64_EFI: - case GRUB_INSTALL_PLATFORM_RISCV32_EFI: - case GRUB_INSTALL_PLATFORM_RISCV64_EFI: - case GRUB_INSTALL_PLATFORM_IA64_EFI: - is_efi = 1; - break; - default: - is_efi = 0; - break; - - /* pacify warning. */ - case GRUB_INSTALL_PLATFORM_MAX: - break; - } - - /* Find the EFI System Partition. */ - - if (is_efi) - { - grub_fs_t fs; - free (install_device); - install_device = NULL; - if (!efidir) - { - char *d = grub_util_path_concat (2, bootdir, "efi"); - char *dr = NULL; - if (!grub_util_is_directory (d)) - { - free (d); - d = grub_util_path_concat (2, bootdir, "EFI"); - } - /* - The EFI System Partition may have been given directly using - --root-directory. - */ - if (!grub_util_is_directory (d) - && rootdir && grub_strcmp (rootdir, "/") != 0) - { - free (d); - d = xstrdup (rootdir); - } - if (grub_util_is_directory (d)) - dr = grub_make_system_path_relative_to_its_root (d); - /* Is it a mount point? */ - if (dr && dr[0] == '\0') - efidir = d; - else - free (d); - free (dr); - } - if (!efidir) - grub_util_error ("%s", _("cannot find EFI directory")); - efidir_device_names = grub_guess_root_devices (efidir); - if (!efidir_device_names || !efidir_device_names[0]) - grub_util_error (_("cannot find a device for %s (is /dev mounted?)"), - efidir); - install_device = efidir_device_names[0]; - - for (curdev = efidir_device_names; *curdev; curdev++) - grub_util_pull_device (*curdev); - - efidir_grub_devname = grub_util_get_grub_dev (efidir_device_names[0]); - if (!efidir_grub_devname) - grub_util_error (_("cannot find a GRUB drive for %s. Check your device.map"), - efidir_device_names[0]); - - efidir_grub_dev = grub_device_open (efidir_grub_devname); - if (! efidir_grub_dev) - grub_util_error ("%s", grub_errmsg); - - fs = grub_fs_probe (efidir_grub_dev); - if (! fs) - grub_util_error ("%s", grub_errmsg); - - efidir_is_mac = 0; - - if (grub_strcmp (fs->name, "hfs") == 0 - || grub_strcmp (fs->name, "hfsplus") == 0) - efidir_is_mac = 1; - - if (!efidir_is_mac && grub_strcmp (fs->name, "fat") != 0) - grub_util_error (_("%s doesn't look like an EFI partition"), efidir); - - /* The EFI specification requires that an EFI System Partition must - contain an "EFI" subdirectory, and that OS loaders are stored in - subdirectories below EFI. Vendors are expected to pick names that do - not collide with other vendors. To minimise collisions, we use the - name of our distributor if possible. - */ - char *t; - efi_distributor = bootloader_id; - if (removable) - { - /* The specification makes stricter requirements of removable - devices, in order that only one image can be automatically loaded - from them. The image must always reside under /EFI/BOOT, and it - must have a specific file name depending on the architecture. - */ - efi_distributor = "BOOT"; - switch (platform) - { - case GRUB_INSTALL_PLATFORM_I386_EFI: - efi_file = "BOOTIA32.EFI"; - break; - case GRUB_INSTALL_PLATFORM_X86_64_EFI: - efi_file = "BOOTX64.EFI"; - break; - case GRUB_INSTALL_PLATFORM_IA64_EFI: - efi_file = "BOOTIA64.EFI"; - break; - case GRUB_INSTALL_PLATFORM_ARM_EFI: - efi_file = "BOOTARM.EFI"; - break; - case GRUB_INSTALL_PLATFORM_ARM64_EFI: - efi_file = "BOOTAA64.EFI"; - break; - case GRUB_INSTALL_PLATFORM_RISCV32_EFI: - efi_file = "BOOTRISCV32.EFI"; - break; - case GRUB_INSTALL_PLATFORM_RISCV64_EFI: - efi_file = "BOOTRISCV64.EFI"; - break; - default: - grub_util_error ("%s", _("You've found a bug")); - break; - } - } - else - { - /* It is convenient for each architecture to have a different - efi_file, so that different versions can be installed in parallel. - */ - switch (platform) - { - case GRUB_INSTALL_PLATFORM_I386_EFI: - efi_file = "grubia32.efi"; - break; - case GRUB_INSTALL_PLATFORM_X86_64_EFI: - efi_file = "grubx64.efi"; - break; - case GRUB_INSTALL_PLATFORM_IA64_EFI: - efi_file = "grubia64.efi"; - break; - case GRUB_INSTALL_PLATFORM_ARM_EFI: - efi_file = "grubarm.efi"; - break; - case GRUB_INSTALL_PLATFORM_ARM64_EFI: - efi_file = "grubaa64.efi"; - break; - case GRUB_INSTALL_PLATFORM_RISCV32_EFI: - efi_file = "grubriscv32.efi"; - break; - case GRUB_INSTALL_PLATFORM_RISCV64_EFI: - efi_file = "grubriscv64.efi"; - break; - default: - efi_file = "grub.efi"; - break; - } - } - t = grub_util_path_concat (3, efidir, "EFI", efi_distributor); - free (efidir); - efidir = t; - grub_install_mkdir_p (efidir); - } - - if (platform == GRUB_INSTALL_PLATFORM_POWERPC_IEEE1275) - { - int is_guess = 0; - if (!macppcdir) - { - char *d; - - is_guess = 1; - d = grub_util_path_concat (2, bootdir, "macppc"); - if (!grub_util_is_directory (d)) - { - free (d); - d = grub_util_path_concat (2, bootdir, "efi"); - } - /* Find the Mac HFS(+) System Partition. */ - if (!grub_util_is_directory (d)) - { - free (d); - d = grub_util_path_concat (2, bootdir, "EFI"); - } - if (!grub_util_is_directory (d)) - { - free (d); - d = 0; - } - if (d) - macppcdir = d; - } - if (macppcdir) - { - char **macppcdir_device_names = NULL; - grub_device_t macppcdir_grub_dev = NULL; - char *macppcdir_grub_devname; - grub_fs_t fs; - - macppcdir_device_names = grub_guess_root_devices (macppcdir); - if (!macppcdir_device_names || !macppcdir_device_names[0]) - grub_util_error (_("cannot find a device for %s (is /dev mounted?)"), - macppcdir); - - for (curdev = macppcdir_device_names; *curdev; curdev++) - grub_util_pull_device (*curdev); - - macppcdir_grub_devname = grub_util_get_grub_dev (macppcdir_device_names[0]); - if (!macppcdir_grub_devname) - grub_util_error (_("cannot find a GRUB drive for %s. Check your device.map"), - macppcdir_device_names[0]); - - macppcdir_grub_dev = grub_device_open (macppcdir_grub_devname); - if (! macppcdir_grub_dev) - grub_util_error ("%s", grub_errmsg); - - fs = grub_fs_probe (macppcdir_grub_dev); - if (! fs) - grub_util_error ("%s", grub_errmsg); - - if (grub_strcmp (fs->name, "hfs") != 0 - && grub_strcmp (fs->name, "hfsplus") != 0 - && !is_guess) - grub_util_error (_("filesystem on %s is neither HFS nor HFS+"), - macppcdir); - if (grub_strcmp (fs->name, "hfs") == 0 - || grub_strcmp (fs->name, "hfsplus") == 0) - { - install_device = macppcdir_device_names[0]; - is_prep = 0; - } - } - } - - grub_install_copy_files (grub_install_source_directory, - grubdir, platform); - - char *envfile = grub_util_path_concat (2, grubdir, "grubenv"); - if (!grub_util_is_regular (envfile)) - grub_util_create_envblk_file (envfile); - - size_t ndev = 0; - - /* Write device to a variable so we don't have to traverse /dev every time. */ - grub_devices = grub_guess_root_devices (grubdir); - if (!grub_devices || !grub_devices[0]) - grub_util_error (_("cannot find a device for %s (is /dev mounted?)"), - grubdir); - - for (curdev = grub_devices; *curdev; curdev++) - { - grub_util_pull_device (*curdev); - ndev++; - } - - grub_drives = xmalloc (sizeof (grub_drives[0]) * (ndev + 1)); - - for (curdev = grub_devices, curdrive = grub_drives; *curdev; curdev++, - curdrive++) - { - *curdrive = grub_util_get_grub_dev (*curdev); - if (! *curdrive) - grub_util_error (_("cannot find a GRUB drive for %s. Check your device.map"), - *curdev); - } - *curdrive = 0; - - grub_dev = grub_device_open (grub_drives[0]); - if (! grub_dev) - grub_util_error ("%s", grub_errmsg); - - grub_fs = grub_fs_probe (grub_dev); - if (! grub_fs) - grub_util_error ("%s", grub_errmsg); - - grub_install_push_module (grub_fs->name); - - if (grub_dev->disk) - probe_mods (grub_dev->disk); - - for (curdrive = grub_drives + 1; *curdrive; curdrive++) - { - grub_device_t dev = grub_device_open (*curdrive); - if (!dev) - continue; - if (dev->disk) - probe_mods (dev->disk); - grub_device_close (dev); - } - - if (!config.is_cryptodisk_enabled && have_cryptodisk) - grub_util_error (_("attempt to install to encrypted disk without cryptodisk enabled. " - "Set `%s' in file `%s'"), "GRUB_ENABLE_CRYPTODISK=y", - grub_util_get_config_filename ()); - - if (disk_module && grub_strcmp (disk_module, "ata") == 0) - grub_install_push_module ("pata"); - else if (disk_module && grub_strcmp (disk_module, "native") == 0) - { - grub_install_push_module ("pata"); - grub_install_push_module ("ahci"); - grub_install_push_module ("ohci"); - grub_install_push_module ("uhci"); - grub_install_push_module ("ehci"); - grub_install_push_module ("usbms"); - } - else if (disk_module && disk_module[0]) - grub_install_push_module (disk_module); - - relative_grubdir = grub_make_system_path_relative_to_its_root (grubdir); - if (relative_grubdir[0] == '\0') - { - free (relative_grubdir); - relative_grubdir = xstrdup ("/"); - } - - char *platname = grub_install_get_platform_name (platform); - char *platdir; - { - char *t = grub_util_path_concat (2, grubdir, - platname); - platdir = grub_canonicalize_file_name (t); - if (!platdir) - grub_util_error (_("failed to get canonical path of `%s'"), - t); - free (t); - } - load_cfg = grub_util_path_concat (2, platdir, - "load.cfg"); - - grub_util_unlink (load_cfg); - - if (debug_image && debug_image[0]) - { - load_cfg_f = grub_util_fopen (load_cfg, "wb"); - have_load_cfg = 1; - fprintf (load_cfg_f, "set debug='%s'\n", - debug_image); - } - char *prefix_drive = NULL; - char *install_drive = NULL; - - if (install_device) - { - if (install_device[0] == '(' - && install_device[grub_strlen (install_device) - 1] == ')') - { - size_t len = grub_strlen (install_device) - 2; - install_drive = xmalloc (len + 1); - memcpy (install_drive, install_device + 1, len); - install_drive[len] = '\0'; - } - else - { - grub_util_pull_device (install_device); - install_drive = grub_util_get_grub_dev (install_device); - if (!install_drive) - grub_util_error (_("cannot find a GRUB drive for %s. Check your device.map"), - install_device); - } - } - - if (!have_abstractions) - { - if ((disk_module && grub_strcmp (disk_module, "biosdisk") != 0) - || grub_drives[1] - || (!install_drive - && platform != GRUB_INSTALL_PLATFORM_POWERPC_IEEE1275) - || (install_drive && !is_same_disk (grub_drives[0], install_drive)) - || !have_bootdev (platform)) - { - char *uuid = NULL; - /* generic method (used on coreboot and ata mod). */ - if (!force_file_id - && grub_fs->fs_uuid && grub_fs->fs_uuid (grub_dev, &uuid)) - { - grub_print_error (); - grub_errno = 0; - uuid = NULL; - } - - if (!load_cfg_f) - load_cfg_f = grub_util_fopen (load_cfg, "wb"); - have_load_cfg = 1; - if (uuid) - { - fprintf (load_cfg_f, "search.fs_uuid %s root ", - uuid); - grub_install_push_module ("search_fs_uuid"); - } - else - { - char *rndstr = get_rndstr (); - char *fl = grub_util_path_concat (3, grubdir, - "uuid", rndstr); - char *fldir = grub_util_path_concat (2, grubdir, - "uuid"); - char *relfl; - FILE *flf; - grub_install_mkdir_p (fldir); - flf = grub_util_fopen (fl, "w"); - if (!flf) - grub_util_error (_("Can't create file: %s"), strerror (errno)); - fclose (flf); - relfl = grub_make_system_path_relative_to_its_root (fl); - fprintf (load_cfg_f, "search.file %s root ", - relfl); - grub_install_push_module ("search_fs_file"); - } - for (curdev = grub_devices, curdrive = grub_drives; *curdev; curdev++, - curdrive++) - { - const char *map; - char *g = NULL; - grub_device_t dev; - if (curdrive == grub_drives) - dev = grub_dev; - else - dev = grub_device_open (*curdrive); - if (!dev) - continue; - - if (dev->disk->dev->id != GRUB_DISK_DEVICE_HOSTDISK_ID) - { - grub_util_fprint_full_disk_name (load_cfg_f, - dev->disk->name, - dev); - fprintf (load_cfg_f, " "); - if (dev != grub_dev) - grub_device_close (dev); - continue; - } - - map = grub_util_biosdisk_get_compatibility_hint (dev->disk); - - if (map) - { - grub_util_fprint_full_disk_name (load_cfg_f, map, dev); - fprintf (load_cfg_f, " "); - } - - - if (disk_module && disk_module[0] - && grub_strcmp (disk_module, "biosdisk") != 0) - g = grub_util_guess_baremetal_drive (*curdev); - else - switch (platform) - { - case GRUB_INSTALL_PLATFORM_I386_PC: - g = grub_util_guess_bios_drive (*curdev); - break; - case GRUB_INSTALL_PLATFORM_I386_EFI: - case GRUB_INSTALL_PLATFORM_X86_64_EFI: - case GRUB_INSTALL_PLATFORM_ARM_EFI: - case GRUB_INSTALL_PLATFORM_ARM64_EFI: - case GRUB_INSTALL_PLATFORM_RISCV32_EFI: - case GRUB_INSTALL_PLATFORM_RISCV64_EFI: - case GRUB_INSTALL_PLATFORM_IA64_EFI: - g = grub_util_guess_efi_drive (*curdev); - break; - case GRUB_INSTALL_PLATFORM_SPARC64_IEEE1275: - case GRUB_INSTALL_PLATFORM_POWERPC_IEEE1275: - case GRUB_INSTALL_PLATFORM_I386_IEEE1275: - { - const char * ofpath = grub_util_devname_to_ofpath (*curdev); - g = xasprintf ("ieee1275/%s", ofpath); - break; - } - case GRUB_INSTALL_PLATFORM_MIPSEL_LOONGSON: - case GRUB_INSTALL_PLATFORM_I386_QEMU: - case GRUB_INSTALL_PLATFORM_I386_COREBOOT: - case GRUB_INSTALL_PLATFORM_ARM_COREBOOT: - case GRUB_INSTALL_PLATFORM_I386_MULTIBOOT: - case GRUB_INSTALL_PLATFORM_MIPSEL_QEMU_MIPS: - case GRUB_INSTALL_PLATFORM_MIPS_QEMU_MIPS: - g = grub_util_guess_baremetal_drive (*curdev); - break; - case GRUB_INSTALL_PLATFORM_MIPS_ARC: - case GRUB_INSTALL_PLATFORM_MIPSEL_ARC: - case GRUB_INSTALL_PLATFORM_ARM_UBOOT: - case GRUB_INSTALL_PLATFORM_I386_XEN: - case GRUB_INSTALL_PLATFORM_X86_64_XEN: - case GRUB_INSTALL_PLATFORM_I386_XEN_PVH: - grub_util_warn ("%s", _("no hints available for your platform. Expect reduced performance")); - break; - /* pacify warning. */ - case GRUB_INSTALL_PLATFORM_MAX: - break; - } - if (g) - { - grub_util_fprint_full_disk_name (load_cfg_f, g, dev); - fprintf (load_cfg_f, " "); - free (g); - } - if (dev != grub_dev) - grub_device_close (dev); - } - fprintf (load_cfg_f, "\n"); - char *escaped_relpath = escape (relative_grubdir); - fprintf (load_cfg_f, "set prefix=($root)'%s'\n", - escaped_relpath); - } - else - { - /* We need to hardcode the partition number in the core image's prefix. */ - char *p; - for (p = grub_drives[0]; *p; ) - { - if (*p == '\\' && p[1]) - { - p += 2; - continue; - } - if (*p == ',' || *p == '\0') - break; - p++; - } - prefix_drive = xasprintf ("(%s)", p); - } - } - else - { - if (config.is_cryptodisk_enabled) - { - if (grub_dev->disk) - probe_cryptodisk_uuid (grub_dev->disk); - - for (curdrive = grub_drives + 1; *curdrive; curdrive++) - { - grub_device_t dev = grub_device_open (*curdrive); - if (!dev) - continue; - if (dev->disk) - probe_cryptodisk_uuid (dev->disk); - grub_device_close (dev); - } - } - prefix_drive = xasprintf ("(%s)", grub_drives[0]); - } - - char mkimage_target[200]; - const char *core_name = NULL; - - switch (platform) - { - case GRUB_INSTALL_PLATFORM_I386_EFI: - case GRUB_INSTALL_PLATFORM_X86_64_EFI: - case GRUB_INSTALL_PLATFORM_ARM_EFI: - case GRUB_INSTALL_PLATFORM_ARM64_EFI: - case GRUB_INSTALL_PLATFORM_RISCV32_EFI: - case GRUB_INSTALL_PLATFORM_RISCV64_EFI: - case GRUB_INSTALL_PLATFORM_IA64_EFI: - core_name = "core.efi"; - snprintf (mkimage_target, sizeof (mkimage_target), - "%s-%s", - grub_install_get_platform_cpu (platform), - grub_install_get_platform_platform (platform)); - break; - case GRUB_INSTALL_PLATFORM_MIPSEL_LOONGSON: - case GRUB_INSTALL_PLATFORM_MIPSEL_QEMU_MIPS: - case GRUB_INSTALL_PLATFORM_MIPS_QEMU_MIPS: - core_name = "core.elf"; - snprintf (mkimage_target, sizeof (mkimage_target), - "%s-%s-elf", - grub_install_get_platform_cpu (platform), - grub_install_get_platform_platform (platform)); - break; - - case GRUB_INSTALL_PLATFORM_I386_COREBOOT: - case GRUB_INSTALL_PLATFORM_ARM_COREBOOT: - case GRUB_INSTALL_PLATFORM_I386_MULTIBOOT: - case GRUB_INSTALL_PLATFORM_I386_IEEE1275: - case GRUB_INSTALL_PLATFORM_POWERPC_IEEE1275: - case GRUB_INSTALL_PLATFORM_I386_XEN: - case GRUB_INSTALL_PLATFORM_X86_64_XEN: - case GRUB_INSTALL_PLATFORM_I386_XEN_PVH: - core_name = "core.elf"; - snprintf (mkimage_target, sizeof (mkimage_target), - "%s-%s", - grub_install_get_platform_cpu (platform), - grub_install_get_platform_platform (platform)); - break; - - - case GRUB_INSTALL_PLATFORM_I386_PC: - case GRUB_INSTALL_PLATFORM_MIPSEL_ARC: - case GRUB_INSTALL_PLATFORM_MIPS_ARC: - case GRUB_INSTALL_PLATFORM_ARM_UBOOT: - case GRUB_INSTALL_PLATFORM_I386_QEMU: - snprintf (mkimage_target, sizeof (mkimage_target), - "%s-%s", - grub_install_get_platform_cpu (platform), - grub_install_get_platform_platform (platform)); - core_name = "core.img"; - break; - case GRUB_INSTALL_PLATFORM_SPARC64_IEEE1275: - strcpy (mkimage_target, "sparc64-ieee1275-raw"); - core_name = "core.img"; - break; - /* pacify warning. */ - case GRUB_INSTALL_PLATFORM_MAX: - break; - } - - if (!core_name) - grub_util_error ("%s", _("You've found a bug")); - - if (load_cfg_f) - fclose (load_cfg_f); - - char *imgfile = grub_util_path_concat (2, platdir, - core_name); - char *prefix = xasprintf ("%s%s", prefix_drive ? : "", - relative_grubdir); - grub_install_make_image_wrap (/* source dir */ grub_install_source_directory, - /*prefix */ prefix, - /* output */ imgfile, - /* memdisk */ NULL, - have_load_cfg ? load_cfg : NULL, - /* image target */ mkimage_target, 0); - /* Backward-compatibility kludges. */ - switch (platform) - { - case GRUB_INSTALL_PLATFORM_MIPSEL_LOONGSON: - { - char *dst = grub_util_path_concat (2, bootdir, "grub.elf"); - grub_install_copy_file (imgfile, dst, 1); - free (dst); - } - break; - - case GRUB_INSTALL_PLATFORM_I386_IEEE1275: - case GRUB_INSTALL_PLATFORM_POWERPC_IEEE1275: - { - char *dst = grub_util_path_concat (2, grubdir, "grub"); - grub_install_copy_file (imgfile, dst, 1); - free (dst); - } - break; - - case GRUB_INSTALL_PLATFORM_I386_EFI: - case GRUB_INSTALL_PLATFORM_X86_64_EFI: - { - char *dst = grub_util_path_concat (2, platdir, "grub.efi"); - grub_install_make_image_wrap (/* source dir */ grub_install_source_directory, - /* prefix */ "", - /* output */ dst, - /* memdisk */ NULL, - have_load_cfg ? load_cfg : NULL, - /* image target */ mkimage_target, 0); - } - break; - case GRUB_INSTALL_PLATFORM_ARM_EFI: - case GRUB_INSTALL_PLATFORM_ARM64_EFI: - case GRUB_INSTALL_PLATFORM_RISCV32_EFI: - case GRUB_INSTALL_PLATFORM_RISCV64_EFI: - case GRUB_INSTALL_PLATFORM_IA64_EFI: - case GRUB_INSTALL_PLATFORM_MIPSEL_QEMU_MIPS: - case GRUB_INSTALL_PLATFORM_MIPS_QEMU_MIPS: - case GRUB_INSTALL_PLATFORM_I386_COREBOOT: - case GRUB_INSTALL_PLATFORM_ARM_COREBOOT: - case GRUB_INSTALL_PLATFORM_I386_MULTIBOOT: - case GRUB_INSTALL_PLATFORM_I386_PC: - case GRUB_INSTALL_PLATFORM_MIPSEL_ARC: - case GRUB_INSTALL_PLATFORM_MIPS_ARC: - case GRUB_INSTALL_PLATFORM_ARM_UBOOT: - case GRUB_INSTALL_PLATFORM_I386_QEMU: - case GRUB_INSTALL_PLATFORM_SPARC64_IEEE1275: - case GRUB_INSTALL_PLATFORM_I386_XEN: - case GRUB_INSTALL_PLATFORM_X86_64_XEN: - case GRUB_INSTALL_PLATFORM_I386_XEN_PVH: - break; - /* pacify warning. */ - case GRUB_INSTALL_PLATFORM_MAX: - break; - } - - /* Perform the platform-dependent install */ - - switch (platform) - { - case GRUB_INSTALL_PLATFORM_I386_PC: - { - char *boot_img_src = grub_util_path_concat (2, - grub_install_source_directory, - "boot.img"); - char *boot_img = grub_util_path_concat (2, platdir, - "boot.img"); - grub_install_copy_file (boot_img_src, boot_img, 1); - - grub_util_info ("%sgrub-bios-setup %s %s %s %s %s --directory='%s' --device-map='%s' '%s'", - /* TRANSLATORS: This is a prefix in the log to indicate that usually - a command would be executed but due to an option was skipped. */ - install_bootsector ? "" : _("NOT RUNNING: "), - allow_floppy ? "--allow-floppy " : "", - verbosity ? "--verbose " : "", - force ? "--force " : "", - !fs_probe ? "--skip-fs-probe" : "", - !add_rs_codes ? "--no-rs-codes" : "", - platdir, - device_map, - install_device); - - /* Now perform the installation. */ - if (install_bootsector) - grub_util_bios_setup (platdir, "boot.img", "core.img", - install_drive, force, - fs_probe, allow_floppy, add_rs_codes); - break; - } - case GRUB_INSTALL_PLATFORM_SPARC64_IEEE1275: - { - char *boot_img_src = grub_util_path_concat (2, - grub_install_source_directory, - "boot.img"); - char *boot_img = grub_util_path_concat (2, platdir, - "boot.img"); - grub_install_copy_file (boot_img_src, boot_img, 1); - - grub_util_info ("%sgrub-sparc64-setup %s %s %s %s --directory='%s' --device-map='%s' '%s'", - install_bootsector ? "" : "NOT RUNNING: ", - allow_floppy ? "--allow-floppy " : "", - verbosity ? "--verbose " : "", - force ? "--force " : "", - !fs_probe ? "--skip-fs-probe" : "", - platdir, - device_map, - install_drive); - - /* Now perform the installation. */ - if (install_bootsector) - grub_util_sparc_setup (platdir, "boot.img", "core.img", - install_drive, force, - fs_probe, allow_floppy, - 0 /* unused */ ); - break; - } - - case GRUB_INSTALL_PLATFORM_POWERPC_IEEE1275: - if (macppcdir) - { - char *core_services = grub_util_path_concat (4, macppcdir, - "System", "Library", - "CoreServices"); - char *mach_kernel = grub_util_path_concat (2, macppcdir, - "mach_kernel"); - char *grub_elf, *bootx; - FILE *f; - grub_device_t ins_dev; - char *grub_chrp = grub_util_path_concat (2, - grub_install_source_directory, - "grub.chrp"); - - grub_install_mkdir_p (core_services); - - bootx = grub_util_path_concat (2, core_services, "BootX"); - grub_install_copy_file (grub_chrp, bootx, 1); - - grub_elf = grub_util_path_concat (2, core_services, "grub.elf"); - grub_install_copy_file (imgfile, grub_elf, 1); - - f = grub_util_fopen (mach_kernel, "a+"); - if (!f) - grub_util_error (_("Can't create file: %s"), strerror (errno)); - fclose (f); - - fill_core_services (core_services); - - ins_dev = grub_device_open (install_drive); - - bless (ins_dev, core_services, 0); - - if (update_nvram) - { - const char *dev; - int partno; - - partno = ins_dev->disk->partition - ? ins_dev->disk->partition->number + 1 : 0; - dev = grub_util_get_os_disk (install_device); - grub_install_register_ieee1275 (0, dev, partno, - "\\\\BootX"); - } - grub_device_close (ins_dev); - free (grub_elf); - free (bootx); - free (mach_kernel); - free (grub_chrp); - break; - } - /* If a install device is defined, copy the core.elf to PReP partition. */ - if (is_prep && install_device && install_device[0]) - { - grub_device_t ins_dev; - ins_dev = grub_device_open (install_drive); - if (!ins_dev || !is_prep_partition (ins_dev)) - { - grub_util_error ("%s", _("the chosen partition is not a PReP partition")); - } - if (is_prep_empty (ins_dev)) - { - if (write_to_disk (ins_dev, imgfile)) - grub_util_error ("%s", _("failed to copy Grub to the PReP partition")); - } - else - { - char *s = xasprintf ("dd if=/dev/zero of=%s", install_device); - grub_util_error (_("the PReP partition is not empty. If you are sure you want to use it, run dd to clear it: `%s'"), - s); - } - grub_device_close (ins_dev); - if (update_nvram) - grub_install_register_ieee1275 (1, grub_util_get_os_disk (install_device), - 0, NULL); - break; - } - /* fallthrough. */ - case GRUB_INSTALL_PLATFORM_I386_IEEE1275: - if (update_nvram) - { - const char *dev; - char *relpath; - int partno; - relpath = grub_make_system_path_relative_to_its_root (imgfile); - partno = grub_dev->disk->partition - ? grub_dev->disk->partition->number + 1 : 0; - dev = grub_util_get_os_disk (grub_devices[0]); - grub_install_register_ieee1275 (0, dev, - partno, relpath); - } - break; - case GRUB_INSTALL_PLATFORM_MIPS_ARC: - grub_install_sgi_setup (install_device, imgfile, "grub"); - break; - - case GRUB_INSTALL_PLATFORM_I386_EFI: - if (!efidir_is_mac) - { - char *dst = grub_util_path_concat (2, efidir, "grub.efi"); - /* For old macs. Suggested by Peter Jones. */ - grub_install_copy_file (imgfile, dst, 1); - free (dst); - } - /* Fallthrough. */ - case GRUB_INSTALL_PLATFORM_X86_64_EFI: - if (efidir_is_mac) - { - char *boot_efi; - char *core_services = grub_util_path_concat (4, efidir, - "System", "Library", - "CoreServices"); - char *mach_kernel = grub_util_path_concat (2, efidir, - "mach_kernel"); - FILE *f; - grub_device_t ins_dev; - - grub_install_mkdir_p (core_services); - - boot_efi = grub_util_path_concat (2, core_services, "boot.efi"); - grub_install_copy_file (imgfile, boot_efi, 1); - - f = grub_util_fopen (mach_kernel, "r+"); - if (!f) - grub_util_error (_("Can't create file: %s"), strerror (errno)); - fclose (f); - - fill_core_services(core_services); - - ins_dev = grub_device_open (install_drive); - - bless (ins_dev, boot_efi, 1); - if (!removable && update_nvram) - { - /* Try to make this image bootable using the EFI Boot Manager, if available. */ - int ret; - ret = grub_install_register_efi (efidir_grub_dev, - "\\System\\Library\\CoreServices", - efi_distributor); - if (ret) - grub_util_error (_("efibootmgr failed to register the boot entry: %s"), - strerror (ret)); - } - - grub_device_close (ins_dev); - free (boot_efi); - free (mach_kernel); - break; - } - /* FALLTHROUGH */ - case GRUB_INSTALL_PLATFORM_ARM_EFI: - case GRUB_INSTALL_PLATFORM_ARM64_EFI: - case GRUB_INSTALL_PLATFORM_RISCV32_EFI: - case GRUB_INSTALL_PLATFORM_RISCV64_EFI: - case GRUB_INSTALL_PLATFORM_IA64_EFI: - { - char *dst = grub_util_path_concat (2, efidir, efi_file); - grub_install_copy_file (imgfile, dst, 1); - free (dst); - } - if (!removable && update_nvram) - { - char * efifile_path; - char * part; - int ret; - - /* Try to make this image bootable using the EFI Boot Manager, if available. */ - if (!efi_distributor || efi_distributor[0] == '\0') - grub_util_error ("%s", _("EFI bootloader id isn't specified.")); - efifile_path = xasprintf ("\\EFI\\%s\\%s", - efi_distributor, - efi_file); - part = (efidir_grub_dev->disk->partition - ? grub_partition_get_name (efidir_grub_dev->disk->partition) - : 0); - grub_util_info ("Registering with EFI: distributor = `%s'," - " path = `%s', ESP at %s%s%s", - efi_distributor, efifile_path, - efidir_grub_dev->disk->name, - (part ? ",": ""), (part ? : "")); - grub_free (part); - ret = grub_install_register_efi (efidir_grub_dev, - efifile_path, efi_distributor); - if (ret) - grub_util_error (_("efibootmgr failed to register the boot entry: %s"), - strerror (ret)); - } - break; - - case GRUB_INSTALL_PLATFORM_MIPSEL_LOONGSON: - case GRUB_INSTALL_PLATFORM_MIPSEL_QEMU_MIPS: - case GRUB_INSTALL_PLATFORM_MIPS_QEMU_MIPS: - case GRUB_INSTALL_PLATFORM_I386_COREBOOT: - case GRUB_INSTALL_PLATFORM_ARM_COREBOOT: - case GRUB_INSTALL_PLATFORM_I386_MULTIBOOT: - case GRUB_INSTALL_PLATFORM_MIPSEL_ARC: - case GRUB_INSTALL_PLATFORM_ARM_UBOOT: - case GRUB_INSTALL_PLATFORM_I386_QEMU: - case GRUB_INSTALL_PLATFORM_I386_XEN: - case GRUB_INSTALL_PLATFORM_X86_64_XEN: - case GRUB_INSTALL_PLATFORM_I386_XEN_PVH: - grub_util_warn ("%s", - _("WARNING: no platform-specific install was performed")); - break; - /* pacify warning. */ - case GRUB_INSTALL_PLATFORM_MAX: - break; - } - - fprintf (stderr, "%s\n", _("Installation finished. No error reported.")); - - /* Free resources. */ - grub_gcry_fini_all (); - grub_fini_all (); - - return 0; -} diff --git a/thirdparty/grub-2.04/util/grub-kbdcomp.in b/thirdparty/grub-2.04/util/grub-kbdcomp.in deleted file mode 100644 index a15ec24e5..000000000 --- a/thirdparty/grub-2.04/util/grub-kbdcomp.in +++ /dev/null @@ -1,77 +0,0 @@ -#!/bin/sh - -prefix="@prefix@" -exec_prefix="@exec_prefix@" -bindir="@bindir@" -datarootdir="@datarootdir@" -datadir="@datadir@" -if [ "x$pkgdatadir" = x ]; then - pkgdatadir="${datadir}/@PACKAGE@" -fi - -grub_mklayout="${bindir}/@grub_mklayout@" - -ckbcomp_options="" - -export TEXTDOMAIN=@PACKAGE@ -export TEXTDOMAINDIR="@localedir@" - -. "${pkgdatadir}/grub-mkconfig_lib" - -self=`basename $0` - -usage () { - gettext_printf "Usage: %s -o OUTPUT CKBMAP_ARGUMENTS...\n" "$self" - gettext "Make GRUB keyboard layout file."; echo - echo - print_option_help "-h, --help" "$(gettext "print this message and exit")" - print_option_help "-V, --version" "$(gettext "print the version information and exit")" - print_option_help "-o, --output=$(gettext FILE)" "$(gettext "save output in FILE [required]")" - echo - gettext_printf "%s generates a keyboard layout for GRUB using ckbcomp\n" "$self" - echo - gettext "Report bugs to ."; echo -} - -argument () { - opt=$1 - shift - - if test $# -eq 0; then - gettext_printf "%s: option requires an argument -- \`%s'\n" "$0" "$opt" 1>&2 - exit 1 - fi - echo $1 -} - -output= - -while test $# -gt 0 -do - option=$1 - shift - case "$option" in - -h | --help) - usage - exit 0 ;; - -V | --version) - echo "$self (${PACKAGE_NAME}) ${PACKAGE_VERSION}" - exit 0 ;; - -o | --output) - output=`argument $option "$@"`; shift ;; - --output=*) - output=`echo "$option" | sed 's/--output=//'` ;; - *) - ckbcomp_options="$ckbcomp_options $option";; - esac -done - -if [ "x${output}" = x ] ; then - gettext "output file must be specified" >&2 - echo >&2 - usage - exit 1 -fi - -ckbcomp $ckbcomp_options | "$grub_mklayout" -o "${output}" - diff --git a/thirdparty/grub-2.04/util/grub-macbless.c b/thirdparty/grub-2.04/util/grub-macbless.c deleted file mode 100644 index e9b15a053..000000000 --- a/thirdparty/grub-2.04/util/grub-macbless.c +++ /dev/null @@ -1,205 +0,0 @@ -/* grub-probe.c - probe device information for a given path */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2005,2006,2007,2008,2009,2010 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#include -#include -#include -#include -#include -#include - -#define _GNU_SOURCE 1 -#pragma GCC diagnostic ignored "-Wmissing-prototypes" -#pragma GCC diagnostic ignored "-Wmissing-declarations" -#include -#pragma GCC diagnostic error "-Wmissing-prototypes" -#pragma GCC diagnostic error "-Wmissing-declarations" - -#include "progname.h" - -static void -bless (const char *path, int x86) -{ - char *drive_name = NULL; - char **devices; - char *grub_path = NULL; - char *filebuf_via_grub = NULL, *filebuf_via_sys = NULL; - grub_device_t dev = NULL; - grub_err_t err; - struct stat st; - - grub_path = grub_canonicalize_file_name (path); - - if (stat (grub_path, &st) < 0) - grub_util_error (N_("cannot stat `%s': %s"), - grub_path, strerror (errno)); - - devices = grub_guess_root_devices (grub_path); - - if (! devices || !devices[0]) - grub_util_error (_("cannot find a device for %s (is /dev mounted?)"), path); - - drive_name = grub_util_get_grub_dev (devices[0]); - if (! drive_name) - grub_util_error (_("cannot find a GRUB drive for %s. Check your device.map"), - devices[0]); - - grub_util_info ("opening %s", drive_name); - dev = grub_device_open (drive_name); - if (! dev) - grub_util_error ("%s", grub_errmsg); - - err = grub_mac_bless_inode (dev, st.st_ino, S_ISDIR (st.st_mode), x86); - if (err) - grub_util_error ("%s", grub_errmsg); - free (grub_path); - free (filebuf_via_grub); - free (filebuf_via_sys); - free (drive_name); - free (devices); - grub_device_close (dev); -} - -static struct argp_option options[] = { - {"x86", 'x', 0, 0, - N_("bless for x86-based macs"), 0}, - {"ppc", 'p', 0, 0, - N_("bless for ppc-based macs"), 0}, - {"verbose", 'v', 0, 0, N_("print verbose messages."), 0}, - { 0, 0, 0, 0, 0, 0 } -}; - -struct arguments -{ - char *arg; - int ppc; -}; - -static error_t -argp_parser (int key, char *arg, struct argp_state *state) -{ - /* Get the input argument from argp_parse, which we - know is a pointer to our arguments structure. */ - struct arguments *arguments = state->input; - - switch (key) - { - case 'v': - verbosity++; - break; - - case 'x': - arguments->ppc = 0; - break; - - case 'p': - arguments->ppc = 1; - break; - - case ARGP_KEY_NO_ARGS: - fprintf (stderr, "%s", _("No path or device is specified.\n")); - argp_usage (state); - break; - - case ARGP_KEY_ARG: - if (arguments->arg) - { - fprintf (stderr, _("Unknown extra argument `%s'."), arg); - fprintf (stderr, "\n"); - return ARGP_ERR_UNKNOWN; - } - arguments->arg = xstrdup (arg); - break; - - default: - return ARGP_ERR_UNKNOWN; - } - return 0; -} - -static struct argp argp = { - options, argp_parser, N_("--ppc PATH|--x86 FILE"), - N_("Mac-style bless on HFS or HFS+"), - NULL, NULL, NULL -}; - -int -main (int argc, char *argv[]) -{ - struct arguments arguments; - - grub_util_host_init (&argc, &argv); - - /* Check for options. */ - memset (&arguments, 0, sizeof (struct arguments)); - if (argp_parse (&argp, argc, argv, 0, 0, &arguments) != 0) - { - fprintf (stderr, "%s", _("Error in parsing command line arguments\n")); - exit(1); - } - - if (verbosity > 1) - grub_env_set ("debug", "all"); - - /* Initialize the emulated biosdisk driver. */ - grub_util_biosdisk_init (NULL); - - /* Initialize all modules. */ - grub_init_all (); - grub_gcry_init_all (); - - grub_lvm_fini (); - grub_mdraid09_fini (); - grub_mdraid1x_fini (); - grub_diskfilter_fini (); - grub_diskfilter_init (); - grub_mdraid09_init (); - grub_mdraid1x_init (); - grub_lvm_init (); - - /* Do it. */ - bless (arguments.arg, !arguments.ppc); - - /* Free resources. */ - grub_gcry_fini_all (); - grub_fini_all (); - grub_util_biosdisk_fini (); - - return 0; -} diff --git a/thirdparty/grub-2.04/util/grub-macho2img.c b/thirdparty/grub-2.04/util/grub-macho2img.c deleted file mode 100644 index 6dfb5fcbe..000000000 --- a/thirdparty/grub-2.04/util/grub-macho2img.c +++ /dev/null @@ -1,120 +0,0 @@ -/* macho2img.c - tool to convert Mach-O to raw imagw. */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include - -#include -#include -#include -#include -#include - -/* Please don't internationalise this file. It's pointless. */ - -/* XXX: this file assumes particular Mach-O layout and does no checks. */ -/* However as build system ensures correct usage of this tool this - shouldn't be a problem. */ - -int -main (int argc, char **argv) -{ - FILE *in, *out; - int do_bss = 0; - char *buf; - int bufsize; - struct grub_macho_header32 *head; - struct grub_macho_segment32 *curcmd; - unsigned i; - unsigned bssstart = 0; - unsigned bssend = 0; - - if (argc && strcmp (argv[1], "--bss") == 0) - do_bss = 1; - if (argc < 2 + do_bss) - { - printf ("Usage: %s [--bss] filename.exec filename.img\n" - "Convert Mach-O into raw image\n", argv[0]); - return 0; - } - in = fopen (argv[1 + do_bss], "rb"); - if (! in) - { - printf ("Couldn't open %s\n", argv[1 + do_bss]); - return 1; - } - out = fopen (argv[2 + do_bss], "wb"); - if (! out) - { - fclose (in); - printf ("Couldn't open %s\n", argv[2 + do_bss]); - return 2; - } - fseek (in, 0, SEEK_END); - bufsize = ftell (in); - fseek (in, 0, SEEK_SET); - buf = malloc (bufsize); - if (! buf) - { - fclose (in); - fclose (out); - printf ("Couldn't allocate buffer\n"); - return 3; - } - fread (buf, 1, bufsize, in); - head = (struct grub_macho_header32 *) buf; - if (grub_le_to_cpu32 (head->magic) != GRUB_MACHO_MAGIC32) - { - fclose (in); - fclose (out); - free (buf); - printf ("Invalid Mach-O file\n"); - return 4; - } - curcmd = (struct grub_macho_segment32 *) (buf + sizeof (*head)); - for (i = 0; i < grub_le_to_cpu32 (head->ncmds); i++, - curcmd = (struct grub_macho_segment32 *) - (((char *) curcmd) + curcmd->cmdsize)) - { - if (curcmd->cmd != GRUB_MACHO_CMD_SEGMENT32) - continue; - fwrite (buf + grub_le_to_cpu32 (curcmd->fileoff), 1, - grub_le_to_cpu32 (curcmd->filesize), out); - if (grub_le_to_cpu32 (curcmd->vmsize) - > grub_le_to_cpu32 (curcmd->filesize)) - { - bssstart = grub_le_to_cpu32 (curcmd->vmaddr) - + grub_le_to_cpu32 (curcmd->filesize) ; - bssend = grub_le_to_cpu32 (curcmd->vmaddr) - + grub_le_to_cpu32 (curcmd->vmsize) ; - } - } - if (do_bss) - { - grub_uint32_t tmp; - fseek (out, 0x5c, SEEK_SET); - tmp = grub_cpu_to_le32 (bssstart); - fwrite (&tmp, 4, 1, out); - tmp = grub_cpu_to_le32 (bssend); - fwrite (&tmp, 4, 1, out); - } - fclose (in); - fclose (out); - printf("macho2img complete\n"); - return 0; -} diff --git a/thirdparty/grub-2.04/util/grub-menulst2cfg.c b/thirdparty/grub-2.04/util/grub-menulst2cfg.c deleted file mode 100644 index a39f86939..000000000 --- a/thirdparty/grub-2.04/util/grub-menulst2cfg.c +++ /dev/null @@ -1,135 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2010 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include - -#include -#include -#include -#include -#include -#include -#include - -int -main (int argc, char **argv) -{ - FILE *in, *out; - char *entryname = NULL; - char *buf = NULL; - size_t bufsize = 0; - char *suffix = xstrdup (""); - int suffixlen = 0; - const char *out_fname = 0; - - grub_util_host_init (&argc, &argv); - - if (argc >= 2 && argv[1][0] == '-') - { - fprintf (stdout, _("Usage: %s [INFILE [OUTFILE]]\n"), argv[0]); - return 0; - } - - if (argc >= 2) - { - in = grub_util_fopen (argv[1], "r"); - if (!in) - { - fprintf (stderr, _("cannot open `%s': %s"), - argv[1], strerror (errno)); - return 1; - } - } - else - in = stdin; - - if (argc >= 3) - { - out = grub_util_fopen (argv[2], "w"); - if (!out) - { - if (in != stdin) - fclose (in); - fprintf (stderr, _("cannot open `%s': %s"), - argv[2], strerror (errno)); - return 1; - } - out_fname = argv[2]; - } - else - out = stdout; - - while (1) - { - char *parsed; - - if (getline (&buf, &bufsize, in) < 0) - break; - - { - char *oldname = NULL; - char *newsuffix; - - oldname = entryname; - parsed = grub_legacy_parse (buf, &entryname, &newsuffix); - if (newsuffix) - { - suffixlen += strlen (newsuffix); - suffix = xrealloc (suffix, suffixlen + 1); - strcat (suffix, newsuffix); - } - if (oldname != entryname && oldname) - fprintf (out, "}\n\n"); - if (oldname != entryname) - { - char *escaped = grub_legacy_escape (entryname, strlen (entryname)); - fprintf (out, "menuentry \'%s\' {\n", escaped); - free (escaped); - free (oldname); - } - } - - if (parsed) - fprintf (out, "%s%s", entryname ? " " : "", parsed); - free (parsed); - parsed = NULL; - } - - if (entryname) - fprintf (out, "}\n\n"); - - if (fwrite (suffix, 1, suffixlen, out) != suffixlen) - { - if (out_fname) - grub_util_error ("cannot write to `%s': %s", - out_fname, strerror (errno)); - else - grub_util_error ("cannot write to the stdout: %s", strerror (errno)); - } - - free (buf); - free (suffix); - free (entryname); - - if (in != stdin) - fclose (in); - if (out != stdout) - fclose (out); - - return 0; -} diff --git a/thirdparty/grub-2.04/util/grub-mkconfig.in b/thirdparty/grub-2.04/util/grub-mkconfig.in deleted file mode 100644 index 9f477ff05..000000000 --- a/thirdparty/grub-2.04/util/grub-mkconfig.in +++ /dev/null @@ -1,295 +0,0 @@ -#! /bin/sh -set -e - -# Generate grub.cfg by inspecting /boot contents. -# Copyright (C) 2006,2007,2008,2009,2010 Free Software Foundation, Inc. -# -# GRUB is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# GRUB is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with GRUB. If not, see . - -prefix="@prefix@" -exec_prefix="@exec_prefix@" -datarootdir="@datarootdir@" - -prefix="@prefix@" -exec_prefix="@exec_prefix@" -sbindir="@sbindir@" -bindir="@bindir@" -sysconfdir="@sysconfdir@" -PACKAGE_NAME=@PACKAGE_NAME@ -PACKAGE_VERSION=@PACKAGE_VERSION@ -host_os=@host_os@ -datadir="@datadir@" -if [ "x$pkgdatadir" = x ]; then - pkgdatadir="${datadir}/@PACKAGE@" -fi -# export it for scripts -export pkgdatadir - -grub_cfg="" -grub_mkconfig_dir="${sysconfdir}"/grub.d - -self=`basename $0` - -grub_probe="${sbindir}/@grub_probe@" -grub_file="${bindir}/@grub_file@" -grub_editenv="${bindir}/@grub_editenv@" -grub_script_check="${bindir}/@grub_script_check@" - -export TEXTDOMAIN=@PACKAGE@ -export TEXTDOMAINDIR="@localedir@" - -. "${pkgdatadir}/grub-mkconfig_lib" - -# Usage: usage -# Print the usage. -usage () { - gettext_printf "Usage: %s [OPTION]\n" "$self" - gettext "Generate a grub config file"; echo - echo - print_option_help "-o, --output=$(gettext FILE)" "$(gettext "output generated config to FILE [default=stdout]")" - print_option_help "-h, --help" "$(gettext "print this message and exit")" - print_option_help "-v, --version" "$(gettext "print the version information and exit")" - echo - gettext "Report bugs to ."; echo -} - -argument () { - opt=$1 - shift - - if test $# -eq 0; then - gettext_printf "%s: option requires an argument -- \`%s'\n" "$self" "$opt" 1>&2 - exit 1 - fi - echo $1 -} - -# Check the arguments. -while test $# -gt 0 -do - option=$1 - shift - - case "$option" in - -h | --help) - usage - exit 0 ;; - -V | --version) - echo "$self (${PACKAGE_NAME}) ${PACKAGE_VERSION}" - exit 0 ;; - -o | --output) - grub_cfg=`argument $option "$@"`; shift;; - --output=*) - grub_cfg=`echo "$option" | sed 's/--output=//'` - ;; - -*) - gettext_printf "Unrecognized option \`%s'\n" "$option" 1>&2 - usage - exit 1 - ;; - # Explicitly ignore non-option arguments, for compatibility. - esac -done - -if [ "x$EUID" = "x" ] ; then - EUID=`id -u` -fi - -if [ "$EUID" != 0 ] ; then - root=f - case "`uname 2>/dev/null`" in - CYGWIN*) - # Cygwin: Assume root if member of admin group - for g in `id -G 2>/dev/null` ; do - case $g in - 0|544) root=t ;; - esac - done ;; - esac - if [ $root != t ] ; then - gettext_printf "%s: You must run this as root\n" "$self" >&2 - exit 1 - fi -fi - -set $grub_probe dummy -if test -f "$1"; then - : -else - gettext_printf "%s: Not found.\n" "$1" 1>&2 - exit 1 -fi - -# Device containing our userland. Typically used for root= parameter. -GRUB_DEVICE="`${grub_probe} --target=device /`" -GRUB_DEVICE_UUID="`${grub_probe} --device ${GRUB_DEVICE} --target=fs_uuid 2> /dev/null`" || true -GRUB_DEVICE_PARTUUID="`${grub_probe} --device ${GRUB_DEVICE} --target=partuuid 2> /dev/null`" || true - -# Device containing our /boot partition. Usually the same as GRUB_DEVICE. -GRUB_DEVICE_BOOT="`${grub_probe} --target=device /boot`" -GRUB_DEVICE_BOOT_UUID="`${grub_probe} --device ${GRUB_DEVICE_BOOT} --target=fs_uuid 2> /dev/null`" || true - -# Filesystem for the device containing our userland. Used for stuff like -# choosing Hurd filesystem module. -GRUB_FS="`${grub_probe} --device ${GRUB_DEVICE} --target=fs 2> /dev/null || echo unknown`" - -if [ x"$GRUB_FS" = xunknown ]; then - GRUB_FS="$(stat -f -c %T / || echo unknown)" -fi - -# Provide a default set of stock linux early initrd images. -# Define here so the list can be modified in the sourced config file. -if [ "x${GRUB_EARLY_INITRD_LINUX_STOCK}" = "x" ]; then - GRUB_EARLY_INITRD_LINUX_STOCK="intel-uc.img intel-ucode.img amd-uc.img amd-ucode.img early_ucode.cpio microcode.cpio" -fi - -if test -f ${sysconfdir}/default/grub ; then - . ${sysconfdir}/default/grub -fi - -# XXX: should this be deprecated at some point? -if [ "x${GRUB_TERMINAL}" != "x" ] ; then - GRUB_TERMINAL_INPUT="${GRUB_TERMINAL}" - GRUB_TERMINAL_OUTPUT="${GRUB_TERMINAL}" -fi - -termoutdefault=0 -if [ "x${GRUB_TERMINAL_OUTPUT}" = "x" ]; then - GRUB_TERMINAL_OUTPUT=gfxterm; - termoutdefault=1; -fi - -for x in ${GRUB_TERMINAL_OUTPUT}; do - case "x${x}" in - xgfxterm) ;; - xconsole | xserial | xofconsole | xvga_text) - # make sure all our children behave in conformance with ascii.. - export LANG=C;; - *) echo "Invalid output terminal \"${GRUB_TERMINAL_OUTPUT}\"" >&2 ; exit 1 ;; - esac -done - -GRUB_ACTUAL_DEFAULT="$GRUB_DEFAULT" - -if [ "x${GRUB_ACTUAL_DEFAULT}" = "xsaved" ] ; then GRUB_ACTUAL_DEFAULT="`"${grub_editenv}" - list | sed -n '/^saved_entry=/ s,^saved_entry=,,p'`" ; fi - - -# These are defined in this script, export them here so that user can -# override them. -export GRUB_DEVICE \ - GRUB_DEVICE_UUID \ - GRUB_DEVICE_PARTUUID \ - GRUB_DEVICE_BOOT \ - GRUB_DEVICE_BOOT_UUID \ - GRUB_FS \ - GRUB_FONT \ - GRUB_PRELOAD_MODULES \ - GRUB_ACTUAL_DEFAULT - -# These are optional, user-defined variables. -export GRUB_DEFAULT \ - GRUB_HIDDEN_TIMEOUT \ - GRUB_HIDDEN_TIMEOUT_QUIET \ - GRUB_TIMEOUT \ - GRUB_TIMEOUT_STYLE \ - GRUB_DEFAULT_BUTTON \ - GRUB_HIDDEN_TIMEOUT_BUTTON \ - GRUB_TIMEOUT_BUTTON \ - GRUB_TIMEOUT_STYLE_BUTTON \ - GRUB_BUTTON_CMOS_ADDRESS \ - GRUB_BUTTON_CMOS_CLEAN \ - GRUB_DISTRIBUTOR \ - GRUB_CMDLINE_LINUX \ - GRUB_CMDLINE_LINUX_DEFAULT \ - GRUB_CMDLINE_XEN \ - GRUB_CMDLINE_XEN_DEFAULT \ - GRUB_CMDLINE_LINUX_XEN_REPLACE \ - GRUB_CMDLINE_LINUX_XEN_REPLACE_DEFAULT \ - GRUB_CMDLINE_NETBSD \ - GRUB_CMDLINE_NETBSD_DEFAULT \ - GRUB_CMDLINE_GNUMACH \ - GRUB_EARLY_INITRD_LINUX_CUSTOM \ - GRUB_EARLY_INITRD_LINUX_STOCK \ - GRUB_TERMINAL_INPUT \ - GRUB_TERMINAL_OUTPUT \ - GRUB_SERIAL_COMMAND \ - GRUB_DISABLE_LINUX_UUID \ - GRUB_DISABLE_LINUX_PARTUUID \ - GRUB_DISABLE_RECOVERY \ - GRUB_VIDEO_BACKEND \ - GRUB_GFXMODE \ - GRUB_BACKGROUND \ - GRUB_THEME \ - GRUB_GFXPAYLOAD_LINUX \ - GRUB_DISABLE_OS_PROBER \ - GRUB_INIT_TUNE \ - GRUB_SAVEDEFAULT \ - GRUB_ENABLE_CRYPTODISK \ - GRUB_BADRAM \ - GRUB_OS_PROBER_SKIP_LIST \ - GRUB_DISABLE_SUBMENU - -if test "x${grub_cfg}" != "x"; then - rm -f "${grub_cfg}.new" - oldumask=$(umask); umask 077 - exec > "${grub_cfg}.new" - umask $oldumask -fi -gettext "Generating grub configuration file ..." >&2 -echo >&2 - -cat << EOF -# -# DO NOT EDIT THIS FILE -# -# It is automatically generated by $self using templates -# from ${grub_mkconfig_dir} and settings from ${sysconfdir}/default/grub -# -EOF - - -for i in "${grub_mkconfig_dir}"/* ; do - case "$i" in - # emacsen backup files. FIXME: support other editors - *~) ;; - # emacsen autosave files. FIXME: support other editors - */\#*\#) ;; - *) - if grub_file_is_not_garbage "$i" && test -x "$i" ; then - echo - echo "### BEGIN $i ###" - "$i" - echo "### END $i ###" - fi - ;; - esac -done - -if test "x${grub_cfg}" != "x" ; then - if ! ${grub_script_check} ${grub_cfg}.new; then - # TRANSLATORS: %s is replaced by filename - gettext_printf "Syntax errors are detected in generated GRUB config file. -Ensure that there are no errors in /etc/default/grub -and /etc/grub.d/* files or please file a bug report with -%s file attached." "${grub_cfg}.new" >&2 - echo >&2 - exit 1 - else - # none of the children aborted with error, install the new grub.cfg - mv -f ${grub_cfg}.new ${grub_cfg} - fi -fi - -gettext "done" >&2 -echo >&2 diff --git a/thirdparty/grub-2.04/util/grub-mkconfig_lib.in b/thirdparty/grub-2.04/util/grub-mkconfig_lib.in deleted file mode 100644 index 0f801cab3..000000000 --- a/thirdparty/grub-2.04/util/grub-mkconfig_lib.in +++ /dev/null @@ -1,371 +0,0 @@ -# Helper library for grub-mkconfig -# Copyright (C) 2007,2008,2009,2010 Free Software Foundation, Inc. -# -# GRUB is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# GRUB is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with GRUB. If not, see . - -prefix="@prefix@" -exec_prefix="@exec_prefix@" -datarootdir="@datarootdir@" -datadir="@datadir@" -bindir="@bindir@" -sbindir="@sbindir@" -if [ "x$pkgdatadir" = x ]; then - pkgdatadir="${datadir}/@PACKAGE@" -fi - -if test "x$grub_probe" = x; then - grub_probe="${sbindir}/@grub_probe@" -fi -if test "x$grub_file" = x; then - grub_file="${bindir}/@grub_file@" -fi -if test "x$grub_mkrelpath" = x; then - grub_mkrelpath="${bindir}/@grub_mkrelpath@" -fi - -if which gettext >/dev/null 2>/dev/null; then - : -else - gettext () { - printf "%s" "$@" - } -fi - -grub_warn () -{ - echo "$(gettext "Warning:")" "$@" >&2 -} - -make_system_path_relative_to_its_root () -{ - "${grub_mkrelpath}" "$1" -} - -is_path_readable_by_grub () -{ - path="$1" - - # abort if path doesn't exist - if test -e "$path" ; then : ;else - return 1 - fi - - # abort if file is in a filesystem we can't read - if "${grub_probe}" -t fs "$path" > /dev/null 2>&1 ; then : ; else - return 1 - fi - - # ... or if we can't figure out the abstraction module, for example if - # memberlist fails on an LVM volume group. - if abstractions="`"${grub_probe}" -t abstraction "$path"`" 2> /dev/null ; then - : - else - return 1 - fi - - if [ x$GRUB_ENABLE_CRYPTODISK = xy ]; then - return 0 - fi - - for abstraction in $abstractions; do - if [ "x$abstraction" = xcryptodisk ]; then - return 1 - fi - done - - return 0 -} - -convert_system_path_to_grub_path () -{ - path="$1" - - grub_warn "convert_system_path_to_grub_path() is deprecated. Use prepare_grub_to_access_device() instead." - - # abort if GRUB can't access the path - if is_path_readable_by_grub "${path}" ; then : ; else - return 1 - fi - - if drive="`"${grub_probe}" -t drive "$path"`" ; then : ; else - return 1 - fi - - if relative_path="`make_system_path_relative_to_its_root "$path"`" ; then : ; else - return 1 - fi - - echo "${drive}${relative_path}" -} - -save_default_entry () -{ - if [ "x${GRUB_SAVEDEFAULT}" = "xtrue" ] ; then - cat << EOF -savedefault -EOF - fi -} - -prepare_grub_to_access_device () -{ - old_ifs="$IFS" - IFS=' -' - partmap="`"${grub_probe}" --device $@ --target=partmap`" - for module in ${partmap} ; do - case "${module}" in - netbsd | openbsd) - echo "insmod part_bsd";; - *) - echo "insmod part_${module}";; - esac - done - - # Abstraction modules aren't auto-loaded. - abstraction="`"${grub_probe}" --device $@ --target=abstraction`" - for module in ${abstraction} ; do - echo "insmod ${module}" - done - - fs="`"${grub_probe}" --device $@ --target=fs`" - for module in ${fs} ; do - echo "insmod ${module}" - done - - if [ x$GRUB_ENABLE_CRYPTODISK = xy ]; then - for uuid in `"${grub_probe}" --device $@ --target=cryptodisk_uuid`; do - echo "cryptomount -u $uuid" - done - fi - - # If there's a filesystem UUID that GRUB is capable of identifying, use it; - # otherwise set root as per value in device.map. - fs_hint="`"${grub_probe}" --device $@ --target=compatibility_hint`" - if [ "x$fs_hint" != x ]; then - echo "set root='$fs_hint'" - fi - if fs_uuid="`"${grub_probe}" --device $@ --target=fs_uuid 2> /dev/null`" ; then - hints="`"${grub_probe}" --device $@ --target=hints_string 2> /dev/null`" || hints= - echo "if [ x\$feature_platform_search_hint = xy ]; then" - echo " search --no-floppy --fs-uuid --set=root ${hints} ${fs_uuid}" - echo "else" - echo " search --no-floppy --fs-uuid --set=root ${fs_uuid}" - echo "fi" - fi - IFS="$old_ifs" -} - -grub_get_device_id () -{ - old_ifs="$IFS" - IFS=' -' - device="$1" - if fs_uuid="`"${grub_probe}" --device ${device} --target=fs_uuid 2> /dev/null`" ; then - echo "$fs_uuid"; - else - echo $device |sed 's, ,_,g' - fi - IFS="$old_ifs" -} - -grub_file_is_not_garbage () -{ - if test -f "$1" ; then - case "$1" in - *.dpkg-*) return 1 ;; # debian dpkg - *.rpmsave|*.rpmnew) return 1 ;; - README*|*/README*) return 1 ;; # documentation - *.sig) return 1 ;; # signatures - esac - else - return 1 - fi - return 0 -} - -version_sort () -{ - case $version_sort_sort_has_v in - yes) - LC_ALL=C sort -V;; - no) - LC_ALL=C sort -n;; - *) - if sort -V /dev/null 2>&1; then - version_sort_sort_has_v=yes - LC_ALL=C sort -V - else - version_sort_sort_has_v=no - LC_ALL=C sort -n - fi;; - esac -} - -version_test_numeric () -{ - version_test_numeric_a="$1" - version_test_numeric_cmp="$2" - version_test_numeric_b="$3" - if [ "$version_test_numeric_a" = "$version_test_numeric_b" ] ; then - case "$version_test_numeric_cmp" in - ge|eq|le) return 0 ;; - gt|lt) return 1 ;; - esac - fi - if [ "$version_test_numeric_cmp" = "lt" ] ; then - version_test_numeric_c="$version_test_numeric_a" - version_test_numeric_a="$version_test_numeric_b" - version_test_numeric_b="$version_test_numeric_c" - fi - if (echo "$version_test_numeric_a" ; echo "$version_test_numeric_b") | version_sort | head -n 1 | grep -qx "$version_test_numeric_b" ; then - return 0 - else - return 1 - fi -} - -version_test_gt () -{ - version_test_gt_a="`echo "$1" | sed -e "s/[^-]*-//"`" - version_test_gt_b="`echo "$2" | sed -e "s/[^-]*-//"`" - version_test_gt_cmp=gt - if [ "x$version_test_gt_b" = "x" ] ; then - return 0 - fi - case "$version_test_gt_a:$version_test_gt_b" in - *.old:*.old) ;; - *.old:*) version_test_gt_a="`echo "$version_test_gt_a" | sed -e 's/\.old$//'`" ; version_test_gt_cmp=gt ;; - *:*.old) version_test_gt_b="`echo "$version_test_gt_b" | sed -e 's/\.old$//'`" ; version_test_gt_cmp=ge ;; - esac - version_test_numeric "$version_test_gt_a" "$version_test_gt_cmp" "$version_test_gt_b" - return "$?" -} - -version_find_latest () -{ - version_find_latest_a="" - for i in "$@" ; do - if version_test_gt "$i" "$version_find_latest_a" ; then - version_find_latest_a="$i" - fi - done - echo "$version_find_latest_a" -} - -# One layer of quotation is eaten by "" and the second by sed; so this turns -# ' into \'. -grub_quote () { - sed "s/'/'\\\\''/g" -} - -gettext_quoted () { - gettext "$@" | grub_quote -} - -# Run the first argument through gettext, and then pass that and all -# remaining arguments to printf. This is a useful abbreviation and tends to -# be easier to type. -gettext_printf () { - gettext_printf_format="$1" - shift - printf "$(gettext "$gettext_printf_format")" "$@" -} - -uses_abstraction () { - device="$1" - old_ifs="$IFS" - IFS=' -' - - abstraction="`"${grub_probe}" --device ${device} --target=abstraction`" - for module in ${abstraction}; do - if test "x${module}" = "x$2"; then - IFS="$old_ifs" - return 0 - fi - done - IFS="$old_ifs" - return 1 -} - -print_option_help () { - if test x$print_option_help_wc = x; then - if wc -L /dev/null 2>&1; then - print_option_help_wc=-L - elif wc -m /dev/null 2>&1; then - print_option_help_wc=-m - else - print_option_help_wc=-b - fi - fi - if test x$grub_have_fmt = x; then - if fmt -w 40 /dev/null 2>&1; then - grub_have_fmt=y; - else - grub_have_fmt=n; - fi - fi - print_option_help_lead=" $1" - print_option_help_lspace="$(echo "$print_option_help_lead" | wc $print_option_help_wc)" - print_option_help_fill="$((26 - print_option_help_lspace))" - printf "%s" "$print_option_help_lead" - if test $print_option_help_fill -le 0; then - print_option_help_nl=y - echo - else - print_option_help_i=0; - while test $print_option_help_i -lt $print_option_help_fill; do - printf " " - print_option_help_i=$((print_option_help_i+1)) - done - print_option_help_nl=n - fi - if test x$grub_have_fmt = xy; then - print_option_help_split="$(echo "$2" | fmt -w 50)" - else - print_option_help_split="$2" - fi - if test x$print_option_help_nl = xy; then - echo "$print_option_help_split" | awk \ - '{ print " " $0; }' - else - echo "$print_option_help_split" | awk 'BEGIN { n = 0 } - { if (n == 1) print " " $0; else print $0; n = 1 ; }' - fi -} - -grub_fmt () { - if test x$grub_have_fmt = x; then - if fmt -w 40 < /dev/null > /dev/null; then - grub_have_fmt=y; - else - grub_have_fmt=n; - fi - fi - - if test x$grub_have_fmt = xy; then - fmt - else - cat - fi -} - -grub_tab=" " - -grub_add_tab () { - sed -e "s/^/$grub_tab/" -} - diff --git a/thirdparty/grub-2.04/util/grub-mkfont.c b/thirdparty/grub-2.04/util/grub-mkfont.c deleted file mode 100644 index 0fe45a610..000000000 --- a/thirdparty/grub-2.04/util/grub-mkfont.c +++ /dev/null @@ -1,1287 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2009,2010 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#include -#include -#include - -#ifndef GRUB_BUILD -#define _GNU_SOURCE 1 -#pragma GCC diagnostic ignored "-Wmissing-prototypes" -#pragma GCC diagnostic ignored "-Wmissing-declarations" -#include -#pragma GCC diagnostic error "-Wmissing-prototypes" -#pragma GCC diagnostic error "-Wmissing-declarations" -#endif -#include - -#include - -#include -#include FT_FREETYPE_H -#include FT_TRUETYPE_TAGS_H -#include FT_TRUETYPE_TABLES_H -#include FT_SYNTHESIS_H - -#undef __FTERRORS_H__ -#define FT_ERROR_START_LIST const char *ft_errmsgs[] = { -#define FT_ERRORDEF(e, v, s) [e] = s, -#define FT_ERROR_END_LIST }; -#include FT_ERRORS_H - -#ifndef GRUB_BUILD -#include "progname.h" -#endif - -#ifdef GRUB_BUILD -#define grub_util_fopen fopen -#endif - -#define GRUB_FONT_DEFAULT_SIZE 16 - -#define GRUB_FONT_RANGE_BLOCK 1024 - -struct grub_glyph_info -{ - struct grub_glyph_info *next; - grub_uint32_t char_code; - int width; - int height; - int x_ofs; - int y_ofs; - int device_width; - int bitmap_size; - grub_uint8_t *bitmap; -}; - -enum file_formats -{ - PF2 -}; - -enum - { - GRUB_FONT_FLAG_BOLD = 1, - GRUB_FONT_FLAG_NOBITMAP = 2, - GRUB_FONT_FLAG_NOHINTING = 4, - GRUB_FONT_FLAG_FORCEHINT = 8 - }; - -struct grub_font_info -{ - const char *name; - int style; - int desc; - int asce; - int size; - int max_width; - int max_height; - int min_y; - int max_y; - int flags; - int num_range; - grub_uint32_t *ranges; - struct grub_glyph_info *glyphs_unsorted; - struct grub_glyph_info *glyphs_sorted; - int num_glyphs; -}; - -static int font_verbosity; - -static void -add_pixel (grub_uint8_t **data, int *mask, int not_blank) -{ - if (*mask == 0) - { - (*data)++; - **data = 0; - *mask = 128; - } - - if (not_blank) - **data |= *mask; - - *mask >>= 1; -} - -static void -add_glyph (struct grub_font_info *font_info, FT_UInt glyph_idx, FT_Face face, - grub_uint32_t char_code, int nocut) -{ - struct grub_glyph_info *glyph_info; - int width, height; - int cuttop, cutbottom, cutleft, cutright; - grub_uint8_t *data; - int mask, i, j, bitmap_size; - FT_GlyphSlot glyph; - int flag = FT_LOAD_RENDER | FT_LOAD_MONOCHROME; - FT_Error err; - - if (font_info->flags & GRUB_FONT_FLAG_NOBITMAP) - flag |= FT_LOAD_NO_BITMAP; - - if (font_info->flags & GRUB_FONT_FLAG_NOHINTING) - flag |= FT_LOAD_NO_HINTING; - else if (font_info->flags & GRUB_FONT_FLAG_FORCEHINT) - flag |= FT_LOAD_FORCE_AUTOHINT; - - err = FT_Load_Glyph (face, glyph_idx, flag); - if (err) - { - printf (_("Freetype Error %d loading glyph 0x%x for U+0x%x%s"), - err, glyph_idx, char_code & GRUB_FONT_CODE_CHAR_MASK, - char_code & GRUB_FONT_CODE_RIGHT_JOINED - /* TRANSLATORS: These qualifiers are used for cursive typography, - mainly Arabic. Note that the terms refer to the visual position - and not logical order and if used in left-to-right script then - leftmost is initial but with right-to-left script like Arabic - rightmost is the initial. */ - ? ((char_code & GRUB_FONT_CODE_LEFT_JOINED) ? _(" (medial)"): - _(" (leftmost)")) - : ((char_code & GRUB_FONT_CODE_LEFT_JOINED) ? _(" (rightmost)"): - "")); - - if (err > 0 && err < (signed) ARRAY_SIZE (ft_errmsgs)) - printf (": %s\n", ft_errmsgs[err]); - else - printf ("\n"); - return; - } - - glyph = face->glyph; - - if (font_info->flags & GRUB_FONT_FLAG_BOLD) - FT_GlyphSlot_Embolden (glyph); - - if (nocut) - cuttop = cutbottom = cutleft = cutright = 0; - else - { - for (cuttop = 0; cuttop < glyph->bitmap.rows; cuttop++) - { - for (j = 0; j < glyph->bitmap.width; j++) - if (glyph->bitmap.buffer[j / 8 + cuttop * glyph->bitmap.pitch] - & (1 << (7 - (j & 7)))) - break; - if (j != glyph->bitmap.width) - break; - } - - for (cutbottom = glyph->bitmap.rows - 1; cutbottom >= 0; cutbottom--) - { - for (j = 0; j < glyph->bitmap.width; j++) - if (glyph->bitmap.buffer[j / 8 + cutbottom * glyph->bitmap.pitch] - & (1 << (7 - (j & 7)))) - break; - if (j != glyph->bitmap.width) - break; - } - cutbottom = glyph->bitmap.rows - 1 - cutbottom; - if (cutbottom + cuttop >= glyph->bitmap.rows) - cutbottom = 0; - - for (cutleft = 0; cutleft < glyph->bitmap.width; cutleft++) - { - for (j = 0; j < glyph->bitmap.rows; j++) - if (glyph->bitmap.buffer[cutleft / 8 + j * glyph->bitmap.pitch] - & (1 << (7 - (cutleft & 7)))) - break; - if (j != glyph->bitmap.rows) - break; - } - for (cutright = glyph->bitmap.width - 1; cutright >= 0; cutright--) - { - for (j = 0; j < glyph->bitmap.rows; j++) - if (glyph->bitmap.buffer[cutright / 8 + j * glyph->bitmap.pitch] - & (1 << (7 - (cutright & 7)))) - break; - if (j != glyph->bitmap.rows) - break; - } - cutright = glyph->bitmap.width - 1 - cutright; - if (cutright + cutleft >= glyph->bitmap.width) - cutright = 0; - } - - width = glyph->bitmap.width - cutleft - cutright; - height = glyph->bitmap.rows - cutbottom - cuttop; - - bitmap_size = ((width * height + 7) / 8); - glyph_info = xmalloc (sizeof (struct grub_glyph_info)); - glyph_info->bitmap = xmalloc (bitmap_size); - glyph_info->bitmap_size = bitmap_size; - - glyph_info->next = font_info->glyphs_unsorted; - font_info->glyphs_unsorted = glyph_info; - font_info->num_glyphs++; - - glyph_info->char_code = char_code; - glyph_info->width = width; - glyph_info->height = height; - glyph_info->x_ofs = glyph->bitmap_left + cutleft; - glyph_info->y_ofs = glyph->bitmap_top - height - cuttop; - glyph_info->device_width = glyph->metrics.horiAdvance / 64; - - if (width > font_info->max_width) - font_info->max_width = width; - - if (height > font_info->max_height) - font_info->max_height = height; - - if (glyph_info->y_ofs < font_info->min_y && glyph_info->y_ofs > -font_info->size) - font_info->min_y = glyph_info->y_ofs; - - if (glyph_info->y_ofs + height > font_info->max_y) - font_info->max_y = glyph_info->y_ofs + height; - - mask = 0; - data = &glyph_info->bitmap[0] - 1; - for (j = cuttop; j < height + cuttop; j++) - for (i = cutleft; i < width + cutleft; i++) - add_pixel (&data, &mask, - glyph->bitmap.buffer[i / 8 + j * glyph->bitmap.pitch] & - (1 << (7 - (i & 7)))); -} - -struct glyph_replace *subst_rightjoin, *subst_leftjoin, *subst_medijoin; - -struct glyph_replace -{ - struct glyph_replace *next; - grub_uint32_t from, to; -}; - -/* TODO: sort glyph_replace and use binary search if necessary. */ -static void -add_char (struct grub_font_info *font_info, FT_Face face, - grub_uint32_t char_code, int nocut) -{ - FT_UInt glyph_idx; - struct glyph_replace *cur; - - glyph_idx = FT_Get_Char_Index (face, char_code); - if (!glyph_idx) - return; - add_glyph (font_info, glyph_idx, face, char_code, nocut); - for (cur = subst_rightjoin; cur; cur = cur->next) - if (cur->from == glyph_idx) - { - add_glyph (font_info, cur->to, face, - char_code | GRUB_FONT_CODE_RIGHT_JOINED, nocut); - break; - } - if (!cur && char_code >= GRUB_UNICODE_ARABIC_START - && char_code < GRUB_UNICODE_ARABIC_END) - { - int i; - for (i = 0; grub_unicode_arabic_shapes[i].code; i++) - if (grub_unicode_arabic_shapes[i].code == char_code - && grub_unicode_arabic_shapes[i].right_linked) - { - FT_UInt idx2; - idx2 = FT_Get_Char_Index (face, grub_unicode_arabic_shapes[i] - .right_linked); - if (idx2) - add_glyph (font_info, idx2, face, - char_code | GRUB_FONT_CODE_RIGHT_JOINED, nocut); - break; - } - - } - - for (cur = subst_leftjoin; cur; cur = cur->next) - if (cur->from == glyph_idx) - { - add_glyph (font_info, cur->to, face, - char_code | GRUB_FONT_CODE_LEFT_JOINED, nocut); - break; - } - if (!cur && char_code >= GRUB_UNICODE_ARABIC_START - && char_code < GRUB_UNICODE_ARABIC_END) - { - int i; - for (i = 0; grub_unicode_arabic_shapes[i].code; i++) - if (grub_unicode_arabic_shapes[i].code == char_code - && grub_unicode_arabic_shapes[i].left_linked) - { - FT_UInt idx2; - idx2 = FT_Get_Char_Index (face, grub_unicode_arabic_shapes[i] - .left_linked); - if (idx2) - add_glyph (font_info, idx2, face, - char_code | GRUB_FONT_CODE_LEFT_JOINED, nocut); - break; - } - - } - for (cur = subst_medijoin; cur; cur = cur->next) - if (cur->from == glyph_idx) - { - add_glyph (font_info, cur->to, face, - char_code | GRUB_FONT_CODE_LEFT_JOINED - | GRUB_FONT_CODE_RIGHT_JOINED, nocut); - break; - } - if (!cur && char_code >= GRUB_UNICODE_ARABIC_START - && char_code < GRUB_UNICODE_ARABIC_END) - { - int i; - for (i = 0; grub_unicode_arabic_shapes[i].code; i++) - if (grub_unicode_arabic_shapes[i].code == char_code - && grub_unicode_arabic_shapes[i].both_linked) - { - FT_UInt idx2; - idx2 = FT_Get_Char_Index (face, grub_unicode_arabic_shapes[i] - .both_linked); - if (idx2) - add_glyph (font_info, idx2, face, - char_code | GRUB_FONT_CODE_LEFT_JOINED - | GRUB_FONT_CODE_RIGHT_JOINED, nocut); - break; - } - - } -} - -struct gsub_header -{ - grub_uint32_t version; - grub_uint16_t scripts_off; - grub_uint16_t features_off; - grub_uint16_t lookups_off; -} GRUB_PACKED; - -struct gsub_features -{ - grub_uint16_t count; - struct - { -#define FEATURE_FINA 0x66696e61 -#define FEATURE_INIT 0x696e6974 -#define FEATURE_MEDI 0x6d656469 -#define FEATURE_AALT 0x61616c74 -#define FEATURE_LIGA 0x6c696761 -#define FEATURE_RLIG 0x726c6967 - grub_uint32_t feature_tag; - grub_uint16_t offset; - } GRUB_PACKED features[0]; -} GRUB_PACKED; - -struct gsub_feature -{ - grub_uint16_t params; - grub_uint16_t lookupcount; - grub_uint16_t lookupindices[0]; -} GRUB_PACKED; - -struct gsub_lookup_list -{ - grub_uint16_t count; - grub_uint16_t offsets[0]; -} GRUB_PACKED; - -struct gsub_lookup -{ - grub_uint16_t type; - grub_uint16_t flag; - grub_uint16_t subtablecount; - grub_uint16_t subtables[0]; -} GRUB_PACKED; - -struct gsub_substitution -{ - grub_uint16_t type; - grub_uint16_t coverage_off; - union - { - grub_int16_t delta; - struct - { - grub_int16_t count; - grub_uint16_t repl[0]; - }; - }; -} GRUB_PACKED; - -struct gsub_coverage_list -{ - grub_uint16_t type; - grub_uint16_t count; - grub_uint16_t glyphs[0]; -} GRUB_PACKED; - -struct gsub_coverage_ranges -{ - grub_uint16_t type; - grub_uint16_t count; - struct - { - grub_uint16_t start; - grub_uint16_t end; - grub_uint16_t start_index; - } GRUB_PACKED ranges[0]; -} GRUB_PACKED; - -#define GSUB_SINGLE_SUBSTITUTION 1 - -#define GSUB_SUBSTITUTION_DELTA 1 -#define GSUB_SUBSTITUTION_MAP 2 - -#define GSUB_COVERAGE_LIST 1 -#define GSUB_COVERAGE_RANGE 2 - -#define GSUB_RTL_CHAR 1 - -static void -add_subst (grub_uint32_t from, grub_uint32_t to, struct glyph_replace **target) -{ - struct glyph_replace *new = xmalloc (sizeof (*new)); - new->next = *target; - new->from = from; - new->to = to; - *target = new; -} - -static void -subst (const struct gsub_substitution *sub, grub_uint32_t glyph, - struct glyph_replace **target, int *i) -{ - grub_uint16_t substtype; - substtype = grub_be_to_cpu16 (sub->type); - - if (substtype == GSUB_SUBSTITUTION_DELTA) - add_subst (glyph, glyph + grub_be_to_cpu16 (sub->delta), target); - else if (*i >= grub_be_to_cpu16 (sub->count)) - printf (_("Out of range substitution (%d, %d)\n"), *i, - grub_be_to_cpu16 (sub->count)); - else - add_subst (glyph, grub_be_to_cpu16 (sub->repl[(*i)++]), target); -} - -static void -process_cursive (struct gsub_feature *feature, - struct gsub_lookup_list *lookups, - grub_uint32_t feattag) -{ - int j, k; - int i; - struct glyph_replace **target = NULL; - struct gsub_substitution *sub; - - for (j = 0; j < grub_be_to_cpu16 (feature->lookupcount); j++) - { - int lookup_index = grub_be_to_cpu16 (feature->lookupindices[j]); - struct gsub_lookup *lookup; - if (lookup_index >= grub_be_to_cpu16 (lookups->count)) - { - /* TRANSLATORS: "lookup" is taken directly from font specifications - which are formulated as "Under condition X replace LOOKUP with - SUBSTITUITION". "*/ - printf (_("Out of range lookup: %d\n"), lookup_index); - continue; - } - lookup = (struct gsub_lookup *) - ((grub_uint8_t *) lookups - + grub_be_to_cpu16 (lookups->offsets[lookup_index])); - if (grub_be_to_cpu16 (lookup->type) != GSUB_SINGLE_SUBSTITUTION) - { - printf (_("Unsupported substitution type: %d\n"), - grub_be_to_cpu16 (lookup->type)); - continue; - } - if (grub_be_to_cpu16 (lookup->flag) & ~GSUB_RTL_CHAR) - { - grub_util_info ("unsupported substitution flag: 0x%x", - grub_be_to_cpu16 (lookup->flag)); - } - switch (feattag) - { - case FEATURE_INIT: - if (grub_be_to_cpu16 (lookup->flag) & GSUB_RTL_CHAR) - target = &subst_leftjoin; - else - target = &subst_rightjoin; - break; - case FEATURE_FINA: - if (grub_be_to_cpu16 (lookup->flag) & GSUB_RTL_CHAR) - target = &subst_rightjoin; - else - target = &subst_leftjoin; - break; - case FEATURE_MEDI: - target = &subst_medijoin; - break; - } - for (k = 0; k < grub_be_to_cpu16 (lookup->subtablecount); k++) - { - sub = (struct gsub_substitution *) - ((grub_uint8_t *) lookup + grub_be_to_cpu16 (lookup->subtables[k])); - grub_uint16_t substtype; - substtype = grub_be_to_cpu16 (sub->type); - if (substtype != GSUB_SUBSTITUTION_MAP - && substtype != GSUB_SUBSTITUTION_DELTA) - { - printf (_("Unsupported substitution specification: %d\n"), - substtype); - continue; - } - void *coverage = (grub_uint8_t *) sub - + grub_be_to_cpu16 (sub->coverage_off); - grub_uint32_t covertype; - covertype = grub_be_to_cpu16 (grub_get_unaligned16 (coverage)); - i = 0; - if (covertype == GSUB_COVERAGE_LIST) - { - struct gsub_coverage_list *cover = coverage; - int l; - for (l = 0; l < grub_be_to_cpu16 (cover->count); l++) - subst (sub, grub_be_to_cpu16 (cover->glyphs[l]), target, &i); - } - else if (covertype == GSUB_COVERAGE_RANGE) - { - struct gsub_coverage_ranges *cover = coverage; - int l, m; - for (l = 0; l < grub_be_to_cpu16 (cover->count); l++) - for (m = grub_be_to_cpu16 (cover->ranges[l].start); - m <= grub_be_to_cpu16 (cover->ranges[l].end); m++) - subst (sub, m, target, &i); - } - else - /* TRANSLATORS: most font transformations apply only to - some glyphs. Those glyphs are described as "coverage". - There are 2 coverage specifications: list and range. - This warning is thrown when another coverage specification - is detected. */ - fprintf (stderr, - _("Unsupported coverage specification: %d\n"), covertype); - } - } -} - -static void -add_font (struct grub_font_info *font_info, FT_Face face, int nocut) -{ - struct gsub_header *gsub = NULL; - FT_ULong gsub_len = 0; - - if (!FT_Load_Sfnt_Table (face, TTAG_GSUB, 0, NULL, &gsub_len)) - { - gsub = xmalloc (gsub_len); - if (FT_Load_Sfnt_Table (face, TTAG_GSUB, 0, (void *) gsub, &gsub_len)) - { - free (gsub); - gsub = NULL; - gsub_len = 0; - } - } - if (gsub) - { - struct gsub_features *features - = (struct gsub_features *) (((grub_uint8_t *) gsub) - + grub_be_to_cpu16 (gsub->features_off)); - struct gsub_lookup_list *lookups - = (struct gsub_lookup_list *) (((grub_uint8_t *) gsub) - + grub_be_to_cpu16 (gsub->lookups_off)); - int i; - int nfeatures = grub_be_to_cpu16 (features->count); - for (i = 0; i < nfeatures; i++) - { - struct gsub_feature *feature = (struct gsub_feature *) - ((grub_uint8_t *) features - + grub_be_to_cpu16 (features->features[i].offset)); - grub_uint32_t feattag - = grub_be_to_cpu32 (features->features[i].feature_tag); - if (feature->params) - fprintf (stderr, - _("WARNING: unsupported font feature parameters: %x\n"), - grub_be_to_cpu16 (feature->params)); - switch (feattag) - { - /* Used for retrieving all possible variants. Useless in grub. */ - case FEATURE_AALT: - break; - - /* FIXME: Add ligature support. */ - case FEATURE_LIGA: - case FEATURE_RLIG: - break; - - /* Cursive form variants. */ - case FEATURE_FINA: - case FEATURE_INIT: - case FEATURE_MEDI: - process_cursive (feature, lookups, feattag); - break; - - default: - { - char str[5]; - int j; - memcpy (str, &features->features[i].feature_tag, - sizeof (features->features[i].feature_tag)); - str[4] = 0; - for (j = 0; j < 4; j++) - if (!grub_isgraph (str[j])) - str[j] = '?'; - /* TRANSLATORS: It's gsub feature, not gsub font. */ - grub_util_info ("Unknown gsub font feature 0x%x (%s)", - feattag, str); - } - } - } - } - - if (font_info->num_range) - { - int i; - grub_uint32_t j; - - for (i = 0; i < font_info->num_range; i++) - for (j = font_info->ranges[i * 2]; j <= font_info->ranges[i * 2 + 1]; - j++) - add_char (font_info, face, j, nocut); - } - else - { - grub_uint32_t char_code, glyph_index; - - for (char_code = FT_Get_First_Char (face, &glyph_index); - glyph_index; - char_code = FT_Get_Next_Char (face, char_code, &glyph_index)) - add_char (font_info, face, char_code, nocut); - } -} - -static void -write_string_section (const char *name, const char *str, - int *offset, FILE *file, - const char *filename) -{ - grub_uint32_t leng, leng_be32; - - leng = strlen (str) + 1; - leng_be32 = grub_cpu_to_be32 (leng); - - grub_util_write_image (name, 4, file, filename); - grub_util_write_image ((char *) &leng_be32, 4, file, filename); - grub_util_write_image (str, leng, file, filename); - - *offset += 8 + leng; -} - -static void -write_be16_section (const char *name, grub_uint16_t data, int* offset, - FILE *file, const char *filename) -{ - grub_uint32_t leng; - - leng = grub_cpu_to_be32_compile_time (2); - data = grub_cpu_to_be16 (data); - grub_util_write_image (name, 4, file, filename); - grub_util_write_image ((char *) &leng, 4, file, filename); - grub_util_write_image ((char *) &data, 2, file, filename); - - *offset += 10; -} - -static void -print_glyphs (struct grub_font_info *font_info) -{ - int num; - struct grub_glyph_info *glyph; - char line[512]; - - for (glyph = font_info->glyphs_sorted, num = 0; num < font_info->num_glyphs; - glyph++, num++) - { - int x, y, xmax, xmin, ymax, ymin; - grub_uint8_t *bitmap, mask; - - printf ("\nGlyph #%d, U+%04x\n", num, glyph->char_code); - printf ("Width %d, Height %d, X offset %d, Y offset %d, Device width %d\n", - glyph->width, glyph->height, glyph->x_ofs, glyph->y_ofs, - glyph->device_width); - - xmax = glyph->x_ofs + glyph->width; - if (xmax < glyph->device_width) - xmax = glyph->device_width; - - xmin = glyph->x_ofs; - if (xmin > 0) - xmin = 0; - - ymax = glyph->y_ofs + glyph->height; - if (ymax < font_info->asce) - ymax = font_info->asce; - - ymin = glyph->y_ofs; - if (ymin > - font_info->desc) - ymin = - font_info->desc; - - bitmap = glyph->bitmap; - mask = 0x80; - for (y = ymax - 1; y > ymin - 1; y--) - { - int line_pos; - - line_pos = 0; - for (x = xmin; x < xmax; x++) - { - if ((x >= glyph->x_ofs) && - (x < glyph->x_ofs + glyph->width) && - (y >= glyph->y_ofs) && - (y < glyph->y_ofs + glyph->height)) - { - line[line_pos++] = (*bitmap & mask) ? '#' : '_'; - mask >>= 1; - if (mask == 0) - { - mask = 0x80; - bitmap++; - } - } - else if ((x >= 0) && - (x < glyph->device_width) && - (y >= - font_info->desc) && - (y < font_info->asce)) - { - line[line_pos++] = ((x == 0) || (y == 0)) ? '+' : '.'; - } - else - line[line_pos++] = '*'; - } - line[line_pos] = 0; - printf ("%s\n", line); - } - } -} - -static void -write_font_pf2 (struct grub_font_info *font_info, char *output_file) -{ - FILE *file; - grub_uint32_t leng; - char style_name[20], *font_name, *ptr; - int offset; - struct grub_glyph_info *cur; - - file = grub_util_fopen (output_file, "wb"); - if (! file) - grub_util_error (_("cannot write to `%s': %s"), output_file, - strerror (errno)); - - offset = 0; - - leng = grub_cpu_to_be32_compile_time (4); - grub_util_write_image (FONT_FORMAT_SECTION_NAMES_FILE, - sizeof(FONT_FORMAT_SECTION_NAMES_FILE) - 1, file, - output_file); - grub_util_write_image ((char *) &leng, 4, file, output_file); - grub_util_write_image (FONT_FORMAT_PFF2_MAGIC, 4, file, output_file); - offset += 12; - - if (! font_info->name) - font_info->name = "Unknown"; - - if (font_info->flags & GRUB_FONT_FLAG_BOLD) - font_info->style |= FT_STYLE_FLAG_BOLD; - - style_name[0] = 0; - if (font_info->style & FT_STYLE_FLAG_BOLD) - strcpy (style_name, " Bold"); - - if (font_info->style & FT_STYLE_FLAG_ITALIC) - strcat (style_name, " Italic"); - - if (! style_name[0]) - strcpy (style_name, " Regular"); - - font_name = xmalloc (strlen (font_info->name) + strlen (&style_name[1]) - + 3 + 20); - ptr = grub_stpcpy (font_name, font_info->name); - *ptr++ = ' '; - ptr = grub_stpcpy (ptr, &style_name[1]); - *ptr++ = ' '; - snprintf (ptr, 20, "%d", font_info->size); - - write_string_section (FONT_FORMAT_SECTION_NAMES_FONT_NAME, - font_name, &offset, file, output_file); - write_string_section (FONT_FORMAT_SECTION_NAMES_FAMILY, - font_info->name, &offset, file, output_file); - write_string_section (FONT_FORMAT_SECTION_NAMES_WEIGHT, - (font_info->style & FT_STYLE_FLAG_BOLD) ? - "bold" : "normal", - &offset, file, output_file); - write_string_section (FONT_FORMAT_SECTION_NAMES_SLAN, - (font_info->style & FT_STYLE_FLAG_ITALIC) ? - "italic" : "normal", - &offset, file, output_file); - - write_be16_section (FONT_FORMAT_SECTION_NAMES_POINT_SIZE, - font_info->size, &offset, file, output_file); - write_be16_section (FONT_FORMAT_SECTION_NAMES_MAX_CHAR_WIDTH, - font_info->max_width, &offset, file, output_file); - write_be16_section (FONT_FORMAT_SECTION_NAMES_MAX_CHAR_HEIGHT, - font_info->max_height, &offset, file, output_file); - - if (! font_info->desc) - { - if (font_info->min_y >= 0) - font_info->desc = 1; - else - font_info->desc = - font_info->min_y; - } - - if (! font_info->asce) - { - if (font_info->max_y <= 0) - font_info->asce = 1; - else - font_info->asce = font_info->max_y; - } - - write_be16_section (FONT_FORMAT_SECTION_NAMES_ASCENT, - font_info->asce, &offset, file, output_file); - write_be16_section (FONT_FORMAT_SECTION_NAMES_DESCENT, - font_info->desc, &offset, file, output_file); - - if (font_verbosity > 0) - { - printf ("Font name: %s\n", font_name); - printf ("Max width: %d\n", font_info->max_width); - printf ("Max height: %d\n", font_info->max_height); - printf ("Font ascent: %d\n", font_info->asce); - printf ("Font descent: %d\n", font_info->desc); - } - - if (font_verbosity > 0) - printf ("Number of glyph: %d\n", font_info->num_glyphs); - - leng = grub_cpu_to_be32 (font_info->num_glyphs * 9); - grub_util_write_image (FONT_FORMAT_SECTION_NAMES_CHAR_INDEX, - sizeof(FONT_FORMAT_SECTION_NAMES_CHAR_INDEX) - 1, - file, output_file); - grub_util_write_image ((char *) &leng, 4, file, output_file); - offset += 8 + font_info->num_glyphs * 9 + 8; - - for (cur = font_info->glyphs_sorted; - cur < font_info->glyphs_sorted + font_info->num_glyphs; cur++) - { - grub_uint32_t data32; - grub_uint8_t data8; - data32 = grub_cpu_to_be32 (cur->char_code); - grub_util_write_image ((char *) &data32, 4, file, output_file); - data8 = 0; - grub_util_write_image ((char *) &data8, 1, file, output_file); - data32 = grub_cpu_to_be32 (offset); - grub_util_write_image ((char *) &data32, 4, file, output_file); - offset += 10 + cur->bitmap_size; - } - - leng = 0xffffffff; - grub_util_write_image (FONT_FORMAT_SECTION_NAMES_DATA, - sizeof(FONT_FORMAT_SECTION_NAMES_DATA) - 1, - file, output_file); - grub_util_write_image ((char *) &leng, 4, file, output_file); - - for (cur = font_info->glyphs_sorted; - cur < font_info->glyphs_sorted + font_info->num_glyphs; cur++) - { - grub_uint16_t data; - data = grub_cpu_to_be16 (cur->width); - grub_util_write_image ((char *) &data, 2, file, output_file); - data = grub_cpu_to_be16 (cur->height); - grub_util_write_image ((char *) &data, 2, file, output_file); - data = grub_cpu_to_be16 (cur->x_ofs); - grub_util_write_image ((char *) &data, 2, file, output_file); - data = grub_cpu_to_be16 (cur->y_ofs); - grub_util_write_image ((char *) &data, 2, file, output_file); - data = grub_cpu_to_be16 (cur->device_width); - grub_util_write_image ((char *) &data, 2, file, output_file); - grub_util_write_image ((char *) &cur->bitmap[0], cur->bitmap_size, - file, output_file); - } - - fclose (file); -} - -#ifndef GRUB_BUILD -static struct argp_option options[] = { - {"output", 'o', N_("FILE"), 0, N_("save output in FILE [required]"), 0}, - /* TRANSLATORS: bitmaps are images like e.g. in JPEG. */ - {"index", 'i', N_("NUM"), 0, - /* TRANSLATORS: some font files may have multiple faces (fonts). - This option is used to chose among them, the first face being '0'. - Rarely used. */ - N_("select face index"), 0}, - {"range", 'r', N_("FROM-TO[,FROM-TO]"), 0, - /* TRANSLATORS: It refers to the range of characters in font. */ - N_("set font range"), 0}, - {"name", 'n', N_("NAME"), 0, - /* TRANSLATORS: "family name" for font is just a generic name without suffix - like "Bold". */ - N_("set font family name"), 0}, - {"size", 's', N_("SIZE"), 0, N_("set font size"), 0}, - {"desc", 'd', N_("NUM"), 0, N_("set font descent"), 0}, - {"asce", 'c', N_("NUM"), 0, N_("set font ascent"), 0}, - {"bold", 'b', 0, 0, N_("convert to bold font"), 0}, - {"force-autohint", 'a', 0, 0, N_("force autohint"), 0}, - {"no-hinting", 0x101, 0, 0, N_("disable hinting"), 0}, - {"no-bitmap", 0x100, 0, 0, - /* TRANSLATORS: some fonts contain bitmap rendering for - some sizes. This option forces rerendering even if - pre-rendered bitmap is available. - */ - N_("ignore bitmap strikes when loading"), 0}, - {"verbose", 'v', 0, 0, N_("print verbose messages."), 0}, - { 0, 0, 0, 0, 0, 0 } -}; -#define my_argp_parse argp_parse -#define MY_ARGP_KEY_ARG ARGP_KEY_ARG -#define my_error_t error_t -#define MY_ARGP_ERR_UNKNOWN ARGP_ERR_UNKNOWN -#define my_argp_state argp_state - -#else - -#define my_error_t int -#define MY_ARGP_ERR_UNKNOWN -1 -#define MY_ARGP_KEY_ARG -1 -#define my_argp_parse(a, argc, argv, b, c, st) my_argp_parse_real(argc, argv, st) -struct my_argp_state -{ - void *input; -}; - -#endif - -struct arguments -{ - struct grub_font_info font_info; - size_t nfiles; - size_t files_max; - char **files; - char *output_file; - int font_index; - int font_size; - enum file_formats file_format; -}; - -#ifdef GRUB_BUILD - -static int -has_argument (int v) -{ - return v =='o' || v == 'i' || v == 'r' || v == 'n' || v == 's' - || v == 'd' || v == 'c'; -} - -#endif - -static my_error_t -argp_parser (int key, char *arg, struct my_argp_state *state) -{ - /* Get the input argument from argp_parse, which we - know is a pointer to our arguments structure. */ - struct arguments *arguments = state->input; - - switch (key) - { - case 'b': - arguments->font_info.flags |= GRUB_FONT_FLAG_BOLD; - break; - - case 0x100: - arguments->font_info.flags |= GRUB_FONT_FLAG_NOBITMAP; - break; - - case 0x101: - arguments->font_info.flags |= GRUB_FONT_FLAG_NOHINTING; - break; - - case 'a': - arguments->font_info.flags |= GRUB_FONT_FLAG_FORCEHINT; - break; - - case 'o': - arguments->output_file = xstrdup (arg); - break; - - case 'n': - arguments->font_info.name = xstrdup (arg); - break; - - case 'i': - arguments->font_index = strtoul (arg, NULL, 0); - break; - - case 's': - arguments->font_size = strtoul (arg, NULL, 0); - break; - - case 'r': - { - char *p = arg; - - while (1) - { - grub_uint32_t a, b; - - a = strtoul (p, &p, 0); - if (*p != '-') - /* TRANSLATORS: It refers to the range of characters in font. */ - grub_util_error ("%s", _("invalid font range")); - b = strtoul (p + 1, &p, 0); - if ((arguments->font_info.num_range - & (GRUB_FONT_RANGE_BLOCK - 1)) == 0) - arguments->font_info.ranges = xrealloc (arguments->font_info.ranges, - (arguments->font_info.num_range + - GRUB_FONT_RANGE_BLOCK) * - sizeof (grub_uint32_t) * 2); - - arguments->font_info.ranges[arguments->font_info.num_range * 2] = a; - arguments->font_info.ranges[arguments->font_info.num_range * 2 + 1] = b; - arguments->font_info.num_range++; - - if (*p) - { - if (*p != ',') - grub_util_error ("%s", _("invalid font range")); - p++; - } - else - break; - } - break; - } - - case 'd': - arguments->font_info.desc = strtoul (arg, NULL, 0); - break; - - case 'c': - arguments->font_info.asce = strtoul (arg, NULL, 0); - break; - - case 'v': - font_verbosity++; - break; - - case MY_ARGP_KEY_ARG: - assert (arguments->nfiles < arguments->files_max); - arguments->files[arguments->nfiles++] = xstrdup(arg); - break; - - default: - return MY_ARGP_ERR_UNKNOWN; - } - return 0; -} - -#ifdef GRUB_BUILD - -/* We don't require host platform to have argp. In the same time configuring - gnulib for build would result in even worse mess. So we have our - minimalistic argp replacement just enough for build system. Most - argp features are omitted. */ - -static int -my_argp_parse_real (int argc, char **argv, void *st) -{ - int curar; - struct my_argp_state p; - - p.input = st; - - for (curar = 1; curar < argc; ) - { - if (argv[curar][0] == '-') - { - if (has_argument (argv[curar][1]) - && curar + 1 >= argc) - return 1; - if (has_argument (argv[curar][1])) - { - if (argp_parser (argv[curar][1], argv[curar + 1], &p)) - return 1; - curar += 2; - continue; - } - if (argp_parser (argv[curar][1], NULL, &p)) - return 1; - curar++; - continue; - } - if (argp_parser (MY_ARGP_KEY_ARG, argv[curar], &p)) - return 1; - curar++; - } - return 0; -} -#endif - -#ifndef GRUB_BUILD -static struct argp argp = { - options, argp_parser, N_("[OPTIONS] FONT_FILES"), - N_("Convert common font file formats into PF2"), - NULL, NULL, NULL -}; -#endif - -int -main (int argc, char *argv[]) -{ - FT_Library ft_lib; - struct arguments arguments; - -#ifndef GRUB_BUILD - grub_util_host_init (&argc, &argv); -#endif - - memset (&arguments, 0, sizeof (struct arguments)); - arguments.file_format = PF2; - arguments.files_max = argc + 1; - arguments.files = xmalloc ((arguments.files_max + 1) - * sizeof (arguments.files[0])); - memset (arguments.files, 0, (arguments.files_max + 1) - * sizeof (arguments.files[0])); - - if (my_argp_parse (&argp, argc, argv, 0, 0, &arguments) != 0) - { - fprintf (stderr, "%s", _("Error in parsing command line arguments\n")); - exit(1); - } - - if (! arguments.output_file) - grub_util_error ("%s", _("output file must be specified")); - - if (FT_Init_FreeType (&ft_lib)) - grub_util_error ("%s", _("FT_Init_FreeType fails")); - - { - size_t i; - for (i = 0; i < arguments.nfiles; i++) - { - FT_Face ft_face; - int size; - FT_Error err; - - err = FT_New_Face (ft_lib, arguments.files[i], - arguments.font_index, &ft_face); - if (err) - { - printf (_("can't open file %s, index %d: error %d"), - arguments.files[i], - arguments.font_index, err); - if (err > 0 && err < (signed) ARRAY_SIZE (ft_errmsgs)) - printf (": %s\n", ft_errmsgs[err]); - else - printf ("\n"); - - continue; - } - - if ((! arguments.font_info.name) && (ft_face->family_name)) - arguments.font_info.name = xstrdup (ft_face->family_name); - - size = arguments.font_size; - if (! size) - { - if ((ft_face->face_flags & FT_FACE_FLAG_SCALABLE) || - (! ft_face->num_fixed_sizes)) - size = GRUB_FONT_DEFAULT_SIZE; - else - size = ft_face->available_sizes[0].height; - } - - arguments.font_info.style = ft_face->style_flags; - arguments.font_info.size = size; - - err = FT_Set_Pixel_Sizes (ft_face, size, size); - - if (err) - grub_util_error (_("can't set %dx%d font size: Freetype error %d: %s"), - size, size, err, - (err > 0 && err < (signed) ARRAY_SIZE (ft_errmsgs)) - ? ft_errmsgs[err] : ""); - add_font (&arguments.font_info, ft_face, arguments.file_format != PF2); - FT_Done_Face (ft_face); - } - } - - FT_Done_FreeType (ft_lib); - - { - int counter[65537]; - struct grub_glyph_info *tmp, *cur; - int i; - - memset (counter, 0, sizeof (counter)); - - for (cur = arguments.font_info.glyphs_unsorted; cur; cur = cur->next) - counter[(cur->char_code & 0xffff) + 1]++; - for (i = 0; i < 0x10000; i++) - counter[i+1] += counter[i]; - tmp = xmalloc (arguments.font_info.num_glyphs - * sizeof (tmp[0])); - for (cur = arguments.font_info.glyphs_unsorted; cur; cur = cur->next) - tmp[counter[(cur->char_code & 0xffff)]++] = *cur; - - memset (counter, 0, sizeof (counter)); - - for (cur = tmp; cur < tmp + arguments.font_info.num_glyphs; cur++) - counter[((cur->char_code & 0xffff0000) >> 16) + 1]++; - for (i = 0; i < 0x10000; i++) - counter[i+1] += counter[i]; - arguments.font_info.glyphs_sorted = xmalloc (arguments.font_info.num_glyphs - * sizeof (arguments.font_info.glyphs_sorted[0])); - for (cur = tmp; cur < tmp + arguments.font_info.num_glyphs; cur++) - arguments.font_info.glyphs_sorted[counter[(cur->char_code & 0xffff0000) - >> 16]++] = *cur; - free (tmp); - } - - switch (arguments.file_format) - { - case PF2: - write_font_pf2 (&arguments.font_info, arguments.output_file); - break; - } - - if (font_verbosity > 1) - print_glyphs (&arguments.font_info); - - { - size_t i; - for (i = 0; i < arguments.nfiles; i++) - free (arguments.files[i]); - } - - return 0; -} diff --git a/thirdparty/grub-2.04/util/grub-mkimage.c b/thirdparty/grub-2.04/util/grub-mkimage.c deleted file mode 100644 index 912564e36..000000000 --- a/thirdparty/grub-2.04/util/grub-mkimage.c +++ /dev/null @@ -1,332 +0,0 @@ -/* grub-mkimage.c - make a bootable image */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2002,2003,2004,2005,2006,2007,2008,2009,2010 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#define _GNU_SOURCE 1 - -#pragma GCC diagnostic ignored "-Wmissing-prototypes" -#pragma GCC diagnostic ignored "-Wmissing-declarations" -#include -#pragma GCC diagnostic error "-Wmissing-prototypes" -#pragma GCC diagnostic error "-Wmissing-declarations" - - -#include "progname.h" - - - -static struct argp_option options[] = { - {"directory", 'd', N_("DIR"), 0, - /* TRANSLATORS: platform here isn't identifier. It can be translated. */ - N_("use images and modules under DIR [default=%s/]"), 0}, - {"prefix", 'p', N_("DIR"), 0, N_("set prefix directory"), 0}, - {"memdisk", 'm', N_("FILE"), 0, - /* TRANSLATORS: "memdisk" here isn't an identifier, it can be translated. - "embed" is a verb (command description). "*/ - N_("embed FILE as a memdisk image\n" - "Implies `-p (memdisk)/boot/grub' and overrides any prefix supplied previously," - " but the prefix itself can be overridden by later options"), 0}, - {"dtb", 'D', N_("FILE"), 0, N_("embed FILE as a device tree (DTB)\n"), 0}, - /* TRANSLATORS: "embed" is a verb (command description). "*/ - {"config", 'c', N_("FILE"), 0, N_("embed FILE as an early config"), 0}, - /* TRANSLATORS: "embed" is a verb (command description). "*/ - {"pubkey", 'k', N_("FILE"), 0, N_("embed FILE as public key for signature checking"), 0}, - /* TRANSLATORS: NOTE is a name of segment. */ - {"note", 'n', 0, 0, N_("add NOTE segment for CHRP IEEE1275"), 0}, - {"output", 'o', N_("FILE"), 0, N_("output a generated image to FILE [default=stdout]"), 0}, - {"format", 'O', N_("FORMAT"), 0, 0, 0}, - {"compression", 'C', "(xz|none|auto)", 0, N_("choose the compression to use for core image"), 0}, - {"verbose", 'v', 0, 0, N_("print verbose messages."), 0}, - { 0, 0, 0, 0, 0, 0 } -}; - -#pragma GCC diagnostic ignored "-Wformat-nonliteral" - -static char * -help_filter (int key, const char *text, void *input __attribute__ ((unused))) -{ - switch (key) - { - case 'd': - return xasprintf (text, grub_util_get_pkglibdir ()); - case 'O': - { - char *formats = grub_install_get_image_targets_string (), *ret; - ret = xasprintf ("%s\n%s %s", _("generate an image in FORMAT"), - _("available formats:"), formats); - free (formats); - return ret; - } - default: - return (char *) text; - } -} - -#pragma GCC diagnostic error "-Wformat-nonliteral" - -struct arguments -{ - size_t nmodules; - size_t modules_max; - char **modules; - char *output; - char *dir; - char *prefix; - char *memdisk; - char *dtb; - char **pubkeys; - size_t npubkeys; - char *font; - char *config; - int note; - const struct grub_install_image_target_desc *image_target; - grub_compression_t comp; -}; - -static error_t -argp_parser (int key, char *arg, struct argp_state *state) -{ - /* Get the input argument from argp_parse, which we - know is a pointer to our arguments structure. */ - struct arguments *arguments = state->input; - - switch (key) - { - case 'o': - if (arguments->output) - free (arguments->output); - - arguments->output = xstrdup (arg); - break; - - case 'O': - { - arguments->image_target = grub_install_get_image_target (arg); - if (!arguments->image_target) - { - printf (_("unknown target format %s\n"), arg); - argp_usage (state); - exit (1); - } - break; - } - case 'd': - if (arguments->dir) - free (arguments->dir); - - arguments->dir = xstrdup (arg); - break; - - case 'n': - arguments->note = 1; - break; - - case 'm': - if (arguments->memdisk) - free (arguments->memdisk); - - arguments->memdisk = xstrdup (arg); - - if (arguments->prefix) - free (arguments->prefix); - - arguments->prefix = xstrdup ("(memdisk)/boot/grub"); - break; - - case 'D': - if (arguments->dtb) - free (arguments->dtb); - - arguments->dtb = xstrdup (arg); - break; - - case 'k': - arguments->pubkeys = xrealloc (arguments->pubkeys, - sizeof (arguments->pubkeys[0]) - * (arguments->npubkeys + 1)); - arguments->pubkeys[arguments->npubkeys++] = xstrdup (arg); - break; - - case 'c': - if (arguments->config) - free (arguments->config); - - arguments->config = xstrdup (arg); - break; - - case 'C': - if (grub_strcmp (arg, "xz") == 0) - { -#ifdef HAVE_LIBLZMA - arguments->comp = GRUB_COMPRESSION_XZ; -#else - grub_util_error ("%s", - _("grub-mkimage is compiled without XZ support")); -#endif - } - else if (grub_strcmp (arg, "none") == 0) - arguments->comp = GRUB_COMPRESSION_NONE; - else if (grub_strcmp (arg, "auto") == 0) - arguments->comp = GRUB_COMPRESSION_AUTO; - else - grub_util_error (_("Unknown compression format %s"), arg); - break; - - case 'p': - if (arguments->prefix) - free (arguments->prefix); - - arguments->prefix = xstrdup (arg); - break; - - case 'v': - verbosity++; - break; - case ARGP_KEY_ARG: - assert (arguments->nmodules < arguments->modules_max); - arguments->modules[arguments->nmodules++] = xstrdup(arg); - break; - - default: - return ARGP_ERR_UNKNOWN; - } - return 0; -} - -static struct argp argp = { - options, argp_parser, N_("[OPTION]... [MODULES]"), - N_("Make a bootable image of GRUB."), - NULL, help_filter, NULL -}; - -int -main (int argc, char *argv[]) -{ - FILE *fp = stdout; - struct arguments arguments; - unsigned i; - - grub_util_host_init (&argc, &argv); - - memset (&arguments, 0, sizeof (struct arguments)); - arguments.comp = GRUB_COMPRESSION_AUTO; - arguments.modules_max = argc + 1; - arguments.modules = xmalloc ((arguments.modules_max + 1) - * sizeof (arguments.modules[0])); - memset (arguments.modules, 0, (arguments.modules_max + 1) - * sizeof (arguments.modules[0])); - - if (argp_parse (&argp, argc, argv, 0, 0, &arguments) != 0) - { - fprintf (stderr, "%s", _("Error in parsing command line arguments\n")); - exit(1); - } - - if (!arguments.image_target) - { - char *program = xstrdup(program_name); - printf ("%s\n", _("Target format not specified (use the -O option).")); - argp_help (&argp, stderr, ARGP_HELP_STD_USAGE, program); - free (program); - exit(1); - } - - if (!arguments.prefix) - { - char *program = xstrdup(program_name); - printf ("%s\n", _("Prefix not specified (use the -p option).")); - argp_help (&argp, stderr, ARGP_HELP_STD_USAGE, program); - free (program); - exit(1); - } - - if (arguments.output) - { - fp = grub_util_fopen (arguments.output, "wb"); - if (! fp) - grub_util_error (_("cannot open `%s': %s"), arguments.output, - strerror (errno)); - } - - if (!arguments.dir) - { - const char *dn = grub_util_get_target_dirname (arguments.image_target); - const char *pkglibdir = grub_util_get_pkglibdir (); - char *ptr; - arguments.dir = xmalloc (grub_strlen (pkglibdir) + grub_strlen (dn) + 2); - ptr = grub_stpcpy (arguments.dir, pkglibdir); - *ptr++ = '/'; - strcpy (ptr, dn); - } - - grub_install_generate_image (arguments.dir, arguments.prefix, fp, - arguments.output, arguments.modules, - arguments.memdisk, arguments.pubkeys, - arguments.npubkeys, arguments.config, - arguments.image_target, arguments.note, - arguments.comp, arguments.dtb); - - if (grub_util_file_sync (fp) < 0) - grub_util_error (_("cannot sync `%s': %s"), arguments.output ? : "stdout", - strerror (errno)); - if (fclose (fp) == EOF) - grub_util_error (_("cannot close `%s': %s"), arguments.output ? : "stdout", - strerror (errno)); - - for (i = 0; i < arguments.nmodules; i++) - free (arguments.modules[i]); - - free (arguments.dir); - free (arguments.prefix); - free (arguments.modules); - - if (arguments.output) - free (arguments.output); - - return 0; -} diff --git a/thirdparty/grub-2.04/util/grub-mkimage32.c b/thirdparty/grub-2.04/util/grub-mkimage32.c deleted file mode 100644 index 026a2dd59..000000000 --- a/thirdparty/grub-2.04/util/grub-mkimage32.c +++ /dev/null @@ -1,26 +0,0 @@ -#define MKIMAGE_ELF32 1 - -# define SUFFIX(x) x ## 32 -# define ELFCLASSXX ELFCLASS32 -# define Elf_Ehdr Elf32_Ehdr -# define Elf_Phdr Elf32_Phdr -# define Elf_Nhdr Elf32_Nhdr -# define Elf_Addr Elf32_Addr -# define Elf_Sym Elf32_Sym -# define Elf_Off Elf32_Off -# define Elf_Shdr Elf32_Shdr -# define Elf_Rela Elf32_Rela -# define Elf_Rel Elf32_Rel -# define Elf_Word Elf32_Word -# define Elf_Half Elf32_Half -# define Elf_Section Elf32_Section -# define ELF_R_SYM(val) ELF32_R_SYM(val) -# define ELF_R_TYPE(val) ELF32_R_TYPE(val) -# define ELF_ST_TYPE(val) ELF32_ST_TYPE(val) - -#define XEN_NOTE_SIZE 132 -#define XEN_PVH_NOTE_SIZE 20 - -#ifndef GRUB_MKIMAGEXX -#include "grub-mkimagexx.c" -#endif diff --git a/thirdparty/grub-2.04/util/grub-mkimage64.c b/thirdparty/grub-2.04/util/grub-mkimage64.c deleted file mode 100644 index 170defb40..000000000 --- a/thirdparty/grub-2.04/util/grub-mkimage64.c +++ /dev/null @@ -1,26 +0,0 @@ -#define MKIMAGE_ELF64 1 - -# define SUFFIX(x) x ## 64 -# define ELFCLASSXX ELFCLASS64 -# define Elf_Ehdr Elf64_Ehdr -# define Elf_Phdr Elf64_Phdr -# define Elf_Nhdr Elf64_Nhdr -# define Elf_Addr Elf64_Addr -# define Elf_Sym Elf64_Sym -# define Elf_Off Elf64_Off -# define Elf_Shdr Elf64_Shdr -# define Elf_Rela Elf64_Rela -# define Elf_Rel Elf64_Rel -# define Elf_Word Elf64_Word -# define Elf_Half Elf64_Half -# define Elf_Section Elf64_Section -# define ELF_R_SYM(val) ELF64_R_SYM(val) -# define ELF_R_TYPE(val) ELF64_R_TYPE(val) -# define ELF_ST_TYPE(val) ELF64_ST_TYPE(val) - -#define XEN_NOTE_SIZE 120 -#define XEN_PVH_NOTE_SIZE 24 - -#ifndef GRUB_MKIMAGEXX -#include "grub-mkimagexx.c" -#endif diff --git a/thirdparty/grub-2.04/util/grub-mkimagexx.c b/thirdparty/grub-2.04/util/grub-mkimagexx.c deleted file mode 100644 index bc087c2b5..000000000 --- a/thirdparty/grub-2.04/util/grub-mkimagexx.c +++ /dev/null @@ -1,2450 +0,0 @@ -/* grub-mkimage.c - make a bootable image */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2002,2003,2004,2005,2006,2007,2008,2009,2010 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#include - -#pragma GCC diagnostic ignored "-Wcast-align" - -#define GRUB_MKIMAGEXX -#if !defined(MKIMAGE_ELF32) && !defined(MKIMAGE_ELF64) -#if __SIZEOF_POINTER__ == 8 -#include "grub-mkimage64.c" -#else -#include "grub-mkimage32.c" -#endif -#endif - -/* These structures are defined according to the CHRP binding to IEEE1275, - "Client Program Format" section. */ - -struct grub_ieee1275_note_desc -{ - grub_uint32_t real_mode; - grub_uint32_t real_base; - grub_uint32_t real_size; - grub_uint32_t virt_base; - grub_uint32_t virt_size; - grub_uint32_t load_base; -}; - -#define GRUB_IEEE1275_NOTE_NAME "PowerPC" -#define GRUB_IEEE1275_NOTE_TYPE 0x1275 - -struct grub_ieee1275_note -{ - Elf32_Nhdr header; - char name[ALIGN_UP(sizeof (GRUB_IEEE1275_NOTE_NAME), 4)]; - struct grub_ieee1275_note_desc descriptor; -}; - -#define GRUB_XEN_NOTE_NAME "Xen" - -struct fixup_block_list -{ - struct fixup_block_list *next; - int state; - struct grub_pe32_fixup_block b; -}; - -#define ALIGN_ADDR(x) (ALIGN_UP((x), image_target->voidp_sizeof)) - -struct section_metadata -{ - Elf_Half num_sections; - Elf_Shdr *sections; - Elf_Addr *addrs; - Elf_Addr *vaddrs; - Elf_Half section_entsize; - Elf_Shdr *symtab; - const char *strtab; -}; - -static int -is_relocatable (const struct grub_install_image_target_desc *image_target) -{ - return image_target->id == IMAGE_EFI || image_target->id == IMAGE_UBOOT - || (image_target->id == IMAGE_COREBOOT && image_target->elf_target == EM_ARM); -} - -#ifdef MKIMAGE_ELF32 - -/* - * R_ARM_THM_CALL/THM_JUMP24 - * - * Relocate Thumb (T32) instruction set relative branches: - * B.W, BL and BLX - */ -static grub_err_t -grub_arm_reloc_thm_call (grub_uint16_t *target, Elf32_Addr sym_addr) -{ - grub_int32_t offset; - - offset = grub_arm_thm_call_get_offset (target); - - grub_dprintf ("dl", " sym_addr = 0x%08x", sym_addr); - - offset += sym_addr; - - grub_dprintf("dl", " BL*: target=%p, sym_addr=0x%08x, offset=%d\n", - target, sym_addr, offset); - - /* Keep traditional (pre-Thumb2) limits on blx. In any case if the kernel - is bigger than 2M (currently under 150K) then we probably have a problem - somewhere else. */ - if (offset < -0x200000 || offset >= 0x200000) - return grub_error (GRUB_ERR_BAD_MODULE, - "THM_CALL Relocation out of range."); - - grub_dprintf ("dl", " relative destination = %p", - (char *) target + offset); - - return grub_arm_thm_call_set_offset (target, offset); -} - -/* - * R_ARM_THM_JUMP19 - * - * Relocate conditional Thumb (T32) B.W - */ -static grub_err_t -grub_arm_reloc_thm_jump19 (grub_uint16_t *target, Elf32_Addr sym_addr) -{ - grub_int32_t offset; - - if (!(sym_addr & 1)) - return grub_error (GRUB_ERR_BAD_MODULE, - "Relocation targeting wrong execution state"); - - offset = grub_arm_thm_jump19_get_offset (target); - - /* Adjust and re-truncate offset */ - offset += sym_addr; - - if (!grub_arm_thm_jump19_check_offset (offset)) - return grub_error (GRUB_ERR_BAD_MODULE, - "THM_JUMP19 Relocation out of range."); - - grub_arm_thm_jump19_set_offset (target, offset); - - return GRUB_ERR_NONE; -} - -/* - * R_ARM_JUMP24 - * - * Relocate ARM (A32) B - */ -static grub_err_t -grub_arm_reloc_jump24 (grub_uint32_t *target, Elf32_Addr sym_addr) -{ - grub_int32_t offset; - - if (sym_addr & 1) - return grub_error (GRUB_ERR_BAD_MODULE, - "Relocation targeting wrong execution state"); - - offset = grub_arm_jump24_get_offset (target); - offset += sym_addr; - - if (!grub_arm_jump24_check_offset (offset)) - return grub_error (GRUB_ERR_BAD_MODULE, - "JUMP24 Relocation out of range."); - - - grub_arm_jump24_set_offset (target, offset); - - return GRUB_ERR_NONE; -} - -#endif - -void -SUFFIX (grub_mkimage_generate_elf) (const struct grub_install_image_target_desc *image_target, - int note, char **core_img, size_t *core_size, - Elf_Addr target_addr, - struct grub_mkimage_layout *layout) -{ - char *elf_img; - size_t program_size; - Elf_Ehdr *ehdr; - Elf_Phdr *phdr; - Elf_Shdr *shdr; - int header_size, footer_size = 0; - int phnum = 1; - int shnum = 4; - int string_size = sizeof (".text") + sizeof ("mods") + 1; - - if (image_target->id != IMAGE_LOONGSON_ELF) - phnum += 2; - - if (note) - { - phnum++; - footer_size += sizeof (struct grub_ieee1275_note); - } - if (image_target->id == IMAGE_XEN || image_target->id == IMAGE_XEN_PVH) - { - phnum++; - shnum++; - string_size += sizeof (".xen"); - footer_size += (image_target->id == IMAGE_XEN) ? XEN_NOTE_SIZE : XEN_PVH_NOTE_SIZE; - } - header_size = ALIGN_UP (sizeof (*ehdr) + phnum * sizeof (*phdr) - + shnum * sizeof (*shdr) + string_size, layout->align); - - program_size = ALIGN_ADDR (*core_size); - - elf_img = xmalloc (program_size + header_size + footer_size); - memset (elf_img, 0, program_size + header_size + footer_size); - memcpy (elf_img + header_size, *core_img, *core_size); - ehdr = (void *) elf_img; - phdr = (void *) (elf_img + sizeof (*ehdr)); - shdr = (void *) (elf_img + sizeof (*ehdr) + phnum * sizeof (*phdr)); - memcpy (ehdr->e_ident, ELFMAG, SELFMAG); - ehdr->e_ident[EI_CLASS] = ELFCLASSXX; - if (!image_target->bigendian) - ehdr->e_ident[EI_DATA] = ELFDATA2LSB; - else - ehdr->e_ident[EI_DATA] = ELFDATA2MSB; - ehdr->e_ident[EI_VERSION] = EV_CURRENT; - ehdr->e_ident[EI_OSABI] = ELFOSABI_NONE; - ehdr->e_type = grub_host_to_target16 (ET_EXEC); - ehdr->e_machine = grub_host_to_target16 (image_target->elf_target); - ehdr->e_version = grub_host_to_target32 (EV_CURRENT); - - ehdr->e_phoff = grub_host_to_target32 ((char *) phdr - (char *) ehdr); - ehdr->e_phentsize = grub_host_to_target16 (sizeof (*phdr)); - ehdr->e_phnum = grub_host_to_target16 (phnum); - - ehdr->e_shoff = grub_host_to_target32 ((grub_uint8_t *) shdr - - (grub_uint8_t *) ehdr); - if (image_target->id == IMAGE_LOONGSON_ELF) - ehdr->e_shentsize = grub_host_to_target16 (0); - else - ehdr->e_shentsize = grub_host_to_target16 (sizeof (Elf_Shdr)); - ehdr->e_shnum = grub_host_to_target16 (shnum); - ehdr->e_shstrndx = grub_host_to_target16 (1); - - ehdr->e_ehsize = grub_host_to_target16 (sizeof (*ehdr)); - - phdr->p_type = grub_host_to_target32 (PT_LOAD); - phdr->p_offset = grub_host_to_target32 (header_size); - phdr->p_flags = grub_host_to_target32 (PF_R | PF_W | PF_X); - - ehdr->e_entry = grub_host_to_target32 (target_addr); - phdr->p_vaddr = grub_host_to_target32 (target_addr); - phdr->p_paddr = grub_host_to_target32 (target_addr); - phdr->p_align = grub_host_to_target32 (layout->align > image_target->link_align ? - layout->align : image_target->link_align); - if (image_target->id == IMAGE_LOONGSON_ELF) - ehdr->e_flags = grub_host_to_target32 (0x1000 | EF_MIPS_NOREORDER - | EF_MIPS_PIC | EF_MIPS_CPIC); - else - ehdr->e_flags = 0; - if (image_target->id == IMAGE_LOONGSON_ELF) - { - phdr->p_filesz = grub_host_to_target32 (*core_size); - phdr->p_memsz = grub_host_to_target32 (*core_size); - } - else - { - grub_uint32_t target_addr_mods; - phdr->p_filesz = grub_host_to_target32 (layout->kernel_size); - if (image_target->id == IMAGE_COREBOOT && image_target->elf_target == EM_ARM) - phdr->p_memsz = grub_host_to_target32 (layout->kernel_size); - else - phdr->p_memsz = grub_host_to_target32 (layout->kernel_size + layout->bss_size); - - phdr++; - phdr->p_type = grub_host_to_target32 (PT_GNU_STACK); - phdr->p_offset = grub_host_to_target32 (header_size + layout->kernel_size); - phdr->p_paddr = phdr->p_vaddr = phdr->p_filesz = phdr->p_memsz = 0; - phdr->p_flags = grub_host_to_target32 (PF_R | PF_W | PF_X); - phdr->p_align = grub_host_to_target32 (image_target->link_align); - - phdr++; - phdr->p_type = grub_host_to_target32 (PT_LOAD); - phdr->p_offset = grub_host_to_target32 (header_size + layout->kernel_size); - phdr->p_flags = grub_host_to_target32 (PF_R | PF_W | PF_X); - phdr->p_filesz = phdr->p_memsz - = grub_host_to_target32 (*core_size - layout->kernel_size); - - if (image_target->id == IMAGE_COREBOOT && image_target->elf_target == EM_386) - target_addr_mods = GRUB_KERNEL_I386_COREBOOT_MODULES_ADDR; - else if (image_target->id == IMAGE_COREBOOT && image_target->elf_target == EM_ARM) - target_addr_mods = ALIGN_UP (target_addr + layout->end - + image_target->mod_gap, - image_target->mod_align); - else - target_addr_mods = ALIGN_UP (target_addr + layout->kernel_size + layout->bss_size - + image_target->mod_gap, - image_target->mod_align); - phdr->p_vaddr = grub_host_to_target_addr (target_addr_mods); - phdr->p_paddr = grub_host_to_target_addr (target_addr_mods); - phdr->p_align = grub_host_to_target32 (image_target->link_align); - } - - if (image_target->id == IMAGE_XEN) - { - char *note_start = (elf_img + program_size + header_size); - Elf_Nhdr *note_ptr; - char *ptr = (char *) note_start; - - grub_util_info ("adding XEN NOTE segment"); - - /* Guest OS. */ - note_ptr = (Elf_Nhdr *) ptr; - note_ptr->n_namesz = grub_host_to_target32 (sizeof (GRUB_XEN_NOTE_NAME)); - note_ptr->n_descsz = grub_host_to_target32 (sizeof (PACKAGE_NAME)); - note_ptr->n_type = grub_host_to_target32 (XEN_ELFNOTE_GUEST_OS); - ptr += sizeof (Elf_Nhdr); - memcpy (ptr, GRUB_XEN_NOTE_NAME, sizeof (GRUB_XEN_NOTE_NAME)); - ptr += ALIGN_UP (sizeof (GRUB_XEN_NOTE_NAME), 4); - memcpy (ptr, PACKAGE_NAME, sizeof (PACKAGE_NAME)); - ptr += ALIGN_UP (sizeof (PACKAGE_NAME), 4); - - /* Loader. */ - note_ptr = (Elf_Nhdr *) ptr; - note_ptr->n_namesz = grub_host_to_target32 (sizeof (GRUB_XEN_NOTE_NAME)); - note_ptr->n_descsz = grub_host_to_target32 (sizeof ("generic")); - note_ptr->n_type = grub_host_to_target32 (XEN_ELFNOTE_LOADER); - ptr += sizeof (Elf_Nhdr); - memcpy (ptr, GRUB_XEN_NOTE_NAME, sizeof (GRUB_XEN_NOTE_NAME)); - ptr += ALIGN_UP (sizeof (GRUB_XEN_NOTE_NAME), 4); - memcpy (ptr, "generic", sizeof ("generic")); - ptr += ALIGN_UP (sizeof ("generic"), 4); - - /* Version. */ - note_ptr = (Elf_Nhdr *) ptr; - note_ptr->n_namesz = grub_host_to_target32 (sizeof (GRUB_XEN_NOTE_NAME)); - note_ptr->n_descsz = grub_host_to_target32 (sizeof ("xen-3.0")); - note_ptr->n_type = grub_host_to_target32 (XEN_ELFNOTE_XEN_VERSION); - ptr += sizeof (Elf_Nhdr); - memcpy (ptr, GRUB_XEN_NOTE_NAME, sizeof (GRUB_XEN_NOTE_NAME)); - ptr += ALIGN_UP (sizeof (GRUB_XEN_NOTE_NAME), 4); - memcpy (ptr, "xen-3.0", sizeof ("xen-3.0")); - ptr += ALIGN_UP (sizeof ("xen-3.0"), 4); - - /* Entry. */ - note_ptr = (Elf_Nhdr *) ptr; - note_ptr->n_namesz = grub_host_to_target32 (sizeof (GRUB_XEN_NOTE_NAME)); - note_ptr->n_descsz = grub_host_to_target32 (image_target->voidp_sizeof); - note_ptr->n_type = grub_host_to_target32 (XEN_ELFNOTE_ENTRY); - ptr += sizeof (Elf_Nhdr); - memcpy (ptr, GRUB_XEN_NOTE_NAME, sizeof (GRUB_XEN_NOTE_NAME)); - ptr += ALIGN_UP (sizeof (GRUB_XEN_NOTE_NAME), 4); - memset (ptr, 0, image_target->voidp_sizeof); - ptr += image_target->voidp_sizeof; - - /* Virt base. */ - note_ptr = (Elf_Nhdr *) ptr; - note_ptr->n_namesz = grub_host_to_target32 (sizeof (GRUB_XEN_NOTE_NAME)); - note_ptr->n_descsz = grub_host_to_target32 (image_target->voidp_sizeof); - note_ptr->n_type = grub_host_to_target32 (XEN_ELFNOTE_VIRT_BASE); - ptr += sizeof (Elf_Nhdr); - memcpy (ptr, GRUB_XEN_NOTE_NAME, sizeof (GRUB_XEN_NOTE_NAME)); - ptr += ALIGN_UP (sizeof (GRUB_XEN_NOTE_NAME), 4); - memset (ptr, 0, image_target->voidp_sizeof); - ptr += image_target->voidp_sizeof; - - /* PAE. */ - if (image_target->elf_target == EM_386) - { - note_ptr = (Elf_Nhdr *) ptr; - note_ptr->n_namesz = grub_host_to_target32 (sizeof (GRUB_XEN_NOTE_NAME)); - note_ptr->n_descsz = grub_host_to_target32 (sizeof ("yes,bimodal")); - note_ptr->n_type = grub_host_to_target32 (XEN_ELFNOTE_PAE_MODE); - ptr += sizeof (Elf_Nhdr); - memcpy (ptr, GRUB_XEN_NOTE_NAME, sizeof (GRUB_XEN_NOTE_NAME)); - ptr += ALIGN_UP (sizeof (GRUB_XEN_NOTE_NAME), 4); - memcpy (ptr, "yes", sizeof ("yes")); - ptr += ALIGN_UP (sizeof ("yes"), 4); - } - - assert (XEN_NOTE_SIZE == (ptr - note_start)); - - phdr++; - phdr->p_type = grub_host_to_target32 (PT_NOTE); - phdr->p_flags = grub_host_to_target32 (PF_R); - phdr->p_align = grub_host_to_target32 (image_target->voidp_sizeof); - phdr->p_vaddr = 0; - phdr->p_paddr = 0; - phdr->p_filesz = grub_host_to_target32 (XEN_NOTE_SIZE); - phdr->p_memsz = 0; - phdr->p_offset = grub_host_to_target32 (header_size + program_size); - } - - if (image_target->id == IMAGE_XEN_PVH) - { - char *note_start = (elf_img + program_size + header_size); - Elf_Nhdr *note_ptr; - char *ptr = (char *) note_start; - - grub_util_info ("adding XEN NOTE segment"); - - /* Phys32 Entry. */ - note_ptr = (Elf_Nhdr *) ptr; - note_ptr->n_namesz = grub_host_to_target32 (sizeof (GRUB_XEN_NOTE_NAME)); - note_ptr->n_descsz = grub_host_to_target32 (image_target->voidp_sizeof); - note_ptr->n_type = grub_host_to_target32 (XEN_ELFNOTE_PHYS32_ENTRY); - ptr += sizeof (Elf_Nhdr); - memcpy (ptr, GRUB_XEN_NOTE_NAME, sizeof (GRUB_XEN_NOTE_NAME)); - ptr += ALIGN_UP (sizeof (GRUB_XEN_NOTE_NAME), 4); - memset (ptr, 0, image_target->voidp_sizeof); - *(grub_uint32_t *) ptr = GRUB_KERNEL_I386_XEN_PVH_LINK_ADDR; - ptr += image_target->voidp_sizeof; - - assert (XEN_PVH_NOTE_SIZE == (ptr - note_start)); - - phdr++; - phdr->p_type = grub_host_to_target32 (PT_NOTE); - phdr->p_flags = grub_host_to_target32 (PF_R); - phdr->p_align = grub_host_to_target32 (image_target->voidp_sizeof); - phdr->p_vaddr = 0; - phdr->p_paddr = 0; - phdr->p_filesz = grub_host_to_target32 (XEN_PVH_NOTE_SIZE); - phdr->p_memsz = 0; - phdr->p_offset = grub_host_to_target32 (header_size + program_size); - } - - if (note) - { - int note_size = sizeof (struct grub_ieee1275_note); - struct grub_ieee1275_note *note_ptr = (struct grub_ieee1275_note *) - (elf_img + program_size + header_size); - - grub_util_info ("adding CHRP NOTE segment"); - - note_ptr->header.n_namesz = grub_host_to_target32 (sizeof (GRUB_IEEE1275_NOTE_NAME)); - note_ptr->header.n_descsz = grub_host_to_target32 (note_size); - note_ptr->header.n_type = grub_host_to_target32 (GRUB_IEEE1275_NOTE_TYPE); - strcpy (note_ptr->name, GRUB_IEEE1275_NOTE_NAME); - note_ptr->descriptor.real_mode = grub_host_to_target32 (0xffffffff); - note_ptr->descriptor.real_base = grub_host_to_target32 (0x00c00000); - note_ptr->descriptor.real_size = grub_host_to_target32 (0xffffffff); - note_ptr->descriptor.virt_base = grub_host_to_target32 (0xffffffff); - note_ptr->descriptor.virt_size = grub_host_to_target32 (0xffffffff); - note_ptr->descriptor.load_base = grub_host_to_target32 (0x00004000); - - phdr++; - phdr->p_type = grub_host_to_target32 (PT_NOTE); - phdr->p_flags = grub_host_to_target32 (PF_R); - phdr->p_align = grub_host_to_target32 (image_target->voidp_sizeof); - phdr->p_vaddr = 0; - phdr->p_paddr = 0; - phdr->p_filesz = grub_host_to_target32 (note_size); - phdr->p_memsz = 0; - phdr->p_offset = grub_host_to_target32 (header_size + program_size); - } - - { - char *str_start = (elf_img + sizeof (*ehdr) + phnum * sizeof (*phdr) - + shnum * sizeof (*shdr)); - char *ptr = str_start + 1; - - shdr++; - - shdr->sh_name = grub_host_to_target32 (0); - shdr->sh_type = grub_host_to_target32 (SHT_STRTAB); - shdr->sh_addr = grub_host_to_target_addr (0); - shdr->sh_offset = grub_host_to_target_addr (str_start - elf_img); - shdr->sh_size = grub_host_to_target32 (string_size); - shdr->sh_link = grub_host_to_target32 (0); - shdr->sh_info = grub_host_to_target32 (0); - shdr->sh_addralign = grub_host_to_target32 (layout->align); - shdr->sh_entsize = grub_host_to_target32 (0); - shdr++; - - memcpy (ptr, ".text", sizeof (".text")); - - shdr->sh_name = grub_host_to_target32 (ptr - str_start); - ptr += sizeof (".text"); - shdr->sh_type = grub_host_to_target32 (SHT_PROGBITS); - shdr->sh_addr = grub_host_to_target_addr (target_addr); - shdr->sh_offset = grub_host_to_target_addr (header_size); - shdr->sh_size = grub_host_to_target32 (layout->kernel_size); - shdr->sh_link = grub_host_to_target32 (0); - shdr->sh_info = grub_host_to_target32 (0); - shdr->sh_addralign = grub_host_to_target32 (layout->align); - shdr->sh_entsize = grub_host_to_target32 (0); - shdr++; - - memcpy (ptr, "mods", sizeof ("mods")); - shdr->sh_name = grub_host_to_target32 (ptr - str_start); - ptr += sizeof ("mods"); - shdr->sh_type = grub_host_to_target32 (SHT_PROGBITS); - shdr->sh_addr = grub_host_to_target_addr (target_addr + layout->kernel_size); - shdr->sh_offset = grub_host_to_target_addr (header_size + layout->kernel_size); - shdr->sh_size = grub_host_to_target32 (*core_size - layout->kernel_size); - shdr->sh_link = grub_host_to_target32 (0); - shdr->sh_info = grub_host_to_target32 (0); - shdr->sh_addralign = grub_host_to_target32 (image_target->voidp_sizeof); - shdr->sh_entsize = grub_host_to_target32 (0); - shdr++; - - if (image_target->id == IMAGE_XEN || image_target->id == IMAGE_XEN_PVH) - { - memcpy (ptr, ".xen", sizeof (".xen")); - shdr->sh_name = grub_host_to_target32 (ptr - str_start); - ptr += sizeof (".xen"); - shdr->sh_type = grub_host_to_target32 (SHT_PROGBITS); - shdr->sh_addr = grub_host_to_target_addr (target_addr + layout->kernel_size); - shdr->sh_offset = grub_host_to_target_addr (program_size + header_size); - if (image_target->id == IMAGE_XEN) - shdr->sh_size = grub_host_to_target32 (XEN_NOTE_SIZE); - else - shdr->sh_size = grub_host_to_target32 (XEN_PVH_NOTE_SIZE); - shdr->sh_link = grub_host_to_target32 (0); - shdr->sh_info = grub_host_to_target32 (0); - shdr->sh_addralign = grub_host_to_target32 (image_target->voidp_sizeof); - shdr->sh_entsize = grub_host_to_target32 (0); - shdr++; - } - } - - free (*core_img); - *core_img = elf_img; - *core_size = program_size + header_size + footer_size; -} - -/* Relocate symbols; note that this function overwrites the symbol table. - Return the address of a start symbol. */ -static Elf_Addr -SUFFIX (relocate_symbols) (Elf_Ehdr *e, struct section_metadata *smd, - void *jumpers, Elf_Addr jumpers_addr, - Elf_Addr bss_start, Elf_Addr end, - const struct grub_install_image_target_desc *image_target) -{ - Elf_Word symtab_size, sym_size, num_syms; - Elf_Off symtab_offset; - Elf_Addr start_address = (Elf_Addr) -1; - Elf_Sym *sym; - Elf_Word i; - Elf_Shdr *symtab_section; - const char *symtab; - grub_uint64_t *jptr = jumpers; - - symtab_section = (Elf_Shdr *) ((char *) smd->sections - + grub_target_to_host32 (smd->symtab->sh_link) - * smd->section_entsize); - symtab = (char *) e + grub_target_to_host (symtab_section->sh_offset); - - symtab_size = grub_target_to_host (smd->symtab->sh_size); - sym_size = grub_target_to_host (smd->symtab->sh_entsize); - symtab_offset = grub_target_to_host (smd->symtab->sh_offset); - num_syms = symtab_size / sym_size; - - for (i = 0, sym = (Elf_Sym *) ((char *) e + symtab_offset); - i < num_syms; - i++, sym = (Elf_Sym *) ((char *) sym + sym_size)) - { - Elf_Section cur_index; - const char *name; - - name = symtab + grub_target_to_host32 (sym->st_name); - - cur_index = grub_target_to_host16 (sym->st_shndx); - if (cur_index == STN_ABS) - { - continue; - } - else if (cur_index == STN_UNDEF) - { - if (sym->st_name && grub_strcmp (name, "__bss_start") == 0) - sym->st_value = bss_start; - else if (sym->st_name && grub_strcmp (name, "_end") == 0) - sym->st_value = end; - else if (sym->st_name) - grub_util_error ("undefined symbol %s", name); - else - continue; - } - else if (cur_index >= smd->num_sections) - grub_util_error ("section %d does not exist", cur_index); - else - { - sym->st_value = (grub_target_to_host (sym->st_value) - + smd->vaddrs[cur_index]); - } - - if (image_target->elf_target == EM_IA_64 && ELF_ST_TYPE (sym->st_info) - == STT_FUNC) - { - *jptr = grub_host_to_target64 (sym->st_value); - sym->st_value = (char *) jptr - (char *) jumpers + jumpers_addr; - jptr++; - *jptr = 0; - jptr++; - } - grub_util_info ("locating %s at 0x%" GRUB_HOST_PRIxLONG_LONG - " (0x%" GRUB_HOST_PRIxLONG_LONG ")", name, - (unsigned long long) sym->st_value, - (unsigned long long) smd->vaddrs[cur_index]); - - if (start_address == (Elf_Addr)-1) - if (strcmp (name, "_start") == 0 || strcmp (name, "start") == 0) - start_address = sym->st_value; - } - - return start_address; -} - -/* Return the address of a symbol at the index I in the section S. */ -static Elf_Addr -SUFFIX (get_symbol_address) (Elf_Ehdr *e, Elf_Shdr *s, Elf_Word i, - const struct grub_install_image_target_desc *image_target) -{ - Elf_Sym *sym; - - sym = (Elf_Sym *) ((char *) e - + grub_target_to_host (s->sh_offset) - + i * grub_target_to_host (s->sh_entsize)); - return sym->st_value; -} - -/* Return the address of a modified value. */ -static Elf_Addr * -SUFFIX (get_target_address) (Elf_Ehdr *e, Elf_Shdr *s, Elf_Addr offset, - const struct grub_install_image_target_desc *image_target) -{ - return (Elf_Addr *) ((char *) e + grub_target_to_host (s->sh_offset) + offset); -} - -#ifdef MKIMAGE_ELF64 -static Elf_Addr -SUFFIX (count_funcs) (Elf_Ehdr *e, Elf_Shdr *symtab_section, - const struct grub_install_image_target_desc *image_target) -{ - Elf_Word symtab_size, sym_size, num_syms; - Elf_Off symtab_offset; - Elf_Sym *sym; - Elf_Word i; - int ret = 0; - - symtab_size = grub_target_to_host (symtab_section->sh_size); - sym_size = grub_target_to_host (symtab_section->sh_entsize); - symtab_offset = grub_target_to_host (symtab_section->sh_offset); - num_syms = symtab_size / sym_size; - - for (i = 0, sym = (Elf_Sym *) ((char *) e + symtab_offset); - i < num_syms; - i++, sym = (Elf_Sym *) ((char *) sym + sym_size)) - if (ELF_ST_TYPE (sym->st_info) == STT_FUNC) - ret++; - - return ret; -} -#endif - -#ifdef MKIMAGE_ELF32 -/* Deal with relocation information. This function relocates addresses - within the virtual address space starting from 0. So only relative - addresses can be fully resolved. Absolute addresses must be relocated - again by a PE32 relocator when loaded. */ -static grub_size_t -arm_get_trampoline_size (Elf_Ehdr *e, - Elf_Shdr *sections, - Elf_Half section_entsize, - Elf_Half num_sections, - const struct grub_install_image_target_desc *image_target) -{ - Elf_Half i; - Elf_Shdr *s; - grub_size_t ret = 0; - - for (i = 0, s = sections; - i < num_sections; - i++, s = (Elf_Shdr *) ((char *) s + section_entsize)) - if ((s->sh_type == grub_host_to_target32 (SHT_REL)) || - (s->sh_type == grub_host_to_target32 (SHT_RELA))) - { - Elf_Rela *r; - Elf_Word rtab_size, r_size, num_rs; - Elf_Off rtab_offset; - Elf_Shdr *symtab_section; - Elf_Word j; - - symtab_section = (Elf_Shdr *) ((char *) sections - + (grub_target_to_host32 (s->sh_link) - * section_entsize)); - - rtab_size = grub_target_to_host (s->sh_size); - r_size = grub_target_to_host (s->sh_entsize); - rtab_offset = grub_target_to_host (s->sh_offset); - num_rs = rtab_size / r_size; - - for (j = 0, r = (Elf_Rela *) ((char *) e + rtab_offset); - j < num_rs; - j++, r = (Elf_Rela *) ((char *) r + r_size)) - { - Elf_Addr info; - Elf_Addr sym_addr; - - info = grub_target_to_host (r->r_info); - sym_addr = SUFFIX (get_symbol_address) (e, symtab_section, - ELF_R_SYM (info), image_target); - - sym_addr += (s->sh_type == grub_target_to_host32 (SHT_RELA)) ? - grub_target_to_host (r->r_addend) : 0; - - switch (ELF_R_TYPE (info)) - { - case R_ARM_ABS32: - case R_ARM_V4BX: - break; - case R_ARM_THM_CALL: - case R_ARM_THM_JUMP24: - case R_ARM_THM_JUMP19: - if (!(sym_addr & 1)) - ret += 8; - break; - - case R_ARM_CALL: - case R_ARM_JUMP24: - if (sym_addr & 1) - ret += 16; - break; - - default: - grub_util_error (_("relocation 0x%x is not implemented yet"), - (unsigned int) ELF_R_TYPE (info)); - break; - } - } - } - return ret; -} -#endif - -static int -SUFFIX (is_kept_section) (Elf_Shdr *s, const struct grub_install_image_target_desc *image_target); -static int -SUFFIX (is_kept_reloc_section) (Elf_Shdr *s, const struct grub_install_image_target_desc *image_target, - struct section_metadata *smd); - -/* Deal with relocation information. This function relocates addresses - within the virtual address space starting from 0. So only relative - addresses can be fully resolved. Absolute addresses must be relocated - again by a PE32 relocator when loaded. */ -static void -SUFFIX (relocate_addrs) (Elf_Ehdr *e, struct section_metadata *smd, - char *pe_target, Elf_Addr tramp_off, Elf_Addr got_off, - const struct grub_install_image_target_desc *image_target) -{ - Elf_Half i; - Elf_Shdr *s; -#ifdef MKIMAGE_ELF64 - struct grub_ia64_trampoline *tr = (void *) (pe_target + tramp_off); - grub_uint64_t *gpptr = (void *) (pe_target + got_off); - unsigned unmatched_adr_got_page = 0; -#define MASK19 ((1 << 19) - 1) -#else - grub_uint32_t *tr = (void *) (pe_target + tramp_off); -#endif - - for (i = 0, s = smd->sections; - i < smd->num_sections; - i++, s = (Elf_Shdr *) ((char *) s + smd->section_entsize)) - if ((s->sh_type == grub_host_to_target32 (SHT_REL)) || - (s->sh_type == grub_host_to_target32 (SHT_RELA))) - { - Elf_Rela *r; - Elf_Word rtab_size, r_size, num_rs; - Elf_Off rtab_offset; - Elf_Word target_section_index; - Elf_Addr target_section_addr; - Elf_Shdr *target_section; - Elf_Word j; - - if (!SUFFIX (is_kept_section) (s, image_target) && - !SUFFIX (is_kept_reloc_section) (s, image_target, smd)) - { - grub_util_info ("not translating relocations for omitted section %s", - smd->strtab + grub_le_to_cpu32 (s->sh_name)); - continue; - } - - target_section_index = grub_target_to_host32 (s->sh_info); - target_section_addr = smd->addrs[target_section_index]; - target_section = (Elf_Shdr *) ((char *) smd->sections - + (target_section_index - * smd->section_entsize)); - - grub_util_info ("dealing with the relocation section %s for %s", - smd->strtab + grub_target_to_host32 (s->sh_name), - smd->strtab + grub_target_to_host32 (target_section->sh_name)); - - rtab_size = grub_target_to_host (s->sh_size); - r_size = grub_target_to_host (s->sh_entsize); - rtab_offset = grub_target_to_host (s->sh_offset); - num_rs = rtab_size / r_size; - - for (j = 0, r = (Elf_Rela *) ((char *) e + rtab_offset); - j < num_rs; - j++, r = (Elf_Rela *) ((char *) r + r_size)) - { - Elf_Addr info; - Elf_Addr offset; - Elf_Addr sym_addr; - Elf_Addr *target; - Elf_Addr addend; - - offset = grub_target_to_host (r->r_offset); - target = SUFFIX (get_target_address) (e, target_section, - offset, image_target); - info = grub_target_to_host (r->r_info); - sym_addr = SUFFIX (get_symbol_address) (e, smd->symtab, - ELF_R_SYM (info), image_target); - - addend = (s->sh_type == grub_target_to_host32 (SHT_RELA)) ? - grub_target_to_host (r->r_addend) : 0; - - switch (image_target->elf_target) - { - case EM_386: - switch (ELF_R_TYPE (info)) - { - case R_386_NONE: - break; - - case R_386_32: - /* This is absolute. */ - *target = grub_host_to_target32 (grub_target_to_host32 (*target) - + addend + sym_addr); - grub_util_info ("relocating an R_386_32 entry to 0x%" - GRUB_HOST_PRIxLONG_LONG " at the offset 0x%" - GRUB_HOST_PRIxLONG_LONG, - (unsigned long long) *target, - (unsigned long long) offset); - break; - - case R_386_PC32: - /* This is relative. */ - *target = grub_host_to_target32 (grub_target_to_host32 (*target) - + addend + sym_addr - - target_section_addr - offset - - image_target->vaddr_offset); - grub_util_info ("relocating an R_386_PC32 entry to 0x%" - GRUB_HOST_PRIxLONG_LONG " at the offset 0x%" - GRUB_HOST_PRIxLONG_LONG, - (unsigned long long) *target, - (unsigned long long) offset); - break; - default: - grub_util_error (_("relocation 0x%x is not implemented yet"), - (unsigned int) ELF_R_TYPE (info)); - break; - } - break; -#ifdef MKIMAGE_ELF64 - case EM_X86_64: - switch (ELF_R_TYPE (info)) - { - - case R_X86_64_NONE: - break; - - case R_X86_64_64: - *target = grub_host_to_target64 (grub_target_to_host64 (*target) - + addend + sym_addr); - grub_util_info ("relocating an R_X86_64_64 entry to 0x%" - GRUB_HOST_PRIxLONG_LONG " at the offset 0x%" - GRUB_HOST_PRIxLONG_LONG, - (unsigned long long) *target, - (unsigned long long) offset); - break; - - case R_X86_64_PC32: - case R_X86_64_PLT32: - { - grub_uint32_t *t32 = (grub_uint32_t *) target; - *t32 = grub_host_to_target64 (grub_target_to_host32 (*t32) - + addend + sym_addr - - target_section_addr - offset - - image_target->vaddr_offset); - grub_util_info ("relocating an R_X86_64_PC32 entry to 0x%x at the offset 0x%" - GRUB_HOST_PRIxLONG_LONG, - *t32, (unsigned long long) offset); - break; - } - - case R_X86_64_PC64: - { - *target = grub_host_to_target64 (grub_target_to_host64 (*target) - + addend + sym_addr - - target_section_addr - offset - - image_target->vaddr_offset); - grub_util_info ("relocating an R_X86_64_PC64 entry to 0x%" - GRUB_HOST_PRIxLONG_LONG " at the offset 0x%" - GRUB_HOST_PRIxLONG_LONG, - (unsigned long long) *target, - (unsigned long long) offset); - break; - } - - case R_X86_64_32: - case R_X86_64_32S: - { - grub_uint32_t *t32 = (grub_uint32_t *) target; - *t32 = grub_host_to_target64 (grub_target_to_host32 (*t32) - + addend + sym_addr); - grub_util_info ("relocating an R_X86_64_32(S) entry to 0x%x at the offset 0x%" - GRUB_HOST_PRIxLONG_LONG, - *t32, (unsigned long long) offset); - break; - } - - default: - grub_util_error (_("relocation 0x%x is not implemented yet"), - (unsigned int) ELF_R_TYPE (info)); - break; - } - break; - case EM_IA_64: - switch (ELF_R_TYPE (info)) - { - case R_IA64_PCREL21B: - { - grub_uint64_t noff; - grub_ia64_make_trampoline (tr, addend + sym_addr); - noff = ((char *) tr - (char *) pe_target - - target_section_addr - (offset & ~3)) >> 4; - tr++; - if (noff & ~MASK19) - grub_util_error ("trampoline offset too big (%" - GRUB_HOST_PRIxLONG_LONG ")", - (unsigned long long) noff); - grub_ia64_add_value_to_slot_20b ((grub_addr_t) target, noff); - } - break; - - case R_IA64_LTOFF22X: - case R_IA64_LTOFF22: - { - Elf_Sym *sym; - - sym = (Elf_Sym *) ((char *) e - + grub_target_to_host (smd->symtab->sh_offset) - + ELF_R_SYM (info) * grub_target_to_host (smd->symtab->sh_entsize)); - if (ELF_ST_TYPE (sym->st_info) == STT_FUNC) - sym_addr = grub_target_to_host64 (*(grub_uint64_t *) (pe_target - + sym->st_value - - image_target->vaddr_offset)); - } - /* FALLTHROUGH */ - case R_IA64_LTOFF_FPTR22: - *gpptr = grub_host_to_target64 (addend + sym_addr); - grub_ia64_add_value_to_slot_21 ((grub_addr_t) target, - (char *) gpptr - (char *) pe_target - + image_target->vaddr_offset); - gpptr++; - break; - - case R_IA64_GPREL22: - grub_ia64_add_value_to_slot_21 ((grub_addr_t) target, - addend + sym_addr); - break; - case R_IA64_GPREL64I: - grub_ia64_set_immu64 ((grub_addr_t) target, - addend + sym_addr); - break; - case R_IA64_PCREL64LSB: - *target = grub_host_to_target64 (grub_target_to_host64 (*target) - + addend + sym_addr - - target_section_addr - offset - - image_target->vaddr_offset); - break; - - case R_IA64_SEGREL64LSB: - *target = grub_host_to_target64 (grub_target_to_host64 (*target) - + addend + sym_addr - target_section_addr); - break; - case R_IA64_DIR64LSB: - case R_IA64_FPTR64LSB: - *target = grub_host_to_target64 (grub_target_to_host64 (*target) - + addend + sym_addr); - grub_util_info ("relocating a direct entry to 0x%" - GRUB_HOST_PRIxLONG_LONG " at the offset 0x%" - GRUB_HOST_PRIxLONG_LONG, - (unsigned long long) - grub_target_to_host64 (*target), - (unsigned long long) offset); - break; - - /* We treat LTOFF22X as LTOFF22, so we can ignore LDXMOV. */ - case R_IA64_LDXMOV: - break; - - default: - grub_util_error (_("relocation 0x%x is not implemented yet"), - (unsigned int) ELF_R_TYPE (info)); - break; - } - break; - case EM_AARCH64: - { - sym_addr += addend; - switch (ELF_R_TYPE (info)) - { - case R_AARCH64_ABS64: - { - *target = grub_host_to_target64 (grub_target_to_host64 (*target) + sym_addr); - } - break; - case R_AARCH64_PREL32: - { - grub_uint32_t *t32 = (grub_uint32_t *) target; - *t32 = grub_host_to_target64 (grub_target_to_host32 (*t32) - + sym_addr - - target_section_addr - offset - - image_target->vaddr_offset); - grub_util_info ("relocating an R_AARCH64_PREL32 entry to 0x%x at the offset 0x%" - GRUB_HOST_PRIxLONG_LONG, - *t32, (unsigned long long) offset); - break; - } - case R_AARCH64_ADD_ABS_LO12_NC: - grub_arm64_set_abs_lo12 ((grub_uint32_t *) target, - sym_addr); - break; - case R_AARCH64_LDST64_ABS_LO12_NC: - grub_arm64_set_abs_lo12_ldst64 ((grub_uint32_t *) target, - sym_addr); - break; - case R_AARCH64_JUMP26: - case R_AARCH64_CALL26: - { - sym_addr -= offset; - sym_addr -= target_section_addr + image_target->vaddr_offset; - if (!grub_arm_64_check_xxxx26_offset (sym_addr)) - grub_util_error ("%s", "CALL26 Relocation out of range"); - - grub_arm64_set_xxxx26_offset((grub_uint32_t *)target, - sym_addr); - } - break; - case R_AARCH64_ADR_GOT_PAGE: - { - Elf64_Rela *rel2; - grub_int64_t gpoffset = (((char *) gpptr - (char *) pe_target + image_target->vaddr_offset) & ~0xfffULL) - - ((offset + target_section_addr + image_target->vaddr_offset) & ~0xfffULL); - unsigned k; - *gpptr = grub_host_to_target64 (sym_addr); - unmatched_adr_got_page++; - if (!grub_arm64_check_hi21_signed (gpoffset)) - grub_util_error ("HI21 out of range"); - grub_arm64_set_hi21((grub_uint32_t *)target, - gpoffset); - for (k = 0, rel2 = (Elf_Rela *) ((char *) r + r_size); - k < num_rs; - k++, rel2 = (Elf_Rela *) ((char *) rel2 + r_size)) - if (ELF_R_SYM (rel2->r_info) - == ELF_R_SYM (r->r_info) - && r->r_addend == rel2->r_addend - && ELF_R_TYPE (rel2->r_info) == R_AARCH64_LD64_GOT_LO12_NC) - { - grub_arm64_set_abs_lo12_ldst64 ((grub_uint32_t *) SUFFIX (get_target_address) (e, target_section, - grub_target_to_host (rel2->r_offset), image_target), - ((char *) gpptr - (char *) pe_target + image_target->vaddr_offset)); - break; - } - if (k >= num_rs) - grub_util_error ("ADR_GOT_PAGE without matching LD64_GOT_LO12_NC"); - gpptr++; - } - break; - case R_AARCH64_LD64_GOT_LO12_NC: - if (unmatched_adr_got_page == 0) - grub_util_error ("LD64_GOT_LO12_NC without matching ADR_GOT_PAGE"); - unmatched_adr_got_page--; - break; - case R_AARCH64_ADR_PREL_PG_HI21: - { - sym_addr &= ~0xfffULL; - sym_addr -= (offset + target_section_addr + image_target->vaddr_offset) & ~0xfffULL; - if (!grub_arm64_check_hi21_signed (sym_addr)) - grub_util_error ("%s", "CALL26 Relocation out of range"); - - grub_arm64_set_hi21((grub_uint32_t *)target, - sym_addr); - } - break; - default: - grub_util_error (_("relocation 0x%x is not implemented yet"), - (unsigned int) ELF_R_TYPE (info)); - break; - } - break; - } -#endif -#if defined(MKIMAGE_ELF32) - case EM_ARM: - { - sym_addr += addend; - sym_addr -= image_target->vaddr_offset; - switch (ELF_R_TYPE (info)) - { - case R_ARM_ABS32: - { - grub_util_info (" ABS32:\toffset=%d\t(0x%08x)", - (int) sym_addr, (int) sym_addr); - /* Data will be naturally aligned */ - if (image_target->id == IMAGE_EFI) - sym_addr += GRUB_PE32_SECTION_ALIGNMENT; - *target = grub_host_to_target32 (grub_target_to_host32 (*target) + sym_addr); - } - break; - /* Happens when compiled with -march=armv4. - Since currently we need at least armv5, keep bx as-is. - */ - case R_ARM_V4BX: - break; - case R_ARM_THM_CALL: - case R_ARM_THM_JUMP24: - case R_ARM_THM_JUMP19: - { - grub_err_t err; - Elf_Sym *sym; - grub_util_info (" THM_JUMP24:\ttarget=0x%08lx\toffset=(0x%08x)", - (unsigned long) ((char *) target - - (char *) e), - sym_addr); - sym = (Elf_Sym *) ((char *) e - + grub_target_to_host (smd->symtab->sh_offset) - + ELF_R_SYM (info) * grub_target_to_host (smd->symtab->sh_entsize)); - if (ELF_ST_TYPE (sym->st_info) != STT_FUNC) - sym_addr |= 1; - if (!(sym_addr & 1)) - { - grub_uint32_t tr_addr; - grub_int32_t new_offset; - tr_addr = (char *) tr - (char *) pe_target - - target_section_addr; - new_offset = sym_addr - tr_addr - 12; - - if (!grub_arm_jump24_check_offset (new_offset)) - return grub_util_error ("jump24 relocation out of range"); - - tr[0] = grub_host_to_target32 (0x46c04778); /* bx pc; nop */ - tr[1] = grub_host_to_target32 (((new_offset >> 2) & 0xffffff) | 0xea000000); /* b new_offset */ - tr += 2; - sym_addr = tr_addr | 1; - } - sym_addr -= offset; - /* Thumb instructions can be 16-bit aligned */ - if (ELF_R_TYPE (info) == R_ARM_THM_JUMP19) - err = grub_arm_reloc_thm_jump19 ((grub_uint16_t *) target, sym_addr); - else - err = grub_arm_reloc_thm_call ((grub_uint16_t *) target, - sym_addr); - if (err) - grub_util_error ("%s", grub_errmsg); - } - break; - - case R_ARM_CALL: - case R_ARM_JUMP24: - { - grub_err_t err; - grub_util_info (" JUMP24:\ttarget=0x%08lx\toffset=(0x%08x)", (unsigned long) ((char *) target - (char *) e), sym_addr); - if (sym_addr & 1) - { - grub_uint32_t tr_addr; - grub_int32_t new_offset; - tr_addr = (char *) tr - (char *) pe_target - - target_section_addr; - new_offset = sym_addr - tr_addr - 12; - - /* There is no immediate version of bx, only register one... */ - tr[0] = grub_host_to_target32 (0xe59fc004); /* ldr ip, [pc, #4] */ - tr[1] = grub_host_to_target32 (0xe08cc00f); /* add ip, ip, pc */ - tr[2] = grub_host_to_target32 (0xe12fff1c); /* bx ip */ - tr[3] = grub_host_to_target32 (new_offset | 1); - tr += 4; - sym_addr = tr_addr; - } - sym_addr -= offset; - err = grub_arm_reloc_jump24 (target, - sym_addr); - if (err) - grub_util_error ("%s", grub_errmsg); - } - break; - - default: - grub_util_error (_("relocation 0x%x is not implemented yet"), - (unsigned int) ELF_R_TYPE (info)); - break; - } - break; - } -#endif /* MKIMAGE_ELF32 */ - case EM_RISCV: - { - grub_uint64_t *t64 = (grub_uint64_t *) target; - grub_uint32_t *t32 = (grub_uint32_t *) target; - grub_uint16_t *t16 = (grub_uint16_t *) target; - grub_uint8_t *t8 = (grub_uint8_t *) target; - grub_int64_t off = (long)sym_addr - target_section_addr - offset - - image_target->vaddr_offset; - - /* - * Instructions and instruction encoding are documented in the RISC-V - * specification. This file is based on version 2.2: - * - * https://github.com/riscv/riscv-isa-manual/blob/master/release/riscv-spec-v2.2.pdf - */ - - sym_addr += addend; - - switch (ELF_R_TYPE (info)) - { - case R_RISCV_ADD8: - *t8 = *t8 + sym_addr; - break; - case R_RISCV_ADD16: - *t16 = grub_host_to_target16 (grub_target_to_host16 (*t16) + sym_addr); - break; - case R_RISCV_32: - case R_RISCV_ADD32: - *t32 = grub_host_to_target32 (grub_target_to_host32 (*t32) + sym_addr); - break; - case R_RISCV_64: - case R_RISCV_ADD64: - *t64 = grub_host_to_target64 (grub_target_to_host64 (*t64) + sym_addr); - break; - - case R_RISCV_SUB8: - *t8 = sym_addr - *t8; - break; - case R_RISCV_SUB16: - *t16 = grub_host_to_target16 (grub_target_to_host16 (*t16) - sym_addr); - break; - case R_RISCV_SUB32: - *t32 = grub_host_to_target32 (grub_target_to_host32 (*t32) - sym_addr); - break; - case R_RISCV_SUB64: - *t64 = grub_host_to_target64 (grub_target_to_host64 (*t64) - sym_addr); - break; - case R_RISCV_BRANCH: - { - grub_uint32_t imm12 = (off & 0x1000) << (31 - 12); - grub_uint32_t imm11 = (off & 0x800) >> (11 - 7); - grub_uint32_t imm10_5 = (off & 0x7e0) << (30 - 10); - grub_uint32_t imm4_1 = (off & 0x1e) << (11 - 4); - *t32 = grub_host_to_target32 ((grub_target_to_host32 (*t32) & 0x1fff07f) - | imm12 | imm11 | imm10_5 | imm4_1); - } - break; - case R_RISCV_JAL: - { - grub_uint32_t imm20 = (off & 0x100000) << (31 - 20); - grub_uint32_t imm19_12 = (off & 0xff000); - grub_uint32_t imm11 = (off & 0x800) << (20 - 11); - grub_uint32_t imm10_1 = (off & 0x7fe) << (30 - 10); - *t32 = grub_host_to_target32 ((grub_target_to_host32 (*t32) & 0xfff) - | imm20 | imm19_12 | imm11 | imm10_1); - } - break; - case R_RISCV_CALL: - { - grub_uint32_t hi20, lo12; - - if (off != (grub_int32_t)off) - grub_util_error ("target %lx not reachable from pc=%lx", (long)sym_addr, (long)((char *)target - (char *)e)); - - hi20 = (off + 0x800) & 0xfffff000; - lo12 = (off - hi20) & 0xfff; - t32[0] = grub_host_to_target32 ((grub_target_to_host32 (t32[0]) & 0xfff) | hi20); - t32[1] = grub_host_to_target32 ((grub_target_to_host32 (t32[1]) & 0xfffff) | (lo12 << 20)); - } - break; - case R_RISCV_RVC_BRANCH: - { - grub_uint16_t imm8 = (off & 0x100) << (12 - 8); - grub_uint16_t imm7_6 = (off & 0xc0) >> (6 - 5); - grub_uint16_t imm5 = (off & 0x20) >> (5 - 2); - grub_uint16_t imm4_3 = (off & 0x18) << (12 - 5); - grub_uint16_t imm2_1 = (off & 0x6) << (12 - 10); - *t16 = grub_host_to_target16 ((grub_target_to_host16 (*t16) & 0xe383) - | imm8 | imm7_6 | imm5 | imm4_3 | imm2_1); - } - break; - case R_RISCV_RVC_JUMP: - { - grub_uint16_t imm11 = (off & 0x800) << (12 - 11); - grub_uint16_t imm10 = (off & 0x400) >> (10 - 8); - grub_uint16_t imm9_8 = (off & 0x300) << (12 - 11); - grub_uint16_t imm7 = (off & 0x80) >> (7 - 6); - grub_uint16_t imm6 = (off & 0x40) << (12 - 11); - grub_uint16_t imm5 = (off & 0x20) >> (5 - 2); - grub_uint16_t imm4 = (off & 0x10) << (12 - 5); - grub_uint16_t imm3_1 = (off & 0xe) << (12 - 10); - *t16 = grub_host_to_target16 ((grub_target_to_host16 (*t16) & 0xe003) - | imm11 | imm10 | imm9_8 | imm7 | imm6 - | imm5 | imm4 | imm3_1); - } - break; - case R_RISCV_PCREL_HI20: - { - grub_int32_t hi20; - - if (off != (grub_int32_t)off) - grub_util_error ("target %lx not reachable from pc=%lx", (long)sym_addr, (long)((char *)target - (char *)e)); - - hi20 = (off + 0x800) & 0xfffff000; - *t32 = grub_host_to_target32 ((grub_target_to_host32 (*t32) & 0xfff) | hi20); - } - break; - case R_RISCV_PCREL_LO12_I: - case R_RISCV_PCREL_LO12_S: - { - Elf_Rela *rel2; - Elf_Word k; - /* Search backwards for matching HI20 reloc. */ - for (k = j, rel2 = (Elf_Rela *) ((char *) r - r_size); - k > 0; - k--, rel2 = (Elf_Rela *) ((char *) rel2 - r_size)) - { - Elf_Addr rel2_info; - Elf_Addr rel2_offset; - Elf_Addr rel2_sym_addr; - Elf_Addr rel2_addend; - Elf_Addr rel2_loc; - grub_int64_t rel2_off; - - rel2_offset = grub_target_to_host (rel2->r_offset); - rel2_info = grub_target_to_host (rel2->r_info); - rel2_loc = target_section_addr + rel2_offset + image_target->vaddr_offset; - - if (ELF_R_TYPE (rel2_info) == R_RISCV_PCREL_HI20 - && rel2_loc == sym_addr) - { - rel2_sym_addr = SUFFIX (get_symbol_address) - (e, smd->symtab, ELF_R_SYM (rel2_info), - image_target); - rel2_addend = (s->sh_type == grub_target_to_host32 (SHT_RELA)) ? - grub_target_to_host (rel2->r_addend) : 0; - rel2_off = rel2_sym_addr + rel2_addend - rel2_loc; - off = rel2_off - ((rel2_off + 0x800) & 0xfffff000); - - if (ELF_R_TYPE (info) == R_RISCV_PCREL_LO12_I) - *t32 = grub_host_to_target32 ((grub_target_to_host32 (*t32) & 0xfffff) | (off & 0xfff) << 20); - else - { - grub_uint32_t imm11_5 = (off & 0xfe0) << (31 - 11); - grub_uint32_t imm4_0 = (off & 0x1f) << (11 - 4); - *t32 = grub_host_to_target32 ((grub_target_to_host32 (*t32) & 0x1fff07f) | imm11_5 | imm4_0); - } - break; - } - } - if (k == 0) - grub_util_error ("cannot find matching HI20 relocation"); - } - break; - case R_RISCV_HI20: - *t32 = grub_host_to_target32 ((grub_target_to_host32 (*t32) & 0xfff) | (((grub_int32_t) sym_addr + 0x800) & 0xfffff000)); - break; - case R_RISCV_LO12_I: - { - grub_int32_t lo12 = (grub_int32_t) sym_addr - (((grub_int32_t) sym_addr + 0x800) & 0xfffff000); - *t32 = grub_host_to_target32 ((grub_target_to_host32 (*t32) & 0xfffff) | ((lo12 & 0xfff) << 20)); - } - break; - case R_RISCV_LO12_S: - { - grub_int32_t lo12 = (grub_int32_t) sym_addr - (((grub_int32_t) sym_addr + 0x800) & 0xfffff000); - grub_uint32_t imm11_5 = (lo12 & 0xfe0) << (31 - 11); - grub_uint32_t imm4_0 = (lo12 & 0x1f) << (11 - 4); - *t32 = grub_host_to_target32 ((grub_target_to_host32 (*t32) & 0x1fff07f) | imm11_5 | imm4_0); - } - break; - case R_RISCV_RELAX: - break; - default: - grub_util_error (_("relocation 0x%x is not implemented yet"), - (unsigned int) ELF_R_TYPE (info)); - break; - } - break; - } - default: - grub_util_error ("unknown architecture type %d", - image_target->elf_target); - } - } - } -} - -/* Add a PE32's fixup entry for a relocation. Return the resulting address - after having written to the file OUT. */ -static Elf_Addr -add_fixup_entry (struct fixup_block_list **cblock, grub_uint16_t type, - Elf_Addr addr, int flush, Elf_Addr current_address, - const struct grub_install_image_target_desc *image_target) -{ - struct grub_pe32_fixup_block *b; - - b = &((*cblock)->b); - - /* First, check if it is necessary to write out the current block. */ - if ((*cblock)->state) - { - if (flush || addr < b->page_rva || b->page_rva + 0x1000 <= addr) - { - grub_uint32_t size; - - if (flush) - { - /* Add as much padding as necessary to align the address - with a section boundary. */ - Elf_Addr next_address; - unsigned padding_size; - size_t cur_index; - - next_address = current_address + b->block_size; - padding_size = ((ALIGN_UP (next_address, image_target->section_align) - - next_address) - >> 1); - cur_index = ((b->block_size - sizeof (*b)) >> 1); - grub_util_info ("adding %d padding fixup entries", padding_size); - while (padding_size--) - { - b->entries[cur_index++] = 0; - b->block_size += 2; - } - } - else while (b->block_size & (8 - 1)) - { - /* If not aligned with a 32-bit boundary, add - a padding entry. */ - size_t cur_index; - - grub_util_info ("adding a padding fixup entry"); - cur_index = ((b->block_size - sizeof (*b)) >> 1); - b->entries[cur_index] = 0; - b->block_size += 2; - } - - /* Flush it. */ - grub_util_info ("writing %d bytes of a fixup block starting at 0x%x", - b->block_size, b->page_rva); - size = b->block_size; - current_address += size; - b->page_rva = grub_host_to_target32 (b->page_rva); - b->block_size = grub_host_to_target32 (b->block_size); - (*cblock)->next = xmalloc (sizeof (**cblock) + 2 * 0x1000); - memset ((*cblock)->next, 0, sizeof (**cblock) + 2 * 0x1000); - *cblock = (*cblock)->next; - } - } - - b = &((*cblock)->b); - - if (! flush) - { - grub_uint16_t entry; - size_t cur_index; - - /* If not allocated yet, allocate a block with enough entries. */ - if (! (*cblock)->state) - { - (*cblock)->state = 1; - - /* The spec does not mention the requirement of a Page RVA. - Here, align the address with a 4K boundary for safety. */ - b->page_rva = (addr & ~(0x1000 - 1)); - b->block_size = sizeof (*b); - } - - /* Sanity check. */ - if (b->block_size >= sizeof (*b) + 2 * 0x1000) - grub_util_error ("too many fixup entries"); - - /* Add a new entry. */ - cur_index = ((b->block_size - sizeof (*b)) >> 1); - entry = GRUB_PE32_FIXUP_ENTRY (type, addr - b->page_rva); - b->entries[cur_index] = grub_host_to_target16 (entry); - b->block_size += 2; - } - - return current_address; -} - -struct raw_reloc -{ - struct raw_reloc *next; - grub_uint32_t offset; - enum raw_reloc_type { - RAW_RELOC_NONE = -1, - RAW_RELOC_32 = 0, - RAW_RELOC_MAX = 1, - } type; -}; - -struct translate_context -{ - /* PE */ - struct fixup_block_list *lst, *lst0; - Elf_Addr current_address; - - /* Raw */ - struct raw_reloc *raw_relocs; -}; - -static void -translate_reloc_start (struct translate_context *ctx, - const struct grub_install_image_target_desc *image_target) -{ - grub_memset (ctx, 0, sizeof (*ctx)); - if (image_target->id == IMAGE_EFI) - { - ctx->lst = ctx->lst0 = xmalloc (sizeof (*ctx->lst) + 2 * 0x1000); - memset (ctx->lst, 0, sizeof (*ctx->lst) + 2 * 0x1000); - ctx->current_address = 0; - } -} - -static void -translate_relocation_pe (struct translate_context *ctx, - Elf_Addr addr, - Elf_Addr info, - const struct grub_install_image_target_desc *image_target) -{ - /* Necessary to relocate only absolute addresses. */ - switch (image_target->elf_target) - { - case EM_386: - if (ELF_R_TYPE (info) == R_386_32) - { - grub_util_info ("adding a relocation entry for 0x%" - GRUB_HOST_PRIxLONG_LONG, - (unsigned long long) addr); - ctx->current_address - = add_fixup_entry (&ctx->lst, - GRUB_PE32_REL_BASED_HIGHLOW, - addr, 0, ctx->current_address, - image_target); - } - break; - case EM_X86_64: - if ((ELF_R_TYPE (info) == R_X86_64_32) || - (ELF_R_TYPE (info) == R_X86_64_32S)) - { - grub_util_error ("can\'t add fixup entry for R_X86_64_32(S)"); - } - else if (ELF_R_TYPE (info) == R_X86_64_64) - { - grub_util_info ("adding a relocation entry for 0x%" - GRUB_HOST_PRIxLONG_LONG, - (unsigned long long) addr); - ctx->current_address - = add_fixup_entry (&ctx->lst, - GRUB_PE32_REL_BASED_DIR64, - addr, - 0, ctx->current_address, - image_target); - } - break; - case EM_IA_64: - switch (ELF_R_TYPE (info)) - { - case R_IA64_PCREL64LSB: - case R_IA64_LDXMOV: - case R_IA64_PCREL21B: - case R_IA64_LTOFF_FPTR22: - case R_IA64_LTOFF22X: - case R_IA64_LTOFF22: - case R_IA64_GPREL22: - case R_IA64_GPREL64I: - case R_IA64_SEGREL64LSB: - break; - - case R_IA64_FPTR64LSB: - case R_IA64_DIR64LSB: -#if 1 - { - grub_util_info ("adding a relocation entry for 0x%" - GRUB_HOST_PRIxLONG_LONG, - (unsigned long long) addr); - ctx->current_address - = add_fixup_entry (&ctx->lst, - GRUB_PE32_REL_BASED_DIR64, - addr, - 0, ctx->current_address, - image_target); - } -#endif - break; - default: - grub_util_error (_("relocation 0x%x is not implemented yet"), - (unsigned int) ELF_R_TYPE (info)); - break; - } - break; - case EM_AARCH64: - switch (ELF_R_TYPE (info)) - { - case R_AARCH64_ABS64: - { - ctx->current_address - = add_fixup_entry (&ctx->lst, - GRUB_PE32_REL_BASED_DIR64, - addr, 0, ctx->current_address, - image_target); - } - break; - /* Relative relocations do not require fixup entries. */ - case R_AARCH64_CALL26: - case R_AARCH64_JUMP26: - case R_AARCH64_PREL32: - break; - /* Page-relative relocations do not require fixup entries. */ - case R_AARCH64_ADR_PREL_PG_HI21: - /* We page-align the whole kernel, so no need - for fixup entries. - */ - case R_AARCH64_ADD_ABS_LO12_NC: - case R_AARCH64_LDST64_ABS_LO12_NC: - break; - - /* GOT is relocated separately. */ - case R_AARCH64_ADR_GOT_PAGE: - case R_AARCH64_LD64_GOT_LO12_NC: - break; - - default: - grub_util_error (_("relocation 0x%x is not implemented yet"), - (unsigned int) ELF_R_TYPE (info)); - break; - } - break; - break; -#if defined(MKIMAGE_ELF32) - case EM_ARM: - switch (ELF_R_TYPE (info)) - { - case R_ARM_V4BX: - /* Relative relocations do not require fixup entries. */ - case R_ARM_JUMP24: - case R_ARM_THM_CALL: - case R_ARM_THM_JUMP19: - case R_ARM_THM_JUMP24: - case R_ARM_CALL: - { - grub_util_info (" %s: not adding fixup: 0x%08x : 0x%08x", __FUNCTION__, (unsigned int) addr, (unsigned int) ctx->current_address); - } - break; - /* Create fixup entry for PE/COFF loader */ - case R_ARM_ABS32: - { - ctx->current_address - = add_fixup_entry (&ctx->lst, - GRUB_PE32_REL_BASED_HIGHLOW, - addr, 0, ctx->current_address, - image_target); - } - break; - default: - grub_util_error (_("relocation 0x%x is not implemented yet"), - (unsigned int) ELF_R_TYPE (info)); - break; - } - break; -#endif /* defined(MKIMAGE_ELF32) */ - case EM_RISCV: - switch (ELF_R_TYPE (info)) - { - case R_RISCV_32: - { - ctx->current_address - = add_fixup_entry (&ctx->lst, - GRUB_PE32_REL_BASED_HIGHLOW, - addr, 0, ctx->current_address, - image_target); - } - break; - case R_RISCV_64: - { - ctx->current_address - = add_fixup_entry (&ctx->lst, - GRUB_PE32_REL_BASED_DIR64, - addr, 0, ctx->current_address, - image_target); - } - break; - /* Relative relocations do not require fixup entries. */ - case R_RISCV_BRANCH: - case R_RISCV_JAL: - case R_RISCV_CALL: - case R_RISCV_PCREL_HI20: - case R_RISCV_PCREL_LO12_I: - case R_RISCV_PCREL_LO12_S: - case R_RISCV_RVC_BRANCH: - case R_RISCV_RVC_JUMP: - case R_RISCV_ADD32: - case R_RISCV_SUB32: - grub_util_info (" %s: not adding fixup: 0x%08x : 0x%08x", __FUNCTION__, (unsigned int) addr, (unsigned int) ctx->current_address); - break; - case R_RISCV_HI20: - { - ctx->current_address - = add_fixup_entry (&ctx->lst, - GRUB_PE32_REL_BASED_RISCV_HI20, - addr, 0, ctx->current_address, - image_target); - } - break; - case R_RISCV_LO12_I: - { - ctx->current_address - = add_fixup_entry (&ctx->lst, - GRUB_PE32_REL_BASED_RISCV_LOW12I, - addr, 0, ctx->current_address, - image_target); - } - break; - case R_RISCV_LO12_S: - { - ctx->current_address - = add_fixup_entry (&ctx->lst, - GRUB_PE32_REL_BASED_RISCV_LOW12S, - addr, 0, ctx->current_address, - image_target); - } - break; - case R_RISCV_RELAX: - break; - default: - grub_util_error (_("relocation 0x%x is not implemented yet"), - (unsigned int) ELF_R_TYPE (info)); - break; - } - break; - default: - grub_util_error ("unknown machine type 0x%x", image_target->elf_target); - } -} - -static enum raw_reloc_type -classify_raw_reloc (Elf_Addr info, - const struct grub_install_image_target_desc *image_target) -{ - /* Necessary to relocate only absolute addresses. */ - switch (image_target->elf_target) - { - case EM_ARM: - switch (ELF_R_TYPE (info)) - { - case R_ARM_V4BX: - case R_ARM_JUMP24: - case R_ARM_THM_CALL: - case R_ARM_THM_JUMP19: - case R_ARM_THM_JUMP24: - case R_ARM_CALL: - return RAW_RELOC_NONE; - case R_ARM_ABS32: - return RAW_RELOC_32; - default: - grub_util_error (_("relocation 0x%x is not implemented yet"), - (unsigned int) ELF_R_TYPE (info)); - break; - } - break; - default: - grub_util_error ("unknown machine type 0x%x", image_target->elf_target); - } -} - -static void -translate_relocation_raw (struct translate_context *ctx, - Elf_Addr addr, - Elf_Addr info, - const struct grub_install_image_target_desc *image_target) -{ - enum raw_reloc_type class = classify_raw_reloc (info, image_target); - struct raw_reloc *rel; - if (class == RAW_RELOC_NONE) - return; - rel = xmalloc (sizeof (*rel)); - rel->next = ctx->raw_relocs; - rel->type = class; - rel->offset = addr; - ctx->raw_relocs = rel; -} - -static void -translate_relocation (struct translate_context *ctx, - Elf_Addr addr, - Elf_Addr info, - const struct grub_install_image_target_desc *image_target) -{ - if (image_target->id == IMAGE_EFI) - translate_relocation_pe (ctx, addr, info, image_target); - else - translate_relocation_raw (ctx, addr, info, image_target); -} - -static void -finish_reloc_translation_pe (struct translate_context *ctx, struct grub_mkimage_layout *layout, - const struct grub_install_image_target_desc *image_target) -{ - ctx->current_address = add_fixup_entry (&ctx->lst, 0, 0, 1, ctx->current_address, image_target); - - { - grub_uint8_t *ptr; - layout->reloc_section = ptr = xmalloc (ctx->current_address); - for (ctx->lst = ctx->lst0; ctx->lst; ctx->lst = ctx->lst->next) - if (ctx->lst->state) - { - memcpy (ptr, &ctx->lst->b, grub_target_to_host32 (ctx->lst->b.block_size)); - ptr += grub_target_to_host32 (ctx->lst->b.block_size); - } - assert ((ctx->current_address + (grub_uint8_t *) layout->reloc_section) == ptr); - } - - for (ctx->lst = ctx->lst0; ctx->lst; ) - { - struct fixup_block_list *next; - next = ctx->lst->next; - free (ctx->lst); - ctx->lst = next; - } - - layout->reloc_size = ctx->current_address; - if (image_target->elf_target == EM_ARM && layout->reloc_size > GRUB_KERNEL_ARM_STACK_SIZE) - grub_util_error ("Reloc section (%d) is bigger than stack size (%d). " - "This breaks assembly assumptions. Please increase stack size", - (int) layout->reloc_size, - (int) GRUB_KERNEL_ARM_STACK_SIZE); -} - -/* - Layout: - - - - - ... - - - each relocation starts with 32-bit offset. Rest depends on relocation. - mkimage stops when it sees first unknown type or end marker. - This allows images to be created with mismatched mkimage and - kernel as long as no relocations are present in kernel that mkimage - isn't aware of (in which case mkimage aborts). - This also allows simple assembly to do the relocs. -*/ - -#define RAW_SEPARATOR 0xfffffffe -#define RAW_END_MARKER 0xffffffff - -static void -finish_reloc_translation_raw (struct translate_context *ctx, struct grub_mkimage_layout *layout, - const struct grub_install_image_target_desc *image_target) -{ - size_t count = 0, sz; - enum raw_reloc_type highest = RAW_RELOC_NONE; - enum raw_reloc_type curtype; - struct raw_reloc *cur; - grub_uint32_t *p; - if (!ctx->raw_relocs) - { - layout->reloc_section = p = xmalloc (sizeof (grub_uint32_t)); - p[0] = RAW_END_MARKER; - layout->reloc_size = sizeof (grub_uint32_t); - return; - } - for (cur = ctx->raw_relocs; cur; cur = cur->next) - { - count++; - if (cur->type > highest) - highest = cur->type; - } - /* highest separators, count relocations and one end marker. */ - sz = (highest + count + 1) * sizeof (grub_uint32_t); - layout->reloc_section = p = xmalloc (sz); - for (curtype = 0; curtype <= highest; curtype++) - { - /* Support for special cases would go here. */ - for (cur = ctx->raw_relocs; cur; cur = cur->next) - if (cur->type == curtype) - { - *p++ = cur->offset; - } - *p++ = RAW_SEPARATOR; - } - *--p = RAW_END_MARKER; - layout->reloc_size = sz; -} - -static void -finish_reloc_translation (struct translate_context *ctx, struct grub_mkimage_layout *layout, - const struct grub_install_image_target_desc *image_target) -{ - if (image_target->id == IMAGE_EFI) - finish_reloc_translation_pe (ctx, layout, image_target); - else - finish_reloc_translation_raw (ctx, layout, image_target); -} - - -static void -create_u64_fixups (struct translate_context *ctx, - Elf_Addr jumpers, grub_size_t njumpers, - const struct grub_install_image_target_desc *image_target) -{ - unsigned i; - assert (image_target->id == IMAGE_EFI); - for (i = 0; i < njumpers; i++) - ctx->current_address = add_fixup_entry (&ctx->lst, - GRUB_PE32_REL_BASED_DIR64, - jumpers + 8 * i, - 0, ctx->current_address, - image_target); -} - -/* Make a .reloc section. */ -static void -make_reloc_section (Elf_Ehdr *e, struct grub_mkimage_layout *layout, - struct section_metadata *smd, - const struct grub_install_image_target_desc *image_target) -{ - unsigned i; - Elf_Shdr *s; - struct translate_context ctx; - - translate_reloc_start (&ctx, image_target); - - for (i = 0, s = smd->sections; i < smd->num_sections; - i++, s = (Elf_Shdr *) ((char *) s + smd->section_entsize)) - if ((grub_target_to_host32 (s->sh_type) == SHT_REL) || - (grub_target_to_host32 (s->sh_type) == SHT_RELA)) - { - Elf_Rel *r; - Elf_Word rtab_size, r_size, num_rs; - Elf_Off rtab_offset; - Elf_Addr section_address; - Elf_Word j; - - if (!SUFFIX (is_kept_reloc_section) (s, image_target, smd)) - { - grub_util_info ("not translating the skipped relocation section %s", - smd->strtab + grub_le_to_cpu32 (s->sh_name)); - continue; - } - - grub_util_info ("translating the relocation section %s", - smd->strtab + grub_le_to_cpu32 (s->sh_name)); - - rtab_size = grub_target_to_host (s->sh_size); - r_size = grub_target_to_host (s->sh_entsize); - rtab_offset = grub_target_to_host (s->sh_offset); - num_rs = rtab_size / r_size; - - section_address = smd->vaddrs[grub_le_to_cpu32 (s->sh_info)]; - - for (j = 0, r = (Elf_Rel *) ((char *) e + rtab_offset); - j < num_rs; - j++, r = (Elf_Rel *) ((char *) r + r_size)) - { - Elf_Addr info; - Elf_Addr offset; - Elf_Addr addr; - - offset = grub_target_to_host (r->r_offset); - info = grub_target_to_host (r->r_info); - - addr = section_address + offset; - - translate_relocation (&ctx, addr, info, image_target); - } - } - - if (image_target->elf_target == EM_IA_64) - create_u64_fixups (&ctx, - layout->ia64jmp_off - + image_target->vaddr_offset, - 2 * layout->ia64jmpnum, - image_target); - if (image_target->elf_target == EM_IA_64 || image_target->elf_target == EM_AARCH64) - create_u64_fixups (&ctx, - layout->got_off - + image_target->vaddr_offset, - (layout->got_size / 8), - image_target); - - finish_reloc_translation (&ctx, layout, image_target); -} - -/* Determine if this section is a text section. Return false if this - section is not allocated. */ -static int -SUFFIX (is_text_section) (Elf_Shdr *s, const struct grub_install_image_target_desc *image_target) -{ - if (!is_relocatable (image_target) - && grub_target_to_host32 (s->sh_type) != SHT_PROGBITS) - return 0; - return ((grub_target_to_host (s->sh_flags) & (SHF_EXECINSTR | SHF_ALLOC)) - == (SHF_EXECINSTR | SHF_ALLOC)); -} - -/* Determine if this section is a data section. */ -static int -SUFFIX (is_data_section) (Elf_Shdr *s, const struct grub_install_image_target_desc *image_target) -{ - if (!is_relocatable (image_target) - && grub_target_to_host32 (s->sh_type) != SHT_PROGBITS) - return 0; - return ((grub_target_to_host (s->sh_flags) & (SHF_EXECINSTR | SHF_ALLOC)) - == SHF_ALLOC) && !(grub_target_to_host32 (s->sh_type) == SHT_NOBITS); -} - -static int -SUFFIX (is_bss_section) (Elf_Shdr *s, const struct grub_install_image_target_desc *image_target) -{ - if (!is_relocatable (image_target)) - return 0; - return ((grub_target_to_host (s->sh_flags) & (SHF_EXECINSTR | SHF_ALLOC)) - == SHF_ALLOC) && (grub_target_to_host32 (s->sh_type) == SHT_NOBITS); -} - -/* Determine if a section is going to be in the final output */ -static int -SUFFIX (is_kept_section) (Elf_Shdr *s, const struct grub_install_image_target_desc *image_target) -{ - /* We keep .text and .data */ - if (SUFFIX (is_text_section) (s, image_target) - || SUFFIX (is_data_section) (s, image_target)) - return 1; - - /* - * And we keep .bss if we're producing PE binaries or the target doesn't - * have a relocating loader. Platforms other than EFI and U-boot shouldn't - * have .bss in their binaries as we build with -Wl,-Ttext. - */ - if (SUFFIX (is_bss_section) (s, image_target) - && (image_target->id == IMAGE_EFI || !is_relocatable (image_target))) - return 1; - - /* Otherwise this is not a section we're keeping in the final output. */ - return 0; -} - -static int -SUFFIX (is_kept_reloc_section) (Elf_Shdr *s, const struct grub_install_image_target_desc *image_target, - struct section_metadata *smd) -{ - int i; - int r = 0; - const char *name = smd->strtab + grub_host_to_target32 (s->sh_name); - - if (!strncmp (name, ".rela.", 6)) - name += 5; - else if (!strncmp (name, ".rel.", 5)) - name += 4; - else - return 1; - - for (i = 0, s = smd->sections; i < smd->num_sections; - i++, s = (Elf_Shdr *) ((char *) s + smd->section_entsize)) - { - const char *sname = smd->strtab + grub_host_to_target32 (s->sh_name); - if (strcmp (sname, name)) - continue; - - return SUFFIX (is_kept_section) (s, image_target); - } - - return r; -} - -/* Return if the ELF header is valid. */ -static int -SUFFIX (check_elf_header) (Elf_Ehdr *e, size_t size, const struct grub_install_image_target_desc *image_target) -{ - if (size < sizeof (*e) - || e->e_ident[EI_MAG0] != ELFMAG0 - || e->e_ident[EI_MAG1] != ELFMAG1 - || e->e_ident[EI_MAG2] != ELFMAG2 - || e->e_ident[EI_MAG3] != ELFMAG3 - || e->e_ident[EI_VERSION] != EV_CURRENT - || e->e_ident[EI_CLASS] != ELFCLASSXX - || e->e_version != grub_host_to_target32 (EV_CURRENT)) - return 0; - - return 1; -} - -static Elf_Addr -SUFFIX (put_section) (Elf_Shdr *s, int i, - Elf_Addr current_address, - struct section_metadata *smd, - const struct grub_install_image_target_desc *image_target) -{ - Elf_Word align = grub_host_to_target_addr (s->sh_addralign); - const char *name = smd->strtab + grub_host_to_target32 (s->sh_name); - - if (align) - current_address = ALIGN_UP (current_address + image_target->vaddr_offset, - align) - - image_target->vaddr_offset; - - grub_util_info ("locating the section %s at 0x%" - GRUB_HOST_PRIxLONG_LONG, - name, (unsigned long long) current_address); - if (!is_relocatable (image_target)) - current_address = grub_host_to_target_addr (s->sh_addr) - - image_target->link_addr; - smd->addrs[i] = current_address; - current_address += grub_host_to_target_addr (s->sh_size); - return current_address; -} - -/* - * Locate section addresses by merging code sections and data sections - * into .text and .data, respectively. - */ -static void -SUFFIX (locate_sections) (Elf_Ehdr *e, const char *kernel_path, - struct section_metadata *smd, - struct grub_mkimage_layout *layout, - const struct grub_install_image_target_desc *image_target) -{ - int i; - Elf_Shdr *s; - - layout->align = 1; - /* Page-aligning simplifies relocation handling. */ - if (image_target->elf_target == EM_AARCH64) - layout->align = 4096; - - layout->kernel_size = 0; - - for (i = 0, s = smd->sections; - i < smd->num_sections; - i++, s = (Elf_Shdr *) ((char *) s + smd->section_entsize)) - if ((grub_target_to_host (s->sh_flags) & SHF_ALLOC) - && grub_host_to_target32 (s->sh_addralign) > layout->align) - layout->align = grub_host_to_target32 (s->sh_addralign); - - /* .text */ - for (i = 0, s = smd->sections; - i < smd->num_sections; - i++, s = (Elf_Shdr *) ((char *) s + smd->section_entsize)) - if (SUFFIX (is_text_section) (s, image_target)) - { - layout->kernel_size = SUFFIX (put_section) (s, i, layout->kernel_size, - smd, image_target); - if (!is_relocatable (image_target) && - grub_host_to_target_addr (s->sh_addr) != image_target->link_addr) - { - char *msg - = grub_xasprintf (_("`%s' is miscompiled: its start address is 0x%llx" - " instead of 0x%llx: ld.gold bug?"), - kernel_path, - (unsigned long long) grub_host_to_target_addr (s->sh_addr), - (unsigned long long) image_target->link_addr); - grub_util_error ("%s", msg); - } - } - -#ifdef MKIMAGE_ELF32 - if (image_target->elf_target == EM_ARM) - { - grub_size_t tramp; - - layout->kernel_size = ALIGN_UP (layout->kernel_size, 16); - - tramp = arm_get_trampoline_size (e, smd->sections, smd->section_entsize, - smd->num_sections, image_target); - - layout->tramp_off = layout->kernel_size; - layout->kernel_size += ALIGN_UP (tramp, 16); - } -#endif - - layout->kernel_size = ALIGN_UP (layout->kernel_size + image_target->vaddr_offset, - image_target->section_align) - - image_target->vaddr_offset; - layout->exec_size = layout->kernel_size; - - /* .data */ - for (i = 0, s = smd->sections; - i < smd->num_sections; - i++, s = (Elf_Shdr *) ((char *) s + smd->section_entsize)) - if (SUFFIX (is_data_section) (s, image_target)) - layout->kernel_size = SUFFIX (put_section) (s, i, layout->kernel_size, smd, - image_target); - - layout->bss_start = layout->kernel_size; - layout->end = layout->kernel_size; - - /* .bss */ - for (i = 0, s = smd->sections; - i < smd->num_sections; - i++, s = (Elf_Shdr *) ((char *) s + smd->section_entsize)) - { - if (SUFFIX (is_bss_section) (s, image_target)) - layout->end = SUFFIX (put_section) (s, i, layout->end, smd, image_target); - - /* - * This must to be in the last time this function passes through the loop. - */ - smd->vaddrs[i] = smd->addrs[i] + image_target->vaddr_offset; - } - - layout->end = ALIGN_UP (layout->end + image_target->vaddr_offset, - image_target->section_align) - image_target->vaddr_offset; - /* Explicitly initialize BSS - when producing PE32 to avoid a bug in EFI implementations. - Platforms other than EFI and U-boot shouldn't have .bss in - their binaries as we build with -Wl,-Ttext. - */ - if (image_target->id == IMAGE_EFI || !is_relocatable (image_target)) - layout->kernel_size = layout->end; -} - -char * -SUFFIX (grub_mkimage_load_image) (const char *kernel_path, - size_t total_module_size, - struct grub_mkimage_layout *layout, - const struct grub_install_image_target_desc *image_target) -{ - char *kernel_img, *out_img; - struct section_metadata smd = { 0, 0, 0, 0, 0, 0, 0 }; - Elf_Ehdr *e; - int i; - Elf_Shdr *s; - Elf_Off section_offset; - grub_size_t kernel_size; - - grub_memset (layout, 0, sizeof (*layout)); - - layout->start_address = 0; - - kernel_size = grub_util_get_image_size (kernel_path); - kernel_img = xmalloc (kernel_size); - grub_util_load_image (kernel_path, kernel_img); - - e = (Elf_Ehdr *) kernel_img; - if (! SUFFIX (check_elf_header) (e, kernel_size, image_target)) - grub_util_error ("invalid ELF header"); - - section_offset = grub_target_to_host (e->e_shoff); - smd.section_entsize = grub_target_to_host16 (e->e_shentsize); - smd.num_sections = grub_target_to_host16 (e->e_shnum); - - if (kernel_size < section_offset - + (grub_uint32_t) smd.section_entsize * smd.num_sections) - grub_util_error (_("premature end of file %s"), kernel_path); - - smd.sections = (Elf_Shdr *) (kernel_img + section_offset); - - /* Relocate sections then symbols in the virtual address space. */ - s = (Elf_Shdr *) ((char *) smd.sections - + grub_host_to_target16 (e->e_shstrndx) * smd.section_entsize); - smd.strtab = (char *) e + grub_host_to_target_addr (s->sh_offset); - - smd.addrs = xmalloc (sizeof (*smd.addrs) * smd.num_sections); - memset (smd.addrs, 0, sizeof (*smd.addrs) * smd.num_sections); - smd.vaddrs = xmalloc (sizeof (*smd.vaddrs) * smd.num_sections); - memset (smd.vaddrs, 0, sizeof (*smd.vaddrs) * smd.num_sections); - - SUFFIX (locate_sections) (e, kernel_path, &smd, layout, image_target); - - if (!is_relocatable (image_target)) - { - Elf_Addr current_address = layout->kernel_size; - - for (i = 0, s = smd.sections; - i < smd.num_sections; - i++, s = (Elf_Shdr *) ((char *) s + smd.section_entsize)) - if (grub_target_to_host32 (s->sh_type) == SHT_NOBITS) - { - Elf_Word sec_align = grub_host_to_target_addr (s->sh_addralign); - const char *name = smd.strtab + grub_host_to_target32 (s->sh_name); - - if (sec_align) - current_address = ALIGN_UP (current_address - + image_target->vaddr_offset, - sec_align) - - image_target->vaddr_offset; - - grub_util_info ("locating the section %s at 0x%" - GRUB_HOST_PRIxLONG_LONG, - name, (unsigned long long) current_address); - if (!is_relocatable (image_target)) - current_address = grub_host_to_target_addr (s->sh_addr) - - image_target->link_addr; - - smd.vaddrs[i] = current_address - + image_target->vaddr_offset; - current_address += grub_host_to_target_addr (s->sh_size); - } - current_address = ALIGN_UP (current_address + image_target->vaddr_offset, - image_target->section_align) - - image_target->vaddr_offset; - layout->bss_size = current_address - layout->kernel_size; - } - else - layout->bss_size = 0; - - if (image_target->id == IMAGE_SPARC64_AOUT - || image_target->id == IMAGE_SPARC64_RAW - || image_target->id == IMAGE_UBOOT - || image_target->id == IMAGE_COREBOOT - || image_target->id == IMAGE_SPARC64_CDCORE) - layout->kernel_size = ALIGN_UP (layout->kernel_size, image_target->mod_align); - - if (is_relocatable (image_target)) - { - smd.symtab = NULL; - for (i = 0, s = smd.sections; - i < smd.num_sections; - i++, s = (Elf_Shdr *) ((char *) s + smd.section_entsize)) - if (s->sh_type == grub_host_to_target32 (SHT_SYMTAB)) - { - smd.symtab = s; - break; - } - if (! smd.symtab) - grub_util_error ("%s", _("no symbol table")); -#ifdef MKIMAGE_ELF64 - if (image_target->elf_target == EM_IA_64) - { - grub_size_t tramp; - - layout->kernel_size = ALIGN_UP (layout->kernel_size, 16); - - grub_ia64_dl_get_tramp_got_size (e, &tramp, &layout->got_size); - - layout->tramp_off = layout->kernel_size; - layout->kernel_size += ALIGN_UP (tramp, 16); - - layout->ia64jmp_off = layout->kernel_size; - layout->ia64jmpnum = SUFFIX (count_funcs) (e, smd.symtab, - image_target); - layout->kernel_size += 16 * layout->ia64jmpnum; - - layout->got_off = layout->kernel_size; - layout->kernel_size += ALIGN_UP (layout->got_size, 16); - } - if (image_target->elf_target == EM_AARCH64) - { - grub_size_t tramp; - - layout->kernel_size = ALIGN_UP (layout->kernel_size, 16); - - grub_arm64_dl_get_tramp_got_size (e, &tramp, &layout->got_size); - - layout->got_off = layout->kernel_size; - layout->kernel_size += ALIGN_UP (layout->got_size, 16); - } -#endif - } - else - { - layout->reloc_size = 0; - layout->reloc_section = NULL; - } - - out_img = xmalloc (layout->kernel_size + total_module_size); - memset (out_img, 0, layout->kernel_size + total_module_size); - - if (is_relocatable (image_target)) - { - layout->start_address = SUFFIX (relocate_symbols) (e, &smd, - (char *) out_img + layout->ia64jmp_off, - layout->ia64jmp_off + image_target->vaddr_offset, - layout->bss_start, layout->end, image_target); - - if (layout->start_address == (Elf_Addr) -1) - grub_util_error ("start symbol is not defined"); - - /* Resolve addrs in the virtual address space. */ - SUFFIX (relocate_addrs) (e, &smd, out_img, layout->tramp_off, - layout->got_off, image_target); - - make_reloc_section (e, layout, &smd, image_target); - if (image_target->id != IMAGE_EFI) - { - out_img = xrealloc (out_img, layout->kernel_size + total_module_size - + ALIGN_UP (layout->reloc_size, image_target->mod_align)); - memcpy (out_img + layout->kernel_size, layout->reloc_section, layout->reloc_size); - memset (out_img + layout->kernel_size + layout->reloc_size, 0, - total_module_size + ALIGN_UP (layout->reloc_size, image_target->mod_align) - layout->reloc_size); - layout->kernel_size += ALIGN_UP (layout->reloc_size, image_target->mod_align); - } - } - - for (i = 0, s = smd.sections; - i < smd.num_sections; - i++, s = (Elf_Shdr *) ((char *) s + smd.section_entsize)) - if (SUFFIX (is_kept_section) (s, image_target)) - { - if (grub_target_to_host32 (s->sh_type) == SHT_NOBITS) - memset (out_img + smd.addrs[i], 0, - grub_host_to_target_addr (s->sh_size)); - else - memcpy (out_img + smd.addrs[i], - kernel_img + grub_host_to_target_addr (s->sh_offset), - grub_host_to_target_addr (s->sh_size)); - } - free (kernel_img); - - free (smd.vaddrs); - smd.vaddrs = NULL; - free (smd.addrs); - smd.addrs = NULL; - - return out_img; -} diff --git a/thirdparty/grub-2.04/util/grub-mklayout.c b/thirdparty/grub-2.04/util/grub-mklayout.c deleted file mode 100644 index d171c2700..000000000 --- a/thirdparty/grub-2.04/util/grub-mklayout.c +++ /dev/null @@ -1,529 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2010 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include - -#include -#include -#include -#include - -#define _GNU_SOURCE 1 - -#include -#include -#include - -#include -#include - -#pragma GCC diagnostic ignored "-Wmissing-prototypes" -#pragma GCC diagnostic ignored "-Wmissing-declarations" - -#include -#pragma GCC diagnostic error "-Wmissing-prototypes" -#pragma GCC diagnostic error "-Wmissing-declarations" - -#include "progname.h" - -struct arguments -{ - char *input; - char *output; - int verbosity; -}; - -static struct argp_option options[] = { - {"input", 'i', N_("FILE"), 0, - N_("set input filename. Default is STDIN"), 0}, - {"output", 'o', N_("FILE"), 0, - N_("set output filename. Default is STDOUT"), 0}, - {"verbose", 'v', 0, 0, N_("print verbose messages."), 0}, - { 0, 0, 0, 0, 0, 0 } -}; - -struct console_grub_equivalence -{ - const char *layout; - grub_uint32_t grub; -}; - -static struct console_grub_equivalence console_grub_equivalences_shift[] = { - {"KP_0", '0'}, - {"KP_1", '1'}, - {"KP_2", '2'}, - {"KP_3", '3'}, - {"KP_4", '4'}, - {"KP_5", '5'}, - {"KP_6", '6'}, - {"KP_7", '7'}, - {"KP_8", '8'}, - {"KP_9", '9'}, - {"KP_Period", '.'}, - - {NULL, '\0'} -}; - -static struct console_grub_equivalence console_grub_equivalences_unshift[] = { - {"KP_0", GRUB_TERM_KEY_INSERT}, - {"KP_1", GRUB_TERM_KEY_END}, - {"KP_2", GRUB_TERM_KEY_DOWN}, - {"KP_3", GRUB_TERM_KEY_NPAGE}, - {"KP_4", GRUB_TERM_KEY_LEFT}, - {"KP_5", GRUB_TERM_KEY_CENTER}, - {"KP_6", GRUB_TERM_KEY_RIGHT}, - {"KP_7", GRUB_TERM_KEY_HOME}, - {"KP_8", GRUB_TERM_KEY_UP}, - {"KP_9", GRUB_TERM_KEY_PPAGE}, - {"KP_Period", GRUB_TERM_KEY_DC}, - - {NULL, '\0'} -}; - -static struct console_grub_equivalence console_grub_equivalences_common[] = { - {"Escape", GRUB_TERM_ESC}, - {"Tab", GRUB_TERM_TAB}, - {"Delete", GRUB_TERM_BACKSPACE}, - - {"KP_Enter", '\n'}, - {"Return", '\n'}, - - {"KP_Multiply", '*'}, - {"KP_Subtract", '-'}, - {"KP_Add", '+'}, - {"KP_Divide", '/'}, - - {"F1", GRUB_TERM_KEY_F1}, - {"F2", GRUB_TERM_KEY_F2}, - {"F3", GRUB_TERM_KEY_F3}, - {"F4", GRUB_TERM_KEY_F4}, - {"F5", GRUB_TERM_KEY_F5}, - {"F6", GRUB_TERM_KEY_F6}, - {"F7", GRUB_TERM_KEY_F7}, - {"F8", GRUB_TERM_KEY_F8}, - {"F9", GRUB_TERM_KEY_F9}, - {"F10", GRUB_TERM_KEY_F10}, - {"F11", GRUB_TERM_KEY_F11}, - {"F12", GRUB_TERM_KEY_F12}, - {"F13", GRUB_TERM_KEY_F1 | GRUB_TERM_SHIFT}, - {"F14", GRUB_TERM_KEY_F2 | GRUB_TERM_SHIFT}, - {"F15", GRUB_TERM_KEY_F3 | GRUB_TERM_SHIFT}, - {"F16", GRUB_TERM_KEY_F4 | GRUB_TERM_SHIFT}, - {"F17", GRUB_TERM_KEY_F5 | GRUB_TERM_SHIFT}, - {"F18", GRUB_TERM_KEY_F6 | GRUB_TERM_SHIFT}, - {"F19", GRUB_TERM_KEY_F7 | GRUB_TERM_SHIFT}, - {"F20", GRUB_TERM_KEY_F8 | GRUB_TERM_SHIFT}, - {"F21", GRUB_TERM_KEY_F9 | GRUB_TERM_SHIFT}, - {"F22", GRUB_TERM_KEY_F10 | GRUB_TERM_SHIFT}, - {"F23", GRUB_TERM_KEY_F11 | GRUB_TERM_SHIFT}, - {"F24", GRUB_TERM_KEY_F12 | GRUB_TERM_SHIFT}, - {"Console_13", GRUB_TERM_KEY_F1 | GRUB_TERM_ALT}, - {"Console_14", GRUB_TERM_KEY_F2 | GRUB_TERM_ALT}, - {"Console_15", GRUB_TERM_KEY_F3 | GRUB_TERM_ALT}, - {"Console_16", GRUB_TERM_KEY_F4 | GRUB_TERM_ALT}, - {"Console_17", GRUB_TERM_KEY_F5 | GRUB_TERM_ALT}, - {"Console_18", GRUB_TERM_KEY_F6 | GRUB_TERM_ALT}, - {"Console_19", GRUB_TERM_KEY_F7 | GRUB_TERM_ALT}, - {"Console_20", GRUB_TERM_KEY_F8 | GRUB_TERM_ALT}, - {"Console_21", GRUB_TERM_KEY_F9 | GRUB_TERM_ALT}, - {"Console_22", GRUB_TERM_KEY_F10 | GRUB_TERM_ALT}, - {"Console_23", GRUB_TERM_KEY_F11 | GRUB_TERM_ALT}, - {"Console_24", GRUB_TERM_KEY_F12 | GRUB_TERM_ALT}, - {"Console_25", GRUB_TERM_KEY_F1 | GRUB_TERM_SHIFT | GRUB_TERM_ALT}, - {"Console_26", GRUB_TERM_KEY_F2 | GRUB_TERM_SHIFT | GRUB_TERM_ALT}, - {"Console_27", GRUB_TERM_KEY_F3 | GRUB_TERM_SHIFT | GRUB_TERM_ALT}, - {"Console_28", GRUB_TERM_KEY_F4 | GRUB_TERM_SHIFT | GRUB_TERM_ALT}, - {"Console_29", GRUB_TERM_KEY_F5 | GRUB_TERM_SHIFT | GRUB_TERM_ALT}, - {"Console_30", GRUB_TERM_KEY_F6 | GRUB_TERM_SHIFT | GRUB_TERM_ALT}, - {"Console_31", GRUB_TERM_KEY_F7 | GRUB_TERM_SHIFT | GRUB_TERM_ALT}, - {"Console_32", GRUB_TERM_KEY_F8 | GRUB_TERM_SHIFT | GRUB_TERM_ALT}, - {"Console_33", GRUB_TERM_KEY_F9 | GRUB_TERM_SHIFT | GRUB_TERM_ALT}, - {"Console_34", GRUB_TERM_KEY_F10 | GRUB_TERM_SHIFT | GRUB_TERM_ALT}, - {"Console_35", GRUB_TERM_KEY_F11 | GRUB_TERM_SHIFT | GRUB_TERM_ALT}, - {"Console_36", GRUB_TERM_KEY_F12 | GRUB_TERM_SHIFT | GRUB_TERM_ALT}, - - {"Insert", GRUB_TERM_KEY_INSERT}, - {"Down", GRUB_TERM_KEY_DOWN}, - {"Up", GRUB_TERM_KEY_UP}, - {"Home", GRUB_TERM_KEY_HOME}, - {"End", GRUB_TERM_KEY_END}, - {"Right", GRUB_TERM_KEY_RIGHT}, - {"Left", GRUB_TERM_KEY_LEFT}, - {"Next", GRUB_TERM_KEY_NPAGE}, - {"Prior", GRUB_TERM_KEY_PPAGE}, - {"Remove", GRUB_TERM_KEY_DC}, - {"VoidSymbol", 0}, - - /* "Undead" keys since no dead key support in GRUB. */ - {"dead_acute", '\''}, - {"dead_circumflex", '^'}, - {"dead_grave", '`'}, - {"dead_tilde", '~'}, - {"dead_diaeresis", '"'}, - - /* Following ones don't provide any useful symbols for shell. */ - {"dead_cedilla", 0}, - {"dead_ogonek", 0}, - {"dead_caron", 0}, - {"dead_breve", 0}, - {"dead_doubleacute", 0}, - - /* Unused in GRUB. */ - {"Pause", 0}, - {"Scroll_Forward", 0}, - {"Scroll_Backward", 0}, - {"Hex_0", 0}, - {"Hex_1", 0}, - {"Hex_2", 0}, - {"Hex_3", 0}, - {"Hex_4", 0}, - {"Hex_5", 0}, - {"Hex_6", 0}, - {"Hex_7", 0}, - {"Hex_8", 0}, - {"Hex_9", 0}, - {"Hex_A", 0}, - {"Hex_B", 0}, - {"Hex_C", 0}, - {"Hex_D", 0}, - {"Hex_E", 0}, - {"Hex_F", 0}, - {"Scroll_Lock", 0}, - {"Show_Memory", 0}, - {"Show_Registers", 0}, - {"Control_backslash", 0}, - {"Compose", 0}, - - {NULL, '\0'} -}; - -static grub_uint8_t linux_to_usb_map[128] = { - /* 0x00 */ 0 /* Unused */, GRUB_KEYBOARD_KEY_ESCAPE, - /* 0x02 */ GRUB_KEYBOARD_KEY_1, GRUB_KEYBOARD_KEY_2, - /* 0x04 */ GRUB_KEYBOARD_KEY_3, GRUB_KEYBOARD_KEY_4, - /* 0x06 */ GRUB_KEYBOARD_KEY_5, GRUB_KEYBOARD_KEY_6, - /* 0x08 */ GRUB_KEYBOARD_KEY_7, GRUB_KEYBOARD_KEY_8, - /* 0x0a */ GRUB_KEYBOARD_KEY_9, GRUB_KEYBOARD_KEY_0, - /* 0x0c */ GRUB_KEYBOARD_KEY_DASH, GRUB_KEYBOARD_KEY_EQUAL, - /* 0x0e */ GRUB_KEYBOARD_KEY_BACKSPACE, GRUB_KEYBOARD_KEY_TAB, - /* 0x10 */ GRUB_KEYBOARD_KEY_Q, GRUB_KEYBOARD_KEY_W, - /* 0x12 */ GRUB_KEYBOARD_KEY_E, GRUB_KEYBOARD_KEY_R, - /* 0x14 */ GRUB_KEYBOARD_KEY_T, GRUB_KEYBOARD_KEY_Y, - /* 0x16 */ GRUB_KEYBOARD_KEY_U, GRUB_KEYBOARD_KEY_I, - /* 0x18 */ GRUB_KEYBOARD_KEY_O, GRUB_KEYBOARD_KEY_P, - /* 0x1a */ GRUB_KEYBOARD_KEY_LBRACKET, GRUB_KEYBOARD_KEY_RBRACKET, - /* 0x1c */ GRUB_KEYBOARD_KEY_ENTER, GRUB_KEYBOARD_KEY_LEFT_CTRL, - /* 0x1e */ GRUB_KEYBOARD_KEY_A, GRUB_KEYBOARD_KEY_S, - /* 0x20 */ GRUB_KEYBOARD_KEY_D, GRUB_KEYBOARD_KEY_F, - /* 0x22 */ GRUB_KEYBOARD_KEY_G, GRUB_KEYBOARD_KEY_H, - /* 0x24 */ GRUB_KEYBOARD_KEY_J, GRUB_KEYBOARD_KEY_K, - /* 0x26 */ GRUB_KEYBOARD_KEY_L, GRUB_KEYBOARD_KEY_SEMICOLON, - /* 0x28 */ GRUB_KEYBOARD_KEY_DQUOTE, GRUB_KEYBOARD_KEY_RQUOTE, - /* 0x2a */ GRUB_KEYBOARD_KEY_LEFT_SHIFT, GRUB_KEYBOARD_KEY_BACKSLASH, - /* 0x2c */ GRUB_KEYBOARD_KEY_Z, GRUB_KEYBOARD_KEY_X, - /* 0x2e */ GRUB_KEYBOARD_KEY_C, GRUB_KEYBOARD_KEY_V, - /* 0x30 */ GRUB_KEYBOARD_KEY_B, GRUB_KEYBOARD_KEY_N, - /* 0x32 */ GRUB_KEYBOARD_KEY_M, GRUB_KEYBOARD_KEY_COMMA, - /* 0x34 */ GRUB_KEYBOARD_KEY_DOT, GRUB_KEYBOARD_KEY_SLASH, - /* 0x36 */ GRUB_KEYBOARD_KEY_RIGHT_SHIFT, GRUB_KEYBOARD_KEY_NUMMUL, - /* 0x38 */ GRUB_KEYBOARD_KEY_LEFT_ALT, GRUB_KEYBOARD_KEY_SPACE, - /* 0x3a */ GRUB_KEYBOARD_KEY_CAPS_LOCK, GRUB_KEYBOARD_KEY_F1, - /* 0x3c */ GRUB_KEYBOARD_KEY_F2, GRUB_KEYBOARD_KEY_F3, - /* 0x3e */ GRUB_KEYBOARD_KEY_F4, GRUB_KEYBOARD_KEY_F5, - /* 0x40 */ GRUB_KEYBOARD_KEY_F6, GRUB_KEYBOARD_KEY_F7, - /* 0x42 */ GRUB_KEYBOARD_KEY_F8, GRUB_KEYBOARD_KEY_F9, - /* 0x44 */ GRUB_KEYBOARD_KEY_F10, GRUB_KEYBOARD_KEY_NUM_LOCK, - /* 0x46 */ GRUB_KEYBOARD_KEY_SCROLL_LOCK, GRUB_KEYBOARD_KEY_NUM7, - /* 0x48 */ GRUB_KEYBOARD_KEY_NUM8, GRUB_KEYBOARD_KEY_NUM9, - /* 0x4a */ GRUB_KEYBOARD_KEY_NUMMINUS, GRUB_KEYBOARD_KEY_NUM4, - /* 0x4c */ GRUB_KEYBOARD_KEY_NUM5, GRUB_KEYBOARD_KEY_NUM6, - /* 0x4e */ GRUB_KEYBOARD_KEY_NUMPLUS, GRUB_KEYBOARD_KEY_NUM1, - /* 0x50 */ GRUB_KEYBOARD_KEY_NUM2, GRUB_KEYBOARD_KEY_NUM3, - /* 0x52 */ GRUB_KEYBOARD_KEY_NUMDOT, GRUB_KEYBOARD_KEY_NUMDOT, - /* 0x54 */ 0, 0, - /* 0x56 */ GRUB_KEYBOARD_KEY_102ND, GRUB_KEYBOARD_KEY_F11, - /* 0x58 */ GRUB_KEYBOARD_KEY_F12, GRUB_KEYBOARD_KEY_JP_RO, - /* 0x5a */ 0, 0, - /* 0x5c */ 0, 0, - /* 0x5e */ 0, 0, - /* 0x60 */ GRUB_KEYBOARD_KEY_NUMENTER, GRUB_KEYBOARD_KEY_RIGHT_CTRL, - /* 0x62 */ GRUB_KEYBOARD_KEY_NUMSLASH, 0, - /* 0x64 */ GRUB_KEYBOARD_KEY_RIGHT_ALT, 0, - /* 0x66 */ GRUB_KEYBOARD_KEY_HOME, GRUB_KEYBOARD_KEY_UP, - /* 0x68 */ GRUB_KEYBOARD_KEY_PPAGE, GRUB_KEYBOARD_KEY_LEFT, - /* 0x6a */ GRUB_KEYBOARD_KEY_RIGHT, GRUB_KEYBOARD_KEY_END, - /* 0x6c */ GRUB_KEYBOARD_KEY_DOWN, GRUB_KEYBOARD_KEY_NPAGE, - /* 0x6e */ GRUB_KEYBOARD_KEY_INSERT, GRUB_KEYBOARD_KEY_DELETE, - /* 0x70 */ 0, 0, - /* 0x72 */ 0, GRUB_KEYBOARD_KEY_JP_RO, - /* 0x74 */ 0, 0, - /* 0x76 */ 0, 0, - /* 0x78 */ 0, GRUB_KEYBOARD_KEY_KPCOMMA, - /* 0x7a */ 0, 0, - /* 0x7c */ GRUB_KEYBOARD_KEY_JP_YEN, -}; - -static void -add_special_keys (struct grub_keyboard_layout *layout) -{ - (void) layout; -} - -static unsigned -lookup (char *code, int shift) -{ - int i; - struct console_grub_equivalence *pr; - - if (shift) - pr = console_grub_equivalences_shift; - else - pr = console_grub_equivalences_unshift; - - for (i = 0; pr[i].layout != NULL; i++) - if (strcmp (code, pr[i].layout) == 0) - return pr[i].grub; - - for (i = 0; console_grub_equivalences_common[i].layout != NULL; i++) - if (strcmp (code, console_grub_equivalences_common[i].layout) == 0) - return console_grub_equivalences_common[i].grub; - - /* TRANSLATORS: scan identifier is keyboard key symbolic name. */ - fprintf (stderr, _("Unknown keyboard scan identifier %s\n"), code); - - return '\0'; -} - -static unsigned int -get_grub_code (char *layout_code, int shift) -{ - unsigned int code; - - if (strncmp (layout_code, "U+", sizeof ("U+") - 1) == 0) - sscanf (layout_code, "U+%x", &code); - else if (strncmp (layout_code, "+U+", sizeof ("+U+") - 1) == 0) - sscanf (layout_code, "+U+%x", &code); - else - code = lookup (layout_code, shift); - return code; -} - -static void -write_file (FILE *out, const char *fname, struct grub_keyboard_layout *layout) -{ - grub_uint32_t version; - unsigned i; - - version = grub_cpu_to_le32_compile_time (GRUB_KEYBOARD_LAYOUTS_VERSION); - - for (i = 0; i < ARRAY_SIZE (layout->keyboard_map); i++) - layout->keyboard_map[i] = grub_cpu_to_le32(layout->keyboard_map[i]); - - for (i = 0; i < ARRAY_SIZE (layout->keyboard_map_shift); i++) - layout->keyboard_map_shift[i] - = grub_cpu_to_le32(layout->keyboard_map_shift[i]); - - for (i = 0; i < ARRAY_SIZE (layout->keyboard_map_l3); i++) - layout->keyboard_map_l3[i] - = grub_cpu_to_le32(layout->keyboard_map_l3[i]); - - for (i = 0; i < ARRAY_SIZE (layout->keyboard_map_shift_l3); i++) - layout->keyboard_map_shift_l3[i] - = grub_cpu_to_le32(layout->keyboard_map_shift_l3[i]); - - if (fwrite (GRUB_KEYBOARD_LAYOUTS_FILEMAGIC, 1, - GRUB_KEYBOARD_LAYOUTS_FILEMAGIC_SIZE, out) - != GRUB_KEYBOARD_LAYOUTS_FILEMAGIC_SIZE - || fwrite (&version, sizeof (version), 1, out) != 1 - || fwrite (layout, 1, sizeof (*layout), out) != sizeof (*layout)) - { - if (fname) - grub_util_error ("cannot write to `%s': %s", fname, strerror (errno)); - else - grub_util_error ("cannot write to the stdout: %s", strerror (errno)); - } -} - -static void -write_keymaps (FILE *in, FILE *out, const char *out_filename) -{ - struct grub_keyboard_layout layout; - char line[2048]; - int ok; - - memset (&layout, 0, sizeof (layout)); - - /* Process the ckbcomp output and prepare the layouts. */ - ok = 0; - while (fgets (line, sizeof (line), in)) - { - if (strncmp (line, "keycode", sizeof ("keycode") - 1) == 0) - { - unsigned keycode_linux; - unsigned keycode_usb; - char normal[64]; - char shift[64]; - char normalalt[64]; - char shiftalt[64]; - - sscanf (line, "keycode %u = %60s %60s %60s %60s", &keycode_linux, - normal, shift, normalalt, shiftalt); - - if (keycode_linux >= ARRAY_SIZE (linux_to_usb_map)) - { - /* TRANSLATORS: scan code is keyboard key numeric identifier. */ - fprintf (stderr, _("Unknown keyboard scan code 0x%02x\n"), keycode_linux); - continue; - } - - /* Not used. */ - if (keycode_linux == 0x77 /* Pause */ - /* Some obscure keys */ - || keycode_linux == 0x63 || keycode_linux == 0x7d - || keycode_linux == 0x7e) - continue; - - /* Not remappable. */ - if (keycode_linux == 0x1d /* Left CTRL */ - || keycode_linux == 0x61 /* Right CTRL */ - || keycode_linux == 0x2a /* Left Shift. */ - || keycode_linux == 0x36 /* Right Shift. */ - || keycode_linux == 0x38 /* Left ALT. */ - || keycode_linux == 0x64 /* Right ALT. */ - || keycode_linux == 0x3a /* CapsLock. */ - || keycode_linux == 0x45 /* NumLock. */ - || keycode_linux == 0x46 /* ScrollLock. */) - continue; - - keycode_usb = linux_to_usb_map[keycode_linux]; - if (keycode_usb == 0 - || keycode_usb >= GRUB_KEYBOARD_LAYOUTS_ARRAY_SIZE) - { - /* TRANSLATORS: scan code is keyboard key numeric identifier. */ - fprintf (stderr, _("Unknown keyboard scan code 0x%02x\n"), keycode_linux); - continue; - } - if (keycode_usb < GRUB_KEYBOARD_LAYOUTS_ARRAY_SIZE) - { - layout.keyboard_map[keycode_usb] = get_grub_code (normal, 0); - layout.keyboard_map_shift[keycode_usb] = get_grub_code (shift, 1); - layout.keyboard_map_l3[keycode_usb] - = get_grub_code (normalalt, 0); - layout.keyboard_map_shift_l3[keycode_usb] - = get_grub_code (shiftalt, 1); - ok = 1; - } - } - } - - if (ok == 0) - { - /* TRANSLATORS: this error is triggered when input doesn't contain any - key descriptions. */ - fprintf (stderr, "%s", _("ERROR: no valid keyboard layout found. Check the input.\n")); - exit (1); - } - - add_special_keys (&layout); - - write_file (out, out_filename, &layout); -} - -static error_t -argp_parser (int key, char *arg, struct argp_state *state) -{ - /* Get the input argument from argp_parse, which we - know is a pointer to our arguments structure. */ - struct arguments *arguments = state->input; - - switch (key) - { - case 'i': - arguments->input = xstrdup (arg); - break; - - case 'o': - arguments->output = xstrdup (arg); - break; - - case 'v': - arguments->verbosity++; - break; - - default: - return ARGP_ERR_UNKNOWN; - } - - return 0; -} - -static struct argp argp = { - options, argp_parser, N_("[OPTIONS]"), - /* TRANSLATORS: "one" is a shortcut for "keyboard layout". */ - N_("Generate GRUB keyboard layout from Linux console one."), - NULL, NULL, NULL -}; - -int -main (int argc, char *argv[]) -{ - FILE *in, *out; - struct arguments arguments; - - grub_util_host_init (&argc, &argv); - - /* Check for options. */ - memset (&arguments, 0, sizeof (struct arguments)); - if (argp_parse (&argp, argc, argv, 0, 0, &arguments) != 0) - { - fprintf (stderr, "%s", _("Error in parsing command line arguments\n")); - exit(1); - } - - if (arguments.input) - in = grub_util_fopen (arguments.input, "r"); - else - in = stdin; - - if (!in) - grub_util_error (_("cannot open `%s': %s"), arguments.input ? : "stdin", - strerror (errno)); - - if (arguments.output) - out = grub_util_fopen (arguments.output, "wb"); - else - out = stdout; - - if (!out) - { - if (in != stdin) - fclose (in); - grub_util_error (_("cannot open `%s': %s"), arguments.output ? : "stdout", - strerror (errno)); - } - - write_keymaps (in, out, arguments.output); - - if (in != stdin) - fclose (in); - - if (out != stdout) - fclose (out); - - return 0; -} diff --git a/thirdparty/grub-2.04/util/grub-mknetdir.c b/thirdparty/grub-2.04/util/grub-mknetdir.c deleted file mode 100644 index 602574d52..000000000 --- a/thirdparty/grub-2.04/util/grub-mknetdir.c +++ /dev/null @@ -1,224 +0,0 @@ -/* - * Copyright (C) 1999,2000,2001,2002,2003,2004,2005,2006,2007,2008,2009,2010,2013 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . -*/ - -#include - -#include -#include -#include - -#include -#include - -#pragma GCC diagnostic ignored "-Wmissing-prototypes" -#pragma GCC diagnostic ignored "-Wmissing-declarations" -#include -#pragma GCC diagnostic error "-Wmissing-prototypes" -#pragma GCC diagnostic error "-Wmissing-declarations" - -static char *rootdir = NULL, *subdir = NULL; -static char *debug_image = NULL; - -enum - { - OPTION_NET_DIRECTORY = 0x301, - OPTION_SUBDIR, - OPTION_DEBUG, - OPTION_DEBUG_IMAGE - }; - -static struct argp_option options[] = { - GRUB_INSTALL_OPTIONS, - {"net-directory", OPTION_NET_DIRECTORY, N_("DIR"), - 0, N_("root directory of TFTP server"), 2}, - {"subdir", OPTION_SUBDIR, N_("DIR"), - 0, N_("relative subdirectory on network server"), 2}, - {"debug", OPTION_DEBUG, 0, OPTION_HIDDEN, 0, 2}, - {"debug-image", OPTION_DEBUG_IMAGE, N_("STRING"), OPTION_HIDDEN, 0, 2}, - {0, 0, 0, 0, 0, 0} -}; - -static error_t -argp_parser (int key, char *arg, struct argp_state *state) -{ - if (grub_install_parse (key, arg)) - return 0; - switch (key) - { - case OPTION_NET_DIRECTORY: - free (rootdir); - rootdir = xstrdup (arg); - return 0; - case OPTION_SUBDIR: - free (subdir); - subdir = xstrdup (arg); - return 0; - /* This is an undocumented feature... */ - case OPTION_DEBUG: - verbosity++; - return 0; - case OPTION_DEBUG_IMAGE: - free (debug_image); - debug_image = xstrdup (arg); - return 0; - - case ARGP_KEY_ARG: - default: - return ARGP_ERR_UNKNOWN; - } -} - - -struct argp argp = { - options, argp_parser, NULL, - "\v"N_("Prepares GRUB network boot images at net_directory/subdir " - "assuming net_directory being TFTP root."), - NULL, grub_install_help_filter, NULL -}; - -static char *base; - -static const struct -{ - const char *mkimage_target; - const char *netmodule; - const char *ext; -} targets[GRUB_INSTALL_PLATFORM_MAX] = - { - [GRUB_INSTALL_PLATFORM_I386_PC] = { "i386-pc-pxe", "pxe", ".0" }, - [GRUB_INSTALL_PLATFORM_SPARC64_IEEE1275] = { "sparc64-ieee1275-aout", "ofnet", ".img" }, - [GRUB_INSTALL_PLATFORM_I386_IEEE1275] = { "i386-ieee1275", "ofnet", ".elf" }, - [GRUB_INSTALL_PLATFORM_POWERPC_IEEE1275] = { "powerpc-ieee1275", "ofnet", ".elf" }, - [GRUB_INSTALL_PLATFORM_I386_EFI] = { "i386-efi", "efinet", ".efi" }, - [GRUB_INSTALL_PLATFORM_X86_64_EFI] = { "x86_64-efi", "efinet", ".efi" }, - [GRUB_INSTALL_PLATFORM_IA64_EFI] = { "ia64-efi", "efinet", ".efi" }, - [GRUB_INSTALL_PLATFORM_ARM_EFI] = { "arm-efi", "efinet", ".efi" }, - [GRUB_INSTALL_PLATFORM_ARM64_EFI] = { "arm64-efi", "efinet", ".efi" }, - [GRUB_INSTALL_PLATFORM_RISCV32_EFI] = { "riscv32-efi", "efinet", ".efi" }, - [GRUB_INSTALL_PLATFORM_RISCV64_EFI] = { "riscv64-efi", "efinet", ".efi" }, - }; - -static void -process_input_dir (const char *input_dir, enum grub_install_plat platform) -{ - char *platsub = grub_install_get_platform_name (platform); - char *grubdir = grub_util_path_concat (3, rootdir, subdir, platsub); - char *load_cfg = grub_util_path_concat (2, grubdir, "load.cfg"); - char *prefix; - char *output; - char *grub_cfg; - FILE *cfg; - - grub_install_copy_files (input_dir, base, platform); - grub_util_unlink (load_cfg); - - if (debug_image) - { - FILE *f = grub_util_fopen (load_cfg, "wb"); - if (!f) - grub_util_error (_("cannot open `%s': %s"), load_cfg, - strerror (errno)); - fprintf (f, "set debug='%s'\n", debug_image); - fclose (f); - } - else - { - free (load_cfg); - load_cfg = 0; - } - - prefix = xasprintf ("/%s", subdir); - if (!targets[platform].mkimage_target) - grub_util_error (_("unsupported platform %s"), platsub); - - grub_cfg = grub_util_path_concat (2, grubdir, "grub.cfg"); - cfg = grub_util_fopen (grub_cfg, "wb"); - if (!cfg) - grub_util_error (_("cannot open `%s': %s"), grub_cfg, - strerror (errno)); - fprintf (cfg, "source %s/grub.cfg", subdir); - fclose (cfg); - - grub_install_push_module (targets[platform].netmodule); - - output = grub_util_path_concat_ext (2, grubdir, "core", targets[platform].ext); - grub_install_make_image_wrap (input_dir, prefix, output, - 0, load_cfg, - targets[platform].mkimage_target, 0); - grub_install_pop_module (); - - /* TRANSLATORS: First %s is replaced by platform name. Second one by filename. */ - printf (_("Netboot directory for %s created. Configure your DHCP server to point to %s\n"), - platsub, output); - - free (platsub); - free (output); - free (prefix); - free (grub_cfg); - free (grubdir); -} - - -int -main (int argc, char *argv[]) -{ - const char *pkglibdir; - - grub_util_host_init (&argc, &argv); - grub_util_disable_fd_syncs (); - rootdir = xstrdup ("/srv/tftp"); - pkglibdir = grub_util_get_pkglibdir (); - - subdir = grub_util_path_concat (2, GRUB_BOOT_DIR_NAME, GRUB_DIR_NAME); - - argp_parse (&argp, argc, argv, 0, 0, 0); - - base = grub_util_path_concat (2, rootdir, subdir); - /* Create the GRUB directory if it is not present. */ - - grub_install_mkdir_p (base); - - grub_install_push_module ("tftp"); - - if (!grub_install_source_directory) - { - enum grub_install_plat plat; - - for (plat = 0; plat < GRUB_INSTALL_PLATFORM_MAX; plat++) - if (targets[plat].mkimage_target) - { - char *platdir = grub_util_path_concat (2, pkglibdir, - grub_install_get_platform_name (plat)); - - grub_util_info ("Looking for `%s'", platdir); - - if (!grub_util_is_directory (platdir)) - { - free (platdir); - continue; - } - process_input_dir (platdir, plat); - } - } - else - { - enum grub_install_plat plat; - plat = grub_install_get_target (grub_install_source_directory); - process_input_dir (grub_install_source_directory, plat); - } - return 0; -} diff --git a/thirdparty/grub-2.04/util/grub-mkpasswd-pbkdf2.c b/thirdparty/grub-2.04/util/grub-mkpasswd-pbkdf2.c deleted file mode 100644 index 5805f3c10..000000000 --- a/thirdparty/grub-2.04/util/grub-mkpasswd-pbkdf2.c +++ /dev/null @@ -1,210 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 1992-1999,2001,2003,2004,2005,2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include - -#include -#include -#include -#include -#include -#include -#include - -#include -#include -#include -#include - -#define _GNU_SOURCE 1 - -#pragma GCC diagnostic ignored "-Wmissing-prototypes" -#pragma GCC diagnostic ignored "-Wmissing-declarations" -#include -#pragma GCC diagnostic error "-Wmissing-prototypes" -#pragma GCC diagnostic error "-Wmissing-declarations" - - -#include "progname.h" - -static struct argp_option options[] = { - {"iteration-count", 'c', N_("NUM"), 0, N_("Number of PBKDF2 iterations"), 0}, - {"buflen", 'l', N_("NUM"), 0, N_("Length of generated hash"), 0}, - {"salt", 's', N_("NUM"), 0, N_("Length of salt"), 0}, - { 0, 0, 0, 0, 0, 0 } -}; - -struct arguments -{ - unsigned int count; - unsigned int buflen; - unsigned int saltlen; -}; - -static error_t -argp_parser (int key, char *arg, struct argp_state *state) -{ - /* Get the input argument from argp_parse, which we - know is a pointer to our arguments structure. */ - struct arguments *arguments = state->input; - - switch (key) - { - case 'c': - arguments->count = strtoul (arg, NULL, 0); - break; - - case 'l': - arguments->buflen = strtoul (arg, NULL, 0); - break; - - case 's': - arguments->saltlen = strtoul (arg, NULL, 0); - break; - default: - return ARGP_ERR_UNKNOWN; - } - return 0; -} - -static struct argp argp = { - options, argp_parser, N_("[OPTIONS]"), - N_("Generate PBKDF2 password hash."), - NULL, NULL, NULL -}; - - -static void -hexify (char *hex, grub_uint8_t *bin, grub_size_t n) -{ - while (n--) - { - if (((*bin & 0xf0) >> 4) < 10) - *hex = ((*bin & 0xf0) >> 4) + '0'; - else - *hex = ((*bin & 0xf0) >> 4) + 'A' - 10; - hex++; - - if ((*bin & 0xf) < 10) - *hex = (*bin & 0xf) + '0'; - else - *hex = (*bin & 0xf) + 'A' - 10; - hex++; - bin++; - } - *hex = 0; -} - -int -main (int argc, char *argv[]) -{ - struct arguments arguments = { - .count = 10000, - .buflen = 64, - .saltlen = 64 - }; - char *result, *ptr; - gcry_err_code_t gcry_err; - grub_uint8_t *buf, *salt; - char pass1[GRUB_AUTH_MAX_PASSLEN]; - char pass2[GRUB_AUTH_MAX_PASSLEN]; - - grub_util_host_init (&argc, &argv); - - /* Check for options. */ - if (argp_parse (&argp, argc, argv, 0, 0, &arguments) != 0) - { - fprintf (stderr, "%s", _("Error in parsing command line arguments\n")); - exit(1); - } - - buf = xmalloc (arguments.buflen); - salt = xmalloc (arguments.saltlen); - - printf ("%s", _("Enter password: ")); - if (!grub_password_get (pass1, GRUB_AUTH_MAX_PASSLEN)) - { - free (buf); - free (salt); - grub_util_error ("%s", _("failure to read password")); - } - printf ("%s", _("Reenter password: ")); - if (!grub_password_get (pass2, GRUB_AUTH_MAX_PASSLEN)) - { - free (buf); - free (salt); - grub_util_error ("%s", _("failure to read password")); - } - - if (strcmp (pass1, pass2) != 0) - { - memset (pass1, 0, sizeof (pass1)); - memset (pass2, 0, sizeof (pass2)); - free (buf); - free (salt); - grub_util_error ("%s", _("passwords don't match")); - } - memset (pass2, 0, sizeof (pass2)); - - if (grub_get_random (salt, arguments.saltlen)) - { - memset (pass1, 0, sizeof (pass1)); - free (buf); - free (salt); - grub_util_error ("%s", _("couldn't retrieve random data for salt")); - } - - gcry_err = grub_crypto_pbkdf2 (GRUB_MD_SHA512, - (grub_uint8_t *) pass1, strlen (pass1), - salt, arguments.saltlen, - arguments.count, buf, arguments.buflen); - memset (pass1, 0, sizeof (pass1)); - - if (gcry_err) - { - memset (buf, 0, arguments.buflen); - free (buf); - memset (salt, 0, arguments.saltlen); - free (salt); - grub_util_error (_("cryptographic error number %d"), gcry_err); - } - - result = xmalloc (sizeof ("grub.pbkdf2.sha512.XXXXXXXXXXXXXXXXXXX.S.S") - + arguments.buflen * 2 + arguments.saltlen * 2); - ptr = result; - memcpy (ptr, "grub.pbkdf2.sha512.", sizeof ("grub.pbkdf2.sha512.") - 1); - ptr += sizeof ("grub.pbkdf2.sha512.") - 1; - - grub_snprintf (ptr, sizeof ("XXXXXXXXXXXXXXXXXXX"), "%d", arguments.count); - ptr += strlen (ptr); - *ptr++ = '.'; - hexify (ptr, salt, arguments.saltlen); - ptr += arguments.saltlen * 2; - *ptr++ = '.'; - hexify (ptr, buf, arguments.buflen); - ptr += arguments.buflen * 2; - *ptr = '\0'; - - printf (_("PBKDF2 hash of your password is %s\n"), result); - memset (buf, 0, arguments.buflen); - free (buf); - memset (salt, 0, arguments.saltlen); - free (salt); - - return 0; -} diff --git a/thirdparty/grub-2.04/util/grub-mkrelpath.c b/thirdparty/grub-2.04/util/grub-mkrelpath.c deleted file mode 100644 index 47a241a39..000000000 --- a/thirdparty/grub-2.04/util/grub-mkrelpath.c +++ /dev/null @@ -1,105 +0,0 @@ -/* grub-mkrelpath.c - make a system path relative to its root */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2009,2010 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include - -#include -#include -#include -#include -#include - -#define _GNU_SOURCE 1 -#pragma GCC diagnostic ignored "-Wmissing-prototypes" -#pragma GCC diagnostic ignored "-Wmissing-declarations" -#include -#pragma GCC diagnostic error "-Wmissing-prototypes" -#pragma GCC diagnostic error "-Wmissing-declarations" - -#include "progname.h" - -struct arguments -{ - char *pathname; -}; - -static struct argp_option options[] = { - { 0, 0, 0, 0, 0, 0 } -}; - -static error_t -argp_parser (int key, char *arg, struct argp_state *state) -{ - /* Get the input argument from argp_parse, which we - know is a pointer to our arguments structure. */ - struct arguments *arguments = state->input; - - switch (key) - { - case ARGP_KEY_ARG: - if (state->arg_num == 0) - arguments->pathname = xstrdup (arg); - else - { - /* Too many arguments. */ - fprintf (stderr, _("Unknown extra argument `%s'."), arg); - fprintf (stderr, "\n"); - argp_usage (state); - } - break; - case ARGP_KEY_NO_ARGS: - fprintf (stderr, "%s", _("No path is specified.\n")); - argp_usage (state); - exit (1); - break; - default: - return ARGP_ERR_UNKNOWN; - } - return 0; -} - -static struct argp argp = { - options, argp_parser, N_("PATH"), - N_("Transform a system filename into GRUB one."), - NULL, NULL, NULL -}; - -int -main (int argc, char *argv[]) -{ - char *relpath; - struct arguments arguments; - - grub_util_host_init (&argc, &argv); - - memset (&arguments, 0, sizeof (struct arguments)); - - /* Check for options. */ - if (argp_parse (&argp, argc, argv, 0, 0, &arguments) != 0) - { - fprintf (stderr, "%s", _("Error in parsing command line arguments\n")); - exit(1); - } - - relpath = grub_make_system_path_relative_to_its_root (arguments.pathname); - printf ("%s\n", relpath); - free (relpath); - - return 0; -} diff --git a/thirdparty/grub-2.04/util/grub-mkrescue.c b/thirdparty/grub-2.04/util/grub-mkrescue.c deleted file mode 100644 index ce2cbc4f1..000000000 --- a/thirdparty/grub-2.04/util/grub-mkrescue.c +++ /dev/null @@ -1,996 +0,0 @@ -/* - * Make GRUB rescue image - * - * GRUB -- GRand Unified Bootloader - * Copyright (C) 1999,2000,2001,2002,2003,2004,2005,2006,2007,2008,2009,2010 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include - -#include -#include -#include -#include -#include -#pragma GCC diagnostic ignored "-Wmissing-prototypes" -#pragma GCC diagnostic ignored "-Wmissing-declarations" -#include -#pragma GCC diagnostic error "-Wmissing-prototypes" -#pragma GCC diagnostic error "-Wmissing-declarations" - -#include -#include - -#include -#include - -static char *source_dirs[GRUB_INSTALL_PLATFORM_MAX]; -static char *rom_directory; -static char *label_font; -static char *label_color; -static char *label_bgcolor; -static char *product_name; -static char *product_version; -static char *output_image; -static char *xorriso; -static char *boot_grub; -static int xorriso_argc; -static int xorriso_arg_alloc; -static char **xorriso_argv; -static char *iso_uuid; -static char *iso9660_dir; - -static void -xorriso_push (const char *val) -{ - if (xorriso_arg_alloc <= xorriso_argc + 1) - { - xorriso_arg_alloc = 2 * (4 + xorriso_argc); - xorriso_argv = xrealloc (xorriso_argv, - sizeof (xorriso_argv[0]) - * xorriso_arg_alloc); - } - xorriso_argv[xorriso_argc++] = xstrdup (val); -} - -static void -xorriso_link (const char *from, const char *to) -{ - char *tof = grub_util_path_concat (2, iso9660_dir, to); - char *val = xasprintf ("%s=%s", from, tof); - xorriso_push (val); - free (val); - free (tof); -} - -enum - { - OPTION_OUTPUT = 'o', - OPTION_ROM_DIRECTORY = 0x301, - OPTION_XORRISO, - OPTION_GLUE_EFI, - OPTION_RENDER_LABEL, - OPTION_LABEL_FONT, - OPTION_LABEL_COLOR, - OPTION_LABEL_BGCOLOR, - OPTION_PRODUCT_NAME, - OPTION_PRODUCT_VERSION, - OPTION_SPARC_BOOT, - OPTION_ARCS_BOOT - }; - -static struct argp_option options[] = { - GRUB_INSTALL_OPTIONS, - {"output", 'o', N_("FILE"), - 0, N_("save output in FILE [required]"), 2}, - {"rom-directory", OPTION_ROM_DIRECTORY, N_("DIR"), - 0, N_("save ROM images in DIR [optional]"), 2}, - {"xorriso", OPTION_XORRISO, N_("FILE"), - /* TRANSLATORS: xorriso is a program for creating ISOs and burning CDs. */ - 0, N_("use FILE as xorriso [optional]"), 2}, - {"grub-glue-efi", OPTION_GLUE_EFI, N_("FILE"), OPTION_HIDDEN, 0, 2}, - {"grub-render-label", OPTION_RENDER_LABEL, N_("FILE"), OPTION_HIDDEN, 0, 2}, - {"label-font", OPTION_LABEL_FONT, N_("FILE"), 0, N_("use FILE as font for label"), 2}, - {"label-color", OPTION_LABEL_COLOR, N_("COLOR"), 0, N_("use COLOR for label"), 2}, - {"label-bgcolor", OPTION_LABEL_BGCOLOR, N_("COLOR"), 0, N_("use COLOR for label background"), 2}, - {"product-name", OPTION_PRODUCT_NAME, N_("STRING"), 0, N_("use STRING as product name"), 2}, - {"product-version", OPTION_PRODUCT_VERSION, N_("STRING"), 0, N_("use STRING as product version"), 2}, - {"sparc-boot", OPTION_SPARC_BOOT, 0, 0, N_("enable sparc boot. Disables HFS+, APM, ARCS and boot as disk image for i386-pc"), 2}, - {"arcs-boot", OPTION_ARCS_BOOT, 0, 0, N_("enable ARCS (big-endian mips machines, mostly SGI) boot. Disables HFS+, APM, sparc64 and boot as disk image for i386-pc"), 2}, - {0, 0, 0, 0, 0, 0} -}; - -#pragma GCC diagnostic ignored "-Wformat-nonliteral" - -static char * -help_filter (int key, const char *text, void *input __attribute__ ((unused))) -{ - switch (key) - { - case ARGP_KEY_HELP_PRE_DOC: - /* TRANSLATORS: it generates one single image which is bootable through any method. */ - return strdup (_("Make GRUB CD-ROM, disk, pendrive and floppy bootable image.")); - case ARGP_KEY_HELP_POST_DOC: - { - char *p1, *out; - - p1 = xasprintf (_("Generates a bootable CD/USB/floppy image. Arguments other than options to this program" - " are passed to xorriso, and indicate source files, source directories, or any of the " - "mkisofs options listed by the output of `%s'."), "xorriso -as mkisofs -help"); - out = xasprintf ("%s\n\n%s\n\n%s", p1, - _("Option -- switches to native xorriso command mode."), - _("Mail xorriso support requests to .")); - free (p1); - return out; - } - default: - return grub_install_help_filter (key, text, input); - } -} - -#pragma GCC diagnostic error "-Wformat-nonliteral" - -enum { - SYS_AREA_AUTO, - SYS_AREA_COMMON, - SYS_AREA_SPARC, - SYS_AREA_ARCS -} system_area = SYS_AREA_AUTO; - -static error_t -argp_parser (int key, char *arg, struct argp_state *state) -{ - if (grub_install_parse (key, arg)) - return 0; - switch (key) - { - case OPTION_OUTPUT: - free (output_image); - output_image = xstrdup (arg); - return 0; - case OPTION_ROM_DIRECTORY: - free (rom_directory); - rom_directory = xstrdup (arg); - return 0; - - /* - FIXME: - # Intentionally undocumented - --grub-mkimage-extra) - mkimage_extra_arg="$mkimage_extra_arg `argument $option "$@"`"; shift ;; - --grub-mkimage-extra=*) - mkimage_extra_arg="$mkimage_extra_arg `echo "$option" | sed 's/--grub-mkimage-extra=//'`" ;; - */ - case OPTION_SPARC_BOOT: - system_area = SYS_AREA_SPARC; - return 0; - case OPTION_ARCS_BOOT: - system_area = SYS_AREA_ARCS; - return 0; - case OPTION_PRODUCT_NAME: - free (product_name); - product_name = xstrdup (arg); - return 0; - case OPTION_PRODUCT_VERSION: - free (product_version); - product_version = xstrdup (arg); - return 0; - /* Accept and ignore for compatibility. */ - case OPTION_GLUE_EFI: - case OPTION_RENDER_LABEL: - return 0; - case OPTION_LABEL_FONT: - free (label_font); - label_font = xstrdup (arg); - return 0; - - case OPTION_LABEL_COLOR: - free (label_color); - label_color = xstrdup (arg); - return 0; - - case OPTION_LABEL_BGCOLOR: - free (label_bgcolor); - label_bgcolor = xstrdup (arg); - return 0; - - case OPTION_XORRISO: - free (xorriso); - xorriso = xstrdup (arg); - return 0; - - default: - return ARGP_ERR_UNKNOWN; - } -} - -struct argp argp = { - options, argp_parser, N_("[OPTION] SOURCE..."), - NULL, NULL, help_filter, NULL -}; - -static void -write_part (FILE *f, const char *srcdir) -{ - FILE *in; - char *inname = grub_util_path_concat (2, srcdir, "partmap.lst"); - char buf[260]; - in = grub_util_fopen (inname, "rb"); - if (!in) - return; - while (fgets (buf, 256, in)) - { - char *ptr; - for (ptr = buf + strlen (buf) - 1; - ptr >= buf && (*ptr == '\n' || *ptr == '\r'); - ptr--); - ptr[1] = '\0'; - fprintf (f, "insmod %s\n", buf); - } - fclose (in); -} - -static void -make_image_abs (enum grub_install_plat plat, - const char *mkimage_target, - const char *output) -{ - char *load_cfg; - FILE *load_cfg_f; - - if (!source_dirs[plat]) - return; - - grub_util_info (N_("enabling %s support ..."), - mkimage_target); - - load_cfg = grub_util_make_temporary_file (); - - load_cfg_f = grub_util_fopen (load_cfg, "wb"); - fprintf (load_cfg_f, "search --fs-uuid --set=root %s\n", iso_uuid); - fprintf (load_cfg_f, "set prefix=(${root})/boot/grub\n"); - - write_part (load_cfg_f, source_dirs[plat]); - fclose (load_cfg_f); - - grub_install_push_module ("search"); - grub_install_push_module ("iso9660"); - grub_install_make_image_wrap (source_dirs[plat], "/boot/grub", output, - 0, load_cfg, - mkimage_target, 0); - grub_install_pop_module (); - grub_install_pop_module (); - grub_util_unlink (load_cfg); -} - -static void -make_image (enum grub_install_plat plat, - const char *mkimage_target, - const char *output_sub) -{ - char *out = grub_util_path_concat (2, boot_grub, output_sub); - make_image_abs (plat, mkimage_target, out); - free (out); -} - -static void -make_image_fwdisk_abs (enum grub_install_plat plat, - const char *mkimage_target, - const char *output) -{ - char *load_cfg; - FILE *load_cfg_f; - - if (!source_dirs[plat]) - return; - - grub_util_info (N_("enabling %s support ..."), - mkimage_target); - - load_cfg = grub_util_make_temporary_file (); - - load_cfg_f = grub_util_fopen (load_cfg, "wb"); - write_part (load_cfg_f, source_dirs[plat]); - fclose (load_cfg_f); - - grub_install_push_module ("iso9660"); - grub_install_make_image_wrap (source_dirs[plat], "()/boot/grub", output, - 0, load_cfg, mkimage_target, 0); - grub_install_pop_module (); - grub_util_unlink (load_cfg); -} - -static int -check_xorriso (const char *val) -{ - const char *argv[5]; - int fd; - pid_t pid; - FILE *mdadm; - char *buf = NULL; - size_t len = 0; - int ret = 0; - int wstatus = 0; - - argv[0] = xorriso; - argv[1] = "-as"; - argv[2] = "mkisofs"; - argv[3] = "-help"; - argv[4] = NULL; - - pid = grub_util_exec_pipe_stderr (argv, &fd); - - if (!pid) - return 0; - - /* Parent. Read mdadm's output. */ - mdadm = fdopen (fd, "r"); - if (! mdadm) - return 0; - - while (getline (&buf, &len, mdadm) > 0) - { - if (grub_strstr (buf, val)) - ret = 1; - } - - close (fd); - waitpid (pid, &wstatus, 0); - free (buf); - if (!WIFEXITED (wstatus) || WEXITSTATUS(wstatus) != 0) - return 0; - return ret; -} - -static void -make_image_fwdisk (enum grub_install_plat plat, - const char *mkimage_target, - const char *output_sub) -{ - char *out = grub_util_path_concat (2, boot_grub, output_sub); - make_image_fwdisk_abs (plat, mkimage_target, out); - free (out); -} - -static int -option_is_end (const struct argp_option *opt) -{ - return !opt->key && !opt->name && !opt->doc && !opt->group; -} - - -static int -args_to_eat (const char *arg) -{ - int j; - - if (arg[0] != '-') - return 0; - - if (arg[1] == '-') - { - for (j = 0; !option_is_end(&options[j]); j++) - { - size_t len = strlen (options[j].name); - if (strncmp (arg + 2, options[j].name, len) == 0) - { - if (arg[2 + len] == '=') - return 1; - if (arg[2 + len] == '\0' && options[j].arg) - return 2; - if (arg[2 + len] == '\0') - return 1; - } - } - if (strcmp (arg, "--help") == 0) - return 1; - if (strcmp (arg, "--usage") == 0) - return 1; - if (strcmp (arg, "--version") == 0) - return 1; - return 0; - } - if (arg[2] && arg[3]) - return 0; - for (j = 0; !option_is_end(&options[j]); j++) - { - if (options[j].key > 0 && options[j].key < 128 && arg[1] == options[j].key) - { - if (options[j].arg) - return 2; - return 1; - } - if (arg[1] == '?') - return 1; - } - return 0; -} - -int -main (int argc, char *argv[]) -{ - char *romdir; - char *sysarea_img = NULL; - const char *pkgdatadir; - int argp_argc; - char **argp_argv; - int xorriso_tail_argc; - char **xorriso_tail_argv; - int rv; - - grub_util_host_init (&argc, &argv); - grub_util_disable_fd_syncs (); - - pkgdatadir = grub_util_get_pkgdatadir (); - - product_name = xstrdup (PACKAGE_NAME); - product_version = xstrdup (PACKAGE_VERSION); - xorriso = xstrdup ("xorriso"); - label_font = grub_util_path_concat (2, pkgdatadir, "unicode.pf2"); - - argp_argv = xmalloc (sizeof (argp_argv[0]) * argc); - xorriso_tail_argv = xmalloc (sizeof (argp_argv[0]) * argc); - - xorriso_tail_argc = 0; - /* Program name */ - argp_argv[0] = argv[0]; - argp_argc = 1; - - /* argp doesn't allow us to catch unknwon arguments, - so catch them before passing to argp - */ - { - int i; - for (i = 1; i < argc; i++) - { - if (strcmp (argv[i], "-output") == 0) { - argp_argv[argp_argc++] = (char *) "--output"; - i++; - argp_argv[argp_argc++] = argv[i]; - continue; - } - switch (args_to_eat (argv[i])) - { - case 2: - argp_argv[argp_argc++] = argv[i++]; - /* Fallthrough */ - case 1: - argp_argv[argp_argc++] = argv[i]; - break; - case 0: - xorriso_tail_argv[xorriso_tail_argc++] = argv[i]; - break; - } - } - } - - argp_parse (&argp, argp_argc, argp_argv, 0, 0, 0); - - if (!output_image) - grub_util_error ("%s", _("output file must be specified")); - - if (!check_xorriso ("graft-points")) { - grub_util_error ("%s", _("xorriso not found")); - } - - grub_init_all (); - grub_hostfs_init (); - grub_host_init (); - - xorriso_push (xorriso); - xorriso_push ("-as"); - xorriso_push ("mkisofs"); - xorriso_push ("-graft-points"); - - iso9660_dir = grub_util_make_temporary_dir (); - grub_util_info ("temporary iso9660 dir is `%s'", iso9660_dir); - boot_grub = grub_util_path_concat (3, iso9660_dir, "boot", "grub"); - grub_install_mkdir_p (boot_grub); - romdir = grub_util_path_concat (2, boot_grub, "roms"); - grub_util_mkdir (romdir); - - if (!grub_install_source_directory) - { - const char *pkglibdir = grub_util_get_pkglibdir (); - enum grub_install_plat plat; - - for (plat = 0; plat < GRUB_INSTALL_PLATFORM_MAX; plat++) - { - char *platdir = grub_util_path_concat (2, pkglibdir, - grub_install_get_platform_name (plat)); - - if (!grub_util_is_directory (platdir)) - { - free (platdir); - continue; - } - source_dirs[plat] = platdir; - grub_install_copy_files (platdir, - boot_grub, plat); - } - } - else - { - enum grub_install_plat plat; - plat = grub_install_get_target (grub_install_source_directory); - grub_install_copy_files (grub_install_source_directory, - boot_grub, plat); - source_dirs[plat] = xstrdup (grub_install_source_directory); - } - if (system_area == SYS_AREA_AUTO || grub_install_source_directory) - { - if (source_dirs[GRUB_INSTALL_PLATFORM_I386_PC] - || source_dirs[GRUB_INSTALL_PLATFORM_POWERPC_IEEE1275] - || source_dirs[GRUB_INSTALL_PLATFORM_I386_EFI] - || source_dirs[GRUB_INSTALL_PLATFORM_IA64_EFI] - || source_dirs[GRUB_INSTALL_PLATFORM_ARM_EFI] - || source_dirs[GRUB_INSTALL_PLATFORM_ARM64_EFI] - || source_dirs[GRUB_INSTALL_PLATFORM_RISCV32_EFI] - || source_dirs[GRUB_INSTALL_PLATFORM_RISCV64_EFI] - || source_dirs[GRUB_INSTALL_PLATFORM_X86_64_EFI]) - system_area = SYS_AREA_COMMON; - else if (source_dirs[GRUB_INSTALL_PLATFORM_SPARC64_IEEE1275]) - system_area = SYS_AREA_SPARC; - else if (source_dirs[GRUB_INSTALL_PLATFORM_MIPS_ARC]) - system_area = SYS_AREA_ARCS; - } - - /* obtain date-based UUID. */ - { - time_t tim; - struct tm *tmm; - tim = time (NULL); - tmm = gmtime (&tim); - iso_uuid = xmalloc (55); - grub_snprintf (iso_uuid, 50, - "%04d-%02d-%02d-%02d-%02d-%02d-00", - tmm->tm_year + 1900, - tmm->tm_mon + 1, - tmm->tm_mday, - tmm->tm_hour, - tmm->tm_min, - tmm->tm_sec); - } - { - char *uuid_out = xmalloc (strlen (iso_uuid) + 1 + 40); - char *optr; - const char *iptr; - optr = grub_stpcpy (uuid_out, "--modification-date="); - for (iptr = iso_uuid; *iptr; iptr++) - if (*iptr != '-') - *optr++ = *iptr; - *optr = '\0'; - xorriso_push (uuid_out); - free (uuid_out); - } - - /* build BIOS core.img. */ - if (source_dirs[GRUB_INSTALL_PLATFORM_I386_PC]) - { - char *load_cfg; - FILE *load_cfg_f; - char *output = grub_util_path_concat (3, boot_grub, "i386-pc", "eltorito.img"); - load_cfg = grub_util_make_temporary_file (); - - grub_util_info (N_("enabling %s support ..."), "BIOS"); - load_cfg_f = grub_util_fopen (load_cfg, "wb"); - write_part (load_cfg_f, source_dirs[GRUB_INSTALL_PLATFORM_I386_PC]); - fclose (load_cfg_f); - - grub_install_push_module ("biosdisk"); - grub_install_push_module ("iso9660"); - grub_install_make_image_wrap (source_dirs[GRUB_INSTALL_PLATFORM_I386_PC], - "/boot/grub", output, - 0, load_cfg, - "i386-pc-eltorito", 0); - - xorriso_push ("-b"); - xorriso_push ("boot/grub/i386-pc/eltorito.img"); - xorriso_push ("-no-emul-boot"); - xorriso_push ("-boot-load-size"); - xorriso_push ("4"); - xorriso_push ("-boot-info-table"); - if (system_area == SYS_AREA_COMMON) - { - if (check_xorriso ("grub2-boot-info")) - { - char *boot_hybrid = grub_util_path_concat (2, source_dirs[GRUB_INSTALL_PLATFORM_I386_PC], - "boot_hybrid.img"); - xorriso_push ("--grub2-boot-info"); - xorriso_push ("--grub2-mbr"); - xorriso_push (boot_hybrid); - } - else - { - FILE *sa, *bi; - size_t sz; - char buf[512]; - char *bin = grub_util_path_concat (2, source_dirs[GRUB_INSTALL_PLATFORM_I386_PC], - "boot.img"); - grub_util_warn ("%s", _("Your xorriso doesn't support `--grub2-boot-info'. Some features are disabled. Please use xorriso 1.2.9 or later.")); - sysarea_img = grub_util_make_temporary_file (); - sa = grub_util_fopen (sysarea_img, "wb"); - if (!sa) - grub_util_error (_("cannot open `%s': %s"), sysarea_img, - strerror (errno)); - bi = grub_util_fopen (bin, "rb"); - if (!bi) - grub_util_error (_("cannot open `%s': %s"), bin, - strerror (errno)); - if (fread (buf, 1, 512, bi) != 512) - grub_util_error (_("cannot read `%s': %s"), bin, - strerror (errno)); - fclose (bi); - fwrite (buf, 1, 512, sa); - - grub_install_make_image_wrap_file (source_dirs[GRUB_INSTALL_PLATFORM_I386_PC], - "/boot/grub", sa, sysarea_img, - 0, load_cfg, - "i386-pc", 0); - sz = ftello (sa); - fflush (sa); - grub_util_fd_sync (fileno (sa)); - fclose (sa); - - if (sz > 32768) - { - grub_util_warn ("%s", _("Your xorriso doesn't support `--grub2-boot-info'. Your core image is too big. Boot as disk is disabled. Please use xorriso 1.2.9 or later.")); - } - else - { - xorriso_push ("-G"); - xorriso_push (sysarea_img); - } - } - } - grub_install_pop_module (); - grub_install_pop_module (); - grub_util_unlink (load_cfg); - } - - /** build multiboot core.img */ - grub_install_push_module ("pata"); - grub_install_push_module ("ahci"); - grub_install_push_module ("at_keyboard"); - make_image (GRUB_INSTALL_PLATFORM_I386_MULTIBOOT, "i386-multiboot", "i386-multiboot/core.elf"); - grub_install_pop_module (); - grub_install_pop_module (); - grub_install_pop_module (); - - make_image_fwdisk (GRUB_INSTALL_PLATFORM_I386_IEEE1275, "i386-ieee1275", "ofwx86.elf"); - - char *core_services = NULL; - - if (source_dirs[GRUB_INSTALL_PLATFORM_I386_EFI] - || source_dirs[GRUB_INSTALL_PLATFORM_X86_64_EFI] - || source_dirs[GRUB_INSTALL_PLATFORM_POWERPC_IEEE1275]) - { - char *mach_ker, *sv, *label, *label_text; - FILE *f; - core_services = grub_util_path_concat (4, iso9660_dir, "System", "Library", "CoreServices"); - grub_install_mkdir_p (core_services); - - mach_ker = grub_util_path_concat (2, iso9660_dir, "mach_kernel"); - f = grub_util_fopen (mach_ker, "wb"); - fclose (f); - free (mach_ker); - - sv = grub_util_path_concat (2, core_services, "SystemVersion.plist"); - f = grub_util_fopen (sv, "wb"); - fprintf (f, "\n" - "\n" - " ProductBuildVersion\n" - " \n" - " ProductName\n" - " %s\n" - " ProductVersion\n" - " %s\n" - "\n" - "\n", product_name, product_version); - fclose (f); - free (sv); - label = grub_util_path_concat (2, core_services, ".disk_label"); - char *label_string = xasprintf ("%s %s", product_name, product_version); - grub_util_render_label (label_font, label_bgcolor ? : "white", - label_color ? : "black", label_string, label); - free (label); - label_text = grub_util_path_concat (2, core_services, ".disk_label.contentDetails"); - f = grub_util_fopen (label_text, "wb"); - fprintf (f, "%s\n", label_string); - fclose (f); - free (label_string); - free (label_text); - if (system_area == SYS_AREA_COMMON) - { - xorriso_push ("-hfsplus"); - xorriso_push ("-apm-block-size"); - xorriso_push ("2048"); - xorriso_push ("-hfsplus-file-creator-type"); - xorriso_push ("chrp"); - xorriso_push ("tbxj"); - xorriso_push ("/System/Library/CoreServices/.disk_label"); - - if (source_dirs[GRUB_INSTALL_PLATFORM_I386_EFI] - || source_dirs[GRUB_INSTALL_PLATFORM_X86_64_EFI]) - { - xorriso_push ("-hfs-bless-by"); - xorriso_push ("i"); - xorriso_push ("/System/Library/CoreServices/boot.efi"); - } - } - } - - if (source_dirs[GRUB_INSTALL_PLATFORM_I386_EFI] - || source_dirs[GRUB_INSTALL_PLATFORM_X86_64_EFI] - || source_dirs[GRUB_INSTALL_PLATFORM_IA64_EFI] - || source_dirs[GRUB_INSTALL_PLATFORM_ARM_EFI] - || source_dirs[GRUB_INSTALL_PLATFORM_ARM64_EFI] - || source_dirs[GRUB_INSTALL_PLATFORM_RISCV32_EFI] - || source_dirs[GRUB_INSTALL_PLATFORM_RISCV64_EFI]) - { - char *efidir = grub_util_make_temporary_dir (); - char *efidir_efi = grub_util_path_concat (2, efidir, "efi"); - char *efidir_efi_boot = grub_util_path_concat (3, efidir, "efi", "boot"); - char *imgname, *img32, *img64, *img_mac = NULL; - char *efiimgfat; - grub_install_mkdir_p (efidir_efi_boot); - - grub_install_push_module ("part_gpt"); - grub_install_push_module ("part_msdos"); - - imgname = grub_util_path_concat (2, efidir_efi_boot, "bootia64.efi"); - make_image_fwdisk_abs (GRUB_INSTALL_PLATFORM_IA64_EFI, "ia64-efi", imgname); - free (imgname); - - grub_install_push_module ("part_apple"); - img64 = grub_util_path_concat (2, efidir_efi_boot, "bootx64.efi"); - make_image_fwdisk_abs (GRUB_INSTALL_PLATFORM_X86_64_EFI, "x86_64-efi", img64); - grub_install_pop_module (); - - grub_install_push_module ("part_apple"); - img32 = grub_util_path_concat (2, efidir_efi_boot, "bootia32.efi"); - make_image_fwdisk_abs (GRUB_INSTALL_PLATFORM_I386_EFI, "i386-efi", img32); - grub_install_pop_module (); - - imgname = grub_util_path_concat (2, efidir_efi_boot, "bootarm.efi"); - make_image_fwdisk_abs (GRUB_INSTALL_PLATFORM_ARM_EFI, "arm-efi", imgname); - free (imgname); - - imgname = grub_util_path_concat (2, efidir_efi_boot, "bootaa64.efi"); - make_image_fwdisk_abs (GRUB_INSTALL_PLATFORM_ARM64_EFI, "arm64-efi", - imgname); - free (imgname); - - imgname = grub_util_path_concat (2, efidir_efi_boot, "bootriscv32.efi"); - make_image_fwdisk_abs (GRUB_INSTALL_PLATFORM_RISCV32_EFI, "riscv32-efi", - imgname); - free (imgname); - - imgname = grub_util_path_concat (2, efidir_efi_boot, "bootriscv64.efi"); - make_image_fwdisk_abs (GRUB_INSTALL_PLATFORM_RISCV64_EFI, "riscv64-efi", - imgname); - free (imgname); - - if (source_dirs[GRUB_INSTALL_PLATFORM_I386_EFI]) - { - imgname = grub_util_path_concat (2, efidir_efi_boot, "boot.efi"); - /* For old macs. Suggested by Peter Jones. */ - grub_install_copy_file (img32, imgname, 1); - } - - if (source_dirs[GRUB_INSTALL_PLATFORM_I386_EFI] - || source_dirs[GRUB_INSTALL_PLATFORM_X86_64_EFI]) - img_mac = grub_util_path_concat (2, core_services, "boot.efi"); - - if (source_dirs[GRUB_INSTALL_PLATFORM_I386_EFI] - && source_dirs[GRUB_INSTALL_PLATFORM_X86_64_EFI]) - grub_util_glue_efi (img32, img64, img_mac); - else if (source_dirs[GRUB_INSTALL_PLATFORM_X86_64_EFI]) - grub_install_copy_file (img64, img_mac, 1); - else if (source_dirs[GRUB_INSTALL_PLATFORM_I386_EFI]) - grub_install_copy_file (img32, img_mac, 1); - - free (img_mac); - free (img32); - free (img64); - free (efidir_efi_boot); - - efiimgfat = grub_util_path_concat (2, iso9660_dir, "efi.img"); - rv = grub_util_exec ((const char * []) { "mformat", "-C", "-f", "2880", "-L", "16", "-i", - efiimgfat, "::", NULL }); - if (rv != 0) - grub_util_error ("`%s` invocation failed\n", "mformat"); - rv = grub_util_exec ((const char * []) { "mcopy", "-s", "-i", efiimgfat, efidir_efi, "::/", NULL }); - if (rv != 0) - grub_util_error ("`%s` invocation failed\n", "mcopy"); - xorriso_push ("--efi-boot"); - xorriso_push ("efi.img"); - xorriso_push ("-efi-boot-part"); - xorriso_push ("--efi-boot-image"); - - grub_util_unlink_recursive (efidir); - free (efiimgfat); - free (efidir_efi); - free (efidir); - grub_install_pop_module (); - grub_install_pop_module (); - } - - grub_install_push_module ("part_apple"); - make_image_fwdisk (GRUB_INSTALL_PLATFORM_POWERPC_IEEE1275, "powerpc-ieee1275", "powerpc-ieee1275/core.elf"); - grub_install_pop_module (); - - if (source_dirs[GRUB_INSTALL_PLATFORM_POWERPC_IEEE1275]) - { - char *grub_chrp = grub_util_path_concat (2, source_dirs[GRUB_INSTALL_PLATFORM_POWERPC_IEEE1275], - "grub.chrp"); - char *bisrc = grub_util_path_concat (2, source_dirs[GRUB_INSTALL_PLATFORM_POWERPC_IEEE1275], - "bootinfo.txt"); - char *bootx = grub_util_path_concat (2, core_services, "BootX"); - char *ppc_chrp = grub_util_path_concat (3, iso9660_dir, "ppc", "chrp"); - char *bitgt = grub_util_path_concat (3, iso9660_dir, "ppc", "bootinfo.txt"); - grub_install_copy_file (grub_chrp, bootx, 1); - grub_install_mkdir_p (ppc_chrp); - grub_install_copy_file (bisrc, bitgt, 1); - xorriso_link ("/System/Library/CoreServices/grub.elf", "/boot/grub/powerpc-ieee1275/core.elf"); - xorriso_link ("/boot/grub/powerpc.elf", "/boot/grub/powerpc-ieee1275/core.elf"); - /* FIXME: add PreP */ - if (system_area == SYS_AREA_COMMON) - { - xorriso_push ("-hfsplus-file-creator-type"); - xorriso_push ("chrp"); - xorriso_push ("tbxi"); - xorriso_push ("/System/Library/CoreServices/BootX"); - xorriso_push ("-hfs-bless-by"); - xorriso_push ("p"); - xorriso_push ("/System/Library/CoreServices"); - } - xorriso_push ("-sysid"); - xorriso_push ("PPC"); - } - - make_image_fwdisk (GRUB_INSTALL_PLATFORM_SPARC64_IEEE1275, - "sparc64-ieee1275-cdcore", "sparc64-ieee1275/core.img"); - - if (source_dirs[GRUB_INSTALL_PLATFORM_SPARC64_IEEE1275] - && system_area == SYS_AREA_SPARC) - { - char *cdboot; - FILE *in, *out; - char buf[512]; - sysarea_img = grub_util_make_temporary_file (); - cdboot = grub_util_path_concat (2, source_dirs[GRUB_INSTALL_PLATFORM_SPARC64_IEEE1275], - "cdboot.img"); - in = grub_util_fopen (cdboot, "rb"); - if (!in) - grub_util_error (_("cannot open `%s': %s"), cdboot, - strerror (errno)); - out = grub_util_fopen (sysarea_img, "wb"); - if (!out) - grub_util_error (_("cannot open `%s': %s"), sysarea_img, - strerror (errno)); - memset (buf, 0, 512); - fwrite (buf, 1, 512, out); - if (fread (buf, 1, 512, in) != 512) - grub_util_error (_("cannot read `%s': %s"), cdboot, - strerror (errno)); - fwrite (buf, 1, 512, out); - fclose (in); - fclose (out); - xorriso_push ("-G"); - xorriso_push (sysarea_img); - xorriso_push ("-B"); - xorriso_push (","); - xorriso_push ("--grub2-sparc-core"); - xorriso_push ("/boot/grub/sparc64-ieee1275/core.img"); - } - - make_image_fwdisk (GRUB_INSTALL_PLATFORM_MIPS_ARC, "mips-arc", "mips-arc/core.img"); - - if (source_dirs[GRUB_INSTALL_PLATFORM_MIPS_ARC]) - { - xorriso_link ("/boot/grub/mips-arc/grub", "/boot/grub/mips-arc/core.img"); - xorriso_link ("/boot/grub/mips-arc/sashARCS", "/boot/grub/mips-arc/core.img"); - xorriso_link ("/boot/grub/mips-arc/sash", "/boot/grub/mips-arc/core.img"); - } - if (source_dirs[GRUB_INSTALL_PLATFORM_MIPS_ARC] && system_area == SYS_AREA_ARCS) - { - xorriso_push ("-mips-boot"); - xorriso_push ("/boot/grub/mips-arc/sashARCS"); - xorriso_push ("-mips-boot"); - xorriso_push ("/boot/grub/mips-arc/sash"); - xorriso_push ("-mips-boot"); - xorriso_push ("/boot/grub/mips-arc/grub"); - } - - make_image_fwdisk (GRUB_INSTALL_PLATFORM_MIPSEL_ARC, "mipsel-arc", "arc.exe"); - - grub_install_push_module ("pata"); - make_image (GRUB_INSTALL_PLATFORM_MIPSEL_QEMU_MIPS, "mipsel-qemu_mips-elf", "roms/mipsel-qemu_mips.elf"); - - make_image (GRUB_INSTALL_PLATFORM_MIPSEL_LOONGSON, "mipsel-loongson-elf", "loongson.elf"); - - make_image (GRUB_INSTALL_PLATFORM_MIPSEL_LOONGSON, "mipsel-yeeloong-flash", "mipsel-yeeloong.bin"); - make_image (GRUB_INSTALL_PLATFORM_MIPSEL_LOONGSON, "mipsel-fuloong2f-flash", "mipsel-fuloong2f.bin"); - - make_image (GRUB_INSTALL_PLATFORM_MIPS_QEMU_MIPS, "mips-qemu_mips-elf", "roms/mips-qemu_mips.elf"); - - grub_install_push_module ("at_keyboard"); - - make_image (GRUB_INSTALL_PLATFORM_I386_QEMU, "i386-qemu", "roms/qemu.img"); - - grub_install_push_module ("ahci"); - - make_image (GRUB_INSTALL_PLATFORM_I386_COREBOOT, "i386-coreboot", "roms/coreboot.elf"); - grub_install_pop_module (); - grub_install_pop_module (); - grub_install_pop_module (); - - if (rom_directory) - { - const struct - { - enum grub_install_plat plat; - const char *from, *to; - } roms[] = - { - {GRUB_INSTALL_PLATFORM_MIPSEL_QEMU_MIPS, "roms/mipsel-qemu_mips.elf", "mipsel-qemu_mips.elf"}, - {GRUB_INSTALL_PLATFORM_MIPSEL_LOONGSON, "loongson.elf", "mipsel-loongson.elf"}, - {GRUB_INSTALL_PLATFORM_MIPSEL_LOONGSON, "roms/mipsel-yeeloong.bin", "mipsel-yeeloong.bin"}, - {GRUB_INSTALL_PLATFORM_MIPSEL_LOONGSON, "roms/mipsel-fulong.bin", "mipsel-fulong.bin"}, - {GRUB_INSTALL_PLATFORM_MIPS_QEMU_MIPS, "roms/mips-qemu_mips.elf", "mips-qemu_mips.elf"}, - {GRUB_INSTALL_PLATFORM_I386_QEMU, "roms/qemu.img", "qemu.img"}, - {GRUB_INSTALL_PLATFORM_I386_COREBOOT, "roms/coreboot.elf", "coreboot.elf"}, - }; - grub_size_t i; - for (i = 0; i < ARRAY_SIZE (roms); i++) - { - char *from = grub_util_path_concat (2, boot_grub, roms[i].from); - char *to = grub_util_path_concat (2, rom_directory, roms[i].to); - grub_install_copy_file (from, to, 0); - } - } - - xorriso_push ("--protective-msdos-label"); - xorriso_push ("-o"); - xorriso_push (output_image); - xorriso_push ("-r"); - xorriso_push (iso9660_dir); - xorriso_push ("--sort-weight"); - xorriso_push ("0"); - xorriso_push ("/"); - xorriso_push ("--sort-weight"); - xorriso_push ("1"); - xorriso_push ("/boot"); - int i; - for (i = 0; i < xorriso_tail_argc; i++) - xorriso_push (xorriso_tail_argv[i]); - - xorriso_argv[xorriso_argc] = NULL; - - rv = grub_util_exec ((const char *const *)xorriso_argv); - if (rv != 0) - grub_util_error ("`%s` invocation failed\n", "xorriso"); - - grub_util_unlink_recursive (iso9660_dir); - - if (sysarea_img) - grub_util_unlink (sysarea_img); - - free (core_services); - free (romdir); - return 0; -} diff --git a/thirdparty/grub-2.04/util/grub-mkstandalone.c b/thirdparty/grub-2.04/util/grub-mkstandalone.c deleted file mode 100644 index 4907d44c0..000000000 --- a/thirdparty/grub-2.04/util/grub-mkstandalone.c +++ /dev/null @@ -1,361 +0,0 @@ - -/* - * Copyright (C) 1999,2000,2001,2002,2003,2004,2005,2006,2007,2008,2009,2010,2011,2012,2013 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . -*/ - -#include - -#include -#include -#include - -#include - -#pragma GCC diagnostic ignored "-Wmissing-prototypes" -#pragma GCC diagnostic ignored "-Wmissing-declarations" -#include -#pragma GCC diagnostic error "-Wmissing-prototypes" -#pragma GCC diagnostic error "-Wmissing-declarations" - -static char *output_image; -static char **files; -static int nfiles; -const struct grub_install_image_target_desc *format; -static FILE *memdisk; - -enum - { - OPTION_OUTPUT = 'o', - OPTION_FORMAT = 'O' - }; - -static struct argp_option options[] = { - GRUB_INSTALL_OPTIONS, - {"output", 'o', N_("FILE"), - 0, N_("save output in FILE [required]"), 2}, - {"format", 'O', N_("FILE"), 0, 0, 2}, - {"compression", 'C', "xz|none|auto", OPTION_HIDDEN, 0, 2}, - {0, 0, 0, 0, 0, 0} -}; - -static char * -help_filter (int key, const char *text, void *input __attribute__ ((unused))) -{ - switch (key) - { - case 'O': - { - char *formats = grub_install_get_image_targets_string (), *ret; - ret = xasprintf ("%s\n%s %s", _("generate an image in FORMAT"), - _("available formats:"), formats); - free (formats); - return ret; - } - default: - return grub_install_help_filter (key, text, input); - } -} - -static error_t -argp_parser (int key, char *arg, struct argp_state *state) -{ - if (key == 'C') - key = GRUB_INSTALL_OPTIONS_INSTALL_CORE_COMPRESS; - - if (grub_install_parse (key, arg)) - return 0; - - switch (key) - { - - case 'o': - if (output_image) - free (output_image); - - output_image = xstrdup (arg); - break; - - case 'O': - { - format = grub_install_get_image_target (arg); - if (!format) - { - printf (_("unknown target format %s\n"), arg); - argp_usage (state); - exit (1); - } - break; - } - - case ARGP_KEY_ARG: - files[nfiles++] = xstrdup (arg); - break; - - default: - return ARGP_ERR_UNKNOWN; - } - return 0; -} - -struct argp argp = { - options, argp_parser, N_("[OPTION] SOURCE..."), - N_("Generate a standalone image (containing all modules) in the selected format")"\v"N_("Graft point syntax (E.g. /boot/grub/grub.cfg=./grub.cfg) is accepted"), - NULL, help_filter, NULL -}; - -/* tar support */ -#define MAGIC "ustar" -struct head -{ - char name[100]; - char mode[8]; - char uid[8]; - char gid[8]; - char size[12]; - char mtime[12]; - char chksum[8]; - char typeflag; - char linkname[100]; - char magic[6]; - char version[2]; - char uname[32]; - char gname[32]; - char devmajor[8]; - char devminor[8]; - char prefix[155]; - char pad[12]; -} GRUB_PACKED; - -static void -write_zeros (unsigned rsz) -{ - char buf[512]; - - memset (buf, 0, 512); - fwrite (buf, 1, rsz, memdisk); -} - -static void -write_pad (unsigned sz) -{ - write_zeros ((~sz + 1) & 511); -} - -static void -set_tar_value (char *field, grub_uint32_t val, - unsigned len) -{ - unsigned i; - for (i = 0; i < len - 1; i++) - field[len - 2 - i] = '0' + ((val >> (3 * i)) & 7); -} - -static void -compute_checksum (struct head *hd) -{ - unsigned int chk = 0; - unsigned char *ptr; - memset (hd->chksum, ' ', 8); - for (ptr = (unsigned char *) hd; ptr < (unsigned char *) (hd + 1); ptr++) - chk += *ptr; - set_tar_value (hd->chksum, chk, 8); -} - -static void -add_tar_file (const char *from, - const char *to) -{ - char *tcn; - const char *iptr; - char *optr; - struct head hd; - grub_util_fd_t in; - ssize_t r; - grub_uint32_t mtime = 0; - grub_uint32_t size; - - COMPILE_TIME_ASSERT (sizeof (hd) == 512); - - if (grub_util_is_special_file (from)) - return; - - mtime = grub_util_get_mtime (from); - - optr = tcn = xmalloc (strlen (to) + 1); - for (iptr = to; *iptr == '/'; iptr++); - for (; *iptr; iptr++) - if (!(iptr[0] == '/' && iptr[1] == '/')) - *optr++ = *iptr; - *optr = '\0'; - - if (grub_util_is_directory (from)) - { - grub_util_fd_dir_t d; - grub_util_fd_dirent_t de; - - d = grub_util_fd_opendir (from); - - while ((de = grub_util_fd_readdir (d))) - { - char *fp, *tfp; - if (strcmp (de->d_name, ".") == 0) - continue; - if (strcmp (de->d_name, "..") == 0) - continue; - fp = grub_util_path_concat (2, from, de->d_name); - tfp = xasprintf ("%s/%s", to, de->d_name); - add_tar_file (fp, tfp); - free (fp); - } - grub_util_fd_closedir (d); - free (tcn); - return; - } - - if (optr - tcn > 99) - { - memset (&hd, 0, sizeof (hd)); - memcpy (hd.name, tcn, 99); - memcpy (hd.mode, "0000600", 7); - memcpy (hd.uid, "0001750", 7); - memcpy (hd.gid, "0001750", 7); - - set_tar_value (hd.size, optr - tcn, 12); - set_tar_value (hd.mtime, mtime, 12); - hd.typeflag = 'L'; - memcpy (hd.magic, MAGIC, sizeof (hd.magic)); - memcpy (hd.uname, "grub", 4); - memcpy (hd.gname, "grub", 4); - - compute_checksum (&hd); - - fwrite (&hd, 1, sizeof (hd), memdisk); - fwrite (tcn, 1, optr - tcn, memdisk); - - write_pad (optr - tcn); - } - - in = grub_util_fd_open (from, GRUB_UTIL_FD_O_RDONLY); - if (!GRUB_UTIL_FD_IS_VALID (in)) - grub_util_error (_("cannot open `%s': %s"), from, grub_util_fd_strerror ()); - - if (!grub_install_copy_buffer) - grub_install_copy_buffer = xmalloc (GRUB_INSTALL_COPY_BUFFER_SIZE); - - size = grub_util_get_fd_size (in, from, NULL); - - memset (&hd, 0, sizeof (hd)); - memcpy (hd.name, tcn, optr - tcn < 99 ? optr - tcn : 99); - memcpy (hd.mode, "0000600", 7); - memcpy (hd.uid, "0001750", 7); - memcpy (hd.gid, "0001750", 7); - - set_tar_value (hd.size, size, 12); - set_tar_value (hd.mtime, mtime, 12); - hd.typeflag = '0'; - memcpy (hd.magic, MAGIC, sizeof (hd.magic)); - memcpy (hd.uname, "grub", 4); - memcpy (hd.gname, "grub", 4); - - compute_checksum (&hd); - - fwrite (&hd, 1, sizeof (hd), memdisk); - - while (1) - { - r = grub_util_fd_read (in, grub_install_copy_buffer, GRUB_INSTALL_COPY_BUFFER_SIZE); - if (r <= 0) - break; - fwrite (grub_install_copy_buffer, 1, r, memdisk); - } - grub_util_fd_close (in); - - write_pad (size); - free (tcn); -} - -int -main (int argc, char *argv[]) -{ - const char *pkglibdir; - int i; - - grub_util_host_init (&argc, &argv); - grub_util_disable_fd_syncs (); - - files = xmalloc ((argc + 1) * sizeof (files[0])); - - argp_parse (&argp, argc, argv, 0, 0, 0); - - pkglibdir = grub_util_get_pkglibdir (); - - if (!output_image) - grub_util_error ("%s", _("output file must be specified")); - - if (!format) - grub_util_error ("%s", _("Target format not specified (use the -O option).")); - - if (!grub_install_source_directory) - grub_install_source_directory = grub_util_path_concat (2, pkglibdir, grub_util_get_target_dirname (format)); - - enum grub_install_plat plat = grub_install_get_target (grub_install_source_directory); - - char *memdisk_dir = grub_util_make_temporary_dir (); - char *boot_grub = grub_util_path_concat (3, memdisk_dir, "boot", "grub"); - grub_install_copy_files (grub_install_source_directory, - boot_grub, plat); - - char *memdisk_img = grub_util_make_temporary_file (); - - memdisk = grub_util_fopen (memdisk_img, "wb"); - - add_tar_file (memdisk_dir, ""); - for (i = 0; i < nfiles; i++) - { - char *eq = grub_strchr (files[i], '='); - char *from, *to; - if (!eq) - { - from = files[i]; - to = files[i]; - } - else - { - *eq = '\0'; - to = files[i]; - from = eq + 1; - } - while (*to == '/') - to++; - add_tar_file (from, to); - } - write_zeros (512); - - fclose (memdisk); - - grub_util_unlink_recursive (memdisk_dir); - - grub_install_push_module ("memdisk"); - grub_install_push_module ("tar"); - - grub_install_make_image_wrap (grub_install_source_directory, - "(memdisk)/boot/grub", output_image, - memdisk_img, NULL, - grub_util_get_target_name (format), 0); - - grub_util_unlink (memdisk_img); - return 0; -} diff --git a/thirdparty/grub-2.04/util/grub-module-verifier.c b/thirdparty/grub-2.04/util/grub-module-verifier.c deleted file mode 100644 index 163529ca9..000000000 --- a/thirdparty/grub-2.04/util/grub-module-verifier.c +++ /dev/null @@ -1,234 +0,0 @@ -#include -#include - -#include -#include -#include -#include - -struct grub_module_verifier_arch archs[] = { - { "i386", 4, 0, EM_386, GRUB_MODULE_VERIFY_SUPPORTS_REL, (int[]){ - R_386_32, - R_386_PC32, - -1 - } }, - { "x86_64", 8, 0, EM_X86_64, GRUB_MODULE_VERIFY_SUPPORTS_RELA, (int[]){ - R_X86_64_64, - R_X86_64_PC64, - /* R_X86_64_32, R_X86_64_32S are supported but shouldn't be used because of their limited range. */ - -1 - }, (int[]){ - R_X86_64_PC32, - R_X86_64_PLT32, - -1 - } - }, - { "powerpc", 4, 1, EM_PPC, GRUB_MODULE_VERIFY_SUPPORTS_RELA, (int[]){ - GRUB_ELF_R_PPC_ADDR16_LO, - GRUB_ELF_R_PPC_REL24, /* It has limited range but GRUB adds trampolines when necessarry. */ - GRUB_ELF_R_PPC_ADDR16_HA, - GRUB_ELF_R_PPC_ADDR32, - GRUB_ELF_R_PPC_REL32, - GRUB_ELF_R_PPC_PLTREL24, - -1 - } }, - { "sparc64", 8, 1, EM_SPARCV9, GRUB_MODULE_VERIFY_SUPPORTS_RELA, (int[]){ - R_SPARC_WDISP30, /* It has limited range but GRUB adds trampolines when necessarry. */ - R_SPARC_HH22, - R_SPARC_HM10, - R_SPARC_LM22, - R_SPARC_LO10, - R_SPARC_64, - R_SPARC_OLO10, - /* Following 2 relocations have limited range but unfortunately - clang generates them, as it doesn't implement mcmodel=large properly. - At least our heap and core are under 4G, so it's not a problem - usually. */ - R_SPARC_HI22, - R_SPARC_32, - -1 - } }, - { "ia64", 8, 0, EM_IA_64, GRUB_MODULE_VERIFY_SUPPORTS_RELA, (int[]){ - R_IA64_PCREL21B, /* We should verify that it's pointing either - to a function or to a section in the same module. - Checking that external symbol is a function is - non-trivial and I have never seen this relocation used - for anything else, so assume that it always points to a - function. - */ - R_IA64_SEGREL64LSB, - R_IA64_FPTR64LSB, - R_IA64_DIR64LSB, - R_IA64_PCREL64LSB, - R_IA64_LTOFF22X, - R_IA64_LTOFF22, - R_IA64_GPREL64I, - R_IA64_LTOFF_FPTR22, - R_IA64_LDXMOV, - -1 - }, (int[]){ - R_IA64_GPREL22, - -1 - } }, - { "mipsel", 4, 0, EM_MIPS, GRUB_MODULE_VERIFY_SUPPORTS_REL | GRUB_MODULE_VERIFY_SUPPORTS_RELA, (int[]){ - R_MIPS_HI16, - R_MIPS_LO16, - R_MIPS_32, - R_MIPS_GPREL32, - R_MIPS_26, - R_MIPS_GOT16, - R_MIPS_CALL16, - R_MIPS_JALR, - -1 - } }, - { "mips", 4, 1, EM_MIPS, GRUB_MODULE_VERIFY_SUPPORTS_REL | GRUB_MODULE_VERIFY_SUPPORTS_RELA, (int[]){ - R_MIPS_HI16, - R_MIPS_LO16, - R_MIPS_32, - R_MIPS_GPREL32, - R_MIPS_26, - R_MIPS_GOT16, - R_MIPS_CALL16, - R_MIPS_JALR, - -1 - } }, - { "arm", 4, 0, EM_ARM, GRUB_MODULE_VERIFY_SUPPORTS_REL, (int[]){ - /* Some relocations are range-limited but trampolines are added when necessarry. */ - R_ARM_ABS32, - R_ARM_CALL, - R_ARM_JUMP24, - R_ARM_THM_CALL, - R_ARM_THM_JUMP24, - R_ARM_V4BX, - R_ARM_THM_MOVW_ABS_NC, - R_ARM_THM_MOVT_ABS, - R_ARM_THM_JUMP19, - -1 - } }, - { "arm64", 8, 0, EM_AARCH64, GRUB_MODULE_VERIFY_SUPPORTS_REL | GRUB_MODULE_VERIFY_SUPPORTS_RELA, (int[]){ - R_AARCH64_ABS64, - R_AARCH64_CALL26, - R_AARCH64_JUMP26, - R_AARCH64_ADR_GOT_PAGE, - R_AARCH64_LD64_GOT_LO12_NC, - -1 - }, (int[]){ - R_AARCH64_ADR_PREL_PG_HI21, - R_AARCH64_ADD_ABS_LO12_NC, - R_AARCH64_LDST64_ABS_LO12_NC, - R_AARCH64_PREL32, - -1 - } }, - { "riscv32", 4, 0, EM_RISCV, GRUB_MODULE_VERIFY_SUPPORTS_REL | GRUB_MODULE_VERIFY_SUPPORTS_RELA, (int[]){ - R_RISCV_32, - R_RISCV_64, - R_RISCV_ADD8, - R_RISCV_ADD16, - R_RISCV_ADD32, - R_RISCV_ADD64, - R_RISCV_SUB8, - R_RISCV_SUB16, - R_RISCV_SUB32, - R_RISCV_SUB64, - R_RISCV_ALIGN, - R_RISCV_BRANCH, - R_RISCV_CALL, - R_RISCV_CALL_PLT, - R_RISCV_GOT_HI20, - R_RISCV_HI20, - R_RISCV_JAL, - R_RISCV_LO12_I, - R_RISCV_LO12_S, - R_RISCV_PCREL_HI20, - R_RISCV_PCREL_LO12_I, - R_RISCV_PCREL_LO12_S, - R_RISCV_RELAX, - R_RISCV_RVC_BRANCH, - R_RISCV_RVC_JUMP, - -1 - } }, - { "riscv64", 8, 0, EM_RISCV, GRUB_MODULE_VERIFY_SUPPORTS_REL | GRUB_MODULE_VERIFY_SUPPORTS_RELA, (int[]){ - R_RISCV_32, - R_RISCV_64, - R_RISCV_ADD8, - R_RISCV_ADD16, - R_RISCV_ADD32, - R_RISCV_ADD64, - R_RISCV_SUB8, - R_RISCV_SUB16, - R_RISCV_SUB32, - R_RISCV_SUB64, - R_RISCV_ALIGN, - R_RISCV_BRANCH, - R_RISCV_CALL, - R_RISCV_CALL_PLT, - R_RISCV_GOT_HI20, - R_RISCV_HI20, - R_RISCV_JAL, - R_RISCV_LO12_I, - R_RISCV_LO12_S, - R_RISCV_PCREL_HI20, - R_RISCV_PCREL_LO12_I, - R_RISCV_PCREL_LO12_S, - R_RISCV_RELAX, - R_RISCV_RVC_BRANCH, - R_RISCV_RVC_JUMP, - -1 - } - }, -}; - -struct platform_whitelist { - const char *arch; - const char *platform; - const char **whitelist_empty; -}; - -static struct platform_whitelist whitelists[] = { - {"i386", "xen", (const char *[]) {"all_video", 0}}, - {"i386", "xen_pvh", (const char *[]) {"all_video", 0}}, - {"x86_64", "xen", (const char *[]) {"all_video", 0}}, - {"sparc64", "ieee1275", (const char *[]) {"all_video", 0}}, - - /* video is compiled-in on MIPS. */ - {"mipsel", "loongson", (const char *[]) {"all_video", 0}}, - {"mipsel", "qemu_mips", (const char *[]) {"all_video", 0}}, - {"mipsel", "arc", (const char *[]) {"all_video", 0}}, - {"mips", "qemu_mips", (const char *[]) {"all_video", 0}}, - {"mips", "arc", (const char *[]) {"all_video", 0}}, -}; - - -int -main (int argc, char **argv) -{ - size_t module_size; - unsigned arch, whitelist; - const char **whitelist_empty = 0; - char *module_img; - if (argc != 4) { - fprintf (stderr, "usage: %s FILE ARCH PLATFORM\n", argv[0]); - return 1; - } - - for (arch = 0; arch < ARRAY_SIZE(archs); arch++) - if (strcmp(archs[arch].name, argv[2]) == 0) - break; - if (arch == ARRAY_SIZE(archs)) - grub_util_error("%s: unknown arch: %s", argv[1], argv[2]); - - for (whitelist = 0; whitelist < ARRAY_SIZE(whitelists); whitelist++) - if (strcmp(whitelists[whitelist].arch, argv[2]) == 0 - && strcmp(whitelists[whitelist].platform, argv[3]) == 0) - break; - if (whitelist != ARRAY_SIZE(whitelists)) - whitelist_empty = whitelists[whitelist].whitelist_empty; - - module_size = grub_util_get_image_size (argv[1]); - module_img = grub_util_read_image (argv[1]); - if (archs[arch].voidp_sizeof == 8) - grub_module_verify64(argv[1], module_img, module_size, &archs[arch], whitelist_empty); - else - grub_module_verify32(argv[1], module_img, module_size, &archs[arch], whitelist_empty); - return 0; -} diff --git a/thirdparty/grub-2.04/util/grub-module-verifier32.c b/thirdparty/grub-2.04/util/grub-module-verifier32.c deleted file mode 100644 index 257229f8f..000000000 --- a/thirdparty/grub-2.04/util/grub-module-verifier32.c +++ /dev/null @@ -1,2 +0,0 @@ -#define MODULEVERIFIER_ELF32 1 -#include "grub-module-verifierXX.c" diff --git a/thirdparty/grub-2.04/util/grub-module-verifier64.c b/thirdparty/grub-2.04/util/grub-module-verifier64.c deleted file mode 100644 index 4db6b4bed..000000000 --- a/thirdparty/grub-2.04/util/grub-module-verifier64.c +++ /dev/null @@ -1,2 +0,0 @@ -#define MODULEVERIFIER_ELF64 1 -#include "grub-module-verifierXX.c" diff --git a/thirdparty/grub-2.04/util/grub-module-verifierXX.c b/thirdparty/grub-2.04/util/grub-module-verifierXX.c deleted file mode 100644 index ceb24309a..000000000 --- a/thirdparty/grub-2.04/util/grub-module-verifierXX.c +++ /dev/null @@ -1,439 +0,0 @@ -#include - -#include -#include -#include - -#if defined(MODULEVERIFIER_ELF32) -# define SUFFIX(x) x ## 32 -# define ELFCLASSXX ELFCLASS32 -# define Elf_Ehdr Elf32_Ehdr -# define Elf_Phdr Elf32_Phdr -# define Elf_Nhdr Elf32_Nhdr -# define Elf_Addr Elf32_Addr -# define Elf_Sym Elf32_Sym -# define Elf_Off Elf32_Off -# define Elf_Shdr Elf32_Shdr -# define Elf_Rela Elf32_Rela -# define Elf_Rel Elf32_Rel -# define Elf_Word Elf32_Word -# define Elf_Half Elf32_Half -# define Elf_Section Elf32_Section -# define ELF_R_SYM(val) ELF32_R_SYM(val) -# define ELF_R_TYPE(val) ELF32_R_TYPE(val) -# define ELF_ST_TYPE(val) ELF32_ST_TYPE(val) -#elif defined(MODULEVERIFIER_ELF64) -# define SUFFIX(x) x ## 64 -# define ELFCLASSXX ELFCLASS64 -# define Elf_Ehdr Elf64_Ehdr -# define Elf_Phdr Elf64_Phdr -# define Elf_Nhdr Elf64_Nhdr -# define Elf_Addr Elf64_Addr -# define Elf_Sym Elf64_Sym -# define Elf_Off Elf64_Off -# define Elf_Shdr Elf64_Shdr -# define Elf_Rela Elf64_Rela -# define Elf_Rel Elf64_Rel -# define Elf_Word Elf64_Word -# define Elf_Half Elf64_Half -# define Elf_Section Elf64_Section -# define ELF_R_SYM(val) ELF64_R_SYM(val) -# define ELF_R_TYPE(val) ELF64_R_TYPE(val) -# define ELF_ST_TYPE(val) ELF64_ST_TYPE(val) -#else -#error "I'm confused" -#endif - -#define grub_target_to_host32(x) (grub_target_to_host32_real (arch, (x))) -#define grub_host_to_target32(x) (grub_host_to_target32_real (arch, (x))) -#define grub_target_to_host64(x) (grub_target_to_host64_real (arch, (x))) -#define grub_host_to_target64(x) (grub_host_to_target64_real (arch, (x))) -#define grub_host_to_target_addr(x) (grub_host_to_target_addr_real (arch, (x))) -#define grub_target_to_host16(x) (grub_target_to_host16_real (arch, (x))) -#define grub_host_to_target16(x) (grub_host_to_target16_real (arch, (x))) -#define grub_target_to_host(val) grub_target_to_host_real(arch, (val)) - -static inline grub_uint32_t -grub_target_to_host32_real (const struct grub_module_verifier_arch *arch, - grub_uint32_t in) -{ - if (arch->bigendian) - return grub_be_to_cpu32 (in); - else - return grub_le_to_cpu32 (in); -} - -static inline grub_uint64_t -grub_target_to_host64_real (const struct grub_module_verifier_arch *arch, - grub_uint64_t in) -{ - if (arch->bigendian) - return grub_be_to_cpu64 (in); - else - return grub_le_to_cpu64 (in); -} - -static inline grub_uint64_t -grub_host_to_target64_real (const struct grub_module_verifier_arch *arch, - grub_uint64_t in) -{ - if (arch->bigendian) - return grub_cpu_to_be64 (in); - else - return grub_cpu_to_le64 (in); -} - -static inline grub_uint32_t -grub_host_to_target32_real (const struct grub_module_verifier_arch *arch, - grub_uint32_t in) -{ - if (arch->bigendian) - return grub_cpu_to_be32 (in); - else - return grub_cpu_to_le32 (in); -} - -static inline grub_uint16_t -grub_target_to_host16_real (const struct grub_module_verifier_arch *arch, - grub_uint16_t in) -{ - if (arch->bigendian) - return grub_be_to_cpu16 (in); - else - return grub_le_to_cpu16 (in); -} - -static inline grub_uint16_t -grub_host_to_target16_real (const struct grub_module_verifier_arch *arch, - grub_uint16_t in) -{ - if (arch->bigendian) - return grub_cpu_to_be16 (in); - else - return grub_cpu_to_le16 (in); -} - -static inline grub_uint64_t -grub_host_to_target_addr_real (const struct grub_module_verifier_arch *arch, grub_uint64_t in) -{ - if (arch->voidp_sizeof == 8) - return grub_host_to_target64_real (arch, in); - else - return grub_host_to_target32_real (arch, in); -} - -static inline grub_uint64_t -grub_target_to_host_real (const struct grub_module_verifier_arch *arch, grub_uint64_t in) -{ - if (arch->voidp_sizeof == 8) - return grub_target_to_host64_real (arch, in); - else - return grub_target_to_host32_real (arch, in); -} - - -static Elf_Shdr * -find_section (const struct grub_module_verifier_arch *arch, Elf_Ehdr *e, const char *name) -{ - Elf_Shdr *s; - const char *str; - unsigned i; - - s = (Elf_Shdr *) ((char *) e + grub_target_to_host (e->e_shoff) + grub_target_to_host16 (e->e_shstrndx) * grub_target_to_host16 (e->e_shentsize)); - str = (char *) e + grub_target_to_host (s->sh_offset); - - for (i = 0, s = (Elf_Shdr *) ((char *) e + grub_target_to_host (e->e_shoff)); - i < grub_target_to_host16 (e->e_shnum); - i++, s = (Elf_Shdr *) ((char *) s + grub_target_to_host16 (e->e_shentsize))) - if (strcmp (str + grub_target_to_host32 (s->sh_name), name) == 0) - return s; - return NULL; -} - -static void -check_license (const char * const filename, - const struct grub_module_verifier_arch *arch, Elf_Ehdr *e) -{ - Elf_Shdr *s = find_section (arch, e, ".module_license"); - if (s && (strcmp ((char *) e + grub_target_to_host(s->sh_offset), "LICENSE=GPLv3") == 0 - || strcmp ((char *) e + grub_target_to_host(s->sh_offset), "LICENSE=GPLv3+") == 0 - || strcmp ((char *) e + grub_target_to_host(s->sh_offset), "LICENSE=GPLv2+") == 0)) - return; - grub_util_error ("%s: incompatible license", filename); -} - -static Elf_Sym * -get_symtab (const struct grub_module_verifier_arch *arch, Elf_Ehdr *e, Elf_Word *size, Elf_Word *entsize) -{ - unsigned i; - Elf_Shdr *s, *sections; - Elf_Sym *sym; - - sections = (Elf_Shdr *) ((char *) e + grub_target_to_host (e->e_shoff)); - for (i = 0, s = sections; - i < grub_target_to_host16 (e->e_shnum); - i++, s = (Elf_Shdr *) ((char *) s + grub_target_to_host16 (e->e_shentsize))) - if (grub_target_to_host32 (s->sh_type) == SHT_SYMTAB) - break; - - if (i == grub_target_to_host16 (e->e_shnum)) - return NULL; - - sym = (Elf_Sym *) ((char *) e + grub_target_to_host (s->sh_offset)); - *size = grub_target_to_host (s->sh_size); - *entsize = grub_target_to_host (s->sh_entsize); - return sym; -} - -static int -is_whitelisted (const char *modname, const char **whitelist) -{ - const char **ptr; - if (!whitelist) - return 0; - if (!modname) - return 0; - for (ptr = whitelist; *ptr; ptr++) - if (strcmp (modname, *ptr) == 0) - return 1; - return 0; -} - -static void -check_symbols (const struct grub_module_verifier_arch *arch, - Elf_Ehdr *e, const char *modname, - const char **whitelist_empty) -{ - Elf_Sym *sym; - Elf_Word size, entsize; - unsigned i; - - /* Module without symbol table and without .moddeps section is useless - at boot time, so catch it early to prevent build errors */ - sym = get_symtab (arch, e, &size, &entsize); - if (!sym) - { - Elf_Shdr *s; - - /* However some modules are dependencies-only, - e.g. insmod all_video pulls in all video drivers. - Some platforms e.g. xen have no video drivers, so - the module does nothing. */ - if (is_whitelisted (modname, whitelist_empty)) - return; - - s = find_section (arch, e, ".moddeps"); - - if (!s) - grub_util_error ("%s: no symbol table and no .moddeps section", modname); - - if (!s->sh_size) - grub_util_error ("%s: no symbol table and empty .moddeps section", modname); - - return; - } - - for (i = 0; - i < size / entsize; - i++, sym = (Elf_Sym *) ((char *) sym + entsize)) - { - unsigned char type = ELF_ST_TYPE (sym->st_info); - - switch (type) - { - case STT_NOTYPE: - case STT_OBJECT: - case STT_FUNC: - case STT_SECTION: - case STT_FILE: - break; - - default: - return grub_util_error ("%s: unknown symbol type `%d'", modname, (int) type); - } - } -} - -static int -is_symbol_local(Elf_Sym *sym) -{ - switch (ELF_ST_TYPE (sym->st_info)) - { - case STT_NOTYPE: - case STT_OBJECT: - if (sym->st_name != 0 && sym->st_shndx == 0) - return 0; - return 1; - - case STT_FUNC: - case STT_SECTION: - return 1; - - default: - return 0; - } -} - -static void -section_check_relocations (const char * const modname, - const struct grub_module_verifier_arch *arch, void *ehdr, - Elf_Shdr *s, size_t target_seg_size) -{ - Elf_Rel *rel, *max; - Elf_Sym *symtab; - Elf_Word symtabsize, symtabentsize; - - symtab = get_symtab (arch, ehdr, &symtabsize, &symtabentsize); - if (!symtab) - grub_util_error ("%s: relocation without symbol table", modname); - - for (rel = (Elf_Rel *) ((char *) ehdr + grub_target_to_host (s->sh_offset)), - max = (Elf_Rel *) ((char *) rel + grub_target_to_host (s->sh_size)); - rel < max; - rel = (Elf_Rel *) ((char *) rel + grub_target_to_host (s->sh_entsize))) - { - Elf_Sym *sym; - unsigned i; - - if (target_seg_size < grub_target_to_host (rel->r_offset)) - grub_util_error ("%s: reloc offset is out of the segment", modname); - - grub_uint32_t type = ELF_R_TYPE (grub_target_to_host (rel->r_info)); - - if (arch->machine == EM_SPARCV9) - type &= 0xff; - - for (i = 0; arch->supported_relocations[i] != -1; i++) - if (type == arch->supported_relocations[i]) - break; - if (arch->supported_relocations[i] != -1) - continue; - if (!arch->short_relocations) - grub_util_error ("%s: unsupported relocation 0x%x", modname, type); - for (i = 0; arch->short_relocations[i] != -1; i++) - if (type == arch->short_relocations[i]) - break; - if (arch->short_relocations[i] == -1) - grub_util_error ("%s: unsupported relocation 0x%x", modname, type); - sym = (Elf_Sym *) ((char *) symtab + symtabentsize * ELF_R_SYM (grub_target_to_host (rel->r_info))); - - if (is_symbol_local (sym)) - continue; - grub_util_error ("%s: relocation 0x%x is not module-local", modname, type); - } -#if defined(MODULEVERIFIER_ELF64) - if (arch->machine == EM_AARCH64) - { - unsigned unmatched_adr_got_page = 0; - Elf_Rela *rel2; - for (rel = (Elf_Rel *) ((char *) ehdr + grub_target_to_host (s->sh_offset)), - max = (Elf_Rel *) ((char *) rel + grub_target_to_host (s->sh_size)); - rel < max; - rel = (Elf_Rel *) ((char *) rel + grub_target_to_host (s->sh_entsize))) - { - switch (ELF_R_TYPE (grub_target_to_host (rel->r_info))) - { - case R_AARCH64_ADR_GOT_PAGE: - unmatched_adr_got_page++; - for (rel2 = (Elf_Rela *) ((char *) rel + grub_target_to_host (s->sh_entsize)); - rel2 < (Elf_Rela *) max; - rel2 = (Elf_Rela *) ((char *) rel2 + grub_target_to_host (s->sh_entsize))) - if (ELF_R_SYM (rel2->r_info) - == ELF_R_SYM (rel->r_info) - && ((Elf_Rela *) rel)->r_addend == rel2->r_addend - && ELF_R_TYPE (rel2->r_info) == R_AARCH64_LD64_GOT_LO12_NC) - break; - if (rel2 >= (Elf_Rela *) max) - grub_util_error ("%s: ADR_GOT_PAGE without matching LD64_GOT_LO12_NC", modname); - break; - case R_AARCH64_LD64_GOT_LO12_NC: - if (unmatched_adr_got_page == 0) - grub_util_error ("%s: LD64_GOT_LO12_NC without matching ADR_GOT_PAGE", modname); - unmatched_adr_got_page--; - break; - } - } - } -#endif -} - -static void -check_relocations (const char * const modname, - const struct grub_module_verifier_arch *arch, Elf_Ehdr *e) -{ - Elf_Shdr *s; - unsigned i; - - for (i = 0, s = (Elf_Shdr *) ((char *) e + grub_target_to_host (e->e_shoff)); - i < grub_target_to_host16 (e->e_shnum); - i++, s = (Elf_Shdr *) ((char *) s + grub_target_to_host16 (e->e_shentsize))) - if (grub_target_to_host32 (s->sh_type) == SHT_REL || grub_target_to_host32 (s->sh_type) == SHT_RELA) - { - Elf_Shdr *ts; - - if (grub_target_to_host32 (s->sh_type) == SHT_REL && !(arch->flags & GRUB_MODULE_VERIFY_SUPPORTS_REL)) - grub_util_error ("%s: unsupported SHT_REL", modname); - if (grub_target_to_host32 (s->sh_type) == SHT_RELA && !(arch->flags & GRUB_MODULE_VERIFY_SUPPORTS_RELA)) - grub_util_error ("%s: unsupported SHT_RELA", modname); - - /* Find the target segment. */ - if (grub_target_to_host32 (s->sh_info) >= grub_target_to_host16 (e->e_shnum)) - grub_util_error ("%s: orphaned reloc section", modname); - ts = (Elf_Shdr *) ((char *) e + grub_target_to_host (e->e_shoff) + grub_target_to_host32 (s->sh_info) * grub_target_to_host16 (e->e_shentsize)); - - section_check_relocations (modname, arch, e, s, grub_target_to_host (ts->sh_size)); - } -} - -void -SUFFIX(grub_module_verify) (const char * const filename, - void *module_img, size_t size, - const struct grub_module_verifier_arch *arch, - const char **whitelist_empty) -{ - Elf_Ehdr *e = module_img; - - /* Check the header size. */ - if (size < sizeof (Elf_Ehdr)) - grub_util_error ("%s: ELF header smaller than expected", filename); - - /* Check the magic numbers. */ - if (e->e_ident[EI_MAG0] != ELFMAG0 - || e->e_ident[EI_MAG1] != ELFMAG1 - || e->e_ident[EI_MAG2] != ELFMAG2 - || e->e_ident[EI_MAG3] != ELFMAG3 - || e->e_ident[EI_VERSION] != EV_CURRENT - || grub_target_to_host32 (e->e_version) != EV_CURRENT) - grub_util_error ("%s: invalid arch-independent ELF magic", filename); - - if (e->e_ident[EI_CLASS] != ELFCLASSXX - || e->e_ident[EI_DATA] != (arch->bigendian ? ELFDATA2MSB : ELFDATA2LSB) - || grub_target_to_host16 (e->e_machine) != arch->machine) - grub_util_error ("%s: invalid arch-dependent ELF magic", filename); - - if (grub_target_to_host16 (e->e_type) != ET_REL) - { - grub_util_error ("%s: this ELF file is not of the right type", filename); - } - - /* Make sure that every section is within the core. */ - if (size < grub_target_to_host (e->e_shoff) - + (grub_uint32_t) grub_target_to_host16 (e->e_shentsize) * grub_target_to_host16(e->e_shnum)) - { - grub_util_error ("%s: ELF sections outside core", filename); - } - - check_license (filename, arch, e); - - Elf_Shdr *s; - const char *modname; - - s = find_section (arch, e, ".modname"); - if (!s) - grub_util_error ("%s: no module name found", filename); - - modname = (const char *) e + grub_target_to_host (s->sh_offset); - - check_symbols(arch, e, modname, whitelist_empty); - check_relocations(modname, arch, e); -} diff --git a/thirdparty/grub-2.04/util/grub-mount.c b/thirdparty/grub-2.04/util/grub-mount.c deleted file mode 100644 index d7be2a427..000000000 --- a/thirdparty/grub-2.04/util/grub-mount.c +++ /dev/null @@ -1,620 +0,0 @@ -/* grub-mount.c - FUSE driver for filesystems that GRUB understands */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2008,2009,2010 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ -#define FUSE_USE_VERSION 26 -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#include -#include -#include -#include - -#pragma GCC diagnostic ignored "-Wmissing-prototypes" -#pragma GCC diagnostic ignored "-Wmissing-declarations" -#include -#pragma GCC diagnostic error "-Wmissing-prototypes" -#pragma GCC diagnostic error "-Wmissing-declarations" - -#include "progname.h" - -static const char *root = NULL; -grub_device_t dev = NULL; -grub_fs_t fs = NULL; -static char **images = NULL; -static char *debug_str = NULL; -static char **fuse_args = NULL; -static int fuse_argc = 0; -static int num_disks = 0; -static int mount_crypt = 0; - -static grub_err_t -execute_command (const char *name, int n, char **args) -{ - grub_command_t cmd; - - cmd = grub_command_find (name); - if (! cmd) - grub_util_error (_("can't find command `%s'"), name); - - return (cmd->func) (cmd, n, args); -} - -/* Translate GRUB error numbers into OS error numbers. Print any unexpected - errors. */ -static int -translate_error (void) -{ - int ret; - - switch (grub_errno) - { - case GRUB_ERR_NONE: - ret = 0; - break; - - case GRUB_ERR_OUT_OF_MEMORY: - grub_print_error (); - ret = -ENOMEM; - break; - - case GRUB_ERR_BAD_FILE_TYPE: - /* This could also be EISDIR. Take a guess. */ - ret = -ENOTDIR; - break; - - case GRUB_ERR_FILE_NOT_FOUND: - ret = -ENOENT; - break; - - case GRUB_ERR_FILE_READ_ERROR: - case GRUB_ERR_READ_ERROR: - case GRUB_ERR_IO: - grub_print_error (); - ret = -EIO; - break; - - case GRUB_ERR_SYMLINK_LOOP: - ret = -ELOOP; - break; - - default: - grub_print_error (); - ret = -EINVAL; - break; - } - - /* Any previous errors were handled. */ - grub_errno = GRUB_ERR_NONE; - - return ret; -} - -/* Context for fuse_getattr. */ -struct fuse_getattr_ctx -{ - char *filename; - struct grub_dirhook_info file_info; - int file_exists; -}; - -/* A hook for iterating directories. */ -static int -fuse_getattr_find_file (const char *cur_filename, - const struct grub_dirhook_info *info, void *data) -{ - struct fuse_getattr_ctx *ctx = data; - - if ((info->case_insensitive ? grub_strcasecmp (cur_filename, ctx->filename) - : grub_strcmp (cur_filename, ctx->filename)) == 0) - { - ctx->file_info = *info; - ctx->file_exists = 1; - return 1; - } - return 0; -} - -static int -fuse_getattr (const char *path, struct stat *st) -{ - struct fuse_getattr_ctx ctx; - char *pathname, *path2; - - if (path[0] == '/' && path[1] == 0) - { - st->st_dev = 0; - st->st_ino = 0; - st->st_mode = 0555 | S_IFDIR; - st->st_uid = 0; - st->st_gid = 0; - st->st_rdev = 0; - st->st_size = 0; - st->st_blksize = 512; - st->st_blocks = (st->st_blksize + 511) >> 9; - st->st_atime = st->st_mtime = st->st_ctime = 0; - return 0; - } - - ctx.file_exists = 0; - - pathname = xstrdup (path); - - /* Remove trailing '/'. */ - while (*pathname && pathname[grub_strlen (pathname) - 1] == '/') - pathname[grub_strlen (pathname) - 1] = 0; - - /* Split into path and filename. */ - ctx.filename = grub_strrchr (pathname, '/'); - if (! ctx.filename) - { - path2 = grub_strdup ("/"); - ctx.filename = pathname; - } - else - { - ctx.filename++; - path2 = grub_strdup (pathname); - path2[ctx.filename - pathname] = 0; - } - - /* It's the whole device. */ - (fs->fs_dir) (dev, path2, fuse_getattr_find_file, &ctx); - - grub_free (path2); - if (!ctx.file_exists) - { - grub_errno = GRUB_ERR_NONE; - return -ENOENT; - } - st->st_dev = 0; - st->st_ino = 0; - st->st_mode = ctx.file_info.dir ? (0555 | S_IFDIR) : (0444 | S_IFREG); - st->st_uid = 0; - st->st_gid = 0; - st->st_rdev = 0; - st->st_size = 0; - if (!ctx.file_info.dir) - { - grub_file_t file; - file = grub_file_open (path, GRUB_FILE_TYPE_GET_SIZE); - if (! file && grub_errno == GRUB_ERR_BAD_FILE_TYPE) - { - grub_errno = GRUB_ERR_NONE; - st->st_mode = (0555 | S_IFDIR); - } - else if (! file) - return translate_error (); - else - { - st->st_size = file->size; - grub_file_close (file); - } - } - st->st_blksize = 512; - st->st_blocks = (st->st_size + 511) >> 9; - st->st_atime = st->st_mtime = st->st_ctime = ctx.file_info.mtimeset - ? ctx.file_info.mtime : 0; - grub_errno = GRUB_ERR_NONE; - return 0; -} - -static int -fuse_opendir (const char *path, struct fuse_file_info *fi) -{ - return 0; -} - -/* FIXME */ -static grub_file_t files[65536]; -static int first_fd = 1; - -static int -fuse_open (const char *path, struct fuse_file_info *fi __attribute__ ((unused))) -{ - grub_file_t file; - file = grub_file_open (path, GRUB_FILE_TYPE_MOUNT); - if (! file) - return translate_error (); - files[first_fd++] = file; - fi->fh = first_fd; - files[first_fd++] = file; - grub_errno = GRUB_ERR_NONE; - return 0; -} - -static int -fuse_read (const char *path, char *buf, size_t sz, off_t off, - struct fuse_file_info *fi) -{ - grub_file_t file = files[fi->fh]; - grub_ssize_t size; - - if (off > file->size) - return -EINVAL; - - file->offset = off; - - size = grub_file_read (file, buf, sz); - if (size < 0) - return translate_error (); - else - { - grub_errno = GRUB_ERR_NONE; - return size; - } -} - -static int -fuse_release (const char *path, struct fuse_file_info *fi) -{ - grub_file_close (files[fi->fh]); - files[fi->fh] = NULL; - grub_errno = GRUB_ERR_NONE; - return 0; -} - -/* Context for fuse_readdir. */ -struct fuse_readdir_ctx -{ - const char *path; - void *buf; - fuse_fill_dir_t fill; -}; - -/* Helper for fuse_readdir. */ -static int -fuse_readdir_call_fill (const char *filename, - const struct grub_dirhook_info *info, void *data) -{ - struct fuse_readdir_ctx *ctx = data; - struct stat st; - - grub_memset (&st, 0, sizeof (st)); - st.st_mode = info->dir ? (0555 | S_IFDIR) : (0444 | S_IFREG); - if (!info->dir) - { - grub_file_t file; - char *tmp; - tmp = xasprintf ("%s/%s", ctx->path, filename); - file = grub_file_open (tmp, GRUB_FILE_TYPE_GET_SIZE); - free (tmp); - /* Symlink to directory. */ - if (! file && grub_errno == GRUB_ERR_BAD_FILE_TYPE) - { - grub_errno = GRUB_ERR_NONE; - st.st_mode = (0555 | S_IFDIR); - } - else if (!file) - { - grub_errno = GRUB_ERR_NONE; - } - else - { - st.st_size = file->size; - grub_file_close (file); - } - } - st.st_blksize = 512; - st.st_blocks = (st.st_size + 511) >> 9; - st.st_atime = st.st_mtime = st.st_ctime - = info->mtimeset ? info->mtime : 0; - ctx->fill (ctx->buf, filename, &st, 0); - return 0; -} - -static int -fuse_readdir (const char *path, void *buf, - fuse_fill_dir_t fill, off_t off, struct fuse_file_info *fi) -{ - struct fuse_readdir_ctx ctx = { - .path = path, - .buf = buf, - .fill = fill - }; - char *pathname; - - pathname = xstrdup (path); - - /* Remove trailing '/'. */ - while (pathname [0] && pathname[1] - && pathname[grub_strlen (pathname) - 1] == '/') - pathname[grub_strlen (pathname) - 1] = 0; - - (fs->fs_dir) (dev, pathname, fuse_readdir_call_fill, &ctx); - free (pathname); - grub_errno = GRUB_ERR_NONE; - return 0; -} - -struct fuse_operations grub_opers = { - .getattr = fuse_getattr, - .open = fuse_open, - .release = fuse_release, - .opendir = fuse_opendir, - .readdir = fuse_readdir, - .read = fuse_read -}; - -static grub_err_t -fuse_init (void) -{ - int i; - - for (i = 0; i < num_disks; i++) - { - char *argv[2]; - char *host_file; - char *loop_name; - loop_name = grub_xasprintf ("loop%d", i); - if (!loop_name) - grub_util_error ("%s", grub_errmsg); - - host_file = grub_xasprintf ("(host)%s", images[i]); - if (!host_file) - grub_util_error ("%s", grub_errmsg); - - argv[0] = loop_name; - argv[1] = host_file; - - if (execute_command ("loopback", 2, argv)) - grub_util_error (_("`loopback' command fails: %s"), grub_errmsg); - - grub_free (loop_name); - grub_free (host_file); - } - - if (mount_crypt) - { - char *argv[2] = { xstrdup ("-a"), NULL}; - if (execute_command ("cryptomount", 1, argv)) - grub_util_error (_("`cryptomount' command fails: %s"), - grub_errmsg); - free (argv[0]); - } - - grub_lvm_fini (); - grub_mdraid09_fini (); - grub_mdraid1x_fini (); - grub_diskfilter_fini (); - grub_diskfilter_init (); - grub_mdraid09_init (); - grub_mdraid1x_init (); - grub_lvm_init (); - - dev = grub_device_open (0); - if (! dev) - return grub_errno; - - fs = grub_fs_probe (dev); - if (! fs) - { - grub_device_close (dev); - return grub_errno; - } - - if (fuse_main (fuse_argc, fuse_args, &grub_opers, NULL)) - grub_error (GRUB_ERR_IO, "fuse_main failed"); - - for (i = 0; i < num_disks; i++) - { - char *argv[2]; - char *loop_name; - - loop_name = grub_xasprintf ("loop%d", i); - if (!loop_name) - grub_util_error ("%s", grub_errmsg); - - argv[0] = xstrdup ("-d"); - argv[1] = loop_name; - - execute_command ("loopback", 2, argv); - - grub_free (argv[0]); - grub_free (loop_name); - } - - return grub_errno; -} - -static struct argp_option options[] = { - {"root", 'r', N_("DEVICE_NAME"), 0, N_("Set root device."), 2}, - {"debug", 'd', N_("STRING"), 0, N_("Set debug environment variable."), 2}, - {"crypto", 'C', NULL, 0, N_("Mount crypto devices."), 2}, - {"zfs-key", 'K', - /* TRANSLATORS: "prompt" is a keyword. */ - N_("FILE|prompt"), 0, N_("Load zfs crypto key."), 2}, - {"verbose", 'v', NULL, 0, N_("print verbose messages."), 2}, - {0, 0, 0, 0, 0, 0} -}; - -/* Print the version information. */ -static void -print_version (FILE *stream, struct argp_state *state) -{ - fprintf (stream, "%s (%s) %s\n", program_name, PACKAGE_NAME, PACKAGE_VERSION); -} -void (*argp_program_version_hook) (FILE *, struct argp_state *) = print_version; - -static error_t -argp_parser (int key, char *arg, struct argp_state *state) -{ - switch (key) - { - case 'r': - root = arg; - return 0; - - case 'K': - if (strcmp (arg, "prompt") == 0) - { - char buf[1024]; - grub_printf ("%s", _("Enter ZFS password: ")); - if (grub_password_get (buf, 1023)) - { - grub_zfs_add_key ((grub_uint8_t *) buf, grub_strlen (buf), 1); - } - } - else - { - FILE *f; - ssize_t real_size; - grub_uint8_t buf[1024]; - f = grub_util_fopen (arg, "rb"); - if (!f) - { - printf (_("%s: error:"), program_name); - printf (_("cannot open `%s': %s"), arg, strerror (errno)); - printf ("\n"); - return 0; - } - real_size = fread (buf, 1, 1024, f); - if (real_size < 0) - { - printf (_("%s: error:"), program_name); - printf (_("cannot read `%s': %s"), arg, - strerror (errno)); - printf ("\n"); - fclose (f); - return 0; - } - grub_zfs_add_key (buf, real_size, 0); - fclose (f); - } - return 0; - - case 'C': - mount_crypt = 1; - return 0; - - case 'd': - debug_str = arg; - return 0; - - case 'v': - verbosity++; - return 0; - - case ARGP_KEY_ARG: - if (arg[0] != '-') - break; - - /* FALLTHROUGH */ - default: - if (!arg) - return 0; - - fuse_args = xrealloc (fuse_args, (fuse_argc + 1) * sizeof (fuse_args[0])); - fuse_args[fuse_argc] = xstrdup (arg); - fuse_argc++; - return 0; - } - - images = xrealloc (images, (num_disks + 1) * sizeof (images[0])); - images[num_disks] = grub_canonicalize_file_name (arg); - num_disks++; - - return 0; -} - -struct argp argp = { - options, argp_parser, N_("IMAGE1 [IMAGE2 ...] MOUNTPOINT"), - N_("Debug tool for filesystem driver."), - NULL, NULL, NULL -}; - -int -main (int argc, char *argv[]) -{ - const char *default_root; - char *alloc_root; - - grub_util_host_init (&argc, &argv); - - fuse_args = xrealloc (fuse_args, (fuse_argc + 2) * sizeof (fuse_args[0])); - fuse_args[fuse_argc] = xstrdup (argv[0]); - fuse_argc++; - /* Run single-threaded. */ - fuse_args[fuse_argc] = xstrdup ("-s"); - fuse_argc++; - - argp_parse (&argp, argc, argv, 0, 0, 0); - - if (num_disks < 2) - grub_util_error ("%s", _("need an image and mountpoint")); - fuse_args = xrealloc (fuse_args, (fuse_argc + 2) * sizeof (fuse_args[0])); - fuse_args[fuse_argc] = images[num_disks - 1]; - fuse_argc++; - num_disks--; - fuse_args[fuse_argc] = NULL; - - /* Initialize all modules. */ - grub_init_all (); - - if (debug_str) - grub_env_set ("debug", debug_str); - - default_root = (num_disks == 1) ? "loop0" : "md0"; - alloc_root = 0; - if (root) - { - if ((*root >= '0') && (*root <= '9')) - { - alloc_root = xmalloc (strlen (default_root) + strlen (root) + 2); - - sprintf (alloc_root, "%s,%s", default_root, root); - root = alloc_root; - } - } - else - root = default_root; - - grub_env_set ("root", root); - - if (alloc_root) - free (alloc_root); - - /* Do it. */ - fuse_init (); - if (grub_errno) - { - grub_print_error (); - return 1; - } - - /* Free resources. */ - grub_fini_all (); - - return 0; -} diff --git a/thirdparty/grub-2.04/util/grub-pe2elf.c b/thirdparty/grub-2.04/util/grub-pe2elf.c deleted file mode 100644 index 0d4084a10..000000000 --- a/thirdparty/grub-2.04/util/grub-pe2elf.c +++ /dev/null @@ -1,575 +0,0 @@ -/* grub-pe2elf.c - tool to convert pe image to elf. */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2008,2009 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include - -#include -#include -#include -#include -#include - - -/* Please don't internationalise this file. It's pointless. */ - -/* - * Section layout - * - * null - * .text - * .rdata - * .data - * .bss - * .modname - * .moddeps - * .symtab - * .strtab - * relocation sections - */ - -#if GRUB_TARGET_WORDSIZE == 64 -typedef Elf64_Rela elf_reloc_t; -#define GRUB_PE32_MACHINE GRUB_PE32_MACHINE_X86_64 -#else -typedef Elf32_Rel elf_reloc_t; -#define GRUB_PE32_MACHINE GRUB_PE32_MACHINE_I386 -#endif - -#define STRTAB_BLOCK 256 - -static char *strtab; -static int strtab_max, strtab_len; - -static Elf_Ehdr ehdr; -static Elf_Shdr *shdr; -static int num_sections, first_reloc_section, reloc_sections_end, symtab_section, strtab_section; -static grub_uint32_t offset, image_base; - -static int -insert_string (const char *name) -{ - int len, result; - - if (*name == '_') - name++; - - len = strlen (name); - if (strtab_len + len >= strtab_max) - { - strtab_max += STRTAB_BLOCK; - strtab = xrealloc (strtab, strtab_max); - } - - strcpy (strtab + strtab_len, name); - result = strtab_len; - strtab_len += len + 1; - - return result; -} - -static int * -write_section_data (FILE* fp, const char *name, char *image, - struct grub_pe32_coff_header *pe_chdr, - struct grub_pe32_section_table *pe_shdr) -{ - int *section_map; - int i; - grub_uint32_t last_category = 0; - grub_uint32_t idx, idx_reloc; - char *pe_strtab = (image + pe_chdr->symtab_offset - + pe_chdr->num_symbols * sizeof (struct grub_pe32_symbol)); - - section_map = xmalloc ((2 * pe_chdr->num_sections + 5) * sizeof (int)); - section_map[0] = 0; - shdr = xmalloc ((2 * pe_chdr->num_sections + 5) * sizeof (shdr[0])); - idx = 1; - idx_reloc = pe_chdr->num_sections + 1; - - for (i = 0; i < pe_chdr->num_sections; i++, pe_shdr++) - { - grub_uint32_t category; - const char *shname = pe_shdr->name; - grub_size_t secsize; - - if (shname[0] == '/' && grub_isdigit (shname[1])) - { - char t[sizeof (pe_shdr->name) + 1]; - memcpy (t, shname, sizeof (pe_shdr->name)); - t[sizeof (pe_shdr->name)] = 0; - shname = pe_strtab + atoi (t + 1); - } - - secsize = pe_shdr->raw_data_size; - - shdr[idx].sh_type = SHT_PROGBITS; - - if (! strcmp (shname, ".text")) - { - category = 0; - shdr[idx].sh_flags = SHF_ALLOC | SHF_EXECINSTR; - } - else if (! strncmp (shname, ".rdata", 6)) - { - category = 1; - shdr[idx].sh_flags = SHF_ALLOC; - } - else if (! strcmp (shname, ".data")) - { - category = 2; - shdr[idx].sh_flags = SHF_ALLOC | SHF_WRITE; - } - else if (! strcmp (shname, ".bss")) - { - category = 3; - shdr[idx].sh_type = SHT_NOBITS; - shdr[idx].sh_flags = SHF_ALLOC | SHF_WRITE; - if (secsize < pe_shdr->virtual_size) - secsize = pe_shdr->virtual_size; - } - else if (strcmp (shname, ".modname") == 0 || strcmp (shname, ".moddeps") == 0 - || strcmp (shname, ".module_license") == 0) - category = 4; - else - { - section_map[i + 1] = -1; - continue; - } - - if (category < last_category) - grub_util_error ("out of order sections"); - - section_map[i + 1] = idx; - - if (pe_shdr->virtual_size - && pe_shdr->virtual_size < secsize) - secsize = pe_shdr->virtual_size; - - shdr[idx].sh_size = secsize; - shdr[idx].sh_addralign = 1 << (((pe_shdr->characteristics >> - GRUB_PE32_SCN_ALIGN_SHIFT) & - GRUB_PE32_SCN_ALIGN_MASK) - 1); - shdr[idx].sh_addr = pe_shdr->virtual_address + image_base; - - if (shdr[idx].sh_type != SHT_NOBITS) - { - shdr[idx].sh_offset = offset; - grub_util_write_image_at (image + pe_shdr->raw_data_offset, - pe_shdr->raw_data_size, offset, fp, - shname); - - offset += secsize; - } - - if (pe_shdr->relocations_offset) - { - char relname[5 + strlen (shname)]; - - sprintf (relname, ".rel%s", shname); - - shdr[idx_reloc].sh_name = insert_string (relname); - shdr[idx_reloc].sh_link = i; - shdr[idx_reloc].sh_info = idx; - - shdr[idx].sh_name = shdr[idx_reloc].sh_name + 4; - - idx_reloc++; - } - else - shdr[idx].sh_name = insert_string (shname); - idx++; - } - - idx_reloc -= pe_chdr->num_sections + 1; - num_sections = idx + idx_reloc + 2; - first_reloc_section = idx; - reloc_sections_end = idx + idx_reloc; - memmove (shdr + idx, shdr + pe_chdr->num_sections + 1, - idx_reloc * sizeof (shdr[0])); - memset (shdr + idx + idx_reloc, 0, 3 * sizeof (shdr[0])); - memset (shdr, 0, sizeof (shdr[0])); - - symtab_section = idx + idx_reloc; - strtab_section = idx + idx_reloc + 1; - - return section_map; -} - -static void -write_reloc_section (FILE* fp, const char *name, char *image, - struct grub_pe32_coff_header *pe_chdr, - struct grub_pe32_section_table *pe_shdr, - Elf_Sym *symtab, - int *symtab_map) -{ - int i; - - for (i = first_reloc_section; i < reloc_sections_end; i++) - { - struct grub_pe32_section_table *pe_sec; - struct grub_pe32_reloc *pe_rel; - elf_reloc_t *rel; - int num_rels, j, modified; - - pe_sec = pe_shdr + shdr[i].sh_link; - pe_rel = (struct grub_pe32_reloc *) (image + pe_sec->relocations_offset); - rel = (elf_reloc_t *) xmalloc (pe_sec->num_relocations * sizeof (elf_reloc_t)); - num_rels = 0; - modified = 0; - - for (j = 0; j < pe_sec->num_relocations; j++, pe_rel++) - { - int type; - grub_uint32_t ofs, *addr; - - if ((pe_rel->symtab_index >= pe_chdr->num_symbols) || - (symtab_map[pe_rel->symtab_index] == -1)) - grub_util_error ("invalid symbol"); - - ofs = pe_rel->offset - pe_sec->virtual_address; - addr = (grub_uint32_t *)(image + pe_sec->raw_data_offset + ofs); - - switch (pe_rel->type) - { -#if GRUB_TARGET_WORDSIZE == 64 - case 1: - type = R_X86_64_64; - rel[num_rels].r_addend = *(grub_int64_t *)addr; - *(grub_int64_t *)addr = 0; - modified = 1; - break; - case 4: - type = R_X86_64_PC32; - rel[num_rels].r_addend = *(grub_int32_t *)addr; - *addr = 0; - modified = 1; - break; - case 14: - type = R_X86_64_PC64; - rel[num_rels].r_addend = *(grub_uint64_t *)addr - 8; - *(grub_uint64_t *)addr = 0; - modified = 1; - break; -#else - case GRUB_PE32_REL_I386_DIR32: - type = R_386_32; - break; - case GRUB_PE32_REL_I386_REL32: - type = R_386_PC32; - break; -#endif - default: - grub_util_error ("unknown pe relocation type %d", pe_rel->type); - } - - if (type == -#if GRUB_TARGET_WORDSIZE == 64 - R_386_PC32 -#else - R_X86_64_PC32 -#endif - - ) - { - unsigned char code; - - code = image[pe_sec->raw_data_offset + ofs - 1]; - -#if GRUB_TARGET_WORDSIZE == 32 - if (((code != 0xe8) && (code != 0xe9)) || (*addr)) - grub_util_error ("invalid relocation (%x %x)", code, *addr); -#endif - - if (symtab[symtab_map[pe_rel->symtab_index]].st_shndx - && symtab[symtab_map[pe_rel->symtab_index]].st_shndx - == shdr[i].sh_info) - { - modified = 1; - *addr += (symtab[symtab_map[pe_rel->symtab_index]].st_value - - ofs - 4); - - continue; - } - else - { -#if GRUB_TARGET_WORDSIZE == 64 - rel[num_rels].r_addend -= 4; -#else - modified = 1; - *addr = -4; -#endif - } - } - - rel[num_rels].r_offset = ofs; - rel[num_rels].r_info = ELF_R_INFO (symtab_map[pe_rel->symtab_index], - type); - num_rels++; - } - - if (modified) - grub_util_write_image_at (image + pe_sec->raw_data_offset, - shdr[shdr[i].sh_info].sh_size, - shdr[shdr[i].sh_info].sh_offset, - fp, name); - -#if GRUB_TARGET_WORDSIZE == 64 - shdr[i].sh_type = SHT_RELA; -#else - shdr[i].sh_type = SHT_REL; -#endif - shdr[i].sh_offset = offset; - shdr[i].sh_link = symtab_section; - shdr[i].sh_addralign = 4; - shdr[i].sh_entsize = sizeof (elf_reloc_t); - shdr[i].sh_size = num_rels * sizeof (elf_reloc_t); - - grub_util_write_image_at (rel, shdr[i].sh_size, offset, fp, name); - offset += shdr[i].sh_size; - free (rel); - } -} - -static void -write_symbol_table (FILE* fp, const char *name, char *image, - struct grub_pe32_coff_header *pe_chdr, - struct grub_pe32_section_table *pe_shdr, - int *section_map) -{ - struct grub_pe32_symbol *pe_symtab; - char *pe_strtab; - Elf_Sym *symtab; - int *symtab_map, num_syms; - int i; - - pe_symtab = (struct grub_pe32_symbol *) (image + pe_chdr->symtab_offset); - pe_strtab = (char *) (pe_symtab + pe_chdr->num_symbols); - - symtab = (Elf_Sym *) xmalloc ((pe_chdr->num_symbols + 1) * - sizeof (Elf_Sym)); - memset (symtab, 0, (pe_chdr->num_symbols + 1) * sizeof (Elf_Sym)); - num_syms = 1; - - symtab_map = (int *) xmalloc (pe_chdr->num_symbols * sizeof (int)); - - for (i = 0; i < (int) pe_chdr->num_symbols; - i += pe_symtab->num_aux + 1, pe_symtab += pe_symtab->num_aux + 1) - { - int bind, type; - - symtab_map[i] = -1; - if ((pe_symtab->section > pe_chdr->num_sections) || - (section_map[pe_symtab->section] == -1)) - continue; - - if (! pe_symtab->section) - type = STT_NOTYPE; - else if (pe_symtab->type == GRUB_PE32_DT_FUNCTION) - type = STT_FUNC; - else - type = STT_OBJECT; - - if (pe_symtab->storage_class == GRUB_PE32_SYM_CLASS_EXTERNAL) - bind = STB_GLOBAL; - else - bind = STB_LOCAL; - - if ((pe_symtab->type != GRUB_PE32_DT_FUNCTION) && (pe_symtab->num_aux)) - { - if (! pe_symtab->value) - type = STT_SECTION; - - symtab[num_syms].st_name = shdr[section_map[pe_symtab->section]].sh_name; - } - else - { - char short_name[9]; - char *symname; - - if (pe_symtab->long_name[0]) - { - strncpy (short_name, pe_symtab->short_name, 8); - short_name[8] = 0; - symname = short_name; - } - else - symname = pe_strtab + pe_symtab->long_name[1]; - - if ((strcmp (symname, "_grub_mod_init")) && - (strcmp (symname, "_grub_mod_fini")) && - (strcmp (symname, "grub_mod_init")) && - (strcmp (symname, "grub_mod_fini")) && - (bind == STB_LOCAL)) - continue; - - symtab[num_syms].st_name = insert_string (symname); - } - - symtab[num_syms].st_shndx = section_map[pe_symtab->section]; - symtab[num_syms].st_value = pe_symtab->value; - symtab[num_syms].st_info = ELF_ST_INFO (bind, type); - - symtab_map[i] = num_syms; - num_syms++; - } - - write_reloc_section (fp, name, image, pe_chdr, pe_shdr, - symtab, symtab_map); - - shdr[symtab_section].sh_name = insert_string (".symtab"); - shdr[symtab_section].sh_type = SHT_SYMTAB; - shdr[symtab_section].sh_offset = offset; - shdr[symtab_section].sh_size = num_syms * sizeof (Elf_Sym); - shdr[symtab_section].sh_entsize = sizeof (Elf_Sym); - shdr[symtab_section].sh_link = strtab_section; - shdr[symtab_section].sh_addralign = 4; - - grub_util_write_image_at (symtab, shdr[symtab_section].sh_size, - offset, fp, name); - offset += shdr[symtab_section].sh_size; - - free (symtab); - free (symtab_map); -} - -static void -write_string_table (FILE *fp, const char *name) -{ - shdr[strtab_section].sh_name = insert_string (".strtab"); - shdr[strtab_section].sh_type = SHT_STRTAB; - shdr[strtab_section].sh_offset = offset; - shdr[strtab_section].sh_size = strtab_len; - shdr[strtab_section].sh_addralign = 1; - grub_util_write_image_at (strtab, strtab_len, offset, fp, - name); - offset += strtab_len; - - free (strtab); -} - -static void -write_section_header (FILE *fp, const char *name) -{ - ehdr.e_ident[EI_MAG0] = ELFMAG0; - ehdr.e_ident[EI_MAG1] = ELFMAG1; - ehdr.e_ident[EI_MAG2] = ELFMAG2; - ehdr.e_ident[EI_MAG3] = ELFMAG3; - ehdr.e_ident[EI_VERSION] = EV_CURRENT; - ehdr.e_version = EV_CURRENT; - ehdr.e_type = ET_REL; - -#if GRUB_TARGET_WORDSIZE == 64 - ehdr.e_ident[EI_CLASS] = ELFCLASS64; - ehdr.e_ident[EI_DATA] = ELFDATA2LSB; - ehdr.e_machine = EM_X86_64; -#else - ehdr.e_ident[EI_CLASS] = ELFCLASS32; - ehdr.e_ident[EI_DATA] = ELFDATA2LSB; - ehdr.e_machine = EM_386; -#endif - ehdr.e_ehsize = sizeof (ehdr); - ehdr.e_shentsize = sizeof (Elf_Shdr); - ehdr.e_shstrndx = strtab_section; - - ehdr.e_shoff = offset; - ehdr.e_shnum = num_sections; - grub_util_write_image_at (shdr, sizeof (Elf_Shdr) * num_sections, - offset, fp, name); - - grub_util_write_image_at (&ehdr, sizeof (Elf_Ehdr), 0, fp, name); -} - -static void -convert_pe (FILE* fp, const char *name, char *image) -{ - struct grub_pe32_coff_header *pe_chdr; - struct grub_pe32_section_table *pe_shdr; - int *section_map; - - if (image[0] == 'M' && image[1] == 'Z') - pe_chdr = (struct grub_pe32_coff_header *) (image + (grub_le_to_cpu32 (((grub_uint32_t *)image)[0xf]) + 4)); - else - pe_chdr = (struct grub_pe32_coff_header *) image; - if (grub_le_to_cpu16 (pe_chdr->machine) != GRUB_PE32_MACHINE) - grub_util_error ("invalid coff image (%x != %x)", - grub_le_to_cpu16 (pe_chdr->machine), GRUB_PE32_MACHINE); - - strtab = xmalloc (STRTAB_BLOCK); - strtab_max = STRTAB_BLOCK; - strtab[0] = 0; - strtab_len = 1; - - offset = sizeof (ehdr); - if (pe_chdr->optional_header_size) - { -#if GRUB_TARGET_WORDSIZE == 64 - struct grub_pe64_optional_header *o; -#else - struct grub_pe32_optional_header *o; -#endif - o = (void *) (pe_chdr + 1); - image_base = o->image_base; - } - pe_shdr = (struct grub_pe32_section_table *) ((char *) (pe_chdr + 1) + pe_chdr->optional_header_size); - - section_map = write_section_data (fp, name, image, pe_chdr, pe_shdr); - - write_symbol_table (fp, name, image, pe_chdr, pe_shdr, section_map); - free (section_map); - - write_string_table (fp, name); - - write_section_header (fp, name); -} - -int -main (int argc, char *argv[]) -{ - char *image; - FILE* fp; - char *in, *out; - - /* Obtain PATH. */ - if (1 >= argc) - { - fprintf (stderr, "Filename not specified.\n"); - return 1; - } - - in = argv[1]; - if (argc > 2) - out = argv[2]; - else - out = in; - image = grub_util_read_image (in); - - fp = grub_util_fopen (out, "wb"); - if (! fp) - grub_util_error ("cannot open %s", out); - - convert_pe (fp, out, image); - - fclose (fp); - - return 0; -} diff --git a/thirdparty/grub-2.04/util/grub-probe.c b/thirdparty/grub-2.04/util/grub-probe.c deleted file mode 100644 index 81d27eead..000000000 --- a/thirdparty/grub-2.04/util/grub-probe.c +++ /dev/null @@ -1,931 +0,0 @@ -/* grub-probe.c - probe device information for a given path */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2005,2006,2007,2008,2009,2010 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#include -#include -#include -#include -#include - -#define _GNU_SOURCE 1 - -#pragma GCC diagnostic ignored "-Wmissing-prototypes" -#pragma GCC diagnostic ignored "-Wmissing-declarations" -#include -#pragma GCC diagnostic error "-Wmissing-prototypes" -#pragma GCC diagnostic error "-Wmissing-declarations" - -#include "progname.h" - -enum { - PRINT_FS, - PRINT_FS_UUID, - PRINT_FS_LABEL, - PRINT_DRIVE, - PRINT_DEVICE, - PRINT_PARTMAP, - PRINT_PARTUUID, - PRINT_ABSTRACTION, - PRINT_CRYPTODISK_UUID, - PRINT_HINT_STR, - PRINT_BIOS_HINT, - PRINT_IEEE1275_HINT, - PRINT_BAREMETAL_HINT, - PRINT_EFI_HINT, - PRINT_ARC_HINT, - PRINT_COMPATIBILITY_HINT, - PRINT_MSDOS_PARTTYPE, - PRINT_GPT_PARTTYPE, - PRINT_ZERO_CHECK, - PRINT_DISK -}; - -static const char *targets[] = - { - [PRINT_FS] = "fs", - [PRINT_FS_UUID] = "fs_uuid", - [PRINT_FS_LABEL] = "fs_label", - [PRINT_DRIVE] = "drive", - [PRINT_DEVICE] = "device", - [PRINT_PARTMAP] = "partmap", - [PRINT_PARTUUID] = "partuuid", - [PRINT_ABSTRACTION] = "abstraction", - [PRINT_CRYPTODISK_UUID] = "cryptodisk_uuid", - [PRINT_HINT_STR] = "hints_string", - [PRINT_BIOS_HINT] = "bios_hints", - [PRINT_IEEE1275_HINT] = "ieee1275_hints", - [PRINT_BAREMETAL_HINT] = "baremetal_hints", - [PRINT_EFI_HINT] = "efi_hints", - [PRINT_ARC_HINT] = "arc_hints", - [PRINT_COMPATIBILITY_HINT] = "compatibility_hint", - [PRINT_MSDOS_PARTTYPE] = "msdos_parttype", - [PRINT_GPT_PARTTYPE] = "gpt_parttype", - [PRINT_ZERO_CHECK] = "zero_check", - [PRINT_DISK] = "disk", - }; - -static int print = PRINT_FS; -static unsigned int argument_is_device = 0; - -static char * -get_targets_string (void) -{ - char **arr = xmalloc (sizeof (targets)); - int len = 0; - char *str; - char *ptr; - unsigned i; - - memcpy (arr, targets, sizeof (targets)); - qsort (arr, ARRAY_SIZE (targets), sizeof (char *), grub_qsort_strcmp); - for (i = 0; i < ARRAY_SIZE (targets); i++) - len += grub_strlen (targets[i]) + 2; - ptr = str = xmalloc (len); - for (i = 0; i < ARRAY_SIZE (targets); i++) - { - ptr = grub_stpcpy (ptr, arr[i]); - *ptr++ = ','; - *ptr++ = ' '; - } - ptr[-2] = '\0'; - free (arr); - - return str; -} - -static int -print_gpt_guid (grub_gpt_part_guid_t guid) -{ - guid.data1 = grub_le_to_cpu32 (guid.data1); - guid.data2 = grub_le_to_cpu16 (guid.data2); - guid.data3 = grub_le_to_cpu16 (guid.data3); - - return grub_printf ("%08x-%04x-%04x-%02x%02x-%02x%02x%02x%02x%02x%02x", - guid.data1, guid.data2, guid.data3, guid.data4[0], - guid.data4[1], guid.data4[2], guid.data4[3], - guid.data4[4], guid.data4[5], guid.data4[6], - guid.data4[7]); -} - -static void -do_print (const char *x, void *data) -{ - char delim = *(const char *) data; - grub_printf ("%s%c", x, delim); -} - -static void -probe_partmap (grub_disk_t disk, char delim) -{ - grub_partition_t part; - grub_disk_memberlist_t list = NULL, tmp; - - if (disk->partition == NULL) - { - grub_util_info ("no partition map found for %s", disk->name); - } - - for (part = disk->partition; part; part = part->parent) - printf ("%s%c", part->partmap->name, delim); - - if (disk->dev->id == GRUB_DISK_DEVICE_DISKFILTER_ID) - grub_diskfilter_get_partmap (disk, do_print, &delim); - - /* In case of LVM/RAID, check the member devices as well. */ - if (disk->dev->disk_memberlist) - { - list = disk->dev->disk_memberlist (disk); - } - while (list) - { - probe_partmap (list->disk, delim); - tmp = list->next; - free (list); - list = tmp; - } -} - -static void -probe_partuuid (grub_disk_t disk, char delim) -{ - grub_partition_t p = disk->partition; - - /* - * Nested partitions not supported for now. - * Non-nested partitions must have disk->partition->parent == NULL - */ - if (p && p->parent == NULL) - { - disk->partition = p->parent; - - if (strcmp(p->partmap->name, "msdos") == 0) - { - /* - * The partition GUID for MSDOS is the partition number (starting - * with 1) prepended with the NT disk signature. - */ - grub_uint32_t nt_disk_sig; - - if (grub_disk_read (disk, 0, GRUB_BOOT_MACHINE_WINDOWS_NT_MAGIC, - sizeof(nt_disk_sig), &nt_disk_sig) == 0) - grub_printf ("%08x-%02x", - grub_le_to_cpu32(nt_disk_sig), 1 + p->number); - } - else if (strcmp(p->partmap->name, "gpt") == 0) - { - struct grub_gpt_partentry gptdata; - - if (grub_disk_read (disk, p->offset, p->index, - sizeof(gptdata), &gptdata) == 0) - print_gpt_guid(gptdata.guid); - } - - disk->partition = p; - } -} - -static void -probe_cryptodisk_uuid (grub_disk_t disk, char delim) -{ - grub_disk_memberlist_t list = NULL, tmp; - - /* In case of LVM/RAID, check the member devices as well. */ - if (disk->dev->disk_memberlist) - { - list = disk->dev->disk_memberlist (disk); - } - while (list) - { - probe_cryptodisk_uuid (list->disk, delim); - tmp = list->next; - free (list); - list = tmp; - } - if (disk->dev->id == GRUB_DISK_DEVICE_CRYPTODISK_ID) - { - const char *uu = grub_util_cryptodisk_get_uuid (disk); - grub_printf ("%s%c", uu, delim); - } -} - -static int -probe_raid_level (grub_disk_t disk) -{ - /* disk might be NULL in the case of a LVM physical volume with no LVM - signature. Ignore such cases here. */ - if (!disk) - return -1; - - if (disk->dev->id != GRUB_DISK_DEVICE_DISKFILTER_ID) - return -1; - - if (disk->name[0] != 'm' || disk->name[1] != 'd') - return -1; - - if (!((struct grub_diskfilter_lv *) disk->data)->segments) - return -1; - return ((struct grub_diskfilter_lv *) disk->data)->segments->type; -} - -static void -probe_abstraction (grub_disk_t disk, char delim) -{ - grub_disk_memberlist_t list = NULL, tmp; - int raid_level; - - if (disk->dev->disk_memberlist) - list = disk->dev->disk_memberlist (disk); - while (list) - { - probe_abstraction (list->disk, delim); - - tmp = list->next; - free (list); - list = tmp; - } - - if (disk->dev->id == GRUB_DISK_DEVICE_DISKFILTER_ID - && (grub_memcmp (disk->name, "lvm/", sizeof ("lvm/") - 1) == 0 || - grub_memcmp (disk->name, "lvmid/", sizeof ("lvmid/") - 1) == 0)) - printf ("lvm%c", delim); - - if (disk->dev->id == GRUB_DISK_DEVICE_DISKFILTER_ID - && grub_memcmp (disk->name, "ldm/", sizeof ("ldm/") - 1) == 0) - printf ("ldm%c", delim); - - if (disk->dev->id == GRUB_DISK_DEVICE_CRYPTODISK_ID) - grub_util_cryptodisk_get_abstraction (disk, do_print, &delim); - - raid_level = probe_raid_level (disk); - if (raid_level >= 0) - { - printf ("diskfilter%c", delim); - if (disk->dev->disk_raidname) - printf ("%s%c", disk->dev->disk_raidname (disk), delim); - } - if (raid_level == 5) - printf ("raid5rec%c", delim); - if (raid_level == 6) - printf ("raid6rec%c", delim); -} - -static void -probe (const char *path, char **device_names, char delim) -{ - char **drives_names = NULL; - char **curdev, **curdrive; - char *grub_path = NULL; - int ndev = 0; - - if (path != NULL) - { - grub_path = grub_canonicalize_file_name (path); - if (! grub_path) - grub_util_error (_("failed to get canonical path of `%s'"), path); - device_names = grub_guess_root_devices (grub_path); - free (grub_path); - } - - if (! device_names) - grub_util_error (_("cannot find a device for %s (is /dev mounted?)"), path); - - if (print == PRINT_DEVICE) - { - for (curdev = device_names; *curdev; curdev++) - { - printf ("%s", *curdev); - putchar (delim); - } - goto free_device_names; - } - - if (print == PRINT_DISK) - { - for (curdev = device_names; *curdev; curdev++) - { - char *disk; - disk = grub_util_get_os_disk (*curdev); - if (!disk) - { - grub_print_error (); - continue; - } - printf ("%s", disk); - putchar (delim); - free (disk); - } - goto free_device_names; - } - - for (curdev = device_names; *curdev; curdev++) - { - grub_util_pull_device (*curdev); - ndev++; - } - - drives_names = xmalloc (sizeof (drives_names[0]) * (ndev + 1)); - - for (curdev = device_names, curdrive = drives_names; *curdev; curdev++, - curdrive++) - { - *curdrive = grub_util_get_grub_dev (*curdev); - if (! *curdrive) - grub_util_error (_("cannot find a GRUB drive for %s. Check your device.map"), - *curdev); - } - *curdrive = 0; - - if (print == PRINT_DRIVE) - { - for (curdrive = drives_names; *curdrive; curdrive++) - { - printf ("(%s)", *curdrive); - putchar (delim); - } - goto end; - } - - if (print == PRINT_ZERO_CHECK) - { - for (curdev = drives_names; *curdev; curdev++) - { - grub_device_t dev = NULL; - grub_uint32_t buffer[32768]; - grub_disk_addr_t addr; - grub_disk_addr_t dsize; - - grub_util_info ("opening %s", *curdev); - dev = grub_device_open (*curdev); - if (! dev || !dev->disk) - grub_util_error ("%s", grub_errmsg); - - dsize = grub_disk_get_size (dev->disk); - for (addr = 0; addr < dsize; - addr += sizeof (buffer) / GRUB_DISK_SECTOR_SIZE) - { - grub_size_t sz = sizeof (buffer); - grub_uint32_t *ptr; - - if (sizeof (buffer) / GRUB_DISK_SECTOR_SIZE > dsize - addr) - sz = (dsize - addr) * GRUB_DISK_SECTOR_SIZE; - grub_disk_read (dev->disk, addr, 0, sz, buffer); - - for (ptr = buffer; ptr < buffer + sz / sizeof (*buffer); ptr++) - if (*ptr) - { - grub_printf ("false\n"); - grub_device_close (dev); - goto end; - } - } - - grub_device_close (dev); - } - grub_printf ("true\n"); - } - - if (print == PRINT_FS || print == PRINT_FS_UUID - || print == PRINT_FS_LABEL) - { - grub_device_t dev = NULL; - grub_fs_t fs; - - grub_util_info ("opening %s", drives_names[0]); - dev = grub_device_open (drives_names[0]); - if (! dev) - grub_util_error ("%s", grub_errmsg); - - fs = grub_fs_probe (dev); - if (! fs) - grub_util_error ("%s", grub_errmsg); - - if (print == PRINT_FS) - { - printf ("%s", fs->name); - putchar (delim); - } - else if (print == PRINT_FS_UUID) - { - char *uuid; - if (! fs->fs_uuid) - grub_util_error (_("%s does not support UUIDs"), fs->name); - - if (fs->fs_uuid (dev, &uuid) != GRUB_ERR_NONE) - grub_util_error ("%s", grub_errmsg); - - printf ("%s", uuid); - putchar (delim); - } - else if (print == PRINT_FS_LABEL) - { - char *label; - if (! fs->fs_label) - grub_util_error (_("filesystem `%s' does not support labels"), - fs->name); - - if (fs->fs_label (dev, &label) != GRUB_ERR_NONE) - grub_util_error ("%s", grub_errmsg); - - printf ("%s", label); - putchar (delim); - } - grub_device_close (dev); - goto end; - } - - for (curdrive = drives_names, curdev = device_names; *curdrive; - curdrive++, curdev++) - { - grub_device_t dev = NULL; - - grub_util_info ("opening %s", *curdrive); - dev = grub_device_open (*curdrive); - if (! dev) - grub_util_error ("%s", grub_errmsg); - - if (print == PRINT_HINT_STR) - { - const char *osdev = grub_util_biosdisk_get_osdev (dev->disk); - char *ofpath = osdev ? grub_util_devname_to_ofpath (osdev) : 0; - char *biosname, *bare, *efi; - const char *map; - - if (ofpath) - { - char *tmp = xmalloc (strlen (ofpath) + sizeof ("ieee1275/")); - char *p; - p = grub_stpcpy (tmp, "ieee1275/"); - strcpy (p, ofpath); - printf ("--hint-ieee1275='"); - grub_util_fprint_full_disk_name (stdout, tmp, dev); - printf ("' "); - free (tmp); - free (ofpath); - } - - biosname = grub_util_guess_bios_drive (*curdev); - if (biosname) - { - printf ("--hint-bios="); - grub_util_fprint_full_disk_name (stdout, biosname, dev); - printf (" "); - } - free (biosname); - - efi = grub_util_guess_efi_drive (*curdev); - if (efi) - { - printf ("--hint-efi="); - grub_util_fprint_full_disk_name (stdout, efi, dev); - printf (" "); - } - free (efi); - - bare = grub_util_guess_baremetal_drive (*curdev); - if (bare) - { - printf ("--hint-baremetal="); - grub_util_fprint_full_disk_name (stdout, bare, dev); - printf (" "); - } - free (bare); - - /* FIXME: Add ARC hint. */ - - map = grub_util_biosdisk_get_compatibility_hint (dev->disk); - if (map) - { - printf ("--hint='"); - grub_util_fprint_full_disk_name (stdout, map, dev); - printf ("' "); - } - if (curdrive[1]) - printf (" "); - else - printf ("\n"); - } - - else if ((print == PRINT_COMPATIBILITY_HINT || print == PRINT_BIOS_HINT - || print == PRINT_IEEE1275_HINT || print == PRINT_BAREMETAL_HINT - || print == PRINT_EFI_HINT || print == PRINT_ARC_HINT) - && dev->disk->dev->id != GRUB_DISK_DEVICE_HOSTDISK_ID) - { - grub_util_fprint_full_disk_name (stdout, dev->disk->name, dev); - putchar (delim); - } - - else if (print == PRINT_COMPATIBILITY_HINT) - { - const char *map; - char *biosname; - map = grub_util_biosdisk_get_compatibility_hint (dev->disk); - if (map) - { - grub_util_fprint_full_disk_name (stdout, map, dev); - putchar (delim); - grub_device_close (dev); - /* Compatibility hint is one device only. */ - break; - } - biosname = grub_util_guess_bios_drive (*curdev); - if (biosname) - { - grub_util_fprint_full_disk_name (stdout, biosname, dev); - putchar (delim); - free (biosname); - /* Compatibility hint is one device only. */ - grub_device_close (dev); - break; - } - } - - else if (print == PRINT_BIOS_HINT) - { - char *biosname; - biosname = grub_util_guess_bios_drive (*curdev); - if (biosname) - { - grub_util_fprint_full_disk_name (stdout, biosname, dev); - putchar (delim); - free (biosname); - } - } - else if (print == PRINT_IEEE1275_HINT) - { - const char *osdev = grub_util_biosdisk_get_osdev (dev->disk); - char *ofpath = grub_util_devname_to_ofpath (osdev); - const char *map; - - map = grub_util_biosdisk_get_compatibility_hint (dev->disk); - if (map) - { - grub_util_fprint_full_disk_name (stdout, map, dev); - putchar (delim); - } - - if (ofpath) - { - char *tmp = xmalloc (strlen (ofpath) + sizeof ("ieee1275/")); - char *p; - p = grub_stpcpy (tmp, "ieee1275/"); - strcpy (p, ofpath); - grub_util_fprint_full_disk_name (stdout, tmp, dev); - free (tmp); - free (ofpath); - putchar (delim); - } - } - else if (print == PRINT_EFI_HINT) - { - char *biosname; - const char *map; - biosname = grub_util_guess_efi_drive (*curdev); - - map = grub_util_biosdisk_get_compatibility_hint (dev->disk); - if (map) - { - grub_util_fprint_full_disk_name (stdout, map, dev); - putchar (delim); - } - if (biosname) - { - grub_util_fprint_full_disk_name (stdout, biosname, dev); - putchar (delim); - free (biosname); - } - } - - else if (print == PRINT_BAREMETAL_HINT) - { - char *biosname; - const char *map; - - biosname = grub_util_guess_baremetal_drive (*curdev); - - map = grub_util_biosdisk_get_compatibility_hint (dev->disk); - if (map) - { - grub_util_fprint_full_disk_name (stdout, map, dev); - putchar (delim); - } - if (biosname) - { - grub_util_fprint_full_disk_name (stdout, biosname, dev); - putchar (delim); - free (biosname); - } - } - - else if (print == PRINT_ARC_HINT) - { - const char *map; - - map = grub_util_biosdisk_get_compatibility_hint (dev->disk); - if (map) - { - grub_util_fprint_full_disk_name (stdout, map, dev); - putchar (delim); - } - } - - else if (print == PRINT_ABSTRACTION) - probe_abstraction (dev->disk, delim); - - else if (print == PRINT_CRYPTODISK_UUID) - probe_cryptodisk_uuid (dev->disk, delim); - - else if (print == PRINT_PARTMAP) - /* Check if dev->disk itself is contained in a partmap. */ - probe_partmap (dev->disk, delim); - - else if (print == PRINT_PARTUUID) - { - probe_partuuid (dev->disk, delim); - putchar (delim); - } - - else if (print == PRINT_MSDOS_PARTTYPE) - { - if (dev->disk->partition - && strcmp(dev->disk->partition->partmap->name, "msdos") == 0) - printf ("%02x", dev->disk->partition->msdostype); - - putchar (delim); - } - - else if (print == PRINT_GPT_PARTTYPE) - { - if (dev->disk->partition - && strcmp (dev->disk->partition->partmap->name, "gpt") == 0) - { - struct grub_gpt_partentry gptdata; - grub_partition_t p = dev->disk->partition; - dev->disk->partition = dev->disk->partition->parent; - - if (grub_disk_read (dev->disk, p->offset, p->index, - sizeof (gptdata), &gptdata) == 0) - print_gpt_guid(gptdata.type); - dev->disk->partition = p; - } - putchar (delim); - } - - grub_device_close (dev); - } - - end: - for (curdrive = drives_names; *curdrive; curdrive++) - free (*curdrive); - free (drives_names); - -free_device_names: - if (path != NULL) - { - for (curdev = device_names; *curdev; curdev++) - free (*curdev); - free (device_names); - } -} - -static struct argp_option options[] = { - {"device", 'd', 0, 0, - N_("given argument is a system device, not a path"), 0}, - {"device-map", 'm', N_("FILE"), 0, - N_("use FILE as the device map [default=%s]"), 0}, - {"target", 't', N_("TARGET"), 0, 0, 0}, - {"verbose", 'v', 0, 0, N_("print verbose messages."), 0}, - {0, '0', 0, 0, N_("separate items in output using ASCII NUL characters"), 0}, - { 0, 0, 0, 0, 0, 0 } -}; - -#pragma GCC diagnostic ignored "-Wformat-nonliteral" - -static char * -help_filter (int key, const char *text, void *input __attribute__ ((unused))) -{ - switch (key) - { - case 'm': - return xasprintf (text, DEFAULT_DEVICE_MAP); - - case 't': - { - char *ret, *t = get_targets_string (), *def; - - def = xasprintf (_("[default=%s]"), targets[print]); - - ret = xasprintf ("%s\n%s %s %s", _("print TARGET"), - _("available targets:"), t, def); - free (t); - free (def); - return ret; - } - - default: - return (char *) text; - } -} - -#pragma GCC diagnostic error "-Wformat-nonliteral" - -struct arguments -{ - char **devices; - size_t device_max; - size_t ndevices; - char *dev_map; - int zero_delim; -}; - -static error_t -argp_parser (int key, char *arg, struct argp_state *state) -{ - /* Get the input argument from argp_parse, which we - know is a pointer to our arguments structure. */ - struct arguments *arguments = state->input; - - switch (key) - { - case 'd': - argument_is_device = 1; - break; - - case 'm': - if (arguments->dev_map) - free (arguments->dev_map); - - arguments->dev_map = xstrdup (arg); - break; - - case 't': - { - int i; - - for (i = PRINT_FS; i < ARRAY_SIZE (targets); i++) - if (strcmp (arg, targets[i]) == 0) - { - print = i; - break; - } - if (i == ARRAY_SIZE (targets)) - argp_usage (state); - } - break; - - case '0': - arguments->zero_delim = 1; - break; - - case 'v': - verbosity++; - break; - - case ARGP_KEY_NO_ARGS: - fprintf (stderr, "%s", _("No path or device is specified.\n")); - argp_usage (state); - break; - - case ARGP_KEY_ARG: - assert (arguments->ndevices < arguments->device_max); - arguments->devices[arguments->ndevices++] = xstrdup(arg); - break; - - default: - return ARGP_ERR_UNKNOWN; - } - return 0; -} - -static struct argp argp = { - options, argp_parser, N_("[OPTION]... [PATH|DEVICE]"), - N_("\ -Probe device information for a given path (or device, if the -d option is given)."), - NULL, help_filter, NULL -}; - -int -main (int argc, char *argv[]) -{ - char delim; - struct arguments arguments; - - grub_util_host_init (&argc, &argv); - - memset (&arguments, 0, sizeof (struct arguments)); - arguments.device_max = argc + 1; - arguments.devices = xmalloc ((arguments.device_max + 1) - * sizeof (arguments.devices[0])); - memset (arguments.devices, 0, (arguments.device_max + 1) - * sizeof (arguments.devices[0])); - - /* Parse our arguments */ - if (argp_parse (&argp, argc, argv, 0, 0, &arguments) != 0) - { - fprintf (stderr, "%s", _("Error in parsing command line arguments\n")); - exit(1); - } - - if (verbosity > 1) - grub_env_set ("debug", "all"); - - /* Obtain ARGUMENT. */ - if (arguments.ndevices != 1 && !argument_is_device) - { - char *program = xstrdup(program_name); - fprintf (stderr, _("Unknown extra argument `%s'."), arguments.devices[1]); - fprintf (stderr, "\n"); - argp_help (&argp, stderr, ARGP_HELP_STD_USAGE, program); - free (program); - exit(1); - } - - /* Initialize the emulated biosdisk driver. */ - grub_util_biosdisk_init (arguments.dev_map ? : DEFAULT_DEVICE_MAP); - - /* Initialize all modules. */ - grub_init_all (); - grub_gcry_init_all (); - - grub_lvm_fini (); - grub_mdraid09_fini (); - grub_mdraid1x_fini (); - grub_diskfilter_fini (); - grub_diskfilter_init (); - grub_mdraid09_init (); - grub_mdraid1x_init (); - grub_lvm_init (); - - if (print == PRINT_BIOS_HINT - || print == PRINT_IEEE1275_HINT || print == PRINT_BAREMETAL_HINT - || print == PRINT_EFI_HINT || print == PRINT_ARC_HINT) - delim = ' '; - else - delim = '\n'; - - if (arguments.zero_delim) - delim = '\0'; - - /* Do it. */ - if (argument_is_device) - probe (NULL, arguments.devices, delim); - else - probe (arguments.devices[0], NULL, delim); - - if (delim == ' ') - putchar ('\n'); - - /* Free resources. */ - grub_gcry_fini_all (); - grub_fini_all (); - grub_util_biosdisk_fini (); - - { - size_t i; - for (i = 0; i < arguments.ndevices; i++) - free (arguments.devices[i]); - } - free (arguments.devices); - - free (arguments.dev_map); - - return 0; -} diff --git a/thirdparty/grub-2.04/util/grub-reboot.in b/thirdparty/grub-2.04/util/grub-reboot.in deleted file mode 100644 index ef3b5c049..000000000 --- a/thirdparty/grub-2.04/util/grub-reboot.in +++ /dev/null @@ -1,160 +0,0 @@ -#! /bin/sh -# -# Set a default boot entry for GRUB, for the next boot only. -# Copyright (C) 2004,2009 Free Software Foundation, Inc. -# -# GRUB is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# GRUB is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with GRUB. If not, see . - -# Initialize some variables. -prefix=@prefix@ -exec_prefix=@exec_prefix@ -bindir=@bindir@ -sbindir=@sbindir@ -sysconfdir="@sysconfdir@" -PACKAGE_NAME=@PACKAGE_NAME@ -PACKAGE_VERSION=@PACKAGE_VERSION@ -datarootdir="@datarootdir@" -datadir="@datadir@" -if [ "x$pkgdatadir" = x ]; then - pkgdatadir="${datadir}/@PACKAGE@" -fi - -self=`basename $0` - -grub_editenv=${bindir}/@grub_editenv@ -grub_probe=${sbindir}/@grub_probe@ -rootdir= -bootdir= -grubdir=`echo "/@bootdirname@/@grubdirname@" | sed 's,//*,/,g'` - -export TEXTDOMAIN=@PACKAGE@ -export TEXTDOMAINDIR="@localedir@" - -. "${pkgdatadir}/grub-mkconfig_lib" - -# Usage: usage -# Print the usage. -usage () { - gettext_printf "Usage: %s [OPTION] MENU_ENTRY\n" "$self" - gettext "Set the default boot menu entry for GRUB, for the next boot only."; echo - print_option_help "-h, --help" "$(gettext "print this message and exit")" - print_option_help "-V, --version" "$(gettext "print the version information and exit")" - dirmsg="$(gettext_printf "expect GRUB images under the directory DIR/%s instead of the %s directory" "@grubdirname@" "$grubdir")" - print_option_help "--boot-directory=$(gettext "DIR")" "$dirmsg" - echo - gettext "MENU_ENTRY is a number, a menu item title or a menu item identifier. Please note that menu items in -submenus or sub-submenus require specifying the submenu components and then the -menu item component. The titles should be separated using the greater-than -character (>) with no extra spaces. Depending on your shell some characters including > may need escaping. More information about this is available -in the GRUB Manual in the section about the 'default' command. "; echo - echo - gettext "NOTE: In cases where GRUB cannot write to the environment block, such as when it is stored on an MDRAID or LVM device, the chosen boot menu entry will remain the default even after reboot. "; echo - echo - gettext "Report bugs to ."; echo -} - -argument () { - opt=$1 - shift - - if test $# -eq 0; then - gettext_printf "%s: option requires an argument -- \`%s'\n" "$self" "$opt" 1>&2 - exit 1 - fi - echo $1 -} - -# Check the arguments. -while test $# -gt 0 -do - option=$1 - shift - - case "$option" in - -h | --help) - usage - exit 0 ;; - -V | --version) - echo "$self (${PACKAGE_NAME}) ${PACKAGE_VERSION}" - exit 0 ;; - -# Accept for compatibility - --root-directory) - rootdir=`argument $option "$@"`; shift ;; - --root-directory=*) - rootdir=`echo "$option" | sed 's/--root-directory=//'` ;; - - --boot-directory) - bootdir=`argument $option "$@"`; shift;; - --boot-directory=*) - bootdir=`echo "$option" | sed 's/--boot-directory=//'` ;; - - -*) - gettext_printf "Unrecognized option \`%s'\n" "$option" 1>&2 - usage - exit 1 - ;; - *) - if test "x$entry" != x; then - gettext "More than one menu entry?" 1>&2 - echo >&2 - usage - exit 1 - fi - entry="${option}" ;; - esac -done - -if test "x$entry" = x; then - gettext "Menu entry not specified." 1>&2 - echo >&2 - usage - exit 1 -fi - -if [ -z "$bootdir" ]; then - # Default bootdir if bootdir not initialized. - bootdir=/@bootdirname@ - - if [ -n "$rootdir" ] ; then - # Initialize bootdir if rootdir was initialized. - bootdir=${rootdir}/@bootdirname@ - fi -fi - -grubdir=`echo "${bootdir}/@grubdirname@" | sed 's,//*,/,g'` - -abstractions=`$grub_probe --target=abstraction ${grubdir}/grubenv` -for abstraction in $abstractions; do - case "$abstraction" in - diskfilter | lvm) - gettext_printf "\nWARNING: Detected GRUB environment block on $abstraction device\n" - gettext_printf "%s will remain the default boot entry until manually cleared with:\n" "${entry}" - gettext_printf " grub-editenv ${grubdir}/grubenv unset next_entry\n\n" - break - ;; - esac -done - -# Restore saved_entry if it was set by previous version -prev_saved_entry=`$grub_editenv ${grubdir}/grubenv list | sed -n 's/^prev_saved_entry=//p'` -if [ "$prev_saved_entry" ]; then - $grub_editenv ${grubdir}/grubenv set saved_entry="$prev_saved_entry" - $grub_editenv ${grubdir}/grubenv unset prev_saved_entry -fi - -$grub_editenv ${grubdir}/grubenv set next_entry="$entry" - -# Bye. -exit 0 diff --git a/thirdparty/grub-2.04/util/grub-render-label.c b/thirdparty/grub-2.04/util/grub-render-label.c deleted file mode 100644 index ec0923b2e..000000000 --- a/thirdparty/grub-2.04/util/grub-render-label.c +++ /dev/null @@ -1,193 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2010,2012,2013 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - - -#include - -#include -#include -#include -#include -#include -#include -#include -#include - -#define _GNU_SOURCE 1 - -#include -#include -#include -#include -#include - -#pragma GCC diagnostic ignored "-Wmissing-prototypes" -#pragma GCC diagnostic ignored "-Wmissing-declarations" -#include -#pragma GCC diagnostic error "-Wmissing-prototypes" -#pragma GCC diagnostic error "-Wmissing-declarations" - -#include "progname.h" - -struct arguments -{ - char *input; - char *text; - char *output; - char *font; - char *fgcolor; - char *bgcolor; - int verbosity; -}; - -static struct argp_option options[] = { - {"input", 'i', N_("FILE"), 0, - N_("read text from FILE."), 0}, - {"color", 'c', N_("COLOR"), 0, - N_("use COLOR for text"), 0}, - {"bgcolor", 'b', N_("COLOR"), 0, - N_("use COLOR for background"), 0}, - {"text", 't', N_("STRING"), 0, - /* TRANSLATORS: The result is always stored to file and - never shown directly, so don't use "show" as synonym for render. Use "create" if - "render" doesn't translate directly. */ - N_("set the label to render"), 0}, - {"output", 'o', N_("FILE"), 0, - N_("set output filename. Default is STDOUT"), 0}, - {"font", 'f', N_("FILE"), 0, - N_("use FILE as font (PF2)."), 0}, - {"verbose", 'v', 0, 0, N_("print verbose messages."), 0}, - { 0, 0, 0, 0, 0, 0 } -}; - -#include -#include -#include -#include -#include -#include -#include - -static error_t -argp_parser (int key, char *arg, struct argp_state *state) -{ - /* Get the input argument from argp_parse, which we - know is a pointer to our arguments structure. */ - struct arguments *arguments = state->input; - - switch (key) - { - case 'i': - arguments->input = xstrdup (arg); - break; - - case 'b': - arguments->bgcolor = xstrdup (arg); - break; - - case 'c': - arguments->fgcolor = xstrdup (arg); - break; - - case 'f': - arguments->font = xstrdup (arg); - break; - - case 't': - arguments->text = xstrdup (arg); - break; - - case 'o': - arguments->output = xstrdup (arg); - break; - - case 'v': - arguments->verbosity++; - break; - - default: - return ARGP_ERR_UNKNOWN; - } - - return 0; -} - -static struct argp argp = { - options, argp_parser, N_("[OPTIONS]"), - /* TRANSLATORS: This file takes a text and creates a graphical representation of it, - putting the result into .disk_label file. The result is always stored to file and - never shown directly, so don't use "show" as synonym for render. Use "create" if - "render" doesn't translate directly. */ - N_("Render Apple .disk_label."), - NULL, NULL, NULL -}; - -int -main (int argc, char *argv[]) -{ - char *text; - struct arguments arguments; - - grub_util_host_init (&argc, &argv); - - /* Check for options. */ - memset (&arguments, 0, sizeof (struct arguments)); - if (argp_parse (&argp, argc, argv, 0, 0, &arguments) != 0) - { - fprintf (stderr, "%s", _("Error in parsing command line arguments\n")); - exit(1); - } - - if ((!arguments.input && !arguments.text) || !arguments.font) - { - fprintf (stderr, "%s", _("Missing arguments\n")); - exit(1); - } - - if (arguments.text) - text = arguments.text; - else - { - FILE *in = grub_util_fopen (arguments.input, "r"); - size_t s; - if (!in) - grub_util_error (_("cannot open `%s': %s"), arguments.input, - strerror (errno)); - fseek (in, 0, SEEK_END); - s = ftell (in); - fseek (in, 0, SEEK_SET); - text = xmalloc (s + 1); - if (fread (text, 1, s, in) != s) - grub_util_error (_("cannot read `%s': %s"), arguments.input, - strerror (errno)); - text[s] = 0; - fclose (in); - } - - grub_init_all (); - grub_hostfs_init (); - grub_host_init (); - - grub_util_render_label (arguments.font, - arguments.bgcolor, - arguments.fgcolor, - text, - arguments.output); - - return 0; -} diff --git a/thirdparty/grub-2.04/util/grub-script-check.c b/thirdparty/grub-2.04/util/grub-script-check.c deleted file mode 100644 index 801b3df4a..000000000 --- a/thirdparty/grub-2.04/util/grub-script-check.c +++ /dev/null @@ -1,218 +0,0 @@ -/* grub-script-check.c - check grub script file for syntax errors */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2009,2010 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#define _GNU_SOURCE 1 - -#include -#include -#include -#include -#include -#pragma GCC diagnostic ignored "-Wmissing-prototypes" -#pragma GCC diagnostic ignored "-Wmissing-declarations" -#include -#pragma GCC diagnostic error "-Wmissing-prototypes" -#pragma GCC diagnostic error "-Wmissing-declarations" - -#include "progname.h" - -struct arguments -{ - int verbose; - char *filename; -}; - -static struct argp_option options[] = { - {"verbose", 'v', 0, 0, N_("print verbose messages."), 0}, - { 0, 0, 0, 0, 0, 0 } -}; - -static error_t -argp_parser (int key, char *arg, struct argp_state *state) -{ - /* Get the input argument from argp_parse, which we - know is a pointer to our arguments structure. */ - struct arguments *arguments = state->input; - - switch (key) - { - case 'v': - arguments->verbose = 1; - break; - - case ARGP_KEY_ARG: - if (state->arg_num == 0) - arguments->filename = xstrdup (arg); - else - { - /* Too many arguments. */ - fprintf (stderr, _("Unknown extra argument `%s'."), arg); - fprintf (stderr, "\n"); - argp_usage (state); - } - break; - default: - return ARGP_ERR_UNKNOWN; - } - return 0; -} - -static struct argp argp = { - options, argp_parser, N_("[PATH]"), - N_("Checks GRUB script configuration file for syntax errors."), - NULL, NULL, NULL -}; - -/* Context for main. */ -struct main_ctx -{ - int lineno; - FILE *file; - struct arguments arguments; -}; - -/* Helper for main. */ -static grub_err_t -get_config_line (char **line, int cont __attribute__ ((unused)), void *data) -{ - struct main_ctx *ctx = data; - int i; - char *cmdline = 0; - size_t len = 0; - ssize_t curread; - - curread = getline (&cmdline, &len, (ctx->file ?: stdin)); - if (curread == -1) - { - *line = 0; - grub_errno = GRUB_ERR_READ_ERROR; - - if (cmdline) - free (cmdline); - return grub_errno; - } - - if (ctx->arguments.verbose) - grub_printf ("%s", cmdline); - - for (i = 0; cmdline[i] != '\0'; i++) - { - /* Replace tabs and carriage returns with spaces. */ - if (cmdline[i] == '\t' || cmdline[i] == '\r') - cmdline[i] = ' '; - - /* Replace '\n' with '\0'. */ - if (cmdline[i] == '\n') - cmdline[i] = '\0'; - } - - ctx->lineno++; - *line = grub_strdup (cmdline); - - free (cmdline); - return 0; -} - -int -main (int argc, char *argv[]) -{ - struct main_ctx ctx = { - .lineno = 0, - .file = 0 - }; - char *input; - int found_input = 0, found_cmd = 0; - struct grub_script *script = NULL; - - grub_util_host_init (&argc, &argv); - - memset (&ctx.arguments, 0, sizeof (struct arguments)); - - /* Check for options. */ - if (argp_parse (&argp, argc, argv, 0, 0, &ctx.arguments) != 0) - { - fprintf (stderr, "%s", _("Error in parsing command line arguments\n")); - exit(1); - } - - /* Obtain ARGUMENT. */ - if (!ctx.arguments.filename) - { - ctx.file = 0; /* read from stdin */ - } - else - { - ctx.file = grub_util_fopen (ctx.arguments.filename, "r"); - if (! ctx.file) - { - char *program = xstrdup(program_name); - fprintf (stderr, _("cannot open `%s': %s"), - ctx.arguments.filename, strerror (errno)); - argp_help (&argp, stderr, ARGP_HELP_STD_USAGE, program); - free(program); - exit(1); - } - } - - do - { - input = 0; - get_config_line (&input, 0, &ctx); - if (! input) - break; - found_input = 1; - - script = grub_script_parse (input, get_config_line, &ctx); - if (script) - { - if (script->cmd) - found_cmd = 1; - grub_script_execute (script); - grub_script_free (script); - } - - grub_free (input); - } while (script != 0); - - if (ctx.file) fclose (ctx.file); - - if (found_input && script == 0) - { - fprintf (stderr, _("Syntax error at line %u\n"), ctx.lineno); - return 1; - } - if (! found_cmd) - { - fprintf (stderr, _("Script `%s' contains no commands and will do nothing\n"), - ctx.arguments.filename); - return 1; - } - - return 0; -} diff --git a/thirdparty/grub-2.04/util/grub-set-default.in b/thirdparty/grub-2.04/util/grub-set-default.in deleted file mode 100644 index 6036f81e5..000000000 --- a/thirdparty/grub-2.04/util/grub-set-default.in +++ /dev/null @@ -1,137 +0,0 @@ -#! /bin/sh -# -# Set a default boot entry for GRUB. -# Copyright (C) 2004,2009 Free Software Foundation, Inc. -# -# GRUB is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# GRUB is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with GRUB. If not, see . - -# Initialize some variables. -prefix=@prefix@ -exec_prefix=@exec_prefix@ -bindir=@bindir@ -sysconfdir="@sysconfdir@" -PACKAGE_NAME=@PACKAGE_NAME@ -PACKAGE_VERSION=@PACKAGE_VERSION@ -datarootdir="@datarootdir@" -datadir="@datadir@" -if [ "x$pkgdatadir" = x ]; then - pkgdatadir="${datadir}/@PACKAGE@" -fi - -self=`basename $0` - -grub_editenv=${bindir}/@grub_editenv@ -rootdir= -bootdir= -grubdir=`echo "/@bootdirname@/@grubdirname@" | sed 's,//*,/,g'` - -export TEXTDOMAIN=@PACKAGE@ -export TEXTDOMAINDIR="@localedir@" - -. "${pkgdatadir}/grub-mkconfig_lib" - -# Usage: usage -# Print the usage. -usage () { - gettext_printf "Usage: %s [OPTION] MENU_ENTRY\n" "$self" - gettext "Set the default boot menu entry for GRUB."; echo - gettext_printf "This requires setting GRUB_DEFAULT=saved in %s/default/grub.\n" "$sysconfdir" - echo - print_option_help "-h, --help" "$(gettext "print this message and exit")" - print_option_help "-V, --version" "$(gettext "print the version information and exit")" - dirmsg="$(gettext_printf "expect GRUB images under the directory DIR/%s instead of the %s directory" "@grubdirname@" "$grubdir")" - print_option_help "--boot-directory=$(gettext "DIR")" "$dirmsg" - echo - gettext "MENU_ENTRY is a number, a menu item title or a menu item identifier."; echo - echo - gettext "Report bugs to ."; echo -} - -argument () { - opt=$1 - shift - - if test $# -eq 0; then - gettext_printf "%s: option requires an argument -- \`%s'\n" "$self" "$opt" 1>&2 - exit 1 - fi - echo $1 -} - -# Check the arguments. -while test $# -gt 0 -do - option=$1 - shift - - case "$option" in - -h | --help) - usage - exit 0 ;; - -V | --version) - echo "$self (${PACKAGE_NAME}) ${PACKAGE_VERSION}" - exit 0 ;; - -# Accept for compatibility - --root-directory) - rootdir=`argument $option "$@"`; shift ;; - --root-directory=*) - rootdir=`echo "$option" | sed 's/--root-directory=//'` ;; - - --boot-directory) - bootdir=`argument $option "$@"`; shift;; - --boot-directory=*) - bootdir=`echo "$option" | sed 's/--boot-directory=//'` ;; - - -*) - gettext_printf "Unrecognized option \`%s'\n" "$option" 1>&2 - usage - exit 1 - ;; - *) - if test "x$entry" != x; then - gettext "More than one menu entry?" 1>&2 - echo >&2 - usage - exit 1 - fi - entry="${option}" ;; - esac -done - -if test "x$entry" = x; then - gettext "Menu entry not specified." 1>&2 - echo >&2 - usage - exit 1 -fi - -if [ -z "$bootdir" ]; then - # Default bootdir if bootdir not initialized. - bootdir=/@bootdirname@ - - if [ -n "$rootdir" ] ; then - # Initialize bootdir if rootdir was initialized. - bootdir=${rootdir}/@bootdirname@ - fi -fi - -grubdir=`echo "${bootdir}/@grubdirname@" | sed 's,//*,/,g'` - -$grub_editenv ${grubdir}/grubenv unset prev_saved_entry -$grub_editenv ${grubdir}/grubenv unset next_entry -$grub_editenv ${grubdir}/grubenv set saved_entry="$entry" - -# Bye. -exit 0 diff --git a/thirdparty/grub-2.04/util/grub-setup.c b/thirdparty/grub-2.04/util/grub-setup.c deleted file mode 100644 index 42b98ad3c..000000000 --- a/thirdparty/grub-2.04/util/grub-setup.c +++ /dev/null @@ -1,333 +0,0 @@ -/* grub-setup.c - make GRUB usable */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 1999,2000,2001,2002,2003,2004,2005,2006,2007,2008,2009,2010,2011 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include - -#define _GNU_SOURCE 1 - -#include - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#pragma GCC diagnostic ignored "-Wmissing-prototypes" -#pragma GCC diagnostic ignored "-Wmissing-declarations" -#include -#pragma GCC diagnostic error "-Wmissing-prototypes" -#pragma GCC diagnostic error "-Wmissing-declarations" - -/* On SPARC this program fills in various fields inside of the 'boot' and 'core' - * image files. - * - * The 'boot' image needs to know the OBP path name of the root - * device. It also needs to know the initial block number of - * 'core' (which is 'diskboot' concatenated with 'kernel' and - * all the modules, this is created by grub-mkimage). This resulting - * 'boot' image is 512 bytes in size and is placed in the second block - * of a partition. - * - * The initial 'diskboot' block acts as a loader for the actual GRUB - * kernel. It contains the loading code and then a block list. - * - * The block list of 'core' starts at the end of the 'diskboot' image - * and works it's way backwards towards the end of the code of 'diskboot'. - * - * We patch up the images with the necessary values and write out the - * result. - */ - -#define DEFAULT_BOOT_FILE "boot.img" -#define DEFAULT_CORE_FILE "core.img" - -/* Non-printable "keys" for arguments with no short form. - * See grub-core/lib/gnulib/argp.h for details. */ -enum { - NO_RS_CODES_KEY = 0x100, -}; - -static struct argp_option options[] = { - {"boot-image", 'b', N_("FILE"), 0, - N_("use FILE as the boot image [default=%s]"), 0}, - {"core-image", 'c', N_("FILE"), 0, - N_("use FILE as the core image [default=%s]"), 0}, - {"directory", 'd', N_("DIR"), 0, - N_("use GRUB files in the directory DIR [default=%s]"), 0}, - {"device-map", 'm', N_("FILE"), 0, - N_("use FILE as the device map [default=%s]"), 0}, - {"force", 'f', 0, 0, - N_("install even if problems are detected"), 0}, - {"skip-fs-probe",'s',0, 0, - N_("do not probe for filesystems in DEVICE"), 0}, - {"verbose", 'v', 0, 0, N_("print verbose messages."), 0}, - {"allow-floppy", 'a', 0, 0, - /* TRANSLATORS: The potential breakage isn't limited to floppies but it's - likely to make the install unbootable from HDD. */ - N_("make the drive also bootable as floppy (default for fdX devices). May break on some BIOSes."), 0}, - {"no-rs-codes", NO_RS_CODES_KEY, 0, 0, - N_("Do not apply any reed-solomon codes when embedding core.img. " - "This option is only available on x86 BIOS targets."), 0}, - { 0, 0, 0, 0, 0, 0 } -}; - -#pragma GCC diagnostic ignored "-Wformat-nonliteral" - -static char * -help_filter (int key, const char *text, void *input __attribute__ ((unused))) -{ - switch (key) - { - case 'b': - return xasprintf (text, DEFAULT_BOOT_FILE); - - case 'c': - return xasprintf (text, DEFAULT_CORE_FILE); - - case 'd': - return xasprintf (text, DEFAULT_DIRECTORY); - - case 'm': - return xasprintf (text, DEFAULT_DEVICE_MAP); - - default: - return (char *) text; - } -} - -#pragma GCC diagnostic error "-Wformat-nonliteral" - -struct arguments -{ - char *boot_file; - char *core_file; - char *dir; - char *dev_map; - int force; - int fs_probe; - int allow_floppy; - char *device; - int add_rs_codes; -}; - -static error_t -argp_parser (int key, char *arg, struct argp_state *state) -{ - /* Get the input argument from argp_parse, which we - know is a pointer to our arguments structure. */ - struct arguments *arguments = state->input; - - switch (key) - { - case 'a': - arguments->allow_floppy = 1; - break; - - case 'b': - if (arguments->boot_file) - free (arguments->boot_file); - - arguments->boot_file = xstrdup (arg); - break; - - case 'c': - if (arguments->core_file) - free (arguments->core_file); - - arguments->core_file = xstrdup (arg); - break; - - case 'd': - if (arguments->dir) - free (arguments->dir); - - arguments->dir = xstrdup (arg); - break; - - case 'm': - if (arguments->dev_map) - free (arguments->dev_map); - - arguments->dev_map = xstrdup (arg); - break; - - case 'f': - arguments->force = 1; - break; - - case 's': - arguments->fs_probe = 0; - break; - - case 'v': - verbosity++; - break; - - case NO_RS_CODES_KEY: - arguments->add_rs_codes = 0; - break; - - case ARGP_KEY_ARG: - if (state->arg_num == 0) - arguments->device = xstrdup(arg); - else - { - /* Too many arguments. */ - fprintf (stderr, _("Unknown extra argument `%s'."), arg); - fprintf (stderr, "\n"); - argp_usage (state); - } - break; - - case ARGP_KEY_NO_ARGS: - fprintf (stderr, "%s", _("No device is specified.\n")); - argp_usage (state); - exit (1); - break; - - default: - return ARGP_ERR_UNKNOWN; - } - - return 0; -} - -static struct argp argp = { - options, argp_parser, N_("DEVICE"), - "\n"N_("\ -Set up images to boot from DEVICE.\n\ -\n\ -You should not normally run this program directly. Use grub-install instead.") -"\v"N_("\ -DEVICE must be an OS device (e.g. /dev/sda)."), - NULL, help_filter, NULL -}; - -static char * -get_device_name (char *dev) -{ - size_t len = strlen (dev); - - if (dev[0] != '(' || dev[len - 1] != ')') - return 0; - - dev[len - 1] = '\0'; - return dev + 1; -} - -int -main (int argc, char *argv[]) -{ - char *root_dev = NULL; - char *dest_dev = NULL; - struct arguments arguments; - - grub_util_host_init (&argc, &argv); - - /* Default option values. */ - memset (&arguments, 0, sizeof (struct arguments)); - arguments.fs_probe = 1; - arguments.add_rs_codes = 1; - - /* Parse our arguments */ - if (argp_parse (&argp, argc, argv, 0, 0, &arguments) != 0) - { - fprintf (stderr, "%s", _("Error in parsing command line arguments\n")); - exit(1); - } - -#ifdef GRUB_SETUP_SPARC64 - arguments.force = 1; -#endif - - if (verbosity > 1) - grub_env_set ("debug", "all"); - - /* Initialize the emulated biosdisk driver. */ - grub_util_biosdisk_init (arguments.dev_map ? : DEFAULT_DEVICE_MAP); - - /* Initialize all modules. */ - grub_init_all (); - grub_gcry_init_all (); - - grub_lvm_fini (); - grub_mdraid09_fini (); - grub_mdraid1x_fini (); - grub_diskfilter_fini (); - grub_diskfilter_init (); - grub_mdraid09_init (); - grub_mdraid1x_init (); - grub_lvm_init (); - - dest_dev = get_device_name (arguments.device); - if (! dest_dev) - { - /* Possibly, the user specified an OS device file. */ - dest_dev = grub_util_get_grub_dev (arguments.device); - if (! dest_dev) - { - char *program = xstrdup(program_name); - fprintf (stderr, _("Invalid device `%s'.\n"), arguments.device); - argp_help (&argp, stderr, ARGP_HELP_STD_USAGE, program); - free(program); - exit(1); - } - grub_util_info ("transformed OS device `%s' into GRUB device `%s'", - arguments.device, dest_dev); - } - else - { - /* For simplicity. */ - dest_dev = xstrdup (dest_dev); - grub_util_info ("Using `%s' as GRUB device", dest_dev); - } - - /* Do the real work. */ - GRUB_SETUP_FUNC (arguments.dir ? : DEFAULT_DIRECTORY, - arguments.boot_file ? : DEFAULT_BOOT_FILE, - arguments.core_file ? : DEFAULT_CORE_FILE, - dest_dev, arguments.force, - arguments.fs_probe, arguments.allow_floppy, - arguments.add_rs_codes); - - /* Free resources. */ - grub_fini_all (); - grub_util_biosdisk_fini (); - - free (arguments.boot_file); - free (arguments.core_file); - free (arguments.dir); - free (arguments.dev_map); - free (arguments.device); - free (root_dev); - free (dest_dev); - - return 0; -} diff --git a/thirdparty/grub-2.04/util/grub-syslinux2cfg.c b/thirdparty/grub-2.04/util/grub-syslinux2cfg.c deleted file mode 100644 index 85fa0da14..000000000 --- a/thirdparty/grub-2.04/util/grub-syslinux2cfg.c +++ /dev/null @@ -1,246 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2010,2012,2013 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - - -#include - -#include -#include -#include -#include -#include - -#define _GNU_SOURCE 1 - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#pragma GCC diagnostic ignored "-Wmissing-prototypes" -#pragma GCC diagnostic ignored "-Wmissing-declarations" -#include -#pragma GCC diagnostic error "-Wmissing-prototypes" -#pragma GCC diagnostic error "-Wmissing-declarations" - -#include "progname.h" - -struct arguments -{ - char *input; - char *root; - char *target_root; - char *cwd; - char *target_cwd; - char *output; - int verbosity; - grub_syslinux_flavour_t flav; -}; - -static struct argp_option options[] = { - {"target-root", 't', N_("DIR"), 0, - N_("root directory as it will be seen on runtime [default=/]."), 0}, - {"root", 'r', N_("DIR"), 0, - N_("root directory of the syslinux disk [default=/]."), 0}, - {"target-cwd", 'T', N_("DIR"), 0, - N_( - "current directory of syslinux as it will be seen on runtime [default is parent directory of input file]." -), 0}, - {"cwd", 'c', N_("DIR"), 0, - N_("current directory of syslinux [default is parent directory of input file]."), 0}, - - {"output", 'o', N_("FILE"), 0, N_("write output to FILE [default=stdout]."), 0}, - {"isolinux", 'i', 0, 0, N_("assume input is an isolinux configuration file."), 0}, - {"pxelinux", 'p', 0, 0, N_("assume input is a pxelinux configuration file."), 0}, - {"syslinux", 's', 0, 0, N_("assume input is a syslinux configuration file."), 0}, - {"verbose", 'v', 0, 0, N_("print verbose messages."), 0}, - { 0, 0, 0, 0, 0, 0 } -}; - -static error_t -argp_parser (int key, char *arg, struct argp_state *state) -{ - /* Get the input argument from argp_parse, which we - know is a pointer to our arguments structure. */ - struct arguments *arguments = state->input; - - switch (key) - { - case 't': - free (arguments->target_root); - arguments->target_root = xstrdup (arg); - break; - - case 'T': - free (arguments->target_cwd); - arguments->target_cwd = xstrdup (arg); - break; - - case 'c': - free (arguments->cwd); - arguments->cwd = xstrdup (arg); - break; - - case 'o': - free (arguments->output); - arguments->output = xstrdup (arg); - break; - - case ARGP_KEY_ARG: - if (!arguments->input) - { - arguments->input = xstrdup (arg); - return 0; - } - return ARGP_ERR_UNKNOWN; - - case 'r': - free (arguments->root); - arguments->root = xstrdup (arg); - return 0; - - case 'i': - arguments->flav = GRUB_SYSLINUX_ISOLINUX; - break; - - case 's': - arguments->flav = GRUB_SYSLINUX_SYSLINUX; - break; - case 'p': - arguments->flav = GRUB_SYSLINUX_PXELINUX; - break; - - case 'v': - arguments->verbosity++; - break; - - default: - return ARGP_ERR_UNKNOWN; - } - - return 0; -} - -static struct argp argp = { - options, argp_parser, N_("FILE"), - N_("Transform syslinux config into GRUB one."), - NULL, NULL, NULL -}; - -int -main (int argc, char *argv[]) -{ - struct arguments arguments; - - grub_util_host_init (&argc, &argv); - - /* Check for options. */ - memset (&arguments, 0, sizeof (struct arguments)); - if (argp_parse (&argp, argc, argv, 0, 0, &arguments) != 0) - { - fprintf (stderr, "%s", _("Error in parsing command line arguments\n")); - exit(1); - } - - if (!arguments.input) - { - fprintf (stderr, "%s", _("Missing arguments\n")); - exit(1); - } - - grub_init_all (); - grub_hostfs_init (); - grub_host_init (); - - char *t, *inpfull, *rootfull, *res; - t = grub_canonicalize_file_name (arguments.input); - if (!t) - { - grub_util_error (_("cannot open `%s': %s"), arguments.input, - strerror (errno)); - } - - inpfull = xasprintf ("(host)/%s", t); - free (t); - - t = grub_canonicalize_file_name (arguments.root ? : "/"); - if (!t) - { - grub_util_error (_("cannot open `%s': %s"), arguments.root, - strerror (errno)); - } - - rootfull = xasprintf ("(host)/%s", t); - free (t); - - char *cwd = xstrdup (arguments.input); - char *p = strrchr (cwd, '/'); - char *cwdfull; - if (p) - *p = '\0'; - else - { - free (cwd); - cwd = xstrdup ("."); - } - - t = grub_canonicalize_file_name (arguments.cwd ? : cwd); - if (!t) - { - grub_util_error (_("cannot open `%s': %s"), arguments.root, - strerror (errno)); - } - - cwdfull = xasprintf ("(host)/%s", t); - free (t); - - res = grub_syslinux_config_file (rootfull, arguments.target_root ? : "/", - cwdfull, arguments.target_cwd ? : cwd, - inpfull, arguments.flav); - if (!res) - grub_util_error ("%s", grub_errmsg); - if (arguments.output) - { - FILE *f = grub_util_fopen (arguments.output, "wb"); - if (!f) - grub_util_error (_("cannot open `%s': %s"), arguments.output, - strerror (errno)); - fwrite (res, 1, strlen (res), f); - fclose (f); - } - else - printf ("%s\n", res); - free (res); - free (rootfull); - free (inpfull); - free (arguments.root); - free (arguments.output); - free (arguments.target_root); - free (arguments.input); - free (cwdfull); - free (cwd); - - return 0; -} diff --git a/thirdparty/grub-2.04/util/grub.d/00_header.in b/thirdparty/grub-2.04/util/grub.d/00_header.in deleted file mode 100644 index 93a90233e..000000000 --- a/thirdparty/grub-2.04/util/grub.d/00_header.in +++ /dev/null @@ -1,356 +0,0 @@ -#! /bin/sh -set -e - -# grub-mkconfig helper script. -# Copyright (C) 2006,2007,2008,2009,2010 Free Software Foundation, Inc. -# -# GRUB is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# GRUB is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with GRUB. If not, see . - -prefix="@prefix@" -exec_prefix="@exec_prefix@" -datarootdir="@datarootdir@" -grub_lang=`echo $LANG | cut -d . -f 1` - -export TEXTDOMAIN=@PACKAGE@ -export TEXTDOMAINDIR="@localedir@" - -. "$pkgdatadir/grub-mkconfig_lib" - -# Do this as early as possible, since other commands might depend on it. -# (e.g. the `loadfont' command might need lvm or raid modules) -for i in ${GRUB_PRELOAD_MODULES} ; do - echo "insmod $i" -done - -if [ "x${GRUB_DEFAULT}" = "x" ] ; then GRUB_DEFAULT=0 ; fi -if [ "x${GRUB_DEFAULT}" = "xsaved" ] ; then GRUB_DEFAULT='${saved_entry}' ; fi -if [ "x${GRUB_TIMEOUT}" = "x" ] ; then GRUB_TIMEOUT=5 ; fi -if [ "x${GRUB_GFXMODE}" = "x" ] ; then GRUB_GFXMODE=auto ; fi - -if [ "x${GRUB_DEFAULT_BUTTON}" = "x" ] ; then GRUB_DEFAULT_BUTTON="$GRUB_DEFAULT" ; fi -if [ "x${GRUB_DEFAULT_BUTTON}" = "xsaved" ] ; then GRUB_DEFAULT_BUTTON='${saved_entry}' ; fi -if [ "x${GRUB_TIMEOUT_BUTTON}" = "x" ] ; then GRUB_TIMEOUT_BUTTON="$GRUB_TIMEOUT" ; fi - -cat << EOF -if [ -s \$prefix/grubenv ]; then - load_env -fi -EOF -if [ "x$GRUB_BUTTON_CMOS_ADDRESS" != "x" ]; then - cat < /dev/null ; then - font_path="${path}" - else - continue - fi - break 2 - done - done - if [ -n "${font_path}" ] ; then - cat << EOF -if [ x\$feature_default_font_path = xy ] ; then - font=unicode -else -EOF - # Make the font accessible - prepare_grub_to_access_device `${grub_probe} --target=device "${font_path}"` - cat << EOF - font="`make_system_path_relative_to_its_root "${font_path}"`" -fi - -if loadfont \$font ; then -EOF - else - cat << EOF -if loadfont unicode ; then -EOF - fi - fi - - cat << EOF - set gfxmode=${GRUB_GFXMODE} - load_video - insmod gfxterm -EOF - -# Gettext variables and module -if [ "x${LANG}" != "xC" ] && [ "x${LANG}" != "x" ]; then - cat << EOF - set locale_dir=\$prefix/locale - set lang=${grub_lang} - insmod gettext -EOF -fi - -cat <&2 - - prepare_grub_to_access_device `${grub_probe} --target=device "$GRUB_THEME"` - cat << EOF -insmod gfxmenu -EOF - themedir="`dirname "$GRUB_THEME"`" - for x in "$themedir"/*.pf2 "$themedir"/f/*.pf2; do - if [ -f "$x" ]; then - cat << EOF -loadfont (\$root)`make_system_path_relative_to_its_root $x` -EOF - fi - done - if [ x"`echo "$themedir"/*.jpg`" != x"$themedir/*.jpg" ] || [ x"`echo "$themedir"/*.jpeg`" != x"$themedir/*.jpeg" ]; then - cat << EOF -insmod jpeg -EOF - fi - if [ x"`echo "$themedir"/*.png`" != x"$themedir/*.png" ]; then - cat << EOF -insmod png -EOF - fi - if [ x"`echo "$themedir"/*.tga`" != x"$themedir/*.tga" ]; then - cat << EOF -insmod tga -EOF - fi - - cat << EOF -set theme=(\$root)`make_system_path_relative_to_its_root $GRUB_THEME` -export theme -EOF - elif [ "x$GRUB_BACKGROUND" != x ] && [ -f "$GRUB_BACKGROUND" ] \ - && is_path_readable_by_grub "$GRUB_BACKGROUND"; then - gettext_printf "Found background: %s\n" "$GRUB_BACKGROUND" >&2 - case "$GRUB_BACKGROUND" in - *.png) reader=png ;; - *.tga) reader=tga ;; - *.jpg|*.jpeg) reader=jpeg ;; - *) gettext "Unsupported image format" >&2; echo >&2; exit 1 ;; - esac - prepare_grub_to_access_device `${grub_probe} --target=device "$GRUB_BACKGROUND"` - cat << EOF -insmod $reader -background_image -m stretch `make_system_path_relative_to_its_root "$GRUB_BACKGROUND"` -EOF - fi -fi - -make_timeout () -{ - if [ "x${3}" != "x" ] ; then - timeout="${2}" - style="${3}" - elif [ "x${1}" != "x" ] && [ "x${1}" != "x0" ] ; then - # Handle the deprecated GRUB_HIDDEN_TIMEOUT scheme. - timeout="${1}" - if [ "x${2}" != "x0" ] ; then - grub_warn "$(gettext "Setting GRUB_TIMEOUT to a non-zero value when GRUB_HIDDEN_TIMEOUT is set is no longer supported.")" - fi - if [ "x${GRUB_HIDDEN_TIMEOUT_QUIET}" = "xtrue" ] ; then - style="hidden" - verbose= - else - style="countdown" - verbose=" --verbose" - fi - else - # No hidden timeout, so treat as GRUB_TIMEOUT_STYLE=menu - timeout="${2}" - style="menu" - fi - cat << EOF -if [ x\$feature_timeout_style = xy ] ; then - set timeout_style=${style} - set timeout=${timeout} -EOF - if [ "x${style}" = "xmenu" ] ; then - cat << EOF -# Fallback normal timeout code in case the timeout_style feature is -# unavailable. -else - set timeout=${timeout} -EOF - else - cat << EOF -# Fallback hidden-timeout code in case the timeout_style feature is -# unavailable. -elif sleep${verbose} --interruptible ${timeout} ; then - set timeout=0 -EOF - fi - cat << EOF -fi -EOF -} - -if [ "x$GRUB_BUTTON_CMOS_ADDRESS" != "x" ]; then - cat <. - -prefix="@prefix@" -exec_prefix="@exec_prefix@" -datarootdir="@datarootdir@" - -export TEXTDOMAIN=@PACKAGE@ -export TEXTDOMAINDIR="@localedir@" - -. "$pkgdatadir/grub-mkconfig_lib" - -CLASS="--class gnu --class os" - -if [ "x${GRUB_DISTRIBUTOR}" = "x" ] ; then - OS=GNU -else - OS="${GRUB_DISTRIBUTOR} GNU/Hurd" - CLASS="--class $(echo ${GRUB_DISTRIBUTOR} | tr 'A-Z' 'a-z' | cut -d' ' -f1|LC_ALL=C sed 's,[^[:alnum:]_],_,g') ${CLASS}" -fi - -at_least_one=false -all_of_them=true - -# FIXME: add l4 here? -kernel= -for i in /boot/gnumach* ; do - if test -e $i ; then - basename=`basename $i` - dirname=`dirname $i` - rel_dirname=`make_system_path_relative_to_its_root $dirname` - gettext_printf "Found GNU Mach: %s" "$i" >&2 - echo >&2 - kernels="${kernels} ${rel_dirname}/${basename}" - at_least_one=true - fi -done - -# FIXME: This works for ext2. For other filesystems we might need special-casing -case "${GRUB_FS}" in - *fs) hurd_fs="${GRUB_FS}" ;; - *) hurd_fs="${GRUB_FS}fs" ;; -esac - -for i in /hurd/${hurd_fs}.static /hurd/exec ; do - if test -e "$i" ; then - gettext_printf "Found Hurd module: %s" "$i" >&2 - echo >&2 - at_least_one=true - else - all_of_them=false - fi -done - -if ${at_least_one} ; then : ; else - # no hurd here, aborting silently - exit 0 -fi - -if ${all_of_them} && test -e /lib/ld.so.1 ; then : ; else - gettext "Some Hurd stuff found, but not enough to boot." >&2 - echo >&2 - exit 1 -fi - -title_correction_code= - -hurd_entry () { - kernel="$1" - type="$2" - kernel_base="`basename "${kernel}"`" - - if [ x$type != xsimple ] ; then - if [ x$type = xrecovery ] ; then - title="$(gettext_printf "%s, with Hurd %s (recovery mode)" "${OS}" "${kernel_base}")" - oldtitle="$OS using $kernel_base (recovery mode)" - else - title="$(gettext_printf "%s, with Hurd %s" "${OS}" "${kernel_base}")" - oldtitle="$OS using $kernel_base" - fi - if [ x"$oldtitle" = x"$GRUB_ACTUAL_DEFAULT" ]; then - quoted="$(echo "$GRUB_ACTUAL_DEFAULT" | grub_quote)" - title_correction_code="${title_correction_code}if [ \"x\$default\" = '$quoted' ]; then default='$(echo "$replacement_title" | grub_quote)'; fi;" - grub_warn "$(gettext_printf "Please don't use old title \`%s' for GRUB_DEFAULT, use \`%s' (for versions before 2.00) or \`%s' (for 2.00 or later)" "$GRUB_ACTUAL_DEFAULT" "$replacement_title" "gnuhurd-advanced-$boot_device_id>'gnuhurd-$kernel-$type-$(grub_get_device_id "${GRUB_DEVICE_BOOT}")'")" - fi - sed "s/^/$submenu_indentation/" << EOF -menuentry '$(echo "$title" | grub_quote)' ${CLASS} \$menuentry_id_option 'gnuhurd-$kernel-$type-$(grub_get_device_id "${GRUB_DEVICE_BOOT}")' { -EOF - else - sed "s/^/$submenu_indentation/" << EOF -menuentry '$(echo "$OS" | grub_quote)' ${CLASS} \$menuentry_id_option 'gnuhurd-simple-$(grub_get_device_id "${GRUB_DEVICE_BOOT}")' { -EOF - fi - - prepare_grub_to_access_device "${GRUB_DEVICE_BOOT}" | grub_add_tab|sed "s/^/$submenu_indentation/" - message="$(gettext_printf "Loading GNU Mach ...")" - - if [ x$type = xrecovery ] ; then - opts="-s" - else - opts= - fi - sed "s/^/$submenu_indentation/" << EOF - echo '$(echo "$message" | grub_quote)' - multiboot ${kernel} root=device:${GRUB_DEVICE#/dev/} $opts ${GRUB_CMDLINE_GNUMACH} -EOF - - if [ x$type != xrecovery ] ; then - save_default_entry | grub_add_tab| sed "s/^/$submenu_indentation/" - fi - prepare_grub_to_access_device "${GRUB_DEVICE}" | grub_add_tab| sed "s/^/$submenu_indentation/" - message="$(gettext_printf "Loading the Hurd ...")" - if [ x$type = xrecovery ] ; then - opts= - else - opts="--readonly" - fi - - sed "s/^/$submenu_indentation/" << EOF - echo '$(echo "$message" | grub_quote)' - module /hurd/${hurd_fs}.static ${hurd_fs} $opts \\ - --multiboot-command-line='\${kernel-command-line}' \\ - --host-priv-port='\${host-port}' \\ - --device-master-port='\${device-port}' \\ - --exec-server-task='\${exec-task}' -T typed '\${root}' \\ - '\$(task-create)' '\$(task-resume)' - module /lib/ld.so.1 exec /hurd/exec '\$(exec-task=task-create)' -} -EOF - -} - -title_correction_code= - -# Extra indentation to add to menu entries in a submenu. We're not in a submenu -# yet, so it's empty. In a submenu it will be equal to '\t' (one tab). -submenu_indentation="" -is_top_level=true - -while [ "x$kernels" != "x" ] ; do - kernel=`version_find_latest $kernels` - - if [ "x$is_top_level" = xtrue ] && [ "x${GRUB_DISABLE_SUBMENU}" != xy ]; then - hurd_entry "$kernel" simple - submenu_indentation="$grub_tab" - - # TRANSLATORS: %s is replaced with an OS name - echo "submenu '$(gettext_printf "Advanced options for %s" "${OS}" | grub_quote)' \$menuentry_id_option 'gnuhurd-advanced-$(grub_get_device_id "${GRUB_DEVICE_BOOT}")' {" - is_top_level=false - fi - - hurd_entry "$kernel" advanced - hurd_entry "$kernel" recovery - - kernels=`echo $kernels | tr ' ' '\n' | fgrep -vx "$kernel" | tr '\n' ' '` -done - -# If at least one kernel was found, then we need to -# add a closing '}' for the submenu command. -if [ x"$is_top_level" != xtrue ]; then - echo '}' -fi - -echo "$title_correction_code" diff --git a/thirdparty/grub-2.04/util/grub.d/10_illumos.in b/thirdparty/grub-2.04/util/grub.d/10_illumos.in deleted file mode 100644 index a133e1b3f..000000000 --- a/thirdparty/grub-2.04/util/grub.d/10_illumos.in +++ /dev/null @@ -1,53 +0,0 @@ -#! /bin/sh -set -e - -# grub-mkconfig helper script. -# Copyright (C) 2006,2007,2008,2009,2010,2011 Free Software Foundation, Inc. -# -# GRUB is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# GRUB is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with GRUB. If not, see . - -prefix="@prefix@" -exec_prefix="@exec_prefix@" -datarootdir="@datarootdir@" -. "$pkgdatadir/grub-mkconfig_lib" - -export TEXTDOMAIN=@PACKAGE@ -export TEXTDOMAINDIR="@localedir@" - -CLASS="--class os" - -case "${GRUB_DISTRIBUTOR}" in - *) - OS="Illumos" - CLASS="--class illumos ${CLASS}" - ;; -esac - -echo "menuentry '$(echo "$OS" | grub_quote)' ${CLASS} \$menuentry_id_option 'illumos-$(grub_get_device_id "${GRUB_DEVICE_BOOT}")' {" -save_default_entry | grub_add_tab -prepare_grub_to_access_device "${GRUB_DEVICE_BOOT}" | grub_add_tab -message="$(gettext_printf "Loading kernel of Illumos ...")" - cat << EOF - insmod gzio - if cpuid -l ; then - ISADIR=amd64 - else - ISADIR= - fi - zfs-bootfs $($grub_mkrelpath /) ZFS_BOOTFS - echo '$(echo "$message" | grub_quote)' - multiboot $($grub_mkrelpath /platform/i86pc/kernel)/\$ISADIR/unix /platform/i86pc/kernel/\$ISADIR/unix -B \$ZFS_BOOTFS,console=text - module $($grub_mkrelpath /platform/i86pc)/\$ISADIR/boot_archive /platform/i86pc/\$ISADIR/boot_archive -} -EOF diff --git a/thirdparty/grub-2.04/util/grub.d/10_kfreebsd.in b/thirdparty/grub-2.04/util/grub.d/10_kfreebsd.in deleted file mode 100644 index 9d8e8fd85..000000000 --- a/thirdparty/grub-2.04/util/grub.d/10_kfreebsd.in +++ /dev/null @@ -1,244 +0,0 @@ -#! /bin/sh -set -e - -# grub-mkconfig helper script. -# Copyright (C) 2006,2007,2008,2009,2010,2011 Free Software Foundation, Inc. -# -# GRUB is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# GRUB is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with GRUB. If not, see . - -prefix="@prefix@" -exec_prefix="@exec_prefix@" -datarootdir="@datarootdir@" -. "$pkgdatadir/grub-mkconfig_lib" - -export TEXTDOMAIN=@PACKAGE@ -export TEXTDOMAINDIR="@localedir@" - -CLASS="--class os" - -case "${GRUB_DISTRIBUTOR}" in - Debian) - OS="${GRUB_DISTRIBUTOR} GNU/kFreeBSD" - CLASS="--class $(echo ${GRUB_DISTRIBUTOR} | tr 'A-Z' 'a-z' | cut -d' ' -f1|LC_ALL=C sed 's,[^[:alnum:]_],_,g') --class gnu-kfreebsd --class gnu ${CLASS}" - ;; - *) - OS="FreeBSD" - CLASS="--class freebsd --class bsd ${CLASS}" - ;; -esac - -load_kfreebsd_module () -{ - mod="$1" - allow_fail="$2" - - if ! test -e "${module_dir}/${mod}.ko" ; then - if [ "${allow_fail}" = "true" ] ; then - # Return silently - return - else - # Print an error and fail. - ls "${module_dir}/${mod}.ko" > /dev/null - fi - fi - - if [ -z "${prepare_module_dir_cache}" ]; then - prepare_module_dir_cache="$(prepare_grub_to_access_device $(${grub_probe} -t device "${module_dir}") | grub_add_tab)" - fi - - printf '%s\n' "${prepare_module_dir_cache}" - cat << EOF - kfreebsd_module_elf ${module_dir_rel}/${mod}.ko -EOF -} - -title_correction_code= - -kfreebsd_entry () -{ - os="$1" - version="$2" - type="$3" - args="$4" - if [ -z "$boot_device_id" ]; then - boot_device_id="$(grub_get_device_id "${GRUB_DEVICE}")" - fi - if [ x$type != xsimple ] ; then - if [ x$type = xrecovery ] ; then - title="$(gettext_printf "%s, with kFreeBSD %s (recovery mode)" "${os}" "${version}")" - else - title="$(gettext_printf "%s, with kFreeBSD %s" "${os}" "${version}")" - fi - replacement_title="$(echo "Advanced options for ${OS}" | sed 's,>,>>,g')>$(echo "$title" | sed 's,>,>>,g')" - if [ x"$title" = x"$GRUB_ACTUAL_DEFAULT" ]; then - quoted="$(echo "$GRUB_ACTUAL_DEFAULT" | grub_quote)" - title_correction_code="${title_correction_code}if [ \"x\$default\" = '$quoted' ]; then default='$(echo "$replacement_title" | grub_quote)'; fi;" - grub_warn "$(gettext_printf "Please don't use old title \`%s' for GRUB_DEFAULT, use \`%s' (for versions before 2.00) or \`%s' (for 2.00 or later)" "$GRUB_ACTUAL_DEFAULT" "$replacement_title" "kfreebsd-advanced-$boot_device_id>kfreebsd-$version-$type-$boot_device_id")" - fi - echo "menuentry '$(echo "$title" | grub_quote)' ${CLASS} \$menuentry_id_option 'kfreebsd-$version-$type-$boot_device_id' {" | sed "s/^/$submenu_indentation/" - else - echo "menuentry '$(echo "$OS" | grub_quote)' ${CLASS} \$menuentry_id_option 'kfreebsd-simple-$boot_device_id' {" | sed "s/^/$submenu_indentation/" - fi - if [ x$type != xrecovery ] ; then - save_default_entry | grub_add_tab | sed "s/^/$submenu_indentation/" - fi - if [ -z "${prepare_boot_cache}" ]; then - prepare_boot_cache="$(prepare_grub_to_access_device ${GRUB_DEVICE_BOOT} | grub_add_tab)" - fi - - printf '%s\n' "${prepare_boot_cache}" | sed "s/^/$submenu_indentation/" - message="$(gettext_printf "Loading kernel of FreeBSD %s ..." ${version})" - sed "s/^/$submenu_indentation/" << EOF - echo '$(echo "$message" | grub_quote)' - kfreebsd ${rel_dirname}/${basename} ${args} -EOF - - if test -n "${devices}" ; then - sed "s/^/$submenu_indentation/" << EOF - kfreebsd_loadenv ${devices_rel_dirname}/${devices_basename} -EOF - fi - - load_kfreebsd_module acpi true - - for abstraction in dummy $(${grub_probe} -t abstraction --device ${GRUB_DEVICE}) ; do - case $abstraction in - lvm) load_kfreebsd_module geom_linux_lvm false ;; - esac - done - - case "${kfreebsd_fs}" in - zfs) - load_kfreebsd_module opensolaris false - - ls "/boot/zfs/zpool.cache" > /dev/null - printf '%s\n' "${prepare_boot_cache}" - sed "s/^/$submenu_indentation/" << EOF - kfreebsd_module $(make_system_path_relative_to_its_root /boot)/zfs/zpool.cache type=/boot/zfs/zpool.cache -EOF - ;; - esac - - if [ x${kfreebsd_fs} = xufs ]; then - load_kfreebsd_module ${kfreebsd_fs} true | sed "s/^/$submenu_indentation/" - else - load_kfreebsd_module ${kfreebsd_fs} false | sed "s/^/$submenu_indentation/" - fi - - sed "s/^/$submenu_indentation/" << EOF - set kFreeBSD.vfs.root.mountfrom=${kfreebsd_fs}:${kfreebsd_device} - set kFreeBSD.vfs.root.mountfrom.options=rw -} -EOF -} - -list= -for i in /boot/kfreebsd-* /boot/kernel/kernel ; do - if grub_file_is_not_garbage "$i" ; then - list="$list $i" - fi -done -prepare_boot_cache= -boot_device_id= -title_correction_code= - -# Extra indentation to add to menu entries in a submenu. We're not in a submenu -# yet, so it's empty. In a submenu it will be equal to '\t' (one tab). -submenu_indentation="" - -is_top_level=true - -while [ "x$list" != "x" ] ; do - kfreebsd=`version_find_latest $list` - gettext_printf "Found kernel of FreeBSD: %s\n" "$kfreebsd" >&2 - basename=`basename $kfreebsd` - dirname=`dirname $kfreebsd` - rel_dirname=`make_system_path_relative_to_its_root $dirname` - - if [ -f /boot/device.hints ] ; then - devices=/boot/device.hints - devices_basename=`basename $devices` - devices_dirname=`dirname $devices` - devices_rel_dirname=`make_system_path_relative_to_its_root $devices_dirname` - fi - - case ${GRUB_FS} in - ufs1 | ufs2) kfreebsd_fs=ufs ;; - ext2) kfreebsd_fs=ext2fs ;; - *) kfreebsd_fs=${GRUB_FS} ;; - esac - - case ${GRUB_FS} in - zfs) - # zpool name - kfreebsd_device=$(${grub_probe} -t fs_label --device ${GRUB_DEVICE}) - # filesystem name (empty string for the main filesystem) - kfreebsd_device="${kfreebsd_device}$(${grub_mkrelpath} / | sed -e "s,/*@$,,")" - ;; - *) - kfreebsd_device=${kfreebsd_fs}id/${GRUB_DEVICE_UUID} - # Debian GNU/kFreeBSD can't remount root if it's supplied as UUID but - # as an UUID - if [ "x${GRUB_DISTRIBUTOR}" = "xDebian" ] \ - && ! (cat /etc/fstab | awk '!/^[[:space:]]*#/ && $2=="/" { print $1; }' \ - | grep "${kfreebsd_fs}id/${GRUB_DEVICE_UUID}" > /dev/null); then - kfreebsd_device=${GRUB_DEVICE} - fi - ;; - esac - - version=`echo $basename | sed -e "s,^[^0-9]*-,,g;s/\.gz$//g"` - alt_version=`echo $version | sed -e "s,\.old$,,g"` - - module_dir= - for i in "/lib/modules/${version}" "/lib/modules/${alt_version}" \ - "/boot/kernel"; do - if test -e "$i" ; then - module_dir="$i" - break - fi - done - if test -n "${module_dir}" ; then - gettext_printf "Found kernel module directory: %s\n" "${module_dir}" >&2 - module_dir_rel=$(make_system_path_relative_to_its_root $module_dir) - fi - - if [ "x$is_top_level" = xtrue ] && [ "x${GRUB_DISABLE_SUBMENU}" != xy ]; then - kfreebsd_entry "${OS}" "${version}" simple - submenu_indentation="$grub_tab" - - if [ -z "$boot_device_id" ]; then - boot_device_id="$(grub_get_device_id "${GRUB_DEVICE}")" - fi - # TRANSLATORS: %s is replaced with an OS name - echo "submenu '$(gettext_printf "Advanced options for %s" "${OS}" | grub_quote)' \$menuentry_id_option 'kfreebsd-advanced-$boot_device_id' {" - is_top_level=false - fi - - kfreebsd_entry "${OS}" "${version}" advanced - if [ "x${GRUB_DISABLE_RECOVERY}" != "xtrue" ]; then - kfreebsd_entry "${OS}" "${version}" recovery "-s" - fi - - list=`echo $list | tr ' ' '\n' | fgrep -vx "$kfreebsd" | tr '\n' ' '` -done - -# If at least one kernel was found, then we need to -# add a closing '}' for the submenu command. -if [ x"$is_top_level" != xtrue ]; then - echo '}' -fi - -echo "$title_correction_code" - diff --git a/thirdparty/grub-2.04/util/grub.d/10_linux.in b/thirdparty/grub-2.04/util/grub.d/10_linux.in deleted file mode 100644 index 4532266be..000000000 --- a/thirdparty/grub-2.04/util/grub.d/10_linux.in +++ /dev/null @@ -1,294 +0,0 @@ -#! /bin/sh -set -e - -# grub-mkconfig helper script. -# Copyright (C) 2006,2007,2008,2009,2010 Free Software Foundation, Inc. -# -# GRUB is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# GRUB is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with GRUB. If not, see . - -prefix="@prefix@" -exec_prefix="@exec_prefix@" -datarootdir="@datarootdir@" - -. "$pkgdatadir/grub-mkconfig_lib" - -export TEXTDOMAIN=@PACKAGE@ -export TEXTDOMAINDIR="@localedir@" - -CLASS="--class gnu-linux --class gnu --class os" - -if [ "x${GRUB_DISTRIBUTOR}" = "x" ] ; then - OS=GNU/Linux -else - OS="${GRUB_DISTRIBUTOR} GNU/Linux" - CLASS="--class $(echo ${GRUB_DISTRIBUTOR} | tr 'A-Z' 'a-z' | cut -d' ' -f1|LC_ALL=C sed 's,[^[:alnum:]_],_,g') ${CLASS}" -fi - -# loop-AES arranges things so that /dev/loop/X can be our root device, but -# the initrds that Linux uses don't like that. -case ${GRUB_DEVICE} in - /dev/loop/*|/dev/loop[0-9]) - GRUB_DEVICE=`losetup ${GRUB_DEVICE} | sed -e "s/^[^(]*(\([^)]\+\)).*/\1/"` - ;; -esac - -# Default to disabling partition uuid support to maintian compatibility with -# older kernels. -GRUB_DISABLE_LINUX_PARTUUID=${GRUB_DISABLE_LINUX_PARTUUID-true} - -# btrfs may reside on multiple devices. We cannot pass them as value of root= parameter -# and mounting btrfs requires user space scanning, so force UUID in this case. -if ( [ "x${GRUB_DEVICE_UUID}" = "x" ] && [ "x${GRUB_DEVICE_PARTUUID}" = "x" ] ) \ - || ( [ "x${GRUB_DISABLE_LINUX_UUID}" = "xtrue" ] \ - && [ "x${GRUB_DISABLE_LINUX_PARTUUID}" = "xtrue" ] ) \ - || ( ! test -e "/dev/disk/by-uuid/${GRUB_DEVICE_UUID}" \ - && ! test -e "/dev/disk/by-partuuid/${GRUB_DEVICE_PARTUUID}" ) \ - || ( test -e "${GRUB_DEVICE}" && uses_abstraction "${GRUB_DEVICE}" lvm ); then - LINUX_ROOT_DEVICE=${GRUB_DEVICE} -elif [ "x${GRUB_DEVICE_UUID}" = "x" ] \ - || [ "x${GRUB_DISABLE_LINUX_UUID}" = "xtrue" ]; then - LINUX_ROOT_DEVICE=PARTUUID=${GRUB_DEVICE_PARTUUID} -else - LINUX_ROOT_DEVICE=UUID=${GRUB_DEVICE_UUID} -fi - -case x"$GRUB_FS" in - xbtrfs) - rootsubvol="`make_system_path_relative_to_its_root /`" - rootsubvol="${rootsubvol#/}" - if [ "x${rootsubvol}" != x ]; then - GRUB_CMDLINE_LINUX="rootflags=subvol=${rootsubvol} ${GRUB_CMDLINE_LINUX}" - fi;; - xzfs) - rpool=`${grub_probe} --device ${GRUB_DEVICE} --target=fs_label 2>/dev/null || true` - bootfs="`make_system_path_relative_to_its_root / | sed -e "s,@$,,"`" - LINUX_ROOT_DEVICE="ZFS=${rpool}${bootfs%/}" - ;; -esac - -title_correction_code= - -linux_entry () -{ - os="$1" - version="$2" - type="$3" - args="$4" - - if [ -z "$boot_device_id" ]; then - boot_device_id="$(grub_get_device_id "${GRUB_DEVICE}")" - fi - if [ x$type != xsimple ] ; then - case $type in - recovery) - title="$(gettext_printf "%s, with Linux %s (recovery mode)" "${os}" "${version}")" ;; - *) - title="$(gettext_printf "%s, with Linux %s" "${os}" "${version}")" ;; - esac - if [ x"$title" = x"$GRUB_ACTUAL_DEFAULT" ] || [ x"Previous Linux versions>$title" = x"$GRUB_ACTUAL_DEFAULT" ]; then - replacement_title="$(echo "Advanced options for ${OS}" | sed 's,>,>>,g')>$(echo "$title" | sed 's,>,>>,g')" - quoted="$(echo "$GRUB_ACTUAL_DEFAULT" | grub_quote)" - title_correction_code="${title_correction_code}if [ \"x\$default\" = '$quoted' ]; then default='$(echo "$replacement_title" | grub_quote)'; fi;" - grub_warn "$(gettext_printf "Please don't use old title \`%s' for GRUB_DEFAULT, use \`%s' (for versions before 2.00) or \`%s' (for 2.00 or later)" "$GRUB_ACTUAL_DEFAULT" "$replacement_title" "gnulinux-advanced-$boot_device_id>gnulinux-$version-$type-$boot_device_id")" - fi - echo "menuentry '$(echo "$title" | grub_quote)' ${CLASS} \$menuentry_id_option 'gnulinux-$version-$type-$boot_device_id' {" | sed "s/^/$submenu_indentation/" - else - echo "menuentry '$(echo "$os" | grub_quote)' ${CLASS} \$menuentry_id_option 'gnulinux-simple-$boot_device_id' {" | sed "s/^/$submenu_indentation/" - fi - if [ x$type != xrecovery ] ; then - save_default_entry | grub_add_tab - fi - - # Use ELILO's generic "efifb" when it's known to be available. - # FIXME: We need an interface to select vesafb in case efifb can't be used. - if [ "x$GRUB_GFXPAYLOAD_LINUX" = x ]; then - echo " load_video" | sed "s/^/$submenu_indentation/" - if grep -qx "CONFIG_FB_EFI=y" "${config}" 2> /dev/null \ - && grep -qx "CONFIG_VT_HW_CONSOLE_BINDING=y" "${config}" 2> /dev/null; then - echo " set gfxpayload=keep" | sed "s/^/$submenu_indentation/" - fi - else - if [ "x$GRUB_GFXPAYLOAD_LINUX" != xtext ]; then - echo " load_video" | sed "s/^/$submenu_indentation/" - fi - echo " set gfxpayload=$GRUB_GFXPAYLOAD_LINUX" | sed "s/^/$submenu_indentation/" - fi - - echo " insmod gzio" | sed "s/^/$submenu_indentation/" - - if [ x$dirname = x/ ]; then - if [ -z "${prepare_root_cache}" ]; then - prepare_root_cache="$(prepare_grub_to_access_device ${GRUB_DEVICE} | grub_add_tab)" - fi - printf '%s\n' "${prepare_root_cache}" | sed "s/^/$submenu_indentation/" - else - if [ -z "${prepare_boot_cache}" ]; then - prepare_boot_cache="$(prepare_grub_to_access_device ${GRUB_DEVICE_BOOT} | grub_add_tab)" - fi - printf '%s\n' "${prepare_boot_cache}" | sed "s/^/$submenu_indentation/" - fi - message="$(gettext_printf "Loading Linux %s ..." ${version})" - sed "s/^/$submenu_indentation/" << EOF - echo '$(echo "$message" | grub_quote)' - linux ${rel_dirname}/${basename} root=${linux_root_device_thisversion} ro ${args} -EOF - if test -n "${initrd}" ; then - # TRANSLATORS: ramdisk isn't identifier. Should be translated. - message="$(gettext_printf "Loading initial ramdisk ...")" - initrd_path= - for i in ${initrd}; do - initrd_path="${initrd_path} ${rel_dirname}/${i}" - done - sed "s/^/$submenu_indentation/" << EOF - echo '$(echo "$message" | grub_quote)' - initrd $(echo $initrd_path) -EOF - fi - sed "s/^/$submenu_indentation/" << EOF -} -EOF -} - -machine=`uname -m` -case "x$machine" in - xi?86 | xx86_64) - list= - for i in /boot/vmlinuz-* /vmlinuz-* /boot/kernel-* ; do - if grub_file_is_not_garbage "$i" ; then list="$list $i" ; fi - done ;; - *) - list= - for i in /boot/vmlinuz-* /boot/vmlinux-* /vmlinuz-* /vmlinux-* /boot/kernel-* ; do - if grub_file_is_not_garbage "$i" ; then list="$list $i" ; fi - done ;; -esac - -case "$machine" in - i?86) GENKERNEL_ARCH="x86" ;; - mips|mips64) GENKERNEL_ARCH="mips" ;; - mipsel|mips64el) GENKERNEL_ARCH="mipsel" ;; - arm*) GENKERNEL_ARCH="arm" ;; - *) GENKERNEL_ARCH="$machine" ;; -esac - -prepare_boot_cache= -prepare_root_cache= -boot_device_id= -title_correction_code= - -# Extra indentation to add to menu entries in a submenu. We're not in a submenu -# yet, so it's empty. In a submenu it will be equal to '\t' (one tab). -submenu_indentation="" - -is_top_level=true -while [ "x$list" != "x" ] ; do - linux=`version_find_latest $list` - gettext_printf "Found linux image: %s\n" "$linux" >&2 - basename=`basename $linux` - dirname=`dirname $linux` - rel_dirname=`make_system_path_relative_to_its_root $dirname` - version=`echo $basename | sed -e "s,^[^0-9]*-,,g"` - alt_version=`echo $version | sed -e "s,\.old$,,g"` - linux_root_device_thisversion="${LINUX_ROOT_DEVICE}" - - initrd_early= - for i in ${GRUB_EARLY_INITRD_LINUX_STOCK} \ - ${GRUB_EARLY_INITRD_LINUX_CUSTOM}; do - if test -e "${dirname}/${i}" ; then - initrd_early="${initrd_early} ${i}" - fi - done - - initrd_real= - for i in "initrd.img-${version}" "initrd-${version}.img" "initrd-${version}.gz" \ - "initrd-${version}" "initramfs-${version}.img" \ - "initrd.img-${alt_version}" "initrd-${alt_version}.img" \ - "initrd-${alt_version}" "initramfs-${alt_version}.img" \ - "initramfs-genkernel-${version}" \ - "initramfs-genkernel-${alt_version}" \ - "initramfs-genkernel-${GENKERNEL_ARCH}-${version}" \ - "initramfs-genkernel-${GENKERNEL_ARCH}-${alt_version}"; do - if test -e "${dirname}/${i}" ; then - initrd_real="${i}" - break - fi - done - - initrd= - if test -n "${initrd_early}" || test -n "${initrd_real}"; then - initrd="${initrd_early} ${initrd_real}" - - initrd_display= - for i in ${initrd}; do - initrd_display="${initrd_display} ${dirname}/${i}" - done - gettext_printf "Found initrd image: %s\n" "$(echo $initrd_display)" >&2 - fi - - config= - for i in "${dirname}/config-${version}" "${dirname}/config-${alt_version}" "/etc/kernels/kernel-config-${version}" ; do - if test -e "${i}" ; then - config="${i}" - break - fi - done - - initramfs= - if test -n "${config}" ; then - initramfs=`grep CONFIG_INITRAMFS_SOURCE= "${config}" | cut -f2 -d= | tr -d \"` - fi - - if test -z "${initramfs}" && test -z "${initrd_real}" ; then - # "UUID=" and "ZFS=" magic is parsed by initrd or initramfs. Since there's - # no initrd or builtin initramfs, it can't work here. - if [ "x${GRUB_DEVICE_PARTUUID}" = "x" ] \ - || [ "x${GRUB_DISABLE_LINUX_PARTUUID}" = "xtrue" ]; then - - linux_root_device_thisversion=${GRUB_DEVICE} - else - linux_root_device_thisversion=PARTUUID=${GRUB_DEVICE_PARTUUID} - fi - fi - - if [ "x$is_top_level" = xtrue ] && [ "x${GRUB_DISABLE_SUBMENU}" != xy ]; then - linux_entry "${OS}" "${version}" simple \ - "${GRUB_CMDLINE_LINUX} ${GRUB_CMDLINE_LINUX_DEFAULT}" - - submenu_indentation="$grub_tab" - - if [ -z "$boot_device_id" ]; then - boot_device_id="$(grub_get_device_id "${GRUB_DEVICE}")" - fi - # TRANSLATORS: %s is replaced with an OS name - echo "submenu '$(gettext_printf "Advanced options for %s" "${OS}" | grub_quote)' \$menuentry_id_option 'gnulinux-advanced-$boot_device_id' {" - is_top_level=false - fi - - linux_entry "${OS}" "${version}" advanced \ - "${GRUB_CMDLINE_LINUX} ${GRUB_CMDLINE_LINUX_DEFAULT}" - if [ "x${GRUB_DISABLE_RECOVERY}" != "xtrue" ]; then - linux_entry "${OS}" "${version}" recovery \ - "single ${GRUB_CMDLINE_LINUX}" - fi - - list=`echo $list | tr ' ' '\n' | fgrep -vx "$linux" | tr '\n' ' '` -done - -# If at least one kernel was found, then we need to -# add a closing '}' for the submenu command. -if [ x"$is_top_level" != xtrue ]; then - echo '}' -fi - -echo "$title_correction_code" diff --git a/thirdparty/grub-2.04/util/grub.d/10_netbsd.in b/thirdparty/grub-2.04/util/grub.d/10_netbsd.in deleted file mode 100644 index 874f59969..000000000 --- a/thirdparty/grub-2.04/util/grub.d/10_netbsd.in +++ /dev/null @@ -1,186 +0,0 @@ -#! /bin/sh -set -e - -# grub-mkconfig helper script. -# Copyright (C) 2006,2007,2008,2009,2010 Free Software Foundation, Inc. -# -# GRUB is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# GRUB is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with GRUB. If not, see . - -prefix="@prefix@" -exec_prefix="@exec_prefix@" -datarootdir="@datarootdir@" -. "$pkgdatadir/grub-mkconfig_lib" - -export TEXTDOMAIN=@PACKAGE@ -export TEXTDOMAINDIR="@localedir@" - -if [ "x${GRUB_DISTRIBUTOR}" = "x" ] ; then - OS="NetBSD" -else - OS="${GRUB_DISTRIBUTOR} NetBSD" -fi - -netbsd_load_fs_module () -{ - loader="$1" # "knetbsd" or "multiboot" - kernel="$2" # absolute path to the kernel file - - case $(zcat -f "${kernel}" | file -bL - | cut -d , -f 2 | tr -d ' ') in - Intel80386) - karch="i386" - ;; - x86-64) - karch="amd64" - ;; - *) - return - ;; - esac - - case $(${grub_probe} --target=fs -d ${GRUB_DEVICE}) in - ext2) - kmod="ext2fs" - ;; - fat) - kmod="msdosfs" - ;; - ntfs) - kmod="ntfs" - ;; - ufs*) - kmod="ffs" - ;; - *) - return - ;; - esac - - kversion=$(zcat -f "${kernel}" | strings | sed -n -e '/^@(#)NetBSD/ { s/^@(#)NetBSD \([0-9\.]*\) .*$/\1/g ; p ; q ; }') - kmodule="/stand/${karch}/${kversion}/modules/${kmod}/${kmod}.kmod" - - if test -z "$karch" || test -z "$kversion" || test ! -f "${kmodule}"; then - return - fi - - kmodule_rel=$(make_system_path_relative_to_its_root "$kmodule") || return - prepare_grub_to_access_device $(${grub_probe} -t device "${kmodule}") | sed -e 's,^, ,' | sed "s/^/$submenu_indentation/" - case "${loader}" in - knetbsd) - printf "${grub_tab}knetbsd_module_elf %s\n" "${kmodule_rel}" | sed "s/^/$submenu_indentation/" - ;; - multiboot) - printf "${grub_tab}module %s\n" "${kmodule_rel}" | sed "s/^/$submenu_indentation/" - ;; - esac -} - -title_correction_code= - -netbsd_entry () -{ - loader="$1" # "knetbsd" or "multiboot" - kernel="$2" # absolute path to the kernel file - type="$3" - args="$4" # extra arguments appended to loader command - - kroot_device="$(echo ${GRUB_DEVICE} | sed -e 's,^/dev/r,,')" - - if [ -z "$boot_device_id" ]; then - boot_device_id="$(grub_get_device_id "${GRUB_DEVICE}")" - fi - - if [ x$type != xsimple ] ; then - if [ x$type = xrecovery ] ; then - title="$(gettext_printf "%s, with kernel %s (via %s, recovery mode)" "${OS}" "$(echo ${kernel} | sed -e 's,^.*/,,')" "${loader}")" - else - title="$(gettext_printf "%s, with kernel %s (via %s)" "${OS}" "$(echo ${kernel} | sed -e 's,^.*/,,')" "${loader}")" - fi - replacement_title="$(echo "Advanced options for ${OS}" | sed 's,>,>>,g')>$(echo "$title" | sed 's,>,>>,g')" - if [ x"$title" = x"$GRUB_ACTUAL_DEFAULT" ]; then - quoted="$(echo "$GRUB_ACTUAL_DEFAULT" | grub_quote)" - title_correction_code="${title_correction_code}if [ \"x\$default\" = '$quoted' ]; then default='$(echo "$replacement_title" | grub_quote)'; fi;" - grub_warn "$(gettext_printf "Please don't use old title \`%s' for GRUB_DEFAULT, use \`%s' (for versions before 2.00) or \`%s' (for 2.00 or later)" "$GRUB_ACTUAL_DEFAULT" "$replacement_title" "netbsd-advanced-$boot_device_id>netbsd-${loader}-$kernel-$type-$boot_device_id")" - fi - - echo "menuentry '$(echo "$title" | grub_quote)' \$menuentry_id_option 'netbsd-${loader}-$kernel-$type-$boot_device_id' {" | sed "s/^/$submenu_indentation/" - else - echo "menuentry '$(echo "$OS" | grub_quote)' \$menuentry_id_option 'netbsd-${loader}-simple-$boot_device_id' {" | sed "s/^/$submenu_indentation/" - fi - - printf "%s\n" "${prepare_boot_cache}" | sed "s/^/$submenu_indentation/" - case "${loader}" in - knetbsd) - printf "${grub_tab}knetbsd %s -r %s %s\n" \ - "${kernel}" "${kroot_device}" "${GRUB_CMDLINE_NETBSD} ${args}" | sed "s/^/$submenu_indentation/" - ;; - multiboot) - printf "${grub_tab}multiboot %s %s root=%s %s\n" \ - "${kernel}" "${kernel}" "${kroot_device}" "${GRUB_CMDLINE_NETBSD} ${args}" | sed "s/^/$submenu_indentation/" - ;; - esac - - netbsd_load_fs_module "${loader}" "${kernel}" - - printf "}\n" | sed "s/^/$submenu_indentation/" -} - -prepare_boot_cache="$(prepare_grub_to_access_device ${GRUB_DEVICE} | sed -e 's,^, ,')" -boot_device_id= - -# We look for NetBSD kernels in / but not in subdirectories. We simply -# pick all statically linked ELF executable files (or links) in / with a -# name that starts with `netbsd'. -pattern="^ELF[^,]*executable.*statically linked" -# Extra indentation to add to menu entries in a submenu. We're not in a submenu -# yet, so it's empty. In a submenu it will be equal to '\t' (one tab). -submenu_indentation="" - -is_top_level=true -for k in /netbsd $(ls -t /netbsd?* 2>/dev/null) ; do - if ! grub_file_is_not_garbage "$k" ; then - continue - fi - if ! (zcat -f "$k" | file -bL - | grep -q "${pattern}") 2>/dev/null ; then - continue - fi - - gettext_printf "Found NetBSD kernel: %s\n" "$k" >&2 - - if [ "x$is_top_level" = xtrue ] && [ "x${GRUB_DISABLE_SUBMENU}" != xy ]; then - netbsd_entry "knetbsd" "$k" simple "${GRUB_CMDLINE_NETBSD_DEFAULT}" - submenu_indentation="$grub_tab" - - if [ -z "$boot_device_id" ]; then - boot_device_id="$(grub_get_device_id "${GRUB_DEVICE}")" - fi - # TRANSLATORS: %s is replaced with an OS name - echo "submenu '$(gettext_printf "Advanced options for %s" "${OS}" | grub_quote)' \$menuentry_id_option 'netbsd-advanced-$boot_device_id' {" - is_top_level=false - fi - - netbsd_entry "knetbsd" "$k" advanced "${GRUB_CMDLINE_NETBSD_DEFAULT}" - netbsd_entry "multiboot" "$k" advanced "${GRUB_CMDLINE_NETBSD_DEFAULT}" - if [ "x${GRUB_DISABLE_RECOVERY}" != "xtrue" ]; then - netbsd_entry "knetbsd" "$k" recovery "-s" - netbsd_entry "multiboot" "$k" recovery "-s" - fi -done - -# If at least one kernel was found, then we need to -# add a closing '}' for the submenu command. -if [ x"$is_top_level" != xtrue ]; then - echo '}' -fi - -echo "$title_correction_code" diff --git a/thirdparty/grub-2.04/util/grub.d/10_windows.in b/thirdparty/grub-2.04/util/grub.d/10_windows.in deleted file mode 100644 index 554c5614b..000000000 --- a/thirdparty/grub-2.04/util/grub.d/10_windows.in +++ /dev/null @@ -1,100 +0,0 @@ -#! /bin/sh -set -e - -# grub-mkconfig helper script. -# Copyright (C) 2008,2009,2010 Free Software Foundation, Inc. -# -# GRUB is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# GRUB is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with GRUB. If not, see . - -prefix="@prefix@" -exec_prefix="@exec_prefix@" -datarootdir="@datarootdir@" - -export TEXTDOMAIN=@PACKAGE@ -export TEXTDOMAINDIR="@localedir@" - -. "$pkgdatadir/grub-mkconfig_lib" - -case "`uname 2>/dev/null`" in - CYGWIN*) ;; - *) exit 0 ;; -esac - -# Try C: even if current system is on other partition. -case "$SYSTEMDRIVE" in - [Cc]:) drives="C:" ;; - [D-Zd-z]:) drives="C: $SYSTEMDRIVE" ;; - *) exit 0 ;; -esac - -get_os_name_from_boot_ini () -{ - # Fail if no or more than one partition. - test "`sed -n 's,^\(\(multi\|scsi\)[^=]*\)=.*$,\1,p' "$1" 2>/dev/null | \ - sort | uniq | wc -l`" = 1 || return 1 - - # Search 'default=PARTITION' - get_os_name_from_boot_ini_part=`sed -n 's,^default=,,p' "$1" | sed 's,\\\\,/,g;s,[ $grub_tab\r]*$,,;1q'` - test -n "$get_os_name_from_boot_ini_part" || return 1 - - # Search 'PARTITION="NAME" ...' - get_os_name_from_boot_ini_name=`sed -n 's,\\\\,/,g;s,^'"$get_os_name_from_boot_ini_part"'="\([^"]*\)".*$,\1,p' "$1" | sed 1q` - test -n "$get_os_name_from_boot_ini_name" || return 1 - - echo "$get_os_name_from_boot_ini_name" -} - - -for drv in $drives ; do - - # Convert to Cygwin path. - dir=`cygpath "$drv"` - test -n "$dir" || continue - - needmap= - osid= - - # Check for Vista bootmgr. - if [ -f "$dir"/bootmgr ] && [ -f "$dir"/boot/bcd ] ; then - OS="$(gettext "Windows Vista/7 (loader)")" - osid=bootmgr - # Check for NTLDR. - elif [ -f "$dir"/ntldr ] && [ -f "$dir"/ntdetect.com ] && [ -f "$dir"/boot.ini ] ; then - OS=`get_os_name_from_boot_ini "$dir"/boot.ini` || OS="$(gettext "Windows NT/2000/XP (loader)")" - osid=ntldr - needmap=t - - else - continue - fi - - # Get boot device. - dev=`${grub_probe} -t device "$dir" 2>/dev/null` || continue - - gettext_printf "Found %s on %s (%s)\n" "$OS" "$drv" "$dev" >&2 - cat << EOF -menuentry '$(echo "$OS" | grub_quote)' \$menuentry_id_option '$osid-$(grub_get_device_id "${dev}")' { -EOF - - save_default_entry | sed -e 's,^,$grub_tab,' - prepare_grub_to_access_device "$dev" | sed 's,^,$grub_tab,' - test -z "$needmap" || cat <. - -prefix="@prefix@" -exec_prefix="@exec_prefix@" -datarootdir="@datarootdir@" - -export TEXTDOMAIN=@PACKAGE@ -export TEXTDOMAINDIR="@localedir@" - -. "$pkgdatadir/grub-mkconfig_lib" - -osx_entry() { - if [ x$2 = x32 ]; then - # TRANSLATORS: it refers to kernel architecture (32-bit) - bitstr="$(gettext "(32-bit)")" - else - # TRANSLATORS: it refers to kernel architecture (64-bit) - bitstr="$(gettext "(64-bit)")" - fi - # TRANSLATORS: it refers on the OS residing on device %s - onstr="$(gettext_printf "(on %s)" "${GRUB_DEVICE}")" - cat << EOF -menuentry '$(echo "Darwin/Mac OS X $bitstr $onstr" | grub_quote)' --class osx --class darwin --class os \$menuentry_id_option 'osprober-xnu-$2-$(grub_get_device_id "${GRUB_DEVICE}")' { -EOF - save_default_entry | grub_add_tab - prepare_grub_to_access_device ${GRUB_DEVICE} | grub_add_tab - cat << EOF - load_video - set do_resume=0 - if [ /var/vm/sleepimage -nt10 / ]; then - if xnu_resume /var/vm/sleepimage; then - set do_resume=1 - fi - fi - if [ \$do_resume = 0 ]; then - xnu_uuid ${OSXUUID} uuid - if [ -f /Extra/DSDT.aml ]; then - acpi -e /Extra/DSDT.aml - fi - if [ /kernelcache -nt /System/Library/Extensions ]; then - $1 /kernelcache boot-uuid=\${uuid} rd=*uuid - elif [ -f /System/Library/Kernels/kernel ]; then - $1 /System/Library/Kernels/kernel boot-uuid=\${uuid} rd=*uuid - xnu_kextdir /System/Library/Extensions - else - $1 /mach_kernel boot-uuid=\${uuid} rd=*uuid - if [ /System/Library/Extensions.mkext -nt /System/Library/Extensions ]; then - xnu_mkext /System/Library/Extensions.mkext - else - xnu_kextdir /System/Library/Extensions - fi - fi - if [ -f /Extra/Extensions.mkext ]; then - xnu_mkext /Extra/Extensions.mkext - fi - if [ -d /Extra/Extensions ]; then - xnu_kextdir /Extra/Extensions - fi - if [ -f /Extra/devprop.bin ]; then - xnu_devprop_load /Extra/devprop.bin - fi - if [ -f /Extra/splash.jpg ]; then - insmod jpeg - xnu_splash /Extra/splash.jpg - fi - if [ -f /Extra/splash.png ]; then - insmod png - xnu_splash /Extra/splash.png - fi - if [ -f /Extra/splash.tga ]; then - insmod tga - xnu_splash /Extra/splash.tga - fi - fi -} -EOF -} - -OSXUUID="`${grub_probe} --target=fs_uuid --device ${GRUB_DEVICE} 2> /dev/null`" -osx_entry xnu_kernel 32 -osx_entry xnu_kernel64 64 diff --git a/thirdparty/grub-2.04/util/grub.d/20_linux_xen.in b/thirdparty/grub-2.04/util/grub.d/20_linux_xen.in deleted file mode 100644 index 96179ea61..000000000 --- a/thirdparty/grub-2.04/util/grub.d/20_linux_xen.in +++ /dev/null @@ -1,327 +0,0 @@ -#! /bin/sh -set -e - -# grub-mkconfig helper script. -# Copyright (C) 2006,2007,2008,2009,2010 Free Software Foundation, Inc. -# -# GRUB is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# GRUB is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with GRUB. If not, see . - -prefix="@prefix@" -exec_prefix="@exec_prefix@" -datarootdir="@datarootdir@" - -. "$pkgdatadir/grub-mkconfig_lib" - -export TEXTDOMAIN=@PACKAGE@ -export TEXTDOMAINDIR="@localedir@" - -CLASS="--class gnu-linux --class gnu --class os --class xen" - -if [ "x${GRUB_DISTRIBUTOR}" = "x" ] ; then - OS=GNU/Linux -else - OS="${GRUB_DISTRIBUTOR} GNU/Linux" - CLASS="--class $(echo ${GRUB_DISTRIBUTOR} | tr 'A-Z' 'a-z' | cut -d' ' -f1|LC_ALL=C sed 's,[^[:alnum:]_],_,g') ${CLASS}" -fi - -# loop-AES arranges things so that /dev/loop/X can be our root device, but -# the initrds that Linux uses don't like that. -case ${GRUB_DEVICE} in - /dev/loop/*|/dev/loop[0-9]) - GRUB_DEVICE=`losetup ${GRUB_DEVICE} | sed -e "s/^[^(]*(\([^)]\+\)).*/\1/"` - ;; -esac - -# Default to disabling partition uuid support to maintian compatibility with -# older kernels. -GRUB_DISABLE_LINUX_PARTUUID=${GRUB_DISABLE_LINUX_PARTUUID-true} - -# btrfs may reside on multiple devices. We cannot pass them as value of root= parameter -# and mounting btrfs requires user space scanning, so force UUID in this case. -if ( [ "x${GRUB_DEVICE_UUID}" = "x" ] && [ "x${GRUB_DEVICE_PARTUUID}" = "x" ] ) \ - || ( [ "x${GRUB_DISABLE_LINUX_UUID}" = "xtrue" ] \ - && [ "x${GRUB_DISABLE_LINUX_PARTUUID}" = "xtrue" ] ) \ - || ( ! test -e "/dev/disk/by-uuid/${GRUB_DEVICE_UUID}" \ - && ! test -e "/dev/disk/by-partuuid/${GRUB_DEVICE_PARTUUID}" ) \ - || ( test -e "${GRUB_DEVICE}" && uses_abstraction "${GRUB_DEVICE}" lvm ); then - LINUX_ROOT_DEVICE=${GRUB_DEVICE} -elif [ "x${GRUB_DEVICE_UUID}" = "x" ] \ - || [ "x${GRUB_DISABLE_LINUX_UUID}" = "xtrue" ]; then - LINUX_ROOT_DEVICE=PARTUUID=${GRUB_DEVICE_PARTUUID} -else - LINUX_ROOT_DEVICE=UUID=${GRUB_DEVICE_UUID} -fi - -# Allow overriding GRUB_CMDLINE_LINUX and GRUB_CMDLINE_LINUX_DEFAULT. -if [ "${GRUB_CMDLINE_LINUX_XEN_REPLACE}" ]; then - GRUB_CMDLINE_LINUX="${GRUB_CMDLINE_LINUX_XEN_REPLACE}" -fi -if [ "${GRUB_CMDLINE_LINUX_XEN_REPLACE_DEFAULT}" ]; then - GRUB_CMDLINE_LINUX_DEFAULT="${GRUB_CMDLINE_LINUX_XEN_REPLACE_DEFAULT}" -fi - -case x"$GRUB_FS" in - xbtrfs) - rootsubvol="`make_system_path_relative_to_its_root /`" - rootsubvol="${rootsubvol#/}" - if [ "x${rootsubvol}" != x ]; then - GRUB_CMDLINE_LINUX="rootflags=subvol=${rootsubvol} ${GRUB_CMDLINE_LINUX}" - fi;; - xzfs) - rpool=`${grub_probe} --device ${GRUB_DEVICE} --target=fs_label 2>/dev/null || true` - bootfs="`make_system_path_relative_to_its_root / | sed -e "s,@$,,"`" - LINUX_ROOT_DEVICE="ZFS=${rpool}${bootfs%/}" - ;; -esac - -title_correction_code= - -linux_entry () -{ - os="$1" - version="$2" - xen_version="$3" - type="$4" - args="$5" - xen_args="$6" - if [ -z "$boot_device_id" ]; then - boot_device_id="$(grub_get_device_id "${GRUB_DEVICE}")" - fi - if [ x$type != xsimple ] ; then - if [ x$type = xrecovery ] ; then - title="$(gettext_printf "%s, with Xen %s and Linux %s (recovery mode)" "${os}" "${xen_version}" "${version}")" - else - title="$(gettext_printf "%s, with Xen %s and Linux %s" "${os}" "${xen_version}" "${version}")" - fi - replacement_title="$(echo "Advanced options for ${OS}" | sed 's,>,>>,g')>$(echo "$title" | sed 's,>,>>,g')" - if [ x"Xen ${xen_version}>$title" = x"$GRUB_ACTUAL_DEFAULT" ]; then - quoted="$(echo "$GRUB_ACTUAL_DEFAULT" | grub_quote)" - title_correction_code="${title_correction_code}if [ \"x\$default\" = '$quoted' ]; then default='$(echo "$replacement_title" | grub_quote)'; fi;" - grub_warn "$(gettext_printf "Please don't use old title \`%s' for GRUB_DEFAULT, use \`%s' (for versions before 2.00) or \`%s' (for 2.00 or later)" "$GRUB_ACTUAL_DEFAULT" "$replacement_title" "gnulinux-advanced-$boot_device_id>gnulinux-$version-$type-$boot_device_id")" - fi - echo "menuentry '$(echo "$title" | grub_quote)' ${CLASS} \$menuentry_id_option 'xen-gnulinux-$version-$type-$boot_device_id' {" | sed "s/^/$submenu_indentation/" - else - title="$(gettext_printf "%s, with Xen hypervisor" "${os}")" - echo "menuentry '$(echo "$title" | grub_quote)' ${CLASS} \$menuentry_id_option 'xen-gnulinux-simple-$boot_device_id' {" | sed "s/^/$submenu_indentation/" - fi - if [ x$type != xrecovery ] ; then - save_default_entry | grub_add_tab | sed "s/^/$submenu_indentation/" - fi - - if [ -z "${prepare_boot_cache}" ]; then - prepare_boot_cache="$(prepare_grub_to_access_device ${GRUB_DEVICE_BOOT} | grub_add_tab)" - fi - printf '%s\n' "${prepare_boot_cache}" | sed "s/^/$submenu_indentation/" - xmessage="$(gettext_printf "Loading Xen %s ..." ${xen_version})" - lmessage="$(gettext_printf "Loading Linux %s ..." ${version})" - sed "s/^/$submenu_indentation/" << EOF - echo '$(echo "$xmessage" | grub_quote)' - if [ "\$grub_platform" = "pc" -o "\$grub_platform" = "" ]; then - xen_rm_opts= - else - xen_rm_opts="no-real-mode edd=off" - fi - ${xen_loader} ${rel_xen_dirname}/${xen_basename} placeholder ${xen_args} \${xen_rm_opts} - echo '$(echo "$lmessage" | grub_quote)' - ${module_loader} ${rel_dirname}/${basename} placeholder root=${linux_root_device_thisversion} ro ${args} -EOF - if test -n "${initrd}" ; then - # TRANSLATORS: ramdisk isn't identifier. Should be translated. - message="$(gettext_printf "Loading initial ramdisk ...")" - initrd_path= - for i in ${initrd}; do - initrd_path="${initrd_path} ${rel_dirname}/${i}" - done - sed "s/^/$submenu_indentation/" << EOF - echo '$(echo "$message" | grub_quote)' - ${module_loader} --nounzip $(echo $initrd_path) -EOF - fi - sed "s/^/$submenu_indentation/" << EOF -} -EOF -} - -linux_list= -for i in /boot/vmlinu[xz]-* /vmlinu[xz]-* /boot/kernel-*; do - if grub_file_is_not_garbage "$i"; then - basename=$(basename $i) - version=$(echo $basename | sed -e "s,^[^0-9]*-,,g") - dirname=$(dirname $i) - config= - for j in "${dirname}/config-${version}" "${dirname}/config-${alt_version}" "/etc/kernels/kernel-config-${version}" ; do - if test -e "${j}" ; then - config="${j}" - break - fi - done - if (grep -qx "CONFIG_XEN_DOM0=y" "${config}" 2> /dev/null || grep -qx "CONFIG_XEN_PRIVILEGED_GUEST=y" "${config}" 2> /dev/null); then linux_list="$linux_list $i" ; fi - fi -done -if [ "x${linux_list}" = "x" ] ; then - exit 0 -fi - -file_is_not_sym () { - case "$1" in - */xen-syms-*) - return 1;; - *) - return 0;; - esac -} - -xen_list= -for i in /boot/xen*; do - if grub_file_is_not_garbage "$i" && file_is_not_sym "$i" ; then xen_list="$xen_list $i" ; fi -done -prepare_boot_cache= -boot_device_id= - -title_correction_code= - -machine=`uname -m` - -case "$machine" in - i?86) GENKERNEL_ARCH="x86" ;; - mips|mips64) GENKERNEL_ARCH="mips" ;; - mipsel|mips64el) GENKERNEL_ARCH="mipsel" ;; - arm*) GENKERNEL_ARCH="arm" ;; - *) GENKERNEL_ARCH="$machine" ;; -esac - -# Extra indentation to add to menu entries in a submenu. We're not in a submenu -# yet, so it's empty. In a submenu it will be equal to '\t' (one tab). -submenu_indentation="" - -is_top_level=true - -while [ "x${xen_list}" != "x" ] ; do - list="${linux_list}" - current_xen=`version_find_latest $xen_list` - xen_basename=`basename ${current_xen}` - xen_dirname=`dirname ${current_xen}` - rel_xen_dirname=`make_system_path_relative_to_its_root $xen_dirname` - xen_version=`echo $xen_basename | sed -e "s,.gz$,,g;s,^xen-,,g"` - if [ -z "$boot_device_id" ]; then - boot_device_id="$(grub_get_device_id "${GRUB_DEVICE}")" - fi - if [ "x$is_top_level" != xtrue ]; then - echo " submenu '$(gettext_printf "Xen hypervisor, version %s" "${xen_version}" | grub_quote)' \$menuentry_id_option 'xen-hypervisor-$xen_version-$boot_device_id' {" - fi - if ($grub_file --is-arm64-efi $current_xen); then - xen_loader="xen_hypervisor" - module_loader="xen_module" - else - if ($grub_file --is-x86-multiboot2 $current_xen); then - xen_loader="multiboot2" - module_loader="module2" - else - xen_loader="multiboot" - module_loader="module" - fi - fi - - initrd_early= - for i in ${GRUB_EARLY_INITRD_LINUX_STOCK} \ - ${GRUB_EARLY_INITRD_LINUX_CUSTOM}; do - if test -e "${xen_dirname}/${i}" ; then - initrd_early="${initrd_early} ${i}" - fi - done - - while [ "x$list" != "x" ] ; do - linux=`version_find_latest $list` - gettext_printf "Found linux image: %s\n" "$linux" >&2 - basename=`basename $linux` - dirname=`dirname $linux` - rel_dirname=`make_system_path_relative_to_its_root $dirname` - version=`echo $basename | sed -e "s,^[^0-9]*-,,g"` - alt_version=`echo $version | sed -e "s,\.old$,,g"` - linux_root_device_thisversion="${LINUX_ROOT_DEVICE}" - - initrd_real= - for i in "initrd.img-${version}" "initrd-${version}.img" "initrd-${version}.gz" \ - "initrd-${version}" "initramfs-${version}.img" \ - "initrd.img-${alt_version}" "initrd-${alt_version}.img" \ - "initrd-${alt_version}" "initramfs-${alt_version}.img" \ - "initramfs-genkernel-${version}" \ - "initramfs-genkernel-${alt_version}" \ - "initramfs-genkernel-${GENKERNEL_ARCH}-${version}" \ - "initramfs-genkernel-${GENKERNEL_ARCH}-${alt_version}" ; do - if test -e "${dirname}/${i}" ; then - initrd_real="$i" - break - fi - done - - initrd= - if test -n "${initrd_early}" || test -n "${initrd_real}"; then - initrd="${initrd_early} ${initrd_real}" - - initrd_display= - for i in ${initrd}; do - initrd_display="${initrd_display} ${dirname}/${i}" - done - gettext_printf "Found initrd image: %s\n" "$(echo $initrd_display)" >&2 - fi - - if test -z "${initrd_real}"; then - # "UUID=" magic is parsed by initrds. Since there's no initrd, it can't work here. - if [ "x${GRUB_DEVICE_PARTUUID}" = "x" ] \ - || [ "x${GRUB_DISABLE_LINUX_PARTUUID}" = "xtrue" ]; then - - linux_root_device_thisversion=${GRUB_DEVICE} - else - linux_root_device_thisversion=PARTUUID=${GRUB_DEVICE_PARTUUID} - fi - fi - - if [ "x$is_top_level" = xtrue ] && [ "x${GRUB_DISABLE_SUBMENU}" != xy ]; then - linux_entry "${OS}" "${version}" "${xen_version}" simple \ - "${GRUB_CMDLINE_LINUX} ${GRUB_CMDLINE_LINUX_DEFAULT}" "${GRUB_CMDLINE_XEN} ${GRUB_CMDLINE_XEN_DEFAULT}" - - submenu_indentation="$grub_tab$grub_tab" - - if [ -z "$boot_device_id" ]; then - boot_device_id="$(grub_get_device_id "${GRUB_DEVICE}")" - fi - # TRANSLATORS: %s is replaced with an OS name - echo "submenu '$(gettext_printf "Advanced options for %s (with Xen hypervisor)" "${OS}" | grub_quote)' \$menuentry_id_option 'gnulinux-advanced-$boot_device_id' {" - echo " submenu '$(gettext_printf "Xen hypervisor, version %s" "${xen_version}" | grub_quote)' \$menuentry_id_option 'xen-hypervisor-$xen_version-$boot_device_id' {" - is_top_level=false - fi - - linux_entry "${OS}" "${version}" "${xen_version}" advanced \ - "${GRUB_CMDLINE_LINUX} ${GRUB_CMDLINE_LINUX_DEFAULT}" "${GRUB_CMDLINE_XEN} ${GRUB_CMDLINE_XEN_DEFAULT}" - if [ "x${GRUB_DISABLE_RECOVERY}" != "xtrue" ]; then - linux_entry "${OS}" "${version}" "${xen_version}" recovery \ - "single ${GRUB_CMDLINE_LINUX}" "${GRUB_CMDLINE_XEN}" - fi - - list=`echo $list | tr ' ' '\n' | fgrep -vx "$linux" | tr '\n' ' '` - done - if [ x"$is_top_level" != xtrue ]; then - echo ' }' - fi - xen_list=`echo $xen_list | tr ' ' '\n' | fgrep -vx "$current_xen" | tr '\n' ' '` -done - -# If at least one kernel was found, then we need to -# add a closing '}' for the submenu command. -if [ x"$is_top_level" != xtrue ]; then - echo '}' -fi - -echo "$title_correction_code" diff --git a/thirdparty/grub-2.04/util/grub.d/30_os-prober.in b/thirdparty/grub-2.04/util/grub.d/30_os-prober.in deleted file mode 100644 index 515a68c7a..000000000 --- a/thirdparty/grub-2.04/util/grub.d/30_os-prober.in +++ /dev/null @@ -1,335 +0,0 @@ -#! /bin/sh -set -e - -# grub-mkconfig helper script. -# Copyright (C) 2006,2007,2008,2009 Free Software Foundation, Inc. -# -# GRUB is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# GRUB is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with GRUB. If not, see . - -prefix="@prefix@" -exec_prefix="@exec_prefix@" -datarootdir="@datarootdir@" - -export TEXTDOMAIN=@PACKAGE@ -export TEXTDOMAINDIR="@localedir@" - -. "$pkgdatadir/grub-mkconfig_lib" - -if [ "x${GRUB_DISABLE_OS_PROBER}" = "xtrue" ]; then - exit 0 -fi - -if [ -z "`which os-prober 2> /dev/null`" ] || [ -z "`which linux-boot-prober 2> /dev/null`" ] ; then - # missing os-prober and/or linux-boot-prober - exit 0 -fi - -OSPROBED="`os-prober | tr ' ' '^' | paste -s -d ' '`" -if [ -z "${OSPROBED}" ] ; then - # empty os-prober output, nothing doing - exit 0 -fi - -osx_entry() { - if [ x$2 = x32 ]; then - # TRANSLATORS: it refers to kernel architecture (32-bit) - bitstr="$(gettext "(32-bit)")" - else - # TRANSLATORS: it refers to kernel architecture (64-bit) - bitstr="$(gettext "(64-bit)")" - fi - # TRANSLATORS: it refers on the OS residing on device %s - onstr="$(gettext_printf "(on %s)" "${DEVICE}")" - cat << EOF -menuentry '$(echo "${LONGNAME} $bitstr $onstr" | grub_quote)' --class osx --class darwin --class os \$menuentry_id_option 'osprober-xnu-$2-$(grub_get_device_id "${DEVICE}")' { -EOF - save_default_entry | grub_add_tab - prepare_grub_to_access_device ${DEVICE} | grub_add_tab - cat << EOF - load_video - set do_resume=0 - if [ /var/vm/sleepimage -nt10 / ]; then - if xnu_resume /var/vm/sleepimage; then - set do_resume=1 - fi - fi - if [ \$do_resume = 0 ]; then - xnu_uuid ${OSXUUID} uuid - if [ -f /Extra/DSDT.aml ]; then - acpi -e /Extra/DSDT.aml - fi - if [ /kernelcache -nt /System/Library/Extensions ]; then - $1 /kernelcache boot-uuid=\${uuid} rd=*uuid - elif [ -f /System/Library/Kernels/kernel ]; then - $1 /System/Library/Kernels/kernel boot-uuid=\${uuid} rd=*uuid - xnu_kextdir /System/Library/Extensions - else - $1 /mach_kernel boot-uuid=\${uuid} rd=*uuid - if [ /System/Library/Extensions.mkext -nt /System/Library/Extensions ]; then - xnu_mkext /System/Library/Extensions.mkext - else - xnu_kextdir /System/Library/Extensions - fi - fi - if [ -f /Extra/Extensions.mkext ]; then - xnu_mkext /Extra/Extensions.mkext - fi - if [ -d /Extra/Extensions ]; then - xnu_kextdir /Extra/Extensions - fi - if [ -f /Extra/devprop.bin ]; then - xnu_devprop_load /Extra/devprop.bin - fi - if [ -f /Extra/splash.jpg ]; then - insmod jpeg - xnu_splash /Extra/splash.jpg - fi - if [ -f /Extra/splash.png ]; then - insmod png - xnu_splash /Extra/splash.png - fi - if [ -f /Extra/splash.tga ]; then - insmod tga - xnu_splash /Extra/splash.tga - fi - fi -} -EOF -} - -used_osprober_linux_ids= - -for OS in ${OSPROBED} ; do - DEVICE="`echo ${OS} | cut -d ':' -f 1`" - LONGNAME="`echo ${OS} | cut -d ':' -f 2 | tr '^' ' '`" - LABEL="`echo ${OS} | cut -d ':' -f 3 | tr '^' ' '`" - BOOT="`echo ${OS} | cut -d ':' -f 4`" - if UUID="`${grub_probe} --target=fs_uuid --device ${DEVICE%@*}`"; then - EXPUUID="$UUID" - - if [ x"${DEVICE#*@}" != x ] ; then - EXPUUID="${EXPUUID}@${DEVICE#*@}" - fi - - if [ "x${GRUB_OS_PROBER_SKIP_LIST}" != "x" ] && [ "x`echo ${GRUB_OS_PROBER_SKIP_LIST} | grep -i -e '\b'${EXPUUID}'\b'`" != "x" ] ; then - echo "Skipped ${LONGNAME} on ${DEVICE} by user request." >&2 - continue - fi - fi - - BTRFS="`echo ${OS} | cut -d ':' -f 5`" - if [ "x$BTRFS" = "xbtrfs" ]; then - BTRFSuuid="`echo ${OS} | cut -d ':' -f 6`" - BTRFSsubvol="`echo ${OS} | cut -d ':' -f 7`" - fi - - if [ -z "${LONGNAME}" ] ; then - LONGNAME="${LABEL}" - fi - - # os-prober returns text string followed by optional counter - CLASS="--class $(echo "${LABEL}" | LC_ALL=C sed 's,[[:digit:]]*$,,' | cut -d' ' -f1 | tr 'A-Z' 'a-z' | LC_ALL=C sed 's,[^[:alnum:]_],_,g')" - - gettext_printf "Found %s on %s\n" "${LONGNAME}" "${DEVICE}" >&2 - - case ${BOOT} in - chain) - - onstr="$(gettext_printf "(on %s)" "${DEVICE}")" - cat << EOF -menuentry '$(echo "${LONGNAME} $onstr" | grub_quote)' $CLASS --class os \$menuentry_id_option 'osprober-chain-$(grub_get_device_id "${DEVICE}")' { -EOF - save_default_entry | grub_add_tab - prepare_grub_to_access_device ${DEVICE} | grub_add_tab - - if [ x"`${grub_probe} --device ${DEVICE} --target=partmap`" = xmsdos ]; then - cat << EOF - parttool \${root} hidden- -EOF - fi - - case ${LONGNAME} in - Windows\ Vista*|Windows\ 7*|Windows\ Server\ 2008*) - ;; - *) - cat << EOF - drivemap -s (hd0) \${root} -EOF - ;; - esac - - cat < /dev/null; do - counter=$((counter+1)); - done - if [ -z "$boot_device_id" ]; then - boot_device_id="$(grub_get_device_id "${DEVICE}")" - fi - used_osprober_linux_ids="$used_osprober_linux_ids 'osprober-gnulinux-$LKERNEL-${recovery_params}-$counter-$boot_device_id'" - - if [ -z "${prepare_boot_cache}" ]; then - prepare_boot_cache="$(prepare_grub_to_access_device ${LBOOT} | grub_add_tab)" - fi - - if [ "x$is_top_level" = xtrue ] && [ "x${GRUB_DISABLE_SUBMENU}" != xy ]; then - cat << EOF -menuentry '$(echo "$OS $onstr" | grub_quote)' $CLASS --class gnu-linux --class gnu --class os \$menuentry_id_option 'osprober-gnulinux-simple-$boot_device_id' { -EOF - save_default_entry | grub_add_tab - printf '%s\n' "${prepare_boot_cache}" - cat << EOF - linux ${LKERNEL} ${LPARAMS} -EOF - if [ -n "${LINITRD}" ] ; then - cat << EOF - initrd ${LINITRD} -EOF - fi - cat << EOF -} -EOF - echo "submenu '$(gettext_printf "Advanced options for %s" "${OS} $onstr" | grub_quote)' \$menuentry_id_option 'osprober-gnulinux-advanced-$boot_device_id' {" - is_top_level=false - fi - title="${LLABEL} $onstr" - cat << EOF - menuentry '$(echo "$title" | grub_quote)' --class gnu-linux --class gnu --class os \$menuentry_id_option 'osprober-gnulinux-$LKERNEL-${recovery_params}-$boot_device_id' { -EOF - save_default_entry | sed -e "s/^/$grub_tab$grub_tab/" - printf '%s\n' "${prepare_boot_cache}" | grub_add_tab - cat << EOF - linux ${LKERNEL} ${LPARAMS} -EOF - if [ -n "${LINITRD}" ] ; then - cat << EOF - initrd ${LINITRD} -EOF - fi - cat << EOF - } -EOF - if [ x"$title" = x"$GRUB_ACTUAL_DEFAULT" ] || [ x"Previous Linux versions>$title" = x"$GRUB_ACTUAL_DEFAULT" ]; then - replacement_title="$(echo "Advanced options for ${OS} $onstr" | sed 's,>,>>,g')>$(echo "$title" | sed 's,>,>>,g')" - quoted="$(echo "$GRUB_ACTUAL_DEFAULT" | grub_quote)" - title_correction_code="${title_correction_code}if [ \"x\$default\" = '$quoted' ]; then default='$(echo "$replacement_title" | grub_quote)'; fi;" - grub_warn "$(gettext_printf "Please don't use old title \`%s' for GRUB_DEFAULT, use \`%s' (for versions before 2.00) or \`%s' (for 2.00 or later)" "$GRUB_ACTUAL_DEFAULT" "$replacement_title" "gnulinux-advanced-$boot_device_id>gnulinux-$version-$type-$boot_device_id")" - fi - done - if [ x"$is_top_level" != xtrue ]; then - echo '}' - fi - echo "$title_correction_code" - ;; - macosx) - if [ "${UUID}" ]; then - OSXUUID="${UUID}" - osx_entry xnu_kernel 32 - osx_entry xnu_kernel64 64 - fi - ;; - hurd) - onstr="$(gettext_printf "(on %s)" "${DEVICE}")" - cat << EOF -menuentry '$(echo "${LONGNAME} $onstr" | grub_quote)' --class hurd --class gnu --class os \$menuentry_id_option 'osprober-gnuhurd-/boot/gnumach.gz-false-$(grub_get_device_id "${DEVICE}")' { -EOF - save_default_entry | grub_add_tab - prepare_grub_to_access_device ${DEVICE} | grub_add_tab - grub_device="`${grub_probe} --device ${DEVICE} --target=drive`" - mach_device="`echo "${grub_device}" | sed -e 's/(\(hd.*\),msdos\(.*\))/\1s\2/'`" - grub_fs="`${grub_probe} --device ${DEVICE} --target=fs`" - case "${grub_fs}" in - *fs) hurd_fs="${grub_fs}" ;; - *) hurd_fs="${grub_fs}fs" ;; - esac - cat << EOF - multiboot /boot/gnumach.gz root=device:${mach_device} - module /hurd/${hurd_fs}.static ${hurd_fs} --readonly \\ - --multiboot-command-line='\${kernel-command-line}' \\ - --host-priv-port='\${host-port}' \\ - --device-master-port='\${device-port}' \\ - --exec-server-task='\${exec-task}' -T typed '\${root}' \\ - '\$(task-create)' '\$(task-resume)' - module /lib/ld.so.1 exec /hurd/exec '\$(exec-task=task-create)' -} -EOF - ;; - minix) - cat << EOF -menuentry "${LONGNAME} (on ${DEVICE}, Multiboot)" { -EOF - save_default_entry | sed -e "s/^/\t/" - prepare_grub_to_access_device ${DEVICE} | sed -e "s/^/\t/" - cat << EOF - multiboot /boot/image_latest -} -EOF - ;; - *) - # TRANSLATORS: %s is replaced by OS name. - gettext_printf "%s is not yet supported by grub-mkconfig.\n" " ${LONGNAME}" >&2 - ;; - esac -done diff --git a/thirdparty/grub-2.04/util/grub.d/40_custom.in b/thirdparty/grub-2.04/util/grub.d/40_custom.in deleted file mode 100644 index 48068de46..000000000 --- a/thirdparty/grub-2.04/util/grub.d/40_custom.in +++ /dev/null @@ -1,5 +0,0 @@ -#!/bin/sh -exec tail -n +3 $0 -# This file provides an easy way to add custom menu entries. Simply type the -# menu entries you want to add after this comment. Be careful not to change -# the 'exec tail' line above. diff --git a/thirdparty/grub-2.04/util/grub.d/41_custom.in b/thirdparty/grub-2.04/util/grub.d/41_custom.in deleted file mode 100644 index fcc21a987..000000000 --- a/thirdparty/grub-2.04/util/grub.d/41_custom.in +++ /dev/null @@ -1,9 +0,0 @@ -#!/bin/sh -cat <. - -if [ "x$1" = "x" ]; then - echo "Filename required". -fi - -ioreg -lw0 -p IODeviceTree -n efi -r -x |grep device-properties | sed 's/.*.*//;' | xxd -r -p > $1 diff --git a/thirdparty/grub-2.04/util/ieee1275/grub-ofpathname.c b/thirdparty/grub-2.04/util/ieee1275/grub-ofpathname.c deleted file mode 100644 index 300fbddad..000000000 --- a/thirdparty/grub-2.04/util/ieee1275/grub-ofpathname.c +++ /dev/null @@ -1,56 +0,0 @@ -/* grub-ofpathname.c - Find OpenBOOT path for a given device */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2009,2010 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include - -#include -#include - -#include - -#include "progname.h" - -#include - -int main(int argc, char **argv) -{ - char *of_path; - - grub_util_host_init (&argc, &argv); - - if (argc != 2 || strcmp (argv[1], "--help") == 0) - { - printf(_("Usage: %s DEVICE\n"), program_name); - return 1; - } - if (strcmp (argv[1], "--version") == 0) - { - printf ("%s\n", PACKAGE_STRING); - return 1; - } - - of_path = grub_util_devname_to_ofpath (argv[1]); - - if (of_path) - printf ("%s\n", of_path); - - free (of_path); - - return 0; -} diff --git a/thirdparty/grub-2.04/util/import_gcry.py b/thirdparty/grub-2.04/util/import_gcry.py deleted file mode 100644 index 2b3322d3a..000000000 --- a/thirdparty/grub-2.04/util/import_gcry.py +++ /dev/null @@ -1,659 +0,0 @@ -#* -#* GRUB -- GRand Unified Bootloader -#* Copyright (C) 2009 Free Software Foundation, Inc. -#* -#* GRUB is free software: you can redistribute it and/or modify -#* it under the terms of the GNU General Public License as published by -#* the Free Software Foundation, either version 3 of the License, or -#* (at your option) any later version. -#* -#* GRUB is distributed in the hope that it will be useful, -#* but WITHOUT ANY WARRANTY; without even the implied warranty of -#* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -#* GNU General Public License for more details. -#* -#* You should have received a copy of the GNU General Public License -#* along with GRUB. If not, see . -#* - -import re -import sys -import os -import datetime -import codecs - -if len (sys.argv) < 3: - print ("Usage: %s SOURCE DESTINATION" % sys.argv[0]) - exit (0) -indir = sys.argv[1] -outdir = sys.argv[2] - -basedir = os.path.join (outdir, "lib/libgcrypt-grub") -try: - os.makedirs (basedir) -except: - print ("WARNING: %s already exists" % basedir) -cipher_dir_in = os.path.join (indir, "cipher") -cipher_dir_out = os.path.join (basedir, "cipher") -try: - os.makedirs (cipher_dir_out) -except: - print ("WARNING: %s already exists" % cipher_dir_out) -mpidir = os.path.join (basedir, "mpi") -try: - os.makedirs (mpidir) -except: - print ("WARNING: %s already exists" % mpidir) - -srcdir = os.path.join (basedir, "src") -try: - os.makedirs (srcdir) -except: - print ("WARNING: %s already exists" % srcdir) - -cipher_files = sorted (os.listdir (cipher_dir_in)) -conf = codecs.open (os.path.join ("grub-core", "Makefile.gcry.def"), "w", "utf-8") -conf.write ("AutoGen definitions Makefile.tpl;\n\n") -confutil = codecs.open ("Makefile.utilgcry.def", "w", "utf-8") -confutil.write ("AutoGen definitions Makefile.tpl;\n\n") -confutil.write ("library = {\n"); -confutil.write (" name = libgrubgcry.a;\n"); -confutil.write (" cflags = '$(CFLAGS_GCRY)';\n"); -confutil.write (" cppflags = '$(CPPFLAGS_GCRY)';\n"); -confutil.write (" extra_dist = grub-core/lib/libgcrypt-grub/cipher/ChangeLog;\n"); -confutil.write ("\n"); -chlog = "" -modules_sym_md = [] - -# Strictly speaking CRC32/CRC24 work on bytes so this value should be 1 -# But libgcrypt uses 64. Let's keep the value for compatibility. Since -# noone uses CRC24/CRC32 for HMAC this is no problem -mdblocksizes = {"_gcry_digest_spec_crc32" : 64, - "_gcry_digest_spec_crc32_rfc1510" : 64, - "_gcry_digest_spec_crc24_rfc2440" : 64, - "_gcry_digest_spec_md4" : 64, - "_gcry_digest_spec_md5" : 64, - "_gcry_digest_spec_rmd160" : 64, - "_gcry_digest_spec_sha1" : 64, - "_gcry_digest_spec_sha224" : 64, - "_gcry_digest_spec_sha256" : 64, - "_gcry_digest_spec_sha384" : 128, - "_gcry_digest_spec_sha512" : 128, - "_gcry_digest_spec_tiger" : 64, - "_gcry_digest_spec_tiger1" : 64, - "_gcry_digest_spec_tiger2" : 64, - "_gcry_digest_spec_whirlpool" : 64} - -cryptolist = codecs.open (os.path.join (cipher_dir_out, "crypto.lst"), "w", "utf-8") - -# rijndael is the only cipher using aliases. So no need for mangling, just -# hardcode it -cryptolist.write ("RIJNDAEL: gcry_rijndael\n"); -cryptolist.write ("RIJNDAEL192: gcry_rijndael\n"); -cryptolist.write ("RIJNDAEL256: gcry_rijndael\n"); -cryptolist.write ("AES128: gcry_rijndael\n"); -cryptolist.write ("AES-128: gcry_rijndael\n"); -cryptolist.write ("AES-192: gcry_rijndael\n"); -cryptolist.write ("AES-256: gcry_rijndael\n"); - -cryptolist.write ("ADLER32: adler32\n"); -cryptolist.write ("CRC64: crc64\n"); - -for cipher_file in cipher_files: - infile = os.path.join (cipher_dir_in, cipher_file) - outfile = os.path.join (cipher_dir_out, cipher_file) - if cipher_file == "ChangeLog" or cipher_file == "ChangeLog-2011": - continue - chlognew = " * %s" % cipher_file - if re.match ("(Manifest|Makefile\.am|ac\.c|cipher\.c|hash-common\.c|hmac-tests\.c|md\.c|pubkey\.c)$", cipher_file) or cipher_file == "kdf.c" or cipher_file == "elgamal.c" or cipher_file == "primegen.c" or cipher_file == "ecc.c" or cipher_file == "test-getrusage.c": - chlog = "%s%s: Removed\n" % (chlog, chlognew) - continue - # Autogenerated files. Not even worth mentionning in ChangeLog - if re.match ("Makefile\.in$", cipher_file): - continue - nch = False - if re.match (".*\.[ch]$", cipher_file): - isc = re.match (".*\.c$", cipher_file) - f = codecs.open (infile, "r", "utf-8") - fw = codecs.open (outfile, "w", "utf-8") - fw.write ("/* This file was automatically imported with \n") - fw.write (" import_gcry.py. Please don't modify it */\n") - fw.write ("#include \n") - if cipher_file == "camellia.h": - fw.write ("#include \n") - fw.write ("void camellia_setup128(const unsigned char *key, grub_uint32_t *subkey);\n") - fw.write ("void camellia_setup192(const unsigned char *key, grub_uint32_t *subkey);\n") - fw.write ("void camellia_setup256(const unsigned char *key, grub_uint32_t *subkey);\n") - fw.write ("void camellia_encrypt128(const grub_uint32_t *subkey, grub_uint32_t *io);\n") - fw.write ("void camellia_encrypt192(const grub_uint32_t *subkey, grub_uint32_t *io);\n") - fw.write ("void camellia_encrypt256(const grub_uint32_t *subkey, grub_uint32_t *io);\n") - fw.write ("void camellia_decrypt128(const grub_uint32_t *subkey, grub_uint32_t *io);\n") - fw.write ("void camellia_decrypt192(const grub_uint32_t *subkey, grub_uint32_t *io);\n") - fw.write ("void camellia_decrypt256(const grub_uint32_t *subkey, grub_uint32_t *io);\n") - fw.write ("#define memcpy grub_memcpy\n") - # Whole libgcrypt is distributed under GPLv3+ or compatible - if isc: - fw.write ("GRUB_MOD_LICENSE (\"GPLv3+\");\n") - - ciphernames = [] - mdnames = [] - mdctxsizes = [] - pknames = [] - hold = False - skip = 0 - skip2 = False - ismd = False - mdarg = 0 - ispk = False - iscipher = False - iscryptostart = False - iscomma = False - isglue = False - skip_statement = False - if isc: - modname = cipher_file [0:len(cipher_file) - 2] - if re.match (".*-glue$", modname): - modname = modname.replace ("-glue", "") - isglue = True - modname = "gcry_%s" % modname - for line in f: - line = line - if skip_statement: - if not re.search (";", line) is None: - skip_statement = False - continue - if skip > 0: - if line[0] == "}": - skip = skip - 1 - continue - if skip2: - if not re.search (" *};", line) is None: - skip2 = False - continue - if iscryptostart: - s = re.search (" *\"([A-Z0-9_a-z]*)\"", line) - if not s is None: - sg = s.groups()[0] - cryptolist.write (("%s: %s\n") % (sg, modname)) - iscryptostart = False - if ismd: - spl = line.split (",") - if mdarg + len (spl) > 9 and mdarg <= 9 and ("sizeof" in spl[9-mdarg]): - mdctxsizes.append (spl[9-mdarg].lstrip ().rstrip()) - mdarg = mdarg + len (spl) - 1 - if ismd or iscipher or ispk: - if not re.search (" *};", line) is None: - if not iscomma: - fw.write (" ,\n") - fw.write ("#ifdef GRUB_UTIL\n"); - fw.write (" .modname = \"%s\",\n" % modname); - fw.write ("#endif\n"); - if ismd: - if not (mdname in mdblocksizes): - print ("ERROR: Unknown digest blocksize: %s\n" - % mdname) - exit (1) - fw.write (" .blocksize = %s\n" - % mdblocksizes [mdname]) - ismd = False - mdarg = 0 - iscipher = False - ispk = False - iscomma = not re.search (",$", line) is None - # Used only for selftests. - m = re.match ("(static byte|static unsigned char) (weak_keys_chksum)\[[0-9]*\] =", line) - if not m is None: - skip = 1 - fname = m.groups ()[1] - chmsg = "(%s): Removed." % fname - if nch: - chlognew = "%s\n %s" % (chlognew, chmsg) - else: - chlognew = "%s %s" % (chlognew, chmsg) - nch = True - continue - if hold: - hold = False - # We're optimising for size and exclude anything needing good - # randomness. - if not re.match ("(run_selftests|selftest|_gcry_aes_c.._..c|_gcry_[a-z0-9]*_hash_buffer|tripledes_set2keys|do_tripledes_set_extra_info|_gcry_rmd160_mixblock|serpent_test|dsa_generate_ext|test_keys|gen_k|sign|gen_x931_parm_xp|generate_x931|generate_key|dsa_generate|dsa_sign|ecc_sign|generate|generate_fips186|_gcry_register_pk_dsa_progress|_gcry_register_pk_ecc_progress|progress|scanval|ec2os|ecc_generate_ext|ecc_generate|compute_keygrip|ecc_get_param|_gcry_register_pk_dsa_progress|gen_x931_parm_xp|gen_x931_parm_xi|rsa_decrypt|rsa_sign|rsa_generate_ext|rsa_generate|secret|check_exponent|rsa_blind|rsa_unblind|extract_a_from_sexp|curve_free|curve_copy|point_set)", line) is None: - - skip = 1 - if not re.match ("selftest", line) is None and cipher_file == "idea.c": - skip = 3 - - if not re.match ("serpent_test", line) is None: - fw.write ("static const char *serpent_test (void) { return 0; }\n"); - if not re.match ("dsa_generate", line) is None: - fw.write ("#define dsa_generate 0"); - if not re.match ("ecc_generate", line) is None: - fw.write ("#define ecc_generate 0"); - if not re.match ("rsa_generate ", line) is None: - fw.write ("#define rsa_generate 0"); - if not re.match ("rsa_sign", line) is None: - fw.write ("#define rsa_sign 0"); - if not re.match ("rsa_decrypt", line) is None: - fw.write ("#define rsa_decrypt 0"); - if not re.match ("dsa_sign", line) is None: - fw.write ("#define dsa_sign 0"); - if not re.match ("ecc_sign", line) is None: - fw.write ("#define ecc_sign 0"); - fname = re.match ("[a-zA-Z0-9_]*", line).group () - chmsg = "(%s): Removed." % fname - if nch: - chlognew = "%s\n %s" % (chlognew, chmsg) - else: - chlognew = "%s %s" % (chlognew, chmsg) - nch = True - continue - else: - fw.write (holdline) - m = re.match ("# *include <(.*)>", line) - if not m is None: - chmsg = "Removed including of %s" % m.groups ()[0] - if nch: - chlognew = "%s\n %s" % (chlognew, chmsg) - else: - chlognew = "%s: %s" % (chlognew, chmsg) - nch = True - continue - m = re.match ("gcry_cipher_spec_t", line) - if isc and not m is None: - assert (not ismd) - assert (not ispk) - assert (not iscipher) - assert (not iscryptostart) - ciphername = line [len ("gcry_cipher_spec_t"):].strip () - ciphername = re.match("[a-zA-Z0-9_]*",ciphername).group () - ciphernames.append (ciphername) - iscipher = True - iscryptostart = True - - m = re.match ("gcry_pk_spec_t", line) - if isc and not m is None: - assert (not ismd) - assert (not ispk) - assert (not iscipher) - assert (not iscryptostart) - pkname = line [len ("gcry_pk_spec_t"):].strip () - pkname = re.match("[a-zA-Z0-9_]*",pkname).group () - pknames.append (pkname) - ispk = True - iscryptostart = True - - m = re.match ("gcry_md_spec_t", line) - if isc and not m is None: - assert (not ismd) - assert (not ispk) - assert (not iscipher) - assert (not iscryptostart) - mdname = line [len ("gcry_md_spec_t"):].strip () - mdname = re.match("[a-zA-Z0-9_]*",mdname).group () - mdnames.append (mdname) - ismd = True - mdarg = 0 - iscryptostart = True - m = re.match ("static const char \*selftest.*;$", line) - if not m is None: - fname = line[len ("static const char \*"):] - fname = re.match ("[a-zA-Z0-9_]*", fname).group () - chmsg = "(%s): Removed declaration." % fname - if nch: - chlognew = "%s\n %s" % (chlognew, chmsg) - else: - chlognew = "%s %s" % (chlognew, chmsg) - nch = True - continue - m = re.match ("static gcry_mpi_t gen_k .*;$", line) - if not m is None: - chmsg = "(gen_k): Removed declaration." - if nch: - chlognew = "%s\n %s" % (chlognew, chmsg) - else: - chlognew = "%s %s" % (chlognew, chmsg) - nch = True - continue - m = re.match ("static (int|void) test_keys .*;$", line) - if not m is None: - chmsg = "(test_keys): Removed declaration." - if nch: - chlognew = "%s\n %s" % (chlognew, chmsg) - else: - chlognew = "%s %s" % (chlognew, chmsg) - nch = True - continue - m = re.match ("static void secret .*;$", line) - if not m is None: - chmsg = "(secret): Removed declaration." - if nch: - chlognew = "%s\n %s" % (chlognew, chmsg) - else: - chlognew = "%s %s" % (chlognew, chmsg) - nch = True - continue - m = re.match ("static void \(\*progress_cb\).*;$", line) - if not m is None: - chmsg = "(progress_cb): Removed declaration." - if nch: - chlognew = "%s\n %s" % (chlognew, chmsg) - else: - chlognew = "%s %s" % (chlognew, chmsg) - nch = True - continue - m = re.match ("static void \*progress_cb_data.*;$", line) - if not m is None: - chmsg = "(progress_cb): Removed declaration." - if nch: - chlognew = "%s\n %s" % (chlognew, chmsg) - else: - chlognew = "%s %s" % (chlognew, chmsg) - nch = True - continue - - m = re.match ("(static const char( |)\*|static gpg_err_code_t|void|static int|static gcry_err_code_t|static gcry_mpi_t|static void|void|static elliptic_curve_t) *$", line) - if not m is None: - hold = True - holdline = line - continue - m = re.match ("static int tripledes_set2keys \(.*\);", line) - if not m is None: - continue - m = re.match ("static int tripledes_set3keys \(.*\);", line) - if not m is None: - continue - m = re.match ("static int tripledes_set2keys \(", line) - if not m is None: - skip_statement = True - continue - m = re.match ("static int tripledes_set3keys \(", line) - if not m is None: - skip_statement = True - continue - m = re.match ("static const char sample_secret_key", line) - if not m is None: - skip_statement = True - continue - m = re.match ("static const char sample_public_key", line) - if not m is None: - skip_statement = True - continue - m = re.match ("static void sign|static gpg_err_code_t sign|static gpg_err_code_t generate", - line) - if not m is None: - skip_statement = True - continue - - m = re.match ("cipher_extra_spec_t", line) - if isc and not m is None: - skip2 = True - fname = line[len ("cipher_extra_spec_t "):] - fname = re.match ("[a-zA-Z0-9_]*", fname).group () - chmsg = "(%s): Removed." % fname - if nch: - chlognew = "%s\n %s" % (chlognew, chmsg) - else: - chlognew = "%s %s" % (chlognew, chmsg) - nch = True - continue - m = re.match ("pk_extra_spec_t", line) - if isc and not m is None: - skip2 = True - fname = line[len ("pk_extra_spec_t "):] - fname = re.match ("[a-zA-Z0-9_]*", fname).group () - chmsg = "(%s): Removed." % fname - if nch: - chlognew = "%s\n %s" % (chlognew, chmsg) - else: - chlognew = "%s %s" % (chlognew, chmsg) - nch = True - continue - m = re.match ("md_extra_spec_t", line) - if isc and not m is None: - skip2 = True - fname = line[len ("md_extra_spec_t "):] - fname = re.match ("[a-zA-Z0-9_]*", fname).group () - chmsg = "(%s): Removed." % fname - if nch: - chlognew = "%s\n %s" % (chlognew, chmsg) - else: - chlognew = "%s %s" % (chlognew, chmsg) - nch = True - continue - fw.write (line) - if len (ciphernames) > 0 or len (mdnames) > 0 or len (pknames) > 0: - if isglue: - modfiles = "lib/libgcrypt-grub/cipher/%s lib/libgcrypt-grub/cipher/%s" \ - % (cipher_file, cipher_file.replace ("-glue.c", ".c")) - else: - modfiles = "lib/libgcrypt-grub/cipher/%s" % cipher_file - if len (ciphernames) > 0 or len (mdnames) > 0: - modules_sym_md.append (modname) - chmsg = "(GRUB_MOD_INIT(%s)): New function\n" % modname - if nch: - chlognew = "%s\n %s" % (chlognew, chmsg) - else: - chlognew = "%s%s" % (chlognew, chmsg) - nch = True - fw.write ("\n\nGRUB_MOD_INIT(%s)\n" % modname) - fw.write ("{\n") - for ciphername in ciphernames: - chmsg = "Register cipher %s" % ciphername - chlognew = "%s\n %s" % (chlognew, chmsg) - fw.write (" grub_cipher_register (&%s);\n" % ciphername) - for ctxsize in mdctxsizes: - fw.write (" COMPILE_TIME_ASSERT(%s <= GRUB_CRYPTO_MAX_MD_CONTEXT_SIZE);\n" % ctxsize) - for mdname in mdnames: - chmsg = "Register digest %s" % mdname - chlognew = "%s\n %s" % (chlognew, chmsg) - fw.write (" grub_md_register (&%s);\n" % mdname) - for pkname in pknames: - chmsg = "Register pk %s" % mdname - chlognew = "%s\n %s" % (chlognew, chmsg) - fw.write (" grub_crypto_pk_%s = &%s;\n" - % (pkname.replace ("_gcry_pubkey_spec_", ""), pkname)) - fw.write ("}") - chmsg = "(GRUB_MOD_FINI(%s)): New function\n" % modname - chlognew = "%s\n %s" % (chlognew, chmsg) - fw.write ("\n\nGRUB_MOD_FINI(%s)\n" % modname) - fw.write ("{\n") - for ciphername in ciphernames: - chmsg = "Unregister cipher %s" % ciphername - chlognew = "%s\n %s" % (chlognew, chmsg) - fw.write (" grub_cipher_unregister (&%s);\n" % ciphername) - for mdname in mdnames: - chmsg = "Unregister MD %s" % mdname - chlognew = "%s\n %s" % (chlognew, chmsg) - fw.write (" grub_md_unregister (&%s);\n" % mdname) - for pkname in pknames: - chmsg = "Unregister pk %s" % mdname - chlognew = "%s\n %s" % (chlognew, chmsg) - fw.write (" grub_crypto_pk_%s = 0;\n" - % (pkname.replace ("_gcry_pubkey_spec_", ""))) - fw.write ("}\n") - conf.write ("module = {\n") - conf.write (" name = %s;\n" % modname) - for src in modfiles.split(): - conf.write (" common = %s;\n" % src) - if len (ciphernames) > 0 or len (mdnames) > 0: - confutil.write (" common = grub-core/%s;\n" % src) - if modname == "gcry_ecc": - conf.write (" common = lib/libgcrypt-grub/mpi/ec.c;\n") - conf.write (" cflags = '$(CFLAGS_GCRY) -Wno-redundant-decls -Wno-sign-compare';\n") - elif modname == "gcry_rijndael" or modname == "gcry_md4" or modname == "gcry_md5" or modname == "gcry_rmd160" or modname == "gcry_sha1" or modname == "gcry_sha256" or modname == "gcry_sha512" or modname == "gcry_tiger": - # Alignment checked by hand - conf.write (" cflags = '$(CFLAGS_GCRY) -Wno-cast-align';\n"); - else: - conf.write (" cflags = '$(CFLAGS_GCRY)';\n"); - conf.write (" cppflags = '$(CPPFLAGS_GCRY)';\n"); - conf.write ("};\n\n") - f.close () - fw.close () - if nch: - chlog = "%s%s\n" % (chlog, chlognew) - elif isc and cipher_file != "camellia.c": - print ("WARNING: C file isn't a module: %s" % cipher_file) - f.close () - fw.close () - os.remove (outfile) - chlog = "%s\n * %s: Removed" % (chlog, cipher_file) - continue - chlog = "%s%sSkipped unknown file\n" % (chlog, chlognew) - print ("WARNING: unknown file %s" % cipher_file) - -cryptolist.close () - -for src in sorted (os.listdir (os.path.join (indir, "src"))): - if src == "versioninfo.rc.in" or src == "ath.c" or src == "ChangeLog-2011" \ - or src == "dumpsexp.c" or src == "fips.c" or src == "gcrypt.h.in" \ - or src == "gcryptrnd.c"or src == "getrandom.c" \ - or src == "global.c" or src == "hmac256.c" \ - or src == "hwfeatures.c" or src == "libgcrypt-config.in" \ - or src == "libgcrypt.def" or src == "libgcrypt.m4" \ - or src == "libgcrypt.vers" or src == "Makefile.am" \ - or src == "Manifest" or src == "misc.c" \ - or src == "missing-string.c" or src == "module.c" \ - or src == "secmem.c" or src == "sexp.c" \ - or src == "stdmem.c" or src == "visibility.c": - continue - outfile = os.path.join (basedir, "src", src) - infile = os.path.join (indir, "src", src) - if os.path.isdir (infile): - continue - fw = codecs.open (outfile, "w", "utf-8") - if src == "gcrypt-module.h": - fw.close () - continue - if src == "visibility.h": - fw.write ("# include \n") - fw.close () - continue - f = codecs.open (infile, "r", "utf-8") - if src == "types.h": - fw.write (f.read ().replace ("float f;", "").replace ("double g;", "")) - f.close () - fw.close () - continue - - if src == "g10lib.h": - fw.write (f.read ().replace ("(printf,f,a)", "(__printf__,f,a)")) - f.close () - fw.close () - continue - - fw.write (f.read ()) - f.close () - fw.close () - -for src in sorted (os.listdir (os.path.join (indir, "mpi"))): - if src == "config.links" or src == "ChangeLog-2011" \ - or src == "mpi-scan.c" or src == "Manifest" \ - or src == "Makefile.am": - continue - infile = os.path.join (indir, "mpi", src) - outfile = os.path.join (basedir, "mpi", src) - if os.path.isdir (infile): - continue - f = codecs.open (infile, "r", "utf-8") - fw = codecs.open (outfile, "w", "utf-8") - fw.write ("/* This file was automatically imported with \n") - fw.write (" import_gcry.py. Please don't modify it */\n") - hold = False - skip = 0 - for line in f: - if skip > 0: - if line[0] == "}": - skip = skip - 1 - continue - if hold: - hold = False - # We're optimising for size and exclude anything needing good - # randomness. - if not re.match ("(_gcry_mpi_get_hw_config|gcry_mpi_randomize)", line) is None: - skip = 1 - continue - else: - fw.write (holdline) - m = re.match ("(const char( |)\*|void) *$", line) - if not m is None: - hold = True - holdline = line - continue - m = re.match ("#include \"mod-source-info\.h\"", line) - if not m is None: - continue - fw.write (line) - -chlog = "%s * crypto.lst: New file.\n" % chlog - -outfile = os.path.join (cipher_dir_out, "types.h") -fw=codecs.open (outfile, "w", "utf-8") -fw.write ("#include \n") -fw.write ("#include \n") -chlog = "%s * types.h: New file.\n" % chlog -fw.close () - -outfile = os.path.join (cipher_dir_out, "memory.h") -fw=codecs.open (outfile, "w", "utf-8") -fw.write ("#include \n") -chlog = "%s * memory.h: New file.\n" % chlog -fw.close () - - -outfile = os.path.join (cipher_dir_out, "cipher.h") -fw=codecs.open (outfile, "w", "utf-8") -fw.write ("#include \n") -fw.write ("#include \n") -chlog = "%s * cipher.h: Likewise.\n" % chlog -fw.close () - -outfile = os.path.join (cipher_dir_out, "g10lib.h") -fw=codecs.open (outfile, "w", "utf-8") -fw.write ("#include \n") -chlog = "%s * g10lib.h: Likewise.\n" % chlog -fw.close () - -infile = os.path.join (cipher_dir_in, "ChangeLog") -outfile = os.path.join (cipher_dir_out, "ChangeLog") - -conf.close (); - -initfile = codecs.open (os.path.join (cipher_dir_out, "init.c"), "w", "utf-8") -initfile.write ("#include \n") -for module in modules_sym_md: - initfile.write ("extern void grub_%s_init (void);\n" % module) - initfile.write ("extern void grub_%s_fini (void);\n" % module) -initfile.write ("\n") -initfile.write ("void\n") -initfile.write ("grub_gcry_init_all (void)\n") -initfile.write ("{\n") -for module in modules_sym_md: - initfile.write (" grub_%s_init ();\n" % module) -initfile.write ("}\n") -initfile.write ("\n") -initfile.write ("void\n") -initfile.write ("grub_gcry_fini_all (void)\n") -initfile.write ("{\n") -for module in modules_sym_md: - initfile.write (" grub_%s_fini ();\n" % module) -initfile.write ("}\n") -initfile.close () - -confutil.write (" common = grub-core/lib/libgcrypt-grub/cipher/init.c;\n") -confutil.write ("};\n"); -confutil.close (); - - -f=codecs.open (infile, "r", "utf-8") -fw=codecs.open (outfile, "w", "utf-8") -dt = datetime.date.today () -fw.write ("%04d-%02d-%02d Automatic import tool\n" % \ - (dt.year,dt.month, dt.day)) -fw.write ("\n") -fw.write (" Imported ciphers to GRUB\n") -fw.write ("\n") -fw.write (chlog) -fw.write ("\n") -for line in f: - fw.write (line) -f.close () -fw.close () diff --git a/thirdparty/grub-2.04/util/import_gcrypth.sed b/thirdparty/grub-2.04/util/import_gcrypth.sed deleted file mode 100644 index fe6d1a072..000000000 --- a/thirdparty/grub-2.04/util/import_gcrypth.sed +++ /dev/null @@ -1,18 +0,0 @@ -/^#@INSERT_SYS_SELECT_H@/ d -/^@FALLBACK_SOCKLEN_T@/ d -/^# *include / d -/^# *include / d -/^# *include / d -/^# *include / d -/^# *include / d -/^# *include / d -/^# *include / d -/^ typedef long ssize_t;/ d -/^ typedef int pid_t;/ d -/^# *include / s,#include ,#include , -/^typedef gpg_error_t gcry_error_t;/ d -/^typedef gpg_err_code_t gcry_err_code_t;/ d -/^typedef struct gcry_mpi \*gcry_mpi_t;/ d -/^struct gcry_thread_cbs/ d -s,_gcry_mpi_invm,gcry_mpi_invm,g -p \ No newline at end of file diff --git a/thirdparty/grub-2.04/util/import_unicode.py b/thirdparty/grub-2.04/util/import_unicode.py deleted file mode 100644 index 08f80591e..000000000 --- a/thirdparty/grub-2.04/util/import_unicode.py +++ /dev/null @@ -1,193 +0,0 @@ -#* -#* GRUB -- GRand Unified Bootloader -#* Copyright (C) 2010 Free Software Foundation, Inc. -#* -#* GRUB is free software: you can redistribute it and/or modify -#* it under the terms of the GNU General Public License as published by -#* the Free Software Foundation, either version 3 of the License, or -#* (at your option) any later version. -#* -#* GRUB is distributed in the hope that it will be useful, -#* but WITHOUT ANY WARRANTY; without even the implied warranty of -#* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -#* GNU General Public License for more details. -#* -#* You should have received a copy of the GNU General Public License -#* along with GRUB. If not, see . -#* - -import re -import sys - -if len (sys.argv) < 3: - print ("Usage: %s SOURCE DESTINATION" % sys.argv[0]) - exit (0) -infile = open (sys.argv[3], "r") -joining = {} -for line in infile: - line = re.sub ("#.*$", "", line) - line = line.replace ("\n", "") - line = line.replace (" ", "") - if len (line) == 0 or line[0] == '\n': - continue - sp = line.split (";") - curcode = int (sp[0], 16) - if sp[2] == "U": - joining[curcode] = "NONJOINING" - elif sp[2] == "L": - joining[curcode] = "LEFT" - elif sp[2] == "R": - joining[curcode] = "RIGHT" - elif sp[2] == "D": - joining[curcode] = "DUAL" - elif sp[2] == "C": - joining[curcode] = "CAUSING" - else: - print ("Unknown joining type '%s'" % sp[2]) - exit (1) -infile.close () - -infile = open (sys.argv[1], "r") -outfile = open (sys.argv[4], "w") -outfile.write ("#include \n") -outfile.write ("\n") -outfile.write ("struct grub_unicode_compact_range grub_unicode_compact[] = {\n") - -begincode = -2 -lastcode = -2 -lastbiditype = "X" -lastmirrortype = False -lastcombtype = -1 -arabicsubst = {} -for line in infile: - sp = line.split (";") - curcode = int (sp[0], 16) - curcombtype = int (sp[3], 10) - curbiditype = sp[4] - curmirrortype = (sp[9] == "Y") - if curcombtype <= 255 and curcombtype >= 253: - print ("UnicodeData.txt uses combination type %d. Conflict." \ - % curcombtype) - raise - if sp[2] != "Lu" and sp[2] != "Ll" and sp[2] != "Lt" and sp[2] != "Lm" \ - and sp[2] != "Lo"\ - and sp[2] != "Me" and sp[2] != "Mc" and sp[2] != "Mn" \ - and sp[2] != "Nd" and sp[2] != "Nl" and sp[2] != "No" \ - and sp[2] != "Pc" and sp[2] != "Pd" and sp[2] != "Ps" \ - and sp[2] != "Pe" and sp[2] != "Pi" and sp[2] != "Pf" \ - and sp[2] != "Po" \ - and sp[2] != "Sm" and sp[2] != "Sc" and sp[2] != "Sk" \ - and sp[2] != "So"\ - and sp[2] != "Zs" and sp[2] != "Zl" and sp[2] != "Zp" \ - and sp[2] != "Cc" and sp[2] != "Cf" and sp[2] != "Cs" \ - and sp[2] != "Co": - print ("WARNING: Unknown type %s" % sp[2]) - if curcombtype == 0 and sp[2] == "Me": - curcombtype = 253 - if curcombtype == 0 and sp[2] == "Mc": - curcombtype = 254 - if curcombtype == 0 and sp[2] == "Mn": - curcombtype = 255 - if (curcombtype >= 2 and curcombtype <= 6) \ - or (curcombtype >= 37 and curcombtype != 84 and curcombtype != 91 and curcombtype != 103 and curcombtype != 107 and curcombtype != 118 and curcombtype != 122 and curcombtype != 129 and curcombtype != 130 and curcombtype != 132 and curcombtype != 202 and \ - curcombtype != 214 and curcombtype != 216 and \ - curcombtype != 218 and curcombtype != 220 and \ - curcombtype != 222 and curcombtype != 224 and curcombtype != 226 and curcombtype != 228 and \ - curcombtype != 230 and curcombtype != 232 and curcombtype != 233 and \ - curcombtype != 234 and \ - curcombtype != 240 and curcombtype != 253 and \ - curcombtype != 254 and curcombtype != 255): - print ("WARNING: Unknown combining type %d" % curcombtype) - if curcode in joining: - curjoin = joining[curcode] - elif sp[2] == "Me" or sp[2] == "Mn" or sp[2] == "Cf": - curjoin = "TRANSPARENT" - else: - curjoin = "NONJOINING" - if sp[1].startswith ("ARABIC LETTER "): - arabname = sp[1][len ("ARABIC LETTER "):] - form = 0 - if arabname.endswith (" ISOLATED FORM"): - arabname = arabname[0:len (arabname) - len (" ISOLATED FORM")] - form = 1 - if arabname.endswith (" FINAL FORM"): - arabname = arabname[0:len (arabname) - len (" FINAL FORM")] - form = 2 - if arabname.endswith (" MEDIAL FORM"): - arabname = arabname[0:len (arabname) - len (" MEDIAL FORM")] - form = 3 - if arabname.endswith (" INITIAL FORM"): - arabname = arabname[0:len (arabname) - len (" INITIAL FORM")] - form = 4 - if arabname not in arabicsubst: - arabicsubst[arabname]={} - arabicsubst[arabname][form] = curcode; - if form == 0: - arabicsubst[arabname]['join'] = curjoin - if lastcode + 1 != curcode or curbiditype != lastbiditype \ - or curcombtype != lastcombtype or curmirrortype != lastmirrortype \ - or curjoin != lastjoin: - if begincode != -2 and (lastbiditype != "L" or lastcombtype != 0 or \ - lastmirrortype): - outfile.write (("{0x%x, 0x%x, GRUB_BIDI_TYPE_%s, %d, %d, GRUB_JOIN_TYPE_%s},\n" \ - % (begincode, lastcode - begincode + 1, \ - lastbiditype, \ - lastcombtype, lastmirrortype, \ - lastjoin))) - if lastcode - begincode + 1 >= 0x200: - print ("Too long range") - raise - begincode = curcode - lastcode = curcode - lastjoin = curjoin - lastbiditype = curbiditype - lastcombtype = curcombtype - lastmirrortype = curmirrortype -if lastbiditype != "L" or lastcombtype != 0 or lastmirrortype: - outfile.write (("{0x%x, 0x%x, GRUB_BIDI_TYPE_%s, %d, %d, GRUB_JOIN_TYPE_%s},\n" \ - % (begincode, lastcode, lastbiditype, lastcombtype, \ - lastmirrortype, lastjoin))) -outfile.write ("{0, 0, 0, 0, 0, 0},\n") - -outfile.write ("};\n") - -infile.close () - -infile = open (sys.argv[2], "r") - -outfile.write ("struct grub_unicode_bidi_pair grub_unicode_bidi_pairs[] = {\n") - -for line in infile: - line = re.sub ("#.*$", "", line) - line = line.replace ("\n", "") - line = line.replace (" ", "") - if len (line) == 0 or line[0] == '\n': - continue - sp = line.split (";") - code1 = int (sp[0], 16) - code2 = int (sp[1], 16) - outfile.write ("{0x%x, 0x%x},\n" % (code1, code2)) -outfile.write ("{0, 0},\n") -outfile.write ("};\n") - -infile.close () - -outfile.write ("struct grub_unicode_arabic_shape grub_unicode_arabic_shapes[] = {\n ") - -for x in arabicsubst: - try: - if arabicsubst[x]['join'] == "DUAL": - outfile.write ("{0x%x, 0x%x, 0x%x, 0x%x, 0x%x},\n " % (arabicsubst[x][0], arabicsubst[x][1], arabicsubst[x][2], arabicsubst[x][3], arabicsubst[x][4])) - elif arabicsubst[x]['join'] == "RIGHT": - outfile.write ("{0x%x, 0x%x, 0x%x, 0x%x, 0x%x},\n " % (arabicsubst[x][0], arabicsubst[x][1], arabicsubst[x][2], 0, 0)) - elif arabicsubst[x]['join'] == "LEFT": - outfile.write ("{0x%x, 0x%x, 0x%x, 0x%x, 0x%x},\n " % (arabicsubst[x][0], arabicsubst[x][1], 0, 0, arabicsubst[x][4])) - except: - pass - -outfile.write ("{0, 0, 0, 0, 0},\n") -outfile.write ("};\n") - - -outfile.close () - diff --git a/thirdparty/grub-2.04/util/misc.c b/thirdparty/grub-2.04/util/misc.c deleted file mode 100644 index d545212d9..000000000 --- a/thirdparty/grub-2.04/util/misc.c +++ /dev/null @@ -1,225 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2002,2003,2005,2006,2007,2008,2009,2010 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#define ENABLE_RELOCATABLE 0 -#ifdef GRUB_BUILD -const char *program_name = GRUB_BUILD_PROGRAM_NAME; -#else -#include "progname.h" -#endif - -#ifdef GRUB_UTIL -int -grub_err_printf (const char *fmt, ...) -{ - va_list ap; - int ret; - - va_start (ap, fmt); - ret = vfprintf (stderr, fmt, ap); - va_end (ap); - - return ret; -} -#endif - -char * -grub_util_get_path (const char *dir, const char *file) -{ - char *path; - - path = (char *) xmalloc (strlen (dir) + 1 + strlen (file) + 1); - sprintf (path, "%s/%s", dir, file); - return path; -} - -char * -grub_util_read_image (const char *path) -{ - char *img; - FILE *fp; - size_t size; - - grub_util_info ("reading %s", path); - - size = grub_util_get_image_size (path); - img = (char *) xmalloc (size); - - fp = grub_util_fopen (path, "rb"); - if (! fp) - grub_util_error (_("cannot open `%s': %s"), path, - strerror (errno)); - - if (fread (img, 1, size, fp) != size) - grub_util_error (_("cannot read `%s': %s"), path, - strerror (errno)); - - fclose (fp); - - return img; -} - -void -grub_util_write_image_at (const void *img, size_t size, off_t offset, FILE *out, - const char *name) -{ - grub_util_info ("writing 0x%" GRUB_HOST_PRIxLONG_LONG " bytes at offset 0x%" - GRUB_HOST_PRIxLONG_LONG, - (unsigned long long) size, (unsigned long long) offset); - if (fseeko (out, offset, SEEK_SET) == -1) - grub_util_error (_("cannot seek `%s': %s"), - name, strerror (errno)); - if (fwrite (img, 1, size, out) != size) - grub_util_error (_("cannot write to `%s': %s"), - name, strerror (errno)); -} - -void -grub_util_write_image (const char *img, size_t size, FILE *out, - const char *name) -{ - grub_util_info ("writing 0x%" GRUB_HOST_PRIxLONG_LONG " bytes", (unsigned long long) size); - if (fwrite (img, 1, size, out) != size) - { - if (!name) - grub_util_error (_("cannot write to the stdout: %s"), - strerror (errno)); - else - grub_util_error (_("cannot write to `%s': %s"), - name, strerror (errno)); - } -} - -grub_err_t -grub_script_execute_cmdline (struct grub_script_cmd *cmd __attribute__ ((unused))) -{ - return 0; -} - -grub_err_t -grub_script_execute_cmdlist (struct grub_script_cmd *cmd __attribute__ ((unused))) -{ - return 0; -} - -grub_err_t -grub_script_execute_cmdif (struct grub_script_cmd *cmd __attribute__ ((unused))) -{ - return 0; -} - -grub_err_t -grub_script_execute_cmdfor (struct grub_script_cmd *cmd __attribute__ ((unused))) -{ - return 0; -} - -grub_err_t -grub_script_execute_cmdwhile (struct grub_script_cmd *cmd __attribute__ ((unused))) -{ - return 0; -} - -grub_err_t -grub_script_execute (struct grub_script *script) -{ - if (script == 0 || script->cmd == 0) - return 0; - - return script->cmd->exec (script->cmd); -} - -int -grub_getkey (void) -{ - return -1; -} - -void -grub_refresh (void) -{ - fflush (stdout); -} - -static void -grub_xputs_real (const char *str) -{ - fputs (str, stdout); -} - -void (*grub_xputs) (const char *str) = grub_xputs_real; - -int -grub_dl_ref (grub_dl_t mod) -{ - (void) mod; - return 0; -} - -int -grub_dl_unref (grub_dl_t mod) -{ - (void) mod; - return 0; -} - -/* Some functions that we don't use. */ -void -grub_mm_init_region (void *addr __attribute__ ((unused)), - grub_size_t size __attribute__ ((unused))) -{ -} - -void -grub_register_exported_symbols (void) -{ -} - -/* Used in comparison of arrays of strings with qsort */ -int -grub_qsort_strcmp (const void *p1, const void *p2) -{ - return strcmp(*(char *const *)p1, *(char *const *)p2); -} - diff --git a/thirdparty/grub-2.04/util/mkimage.c b/thirdparty/grub-2.04/util/mkimage.c deleted file mode 100644 index 37d6249f1..000000000 --- a/thirdparty/grub-2.04/util/mkimage.c +++ /dev/null @@ -1,1760 +0,0 @@ -/* grub-mkimage.c - make a bootable image */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2002,2003,2004,2005,2006,2007,2008,2009,2010 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#define ALIGN_ADDR(x) (ALIGN_UP((x), image_target->voidp_sizeof)) - -#ifdef USE_LIBLZMA -#include -#endif - -#pragma GCC diagnostic ignored "-Wcast-align" - -#define TARGET_NO_FIELD 0xffffffff - -/* use 2015-01-01T00:00:00+0000 as a stock timestamp */ -#define STABLE_EMBEDDING_TIMESTAMP 1420070400 - -#define EFI32_HEADER_SIZE ALIGN_UP (GRUB_PE32_MSDOS_STUB_SIZE \ - + GRUB_PE32_SIGNATURE_SIZE \ - + sizeof (struct grub_pe32_coff_header) \ - + sizeof (struct grub_pe32_optional_header) \ - + 4 * sizeof (struct grub_pe32_section_table), \ - GRUB_PE32_FILE_ALIGNMENT) - -#define EFI64_HEADER_SIZE ALIGN_UP (GRUB_PE32_MSDOS_STUB_SIZE \ - + GRUB_PE32_SIGNATURE_SIZE \ - + sizeof (struct grub_pe32_coff_header) \ - + sizeof (struct grub_pe64_optional_header) \ - + 4 * sizeof (struct grub_pe32_section_table), \ - GRUB_PE32_FILE_ALIGNMENT) - -static const struct grub_install_image_target_desc image_targets[] = - { - { - .dirname = "i386-coreboot", - .names = { "i386-coreboot", NULL }, - .voidp_sizeof = 4, - .bigendian = 0, - .id = IMAGE_COREBOOT, - .flags = PLATFORM_FLAGS_NONE, - .total_module_size = TARGET_NO_FIELD, - .decompressor_compressed_size = TARGET_NO_FIELD, - .decompressor_uncompressed_size = TARGET_NO_FIELD, - .decompressor_uncompressed_addr = TARGET_NO_FIELD, - .reloc_table_offset = TARGET_NO_FIELD, - .section_align = 1, - .vaddr_offset = 0, - .link_addr = GRUB_KERNEL_I386_COREBOOT_LINK_ADDR, - .elf_target = EM_386, - .link_align = 4, - .mod_gap = GRUB_KERNEL_I386_COREBOOT_MOD_GAP, - .mod_align = GRUB_KERNEL_I386_COREBOOT_MOD_ALIGN - }, - { - .dirname = "i386-multiboot", - .names = { "i386-multiboot", NULL}, - .voidp_sizeof = 4, - .bigendian = 0, - .id = IMAGE_COREBOOT, - .flags = PLATFORM_FLAGS_NONE, - .total_module_size = TARGET_NO_FIELD, - .decompressor_compressed_size = TARGET_NO_FIELD, - .decompressor_uncompressed_size = TARGET_NO_FIELD, - .decompressor_uncompressed_addr = TARGET_NO_FIELD, - .section_align = 1, - .vaddr_offset = 0, - .link_addr = GRUB_KERNEL_I386_COREBOOT_LINK_ADDR, - .elf_target = EM_386, - .link_align = 4, - .mod_gap = GRUB_KERNEL_I386_COREBOOT_MOD_GAP, - .mod_align = GRUB_KERNEL_I386_COREBOOT_MOD_ALIGN - }, - { - .dirname = "i386-pc", - .names = { "i386-pc", NULL }, - .voidp_sizeof = 4, - .bigendian = 0, - .id = IMAGE_I386_PC, - .flags = PLATFORM_FLAGS_DECOMPRESSORS, - .total_module_size = TARGET_NO_FIELD, - .decompressor_compressed_size = GRUB_DECOMPRESSOR_I386_PC_COMPRESSED_SIZE, - .decompressor_uncompressed_size = GRUB_DECOMPRESSOR_I386_PC_UNCOMPRESSED_SIZE, - .decompressor_uncompressed_addr = TARGET_NO_FIELD, - .section_align = 1, - .vaddr_offset = 0, - .link_addr = GRUB_KERNEL_I386_PC_LINK_ADDR, - .default_compression = GRUB_COMPRESSION_LZMA - }, - { - .dirname = "i386-xen_pvh", - .names = { "i386-xen_pvh", NULL }, - .voidp_sizeof = 4, - .bigendian = 0, - .id = IMAGE_XEN_PVH, - .flags = PLATFORM_FLAGS_NONE, - .total_module_size = TARGET_NO_FIELD, - .decompressor_compressed_size = TARGET_NO_FIELD, - .decompressor_uncompressed_size = TARGET_NO_FIELD, - .decompressor_uncompressed_addr = TARGET_NO_FIELD, - .elf_target = EM_386, - .section_align = 1, - .vaddr_offset = 0, - .link_addr = GRUB_KERNEL_I386_XEN_PVH_LINK_ADDR, - .mod_align = GRUB_KERNEL_I386_XEN_PVH_MOD_ALIGN, - .link_align = 4 - }, - { - .dirname = "i386-pc", - .names = { "i386-pc-pxe", NULL }, - .voidp_sizeof = 4, - .bigendian = 0, - .id = IMAGE_I386_PC_PXE, - .flags = PLATFORM_FLAGS_DECOMPRESSORS, - .total_module_size = TARGET_NO_FIELD, - .decompressor_compressed_size = GRUB_DECOMPRESSOR_I386_PC_COMPRESSED_SIZE, - .decompressor_uncompressed_size = GRUB_DECOMPRESSOR_I386_PC_UNCOMPRESSED_SIZE, - .decompressor_uncompressed_addr = TARGET_NO_FIELD, - .section_align = 1, - .vaddr_offset = 0, - .link_addr = GRUB_KERNEL_I386_PC_LINK_ADDR, - .default_compression = GRUB_COMPRESSION_LZMA - }, - { - .dirname = "i386-pc", - .names = { "i386-pc-eltorito", NULL }, - .voidp_sizeof = 4, - .bigendian = 0, - .id = IMAGE_I386_PC_ELTORITO, - .flags = PLATFORM_FLAGS_DECOMPRESSORS, - .total_module_size = TARGET_NO_FIELD, - .decompressor_compressed_size = GRUB_DECOMPRESSOR_I386_PC_COMPRESSED_SIZE, - .decompressor_uncompressed_size = GRUB_DECOMPRESSOR_I386_PC_UNCOMPRESSED_SIZE, - .decompressor_uncompressed_addr = TARGET_NO_FIELD, - .section_align = 1, - .vaddr_offset = 0, - .link_addr = GRUB_KERNEL_I386_PC_LINK_ADDR, - .default_compression = GRUB_COMPRESSION_LZMA - }, - { - .dirname = "i386-efi", - .names = { "i386-efi", NULL }, - .voidp_sizeof = 4, - .bigendian = 0, - .id = IMAGE_EFI, - .flags = PLATFORM_FLAGS_NONE, - .total_module_size = TARGET_NO_FIELD, - .decompressor_compressed_size = TARGET_NO_FIELD, - .decompressor_uncompressed_size = TARGET_NO_FIELD, - .decompressor_uncompressed_addr = TARGET_NO_FIELD, - .section_align = GRUB_PE32_SECTION_ALIGNMENT, - .vaddr_offset = EFI32_HEADER_SIZE, - .pe_target = GRUB_PE32_MACHINE_I386, - .elf_target = EM_386, - }, - { - .dirname = "i386-ieee1275", - .names = { "i386-ieee1275", NULL }, - .voidp_sizeof = 4, - .bigendian = 0, - .id = IMAGE_I386_IEEE1275, - .flags = PLATFORM_FLAGS_NONE, - .total_module_size = TARGET_NO_FIELD, - .decompressor_compressed_size = TARGET_NO_FIELD, - .decompressor_uncompressed_size = TARGET_NO_FIELD, - .decompressor_uncompressed_addr = TARGET_NO_FIELD, - .section_align = 1, - .vaddr_offset = 0, - .link_addr = GRUB_KERNEL_I386_IEEE1275_LINK_ADDR, - .elf_target = EM_386, - .mod_gap = GRUB_KERNEL_I386_IEEE1275_MOD_GAP, - .mod_align = GRUB_KERNEL_I386_IEEE1275_MOD_ALIGN, - .link_align = 4, - }, - { - .dirname = "i386-qemu", - .names = { "i386-qemu", NULL }, - .voidp_sizeof = 4, - .bigendian = 0, - .id = IMAGE_QEMU, - .flags = PLATFORM_FLAGS_NONE, - .total_module_size = TARGET_NO_FIELD, - .decompressor_compressed_size = TARGET_NO_FIELD, - .decompressor_uncompressed_size = TARGET_NO_FIELD, - .decompressor_uncompressed_addr = TARGET_NO_FIELD, - .section_align = 1, - .vaddr_offset = 0, - .link_addr = GRUB_KERNEL_I386_QEMU_LINK_ADDR - }, - { - .dirname = "x86_64-efi", - .names = { "x86_64-efi", NULL }, - .voidp_sizeof = 8, - .bigendian = 0, - .id = IMAGE_EFI, - .flags = PLATFORM_FLAGS_NONE, - .total_module_size = TARGET_NO_FIELD, - .decompressor_compressed_size = TARGET_NO_FIELD, - .decompressor_uncompressed_size = TARGET_NO_FIELD, - .decompressor_uncompressed_addr = TARGET_NO_FIELD, - .section_align = GRUB_PE32_SECTION_ALIGNMENT, - .vaddr_offset = EFI64_HEADER_SIZE, - .pe_target = GRUB_PE32_MACHINE_X86_64, - .elf_target = EM_X86_64, - }, - { - .dirname = "i386-xen", - .names = { "i386-xen", NULL }, - .voidp_sizeof = 4, - .bigendian = 0, - .id = IMAGE_XEN, - .flags = PLATFORM_FLAGS_NONE, - .total_module_size = TARGET_NO_FIELD, - .decompressor_compressed_size = TARGET_NO_FIELD, - .decompressor_uncompressed_size = TARGET_NO_FIELD, - .decompressor_uncompressed_addr = TARGET_NO_FIELD, - .section_align = 1, - .vaddr_offset = 0, - .link_addr = 0, - .elf_target = EM_386, - .mod_gap = GRUB_KERNEL_I386_XEN_MOD_GAP, - .mod_align = GRUB_KERNEL_I386_XEN_MOD_ALIGN, - .link_align = 4 - }, - { - .dirname = "x86_64-xen", - .names = { "x86_64-xen", NULL }, - .voidp_sizeof = 8, - .bigendian = 0, - .id = IMAGE_XEN, - .flags = PLATFORM_FLAGS_NONE, - .total_module_size = TARGET_NO_FIELD, - .decompressor_compressed_size = TARGET_NO_FIELD, - .decompressor_uncompressed_size = TARGET_NO_FIELD, - .decompressor_uncompressed_addr = TARGET_NO_FIELD, - .section_align = 1, - .vaddr_offset = 0, - .link_addr = 0, - .elf_target = EM_X86_64, - .mod_gap = GRUB_KERNEL_X86_64_XEN_MOD_GAP, - .mod_align = GRUB_KERNEL_X86_64_XEN_MOD_ALIGN, - .link_align = 8 - }, - { - .dirname = "mipsel-loongson", - .names = { "mipsel-yeeloong-flash", NULL }, - .voidp_sizeof = 4, - .bigendian = 0, - .id = IMAGE_YEELOONG_FLASH, - .flags = PLATFORM_FLAGS_DECOMPRESSORS, - .total_module_size = GRUB_KERNEL_MIPS_LOONGSON_TOTAL_MODULE_SIZE, - .decompressor_compressed_size = GRUB_DECOMPRESSOR_MIPS_LOONGSON_COMPRESSED_SIZE, - .decompressor_uncompressed_size = GRUB_DECOMPRESSOR_MIPS_LOONGSON_UNCOMPRESSED_SIZE, - .decompressor_uncompressed_addr = GRUB_DECOMPRESSOR_MIPS_LOONGSON_UNCOMPRESSED_ADDR, - .section_align = 1, - .vaddr_offset = 0, - .link_addr = GRUB_KERNEL_MIPS_LOONGSON_LINK_ADDR, - .elf_target = EM_MIPS, - .link_align = GRUB_KERNEL_MIPS_LOONGSON_LINK_ALIGN, - .default_compression = GRUB_COMPRESSION_NONE - }, - { - .dirname = "mipsel-loongson", - .names = { "mipsel-fuloong2f-flash", NULL }, - .voidp_sizeof = 4, - .bigendian = 0, - .id = IMAGE_FULOONG2F_FLASH, - .flags = PLATFORM_FLAGS_DECOMPRESSORS, - .total_module_size = GRUB_KERNEL_MIPS_LOONGSON_TOTAL_MODULE_SIZE, - .decompressor_compressed_size = GRUB_DECOMPRESSOR_MIPS_LOONGSON_COMPRESSED_SIZE, - .decompressor_uncompressed_size = GRUB_DECOMPRESSOR_MIPS_LOONGSON_UNCOMPRESSED_SIZE, - .decompressor_uncompressed_addr = GRUB_DECOMPRESSOR_MIPS_LOONGSON_UNCOMPRESSED_ADDR, - .section_align = 1, - .vaddr_offset = 0, - .link_addr = GRUB_KERNEL_MIPS_LOONGSON_LINK_ADDR, - .elf_target = EM_MIPS, - .link_align = GRUB_KERNEL_MIPS_LOONGSON_LINK_ALIGN, - .default_compression = GRUB_COMPRESSION_NONE - }, - { - .dirname = "mipsel-loongson", - .names = { "mipsel-loongson-elf", "mipsel-yeeloong-elf", - "mipsel-fuloong2f-elf", "mipsel-fuloong2e-elf", - "mipsel-fuloong-elf", NULL }, - .voidp_sizeof = 4, - .bigendian = 0, - .id = IMAGE_LOONGSON_ELF, - .flags = PLATFORM_FLAGS_DECOMPRESSORS, - .total_module_size = GRUB_KERNEL_MIPS_LOONGSON_TOTAL_MODULE_SIZE, - .decompressor_compressed_size = GRUB_DECOMPRESSOR_MIPS_LOONGSON_COMPRESSED_SIZE, - .decompressor_uncompressed_size = GRUB_DECOMPRESSOR_MIPS_LOONGSON_UNCOMPRESSED_SIZE, - .decompressor_uncompressed_addr = GRUB_DECOMPRESSOR_MIPS_LOONGSON_UNCOMPRESSED_ADDR, - .section_align = 1, - .vaddr_offset = 0, - .link_addr = GRUB_KERNEL_MIPS_LOONGSON_LINK_ADDR, - .elf_target = EM_MIPS, - .link_align = GRUB_KERNEL_MIPS_LOONGSON_LINK_ALIGN, - .default_compression = GRUB_COMPRESSION_NONE - }, - { - .dirname = "powerpc-ieee1275", - .names = { "powerpc-ieee1275", NULL }, - .voidp_sizeof = 4, - .bigendian = 1, - .id = IMAGE_PPC, - .flags = PLATFORM_FLAGS_NONE, - .total_module_size = TARGET_NO_FIELD, - .decompressor_compressed_size = TARGET_NO_FIELD, - .decompressor_uncompressed_size = TARGET_NO_FIELD, - .decompressor_uncompressed_addr = TARGET_NO_FIELD, - .section_align = 1, - .vaddr_offset = 0, - .link_addr = GRUB_KERNEL_POWERPC_IEEE1275_LINK_ADDR, - .elf_target = EM_PPC, - .mod_gap = GRUB_KERNEL_POWERPC_IEEE1275_MOD_GAP, - .mod_align = GRUB_KERNEL_POWERPC_IEEE1275_MOD_ALIGN, - .link_align = 4 - }, - { - .dirname = "sparc64-ieee1275", - .names = { "sparc64-ieee1275-raw", NULL }, - .voidp_sizeof = 8, - .bigendian = 1, - .id = IMAGE_SPARC64_RAW, - .flags = PLATFORM_FLAGS_NONE, - .total_module_size = GRUB_KERNEL_SPARC64_IEEE1275_TOTAL_MODULE_SIZE, - .decompressor_compressed_size = TARGET_NO_FIELD, - .decompressor_uncompressed_size = TARGET_NO_FIELD, - .decompressor_uncompressed_addr = TARGET_NO_FIELD, - .section_align = 1, - .vaddr_offset = 0, - .link_addr = GRUB_KERNEL_SPARC64_IEEE1275_LINK_ADDR, - .mod_align = GRUB_KERNEL_SPARC64_IEEE1275_MOD_ALIGN, - }, - { - .dirname = "sparc64-ieee1275", - .names = { "sparc64-ieee1275-cdcore", NULL }, - .voidp_sizeof = 8, - .bigendian = 1, - .id = IMAGE_SPARC64_CDCORE, - .flags = PLATFORM_FLAGS_NONE, - .total_module_size = GRUB_KERNEL_SPARC64_IEEE1275_TOTAL_MODULE_SIZE, - .decompressor_compressed_size = TARGET_NO_FIELD, - .decompressor_uncompressed_size = TARGET_NO_FIELD, - .decompressor_uncompressed_addr = TARGET_NO_FIELD, - .section_align = 1, - .vaddr_offset = 0, - .link_addr = GRUB_KERNEL_SPARC64_IEEE1275_LINK_ADDR, - .mod_align = GRUB_KERNEL_SPARC64_IEEE1275_MOD_ALIGN, - }, - { - .dirname = "sparc64-ieee1275", - .names = { "sparc64-ieee1275-aout", NULL }, - .voidp_sizeof = 8, - .bigendian = 1, - .id = IMAGE_SPARC64_AOUT, - .flags = PLATFORM_FLAGS_NONE, - .total_module_size = GRUB_KERNEL_SPARC64_IEEE1275_TOTAL_MODULE_SIZE, - .decompressor_compressed_size = TARGET_NO_FIELD, - .decompressor_uncompressed_size = TARGET_NO_FIELD, - .decompressor_uncompressed_addr = TARGET_NO_FIELD, - .section_align = 1, - .vaddr_offset = 0, - .link_addr = GRUB_KERNEL_SPARC64_IEEE1275_LINK_ADDR, - .mod_align = GRUB_KERNEL_SPARC64_IEEE1275_MOD_ALIGN, - }, - { - .dirname = "ia64-efi", - .names = {"ia64-efi", NULL}, - .voidp_sizeof = 8, - .bigendian = 0, - .id = IMAGE_EFI, - .flags = PLATFORM_FLAGS_NONE, - .total_module_size = TARGET_NO_FIELD, - .decompressor_compressed_size = TARGET_NO_FIELD, - .decompressor_uncompressed_size = TARGET_NO_FIELD, - .decompressor_uncompressed_addr = TARGET_NO_FIELD, - .section_align = GRUB_PE32_SECTION_ALIGNMENT, - .vaddr_offset = EFI64_HEADER_SIZE, - .pe_target = GRUB_PE32_MACHINE_IA64, - .elf_target = EM_IA_64, - }, - { - .dirname = "mips-arc", - .names = {"mips-arc", NULL}, - .voidp_sizeof = 4, - .bigendian = 1, - .id = IMAGE_MIPS_ARC, - .flags = PLATFORM_FLAGS_DECOMPRESSORS, - .total_module_size = GRUB_KERNEL_MIPS_ARC_TOTAL_MODULE_SIZE, - .decompressor_compressed_size = GRUB_DECOMPRESSOR_MIPS_LOONGSON_COMPRESSED_SIZE, - .decompressor_uncompressed_size = GRUB_DECOMPRESSOR_MIPS_LOONGSON_UNCOMPRESSED_SIZE, - .decompressor_uncompressed_addr = GRUB_DECOMPRESSOR_MIPS_LOONGSON_UNCOMPRESSED_ADDR, - .section_align = 1, - .vaddr_offset = 0, - .link_addr = GRUB_KERNEL_MIPS_ARC_LINK_ADDR, - .elf_target = EM_MIPS, - .link_align = GRUB_KERNEL_MIPS_ARC_LINK_ALIGN, - .default_compression = GRUB_COMPRESSION_NONE - }, - { - .dirname = "mipsel-arc", - .names = {"mipsel-arc", NULL}, - .voidp_sizeof = 4, - .bigendian = 0, - .id = IMAGE_MIPS_ARC, - .flags = PLATFORM_FLAGS_DECOMPRESSORS, - .total_module_size = GRUB_KERNEL_MIPS_ARC_TOTAL_MODULE_SIZE, - .decompressor_compressed_size = GRUB_DECOMPRESSOR_MIPS_LOONGSON_COMPRESSED_SIZE, - .decompressor_uncompressed_size = GRUB_DECOMPRESSOR_MIPS_LOONGSON_UNCOMPRESSED_SIZE, - .decompressor_uncompressed_addr = GRUB_DECOMPRESSOR_MIPS_LOONGSON_UNCOMPRESSED_ADDR, - .section_align = 1, - .vaddr_offset = 0, - .link_addr = GRUB_KERNEL_MIPSEL_ARC_LINK_ADDR, - .elf_target = EM_MIPS, - .link_align = GRUB_KERNEL_MIPS_ARC_LINK_ALIGN, - .default_compression = GRUB_COMPRESSION_NONE - }, - { - .dirname = "mipsel-qemu_mips", - .names = { "mipsel-qemu_mips-elf", NULL }, - .voidp_sizeof = 4, - .bigendian = 0, - .id = IMAGE_LOONGSON_ELF, - .flags = PLATFORM_FLAGS_DECOMPRESSORS, - .total_module_size = GRUB_KERNEL_MIPS_QEMU_MIPS_TOTAL_MODULE_SIZE, - .decompressor_compressed_size = GRUB_DECOMPRESSOR_MIPS_LOONGSON_COMPRESSED_SIZE, - .decompressor_uncompressed_size = GRUB_DECOMPRESSOR_MIPS_LOONGSON_UNCOMPRESSED_SIZE, - .decompressor_uncompressed_addr = GRUB_DECOMPRESSOR_MIPS_LOONGSON_UNCOMPRESSED_ADDR, - .section_align = 1, - .vaddr_offset = 0, - .link_addr = GRUB_KERNEL_MIPS_QEMU_MIPS_LINK_ADDR, - .elf_target = EM_MIPS, - .link_align = GRUB_KERNEL_MIPS_QEMU_MIPS_LINK_ALIGN, - .default_compression = GRUB_COMPRESSION_NONE - }, - { - .dirname = "mips-qemu_mips", - .names = { "mips-qemu_mips-flash", NULL }, - .voidp_sizeof = 4, - .bigendian = 1, - .id = IMAGE_QEMU_MIPS_FLASH, - .flags = PLATFORM_FLAGS_DECOMPRESSORS, - .total_module_size = GRUB_KERNEL_MIPS_QEMU_MIPS_TOTAL_MODULE_SIZE, - .decompressor_compressed_size = GRUB_DECOMPRESSOR_MIPS_LOONGSON_COMPRESSED_SIZE, - .decompressor_uncompressed_size = GRUB_DECOMPRESSOR_MIPS_LOONGSON_UNCOMPRESSED_SIZE, - .decompressor_uncompressed_addr = GRUB_DECOMPRESSOR_MIPS_LOONGSON_UNCOMPRESSED_ADDR, - .section_align = 1, - .vaddr_offset = 0, - .link_addr = GRUB_KERNEL_MIPS_QEMU_MIPS_LINK_ADDR, - .elf_target = EM_MIPS, - .link_align = GRUB_KERNEL_MIPS_QEMU_MIPS_LINK_ALIGN, - .default_compression = GRUB_COMPRESSION_NONE - }, - { - .dirname = "mipsel-qemu_mips", - .names = { "mipsel-qemu_mips-flash", NULL }, - .voidp_sizeof = 4, - .bigendian = 0, - .id = IMAGE_QEMU_MIPS_FLASH, - .flags = PLATFORM_FLAGS_DECOMPRESSORS, - .total_module_size = GRUB_KERNEL_MIPS_QEMU_MIPS_TOTAL_MODULE_SIZE, - .decompressor_compressed_size = GRUB_DECOMPRESSOR_MIPS_LOONGSON_COMPRESSED_SIZE, - .decompressor_uncompressed_size = GRUB_DECOMPRESSOR_MIPS_LOONGSON_UNCOMPRESSED_SIZE, - .decompressor_uncompressed_addr = GRUB_DECOMPRESSOR_MIPS_LOONGSON_UNCOMPRESSED_ADDR, - .section_align = 1, - .vaddr_offset = 0, - .link_addr = GRUB_KERNEL_MIPS_QEMU_MIPS_LINK_ADDR, - .elf_target = EM_MIPS, - .link_align = GRUB_KERNEL_MIPS_QEMU_MIPS_LINK_ALIGN, - .default_compression = GRUB_COMPRESSION_NONE - }, - { - .dirname = "mips-qemu_mips", - .names = { "mips-qemu_mips-elf", NULL }, - .voidp_sizeof = 4, - .bigendian = 1, - .id = IMAGE_LOONGSON_ELF, - .flags = PLATFORM_FLAGS_DECOMPRESSORS, - .total_module_size = GRUB_KERNEL_MIPS_QEMU_MIPS_TOTAL_MODULE_SIZE, - .decompressor_compressed_size = GRUB_DECOMPRESSOR_MIPS_LOONGSON_COMPRESSED_SIZE, - .decompressor_uncompressed_size = GRUB_DECOMPRESSOR_MIPS_LOONGSON_UNCOMPRESSED_SIZE, - .decompressor_uncompressed_addr = GRUB_DECOMPRESSOR_MIPS_LOONGSON_UNCOMPRESSED_ADDR, - .section_align = 1, - .vaddr_offset = 0, - .link_addr = GRUB_KERNEL_MIPS_QEMU_MIPS_LINK_ADDR, - .elf_target = EM_MIPS, - .link_align = GRUB_KERNEL_MIPS_QEMU_MIPS_LINK_ALIGN, - .default_compression = GRUB_COMPRESSION_NONE - }, - { - .dirname = "arm-uboot", - .names = { "arm-uboot", NULL }, - .voidp_sizeof = 4, - .bigendian = 0, - .id = IMAGE_UBOOT, - .flags = PLATFORM_FLAGS_NONE, - .total_module_size = GRUB_KERNEL_ARM_UBOOT_TOTAL_MODULE_SIZE, - .decompressor_compressed_size = TARGET_NO_FIELD, - .decompressor_uncompressed_size = TARGET_NO_FIELD, - .decompressor_uncompressed_addr = TARGET_NO_FIELD, - .section_align = GRUB_KERNEL_ARM_UBOOT_MOD_ALIGN, - .vaddr_offset = 0, - .elf_target = EM_ARM, - .mod_gap = GRUB_KERNEL_ARM_UBOOT_MOD_GAP, - .mod_align = GRUB_KERNEL_ARM_UBOOT_MOD_ALIGN, - .link_align = 4 - }, - /* For coreboot versions that don't support self-relocating images. */ - { - .dirname = "arm-coreboot-vexpress", - .names = { "arm-coreboot-vexpress", NULL }, - .voidp_sizeof = 4, - .bigendian = 0, - .id = IMAGE_COREBOOT, - .flags = PLATFORM_FLAGS_NONE, - .total_module_size = GRUB_KERNEL_ARM_COREBOOT_TOTAL_MODULE_SIZE, - .decompressor_compressed_size = TARGET_NO_FIELD, - .decompressor_uncompressed_size = TARGET_NO_FIELD, - .decompressor_uncompressed_addr = TARGET_NO_FIELD, - .section_align = GRUB_KERNEL_ARM_COREBOOT_MOD_ALIGN, - .vaddr_offset = 0, - .elf_target = EM_ARM, - .mod_gap = GRUB_KERNEL_ARM_COREBOOT_MOD_GAP, - .mod_align = GRUB_KERNEL_ARM_COREBOOT_MOD_ALIGN, - .link_align = 4, - .link_addr = 0x62000000, - }, - { - .dirname = "arm-coreboot-veyron", - .names = { "arm-coreboot-veyron", NULL }, - .voidp_sizeof = 4, - .bigendian = 0, - .id = IMAGE_COREBOOT, - .flags = PLATFORM_FLAGS_NONE, - .total_module_size = GRUB_KERNEL_ARM_COREBOOT_TOTAL_MODULE_SIZE, - .decompressor_compressed_size = TARGET_NO_FIELD, - .decompressor_uncompressed_size = TARGET_NO_FIELD, - .decompressor_uncompressed_addr = TARGET_NO_FIELD, - .section_align = GRUB_KERNEL_ARM_COREBOOT_MOD_ALIGN, - .vaddr_offset = 0, - .elf_target = EM_ARM, - .mod_gap = GRUB_KERNEL_ARM_COREBOOT_MOD_GAP, - .mod_align = GRUB_KERNEL_ARM_COREBOOT_MOD_ALIGN, - .link_align = 4, - .link_addr = 0x43000000, - }, - { - .dirname = "arm-efi", - .names = { "arm-efi", NULL }, - .voidp_sizeof = 4, - .bigendian = 0, - .id = IMAGE_EFI, - .flags = PLATFORM_FLAGS_NONE, - .total_module_size = TARGET_NO_FIELD, - .decompressor_compressed_size = TARGET_NO_FIELD, - .decompressor_uncompressed_size = TARGET_NO_FIELD, - .decompressor_uncompressed_addr = TARGET_NO_FIELD, - .section_align = GRUB_PE32_SECTION_ALIGNMENT, - .vaddr_offset = EFI32_HEADER_SIZE, - .pe_target = GRUB_PE32_MACHINE_ARMTHUMB_MIXED, - .elf_target = EM_ARM, - }, - { - .dirname = "arm64-efi", - .names = { "arm64-efi", NULL }, - .voidp_sizeof = 8, - .bigendian = 0, - .id = IMAGE_EFI, - .flags = PLATFORM_FLAGS_NONE, - .total_module_size = TARGET_NO_FIELD, - .decompressor_compressed_size = TARGET_NO_FIELD, - .decompressor_uncompressed_size = TARGET_NO_FIELD, - .decompressor_uncompressed_addr = TARGET_NO_FIELD, - .section_align = GRUB_PE32_SECTION_ALIGNMENT, - .vaddr_offset = EFI64_HEADER_SIZE, - .pe_target = GRUB_PE32_MACHINE_ARM64, - .elf_target = EM_AARCH64, - }, - { - .dirname = "riscv32-efi", - .names = { "riscv32-efi", NULL }, - .voidp_sizeof = 4, - .bigendian = 0, - .id = IMAGE_EFI, - .flags = PLATFORM_FLAGS_NONE, - .total_module_size = TARGET_NO_FIELD, - .decompressor_compressed_size = TARGET_NO_FIELD, - .decompressor_uncompressed_size = TARGET_NO_FIELD, - .decompressor_uncompressed_addr = TARGET_NO_FIELD, - .section_align = GRUB_PE32_SECTION_ALIGNMENT, - .vaddr_offset = EFI32_HEADER_SIZE, - .pe_target = GRUB_PE32_MACHINE_RISCV32, - .elf_target = EM_RISCV, - }, - { - .dirname = "riscv64-efi", - .names = { "riscv64-efi", NULL }, - .voidp_sizeof = 8, - .bigendian = 0, - .id = IMAGE_EFI, - .flags = PLATFORM_FLAGS_NONE, - .total_module_size = TARGET_NO_FIELD, - .decompressor_compressed_size = TARGET_NO_FIELD, - .decompressor_uncompressed_size = TARGET_NO_FIELD, - .decompressor_uncompressed_addr = TARGET_NO_FIELD, - .section_align = GRUB_PE32_SECTION_ALIGNMENT, - .vaddr_offset = EFI64_HEADER_SIZE, - .pe_target = GRUB_PE32_MACHINE_RISCV64, - .elf_target = EM_RISCV, - }, - }; - -#include - -static void *SzAlloc(void *p __attribute__ ((unused)), size_t size) { return xmalloc(size); } -static void SzFree(void *p __attribute__ ((unused)), void *address) { free(address); } -static ISzAlloc g_Alloc = { SzAlloc, SzFree }; - -static void -compress_kernel_lzma (char *kernel_img, size_t kernel_size, - char **core_img, size_t *core_size) -{ - CLzmaEncProps props; - unsigned char out_props[5]; - size_t out_props_size = 5; - - LzmaEncProps_Init(&props); - props.dictSize = 1 << 16; - props.lc = 3; - props.lp = 0; - props.pb = 2; - props.numThreads = 1; - - *core_img = xmalloc (kernel_size); - - *core_size = kernel_size; - if (LzmaEncode ((unsigned char *) *core_img, core_size, - (unsigned char *) kernel_img, - kernel_size, - &props, out_props, &out_props_size, - 0, NULL, &g_Alloc, &g_Alloc) != SZ_OK) - grub_util_error ("%s", _("cannot compress the kernel image")); -} - -#ifdef USE_LIBLZMA -static void -compress_kernel_xz (char *kernel_img, size_t kernel_size, - char **core_img, size_t *core_size) -{ - lzma_stream strm = LZMA_STREAM_INIT; - lzma_ret xzret; - lzma_options_lzma lzopts = { - .dict_size = 1 << 16, - .preset_dict = NULL, - .preset_dict_size = 0, - .lc = 3, - .lp = 0, - .pb = 2, - .mode = LZMA_MODE_NORMAL, - .nice_len = 64, - .mf = LZMA_MF_BT4, - .depth = 0, - }; - lzma_filter fltrs[] = { - { .id = LZMA_FILTER_LZMA2, .options = &lzopts}, - { .id = LZMA_VLI_UNKNOWN, .options = NULL} - }; - - xzret = lzma_stream_encoder (&strm, fltrs, LZMA_CHECK_NONE); - if (xzret != LZMA_OK) - grub_util_error ("%s", _("cannot compress the kernel image")); - - *core_img = xmalloc (kernel_size); - - *core_size = kernel_size; - strm.next_in = (unsigned char *) kernel_img; - strm.avail_in = kernel_size; - strm.next_out = (unsigned char *) *core_img; - strm.avail_out = *core_size; - - while (1) - { - xzret = lzma_code (&strm, LZMA_FINISH); - if (xzret == LZMA_OK) - continue; - if (xzret == LZMA_STREAM_END) - break; - grub_util_error ("%s", _("cannot compress the kernel image")); - } - - *core_size -= strm.avail_out; -} -#endif - -static void -compress_kernel (const struct grub_install_image_target_desc *image_target, char *kernel_img, - size_t kernel_size, char **core_img, size_t *core_size, - grub_compression_t comp) -{ - if (image_target->flags & PLATFORM_FLAGS_DECOMPRESSORS - && (comp == GRUB_COMPRESSION_LZMA)) - { - compress_kernel_lzma (kernel_img, kernel_size, core_img, - core_size); - return; - } - -#ifdef USE_LIBLZMA - if (image_target->flags & PLATFORM_FLAGS_DECOMPRESSORS - && (comp == GRUB_COMPRESSION_XZ)) - { - compress_kernel_xz (kernel_img, kernel_size, core_img, - core_size); - return; - } -#endif - - if (image_target->flags & PLATFORM_FLAGS_DECOMPRESSORS - && (comp != GRUB_COMPRESSION_NONE)) - grub_util_error (_("unknown compression %d"), comp); - - *core_img = xmalloc (kernel_size); - memcpy (*core_img, kernel_img, kernel_size); - *core_size = kernel_size; -} - -const struct grub_install_image_target_desc * -grub_install_get_image_target (const char *arg) -{ - unsigned i, j; - for (i = 0; i < ARRAY_SIZE (image_targets); i++) - for (j = 0; j < ARRAY_SIZE (image_targets[i].names) && - image_targets[i].names[j]; j++) - if (strcmp (arg, image_targets[i].names[j]) == 0) - return &image_targets[i]; - return NULL; -} - -const char * -grub_util_get_target_dirname (const struct grub_install_image_target_desc *t) -{ - return t->dirname; -} - -const char * -grub_util_get_target_name (const struct grub_install_image_target_desc *t) -{ - return t->names[0]; -} - -char * -grub_install_get_image_targets_string (void) -{ - int format_len = 0; - char *formats; - char *ptr; - unsigned i; - for (i = 0; i < ARRAY_SIZE (image_targets); i++) - format_len += strlen (image_targets[i].names[0]) + 2; - ptr = formats = xmalloc (format_len); - for (i = 0; i < ARRAY_SIZE (image_targets); i++) - { - strcpy (ptr, image_targets[i].names[0]); - ptr += strlen (image_targets[i].names[0]); - *ptr++ = ','; - *ptr++ = ' '; - } - ptr[-2] = 0; - - return formats; -} - -void -grub_install_generate_image (const char *dir, const char *prefix, - FILE *out, const char *outname, char *mods[], - char *memdisk_path, char **pubkey_paths, - size_t npubkeys, char *config_path, - const struct grub_install_image_target_desc *image_target, - int note, grub_compression_t comp, const char *dtb_path) -{ - char *kernel_img, *core_img; - size_t total_module_size, core_size; - size_t memdisk_size = 0, config_size = 0; - size_t prefix_size = 0, dtb_size = 0; - char *kernel_path; - size_t offset; - struct grub_util_path_list *path_list, *p; - size_t decompress_size = 0; - struct grub_mkimage_layout layout; - - if (comp == GRUB_COMPRESSION_AUTO) - comp = image_target->default_compression; - - if (image_target->id == IMAGE_I386_PC - || image_target->id == IMAGE_I386_PC_PXE - || image_target->id == IMAGE_I386_PC_ELTORITO) - comp = GRUB_COMPRESSION_LZMA; - - path_list = grub_util_resolve_dependencies (dir, "moddep.lst", mods); - - kernel_path = grub_util_get_path (dir, "kernel.img"); - - if (image_target->voidp_sizeof == 8) - total_module_size = sizeof (struct grub_module_info64); - else - total_module_size = sizeof (struct grub_module_info32); - - { - size_t i; - for (i = 0; i < npubkeys; i++) - { - size_t curs; - curs = ALIGN_ADDR (grub_util_get_image_size (pubkey_paths[i])); - grub_util_info ("the size of public key %u is 0x%" - GRUB_HOST_PRIxLONG_LONG, - (unsigned) i, (unsigned long long) curs); - total_module_size += curs + sizeof (struct grub_module_header); - } - } - - if (memdisk_path) - { - memdisk_size = ALIGN_UP(grub_util_get_image_size (memdisk_path), 512); - grub_util_info ("the size of memory disk is 0x%" GRUB_HOST_PRIxLONG_LONG, - (unsigned long long) memdisk_size); - total_module_size += memdisk_size + sizeof (struct grub_module_header); - } - - if (dtb_path) - { - dtb_size = ALIGN_ADDR(grub_util_get_image_size (dtb_path)); - total_module_size += dtb_size + sizeof (struct grub_module_header); - } - - if (config_path) - { - config_size = ALIGN_ADDR (grub_util_get_image_size (config_path) + 1); - grub_util_info ("the size of config file is 0x%" GRUB_HOST_PRIxLONG_LONG, - (unsigned long long) config_size); - total_module_size += config_size + sizeof (struct grub_module_header); - } - - if (prefix) - { - prefix_size = ALIGN_ADDR (strlen (prefix) + 1); - total_module_size += prefix_size + sizeof (struct grub_module_header); - } - - for (p = path_list; p; p = p->next) - total_module_size += (ALIGN_ADDR (grub_util_get_image_size (p->name)) - + sizeof (struct grub_module_header)); - - grub_util_info ("the total module size is 0x%" GRUB_HOST_PRIxLONG_LONG, - (unsigned long long) total_module_size); - - if (image_target->voidp_sizeof == 4) - kernel_img = grub_mkimage_load_image32 (kernel_path, total_module_size, - &layout, image_target); - else - kernel_img = grub_mkimage_load_image64 (kernel_path, total_module_size, - &layout, image_target); - if ((image_target->id == IMAGE_XEN || image_target->id == IMAGE_XEN_PVH) && - layout.align < 4096) - layout.align = 4096; - - if ((image_target->flags & PLATFORM_FLAGS_DECOMPRESSORS) - && (image_target->total_module_size != TARGET_NO_FIELD)) - *((grub_uint32_t *) (kernel_img + image_target->total_module_size)) - = grub_host_to_target32 (total_module_size); - - if (image_target->flags & PLATFORM_FLAGS_MODULES_BEFORE_KERNEL) - { - memmove (kernel_img + total_module_size, kernel_img, layout.kernel_size); - memset (kernel_img, 0, total_module_size); - } - - if (image_target->voidp_sizeof == 8) - { - /* Fill in the grub_module_info structure. */ - struct grub_module_info64 *modinfo; - if (image_target->flags & PLATFORM_FLAGS_MODULES_BEFORE_KERNEL) - modinfo = (struct grub_module_info64 *) kernel_img; - else - modinfo = (struct grub_module_info64 *) (kernel_img + layout.kernel_size); - modinfo->magic = grub_host_to_target32 (GRUB_MODULE_MAGIC); - modinfo->offset = grub_host_to_target_addr (sizeof (struct grub_module_info64)); - modinfo->size = grub_host_to_target_addr (total_module_size); - if (image_target->flags & PLATFORM_FLAGS_MODULES_BEFORE_KERNEL) - offset = sizeof (struct grub_module_info64); - else - offset = layout.kernel_size + sizeof (struct grub_module_info64); - } - else - { - /* Fill in the grub_module_info structure. */ - struct grub_module_info32 *modinfo; - if (image_target->flags & PLATFORM_FLAGS_MODULES_BEFORE_KERNEL) - modinfo = (struct grub_module_info32 *) kernel_img; - else - modinfo = (struct grub_module_info32 *) (kernel_img + layout.kernel_size); - modinfo->magic = grub_host_to_target32 (GRUB_MODULE_MAGIC); - modinfo->offset = grub_host_to_target_addr (sizeof (struct grub_module_info32)); - modinfo->size = grub_host_to_target_addr (total_module_size); - if (image_target->flags & PLATFORM_FLAGS_MODULES_BEFORE_KERNEL) - offset = sizeof (struct grub_module_info32); - else - offset = layout.kernel_size + sizeof (struct grub_module_info32); - } - - for (p = path_list; p; p = p->next) - { - struct grub_module_header *header; - size_t mod_size; - - mod_size = ALIGN_ADDR (grub_util_get_image_size (p->name)); - - header = (struct grub_module_header *) (kernel_img + offset); - header->type = grub_host_to_target32 (OBJ_TYPE_ELF); - header->size = grub_host_to_target32 (mod_size + sizeof (*header)); - offset += sizeof (*header); - - grub_util_load_image (p->name, kernel_img + offset); - offset += mod_size; - } - - { - size_t i; - for (i = 0; i < npubkeys; i++) - { - size_t curs; - struct grub_module_header *header; - - curs = grub_util_get_image_size (pubkey_paths[i]); - - header = (struct grub_module_header *) (kernel_img + offset); - header->type = grub_host_to_target32 (OBJ_TYPE_PUBKEY); - header->size = grub_host_to_target32 (curs + sizeof (*header)); - offset += sizeof (*header); - - grub_util_load_image (pubkey_paths[i], kernel_img + offset); - offset += ALIGN_ADDR (curs); - } - } - - if (memdisk_path) - { - struct grub_module_header *header; - - header = (struct grub_module_header *) (kernel_img + offset); - header->type = grub_host_to_target32 (OBJ_TYPE_MEMDISK); - header->size = grub_host_to_target32 (memdisk_size + sizeof (*header)); - offset += sizeof (*header); - - grub_util_load_image (memdisk_path, kernel_img + offset); - offset += memdisk_size; - } - - if (dtb_path) - { - struct grub_module_header *header; - - header = (struct grub_module_header *) (kernel_img + offset); - header->type = grub_host_to_target32 (OBJ_TYPE_DTB); - header->size = grub_host_to_target32 (dtb_size + sizeof (*header)); - offset += sizeof (*header); - - grub_util_load_image (dtb_path, kernel_img + offset); - offset += dtb_size; - } - - if (config_path) - { - struct grub_module_header *header; - - header = (struct grub_module_header *) (kernel_img + offset); - header->type = grub_host_to_target32 (OBJ_TYPE_CONFIG); - header->size = grub_host_to_target32 (config_size + sizeof (*header)); - offset += sizeof (*header); - - grub_util_load_image (config_path, kernel_img + offset); - offset += config_size; - } - - if (prefix) - { - struct grub_module_header *header; - - header = (struct grub_module_header *) (kernel_img + offset); - header->type = grub_host_to_target32 (OBJ_TYPE_PREFIX); - header->size = grub_host_to_target32 (prefix_size + sizeof (*header)); - offset += sizeof (*header); - - grub_strcpy (kernel_img + offset, prefix); - offset += prefix_size; - } - - grub_util_info ("kernel_img=%p, kernel_size=0x%" GRUB_HOST_PRIxLONG_LONG, - kernel_img, - (unsigned long long) layout.kernel_size); - compress_kernel (image_target, kernel_img, layout.kernel_size + total_module_size, - &core_img, &core_size, comp); - free (kernel_img); - - grub_util_info ("the core size is 0x%" GRUB_HOST_PRIxLONG_LONG, - (unsigned long long) core_size); - - if (!(image_target->flags & PLATFORM_FLAGS_DECOMPRESSORS) - && image_target->total_module_size != TARGET_NO_FIELD) - *((grub_uint32_t *) (core_img + image_target->total_module_size)) - = grub_host_to_target32 (total_module_size); - - if (image_target->flags & PLATFORM_FLAGS_DECOMPRESSORS) - { - char *full_img; - size_t full_size; - char *decompress_path, *decompress_img; - const char *name; - - switch (comp) - { - case GRUB_COMPRESSION_XZ: - name = "xz_decompress.img"; - break; - case GRUB_COMPRESSION_LZMA: - name = "lzma_decompress.img"; - break; - case GRUB_COMPRESSION_NONE: - name = "none_decompress.img"; - break; - default: - grub_util_error (_("unknown compression %d"), comp); - } - - decompress_path = grub_util_get_path (dir, name); - decompress_size = grub_util_get_image_size (decompress_path); - decompress_img = grub_util_read_image (decompress_path); - - if ((image_target->id == IMAGE_I386_PC - || image_target->id == IMAGE_I386_PC_PXE - || image_target->id == IMAGE_I386_PC_ELTORITO) - && decompress_size > GRUB_KERNEL_I386_PC_LINK_ADDR - 0x8200) - grub_util_error ("%s", _("Decompressor is too big")); - - if (image_target->decompressor_compressed_size != TARGET_NO_FIELD) - *((grub_uint32_t *) (decompress_img - + image_target->decompressor_compressed_size)) - = grub_host_to_target32 (core_size); - - if (image_target->decompressor_uncompressed_size != TARGET_NO_FIELD) - *((grub_uint32_t *) (decompress_img - + image_target->decompressor_uncompressed_size)) - = grub_host_to_target32 (layout.kernel_size + total_module_size); - - if (image_target->decompressor_uncompressed_addr != TARGET_NO_FIELD) - { - if (image_target->flags & PLATFORM_FLAGS_MODULES_BEFORE_KERNEL) - *((grub_uint32_t *) (decompress_img + image_target->decompressor_uncompressed_addr)) - = grub_host_to_target_addr (image_target->link_addr - total_module_size); - else - *((grub_uint32_t *) (decompress_img + image_target->decompressor_uncompressed_addr)) - = grub_host_to_target_addr (image_target->link_addr); - } - full_size = core_size + decompress_size; - - full_img = xmalloc (full_size); - - memcpy (full_img, decompress_img, decompress_size); - - memcpy (full_img + decompress_size, core_img, core_size); - - free (core_img); - core_img = full_img; - core_size = full_size; - free (decompress_img); - free (decompress_path); - } - - switch (image_target->id) - { - case IMAGE_I386_PC: - case IMAGE_I386_PC_PXE: - case IMAGE_I386_PC_ELTORITO: - if (GRUB_KERNEL_I386_PC_LINK_ADDR + core_size > 0x78000 - || (core_size > (0xffff << GRUB_DISK_SECTOR_BITS)) - || (layout.kernel_size + layout.bss_size - + GRUB_KERNEL_I386_PC_LINK_ADDR > 0x68000)) - grub_util_error (_("core image is too big (0x%x > 0x%x)"), - GRUB_KERNEL_I386_PC_LINK_ADDR + (unsigned) core_size, - 0x78000); - /* fallthrough */ - case IMAGE_COREBOOT: - case IMAGE_QEMU: - if (image_target->elf_target != EM_ARM && layout.kernel_size + layout.bss_size + GRUB_KERNEL_I386_PC_LINK_ADDR > 0x68000) - grub_util_error (_("kernel image is too big (0x%x > 0x%x)"), - (unsigned) layout.kernel_size + (unsigned) layout.bss_size - + GRUB_KERNEL_I386_PC_LINK_ADDR, - 0x68000); - break; - case IMAGE_LOONGSON_ELF: - case IMAGE_YEELOONG_FLASH: - case IMAGE_FULOONG2F_FLASH: - case IMAGE_EFI: - case IMAGE_MIPS_ARC: - case IMAGE_QEMU_MIPS_FLASH: - case IMAGE_XEN: - case IMAGE_XEN_PVH: - break; - case IMAGE_SPARC64_AOUT: - case IMAGE_SPARC64_RAW: - case IMAGE_SPARC64_CDCORE: - case IMAGE_I386_IEEE1275: - case IMAGE_PPC: - case IMAGE_UBOOT: - break; - } - - switch (image_target->id) - { - case IMAGE_I386_PC: - case IMAGE_I386_PC_PXE: - case IMAGE_I386_PC_ELTORITO: - { - unsigned num; - char *boot_path, *boot_img; - size_t boot_size; - - num = ((core_size + GRUB_DISK_SECTOR_SIZE - 1) >> GRUB_DISK_SECTOR_BITS); - if (image_target->id == IMAGE_I386_PC_PXE) - { - char *pxeboot_path, *pxeboot_img; - size_t pxeboot_size; - grub_uint32_t *ptr; - - pxeboot_path = grub_util_get_path (dir, "pxeboot.img"); - pxeboot_size = grub_util_get_image_size (pxeboot_path); - pxeboot_img = grub_util_read_image (pxeboot_path); - - grub_util_write_image (pxeboot_img, pxeboot_size, out, - outname); - free (pxeboot_img); - free (pxeboot_path); - - /* Remove Multiboot header to avoid confusing ipxe. */ - for (ptr = (grub_uint32_t *) core_img; - ptr < (grub_uint32_t *) (core_img + MULTIBOOT_SEARCH); ptr++) - if (*ptr == grub_host_to_target32 (MULTIBOOT_HEADER_MAGIC) - && grub_target_to_host32 (ptr[0]) - + grub_target_to_host32 (ptr[1]) - + grub_target_to_host32 (ptr[2]) == 0) - { - *ptr = 0; - break; - } - } - - if (image_target->id == IMAGE_I386_PC_ELTORITO) - { - char *eltorito_path, *eltorito_img; - size_t eltorito_size; - - eltorito_path = grub_util_get_path (dir, "cdboot.img"); - eltorito_size = grub_util_get_image_size (eltorito_path); - eltorito_img = grub_util_read_image (eltorito_path); - - grub_util_write_image (eltorito_img, eltorito_size, out, - outname); - free (eltorito_img); - free (eltorito_path); - } - - boot_path = grub_util_get_path (dir, "diskboot.img"); - boot_size = grub_util_get_image_size (boot_path); - if (boot_size != GRUB_DISK_SECTOR_SIZE) - grub_util_error (_("diskboot.img size must be %u bytes"), - GRUB_DISK_SECTOR_SIZE); - - boot_img = grub_util_read_image (boot_path); - - { - struct grub_pc_bios_boot_blocklist *block; - block = (struct grub_pc_bios_boot_blocklist *) (boot_img - + GRUB_DISK_SECTOR_SIZE - - sizeof (*block)); - block->len = grub_host_to_target16 (num); - - /* This is filled elsewhere. Verify it just in case. */ - assert (block->segment - == grub_host_to_target16 (GRUB_BOOT_I386_PC_KERNEL_SEG - + (GRUB_DISK_SECTOR_SIZE >> 4))); - } - - grub_util_write_image (boot_img, boot_size, out, outname); - free (boot_img); - free (boot_path); - } - break; - case IMAGE_EFI: - { - void *pe_img; - grub_uint8_t *header; - void *sections; - size_t pe_size; - struct grub_pe32_coff_header *c; - struct grub_pe32_section_table *text_section, *data_section; - struct grub_pe32_section_table *mods_section, *reloc_section; - static const grub_uint8_t stub[] = GRUB_PE32_MSDOS_STUB; - int header_size; - int reloc_addr; - - if (image_target->voidp_sizeof == 4) - header_size = EFI32_HEADER_SIZE; - else - header_size = EFI64_HEADER_SIZE; - - reloc_addr = ALIGN_UP (header_size + core_size, - GRUB_PE32_FILE_ALIGNMENT); - - pe_size = ALIGN_UP (reloc_addr + layout.reloc_size, - GRUB_PE32_FILE_ALIGNMENT); - pe_img = xmalloc (reloc_addr + layout.reloc_size); - memset (pe_img, 0, header_size); - memcpy ((char *) pe_img + header_size, core_img, core_size); - memset ((char *) pe_img + header_size + core_size, 0, reloc_addr - (header_size + core_size)); - memcpy ((char *) pe_img + reloc_addr, layout.reloc_section, layout.reloc_size); - header = pe_img; - - /* The magic. */ - memcpy (header, stub, GRUB_PE32_MSDOS_STUB_SIZE); - memcpy (header + GRUB_PE32_MSDOS_STUB_SIZE, "PE\0\0", - GRUB_PE32_SIGNATURE_SIZE); - - /* The COFF file header. */ - c = (struct grub_pe32_coff_header *) (header + GRUB_PE32_MSDOS_STUB_SIZE - + GRUB_PE32_SIGNATURE_SIZE); - c->machine = grub_host_to_target16 (image_target->pe_target); - - c->num_sections = grub_host_to_target16 (4); - c->time = grub_host_to_target32 (STABLE_EMBEDDING_TIMESTAMP); - c->characteristics = grub_host_to_target16 (GRUB_PE32_EXECUTABLE_IMAGE - | GRUB_PE32_LINE_NUMS_STRIPPED - | ((image_target->voidp_sizeof == 4) - ? GRUB_PE32_32BIT_MACHINE - : 0) - | GRUB_PE32_LOCAL_SYMS_STRIPPED - | GRUB_PE32_DEBUG_STRIPPED); - - /* The PE Optional header. */ - if (image_target->voidp_sizeof == 4) - { - struct grub_pe32_optional_header *o; - - c->optional_header_size = grub_host_to_target16 (sizeof (struct grub_pe32_optional_header)); - - o = (struct grub_pe32_optional_header *) - (header + GRUB_PE32_MSDOS_STUB_SIZE + GRUB_PE32_SIGNATURE_SIZE - + sizeof (struct grub_pe32_coff_header)); - o->magic = grub_host_to_target16 (GRUB_PE32_PE32_MAGIC); - o->code_size = grub_host_to_target32 (layout.exec_size); - o->data_size = grub_cpu_to_le32 (reloc_addr - layout.exec_size - - header_size); - o->bss_size = grub_cpu_to_le32 (layout.bss_size); - o->entry_addr = grub_cpu_to_le32 (layout.start_address); - o->code_base = grub_cpu_to_le32 (header_size); - - o->data_base = grub_host_to_target32 (header_size + layout.exec_size); - - o->image_base = 0; - o->section_alignment = grub_host_to_target32 (image_target->section_align); - o->file_alignment = grub_host_to_target32 (GRUB_PE32_FILE_ALIGNMENT); - o->image_size = grub_host_to_target32 (pe_size); - o->header_size = grub_host_to_target32 (header_size); - o->subsystem = grub_host_to_target16 (GRUB_PE32_SUBSYSTEM_EFI_APPLICATION); - - /* Do these really matter? */ - o->stack_reserve_size = grub_host_to_target32 (0x10000); - o->stack_commit_size = grub_host_to_target32 (0x10000); - o->heap_reserve_size = grub_host_to_target32 (0x10000); - o->heap_commit_size = grub_host_to_target32 (0x10000); - - o->num_data_directories = grub_host_to_target32 (GRUB_PE32_NUM_DATA_DIRECTORIES); - - o->base_relocation_table.rva = grub_host_to_target32 (reloc_addr); - o->base_relocation_table.size = grub_host_to_target32 (layout.reloc_size); - sections = o + 1; - } - else - { - struct grub_pe64_optional_header *o; - - c->optional_header_size = grub_host_to_target16 (sizeof (struct grub_pe64_optional_header)); - - o = (struct grub_pe64_optional_header *) - (header + GRUB_PE32_MSDOS_STUB_SIZE + GRUB_PE32_SIGNATURE_SIZE - + sizeof (struct grub_pe32_coff_header)); - o->magic = grub_host_to_target16 (GRUB_PE32_PE64_MAGIC); - o->code_size = grub_host_to_target32 (layout.exec_size); - o->data_size = grub_cpu_to_le32 (reloc_addr - layout.exec_size - - header_size); - o->bss_size = grub_cpu_to_le32 (layout.bss_size); - o->entry_addr = grub_cpu_to_le32 (layout.start_address); - o->code_base = grub_cpu_to_le32 (header_size); - o->image_base = 0; - o->section_alignment = grub_host_to_target32 (image_target->section_align); - o->file_alignment = grub_host_to_target32 (GRUB_PE32_FILE_ALIGNMENT); - o->image_size = grub_host_to_target32 (pe_size); - o->header_size = grub_host_to_target32 (header_size); - o->subsystem = grub_host_to_target16 (GRUB_PE32_SUBSYSTEM_EFI_APPLICATION); - - /* Do these really matter? */ - o->stack_reserve_size = grub_host_to_target64 (0x10000); - o->stack_commit_size = grub_host_to_target64 (0x10000); - o->heap_reserve_size = grub_host_to_target64 (0x10000); - o->heap_commit_size = grub_host_to_target64 (0x10000); - - o->num_data_directories - = grub_host_to_target32 (GRUB_PE32_NUM_DATA_DIRECTORIES); - - o->base_relocation_table.rva = grub_host_to_target32 (reloc_addr); - o->base_relocation_table.size = grub_host_to_target32 (layout.reloc_size); - sections = o + 1; - } - /* The sections. */ - text_section = sections; - strcpy (text_section->name, ".text"); - text_section->virtual_size = grub_cpu_to_le32 (layout.exec_size); - text_section->virtual_address = grub_cpu_to_le32 (header_size); - text_section->raw_data_size = grub_cpu_to_le32 (layout.exec_size); - text_section->raw_data_offset = grub_cpu_to_le32 (header_size); - text_section->characteristics = grub_cpu_to_le32_compile_time ( - GRUB_PE32_SCN_CNT_CODE - | GRUB_PE32_SCN_MEM_EXECUTE - | GRUB_PE32_SCN_MEM_READ); - - data_section = text_section + 1; - strcpy (data_section->name, ".data"); - data_section->virtual_size = grub_cpu_to_le32 (layout.kernel_size - layout.exec_size); - data_section->virtual_address = grub_cpu_to_le32 (header_size + layout.exec_size); - data_section->raw_data_size = grub_cpu_to_le32 (layout.kernel_size - layout.exec_size); - data_section->raw_data_offset = grub_cpu_to_le32 (header_size + layout.exec_size); - data_section->characteristics - = grub_cpu_to_le32_compile_time (GRUB_PE32_SCN_CNT_INITIALIZED_DATA - | GRUB_PE32_SCN_MEM_READ - | GRUB_PE32_SCN_MEM_WRITE); - -#if 0 - bss_section = data_section + 1; - strcpy (bss_section->name, ".bss"); - bss_section->virtual_size = grub_cpu_to_le32 (layout.bss_size); - bss_section->virtual_address = grub_cpu_to_le32 (header_size + layout.kernel_size); - bss_section->raw_data_size = 0; - bss_section->raw_data_offset = 0; - bss_section->characteristics - = grub_cpu_to_le32_compile_time (GRUB_PE32_SCN_MEM_READ - | GRUB_PE32_SCN_MEM_WRITE - | GRUB_PE32_SCN_ALIGN_64BYTES - | GRUB_PE32_SCN_CNT_INITIALIZED_DATA - | 0x80); -#endif - - mods_section = data_section + 1; - strcpy (mods_section->name, "mods"); - mods_section->virtual_size = grub_cpu_to_le32 (reloc_addr - layout.kernel_size - header_size); - mods_section->virtual_address = grub_cpu_to_le32 (header_size + layout.kernel_size + layout.bss_size); - mods_section->raw_data_size = grub_cpu_to_le32 (reloc_addr - layout.kernel_size - header_size); - mods_section->raw_data_offset = grub_cpu_to_le32 (header_size + layout.kernel_size); - mods_section->characteristics - = grub_cpu_to_le32_compile_time (GRUB_PE32_SCN_CNT_INITIALIZED_DATA - | GRUB_PE32_SCN_MEM_READ - | GRUB_PE32_SCN_MEM_WRITE); - - reloc_section = mods_section + 1; - strcpy (reloc_section->name, ".reloc"); - reloc_section->virtual_size = grub_cpu_to_le32 (layout.reloc_size); - reloc_section->virtual_address = grub_cpu_to_le32 (reloc_addr + layout.bss_size); - reloc_section->raw_data_size = grub_cpu_to_le32 (layout.reloc_size); - reloc_section->raw_data_offset = grub_cpu_to_le32 (reloc_addr); - reloc_section->characteristics - = grub_cpu_to_le32_compile_time (GRUB_PE32_SCN_CNT_INITIALIZED_DATA - | GRUB_PE32_SCN_MEM_DISCARDABLE - | GRUB_PE32_SCN_MEM_READ); - free (core_img); - core_img = pe_img; - core_size = pe_size; - } - break; - case IMAGE_QEMU: - { - char *rom_img; - size_t rom_size; - char *boot_path, *boot_img; - size_t boot_size; - - boot_path = grub_util_get_path (dir, "boot.img"); - boot_size = grub_util_get_image_size (boot_path); - boot_img = grub_util_read_image (boot_path); - - /* Rom sizes must be 64k-aligned. */ - rom_size = ALIGN_UP (core_size + boot_size, 64 * 1024); - - rom_img = xmalloc (rom_size); - memset (rom_img, 0, rom_size); - - *((grub_int32_t *) (core_img + GRUB_KERNEL_I386_QEMU_CORE_ENTRY_ADDR)) - = grub_host_to_target32 ((grub_uint32_t) -rom_size); - - memcpy (rom_img, core_img, core_size); - - *((grub_int32_t *) (boot_img + GRUB_BOOT_I386_QEMU_CORE_ENTRY_ADDR)) - = grub_host_to_target32 ((grub_uint32_t) -rom_size); - - memcpy (rom_img + rom_size - boot_size, boot_img, boot_size); - - free (core_img); - core_img = rom_img; - core_size = rom_size; - - free (boot_img); - free (boot_path); - } - break; - case IMAGE_SPARC64_AOUT: - { - void *aout_img; - size_t aout_size; - struct grub_aout32_header *aout_head; - - aout_size = core_size + sizeof (*aout_head); - aout_img = xmalloc (aout_size); - aout_head = aout_img; - grub_memset (aout_head, 0, sizeof (*aout_head)); - aout_head->a_midmag = grub_host_to_target32 ((AOUT_MID_SUN << 16) - | AOUT32_OMAGIC); - aout_head->a_text = grub_host_to_target32 (core_size); - aout_head->a_entry - = grub_host_to_target32 (GRUB_BOOT_SPARC64_IEEE1275_IMAGE_ADDRESS); - memcpy ((char *) aout_img + sizeof (*aout_head), core_img, core_size); - - free (core_img); - core_img = aout_img; - core_size = aout_size; - } - break; - case IMAGE_SPARC64_RAW: - { - unsigned int num; - char *boot_path, *boot_img; - size_t boot_size; - - num = ((core_size + GRUB_DISK_SECTOR_SIZE - 1) >> GRUB_DISK_SECTOR_BITS); - num <<= GRUB_DISK_SECTOR_BITS; - - boot_path = grub_util_get_path (dir, "diskboot.img"); - boot_size = grub_util_get_image_size (boot_path); - if (boot_size != GRUB_DISK_SECTOR_SIZE) - grub_util_error (_("diskboot.img size must be %u bytes"), - GRUB_DISK_SECTOR_SIZE); - - boot_img = grub_util_read_image (boot_path); - - *((grub_uint32_t *) (boot_img + GRUB_DISK_SECTOR_SIZE - - GRUB_BOOT_SPARC64_IEEE1275_LIST_SIZE + 8)) - = grub_host_to_target32 (num); - - grub_util_write_image (boot_img, boot_size, out, outname); - free (boot_img); - free (boot_path); - } - break; - case IMAGE_SPARC64_CDCORE: - break; - case IMAGE_YEELOONG_FLASH: - case IMAGE_FULOONG2F_FLASH: - { - char *rom_img; - size_t rom_size; - char *boot_path, *boot_img; - size_t boot_size; - /* fwstart.img is the only part which can't be tested by using *-elf - target. Check it against the checksum. */ - const grub_uint8_t yeeloong_fwstart_good_hash[512 / 8] = - { - 0x5f, 0x67, 0x46, 0x57, 0x31, 0x30, 0xc5, 0x0a, - 0xe9, 0x98, 0x18, 0xc9, 0xf3, 0xca, 0x45, 0xa5, - 0x75, 0x64, 0x6b, 0xbb, 0x24, 0xcd, 0xb4, 0xbc, - 0xf2, 0x3e, 0x23, 0xf9, 0xc2, 0x6a, 0x8c, 0xde, - 0x3b, 0x94, 0x9c, 0xcc, 0xa5, 0xa7, 0x58, 0xb1, - 0xbe, 0x8b, 0x3d, 0x73, 0x98, 0x18, 0x7e, 0x68, - 0x5e, 0x5f, 0x23, 0x7d, 0x7a, 0xe8, 0x51, 0xf7, - 0x1a, 0xaf, 0x2f, 0x54, 0x11, 0x2e, 0x5c, 0x25 - }; - const grub_uint8_t fuloong2f_fwstart_good_hash[512 / 8] = - { - 0x76, 0x9b, 0xad, 0x6e, 0xa2, 0x39, 0x47, 0x62, - 0x1f, 0xc9, 0x3a, 0x6d, 0x05, 0x5c, 0x43, 0x5c, - 0x29, 0x4a, 0x7e, 0x08, 0x2a, 0x31, 0x8f, 0x5d, - 0x02, 0x84, 0xa0, 0x85, 0xf2, 0xd1, 0xb9, 0x53, - 0xa2, 0xbc, 0xf2, 0xe1, 0x39, 0x1e, 0x51, 0xb5, - 0xaf, 0xec, 0x9e, 0xf2, 0xf1, 0xf3, 0x0a, 0x2f, - 0xe6, 0xf1, 0x08, 0x89, 0xbe, 0xbc, 0x73, 0xab, - 0x46, 0x50, 0xd6, 0x21, 0xce, 0x8e, 0x24, 0xa7 - }; - const grub_uint8_t *fwstart_good_hash; - grub_uint8_t fwstart_hash[512 / 8]; - - if (image_target->id == IMAGE_FULOONG2F_FLASH) - { - fwstart_good_hash = fuloong2f_fwstart_good_hash; - boot_path = grub_util_get_path (dir, "fwstart_fuloong2f.img"); - } - else - { - fwstart_good_hash = yeeloong_fwstart_good_hash; - boot_path = grub_util_get_path (dir, "fwstart.img"); - } - - boot_size = grub_util_get_image_size (boot_path); - boot_img = grub_util_read_image (boot_path); - - grub_crypto_hash (GRUB_MD_SHA512, fwstart_hash, boot_img, boot_size); - - if (grub_memcmp (fwstart_hash, fwstart_good_hash, - GRUB_MD_SHA512->mdlen) != 0) - /* TRANSLATORS: fwstart.img may still be good, just it wasn't checked. */ - grub_util_warn ("%s", - _("fwstart.img doesn't match the known good version. " - "proceed at your own risk")); - - if (core_size + boot_size > 512 * 1024) - grub_util_error ("%s", _("firmware image is too big")); - rom_size = 512 * 1024; - - rom_img = xmalloc (rom_size); - memset (rom_img, 0, rom_size); - - memcpy (rom_img, boot_img, boot_size); - - memcpy (rom_img + boot_size, core_img, core_size); - - memset (rom_img + boot_size + core_size, 0, - rom_size - (boot_size + core_size)); - - free (core_img); - core_img = rom_img; - core_size = rom_size; - free (boot_img); - free (boot_path); - } - break; - case IMAGE_QEMU_MIPS_FLASH: - { - char *rom_img; - size_t rom_size; - - if (core_size > 512 * 1024) - grub_util_error ("%s", _("firmware image is too big")); - rom_size = 512 * 1024; - - rom_img = xmalloc (rom_size); - memset (rom_img, 0, rom_size); - - memcpy (rom_img, core_img, core_size); - - memset (rom_img + core_size, 0, - rom_size - core_size); - - free (core_img); - core_img = rom_img; - core_size = rom_size; - } - break; - - case IMAGE_UBOOT: - { - struct grub_uboot_image_header *hdr; - - hdr = xmalloc (core_size + sizeof (struct grub_uboot_image_header)); - memcpy (hdr + 1, core_img, core_size); - - memset (hdr, 0, sizeof (*hdr)); - hdr->ih_magic = grub_cpu_to_be32_compile_time (GRUB_UBOOT_IH_MAGIC); - hdr->ih_time = grub_cpu_to_be32 (STABLE_EMBEDDING_TIMESTAMP); - hdr->ih_size = grub_cpu_to_be32 (core_size); - hdr->ih_load = 0; - hdr->ih_ep = 0; - hdr->ih_type = GRUB_UBOOT_IH_TYPE_KERNEL_NOLOAD; - hdr->ih_os = GRUB_UBOOT_IH_OS_LINUX; - hdr->ih_arch = GRUB_UBOOT_IH_ARCH_ARM; - hdr->ih_comp = GRUB_UBOOT_IH_COMP_NONE; - - grub_crypto_hash (GRUB_MD_CRC32, &hdr->ih_dcrc, hdr + 1, core_size); - grub_crypto_hash (GRUB_MD_CRC32, &hdr->ih_hcrc, hdr, sizeof (*hdr)); - - free (core_img); - core_img = (char *) hdr; - core_size += sizeof (struct grub_uboot_image_header); - } - break; - - case IMAGE_MIPS_ARC: - { - char *ecoff_img; - struct ecoff_header { - grub_uint16_t magic; - grub_uint16_t nsec; - grub_uint32_t time; - grub_uint32_t syms; - grub_uint32_t nsyms; - grub_uint16_t opt; - grub_uint16_t flags; - grub_uint16_t magic2; - grub_uint16_t version; - grub_uint32_t textsize; - grub_uint32_t datasize; - grub_uint32_t bsssize; - grub_uint32_t entry; - grub_uint32_t text_start; - grub_uint32_t data_start; - grub_uint32_t bss_start; - grub_uint32_t gprmask; - grub_uint32_t cprmask[4]; - grub_uint32_t gp_value; - }; - struct ecoff_section - { - char name[8]; - grub_uint32_t paddr; - grub_uint32_t vaddr; - grub_uint32_t size; - grub_uint32_t file_offset; - grub_uint32_t reloc; - grub_uint32_t gp; - grub_uint16_t nreloc; - grub_uint16_t ngp; - grub_uint32_t flags; - }; - struct ecoff_header *head; - struct ecoff_section *section; - grub_uint32_t target_addr; - size_t program_size; - - program_size = ALIGN_ADDR (core_size); - if (comp == GRUB_COMPRESSION_NONE) - target_addr = (image_target->link_addr - decompress_size); - else - target_addr = ALIGN_UP (image_target->link_addr - + layout.kernel_size + total_module_size, 32); - - ecoff_img = xmalloc (program_size + sizeof (*head) + sizeof (*section)); - grub_memset (ecoff_img, 0, program_size + sizeof (*head) + sizeof (*section)); - head = (void *) ecoff_img; - section = (void *) (head + 1); - head->magic = image_target->bigendian ? grub_host_to_target16 (0x160) - : grub_host_to_target16 (0x166); - head->nsec = grub_host_to_target16 (1); - head->time = grub_host_to_target32 (0); - head->opt = grub_host_to_target16 (0x38); - head->flags = image_target->bigendian - ? grub_host_to_target16 (0x207) - : grub_host_to_target16 (0x103); - head->magic2 = grub_host_to_target16 (0x107); - head->textsize = grub_host_to_target32 (program_size); - head->entry = grub_host_to_target32 (target_addr); - head->text_start = grub_host_to_target32 (target_addr); - head->data_start = grub_host_to_target32 (target_addr + program_size); - grub_memcpy (section->name, ".text", sizeof (".text") - 1); - section->vaddr = grub_host_to_target32 (target_addr); - section->size = grub_host_to_target32 (program_size); - section->file_offset = grub_host_to_target32 (sizeof (*head) + sizeof (*section)); - if (!image_target->bigendian) - { - section->paddr = grub_host_to_target32 (0xaa60); - section->flags = grub_host_to_target32 (0x20); - } - memcpy (section + 1, core_img, core_size); - free (core_img); - core_img = ecoff_img; - core_size = program_size + sizeof (*head) + sizeof (*section); - } - break; - case IMAGE_LOONGSON_ELF: - case IMAGE_PPC: - case IMAGE_XEN: - case IMAGE_XEN_PVH: - case IMAGE_COREBOOT: - case IMAGE_I386_IEEE1275: - { - grub_uint64_t target_addr; - if (image_target->id == IMAGE_LOONGSON_ELF) - { - if (comp == GRUB_COMPRESSION_NONE) - target_addr = (image_target->link_addr - decompress_size); - else - target_addr = ALIGN_UP (image_target->link_addr - + layout.kernel_size + total_module_size, 32); - } - else - target_addr = image_target->link_addr; - if (image_target->voidp_sizeof == 4) - grub_mkimage_generate_elf32 (image_target, note, &core_img, &core_size, - target_addr, &layout); - else - grub_mkimage_generate_elf64 (image_target, note, &core_img, &core_size, - target_addr, &layout); - } - break; - } - - grub_util_write_image (core_img, core_size, out, outname); - free (core_img); - free (kernel_path); - free (layout.reloc_section); - - grub_util_free_path_list (path_list); -} diff --git a/thirdparty/grub-2.04/util/probe.c b/thirdparty/grub-2.04/util/probe.c deleted file mode 100644 index fa7ca34d1..000000000 --- a/thirdparty/grub-2.04/util/probe.c +++ /dev/null @@ -1,172 +0,0 @@ -/* grub-probe.c - probe device information for a given path */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2005,2006,2007,2008,2009,2010,2013 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#include - -/* Since OF path names can have "," characters in them, and GRUB - internally uses "," to indicate partitions (unlike OF which uses - ":" for this purpose) we escape such commas. */ -static char * -escape_of_path (const char *orig_path) -{ - char *new_path, *d, c; - const char *p; - - if (!strchr (orig_path, ',')) - return (char *) xstrdup (orig_path); - - new_path = xmalloc (strlen (orig_path) * 2 + 1); - - p = orig_path; - d = new_path; - while ((c = *p++) != '\0') - { - if (c == ',') - *d++ = '\\'; - *d++ = c; - } - *d = 0; - - return new_path; -} - -char * -grub_util_guess_bios_drive (const char *orig_path) -{ - char *canon; - char *ptr; - canon = grub_canonicalize_file_name (orig_path); - if (!canon) - return NULL; - ptr = strrchr (orig_path, '/'); - if (ptr) - ptr++; - else - ptr = canon; - if ((ptr[0] == 's' || ptr[0] == 'h') && ptr[1] == 'd') - { - int num = ptr[2] - 'a'; - free (canon); - return xasprintf ("hd%d", num); - } - if (ptr[0] == 'f' && ptr[1] == 'd') - { - int num = atoi (ptr + 2); - free (canon); - return xasprintf ("fd%d", num); - } - free (canon); - return NULL; -} - -char * -grub_util_guess_efi_drive (const char *orig_path) -{ - char *canon; - char *ptr; - canon = grub_canonicalize_file_name (orig_path); - if (!canon) - return NULL; - ptr = strrchr (orig_path, '/'); - if (ptr) - ptr++; - else - ptr = canon; - if ((ptr[0] == 's' || ptr[0] == 'h') && ptr[1] == 'd') - { - int num = ptr[2] - 'a'; - free (canon); - return xasprintf ("hd%d", num); - } - if (ptr[0] == 'f' && ptr[1] == 'd') - { - int num = atoi (ptr + 2); - free (canon); - return xasprintf ("fd%d", num); - } - free (canon); - return NULL; -} - -char * -grub_util_guess_baremetal_drive (const char *orig_path) -{ - char *canon; - char *ptr; - canon = grub_canonicalize_file_name (orig_path); - if (!canon) - return NULL; - ptr = strrchr (orig_path, '/'); - if (ptr) - ptr++; - else - ptr = canon; - if (ptr[0] == 'h' && ptr[1] == 'd') - { - int num = ptr[2] - 'a'; - free (canon); - return xasprintf ("ata%d", num); - } - if (ptr[0] == 's' && ptr[1] == 'd') - { - int num = ptr[2] - 'a'; - free (canon); - return xasprintf ("ahci%d", num); - } - free (canon); - return NULL; -} - -void -grub_util_fprint_full_disk_name (FILE *f, - const char *drive, grub_device_t dev) -{ - char *dname = escape_of_path (drive); - if (dev->disk->partition) - { - char *pname = grub_partition_get_name (dev->disk->partition); - fprintf (f, "%s,%s", dname, pname); - free (pname); - } - else - fprintf (f, "%s", dname); - free (dname); -} diff --git a/thirdparty/grub-2.04/util/render-label.c b/thirdparty/grub-2.04/util/render-label.c deleted file mode 100644 index 91c080c9c..000000000 --- a/thirdparty/grub-2.04/util/render-label.c +++ /dev/null @@ -1,215 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2010,2012,2013 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - - -#include - -#include -#include -#include -#include -#include -#include -#include -#include - -#define _GNU_SOURCE 1 - -#include -#include -#include -#include -#include - -struct header -{ - grub_uint8_t magic; - grub_uint16_t width; - grub_uint16_t height; -} GRUB_PACKED; - -static struct grub_video_palette_data ieee1275_palette[256]; - -void -grub_util_render_label (const char *label_font, - const char *label_bgcolor, - const char *label_color, - const char *text, - const char *output) -{ - struct header head; - FILE *out; - int i, j, k, cptr = 0; - grub_font_t font; - char *fontfull; - const grub_uint8_t vals[] = { 0xff, 0xda, 0xb3, 0x87, 0x54, 0x00 }; - const grub_uint8_t vals2[] = { 0xf3, 0xe7, 0xcd, 0xc0, 0xa5, 0x96, - 0x77, 0x66, 0x3f, 0x27 }; - int width, height; - grub_uint8_t bg, fg; - struct grub_video_mode_info mode_info; - grub_err_t err; - grub_video_rgba_color_t fgcolor; - grub_video_rgba_color_t bgcolor; - - if (output) - out = grub_util_fopen (output, "wb"); - else - out = stdout; - if (!out) - { - grub_util_error (_("cannot open `%s': %s"), output ? : "stdout", - strerror (errno)); - } - - if (label_color) - { - err = grub_video_parse_color (label_color, &fgcolor); - if (err) - grub_util_error (_("invalid color specification `%s'"), label_color); - } - else - { - fgcolor.red = 0x00; - fgcolor.green = 0x00; - fgcolor.blue = 0x00; - fgcolor.alpha = 0xff; - } - - if (label_bgcolor) - { - err = grub_video_parse_color (label_bgcolor, &bgcolor); - if (err) - grub_util_error (_("invalid color specification `%s'"), label_bgcolor); - } - else - { - bgcolor.red = 0xff; - bgcolor.green = 0xff; - bgcolor.blue = 0xff; - bgcolor.alpha = 0xff; - } - - for (i = 0; i < 256; i++) - ieee1275_palette[i].a = 0xff; - - for (i = 0; i < 6; i++) - for (j = 0; j < 6; j++) - for (k = 0; k < 6; k++) - { - ieee1275_palette[cptr].r = vals[i]; - ieee1275_palette[cptr].g = vals[j]; - ieee1275_palette[cptr].b = vals[k]; - ieee1275_palette[cptr].a = 0xff; - cptr++; - } - cptr--; - for (i = 0; i < 10; i++) - { - ieee1275_palette[cptr].r = vals2[i]; - ieee1275_palette[cptr].g = 0; - ieee1275_palette[cptr].b = 0; - ieee1275_palette[cptr].a = 0xff; - cptr++; - } - for (i = 0; i < 10; i++) - { - ieee1275_palette[cptr].r = 0; - ieee1275_palette[cptr].g = vals2[i]; - ieee1275_palette[cptr].b = 0; - ieee1275_palette[cptr].a = 0xff; - cptr++; - } - for (i = 0; i < 10; i++) - { - ieee1275_palette[cptr].r = 0; - ieee1275_palette[cptr].g = 0; - ieee1275_palette[cptr].b = vals2[i]; - ieee1275_palette[cptr].a = 0xff; - cptr++; - } - for (i = 0; i < 10; i++) - { - ieee1275_palette[cptr].r = vals2[i]; - ieee1275_palette[cptr].g = vals2[i]; - ieee1275_palette[cptr].b = vals2[i]; - ieee1275_palette[cptr].a = 0xff; - cptr++; - } - ieee1275_palette[cptr].r = 0; - ieee1275_palette[cptr].g = 0; - ieee1275_palette[cptr].b = 0; - ieee1275_palette[cptr].a = 0xff; - - char * t; - t = grub_canonicalize_file_name (label_font); - if (!t) - { - grub_util_error (_("cannot open `%s': %s"), label_font, - strerror (errno)); - } - - fontfull = xasprintf ("(host)/%s", t); - free (t); - - grub_font_loader_init (); - font = grub_font_load (fontfull); - if (!font) - { - grub_util_error (_("cannot open `%s': %s"), label_font, - grub_errmsg); - } - - width = grub_font_get_string_width (font, text) + 10; - height = grub_font_get_height (font); - - mode_info.width = width; - mode_info.height = height; - mode_info.pitch = width; - - mode_info.mode_type = GRUB_VIDEO_MODE_TYPE_INDEX_COLOR; - mode_info.bpp = 8; - mode_info.bytes_per_pixel = 1; - mode_info.number_of_colors = 256; - - grub_video_capture_start (&mode_info, ieee1275_palette, - ARRAY_SIZE (ieee1275_palette)); - - fg = grub_video_map_rgb (fgcolor.red, - fgcolor.green, - fgcolor.blue); - bg = grub_video_map_rgb (bgcolor.red, - bgcolor.green, - bgcolor.blue); - - grub_memset (grub_video_capture_get_framebuffer (), bg, height * width); - grub_font_draw_string (text, font, fg, - 5, grub_font_get_ascent (font)); - - head.magic = 1; - head.width = grub_cpu_to_be16 (width); - head.height = grub_cpu_to_be16 (height); - fwrite (&head, 1, sizeof (head), out); - fwrite (grub_video_capture_get_framebuffer (), 1, width * height, out); - - grub_video_capture_end (); - if (out != stdout) - fclose (out); - - free (fontfull); -} diff --git a/thirdparty/grub-2.04/util/resolve.c b/thirdparty/grub-2.04/util/resolve.c deleted file mode 100644 index 3e887d2ff..000000000 --- a/thirdparty/grub-2.04/util/resolve.c +++ /dev/null @@ -1,287 +0,0 @@ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 2002,2007 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include - -#include -#include -#include -#include -#include - -#include -#include -#include -#include -#include - -/* Module. */ -struct mod_list -{ - const char *name; - struct mod_list *next; -}; - -/* Dependency. */ -struct dep_list -{ - const char *name; - struct mod_list *list; - struct dep_list *next; -}; - -static char buf[1024]; - -static void -free_mod_list (struct mod_list *head) -{ - while (head) - { - struct mod_list *next; - - next = head->next; - free ((void *) head->name); - free (head); - head = next; - } -} - -static void -free_dep_list (struct dep_list *head) -{ - while (head) - { - struct dep_list *next; - - next = head->next; - free ((void *) head->name); - free_mod_list (head->list); - free (head); - head = next; - } -} - -/* Read the list of dependencies. */ -static struct dep_list * -read_dep_list (FILE *fp) -{ - struct dep_list *dep_list = 0; - - while (fgets (buf, sizeof (buf), fp)) - { - char *p; - struct dep_list *dep; - - /* Get the target name. */ - p = strchr (buf, ':'); - if (! p) - grub_util_error (_("invalid line format: %s"), buf); - - *p++ = '\0'; - - dep = xmalloc (sizeof (*dep)); - dep->name = xstrdup (buf); - dep->list = 0; - - dep->next = dep_list; - dep_list = dep; - - /* Add dependencies. */ - while (*p) - { - struct mod_list *mod; - char *name; - - /* Skip whitespace. */ - while (*p && grub_isspace (*p)) - p++; - - if (! *p) - break; - - name = p; - - /* Skip non-whitespace. */ - while (*p && ! grub_isspace (*p)) - p++; - - *p++ = '\0'; - - mod = (struct mod_list *) xmalloc (sizeof (*mod)); - mod->name = xstrdup (name); - mod->next = dep->list; - dep->list = mod; - } - } - - return dep_list; -} - -static char * -get_module_name (const char *str) -{ - char *base; - char *ext; - - base = strrchr (str, '/'); - if (! base) - base = (char *) str; - else - base++; - - ext = strrchr (base, '.'); - if (ext && strcmp (ext, ".mod") == 0) - { - char *name; - - name = xmalloc (ext - base + 1); - memcpy (name, base, ext - base); - name[ext - base] = '\0'; - return name; - } - - return xstrdup (base); -} - -static char * -get_module_path (const char *prefix, const char *str) -{ - char *dir; - char *base; - char *ext; - char *ret; - - ext = strrchr (str, '.'); - if (ext && strcmp (ext, ".mod") == 0) - base = xstrdup (str); - else - { - base = xmalloc (strlen (str) + 4 + 1); - sprintf (base, "%s.mod", str); - } - - dir = strchr (str, '/'); - if (dir) - return base; - - ret = grub_util_get_path (prefix, base); - free (base); - return ret; -} - -static void -add_module (const char *dir, - struct dep_list *dep_list, - struct mod_list **mod_head, - struct grub_util_path_list **path_head, - const char *name) -{ - char *mod_name; - struct grub_util_path_list *path; - struct mod_list *mod; - struct dep_list *dep; - - mod_name = get_module_name (name); - - /* Check if the module has already been added. */ - for (mod = *mod_head; mod; mod = mod->next) - if (strcmp (mod->name, mod_name) == 0) - { - free (mod_name); - return; - } - - /* Resolve dependencies. */ - for (dep = dep_list; dep; dep = dep->next) - if (strcmp (dep->name, mod_name) == 0) - { - for (mod = dep->list; mod; mod = mod->next) - add_module (dir, dep_list, mod_head, path_head, mod->name); - - break; - } - - /* Add this module. */ - mod = (struct mod_list *) xmalloc (sizeof (*mod)); - mod->name = mod_name; - mod->next = *mod_head; - *mod_head = mod; - - /* Add this path. */ - path = (struct grub_util_path_list *) xmalloc (sizeof (*path)); - path->name = get_module_path (dir, name); - path->next = *path_head; - *path_head = path; -} - -struct grub_util_path_list * -grub_util_resolve_dependencies (const char *prefix, - const char *dep_list_file, - char *modules[]) -{ - char *path; - FILE *fp; - struct dep_list *dep_list; - struct mod_list *mod_list = 0; - struct grub_util_path_list *path_list = 0; - - path = grub_util_get_path (prefix, dep_list_file); - fp = grub_util_fopen (path, "r"); - if (! fp) - grub_util_error (_("cannot open `%s': %s"), path, strerror (errno)); - - free (path); - dep_list = read_dep_list (fp); - fclose (fp); - - while (*modules) - { - add_module (prefix, dep_list, &mod_list, &path_list, *modules); - modules++; - } - - free_dep_list (dep_list); - free_mod_list (mod_list); - - { /* Reverse the path_list */ - struct grub_util_path_list *p, *prev, *next; - - for (p = path_list, prev = NULL; p; p = next) - { - next = p->next; - p->next = prev; - prev = p; - } - - return prev; - } -} - -void -grub_util_free_path_list (struct grub_util_path_list *path_list) -{ - struct grub_util_path_list *next; - - while (path_list) - { - next = path_list->next; - free ((void *) path_list->name); - free (path_list); - path_list = next; - } -} diff --git a/thirdparty/grub-2.04/util/setup.c b/thirdparty/grub-2.04/util/setup.c deleted file mode 100644 index 6f88f3cc4..000000000 --- a/thirdparty/grub-2.04/util/setup.c +++ /dev/null @@ -1,874 +0,0 @@ -/* grub-setup.c - make GRUB usable */ -/* - * GRUB -- GRand Unified Bootloader - * Copyright (C) 1999,2000,2001,2002,2003,2004,2005,2006,2007,2008,2009,2010,2011 Free Software Foundation, Inc. - * - * GRUB is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GRUB is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GRUB. If not, see . - */ - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#ifdef GRUB_SETUP_SPARC64 -#include -#include -#include -#else -#include -#include -#endif - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include "progname.h" -#include -#include -#include -#include -#include - -#include - -/* On SPARC this program fills in various fields inside of the 'boot' and 'core' - * image files. - * - * The 'boot' image needs to know the OBP path name of the root - * device. It also needs to know the initial block number of - * 'core' (which is 'diskboot' concatenated with 'kernel' and - * all the modules, this is created by grub-mkimage). This resulting - * 'boot' image is 512 bytes in size and is placed in the second block - * of a partition. - * - * The initial 'diskboot' block acts as a loader for the actual GRUB - * kernel. It contains the loading code and then a block list. - * - * The block list of 'core' starts at the end of the 'diskboot' image - * and works it's way backwards towards the end of the code of 'diskboot'. - * - * We patch up the images with the necessary values and write out the - * result. - */ - -#ifdef GRUB_SETUP_SPARC64 -#define grub_target_to_host16(x) grub_be_to_cpu16(x) -#define grub_target_to_host32(x) grub_be_to_cpu32(x) -#define grub_target_to_host64(x) grub_be_to_cpu64(x) -#define grub_host_to_target16(x) grub_cpu_to_be16(x) -#define grub_host_to_target32(x) grub_cpu_to_be32(x) -#define grub_host_to_target64(x) grub_cpu_to_be64(x) -#elif defined (GRUB_SETUP_BIOS) -#define grub_target_to_host16(x) grub_le_to_cpu16(x) -#define grub_target_to_host32(x) grub_le_to_cpu32(x) -#define grub_target_to_host64(x) grub_le_to_cpu64(x) -#define grub_host_to_target16(x) grub_cpu_to_le16(x) -#define grub_host_to_target32(x) grub_cpu_to_le32(x) -#define grub_host_to_target64(x) grub_cpu_to_le64(x) -#else -#error Complete this -#endif - -static void -write_rootdev (grub_device_t root_dev, - char *boot_img, grub_uint64_t first_sector) -{ -#ifdef GRUB_SETUP_BIOS - { - grub_uint8_t *boot_drive; - void *kernel_sector; - boot_drive = (grub_uint8_t *) (boot_img + GRUB_BOOT_MACHINE_BOOT_DRIVE); - kernel_sector = (boot_img + GRUB_BOOT_MACHINE_KERNEL_SECTOR); - - /* FIXME: can this be skipped? */ - *boot_drive = 0xFF; - - grub_set_unaligned64 (kernel_sector, grub_cpu_to_le64 (first_sector)); - } -#endif -#ifdef GRUB_SETUP_SPARC64 - { - void *kernel_byte; - kernel_byte = (boot_img + GRUB_BOOT_AOUT_HEADER_SIZE - + GRUB_BOOT_MACHINE_KERNEL_BYTE); - grub_set_unaligned64 (kernel_byte, - grub_cpu_to_be64 (first_sector << GRUB_DISK_SECTOR_BITS)); - } -#endif -} - -#ifdef GRUB_SETUP_SPARC64 -#define BOOT_SECTOR 1 -#else -#define BOOT_SECTOR 0 -#endif - -/* Helper for setup. */ - -struct blocklists -{ - struct grub_boot_blocklist *first_block, *block; -#ifdef GRUB_SETUP_BIOS - grub_uint16_t current_segment; -#endif -#ifdef GRUB_SETUP_SPARC64 - grub_uint64_t gpt_offset; -#endif - grub_uint16_t last_length; - grub_disk_addr_t first_sector; -}; - -/* Helper for setup. */ -static void -save_blocklists (grub_disk_addr_t sector, unsigned offset, unsigned length, - void *data) -{ - struct blocklists *bl = data; - struct grub_boot_blocklist *prev = bl->block + 1; - grub_uint64_t seclen; - -#ifdef GRUB_SETUP_SPARC64 - sector -= bl->gpt_offset; -#endif - - grub_util_info ("saving <%" GRUB_HOST_PRIuLONG_LONG ",%u,%u>", - (unsigned long long) sector, offset, length); - - if (bl->first_sector == (grub_disk_addr_t) -1) - { - if (offset != 0 || length < GRUB_DISK_SECTOR_SIZE) - grub_util_error ("%s", _("the first sector of the core file is not sector-aligned")); - - bl->first_sector = sector; - sector++; - length -= GRUB_DISK_SECTOR_SIZE; - if (!length) - return; - } - - if (offset != 0 || bl->last_length != 0) - grub_util_error ("%s", _("non-sector-aligned data is found in the core file")); - - seclen = (length + GRUB_DISK_SECTOR_SIZE - 1) >> GRUB_DISK_SECTOR_BITS; - - if (bl->block != bl->first_block - && (grub_target_to_host64 (prev->start) - + grub_target_to_host16 (prev->len)) == sector) - { - grub_uint16_t t = grub_target_to_host16 (prev->len); - t += seclen; - prev->len = grub_host_to_target16 (t); - } - else - { - bl->block->start = grub_host_to_target64 (sector); - bl->block->len = grub_host_to_target16 (seclen); -#ifdef GRUB_SETUP_BIOS - bl->block->segment = grub_host_to_target16 (bl->current_segment); -#endif - - bl->block--; - if (bl->block->len) - grub_util_error ("%s", _("the sectors of the core file are too fragmented")); - } - - bl->last_length = length & (GRUB_DISK_SECTOR_SIZE - 1); -#ifdef GRUB_SETUP_BIOS - bl->current_segment += seclen << (GRUB_DISK_SECTOR_BITS - 4); -#endif -} - -/* Context for setup/identify_partmap. */ -struct identify_partmap_ctx -{ - grub_partition_map_t dest_partmap; - grub_partition_t container; - int multiple_partmaps; -}; - -/* Helper for setup. - Unlike root_dev, with dest_dev we're interested in the partition map even - if dest_dev itself is a whole disk. */ -static int -identify_partmap (grub_disk_t disk __attribute__ ((unused)), - const grub_partition_t p, void *data) -{ - struct identify_partmap_ctx *ctx = data; - - if (p->parent != ctx->container) - return 0; - /* NetBSD and OpenBSD subpartitions have metadata inside a partition, - so they are safe to ignore. - */ - if (grub_strcmp (p->partmap->name, "netbsd") == 0 - || grub_strcmp (p->partmap->name, "openbsd") == 0) - return 0; - if (ctx->dest_partmap == NULL) - { - ctx->dest_partmap = p->partmap; - return 0; - } - if (ctx->dest_partmap == p->partmap) - return 0; - ctx->multiple_partmaps = 1; - return 1; -} - -#ifdef GRUB_SETUP_BIOS -#define SETUP grub_util_bios_setup -#elif GRUB_SETUP_SPARC64 -#define SETUP grub_util_sparc_setup -#else -#error "Shouldn't happen" -#endif - -void -SETUP (const char *dir, - const char *boot_file, const char *core_file, - const char *dest, int force, - int fs_probe, int allow_floppy, - int add_rs_codes __attribute__ ((unused))) /* unused on sparc64 */ -{ - char *core_path; - char *boot_img, *core_img, *boot_path; - char *root = 0; - size_t boot_size, core_size; - grub_uint16_t core_sectors; - grub_device_t root_dev = 0, dest_dev, core_dev; - grub_util_fd_t fp; - struct blocklists bl; - - bl.first_sector = (grub_disk_addr_t) -1; - -#ifdef GRUB_SETUP_BIOS - bl.current_segment = - GRUB_BOOT_I386_PC_KERNEL_SEG + (GRUB_DISK_SECTOR_SIZE >> 4); -#endif - bl.last_length = 0; - - /* Read the boot image by the OS service. */ - boot_path = grub_util_get_path (dir, boot_file); - boot_size = grub_util_get_image_size (boot_path); - if (boot_size != GRUB_DISK_SECTOR_SIZE) - grub_util_error (_("the size of `%s' is not %u"), - boot_path, GRUB_DISK_SECTOR_SIZE); - boot_img = grub_util_read_image (boot_path); - free (boot_path); - - core_path = grub_util_get_path (dir, core_file); - core_size = grub_util_get_image_size (core_path); - core_sectors = ((core_size + GRUB_DISK_SECTOR_SIZE - 1) - >> GRUB_DISK_SECTOR_BITS); - if (core_size < GRUB_DISK_SECTOR_SIZE) - grub_util_error (_("the size of `%s' is too small"), core_path); -#ifdef GRUB_SETUP_BIOS - if (core_size > 0xFFFF * GRUB_DISK_SECTOR_SIZE) - grub_util_error (_("the size of `%s' is too large"), core_path); -#endif - - core_img = grub_util_read_image (core_path); - - /* Have FIRST_BLOCK to point to the first blocklist. */ - bl.first_block = (struct grub_boot_blocklist *) (core_img - + GRUB_DISK_SECTOR_SIZE - - sizeof (*bl.block)); - - grub_util_info ("Opening dest `%s'", dest); - dest_dev = grub_device_open (dest); - if (! dest_dev) - grub_util_error ("%s", grub_errmsg); - - core_dev = dest_dev; - - { - char **root_devices = grub_guess_root_devices (dir); - char **cur; - int found = 0; - - if (!root_devices) - grub_util_error (_("cannot find a device for %s (is /dev mounted?)"), dir); - - for (cur = root_devices; *cur; cur++) - { - char *drive; - grub_device_t try_dev; - - drive = grub_util_get_grub_dev (*cur); - if (!drive) - continue; - try_dev = grub_device_open (drive); - if (! try_dev) - { - free (drive); - continue; - } - if (!found && try_dev->disk->id == dest_dev->disk->id - && try_dev->disk->dev->id == dest_dev->disk->dev->id) - { - if (root_dev) - grub_device_close (root_dev); - free (root); - root_dev = try_dev; - root = drive; - found = 1; - continue; - } - if (!root_dev) - { - root_dev = try_dev; - root = drive; - continue; - } - grub_device_close (try_dev); - free (drive); - } - if (!root_dev) - { - grub_util_error ("guessing the root device failed, because of `%s'", - grub_errmsg); - } - grub_util_info ("guessed root_dev `%s' from " - "dir `%s'", root_dev->disk->name, dir); - - for (cur = root_devices; *cur; cur++) - free (*cur); - free (root_devices); - } - - grub_util_info ("setting the root device to `%s'", root); - if (grub_env_set ("root", root) != GRUB_ERR_NONE) - grub_util_error ("%s", grub_errmsg); - - { -#ifdef GRUB_SETUP_BIOS - char *tmp_img; - grub_uint8_t *boot_drive_check; - - /* Read the original sector from the disk. */ - tmp_img = xmalloc (GRUB_DISK_SECTOR_SIZE); - if (grub_disk_read (dest_dev->disk, 0, 0, GRUB_DISK_SECTOR_SIZE, tmp_img)) - grub_util_error ("%s", grub_errmsg); - - boot_drive_check = (grub_uint8_t *) (boot_img - + GRUB_BOOT_MACHINE_DRIVE_CHECK); - /* Copy the possible DOS BPB. */ - memcpy (boot_img + GRUB_BOOT_MACHINE_BPB_START, - tmp_img + GRUB_BOOT_MACHINE_BPB_START, - GRUB_BOOT_MACHINE_BPB_END - GRUB_BOOT_MACHINE_BPB_START); - - /* If DEST_DRIVE is a hard disk, enable the workaround, which is - for buggy BIOSes which don't pass boot drive correctly. Instead, - they pass 0x00 or 0x01 even when booted from 0x80. */ - if (!allow_floppy && !grub_util_biosdisk_is_floppy (dest_dev->disk)) - { - /* Replace the jmp (2 bytes) with double nop's. */ - boot_drive_check[0] = 0x90; - boot_drive_check[1] = 0x90; - } -#endif - - struct identify_partmap_ctx ctx = { - .dest_partmap = NULL, - .container = dest_dev->disk->partition, - .multiple_partmaps = 0 - }; - int is_ldm; - grub_err_t err; - grub_disk_addr_t *sectors; - int i; - grub_fs_t fs; - unsigned int nsec, maxsec; - - grub_partition_iterate (dest_dev->disk, identify_partmap, &ctx); - -#ifdef GRUB_SETUP_BIOS - /* Copy the partition table. */ - if (ctx.dest_partmap || - (!allow_floppy && !grub_util_biosdisk_is_floppy (dest_dev->disk))) - memcpy (boot_img + GRUB_BOOT_MACHINE_WINDOWS_NT_MAGIC, - tmp_img + GRUB_BOOT_MACHINE_WINDOWS_NT_MAGIC, - GRUB_BOOT_MACHINE_PART_END - GRUB_BOOT_MACHINE_WINDOWS_NT_MAGIC); - - free (tmp_img); -#endif - - if (ctx.container - && grub_strcmp (ctx.container->partmap->name, "msdos") == 0 - && ctx.dest_partmap - && (ctx.container->msdostype == GRUB_PC_PARTITION_TYPE_NETBSD - || ctx.container->msdostype == GRUB_PC_PARTITION_TYPE_OPENBSD)) - { - grub_util_warn ("%s", _("Attempting to install GRUB to a disk with multiple partition labels or both partition label and filesystem. This is not supported yet.")); - goto unable_to_embed; - } - - fs = grub_fs_probe (dest_dev); - if (!fs) - grub_errno = GRUB_ERR_NONE; - - is_ldm = grub_util_is_ldm (dest_dev->disk); - - if (fs_probe) - { - if (!fs && !ctx.dest_partmap) - grub_util_error (_("unable to identify a filesystem in %s; safety check can't be performed"), - dest_dev->disk->name); - if (fs && !fs->reserved_first_sector) - /* TRANSLATORS: Filesystem may reserve the space just GRUB isn't sure about it. */ - grub_util_error (_("%s appears to contain a %s filesystem which isn't known to " - "reserve space for DOS-style boot. Installing GRUB there could " - "result in FILESYSTEM DESTRUCTION if valuable data is overwritten " - "by grub-setup (--skip-fs-probe disables this " - "check, use at your own risk)"), dest_dev->disk->name, fs->name); - - if (ctx.dest_partmap && strcmp (ctx.dest_partmap->name, "msdos") != 0 - && strcmp (ctx.dest_partmap->name, "gpt") != 0 - && strcmp (ctx.dest_partmap->name, "bsd") != 0 - && strcmp (ctx.dest_partmap->name, "netbsd") != 0 - && strcmp (ctx.dest_partmap->name, "openbsd") != 0 - && strcmp (ctx.dest_partmap->name, "sunpc") != 0) - /* TRANSLATORS: Partition map may reserve the space just GRUB isn't sure about it. */ - grub_util_error (_("%s appears to contain a %s partition map which isn't known to " - "reserve space for DOS-style boot. Installing GRUB there could " - "result in FILESYSTEM DESTRUCTION if valuable data is overwritten " - "by grub-setup (--skip-fs-probe disables this " - "check, use at your own risk)"), dest_dev->disk->name, ctx.dest_partmap->name); - if (is_ldm && ctx.dest_partmap && strcmp (ctx.dest_partmap->name, "msdos") != 0 - && strcmp (ctx.dest_partmap->name, "gpt") != 0) - grub_util_error (_("%s appears to contain a %s partition map and " - "LDM which isn't known to be a safe combination." - " Installing GRUB there could " - "result in FILESYSTEM DESTRUCTION if valuable data" - " is overwritten " - "by grub-setup (--skip-fs-probe disables this " - "check, use at your own risk)"), - dest_dev->disk->name, ctx.dest_partmap->name); - - } - - if (! ctx.dest_partmap && ! fs && !is_ldm) - { - grub_util_warn ("%s", _("Attempting to install GRUB to a partitionless disk or to a partition. This is a BAD idea.")); - goto unable_to_embed; - } - if (ctx.multiple_partmaps || (ctx.dest_partmap && fs) || (is_ldm && fs)) - { - grub_util_warn ("%s", _("Attempting to install GRUB to a disk with multiple partition labels. This is not supported yet.")); - goto unable_to_embed; - } - - if (ctx.dest_partmap && !ctx.dest_partmap->embed) - { - grub_util_warn (_("Partition style `%s' doesn't support embedding"), - ctx.dest_partmap->name); - goto unable_to_embed; - } - - if (fs && !fs->fs_embed) - { - grub_util_warn (_("File system `%s' doesn't support embedding"), - fs->name); - goto unable_to_embed; - } - - nsec = core_sectors; - - if (add_rs_codes) - maxsec = 2 * core_sectors; - else - maxsec = core_sectors; - -#ifdef GRUB_SETUP_BIOS - if (maxsec > ((0x78000 - GRUB_KERNEL_I386_PC_LINK_ADDR) - >> GRUB_DISK_SECTOR_BITS)) - maxsec = ((0x78000 - GRUB_KERNEL_I386_PC_LINK_ADDR) - >> GRUB_DISK_SECTOR_BITS); -#endif - -#ifdef GRUB_SETUP_SPARC64 - /* - * On SPARC we need two extra. One is because we are combining the - * core.img with the boot.img. The other is because the boot sector - * starts at 1. - */ - nsec += 2; - maxsec += 2; -#endif - - if (is_ldm) - err = grub_util_ldm_embed (dest_dev->disk, &nsec, maxsec, - GRUB_EMBED_PCBIOS, §ors); - else if (ctx.dest_partmap) - err = ctx.dest_partmap->embed (dest_dev->disk, &nsec, maxsec, - GRUB_EMBED_PCBIOS, §ors); - else - err = fs->fs_embed (dest_dev, &nsec, maxsec, - GRUB_EMBED_PCBIOS, §ors); - if (!err && nsec < core_sectors) - { - err = grub_error (GRUB_ERR_OUT_OF_RANGE, - N_("Your embedding area is unusually small. " - "core.img won't fit in it.")); - } - - if (err) - { - grub_util_warn ("%s", grub_errmsg); - grub_errno = GRUB_ERR_NONE; - goto unable_to_embed; - } - - assert (nsec <= maxsec); - - /* Clean out the blocklists. */ - bl.block = bl.first_block; - while (bl.block->len) - { - grub_memset (bl.block, 0, sizeof (*bl.block)); - - bl.block--; - - if ((char *) bl.block <= core_img) - grub_util_error ("%s", _("no terminator in the core image")); - } - - bl.block = bl.first_block; - for (i = 0; i < nsec; i++) - save_blocklists (sectors[i] + grub_partition_get_start (ctx.container), - 0, GRUB_DISK_SECTOR_SIZE, &bl); - - /* Make sure that the last blocklist is a terminator. */ - if (bl.block == bl.first_block) - bl.block--; - bl.block->start = 0; - bl.block->len = 0; -#ifdef GRUB_SETUP_BIOS - bl.block->segment = 0; -#endif - -#ifdef GRUB_SETUP_SPARC64 - { - /* - * On SPARC, the block-list entries need to be based off the beginning - * of the parition, not the beginning of the disk. - */ - struct grub_boot_blocklist *block; - block = bl.first_block; - - while (block->len) - { - block->start -= bl.first_sector; - block--; - } - } - - /* - * Reserve space for the boot block since it can not be in the - * Parition table on SPARC. - */ - assert (bl.first_block->len > 2); - bl.first_block->start += 2; - bl.first_block->len -= 2; - write_rootdev (root_dev, boot_img, sectors[BOOT_SECTOR + 1] - bl.first_sector); -#endif - -#ifdef GRUB_SETUP_BIOS - write_rootdev (root_dev, boot_img, bl.first_sector); -#endif - - /* Round up to the nearest sector boundary, and zero the extra memory */ - core_img = xrealloc (core_img, nsec * GRUB_DISK_SECTOR_SIZE); - assert (core_img && (nsec * GRUB_DISK_SECTOR_SIZE >= core_size)); - memset (core_img + core_size, 0, nsec * GRUB_DISK_SECTOR_SIZE - core_size); - - bl.first_block = (struct grub_boot_blocklist *) (core_img - + GRUB_DISK_SECTOR_SIZE - - sizeof (*bl.block)); -#if GRUB_SETUP_BIOS - grub_size_t no_rs_length; - no_rs_length = grub_target_to_host16 - (grub_get_unaligned16 (core_img - + GRUB_DISK_SECTOR_SIZE - + GRUB_KERNEL_I386_PC_NO_REED_SOLOMON_LENGTH)); - - if (no_rs_length == 0xffff) - grub_util_error ("%s", _("core.img version mismatch")); - - if (add_rs_codes) - { - grub_set_unaligned32 ((core_img + GRUB_DISK_SECTOR_SIZE - + GRUB_KERNEL_I386_PC_REED_SOLOMON_REDUNDANCY), - grub_host_to_target32 (nsec * GRUB_DISK_SECTOR_SIZE - core_size)); - - void *tmp = xmalloc (core_size); - grub_memcpy (tmp, core_img, core_size); - grub_reed_solomon_add_redundancy (core_img + no_rs_length + GRUB_DISK_SECTOR_SIZE, - core_size - no_rs_length - GRUB_DISK_SECTOR_SIZE, - nsec * GRUB_DISK_SECTOR_SIZE - - core_size); - assert (grub_memcmp (tmp, core_img, core_size) == 0); - free (tmp); - } - - /* Write the core image onto the disk. */ - for (i = 0; i < nsec; i++) - grub_disk_write (dest_dev->disk, sectors[i], 0, - GRUB_DISK_SECTOR_SIZE, - core_img + i * GRUB_DISK_SECTOR_SIZE); -#endif - -#ifdef GRUB_SETUP_SPARC64 - { - int isec = BOOT_SECTOR; - - /* Write the boot image onto the disk. */ - if (grub_disk_write (dest_dev->disk, sectors[isec++], 0, - GRUB_DISK_SECTOR_SIZE, boot_img)) - grub_util_error ("%s", grub_errmsg); - - /* Write the core image onto the disk. */ - for (i = 0 ; isec < nsec; i++, isec++) - { - if (grub_disk_write (dest_dev->disk, sectors[isec], 0, - GRUB_DISK_SECTOR_SIZE, - core_img + i * GRUB_DISK_SECTOR_SIZE)) - grub_util_error ("%s", grub_errmsg); - } - } - -#endif - grub_free (sectors); - - goto finish; - } - -unable_to_embed: - - if (dest_dev->disk->dev->id != root_dev->disk->dev->id) - grub_util_error ("%s", _("embedding is not possible, but this is required for " - "RAID and LVM install")); - - { - grub_fs_t fs; - fs = grub_fs_probe (root_dev); - if (!fs) - grub_util_error (_("can't determine filesystem on %s"), root); - - if (!fs->blocklist_install) - grub_util_error (_("filesystem `%s' doesn't support blocklists"), - fs->name); - } - -#ifdef GRUB_SETUP_BIOS - if (dest_dev->disk->id != root_dev->disk->id - || dest_dev->disk->dev->id != root_dev->disk->dev->id) - /* TRANSLATORS: cross-disk refers to /boot being on one disk - but MBR on another. */ - grub_util_error ("%s", _("embedding is not possible, but this is required for " - "cross-disk install")); -#else - core_dev = root_dev; -#endif - - grub_util_warn ("%s", _("Embedding is not possible. GRUB can only be installed in this " - "setup by using blocklists. However, blocklists are UNRELIABLE and " - "their use is discouraged.")); - if (! force) - /* TRANSLATORS: Here GRUB refuses to continue with blocklist install. */ - grub_util_error ("%s", _("will not proceed with blocklists")); - - /* The core image must be put on a filesystem unfortunately. */ - grub_util_info ("will leave the core image on the filesystem"); - - grub_util_biosdisk_flush (root_dev->disk); - - /* Clean out the blocklists. */ - bl.block = bl.first_block; - while (bl.block->len) - { - bl.block->start = 0; - bl.block->len = 0; -#ifdef GRUB_SETUP_BIOS - bl.block->segment = 0; -#endif - - bl.block--; - - if ((char *) bl.block <= core_img) - grub_util_error ("%s", _("no terminator in the core image")); - } - - bl.block = bl.first_block; - -#ifdef GRUB_SETUP_SPARC64 - { - grub_partition_t container = root_dev->disk->partition; - bl.gpt_offset = 0; - - if (grub_strstr (container->partmap->name, "gpt")) - bl.gpt_offset = grub_partition_get_start (container); - } -#endif - - grub_install_get_blocklist (root_dev, core_path, core_img, core_size, - save_blocklists, &bl); - - if (bl.first_sector == (grub_disk_addr_t)-1) - grub_util_error ("%s", _("can't retrieve blocklists")); - -#ifdef GRUB_SETUP_SPARC64 - { - char *boot_devpath; - boot_devpath = (char *) (boot_img - + GRUB_BOOT_AOUT_HEADER_SIZE - + GRUB_BOOT_MACHINE_BOOT_DEVPATH); - if (dest_dev->disk->id != root_dev->disk->id - || dest_dev->disk->dev->id != root_dev->disk->dev->id) - { - char *dest_ofpath; - dest_ofpath - = grub_util_devname_to_ofpath (grub_util_biosdisk_get_osdev (root_dev->disk)); - /* FIXME handle NULL result */ - grub_util_info ("dest_ofpath is `%s'", dest_ofpath); - strncpy (boot_devpath, dest_ofpath, - GRUB_BOOT_MACHINE_BOOT_DEVPATH_END - - GRUB_BOOT_MACHINE_BOOT_DEVPATH - 1); - boot_devpath[GRUB_BOOT_MACHINE_BOOT_DEVPATH_END - - GRUB_BOOT_MACHINE_BOOT_DEVPATH - 1] = 0; - free (dest_ofpath); - } - else - { - grub_util_info ("non cross-disk install"); - memset (boot_devpath, 0, GRUB_BOOT_MACHINE_BOOT_DEVPATH_END - - GRUB_BOOT_MACHINE_BOOT_DEVPATH); - } - grub_util_info ("boot device path %s", boot_devpath); - } -#endif - - write_rootdev (root_dev, boot_img, bl.first_sector); - - /* Write the first two sectors of the core image onto the disk. */ - grub_util_info ("opening the core image `%s'", core_path); - fp = grub_util_fd_open (core_path, GRUB_UTIL_FD_O_WRONLY); - if (! GRUB_UTIL_FD_IS_VALID (fp)) - grub_util_error (_("cannot open `%s': %s"), core_path, - grub_util_fd_strerror ()); - - if (grub_util_fd_write (fp, core_img, GRUB_DISK_SECTOR_SIZE * 2) - != GRUB_DISK_SECTOR_SIZE * 2) - grub_util_error (_("cannot write to `%s': %s"), - core_path, strerror (errno)); - if (grub_util_fd_sync (fp) < 0) - grub_util_error (_("cannot sync `%s': %s"), core_path, strerror (errno)); - if (grub_util_fd_close (fp) < 0) - grub_util_error (_("cannot close `%s': %s"), core_path, strerror (errno)); - grub_util_biosdisk_flush (root_dev->disk); - - grub_disk_cache_invalidate_all (); - - { - char *buf, *ptr = core_img; - size_t len = core_size; - grub_uint64_t blk, offset = 0; - grub_partition_t container = core_dev->disk->partition; - grub_err_t err; - - core_dev->disk->partition = 0; -#ifdef GRUB_SETUP_SPARC64 - offset = bl.gpt_offset; -#endif - - buf = xmalloc (core_size); - blk = bl.first_sector; - err = grub_disk_read (core_dev->disk, blk + offset, 0, GRUB_DISK_SECTOR_SIZE, buf); - if (err) - grub_util_error (_("cannot read `%s': %s"), core_dev->disk->name, - grub_errmsg); - if (grub_memcmp (buf, ptr, GRUB_DISK_SECTOR_SIZE) != 0) - grub_util_error ("%s", _("blocklists are invalid")); - - ptr += GRUB_DISK_SECTOR_SIZE; - len -= GRUB_DISK_SECTOR_SIZE; - - bl.block = bl.first_block; - while (bl.block->len) - { - size_t cur = grub_target_to_host16 (bl.block->len) << GRUB_DISK_SECTOR_BITS; - blk = grub_target_to_host64 (bl.block->start); - - if (cur > len) - cur = len; - - err = grub_disk_read (core_dev->disk, blk + offset, 0, cur, buf); - if (err) - grub_util_error (_("cannot read `%s': %s"), core_dev->disk->name, - grub_errmsg); - - if (grub_memcmp (buf, ptr, cur) != 0) - grub_util_error ("%s", _("blocklists are invalid")); - - ptr += cur; - len -= cur; - bl.block--; - - if ((char *) bl.block <= core_img) - grub_util_error ("%s", _("no terminator in the core image")); - } - if (len) - grub_util_error ("%s", _("blocklists are incomplete")); - core_dev->disk->partition = container; - free (buf); - } - -#ifdef GRUB_SETUP_BIOS - finish: -#endif - - /* Write the boot image onto the disk. */ - if (grub_disk_write (dest_dev->disk, BOOT_SECTOR, - 0, GRUB_DISK_SECTOR_SIZE, boot_img)) - grub_util_error ("%s", grub_errmsg); - -#ifdef GRUB_SETUP_SPARC64 - finish: -#endif - - grub_util_biosdisk_flush (root_dev->disk); - grub_util_biosdisk_flush (dest_dev->disk); - - free (core_path); - free (core_img); - free (boot_img); - grub_device_close (dest_dev); - grub_device_close (root_dev); -} - diff --git a/thirdparty/grub-2.04/util/setup_bios.c b/thirdparty/grub-2.04/util/setup_bios.c deleted file mode 100644 index 38f4d5eab..000000000 --- a/thirdparty/grub-2.04/util/setup_bios.c +++ /dev/null @@ -1,2 +0,0 @@ -#define GRUB_SETUP_BIOS 1 -#include "setup.c" diff --git a/thirdparty/grub-2.04/util/setup_sparc.c b/thirdparty/grub-2.04/util/setup_sparc.c deleted file mode 100644 index 89310a27a..000000000 --- a/thirdparty/grub-2.04/util/setup_sparc.c +++ /dev/null @@ -1,2 +0,0 @@ -#define GRUB_SETUP_SPARC64 1 -#include "setup.c" diff --git a/thirdparty/grub-2.04/util/spkmodem-recv.c b/thirdparty/grub-2.04/util/spkmodem-recv.c deleted file mode 100644 index 9083c1aab..000000000 --- a/thirdparty/grub-2.04/util/spkmodem-recv.c +++ /dev/null @@ -1,115 +0,0 @@ -/* spkmodem-recv.c - decode spkmodem signals */ -/* - * Copyright (C) 2013 Free Software Foundation, Inc. - * - * spkmodem-recv is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 2 of the License, or - * (at your option) any later version. - * - * spkmodem-recv is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with spkmodem-recv. If not, see . - */ - -#include -#include -#include - -/* Compilation: gcc -o spkmodem-recv spkmodem-recv */ -/* Usage: parecord --channels=1 --rate=48000 --format=s16le | ./spkmodem-recv */ - -#define SAMPLES_PER_TRAME 240 -#define FREQ_SEP_MIN 5 -#define FREQ_SEP_MAX 15 -#define FREQ_DATA_MIN 15 -#define FREQ_DATA_THRESHOLD 25 -#define FREQ_DATA_MAX 60 -#define THRESHOLD 500 - -#define DEBUG 0 -#define FLUSH_TIMEOUT 1 - -static signed short trame[2 * SAMPLES_PER_TRAME]; -static signed short pulse[2 * SAMPLES_PER_TRAME]; -static int ringpos = 0; -static int pos, f1, f2; -static int amplitude = 0; -static int lp = 0; - -static void -read_sample (void) -{ - amplitude -= abs (trame[ringpos]); - f1 -= pulse[ringpos]; - f1 += pulse[(ringpos + SAMPLES_PER_TRAME) % (2 * SAMPLES_PER_TRAME)]; - f2 -= pulse[(ringpos + SAMPLES_PER_TRAME) % (2 * SAMPLES_PER_TRAME)]; - fread (trame + ringpos, 1, sizeof (trame[0]), stdin); - amplitude += abs (trame[ringpos]); - - if (pos ? (trame[ringpos] < -THRESHOLD) - : (trame[ringpos] > +THRESHOLD)) - { - pulse[ringpos] = 1; - pos = !pos; - f2++; - } - else - pulse[ringpos] = 0; - ringpos++; - ringpos %= 2 * SAMPLES_PER_TRAME; - lp++; -} - -int -main () -{ - int bitn = 7; - char c = 0; - int i; - int llp = 0; - while (!feof (stdin)) - { - if (lp > 3 * SAMPLES_PER_TRAME) - { - bitn = 7; - c = 0; - lp = 0; - llp++; - } - if (llp == FLUSH_TIMEOUT) - fflush (stdout); - if (f2 > FREQ_SEP_MIN && f2 < FREQ_SEP_MAX - && f1 > FREQ_DATA_MIN && f1 < FREQ_DATA_MAX) - { -#if DEBUG - printf ("%d %d %d @%d\n", f1, f2, FREQ_DATA_THRESHOLD, - ftell (stdin) - sizeof (trame)); -#endif - if (f1 < FREQ_DATA_THRESHOLD) - c |= (1 << bitn); - bitn--; - if (bitn < 0) - { -#if DEBUG - printf ("<%c, %x>", c, c); -#else - printf ("%c", c); -#endif - bitn = 7; - c = 0; - } - lp = 0; - llp = 0; - for (i = 0; i < SAMPLES_PER_TRAME; i++) - read_sample (); - continue; - } - read_sample (); - } - return 0; -} -- GitLab

h%ItJADon|0n3d)>qs19R@Y7W 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 z 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, 2011. -# David Prévot , 2012-2014. -# Frédéric Marchal , 2019 -# -# Je ne souhaite pas continuer cette traduction. Quiconque veut s'en -# charger n'a qu'a me le signaler (fmarchal@perso.be) et retirer ce -# message. -msgid "" -msgstr "" -"Project-Id-Version: grub 2.04-pre1\n" -"Report-Msgid-Bugs-To: bug-grub@gnu.org\n" -"POT-Creation-Date: 2019-07-04 16:09+0200\n" -"PO-Revision-Date: 2019-05-12 13:04+0200\n" -"Last-Translator: Frédéric Marchal \n" -"Language-Team: French \n" -"Language: fr\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Bugs: Report translation errors to the Language-Team address.\n" -"Plural-Forms: nplurals=2; plural=(n >= 2);\n" - -#: grub-core/bus/usb/serial/ftdi.c:145 grub-core/bus/usb/serial/pl2303.c:158 -#: grub-core/term/ieee1275/escc.c:169 grub-core/term/ns8250.c:202 -msgid "unsupported serial port speed" -msgstr "vitesse de port série non valable" - -#: grub-core/bus/usb/serial/ftdi.c:151 grub-core/bus/usb/serial/pl2303.c:164 -#: grub-core/term/efi/serial.c:116 grub-core/term/ieee1275/escc.c:175 -#: grub-core/term/ns8250.c:208 grub-core/term/serial.c:227 -#: grub-core/term/serial.c:243 -msgid "unsupported serial port parity" -msgstr "parité de port série non valable" - -#: grub-core/bus/usb/serial/ftdi.c:157 grub-core/bus/usb/serial/pl2303.c:170 -#: grub-core/term/efi/serial.c:122 grub-core/term/ieee1275/escc.c:181 -#: grub-core/term/ns8250.c:213 grub-core/term/serial.c:267 -msgid "unsupported serial port stop bits number" -msgstr "nombre de bits d'arrêt du port série non valable" - -#: grub-core/bus/usb/serial/ftdi.c:161 grub-core/bus/usb/serial/pl2303.c:174 -#: grub-core/term/efi/serial.c:126 grub-core/term/ieee1275/escc.c:185 -#: grub-core/term/ns8250.c:217 -msgid "unsupported serial port word length" -msgstr "taille de trame du port série non valable" - -#: grub-core/commands/acpi.c:42 -msgid "Don't load host tables specified by comma-separated list." -msgstr "" -"Ne pas charger les tables d'hôte indiquées dans la liste, séparées par des " -"virgules." - -#: grub-core/commands/acpi.c:45 -msgid "Load only tables specified by comma-separated list." -msgstr "" -"Ne charger que les tables indiquées dans la liste, séparées par des virgules." - -#: grub-core/commands/acpi.c:46 -msgid "Export version 1 tables to the OS." -msgstr "Exporter les tables en version 1 vers le système d'exploitation." - -#: grub-core/commands/acpi.c:47 -msgid "Export version 2 and version 3 tables to the OS." -msgstr "" -"Exporter les tables en version 2 et version 3 vers le système d'exploitation." - -#: grub-core/commands/acpi.c:48 -msgid "Set OEMID of RSDP, XSDT and RSDT." -msgstr "Définir l'OEMID de RSDP, XSDT et RSDT." - -#: grub-core/commands/acpi.c:50 -msgid "Set OEMTABLE ID of RSDP, XSDT and RSDT." -msgstr "Définir l'identifiant OEMTABLE de RSDP, XSDT et RSDT." - -#: grub-core/commands/acpi.c:52 -msgid "Set OEMTABLE revision of RSDP, XSDT and RSDT." -msgstr "Définir la révision OEMTABLE de RSDP, XSDT et RSDT." - -#: grub-core/commands/acpi.c:54 -msgid "Set creator field of RSDP, XSDT and RSDT." -msgstr "Définir l'identifiant du fabriquant de RSDP, XSDT et RSDT." - -#: grub-core/commands/acpi.c:56 -msgid "Set creator revision of RSDP, XSDT and RSDT." -msgstr "Définir la révision du fabriquant de RSDP, XSDT et RSDT." - -#. TRANSLATORS: "hangs" here is a noun, not a verb. -#: grub-core/commands/acpi.c:58 -msgid "" -"Don't update EBDA. May fix failures or hangs on some BIOSes but makes it " -"ineffective with OS not receiving RSDP from GRUB." -msgstr "" -"Ne pas mettre à jour l'EBDA. Cela peut corriger des dysfonctionnements sur " -"certains BIOS, mais est souvent inefficace si le système d'exploitation ne " -"reçoit pas de RSDP du GRUB." - -#: grub-core/commands/acpi.c:650 grub-core/commands/acpi.c:667 -#: grub-core/commands/i386/pc/play.c:105 grub-core/commands/keylayouts.c:230 -#: grub-core/commands/keylayouts.c:245 grub-core/commands/keylayouts.c:263 -#: grub-core/commands/verifiers.c:156 grub-core/efiemu/loadcore.c:350 -#: grub-core/kern/elf.c:117 grub-core/kern/elfXX.c:29 -#: grub-core/kern/elfXX.c:156 grub-core/loader/arm/linux.c:319 -#: grub-core/loader/arm64/linux.c:330 grub-core/loader/arm64/xen_boot.c:356 -#: grub-core/loader/efi/chainloader.c:276 -#: grub-core/loader/efi/chainloader.c:297 -#: grub-core/loader/efi/chainloader.c:329 grub-core/loader/efi/fdt.c:138 -#: grub-core/loader/i386/bsd.c:1276 grub-core/loader/i386/bsd.c:2116 -#: grub-core/loader/i386/bsdXX.c:20 grub-core/loader/i386/bsdXX.c:36 -#: grub-core/loader/i386/bsdXX.c:63 grub-core/loader/i386/bsdXX.c:357 -#: grub-core/loader/i386/bsdXX.c:376 grub-core/loader/i386/bsdXX.c:519 -#: grub-core/loader/i386/bsdXX.c:535 grub-core/loader/i386/bsdXX.c:615 -#: grub-core/loader/i386/bsdXX.c:638 -#: grub-core/loader/i386/coreboot/chainloader.c:112 -#: grub-core/loader/i386/coreboot/chainloader.c:148 -#: grub-core/loader/i386/coreboot/chainloader.c:170 -#: grub-core/loader/i386/linux.c:667 grub-core/loader/i386/linux.c:788 -#: grub-core/loader/i386/linux.c:1005 grub-core/loader/i386/multiboot_mbi.c:171 -#: grub-core/loader/i386/pc/chainloader.c:202 -#: grub-core/loader/i386/pc/linux.c:149 grub-core/loader/i386/pc/linux.c:320 -#: grub-core/loader/i386/pc/linux.c:362 grub-core/loader/i386/pc/plan9.c:457 -#: grub-core/loader/i386/pc/plan9.c:550 grub-core/loader/i386/pc/plan9.c:566 -#: grub-core/loader/i386/xen.c:934 grub-core/loader/i386/xen_file.c:72 -#: grub-core/loader/i386/xen_fileXX.c:43 grub-core/loader/i386/xen_fileXX.c:186 -#: grub-core/loader/i386/xen_fileXX.c:339 grub-core/loader/ia64/efi/linux.c:423 -#: grub-core/loader/ia64/efi/linux.c:471 grub-core/loader/linux.c:286 -#: grub-core/loader/macho.c:84 grub-core/loader/macho.c:109 -#: grub-core/loader/machoXX.c:33 grub-core/loader/machoXX.c:46 -#: grub-core/loader/machoXX.c:76 grub-core/loader/machoXX.c:116 -#: grub-core/loader/machoXX.c:131 grub-core/loader/machoXX.c:147 -#: grub-core/loader/machoXX.c:196 grub-core/loader/machoXX.c:317 -#: grub-core/loader/multiboot.c:434 grub-core/loader/multiboot_elfxx.c:171 -#: grub-core/loader/multiboot_elfxx.c:234 -#: grub-core/loader/multiboot_elfxx.c:278 grub-core/loader/multiboot_mbi2.c:129 -#: grub-core/loader/xnu.c:737 grub-core/loader/xnu.c:795 -#: grub-core/loader/xnu.c:816 grub-core/loader/xnu.c:871 -#: grub-core/loader/xnu.c:914 grub-core/loader/xnu.c:952 -#: grub-core/loader/xnu_resume.c:68 grub-core/loader/xnu_resume.c:153 -#: grub-core/loader/xnu_resume.c:165 util/grub-mkimagexx.c:2288 -#, c-format -msgid "premature end of file %s" -msgstr "fin prématurée du fichier %s" - -#: grub-core/commands/acpi.c:779 -msgid "" -"[-1|-2] [--exclude=TABLE1,TABLE2|--load-only=TABLE1,TABLE2] FILE1 [FILE2] " -"[...]" -msgstr "" -"[-1|-2] [--exclude=TABLE1,TABLE2|--load-only=TABLE1,TABLE2] FICHIER1 " -"[FICHIER2] [...]" - -#: grub-core/commands/acpi.c:782 -msgid "Load host ACPI tables and tables specified by arguments." -msgstr "" -"Charger les tables ACPI de l'hôte et les tables indiquées par les arguments." - -#: grub-core/commands/acpihalt.c:368 grub-core/kern/err.c:110 -#, c-format -msgid "error: %s.\n" -msgstr "erreur : %s.\n" - -#: grub-core/commands/acpihalt.c:368 grub-core/kern/emu/misc.c:95 -#: grub-core/kern/emu/misc.c:105 grub-core/kern/emu/misc.c:134 -#: grub-core/kern/emu/mm.c:34 grub-core/kern/emu/mm.c:62 -#: grub-core/kern/mm.c:374 grub-core/lib/relocator.c:1282 -#: grub-core/lib/relocator.c:1439 grub-core/lib/relocator.c:1538 -#: grub-core/loader/arm/linux.c:259 grub-core/loader/arm64/linux.c:265 -#: grub-core/loader/arm64/linux.c:321 grub-core/loader/arm64/linux.c:340 -#: grub-core/loader/arm64/xen_boot.c:344 grub-core/loader/arm64/xen_boot.c:367 -#: grub-core/loader/efi/chainloader.c:289 grub-core/osdep/unix/dl.c:48 -#: grub-core/osdep/windows/dl.c:46 grub-core/script/lexer.c:156 -#: grub-core/script/lexer.c:182 -msgid "out of memory" -msgstr "mémoire épuisée" - -#: grub-core/commands/acpihalt.c:374 grub-core/disk/cryptodisk.c:587 -#: grub-core/disk/cryptodisk.c:632 grub-core/kern/emu/hostdisk.c:307 -#: grub-core/kern/emu/hostfs.c:149 grub-core/kern/emu/misc.c:200 -#: grub-core/osdep/linux/ofpath.c:195 grub-core/osdep/linux/ofpath.c:521 -#: grub-core/osdep/linux/ofpath.c:534 util/glue-efi.c:80 util/glue-efi.c:94 -#: util/grub-editenv.c:155 util/grub-fstest.c:577 -#: util/grub-install-common.c:943 util/grub-mkrescue.c:634 -#: util/grub-mkrescue.c:888 util/grub-mount.c:506 util/grub-render-label.c:176 -#: util/misc.c:95 util/setup.c:814 util/setup.c:833 -#, c-format -msgid "cannot read `%s': %s" -msgstr "impossible de lire « %s » : %s" - -#. TRANSLATORS: It's computer shutdown using ACPI, not disabling ACPI. -#: grub-core/commands/acpihalt.c:452 -msgid "ACPI shutdown failed" -msgstr "Échec d'arrêt avec l'ACPI" - -#: grub-core/commands/arc/lsdev.c:51 -msgid "List devices." -msgstr "Afficher les périphériques." - -#: grub-core/commands/blocklist.c:122 grub-core/commands/cat.c:57 -#: grub-core/commands/configfile.c:35 grub-core/commands/efi/loadbios.c:168 -#: grub-core/commands/file.c:159 grub-core/commands/hexdump.c:47 -#: grub-core/commands/legacycfg.c:209 grub-core/commands/legacycfg.c:315 -#: grub-core/commands/minicmd.c:44 grub-core/commands/syslinuxcfg.c:146 -#: grub-core/commands/testload.c:58 grub-core/commands/testspeed.c:52 -#: grub-core/disk/loopback.c:93 grub-core/efiemu/main.c:293 -#: grub-core/font/font_cmd.c:32 grub-core/kern/emu/hostdisk.c:519 -#: grub-core/loader/arm/linux.c:364 grub-core/loader/arm/linux.c:409 -#: grub-core/loader/arm/linux.c:472 grub-core/loader/arm64/linux.c:243 -#: grub-core/loader/arm64/linux.c:297 grub-core/loader/arm64/xen_boot.c:398 -#: grub-core/loader/arm64/xen_boot.c:411 grub-core/loader/arm64/xen_boot.c:462 -#: grub-core/loader/efi/chainloader.c:216 grub-core/loader/i386/bsd.c:1462 -#: grub-core/loader/i386/bsd.c:1807 grub-core/loader/i386/bsd.c:2085 -#: grub-core/loader/i386/coreboot/chainloader.c:438 -#: grub-core/loader/i386/linux.c:656 grub-core/loader/i386/linux.c:1041 -#: grub-core/loader/i386/pc/chainloader.c:290 -#: grub-core/loader/i386/pc/freedos.c:105 grub-core/loader/i386/pc/linux.c:138 -#: grub-core/loader/i386/pc/linux.c:400 grub-core/loader/i386/pc/ntldr.c:85 -#: grub-core/loader/i386/pc/plan9.c:409 -#: grub-core/loader/i386/pc/pxechainloader.c:94 -#: grub-core/loader/i386/pc/truecrypt.c:96 grub-core/loader/i386/xen.c:641 -#: grub-core/loader/i386/xen.c:768 grub-core/loader/i386/xen.c:844 -#: grub-core/loader/i386/xen.c:854 grub-core/loader/i386/xnu.c:488 -#: grub-core/loader/ia64/efi/linux.c:459 grub-core/loader/ia64/efi/linux.c:539 -#: grub-core/loader/mips/linux.c:238 grub-core/loader/mips/linux.c:429 -#: grub-core/loader/multiboot.c:322 grub-core/loader/multiboot.c:374 -#: grub-core/loader/multiboot.c:384 -#: grub-core/loader/powerpc/ieee1275/linux.c:269 -#: grub-core/loader/powerpc/ieee1275/linux.c:341 -#: grub-core/loader/sparc64/ieee1275/linux.c:305 -#: grub-core/loader/sparc64/ieee1275/linux.c:381 grub-core/loader/xnu.c:351 -#: grub-core/loader/xnu.c:460 grub-core/loader/xnu.c:778 -#: grub-core/loader/xnu.c:892 grub-core/loader/xnu.c:1277 -#: grub-core/loader/xnu.c:1427 grub-core/loader/xnu.c:1453 -#: grub-core/video/readers/jpeg.c:812 grub-core/video/readers/png.c:1123 -msgid "filename expected" -msgstr "nom de fichier attendu" - -#. TRANSLATORS: "embed" is a verb (command description). " -#: grub-core/commands/blocklist.c:154 grub-core/commands/cat.c:163 -#: grub-core/commands/configfile.c:65 grub-core/commands/configfile.c:68 -#: grub-core/commands/configfile.c:74 grub-core/commands/configfile.c:80 -#: grub-core/commands/configfile.c:86 grub-core/commands/hashsum.c:34 -#: grub-core/commands/legacycfg.c:834 grub-core/commands/legacycfg.c:841 -#: grub-core/commands/legacycfg.c:846 grub-core/commands/legacycfg.c:851 -#: grub-core/commands/macbless.c:222 grub-core/commands/minicmd.c:198 -#: grub-core/commands/syslinuxcfg.c:186 grub-core/commands/syslinuxcfg.c:194 -#: grub-core/commands/syslinuxcfg.c:200 grub-core/commands/syslinuxcfg.c:206 -#: grub-core/commands/testload.c:163 grub-core/efiemu/main.c:312 -#: grub-core/kern/emu/main.c:100 grub-core/kern/emu/main.c:103 -#: grub-core/loader/i386/bsd.c:2137 grub-core/loader/i386/bsd.c:2140 -#: grub-core/loader/i386/bsd.c:2143 -#: grub-core/loader/i386/coreboot/chainloader.c:505 -#: grub-core/loader/ia64/efi/linux.c:594 include/grub/util/install.h:32 -#: include/grub/util/install.h:64 util/grub-glue-efi.c:52 -#: util/grub-glue-efi.c:54 util/grub-glue-efi.c:56 util/grub-install.c:254 -#: util/grub-install.c:301 util/grub-mkfont.c:936 util/grub-mkimage.c:68 -#: util/grub-mkimage.c:74 util/grub-mkimage.c:76 util/grub-mkimage.c:78 -#: util/grub-mkimage.c:81 util/grub-mklayout.c:52 util/grub-mklayout.c:54 -#: util/grub-mkrescue.c:97 util/grub-mkrescue.c:101 util/grub-mkrescue.c:104 -#: util/grub-mkrescue.c:105 util/grub-mkrescue.c:106 -#: util/grub-mkstandalone.c:47 util/grub-mkstandalone.c:49 -#: util/grub-probe.c:732 util/grub-render-label.c:59 -#: util/grub-render-label.c:70 util/grub-render-label.c:72 util/grub-setup.c:78 -#: util/grub-setup.c:80 util/grub-setup.c:84 util/grub-syslinux2cfg.c:74 -#: util/grub-syslinux2cfg.c:147 -msgid "FILE" -msgstr "FICHIER" - -#: grub-core/commands/blocklist.c:154 -msgid "Print a block list." -msgstr "Afficher une liste de blocs." - -#: grub-core/commands/boot.c:147 grub-core/commands/legacycfg.c:533 -#: grub-core/commands/legacycfg.c:574 grub-core/loader/arm64/linux.c:250 -#: grub-core/loader/i386/bsd.c:1799 grub-core/loader/i386/bsd.c:1900 -#: grub-core/loader/i386/bsd.c:2007 grub-core/loader/i386/bsd.c:2040 -#: grub-core/loader/i386/bsd.c:2089 grub-core/loader/i386/linux.c:1047 -#: grub-core/loader/i386/pc/linux.c:406 grub-core/loader/i386/xen.c:775 -#: grub-core/loader/i386/xen.c:859 grub-core/loader/ia64/efi/linux.c:545 -#: grub-core/loader/mips/linux.c:432 grub-core/loader/multiboot.c:388 -#: grub-core/loader/powerpc/ieee1275/linux.c:347 -#: grub-core/loader/sparc64/ieee1275/linux.c:387 grub-core/loader/xnu.c:572 -#: grub-core/loader/xnu.c:665 grub-core/loader/xnu.c:781 -#: grub-core/loader/xnu.c:895 grub-core/loader/xnu.c:1091 -#: grub-core/loader/xnu.c:1258 grub-core/loader/xnu.c:1289 -#: grub-core/loader/xnu.c:1430 -msgid "you need to load the kernel first" -msgstr "le noyau doit d'abord être chargé" - -#: grub-core/commands/boot.c:189 -msgid "Boot an operating system." -msgstr "Démarrer un système d'exploitation." - -#: grub-core/commands/boottime.c:36 -#: grub-core/commands/i386/coreboot/cb_timestamps.c:108 -msgid "No boot time statistics is available\n" -msgstr "Aucune statistique de temps de démarrage n'est disponible\n" - -#: grub-core/commands/boottime.c:59 -msgid "Show boot time statistics." -msgstr "Afficher les statistiques de temps de démarrage." - -#: grub-core/commands/cacheinfo.c:40 -#, c-format -msgid "Disk cache statistics: hits = %lu (%lu.%02lu%%), misses = %lu\n" -msgstr "" -"Statistiques de cache du disque : atteints = %lu (%lu.%02lu%%), ratés = %lu\n" - -#: grub-core/commands/cacheinfo.c:45 -msgid "No disk cache statistics available\n" -msgstr "Aucune statistique de cache du disque disponible\n" - -#: grub-core/commands/cacheinfo.c:56 -msgid "Get disk cache info." -msgstr "Obtenir les renseignements de cache du disque." - -#: grub-core/commands/cat.c:33 -msgid "Accept DOS-style CR/NL line endings." -msgstr "Accepter les fins de ligne de type DOS RC/PAL." - -#: grub-core/commands/cat.c:163 grub-core/commands/minicmd.c:198 -msgid "Show the contents of a file." -msgstr "Afficher le contenu d'un fichier." - -#: grub-core/commands/cmp.c:43 grub-core/commands/i386/pc/drivemap.c:239 -#: grub-core/commands/i386/wrmsr.c:60 grub-core/commands/iorw.c:85 -#: grub-core/commands/memrw.c:84 grub-core/commands/password.c:75 -#: grub-core/commands/password_pbkdf2.c:94 grub-core/commands/pgp.c:826 -#: grub-core/commands/regexp.c:113 grub-core/mmap/mmap.c:517 -#: grub-core/net/dns.c:639 -msgid "two arguments expected" -msgstr "deux arguments attendus" - -#: grub-core/commands/cmp.c:45 -#, c-format -msgid "Compare file `%s' with `%s':\n" -msgstr "Comparer le fichier « %s » par rapport à « %s » :\n" - -#: grub-core/commands/cmp.c:54 -#, c-format -msgid "Files differ in size: %llu [%s], %llu [%s]\n" -msgstr "Les fichiers sont de tailles différentes : %llu [%s], %llu [%s]\n" - -#: grub-core/commands/cmp.c:81 -#, c-format -msgid "Files differ at the offset %llu: 0x%x [%s], 0x%x [%s]\n" -msgstr "" -"Les fichiers sont différents à la position %llu : 0x%x [%s], 0x%x [%s]\n" - -#. TRANSLATORS: it's always exactly 2 files. -#: grub-core/commands/cmp.c:93 -msgid "The files are identical.\n" -msgstr "Les fichiers sont identiques.\n" - -#: grub-core/commands/cmp.c:113 -msgid "FILE1 FILE2" -msgstr "FICHIER1 FICHIER2" - -#: grub-core/commands/cmp.c:113 -msgid "Compare two files." -msgstr "Comparer deux fichiers." - -#: grub-core/commands/configfile.c:65 -msgid "Load another config file." -msgstr "Charger un autre fichier de configuration." - -#: grub-core/commands/configfile.c:69 grub-core/commands/configfile.c:87 -msgid "Load another config file without changing context." -msgstr "Charger un autre fichier de configuration sans modifier le contexte." - -#: grub-core/commands/configfile.c:75 -msgid "" -"Load another config file without changing context but take only menu entries." -msgstr "" -"Charger un autre fichier de configuration sans modifier le contexte, mais ne " -"prendre que les entrées de menu." - -#: grub-core/commands/configfile.c:81 -msgid "Load another config file but take only menu entries." -msgstr "" -"Charger un autre fichier de configuration, mais ne prendre que les entrées " -"de menu." - -#: grub-core/commands/date.c:141 -msgid "[[year-]month-day] [hour:minute[:second]]" -msgstr "[[année-]mois-jour] [heure:minute[:seconde]]" - -#: grub-core/commands/date.c:142 -msgid "Display/set current datetime." -msgstr "Afficher ou définir la date et l'heure actuelle." - -#: grub-core/commands/echo.c:30 -msgid "Do not output the trailing newline." -msgstr "Ne pas afficher le changement de ligne final." - -#: grub-core/commands/echo.c:31 -msgid "Enable interpretation of backslash escapes." -msgstr "" -"Activer l'interprétation des séquences d'échappement par barre oblique " -"inversée." - -#: grub-core/commands/echo.c:134 -msgid "[-e|-n] STRING" -msgstr "[-e|-n] CHAÃŽNE" - -#: grub-core/commands/echo.c:134 -msgid "Display a line of text." -msgstr "Afficher une ligne de texte." - -#: grub-core/commands/efi/efifwsetup.c:82 -msgid "Reboot into firmware setup menu." -msgstr "" -"Redémarrer dans le menu de configuration de microprogramme (« firmware »)." - -#: grub-core/commands/efi/fixvideo.c:107 -msgid "Fix video problem." -msgstr "Corriger un problème vidéo." - -#: grub-core/commands/efi/loadbios.c:52 -msgid "ROM image is present." -msgstr "Une image ROM est présente." - -#: grub-core/commands/efi/loadbios.c:70 -msgid "Can't enable ROM area." -msgstr "Impossible d'activer la zone de ROM." - -#: grub-core/commands/efi/loadbios.c:209 -msgid "" -"Create BIOS-like structures for backward compatibility with existing OS." -msgstr "" -"Créer des structures de type BIOS pour compatibilité ascendante avec le " -"système d'exploitation existant." - -#: grub-core/commands/efi/loadbios.c:214 -msgid "BIOS_DUMP [INT10_DUMP]" -msgstr "COPIE_BIOS [COPIE_INT10]" - -#: grub-core/commands/efi/loadbios.c:215 -msgid "Load BIOS dump." -msgstr "Charger la copie du BIOS." - -#: grub-core/commands/efi/shim_lock.c:76 -#, c-format -msgid "module cannot be loaded in UEFI secure boot mode: %s" -msgstr "" -"le module ne peut pas être chargé dans le mode de démarrage sécurisé par " -"UEFI : %s" - -#: grub-core/commands/efi/shim_lock.c:98 -#, c-format -msgid "cannot boot due to dangerous module in memory: %s" -msgstr "impossible de démarrer à cause d'un module dangereux en mémoire : %s" - -#: grub-core/commands/efi/shim_lock.c:116 -msgid "bad shim signature" -msgstr "mauvaise signature du « shim »" - -#: grub-core/commands/efi/tpm.c:149 grub-core/commands/efi/tpm.c:189 -#: grub-core/commands/efi/tpm.c:256 grub-core/commands/efi/tpm.c:306 -msgid "Command failed" -msgstr "La commande a échoué" - -#: grub-core/commands/efi/tpm.c:151 grub-core/commands/efi/tpm.c:191 -#: grub-core/commands/efi/tpm.c:258 grub-core/commands/efi/tpm.c:308 -msgid "Invalid parameter" -msgstr "Paramètre incorrect" - -#: grub-core/commands/efi/tpm.c:154 grub-core/commands/efi/tpm.c:194 -#: grub-core/commands/efi/tpm.c:261 grub-core/commands/efi/tpm.c:311 -msgid "Output buffer too small" -msgstr "Le tampon de sortie est trop petit" - -#: grub-core/commands/efi/tpm.c:156 grub-core/commands/efi/tpm.c:196 -#: grub-core/commands/efi/tpm.c:263 grub-core/commands/efi/tpm.c:313 -msgid "TPM unavailable" -msgstr "TPM indisponible" - -#: grub-core/commands/efi/tpm.c:158 grub-core/commands/efi/tpm.c:198 -#: grub-core/commands/efi/tpm.c:265 grub-core/commands/efi/tpm.c:315 -msgid "Unknown TPM error" -msgstr "Erreur TPM inconnue" - -#: grub-core/commands/efi/tpm.c:240 grub-core/commands/efi/tpm.c:288 -msgid "cannot allocate TPM event buffer" -msgstr "impossible d'allouer le tampon d'événements de TPM" - -#: grub-core/commands/eval.c:63 -msgid "STRING ..." -msgstr "CHAÃŽNE ..." - -#: grub-core/commands/eval.c:64 -msgid "Evaluate arguments as GRUB commands" -msgstr "Évaluer les arguments comme des commandes GRUB" - -#: grub-core/commands/file.c:41 -msgid "Check if FILE can be booted as i386 PAE Xen unprivileged guest kernel" -msgstr "" -"Vérifier si FICHIER peut être démarré comme un noyau de client Xen PAE i386 " -"sans droit" - -#: grub-core/commands/file.c:44 -msgid "Check if FILE can be booted as x86_64 Xen unprivileged guest kernel" -msgstr "" -"Vérifier si FICHIER peut être démarré comme un noyau de client Xen PAE " -"x86_64 sans droit" - -#: grub-core/commands/file.c:46 -msgid "Check if FILE can be used as Xen x86 privileged guest kernel" -msgstr "" -"Vérifier si FICHIER peut être utilisé comme un noyau de client Xen x86 avec " -"droits" - -#: grub-core/commands/file.c:48 -msgid "Check if FILE can be used as x86 multiboot kernel" -msgstr "Vérifier si FICHIER peut être utilisé comme un noyau Multiboot x86" - -#: grub-core/commands/file.c:50 -msgid "Check if FILE can be used as x86 multiboot2 kernel" -msgstr "Vérifier si FICHIER peut être utilisé comme un noyau Multiboot 2 x86" - -#: grub-core/commands/file.c:52 -msgid "Check if FILE is ARM Linux" -msgstr "Vérifier si FICHIER est un Linux ARM" - -#: grub-core/commands/file.c:54 -msgid "Check if FILE is ARM64 Linux" -msgstr "Vérifier si FICHIER est un Linux ARM64" - -#: grub-core/commands/file.c:56 -msgid "Check if FILE is IA64 Linux" -msgstr "Vérifier si FICHIER est un Linux IA-64" - -#: grub-core/commands/file.c:58 -msgid "Check if FILE is MIPS Linux" -msgstr "Vérifier si FICHIER est un Linux MIPS" - -#: grub-core/commands/file.c:60 -msgid "Check if FILE is MIPSEL Linux" -msgstr "Vérifier si FICHIER est un Linux MIPSEL" - -#: grub-core/commands/file.c:62 -msgid "Check if FILE is SPARC64 Linux" -msgstr "Vérifier si FICHIER est un Linux SPARC-64" - -#: grub-core/commands/file.c:64 -msgid "Check if FILE is POWERPC Linux" -msgstr "Vérifier si FICHIER est un Linux PowerPC" - -#: grub-core/commands/file.c:66 -msgid "Check if FILE is x86 Linux" -msgstr "Vérifier si FICHIER est un Linux x86" - -#: grub-core/commands/file.c:68 -msgid "Check if FILE is x86 Linux supporting 32-bit protocol" -msgstr "Vérifier si FICHIER est un Linux x86 acceptant le protocole 32 bits" - -#: grub-core/commands/file.c:70 -msgid "Check if FILE is x86 kFreeBSD" -msgstr "Vérifier si FICHIER est un kFreeBSD x86" - -#: grub-core/commands/file.c:72 -msgid "Check if FILE is i386 kFreeBSD" -msgstr "Vérifier si FICHIER est un kFreeBSD i386" - -#: grub-core/commands/file.c:74 -msgid "Check if FILE is x86_64 kFreeBSD" -msgstr "Vérifier si FICHIER est un kFreeBSD x86_64" - -#: grub-core/commands/file.c:77 -msgid "Check if FILE is x86 kNetBSD" -msgstr "Vérifier si FICHIER est un kNetBSD x86" - -#: grub-core/commands/file.c:79 -msgid "Check if FILE is i386 kNetBSD" -msgstr "Vérifier si FICHIER est un kNetBSD i386" - -#: grub-core/commands/file.c:81 -msgid "Check if FILE is x86_64 kNetBSD" -msgstr "Vérifier si FICHIER est un kNetBSD x86_64" - -#: grub-core/commands/file.c:84 -msgid "Check if FILE is i386 EFI file" -msgstr "Vérifier si FICHIER est un fichier EFI i386" - -#: grub-core/commands/file.c:86 -msgid "Check if FILE is x86_64 EFI file" -msgstr "Vérifier si FICHIER est un fichier EFI x86_64" - -#: grub-core/commands/file.c:88 -msgid "Check if FILE is IA64 EFI file" -msgstr "Vérifier si FICHIER est un fichier EFI IA-64" - -#: grub-core/commands/file.c:90 -msgid "Check if FILE is ARM64 EFI file" -msgstr "Vérifier si FICHIER est un fichier EFI ARM64" - -#: grub-core/commands/file.c:92 -msgid "Check if FILE is ARM EFI file" -msgstr "Vérifier si FICHIER est un fichier EFI ARM" - -#: grub-core/commands/file.c:94 -msgid "Check if FILE is RISC-V 32bit EFI file" -msgstr "Vérifier si FICHIER est un fichier EFI RISC-V 32 bits" - -#: grub-core/commands/file.c:96 -msgid "Check if FILE is RISC-V 64bit EFI file" -msgstr "Vérifier si FICHIER est un fichier EFI RISC-V 64 bits" - -#: grub-core/commands/file.c:98 -msgid "Check if FILE is hiberfil.sys in hibernated state" -msgstr "Vérifier si FICHIER est hiberfil.sys en état d’hibernation" - -#: grub-core/commands/file.c:100 -msgid "Check if FILE is x86_64 XNU (Mac OS X kernel)" -msgstr "Vérifier si FICHIER est un XNU x86_64 (noyau de Mac OS X)" - -#: grub-core/commands/file.c:102 -msgid "Check if FILE is i386 XNU (Mac OS X kernel)" -msgstr "Vérifier si FICHIER est un XNU i386 (noyau de Mac OS X)" - -#: grub-core/commands/file.c:104 -msgid "Check if FILE is XNU (Mac OS X kernel) hibernated image" -msgstr "" -"Vérifier si FICHIER est une image XNU (noyau de Mac OS X) d’hibernation" - -#: grub-core/commands/file.c:106 -msgid "Check if FILE is BIOS bootsector" -msgstr "Vérifier si FICHIER est un secteur d’amorçage BIOS" - -#. TRANSLATORS: it's a standalone boolean value, -#. opposite of "true". -#: grub-core/commands/file.c:675 grub-core/commands/i386/cmostest.c:63 -#: grub-core/commands/i386/cpuid.c:71 grub-core/commands/keystatus.c:83 -#: grub-core/commands/keystatus.c:87 grub-core/commands/keystatus.c:96 -#: grub-core/commands/test.c:436 grub-core/commands/true.c:39 -#: grub-core/script/execute.c:247 grub-core/script/execute.c:1039 -msgid "false" -msgstr "faux" - -#: grub-core/commands/file.c:684 -msgid "OPTIONS FILE" -msgstr "OPTIONS FICHIER" - -#: grub-core/commands/file.c:685 -msgid "Check if FILE is of specified type." -msgstr "Vérifier si FICHIER est du type indiqué." - -#. TRANSLATORS: It means that the specified partition e.g. -#. hd0,msdos1=/dev/sda1 doesn't exist. -#: grub-core/commands/gptsync.c:140 grub-core/kern/disk.c:258 -msgid "no such partition" -msgstr "cette partition n'existe pas" - -#: grub-core/commands/gptsync.c:240 -#, c-format -msgid "New MBR is written to `%s'\n" -msgstr "Le nouveau secteur d'amorçage principal (MBR) est écrit sur « %s »\n" - -#: grub-core/commands/gptsync.c:252 -msgid "DEVICE [PARTITION[+/-[TYPE]]] ..." -msgstr "PÉRIPHÉRIQUE [PARTITION[+/-[TYPE]]] ..." - -#. TRANSLATORS: MBR type is one-byte partition -#. type id. -#: grub-core/commands/gptsync.c:255 -msgid "" -"Fill hybrid MBR of GPT drive DEVICE. Specified partitions will be a part of " -"hybrid MBR. Up to 3 partitions are allowed. TYPE is an MBR type. + means " -"that partition is active. Only one partition can be active." -msgstr "" -"Remplir le secteur d'amorçage principal (MBR) hybride du disque GPT " -"PÉRIPHÉRIQUE. Les partitions indiquées feront partie du secteur d'amorçage " -"principal hybride. Jusqu'à trois partitions sont permises. TYPE est un type " -"de secteur d'amorçage principal. + signifie que la partition est active. Une " -"seule partition peut être active." - -#: grub-core/commands/halt.c:40 -msgid "" -"Halts the computer. This command does not work on all firmware " -"implementations." -msgstr "" -"Arrête l'ordinateur. Cette commande ne fonctionne pas avec toutes les " -"implémentations de microprogramme (« firmware »)." - -#: grub-core/commands/hashsum.c:32 -msgid "Specify hash to use." -msgstr "Indiquer le hachage à utiliser." - -#: grub-core/commands/hashsum.c:32 -msgid "HASH" -msgstr "HACHAGE" - -#: grub-core/commands/hashsum.c:33 -msgid "Check hashes of files with hash list FILE." -msgstr "" -"Comparer les hachages de fichiers avec le FICHIER de liste de hachages." - -#: grub-core/commands/hashsum.c:35 -msgid "Base directory for hash list." -msgstr "Répertoire de base pour la liste des hachages." - -#. TRANSLATORS: platform here isn't identifier. It can be translated. -#: grub-core/commands/hashsum.c:35 grub-core/commands/ls.c:150 -#: grub-core/commands/macbless.c:226 grub-core/commands/syslinuxcfg.c:51 -#: grub-core/commands/syslinuxcfg.c:54 grub-core/kern/emu/main.c:106 -#: include/grub/util/install.h:50 include/grub/util/install.h:53 -#: include/grub/util/install.h:56 include/grub/util/install.h:59 -#: util/grub-install.c:250 util/grub-install.c:252 util/grub-install.c:297 -#: util/grub-install.c:299 util/grub-mkimage.c:64 util/grub-mkimage.c:67 -#: util/grub-mknetdir.c:46 util/grub-mknetdir.c:48 util/grub-mkrescue.c:99 -#: util/grub-setup.c:82 util/grub-syslinux2cfg.c:63 util/grub-syslinux2cfg.c:65 -#: util/grub-syslinux2cfg.c:67 util/grub-syslinux2cfg.c:71 -msgid "DIR" -msgstr "RÉP" - -#: grub-core/commands/hashsum.c:37 -msgid "Don't stop after first error." -msgstr "Ne pas s'arrêter après la première erreur." - -#: grub-core/commands/hashsum.c:38 -msgid "Uncompress file before checksumming." -msgstr "Décompresser le fichier avant de calculer la somme de contrôle." - -#: grub-core/commands/hashsum.c:163 -#, c-format -msgid "%s: READ ERROR\n" -msgstr "%s : erreur de lecture\n" - -#: grub-core/commands/hashsum.c:177 -#, c-format -msgid "%s: HASH MISMATCH\n" -msgstr "%s : hachage non correspondant\n" - -#: grub-core/commands/hashsum.c:188 -#, c-format -msgid "%s: OK\n" -msgstr "%s : succès\n" - -#: grub-core/commands/hashsum.c:282 -msgid "-h HASH [-c FILE [-p PREFIX]] [FILE1 [FILE2 ...]]" -msgstr "-h HACHAGE [-c FICHIER [-p PRÉFIXE]] [FICHIER1 [FICHIER2 ...]]" - -#. TRANSLATORS: "hash checksum" is just to -#. be a bit more precise, you can treat it as -#. just "hash". -#: grub-core/commands/hashsum.c:287 grub-core/commands/hashsum.c:292 -#: grub-core/commands/hashsum.c:297 grub-core/commands/hashsum.c:302 -#: grub-core/commands/hashsum.c:307 grub-core/commands/hashsum.c:313 -msgid "Compute or check hash checksum." -msgstr "Calculer ou vérifier la somme de contrôle du hachage." - -#: grub-core/commands/hashsum.c:290 grub-core/commands/hashsum.c:295 -#: grub-core/commands/hashsum.c:300 grub-core/commands/hashsum.c:305 -#: grub-core/commands/hashsum.c:311 -msgid "[-c FILE [-p PREFIX]] [FILE1 [FILE2 ...]]" -msgstr "[-c FICHIER [-p PRÉFIXE]] [FICHIER1 [FICHIER2 ...]]" - -#: grub-core/commands/hdparm.c:33 -msgid "" -"Set Advanced Power Management\n" -"(1=low, ..., 254=high, 255=off)." -msgstr "" -"Définir la gestion étendue de l'alimentation (APM)\n" -"(1=basse, ..., 254=haute, 255=arrêt)." - -#: grub-core/commands/hdparm.c:36 -msgid "Display power mode." -msgstr "Afficher le mode d'alimentation." - -#: grub-core/commands/hdparm.c:37 -msgid "Freeze ATA security settings until reset." -msgstr "Figer les paramètres de sécurité ATA jusqu'au redémarrage." - -#: grub-core/commands/hdparm.c:39 -msgid "Display SMART health status." -msgstr "Afficher l'état de santé d'après SMART." - -#: grub-core/commands/hdparm.c:40 -msgid "" -"Set Automatic Acoustic Management\n" -"(0=off, 128=quiet, ..., 254=fast)." -msgstr "" -"Définir la gestion acoustique automatique (AAM)\n" -"(0=arrêt, 128=silencieux, ..., 254=rapide)." - -#: grub-core/commands/hdparm.c:43 -msgid "" -"Set standby timeout\n" -"(0=off, 1=5s, 2=10s, ..., 240=20m, 241=30m, ...)." -msgstr "" -"Définir le délai de veille\n" -"(0=off, 1=5 s, 2=10 s, ..., 240=20 min, 241=30 min, ...)." - -#: grub-core/commands/hdparm.c:46 -msgid "Set drive to standby mode." -msgstr "Placer le lecteur en mode veille." - -#: grub-core/commands/hdparm.c:47 -msgid "Set drive to sleep mode." -msgstr "Placer le lecteur en mode sommeil." - -#: grub-core/commands/hdparm.c:48 -msgid "Print drive identity and settings." -msgstr "Afficher les paramètres et l'identité du disque." - -#: grub-core/commands/hdparm.c:50 -msgid "Show raw contents of ATA IDENTIFY sector." -msgstr "Afficher le contenu brut du secteur ATA IDENTIFY." - -#: grub-core/commands/hdparm.c:52 -msgid "Disable/enable SMART (0/1)." -msgstr "Désactiver ou activer SMART (0/1)." - -#: grub-core/commands/hdparm.c:53 -msgid "Do not print messages." -msgstr "Ne pas afficher les messages." - -#: grub-core/commands/hdparm.c:286 grub-core/commands/i386/rdmsr.c:68 -#: grub-core/commands/iorw.c:47 grub-core/commands/legacycfg.c:760 -#: grub-core/commands/legacycfg.c:812 grub-core/commands/macbless.c:190 -#: grub-core/commands/memrw.c:47 grub-core/commands/pgp.c:738 -#: grub-core/commands/pgp.c:792 grub-core/commands/search.c:304 -#: grub-core/commands/search_wrap.c:179 grub-core/commands/setpci.c:243 -#: grub-core/commands/sleep.c:71 grub-core/fs/zfs/zfsinfo.c:279 -#: grub-core/fs/zfs/zfsinfo.c:358 grub-core/gettext/gettext.c:492 -#: grub-core/kern/corecmd.c:65 grub-core/kern/corecmd.c:79 -#: grub-core/mmap/mmap.c:430 grub-core/net/dns.c:713 grub-core/net/dns.c:745 -#: grub-core/net/net.c:694 grub-core/net/net.c:1052 -#: grub-core/normal/context.c:194 grub-core/script/execute.c:131 -#: grub-core/term/gfxterm_background.c:136 -msgid "one argument expected" -msgstr "un argument attendu" - -#: grub-core/commands/hdparm.c:440 -msgid "[OPTIONS] DISK" -msgstr "[OPTIONS] DISQUE" - -#: grub-core/commands/hdparm.c:441 -msgid "Get/set ATA disk parameters." -msgstr "Obtenir ou définir les paramètres ATA du disque." - -#: grub-core/commands/help.c:132 grub-core/lib/arg.c:109 -#: grub-core/lib/gnulib/argp-help.c:1616 -msgid "Usage:" -msgstr "Utilisation :" - -#: grub-core/commands/help.c:146 -msgid "[PATTERN ...]" -msgstr "[MOTIF ...]" - -#: grub-core/commands/help.c:147 -msgid "Show a help message." -msgstr "Afficher un message d'aide." - -#: grub-core/commands/hexdump.c:31 -msgid "Skip offset bytes from the beginning of file." -msgstr "Sauter plusieurs octets au début du fichier." - -#: grub-core/commands/hexdump.c:33 -msgid "Read only LENGTH bytes." -msgstr "Lire seulement LONGUEUR octets." - -#: grub-core/commands/hexdump.c:125 -msgid "[OPTIONS] FILE_OR_DEVICE" -msgstr "[OPTIONS] FICHIER_OU_PERIPH" - -#: grub-core/commands/hexdump.c:126 -msgid "Show raw contents of a file or memory." -msgstr "Afficher le contenu brut d'un fichier ou de la mémoire." - -#: grub-core/commands/i386/cmosdump.c:58 -msgid "Show raw dump of the CMOS contents." -msgstr "Afficher la copie brute du contenu du CMOS." - -#: grub-core/commands/i386/cmostest.c:108 -#: grub-core/commands/i386/cmostest.c:111 -#: grub-core/commands/i386/cmostest.c:114 -msgid "BYTE:BIT" -msgstr "OCTET:BIT" - -#: grub-core/commands/i386/cmostest.c:109 -msgid "Test bit at BYTE:BIT in CMOS." -msgstr "Tester le bit à OCTET:BIT du CMOS." - -#: grub-core/commands/i386/cmostest.c:112 -msgid "Clear bit at BYTE:BIT in CMOS." -msgstr "Désactiver le bit à OCTET:BIT du CMOS." - -#. TRANSLATORS: A bit may be either set (1) or clear (0). -#: grub-core/commands/i386/cmostest.c:116 -msgid "Set bit at BYTE:BIT in CMOS." -msgstr "Activer le bit à OCTET:BIT du CMOS." - -#: grub-core/commands/i386/coreboot/cb_timestamps.c:120 -msgid "Show coreboot boot time statistics." -msgstr "Afficher les statistiques de temps de démarrage de coreboot." - -#: grub-core/commands/i386/coreboot/cbls.c:137 -msgid "List coreboot tables." -msgstr "Afficher les tables de coreboot." - -#. TRANSLATORS: "(default)" at the end means that this option is used if -#. no argument is specified. -#: grub-core/commands/i386/cpuid.c:36 -msgid "Check if CPU supports 64-bit (long) mode (default)." -msgstr "" -"Vérifier si le processeur accepte le mode 64 bits (long, option par défaut)." - -#: grub-core/commands/i386/cpuid.c:37 -msgid "Check if CPU supports Physical Address Extension." -msgstr "" -"Vérifier si le processeur accepte l’extension d’adresses physiques (PAE)." - -#: grub-core/commands/i386/cpuid.c:119 -msgid "Check for CPU features." -msgstr "Tester les capacités du processeur." - -#. TRANSLATORS: In this file "mapping" refers to a change GRUB makes so if -#. your language doesn't have an equivalent of "mapping" you can -#. use the word like "rerouting". -#. -#: grub-core/commands/i386/pc/drivemap.c:43 -msgid "Show the current mappings." -msgstr "Afficher les correspondances actuelles." - -#: grub-core/commands/i386/pc/drivemap.c:44 -msgid "Reset all mappings to the default values." -msgstr "Réinitialiser toutes les correspondances aux valeurs par défaut." - -#: grub-core/commands/i386/pc/drivemap.c:45 -msgid "Perform both direct and reverse mappings." -msgstr "Activer les correspondances dans les deux sens (directe et inverse)." - -#: grub-core/commands/i386/pc/drivemap.c:184 -msgid "No drives have been remapped" -msgstr "Aucune correspondance de disque n'a été refaite." - -#. TRANSLATORS: This is the header of mapping list. -#. On the left is how OS will see the disks and -#. on the right current GRUB vision. -#: grub-core/commands/i386/pc/drivemap.c:191 -msgid "OS disk #num ------> GRUB/BIOS device" -msgstr "" -"disque nº num du système d'exploitation ------> périphérique GRUB ou BIOS" - -#: grub-core/commands/i386/pc/drivemap.c:413 -msgid "-l | -r | [-s] grubdev osdisk." -msgstr "-l | -r | [-s] périph_grub dique_se." - -#: grub-core/commands/i386/pc/drivemap.c:414 -msgid "Manage the BIOS drive mappings." -msgstr "Gérer les correspondances de disques BIOS." - -#: grub-core/commands/i386/pc/halt.c:31 -msgid "Do not use APM to halt the computer." -msgstr "Ne pas utiliser l'APM pour arrêter l'ordinateur." - -#: grub-core/commands/i386/pc/halt.c:119 -msgid "Halt the system, if possible using APM." -msgstr "Arrêter le système, si possible avec l'APM." - -#: grub-core/commands/i386/pc/lsapm.c:75 -msgid "no APM found" -msgstr "pas d'APM disponible" - -#: grub-core/commands/i386/pc/lsapm.c:77 -#, c-format -msgid "" -"Version %u.%u\n" -"32-bit CS = 0x%x, len = 0x%x, offset = 0x%x\n" -"16-bit CS = 0x%x, len = 0x%x\n" -"DS = 0x%x, len = 0x%x\n" -msgstr "" -"Version %u.%u\n" -"CS 32 bits = 0x%x, longueur = 0x%x, position = 0x%x\n" -"CS 16 bits = 0x%x, longueur = 0x%x\n" -"DS = 0x%x, longueur = 0x%x\n" - -#: grub-core/commands/i386/pc/lsapm.c:86 -msgid "16-bit protected interface supported\n" -msgstr "Interface 16 bits protégée prise en charge\n" - -#: grub-core/commands/i386/pc/lsapm.c:87 -msgid "16-bit protected interface unsupported\n" -msgstr "Interface 16 bits protégée non prise en charge\n" - -#: grub-core/commands/i386/pc/lsapm.c:89 -msgid "32-bit protected interface supported\n" -msgstr "Interface 32 bits protégée prise en charge\n" - -#: grub-core/commands/i386/pc/lsapm.c:90 -msgid "32-bit protected interface unsupported\n" -msgstr "Interface 32 bits protégée non prise en charge\n" - -#: grub-core/commands/i386/pc/lsapm.c:92 -msgid "CPU Idle slows down processor\n" -msgstr "La veille ralentit le processeur\n" - -#: grub-core/commands/i386/pc/lsapm.c:93 -msgid "CPU Idle doesn't slow down processor\n" -msgstr "La veille ne ralentit pas le processeur\n" - -#: grub-core/commands/i386/pc/lsapm.c:95 -msgid "APM disabled\n" -msgstr "APM désactivée\n" - -#: grub-core/commands/i386/pc/lsapm.c:95 -msgid "APM enabled\n" -msgstr "APM activée\n" - -#: grub-core/commands/i386/pc/lsapm.c:97 -msgid "APM disengaged\n" -msgstr "APM débrayée\n" - -#: grub-core/commands/i386/pc/lsapm.c:97 -msgid "APM engaged\n" -msgstr "APM embrayée\n" - -#: grub-core/commands/i386/pc/lsapm.c:107 -msgid "Show APM information." -msgstr "Afficher les renseignements d'APM." - -#. TRANSLATORS: It's musical notes, not the notes -#. you take. Play command expects arguments which can -#. be either a filename or tempo+notes. -#. This error happens if none is specified. -#: grub-core/commands/i386/pc/play.c:88 -msgid "filename or tempo and notes expected" -msgstr "nom de fichier ou mesure et notes attendus" - -#: grub-core/commands/i386/pc/play.c:113 grub-core/commands/i386/pc/play.c:144 -#, c-format -msgid "Invalid tempo in %s" -msgstr "Temporisation incorrecte dans %s" - -#: grub-core/commands/i386/pc/play.c:151 grub-core/commands/macbless.c:172 -#: grub-core/fs/archelp.c:260 grub-core/fs/bfs.c:621 grub-core/fs/bfs.c:704 -#: grub-core/fs/btrfs.c:1726 grub-core/fs/btrfs.c:1755 -#: grub-core/fs/btrfs.c:1799 grub-core/fs/btrfs.c:1882 -#: grub-core/fs/btrfs.c:1906 grub-core/fs/fshelp.c:257 grub-core/fs/jfs.c:696 -#: grub-core/fs/minix.c:426 grub-core/fs/ufs.c:544 grub-core/fs/zfs/zfs.c:2083 -#: grub-core/fs/zfs/zfs.c:2095 grub-core/fs/zfs/zfs.c:2301 -#: grub-core/net/http.c:120 -#, c-format -msgid "file `%s' not found" -msgstr "fichier « %s » non disponible" - -#: grub-core/commands/i386/pc/play.c:162 grub-core/commands/i386/pc/play.c:171 -#: grub-core/kern/misc.c:419 grub-core/script/execute.c:138 -#: grub-core/script/execute.c:244 -msgid "unrecognized number" -msgstr "nombre non reconnu" - -#: grub-core/commands/i386/pc/play.c:190 -msgid "FILE | TEMPO [PITCH1 DURATION1] [PITCH2 DURATION2] ... " -msgstr "FICHIER | MESURE [DEGRÉ1 DURÉE1] [DEGRÉ2 DURÉE2] ... " - -#: grub-core/commands/i386/pc/play.c:191 -msgid "Play a tune." -msgstr "Émettre un son." - -#: grub-core/commands/i386/pc/sendkey.c:39 -msgid "set numlock mode" -msgstr "définir le mode de verrouillage numérique" - -#: grub-core/commands/i386/pc/sendkey.c:40 -msgid "set capslock mode" -msgstr "définir le mode de verrouillage majuscule" - -#: grub-core/commands/i386/pc/sendkey.c:41 -msgid "set scrolllock mode" -msgstr "définir le mode de verrouillage défilement" - -#: grub-core/commands/i386/pc/sendkey.c:42 -msgid "set insert mode" -msgstr "définir le mode d'insertion" - -#: grub-core/commands/i386/pc/sendkey.c:43 -msgid "set pause mode" -msgstr "définir le mode de pause" - -#: grub-core/commands/i386/pc/sendkey.c:44 -msgid "press left shift" -msgstr "appuyez sur la touche majuscule gauche" - -#: grub-core/commands/i386/pc/sendkey.c:45 -msgid "press right shift" -msgstr "appuyez sur la touche majuscule droite" - -#: grub-core/commands/i386/pc/sendkey.c:46 -msgid "press SysRq" -msgstr "appuyez sur la touche Syst" - -#: grub-core/commands/i386/pc/sendkey.c:47 -msgid "press NumLock key" -msgstr "appuyez sur la touche Verr Num" - -#: grub-core/commands/i386/pc/sendkey.c:48 -msgid "press CapsLock key" -msgstr "appuyez sur la touche de verrouillage majuscule" - -#: grub-core/commands/i386/pc/sendkey.c:49 -msgid "press ScrollLock key" -msgstr "appuyez sur la touche Arrêt défil" - -#: grub-core/commands/i386/pc/sendkey.c:50 -msgid "press Insert key" -msgstr "appuyez sur la touche d'insertion" - -#: grub-core/commands/i386/pc/sendkey.c:51 -msgid "press left alt" -msgstr "appuyez sur la touche Alt gauche" - -#: grub-core/commands/i386/pc/sendkey.c:52 -msgid "press right alt" -msgstr "appuyez sur la touche Alt droite" - -#: grub-core/commands/i386/pc/sendkey.c:53 -msgid "press left ctrl" -msgstr "appuyez sur la touche Ctrl gauche" - -#: grub-core/commands/i386/pc/sendkey.c:54 -msgid "press right ctrl" -msgstr "appuyez sur la touche Ctrl droite" - -#: grub-core/commands/i386/pc/sendkey.c:55 -msgid "don't update LED state" -msgstr "ne pas mettre à jour l'état de la DEL" - -#: grub-core/commands/i386/pc/sendkey.c:372 -msgid "[KEYSTROKE1] [KEYSTROKE2] ..." -msgstr "[SEQ_FRAPPE1] [SEQ_FRAPPE2] ..." - -#. TRANSLATORS: It can emulate multiple -#. keypresses. -#: grub-core/commands/i386/pc/sendkey.c:375 -msgid "Emulate a keystroke sequence" -msgstr "Émuler une séquence de frappe" - -#: grub-core/commands/i386/rdmsr.c:37 grub-core/commands/iorw.c:34 -#: grub-core/commands/memrw.c:33 grub-core/commands/setpci.c:73 -msgid "Save read value into variable VARNAME." -msgstr "Sauver la valeur lue dans la variable NOM_VAR." - -#: grub-core/commands/i386/rdmsr.c:38 grub-core/commands/iorw.c:35 -#: grub-core/commands/memrw.c:34 grub-core/commands/probe.c:40 -#: grub-core/commands/search_wrap.c:40 grub-core/commands/setpci.c:74 -#: grub-core/commands/tr.c:32 -msgid "VARNAME" -msgstr "NOM_VAR" - -#: grub-core/commands/i386/rdmsr.c:55 grub-core/commands/i386/rdmsr.c:60 -#: grub-core/commands/i386/rdmsr.c:65 grub-core/commands/i386/wrmsr.c:47 -#: grub-core/commands/i386/wrmsr.c:52 grub-core/commands/i386/wrmsr.c:57 -msgid "unsupported instruction" -msgstr "instruction non priss en charge" - -#: grub-core/commands/i386/rdmsr.c:77 grub-core/commands/i386/wrmsr.c:69 -#: grub-core/commands/i386/wrmsr.c:77 grub-core/net/dns.c:727 -msgid "invalid argument" -msgstr "argument incorrect" - -#: grub-core/commands/i386/rdmsr.c:94 grub-core/commands/memrw.c:125 -#: grub-core/commands/memrw.c:129 grub-core/commands/memrw.c:133 -msgid "ADDR" -msgstr "ADRESSE" - -#: grub-core/commands/i386/rdmsr.c:95 -msgid "Read a CPU model specific register." -msgstr "Lire un registre spécifique au modèle du processeur." - -#: grub-core/commands/i386/wrmsr.c:86 -msgid "ADDR VALUE" -msgstr "ADRESSE VALEUR" - -#: grub-core/commands/i386/wrmsr.c:87 -msgid "Write a value to a CPU model specific register." -msgstr "Écrire une valeur dans un registre spécifique du modèle de processeur." - -#: grub-core/commands/ieee1275/suspend.c:34 -msgid "Run `go' to resume GRUB." -msgstr "Exécuter « go » pour revenir à GRUB." - -#: grub-core/commands/ieee1275/suspend.c:45 -msgid "Return to IEEE1275 prompt." -msgstr "Retourner à l'invite IEEE1275." - -#: grub-core/commands/iorw.c:123 grub-core/commands/iorw.c:127 -#: grub-core/commands/iorw.c:131 grub-core/gdb/gdb.c:79 -msgid "PORT" -msgstr "PORT" - -#: grub-core/commands/iorw.c:123 -msgid "Read 8-bit value from PORT." -msgstr "Lire la valeur 8 bits du PORT." - -#: grub-core/commands/iorw.c:127 -msgid "Read 16-bit value from PORT." -msgstr "Lire la valeur 16 bits du PORT." - -#: grub-core/commands/iorw.c:131 -msgid "Read 32-bit value from PORT." -msgstr "Lire la valeur 32 bits du PORT." - -#: grub-core/commands/iorw.c:135 grub-core/commands/iorw.c:139 -msgid "PORT VALUE [MASK]" -msgstr "PORT VALEUR [MASQUE]" - -#: grub-core/commands/iorw.c:136 -msgid "Write 8-bit VALUE to PORT." -msgstr "Écrire la VALEUR 8 bits sur PORT." - -#: grub-core/commands/iorw.c:140 -msgid "Write 16-bit VALUE to PORT." -msgstr "Écrire la VALEUR 16 bits sur PORT." - -#: grub-core/commands/iorw.c:143 grub-core/commands/memrw.c:137 -#: grub-core/commands/memrw.c:141 grub-core/commands/memrw.c:145 -msgid "ADDR VALUE [MASK]" -msgstr "ADRESSE VALEUR [MASQUE]" - -#: grub-core/commands/iorw.c:144 -msgid "Write 32-bit VALUE to PORT." -msgstr "Écrire la VALEUR 32 bits sur PORT." - -#: grub-core/commands/keylayouts.c:215 grub-core/commands/loadenv.c:61 -#: grub-core/commands/nativedisk.c:189 grub-core/efiemu/main.c:235 -#: grub-core/font/font.c:428 grub-core/gfxmenu/gfxmenu.c:63 -#: grub-core/kern/device.c:42 grub-core/kern/dl.c:740 -#, c-format -msgid "variable `%s' isn't set" -msgstr "la variable « %s » n'est pas définie" - -#: grub-core/commands/keylayouts.c:301 -msgid "Load a keyboard layout." -msgstr "Charger une disposition de clavier." - -#. TRANSLATORS: "Check" in a sense that if this key is pressed then -#. "true" is returned, otherwise "false". -#: grub-core/commands/keystatus.c:32 -msgid "Check Shift key." -msgstr "Vérifier l'état de la touche majuscule." - -#: grub-core/commands/keystatus.c:33 -msgid "Check Control key." -msgstr "Vérifier l'état de la touche Ctrl." - -#: grub-core/commands/keystatus.c:34 -msgid "Check Alt key." -msgstr "Vérifier l'état de la touche Alt." - -#. TRANSLATORS: there are 3 modifiers. -#: grub-core/commands/keystatus.c:106 -msgid "Check key modifier status." -msgstr "Vérifier l'état des touches spéciales (Maj, Alt, Ctrl)." - -#: grub-core/commands/legacycfg.c:512 grub-core/commands/legacycfg.c:526 -#: grub-core/commands/legacycfg.c:546 grub-core/commands/legacycfg.c:559 -#: grub-core/commands/time.c:43 grub-core/script/function.c:109 -#: util/grub-file.c:100 util/grub-fstest.c:57 util/grub-mount.c:69 -#, c-format -msgid "can't find command `%s'" -msgstr "impossible de trouver la commande « %s »" - -#: grub-core/commands/legacycfg.c:813 grub-core/normal/auth.c:225 -#: util/grub-mkpasswd-pbkdf2.c:139 -msgid "Enter password: " -msgstr "Entrez le mot de passe : " - -#. TRANSLATORS: "legacy config" means -#. "config as used by grub-legacy". -#: grub-core/commands/legacycfg.c:837 -msgid "Parse legacy config in same context" -msgstr "Analyser l'ancienne configuration dans le même contexte" - -#: grub-core/commands/legacycfg.c:842 -msgid "Parse legacy config in new context" -msgstr "Analyser l'ancienne configuration dans le nouveau contexte" - -#: grub-core/commands/legacycfg.c:847 -msgid "Parse legacy config in same context taking only menu entries" -msgstr "" -"Analyser l'ancienne configuration dans le même contexte en ne prenant que " -"les entrées de menu" - -#: grub-core/commands/legacycfg.c:852 -msgid "Parse legacy config in new context taking only menu entries" -msgstr "" -"Analyser l'ancienne configuration dans le nouveau contexte en ne prenant que " -"les entrées de menu" - -#: grub-core/commands/legacycfg.c:856 -msgid "[--no-mem-option] [--type=TYPE] FILE [ARG ...]" -msgstr "[--no-mem-option] [--type=TYPE] FICHIER [ARG ...]" - -#: grub-core/commands/legacycfg.c:857 -msgid "Simulate grub-legacy `kernel' command" -msgstr "Simuler la commande « kernel » de l'ancien GRUB" - -#: grub-core/commands/legacycfg.c:861 grub-core/commands/legacycfg.c:865 -msgid "FILE [ARG ...]" -msgstr "FICHIER [ARG ...]" - -#: grub-core/commands/legacycfg.c:862 -msgid "Simulate grub-legacy `initrd' command" -msgstr "Simuler la commande « initrd » de l'ancien GRUB" - -#: grub-core/commands/legacycfg.c:866 -msgid "Simulate grub-legacy `modulenounzip' command" -msgstr "Simuler la commande « modulenounzip » de l'ancien GRUB" - -#: grub-core/commands/legacycfg.c:870 grub-core/commands/legacycfg.c:875 -msgid "[--md5] PASSWD [FILE]" -msgstr "[--md5] MOT_DE_PASSE [FICHIER]" - -#: grub-core/commands/legacycfg.c:871 -msgid "Simulate grub-legacy `password' command" -msgstr "Simuler la commande « password » de l'ancien GRUB" - -#: grub-core/commands/legacycfg.c:876 -msgid "Simulate grub-legacy `password' command in menu entry mode" -msgstr "" -"Simuler la commande « password » de l'ancien GRUB en mode d'entrée de menu" - -#. TRANSLATORS: This option is used to override default filename -#. for loading and storing environment. -#: grub-core/commands/loadenv.c:37 -msgid "Specify filename." -msgstr "Indiquer le nom de fichier." - -#: grub-core/commands/loadenv.c:39 -msgid "Skip signature-checking of the environment file." -msgstr "Sauter la vérification de signature du fichier d’environnement." - -#: grub-core/commands/loadenv.c:451 -msgid "[-f FILE] [-s|--skip-sig] [variable_name_to_whitelist] [...]" -msgstr "[-f FICHIER] [-s|--skip-sig] [nom_de_variable_à_autoriser] [...]" - -#: grub-core/commands/loadenv.c:452 -msgid "Load variables from environment block file." -msgstr "Charger les variables depuis un fichier de bloc d'environnement." - -#: grub-core/commands/loadenv.c:455 -msgid "[-f FILE]" -msgstr "[-f FICHIER]" - -#: grub-core/commands/loadenv.c:456 -msgid "List variables from environment block file." -msgstr "Afficher les variables depuis un fichier de bloc d'environnement." - -#: grub-core/commands/loadenv.c:460 -msgid "[-f FILE] variable_name [...]" -msgstr "[-f FICHIER] nom_de_variable [...]" - -#: grub-core/commands/loadenv.c:461 -msgid "Save variables to environment block file." -msgstr "Sauver les variables dans un fichier de bloc d'environnement." - -#: grub-core/commands/ls.c:40 -msgid "Show a long list with more detailed information." -msgstr "Afficher une longue liste de renseignements plus détaillées." - -#: grub-core/commands/ls.c:41 -msgid "Print sizes in a human readable format." -msgstr "Afficher les tailles au format lisible par un humain." - -#: grub-core/commands/ls.c:42 -msgid "List all files." -msgstr "Afficher tous les fichiers." - -#: grub-core/commands/ls.c:73 -msgid "Network protocols:" -msgstr "Protocoles réseau :" - -#: grub-core/commands/ls.c:295 -msgid "[-l|-h|-a] [FILE ...]" -msgstr "[-l|-h|-a] [FICHIER ...]" - -#: grub-core/commands/ls.c:296 -msgid "List devices and files." -msgstr "Afficher les périphériques et fichiers." - -#: grub-core/commands/lsacpi.c:255 -msgid "Show version 1 tables only." -msgstr "N'afficher que les tables en version 1." - -#: grub-core/commands/lsacpi.c:256 -msgid "Show version 2 and version 3 tables only." -msgstr "N'afficher que les tables en version 2 et version 3." - -#: grub-core/commands/lsacpi.c:306 -msgid "Show ACPI information." -msgstr "Afficher les renseignements d'ACPI." - -#: grub-core/commands/lsmmap.c:31 -msgid "available RAM" -msgstr "RAM disponible" - -#: grub-core/commands/lsmmap.c:32 -msgid "reserved RAM" -msgstr "RAM réservée" - -#. TRANSLATORS: this refers to memory where ACPI tables are stored -#. and which can be used by OS once it loads ACPI tables. -#: grub-core/commands/lsmmap.c:35 -msgid "ACPI reclaimable RAM" -msgstr "RAM de l'ACPI récupérable" - -#. TRANSLATORS: this refers to memory which ACPI-compliant OS -#. is required to save accross hibernations. -#: grub-core/commands/lsmmap.c:38 -msgid "ACPI non-volatile storage RAM" -msgstr "RAM de stockage non volatile de l'ACPI" - -#: grub-core/commands/lsmmap.c:39 -msgid "faulty RAM (BadRAM)" -msgstr "RAM défectueuse (BadRAM)" - -#: grub-core/commands/lsmmap.c:40 -msgid "persistent RAM" -msgstr "RAM persistante" - -#: grub-core/commands/lsmmap.c:41 -msgid "persistent RAM (legacy)" -msgstr "RAM persistante (historique)" - -#: grub-core/commands/lsmmap.c:42 -msgid "RAM holding coreboot tables" -msgstr "RAM contenant les tables de coreboot" - -#: grub-core/commands/lsmmap.c:43 -msgid "RAM holding firmware code" -msgstr "RAM contenant le code de microprogramme (« firmware »)" - -#: grub-core/commands/lsmmap.c:52 -#, c-format -msgid "base_addr = 0x%llx, length = 0x%llx, %s\n" -msgstr "adr_base = 0x%llx, longueur = 0x%llx, %s\n" - -#: grub-core/commands/lsmmap.c:55 -#, c-format -msgid "base_addr = 0x%llx, length = 0x%llx, type = 0x%x\n" -msgstr "adr_base = 0x%llx, longueur = 0x%llx, type = 0x%x\n" - -#: grub-core/commands/lsmmap.c:79 -msgid "List memory map provided by firmware." -msgstr "" -"Afficher la carte de mémoire transmise par le microprogramme (« firmware »)." - -#: grub-core/commands/lspci.c:232 -msgid "List PCI devices." -msgstr "Afficher les périphériques PCI." - -#: grub-core/commands/macbless.c:224 -msgid "Bless FILE of HFS or HFS+ partition for intel macs." -msgstr "Rendre FICHIER de partition HFS ou HFS+ amorçable pour les Mac Intel." - -#: grub-core/commands/macbless.c:228 -msgid "Bless DIR of HFS or HFS+ partition for PPC macs." -msgstr "Rendre RÉP de partition HFS ou HFS+ amorçable pour les Mac PowerPC." - -#: grub-core/commands/memrw.c:125 -msgid "Read 8-bit value from ADDR." -msgstr "Lire la valeur 8 bits d'ADRESSE." - -#: grub-core/commands/memrw.c:129 -msgid "Read 16-bit value from ADDR." -msgstr "Lire la valeur 16 bits d'ADRESSE." - -#: grub-core/commands/memrw.c:133 -msgid "Read 32-bit value from ADDR." -msgstr "Lire la valeur 32 bits d'ADRESSE." - -#: grub-core/commands/memrw.c:138 -msgid "Write 8-bit VALUE to ADDR." -msgstr "Écrire la VALEUR 8 bits sur ADRESSE." - -#: grub-core/commands/memrw.c:142 -msgid "Write 16-bit VALUE to ADDR." -msgstr "Écrire la VALEUR 16 bits sur ADRESSE." - -#: grub-core/commands/memrw.c:146 -msgid "Write 32-bit VALUE to ADDR." -msgstr "Écrire la VALEUR 32 bits sur ADRESSE." - -#: grub-core/commands/menuentry.c:31 -msgid "Menu entry type." -msgstr "Type d'entrée de menu." - -#: grub-core/commands/menuentry.c:31 grub-core/commands/menuentry.c:38 -#: grub-core/commands/menuentry.c:39 grub-core/gettext/gettext.c:520 -#: util/grub-fstest.c:520 util/grub-install.c:291 util/grub-install.c:304 -#: util/grub-mknetdir.c:51 util/grub-mkrescue.c:109 util/grub-mkrescue.c:110 -#: util/grub-mount.c:453 util/grub-render-label.c:65 -msgid "STRING" -msgstr "CHAÃŽNE" - -#: grub-core/commands/menuentry.c:33 -msgid "List of users allowed to boot this entry." -msgstr "Liste d'utilisateurs autorisés à démarrer cette entrée." - -#: grub-core/commands/menuentry.c:33 -msgid "USERNAME[,USERNAME]" -msgstr "UTILISATEUR[,UTILISATEUR]" - -#: grub-core/commands/menuentry.c:36 -msgid "Keyboard key to quickly boot this entry." -msgstr "Touche clavier pour démarrer rapidement cette entrée." - -#: grub-core/commands/menuentry.c:36 -msgid "KEYBOARD_KEY" -msgstr "TOUCHE_CLAVIER" - -#: grub-core/commands/menuentry.c:38 -msgid "Use STRING as menu entry body." -msgstr "Utiliser CHAÃŽNE comme corps d'entrée de menu." - -#: grub-core/commands/menuentry.c:39 -msgid "Menu entry identifier." -msgstr "Identifiant d'entrée de menu." - -#. TRANSLATORS: menu entry can either be bootable by anyone or only by -#. handful of users. By default when security is active only superusers can -#. boot a given menu entry. With --unrestricted (this option) -#. anyone can boot it. -#: grub-core/commands/menuentry.c:44 -msgid "This entry can be booted by any user." -msgstr "Cette entrée peut être démarrée par n'importe quel utilisateur." - -#: grub-core/commands/menuentry.c:323 grub-core/commands/menuentry.c:328 -#: grub-core/tests/test_blockarg.c:46 -msgid "BLOCK" -msgstr "BLOC" - -#: grub-core/commands/menuentry.c:323 -msgid "Define a menu entry." -msgstr "Définir une entrée de menu." - -#: grub-core/commands/menuentry.c:328 -msgid "Define a submenu." -msgstr "Définir un sous-menu." - -#. TRANSLATORS: this is module list header. Name -#. is module name, Ref Count is a reference counter -#. (how many modules or open descriptors use it). -#. Dependencies are the other modules it uses. -#. -#: grub-core/commands/minicmd.c:162 -msgid "Name\tRef Count\tDependencies\n" -msgstr "Nom\tNombre Réf.\tDépendances\n" - -#: grub-core/commands/minicmd.c:201 -msgid "Show this message." -msgstr "Afficher ce message." - -#: grub-core/commands/minicmd.c:204 -msgid "ADDR [SIZE]" -msgstr "ADRESSE [TAILLE]" - -#: grub-core/commands/minicmd.c:204 -msgid "Show memory contents." -msgstr "Afficher le contenu de la mémoire." - -#: grub-core/commands/minicmd.c:207 grub-core/kern/corecmd.c:188 -#: util/grub-install.c:275 -msgid "MODULE" -msgstr "MODULE" - -#: grub-core/commands/minicmd.c:207 -msgid "Remove a module." -msgstr "Retirer un module." - -#: grub-core/commands/minicmd.c:210 -msgid "Show loaded modules." -msgstr "Afficher les modules chargés." - -#: grub-core/commands/minicmd.c:213 -msgid "Exit from GRUB." -msgstr "Quitter GRUB." - -#: grub-core/commands/mips/loongson/lsspd.c:42 -msgid "No CS5536 found" -msgstr "Pas de CS5536 disponible" - -#: grub-core/commands/mips/loongson/lsspd.c:45 -#, c-format -msgid "CS5536 at %d:%d.%d\n" -msgstr "CS5536 à %d:%d.%d\n" - -#. TRANSLATORS: System management bus is often used to access components like -#. RAM (info only, not data) or batteries. I/O space is where in memory -#. its ports are. -#: grub-core/commands/mips/loongson/lsspd.c:55 -#, c-format -msgid "System management bus controller I/O space is at 0x%x\n" -msgstr "L'espace d'E/S du contrôleur de bus du système de gestion est à 0x%x\n" - -#. TRANSLATORS: it's shown in a report in a way -#. like number 1: ... number 2: ... -#. -#: grub-core/commands/mips/loongson/lsspd.c:66 -#, c-format -msgid "RAM slot number %d\n" -msgstr "Connecteur de RAM numéro %d\n" - -#: grub-core/commands/mips/loongson/lsspd.c:73 -#, c-format -msgid "Written SPD bytes: %d B.\n" -msgstr "Octets SPD écrits : %d o.\n" - -#: grub-core/commands/mips/loongson/lsspd.c:74 -#, c-format -msgid "Total flash size: %d B.\n" -msgstr "Taille flash totale : %d o.\n" - -#: grub-core/commands/mips/loongson/lsspd.c:79 -msgid "Memory type: DDR2." -msgstr "Type de mémoire : DDR2." - -#: grub-core/commands/mips/loongson/lsspd.c:83 -#, c-format -msgid "Part no: %s.\n" -msgstr "Numéro de modèle : %s.\n" - -#: grub-core/commands/mips/loongson/lsspd.c:86 -msgid "Memory type: Unknown." -msgstr "Type de mémoire : inconnu." - -#: grub-core/commands/mips/loongson/lsspd.c:97 -msgid "Print Memory information." -msgstr "Afficher les renseignements sur la mémoire." - -#: grub-core/commands/nativedisk.c:118 grub-core/commands/probe.c:118 -#: grub-core/commands/probe.c:124 util/grub-probe.c:450 -#, c-format -msgid "%s does not support UUIDs" -msgstr "%s ne prend pas en charge les UUID" - -#: grub-core/commands/nativedisk.c:325 -msgid "[MODULE1 MODULE2 ...]" -msgstr "[MODULE1 MODULE2 ...]" - -#: grub-core/commands/nativedisk.c:326 -msgid "" -"Switch to native disk drivers. If no modules are specified default set (pata," -"ahci,usbms,ohci,uhci,ehci) is used" -msgstr "" -"Basculer vers les pilotes natifs de disque. Si aucun module n'est indiqué, " -"l'ensemble par défaut (pata,ahci,usbms,ohci,uhci,ehci) est utilisé" - -#: grub-core/commands/parttool.c:40 -msgid "" -"Perform COMMANDS on partition.\n" -"Use `parttool PARTITION help' for the list of available commands." -msgstr "" -"Exécuter les COMMANDES sur une partition.\n" -"Utiliser « parttool PARTITION help » pour obtenir la liste des commandes " -"disponibles." - -#: grub-core/commands/parttool.c:123 -msgid "=VAL" -msgstr "=VAL" - -#: grub-core/commands/parttool.c:136 -#, c-format -msgid "Sorry, no parttool is available for %s\n" -msgstr "Désolé, aucun parttool n'est disponible pour %s\n" - -#: grub-core/commands/parttool.c:288 grub-core/lib/arg.c:285 -#: grub-core/lib/arg.c:351 -#, c-format -msgid "unknown argument `%s'" -msgstr "argument « %s » inconnu" - -#: grub-core/commands/parttool.c:344 -msgid "PARTITION COMMANDS" -msgstr "PARTITION COMMANDES" - -#: grub-core/commands/password.c:85 -msgid "USER PASSWORD" -msgstr "UTILISATEUR MOTDEPASSE" - -#: grub-core/commands/password.c:86 -msgid "Set user password (plaintext). Unrecommended and insecure." -msgstr "" -"Définir le mot de passe utilisateur (texte en clair). Non recommandé et non " -"sécurisé." - -#. TRANSLATORS: it means that the string which -#. was supposed to be a password hash doesn't -#. have a correct format, not to password -#. mismatch. -#: grub-core/commands/password_pbkdf2.c:98 -#: grub-core/commands/password_pbkdf2.c:115 -#: grub-core/commands/password_pbkdf2.c:123 -#: grub-core/commands/password_pbkdf2.c:150 -#: grub-core/commands/password_pbkdf2.c:179 -msgid "invalid PBKDF2 password" -msgstr "mot de passe PBKDF2 non conforme" - -#: grub-core/commands/password_pbkdf2.c:202 -msgid "USER PBKDF2_PASSWORD" -msgstr "UTILISATEUR MOTDEPASSE_PBKDF2" - -#: grub-core/commands/password_pbkdf2.c:203 -msgid "Set user password (PBKDF2). " -msgstr "Définir un mot de passe utilisateur (PBKDF2). " - -#: grub-core/commands/pcidump.c:39 grub-core/commands/setpci.c:69 -msgid "Select device by vendor and device IDs." -msgstr "" -"Sélectionner le périphérique par identifiants de constructeur et de " -"périphérique." - -#: grub-core/commands/pcidump.c:40 grub-core/commands/setpci.c:70 -msgid "[vendor]:[device]" -msgstr "[constructeur]:[périphérique]" - -#: grub-core/commands/pcidump.c:41 grub-core/commands/setpci.c:71 -msgid "Select device by its position on the bus." -msgstr "Sélectionner le périphérique en fonction de sa position sur le bus." - -#: grub-core/commands/pcidump.c:42 grub-core/commands/setpci.c:72 -msgid "[bus]:[slot][.func]" -msgstr "[bus]:[connecteur][.fonc]" - -#: grub-core/commands/pcidump.c:109 grub-core/commands/pcidump.c:138 -#: grub-core/commands/setpci.c:183 grub-core/commands/setpci.c:214 -#: grub-core/fs/zfs/zfs.c:3794 grub-core/kern/emu/hostdisk.c:458 -#: grub-core/kern/emu/hostdisk.c:473 grub-core/kern/file.c:44 -#, c-format -msgid "missing `%c' symbol" -msgstr "symbole « %c » manquant" - -#: grub-core/commands/pcidump.c:168 -msgid "[-s POSITION] [-d DEVICE]" -msgstr "[-s POSITION] [-d PÉRIPHÉRIQUE]" - -#: grub-core/commands/pcidump.c:169 -msgid "Show raw dump of the PCI configuration space." -msgstr "Afficher la copie brute de l'espace de configuration PCI." - -#: grub-core/commands/pgp.c:45 -msgid "Skip signature-checking of the public key file." -msgstr "Sauter la vérification de signature du fichier de clef publique." - -#. TRANSLATORS: it's about GNUPG signatures. -#: grub-core/commands/pgp.c:71 grub-core/commands/pgp.c:81 -#: grub-core/commands/pgp.c:86 grub-core/commands/pgp.c:96 -#: grub-core/commands/pgp.c:103 grub-core/commands/pgp.c:107 -#: grub-core/commands/pgp.c:114 grub-core/commands/pgp.c:119 -#: grub-core/commands/pgp.c:124 grub-core/commands/pgp.c:128 -#: grub-core/commands/pgp.c:268 grub-core/commands/pgp.c:276 -#: grub-core/commands/pgp.c:281 grub-core/commands/pgp.c:289 -#: grub-core/commands/pgp.c:320 grub-core/commands/pgp.c:327 -#: grub-core/commands/pgp.c:332 grub-core/commands/pgp.c:342 -#: grub-core/commands/pgp.c:468 grub-core/commands/pgp.c:471 -#: grub-core/commands/pgp.c:474 grub-core/commands/pgp.c:477 -#: grub-core/commands/pgp.c:484 grub-core/commands/pgp.c:490 -#: grub-core/commands/pgp.c:665 -msgid "bad signature" -msgstr "mauvaise signature" - -#. TRANSLATORS: %08x is 32-bit key id. -#: grub-core/commands/pgp.c:636 grub-core/commands/pgp.c:812 -#, c-format -msgid "public key %08x not found" -msgstr "clef publique %08x non disponible" - -#: grub-core/commands/pgp.c:651 grub-core/disk/diskfilter.c:772 -#: grub-core/disk/diskfilter.c:782 grub-core/fs/ntfs.c:404 -#: grub-core/fs/zfs/zfs.c:1933 grub-core/normal/menu.c:428 -#, c-format -msgid "module `%s' isn't loaded" -msgstr "le module « %s » n'est pas chargé" - -#: grub-core/commands/pgp.c:994 -msgid "[-s|--skip-sig] FILE SIGNATURE_FILE [PUBKEY_FILE]" -msgstr "[-s|--skip-sig] FICHIER FICHIER_SIGNATURE [FICHIER_CLEF_PUBLIQUE]" - -#: grub-core/commands/pgp.c:995 -msgid "Verify detached signature." -msgstr "Vérifier la signature détachée." - -#: grub-core/commands/pgp.c:998 -msgid "[-s|--skip-sig] PUBKEY_FILE" -msgstr "[-s|--skip-sig] FICHIER_CLEF_PUBLIQUE" - -#: grub-core/commands/pgp.c:999 -msgid "Add PUBKEY_FILE to trusted keys." -msgstr "Ajouter FICHIER_CLEF_PUBLIQUE aux clefs de confiance." - -#: grub-core/commands/pgp.c:1003 -msgid "Show the list of trusted keys." -msgstr "Afficher la liste des clefs de confiance." - -#: grub-core/commands/pgp.c:1005 -msgid "PUBKEY_ID" -msgstr "IDENTIFIANT_CLEF_PUBLIQUE" - -#: grub-core/commands/pgp.c:1006 -msgid "Remove PUBKEY_ID from trusted keys." -msgstr "Supprimer IDENTIFIANT_CLEF_PUBLIQUE des clefs de confiance." - -#: grub-core/commands/probe.c:40 grub-core/commands/tr.c:32 -msgid "Set a variable to return value." -msgstr "Définir une variable pour renvoyer la valeur." - -#. TRANSLATORS: It's a driver that is currently in use to access -#. the diven disk. -#: grub-core/commands/probe.c:43 -msgid "Determine driver." -msgstr "Déterminer le pilote utilisé." - -#: grub-core/commands/probe.c:44 -msgid "Determine partition map type." -msgstr "Déterminer le type de plan de partition." - -#: grub-core/commands/probe.c:45 -msgid "Determine filesystem type." -msgstr "Déterminer le type de système de fichiers." - -#: grub-core/commands/probe.c:46 -msgid "Determine filesystem UUID." -msgstr "Déterminer l'UUID du système de fichiers." - -#: grub-core/commands/probe.c:47 -msgid "Determine filesystem label." -msgstr "Déterminer l'étiquette du système de fichiers." - -#: grub-core/commands/probe.c:139 grub-core/commands/probe.c:146 -#: util/grub-probe.c:462 -#, c-format -msgid "filesystem `%s' does not support labels" -msgstr "le système de fichier « %s » ne prend pas en charge les étiquettes" - -#: grub-core/commands/probe.c:165 grub-core/fs/zfs/zfsinfo.c:430 -#: grub-core/loader/i386/bsd.c:169 util/grub-setup.c:223 -msgid "DEVICE" -msgstr "PÉRIPHÉRIQUE" - -#: grub-core/commands/probe.c:166 -msgid "Retrieve device info." -msgstr "Récupérer les renseignements du périphérique." - -#: grub-core/commands/read.c:85 -msgid "[ENVVAR]" -msgstr "[VAR_ENV]" - -#: grub-core/commands/read.c:86 -msgid "Set variable with user input." -msgstr "Définir la variable avec la saisie de l'utilisateur." - -#: grub-core/commands/reboot.c:40 -msgid "Reboot the computer." -msgstr "Redémarrer l'ordinateur." - -#. TRANSLATORS: in regexp you can mark some -#. groups with parentheses. These groups are -#. then numbered and you can save some of -#. them in variables. In other programs -#. those components aree often referenced with -#. back slash, e.g. \1. Compare -#. sed -e 's,\([a-z][a-z]*\),lowercase=\1,g' -#. The whole matching component is saved in VARNAME, not its number. -#. -#: grub-core/commands/regexp.c:44 -msgid "Store matched component NUMBER in VARNAME." -msgstr "Sauver le composant NOMBRE correspondant dans NOM_VAR." - -#: grub-core/commands/regexp.c:45 -msgid "[NUMBER:]VARNAME" -msgstr "[NOMBRE:]NOM_VAR" - -#. TRANSLATORS: This are two arguments. So it's -#. two separate units to translate and pay -#. attention not to reverse them. -#: grub-core/commands/regexp.c:157 -msgid "REGEXP STRING" -msgstr "EXPR_RAT CHAÃŽNE" - -#: grub-core/commands/regexp.c:158 -msgid "Test if REGEXP matches STRING." -msgstr "Tester si l'expression rationnelle EXPR_RAT correspond à CHAÃŽNE." - -#: grub-core/commands/search.c:324 -msgid "NAME [VARIABLE] [HINTS]" -msgstr "NOM [VARIABLE] [CONSEILS]" - -#: grub-core/commands/search_file.c:4 -msgid "" -"Search devices by file. If VARIABLE is specified, the first device found is " -"set to a variable." -msgstr "" -"Chercher des périphériques par fichier. Si VARIABLE est indiquée, le premier " -"périphérique trouvé est enregistré dans une variable." - -#: grub-core/commands/search_label.c:4 -msgid "" -"Search devices by label. If VARIABLE is specified, the first device found is " -"set to a variable." -msgstr "" -"Chercher des périphériques par étiquette. Si VARIABLE est indiquée, le " -"premier périphérique trouvé est enregistré dans une variable." - -#: grub-core/commands/search_uuid.c:4 -msgid "" -"Search devices by UUID. If VARIABLE is specified, the first device found is " -"set to a variable." -msgstr "" -"Chercher des périphériques par UUID. Si VARIABLE est indiquée, le premier " -"périphérique trouvé est enregistré dans une variable." - -#: grub-core/commands/search_wrap.c:34 -msgid "Search devices by a file." -msgstr "Chercher les périphériques par fichier." - -#: grub-core/commands/search_wrap.c:35 -msgid "Search devices by a filesystem label." -msgstr "Chercher les périphériques par étiquette de système de fichiers." - -#: grub-core/commands/search_wrap.c:37 -msgid "Search devices by a filesystem UUID." -msgstr "Chercher les périphériques par UUID de système de fichiers." - -#: grub-core/commands/search_wrap.c:40 -msgid "Set a variable to the first device found." -msgstr "Définir une variable au premier périphérique trouvé." - -#: grub-core/commands/search_wrap.c:42 -msgid "Do not probe any floppy drive." -msgstr "N'examiner aucun lecteur de disquettes." - -#: grub-core/commands/search_wrap.c:44 -msgid "" -"First try the device HINT. If HINT ends in comma, also try subpartitions" -msgstr "" -"Essayer d'abord le CONSEIL (« hint ») de périphérique. Si CONSEIL se finit " -"par une virgule, essayer aussi les sous-partitions." - -#: grub-core/commands/search_wrap.c:45 grub-core/commands/search_wrap.c:49 -#: grub-core/commands/search_wrap.c:53 grub-core/commands/search_wrap.c:57 -#: grub-core/commands/search_wrap.c:61 grub-core/commands/search_wrap.c:65 -msgid "HINT" -msgstr "CONSEIL" - -#: grub-core/commands/search_wrap.c:47 -msgid "" -"First try the device HINT if currently running on IEEE1275. If HINT ends in " -"comma, also try subpartitions" -msgstr "" -"Essayer d'abord le CONSEIL (« hint ») de périphérique si exécuté sur une " -"plate-forme IEEE1275. Si CONSEIL se finit par une virgule, essayer aussi les " -"sous-partitions." - -#: grub-core/commands/search_wrap.c:51 -msgid "" -"First try the device HINT if currently running on BIOS. If HINT ends in " -"comma, also try subpartitions" -msgstr "" -"Essayer d'abord le CONSEIL (« hint ») de périphérique si exécuté sur une " -"plate-forme BIOS. Si CONSEIL se finit par une virgule, essayer aussi les " -"sous-partitions." - -#: grub-core/commands/search_wrap.c:55 -msgid "" -"First try the device HINT if direct hardware access is supported. If HINT " -"ends in comma, also try subpartitions" -msgstr "" -"Essayer d'abord le CONSEIL (« hint ») de périphérique seulement si exécuté " -"sur une plate-forme permettant un accès matériel direct. Si CONSEIL se finit " -"par une virgule, essayer aussi les sous-partitions." - -#: grub-core/commands/search_wrap.c:59 -msgid "" -"First try the device HINT if currently running on EFI. If HINT ends in " -"comma, also try subpartitions" -msgstr "" -"Essayer d'abord le CONSEIL (« hint ») de périphérique seulement si exécuté " -"sur une plate-forme EFI. Si CONSEIL se finit par une virgule, essayer aussi " -"les sous-partitions." - -#: grub-core/commands/search_wrap.c:63 -msgid "" -"First try the device HINT if currently running on ARC. If HINT ends in " -"comma, also try subpartitions" -msgstr "" -"Essayer d'abord le CONSEIL (« hint ») de périphérique seulement si exécuté " -"sur une plate-forme ARC. Si CONSEIL se finit par une virgule, essayer aussi " -"les sous-partitions." - -#: grub-core/commands/search_wrap.c:207 -msgid "[-f|-l|-u|-s|-n] [--hint HINT [--hint HINT] ...] NAME" -msgstr "[-f|-l|-u|-s|-n] [--hint CONSEIL [--hint CONSEIL] ...] NOM" - -#: grub-core/commands/search_wrap.c:209 -msgid "" -"Search devices by file, filesystem label or filesystem UUID. If --set is " -"specified, the first device found is set to a variable. If no variable name " -"is specified, `root' is used." -msgstr "" -"Chercher des périphériques par nom de fichier, étiquette ou UUID de système " -"de fichiers. Si --set est indiqué, le premier périphérique trouvé est " -"enregistré dans une variable. Si aucun nom de variable n'est indiqué, " -"« root » est utilisé." - -#: grub-core/commands/setpci.c:132 -#, c-format -msgid "Register %x of %x:%02x.%x is %x\n" -msgstr "Registre %x de %x:%02x.%x est %x\n" - -#: grub-core/commands/setpci.c:333 -msgid "[-s POSITION] [-d DEVICE] [-v VAR] REGISTER[=VALUE[:MASK]]" -msgstr "[-s POSITION] [-d PÉRIPHÉRIQUE] [-v VAR] REGISTRE[=VALEUR[:MASQUE]]" - -#: grub-core/commands/setpci.c:335 -msgid "Manipulate PCI devices." -msgstr "Manipuler les périphériques PCI." - -#: grub-core/commands/sleep.c:32 -msgid "Verbose countdown." -msgstr "Décompte détaillé." - -#: grub-core/commands/sleep.c:33 -msgid "Allow to interrupt with ESC." -msgstr "Permettre l'interruption avec Échap." - -#: grub-core/commands/sleep.c:109 -msgid "NUMBER_OF_SECONDS" -msgstr "NOMBRE_DE_SECONDES" - -#: grub-core/commands/sleep.c:110 -msgid "Wait for a specified number of seconds." -msgstr "Attendre le temps indiqué en seconde." - -#: grub-core/commands/syslinuxcfg.c:50 util/grub-syslinux2cfg.c:66 -msgid "root directory of the syslinux disk [default=/]." -msgstr "répertoire racine du disque syslinux [/ par défaut]" - -# NOTE: s/the // -#: grub-core/commands/syslinuxcfg.c:53 util/grub-syslinux2cfg.c:72 -msgid "" -"current directory of syslinux [default is parent directory of input file]." -msgstr "" -"répertoire actuel de syslinux [par défaut: répertoire parent du fichier " -"d’entrée]." - -#: grub-core/commands/syslinuxcfg.c:55 util/grub-syslinux2cfg.c:75 -msgid "assume input is an isolinux configuration file." -msgstr "l’entrée est supposée être un fichier de configuration d’isolinux." - -#: grub-core/commands/syslinuxcfg.c:56 util/grub-syslinux2cfg.c:76 -msgid "assume input is a pxelinux configuration file." -msgstr "l’entrée est supposée être un fichier de configuration de pxelinux." - -#: grub-core/commands/syslinuxcfg.c:57 util/grub-syslinux2cfg.c:77 -msgid "assume input is a syslinux configuration file." -msgstr "l’entrée est supposée être un fichier de configuration de syslinux." - -#. TRANSLATORS: "syslinux config" means -#. "config as used by syslinux". -#: grub-core/commands/syslinuxcfg.c:189 -msgid "Execute syslinux config in same context" -msgstr "Exécuter la configuration de syslinux dans le même contexte" - -#: grub-core/commands/syslinuxcfg.c:195 -msgid "Execute syslinux config in new context" -msgstr "Exécuter la configuration de syslinux dans le nouveau contexte" - -#: grub-core/commands/syslinuxcfg.c:201 -msgid "Execute syslinux config in same context taking only menu entries" -msgstr "" -"Exécuter la configuration de syslinux dans le même contexte en ne prenant " -"que les entrées de menu" - -#: grub-core/commands/syslinuxcfg.c:207 -msgid "Execute syslinux config in new context taking only menu entries" -msgstr "" -"Exécuter la configuration de syslinux dans le nouveau contexte en ne prenant " -"que les entrées de menu" - -#: grub-core/commands/terminal.c:90 -msgid "no terminal specified" -msgstr "aucun terminal indiqué" - -#: grub-core/commands/terminal.c:112 grub-core/commands/terminal.c:139 -#, c-format -msgid "terminal `%s' isn't found" -msgstr "terminal « %s » non disponible" - -#: grub-core/commands/terminal.c:244 -msgid "Active input terminals:" -msgstr "Terminaux actifs en entrée :" - -#: grub-core/commands/terminal.c:245 -msgid "Available input terminals:" -msgstr "Terminaux disponibles en entrée :" - -#: grub-core/commands/terminal.c:261 -msgid "Active output terminals:" -msgstr "Terminaux actifs en sortie :" - -#: grub-core/commands/terminal.c:262 -msgid "Available output terminals:" -msgstr "Terminaux disponibles en sortie :" - -#: grub-core/commands/terminal.c:271 grub-core/commands/terminal.c:276 -msgid "[--append|--remove] [TERMINAL1] [TERMINAL2] ..." -msgstr "[--append|--remove] [TERMINAL1] [TERMINAL2] ..." - -#: grub-core/commands/terminal.c:273 -msgid "List or select an input terminal." -msgstr "Afficher ou sélectionner un terminal d'entrée." - -#: grub-core/commands/terminal.c:278 -msgid "List or select an output terminal." -msgstr "Afficher ou sélectionner un terminal de sortie." - -#: grub-core/commands/test.c:444 -msgid "EXPRESSION ]" -msgstr "EXPRESSION ]" - -#: grub-core/commands/test.c:444 grub-core/commands/test.c:447 -msgid "Evaluate an expression." -msgstr "Évaluer une expression." - -#: grub-core/commands/test.c:447 -msgid "EXPRESSION" -msgstr "EXPRESSION" - -#: grub-core/commands/testload.c:164 -msgid "Load the same file in multiple ways." -msgstr "Charger le même fichier de différentes façons." - -#: grub-core/commands/testspeed.c:35 -msgid "Specify size for each read operation" -msgstr "Indiquer la taille pour toutes les opérations de lecture" - -#: grub-core/commands/testspeed.c:58 -msgid "invalid block size" -msgstr "taille de bloc incorrecte" - -#: grub-core/commands/testspeed.c:80 -#, c-format -msgid "File size: %s\n" -msgstr "Taille de fichier : %s\n" - -#: grub-core/commands/testspeed.c:83 -#, c-format -msgid "Elapsed time: %d.%03d s \n" -msgstr "Temps écoulé : %d,%03d s \n" - -#: grub-core/commands/testspeed.c:92 -#, c-format -msgid "Speed: %s \n" -msgstr "Vitesse : %s \n" - -#: grub-core/commands/testspeed.c:107 -msgid "[-s SIZE] FILENAME" -msgstr "[-s TAILLE] FICHIER" - -#: grub-core/commands/testspeed.c:108 -msgid "Test file read speed." -msgstr "Tester la vitesse de lecture du fichier." - -#: grub-core/commands/time.c:38 grub-core/script/execute.c:974 -msgid "no command is specified" -msgstr "aucune commande n'est indiquée" - -#: grub-core/commands/time.c:50 -#, c-format -msgid "Elapsed time: %d.%03d seconds \n" -msgstr "Temps écoulé : %d,%03d secondes \n" - -#: grub-core/commands/time.c:61 -msgid "COMMAND [ARGS]" -msgstr "COMMANDE [ARGUMENTS]" - -#: grub-core/commands/time.c:62 -msgid "Measure time used by COMMAND" -msgstr "Mesurer le temps utilisé par COMMANDE" - -#: grub-core/commands/tr.c:33 -msgid "Translate to upper case." -msgstr "Convertir en majuscule." - -#: grub-core/commands/tr.c:34 -msgid "Translate to lower case." -msgstr "Convertir en minuscule." - -#: grub-core/commands/tr.c:119 -msgid "[OPTIONS] [SET1] [SET2] [STRING]" -msgstr "[OPTIONS] [ENSEMBLE1] [ENSEMBLE2] [CHAÃŽNE]" - -#: grub-core/commands/tr.c:120 -msgid "Translate SET1 characters to SET2 in STRING." -msgstr "Convertir les caractères d’ENSEMBLE1 vers ENSEMBLE2 dans CHAÃŽNE." - -#. TRANSLATORS: it's a command description. -#: grub-core/commands/true.c:50 -msgid "Do nothing, successfully." -msgstr "Ne rien faire, avec succès." - -#. TRANSLATORS: it's a command description. -#: grub-core/commands/true.c:54 -msgid "Do nothing, unsuccessfully." -msgstr "Ne rien faire, avec échec." - -#: grub-core/commands/usbtest.c:221 -msgid "Test USB support." -msgstr "Tester la prise en charge de l'USB." - -#: grub-core/commands/verifiers.c:120 -#, c-format -msgid "verification requested but nobody cares: %s" -msgstr "vérification requise mais personne ne s'en soucie : %s" - -#: grub-core/commands/verifiers.c:140 -msgid "big file signature isn't implemented yet" -msgstr "la signature d'un gros fichier n'est pas encore implémentée" - -#: grub-core/commands/videoinfo.c:61 -msgid "Text-only " -msgstr "Texte seul " - -#. TRANSLATORS: "Direct color" is a mode when the color components -#. are written dirrectly into memory. -#: grub-core/commands/videoinfo.c:66 -#, c-format -msgid "Direct color, mask: %d/%d/%d/%d pos: %d/%d/%d/%d" -msgstr "Couleur directe, masque : %d/%d/%d/%d position : %d/%d/%d/%d" - -#. TRANSLATORS: In "paletted color" mode you write the index of the color -#. in the palette. Synonyms include "packed pixel". -#: grub-core/commands/videoinfo.c:78 -msgid "Paletted " -msgstr "Palette de couleurs " - -#: grub-core/commands/videoinfo.c:80 -msgid "YUV " -msgstr "YUV " - -#. TRANSLATORS: "Planar" is the video memory where you have to write -#. in several different banks "plans" to control the different color -#. components of the same pixel. -#: grub-core/commands/videoinfo.c:85 -msgid "Planar " -msgstr "Par plan " - -#: grub-core/commands/videoinfo.c:87 -msgid "Hercules " -msgstr "Hercules " - -#: grub-core/commands/videoinfo.c:89 -msgid "CGA " -msgstr "CGA " - -#. TRANSLATORS: Non-chain 4 is a 256-color planar -#. (unchained) video memory mode. -#: grub-core/commands/videoinfo.c:93 -msgid "Non-chain 4 " -msgstr "Non-chain 4 " - -#: grub-core/commands/videoinfo.c:95 -msgid "Monochrome " -msgstr "Monochrome " - -#: grub-core/commands/videoinfo.c:97 -msgid "Unknown video mode " -msgstr "Mode vidéo inconnu " - -#: grub-core/commands/videoinfo.c:111 -msgid " EDID checksum invalid" -msgstr " Somme de contrôle EDID incorrecte" - -#: grub-core/commands/videoinfo.c:116 -#, c-format -msgid " EDID version: %u.%u\n" -msgstr " Version d'EDID : %u.%u\n" - -#: grub-core/commands/videoinfo.c:120 -#, c-format -msgid " Preferred mode: %ux%u\n" -msgstr " Mode préféré : %ux%u\n" - -#: grub-core/commands/videoinfo.c:123 -msgid " No preferred mode available\n" -msgstr " Pas de mode préféré disponible\n" - -#: grub-core/commands/videoinfo.c:146 grub-core/video/video.c:490 -#: grub-core/video/video.c:498 grub-core/video/video.c:509 -#: grub-core/video/video.c:520 grub-core/video/video.c:528 -#, c-format -msgid "invalid video mode specification `%s'" -msgstr "spécification « %s » de mode vidéo incorrecte" - -#: grub-core/commands/videoinfo.c:168 -msgid "List of supported video modes:" -msgstr "Liste des mode vidéo possibles :" - -#: grub-core/commands/videoinfo.c:169 -msgid "Legend: mask/position=red/green/blue/reserved" -msgstr "Légende : masque/position=rouge/vert/bleu/réservé" - -#: grub-core/commands/videoinfo.c:176 -#, c-format -msgid "Adapter `%s':\n" -msgstr "Adaptateur « %s » :\n" - -#: grub-core/commands/videoinfo.c:180 -msgid " No info available" -msgstr " Aucun renseignement disponible" - -#: grub-core/commands/videoinfo.c:198 -msgid " Failed to initialize video adapter" -msgstr " Échec d'initialisation de l'adaptateur vidéo" - -#. TRANSLATORS: "x" has to be entered in, -#. like an identifier, so please don't -#. use better Unicode codepoints. -#: grub-core/commands/videoinfo.c:239 grub-core/commands/videoinfo.c:248 -msgid "[WxH[xD]]" -msgstr "[LARGxHAUT[xPROF]]" - -#: grub-core/commands/videoinfo.c:240 grub-core/commands/videoinfo.c:249 -msgid "" -"List available video modes. If resolution is given show only modes matching " -"it." -msgstr "" -"Afficher les modes vidéo. Si une résolution est donnée, n'afficher que les " -"modes correspondants." - -#. TRANSLATORS: "x" has to be entered in, -#. like an identifier, so please don't -#. use better Unicode codepoints. -#: grub-core/commands/videotest.c:225 -msgid "[WxH]" -msgstr "[LARGxHAUT]" - -#. TRANSLATORS: Here, on the other hand, it's -#. nicer to use unicode cross instead of x. -#: grub-core/commands/videotest.c:228 -msgid "Test video subsystem in mode WxH." -msgstr "Tester le sous-système vidéo en mode LARG×HAUT." - -#: grub-core/commands/videotest.c:231 -msgid "Test video subsystem." -msgstr "Tester le sous-système vidéo." - -#: grub-core/commands/xen/lsxen.c:80 grub-core/commands/xen/lsxen.c:82 -msgid "[DIR]" -msgstr "[RÉP]" - -#: grub-core/commands/xen/lsxen.c:81 grub-core/commands/xen/lsxen.c:83 -msgid "List Xen storage." -msgstr "Afficher le stockage Xen." - -#. TRANSLATORS: GRUBUUID stands for "filesystem -#. UUID as used in GRUB". -#: grub-core/commands/xnu_uuid.c:110 -msgid "[-l] GRUBUUID [VARNAME]" -msgstr "[-l] UUIDGRUB [NOM_VAR]" - -#: grub-core/commands/xnu_uuid.c:111 -msgid "" -"Transform 64-bit UUID to format suitable for XNU. If -l is given keep it " -"lowercase as done by blkid." -msgstr "" -"Transformer un UUID 64 bits au format convenable pour XNU. Si -l est donnée, " -"le garder en minuscule comme avec blkid." - -#: grub-core/disk/arc/arcdisk.c:248 grub-core/disk/efi/efidisk.c:603 -#: grub-core/disk/i386/pc/biosdisk.c:498 grub-core/disk/i386/pc/biosdisk.c:543 -#: grub-core/disk/ieee1275/nand.c:198 grub-core/disk/ieee1275/obdisk.c:527 -#: grub-core/disk/ieee1275/ofdisk.c:586 -#, c-format -msgid "failure reading sector 0x%llx from `%s'" -msgstr "échec de lecture du secteur 0x%llx de « %s »" - -#: grub-core/disk/arc/arcdisk.c:284 grub-core/disk/efi/efidisk.c:626 -#: grub-core/disk/i386/pc/biosdisk.c:548 grub-core/disk/ieee1275/ofdisk.c:606 -#, c-format -msgid "failure writing sector 0x%llx to `%s'" -msgstr "échec d'écriture du secteur 0x%llx sur « %s »" - -#: grub-core/disk/cryptodisk.c:40 -msgid "Mount by UUID." -msgstr "Monter par UUID." - -#. TRANSLATORS: It's still restricted to cryptodisks only. -#: grub-core/disk/cryptodisk.c:42 -msgid "Mount all." -msgstr "Tous les monter." - -#: grub-core/disk/cryptodisk.c:43 -msgid "Mount all volumes with `boot' flag set." -msgstr "Monter tous les volumes avec l'attribut d'amorçage (« boot ») défini." - -#. TRANSLATORS: The first %s is the file being looked at, the second %s is -#. the error message. -#: grub-core/disk/cryptodisk.c:526 grub-core/kern/emu/hostdisk.c:152 -#: grub-core/kern/emu/hostdisk.c:262 grub-core/kern/emu/hostdisk.c:434 -#: grub-core/kern/emu/misc.c:168 grub-core/kern/emu/misc.c:174 -#: grub-core/kern/emu/misc.c:196 grub-core/osdep/bsd/getroot.c:92 -#: grub-core/osdep/bsd/getroot.c:168 grub-core/osdep/hurd/getroot.c:68 -#: grub-core/osdep/linux/blocklist.c:65 grub-core/osdep/linux/getroot.c:150 -#: grub-core/osdep/linux/hostdisk.c:194 grub-core/osdep/linux/hostdisk.c:421 -#: grub-core/osdep/linux/ofpath.c:417 grub-core/osdep/linux/ofpath.c:422 -#: grub-core/osdep/linux/ofpath.c:517 grub-core/osdep/linux/ofpath.c:530 -#: grub-core/osdep/sun/getroot.c:110 grub-core/osdep/windows/blocklist.c:98 -#: grub-core/tests/video_checksum.c:279 util/editenv.c:46 util/glue-efi.c:115 -#: util/glue-efi.c:120 util/glue-efi.c:130 util/grub-editenv.c:138 -#: util/grub-editenv.c:192 util/grub-file.c:83 util/grub-fstest.c:128 -#: util/grub-fstest.c:568 util/grub-install-common.c:92 -#: util/grub-install-common.c:94 util/grub-install-common.c:101 -#: util/grub-install-common.c:529 util/grub-menulst2cfg.c:53 -#: util/grub-menulst2cfg.c:68 util/grub-mkimage.c:292 util/grub-mklayout.c:504 -#: util/grub-mklayout.c:516 util/grub-mknetdir.c:133 util/grub-mknetdir.c:151 -#: util/grub-mkrescue.c:627 util/grub-mkrescue.c:631 util/grub-mkrescue.c:879 -#: util/grub-mkrescue.c:883 util/grub-mkstandalone.c:253 util/grub-mount.c:498 -#: util/grub-render-label.c:169 util/grub-script-check.c:175 -#: util/grub-syslinux2cfg.c:181 util/grub-syslinux2cfg.c:191 -#: util/grub-syslinux2cfg.c:212 util/grub-syslinux2cfg.c:228 util/misc.c:91 -#: util/render-label.c:76 util/render-label.c:163 util/render-label.c:174 -#: util/resolve.c:246 util/setup.c:783 -#, c-format -msgid "cannot open `%s': %s" -msgstr "impossible d'ouvrir « %s » : %s" - -#: grub-core/disk/cryptodisk.c:583 grub-core/disk/cryptodisk.c:628 -#: grub-core/kern/emu/hostdisk.c:270 grub-core/kern/emu/hostfs.c:142 -#: grub-core/osdep/linux/hostdisk.c:456 util/grub-editenv.c:143 -#: util/grub-editenv.c:149 util/grub-fstest.c:320 util/misc.c:111 -#, c-format -msgid "cannot seek `%s': %s" -msgstr "impossible de parcourir « %s » : %s" - -#: grub-core/disk/cryptodisk.c:1144 -msgid "SOURCE|-u UUID|-a|-b" -msgstr "SOURCE|-u UUID|-a|-b" - -#: grub-core/disk/cryptodisk.c:1145 -msgid "Mount a crypto device." -msgstr "Monter un périphérique chiffré." - -#. TRANSLATORS: This message kicks in during the detection of -#. which modules needs to be included in core image. This happens -#. in the case of degraded RAID and means that autodetection may -#. fail to include some of modules. It's an installation time -#. message, not runtime message. -#: grub-core/disk/diskfilter.c:343 grub-core/disk/diskfilter.c:376 -#, c-format -msgid "" -"Couldn't find physical volume `%s'. Some modules may be missing from core " -"image." -msgstr "" -"Impossible de trouver le volume physique « %s ». Certains modules risquent " -"de manquer dans l'image de base." - -#: grub-core/disk/diskfilter.c:480 -#, c-format -msgid "physical volume %s not found" -msgstr "volume physique %s non disponible" - -#: grub-core/disk/efi/efidisk.c:600 grub-core/disk/efi/efidisk.c:623 -#, c-format -msgid "no media in `%s'" -msgstr "pas de support dans « %s »" - -#: grub-core/disk/geli.c:75 -msgid "Couldn't load sha256" -msgstr "Impossible de charger sha256" - -#: grub-core/disk/geli.c:85 -msgid "Couldn't load sha512" -msgstr "Impossible de charger sha512" - -#: grub-core/disk/geli.c:216 grub-core/disk/geli.c:220 -msgid "couldn't read ELI metadata" -msgstr "impossible de lire les métadonnées ELI" - -#: grub-core/disk/geli.c:231 -msgid "wrong ELI magic or version" -msgstr "mauvaise version ou numéro magique ELI" - -#: grub-core/disk/geli.c:435 grub-core/disk/luks.c:329 -msgid "Attempting to decrypt master key..." -msgstr "Tentative de déchiffrement de la clef principale…" - -#: grub-core/disk/geli.c:441 grub-core/disk/luks.c:347 -#, c-format -msgid "Enter passphrase for %s%s%s (%s): " -msgstr "Entrez le mot de passe pour %s%s%s (%s) : " - -#. TRANSLATORS: It's a cryptographic key slot: one element of an array -#. where each element is either empty or holds a key. -#: grub-core/disk/geli.c:530 grub-core/disk/luks.c:451 -#, c-format -msgid "Slot %d opened\n" -msgstr "Emplacement de clef %d ouvert\n" - -#: grub-core/disk/i386/pc/biosdisk.c:470 grub-core/disk/i386/pc/biosdisk.c:524 -#: grub-core/disk/i386/pc/biosdisk.c:534 grub-core/kern/disk_common.c:47 -#, c-format -msgid "attempt to read or write outside of disk `%s'" -msgstr "tentative de lecture ou d'écriture en dehors du disque « %s »" - -#: grub-core/disk/i386/pc/biosdisk.c:491 grub-core/disk/i386/pc/biosdisk.c:611 -#: grub-core/disk/scsi.c:726 -msgid "cannot write to CD-ROM" -msgstr "impossible d'écrire sur le CD" - -#: grub-core/disk/i386/pc/biosdisk.c:662 -msgid "" -"Native disk drivers are in use. Refusing to use firmware disk interface." -msgstr "" -"Utilisation des pilotes natifs du disque. Refus d'utiliser l'interface " -"disque du microprogramme (« firmware »)." - -#. TRANSLATORS: it's a partition for embedding, -#. not a partition embed into something. GRUB -#. install tools put core.img into a place -#. usable for bootloaders (called generically -#. "embedding zone") and this operation is -#. called "embedding". -#: grub-core/disk/ldm.c:1015 -msgid "your LDM Embedding Partition is too small; embedding won't be possible" -msgstr "" -"la partition LDM d'embarquage est trop petite ; l'embarquage ne sera pas " -"possible" - -#. TRANSLATORS: it's a partition for embedding, -#. not a partition embed into something. -#: grub-core/disk/ldm.c:1033 -msgid "this LDM has no Embedding Partition; embedding won't be possible" -msgstr "" -"ce LDM n'a pas de partition d'embarquage ; l'embarquage ne sera pas possible" - -#. TRANSLATORS: The disk is simply removed from the list of available ones, -#. not wiped, avoid to scare user. -#: grub-core/disk/loopback.c:45 -msgid "Delete the specified loopback drive." -msgstr "Supprimer le périphérique boucle indiqué." - -#: grub-core/disk/loopback.c:237 -msgid "[-d] DEVICENAME FILE." -msgstr "[-d] NOM_PÉRIPH FICHIER." - -#. TRANSLATORS: The file itself is not destroyed -#. or transformed into drive. -#: grub-core/disk/loopback.c:240 -msgid "Make a virtual drive from a file." -msgstr "Faire un disque virtuel à partir d'un fichier." - -#: grub-core/efiemu/i386/loadcore32.c:111 -#: grub-core/efiemu/i386/loadcore64.c:125 grub-core/kern/arm/dl.c:256 -#: grub-core/kern/arm64/dl.c:187 grub-core/kern/i386/dl.c:75 -#: grub-core/kern/ia64/dl.c:140 grub-core/kern/mips/dl.c:258 -#: grub-core/kern/powerpc/dl.c:163 grub-core/kern/riscv/dl.c:334 -#: grub-core/kern/sparc64/dl.c:180 grub-core/kern/x86_64/dl.c:110 -#: util/grub-mkimagexx.c:756 util/grub-mkimagexx.c:881 -#: util/grub-mkimagexx.c:945 util/grub-mkimagexx.c:1026 -#: util/grub-mkimagexx.c:1120 util/grub-mkimagexx.c:1222 -#: util/grub-mkimagexx.c:1413 util/grub-mkimagexx.c:1628 -#: util/grub-mkimagexx.c:1665 util/grub-mkimagexx.c:1697 -#: util/grub-mkimagexx.c:1767 util/grub-mkimagexx.c:1797 -#, c-format -msgid "relocation 0x%x is not implemented yet" -msgstr "la délocalisation 0x%x n'est pas encore implémentée" - -#: grub-core/efiemu/loadcore.c:200 grub-core/efiemu/loadcore.c:237 -#: grub-core/loader/i386/bsdXX.c:317 util/grub-mkimagexx.c:2360 -msgid "no symbol table" -msgstr "aucune table de symbole" - -#: grub-core/efiemu/loadcore.c:346 grub-core/kern/dl.c:609 -#: grub-core/loader/ia64/efi/linux.c:345 grub-core/loader/mips/linux.c:248 -#: grub-core/loader/multiboot_elfxx.c:76 -#: grub-core/loader/powerpc/ieee1275/linux.c:280 -#: grub-core/loader/sparc64/ieee1275/linux.c:320 -msgid "this ELF file is not of the right type" -msgstr "ce fichier ELF n'est pas du type adéquat" - -#: grub-core/efiemu/main.c:313 -msgid "Load and initialize EFI emulator." -msgstr "Charger et initialiser l'émulateur EFI." - -#: grub-core/efiemu/main.c:317 -msgid "Finalize loading of EFI emulator." -msgstr "Terminer le chargement de l'émulateur EFI." - -#: grub-core/efiemu/main.c:320 -msgid "Unload EFI emulator." -msgstr "Décharger l'émulateur EFI." - -#: grub-core/efiemu/symbols.c:92 grub-core/kern/dl.c:376 -#, c-format -msgid "symbol `%s' not found" -msgstr "symbole « %s » non disponible" - -#: grub-core/font/font_cmd.c:52 -msgid "Loaded fonts:" -msgstr "Polices chargées :" - -#: grub-core/font/font_cmd.c:74 -msgid "FILE..." -msgstr "FICHIER ..." - -#: grub-core/font/font_cmd.c:75 -msgid "Specify one or more font files to load." -msgstr "Indiquer un ou plusieurs fichiers de police à charger." - -#: grub-core/font/font_cmd.c:78 -msgid "List the loaded fonts." -msgstr "Afficher les polices chargées." - -#: grub-core/fs/archelp.c:216 grub-core/fs/archelp.c:278 -#: grub-core/fs/btrfs.c:1815 grub-core/fs/fshelp.c:227 grub-core/fs/jfs.c:736 -#: grub-core/fs/minix.c:369 grub-core/fs/ufs.c:454 -msgid "too deep nesting of symlinks" -msgstr "trop de niveaux de liens symboliques" - -#: grub-core/fs/bfs.c:228 grub-core/fs/fshelp.c:368 grub-core/fs/minix.c:270 -#: grub-core/kern/file.c:156 -msgid "attempt to read past the end of file" -msgstr "tentative de lecture après la fin du fichier" - -#: grub-core/fs/btrfs.c:1698 grub-core/fs/btrfs.c:1957 -#: grub-core/fs/fshelp.c:189 grub-core/fs/fshelp.c:309 grub-core/fs/jfs.c:431 -#: grub-core/fs/minix.c:414 grub-core/fs/minix.c:562 -#: grub-core/fs/reiserfs.c:732 grub-core/fs/ufs.c:531 grub-core/fs/ufs.c:671 -#: grub-core/fs/zfs/zfs.c:2831 grub-core/fs/zfs/zfs.c:4247 -msgid "not a directory" -msgstr "pas un répertoire" - -#: grub-core/fs/btrfs.c:2063 grub-core/fs/fshelp.c:307 grub-core/fs/jfs.c:835 -#: grub-core/fs/zfs/zfs.c:3801 -msgid "not a regular file" -msgstr "pas un fichier normal" - -#: grub-core/fs/btrfs.c:2157 grub-core/fs/zfs/zfs.c:4333 -#: grub-core/partmap/msdos.c:400 -msgid "your core.img is unusually large. It won't fit in the embedding area" -msgstr "" -"core.img est exceptionnellement grand. Il ne tiendra pas dans la zone " -"d'embarquage" - -#: grub-core/fs/fshelp.c:281 grub-core/fs/minix.c:630 grub-core/fs/ufs.c:661 -#: grub-core/fs/ufs.c:757 grub-core/kern/fs.c:168 grub-core/kern/fs.c:180 -#, c-format -msgid "invalid file name `%s'" -msgstr "nom de fichier « %s » incorrect" - -#: grub-core/fs/zfs/zfs.c:453 -msgid "checksum verification failed" -msgstr "échec de vérification de somme de contrôle" - -#: grub-core/fs/zfs/zfs.c:1465 -msgid "couldn't find a necessary member device of multi-device filesystem" -msgstr "" -"impossible de trouver un périphérique membre nécessaire d'un système de " -"fichiers multipériphérique" - -#: grub-core/fs/zfs/zfscrypt.c:292 -msgid "no decryption key available" -msgstr "pas de clef de déchiffrement disponible" - -#: grub-core/fs/zfs/zfscrypt.c:304 -msgid "MAC verification failed" -msgstr "échec de vérification de MAC" - -#: grub-core/fs/zfs/zfscrypt.c:413 -msgid "Assume input is raw." -msgstr "Entrée supposée brute." - -#: grub-core/fs/zfs/zfscrypt.c:414 -msgid "Assume input is hex." -msgstr "Entrée supposée hexadécimale." - -#: grub-core/fs/zfs/zfscrypt.c:415 -msgid "Assume input is passphrase." -msgstr "Mot de passe supposé en entrée." - -#: grub-core/fs/zfs/zfscrypt.c:437 util/grub-fstest.c:553 util/grub-mount.c:483 -msgid "Enter ZFS password: " -msgstr "Entrez le mot de passe ZFS : " - -#: grub-core/fs/zfs/zfscrypt.c:476 -msgid "[-h|-p|-r] [FILE]" -msgstr "[-h|-p|-r] [FICHIER]" - -#: grub-core/fs/zfs/zfscrypt.c:477 -msgid "Import ZFS wrapping key stored in FILE." -msgstr "Importer la clef de chiffrement ZFS stockée dans FICHIER." - -#: grub-core/fs/zfs/zfsinfo.c:51 -msgid "Virtual device is removed" -msgstr "Le périphérique virtuel est retiré" - -#: grub-core/fs/zfs/zfsinfo.c:57 -msgid "Virtual device is faulted" -msgstr "Le périphérique virtuel est en défaut" - -#: grub-core/fs/zfs/zfsinfo.c:63 -msgid "Virtual device is offline" -msgstr "Le périphérique virtuel est hors ligne" - -#. TRANSLATORS: degraded doesn't mean broken but that some of -#. component are missing but virtual device as whole is still usable. -#: grub-core/fs/zfs/zfsinfo.c:70 -msgid "Virtual device is degraded" -msgstr "Le périphérique virtuel est dégradé" - -#: grub-core/fs/zfs/zfsinfo.c:73 -msgid "Virtual device is online" -msgstr "Le périphérique virtuel est en ligne" - -#: grub-core/fs/zfs/zfsinfo.c:89 -msgid "Incorrect virtual device: no type available" -msgstr "Périphérique virtuel incorrect : pas de type disponible" - -#. TRANSLATORS: The virtual devices form a tree (in graph-theoretical -#. sense). The nodes like mirror or raidz have children: member devices. -#. The "real" devices which actually store data are called "leafs" -#. (again borrowed from graph theory) and can be either disks -#. (or partitions) or files. -#: grub-core/fs/zfs/zfsinfo.c:105 -msgid "Leaf virtual device (file or disk)" -msgstr "Périphérique virtuel feuille (fichier ou disque)" - -#: grub-core/fs/zfs/zfsinfo.c:113 -msgid "Bootpath: unavailable\n" -msgstr "Chemin d'amorçage : indisponible\n" - -#: grub-core/fs/zfs/zfsinfo.c:115 -#, c-format -msgid "Bootpath: %s\n" -msgstr "Chemin d'amorçage : %s\n" - -#: grub-core/fs/zfs/zfsinfo.c:120 -msgid "Path: unavailable" -msgstr "Chemin : indisponible" - -#: grub-core/fs/zfs/zfsinfo.c:122 -#, c-format -msgid "Path: %s\n" -msgstr "Chemin : %s\n" - -#: grub-core/fs/zfs/zfsinfo.c:127 -msgid "Devid: unavailable" -msgstr "Identifiant de périphérique : indisponible" - -#: grub-core/fs/zfs/zfsinfo.c:129 -#, c-format -msgid "Devid: %s\n" -msgstr "Identifiant de périphérique : %s\n" - -#: grub-core/fs/zfs/zfsinfo.c:148 -msgid "This VDEV is a mirror" -msgstr "Ce VDEV est un miroir" - -#: grub-core/fs/zfs/zfsinfo.c:153 -#, c-format -msgid "This VDEV is a RAIDZ%llu\n" -msgstr "Ce VDEV est un RAIDZ%llu\n" - -#: grub-core/fs/zfs/zfsinfo.c:158 -msgid "Incorrect VDEV" -msgstr "VDEV incorrect" - -#: grub-core/fs/zfs/zfsinfo.c:161 -#, c-format -msgid "VDEV with %d children\n" -msgstr "VDEV avec %d enfants\n" - -#. TRANSLATORS: it's the element carying the number %d, not -#. total element number. And the number itself is fine, -#. only the element isn't. -#. -#: grub-core/fs/zfs/zfsinfo.c:177 -#, c-format -msgid "VDEV element number %d isn't correct\n" -msgstr "L'élément %d du VDEV n'est pas correct\n" - -#. TRANSLATORS: it's the element carying the number %d, not -#. total element number. This is used in enumeration -#. "Element number 1", "Element number 2", ... -#: grub-core/fs/zfs/zfsinfo.c:184 -#, c-format -msgid "VDEV element number %d:\n" -msgstr "Élément %d du VDEV :\n" - -#: grub-core/fs/zfs/zfsinfo.c:193 -#, c-format -msgid "Unknown virtual device type: %s\n" -msgstr "Type de périphérique virtuel inconnu : %s\n" - -#. TRANSLATORS: Here we speak about ZFS pools it's semi-marketing, -#. semi-technical term by Sun/Oracle and should be translated in sync with -#. other ZFS-related software and documentation. -#: grub-core/fs/zfs/zfsinfo.c:254 -msgid "Pool state: active" -msgstr "État du pool : actif" - -#: grub-core/fs/zfs/zfsinfo.c:255 -msgid "Pool state: exported" -msgstr "État du pool : exporté" - -#: grub-core/fs/zfs/zfsinfo.c:256 -msgid "Pool state: destroyed" -msgstr "État du pool : détruit" - -#: grub-core/fs/zfs/zfsinfo.c:257 -msgid "Pool state: reserved for hot spare" -msgstr "État du pool : réservé pour échange à chaud" - -#: grub-core/fs/zfs/zfsinfo.c:258 -msgid "Pool state: level 2 ARC device" -msgstr "État du pool : périphérique ARC niveau 2" - -#: grub-core/fs/zfs/zfsinfo.c:259 -msgid "Pool state: uninitialized" -msgstr "État du pool : non initialisé" - -#: grub-core/fs/zfs/zfsinfo.c:260 -msgid "Pool state: unavailable" -msgstr "État du pool : indisponible" - -#: grub-core/fs/zfs/zfsinfo.c:261 -msgid "Pool state: potentially active" -msgstr "État du pool : potentiellement actif" - -#: grub-core/fs/zfs/zfsinfo.c:306 -msgid "Pool name: unavailable" -msgstr "Nom du pool : indisponible" - -#: grub-core/fs/zfs/zfsinfo.c:308 -#, c-format -msgid "Pool name: %s\n" -msgstr "Nom du pool : %s\n" - -#: grub-core/fs/zfs/zfsinfo.c:313 -msgid "Pool GUID: unavailable" -msgstr "GUID du pool : indisponible" - -#: grub-core/fs/zfs/zfsinfo.c:315 -#, c-format -msgid "Pool GUID: %016llx\n" -msgstr "GUID du pool : %016llx\n" - -#: grub-core/fs/zfs/zfsinfo.c:320 -msgid "Unable to retrieve pool state" -msgstr "Impossible de récupérer l'état du pool" - -#: grub-core/fs/zfs/zfsinfo.c:322 -msgid "Unrecognized pool state" -msgstr "État du pool non reconnu" - -#. TRANSLATORS: There are undetermined number of virtual devices -#. in a device tree, not just one. -#. -#: grub-core/fs/zfs/zfsinfo.c:332 -msgid "No virtual device tree available" -msgstr "Pas d'arborescence de périphériques virtuels disponible" - -#: grub-core/fs/zfs/zfsinfo.c:431 -msgid "Print ZFS info about DEVICE." -msgstr "Afficher les renseignements ZFS à propos de PÉRIPHÉRIQUE." - -#: grub-core/fs/zfs/zfsinfo.c:433 -msgid "FILESYSTEM [VARIABLE]" -msgstr "SYS_FIC [VARIABLE]" - -#: grub-core/fs/zfs/zfsinfo.c:434 -msgid "Print ZFS-BOOTFSOBJ or store it into VARIABLE" -msgstr "Afficher ZFS-BOOTFSOBJ ou la sauver dans VARIABLE" - -#. TRANSLATORS: at this position GRUB waits for the user to do an action -#. in remote debugger, namely to tell it to establish connection. -#: grub-core/gdb/gdb.c:48 -msgid "Now connect the remote debugger, please." -msgstr "Veuillez connecter le débogueur distant maintenant." - -#. TRANSLATORS: GDB stub is a small part of -#. GDB functionality running on local host -#. which allows remote debugger to -#. connect to it. -#: grub-core/gdb/gdb.c:84 -msgid "Start GDB stub on given port" -msgstr "Démarrer la session GDB sur le port indiqué." - -#. TRANSLATORS: this refers to triggering -#. a breakpoint so that the user will land -#. into GDB. -#: grub-core/gdb/gdb.c:89 -msgid "Break into GDB" -msgstr "Pause dans GDB" - -#: grub-core/gdb/gdb.c:91 -msgid "Stop GDB stub" -msgstr "Arrêter la session GDB" - -#: grub-core/gettext/gettext.c:85 -msgid "premature end of file" -msgstr "fin prématurée de fichier" - -#. TRANSLATORS: It refers to passing the string through gettext. -#. So it's "translate" in the same meaning as in what you're -#. doing now. -#. -#: grub-core/gettext/gettext.c:525 -msgid "Translates the string with the current settings." -msgstr "Traduit la chaîne en fonction de la configuration actuelle." - -#: grub-core/gfxmenu/gui_label.c:186 grub-core/normal/menu_text.c:184 -msgid "" -"Press enter to boot the selected OS, `e' to edit the commands before booting " -"or `c' for a command-line. ESC to return previous menu." -msgstr "" -"Appuyez sur Entrée pour démarrer le système sélectionné, « e » pour éditer " -"les commandes avant de démarrer ou « c » pour obtenir une invite de " -"commandes. Échap pour revenir au menu précédent." - -#: grub-core/gfxmenu/gui_label.c:190 grub-core/normal/menu_text.c:192 -msgid "" -"Press enter to boot the selected OS, `e' to edit the commands before booting " -"or `c' for a command-line." -msgstr "" -"Appuyez sur Entrée pour démarrer le système sélectionné, « e » pour éditer " -"les commandes avant de démarrer ou « c » pour obtenir une invite de " -"commandes." - -#: grub-core/gfxmenu/gui_label.c:194 -msgid "enter: boot, `e': options, `c': cmd-line" -msgstr "Entrée : démarrage, « e » : option, « c » : invite de commandes" - -#: grub-core/gfxmenu/gui_progress_bar.c:339 grub-core/normal/menu_text.c:446 -#, c-format -msgid "The highlighted entry will be executed automatically in %ds." -msgstr "L'entrée sélectionnée sera exécutée automatiquement dans %d s." - -#. TRANSLATORS: 's' stands for seconds. -#. It's a standalone timeout notification. -#. Please use the short form in your language. -#: grub-core/gfxmenu/gui_progress_bar.c:344 -#, c-format -msgid "%ds remaining." -msgstr "Plus que %d s." - -#. TRANSLATORS: 's' stands for seconds. -#. It's a standalone timeout notification. -#. Please use the shortest form available in you language. -#: grub-core/gfxmenu/gui_progress_bar.c:349 grub-core/normal/menu_text.c:444 -#: grub-core/normal/menu_text.c:462 -#, c-format -msgid "%ds" -msgstr "%d s" - -#: grub-core/gfxmenu/view.c:103 -msgid "GRUB Boot Menu" -msgstr "Menu de démarrage GRUB" - -#: grub-core/hello/hello.c:36 -msgid "Hello World" -msgstr "Bonjour à tous" - -#: grub-core/hello/hello.c:45 -msgid "Say `Hello World'." -msgstr "Dire « Bonjour à tous »." - -#: grub-core/io/gzio.c:409 grub-core/kern/file.c:210 -msgid "attempt to seek outside of the file" -msgstr "tentative de recherche en dehors du fichier" - -#. TRANSLATORS: It's about given file having some strange format, not -#. complete lack of gzip support. -#: grub-core/io/gzio.c:1228 grub-core/io/gzio.c:1237 grub-core/io/gzio.c:1244 -msgid "unsupported gzip format" -msgstr "format gzip non pris en charge" - -#: grub-core/io/lzopio.c:511 -msgid "lzop file corrupted" -msgstr "fichier lzop corrompu" - -#: grub-core/io/xzio.c:278 -msgid "xz file corrupted or unsupported block options" -msgstr "fichier XZ corrompu ou options de bloc non prises en charge" - -#: grub-core/kern/arm/dl.c:277 grub-core/kern/arm64/dl.c:44 -#: grub-core/kern/i386/dl.c:36 grub-core/kern/ia64/dl.c:41 -#: grub-core/kern/mips/dl.c:48 grub-core/kern/powerpc/dl.c:36 -#: grub-core/kern/riscv/dl.c:47 grub-core/kern/sparc64/dl.c:36 -#: grub-core/kern/x86_64/dl.c:36 grub-core/loader/i386/bsd.c:1445 -#: grub-core/loader/i386/bsdXX.c:49 grub-core/loader/ia64/efi/linux.c:341 -#: grub-core/loader/mips/linux.c:298 grub-core/loader/multiboot.c:232 -#: grub-core/loader/multiboot_elfxx.c:73 -#: grub-core/loader/powerpc/ieee1275/linux.c:294 -#: grub-core/loader/sparc64/ieee1275/linux.c:331 -msgid "invalid arch-dependent ELF magic" -msgstr "numéro magique ELF dépendant de l'architecture incorrect" - -#: grub-core/kern/corecmd.c:178 -msgid "[ENVVAR=VALUE]" -msgstr "[VAR_ENV=VALEUR]" - -#: grub-core/kern/corecmd.c:179 -msgid "Set an environment variable." -msgstr "Définir une variable d'environnement." - -#: grub-core/kern/corecmd.c:183 -msgid "ENVVAR" -msgstr "VAR_ENV" - -#: grub-core/kern/corecmd.c:184 -msgid "Remove an environment variable." -msgstr "Retirer une variable d'environnement." - -#: grub-core/kern/corecmd.c:186 -msgid "[ARG]" -msgstr "[ARG]" - -#: grub-core/kern/corecmd.c:186 -msgid "List devices or files." -msgstr "Afficher les périphériques ou fichiers." - -#: grub-core/kern/corecmd.c:188 -msgid "Insert a module." -msgstr "Charger un module." - -#: grub-core/kern/disk.c:236 grub-core/net/net.c:1390 -#, c-format -msgid "disk `%s' not found" -msgstr "disque « %s » non disponible" - -#: grub-core/kern/disk_common.c:27 -msgid "attempt to read or write outside of partition" -msgstr "tentative de lecture ou d'écriture en dehors de la partition" - -#: grub-core/kern/dl.c:212 grub-core/kern/elf.c:61 grub-core/kern/elf.c:79 -#: grub-core/loader/i386/bsdXX.c:46 grub-core/loader/ia64/efi/linux.c:335 -#: grub-core/loader/multiboot_elfxx.c:69 -msgid "invalid arch-independent ELF magic" -msgstr "numéro magique ELF indépendant de l'architecture incorrect" - -#. TRANSLATORS: it refers to the lack of free slots. -#: grub-core/kern/emu/hostdisk.c:208 grub-core/kern/emu/hostdisk.c:466 -msgid "device count exceeds limit" -msgstr "le nombre de périphériques dépasse la limite" - -#: grub-core/kern/emu/hostdisk.c:342 util/editenv.c:54 util/grub-editenv.c:197 -#: util/grub-fstest.c:191 util/grub-mkfont.c:796 util/misc.c:114 -#: util/misc.c:129 util/setup.c:788 -#, c-format -msgid "cannot write to `%s': %s" -msgstr "impossible d'écrire sur « %s » : %s" - -#. TRANSLATORS: Only one entry is ignored. However the suggestion -#. is to correct/delete the whole file. -#. device.map is a file indicating which -#. devices are available at boot time. Fedora populated it with -#. entries like (hd0,1) /dev/sda1 which would mean that every -#. partition is a separate disk for BIOS. Such entries were -#. inactive in GRUB due to its bug which is now gone. Without -#. this additional check these entries would be harmful now. -#. -#: grub-core/kern/emu/hostdisk.c:503 -#, c-format -msgid "" -"the device.map entry `%s' is invalid. Ignoring it. Please correct or delete " -"your device.map" -msgstr "" -"L'entrée « %s » de device.map est incorrecte. Elle est ignorée. Veuillez " -"corriger ou supprimer device.map" - -#. TRANSLATORS: device.map is a filename. Not to be translated. -#. device.map specifies disk correspondance overrides. Previously -#. one could create any kind of device name with this. Due to -#. some problems we decided to limit it to just a handful -#. possibilities. -#: grub-core/kern/emu/hostdisk.c:555 -#, c-format -msgid "" -"the drive name `%s' in device.map is incorrect. Using %s instead. Please use " -"the form [hfc]d[0-9]* (E.g. `hd0' or `cd')" -msgstr "" -"Le nom de périphérique « %s » dans device.map est incorrect. Utilisation de " -"%s à la place. Veuillez utiliser le format [hfc]d[0-9]* (par exemple « hd0 » " -"ou « cd »)" - -#: grub-core/kern/emu/hostfs.c:76 grub-core/kern/emu/hostfs.c:109 -#, c-format -msgid "can't open `%s': %s" -msgstr "impossible d'ouvrir « %s » : %s" - -#: grub-core/kern/emu/main.c:99 util/grub-fstest.c:516 util/grub-mount.c:452 -msgid "DEVICE_NAME" -msgstr "NOM_PÉRIPH" - -#: grub-core/kern/emu/main.c:99 grub-core/loader/i386/bsd.c:136 -#: grub-core/loader/i386/bsd.c:169 util/grub-fstest.c:516 util/grub-mount.c:452 -msgid "Set root device." -msgstr "Définir le périphérique racine." - -#. TRANSLATORS: There are many devices in device map. -#: grub-core/kern/emu/main.c:102 util/grub-probe.c:733 util/grub-setup.c:85 -#, c-format -msgid "use FILE as the device map [default=%s]" -msgstr "utiliser FICHIER comme carte de périphériques [%s par défaut]" - -#. TRANSLATORS: There are many devices in device map. -#: grub-core/kern/emu/main.c:105 -msgid "use FILE as memdisk" -msgstr "utiliser FICHIER comme disque mémoire" - -#: grub-core/kern/emu/main.c:107 util/grub-setup.c:83 -#, c-format -msgid "use GRUB files in the directory DIR [default=%s]" -msgstr "utiliser les fichiers GRUB dans le répertoire RÉP [%s par défaut]" - -#: grub-core/kern/emu/main.c:108 include/grub/util/install.h:67 -#: util/grub-editenv.c:58 util/grub-fstest.c:525 util/grub-glue-efi.c:58 -#: util/grub-macbless.c:104 util/grub-mkfont.c:962 util/grub-mkimage.c:84 -#: util/grub-mklayout.c:56 util/grub-mount.c:458 util/grub-probe.c:735 -#: util/grub-render-label.c:74 util/grub-script-check.c:52 util/grub-setup.c:90 -#: util/grub-syslinux2cfg.c:78 -msgid "print verbose messages." -msgstr "afficher les messages bavards." - -#: grub-core/kern/emu/main.c:109 grub-core/lib/gnulib/argp-parse.c:85 -msgid "SECS" -msgstr "SEC" - -#: grub-core/kern/emu/main.c:109 -msgid "wait until a debugger will attach" -msgstr "attendre qu'un débogueur soit attaché" - -#: grub-core/kern/emu/main.c:171 util/grub-macbless.c:143 -#: util/grub-mkrelpath.c:61 util/grub-probe.c:874 util/grub-script-check.c:75 -#: util/grub-setup.c:203 -#, c-format -msgid "Unknown extra argument `%s'." -msgstr "Argument facultatif « %s » inconnu." - -#: grub-core/kern/emu/main.c:185 -msgid "GRUB emulator." -msgstr "Émulateur GRUB" - -#: grub-core/kern/emu/main.c:213 util/grub-editenv.c:262 -#: util/grub-glue-efi.c:110 util/grub-macbless.c:173 util/grub-mkfont.c:1177 -#: util/grub-mkimage.c:266 util/grub-mklayout.c:494 -#: util/grub-mkpasswd-pbkdf2.c:132 util/grub-mkrelpath.c:96 -#: util/grub-probe.c:863 util/grub-render-label.c:152 -#: util/grub-script-check.c:160 util/grub-setup.c:262 -#: util/grub-syslinux2cfg.c:163 -msgid "Error in parsing command line arguments\n" -msgstr "Erreur d'analyse des arguments de la ligne de commandes\n" - -#. TRANSLATORS: In this case GRUB tells user what he has to do. -#: grub-core/kern/emu/main.c:248 -#, c-format -msgid "Run `gdb %s %d', and set ARGS.HOLD to zero.\n" -msgstr "Exécutez « gdb %s %d », et configurez ARGS.HOLD à zéro.\n" - -#: grub-core/kern/emu/misc.c:48 -#, c-format -msgid "%s: warning:" -msgstr "%s : attention :" - -#: grub-core/kern/emu/misc.c:64 -#, c-format -msgid "%s: info:" -msgstr "%s : information :" - -#: grub-core/kern/emu/misc.c:79 util/grub-fstest.c:567 util/grub-fstest.c:576 -#: util/grub-mount.c:497 util/grub-mount.c:505 -#, c-format -msgid "%s: error:" -msgstr "%s : erreur :" - -#: grub-core/kern/emu/misc.c:176 -#, c-format -msgid "file `%s' is too big" -msgstr "le fichier « %s » est trop grand" - -#: grub-core/kern/fs.c:120 -msgid "unknown filesystem" -msgstr "système de fichiers inconnu" - -#: grub-core/kern/mips/arc/init.c:273 grub-core/kern/mips/loongson/init.c:301 -msgid "Shutdown failed" -msgstr "Échec d'arrêt" - -#: grub-core/kern/mips/arc/init.c:285 -msgid "Exit failed" -msgstr "Échec de sortie" - -#: grub-core/kern/misc.c:351 grub-core/kern/misc.c:408 include/grub/misc.h:269 -#: include/grub/misc.h:278 -msgid "overflow is detected" -msgstr "un dépassement est détectée" - -#: grub-core/kern/partition.c:51 grub-core/partmap/bsdlabel.c:108 -#, c-format -msgid "Discarding improperly nested partition (%s,%s,%s%d)" -msgstr "Abandon de partition imbriquée de façon incorrecte (%s,%s,%s%d)" - -#: grub-core/kern/rescue_parser.c:73 util/grub-editenv.c:292 -#, c-format -msgid "Unknown command `%s'.\n" -msgstr "Commande « %s » inconnue.\n" - -#: grub-core/lib/arg.c:31 -msgid "Display this help and exit." -msgstr "Afficher cette aide et quitter." - -#: grub-core/lib/arg.c:33 -msgid "Display the usage of this command and exit." -msgstr "Afficher l'aide de cette commande et quitter." - -#: grub-core/lib/arg.c:362 -#, c-format -msgid "missing mandatory option for `%s'" -msgstr "option obligatoire pour « %s » manquante" - -#: grub-core/lib/arg.c:384 -#, c-format -msgid "the argument `%s' requires an integer" -msgstr "l'argument « %s » nécessite un entier" - -#: grub-core/lib/arg.c:407 -#, c-format -msgid "" -"a value was assigned to the argument `%s' while it doesn't require an " -"argument" -msgstr "" -"une valeur a été affectée à l'argument « %s » alors qu'il n'a pas besoin " -"d'argument" - -#: grub-core/lib/backtrace.c:64 -msgid "Print backtrace." -msgstr "Afficher la pile d'appel." - -#: grub-core/lib/gnulib/argp-help.c:149 -#, c-format -msgid "ARGP_HELP_FMT: %s value is less than or equal to %s" -msgstr "FMT_AIDE_ARGP : la valeur %s est inférieure ou égale à %s" - -#: grub-core/lib/gnulib/argp-help.c:225 -#, c-format -msgid "%.*s: ARGP_HELP_FMT parameter requires a value" -msgstr "%.*s : le paramètre FMT_AIDE_ARGP nécessite une valeur" - -#: grub-core/lib/gnulib/argp-help.c:235 -#, c-format -msgid "%.*s: Unknown ARGP_HELP_FMT parameter" -msgstr "%.*s : paramètre FMT_AIDE_ARGP inconnu" - -#: grub-core/lib/gnulib/argp-help.c:248 -#, c-format -msgid "Garbage in ARGP_HELP_FMT: %s" -msgstr "Rien d'utilisable dans FMT_AIDE_ARGP : %s" - -#: grub-core/lib/gnulib/argp-help.c:1229 -msgid "" -"Mandatory or optional arguments to long options are also mandatory or " -"optional for any corresponding short options." -msgstr "" -"Les arguments obligatoires ou facultatifs des options longues sont aussi " -"obligatoires ou facultatifs pour les options courtes correspondantes." - -#: grub-core/lib/gnulib/argp-help.c:1620 -msgid " or: " -msgstr " ou : " - -#: grub-core/lib/gnulib/argp-help.c:1632 -msgid " [OPTION...]" -msgstr " [OPTION ...]" - -#: grub-core/lib/gnulib/argp-help.c:1659 -#, c-format -msgid "Try '%s --help' or '%s --usage' for more information.\n" -msgstr "" -"Utilisez « %s --help » ou « %s --usage » pour obtenir de plus amples " -"renseignements.\n" - -#: grub-core/lib/gnulib/argp-help.c:1687 -#, c-format -msgid "Report bugs to %s.\n" -msgstr "Signaler les bogues à %s.\n" - -#: grub-core/lib/gnulib/argp-help.c:1888 grub-core/lib/gnulib/error.c:195 -msgid "Unknown system error" -msgstr "Erreur système inconnue" - -#: grub-core/lib/gnulib/argp-parse.c:81 -msgid "give this help list" -msgstr "afficher cette liste d'aide" - -#: grub-core/lib/gnulib/argp-parse.c:82 -msgid "give a short usage message" -msgstr "afficher un court message d'utilisation" - -#: grub-core/lib/gnulib/argp-parse.c:83 util/grub-mkfont.c:946 -msgid "NAME" -msgstr "NOM" - -#: grub-core/lib/gnulib/argp-parse.c:84 -msgid "set the program name" -msgstr "définir le nom du programme" - -#: grub-core/lib/gnulib/argp-parse.c:86 -msgid "hang for SECS seconds (default 3600)" -msgstr "suspendre pendant SEC secondes (3600 par défaut)" - -#: grub-core/lib/gnulib/argp-parse.c:143 -msgid "print program version" -msgstr "afficher la version du programme" - -#: grub-core/lib/gnulib/argp-parse.c:160 -msgid "(PROGRAM ERROR) No version known!?" -msgstr "(Erreur du programme) version inconnue." - -#: grub-core/lib/gnulib/argp-parse.c:613 -#, c-format -msgid "%s: Too many arguments\n" -msgstr "%s : trop d'arguments\n" - -#: grub-core/lib/gnulib/argp-parse.c:759 -msgid "(PROGRAM ERROR) Option should have been recognized!?" -msgstr "(Erreur du programme) l'option aurait due être reconnue." - -#: grub-core/lib/gnulib/getopt.c:278 -#, c-format -msgid "%s: option '%s%s' is ambiguous\n" -msgstr "%s : l'option « %s%s » est ambiguë\n" - -#: grub-core/lib/gnulib/getopt.c:284 -#, c-format -msgid "%s: option '%s%s' is ambiguous; possibilities:" -msgstr "%s : l'option « %s%s » est ambiguë ; possibilités :" - -#: grub-core/lib/gnulib/getopt.c:319 -#, c-format -msgid "%s: unrecognized option '%s%s'\n" -msgstr "%s : option « %s%s » non reconnue\n" - -#: grub-core/lib/gnulib/getopt.c:345 -#, c-format -msgid "%s: option '%s%s' doesn't allow an argument\n" -msgstr "%s : l'option « %s%s » n'accepte pas d'argument\n" - -#: grub-core/lib/gnulib/getopt.c:360 -#, c-format -msgid "%s: option '%s%s' requires an argument\n" -msgstr "%s : l'option « %s%s » nécessite un argument\n" - -#: grub-core/lib/gnulib/getopt.c:621 -#, c-format -msgid "%s: invalid option -- '%c'\n" -msgstr "%s : option incorrecte — « %c »\n" - -#: grub-core/lib/gnulib/getopt.c:636 grub-core/lib/gnulib/getopt.c:682 -#, c-format -msgid "%s: option requires an argument -- '%c'\n" -msgstr "%s : l'option nécessite un argument — « %c »\n" - -#: grub-core/lib/gnulib/openat-die.c:38 -#, c-format -msgid "unable to record current working directory" -msgstr "impossible d'enregistrer le répertoire de travail actuel" - -#: grub-core/lib/gnulib/openat-die.c:57 -#, c-format -msgid "failed to return to initial working directory" -msgstr "impossible de retourner vers le répertoire de travail initial" - -#: grub-core/lib/gnulib/regcomp.c:135 grub-core/osdep/aros/hostdisk.c:523 -msgid "Success" -msgstr "Réussite" - -#: grub-core/lib/gnulib/regcomp.c:138 -msgid "No match" -msgstr "Pas de correspondance" - -#: grub-core/lib/gnulib/regcomp.c:141 -msgid "Invalid regular expression" -msgstr "Expression rationnelle incorrecte" - -#: grub-core/lib/gnulib/regcomp.c:144 -msgid "Invalid collation character" -msgstr "Caractère de collation incorrect" - -#: grub-core/lib/gnulib/regcomp.c:147 -msgid "Invalid character class name" -msgstr "Nom de classe de caractères incorrect" - -#: grub-core/lib/gnulib/regcomp.c:150 -msgid "Trailing backslash" -msgstr "Barre oblique finale" - -#: grub-core/lib/gnulib/regcomp.c:153 -msgid "Invalid back reference" -msgstr "Référence arrière incorrecte" - -#: grub-core/lib/gnulib/regcomp.c:156 -msgid "Unmatched [, [^, [:, [., or [=" -msgstr "[, [^, [:, [. ou [= sans correspondance" - -#: grub-core/lib/gnulib/regcomp.c:159 -msgid "Unmatched ( or \\(" -msgstr "( ou \\( sans correspondance" - -#: grub-core/lib/gnulib/regcomp.c:162 -msgid "Unmatched \\{" -msgstr "\\{ sans correspondance" - -#: grub-core/lib/gnulib/regcomp.c:165 -msgid "Invalid content of \\{\\}" -msgstr "Contenu de \\{\\} incorrect" - -#: grub-core/lib/gnulib/regcomp.c:168 -msgid "Invalid range end" -msgstr "Fin d'intervalle incorrecte" - -#: grub-core/lib/gnulib/regcomp.c:171 -msgid "Memory exhausted" -msgstr "Mémoire épuisée" - -#: grub-core/lib/gnulib/regcomp.c:174 -msgid "Invalid preceding regular expression" -msgstr "Expression rationnelle précédente incorrecte" - -#: grub-core/lib/gnulib/regcomp.c:177 -msgid "Premature end of regular expression" -msgstr "Fin prématurée d'expression rationnelle" - -#: grub-core/lib/gnulib/regcomp.c:180 -msgid "Regular expression too big" -msgstr "Expression rationnelle trop grosse" - -#: grub-core/lib/gnulib/regcomp.c:183 -msgid "Unmatched ) or \\)" -msgstr ") ou \\) sans correspondance" - -#: grub-core/lib/gnulib/regcomp.c:531 -msgid "unknown regexp error" -msgstr "Erreur d'expression rationnelle inconnue" - -#: grub-core/lib/gnulib/regcomp.c:676 -msgid "No previous regular expression" -msgstr "Pas d'expression rationnelle précédente" - -#: grub-core/lib/i386/halt.c:77 -msgid "GRUB doesn't know how to halt this machine yet!" -msgstr "GRUB ne sait pas encore comment arrêter cette machine." - -#: grub-core/lib/legacy_parse.c:75 -msgid "Default server is ${net_default_server}" -msgstr "Le serveur par défaut est ${net_default_server}" - -#: grub-core/lib/legacy_parse.c:844 grub-core/video/colors.c:296 -#: grub-core/video/colors.c:305 grub-core/video/colors.c:311 -#: grub-core/video/colors.c:327 util/render-label.c:84 util/render-label.c:98 -#, c-format -msgid "invalid color specification `%s'" -msgstr "spécification de couleur « %s » incorrecte" - -#: grub-core/lib/mips/arc/reboot.c:32 grub-core/lib/mips/loongson/reboot.c:61 -msgid "Reboot failed" -msgstr "Échec de redémarrage" - -#: grub-core/lib/random.c:113 -msgid "[LENGTH]" -msgstr "[LONGUEUR]" - -#: grub-core/lib/random.c:114 -msgid "Hexdump random data." -msgstr "Données aléatoires hexdump." - -#: grub-core/loader/arm/linux.c:242 -msgid "device tree must be supplied (see `devicetree' command)" -msgstr "" -"L'arborescence de périphériques doit être fournie (consultez la command " -"« devicetree »)" - -#: grub-core/loader/arm/linux.c:334 -msgid "invalid zImage" -msgstr "zImage incorrecte" - -#: grub-core/loader/arm/linux.c:450 grub-core/loader/efi/fdt.c:144 -msgid "invalid device tree" -msgstr "arborescence de périphériques incorrecte" - -#: grub-core/loader/arm/linux.c:493 grub-core/loader/arm64/linux.c:383 -#: grub-core/loader/i386/linux.c:1125 grub-core/loader/i386/pc/linux.c:479 -#: grub-core/loader/i386/xen.c:962 grub-core/loader/i386/xen.c:964 -#: grub-core/loader/ia64/efi/linux.c:591 grub-core/loader/mips/linux.c:501 -#: grub-core/loader/powerpc/ieee1275/linux.c:383 -#: grub-core/loader/riscv/linux.c:50 -#: grub-core/loader/sparc64/ieee1275/linux.c:511 -msgid "Load Linux." -msgstr "Charger Linux." - -#: grub-core/loader/arm/linux.c:495 grub-core/loader/arm64/linux.c:385 -#: grub-core/loader/i386/linux.c:1127 grub-core/loader/i386/pc/linux.c:482 -#: grub-core/loader/i386/xen.c:966 grub-core/loader/ia64/efi/linux.c:594 -#: grub-core/loader/mips/linux.c:503 -#: grub-core/loader/powerpc/ieee1275/linux.c:385 -#: grub-core/loader/riscv/linux.c:52 -#: grub-core/loader/sparc64/ieee1275/linux.c:513 -msgid "Load initrd." -msgstr "Charger l'image mémoire initiale." - -#. TRANSLATORS: DTB stands for device tree blob. -#: grub-core/loader/arm/linux.c:498 grub-core/loader/efi/fdt.c:169 -msgid "Load DTB file." -msgstr "Charger le fichier DTB." - -# s/Image/image/ -#: grub-core/loader/arm64/linux.c:59 -msgid "" -"plain image kernel not supported - rebuild with CONFIG_(U)EFI_STUB enabled" -msgstr "" -"simple image de noyau non prise en charge – reconstruisez avec " -"CONFIG_(U)EFI_STUB activé" - -#: grub-core/loader/arm64/xen_boot.c:156 -msgid "failed to get FDT" -msgstr "impossible d'obtenir FDT" - -#: grub-core/loader/arm64/xen_boot.c:418 -msgid "you need to load the Xen Hypervisor first" -msgstr "vous devez d'abord charger l'hyperviseur Xen" - -#: grub-core/loader/arm64/xen_boot.c:516 -msgid "Load a xen hypervisor." -msgstr "Charger un hyperviseur Xen." - -#: grub-core/loader/arm64/xen_boot.c:519 -msgid "Load a xen module." -msgstr "Charger un module Xen." - -#: grub-core/loader/efi/appleloader.c:231 -msgid "[OPTS]" -msgstr "[OPTIONS]" - -#. TRANSLATORS: This command is used on EFI to -#. switch to BIOS mode and boot the OS requiring -#. BIOS. -#: grub-core/loader/efi/appleloader.c:235 -msgid "Boot BIOS-based system." -msgstr "Démarrer le système en utilisant le BIOS." - -#: grub-core/loader/efi/chainloader.c:421 -#: grub-core/loader/i386/pc/chainloader.c:303 -msgid "Load another boot loader." -msgstr "Charger un autre gestionnaire de démarrage." - -#: grub-core/loader/i386/bsd.c:103 -msgid "Display output on all consoles." -msgstr "Afficher les messages sur toutes les consoles." - -#: grub-core/loader/i386/bsd.c:104 grub-core/loader/i386/bsd.c:138 -#: grub-core/loader/i386/bsd.c:171 -msgid "Use serial console." -msgstr "Utiliser la console série." - -#: grub-core/loader/i386/bsd.c:105 grub-core/loader/i386/bsd.c:131 -#: grub-core/loader/i386/bsd.c:159 -msgid "Ask for file name to reboot from." -msgstr "Demander le nom du fichier sur lequel redémarrer." - -#: grub-core/loader/i386/bsd.c:106 -msgid "Use CD-ROM as root." -msgstr "Utiliser le CD comme racine." - -#: grub-core/loader/i386/bsd.c:107 -msgid "Invoke user configuration routing." -msgstr "Accomplir la configuration de routage par utilisateur." - -#: grub-core/loader/i386/bsd.c:108 grub-core/loader/i386/bsd.c:135 -#: grub-core/loader/i386/bsd.c:162 -msgid "Enter in KDB on boot." -msgstr "Entrer dans KDB au démarrage." - -#: grub-core/loader/i386/bsd.c:109 -msgid "Use GDB remote debugger instead of DDB." -msgstr "Utiliser le débogueur distant GDB à la place de DDB." - -#: grub-core/loader/i386/bsd.c:110 -msgid "Disable all boot output." -msgstr "Désactiver toutes les sorties au démarrage." - -#: grub-core/loader/i386/bsd.c:112 -msgid "Wait for keypress after every line of output." -msgstr "" -"Rester en attente d'appui sur une touche avant d'afficher la ligne suivante." - -#: grub-core/loader/i386/bsd.c:114 -msgid "Use compiled-in root device." -msgstr "Utiliser le périphérique racine intégré." - -#: grub-core/loader/i386/bsd.c:115 grub-core/loader/i386/bsd.c:134 -#: grub-core/loader/i386/bsd.c:165 -msgid "Boot into single mode." -msgstr "Démarrer en mode mono-utilisateur." - -#: grub-core/loader/i386/bsd.c:116 grub-core/loader/i386/bsd.c:166 -msgid "Boot with verbose messages." -msgstr "Démarrer en affichant plus de messages." - -#: grub-core/loader/i386/bsd.c:132 grub-core/loader/i386/bsd.c:160 -msgid "Don't reboot, just halt." -msgstr "Ne pas redémarrer, arrêter seulement." - -#: grub-core/loader/i386/bsd.c:133 grub-core/loader/i386/bsd.c:161 -msgid "Change configured devices." -msgstr "Modifier les périphériques configurés." - -#. TRANSLATORS: "com" is static and not to be translated. It refers to -#. serial ports e.g. com1. -#. -#: grub-core/loader/i386/bsd.c:142 -msgid "comUNIT[,SPEED]" -msgstr "comUNITÉ[,VITESSE]" - -#: grub-core/loader/i386/bsd.c:157 -msgid "Disable SMP." -msgstr "Désactiver le SMP." - -#: grub-core/loader/i386/bsd.c:158 -msgid "Disable ACPI." -msgstr "Désactiver l'ACPI." - -#: grub-core/loader/i386/bsd.c:164 -msgid "Don't display boot diagnostic messages." -msgstr "Ne pas afficher les messages de diagnostic au démarrage." - -#: grub-core/loader/i386/bsd.c:167 -msgid "Boot with debug messages." -msgstr "Démarrer avec les messages de débogage." - -#: grub-core/loader/i386/bsd.c:168 -msgid "Suppress normal output (warnings remain)." -msgstr "Supprimer la sortie normale (les avertissements sont conservés)." - -#. TRANSLATORS: "com" is static and not to be translated. It refers to -#. serial ports e.g. com1. -#. -#: grub-core/loader/i386/bsd.c:175 -msgid "[ADDR|comUNIT][,SPEED]" -msgstr "[ADRESSE|comUNITÉ][,VITESSE]" - -#: grub-core/loader/i386/bsd.c:489 grub-core/loader/i386/bsd.c:555 -msgid "name" -msgstr "nom" - -#: grub-core/loader/i386/bsd.c:489 grub-core/loader/i386/bsd.c:555 -msgid "type" -msgstr "type" - -#: grub-core/loader/i386/bsd.c:489 grub-core/loader/i386/bsd.c:555 -msgid "addr" -msgstr "adresse" - -#: grub-core/loader/i386/bsd.c:490 grub-core/loader/i386/bsd.c:556 -msgid "size" -msgstr "taille" - -#: grub-core/loader/i386/bsd.c:1147 grub-core/loader/i386/linux.c:466 -#: grub-core/loader/i386/xnu.c:1030 -msgid "Booting in blind mode" -msgstr "Démarrage en mode aveugle" - -#: grub-core/loader/i386/bsd.c:2137 -msgid "Load kernel of FreeBSD." -msgstr "Charger le noyau FreeBSD." - -#: grub-core/loader/i386/bsd.c:2140 -msgid "Load kernel of OpenBSD." -msgstr "Charger le noyau OpenBSD." - -#: grub-core/loader/i386/bsd.c:2143 -msgid "Load kernel of NetBSD." -msgstr "Charger le noyau NetBSD." - -#: grub-core/loader/i386/bsd.c:2147 -msgid "Load FreeBSD env." -msgstr "Charger l'environnement FreeBSD." - -#: grub-core/loader/i386/bsd.c:2150 -msgid "Load FreeBSD kernel module." -msgstr "Charger le module noyau FreeBSD." - -#: grub-core/loader/i386/bsd.c:2153 -msgid "Load NetBSD kernel module." -msgstr "Charger le module noyau NetBSD." - -#: grub-core/loader/i386/bsd.c:2156 -msgid "Load NetBSD kernel module (ELF)." -msgstr "Charger le module noyau NetBSD (ELF)." - -#: grub-core/loader/i386/bsd.c:2159 -msgid "Load FreeBSD kernel module (ELF)." -msgstr "Charger le module noyau FreeBSD (ELF)." - -#. TRANSLATORS: ramdisk isn't identifier, -#. it can be translated. -#: grub-core/loader/i386/bsd.c:2165 -msgid "Load kOpenBSD ramdisk." -msgstr "Charger le disque mémoire kOpenBSD." - -#. TRANSLATORS: "payload" is a term used -#. by coreboot and must be translated in -#. sync with coreboot. If unsure, -#. let it untranslated. -#: grub-core/loader/i386/coreboot/chainloader.c:510 -msgid "Load another coreboot payload" -msgstr "Charger une autre charge utile (« payload ») coreboot." - -#: grub-core/loader/i386/linux.c:876 -msgid "Legacy `ask' parameter no longer supported." -msgstr "L'ancien paramètre « ask » n'est plus permis." - -#: grub-core/loader/i386/linux.c:892 grub-core/loader/i386/linux.c:902 -#: grub-core/loader/i386/linux.c:932 -#, c-format -msgid "%s is deprecated. Use set gfxpayload=%s before linux command instead.\n" -msgstr "" -"%s est obsolète. Utilisez plutôt « set gfxpayload=%s » avant la commande " -"« linux ».\n" - -#. TRANSLATORS: "x" has to be entered in, like an identifier, -#. so please don't use better Unicode codepoints. -#: grub-core/loader/i386/linux.c:915 -#, c-format -msgid "" -"%s is deprecated. VGA mode %d isn't recognized. Use set " -"gfxpayload=WIDTHxHEIGHT[xDEPTH] before linux command instead.\n" -msgstr "" -"%s est obsolète. Le mode VGA %d n'est pas reconnu. Utilisez plutôt « set " -"gfxpayload=LARGxHAUT[xPROF] » avant la commande « linux ».\n" - -#: grub-core/loader/i386/pc/chainloader.c:302 -msgid "[--force|--bpb] FILE" -msgstr "[--force|--bpb] FICHIER" - -#: grub-core/loader/i386/pc/freedos.c:148 util/setup.c:293 -#, c-format -msgid "the size of `%s' is too large" -msgstr "la taille de « %s » est trop grande" - -#: grub-core/loader/i386/pc/freedos.c:183 -msgid "Load FreeDOS kernel.sys." -msgstr "Charger de kernel.sys de FreeDOS." - -#: grub-core/loader/i386/pc/ntldr.c:155 -msgid "Load NTLDR or BootMGR." -msgstr "Charger NTLDR ou BootMGR." - -#. TRANSLATORS: it's about guessing which GRUB disk -#. is which Plan9 disk. If your language has no -#. word "mapping" you can use another word which -#. means that the GRUBDEVICE and PLAN9DEVICE are -#. actually the same device, just named differently -#. in OS and GRUB. -#: grub-core/loader/i386/pc/plan9.c:59 -msgid "Override guessed mapping of Plan9 devices." -msgstr "Redéfinir l'équivalent supposé des périphériques Plan 9." - -#: grub-core/loader/i386/pc/plan9.c:60 -msgid "GRUBDEVICE=PLAN9DEVICE" -msgstr "PÉRIPHÉRIQUE_GRUB=PÉRIPHÉRIQUE_PLAN9" - -#: grub-core/loader/i386/pc/plan9.c:599 -msgid "KERNEL ARGS" -msgstr "NOYAU ARGUMENTS" - -#: grub-core/loader/i386/pc/plan9.c:599 -msgid "Load Plan9 kernel." -msgstr "Charger un noyau de type Plan 9." - -#: grub-core/loader/i386/pc/pxechainloader.c:161 -msgid "Load a PXE image." -msgstr "Charger une image PXE." - -#: grub-core/loader/i386/pc/truecrypt.c:226 -msgid "Load Truecrypt ISO." -msgstr "Charger l’ISO Truecrypt." - -#: grub-core/loader/i386/xen.c:781 grub-core/loader/i386/xen.c:865 -msgid "initrd already loaded" -msgstr "image mémoire initiale déjà chargée" - -#: grub-core/loader/i386/xen.c:968 -msgid "Load module." -msgstr "Charger un module." - -#: grub-core/loader/i386/xnu.c:1003 -msgid "Press any key to launch xnu" -msgstr "Appuyez une touche pour démarrer XNU" - -#. TRANSLATORS: `device-properties' -#. is a variable name, -#. not a program. -#: grub-core/loader/i386/xnu.c:1159 -msgid "Load `device-properties' dump." -msgstr "Charger la copie « device-properties »." - -#: grub-core/loader/ia64/efi/linux.c:124 -msgid "Could not locate FPSWA driver" -msgstr "Impossible de trouver le pilote FPSWA" - -#: grub-core/loader/ia64/efi/linux.c:132 -msgid "FPSWA protocol wasn't able to find the interface" -msgstr "Le protocole FPSWA n'a pas pu trouver l'interface" - -#: grub-core/loader/ia64/efi/linux.c:580 -msgid "No FPSWA found" -msgstr "Pas de FPSWA disponible" - -#: grub-core/loader/ia64/efi/linux.c:582 -#, c-format -msgid "FPSWA revision: %x\n" -msgstr "Révision FPSWA : %x\n" - -#: grub-core/loader/ia64/efi/linux.c:591 -msgid "FILE [ARGS...]" -msgstr "FICHIER [ARGUMENTS ...]" - -#: grub-core/loader/ia64/efi/linux.c:597 -msgid "Display FPSWA version." -msgstr "Afficher la version FPSWA." - -#: grub-core/loader/multiboot.c:248 -msgid "WARNING: no console will be available to OS" -msgstr "" -"Attention : aucune console ne sera disponible pour ce système d'exploitation" - -#: grub-core/loader/multiboot.c:450 -msgid "Load a multiboot 2 kernel." -msgstr "Charger un noyau Multiboot 2." - -#: grub-core/loader/multiboot.c:453 -msgid "Load a multiboot 2 module." -msgstr "Charger un module Multiboot 2." - -#: grub-core/loader/multiboot.c:456 -msgid "Load a multiboot kernel." -msgstr "Charger un noyau Multiboot." - -#: grub-core/loader/multiboot.c:459 -msgid "Load a multiboot module." -msgstr "Charger un module Multiboot." - -#: grub-core/loader/riscv/linux.c:30 grub-core/loader/riscv/linux.c:40 -msgid "Linux not supported yet" -msgstr "Linux n'est pas encore supporté" - -#: grub-core/loader/xnu.c:1416 grub-core/term/gfxterm_background.c:45 -msgid "Background image mode." -msgstr "Mode de l'image d'arrière-plan." - -#. TRANSLATORS: This refers to background image mode (stretched or -#. in left-top corner). Note that GRUB will accept only original -#. keywords stretch and normal, not the translated ones. -#. So please put both in translation -#. e.g. stretch(=%STRETCH%)|normal(=%NORMAL%). -#. The percents mark the translated version. Since many people -#. may not know the word stretch or normal I recommend -#. putting the translation either here or in "Background image mode." -#. string. -#: grub-core/loader/xnu.c:1416 grub-core/term/gfxterm_background.c:55 -msgid "stretch|normal" -msgstr "« stretch » (étiré) ou « normal »" - -#: grub-core/loader/xnu.c:1482 -msgid "Load XNU image." -msgstr "Charger l'image XNU." - -#: grub-core/loader/xnu.c:1484 -msgid "Load 64-bit XNU image." -msgstr "Charger l'image 64 bits XNU." - -#: grub-core/loader/xnu.c:1486 -msgid "Load XNU extension package." -msgstr "Charger le paquet d'extension XNU." - -#: grub-core/loader/xnu.c:1488 -msgid "Load XNU extension." -msgstr "Charger l'extension XNU." - -#. TRANSLATORS: OSBundleRequired is a -#. variable name in xnu extensions -#. manifests. It behaves mostly like -#. GNU/Linux runlevels. -#. -#: grub-core/loader/xnu.c:1495 -msgid "DIRECTORY [OSBundleRequired]" -msgstr "RÉPERTOIRE [OSBundleRequired]" - -#. TRANSLATORS: There are many extensions -#. in extension directory. -#: grub-core/loader/xnu.c:1498 -msgid "Load XNU extension directory." -msgstr "Charger le répertoire d'extensions XNU." - -#. TRANSLATORS: ramdisk here isn't identifier. It can be translated. -#: grub-core/loader/xnu.c:1501 -msgid "Load XNU ramdisk. It will be available in OS as md0." -msgstr "" -"Charger le disque mémoire XNU. Il sera disponible dans le système " -"d'exploitation sous le nom md0." - -#: grub-core/loader/xnu.c:1505 -msgid "Load a splash image for XNU." -msgstr "Charger l'image d'accueil pour XNU." - -#: grub-core/loader/xnu.c:1510 -msgid "Load an image of hibernated XNU." -msgstr "Charger l'image d'hibernation XNU." - -#: grub-core/mmap/mmap.c:538 -msgid "ADDR1,MASK1[,ADDR2,MASK2[,...]]" -msgstr "ADRESSE1,MASQUE1[,ADRESSE2,MASQUE2] ..." - -#: grub-core/mmap/mmap.c:539 -msgid "Declare memory regions as faulty (badram)." -msgstr "Déclarer des régions de mémoire comme défectueuses (badram)." - -#: grub-core/mmap/mmap.c:541 -msgid "FROM[K|M|G] TO[K|M|G]" -msgstr "DE[K|M|G] À[K|M|G]" - -#: grub-core/mmap/mmap.c:542 -msgid "Remove any memory regions in specified range." -msgstr "Retirer toutes les régions de mémoire dans l'intervalle indiqué." - -#: grub-core/net/bootp.c:653 -msgid "four arguments expected" -msgstr "quatre arguments attendus" - -#: grub-core/net/bootp.c:661 grub-core/net/net.c:1155 -#, c-format -msgid "unrecognised network interface `%s'" -msgstr "interface réseau « %s » non reconnue" - -#: grub-core/net/bootp.c:664 -msgid "no DHCP info found" -msgstr "aucun renseignement DHCP disponible" - -#: grub-core/net/bootp.c:674 -msgid "no DHCP options found" -msgstr "aucune option DHCP disponible" - -#: grub-core/net/bootp.c:682 -msgid "invalid DHCP option code" -msgstr "code d'option DHCP invalide" - -#: grub-core/net/bootp.c:686 -#, c-format -msgid "no DHCP option %u found" -msgstr "pas d'option DHCP %u trouvée" - -#: grub-core/net/bootp.c:743 -#, c-format -msgid "unrecognised DHCP option format specification `%s'" -msgstr "spécification « %s » de format d'option DHCP non reconnue" - -#: grub-core/net/bootp.c:767 -msgid "no network card found" -msgstr "aucune carte réseau disponible" - -#: grub-core/net/bootp.c:859 grub-core/net/net.c:389 -#, c-format -msgid "couldn't autoconfigure %s" -msgstr "impossible de configurer %s automatiquement" - -#: grub-core/net/bootp.c:873 grub-core/net/bootp.c:876 -msgid "[CARD]" -msgstr "[CARTE]" - -#: grub-core/net/bootp.c:874 -msgid "perform a bootp autoconfiguration" -msgstr "effectuer une configuration bootp automatique" - -#: grub-core/net/bootp.c:877 -msgid "perform a DHCP autoconfiguration" -msgstr "effectuer une configuration automatique par DHCP" - -#: grub-core/net/bootp.c:879 -msgid "VAR INTERFACE NUMBER DESCRIPTION" -msgstr "VAR INTERFACE NUMÉRO DESCRIPTION" - -#: grub-core/net/bootp.c:880 -msgid "" -"retrieve DHCP option and save it into VAR. If VAR is - then print the value." -msgstr "" -"récupérer l'option DHCP et la sauver dans VAR. Si VAR est -, afficher la " -"valeur." - -#: grub-core/net/dns.c:459 -msgid "no DNS servers configured" -msgstr "aucun serveur DNS configuré" - -#: grub-core/net/dns.c:522 -msgid "domain name component is too long" -msgstr "composant de nom de domaine trop long" - -#: grub-core/net/dns.c:618 grub-core/net/dns.c:666 -msgid "no DNS record found" -msgstr "aucun enregistrement DNS disponible" - -#: grub-core/net/dns.c:626 -msgid "no DNS reply received" -msgstr "aucune réponse DNS reçue" - -#: grub-core/net/dns.c:682 -msgid "only ipv4" -msgstr "IPv4 seulement" - -#: grub-core/net/dns.c:686 -msgid "only ipv6" -msgstr "IPv6 seulement" - -#: grub-core/net/dns.c:690 -msgid "prefer ipv4" -msgstr "IPv4 préférée" - -#: grub-core/net/dns.c:694 -msgid "prefer ipv6" -msgstr "IPv6 préférée" - -#: grub-core/net/dns.c:759 -msgid "ADDRESS DNSSERVER" -msgstr "ADRESSE SERVEURDNS" - -#: grub-core/net/dns.c:760 -msgid "Perform a DNS lookup" -msgstr "Effectuer une résolution DNS" - -#: grub-core/net/dns.c:762 grub-core/net/dns.c:765 -msgid "DNSSERVER" -msgstr "SERVEURDNS" - -#: grub-core/net/dns.c:763 -msgid "Add a DNS server" -msgstr "Ajouter un serveur DNS" - -#: grub-core/net/dns.c:766 -msgid "Remove a DNS server" -msgstr "Retirer un serveur DNS" - -#: grub-core/net/dns.c:768 -msgid "List DNS servers" -msgstr "Afficher les serveurs DNS" - -#: grub-core/net/drivers/efi/efinet.c:49 grub-core/net/drivers/efi/efinet.c:65 -#: grub-core/net/drivers/efi/efinet.c:77 grub-core/net/drivers/emu/emunet.c:62 -#: grub-core/net/drivers/i386/pc/pxe.c:273 -#: grub-core/net/drivers/ieee1275/ofnet.c:75 -#: grub-core/net/drivers/uboot/ubootnet.c:62 -msgid "couldn't send network packet" -msgstr "impossible d'envoyer un paquet réseau" - -#: grub-core/net/drivers/ieee1275/ofnet.c:326 -#: grub-core/net/drivers/ieee1275/ofnet.c:359 -msgid "interpret is not supported" -msgstr "l'interprétation n'est pas prise en charge" - -#: grub-core/net/drivers/ieee1275/ofnet.c:336 -msgid "alloc-mem failed" -msgstr "échec de alloc-mem" - -#: grub-core/net/drivers/ieee1275/ofnet.c:370 -msgid "free-mem failed" -msgstr "échec de free-mem" - -#: grub-core/net/http.c:105 -msgid "unsupported HTTP response" -msgstr "réponse HTTP non prise en charge" - -#. TRANSLATORS: GRUB HTTP code is pretty young. So even perfectly -#. valid answers like 403 will trigger this very generic message. -#: grub-core/net/http.c:126 -#, c-format -msgid "unsupported HTTP error %d: %s" -msgstr "erreur %d HTTP non prise en charge : %s" - -#: grub-core/net/http.c:429 grub-core/net/tftp.c:420 -#, c-format -msgid "time out opening `%s'" -msgstr "délai dépassé lors de l'ouverture de « %s »" - -#: grub-core/net/net.c:179 -msgid "timeout: could not resolve hardware address" -msgstr "délai dépassé : impossible de résoudre l'adresse matérielle" - -#: grub-core/net/net.c:548 -#, c-format -msgid "unresolvable address %s" -msgstr "adresse %s non résoluble" - -#: grub-core/net/net.c:594 -#, c-format -msgid "unrecognised network address `%s'" -msgstr "adresse réseau « %s » non reconnue" - -#: grub-core/net/net.c:661 -msgid "destination unreachable" -msgstr "destination inaccessible" - -#. TRANSLATORS: route loop is a condition when e.g. -#. to contact server A you need to go through B -#. and to contact B you need to go through A. -#: grub-core/net/net.c:684 -msgid "route loop detected" -msgstr "boucle de route détectée" - -#: grub-core/net/net.c:700 -msgid "address not found" -msgstr "adresse indisponible" - -#: grub-core/net/net.c:704 -msgid "you can't delete this address" -msgstr "impossible d'effacer cette adresse" - -#: grub-core/net/net.c:776 grub-core/net/net.c:792 -#, c-format -msgid "Unsupported hw address type %d\n" -msgstr "type %d d'adresse matérielle non valable\n" - -#: grub-core/net/net.c:813 -#, c-format -msgid "Unsupported address type %d\n" -msgstr "type %d d'adresse non valable\n" - -#: grub-core/net/net.c:1017 grub-core/net/net.c:1131 -msgid "three arguments expected" -msgstr "trois arguments attendus" - -#: grub-core/net/net.c:1023 -msgid "card not found" -msgstr "carte indisponible" - -#. TRANSLATORS: it refers to the network address. -#: grub-core/net/net.c:1167 -msgid "temporary" -msgstr "temporaire" - -#: grub-core/net/net.c:1190 -#, c-format -msgid "Unknown address type %d\n" -msgstr "type %d d'adresse inconnu\n" - -#: grub-core/net/net.c:1298 -msgid "no server is specified" -msgstr "aucun serveur n'est indiqué" - -#: grub-core/net/net.c:1637 -#, c-format -msgid "timeout reading `%s'" -msgstr "délai dépassé lors de la lecture de « %s »" - -#. TRANSLATORS: HWADDRESS stands for -#. "hardware address". -#: grub-core/net/net.c:1762 -msgid "SHORTNAME CARD ADDRESS [HWADDRESS]" -msgstr "NOMCOURT CARTE ADRESSE [ADRESSEMATÉRIELLE]" - -#: grub-core/net/net.c:1763 -msgid "Add a network address." -msgstr "Ajouter une adresse réseau." - -#: grub-core/net/net.c:1766 -msgid "[CARD [HWADDRESS]]" -msgstr "[CARTE [ADRESSEMATÉRIELLE]]" - -#: grub-core/net/net.c:1767 -msgid "Perform an IPV6 autoconfiguration" -msgstr "Effectuer une configuration IPV6 automatique" - -#: grub-core/net/net.c:1770 grub-core/net/net.c:1777 -msgid "SHORTNAME" -msgstr "NOMCOURT" - -#: grub-core/net/net.c:1771 -msgid "Delete a network address." -msgstr "Supprimer une adresse réseau." - -#. TRANSLATORS: "gw" is a keyword. -#: grub-core/net/net.c:1774 -msgid "SHORTNAME NET [INTERFACE| gw GATEWAY]" -msgstr "NOMCOURT RÉS [INTERFACE| gw PASSERELLE]" - -#: grub-core/net/net.c:1775 -msgid "Add a network route." -msgstr "Ajouter une route réseau." - -#: grub-core/net/net.c:1778 -msgid "Delete a network route." -msgstr "Supprimer une route réseau." - -#: grub-core/net/net.c:1780 -msgid "list network routes" -msgstr "afficher les routes réseau" - -#: grub-core/net/net.c:1782 -msgid "list network cards" -msgstr "afficher les cartes réseau" - -#: grub-core/net/net.c:1784 -msgid "list network addresses" -msgstr "afficher les adresses réseau" - -#: grub-core/net/tcp.c:681 -msgid "connection refused" -msgstr "connexion refusée" - -#: grub-core/net/tcp.c:684 -msgid "connection timeout" -msgstr "délai de connexion dépassé" - -#: grub-core/normal/auth.c:220 -msgid "Enter username: " -msgstr "Entrez le nom d'utilisateur : " - -#: grub-core/normal/auth.c:269 -msgid "[USERLIST]" -msgstr "[LISTE_UTILISATEURS]" - -#: grub-core/normal/auth.c:270 -msgid "Check whether user is in USERLIST." -msgstr "Vérifier si l'utilisateur fait partie de LISTE_UTILISATEURS." - -#: grub-core/normal/cmdline.c:174 grub-core/normal/menu_entry.c:1068 -msgid "Possible commands are:" -msgstr "Les commandes possibles sont :" - -#: grub-core/normal/cmdline.c:177 grub-core/normal/menu_entry.c:1072 -msgid "Possible devices are:" -msgstr "Les périphériques possibles sont :" - -#: grub-core/normal/cmdline.c:180 grub-core/normal/menu_entry.c:1076 -msgid "Possible files are:" -msgstr "Les fichiers possibles sont :" - -#: grub-core/normal/cmdline.c:183 grub-core/normal/menu_entry.c:1080 -msgid "Possible partitions are:" -msgstr "Les partitions possibles sont :" - -#: grub-core/normal/cmdline.c:186 grub-core/normal/menu_entry.c:1084 -msgid "Possible arguments are:" -msgstr "Les arguments possibles sont :" - -#. TRANSLATORS: this message is used if none of above matches. -#. This shouldn't happen but please use the general term for -#. "thing" or "object". -#: grub-core/normal/cmdline.c:192 grub-core/normal/menu_entry.c:1088 -msgid "Possible things are:" -msgstr "Les choses possibles sont :" - -#: grub-core/normal/color.c:81 -#, c-format -msgid "Warning: syntax error (missing slash) in `%s'\n" -msgstr "Attention : erreur de syntaxe (barre oblique manquante) dans « %s »\n" - -#: grub-core/normal/color.c:90 -#, c-format -msgid "Warning: invalid foreground color `%s'\n" -msgstr "Attention : couleur de premier plan « %s » incorrecte\n" - -#: grub-core/normal/color.c:96 -#, c-format -msgid "Warning: invalid background color `%s'\n" -msgstr "Attention : couleur d'arrière-plan « %s » incorrecte\n" - -#: grub-core/normal/context.c:206 -msgid "ENVVAR [ENVVAR] ..." -msgstr "VAR_ENV [VAR_ENV] ..." - -#: grub-core/normal/context.c:207 -msgid "Export variables." -msgstr "Exporter les variables." - -#: grub-core/normal/datetime.c:25 -msgid "Sunday" -msgstr "dimanche" - -#: grub-core/normal/datetime.c:26 -msgid "Monday" -msgstr "lundi" - -#: grub-core/normal/datetime.c:27 -msgid "Tuesday" -msgstr "mardi" - -#: grub-core/normal/datetime.c:28 -msgid "Wednesday" -msgstr "mercredi" - -#: grub-core/normal/datetime.c:29 -msgid "Thursday" -msgstr "jeudi" - -#: grub-core/normal/datetime.c:30 -msgid "Friday" -msgstr "vendredi" - -#: grub-core/normal/datetime.c:31 -msgid "Saturday" -msgstr "samedi" - -#: grub-core/normal/dyncmd.c:187 -msgid "module isn't loaded" -msgstr "le module n'est pas chargé" - -#: grub-core/normal/main.c:211 -#, c-format -msgid "GNU GRUB version %s" -msgstr "GNU GRUB version %s" - -#: grub-core/normal/main.c:360 -msgid "ESC at any time exits." -msgstr "Échap à tout moment pour quitter." - -#: grub-core/normal/main.c:363 -#, c-format -msgid "" -"Minimal BASH-like line editing is supported. For the first word, TAB lists " -"possible command completions. Anywhere else TAB lists possible device or " -"file completions. %s" -msgstr "" -"Édition de ligne basique de type Bash possible. Pour le premier mot, Tab " -"affiche les complètements de commande possibles. Ailleurs, Tab affiche les " -"complètements de périphériques ou fichiers possibles. %s" - -#. TRANSLATORS: it's command line prompt. -#: grub-core/normal/main.c:395 -msgid ">" -msgstr ">" - -#. TRANSLATORS: it's command line prompt. -#: grub-core/normal/main.c:398 -msgid "grub>" -msgstr "grub>" - -#: grub-core/normal/main.c:518 -msgid "Clear the screen." -msgstr "Effacer l'écran." - -#: grub-core/normal/main.c:527 -msgid "Enter normal mode." -msgstr "Passer en mode normal." - -#: grub-core/normal/main.c:529 -msgid "Exit from normal mode." -msgstr "Sortir du mode normal." - -#: grub-core/normal/menu.c:66 grub-core/normal/menu_entry.c:1449 -msgid "Press any key to continue..." -msgstr "Appuyez une touche pour continuer…" - -#: grub-core/normal/menu.c:815 -#, c-format -msgid "Booting `%s'" -msgstr "Démarrage de « %s »" - -#: grub-core/normal/menu.c:827 -#, c-format -msgid "Falling back to `%s'" -msgstr "Repli vers « %s »" - -#: grub-core/normal/menu.c:843 -msgid "Failed to boot both default and fallback entries.\n" -msgstr "Échec de démarrage de l'entrée par défaut et des entrées de repli.\n" - -#: grub-core/normal/menu_entry.c:1171 -msgid "Booting a command list" -msgstr "Démarrage d'une liste de commandes" - -#: grub-core/normal/menu_text.c:160 -msgid "" -"Minimum Emacs-like screen editing is supported. TAB lists completions. Press " -"Ctrl-x or F10 to boot, Ctrl-c or F2 for a command-line or ESC to discard " -"edits and return to the GRUB menu." -msgstr "" -"Édition basique à l'écran de type Emacs possible. Tab affiche les " -"complètements. Appuyez sur Ctrl-x ou F10 pour démarrer, Ctrl-c ou F2 pour " -"une invite de commandes ou Échap pour revenir au menu GRUB." - -#: grub-core/normal/menu_text.c:170 -#, c-format -msgid "Use the %C and %C keys to select which entry is highlighted." -msgstr "Utilisez les touches %C et %C pour sélectionner une entrée." - -#. TRANSLATORS: that's the list of binary unit prefixes. -#: grub-core/normal/misc.c:38 -msgid "B" -msgstr " o" - -#: grub-core/normal/misc.c:38 -msgid "KiB" -msgstr " Kio" - -#: grub-core/normal/misc.c:38 -msgid "MiB" -msgstr " Mio" - -#: grub-core/normal/misc.c:38 -msgid "GiB" -msgstr " Gio" - -#: grub-core/normal/misc.c:38 -msgid "TiB" -msgstr " Tio" - -#: grub-core/normal/misc.c:38 -msgid "PiB" -msgstr " Pio" - -# NOTE: s/$/i/ -#. TRANSLATORS: that's the list of binary unit prefixes. -#: grub-core/normal/misc.c:40 -msgid "K" -msgstr " Ki" - -#: grub-core/normal/misc.c:40 -msgid "M" -msgstr " Mi" - -#: grub-core/normal/misc.c:40 -msgid "G" -msgstr " Gi" - -#: grub-core/normal/misc.c:40 -msgid "T" -msgstr " Ti" - -#: grub-core/normal/misc.c:40 -msgid "P" -msgstr " Pi" - -#. TRANSLATORS: that's the list of binary unit prefixes. -#: grub-core/normal/misc.c:42 -msgid "B/s" -msgstr " o/s" - -#: grub-core/normal/misc.c:42 -msgid "KiB/s" -msgstr " Kio/s" - -#: grub-core/normal/misc.c:42 -msgid "MiB/s" -msgstr " Mio/s" - -#: grub-core/normal/misc.c:42 -msgid "GiB/s" -msgstr " Gio/s" - -#: grub-core/normal/misc.c:42 -msgid "TiB/s" -msgstr " Tio/s" - -#: grub-core/normal/misc.c:42 -msgid "PiB/s" -msgstr " Pio/s" - -#: grub-core/normal/misc.c:96 -#, c-format -msgid "Partition %s:" -msgstr "Partition %s :" - -#: grub-core/normal/misc.c:101 -#, c-format -msgid "Device %s:" -msgstr "Périphérique %s :" - -#: grub-core/normal/misc.c:107 -msgid "Filesystem cannot be accessed" -msgstr "Le système de fichiers est inaccessible" - -#: grub-core/normal/misc.c:121 -#, c-format -msgid "Filesystem type %s" -msgstr "Type de système de fichiers %s" - -#: grub-core/normal/misc.c:131 -#, c-format -msgid "- Label `%s'" -msgstr "- Étiquette « %s »" - -#. TRANSLATORS: Arguments are year, month, day, hour, minute, -#. second, day of the week (translated). -#: grub-core/normal/misc.c:148 -#, c-format -msgid "- Last modification time %d-%02d-%02d %02d:%02d:%02d %s" -msgstr "" -"- Dernière date de modification %7$s %3$02d/%2$02d/%1$d %4$02d:%5$02d:%6$02d" - -#: grub-core/normal/misc.c:171 -msgid "No known filesystem detected" -msgstr "Aucun système de fichiers connu détecté" - -#: grub-core/normal/misc.c:174 -#, c-format -msgid " - Partition start at %llu%sKiB" -msgstr " - La partition commence à %llu%s Kio" - -#: grub-core/normal/misc.c:178 -#, c-format -msgid " - Sector size %uB" -msgstr " - Taille de secteur %u o" - -#: grub-core/normal/misc.c:180 -msgid " - Total size unknown" -msgstr " - Taille totale inconnue" - -#: grub-core/normal/misc.c:182 -#, c-format -msgid " - Total size %llu%sKiB" -msgstr " - Taille totale %llu%s Kio" - -#. TRANSLATORS: Replace dot with appropriate decimal separator for -#. your language. -#: grub-core/normal/misc.c:186 -msgid ".5" -msgstr ",5" - -#. TRANSLATORS: This has to fit on one line. It's ok to include few -#. words but don't write poems. -#: grub-core/normal/term.c:82 -msgid "--MORE--" -msgstr "— Plus —" - -#: grub-core/osdep/aros/config.c:92 grub-core/osdep/unix/config.c:137 -#: grub-core/osdep/windows/config.c:55 -#, c-format -msgid "cannot open configuration file `%s': %s" -msgstr "impossible d'ouvrir le fichier de configuration « %s » : %s" - -#: grub-core/osdep/basic/compress.c:8 grub-core/osdep/basic/compress.c:14 -#: grub-core/osdep/basic/compress.c:20 -msgid "no compression is available for your platform" -msgstr "pas de compression disponible pour cette plate-forme" - -#: grub-core/osdep/basic/no_platform.c:30 -#: grub-core/osdep/windows/platform.c:418 -msgid "no IEEE1275 routines are available for your platform" -msgstr "pas de routine IEEE1275 disponible pour cette plate-forme" - -#: grub-core/osdep/basic/no_platform.c:38 -msgid "no EFI routines are available for your platform" -msgstr "pas de routine EFI disponible pour cette plate-forme" - -#: grub-core/osdep/basic/no_platform.c:45 -#: grub-core/osdep/windows/platform.c:425 -msgid "no SGI routines are available for your platform" -msgstr "pas de routine SGI disponible pour cette plate-forme" - -#. TRANSLATORS: The OS itself may very well have a random -#. number generator but GRUB doesn't know how to access it. -#: grub-core/osdep/basic/random.c:42 -msgid "no random number generator is available for your OS" -msgstr "" -"aucun générateur de nombres aléatoires n’est disponible pour ce système " -"d’exploitation" - -#: grub-core/osdep/devmapper/getroot.c:81 -msgid "Failed to create `device-mapper' tree" -msgstr "Échec de création de l'arborescence « device-mapper »" - -#: grub-core/osdep/devmapper/getroot.c:197 -#: grub-core/osdep/freebsd/getroot.c:202 -#, c-format -msgid "can't mount encrypted volume `%s': %s" -msgstr "impossible de monter le volume chiffré « %s » : %s" - -#. TRANSLATORS: geom is the name of (k)FreeBSD device framework. -#. Usually left untranslated. -#. -#: grub-core/osdep/freebsd/getroot.c:82 grub-core/osdep/freebsd/getroot.c:164 -#: grub-core/osdep/freebsd/getroot.c:258 grub-core/osdep/freebsd/getroot.c:316 -msgid "couldn't open geom" -msgstr "impossible d'ouvrir GEOM" - -#: grub-core/osdep/freebsd/getroot.c:182 grub-core/osdep/freebsd/getroot.c:277 -msgid "couldn't find geli consumer" -msgstr "impossible de trouver l'utilisateur geli" - -#: grub-core/osdep/freebsd/getroot.c:282 -msgid "couldn't retrieve geli UUID" -msgstr "impossible de récupérer l'UUID geli" - -#. TRANSLATORS: geom is the name of (k)FreeBSD device framework. -#. Usually left untranslated. "part" is the identifier of one of its -#. classes. -#: grub-core/osdep/freebsd/getroot.c:325 -msgid "couldn't find geom `part' class" -msgstr "impossible de trouver la classe « part » de GEOM" - -#: grub-core/osdep/freebsd/hostdisk.c:72 grub-core/osdep/linux/hostdisk.c:93 -msgid "unaligned device size" -msgstr "taille de périphérique non alignée" - -#: grub-core/osdep/generic/blocklist.c:56 -#, c-format -msgid "attempting to read the core image `%s' from GRUB" -msgstr "tentative de lecture de l'image de base « %s » par GRUB" - -#: grub-core/osdep/generic/blocklist.c:57 -#, c-format -msgid "attempting to read the core image `%s' from GRUB again" -msgstr "nouvelle tentative de lecture de l'image de base « %s » par GRUB" - -#: grub-core/osdep/generic/blocklist.c:115 -#, c-format -msgid "cannot read `%s' correctly" -msgstr "impossible de lire « %s » correctement" - -#: grub-core/osdep/generic/blocklist.c:126 -msgid "failed to read the sectors of the core image" -msgstr "échec de lecture des secteurs de l'image de base" - -#. TRANSLATORS: On GNU/Hurd, a "translator" is similar to a filesystem -#. mount, but handled by a userland daemon, whose invocation command line -#. is being fetched here. First %s is the file being looked at (for which -#. we are fetching the "translator" command line), second %s is the error -#. message. -#. -#: grub-core/osdep/hurd/getroot.c:79 -#, c-format -msgid "cannot get translator command line for path `%s': %s" -msgstr "" -"impossible d'obtenir la ligne de commande de traducteur pour le chemin " -"« %s » : %s" - -#: grub-core/osdep/hurd/getroot.c:82 -#, c-format -msgid "translator command line is empty for path `%s'" -msgstr "la ligne de commande de traducteur est vide pour le chemin « %s »" - -#. TRANSLATORS: we expect to get something like -#. /hurd/foobar --option1 --option2=baz /dev/something -#. -#: grub-core/osdep/hurd/getroot.c:98 -#, c-format -msgid "" -"translator `%s' for path `%s' has several non-option words, at least `%s' " -"and `%s'" -msgstr "" -"plusieurs arguments fournis au traducteur « %s » pour le chemin « %s » ne " -"sont pas des options, au moins « %s » et « %s »" - -#. TRANSLATORS: we expect to get something like -#. /hurd/foobar --option1 --option2=baz /dev/something -#. -#: grub-core/osdep/hurd/getroot.c:109 -#, c-format -msgid "" -"translator `%s' for path `%s' is given only options, cannot find device part" -msgstr "" -"seules des options ont été fournies au traducteur « %s » pour le chemin " -"« %s », impossible de trouver la partie relative au périphérique." - -#: grub-core/osdep/hurd/hostdisk.c:73 -#, c-format -msgid "Storage information for `%s' does not include type" -msgstr "Les renseignements de stockage pour « %s » ne contiennent pas le type" - -#: grub-core/osdep/hurd/hostdisk.c:75 -#, c-format -msgid "`%s' is not a local disk" -msgstr "« %s » n'est pas un disque local" - -#: grub-core/osdep/hurd/hostdisk.c:78 -#, c-format -msgid "" -"Storage information for `%s' indicates neither a plain partition nor a plain " -"disk" -msgstr "" -"Les renseignements de stockage pour « %s » n’indiquent ni une simple " -"partition, ni un simple disque" - -#: grub-core/osdep/linux/blocklist.c:81 grub-core/osdep/linux/blocklist.c:96 -#: grub-core/osdep/linux/blocklist.c:122 -#, c-format -msgid "can't retrieve blocklists: %s" -msgstr "impossible de récupérer les listes de blocs : %s" - -#: grub-core/osdep/linux/blocklist.c:84 -msgid "blocksize is not divisible by 512" -msgstr "la taille de bloc n'est pas divisible par 512" - -#: grub-core/osdep/linux/blocklist.c:86 -msgid "invalid zero blocksize" -msgstr "taille zéro de bloc incorrecte" - -#: grub-core/osdep/linux/blocklist.c:90 util/setup.c:744 -msgid "can't retrieve blocklists" -msgstr "impossible de récupérer les listes de blocs" - -#: grub-core/osdep/linux/getroot.c:154 -#, c-format -msgid "ioctl RAID_VERSION error: %s" -msgstr "erreur d'ioctl RAID_VERSION : %s" - -#: grub-core/osdep/linux/getroot.c:160 grub-core/osdep/linux/getroot.c:164 -#, c-format -msgid "unsupported RAID version: %d.%d" -msgstr "version RAID non prise en charge : %d.%d" - -#: grub-core/osdep/linux/getroot.c:169 -#, c-format -msgid "ioctl GET_ARRAY_INFO error: %s" -msgstr "erreur d'ioctl GET_ARRAY_INFO : %s" - -#: grub-core/osdep/linux/getroot.c:178 -#, c-format -msgid "ioctl GET_DISK_INFO error: %s" -msgstr "erreur d'ioctl GET_DISK_INFO : %s" - -#: grub-core/osdep/linux/getroot.c:608 grub-core/osdep/linux/getroot.c:678 -#: grub-core/osdep/linux/hostdisk.c:126 grub-core/osdep/unix/getroot.c:253 -#: grub-core/osdep/unix/getroot.c:642 grub-core/osdep/unix/platform.c:92 -#: grub-core/osdep/unix/platform.c:100 -#, c-format -msgid "Unable to open stream from %s: %s" -msgstr "Impossible d'ouvrir le flux de %s : %s" - -#: grub-core/osdep/linux/getroot.c:1033 -#, c-format -msgid "unknown kind of RAID device `%s'" -msgstr "type de périphérique RAID « %s » inconnu" - -#: grub-core/osdep/linux/ofpath.c:181 -#, c-format -msgid "`obppath' not found in parent dirs of `%s', no IEEE1275 name discovery" -msgstr "" -"« obppath » non disponible dans les répertoire parents de « %s », pas de " -"recherche de nom IEEE1275" - -#: grub-core/osdep/linux/ofpath.c:222 grub-core/osdep/unix/getroot.c:505 -#: grub-core/osdep/unix/getroot.c:529 grub-core/osdep/unix/relpath.c:49 -#: util/grub-install.c:984 util/grub-install.c:1331 util/grub-probe.c:323 -#, c-format -msgid "failed to get canonical path of `%s'" -msgstr "impossible d'obtenir le chemin canonique de « %s »" - -#: grub-core/osdep/linux/ofpath.c:740 -#, c-format -msgid "unknown device type %s" -msgstr "type de périphérique %s inconnu" - -#: grub-core/osdep/linux/ofpath.c:758 util/ieee1275/grub-ofpathname.c:39 -#, c-format -msgid "Usage: %s DEVICE\n" -msgstr "Utilisation : %s PÉRIPHÉRIQUE\n" - -#: grub-core/osdep/unix/exec.c:86 grub-core/osdep/unix/exec.c:172 -#: grub-core/osdep/unix/exec.c:217 -#, c-format -msgid "Unable to fork: %s" -msgstr "Impossible de bifurquer (« fork ») : %s" - -#: grub-core/osdep/unix/exec.c:166 grub-core/osdep/unix/exec.c:211 -#, c-format -msgid "Unable to create pipe: %s" -msgstr "Impossible de créer le tube : %s" - -#: grub-core/osdep/unix/getroot.c:370 -msgid "cannot save the original directory" -msgstr "impossible de sauvegarder le répertoire d'origine" - -#: grub-core/osdep/unix/getroot.c:423 grub-core/osdep/unix/getroot.c:480 -#: grub-core/osdep/unix/getroot.c:489 -msgid "cannot restore the original directory" -msgstr "impossible de restaurer le répertoire d'origine" - -#. TRANSLATORS: "stat" comes from the name of POSIX function. -#: grub-core/osdep/unix/getroot.c:551 grub-core/osdep/unix/hostdisk.c:61 -#: grub-core/osdep/unix/relpath.c:73 grub-core/osdep/unix/relpath.c:97 -#: util/getroot.c:160 util/getroot.c:162 util/grub-install.c:774 -#: util/grub-macbless.c:70 -#, c-format -msgid "cannot stat `%s': %s" -msgstr "impossible d'obtenir l'état de « %s » : %s" - -#: grub-core/osdep/unix/hostdisk.c:293 -#, c-format -msgid "cannot make temporary file: %s" -msgstr "impossible de créer un ficher temporaire : %s" - -#: grub-core/osdep/unix/hostdisk.c:311 -#, c-format -msgid "cannot make temporary directory: %s" -msgstr "impossible de créer un répertoire temporaire : %s" - -#: grub-core/osdep/unix/platform.c:77 -#, c-format -msgid "" -"couldn't find IEEE1275 device path for %s.\n" -"You will have to set `boot-device' variable manually" -msgstr "" -"impossible de trouver le chemin de périphériques IEEE1275 pour %s.\n" -"Veuillez définir la variable « boot-device » vous-même." - -#. TRANSLATORS: This message is shown when required executable `%s' -#. isn't found. -#: grub-core/osdep/unix/platform.c:149 grub-core/osdep/unix/platform.c:189 -#, c-format -msgid "%s: not found" -msgstr "%s : non disponible" - -#: grub-core/osdep/unix/platform.c:225 -#, c-format -msgid "" -"`nvsetenv' failed. \n" -"You will have to set `boot-device' variable manually. At the IEEE1275 " -"prompt, type:\n" -" %s\n" -msgstr "" -"Échec de « nvsetenv »\n" -"Veuillez définir la variable « boot-device » vous-même. À l'invite IEEE1275, " -"entrez :\n" -" %s\n" - -#: grub-core/osdep/unix/platform.c:240 -msgid "You will have to set `SystemPartition' and `OSLoader' manually." -msgstr "Veuillez définir « SystemPartition » et « OSLoader » vous-même." - -#. TRANSLATORS: canonical pathname is the -#. complete one e.g. /etc/fstab. It has -#. to contain `/' normally, if it doesn't -#. we're in trouble and throw this error. -#: grub-core/osdep/unix/relpath.c:90 -msgid "no `/' in canonical filename" -msgstr "pas de « / » dans le nom de fichier canonique" - -#: grub-core/osdep/windows/hostdisk.c:151 -msgid "cygwin_conv_path() failed" -msgstr "échec de cygwin_conv_path() " - -#: grub-core/osdep/windows/hostdisk.c:501 util/grub-install.c:570 -msgid "couldn't retrieve random data" -msgstr "impossible de récupérer les données aléatoires" - -#: grub-core/osdep/windows/platform.c:97 -msgid "Insufficient privileges to access firmware, assuming BIOS" -msgstr "" -"Droits insuffisants pour accéder au microprogramme (« firmware »), BIOS " -"supposé" - -#: grub-core/osdep/windows/platform.c:225 -msgid "no EFI routines are available when running in BIOS mode" -msgstr "pas de routine EFI disponible lors d’une exécution en mode BIOS" - -#: grub-core/osdep/windows/platform.c:240 -msgid "unexpected EFI error" -msgstr "erreur EFI inattendue" - -#: grub-core/osdep/windows/platform.c:315 -msgid "Couldn't find a free BootNNNN slot" -msgstr "Impossible de trouver un emplacement BootNNNN libre" - -#: grub-core/partmap/gpt.c:191 -msgid "" -"this GPT partition label contains no BIOS Boot Partition; embedding won't be " -"possible" -msgstr "" -"cette étiquette de partition GPT ne contient pas de partition d'amorçage " -"BIOS ; l'embarquage ne sera pas possible" - -#: grub-core/partmap/gpt.c:196 -msgid "your BIOS Boot Partition is too small; embedding won't be possible" -msgstr "" -"la partition d'amorçage BIOS est trop petite ; l'embarquage ne sera pas " -"possible" - -#. TRANSLATORS: MBR gap and boot track is the same thing and is the space -#. between MBR and first partitition. If your language translates well only -#. "boot track", you can just use it everywhere. Next two messages are about -#. RAID controllers/software bugs which GRUB has to live with. Please spread -#. the message that these are bugs in other software and not merely -#. suboptimal behaviour. -#: grub-core/partmap/msdos.c:51 -#, c-format -msgid "" -"Sector %llu is already in use by raid controller `%s'; avoiding it. Please " -"ask the manufacturer not to store data in MBR gap" -msgstr "" -"Le secteur %llu est déjà utilisé par le contrôleur RAID « %s » ; à éviter. " -"Veuillez demander au fabriquant de ne pas sauver de données dans la piste " -"d'amorçage" - -#: grub-core/partmap/msdos.c:54 -#, c-format -msgid "" -"Sector %llu is already in use by the program `%s'; avoiding it. This " -"software may cause boot or other problems in future. Please ask its authors " -"not to store data in the boot track" -msgstr "" -"Le secteur %llu est déjà utilisé par le programme « %s » ; à éviter. Ce " -"logiciel risque de poser des problèmes d'amorçage ou autre à l'avenir. " -"Veuillez demander à ses auteurs de ne pas sauver de données dans la piste " -"d'amorçage" - -#: grub-core/partmap/msdos.c:384 -msgid "" -"other software is using the embedding area, and there is not enough room for " -"core.img. Such software is often trying to store data in a way that avoids " -"detection. We recommend you investigate" -msgstr "" -"un autre logiciel utilise la zone d'embarquage, et il n'y a pas assez de " -"place pour core.img. Ce genre de logiciel essaye souvent de sauver des " -"données de façon à éviter les détections. Vous devriez examiner cela" - -#: grub-core/partmap/msdos.c:395 -msgid "" -"this msdos-style partition label has no post-MBR gap; embedding won't be " -"possible" -msgstr "" -"cette étiquette de partition de type MSDOS n'a pas d'espace dans la piste " -"d'amorçage ; l'embarquage ne sera pas possible" - -#: grub-core/partmap/msdos.c:404 -msgid "your embedding area is unusually small. core.img won't fit in it." -msgstr "" -"la zone d'embarquage est exceptionnellement petite. core.img n'y tiendra pas." - -#: grub-core/parttool/msdospart.c:39 -msgid "Make partition active" -msgstr "Activer la partition" - -#: grub-core/parttool/msdospart.c:51 -msgid "not a primary partition" -msgstr "pas une partition primaire" - -#: grub-core/parttool/msdospart.c:69 -#, c-format -msgid "Partition %d is active now. \n" -msgstr "La partition %d est maintenant active. \n" - -#: grub-core/parttool/msdospart.c:74 -#, c-format -msgid "Cleared active flag on %d. \n" -msgstr "Attribut actif effacé de %d. \n" - -#: grub-core/parttool/msdospart.c:87 -msgid "Change partition type" -msgstr "Modifier le type de partition" - -#: grub-core/parttool/msdospart.c:88 -msgid "Set `hidden' flag in partition type" -msgstr "Définir l'attribut « caché » dans le type de partition" - -#: grub-core/parttool/msdospart.c:130 -#, c-format -msgid "the partition type 0x%x isn't valid" -msgstr "le type de partition 0x%x n'est pas valable" - -#. TRANSLATORS: In this case we're actually writing to the disk and actively -#. modifying partition type rather than just defining it. -#: grub-core/parttool/msdospart.c:137 -#, c-format -msgid "Setting partition type to 0x%x\n" -msgstr "Changement du type de partition à 0x%x\n" - -#. TRANSLATORS: 0 is a quantifier. "break" (similar to bash) -#. can be used e.g. to break 3 loops at once. -#. But asking it to break 0 loops makes no sense. -#: grub-core/script/execute.c:143 -msgid "can't break 0 loops" -msgstr "l'argument de break doit être un entier strictement positif" - -#. TRANSLATORS: It's about not being -#. inside a function. "return" can be used only -#. in a function and this error occurs if it's used -#. anywhere else. -#: grub-core/script/execute.c:227 -msgid "not in function body" -msgstr "n'est pas dans le corps d'une fonction" - -#: grub-core/script/execute.c:371 -#, c-format -msgid "invalid variable name `%s'" -msgstr "nom de variable « %s » incorrect" - -#: grub-core/script/execute.c:953 -msgid "cannot allocate command buffer" -msgstr "impossible d'allouer le tampon de commande" - -#: grub-core/script/lexer.c:144 util/grub-fstest.c:330 -msgid "unexpected end of file" -msgstr "fin de fichier inattendue" - -#: grub-core/script/main.c:55 grub-core/script/main.c:57 -#: grub-core/script/main.c:59 grub-core/script/main.c:67 -msgid "[NUM]" -msgstr "[NUM]" - -#: grub-core/script/main.c:55 -msgid "Exit from loops" -msgstr "Sortir des boucles." - -#: grub-core/script/main.c:57 -msgid "Continue loops" -msgstr "Continuer les boucles" - -#. TRANSLATORS: Positional arguments are -#. arguments $0, $1, $2, ... -#: grub-core/script/main.c:62 -msgid "Shift positional parameters." -msgstr "Décaler les paramètres positionnels." - -#: grub-core/script/main.c:64 -msgid "[VALUE]..." -msgstr "[VALEUR] ..." - -#: grub-core/script/main.c:65 -msgid "Set positional parameters." -msgstr "Définir les paramètres positionnels." - -#. TRANSLATORS: It's a command description -#. and "Return" is a verb, not a noun. The -#. command in question is "return" and -#. has exactly the same semanics as bash -#. equivalent. -#: grub-core/script/main.c:73 -msgid "Return from a function." -msgstr "Terminer une fonction." - -#: grub-core/term/gfxterm_background.c:176 -msgid "[-m (stretch|normal)] FILE" -msgstr "[-m (stretch|normal)] FICHIER" - -#: grub-core/term/gfxterm_background.c:177 -msgid "Load background image for active terminal." -msgstr "Charger l'image d'arrière-plan pour le terminal actif." - -#: grub-core/term/gfxterm_background.c:182 util/grub-install.c:302 -#: util/grub-install.c:303 util/grub-mkrescue.c:107 util/grub-mkrescue.c:108 -#: util/grub-render-label.c:61 util/grub-render-label.c:63 -msgid "COLOR" -msgstr "COULEUR" - -#: grub-core/term/gfxterm_background.c:183 -msgid "Set background color for active terminal." -msgstr "Définir la couleur d'arrière-plan pour le terminal actif." - -#: grub-core/term/i386/coreboot/cbmemc.c:139 -msgid "Show CBMEM console content." -msgstr "Afficher le contenu de la console CBMEM." - -#: grub-core/term/serial.c:57 -msgid "Set the serial unit." -msgstr "Définir le port série (unité)." - -#: grub-core/term/serial.c:58 -msgid "Set the serial port address." -msgstr "Définir l'adresse du port série." - -#: grub-core/term/serial.c:59 -msgid "Set the serial port speed." -msgstr "Définir la vitesse du port série." - -#: grub-core/term/serial.c:60 -msgid "Set the serial port word length." -msgstr "Définir la taille de trame du port série." - -#: grub-core/term/serial.c:61 -msgid "Set the serial port parity." -msgstr "Définir la parité du port série." - -#: grub-core/term/serial.c:62 -msgid "Set the serial port stop bits." -msgstr "Définir les bits d'arrêt du port série." - -#: grub-core/term/serial.c:63 -msgid "Set the base frequency." -msgstr "Définir la fréquence de référence." - -#: grub-core/term/serial.c:64 -msgid "Enable/disable RTS/CTS." -msgstr "Activer ou désactiver RTS/CTS" - -#: grub-core/term/serial.c:218 -#, c-format -msgid "serial port `%s' isn't found" -msgstr "le port série « %s » est indisponible" - -#: grub-core/term/serial.c:254 -msgid "unsupported serial port flow control" -msgstr "contrôle de débit de port série non valable" - -#: grub-core/term/serial.c:429 -msgid "[OPTIONS...]" -msgstr "[OPTIONS ...]" - -#: grub-core/term/serial.c:430 -msgid "Configure serial port." -msgstr "Configurer le port série." - -#: grub-core/term/terminfo.c:184 -#, c-format -msgid "unknown terminfo type `%s'" -msgstr "type « %s » de terminfo inconnu" - -#: grub-core/term/terminfo.c:668 -msgid "ASCII" -msgstr "ASCII" - -#: grub-core/term/terminfo.c:671 -msgid "UTF-8" -msgstr "UTF-8" - -#. TRANSLATORS: visually ordered UTF-8 is a non-compliant encoding -#. based on UTF-8 with right-to-left languages written in reverse. -#. Used on some terminals. Normal UTF-8 is refered as -#. "logically-ordered UTF-8" by opposition. -#: grub-core/term/terminfo.c:677 -msgid "visually-ordered UTF-8" -msgstr "UTF-8 ordonné visuellement" - -#: grub-core/term/terminfo.c:680 -msgid "Unknown encoding" -msgstr "Encodage inconnu" - -#: grub-core/term/terminfo.c:684 -msgid "Current terminfo types:" -msgstr "Types de terminfo actuels :" - -#: grub-core/term/terminfo.c:699 -msgid "Terminal is ASCII-only [default]." -msgstr "Le terminal est en ASCII seulement [par défaut]." - -#: grub-core/term/terminfo.c:700 -msgid "Terminal is logical-ordered UTF-8." -msgstr "Le terminal est en UTF-8 ordonné logiquement." - -#: grub-core/term/terminfo.c:701 -msgid "Terminal is visually-ordered UTF-8." -msgstr "Le terminal est en UTF-8 ordonné visuellement." - -#: grub-core/term/terminfo.c:703 -msgid "Terminal has specified geometry." -msgstr "Le terminal a la géométrie indiquée." - -#. TRANSLATORS: "x" has to be entered in, like an identifier, so please don't -#. use better Unicode codepoints. -#: grub-core/term/terminfo.c:706 -msgid "WIDTHxHEIGHT." -msgstr "LARGEURxHAUTEUR." - -#: grub-core/term/terminfo.c:746 -msgid "incorrect terminal dimensions specification" -msgstr "spécification des dimensions de terminal incorrecte" - -#: grub-core/term/terminfo.c:776 -#, c-format -msgid "terminal %s isn't found or it's not handled by terminfo" -msgstr "" -"Le terminal %s est indisponible ou n'est pas pris en charge par terminfo" - -#: grub-core/term/terminfo.c:785 -msgid "[[-a|-u|-v] [-g WxH] TERM [TYPE]]" -msgstr "[[-a|-u|-v] [-g LARGxHAUT] TERMINAL [TYPE]]" - -#: grub-core/term/terminfo.c:786 -msgid "Set terminfo type of TERM to TYPE.\n" -msgstr "Définir le type de terminfo du TERMINAL à TYPE.\n" - -#. TRANSLATORS: this is the BLOCK-argument, not -#. environment block. -#: grub-core/tests/test_blockarg.c:49 -msgid "Print and execute block argument." -msgstr "Afficher et exécuter l'argument de bloc." - -#. TRANSLATORS: We're speaking about bitmap images like -#. JPEG or PNG. -#: grub-core/video/bitmap.c:209 -#, c-format -msgid "bitmap file `%s' is of unsupported format" -msgstr "le fichier image « %s » n'est pas d'un format pris en charge" - -#: grub-core/video/i386/pc/vbe.c:1191 -#, c-format -msgid " VBE info: version: %d.%d OEM software rev: %d.%d\n" -msgstr "" -" renseignements VBE : version : %d.%d révision de logiciel OEM : %d.%d\n" - -#: grub-core/video/i386/pc/vbe.c:1198 -#, c-format -msgid " total memory: %d KiB\n" -msgstr " mémoire totale : %d Kio\n" - -#: grub-core/video/video.c:596 grub-core/video/video.c:762 -msgid "no suitable video mode found" -msgstr "aucun mode vidéo approprié disponible" - -#: include/grub/crypto.h:403 -msgid "access denied" -msgstr "accès refusé" - -#: include/grub/util/install.h:30 include/grub/util/install.h:35 -msgid "MODULES" -msgstr "MODULES" - -#: include/grub/util/install.h:31 -msgid "pre-load specified modules MODULES" -msgstr "précharger les modules MODULES indiqués" - -#: include/grub/util/install.h:33 -msgid "embed a specific DTB" -msgstr "embarquer un DTB spécifique" - -#: include/grub/util/install.h:36 -msgid "install only MODULES and their dependencies [default=all]" -msgstr "n’installer que les MODULES et leurs dépendances [tout par défaut]" - -#: include/grub/util/install.h:37 -msgid "THEMES" -msgstr "THÈMES" - -#: include/grub/util/install.h:38 -#, c-format -msgid "install THEMES [default=%s]" -msgstr "installer les THÈMES [%s par défaut]" - -#: include/grub/util/install.h:39 -msgid "FONTS" -msgstr "POLICES" - -#: include/grub/util/install.h:40 -#, c-format -msgid "install FONTS [default=%s]" -msgstr "installer les POLICES [%s par défaut]" - -#: include/grub/util/install.h:41 -msgid "LOCALES" -msgstr "LOCALES" - -#: include/grub/util/install.h:42 -msgid "install only LOCALES [default=all]" -msgstr "n’installer que les LOCALES [tout par défaut]" - -#: include/grub/util/install.h:45 -msgid "compress GRUB files [optional]" -msgstr "compresser les fichiers GRUB [facultatif]" - -#: include/grub/util/install.h:48 util/grub-mkimage.c:83 -msgid "choose the compression to use for core image" -msgstr "choisir la compression à utiliser pour l'image de base" - -#. TRANSLATORS: platform here isn't identifier. It can be translated. -#: include/grub/util/install.h:51 include/grub/util/install.h:54 -#: util/grub-mkimage.c:66 -#, c-format -msgid "use images and modules under DIR [default=%s/]" -msgstr "" -"utiliser les images et modules présents dans RÉP [%s/ par " -"défaut]" - -#: include/grub/util/install.h:57 -#, c-format -msgid "use translations under DIR [default=%s]" -msgstr "utiliser les traductions présentes dans RÉP [%s par défaut]" - -#: include/grub/util/install.h:60 -#, c-format -msgid "use themes under DIR [default=%s]" -msgstr "utiliser les thèmes présents dans RÉP [%s par défaut]" - -#: include/grub/util/install.h:65 util/grub-mkimage.c:78 -msgid "embed FILE as public key for signature checking" -msgstr "" -"embarquer FICHIER comme clef publique pour la vérification de signatures" - -#: util/editenv.c:59 util/grub-editenv.c:201 util/grub-install-common.c:535 -#: util/grub-mkimage.c:315 util/setup.c:791 -#, c-format -msgid "cannot sync `%s': %s" -msgstr "impossible de synchroniser « %s » avec « sync » : %s" - -#: util/editenv.c:64 -#, c-format -msgid "cannot rename the file %s to %s" -msgstr "impossible de renommer le fichier %s en %s" - -#: util/getroot.c:402 -#, c-format -msgid "disk does not exist, so falling back to partition device %s" -msgstr "" -"le disque n'existe pas, donc repli vers le périphérique de partition %s" - -#: util/grub-editenv.c:45 util/grub-fstest.c:506 -msgid "Commands:" -msgstr "Commandes :" - -#: util/grub-editenv.c:47 -msgid "Create a blank environment block file." -msgstr "Créer un fichier de bloc d'environnement vierge." - -#: util/grub-editenv.c:49 -msgid "List the current variables." -msgstr "Afficher les variables actuelles." - -#. TRANSLATORS: "set" is a keyword. It's a summary of "set" subcommand. -#: util/grub-editenv.c:51 -msgid "set [NAME=VALUE ...]" -msgstr "set [NOM=VALEUR ...]" - -#: util/grub-editenv.c:52 -msgid "Set variables." -msgstr "Définir les variables." - -#. TRANSLATORS: "unset" is a keyword. It's a summary of "unset" subcommand. -#: util/grub-editenv.c:54 -msgid "unset [NAME ...]" -msgstr "unset [NOM ...]" - -#: util/grub-editenv.c:55 -msgid "Delete variables." -msgstr "Supprimer les variables." - -#: util/grub-editenv.c:57 -msgid "Options:" -msgstr "Options :" - -#: util/grub-editenv.c:84 -msgid "You need to specify at least one command.\n" -msgstr "Vous devez indiquer au moins une commande.\n" - -#: util/grub-editenv.c:113 -msgid "FILENAME COMMAND" -msgstr "FICHIER COMMANDE" - -#: util/grub-editenv.c:114 -msgid "Tool to edit environment block." -msgstr "Outil pour éditer un bloc d'environnement." - -#: util/grub-editenv.c:116 -#, c-format -msgid "" -"If FILENAME is `-', the default value %s is used.\n" -"\n" -"There is no `delete' command; if you want to delete the whole environment\n" -"block, use `rm %s'." -msgstr "" -"Si FICHIER est « - », la valeur par défaut %s est utilisée.\n" -"\n" -"Il n’y a pas de commande « delete ». Si vous voulez supprimer tous\n" -"l’environnement, utilisez « rm %s »." - -#: util/grub-editenv.c:162 -msgid "invalid environment block" -msgstr "bloc d'environnement incorrect" - -#: util/grub-editenv.c:217 -#, c-format -msgid "invalid parameter %s" -msgstr "paramètre %s incorrect" - -#: util/grub-editenv.c:222 -msgid "environment block too small" -msgstr "bloc d'environnement trop petit" - -#: util/grub-fstest.c:107 -#, c-format -msgid "disk read fails at offset %lld, length %lld" -msgstr "échec de lecture du disque à la position %lld, longueur %lld" - -#: util/grub-fstest.c:138 -#, c-format -msgid "invalid skip value %lld" -msgstr "valeur de saut %lld incorrecte" - -#: util/grub-fstest.c:160 util/grub-fstest.c:246 -#, c-format -msgid "read error at offset %llu: %s" -msgstr "erreur de lecture à la position %llu : %s" - -#: util/grub-fstest.c:210 -#, c-format -msgid "cannot open OS file `%s': %s" -msgstr "impossible d'ouvrir le fichier « %s » du système d'exploitation : %s" - -#: util/grub-fstest.c:225 util/misc.c:126 -#, c-format -msgid "cannot write to the stdout: %s" -msgstr "impossible d'écrire sur la sortie standard : %s" - -#: util/grub-fstest.c:259 -#, c-format -msgid "compare fail at offset %llu" -msgstr "échec de comparaison à la position %llu" - -#: util/grub-fstest.c:280 util/grub-fstest.c:314 -#, c-format -msgid "OS file %s open error: %s" -msgstr "erreur d'ouverture du fichier %s de système d'exploitation : %s" - -#: util/grub-fstest.c:402 util/grub-mount.c:392 -#, c-format -msgid "`loopback' command fails: %s" -msgstr "échec de la commande « loopback » : %s" - -#: util/grub-fstest.c:413 util/grub-mount.c:402 -#, c-format -msgid "`cryptomount' command fails: %s" -msgstr "échec de la commande « cryptomount » : %s" - -#: util/grub-fstest.c:474 util/grub-fstest.c:478 -msgid "couldn't retrieve UUID" -msgstr "impossible de récupérer l'UUID" - -#: util/grub-fstest.c:507 -msgid "ls PATH" -msgstr "ls CHEMIN" - -#: util/grub-fstest.c:507 -msgid "List files in PATH." -msgstr "Afficher les fichiers dans CHEMIN." - -#: util/grub-fstest.c:508 -msgid "cp FILE LOCAL" -msgstr "cp FICHIER LOCAL" - -#: util/grub-fstest.c:508 -msgid "Copy FILE to local file LOCAL." -msgstr "Copier FICHIER vers le fichier local LOCAL." - -#: util/grub-fstest.c:509 -msgid "cat FILE" -msgstr "cat FICHIER" - -#: util/grub-fstest.c:509 -msgid "Copy FILE to standard output." -msgstr "Copier FICHIER sur la sortie standard." - -#: util/grub-fstest.c:510 -msgid "cmp FILE LOCAL" -msgstr "cmp FICHIER LOCAL" - -#: util/grub-fstest.c:510 -msgid "Compare FILE with local file LOCAL." -msgstr "Comparer FICHIER avec le fichier LOCAL." - -#: util/grub-fstest.c:511 -msgid "hex FILE" -msgstr "hex FICHIER" - -#: util/grub-fstest.c:511 -msgid "Show contents of FILE in hex." -msgstr "Afficher le contenu de FICHIER en hexadécimal." - -#: util/grub-fstest.c:512 -msgid "crc FILE" -msgstr "crc FICHIER" - -#: util/grub-fstest.c:512 -msgid "Get crc32 checksum of FILE." -msgstr "Calculer la somme de contrôle CRC32 de FICHIER." - -#: util/grub-fstest.c:513 -msgid "blocklist FILE" -msgstr "blocklist FICHIER" - -#: util/grub-fstest.c:513 -msgid "Display blocklist of FILE." -msgstr "Affiche la liste des blocs de FICHIER." - -#: util/grub-fstest.c:514 -msgid "xnu_uuid DEVICE" -msgstr "xnu_uuid PÉRIPHÉRIQUE" - -#: util/grub-fstest.c:514 -msgid "Compute XNU UUID of the device." -msgstr "Calculer l'UUID XNU du périphérique." - -#. TRANSLATORS: bitmaps are images like e.g. in JPEG. -#: util/grub-fstest.c:517 util/grub-fstest.c:518 util/grub-fstest.c:519 -#: util/grub-mkfont.c:938 util/grub-mkfont.c:951 util/grub-mkfont.c:952 -#: util/grub-mkpasswd-pbkdf2.c:46 util/grub-mkpasswd-pbkdf2.c:47 -#: util/grub-mkpasswd-pbkdf2.c:48 -msgid "NUM" -msgstr "NUM" - -#: util/grub-fstest.c:517 -msgid "Skip N bytes from output file." -msgstr "Sauter N octets du fichier de sortie." - -#: util/grub-fstest.c:518 -msgid "Handle N bytes in output file." -msgstr "Traiter N octets du fichier de sortie." - -#: util/grub-fstest.c:519 -msgid "Specify the number of input files." -msgstr "Indiquer le nombre de fichiers d'entrée." - -#: util/grub-fstest.c:520 util/grub-mount.c:453 -msgid "Set debug environment variable." -msgstr "Définir la variable d'environnement de débogage." - -#: util/grub-fstest.c:521 util/grub-mount.c:454 -msgid "Mount crypto devices." -msgstr "Monter les périphériques chiffrés." - -#. TRANSLATORS: "prompt" is a keyword. -#: util/grub-fstest.c:524 util/grub-mount.c:457 -msgid "FILE|prompt" -msgstr "FICHIER|prompt" - -#: util/grub-fstest.c:524 util/grub-mount.c:457 -msgid "Load zfs crypto key." -msgstr "Charger la clef de chiffrement ZFS." - -#: util/grub-fstest.c:526 -msgid "Uncompress data." -msgstr "Décompresser les données." - -#: util/grub-fstest.c:605 -msgid "Invalid disk count.\n" -msgstr "Décompte de disques incorrect.\n" - -#. TRANSLATORS: disk count is optional but if it's there it must -#. be before disk list. So please don't imply disk count as mandatory. -#. -#: util/grub-fstest.c:613 -msgid "Disk count must precede disks list.\n" -msgstr "Le décompte des disques doit précéder la liste des disques.\n" - -#: util/grub-fstest.c:633 -msgid "No command is specified.\n" -msgstr "Aucune commande indiquée.\n" - -#: util/grub-fstest.c:638 -msgid "Not enough parameters to command.\n" -msgstr "Paramètres manquants pour la commande.\n" - -#: util/grub-fstest.c:711 -#, c-format -msgid "Invalid command %s.\n" -msgstr "Commande %s incorrecte.\n" - -#: util/grub-fstest.c:724 -msgid "IMAGE_PATH COMMANDS" -msgstr "CHEMIN_IMAGE COMMANDES" - -#: util/grub-fstest.c:725 util/grub-mount.c:553 -msgid "Debug tool for filesystem driver." -msgstr "Outil de débogage du pilote de système de fichier." - -#: util/grub-glue-efi.c:53 -msgid "set input filename for 32-bit part." -msgstr "définir le nom de fichier d'entrée pour la partie 32 bits." - -#: util/grub-glue-efi.c:55 -msgid "set input filename for 64-bit part." -msgstr "définir le nom de fichier d'entrée pour la partie 64 bits." - -#: util/grub-glue-efi.c:57 util/grub-mklayout.c:55 util/grub-render-label.c:71 -msgid "set output filename. Default is STDOUT" -msgstr "définir le nom de fichier de sortie. STDOUT par défaut" - -#: util/grub-glue-efi.c:94 util/grub-mklayout.c:476 -#: util/grub-mkpasswd-pbkdf2.c:86 util/grub-render-label.c:131 -msgid "[OPTIONS]" -msgstr "[OPTIONS]" - -#: util/grub-glue-efi.c:95 -msgid "Glue 32-bit and 64-bit binary into Apple universal one." -msgstr "" -"Coller des binaires 32 et 64 bits dans un seul binaire universel Apple." - -#: util/grub-glue-efi.c:116 -msgid "Missing input file\n" -msgstr "Fichier d'entrée manquant\n" - -#: util/grub-install-common.c:127 util/grub-install-common.c:151 -#, c-format -msgid "cannot copy `%s' to `%s': %s" -msgstr "impossible de copier « %s » vers « %s » : %s" - -#: util/grub-install-common.c:147 -#, c-format -msgid "can't compress `%s' to `%s'" -msgstr "impossible de compresser « %s » vers « %s »" - -#: util/grub-install-common.c:196 util/grub-install-common.c:552 -#: util/grub-install-common.c:579 util/grub-install-common.c:621 -#, c-format -msgid "cannot open directory `%s': %s" -msgstr "impossible d'ouvrir le répertoire « %s » : %s" - -#: util/grub-install-common.c:212 -#, c-format -msgid "cannot delete `%s': %s" -msgstr "impossible de supprimer « %s » : %s" - -#: util/grub-install-common.c:324 util/grub-mkimage.c:209 -msgid "grub-mkimage is compiled without XZ support" -msgstr "grub-mkimage est compilé sans prise en charge de XZ" - -#: util/grub-install-common.c:332 util/grub-mkimage.c:217 -#, c-format -msgid "Unknown compression format %s" -msgstr "Format de compression %s inconnu" - -#: util/grub-install-common.c:400 -#, c-format -msgid "Unrecognized compression `%s'" -msgstr "Compression « %s » non reconnue" - -#: util/grub-install-common.c:509 -#, c-format -msgid "unknown target format %s" -msgstr "format cible %s inconnu" - -#: util/grub-install-common.c:700 -#, c-format -msgid "cannot find locale `%s'" -msgstr "impossible de trouver la locale « %s »" - -#: util/grub-install-common.c:939 -#, c-format -msgid "%s doesn't exist. Please specify --target or --directory" -msgstr "%s n'existe pas. Veuillez utiliser --target ou --directory" - -#: util/grub-install-common.c:948 util/grub-install-common.c:951 -#, c-format -msgid "invalid modinfo file `%s'" -msgstr "fichier modinfo « %s » incorrect" - -#: util/grub-install-common.c:966 -#, c-format -msgid "Unknown platform `%s-%s'" -msgstr "Plate-forme « %s-%s » inconnue" - -#: util/grub-install.c:238 -msgid "More than one install device?" -msgstr "Plus d'un disque d'installation, alors qu'un seul est attendu." - -#: util/grub-install.c:251 -#, c-format -msgid "" -"install GRUB images under the directory DIR/%s instead of the %s directory" -msgstr "" -"installer les images GRUB dans le répertoire RÉP/%s au lieu du répertoire %s" - -#: util/grub-install.c:256 util/grub-probe.c:734 -msgid "TARGET" -msgstr "CIBLE" - -#. TRANSLATORS: "TARGET" as in "target platform". -#: util/grub-install.c:258 -#, c-format -msgid "install GRUB for TARGET platform [default=%s]; available targets: %s" -msgstr "" -"installer GRUB pour la plate-forme CIBLE [%s par défaut]; cibles " -"disponibles: %s" - -#. TRANSLATORS: "may break" doesn't just mean that option wouldn't have any -#. effect but that it will make the resulting install unbootable from HDD. -#. TRANSLATORS: The potential breakage isn't limited to floppies but it's -#. likely to make the install unbootable from HDD. -#: util/grub-install.c:267 util/grub-setup.c:94 -msgid "" -"make the drive also bootable as floppy (default for fdX devices). May break " -"on some BIOSes." -msgstr "" -"rendre aussi le disque amorçable, comme une disquette (par défaut pour les " -"périphériques fdX). Ce paramètre risque de poser des problèmes avec certains " -"BIOS." - -#: util/grub-install.c:270 -msgid "delete device map if it already exists" -msgstr "effacer la carte de périphériques si elle existe déjà" - -#: util/grub-install.c:272 util/grub-setup.c:87 -msgid "install even if problems are detected" -msgstr "installer même si des problèmes sont détectés" - -#: util/grub-install.c:274 -msgid "use identifier file even if UUID is available" -msgstr "utiliser le ficher d'identifiant même si l'UUID est disponible" - -#: util/grub-install.c:276 -msgid "" -"disk module to use (biosdisk or native). This option is only available on " -"BIOS target." -msgstr "" -"le module de disque à utiliser (biosdisk ou native). Cette option n'est " -"disponible que sur la cible BIOS." - -#: util/grub-install.c:279 -msgid "" -"don't update the `boot-device'/`Boot*' NVRAM variables. This option is only " -"available on EFI and IEEE1275 targets." -msgstr "" -"ne pas mettre à jour les variables NVRAM « boot-device » ou « Boot* ». Cette " -"option n'est disponible que sur les cibles EFI et IEEE1275." - -#: util/grub-install.c:282 util/grub-setup.c:89 -msgid "do not probe for filesystems in DEVICE" -msgstr "ne pas chercher de systèmes de fichiers sur PÉRIPHÉRIQUE" - -#: util/grub-install.c:284 -msgid "do not install bootsector" -msgstr "ne pas installer le secteur d’amorçage" - -#: util/grub-install.c:286 util/grub-setup.c:96 -msgid "" -"Do not apply any reed-solomon codes when embedding core.img. This option is " -"only available on x86 BIOS targets." -msgstr "" -"Ne pas appliquer le code Reed-Solomon lors de l’embarquage de core.img. " -"Cette option n'est disponible que sur les cibles BIOS x86." - -#: util/grub-install.c:293 -msgid "" -"the installation device is removable. This option is only available on EFI." -msgstr "" -"le périphérique d'installation est amovible. Cette option n'est disponible " -"que sur EFI." - -#: util/grub-install.c:295 -msgid "ID" -msgstr "IDENTIFIANT" - -#: util/grub-install.c:296 -msgid "the ID of bootloader. This option is only available on EFI and Macs." -msgstr "" -"l'IDENTIFIANT du chargeur d'amorçage. Cette option n'est disponible que sur " -"EFI et Mac." - -#: util/grub-install.c:298 -msgid "use DIR as the EFI System Partition root." -msgstr "utiliser RÉP comme racine de la partition système EFI." - -#: util/grub-install.c:300 -msgid "use DIR for PPC MAC install." -msgstr "Utiliser RÉP pour l’installation Mac PowerPC." - -#: util/grub-install.c:301 util/grub-mkrescue.c:106 -msgid "use FILE as font for label" -msgstr "utiliser FICHIER comme police pour l'étiquette" - -#: util/grub-install.c:302 util/grub-mkrescue.c:107 -msgid "use COLOR for label" -msgstr "utiliser COULEUR pour l'étiquette" - -#: util/grub-install.c:303 util/grub-mkrescue.c:108 -msgid "use COLOR for label background" -msgstr "utiliser COULEUR pour l'arrière-plan d'étiquette" - -#: util/grub-install.c:304 util/grub-mkrescue.c:110 -msgid "use STRING as product version" -msgstr "utiliser CHAÃŽNE comme version de produit" - -#: util/grub-install.c:361 -msgid "[OPTION] [INSTALL_DEVICE]" -msgstr "[OPTION] [PÉRIPHÉRIQUE_INSTALLATION]" - -#: util/grub-install.c:362 -msgid "Install GRUB on your drive." -msgstr "Installer GRUB sur le disque." - -#: util/grub-install.c:363 -#, c-format -msgid "" -"INSTALL_DEVICE must be system device filename.\n" -"%s copies GRUB images into %s. On some platforms, it may also install GRUB " -"into the boot sector." -msgstr "" -"PÉRIPHÉRIQUE_INSTALLATION doit être un nom de fichier de périphérique " -"système.\n" -"%s copie les images GRUB sur %s. Sur certaines plates-formes, cela pourrait " -"aussi installer GRUB sur le secteur d'amorçage." - -#: util/grub-install.c:672 -#, c-format -msgid "the drive %s is defined multiple times in the device map %s" -msgstr "" -"le disque %s est défini plusieurs fois dans la carte de périphériques %s" - -#: util/grub-install.c:878 -msgid "Unable to determine your platform. Use --target." -msgstr "Impossible de déterminer la plate-forme. Utilisez --target." - -#: util/grub-install.c:891 -#, c-format -msgid "Installing for %s platform.\n" -msgstr "Installation pour la plate-forme %s.\n" - -#: util/grub-install.c:939 -msgid "install device isn't specified" -msgstr "le périphérique d'installation n'est pas indiqué" - -#: util/grub-install.c:1057 -msgid "cannot find EFI directory" -msgstr "impossible de trouver le répertoire EFI" - -#: util/grub-install.c:1060 util/grub-install.c:1209 util/grub-install.c:1254 -#: util/grub-macbless.c:76 util/grub-probe.c:329 util/setup.c:316 -#, c-format -msgid "cannot find a device for %s (is /dev mounted?)" -msgstr "impossible de trouver un périphérique pour %s (/dev est-il monté ?)" - -#: util/grub-install.c:1069 util/grub-install.c:1217 util/grub-install.c:1270 -#: util/grub-install.c:1365 util/grub-macbless.c:80 util/grub-probe.c:372 -#, c-format -msgid "cannot find a GRUB drive for %s. Check your device.map" -msgstr "" -"impossible de trouver un périphérique GRUB pour %s. Vérifiez device.map." - -#: util/grub-install.c:1087 -#, c-format -msgid "%s doesn't look like an EFI partition" -msgstr "%s ne ressemble pas à une partition EFI" - -#: util/grub-install.c:1129 util/grub-install.c:1614 -msgid "You've found a bug" -msgstr "Vous avez découvert un bogue" - -#: util/grub-install.c:1231 -#, c-format -msgid "filesystem on %s is neither HFS nor HFS+" -msgstr "Le système de fichiers sur %s n’est ni HFS, ni HFS+" - -#: util/grub-install.c:1299 -#, c-format -msgid "" -"attempt to install to encrypted disk without cryptodisk enabled. Set `%s' in " -"file `%s'" -msgstr "" -"tentative d’installer sur un disque chiffré sans cryptodisk activé. " -"Définissez « %s » dans le fichier « %s »" - -#: util/grub-install.c:1410 util/grub-install.c:1772 util/grub-install.c:1872 -#, c-format -msgid "Can't create file: %s" -msgstr "Impossible de créer le fichier : %s" - -#: util/grub-install.c:1491 -msgid "no hints available for your platform. Expect reduced performance" -msgstr "" -"pas de conseil (« hint ») disponible pour cette plate-forme. Performances " -"réduites attendus" - -#. TRANSLATORS: This is a prefix in the log to indicate that usually -#. a command would be executed but due to an option was skipped. -#: util/grub-install.c:1702 -msgid "NOT RUNNING: " -msgstr "Non exécuté : " - -#: util/grub-install.c:1806 -msgid "the chosen partition is not a PReP partition" -msgstr "la partition choisie n'est pas une partition PReP" - -#: util/grub-install.c:1811 -msgid "failed to copy Grub to the PReP partition" -msgstr "échec de copie de GRUB sur la partition PReP" - -#: util/grub-install.c:1816 -#, c-format -msgid "" -"the PReP partition is not empty. If you are sure you want to use it, run dd " -"to clear it: `%s'" -msgstr "" -"la partition PReP n'est pas vide. Si vous voulez vraiment l'utiliser, " -"utilisez dd pour l'effacer : « %s »" - -#: util/grub-install.c:1888 util/grub-install.c:1932 -#, c-format -msgid "efibootmgr failed to register the boot entry: %s" -msgstr "efibootmgr n'a pas réussi à enregistrer l'entrée de démarrage: %s" - -#: util/grub-install.c:1916 -msgid "EFI bootloader id isn't specified." -msgstr "L'identifiant de chargeur d'amorçage EFI n'est pas indiqué." - -#: util/grub-install.c:1950 -msgid "WARNING: no platform-specific install was performed" -msgstr "" -"Attention : aucune installation spécifique à la plate-forme n'a été effectuée" - -#: util/grub-install.c:1957 -msgid "Installation finished. No error reported." -msgstr "Installation terminée, sans erreur." - -#: util/grub-macbless.c:101 -msgid "bless for x86-based macs" -msgstr "bless pour les Mac x86" - -#: util/grub-macbless.c:103 -msgid "bless for ppc-based macs" -msgstr "bless pour les Mac PowerPC" - -#: util/grub-macbless.c:136 util/grub-probe.c:823 -msgid "No path or device is specified.\n" -msgstr "Aucun chemin ni aucun périphérique n'est indiqué.\n" - -#: util/grub-macbless.c:157 -msgid "--ppc PATH|--x86 FILE" -msgstr "--ppc CHEMIN|--x86 FICHIER" - -#: util/grub-macbless.c:158 -msgid "Mac-style bless on HFS or HFS+" -msgstr "bless de type mac pour HFS ou HFS+" - -#: util/grub-menulst2cfg.c:44 -#, c-format -msgid "Usage: %s [INFILE [OUTFILE]]\n" -msgstr "Utilisation : %s [FICHIER_ENTRÉE [FICHIER_SORTIE]]\n" - -#: util/grub-mkfont.c:157 -#, c-format -msgid "Freetype Error %d loading glyph 0x%x for U+0x%x%s" -msgstr "Erreur %d de Freetype en chargeant glyphe 0x%x pour U+0x%x%s" - -#. TRANSLATORS: These qualifiers are used for cursive typography, -#. mainly Arabic. Note that the terms refer to the visual position -#. and not logical order and if used in left-to-right script then -#. leftmost is initial but with right-to-left script like Arabic -#. rightmost is the initial. -#: util/grub-mkfont.c:165 -msgid " (medial)" -msgstr " (médiane)" - -#: util/grub-mkfont.c:166 -msgid " (leftmost)" -msgstr " (initiale, ou finale pour les écritures de droite à gauche)" - -#: util/grub-mkfont.c:167 -msgid " (rightmost)" -msgstr " (finale, ou initiale pour les écritures de droite à gauche)" - -#: util/grub-mkfont.c:481 -#, c-format -msgid "Out of range substitution (%d, %d)\n" -msgstr "Substitution hors limites (%d, %d)\n" - -#. TRANSLATORS: "lookup" is taken directly from font specifications -#. which are formulated as "Under condition X replace LOOKUP with -#. SUBSTITUITION". " -#: util/grub-mkfont.c:506 -#, c-format -msgid "Out of range lookup: %d\n" -msgstr "Recherche hors limites : %d\n" - -#: util/grub-mkfont.c:514 -#, c-format -msgid "Unsupported substitution type: %d\n" -msgstr "Type de substitution non pris en charge : %d\n" - -#: util/grub-mkfont.c:550 -#, c-format -msgid "Unsupported substitution specification: %d\n" -msgstr "Spécification de substitution non prise en charge : %d\n" - -#: util/grub-mkfont.c:582 -#, c-format -msgid "Unsupported coverage specification: %d\n" -msgstr "Spécification de couverture non prise en charge : %d\n" - -#: util/grub-mkfont.c:622 -#, c-format -msgid "WARNING: unsupported font feature parameters: %x\n" -msgstr "" -"Attention : paramètres de fonctionnalité de police non pris en charge : %x\n" - -#: util/grub-mkfont.c:936 util/grub-mkrescue.c:98 util/grub-mkstandalone.c:48 -msgid "save output in FILE [required]" -msgstr "sauver la sortie dans FICHIER [nécessaire]" - -#. TRANSLATORS: some font files may have multiple faces (fonts). -#. This option is used to chose among them, the first face being '0'. -#. Rarely used. -#: util/grub-mkfont.c:942 -msgid "select face index" -msgstr "sélectionner l'indice de police d'écriture" - -#: util/grub-mkfont.c:943 -msgid "FROM-TO[,FROM-TO]" -msgstr "DE-À[,DE-À]" - -#. TRANSLATORS: It refers to the range of characters in font. -#: util/grub-mkfont.c:945 -msgid "set font range" -msgstr "définir l'intervalle de caractères" - -#. TRANSLATORS: "family name" for font is just a generic name without suffix -#. like "Bold". -#: util/grub-mkfont.c:949 -msgid "set font family name" -msgstr "définir le nom de famille de la police" - -#: util/grub-mkfont.c:950 -msgid "SIZE" -msgstr "TAILLE" - -#: util/grub-mkfont.c:950 -msgid "set font size" -msgstr "définir la taille de police" - -#: util/grub-mkfont.c:951 -msgid "set font descent" -msgstr "définir le talus de pied de la police" - -#: util/grub-mkfont.c:952 -msgid "set font ascent" -msgstr "définir le talus de tête de la police" - -#: util/grub-mkfont.c:953 -msgid "convert to bold font" -msgstr "convertir en police grasse" - -#: util/grub-mkfont.c:954 -msgid "force autohint" -msgstr "forcer l'optimisation (« hinting ») automatique" - -#: util/grub-mkfont.c:955 -msgid "disable hinting" -msgstr "désactiver l'optimisation (« hinting »)" - -#. TRANSLATORS: some fonts contain bitmap rendering for -#. some sizes. This option forces rerendering even if -#. pre-rendered bitmap is available. -#. -#: util/grub-mkfont.c:961 -msgid "ignore bitmap strikes when loading" -msgstr "ne pas utiliser les tracés bitmap déjà existants" - -#. TRANSLATORS: It refers to the range of characters in font. -#: util/grub-mkfont.c:1059 util/grub-mkfont.c:1075 -msgid "invalid font range" -msgstr "intervalle de caractères incorrect" - -#: util/grub-mkfont.c:1151 -msgid "[OPTIONS] FONT_FILES" -msgstr "[OPTIONS] FICHIERS_POLICE" - -#: util/grub-mkfont.c:1152 -msgid "Convert common font file formats into PF2" -msgstr "Convertir les formats de fichier de police habituels en PF2" - -#: util/grub-mkfont.c:1182 util/grub-mkrescue.c:483 -#: util/grub-mkstandalone.c:306 -msgid "output file must be specified" -msgstr "le fichier de destination doit être indiqué" - -#: util/grub-mkfont.c:1185 -msgid "FT_Init_FreeType fails" -msgstr "échec de FT_Init_FreeType" - -#: util/grub-mkfont.c:1199 -#, c-format -msgid "can't open file %s, index %d: error %d" -msgstr "impossible d'ouvrir le fichier %s, index %d : erreur %d" - -#: util/grub-mkfont.c:1229 -#, c-format -msgid "can't set %dx%d font size: Freetype error %d: %s" -msgstr "" -"impossible de définir la taille de police %dx%d : erreur %d de Freetype : %s" - -#: util/grub-mkimage.c:67 -msgid "set prefix directory" -msgstr "définir le répertoire de préfixe" - -#. TRANSLATORS: "memdisk" here isn't an identifier, it can be translated. -#. "embed" is a verb (command description). " -#: util/grub-mkimage.c:71 -msgid "" -"embed FILE as a memdisk image\n" -"Implies `-p (memdisk)/boot/grub' and overrides any prefix supplied " -"previously, but the prefix itself can be overridden by later options" -msgstr "" -"embarquer FICHIER comme une image de disque en mémoire (memdisk)\n" -"Implique « -p (memdisk)/boot/grub » et substitue tous les préfixes fournis " -"précédemment, mais le préfixe lui-même peut être substitué par les options " -"suivantes" - -#: util/grub-mkimage.c:74 -msgid "embed FILE as a device tree (DTB)\n" -msgstr "embarquer FICHIER comme arbre de périphériques (DTB)\n" - -#: util/grub-mkimage.c:76 -msgid "embed FILE as an early config" -msgstr "embarquer FICHIER comme une configuration de départ" - -#. TRANSLATORS: NOTE is a name of segment. -#: util/grub-mkimage.c:80 -msgid "add NOTE segment for CHRP IEEE1275" -msgstr "ajouter le segment NOTE pour CHRP IEEE1275" - -#: util/grub-mkimage.c:81 -msgid "output a generated image to FILE [default=stdout]" -msgstr "envoyer l'image générée dans FICHIER [stdout par défaut]" - -#: util/grub-mkimage.c:82 -msgid "FORMAT" -msgstr "FORMAT" - -#: util/grub-mkimage.c:100 util/grub-mkstandalone.c:62 -msgid "generate an image in FORMAT" -msgstr "générer une image au FORMAT" - -#: util/grub-mkimage.c:101 util/grub-mkstandalone.c:63 -msgid "available formats:" -msgstr "formats disponibles :" - -#: util/grub-mkimage.c:152 util/grub-mkstandalone.c:96 -#, c-format -msgid "unknown target format %s\n" -msgstr "format cible %s inconnu\n" - -#: util/grub-mkimage.c:242 -msgid "[OPTION]... [MODULES]" -msgstr "[OPTIONS] ... [MODULES]" - -#: util/grub-mkimage.c:243 -msgid "Make a bootable image of GRUB." -msgstr "Faire une image de GRUB amorçable." - -#: util/grub-mkimage.c:273 util/grub-mkstandalone.c:309 -msgid "Target format not specified (use the -O option)." -msgstr "Format cible non indiqué (utilisez l'option -O)." - -#: util/grub-mkimage.c:282 -msgid "Prefix not specified (use the -p option)." -msgstr "Préfixe non indiqué (utilisez l'option -p)." - -#: util/grub-mkimage.c:318 util/setup.c:793 -#, c-format -msgid "cannot close `%s': %s" -msgstr "impossible de fermer « %s » : %s" - -#: util/grub-mkimagexx.c:2191 -#, c-format -msgid "" -"`%s' is miscompiled: its start address is 0x%llx instead of 0x%llx: ld.gold " -"bug?" -msgstr "" -"« %s » est mal compilé : son adresse de départ est 0x%llx au lieu de 0x" -"%llx : peut-être est-ce dû à un bogue de ld.gold." - -#: util/grub-mklayout.c:53 -msgid "set input filename. Default is STDIN" -msgstr "définir le nom de fichier d'entrée. STDIN par défaut" - -#. TRANSLATORS: scan identifier is keyboard key symbolic name. -#: util/grub-mklayout.c:307 -#, c-format -msgid "Unknown keyboard scan identifier %s\n" -msgstr "Identifiant de touche %s inconnu\n" - -#. TRANSLATORS: scan code is keyboard key numeric identifier. -#: util/grub-mklayout.c:390 util/grub-mklayout.c:418 -#, c-format -msgid "Unknown keyboard scan code 0x%02x\n" -msgstr "Code de touche 0x%02x inconnu\n" - -#. TRANSLATORS: this error is triggered when input doesn't contain any -#. key descriptions. -#: util/grub-mklayout.c:438 -msgid "ERROR: no valid keyboard layout found. Check the input.\n" -msgstr "" -"Erreur : pas de disposition de clavier disponible. Vérifiez l'entrée.\n" - -#. TRANSLATORS: "one" is a shortcut for "keyboard layout". -#: util/grub-mklayout.c:478 -msgid "Generate GRUB keyboard layout from Linux console one." -msgstr "" -"Générer une disposition de clavier GRUB à partir de celle de la console " -"Linux." - -#: util/grub-mknetdir.c:47 -msgid "root directory of TFTP server" -msgstr "répertoire racine du serveur TFTP" - -#: util/grub-mknetdir.c:49 -msgid "relative subdirectory on network server" -msgstr "sous-répertoire relatif sur le serveur réseau" - -#: util/grub-mknetdir.c:88 -msgid "" -"Prepares GRUB network boot images at net_directory/subdir assuming " -"net_directory being TFTP root." -msgstr "" -"Prépare les images d’amorçage en réseau GRUB dans net_directory/subdir en " -"supposant que net_directory est la racine TFTP." - -#: util/grub-mknetdir.c:146 -#, c-format -msgid "unsupported platform %s" -msgstr "plate-forme %s non prise en charge" - -#. TRANSLATORS: First %s is replaced by platform name. Second one by filename. -#: util/grub-mknetdir.c:165 -#, c-format -msgid "" -"Netboot directory for %s created. Configure your DHCP server to point to %s\n" -msgstr "" -"répertoire Netboot créé pour %s. Configurez le serveur DHCP pour pointer " -"vers %s\n" - -#: util/grub-mkpasswd-pbkdf2.c:46 -msgid "Number of PBKDF2 iterations" -msgstr "Nombre d'itérations PBKDF2" - -#: util/grub-mkpasswd-pbkdf2.c:47 -msgid "Length of generated hash" -msgstr "Longueur du hachage généré." - -#: util/grub-mkpasswd-pbkdf2.c:48 -msgid "Length of salt" -msgstr "Longueur du salage." - -#: util/grub-mkpasswd-pbkdf2.c:87 -msgid "Generate PBKDF2 password hash." -msgstr "Générer un hachage PBKDF2 du mot de passe." - -#: util/grub-mkpasswd-pbkdf2.c:144 util/grub-mkpasswd-pbkdf2.c:151 -msgid "failure to read password" -msgstr "échec de lecture du mot de passe" - -#: util/grub-mkpasswd-pbkdf2.c:146 -msgid "Reenter password: " -msgstr "Entrez de nouveau le mot de passe : " - -#: util/grub-mkpasswd-pbkdf2.c:160 -msgid "passwords don't match" -msgstr "les mots de passe ne correspondent pas" - -#: util/grub-mkpasswd-pbkdf2.c:169 -msgid "couldn't retrieve random data for salt" -msgstr "impossible de récupérer les données aléatoires pour le salage" - -#: util/grub-mkpasswd-pbkdf2.c:184 -#, c-format -msgid "cryptographic error number %d" -msgstr "erreur cryptographique numéro %d" - -#: util/grub-mkpasswd-pbkdf2.c:203 -#, c-format -msgid "PBKDF2 hash of your password is %s\n" -msgstr "Le hachage PBKDF2 du mot de passe est %s\n" - -#: util/grub-mkrelpath.c:67 -msgid "No path is specified.\n" -msgstr "Aucun chemin indiqué.\n" - -#: util/grub-mkrelpath.c:78 -msgid "PATH" -msgstr "CHEMIN" - -#: util/grub-mkrelpath.c:79 -msgid "Transform a system filename into GRUB one." -msgstr "Transformer un nom de fichier système vers le format GRUB." - -#: util/grub-mkrescue.c:100 -msgid "save ROM images in DIR [optional]" -msgstr "sauver les images ROM dans RÉP [facultatif]" - -#. TRANSLATORS: xorriso is a program for creating ISOs and burning CDs. -#: util/grub-mkrescue.c:103 -msgid "use FILE as xorriso [optional]" -msgstr "utiliser FICHIER à la place de xorriso [facultatif]" - -#: util/grub-mkrescue.c:109 -msgid "use STRING as product name" -msgstr "utiliser CHAÃŽNE comme nom de produit" - -#: util/grub-mkrescue.c:111 -msgid "" -"enable sparc boot. Disables HFS+, APM, ARCS and boot as disk image for i386-" -"pc" -msgstr "" -"activer le démarrage SPARC. Désactiver HFS+, APM, ARCS et démarrer comme une " -"image disque pour i386-pc" - -#: util/grub-mkrescue.c:112 -msgid "" -"enable ARCS (big-endian mips machines, mostly SGI) boot. Disables HFS+, APM, " -"sparc64 and boot as disk image for i386-pc" -msgstr "" -"activer le démarrage ARCS (machines MIPS gros-boutistes, surtout SGI). " -"Désactiver HFS+, APM, sparc64 et démarrer comme une image disque pour i386-pc" - -#. TRANSLATORS: it generates one single image which is bootable through any method. -#: util/grub-mkrescue.c:125 -msgid "Make GRUB CD-ROM, disk, pendrive and floppy bootable image." -msgstr "" -"Faire une image GRUB amorçable de CD, de disque, de clef USB ou de disquette." - -#: util/grub-mkrescue.c:130 -#, c-format -msgid "" -"Generates a bootable CD/USB/floppy image. Arguments other than options to " -"this program are passed to xorriso, and indicate source files, source " -"directories, or any of the mkisofs options listed by the output of `%s'." -msgstr "" -"Créer une image amorçable de CD, USB ou disquette. Les arguments qui ne sont " -"pas des options de ce programme sont passées à xorriso, et indiquent les " -"fichiers source, répertoires source ou n’importe quelles options de mkisofs " -"affichées en sortie de « %s »." - -#: util/grub-mkrescue.c:134 -msgid "Option -- switches to native xorriso command mode." -msgstr "L'option -- bascule en mode natif de commande xorriso." - -#: util/grub-mkrescue.c:135 -msgid "Mail xorriso support requests to ." -msgstr "Envoyer les demandes d'aide sur xorriso à ." - -#: util/grub-mkrescue.c:221 util/grub-mkstandalone.c:114 -msgid "[OPTION] SOURCE..." -msgstr "[OPTION] SOURCE ..." - -#: util/grub-mkrescue.c:257 util/grub-mkrescue.c:300 util/grub-mkrescue.c:588 -#, c-format -msgid "enabling %s support ..." -msgstr "activation de la prise en charge de %s…" - -#: util/grub-mkrescue.c:486 -msgid "xorriso not found" -msgstr "xorriso pas trouvé" - -#: util/grub-mkrescue.c:623 -msgid "" -"Your xorriso doesn't support `--grub2-boot-info'. Some features are " -"disabled. Please use xorriso 1.2.9 or later." -msgstr "" -"Cette version de xorriso ne permet pas d'utiliser « --grub2-boot-info ». " -"Certaines fonctionnalités sont désactivées. Veuillez utiliser au moins la " -"version 1.2.9 de xorriso." - -#: util/grub-mkrescue.c:650 -msgid "" -"Your xorriso doesn't support `--grub2-boot-info'. Your core image is too " -"big. Boot as disk is disabled. Please use xorriso 1.2.9 or later." -msgstr "" -"Cette version de xorriso ne permet pas d'utiliser « --grub2-boot-info ». " -"L'image de base est trop grande. Le démarrage en tant que disque est " -"désactivé. Veuillez utiliser au moins la version 1.2.9 de xorriso." - -#: util/grub-mkstandalone.c:115 -msgid "" -"Generate a standalone image (containing all modules) in the selected format" -msgstr "Créer une image autonome (contenant tous les modules) au format choisi" - -#: util/grub-mkstandalone.c:115 -msgid "Graft point syntax (E.g. /boot/grub/grub.cfg=./grub.cfg) is accepted" -msgstr "" -"La syntaxe de point de greffe (par exemple /boot/grub/grub.cfg=./grub.cfg) " -"est acceptée" - -#: util/grub-mount.c:552 -msgid "IMAGE1 [IMAGE2 ...] MOUNTPOINT" -msgstr "IMAGE1 [IMAGE2 ...] POINT_DE_MONTAGE" - -#: util/grub-mount.c:575 -msgid "need an image and mountpoint" -msgstr "une image et un point de montage sont nécessaires" - -#: util/grub-probe.c:731 -msgid "given argument is a system device, not a path" -msgstr "l'argument donné est un périphérique système, pas un chemin" - -#: util/grub-probe.c:736 -msgid "separate items in output using ASCII NUL characters" -msgstr "éléments séparés dans la sortie utilisant des caractères ASCII NUL" - -#: util/grub-probe.c:754 -#, c-format -msgid "[default=%s]" -msgstr "[défaut=%s]" - -#: util/grub-probe.c:756 -msgid "print TARGET" -msgstr "afficher la CIBLE" - -#: util/grub-probe.c:757 -msgid "available targets:" -msgstr "cibles disponibles :" - -#: util/grub-probe.c:839 -msgid "[OPTION]... [PATH|DEVICE]" -msgstr "[OPTIONS] ... [CHEMIN|PÉRIPHÉRIQUE]" - -#: util/grub-probe.c:840 -msgid "" -"Probe device information for a given path (or device, if the -d option is " -"given)." -msgstr "" -"Examiner les renseignements du périphérique pour un chemin (ou un " -"périphérique avec l'option -d) donné." - -#: util/grub-render-label.c:60 -msgid "read text from FILE." -msgstr "lire le texte depuis le FICHIER." - -#: util/grub-render-label.c:62 -msgid "use COLOR for text" -msgstr "utiliser COULEUR pour le texte" - -#: util/grub-render-label.c:64 -msgid "use COLOR for background" -msgstr "utiliser COULEUR pour l'arrière-plan" - -#. TRANSLATORS: The result is always stored to file and -#. never shown directly, so don't use "show" as synonym for render. Use "create" if -#. "render" doesn't translate directly. -#: util/grub-render-label.c:69 -msgid "set the label to render" -msgstr "définir l'étiquette à fournir" - -#: util/grub-render-label.c:73 -msgid "use FILE as font (PF2)." -msgstr "utiliser FICHIER comme police (PF2)." - -#. TRANSLATORS: This file takes a text and creates a graphical representation of it, -#. putting the result into .disk_label file. The result is always stored to file and -#. never shown directly, so don't use "show" as synonym for render. Use "create" if -#. "render" doesn't translate directly. -#: util/grub-render-label.c:136 -msgid "Render Apple .disk_label." -msgstr "Fournir le .disk_label Apple." - -#: util/grub-render-label.c:158 util/grub-syslinux2cfg.c:169 -msgid "Missing arguments\n" -msgstr "Arguments manquants\n" - -#: util/grub-script-check.c:87 -msgid "[PATH]" -msgstr "[CHEMIN]" - -#: util/grub-script-check.c:88 -msgid "Checks GRUB script configuration file for syntax errors." -msgstr "" -"Vérifie les erreurs de syntaxe dans le fichier de configuration de script " -"GRUB." - -#: util/grub-script-check.c:207 -#, c-format -msgid "Syntax error at line %u\n" -msgstr "Erreur de syntaxe à la ligne %u\n" - -#: util/grub-script-check.c:212 -#, c-format -msgid "Script `%s' contains no commands and will do nothing\n" -msgstr "Le script « %s » ne contient aucune commande et ne fera rien\n" - -#: util/grub-setup.c:79 -#, c-format -msgid "use FILE as the boot image [default=%s]" -msgstr "utiliser FICHIER comme image de démarrage [%s par défaut]" - -#: util/grub-setup.c:81 -#, c-format -msgid "use FILE as the core image [default=%s]" -msgstr "utiliser FICHIER comme image de base [%s par défaut]" - -#: util/grub-setup.c:210 -msgid "No device is specified.\n" -msgstr "Aucun périphérique n'est indiqué.\n" - -#: util/grub-setup.c:224 -msgid "" -"Set up images to boot from DEVICE.\n" -"\n" -"You should not normally run this program directly. Use grub-install instead." -msgstr "" -"Préparer les images pour démarrer depuis PÉRIPHÉRIQUE.\n" -"\n" -"Vous ne devriez normalement pas exécuter ce programme directement. Utilisez " -"plutôt grub-install." - -#: util/grub-setup.c:228 -msgid "DEVICE must be an OS device (e.g. /dev/sda)." -msgstr "" -"PÉRIPHÉRIQUE doit être un périphérique du système d'exploitation (par " -"exemple /dev/sda)." - -#: util/grub-setup.c:297 -#, c-format -msgid "Invalid device `%s'.\n" -msgstr "Périphérique « %s » incorrect.\n" - -#: util/grub-syslinux2cfg.c:64 -msgid "root directory as it will be seen on runtime [default=/]." -msgstr "répertoire racine tel qu’il sera vu en fonctionnement [/ par défaut]" - -# NOTE: s/the // -#: util/grub-syslinux2cfg.c:69 -msgid "" -"current directory of syslinux as it will be seen on runtime [default is " -"parent directory of input file]." -msgstr "" -"répertoire actuel de syslinux tel qu'il sera vu en fonctionnement " -"[répertoire parent du fichier d’entrée par défaut]." - -#: util/grub-syslinux2cfg.c:74 -msgid "write output to FILE [default=stdout]." -msgstr "écrire la sortie vers FICHIER [stdout par défaut]." - -#: util/grub-syslinux2cfg.c:148 -msgid "Transform syslinux config into GRUB one." -msgstr "Transformer une configuration de syslinux vers le format GRUB." - -#: util/mkimage.c:688 util/mkimage.c:717 util/mkimage.c:734 -msgid "cannot compress the kernel image" -msgstr "impossible de compresser l'image du noyau" - -#: util/mkimage.c:766 util/mkimage.c:1077 -#, c-format -msgid "unknown compression %d" -msgstr "compression %d inconnue" - -#: util/mkimage.c:1088 -msgid "Decompressor is too big" -msgstr "Le décompresseur est trop grand" - -#: util/mkimage.c:1133 -#, c-format -msgid "core image is too big (0x%x > 0x%x)" -msgstr "L'image de base est trop grande (0x%x > 0x%x)" - -#: util/mkimage.c:1140 -#, c-format -msgid "kernel image is too big (0x%x > 0x%x)" -msgstr "L'image de noyau est trop grande (0x%x > 0x%x)" - -#: util/mkimage.c:1220 util/mkimage.c:1501 -#, c-format -msgid "diskboot.img size must be %u bytes" -msgstr "la taille de diskboot.img doit être de %u octets" - -#: util/mkimage.c:1571 -msgid "" -"fwstart.img doesn't match the known good version. proceed at your own risk" -msgstr "" -"fwstart.img ne correspond pas à la bonne version connue. Poursuivez à vos " -"risques et périls" - -#: util/mkimage.c:1575 util/mkimage.c:1601 -msgid "firmware image is too big" -msgstr "l'image de microprogramme (« firmware ») est trop grande" - -#: util/resolve.c:93 -#, c-format -msgid "invalid line format: %s" -msgstr "format de ligne incorrect : %s" - -#: util/setup.c:167 -msgid "the first sector of the core file is not sector-aligned" -msgstr "" -"le premier secteur du fichier de l'image de base n'est pas aligné sur un " -"secteur" - -#: util/setup.c:177 -msgid "non-sector-aligned data is found in the core file" -msgstr "" -"données non alignées sur des secteurs trouvées dans le fichier de l'image de " -"base" - -#: util/setup.c:199 -msgid "the sectors of the core file are too fragmented" -msgstr "les secteurs du fichier de l'image de base sont trop dispersés" - -#: util/setup.c:280 -#, c-format -msgid "the size of `%s' is not %u" -msgstr "la taille de « %s » n'est pas égale à %u" - -#: util/setup.c:290 -#, c-format -msgid "the size of `%s' is too small" -msgstr "la taille de « %s » est trop petite" - -#: util/setup.c:428 -msgid "" -"Attempting to install GRUB to a disk with multiple partition labels or both " -"partition label and filesystem. This is not supported yet." -msgstr "" -"Tentative d'installation de GRUB sur un disque ayant plusieurs étiquettes de " -"partition, ou à la fois une étiquette de partition et un système de fichier. " -"Ce n'est pas encore possible." - -#: util/setup.c:441 -#, c-format -msgid "unable to identify a filesystem in %s; safety check can't be performed" -msgstr "" -"impossible d'identifier le système de fichiers sur %s ; impossible " -"d'effectuer un contrôle de sécurité" - -#. TRANSLATORS: Filesystem may reserve the space just GRUB isn't sure about it. -#: util/setup.c:445 -#, c-format -msgid "" -"%s appears to contain a %s filesystem which isn't known to reserve space for " -"DOS-style boot. Installing GRUB there could result in FILESYSTEM " -"DESTRUCTION if valuable data is overwritten by grub-setup (--skip-fs-probe " -"disables this check, use at your own risk)" -msgstr "" -"%s a l'air de contenir un système de fichiers %s qui pourrait ne pas " -"réserver de place pour un amorçage de type DOS. Installer GRUB à cet endroit " -"risque de DÉTRUIRE le système de fichiers si des données importantes sont " -"écrasées lors de l'installation de GRUB (--skip-fs-probe désactive ce " -"contrôle, à utiliser à vos risques et périls)" - -#. TRANSLATORS: Partition map may reserve the space just GRUB isn't sure about it. -#: util/setup.c:458 -#, c-format -msgid "" -"%s appears to contain a %s partition map which isn't known to reserve space " -"for DOS-style boot. Installing GRUB there could result in FILESYSTEM " -"DESTRUCTION if valuable data is overwritten by grub-setup (--skip-fs-probe " -"disables this check, use at your own risk)" -msgstr "" -"%s a l'air de contenir un plan de partition %s qui pourrait ne pas réserver " -"de place pour un amorçage de type DOS. Installer GRUB à cet endroit risque " -"de DÉTRUIRE le système de fichiers si des données importantes sont écrasées " -"lors de l'installation de GRUB (--skip-fs-probe désactive ce contrôle, à " -"utiliser à vos risques et périls)" - -#: util/setup.c:465 -#, c-format -msgid "" -"%s appears to contain a %s partition map and LDM which isn't known to be a " -"safe combination. Installing GRUB there could result in FILESYSTEM " -"DESTRUCTION if valuable data is overwritten by grub-setup (--skip-fs-probe " -"disables this check, use at your own risk)" -msgstr "" -"%s a l'air de contenir un plan de partition %s et un LDM, ce qui n'est pas " -"souvent une association fiable. Installer GRUB à cet endroit risque de " -"DÉTRUIRE le système de fichiers si des données importantes sont écrasées " -"lors de l'installation de GRUB (--skip-fs-probe désactive ce contrôle, à " -"utiliser à vos risques et périls)" - -#: util/setup.c:478 -msgid "" -"Attempting to install GRUB to a partitionless disk or to a partition. This " -"is a BAD idea." -msgstr "" -"Tentative d'installation de GRUB sur un disque sans partition ou sur une " -"partition. C'est une très mauvaise idée." - -#: util/setup.c:483 -msgid "" -"Attempting to install GRUB to a disk with multiple partition labels. This " -"is not supported yet." -msgstr "" -"Tentative d'installation de GRUB sur un disque ayant plusieurs étiquettes de " -"partition. Ce n'est pas encore possible." - -#: util/setup.c:489 -#, c-format -msgid "Partition style `%s' doesn't support embedding" -msgstr "Le style de partition « %s » ne prend pas en charge l'embarquage" - -#: util/setup.c:496 -#, c-format -msgid "File system `%s' doesn't support embedding" -msgstr "Le système de fichiers « %s » ne prend pas en charge l'embarquage" - -#: util/setup.c:537 -msgid "Your embedding area is unusually small. core.img won't fit in it." -msgstr "" -"La zone d'embarquage est exceptionnellement petite. core.img n'y tiendra pas." - -#: util/setup.c:559 util/setup.c:725 util/setup.c:844 -msgid "no terminator in the core image" -msgstr "pas de terminateur dans l'image de base" - -#: util/setup.c:622 -msgid "core.img version mismatch" -msgstr "la version de core.img ne correspond pas" - -#: util/setup.c:675 -msgid "" -"embedding is not possible, but this is required for RAID and LVM install" -msgstr "" -"l'embarquage est impossible, il est pourtant nécessaire pour les " -"installations RAID et LVM" - -#: util/setup.c:682 -#, c-format -msgid "can't determine filesystem on %s" -msgstr "impossible de déterminer le système de fichiers sur %s" - -#: util/setup.c:685 -#, c-format -msgid "filesystem `%s' doesn't support blocklists" -msgstr "" -"le système de fichier « %s » ne prend pas en charge les listes de blocs " - -#. TRANSLATORS: cross-disk refers to /boot being on one disk -#. but MBR on another. -#: util/setup.c:694 -msgid "embedding is not possible, but this is required for cross-disk install" -msgstr "" -"l'embarquage est impossible, il est pourtant nécessaire pour les " -"installations interdisques" - -#: util/setup.c:700 -msgid "" -"Embedding is not possible. GRUB can only be installed in this setup by " -"using blocklists. However, blocklists are UNRELIABLE and their use is " -"discouraged." -msgstr "" -"L'embarquage est impossible. GRUB ne peut être installé sur cette " -"configuration qu'en utilisant les listes de blocs. Cependant, les listes de " -"blocs ne sont PAS fiables et leur utilisation est déconseillée." - -#. TRANSLATORS: Here GRUB refuses to continue with blocklist install. -#: util/setup.c:705 -msgid "will not proceed with blocklists" -msgstr "refus de continuer avec les listes de blocs" - -#: util/setup.c:817 util/setup.c:837 -msgid "blocklists are invalid" -msgstr "les listes de blocs sont incorrectes" - -#: util/setup.c:847 -msgid "blocklists are incomplete" -msgstr "les listes de blocs sont incomplets" - -#~ msgid "%.*s: ARGP_HELP_FMT parameter must be positive" -#~ msgstr "%.*s : le paramètre FMT_AIDE_ARGP doit être strictement positif" - -#~ msgid "%s: option '--%s' doesn't allow an argument\n" -#~ msgstr "%s : l'option « --%s » n'accepte pas d'argument\n" - -#~ msgid "%s: unrecognized option '--%s'\n" -#~ msgstr "%s : option « --%s » non reconnue\n" - -#~ msgid "%s: option '-W %s' doesn't allow an argument\n" -#~ msgstr "%s : l'option « -W %s » n'accepte pas d'argument\n" - -#~ msgid "%s: option '-W %s' requires an argument\n" -#~ msgstr "%s : l'option « -W %s » nécessite un argument\n" - -#~ msgid "Usage: %s -o OUTPUT CKBMAP_ARGUMENTS...\\n" -#~ msgstr "Utilisation : %s -o SORTIE ARGUMENTS_CKBMAP ...\\n" - -#~ msgid "Make GRUB keyboard layout file." -#~ msgstr "Faire un ficher de disposition de clavier GRUB." - -#~ msgid "print this message and exit" -#~ msgstr "afficher ce message et quitter" - -#~ msgid "print the version information and exit" -#~ msgstr "afficher la version du logiciel et quitter" - -#~ msgid "%s generates a keyboard layout for GRUB using ckbcomp\\n" -#~ msgstr "" -#~ "%s crée un fichier de disposition de clavier pour GRUB en utilisant " -#~ "ckbcomp\\n" - -#~ msgid "Report bugs to ." -#~ msgstr "Signaler les bogues à ." - -#~ msgid "%s: option requires an argument -- `%s'\\n" -#~ msgstr "%s : l'option nécessite un argument — « %s »\\n" - -#~ msgid "Usage: %s [OPTION]\\n" -#~ msgstr "Utilisation : %s [OPTION]\\n" - -#~ msgid "Generate a grub config file" -#~ msgstr "Créer un fichier de configuration GRUB" - -#~ msgid "output generated config to FILE [default=stdout]" -#~ msgstr "envoyer la configuration créée vers FICHIER [stdout par défaut]" - -#~ msgid "Unrecognized option `%s'\\n" -#~ msgstr "Option « %s » non reconnue\\n" - -#~ msgid "%s: You must run this as root\\n" -#~ msgstr "%s : seul le superutilisateur peut exécuter cela\\n" - -#~ msgid "%s: Not found.\\n" -#~ msgstr "%s : Pas trouvé.\\n" - -#~ msgid "Generating grub configuration file ..." -#~ msgstr "Création du fichier de configuration GRUB…" - -#~ msgid "" -#~ "Syntax errors are detected in generated GRUB config file.\n" -#~ "Ensure that there are no errors in /etc/default/grub\n" -#~ "and /etc/grub.d/* files or please file a bug report with\n" -#~ "%s file attached." -#~ msgstr "" -#~ "Des erreurs de syntaxe sont détectées dans le fichier de configuration\n" -#~ "de GRUB. Veuillez vérifier qu'il n'y a pas d'erreur dans les fichiers\n" -#~ "/etc/default/grub et /etc/grub.d/*. Sinon veuillez signaler un bogue\n" -#~ "en joignant le fichier %s." - -#~ msgid "done" -#~ msgstr "fait" - -#~ msgid "Warning:" -#~ msgstr "Attention :" - -#~ msgid "Usage: %s [OPTION] MENU_ENTRY\\n" -#~ msgstr "Utilisation : %s [OPTION] ENTRÉE_MENU\\n" - -#~ msgid "Set the default boot menu entry for GRUB, for the next boot only." -#~ msgstr "" -#~ "Configurer l'entrée de menu par défaut pour GRUB, seulement pour le " -#~ "prochain démarrage." - -#~ msgid "" -#~ "expect GRUB images under the directory DIR/%s instead of the %s directory" -#~ msgstr "" -#~ "chercher les images GRUB dans le répertoire RÉP/%s au lieu du répertoire " -#~ "%s" - -#~ msgid "" -#~ "MENU_ENTRY is a number, a menu item title or a menu item identifier. " -#~ "Please note that menu items in\n" -#~ "submenus or sub-submenus require specifying the submenu components and " -#~ "then the\n" -#~ "menu item component. The titles should be separated using the greater-" -#~ "than\n" -#~ "character (>) with no extra spaces. Depending on your shell some " -#~ "characters including > may need escaping. More information about this is " -#~ "available\n" -#~ "in the GRUB Manual in the section about the 'default' command. " -#~ msgstr "" -#~ "ENTRÉE_MENU est un numéro, un titre d'entrée de menu ou un identifiant " -#~ "d'entrée de menu.\n" -#~ "Veuillez noter que les entrées de menu dans les sous-menus et sous-sous-" -#~ "menus nécessitent d’indiquer le composant de sous-menu puis le composant " -#~ "d’entrée de menu.\n" -#~ "Les titres devrait être séparés en utilisant le caractères supérieur (>) " -#~ "sans espace supplémentaire.\n" -#~ "Suivant l’interpréteur de commandes, certains caractères, y compris >, " -#~ "ont besoin d’être protégés.\n" -#~ "Plus de renseignements à ce sujet sont disponibles dans le manuel de GRUB " -#~ "à la section sur la commande « default »." - -#~ msgid "More than one menu entry?" -#~ msgstr "Plus d'une entrée de menu, alors qu'une seule est attendue." - -#~ msgid "Menu entry not specified." -#~ msgstr "Aucune entrée de menu indiquée." - -#~ msgid "Set the default boot menu entry for GRUB." -#~ msgstr "Configurer l'entrée de menu par défaut pour GRUB." - -#~ msgid "This requires setting GRUB_DEFAULT=saved in %s/default/grub.\\n" -#~ msgstr "" -#~ "Cela nécessite de configurer GRUB_DEFAULT=saved dans %s/default/grub.\\n" - -#~ msgid "MENU_ENTRY is a number, a menu item title or a menu item identifier." -#~ msgstr "" -#~ "ENTRÉE_MENU est un numéro, un titre d'entrée de menu ou un identifiant " -#~ "d'entrée de menu." - -#~ msgid "" -#~ "Requested serial terminal but GRUB_SERIAL_COMMAND is unspecified. Default " -#~ "parameters will be used." -#~ msgstr "" -#~ "Un terminal série est demandé, mais GRUB_SERIAL_COMMAND n'est pas " -#~ "indiqué. Les paramètres par défaut seront utilisés." - -#~ msgid "Found theme: %s\\n" -#~ msgstr "Thème trouvé : %s\\n" - -#~ msgid "Found background: %s\\n" -#~ msgstr "Arrière-plan trouvé : %s\\n" - -#~ msgid "Unsupported image format" -#~ msgstr "Format d'image non pris en charge" - -#~ msgid "" -#~ "Setting GRUB_TIMEOUT to a non-zero value when GRUB_HIDDEN_TIMEOUT is set " -#~ "is no longer supported." -#~ msgstr "" -#~ "Définir GRUB_TIMEOUT à une valeur non nulle si GRUB_HIDDEN_TIMEOUT est " -#~ "définie n’est plus possible." - -#~ msgid "Found GNU Mach: %s" -#~ msgstr "GNU Mach trouvé : %s" - -#~ msgid "Found Hurd module: %s" -#~ msgstr "Module Hurd trouvé : %s" - -#~ msgid "Some Hurd stuff found, but not enough to boot." -#~ msgstr "" -#~ "Certains morceaux du Hurd sont disponibles, mais pas assez pour démarrer." - -#~ msgid "%s, with Hurd %s (recovery mode)" -#~ msgstr "%s, avec Hurd %s (mode de dépannage)" - -#~ msgid "%s, with Hurd %s" -#~ msgstr "%s, avec Hurd %s" - -#~ msgid "" -#~ "Please don't use old title `%s' for GRUB_DEFAULT, use `%s' (for versions " -#~ "before 2.00) or `%s' (for 2.00 or later)" -#~ msgstr "" -#~ "Veuillez ne pas utiliser l'ancien titre « %s » pour GRUB_DEFAULT, " -#~ "utilisez « %s » (avant la version 2.00) ou « %s » (depuis la version 2.00)" - -#~ msgid "Loading GNU Mach ..." -#~ msgstr "Chargement de GNU Mach…" - -#~ msgid "Loading the Hurd ..." -#~ msgstr "Chargement du Hurd…" - -#~ msgid "Advanced options for %s" -#~ msgstr "Options avancées pour %s" - -#~ msgid "Loading kernel of Illumos ..." -#~ msgstr "Chargement du noyau d'Illumos…" - -#~ msgid "%s, with kFreeBSD %s (recovery mode)" -#~ msgstr "%s, avec kFreeBSD %s (mode de dépannage)" - -#~ msgid "%s, with kFreeBSD %s" -#~ msgstr "%s, avec kFreeBSD %s" - -#~ msgid "Loading kernel of FreeBSD %s ..." -#~ msgstr "Chargement du noyau FreeBSD %s…" - -#~ msgid "Found kernel of FreeBSD: %s\\n" -#~ msgstr "Noyau de FreeBSD trouvé : %s\\n" - -#~ msgid "Found kernel module directory: %s\\n" -#~ msgstr "Répertoire de modules noyau trouvé : %s\\n" - -#~ msgid "%s, with Linux %s (recovery mode)" -#~ msgstr "%s, avec Linux %s (mode de dépannage)" - -#~ msgid "%s, with Linux %s" -#~ msgstr "%s, avec Linux %s" - -#~ msgid "Loading Linux %s ..." -#~ msgstr "Chargement de Linux %s…" - -#~ msgid "Loading initial ramdisk ..." -#~ msgstr "Chargement du disque mémoire initial…" - -#~ msgid "Found linux image: %s\\n" -#~ msgstr "Image Linux trouvée : %s\\n" - -#~ msgid "Found initrd image: %s\\n" -#~ msgstr "Image mémoire initiale trouvée : %s\\n" - -#~ msgid "%s, with kernel %s (via %s, recovery mode)" -#~ msgstr "%s, avec le noyau %s (à l'aide de %s, mode de dépannage)" - -#~ msgid "%s, with kernel %s (via %s)" -#~ msgstr "%s, avec le noyau %s (à l'aide de %s)" - -#~ msgid "Found NetBSD kernel: %s\\n" -#~ msgstr "Noyau NetBSD trouvé : %s\\n" - -#~ msgid "Windows Vista/7 (loader)" -#~ msgstr "Windows Vista/7 (chargeur)" - -#~ msgid "Windows NT/2000/XP (loader)" -#~ msgstr "Windows NT/2000/XP (chargeur)" - -#~ msgid "Found %s on %s (%s)\\n" -#~ msgstr "%s trouvé sur %s (%s)\\n" - -#~ msgid "(32-bit)" -#~ msgstr "(32 bits)" - -#~ msgid "(64-bit)" -#~ msgstr "(64 bits)" - -#~ msgid "(on %s)" -#~ msgstr "(sur %s)" - -#~ msgid "%s, with Xen %s and Linux %s (recovery mode)" -#~ msgstr "%s, avec Xen %s et Linux %s (mode de dépannage)" - -#~ msgid "%s, with Xen %s and Linux %s" -#~ msgstr "%s, avec Xen %s et Linux %s" - -#~ msgid "%s, with Xen hypervisor" -#~ msgstr "%s, avec hyperviseur Xen" - -#~ msgid "Loading Xen %s ..." -#~ msgstr "Chargement de Xen %s…" - -#~ msgid "Xen hypervisor, version %s" -#~ msgstr "Hyperviseur Xen, version %s" - -#~ msgid "Advanced options for %s (with Xen hypervisor)" -#~ msgstr "Option avancée pour %s (avec hyperviseur Xen)" - -#~ msgid "Found %s on %s\\n" -#~ msgstr "%s trouvé sur %s\\n" - -#~ msgid "%s is not yet supported by grub-mkconfig.\\n" -#~ msgstr "%s n'est pas encore pris en charge par grub-mkconfig.\\n" - -#~ msgid "Unsupported substitution flag: 0x%x\n" -#~ msgstr "Attribut de substitution non pris en charge : 0x%x\n" - -#~ msgid "Unknown gsub font feature 0x%x (%s)\n" -#~ msgstr "fonctionnalité gsub 0x%x inconnue (%s)\n" - -#~ msgid "root directory of the syslinux disk (default /)." -#~ msgstr "répertoire racine du disque syslinux (/ par défaut)." - -#~ msgid "assume isolinux." -#~ msgstr "isolinux supposé." - -#~ msgid "assume pxelinux." -#~ msgstr "pxelinux supposé." - -#~ msgid "assume syslinux." -#~ msgstr "syslinux supposé." - -#~ msgid "%s is neither hfs nor hfsplus" -#~ msgstr "%s n’est ni hfs, ni hfsplus" - -#~ msgid "copies GRUB images into net_directory/subdir/target_cpu-platform." -#~ msgstr "" -#~ "copie les images GRUB dans net_directory/subdir/target_cpu-platform." - -#~ msgid "" -#~ "Generates a bootable rescue image with specified source files, source " -#~ "directories, or mkisofs options listed by the output of `%s'.\n" -#~ "\n" -#~ "Option -- switches to native xorriso command mode.\n" -#~ "\n" -#~ "Mail xorriso support requests to ." -#~ msgstr "" -#~ "Créer une image de dépannage amorçable avec les fichiers source indiqués, " -#~ "répertoires source ou options mkisofs affichées en sortie de « %s ».\n" -#~ "\n" -#~ "L'option -- bascule en mode natif de commande xorriso.\n" -#~ "\n" -#~ "Envoyer les demandes d'aide sur xorriso à ." - -#~ msgid "" -#~ "print filesystem module, GRUB drive, system device, partition map module, " -#~ "abstraction module or cryptographic container UUID [default=fs]" -#~ msgstr "" -#~ "afficher le module de système de fichiers, le disque GRUB, le " -#~ "périphérique système, le module de plan de partition, le module " -#~ "d'abstraction ou l'UUID du conteneur cryptographique [fs par défaut]" - -#~ msgid "current directory of the syslinux disk [default=$pwd]." -#~ msgstr "répertoire actuel du disque syslinux [$pwd par défaut]" - -#~ msgid "use DIR as root directory [default=/]" -#~ msgstr "utiliser RÉP comme répertoire racine [/ par défaut]" - -#~ msgid "Address range not associated with RAM" -#~ msgstr "L'intervalle d'adresses n'est pas associé à la RAM." - -#~ msgid "PUBKEY_FILE" -#~ msgstr "FICHIER_CLEF_PUBLIQUE" - -#~ msgid "grub_memalign is not supported on your system" -#~ msgstr "grub_memalign n'est pas pris en charge par le système" - -#~ msgid "If FILENAME is `-', the default value %s is used." -#~ msgstr "Si FICHIER est « - », la valeur par défaut %s est utilisée." - -#~ msgid "save only the ASCII bitmaps" -#~ msgstr "ne sauver que les images ASCII" - -#~ msgid "create width summary file" -#~ msgstr "créer un fichier résumé de largeur" - -#~ msgid "Option --ascii-bitmaps doesn't accept ranges (it always uses ASCII)." -#~ msgstr "" -#~ "L'option --ascii-bitmaps n'accepte pas d'intervalle (elle utilise " -#~ "toujours ASCII)." - -#~ msgid "WARNING: your random generator isn't known to be secure\n" -#~ msgstr "" -#~ "Attention : la fiabilité du générateur de nombres aléatoires n'est pas " -#~ "assurée\n" - -#~ msgid "failed to read the first sector of the core image" -#~ msgstr "échec de lecture du premier secteur de l'image de base" - -#~ msgid "use FILE as grub-setup" -#~ msgstr "utiliser FICHIER à la place de grub-setup" - -#~ msgid "use FILE as grub-mkrelpath" -#~ msgstr "utiliser FICHIER à la place de grub-mkrelpath" - -#~ msgid "use FILE as grub-probe" -#~ msgstr "utiliser FICHIER à la place de grub-probe" - -#~ msgid "INSTALL_DEVICE must be system device filename." -#~ msgstr "" -#~ "PÉRIPHÉRIQUE_INSTALLATION doit être un nom de fichier de périphérique " -#~ "système." - -#~ msgid "" -#~ "Path `%s' is not readable by GRUB on boot. Installation is impossible. " -#~ "Aborting.\\n" -#~ msgstr "" -#~ "Le chemin « %s » n'est pas lisible par GRUB au démarrage. L'installation " -#~ "est impossible. Abandon.\\n" - -#~ msgid "Auto-detection of a filesystem of %s failed.\\n" -#~ msgstr "Échec de la détection automatique de système de fichiers sur %s.\\n" - -#~ msgid "Try with --recheck." -#~ msgstr "Essayez avec --recheck." - -#~ msgid "" -#~ "If the problem persists please report this together with the output of %s " -#~ "to <%s>" -#~ msgstr "" -#~ "Si le problème persiste, veuillez le signaler avec la sortie de %s à <%s>" - -#~ msgid "`%s' failed.\\n" -#~ msgstr "Échec de « %s ».\\n" - -#~ msgid "" -#~ "Can't find GRUB drive for %s; unable to create EFI Boot Manager entry.\\n" -#~ msgstr "" -#~ "Impossible de trouver le disque GRUB pour %s ; impossible de créer " -#~ "l'entrée du gestionnaire d'amorçage EFI.\\n" - -#~ msgid "Generating grub.cfg ..." -#~ msgstr "Création de grub.cfg…" - -#~ msgid "use FILE as grub-glue-efi" -#~ msgstr "utiliser FICHIER à la place de grub-glue-efi" - -#~ msgid "use FILE as grub-render-label" -#~ msgstr "utiliser FICHIER à la place de grub-render-label" - -#~ msgid "Packed pixel " -#~ msgstr "Palette de couleurs " - -#~ msgid "use GRUB images from DIR. Takes precedence over target" -#~ msgstr "utiliser les images GRUB de RÉP. Est prioritaire sur la cible" - -#~ msgid "Storage info for `%s' does not include name" -#~ msgstr "" -#~ "Les renseignements de stockage pour « %s » ne contiennent pas le nom" - -#~ msgid "Bogus name length for storage info for `%s'" -#~ msgstr "Longueur de nom erronée des renseignements de stockage pour « %s »" - -#~ msgid "Storage name for `%s' not NUL-terminated" -#~ msgstr "Le nom de stockage pour « %s » ne se termine pas par NUL" - -#~ msgid "Couldn't find physical volume `%s'. Check your device.map" -#~ msgstr "" -#~ "Impossible de trouver le volume physique « %s ». Vérifiez device.map." - -#~ msgid "diskboot.img is not one sector size" -#~ msgstr "diskboot.img ne tient pas sur un secteur" - -#~ msgid "loopback command fails" -#~ msgstr "échec de la commande loopback" - -#~ msgid "cryptomount command fails: %s" -#~ msgstr "échec de la commande cryptomount : %s" - -#~ msgid "%s: option requires an argument -- `%s'" -#~ msgstr "%s : l'option nécessite un argument — « %s »" diff --git a/thirdparty/grub-2.04/po/gl.gmo b/thirdparty/grub-2.04/po/gl.gmo deleted file mode 100644 index b133fbdc7dc19df663062317759e5a75a87d8d28..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 100957 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, 2010. -# Antón Méixome , 2010, 2013. -msgid "" -msgstr "" -"Project-Id-Version: grub-2.00+20130519\n" -"Report-Msgid-Bugs-To: bug-grub@gnu.org\n" -"POT-Creation-Date: 2019-07-04 16:09+0200\n" -"PO-Revision-Date: 2013-09-26 11:40+0200\n" -"Last-Translator: Anton Meixome \n" -"Language-Team: Galician \n" -"Language: gl\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Bugs: Report translation errors to the Language-Team address.\n" -"Plural-Forms: nplurals=2; plural=(n != 1);\n" -"X-Generator: Virtaal 0.7.0\n" -"X-Launchpad-Export-Date: 2013-07-03 10:56+0000\n" - -#: grub-core/bus/usb/serial/ftdi.c:145 grub-core/bus/usb/serial/pl2303.c:158 -#: grub-core/term/ieee1275/escc.c:169 grub-core/term/ns8250.c:202 -msgid "unsupported serial port speed" -msgstr "velocidade do porto serie incompatíbel" - -#: grub-core/bus/usb/serial/ftdi.c:151 grub-core/bus/usb/serial/pl2303.c:164 -#: grub-core/term/efi/serial.c:116 grub-core/term/ieee1275/escc.c:175 -#: grub-core/term/ns8250.c:208 grub-core/term/serial.c:227 -#: grub-core/term/serial.c:243 -msgid "unsupported serial port parity" -msgstr "paridade do porto serie incompatíbel" - -#: grub-core/bus/usb/serial/ftdi.c:157 grub-core/bus/usb/serial/pl2303.c:170 -#: grub-core/term/efi/serial.c:122 grub-core/term/ieee1275/escc.c:181 -#: grub-core/term/ns8250.c:213 grub-core/term/serial.c:267 -msgid "unsupported serial port stop bits number" -msgstr "número de bits de parada do porto serie incompatíbel" - -#: grub-core/bus/usb/serial/ftdi.c:161 grub-core/bus/usb/serial/pl2303.c:174 -#: grub-core/term/efi/serial.c:126 grub-core/term/ieee1275/escc.c:185 -#: grub-core/term/ns8250.c:217 -msgid "unsupported serial port word length" -msgstr "largura de palabra do porto serie incompatíbel" - -#: grub-core/commands/acpi.c:42 -msgid "Don't load host tables specified by comma-separated list." -msgstr "" -"Non carga as táboas do servidor especificadas en lista separada por comas." - -#: grub-core/commands/acpi.c:45 -msgid "Load only tables specified by comma-separated list." -msgstr "Só carga as táboas especificadas en lista separada por comas." - -#: grub-core/commands/acpi.c:46 -msgid "Export version 1 tables to the OS." -msgstr "Exportar a versión 1 das táboa ao SO." - -#: grub-core/commands/acpi.c:47 -msgid "Export version 2 and version 3 tables to the OS." -msgstr "Exportar a versión 2 e versión 3 das táboas ao SO." - -#: grub-core/commands/acpi.c:48 -msgid "Set OEMID of RSDP, XSDT and RSDT." -msgstr "Estabelecer OEMID de RSDP, XSDT e RSDT." - -#: grub-core/commands/acpi.c:50 -msgid "Set OEMTABLE ID of RSDP, XSDT and RSDT." -msgstr "Estabelecer OEMTABLE ID de RSDP, XSDT e RSDT." - -#: grub-core/commands/acpi.c:52 -msgid "Set OEMTABLE revision of RSDP, XSDT and RSDT." -msgstr "Estabelecer a revisión OEMTABLE de RSDP, XSDT e RSDT." - -#: grub-core/commands/acpi.c:54 -msgid "Set creator field of RSDP, XSDT and RSDT." -msgstr "Estabelecer o campo creador para RSDP, CSDT e RSDT." - -#: grub-core/commands/acpi.c:56 -msgid "Set creator revision of RSDP, XSDT and RSDT." -msgstr "Estabelecer a revisión do creador de RSDP, CSDT e RSDT." - -#. TRANSLATORS: "hangs" here is a noun, not a verb. -#: grub-core/commands/acpi.c:58 -msgid "" -"Don't update EBDA. May fix failures or hangs on some BIOSes but makes it " -"ineffective with OS not receiving RSDP from GRUB." -msgstr "" -"Non actualizar EBDA. Podería corrixir fallos ou paradas nalgúns BIOS, pero " -"faise ineficaz se o SO non recibe RSDP do GRUB." - -#: grub-core/commands/acpi.c:650 grub-core/commands/acpi.c:667 -#: grub-core/commands/i386/pc/play.c:105 grub-core/commands/keylayouts.c:230 -#: grub-core/commands/keylayouts.c:245 grub-core/commands/keylayouts.c:263 -#: grub-core/commands/verifiers.c:156 grub-core/efiemu/loadcore.c:350 -#: grub-core/kern/elf.c:117 grub-core/kern/elfXX.c:29 -#: grub-core/kern/elfXX.c:156 grub-core/loader/arm/linux.c:319 -#: grub-core/loader/arm64/linux.c:330 grub-core/loader/arm64/xen_boot.c:356 -#: grub-core/loader/efi/chainloader.c:276 -#: grub-core/loader/efi/chainloader.c:297 -#: grub-core/loader/efi/chainloader.c:329 grub-core/loader/efi/fdt.c:138 -#: grub-core/loader/i386/bsd.c:1276 grub-core/loader/i386/bsd.c:2116 -#: grub-core/loader/i386/bsdXX.c:20 grub-core/loader/i386/bsdXX.c:36 -#: grub-core/loader/i386/bsdXX.c:63 grub-core/loader/i386/bsdXX.c:357 -#: grub-core/loader/i386/bsdXX.c:376 grub-core/loader/i386/bsdXX.c:519 -#: grub-core/loader/i386/bsdXX.c:535 grub-core/loader/i386/bsdXX.c:615 -#: grub-core/loader/i386/bsdXX.c:638 -#: grub-core/loader/i386/coreboot/chainloader.c:112 -#: grub-core/loader/i386/coreboot/chainloader.c:148 -#: grub-core/loader/i386/coreboot/chainloader.c:170 -#: grub-core/loader/i386/linux.c:667 grub-core/loader/i386/linux.c:788 -#: grub-core/loader/i386/linux.c:1005 grub-core/loader/i386/multiboot_mbi.c:171 -#: grub-core/loader/i386/pc/chainloader.c:202 -#: grub-core/loader/i386/pc/linux.c:149 grub-core/loader/i386/pc/linux.c:320 -#: grub-core/loader/i386/pc/linux.c:362 grub-core/loader/i386/pc/plan9.c:457 -#: grub-core/loader/i386/pc/plan9.c:550 grub-core/loader/i386/pc/plan9.c:566 -#: grub-core/loader/i386/xen.c:934 grub-core/loader/i386/xen_file.c:72 -#: grub-core/loader/i386/xen_fileXX.c:43 grub-core/loader/i386/xen_fileXX.c:186 -#: grub-core/loader/i386/xen_fileXX.c:339 grub-core/loader/ia64/efi/linux.c:423 -#: grub-core/loader/ia64/efi/linux.c:471 grub-core/loader/linux.c:286 -#: grub-core/loader/macho.c:84 grub-core/loader/macho.c:109 -#: grub-core/loader/machoXX.c:33 grub-core/loader/machoXX.c:46 -#: grub-core/loader/machoXX.c:76 grub-core/loader/machoXX.c:116 -#: grub-core/loader/machoXX.c:131 grub-core/loader/machoXX.c:147 -#: grub-core/loader/machoXX.c:196 grub-core/loader/machoXX.c:317 -#: grub-core/loader/multiboot.c:434 grub-core/loader/multiboot_elfxx.c:171 -#: grub-core/loader/multiboot_elfxx.c:234 -#: grub-core/loader/multiboot_elfxx.c:278 grub-core/loader/multiboot_mbi2.c:129 -#: grub-core/loader/xnu.c:737 grub-core/loader/xnu.c:795 -#: grub-core/loader/xnu.c:816 grub-core/loader/xnu.c:871 -#: grub-core/loader/xnu.c:914 grub-core/loader/xnu.c:952 -#: grub-core/loader/xnu_resume.c:68 grub-core/loader/xnu_resume.c:153 -#: grub-core/loader/xnu_resume.c:165 util/grub-mkimagexx.c:2288 -#, c-format -msgid "premature end of file %s" -msgstr "fin do ficheiro prematura %s" - -#: grub-core/commands/acpi.c:779 -msgid "" -"[-1|-2] [--exclude=TABLE1,TABLE2|--load-only=TABLE1,TABLE2] FILE1 [FILE2] " -"[...]" -msgstr "" -"[-1|-2] [--exclude=TÃBOA1,TÃBOA2|--load-only=TÃBOBA1, TÃBOA2] FICHEIRO1 " -"[FICHEIRO2] [...]" - -#: grub-core/commands/acpi.c:782 -msgid "Load host ACPI tables and tables specified by arguments." -msgstr "" -"Cargar as táboas ACPI do servidor e as especificadas mediante argumentos." - -#: grub-core/commands/acpihalt.c:368 grub-core/kern/err.c:110 -#, c-format -msgid "error: %s.\n" -msgstr "erro: %s.\n" - -#: grub-core/commands/acpihalt.c:368 grub-core/kern/emu/misc.c:95 -#: grub-core/kern/emu/misc.c:105 grub-core/kern/emu/misc.c:134 -#: grub-core/kern/emu/mm.c:34 grub-core/kern/emu/mm.c:62 -#: grub-core/kern/mm.c:374 grub-core/lib/relocator.c:1282 -#: grub-core/lib/relocator.c:1439 grub-core/lib/relocator.c:1538 -#: grub-core/loader/arm/linux.c:259 grub-core/loader/arm64/linux.c:265 -#: grub-core/loader/arm64/linux.c:321 grub-core/loader/arm64/linux.c:340 -#: grub-core/loader/arm64/xen_boot.c:344 grub-core/loader/arm64/xen_boot.c:367 -#: grub-core/loader/efi/chainloader.c:289 grub-core/osdep/unix/dl.c:48 -#: grub-core/osdep/windows/dl.c:46 grub-core/script/lexer.c:156 -#: grub-core/script/lexer.c:182 -msgid "out of memory" -msgstr "sen memoria" - -#: grub-core/commands/acpihalt.c:374 grub-core/disk/cryptodisk.c:587 -#: grub-core/disk/cryptodisk.c:632 grub-core/kern/emu/hostdisk.c:307 -#: grub-core/kern/emu/hostfs.c:149 grub-core/kern/emu/misc.c:200 -#: grub-core/osdep/linux/ofpath.c:195 grub-core/osdep/linux/ofpath.c:521 -#: grub-core/osdep/linux/ofpath.c:534 util/glue-efi.c:80 util/glue-efi.c:94 -#: util/grub-editenv.c:155 util/grub-fstest.c:577 -#: util/grub-install-common.c:943 util/grub-mkrescue.c:634 -#: util/grub-mkrescue.c:888 util/grub-mount.c:506 util/grub-render-label.c:176 -#: util/misc.c:95 util/setup.c:814 util/setup.c:833 -#, c-format -msgid "cannot read `%s': %s" -msgstr "non foi posíbel ler «%s»: %s" - -#. TRANSLATORS: It's computer shutdown using ACPI, not disabling ACPI. -#: grub-core/commands/acpihalt.c:452 -msgid "ACPI shutdown failed" -msgstr "Fallou o apagado ACPI" - -#: grub-core/commands/arc/lsdev.c:51 -msgid "List devices." -msgstr "Listar dispositivos." - -#: grub-core/commands/blocklist.c:122 grub-core/commands/cat.c:57 -#: grub-core/commands/configfile.c:35 grub-core/commands/efi/loadbios.c:168 -#: grub-core/commands/file.c:159 grub-core/commands/hexdump.c:47 -#: grub-core/commands/legacycfg.c:209 grub-core/commands/legacycfg.c:315 -#: grub-core/commands/minicmd.c:44 grub-core/commands/syslinuxcfg.c:146 -#: grub-core/commands/testload.c:58 grub-core/commands/testspeed.c:52 -#: grub-core/disk/loopback.c:93 grub-core/efiemu/main.c:293 -#: grub-core/font/font_cmd.c:32 grub-core/kern/emu/hostdisk.c:519 -#: grub-core/loader/arm/linux.c:364 grub-core/loader/arm/linux.c:409 -#: grub-core/loader/arm/linux.c:472 grub-core/loader/arm64/linux.c:243 -#: grub-core/loader/arm64/linux.c:297 grub-core/loader/arm64/xen_boot.c:398 -#: grub-core/loader/arm64/xen_boot.c:411 grub-core/loader/arm64/xen_boot.c:462 -#: grub-core/loader/efi/chainloader.c:216 grub-core/loader/i386/bsd.c:1462 -#: grub-core/loader/i386/bsd.c:1807 grub-core/loader/i386/bsd.c:2085 -#: grub-core/loader/i386/coreboot/chainloader.c:438 -#: grub-core/loader/i386/linux.c:656 grub-core/loader/i386/linux.c:1041 -#: grub-core/loader/i386/pc/chainloader.c:290 -#: grub-core/loader/i386/pc/freedos.c:105 grub-core/loader/i386/pc/linux.c:138 -#: grub-core/loader/i386/pc/linux.c:400 grub-core/loader/i386/pc/ntldr.c:85 -#: grub-core/loader/i386/pc/plan9.c:409 -#: grub-core/loader/i386/pc/pxechainloader.c:94 -#: grub-core/loader/i386/pc/truecrypt.c:96 grub-core/loader/i386/xen.c:641 -#: grub-core/loader/i386/xen.c:768 grub-core/loader/i386/xen.c:844 -#: grub-core/loader/i386/xen.c:854 grub-core/loader/i386/xnu.c:488 -#: grub-core/loader/ia64/efi/linux.c:459 grub-core/loader/ia64/efi/linux.c:539 -#: grub-core/loader/mips/linux.c:238 grub-core/loader/mips/linux.c:429 -#: grub-core/loader/multiboot.c:322 grub-core/loader/multiboot.c:374 -#: grub-core/loader/multiboot.c:384 -#: grub-core/loader/powerpc/ieee1275/linux.c:269 -#: grub-core/loader/powerpc/ieee1275/linux.c:341 -#: grub-core/loader/sparc64/ieee1275/linux.c:305 -#: grub-core/loader/sparc64/ieee1275/linux.c:381 grub-core/loader/xnu.c:351 -#: grub-core/loader/xnu.c:460 grub-core/loader/xnu.c:778 -#: grub-core/loader/xnu.c:892 grub-core/loader/xnu.c:1277 -#: grub-core/loader/xnu.c:1427 grub-core/loader/xnu.c:1453 -#: grub-core/video/readers/jpeg.c:812 grub-core/video/readers/png.c:1123 -msgid "filename expected" -msgstr "agardábase o nome do ficheiro" - -#. TRANSLATORS: "embed" is a verb (command description). " -#: grub-core/commands/blocklist.c:154 grub-core/commands/cat.c:163 -#: grub-core/commands/configfile.c:65 grub-core/commands/configfile.c:68 -#: grub-core/commands/configfile.c:74 grub-core/commands/configfile.c:80 -#: grub-core/commands/configfile.c:86 grub-core/commands/hashsum.c:34 -#: grub-core/commands/legacycfg.c:834 grub-core/commands/legacycfg.c:841 -#: grub-core/commands/legacycfg.c:846 grub-core/commands/legacycfg.c:851 -#: grub-core/commands/macbless.c:222 grub-core/commands/minicmd.c:198 -#: grub-core/commands/syslinuxcfg.c:186 grub-core/commands/syslinuxcfg.c:194 -#: grub-core/commands/syslinuxcfg.c:200 grub-core/commands/syslinuxcfg.c:206 -#: grub-core/commands/testload.c:163 grub-core/efiemu/main.c:312 -#: grub-core/kern/emu/main.c:100 grub-core/kern/emu/main.c:103 -#: grub-core/loader/i386/bsd.c:2137 grub-core/loader/i386/bsd.c:2140 -#: grub-core/loader/i386/bsd.c:2143 -#: grub-core/loader/i386/coreboot/chainloader.c:505 -#: grub-core/loader/ia64/efi/linux.c:594 include/grub/util/install.h:32 -#: include/grub/util/install.h:64 util/grub-glue-efi.c:52 -#: util/grub-glue-efi.c:54 util/grub-glue-efi.c:56 util/grub-install.c:254 -#: util/grub-install.c:301 util/grub-mkfont.c:936 util/grub-mkimage.c:68 -#: util/grub-mkimage.c:74 util/grub-mkimage.c:76 util/grub-mkimage.c:78 -#: util/grub-mkimage.c:81 util/grub-mklayout.c:52 util/grub-mklayout.c:54 -#: util/grub-mkrescue.c:97 util/grub-mkrescue.c:101 util/grub-mkrescue.c:104 -#: util/grub-mkrescue.c:105 util/grub-mkrescue.c:106 -#: util/grub-mkstandalone.c:47 util/grub-mkstandalone.c:49 -#: util/grub-probe.c:732 util/grub-render-label.c:59 -#: util/grub-render-label.c:70 util/grub-render-label.c:72 util/grub-setup.c:78 -#: util/grub-setup.c:80 util/grub-setup.c:84 util/grub-syslinux2cfg.c:74 -#: util/grub-syslinux2cfg.c:147 -msgid "FILE" -msgstr "FICHEIRO" - -#: grub-core/commands/blocklist.c:154 -msgid "Print a block list." -msgstr "Imprimir unha lista de bloques." - -#: grub-core/commands/boot.c:147 grub-core/commands/legacycfg.c:533 -#: grub-core/commands/legacycfg.c:574 grub-core/loader/arm64/linux.c:250 -#: grub-core/loader/i386/bsd.c:1799 grub-core/loader/i386/bsd.c:1900 -#: grub-core/loader/i386/bsd.c:2007 grub-core/loader/i386/bsd.c:2040 -#: grub-core/loader/i386/bsd.c:2089 grub-core/loader/i386/linux.c:1047 -#: grub-core/loader/i386/pc/linux.c:406 grub-core/loader/i386/xen.c:775 -#: grub-core/loader/i386/xen.c:859 grub-core/loader/ia64/efi/linux.c:545 -#: grub-core/loader/mips/linux.c:432 grub-core/loader/multiboot.c:388 -#: grub-core/loader/powerpc/ieee1275/linux.c:347 -#: grub-core/loader/sparc64/ieee1275/linux.c:387 grub-core/loader/xnu.c:572 -#: grub-core/loader/xnu.c:665 grub-core/loader/xnu.c:781 -#: grub-core/loader/xnu.c:895 grub-core/loader/xnu.c:1091 -#: grub-core/loader/xnu.c:1258 grub-core/loader/xnu.c:1289 -#: grub-core/loader/xnu.c:1430 -msgid "you need to load the kernel first" -msgstr "cómpre cargar o núcleo primeiro" - -#: grub-core/commands/boot.c:189 -msgid "Boot an operating system." -msgstr "Arrancar un sistema operativo." - -#: grub-core/commands/boottime.c:36 -#: grub-core/commands/i386/coreboot/cb_timestamps.c:108 -msgid "No boot time statistics is available\n" -msgstr "Non hai estatísticas dispoñíbeis sobre a duración do arranque\n" - -#: grub-core/commands/boottime.c:59 -#, fuzzy -msgid "Show boot time statistics." -msgstr "Obter estatísticas da duración do arranque." - -#: grub-core/commands/cacheinfo.c:40 -#, c-format -msgid "Disk cache statistics: hits = %lu (%lu.%02lu%%), misses = %lu\n" -msgstr "Estatísticas da caché de disco = %lu (%lu.%02lu%%), perdidos = %lu\n" - -#: grub-core/commands/cacheinfo.c:45 -msgid "No disk cache statistics available\n" -msgstr "Non hai estatísticas dispoñíbeis sobre a caché do disco\n" - -#: grub-core/commands/cacheinfo.c:56 -msgid "Get disk cache info." -msgstr "Obter información sobre a caché do disco." - -#: grub-core/commands/cat.c:33 -msgid "Accept DOS-style CR/NL line endings." -msgstr "Aceptar os finais de liña estilo-DOS CR/NL." - -#: grub-core/commands/cat.c:163 grub-core/commands/minicmd.c:198 -msgid "Show the contents of a file." -msgstr "Amosar o contido dun ficheiro." - -#: grub-core/commands/cmp.c:43 grub-core/commands/i386/pc/drivemap.c:239 -#: grub-core/commands/i386/wrmsr.c:60 grub-core/commands/iorw.c:85 -#: grub-core/commands/memrw.c:84 grub-core/commands/password.c:75 -#: grub-core/commands/password_pbkdf2.c:94 grub-core/commands/pgp.c:826 -#: grub-core/commands/regexp.c:113 grub-core/mmap/mmap.c:517 -#: grub-core/net/dns.c:639 -msgid "two arguments expected" -msgstr "agardábanse dous argumentos" - -#: grub-core/commands/cmp.c:45 -#, c-format -msgid "Compare file `%s' with `%s':\n" -msgstr "Comparar o ficheiro «%s» con «%s»:\n" - -#: grub-core/commands/cmp.c:54 -#, c-format -msgid "Files differ in size: %llu [%s], %llu [%s]\n" -msgstr "Os ficheiros difiren en tamaño: %llu [%s], %llu [%s]\n" - -#: grub-core/commands/cmp.c:81 -#, c-format -msgid "Files differ at the offset %llu: 0x%x [%s], 0x%x [%s]\n" -msgstr "Os ficheiros difiren no desprazamento %llu: 0x%x [%s], 0x%x [%s]\n" - -#. TRANSLATORS: it's always exactly 2 files. -#: grub-core/commands/cmp.c:93 -msgid "The files are identical.\n" -msgstr "Os ficheiros son idénticos.\n" - -#: grub-core/commands/cmp.c:113 -msgid "FILE1 FILE2" -msgstr "FICHEIRO1 FICHEIRO2" - -#: grub-core/commands/cmp.c:113 -msgid "Compare two files." -msgstr "Comparar dous ficheiros." - -#: grub-core/commands/configfile.c:65 -msgid "Load another config file." -msgstr "Cargar outro ficheiro de configuración." - -#: grub-core/commands/configfile.c:69 grub-core/commands/configfile.c:87 -msgid "Load another config file without changing context." -msgstr "Cargar outro ficheiro de configuración sen cambiar de contexto." - -#: grub-core/commands/configfile.c:75 -msgid "" -"Load another config file without changing context but take only menu entries." -msgstr "" -"Cargar outro ficheiro de configuración sen cambiar o contexto e tomar del " -"soamente as entradas de menú." - -#: grub-core/commands/configfile.c:81 -msgid "Load another config file but take only menu entries." -msgstr "Cargar outro ficheiro de configuración e tomar só as entradas de menú." - -#: grub-core/commands/date.c:141 -msgid "[[year-]month-day] [hour:minute[:second]]" -msgstr "[[ano-]mes-día] [hora:minuto[:segundo]]" - -#: grub-core/commands/date.c:142 -msgid "Display/set current datetime." -msgstr "Amosar/definir a data e hora actual." - -#: grub-core/commands/echo.c:30 -msgid "Do not output the trailing newline." -msgstr "Non amosar nova liña ao final." - -#: grub-core/commands/echo.c:31 -msgid "Enable interpretation of backslash escapes." -msgstr "Activar que se interpreten os escapes coa barra invertida." - -#: grub-core/commands/echo.c:134 -msgid "[-e|-n] STRING" -msgstr "[-e|-n] CADEA" - -#: grub-core/commands/echo.c:134 -msgid "Display a line of text." -msgstr "Presentar unha liña de texto." - -#: grub-core/commands/efi/efifwsetup.c:82 -msgid "Reboot into firmware setup menu." -msgstr "Reiniciar no menú de configuración do firmware." - -#: grub-core/commands/efi/fixvideo.c:107 -msgid "Fix video problem." -msgstr "Corrixir o problema de vídeo." - -#: grub-core/commands/efi/loadbios.c:52 -msgid "ROM image is present." -msgstr "A imaxe da ROM está presente." - -#: grub-core/commands/efi/loadbios.c:70 -msgid "Can't enable ROM area." -msgstr "Non se pode activar a área da ROM." - -#: grub-core/commands/efi/loadbios.c:209 -msgid "" -"Create BIOS-like structures for backward compatibility with existing OS." -msgstr "Crear estruturas tipo BIOS para retrocompatibilidade co SO existente." - -#: grub-core/commands/efi/loadbios.c:214 -msgid "BIOS_DUMP [INT10_DUMP]" -msgstr "BIOS_DUMP [INT10_DUMP]" - -#: grub-core/commands/efi/loadbios.c:215 -msgid "Load BIOS dump." -msgstr "Cargar o envorcado do BIOS." - -#: grub-core/commands/efi/shim_lock.c:76 -#, c-format -msgid "module cannot be loaded in UEFI secure boot mode: %s" -msgstr "" - -#: grub-core/commands/efi/shim_lock.c:98 -#, c-format -msgid "cannot boot due to dangerous module in memory: %s" -msgstr "" - -#: grub-core/commands/efi/shim_lock.c:116 -#, fuzzy -msgid "bad shim signature" -msgstr "mala sinatura" - -#: grub-core/commands/efi/tpm.c:149 grub-core/commands/efi/tpm.c:189 -#: grub-core/commands/efi/tpm.c:256 grub-core/commands/efi/tpm.c:306 -#, fuzzy -msgid "Command failed" -msgstr "Fallou o apagado" - -#: grub-core/commands/efi/tpm.c:151 grub-core/commands/efi/tpm.c:191 -#: grub-core/commands/efi/tpm.c:258 grub-core/commands/efi/tpm.c:308 -#, fuzzy -msgid "Invalid parameter" -msgstr "o parámetro %s non é correcto" - -#: grub-core/commands/efi/tpm.c:154 grub-core/commands/efi/tpm.c:194 -#: grub-core/commands/efi/tpm.c:261 grub-core/commands/efi/tpm.c:311 -msgid "Output buffer too small" -msgstr "" - -#: grub-core/commands/efi/tpm.c:156 grub-core/commands/efi/tpm.c:196 -#: grub-core/commands/efi/tpm.c:263 grub-core/commands/efi/tpm.c:313 -#, fuzzy -msgid "TPM unavailable" -msgstr "Camiño: non está dispoñíbel" - -#: grub-core/commands/efi/tpm.c:158 grub-core/commands/efi/tpm.c:198 -#: grub-core/commands/efi/tpm.c:265 grub-core/commands/efi/tpm.c:315 -#, fuzzy -msgid "Unknown TPM error" -msgstr "Produciuse un erro descoñecido do sistema" - -#: grub-core/commands/efi/tpm.c:240 grub-core/commands/efi/tpm.c:288 -msgid "cannot allocate TPM event buffer" -msgstr "" - -#: grub-core/commands/eval.c:63 -#, fuzzy -msgid "STRING ..." -msgstr "CADEA" - -#: grub-core/commands/eval.c:64 -msgid "Evaluate arguments as GRUB commands" -msgstr "" - -#: grub-core/commands/file.c:41 -msgid "Check if FILE can be booted as i386 PAE Xen unprivileged guest kernel" -msgstr "" - -#: grub-core/commands/file.c:44 -msgid "Check if FILE can be booted as x86_64 Xen unprivileged guest kernel" -msgstr "" - -#: grub-core/commands/file.c:46 -msgid "Check if FILE can be used as Xen x86 privileged guest kernel" -msgstr "" - -#: grub-core/commands/file.c:48 -#, fuzzy -msgid "Check if FILE can be used as x86 multiboot kernel" -msgstr "Cargar un núcleo multiarranque." - -#: grub-core/commands/file.c:50 -#, fuzzy -msgid "Check if FILE can be used as x86 multiboot2 kernel" -msgstr "Cargar o núcleo multiarranque 2." - -#: grub-core/commands/file.c:52 -msgid "Check if FILE is ARM Linux" -msgstr "" - -#: grub-core/commands/file.c:54 -msgid "Check if FILE is ARM64 Linux" -msgstr "" - -#: grub-core/commands/file.c:56 -msgid "Check if FILE is IA64 Linux" -msgstr "" - -#: grub-core/commands/file.c:58 -msgid "Check if FILE is MIPS Linux" -msgstr "" - -#: grub-core/commands/file.c:60 -msgid "Check if FILE is MIPSEL Linux" -msgstr "" - -#: grub-core/commands/file.c:62 -msgid "Check if FILE is SPARC64 Linux" -msgstr "" - -#: grub-core/commands/file.c:64 -msgid "Check if FILE is POWERPC Linux" -msgstr "" - -#: grub-core/commands/file.c:66 -msgid "Check if FILE is x86 Linux" -msgstr "" - -#: grub-core/commands/file.c:68 -msgid "Check if FILE is x86 Linux supporting 32-bit protocol" -msgstr "" - -#: grub-core/commands/file.c:70 -msgid "Check if FILE is x86 kFreeBSD" -msgstr "" - -#: grub-core/commands/file.c:72 -msgid "Check if FILE is i386 kFreeBSD" -msgstr "" - -#: grub-core/commands/file.c:74 -msgid "Check if FILE is x86_64 kFreeBSD" -msgstr "" - -#: grub-core/commands/file.c:77 -msgid "Check if FILE is x86 kNetBSD" -msgstr "" - -#: grub-core/commands/file.c:79 -msgid "Check if FILE is i386 kNetBSD" -msgstr "" - -#: grub-core/commands/file.c:81 -msgid "Check if FILE is x86_64 kNetBSD" -msgstr "" - -#: grub-core/commands/file.c:84 -msgid "Check if FILE is i386 EFI file" -msgstr "" - -#: grub-core/commands/file.c:86 -msgid "Check if FILE is x86_64 EFI file" -msgstr "" - -#: grub-core/commands/file.c:88 -msgid "Check if FILE is IA64 EFI file" -msgstr "" - -#: grub-core/commands/file.c:90 -msgid "Check if FILE is ARM64 EFI file" -msgstr "" - -#: grub-core/commands/file.c:92 -msgid "Check if FILE is ARM EFI file" -msgstr "" - -#: grub-core/commands/file.c:94 -msgid "Check if FILE is RISC-V 32bit EFI file" -msgstr "" - -#: grub-core/commands/file.c:96 -msgid "Check if FILE is RISC-V 64bit EFI file" -msgstr "" - -#: grub-core/commands/file.c:98 -msgid "Check if FILE is hiberfil.sys in hibernated state" -msgstr "" - -#: grub-core/commands/file.c:100 -msgid "Check if FILE is x86_64 XNU (Mac OS X kernel)" -msgstr "" - -#: grub-core/commands/file.c:102 -msgid "Check if FILE is i386 XNU (Mac OS X kernel)" -msgstr "" - -#: grub-core/commands/file.c:104 -msgid "Check if FILE is XNU (Mac OS X kernel) hibernated image" -msgstr "" - -#: grub-core/commands/file.c:106 -msgid "Check if FILE is BIOS bootsector" -msgstr "" - -#. TRANSLATORS: it's a standalone boolean value, -#. opposite of "true". -#: grub-core/commands/file.c:675 grub-core/commands/i386/cmostest.c:63 -#: grub-core/commands/i386/cpuid.c:71 grub-core/commands/keystatus.c:83 -#: grub-core/commands/keystatus.c:87 grub-core/commands/keystatus.c:96 -#: grub-core/commands/test.c:436 grub-core/commands/true.c:39 -#: grub-core/script/execute.c:247 grub-core/script/execute.c:1039 -msgid "false" -msgstr "falso" - -#: grub-core/commands/file.c:684 -#, fuzzy -msgid "OPTIONS FILE" -msgstr "[OPCIÓNS] FICHEIROS_LETRAS" - -#: grub-core/commands/file.c:685 -msgid "Check if FILE is of specified type." -msgstr "" - -#. TRANSLATORS: It means that the specified partition e.g. -#. hd0,msdos1=/dev/sda1 doesn't exist. -#: grub-core/commands/gptsync.c:140 grub-core/kern/disk.c:258 -msgid "no such partition" -msgstr "non existe tal partición" - -#: grub-core/commands/gptsync.c:240 -#, c-format -msgid "New MBR is written to `%s'\n" -msgstr "Escribiuse un novo MBR en «%s»\n" - -#: grub-core/commands/gptsync.c:252 -msgid "DEVICE [PARTITION[+/-[TYPE]]] ..." -msgstr "DISPOSITIVO [PARTICIÓN[+/-[TIPO]]] ..." - -#. TRANSLATORS: MBR type is one-byte partition -#. type id. -#: grub-core/commands/gptsync.c:255 -msgid "" -"Fill hybrid MBR of GPT drive DEVICE. Specified partitions will be a part of " -"hybrid MBR. Up to 3 partitions are allowed. TYPE is an MBR type. + means " -"that partition is active. Only one partition can be active." -msgstr "" -"Completar o MBR híbrido da unidade GPT do DISPOSITIVO. As particións " -"especificadas serán unha parte do MBR híbrido. Permítense ata tres " -"particións. O TIPO é un forma de MBR. + significa que esa partición está " -"activa. Soamente pode estar activan unha partición." - -#: grub-core/commands/halt.c:40 -msgid "" -"Halts the computer. This command does not work on all firmware " -"implementations." -msgstr "" -"Detén o equipo. Esta orde non funciona en todas os sistemas de firmware." - -#: grub-core/commands/hashsum.c:32 -msgid "Specify hash to use." -msgstr "Especificar o hash para usar." - -#: grub-core/commands/hashsum.c:32 -msgid "HASH" -msgstr "HASH" - -#: grub-core/commands/hashsum.c:33 -msgid "Check hashes of files with hash list FILE." -msgstr "Comprobar os hashes de ficheiros co FICHEIRO da lista de hashes." - -#: grub-core/commands/hashsum.c:35 -msgid "Base directory for hash list." -msgstr "Cartafol base da lista de hashes." - -#. TRANSLATORS: platform here isn't identifier. It can be translated. -#: grub-core/commands/hashsum.c:35 grub-core/commands/ls.c:150 -#: grub-core/commands/macbless.c:226 grub-core/commands/syslinuxcfg.c:51 -#: grub-core/commands/syslinuxcfg.c:54 grub-core/kern/emu/main.c:106 -#: include/grub/util/install.h:50 include/grub/util/install.h:53 -#: include/grub/util/install.h:56 include/grub/util/install.h:59 -#: util/grub-install.c:250 util/grub-install.c:252 util/grub-install.c:297 -#: util/grub-install.c:299 util/grub-mkimage.c:64 util/grub-mkimage.c:67 -#: util/grub-mknetdir.c:46 util/grub-mknetdir.c:48 util/grub-mkrescue.c:99 -#: util/grub-setup.c:82 util/grub-syslinux2cfg.c:63 util/grub-syslinux2cfg.c:65 -#: util/grub-syslinux2cfg.c:67 util/grub-syslinux2cfg.c:71 -msgid "DIR" -msgstr "CARTAFOL" - -#: grub-core/commands/hashsum.c:37 -msgid "Don't stop after first error." -msgstr "Non parar tras o primeiro erro." - -#: grub-core/commands/hashsum.c:38 -msgid "Uncompress file before checksumming." -msgstr "Descomprimir o ficheiro antes da suma de comprobación." - -#: grub-core/commands/hashsum.c:163 -#, c-format -msgid "%s: READ ERROR\n" -msgstr "%s: ERRO DE LECTURA\n" - -#: grub-core/commands/hashsum.c:177 -#, c-format -msgid "%s: HASH MISMATCH\n" -msgstr "%s: NON COINCIDE O HASH\n" - -#: grub-core/commands/hashsum.c:188 -#, c-format -msgid "%s: OK\n" -msgstr "%s: Aceptar\n" - -#: grub-core/commands/hashsum.c:282 -msgid "-h HASH [-c FILE [-p PREFIX]] [FILE1 [FILE2 ...]]" -msgstr "-h HASH [-c FICHEIRO [-p PREFIXO]] [FICHEIRO1 [FICHEIRO2 ...]]" - -#. TRANSLATORS: "hash checksum" is just to -#. be a bit more precise, you can treat it as -#. just "hash". -#: grub-core/commands/hashsum.c:287 grub-core/commands/hashsum.c:292 -#: grub-core/commands/hashsum.c:297 grub-core/commands/hashsum.c:302 -#: grub-core/commands/hashsum.c:307 grub-core/commands/hashsum.c:313 -msgid "Compute or check hash checksum." -msgstr "Calcular ou comprobar a suma de comprobación do hash." - -#: grub-core/commands/hashsum.c:290 grub-core/commands/hashsum.c:295 -#: grub-core/commands/hashsum.c:300 grub-core/commands/hashsum.c:305 -#: grub-core/commands/hashsum.c:311 -msgid "[-c FILE [-p PREFIX]] [FILE1 [FILE2 ...]]" -msgstr "[-c FICHEIRO [-p PREFIXO]] [FICHEIRO1 [FICHEIRO2 ...]]" - -#: grub-core/commands/hdparm.c:33 -msgid "" -"Set Advanced Power Management\n" -"(1=low, ..., 254=high, 255=off)." -msgstr "" -"Estabelecer o xestor avanzado de enerxía\n" -"(1=baixo, ..., 254=alto, 255=apagado)." - -#: grub-core/commands/hdparm.c:36 -msgid "Display power mode." -msgstr "Amosar o modo de enerxía." - -#: grub-core/commands/hdparm.c:37 -msgid "Freeze ATA security settings until reset." -msgstr "Conxelar a configuración ATA de seguranza ata reiniciar." - -#: grub-core/commands/hdparm.c:39 -msgid "Display SMART health status." -msgstr "Amosar o estado de sanidade SMART." - -#: grub-core/commands/hdparm.c:40 -msgid "" -"Set Automatic Acoustic Management\n" -"(0=off, 128=quiet, ..., 254=fast)." -msgstr "" -"Estabelecer o xestor automático de acústica\n" -"(0=apagado, 128=silencioso, ..., 254=rápido)." - -#: grub-core/commands/hdparm.c:43 -msgid "" -"Set standby timeout\n" -"(0=off, 1=5s, 2=10s, ..., 240=20m, 241=30m, ...)." -msgstr "" -"Estabelecer a caducidade do tempo de espera\n" -"(0=apagado, 1=5s, 2=10s, ..., 240=20m, 241=30m, ...)." - -#: grub-core/commands/hdparm.c:46 -msgid "Set drive to standby mode." -msgstr "Estabelecer o controlador do modo de espera." - -#: grub-core/commands/hdparm.c:47 -msgid "Set drive to sleep mode." -msgstr "Estabelecer a unidade en modo dormente." - -#: grub-core/commands/hdparm.c:48 -msgid "Print drive identity and settings." -msgstr "Imprime a identidade do controlador e a configuración." - -#: grub-core/commands/hdparm.c:50 -msgid "Show raw contents of ATA IDENTIFY sector." -msgstr "Amosar o contido en bruto do sector ATA IDENTIFY." - -#: grub-core/commands/hdparm.c:52 -msgid "Disable/enable SMART (0/1)." -msgstr "Desactivar/activar SMART (0/1)." - -#: grub-core/commands/hdparm.c:53 -msgid "Do not print messages." -msgstr "Non imprimir mensaxes." - -#: grub-core/commands/hdparm.c:286 grub-core/commands/i386/rdmsr.c:68 -#: grub-core/commands/iorw.c:47 grub-core/commands/legacycfg.c:760 -#: grub-core/commands/legacycfg.c:812 grub-core/commands/macbless.c:190 -#: grub-core/commands/memrw.c:47 grub-core/commands/pgp.c:738 -#: grub-core/commands/pgp.c:792 grub-core/commands/search.c:304 -#: grub-core/commands/search_wrap.c:179 grub-core/commands/setpci.c:243 -#: grub-core/commands/sleep.c:71 grub-core/fs/zfs/zfsinfo.c:279 -#: grub-core/fs/zfs/zfsinfo.c:358 grub-core/gettext/gettext.c:492 -#: grub-core/kern/corecmd.c:65 grub-core/kern/corecmd.c:79 -#: grub-core/mmap/mmap.c:430 grub-core/net/dns.c:713 grub-core/net/dns.c:745 -#: grub-core/net/net.c:694 grub-core/net/net.c:1052 -#: grub-core/normal/context.c:194 grub-core/script/execute.c:131 -#: grub-core/term/gfxterm_background.c:136 -msgid "one argument expected" -msgstr "agardábase un argumento" - -#: grub-core/commands/hdparm.c:440 -msgid "[OPTIONS] DISK" -msgstr "[OPCIÓNS] DISCO" - -#: grub-core/commands/hdparm.c:441 -msgid "Get/set ATA disk parameters." -msgstr "Obter/estabelecer parámetros ATA do disco." - -#: grub-core/commands/help.c:132 grub-core/lib/arg.c:109 -#: grub-core/lib/gnulib/argp-help.c:1616 -msgid "Usage:" -msgstr "Utilización:" - -#: grub-core/commands/help.c:146 -msgid "[PATTERN ...]" -msgstr "[MODELO ...]" - -#: grub-core/commands/help.c:147 -msgid "Show a help message." -msgstr "Amosa unha mensaxe de axuda." - -#: grub-core/commands/hexdump.c:31 -msgid "Skip offset bytes from the beginning of file." -msgstr "Omitir o desprazamento de octetos desde o comezo do ficheiro." - -#: grub-core/commands/hexdump.c:33 -msgid "Read only LENGTH bytes." -msgstr "Ler só LENGTH bytes." - -#: grub-core/commands/hexdump.c:125 -msgid "[OPTIONS] FILE_OR_DEVICE" -msgstr "[OPCIÓNS] FICHEIRO_OU_DISPOSITIVO" - -#: grub-core/commands/hexdump.c:126 -msgid "Show raw contents of a file or memory." -msgstr "Amosar os contidos en bruto dun ficheiro ou da memoria." - -#: grub-core/commands/i386/cmosdump.c:58 -#, fuzzy -msgid "Show raw dump of the CMOS contents." -msgstr "Envorcar os contidos CMOS." - -#: grub-core/commands/i386/cmostest.c:108 -#: grub-core/commands/i386/cmostest.c:111 -#: grub-core/commands/i386/cmostest.c:114 -msgid "BYTE:BIT" -msgstr "BYTE:BIT" - -#: grub-core/commands/i386/cmostest.c:109 -msgid "Test bit at BYTE:BIT in CMOS." -msgstr "Probar bit en BYTE:BIT no CMOS." - -#: grub-core/commands/i386/cmostest.c:112 -#, fuzzy -msgid "Clear bit at BYTE:BIT in CMOS." -msgstr "Limpar bit en BYTE:BIT no CMOS." - -#. TRANSLATORS: A bit may be either set (1) or clear (0). -#: grub-core/commands/i386/cmostest.c:116 -#, fuzzy -msgid "Set bit at BYTE:BIT in CMOS." -msgstr "Probar bit en BYTE:BIT no CMOS." - -#: grub-core/commands/i386/coreboot/cb_timestamps.c:120 -#, fuzzy -msgid "Show coreboot boot time statistics." -msgstr "Obter estatísticas da duración do arranque do núcleo." - -#: grub-core/commands/i386/coreboot/cbls.c:137 -msgid "List coreboot tables." -msgstr "Listar táboas do arranque do núcleo." - -#. TRANSLATORS: "(default)" at the end means that this option is used if -#. no argument is specified. -#: grub-core/commands/i386/cpuid.c:36 -msgid "Check if CPU supports 64-bit (long) mode (default)." -msgstr "" -"Probar se a CPU é compatíbel co modo (predeterminado) de 64 bit (longo)." - -#: grub-core/commands/i386/cpuid.c:37 -#, fuzzy -msgid "Check if CPU supports Physical Address Extension." -msgstr "" -"Probar se a CPU é compatíbel co modo (predeterminado) de 64 bit (longo)." - -#: grub-core/commands/i386/cpuid.c:119 -msgid "Check for CPU features." -msgstr "Comprobar as funcionalidades da CPU." - -#. TRANSLATORS: In this file "mapping" refers to a change GRUB makes so if -#. your language doesn't have an equivalent of "mapping" you can -#. use the word like "rerouting". -#. -#: grub-core/commands/i386/pc/drivemap.c:43 -msgid "Show the current mappings." -msgstr "Amosar as asignacións actuais." - -#: grub-core/commands/i386/pc/drivemap.c:44 -msgid "Reset all mappings to the default values." -msgstr "Restabelecer todas as asignacións nos valores predeterminados." - -#: grub-core/commands/i386/pc/drivemap.c:45 -msgid "Perform both direct and reverse mappings." -msgstr "Realizar asignacións directas e inversas." - -#: grub-core/commands/i386/pc/drivemap.c:184 -msgid "No drives have been remapped" -msgstr "Non se reasignaron controladores" - -#. TRANSLATORS: This is the header of mapping list. -#. On the left is how OS will see the disks and -#. on the right current GRUB vision. -#: grub-core/commands/i386/pc/drivemap.c:191 -msgid "OS disk #num ------> GRUB/BIOS device" -msgstr "SO disco #núm ------> dispositivo GRUB/BIOS" - -#: grub-core/commands/i386/pc/drivemap.c:413 -msgid "-l | -r | [-s] grubdev osdisk." -msgstr "-l | -r | [-s] grubdev osdisk." - -#: grub-core/commands/i386/pc/drivemap.c:414 -msgid "Manage the BIOS drive mappings." -msgstr "Xestionar o controlador de asignacións do BIOS." - -#: grub-core/commands/i386/pc/halt.c:31 -msgid "Do not use APM to halt the computer." -msgstr "Non usar APM para deter o computador." - -#: grub-core/commands/i386/pc/halt.c:119 -msgid "Halt the system, if possible using APM." -msgstr "Deter o sistema, se é posíbel usando APM." - -#: grub-core/commands/i386/pc/lsapm.c:75 -msgid "no APM found" -msgstr "non se atopu APM" - -#: grub-core/commands/i386/pc/lsapm.c:77 -#, c-format -msgid "" -"Version %u.%u\n" -"32-bit CS = 0x%x, len = 0x%x, offset = 0x%x\n" -"16-bit CS = 0x%x, len = 0x%x\n" -"DS = 0x%x, len = 0x%x\n" -msgstr "" -"Versión %u.%u\n" -"32-bit CS = 0x%x, len = 0x%x, offset = 0x%x\n" -"16-bit CS = 0x%x, len = 0x%x\n" -"DS = 0x%x, len = 0x%x\n" - -#: grub-core/commands/i386/pc/lsapm.c:86 -msgid "16-bit protected interface supported\n" -msgstr "compatíbel coa interface protexida de 16 bit\n" - -#: grub-core/commands/i386/pc/lsapm.c:87 -msgid "16-bit protected interface unsupported\n" -msgstr "non compatíbel coa interface protexida de 16 bit\n" - -#: grub-core/commands/i386/pc/lsapm.c:89 -msgid "32-bit protected interface supported\n" -msgstr "compatíbel coa interface protexida de 32 bit\n" - -#: grub-core/commands/i386/pc/lsapm.c:90 -msgid "32-bit protected interface unsupported\n" -msgstr "non compatíbel coa inteface protexida de 32 bit\n" - -#: grub-core/commands/i386/pc/lsapm.c:92 -msgid "CPU Idle slows down processor\n" -msgstr "A CPU inactiva ralentiza o procesador\n" - -#: grub-core/commands/i386/pc/lsapm.c:93 -msgid "CPU Idle doesn't slow down processor\n" -msgstr "A CPU inactiva non ralentiza o procesador\n" - -#: grub-core/commands/i386/pc/lsapm.c:95 -msgid "APM disabled\n" -msgstr "Desactivado o APM\n" - -#: grub-core/commands/i386/pc/lsapm.c:95 -msgid "APM enabled\n" -msgstr "Activado o APM\n" - -#: grub-core/commands/i386/pc/lsapm.c:97 -msgid "APM disengaged\n" -msgstr "Sen o APM\n" - -#: grub-core/commands/i386/pc/lsapm.c:97 -msgid "APM engaged\n" -msgstr "Co APM\n" - -#: grub-core/commands/i386/pc/lsapm.c:107 -msgid "Show APM information." -msgstr "Amosar a información APM." - -#. TRANSLATORS: It's musical notes, not the notes -#. you take. Play command expects arguments which can -#. be either a filename or tempo+notes. -#. This error happens if none is specified. -#: grub-core/commands/i386/pc/play.c:88 -msgid "filename or tempo and notes expected" -msgstr "nome do ficheiro ou tempo e notas esperábeis" - -#: grub-core/commands/i386/pc/play.c:113 grub-core/commands/i386/pc/play.c:144 -#, fuzzy, c-format -msgid "Invalid tempo in %s" -msgstr "A orde %s é incorrecta.\n" - -#: grub-core/commands/i386/pc/play.c:151 grub-core/commands/macbless.c:172 -#: grub-core/fs/archelp.c:260 grub-core/fs/bfs.c:621 grub-core/fs/bfs.c:704 -#: grub-core/fs/btrfs.c:1726 grub-core/fs/btrfs.c:1755 -#: grub-core/fs/btrfs.c:1799 grub-core/fs/btrfs.c:1882 -#: grub-core/fs/btrfs.c:1906 grub-core/fs/fshelp.c:257 grub-core/fs/jfs.c:696 -#: grub-core/fs/minix.c:426 grub-core/fs/ufs.c:544 grub-core/fs/zfs/zfs.c:2083 -#: grub-core/fs/zfs/zfs.c:2095 grub-core/fs/zfs/zfs.c:2301 -#: grub-core/net/http.c:120 -#, c-format -msgid "file `%s' not found" -msgstr "non se atopou o ficheiro «%s»" - -#: grub-core/commands/i386/pc/play.c:162 grub-core/commands/i386/pc/play.c:171 -#: grub-core/kern/misc.c:419 grub-core/script/execute.c:138 -#: grub-core/script/execute.c:244 -msgid "unrecognized number" -msgstr "número non recoñecido" - -#: grub-core/commands/i386/pc/play.c:190 -msgid "FILE | TEMPO [PITCH1 DURATION1] [PITCH2 DURATION2] ... " -msgstr "FICHEIRO | TEMPO [PITCH1 DURACIÓN1] [PITCH2 DURACIÓN2] ... " - -#: grub-core/commands/i386/pc/play.c:191 -msgid "Play a tune." -msgstr "Afinar." - -#: grub-core/commands/i386/pc/sendkey.c:39 -msgid "set numlock mode" -msgstr "definir o modo de BloqNúm" - -#: grub-core/commands/i386/pc/sendkey.c:40 -msgid "set capslock mode" -msgstr "definir o modo de BloqMaiús" - -#: grub-core/commands/i386/pc/sendkey.c:41 -msgid "set scrolllock mode" -msgstr "definir o modo de BloqDespr" - -#: grub-core/commands/i386/pc/sendkey.c:42 -msgid "set insert mode" -msgstr "definir o modo de inserción" - -#: grub-core/commands/i386/pc/sendkey.c:43 -msgid "set pause mode" -msgstr "definir o modo de pausa" - -#: grub-core/commands/i386/pc/sendkey.c:44 -msgid "press left shift" -msgstr "premer a maiúscula esquerda" - -#: grub-core/commands/i386/pc/sendkey.c:45 -msgid "press right shift" -msgstr "premer a maiúscula dereita" - -#: grub-core/commands/i386/pc/sendkey.c:46 -msgid "press SysRq" -msgstr "premer PetSis" - -#: grub-core/commands/i386/pc/sendkey.c:47 -msgid "press NumLock key" -msgstr "premer a tecla de BloqNúm" - -#: grub-core/commands/i386/pc/sendkey.c:48 -msgid "press CapsLock key" -msgstr "premer a tecla de BloqM" - -#: grub-core/commands/i386/pc/sendkey.c:49 -msgid "press ScrollLock key" -msgstr "premer a tecla de BloqD" - -#: grub-core/commands/i386/pc/sendkey.c:50 -msgid "press Insert key" -msgstr "premer a tecla de inserción" - -#: grub-core/commands/i386/pc/sendkey.c:51 -msgid "press left alt" -msgstr "premer Alt esquerda" - -#: grub-core/commands/i386/pc/sendkey.c:52 -msgid "press right alt" -msgstr "premer Alt dereita" - -#: grub-core/commands/i386/pc/sendkey.c:53 -msgid "press left ctrl" -msgstr "premer Ctrl esquerda" - -#: grub-core/commands/i386/pc/sendkey.c:54 -msgid "press right ctrl" -msgstr "premer Ctrl dereita" - -#: grub-core/commands/i386/pc/sendkey.c:55 -msgid "don't update LED state" -msgstr "non actualizar o estado LED" - -#: grub-core/commands/i386/pc/sendkey.c:372 -msgid "[KEYSTROKE1] [KEYSTROKE2] ..." -msgstr "[KEYSTROKE1] [KEYSTROKE2] ..." - -#. TRANSLATORS: It can emulate multiple -#. keypresses. -#: grub-core/commands/i386/pc/sendkey.c:375 -msgid "Emulate a keystroke sequence" -msgstr "Emular a secuencia de atallo de teclado" - -#: grub-core/commands/i386/rdmsr.c:37 grub-core/commands/iorw.c:34 -#: grub-core/commands/memrw.c:33 grub-core/commands/setpci.c:73 -msgid "Save read value into variable VARNAME." -msgstr "Gardar o valor lido na variábel VARNAME." - -#: grub-core/commands/i386/rdmsr.c:38 grub-core/commands/iorw.c:35 -#: grub-core/commands/memrw.c:34 grub-core/commands/probe.c:40 -#: grub-core/commands/search_wrap.c:40 grub-core/commands/setpci.c:74 -#: grub-core/commands/tr.c:32 -msgid "VARNAME" -msgstr "VARNAME" - -#: grub-core/commands/i386/rdmsr.c:55 grub-core/commands/i386/rdmsr.c:60 -#: grub-core/commands/i386/rdmsr.c:65 grub-core/commands/i386/wrmsr.c:47 -#: grub-core/commands/i386/wrmsr.c:52 grub-core/commands/i386/wrmsr.c:57 -#, fuzzy -msgid "unsupported instruction" -msgstr "O formato gzip non é compatíbel" - -#: grub-core/commands/i386/rdmsr.c:77 grub-core/commands/i386/wrmsr.c:69 -#: grub-core/commands/i386/wrmsr.c:77 grub-core/net/dns.c:727 -#, fuzzy -msgid "invalid argument" -msgstr "o parámetro %s non é correcto" - -#: grub-core/commands/i386/rdmsr.c:94 grub-core/commands/memrw.c:125 -#: grub-core/commands/memrw.c:129 grub-core/commands/memrw.c:133 -msgid "ADDR" -msgstr "ENDEREZO" - -#: grub-core/commands/i386/rdmsr.c:95 -msgid "Read a CPU model specific register." -msgstr "" - -#: grub-core/commands/i386/wrmsr.c:86 -#, fuzzy -msgid "ADDR VALUE" -msgstr "ENDEREZO VALOR [MÃSCARA]" - -#: grub-core/commands/i386/wrmsr.c:87 -msgid "Write a value to a CPU model specific register." -msgstr "" - -#: grub-core/commands/ieee1275/suspend.c:34 -msgid "Run `go' to resume GRUB." -msgstr "Executar «go» para retomar o GRUB." - -#: grub-core/commands/ieee1275/suspend.c:45 -msgid "Return to IEEE1275 prompt." -msgstr "Volver ao indicador IEEE1275." - -#: grub-core/commands/iorw.c:123 grub-core/commands/iorw.c:127 -#: grub-core/commands/iorw.c:131 grub-core/gdb/gdb.c:79 -msgid "PORT" -msgstr "PORT" - -#: grub-core/commands/iorw.c:123 -msgid "Read 8-bit value from PORT." -msgstr "Ler o valor de 8 bit de PORT." - -#: grub-core/commands/iorw.c:127 -msgid "Read 16-bit value from PORT." -msgstr "Ler o valor de 16 bit de PORT." - -#: grub-core/commands/iorw.c:131 -msgid "Read 32-bit value from PORT." -msgstr "Ler o valor de 32 bit de PORT." - -#: grub-core/commands/iorw.c:135 grub-core/commands/iorw.c:139 -msgid "PORT VALUE [MASK]" -msgstr "PORTO VALOR [MÃSCARA]" - -#: grub-core/commands/iorw.c:136 -msgid "Write 8-bit VALUE to PORT." -msgstr "Escribir o VALOR de 8 bit en PORT." - -#: grub-core/commands/iorw.c:140 -msgid "Write 16-bit VALUE to PORT." -msgstr "Escribir o VALOR de 16 bit en PORT." - -#: grub-core/commands/iorw.c:143 grub-core/commands/memrw.c:137 -#: grub-core/commands/memrw.c:141 grub-core/commands/memrw.c:145 -msgid "ADDR VALUE [MASK]" -msgstr "ENDEREZO VALOR [MÃSCARA]" - -#: grub-core/commands/iorw.c:144 -msgid "Write 32-bit VALUE to PORT." -msgstr "Escribir o VALOR de 32 bit en PORT." - -#: grub-core/commands/keylayouts.c:215 grub-core/commands/loadenv.c:61 -#: grub-core/commands/nativedisk.c:189 grub-core/efiemu/main.c:235 -#: grub-core/font/font.c:428 grub-core/gfxmenu/gfxmenu.c:63 -#: grub-core/kern/device.c:42 grub-core/kern/dl.c:740 -#, c-format -msgid "variable `%s' isn't set" -msgstr "a variábel «%s» non está definida" - -#: grub-core/commands/keylayouts.c:301 -msgid "Load a keyboard layout." -msgstr "Cargar un mapa de teclado." - -#. TRANSLATORS: "Check" in a sense that if this key is pressed then -#. "true" is returned, otherwise "false". -#: grub-core/commands/keystatus.c:32 -msgid "Check Shift key." -msgstr "Comprobar a tecla Maiús." - -#: grub-core/commands/keystatus.c:33 -msgid "Check Control key." -msgstr "Comprobar a tecla Control." - -#: grub-core/commands/keystatus.c:34 -msgid "Check Alt key." -msgstr "Comprobar a tecla Alt." - -#. TRANSLATORS: there are 3 modifiers. -#: grub-core/commands/keystatus.c:106 -msgid "Check key modifier status." -msgstr "Comprobar o estado do modificador de tecla." - -#: grub-core/commands/legacycfg.c:512 grub-core/commands/legacycfg.c:526 -#: grub-core/commands/legacycfg.c:546 grub-core/commands/legacycfg.c:559 -#: grub-core/commands/time.c:43 grub-core/script/function.c:109 -#: util/grub-file.c:100 util/grub-fstest.c:57 util/grub-mount.c:69 -#, c-format -msgid "can't find command `%s'" -msgstr "non é posíbel atopar a orde «%s»" - -#: grub-core/commands/legacycfg.c:813 grub-core/normal/auth.c:225 -#: util/grub-mkpasswd-pbkdf2.c:139 -msgid "Enter password: " -msgstr "Introduza o contrasinal: " - -#. TRANSLATORS: "legacy config" means -#. "config as used by grub-legacy". -#: grub-core/commands/legacycfg.c:837 -msgid "Parse legacy config in same context" -msgstr "Procesa a configuración legada no mesmo contexto" - -#: grub-core/commands/legacycfg.c:842 -msgid "Parse legacy config in new context" -msgstr "Procesa a configuración legada en novo contexto" - -#: grub-core/commands/legacycfg.c:847 -msgid "Parse legacy config in same context taking only menu entries" -msgstr "" -"A análise da configuración legada no mesmo contexto collendo só as entradas " -"do menú" - -#: grub-core/commands/legacycfg.c:852 -msgid "Parse legacy config in new context taking only menu entries" -msgstr "" -"A análise da configuración legada en contexto novo collendo só as entradas " -"do menú" - -#: grub-core/commands/legacycfg.c:856 -msgid "[--no-mem-option] [--type=TYPE] FILE [ARG ...]" -msgstr "[--no-mem-option] [--type=TIPO] FICHEIRO [ARG ...]" - -#: grub-core/commands/legacycfg.c:857 -msgid "Simulate grub-legacy `kernel' command" -msgstr "Simula a antiga orde de grub «kernel»" - -#: grub-core/commands/legacycfg.c:861 grub-core/commands/legacycfg.c:865 -msgid "FILE [ARG ...]" -msgstr "FICHEIRO [ARG ...]" - -#: grub-core/commands/legacycfg.c:862 -msgid "Simulate grub-legacy `initrd' command" -msgstr "Simula a antiga orde de grub «initrd»" - -#: grub-core/commands/legacycfg.c:866 -msgid "Simulate grub-legacy `modulenounzip' command" -msgstr "Simula a antiga orde de grub «modulenounzip»" - -#: grub-core/commands/legacycfg.c:870 grub-core/commands/legacycfg.c:875 -msgid "[--md5] PASSWD [FILE]" -msgstr "[--md5] CONTRASINAL [FICHEIRO]" - -#: grub-core/commands/legacycfg.c:871 -msgid "Simulate grub-legacy `password' command" -msgstr "Simula a antiga orde de grub «password»" - -#: grub-core/commands/legacycfg.c:876 -msgid "Simulate grub-legacy `password' command in menu entry mode" -msgstr "Simula a antiga orde de grub «password» no modo de entrada de menú" - -#. TRANSLATORS: This option is used to override default filename -#. for loading and storing environment. -#: grub-core/commands/loadenv.c:37 -msgid "Specify filename." -msgstr "Especifique o nome do ficheiro." - -#: grub-core/commands/loadenv.c:39 -msgid "Skip signature-checking of the environment file." -msgstr "" - -#: grub-core/commands/loadenv.c:451 -#, fuzzy -msgid "[-f FILE] [-s|--skip-sig] [variable_name_to_whitelist] [...]" -msgstr "[-f FICHEIRO] nome_variábel [...]" - -#: grub-core/commands/loadenv.c:452 -msgid "Load variables from environment block file." -msgstr "Carga variábeis procedentes do ficheiro de bloque de entorno." - -#: grub-core/commands/loadenv.c:455 -msgid "[-f FILE]" -msgstr "[-f FICHEIRO]" - -#: grub-core/commands/loadenv.c:456 -msgid "List variables from environment block file." -msgstr "Lista de variábeis procedentes do ficheiro de bloque de entorno." - -#: grub-core/commands/loadenv.c:460 -msgid "[-f FILE] variable_name [...]" -msgstr "[-f FICHEIRO] nome_variábel [...]" - -#: grub-core/commands/loadenv.c:461 -msgid "Save variables to environment block file." -msgstr "Garda as variábeis no ficheiro de bloque de entorno." - -#: grub-core/commands/ls.c:40 -msgid "Show a long list with more detailed information." -msgstr "Amosa unha lista longa con información máis detallada." - -#: grub-core/commands/ls.c:41 -msgid "Print sizes in a human readable format." -msgstr "Imprime os tamaños nun formato lexíbel por humanos." - -#: grub-core/commands/ls.c:42 -msgid "List all files." -msgstr "Lista todos os ficheiros." - -#: grub-core/commands/ls.c:73 -msgid "Network protocols:" -msgstr "Protocolos de rede:" - -#: grub-core/commands/ls.c:295 -msgid "[-l|-h|-a] [FILE ...]" -msgstr "[-l|-h|-a] [FICHEIRO ...]" - -#: grub-core/commands/ls.c:296 -msgid "List devices and files." -msgstr "Lista dispositivos e ficheiros." - -#: grub-core/commands/lsacpi.c:255 -msgid "Show version 1 tables only." -msgstr "Amosa soamente as táboas da versión 1." - -#: grub-core/commands/lsacpi.c:256 -msgid "Show version 2 and version 3 tables only." -msgstr "Amosa soamente as táboas das versións 2 e 3." - -#: grub-core/commands/lsacpi.c:306 -msgid "Show ACPI information." -msgstr "Amosar a información da ACPI." - -#: grub-core/commands/lsmmap.c:31 -msgid "available RAM" -msgstr "RAM dispoñíbel" - -#: grub-core/commands/lsmmap.c:32 -msgid "reserved RAM" -msgstr "RAM reservada" - -#. TRANSLATORS: this refers to memory where ACPI tables are stored -#. and which can be used by OS once it loads ACPI tables. -#: grub-core/commands/lsmmap.c:35 -msgid "ACPI reclaimable RAM" -msgstr "RAM reclamábel da ACPI" - -#. TRANSLATORS: this refers to memory which ACPI-compliant OS -#. is required to save accross hibernations. -#: grub-core/commands/lsmmap.c:38 -msgid "ACPI non-volatile storage RAM" -msgstr "RAM non volátil de almacenamento da ACPI" - -#: grub-core/commands/lsmmap.c:39 -msgid "faulty RAM (BadRAM)" -msgstr "RAM defectuosa (BadRAM)" - -#: grub-core/commands/lsmmap.c:40 -msgid "persistent RAM" -msgstr "" - -#: grub-core/commands/lsmmap.c:41 -msgid "persistent RAM (legacy)" -msgstr "" - -#: grub-core/commands/lsmmap.c:42 -msgid "RAM holding coreboot tables" -msgstr "RAM que contén táboas do arranque de núcleo" - -#: grub-core/commands/lsmmap.c:43 -msgid "RAM holding firmware code" -msgstr "RAM que contén código firmware" - -#: grub-core/commands/lsmmap.c:52 -#, c-format -msgid "base_addr = 0x%llx, length = 0x%llx, %s\n" -msgstr "ender_base = 0x%llx, tamaño = 0x%llx, %s\n" - -#: grub-core/commands/lsmmap.c:55 -#, c-format -msgid "base_addr = 0x%llx, length = 0x%llx, type = 0x%x\n" -msgstr "ender_base = 0x%llx, tamaño = 0x%llx, tipo = 0x%x\n" - -#: grub-core/commands/lsmmap.c:79 -msgid "List memory map provided by firmware." -msgstr "Lista o mapa de memoria fornecido polo firmware." - -#: grub-core/commands/lspci.c:232 -msgid "List PCI devices." -msgstr "Lista os dispositivos PCI." - -#: grub-core/commands/macbless.c:224 -msgid "Bless FILE of HFS or HFS+ partition for intel macs." -msgstr "" - -#: grub-core/commands/macbless.c:228 -msgid "Bless DIR of HFS or HFS+ partition for PPC macs." -msgstr "" - -#: grub-core/commands/memrw.c:125 -msgid "Read 8-bit value from ADDR." -msgstr "Le o valor de 8 bit de ENDEREZO." - -#: grub-core/commands/memrw.c:129 -msgid "Read 16-bit value from ADDR." -msgstr "Le o valor de 16 bit de ENDEREZO." - -#: grub-core/commands/memrw.c:133 -msgid "Read 32-bit value from ADDR." -msgstr "Le o valor de 32 bit de ENDEREZO." - -#: grub-core/commands/memrw.c:138 -msgid "Write 8-bit VALUE to ADDR." -msgstr "Escribe o VALOR de 8 bit de ENDEREZO." - -#: grub-core/commands/memrw.c:142 -msgid "Write 16-bit VALUE to ADDR." -msgstr "Escribe o VALOR de 16 bit de ENDEREZO." - -#: grub-core/commands/memrw.c:146 -msgid "Write 32-bit VALUE to ADDR." -msgstr "Escribe o VALOR de 32 bit de ENDEREZO." - -#: grub-core/commands/menuentry.c:31 -msgid "Menu entry type." -msgstr "Tipo de entrada de menú." - -#: grub-core/commands/menuentry.c:31 grub-core/commands/menuentry.c:38 -#: grub-core/commands/menuentry.c:39 grub-core/gettext/gettext.c:520 -#: util/grub-fstest.c:520 util/grub-install.c:291 util/grub-install.c:304 -#: util/grub-mknetdir.c:51 util/grub-mkrescue.c:109 util/grub-mkrescue.c:110 -#: util/grub-mount.c:453 util/grub-render-label.c:65 -msgid "STRING" -msgstr "CADEA" - -#: grub-core/commands/menuentry.c:33 -msgid "List of users allowed to boot this entry." -msgstr "Lista de usuarios aos que se lles permite arrancar con esta entrada." - -#: grub-core/commands/menuentry.c:33 -msgid "USERNAME[,USERNAME]" -msgstr "USUARIO[,USUARIO]" - -#: grub-core/commands/menuentry.c:36 -msgid "Keyboard key to quickly boot this entry." -msgstr "Tecla para arrancar rapidamente con esta entrada." - -#: grub-core/commands/menuentry.c:36 -msgid "KEYBOARD_KEY" -msgstr "TECLA" - -#: grub-core/commands/menuentry.c:38 -msgid "Use STRING as menu entry body." -msgstr "Utilice CADEA como corpo da entrada de menú." - -#: grub-core/commands/menuentry.c:39 -msgid "Menu entry identifier." -msgstr "Identificador da entrada de menú." - -#. TRANSLATORS: menu entry can either be bootable by anyone or only by -#. handful of users. By default when security is active only superusers can -#. boot a given menu entry. With --unrestricted (this option) -#. anyone can boot it. -#: grub-core/commands/menuentry.c:44 -msgid "This entry can be booted by any user." -msgstr "Calquera usuario pode arrancar con esta entrada." - -#: grub-core/commands/menuentry.c:323 grub-core/commands/menuentry.c:328 -#: grub-core/tests/test_blockarg.c:46 -msgid "BLOCK" -msgstr "BLOQUE" - -#: grub-core/commands/menuentry.c:323 -msgid "Define a menu entry." -msgstr "Defina unha entrada de menú." - -#: grub-core/commands/menuentry.c:328 -msgid "Define a submenu." -msgstr "Defina un submenú." - -#. TRANSLATORS: this is module list header. Name -#. is module name, Ref Count is a reference counter -#. (how many modules or open descriptors use it). -#. Dependencies are the other modules it uses. -#. -#: grub-core/commands/minicmd.c:162 -msgid "Name\tRef Count\tDependencies\n" -msgstr "Nome\tContador Ref\tDependencias\n" - -#: grub-core/commands/minicmd.c:201 -msgid "Show this message." -msgstr "Amosar esta mensaxe." - -#: grub-core/commands/minicmd.c:204 -msgid "ADDR [SIZE]" -msgstr "ENDEREZO [TAMAÑO]" - -#: grub-core/commands/minicmd.c:204 -msgid "Show memory contents." -msgstr "Amosar contido da memoria." - -#: grub-core/commands/minicmd.c:207 grub-core/kern/corecmd.c:188 -#: util/grub-install.c:275 -msgid "MODULE" -msgstr "MÓDULO" - -#: grub-core/commands/minicmd.c:207 -msgid "Remove a module." -msgstr "Retirar un módulo." - -#: grub-core/commands/minicmd.c:210 -msgid "Show loaded modules." -msgstr "Amosar os módulos cargados." - -#: grub-core/commands/minicmd.c:213 -msgid "Exit from GRUB." -msgstr "Saír do GRUB." - -#: grub-core/commands/mips/loongson/lsspd.c:42 -msgid "No CS5536 found" -msgstr "No foi posíbel atopar CS5536" - -#: grub-core/commands/mips/loongson/lsspd.c:45 -#, c-format -msgid "CS5536 at %d:%d.%d\n" -msgstr "CS5536 en %d:%d.%d\n" - -#. TRANSLATORS: System management bus is often used to access components like -#. RAM (info only, not data) or batteries. I/O space is where in memory -#. its ports are. -#: grub-core/commands/mips/loongson/lsspd.c:55 -#, c-format -msgid "System management bus controller I/O space is at 0x%x\n" -msgstr "" -"O espazo do sistema de xestión do controlador de bus de E/S está en 0x%x\n" - -#. TRANSLATORS: it's shown in a report in a way -#. like number 1: ... number 2: ... -#. -#: grub-core/commands/mips/loongson/lsspd.c:66 -#, c-format -msgid "RAM slot number %d\n" -msgstr "Rañura da RAM número %d\n" - -#: grub-core/commands/mips/loongson/lsspd.c:73 -#, c-format -msgid "Written SPD bytes: %d B.\n" -msgstr "Bytes SPD escritos: %d B.\n" - -#: grub-core/commands/mips/loongson/lsspd.c:74 -#, c-format -msgid "Total flash size: %d B.\n" -msgstr "Tamaño total da flash: %d B.\n" - -#: grub-core/commands/mips/loongson/lsspd.c:79 -msgid "Memory type: DDR2." -msgstr "Tipo de memoria: DDR2." - -#: grub-core/commands/mips/loongson/lsspd.c:83 -#, c-format -msgid "Part no: %s.\n" -msgstr "Parte núm: %s.\n" - -#: grub-core/commands/mips/loongson/lsspd.c:86 -msgid "Memory type: Unknown." -msgstr "Tipo de memoria: Descoñecida." - -#: grub-core/commands/mips/loongson/lsspd.c:97 -msgid "Print Memory information." -msgstr "Imprime información da memoria." - -#: grub-core/commands/nativedisk.c:118 grub-core/commands/probe.c:118 -#: grub-core/commands/probe.c:124 util/grub-probe.c:450 -#, c-format -msgid "%s does not support UUIDs" -msgstr "%s non é compatíbel con UUID" - -#: grub-core/commands/nativedisk.c:325 -msgid "[MODULE1 MODULE2 ...]" -msgstr "[MÓDULO1,MÓDULO2...]" - -#: grub-core/commands/nativedisk.c:326 -msgid "" -"Switch to native disk drivers. If no modules are specified default set (pata," -"ahci,usbms,ohci,uhci,ehci) is used" -msgstr "" -"Trocar para utilizar controladores de disco nativos. De non especificar " -"módulos, utilizarase o conxunto predeterminado (pata, ahci, usbms, ohci, " -"uhci, ehci)" - -#: grub-core/commands/parttool.c:40 -msgid "" -"Perform COMMANDS on partition.\n" -"Use `parttool PARTITION help' for the list of available commands." -msgstr "" -"Leva a efecto as ORDES na partición.\n" -"Utilice a «axuda da ferramenta partool para PARTICIÓN» para obter a lista " -"das ordes dispoñíbeis." - -#: grub-core/commands/parttool.c:123 -msgid "=VAL" -msgstr "=VAL" - -#: grub-core/commands/parttool.c:136 -#, fuzzy, c-format -msgid "Sorry, no parttool is available for %s\n" -msgstr "" -"Desculpe pero non hai ningunha ferramenta parttool dispoñíbel para %s\n" - -#: grub-core/commands/parttool.c:288 grub-core/lib/arg.c:285 -#: grub-core/lib/arg.c:351 -#, c-format -msgid "unknown argument `%s'" -msgstr "o argumento «%s» é descoñecido" - -#: grub-core/commands/parttool.c:344 -msgid "PARTITION COMMANDS" -msgstr "ORDES DE PARTICIÓN" - -#: grub-core/commands/password.c:85 -msgid "USER PASSWORD" -msgstr "CONTRASINAL DE USUARIO" - -#: grub-core/commands/password.c:86 -msgid "Set user password (plaintext). Unrecommended and insecure." -msgstr "" -"Estabelecer o contrasinal de usuario (texto simple). Non recomendado e " -"inseguro." - -#. TRANSLATORS: it means that the string which -#. was supposed to be a password hash doesn't -#. have a correct format, not to password -#. mismatch. -#: grub-core/commands/password_pbkdf2.c:98 -#: grub-core/commands/password_pbkdf2.c:115 -#: grub-core/commands/password_pbkdf2.c:123 -#: grub-core/commands/password_pbkdf2.c:150 -#: grub-core/commands/password_pbkdf2.c:179 -msgid "invalid PBKDF2 password" -msgstr "contrasinal PBKDF2 inpropiado" - -#: grub-core/commands/password_pbkdf2.c:202 -msgid "USER PBKDF2_PASSWORD" -msgstr "USUARIO CONTRASINAL_PBKDF2" - -#: grub-core/commands/password_pbkdf2.c:203 -msgid "Set user password (PBKDF2). " -msgstr "Estabelecer o contrasinal de usuario (PBKDF2). " - -#: grub-core/commands/pcidump.c:39 grub-core/commands/setpci.c:69 -msgid "Select device by vendor and device IDs." -msgstr "Selecciona o dispositivo por fabricante e por ID." - -#: grub-core/commands/pcidump.c:40 grub-core/commands/setpci.c:70 -msgid "[vendor]:[device]" -msgstr "[fabricante]:[dispositivo]" - -#: grub-core/commands/pcidump.c:41 grub-core/commands/setpci.c:71 -msgid "Select device by its position on the bus." -msgstr "Selecciona o dispositivo pola súa posición no bus." - -#: grub-core/commands/pcidump.c:42 grub-core/commands/setpci.c:72 -msgid "[bus]:[slot][.func]" -msgstr "[bus]:[rañuña][.func]" - -#: grub-core/commands/pcidump.c:109 grub-core/commands/pcidump.c:138 -#: grub-core/commands/setpci.c:183 grub-core/commands/setpci.c:214 -#: grub-core/fs/zfs/zfs.c:3794 grub-core/kern/emu/hostdisk.c:458 -#: grub-core/kern/emu/hostdisk.c:473 grub-core/kern/file.c:44 -#, c-format -msgid "missing `%c' symbol" -msgstr "falta o símbolo «%c»" - -#: grub-core/commands/pcidump.c:168 -msgid "[-s POSITION] [-d DEVICE]" -msgstr "[-s POSICIÓN] [-d DISPOSITIVO]" - -#: grub-core/commands/pcidump.c:169 -#, fuzzy -msgid "Show raw dump of the PCI configuration space." -msgstr "Envorca o espazo de configuración da PCI." - -#: grub-core/commands/pgp.c:45 -msgid "Skip signature-checking of the public key file." -msgstr "" - -#. TRANSLATORS: it's about GNUPG signatures. -#: grub-core/commands/pgp.c:71 grub-core/commands/pgp.c:81 -#: grub-core/commands/pgp.c:86 grub-core/commands/pgp.c:96 -#: grub-core/commands/pgp.c:103 grub-core/commands/pgp.c:107 -#: grub-core/commands/pgp.c:114 grub-core/commands/pgp.c:119 -#: grub-core/commands/pgp.c:124 grub-core/commands/pgp.c:128 -#: grub-core/commands/pgp.c:268 grub-core/commands/pgp.c:276 -#: grub-core/commands/pgp.c:281 grub-core/commands/pgp.c:289 -#: grub-core/commands/pgp.c:320 grub-core/commands/pgp.c:327 -#: grub-core/commands/pgp.c:332 grub-core/commands/pgp.c:342 -#: grub-core/commands/pgp.c:468 grub-core/commands/pgp.c:471 -#: grub-core/commands/pgp.c:474 grub-core/commands/pgp.c:477 -#: grub-core/commands/pgp.c:484 grub-core/commands/pgp.c:490 -#: grub-core/commands/pgp.c:665 -msgid "bad signature" -msgstr "mala sinatura" - -#. TRANSLATORS: %08x is 32-bit key id. -#: grub-core/commands/pgp.c:636 grub-core/commands/pgp.c:812 -#, c-format -msgid "public key %08x not found" -msgstr "non se atopou a chave pública %08x" - -#: grub-core/commands/pgp.c:651 grub-core/disk/diskfilter.c:772 -#: grub-core/disk/diskfilter.c:782 grub-core/fs/ntfs.c:404 -#: grub-core/fs/zfs/zfs.c:1933 grub-core/normal/menu.c:428 -#, c-format -msgid "module `%s' isn't loaded" -msgstr "o módulo «%s» non está cargado" - -#: grub-core/commands/pgp.c:994 -#, fuzzy -msgid "[-s|--skip-sig] FILE SIGNATURE_FILE [PUBKEY_FILE]" -msgstr "FICHEIRO FICHEIRODESINATURA [FICHEIRODECHAVEPÚBLICA]" - -#: grub-core/commands/pgp.c:995 -msgid "Verify detached signature." -msgstr "Comprobar a sinatura extraída." - -#: grub-core/commands/pgp.c:998 -msgid "[-s|--skip-sig] PUBKEY_FILE" -msgstr "" - -#: grub-core/commands/pgp.c:999 -#, fuzzy -msgid "Add PUBKEY_FILE to trusted keys." -msgstr "Engadir a chave PKFILE ás chaves de confianza." - -#: grub-core/commands/pgp.c:1003 -#, fuzzy -msgid "Show the list of trusted keys." -msgstr "Lista as chaves de confianza." - -#: grub-core/commands/pgp.c:1005 -msgid "PUBKEY_ID" -msgstr "IDDECHAVEPÚBLICA" - -#: grub-core/commands/pgp.c:1006 -#, fuzzy -msgid "Remove PUBKEY_ID from trusted keys." -msgstr "Retirar o IDDECHAVE das chaves de confianza." - -#: grub-core/commands/probe.c:40 grub-core/commands/tr.c:32 -msgid "Set a variable to return value." -msgstr "Estabelecer unha variábel para devolver o valor." - -#. TRANSLATORS: It's a driver that is currently in use to access -#. the diven disk. -#: grub-core/commands/probe.c:43 -msgid "Determine driver." -msgstr "Determinar o controlador." - -#: grub-core/commands/probe.c:44 -msgid "Determine partition map type." -msgstr "Determinar o tipo de mapa de particións." - -#: grub-core/commands/probe.c:45 -msgid "Determine filesystem type." -msgstr "Determinar o tipo de sistema de ficheiros." - -#: grub-core/commands/probe.c:46 -msgid "Determine filesystem UUID." -msgstr "Determinar o UUID do sistema de ficheiros." - -#: grub-core/commands/probe.c:47 -msgid "Determine filesystem label." -msgstr "Determinar a etiqueta do sistema de ficheiros." - -#: grub-core/commands/probe.c:139 grub-core/commands/probe.c:146 -#: util/grub-probe.c:462 -#, c-format -msgid "filesystem `%s' does not support labels" -msgstr "o sistema de ficheiros «%s» non admite etiquetas" - -#: grub-core/commands/probe.c:165 grub-core/fs/zfs/zfsinfo.c:430 -#: grub-core/loader/i386/bsd.c:169 util/grub-setup.c:223 -msgid "DEVICE" -msgstr "DISPOSITIVO" - -#: grub-core/commands/probe.c:166 -msgid "Retrieve device info." -msgstr "Recuperar a información do dispositivo." - -#: grub-core/commands/read.c:85 -msgid "[ENVVAR]" -msgstr "[VARIABELENTORNO]" - -#: grub-core/commands/read.c:86 -msgid "Set variable with user input." -msgstr "Estabelecer a variábel co usuario de entrada." - -#: grub-core/commands/reboot.c:40 -msgid "Reboot the computer." -msgstr "Reiniciar o computador." - -#. TRANSLATORS: in regexp you can mark some -#. groups with parentheses. These groups are -#. then numbered and you can save some of -#. them in variables. In other programs -#. those components aree often referenced with -#. back slash, e.g. \1. Compare -#. sed -e 's,\([a-z][a-z]*\),lowercase=\1,g' -#. The whole matching component is saved in VARNAME, not its number. -#. -#: grub-core/commands/regexp.c:44 -msgid "Store matched component NUMBER in VARNAME." -msgstr "Gardar o compoñente de NÚMERO EN NOMEVARIBEL." - -#: grub-core/commands/regexp.c:45 -msgid "[NUMBER:]VARNAME" -msgstr "[NÚMERO:]NOMEVARIABEL" - -#. TRANSLATORS: This are two arguments. So it's -#. two separate units to translate and pay -#. attention not to reverse them. -#: grub-core/commands/regexp.c:157 -msgid "REGEXP STRING" -msgstr "CADEA REGEXP" - -#: grub-core/commands/regexp.c:158 -msgid "Test if REGEXP matches STRING." -msgstr "Probar se REGEXP coincide con CADEA." - -#: grub-core/commands/search.c:324 -msgid "NAME [VARIABLE] [HINTS]" -msgstr "NOME [VARIABEL] [SUXESTIONS]" - -#: grub-core/commands/search_file.c:4 -msgid "" -"Search devices by file. If VARIABLE is specified, the first device found is " -"set to a variable." -msgstr "" -"Buscar dispositivos por ficheiro. Se se especificou VARIÃBEL, o primeiro " -"dispositivo atopado gárdase nunha variábel." - -#: grub-core/commands/search_label.c:4 -msgid "" -"Search devices by label. If VARIABLE is specified, the first device found is " -"set to a variable." -msgstr "" -"Buscar dispositivos por etiqueta. Se se especificou VARIÃBEL, o primeiro " -"dispositivo atopado gárdase nunha variábel." - -#: grub-core/commands/search_uuid.c:4 -msgid "" -"Search devices by UUID. If VARIABLE is specified, the first device found is " -"set to a variable." -msgstr "" -"Buscar dispositivos por UUID. Se se especificou VARIÃBEL, o primeiro " -"dispositivo atopado gárdase nunha variábel." - -#: grub-core/commands/search_wrap.c:34 -msgid "Search devices by a file." -msgstr "Buscar dispositivos por un ficheiro." - -#: grub-core/commands/search_wrap.c:35 -msgid "Search devices by a filesystem label." -msgstr "Buscar dispositivos por etiqueta de sistema de ficheiros." - -#: grub-core/commands/search_wrap.c:37 -msgid "Search devices by a filesystem UUID." -msgstr "Buscar dispositivos por UUID de sistema de ficheiros." - -#: grub-core/commands/search_wrap.c:40 -msgid "Set a variable to the first device found." -msgstr "Estabeleza unha variábel para o primeiro dispositivo atopado." - -#: grub-core/commands/search_wrap.c:42 -msgid "Do not probe any floppy drive." -msgstr "Non probar ningún dispositivo de disquete." - -#: grub-core/commands/search_wrap.c:44 -msgid "" -"First try the device HINT. If HINT ends in comma, also try subpartitions" -msgstr "" -"Primeiro, tente o HINT do dispositivo. Se HINT termina en coma, tente tamén " -"subparticións" - -#: grub-core/commands/search_wrap.c:45 grub-core/commands/search_wrap.c:49 -#: grub-core/commands/search_wrap.c:53 grub-core/commands/search_wrap.c:57 -#: grub-core/commands/search_wrap.c:61 grub-core/commands/search_wrap.c:65 -msgid "HINT" -msgstr "SUXESTIÓN" - -#: grub-core/commands/search_wrap.c:47 -msgid "" -"First try the device HINT if currently running on IEEE1275. If HINT ends in " -"comma, also try subpartitions" -msgstr "" -"Proba primeiro o dispositivo SUXESTIÓN se se estiver a executar en IEEE1275. " -"Se SUXESTIÓN remata en coma, probe tamén as subparticións" - -#: grub-core/commands/search_wrap.c:51 -msgid "" -"First try the device HINT if currently running on BIOS. If HINT ends in " -"comma, also try subpartitions" -msgstr "" -"Proba primeiro o dispositivo SUXESTIÓN se se estiver a executar no BIOS. Se " -"SUXESTIÓN remata en coma, probe tamén as subparticións" - -#: grub-core/commands/search_wrap.c:55 -msgid "" -"First try the device HINT if direct hardware access is supported. If HINT " -"ends in comma, also try subpartitions" -msgstr "" -"Proba primeiro o dispositivo SUXESTIÓN se admitir o acceso directo ao " -"hardware. Se SUXESTIÓN remata en coma, probe tamén as subparticións" - -#: grub-core/commands/search_wrap.c:59 -msgid "" -"First try the device HINT if currently running on EFI. If HINT ends in " -"comma, also try subpartitions" -msgstr "" -"Proba primeiro o dispositivo SUXESTIÓN se se estiver a executar en EFI. Se " -"SUXESTIÓN remata en coma, probe tamén as subparticións" - -#: grub-core/commands/search_wrap.c:63 -msgid "" -"First try the device HINT if currently running on ARC. If HINT ends in " -"comma, also try subpartitions" -msgstr "" -"Proba primeiro o dispositivo SUXESTIÓN se se estiver a executar en ARC. Se " -"SUXESTIÓN remata en coma, probe tamén as subparticións" - -#: grub-core/commands/search_wrap.c:207 -msgid "[-f|-l|-u|-s|-n] [--hint HINT [--hint HINT] ...] NAME" -msgstr "[-f|-l|-u|-s|-n] [--hint SUXESTIÓN [--hint SUXESTIÓN] ...] NOME" - -#: grub-core/commands/search_wrap.c:209 -msgid "" -"Search devices by file, filesystem label or filesystem UUID. If --set is " -"specified, the first device found is set to a variable. If no variable name " -"is specified, `root' is used." -msgstr "" -"Buscar dispositivos por ficheiro, etiqueta de sistema de ficheiros ou UUID " -"de sistema de ficheiros. Se --set estiver especificado, o primeiro " -"dispositivo encontrado estabelécese como variábel. Se o nome da variábel non " -"se especifica, úsase «root»." - -#: grub-core/commands/setpci.c:132 -#, c-format -msgid "Register %x of %x:%02x.%x is %x\n" -msgstr "Rexistro %x de %x:%02x.%x é %x\n" - -#: grub-core/commands/setpci.c:333 -msgid "[-s POSITION] [-d DEVICE] [-v VAR] REGISTER[=VALUE[:MASK]]" -msgstr "[-s POSICIÓN] [-d DISPOSITIVO] [-v VAR] [REXISTRO][=VALOR[:MÃSCARA]]" - -#: grub-core/commands/setpci.c:335 -msgid "Manipulate PCI devices." -msgstr "Manipular dispositivos PCI." - -#: grub-core/commands/sleep.c:32 -msgid "Verbose countdown." -msgstr "Conta atrás prolixa." - -#: grub-core/commands/sleep.c:33 -msgid "Allow to interrupt with ESC." -msgstr "Permitir a interrupción con ESC." - -#: grub-core/commands/sleep.c:109 -msgid "NUMBER_OF_SECONDS" -msgstr "NÚMERO_DE_SEGUNDOS" - -#: grub-core/commands/sleep.c:110 -msgid "Wait for a specified number of seconds." -msgstr "Agardar un número específico de segundos." - -#: grub-core/commands/syslinuxcfg.c:50 util/grub-syslinux2cfg.c:66 -msgid "root directory of the syslinux disk [default=/]." -msgstr "" - -#: grub-core/commands/syslinuxcfg.c:53 util/grub-syslinux2cfg.c:72 -msgid "" -"current directory of syslinux [default is parent directory of input file]." -msgstr "" - -#: grub-core/commands/syslinuxcfg.c:55 util/grub-syslinux2cfg.c:75 -msgid "assume input is an isolinux configuration file." -msgstr "" - -#: grub-core/commands/syslinuxcfg.c:56 util/grub-syslinux2cfg.c:76 -msgid "assume input is a pxelinux configuration file." -msgstr "" - -#: grub-core/commands/syslinuxcfg.c:57 util/grub-syslinux2cfg.c:77 -#, fuzzy -msgid "assume input is a syslinux configuration file." -msgstr "Suponse que a entrada é unha frase de paso." - -#. TRANSLATORS: "syslinux config" means -#. "config as used by syslinux". -#: grub-core/commands/syslinuxcfg.c:189 -#, fuzzy -msgid "Execute syslinux config in same context" -msgstr "Procesa a configuración legada no mesmo contexto" - -#: grub-core/commands/syslinuxcfg.c:195 -#, fuzzy -msgid "Execute syslinux config in new context" -msgstr "Procesa a configuración legada en novo contexto" - -#: grub-core/commands/syslinuxcfg.c:201 -#, fuzzy -msgid "Execute syslinux config in same context taking only menu entries" -msgstr "" -"A análise da configuración legada no mesmo contexto collendo só as entradas " -"do menú" - -#: grub-core/commands/syslinuxcfg.c:207 -#, fuzzy -msgid "Execute syslinux config in new context taking only menu entries" -msgstr "" -"A análise da configuración legada en contexto novo collendo só as entradas " -"do menú" - -#: grub-core/commands/terminal.c:90 -msgid "no terminal specified" -msgstr "non se especificou ningún terminal" - -#: grub-core/commands/terminal.c:112 grub-core/commands/terminal.c:139 -#, c-format -msgid "terminal `%s' isn't found" -msgstr "non se atopou o terminal «%s»" - -#: grub-core/commands/terminal.c:244 -msgid "Active input terminals:" -msgstr "Terminais de entrada activos:" - -#: grub-core/commands/terminal.c:245 -msgid "Available input terminals:" -msgstr "Terminais de entrada dispoñíbeis:" - -#: grub-core/commands/terminal.c:261 -msgid "Active output terminals:" -msgstr "Terminais de saída activos:" - -#: grub-core/commands/terminal.c:262 -msgid "Available output terminals:" -msgstr "Terminais de saída dispoñíbeis:" - -#: grub-core/commands/terminal.c:271 grub-core/commands/terminal.c:276 -msgid "[--append|--remove] [TERMINAL1] [TERMINAL2] ..." -msgstr "[--append|--remove] [TERMINAL1] [TERMINAL2] ..." - -#: grub-core/commands/terminal.c:273 -msgid "List or select an input terminal." -msgstr "Liste ou seleccione un terminal de entrada." - -#: grub-core/commands/terminal.c:278 -msgid "List or select an output terminal." -msgstr "Liste ou seleccione un terminal de saída." - -#: grub-core/commands/test.c:444 -msgid "EXPRESSION ]" -msgstr "EXPRESIÓN ]" - -#: grub-core/commands/test.c:444 grub-core/commands/test.c:447 -msgid "Evaluate an expression." -msgstr "Avaliar unha expresión." - -#: grub-core/commands/test.c:447 -msgid "EXPRESSION" -msgstr "EXPRESIÓN" - -#: grub-core/commands/testload.c:164 -msgid "Load the same file in multiple ways." -msgstr "Carga o mesmo ficheiro de múltiplas maneiras." - -#: grub-core/commands/testspeed.c:35 -msgid "Specify size for each read operation" -msgstr "Especifica o tamaño de cada operación de lectura" - -#: grub-core/commands/testspeed.c:58 -msgid "invalid block size" -msgstr "tamaño de bloque incorrecto" - -#: grub-core/commands/testspeed.c:80 -#, c-format -msgid "File size: %s\n" -msgstr "Tamaño do ficheiro: %s\n" - -#: grub-core/commands/testspeed.c:83 -#, c-format -msgid "Elapsed time: %d.%03d s \n" -msgstr "Tempo transcorrido: %d.%03d s \n" - -#: grub-core/commands/testspeed.c:92 -#, c-format -msgid "Speed: %s \n" -msgstr "Velocidade: %s \n" - -#: grub-core/commands/testspeed.c:107 -msgid "[-s SIZE] FILENAME" -msgstr "[-s TAMAÑO] NOMEDOFICHEIRO" - -#: grub-core/commands/testspeed.c:108 -msgid "Test file read speed." -msgstr "Velocidade de lectura do ficheiro de proba." - -#: grub-core/commands/time.c:38 grub-core/script/execute.c:974 -msgid "no command is specified" -msgstr "sen orde especificada" - -#: grub-core/commands/time.c:50 -#, c-format -msgid "Elapsed time: %d.%03d seconds \n" -msgstr "Tempo transcorrido: %d.%03d segundos \n" - -#: grub-core/commands/time.c:61 -msgid "COMMAND [ARGS]" -msgstr "ORDE [ARGUMENTOS]" - -#: grub-core/commands/time.c:62 -msgid "Measure time used by COMMAND" -msgstr "Medida de tempo utilizado por ORDE" - -#: grub-core/commands/tr.c:33 -msgid "Translate to upper case." -msgstr "" - -#: grub-core/commands/tr.c:34 -msgid "Translate to lower case." -msgstr "" - -#: grub-core/commands/tr.c:119 -msgid "[OPTIONS] [SET1] [SET2] [STRING]" -msgstr "" - -#: grub-core/commands/tr.c:120 -msgid "Translate SET1 characters to SET2 in STRING." -msgstr "" - -#. TRANSLATORS: it's a command description. -#: grub-core/commands/true.c:50 -msgid "Do nothing, successfully." -msgstr "Non fai nada, resultado satisfactorio." - -#. TRANSLATORS: it's a command description. -#: grub-core/commands/true.c:54 -msgid "Do nothing, unsuccessfully." -msgstr "Non fai nada, resultado non satisfactorio." - -#: grub-core/commands/usbtest.c:221 -msgid "Test USB support." -msgstr "Comprobar se é compatíbel con USB." - -#: grub-core/commands/verifiers.c:120 -#, c-format -msgid "verification requested but nobody cares: %s" -msgstr "" - -#: grub-core/commands/verifiers.c:140 -#, fuzzy -msgid "big file signature isn't implemented yet" -msgstr "a relocación 0x%x aínda non está implementada" - -#: grub-core/commands/videoinfo.c:61 -msgid "Text-only " -msgstr "Só texto " - -#. TRANSLATORS: "Direct color" is a mode when the color components -#. are written dirrectly into memory. -#: grub-core/commands/videoinfo.c:66 -#, c-format -msgid "Direct color, mask: %d/%d/%d/%d pos: %d/%d/%d/%d" -msgstr "Cor directa, máscara: %d/%d/%d/%d pos: %d/%d/%d/%d" - -#. TRANSLATORS: In "paletted color" mode you write the index of the color -#. in the palette. Synonyms include "packed pixel". -#: grub-core/commands/videoinfo.c:78 -msgid "Paletted " -msgstr "En paleta " - -#: grub-core/commands/videoinfo.c:80 -msgid "YUV " -msgstr "YUV " - -#. TRANSLATORS: "Planar" is the video memory where you have to write -#. in several different banks "plans" to control the different color -#. components of the same pixel. -#: grub-core/commands/videoinfo.c:85 -msgid "Planar " -msgstr "Planar " - -#: grub-core/commands/videoinfo.c:87 -msgid "Hercules " -msgstr "Hércules " - -#: grub-core/commands/videoinfo.c:89 -msgid "CGA " -msgstr "CGA " - -#. TRANSLATORS: Non-chain 4 is a 256-color planar -#. (unchained) video memory mode. -#: grub-core/commands/videoinfo.c:93 -msgid "Non-chain 4 " -msgstr "Non-chain 4 (modo de vídeo de 256 cores) " - -#: grub-core/commands/videoinfo.c:95 -msgid "Monochrome " -msgstr "Monocromo " - -#: grub-core/commands/videoinfo.c:97 -msgid "Unknown video mode " -msgstr "Modo de vídeo descoñecido " - -#: grub-core/commands/videoinfo.c:111 -msgid " EDID checksum invalid" -msgstr " a suma de comprobación EDID non é correcta" - -#: grub-core/commands/videoinfo.c:116 -#, c-format -msgid " EDID version: %u.%u\n" -msgstr " Versión de EDID: %u.%u\n" - -#: grub-core/commands/videoinfo.c:120 -#, c-format -msgid " Preferred mode: %ux%u\n" -msgstr " Modo favorito: %ux%u\n" - -#: grub-core/commands/videoinfo.c:123 -msgid " No preferred mode available\n" -msgstr " Non hai dispoñíbel ningún modo favorito\n" - -#: grub-core/commands/videoinfo.c:146 grub-core/video/video.c:490 -#: grub-core/video/video.c:498 grub-core/video/video.c:509 -#: grub-core/video/video.c:520 grub-core/video/video.c:528 -#, c-format -msgid "invalid video mode specification `%s'" -msgstr "a especificación de vídeo «%s» é incorrecta" - -#: grub-core/commands/videoinfo.c:168 -msgid "List of supported video modes:" -msgstr "Lista de modos de vídeo compatíbeis:" - -#: grub-core/commands/videoinfo.c:169 -msgid "Legend: mask/position=red/green/blue/reserved" -msgstr "Lenda: máscara/posición=vermello/verde/azul/reservado" - -#: grub-core/commands/videoinfo.c:176 -#, c-format -msgid "Adapter `%s':\n" -msgstr "Adaptador «%s»:\n" - -#: grub-core/commands/videoinfo.c:180 -msgid " No info available" -msgstr " Non hai ningunha suxestión dispoñíbel" - -#: grub-core/commands/videoinfo.c:198 -msgid " Failed to initialize video adapter" -msgstr " Fallou a inicialización do adaptador de vídeo" - -#. TRANSLATORS: "x" has to be entered in, -#. like an identifier, so please don't -#. use better Unicode codepoints. -#: grub-core/commands/videoinfo.c:239 grub-core/commands/videoinfo.c:248 -msgid "[WxH[xD]]" -msgstr "[LARGOxALTO[xFONDO]]" - -#: grub-core/commands/videoinfo.c:240 grub-core/commands/videoinfo.c:249 -msgid "" -"List available video modes. If resolution is given show only modes matching " -"it." -msgstr "" -"Relacione os modos de vídeos dispoñíbeis. No caso de dar a resolución, " -"amosar só os modos que sexan coincidentes." - -#. TRANSLATORS: "x" has to be entered in, -#. like an identifier, so please don't -#. use better Unicode codepoints. -#: grub-core/commands/videotest.c:225 -msgid "[WxH]" -msgstr "[LARGOxALTO]" - -#. TRANSLATORS: Here, on the other hand, it's -#. nicer to use unicode cross instead of x. -#: grub-core/commands/videotest.c:228 -msgid "Test video subsystem in mode WxH." -msgstr "Probar o subsistema de vídeo en modo LARGOxALTO." - -#: grub-core/commands/videotest.c:231 -msgid "Test video subsystem." -msgstr "Comprobar o subsistema de vídeo." - -#: grub-core/commands/xen/lsxen.c:80 grub-core/commands/xen/lsxen.c:82 -msgid "[DIR]" -msgstr "" - -#: grub-core/commands/xen/lsxen.c:81 grub-core/commands/xen/lsxen.c:83 -msgid "List Xen storage." -msgstr "" - -#. TRANSLATORS: GRUBUUID stands for "filesystem -#. UUID as used in GRUB". -#: grub-core/commands/xnu_uuid.c:110 -msgid "[-l] GRUBUUID [VARNAME]" -msgstr "[-l] UUIDDOGRUB [NOMEDAVARIÃBEL]" - -#: grub-core/commands/xnu_uuid.c:111 -msgid "" -"Transform 64-bit UUID to format suitable for XNU. If -l is given keep it " -"lowercase as done by blkid." -msgstr "" -"Transformar o UUID de 64 bits a formato adecuado para XNU. No caso de dar -l " -"mantelo en minúsculas como o dá blkid." - -#: grub-core/disk/arc/arcdisk.c:248 grub-core/disk/efi/efidisk.c:603 -#: grub-core/disk/i386/pc/biosdisk.c:498 grub-core/disk/i386/pc/biosdisk.c:543 -#: grub-core/disk/ieee1275/nand.c:198 grub-core/disk/ieee1275/obdisk.c:527 -#: grub-core/disk/ieee1275/ofdisk.c:586 -#, c-format -msgid "failure reading sector 0x%llx from `%s'" -msgstr "fallo ao ler o sector 0x%llx de «%s»" - -#: grub-core/disk/arc/arcdisk.c:284 grub-core/disk/efi/efidisk.c:626 -#: grub-core/disk/i386/pc/biosdisk.c:548 grub-core/disk/ieee1275/ofdisk.c:606 -#, c-format -msgid "failure writing sector 0x%llx to `%s'" -msgstr "fallo ao escribir o sector 0x%llx de «%s»" - -#: grub-core/disk/cryptodisk.c:40 -msgid "Mount by UUID." -msgstr "Montar por UUID." - -#. TRANSLATORS: It's still restricted to cryptodisks only. -#: grub-core/disk/cryptodisk.c:42 -msgid "Mount all." -msgstr "Montar todos." - -#: grub-core/disk/cryptodisk.c:43 -msgid "Mount all volumes with `boot' flag set." -msgstr "Montar todos os volumes que teñan unha indicación «boot» estabelecida." - -#. TRANSLATORS: The first %s is the file being looked at, the second %s is -#. the error message. -#: grub-core/disk/cryptodisk.c:526 grub-core/kern/emu/hostdisk.c:152 -#: grub-core/kern/emu/hostdisk.c:262 grub-core/kern/emu/hostdisk.c:434 -#: grub-core/kern/emu/misc.c:168 grub-core/kern/emu/misc.c:174 -#: grub-core/kern/emu/misc.c:196 grub-core/osdep/bsd/getroot.c:92 -#: grub-core/osdep/bsd/getroot.c:168 grub-core/osdep/hurd/getroot.c:68 -#: grub-core/osdep/linux/blocklist.c:65 grub-core/osdep/linux/getroot.c:150 -#: grub-core/osdep/linux/hostdisk.c:194 grub-core/osdep/linux/hostdisk.c:421 -#: grub-core/osdep/linux/ofpath.c:417 grub-core/osdep/linux/ofpath.c:422 -#: grub-core/osdep/linux/ofpath.c:517 grub-core/osdep/linux/ofpath.c:530 -#: grub-core/osdep/sun/getroot.c:110 grub-core/osdep/windows/blocklist.c:98 -#: grub-core/tests/video_checksum.c:279 util/editenv.c:46 util/glue-efi.c:115 -#: util/glue-efi.c:120 util/glue-efi.c:130 util/grub-editenv.c:138 -#: util/grub-editenv.c:192 util/grub-file.c:83 util/grub-fstest.c:128 -#: util/grub-fstest.c:568 util/grub-install-common.c:92 -#: util/grub-install-common.c:94 util/grub-install-common.c:101 -#: util/grub-install-common.c:529 util/grub-menulst2cfg.c:53 -#: util/grub-menulst2cfg.c:68 util/grub-mkimage.c:292 util/grub-mklayout.c:504 -#: util/grub-mklayout.c:516 util/grub-mknetdir.c:133 util/grub-mknetdir.c:151 -#: util/grub-mkrescue.c:627 util/grub-mkrescue.c:631 util/grub-mkrescue.c:879 -#: util/grub-mkrescue.c:883 util/grub-mkstandalone.c:253 util/grub-mount.c:498 -#: util/grub-render-label.c:169 util/grub-script-check.c:175 -#: util/grub-syslinux2cfg.c:181 util/grub-syslinux2cfg.c:191 -#: util/grub-syslinux2cfg.c:212 util/grub-syslinux2cfg.c:228 util/misc.c:91 -#: util/render-label.c:76 util/render-label.c:163 util/render-label.c:174 -#: util/resolve.c:246 util/setup.c:783 -#, c-format -msgid "cannot open `%s': %s" -msgstr "non se pode abrir «%s»: %s" - -#: grub-core/disk/cryptodisk.c:583 grub-core/disk/cryptodisk.c:628 -#: grub-core/kern/emu/hostdisk.c:270 grub-core/kern/emu/hostfs.c:142 -#: grub-core/osdep/linux/hostdisk.c:456 util/grub-editenv.c:143 -#: util/grub-editenv.c:149 util/grub-fstest.c:320 util/misc.c:111 -#, c-format -msgid "cannot seek `%s': %s" -msgstr "non se pode procurar «%s»: %s" - -#: grub-core/disk/cryptodisk.c:1144 -msgid "SOURCE|-u UUID|-a|-b" -msgstr "ORIXE|-u UUID|-a|-b" - -#: grub-core/disk/cryptodisk.c:1145 -msgid "Mount a crypto device." -msgstr "Monta un dispositivo cifrado." - -#. TRANSLATORS: This message kicks in during the detection of -#. which modules needs to be included in core image. This happens -#. in the case of degraded RAID and means that autodetection may -#. fail to include some of modules. It's an installation time -#. message, not runtime message. -#: grub-core/disk/diskfilter.c:343 grub-core/disk/diskfilter.c:376 -#, c-format -msgid "" -"Couldn't find physical volume `%s'. Some modules may be missing from core " -"image." -msgstr "" -"Non foi posíbel atopar o volume físico «%s». Algúns módulos da imaxe do " -"núcleo deben faltar." - -#: grub-core/disk/diskfilter.c:480 -#, c-format -msgid "physical volume %s not found" -msgstr "non se atopou o volume físico %s" - -#: grub-core/disk/efi/efidisk.c:600 grub-core/disk/efi/efidisk.c:623 -#, fuzzy, c-format -msgid "no media in `%s'" -msgstr "esgotouse o tempo de lectura de «%s»" - -#: grub-core/disk/geli.c:75 -msgid "Couldn't load sha256" -msgstr "Non foi posíbel cargar sha256" - -#: grub-core/disk/geli.c:85 -msgid "Couldn't load sha512" -msgstr "Non foi posíbel cargar sha512" - -#: grub-core/disk/geli.c:216 grub-core/disk/geli.c:220 -msgid "couldn't read ELI metadata" -msgstr "non foi posíbel ler os metadatos ELI" - -#: grub-core/disk/geli.c:231 -msgid "wrong ELI magic or version" -msgstr "non é o ELI máxico ou a versión" - -#: grub-core/disk/geli.c:435 grub-core/disk/luks.c:329 -msgid "Attempting to decrypt master key..." -msgstr "Tentando descifrar a chave mestra..." - -#: grub-core/disk/geli.c:441 grub-core/disk/luks.c:347 -#, c-format -msgid "Enter passphrase for %s%s%s (%s): " -msgstr "Introducir frase de contrasinal de %s%s%s (%s): " - -#. TRANSLATORS: It's a cryptographic key slot: one element of an array -#. where each element is either empty or holds a key. -#: grub-core/disk/geli.c:530 grub-core/disk/luks.c:451 -#, c-format -msgid "Slot %d opened\n" -msgstr "Rañura %d aberta\n" - -#: grub-core/disk/i386/pc/biosdisk.c:470 grub-core/disk/i386/pc/biosdisk.c:524 -#: grub-core/disk/i386/pc/biosdisk.c:534 grub-core/kern/disk_common.c:47 -#, c-format -msgid "attempt to read or write outside of disk `%s'" -msgstr "tenta ler ou escribir fóra do disco «%s»" - -#: grub-core/disk/i386/pc/biosdisk.c:491 grub-core/disk/i386/pc/biosdisk.c:611 -#: grub-core/disk/scsi.c:726 -msgid "cannot write to CD-ROM" -msgstr "non se pode escribir no CDROM" - -#: grub-core/disk/i386/pc/biosdisk.c:662 -msgid "" -"Native disk drivers are in use. Refusing to use firmware disk interface." -msgstr "" -"Están a utilizarse os controladores nativos do disco. Desbótase utilizar a " -"interface do disco de firmware." - -#. TRANSLATORS: it's a partition for embedding, -#. not a partition embed into something. GRUB -#. install tools put core.img into a place -#. usable for bootloaders (called generically -#. "embedding zone") and this operation is -#. called "embedding". -#: grub-core/disk/ldm.c:1015 -#, fuzzy -msgid "your LDM Embedding Partition is too small; embedding won't be possible" -msgstr "" -"a súa partición de incorporación LDM é demasiado pequena; a incorporación " -"non será posíbel" - -#. TRANSLATORS: it's a partition for embedding, -#. not a partition embed into something. -#: grub-core/disk/ldm.c:1033 -msgid "this LDM has no Embedding Partition; embedding won't be possible" -msgstr "" -"este LDM non ten partición de incorporación; a incorporación non será posíbel" - -#. TRANSLATORS: The disk is simply removed from the list of available ones, -#. not wiped, avoid to scare user. -#: grub-core/disk/loopback.c:45 -msgid "Delete the specified loopback drive." -msgstr "Eliminar o controlador de bucle de retorno especificado." - -#: grub-core/disk/loopback.c:237 -msgid "[-d] DEVICENAME FILE." -msgstr "[-d] NOMEDISPOSITIVO FICHEIRO." - -#. TRANSLATORS: The file itself is not destroyed -#. or transformed into drive. -#: grub-core/disk/loopback.c:240 -msgid "Make a virtual drive from a file." -msgstr "Facer unha unidade virtual cun ficheiro." - -#: grub-core/efiemu/i386/loadcore32.c:111 -#: grub-core/efiemu/i386/loadcore64.c:125 grub-core/kern/arm/dl.c:256 -#: grub-core/kern/arm64/dl.c:187 grub-core/kern/i386/dl.c:75 -#: grub-core/kern/ia64/dl.c:140 grub-core/kern/mips/dl.c:258 -#: grub-core/kern/powerpc/dl.c:163 grub-core/kern/riscv/dl.c:334 -#: grub-core/kern/sparc64/dl.c:180 grub-core/kern/x86_64/dl.c:110 -#: util/grub-mkimagexx.c:756 util/grub-mkimagexx.c:881 -#: util/grub-mkimagexx.c:945 util/grub-mkimagexx.c:1026 -#: util/grub-mkimagexx.c:1120 util/grub-mkimagexx.c:1222 -#: util/grub-mkimagexx.c:1413 util/grub-mkimagexx.c:1628 -#: util/grub-mkimagexx.c:1665 util/grub-mkimagexx.c:1697 -#: util/grub-mkimagexx.c:1767 util/grub-mkimagexx.c:1797 -#, c-format -msgid "relocation 0x%x is not implemented yet" -msgstr "a relocación 0x%x aínda non está implementada" - -#: grub-core/efiemu/loadcore.c:200 grub-core/efiemu/loadcore.c:237 -#: grub-core/loader/i386/bsdXX.c:317 util/grub-mkimagexx.c:2360 -msgid "no symbol table" -msgstr "sen táboa de símbolo" - -#: grub-core/efiemu/loadcore.c:346 grub-core/kern/dl.c:609 -#: grub-core/loader/ia64/efi/linux.c:345 grub-core/loader/mips/linux.c:248 -#: grub-core/loader/multiboot_elfxx.c:76 -#: grub-core/loader/powerpc/ieee1275/linux.c:280 -#: grub-core/loader/sparc64/ieee1275/linux.c:320 -msgid "this ELF file is not of the right type" -msgstr "este ficheiro ELF non é do tipo apropiado" - -#: grub-core/efiemu/main.c:313 -msgid "Load and initialize EFI emulator." -msgstr "Cargar e inicializar o emulador EFI." - -#: grub-core/efiemu/main.c:317 -msgid "Finalize loading of EFI emulator." -msgstr "Finalizar a carga do emulador EFI." - -#: grub-core/efiemu/main.c:320 -msgid "Unload EFI emulator." -msgstr "Non se cargou o emulador EFI." - -#: grub-core/efiemu/symbols.c:92 grub-core/kern/dl.c:376 -#, c-format -msgid "symbol `%s' not found" -msgstr "non se atopou o símbolo «%s»" - -#: grub-core/font/font_cmd.c:52 -msgid "Loaded fonts:" -msgstr "Tipos de letra cargados:" - -#: grub-core/font/font_cmd.c:74 -msgid "FILE..." -msgstr "FICHEIRO..." - -#: grub-core/font/font_cmd.c:75 -msgid "Specify one or more font files to load." -msgstr "Especifique un ou máis ficheiros de tipos de letra para cargar." - -#: grub-core/font/font_cmd.c:78 -msgid "List the loaded fonts." -msgstr "Lista os tipos de letra cargados." - -#: grub-core/fs/archelp.c:216 grub-core/fs/archelp.c:278 -#: grub-core/fs/btrfs.c:1815 grub-core/fs/fshelp.c:227 grub-core/fs/jfs.c:736 -#: grub-core/fs/minix.c:369 grub-core/fs/ufs.c:454 -msgid "too deep nesting of symlinks" -msgstr "demasiada profundiade do aniñamento de ligazóns simbólicas" - -#: grub-core/fs/bfs.c:228 grub-core/fs/fshelp.c:368 grub-core/fs/minix.c:270 -#: grub-core/kern/file.c:156 -msgid "attempt to read past the end of file" -msgstr "intenta ler pasado o remate do ficheiro" - -#: grub-core/fs/btrfs.c:1698 grub-core/fs/btrfs.c:1957 -#: grub-core/fs/fshelp.c:189 grub-core/fs/fshelp.c:309 grub-core/fs/jfs.c:431 -#: grub-core/fs/minix.c:414 grub-core/fs/minix.c:562 -#: grub-core/fs/reiserfs.c:732 grub-core/fs/ufs.c:531 grub-core/fs/ufs.c:671 -#: grub-core/fs/zfs/zfs.c:2831 grub-core/fs/zfs/zfs.c:4247 -msgid "not a directory" -msgstr "non é un cartafol" - -#: grub-core/fs/btrfs.c:2063 grub-core/fs/fshelp.c:307 grub-core/fs/jfs.c:835 -#: grub-core/fs/zfs/zfs.c:3801 -msgid "not a regular file" -msgstr "non é un ficheiro regular" - -#: grub-core/fs/btrfs.c:2157 grub-core/fs/zfs/zfs.c:4333 -#: grub-core/partmap/msdos.c:400 -msgid "your core.img is unusually large. It won't fit in the embedding area" -msgstr "" -"o seu core.img é inusualmente longo. Non se vai axustar á área de " -"incorporación" - -#: grub-core/fs/fshelp.c:281 grub-core/fs/minix.c:630 grub-core/fs/ufs.c:661 -#: grub-core/fs/ufs.c:757 grub-core/kern/fs.c:168 grub-core/kern/fs.c:180 -#, c-format -msgid "invalid file name `%s'" -msgstr "o nome do ficheiro «%s» é incorrecto" - -#: grub-core/fs/zfs/zfs.c:453 -msgid "checksum verification failed" -msgstr "produciuse un fallo na verificación da suma de comprobación" - -#: grub-core/fs/zfs/zfs.c:1465 -msgid "couldn't find a necessary member device of multi-device filesystem" -msgstr "" -"non foi posíbel atopar un dispositivo membro necesario do sistema de " -"ficheiros multidispositivo" - -#: grub-core/fs/zfs/zfscrypt.c:292 -msgid "no decryption key available" -msgstr "non hai ningunha chave de descifrado dispoñíbel" - -#: grub-core/fs/zfs/zfscrypt.c:304 -msgid "MAC verification failed" -msgstr "Produciuse un fallo na comprobación do MAC" - -#: grub-core/fs/zfs/zfscrypt.c:413 -msgid "Assume input is raw." -msgstr "Suponse que a entrada está en bruto." - -#: grub-core/fs/zfs/zfscrypt.c:414 -msgid "Assume input is hex." -msgstr "Suponse que a entrada está en hexadecimal." - -#: grub-core/fs/zfs/zfscrypt.c:415 -msgid "Assume input is passphrase." -msgstr "Suponse que a entrada é unha frase de paso." - -#: grub-core/fs/zfs/zfscrypt.c:437 util/grub-fstest.c:553 util/grub-mount.c:483 -msgid "Enter ZFS password: " -msgstr "Escriba o contrasinal ZFS: " - -#: grub-core/fs/zfs/zfscrypt.c:476 -msgid "[-h|-p|-r] [FILE]" -msgstr "[-h|-p|-r] [FICHEIRO]" - -#: grub-core/fs/zfs/zfscrypt.c:477 -msgid "Import ZFS wrapping key stored in FILE." -msgstr "Importar a chave ZFS de embalaxe almacenada no FICHEIRO." - -#: grub-core/fs/zfs/zfsinfo.c:51 -msgid "Virtual device is removed" -msgstr "Retirouse o dispositivo virtual" - -#: grub-core/fs/zfs/zfsinfo.c:57 -msgid "Virtual device is faulted" -msgstr "Falta o dispositivo virtual" - -#: grub-core/fs/zfs/zfsinfo.c:63 -msgid "Virtual device is offline" -msgstr "O dispositivo virtual está desconectado" - -#. TRANSLATORS: degraded doesn't mean broken but that some of -#. component are missing but virtual device as whole is still usable. -#: grub-core/fs/zfs/zfsinfo.c:70 -msgid "Virtual device is degraded" -msgstr "O dispositivo virtual no está óptimo" - -#: grub-core/fs/zfs/zfsinfo.c:73 -msgid "Virtual device is online" -msgstr "O dispositivo virtual está conectado" - -#: grub-core/fs/zfs/zfsinfo.c:89 -msgid "Incorrect virtual device: no type available" -msgstr "Dispositivo virtual incorrecto: non hai un tipo dispoñíbel" - -#. TRANSLATORS: The virtual devices form a tree (in graph-theoretical -#. sense). The nodes like mirror or raidz have children: member devices. -#. The "real" devices which actually store data are called "leafs" -#. (again borrowed from graph theory) and can be either disks -#. (or partitions) or files. -#: grub-core/fs/zfs/zfsinfo.c:105 -msgid "Leaf virtual device (file or disk)" -msgstr "Dispositivo virtual como folla (sexa ficheiro ou disco)" - -#: grub-core/fs/zfs/zfsinfo.c:113 -msgid "Bootpath: unavailable\n" -msgstr "Ruta de arranque: non está dispoñíbel\n" - -#: grub-core/fs/zfs/zfsinfo.c:115 -#, c-format -msgid "Bootpath: %s\n" -msgstr "Ruta de arranque: %s\n" - -#: grub-core/fs/zfs/zfsinfo.c:120 -msgid "Path: unavailable" -msgstr "Camiño: non está dispoñíbel" - -#: grub-core/fs/zfs/zfsinfo.c:122 -#, c-format -msgid "Path: %s\n" -msgstr "Camiño : %s\n" - -#: grub-core/fs/zfs/zfsinfo.c:127 -msgid "Devid: unavailable" -msgstr "DevId: non está dispoñíbel" - -#: grub-core/fs/zfs/zfsinfo.c:129 -#, c-format -msgid "Devid: %s\n" -msgstr "Devid: %s\n" - -#: grub-core/fs/zfs/zfsinfo.c:148 -msgid "This VDEV is a mirror" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:153 -#, c-format -msgid "This VDEV is a RAIDZ%llu\n" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:158 -#, fuzzy -msgid "Incorrect VDEV" -msgstr "Réplica incorrecta" - -#: grub-core/fs/zfs/zfsinfo.c:161 -#, fuzzy, c-format -msgid "VDEV with %d children\n" -msgstr "Réplica con %d fillo\n" - -#. TRANSLATORS: it's the element carying the number %d, not -#. total element number. And the number itself is fine, -#. only the element isn't. -#. -#: grub-core/fs/zfs/zfsinfo.c:177 -#, fuzzy, c-format -msgid "VDEV element number %d isn't correct\n" -msgstr "O número %d do elemento da réplica non é correcto\n" - -#. TRANSLATORS: it's the element carying the number %d, not -#. total element number. This is used in enumeration -#. "Element number 1", "Element number 2", ... -#: grub-core/fs/zfs/zfsinfo.c:184 -#, fuzzy, c-format -msgid "VDEV element number %d:\n" -msgstr "Número %d do elemento da réplica:\n" - -#: grub-core/fs/zfs/zfsinfo.c:193 -#, c-format -msgid "Unknown virtual device type: %s\n" -msgstr "Tipo de dispositivo virtual descoñecido: %s\n" - -#. TRANSLATORS: Here we speak about ZFS pools it's semi-marketing, -#. semi-technical term by Sun/Oracle and should be translated in sync with -#. other ZFS-related software and documentation. -#: grub-core/fs/zfs/zfsinfo.c:254 -msgid "Pool state: active" -msgstr "Estado do grupo: activo" - -#: grub-core/fs/zfs/zfsinfo.c:255 -msgid "Pool state: exported" -msgstr "Estado do grupo: exportado" - -#: grub-core/fs/zfs/zfsinfo.c:256 -msgid "Pool state: destroyed" -msgstr "Estado do grupo: estragado" - -#: grub-core/fs/zfs/zfsinfo.c:257 -msgid "Pool state: reserved for hot spare" -msgstr "Estado do grupo: reservado para repoñer en quente" - -#: grub-core/fs/zfs/zfsinfo.c:258 -msgid "Pool state: level 2 ARC device" -msgstr "Estado do grupo: dispositivo ARC de nivel 2" - -#: grub-core/fs/zfs/zfsinfo.c:259 -msgid "Pool state: uninitialized" -msgstr "Estado do grupo: desinicializado" - -#: grub-core/fs/zfs/zfsinfo.c:260 -msgid "Pool state: unavailable" -msgstr "Estado do grupo: non dispoñíbel" - -#: grub-core/fs/zfs/zfsinfo.c:261 -msgid "Pool state: potentially active" -msgstr "Estado do grupo: potencialmente activo" - -#: grub-core/fs/zfs/zfsinfo.c:306 -msgid "Pool name: unavailable" -msgstr "Nome do grupo: non dispoñíbel" - -#: grub-core/fs/zfs/zfsinfo.c:308 -#, c-format -msgid "Pool name: %s\n" -msgstr "Nome do grupo: %s\n" - -#: grub-core/fs/zfs/zfsinfo.c:313 -msgid "Pool GUID: unavailable" -msgstr "GUID do grupo: non dispoñíbel" - -#: grub-core/fs/zfs/zfsinfo.c:315 -#, c-format -msgid "Pool GUID: %016llx\n" -msgstr "GUID do grupo: %016llx\n" - -#: grub-core/fs/zfs/zfsinfo.c:320 -msgid "Unable to retrieve pool state" -msgstr "Non foi posíbel obter o estado do grupo" - -#: grub-core/fs/zfs/zfsinfo.c:322 -msgid "Unrecognized pool state" -msgstr "O estado do grupo é irrecoñecíbel" - -#. TRANSLATORS: There are undetermined number of virtual devices -#. in a device tree, not just one. -#. -#: grub-core/fs/zfs/zfsinfo.c:332 -msgid "No virtual device tree available" -msgstr "Non hai ningunha árbore virtual de dispositivos dispoñíbel" - -#: grub-core/fs/zfs/zfsinfo.c:431 -msgid "Print ZFS info about DEVICE." -msgstr "Imprimir info de ZFS verbo do DISPOSITIVO." - -#: grub-core/fs/zfs/zfsinfo.c:433 -msgid "FILESYSTEM [VARIABLE]" -msgstr "SISTEMAFICHEIROS [VARIÃBEL]" - -#: grub-core/fs/zfs/zfsinfo.c:434 -msgid "Print ZFS-BOOTFSOBJ or store it into VARIABLE" -msgstr "Imprimir ZFS-BOOTFSOBJ ou almacenala en VARIÃBEL" - -#. TRANSLATORS: at this position GRUB waits for the user to do an action -#. in remote debugger, namely to tell it to establish connection. -#: grub-core/gdb/gdb.c:48 -msgid "Now connect the remote debugger, please." -msgstr "Agora conecte o depurador remoto, por favor." - -#. TRANSLATORS: GDB stub is a small part of -#. GDB functionality running on local host -#. which allows remote debugger to -#. connect to it. -#: grub-core/gdb/gdb.c:84 -msgid "Start GDB stub on given port" -msgstr "Arrancar o servizo GDB no porto dado" - -#. TRANSLATORS: this refers to triggering -#. a breakpoint so that the user will land -#. into GDB. -#: grub-core/gdb/gdb.c:89 -msgid "Break into GDB" -msgstr "Alto dentro do GDB" - -#: grub-core/gdb/gdb.c:91 -msgid "Stop GDB stub" -msgstr "Deter o servizo GDB" - -#: grub-core/gettext/gettext.c:85 -msgid "premature end of file" -msgstr "remate do ficheiro prematuro" - -#. TRANSLATORS: It refers to passing the string through gettext. -#. So it's "translate" in the same meaning as in what you're -#. doing now. -#. -#: grub-core/gettext/gettext.c:525 -msgid "Translates the string with the current settings." -msgstr "Traduza a cadea que contén a configuración actual." - -#: grub-core/gfxmenu/gui_label.c:186 grub-core/normal/menu_text.c:184 -msgid "" -"Press enter to boot the selected OS, `e' to edit the commands before booting " -"or `c' for a command-line. ESC to return previous menu." -msgstr "" -"Prema a tecla Intro para arrancar o sistema operativo seleccionado, «e» para " -"editar as ordes antes de arrancar ou «c» para obter unha liña de ordes. ESC " -"para volver ao menú anterior." - -#: grub-core/gfxmenu/gui_label.c:190 grub-core/normal/menu_text.c:192 -msgid "" -"Press enter to boot the selected OS, `e' to edit the commands before booting " -"or `c' for a command-line." -msgstr "" -"Prema a tecla Intro para arrincar o sistema operativo seleccionado, «e» para " -"editar as ordes antes de arrancar ou «c» para obter unha liña de ordes." - -#: grub-core/gfxmenu/gui_label.c:194 -msgid "enter: boot, `e': options, `c': cmd-line" -msgstr "intro: arranque, «e»: opcións, «c»: liña cmd" - -#: grub-core/gfxmenu/gui_progress_bar.c:339 grub-core/normal/menu_text.c:446 -#, c-format -msgid "The highlighted entry will be executed automatically in %ds." -msgstr "A entrada realzada executarase automaticamente en %ds." - -#. TRANSLATORS: 's' stands for seconds. -#. It's a standalone timeout notification. -#. Please use the short form in your language. -#: grub-core/gfxmenu/gui_progress_bar.c:344 -#, c-format -msgid "%ds remaining." -msgstr "%ds restantes." - -#. TRANSLATORS: 's' stands for seconds. -#. It's a standalone timeout notification. -#. Please use the shortest form available in you language. -#: grub-core/gfxmenu/gui_progress_bar.c:349 grub-core/normal/menu_text.c:444 -#: grub-core/normal/menu_text.c:462 -#, c-format -msgid "%ds" -msgstr "%ds" - -#: grub-core/gfxmenu/view.c:103 -msgid "GRUB Boot Menu" -msgstr "Menú de arranque GRUB" - -#: grub-core/hello/hello.c:36 -msgid "Hello World" -msgstr "Ola mundo" - -#: grub-core/hello/hello.c:45 -msgid "Say `Hello World'." -msgstr "Diga «Ola mundo»." - -#: grub-core/io/gzio.c:409 grub-core/kern/file.c:210 -msgid "attempt to seek outside of the file" -msgstr "tenta procurar fóra do ficheiro" - -#. TRANSLATORS: It's about given file having some strange format, not -#. complete lack of gzip support. -#: grub-core/io/gzio.c:1228 grub-core/io/gzio.c:1237 grub-core/io/gzio.c:1244 -msgid "unsupported gzip format" -msgstr "O formato gzip non é compatíbel" - -#: grub-core/io/lzopio.c:511 -msgid "lzop file corrupted" -msgstr "O ficheiro lzop está corrupto" - -#: grub-core/io/xzio.c:278 -msgid "xz file corrupted or unsupported block options" -msgstr "O ficheiro xz está corrupto ou ten opcións de bloque incompatíbeis" - -#: grub-core/kern/arm/dl.c:277 grub-core/kern/arm64/dl.c:44 -#: grub-core/kern/i386/dl.c:36 grub-core/kern/ia64/dl.c:41 -#: grub-core/kern/mips/dl.c:48 grub-core/kern/powerpc/dl.c:36 -#: grub-core/kern/riscv/dl.c:47 grub-core/kern/sparc64/dl.c:36 -#: grub-core/kern/x86_64/dl.c:36 grub-core/loader/i386/bsd.c:1445 -#: grub-core/loader/i386/bsdXX.c:49 grub-core/loader/ia64/efi/linux.c:341 -#: grub-core/loader/mips/linux.c:298 grub-core/loader/multiboot.c:232 -#: grub-core/loader/multiboot_elfxx.c:73 -#: grub-core/loader/powerpc/ieee1275/linux.c:294 -#: grub-core/loader/sparc64/ieee1275/linux.c:331 -msgid "invalid arch-dependent ELF magic" -msgstr "incorrecto ELF máxico dependente da arquitectura" - -#: grub-core/kern/corecmd.c:178 -msgid "[ENVVAR=VALUE]" -msgstr "[ENVVAR=VALOR]" - -#: grub-core/kern/corecmd.c:179 -msgid "Set an environment variable." -msgstr "Defina unha variábel de entorno." - -#: grub-core/kern/corecmd.c:183 -msgid "ENVVAR" -msgstr "ENVVAR" - -#: grub-core/kern/corecmd.c:184 -msgid "Remove an environment variable." -msgstr "Retirar unha variábel de entorno." - -#: grub-core/kern/corecmd.c:186 -msgid "[ARG]" -msgstr "[ARG]" - -#: grub-core/kern/corecmd.c:186 -msgid "List devices or files." -msgstr "Lista de dispositivos ou ficheiros." - -#: grub-core/kern/corecmd.c:188 -msgid "Insert a module." -msgstr "Insira un módulo." - -#: grub-core/kern/disk.c:236 grub-core/net/net.c:1390 -#, c-format -msgid "disk `%s' not found" -msgstr "Non se atopou o disco «%s»" - -#: grub-core/kern/disk_common.c:27 -msgid "attempt to read or write outside of partition" -msgstr "tenta ler ou escribir fóra da partición" - -#: grub-core/kern/dl.c:212 grub-core/kern/elf.c:61 grub-core/kern/elf.c:79 -#: grub-core/loader/i386/bsdXX.c:46 grub-core/loader/ia64/efi/linux.c:335 -#: grub-core/loader/multiboot_elfxx.c:69 -msgid "invalid arch-independent ELF magic" -msgstr "incorrecto ELF máxico independente da arquitectura" - -#. TRANSLATORS: it refers to the lack of free slots. -#: grub-core/kern/emu/hostdisk.c:208 grub-core/kern/emu/hostdisk.c:466 -msgid "device count exceeds limit" -msgstr "a conta do dispositivo excede o límite" - -#: grub-core/kern/emu/hostdisk.c:342 util/editenv.c:54 util/grub-editenv.c:197 -#: util/grub-fstest.c:191 util/grub-mkfont.c:796 util/misc.c:114 -#: util/misc.c:129 util/setup.c:788 -#, c-format -msgid "cannot write to `%s': %s" -msgstr "non é posíbel escribir en «%s»: %s" - -#. TRANSLATORS: Only one entry is ignored. However the suggestion -#. is to correct/delete the whole file. -#. device.map is a file indicating which -#. devices are available at boot time. Fedora populated it with -#. entries like (hd0,1) /dev/sda1 which would mean that every -#. partition is a separate disk for BIOS. Such entries were -#. inactive in GRUB due to its bug which is now gone. Without -#. this additional check these entries would be harmful now. -#. -#: grub-core/kern/emu/hostdisk.c:503 -#, c-format -msgid "" -"the device.map entry `%s' is invalid. Ignoring it. Please correct or delete " -"your device.map" -msgstr "" -"a entrada «%s» do device.map é incorrecta. Ignórase. Corrixa ou elimine o " -"seu device.map" - -#. TRANSLATORS: device.map is a filename. Not to be translated. -#. device.map specifies disk correspondance overrides. Previously -#. one could create any kind of device name with this. Due to -#. some problems we decided to limit it to just a handful -#. possibilities. -#: grub-core/kern/emu/hostdisk.c:555 -#, c-format -msgid "" -"the drive name `%s' in device.map is incorrect. Using %s instead. Please use " -"the form [hfc]d[0-9]* (E.g. `hd0' or `cd')" -msgstr "" -"o nome da unidade «%s» en device.map é incorrecto. Utilice %s no seu lugar. " -"Utilice a forma [hfc]d[0-9]* (i.e. «hd0» ou «cd»)" - -#: grub-core/kern/emu/hostfs.c:76 grub-core/kern/emu/hostfs.c:109 -#, c-format -msgid "can't open `%s': %s" -msgstr "non se puido abrir «%s»: %s" - -#: grub-core/kern/emu/main.c:99 util/grub-fstest.c:516 util/grub-mount.c:452 -msgid "DEVICE_NAME" -msgstr "NOME_DO_DISPOSITIVO" - -#: grub-core/kern/emu/main.c:99 grub-core/loader/i386/bsd.c:136 -#: grub-core/loader/i386/bsd.c:169 util/grub-fstest.c:516 util/grub-mount.c:452 -msgid "Set root device." -msgstr "Estabelecer o dispositivo raíz." - -#. TRANSLATORS: There are many devices in device map. -#: grub-core/kern/emu/main.c:102 util/grub-probe.c:733 util/grub-setup.c:85 -#, c-format -msgid "use FILE as the device map [default=%s]" -msgstr "utilice FICHEIRO como mapa de dispositivos [predeterminado=%s]" - -#. TRANSLATORS: There are many devices in device map. -#: grub-core/kern/emu/main.c:105 -#, fuzzy -msgid "use FILE as memdisk" -msgstr "utilizar FICHEIRO como grub-glue-efi" - -#: grub-core/kern/emu/main.c:107 util/grub-setup.c:83 -#, c-format -msgid "use GRUB files in the directory DIR [default=%s]" -msgstr "utilice os ficheiros GRUB no cartafol DIR [predeterminado=%s]" - -#: grub-core/kern/emu/main.c:108 include/grub/util/install.h:67 -#: util/grub-editenv.c:58 util/grub-fstest.c:525 util/grub-glue-efi.c:58 -#: util/grub-macbless.c:104 util/grub-mkfont.c:962 util/grub-mkimage.c:84 -#: util/grub-mklayout.c:56 util/grub-mount.c:458 util/grub-probe.c:735 -#: util/grub-render-label.c:74 util/grub-script-check.c:52 util/grub-setup.c:90 -#: util/grub-syslinux2cfg.c:78 -msgid "print verbose messages." -msgstr "imprimir mensaxes prolixas." - -#: grub-core/kern/emu/main.c:109 grub-core/lib/gnulib/argp-parse.c:85 -msgid "SECS" -msgstr "SEGS" - -#: grub-core/kern/emu/main.c:109 -msgid "wait until a debugger will attach" -msgstr "agardar ata que un depurador o enganche" - -#: grub-core/kern/emu/main.c:171 util/grub-macbless.c:143 -#: util/grub-mkrelpath.c:61 util/grub-probe.c:874 util/grub-script-check.c:75 -#: util/grub-setup.c:203 -#, c-format -msgid "Unknown extra argument `%s'." -msgstr "O argumento extra «%s» é descoñecido." - -#: grub-core/kern/emu/main.c:185 -msgid "GRUB emulator." -msgstr "emulador GRUB." - -#: grub-core/kern/emu/main.c:213 util/grub-editenv.c:262 -#: util/grub-glue-efi.c:110 util/grub-macbless.c:173 util/grub-mkfont.c:1177 -#: util/grub-mkimage.c:266 util/grub-mklayout.c:494 -#: util/grub-mkpasswd-pbkdf2.c:132 util/grub-mkrelpath.c:96 -#: util/grub-probe.c:863 util/grub-render-label.c:152 -#: util/grub-script-check.c:160 util/grub-setup.c:262 -#: util/grub-syslinux2cfg.c:163 -msgid "Error in parsing command line arguments\n" -msgstr "Produciuse un erro ao procesar os argumentos da liña de ordes\n" - -#. TRANSLATORS: In this case GRUB tells user what he has to do. -#: grub-core/kern/emu/main.c:248 -#, c-format -msgid "Run `gdb %s %d', and set ARGS.HOLD to zero.\n" -msgstr "Execute «gdb %s %d» e estabeleza os ARGS.HOLD a cero.\n" - -#: grub-core/kern/emu/misc.c:48 -#, c-format -msgid "%s: warning:" -msgstr "%s: aviso:" - -#: grub-core/kern/emu/misc.c:64 -#, c-format -msgid "%s: info:" -msgstr "%s: info:" - -#: grub-core/kern/emu/misc.c:79 util/grub-fstest.c:567 util/grub-fstest.c:576 -#: util/grub-mount.c:497 util/grub-mount.c:505 -#, c-format -msgid "%s: error:" -msgstr "%s: erro:" - -#: grub-core/kern/emu/misc.c:176 -#, fuzzy, c-format -msgid "file `%s' is too big" -msgstr "a imaxe do firmware é demasiado grande" - -#: grub-core/kern/fs.c:120 -msgid "unknown filesystem" -msgstr "sistema de ficheiros descoñecido" - -#: grub-core/kern/mips/arc/init.c:273 grub-core/kern/mips/loongson/init.c:301 -msgid "Shutdown failed" -msgstr "Fallou o apagado" - -#: grub-core/kern/mips/arc/init.c:285 -msgid "Exit failed" -msgstr "Fallou a saída" - -#: grub-core/kern/misc.c:351 grub-core/kern/misc.c:408 include/grub/misc.h:269 -#: include/grub/misc.h:278 -msgid "overflow is detected" -msgstr "detectouse desbordamento" - -#: grub-core/kern/partition.c:51 grub-core/partmap/bsdlabel.c:108 -#, c-format -msgid "Discarding improperly nested partition (%s,%s,%s%d)" -msgstr "Descartando a partición aniñada impropiamente (%s, %s, %s%d)" - -#: grub-core/kern/rescue_parser.c:73 util/grub-editenv.c:292 -#, c-format -msgid "Unknown command `%s'.\n" -msgstr "Orde «%s» descoñecida.\n" - -#: grub-core/lib/arg.c:31 -msgid "Display this help and exit." -msgstr "Presentar esta axuda e saír." - -#: grub-core/lib/arg.c:33 -msgid "Display the usage of this command and exit." -msgstr "Presentar a utilización desta orde e saír." - -#: grub-core/lib/arg.c:362 -#, c-format -msgid "missing mandatory option for `%s'" -msgstr "falta a opción obrigatoria «%s»" - -#: grub-core/lib/arg.c:384 -#, c-format -msgid "the argument `%s' requires an integer" -msgstr "o argumento «%s» require un enteiro" - -#: grub-core/lib/arg.c:407 -#, c-format -msgid "" -"a value was assigned to the argument `%s' while it doesn't require an " -"argument" -msgstr "" -"asignouse un valor ao argumento «%s» malia que non require un argumento" - -#: grub-core/lib/backtrace.c:64 -msgid "Print backtrace." -msgstr "Imprimir traza marcha atrás." - -#: grub-core/lib/gnulib/argp-help.c:149 -#, c-format -msgid "ARGP_HELP_FMT: %s value is less than or equal to %s" -msgstr "ARGP_HELP_FMT: %s o valor é menor que ou igual a %s" - -#: grub-core/lib/gnulib/argp-help.c:225 -#, c-format -msgid "%.*s: ARGP_HELP_FMT parameter requires a value" -msgstr "%.*s: ARGP_HELP_FMT o parámetro require un valor" - -#: grub-core/lib/gnulib/argp-help.c:235 -#, c-format -msgid "%.*s: Unknown ARGP_HELP_FMT parameter" -msgstr "%.*s: Descoñécese o parámetro ARGP_HELP_FMT" - -#: grub-core/lib/gnulib/argp-help.c:248 -#, c-format -msgid "Garbage in ARGP_HELP_FMT: %s" -msgstr "Lixo en ARGP_HELP_FMT: %s" - -#: grub-core/lib/gnulib/argp-help.c:1229 -msgid "" -"Mandatory or optional arguments to long options are also mandatory or " -"optional for any corresponding short options." -msgstr "" -"Os parámetros obrigatorios ou opcionais das opcións longas son tamén " -"obrigatorios ou opcionais para calquera das opcións curtas que se " -"correspondan." - -#: grub-core/lib/gnulib/argp-help.c:1620 -msgid " or: " -msgstr " ou: " - -#: grub-core/lib/gnulib/argp-help.c:1632 -msgid " [OPTION...]" -msgstr " [OPCIÓN...]" - -#: grub-core/lib/gnulib/argp-help.c:1659 -#, c-format -msgid "Try '%s --help' or '%s --usage' for more information.\n" -msgstr "Probe '%s --help' ou '%s --usage' para máis información.\n" - -#: grub-core/lib/gnulib/argp-help.c:1687 -#, c-format -msgid "Report bugs to %s.\n" -msgstr "Informe dos erros a %s.\n" - -#: grub-core/lib/gnulib/argp-help.c:1888 grub-core/lib/gnulib/error.c:195 -msgid "Unknown system error" -msgstr "Produciuse un erro descoñecido do sistema" - -#: grub-core/lib/gnulib/argp-parse.c:81 -msgid "give this help list" -msgstr "dar esta lista de axuda" - -#: grub-core/lib/gnulib/argp-parse.c:82 -msgid "give a short usage message" -msgstr "dar unha mensaxe curta sobre o uso" - -#: grub-core/lib/gnulib/argp-parse.c:83 util/grub-mkfont.c:946 -msgid "NAME" -msgstr "NOME" - -#: grub-core/lib/gnulib/argp-parse.c:84 -msgid "set the program name" -msgstr "estabelecer o nome do programa" - -#: grub-core/lib/gnulib/argp-parse.c:86 -msgid "hang for SECS seconds (default 3600)" -msgstr "agardar durante SEGS segundos (predeterminado 3600)" - -#: grub-core/lib/gnulib/argp-parse.c:143 -msgid "print program version" -msgstr "imprimir versión do programa" - -#: grub-core/lib/gnulib/argp-parse.c:160 -msgid "(PROGRAM ERROR) No version known!?" -msgstr "(ERRO DE PROGRAMA) Non se coñece a versión!?" - -#: grub-core/lib/gnulib/argp-parse.c:613 -#, c-format -msgid "%s: Too many arguments\n" -msgstr "%s: Demasiados argumentos\n" - -#: grub-core/lib/gnulib/argp-parse.c:759 -msgid "(PROGRAM ERROR) Option should have been recognized!?" -msgstr "(ERRO DE PROGRAMA) Deberíase ter sido recoñecida!?" - -#: grub-core/lib/gnulib/getopt.c:278 -#, fuzzy, c-format -msgid "%s: option '%s%s' is ambiguous\n" -msgstr "%s: a opción «-W %s» é ambigua\n" - -#: grub-core/lib/gnulib/getopt.c:284 -#, fuzzy, c-format -msgid "%s: option '%s%s' is ambiguous; possibilities:" -msgstr "%s: a opción «%s» é ambigua; posibilidades:" - -#: grub-core/lib/gnulib/getopt.c:319 -#, fuzzy, c-format -msgid "%s: unrecognized option '%s%s'\n" -msgstr "%s: opción non recoñecida '%c%s'\n" - -#: grub-core/lib/gnulib/getopt.c:345 -#, fuzzy, c-format -msgid "%s: option '%s%s' doesn't allow an argument\n" -msgstr "%s: a opción «%c%s» non permite un argumento\n" - -#: grub-core/lib/gnulib/getopt.c:360 -#, fuzzy, c-format -msgid "%s: option '%s%s' requires an argument\n" -msgstr "%s: a opción «--%s» require un argumento\n" - -#: grub-core/lib/gnulib/getopt.c:621 -#, c-format -msgid "%s: invalid option -- '%c'\n" -msgstr "%s: opción incorrecta -- «%c»\n" - -#: grub-core/lib/gnulib/getopt.c:636 grub-core/lib/gnulib/getopt.c:682 -#, c-format -msgid "%s: option requires an argument -- '%c'\n" -msgstr "%s: a opción require un argumento -- «%c»\n" - -#: grub-core/lib/gnulib/openat-die.c:38 -#, fuzzy, c-format -msgid "unable to record current working directory" -msgstr "non se pode restaurar o cartafol orixinal" - -#: grub-core/lib/gnulib/openat-die.c:57 -#, c-format -msgid "failed to return to initial working directory" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:135 grub-core/osdep/aros/hostdisk.c:523 -msgid "Success" -msgstr "Correcto" - -#: grub-core/lib/gnulib/regcomp.c:138 -msgid "No match" -msgstr "Non hai coincidencias" - -#: grub-core/lib/gnulib/regcomp.c:141 -msgid "Invalid regular expression" -msgstr "Expresión regular incorrecta" - -#: grub-core/lib/gnulib/regcomp.c:144 -msgid "Invalid collation character" -msgstr "Carácter de ordenación incorrecto" - -#: grub-core/lib/gnulib/regcomp.c:147 -msgid "Invalid character class name" -msgstr "Nome de clase de carácter incorrecto" - -#: grub-core/lib/gnulib/regcomp.c:150 -msgid "Trailing backslash" -msgstr "Barra invertida na fin de liña" - -#: grub-core/lib/gnulib/regcomp.c:153 -msgid "Invalid back reference" -msgstr "Referencia cara atrás incorrecta" - -#: grub-core/lib/gnulib/regcomp.c:156 -#, fuzzy -msgid "Unmatched [, [^, [:, [., or [=" -msgstr "Non hai coincidencia con [ ou [^" - -#: grub-core/lib/gnulib/regcomp.c:159 -msgid "Unmatched ( or \\(" -msgstr "Non hai coincidencia con ( ou \\C" - -#: grub-core/lib/gnulib/regcomp.c:162 -msgid "Unmatched \\{" -msgstr "Non hai coincidencia \\{" - -#: grub-core/lib/gnulib/regcomp.c:165 -msgid "Invalid content of \\{\\}" -msgstr "O contido de \\{\\} é incorrecto" - -#: grub-core/lib/gnulib/regcomp.c:168 -msgid "Invalid range end" -msgstr "Fin de intervalo incorrecto" - -#: grub-core/lib/gnulib/regcomp.c:171 -msgid "Memory exhausted" -msgstr "Esgotouse a memoria" - -#: grub-core/lib/gnulib/regcomp.c:174 -msgid "Invalid preceding regular expression" -msgstr "A expresión regular precedente é incorrecta" - -#: grub-core/lib/gnulib/regcomp.c:177 -msgid "Premature end of regular expression" -msgstr "Remate de expresión regular prematuro" - -#: grub-core/lib/gnulib/regcomp.c:180 -msgid "Regular expression too big" -msgstr "A expresión regular é demasiado grande" - -#: grub-core/lib/gnulib/regcomp.c:183 -msgid "Unmatched ) or \\)" -msgstr "Non hai coincidencia con ) ou \\)" - -#: grub-core/lib/gnulib/regcomp.c:531 -msgid "unknown regexp error" -msgstr "Erro de expresión regular descoñecido" - -#: grub-core/lib/gnulib/regcomp.c:676 -msgid "No previous regular expression" -msgstr "Non hai expresión regular anterior" - -#: grub-core/lib/i386/halt.c:77 -msgid "GRUB doesn't know how to halt this machine yet!" -msgstr "GRUB aínda non sabe como deter esta máquina!" - -#: grub-core/lib/legacy_parse.c:75 -msgid "Default server is ${net_default_server}" -msgstr "" - -#: grub-core/lib/legacy_parse.c:844 grub-core/video/colors.c:296 -#: grub-core/video/colors.c:305 grub-core/video/colors.c:311 -#: grub-core/video/colors.c:327 util/render-label.c:84 util/render-label.c:98 -#, c-format -msgid "invalid color specification `%s'" -msgstr "especificación de cor incorrecta «%s»" - -#: grub-core/lib/mips/arc/reboot.c:32 grub-core/lib/mips/loongson/reboot.c:61 -msgid "Reboot failed" -msgstr "Fallou o reinicio" - -#: grub-core/lib/random.c:113 -msgid "[LENGTH]" -msgstr "" - -#: grub-core/lib/random.c:114 -msgid "Hexdump random data." -msgstr "" - -#: grub-core/loader/arm/linux.c:242 -msgid "device tree must be supplied (see `devicetree' command)" -msgstr "" - -#: grub-core/loader/arm/linux.c:334 -#, fuzzy -msgid "invalid zImage" -msgstr "intervalo de tipo de letra incorrecto" - -#: grub-core/loader/arm/linux.c:450 grub-core/loader/efi/fdt.c:144 -#, fuzzy -msgid "invalid device tree" -msgstr "Dispositivo incorrecto «%s».\n" - -#: grub-core/loader/arm/linux.c:493 grub-core/loader/arm64/linux.c:383 -#: grub-core/loader/i386/linux.c:1125 grub-core/loader/i386/pc/linux.c:479 -#: grub-core/loader/i386/xen.c:962 grub-core/loader/i386/xen.c:964 -#: grub-core/loader/ia64/efi/linux.c:591 grub-core/loader/mips/linux.c:501 -#: grub-core/loader/powerpc/ieee1275/linux.c:383 -#: grub-core/loader/riscv/linux.c:50 -#: grub-core/loader/sparc64/ieee1275/linux.c:511 -msgid "Load Linux." -msgstr "Cargar Linux." - -#: grub-core/loader/arm/linux.c:495 grub-core/loader/arm64/linux.c:385 -#: grub-core/loader/i386/linux.c:1127 grub-core/loader/i386/pc/linux.c:482 -#: grub-core/loader/i386/xen.c:966 grub-core/loader/ia64/efi/linux.c:594 -#: grub-core/loader/mips/linux.c:503 -#: grub-core/loader/powerpc/ieee1275/linux.c:385 -#: grub-core/loader/riscv/linux.c:52 -#: grub-core/loader/sparc64/ieee1275/linux.c:513 -msgid "Load initrd." -msgstr "Cargar initrd." - -#. TRANSLATORS: DTB stands for device tree blob. -#: grub-core/loader/arm/linux.c:498 grub-core/loader/efi/fdt.c:169 -#, fuzzy -msgid "Load DTB file." -msgstr "Cargar imaxe XNU." - -#: grub-core/loader/arm64/linux.c:59 -msgid "" -"plain image kernel not supported - rebuild with CONFIG_(U)EFI_STUB enabled" -msgstr "" - -#: grub-core/loader/arm64/xen_boot.c:156 -msgid "failed to get FDT" -msgstr "" - -#: grub-core/loader/arm64/xen_boot.c:418 -#, fuzzy -msgid "you need to load the Xen Hypervisor first" -msgstr "cómpre cargar o núcleo primeiro" - -#: grub-core/loader/arm64/xen_boot.c:516 -#, fuzzy -msgid "Load a xen hypervisor." -msgstr "%s, co hipervisor (VMM ou monitor de máquina virtual) Xen" - -#: grub-core/loader/arm64/xen_boot.c:519 -#, fuzzy -msgid "Load a xen module." -msgstr "Cargar o módulo do núcleo NetBSD." - -#: grub-core/loader/efi/appleloader.c:231 -msgid "[OPTS]" -msgstr "[OPCS]" - -#. TRANSLATORS: This command is used on EFI to -#. switch to BIOS mode and boot the OS requiring -#. BIOS. -#: grub-core/loader/efi/appleloader.c:235 -msgid "Boot BIOS-based system." -msgstr "Sistema de inicio por BIOS." - -#: grub-core/loader/efi/chainloader.c:421 -#: grub-core/loader/i386/pc/chainloader.c:303 -msgid "Load another boot loader." -msgstr "Cargar outro cargador de arranque." - -#: grub-core/loader/i386/bsd.c:103 -msgid "Display output on all consoles." -msgstr "Presentar a saída en todas as consolas." - -#: grub-core/loader/i386/bsd.c:104 grub-core/loader/i386/bsd.c:138 -#: grub-core/loader/i386/bsd.c:171 -msgid "Use serial console." -msgstr "Usar a consola serie." - -#: grub-core/loader/i386/bsd.c:105 grub-core/loader/i386/bsd.c:131 -#: grub-core/loader/i386/bsd.c:159 -msgid "Ask for file name to reboot from." -msgstr "Preguntar polo nome do ficheiro desde o que reiniciar." - -#: grub-core/loader/i386/bsd.c:106 -msgid "Use CD-ROM as root." -msgstr "Utilizar o CDROM como root." - -#: grub-core/loader/i386/bsd.c:107 -msgid "Invoke user configuration routing." -msgstr "Invocar a configuración de enrutamento do usuario." - -#: grub-core/loader/i386/bsd.c:108 grub-core/loader/i386/bsd.c:135 -#: grub-core/loader/i386/bsd.c:162 -msgid "Enter in KDB on boot." -msgstr "Entrar no KDB ao iniciar." - -#: grub-core/loader/i386/bsd.c:109 -msgid "Use GDB remote debugger instead of DDB." -msgstr "Usar o depurador remoto GDB en lugar do DDB." - -#: grub-core/loader/i386/bsd.c:110 -msgid "Disable all boot output." -msgstr "Desactivar toda a saída de arranque." - -#: grub-core/loader/i386/bsd.c:112 -msgid "Wait for keypress after every line of output." -msgstr "Agardar por cada tecla presionada despois de cada liña de saída." - -#: grub-core/loader/i386/bsd.c:114 -msgid "Use compiled-in root device." -msgstr "Utilizar o dispositivo raíz integrado." - -#: grub-core/loader/i386/bsd.c:115 grub-core/loader/i386/bsd.c:134 -#: grub-core/loader/i386/bsd.c:165 -msgid "Boot into single mode." -msgstr "Arrancar no modo de usuario único." - -#: grub-core/loader/i386/bsd.c:116 grub-core/loader/i386/bsd.c:166 -msgid "Boot with verbose messages." -msgstr "Arrancar con mensaxes prolixas." - -#: grub-core/loader/i386/bsd.c:132 grub-core/loader/i386/bsd.c:160 -msgid "Don't reboot, just halt." -msgstr "Non reiniciar, só deter." - -#: grub-core/loader/i386/bsd.c:133 grub-core/loader/i386/bsd.c:161 -msgid "Change configured devices." -msgstr "Cambiar os dispositivos configurados." - -#. TRANSLATORS: "com" is static and not to be translated. It refers to -#. serial ports e.g. com1. -#. -#: grub-core/loader/i386/bsd.c:142 -msgid "comUNIT[,SPEED]" -msgstr "comUNIDADE[,VELOCIDADE]" - -#: grub-core/loader/i386/bsd.c:157 -msgid "Disable SMP." -msgstr "Desactivar SMP." - -#: grub-core/loader/i386/bsd.c:158 -msgid "Disable ACPI." -msgstr "Desactivar ACPI." - -#: grub-core/loader/i386/bsd.c:164 -msgid "Don't display boot diagnostic messages." -msgstr "Non presentar as mensaxes de diagnóstico do arranque." - -#: grub-core/loader/i386/bsd.c:167 -msgid "Boot with debug messages." -msgstr "Arrancar con mensaxes de depuración." - -#: grub-core/loader/i386/bsd.c:168 -msgid "Suppress normal output (warnings remain)." -msgstr "Suprimir a saída normal (permanecen os avisos)." - -#. TRANSLATORS: "com" is static and not to be translated. It refers to -#. serial ports e.g. com1. -#. -#: grub-core/loader/i386/bsd.c:175 -msgid "[ADDR|comUNIT][,SPEED]" -msgstr "[ENDEREZO|comUNIDADE][,VELOCIDADE]" - -#: grub-core/loader/i386/bsd.c:489 grub-core/loader/i386/bsd.c:555 -msgid "name" -msgstr "nome" - -#: grub-core/loader/i386/bsd.c:489 grub-core/loader/i386/bsd.c:555 -msgid "type" -msgstr "tipo" - -#: grub-core/loader/i386/bsd.c:489 grub-core/loader/i386/bsd.c:555 -msgid "addr" -msgstr "enderezo" - -#: grub-core/loader/i386/bsd.c:490 grub-core/loader/i386/bsd.c:556 -msgid "size" -msgstr "tamaño" - -#: grub-core/loader/i386/bsd.c:1147 grub-core/loader/i386/linux.c:466 -#: grub-core/loader/i386/xnu.c:1030 -msgid "Booting in blind mode" -msgstr "Arranque no modo cego" - -#: grub-core/loader/i386/bsd.c:2137 -msgid "Load kernel of FreeBSD." -msgstr "Cargar o núcleo de FreeBSD." - -#: grub-core/loader/i386/bsd.c:2140 -msgid "Load kernel of OpenBSD." -msgstr "Cargar o núcleo de OpenBSD." - -#: grub-core/loader/i386/bsd.c:2143 -msgid "Load kernel of NetBSD." -msgstr "Cargar o núcleo de NetBSD." - -#: grub-core/loader/i386/bsd.c:2147 -msgid "Load FreeBSD env." -msgstr "Cargar o entorno FreeBSD." - -#: grub-core/loader/i386/bsd.c:2150 -msgid "Load FreeBSD kernel module." -msgstr "Cargar o módulo do núcleo FreeBSD." - -#: grub-core/loader/i386/bsd.c:2153 -msgid "Load NetBSD kernel module." -msgstr "Cargar o módulo do núcleo NetBSD." - -#: grub-core/loader/i386/bsd.c:2156 -msgid "Load NetBSD kernel module (ELF)." -msgstr "Cargar o módulo do núcleo NetBSD (ELF)." - -#: grub-core/loader/i386/bsd.c:2159 -msgid "Load FreeBSD kernel module (ELF)." -msgstr "Cargar o módulo do núcleo FreeBSD (ELF)." - -#. TRANSLATORS: ramdisk isn't identifier, -#. it can be translated. -#: grub-core/loader/i386/bsd.c:2165 -msgid "Load kOpenBSD ramdisk." -msgstr "Cargar o disco de memoria kOpenBSD." - -#. TRANSLATORS: "payload" is a term used -#. by coreboot and must be translated in -#. sync with coreboot. If unsure, -#. let it untranslated. -#: grub-core/loader/i386/coreboot/chainloader.c:510 -msgid "Load another coreboot payload" -msgstr "Cargar outra carga útil en arranque do núcleo" - -#: grub-core/loader/i386/linux.c:876 -msgid "Legacy `ask' parameter no longer supported." -msgstr "O antigo parámetro «ask» xa non se admite." - -#: grub-core/loader/i386/linux.c:892 grub-core/loader/i386/linux.c:902 -#: grub-core/loader/i386/linux.c:932 -#, c-format -msgid "%s is deprecated. Use set gfxpayload=%s before linux command instead.\n" -msgstr "" -"%s é obsoleto. Utilice gfxpayload=%s antes da orde linux no seu lugar.\n" - -#. TRANSLATORS: "x" has to be entered in, like an identifier, -#. so please don't use better Unicode codepoints. -#: grub-core/loader/i386/linux.c:915 -#, c-format -msgid "" -"%s is deprecated. VGA mode %d isn't recognized. Use set " -"gfxpayload=WIDTHxHEIGHT[xDEPTH] before linux command instead.\n" -msgstr "" -"%s é obsoleto. O modo VGA %d xa non se recoñece. Utilice " -"gfxpayload=LARGOxALTO[xFONDO] antes da orde linux no seu lugar.\n" - -#: grub-core/loader/i386/pc/chainloader.c:302 -msgid "[--force|--bpb] FILE" -msgstr "[--force|--bpb] FICHEIRO" - -#: grub-core/loader/i386/pc/freedos.c:148 util/setup.c:293 -#, c-format -msgid "the size of `%s' is too large" -msgstr "o tamaño de «%s» é demasiado grande" - -#: grub-core/loader/i386/pc/freedos.c:183 -msgid "Load FreeDOS kernel.sys." -msgstr "Cargar FreeDOS kernel.sys." - -#: grub-core/loader/i386/pc/ntldr.c:155 -msgid "Load NTLDR or BootMGR." -msgstr "Cargar NTLDR ou BootMGR." - -#. TRANSLATORS: it's about guessing which GRUB disk -#. is which Plan9 disk. If your language has no -#. word "mapping" you can use another word which -#. means that the GRUBDEVICE and PLAN9DEVICE are -#. actually the same device, just named differently -#. in OS and GRUB. -#: grub-core/loader/i386/pc/plan9.c:59 -msgid "Override guessed mapping of Plan9 devices." -msgstr "Sobrescribir a suposición dos dispositivos Plan9." - -#: grub-core/loader/i386/pc/plan9.c:60 -msgid "GRUBDEVICE=PLAN9DEVICE" -msgstr "DISPOSITIVOGRUB=DISPOSITIVOPLAN9" - -#: grub-core/loader/i386/pc/plan9.c:599 -msgid "KERNEL ARGS" -msgstr "ARGUMENTOS DO NÚCLEO" - -#: grub-core/loader/i386/pc/plan9.c:599 -msgid "Load Plan9 kernel." -msgstr "Cargar o núcleo de Plan9." - -#: grub-core/loader/i386/pc/pxechainloader.c:161 -msgid "Load a PXE image." -msgstr "Cargar unha imaxe PXE." - -#: grub-core/loader/i386/pc/truecrypt.c:226 -#, fuzzy -msgid "Load Truecrypt ISO." -msgstr "Cargar a chave de cifrado zfs." - -#: grub-core/loader/i386/xen.c:781 grub-core/loader/i386/xen.c:865 -msgid "initrd already loaded" -msgstr "" - -#: grub-core/loader/i386/xen.c:968 -#, fuzzy -msgid "Load module." -msgstr "Retirar un módulo." - -#: grub-core/loader/i386/xnu.c:1003 -msgid "Press any key to launch xnu" -msgstr "Prema calquera chave para arrincar xnu" - -#. TRANSLATORS: `device-properties' -#. is a variable name, -#. not a program. -#: grub-core/loader/i386/xnu.c:1159 -msgid "Load `device-properties' dump." -msgstr "Cargar o envorcado «propiedades-do-dispositivo»." - -#: grub-core/loader/ia64/efi/linux.c:124 -msgid "Could not locate FPSWA driver" -msgstr "Non foi posíbel localizar o controlador FPSWA" - -#: grub-core/loader/ia64/efi/linux.c:132 -msgid "FPSWA protocol wasn't able to find the interface" -msgstr "O protocolo FPSWA non foi quen de atoar a interface" - -#: grub-core/loader/ia64/efi/linux.c:580 -msgid "No FPSWA found" -msgstr "Non se atopou FPSWA" - -#: grub-core/loader/ia64/efi/linux.c:582 -#, c-format -msgid "FPSWA revision: %x\n" -msgstr "Revisión de FPSWA: %x\n" - -#: grub-core/loader/ia64/efi/linux.c:591 -msgid "FILE [ARGS...]" -msgstr "FICHEIRO [ARGUMENTOS...]" - -#: grub-core/loader/ia64/efi/linux.c:597 -msgid "Display FPSWA version." -msgstr "Presentar a versión FPSWA." - -#: grub-core/loader/multiboot.c:248 -msgid "WARNING: no console will be available to OS" -msgstr "AVISO: non haberá consola para o sistema operativo" - -#: grub-core/loader/multiboot.c:450 -msgid "Load a multiboot 2 kernel." -msgstr "Cargar o núcleo multiarranque 2." - -#: grub-core/loader/multiboot.c:453 -msgid "Load a multiboot 2 module." -msgstr "Cargar un módulo multiarranque 2." - -#: grub-core/loader/multiboot.c:456 -msgid "Load a multiboot kernel." -msgstr "Cargar un núcleo multiarranque." - -#: grub-core/loader/multiboot.c:459 -msgid "Load a multiboot module." -msgstr "Cargar un módulo multiarranque." - -#: grub-core/loader/riscv/linux.c:30 grub-core/loader/riscv/linux.c:40 -#, fuzzy -msgid "Linux not supported yet" -msgstr "Lista de modos de vídeo compatíbeis:" - -#: grub-core/loader/xnu.c:1416 grub-core/term/gfxterm_background.c:45 -msgid "Background image mode." -msgstr "Modo de imaxe de fondo." - -#. TRANSLATORS: This refers to background image mode (stretched or -#. in left-top corner). Note that GRUB will accept only original -#. keywords stretch and normal, not the translated ones. -#. So please put both in translation -#. e.g. stretch(=%STRETCH%)|normal(=%NORMAL%). -#. The percents mark the translated version. Since many people -#. may not know the word stretch or normal I recommend -#. putting the translation either here or in "Background image mode." -#. string. -#: grub-core/loader/xnu.c:1416 grub-core/term/gfxterm_background.c:55 -msgid "stretch|normal" -msgstr "stretch(=%ESTENDIDA%)|normal(=%NORMAL%)" - -#: grub-core/loader/xnu.c:1482 -msgid "Load XNU image." -msgstr "Cargar imaxe XNU." - -#: grub-core/loader/xnu.c:1484 -msgid "Load 64-bit XNU image." -msgstr "Cargar imaxe XNU de 64-bit." - -#: grub-core/loader/xnu.c:1486 -msgid "Load XNU extension package." -msgstr "Cargar paquete de extensión XNU." - -#: grub-core/loader/xnu.c:1488 -msgid "Load XNU extension." -msgstr "Cargar extensión XNU." - -#. TRANSLATORS: OSBundleRequired is a -#. variable name in xnu extensions -#. manifests. It behaves mostly like -#. GNU/Linux runlevels. -#. -#: grub-core/loader/xnu.c:1495 -msgid "DIRECTORY [OSBundleRequired]" -msgstr "CARTAFOL [OSBundleRequired]" - -#. TRANSLATORS: There are many extensions -#. in extension directory. -#: grub-core/loader/xnu.c:1498 -msgid "Load XNU extension directory." -msgstr "Cargar o cartafol de extensión XNU." - -#. TRANSLATORS: ramdisk here isn't identifier. It can be translated. -#: grub-core/loader/xnu.c:1501 -msgid "Load XNU ramdisk. It will be available in OS as md0." -msgstr "Cargar o disco de memoria XNU. Está dispoñíbel no SO como md0." - -#: grub-core/loader/xnu.c:1505 -msgid "Load a splash image for XNU." -msgstr "Cargar unha imaxe de benvida para XNU." - -#: grub-core/loader/xnu.c:1510 -msgid "Load an image of hibernated XNU." -msgstr "Cargar unha imaxe de hibernación XNU." - -#: grub-core/mmap/mmap.c:538 -msgid "ADDR1,MASK1[,ADDR2,MASK2[,...]]" -msgstr "ENDEREZO1,MASCARA1[,ENDEREZO2,MASCARA2[,...]]" - -#: grub-core/mmap/mmap.c:539 -msgid "Declare memory regions as faulty (badram)." -msgstr "Declarar rexións de memoria como defectuosas (badram)." - -#: grub-core/mmap/mmap.c:541 -msgid "FROM[K|M|G] TO[K|M|G]" -msgstr "DE[K|M|G] A[K|M|G]" - -#: grub-core/mmap/mmap.c:542 -msgid "Remove any memory regions in specified range." -msgstr "Retirar calquera rexión de memoria dentro dun intervalo especificado." - -#: grub-core/net/bootp.c:653 -msgid "four arguments expected" -msgstr "agardábanse catro argumentos" - -#: grub-core/net/bootp.c:661 grub-core/net/net.c:1155 -#, c-format -msgid "unrecognised network interface `%s'" -msgstr "a interface de rede «%s» é descoñecida" - -#: grub-core/net/bootp.c:664 -msgid "no DHCP info found" -msgstr "non se atopou información de DHCP" - -#: grub-core/net/bootp.c:674 -msgid "no DHCP options found" -msgstr "non se atoparon opcións de DHCP" - -#: grub-core/net/bootp.c:682 -#, fuzzy -msgid "invalid DHCP option code" -msgstr "non se atoparon opcións de DHCP" - -#: grub-core/net/bootp.c:686 -#, fuzzy, c-format -msgid "no DHCP option %u found" -msgstr "non se atopou a opción %d de DHCP" - -#: grub-core/net/bootp.c:743 -#, c-format -msgid "unrecognised DHCP option format specification `%s'" -msgstr "non se recoñece a especificación «%s» do formato de opción DHCP" - -#: grub-core/net/bootp.c:767 -msgid "no network card found" -msgstr "non se atopou a tarxeta de rede" - -#: grub-core/net/bootp.c:859 grub-core/net/net.c:389 -#, c-format -msgid "couldn't autoconfigure %s" -msgstr "non foi posíbel autoconfigurar %s" - -#: grub-core/net/bootp.c:873 grub-core/net/bootp.c:876 -msgid "[CARD]" -msgstr "[TARXETA]" - -#: grub-core/net/bootp.c:874 -msgid "perform a bootp autoconfiguration" -msgstr "realizar unha configuración automática bootp" - -#: grub-core/net/bootp.c:877 -#, fuzzy -msgid "perform a DHCP autoconfiguration" -msgstr "realizar unha configuración automática bootp" - -#: grub-core/net/bootp.c:879 -msgid "VAR INTERFACE NUMBER DESCRIPTION" -msgstr "VAR INTERFACE NÚMERO DESCRICIÓN" - -#: grub-core/net/bootp.c:880 -msgid "" -"retrieve DHCP option and save it into VAR. If VAR is - then print the value." -msgstr "" -"recuperar a opción DHCP e gardala en VAR. Se VAR xa está - entón imprimir o " -"valor." - -#: grub-core/net/dns.c:459 -msgid "no DNS servers configured" -msgstr "non se configuraron servidores DNS" - -#: grub-core/net/dns.c:522 -msgid "domain name component is too long" -msgstr "o compoñente de nome de dominio é demasiado longo" - -#: grub-core/net/dns.c:618 grub-core/net/dns.c:666 -msgid "no DNS record found" -msgstr "non se atopou ningún rexistro de DNS" - -#: grub-core/net/dns.c:626 -msgid "no DNS reply received" -msgstr "Non se recibiu ningunha resposta de DNS" - -#: grub-core/net/dns.c:682 -msgid "only ipv4" -msgstr "" - -#: grub-core/net/dns.c:686 -msgid "only ipv6" -msgstr "" - -#: grub-core/net/dns.c:690 -msgid "prefer ipv4" -msgstr "" - -#: grub-core/net/dns.c:694 -msgid "prefer ipv6" -msgstr "" - -#: grub-core/net/dns.c:759 -msgid "ADDRESS DNSSERVER" -msgstr "ADDRESS DNSSERVER" - -#: grub-core/net/dns.c:760 -msgid "Perform a DNS lookup" -msgstr "Realizar unha procura de DNS" - -#: grub-core/net/dns.c:762 grub-core/net/dns.c:765 -msgid "DNSSERVER" -msgstr "DNSSERVER" - -#: grub-core/net/dns.c:763 -msgid "Add a DNS server" -msgstr "Engadir un servidor de DNS" - -#: grub-core/net/dns.c:766 -msgid "Remove a DNS server" -msgstr "Retirar un servidor de DNS" - -#: grub-core/net/dns.c:768 -msgid "List DNS servers" -msgstr "Listas os servidores de DNS" - -#: grub-core/net/drivers/efi/efinet.c:49 grub-core/net/drivers/efi/efinet.c:65 -#: grub-core/net/drivers/efi/efinet.c:77 grub-core/net/drivers/emu/emunet.c:62 -#: grub-core/net/drivers/i386/pc/pxe.c:273 -#: grub-core/net/drivers/ieee1275/ofnet.c:75 -#: grub-core/net/drivers/uboot/ubootnet.c:62 -msgid "couldn't send network packet" -msgstr "non foi posíbel enviar un paquete de rede" - -#: grub-core/net/drivers/ieee1275/ofnet.c:326 -#: grub-core/net/drivers/ieee1275/ofnet.c:359 -#, fuzzy -msgid "interpret is not supported" -msgstr "compatíbel coa interface protexida de 16 bit\n" - -#: grub-core/net/drivers/ieee1275/ofnet.c:336 -msgid "alloc-mem failed" -msgstr "" - -#: grub-core/net/drivers/ieee1275/ofnet.c:370 -msgid "free-mem failed" -msgstr "" - -#: grub-core/net/http.c:105 -msgid "unsupported HTTP response" -msgstr "A resposta HTTP non é compatíbel" - -#. TRANSLATORS: GRUB HTTP code is pretty young. So even perfectly -#. valid answers like 403 will trigger this very generic message. -#: grub-core/net/http.c:126 -#, c-format -msgid "unsupported HTTP error %d: %s" -msgstr "O erro HTTP %d: %s non é compatíbel" - -#: grub-core/net/http.c:429 grub-core/net/tftp.c:420 -#, c-format -msgid "time out opening `%s'" -msgstr "esgotouse o tempo ao abrir «%s»" - -#: grub-core/net/net.c:179 -msgid "timeout: could not resolve hardware address" -msgstr "esgotado: non foi posíbel resolver o enderezo de hardware" - -#: grub-core/net/net.c:548 -#, c-format -msgid "unresolvable address %s" -msgstr "non se pode resolver o enderezo %s" - -#: grub-core/net/net.c:594 -#, c-format -msgid "unrecognised network address `%s'" -msgstr "non se recoñece o enderezo de rede «%s»" - -#: grub-core/net/net.c:661 -msgid "destination unreachable" -msgstr "non se pode acadar o destino" - -#. TRANSLATORS: route loop is a condition when e.g. -#. to contact server A you need to go through B -#. and to contact B you need to go through A. -#: grub-core/net/net.c:684 -msgid "route loop detected" -msgstr "detectouse o bucle de rutas" - -#: grub-core/net/net.c:700 -msgid "address not found" -msgstr "non se atopou o enderezo" - -#: grub-core/net/net.c:704 -msgid "you can't delete this address" -msgstr "non pode eliminar este enderezo" - -#: grub-core/net/net.c:776 grub-core/net/net.c:792 -#, c-format -msgid "Unsupported hw address type %d\n" -msgstr "O tipo %d de enderezo de hw non é compatíbel\n" - -#: grub-core/net/net.c:813 -#, c-format -msgid "Unsupported address type %d\n" -msgstr "O tipo %d de enderezo non é compatíbel\n" - -#: grub-core/net/net.c:1017 grub-core/net/net.c:1131 -msgid "three arguments expected" -msgstr "agardábanse tres argumentos" - -#: grub-core/net/net.c:1023 -msgid "card not found" -msgstr "non se atopou a tarxeta" - -#. TRANSLATORS: it refers to the network address. -#: grub-core/net/net.c:1167 -msgid "temporary" -msgstr "temporal" - -#: grub-core/net/net.c:1190 -#, c-format -msgid "Unknown address type %d\n" -msgstr "O tipo de enderezo %d é descoñecido\n" - -#: grub-core/net/net.c:1298 -msgid "no server is specified" -msgstr "non se especificou ningún servidor" - -#: grub-core/net/net.c:1637 -#, c-format -msgid "timeout reading `%s'" -msgstr "esgotouse o tempo de lectura de «%s»" - -#. TRANSLATORS: HWADDRESS stands for -#. "hardware address". -#: grub-core/net/net.c:1762 -msgid "SHORTNAME CARD ADDRESS [HWADDRESS]" -msgstr "NOMECURTO TARXETA ENDEREZO [HWADDRESS]" - -#: grub-core/net/net.c:1763 -msgid "Add a network address." -msgstr "Engadir un enderezo de rede." - -#: grub-core/net/net.c:1766 -msgid "[CARD [HWADDRESS]]" -msgstr "[TARXETA [HWADDRESS]]" - -#: grub-core/net/net.c:1767 -msgid "Perform an IPV6 autoconfiguration" -msgstr "Realizar unha autoconfiguración IPV6" - -#: grub-core/net/net.c:1770 grub-core/net/net.c:1777 -msgid "SHORTNAME" -msgstr "NOMECURTO" - -#: grub-core/net/net.c:1771 -msgid "Delete a network address." -msgstr "Eliminar un enderezo de rede." - -#. TRANSLATORS: "gw" is a keyword. -#: grub-core/net/net.c:1774 -msgid "SHORTNAME NET [INTERFACE| gw GATEWAY]" -msgstr "NOMECURTO REDE [INTERFACE] gw PASARELA]" - -#: grub-core/net/net.c:1775 -msgid "Add a network route." -msgstr "Engadir unha ruta de rede." - -#: grub-core/net/net.c:1778 -msgid "Delete a network route." -msgstr "Retirar unha ruta de rede." - -#: grub-core/net/net.c:1780 -msgid "list network routes" -msgstr "listas rutas de rede" - -#: grub-core/net/net.c:1782 -msgid "list network cards" -msgstr "listar tarxetas de rede" - -#: grub-core/net/net.c:1784 -msgid "list network addresses" -msgstr "listar enderezos de rede" - -#: grub-core/net/tcp.c:681 -msgid "connection refused" -msgstr "conexión rexeitada" - -#: grub-core/net/tcp.c:684 -msgid "connection timeout" -msgstr "conexión esgotada" - -#: grub-core/normal/auth.c:220 -msgid "Enter username: " -msgstr "Escriba o seu nome de usuario: " - -#: grub-core/normal/auth.c:269 -msgid "[USERLIST]" -msgstr "[LISTAUSUARIOS]" - -#: grub-core/normal/auth.c:270 -msgid "Check whether user is in USERLIST." -msgstr "Comprobar se o usuario está na LISTAUSUARIOS." - -#: grub-core/normal/cmdline.c:174 grub-core/normal/menu_entry.c:1068 -msgid "Possible commands are:" -msgstr "As ordes posíbeis son:" - -#: grub-core/normal/cmdline.c:177 grub-core/normal/menu_entry.c:1072 -msgid "Possible devices are:" -msgstr "Os dispositivos posíbeis son:" - -#: grub-core/normal/cmdline.c:180 grub-core/normal/menu_entry.c:1076 -msgid "Possible files are:" -msgstr "Os ficheiros posíbeis son:" - -#: grub-core/normal/cmdline.c:183 grub-core/normal/menu_entry.c:1080 -msgid "Possible partitions are:" -msgstr "As particións posíbeis son:" - -#: grub-core/normal/cmdline.c:186 grub-core/normal/menu_entry.c:1084 -msgid "Possible arguments are:" -msgstr "Os argumentos posíbeis son:" - -#. TRANSLATORS: this message is used if none of above matches. -#. This shouldn't happen but please use the general term for -#. "thing" or "object". -#: grub-core/normal/cmdline.c:192 grub-core/normal/menu_entry.c:1088 -msgid "Possible things are:" -msgstr "As cousas posíbeis son:" - -#: grub-core/normal/color.c:81 -#, c-format -msgid "Warning: syntax error (missing slash) in `%s'\n" -msgstr "Aviso: erro de sintaxe (falta a barra) en «%s»\n" - -#: grub-core/normal/color.c:90 -#, c-format -msgid "Warning: invalid foreground color `%s'\n" -msgstr "Aviso: a cor de primeiro plano «%s» non é válida\n" - -#: grub-core/normal/color.c:96 -#, c-format -msgid "Warning: invalid background color `%s'\n" -msgstr "Aviso: a cor de fondo «%s» non é válida\n" - -#: grub-core/normal/context.c:206 -msgid "ENVVAR [ENVVAR] ..." -msgstr "ENVVAR [ENVVAR] ..." - -#: grub-core/normal/context.c:207 -msgid "Export variables." -msgstr "Exportar variábeis." - -#: grub-core/normal/datetime.c:25 -msgid "Sunday" -msgstr "Domingo" - -#: grub-core/normal/datetime.c:26 -msgid "Monday" -msgstr "Luns" - -#: grub-core/normal/datetime.c:27 -msgid "Tuesday" -msgstr "Martes" - -#: grub-core/normal/datetime.c:28 -msgid "Wednesday" -msgstr "Mércores" - -#: grub-core/normal/datetime.c:29 -msgid "Thursday" -msgstr "Xoves" - -#: grub-core/normal/datetime.c:30 -msgid "Friday" -msgstr "Venres" - -#: grub-core/normal/datetime.c:31 -msgid "Saturday" -msgstr "Sábado" - -#: grub-core/normal/dyncmd.c:187 -msgid "module isn't loaded" -msgstr "o módulo non está cargado" - -#: grub-core/normal/main.c:211 -#, c-format -msgid "GNU GRUB version %s" -msgstr "Versión do GNU GRUB %s" - -#: grub-core/normal/main.c:360 -msgid "ESC at any time exits." -msgstr "ESC en calquera momento para saír." - -#: grub-core/normal/main.c:363 -#, c-format -msgid "" -"Minimal BASH-like line editing is supported. For the first word, TAB lists " -"possible command completions. Anywhere else TAB lists possible device or " -"file completions. %s" -msgstr "" -"aAdmítese unha liña de edición mínima tipo BASH. Para a primeira palabra, " -"TAB lista as posíbeis ordes de compleción. En calquera outra posición, TAB " -"lista os dispositivos posíbeis ou os ficheiros que completar. %s" - -#. TRANSLATORS: it's command line prompt. -#: grub-core/normal/main.c:395 -msgid ">" -msgstr ">" - -#. TRANSLATORS: it's command line prompt. -#: grub-core/normal/main.c:398 -msgid "grub>" -msgstr "grub>" - -#: grub-core/normal/main.c:518 -msgid "Clear the screen." -msgstr "Despexar a pantalla." - -#: grub-core/normal/main.c:527 -msgid "Enter normal mode." -msgstr "Entrar no modo normal." - -#: grub-core/normal/main.c:529 -msgid "Exit from normal mode." -msgstr "Saír do modo normal." - -#: grub-core/normal/menu.c:66 grub-core/normal/menu_entry.c:1449 -msgid "Press any key to continue..." -msgstr "Prema calquera tecla para continuar..." - -#: grub-core/normal/menu.c:815 -#, c-format -msgid "Booting `%s'" -msgstr "Arranque de «%s»" - -#: grub-core/normal/menu.c:827 -#, c-format -msgid "Falling back to `%s'" -msgstr "Volta a «%s»" - -#: grub-core/normal/menu.c:843 -msgid "Failed to boot both default and fallback entries.\n" -msgstr "" -"Produciuse un fallo no arranque de ambas as entradas, a predeterminada e a " -"proba de fallos.\n" - -#: grub-core/normal/menu_entry.c:1171 -msgid "Booting a command list" -msgstr "Arranque dunha lista de ordes" - -#: grub-core/normal/menu_text.c:160 -msgid "" -"Minimum Emacs-like screen editing is supported. TAB lists completions. Press " -"Ctrl-x or F10 to boot, Ctrl-c or F2 for a command-line or ESC to discard " -"edits and return to the GRUB menu." -msgstr "" -"É compatíbel co modo mínimo de edición en pantalla estilo Emacs. Completado " -"de listas con TAB. Prema Ctrl-x ou F10 para iniciar, Ctrl-c ou F2 para a " -"liña de ordes ou ESC para descartar cambios e volver ao menú do GRUB." - -#: grub-core/normal/menu_text.c:170 -#, c-format -msgid "Use the %C and %C keys to select which entry is highlighted." -msgstr "Use as teclas %C e %C para seleccionar que entrada realzar." - -#. TRANSLATORS: that's the list of binary unit prefixes. -#: grub-core/normal/misc.c:38 -msgid "B" -msgstr "B" - -#: grub-core/normal/misc.c:38 -msgid "KiB" -msgstr "KiB" - -#: grub-core/normal/misc.c:38 -msgid "MiB" -msgstr "MiB" - -#: grub-core/normal/misc.c:38 -msgid "GiB" -msgstr "GiB" - -#: grub-core/normal/misc.c:38 -msgid "TiB" -msgstr "TiB" - -#: grub-core/normal/misc.c:38 -msgid "PiB" -msgstr "PiB" - -#. TRANSLATORS: that's the list of binary unit prefixes. -#: grub-core/normal/misc.c:40 -msgid "K" -msgstr "K" - -#: grub-core/normal/misc.c:40 -msgid "M" -msgstr "M" - -#: grub-core/normal/misc.c:40 -msgid "G" -msgstr "G" - -#: grub-core/normal/misc.c:40 -msgid "T" -msgstr "T" - -#: grub-core/normal/misc.c:40 -msgid "P" -msgstr "P" - -#. TRANSLATORS: that's the list of binary unit prefixes. -#: grub-core/normal/misc.c:42 -msgid "B/s" -msgstr "B/s" - -#: grub-core/normal/misc.c:42 -msgid "KiB/s" -msgstr "KiB/s" - -#: grub-core/normal/misc.c:42 -msgid "MiB/s" -msgstr "MiB/s" - -#: grub-core/normal/misc.c:42 -msgid "GiB/s" -msgstr "GiB/s" - -#: grub-core/normal/misc.c:42 -msgid "TiB/s" -msgstr "TiB/s" - -#: grub-core/normal/misc.c:42 -msgid "PiB/s" -msgstr "PiB/s" - -#: grub-core/normal/misc.c:96 -#, c-format -msgid "Partition %s:" -msgstr "Partición %s:" - -#: grub-core/normal/misc.c:101 -#, c-format -msgid "Device %s:" -msgstr "Dispositivo %s:" - -#: grub-core/normal/misc.c:107 -msgid "Filesystem cannot be accessed" -msgstr "Non se pode acceder ao sistema de ficheiros" - -#: grub-core/normal/misc.c:121 -#, c-format -msgid "Filesystem type %s" -msgstr "Sistema de ficheiros de tipo %s" - -#: grub-core/normal/misc.c:131 -#, c-format -msgid "- Label `%s'" -msgstr "- Etiqueta «%s»" - -#. TRANSLATORS: Arguments are year, month, day, hour, minute, -#. second, day of the week (translated). -#: grub-core/normal/misc.c:148 -#, c-format -msgid "- Last modification time %d-%02d-%02d %02d:%02d:%02d %s" -msgstr "- Hora da última modificación %d-%02d-%02d %02d:%02d:%02d %s" - -#: grub-core/normal/misc.c:171 -msgid "No known filesystem detected" -msgstr "Non se detectou ningún sistema de ficheiros coñecido" - -#: grub-core/normal/misc.c:174 -#, c-format -msgid " - Partition start at %llu%sKiB" -msgstr " - A partición comeza en %llu%sKiB" - -#: grub-core/normal/misc.c:178 -#, c-format -msgid " - Sector size %uB" -msgstr " - Tamaño do sector %uB" - -#: grub-core/normal/misc.c:180 -msgid " - Total size unknown" -msgstr " - Tamaño total descoñecido" - -#: grub-core/normal/misc.c:182 -#, c-format -msgid " - Total size %llu%sKiB" -msgstr " - Tamaño total %llu%sKiB" - -#. TRANSLATORS: Replace dot with appropriate decimal separator for -#. your language. -#: grub-core/normal/misc.c:186 -msgid ".5" -msgstr ",5" - -#. TRANSLATORS: This has to fit on one line. It's ok to include few -#. words but don't write poems. -#: grub-core/normal/term.c:82 -msgid "--MORE--" -msgstr "--MÃIS INFORMACIÓN--" - -#: grub-core/osdep/aros/config.c:92 grub-core/osdep/unix/config.c:137 -#: grub-core/osdep/windows/config.c:55 -#, fuzzy, c-format -msgid "cannot open configuration file `%s': %s" -msgstr "non é posíbel abrir o ficheiro do SO «%s»: %s" - -#: grub-core/osdep/basic/compress.c:8 grub-core/osdep/basic/compress.c:14 -#: grub-core/osdep/basic/compress.c:20 -#, fuzzy -msgid "no compression is available for your platform" -msgstr "" -"Non hai suxestións dispoñíbeis para a súa plataforma. Espérase un rendemento " -"reducido." - -#: grub-core/osdep/basic/no_platform.c:30 -#: grub-core/osdep/windows/platform.c:418 -msgid "no IEEE1275 routines are available for your platform" -msgstr "" - -#: grub-core/osdep/basic/no_platform.c:38 -msgid "no EFI routines are available for your platform" -msgstr "" - -#: grub-core/osdep/basic/no_platform.c:45 -#: grub-core/osdep/windows/platform.c:425 -msgid "no SGI routines are available for your platform" -msgstr "" - -#. TRANSLATORS: The OS itself may very well have a random -#. number generator but GRUB doesn't know how to access it. -#: grub-core/osdep/basic/random.c:42 -msgid "no random number generator is available for your OS" -msgstr "" - -#: grub-core/osdep/devmapper/getroot.c:81 -msgid "Failed to create `device-mapper' tree" -msgstr "Fallou ao crear a árbore do «device-mapper»" - -#: grub-core/osdep/devmapper/getroot.c:197 -#: grub-core/osdep/freebsd/getroot.c:202 -#, c-format -msgid "can't mount encrypted volume `%s': %s" -msgstr "non pode montar o volume cifrado «%s»: %s" - -#. TRANSLATORS: geom is the name of (k)FreeBSD device framework. -#. Usually left untranslated. -#. -#: grub-core/osdep/freebsd/getroot.c:82 grub-core/osdep/freebsd/getroot.c:164 -#: grub-core/osdep/freebsd/getroot.c:258 grub-core/osdep/freebsd/getroot.c:316 -msgid "couldn't open geom" -msgstr "non foi posíbel abrir o geom" - -#: grub-core/osdep/freebsd/getroot.c:182 grub-core/osdep/freebsd/getroot.c:277 -msgid "couldn't find geli consumer" -msgstr "non foi posíbel atopar un consumidor geli" - -#: grub-core/osdep/freebsd/getroot.c:282 -msgid "couldn't retrieve geli UUID" -msgstr "non foi posíbel recuperar o UUID geli" - -#. TRANSLATORS: geom is the name of (k)FreeBSD device framework. -#. Usually left untranslated. "part" is the identifier of one of its -#. classes. -#: grub-core/osdep/freebsd/getroot.c:325 -msgid "couldn't find geom `part' class" -msgstr "non foi posíbel atopar a clase «part» do geom" - -#: grub-core/osdep/freebsd/hostdisk.c:72 grub-core/osdep/linux/hostdisk.c:93 -msgid "unaligned device size" -msgstr "tamaño de dispositivo non aliñado" - -#: grub-core/osdep/generic/blocklist.c:56 -#, c-format -msgid "attempting to read the core image `%s' from GRUB" -msgstr "tentando ler a imaxe principal «%s» desde o GRUB" - -#: grub-core/osdep/generic/blocklist.c:57 -#, c-format -msgid "attempting to read the core image `%s' from GRUB again" -msgstr "tentando ler a imaxe principal «%s» desde o GRUB de novo" - -#: grub-core/osdep/generic/blocklist.c:115 -#, c-format -msgid "cannot read `%s' correctly" -msgstr "non é posíbel ler correctamente «%s»" - -#: grub-core/osdep/generic/blocklist.c:126 -#, fuzzy -msgid "failed to read the sectors of the core image" -msgstr "fallou a lectura do resto de sectores da imaxe principal" - -#. TRANSLATORS: On GNU/Hurd, a "translator" is similar to a filesystem -#. mount, but handled by a userland daemon, whose invocation command line -#. is being fetched here. First %s is the file being looked at (for which -#. we are fetching the "translator" command line), second %s is the error -#. message. -#. -#: grub-core/osdep/hurd/getroot.c:79 -#, c-format -msgid "cannot get translator command line for path `%s': %s" -msgstr "non pode obter liña de ordes de tradutor para a ruta «%s»: %s" - -#: grub-core/osdep/hurd/getroot.c:82 -#, c-format -msgid "translator command line is empty for path `%s'" -msgstr "a liña de ordes de tradutor está baleira na ruta «%s»" - -#. TRANSLATORS: we expect to get something like -#. /hurd/foobar --option1 --option2=baz /dev/something -#. -#: grub-core/osdep/hurd/getroot.c:98 -#, c-format -msgid "" -"translator `%s' for path `%s' has several non-option words, at least `%s' " -"and `%s'" -msgstr "" -"o tradutor «%s» na ruta «%s» ten varias palabras sen opción, cando menos " -"«%s» e «%s»" - -#. TRANSLATORS: we expect to get something like -#. /hurd/foobar --option1 --option2=baz /dev/something -#. -#: grub-core/osdep/hurd/getroot.c:109 -#, c-format -msgid "" -"translator `%s' for path `%s' is given only options, cannot find device part" -msgstr "" -"o tradutor «%s» para a ruta «%s» dáse só con opcións, non pode atopar a " -"parte do dispositivo" - -#: grub-core/osdep/hurd/hostdisk.c:73 -#, c-format -msgid "Storage information for `%s' does not include type" -msgstr "" - -#: grub-core/osdep/hurd/hostdisk.c:75 -#, c-format -msgid "`%s' is not a local disk" -msgstr "" - -#: grub-core/osdep/hurd/hostdisk.c:78 -#, c-format -msgid "" -"Storage information for `%s' indicates neither a plain partition nor a plain " -"disk" -msgstr "" - -#: grub-core/osdep/linux/blocklist.c:81 grub-core/osdep/linux/blocklist.c:96 -#: grub-core/osdep/linux/blocklist.c:122 -#, c-format -msgid "can't retrieve blocklists: %s" -msgstr "non é posíbel recuperar as listas de bloques: %s" - -#: grub-core/osdep/linux/blocklist.c:84 -msgid "blocksize is not divisible by 512" -msgstr "o tamaño do bloque non se pode dividir entre 512" - -#: grub-core/osdep/linux/blocklist.c:86 -#, fuzzy -msgid "invalid zero blocksize" -msgstr "tamaño de bloque incorrecto" - -#: grub-core/osdep/linux/blocklist.c:90 util/setup.c:744 -msgid "can't retrieve blocklists" -msgstr "non é posíbel recuperar as listas de bloques" - -#: grub-core/osdep/linux/getroot.c:154 -#, c-format -msgid "ioctl RAID_VERSION error: %s" -msgstr "erro de ioctl RAID_VERSION: %s" - -#: grub-core/osdep/linux/getroot.c:160 grub-core/osdep/linux/getroot.c:164 -#, c-format -msgid "unsupported RAID version: %d.%d" -msgstr "versión de RAID incompatíbel: %d.%d" - -#: grub-core/osdep/linux/getroot.c:169 -#, c-format -msgid "ioctl GET_ARRAY_INFO error: %s" -msgstr "erro de ioctl GET_ARRAY_INFO: %s" - -#: grub-core/osdep/linux/getroot.c:178 -#, c-format -msgid "ioctl GET_DISK_INFO error: %s" -msgstr "erro de ioctl GET_DISK_INFO: %s" - -#: grub-core/osdep/linux/getroot.c:608 grub-core/osdep/linux/getroot.c:678 -#: grub-core/osdep/linux/hostdisk.c:126 grub-core/osdep/unix/getroot.c:253 -#: grub-core/osdep/unix/getroot.c:642 grub-core/osdep/unix/platform.c:92 -#: grub-core/osdep/unix/platform.c:100 -#, c-format -msgid "Unable to open stream from %s: %s" -msgstr "Non é posíbel abrir o fluxo de %s: %s" - -#: grub-core/osdep/linux/getroot.c:1033 -#, c-format -msgid "unknown kind of RAID device `%s'" -msgstr "o dispositivo RAID «%s» é dun tipo descoñecido" - -#: grub-core/osdep/linux/ofpath.c:181 -#, c-format -msgid "`obppath' not found in parent dirs of `%s', no IEEE1275 name discovery" -msgstr "" -"non se atopou «obppath» nos cartafoles superiores de «%s», non se descubre " -"ningún nome IEEE1275" - -#: grub-core/osdep/linux/ofpath.c:222 grub-core/osdep/unix/getroot.c:505 -#: grub-core/osdep/unix/getroot.c:529 grub-core/osdep/unix/relpath.c:49 -#: util/grub-install.c:984 util/grub-install.c:1331 util/grub-probe.c:323 -#, c-format -msgid "failed to get canonical path of `%s'" -msgstr "produciuse un fallo ao obter a ruta canónica de «%s»" - -#: grub-core/osdep/linux/ofpath.c:740 -#, fuzzy, c-format -msgid "unknown device type %s" -msgstr "tipo de dispositivo descoñecido %s\n" - -#: grub-core/osdep/linux/ofpath.c:758 util/ieee1275/grub-ofpathname.c:39 -#, c-format -msgid "Usage: %s DEVICE\n" -msgstr "Utilización: %s DISPOSITIVO\n" - -#: grub-core/osdep/unix/exec.c:86 grub-core/osdep/unix/exec.c:172 -#: grub-core/osdep/unix/exec.c:217 -#, c-format -msgid "Unable to fork: %s" -msgstr "Non é posíbel ramificar: %s" - -#: grub-core/osdep/unix/exec.c:166 grub-core/osdep/unix/exec.c:211 -#, c-format -msgid "Unable to create pipe: %s" -msgstr "Non é posíbel crear a canalización: %s" - -#: grub-core/osdep/unix/getroot.c:370 -#, fuzzy -msgid "cannot save the original directory" -msgstr "non se pode restaurar o cartafol orixinal" - -#: grub-core/osdep/unix/getroot.c:423 grub-core/osdep/unix/getroot.c:480 -#: grub-core/osdep/unix/getroot.c:489 -msgid "cannot restore the original directory" -msgstr "non se pode restaurar o cartafol orixinal" - -#. TRANSLATORS: "stat" comes from the name of POSIX function. -#: grub-core/osdep/unix/getroot.c:551 grub-core/osdep/unix/hostdisk.c:61 -#: grub-core/osdep/unix/relpath.c:73 grub-core/osdep/unix/relpath.c:97 -#: util/getroot.c:160 util/getroot.c:162 util/grub-install.c:774 -#: util/grub-macbless.c:70 -#, c-format -msgid "cannot stat `%s': %s" -msgstr "non pode iniciar «%s»: %s" - -#: grub-core/osdep/unix/hostdisk.c:293 -#, fuzzy, c-format -msgid "cannot make temporary file: %s" -msgstr "non é posíbel renomear o ficheiro de %s a %s" - -#: grub-core/osdep/unix/hostdisk.c:311 -#, fuzzy, c-format -msgid "cannot make temporary directory: %s" -msgstr "non se pode restaurar o cartafol orixinal" - -#: grub-core/osdep/unix/platform.c:77 -#, fuzzy, c-format -msgid "" -"couldn't find IEEE1275 device path for %s.\n" -"You will have to set `boot-device' variable manually" -msgstr "" -"Non é posíbel atopar a ruta á árbore do dispositivo IEEE1275 para %s.\\n " -"Deberá estabelecer a variábel «boot-device» manualmente.\\n" - -#. TRANSLATORS: This message is shown when required executable `%s' -#. isn't found. -#: grub-core/osdep/unix/platform.c:149 grub-core/osdep/unix/platform.c:189 -#, fuzzy, c-format -msgid "%s: not found" -msgstr "%s: Non atopado.\\n" - -#: grub-core/osdep/unix/platform.c:225 -#, fuzzy, c-format -msgid "" -"`nvsetenv' failed. \n" -"You will have to set `boot-device' variable manually. At the IEEE1275 " -"prompt, type:\n" -" %s\n" -msgstr "" -"Terá que estabelecer a variábel «boot-device» manualmente. No indicador " -"IEEE1275, escriba:" - -#: grub-core/osdep/unix/platform.c:240 -msgid "You will have to set `SystemPartition' and `OSLoader' manually." -msgstr "Terá que estabelecer «SystemPartition» e «OSLoader» manualmente." - -#. TRANSLATORS: canonical pathname is the -#. complete one e.g. /etc/fstab. It has -#. to contain `/' normally, if it doesn't -#. we're in trouble and throw this error. -#: grub-core/osdep/unix/relpath.c:90 -msgid "no `/' in canonical filename" -msgstr "falta «/» no nome canónico do ficheiro" - -#: grub-core/osdep/windows/hostdisk.c:151 -msgid "cygwin_conv_path() failed" -msgstr "fallou a cygwin_conv_path()" - -#: grub-core/osdep/windows/hostdisk.c:501 util/grub-install.c:570 -#, fuzzy -msgid "couldn't retrieve random data" -msgstr "non se poden recuperar datos aleatorios para o salgado (salt)" - -#: grub-core/osdep/windows/platform.c:97 -msgid "Insufficient privileges to access firmware, assuming BIOS" -msgstr "" - -#: grub-core/osdep/windows/platform.c:225 -msgid "no EFI routines are available when running in BIOS mode" -msgstr "" - -#: grub-core/osdep/windows/platform.c:240 -#, fuzzy -msgid "unexpected EFI error" -msgstr "remate de ficheiro inesperado" - -#: grub-core/osdep/windows/platform.c:315 -msgid "Couldn't find a free BootNNNN slot" -msgstr "" - -#: grub-core/partmap/gpt.c:191 -msgid "" -"this GPT partition label contains no BIOS Boot Partition; embedding won't be " -"possible" -msgstr "" -"esta etiqueta de partición GPT non contén unha partición de arranque do " -"BIOS; non será posíbel a incorporación" - -#: grub-core/partmap/gpt.c:196 -msgid "your BIOS Boot Partition is too small; embedding won't be possible" -msgstr "" -"a súa partición de arranque do BIOS é demasiado pequena, non será posíbel a " -"incorporación" - -#. TRANSLATORS: MBR gap and boot track is the same thing and is the space -#. between MBR and first partitition. If your language translates well only -#. "boot track", you can just use it everywhere. Next two messages are about -#. RAID controllers/software bugs which GRUB has to live with. Please spread -#. the message that these are bugs in other software and not merely -#. suboptimal behaviour. -#: grub-core/partmap/msdos.c:51 -#, c-format -msgid "" -"Sector %llu is already in use by raid controller `%s'; avoiding it. Please " -"ask the manufacturer not to store data in MBR gap" -msgstr "" -"O sector %llu xa o utiliza o controlador de raid «%s»; evítase. Pregúntelle " -"ao fabricante para non almacenar datos na fenda MBR" - -#: grub-core/partmap/msdos.c:54 -#, c-format -msgid "" -"Sector %llu is already in use by the program `%s'; avoiding it. This " -"software may cause boot or other problems in future. Please ask its authors " -"not to store data in the boot track" -msgstr "" -"O sector %llu xa o utiliza o programa «%s»; evítase. Este software pode " -"provocar no arranque ou noutros sitios problemas no futuro. Consúltelles aos " -"seus autores para non almacenar datos no sector de inicio" - -#: grub-core/partmap/msdos.c:384 -msgid "" -"other software is using the embedding area, and there is not enough room for " -"core.img. Such software is often trying to store data in a way that avoids " -"detection. We recommend you investigate" -msgstr "" -"xa outro software está a usar a área de incorporación, e non sitio para o " -"core.img. Tal software adoita tentar gardar datos de formas que evitan a " -"detección. Recomendámoslle que investigue" - -#: grub-core/partmap/msdos.c:395 -msgid "" -"this msdos-style partition label has no post-MBR gap; embedding won't be " -"possible" -msgstr "" -"esta etiqueta de partición con estilo msdos non ten o salto posterior ao " -"MBR; non será posíbel a incoporaciónl" - -#: grub-core/partmap/msdos.c:404 -msgid "your embedding area is unusually small. core.img won't fit in it." -msgstr "" -"a súa área de incorporación é estrañamente pequena. Core.img non vai caber " -"nela." - -#: grub-core/parttool/msdospart.c:39 -msgid "Make partition active" -msgstr "Facer activa a partición" - -#: grub-core/parttool/msdospart.c:51 -msgid "not a primary partition" -msgstr "non é unha partición primaria" - -#: grub-core/parttool/msdospart.c:69 -#, c-format -msgid "Partition %d is active now. \n" -msgstr "A partición %d está activa agora. \n" - -#: grub-core/parttool/msdospart.c:74 -#, c-format -msgid "Cleared active flag on %d. \n" -msgstr "Despexada a marca activa en %d. \n" - -#: grub-core/parttool/msdospart.c:87 -msgid "Change partition type" -msgstr "Cambiar o tipo de partición" - -#: grub-core/parttool/msdospart.c:88 -msgid "Set `hidden' flag in partition type" -msgstr "Estabelecer a marca «agochada» no tipo de partición" - -#: grub-core/parttool/msdospart.c:130 -#, c-format -msgid "the partition type 0x%x isn't valid" -msgstr "o tipo de partición 0x%x non é correcto" - -#. TRANSLATORS: In this case we're actually writing to the disk and actively -#. modifying partition type rather than just defining it. -#: grub-core/parttool/msdospart.c:137 -#, c-format -msgid "Setting partition type to 0x%x\n" -msgstr "Estabelecendo o tipo de partición como 0x%x\n" - -#. TRANSLATORS: 0 is a quantifier. "break" (similar to bash) -#. can be used e.g. to break 3 loops at once. -#. But asking it to break 0 loops makes no sense. -#: grub-core/script/execute.c:143 -msgid "can't break 0 loops" -msgstr "non pode romper 0 bucles" - -#. TRANSLATORS: It's about not being -#. inside a function. "return" can be used only -#. in a function and this error occurs if it's used -#. anywhere else. -#: grub-core/script/execute.c:227 -msgid "not in function body" -msgstr "non está no corpo da función" - -#: grub-core/script/execute.c:371 -#, c-format -msgid "invalid variable name `%s'" -msgstr "non é correcto o nome da variábel «%s»" - -#: grub-core/script/execute.c:953 -msgid "cannot allocate command buffer" -msgstr "" - -#: grub-core/script/lexer.c:144 util/grub-fstest.c:330 -msgid "unexpected end of file" -msgstr "remate de ficheiro inesperado" - -#: grub-core/script/main.c:55 grub-core/script/main.c:57 -#: grub-core/script/main.c:59 grub-core/script/main.c:67 -msgid "[NUM]" -msgstr "[NUM]" - -#: grub-core/script/main.c:55 -msgid "Exit from loops" -msgstr "Saír de bucles" - -#: grub-core/script/main.c:57 -msgid "Continue loops" -msgstr "Continuar bucles" - -#. TRANSLATORS: Positional arguments are -#. arguments $0, $1, $2, ... -#: grub-core/script/main.c:62 -msgid "Shift positional parameters." -msgstr "Modificar parámetros posicionais." - -#: grub-core/script/main.c:64 -msgid "[VALUE]..." -msgstr "[VALOR]..." - -#: grub-core/script/main.c:65 -msgid "Set positional parameters." -msgstr "Estabelecer parámetros posicionais." - -#. TRANSLATORS: It's a command description -#. and "Return" is a verb, not a noun. The -#. command in question is "return" and -#. has exactly the same semanics as bash -#. equivalent. -#: grub-core/script/main.c:73 -msgid "Return from a function." -msgstr "Volver desde unha función." - -#: grub-core/term/gfxterm_background.c:176 -msgid "[-m (stretch|normal)] FILE" -msgstr "[-m (stretch|normal)] FICHEIRO" - -#: grub-core/term/gfxterm_background.c:177 -msgid "Load background image for active terminal." -msgstr "Cargar imaxe de fondo no terminal activo." - -#: grub-core/term/gfxterm_background.c:182 util/grub-install.c:302 -#: util/grub-install.c:303 util/grub-mkrescue.c:107 util/grub-mkrescue.c:108 -#: util/grub-render-label.c:61 util/grub-render-label.c:63 -msgid "COLOR" -msgstr "COR" - -#: grub-core/term/gfxterm_background.c:183 -msgid "Set background color for active terminal." -msgstr "Estabelecer cor de fondo no terminal activo." - -#: grub-core/term/i386/coreboot/cbmemc.c:139 -msgid "Show CBMEM console content." -msgstr "Amosar o contido da consola CBMEM." - -#: grub-core/term/serial.c:57 -msgid "Set the serial unit." -msgstr "Estabelecer a unidade serie." - -#: grub-core/term/serial.c:58 -msgid "Set the serial port address." -msgstr "Estabelecer o enderezo do porto serie." - -#: grub-core/term/serial.c:59 -msgid "Set the serial port speed." -msgstr "Estabelecer a velocidade do porto serie." - -#: grub-core/term/serial.c:60 -msgid "Set the serial port word length." -msgstr "Estabelecer a lonxitude da palabra no porto serie." - -#: grub-core/term/serial.c:61 -msgid "Set the serial port parity." -msgstr "Estabelecer a paridade do porto serie." - -#: grub-core/term/serial.c:62 -msgid "Set the serial port stop bits." -msgstr "Estabelecer o bit de parada do porto serie." - -#: grub-core/term/serial.c:63 -#, fuzzy -msgid "Set the base frequency." -msgstr "Estabelecer a unidade serie." - -#: grub-core/term/serial.c:64 -msgid "Enable/disable RTS/CTS." -msgstr "" - -#: grub-core/term/serial.c:218 -#, c-format -msgid "serial port `%s' isn't found" -msgstr "non se atopou o porto serie «%s»" - -#: grub-core/term/serial.c:254 -#, fuzzy -msgid "unsupported serial port flow control" -msgstr "largura de palabra do porto serie incompatíbel" - -#: grub-core/term/serial.c:429 -msgid "[OPTIONS...]" -msgstr "[OPCIÓNS...]" - -#: grub-core/term/serial.c:430 -msgid "Configure serial port." -msgstr "Configurar o porto serie." - -#: grub-core/term/terminfo.c:184 -#, c-format -msgid "unknown terminfo type `%s'" -msgstr "tipo de terminfo descoñecido «%s»" - -#: grub-core/term/terminfo.c:668 -msgid "ASCII" -msgstr "ASCII" - -#: grub-core/term/terminfo.c:671 -msgid "UTF-8" -msgstr "UTF-8" - -#. TRANSLATORS: visually ordered UTF-8 is a non-compliant encoding -#. based on UTF-8 with right-to-left languages written in reverse. -#. Used on some terminals. Normal UTF-8 is refered as -#. "logically-ordered UTF-8" by opposition. -#: grub-core/term/terminfo.c:677 -msgid "visually-ordered UTF-8" -msgstr "UTF-8 visualmente ordenado" - -#: grub-core/term/terminfo.c:680 -msgid "Unknown encoding" -msgstr "Codificación descoñecida" - -#: grub-core/term/terminfo.c:684 -msgid "Current terminfo types:" -msgstr "Tipos de terminfo actuais:" - -#: grub-core/term/terminfo.c:699 -msgid "Terminal is ASCII-only [default]." -msgstr "O terminal só é ASCII [predeterminado]." - -#: grub-core/term/terminfo.c:700 -msgid "Terminal is logical-ordered UTF-8." -msgstr "O terminal é un UTF-8 ordenado loxicamente." - -#: grub-core/term/terminfo.c:701 -msgid "Terminal is visually-ordered UTF-8." -msgstr "O terminal é un UTF-8 visualmente ordenado." - -#: grub-core/term/terminfo.c:703 -msgid "Terminal has specified geometry." -msgstr "O terminal especificou a xeometría." - -#. TRANSLATORS: "x" has to be entered in, like an identifier, so please don't -#. use better Unicode codepoints. -#: grub-core/term/terminfo.c:706 -msgid "WIDTHxHEIGHT." -msgstr "LARGURAxALTURA." - -#: grub-core/term/terminfo.c:746 -msgid "incorrect terminal dimensions specification" -msgstr "a especificación de dimensións do terminal é incorrecta" - -#: grub-core/term/terminfo.c:776 -#, c-format -msgid "terminal %s isn't found or it's not handled by terminfo" -msgstr "non se atopou o terminal %s ou non o manexa o terminfo" - -#: grub-core/term/terminfo.c:785 -msgid "[[-a|-u|-v] [-g WxH] TERM [TYPE]]" -msgstr "[[-a|-u|-v] [-g WxH] TERM [TIPO]]" - -#: grub-core/term/terminfo.c:786 -msgid "Set terminfo type of TERM to TYPE.\n" -msgstr "Estabelecer o tipo terminfo de TERM como TYPE.\n" - -#. TRANSLATORS: this is the BLOCK-argument, not -#. environment block. -#: grub-core/tests/test_blockarg.c:49 -msgid "Print and execute block argument." -msgstr "Imprimir e executar argumento de bloque." - -#. TRANSLATORS: We're speaking about bitmap images like -#. JPEG or PNG. -#: grub-core/video/bitmap.c:209 -#, c-format -msgid "bitmap file `%s' is of unsupported format" -msgstr "o ficheiro bitmap «%s» ten un formato incompatíbel" - -#: grub-core/video/i386/pc/vbe.c:1191 -#, c-format -msgid " VBE info: version: %d.%d OEM software rev: %d.%d\n" -msgstr " VBE info: versión: %d.%d OEM software rev: %d.%d\n" - -#: grub-core/video/i386/pc/vbe.c:1198 -#, c-format -msgid " total memory: %d KiB\n" -msgstr " memorial total: %d KiB\n" - -#: grub-core/video/video.c:596 grub-core/video/video.c:762 -msgid "no suitable video mode found" -msgstr "non se atopou o modo apropiado de vídeo" - -#: include/grub/crypto.h:403 -msgid "access denied" -msgstr "acceso denegado" - -#: include/grub/util/install.h:30 include/grub/util/install.h:35 -#, fuzzy -msgid "MODULES" -msgstr "MÓDULO" - -#: include/grub/util/install.h:31 -msgid "pre-load specified modules MODULES" -msgstr "" - -#: include/grub/util/install.h:33 -msgid "embed a specific DTB" -msgstr "" - -#: include/grub/util/install.h:36 -msgid "install only MODULES and their dependencies [default=all]" -msgstr "" - -#: include/grub/util/install.h:37 -msgid "THEMES" -msgstr "" - -#: include/grub/util/install.h:38 -#, c-format -msgid "install THEMES [default=%s]" -msgstr "" - -#: include/grub/util/install.h:39 -msgid "FONTS" -msgstr "" - -#: include/grub/util/install.h:40 -#, c-format -msgid "install FONTS [default=%s]" -msgstr "" - -#: include/grub/util/install.h:41 -msgid "LOCALES" -msgstr "" - -#: include/grub/util/install.h:42 -msgid "install only LOCALES [default=all]" -msgstr "" - -#: include/grub/util/install.h:45 -msgid "compress GRUB files [optional]" -msgstr "" - -#: include/grub/util/install.h:48 util/grub-mkimage.c:83 -msgid "choose the compression to use for core image" -msgstr "escoller a compresión que se vai utilizar nas imaxes principais" - -#. TRANSLATORS: platform here isn't identifier. It can be translated. -#: include/grub/util/install.h:51 include/grub/util/install.h:54 -#: util/grub-mkimage.c:66 -#, c-format -msgid "use images and modules under DIR [default=%s/]" -msgstr "utilice imaxes e módulos baixo DIR [predeterminado=%s/]" - -#: include/grub/util/install.h:57 -#, fuzzy, c-format -msgid "use translations under DIR [default=%s]" -msgstr "utilice imaxes e módulos baixo DIR [predeterminado=%s/]" - -#: include/grub/util/install.h:60 -#, fuzzy, c-format -msgid "use themes under DIR [default=%s]" -msgstr "utilice imaxes e módulos baixo DIR [predeterminado=%s/]" - -#: include/grub/util/install.h:65 util/grub-mkimage.c:78 -msgid "embed FILE as public key for signature checking" -msgstr "incorpora FICHEIRO como chave pública para a comprobación de sinaturas" - -#: util/editenv.c:59 util/grub-editenv.c:201 util/grub-install-common.c:535 -#: util/grub-mkimage.c:315 util/setup.c:791 -#, fuzzy, c-format -msgid "cannot sync `%s': %s" -msgstr "non pode iniciar «%s»: %s" - -#: util/editenv.c:64 -#, c-format -msgid "cannot rename the file %s to %s" -msgstr "non é posíbel renomear o ficheiro de %s a %s" - -#: util/getroot.c:402 -#, c-format -msgid "disk does not exist, so falling back to partition device %s" -msgstr "o disco non existe, volvendo atrás ao dispositivo da partición %s" - -#: util/grub-editenv.c:45 util/grub-fstest.c:506 -msgid "Commands:" -msgstr "Ordes:" - -#: util/grub-editenv.c:47 -msgid "Create a blank environment block file." -msgstr "Crear un ficheiro baleiro de bloque de entorno." - -#: util/grub-editenv.c:49 -msgid "List the current variables." -msgstr "Listar as variábeis actuais." - -#. TRANSLATORS: "set" is a keyword. It's a summary of "set" subcommand. -#: util/grub-editenv.c:51 -msgid "set [NAME=VALUE ...]" -msgstr "estabelecer [NOME=VALOR ...]" - -#: util/grub-editenv.c:52 -msgid "Set variables." -msgstr "Estabelecer as variábeis." - -#. TRANSLATORS: "unset" is a keyword. It's a summary of "unset" subcommand. -#: util/grub-editenv.c:54 -msgid "unset [NAME ...]" -msgstr "sen definir [NOME ...]" - -#: util/grub-editenv.c:55 -msgid "Delete variables." -msgstr "Eliminar variábeis." - -#: util/grub-editenv.c:57 -msgid "Options:" -msgstr "Opcións:" - -#: util/grub-editenv.c:84 -msgid "You need to specify at least one command.\n" -msgstr "Cómpre especificar cando menos unha orde.\n" - -#: util/grub-editenv.c:113 -msgid "FILENAME COMMAND" -msgstr "NOMEDOFICHEIRO ORDE" - -#: util/grub-editenv.c:114 -msgid "Tool to edit environment block." -msgstr "Ferramenta para editar bloques de entorno." - -#: util/grub-editenv.c:116 -#, c-format -msgid "" -"If FILENAME is `-', the default value %s is used.\n" -"\n" -"There is no `delete' command; if you want to delete the whole environment\n" -"block, use `rm %s'." -msgstr "" - -#: util/grub-editenv.c:162 -msgid "invalid environment block" -msgstr "o bloque de entorno non é correcto" - -#: util/grub-editenv.c:217 -#, c-format -msgid "invalid parameter %s" -msgstr "o parámetro %s non é correcto" - -#: util/grub-editenv.c:222 -msgid "environment block too small" -msgstr "bloque de entorno demasiado pequeno" - -#: util/grub-fstest.c:107 -#, fuzzy, c-format -msgid "disk read fails at offset %lld, length %lld" -msgstr "falla a lectura do disco no desprazamento %lld, tamaño %d" - -#: util/grub-fstest.c:138 -#, c-format -msgid "invalid skip value %lld" -msgstr "o valor %lld de escape non é correcto" - -#: util/grub-fstest.c:160 util/grub-fstest.c:246 -#, c-format -msgid "read error at offset %llu: %s" -msgstr "erro de lectura no desprazamento %llu: %s" - -#: util/grub-fstest.c:210 -#, c-format -msgid "cannot open OS file `%s': %s" -msgstr "non é posíbel abrir o ficheiro do SO «%s»: %s" - -#: util/grub-fstest.c:225 util/misc.c:126 -#, c-format -msgid "cannot write to the stdout: %s" -msgstr "non pode escribir na stdout: %s" - -#: util/grub-fstest.c:259 -#, c-format -msgid "compare fail at offset %llu" -msgstr "comparar fallo no desprazamento %llu" - -#: util/grub-fstest.c:280 util/grub-fstest.c:314 -#, c-format -msgid "OS file %s open error: %s" -msgstr "Erro na apertura do ficheiro do SO %s: %s" - -#: util/grub-fstest.c:402 util/grub-mount.c:392 -#, c-format -msgid "`loopback' command fails: %s" -msgstr "a orde «loopback» falla: %s" - -#: util/grub-fstest.c:413 util/grub-mount.c:402 -#, c-format -msgid "`cryptomount' command fails: %s" -msgstr "a orde «cryptomount» falla: %s" - -#: util/grub-fstest.c:474 util/grub-fstest.c:478 -msgid "couldn't retrieve UUID" -msgstr "non foi posíbel recuperar o UUID" - -#: util/grub-fstest.c:507 -msgid "ls PATH" -msgstr "ls RUTA" - -#: util/grub-fstest.c:507 -msgid "List files in PATH." -msgstr "Listar ficheiros nA RUTA." - -#: util/grub-fstest.c:508 -msgid "cp FILE LOCAL" -msgstr "cp FICHEIRO LOCAL" - -#: util/grub-fstest.c:508 -msgid "Copy FILE to local file LOCAL." -msgstr "Copiar FICHEIRO no ficheiro local LOCAL." - -#: util/grub-fstest.c:509 -msgid "cat FILE" -msgstr "cat FICHEIRO" - -#: util/grub-fstest.c:509 -msgid "Copy FILE to standard output." -msgstr "Copiar FICHEIRO na saída estándar." - -#: util/grub-fstest.c:510 -msgid "cmp FILE LOCAL" -msgstr "cmp FICHEIRO LOCAL" - -#: util/grub-fstest.c:510 -msgid "Compare FILE with local file LOCAL." -msgstr "Comparar FICHEIRO co ficheiro local LOCAL." - -#: util/grub-fstest.c:511 -msgid "hex FILE" -msgstr "FICHEIRO hex" - -#: util/grub-fstest.c:511 -msgid "Show contents of FILE in hex." -msgstr "Amosar os contidos do FICHEIRO en hex." - -#: util/grub-fstest.c:512 -msgid "crc FILE" -msgstr "FICHEIRO crc" - -#: util/grub-fstest.c:512 -msgid "Get crc32 checksum of FILE." -msgstr "Obter a suma de comprobación CRC32 do FICHEIRO." - -#: util/grub-fstest.c:513 -msgid "blocklist FILE" -msgstr "FICHEIRO da lista de bloqueo" - -#: util/grub-fstest.c:513 -msgid "Display blocklist of FILE." -msgstr "Amosar a lista de bloqueo do FICHEIRO." - -#: util/grub-fstest.c:514 -msgid "xnu_uuid DEVICE" -msgstr "DISPOSITIVO xnu_uuid" - -#: util/grub-fstest.c:514 -msgid "Compute XNU UUID of the device." -msgstr "Contar UUID XNU do dispositivo." - -#. TRANSLATORS: bitmaps are images like e.g. in JPEG. -#: util/grub-fstest.c:517 util/grub-fstest.c:518 util/grub-fstest.c:519 -#: util/grub-mkfont.c:938 util/grub-mkfont.c:951 util/grub-mkfont.c:952 -#: util/grub-mkpasswd-pbkdf2.c:46 util/grub-mkpasswd-pbkdf2.c:47 -#: util/grub-mkpasswd-pbkdf2.c:48 -msgid "NUM" -msgstr "NÚMERO" - -#: util/grub-fstest.c:517 -msgid "Skip N bytes from output file." -msgstr "Saltar N bytes do ficheiro de saída." - -#: util/grub-fstest.c:518 -msgid "Handle N bytes in output file." -msgstr "Manexar N bytes no ficheiro de saída." - -#: util/grub-fstest.c:519 -msgid "Specify the number of input files." -msgstr "Especificar o número de ficheiros de entrada." - -#: util/grub-fstest.c:520 util/grub-mount.c:453 -msgid "Set debug environment variable." -msgstr "Estabelecer a variábel do entorno de depuración." - -#: util/grub-fstest.c:521 util/grub-mount.c:454 -msgid "Mount crypto devices." -msgstr "Montar os dispositivos cifrados." - -#. TRANSLATORS: "prompt" is a keyword. -#: util/grub-fstest.c:524 util/grub-mount.c:457 -msgid "FILE|prompt" -msgstr "FICHEIRO|prompt" - -#: util/grub-fstest.c:524 util/grub-mount.c:457 -msgid "Load zfs crypto key." -msgstr "Cargar a chave de cifrado zfs." - -#: util/grub-fstest.c:526 -msgid "Uncompress data." -msgstr "Datos sen comprimir." - -#: util/grub-fstest.c:605 -msgid "Invalid disk count.\n" -msgstr "Conta de disco incorrecta.\n" - -#. TRANSLATORS: disk count is optional but if it's there it must -#. be before disk list. So please don't imply disk count as mandatory. -#. -#: util/grub-fstest.c:613 -msgid "Disk count must precede disks list.\n" -msgstr "A conta de discos debe preceder a lista de discos.\n" - -#: util/grub-fstest.c:633 -msgid "No command is specified.\n" -msgstr "Sen ordes especificadas.\n" - -#: util/grub-fstest.c:638 -msgid "Not enough parameters to command.\n" -msgstr "Non hai parámetros abondo para a orde.\n" - -#: util/grub-fstest.c:711 -#, c-format -msgid "Invalid command %s.\n" -msgstr "A orde %s é incorrecta.\n" - -#: util/grub-fstest.c:724 -msgid "IMAGE_PATH COMMANDS" -msgstr "ORDES de IMAGE_PATH" - -#: util/grub-fstest.c:725 util/grub-mount.c:553 -msgid "Debug tool for filesystem driver." -msgstr "Ferramenta de depuración para o controlador do sistema de ficheiros." - -#: util/grub-glue-efi.c:53 -msgid "set input filename for 32-bit part." -msgstr "estabelecer o nome do ficheiro de entrada para a parte de 32 bits." - -#: util/grub-glue-efi.c:55 -msgid "set input filename for 64-bit part." -msgstr "estabelecer o nome do ficheiro de entrada para a parte de 64 bits." - -#: util/grub-glue-efi.c:57 util/grub-mklayout.c:55 util/grub-render-label.c:71 -msgid "set output filename. Default is STDOUT" -msgstr "estabelecer o nome do ficheiro de saída. O predeterminado é STDOUT" - -#: util/grub-glue-efi.c:94 util/grub-mklayout.c:476 -#: util/grub-mkpasswd-pbkdf2.c:86 util/grub-render-label.c:131 -msgid "[OPTIONS]" -msgstr "[OPCIÓNS]" - -#: util/grub-glue-efi.c:95 -#, fuzzy -msgid "Glue 32-bit and 64-bit binary into Apple universal one." -msgstr "Xunta os executábeis de 32 e 64 bits nun único gran binario de Apple." - -#: util/grub-glue-efi.c:116 -msgid "Missing input file\n" -msgstr "Falta o ficheiro de entrada\n" - -#: util/grub-install-common.c:127 util/grub-install-common.c:151 -#, fuzzy, c-format -msgid "cannot copy `%s' to `%s': %s" -msgstr "non se pode abrir «%s»: %s" - -#: util/grub-install-common.c:147 -#, fuzzy, c-format -msgid "can't compress `%s' to `%s'" -msgstr "non se puido abrir «%s»: %s" - -#: util/grub-install-common.c:196 util/grub-install-common.c:552 -#: util/grub-install-common.c:579 util/grub-install-common.c:621 -#, fuzzy, c-format -msgid "cannot open directory `%s': %s" -msgstr "non se pode abrir «%s»: %s" - -#: util/grub-install-common.c:212 -#, fuzzy, c-format -msgid "cannot delete `%s': %s" -msgstr "non se pode procurar «%s»: %s" - -#: util/grub-install-common.c:324 util/grub-mkimage.c:209 -msgid "grub-mkimage is compiled without XZ support" -msgstr "grub-mkimage compílase sen compatibilidade con XZ" - -#: util/grub-install-common.c:332 util/grub-mkimage.c:217 -#, c-format -msgid "Unknown compression format %s" -msgstr "Formato de compresión descoñecido %s" - -#: util/grub-install-common.c:400 -#, fuzzy, c-format -msgid "Unrecognized compression `%s'" -msgstr "A opción «%s» non se recoñece\\n" - -#: util/grub-install-common.c:509 -#, fuzzy, c-format -msgid "unknown target format %s" -msgstr "formato de destino descoñecido %s\n" - -#: util/grub-install-common.c:700 -#, fuzzy, c-format -msgid "cannot find locale `%s'" -msgstr "non é posíbel atopar a orde «%s»" - -#: util/grub-install-common.c:939 -#, fuzzy, c-format -msgid "%s doesn't exist. Please specify --target or --directory" -msgstr "%s non existe. Especifique --target ou --directory\\n" - -#: util/grub-install-common.c:948 util/grub-install-common.c:951 -#, fuzzy, c-format -msgid "invalid modinfo file `%s'" -msgstr "o nome do ficheiro «%s» é incorrecto" - -#: util/grub-install-common.c:966 -#, fuzzy, c-format -msgid "Unknown platform `%s-%s'" -msgstr "o argumento «%s» é descoñecido" - -#: util/grub-install.c:238 -msgid "More than one install device?" -msgstr "Máis ca un dispositivo de instalación?" - -#: util/grub-install.c:251 -#, c-format -msgid "" -"install GRUB images under the directory DIR/%s instead of the %s directory" -msgstr "" -"instalar as imaxes do GRUB no cartafol DIR/%s en lugar de facelo no cartafol " -"%s" - -#: util/grub-install.c:256 util/grub-probe.c:734 -msgid "TARGET" -msgstr "DESTINO" - -#. TRANSLATORS: "TARGET" as in "target platform". -#: util/grub-install.c:258 -#, fuzzy, c-format -msgid "install GRUB for TARGET platform [default=%s]; available targets: %s" -msgstr "instalar GRUB na plataforma DESTINO [predeterminada=actual]" - -#. TRANSLATORS: "may break" doesn't just mean that option wouldn't have any -#. effect but that it will make the resulting install unbootable from HDD. -#. TRANSLATORS: The potential breakage isn't limited to floppies but it's -#. likely to make the install unbootable from HDD. -#: util/grub-install.c:267 util/grub-setup.c:94 -msgid "" -"make the drive also bootable as floppy (default for fdX devices). May break " -"on some BIOSes." -msgstr "" -"facer a unidade tamén ser arrancábel como disquete (o predeterminado con " -"dispositivos fdX). A unidade pode estropearse con algúns BIOS." - -#: util/grub-install.c:270 -msgid "delete device map if it already exists" -msgstr "eliminar o mapa do dispositivo se xa existe" - -#: util/grub-install.c:272 util/grub-setup.c:87 -msgid "install even if problems are detected" -msgstr "instalar incluso no caso de detectar problemas" - -#: util/grub-install.c:274 -msgid "use identifier file even if UUID is available" -msgstr "utilizar o ficheiro identificador incluso se o UUID está dispoñíbel" - -#: util/grub-install.c:276 -msgid "" -"disk module to use (biosdisk or native). This option is only available on " -"BIOS target." -msgstr "" -"módulo do disco para utilizar (biodisco ou nativo). Esta opción só está " -"dispoñíbel no BIOS de destino." - -#: util/grub-install.c:279 -#, fuzzy -msgid "" -"don't update the `boot-device'/`Boot*' NVRAM variables. This option is only " -"available on EFI and IEEE1275 targets." -msgstr "" -"non actualiza a variábel NVRAM «boot-device». Esta opción só está dispoñíbel " -"nos destinos IEEE1275." - -#: util/grub-install.c:282 util/grub-setup.c:89 -msgid "do not probe for filesystems in DEVICE" -msgstr "non facer probas de sistemas de ficheiros no DISPOSITIVO" - -#: util/grub-install.c:284 -msgid "do not install bootsector" -msgstr "" - -#: util/grub-install.c:286 util/grub-setup.c:96 -#, fuzzy -msgid "" -"Do not apply any reed-solomon codes when embedding core.img. This option is " -"only available on x86 BIOS targets." -msgstr "" -"módulo do disco para utilizar (biodisco ou nativo). Esta opción só está " -"dispoñíbel no BIOS de destino." - -#: util/grub-install.c:293 -msgid "" -"the installation device is removable. This option is only available on EFI." -msgstr "" -"o dispositivo de instalación é retirábel. Esta opción só está dispoñíbel en " -"EFI." - -#: util/grub-install.c:295 -msgid "ID" -msgstr "ID" - -#: util/grub-install.c:296 -#, fuzzy -msgid "the ID of bootloader. This option is only available on EFI and Macs." -msgstr "" -"o ID do cargador de arranque (bootloader). Esta opción só está dispoñíbel en " -"EFI." - -#: util/grub-install.c:298 -msgid "use DIR as the EFI System Partition root." -msgstr "utilice CARTAFOL como a raíz da partición do sistema EFI." - -#: util/grub-install.c:300 -msgid "use DIR for PPC MAC install." -msgstr "" - -#: util/grub-install.c:301 util/grub-mkrescue.c:106 -msgid "use FILE as font for label" -msgstr "utilizar FICHEIRO como fonte para a etiqueta" - -#: util/grub-install.c:302 util/grub-mkrescue.c:107 -msgid "use COLOR for label" -msgstr "utilizar COR para etiqueta" - -#: util/grub-install.c:303 util/grub-mkrescue.c:108 -msgid "use COLOR for label background" -msgstr "utilizar COR para fondo de etiqueta" - -#: util/grub-install.c:304 util/grub-mkrescue.c:110 -msgid "use STRING as product version" -msgstr "utilizar CADEA como versión de produto" - -#: util/grub-install.c:361 -#, fuzzy -msgid "[OPTION] [INSTALL_DEVICE]" -msgstr "Utilización: %s [OPCIÓN] [INSTALAR_SEU_DISPOSITIVO]" - -#: util/grub-install.c:362 -msgid "Install GRUB on your drive." -msgstr "Instalar o GRUB na súa unidade." - -#: util/grub-install.c:363 -#, fuzzy, c-format -msgid "" -"INSTALL_DEVICE must be system device filename.\n" -"%s copies GRUB images into %s. On some platforms, it may also install GRUB " -"into the boot sector." -msgstr "" -"%s copia as imaxes do GRUB en %s. Nalgunhas plataformas, tamén\n" -"pode instalar o GRUB no sector de arranque.\\n" - -#: util/grub-install.c:672 -#, fuzzy, c-format -msgid "the drive %s is defined multiple times in the device map %s" -msgstr "" -"A unidade %s está definida múltiplas veces no mapa de dispositivos %s\\n" - -#: util/grub-install.c:878 -msgid "Unable to determine your platform. Use --target." -msgstr "Non é posíbel determinar a súa plataforma. Utilice --target." - -#: util/grub-install.c:891 -#, c-format -msgid "Installing for %s platform.\n" -msgstr "" - -#: util/grub-install.c:939 -#, fuzzy -msgid "install device isn't specified" -msgstr "Non se especificou o dispositivo de instalación." - -#: util/grub-install.c:1057 -#, fuzzy -msgid "cannot find EFI directory" -msgstr "non é un cartafol" - -#: util/grub-install.c:1060 util/grub-install.c:1209 util/grub-install.c:1254 -#: util/grub-macbless.c:76 util/grub-probe.c:329 util/setup.c:316 -#, c-format -msgid "cannot find a device for %s (is /dev mounted?)" -msgstr "non foi posíbel atopar un dispositivo para %s (está montado /dev?)" - -#: util/grub-install.c:1069 util/grub-install.c:1217 util/grub-install.c:1270 -#: util/grub-install.c:1365 util/grub-macbless.c:80 util/grub-probe.c:372 -#, c-format -msgid "cannot find a GRUB drive for %s. Check your device.map" -msgstr "" -"non foi posíbel atopar unha unidade GRUB para %s. Comprobe o seu device.map" - -#: util/grub-install.c:1087 -#, fuzzy, c-format -msgid "%s doesn't look like an EFI partition" -msgstr "%s non parece unha partición EFI.\\n" - -#: util/grub-install.c:1129 util/grub-install.c:1614 -msgid "You've found a bug" -msgstr "" - -#: util/grub-install.c:1231 -#, c-format -msgid "filesystem on %s is neither HFS nor HFS+" -msgstr "" - -#: util/grub-install.c:1299 -#, c-format -msgid "" -"attempt to install to encrypted disk without cryptodisk enabled. Set `%s' in " -"file `%s'" -msgstr "" - -#: util/grub-install.c:1410 util/grub-install.c:1772 util/grub-install.c:1872 -#, fuzzy, c-format -msgid "Can't create file: %s" -msgstr "Non é posíbel crear a canalización: %s" - -#: util/grub-install.c:1491 -#, fuzzy -msgid "no hints available for your platform. Expect reduced performance" -msgstr "" -"Non hai suxestións dispoñíbeis para a súa plataforma. Espérase un rendemento " -"reducido." - -#. TRANSLATORS: This is a prefix in the log to indicate that usually -#. a command would be executed but due to an option was skipped. -#: util/grub-install.c:1702 -msgid "NOT RUNNING: " -msgstr "" - -#: util/grub-install.c:1806 -#, fuzzy -msgid "the chosen partition is not a PReP partition" -msgstr "A partición escollida non é uha partición PReP." - -#: util/grub-install.c:1811 -#, fuzzy -msgid "failed to copy Grub to the PReP partition" -msgstr "Fallou a copia do Grub á partición PReP." - -#: util/grub-install.c:1816 -#, fuzzy, c-format -msgid "" -"the PReP partition is not empty. If you are sure you want to use it, run dd " -"to clear it: `%s'" -msgstr "" -"A partición PReP non está baleira. De estar seguro que a quere utilizar, " -"execute dd para limpala:" - -#: util/grub-install.c:1888 util/grub-install.c:1932 -#, c-format -msgid "efibootmgr failed to register the boot entry: %s" -msgstr "" - -#: util/grub-install.c:1916 -#, fuzzy -msgid "EFI bootloader id isn't specified." -msgstr "O id do distribuidor EFI non está especificado." - -#: util/grub-install.c:1950 -msgid "WARNING: no platform-specific install was performed" -msgstr "" -"AVISO: non se realizou ningunha instalación específica para ningunha " -"plataforma" - -#: util/grub-install.c:1957 -msgid "Installation finished. No error reported." -msgstr "A instalación finalizou. Non se informou de ningún erro." - -#: util/grub-macbless.c:101 -msgid "bless for x86-based macs" -msgstr "" - -#: util/grub-macbless.c:103 -msgid "bless for ppc-based macs" -msgstr "" - -#: util/grub-macbless.c:136 util/grub-probe.c:823 -msgid "No path or device is specified.\n" -msgstr "Non se especificou ruta nin dispositivo.\n" - -#: util/grub-macbless.c:157 -msgid "--ppc PATH|--x86 FILE" -msgstr "" - -#: util/grub-macbless.c:158 -msgid "Mac-style bless on HFS or HFS+" -msgstr "" - -#: util/grub-menulst2cfg.c:44 -#, c-format -msgid "Usage: %s [INFILE [OUTFILE]]\n" -msgstr "Utilización: %s [FICHEIRO_ENTRADA [FICHEIRO_SAÃDA]]\n" - -#: util/grub-mkfont.c:157 -#, c-format -msgid "Freetype Error %d loading glyph 0x%x for U+0x%x%s" -msgstr "Erro %d de Freetype ao cargar o glifo 0x%x para U+0x%x%s" - -#. TRANSLATORS: These qualifiers are used for cursive typography, -#. mainly Arabic. Note that the terms refer to the visual position -#. and not logical order and if used in left-to-right script then -#. leftmost is initial but with right-to-left script like Arabic -#. rightmost is the initial. -#: util/grub-mkfont.c:165 -msgid " (medial)" -msgstr " (medial)" - -#: util/grub-mkfont.c:166 -msgid " (leftmost)" -msgstr " (de esquerda a dereita)" - -#: util/grub-mkfont.c:167 -msgid " (rightmost)" -msgstr " (de dereita a esquerda)" - -#: util/grub-mkfont.c:481 -#, c-format -msgid "Out of range substitution (%d, %d)\n" -msgstr "Fóra do intervalo de substitución (%d, %d)\n" - -#. TRANSLATORS: "lookup" is taken directly from font specifications -#. which are formulated as "Under condition X replace LOOKUP with -#. SUBSTITUITION". " -#: util/grub-mkfont.c:506 -#, c-format -msgid "Out of range lookup: %d\n" -msgstr "Fóra do intervalo de procura: %d\n" - -#: util/grub-mkfont.c:514 -#, c-format -msgid "Unsupported substitution type: %d\n" -msgstr "Tipo de substitución non compatíbel: %d\n" - -#: util/grub-mkfont.c:550 -#, c-format -msgid "Unsupported substitution specification: %d\n" -msgstr "Especificación de substitución non compatíbel: %d\n" - -#: util/grub-mkfont.c:582 -#, c-format -msgid "Unsupported coverage specification: %d\n" -msgstr "Especificación de cobertura non compatíbel: %d\n" - -#: util/grub-mkfont.c:622 -#, c-format -msgid "WARNING: unsupported font feature parameters: %x\n" -msgstr "" -"AVISO: parámetros de funcionalidades do tipo de letra non compatíbeis: %x\n" - -#: util/grub-mkfont.c:936 util/grub-mkrescue.c:98 util/grub-mkstandalone.c:48 -msgid "save output in FILE [required]" -msgstr "gardar a saída en FICHEIRO [requirido]" - -#. TRANSLATORS: some font files may have multiple faces (fonts). -#. This option is used to chose among them, the first face being '0'. -#. Rarely used. -#: util/grub-mkfont.c:942 -msgid "select face index" -msgstr "seleccionar o índice da faciana" - -#: util/grub-mkfont.c:943 -msgid "FROM-TO[,FROM-TO]" -msgstr "DESDE-ATA[,DESDE-ATA]" - -#. TRANSLATORS: It refers to the range of characters in font. -#: util/grub-mkfont.c:945 -msgid "set font range" -msgstr "estabelecer o intervalo do tipo de letra" - -#. TRANSLATORS: "family name" for font is just a generic name without suffix -#. like "Bold". -#: util/grub-mkfont.c:949 -msgid "set font family name" -msgstr "estabelecer o nome da familia" - -#: util/grub-mkfont.c:950 -msgid "SIZE" -msgstr "TAMAÑO" - -#: util/grub-mkfont.c:950 -msgid "set font size" -msgstr "estabelecer tamaño de letra" - -#: util/grub-mkfont.c:951 -msgid "set font descent" -msgstr "estabelecer a medida descendente da letra" - -#: util/grub-mkfont.c:952 -msgid "set font ascent" -msgstr "estabelecer a medida ascendente da letra" - -#: util/grub-mkfont.c:953 -msgid "convert to bold font" -msgstr "converter en letra grosa" - -#: util/grub-mkfont.c:954 -msgid "force autohint" -msgstr "forzar o autosuavizado" - -#: util/grub-mkfont.c:955 -msgid "disable hinting" -msgstr "desactivar o suavizado" - -#. TRANSLATORS: some fonts contain bitmap rendering for -#. some sizes. This option forces rerendering even if -#. pre-rendered bitmap is available. -#. -#: util/grub-mkfont.c:961 -msgid "ignore bitmap strikes when loading" -msgstr "ignorar os bitmap prefacturados ao cargar" - -#. TRANSLATORS: It refers to the range of characters in font. -#: util/grub-mkfont.c:1059 util/grub-mkfont.c:1075 -msgid "invalid font range" -msgstr "intervalo de tipo de letra incorrecto" - -#: util/grub-mkfont.c:1151 -msgid "[OPTIONS] FONT_FILES" -msgstr "[OPCIÓNS] FICHEIROS_LETRAS" - -#: util/grub-mkfont.c:1152 -msgid "Convert common font file formats into PF2" -msgstr "Converter os formatos comúns de tipos de letra en PF2" - -#: util/grub-mkfont.c:1182 util/grub-mkrescue.c:483 -#: util/grub-mkstandalone.c:306 -msgid "output file must be specified" -msgstr "debe especificarse o ficheiro de saída" - -#: util/grub-mkfont.c:1185 -msgid "FT_Init_FreeType fails" -msgstr "Fallou FT_Init_FreeType" - -#: util/grub-mkfont.c:1199 -#, c-format -msgid "can't open file %s, index %d: error %d" -msgstr "non se pode abrir o ficheiro %s, índice %d: erro %d" - -#: util/grub-mkfont.c:1229 -#, fuzzy, c-format -msgid "can't set %dx%d font size: Freetype error %d: %s" -msgstr "non se pode estabelecer o tamaño %dx%d do tipo de letra" - -#: util/grub-mkimage.c:67 -#, fuzzy -msgid "set prefix directory" -msgstr "estabeleza o prefixo do cartafol [predeterminado=%s]" - -#. TRANSLATORS: "memdisk" here isn't an identifier, it can be translated. -#. "embed" is a verb (command description). " -#: util/grub-mkimage.c:71 -#, fuzzy -msgid "" -"embed FILE as a memdisk image\n" -"Implies `-p (memdisk)/boot/grub' and overrides any prefix supplied " -"previously, but the prefix itself can be overridden by later options" -msgstr "" -"incorpora FICHEIRO como unha imaxe do disco de memoria\n" -"Implica «-p (memdisk)/boot/grub» pero o prefixo pódese sobrescribir con " -"opcións posteriores" - -#: util/grub-mkimage.c:74 -#, fuzzy -msgid "embed FILE as a device tree (DTB)\n" -msgstr "incorpora FICHEIRO como configuración adiantada" - -#: util/grub-mkimage.c:76 -msgid "embed FILE as an early config" -msgstr "incorpora FICHEIRO como configuración adiantada" - -#. TRANSLATORS: NOTE is a name of segment. -#: util/grub-mkimage.c:80 -msgid "add NOTE segment for CHRP IEEE1275" -msgstr "engadir o segmento NOTA para CHRP IEEE1275" - -#: util/grub-mkimage.c:81 -msgid "output a generated image to FILE [default=stdout]" -msgstr "imprime unha imaxe xerada no FICHEIRO [predeterminado=stdout]" - -#: util/grub-mkimage.c:82 -msgid "FORMAT" -msgstr "FORMATO" - -#: util/grub-mkimage.c:100 util/grub-mkstandalone.c:62 -msgid "generate an image in FORMAT" -msgstr "xerar unha imaxe en FORMATO" - -#: util/grub-mkimage.c:101 util/grub-mkstandalone.c:63 -msgid "available formats:" -msgstr "formatos dispoñíbeis:" - -#: util/grub-mkimage.c:152 util/grub-mkstandalone.c:96 -#, c-format -msgid "unknown target format %s\n" -msgstr "formato de destino descoñecido %s\n" - -#: util/grub-mkimage.c:242 -msgid "[OPTION]... [MODULES]" -msgstr "[OPCIÓN]... [MÓDULOS]" - -#: util/grub-mkimage.c:243 -msgid "Make a bootable image of GRUB." -msgstr "Facer unha imaxe arrancábel de GRUB." - -#: util/grub-mkimage.c:273 util/grub-mkstandalone.c:309 -msgid "Target format not specified (use the -O option)." -msgstr "Formato de destino non especificado (utilice a opción -O)." - -#: util/grub-mkimage.c:282 -#, fuzzy -msgid "Prefix not specified (use the -p option)." -msgstr "Formato de destino non especificado (utilice a opción -O)." - -#: util/grub-mkimage.c:318 util/setup.c:793 -#, fuzzy, c-format -msgid "cannot close `%s': %s" -msgstr "non se pode abrir «%s»: %s" - -#: util/grub-mkimagexx.c:2191 -#, c-format -msgid "" -"`%s' is miscompiled: its start address is 0x%llx instead of 0x%llx: ld.gold " -"bug?" -msgstr "" - -#: util/grub-mklayout.c:53 -msgid "set input filename. Default is STDIN" -msgstr "estabelecer o nome de ficheiro de entrada. O predeterminado é STDIN" - -#. TRANSLATORS: scan identifier is keyboard key symbolic name. -#: util/grub-mklayout.c:307 -#, c-format -msgid "Unknown keyboard scan identifier %s\n" -msgstr "Identificador do teclado descoñecido %s\n" - -#. TRANSLATORS: scan code is keyboard key numeric identifier. -#: util/grub-mklayout.c:390 util/grub-mklayout.c:418 -#, c-format -msgid "Unknown keyboard scan code 0x%02x\n" -msgstr "Código de teclado descoñecido 0x%02x\n" - -#. TRANSLATORS: this error is triggered when input doesn't contain any -#. key descriptions. -#: util/grub-mklayout.c:438 -msgid "ERROR: no valid keyboard layout found. Check the input.\n" -msgstr "" -"ERRO: non se atopou un deseño de teclado correcto. Comprobe a entrada.\n" - -#. TRANSLATORS: "one" is a shortcut for "keyboard layout". -#: util/grub-mklayout.c:478 -msgid "Generate GRUB keyboard layout from Linux console one." -msgstr "Xerar un deseño de teclado GRUB a partir do da consola." - -#: util/grub-mknetdir.c:47 -msgid "root directory of TFTP server" -msgstr "cartafol raíz no servidor TFTP" - -#: util/grub-mknetdir.c:49 -msgid "relative subdirectory on network server" -msgstr "cartafol relativo no servidor de rede" - -#: util/grub-mknetdir.c:88 -msgid "" -"Prepares GRUB network boot images at net_directory/subdir assuming " -"net_directory being TFTP root." -msgstr "" - -#: util/grub-mknetdir.c:146 -#, fuzzy, c-format -msgid "unsupported platform %s" -msgstr "Plataforma non compatíbel %s\\n" - -#. TRANSLATORS: First %s is replaced by platform name. Second one by filename. -#: util/grub-mknetdir.c:165 -#, fuzzy, c-format -msgid "" -"Netboot directory for %s created. Configure your DHCP server to point to %s\n" -msgstr "" -"Creouse o cartafol de arranque desde rede para %s. Configure o seu servidor " -"DHCP para apuntar a %s\\n" - -#: util/grub-mkpasswd-pbkdf2.c:46 -msgid "Number of PBKDF2 iterations" -msgstr "Número de iteracións PBKDF2" - -#: util/grub-mkpasswd-pbkdf2.c:47 -msgid "Length of generated hash" -msgstr "Tamaño do hash xerado" - -#: util/grub-mkpasswd-pbkdf2.c:48 -msgid "Length of salt" -msgstr "Tamaño do salgado (salt)" - -#: util/grub-mkpasswd-pbkdf2.c:87 -msgid "Generate PBKDF2 password hash." -msgstr "Xerar o hash dun contrasinal PBKDF2." - -#: util/grub-mkpasswd-pbkdf2.c:144 util/grub-mkpasswd-pbkdf2.c:151 -msgid "failure to read password" -msgstr "fallo ao ler o contrasinal" - -#: util/grub-mkpasswd-pbkdf2.c:146 -msgid "Reenter password: " -msgstr "Reescribir o contrasinal: " - -#: util/grub-mkpasswd-pbkdf2.c:160 -msgid "passwords don't match" -msgstr "os contrasinais non coinciden" - -#: util/grub-mkpasswd-pbkdf2.c:169 -msgid "couldn't retrieve random data for salt" -msgstr "non se poden recuperar datos aleatorios para o salgado (salt)" - -#: util/grub-mkpasswd-pbkdf2.c:184 -#, c-format -msgid "cryptographic error number %d" -msgstr "erro de cifrado número %d" - -#: util/grub-mkpasswd-pbkdf2.c:203 -#, c-format -msgid "PBKDF2 hash of your password is %s\n" -msgstr "O hash do PBKDF2 do seu contrasinal é %s\n" - -#: util/grub-mkrelpath.c:67 -msgid "No path is specified.\n" -msgstr "Non se especificou a ruta.\n" - -#: util/grub-mkrelpath.c:78 -msgid "PATH" -msgstr "RUTA" - -#: util/grub-mkrelpath.c:79 -msgid "Transform a system filename into GRUB one." -msgstr "Transformar un nome de ficheiro do sistema nun de GRUB." - -#: util/grub-mkrescue.c:100 -msgid "save ROM images in DIR [optional]" -msgstr "gardar imaxes ROM no CARTAFOL [opcional]" - -#. TRANSLATORS: xorriso is a program for creating ISOs and burning CDs. -#: util/grub-mkrescue.c:103 -msgid "use FILE as xorriso [optional]" -msgstr "utilizar FICHEIRO como xorriso [opcional]" - -#: util/grub-mkrescue.c:109 -msgid "use STRING as product name" -msgstr "utilizar CADEA como nome de produto" - -#: util/grub-mkrescue.c:111 -msgid "" -"enable sparc boot. Disables HFS+, APM, ARCS and boot as disk image for i386-" -"pc" -msgstr "" -"activar arranque sparc. Desactiva HFS+, APM, ARCS e arranca como imaxe de " -"disco para PC i386" - -#: util/grub-mkrescue.c:112 -msgid "" -"enable ARCS (big-endian mips machines, mostly SGI) boot. Disables HFS+, APM, " -"sparc64 and boot as disk image for i386-pc" -msgstr "" -"activa o arranque ARCS (máquinas mips tipo big-endian, maiormente SGI). " -"Desactiva HFS+, APM, sparc64 e arranca como imaxe de disco en PC i386" - -#. TRANSLATORS: it generates one single image which is bootable through any method. -#: util/grub-mkrescue.c:125 -msgid "Make GRUB CD-ROM, disk, pendrive and floppy bootable image." -msgstr "" -"Facer imaxe de do GRUB en CD-ROM, disco, dispositivo USB ou disquete " -"arrancábel." - -#: util/grub-mkrescue.c:130 -#, fuzzy, c-format -msgid "" -"Generates a bootable CD/USB/floppy image. Arguments other than options to " -"this program are passed to xorriso, and indicate source files, source " -"directories, or any of the mkisofs options listed by the output of `%s'." -msgstr "" -"%s xera unha imaxe de rescate arrancábel con ficheiros de orixe específicos, " -"cartafoles de orixe ou as opcións mkisofs listadas na saída de «%s»\\n" - -#: util/grub-mkrescue.c:134 -msgid "Option -- switches to native xorriso command mode." -msgstr "Opción -- troca o modo de ordes ao nativo de xorriso." - -#: util/grub-mkrescue.c:135 -msgid "Mail xorriso support requests to ." -msgstr "" -"O enderezo de correo para solicitudes de apoio técnico a ." - -#: util/grub-mkrescue.c:221 util/grub-mkstandalone.c:114 -#, fuzzy -msgid "[OPTION] SOURCE..." -msgstr "Utilización: %s [OPCIÓN] ORIXE...\\n" - -#: util/grub-mkrescue.c:257 util/grub-mkrescue.c:300 util/grub-mkrescue.c:588 -#, fuzzy, c-format -msgid "enabling %s support ..." -msgstr "Activando o apoio de %s ...\\n" - -#: util/grub-mkrescue.c:486 -#, fuzzy -msgid "xorriso not found" -msgstr "non se atopou a tarxeta" - -#: util/grub-mkrescue.c:623 -msgid "" -"Your xorriso doesn't support `--grub2-boot-info'. Some features are " -"disabled. Please use xorriso 1.2.9 or later." -msgstr "" -"O seu xorriso non admite «--grub2-boot-info». Algunhas funcionalidades están " -"desactivadas. Utilice xorriso 1.2.9 ou posterior." - -#: util/grub-mkrescue.c:650 -msgid "" -"Your xorriso doesn't support `--grub2-boot-info'. Your core image is too " -"big. Boot as disk is disabled. Please use xorriso 1.2.9 or later." -msgstr "" -"O seu xorriso non admite «--grub2-boot-info». A imaxe principal é demasiado " -"grande. Arrancar como disco está desactivado. Utilice xorriso 1.2.9 ou " -"posterior." - -#: util/grub-mkstandalone.c:115 -msgid "" -"Generate a standalone image (containing all modules) in the selected format" -msgstr "" -"Xerar unha imaxe independente (que conteña todos os módulos) no formato " -"seleccionado" - -#: util/grub-mkstandalone.c:115 -msgid "Graft point syntax (E.g. /boot/grub/grub.cfg=./grub.cfg) is accepted" -msgstr "" - -#: util/grub-mount.c:552 -msgid "IMAGE1 [IMAGE2 ...] MOUNTPOINT" -msgstr "IMAXE1 [IMAXE2 ...] PUNTO_DE_MONTAXE" - -#: util/grub-mount.c:575 -msgid "need an image and mountpoint" -msgstr "necesita unha imaxe e un punto de montaxe" - -#: util/grub-probe.c:731 -msgid "given argument is a system device, not a path" -msgstr "o argumento dado é un dispositivo do sistema, non unha ruta" - -#: util/grub-probe.c:736 -msgid "separate items in output using ASCII NUL characters" -msgstr "" - -#: util/grub-probe.c:754 -#, c-format -msgid "[default=%s]" -msgstr "" - -#: util/grub-probe.c:756 -#, fuzzy -msgid "print TARGET" -msgstr "DESTINO" - -#: util/grub-probe.c:757 -#, fuzzy -msgid "available targets:" -msgstr "formatos dispoñíbeis:" - -#: util/grub-probe.c:839 -msgid "[OPTION]... [PATH|DEVICE]" -msgstr "[OPCIÓN]... [RUTA|DISPOSITIVO]" - -#: util/grub-probe.c:840 -msgid "" -"Probe device information for a given path (or device, if the -d option is " -"given)." -msgstr "" -"Comproba a información do dispositivo nunha ruta dada (ou nun dispositivo, " -"no caso de ter a opción -d)." - -#: util/grub-render-label.c:60 -msgid "read text from FILE." -msgstr "ler o texto do FICHEIRO." - -#: util/grub-render-label.c:62 -msgid "use COLOR for text" -msgstr "utilizar COR para texto" - -#: util/grub-render-label.c:64 -msgid "use COLOR for background" -msgstr "utilizar COR de fondo" - -#. TRANSLATORS: The result is always stored to file and -#. never shown directly, so don't use "show" as synonym for render. Use "create" if -#. "render" doesn't translate directly. -#: util/grub-render-label.c:69 -#, fuzzy -msgid "set the label to render" -msgstr "estabelecer a etiqueta que renderizar." - -#: util/grub-render-label.c:73 -msgid "use FILE as font (PF2)." -msgstr "utilizar FICHEIRO como tipo de letra (PF2)." - -#. TRANSLATORS: This file takes a text and creates a graphical representation of it, -#. putting the result into .disk_label file. The result is always stored to file and -#. never shown directly, so don't use "show" as synonym for render. Use "create" if -#. "render" doesn't translate directly. -#: util/grub-render-label.c:136 -msgid "Render Apple .disk_label." -msgstr "Renderizar a .disk_label de Apple." - -#: util/grub-render-label.c:158 util/grub-syslinux2cfg.c:169 -msgid "Missing arguments\n" -msgstr "Faltan argumentos\n" - -#: util/grub-script-check.c:87 -msgid "[PATH]" -msgstr "[RUTA]" - -#: util/grub-script-check.c:88 -msgid "Checks GRUB script configuration file for syntax errors." -msgstr "" -"Comproba o ficheiro de configuración do script de GRUB en busca de erros de " -"sintaxe." - -#: util/grub-script-check.c:207 -#, c-format -msgid "Syntax error at line %u\n" -msgstr "Erro sintáctico na liña %u\n" - -#: util/grub-script-check.c:212 -#, c-format -msgid "Script `%s' contains no commands and will do nothing\n" -msgstr "" - -#: util/grub-setup.c:79 -#, c-format -msgid "use FILE as the boot image [default=%s]" -msgstr "utilizar FICHEIRO como imaxe de arranque [predeterminado=%s]" - -#: util/grub-setup.c:81 -#, c-format -msgid "use FILE as the core image [default=%s]" -msgstr "utilizar FICHEIRO como imaxe principal [predeterminado=%s]" - -#: util/grub-setup.c:210 -msgid "No device is specified.\n" -msgstr "Non se especificou ningún dispositivo.\n" - -#: util/grub-setup.c:224 -msgid "" -"Set up images to boot from DEVICE.\n" -"\n" -"You should not normally run this program directly. Use grub-install instead." -msgstr "" -"Configurar imaxes de arranque desde o DISPOSITIVO.\n" -"\n" -"Non debería executar este programa directamente de modo ordinario. Utilice " -"grub-install maiormente." - -#: util/grub-setup.c:228 -msgid "DEVICE must be an OS device (e.g. /dev/sda)." -msgstr "O DISPOSITIVO debe ser un de sistema operativo (i.e. /dev/sda)." - -#: util/grub-setup.c:297 -#, c-format -msgid "Invalid device `%s'.\n" -msgstr "Dispositivo incorrecto «%s».\n" - -#: util/grub-syslinux2cfg.c:64 -msgid "root directory as it will be seen on runtime [default=/]." -msgstr "" - -#: util/grub-syslinux2cfg.c:69 -msgid "" -"current directory of syslinux as it will be seen on runtime [default is " -"parent directory of input file]." -msgstr "" - -#: util/grub-syslinux2cfg.c:74 -#, fuzzy -msgid "write output to FILE [default=stdout]." -msgstr "imprime unha configuración xerada no FICHEIRO [predeterminado=stdout]" - -#: util/grub-syslinux2cfg.c:148 -#, fuzzy -msgid "Transform syslinux config into GRUB one." -msgstr "Transformar un nome de ficheiro do sistema nun de GRUB." - -#: util/mkimage.c:688 util/mkimage.c:717 util/mkimage.c:734 -msgid "cannot compress the kernel image" -msgstr "non é posíbel comprimir a imaxe do núcleo" - -#: util/mkimage.c:766 util/mkimage.c:1077 -#, fuzzy, c-format -msgid "unknown compression %d" -msgstr "compresión descoñecida %d\n" - -#: util/mkimage.c:1088 -msgid "Decompressor is too big" -msgstr "O descompresor é demasiado grande" - -#: util/mkimage.c:1133 -#, c-format -msgid "core image is too big (0x%x > 0x%x)" -msgstr "a imaxe principal é demasiado grande (0x%x > 0x%x)" - -#: util/mkimage.c:1140 -#, c-format -msgid "kernel image is too big (0x%x > 0x%x)" -msgstr "a imaxe do núcleo é demasiado grande (0x%x > 0x%x)" - -#: util/mkimage.c:1220 util/mkimage.c:1501 -#, c-format -msgid "diskboot.img size must be %u bytes" -msgstr "o tamaño de diskboot.img debe ser de %u bytes" - -#: util/mkimage.c:1571 -msgid "" -"fwstart.img doesn't match the known good version. proceed at your own risk" -msgstr "" -"fwstart.img non acha a versión boa coñecida. Proceda segundo o seu propio " -"criterio" - -#: util/mkimage.c:1575 util/mkimage.c:1601 -msgid "firmware image is too big" -msgstr "a imaxe do firmware é demasiado grande" - -#: util/resolve.c:93 -#, c-format -msgid "invalid line format: %s" -msgstr "formato de liña incorrecto: %s" - -#: util/setup.c:167 -msgid "the first sector of the core file is not sector-aligned" -msgstr "o primeiro sector do ficheiro principal non está aliñado co sector" - -#: util/setup.c:177 -msgid "non-sector-aligned data is found in the core file" -msgstr "atopáronse datos do sector non aliñado no ficheiro principal" - -#: util/setup.c:199 -msgid "the sectors of the core file are too fragmented" -msgstr "os sectores do ficheiro principal están demasiado fragmentados" - -#: util/setup.c:280 -#, c-format -msgid "the size of `%s' is not %u" -msgstr "o tamaño de «%s» non é %u" - -#: util/setup.c:290 -#, c-format -msgid "the size of `%s' is too small" -msgstr "o tamaño de «%s» é demasiado pequeno" - -#: util/setup.c:428 -msgid "" -"Attempting to install GRUB to a disk with multiple partition labels or both " -"partition label and filesystem. This is not supported yet." -msgstr "" -"Tentando instalar o GRUB nun disco con múltiplas etiquetas de partición ou " -"tanto con etiquetas de partición e sistema de ficheiros. Aínda non se " -"permite iso." - -#: util/setup.c:441 -#, c-format -msgid "unable to identify a filesystem in %s; safety check can't be performed" -msgstr "" -"non é posíbel identificar un sistema de ficheiros en %s; non se pode facer a " -"proba de seguranza" - -#. TRANSLATORS: Filesystem may reserve the space just GRUB isn't sure about it. -#: util/setup.c:445 -#, c-format -msgid "" -"%s appears to contain a %s filesystem which isn't known to reserve space for " -"DOS-style boot. Installing GRUB there could result in FILESYSTEM " -"DESTRUCTION if valuable data is overwritten by grub-setup (--skip-fs-probe " -"disables this check, use at your own risk)" -msgstr "" -"parece que %s contén un sistema de ficheiros %s que non se sabe se reserva " -"ningún espazo para un arranque de tipo DOS. Instalar GRUB pode conducir á " -"DESTRUCIÓN do SISTEMA_DE_FICHEIROS se datos valiosos se sobrescriben coa " -"instalación de grub (--skip-fs-probe desactiva esta comprobación, utilícea " -"segundo o seu propio criterio)" - -#. TRANSLATORS: Partition map may reserve the space just GRUB isn't sure about it. -#: util/setup.c:458 -#, c-format -msgid "" -"%s appears to contain a %s partition map which isn't known to reserve space " -"for DOS-style boot. Installing GRUB there could result in FILESYSTEM " -"DESTRUCTION if valuable data is overwritten by grub-setup (--skip-fs-probe " -"disables this check, use at your own risk)" -msgstr "" -"%s parece conter un mapa de partición %s que non se sabe se reserva espazo " -"para o arranque de estilo DOS. Instalar o GRUB alí pode conducir á " -"DESTRUCIÓN do SISTEMA_ DE_FICHEIROS se datos valiosos se sobrescriben coa " -"instalación do grub (--ignore-fs-examine desactiva esta comprobación; " -"utilícea segundo o seu propio criterio)" - -#: util/setup.c:465 -#, c-format -msgid "" -"%s appears to contain a %s partition map and LDM which isn't known to be a " -"safe combination. Installing GRUB there could result in FILESYSTEM " -"DESTRUCTION if valuable data is overwritten by grub-setup (--skip-fs-probe " -"disables this check, use at your own risk)" -msgstr "" -"%s parece conter un mapa de partición %s e LDM que non se sabe se ten unha " -"combinación segura. Instalar o GRUB alí pode conducir á DESTRUCIÓN do " -"SISTEMA_ DE_FICHEIROS se determinados datos valiosos se sobrescriben coa " -"instalación do grub (--skip-fs-probe desactiva esta comprobación; utilícea " -"segundo o seu propio criterio)" - -#: util/setup.c:478 -msgid "" -"Attempting to install GRUB to a partitionless disk or to a partition. This " -"is a BAD idea." -msgstr "" -"Tentar instalar o GRUB nun disco sen particionar ou nunha partición. É moi " -"MALA idea." - -#: util/setup.c:483 -msgid "" -"Attempting to install GRUB to a disk with multiple partition labels. This " -"is not supported yet." -msgstr "" -"Tentar instalar o GRUB nun disco con múltiplas etiquetas de partición. Isto " -"aínda non é quen de facelo." - -#: util/setup.c:489 -#, c-format -msgid "Partition style `%s' doesn't support embedding" -msgstr "O estilo de partición «%s» non admite a incorporación" - -#: util/setup.c:496 -#, c-format -msgid "File system `%s' doesn't support embedding" -msgstr "O sistema de ficheiro «%s» non admite a incorporación" - -#: util/setup.c:537 -msgid "Your embedding area is unusually small. core.img won't fit in it." -msgstr "" -"A súa área de incorporación é estrañamente pequena. A core.img no caberá " -"nela." - -#: util/setup.c:559 util/setup.c:725 util/setup.c:844 -msgid "no terminator in the core image" -msgstr "non hai terminador na imaxe principal" - -#: util/setup.c:622 -msgid "core.img version mismatch" -msgstr "non coincide a versión da core.img" - -#: util/setup.c:675 -msgid "" -"embedding is not possible, but this is required for RAID and LVM install" -msgstr "" -"a incorporación non é posíbel pero resulta requirida para instalación RAID e " -"LVM" - -#: util/setup.c:682 -#, c-format -msgid "can't determine filesystem on %s" -msgstr "non se pode determinar o sistema de ficheiros de %s" - -#: util/setup.c:685 -#, c-format -msgid "filesystem `%s' doesn't support blocklists" -msgstr "o sistema de ficheiros «%s» non admite listas de bloques" - -#. TRANSLATORS: cross-disk refers to /boot being on one disk -#. but MBR on another. -#: util/setup.c:694 -msgid "embedding is not possible, but this is required for cross-disk install" -msgstr "" -"non é posíbel a incorporación pero resulta requirido para a instalación " -"entre particións (cross-disk)" - -#: util/setup.c:700 -msgid "" -"Embedding is not possible. GRUB can only be installed in this setup by " -"using blocklists. However, blocklists are UNRELIABLE and their use is " -"discouraged." -msgstr "" -"Non é posíbel a incorporación. GRUB só se pode instalar nesta configuración " -"mediante o uso de listas de bloques. Porén, as listas de bloques non son " -"FIÃBEIS e non se recomenda o seu uso." - -#. TRANSLATORS: Here GRUB refuses to continue with blocklist install. -#: util/setup.c:705 -msgid "will not proceed with blocklists" -msgstr "non se procederá mediante listas de bloques" - -#: util/setup.c:817 util/setup.c:837 -msgid "blocklists are invalid" -msgstr "as listas de bloques non son correctas" - -#: util/setup.c:847 -#, fuzzy -msgid "blocklists are incomplete" -msgstr "as listas de bloques non son correctas" - -#~ msgid "Address range not associated with RAM" -#~ msgstr "Intervalo de enderezos non asociado coa RAM" - -#~ msgid "PUBKEY_FILE" -#~ msgstr "FICHEIRODECHAVEPÚBLICA" - -#~ msgid "%.*s: ARGP_HELP_FMT parameter must be positive" -#~ msgstr "%.*s: ARGP_HELP_FMT o parámetro debe ser positivo" - -#~ msgid "%s: option '--%s' doesn't allow an argument\n" -#~ msgstr "%s: a opción «--%s» non permite un argumento\n" - -#~ msgid "%s: unrecognized option '--%s'\n" -#~ msgstr "%s: opción non recoñecida «--%s»\n" - -#~ msgid "%s: option '-W %s' doesn't allow an argument\n" -#~ msgstr "%s: a opción «-W %s» non permite un argumento\n" - -#~ msgid "%s: option '-W %s' requires an argument\n" -#~ msgstr "%s: a opción «-W %s» require un argumento\n" - -#~ msgid "grub_memalign is not supported on your system" -#~ msgstr "grub_memalign non é compatíbel co seu sistema" - -#~ msgid "If FILENAME is `-', the default value %s is used." -#~ msgstr "Se o NOMEDOFICHEIRO é '-', utilizarase o valor predeterminado %s." - -#~ msgid "Unsupported substitution flag: 0x%x\n" -#~ msgstr "Marca de substitución non compatíbel: 0x%x\n" - -#~ msgid "Unknown gsub font feature 0x%x (%s)\n" -#~ msgstr "Descoñécese a funcionalidade 0x%x (%s) do tipo de letra gsub\n" - -#~ msgid "save only the ASCII bitmaps" -#~ msgstr "gardar soamente os bitmaps ASCII" - -#~ msgid "create width summary file" -#~ msgstr "crear o ficheiro de resumo de largura" - -#~ msgid "Option --ascii-bitmaps doesn't accept ranges (it always uses ASCII)." -#~ msgstr "" -#~ "Opción --ascii-bitmaps non acepta intervalos (sempre utiliza ASCII)." - -#~ msgid "WARNING: your random generator isn't known to be secure\n" -#~ msgstr "AVISO: non se sabe se o xerador aleatorio é seguro\n" - -#~ msgid "" -#~ "print filesystem module, GRUB drive, system device, partition map module, " -#~ "abstraction module or cryptographic container UUID [default=fs]" -#~ msgstr "" -#~ "imprimir un módulo do sistema de ficheiros, unidade de GRUB, dispositivo " -#~ "do sistema, módulo do mapa de particións, módulo de abstracción ou " -#~ "contedor UUID cifrado [predeterminado=fs]" - -#~ msgid "failed to read the first sector of the core image" -#~ msgstr "fallou a lectura do primeiro sector da imaxe principal" - -#~ msgid "print this message and exit" -#~ msgstr "imprimir esta mensaxe e saír" - -#~ msgid "use FILE as grub-setup" -#~ msgstr "" -#~ "utilizar FICHEIRO como configuración de instalación do grub (grub-setup)" - -#~ msgid "use FILE as grub-mkrelpath" -#~ msgstr "utilizar FICHEIRO como grub-mkrelpath" - -#~ msgid "use FILE as grub-probe" -#~ msgstr "utilizar FICHEIRO como comprobación do grub (grub-probe)" - -#~ msgid "INSTALL_DEVICE must be system device filename." -#~ msgstr "" -#~ "DISPOSITIVO_DE_INSTALACIÓN debe ser o nome do ficheiro do sistema do " -#~ "dispositivo." - -#~ msgid "Report bugs to ." -#~ msgstr "Informe dos erros a ." - -#~ msgid "" -#~ "Path `%s' is not readable by GRUB on boot. Installation is impossible. " -#~ "Aborting.\\n" -#~ msgstr "" -#~ "A ruta «%s» non é lexíbel para o GRUB no arranque. A instalación resulta " -#~ "imposíbel. Abortándoa.\\n" - -#~ msgid "Auto-detection of a filesystem of %s failed.\\n" -#~ msgstr "Fallou a autodetección dun sistema de ficheiros de %s.\\n" - -#~ msgid "Try with --recheck." -#~ msgstr "Tentar con --recheck." - -#~ msgid "" -#~ "If the problem persists please report this together with the output of %s " -#~ "to <%s>" -#~ msgstr "Se o problema subsiste, informe del e achegue a saída de %s a <%s>" - -#~ msgid "`%s' failed.\\n" -#~ msgstr "fallou «%s».\\n" - -#~ msgid "" -#~ "Can't find GRUB drive for %s; unable to create EFI Boot Manager entry.\\n" -#~ msgstr "" -#~ "No se pode atopar a unidade GRUB para %s; non é posíbel crear a entrada " -#~ "do xestor de arranque EFI.\\n" - -#~ msgid "Usage: %s -o OUTPUT CKBMAP_ARGUMENTS...\\n" -#~ msgstr "Utilización: %s -o SAÃDA ARGUMENTOS_CKBMAP...\\n" - -#~ msgid "Make GRUB keyboard layout file." -#~ msgstr "Facer un ficheiro co deseño do teclado GRUB." - -#~ msgid "print the version information and exit" -#~ msgstr "imprimir a versión da información e saír" - -#~ msgid "%s generates a keyboard layout for GRUB using ckbcomp\\n" -#~ msgstr "%s xera un deseño de teclado para GRUB utilizando ckbcomp\\n" - -#~ msgid "%s: option requires an argument -- `%s'\\n" -#~ msgstr "%s: a opción require un argumento -- «%s»\\n" - -#~ msgid "Usage: %s [OPTION]\\n" -#~ msgstr "Utilización: %s [OPCIÓN]\\n" - -#~ msgid "Generate a grub config file" -#~ msgstr "Xerar un ficheiro de configuración do GRUB" - -#~ msgid "%s: You must run this as root\\n" -#~ msgstr "%s: Debe executar isto como root\\n" - -#~ msgid "Generating grub.cfg ..." -#~ msgstr "Xerando o grub.cfg ..." - -#~ msgid "" -#~ "Syntax errors are detected in generated GRUB config file.\n" -#~ "Ensure that there are no errors in /etc/default/grub\n" -#~ "and /etc/grub.d/* files or please file a bug report with\n" -#~ "%s file attached." -#~ msgstr "" -#~ "Detectáronse erros sintácticos no ficheiro de configuración do GRUB " -#~ "xerado.\n" -#~ "Asegúrese de que non hai erros en /etc/default/grub\n" -#~ "e nos ficheiros /etc/grub.d/* ou escriba un informe de erro co\n" -#~ "%s ficheiro anexado." - -#~ msgid "done" -#~ msgstr "feito" - -#~ msgid "Warning:" -#~ msgstr "Aviso:" - -#~ msgid "" -#~ "%s copies GRUB images into net_directory/subdir/target_cpu-platform\\n" -#~ msgstr "" -#~ "%s copia imaxes do GRUB dentro de cartafol_de_rede/subcartafol/" -#~ "plataforma_de_cpu_destino\\n" - -#~ msgid "use FILE as grub-render-label" -#~ msgstr "utilizar FICHEIRO como grub-render-label" - -#~ msgid "Usage: %s [OPTION] MENU_ENTRY\\n" -#~ msgstr "Utilización: %s [OPCIÓN] ENTRADA_DE_MENÚ\\n" - -#~ msgid "Set the default boot menu entry for GRUB, for the next boot only." -#~ msgstr "" -#~ "Estabelecer a entrada predeterminada do menú de arranque no GRUB, só para " -#~ "o seguinte arranque." - -#~ msgid "" -#~ "expect GRUB images under the directory DIR/%s instead of the %s directory" -#~ msgstr "" -#~ "esperábanse as imaxes do GRUB no cartafol CARTAFOL//%s en lugar do " -#~ "cartafol %s" - -#~ msgid "MENU_ENTRY is a number, a menu item title or a menu item identifier." -#~ msgstr "" -#~ "ENTRADA_DE_MENÚ é un número, un elemento do menú ou un identificador dun " -#~ "elemento do menú." - -#~ msgid "More than one menu entry?" -#~ msgstr "Máis ca unha entrada do menú?" - -#~ msgid "Menu entry not specified." -#~ msgstr "A entrada do menú non está especificada." - -#~ msgid "Set the default boot menu entry for GRUB." -#~ msgstr "Estabelecer a entrada predeterminada do menú de arranque no GRUB." - -#~ msgid "This requires setting GRUB_DEFAULT=saved in %s/default/grub.\\n" -#~ msgstr "" -#~ "Isto require a opción GRUB_PREDETERMINADO=gardada en %s/default/grub.\\n" - -#~ msgid "" -#~ "Requested serial terminal but GRUB_SERIAL_COMMAND is unspecified. Default " -#~ "parameters will be used." -#~ msgstr "" -#~ "Solicitouse o terminal serie pero non está especificado " -#~ "GRUB_SERIAL_COMMAND. Utilizaranse os parámetros predeterminados." - -#~ msgid "Found theme: %s\\n" -#~ msgstr "Atopouse o tema: %s\\n" - -#~ msgid "Found background: %s\\n" -#~ msgstr "Atopouse o fondo: %s\\n" - -#~ msgid "Unsupported image format" -#~ msgstr "Formato de imaxe incompatíbel" - -#~ msgid "Found GNU Mach: %s" -#~ msgstr "Atopouse o micronúcleo GNU Mach: %s" - -#~ msgid "Found Hurd module: %s" -#~ msgstr "Atopouse o módulo Hurd: %s" - -#~ msgid "Some Hurd stuff found, but not enough to boot." -#~ msgstr "Atopouse algo máis de Hurd pero non chega para arrancar." - -#~ msgid "%s, with Hurd %s (recovery mode)" -#~ msgstr "%s, co Hurd %s (modo restauración)" - -#~ msgid "%s, with Hurd %s" -#~ msgstr "%s, co Hurd %s" - -#~ msgid "" -#~ "Please don't use old title `%s' for GRUB_DEFAULT, use `%s' (for versions " -#~ "before 2.00) or `%s' (for 2.00 or later)" -#~ msgstr "" -#~ "Non use o vello título «%s» para GRUB_DEFAULT, utilice «%s» (para " -#~ "versións anteriores á 2.00) ou «%s» (para a 2.00 ou posteriores)" - -#~ msgid "Loading GNU Mach ..." -#~ msgstr "Cargando GNU Mach ..." - -#~ msgid "Loading the Hurd ..." -#~ msgstr "Cargando o Hurd ..." - -#~ msgid "Advanced options for %s" -#~ msgstr "Opcións avanzadas para %s" - -#~ msgid "Loading kernel of Illumos ..." -#~ msgstr "Cargando o núcleo de Illumos ..." - -#~ msgid "%s, with kFreeBSD %s (recovery mode)" -#~ msgstr "%s, con kFreeBSD %s (modo restauración)" - -#~ msgid "%s, with kFreeBSD %s" -#~ msgstr "%s, con kFreeBSD %s" - -#~ msgid "Loading kernel of FreeBSD %s ..." -#~ msgstr "Cargando o núcleo de FreeBSD %s ..." - -#~ msgid "Found kernel of FreeBSD: %s\\n" -#~ msgstr "Atopouse o núcleo de FreeBSD: %s\\n" - -#~ msgid "Found kernel module directory: %s\\n" -#~ msgstr "Atopouse o cartafol do módulo núcleo: %s\\n" - -#~ msgid "%s, with Linux %s (recovery mode)" -#~ msgstr "%s, con Linux %s (modo restauración)" - -#~ msgid "%s, with Linux %s" -#~ msgstr "%s, con Linux %s" - -#~ msgid "Loading Linux %s ..." -#~ msgstr "Cargando Linux %s ..." - -#~ msgid "Loading initial ramdisk ..." -#~ msgstr "Cargando o ramdisk inicial ..." - -#~ msgid "Found linux image: %s\\n" -#~ msgstr "Atopouse a imaxe de linux: %s\\n" - -#~ msgid "Found initrd image: %s\\n" -#~ msgstr "Atopouse a imaxe initrd: %s\\n" - -#~ msgid "%s, with kernel %s (via %s, recovery mode)" -#~ msgstr "%s, con núcleo %s (vía %s, modo de restauración)" - -#~ msgid "%s, with kernel %s (via %s)" -#~ msgstr "%s, con núcleo %s (vía %s)" - -#~ msgid "Found NetBSD kernel: %s\\n" -#~ msgstr "Atopouse o núcleo NetBSD: %s\\n" - -#~ msgid "Windows Vista/7 (loader)" -#~ msgstr "Windows Vista/7 (cargador)" - -#~ msgid "Windows NT/2000/XP (loader)" -#~ msgstr "Windows NT/2000/XP (cargador)" - -#~ msgid "Found %s on %s (%s)\\n" -#~ msgstr "Atopouse %s en %s (%s)\\n" - -#~ msgid "(32-bit)" -#~ msgstr "(32-bit)" - -#~ msgid "(64-bit)" -#~ msgstr "(64-bit)" - -#~ msgid "(on %s)" -#~ msgstr "(en %s)" - -#~ msgid "%s, with Xen %s and Linux %s (recovery mode)" -#~ msgstr "%s, con Xen %s e Linux %s (modo restauración)" - -#~ msgid "%s, with Xen %s and Linux %s" -#~ msgstr "%s, con Xen %s e Linux %s" - -#~ msgid "Loading Xen %s ..." -#~ msgstr "Cargando Xen %s ..." - -#~ msgid "Xen hypervisor, version %s" -#~ msgstr "Hipervisor Xen, versión %s" - -#~ msgid "Advanced options for %s (with Xen hypervisor)" -#~ msgstr "Opcións avanzadas de %s (co hipervisor Xen)" - -#~ msgid "Found %s on %s\\n" -#~ msgstr "Atopouse %s en %s\\n" - -#~ msgid "%s is not yet supported by grub-mkconfig.\\n" -#~ msgstr "%s aínda non é compatíbel con grub-mkconfig.\\n" - -#~ msgid "[-s POSITION] [-d DEVICE] [-v VAR] [REGISTER][=VALUE[:MASK]]" -#~ msgstr "" -#~ "[-s POSICIÓN] [-d DISPOSITIVO] [-v VAR] [REXISTRO][=VALOR[:MÃSCARA]]" - -#~ msgid " - Partition start at %llu" -#~ msgstr " - A partición comeza en %llu" - -#~ msgid " - Total size %llu sectors" -#~ msgstr " - Tamaño total %llu sectores" diff --git a/thirdparty/grub-2.04/po/grub.pot b/thirdparty/grub-2.04/po/grub.pot deleted file mode 100644 index 0dc4b6883..000000000 --- a/thirdparty/grub-2.04/po/grub.pot +++ /dev/null @@ -1,6408 +0,0 @@ -# SOME DESCRIPTIVE TITLE. -# Copyright (C) YEAR Free Software Foundation, Inc. -# This file is distributed under the same license as the grub package. -# FIRST AUTHOR , YEAR. -# -#, fuzzy -msgid "" -msgstr "" -"Project-Id-Version: grub 2.04\n" -"Report-Msgid-Bugs-To: bug-grub@gnu.org\n" -"POT-Creation-Date: 2019-07-04 16:09+0200\n" -"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" -"Last-Translator: FULL NAME \n" -"Language-Team: LANGUAGE \n" -"Language: \n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=CHARSET\n" -"Content-Transfer-Encoding: 8bit\n" - -#: grub-core/bus/usb/serial/ftdi.c:145 grub-core/bus/usb/serial/pl2303.c:158 -#: grub-core/term/ieee1275/escc.c:169 grub-core/term/ns8250.c:202 -msgid "unsupported serial port speed" -msgstr "" - -#: grub-core/bus/usb/serial/ftdi.c:151 grub-core/bus/usb/serial/pl2303.c:164 -#: grub-core/term/efi/serial.c:116 grub-core/term/ieee1275/escc.c:175 -#: grub-core/term/ns8250.c:208 grub-core/term/serial.c:227 -#: grub-core/term/serial.c:243 -msgid "unsupported serial port parity" -msgstr "" - -#: grub-core/bus/usb/serial/ftdi.c:157 grub-core/bus/usb/serial/pl2303.c:170 -#: grub-core/term/efi/serial.c:122 grub-core/term/ieee1275/escc.c:181 -#: grub-core/term/ns8250.c:213 grub-core/term/serial.c:267 -msgid "unsupported serial port stop bits number" -msgstr "" - -#: grub-core/bus/usb/serial/ftdi.c:161 grub-core/bus/usb/serial/pl2303.c:174 -#: grub-core/term/efi/serial.c:126 grub-core/term/ieee1275/escc.c:185 -#: grub-core/term/ns8250.c:217 -msgid "unsupported serial port word length" -msgstr "" - -#: grub-core/commands/acpi.c:42 -msgid "Don't load host tables specified by comma-separated list." -msgstr "" - -#: grub-core/commands/acpi.c:45 -msgid "Load only tables specified by comma-separated list." -msgstr "" - -#: grub-core/commands/acpi.c:46 -msgid "Export version 1 tables to the OS." -msgstr "" - -#: grub-core/commands/acpi.c:47 -msgid "Export version 2 and version 3 tables to the OS." -msgstr "" - -#: grub-core/commands/acpi.c:48 -msgid "Set OEMID of RSDP, XSDT and RSDT." -msgstr "" - -#: grub-core/commands/acpi.c:50 -msgid "Set OEMTABLE ID of RSDP, XSDT and RSDT." -msgstr "" - -#: grub-core/commands/acpi.c:52 -msgid "Set OEMTABLE revision of RSDP, XSDT and RSDT." -msgstr "" - -#: grub-core/commands/acpi.c:54 -msgid "Set creator field of RSDP, XSDT and RSDT." -msgstr "" - -#: grub-core/commands/acpi.c:56 -msgid "Set creator revision of RSDP, XSDT and RSDT." -msgstr "" - -#. TRANSLATORS: "hangs" here is a noun, not a verb. -#: grub-core/commands/acpi.c:58 -msgid "" -"Don't update EBDA. May fix failures or hangs on some BIOSes but makes it " -"ineffective with OS not receiving RSDP from GRUB." -msgstr "" - -#: grub-core/commands/acpi.c:650 grub-core/commands/acpi.c:667 -#: grub-core/commands/i386/pc/play.c:105 grub-core/commands/keylayouts.c:230 -#: grub-core/commands/keylayouts.c:245 grub-core/commands/keylayouts.c:263 -#: grub-core/commands/verifiers.c:156 grub-core/efiemu/loadcore.c:350 -#: grub-core/kern/elf.c:117 grub-core/kern/elfXX.c:29 -#: grub-core/kern/elfXX.c:156 grub-core/loader/arm/linux.c:319 -#: grub-core/loader/arm64/linux.c:330 grub-core/loader/arm64/xen_boot.c:356 -#: grub-core/loader/efi/chainloader.c:276 -#: grub-core/loader/efi/chainloader.c:297 -#: grub-core/loader/efi/chainloader.c:329 grub-core/loader/efi/fdt.c:138 -#: grub-core/loader/i386/bsd.c:1276 grub-core/loader/i386/bsd.c:2116 -#: grub-core/loader/i386/bsdXX.c:20 grub-core/loader/i386/bsdXX.c:36 -#: grub-core/loader/i386/bsdXX.c:63 grub-core/loader/i386/bsdXX.c:357 -#: grub-core/loader/i386/bsdXX.c:376 grub-core/loader/i386/bsdXX.c:519 -#: grub-core/loader/i386/bsdXX.c:535 grub-core/loader/i386/bsdXX.c:615 -#: grub-core/loader/i386/bsdXX.c:638 -#: grub-core/loader/i386/coreboot/chainloader.c:112 -#: grub-core/loader/i386/coreboot/chainloader.c:148 -#: grub-core/loader/i386/coreboot/chainloader.c:170 -#: grub-core/loader/i386/linux.c:667 grub-core/loader/i386/linux.c:788 -#: grub-core/loader/i386/linux.c:1005 grub-core/loader/i386/multiboot_mbi.c:171 -#: grub-core/loader/i386/pc/chainloader.c:202 -#: grub-core/loader/i386/pc/linux.c:149 grub-core/loader/i386/pc/linux.c:320 -#: grub-core/loader/i386/pc/linux.c:362 grub-core/loader/i386/pc/plan9.c:457 -#: grub-core/loader/i386/pc/plan9.c:550 grub-core/loader/i386/pc/plan9.c:566 -#: grub-core/loader/i386/xen.c:934 grub-core/loader/i386/xen_file.c:72 -#: grub-core/loader/i386/xen_fileXX.c:43 grub-core/loader/i386/xen_fileXX.c:186 -#: grub-core/loader/i386/xen_fileXX.c:339 grub-core/loader/ia64/efi/linux.c:423 -#: grub-core/loader/ia64/efi/linux.c:471 grub-core/loader/linux.c:286 -#: grub-core/loader/macho.c:84 grub-core/loader/macho.c:109 -#: grub-core/loader/machoXX.c:33 grub-core/loader/machoXX.c:46 -#: grub-core/loader/machoXX.c:76 grub-core/loader/machoXX.c:116 -#: grub-core/loader/machoXX.c:131 grub-core/loader/machoXX.c:147 -#: grub-core/loader/machoXX.c:196 grub-core/loader/machoXX.c:317 -#: grub-core/loader/multiboot.c:434 grub-core/loader/multiboot_elfxx.c:171 -#: grub-core/loader/multiboot_elfxx.c:234 -#: grub-core/loader/multiboot_elfxx.c:278 grub-core/loader/multiboot_mbi2.c:129 -#: grub-core/loader/xnu.c:737 grub-core/loader/xnu.c:795 -#: grub-core/loader/xnu.c:816 grub-core/loader/xnu.c:871 -#: grub-core/loader/xnu.c:914 grub-core/loader/xnu.c:952 -#: grub-core/loader/xnu_resume.c:68 grub-core/loader/xnu_resume.c:153 -#: grub-core/loader/xnu_resume.c:165 util/grub-mkimagexx.c:2288 -#, c-format -msgid "premature end of file %s" -msgstr "" - -#: grub-core/commands/acpi.c:779 -msgid "" -"[-1|-2] [--exclude=TABLE1,TABLE2|--load-only=TABLE1,TABLE2] FILE1 [FILE2] " -"[...]" -msgstr "" - -#: grub-core/commands/acpi.c:782 -msgid "Load host ACPI tables and tables specified by arguments." -msgstr "" - -#: grub-core/commands/acpihalt.c:368 grub-core/kern/err.c:110 -#, c-format -msgid "error: %s.\n" -msgstr "" - -#: grub-core/commands/acpihalt.c:368 grub-core/kern/emu/misc.c:95 -#: grub-core/kern/emu/misc.c:105 grub-core/kern/emu/misc.c:134 -#: grub-core/kern/emu/mm.c:34 grub-core/kern/emu/mm.c:62 -#: grub-core/kern/mm.c:374 grub-core/lib/relocator.c:1282 -#: grub-core/lib/relocator.c:1439 grub-core/lib/relocator.c:1538 -#: grub-core/loader/arm/linux.c:259 grub-core/loader/arm64/linux.c:265 -#: grub-core/loader/arm64/linux.c:321 grub-core/loader/arm64/linux.c:340 -#: grub-core/loader/arm64/xen_boot.c:344 grub-core/loader/arm64/xen_boot.c:367 -#: grub-core/loader/efi/chainloader.c:289 grub-core/osdep/unix/dl.c:48 -#: grub-core/osdep/windows/dl.c:46 grub-core/script/lexer.c:156 -#: grub-core/script/lexer.c:182 -msgid "out of memory" -msgstr "" - -#: grub-core/commands/acpihalt.c:374 grub-core/disk/cryptodisk.c:587 -#: grub-core/disk/cryptodisk.c:632 grub-core/kern/emu/hostdisk.c:307 -#: grub-core/kern/emu/hostfs.c:149 grub-core/kern/emu/misc.c:200 -#: grub-core/osdep/linux/ofpath.c:195 grub-core/osdep/linux/ofpath.c:521 -#: grub-core/osdep/linux/ofpath.c:534 util/glue-efi.c:80 util/glue-efi.c:94 -#: util/grub-editenv.c:155 util/grub-fstest.c:577 -#: util/grub-install-common.c:943 util/grub-mkrescue.c:634 -#: util/grub-mkrescue.c:888 util/grub-mount.c:506 util/grub-render-label.c:176 -#: util/misc.c:95 util/setup.c:814 util/setup.c:833 -#, c-format -msgid "cannot read `%s': %s" -msgstr "" - -#. TRANSLATORS: It's computer shutdown using ACPI, not disabling ACPI. -#: grub-core/commands/acpihalt.c:452 -msgid "ACPI shutdown failed" -msgstr "" - -#: grub-core/commands/arc/lsdev.c:51 -msgid "List devices." -msgstr "" - -#: grub-core/commands/blocklist.c:122 grub-core/commands/cat.c:57 -#: grub-core/commands/configfile.c:35 grub-core/commands/efi/loadbios.c:168 -#: grub-core/commands/file.c:159 grub-core/commands/hexdump.c:47 -#: grub-core/commands/legacycfg.c:209 grub-core/commands/legacycfg.c:315 -#: grub-core/commands/minicmd.c:44 grub-core/commands/syslinuxcfg.c:146 -#: grub-core/commands/testload.c:58 grub-core/commands/testspeed.c:52 -#: grub-core/disk/loopback.c:93 grub-core/efiemu/main.c:293 -#: grub-core/font/font_cmd.c:32 grub-core/kern/emu/hostdisk.c:519 -#: grub-core/loader/arm/linux.c:364 grub-core/loader/arm/linux.c:409 -#: grub-core/loader/arm/linux.c:472 grub-core/loader/arm64/linux.c:243 -#: grub-core/loader/arm64/linux.c:297 grub-core/loader/arm64/xen_boot.c:398 -#: grub-core/loader/arm64/xen_boot.c:411 grub-core/loader/arm64/xen_boot.c:462 -#: grub-core/loader/efi/chainloader.c:216 grub-core/loader/i386/bsd.c:1462 -#: grub-core/loader/i386/bsd.c:1807 grub-core/loader/i386/bsd.c:2085 -#: grub-core/loader/i386/coreboot/chainloader.c:438 -#: grub-core/loader/i386/linux.c:656 grub-core/loader/i386/linux.c:1041 -#: grub-core/loader/i386/pc/chainloader.c:290 -#: grub-core/loader/i386/pc/freedos.c:105 grub-core/loader/i386/pc/linux.c:138 -#: grub-core/loader/i386/pc/linux.c:400 grub-core/loader/i386/pc/ntldr.c:85 -#: grub-core/loader/i386/pc/plan9.c:409 -#: grub-core/loader/i386/pc/pxechainloader.c:94 -#: grub-core/loader/i386/pc/truecrypt.c:96 grub-core/loader/i386/xen.c:641 -#: grub-core/loader/i386/xen.c:768 grub-core/loader/i386/xen.c:844 -#: grub-core/loader/i386/xen.c:854 grub-core/loader/i386/xnu.c:488 -#: grub-core/loader/ia64/efi/linux.c:459 grub-core/loader/ia64/efi/linux.c:539 -#: grub-core/loader/mips/linux.c:238 grub-core/loader/mips/linux.c:429 -#: grub-core/loader/multiboot.c:322 grub-core/loader/multiboot.c:374 -#: grub-core/loader/multiboot.c:384 -#: grub-core/loader/powerpc/ieee1275/linux.c:269 -#: grub-core/loader/powerpc/ieee1275/linux.c:341 -#: grub-core/loader/sparc64/ieee1275/linux.c:305 -#: grub-core/loader/sparc64/ieee1275/linux.c:381 grub-core/loader/xnu.c:351 -#: grub-core/loader/xnu.c:460 grub-core/loader/xnu.c:778 -#: grub-core/loader/xnu.c:892 grub-core/loader/xnu.c:1277 -#: grub-core/loader/xnu.c:1427 grub-core/loader/xnu.c:1453 -#: grub-core/video/readers/jpeg.c:812 grub-core/video/readers/png.c:1123 -msgid "filename expected" -msgstr "" - -#. TRANSLATORS: "embed" is a verb (command description). " -#: grub-core/commands/blocklist.c:154 grub-core/commands/cat.c:163 -#: grub-core/commands/configfile.c:65 grub-core/commands/configfile.c:68 -#: grub-core/commands/configfile.c:74 grub-core/commands/configfile.c:80 -#: grub-core/commands/configfile.c:86 grub-core/commands/hashsum.c:34 -#: grub-core/commands/legacycfg.c:834 grub-core/commands/legacycfg.c:841 -#: grub-core/commands/legacycfg.c:846 grub-core/commands/legacycfg.c:851 -#: grub-core/commands/macbless.c:222 grub-core/commands/minicmd.c:198 -#: grub-core/commands/syslinuxcfg.c:186 grub-core/commands/syslinuxcfg.c:194 -#: grub-core/commands/syslinuxcfg.c:200 grub-core/commands/syslinuxcfg.c:206 -#: grub-core/commands/testload.c:163 grub-core/efiemu/main.c:312 -#: grub-core/kern/emu/main.c:100 grub-core/kern/emu/main.c:103 -#: grub-core/loader/i386/bsd.c:2137 grub-core/loader/i386/bsd.c:2140 -#: grub-core/loader/i386/bsd.c:2143 -#: grub-core/loader/i386/coreboot/chainloader.c:505 -#: grub-core/loader/ia64/efi/linux.c:594 include/grub/util/install.h:32 -#: include/grub/util/install.h:64 util/grub-glue-efi.c:52 -#: util/grub-glue-efi.c:54 util/grub-glue-efi.c:56 util/grub-install.c:254 -#: util/grub-install.c:301 util/grub-mkfont.c:936 util/grub-mkimage.c:68 -#: util/grub-mkimage.c:74 util/grub-mkimage.c:76 util/grub-mkimage.c:78 -#: util/grub-mkimage.c:81 util/grub-mklayout.c:52 util/grub-mklayout.c:54 -#: util/grub-mkrescue.c:97 util/grub-mkrescue.c:101 util/grub-mkrescue.c:104 -#: util/grub-mkrescue.c:105 util/grub-mkrescue.c:106 -#: util/grub-mkstandalone.c:47 util/grub-mkstandalone.c:49 -#: util/grub-probe.c:732 util/grub-render-label.c:59 -#: util/grub-render-label.c:70 util/grub-render-label.c:72 util/grub-setup.c:78 -#: util/grub-setup.c:80 util/grub-setup.c:84 util/grub-syslinux2cfg.c:74 -#: util/grub-syslinux2cfg.c:147 -msgid "FILE" -msgstr "" - -#: grub-core/commands/blocklist.c:154 -msgid "Print a block list." -msgstr "" - -#: grub-core/commands/boot.c:147 grub-core/commands/legacycfg.c:533 -#: grub-core/commands/legacycfg.c:574 grub-core/loader/arm64/linux.c:250 -#: grub-core/loader/i386/bsd.c:1799 grub-core/loader/i386/bsd.c:1900 -#: grub-core/loader/i386/bsd.c:2007 grub-core/loader/i386/bsd.c:2040 -#: grub-core/loader/i386/bsd.c:2089 grub-core/loader/i386/linux.c:1047 -#: grub-core/loader/i386/pc/linux.c:406 grub-core/loader/i386/xen.c:775 -#: grub-core/loader/i386/xen.c:859 grub-core/loader/ia64/efi/linux.c:545 -#: grub-core/loader/mips/linux.c:432 grub-core/loader/multiboot.c:388 -#: grub-core/loader/powerpc/ieee1275/linux.c:347 -#: grub-core/loader/sparc64/ieee1275/linux.c:387 grub-core/loader/xnu.c:572 -#: grub-core/loader/xnu.c:665 grub-core/loader/xnu.c:781 -#: grub-core/loader/xnu.c:895 grub-core/loader/xnu.c:1091 -#: grub-core/loader/xnu.c:1258 grub-core/loader/xnu.c:1289 -#: grub-core/loader/xnu.c:1430 -msgid "you need to load the kernel first" -msgstr "" - -#: grub-core/commands/boot.c:189 -msgid "Boot an operating system." -msgstr "" - -#: grub-core/commands/boottime.c:36 -#: grub-core/commands/i386/coreboot/cb_timestamps.c:108 -msgid "No boot time statistics is available\n" -msgstr "" - -#: grub-core/commands/boottime.c:59 -msgid "Show boot time statistics." -msgstr "" - -#: grub-core/commands/cacheinfo.c:40 -#, c-format -msgid "Disk cache statistics: hits = %lu (%lu.%02lu%%), misses = %lu\n" -msgstr "" - -#: grub-core/commands/cacheinfo.c:45 -msgid "No disk cache statistics available\n" -msgstr "" - -#: grub-core/commands/cacheinfo.c:56 -msgid "Get disk cache info." -msgstr "" - -#: grub-core/commands/cat.c:33 -msgid "Accept DOS-style CR/NL line endings." -msgstr "" - -#: grub-core/commands/cat.c:163 grub-core/commands/minicmd.c:198 -msgid "Show the contents of a file." -msgstr "" - -#: grub-core/commands/cmp.c:43 grub-core/commands/i386/pc/drivemap.c:239 -#: grub-core/commands/i386/wrmsr.c:60 grub-core/commands/iorw.c:85 -#: grub-core/commands/memrw.c:84 grub-core/commands/password.c:75 -#: grub-core/commands/password_pbkdf2.c:94 grub-core/commands/pgp.c:826 -#: grub-core/commands/regexp.c:113 grub-core/mmap/mmap.c:517 -#: grub-core/net/dns.c:639 -msgid "two arguments expected" -msgstr "" - -#: grub-core/commands/cmp.c:45 -#, c-format -msgid "Compare file `%s' with `%s':\n" -msgstr "" - -#: grub-core/commands/cmp.c:54 -#, c-format -msgid "Files differ in size: %llu [%s], %llu [%s]\n" -msgstr "" - -#: grub-core/commands/cmp.c:81 -#, c-format -msgid "Files differ at the offset %llu: 0x%x [%s], 0x%x [%s]\n" -msgstr "" - -#. TRANSLATORS: it's always exactly 2 files. -#: grub-core/commands/cmp.c:93 -msgid "The files are identical.\n" -msgstr "" - -#: grub-core/commands/cmp.c:113 -msgid "FILE1 FILE2" -msgstr "" - -#: grub-core/commands/cmp.c:113 -msgid "Compare two files." -msgstr "" - -#: grub-core/commands/configfile.c:65 -msgid "Load another config file." -msgstr "" - -#: grub-core/commands/configfile.c:69 grub-core/commands/configfile.c:87 -msgid "Load another config file without changing context." -msgstr "" - -#: grub-core/commands/configfile.c:75 -msgid "" -"Load another config file without changing context but take only menu entries." -msgstr "" - -#: grub-core/commands/configfile.c:81 -msgid "Load another config file but take only menu entries." -msgstr "" - -#: grub-core/commands/date.c:141 -msgid "[[year-]month-day] [hour:minute[:second]]" -msgstr "" - -#: grub-core/commands/date.c:142 -msgid "Display/set current datetime." -msgstr "" - -#: grub-core/commands/echo.c:30 -msgid "Do not output the trailing newline." -msgstr "" - -#: grub-core/commands/echo.c:31 -msgid "Enable interpretation of backslash escapes." -msgstr "" - -#: grub-core/commands/echo.c:134 -msgid "[-e|-n] STRING" -msgstr "" - -#: grub-core/commands/echo.c:134 -msgid "Display a line of text." -msgstr "" - -#: grub-core/commands/efi/efifwsetup.c:82 -msgid "Reboot into firmware setup menu." -msgstr "" - -#: grub-core/commands/efi/fixvideo.c:107 -msgid "Fix video problem." -msgstr "" - -#: grub-core/commands/efi/loadbios.c:52 -msgid "ROM image is present." -msgstr "" - -#: grub-core/commands/efi/loadbios.c:70 -msgid "Can't enable ROM area." -msgstr "" - -#: grub-core/commands/efi/loadbios.c:209 -msgid "" -"Create BIOS-like structures for backward compatibility with existing OS." -msgstr "" - -#: grub-core/commands/efi/loadbios.c:214 -msgid "BIOS_DUMP [INT10_DUMP]" -msgstr "" - -#: grub-core/commands/efi/loadbios.c:215 -msgid "Load BIOS dump." -msgstr "" - -#: grub-core/commands/efi/shim_lock.c:76 -#, c-format -msgid "module cannot be loaded in UEFI secure boot mode: %s" -msgstr "" - -#: grub-core/commands/efi/shim_lock.c:98 -#, c-format -msgid "cannot boot due to dangerous module in memory: %s" -msgstr "" - -#: grub-core/commands/efi/shim_lock.c:116 -msgid "bad shim signature" -msgstr "" - -#: grub-core/commands/efi/tpm.c:149 grub-core/commands/efi/tpm.c:189 -#: grub-core/commands/efi/tpm.c:256 grub-core/commands/efi/tpm.c:306 -msgid "Command failed" -msgstr "" - -#: grub-core/commands/efi/tpm.c:151 grub-core/commands/efi/tpm.c:191 -#: grub-core/commands/efi/tpm.c:258 grub-core/commands/efi/tpm.c:308 -msgid "Invalid parameter" -msgstr "" - -#: grub-core/commands/efi/tpm.c:154 grub-core/commands/efi/tpm.c:194 -#: grub-core/commands/efi/tpm.c:261 grub-core/commands/efi/tpm.c:311 -msgid "Output buffer too small" -msgstr "" - -#: grub-core/commands/efi/tpm.c:156 grub-core/commands/efi/tpm.c:196 -#: grub-core/commands/efi/tpm.c:263 grub-core/commands/efi/tpm.c:313 -msgid "TPM unavailable" -msgstr "" - -#: grub-core/commands/efi/tpm.c:158 grub-core/commands/efi/tpm.c:198 -#: grub-core/commands/efi/tpm.c:265 grub-core/commands/efi/tpm.c:315 -msgid "Unknown TPM error" -msgstr "" - -#: grub-core/commands/efi/tpm.c:240 grub-core/commands/efi/tpm.c:288 -msgid "cannot allocate TPM event buffer" -msgstr "" - -#: grub-core/commands/eval.c:63 -msgid "STRING ..." -msgstr "" - -#: grub-core/commands/eval.c:64 -msgid "Evaluate arguments as GRUB commands" -msgstr "" - -#: grub-core/commands/file.c:41 -msgid "Check if FILE can be booted as i386 PAE Xen unprivileged guest kernel" -msgstr "" - -#: grub-core/commands/file.c:44 -msgid "Check if FILE can be booted as x86_64 Xen unprivileged guest kernel" -msgstr "" - -#: grub-core/commands/file.c:46 -msgid "Check if FILE can be used as Xen x86 privileged guest kernel" -msgstr "" - -#: grub-core/commands/file.c:48 -msgid "Check if FILE can be used as x86 multiboot kernel" -msgstr "" - -#: grub-core/commands/file.c:50 -msgid "Check if FILE can be used as x86 multiboot2 kernel" -msgstr "" - -#: grub-core/commands/file.c:52 -msgid "Check if FILE is ARM Linux" -msgstr "" - -#: grub-core/commands/file.c:54 -msgid "Check if FILE is ARM64 Linux" -msgstr "" - -#: grub-core/commands/file.c:56 -msgid "Check if FILE is IA64 Linux" -msgstr "" - -#: grub-core/commands/file.c:58 -msgid "Check if FILE is MIPS Linux" -msgstr "" - -#: grub-core/commands/file.c:60 -msgid "Check if FILE is MIPSEL Linux" -msgstr "" - -#: grub-core/commands/file.c:62 -msgid "Check if FILE is SPARC64 Linux" -msgstr "" - -#: grub-core/commands/file.c:64 -msgid "Check if FILE is POWERPC Linux" -msgstr "" - -#: grub-core/commands/file.c:66 -msgid "Check if FILE is x86 Linux" -msgstr "" - -#: grub-core/commands/file.c:68 -msgid "Check if FILE is x86 Linux supporting 32-bit protocol" -msgstr "" - -#: grub-core/commands/file.c:70 -msgid "Check if FILE is x86 kFreeBSD" -msgstr "" - -#: grub-core/commands/file.c:72 -msgid "Check if FILE is i386 kFreeBSD" -msgstr "" - -#: grub-core/commands/file.c:74 -msgid "Check if FILE is x86_64 kFreeBSD" -msgstr "" - -#: grub-core/commands/file.c:77 -msgid "Check if FILE is x86 kNetBSD" -msgstr "" - -#: grub-core/commands/file.c:79 -msgid "Check if FILE is i386 kNetBSD" -msgstr "" - -#: grub-core/commands/file.c:81 -msgid "Check if FILE is x86_64 kNetBSD" -msgstr "" - -#: grub-core/commands/file.c:84 -msgid "Check if FILE is i386 EFI file" -msgstr "" - -#: grub-core/commands/file.c:86 -msgid "Check if FILE is x86_64 EFI file" -msgstr "" - -#: grub-core/commands/file.c:88 -msgid "Check if FILE is IA64 EFI file" -msgstr "" - -#: grub-core/commands/file.c:90 -msgid "Check if FILE is ARM64 EFI file" -msgstr "" - -#: grub-core/commands/file.c:92 -msgid "Check if FILE is ARM EFI file" -msgstr "" - -#: grub-core/commands/file.c:94 -msgid "Check if FILE is RISC-V 32bit EFI file" -msgstr "" - -#: grub-core/commands/file.c:96 -msgid "Check if FILE is RISC-V 64bit EFI file" -msgstr "" - -#: grub-core/commands/file.c:98 -msgid "Check if FILE is hiberfil.sys in hibernated state" -msgstr "" - -#: grub-core/commands/file.c:100 -msgid "Check if FILE is x86_64 XNU (Mac OS X kernel)" -msgstr "" - -#: grub-core/commands/file.c:102 -msgid "Check if FILE is i386 XNU (Mac OS X kernel)" -msgstr "" - -#: grub-core/commands/file.c:104 -msgid "Check if FILE is XNU (Mac OS X kernel) hibernated image" -msgstr "" - -#: grub-core/commands/file.c:106 -msgid "Check if FILE is BIOS bootsector" -msgstr "" - -#. TRANSLATORS: it's a standalone boolean value, -#. opposite of "true". -#: grub-core/commands/file.c:675 grub-core/commands/i386/cmostest.c:63 -#: grub-core/commands/i386/cpuid.c:71 grub-core/commands/keystatus.c:83 -#: grub-core/commands/keystatus.c:87 grub-core/commands/keystatus.c:96 -#: grub-core/commands/test.c:436 grub-core/commands/true.c:39 -#: grub-core/script/execute.c:247 grub-core/script/execute.c:1039 -msgid "false" -msgstr "" - -#: grub-core/commands/file.c:684 -msgid "OPTIONS FILE" -msgstr "" - -#: grub-core/commands/file.c:685 -msgid "Check if FILE is of specified type." -msgstr "" - -#. TRANSLATORS: It means that the specified partition e.g. -#. hd0,msdos1=/dev/sda1 doesn't exist. -#: grub-core/commands/gptsync.c:140 grub-core/kern/disk.c:258 -msgid "no such partition" -msgstr "" - -#: grub-core/commands/gptsync.c:240 -#, c-format -msgid "New MBR is written to `%s'\n" -msgstr "" - -#: grub-core/commands/gptsync.c:252 -msgid "DEVICE [PARTITION[+/-[TYPE]]] ..." -msgstr "" - -#. TRANSLATORS: MBR type is one-byte partition -#. type id. -#: grub-core/commands/gptsync.c:255 -msgid "" -"Fill hybrid MBR of GPT drive DEVICE. Specified partitions will be a part of " -"hybrid MBR. Up to 3 partitions are allowed. TYPE is an MBR type. + means " -"that partition is active. Only one partition can be active." -msgstr "" - -#: grub-core/commands/halt.c:40 -msgid "" -"Halts the computer. This command does not work on all firmware " -"implementations." -msgstr "" - -#: grub-core/commands/hashsum.c:32 -msgid "Specify hash to use." -msgstr "" - -#: grub-core/commands/hashsum.c:32 -msgid "HASH" -msgstr "" - -#: grub-core/commands/hashsum.c:33 -msgid "Check hashes of files with hash list FILE." -msgstr "" - -#: grub-core/commands/hashsum.c:35 -msgid "Base directory for hash list." -msgstr "" - -#. TRANSLATORS: platform here isn't identifier. It can be translated. -#: grub-core/commands/hashsum.c:35 grub-core/commands/ls.c:150 -#: grub-core/commands/macbless.c:226 grub-core/commands/syslinuxcfg.c:51 -#: grub-core/commands/syslinuxcfg.c:54 grub-core/kern/emu/main.c:106 -#: include/grub/util/install.h:50 include/grub/util/install.h:53 -#: include/grub/util/install.h:56 include/grub/util/install.h:59 -#: util/grub-install.c:250 util/grub-install.c:252 util/grub-install.c:297 -#: util/grub-install.c:299 util/grub-mkimage.c:64 util/grub-mkimage.c:67 -#: util/grub-mknetdir.c:46 util/grub-mknetdir.c:48 util/grub-mkrescue.c:99 -#: util/grub-setup.c:82 util/grub-syslinux2cfg.c:63 util/grub-syslinux2cfg.c:65 -#: util/grub-syslinux2cfg.c:67 util/grub-syslinux2cfg.c:71 -msgid "DIR" -msgstr "" - -#: grub-core/commands/hashsum.c:37 -msgid "Don't stop after first error." -msgstr "" - -#: grub-core/commands/hashsum.c:38 -msgid "Uncompress file before checksumming." -msgstr "" - -#: grub-core/commands/hashsum.c:163 -#, c-format -msgid "%s: READ ERROR\n" -msgstr "" - -#: grub-core/commands/hashsum.c:177 -#, c-format -msgid "%s: HASH MISMATCH\n" -msgstr "" - -#: grub-core/commands/hashsum.c:188 -#, c-format -msgid "%s: OK\n" -msgstr "" - -#: grub-core/commands/hashsum.c:282 -msgid "-h HASH [-c FILE [-p PREFIX]] [FILE1 [FILE2 ...]]" -msgstr "" - -#. TRANSLATORS: "hash checksum" is just to -#. be a bit more precise, you can treat it as -#. just "hash". -#: grub-core/commands/hashsum.c:287 grub-core/commands/hashsum.c:292 -#: grub-core/commands/hashsum.c:297 grub-core/commands/hashsum.c:302 -#: grub-core/commands/hashsum.c:307 grub-core/commands/hashsum.c:313 -msgid "Compute or check hash checksum." -msgstr "" - -#: grub-core/commands/hashsum.c:290 grub-core/commands/hashsum.c:295 -#: grub-core/commands/hashsum.c:300 grub-core/commands/hashsum.c:305 -#: grub-core/commands/hashsum.c:311 -msgid "[-c FILE [-p PREFIX]] [FILE1 [FILE2 ...]]" -msgstr "" - -#: grub-core/commands/hdparm.c:33 -msgid "" -"Set Advanced Power Management\n" -"(1=low, ..., 254=high, 255=off)." -msgstr "" - -#: grub-core/commands/hdparm.c:36 -msgid "Display power mode." -msgstr "" - -#: grub-core/commands/hdparm.c:37 -msgid "Freeze ATA security settings until reset." -msgstr "" - -#: grub-core/commands/hdparm.c:39 -msgid "Display SMART health status." -msgstr "" - -#: grub-core/commands/hdparm.c:40 -msgid "" -"Set Automatic Acoustic Management\n" -"(0=off, 128=quiet, ..., 254=fast)." -msgstr "" - -#: grub-core/commands/hdparm.c:43 -msgid "" -"Set standby timeout\n" -"(0=off, 1=5s, 2=10s, ..., 240=20m, 241=30m, ...)." -msgstr "" - -#: grub-core/commands/hdparm.c:46 -msgid "Set drive to standby mode." -msgstr "" - -#: grub-core/commands/hdparm.c:47 -msgid "Set drive to sleep mode." -msgstr "" - -#: grub-core/commands/hdparm.c:48 -msgid "Print drive identity and settings." -msgstr "" - -#: grub-core/commands/hdparm.c:50 -msgid "Show raw contents of ATA IDENTIFY sector." -msgstr "" - -#: grub-core/commands/hdparm.c:52 -msgid "Disable/enable SMART (0/1)." -msgstr "" - -#: grub-core/commands/hdparm.c:53 -msgid "Do not print messages." -msgstr "" - -#: grub-core/commands/hdparm.c:286 grub-core/commands/i386/rdmsr.c:68 -#: grub-core/commands/iorw.c:47 grub-core/commands/legacycfg.c:760 -#: grub-core/commands/legacycfg.c:812 grub-core/commands/macbless.c:190 -#: grub-core/commands/memrw.c:47 grub-core/commands/pgp.c:738 -#: grub-core/commands/pgp.c:792 grub-core/commands/search.c:304 -#: grub-core/commands/search_wrap.c:179 grub-core/commands/setpci.c:243 -#: grub-core/commands/sleep.c:71 grub-core/fs/zfs/zfsinfo.c:279 -#: grub-core/fs/zfs/zfsinfo.c:358 grub-core/gettext/gettext.c:492 -#: grub-core/kern/corecmd.c:65 grub-core/kern/corecmd.c:79 -#: grub-core/mmap/mmap.c:430 grub-core/net/dns.c:713 grub-core/net/dns.c:745 -#: grub-core/net/net.c:694 grub-core/net/net.c:1052 -#: grub-core/normal/context.c:194 grub-core/script/execute.c:131 -#: grub-core/term/gfxterm_background.c:136 -msgid "one argument expected" -msgstr "" - -#: grub-core/commands/hdparm.c:440 -msgid "[OPTIONS] DISK" -msgstr "" - -#: grub-core/commands/hdparm.c:441 -msgid "Get/set ATA disk parameters." -msgstr "" - -#: grub-core/commands/help.c:132 grub-core/lib/arg.c:109 -#: grub-core/lib/gnulib/argp-help.c:1616 -msgid "Usage:" -msgstr "" - -#: grub-core/commands/help.c:146 -msgid "[PATTERN ...]" -msgstr "" - -#: grub-core/commands/help.c:147 -msgid "Show a help message." -msgstr "" - -#: grub-core/commands/hexdump.c:31 -msgid "Skip offset bytes from the beginning of file." -msgstr "" - -#: grub-core/commands/hexdump.c:33 -msgid "Read only LENGTH bytes." -msgstr "" - -#: grub-core/commands/hexdump.c:125 -msgid "[OPTIONS] FILE_OR_DEVICE" -msgstr "" - -#: grub-core/commands/hexdump.c:126 -msgid "Show raw contents of a file or memory." -msgstr "" - -#: grub-core/commands/i386/cmosdump.c:58 -msgid "Show raw dump of the CMOS contents." -msgstr "" - -#: grub-core/commands/i386/cmostest.c:108 -#: grub-core/commands/i386/cmostest.c:111 -#: grub-core/commands/i386/cmostest.c:114 -msgid "BYTE:BIT" -msgstr "" - -#: grub-core/commands/i386/cmostest.c:109 -msgid "Test bit at BYTE:BIT in CMOS." -msgstr "" - -#: grub-core/commands/i386/cmostest.c:112 -msgid "Clear bit at BYTE:BIT in CMOS." -msgstr "" - -#. TRANSLATORS: A bit may be either set (1) or clear (0). -#: grub-core/commands/i386/cmostest.c:116 -msgid "Set bit at BYTE:BIT in CMOS." -msgstr "" - -#: grub-core/commands/i386/coreboot/cb_timestamps.c:120 -msgid "Show coreboot boot time statistics." -msgstr "" - -#: grub-core/commands/i386/coreboot/cbls.c:137 -msgid "List coreboot tables." -msgstr "" - -#. TRANSLATORS: "(default)" at the end means that this option is used if -#. no argument is specified. -#: grub-core/commands/i386/cpuid.c:36 -msgid "Check if CPU supports 64-bit (long) mode (default)." -msgstr "" - -#: grub-core/commands/i386/cpuid.c:37 -msgid "Check if CPU supports Physical Address Extension." -msgstr "" - -#: grub-core/commands/i386/cpuid.c:119 -msgid "Check for CPU features." -msgstr "" - -#. TRANSLATORS: In this file "mapping" refers to a change GRUB makes so if -#. your language doesn't have an equivalent of "mapping" you can -#. use the word like "rerouting". -#. -#: grub-core/commands/i386/pc/drivemap.c:43 -msgid "Show the current mappings." -msgstr "" - -#: grub-core/commands/i386/pc/drivemap.c:44 -msgid "Reset all mappings to the default values." -msgstr "" - -#: grub-core/commands/i386/pc/drivemap.c:45 -msgid "Perform both direct and reverse mappings." -msgstr "" - -#: grub-core/commands/i386/pc/drivemap.c:184 -msgid "No drives have been remapped" -msgstr "" - -#. TRANSLATORS: This is the header of mapping list. -#. On the left is how OS will see the disks and -#. on the right current GRUB vision. -#: grub-core/commands/i386/pc/drivemap.c:191 -msgid "OS disk #num ------> GRUB/BIOS device" -msgstr "" - -#: grub-core/commands/i386/pc/drivemap.c:413 -msgid "-l | -r | [-s] grubdev osdisk." -msgstr "" - -#: grub-core/commands/i386/pc/drivemap.c:414 -msgid "Manage the BIOS drive mappings." -msgstr "" - -#: grub-core/commands/i386/pc/halt.c:31 -msgid "Do not use APM to halt the computer." -msgstr "" - -#: grub-core/commands/i386/pc/halt.c:119 -msgid "Halt the system, if possible using APM." -msgstr "" - -#: grub-core/commands/i386/pc/lsapm.c:75 -msgid "no APM found" -msgstr "" - -#: grub-core/commands/i386/pc/lsapm.c:77 -#, c-format -msgid "" -"Version %u.%u\n" -"32-bit CS = 0x%x, len = 0x%x, offset = 0x%x\n" -"16-bit CS = 0x%x, len = 0x%x\n" -"DS = 0x%x, len = 0x%x\n" -msgstr "" - -#: grub-core/commands/i386/pc/lsapm.c:86 -msgid "16-bit protected interface supported\n" -msgstr "" - -#: grub-core/commands/i386/pc/lsapm.c:87 -msgid "16-bit protected interface unsupported\n" -msgstr "" - -#: grub-core/commands/i386/pc/lsapm.c:89 -msgid "32-bit protected interface supported\n" -msgstr "" - -#: grub-core/commands/i386/pc/lsapm.c:90 -msgid "32-bit protected interface unsupported\n" -msgstr "" - -#: grub-core/commands/i386/pc/lsapm.c:92 -msgid "CPU Idle slows down processor\n" -msgstr "" - -#: grub-core/commands/i386/pc/lsapm.c:93 -msgid "CPU Idle doesn't slow down processor\n" -msgstr "" - -#: grub-core/commands/i386/pc/lsapm.c:95 -msgid "APM disabled\n" -msgstr "" - -#: grub-core/commands/i386/pc/lsapm.c:95 -msgid "APM enabled\n" -msgstr "" - -#: grub-core/commands/i386/pc/lsapm.c:97 -msgid "APM disengaged\n" -msgstr "" - -#: grub-core/commands/i386/pc/lsapm.c:97 -msgid "APM engaged\n" -msgstr "" - -#: grub-core/commands/i386/pc/lsapm.c:107 -msgid "Show APM information." -msgstr "" - -#. TRANSLATORS: It's musical notes, not the notes -#. you take. Play command expects arguments which can -#. be either a filename or tempo+notes. -#. This error happens if none is specified. -#: grub-core/commands/i386/pc/play.c:88 -msgid "filename or tempo and notes expected" -msgstr "" - -#: grub-core/commands/i386/pc/play.c:113 grub-core/commands/i386/pc/play.c:144 -#, c-format -msgid "Invalid tempo in %s" -msgstr "" - -#: grub-core/commands/i386/pc/play.c:151 grub-core/commands/macbless.c:172 -#: grub-core/fs/archelp.c:260 grub-core/fs/bfs.c:621 grub-core/fs/bfs.c:704 -#: grub-core/fs/btrfs.c:1726 grub-core/fs/btrfs.c:1755 -#: grub-core/fs/btrfs.c:1799 grub-core/fs/btrfs.c:1882 -#: grub-core/fs/btrfs.c:1906 grub-core/fs/fshelp.c:257 grub-core/fs/jfs.c:696 -#: grub-core/fs/minix.c:426 grub-core/fs/ufs.c:544 grub-core/fs/zfs/zfs.c:2083 -#: grub-core/fs/zfs/zfs.c:2095 grub-core/fs/zfs/zfs.c:2301 -#: grub-core/net/http.c:120 -#, c-format -msgid "file `%s' not found" -msgstr "" - -#: grub-core/commands/i386/pc/play.c:162 grub-core/commands/i386/pc/play.c:171 -#: grub-core/kern/misc.c:419 grub-core/script/execute.c:138 -#: grub-core/script/execute.c:244 -msgid "unrecognized number" -msgstr "" - -#: grub-core/commands/i386/pc/play.c:190 -msgid "FILE | TEMPO [PITCH1 DURATION1] [PITCH2 DURATION2] ... " -msgstr "" - -#: grub-core/commands/i386/pc/play.c:191 -msgid "Play a tune." -msgstr "" - -#: grub-core/commands/i386/pc/sendkey.c:39 -msgid "set numlock mode" -msgstr "" - -#: grub-core/commands/i386/pc/sendkey.c:40 -msgid "set capslock mode" -msgstr "" - -#: grub-core/commands/i386/pc/sendkey.c:41 -msgid "set scrolllock mode" -msgstr "" - -#: grub-core/commands/i386/pc/sendkey.c:42 -msgid "set insert mode" -msgstr "" - -#: grub-core/commands/i386/pc/sendkey.c:43 -msgid "set pause mode" -msgstr "" - -#: grub-core/commands/i386/pc/sendkey.c:44 -msgid "press left shift" -msgstr "" - -#: grub-core/commands/i386/pc/sendkey.c:45 -msgid "press right shift" -msgstr "" - -#: grub-core/commands/i386/pc/sendkey.c:46 -msgid "press SysRq" -msgstr "" - -#: grub-core/commands/i386/pc/sendkey.c:47 -msgid "press NumLock key" -msgstr "" - -#: grub-core/commands/i386/pc/sendkey.c:48 -msgid "press CapsLock key" -msgstr "" - -#: grub-core/commands/i386/pc/sendkey.c:49 -msgid "press ScrollLock key" -msgstr "" - -#: grub-core/commands/i386/pc/sendkey.c:50 -msgid "press Insert key" -msgstr "" - -#: grub-core/commands/i386/pc/sendkey.c:51 -msgid "press left alt" -msgstr "" - -#: grub-core/commands/i386/pc/sendkey.c:52 -msgid "press right alt" -msgstr "" - -#: grub-core/commands/i386/pc/sendkey.c:53 -msgid "press left ctrl" -msgstr "" - -#: grub-core/commands/i386/pc/sendkey.c:54 -msgid "press right ctrl" -msgstr "" - -#: grub-core/commands/i386/pc/sendkey.c:55 -msgid "don't update LED state" -msgstr "" - -#: grub-core/commands/i386/pc/sendkey.c:372 -msgid "[KEYSTROKE1] [KEYSTROKE2] ..." -msgstr "" - -#. TRANSLATORS: It can emulate multiple -#. keypresses. -#: grub-core/commands/i386/pc/sendkey.c:375 -msgid "Emulate a keystroke sequence" -msgstr "" - -#: grub-core/commands/i386/rdmsr.c:37 grub-core/commands/iorw.c:34 -#: grub-core/commands/memrw.c:33 grub-core/commands/setpci.c:73 -msgid "Save read value into variable VARNAME." -msgstr "" - -#: grub-core/commands/i386/rdmsr.c:38 grub-core/commands/iorw.c:35 -#: grub-core/commands/memrw.c:34 grub-core/commands/probe.c:40 -#: grub-core/commands/search_wrap.c:40 grub-core/commands/setpci.c:74 -#: grub-core/commands/tr.c:32 -msgid "VARNAME" -msgstr "" - -#: grub-core/commands/i386/rdmsr.c:55 grub-core/commands/i386/rdmsr.c:60 -#: grub-core/commands/i386/rdmsr.c:65 grub-core/commands/i386/wrmsr.c:47 -#: grub-core/commands/i386/wrmsr.c:52 grub-core/commands/i386/wrmsr.c:57 -msgid "unsupported instruction" -msgstr "" - -#: grub-core/commands/i386/rdmsr.c:77 grub-core/commands/i386/wrmsr.c:69 -#: grub-core/commands/i386/wrmsr.c:77 grub-core/net/dns.c:727 -msgid "invalid argument" -msgstr "" - -#: grub-core/commands/i386/rdmsr.c:94 grub-core/commands/memrw.c:125 -#: grub-core/commands/memrw.c:129 grub-core/commands/memrw.c:133 -msgid "ADDR" -msgstr "" - -#: grub-core/commands/i386/rdmsr.c:95 -msgid "Read a CPU model specific register." -msgstr "" - -#: grub-core/commands/i386/wrmsr.c:86 -msgid "ADDR VALUE" -msgstr "" - -#: grub-core/commands/i386/wrmsr.c:87 -msgid "Write a value to a CPU model specific register." -msgstr "" - -#: grub-core/commands/ieee1275/suspend.c:34 -msgid "Run `go' to resume GRUB." -msgstr "" - -#: grub-core/commands/ieee1275/suspend.c:45 -msgid "Return to IEEE1275 prompt." -msgstr "" - -#: grub-core/commands/iorw.c:123 grub-core/commands/iorw.c:127 -#: grub-core/commands/iorw.c:131 grub-core/gdb/gdb.c:79 -msgid "PORT" -msgstr "" - -#: grub-core/commands/iorw.c:123 -msgid "Read 8-bit value from PORT." -msgstr "" - -#: grub-core/commands/iorw.c:127 -msgid "Read 16-bit value from PORT." -msgstr "" - -#: grub-core/commands/iorw.c:131 -msgid "Read 32-bit value from PORT." -msgstr "" - -#: grub-core/commands/iorw.c:135 grub-core/commands/iorw.c:139 -msgid "PORT VALUE [MASK]" -msgstr "" - -#: grub-core/commands/iorw.c:136 -msgid "Write 8-bit VALUE to PORT." -msgstr "" - -#: grub-core/commands/iorw.c:140 -msgid "Write 16-bit VALUE to PORT." -msgstr "" - -#: grub-core/commands/iorw.c:143 grub-core/commands/memrw.c:137 -#: grub-core/commands/memrw.c:141 grub-core/commands/memrw.c:145 -msgid "ADDR VALUE [MASK]" -msgstr "" - -#: grub-core/commands/iorw.c:144 -msgid "Write 32-bit VALUE to PORT." -msgstr "" - -#: grub-core/commands/keylayouts.c:215 grub-core/commands/loadenv.c:61 -#: grub-core/commands/nativedisk.c:189 grub-core/efiemu/main.c:235 -#: grub-core/font/font.c:428 grub-core/gfxmenu/gfxmenu.c:63 -#: grub-core/kern/device.c:42 grub-core/kern/dl.c:740 -#, c-format -msgid "variable `%s' isn't set" -msgstr "" - -#: grub-core/commands/keylayouts.c:301 -msgid "Load a keyboard layout." -msgstr "" - -#. TRANSLATORS: "Check" in a sense that if this key is pressed then -#. "true" is returned, otherwise "false". -#: grub-core/commands/keystatus.c:32 -msgid "Check Shift key." -msgstr "" - -#: grub-core/commands/keystatus.c:33 -msgid "Check Control key." -msgstr "" - -#: grub-core/commands/keystatus.c:34 -msgid "Check Alt key." -msgstr "" - -#. TRANSLATORS: there are 3 modifiers. -#: grub-core/commands/keystatus.c:106 -msgid "Check key modifier status." -msgstr "" - -#: grub-core/commands/legacycfg.c:512 grub-core/commands/legacycfg.c:526 -#: grub-core/commands/legacycfg.c:546 grub-core/commands/legacycfg.c:559 -#: grub-core/commands/time.c:43 grub-core/script/function.c:109 -#: util/grub-file.c:100 util/grub-fstest.c:57 util/grub-mount.c:69 -#, c-format -msgid "can't find command `%s'" -msgstr "" - -#: grub-core/commands/legacycfg.c:813 grub-core/normal/auth.c:225 -#: util/grub-mkpasswd-pbkdf2.c:139 -msgid "Enter password: " -msgstr "" - -#. TRANSLATORS: "legacy config" means -#. "config as used by grub-legacy". -#: grub-core/commands/legacycfg.c:837 -msgid "Parse legacy config in same context" -msgstr "" - -#: grub-core/commands/legacycfg.c:842 -msgid "Parse legacy config in new context" -msgstr "" - -#: grub-core/commands/legacycfg.c:847 -msgid "Parse legacy config in same context taking only menu entries" -msgstr "" - -#: grub-core/commands/legacycfg.c:852 -msgid "Parse legacy config in new context taking only menu entries" -msgstr "" - -#: grub-core/commands/legacycfg.c:856 -msgid "[--no-mem-option] [--type=TYPE] FILE [ARG ...]" -msgstr "" - -#: grub-core/commands/legacycfg.c:857 -msgid "Simulate grub-legacy `kernel' command" -msgstr "" - -#: grub-core/commands/legacycfg.c:861 grub-core/commands/legacycfg.c:865 -msgid "FILE [ARG ...]" -msgstr "" - -#: grub-core/commands/legacycfg.c:862 -msgid "Simulate grub-legacy `initrd' command" -msgstr "" - -#: grub-core/commands/legacycfg.c:866 -msgid "Simulate grub-legacy `modulenounzip' command" -msgstr "" - -#: grub-core/commands/legacycfg.c:870 grub-core/commands/legacycfg.c:875 -msgid "[--md5] PASSWD [FILE]" -msgstr "" - -#: grub-core/commands/legacycfg.c:871 -msgid "Simulate grub-legacy `password' command" -msgstr "" - -#: grub-core/commands/legacycfg.c:876 -msgid "Simulate grub-legacy `password' command in menu entry mode" -msgstr "" - -#. TRANSLATORS: This option is used to override default filename -#. for loading and storing environment. -#: grub-core/commands/loadenv.c:37 -msgid "Specify filename." -msgstr "" - -#: grub-core/commands/loadenv.c:39 -msgid "Skip signature-checking of the environment file." -msgstr "" - -#: grub-core/commands/loadenv.c:451 -msgid "[-f FILE] [-s|--skip-sig] [variable_name_to_whitelist] [...]" -msgstr "" - -#: grub-core/commands/loadenv.c:452 -msgid "Load variables from environment block file." -msgstr "" - -#: grub-core/commands/loadenv.c:455 -msgid "[-f FILE]" -msgstr "" - -#: grub-core/commands/loadenv.c:456 -msgid "List variables from environment block file." -msgstr "" - -#: grub-core/commands/loadenv.c:460 -msgid "[-f FILE] variable_name [...]" -msgstr "" - -#: grub-core/commands/loadenv.c:461 -msgid "Save variables to environment block file." -msgstr "" - -#: grub-core/commands/ls.c:40 -msgid "Show a long list with more detailed information." -msgstr "" - -#: grub-core/commands/ls.c:41 -msgid "Print sizes in a human readable format." -msgstr "" - -#: grub-core/commands/ls.c:42 -msgid "List all files." -msgstr "" - -#: grub-core/commands/ls.c:73 -msgid "Network protocols:" -msgstr "" - -#: grub-core/commands/ls.c:295 -msgid "[-l|-h|-a] [FILE ...]" -msgstr "" - -#: grub-core/commands/ls.c:296 -msgid "List devices and files." -msgstr "" - -#: grub-core/commands/lsacpi.c:255 -msgid "Show version 1 tables only." -msgstr "" - -#: grub-core/commands/lsacpi.c:256 -msgid "Show version 2 and version 3 tables only." -msgstr "" - -#: grub-core/commands/lsacpi.c:306 -msgid "Show ACPI information." -msgstr "" - -#: grub-core/commands/lsmmap.c:31 -msgid "available RAM" -msgstr "" - -#: grub-core/commands/lsmmap.c:32 -msgid "reserved RAM" -msgstr "" - -#. TRANSLATORS: this refers to memory where ACPI tables are stored -#. and which can be used by OS once it loads ACPI tables. -#: grub-core/commands/lsmmap.c:35 -msgid "ACPI reclaimable RAM" -msgstr "" - -#. TRANSLATORS: this refers to memory which ACPI-compliant OS -#. is required to save accross hibernations. -#: grub-core/commands/lsmmap.c:38 -msgid "ACPI non-volatile storage RAM" -msgstr "" - -#: grub-core/commands/lsmmap.c:39 -msgid "faulty RAM (BadRAM)" -msgstr "" - -#: grub-core/commands/lsmmap.c:40 -msgid "persistent RAM" -msgstr "" - -#: grub-core/commands/lsmmap.c:41 -msgid "persistent RAM (legacy)" -msgstr "" - -#: grub-core/commands/lsmmap.c:42 -msgid "RAM holding coreboot tables" -msgstr "" - -#: grub-core/commands/lsmmap.c:43 -msgid "RAM holding firmware code" -msgstr "" - -#: grub-core/commands/lsmmap.c:52 -#, c-format -msgid "base_addr = 0x%llx, length = 0x%llx, %s\n" -msgstr "" - -#: grub-core/commands/lsmmap.c:55 -#, c-format -msgid "base_addr = 0x%llx, length = 0x%llx, type = 0x%x\n" -msgstr "" - -#: grub-core/commands/lsmmap.c:79 -msgid "List memory map provided by firmware." -msgstr "" - -#: grub-core/commands/lspci.c:232 -msgid "List PCI devices." -msgstr "" - -#: grub-core/commands/macbless.c:224 -msgid "Bless FILE of HFS or HFS+ partition for intel macs." -msgstr "" - -#: grub-core/commands/macbless.c:228 -msgid "Bless DIR of HFS or HFS+ partition for PPC macs." -msgstr "" - -#: grub-core/commands/memrw.c:125 -msgid "Read 8-bit value from ADDR." -msgstr "" - -#: grub-core/commands/memrw.c:129 -msgid "Read 16-bit value from ADDR." -msgstr "" - -#: grub-core/commands/memrw.c:133 -msgid "Read 32-bit value from ADDR." -msgstr "" - -#: grub-core/commands/memrw.c:138 -msgid "Write 8-bit VALUE to ADDR." -msgstr "" - -#: grub-core/commands/memrw.c:142 -msgid "Write 16-bit VALUE to ADDR." -msgstr "" - -#: grub-core/commands/memrw.c:146 -msgid "Write 32-bit VALUE to ADDR." -msgstr "" - -#: grub-core/commands/menuentry.c:31 -msgid "Menu entry type." -msgstr "" - -#: grub-core/commands/menuentry.c:31 grub-core/commands/menuentry.c:38 -#: grub-core/commands/menuentry.c:39 grub-core/gettext/gettext.c:520 -#: util/grub-fstest.c:520 util/grub-install.c:291 util/grub-install.c:304 -#: util/grub-mknetdir.c:51 util/grub-mkrescue.c:109 util/grub-mkrescue.c:110 -#: util/grub-mount.c:453 util/grub-render-label.c:65 -msgid "STRING" -msgstr "" - -#: grub-core/commands/menuentry.c:33 -msgid "List of users allowed to boot this entry." -msgstr "" - -#: grub-core/commands/menuentry.c:33 -msgid "USERNAME[,USERNAME]" -msgstr "" - -#: grub-core/commands/menuentry.c:36 -msgid "Keyboard key to quickly boot this entry." -msgstr "" - -#: grub-core/commands/menuentry.c:36 -msgid "KEYBOARD_KEY" -msgstr "" - -#: grub-core/commands/menuentry.c:38 -msgid "Use STRING as menu entry body." -msgstr "" - -#: grub-core/commands/menuentry.c:39 -msgid "Menu entry identifier." -msgstr "" - -#. TRANSLATORS: menu entry can either be bootable by anyone or only by -#. handful of users. By default when security is active only superusers can -#. boot a given menu entry. With --unrestricted (this option) -#. anyone can boot it. -#: grub-core/commands/menuentry.c:44 -msgid "This entry can be booted by any user." -msgstr "" - -#: grub-core/commands/menuentry.c:323 grub-core/commands/menuentry.c:328 -#: grub-core/tests/test_blockarg.c:46 -msgid "BLOCK" -msgstr "" - -#: grub-core/commands/menuentry.c:323 -msgid "Define a menu entry." -msgstr "" - -#: grub-core/commands/menuentry.c:328 -msgid "Define a submenu." -msgstr "" - -#. TRANSLATORS: this is module list header. Name -#. is module name, Ref Count is a reference counter -#. (how many modules or open descriptors use it). -#. Dependencies are the other modules it uses. -#. -#: grub-core/commands/minicmd.c:162 -msgid "Name\tRef Count\tDependencies\n" -msgstr "" - -#: grub-core/commands/minicmd.c:201 -msgid "Show this message." -msgstr "" - -#: grub-core/commands/minicmd.c:204 -msgid "ADDR [SIZE]" -msgstr "" - -#: grub-core/commands/minicmd.c:204 -msgid "Show memory contents." -msgstr "" - -#: grub-core/commands/minicmd.c:207 grub-core/kern/corecmd.c:188 -#: util/grub-install.c:275 -msgid "MODULE" -msgstr "" - -#: grub-core/commands/minicmd.c:207 -msgid "Remove a module." -msgstr "" - -#: grub-core/commands/minicmd.c:210 -msgid "Show loaded modules." -msgstr "" - -#: grub-core/commands/minicmd.c:213 -msgid "Exit from GRUB." -msgstr "" - -#: grub-core/commands/mips/loongson/lsspd.c:42 -msgid "No CS5536 found" -msgstr "" - -#: grub-core/commands/mips/loongson/lsspd.c:45 -#, c-format -msgid "CS5536 at %d:%d.%d\n" -msgstr "" - -#. TRANSLATORS: System management bus is often used to access components like -#. RAM (info only, not data) or batteries. I/O space is where in memory -#. its ports are. -#: grub-core/commands/mips/loongson/lsspd.c:55 -#, c-format -msgid "System management bus controller I/O space is at 0x%x\n" -msgstr "" - -#. TRANSLATORS: it's shown in a report in a way -#. like number 1: ... number 2: ... -#. -#: grub-core/commands/mips/loongson/lsspd.c:66 -#, c-format -msgid "RAM slot number %d\n" -msgstr "" - -#: grub-core/commands/mips/loongson/lsspd.c:73 -#, c-format -msgid "Written SPD bytes: %d B.\n" -msgstr "" - -#: grub-core/commands/mips/loongson/lsspd.c:74 -#, c-format -msgid "Total flash size: %d B.\n" -msgstr "" - -#: grub-core/commands/mips/loongson/lsspd.c:79 -msgid "Memory type: DDR2." -msgstr "" - -#: grub-core/commands/mips/loongson/lsspd.c:83 -#, c-format -msgid "Part no: %s.\n" -msgstr "" - -#: grub-core/commands/mips/loongson/lsspd.c:86 -msgid "Memory type: Unknown." -msgstr "" - -#: grub-core/commands/mips/loongson/lsspd.c:97 -msgid "Print Memory information." -msgstr "" - -#: grub-core/commands/nativedisk.c:118 grub-core/commands/probe.c:118 -#: grub-core/commands/probe.c:124 util/grub-probe.c:450 -#, c-format -msgid "%s does not support UUIDs" -msgstr "" - -#: grub-core/commands/nativedisk.c:325 -msgid "[MODULE1 MODULE2 ...]" -msgstr "" - -#: grub-core/commands/nativedisk.c:326 -msgid "" -"Switch to native disk drivers. If no modules are specified default set (pata," -"ahci,usbms,ohci,uhci,ehci) is used" -msgstr "" - -#: grub-core/commands/parttool.c:40 -msgid "" -"Perform COMMANDS on partition.\n" -"Use `parttool PARTITION help' for the list of available commands." -msgstr "" - -#: grub-core/commands/parttool.c:123 -msgid "=VAL" -msgstr "" - -#: grub-core/commands/parttool.c:136 -#, c-format -msgid "Sorry, no parttool is available for %s\n" -msgstr "" - -#: grub-core/commands/parttool.c:288 grub-core/lib/arg.c:285 -#: grub-core/lib/arg.c:351 -#, c-format -msgid "unknown argument `%s'" -msgstr "" - -#: grub-core/commands/parttool.c:344 -msgid "PARTITION COMMANDS" -msgstr "" - -#: grub-core/commands/password.c:85 -msgid "USER PASSWORD" -msgstr "" - -#: grub-core/commands/password.c:86 -msgid "Set user password (plaintext). Unrecommended and insecure." -msgstr "" - -#. TRANSLATORS: it means that the string which -#. was supposed to be a password hash doesn't -#. have a correct format, not to password -#. mismatch. -#: grub-core/commands/password_pbkdf2.c:98 -#: grub-core/commands/password_pbkdf2.c:115 -#: grub-core/commands/password_pbkdf2.c:123 -#: grub-core/commands/password_pbkdf2.c:150 -#: grub-core/commands/password_pbkdf2.c:179 -msgid "invalid PBKDF2 password" -msgstr "" - -#: grub-core/commands/password_pbkdf2.c:202 -msgid "USER PBKDF2_PASSWORD" -msgstr "" - -#: grub-core/commands/password_pbkdf2.c:203 -msgid "Set user password (PBKDF2). " -msgstr "" - -#: grub-core/commands/pcidump.c:39 grub-core/commands/setpci.c:69 -msgid "Select device by vendor and device IDs." -msgstr "" - -#: grub-core/commands/pcidump.c:40 grub-core/commands/setpci.c:70 -msgid "[vendor]:[device]" -msgstr "" - -#: grub-core/commands/pcidump.c:41 grub-core/commands/setpci.c:71 -msgid "Select device by its position on the bus." -msgstr "" - -#: grub-core/commands/pcidump.c:42 grub-core/commands/setpci.c:72 -msgid "[bus]:[slot][.func]" -msgstr "" - -#: grub-core/commands/pcidump.c:109 grub-core/commands/pcidump.c:138 -#: grub-core/commands/setpci.c:183 grub-core/commands/setpci.c:214 -#: grub-core/fs/zfs/zfs.c:3794 grub-core/kern/emu/hostdisk.c:458 -#: grub-core/kern/emu/hostdisk.c:473 grub-core/kern/file.c:44 -#, c-format -msgid "missing `%c' symbol" -msgstr "" - -#: grub-core/commands/pcidump.c:168 -msgid "[-s POSITION] [-d DEVICE]" -msgstr "" - -#: grub-core/commands/pcidump.c:169 -msgid "Show raw dump of the PCI configuration space." -msgstr "" - -#: grub-core/commands/pgp.c:45 -msgid "Skip signature-checking of the public key file." -msgstr "" - -#. TRANSLATORS: it's about GNUPG signatures. -#: grub-core/commands/pgp.c:71 grub-core/commands/pgp.c:81 -#: grub-core/commands/pgp.c:86 grub-core/commands/pgp.c:96 -#: grub-core/commands/pgp.c:103 grub-core/commands/pgp.c:107 -#: grub-core/commands/pgp.c:114 grub-core/commands/pgp.c:119 -#: grub-core/commands/pgp.c:124 grub-core/commands/pgp.c:128 -#: grub-core/commands/pgp.c:268 grub-core/commands/pgp.c:276 -#: grub-core/commands/pgp.c:281 grub-core/commands/pgp.c:289 -#: grub-core/commands/pgp.c:320 grub-core/commands/pgp.c:327 -#: grub-core/commands/pgp.c:332 grub-core/commands/pgp.c:342 -#: grub-core/commands/pgp.c:468 grub-core/commands/pgp.c:471 -#: grub-core/commands/pgp.c:474 grub-core/commands/pgp.c:477 -#: grub-core/commands/pgp.c:484 grub-core/commands/pgp.c:490 -#: grub-core/commands/pgp.c:665 -msgid "bad signature" -msgstr "" - -#. TRANSLATORS: %08x is 32-bit key id. -#: grub-core/commands/pgp.c:636 grub-core/commands/pgp.c:812 -#, c-format -msgid "public key %08x not found" -msgstr "" - -#: grub-core/commands/pgp.c:651 grub-core/disk/diskfilter.c:772 -#: grub-core/disk/diskfilter.c:782 grub-core/fs/ntfs.c:404 -#: grub-core/fs/zfs/zfs.c:1933 grub-core/normal/menu.c:428 -#, c-format -msgid "module `%s' isn't loaded" -msgstr "" - -#: grub-core/commands/pgp.c:994 -msgid "[-s|--skip-sig] FILE SIGNATURE_FILE [PUBKEY_FILE]" -msgstr "" - -#: grub-core/commands/pgp.c:995 -msgid "Verify detached signature." -msgstr "" - -#: grub-core/commands/pgp.c:998 -msgid "[-s|--skip-sig] PUBKEY_FILE" -msgstr "" - -#: grub-core/commands/pgp.c:999 -msgid "Add PUBKEY_FILE to trusted keys." -msgstr "" - -#: grub-core/commands/pgp.c:1003 -msgid "Show the list of trusted keys." -msgstr "" - -#: grub-core/commands/pgp.c:1005 -msgid "PUBKEY_ID" -msgstr "" - -#: grub-core/commands/pgp.c:1006 -msgid "Remove PUBKEY_ID from trusted keys." -msgstr "" - -#: grub-core/commands/probe.c:40 grub-core/commands/tr.c:32 -msgid "Set a variable to return value." -msgstr "" - -#. TRANSLATORS: It's a driver that is currently in use to access -#. the diven disk. -#: grub-core/commands/probe.c:43 -msgid "Determine driver." -msgstr "" - -#: grub-core/commands/probe.c:44 -msgid "Determine partition map type." -msgstr "" - -#: grub-core/commands/probe.c:45 -msgid "Determine filesystem type." -msgstr "" - -#: grub-core/commands/probe.c:46 -msgid "Determine filesystem UUID." -msgstr "" - -#: grub-core/commands/probe.c:47 -msgid "Determine filesystem label." -msgstr "" - -#: grub-core/commands/probe.c:139 grub-core/commands/probe.c:146 -#: util/grub-probe.c:462 -#, c-format -msgid "filesystem `%s' does not support labels" -msgstr "" - -#: grub-core/commands/probe.c:165 grub-core/fs/zfs/zfsinfo.c:430 -#: grub-core/loader/i386/bsd.c:169 util/grub-setup.c:223 -msgid "DEVICE" -msgstr "" - -#: grub-core/commands/probe.c:166 -msgid "Retrieve device info." -msgstr "" - -#: grub-core/commands/read.c:85 -msgid "[ENVVAR]" -msgstr "" - -#: grub-core/commands/read.c:86 -msgid "Set variable with user input." -msgstr "" - -#: grub-core/commands/reboot.c:40 -msgid "Reboot the computer." -msgstr "" - -#. TRANSLATORS: in regexp you can mark some -#. groups with parentheses. These groups are -#. then numbered and you can save some of -#. them in variables. In other programs -#. those components aree often referenced with -#. back slash, e.g. \1. Compare -#. sed -e 's,\([a-z][a-z]*\),lowercase=\1,g' -#. The whole matching component is saved in VARNAME, not its number. -#. -#: grub-core/commands/regexp.c:44 -msgid "Store matched component NUMBER in VARNAME." -msgstr "" - -#: grub-core/commands/regexp.c:45 -msgid "[NUMBER:]VARNAME" -msgstr "" - -#. TRANSLATORS: This are two arguments. So it's -#. two separate units to translate and pay -#. attention not to reverse them. -#: grub-core/commands/regexp.c:157 -msgid "REGEXP STRING" -msgstr "" - -#: grub-core/commands/regexp.c:158 -msgid "Test if REGEXP matches STRING." -msgstr "" - -#: grub-core/commands/search.c:324 -msgid "NAME [VARIABLE] [HINTS]" -msgstr "" - -#: grub-core/commands/search_file.c:4 -msgid "" -"Search devices by file. If VARIABLE is specified, the first device found is " -"set to a variable." -msgstr "" - -#: grub-core/commands/search_label.c:4 -msgid "" -"Search devices by label. If VARIABLE is specified, the first device found is " -"set to a variable." -msgstr "" - -#: grub-core/commands/search_uuid.c:4 -msgid "" -"Search devices by UUID. If VARIABLE is specified, the first device found is " -"set to a variable." -msgstr "" - -#: grub-core/commands/search_wrap.c:34 -msgid "Search devices by a file." -msgstr "" - -#: grub-core/commands/search_wrap.c:35 -msgid "Search devices by a filesystem label." -msgstr "" - -#: grub-core/commands/search_wrap.c:37 -msgid "Search devices by a filesystem UUID." -msgstr "" - -#: grub-core/commands/search_wrap.c:40 -msgid "Set a variable to the first device found." -msgstr "" - -#: grub-core/commands/search_wrap.c:42 -msgid "Do not probe any floppy drive." -msgstr "" - -#: grub-core/commands/search_wrap.c:44 -msgid "" -"First try the device HINT. If HINT ends in comma, also try subpartitions" -msgstr "" - -#: grub-core/commands/search_wrap.c:45 grub-core/commands/search_wrap.c:49 -#: grub-core/commands/search_wrap.c:53 grub-core/commands/search_wrap.c:57 -#: grub-core/commands/search_wrap.c:61 grub-core/commands/search_wrap.c:65 -msgid "HINT" -msgstr "" - -#: grub-core/commands/search_wrap.c:47 -msgid "" -"First try the device HINT if currently running on IEEE1275. If HINT ends in " -"comma, also try subpartitions" -msgstr "" - -#: grub-core/commands/search_wrap.c:51 -msgid "" -"First try the device HINT if currently running on BIOS. If HINT ends in " -"comma, also try subpartitions" -msgstr "" - -#: grub-core/commands/search_wrap.c:55 -msgid "" -"First try the device HINT if direct hardware access is supported. If HINT " -"ends in comma, also try subpartitions" -msgstr "" - -#: grub-core/commands/search_wrap.c:59 -msgid "" -"First try the device HINT if currently running on EFI. If HINT ends in " -"comma, also try subpartitions" -msgstr "" - -#: grub-core/commands/search_wrap.c:63 -msgid "" -"First try the device HINT if currently running on ARC. If HINT ends in " -"comma, also try subpartitions" -msgstr "" - -#: grub-core/commands/search_wrap.c:207 -msgid "[-f|-l|-u|-s|-n] [--hint HINT [--hint HINT] ...] NAME" -msgstr "" - -#: grub-core/commands/search_wrap.c:209 -msgid "" -"Search devices by file, filesystem label or filesystem UUID. If --set is " -"specified, the first device found is set to a variable. If no variable name " -"is specified, `root' is used." -msgstr "" - -#: grub-core/commands/setpci.c:132 -#, c-format -msgid "Register %x of %x:%02x.%x is %x\n" -msgstr "" - -#: grub-core/commands/setpci.c:333 -msgid "[-s POSITION] [-d DEVICE] [-v VAR] REGISTER[=VALUE[:MASK]]" -msgstr "" - -#: grub-core/commands/setpci.c:335 -msgid "Manipulate PCI devices." -msgstr "" - -#: grub-core/commands/sleep.c:32 -msgid "Verbose countdown." -msgstr "" - -#: grub-core/commands/sleep.c:33 -msgid "Allow to interrupt with ESC." -msgstr "" - -#: grub-core/commands/sleep.c:109 -msgid "NUMBER_OF_SECONDS" -msgstr "" - -#: grub-core/commands/sleep.c:110 -msgid "Wait for a specified number of seconds." -msgstr "" - -#: grub-core/commands/syslinuxcfg.c:50 util/grub-syslinux2cfg.c:66 -msgid "root directory of the syslinux disk [default=/]." -msgstr "" - -#: grub-core/commands/syslinuxcfg.c:53 util/grub-syslinux2cfg.c:72 -msgid "" -"current directory of syslinux [default is parent directory of input file]." -msgstr "" - -#: grub-core/commands/syslinuxcfg.c:55 util/grub-syslinux2cfg.c:75 -msgid "assume input is an isolinux configuration file." -msgstr "" - -#: grub-core/commands/syslinuxcfg.c:56 util/grub-syslinux2cfg.c:76 -msgid "assume input is a pxelinux configuration file." -msgstr "" - -#: grub-core/commands/syslinuxcfg.c:57 util/grub-syslinux2cfg.c:77 -msgid "assume input is a syslinux configuration file." -msgstr "" - -#. TRANSLATORS: "syslinux config" means -#. "config as used by syslinux". -#: grub-core/commands/syslinuxcfg.c:189 -msgid "Execute syslinux config in same context" -msgstr "" - -#: grub-core/commands/syslinuxcfg.c:195 -msgid "Execute syslinux config in new context" -msgstr "" - -#: grub-core/commands/syslinuxcfg.c:201 -msgid "Execute syslinux config in same context taking only menu entries" -msgstr "" - -#: grub-core/commands/syslinuxcfg.c:207 -msgid "Execute syslinux config in new context taking only menu entries" -msgstr "" - -#: grub-core/commands/terminal.c:90 -msgid "no terminal specified" -msgstr "" - -#: grub-core/commands/terminal.c:112 grub-core/commands/terminal.c:139 -#, c-format -msgid "terminal `%s' isn't found" -msgstr "" - -#: grub-core/commands/terminal.c:244 -msgid "Active input terminals:" -msgstr "" - -#: grub-core/commands/terminal.c:245 -msgid "Available input terminals:" -msgstr "" - -#: grub-core/commands/terminal.c:261 -msgid "Active output terminals:" -msgstr "" - -#: grub-core/commands/terminal.c:262 -msgid "Available output terminals:" -msgstr "" - -#: grub-core/commands/terminal.c:271 grub-core/commands/terminal.c:276 -msgid "[--append|--remove] [TERMINAL1] [TERMINAL2] ..." -msgstr "" - -#: grub-core/commands/terminal.c:273 -msgid "List or select an input terminal." -msgstr "" - -#: grub-core/commands/terminal.c:278 -msgid "List or select an output terminal." -msgstr "" - -#: grub-core/commands/test.c:444 -msgid "EXPRESSION ]" -msgstr "" - -#: grub-core/commands/test.c:444 grub-core/commands/test.c:447 -msgid "Evaluate an expression." -msgstr "" - -#: grub-core/commands/test.c:447 -msgid "EXPRESSION" -msgstr "" - -#: grub-core/commands/testload.c:164 -msgid "Load the same file in multiple ways." -msgstr "" - -#: grub-core/commands/testspeed.c:35 -msgid "Specify size for each read operation" -msgstr "" - -#: grub-core/commands/testspeed.c:58 -msgid "invalid block size" -msgstr "" - -#: grub-core/commands/testspeed.c:80 -#, c-format -msgid "File size: %s\n" -msgstr "" - -#: grub-core/commands/testspeed.c:83 -#, c-format -msgid "Elapsed time: %d.%03d s \n" -msgstr "" - -#: grub-core/commands/testspeed.c:92 -#, c-format -msgid "Speed: %s \n" -msgstr "" - -#: grub-core/commands/testspeed.c:107 -msgid "[-s SIZE] FILENAME" -msgstr "" - -#: grub-core/commands/testspeed.c:108 -msgid "Test file read speed." -msgstr "" - -#: grub-core/commands/time.c:38 grub-core/script/execute.c:974 -msgid "no command is specified" -msgstr "" - -#: grub-core/commands/time.c:50 -#, c-format -msgid "Elapsed time: %d.%03d seconds \n" -msgstr "" - -#: grub-core/commands/time.c:61 -msgid "COMMAND [ARGS]" -msgstr "" - -#: grub-core/commands/time.c:62 -msgid "Measure time used by COMMAND" -msgstr "" - -#: grub-core/commands/tr.c:33 -msgid "Translate to upper case." -msgstr "" - -#: grub-core/commands/tr.c:34 -msgid "Translate to lower case." -msgstr "" - -#: grub-core/commands/tr.c:119 -msgid "[OPTIONS] [SET1] [SET2] [STRING]" -msgstr "" - -#: grub-core/commands/tr.c:120 -msgid "Translate SET1 characters to SET2 in STRING." -msgstr "" - -#. TRANSLATORS: it's a command description. -#: grub-core/commands/true.c:50 -msgid "Do nothing, successfully." -msgstr "" - -#. TRANSLATORS: it's a command description. -#: grub-core/commands/true.c:54 -msgid "Do nothing, unsuccessfully." -msgstr "" - -#: grub-core/commands/usbtest.c:221 -msgid "Test USB support." -msgstr "" - -#: grub-core/commands/verifiers.c:120 -#, c-format -msgid "verification requested but nobody cares: %s" -msgstr "" - -#: grub-core/commands/verifiers.c:140 -msgid "big file signature isn't implemented yet" -msgstr "" - -#: grub-core/commands/videoinfo.c:61 -msgid "Text-only " -msgstr "" - -#. TRANSLATORS: "Direct color" is a mode when the color components -#. are written dirrectly into memory. -#: grub-core/commands/videoinfo.c:66 -#, c-format -msgid "Direct color, mask: %d/%d/%d/%d pos: %d/%d/%d/%d" -msgstr "" - -#. TRANSLATORS: In "paletted color" mode you write the index of the color -#. in the palette. Synonyms include "packed pixel". -#: grub-core/commands/videoinfo.c:78 -msgid "Paletted " -msgstr "" - -#: grub-core/commands/videoinfo.c:80 -msgid "YUV " -msgstr "" - -#. TRANSLATORS: "Planar" is the video memory where you have to write -#. in several different banks "plans" to control the different color -#. components of the same pixel. -#: grub-core/commands/videoinfo.c:85 -msgid "Planar " -msgstr "" - -#: grub-core/commands/videoinfo.c:87 -msgid "Hercules " -msgstr "" - -#: grub-core/commands/videoinfo.c:89 -msgid "CGA " -msgstr "" - -#. TRANSLATORS: Non-chain 4 is a 256-color planar -#. (unchained) video memory mode. -#: grub-core/commands/videoinfo.c:93 -msgid "Non-chain 4 " -msgstr "" - -#: grub-core/commands/videoinfo.c:95 -msgid "Monochrome " -msgstr "" - -#: grub-core/commands/videoinfo.c:97 -msgid "Unknown video mode " -msgstr "" - -#: grub-core/commands/videoinfo.c:111 -msgid " EDID checksum invalid" -msgstr "" - -#: grub-core/commands/videoinfo.c:116 -#, c-format -msgid " EDID version: %u.%u\n" -msgstr "" - -#: grub-core/commands/videoinfo.c:120 -#, c-format -msgid " Preferred mode: %ux%u\n" -msgstr "" - -#: grub-core/commands/videoinfo.c:123 -msgid " No preferred mode available\n" -msgstr "" - -#: grub-core/commands/videoinfo.c:146 grub-core/video/video.c:490 -#: grub-core/video/video.c:498 grub-core/video/video.c:509 -#: grub-core/video/video.c:520 grub-core/video/video.c:528 -#, c-format -msgid "invalid video mode specification `%s'" -msgstr "" - -#: grub-core/commands/videoinfo.c:168 -msgid "List of supported video modes:" -msgstr "" - -#: grub-core/commands/videoinfo.c:169 -msgid "Legend: mask/position=red/green/blue/reserved" -msgstr "" - -#: grub-core/commands/videoinfo.c:176 -#, c-format -msgid "Adapter `%s':\n" -msgstr "" - -#: grub-core/commands/videoinfo.c:180 -msgid " No info available" -msgstr "" - -#: grub-core/commands/videoinfo.c:198 -msgid " Failed to initialize video adapter" -msgstr "" - -#. TRANSLATORS: "x" has to be entered in, -#. like an identifier, so please don't -#. use better Unicode codepoints. -#: grub-core/commands/videoinfo.c:239 grub-core/commands/videoinfo.c:248 -msgid "[WxH[xD]]" -msgstr "" - -#: grub-core/commands/videoinfo.c:240 grub-core/commands/videoinfo.c:249 -msgid "" -"List available video modes. If resolution is given show only modes matching " -"it." -msgstr "" - -#. TRANSLATORS: "x" has to be entered in, -#. like an identifier, so please don't -#. use better Unicode codepoints. -#: grub-core/commands/videotest.c:225 -msgid "[WxH]" -msgstr "" - -#. TRANSLATORS: Here, on the other hand, it's -#. nicer to use unicode cross instead of x. -#: grub-core/commands/videotest.c:228 -msgid "Test video subsystem in mode WxH." -msgstr "" - -#: grub-core/commands/videotest.c:231 -msgid "Test video subsystem." -msgstr "" - -#: grub-core/commands/xen/lsxen.c:80 grub-core/commands/xen/lsxen.c:82 -msgid "[DIR]" -msgstr "" - -#: grub-core/commands/xen/lsxen.c:81 grub-core/commands/xen/lsxen.c:83 -msgid "List Xen storage." -msgstr "" - -#. TRANSLATORS: GRUBUUID stands for "filesystem -#. UUID as used in GRUB". -#: grub-core/commands/xnu_uuid.c:110 -msgid "[-l] GRUBUUID [VARNAME]" -msgstr "" - -#: grub-core/commands/xnu_uuid.c:111 -msgid "" -"Transform 64-bit UUID to format suitable for XNU. If -l is given keep it " -"lowercase as done by blkid." -msgstr "" - -#: grub-core/disk/arc/arcdisk.c:248 grub-core/disk/efi/efidisk.c:603 -#: grub-core/disk/i386/pc/biosdisk.c:498 grub-core/disk/i386/pc/biosdisk.c:543 -#: grub-core/disk/ieee1275/nand.c:198 grub-core/disk/ieee1275/obdisk.c:527 -#: grub-core/disk/ieee1275/ofdisk.c:586 -#, c-format -msgid "failure reading sector 0x%llx from `%s'" -msgstr "" - -#: grub-core/disk/arc/arcdisk.c:284 grub-core/disk/efi/efidisk.c:626 -#: grub-core/disk/i386/pc/biosdisk.c:548 grub-core/disk/ieee1275/ofdisk.c:606 -#, c-format -msgid "failure writing sector 0x%llx to `%s'" -msgstr "" - -#: grub-core/disk/cryptodisk.c:40 -msgid "Mount by UUID." -msgstr "" - -#. TRANSLATORS: It's still restricted to cryptodisks only. -#: grub-core/disk/cryptodisk.c:42 -msgid "Mount all." -msgstr "" - -#: grub-core/disk/cryptodisk.c:43 -msgid "Mount all volumes with `boot' flag set." -msgstr "" - -#. TRANSLATORS: The first %s is the file being looked at, the second %s is -#. the error message. -#: grub-core/disk/cryptodisk.c:526 grub-core/kern/emu/hostdisk.c:152 -#: grub-core/kern/emu/hostdisk.c:262 grub-core/kern/emu/hostdisk.c:434 -#: grub-core/kern/emu/misc.c:168 grub-core/kern/emu/misc.c:174 -#: grub-core/kern/emu/misc.c:196 grub-core/osdep/bsd/getroot.c:92 -#: grub-core/osdep/bsd/getroot.c:168 grub-core/osdep/hurd/getroot.c:68 -#: grub-core/osdep/linux/blocklist.c:65 grub-core/osdep/linux/getroot.c:150 -#: grub-core/osdep/linux/hostdisk.c:194 grub-core/osdep/linux/hostdisk.c:421 -#: grub-core/osdep/linux/ofpath.c:417 grub-core/osdep/linux/ofpath.c:422 -#: grub-core/osdep/linux/ofpath.c:517 grub-core/osdep/linux/ofpath.c:530 -#: grub-core/osdep/sun/getroot.c:110 grub-core/osdep/windows/blocklist.c:98 -#: grub-core/tests/video_checksum.c:279 util/editenv.c:46 util/glue-efi.c:115 -#: util/glue-efi.c:120 util/glue-efi.c:130 util/grub-editenv.c:138 -#: util/grub-editenv.c:192 util/grub-file.c:83 util/grub-fstest.c:128 -#: util/grub-fstest.c:568 util/grub-install-common.c:92 -#: util/grub-install-common.c:94 util/grub-install-common.c:101 -#: util/grub-install-common.c:529 util/grub-menulst2cfg.c:53 -#: util/grub-menulst2cfg.c:68 util/grub-mkimage.c:292 util/grub-mklayout.c:504 -#: util/grub-mklayout.c:516 util/grub-mknetdir.c:133 util/grub-mknetdir.c:151 -#: util/grub-mkrescue.c:627 util/grub-mkrescue.c:631 util/grub-mkrescue.c:879 -#: util/grub-mkrescue.c:883 util/grub-mkstandalone.c:253 util/grub-mount.c:498 -#: util/grub-render-label.c:169 util/grub-script-check.c:175 -#: util/grub-syslinux2cfg.c:181 util/grub-syslinux2cfg.c:191 -#: util/grub-syslinux2cfg.c:212 util/grub-syslinux2cfg.c:228 util/misc.c:91 -#: util/render-label.c:76 util/render-label.c:163 util/render-label.c:174 -#: util/resolve.c:246 util/setup.c:783 -#, c-format -msgid "cannot open `%s': %s" -msgstr "" - -#: grub-core/disk/cryptodisk.c:583 grub-core/disk/cryptodisk.c:628 -#: grub-core/kern/emu/hostdisk.c:270 grub-core/kern/emu/hostfs.c:142 -#: grub-core/osdep/linux/hostdisk.c:456 util/grub-editenv.c:143 -#: util/grub-editenv.c:149 util/grub-fstest.c:320 util/misc.c:111 -#, c-format -msgid "cannot seek `%s': %s" -msgstr "" - -#: grub-core/disk/cryptodisk.c:1144 -msgid "SOURCE|-u UUID|-a|-b" -msgstr "" - -#: grub-core/disk/cryptodisk.c:1145 -msgid "Mount a crypto device." -msgstr "" - -#. TRANSLATORS: This message kicks in during the detection of -#. which modules needs to be included in core image. This happens -#. in the case of degraded RAID and means that autodetection may -#. fail to include some of modules. It's an installation time -#. message, not runtime message. -#: grub-core/disk/diskfilter.c:343 grub-core/disk/diskfilter.c:376 -#, c-format -msgid "" -"Couldn't find physical volume `%s'. Some modules may be missing from core " -"image." -msgstr "" - -#: grub-core/disk/diskfilter.c:480 -#, c-format -msgid "physical volume %s not found" -msgstr "" - -#: grub-core/disk/efi/efidisk.c:600 grub-core/disk/efi/efidisk.c:623 -#, c-format -msgid "no media in `%s'" -msgstr "" - -#: grub-core/disk/geli.c:75 -msgid "Couldn't load sha256" -msgstr "" - -#: grub-core/disk/geli.c:85 -msgid "Couldn't load sha512" -msgstr "" - -#: grub-core/disk/geli.c:216 grub-core/disk/geli.c:220 -msgid "couldn't read ELI metadata" -msgstr "" - -#: grub-core/disk/geli.c:231 -msgid "wrong ELI magic or version" -msgstr "" - -#: grub-core/disk/geli.c:435 grub-core/disk/luks.c:329 -msgid "Attempting to decrypt master key..." -msgstr "" - -#: grub-core/disk/geli.c:441 grub-core/disk/luks.c:347 -#, c-format -msgid "Enter passphrase for %s%s%s (%s): " -msgstr "" - -#. TRANSLATORS: It's a cryptographic key slot: one element of an array -#. where each element is either empty or holds a key. -#: grub-core/disk/geli.c:530 grub-core/disk/luks.c:451 -#, c-format -msgid "Slot %d opened\n" -msgstr "" - -#: grub-core/disk/i386/pc/biosdisk.c:470 grub-core/disk/i386/pc/biosdisk.c:524 -#: grub-core/disk/i386/pc/biosdisk.c:534 grub-core/kern/disk_common.c:47 -#, c-format -msgid "attempt to read or write outside of disk `%s'" -msgstr "" - -#: grub-core/disk/i386/pc/biosdisk.c:491 grub-core/disk/i386/pc/biosdisk.c:611 -#: grub-core/disk/scsi.c:726 -msgid "cannot write to CD-ROM" -msgstr "" - -#: grub-core/disk/i386/pc/biosdisk.c:662 -msgid "" -"Native disk drivers are in use. Refusing to use firmware disk interface." -msgstr "" - -#. TRANSLATORS: it's a partition for embedding, -#. not a partition embed into something. GRUB -#. install tools put core.img into a place -#. usable for bootloaders (called generically -#. "embedding zone") and this operation is -#. called "embedding". -#: grub-core/disk/ldm.c:1015 -msgid "your LDM Embedding Partition is too small; embedding won't be possible" -msgstr "" - -#. TRANSLATORS: it's a partition for embedding, -#. not a partition embed into something. -#: grub-core/disk/ldm.c:1033 -msgid "this LDM has no Embedding Partition; embedding won't be possible" -msgstr "" - -#. TRANSLATORS: The disk is simply removed from the list of available ones, -#. not wiped, avoid to scare user. -#: grub-core/disk/loopback.c:45 -msgid "Delete the specified loopback drive." -msgstr "" - -#: grub-core/disk/loopback.c:237 -msgid "[-d] DEVICENAME FILE." -msgstr "" - -#. TRANSLATORS: The file itself is not destroyed -#. or transformed into drive. -#: grub-core/disk/loopback.c:240 -msgid "Make a virtual drive from a file." -msgstr "" - -#: grub-core/efiemu/i386/loadcore32.c:111 -#: grub-core/efiemu/i386/loadcore64.c:125 grub-core/kern/arm/dl.c:256 -#: grub-core/kern/arm64/dl.c:187 grub-core/kern/i386/dl.c:75 -#: grub-core/kern/ia64/dl.c:140 grub-core/kern/mips/dl.c:258 -#: grub-core/kern/powerpc/dl.c:163 grub-core/kern/riscv/dl.c:334 -#: grub-core/kern/sparc64/dl.c:180 grub-core/kern/x86_64/dl.c:110 -#: util/grub-mkimagexx.c:756 util/grub-mkimagexx.c:881 -#: util/grub-mkimagexx.c:945 util/grub-mkimagexx.c:1026 -#: util/grub-mkimagexx.c:1120 util/grub-mkimagexx.c:1222 -#: util/grub-mkimagexx.c:1413 util/grub-mkimagexx.c:1628 -#: util/grub-mkimagexx.c:1665 util/grub-mkimagexx.c:1697 -#: util/grub-mkimagexx.c:1767 util/grub-mkimagexx.c:1797 -#, c-format -msgid "relocation 0x%x is not implemented yet" -msgstr "" - -#: grub-core/efiemu/loadcore.c:200 grub-core/efiemu/loadcore.c:237 -#: grub-core/loader/i386/bsdXX.c:317 util/grub-mkimagexx.c:2360 -msgid "no symbol table" -msgstr "" - -#: grub-core/efiemu/loadcore.c:346 grub-core/kern/dl.c:609 -#: grub-core/loader/ia64/efi/linux.c:345 grub-core/loader/mips/linux.c:248 -#: grub-core/loader/multiboot_elfxx.c:76 -#: grub-core/loader/powerpc/ieee1275/linux.c:280 -#: grub-core/loader/sparc64/ieee1275/linux.c:320 -msgid "this ELF file is not of the right type" -msgstr "" - -#: grub-core/efiemu/main.c:313 -msgid "Load and initialize EFI emulator." -msgstr "" - -#: grub-core/efiemu/main.c:317 -msgid "Finalize loading of EFI emulator." -msgstr "" - -#: grub-core/efiemu/main.c:320 -msgid "Unload EFI emulator." -msgstr "" - -#: grub-core/efiemu/symbols.c:92 grub-core/kern/dl.c:376 -#, c-format -msgid "symbol `%s' not found" -msgstr "" - -#: grub-core/font/font_cmd.c:52 -msgid "Loaded fonts:" -msgstr "" - -#: grub-core/font/font_cmd.c:74 -msgid "FILE..." -msgstr "" - -#: grub-core/font/font_cmd.c:75 -msgid "Specify one or more font files to load." -msgstr "" - -#: grub-core/font/font_cmd.c:78 -msgid "List the loaded fonts." -msgstr "" - -#: grub-core/fs/archelp.c:216 grub-core/fs/archelp.c:278 -#: grub-core/fs/btrfs.c:1815 grub-core/fs/fshelp.c:227 grub-core/fs/jfs.c:736 -#: grub-core/fs/minix.c:369 grub-core/fs/ufs.c:454 -msgid "too deep nesting of symlinks" -msgstr "" - -#: grub-core/fs/bfs.c:228 grub-core/fs/fshelp.c:368 grub-core/fs/minix.c:270 -#: grub-core/kern/file.c:156 -msgid "attempt to read past the end of file" -msgstr "" - -#: grub-core/fs/btrfs.c:1698 grub-core/fs/btrfs.c:1957 -#: grub-core/fs/fshelp.c:189 grub-core/fs/fshelp.c:309 grub-core/fs/jfs.c:431 -#: grub-core/fs/minix.c:414 grub-core/fs/minix.c:562 -#: grub-core/fs/reiserfs.c:732 grub-core/fs/ufs.c:531 grub-core/fs/ufs.c:671 -#: grub-core/fs/zfs/zfs.c:2831 grub-core/fs/zfs/zfs.c:4247 -msgid "not a directory" -msgstr "" - -#: grub-core/fs/btrfs.c:2063 grub-core/fs/fshelp.c:307 grub-core/fs/jfs.c:835 -#: grub-core/fs/zfs/zfs.c:3801 -msgid "not a regular file" -msgstr "" - -#: grub-core/fs/btrfs.c:2157 grub-core/fs/zfs/zfs.c:4333 -#: grub-core/partmap/msdos.c:400 -msgid "your core.img is unusually large. It won't fit in the embedding area" -msgstr "" - -#: grub-core/fs/fshelp.c:281 grub-core/fs/minix.c:630 grub-core/fs/ufs.c:661 -#: grub-core/fs/ufs.c:757 grub-core/kern/fs.c:168 grub-core/kern/fs.c:180 -#, c-format -msgid "invalid file name `%s'" -msgstr "" - -#: grub-core/fs/zfs/zfs.c:453 -msgid "checksum verification failed" -msgstr "" - -#: grub-core/fs/zfs/zfs.c:1465 -msgid "couldn't find a necessary member device of multi-device filesystem" -msgstr "" - -#: grub-core/fs/zfs/zfscrypt.c:292 -msgid "no decryption key available" -msgstr "" - -#: grub-core/fs/zfs/zfscrypt.c:304 -msgid "MAC verification failed" -msgstr "" - -#: grub-core/fs/zfs/zfscrypt.c:413 -msgid "Assume input is raw." -msgstr "" - -#: grub-core/fs/zfs/zfscrypt.c:414 -msgid "Assume input is hex." -msgstr "" - -#: grub-core/fs/zfs/zfscrypt.c:415 -msgid "Assume input is passphrase." -msgstr "" - -#: grub-core/fs/zfs/zfscrypt.c:437 util/grub-fstest.c:553 util/grub-mount.c:483 -msgid "Enter ZFS password: " -msgstr "" - -#: grub-core/fs/zfs/zfscrypt.c:476 -msgid "[-h|-p|-r] [FILE]" -msgstr "" - -#: grub-core/fs/zfs/zfscrypt.c:477 -msgid "Import ZFS wrapping key stored in FILE." -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:51 -msgid "Virtual device is removed" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:57 -msgid "Virtual device is faulted" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:63 -msgid "Virtual device is offline" -msgstr "" - -#. TRANSLATORS: degraded doesn't mean broken but that some of -#. component are missing but virtual device as whole is still usable. -#: grub-core/fs/zfs/zfsinfo.c:70 -msgid "Virtual device is degraded" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:73 -msgid "Virtual device is online" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:89 -msgid "Incorrect virtual device: no type available" -msgstr "" - -#. TRANSLATORS: The virtual devices form a tree (in graph-theoretical -#. sense). The nodes like mirror or raidz have children: member devices. -#. The "real" devices which actually store data are called "leafs" -#. (again borrowed from graph theory) and can be either disks -#. (or partitions) or files. -#: grub-core/fs/zfs/zfsinfo.c:105 -msgid "Leaf virtual device (file or disk)" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:113 -msgid "Bootpath: unavailable\n" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:115 -#, c-format -msgid "Bootpath: %s\n" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:120 -msgid "Path: unavailable" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:122 -#, c-format -msgid "Path: %s\n" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:127 -msgid "Devid: unavailable" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:129 -#, c-format -msgid "Devid: %s\n" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:148 -msgid "This VDEV is a mirror" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:153 -#, c-format -msgid "This VDEV is a RAIDZ%llu\n" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:158 -msgid "Incorrect VDEV" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:161 -#, c-format -msgid "VDEV with %d children\n" -msgstr "" - -#. TRANSLATORS: it's the element carying the number %d, not -#. total element number. And the number itself is fine, -#. only the element isn't. -#. -#: grub-core/fs/zfs/zfsinfo.c:177 -#, c-format -msgid "VDEV element number %d isn't correct\n" -msgstr "" - -#. TRANSLATORS: it's the element carying the number %d, not -#. total element number. This is used in enumeration -#. "Element number 1", "Element number 2", ... -#: grub-core/fs/zfs/zfsinfo.c:184 -#, c-format -msgid "VDEV element number %d:\n" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:193 -#, c-format -msgid "Unknown virtual device type: %s\n" -msgstr "" - -#. TRANSLATORS: Here we speak about ZFS pools it's semi-marketing, -#. semi-technical term by Sun/Oracle and should be translated in sync with -#. other ZFS-related software and documentation. -#: grub-core/fs/zfs/zfsinfo.c:254 -msgid "Pool state: active" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:255 -msgid "Pool state: exported" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:256 -msgid "Pool state: destroyed" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:257 -msgid "Pool state: reserved for hot spare" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:258 -msgid "Pool state: level 2 ARC device" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:259 -msgid "Pool state: uninitialized" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:260 -msgid "Pool state: unavailable" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:261 -msgid "Pool state: potentially active" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:306 -msgid "Pool name: unavailable" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:308 -#, c-format -msgid "Pool name: %s\n" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:313 -msgid "Pool GUID: unavailable" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:315 -#, c-format -msgid "Pool GUID: %016llx\n" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:320 -msgid "Unable to retrieve pool state" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:322 -msgid "Unrecognized pool state" -msgstr "" - -#. TRANSLATORS: There are undetermined number of virtual devices -#. in a device tree, not just one. -#. -#: grub-core/fs/zfs/zfsinfo.c:332 -msgid "No virtual device tree available" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:431 -msgid "Print ZFS info about DEVICE." -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:433 -msgid "FILESYSTEM [VARIABLE]" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:434 -msgid "Print ZFS-BOOTFSOBJ or store it into VARIABLE" -msgstr "" - -#. TRANSLATORS: at this position GRUB waits for the user to do an action -#. in remote debugger, namely to tell it to establish connection. -#: grub-core/gdb/gdb.c:48 -msgid "Now connect the remote debugger, please." -msgstr "" - -#. TRANSLATORS: GDB stub is a small part of -#. GDB functionality running on local host -#. which allows remote debugger to -#. connect to it. -#: grub-core/gdb/gdb.c:84 -msgid "Start GDB stub on given port" -msgstr "" - -#. TRANSLATORS: this refers to triggering -#. a breakpoint so that the user will land -#. into GDB. -#: grub-core/gdb/gdb.c:89 -msgid "Break into GDB" -msgstr "" - -#: grub-core/gdb/gdb.c:91 -msgid "Stop GDB stub" -msgstr "" - -#: grub-core/gettext/gettext.c:85 -msgid "premature end of file" -msgstr "" - -#. TRANSLATORS: It refers to passing the string through gettext. -#. So it's "translate" in the same meaning as in what you're -#. doing now. -#. -#: grub-core/gettext/gettext.c:525 -msgid "Translates the string with the current settings." -msgstr "" - -#: grub-core/gfxmenu/gui_label.c:186 grub-core/normal/menu_text.c:184 -msgid "" -"Press enter to boot the selected OS, `e' to edit the commands before booting " -"or `c' for a command-line. ESC to return previous menu." -msgstr "" - -#: grub-core/gfxmenu/gui_label.c:190 grub-core/normal/menu_text.c:192 -msgid "" -"Press enter to boot the selected OS, `e' to edit the commands before booting " -"or `c' for a command-line." -msgstr "" - -#: grub-core/gfxmenu/gui_label.c:194 -msgid "enter: boot, `e': options, `c': cmd-line" -msgstr "" - -#: grub-core/gfxmenu/gui_progress_bar.c:339 grub-core/normal/menu_text.c:446 -#, c-format -msgid "The highlighted entry will be executed automatically in %ds." -msgstr "" - -#. TRANSLATORS: 's' stands for seconds. -#. It's a standalone timeout notification. -#. Please use the short form in your language. -#: grub-core/gfxmenu/gui_progress_bar.c:344 -#, c-format -msgid "%ds remaining." -msgstr "" - -#. TRANSLATORS: 's' stands for seconds. -#. It's a standalone timeout notification. -#. Please use the shortest form available in you language. -#: grub-core/gfxmenu/gui_progress_bar.c:349 grub-core/normal/menu_text.c:444 -#: grub-core/normal/menu_text.c:462 -#, c-format -msgid "%ds" -msgstr "" - -#: grub-core/gfxmenu/view.c:103 -msgid "GRUB Boot Menu" -msgstr "" - -#: grub-core/hello/hello.c:36 -msgid "Hello World" -msgstr "" - -#: grub-core/hello/hello.c:45 -msgid "Say `Hello World'." -msgstr "" - -#: grub-core/io/gzio.c:409 grub-core/kern/file.c:210 -msgid "attempt to seek outside of the file" -msgstr "" - -#. TRANSLATORS: It's about given file having some strange format, not -#. complete lack of gzip support. -#: grub-core/io/gzio.c:1228 grub-core/io/gzio.c:1237 grub-core/io/gzio.c:1244 -msgid "unsupported gzip format" -msgstr "" - -#: grub-core/io/lzopio.c:511 -msgid "lzop file corrupted" -msgstr "" - -#: grub-core/io/xzio.c:278 -msgid "xz file corrupted or unsupported block options" -msgstr "" - -#: grub-core/kern/arm/dl.c:277 grub-core/kern/arm64/dl.c:44 -#: grub-core/kern/i386/dl.c:36 grub-core/kern/ia64/dl.c:41 -#: grub-core/kern/mips/dl.c:48 grub-core/kern/powerpc/dl.c:36 -#: grub-core/kern/riscv/dl.c:47 grub-core/kern/sparc64/dl.c:36 -#: grub-core/kern/x86_64/dl.c:36 grub-core/loader/i386/bsd.c:1445 -#: grub-core/loader/i386/bsdXX.c:49 grub-core/loader/ia64/efi/linux.c:341 -#: grub-core/loader/mips/linux.c:298 grub-core/loader/multiboot.c:232 -#: grub-core/loader/multiboot_elfxx.c:73 -#: grub-core/loader/powerpc/ieee1275/linux.c:294 -#: grub-core/loader/sparc64/ieee1275/linux.c:331 -msgid "invalid arch-dependent ELF magic" -msgstr "" - -#: grub-core/kern/corecmd.c:178 -msgid "[ENVVAR=VALUE]" -msgstr "" - -#: grub-core/kern/corecmd.c:179 -msgid "Set an environment variable." -msgstr "" - -#: grub-core/kern/corecmd.c:183 -msgid "ENVVAR" -msgstr "" - -#: grub-core/kern/corecmd.c:184 -msgid "Remove an environment variable." -msgstr "" - -#: grub-core/kern/corecmd.c:186 -msgid "[ARG]" -msgstr "" - -#: grub-core/kern/corecmd.c:186 -msgid "List devices or files." -msgstr "" - -#: grub-core/kern/corecmd.c:188 -msgid "Insert a module." -msgstr "" - -#: grub-core/kern/disk.c:236 grub-core/net/net.c:1390 -#, c-format -msgid "disk `%s' not found" -msgstr "" - -#: grub-core/kern/disk_common.c:27 -msgid "attempt to read or write outside of partition" -msgstr "" - -#: grub-core/kern/dl.c:212 grub-core/kern/elf.c:61 grub-core/kern/elf.c:79 -#: grub-core/loader/i386/bsdXX.c:46 grub-core/loader/ia64/efi/linux.c:335 -#: grub-core/loader/multiboot_elfxx.c:69 -msgid "invalid arch-independent ELF magic" -msgstr "" - -#. TRANSLATORS: it refers to the lack of free slots. -#: grub-core/kern/emu/hostdisk.c:208 grub-core/kern/emu/hostdisk.c:466 -msgid "device count exceeds limit" -msgstr "" - -#: grub-core/kern/emu/hostdisk.c:342 util/editenv.c:54 util/grub-editenv.c:197 -#: util/grub-fstest.c:191 util/grub-mkfont.c:796 util/misc.c:114 -#: util/misc.c:129 util/setup.c:788 -#, c-format -msgid "cannot write to `%s': %s" -msgstr "" - -#. TRANSLATORS: Only one entry is ignored. However the suggestion -#. is to correct/delete the whole file. -#. device.map is a file indicating which -#. devices are available at boot time. Fedora populated it with -#. entries like (hd0,1) /dev/sda1 which would mean that every -#. partition is a separate disk for BIOS. Such entries were -#. inactive in GRUB due to its bug which is now gone. Without -#. this additional check these entries would be harmful now. -#. -#: grub-core/kern/emu/hostdisk.c:503 -#, c-format -msgid "" -"the device.map entry `%s' is invalid. Ignoring it. Please correct or delete " -"your device.map" -msgstr "" - -#. TRANSLATORS: device.map is a filename. Not to be translated. -#. device.map specifies disk correspondance overrides. Previously -#. one could create any kind of device name with this. Due to -#. some problems we decided to limit it to just a handful -#. possibilities. -#: grub-core/kern/emu/hostdisk.c:555 -#, c-format -msgid "" -"the drive name `%s' in device.map is incorrect. Using %s instead. Please use " -"the form [hfc]d[0-9]* (E.g. `hd0' or `cd')" -msgstr "" - -#: grub-core/kern/emu/hostfs.c:76 grub-core/kern/emu/hostfs.c:109 -#, c-format -msgid "can't open `%s': %s" -msgstr "" - -#: grub-core/kern/emu/main.c:99 util/grub-fstest.c:516 util/grub-mount.c:452 -msgid "DEVICE_NAME" -msgstr "" - -#: grub-core/kern/emu/main.c:99 grub-core/loader/i386/bsd.c:136 -#: grub-core/loader/i386/bsd.c:169 util/grub-fstest.c:516 util/grub-mount.c:452 -msgid "Set root device." -msgstr "" - -#. TRANSLATORS: There are many devices in device map. -#: grub-core/kern/emu/main.c:102 util/grub-probe.c:733 util/grub-setup.c:85 -#, c-format -msgid "use FILE as the device map [default=%s]" -msgstr "" - -#. TRANSLATORS: There are many devices in device map. -#: grub-core/kern/emu/main.c:105 -msgid "use FILE as memdisk" -msgstr "" - -#: grub-core/kern/emu/main.c:107 util/grub-setup.c:83 -#, c-format -msgid "use GRUB files in the directory DIR [default=%s]" -msgstr "" - -#: grub-core/kern/emu/main.c:108 include/grub/util/install.h:67 -#: util/grub-editenv.c:58 util/grub-fstest.c:525 util/grub-glue-efi.c:58 -#: util/grub-macbless.c:104 util/grub-mkfont.c:962 util/grub-mkimage.c:84 -#: util/grub-mklayout.c:56 util/grub-mount.c:458 util/grub-probe.c:735 -#: util/grub-render-label.c:74 util/grub-script-check.c:52 util/grub-setup.c:90 -#: util/grub-syslinux2cfg.c:78 -msgid "print verbose messages." -msgstr "" - -#: grub-core/kern/emu/main.c:109 grub-core/lib/gnulib/argp-parse.c:85 -msgid "SECS" -msgstr "" - -#: grub-core/kern/emu/main.c:109 -msgid "wait until a debugger will attach" -msgstr "" - -#: grub-core/kern/emu/main.c:171 util/grub-macbless.c:143 -#: util/grub-mkrelpath.c:61 util/grub-probe.c:874 util/grub-script-check.c:75 -#: util/grub-setup.c:203 -#, c-format -msgid "Unknown extra argument `%s'." -msgstr "" - -#: grub-core/kern/emu/main.c:185 -msgid "GRUB emulator." -msgstr "" - -#: grub-core/kern/emu/main.c:213 util/grub-editenv.c:262 -#: util/grub-glue-efi.c:110 util/grub-macbless.c:173 util/grub-mkfont.c:1177 -#: util/grub-mkimage.c:266 util/grub-mklayout.c:494 -#: util/grub-mkpasswd-pbkdf2.c:132 util/grub-mkrelpath.c:96 -#: util/grub-probe.c:863 util/grub-render-label.c:152 -#: util/grub-script-check.c:160 util/grub-setup.c:262 -#: util/grub-syslinux2cfg.c:163 -msgid "Error in parsing command line arguments\n" -msgstr "" - -#. TRANSLATORS: In this case GRUB tells user what he has to do. -#: grub-core/kern/emu/main.c:248 -#, c-format -msgid "Run `gdb %s %d', and set ARGS.HOLD to zero.\n" -msgstr "" - -#: grub-core/kern/emu/misc.c:48 -#, c-format -msgid "%s: warning:" -msgstr "" - -#: grub-core/kern/emu/misc.c:64 -#, c-format -msgid "%s: info:" -msgstr "" - -#: grub-core/kern/emu/misc.c:79 util/grub-fstest.c:567 util/grub-fstest.c:576 -#: util/grub-mount.c:497 util/grub-mount.c:505 -#, c-format -msgid "%s: error:" -msgstr "" - -#: grub-core/kern/emu/misc.c:176 -#, c-format -msgid "file `%s' is too big" -msgstr "" - -#: grub-core/kern/fs.c:120 -msgid "unknown filesystem" -msgstr "" - -#: grub-core/kern/mips/arc/init.c:273 grub-core/kern/mips/loongson/init.c:301 -msgid "Shutdown failed" -msgstr "" - -#: grub-core/kern/mips/arc/init.c:285 -msgid "Exit failed" -msgstr "" - -#: grub-core/kern/misc.c:351 grub-core/kern/misc.c:408 include/grub/misc.h:269 -#: include/grub/misc.h:278 -msgid "overflow is detected" -msgstr "" - -#: grub-core/kern/partition.c:51 grub-core/partmap/bsdlabel.c:108 -#, c-format -msgid "Discarding improperly nested partition (%s,%s,%s%d)" -msgstr "" - -#: grub-core/kern/rescue_parser.c:73 util/grub-editenv.c:292 -#, c-format -msgid "Unknown command `%s'.\n" -msgstr "" - -#: grub-core/lib/arg.c:31 -msgid "Display this help and exit." -msgstr "" - -#: grub-core/lib/arg.c:33 -msgid "Display the usage of this command and exit." -msgstr "" - -#: grub-core/lib/arg.c:362 -#, c-format -msgid "missing mandatory option for `%s'" -msgstr "" - -#: grub-core/lib/arg.c:384 -#, c-format -msgid "the argument `%s' requires an integer" -msgstr "" - -#: grub-core/lib/arg.c:407 -#, c-format -msgid "" -"a value was assigned to the argument `%s' while it doesn't require an " -"argument" -msgstr "" - -#: grub-core/lib/backtrace.c:64 -msgid "Print backtrace." -msgstr "" - -#: grub-core/lib/gnulib/argp-help.c:149 -#, c-format -msgid "ARGP_HELP_FMT: %s value is less than or equal to %s" -msgstr "" - -#: grub-core/lib/gnulib/argp-help.c:225 -#, c-format -msgid "%.*s: ARGP_HELP_FMT parameter requires a value" -msgstr "" - -#: grub-core/lib/gnulib/argp-help.c:235 -#, c-format -msgid "%.*s: Unknown ARGP_HELP_FMT parameter" -msgstr "" - -#: grub-core/lib/gnulib/argp-help.c:248 -#, c-format -msgid "Garbage in ARGP_HELP_FMT: %s" -msgstr "" - -#: grub-core/lib/gnulib/argp-help.c:1229 -msgid "" -"Mandatory or optional arguments to long options are also mandatory or " -"optional for any corresponding short options." -msgstr "" - -#: grub-core/lib/gnulib/argp-help.c:1620 -msgid " or: " -msgstr "" - -#: grub-core/lib/gnulib/argp-help.c:1632 -msgid " [OPTION...]" -msgstr "" - -#: grub-core/lib/gnulib/argp-help.c:1659 -#, c-format -msgid "Try '%s --help' or '%s --usage' for more information.\n" -msgstr "" - -#: grub-core/lib/gnulib/argp-help.c:1687 -#, c-format -msgid "Report bugs to %s.\n" -msgstr "" - -#: grub-core/lib/gnulib/argp-help.c:1888 grub-core/lib/gnulib/error.c:195 -msgid "Unknown system error" -msgstr "" - -#: grub-core/lib/gnulib/argp-parse.c:81 -msgid "give this help list" -msgstr "" - -#: grub-core/lib/gnulib/argp-parse.c:82 -msgid "give a short usage message" -msgstr "" - -#: grub-core/lib/gnulib/argp-parse.c:83 util/grub-mkfont.c:946 -msgid "NAME" -msgstr "" - -#: grub-core/lib/gnulib/argp-parse.c:84 -msgid "set the program name" -msgstr "" - -#: grub-core/lib/gnulib/argp-parse.c:86 -msgid "hang for SECS seconds (default 3600)" -msgstr "" - -#: grub-core/lib/gnulib/argp-parse.c:143 -msgid "print program version" -msgstr "" - -#: grub-core/lib/gnulib/argp-parse.c:160 -msgid "(PROGRAM ERROR) No version known!?" -msgstr "" - -#: grub-core/lib/gnulib/argp-parse.c:613 -#, c-format -msgid "%s: Too many arguments\n" -msgstr "" - -#: grub-core/lib/gnulib/argp-parse.c:759 -msgid "(PROGRAM ERROR) Option should have been recognized!?" -msgstr "" - -#: grub-core/lib/gnulib/getopt.c:278 -#, c-format -msgid "%s: option '%s%s' is ambiguous\n" -msgstr "" - -#: grub-core/lib/gnulib/getopt.c:284 -#, c-format -msgid "%s: option '%s%s' is ambiguous; possibilities:" -msgstr "" - -#: grub-core/lib/gnulib/getopt.c:319 -#, c-format -msgid "%s: unrecognized option '%s%s'\n" -msgstr "" - -#: grub-core/lib/gnulib/getopt.c:345 -#, c-format -msgid "%s: option '%s%s' doesn't allow an argument\n" -msgstr "" - -#: grub-core/lib/gnulib/getopt.c:360 -#, c-format -msgid "%s: option '%s%s' requires an argument\n" -msgstr "" - -#: grub-core/lib/gnulib/getopt.c:621 -#, c-format -msgid "%s: invalid option -- '%c'\n" -msgstr "" - -#: grub-core/lib/gnulib/getopt.c:636 grub-core/lib/gnulib/getopt.c:682 -#, c-format -msgid "%s: option requires an argument -- '%c'\n" -msgstr "" - -#: grub-core/lib/gnulib/openat-die.c:38 -#, c-format -msgid "unable to record current working directory" -msgstr "" - -#: grub-core/lib/gnulib/openat-die.c:57 -#, c-format -msgid "failed to return to initial working directory" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:135 grub-core/osdep/aros/hostdisk.c:523 -msgid "Success" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:138 -msgid "No match" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:141 -msgid "Invalid regular expression" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:144 -msgid "Invalid collation character" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:147 -msgid "Invalid character class name" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:150 -msgid "Trailing backslash" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:153 -msgid "Invalid back reference" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:156 -msgid "Unmatched [, [^, [:, [., or [=" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:159 -msgid "Unmatched ( or \\(" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:162 -msgid "Unmatched \\{" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:165 -msgid "Invalid content of \\{\\}" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:168 -msgid "Invalid range end" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:171 -msgid "Memory exhausted" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:174 -msgid "Invalid preceding regular expression" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:177 -msgid "Premature end of regular expression" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:180 -msgid "Regular expression too big" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:183 -msgid "Unmatched ) or \\)" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:531 -msgid "unknown regexp error" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:676 -msgid "No previous regular expression" -msgstr "" - -#: grub-core/lib/i386/halt.c:77 -msgid "GRUB doesn't know how to halt this machine yet!" -msgstr "" - -#: grub-core/lib/legacy_parse.c:75 -msgid "Default server is ${net_default_server}" -msgstr "" - -#: grub-core/lib/legacy_parse.c:844 grub-core/video/colors.c:296 -#: grub-core/video/colors.c:305 grub-core/video/colors.c:311 -#: grub-core/video/colors.c:327 util/render-label.c:84 util/render-label.c:98 -#, c-format -msgid "invalid color specification `%s'" -msgstr "" - -#: grub-core/lib/mips/arc/reboot.c:32 grub-core/lib/mips/loongson/reboot.c:61 -msgid "Reboot failed" -msgstr "" - -#: grub-core/lib/random.c:113 -msgid "[LENGTH]" -msgstr "" - -#: grub-core/lib/random.c:114 -msgid "Hexdump random data." -msgstr "" - -#: grub-core/loader/arm/linux.c:242 -msgid "device tree must be supplied (see `devicetree' command)" -msgstr "" - -#: grub-core/loader/arm/linux.c:334 -msgid "invalid zImage" -msgstr "" - -#: grub-core/loader/arm/linux.c:450 grub-core/loader/efi/fdt.c:144 -msgid "invalid device tree" -msgstr "" - -#: grub-core/loader/arm/linux.c:493 grub-core/loader/arm64/linux.c:383 -#: grub-core/loader/i386/linux.c:1125 grub-core/loader/i386/pc/linux.c:479 -#: grub-core/loader/i386/xen.c:962 grub-core/loader/i386/xen.c:964 -#: grub-core/loader/ia64/efi/linux.c:591 grub-core/loader/mips/linux.c:501 -#: grub-core/loader/powerpc/ieee1275/linux.c:383 -#: grub-core/loader/riscv/linux.c:50 -#: grub-core/loader/sparc64/ieee1275/linux.c:511 -msgid "Load Linux." -msgstr "" - -#: grub-core/loader/arm/linux.c:495 grub-core/loader/arm64/linux.c:385 -#: grub-core/loader/i386/linux.c:1127 grub-core/loader/i386/pc/linux.c:482 -#: grub-core/loader/i386/xen.c:966 grub-core/loader/ia64/efi/linux.c:594 -#: grub-core/loader/mips/linux.c:503 -#: grub-core/loader/powerpc/ieee1275/linux.c:385 -#: grub-core/loader/riscv/linux.c:52 -#: grub-core/loader/sparc64/ieee1275/linux.c:513 -msgid "Load initrd." -msgstr "" - -#. TRANSLATORS: DTB stands for device tree blob. -#: grub-core/loader/arm/linux.c:498 grub-core/loader/efi/fdt.c:169 -msgid "Load DTB file." -msgstr "" - -#: grub-core/loader/arm64/linux.c:59 -msgid "" -"plain image kernel not supported - rebuild with CONFIG_(U)EFI_STUB enabled" -msgstr "" - -#: grub-core/loader/arm64/xen_boot.c:156 -msgid "failed to get FDT" -msgstr "" - -#: grub-core/loader/arm64/xen_boot.c:418 -msgid "you need to load the Xen Hypervisor first" -msgstr "" - -#: grub-core/loader/arm64/xen_boot.c:516 -msgid "Load a xen hypervisor." -msgstr "" - -#: grub-core/loader/arm64/xen_boot.c:519 -msgid "Load a xen module." -msgstr "" - -#: grub-core/loader/efi/appleloader.c:231 -msgid "[OPTS]" -msgstr "" - -#. TRANSLATORS: This command is used on EFI to -#. switch to BIOS mode and boot the OS requiring -#. BIOS. -#: grub-core/loader/efi/appleloader.c:235 -msgid "Boot BIOS-based system." -msgstr "" - -#: grub-core/loader/efi/chainloader.c:421 -#: grub-core/loader/i386/pc/chainloader.c:303 -msgid "Load another boot loader." -msgstr "" - -#: grub-core/loader/i386/bsd.c:103 -msgid "Display output on all consoles." -msgstr "" - -#: grub-core/loader/i386/bsd.c:104 grub-core/loader/i386/bsd.c:138 -#: grub-core/loader/i386/bsd.c:171 -msgid "Use serial console." -msgstr "" - -#: grub-core/loader/i386/bsd.c:105 grub-core/loader/i386/bsd.c:131 -#: grub-core/loader/i386/bsd.c:159 -msgid "Ask for file name to reboot from." -msgstr "" - -#: grub-core/loader/i386/bsd.c:106 -msgid "Use CD-ROM as root." -msgstr "" - -#: grub-core/loader/i386/bsd.c:107 -msgid "Invoke user configuration routing." -msgstr "" - -#: grub-core/loader/i386/bsd.c:108 grub-core/loader/i386/bsd.c:135 -#: grub-core/loader/i386/bsd.c:162 -msgid "Enter in KDB on boot." -msgstr "" - -#: grub-core/loader/i386/bsd.c:109 -msgid "Use GDB remote debugger instead of DDB." -msgstr "" - -#: grub-core/loader/i386/bsd.c:110 -msgid "Disable all boot output." -msgstr "" - -#: grub-core/loader/i386/bsd.c:112 -msgid "Wait for keypress after every line of output." -msgstr "" - -#: grub-core/loader/i386/bsd.c:114 -msgid "Use compiled-in root device." -msgstr "" - -#: grub-core/loader/i386/bsd.c:115 grub-core/loader/i386/bsd.c:134 -#: grub-core/loader/i386/bsd.c:165 -msgid "Boot into single mode." -msgstr "" - -#: grub-core/loader/i386/bsd.c:116 grub-core/loader/i386/bsd.c:166 -msgid "Boot with verbose messages." -msgstr "" - -#: grub-core/loader/i386/bsd.c:132 grub-core/loader/i386/bsd.c:160 -msgid "Don't reboot, just halt." -msgstr "" - -#: grub-core/loader/i386/bsd.c:133 grub-core/loader/i386/bsd.c:161 -msgid "Change configured devices." -msgstr "" - -#. TRANSLATORS: "com" is static and not to be translated. It refers to -#. serial ports e.g. com1. -#. -#: grub-core/loader/i386/bsd.c:142 -msgid "comUNIT[,SPEED]" -msgstr "" - -#: grub-core/loader/i386/bsd.c:157 -msgid "Disable SMP." -msgstr "" - -#: grub-core/loader/i386/bsd.c:158 -msgid "Disable ACPI." -msgstr "" - -#: grub-core/loader/i386/bsd.c:164 -msgid "Don't display boot diagnostic messages." -msgstr "" - -#: grub-core/loader/i386/bsd.c:167 -msgid "Boot with debug messages." -msgstr "" - -#: grub-core/loader/i386/bsd.c:168 -msgid "Suppress normal output (warnings remain)." -msgstr "" - -#. TRANSLATORS: "com" is static and not to be translated. It refers to -#. serial ports e.g. com1. -#. -#: grub-core/loader/i386/bsd.c:175 -msgid "[ADDR|comUNIT][,SPEED]" -msgstr "" - -#: grub-core/loader/i386/bsd.c:489 grub-core/loader/i386/bsd.c:555 -msgid "name" -msgstr "" - -#: grub-core/loader/i386/bsd.c:489 grub-core/loader/i386/bsd.c:555 -msgid "type" -msgstr "" - -#: grub-core/loader/i386/bsd.c:489 grub-core/loader/i386/bsd.c:555 -msgid "addr" -msgstr "" - -#: grub-core/loader/i386/bsd.c:490 grub-core/loader/i386/bsd.c:556 -msgid "size" -msgstr "" - -#: grub-core/loader/i386/bsd.c:1147 grub-core/loader/i386/linux.c:466 -#: grub-core/loader/i386/xnu.c:1030 -msgid "Booting in blind mode" -msgstr "" - -#: grub-core/loader/i386/bsd.c:2137 -msgid "Load kernel of FreeBSD." -msgstr "" - -#: grub-core/loader/i386/bsd.c:2140 -msgid "Load kernel of OpenBSD." -msgstr "" - -#: grub-core/loader/i386/bsd.c:2143 -msgid "Load kernel of NetBSD." -msgstr "" - -#: grub-core/loader/i386/bsd.c:2147 -msgid "Load FreeBSD env." -msgstr "" - -#: grub-core/loader/i386/bsd.c:2150 -msgid "Load FreeBSD kernel module." -msgstr "" - -#: grub-core/loader/i386/bsd.c:2153 -msgid "Load NetBSD kernel module." -msgstr "" - -#: grub-core/loader/i386/bsd.c:2156 -msgid "Load NetBSD kernel module (ELF)." -msgstr "" - -#: grub-core/loader/i386/bsd.c:2159 -msgid "Load FreeBSD kernel module (ELF)." -msgstr "" - -#. TRANSLATORS: ramdisk isn't identifier, -#. it can be translated. -#: grub-core/loader/i386/bsd.c:2165 -msgid "Load kOpenBSD ramdisk." -msgstr "" - -#. TRANSLATORS: "payload" is a term used -#. by coreboot and must be translated in -#. sync with coreboot. If unsure, -#. let it untranslated. -#: grub-core/loader/i386/coreboot/chainloader.c:510 -msgid "Load another coreboot payload" -msgstr "" - -#: grub-core/loader/i386/linux.c:876 -msgid "Legacy `ask' parameter no longer supported." -msgstr "" - -#: grub-core/loader/i386/linux.c:892 grub-core/loader/i386/linux.c:902 -#: grub-core/loader/i386/linux.c:932 -#, c-format -msgid "%s is deprecated. Use set gfxpayload=%s before linux command instead.\n" -msgstr "" - -#. TRANSLATORS: "x" has to be entered in, like an identifier, -#. so please don't use better Unicode codepoints. -#: grub-core/loader/i386/linux.c:915 -#, c-format -msgid "" -"%s is deprecated. VGA mode %d isn't recognized. Use set " -"gfxpayload=WIDTHxHEIGHT[xDEPTH] before linux command instead.\n" -msgstr "" - -#: grub-core/loader/i386/pc/chainloader.c:302 -msgid "[--force|--bpb] FILE" -msgstr "" - -#: grub-core/loader/i386/pc/freedos.c:148 util/setup.c:293 -#, c-format -msgid "the size of `%s' is too large" -msgstr "" - -#: grub-core/loader/i386/pc/freedos.c:183 -msgid "Load FreeDOS kernel.sys." -msgstr "" - -#: grub-core/loader/i386/pc/ntldr.c:155 -msgid "Load NTLDR or BootMGR." -msgstr "" - -#. TRANSLATORS: it's about guessing which GRUB disk -#. is which Plan9 disk. If your language has no -#. word "mapping" you can use another word which -#. means that the GRUBDEVICE and PLAN9DEVICE are -#. actually the same device, just named differently -#. in OS and GRUB. -#: grub-core/loader/i386/pc/plan9.c:59 -msgid "Override guessed mapping of Plan9 devices." -msgstr "" - -#: grub-core/loader/i386/pc/plan9.c:60 -msgid "GRUBDEVICE=PLAN9DEVICE" -msgstr "" - -#: grub-core/loader/i386/pc/plan9.c:599 -msgid "KERNEL ARGS" -msgstr "" - -#: grub-core/loader/i386/pc/plan9.c:599 -msgid "Load Plan9 kernel." -msgstr "" - -#: grub-core/loader/i386/pc/pxechainloader.c:161 -msgid "Load a PXE image." -msgstr "" - -#: grub-core/loader/i386/pc/truecrypt.c:226 -msgid "Load Truecrypt ISO." -msgstr "" - -#: grub-core/loader/i386/xen.c:781 grub-core/loader/i386/xen.c:865 -msgid "initrd already loaded" -msgstr "" - -#: grub-core/loader/i386/xen.c:968 -msgid "Load module." -msgstr "" - -#: grub-core/loader/i386/xnu.c:1003 -msgid "Press any key to launch xnu" -msgstr "" - -#. TRANSLATORS: `device-properties' -#. is a variable name, -#. not a program. -#: grub-core/loader/i386/xnu.c:1159 -msgid "Load `device-properties' dump." -msgstr "" - -#: grub-core/loader/ia64/efi/linux.c:124 -msgid "Could not locate FPSWA driver" -msgstr "" - -#: grub-core/loader/ia64/efi/linux.c:132 -msgid "FPSWA protocol wasn't able to find the interface" -msgstr "" - -#: grub-core/loader/ia64/efi/linux.c:580 -msgid "No FPSWA found" -msgstr "" - -#: grub-core/loader/ia64/efi/linux.c:582 -#, c-format -msgid "FPSWA revision: %x\n" -msgstr "" - -#: grub-core/loader/ia64/efi/linux.c:591 -msgid "FILE [ARGS...]" -msgstr "" - -#: grub-core/loader/ia64/efi/linux.c:597 -msgid "Display FPSWA version." -msgstr "" - -#: grub-core/loader/multiboot.c:248 -msgid "WARNING: no console will be available to OS" -msgstr "" - -#: grub-core/loader/multiboot.c:450 -msgid "Load a multiboot 2 kernel." -msgstr "" - -#: grub-core/loader/multiboot.c:453 -msgid "Load a multiboot 2 module." -msgstr "" - -#: grub-core/loader/multiboot.c:456 -msgid "Load a multiboot kernel." -msgstr "" - -#: grub-core/loader/multiboot.c:459 -msgid "Load a multiboot module." -msgstr "" - -#: grub-core/loader/riscv/linux.c:30 grub-core/loader/riscv/linux.c:40 -msgid "Linux not supported yet" -msgstr "" - -#: grub-core/loader/xnu.c:1416 grub-core/term/gfxterm_background.c:45 -msgid "Background image mode." -msgstr "" - -#. TRANSLATORS: This refers to background image mode (stretched or -#. in left-top corner). Note that GRUB will accept only original -#. keywords stretch and normal, not the translated ones. -#. So please put both in translation -#. e.g. stretch(=%STRETCH%)|normal(=%NORMAL%). -#. The percents mark the translated version. Since many people -#. may not know the word stretch or normal I recommend -#. putting the translation either here or in "Background image mode." -#. string. -#: grub-core/loader/xnu.c:1416 grub-core/term/gfxterm_background.c:55 -msgid "stretch|normal" -msgstr "" - -#: grub-core/loader/xnu.c:1482 -msgid "Load XNU image." -msgstr "" - -#: grub-core/loader/xnu.c:1484 -msgid "Load 64-bit XNU image." -msgstr "" - -#: grub-core/loader/xnu.c:1486 -msgid "Load XNU extension package." -msgstr "" - -#: grub-core/loader/xnu.c:1488 -msgid "Load XNU extension." -msgstr "" - -#. TRANSLATORS: OSBundleRequired is a -#. variable name in xnu extensions -#. manifests. It behaves mostly like -#. GNU/Linux runlevels. -#. -#: grub-core/loader/xnu.c:1495 -msgid "DIRECTORY [OSBundleRequired]" -msgstr "" - -#. TRANSLATORS: There are many extensions -#. in extension directory. -#: grub-core/loader/xnu.c:1498 -msgid "Load XNU extension directory." -msgstr "" - -#. TRANSLATORS: ramdisk here isn't identifier. It can be translated. -#: grub-core/loader/xnu.c:1501 -msgid "Load XNU ramdisk. It will be available in OS as md0." -msgstr "" - -#: grub-core/loader/xnu.c:1505 -msgid "Load a splash image for XNU." -msgstr "" - -#: grub-core/loader/xnu.c:1510 -msgid "Load an image of hibernated XNU." -msgstr "" - -#: grub-core/mmap/mmap.c:538 -msgid "ADDR1,MASK1[,ADDR2,MASK2[,...]]" -msgstr "" - -#: grub-core/mmap/mmap.c:539 -msgid "Declare memory regions as faulty (badram)." -msgstr "" - -#: grub-core/mmap/mmap.c:541 -msgid "FROM[K|M|G] TO[K|M|G]" -msgstr "" - -#: grub-core/mmap/mmap.c:542 -msgid "Remove any memory regions in specified range." -msgstr "" - -#: grub-core/net/bootp.c:653 -msgid "four arguments expected" -msgstr "" - -#: grub-core/net/bootp.c:661 grub-core/net/net.c:1155 -#, c-format -msgid "unrecognised network interface `%s'" -msgstr "" - -#: grub-core/net/bootp.c:664 -msgid "no DHCP info found" -msgstr "" - -#: grub-core/net/bootp.c:674 -msgid "no DHCP options found" -msgstr "" - -#: grub-core/net/bootp.c:682 -msgid "invalid DHCP option code" -msgstr "" - -#: grub-core/net/bootp.c:686 -#, c-format -msgid "no DHCP option %u found" -msgstr "" - -#: grub-core/net/bootp.c:743 -#, c-format -msgid "unrecognised DHCP option format specification `%s'" -msgstr "" - -#: grub-core/net/bootp.c:767 -msgid "no network card found" -msgstr "" - -#: grub-core/net/bootp.c:859 grub-core/net/net.c:389 -#, c-format -msgid "couldn't autoconfigure %s" -msgstr "" - -#: grub-core/net/bootp.c:873 grub-core/net/bootp.c:876 -msgid "[CARD]" -msgstr "" - -#: grub-core/net/bootp.c:874 -msgid "perform a bootp autoconfiguration" -msgstr "" - -#: grub-core/net/bootp.c:877 -msgid "perform a DHCP autoconfiguration" -msgstr "" - -#: grub-core/net/bootp.c:879 -msgid "VAR INTERFACE NUMBER DESCRIPTION" -msgstr "" - -#: grub-core/net/bootp.c:880 -msgid "" -"retrieve DHCP option and save it into VAR. If VAR is - then print the value." -msgstr "" - -#: grub-core/net/dns.c:459 -msgid "no DNS servers configured" -msgstr "" - -#: grub-core/net/dns.c:522 -msgid "domain name component is too long" -msgstr "" - -#: grub-core/net/dns.c:618 grub-core/net/dns.c:666 -msgid "no DNS record found" -msgstr "" - -#: grub-core/net/dns.c:626 -msgid "no DNS reply received" -msgstr "" - -#: grub-core/net/dns.c:682 -msgid "only ipv4" -msgstr "" - -#: grub-core/net/dns.c:686 -msgid "only ipv6" -msgstr "" - -#: grub-core/net/dns.c:690 -msgid "prefer ipv4" -msgstr "" - -#: grub-core/net/dns.c:694 -msgid "prefer ipv6" -msgstr "" - -#: grub-core/net/dns.c:759 -msgid "ADDRESS DNSSERVER" -msgstr "" - -#: grub-core/net/dns.c:760 -msgid "Perform a DNS lookup" -msgstr "" - -#: grub-core/net/dns.c:762 grub-core/net/dns.c:765 -msgid "DNSSERVER" -msgstr "" - -#: grub-core/net/dns.c:763 -msgid "Add a DNS server" -msgstr "" - -#: grub-core/net/dns.c:766 -msgid "Remove a DNS server" -msgstr "" - -#: grub-core/net/dns.c:768 -msgid "List DNS servers" -msgstr "" - -#: grub-core/net/drivers/efi/efinet.c:49 grub-core/net/drivers/efi/efinet.c:65 -#: grub-core/net/drivers/efi/efinet.c:77 grub-core/net/drivers/emu/emunet.c:62 -#: grub-core/net/drivers/i386/pc/pxe.c:273 -#: grub-core/net/drivers/ieee1275/ofnet.c:75 -#: grub-core/net/drivers/uboot/ubootnet.c:62 -msgid "couldn't send network packet" -msgstr "" - -#: grub-core/net/drivers/ieee1275/ofnet.c:326 -#: grub-core/net/drivers/ieee1275/ofnet.c:359 -msgid "interpret is not supported" -msgstr "" - -#: grub-core/net/drivers/ieee1275/ofnet.c:336 -msgid "alloc-mem failed" -msgstr "" - -#: grub-core/net/drivers/ieee1275/ofnet.c:370 -msgid "free-mem failed" -msgstr "" - -#: grub-core/net/http.c:105 -msgid "unsupported HTTP response" -msgstr "" - -#. TRANSLATORS: GRUB HTTP code is pretty young. So even perfectly -#. valid answers like 403 will trigger this very generic message. -#: grub-core/net/http.c:126 -#, c-format -msgid "unsupported HTTP error %d: %s" -msgstr "" - -#: grub-core/net/http.c:429 grub-core/net/tftp.c:420 -#, c-format -msgid "time out opening `%s'" -msgstr "" - -#: grub-core/net/net.c:179 -msgid "timeout: could not resolve hardware address" -msgstr "" - -#: grub-core/net/net.c:548 -#, c-format -msgid "unresolvable address %s" -msgstr "" - -#: grub-core/net/net.c:594 -#, c-format -msgid "unrecognised network address `%s'" -msgstr "" - -#: grub-core/net/net.c:661 -msgid "destination unreachable" -msgstr "" - -#. TRANSLATORS: route loop is a condition when e.g. -#. to contact server A you need to go through B -#. and to contact B you need to go through A. -#: grub-core/net/net.c:684 -msgid "route loop detected" -msgstr "" - -#: grub-core/net/net.c:700 -msgid "address not found" -msgstr "" - -#: grub-core/net/net.c:704 -msgid "you can't delete this address" -msgstr "" - -#: grub-core/net/net.c:776 grub-core/net/net.c:792 -#, c-format -msgid "Unsupported hw address type %d\n" -msgstr "" - -#: grub-core/net/net.c:813 -#, c-format -msgid "Unsupported address type %d\n" -msgstr "" - -#: grub-core/net/net.c:1017 grub-core/net/net.c:1131 -msgid "three arguments expected" -msgstr "" - -#: grub-core/net/net.c:1023 -msgid "card not found" -msgstr "" - -#. TRANSLATORS: it refers to the network address. -#: grub-core/net/net.c:1167 -msgid "temporary" -msgstr "" - -#: grub-core/net/net.c:1190 -#, c-format -msgid "Unknown address type %d\n" -msgstr "" - -#: grub-core/net/net.c:1298 -msgid "no server is specified" -msgstr "" - -#: grub-core/net/net.c:1637 -#, c-format -msgid "timeout reading `%s'" -msgstr "" - -#. TRANSLATORS: HWADDRESS stands for -#. "hardware address". -#: grub-core/net/net.c:1762 -msgid "SHORTNAME CARD ADDRESS [HWADDRESS]" -msgstr "" - -#: grub-core/net/net.c:1763 -msgid "Add a network address." -msgstr "" - -#: grub-core/net/net.c:1766 -msgid "[CARD [HWADDRESS]]" -msgstr "" - -#: grub-core/net/net.c:1767 -msgid "Perform an IPV6 autoconfiguration" -msgstr "" - -#: grub-core/net/net.c:1770 grub-core/net/net.c:1777 -msgid "SHORTNAME" -msgstr "" - -#: grub-core/net/net.c:1771 -msgid "Delete a network address." -msgstr "" - -#. TRANSLATORS: "gw" is a keyword. -#: grub-core/net/net.c:1774 -msgid "SHORTNAME NET [INTERFACE| gw GATEWAY]" -msgstr "" - -#: grub-core/net/net.c:1775 -msgid "Add a network route." -msgstr "" - -#: grub-core/net/net.c:1778 -msgid "Delete a network route." -msgstr "" - -#: grub-core/net/net.c:1780 -msgid "list network routes" -msgstr "" - -#: grub-core/net/net.c:1782 -msgid "list network cards" -msgstr "" - -#: grub-core/net/net.c:1784 -msgid "list network addresses" -msgstr "" - -#: grub-core/net/tcp.c:681 -msgid "connection refused" -msgstr "" - -#: grub-core/net/tcp.c:684 -msgid "connection timeout" -msgstr "" - -#: grub-core/normal/auth.c:220 -msgid "Enter username: " -msgstr "" - -#: grub-core/normal/auth.c:269 -msgid "[USERLIST]" -msgstr "" - -#: grub-core/normal/auth.c:270 -msgid "Check whether user is in USERLIST." -msgstr "" - -#: grub-core/normal/cmdline.c:174 grub-core/normal/menu_entry.c:1068 -msgid "Possible commands are:" -msgstr "" - -#: grub-core/normal/cmdline.c:177 grub-core/normal/menu_entry.c:1072 -msgid "Possible devices are:" -msgstr "" - -#: grub-core/normal/cmdline.c:180 grub-core/normal/menu_entry.c:1076 -msgid "Possible files are:" -msgstr "" - -#: grub-core/normal/cmdline.c:183 grub-core/normal/menu_entry.c:1080 -msgid "Possible partitions are:" -msgstr "" - -#: grub-core/normal/cmdline.c:186 grub-core/normal/menu_entry.c:1084 -msgid "Possible arguments are:" -msgstr "" - -#. TRANSLATORS: this message is used if none of above matches. -#. This shouldn't happen but please use the general term for -#. "thing" or "object". -#: grub-core/normal/cmdline.c:192 grub-core/normal/menu_entry.c:1088 -msgid "Possible things are:" -msgstr "" - -#: grub-core/normal/color.c:81 -#, c-format -msgid "Warning: syntax error (missing slash) in `%s'\n" -msgstr "" - -#: grub-core/normal/color.c:90 -#, c-format -msgid "Warning: invalid foreground color `%s'\n" -msgstr "" - -#: grub-core/normal/color.c:96 -#, c-format -msgid "Warning: invalid background color `%s'\n" -msgstr "" - -#: grub-core/normal/context.c:206 -msgid "ENVVAR [ENVVAR] ..." -msgstr "" - -#: grub-core/normal/context.c:207 -msgid "Export variables." -msgstr "" - -#: grub-core/normal/datetime.c:25 -msgid "Sunday" -msgstr "" - -#: grub-core/normal/datetime.c:26 -msgid "Monday" -msgstr "" - -#: grub-core/normal/datetime.c:27 -msgid "Tuesday" -msgstr "" - -#: grub-core/normal/datetime.c:28 -msgid "Wednesday" -msgstr "" - -#: grub-core/normal/datetime.c:29 -msgid "Thursday" -msgstr "" - -#: grub-core/normal/datetime.c:30 -msgid "Friday" -msgstr "" - -#: grub-core/normal/datetime.c:31 -msgid "Saturday" -msgstr "" - -#: grub-core/normal/dyncmd.c:187 -msgid "module isn't loaded" -msgstr "" - -#: grub-core/normal/main.c:211 -#, c-format -msgid "GNU GRUB version %s" -msgstr "" - -#: grub-core/normal/main.c:360 -msgid "ESC at any time exits." -msgstr "" - -#: grub-core/normal/main.c:363 -#, c-format -msgid "" -"Minimal BASH-like line editing is supported. For the first word, TAB lists " -"possible command completions. Anywhere else TAB lists possible device or " -"file completions. %s" -msgstr "" - -#. TRANSLATORS: it's command line prompt. -#: grub-core/normal/main.c:395 -msgid ">" -msgstr "" - -#. TRANSLATORS: it's command line prompt. -#: grub-core/normal/main.c:398 -msgid "grub>" -msgstr "" - -#: grub-core/normal/main.c:518 -msgid "Clear the screen." -msgstr "" - -#: grub-core/normal/main.c:527 -msgid "Enter normal mode." -msgstr "" - -#: grub-core/normal/main.c:529 -msgid "Exit from normal mode." -msgstr "" - -#: grub-core/normal/menu.c:66 grub-core/normal/menu_entry.c:1449 -msgid "Press any key to continue..." -msgstr "" - -#: grub-core/normal/menu.c:815 -#, c-format -msgid "Booting `%s'" -msgstr "" - -#: grub-core/normal/menu.c:827 -#, c-format -msgid "Falling back to `%s'" -msgstr "" - -#: grub-core/normal/menu.c:843 -msgid "Failed to boot both default and fallback entries.\n" -msgstr "" - -#: grub-core/normal/menu_entry.c:1171 -msgid "Booting a command list" -msgstr "" - -#: grub-core/normal/menu_text.c:160 -msgid "" -"Minimum Emacs-like screen editing is supported. TAB lists completions. Press " -"Ctrl-x or F10 to boot, Ctrl-c or F2 for a command-line or ESC to discard " -"edits and return to the GRUB menu." -msgstr "" - -#: grub-core/normal/menu_text.c:170 -#, c-format -msgid "Use the %C and %C keys to select which entry is highlighted." -msgstr "" - -#. TRANSLATORS: that's the list of binary unit prefixes. -#: grub-core/normal/misc.c:38 -msgid "B" -msgstr "" - -#: grub-core/normal/misc.c:38 -msgid "KiB" -msgstr "" - -#: grub-core/normal/misc.c:38 -msgid "MiB" -msgstr "" - -#: grub-core/normal/misc.c:38 -msgid "GiB" -msgstr "" - -#: grub-core/normal/misc.c:38 -msgid "TiB" -msgstr "" - -#: grub-core/normal/misc.c:38 -msgid "PiB" -msgstr "" - -#. TRANSLATORS: that's the list of binary unit prefixes. -#: grub-core/normal/misc.c:40 -msgid "K" -msgstr "" - -#: grub-core/normal/misc.c:40 -msgid "M" -msgstr "" - -#: grub-core/normal/misc.c:40 -msgid "G" -msgstr "" - -#: grub-core/normal/misc.c:40 -msgid "T" -msgstr "" - -#: grub-core/normal/misc.c:40 -msgid "P" -msgstr "" - -#. TRANSLATORS: that's the list of binary unit prefixes. -#: grub-core/normal/misc.c:42 -msgid "B/s" -msgstr "" - -#: grub-core/normal/misc.c:42 -msgid "KiB/s" -msgstr "" - -#: grub-core/normal/misc.c:42 -msgid "MiB/s" -msgstr "" - -#: grub-core/normal/misc.c:42 -msgid "GiB/s" -msgstr "" - -#: grub-core/normal/misc.c:42 -msgid "TiB/s" -msgstr "" - -#: grub-core/normal/misc.c:42 -msgid "PiB/s" -msgstr "" - -#: grub-core/normal/misc.c:96 -#, c-format -msgid "Partition %s:" -msgstr "" - -#: grub-core/normal/misc.c:101 -#, c-format -msgid "Device %s:" -msgstr "" - -#: grub-core/normal/misc.c:107 -msgid "Filesystem cannot be accessed" -msgstr "" - -#: grub-core/normal/misc.c:121 -#, c-format -msgid "Filesystem type %s" -msgstr "" - -#: grub-core/normal/misc.c:131 -#, c-format -msgid "- Label `%s'" -msgstr "" - -#. TRANSLATORS: Arguments are year, month, day, hour, minute, -#. second, day of the week (translated). -#: grub-core/normal/misc.c:148 -#, c-format -msgid "- Last modification time %d-%02d-%02d %02d:%02d:%02d %s" -msgstr "" - -#: grub-core/normal/misc.c:171 -msgid "No known filesystem detected" -msgstr "" - -#: grub-core/normal/misc.c:174 -#, c-format -msgid " - Partition start at %llu%sKiB" -msgstr "" - -#: grub-core/normal/misc.c:178 -#, c-format -msgid " - Sector size %uB" -msgstr "" - -#: grub-core/normal/misc.c:180 -msgid " - Total size unknown" -msgstr "" - -#: grub-core/normal/misc.c:182 -#, c-format -msgid " - Total size %llu%sKiB" -msgstr "" - -#. TRANSLATORS: Replace dot with appropriate decimal separator for -#. your language. -#: grub-core/normal/misc.c:186 -msgid ".5" -msgstr "" - -#. TRANSLATORS: This has to fit on one line. It's ok to include few -#. words but don't write poems. -#: grub-core/normal/term.c:82 -msgid "--MORE--" -msgstr "" - -#: grub-core/osdep/aros/config.c:92 grub-core/osdep/unix/config.c:137 -#: grub-core/osdep/windows/config.c:55 -#, c-format -msgid "cannot open configuration file `%s': %s" -msgstr "" - -#: grub-core/osdep/basic/compress.c:8 grub-core/osdep/basic/compress.c:14 -#: grub-core/osdep/basic/compress.c:20 -msgid "no compression is available for your platform" -msgstr "" - -#: grub-core/osdep/basic/no_platform.c:30 -#: grub-core/osdep/windows/platform.c:418 -msgid "no IEEE1275 routines are available for your platform" -msgstr "" - -#: grub-core/osdep/basic/no_platform.c:38 -msgid "no EFI routines are available for your platform" -msgstr "" - -#: grub-core/osdep/basic/no_platform.c:45 -#: grub-core/osdep/windows/platform.c:425 -msgid "no SGI routines are available for your platform" -msgstr "" - -#. TRANSLATORS: The OS itself may very well have a random -#. number generator but GRUB doesn't know how to access it. -#: grub-core/osdep/basic/random.c:42 -msgid "no random number generator is available for your OS" -msgstr "" - -#: grub-core/osdep/devmapper/getroot.c:81 -msgid "Failed to create `device-mapper' tree" -msgstr "" - -#: grub-core/osdep/devmapper/getroot.c:197 -#: grub-core/osdep/freebsd/getroot.c:202 -#, c-format -msgid "can't mount encrypted volume `%s': %s" -msgstr "" - -#. TRANSLATORS: geom is the name of (k)FreeBSD device framework. -#. Usually left untranslated. -#. -#: grub-core/osdep/freebsd/getroot.c:82 grub-core/osdep/freebsd/getroot.c:164 -#: grub-core/osdep/freebsd/getroot.c:258 grub-core/osdep/freebsd/getroot.c:316 -msgid "couldn't open geom" -msgstr "" - -#: grub-core/osdep/freebsd/getroot.c:182 grub-core/osdep/freebsd/getroot.c:277 -msgid "couldn't find geli consumer" -msgstr "" - -#: grub-core/osdep/freebsd/getroot.c:282 -msgid "couldn't retrieve geli UUID" -msgstr "" - -#. TRANSLATORS: geom is the name of (k)FreeBSD device framework. -#. Usually left untranslated. "part" is the identifier of one of its -#. classes. -#: grub-core/osdep/freebsd/getroot.c:325 -msgid "couldn't find geom `part' class" -msgstr "" - -#: grub-core/osdep/freebsd/hostdisk.c:72 grub-core/osdep/linux/hostdisk.c:93 -msgid "unaligned device size" -msgstr "" - -#: grub-core/osdep/generic/blocklist.c:56 -#, c-format -msgid "attempting to read the core image `%s' from GRUB" -msgstr "" - -#: grub-core/osdep/generic/blocklist.c:57 -#, c-format -msgid "attempting to read the core image `%s' from GRUB again" -msgstr "" - -#: grub-core/osdep/generic/blocklist.c:115 -#, c-format -msgid "cannot read `%s' correctly" -msgstr "" - -#: grub-core/osdep/generic/blocklist.c:126 -msgid "failed to read the sectors of the core image" -msgstr "" - -#. TRANSLATORS: On GNU/Hurd, a "translator" is similar to a filesystem -#. mount, but handled by a userland daemon, whose invocation command line -#. is being fetched here. First %s is the file being looked at (for which -#. we are fetching the "translator" command line), second %s is the error -#. message. -#. -#: grub-core/osdep/hurd/getroot.c:79 -#, c-format -msgid "cannot get translator command line for path `%s': %s" -msgstr "" - -#: grub-core/osdep/hurd/getroot.c:82 -#, c-format -msgid "translator command line is empty for path `%s'" -msgstr "" - -#. TRANSLATORS: we expect to get something like -#. /hurd/foobar --option1 --option2=baz /dev/something -#. -#: grub-core/osdep/hurd/getroot.c:98 -#, c-format -msgid "" -"translator `%s' for path `%s' has several non-option words, at least `%s' " -"and `%s'" -msgstr "" - -#. TRANSLATORS: we expect to get something like -#. /hurd/foobar --option1 --option2=baz /dev/something -#. -#: grub-core/osdep/hurd/getroot.c:109 -#, c-format -msgid "" -"translator `%s' for path `%s' is given only options, cannot find device part" -msgstr "" - -#: grub-core/osdep/hurd/hostdisk.c:73 -#, c-format -msgid "Storage information for `%s' does not include type" -msgstr "" - -#: grub-core/osdep/hurd/hostdisk.c:75 -#, c-format -msgid "`%s' is not a local disk" -msgstr "" - -#: grub-core/osdep/hurd/hostdisk.c:78 -#, c-format -msgid "" -"Storage information for `%s' indicates neither a plain partition nor a plain " -"disk" -msgstr "" - -#: grub-core/osdep/linux/blocklist.c:81 grub-core/osdep/linux/blocklist.c:96 -#: grub-core/osdep/linux/blocklist.c:122 -#, c-format -msgid "can't retrieve blocklists: %s" -msgstr "" - -#: grub-core/osdep/linux/blocklist.c:84 -msgid "blocksize is not divisible by 512" -msgstr "" - -#: grub-core/osdep/linux/blocklist.c:86 -msgid "invalid zero blocksize" -msgstr "" - -#: grub-core/osdep/linux/blocklist.c:90 util/setup.c:744 -msgid "can't retrieve blocklists" -msgstr "" - -#: grub-core/osdep/linux/getroot.c:154 -#, c-format -msgid "ioctl RAID_VERSION error: %s" -msgstr "" - -#: grub-core/osdep/linux/getroot.c:160 grub-core/osdep/linux/getroot.c:164 -#, c-format -msgid "unsupported RAID version: %d.%d" -msgstr "" - -#: grub-core/osdep/linux/getroot.c:169 -#, c-format -msgid "ioctl GET_ARRAY_INFO error: %s" -msgstr "" - -#: grub-core/osdep/linux/getroot.c:178 -#, c-format -msgid "ioctl GET_DISK_INFO error: %s" -msgstr "" - -#: grub-core/osdep/linux/getroot.c:608 grub-core/osdep/linux/getroot.c:678 -#: grub-core/osdep/linux/hostdisk.c:126 grub-core/osdep/unix/getroot.c:253 -#: grub-core/osdep/unix/getroot.c:642 grub-core/osdep/unix/platform.c:92 -#: grub-core/osdep/unix/platform.c:100 -#, c-format -msgid "Unable to open stream from %s: %s" -msgstr "" - -#: grub-core/osdep/linux/getroot.c:1033 -#, c-format -msgid "unknown kind of RAID device `%s'" -msgstr "" - -#: grub-core/osdep/linux/ofpath.c:181 -#, c-format -msgid "`obppath' not found in parent dirs of `%s', no IEEE1275 name discovery" -msgstr "" - -#: grub-core/osdep/linux/ofpath.c:222 grub-core/osdep/unix/getroot.c:505 -#: grub-core/osdep/unix/getroot.c:529 grub-core/osdep/unix/relpath.c:49 -#: util/grub-install.c:984 util/grub-install.c:1331 util/grub-probe.c:323 -#, c-format -msgid "failed to get canonical path of `%s'" -msgstr "" - -#: grub-core/osdep/linux/ofpath.c:740 -#, c-format -msgid "unknown device type %s" -msgstr "" - -#: grub-core/osdep/linux/ofpath.c:758 util/ieee1275/grub-ofpathname.c:39 -#, c-format -msgid "Usage: %s DEVICE\n" -msgstr "" - -#: grub-core/osdep/unix/exec.c:86 grub-core/osdep/unix/exec.c:172 -#: grub-core/osdep/unix/exec.c:217 -#, c-format -msgid "Unable to fork: %s" -msgstr "" - -#: grub-core/osdep/unix/exec.c:166 grub-core/osdep/unix/exec.c:211 -#, c-format -msgid "Unable to create pipe: %s" -msgstr "" - -#: grub-core/osdep/unix/getroot.c:370 -msgid "cannot save the original directory" -msgstr "" - -#: grub-core/osdep/unix/getroot.c:423 grub-core/osdep/unix/getroot.c:480 -#: grub-core/osdep/unix/getroot.c:489 -msgid "cannot restore the original directory" -msgstr "" - -#. TRANSLATORS: "stat" comes from the name of POSIX function. -#: grub-core/osdep/unix/getroot.c:551 grub-core/osdep/unix/hostdisk.c:61 -#: grub-core/osdep/unix/relpath.c:73 grub-core/osdep/unix/relpath.c:97 -#: util/getroot.c:160 util/getroot.c:162 util/grub-install.c:774 -#: util/grub-macbless.c:70 -#, c-format -msgid "cannot stat `%s': %s" -msgstr "" - -#: grub-core/osdep/unix/hostdisk.c:293 -#, c-format -msgid "cannot make temporary file: %s" -msgstr "" - -#: grub-core/osdep/unix/hostdisk.c:311 -#, c-format -msgid "cannot make temporary directory: %s" -msgstr "" - -#: grub-core/osdep/unix/platform.c:77 -#, c-format -msgid "" -"couldn't find IEEE1275 device path for %s.\n" -"You will have to set `boot-device' variable manually" -msgstr "" - -#. TRANSLATORS: This message is shown when required executable `%s' -#. isn't found. -#: grub-core/osdep/unix/platform.c:149 grub-core/osdep/unix/platform.c:189 -#, c-format -msgid "%s: not found" -msgstr "" - -#: grub-core/osdep/unix/platform.c:225 -#, c-format -msgid "" -"`nvsetenv' failed. \n" -"You will have to set `boot-device' variable manually. At the IEEE1275 " -"prompt, type:\n" -" %s\n" -msgstr "" - -#: grub-core/osdep/unix/platform.c:240 -msgid "You will have to set `SystemPartition' and `OSLoader' manually." -msgstr "" - -#. TRANSLATORS: canonical pathname is the -#. complete one e.g. /etc/fstab. It has -#. to contain `/' normally, if it doesn't -#. we're in trouble and throw this error. -#: grub-core/osdep/unix/relpath.c:90 -msgid "no `/' in canonical filename" -msgstr "" - -#: grub-core/osdep/windows/hostdisk.c:151 -msgid "cygwin_conv_path() failed" -msgstr "" - -#: grub-core/osdep/windows/hostdisk.c:501 util/grub-install.c:570 -msgid "couldn't retrieve random data" -msgstr "" - -#: grub-core/osdep/windows/platform.c:97 -msgid "Insufficient privileges to access firmware, assuming BIOS" -msgstr "" - -#: grub-core/osdep/windows/platform.c:225 -msgid "no EFI routines are available when running in BIOS mode" -msgstr "" - -#: grub-core/osdep/windows/platform.c:240 -msgid "unexpected EFI error" -msgstr "" - -#: grub-core/osdep/windows/platform.c:315 -msgid "Couldn't find a free BootNNNN slot" -msgstr "" - -#: grub-core/partmap/gpt.c:191 -msgid "" -"this GPT partition label contains no BIOS Boot Partition; embedding won't be " -"possible" -msgstr "" - -#: grub-core/partmap/gpt.c:196 -msgid "your BIOS Boot Partition is too small; embedding won't be possible" -msgstr "" - -#. TRANSLATORS: MBR gap and boot track is the same thing and is the space -#. between MBR and first partitition. If your language translates well only -#. "boot track", you can just use it everywhere. Next two messages are about -#. RAID controllers/software bugs which GRUB has to live with. Please spread -#. the message that these are bugs in other software and not merely -#. suboptimal behaviour. -#: grub-core/partmap/msdos.c:51 -#, c-format -msgid "" -"Sector %llu is already in use by raid controller `%s'; avoiding it. Please " -"ask the manufacturer not to store data in MBR gap" -msgstr "" - -#: grub-core/partmap/msdos.c:54 -#, c-format -msgid "" -"Sector %llu is already in use by the program `%s'; avoiding it. This " -"software may cause boot or other problems in future. Please ask its authors " -"not to store data in the boot track" -msgstr "" - -#: grub-core/partmap/msdos.c:384 -msgid "" -"other software is using the embedding area, and there is not enough room for " -"core.img. Such software is often trying to store data in a way that avoids " -"detection. We recommend you investigate" -msgstr "" - -#: grub-core/partmap/msdos.c:395 -msgid "" -"this msdos-style partition label has no post-MBR gap; embedding won't be " -"possible" -msgstr "" - -#: grub-core/partmap/msdos.c:404 -msgid "your embedding area is unusually small. core.img won't fit in it." -msgstr "" - -#: grub-core/parttool/msdospart.c:39 -msgid "Make partition active" -msgstr "" - -#: grub-core/parttool/msdospart.c:51 -msgid "not a primary partition" -msgstr "" - -#: grub-core/parttool/msdospart.c:69 -#, c-format -msgid "Partition %d is active now. \n" -msgstr "" - -#: grub-core/parttool/msdospart.c:74 -#, c-format -msgid "Cleared active flag on %d. \n" -msgstr "" - -#: grub-core/parttool/msdospart.c:87 -msgid "Change partition type" -msgstr "" - -#: grub-core/parttool/msdospart.c:88 -msgid "Set `hidden' flag in partition type" -msgstr "" - -#: grub-core/parttool/msdospart.c:130 -#, c-format -msgid "the partition type 0x%x isn't valid" -msgstr "" - -#. TRANSLATORS: In this case we're actually writing to the disk and actively -#. modifying partition type rather than just defining it. -#: grub-core/parttool/msdospart.c:137 -#, c-format -msgid "Setting partition type to 0x%x\n" -msgstr "" - -#. TRANSLATORS: 0 is a quantifier. "break" (similar to bash) -#. can be used e.g. to break 3 loops at once. -#. But asking it to break 0 loops makes no sense. -#: grub-core/script/execute.c:143 -msgid "can't break 0 loops" -msgstr "" - -#. TRANSLATORS: It's about not being -#. inside a function. "return" can be used only -#. in a function and this error occurs if it's used -#. anywhere else. -#: grub-core/script/execute.c:227 -msgid "not in function body" -msgstr "" - -#: grub-core/script/execute.c:371 -#, c-format -msgid "invalid variable name `%s'" -msgstr "" - -#: grub-core/script/execute.c:953 -msgid "cannot allocate command buffer" -msgstr "" - -#: grub-core/script/lexer.c:144 util/grub-fstest.c:330 -msgid "unexpected end of file" -msgstr "" - -#: grub-core/script/main.c:55 grub-core/script/main.c:57 -#: grub-core/script/main.c:59 grub-core/script/main.c:67 -msgid "[NUM]" -msgstr "" - -#: grub-core/script/main.c:55 -msgid "Exit from loops" -msgstr "" - -#: grub-core/script/main.c:57 -msgid "Continue loops" -msgstr "" - -#. TRANSLATORS: Positional arguments are -#. arguments $0, $1, $2, ... -#: grub-core/script/main.c:62 -msgid "Shift positional parameters." -msgstr "" - -#: grub-core/script/main.c:64 -msgid "[VALUE]..." -msgstr "" - -#: grub-core/script/main.c:65 -msgid "Set positional parameters." -msgstr "" - -#. TRANSLATORS: It's a command description -#. and "Return" is a verb, not a noun. The -#. command in question is "return" and -#. has exactly the same semanics as bash -#. equivalent. -#: grub-core/script/main.c:73 -msgid "Return from a function." -msgstr "" - -#: grub-core/term/gfxterm_background.c:176 -msgid "[-m (stretch|normal)] FILE" -msgstr "" - -#: grub-core/term/gfxterm_background.c:177 -msgid "Load background image for active terminal." -msgstr "" - -#: grub-core/term/gfxterm_background.c:182 util/grub-install.c:302 -#: util/grub-install.c:303 util/grub-mkrescue.c:107 util/grub-mkrescue.c:108 -#: util/grub-render-label.c:61 util/grub-render-label.c:63 -msgid "COLOR" -msgstr "" - -#: grub-core/term/gfxterm_background.c:183 -msgid "Set background color for active terminal." -msgstr "" - -#: grub-core/term/i386/coreboot/cbmemc.c:139 -msgid "Show CBMEM console content." -msgstr "" - -#: grub-core/term/serial.c:57 -msgid "Set the serial unit." -msgstr "" - -#: grub-core/term/serial.c:58 -msgid "Set the serial port address." -msgstr "" - -#: grub-core/term/serial.c:59 -msgid "Set the serial port speed." -msgstr "" - -#: grub-core/term/serial.c:60 -msgid "Set the serial port word length." -msgstr "" - -#: grub-core/term/serial.c:61 -msgid "Set the serial port parity." -msgstr "" - -#: grub-core/term/serial.c:62 -msgid "Set the serial port stop bits." -msgstr "" - -#: grub-core/term/serial.c:63 -msgid "Set the base frequency." -msgstr "" - -#: grub-core/term/serial.c:64 -msgid "Enable/disable RTS/CTS." -msgstr "" - -#: grub-core/term/serial.c:218 -#, c-format -msgid "serial port `%s' isn't found" -msgstr "" - -#: grub-core/term/serial.c:254 -msgid "unsupported serial port flow control" -msgstr "" - -#: grub-core/term/serial.c:429 -msgid "[OPTIONS...]" -msgstr "" - -#: grub-core/term/serial.c:430 -msgid "Configure serial port." -msgstr "" - -#: grub-core/term/terminfo.c:184 -#, c-format -msgid "unknown terminfo type `%s'" -msgstr "" - -#: grub-core/term/terminfo.c:668 -msgid "ASCII" -msgstr "" - -#: grub-core/term/terminfo.c:671 -msgid "UTF-8" -msgstr "" - -#. TRANSLATORS: visually ordered UTF-8 is a non-compliant encoding -#. based on UTF-8 with right-to-left languages written in reverse. -#. Used on some terminals. Normal UTF-8 is refered as -#. "logically-ordered UTF-8" by opposition. -#: grub-core/term/terminfo.c:677 -msgid "visually-ordered UTF-8" -msgstr "" - -#: grub-core/term/terminfo.c:680 -msgid "Unknown encoding" -msgstr "" - -#: grub-core/term/terminfo.c:684 -msgid "Current terminfo types:" -msgstr "" - -#: grub-core/term/terminfo.c:699 -msgid "Terminal is ASCII-only [default]." -msgstr "" - -#: grub-core/term/terminfo.c:700 -msgid "Terminal is logical-ordered UTF-8." -msgstr "" - -#: grub-core/term/terminfo.c:701 -msgid "Terminal is visually-ordered UTF-8." -msgstr "" - -#: grub-core/term/terminfo.c:703 -msgid "Terminal has specified geometry." -msgstr "" - -#. TRANSLATORS: "x" has to be entered in, like an identifier, so please don't -#. use better Unicode codepoints. -#: grub-core/term/terminfo.c:706 -msgid "WIDTHxHEIGHT." -msgstr "" - -#: grub-core/term/terminfo.c:746 -msgid "incorrect terminal dimensions specification" -msgstr "" - -#: grub-core/term/terminfo.c:776 -#, c-format -msgid "terminal %s isn't found or it's not handled by terminfo" -msgstr "" - -#: grub-core/term/terminfo.c:785 -msgid "[[-a|-u|-v] [-g WxH] TERM [TYPE]]" -msgstr "" - -#: grub-core/term/terminfo.c:786 -msgid "Set terminfo type of TERM to TYPE.\n" -msgstr "" - -#. TRANSLATORS: this is the BLOCK-argument, not -#. environment block. -#: grub-core/tests/test_blockarg.c:49 -msgid "Print and execute block argument." -msgstr "" - -#. TRANSLATORS: We're speaking about bitmap images like -#. JPEG or PNG. -#: grub-core/video/bitmap.c:209 -#, c-format -msgid "bitmap file `%s' is of unsupported format" -msgstr "" - -#: grub-core/video/i386/pc/vbe.c:1191 -#, c-format -msgid " VBE info: version: %d.%d OEM software rev: %d.%d\n" -msgstr "" - -#: grub-core/video/i386/pc/vbe.c:1198 -#, c-format -msgid " total memory: %d KiB\n" -msgstr "" - -#: grub-core/video/video.c:596 grub-core/video/video.c:762 -msgid "no suitable video mode found" -msgstr "" - -#: include/grub/crypto.h:403 -msgid "access denied" -msgstr "" - -#: include/grub/util/install.h:30 include/grub/util/install.h:35 -msgid "MODULES" -msgstr "" - -#: include/grub/util/install.h:31 -msgid "pre-load specified modules MODULES" -msgstr "" - -#: include/grub/util/install.h:33 -msgid "embed a specific DTB" -msgstr "" - -#: include/grub/util/install.h:36 -msgid "install only MODULES and their dependencies [default=all]" -msgstr "" - -#: include/grub/util/install.h:37 -msgid "THEMES" -msgstr "" - -#: include/grub/util/install.h:38 -#, c-format -msgid "install THEMES [default=%s]" -msgstr "" - -#: include/grub/util/install.h:39 -msgid "FONTS" -msgstr "" - -#: include/grub/util/install.h:40 -#, c-format -msgid "install FONTS [default=%s]" -msgstr "" - -#: include/grub/util/install.h:41 -msgid "LOCALES" -msgstr "" - -#: include/grub/util/install.h:42 -msgid "install only LOCALES [default=all]" -msgstr "" - -#: include/grub/util/install.h:45 -msgid "compress GRUB files [optional]" -msgstr "" - -#: include/grub/util/install.h:48 util/grub-mkimage.c:83 -msgid "choose the compression to use for core image" -msgstr "" - -#. TRANSLATORS: platform here isn't identifier. It can be translated. -#: include/grub/util/install.h:51 include/grub/util/install.h:54 -#: util/grub-mkimage.c:66 -#, c-format -msgid "use images and modules under DIR [default=%s/]" -msgstr "" - -#: include/grub/util/install.h:57 -#, c-format -msgid "use translations under DIR [default=%s]" -msgstr "" - -#: include/grub/util/install.h:60 -#, c-format -msgid "use themes under DIR [default=%s]" -msgstr "" - -#: include/grub/util/install.h:65 util/grub-mkimage.c:78 -msgid "embed FILE as public key for signature checking" -msgstr "" - -#: util/editenv.c:59 util/grub-editenv.c:201 util/grub-install-common.c:535 -#: util/grub-mkimage.c:315 util/setup.c:791 -#, c-format -msgid "cannot sync `%s': %s" -msgstr "" - -#: util/editenv.c:64 -#, c-format -msgid "cannot rename the file %s to %s" -msgstr "" - -#: util/getroot.c:402 -#, c-format -msgid "disk does not exist, so falling back to partition device %s" -msgstr "" - -#: util/grub-editenv.c:45 util/grub-fstest.c:506 -msgid "Commands:" -msgstr "" - -#: util/grub-editenv.c:47 -msgid "Create a blank environment block file." -msgstr "" - -#: util/grub-editenv.c:49 -msgid "List the current variables." -msgstr "" - -#. TRANSLATORS: "set" is a keyword. It's a summary of "set" subcommand. -#: util/grub-editenv.c:51 -msgid "set [NAME=VALUE ...]" -msgstr "" - -#: util/grub-editenv.c:52 -msgid "Set variables." -msgstr "" - -#. TRANSLATORS: "unset" is a keyword. It's a summary of "unset" subcommand. -#: util/grub-editenv.c:54 -msgid "unset [NAME ...]" -msgstr "" - -#: util/grub-editenv.c:55 -msgid "Delete variables." -msgstr "" - -#: util/grub-editenv.c:57 -msgid "Options:" -msgstr "" - -#: util/grub-editenv.c:84 -msgid "You need to specify at least one command.\n" -msgstr "" - -#: util/grub-editenv.c:113 -msgid "FILENAME COMMAND" -msgstr "" - -#: util/grub-editenv.c:114 -msgid "Tool to edit environment block." -msgstr "" - -#: util/grub-editenv.c:116 -#, c-format -msgid "" -"If FILENAME is `-', the default value %s is used.\n" -"\n" -"There is no `delete' command; if you want to delete the whole environment\n" -"block, use `rm %s'." -msgstr "" - -#: util/grub-editenv.c:162 -msgid "invalid environment block" -msgstr "" - -#: util/grub-editenv.c:217 -#, c-format -msgid "invalid parameter %s" -msgstr "" - -#: util/grub-editenv.c:222 -msgid "environment block too small" -msgstr "" - -#: util/grub-fstest.c:107 -#, c-format -msgid "disk read fails at offset %lld, length %lld" -msgstr "" - -#: util/grub-fstest.c:138 -#, c-format -msgid "invalid skip value %lld" -msgstr "" - -#: util/grub-fstest.c:160 util/grub-fstest.c:246 -#, c-format -msgid "read error at offset %llu: %s" -msgstr "" - -#: util/grub-fstest.c:210 -#, c-format -msgid "cannot open OS file `%s': %s" -msgstr "" - -#: util/grub-fstest.c:225 util/misc.c:126 -#, c-format -msgid "cannot write to the stdout: %s" -msgstr "" - -#: util/grub-fstest.c:259 -#, c-format -msgid "compare fail at offset %llu" -msgstr "" - -#: util/grub-fstest.c:280 util/grub-fstest.c:314 -#, c-format -msgid "OS file %s open error: %s" -msgstr "" - -#: util/grub-fstest.c:402 util/grub-mount.c:392 -#, c-format -msgid "`loopback' command fails: %s" -msgstr "" - -#: util/grub-fstest.c:413 util/grub-mount.c:402 -#, c-format -msgid "`cryptomount' command fails: %s" -msgstr "" - -#: util/grub-fstest.c:474 util/grub-fstest.c:478 -msgid "couldn't retrieve UUID" -msgstr "" - -#: util/grub-fstest.c:507 -msgid "ls PATH" -msgstr "" - -#: util/grub-fstest.c:507 -msgid "List files in PATH." -msgstr "" - -#: util/grub-fstest.c:508 -msgid "cp FILE LOCAL" -msgstr "" - -#: util/grub-fstest.c:508 -msgid "Copy FILE to local file LOCAL." -msgstr "" - -#: util/grub-fstest.c:509 -msgid "cat FILE" -msgstr "" - -#: util/grub-fstest.c:509 -msgid "Copy FILE to standard output." -msgstr "" - -#: util/grub-fstest.c:510 -msgid "cmp FILE LOCAL" -msgstr "" - -#: util/grub-fstest.c:510 -msgid "Compare FILE with local file LOCAL." -msgstr "" - -#: util/grub-fstest.c:511 -msgid "hex FILE" -msgstr "" - -#: util/grub-fstest.c:511 -msgid "Show contents of FILE in hex." -msgstr "" - -#: util/grub-fstest.c:512 -msgid "crc FILE" -msgstr "" - -#: util/grub-fstest.c:512 -msgid "Get crc32 checksum of FILE." -msgstr "" - -#: util/grub-fstest.c:513 -msgid "blocklist FILE" -msgstr "" - -#: util/grub-fstest.c:513 -msgid "Display blocklist of FILE." -msgstr "" - -#: util/grub-fstest.c:514 -msgid "xnu_uuid DEVICE" -msgstr "" - -#: util/grub-fstest.c:514 -msgid "Compute XNU UUID of the device." -msgstr "" - -#. TRANSLATORS: bitmaps are images like e.g. in JPEG. -#: util/grub-fstest.c:517 util/grub-fstest.c:518 util/grub-fstest.c:519 -#: util/grub-mkfont.c:938 util/grub-mkfont.c:951 util/grub-mkfont.c:952 -#: util/grub-mkpasswd-pbkdf2.c:46 util/grub-mkpasswd-pbkdf2.c:47 -#: util/grub-mkpasswd-pbkdf2.c:48 -msgid "NUM" -msgstr "" - -#: util/grub-fstest.c:517 -msgid "Skip N bytes from output file." -msgstr "" - -#: util/grub-fstest.c:518 -msgid "Handle N bytes in output file." -msgstr "" - -#: util/grub-fstest.c:519 -msgid "Specify the number of input files." -msgstr "" - -#: util/grub-fstest.c:520 util/grub-mount.c:453 -msgid "Set debug environment variable." -msgstr "" - -#: util/grub-fstest.c:521 util/grub-mount.c:454 -msgid "Mount crypto devices." -msgstr "" - -#. TRANSLATORS: "prompt" is a keyword. -#: util/grub-fstest.c:524 util/grub-mount.c:457 -msgid "FILE|prompt" -msgstr "" - -#: util/grub-fstest.c:524 util/grub-mount.c:457 -msgid "Load zfs crypto key." -msgstr "" - -#: util/grub-fstest.c:526 -msgid "Uncompress data." -msgstr "" - -#: util/grub-fstest.c:605 -msgid "Invalid disk count.\n" -msgstr "" - -#. TRANSLATORS: disk count is optional but if it's there it must -#. be before disk list. So please don't imply disk count as mandatory. -#. -#: util/grub-fstest.c:613 -msgid "Disk count must precede disks list.\n" -msgstr "" - -#: util/grub-fstest.c:633 -msgid "No command is specified.\n" -msgstr "" - -#: util/grub-fstest.c:638 -msgid "Not enough parameters to command.\n" -msgstr "" - -#: util/grub-fstest.c:711 -#, c-format -msgid "Invalid command %s.\n" -msgstr "" - -#: util/grub-fstest.c:724 -msgid "IMAGE_PATH COMMANDS" -msgstr "" - -#: util/grub-fstest.c:725 util/grub-mount.c:553 -msgid "Debug tool for filesystem driver." -msgstr "" - -#: util/grub-glue-efi.c:53 -msgid "set input filename for 32-bit part." -msgstr "" - -#: util/grub-glue-efi.c:55 -msgid "set input filename for 64-bit part." -msgstr "" - -#: util/grub-glue-efi.c:57 util/grub-mklayout.c:55 util/grub-render-label.c:71 -msgid "set output filename. Default is STDOUT" -msgstr "" - -#: util/grub-glue-efi.c:94 util/grub-mklayout.c:476 -#: util/grub-mkpasswd-pbkdf2.c:86 util/grub-render-label.c:131 -msgid "[OPTIONS]" -msgstr "" - -#: util/grub-glue-efi.c:95 -msgid "Glue 32-bit and 64-bit binary into Apple universal one." -msgstr "" - -#: util/grub-glue-efi.c:116 -msgid "Missing input file\n" -msgstr "" - -#: util/grub-install-common.c:127 util/grub-install-common.c:151 -#, c-format -msgid "cannot copy `%s' to `%s': %s" -msgstr "" - -#: util/grub-install-common.c:147 -#, c-format -msgid "can't compress `%s' to `%s'" -msgstr "" - -#: util/grub-install-common.c:196 util/grub-install-common.c:552 -#: util/grub-install-common.c:579 util/grub-install-common.c:621 -#, c-format -msgid "cannot open directory `%s': %s" -msgstr "" - -#: util/grub-install-common.c:212 -#, c-format -msgid "cannot delete `%s': %s" -msgstr "" - -#: util/grub-install-common.c:324 util/grub-mkimage.c:209 -msgid "grub-mkimage is compiled without XZ support" -msgstr "" - -#: util/grub-install-common.c:332 util/grub-mkimage.c:217 -#, c-format -msgid "Unknown compression format %s" -msgstr "" - -#: util/grub-install-common.c:400 -#, c-format -msgid "Unrecognized compression `%s'" -msgstr "" - -#: util/grub-install-common.c:509 -#, c-format -msgid "unknown target format %s" -msgstr "" - -#: util/grub-install-common.c:700 -#, c-format -msgid "cannot find locale `%s'" -msgstr "" - -#: util/grub-install-common.c:939 -#, c-format -msgid "%s doesn't exist. Please specify --target or --directory" -msgstr "" - -#: util/grub-install-common.c:948 util/grub-install-common.c:951 -#, c-format -msgid "invalid modinfo file `%s'" -msgstr "" - -#: util/grub-install-common.c:966 -#, c-format -msgid "Unknown platform `%s-%s'" -msgstr "" - -#: util/grub-install.c:238 -msgid "More than one install device?" -msgstr "" - -#: util/grub-install.c:251 -#, c-format -msgid "" -"install GRUB images under the directory DIR/%s instead of the %s directory" -msgstr "" - -#: util/grub-install.c:256 util/grub-probe.c:734 -msgid "TARGET" -msgstr "" - -#. TRANSLATORS: "TARGET" as in "target platform". -#: util/grub-install.c:258 -#, c-format -msgid "install GRUB for TARGET platform [default=%s]; available targets: %s" -msgstr "" - -#. TRANSLATORS: "may break" doesn't just mean that option wouldn't have any -#. effect but that it will make the resulting install unbootable from HDD. -#. TRANSLATORS: The potential breakage isn't limited to floppies but it's -#. likely to make the install unbootable from HDD. -#: util/grub-install.c:267 util/grub-setup.c:94 -msgid "" -"make the drive also bootable as floppy (default for fdX devices). May break " -"on some BIOSes." -msgstr "" - -#: util/grub-install.c:270 -msgid "delete device map if it already exists" -msgstr "" - -#: util/grub-install.c:272 util/grub-setup.c:87 -msgid "install even if problems are detected" -msgstr "" - -#: util/grub-install.c:274 -msgid "use identifier file even if UUID is available" -msgstr "" - -#: util/grub-install.c:276 -msgid "" -"disk module to use (biosdisk or native). This option is only available on " -"BIOS target." -msgstr "" - -#: util/grub-install.c:279 -msgid "" -"don't update the `boot-device'/`Boot*' NVRAM variables. This option is only " -"available on EFI and IEEE1275 targets." -msgstr "" - -#: util/grub-install.c:282 util/grub-setup.c:89 -msgid "do not probe for filesystems in DEVICE" -msgstr "" - -#: util/grub-install.c:284 -msgid "do not install bootsector" -msgstr "" - -#: util/grub-install.c:286 util/grub-setup.c:96 -msgid "" -"Do not apply any reed-solomon codes when embedding core.img. This option is " -"only available on x86 BIOS targets." -msgstr "" - -#: util/grub-install.c:293 -msgid "" -"the installation device is removable. This option is only available on EFI." -msgstr "" - -#: util/grub-install.c:295 -msgid "ID" -msgstr "" - -#: util/grub-install.c:296 -msgid "the ID of bootloader. This option is only available on EFI and Macs." -msgstr "" - -#: util/grub-install.c:298 -msgid "use DIR as the EFI System Partition root." -msgstr "" - -#: util/grub-install.c:300 -msgid "use DIR for PPC MAC install." -msgstr "" - -#: util/grub-install.c:301 util/grub-mkrescue.c:106 -msgid "use FILE as font for label" -msgstr "" - -#: util/grub-install.c:302 util/grub-mkrescue.c:107 -msgid "use COLOR for label" -msgstr "" - -#: util/grub-install.c:303 util/grub-mkrescue.c:108 -msgid "use COLOR for label background" -msgstr "" - -#: util/grub-install.c:304 util/grub-mkrescue.c:110 -msgid "use STRING as product version" -msgstr "" - -#: util/grub-install.c:361 -msgid "[OPTION] [INSTALL_DEVICE]" -msgstr "" - -#: util/grub-install.c:362 -msgid "Install GRUB on your drive." -msgstr "" - -#: util/grub-install.c:363 -#, c-format -msgid "" -"INSTALL_DEVICE must be system device filename.\n" -"%s copies GRUB images into %s. On some platforms, it may also install GRUB " -"into the boot sector." -msgstr "" - -#: util/grub-install.c:672 -#, c-format -msgid "the drive %s is defined multiple times in the device map %s" -msgstr "" - -#: util/grub-install.c:878 -msgid "Unable to determine your platform. Use --target." -msgstr "" - -#: util/grub-install.c:891 -#, c-format -msgid "Installing for %s platform.\n" -msgstr "" - -#: util/grub-install.c:939 -msgid "install device isn't specified" -msgstr "" - -#: util/grub-install.c:1057 -msgid "cannot find EFI directory" -msgstr "" - -#: util/grub-install.c:1060 util/grub-install.c:1209 util/grub-install.c:1254 -#: util/grub-macbless.c:76 util/grub-probe.c:329 util/setup.c:316 -#, c-format -msgid "cannot find a device for %s (is /dev mounted?)" -msgstr "" - -#: util/grub-install.c:1069 util/grub-install.c:1217 util/grub-install.c:1270 -#: util/grub-install.c:1365 util/grub-macbless.c:80 util/grub-probe.c:372 -#, c-format -msgid "cannot find a GRUB drive for %s. Check your device.map" -msgstr "" - -#: util/grub-install.c:1087 -#, c-format -msgid "%s doesn't look like an EFI partition" -msgstr "" - -#: util/grub-install.c:1129 util/grub-install.c:1614 -msgid "You've found a bug" -msgstr "" - -#: util/grub-install.c:1231 -#, c-format -msgid "filesystem on %s is neither HFS nor HFS+" -msgstr "" - -#: util/grub-install.c:1299 -#, c-format -msgid "" -"attempt to install to encrypted disk without cryptodisk enabled. Set `%s' in " -"file `%s'" -msgstr "" - -#: util/grub-install.c:1410 util/grub-install.c:1772 util/grub-install.c:1872 -#, c-format -msgid "Can't create file: %s" -msgstr "" - -#: util/grub-install.c:1491 -msgid "no hints available for your platform. Expect reduced performance" -msgstr "" - -#. TRANSLATORS: This is a prefix in the log to indicate that usually -#. a command would be executed but due to an option was skipped. -#: util/grub-install.c:1702 -msgid "NOT RUNNING: " -msgstr "" - -#: util/grub-install.c:1806 -msgid "the chosen partition is not a PReP partition" -msgstr "" - -#: util/grub-install.c:1811 -msgid "failed to copy Grub to the PReP partition" -msgstr "" - -#: util/grub-install.c:1816 -#, c-format -msgid "" -"the PReP partition is not empty. If you are sure you want to use it, run dd " -"to clear it: `%s'" -msgstr "" - -#: util/grub-install.c:1888 util/grub-install.c:1932 -#, c-format -msgid "efibootmgr failed to register the boot entry: %s" -msgstr "" - -#: util/grub-install.c:1916 -msgid "EFI bootloader id isn't specified." -msgstr "" - -#: util/grub-install.c:1950 -msgid "WARNING: no platform-specific install was performed" -msgstr "" - -#: util/grub-install.c:1957 -msgid "Installation finished. No error reported." -msgstr "" - -#: util/grub-macbless.c:101 -msgid "bless for x86-based macs" -msgstr "" - -#: util/grub-macbless.c:103 -msgid "bless for ppc-based macs" -msgstr "" - -#: util/grub-macbless.c:136 util/grub-probe.c:823 -msgid "No path or device is specified.\n" -msgstr "" - -#: util/grub-macbless.c:157 -msgid "--ppc PATH|--x86 FILE" -msgstr "" - -#: util/grub-macbless.c:158 -msgid "Mac-style bless on HFS or HFS+" -msgstr "" - -#: util/grub-menulst2cfg.c:44 -#, c-format -msgid "Usage: %s [INFILE [OUTFILE]]\n" -msgstr "" - -#: util/grub-mkfont.c:157 -#, c-format -msgid "Freetype Error %d loading glyph 0x%x for U+0x%x%s" -msgstr "" - -#. TRANSLATORS: These qualifiers are used for cursive typography, -#. mainly Arabic. Note that the terms refer to the visual position -#. and not logical order and if used in left-to-right script then -#. leftmost is initial but with right-to-left script like Arabic -#. rightmost is the initial. -#: util/grub-mkfont.c:165 -msgid " (medial)" -msgstr "" - -#: util/grub-mkfont.c:166 -msgid " (leftmost)" -msgstr "" - -#: util/grub-mkfont.c:167 -msgid " (rightmost)" -msgstr "" - -#: util/grub-mkfont.c:481 -#, c-format -msgid "Out of range substitution (%d, %d)\n" -msgstr "" - -#. TRANSLATORS: "lookup" is taken directly from font specifications -#. which are formulated as "Under condition X replace LOOKUP with -#. SUBSTITUITION". " -#: util/grub-mkfont.c:506 -#, c-format -msgid "Out of range lookup: %d\n" -msgstr "" - -#: util/grub-mkfont.c:514 -#, c-format -msgid "Unsupported substitution type: %d\n" -msgstr "" - -#: util/grub-mkfont.c:550 -#, c-format -msgid "Unsupported substitution specification: %d\n" -msgstr "" - -#: util/grub-mkfont.c:582 -#, c-format -msgid "Unsupported coverage specification: %d\n" -msgstr "" - -#: util/grub-mkfont.c:622 -#, c-format -msgid "WARNING: unsupported font feature parameters: %x\n" -msgstr "" - -#: util/grub-mkfont.c:936 util/grub-mkrescue.c:98 util/grub-mkstandalone.c:48 -msgid "save output in FILE [required]" -msgstr "" - -#. TRANSLATORS: some font files may have multiple faces (fonts). -#. This option is used to chose among them, the first face being '0'. -#. Rarely used. -#: util/grub-mkfont.c:942 -msgid "select face index" -msgstr "" - -#: util/grub-mkfont.c:943 -msgid "FROM-TO[,FROM-TO]" -msgstr "" - -#. TRANSLATORS: It refers to the range of characters in font. -#: util/grub-mkfont.c:945 -msgid "set font range" -msgstr "" - -#. TRANSLATORS: "family name" for font is just a generic name without suffix -#. like "Bold". -#: util/grub-mkfont.c:949 -msgid "set font family name" -msgstr "" - -#: util/grub-mkfont.c:950 -msgid "SIZE" -msgstr "" - -#: util/grub-mkfont.c:950 -msgid "set font size" -msgstr "" - -#: util/grub-mkfont.c:951 -msgid "set font descent" -msgstr "" - -#: util/grub-mkfont.c:952 -msgid "set font ascent" -msgstr "" - -#: util/grub-mkfont.c:953 -msgid "convert to bold font" -msgstr "" - -#: util/grub-mkfont.c:954 -msgid "force autohint" -msgstr "" - -#: util/grub-mkfont.c:955 -msgid "disable hinting" -msgstr "" - -#. TRANSLATORS: some fonts contain bitmap rendering for -#. some sizes. This option forces rerendering even if -#. pre-rendered bitmap is available. -#. -#: util/grub-mkfont.c:961 -msgid "ignore bitmap strikes when loading" -msgstr "" - -#. TRANSLATORS: It refers to the range of characters in font. -#: util/grub-mkfont.c:1059 util/grub-mkfont.c:1075 -msgid "invalid font range" -msgstr "" - -#: util/grub-mkfont.c:1151 -msgid "[OPTIONS] FONT_FILES" -msgstr "" - -#: util/grub-mkfont.c:1152 -msgid "Convert common font file formats into PF2" -msgstr "" - -#: util/grub-mkfont.c:1182 util/grub-mkrescue.c:483 -#: util/grub-mkstandalone.c:306 -msgid "output file must be specified" -msgstr "" - -#: util/grub-mkfont.c:1185 -msgid "FT_Init_FreeType fails" -msgstr "" - -#: util/grub-mkfont.c:1199 -#, c-format -msgid "can't open file %s, index %d: error %d" -msgstr "" - -#: util/grub-mkfont.c:1229 -#, c-format -msgid "can't set %dx%d font size: Freetype error %d: %s" -msgstr "" - -#: util/grub-mkimage.c:67 -msgid "set prefix directory" -msgstr "" - -#. TRANSLATORS: "memdisk" here isn't an identifier, it can be translated. -#. "embed" is a verb (command description). " -#: util/grub-mkimage.c:71 -msgid "" -"embed FILE as a memdisk image\n" -"Implies `-p (memdisk)/boot/grub' and overrides any prefix supplied " -"previously, but the prefix itself can be overridden by later options" -msgstr "" - -#: util/grub-mkimage.c:74 -msgid "embed FILE as a device tree (DTB)\n" -msgstr "" - -#: util/grub-mkimage.c:76 -msgid "embed FILE as an early config" -msgstr "" - -#. TRANSLATORS: NOTE is a name of segment. -#: util/grub-mkimage.c:80 -msgid "add NOTE segment for CHRP IEEE1275" -msgstr "" - -#: util/grub-mkimage.c:81 -msgid "output a generated image to FILE [default=stdout]" -msgstr "" - -#: util/grub-mkimage.c:82 -msgid "FORMAT" -msgstr "" - -#: util/grub-mkimage.c:100 util/grub-mkstandalone.c:62 -msgid "generate an image in FORMAT" -msgstr "" - -#: util/grub-mkimage.c:101 util/grub-mkstandalone.c:63 -msgid "available formats:" -msgstr "" - -#: util/grub-mkimage.c:152 util/grub-mkstandalone.c:96 -#, c-format -msgid "unknown target format %s\n" -msgstr "" - -#: util/grub-mkimage.c:242 -msgid "[OPTION]... [MODULES]" -msgstr "" - -#: util/grub-mkimage.c:243 -msgid "Make a bootable image of GRUB." -msgstr "" - -#: util/grub-mkimage.c:273 util/grub-mkstandalone.c:309 -msgid "Target format not specified (use the -O option)." -msgstr "" - -#: util/grub-mkimage.c:282 -msgid "Prefix not specified (use the -p option)." -msgstr "" - -#: util/grub-mkimage.c:318 util/setup.c:793 -#, c-format -msgid "cannot close `%s': %s" -msgstr "" - -#: util/grub-mkimagexx.c:2191 -#, c-format -msgid "" -"`%s' is miscompiled: its start address is 0x%llx instead of 0x%llx: ld.gold " -"bug?" -msgstr "" - -#: util/grub-mklayout.c:53 -msgid "set input filename. Default is STDIN" -msgstr "" - -#. TRANSLATORS: scan identifier is keyboard key symbolic name. -#: util/grub-mklayout.c:307 -#, c-format -msgid "Unknown keyboard scan identifier %s\n" -msgstr "" - -#. TRANSLATORS: scan code is keyboard key numeric identifier. -#: util/grub-mklayout.c:390 util/grub-mklayout.c:418 -#, c-format -msgid "Unknown keyboard scan code 0x%02x\n" -msgstr "" - -#. TRANSLATORS: this error is triggered when input doesn't contain any -#. key descriptions. -#: util/grub-mklayout.c:438 -msgid "ERROR: no valid keyboard layout found. Check the input.\n" -msgstr "" - -#. TRANSLATORS: "one" is a shortcut for "keyboard layout". -#: util/grub-mklayout.c:478 -msgid "Generate GRUB keyboard layout from Linux console one." -msgstr "" - -#: util/grub-mknetdir.c:47 -msgid "root directory of TFTP server" -msgstr "" - -#: util/grub-mknetdir.c:49 -msgid "relative subdirectory on network server" -msgstr "" - -#: util/grub-mknetdir.c:88 -msgid "" -"Prepares GRUB network boot images at net_directory/subdir assuming " -"net_directory being TFTP root." -msgstr "" - -#: util/grub-mknetdir.c:146 -#, c-format -msgid "unsupported platform %s" -msgstr "" - -#. TRANSLATORS: First %s is replaced by platform name. Second one by filename. -#: util/grub-mknetdir.c:165 -#, c-format -msgid "" -"Netboot directory for %s created. Configure your DHCP server to point to %s\n" -msgstr "" - -#: util/grub-mkpasswd-pbkdf2.c:46 -msgid "Number of PBKDF2 iterations" -msgstr "" - -#: util/grub-mkpasswd-pbkdf2.c:47 -msgid "Length of generated hash" -msgstr "" - -#: util/grub-mkpasswd-pbkdf2.c:48 -msgid "Length of salt" -msgstr "" - -#: util/grub-mkpasswd-pbkdf2.c:87 -msgid "Generate PBKDF2 password hash." -msgstr "" - -#: util/grub-mkpasswd-pbkdf2.c:144 util/grub-mkpasswd-pbkdf2.c:151 -msgid "failure to read password" -msgstr "" - -#: util/grub-mkpasswd-pbkdf2.c:146 -msgid "Reenter password: " -msgstr "" - -#: util/grub-mkpasswd-pbkdf2.c:160 -msgid "passwords don't match" -msgstr "" - -#: util/grub-mkpasswd-pbkdf2.c:169 -msgid "couldn't retrieve random data for salt" -msgstr "" - -#: util/grub-mkpasswd-pbkdf2.c:184 -#, c-format -msgid "cryptographic error number %d" -msgstr "" - -#: util/grub-mkpasswd-pbkdf2.c:203 -#, c-format -msgid "PBKDF2 hash of your password is %s\n" -msgstr "" - -#: util/grub-mkrelpath.c:67 -msgid "No path is specified.\n" -msgstr "" - -#: util/grub-mkrelpath.c:78 -msgid "PATH" -msgstr "" - -#: util/grub-mkrelpath.c:79 -msgid "Transform a system filename into GRUB one." -msgstr "" - -#: util/grub-mkrescue.c:100 -msgid "save ROM images in DIR [optional]" -msgstr "" - -#. TRANSLATORS: xorriso is a program for creating ISOs and burning CDs. -#: util/grub-mkrescue.c:103 -msgid "use FILE as xorriso [optional]" -msgstr "" - -#: util/grub-mkrescue.c:109 -msgid "use STRING as product name" -msgstr "" - -#: util/grub-mkrescue.c:111 -msgid "" -"enable sparc boot. Disables HFS+, APM, ARCS and boot as disk image for i386-" -"pc" -msgstr "" - -#: util/grub-mkrescue.c:112 -msgid "" -"enable ARCS (big-endian mips machines, mostly SGI) boot. Disables HFS+, APM, " -"sparc64 and boot as disk image for i386-pc" -msgstr "" - -#. TRANSLATORS: it generates one single image which is bootable through any method. -#: util/grub-mkrescue.c:125 -msgid "Make GRUB CD-ROM, disk, pendrive and floppy bootable image." -msgstr "" - -#: util/grub-mkrescue.c:130 -#, c-format -msgid "" -"Generates a bootable CD/USB/floppy image. Arguments other than options to " -"this program are passed to xorriso, and indicate source files, source " -"directories, or any of the mkisofs options listed by the output of `%s'." -msgstr "" - -#: util/grub-mkrescue.c:134 -msgid "Option -- switches to native xorriso command mode." -msgstr "" - -#: util/grub-mkrescue.c:135 -msgid "Mail xorriso support requests to ." -msgstr "" - -#: util/grub-mkrescue.c:221 util/grub-mkstandalone.c:114 -msgid "[OPTION] SOURCE..." -msgstr "" - -#: util/grub-mkrescue.c:257 util/grub-mkrescue.c:300 util/grub-mkrescue.c:588 -#, c-format -msgid "enabling %s support ..." -msgstr "" - -#: util/grub-mkrescue.c:486 -msgid "xorriso not found" -msgstr "" - -#: util/grub-mkrescue.c:623 -msgid "" -"Your xorriso doesn't support `--grub2-boot-info'. Some features are " -"disabled. Please use xorriso 1.2.9 or later." -msgstr "" - -#: util/grub-mkrescue.c:650 -msgid "" -"Your xorriso doesn't support `--grub2-boot-info'. Your core image is too " -"big. Boot as disk is disabled. Please use xorriso 1.2.9 or later." -msgstr "" - -#: util/grub-mkstandalone.c:115 -msgid "" -"Generate a standalone image (containing all modules) in the selected format" -msgstr "" - -#: util/grub-mkstandalone.c:115 -msgid "Graft point syntax (E.g. /boot/grub/grub.cfg=./grub.cfg) is accepted" -msgstr "" - -#: util/grub-mount.c:552 -msgid "IMAGE1 [IMAGE2 ...] MOUNTPOINT" -msgstr "" - -#: util/grub-mount.c:575 -msgid "need an image and mountpoint" -msgstr "" - -#: util/grub-probe.c:731 -msgid "given argument is a system device, not a path" -msgstr "" - -#: util/grub-probe.c:736 -msgid "separate items in output using ASCII NUL characters" -msgstr "" - -#: util/grub-probe.c:754 -#, c-format -msgid "[default=%s]" -msgstr "" - -#: util/grub-probe.c:756 -msgid "print TARGET" -msgstr "" - -#: util/grub-probe.c:757 -msgid "available targets:" -msgstr "" - -#: util/grub-probe.c:839 -msgid "[OPTION]... [PATH|DEVICE]" -msgstr "" - -#: util/grub-probe.c:840 -msgid "" -"Probe device information for a given path (or device, if the -d option is " -"given)." -msgstr "" - -#: util/grub-render-label.c:60 -msgid "read text from FILE." -msgstr "" - -#: util/grub-render-label.c:62 -msgid "use COLOR for text" -msgstr "" - -#: util/grub-render-label.c:64 -msgid "use COLOR for background" -msgstr "" - -#. TRANSLATORS: The result is always stored to file and -#. never shown directly, so don't use "show" as synonym for render. Use "create" if -#. "render" doesn't translate directly. -#: util/grub-render-label.c:69 -msgid "set the label to render" -msgstr "" - -#: util/grub-render-label.c:73 -msgid "use FILE as font (PF2)." -msgstr "" - -#. TRANSLATORS: This file takes a text and creates a graphical representation of it, -#. putting the result into .disk_label file. The result is always stored to file and -#. never shown directly, so don't use "show" as synonym for render. Use "create" if -#. "render" doesn't translate directly. -#: util/grub-render-label.c:136 -msgid "Render Apple .disk_label." -msgstr "" - -#: util/grub-render-label.c:158 util/grub-syslinux2cfg.c:169 -msgid "Missing arguments\n" -msgstr "" - -#: util/grub-script-check.c:87 -msgid "[PATH]" -msgstr "" - -#: util/grub-script-check.c:88 -msgid "Checks GRUB script configuration file for syntax errors." -msgstr "" - -#: util/grub-script-check.c:207 -#, c-format -msgid "Syntax error at line %u\n" -msgstr "" - -#: util/grub-script-check.c:212 -#, c-format -msgid "Script `%s' contains no commands and will do nothing\n" -msgstr "" - -#: util/grub-setup.c:79 -#, c-format -msgid "use FILE as the boot image [default=%s]" -msgstr "" - -#: util/grub-setup.c:81 -#, c-format -msgid "use FILE as the core image [default=%s]" -msgstr "" - -#: util/grub-setup.c:210 -msgid "No device is specified.\n" -msgstr "" - -#: util/grub-setup.c:224 -msgid "" -"Set up images to boot from DEVICE.\n" -"\n" -"You should not normally run this program directly. Use grub-install instead." -msgstr "" - -#: util/grub-setup.c:228 -msgid "DEVICE must be an OS device (e.g. /dev/sda)." -msgstr "" - -#: util/grub-setup.c:297 -#, c-format -msgid "Invalid device `%s'.\n" -msgstr "" - -#: util/grub-syslinux2cfg.c:64 -msgid "root directory as it will be seen on runtime [default=/]." -msgstr "" - -#: util/grub-syslinux2cfg.c:69 -msgid "" -"current directory of syslinux as it will be seen on runtime [default is " -"parent directory of input file]." -msgstr "" - -#: util/grub-syslinux2cfg.c:74 -msgid "write output to FILE [default=stdout]." -msgstr "" - -#: util/grub-syslinux2cfg.c:148 -msgid "Transform syslinux config into GRUB one." -msgstr "" - -#: util/mkimage.c:688 util/mkimage.c:717 util/mkimage.c:734 -msgid "cannot compress the kernel image" -msgstr "" - -#: util/mkimage.c:766 util/mkimage.c:1077 -#, c-format -msgid "unknown compression %d" -msgstr "" - -#: util/mkimage.c:1088 -msgid "Decompressor is too big" -msgstr "" - -#: util/mkimage.c:1133 -#, c-format -msgid "core image is too big (0x%x > 0x%x)" -msgstr "" - -#: util/mkimage.c:1140 -#, c-format -msgid "kernel image is too big (0x%x > 0x%x)" -msgstr "" - -#: util/mkimage.c:1220 util/mkimage.c:1501 -#, c-format -msgid "diskboot.img size must be %u bytes" -msgstr "" - -#: util/mkimage.c:1571 -msgid "" -"fwstart.img doesn't match the known good version. proceed at your own risk" -msgstr "" - -#: util/mkimage.c:1575 util/mkimage.c:1601 -msgid "firmware image is too big" -msgstr "" - -#: util/resolve.c:93 -#, c-format -msgid "invalid line format: %s" -msgstr "" - -#: util/setup.c:167 -msgid "the first sector of the core file is not sector-aligned" -msgstr "" - -#: util/setup.c:177 -msgid "non-sector-aligned data is found in the core file" -msgstr "" - -#: util/setup.c:199 -msgid "the sectors of the core file are too fragmented" -msgstr "" - -#: util/setup.c:280 -#, c-format -msgid "the size of `%s' is not %u" -msgstr "" - -#: util/setup.c:290 -#, c-format -msgid "the size of `%s' is too small" -msgstr "" - -#: util/setup.c:428 -msgid "" -"Attempting to install GRUB to a disk with multiple partition labels or both " -"partition label and filesystem. This is not supported yet." -msgstr "" - -#: util/setup.c:441 -#, c-format -msgid "unable to identify a filesystem in %s; safety check can't be performed" -msgstr "" - -#. TRANSLATORS: Filesystem may reserve the space just GRUB isn't sure about it. -#: util/setup.c:445 -#, c-format -msgid "" -"%s appears to contain a %s filesystem which isn't known to reserve space for " -"DOS-style boot. Installing GRUB there could result in FILESYSTEM " -"DESTRUCTION if valuable data is overwritten by grub-setup (--skip-fs-probe " -"disables this check, use at your own risk)" -msgstr "" - -#. TRANSLATORS: Partition map may reserve the space just GRUB isn't sure about it. -#: util/setup.c:458 -#, c-format -msgid "" -"%s appears to contain a %s partition map which isn't known to reserve space " -"for DOS-style boot. Installing GRUB there could result in FILESYSTEM " -"DESTRUCTION if valuable data is overwritten by grub-setup (--skip-fs-probe " -"disables this check, use at your own risk)" -msgstr "" - -#: util/setup.c:465 -#, c-format -msgid "" -"%s appears to contain a %s partition map and LDM which isn't known to be a " -"safe combination. Installing GRUB there could result in FILESYSTEM " -"DESTRUCTION if valuable data is overwritten by grub-setup (--skip-fs-probe " -"disables this check, use at your own risk)" -msgstr "" - -#: util/setup.c:478 -msgid "" -"Attempting to install GRUB to a partitionless disk or to a partition. This " -"is a BAD idea." -msgstr "" - -#: util/setup.c:483 -msgid "" -"Attempting to install GRUB to a disk with multiple partition labels. This " -"is not supported yet." -msgstr "" - -#: util/setup.c:489 -#, c-format -msgid "Partition style `%s' doesn't support embedding" -msgstr "" - -#: util/setup.c:496 -#, c-format -msgid "File system `%s' doesn't support embedding" -msgstr "" - -#: util/setup.c:537 -msgid "Your embedding area is unusually small. core.img won't fit in it." -msgstr "" - -#: util/setup.c:559 util/setup.c:725 util/setup.c:844 -msgid "no terminator in the core image" -msgstr "" - -#: util/setup.c:622 -msgid "core.img version mismatch" -msgstr "" - -#: util/setup.c:675 -msgid "" -"embedding is not possible, but this is required for RAID and LVM install" -msgstr "" - -#: util/setup.c:682 -#, c-format -msgid "can't determine filesystem on %s" -msgstr "" - -#: util/setup.c:685 -#, c-format -msgid "filesystem `%s' doesn't support blocklists" -msgstr "" - -#. TRANSLATORS: cross-disk refers to /boot being on one disk -#. but MBR on another. -#: util/setup.c:694 -msgid "embedding is not possible, but this is required for cross-disk install" -msgstr "" - -#: util/setup.c:700 -msgid "" -"Embedding is not possible. GRUB can only be installed in this setup by " -"using blocklists. However, blocklists are UNRELIABLE and their use is " -"discouraged." -msgstr "" - -#. TRANSLATORS: Here GRUB refuses to continue with blocklist install. -#: util/setup.c:705 -msgid "will not proceed with blocklists" -msgstr "" - -#: util/setup.c:817 util/setup.c:837 -msgid "blocklists are invalid" -msgstr "" - -#: util/setup.c:847 -msgid "blocklists are incomplete" -msgstr "" diff --git a/thirdparty/grub-2.04/po/hr.gmo b/thirdparty/grub-2.04/po/hr.gmo deleted file mode 100644 index 2a5f8727d4179de3e1ff1eb4849e23de8c7de7a8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 122158 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 z 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⁡w3_%z{n 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, 2015. -# -msgid "" -msgstr "" -"Project-Id-Version: grub-2.04-pre1\n" -"Report-Msgid-Bugs-To: bug-grub@gnu.org\n" -"POT-Creation-Date: 2019-07-04 16:09+0200\n" -"PO-Revision-Date: 2019-04-10 23:24+0200\n" -"Last-Translator: gogo \n" -"Language-Team: Croatian \n" -"Language: hr\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Bugs: Report translation errors to the Language-Team address.\n" -"X-Generator: Poedit 2.0.6\n" -"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n" -"%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n" - -#: grub-core/bus/usb/serial/ftdi.c:145 grub-core/bus/usb/serial/pl2303.c:158 -#: grub-core/term/ieee1275/escc.c:169 grub-core/term/ns8250.c:202 -msgid "unsupported serial port speed" -msgstr "nepodržana brzina serijskog ulaza" - -#: grub-core/bus/usb/serial/ftdi.c:151 grub-core/bus/usb/serial/pl2303.c:164 -#: grub-core/term/efi/serial.c:116 grub-core/term/ieee1275/escc.c:175 -#: grub-core/term/ns8250.c:208 grub-core/term/serial.c:227 -#: grub-core/term/serial.c:243 -msgid "unsupported serial port parity" -msgstr "nepodržan paritet serijskog ulaza" - -#: grub-core/bus/usb/serial/ftdi.c:157 grub-core/bus/usb/serial/pl2303.c:170 -#: grub-core/term/efi/serial.c:122 grub-core/term/ieee1275/escc.c:181 -#: grub-core/term/ns8250.c:213 grub-core/term/serial.c:267 -msgid "unsupported serial port stop bits number" -msgstr "nepodržan broj bita zaustavljanja serijskog ulaza" - -#: grub-core/bus/usb/serial/ftdi.c:161 grub-core/bus/usb/serial/pl2303.c:174 -#: grub-core/term/efi/serial.c:126 grub-core/term/ieee1275/escc.c:185 -#: grub-core/term/ns8250.c:217 -msgid "unsupported serial port word length" -msgstr "nepodržana duljina rijeÄi serijskog ulaza" - -#: grub-core/commands/acpi.c:42 -msgid "Don't load host tables specified by comma-separated list." -msgstr "Ne uÄitavaj tablice raÄunala odreÄ‘ene u zarezom odvojenom popisu." - -#: grub-core/commands/acpi.c:45 -msgid "Load only tables specified by comma-separated list." -msgstr "UÄitaj samo tablice odreÄ‘ene u zarezom odvojenom popisu." - -#: grub-core/commands/acpi.c:46 -msgid "Export version 1 tables to the OS." -msgstr "Izvezi inaÄicu 1 tablica u OS." - -#: grub-core/commands/acpi.c:47 -msgid "Export version 2 and version 3 tables to the OS." -msgstr "Izvezi inaÄicu 2 i inaÄicu 3 tablica u OS." - -#: grub-core/commands/acpi.c:48 -msgid "Set OEMID of RSDP, XSDT and RSDT." -msgstr "Postavi OEMID od RSDP, XSDT i RSDT." - -#: grub-core/commands/acpi.c:50 -msgid "Set OEMTABLE ID of RSDP, XSDT and RSDT." -msgstr "Postavi OEMTABLE ID od RSDP, XSDT i RSDT." - -#: grub-core/commands/acpi.c:52 -msgid "Set OEMTABLE revision of RSDP, XSDT and RSDT." -msgstr "Postavi OEMTABLE izdanje od RSDP, XSDT i RSDT." - -#: grub-core/commands/acpi.c:54 -msgid "Set creator field of RSDP, XSDT and RSDT." -msgstr "Postavi polje stvaratelja od RSDP, XSDT i RSDT." - -#: grub-core/commands/acpi.c:56 -msgid "Set creator revision of RSDP, XSDT and RSDT." -msgstr "Postavi izdanje stvaratelja od RSDP, XSDT i RSDT." - -#. TRANSLATORS: "hangs" here is a noun, not a verb. -#: grub-core/commands/acpi.c:58 -msgid "" -"Don't update EBDA. May fix failures or hangs on some BIOSes but makes it " -"ineffective with OS not receiving RSDP from GRUB." -msgstr "" -"Ne nadopunjuj EBDA. Može popraviti kvarove ili prestati raditi na nekim BIOS-" -"ima ali Äini ih neuspjeÅ¡nima kada OS ne prima RSDP GRUB-a." - -#: grub-core/commands/acpi.c:650 grub-core/commands/acpi.c:667 -#: grub-core/commands/i386/pc/play.c:105 grub-core/commands/keylayouts.c:230 -#: grub-core/commands/keylayouts.c:245 grub-core/commands/keylayouts.c:263 -#: grub-core/commands/verifiers.c:156 grub-core/efiemu/loadcore.c:350 -#: grub-core/kern/elf.c:117 grub-core/kern/elfXX.c:29 -#: grub-core/kern/elfXX.c:156 grub-core/loader/arm/linux.c:319 -#: grub-core/loader/arm64/linux.c:330 grub-core/loader/arm64/xen_boot.c:356 -#: grub-core/loader/efi/chainloader.c:276 -#: grub-core/loader/efi/chainloader.c:297 -#: grub-core/loader/efi/chainloader.c:329 grub-core/loader/efi/fdt.c:138 -#: grub-core/loader/i386/bsd.c:1276 grub-core/loader/i386/bsd.c:2116 -#: grub-core/loader/i386/bsdXX.c:20 grub-core/loader/i386/bsdXX.c:36 -#: grub-core/loader/i386/bsdXX.c:63 grub-core/loader/i386/bsdXX.c:357 -#: grub-core/loader/i386/bsdXX.c:376 grub-core/loader/i386/bsdXX.c:519 -#: grub-core/loader/i386/bsdXX.c:535 grub-core/loader/i386/bsdXX.c:615 -#: grub-core/loader/i386/bsdXX.c:638 -#: grub-core/loader/i386/coreboot/chainloader.c:112 -#: grub-core/loader/i386/coreboot/chainloader.c:148 -#: grub-core/loader/i386/coreboot/chainloader.c:170 -#: grub-core/loader/i386/linux.c:667 grub-core/loader/i386/linux.c:788 -#: grub-core/loader/i386/linux.c:1005 grub-core/loader/i386/multiboot_mbi.c:171 -#: grub-core/loader/i386/pc/chainloader.c:202 -#: grub-core/loader/i386/pc/linux.c:149 grub-core/loader/i386/pc/linux.c:320 -#: grub-core/loader/i386/pc/linux.c:362 grub-core/loader/i386/pc/plan9.c:457 -#: grub-core/loader/i386/pc/plan9.c:550 grub-core/loader/i386/pc/plan9.c:566 -#: grub-core/loader/i386/xen.c:934 grub-core/loader/i386/xen_file.c:72 -#: grub-core/loader/i386/xen_fileXX.c:43 grub-core/loader/i386/xen_fileXX.c:186 -#: grub-core/loader/i386/xen_fileXX.c:339 grub-core/loader/ia64/efi/linux.c:423 -#: grub-core/loader/ia64/efi/linux.c:471 grub-core/loader/linux.c:286 -#: grub-core/loader/macho.c:84 grub-core/loader/macho.c:109 -#: grub-core/loader/machoXX.c:33 grub-core/loader/machoXX.c:46 -#: grub-core/loader/machoXX.c:76 grub-core/loader/machoXX.c:116 -#: grub-core/loader/machoXX.c:131 grub-core/loader/machoXX.c:147 -#: grub-core/loader/machoXX.c:196 grub-core/loader/machoXX.c:317 -#: grub-core/loader/multiboot.c:434 grub-core/loader/multiboot_elfxx.c:171 -#: grub-core/loader/multiboot_elfxx.c:234 -#: grub-core/loader/multiboot_elfxx.c:278 grub-core/loader/multiboot_mbi2.c:129 -#: grub-core/loader/xnu.c:737 grub-core/loader/xnu.c:795 -#: grub-core/loader/xnu.c:816 grub-core/loader/xnu.c:871 -#: grub-core/loader/xnu.c:914 grub-core/loader/xnu.c:952 -#: grub-core/loader/xnu_resume.c:68 grub-core/loader/xnu_resume.c:153 -#: grub-core/loader/xnu_resume.c:165 util/grub-mkimagexx.c:2288 -#, c-format -msgid "premature end of file %s" -msgstr "prijevremeni kraj datoteke %s" - -#: grub-core/commands/acpi.c:779 -msgid "" -"[-1|-2] [--exclude=TABLE1,TABLE2|--load-only=TABLE1,TABLE2] FILE1 [FILE2] " -"[...]" -msgstr "" -"[-1|-2] [--exclude=TABLICA1,TABLICA1|--load-only=TABLICA1,TABLICA1] " -"DATOTEKA1 [DATOTEKA2] [...]" - -#: grub-core/commands/acpi.c:782 -msgid "Load host ACPI tables and tables specified by arguments." -msgstr "UÄitaj ACPI tablice raÄunala i tablice odreÄ‘ene argumentima." - -#: grub-core/commands/acpihalt.c:368 grub-core/kern/err.c:110 -#, c-format -msgid "error: %s.\n" -msgstr "greÅ¡ka: %s.\n" - -#: grub-core/commands/acpihalt.c:368 grub-core/kern/emu/misc.c:95 -#: grub-core/kern/emu/misc.c:105 grub-core/kern/emu/misc.c:134 -#: grub-core/kern/emu/mm.c:34 grub-core/kern/emu/mm.c:62 -#: grub-core/kern/mm.c:374 grub-core/lib/relocator.c:1282 -#: grub-core/lib/relocator.c:1439 grub-core/lib/relocator.c:1538 -#: grub-core/loader/arm/linux.c:259 grub-core/loader/arm64/linux.c:265 -#: grub-core/loader/arm64/linux.c:321 grub-core/loader/arm64/linux.c:340 -#: grub-core/loader/arm64/xen_boot.c:344 grub-core/loader/arm64/xen_boot.c:367 -#: grub-core/loader/efi/chainloader.c:289 grub-core/osdep/unix/dl.c:48 -#: grub-core/osdep/windows/dl.c:46 grub-core/script/lexer.c:156 -#: grub-core/script/lexer.c:182 -msgid "out of memory" -msgstr "nedovoljno memorije" - -#: grub-core/commands/acpihalt.c:374 grub-core/disk/cryptodisk.c:587 -#: grub-core/disk/cryptodisk.c:632 grub-core/kern/emu/hostdisk.c:307 -#: grub-core/kern/emu/hostfs.c:149 grub-core/kern/emu/misc.c:200 -#: grub-core/osdep/linux/ofpath.c:195 grub-core/osdep/linux/ofpath.c:521 -#: grub-core/osdep/linux/ofpath.c:534 util/glue-efi.c:80 util/glue-efi.c:94 -#: util/grub-editenv.c:155 util/grub-fstest.c:577 -#: util/grub-install-common.c:943 util/grub-mkrescue.c:634 -#: util/grub-mkrescue.c:888 util/grub-mount.c:506 util/grub-render-label.c:176 -#: util/misc.c:95 util/setup.c:814 util/setup.c:833 -#, c-format -msgid "cannot read `%s': %s" -msgstr "nemoguće Äitati `%s': %s" - -#. TRANSLATORS: It's computer shutdown using ACPI, not disabling ACPI. -#: grub-core/commands/acpihalt.c:452 -msgid "ACPI shutdown failed" -msgstr "ACPI iskljuÄivanje neuspjelo" - -#: grub-core/commands/arc/lsdev.c:51 -msgid "List devices." -msgstr "Popis ureÄ‘aja." - -#: grub-core/commands/blocklist.c:122 grub-core/commands/cat.c:57 -#: grub-core/commands/configfile.c:35 grub-core/commands/efi/loadbios.c:168 -#: grub-core/commands/file.c:159 grub-core/commands/hexdump.c:47 -#: grub-core/commands/legacycfg.c:209 grub-core/commands/legacycfg.c:315 -#: grub-core/commands/minicmd.c:44 grub-core/commands/syslinuxcfg.c:146 -#: grub-core/commands/testload.c:58 grub-core/commands/testspeed.c:52 -#: grub-core/disk/loopback.c:93 grub-core/efiemu/main.c:293 -#: grub-core/font/font_cmd.c:32 grub-core/kern/emu/hostdisk.c:519 -#: grub-core/loader/arm/linux.c:364 grub-core/loader/arm/linux.c:409 -#: grub-core/loader/arm/linux.c:472 grub-core/loader/arm64/linux.c:243 -#: grub-core/loader/arm64/linux.c:297 grub-core/loader/arm64/xen_boot.c:398 -#: grub-core/loader/arm64/xen_boot.c:411 grub-core/loader/arm64/xen_boot.c:462 -#: grub-core/loader/efi/chainloader.c:216 grub-core/loader/i386/bsd.c:1462 -#: grub-core/loader/i386/bsd.c:1807 grub-core/loader/i386/bsd.c:2085 -#: grub-core/loader/i386/coreboot/chainloader.c:438 -#: grub-core/loader/i386/linux.c:656 grub-core/loader/i386/linux.c:1041 -#: grub-core/loader/i386/pc/chainloader.c:290 -#: grub-core/loader/i386/pc/freedos.c:105 grub-core/loader/i386/pc/linux.c:138 -#: grub-core/loader/i386/pc/linux.c:400 grub-core/loader/i386/pc/ntldr.c:85 -#: grub-core/loader/i386/pc/plan9.c:409 -#: grub-core/loader/i386/pc/pxechainloader.c:94 -#: grub-core/loader/i386/pc/truecrypt.c:96 grub-core/loader/i386/xen.c:641 -#: grub-core/loader/i386/xen.c:768 grub-core/loader/i386/xen.c:844 -#: grub-core/loader/i386/xen.c:854 grub-core/loader/i386/xnu.c:488 -#: grub-core/loader/ia64/efi/linux.c:459 grub-core/loader/ia64/efi/linux.c:539 -#: grub-core/loader/mips/linux.c:238 grub-core/loader/mips/linux.c:429 -#: grub-core/loader/multiboot.c:322 grub-core/loader/multiboot.c:374 -#: grub-core/loader/multiboot.c:384 -#: grub-core/loader/powerpc/ieee1275/linux.c:269 -#: grub-core/loader/powerpc/ieee1275/linux.c:341 -#: grub-core/loader/sparc64/ieee1275/linux.c:305 -#: grub-core/loader/sparc64/ieee1275/linux.c:381 grub-core/loader/xnu.c:351 -#: grub-core/loader/xnu.c:460 grub-core/loader/xnu.c:778 -#: grub-core/loader/xnu.c:892 grub-core/loader/xnu.c:1277 -#: grub-core/loader/xnu.c:1427 grub-core/loader/xnu.c:1453 -#: grub-core/video/readers/jpeg.c:812 grub-core/video/readers/png.c:1123 -msgid "filename expected" -msgstr "oÄekivan naziv datoteke" - -#. TRANSLATORS: "embed" is a verb (command description). " -#: grub-core/commands/blocklist.c:154 grub-core/commands/cat.c:163 -#: grub-core/commands/configfile.c:65 grub-core/commands/configfile.c:68 -#: grub-core/commands/configfile.c:74 grub-core/commands/configfile.c:80 -#: grub-core/commands/configfile.c:86 grub-core/commands/hashsum.c:34 -#: grub-core/commands/legacycfg.c:834 grub-core/commands/legacycfg.c:841 -#: grub-core/commands/legacycfg.c:846 grub-core/commands/legacycfg.c:851 -#: grub-core/commands/macbless.c:222 grub-core/commands/minicmd.c:198 -#: grub-core/commands/syslinuxcfg.c:186 grub-core/commands/syslinuxcfg.c:194 -#: grub-core/commands/syslinuxcfg.c:200 grub-core/commands/syslinuxcfg.c:206 -#: grub-core/commands/testload.c:163 grub-core/efiemu/main.c:312 -#: grub-core/kern/emu/main.c:100 grub-core/kern/emu/main.c:103 -#: grub-core/loader/i386/bsd.c:2137 grub-core/loader/i386/bsd.c:2140 -#: grub-core/loader/i386/bsd.c:2143 -#: grub-core/loader/i386/coreboot/chainloader.c:505 -#: grub-core/loader/ia64/efi/linux.c:594 include/grub/util/install.h:32 -#: include/grub/util/install.h:64 util/grub-glue-efi.c:52 -#: util/grub-glue-efi.c:54 util/grub-glue-efi.c:56 util/grub-install.c:254 -#: util/grub-install.c:301 util/grub-mkfont.c:936 util/grub-mkimage.c:68 -#: util/grub-mkimage.c:74 util/grub-mkimage.c:76 util/grub-mkimage.c:78 -#: util/grub-mkimage.c:81 util/grub-mklayout.c:52 util/grub-mklayout.c:54 -#: util/grub-mkrescue.c:97 util/grub-mkrescue.c:101 util/grub-mkrescue.c:104 -#: util/grub-mkrescue.c:105 util/grub-mkrescue.c:106 -#: util/grub-mkstandalone.c:47 util/grub-mkstandalone.c:49 -#: util/grub-probe.c:732 util/grub-render-label.c:59 -#: util/grub-render-label.c:70 util/grub-render-label.c:72 util/grub-setup.c:78 -#: util/grub-setup.c:80 util/grub-setup.c:84 util/grub-syslinux2cfg.c:74 -#: util/grub-syslinux2cfg.c:147 -msgid "FILE" -msgstr "DATOTEKA" - -#: grub-core/commands/blocklist.c:154 -msgid "Print a block list." -msgstr "IspiÅ¡i popis bloka." - -#: grub-core/commands/boot.c:147 grub-core/commands/legacycfg.c:533 -#: grub-core/commands/legacycfg.c:574 grub-core/loader/arm64/linux.c:250 -#: grub-core/loader/i386/bsd.c:1799 grub-core/loader/i386/bsd.c:1900 -#: grub-core/loader/i386/bsd.c:2007 grub-core/loader/i386/bsd.c:2040 -#: grub-core/loader/i386/bsd.c:2089 grub-core/loader/i386/linux.c:1047 -#: grub-core/loader/i386/pc/linux.c:406 grub-core/loader/i386/xen.c:775 -#: grub-core/loader/i386/xen.c:859 grub-core/loader/ia64/efi/linux.c:545 -#: grub-core/loader/mips/linux.c:432 grub-core/loader/multiboot.c:388 -#: grub-core/loader/powerpc/ieee1275/linux.c:347 -#: grub-core/loader/sparc64/ieee1275/linux.c:387 grub-core/loader/xnu.c:572 -#: grub-core/loader/xnu.c:665 grub-core/loader/xnu.c:781 -#: grub-core/loader/xnu.c:895 grub-core/loader/xnu.c:1091 -#: grub-core/loader/xnu.c:1258 grub-core/loader/xnu.c:1289 -#: grub-core/loader/xnu.c:1430 -msgid "you need to load the kernel first" -msgstr "prvo morate uÄitati kernel" - -#: grub-core/commands/boot.c:189 -msgid "Boot an operating system." -msgstr "Pokreni operativni sustav." - -#: grub-core/commands/boottime.c:36 -#: grub-core/commands/i386/coreboot/cb_timestamps.c:108 -msgid "No boot time statistics is available\n" -msgstr "Nema dostupne statistike vremena pokretanja\n" - -#: grub-core/commands/boottime.c:59 -msgid "Show boot time statistics." -msgstr "Prikaži statistiku vremena pokretanja." - -#: grub-core/commands/cacheinfo.c:40 -#, c-format -msgid "Disk cache statistics: hits = %lu (%lu.%02lu%%), misses = %lu\n" -msgstr "" -"Statistika predmemorije diska: pogodaka = %lu (%lu.%02lu%%), promaÅ¡aja = " -"%lu\n" - -#: grub-core/commands/cacheinfo.c:45 -msgid "No disk cache statistics available\n" -msgstr "Nema dostupne statistike predmemorije diska\n" - -#: grub-core/commands/cacheinfo.c:56 -msgid "Get disk cache info." -msgstr "Dobij statistiku predmemorije diska." - -#: grub-core/commands/cat.c:33 -msgid "Accept DOS-style CR/NL line endings." -msgstr "Prihvati DOS-stil CR/NL retke zavrÅ¡etka." - -#: grub-core/commands/cat.c:163 grub-core/commands/minicmd.c:198 -msgid "Show the contents of a file." -msgstr "Prikaži sadržaj datoteke." - -#: grub-core/commands/cmp.c:43 grub-core/commands/i386/pc/drivemap.c:239 -#: grub-core/commands/i386/wrmsr.c:60 grub-core/commands/iorw.c:85 -#: grub-core/commands/memrw.c:84 grub-core/commands/password.c:75 -#: grub-core/commands/password_pbkdf2.c:94 grub-core/commands/pgp.c:826 -#: grub-core/commands/regexp.c:113 grub-core/mmap/mmap.c:517 -#: grub-core/net/dns.c:639 -msgid "two arguments expected" -msgstr "dva argumenta oÄekivana" - -#: grub-core/commands/cmp.c:45 -#, c-format -msgid "Compare file `%s' with `%s':\n" -msgstr "Usporedi datoteku `%s' s `%s':\n" - -#: grub-core/commands/cmp.c:54 -#, c-format -msgid "Files differ in size: %llu [%s], %llu [%s]\n" -msgstr "Datoteke se razlikuju u veliÄini: %llu [%s], %llu [%s]\n" - -#: grub-core/commands/cmp.c:81 -#, c-format -msgid "Files differ at the offset %llu: 0x%x [%s], 0x%x [%s]\n" -msgstr "Datoteke se razlikuju u pomaku %llu: 0x%x [%s], 0x%x [%s]\n" - -#. TRANSLATORS: it's always exactly 2 files. -#: grub-core/commands/cmp.c:93 -msgid "The files are identical.\n" -msgstr "Datoteke su identiÄne.\n" - -#: grub-core/commands/cmp.c:113 -msgid "FILE1 FILE2" -msgstr "DATOTEKA1 DATOTEKA2" - -#: grub-core/commands/cmp.c:113 -msgid "Compare two files." -msgstr "Usporedi dvije datoteke." - -#: grub-core/commands/configfile.c:65 -msgid "Load another config file." -msgstr "UÄitaj drugu datoteku podeÅ¡avanja." - -#: grub-core/commands/configfile.c:69 grub-core/commands/configfile.c:87 -msgid "Load another config file without changing context." -msgstr "UÄitaj drugu datoteku podeÅ¡avanja bez promjene sadržaja." - -#: grub-core/commands/configfile.c:75 -msgid "" -"Load another config file without changing context but take only menu entries." -msgstr "" -"UÄitaj drugu datoteku podeÅ¡avanja bez promjene sadržaja osim unosa izbornika." - -#: grub-core/commands/configfile.c:81 -msgid "Load another config file but take only menu entries." -msgstr "UÄitaj drugu datoteku podeÅ¡avanja promijeni samo unosa izbornika." - -#: grub-core/commands/date.c:141 -msgid "[[year-]month-day] [hour:minute[:second]]" -msgstr "[[godina-]mjesec-dan] [sat:minuta[:sekunda]]" - -#: grub-core/commands/date.c:142 -msgid "Display/set current datetime." -msgstr "Prikaži/Postavi trenutni datum i vrijeme." - -#: grub-core/commands/echo.c:30 -msgid "Do not output the trailing newline." -msgstr "Ne izlazi prateći novi redak." - -#: grub-core/commands/echo.c:31 -msgid "Enable interpretation of backslash escapes." -msgstr "Omogući tumaÄenje obrnute kose crte." - -#: grub-core/commands/echo.c:134 -msgid "[-e|-n] STRING" -msgstr "[-e|-n] NIZ" - -#: grub-core/commands/echo.c:134 -msgid "Display a line of text." -msgstr "Prikaži redak teksta." - -#: grub-core/commands/efi/efifwsetup.c:82 -msgid "Reboot into firmware setup menu." -msgstr "Ponovno pokreni u izbornik podeÅ¡avanja frimvera." - -#: grub-core/commands/efi/fixvideo.c:107 -msgid "Fix video problem." -msgstr "Popravi video problem." - -#: grub-core/commands/efi/loadbios.c:52 -msgid "ROM image is present." -msgstr "ROM slika je prisutna." - -#: grub-core/commands/efi/loadbios.c:70 -msgid "Can't enable ROM area." -msgstr "Nemoguće omogućavanje ROM podruÄja." - -#: grub-core/commands/efi/loadbios.c:209 -msgid "" -"Create BIOS-like structures for backward compatibility with existing OS." -msgstr "" -"Stvori strukturu sliÄnu BIOS-u za zastarjelu kompatibilnost s postojećim OS-" -"om." - -#: grub-core/commands/efi/loadbios.c:214 -msgid "BIOS_DUMP [INT10_DUMP]" -msgstr "BIOS_ISPIS [INT10_ISPIS]" - -#: grub-core/commands/efi/loadbios.c:215 -msgid "Load BIOS dump." -msgstr "UÄitaj BIOS sadržaj ispisivanja." - -#: grub-core/commands/efi/shim_lock.c:76 -#, c-format -msgid "module cannot be loaded in UEFI secure boot mode: %s" -msgstr "module se ne može uÄitati u UEFI secure naÄinu pokretanja: %s" - -#: grub-core/commands/efi/shim_lock.c:98 -#, c-format -msgid "cannot boot due to dangerous module in memory: %s" -msgstr "ne može se uÄitati zbog opasnih modula u memoriji: %s" - -#: grub-core/commands/efi/shim_lock.c:116 -msgid "bad shim signature" -msgstr "nevaljani shim potpis" - -#: grub-core/commands/efi/tpm.c:149 grub-core/commands/efi/tpm.c:189 -#: grub-core/commands/efi/tpm.c:256 grub-core/commands/efi/tpm.c:306 -msgid "Command failed" -msgstr "Neuspjela naredba" - -#: grub-core/commands/efi/tpm.c:151 grub-core/commands/efi/tpm.c:191 -#: grub-core/commands/efi/tpm.c:258 grub-core/commands/efi/tpm.c:308 -msgid "Invalid parameter" -msgstr "Neispravan parametar" - -#: grub-core/commands/efi/tpm.c:154 grub-core/commands/efi/tpm.c:194 -#: grub-core/commands/efi/tpm.c:261 grub-core/commands/efi/tpm.c:311 -msgid "Output buffer too small" -msgstr "Izlazni meÄ‘uspremnik je premalen" - -#: grub-core/commands/efi/tpm.c:156 grub-core/commands/efi/tpm.c:196 -#: grub-core/commands/efi/tpm.c:263 grub-core/commands/efi/tpm.c:313 -msgid "TPM unavailable" -msgstr "TPM nedostupan" - -#: grub-core/commands/efi/tpm.c:158 grub-core/commands/efi/tpm.c:198 -#: grub-core/commands/efi/tpm.c:265 grub-core/commands/efi/tpm.c:315 -msgid "Unknown TPM error" -msgstr "Nepoznata TPM greÅ¡ka" - -#: grub-core/commands/efi/tpm.c:240 grub-core/commands/efi/tpm.c:288 -msgid "cannot allocate TPM event buffer" -msgstr "nemoguće premjeÅ¡tanje TPM meÄ‘uspremnika dogaÄ‘aja" - -#: grub-core/commands/eval.c:63 -msgid "STRING ..." -msgstr "NIZ ..." - -#: grub-core/commands/eval.c:64 -msgid "Evaluate arguments as GRUB commands" -msgstr "Vrednuj argumente kao GRUB naredbe" - -#: grub-core/commands/file.c:41 -msgid "Check if FILE can be booted as i386 PAE Xen unprivileged guest kernel" -msgstr "" -"Provjeri može li se DATOTEKA pokrenuti kao i386 PAE Xen neovlaÅ¡teni gost " -"kernel" - -#: grub-core/commands/file.c:44 -msgid "Check if FILE can be booted as x86_64 Xen unprivileged guest kernel" -msgstr "" -"Provjeri može li se DATOTEKA pokrenuti kao x86_64 Xen neovlaÅ¡teni gost " -"kernel" - -#: grub-core/commands/file.c:46 -msgid "Check if FILE can be used as Xen x86 privileged guest kernel" -msgstr "" -"Provjeri može li se DATOTEKA koristiti kao Xen x86 ovlaÅ¡teni gost kernel" - -#: grub-core/commands/file.c:48 -msgid "Check if FILE can be used as x86 multiboot kernel" -msgstr "" -"Provjeri može li se DATOTEKA koristiti kao x86 kernel viÅ¡estrukog pokretanja" - -#: grub-core/commands/file.c:50 -msgid "Check if FILE can be used as x86 multiboot2 kernel" -msgstr "" -"Provjeri može li se DATOTEKA koristiti kao x86 kernel viÅ¡estrukog pokretanja " -"2" - -#: grub-core/commands/file.c:52 -msgid "Check if FILE is ARM Linux" -msgstr "Provjeri je li DATOTEKA ARM Linux" - -#: grub-core/commands/file.c:54 -msgid "Check if FILE is ARM64 Linux" -msgstr "Provjeri je li DATOTEKA ARM64 Linux" - -#: grub-core/commands/file.c:56 -msgid "Check if FILE is IA64 Linux" -msgstr "Provjeri je li DATOTEKA IA64 Linux" - -#: grub-core/commands/file.c:58 -msgid "Check if FILE is MIPS Linux" -msgstr "Provjeri je li DATOTEKA MIPS Linux" - -#: grub-core/commands/file.c:60 -msgid "Check if FILE is MIPSEL Linux" -msgstr "Provjeri je li DATOTEKA MIPSEL Linux" - -#: grub-core/commands/file.c:62 -msgid "Check if FILE is SPARC64 Linux" -msgstr "Provjeri je li DATOTEKA SPARC64 Linux" - -#: grub-core/commands/file.c:64 -msgid "Check if FILE is POWERPC Linux" -msgstr "Provjeri je li DATOTEKA POWERPC Linux" - -#: grub-core/commands/file.c:66 -msgid "Check if FILE is x86 Linux" -msgstr "Provjeri je li DATOTEKA x86 Linux" - -#: grub-core/commands/file.c:68 -msgid "Check if FILE is x86 Linux supporting 32-bit protocol" -msgstr "Provjeri je li DATOTEKA x86 Linux koji podržava 32-bitni protokol" - -#: grub-core/commands/file.c:70 -msgid "Check if FILE is x86 kFreeBSD" -msgstr "Provjeri je li DATOTEKA x86 kFreeBSD" - -#: grub-core/commands/file.c:72 -msgid "Check if FILE is i386 kFreeBSD" -msgstr "Provjeri je li DATOTEKA i386 kFreeBSD" - -#: grub-core/commands/file.c:74 -msgid "Check if FILE is x86_64 kFreeBSD" -msgstr "Provjeri je li DATOTEKA x86_64 kFreeBSD" - -#: grub-core/commands/file.c:77 -msgid "Check if FILE is x86 kNetBSD" -msgstr "Provjeri je li DATOTEKA x86 kNetBSD" - -#: grub-core/commands/file.c:79 -msgid "Check if FILE is i386 kNetBSD" -msgstr "Provjeri je li DATOTEKA i386 kNetBSD" - -#: grub-core/commands/file.c:81 -msgid "Check if FILE is x86_64 kNetBSD" -msgstr "Provjeri je li DATOTEKA x86_64 kNetBSD" - -#: grub-core/commands/file.c:84 -msgid "Check if FILE is i386 EFI file" -msgstr "Provjeri je li DATOTEKA i386 EFI datoteka" - -#: grub-core/commands/file.c:86 -msgid "Check if FILE is x86_64 EFI file" -msgstr "Provjeri je li DATOTEKA x86_64 EFI datoteka" - -#: grub-core/commands/file.c:88 -msgid "Check if FILE is IA64 EFI file" -msgstr "Provjeri je li DATOTEKA IA64 EFI datoteka" - -#: grub-core/commands/file.c:90 -msgid "Check if FILE is ARM64 EFI file" -msgstr "Provjeri je li DATOTEKA ARM64 EFI datoteka" - -#: grub-core/commands/file.c:92 -msgid "Check if FILE is ARM EFI file" -msgstr "Provjeri je li DATOTEKA ARM EFI datoteka" - -#: grub-core/commands/file.c:94 -msgid "Check if FILE is RISC-V 32bit EFI file" -msgstr "Provjeri je li DATOTEKA RISC-V 32bitna EFI datoteka" - -#: grub-core/commands/file.c:96 -msgid "Check if FILE is RISC-V 64bit EFI file" -msgstr "Provjeri je li DATOTEKA RISC-V 64bitna EFI datoteka" - -#: grub-core/commands/file.c:98 -msgid "Check if FILE is hiberfil.sys in hibernated state" -msgstr "Provjeri je li DATOTEKA hiberfil.sys u hiberniranom stanju" - -#: grub-core/commands/file.c:100 -msgid "Check if FILE is x86_64 XNU (Mac OS X kernel)" -msgstr "Provjeri je li DATOTEKA x86_64 XNU (Mac OS X kernel)" - -#: grub-core/commands/file.c:102 -msgid "Check if FILE is i386 XNU (Mac OS X kernel)" -msgstr "Provjeri je li DATOTEKA i386 XNU (Mac OS X kernel)" - -#: grub-core/commands/file.c:104 -msgid "Check if FILE is XNU (Mac OS X kernel) hibernated image" -msgstr "Provjeri je li DATOTEKA XNU (Mac OS X kernel) hibernirana slika" - -#: grub-core/commands/file.c:106 -msgid "Check if FILE is BIOS bootsector" -msgstr "Provjeri je li DATOTEKA BIOS sektor pokretanja" - -#. TRANSLATORS: it's a standalone boolean value, -#. opposite of "true". -#: grub-core/commands/file.c:675 grub-core/commands/i386/cmostest.c:63 -#: grub-core/commands/i386/cpuid.c:71 grub-core/commands/keystatus.c:83 -#: grub-core/commands/keystatus.c:87 grub-core/commands/keystatus.c:96 -#: grub-core/commands/test.c:436 grub-core/commands/true.c:39 -#: grub-core/script/execute.c:247 grub-core/script/execute.c:1039 -msgid "false" -msgstr "false" - -#: grub-core/commands/file.c:684 -msgid "OPTIONS FILE" -msgstr "MOGUĆNOSTI DATOTEKE" - -#: grub-core/commands/file.c:685 -msgid "Check if FILE is of specified type." -msgstr "Provjeri je li DATOTEKA odreÄ‘ene vrste." - -#. TRANSLATORS: It means that the specified partition e.g. -#. hd0,msdos1=/dev/sda1 doesn't exist. -#: grub-core/commands/gptsync.c:140 grub-core/kern/disk.c:258 -msgid "no such partition" -msgstr "nema takve particije" - -#: grub-core/commands/gptsync.c:240 -#, c-format -msgid "New MBR is written to `%s'\n" -msgstr "Novi MBR je zapisan u `%s'\n" - -#: grub-core/commands/gptsync.c:252 -msgid "DEVICE [PARTITION[+/-[TYPE]]] ..." -msgstr "UREÄAJ [PARTICIJA[+/-[VRSTA]]] ..." - -#. TRANSLATORS: MBR type is one-byte partition -#. type id. -#: grub-core/commands/gptsync.c:255 -msgid "" -"Fill hybrid MBR of GPT drive DEVICE. Specified partitions will be a part of " -"hybrid MBR. Up to 3 partitions are allowed. TYPE is an MBR type. + means " -"that partition is active. Only one partition can be active." -msgstr "" -"Popunjuje hibridni MBR od GPT pogona UREÄAJA. OdreÄ‘ena particija biti će dio " -"hibridne MBR. Do 3 particije su dopuÅ¡tene. VRSTA je MBR vrsta. + znaÄi da " -"je particija aktivna. Samo jedna particija može biti aktivna." - -#: grub-core/commands/halt.c:40 -msgid "" -"Halts the computer. This command does not work on all firmware " -"implementations." -msgstr "" -"Zaustavlja raÄunalo. Ova naredba ne radi na svim implementacijama firmvera." - -#: grub-core/commands/hashsum.c:32 -msgid "Specify hash to use." -msgstr "Odredite jedinstvenu vrijednost za koriÅ¡tenje." - -#: grub-core/commands/hashsum.c:32 -msgid "HASH" -msgstr "JEDINSTVENA-VRIJEDNOST" - -#: grub-core/commands/hashsum.c:33 -msgid "Check hashes of files with hash list FILE." -msgstr "" -"Provjeri jedinstvene vrijednosti datoteka pomoću popisa jedinstvenih " -"vrijednosti." - -#: grub-core/commands/hashsum.c:35 -msgid "Base directory for hash list." -msgstr "Temeljni direktorij za popis jedinstvene vrijednosti." - -#. TRANSLATORS: platform here isn't identifier. It can be translated. -#: grub-core/commands/hashsum.c:35 grub-core/commands/ls.c:150 -#: grub-core/commands/macbless.c:226 grub-core/commands/syslinuxcfg.c:51 -#: grub-core/commands/syslinuxcfg.c:54 grub-core/kern/emu/main.c:106 -#: include/grub/util/install.h:50 include/grub/util/install.h:53 -#: include/grub/util/install.h:56 include/grub/util/install.h:59 -#: util/grub-install.c:250 util/grub-install.c:252 util/grub-install.c:297 -#: util/grub-install.c:299 util/grub-mkimage.c:64 util/grub-mkimage.c:67 -#: util/grub-mknetdir.c:46 util/grub-mknetdir.c:48 util/grub-mkrescue.c:99 -#: util/grub-setup.c:82 util/grub-syslinux2cfg.c:63 util/grub-syslinux2cfg.c:65 -#: util/grub-syslinux2cfg.c:67 util/grub-syslinux2cfg.c:71 -msgid "DIR" -msgstr "DIR" - -#: grub-core/commands/hashsum.c:37 -msgid "Don't stop after first error." -msgstr "Ne zaustavljaj se nakon prve greÅ¡ke." - -#: grub-core/commands/hashsum.c:38 -msgid "Uncompress file before checksumming." -msgstr "Raspakiraj datoteku prije provjere jedinstene vrijednosti." - -#: grub-core/commands/hashsum.c:163 -#, c-format -msgid "%s: READ ERROR\n" -msgstr "%s: GREÅ KA ÄŒITANJA\n" - -#: grub-core/commands/hashsum.c:177 -#, c-format -msgid "%s: HASH MISMATCH\n" -msgstr "%s: NEPODUDARAJUĆA JEDINSTVENA VRIJEDNOST\n" - -#: grub-core/commands/hashsum.c:188 -#, c-format -msgid "%s: OK\n" -msgstr "%s: U REDU\n" - -#: grub-core/commands/hashsum.c:282 -msgid "-h HASH [-c FILE [-p PREFIX]] [FILE1 [FILE2 ...]]" -msgstr "" -"-h JEDINSTVENA VRIJEDNOST [-c DATOTEKA [-p PREFIKS]] [DATOTEKA1 " -"[DATOTEKA2 ...]]" - -#. TRANSLATORS: "hash checksum" is just to -#. be a bit more precise, you can treat it as -#. just "hash". -#: grub-core/commands/hashsum.c:287 grub-core/commands/hashsum.c:292 -#: grub-core/commands/hashsum.c:297 grub-core/commands/hashsum.c:302 -#: grub-core/commands/hashsum.c:307 grub-core/commands/hashsum.c:313 -msgid "Compute or check hash checksum." -msgstr "ProraÄunaj ili provjeri zbroj jedinstvene vrijednosti." - -#: grub-core/commands/hashsum.c:290 grub-core/commands/hashsum.c:295 -#: grub-core/commands/hashsum.c:300 grub-core/commands/hashsum.c:305 -#: grub-core/commands/hashsum.c:311 -msgid "[-c FILE [-p PREFIX]] [FILE1 [FILE2 ...]]" -msgstr "[-c DATOTEKA [-p PREFIKA]] [DATOTEKA1 [DATOTEKA2 ...]]" - -#: grub-core/commands/hdparm.c:33 -msgid "" -"Set Advanced Power Management\n" -"(1=low, ..., 254=high, 255=off)." -msgstr "" -"Postavi napredno upravljanje energijom\n" -"(1=nisko, ..., 254=visoko, 255=iskljuÄeno)." - -#: grub-core/commands/hdparm.c:36 -msgid "Display power mode." -msgstr "Prikaži naÄin rada energije." - -#: grub-core/commands/hdparm.c:37 -msgid "Freeze ATA security settings until reset." -msgstr "Zaustavlja ATA sigurnosne postavke do ponovno pokretanja." - -#: grub-core/commands/hdparm.c:39 -msgid "Display SMART health status." -msgstr "Prikaži SMART stanje zdravlja." - -#: grub-core/commands/hdparm.c:40 -msgid "" -"Set Automatic Acoustic Management\n" -"(0=off, 128=quiet, ..., 254=fast)." -msgstr "" -"Postavi automatsko zvuÄno upravljanje\n" -"(0=iskljuÄeno, 128=tiÅ¡e, ..., 254=brže)." - -#: grub-core/commands/hdparm.c:43 -msgid "" -"Set standby timeout\n" -"(0=off, 1=5s, 2=10s, ..., 240=20m, 241=30m, ...)." -msgstr "" -"Postavi istek vremena pripravnosti\n" -"(0=iskljuÄeno, 1=5s, 2=10s, ..., 240=20m, 241=30m, ...)." - -#: grub-core/commands/hdparm.c:46 -msgid "Set drive to standby mode." -msgstr "Postavi ureÄ‘aj u pripravan naÄin rada." - -#: grub-core/commands/hdparm.c:47 -msgid "Set drive to sleep mode." -msgstr "Postavi ureÄ‘aj u naÄin rada spavanja." - -#: grub-core/commands/hdparm.c:48 -msgid "Print drive identity and settings." -msgstr "Ispis identiteta i postavki ureÄ‘aja." - -#: grub-core/commands/hdparm.c:50 -msgid "Show raw contents of ATA IDENTIFY sector." -msgstr "Prikaži osnovni sadržaj sektora ATA IDENTIFIKACIJE." - -#: grub-core/commands/hdparm.c:52 -msgid "Disable/enable SMART (0/1)." -msgstr "Onemogući/Omogući SMART (0/1)." - -#: grub-core/commands/hdparm.c:53 -msgid "Do not print messages." -msgstr "Ne ispisuj poruke." - -#: grub-core/commands/hdparm.c:286 grub-core/commands/i386/rdmsr.c:68 -#: grub-core/commands/iorw.c:47 grub-core/commands/legacycfg.c:760 -#: grub-core/commands/legacycfg.c:812 grub-core/commands/macbless.c:190 -#: grub-core/commands/memrw.c:47 grub-core/commands/pgp.c:738 -#: grub-core/commands/pgp.c:792 grub-core/commands/search.c:304 -#: grub-core/commands/search_wrap.c:179 grub-core/commands/setpci.c:243 -#: grub-core/commands/sleep.c:71 grub-core/fs/zfs/zfsinfo.c:279 -#: grub-core/fs/zfs/zfsinfo.c:358 grub-core/gettext/gettext.c:492 -#: grub-core/kern/corecmd.c:65 grub-core/kern/corecmd.c:79 -#: grub-core/mmap/mmap.c:430 grub-core/net/dns.c:713 grub-core/net/dns.c:745 -#: grub-core/net/net.c:694 grub-core/net/net.c:1052 -#: grub-core/normal/context.c:194 grub-core/script/execute.c:131 -#: grub-core/term/gfxterm_background.c:136 -msgid "one argument expected" -msgstr "potreban je jedan argument" - -#: grub-core/commands/hdparm.c:440 -msgid "[OPTIONS] DISK" -msgstr "[MOGUĆNOSTI] DISK" - -#: grub-core/commands/hdparm.c:441 -msgid "Get/set ATA disk parameters." -msgstr "Nabavi/Postavi parametre ATA diska." - -#: grub-core/commands/help.c:132 grub-core/lib/arg.c:109 -#: grub-core/lib/gnulib/argp-help.c:1616 -msgid "Usage:" -msgstr "Upotreba:" - -#: grub-core/commands/help.c:146 -msgid "[PATTERN ...]" -msgstr "[OBRAZAC ...]" - -#: grub-core/commands/help.c:147 -msgid "Show a help message." -msgstr "Prikaži poruku pomoći." - -#: grub-core/commands/hexdump.c:31 -msgid "Skip offset bytes from the beginning of file." -msgstr "PreskoÄi pomak bitova na poÄetku datoteke." - -#: grub-core/commands/hexdump.c:33 -msgid "Read only LENGTH bytes." -msgstr "Bajtovi DULJINE samo-za-Äitanje." - -#: grub-core/commands/hexdump.c:125 -msgid "[OPTIONS] FILE_OR_DEVICE" -msgstr "[MOGUĆNOSTI] DATOTEKA_ILI_UREÄAJ" - -#: grub-core/commands/hexdump.c:126 -msgid "Show raw contents of a file or memory." -msgstr "Prikaži osnovni sadržaj datoteke ili memorije." - -#: grub-core/commands/i386/cmosdump.c:58 -msgid "Show raw dump of the CMOS contents." -msgstr "Prikaži osnovni ispis CMOS sadržaja." - -#: grub-core/commands/i386/cmostest.c:108 -#: grub-core/commands/i386/cmostest.c:111 -#: grub-core/commands/i386/cmostest.c:114 -msgid "BYTE:BIT" -msgstr "BAJT:BIT" - -#: grub-core/commands/i386/cmostest.c:109 -msgid "Test bit at BYTE:BIT in CMOS." -msgstr "Testiraj bit na BYTE:BIT u CMOS." - -#: grub-core/commands/i386/cmostest.c:112 -msgid "Clear bit at BYTE:BIT in CMOS." -msgstr "ObriÅ¡i bit na BYTE:BIT u CMOS." - -#. TRANSLATORS: A bit may be either set (1) or clear (0). -#: grub-core/commands/i386/cmostest.c:116 -msgid "Set bit at BYTE:BIT in CMOS." -msgstr "Postavi bit na BYTE:BIT u CMOS." - -#: grub-core/commands/i386/coreboot/cb_timestamps.c:120 -msgid "Show coreboot boot time statistics." -msgstr "Prikaži coreboot statistiku vremena pokretanja." - -#: grub-core/commands/i386/coreboot/cbls.c:137 -msgid "List coreboot tables." -msgstr "Prikaži coreboot tablice." - -#. TRANSLATORS: "(default)" at the end means that this option is used if -#. no argument is specified. -#: grub-core/commands/i386/cpuid.c:36 -msgid "Check if CPU supports 64-bit (long) mode (default)." -msgstr "Provjerite podržava li CPU 64-bit (dulji) naÄin (uobiÄajeno)." - -#: grub-core/commands/i386/cpuid.c:37 -msgid "Check if CPU supports Physical Address Extension." -msgstr "Provjerite podržava li CPU ProÅ¡irenje fiziÄke adrese." - -#: grub-core/commands/i386/cpuid.c:119 -msgid "Check for CPU features." -msgstr "Provjeri CPU znaÄajke." - -#. TRANSLATORS: In this file "mapping" refers to a change GRUB makes so if -#. your language doesn't have an equivalent of "mapping" you can -#. use the word like "rerouting". -#. -#: grub-core/commands/i386/pc/drivemap.c:43 -msgid "Show the current mappings." -msgstr "Prikaži trenutna mapiranja." - -#: grub-core/commands/i386/pc/drivemap.c:44 -msgid "Reset all mappings to the default values." -msgstr "Vrati sva mapiranja na zadane vrijednosti." - -#: grub-core/commands/i386/pc/drivemap.c:45 -msgid "Perform both direct and reverse mappings." -msgstr "Izvedi oba, izravno i obrnuto mapiranje." - -#: grub-core/commands/i386/pc/drivemap.c:184 -msgid "No drives have been remapped" -msgstr "Nema ponovno mapiranih ureÄ‘aja" - -#. TRANSLATORS: This is the header of mapping list. -#. On the left is how OS will see the disks and -#. on the right current GRUB vision. -#: grub-core/commands/i386/pc/drivemap.c:191 -msgid "OS disk #num ------> GRUB/BIOS device" -msgstr "OS disk broj ------> GRUB/BIOS ureÄ‘aj" - -#: grub-core/commands/i386/pc/drivemap.c:413 -msgid "-l | -r | [-s] grubdev osdisk." -msgstr "-l | -r | [-s] grubdev osdisk." - -#: grub-core/commands/i386/pc/drivemap.c:414 -msgid "Manage the BIOS drive mappings." -msgstr "Upravljanje mapiranjem BIOS ureÄ‘aja." - -#: grub-core/commands/i386/pc/halt.c:31 -msgid "Do not use APM to halt the computer." -msgstr "Ne koristi APM za zaustavljanje raÄunala." - -#: grub-core/commands/i386/pc/halt.c:119 -msgid "Halt the system, if possible using APM." -msgstr "Zaustavi sustav, po mogućnosti koristeći APM." - -#: grub-core/commands/i386/pc/lsapm.c:75 -msgid "no APM found" -msgstr "APM nije pronaÄ‘en" - -#: grub-core/commands/i386/pc/lsapm.c:77 -#, c-format -msgid "" -"Version %u.%u\n" -"32-bit CS = 0x%x, len = 0x%x, offset = 0x%x\n" -"16-bit CS = 0x%x, len = 0x%x\n" -"DS = 0x%x, len = 0x%x\n" -msgstr "" -"InaÄica %u.%u\n" -"32-bitno CS = 0x%x, dulj = 0x%x, pomak = 0x%x\n" -"16-bitno CS = 0x%x, dulj = 0x%x\n" -"DS = 0x%x, dulj = 0x%x\n" - -#: grub-core/commands/i386/pc/lsapm.c:86 -msgid "16-bit protected interface supported\n" -msgstr "16-bitno zaÅ¡tićeno suÄelje podržano\n" - -#: grub-core/commands/i386/pc/lsapm.c:87 -msgid "16-bit protected interface unsupported\n" -msgstr "16-bitno zaÅ¡tićeno suÄelje nepodržano\n" - -#: grub-core/commands/i386/pc/lsapm.c:89 -msgid "32-bit protected interface supported\n" -msgstr "32-bitno zaÅ¡tićeno suÄelje podržano\n" - -#: grub-core/commands/i386/pc/lsapm.c:90 -msgid "32-bit protected interface unsupported\n" -msgstr "32-bitno zaÅ¡tićeno suÄelje nepodržano\n" - -#: grub-core/commands/i386/pc/lsapm.c:92 -msgid "CPU Idle slows down processor\n" -msgstr "CPU mirovanje usporava procesor\n" - -#: grub-core/commands/i386/pc/lsapm.c:93 -msgid "CPU Idle doesn't slow down processor\n" -msgstr "CPU mirovanje neusporava procesor\n" - -#: grub-core/commands/i386/pc/lsapm.c:95 -msgid "APM disabled\n" -msgstr "APM onemogućen\n" - -#: grub-core/commands/i386/pc/lsapm.c:95 -msgid "APM enabled\n" -msgstr "APM omogućen\n" - -#: grub-core/commands/i386/pc/lsapm.c:97 -msgid "APM disengaged\n" -msgstr "APM odkopÄan\n" - -#: grub-core/commands/i386/pc/lsapm.c:97 -msgid "APM engaged\n" -msgstr "APM prikopÄan\n" - -#: grub-core/commands/i386/pc/lsapm.c:107 -msgid "Show APM information." -msgstr "Prikaži APM informacije." - -#. TRANSLATORS: It's musical notes, not the notes -#. you take. Play command expects arguments which can -#. be either a filename or tempo+notes. -#. This error happens if none is specified. -#: grub-core/commands/i386/pc/play.c:88 -msgid "filename or tempo and notes expected" -msgstr "naziv datoteke ili tempo i zabiljeÅ¡ke potrebni" - -#: grub-core/commands/i386/pc/play.c:113 grub-core/commands/i386/pc/play.c:144 -#, c-format -msgid "Invalid tempo in %s" -msgstr "Neispravan tempo u %s" - -#: grub-core/commands/i386/pc/play.c:151 grub-core/commands/macbless.c:172 -#: grub-core/fs/archelp.c:260 grub-core/fs/bfs.c:621 grub-core/fs/bfs.c:704 -#: grub-core/fs/btrfs.c:1726 grub-core/fs/btrfs.c:1755 -#: grub-core/fs/btrfs.c:1799 grub-core/fs/btrfs.c:1882 -#: grub-core/fs/btrfs.c:1906 grub-core/fs/fshelp.c:257 grub-core/fs/jfs.c:696 -#: grub-core/fs/minix.c:426 grub-core/fs/ufs.c:544 grub-core/fs/zfs/zfs.c:2083 -#: grub-core/fs/zfs/zfs.c:2095 grub-core/fs/zfs/zfs.c:2301 -#: grub-core/net/http.c:120 -#, c-format -msgid "file `%s' not found" -msgstr "datoteka `%s' nije pronaÄ‘ena" - -#: grub-core/commands/i386/pc/play.c:162 grub-core/commands/i386/pc/play.c:171 -#: grub-core/kern/misc.c:419 grub-core/script/execute.c:138 -#: grub-core/script/execute.c:244 -msgid "unrecognized number" -msgstr "neprepoznat broj" - -#: grub-core/commands/i386/pc/play.c:190 -msgid "FILE | TEMPO [PITCH1 DURATION1] [PITCH2 DURATION2] ... " -msgstr "DATOTEKA | TEMPO [VISINA TRAJANJE] [VISINA TRAJANJE] ... " - -#: grub-core/commands/i386/pc/play.c:191 -msgid "Play a tune." -msgstr "Sviraj melodiju." - -#: grub-core/commands/i386/pc/sendkey.c:39 -msgid "set numlock mode" -msgstr "postavi naÄin brojeva" - -#: grub-core/commands/i386/pc/sendkey.c:40 -msgid "set capslock mode" -msgstr "postavi naÄin velikih slova" - -#: grub-core/commands/i386/pc/sendkey.c:41 -msgid "set scrolllock mode" -msgstr "postavi naÄin pomicanja" - -#: grub-core/commands/i386/pc/sendkey.c:42 -msgid "set insert mode" -msgstr "postavi naÄin umetanja" - -#: grub-core/commands/i386/pc/sendkey.c:43 -msgid "set pause mode" -msgstr "postavi naÄin pauziranja" - -#: grub-core/commands/i386/pc/sendkey.c:44 -msgid "press left shift" -msgstr "pritisni lijevi shift" - -#: grub-core/commands/i386/pc/sendkey.c:45 -msgid "press right shift" -msgstr "pritisni desni shift" - -#: grub-core/commands/i386/pc/sendkey.c:46 -msgid "press SysRq" -msgstr "pritisni SysRq" - -#: grub-core/commands/i386/pc/sendkey.c:47 -msgid "press NumLock key" -msgstr "pritisni NumLock tipku" - -#: grub-core/commands/i386/pc/sendkey.c:48 -msgid "press CapsLock key" -msgstr "pritisni CapsLock tipku" - -#: grub-core/commands/i386/pc/sendkey.c:49 -msgid "press ScrollLock key" -msgstr "pritisni ScrollLock tipku" - -#: grub-core/commands/i386/pc/sendkey.c:50 -msgid "press Insert key" -msgstr "pritisni Insert tipku" - -#: grub-core/commands/i386/pc/sendkey.c:51 -msgid "press left alt" -msgstr "pritisni lijevi alt" - -#: grub-core/commands/i386/pc/sendkey.c:52 -msgid "press right alt" -msgstr "pritisni desni alt" - -#: grub-core/commands/i386/pc/sendkey.c:53 -msgid "press left ctrl" -msgstr "pritisni lijevi ctrl" - -#: grub-core/commands/i386/pc/sendkey.c:54 -msgid "press right ctrl" -msgstr "pritisni desni ctrl" - -#: grub-core/commands/i386/pc/sendkey.c:55 -msgid "don't update LED state" -msgstr "ne nadopunjuj LED stanje" - -#: grub-core/commands/i386/pc/sendkey.c:372 -msgid "[KEYSTROKE1] [KEYSTROKE2] ..." -msgstr "[PRITISAK TIPKE1] [PRITISAK TIPKE2] ..." - -#. TRANSLATORS: It can emulate multiple -#. keypresses. -#: grub-core/commands/i386/pc/sendkey.c:375 -msgid "Emulate a keystroke sequence" -msgstr "Emuliraj slijed pritiska tipke" - -#: grub-core/commands/i386/rdmsr.c:37 grub-core/commands/iorw.c:34 -#: grub-core/commands/memrw.c:33 grub-core/commands/setpci.c:73 -msgid "Save read value into variable VARNAME." -msgstr "Spremi vrijednosti Äitanja u varijablu VARNAZIV." - -#: grub-core/commands/i386/rdmsr.c:38 grub-core/commands/iorw.c:35 -#: grub-core/commands/memrw.c:34 grub-core/commands/probe.c:40 -#: grub-core/commands/search_wrap.c:40 grub-core/commands/setpci.c:74 -#: grub-core/commands/tr.c:32 -msgid "VARNAME" -msgstr "VARNAZIV" - -#: grub-core/commands/i386/rdmsr.c:55 grub-core/commands/i386/rdmsr.c:60 -#: grub-core/commands/i386/rdmsr.c:65 grub-core/commands/i386/wrmsr.c:47 -#: grub-core/commands/i386/wrmsr.c:52 grub-core/commands/i386/wrmsr.c:57 -msgid "unsupported instruction" -msgstr "nepodržana instrukcija" - -#: grub-core/commands/i386/rdmsr.c:77 grub-core/commands/i386/wrmsr.c:69 -#: grub-core/commands/i386/wrmsr.c:77 grub-core/net/dns.c:727 -msgid "invalid argument" -msgstr "neispravan argument" - -#: grub-core/commands/i386/rdmsr.c:94 grub-core/commands/memrw.c:125 -#: grub-core/commands/memrw.c:129 grub-core/commands/memrw.c:133 -msgid "ADDR" -msgstr "ADRESA" - -#: grub-core/commands/i386/rdmsr.c:95 -msgid "Read a CPU model specific register." -msgstr "ProÄitaj poseban registar CPU modela." - -#: grub-core/commands/i386/wrmsr.c:86 -msgid "ADDR VALUE" -msgstr "VRIJEDNOST ADRESE" - -#: grub-core/commands/i386/wrmsr.c:87 -msgid "Write a value to a CPU model specific register." -msgstr "ZapiÅ¡i vrijednost u poseban registar CPU modela." - -#: grub-core/commands/ieee1275/suspend.c:34 -msgid "Run `go' to resume GRUB." -msgstr "Pokreni `go' za pokretanje GRUB-a." - -#: grub-core/commands/ieee1275/suspend.c:45 -msgid "Return to IEEE1275 prompt." -msgstr "Vrati se u IEEE1275 naredbeni radak." - -#: grub-core/commands/iorw.c:123 grub-core/commands/iorw.c:127 -#: grub-core/commands/iorw.c:131 grub-core/gdb/gdb.c:79 -msgid "PORT" -msgstr "ULAZ" - -#: grub-core/commands/iorw.c:123 -msgid "Read 8-bit value from PORT." -msgstr "ÄŒitaj 8-bitnu vrijednost s ULAZA." - -#: grub-core/commands/iorw.c:127 -msgid "Read 16-bit value from PORT." -msgstr "ÄŒitaj 16-bitnu vrijednost s ULAZA." - -#: grub-core/commands/iorw.c:131 -msgid "Read 32-bit value from PORT." -msgstr "ÄŒitaj 32-bitnu vrijednost s ULAZA." - -#: grub-core/commands/iorw.c:135 grub-core/commands/iorw.c:139 -msgid "PORT VALUE [MASK]" -msgstr "ULAZ VRIJEDNOST [MASKA]" - -#: grub-core/commands/iorw.c:136 -msgid "Write 8-bit VALUE to PORT." -msgstr "Zapisuj 8-bitnu VRIJEDNOST u ULAZ." - -#: grub-core/commands/iorw.c:140 -msgid "Write 16-bit VALUE to PORT." -msgstr "Zapisuj 16-bitnu VRIJEDNOST u ULAZ." - -#: grub-core/commands/iorw.c:143 grub-core/commands/memrw.c:137 -#: grub-core/commands/memrw.c:141 grub-core/commands/memrw.c:145 -msgid "ADDR VALUE [MASK]" -msgstr "VRIJEDNOST ADRESE [MASKA]" - -#: grub-core/commands/iorw.c:144 -msgid "Write 32-bit VALUE to PORT." -msgstr "Zapisuj 32-bitnu VRIJEDNOST u ULAZ." - -#: grub-core/commands/keylayouts.c:215 grub-core/commands/loadenv.c:61 -#: grub-core/commands/nativedisk.c:189 grub-core/efiemu/main.c:235 -#: grub-core/font/font.c:428 grub-core/gfxmenu/gfxmenu.c:63 -#: grub-core/kern/device.c:42 grub-core/kern/dl.c:740 -#, c-format -msgid "variable `%s' isn't set" -msgstr "varijabla `%s' nije postavljena" - -#: grub-core/commands/keylayouts.c:301 -msgid "Load a keyboard layout." -msgstr "UÄitaj raspored tipkovnice." - -#. TRANSLATORS: "Check" in a sense that if this key is pressed then -#. "true" is returned, otherwise "false". -#: grub-core/commands/keystatus.c:32 -msgid "Check Shift key." -msgstr "Provjeri Shift tipku." - -#: grub-core/commands/keystatus.c:33 -msgid "Check Control key." -msgstr "Provjeri Control tipku." - -#: grub-core/commands/keystatus.c:34 -msgid "Check Alt key." -msgstr "Provjeri Alt tipku." - -#. TRANSLATORS: there are 3 modifiers. -#: grub-core/commands/keystatus.c:106 -msgid "Check key modifier status." -msgstr "Provjeri tipku izmjenjivaÄa." - -#: grub-core/commands/legacycfg.c:512 grub-core/commands/legacycfg.c:526 -#: grub-core/commands/legacycfg.c:546 grub-core/commands/legacycfg.c:559 -#: grub-core/commands/time.c:43 grub-core/script/function.c:109 -#: util/grub-file.c:100 util/grub-fstest.c:57 util/grub-mount.c:69 -#, c-format -msgid "can't find command `%s'" -msgstr "nemoguće pronaći naredbu `%s'" - -#: grub-core/commands/legacycfg.c:813 grub-core/normal/auth.c:225 -#: util/grub-mkpasswd-pbkdf2.c:139 -msgid "Enter password: " -msgstr "UpiÅ¡ite lozinku: " - -#. TRANSLATORS: "legacy config" means -#. "config as used by grub-legacy". -#: grub-core/commands/legacycfg.c:837 -msgid "Parse legacy config in same context" -msgstr "Obradi zastarjelo podeÅ¡avanje u istom kontekstu" - -#: grub-core/commands/legacycfg.c:842 -msgid "Parse legacy config in new context" -msgstr "Obradi zastarjelo podeÅ¡avanje u novom kontekstu" - -#: grub-core/commands/legacycfg.c:847 -msgid "Parse legacy config in same context taking only menu entries" -msgstr "" -"Obradi zastarjelo podeÅ¡avanje u istom kontekstu koristeći samo izbornike " -"unosa" - -#: grub-core/commands/legacycfg.c:852 -msgid "Parse legacy config in new context taking only menu entries" -msgstr "" -"Obradi zastarjelo podeÅ¡avanje u novom kontekstu koristeći samo izbornike " -"unosa" - -#: grub-core/commands/legacycfg.c:856 -msgid "[--no-mem-option] [--type=TYPE] FILE [ARG ...]" -msgstr "[--no-mem-option] [--type=VRSTA] DATOTEKA [ARG ...]" - -#: grub-core/commands/legacycfg.c:857 -msgid "Simulate grub-legacy `kernel' command" -msgstr "Simuliraj grub-legacy `kernel' naredbu" - -#: grub-core/commands/legacycfg.c:861 grub-core/commands/legacycfg.c:865 -msgid "FILE [ARG ...]" -msgstr "DATOTEKA [ARG ...]" - -#: grub-core/commands/legacycfg.c:862 -msgid "Simulate grub-legacy `initrd' command" -msgstr "Simuliraj grub-legacy `initrd' naredbu" - -#: grub-core/commands/legacycfg.c:866 -msgid "Simulate grub-legacy `modulenounzip' command" -msgstr "Simuliraj grub-legacy `modulenounzip' naredbu" - -#: grub-core/commands/legacycfg.c:870 grub-core/commands/legacycfg.c:875 -msgid "[--md5] PASSWD [FILE]" -msgstr "[--md5] LOZINKA [DATOTEKA]" - -#: grub-core/commands/legacycfg.c:871 -msgid "Simulate grub-legacy `password' command" -msgstr "Simuliraj grub-legacy `password' naredbu" - -#: grub-core/commands/legacycfg.c:876 -msgid "Simulate grub-legacy `password' command in menu entry mode" -msgstr "Simuliraj grub-legacy `password' naredbu u naÄinu unosa izbornika" - -#. TRANSLATORS: This option is used to override default filename -#. for loading and storing environment. -#: grub-core/commands/loadenv.c:37 -msgid "Specify filename." -msgstr "Odredi naziv datoteke." - -#: grub-core/commands/loadenv.c:39 -msgid "Skip signature-checking of the environment file." -msgstr "PreskoÄi provjeru potpisa datoteke okruženja." - -#: grub-core/commands/loadenv.c:451 -msgid "[-f FILE] [-s|--skip-sig] [variable_name_to_whitelist] [...]" -msgstr "[-f FILE] [-s|--skip-sig] [varijabla_naziv_u_popis_dopuÅ¡tenih] [...]" - -#: grub-core/commands/loadenv.c:452 -msgid "Load variables from environment block file." -msgstr "UÄitaj varijablu s datoteke bloka okruženja." - -#: grub-core/commands/loadenv.c:455 -msgid "[-f FILE]" -msgstr "[-f DATOTEKA]" - -#: grub-core/commands/loadenv.c:456 -msgid "List variables from environment block file." -msgstr "IspiÅ¡i varijable iz datoteke bloka okružja." - -#: grub-core/commands/loadenv.c:460 -msgid "[-f FILE] variable_name [...]" -msgstr "[-f DATOTEKA] varijabla_naziv [...]" - -#: grub-core/commands/loadenv.c:461 -msgid "Save variables to environment block file." -msgstr "Spremi varijable u datoteku bloka okruženja." - -#: grub-core/commands/ls.c:40 -msgid "Show a long list with more detailed information." -msgstr "Prikaži dulji popis s opÅ¡irnijim informacijama." - -#: grub-core/commands/ls.c:41 -msgid "Print sizes in a human readable format." -msgstr "IspiÅ¡i veliÄine u ljudima Äitljivom obliku." - -#: grub-core/commands/ls.c:42 -msgid "List all files." -msgstr "Popis svih datoteka." - -#: grub-core/commands/ls.c:73 -msgid "Network protocols:" -msgstr "Mrežni protokol:" - -#: grub-core/commands/ls.c:295 -msgid "[-l|-h|-a] [FILE ...]" -msgstr "[-l|-h|-a] [DATOTEKA ...]" - -#: grub-core/commands/ls.c:296 -msgid "List devices and files." -msgstr "Popis ureÄ‘aja i datoteka." - -#: grub-core/commands/lsacpi.c:255 -msgid "Show version 1 tables only." -msgstr "Prikaži inaÄicu 1 tablica." - -#: grub-core/commands/lsacpi.c:256 -msgid "Show version 2 and version 3 tables only." -msgstr "Prikaži samo inaÄicu 2 i inaÄicu 3 tablica ." - -#: grub-core/commands/lsacpi.c:306 -msgid "Show ACPI information." -msgstr "Prikaži ACPI informacije." - -#: grub-core/commands/lsmmap.c:31 -msgid "available RAM" -msgstr "dostupan RAM" - -#: grub-core/commands/lsmmap.c:32 -msgid "reserved RAM" -msgstr "rezerviran RAM" - -#. TRANSLATORS: this refers to memory where ACPI tables are stored -#. and which can be used by OS once it loads ACPI tables. -#: grub-core/commands/lsmmap.c:35 -msgid "ACPI reclaimable RAM" -msgstr "ACPI pokretajući RAM" - -#. TRANSLATORS: this refers to memory which ACPI-compliant OS -#. is required to save accross hibernations. -#: grub-core/commands/lsmmap.c:38 -msgid "ACPI non-volatile storage RAM" -msgstr "ACPI nenasilna pohrana RAM-a" - -#: grub-core/commands/lsmmap.c:39 -msgid "faulty RAM (BadRAM)" -msgstr "pokvareni RAM (Pokvaren RAM)" - -#: grub-core/commands/lsmmap.c:40 -msgid "persistent RAM" -msgstr "trajan RAM" - -#: grub-core/commands/lsmmap.c:41 -msgid "persistent RAM (legacy)" -msgstr "trajan RAM (zastarjelo)" - -#: grub-core/commands/lsmmap.c:42 -msgid "RAM holding coreboot tables" -msgstr "RAM drži coreboot tablice" - -#: grub-core/commands/lsmmap.c:43 -msgid "RAM holding firmware code" -msgstr "RAM drži kôd firmvera" - -#: grub-core/commands/lsmmap.c:52 -#, c-format -msgid "base_addr = 0x%llx, length = 0x%llx, %s\n" -msgstr "base_addr = 0x%llx, duljina = 0x%llx, %s\n" - -#: grub-core/commands/lsmmap.c:55 -#, c-format -msgid "base_addr = 0x%llx, length = 0x%llx, type = 0x%x\n" -msgstr "base_addr = 0x%llx, duljina = 0x%llx, vrsta = 0x%x\n" - -#: grub-core/commands/lsmmap.c:79 -msgid "List memory map provided by firmware." -msgstr "IspiÅ¡i mapu memorije osiguranu frimverom." - -#: grub-core/commands/lspci.c:232 -msgid "List PCI devices." -msgstr "Popis PCI ureÄ‘aja." - -#: grub-core/commands/macbless.c:224 -msgid "Bless FILE of HFS or HFS+ partition for intel macs." -msgstr "Dopusti DATOTEKU od HFS-a ili HFS+ particija za intel macove." - -#: grub-core/commands/macbless.c:228 -msgid "Bless DIR of HFS or HFS+ partition for PPC macs." -msgstr "Dopusti DIR od HFS-a ili HFS+ particija PPC macove." - -#: grub-core/commands/memrw.c:125 -msgid "Read 8-bit value from ADDR." -msgstr "ÄŒitaj 8-bitnu vrijednost s ADDR." - -#: grub-core/commands/memrw.c:129 -msgid "Read 16-bit value from ADDR." -msgstr "ÄŒitaj 16-bitnu vrijednost s ADDR." - -#: grub-core/commands/memrw.c:133 -msgid "Read 32-bit value from ADDR." -msgstr "ÄŒitaj 32-bitnu vrijednost s ADDR." - -#: grub-core/commands/memrw.c:138 -msgid "Write 8-bit VALUE to ADDR." -msgstr "Zapisuj 8-bitnu VRIJEDNOST u ADDR." - -#: grub-core/commands/memrw.c:142 -msgid "Write 16-bit VALUE to ADDR." -msgstr "Zapisuj 16-bitnu VRIJEDNOST u ADDR." - -#: grub-core/commands/memrw.c:146 -msgid "Write 32-bit VALUE to ADDR." -msgstr "Zapisuj 32-bitnu VRIJEDNOST u ADDR." - -#: grub-core/commands/menuentry.c:31 -msgid "Menu entry type." -msgstr "Vrsta unosa izbornika." - -#: grub-core/commands/menuentry.c:31 grub-core/commands/menuentry.c:38 -#: grub-core/commands/menuentry.c:39 grub-core/gettext/gettext.c:520 -#: util/grub-fstest.c:520 util/grub-install.c:291 util/grub-install.c:304 -#: util/grub-mknetdir.c:51 util/grub-mkrescue.c:109 util/grub-mkrescue.c:110 -#: util/grub-mount.c:453 util/grub-render-label.c:65 -msgid "STRING" -msgstr "NIZ" - -#: grub-core/commands/menuentry.c:33 -msgid "List of users allowed to boot this entry." -msgstr "Popis korisnika kojima je dopuÅ¡teno pokretanje ovog unosa." - -#: grub-core/commands/menuentry.c:33 -msgid "USERNAME[,USERNAME]" -msgstr "KORISNIÄŒKO IME[,KORISNIÄŒKO IME]" - -#: grub-core/commands/menuentry.c:36 -msgid "Keyboard key to quickly boot this entry." -msgstr "Tipka tipkovnice za brzo pokretanje ovog unosa." - -#: grub-core/commands/menuentry.c:36 -msgid "KEYBOARD_KEY" -msgstr "TIPKA_TIPKOVNICE" - -#: grub-core/commands/menuentry.c:38 -msgid "Use STRING as menu entry body." -msgstr "Koristi NIZ kao osnovu unosa izbornika." - -#: grub-core/commands/menuentry.c:39 -msgid "Menu entry identifier." -msgstr "Identifikator stavke izbornika." - -#. TRANSLATORS: menu entry can either be bootable by anyone or only by -#. handful of users. By default when security is active only superusers can -#. boot a given menu entry. With --unrestricted (this option) -#. anyone can boot it. -#: grub-core/commands/menuentry.c:44 -msgid "This entry can be booted by any user." -msgstr "Ovaj unos može pokrenuti bilo koji korisnik." - -#: grub-core/commands/menuentry.c:323 grub-core/commands/menuentry.c:328 -#: grub-core/tests/test_blockarg.c:46 -msgid "BLOCK" -msgstr "BLOK" - -#: grub-core/commands/menuentry.c:323 -msgid "Define a menu entry." -msgstr "Odredi stavku izbornika." - -#: grub-core/commands/menuentry.c:328 -msgid "Define a submenu." -msgstr "Odredi podizbornik." - -#. TRANSLATORS: this is module list header. Name -#. is module name, Ref Count is a reference counter -#. (how many modules or open descriptors use it). -#. Dependencies are the other modules it uses. -#. -#: grub-core/commands/minicmd.c:162 -msgid "Name\tRef Count\tDependencies\n" -msgstr "Naziv\tRef broj\tZavisnosti\n" - -#: grub-core/commands/minicmd.c:201 -msgid "Show this message." -msgstr "Prikaži ovu poruku." - -#: grub-core/commands/minicmd.c:204 -msgid "ADDR [SIZE]" -msgstr "ADDR [VELIÄŒINA]" - -#: grub-core/commands/minicmd.c:204 -msgid "Show memory contents." -msgstr "Prikaži sadržaj memorije." - -#: grub-core/commands/minicmd.c:207 grub-core/kern/corecmd.c:188 -#: util/grub-install.c:275 -msgid "MODULE" -msgstr "MODUL" - -#: grub-core/commands/minicmd.c:207 -msgid "Remove a module." -msgstr "Ukloni modul." - -#: grub-core/commands/minicmd.c:210 -msgid "Show loaded modules." -msgstr "Prikaži uÄitane module." - -#: grub-core/commands/minicmd.c:213 -msgid "Exit from GRUB." -msgstr "IzaÄ‘i iz GRUB-a." - -#: grub-core/commands/mips/loongson/lsspd.c:42 -msgid "No CS5536 found" -msgstr "CS5536 nije pronaÄ‘en" - -#: grub-core/commands/mips/loongson/lsspd.c:45 -#, c-format -msgid "CS5536 at %d:%d.%d\n" -msgstr "CS5536 na %d:%d.%d\n" - -#. TRANSLATORS: System management bus is often used to access components like -#. RAM (info only, not data) or batteries. I/O space is where in memory -#. its ports are. -#: grub-core/commands/mips/loongson/lsspd.c:55 -#, c-format -msgid "System management bus controller I/O space is at 0x%x\n" -msgstr "Kontroler sabirnice Upravitelja sustava I/O prostor je na 0x%x\n" - -#. TRANSLATORS: it's shown in a report in a way -#. like number 1: ... number 2: ... -#. -#: grub-core/commands/mips/loongson/lsspd.c:66 -#, c-format -msgid "RAM slot number %d\n" -msgstr "Broj RAM utora %d\n" - -#: grub-core/commands/mips/loongson/lsspd.c:73 -#, c-format -msgid "Written SPD bytes: %d B.\n" -msgstr "Zapisani SPD bajtovi: %d B.\n" - -#: grub-core/commands/mips/loongson/lsspd.c:74 -#, c-format -msgid "Total flash size: %d B.\n" -msgstr "Ukupna veliÄina upisivanja: %d B.\n" - -#: grub-core/commands/mips/loongson/lsspd.c:79 -msgid "Memory type: DDR2." -msgstr "Vrsta memorije: DDR2." - -#: grub-core/commands/mips/loongson/lsspd.c:83 -#, c-format -msgid "Part no: %s.\n" -msgstr "Dio broj: %s.\n" - -#: grub-core/commands/mips/loongson/lsspd.c:86 -msgid "Memory type: Unknown." -msgstr "Vrsta memorije: nepoznata." - -#: grub-core/commands/mips/loongson/lsspd.c:97 -msgid "Print Memory information." -msgstr "IspiÅ¡i informaciju memorije." - -#: grub-core/commands/nativedisk.c:118 grub-core/commands/probe.c:118 -#: grub-core/commands/probe.c:124 util/grub-probe.c:450 -#, c-format -msgid "%s does not support UUIDs" -msgstr "%s ne podržava UUID" - -#: grub-core/commands/nativedisk.c:325 -msgid "[MODULE1 MODULE2 ...]" -msgstr "[MODUL1 MODUL2 ...]" - -#: grub-core/commands/nativedisk.c:326 -msgid "" -"Switch to native disk drivers. If no modules are specified default set (pata," -"ahci,usbms,ohci,uhci,ehci) is used" -msgstr "" -"Prebacuje na izvorni upravljaÄki program diska. Ako nema modul odreÄ‘enih " -"zadanom skupinom (pata,ahci,usbms,ohci,uhci,ehci) koja se koristi" - -#: grub-core/commands/parttool.c:40 -msgid "" -"Perform COMMANDS on partition.\n" -"Use `parttool PARTITION help' for the list of available commands." -msgstr "" -"Pokreni NAREDBE na particiji.\n" -"Koristite `parttool PARTICIJA help' za popis dostupnih naredbi.." - -#: grub-core/commands/parttool.c:123 -msgid "=VAL" -msgstr "=VAL" - -#: grub-core/commands/parttool.c:136 -#, c-format -msgid "Sorry, no parttool is available for %s\n" -msgstr "Nažalost, nema dostupnog parttoola za %s\n" - -#: grub-core/commands/parttool.c:288 grub-core/lib/arg.c:285 -#: grub-core/lib/arg.c:351 -#, c-format -msgid "unknown argument `%s'" -msgstr "nepoznat argument `%s'" - -#: grub-core/commands/parttool.c:344 -msgid "PARTITION COMMANDS" -msgstr "PARTICIJA NAREDBE" - -#: grub-core/commands/password.c:85 -msgid "USER PASSWORD" -msgstr "KORISNIÄŒKA LOZINKA" - -#: grub-core/commands/password.c:86 -msgid "Set user password (plaintext). Unrecommended and insecure." -msgstr "" -"Postavite korisniÄku lozinku (obiÄan tekst). NepreporuÄljivo i nesigurno." - -#. TRANSLATORS: it means that the string which -#. was supposed to be a password hash doesn't -#. have a correct format, not to password -#. mismatch. -#: grub-core/commands/password_pbkdf2.c:98 -#: grub-core/commands/password_pbkdf2.c:115 -#: grub-core/commands/password_pbkdf2.c:123 -#: grub-core/commands/password_pbkdf2.c:150 -#: grub-core/commands/password_pbkdf2.c:179 -msgid "invalid PBKDF2 password" -msgstr "neispravna PBKDF2 lozinka" - -#: grub-core/commands/password_pbkdf2.c:202 -msgid "USER PBKDF2_PASSWORD" -msgstr "KORISNIÄŒKA PBKDF2_LOZINKA" - -#: grub-core/commands/password_pbkdf2.c:203 -msgid "Set user password (PBKDF2). " -msgstr "Postavite korisniÄku lozinku (PBKDF2). " - -#: grub-core/commands/pcidump.c:39 grub-core/commands/setpci.c:69 -msgid "Select device by vendor and device IDs." -msgstr "Odaberite ureÄ‘aj prema proizvoÄ‘aÄu i ID-u ureÄ‘aja." - -#: grub-core/commands/pcidump.c:40 grub-core/commands/setpci.c:70 -msgid "[vendor]:[device]" -msgstr "[proizvoÄ‘aÄ]:[ureÄ‘aj]" - -#: grub-core/commands/pcidump.c:41 grub-core/commands/setpci.c:71 -msgid "Select device by its position on the bus." -msgstr "Odaberite ureÄ‘aj prema njihovom položaju na sabirnici." - -#: grub-core/commands/pcidump.c:42 grub-core/commands/setpci.c:72 -msgid "[bus]:[slot][.func]" -msgstr "[sabirnica]:[utor][.funk]" - -#: grub-core/commands/pcidump.c:109 grub-core/commands/pcidump.c:138 -#: grub-core/commands/setpci.c:183 grub-core/commands/setpci.c:214 -#: grub-core/fs/zfs/zfs.c:3794 grub-core/kern/emu/hostdisk.c:458 -#: grub-core/kern/emu/hostdisk.c:473 grub-core/kern/file.c:44 -#, c-format -msgid "missing `%c' symbol" -msgstr "nedostaje `%c' simbol" - -#: grub-core/commands/pcidump.c:168 -msgid "[-s POSITION] [-d DEVICE]" -msgstr "[-s POLOŽAJ] [-d UREÄAJ]" - -#: grub-core/commands/pcidump.c:169 -msgid "Show raw dump of the PCI configuration space." -msgstr "Prikaži osnovni zapis prostora PCI podeÅ¡avanja." - -#: grub-core/commands/pgp.c:45 -msgid "Skip signature-checking of the public key file." -msgstr "PreskoÄi provjeru potpisa datoteke javnog kljuÄa." - -#. TRANSLATORS: it's about GNUPG signatures. -#: grub-core/commands/pgp.c:71 grub-core/commands/pgp.c:81 -#: grub-core/commands/pgp.c:86 grub-core/commands/pgp.c:96 -#: grub-core/commands/pgp.c:103 grub-core/commands/pgp.c:107 -#: grub-core/commands/pgp.c:114 grub-core/commands/pgp.c:119 -#: grub-core/commands/pgp.c:124 grub-core/commands/pgp.c:128 -#: grub-core/commands/pgp.c:268 grub-core/commands/pgp.c:276 -#: grub-core/commands/pgp.c:281 grub-core/commands/pgp.c:289 -#: grub-core/commands/pgp.c:320 grub-core/commands/pgp.c:327 -#: grub-core/commands/pgp.c:332 grub-core/commands/pgp.c:342 -#: grub-core/commands/pgp.c:468 grub-core/commands/pgp.c:471 -#: grub-core/commands/pgp.c:474 grub-core/commands/pgp.c:477 -#: grub-core/commands/pgp.c:484 grub-core/commands/pgp.c:490 -#: grub-core/commands/pgp.c:665 -msgid "bad signature" -msgstr "nevaljani potpis" - -#. TRANSLATORS: %08x is 32-bit key id. -#: grub-core/commands/pgp.c:636 grub-core/commands/pgp.c:812 -#, c-format -msgid "public key %08x not found" -msgstr "javni kljuÄ %08x nije pronaÄ‘en" - -#: grub-core/commands/pgp.c:651 grub-core/disk/diskfilter.c:772 -#: grub-core/disk/diskfilter.c:782 grub-core/fs/ntfs.c:404 -#: grub-core/fs/zfs/zfs.c:1933 grub-core/normal/menu.c:428 -#, c-format -msgid "module `%s' isn't loaded" -msgstr "modul `%s' nije uÄitan" - -#: grub-core/commands/pgp.c:994 -msgid "[-s|--skip-sig] FILE SIGNATURE_FILE [PUBKEY_FILE]" -msgstr "[-s|--skip-sig] DATOTEKA DATOTEKA_POTPISA [DATOTEKA_JAVNOG KLJUÄŒA]" - -#: grub-core/commands/pgp.c:995 -msgid "Verify detached signature." -msgstr "Provjeri odvojeni potpis." - -#: grub-core/commands/pgp.c:998 -msgid "[-s|--skip-sig] PUBKEY_FILE" -msgstr "[-s|--skip-sig] DATOTEKA_JAVNOG KLKUÄŒA" - -#: grub-core/commands/pgp.c:999 -msgid "Add PUBKEY_FILE to trusted keys." -msgstr "Dodaj PUBKEY_DATOTEKU u pouzdane kljuÄeve." - -#: grub-core/commands/pgp.c:1003 -msgid "Show the list of trusted keys." -msgstr "Prikaži popis pouzdanih kljuÄeva." - -#: grub-core/commands/pgp.c:1005 -msgid "PUBKEY_ID" -msgstr "ID_JAVNOG KLJUÄŒA" - -#: grub-core/commands/pgp.c:1006 -msgid "Remove PUBKEY_ID from trusted keys." -msgstr "Ukloni PUBKEY_ID s pouzdanih kljuÄeva." - -#: grub-core/commands/probe.c:40 grub-core/commands/tr.c:32 -msgid "Set a variable to return value." -msgstr "Postavite varijablu za povratnu vrijednost." - -#. TRANSLATORS: It's a driver that is currently in use to access -#. the diven disk. -#: grub-core/commands/probe.c:43 -msgid "Determine driver." -msgstr "Odredi upravljaÄki program." - -#: grub-core/commands/probe.c:44 -msgid "Determine partition map type." -msgstr "Odredi vrstu particijske mape." - -#: grub-core/commands/probe.c:45 -msgid "Determine filesystem type." -msgstr "Odredi vrstu datoteÄnog sustava." - -#: grub-core/commands/probe.c:46 -msgid "Determine filesystem UUID." -msgstr "Odredi datoteÄni sustav UUID-a." - -#: grub-core/commands/probe.c:47 -msgid "Determine filesystem label." -msgstr "Odredi naziv datoteÄni sustava." - -#: grub-core/commands/probe.c:139 grub-core/commands/probe.c:146 -#: util/grub-probe.c:462 -#, c-format -msgid "filesystem `%s' does not support labels" -msgstr "datoteÄni sustav `%s' ne podržava nazive" - -#: grub-core/commands/probe.c:165 grub-core/fs/zfs/zfsinfo.c:430 -#: grub-core/loader/i386/bsd.c:169 util/grub-setup.c:223 -msgid "DEVICE" -msgstr "UREÄAJ" - -#: grub-core/commands/probe.c:166 -msgid "Retrieve device info." -msgstr "Preuzmi informacije ureÄ‘aja." - -#: grub-core/commands/read.c:85 -msgid "[ENVVAR]" -msgstr "[ENVVAR]" - -#: grub-core/commands/read.c:86 -msgid "Set variable with user input." -msgstr "Postavite variajblu s korisniÄkim unosom." - -#: grub-core/commands/reboot.c:40 -msgid "Reboot the computer." -msgstr "Ponovno pokrenite raÄunalo." - -#. TRANSLATORS: in regexp you can mark some -#. groups with parentheses. These groups are -#. then numbered and you can save some of -#. them in variables. In other programs -#. those components aree often referenced with -#. back slash, e.g. \1. Compare -#. sed -e 's,\([a-z][a-z]*\),lowercase=\1,g' -#. The whole matching component is saved in VARNAME, not its number. -#. -#: grub-core/commands/regexp.c:44 -msgid "Store matched component NUMBER in VARNAME." -msgstr "Spremi podudarajući BROJ komponente u VARIJABLU-NAZIVA." - -#: grub-core/commands/regexp.c:45 -msgid "[NUMBER:]VARNAME" -msgstr "[BROJ:]NAZIV VAR" - -#. TRANSLATORS: This are two arguments. So it's -#. two separate units to translate and pay -#. attention not to reverse them. -#: grub-core/commands/regexp.c:157 -msgid "REGEXP STRING" -msgstr "REGULARAN-IZRAZ NIZ" - -#: grub-core/commands/regexp.c:158 -msgid "Test if REGEXP matches STRING." -msgstr "Testiraj je li se REGULARAN-IZRAZ poklapa s NIZOM." - -#: grub-core/commands/search.c:324 -msgid "NAME [VARIABLE] [HINTS]" -msgstr "NAZIV [VARIJABLA] [OPIS]" - -#: grub-core/commands/search_file.c:4 -msgid "" -"Search devices by file. If VARIABLE is specified, the first device found is " -"set to a variable." -msgstr "" -"Pretraži ureÄ‘aje prema datoteci. Ako je VARIJABLA odreÄ‘ena, prvi pronaÄ‘eni " -"ureÄ‘aj je postavljen u varijablu." - -#: grub-core/commands/search_label.c:4 -msgid "" -"Search devices by label. If VARIABLE is specified, the first device found is " -"set to a variable." -msgstr "" -"Pretraži ureÄ‘aje prema nazivu. Ako je VARIJABLA odreÄ‘ena, prvi pronaÄ‘eni " -"ureÄ‘aj je postavljen u varijablu." - -#: grub-core/commands/search_uuid.c:4 -msgid "" -"Search devices by UUID. If VARIABLE is specified, the first device found is " -"set to a variable." -msgstr "" -"Pretraži ureÄ‘aje prema UUID-u. Ako je VARIJABLA odreÄ‘ena, prvi pronaÄ‘eni " -"ureÄ‘aj je postavljen u varijablu." - -#: grub-core/commands/search_wrap.c:34 -msgid "Search devices by a file." -msgstr "Pretraži ureÄ‘aje prema datoteci." - -#: grub-core/commands/search_wrap.c:35 -msgid "Search devices by a filesystem label." -msgstr "Pretraži ureÄ‘aje prema nazivu datoteÄnog sustava." - -#: grub-core/commands/search_wrap.c:37 -msgid "Search devices by a filesystem UUID." -msgstr "Pretraži ureÄ‘aje prema UUID-u datoteÄnog sustava." - -#: grub-core/commands/search_wrap.c:40 -msgid "Set a variable to the first device found." -msgstr "Postavi varijablu na prvi pronaÄ‘eni ureÄ‘aj." - -#: grub-core/commands/search_wrap.c:42 -msgid "Do not probe any floppy drive." -msgstr "Ne sondiraj disketne ureÄ‘aje." - -#: grub-core/commands/search_wrap.c:44 -msgid "" -"First try the device HINT. If HINT ends in comma, also try subpartitions" -msgstr "" -"Prvo pokuÅ¡ajte OPIS ureÄ‘aja. Ako OPIS zavrÅ¡i sa zarezom, pokuÅ¡ajte s " -"podparticijama" - -#: grub-core/commands/search_wrap.c:45 grub-core/commands/search_wrap.c:49 -#: grub-core/commands/search_wrap.c:53 grub-core/commands/search_wrap.c:57 -#: grub-core/commands/search_wrap.c:61 grub-core/commands/search_wrap.c:65 -msgid "HINT" -msgstr "OPIS" - -#: grub-core/commands/search_wrap.c:47 -msgid "" -"First try the device HINT if currently running on IEEE1275. If HINT ends in " -"comma, also try subpartitions" -msgstr "" -"Prvo pokuÅ¡aj OPIS ureÄ‘aja ako je trenutno pokrenut na IEEE1275. Ako OPIS " -"zavrÅ¡ava sa zarezom, pokuÅ¡ajte s podparticijama" - -#: grub-core/commands/search_wrap.c:51 -msgid "" -"First try the device HINT if currently running on BIOS. If HINT ends in " -"comma, also try subpartitions" -msgstr "" -"Prvo pokuÅ¡aj OPIS ureÄ‘aja ako je trenutno pokrenut na BIOSU. Ako OPIS " -"zavrÅ¡ava sa zarezom, pokuÅ¡ajte s podparticijama" - -#: grub-core/commands/search_wrap.c:55 -msgid "" -"First try the device HINT if direct hardware access is supported. If HINT " -"ends in comma, also try subpartitions" -msgstr "" -"Prvo pokuÅ¡aj OPIS ureÄ‘aja ako je podržan izravan pristup hardveru. Ako OPIS " -"zavrÅ¡ava sa zarezom, pokuÅ¡ajte s podparticijama" - -#: grub-core/commands/search_wrap.c:59 -msgid "" -"First try the device HINT if currently running on EFI. If HINT ends in " -"comma, also try subpartitions" -msgstr "" -"Prvo pokuÅ¡aj OPIS ureÄ‘aja ako je trenutno pokrenut na EFIU. Ako OPIS " -"zavrÅ¡ava sa zarezom, pokuÅ¡ajte s podparticijama" - -#: grub-core/commands/search_wrap.c:63 -msgid "" -"First try the device HINT if currently running on ARC. If HINT ends in " -"comma, also try subpartitions" -msgstr "" -"Prvo pokuÅ¡aj OPIS ureÄ‘aja ako je trenutno pokrenut na ARC. Ako OPIS zavrÅ¡ava " -"sa zarezom, pokuÅ¡ajte s podparticijama" - -#: grub-core/commands/search_wrap.c:207 -msgid "[-f|-l|-u|-s|-n] [--hint HINT [--hint HINT] ...] NAME" -msgstr "[-f|-l|-u|-s|-n] [--hint OPIS [--hint OPIS] ...] NAZIV" - -#: grub-core/commands/search_wrap.c:209 -msgid "" -"Search devices by file, filesystem label or filesystem UUID. If --set is " -"specified, the first device found is set to a variable. If no variable name " -"is specified, `root' is used." -msgstr "" -"Pretraži ureÄ‘aj prema datoteci, nazivu datoteÄnog sustava ili UUID-u " -"datoteÄnog sustava. Ako je --set odreÄ‘en, prvi pronaÄ‘eni ureÄ‘aj je " -"postavljen u varijablu. Ako naziv varijable nije odreÄ‘en, `root' se koristi." - -#: grub-core/commands/setpci.c:132 -#, c-format -msgid "Register %x of %x:%02x.%x is %x\n" -msgstr "Registracija %x od %x:%02x.%x je %x\n" - -#: grub-core/commands/setpci.c:333 -msgid "[-s POSITION] [-d DEVICE] [-v VAR] REGISTER[=VALUE[:MASK]]" -msgstr "[-s POLOŽAJ] [-d UREÄAJ] [-v VAR] REGISTER[=VRIJEDNOST[:MASKA]]" - -#: grub-core/commands/setpci.c:335 -msgid "Manipulate PCI devices." -msgstr "Manipuliraj PCI ureÄ‘ajima." - -#: grub-core/commands/sleep.c:32 -msgid "Verbose countdown." -msgstr "OpÅ¡irnije odbrojavanje." - -#: grub-core/commands/sleep.c:33 -msgid "Allow to interrupt with ESC." -msgstr "Dopusti prekid s ESC." - -#: grub-core/commands/sleep.c:109 -msgid "NUMBER_OF_SECONDS" -msgstr "BROJ_SEKUNDA" - -#: grub-core/commands/sleep.c:110 -msgid "Wait for a specified number of seconds." -msgstr "ÄŒekajte odreÄ‘eni broj sekundi." - -#: grub-core/commands/syslinuxcfg.c:50 util/grub-syslinux2cfg.c:66 -msgid "root directory of the syslinux disk [default=/]." -msgstr "korijenski direktorij syslinux diska [zadano=/]." - -#: grub-core/commands/syslinuxcfg.c:53 util/grub-syslinux2cfg.c:72 -msgid "" -"current directory of syslinux [default is parent directory of input file]." -msgstr "" -"trenutni direktorij syslinuxa [zadani je sadržajni direktorij ulazne " -"datoteke]." - -#: grub-core/commands/syslinuxcfg.c:55 util/grub-syslinux2cfg.c:75 -msgid "assume input is an isolinux configuration file." -msgstr "pretpostavljeni ulaz je isolinux datoteka podeÅ¡avanja." - -#: grub-core/commands/syslinuxcfg.c:56 util/grub-syslinux2cfg.c:76 -msgid "assume input is a pxelinux configuration file." -msgstr "pretpostavljeni ulaz je pxelinux datoteka podeÅ¡avanja." - -#: grub-core/commands/syslinuxcfg.c:57 util/grub-syslinux2cfg.c:77 -msgid "assume input is a syslinux configuration file." -msgstr "pretpostavljeni ulaz je syslinux datoteka podeÅ¡avanja." - -#. TRANSLATORS: "syslinux config" means -#. "config as used by syslinux". -#: grub-core/commands/syslinuxcfg.c:189 -msgid "Execute syslinux config in same context" -msgstr "Pokreni syslinux podeÅ¡avanje u istom sadržaju" - -#: grub-core/commands/syslinuxcfg.c:195 -msgid "Execute syslinux config in new context" -msgstr "Pokreni syslinux podeÅ¡avanje u novom sadržaju" - -#: grub-core/commands/syslinuxcfg.c:201 -msgid "Execute syslinux config in same context taking only menu entries" -msgstr "" -"Pokreni syslinux podeÅ¡avanje u istom sadržaju uzimajući samo stavke izbornika" - -#: grub-core/commands/syslinuxcfg.c:207 -msgid "Execute syslinux config in new context taking only menu entries" -msgstr "" -"Pokreni syslinux podeÅ¡avanje u novom sadržaju uzimajući samo stavke izbornika" - -#: grub-core/commands/terminal.c:90 -msgid "no terminal specified" -msgstr "nema odreÄ‘enog terminala" - -#: grub-core/commands/terminal.c:112 grub-core/commands/terminal.c:139 -#, c-format -msgid "terminal `%s' isn't found" -msgstr "terminal `%s' nije pronaÄ‘en" - -#: grub-core/commands/terminal.c:244 -msgid "Active input terminals:" -msgstr "Aktivni ulazni terminali:" - -#: grub-core/commands/terminal.c:245 -msgid "Available input terminals:" -msgstr "Dostupni ulazni terminali:" - -#: grub-core/commands/terminal.c:261 -msgid "Active output terminals:" -msgstr "Aktivni izlazni terminali:" - -#: grub-core/commands/terminal.c:262 -msgid "Available output terminals:" -msgstr "Dostupni izlazni terminali:" - -#: grub-core/commands/terminal.c:271 grub-core/commands/terminal.c:276 -msgid "[--append|--remove] [TERMINAL1] [TERMINAL2] ..." -msgstr "[--append|--remove] [TERMINAL1] [TERMINAL2] ..." - -#: grub-core/commands/terminal.c:273 -msgid "List or select an input terminal." -msgstr "Prikaži ili odaberi ulazni terminal." - -#: grub-core/commands/terminal.c:278 -msgid "List or select an output terminal." -msgstr "Prikaži ili odaberi izlazni terminal." - -#: grub-core/commands/test.c:444 -msgid "EXPRESSION ]" -msgstr "IZRAZ ]" - -#: grub-core/commands/test.c:444 grub-core/commands/test.c:447 -msgid "Evaluate an expression." -msgstr "Procjeni izraz." - -#: grub-core/commands/test.c:447 -msgid "EXPRESSION" -msgstr "IZRAZ" - -#: grub-core/commands/testload.c:164 -msgid "Load the same file in multiple ways." -msgstr "UÄitaj istu datotekau na viÅ¡e naÄina." - -#: grub-core/commands/testspeed.c:35 -msgid "Specify size for each read operation" -msgstr "Odredi veliÄinu za svaku radnju Äitanja" - -#: grub-core/commands/testspeed.c:58 -msgid "invalid block size" -msgstr "neispravna veliÄina bloka" - -#: grub-core/commands/testspeed.c:80 -#, c-format -msgid "File size: %s\n" -msgstr "VeliÄina datoteke: %s\n" - -#: grub-core/commands/testspeed.c:83 -#, c-format -msgid "Elapsed time: %d.%03d s \n" -msgstr "Preostalo vrijeme: %d.%03d s \n" - -#: grub-core/commands/testspeed.c:92 -#, c-format -msgid "Speed: %s \n" -msgstr "Brzina: %s \n" - -#: grub-core/commands/testspeed.c:107 -msgid "[-s SIZE] FILENAME" -msgstr "[-s VELIÄŒINA] NAZIV DATOTEKE" - -#: grub-core/commands/testspeed.c:108 -msgid "Test file read speed." -msgstr "Testiraj brzinu Äitanja datoteke." - -#: grub-core/commands/time.c:38 grub-core/script/execute.c:974 -msgid "no command is specified" -msgstr "nema odreÄ‘ene naredbe" - -#: grub-core/commands/time.c:50 -#, c-format -msgid "Elapsed time: %d.%03d seconds \n" -msgstr "Preostalo vrijeme: %d.%03d sekunda \n" - -#: grub-core/commands/time.c:61 -msgid "COMMAND [ARGS]" -msgstr "NAREDBA [ARGUMENTI]" - -#: grub-core/commands/time.c:62 -msgid "Measure time used by COMMAND" -msgstr "Mjeri vrijeme koristeći NAREDBU" - -#: grub-core/commands/tr.c:33 -msgid "Translate to upper case." -msgstr "Prevedi u velika slova." - -#: grub-core/commands/tr.c:34 -msgid "Translate to lower case." -msgstr "Prevedi u mala slova." - -#: grub-core/commands/tr.c:119 -msgid "[OPTIONS] [SET1] [SET2] [STRING]" -msgstr "[MOGUĆNOSTI] [POSTAVKA1] [POSTAVKA2] [NIZ]" - -#: grub-core/commands/tr.c:120 -msgid "Translate SET1 characters to SET2 in STRING." -msgstr "Prevedi POSTAVKA1 znakove u POSTAVKA2 u NIZU." - -#. TRANSLATORS: it's a command description. -#: grub-core/commands/true.c:50 -msgid "Do nothing, successfully." -msgstr "Ne Äini niÅ¡ta, uspjeÅ¡no." - -#. TRANSLATORS: it's a command description. -#: grub-core/commands/true.c:54 -msgid "Do nothing, unsuccessfully." -msgstr "Ne Äini niÅ¡ta, neuspjeÅ¡no." - -#: grub-core/commands/usbtest.c:221 -msgid "Test USB support." -msgstr "Testiraj USB podrÅ¡ku." - -#: grub-core/commands/verifiers.c:120 -#, c-format -msgid "verification requested but nobody cares: %s" -msgstr "provjera je zatražena ali, nikoga nije briga: %s" - -#: grub-core/commands/verifiers.c:140 -msgid "big file signature isn't implemented yet" -msgstr "potpis velike datoteke joÅ¡ nije implementiran" - -#: grub-core/commands/videoinfo.c:61 -msgid "Text-only " -msgstr "Samo-tekst " - -#. TRANSLATORS: "Direct color" is a mode when the color components -#. are written dirrectly into memory. -#: grub-core/commands/videoinfo.c:66 -#, c-format -msgid "Direct color, mask: %d/%d/%d/%d pos: %d/%d/%d/%d" -msgstr "Izravna boja, maska: %d/%d/%d/%d položaj: %d/%d/%d/%d" - -#. TRANSLATORS: In "paletted color" mode you write the index of the color -#. in the palette. Synonyms include "packed pixel". -#: grub-core/commands/videoinfo.c:78 -msgid "Paletted " -msgstr "Paleta " - -#: grub-core/commands/videoinfo.c:80 -msgid "YUV " -msgstr "YUV " - -#. TRANSLATORS: "Planar" is the video memory where you have to write -#. in several different banks "plans" to control the different color -#. components of the same pixel. -#: grub-core/commands/videoinfo.c:85 -msgid "Planar " -msgstr "Planer " - -#: grub-core/commands/videoinfo.c:87 -msgid "Hercules " -msgstr "Herkul " - -#: grub-core/commands/videoinfo.c:89 -msgid "CGA " -msgstr "CGA " - -#. TRANSLATORS: Non-chain 4 is a 256-color planar -#. (unchained) video memory mode. -#: grub-core/commands/videoinfo.c:93 -msgid "Non-chain 4 " -msgstr "Ne-ulanÄani naÄin 4" - -#: grub-core/commands/videoinfo.c:95 -msgid "Monochrome " -msgstr "Crno bijelo " - -#: grub-core/commands/videoinfo.c:97 -msgid "Unknown video mode " -msgstr "Nepoznat video naÄin rada " - -#: grub-core/commands/videoinfo.c:111 -msgid " EDID checksum invalid" -msgstr " neispravan EDID zbroj jedinstvene vrijednosti" - -#: grub-core/commands/videoinfo.c:116 -#, c-format -msgid " EDID version: %u.%u\n" -msgstr " EDID inaÄica: %u.%u\n" - -#: grub-core/commands/videoinfo.c:120 -#, c-format -msgid " Preferred mode: %ux%u\n" -msgstr " Poželjan naÄin: %ux%u\n" - -#: grub-core/commands/videoinfo.c:123 -msgid " No preferred mode available\n" -msgstr " Poželjan naÄin nije dostupan\n" - -#: grub-core/commands/videoinfo.c:146 grub-core/video/video.c:490 -#: grub-core/video/video.c:498 grub-core/video/video.c:509 -#: grub-core/video/video.c:520 grub-core/video/video.c:528 -#, c-format -msgid "invalid video mode specification `%s'" -msgstr "neispravna pojedinost video naÄina rada `%s'" - -#: grub-core/commands/videoinfo.c:168 -msgid "List of supported video modes:" -msgstr "Popis podržanih video naÄina rada:" - -#: grub-core/commands/videoinfo.c:169 -msgid "Legend: mask/position=red/green/blue/reserved" -msgstr "Legenda: maska/položaj=crvena/zelena/plava/rezervirano" - -#: grub-core/commands/videoinfo.c:176 -#, c-format -msgid "Adapter `%s':\n" -msgstr "UreÄ‘aj `%s':\n" - -#: grub-core/commands/videoinfo.c:180 -msgid " No info available" -msgstr " Nema dostupnih informacija" - -#: grub-core/commands/videoinfo.c:198 -msgid " Failed to initialize video adapter" -msgstr " Neuspjelo pokretanje video ureÄ‘aja" - -#. TRANSLATORS: "x" has to be entered in, -#. like an identifier, so please don't -#. use better Unicode codepoints. -#: grub-core/commands/videoinfo.c:239 grub-core/commands/videoinfo.c:248 -msgid "[WxH[xD]]" -msgstr "[Å xV[xD]]" - -#: grub-core/commands/videoinfo.c:240 grub-core/commands/videoinfo.c:249 -msgid "" -"List available video modes. If resolution is given show only modes matching " -"it." -msgstr "" -"Popis dostupnih video naÄina rada. Ako je razluÄivost zadana prikazuje se " -"samo odgovarajući naÄini rada." - -#. TRANSLATORS: "x" has to be entered in, -#. like an identifier, so please don't -#. use better Unicode codepoints. -#: grub-core/commands/videotest.c:225 -msgid "[WxH]" -msgstr "[Å xV]" - -#. TRANSLATORS: Here, on the other hand, it's -#. nicer to use unicode cross instead of x. -#: grub-core/commands/videotest.c:228 -msgid "Test video subsystem in mode WxH." -msgstr "Testiraj video podsustav u naÄinu rada Å xV." - -#: grub-core/commands/videotest.c:231 -msgid "Test video subsystem." -msgstr "Testiraj video podsustav." - -#: grub-core/commands/xen/lsxen.c:80 grub-core/commands/xen/lsxen.c:82 -msgid "[DIR]" -msgstr "[DIR]" - -#: grub-core/commands/xen/lsxen.c:81 grub-core/commands/xen/lsxen.c:83 -msgid "List Xen storage." -msgstr "Prikaži Xen pohranu." - -#. TRANSLATORS: GRUBUUID stands for "filesystem -#. UUID as used in GRUB". -#: grub-core/commands/xnu_uuid.c:110 -msgid "[-l] GRUBUUID [VARNAME]" -msgstr "[-l] GRUBUUID [VAR NAZIV]" - -#: grub-core/commands/xnu_uuid.c:111 -msgid "" -"Transform 64-bit UUID to format suitable for XNU. If -l is given keep it " -"lowercase as done by blkid." -msgstr "" -"Pretvori 64-bitni UUID u format prikladan za XNU. Ako je -l zadan zadrži " -"mala slova kako je zadano s blkid-om." - -#: grub-core/disk/arc/arcdisk.c:248 grub-core/disk/efi/efidisk.c:603 -#: grub-core/disk/i386/pc/biosdisk.c:498 grub-core/disk/i386/pc/biosdisk.c:543 -#: grub-core/disk/ieee1275/nand.c:198 grub-core/disk/ieee1275/obdisk.c:527 -#: grub-core/disk/ieee1275/ofdisk.c:586 -#, c-format -msgid "failure reading sector 0x%llx from `%s'" -msgstr "neuspjelo Äitanje sektora 0x%llx s `%s'" - -#: grub-core/disk/arc/arcdisk.c:284 grub-core/disk/efi/efidisk.c:626 -#: grub-core/disk/i386/pc/biosdisk.c:548 grub-core/disk/ieee1275/ofdisk.c:606 -#, c-format -msgid "failure writing sector 0x%llx to `%s'" -msgstr "neuspjelo zapisivanje sektora 0x%llx u `%s'" - -#: grub-core/disk/cryptodisk.c:40 -msgid "Mount by UUID." -msgstr "Montiraj prema UUID-u." - -#. TRANSLATORS: It's still restricted to cryptodisks only. -#: grub-core/disk/cryptodisk.c:42 -msgid "Mount all." -msgstr "Montiraj sve." - -#: grub-core/disk/cryptodisk.c:43 -msgid "Mount all volumes with `boot' flag set." -msgstr "Montiraj sve ureÄ‘aje s postavljenom`boot' oznakom." - -#. TRANSLATORS: The first %s is the file being looked at, the second %s is -#. the error message. -#: grub-core/disk/cryptodisk.c:526 grub-core/kern/emu/hostdisk.c:152 -#: grub-core/kern/emu/hostdisk.c:262 grub-core/kern/emu/hostdisk.c:434 -#: grub-core/kern/emu/misc.c:168 grub-core/kern/emu/misc.c:174 -#: grub-core/kern/emu/misc.c:196 grub-core/osdep/bsd/getroot.c:92 -#: grub-core/osdep/bsd/getroot.c:168 grub-core/osdep/hurd/getroot.c:68 -#: grub-core/osdep/linux/blocklist.c:65 grub-core/osdep/linux/getroot.c:150 -#: grub-core/osdep/linux/hostdisk.c:194 grub-core/osdep/linux/hostdisk.c:421 -#: grub-core/osdep/linux/ofpath.c:417 grub-core/osdep/linux/ofpath.c:422 -#: grub-core/osdep/linux/ofpath.c:517 grub-core/osdep/linux/ofpath.c:530 -#: grub-core/osdep/sun/getroot.c:110 grub-core/osdep/windows/blocklist.c:98 -#: grub-core/tests/video_checksum.c:279 util/editenv.c:46 util/glue-efi.c:115 -#: util/glue-efi.c:120 util/glue-efi.c:130 util/grub-editenv.c:138 -#: util/grub-editenv.c:192 util/grub-file.c:83 util/grub-fstest.c:128 -#: util/grub-fstest.c:568 util/grub-install-common.c:92 -#: util/grub-install-common.c:94 util/grub-install-common.c:101 -#: util/grub-install-common.c:529 util/grub-menulst2cfg.c:53 -#: util/grub-menulst2cfg.c:68 util/grub-mkimage.c:292 util/grub-mklayout.c:504 -#: util/grub-mklayout.c:516 util/grub-mknetdir.c:133 util/grub-mknetdir.c:151 -#: util/grub-mkrescue.c:627 util/grub-mkrescue.c:631 util/grub-mkrescue.c:879 -#: util/grub-mkrescue.c:883 util/grub-mkstandalone.c:253 util/grub-mount.c:498 -#: util/grub-render-label.c:169 util/grub-script-check.c:175 -#: util/grub-syslinux2cfg.c:181 util/grub-syslinux2cfg.c:191 -#: util/grub-syslinux2cfg.c:212 util/grub-syslinux2cfg.c:228 util/misc.c:91 -#: util/render-label.c:76 util/render-label.c:163 util/render-label.c:174 -#: util/resolve.c:246 util/setup.c:783 -#, c-format -msgid "cannot open `%s': %s" -msgstr "nemoguće otvoriti `%s': %s" - -#: grub-core/disk/cryptodisk.c:583 grub-core/disk/cryptodisk.c:628 -#: grub-core/kern/emu/hostdisk.c:270 grub-core/kern/emu/hostfs.c:142 -#: grub-core/osdep/linux/hostdisk.c:456 util/grub-editenv.c:143 -#: util/grub-editenv.c:149 util/grub-fstest.c:320 util/misc.c:111 -#, c-format -msgid "cannot seek `%s': %s" -msgstr "nemoguća pretraga `%s': %s" - -#: grub-core/disk/cryptodisk.c:1144 -msgid "SOURCE|-u UUID|-a|-b" -msgstr "IZVOR|-u UUID|-a|-b" - -#: grub-core/disk/cryptodisk.c:1145 -msgid "Mount a crypto device." -msgstr "Montiraj Å¡ifrirani ureÄ‘aj." - -#. TRANSLATORS: This message kicks in during the detection of -#. which modules needs to be included in core image. This happens -#. in the case of degraded RAID and means that autodetection may -#. fail to include some of modules. It's an installation time -#. message, not runtime message. -#: grub-core/disk/diskfilter.c:343 grub-core/disk/diskfilter.c:376 -#, c-format -msgid "" -"Couldn't find physical volume `%s'. Some modules may be missing from core " -"image." -msgstr "" -"Nemoguć pronalazak fiziÄkog ureÄ‘aja `%s'. Neki moduli možda nedostaju u " -"slici jezgre." - -#: grub-core/disk/diskfilter.c:480 -#, c-format -msgid "physical volume %s not found" -msgstr "fiziÄki ureÄ‘aj %s nije pronaÄ‘en" - -#: grub-core/disk/efi/efidisk.c:600 grub-core/disk/efi/efidisk.c:623 -#, c-format -msgid "no media in `%s'" -msgstr "nema medija u `%s'" - -#: grub-core/disk/geli.c:75 -msgid "Couldn't load sha256" -msgstr "Nemoguće uÄitavanje sha256" - -#: grub-core/disk/geli.c:85 -msgid "Couldn't load sha512" -msgstr "Nemoguće uÄitavanje sha512" - -#: grub-core/disk/geli.c:216 grub-core/disk/geli.c:220 -msgid "couldn't read ELI metadata" -msgstr "nemoguće Äitanje ELI meta podataka" - -#: grub-core/disk/geli.c:231 -msgid "wrong ELI magic or version" -msgstr "pogreÅ¡an ELI magic ili inaÄica" - -#: grub-core/disk/geli.c:435 grub-core/disk/luks.c:329 -msgid "Attempting to decrypt master key..." -msgstr "PokuÅ¡aj deÅ¡ifriranja glavnog kljuÄa..." - -#: grub-core/disk/geli.c:441 grub-core/disk/luks.c:347 -#, c-format -msgid "Enter passphrase for %s%s%s (%s): " -msgstr "UpiÅ¡ite lozinku za %s%s%s (%s): " - -#. TRANSLATORS: It's a cryptographic key slot: one element of an array -#. where each element is either empty or holds a key. -#: grub-core/disk/geli.c:530 grub-core/disk/luks.c:451 -#, c-format -msgid "Slot %d opened\n" -msgstr "Utor %d je otvoren\n" - -#: grub-core/disk/i386/pc/biosdisk.c:470 grub-core/disk/i386/pc/biosdisk.c:524 -#: grub-core/disk/i386/pc/biosdisk.c:534 grub-core/kern/disk_common.c:47 -#, c-format -msgid "attempt to read or write outside of disk `%s'" -msgstr "pokuÅ¡aj Äitanja ili zapisivanja izvan diska `%s'" - -#: grub-core/disk/i386/pc/biosdisk.c:491 grub-core/disk/i386/pc/biosdisk.c:611 -#: grub-core/disk/scsi.c:726 -msgid "cannot write to CD-ROM" -msgstr "nemoguće zapisivanje na CD-ROM" - -#: grub-core/disk/i386/pc/biosdisk.c:662 -msgid "" -"Native disk drivers are in use. Refusing to use firmware disk interface." -msgstr "" -"Izvorni upravljaÄki program diska se koristi. Odbijanje koriÅ¡tenja suÄelja " -"firmvera diska." - -#. TRANSLATORS: it's a partition for embedding, -#. not a partition embed into something. GRUB -#. install tools put core.img into a place -#. usable for bootloaders (called generically -#. "embedding zone") and this operation is -#. called "embedding". -#: grub-core/disk/ldm.c:1015 -msgid "your LDM Embedding Partition is too small; embedding won't be possible" -msgstr "vaÅ¡a LDM particija umetanja je premala; ugradnja neće biti moguća" - -#. TRANSLATORS: it's a partition for embedding, -#. not a partition embed into something. -#: grub-core/disk/ldm.c:1033 -msgid "this LDM has no Embedding Partition; embedding won't be possible" -msgstr "ovaj LDM nema particije umetanja; ugradnja neće biti moguća" - -#. TRANSLATORS: The disk is simply removed from the list of available ones, -#. not wiped, avoid to scare user. -#: grub-core/disk/loopback.c:45 -msgid "Delete the specified loopback drive." -msgstr "ObriÅ¡i odreÄ‘eni virtualni disk." - -#: grub-core/disk/loopback.c:237 -msgid "[-d] DEVICENAME FILE." -msgstr "[-d] DATOTEKA NAZIVA UREÄAJA." - -#. TRANSLATORS: The file itself is not destroyed -#. or transformed into drive. -#: grub-core/disk/loopback.c:240 -msgid "Make a virtual drive from a file." -msgstr "Stvori virtualni ureÄ‘aj iz datoteke." - -#: grub-core/efiemu/i386/loadcore32.c:111 -#: grub-core/efiemu/i386/loadcore64.c:125 grub-core/kern/arm/dl.c:256 -#: grub-core/kern/arm64/dl.c:187 grub-core/kern/i386/dl.c:75 -#: grub-core/kern/ia64/dl.c:140 grub-core/kern/mips/dl.c:258 -#: grub-core/kern/powerpc/dl.c:163 grub-core/kern/riscv/dl.c:334 -#: grub-core/kern/sparc64/dl.c:180 grub-core/kern/x86_64/dl.c:110 -#: util/grub-mkimagexx.c:756 util/grub-mkimagexx.c:881 -#: util/grub-mkimagexx.c:945 util/grub-mkimagexx.c:1026 -#: util/grub-mkimagexx.c:1120 util/grub-mkimagexx.c:1222 -#: util/grub-mkimagexx.c:1413 util/grub-mkimagexx.c:1628 -#: util/grub-mkimagexx.c:1665 util/grub-mkimagexx.c:1697 -#: util/grub-mkimagexx.c:1767 util/grub-mkimagexx.c:1797 -#, c-format -msgid "relocation 0x%x is not implemented yet" -msgstr "izdvajanje 0x%x joÅ¡ nije implementirano" - -#: grub-core/efiemu/loadcore.c:200 grub-core/efiemu/loadcore.c:237 -#: grub-core/loader/i386/bsdXX.c:317 util/grub-mkimagexx.c:2360 -msgid "no symbol table" -msgstr "nema tablice simbola" - -#: grub-core/efiemu/loadcore.c:346 grub-core/kern/dl.c:609 -#: grub-core/loader/ia64/efi/linux.c:345 grub-core/loader/mips/linux.c:248 -#: grub-core/loader/multiboot_elfxx.c:76 -#: grub-core/loader/powerpc/ieee1275/linux.c:280 -#: grub-core/loader/sparc64/ieee1275/linux.c:320 -msgid "this ELF file is not of the right type" -msgstr "ova ELF datoteka nije ispravne vrste" - -#: grub-core/efiemu/main.c:313 -msgid "Load and initialize EFI emulator." -msgstr "UÄitaj i pokreni EFI emulator." - -#: grub-core/efiemu/main.c:317 -msgid "Finalize loading of EFI emulator." -msgstr "ZavrÅ¡i uÄitavanje EFI emulatora." - -#: grub-core/efiemu/main.c:320 -msgid "Unload EFI emulator." -msgstr "Ukloni EFI emulator." - -#: grub-core/efiemu/symbols.c:92 grub-core/kern/dl.c:376 -#, c-format -msgid "symbol `%s' not found" -msgstr "simbol `%s' nije pronaÄ‘en" - -#: grub-core/font/font_cmd.c:52 -msgid "Loaded fonts:" -msgstr "UÄitana slova:" - -#: grub-core/font/font_cmd.c:74 -msgid "FILE..." -msgstr "DATOTEKA..." - -#: grub-core/font/font_cmd.c:75 -msgid "Specify one or more font files to load." -msgstr "Odredi jedno ili viÅ¡e slova za uÄitavanje." - -#: grub-core/font/font_cmd.c:78 -msgid "List the loaded fonts." -msgstr "Prikaži uÄitana slova." - -#: grub-core/fs/archelp.c:216 grub-core/fs/archelp.c:278 -#: grub-core/fs/btrfs.c:1815 grub-core/fs/fshelp.c:227 grub-core/fs/jfs.c:736 -#: grub-core/fs/minix.c:369 grub-core/fs/ufs.c:454 -msgid "too deep nesting of symlinks" -msgstr "preduboko ugniježđenje simboliÄke poveznice" - -#: grub-core/fs/bfs.c:228 grub-core/fs/fshelp.c:368 grub-core/fs/minix.c:270 -#: grub-core/kern/file.c:156 -msgid "attempt to read past the end of file" -msgstr "pokuÅ¡aj Äitanja zavrÅ¡etka kraja datoteke" - -#: grub-core/fs/btrfs.c:1698 grub-core/fs/btrfs.c:1957 -#: grub-core/fs/fshelp.c:189 grub-core/fs/fshelp.c:309 grub-core/fs/jfs.c:431 -#: grub-core/fs/minix.c:414 grub-core/fs/minix.c:562 -#: grub-core/fs/reiserfs.c:732 grub-core/fs/ufs.c:531 grub-core/fs/ufs.c:671 -#: grub-core/fs/zfs/zfs.c:2831 grub-core/fs/zfs/zfs.c:4247 -msgid "not a directory" -msgstr "nije direktorij" - -#: grub-core/fs/btrfs.c:2063 grub-core/fs/fshelp.c:307 grub-core/fs/jfs.c:835 -#: grub-core/fs/zfs/zfs.c:3801 -msgid "not a regular file" -msgstr "nije obiÄna datoteka" - -#: grub-core/fs/btrfs.c:2157 grub-core/fs/zfs/zfs.c:4333 -#: grub-core/partmap/msdos.c:400 -msgid "your core.img is unusually large. It won't fit in the embedding area" -msgstr "vaÅ¡a core.img je neobiÄno velika. Neće stati u podruÄje ugradnje" - -#: grub-core/fs/fshelp.c:281 grub-core/fs/minix.c:630 grub-core/fs/ufs.c:661 -#: grub-core/fs/ufs.c:757 grub-core/kern/fs.c:168 grub-core/kern/fs.c:180 -#, c-format -msgid "invalid file name `%s'" -msgstr "neispravan naziv datoteke `%s'" - -#: grub-core/fs/zfs/zfs.c:453 -msgid "checksum verification failed" -msgstr "neuspjela provjera zbroja jedinstvene vrijednosti" - -#: grub-core/fs/zfs/zfs.c:1465 -msgid "couldn't find a necessary member device of multi-device filesystem" -msgstr "" -"nemoguć pronalazak potrebnog Älana ureÄ‘aja viÅ¡estrukog datoteÄnog sustava" - -#: grub-core/fs/zfs/zfscrypt.c:292 -msgid "no decryption key available" -msgstr "kljuÄ deÅ¡ifriranja je nedostupan" - -#: grub-core/fs/zfs/zfscrypt.c:304 -msgid "MAC verification failed" -msgstr "MAC provjera neuspjela" - -#: grub-core/fs/zfs/zfscrypt.c:413 -msgid "Assume input is raw." -msgstr "Pretpostavi da je ulaz osnovan." - -#: grub-core/fs/zfs/zfscrypt.c:414 -msgid "Assume input is hex." -msgstr "Pretpostavi da je ulaz heksadecimalan." - -#: grub-core/fs/zfs/zfscrypt.c:415 -msgid "Assume input is passphrase." -msgstr "Pretpostavi da je ulaz lozinka." - -#: grub-core/fs/zfs/zfscrypt.c:437 util/grub-fstest.c:553 util/grub-mount.c:483 -msgid "Enter ZFS password: " -msgstr "UpiÅ¡i ZFS lozinku: " - -#: grub-core/fs/zfs/zfscrypt.c:476 -msgid "[-h|-p|-r] [FILE]" -msgstr "[-h|-p|-r] [DATOTEKA]" - -#: grub-core/fs/zfs/zfscrypt.c:477 -msgid "Import ZFS wrapping key stored in FILE." -msgstr "Uvezi ZFS upakirani kljuÄ spermljen u DATOTECI." - -#: grub-core/fs/zfs/zfsinfo.c:51 -msgid "Virtual device is removed" -msgstr "Virtualni ureÄ‘aj je uklonjen" - -#: grub-core/fs/zfs/zfsinfo.c:57 -msgid "Virtual device is faulted" -msgstr "Virtualni ureÄ‘aj je oÅ¡tećen" - -#: grub-core/fs/zfs/zfsinfo.c:63 -msgid "Virtual device is offline" -msgstr "Virtualni ureÄ‘aj je iskljuÄen" - -#. TRANSLATORS: degraded doesn't mean broken but that some of -#. component are missing but virtual device as whole is still usable. -#: grub-core/fs/zfs/zfsinfo.c:70 -msgid "Virtual device is degraded" -msgstr "Virtualni ureÄ‘aj je degradiran" - -#: grub-core/fs/zfs/zfsinfo.c:73 -msgid "Virtual device is online" -msgstr "Virtualni ureÄ‘aj je ukljuÄen" - -#: grub-core/fs/zfs/zfsinfo.c:89 -msgid "Incorrect virtual device: no type available" -msgstr "Neispravan virtualni ureÄ‘aj: vrsta nije dostupna" - -#. TRANSLATORS: The virtual devices form a tree (in graph-theoretical -#. sense). The nodes like mirror or raidz have children: member devices. -#. The "real" devices which actually store data are called "leafs" -#. (again borrowed from graph theory) and can be either disks -#. (or partitions) or files. -#: grub-core/fs/zfs/zfsinfo.c:105 -msgid "Leaf virtual device (file or disk)" -msgstr "Stvarni virtualni ureÄ‘aji (datoteka ili disk)" - -#: grub-core/fs/zfs/zfsinfo.c:113 -msgid "Bootpath: unavailable\n" -msgstr "Putanja pokretanja: nedostupna\n" - -#: grub-core/fs/zfs/zfsinfo.c:115 -#, c-format -msgid "Bootpath: %s\n" -msgstr "Putanja pokretanja: %s\n" - -#: grub-core/fs/zfs/zfsinfo.c:120 -msgid "Path: unavailable" -msgstr "Putanja: nedostupna" - -#: grub-core/fs/zfs/zfsinfo.c:122 -#, c-format -msgid "Path: %s\n" -msgstr "Putanja: %s\n" - -#: grub-core/fs/zfs/zfsinfo.c:127 -msgid "Devid: unavailable" -msgstr "ID ureÄ‘aja: nedostupan" - -#: grub-core/fs/zfs/zfsinfo.c:129 -#, c-format -msgid "Devid: %s\n" -msgstr "ID ureÄ‘aja: %s\n" - -#: grub-core/fs/zfs/zfsinfo.c:148 -msgid "This VDEV is a mirror" -msgstr "Ovaj virtualni ureÄ‘aj je zrcalni" - -#: grub-core/fs/zfs/zfsinfo.c:153 -#, c-format -msgid "This VDEV is a RAIDZ%llu\n" -msgstr "Ovaj virtualni ureÄ‘aj je RAIDZ%llu\n" - -#: grub-core/fs/zfs/zfsinfo.c:158 -msgid "Incorrect VDEV" -msgstr "Neispravan virtualni ureÄ‘aj" - -#: grub-core/fs/zfs/zfsinfo.c:161 -#, c-format -msgid "VDEV with %d children\n" -msgstr "Virtualni ureÄ‘aj s %d podreÄ‘enim\n" - -#. TRANSLATORS: it's the element carying the number %d, not -#. total element number. And the number itself is fine, -#. only the element isn't. -#. -#: grub-core/fs/zfs/zfsinfo.c:177 -#, c-format -msgid "VDEV element number %d isn't correct\n" -msgstr "Broj elementa virtualnog ureÄ‘aja %d nije ispravan\n" - -#. TRANSLATORS: it's the element carying the number %d, not -#. total element number. This is used in enumeration -#. "Element number 1", "Element number 2", ... -#: grub-core/fs/zfs/zfsinfo.c:184 -#, c-format -msgid "VDEV element number %d:\n" -msgstr "Broj elementa virtualnog ureÄ‘aja %d:\n" - -#: grub-core/fs/zfs/zfsinfo.c:193 -#, c-format -msgid "Unknown virtual device type: %s\n" -msgstr "Nepoznata vrsta virtualnog ureÄ‘aja: %s\n" - -#. TRANSLATORS: Here we speak about ZFS pools it's semi-marketing, -#. semi-technical term by Sun/Oracle and should be translated in sync with -#. other ZFS-related software and documentation. -#: grub-core/fs/zfs/zfsinfo.c:254 -msgid "Pool state: active" -msgstr "Stanje prostora pohrane: aktivno" - -#: grub-core/fs/zfs/zfsinfo.c:255 -msgid "Pool state: exported" -msgstr "Stanje prostora pohrane: izvezeno" - -#: grub-core/fs/zfs/zfsinfo.c:256 -msgid "Pool state: destroyed" -msgstr "Stanje prostora pohrane: uniÅ¡teno" - -#: grub-core/fs/zfs/zfsinfo.c:257 -msgid "Pool state: reserved for hot spare" -msgstr "Stanje prostora pohrane: rezervirano za oÅ¡tećenje diska" - -#: grub-core/fs/zfs/zfsinfo.c:258 -msgid "Pool state: level 2 ARC device" -msgstr "Stanje prostora pohrane: razina 2 ARC ureÄ‘aja" - -#: grub-core/fs/zfs/zfsinfo.c:259 -msgid "Pool state: uninitialized" -msgstr "Stanje prostora pohrane: nepokrenuto" - -#: grub-core/fs/zfs/zfsinfo.c:260 -msgid "Pool state: unavailable" -msgstr "Stanje prostora pohrane: nedostupno" - -#: grub-core/fs/zfs/zfsinfo.c:261 -msgid "Pool state: potentially active" -msgstr "Stanje prostora pohrane: potencijalno aktivno" - -#: grub-core/fs/zfs/zfsinfo.c:306 -msgid "Pool name: unavailable" -msgstr "Naziv prostora pohrane: nedostupan" - -#: grub-core/fs/zfs/zfsinfo.c:308 -#, c-format -msgid "Pool name: %s\n" -msgstr "Naziv prostora pohrane: %s\n" - -#: grub-core/fs/zfs/zfsinfo.c:313 -msgid "Pool GUID: unavailable" -msgstr "GUID prostora pohrane: nedostupan" - -#: grub-core/fs/zfs/zfsinfo.c:315 -#, c-format -msgid "Pool GUID: %016llx\n" -msgstr "GUID prostora pohrane: %016llx\n" - -#: grub-core/fs/zfs/zfsinfo.c:320 -msgid "Unable to retrieve pool state" -msgstr "Neuspjelo primanje stanja prostora pohrane" - -#: grub-core/fs/zfs/zfsinfo.c:322 -msgid "Unrecognized pool state" -msgstr "Neprepoznato stanje prostora pohrane" - -#. TRANSLATORS: There are undetermined number of virtual devices -#. in a device tree, not just one. -#. -#: grub-core/fs/zfs/zfsinfo.c:332 -msgid "No virtual device tree available" -msgstr "Nema dostupnog stabla virtualnog ureÄ‘aja" - -#: grub-core/fs/zfs/zfsinfo.c:431 -msgid "Print ZFS info about DEVICE." -msgstr "IspiÅ¡i ZFS informacije o UREÄAJU." - -#: grub-core/fs/zfs/zfsinfo.c:433 -msgid "FILESYSTEM [VARIABLE]" -msgstr "DATOTEÄŒNI UREÄAJ [VARIJABLA]" - -#: grub-core/fs/zfs/zfsinfo.c:434 -msgid "Print ZFS-BOOTFSOBJ or store it into VARIABLE" -msgstr "Prikaži ZFS-BOOTFSOBJ ili spremi u VARIJABLU" - -#. TRANSLATORS: at this position GRUB waits for the user to do an action -#. in remote debugger, namely to tell it to establish connection. -#: grub-core/gdb/gdb.c:48 -msgid "Now connect the remote debugger, please." -msgstr "Sada povežite udaljeni program pronalaženja greÅ¡aka." - -#. TRANSLATORS: GDB stub is a small part of -#. GDB functionality running on local host -#. which allows remote debugger to -#. connect to it. -#: grub-core/gdb/gdb.c:84 -msgid "Start GDB stub on given port" -msgstr "Pokreni GDB stub na danom ulazu" - -#. TRANSLATORS: this refers to triggering -#. a breakpoint so that the user will land -#. into GDB. -#: grub-core/gdb/gdb.c:89 -msgid "Break into GDB" -msgstr "UÄ‘i u GDB" - -#: grub-core/gdb/gdb.c:91 -msgid "Stop GDB stub" -msgstr "Zaustavi GDB stub" - -#: grub-core/gettext/gettext.c:85 -msgid "premature end of file" -msgstr "prijevremeni zavrÅ¡etak datoteke" - -#. TRANSLATORS: It refers to passing the string through gettext. -#. So it's "translate" in the same meaning as in what you're -#. doing now. -#. -#: grub-core/gettext/gettext.c:525 -msgid "Translates the string with the current settings." -msgstr "PrevaÄ‘a znakovni niz s trenutnim postavkama." - -#: grub-core/gfxmenu/gui_label.c:186 grub-core/normal/menu_text.c:184 -msgid "" -"Press enter to boot the selected OS, `e' to edit the commands before booting " -"or `c' for a command-line. ESC to return previous menu." -msgstr "" -"Pritisnite Enter za pokretanje odabranog OS-a, `e' za ureÄ‘ivanje naredbi " -"prije pokretanja ili `c' za naredbeni redak. ESC za povratak u prijaÅ¡nji " -"izbornik." - -#: grub-core/gfxmenu/gui_label.c:190 grub-core/normal/menu_text.c:192 -msgid "" -"Press enter to boot the selected OS, `e' to edit the commands before booting " -"or `c' for a command-line." -msgstr "" -"Pritisnite Enter za pokretanje odabranog OS-a, `e' za ureÄ‘ivanje naredbi " -"prije pokretanja ili `c' za naredbeni redak." - -#: grub-core/gfxmenu/gui_label.c:194 -msgid "enter: boot, `e': options, `c': cmd-line" -msgstr "enter: pokretanje, `e': mogućnosti, `c': naredbeni-redak" - -#: grub-core/gfxmenu/gui_progress_bar.c:339 grub-core/normal/menu_text.c:446 -#, c-format -msgid "The highlighted entry will be executed automatically in %ds." -msgstr "Odabrana stavka će se automatski pokrenuti za %ds." - -#. TRANSLATORS: 's' stands for seconds. -#. It's a standalone timeout notification. -#. Please use the short form in your language. -#: grub-core/gfxmenu/gui_progress_bar.c:344 -#, c-format -msgid "%ds remaining." -msgstr "%ds preostalo." - -#. TRANSLATORS: 's' stands for seconds. -#. It's a standalone timeout notification. -#. Please use the shortest form available in you language. -#: grub-core/gfxmenu/gui_progress_bar.c:349 grub-core/normal/menu_text.c:444 -#: grub-core/normal/menu_text.c:462 -#, c-format -msgid "%ds" -msgstr "%ds" - -#: grub-core/gfxmenu/view.c:103 -msgid "GRUB Boot Menu" -msgstr "GRUB izbornik pokretanja sustava" - -#: grub-core/hello/hello.c:36 -msgid "Hello World" -msgstr "Pozdrav svijete" - -#: grub-core/hello/hello.c:45 -msgid "Say `Hello World'." -msgstr "Reci 'Pozdrav svijete'." - -#: grub-core/io/gzio.c:409 grub-core/kern/file.c:210 -msgid "attempt to seek outside of the file" -msgstr "pokuÅ¡aj pretrage izvan datoteke" - -#. TRANSLATORS: It's about given file having some strange format, not -#. complete lack of gzip support. -#: grub-core/io/gzio.c:1228 grub-core/io/gzio.c:1237 grub-core/io/gzio.c:1244 -msgid "unsupported gzip format" -msgstr "nepodržan gzip format" - -#: grub-core/io/lzopio.c:511 -msgid "lzop file corrupted" -msgstr "lzop datoteka oÅ¡tećena" - -#: grub-core/io/xzio.c:278 -msgid "xz file corrupted or unsupported block options" -msgstr "xz datoteka oÅ¡tećena ili ima nepodržanu mogućnost bloka" - -#: grub-core/kern/arm/dl.c:277 grub-core/kern/arm64/dl.c:44 -#: grub-core/kern/i386/dl.c:36 grub-core/kern/ia64/dl.c:41 -#: grub-core/kern/mips/dl.c:48 grub-core/kern/powerpc/dl.c:36 -#: grub-core/kern/riscv/dl.c:47 grub-core/kern/sparc64/dl.c:36 -#: grub-core/kern/x86_64/dl.c:36 grub-core/loader/i386/bsd.c:1445 -#: grub-core/loader/i386/bsdXX.c:49 grub-core/loader/ia64/efi/linux.c:341 -#: grub-core/loader/mips/linux.c:298 grub-core/loader/multiboot.c:232 -#: grub-core/loader/multiboot_elfxx.c:73 -#: grub-core/loader/powerpc/ieee1275/linux.c:294 -#: grub-core/loader/sparc64/ieee1275/linux.c:331 -msgid "invalid arch-dependent ELF magic" -msgstr "neispravan arch-dependent ELF magic" - -#: grub-core/kern/corecmd.c:178 -msgid "[ENVVAR=VALUE]" -msgstr "[ENVVAR=VARIJABLA]" - -#: grub-core/kern/corecmd.c:179 -msgid "Set an environment variable." -msgstr "Postavi varijablu okruženja." - -#: grub-core/kern/corecmd.c:183 -msgid "ENVVAR" -msgstr "ENVVAR" - -#: grub-core/kern/corecmd.c:184 -msgid "Remove an environment variable." -msgstr "Ukloni varijablu okruženja." - -#: grub-core/kern/corecmd.c:186 -msgid "[ARG]" -msgstr "[ARG]" - -#: grub-core/kern/corecmd.c:186 -msgid "List devices or files." -msgstr "Prikaži ureÄ‘aje ili datoteke." - -#: grub-core/kern/corecmd.c:188 -msgid "Insert a module." -msgstr "Umetni modul." - -#: grub-core/kern/disk.c:236 grub-core/net/net.c:1390 -#, c-format -msgid "disk `%s' not found" -msgstr "disk `%s' nije pronaÄ‘en" - -#: grub-core/kern/disk_common.c:27 -msgid "attempt to read or write outside of partition" -msgstr "pokuÅ¡aj Äitanja i zapisivanja izvan particije" - -#: grub-core/kern/dl.c:212 grub-core/kern/elf.c:61 grub-core/kern/elf.c:79 -#: grub-core/loader/i386/bsdXX.c:46 grub-core/loader/ia64/efi/linux.c:335 -#: grub-core/loader/multiboot_elfxx.c:69 -msgid "invalid arch-independent ELF magic" -msgstr "neispravan arch-independent ELF magic" - -#. TRANSLATORS: it refers to the lack of free slots. -#: grub-core/kern/emu/hostdisk.c:208 grub-core/kern/emu/hostdisk.c:466 -msgid "device count exceeds limit" -msgstr "ograniÄenje broja ureÄ‘aja dostignuto" - -#: grub-core/kern/emu/hostdisk.c:342 util/editenv.c:54 util/grub-editenv.c:197 -#: util/grub-fstest.c:191 util/grub-mkfont.c:796 util/misc.c:114 -#: util/misc.c:129 util/setup.c:788 -#, c-format -msgid "cannot write to `%s': %s" -msgstr "nemoguće zapisati `%s': %s" - -#. TRANSLATORS: Only one entry is ignored. However the suggestion -#. is to correct/delete the whole file. -#. device.map is a file indicating which -#. devices are available at boot time. Fedora populated it with -#. entries like (hd0,1) /dev/sda1 which would mean that every -#. partition is a separate disk for BIOS. Such entries were -#. inactive in GRUB due to its bug which is now gone. Without -#. this additional check these entries would be harmful now. -#. -#: grub-core/kern/emu/hostdisk.c:503 -#, c-format -msgid "" -"the device.map entry `%s' is invalid. Ignoring it. Please correct or delete " -"your device.map" -msgstr "" -"device.map unos `%s' je neisprvan. Zanemarujem ga. Ispravite ili obriÅ¡ite " -"vaÅ¡ device.map" - -#. TRANSLATORS: device.map is a filename. Not to be translated. -#. device.map specifies disk correspondance overrides. Previously -#. one could create any kind of device name with this. Due to -#. some problems we decided to limit it to just a handful -#. possibilities. -#: grub-core/kern/emu/hostdisk.c:555 -#, c-format -msgid "" -"the drive name `%s' in device.map is incorrect. Using %s instead. Please use " -"the form [hfc]d[0-9]* (E.g. `hd0' or `cd')" -msgstr "" -"naziv ureÄ‘aja `%s' u device.map je neispravan. Koristite %s u zamjenu. " -"Koristite oblik [hfc]d[0-9]* (Npr. `hd0' ili `cd')" - -#: grub-core/kern/emu/hostfs.c:76 grub-core/kern/emu/hostfs.c:109 -#, c-format -msgid "can't open `%s': %s" -msgstr "nemoguće otvaranje `%s': %s" - -#: grub-core/kern/emu/main.c:99 util/grub-fstest.c:516 util/grub-mount.c:452 -msgid "DEVICE_NAME" -msgstr "NAZIV_UREÄAJA" - -#: grub-core/kern/emu/main.c:99 grub-core/loader/i386/bsd.c:136 -#: grub-core/loader/i386/bsd.c:169 util/grub-fstest.c:516 util/grub-mount.c:452 -msgid "Set root device." -msgstr "Postavi korijenski ureÄ‘aj." - -#. TRANSLATORS: There are many devices in device map. -#: grub-core/kern/emu/main.c:102 util/grub-probe.c:733 util/grub-setup.c:85 -#, c-format -msgid "use FILE as the device map [default=%s]" -msgstr "koristi DATOTEKU kao mapu ureÄ‘aja [uobiÄajeno=%s]" - -#. TRANSLATORS: There are many devices in device map. -#: grub-core/kern/emu/main.c:105 -msgid "use FILE as memdisk" -msgstr "koristi DATOTEKU kao memdisk" - -#: grub-core/kern/emu/main.c:107 util/grub-setup.c:83 -#, c-format -msgid "use GRUB files in the directory DIR [default=%s]" -msgstr "koristi GRUB datoteke u direktoriju DIR [zadano=%s]" - -#: grub-core/kern/emu/main.c:108 include/grub/util/install.h:67 -#: util/grub-editenv.c:58 util/grub-fstest.c:525 util/grub-glue-efi.c:58 -#: util/grub-macbless.c:104 util/grub-mkfont.c:962 util/grub-mkimage.c:84 -#: util/grub-mklayout.c:56 util/grub-mount.c:458 util/grub-probe.c:735 -#: util/grub-render-label.c:74 util/grub-script-check.c:52 util/grub-setup.c:90 -#: util/grub-syslinux2cfg.c:78 -msgid "print verbose messages." -msgstr "ispiÅ¡i opÅ¡irnije poruke." - -#: grub-core/kern/emu/main.c:109 grub-core/lib/gnulib/argp-parse.c:85 -msgid "SECS" -msgstr "SEK" - -#: grub-core/kern/emu/main.c:109 -msgid "wait until a debugger will attach" -msgstr "Äekaj dok se program otklanjanja greÅ¡ke poveže" - -#: grub-core/kern/emu/main.c:171 util/grub-macbless.c:143 -#: util/grub-mkrelpath.c:61 util/grub-probe.c:874 util/grub-script-check.c:75 -#: util/grub-setup.c:203 -#, c-format -msgid "Unknown extra argument `%s'." -msgstr "Nepoznati dodatni `%s' argument." - -#: grub-core/kern/emu/main.c:185 -msgid "GRUB emulator." -msgstr "GRUB emulator." - -#: grub-core/kern/emu/main.c:213 util/grub-editenv.c:262 -#: util/grub-glue-efi.c:110 util/grub-macbless.c:173 util/grub-mkfont.c:1177 -#: util/grub-mkimage.c:266 util/grub-mklayout.c:494 -#: util/grub-mkpasswd-pbkdf2.c:132 util/grub-mkrelpath.c:96 -#: util/grub-probe.c:863 util/grub-render-label.c:152 -#: util/grub-script-check.c:160 util/grub-setup.c:262 -#: util/grub-syslinux2cfg.c:163 -msgid "Error in parsing command line arguments\n" -msgstr "GreÅ¡ka obrade argumenta naredbenog redka\n" - -#. TRANSLATORS: In this case GRUB tells user what he has to do. -#: grub-core/kern/emu/main.c:248 -#, c-format -msgid "Run `gdb %s %d', and set ARGS.HOLD to zero.\n" -msgstr "Pokreni `gdb %s %d', i postavi ARGS.HOLD na nulu.\n" - -#: grub-core/kern/emu/misc.c:48 -#, c-format -msgid "%s: warning:" -msgstr "%s: upozorenje:" - -#: grub-core/kern/emu/misc.c:64 -#, c-format -msgid "%s: info:" -msgstr "%s: informacije:" - -#: grub-core/kern/emu/misc.c:79 util/grub-fstest.c:567 util/grub-fstest.c:576 -#: util/grub-mount.c:497 util/grub-mount.c:505 -#, c-format -msgid "%s: error:" -msgstr "%s: greÅ¡ka:" - -#: grub-core/kern/emu/misc.c:176 -#, c-format -msgid "file `%s' is too big" -msgstr "datoteka `%s' je prevelika" - -#: grub-core/kern/fs.c:120 -msgid "unknown filesystem" -msgstr "nepoznat datoteÄni sustav" - -#: grub-core/kern/mips/arc/init.c:273 grub-core/kern/mips/loongson/init.c:301 -msgid "Shutdown failed" -msgstr "Neuspjelo iskljuÄivanje" - -#: grub-core/kern/mips/arc/init.c:285 -msgid "Exit failed" -msgstr "Neuspjeli izlaz" - -#: grub-core/kern/misc.c:351 grub-core/kern/misc.c:408 include/grub/misc.h:269 -#: include/grub/misc.h:278 -msgid "overflow is detected" -msgstr "prekoraÄenje otkriveno" - -#: grub-core/kern/partition.c:51 grub-core/partmap/bsdlabel.c:108 -#, c-format -msgid "Discarding improperly nested partition (%s,%s,%s%d)" -msgstr "Odbacivanje nepravilno smjeÅ¡tene particije (%s,%s,%s%d)" - -#: grub-core/kern/rescue_parser.c:73 util/grub-editenv.c:292 -#, c-format -msgid "Unknown command `%s'.\n" -msgstr "Nepoznata naredba `%s'.\n" - -#: grub-core/lib/arg.c:31 -msgid "Display this help and exit." -msgstr "Prikaži ovu pomoć i izaÄ‘i." - -#: grub-core/lib/arg.c:33 -msgid "Display the usage of this command and exit." -msgstr "Prikaži upotrebu ove naredbe i izaÄ‘i." - -#: grub-core/lib/arg.c:362 -#, c-format -msgid "missing mandatory option for `%s'" -msgstr "nedostaje obavezna mogućnost `%s'" - -#: grub-core/lib/arg.c:384 -#, c-format -msgid "the argument `%s' requires an integer" -msgstr "argument `%s' zahtijeva cijeli broj" - -#: grub-core/lib/arg.c:407 -#, c-format -msgid "" -"a value was assigned to the argument `%s' while it doesn't require an " -"argument" -msgstr "vrijednost je dodijeljena argumentu `%s' dok ne zahtijeva argument" - -#: grub-core/lib/backtrace.c:64 -msgid "Print backtrace." -msgstr "Ispis povratnog praćenja." - -#: grub-core/lib/gnulib/argp-help.c:149 -#, c-format -msgid "ARGP_HELP_FMT: %s value is less than or equal to %s" -msgstr "ARGP_HELP_FMT: %s vrijednost je manja od ili jednaka %s" - -#: grub-core/lib/gnulib/argp-help.c:225 -#, c-format -msgid "%.*s: ARGP_HELP_FMT parameter requires a value" -msgstr "%.*s: ARGP_HELP_FMT parametar zahtijeva vrijednost" - -#: grub-core/lib/gnulib/argp-help.c:235 -#, c-format -msgid "%.*s: Unknown ARGP_HELP_FMT parameter" -msgstr "%.*s: nepoznat ARGP_HELP_FMT parametar" - -#: grub-core/lib/gnulib/argp-help.c:248 -#, c-format -msgid "Garbage in ARGP_HELP_FMT: %s" -msgstr "Smeće u ARGP_HELP_FMT: %s" - -#: grub-core/lib/gnulib/argp-help.c:1229 -msgid "" -"Mandatory or optional arguments to long options are also mandatory or " -"optional for any corresponding short options." -msgstr "" -"Obavezni ili izborni argumenti dugaÄkih mogućnosti takoÄ‘er su obavezni ili " -"izborni za odgovarajuće kratke mogućnosti." - -#: grub-core/lib/gnulib/argp-help.c:1620 -msgid " or: " -msgstr " ili: " - -#: grub-core/lib/gnulib/argp-help.c:1632 -msgid " [OPTION...]" -msgstr " [MOGUĆNOST...]" - -#: grub-core/lib/gnulib/argp-help.c:1659 -#, c-format -msgid "Try '%s --help' or '%s --usage' for more information.\n" -msgstr "PokuÅ¡ajte '%s --help' ili '%s --usage' za viÅ¡e informacija.\n" - -#: grub-core/lib/gnulib/argp-help.c:1687 -#, c-format -msgid "Report bugs to %s.\n" -msgstr "Prijavite greÅ¡ke na %s.\n" - -#: grub-core/lib/gnulib/argp-help.c:1888 grub-core/lib/gnulib/error.c:195 -msgid "Unknown system error" -msgstr "Nepoznata greÅ¡ka sustava" - -#: grub-core/lib/gnulib/argp-parse.c:81 -msgid "give this help list" -msgstr "daje ovaj popis pomoći" - -#: grub-core/lib/gnulib/argp-parse.c:82 -msgid "give a short usage message" -msgstr "daje kratku poruku koriÅ¡tenja" - -#: grub-core/lib/gnulib/argp-parse.c:83 util/grub-mkfont.c:946 -msgid "NAME" -msgstr "NAZIV" - -#: grub-core/lib/gnulib/argp-parse.c:84 -msgid "set the program name" -msgstr "postavi naziv programa" - -#: grub-core/lib/gnulib/argp-parse.c:86 -msgid "hang for SECS seconds (default 3600)" -msgstr "zaustavi na SEK sekundi (zadano 3600)" - -#: grub-core/lib/gnulib/argp-parse.c:143 -msgid "print program version" -msgstr "ispiÅ¡i inaÄicu programa" - -#: grub-core/lib/gnulib/argp-parse.c:160 -msgid "(PROGRAM ERROR) No version known!?" -msgstr "(GREÅ KA PROGRAMA) Nema poznate inaÄice!?" - -#: grub-core/lib/gnulib/argp-parse.c:613 -#, c-format -msgid "%s: Too many arguments\n" -msgstr "%s: previÅ¡e argumenata\n" - -#: grub-core/lib/gnulib/argp-parse.c:759 -msgid "(PROGRAM ERROR) Option should have been recognized!?" -msgstr "(GREÅ KA PROGRAMA) Mogućnost je trebala biti prepoznata!?" - -#: grub-core/lib/gnulib/getopt.c:278 -#, c-format -msgid "%s: option '%s%s' is ambiguous\n" -msgstr "%s: mogućnost '%s%s' je neodreÄ‘ena\n" - -#: grub-core/lib/gnulib/getopt.c:284 -#, c-format -msgid "%s: option '%s%s' is ambiguous; possibilities:" -msgstr "%s: mogućnost '%s%s' je neodreÄ‘ena, mogućnosti:" - -#: grub-core/lib/gnulib/getopt.c:319 -#, c-format -msgid "%s: unrecognized option '%s%s'\n" -msgstr "%s: nepoznata mogućnost '%s%s'\n" - -#: grub-core/lib/gnulib/getopt.c:345 -#, c-format -msgid "%s: option '%s%s' doesn't allow an argument\n" -msgstr "%s: mogućnost '%s%s' ne dopuÅ¡ta argument\n" - -#: grub-core/lib/gnulib/getopt.c:360 -#, c-format -msgid "%s: option '%s%s' requires an argument\n" -msgstr "%s: mogućnost '%s%s' zahtijeva argument\n" - -#: grub-core/lib/gnulib/getopt.c:621 -#, c-format -msgid "%s: invalid option -- '%c'\n" -msgstr "%s: neispravna mogućnost -- '%c'\n" - -#: grub-core/lib/gnulib/getopt.c:636 grub-core/lib/gnulib/getopt.c:682 -#, c-format -msgid "%s: option requires an argument -- '%c'\n" -msgstr "%s: mogućnost zahtijeva argument -- %c\n" - -#: grub-core/lib/gnulib/openat-die.c:38 -#, c-format -msgid "unable to record current working directory" -msgstr "nemoguće snimanje trenutnog radnog direktorija" - -#: grub-core/lib/gnulib/openat-die.c:57 -#, c-format -msgid "failed to return to initial working directory" -msgstr "nemoguć povratak u poÄetni radni direktorij" - -#: grub-core/lib/gnulib/regcomp.c:135 grub-core/osdep/aros/hostdisk.c:523 -msgid "Success" -msgstr "UspjeÅ¡no" - -#: grub-core/lib/gnulib/regcomp.c:138 -msgid "No match" -msgstr "Nema podudarnosti" - -#: grub-core/lib/gnulib/regcomp.c:141 -msgid "Invalid regular expression" -msgstr "Neispravan regularni izraz" - -#: grub-core/lib/gnulib/regcomp.c:144 -msgid "Invalid collation character" -msgstr "Neispravan znak razvrstavanja" - -#: grub-core/lib/gnulib/regcomp.c:147 -msgid "Invalid character class name" -msgstr "Neispravan naziv razreda znakova" - -#: grub-core/lib/gnulib/regcomp.c:150 -msgid "Trailing backslash" -msgstr "Obrnuta kosa crta" - -#: grub-core/lib/gnulib/regcomp.c:153 -msgid "Invalid back reference" -msgstr "Neispravna povratna referenca" - -#: grub-core/lib/gnulib/regcomp.c:156 -msgid "Unmatched [, [^, [:, [., or [=" -msgstr "Neuparena [, [^, [:, [., ili [=" - -#: grub-core/lib/gnulib/regcomp.c:159 -msgid "Unmatched ( or \\(" -msgstr "Neuparena ( ili \\(" - -#: grub-core/lib/gnulib/regcomp.c:162 -msgid "Unmatched \\{" -msgstr "Neuparena \\{" - -#: grub-core/lib/gnulib/regcomp.c:165 -msgid "Invalid content of \\{\\}" -msgstr "Neispravan sadržaj \\{\\}" - -#: grub-core/lib/gnulib/regcomp.c:168 -msgid "Invalid range end" -msgstr "Neispravan kraj raspona" - -#: grub-core/lib/gnulib/regcomp.c:171 -msgid "Memory exhausted" -msgstr "Memorija iscrpljena" - -#: grub-core/lib/gnulib/regcomp.c:174 -msgid "Invalid preceding regular expression" -msgstr "Neispravan prijaÅ¡nji regularni izraz" - -#: grub-core/lib/gnulib/regcomp.c:177 -msgid "Premature end of regular expression" -msgstr "Preuranjen zavrÅ¡etak regularnog izraza" - -#: grub-core/lib/gnulib/regcomp.c:180 -msgid "Regular expression too big" -msgstr "Regularni izraz je prevelik" - -#: grub-core/lib/gnulib/regcomp.c:183 -msgid "Unmatched ) or \\)" -msgstr "Neuparena ) ili \\)" - -#: grub-core/lib/gnulib/regcomp.c:531 -msgid "unknown regexp error" -msgstr "nepoznata greÅ¡ka regularnog izraza" - -#: grub-core/lib/gnulib/regcomp.c:676 -msgid "No previous regular expression" -msgstr "Nedostaje prijaÅ¡nji regularni izraz" - -#: grub-core/lib/i386/halt.c:77 -msgid "GRUB doesn't know how to halt this machine yet!" -msgstr "GRUB ne zna kako zaustaviti ovaj sustav joÅ¡!" - -#: grub-core/lib/legacy_parse.c:75 -msgid "Default server is ${net_default_server}" -msgstr "Zadani poslužitelj ${net_default_server}" - -#: grub-core/lib/legacy_parse.c:844 grub-core/video/colors.c:296 -#: grub-core/video/colors.c:305 grub-core/video/colors.c:311 -#: grub-core/video/colors.c:327 util/render-label.c:84 util/render-label.c:98 -#, c-format -msgid "invalid color specification `%s'" -msgstr "neispravne specifikacije boje `%s'" - -#: grub-core/lib/mips/arc/reboot.c:32 grub-core/lib/mips/loongson/reboot.c:61 -msgid "Reboot failed" -msgstr "Neuspjelo ponovno pokretanje" - -#: grub-core/lib/random.c:113 -msgid "[LENGTH]" -msgstr "[DULJINA]" - -#: grub-core/lib/random.c:114 -msgid "Hexdump random data." -msgstr "NaizmjeniÄni podaci heksadecimalnog ispisa." - -#: grub-core/loader/arm/linux.c:242 -msgid "device tree must be supplied (see `devicetree' command)" -msgstr "stablo ureÄ‘aja mora biti dostupno (pogledajte `devicetree' naredbu)" - -#: grub-core/loader/arm/linux.c:334 -msgid "invalid zImage" -msgstr "neispravan zImage" - -#: grub-core/loader/arm/linux.c:450 grub-core/loader/efi/fdt.c:144 -msgid "invalid device tree" -msgstr "neispravno stablo ureÄ‘aja" - -#: grub-core/loader/arm/linux.c:493 grub-core/loader/arm64/linux.c:383 -#: grub-core/loader/i386/linux.c:1125 grub-core/loader/i386/pc/linux.c:479 -#: grub-core/loader/i386/xen.c:962 grub-core/loader/i386/xen.c:964 -#: grub-core/loader/ia64/efi/linux.c:591 grub-core/loader/mips/linux.c:501 -#: grub-core/loader/powerpc/ieee1275/linux.c:383 -#: grub-core/loader/riscv/linux.c:50 -#: grub-core/loader/sparc64/ieee1275/linux.c:511 -msgid "Load Linux." -msgstr "UÄitaj Linux." - -#: grub-core/loader/arm/linux.c:495 grub-core/loader/arm64/linux.c:385 -#: grub-core/loader/i386/linux.c:1127 grub-core/loader/i386/pc/linux.c:482 -#: grub-core/loader/i386/xen.c:966 grub-core/loader/ia64/efi/linux.c:594 -#: grub-core/loader/mips/linux.c:503 -#: grub-core/loader/powerpc/ieee1275/linux.c:385 -#: grub-core/loader/riscv/linux.c:52 -#: grub-core/loader/sparc64/ieee1275/linux.c:513 -msgid "Load initrd." -msgstr "UÄitaj initrd." - -#. TRANSLATORS: DTB stands for device tree blob. -#: grub-core/loader/arm/linux.c:498 grub-core/loader/efi/fdt.c:169 -msgid "Load DTB file." -msgstr "UÄitaj DTB datoteku." - -#: grub-core/loader/arm64/linux.c:59 -msgid "" -"plain image kernel not supported - rebuild with CONFIG_(U)EFI_STUB enabled" -msgstr "" -"obiÄna slika kernela nije podržana - izgradite sa omogućenim " -"CONFIG_(U)EFI_STUB" - -#: grub-core/loader/arm64/xen_boot.c:156 -msgid "failed to get FDT" -msgstr "neuspjelo FDT dobivanje" - -#: grub-core/loader/arm64/xen_boot.c:418 -msgid "you need to load the Xen Hypervisor first" -msgstr "prvo morate uÄitati Xen Hipervizora" - -#: grub-core/loader/arm64/xen_boot.c:516 -msgid "Load a xen hypervisor." -msgstr "UÄitaj xen hipervizora." - -#: grub-core/loader/arm64/xen_boot.c:519 -msgid "Load a xen module." -msgstr "UÄitaj xen modul." - -#: grub-core/loader/efi/appleloader.c:231 -msgid "[OPTS]" -msgstr "[MOGUĆNOSTI]" - -#. TRANSLATORS: This command is used on EFI to -#. switch to BIOS mode and boot the OS requiring -#. BIOS. -#: grub-core/loader/efi/appleloader.c:235 -msgid "Boot BIOS-based system." -msgstr "Pokreni BIOS temeljeni sustav." - -#: grub-core/loader/efi/chainloader.c:421 -#: grub-core/loader/i386/pc/chainloader.c:303 -msgid "Load another boot loader." -msgstr "UÄitaj dodatni uÄitaÄ pokretanja." - -#: grub-core/loader/i386/bsd.c:103 -msgid "Display output on all consoles." -msgstr "Prikaži izlaz na svom konzolama." - -#: grub-core/loader/i386/bsd.c:104 grub-core/loader/i386/bsd.c:138 -#: grub-core/loader/i386/bsd.c:171 -msgid "Use serial console." -msgstr "Koristi serijsku konzolu." - -#: grub-core/loader/i386/bsd.c:105 grub-core/loader/i386/bsd.c:131 -#: grub-core/loader/i386/bsd.c:159 -msgid "Ask for file name to reboot from." -msgstr "Pitaj za naziv datoteke ponovnog pokretanja." - -#: grub-core/loader/i386/bsd.c:106 -msgid "Use CD-ROM as root." -msgstr "Koristi CD-ROM kao 'root'." - -#: grub-core/loader/i386/bsd.c:107 -msgid "Invoke user configuration routing." -msgstr "Pozovi usmjeravanje podeÅ¡eno korisnikom." - -#: grub-core/loader/i386/bsd.c:108 grub-core/loader/i386/bsd.c:135 -#: grub-core/loader/i386/bsd.c:162 -msgid "Enter in KDB on boot." -msgstr "UÄ‘i u KDB pri pokretanju." - -#: grub-core/loader/i386/bsd.c:109 -msgid "Use GDB remote debugger instead of DDB." -msgstr "Koristi GDB udaljeni program otklanjanja greÅ¡aka umjesto DDB." - -#: grub-core/loader/i386/bsd.c:110 -msgid "Disable all boot output." -msgstr "Onemogući sve izlaze pokretanja." - -#: grub-core/loader/i386/bsd.c:112 -msgid "Wait for keypress after every line of output." -msgstr "ÄŒekaj pritisak tipke nakon svakog redka izlaza." - -#: grub-core/loader/i386/bsd.c:114 -msgid "Use compiled-in root device." -msgstr "Koristi sastavljeni korijenski ureÄ‘aj." - -#: grub-core/loader/i386/bsd.c:115 grub-core/loader/i386/bsd.c:134 -#: grub-core/loader/i386/bsd.c:165 -msgid "Boot into single mode." -msgstr "Pokretanje u jednostrukom naÄinu." - -#: grub-core/loader/i386/bsd.c:116 grub-core/loader/i386/bsd.c:166 -msgid "Boot with verbose messages." -msgstr "Pokreni s opÅ¡irnijim porukama." - -#: grub-core/loader/i386/bsd.c:132 grub-core/loader/i386/bsd.c:160 -msgid "Don't reboot, just halt." -msgstr "Nemoj ponovno pokrenuti , samo zaustavi." - -#: grub-core/loader/i386/bsd.c:133 grub-core/loader/i386/bsd.c:161 -msgid "Change configured devices." -msgstr "Promijeni podeÅ¡ene ureÄ‘aje." - -#. TRANSLATORS: "com" is static and not to be translated. It refers to -#. serial ports e.g. com1. -#. -#: grub-core/loader/i386/bsd.c:142 -msgid "comUNIT[,SPEED]" -msgstr "comJEDINICA[,BRZINA]" - -#: grub-core/loader/i386/bsd.c:157 -msgid "Disable SMP." -msgstr "Onemogući SMP." - -#: grub-core/loader/i386/bsd.c:158 -msgid "Disable ACPI." -msgstr "Onemogući ACPI." - -#: grub-core/loader/i386/bsd.c:164 -msgid "Don't display boot diagnostic messages." -msgstr "Ne prikazuj poruku dijagnostike pokretanja." - -#: grub-core/loader/i386/bsd.c:167 -msgid "Boot with debug messages." -msgstr "Pokreni s porukama otklanjanja greÅ¡aka." - -#: grub-core/loader/i386/bsd.c:168 -msgid "Suppress normal output (warnings remain)." -msgstr "Izostavi normalan izlaz (upozorenja ostaju)." - -#. TRANSLATORS: "com" is static and not to be translated. It refers to -#. serial ports e.g. com1. -#. -#: grub-core/loader/i386/bsd.c:175 -msgid "[ADDR|comUNIT][,SPEED]" -msgstr "[ADRESA|comJEDINICA][,BRZINA]" - -#: grub-core/loader/i386/bsd.c:489 grub-core/loader/i386/bsd.c:555 -msgid "name" -msgstr "naziv" - -#: grub-core/loader/i386/bsd.c:489 grub-core/loader/i386/bsd.c:555 -msgid "type" -msgstr "vrsta" - -#: grub-core/loader/i386/bsd.c:489 grub-core/loader/i386/bsd.c:555 -msgid "addr" -msgstr "adresa" - -#: grub-core/loader/i386/bsd.c:490 grub-core/loader/i386/bsd.c:556 -msgid "size" -msgstr "veliÄina" - -#: grub-core/loader/i386/bsd.c:1147 grub-core/loader/i386/linux.c:466 -#: grub-core/loader/i386/xnu.c:1030 -msgid "Booting in blind mode" -msgstr "Pokretanje u slijepom naÄinu" - -#: grub-core/loader/i386/bsd.c:2137 -msgid "Load kernel of FreeBSD." -msgstr "UÄitaj FreeBSD kernel." - -#: grub-core/loader/i386/bsd.c:2140 -msgid "Load kernel of OpenBSD." -msgstr "UÄitaj OpenBSD kernel." - -#: grub-core/loader/i386/bsd.c:2143 -msgid "Load kernel of NetBSD." -msgstr "UÄitaj NetBSD kernel." - -#: grub-core/loader/i386/bsd.c:2147 -msgid "Load FreeBSD env." -msgstr "UÄitaj FreeBSD okružje." - -#: grub-core/loader/i386/bsd.c:2150 -msgid "Load FreeBSD kernel module." -msgstr "UÄitaj FreeBSD kernel modul." - -#: grub-core/loader/i386/bsd.c:2153 -msgid "Load NetBSD kernel module." -msgstr "UÄitaj NetBSD kernel module." - -#: grub-core/loader/i386/bsd.c:2156 -msgid "Load NetBSD kernel module (ELF)." -msgstr "UÄitaj NetBSD kernel module (ELF)." - -#: grub-core/loader/i386/bsd.c:2159 -msgid "Load FreeBSD kernel module (ELF)." -msgstr "UÄitaj FreeBSD kernel modul (ELF)." - -#. TRANSLATORS: ramdisk isn't identifier, -#. it can be translated. -#: grub-core/loader/i386/bsd.c:2165 -msgid "Load kOpenBSD ramdisk." -msgstr "UÄitaj kOpenBSD ramdisk." - -#. TRANSLATORS: "payload" is a term used -#. by coreboot and must be translated in -#. sync with coreboot. If unsure, -#. let it untranslated. -#: grub-core/loader/i386/coreboot/chainloader.c:510 -msgid "Load another coreboot payload" -msgstr "UÄitaj drugi coreboot payload" - -#: grub-core/loader/i386/linux.c:876 -msgid "Legacy `ask' parameter no longer supported." -msgstr "Zastarjeli `ask' parametar nije viÅ¡e podržan." - -#: grub-core/loader/i386/linux.c:892 grub-core/loader/i386/linux.c:902 -#: grub-core/loader/i386/linux.c:932 -#, c-format -msgid "%s is deprecated. Use set gfxpayload=%s before linux command instead.\n" -msgstr "" -"%s je zastarjelo. Umjesto koristite gfxpayload=%s prije linux naredbe.\n" - -#. TRANSLATORS: "x" has to be entered in, like an identifier, -#. so please don't use better Unicode codepoints. -#: grub-core/loader/i386/linux.c:915 -#, c-format -msgid "" -"%s is deprecated. VGA mode %d isn't recognized. Use set " -"gfxpayload=WIDTHxHEIGHT[xDEPTH] before linux command instead.\n" -msgstr "" -"%s je zastarjelo. VGA naÄin rada %d nije prepoznat. Umjesto koristite " -"gfxpayload=Å IRINAxVISINA[xDUBINA] prije linux naredbe.\n" - -#: grub-core/loader/i386/pc/chainloader.c:302 -msgid "[--force|--bpb] FILE" -msgstr "[--force|--bpb] DATOTEKA" - -#: grub-core/loader/i386/pc/freedos.c:148 util/setup.c:293 -#, c-format -msgid "the size of `%s' is too large" -msgstr "veliÄina `%s' je prevelika" - -#: grub-core/loader/i386/pc/freedos.c:183 -msgid "Load FreeDOS kernel.sys." -msgstr "UÄitaj FreeDOS kernel.sys." - -#: grub-core/loader/i386/pc/ntldr.c:155 -msgid "Load NTLDR or BootMGR." -msgstr "UÄitaj NTLDR ili BootMGR." - -#. TRANSLATORS: it's about guessing which GRUB disk -#. is which Plan9 disk. If your language has no -#. word "mapping" you can use another word which -#. means that the GRUBDEVICE and PLAN9DEVICE are -#. actually the same device, just named differently -#. in OS and GRUB. -#: grub-core/loader/i386/pc/plan9.c:59 -msgid "Override guessed mapping of Plan9 devices." -msgstr "ZaobiÄ‘i pretpostavljeno mapiranje Plan9 ureÄ‘aja." - -#: grub-core/loader/i386/pc/plan9.c:60 -msgid "GRUBDEVICE=PLAN9DEVICE" -msgstr "GRUBUREÄAJ=PLAN9UREÄAJ" - -#: grub-core/loader/i386/pc/plan9.c:599 -msgid "KERNEL ARGS" -msgstr "KERNEL ARGUMENTI" - -#: grub-core/loader/i386/pc/plan9.c:599 -msgid "Load Plan9 kernel." -msgstr "UÄitaj Plan9 kernel." - -#: grub-core/loader/i386/pc/pxechainloader.c:161 -msgid "Load a PXE image." -msgstr "UÄitaj PXE sliku." - -#: grub-core/loader/i386/pc/truecrypt.c:226 -msgid "Load Truecrypt ISO." -msgstr "UÄitaj Truecrypt ISO." - -#: grub-core/loader/i386/xen.c:781 grub-core/loader/i386/xen.c:865 -msgid "initrd already loaded" -msgstr "initrd je već uÄitan" - -#: grub-core/loader/i386/xen.c:968 -msgid "Load module." -msgstr "UÄitaj modul." - -#: grub-core/loader/i386/xnu.c:1003 -msgid "Press any key to launch xnu" -msgstr "Pritisnite bilo koju tipku za pokretanje xnu-a" - -#. TRANSLATORS: `device-properties' -#. is a variable name, -#. not a program. -#: grub-core/loader/i386/xnu.c:1159 -msgid "Load `device-properties' dump." -msgstr "UÄitaj `device-properties' sadržaj ispisivanja." - -#: grub-core/loader/ia64/efi/linux.c:124 -msgid "Could not locate FPSWA driver" -msgstr "Nemoguće lociranje FPSWA upravljaÄkog programa" - -#: grub-core/loader/ia64/efi/linux.c:132 -msgid "FPSWA protocol wasn't able to find the interface" -msgstr "FPSWA protokol nije mogao pronaći suÄelje" - -#: grub-core/loader/ia64/efi/linux.c:580 -msgid "No FPSWA found" -msgstr "Nema pronaÄ‘enog FPSWA" - -#: grub-core/loader/ia64/efi/linux.c:582 -#, c-format -msgid "FPSWA revision: %x\n" -msgstr "FPSWA inaÄica: %x\n" - -#: grub-core/loader/ia64/efi/linux.c:591 -msgid "FILE [ARGS...]" -msgstr "DATOTEKA [ARGUMENTI...]" - -#: grub-core/loader/ia64/efi/linux.c:597 -msgid "Display FPSWA version." -msgstr "Prikaži FPSWA inaÄicu." - -#: grub-core/loader/multiboot.c:248 -msgid "WARNING: no console will be available to OS" -msgstr "UPOZORENJE: neće biti dostupnih konzola u OS-u" - -#: grub-core/loader/multiboot.c:450 -msgid "Load a multiboot 2 kernel." -msgstr "UÄitaj kernel viÅ¡estrukog pokretanja 2." - -#: grub-core/loader/multiboot.c:453 -msgid "Load a multiboot 2 module." -msgstr "UÄitaj modul viÅ¡estrukog pokretanja 2." - -#: grub-core/loader/multiboot.c:456 -msgid "Load a multiboot kernel." -msgstr "UÄitaj kernel viÅ¡estrukog pokretanja." - -#: grub-core/loader/multiboot.c:459 -msgid "Load a multiboot module." -msgstr "UÄitaj modul viÅ¡estrukog pokretanja." - -#: grub-core/loader/riscv/linux.c:30 grub-core/loader/riscv/linux.c:40 -msgid "Linux not supported yet" -msgstr "Linux joÅ¡ nije podržan" - -#: grub-core/loader/xnu.c:1416 grub-core/term/gfxterm_background.c:45 -msgid "Background image mode." -msgstr "NaÄin prikaza pozadinske slike." - -#. TRANSLATORS: This refers to background image mode (stretched or -#. in left-top corner). Note that GRUB will accept only original -#. keywords stretch and normal, not the translated ones. -#. So please put both in translation -#. e.g. stretch(=%STRETCH%)|normal(=%NORMAL%). -#. The percents mark the translated version. Since many people -#. may not know the word stretch or normal I recommend -#. putting the translation either here or in "Background image mode." -#. string. -#: grub-core/loader/xnu.c:1416 grub-core/term/gfxterm_background.c:55 -msgid "stretch|normal" -msgstr "razvuÄen|normalan" - -#: grub-core/loader/xnu.c:1482 -msgid "Load XNU image." -msgstr "UÄitaj XNU sliku." - -#: grub-core/loader/xnu.c:1484 -msgid "Load 64-bit XNU image." -msgstr "UÄitaj 64-bitnu XNU sliku." - -#: grub-core/loader/xnu.c:1486 -msgid "Load XNU extension package." -msgstr "UÄitaj XNU paket proÅ¡irenja." - -#: grub-core/loader/xnu.c:1488 -msgid "Load XNU extension." -msgstr "UÄitaj XNU proÅ¡irenje." - -#. TRANSLATORS: OSBundleRequired is a -#. variable name in xnu extensions -#. manifests. It behaves mostly like -#. GNU/Linux runlevels. -#. -#: grub-core/loader/xnu.c:1495 -msgid "DIRECTORY [OSBundleRequired]" -msgstr "DIREKTORIJ [OSBundleRequired]" - -#. TRANSLATORS: There are many extensions -#. in extension directory. -#: grub-core/loader/xnu.c:1498 -msgid "Load XNU extension directory." -msgstr "UÄitaj XNU direktorij proÅ¡irenja." - -#. TRANSLATORS: ramdisk here isn't identifier. It can be translated. -#: grub-core/loader/xnu.c:1501 -msgid "Load XNU ramdisk. It will be available in OS as md0." -msgstr "UÄitaj XNU ramdisk. Biti će dostupan u OS-u kao md0." - -#: grub-core/loader/xnu.c:1505 -msgid "Load a splash image for XNU." -msgstr "UÄitaj splash sliku za XNU." - -#: grub-core/loader/xnu.c:1510 -msgid "Load an image of hibernated XNU." -msgstr "UÄitaj sliku hiberniranog XNU-a." - -#: grub-core/mmap/mmap.c:538 -msgid "ADDR1,MASK1[,ADDR2,MASK2[,...]]" -msgstr "ADRESA1,MASKA1[,ADRESA2,MASKA2[,...]]" - -#: grub-core/mmap/mmap.c:539 -msgid "Declare memory regions as faulty (badram)." -msgstr "Proglasi podruÄja memorije neispravnim (pokvareni ram)." - -#: grub-core/mmap/mmap.c:541 -msgid "FROM[K|M|G] TO[K|M|G]" -msgstr "OD[K|M|G] DO[K|M|G]" - -#: grub-core/mmap/mmap.c:542 -msgid "Remove any memory regions in specified range." -msgstr "Ukloni bilo koje podruÄje memorije u odreÄ‘enom rasponu." - -#: grub-core/net/bootp.c:653 -msgid "four arguments expected" -msgstr "Äetiri argumenata oÄekivano" - -#: grub-core/net/bootp.c:661 grub-core/net/net.c:1155 -#, c-format -msgid "unrecognised network interface `%s'" -msgstr "nepoznato mrežno suÄelje `%s'" - -#: grub-core/net/bootp.c:664 -msgid "no DHCP info found" -msgstr "nema pronaÄ‘enih DHCP informacija" - -#: grub-core/net/bootp.c:674 -msgid "no DHCP options found" -msgstr "nema pronaÄ‘enih DHCP mogućnosti" - -#: grub-core/net/bootp.c:682 -msgid "invalid DHCP option code" -msgstr "neispravan kôd DHCP mogućnosti" - -#: grub-core/net/bootp.c:686 -#, c-format -msgid "no DHCP option %u found" -msgstr "nema pronaÄ‘enih DHCP mogućnosti %u" - -#: grub-core/net/bootp.c:743 -#, c-format -msgid "unrecognised DHCP option format specification `%s'" -msgstr "neprepoznata DHCP pojedinost mogućnosti formata `%s'" - -#: grub-core/net/bootp.c:767 -msgid "no network card found" -msgstr "nema pronaÄ‘enih mrežnih kartica" - -#: grub-core/net/bootp.c:859 grub-core/net/net.c:389 -#, c-format -msgid "couldn't autoconfigure %s" -msgstr "nemoguće automatsko podeÅ¡avanje %s" - -#: grub-core/net/bootp.c:873 grub-core/net/bootp.c:876 -msgid "[CARD]" -msgstr "[KARTICA]" - -#: grub-core/net/bootp.c:874 -msgid "perform a bootp autoconfiguration" -msgstr "pokreni bootp automatsko podeÅ¡avanje" - -#: grub-core/net/bootp.c:877 -msgid "perform a DHCP autoconfiguration" -msgstr "pokreni DHCP automatsko podeÅ¡avanje" - -#: grub-core/net/bootp.c:879 -msgid "VAR INTERFACE NUMBER DESCRIPTION" -msgstr "VAR SUÄŒELJE BROJ OPIS" - -#: grub-core/net/bootp.c:880 -msgid "" -"retrieve DHCP option and save it into VAR. If VAR is - then print the value." -msgstr "" -"preuzmi DHCP mogućnost i spremi ju u VAR. Ako VAR postoji - tada ispiÅ¡i " -"vrijednost." - -#: grub-core/net/dns.c:459 -msgid "no DNS servers configured" -msgstr "nema podeÅ¡enih DNS poslužitelja" - -#: grub-core/net/dns.c:522 -msgid "domain name component is too long" -msgstr "naziv komponente domene je predugaÄak" - -#: grub-core/net/dns.c:618 grub-core/net/dns.c:666 -msgid "no DNS record found" -msgstr "nema DNS zapisa pronaÄ‘enih" - -#: grub-core/net/dns.c:626 -msgid "no DNS reply received" -msgstr "nije primljen DNS odgovor" - -#: grub-core/net/dns.c:682 -msgid "only ipv4" -msgstr "samo ipv4" - -#: grub-core/net/dns.c:686 -msgid "only ipv6" -msgstr "samo ipv6" - -#: grub-core/net/dns.c:690 -msgid "prefer ipv4" -msgstr "preferiraj ipv4" - -#: grub-core/net/dns.c:694 -msgid "prefer ipv6" -msgstr "preferiraj ipv6" - -#: grub-core/net/dns.c:759 -msgid "ADDRESS DNSSERVER" -msgstr "ADRESA DNS-POSLUŽITELJA" - -#: grub-core/net/dns.c:760 -msgid "Perform a DNS lookup" -msgstr "Pokreni DNS pretraživanje" - -#: grub-core/net/dns.c:762 grub-core/net/dns.c:765 -msgid "DNSSERVER" -msgstr "DNS POSLUŽITELJ" - -#: grub-core/net/dns.c:763 -msgid "Add a DNS server" -msgstr "Dodaj DNS poslužitelja" - -#: grub-core/net/dns.c:766 -msgid "Remove a DNS server" -msgstr "Ukloni DNS poslužitelja" - -#: grub-core/net/dns.c:768 -msgid "List DNS servers" -msgstr "Prikaži DNS poslužitelje" - -#: grub-core/net/drivers/efi/efinet.c:49 grub-core/net/drivers/efi/efinet.c:65 -#: grub-core/net/drivers/efi/efinet.c:77 grub-core/net/drivers/emu/emunet.c:62 -#: grub-core/net/drivers/i386/pc/pxe.c:273 -#: grub-core/net/drivers/ieee1275/ofnet.c:75 -#: grub-core/net/drivers/uboot/ubootnet.c:62 -msgid "couldn't send network packet" -msgstr "neuspjelo slanje mrežnog paketa" - -#: grub-core/net/drivers/ieee1275/ofnet.c:326 -#: grub-core/net/drivers/ieee1275/ofnet.c:359 -msgid "interpret is not supported" -msgstr "interpretator nije podržan" - -#: grub-core/net/drivers/ieee1275/ofnet.c:336 -msgid "alloc-mem failed" -msgstr "neuspjela promjena lokacije memorije" - -#: grub-core/net/drivers/ieee1275/ofnet.c:370 -msgid "free-mem failed" -msgstr "neuspjelo oslobaÄ‘anje memorije" - -#: grub-core/net/http.c:105 -msgid "unsupported HTTP response" -msgstr "nepodržan HTTP odgovor" - -#. TRANSLATORS: GRUB HTTP code is pretty young. So even perfectly -#. valid answers like 403 will trigger this very generic message. -#: grub-core/net/http.c:126 -#, c-format -msgid "unsupported HTTP error %d: %s" -msgstr "nepodržana HTTP greÅ¡ka %d: %s" - -#: grub-core/net/http.c:429 grub-core/net/tftp.c:420 -#, c-format -msgid "time out opening `%s'" -msgstr "isteklo vrijeme otvaranja `%s'" - -#: grub-core/net/net.c:179 -msgid "timeout: could not resolve hardware address" -msgstr "isteklo vrijeme: hardverska adresa nije razrjeÅ¡ena" - -#: grub-core/net/net.c:548 -#, c-format -msgid "unresolvable address %s" -msgstr "nerazrjeÅ¡iva adresa %s" - -#: grub-core/net/net.c:594 -#, c-format -msgid "unrecognised network address `%s'" -msgstr "neprepoznata mrežna adresa `%s'" - -#: grub-core/net/net.c:661 -msgid "destination unreachable" -msgstr "odrediÅ¡te nedostupno" - -#. TRANSLATORS: route loop is a condition when e.g. -#. to contact server A you need to go through B -#. and to contact B you need to go through A. -#: grub-core/net/net.c:684 -msgid "route loop detected" -msgstr "ponavljajuća ruta otkrivena" - -#: grub-core/net/net.c:700 -msgid "address not found" -msgstr "adresa nije prnaÄ‘ena" - -#: grub-core/net/net.c:704 -msgid "you can't delete this address" -msgstr "ne možete obrisati ovu adresu" - -#: grub-core/net/net.c:776 grub-core/net/net.c:792 -#, c-format -msgid "Unsupported hw address type %d\n" -msgstr "Nepodržana hardverska vrsta adrese %d\n" - -#: grub-core/net/net.c:813 -#, c-format -msgid "Unsupported address type %d\n" -msgstr "Nepodržana vrsta adrese %d\n" - -#: grub-core/net/net.c:1017 grub-core/net/net.c:1131 -msgid "three arguments expected" -msgstr "oÄekivana su tri argumenta" - -#: grub-core/net/net.c:1023 -msgid "card not found" -msgstr "kartica nije pronaÄ‘ena" - -#. TRANSLATORS: it refers to the network address. -#: grub-core/net/net.c:1167 -msgid "temporary" -msgstr "privremeno" - -#: grub-core/net/net.c:1190 -#, c-format -msgid "Unknown address type %d\n" -msgstr "Nepoznata vrsta adrese %d\n" - -#: grub-core/net/net.c:1298 -msgid "no server is specified" -msgstr "poslužitelj nije odreÄ‘en" - -#: grub-core/net/net.c:1637 -#, c-format -msgid "timeout reading `%s'" -msgstr "vrijeme isteka Äitanja `%s'" - -#. TRANSLATORS: HWADDRESS stands for -#. "hardware address". -#: grub-core/net/net.c:1762 -msgid "SHORTNAME CARD ADDRESS [HWADDRESS]" -msgstr "KRATAK NAZIV ADRESE KARTICE [HARDV. ADRESA]" - -#: grub-core/net/net.c:1763 -msgid "Add a network address." -msgstr "Dodaj adresu mreže." - -#: grub-core/net/net.c:1766 -msgid "[CARD [HWADDRESS]]" -msgstr "[KARTICA [HARD. ADRESA]]" - -#: grub-core/net/net.c:1767 -msgid "Perform an IPV6 autoconfiguration" -msgstr "Izvedi IPV6 automatsko podeÅ¡avanje" - -#: grub-core/net/net.c:1770 grub-core/net/net.c:1777 -msgid "SHORTNAME" -msgstr "KRATAK NAZIV" - -#: grub-core/net/net.c:1771 -msgid "Delete a network address." -msgstr "ObriÅ¡i adresu mreže." - -#. TRANSLATORS: "gw" is a keyword. -#: grub-core/net/net.c:1774 -msgid "SHORTNAME NET [INTERFACE| gw GATEWAY]" -msgstr "KRATAK NAZIV MREŽE [SUÄŒELJE| gw PRISTUPNIK]" - -#: grub-core/net/net.c:1775 -msgid "Add a network route." -msgstr "Dodaj rutu mreže." - -#: grub-core/net/net.c:1778 -msgid "Delete a network route." -msgstr "ObriÅ¡i rutu mreže." - -#: grub-core/net/net.c:1780 -msgid "list network routes" -msgstr "prikaži rute mreže" - -#: grub-core/net/net.c:1782 -msgid "list network cards" -msgstr "prikaži mrežne kartice" - -#: grub-core/net/net.c:1784 -msgid "list network addresses" -msgstr "prikaži mrežne adrese" - -#: grub-core/net/tcp.c:681 -msgid "connection refused" -msgstr "povezivanje odbijeno" - -#: grub-core/net/tcp.c:684 -msgid "connection timeout" -msgstr "istek povezivanja" - -#: grub-core/normal/auth.c:220 -msgid "Enter username: " -msgstr "UpiÅ¡ite korisniÄko ime: " - -#: grub-core/normal/auth.c:269 -msgid "[USERLIST]" -msgstr "[POPIS KORISNIKA]" - -#: grub-core/normal/auth.c:270 -msgid "Check whether user is in USERLIST." -msgstr "Provjerite je li korisnik na POPISU KORISNIKA." - -#: grub-core/normal/cmdline.c:174 grub-core/normal/menu_entry.c:1068 -msgid "Possible commands are:" -msgstr "Dostupne naredbe su:" - -#: grub-core/normal/cmdline.c:177 grub-core/normal/menu_entry.c:1072 -msgid "Possible devices are:" -msgstr "Dostupni ureÄ‘aji su:" - -#: grub-core/normal/cmdline.c:180 grub-core/normal/menu_entry.c:1076 -msgid "Possible files are:" -msgstr "Dostupne datoteke su:" - -#: grub-core/normal/cmdline.c:183 grub-core/normal/menu_entry.c:1080 -msgid "Possible partitions are:" -msgstr "Dostupne particije su:" - -#: grub-core/normal/cmdline.c:186 grub-core/normal/menu_entry.c:1084 -msgid "Possible arguments are:" -msgstr "Dostupni argumenti su:" - -#. TRANSLATORS: this message is used if none of above matches. -#. This shouldn't happen but please use the general term for -#. "thing" or "object". -#: grub-core/normal/cmdline.c:192 grub-core/normal/menu_entry.c:1088 -msgid "Possible things are:" -msgstr "Dostupne stvari su::" - -#: grub-core/normal/color.c:81 -#, c-format -msgid "Warning: syntax error (missing slash) in `%s'\n" -msgstr "Upozorenje: greÅ¡ka sintakse (nedostaje kosa crta) u `%s'\n" - -#: grub-core/normal/color.c:90 -#, c-format -msgid "Warning: invalid foreground color `%s'\n" -msgstr "Upozorenje: pogreÅ¡na boja `%s'\n" - -#: grub-core/normal/color.c:96 -#, c-format -msgid "Warning: invalid background color `%s'\n" -msgstr "Upozorenje: pogreÅ¡na boja pozadine `%s'\n" - -#: grub-core/normal/context.c:206 -msgid "ENVVAR [ENVVAR] ..." -msgstr "ENVVAR [ENVVAR] ..." - -#: grub-core/normal/context.c:207 -msgid "Export variables." -msgstr "Izvezi vrijable." - -#: grub-core/normal/datetime.c:25 -msgid "Sunday" -msgstr "Nedjelja" - -#: grub-core/normal/datetime.c:26 -msgid "Monday" -msgstr "Ponedjeljak" - -#: grub-core/normal/datetime.c:27 -msgid "Tuesday" -msgstr "Utorak" - -#: grub-core/normal/datetime.c:28 -msgid "Wednesday" -msgstr "Srijeda" - -#: grub-core/normal/datetime.c:29 -msgid "Thursday" -msgstr "ÄŒetvrtak" - -#: grub-core/normal/datetime.c:30 -msgid "Friday" -msgstr "Petak" - -#: grub-core/normal/datetime.c:31 -msgid "Saturday" -msgstr "Subota" - -#: grub-core/normal/dyncmd.c:187 -msgid "module isn't loaded" -msgstr "module nije uÄitan" - -#: grub-core/normal/main.c:211 -#, c-format -msgid "GNU GRUB version %s" -msgstr "GNU GRUB inaÄica %s" - -#: grub-core/normal/main.c:360 -msgid "ESC at any time exits." -msgstr "Pritisnite ESC za izlazak u bilo koje vrijeme." - -#: grub-core/normal/main.c:363 -#, c-format -msgid "" -"Minimal BASH-like line editing is supported. For the first word, TAB lists " -"possible command completions. Anywhere else TAB lists possible device or " -"file completions. %s" -msgstr "" -"UreÄ‘ivanje u naÄinu rada minimalnog BASH-a podržano. Za prvu rijeÄ, TAB " -"ispisuje dostupne naredbe. Bilo gdje drugdje TAB ispisiva dostupne ureÄ‘aje " -"ili dostupne datoteke. %s" - -#. TRANSLATORS: it's command line prompt. -#: grub-core/normal/main.c:395 -msgid ">" -msgstr ">" - -#. TRANSLATORS: it's command line prompt. -#: grub-core/normal/main.c:398 -msgid "grub>" -msgstr "grub>" - -#: grub-core/normal/main.c:518 -msgid "Clear the screen." -msgstr "OÄisti zaslon." - -#: grub-core/normal/main.c:527 -msgid "Enter normal mode." -msgstr "UÄ‘i u uobiÄajen naÄin rada." - -#: grub-core/normal/main.c:529 -msgid "Exit from normal mode." -msgstr "IzaÄ‘i iz uobiÄajeog naÄina rada." - -#: grub-core/normal/menu.c:66 grub-core/normal/menu_entry.c:1449 -msgid "Press any key to continue..." -msgstr "Pritisnite bilo koju tipku za nastavak..." - -#: grub-core/normal/menu.c:815 -#, c-format -msgid "Booting `%s'" -msgstr "Pokretanje `%s'" - -#: grub-core/normal/menu.c:827 -#, c-format -msgid "Falling back to `%s'" -msgstr "Vraćanje natrag na `%s'" - -#: grub-core/normal/menu.c:843 -msgid "Failed to boot both default and fallback entries.\n" -msgstr "Neuspjelo pokretanje obje stavke (zadane stavke i stavke oporavka).\n" - -#: grub-core/normal/menu_entry.c:1171 -msgid "Booting a command list" -msgstr "Popis naredbi pokretanja" - -#: grub-core/normal/menu_text.c:160 -msgid "" -"Minimum Emacs-like screen editing is supported. TAB lists completions. Press " -"Ctrl-x or F10 to boot, Ctrl-c or F2 for a command-line or ESC to discard " -"edits and return to the GRUB menu." -msgstr "" -"UreÄ‘ivanje u naÄinu rada minimalnog Emacsa podržano. TAB ispis dostupnih " -"naredba. Pritisnite Ctrl-x ili F10 za pokretanje, Ctrl-c ili F2 za naredbeni " -"redak ESC za odbacivanje promjena i povratak u GRUB izbornik." - -#: grub-core/normal/menu_text.c:170 -#, c-format -msgid "Use the %C and %C keys to select which entry is highlighted." -msgstr "Koristite %C i %C tipke za odabir željene stavke." - -#. TRANSLATORS: that's the list of binary unit prefixes. -#: grub-core/normal/misc.c:38 -msgid "B" -msgstr "B" - -#: grub-core/normal/misc.c:38 -msgid "KiB" -msgstr "KiB" - -#: grub-core/normal/misc.c:38 -msgid "MiB" -msgstr "MiB" - -#: grub-core/normal/misc.c:38 -msgid "GiB" -msgstr "GiB" - -#: grub-core/normal/misc.c:38 -msgid "TiB" -msgstr "TiB" - -#: grub-core/normal/misc.c:38 -msgid "PiB" -msgstr "PiB" - -#. TRANSLATORS: that's the list of binary unit prefixes. -#: grub-core/normal/misc.c:40 -msgid "K" -msgstr "K" - -#: grub-core/normal/misc.c:40 -msgid "M" -msgstr "M" - -#: grub-core/normal/misc.c:40 -msgid "G" -msgstr "G" - -#: grub-core/normal/misc.c:40 -msgid "T" -msgstr "T" - -#: grub-core/normal/misc.c:40 -msgid "P" -msgstr "P" - -#. TRANSLATORS: that's the list of binary unit prefixes. -#: grub-core/normal/misc.c:42 -msgid "B/s" -msgstr "B/s" - -#: grub-core/normal/misc.c:42 -msgid "KiB/s" -msgstr "KiB/s" - -#: grub-core/normal/misc.c:42 -msgid "MiB/s" -msgstr "MiB/s" - -#: grub-core/normal/misc.c:42 -msgid "GiB/s" -msgstr "GiB/s" - -#: grub-core/normal/misc.c:42 -msgid "TiB/s" -msgstr "TiB/s" - -#: grub-core/normal/misc.c:42 -msgid "PiB/s" -msgstr "PiB/s" - -#: grub-core/normal/misc.c:96 -#, c-format -msgid "Partition %s:" -msgstr "Particija %s:" - -#: grub-core/normal/misc.c:101 -#, c-format -msgid "Device %s:" -msgstr "UreÄ‘aj %s:" - -#: grub-core/normal/misc.c:107 -msgid "Filesystem cannot be accessed" -msgstr "Nemoguć pristup datoteÄnom sustavu" - -#: grub-core/normal/misc.c:121 -#, c-format -msgid "Filesystem type %s" -msgstr "Vrsta datoteÄnog sustava %s" - -#: grub-core/normal/misc.c:131 -#, c-format -msgid "- Label `%s'" -msgstr "- Oznaka `%s'" - -#. TRANSLATORS: Arguments are year, month, day, hour, minute, -#. second, day of the week (translated). -#: grub-core/normal/misc.c:148 -#, c-format -msgid "- Last modification time %d-%02d-%02d %02d:%02d:%02d %s" -msgstr "- Vrijeme zadnje promjene %d-%02d-%02d %02d:%02d:%02d %s" - -#: grub-core/normal/misc.c:171 -msgid "No known filesystem detected" -msgstr "Nema otkrivenog poznatog datoteÄnog sustava" - -#: grub-core/normal/misc.c:174 -#, c-format -msgid " - Partition start at %llu%sKiB" -msgstr " - Particija poÄinje na %llu%sKiB" - -#: grub-core/normal/misc.c:178 -#, c-format -msgid " - Sector size %uB" -msgstr " - VeliÄina sektora %uB" - -#: grub-core/normal/misc.c:180 -msgid " - Total size unknown" -msgstr " - Ukupna veliÄina nepoznata" - -#: grub-core/normal/misc.c:182 -#, c-format -msgid " - Total size %llu%sKiB" -msgstr " - Ukupna veliÄina %llu%sKiB" - -#. TRANSLATORS: Replace dot with appropriate decimal separator for -#. your language. -#: grub-core/normal/misc.c:186 -msgid ".5" -msgstr ".5" - -#. TRANSLATORS: This has to fit on one line. It's ok to include few -#. words but don't write poems. -#: grub-core/normal/term.c:82 -msgid "--MORE--" -msgstr "--VIÅ E--" - -#: grub-core/osdep/aros/config.c:92 grub-core/osdep/unix/config.c:137 -#: grub-core/osdep/windows/config.c:55 -#, c-format -msgid "cannot open configuration file `%s': %s" -msgstr "nemoguće otvaranje datoteke podeÅ¡avanja `%s': %s" - -#: grub-core/osdep/basic/compress.c:8 grub-core/osdep/basic/compress.c:14 -#: grub-core/osdep/basic/compress.c:20 -msgid "no compression is available for your platform" -msgstr "nema dostupnog sažimanja za vaÅ¡u platformu" - -#: grub-core/osdep/basic/no_platform.c:30 -#: grub-core/osdep/windows/platform.c:418 -msgid "no IEEE1275 routines are available for your platform" -msgstr "nema IEEE1275 dostupnih rutina za vaÅ¡u platformu" - -#: grub-core/osdep/basic/no_platform.c:38 -msgid "no EFI routines are available for your platform" -msgstr "nema EFI rutine dostupne za vaÅ¡u platformu" - -#: grub-core/osdep/basic/no_platform.c:45 -#: grub-core/osdep/windows/platform.c:425 -msgid "no SGI routines are available for your platform" -msgstr "nema SGI dostupnih rutina za vaÅ¡u platformu" - -#. TRANSLATORS: The OS itself may very well have a random -#. number generator but GRUB doesn't know how to access it. -#: grub-core/osdep/basic/random.c:42 -msgid "no random number generator is available for your OS" -msgstr "nema naizmjeniÄnog broja generatora dostupnog za vaÅ¡ OS" - -#: grub-core/osdep/devmapper/getroot.c:81 -msgid "Failed to create `device-mapper' tree" -msgstr "Neuspjelo stvaranje `device-mapper' stabla" - -#: grub-core/osdep/devmapper/getroot.c:197 -#: grub-core/osdep/freebsd/getroot.c:202 -#, c-format -msgid "can't mount encrypted volume `%s': %s" -msgstr "neuspjelo montiranje ureÄ‘aja `%s': %s" - -#. TRANSLATORS: geom is the name of (k)FreeBSD device framework. -#. Usually left untranslated. -#. -#: grub-core/osdep/freebsd/getroot.c:82 grub-core/osdep/freebsd/getroot.c:164 -#: grub-core/osdep/freebsd/getroot.c:258 grub-core/osdep/freebsd/getroot.c:316 -msgid "couldn't open geom" -msgstr "neuspjelo otvaranje geoma" - -#: grub-core/osdep/freebsd/getroot.c:182 grub-core/osdep/freebsd/getroot.c:277 -msgid "couldn't find geli consumer" -msgstr "nemoguće je pronaći geli korisnika" - -#: grub-core/osdep/freebsd/getroot.c:282 -msgid "couldn't retrieve geli UUID" -msgstr "nemoguće je preuzeti geli UUID" - -#. TRANSLATORS: geom is the name of (k)FreeBSD device framework. -#. Usually left untranslated. "part" is the identifier of one of its -#. classes. -#: grub-core/osdep/freebsd/getroot.c:325 -msgid "couldn't find geom `part' class" -msgstr "nemoguće je pronaći geom `part' razred" - -#: grub-core/osdep/freebsd/hostdisk.c:72 grub-core/osdep/linux/hostdisk.c:93 -msgid "unaligned device size" -msgstr "neporavnana veliÄina ureÄ‘aja" - -#: grub-core/osdep/generic/blocklist.c:56 -#, c-format -msgid "attempting to read the core image `%s' from GRUB" -msgstr "pokuÅ¡aj Äitanja slike jezgre `%s' s GRUBA" - -#: grub-core/osdep/generic/blocklist.c:57 -#, c-format -msgid "attempting to read the core image `%s' from GRUB again" -msgstr "ponovni pokuÅ¡aj Äitanja slike jezgre `%s' s GRUBA" - -#: grub-core/osdep/generic/blocklist.c:115 -#, c-format -msgid "cannot read `%s' correctly" -msgstr "nemoguće ispravno Äitanje `%s'" - -#: grub-core/osdep/generic/blocklist.c:126 -msgid "failed to read the sectors of the core image" -msgstr "neuspjeÅ¡no Äitanje sektora slike jezgre" - -#. TRANSLATORS: On GNU/Hurd, a "translator" is similar to a filesystem -#. mount, but handled by a userland daemon, whose invocation command line -#. is being fetched here. First %s is the file being looked at (for which -#. we are fetching the "translator" command line), second %s is the error -#. message. -#. -#: grub-core/osdep/hurd/getroot.c:79 -#, c-format -msgid "cannot get translator command line for path `%s': %s" -msgstr "" -"nemoguće dobivanje naredbenog redka datoteÄnog sustava za putanju `%s': %s" - -#: grub-core/osdep/hurd/getroot.c:82 -#, c-format -msgid "translator command line is empty for path `%s'" -msgstr "naredbeni redak datoteÄnog sustava je prazan za putanju `%s'" - -#. TRANSLATORS: we expect to get something like -#. /hurd/foobar --option1 --option2=baz /dev/something -#. -#: grub-core/osdep/hurd/getroot.c:98 -#, c-format -msgid "" -"translator `%s' for path `%s' has several non-option words, at least `%s' " -"and `%s'" -msgstr "" -"datoteÄni sustav `%s' za putanju `%s' ima nekoliko rijeÄi koje ne pripadaju " -"u mogućnosti, barem `%s' i `%s'" - -#. TRANSLATORS: we expect to get something like -#. /hurd/foobar --option1 --option2=baz /dev/something -#. -#: grub-core/osdep/hurd/getroot.c:109 -#, c-format -msgid "" -"translator `%s' for path `%s' is given only options, cannot find device part" -msgstr "" -"datoteÄni sustav `%s' za putanju `%s' ima zadane samo mogućnosti, nemoguć " -"pronalazak putanje ureÄ‘aja" - -#: grub-core/osdep/hurd/hostdisk.c:73 -#, c-format -msgid "Storage information for `%s' does not include type" -msgstr "Informacije pohrane za `%s' ne ukljuÄuju vrstu" - -#: grub-core/osdep/hurd/hostdisk.c:75 -#, c-format -msgid "`%s' is not a local disk" -msgstr "`%s' nije lokalni disk" - -#: grub-core/osdep/hurd/hostdisk.c:78 -#, c-format -msgid "" -"Storage information for `%s' indicates neither a plain partition nor a plain " -"disk" -msgstr "" -"Informacija pohrane za `%s' ne sadržava obiÄnu particiju niti obiÄan disk" - -#: grub-core/osdep/linux/blocklist.c:81 grub-core/osdep/linux/blocklist.c:96 -#: grub-core/osdep/linux/blocklist.c:122 -#, c-format -msgid "can't retrieve blocklists: %s" -msgstr "nemoguće primanje popisa blokiranih: %s" - -#: grub-core/osdep/linux/blocklist.c:84 -msgid "blocksize is not divisible by 512" -msgstr "veliÄina bloka nije djeljiva sa 512" - -#: grub-core/osdep/linux/blocklist.c:86 -msgid "invalid zero blocksize" -msgstr "neispravna veliÄina nultog bloka" - -#: grub-core/osdep/linux/blocklist.c:90 util/setup.c:744 -msgid "can't retrieve blocklists" -msgstr "ne može primiti popise blokiranih" - -#: grub-core/osdep/linux/getroot.c:154 -#, c-format -msgid "ioctl RAID_VERSION error: %s" -msgstr "ioctl RAID_VERSION greÅ¡ka: %s" - -#: grub-core/osdep/linux/getroot.c:160 grub-core/osdep/linux/getroot.c:164 -#, c-format -msgid "unsupported RAID version: %d.%d" -msgstr "nepodržana RAID inaÄica: %d.%d" - -#: grub-core/osdep/linux/getroot.c:169 -#, c-format -msgid "ioctl GET_ARRAY_INFO error: %s" -msgstr "ioctl GET_ARRAY_INFO greÅ¡ka: %s" - -#: grub-core/osdep/linux/getroot.c:178 -#, c-format -msgid "ioctl GET_DISK_INFO error: %s" -msgstr "ioctl GET_DISK_INFO greÅ¡ka: %s" - -#: grub-core/osdep/linux/getroot.c:608 grub-core/osdep/linux/getroot.c:678 -#: grub-core/osdep/linux/hostdisk.c:126 grub-core/osdep/unix/getroot.c:253 -#: grub-core/osdep/unix/getroot.c:642 grub-core/osdep/unix/platform.c:92 -#: grub-core/osdep/unix/platform.c:100 -#, c-format -msgid "Unable to open stream from %s: %s" -msgstr "Neuspjelo otvaranje toka s %s: %s" - -#: grub-core/osdep/linux/getroot.c:1033 -#, c-format -msgid "unknown kind of RAID device `%s'" -msgstr "nepoznata vrsta RAID ureÄ‘aja `%s'" - -#: grub-core/osdep/linux/ofpath.c:181 -#, c-format -msgid "`obppath' not found in parent dirs of `%s', no IEEE1275 name discovery" -msgstr "" -"`obppath' nije pronaÄ‘ena u sadržajnom direktoriju `%s', nema IEEE1275 naziva " -"otkrivanja" - -#: grub-core/osdep/linux/ofpath.c:222 grub-core/osdep/unix/getroot.c:505 -#: grub-core/osdep/unix/getroot.c:529 grub-core/osdep/unix/relpath.c:49 -#: util/grub-install.c:984 util/grub-install.c:1331 util/grub-probe.c:323 -#, c-format -msgid "failed to get canonical path of `%s'" -msgstr "neuspjelo dobivanje canonical putanje za `%s'" - -#: grub-core/osdep/linux/ofpath.c:740 -#, c-format -msgid "unknown device type %s" -msgstr "nepoznata vrsta ureÄ‘aja %s" - -#: grub-core/osdep/linux/ofpath.c:758 util/ieee1275/grub-ofpathname.c:39 -#, c-format -msgid "Usage: %s DEVICE\n" -msgstr "Upotreba: %s UREÄAJ\n" - -#: grub-core/osdep/unix/exec.c:86 grub-core/osdep/unix/exec.c:172 -#: grub-core/osdep/unix/exec.c:217 -#, c-format -msgid "Unable to fork: %s" -msgstr "Nemoguće razdvojiti: %s" - -#: grub-core/osdep/unix/exec.c:166 grub-core/osdep/unix/exec.c:211 -#, c-format -msgid "Unable to create pipe: %s" -msgstr "Nemoguće stvaranje slivnika: %s" - -#: grub-core/osdep/unix/getroot.c:370 -msgid "cannot save the original directory" -msgstr "nemoguća spremanje izvornog direktorija" - -#: grub-core/osdep/unix/getroot.c:423 grub-core/osdep/unix/getroot.c:480 -#: grub-core/osdep/unix/getroot.c:489 -msgid "cannot restore the original directory" -msgstr "nemoguća obnova izvornog direktorija" - -#. TRANSLATORS: "stat" comes from the name of POSIX function. -#: grub-core/osdep/unix/getroot.c:551 grub-core/osdep/unix/hostdisk.c:61 -#: grub-core/osdep/unix/relpath.c:73 grub-core/osdep/unix/relpath.c:97 -#: util/getroot.c:160 util/getroot.c:162 util/grub-install.c:774 -#: util/grub-macbless.c:70 -#, c-format -msgid "cannot stat `%s': %s" -msgstr "nepoznato stanje `%s': %s" - -#: grub-core/osdep/unix/hostdisk.c:293 -#, c-format -msgid "cannot make temporary file: %s" -msgstr "nemoguće stvaranje privremene datoteke: %s" - -#: grub-core/osdep/unix/hostdisk.c:311 -#, c-format -msgid "cannot make temporary directory: %s" -msgstr "nemoguće stvaranje privremenog direktorija: %s" - -#: grub-core/osdep/unix/platform.c:77 -#, c-format -msgid "" -"couldn't find IEEE1275 device path for %s.\n" -"You will have to set `boot-device' variable manually" -msgstr "" -"nemoguć pronalazak IEEE1275 putanje ureÄ‘aja za %s.\n" -"Morate postaviti `boot-device' varijablu ruÄno" - -#. TRANSLATORS: This message is shown when required executable `%s' -#. isn't found. -#: grub-core/osdep/unix/platform.c:149 grub-core/osdep/unix/platform.c:189 -#, c-format -msgid "%s: not found" -msgstr "%s: nije pronaÄ‘en" - -#: grub-core/osdep/unix/platform.c:225 -#, c-format -msgid "" -"`nvsetenv' failed. \n" -"You will have to set `boot-device' variable manually. At the IEEE1275 " -"prompt, type:\n" -" %s\n" -msgstr "" -"`nvsetenv' neuspjelo. \n" -"Morate postaviti `boot-device' varijablu ruÄno. Na IEEE1275 upit, upiÅ¡ite:\n" -" %s\n" - -#: grub-core/osdep/unix/platform.c:240 -msgid "You will have to set `SystemPartition' and `OSLoader' manually." -msgstr "Morate postaviti `SystemPartition' i `OSLoader' ruÄno." - -#. TRANSLATORS: canonical pathname is the -#. complete one e.g. /etc/fstab. It has -#. to contain `/' normally, if it doesn't -#. we're in trouble and throw this error. -#: grub-core/osdep/unix/relpath.c:90 -msgid "no `/' in canonical filename" -msgstr "nema `/' u canonical nazivu datoteke" - -#: grub-core/osdep/windows/hostdisk.c:151 -msgid "cygwin_conv_path() failed" -msgstr "cygwin_conv_path() neuspio" - -#: grub-core/osdep/windows/hostdisk.c:501 util/grub-install.c:570 -msgid "couldn't retrieve random data" -msgstr "nemoguće primanje naizmjeniÄnih podataka" - -#: grub-core/osdep/windows/platform.c:97 -msgid "Insufficient privileges to access firmware, assuming BIOS" -msgstr "Nedovoljne ovlasti za pristup firmveru, pod pretpostavkom BIOS-a" - -#: grub-core/osdep/windows/platform.c:225 -msgid "no EFI routines are available when running in BIOS mode" -msgstr "nema dostupnih EFI rutina pri pokretanju u BIOS naÄinu" - -#: grub-core/osdep/windows/platform.c:240 -msgid "unexpected EFI error" -msgstr "neoÄekivana EFI greÅ¡ka" - -#: grub-core/osdep/windows/platform.c:315 -msgid "Couldn't find a free BootNNNN slot" -msgstr "Nemoguć pronalazak slobodnog BootNNNN utora" - -#: grub-core/partmap/gpt.c:191 -msgid "" -"this GPT partition label contains no BIOS Boot Partition; embedding won't be " -"possible" -msgstr "" -"ovaj naziv GPT particije ne sadrži BIOS Particiju PokretaÄa; ugradnja neće " -"biti moguća" - -#: grub-core/partmap/gpt.c:196 -msgid "your BIOS Boot Partition is too small; embedding won't be possible" -msgstr "vaÅ¡a BIOS Particija PokretaÄa je premalena; ugradnja neće biti moguća" - -#. TRANSLATORS: MBR gap and boot track is the same thing and is the space -#. between MBR and first partitition. If your language translates well only -#. "boot track", you can just use it everywhere. Next two messages are about -#. RAID controllers/software bugs which GRUB has to live with. Please spread -#. the message that these are bugs in other software and not merely -#. suboptimal behaviour. -#: grub-core/partmap/msdos.c:51 -#, c-format -msgid "" -"Sector %llu is already in use by raid controller `%s'; avoiding it. Please " -"ask the manufacturer not to store data in MBR gap" -msgstr "" -"Sektor %llu već koristi raid kontroler `%s'; izbjegavajte ga. Zatražite od " -"proizvoÄ‘aÄa da ne sprema podatke u MBR prostor" - -#: grub-core/partmap/msdos.c:54 -#, c-format -msgid "" -"Sector %llu is already in use by the program `%s'; avoiding it. This " -"software may cause boot or other problems in future. Please ask its authors " -"not to store data in the boot track" -msgstr "" -"Sektor %llu već koristi program `%s'; izbjegavate ga. Ovaj softver može " -"izazvati probleme pokretanja sustava ili druge probleme u budućnosti. " -"Zatražite od autora da ne spremaju podatke u zapisu pokretanja" - -#: grub-core/partmap/msdos.c:384 -msgid "" -"other software is using the embedding area, and there is not enough room for " -"core.img. Such software is often trying to store data in a way that avoids " -"detection. We recommend you investigate" -msgstr "" -"ostali softver koristi ugraÄ‘eno podruÄje i zato nema dovoljno prostora za " -"core.img. Takav softver Äesto pokuÅ¡ava spremiti podatke na naÄin da " -"izbjegne otkrivanje. PreporuÄujemo da to istražite" - -#: grub-core/partmap/msdos.c:395 -msgid "" -"this msdos-style partition label has no post-MBR gap; embedding won't be " -"possible" -msgstr "" -"ovaj msdos format naziv particije nema post-MBR prostor; ugradnja neće biti " -"moguća" - -#: grub-core/partmap/msdos.c:404 -msgid "your embedding area is unusually small. core.img won't fit in it." -msgstr "" -"vaÅ¡ prostor ugradnje je neobiÄno mali. core.img neće pristajati u njega." - -#: grub-core/parttool/msdospart.c:39 -msgid "Make partition active" -msgstr "UÄini particiju aktivnom" - -#: grub-core/parttool/msdospart.c:51 -msgid "not a primary partition" -msgstr "nije primarna particija" - -#: grub-core/parttool/msdospart.c:69 -#, c-format -msgid "Partition %d is active now. \n" -msgstr "Particija %d je sada aktivna. \n" - -#: grub-core/parttool/msdospart.c:74 -#, c-format -msgid "Cleared active flag on %d. \n" -msgstr "Uklonjena aktivna oznaka na %d. \n" - -#: grub-core/parttool/msdospart.c:87 -msgid "Change partition type" -msgstr "Promijeni vrstu particije" - -#: grub-core/parttool/msdospart.c:88 -msgid "Set `hidden' flag in partition type" -msgstr "Postavi `hidden' oznaku u vrstu particije" - -#: grub-core/parttool/msdospart.c:130 -#, c-format -msgid "the partition type 0x%x isn't valid" -msgstr "vrsta particije 0x%x nije valjana" - -#. TRANSLATORS: In this case we're actually writing to the disk and actively -#. modifying partition type rather than just defining it. -#: grub-core/parttool/msdospart.c:137 -#, c-format -msgid "Setting partition type to 0x%x\n" -msgstr "Postavljanje vrste particije na 0x%x\n" - -#. TRANSLATORS: 0 is a quantifier. "break" (similar to bash) -#. can be used e.g. to break 3 loops at once. -#. But asking it to break 0 loops makes no sense. -#: grub-core/script/execute.c:143 -msgid "can't break 0 loops" -msgstr "nemoguće prekidanje 0 ponavljanja" - -#. TRANSLATORS: It's about not being -#. inside a function. "return" can be used only -#. in a function and this error occurs if it's used -#. anywhere else. -#: grub-core/script/execute.c:227 -msgid "not in function body" -msgstr "nije u funkciji sadržaja" - -#: grub-core/script/execute.c:371 -#, c-format -msgid "invalid variable name `%s'" -msgstr "neispravan naziv varijable `%s'" - -#: grub-core/script/execute.c:953 -msgid "cannot allocate command buffer" -msgstr "nemoguće premjeÅ¡tanje naredbenog meÄ‘uspremnika" - -#: grub-core/script/lexer.c:144 util/grub-fstest.c:330 -msgid "unexpected end of file" -msgstr "neoÄekivani zavrÅ¡etak datoteke" - -#: grub-core/script/main.c:55 grub-core/script/main.c:57 -#: grub-core/script/main.c:59 grub-core/script/main.c:67 -msgid "[NUM]" -msgstr "[BROJ]" - -#: grub-core/script/main.c:55 -msgid "Exit from loops" -msgstr "IzaÄ‘i iz ponavljanja" - -#: grub-core/script/main.c:57 -msgid "Continue loops" -msgstr "Nastavi ponavljanja" - -#. TRANSLATORS: Positional arguments are -#. arguments $0, $1, $2, ... -#: grub-core/script/main.c:62 -msgid "Shift positional parameters." -msgstr "Shift parametri položaja." - -#: grub-core/script/main.c:64 -msgid "[VALUE]..." -msgstr "[VRIJEDNOST]..." - -#: grub-core/script/main.c:65 -msgid "Set positional parameters." -msgstr "Postavi parametre položaja." - -#. TRANSLATORS: It's a command description -#. and "Return" is a verb, not a noun. The -#. command in question is "return" and -#. has exactly the same semanics as bash -#. equivalent. -#: grub-core/script/main.c:73 -msgid "Return from a function." -msgstr "Vrati se iz funkcije." - -#: grub-core/term/gfxterm_background.c:176 -msgid "[-m (stretch|normal)] FILE" -msgstr "[-m (stretch|normal)] DATOTEKA" - -#: grub-core/term/gfxterm_background.c:177 -msgid "Load background image for active terminal." -msgstr "UÄitaj sliku pozadine za aktivni terminal." - -#: grub-core/term/gfxterm_background.c:182 util/grub-install.c:302 -#: util/grub-install.c:303 util/grub-mkrescue.c:107 util/grub-mkrescue.c:108 -#: util/grub-render-label.c:61 util/grub-render-label.c:63 -msgid "COLOR" -msgstr "BOJA" - -#: grub-core/term/gfxterm_background.c:183 -msgid "Set background color for active terminal." -msgstr "Postavi boju pozadine za aktivni terminal." - -#: grub-core/term/i386/coreboot/cbmemc.c:139 -msgid "Show CBMEM console content." -msgstr "Prikaži sadržaj CBMEM konzole." - -#: grub-core/term/serial.c:57 -msgid "Set the serial unit." -msgstr "Postavi serijski prikljuÄak." - -#: grub-core/term/serial.c:58 -msgid "Set the serial port address." -msgstr "Postavi adresu serijskog prikljuÄka." - -#: grub-core/term/serial.c:59 -msgid "Set the serial port speed." -msgstr "Postavi brzinu serijskog prikljuÄka." - -#: grub-core/term/serial.c:60 -msgid "Set the serial port word length." -msgstr "Postavi duljinu rijeÄi serijskog prikljuÄka." - -#: grub-core/term/serial.c:61 -msgid "Set the serial port parity." -msgstr "Postavi paritet serijskog prikljuÄka." - -#: grub-core/term/serial.c:62 -msgid "Set the serial port stop bits." -msgstr "Postavi bit zaustavljanja serijskog prikljuÄka." - -#: grub-core/term/serial.c:63 -msgid "Set the base frequency." -msgstr "Postavi osnovnu frekvenciju." - -#: grub-core/term/serial.c:64 -msgid "Enable/disable RTS/CTS." -msgstr "Omogući/Onemogući RTS/CTS." - -#: grub-core/term/serial.c:218 -#, c-format -msgid "serial port `%s' isn't found" -msgstr "serijski prikljuÄak `%s' nije pronaÄ‘en" - -#: grub-core/term/serial.c:254 -msgid "unsupported serial port flow control" -msgstr "nepodržano upravljanje protokom serijskog prikljuÄka" - -#: grub-core/term/serial.c:429 -msgid "[OPTIONS...]" -msgstr "[MOGUĆNOSTI...]" - -#: grub-core/term/serial.c:430 -msgid "Configure serial port." -msgstr "Podesi serijski prikljuÄak." - -#: grub-core/term/terminfo.c:184 -#, c-format -msgid "unknown terminfo type `%s'" -msgstr "nepoznata vrsta izraza informacije `%s'" - -#: grub-core/term/terminfo.c:668 -msgid "ASCII" -msgstr "ASCII" - -#: grub-core/term/terminfo.c:671 -msgid "UTF-8" -msgstr "UTF-8" - -#. TRANSLATORS: visually ordered UTF-8 is a non-compliant encoding -#. based on UTF-8 with right-to-left languages written in reverse. -#. Used on some terminals. Normal UTF-8 is refered as -#. "logically-ordered UTF-8" by opposition. -#: grub-core/term/terminfo.c:677 -msgid "visually-ordered UTF-8" -msgstr "vizualno-poredan UTF-8" - -#: grub-core/term/terminfo.c:680 -msgid "Unknown encoding" -msgstr "Nepoznato enkôdiranje" - -#: grub-core/term/terminfo.c:684 -msgid "Current terminfo types:" -msgstr "Trenutna vrsta izraza informacija:" - -#: grub-core/term/terminfo.c:699 -msgid "Terminal is ASCII-only [default]." -msgstr "Terminal je ASCII-samo [uobiÄajeno]." - -#: grub-core/term/terminfo.c:700 -msgid "Terminal is logical-ordered UTF-8." -msgstr "Terminal je logiÄno-poredan UTF-8." - -#: grub-core/term/terminfo.c:701 -msgid "Terminal is visually-ordered UTF-8." -msgstr "Terminal je vizualno-poredan UTF-8." - -#: grub-core/term/terminfo.c:703 -msgid "Terminal has specified geometry." -msgstr "Terminal ima odreÄ‘enu geometriju." - -#. TRANSLATORS: "x" has to be entered in, like an identifier, so please don't -#. use better Unicode codepoints. -#: grub-core/term/terminfo.c:706 -msgid "WIDTHxHEIGHT." -msgstr "Å IRINAxVISINA." - -#: grub-core/term/terminfo.c:746 -msgid "incorrect terminal dimensions specification" -msgstr "neispravne specifikacije dimenzija terminala" - -#: grub-core/term/terminfo.c:776 -#, c-format -msgid "terminal %s isn't found or it's not handled by terminfo" -msgstr "terminal %s nije pronaÄ‘en ili nije rukovan s izrazom informacije" - -#: grub-core/term/terminfo.c:785 -msgid "[[-a|-u|-v] [-g WxH] TERM [TYPE]]" -msgstr "[[-a|-u|-v] [-g Å xV] IZRAZ [VRSTA]]" - -#: grub-core/term/terminfo.c:786 -msgid "Set terminfo type of TERM to TYPE.\n" -msgstr "Postavite vrstu informacije izraza iz IZRAZ U VRSTU.\n" - -#. TRANSLATORS: this is the BLOCK-argument, not -#. environment block. -#: grub-core/tests/test_blockarg.c:49 -msgid "Print and execute block argument." -msgstr "Prikaži i pokreni argumente bloka." - -#. TRANSLATORS: We're speaking about bitmap images like -#. JPEG or PNG. -#: grub-core/video/bitmap.c:209 -#, c-format -msgid "bitmap file `%s' is of unsupported format" -msgstr "bitmap datoteka `%s' je nepodržanog formata" - -#: grub-core/video/i386/pc/vbe.c:1191 -#, c-format -msgid " VBE info: version: %d.%d OEM software rev: %d.%d\n" -msgstr " VBE info: inaÄica: %d.%d OEM softver rev: %d.%d\n" - -#: grub-core/video/i386/pc/vbe.c:1198 -#, c-format -msgid " total memory: %d KiB\n" -msgstr " ukupno memorije: %d KiB\n" - -#: grub-core/video/video.c:596 grub-core/video/video.c:762 -msgid "no suitable video mode found" -msgstr "nema pronaÄ‘enog prikladnog video naÄina rada" - -#: include/grub/crypto.h:403 -msgid "access denied" -msgstr "pristup odbijen" - -#: include/grub/util/install.h:30 include/grub/util/install.h:35 -msgid "MODULES" -msgstr "MODULI" - -#: include/grub/util/install.h:31 -msgid "pre-load specified modules MODULES" -msgstr "preduÄitaj odreÄ‘ene module MODULI" - -#: include/grub/util/install.h:33 -msgid "embed a specific DTB" -msgstr "ugradi odreÄ‘eni DTB" - -#: include/grub/util/install.h:36 -msgid "install only MODULES and their dependencies [default=all]" -msgstr "instaliraj samo MODULE i njihove zavisnosti [zadano=sve]" - -#: include/grub/util/install.h:37 -msgid "THEMES" -msgstr "TEME" - -#: include/grub/util/install.h:38 -#, c-format -msgid "install THEMES [default=%s]" -msgstr "instaliraj TEME [uobiÄajeno=%s]" - -#: include/grub/util/install.h:39 -msgid "FONTS" -msgstr "SLOVA" - -#: include/grub/util/install.h:40 -#, c-format -msgid "install FONTS [default=%s]" -msgstr "instaliraj SLOVA [uobiÄajena=%s]" - -#: include/grub/util/install.h:41 -msgid "LOCALES" -msgstr "LOKALIZACIJA" - -#: include/grub/util/install.h:42 -msgid "install only LOCALES [default=all]" -msgstr "instaliraj samo LOKALIZACIJU [zadano=sva]" - -#: include/grub/util/install.h:45 -msgid "compress GRUB files [optional]" -msgstr "sažmi GRUB datoteke [neobavezno]" - -#: include/grub/util/install.h:48 util/grub-mkimage.c:83 -msgid "choose the compression to use for core image" -msgstr "odaberite sažimanje koje će koristiti slika jezgre" - -#. TRANSLATORS: platform here isn't identifier. It can be translated. -#: include/grub/util/install.h:51 include/grub/util/install.h:54 -#: util/grub-mkimage.c:66 -#, c-format -msgid "use images and modules under DIR [default=%s/]" -msgstr "koristi slike i module u DIR [uobiÄajeno=%s/]" - -#: include/grub/util/install.h:57 -#, c-format -msgid "use translations under DIR [default=%s]" -msgstr "koristi prijevode u DIR [uobiÄajeni=%s]" - -#: include/grub/util/install.h:60 -#, c-format -msgid "use themes under DIR [default=%s]" -msgstr "koristi teme u DIR [uobiÄajeno=%s]" - -#: include/grub/util/install.h:65 util/grub-mkimage.c:78 -msgid "embed FILE as public key for signature checking" -msgstr "postavi DATOTEKU kao javni kljuÄ za provjeru potpisa" - -#: util/editenv.c:59 util/grub-editenv.c:201 util/grub-install-common.c:535 -#: util/grub-mkimage.c:315 util/setup.c:791 -#, c-format -msgid "cannot sync `%s': %s" -msgstr "nemoguće usklaÄ‘ivanje `%s': %s" - -#: util/editenv.c:64 -#, c-format -msgid "cannot rename the file %s to %s" -msgstr "nemoguće preimenovanje datoteke %s u %s" - -#: util/getroot.c:402 -#, c-format -msgid "disk does not exist, so falling back to partition device %s" -msgstr "disk ne postoji, stoga se vraćam natrag na ureÄ‘aj particije %s" - -#: util/grub-editenv.c:45 util/grub-fstest.c:506 -msgid "Commands:" -msgstr "Naredbe:" - -#: util/grub-editenv.c:47 -msgid "Create a blank environment block file." -msgstr "Stvori praznu datoteku bloka okruženja." - -#: util/grub-editenv.c:49 -msgid "List the current variables." -msgstr "PopiÅ¡i trenutne varijable." - -#. TRANSLATORS: "set" is a keyword. It's a summary of "set" subcommand. -#: util/grub-editenv.c:51 -msgid "set [NAME=VALUE ...]" -msgstr "postavi [NAZIV=VRIJEDNOST...]" - -#: util/grub-editenv.c:52 -msgid "Set variables." -msgstr "Postavi varijable." - -#. TRANSLATORS: "unset" is a keyword. It's a summary of "unset" subcommand. -#: util/grub-editenv.c:54 -msgid "unset [NAME ...]" -msgstr "ukloni [NAZIV...]" - -#: util/grub-editenv.c:55 -msgid "Delete variables." -msgstr "ObriÅ¡i varijable." - -#: util/grub-editenv.c:57 -msgid "Options:" -msgstr "Mogućnosti:" - -#: util/grub-editenv.c:84 -msgid "You need to specify at least one command.\n" -msgstr "Morate zadati bar jednu naredbu.\n" - -#: util/grub-editenv.c:113 -msgid "FILENAME COMMAND" -msgstr "NAREDBA NAZIVA DATOTEKE" - -#: util/grub-editenv.c:114 -msgid "Tool to edit environment block." -msgstr "Alat za ureÄ‘ivanje bloka okruženja." - -#: util/grub-editenv.c:116 -#, c-format -msgid "" -"If FILENAME is `-', the default value %s is used.\n" -"\n" -"There is no `delete' command; if you want to delete the whole environment\n" -"block, use `rm %s'." -msgstr "" -"Ako je NAZIV DATOTEKE `-', zadana vrijednost %s se koristi.\n" -"\n" -"Ne postoji `delete' naredba, ako želite obrisati cijeli blok\n" -"okruženja, korsitite `rm %s'." - -#: util/grub-editenv.c:162 -msgid "invalid environment block" -msgstr "neispravan blok okruženja" - -#: util/grub-editenv.c:217 -#, c-format -msgid "invalid parameter %s" -msgstr "neispravan parametar %s" - -#: util/grub-editenv.c:222 -msgid "environment block too small" -msgstr "blok okruženja je premali" - -#: util/grub-fstest.c:107 -#, c-format -msgid "disk read fails at offset %lld, length %lld" -msgstr "Äitanje diska neuspjelo na pomaku %lld, duljini %lld" - -#: util/grub-fstest.c:138 -#, c-format -msgid "invalid skip value %lld" -msgstr "neispravna vrijednost preskoka %lld" - -#: util/grub-fstest.c:160 util/grub-fstest.c:246 -#, c-format -msgid "read error at offset %llu: %s" -msgstr "greÅ¡ka Äitanja na pomaku %llu: %s" - -#: util/grub-fstest.c:210 -#, c-format -msgid "cannot open OS file `%s': %s" -msgstr "nemoguće otvaranje datoteke OS-a `%s': %s" - -#: util/grub-fstest.c:225 util/misc.c:126 -#, c-format -msgid "cannot write to the stdout: %s" -msgstr "nemoguće zapisivanje u stdout: %s" - -#: util/grub-fstest.c:259 -#, c-format -msgid "compare fail at offset %llu" -msgstr "usporedi neuspjeh na pomaku %llu" - -#: util/grub-fstest.c:280 util/grub-fstest.c:314 -#, c-format -msgid "OS file %s open error: %s" -msgstr "Datoteka OS-a %s greÅ¡ka otvaranja: %s" - -#: util/grub-fstest.c:402 util/grub-mount.c:392 -#, c-format -msgid "`loopback' command fails: %s" -msgstr "`loopback' naredba neuspjela: %s" - -#: util/grub-fstest.c:413 util/grub-mount.c:402 -#, c-format -msgid "`cryptomount' command fails: %s" -msgstr "`cryptomount' naredba neuspjela: %s" - -#: util/grub-fstest.c:474 util/grub-fstest.c:478 -msgid "couldn't retrieve UUID" -msgstr "nemoguće primanje UUID-a" - -#: util/grub-fstest.c:507 -msgid "ls PATH" -msgstr "ls PUTANJA" - -#: util/grub-fstest.c:507 -msgid "List files in PATH." -msgstr "Prikaži datoteke u PUTANJI." - -#: util/grub-fstest.c:508 -msgid "cp FILE LOCAL" -msgstr "cp LOKALNA DATOTEKA" - -#: util/grub-fstest.c:508 -msgid "Copy FILE to local file LOCAL." -msgstr "Kopiraj DATOTEKU u lokalnu datoteku LOKALNO." - -#: util/grub-fstest.c:509 -msgid "cat FILE" -msgstr "cat DATOTEKA" - -#: util/grub-fstest.c:509 -msgid "Copy FILE to standard output." -msgstr "Kopiraj DATOTEKU u standardni izlaz." - -#: util/grub-fstest.c:510 -msgid "cmp FILE LOCAL" -msgstr "cmp LOKALNA DATOTEKA" - -#: util/grub-fstest.c:510 -msgid "Compare FILE with local file LOCAL." -msgstr "Usporedi DATOTEKU s lokalnom datotekom LOKALNO." - -#: util/grub-fstest.c:511 -msgid "hex FILE" -msgstr "hex DATOTEKA" - -#: util/grub-fstest.c:511 -msgid "Show contents of FILE in hex." -msgstr "Prikaži sadržaj DATOTEKE heksadecimalno." - -#: util/grub-fstest.c:512 -msgid "crc FILE" -msgstr "crc DATOTEKA" - -#: util/grub-fstest.c:512 -msgid "Get crc32 checksum of FILE." -msgstr "Provjera crc32 jedinstvene vrijednosti DATOTEKE." - -#: util/grub-fstest.c:513 -msgid "blocklist FILE" -msgstr "blocklist DATOTEKA" - -#: util/grub-fstest.c:513 -msgid "Display blocklist of FILE." -msgstr "Prikaži popis blokiranih DATOTEKE." - -#: util/grub-fstest.c:514 -msgid "xnu_uuid DEVICE" -msgstr "xnu_uuid UREÄAJ" - -#: util/grub-fstest.c:514 -msgid "Compute XNU UUID of the device." -msgstr "IzraÄunaj XNU UUID ureÄ‘aja." - -#. TRANSLATORS: bitmaps are images like e.g. in JPEG. -#: util/grub-fstest.c:517 util/grub-fstest.c:518 util/grub-fstest.c:519 -#: util/grub-mkfont.c:938 util/grub-mkfont.c:951 util/grub-mkfont.c:952 -#: util/grub-mkpasswd-pbkdf2.c:46 util/grub-mkpasswd-pbkdf2.c:47 -#: util/grub-mkpasswd-pbkdf2.c:48 -msgid "NUM" -msgstr "BROJ" - -#: util/grub-fstest.c:517 -msgid "Skip N bytes from output file." -msgstr "PreskoÄi N bitove u izlaznoj datoteci." - -#: util/grub-fstest.c:518 -msgid "Handle N bytes in output file." -msgstr "Rukovanje N bitovima u izlaznoj datoteci." - -#: util/grub-fstest.c:519 -msgid "Specify the number of input files." -msgstr "Odredi broj ulaznih datoteka." - -#: util/grub-fstest.c:520 util/grub-mount.c:453 -msgid "Set debug environment variable." -msgstr "Postavi varijablu okruženja otkrivanja greÅ¡aka." - -#: util/grub-fstest.c:521 util/grub-mount.c:454 -msgid "Mount crypto devices." -msgstr "Montiraj ureÄ‘aje za Å¡ifriranje." - -#. TRANSLATORS: "prompt" is a keyword. -#: util/grub-fstest.c:524 util/grub-mount.c:457 -msgid "FILE|prompt" -msgstr "DATOTEKA|upit" - -#: util/grub-fstest.c:524 util/grub-mount.c:457 -msgid "Load zfs crypto key." -msgstr "UÄitaj zfs kljuÄ Å¡ifriranja." - -#: util/grub-fstest.c:526 -msgid "Uncompress data." -msgstr "Nesažeti podaci." - -#: util/grub-fstest.c:605 -msgid "Invalid disk count.\n" -msgstr "Neispravan broj diska.\n" - -#. TRANSLATORS: disk count is optional but if it's there it must -#. be before disk list. So please don't imply disk count as mandatory. -#. -#: util/grub-fstest.c:613 -msgid "Disk count must precede disks list.\n" -msgstr "Broj diska mora prednjaÄiti popisu diskova.\n" - -#: util/grub-fstest.c:633 -msgid "No command is specified.\n" -msgstr "Naredba nije navedena.\n" - -#: util/grub-fstest.c:638 -msgid "Not enough parameters to command.\n" -msgstr "Nema dovoljno parametara za naredbu.\n" - -#: util/grub-fstest.c:711 -#, c-format -msgid "Invalid command %s.\n" -msgstr "Neispravna naredba %s.\n" - -#: util/grub-fstest.c:724 -msgid "IMAGE_PATH COMMANDS" -msgstr "NAREDBE PUTANJE_SLIKE" - -#: util/grub-fstest.c:725 util/grub-mount.c:553 -msgid "Debug tool for filesystem driver." -msgstr "Alat otklanjanja greÅ¡aka za upravljaÄki program datoteÄnog sustava." - -#: util/grub-glue-efi.c:53 -msgid "set input filename for 32-bit part." -msgstr "postavi naziv datoteke ulaza za 32-bitni dio." - -#: util/grub-glue-efi.c:55 -msgid "set input filename for 64-bit part." -msgstr "postavi naziv datoteke ulaza za 64-bitni dio." - -#: util/grub-glue-efi.c:57 util/grub-mklayout.c:55 util/grub-render-label.c:71 -msgid "set output filename. Default is STDOUT" -msgstr "postavi naziv datoteke izlaza. Zadano je STDOUT" - -#: util/grub-glue-efi.c:94 util/grub-mklayout.c:476 -#: util/grub-mkpasswd-pbkdf2.c:86 util/grub-render-label.c:131 -msgid "[OPTIONS]" -msgstr "[MOGUĆNOSTI]" - -#: util/grub-glue-efi.c:95 -msgid "Glue 32-bit and 64-bit binary into Apple universal one." -msgstr "Spoji 32-bitnu i 64-bitnu binarnu datoteku u jednu Apple univerzalnu." - -#: util/grub-glue-efi.c:116 -msgid "Missing input file\n" -msgstr "Nedostaje ulazna datoteka\n" - -#: util/grub-install-common.c:127 util/grub-install-common.c:151 -#, c-format -msgid "cannot copy `%s' to `%s': %s" -msgstr "nemoguće kopiranje `%s' u `%s': %s" - -#: util/grub-install-common.c:147 -#, c-format -msgid "can't compress `%s' to `%s'" -msgstr "nemoguće sažimanje `%s' u `%s'" - -#: util/grub-install-common.c:196 util/grub-install-common.c:552 -#: util/grub-install-common.c:579 util/grub-install-common.c:621 -#, c-format -msgid "cannot open directory `%s': %s" -msgstr "nemoguće otvaranje direktorija `%s': %s" - -#: util/grub-install-common.c:212 -#, c-format -msgid "cannot delete `%s': %s" -msgstr "nemoguće brisanje `%s': %s" - -#: util/grub-install-common.c:324 util/grub-mkimage.c:209 -msgid "grub-mkimage is compiled without XZ support" -msgstr "grub-mkimage je kompajlirana bez XZ podrÅ¡ke" - -#: util/grub-install-common.c:332 util/grub-mkimage.c:217 -#, c-format -msgid "Unknown compression format %s" -msgstr "Nepoznat format sažimanja %s" - -#: util/grub-install-common.c:400 -#, c-format -msgid "Unrecognized compression `%s'" -msgstr "Neprepoznato sažimanje `%s'" - -#: util/grub-install-common.c:509 -#, c-format -msgid "unknown target format %s" -msgstr "nepoznat format odrediÅ¡ta %s" - -#: util/grub-install-common.c:700 -#, c-format -msgid "cannot find locale `%s'" -msgstr "nemoguće pronaći lokalni `%s'" - -#: util/grub-install-common.c:939 -#, c-format -msgid "%s doesn't exist. Please specify --target or --directory" -msgstr "%s ne postoji. Odredite --target ili --directory" - -#: util/grub-install-common.c:948 util/grub-install-common.c:951 -#, c-format -msgid "invalid modinfo file `%s'" -msgstr "neispravna modinfo datoteka `%s'" - -#: util/grub-install-common.c:966 -#, c-format -msgid "Unknown platform `%s-%s'" -msgstr "Nepoznata platforma `%s-%s'" - -#: util/grub-install.c:238 -msgid "More than one install device?" -msgstr "Instaliraj viÅ¡e od jednog ureÄ‘aja?" - -#: util/grub-install.c:251 -#, c-format -msgid "" -"install GRUB images under the directory DIR/%s instead of the %s directory" -msgstr "instaliraj GRUB slike u direktorij DIR/%s umjesto u %s direktorji" - -#: util/grub-install.c:256 util/grub-probe.c:734 -msgid "TARGET" -msgstr "ODREDIÅ TE" - -#. TRANSLATORS: "TARGET" as in "target platform". -#: util/grub-install.c:258 -#, c-format -msgid "install GRUB for TARGET platform [default=%s]; available targets: %s" -msgstr "" -"instaliraj GRUB za ODREDIÅ NU platformu [zadano=%s]; dostupna odrediÅ¡ta: %s" - -#. TRANSLATORS: "may break" doesn't just mean that option wouldn't have any -#. effect but that it will make the resulting install unbootable from HDD. -#. TRANSLATORS: The potential breakage isn't limited to floppies but it's -#. likely to make the install unbootable from HDD. -#: util/grub-install.c:267 util/grub-setup.c:94 -msgid "" -"make the drive also bootable as floppy (default for fdX devices). May break " -"on some BIOSes." -msgstr "" -"uÄini ureÄ‘aj pokretljiv s diskete (uobiÄajeno za fdX ureÄ‘aje). Može se " -"slomiti na odreÄ‘enim BIOS-ima." - -#: util/grub-install.c:270 -msgid "delete device map if it already exists" -msgstr "obriÅ¡i mapu ureÄ‘aja ako već postoji" - -#: util/grub-install.c:272 util/grub-setup.c:87 -msgid "install even if problems are detected" -msgstr "instaliraj iako su problemi otkriveni" - -#: util/grub-install.c:274 -msgid "use identifier file even if UUID is available" -msgstr "koristi datoteku identifikacije iako je UUID dostupan" - -#: util/grub-install.c:276 -msgid "" -"disk module to use (biosdisk or native). This option is only available on " -"BIOS target." -msgstr "" -"disk modul za koriÅ¡tenje (biosdisk ili izvoran). Ova mogućnost je samo " -"dostupna na BIOS odrediÅ¡tu." - -#: util/grub-install.c:279 -msgid "" -"don't update the `boot-device'/`Boot*' NVRAM variables. This option is only " -"available on EFI and IEEE1275 targets." -msgstr "" -"ne nadopunjuj `boot-device'/`Boot*' NVRAM varijable. Ova mogućnost je samo " -"dostupna na EFI i IEEE1275 odrediÅ¡tima." - -#: util/grub-install.c:282 util/grub-setup.c:89 -msgid "do not probe for filesystems in DEVICE" -msgstr "ne sondiraj datoteÄne sustave u UREÄAJIMA" - -#: util/grub-install.c:284 -msgid "do not install bootsector" -msgstr "nemoj instalirati sektor pokretanja" - -#: util/grub-install.c:286 util/grub-setup.c:96 -msgid "" -"Do not apply any reed-solomon codes when embedding core.img. This option is " -"only available on x86 BIOS targets." -msgstr "" -"Ne primjenjuj nikakve reed-solomon kôdove pri ugraÄ‘ivanju core.img. Ta " -"mogućnost je samo moguća na x86 BIOS sustavima." - -#: util/grub-install.c:293 -msgid "" -"the installation device is removable. This option is only available on EFI." -msgstr "" -"instalacijski ureÄ‘aj je uklonjiv. Ova mogućnost je dostupna samo na EFI." - -#: util/grub-install.c:295 -msgid "ID" -msgstr "ID" - -#: util/grub-install.c:296 -msgid "the ID of bootloader. This option is only available on EFI and Macs." -msgstr "" -"ID uÄitaÄa pokretanja sustava. Ova mogućnost je samo dostupna na EFI i " -"Macovima." - -#: util/grub-install.c:298 -msgid "use DIR as the EFI System Partition root." -msgstr "koristi DIR kao EFI korijensku particiju sustava." - -#: util/grub-install.c:300 -msgid "use DIR for PPC MAC install." -msgstr "koristi DIR za PPC MAC instalaciju." - -#: util/grub-install.c:301 util/grub-mkrescue.c:106 -msgid "use FILE as font for label" -msgstr "koristi DATOTEKU kao slova naziva" - -#: util/grub-install.c:302 util/grub-mkrescue.c:107 -msgid "use COLOR for label" -msgstr "koristi BOJU za nazive" - -#: util/grub-install.c:303 util/grub-mkrescue.c:108 -msgid "use COLOR for label background" -msgstr "koristi BOJU za pozadinu naziva" - -#: util/grub-install.c:304 util/grub-mkrescue.c:110 -msgid "use STRING as product version" -msgstr "koristi ZNAK kao inaÄicu proizvoda" - -#: util/grub-install.c:361 -msgid "[OPTION] [INSTALL_DEVICE]" -msgstr "[MOGUĆNOST] [UREÄAJ_INSTALACIJE]" - -#: util/grub-install.c:362 -msgid "Install GRUB on your drive." -msgstr "Instalirajte GRUB na vaÅ¡ ureÄ‘aj." - -#: util/grub-install.c:363 -#, c-format -msgid "" -"INSTALL_DEVICE must be system device filename.\n" -"%s copies GRUB images into %s. On some platforms, it may also install GRUB " -"into the boot sector." -msgstr "" -"UREÄAJ_INSTALACIJE mora biti naziv datoteke ureÄ‘aja sustava.\n" -"%s kopira GRUB slike u %s. Na nekim platformama, može instalirati GRUB u " -"sektor pokretanja." - -#: util/grub-install.c:672 -#, c-format -msgid "the drive %s is defined multiple times in the device map %s" -msgstr "ureÄ‘aj %s je odreÄ‘en viÅ¡e puta u mapi ureÄ‘aja %s" - -#: util/grub-install.c:878 -msgid "Unable to determine your platform. Use --target." -msgstr "Nemoguće otkrivanje vaÅ¡e platforme. Koristite --target." - -#: util/grub-install.c:891 -#, c-format -msgid "Installing for %s platform.\n" -msgstr "Instalacija za %s platforme.\n" - -#: util/grub-install.c:939 -msgid "install device isn't specified" -msgstr "instalacijski ureÄ‘aj nije odreÄ‘en" - -#: util/grub-install.c:1057 -msgid "cannot find EFI directory" -msgstr "nemoguć pronalazak EFI direktorija" - -#: util/grub-install.c:1060 util/grub-install.c:1209 util/grub-install.c:1254 -#: util/grub-macbless.c:76 util/grub-probe.c:329 util/setup.c:316 -#, c-format -msgid "cannot find a device for %s (is /dev mounted?)" -msgstr "nemoguće pronalazak ureÄ‘aja za %s (je li /dev montiran?)" - -#: util/grub-install.c:1069 util/grub-install.c:1217 util/grub-install.c:1270 -#: util/grub-install.c:1365 util/grub-macbless.c:80 util/grub-probe.c:372 -#, c-format -msgid "cannot find a GRUB drive for %s. Check your device.map" -msgstr "nemoguć pronalazak GRUB ureÄ‘aja za %s. Provjerite svoj device.map" - -#: util/grub-install.c:1087 -#, c-format -msgid "%s doesn't look like an EFI partition" -msgstr "%s ne izgleda poput EFI particije" - -#: util/grub-install.c:1129 util/grub-install.c:1614 -msgid "You've found a bug" -msgstr "PronaÅ¡li ste greÅ¡ku" - -#: util/grub-install.c:1231 -#, c-format -msgid "filesystem on %s is neither HFS nor HFS+" -msgstr "datoteÄni sustav na %s nije ni HFS ni HFS+" - -#: util/grub-install.c:1299 -#, c-format -msgid "" -"attempt to install to encrypted disk without cryptodisk enabled. Set `%s' in " -"file `%s'" -msgstr "" -"pokuÅ¡aj instalacije na Å¡ifrirani disk bez omogućenog cryptodiska. Postavi `" -"%s' u datoteci `%s'" - -#: util/grub-install.c:1410 util/grub-install.c:1772 util/grub-install.c:1872 -#, c-format -msgid "Can't create file: %s" -msgstr "Nemoguće stvaranje datoteke: %s" - -#: util/grub-install.c:1491 -msgid "no hints available for your platform. Expect reduced performance" -msgstr "nema dostupnih opisa za vaÅ¡u plaformu. OÄekujte smanjene performanse" - -#. TRANSLATORS: This is a prefix in the log to indicate that usually -#. a command would be executed but due to an option was skipped. -#: util/grub-install.c:1702 -msgid "NOT RUNNING: " -msgstr "NIJE POKRENUTO: " - -#: util/grub-install.c:1806 -msgid "the chosen partition is not a PReP partition" -msgstr "odabrana particija nije PReP particija" - -#: util/grub-install.c:1811 -msgid "failed to copy Grub to the PReP partition" -msgstr "neuspjelo kopiranje Gruba u PReP particiju" - -#: util/grub-install.c:1816 -#, c-format -msgid "" -"the PReP partition is not empty. If you are sure you want to use it, run dd " -"to clear it: `%s'" -msgstr "" -"PReP particija nije prazna. Ako ju sigurno želite koristiti, pokrenite dd " -"kako bi ju obrisali: `%s'" - -#: util/grub-install.c:1888 util/grub-install.c:1932 -#, c-format -msgid "efibootmgr failed to register the boot entry: %s" -msgstr "efibootmgr nije uspio registrirati unos pokretanja: %s" - -#: util/grub-install.c:1916 -msgid "EFI bootloader id isn't specified." -msgstr "ID EFI uÄitaÄ pokretanja nije odreÄ‘en." - -#: util/grub-install.c:1950 -msgid "WARNING: no platform-specific install was performed" -msgstr "UPOZORENJE: nije izvedena instalacija odreÄ‘ene platforme" - -#: util/grub-install.c:1957 -msgid "Installation finished. No error reported." -msgstr "Instalacija zavrÅ¡ena. Nema prijavljenih greÅ¡aka." - -#: util/grub-macbless.c:101 -msgid "bless for x86-based macs" -msgstr "dopusti za x86-temeljene macove" - -#: util/grub-macbless.c:103 -msgid "bless for ppc-based macs" -msgstr "dopusti za ppc-temeljene macove" - -#: util/grub-macbless.c:136 util/grub-probe.c:823 -msgid "No path or device is specified.\n" -msgstr "Nema odreÄ‘enih putanja ili ureÄ‘aja.\n" - -#: util/grub-macbless.c:157 -msgid "--ppc PATH|--x86 FILE" -msgstr "--ppc PUTANJA|--x86 DATOTEKA" - -#: util/grub-macbless.c:158 -msgid "Mac-style bless on HFS or HFS+" -msgstr "Mac format dopusti na HFS ili HFS+" - -#: util/grub-menulst2cfg.c:44 -#, c-format -msgid "Usage: %s [INFILE [OUTFILE]]\n" -msgstr "Upotreba: %s [ULAZNA DATOTEKA [IZLAZNA DATOTEKA]]\n" - -#: util/grub-mkfont.c:157 -#, c-format -msgid "Freetype Error %d loading glyph 0x%x for U+0x%x%s" -msgstr "Freetype greÅ¡ka %d uÄitava slikovni znak 0x%x za U+0x%x%s" - -#. TRANSLATORS: These qualifiers are used for cursive typography, -#. mainly Arabic. Note that the terms refer to the visual position -#. and not logical order and if used in left-to-right script then -#. leftmost is initial but with right-to-left script like Arabic -#. rightmost is the initial. -#: util/grub-mkfont.c:165 -msgid " (medial)" -msgstr " (srednji)" - -#: util/grub-mkfont.c:166 -msgid " (leftmost)" -msgstr " (najljeviji)" - -#: util/grub-mkfont.c:167 -msgid " (rightmost)" -msgstr " (najdesniji)" - -#: util/grub-mkfont.c:481 -#, c-format -msgid "Out of range substitution (%d, %d)\n" -msgstr "Izvan raspona zamjene (%d, %d)\n" - -#. TRANSLATORS: "lookup" is taken directly from font specifications -#. which are formulated as "Under condition X replace LOOKUP with -#. SUBSTITUITION". " -#: util/grub-mkfont.c:506 -#, c-format -msgid "Out of range lookup: %d\n" -msgstr "Izvan raspona pretrage: %d\n" - -#: util/grub-mkfont.c:514 -#, c-format -msgid "Unsupported substitution type: %d\n" -msgstr "Nepodržana vrsta zamjene: %d\n" - -#: util/grub-mkfont.c:550 -#, c-format -msgid "Unsupported substitution specification: %d\n" -msgstr "Nepodržan opis zamjene: %d\n" - -#: util/grub-mkfont.c:582 -#, c-format -msgid "Unsupported coverage specification: %d\n" -msgstr "Nepodržan opseg zamjene: %d\n" - -#: util/grub-mkfont.c:622 -#, c-format -msgid "WARNING: unsupported font feature parameters: %x\n" -msgstr "UPOZORENJE: nepodržani parametri znaÄajke slova: %x\n" - -#: util/grub-mkfont.c:936 util/grub-mkrescue.c:98 util/grub-mkstandalone.c:48 -msgid "save output in FILE [required]" -msgstr "spremi izlaz u DATOTEKU [potrebno]" - -#. TRANSLATORS: some font files may have multiple faces (fonts). -#. This option is used to chose among them, the first face being '0'. -#. Rarely used. -#: util/grub-mkfont.c:942 -msgid "select face index" -msgstr "odaberi sadržaj slova" - -#: util/grub-mkfont.c:943 -msgid "FROM-TO[,FROM-TO]" -msgstr "OD-DO[,OD-DO]" - -#. TRANSLATORS: It refers to the range of characters in font. -#: util/grub-mkfont.c:945 -msgid "set font range" -msgstr "postavi raspon slova" - -#. TRANSLATORS: "family name" for font is just a generic name without suffix -#. like "Bold". -#: util/grub-mkfont.c:949 -msgid "set font family name" -msgstr "postavi naziv slova" - -#: util/grub-mkfont.c:950 -msgid "SIZE" -msgstr "VELIÄŒINA" - -#: util/grub-mkfont.c:950 -msgid "set font size" -msgstr "postavi veliÄinu slova" - -#: util/grub-mkfont.c:951 -msgid "set font descent" -msgstr "postavi silazak slova" - -#: util/grub-mkfont.c:952 -msgid "set font ascent" -msgstr "postavi uspon slova" - -#: util/grub-mkfont.c:953 -msgid "convert to bold font" -msgstr "pretvori u podebljana slova" - -#: util/grub-mkfont.c:954 -msgid "force autohint" -msgstr "prisli auto naglaÅ¡avanje" - -#: util/grub-mkfont.c:955 -msgid "disable hinting" -msgstr "onemogući naglaÅ¡avanje" - -#. TRANSLATORS: some fonts contain bitmap rendering for -#. some sizes. This option forces rerendering even if -#. pre-rendered bitmap is available. -#. -#: util/grub-mkfont.c:961 -msgid "ignore bitmap strikes when loading" -msgstr "zanemari bitmap prikaz pri uÄitavanju" - -#. TRANSLATORS: It refers to the range of characters in font. -#: util/grub-mkfont.c:1059 util/grub-mkfont.c:1075 -msgid "invalid font range" -msgstr "neispravan raspon slova" - -#: util/grub-mkfont.c:1151 -msgid "[OPTIONS] FONT_FILES" -msgstr "[MOGUĆNOSTI] DATOTEKA_SLOVA" - -#: util/grub-mkfont.c:1152 -msgid "Convert common font file formats into PF2" -msgstr "Pretvori uobiÄajen format datoteke slova u PF2" - -#: util/grub-mkfont.c:1182 util/grub-mkrescue.c:483 -#: util/grub-mkstandalone.c:306 -msgid "output file must be specified" -msgstr "izlazna datoteka mora biti odreÄ‘ena" - -#: util/grub-mkfont.c:1185 -msgid "FT_Init_FreeType fails" -msgstr "FT_Init_FreeType neuspjelo" - -#: util/grub-mkfont.c:1199 -#, c-format -msgid "can't open file %s, index %d: error %d" -msgstr "nemoguće otvaranje datoteke %s, sadržaj %d: greÅ¡ka %d" - -#: util/grub-mkfont.c:1229 -#, c-format -msgid "can't set %dx%d font size: Freetype error %d: %s" -msgstr "nemoguće postavljanje %dx%d veliÄine slova: Freetype greÅ¡ka %d: %s" - -#: util/grub-mkimage.c:67 -msgid "set prefix directory" -msgstr "postavi prefiks direktorija" - -#. TRANSLATORS: "memdisk" here isn't an identifier, it can be translated. -#. "embed" is a verb (command description). " -#: util/grub-mkimage.c:71 -msgid "" -"embed FILE as a memdisk image\n" -"Implies `-p (memdisk)/boot/grub' and overrides any prefix supplied " -"previously, but the prefix itself can be overridden by later options" -msgstr "" -"ugradi DATOTEKU kao memdisk sliku\n" -"UkljuÄuje `-p (memdisk)/boot/grub' i zaobilazi bilo koji prefiks prije " -"omogućen, ali sam prefiks može se zaobići kasnijim mogućnostima" - -#: util/grub-mkimage.c:74 -msgid "embed FILE as a device tree (DTB)\n" -msgstr "ugradi DATOTEKU kao stablo ureÄ‘aja (DTB)\n" - -#: util/grub-mkimage.c:76 -msgid "embed FILE as an early config" -msgstr "ugradi DATOTEKU kao poÄetno podeÅ¡avanje" - -#. TRANSLATORS: NOTE is a name of segment. -#: util/grub-mkimage.c:80 -msgid "add NOTE segment for CHRP IEEE1275" -msgstr "dodaj segment NAPOMENE za CHRP IEEE1275" - -#: util/grub-mkimage.c:81 -msgid "output a generated image to FILE [default=stdout]" -msgstr "izlaz stvara sliku u DATOTECI [zadano=stdout]" - -#: util/grub-mkimage.c:82 -msgid "FORMAT" -msgstr "FORMAT" - -#: util/grub-mkimage.c:100 util/grub-mkstandalone.c:62 -msgid "generate an image in FORMAT" -msgstr "stvara sliku u FORMATU" - -#: util/grub-mkimage.c:101 util/grub-mkstandalone.c:63 -msgid "available formats:" -msgstr "dostupni formati:" - -#: util/grub-mkimage.c:152 util/grub-mkstandalone.c:96 -#, c-format -msgid "unknown target format %s\n" -msgstr "nepoznat format odrediÅ¡ta %s\n" - -#: util/grub-mkimage.c:242 -msgid "[OPTION]... [MODULES]" -msgstr "[MOGUĆNOST]... [MODULI]" - -#: util/grub-mkimage.c:243 -msgid "Make a bootable image of GRUB." -msgstr "Stvori sliku pokretanja GRUBA." - -#: util/grub-mkimage.c:273 util/grub-mkstandalone.c:309 -msgid "Target format not specified (use the -O option)." -msgstr "OdrediÅ¡ni format nije odreÄ‘en (koristi -O mogućnost)." - -#: util/grub-mkimage.c:282 -msgid "Prefix not specified (use the -p option)." -msgstr "Prefiks nije odreÄ‘en (koristi -p mogućnost)." - -#: util/grub-mkimage.c:318 util/setup.c:793 -#, c-format -msgid "cannot close `%s': %s" -msgstr "nemoguće zatvoriti `%s': %s" - -#: util/grub-mkimagexx.c:2191 -#, c-format -msgid "" -"`%s' is miscompiled: its start address is 0x%llx instead of 0x%llx: ld.gold " -"bug?" -msgstr "" -"`%s' je nepotpuno: poÄetna adresa je 0x%llx umjesto 0x%llx: ld.gold greÅ¡ka?" - -#: util/grub-mklayout.c:53 -msgid "set input filename. Default is STDIN" -msgstr "postavi naziv ulazne datoteke. Zadan je STDIN" - -#. TRANSLATORS: scan identifier is keyboard key symbolic name. -#: util/grub-mklayout.c:307 -#, c-format -msgid "Unknown keyboard scan identifier %s\n" -msgstr "Nepoznat identifikator skeniranja tipkovnice %s\n" - -#. TRANSLATORS: scan code is keyboard key numeric identifier. -#: util/grub-mklayout.c:390 util/grub-mklayout.c:418 -#, c-format -msgid "Unknown keyboard scan code 0x%02x\n" -msgstr "Nepoznat kôd skeniranja tipkovnice 0x%02x\n" - -#. TRANSLATORS: this error is triggered when input doesn't contain any -#. key descriptions. -#: util/grub-mklayout.c:438 -msgid "ERROR: no valid keyboard layout found. Check the input.\n" -msgstr "" -"GreÅ¡ka: nije pronaÄ‘en valjani raspored tipkovnice. Provjerite raspored.\n" - -#. TRANSLATORS: "one" is a shortcut for "keyboard layout". -#: util/grub-mklayout.c:478 -msgid "Generate GRUB keyboard layout from Linux console one." -msgstr "Generiraj GRUB raspored tipkovnice s prve Linux konzole." - -#: util/grub-mknetdir.c:47 -msgid "root directory of TFTP server" -msgstr "korijenski direktorij TFTP poslužitelja" - -#: util/grub-mknetdir.c:49 -msgid "relative subdirectory on network server" -msgstr "relativan poddirektorij na mrežnom poslužitelju" - -#: util/grub-mknetdir.c:88 -msgid "" -"Prepares GRUB network boot images at net_directory/subdir assuming " -"net_directory being TFTP root." -msgstr "" -"Priprema GRUB mrežne slike pokretanja na mrežnom_direktoriju/poddirektoriju " -"pod pretpostavkom da je mrežni_direktorij TFTP root." - -#: util/grub-mknetdir.c:146 -#, c-format -msgid "unsupported platform %s" -msgstr "nepodržana platforma %s" - -#. TRANSLATORS: First %s is replaced by platform name. Second one by filename. -#: util/grub-mknetdir.c:165 -#, c-format -msgid "" -"Netboot directory for %s created. Configure your DHCP server to point to %s\n" -msgstr "" -"Direktorij mrežnog pokretanja za %s je stvoren. Podesite svoj DHCP " -"poslužitelj za toÄku u %s\n" - -#: util/grub-mkpasswd-pbkdf2.c:46 -msgid "Number of PBKDF2 iterations" -msgstr "Broj PBKDF2 ponavljanja" - -#: util/grub-mkpasswd-pbkdf2.c:47 -msgid "Length of generated hash" -msgstr "Duljina stvorene jedinstvene vrijednosti" - -#: util/grub-mkpasswd-pbkdf2.c:48 -msgid "Length of salt" -msgstr "Duljina soli podataka" - -#: util/grub-mkpasswd-pbkdf2.c:87 -msgid "Generate PBKDF2 password hash." -msgstr "Stvori PBKDF2 jedinstvenu vrijednost lozinke." - -#: util/grub-mkpasswd-pbkdf2.c:144 util/grub-mkpasswd-pbkdf2.c:151 -msgid "failure to read password" -msgstr "neuspjelo Äitanje lozinke" - -#: util/grub-mkpasswd-pbkdf2.c:146 -msgid "Reenter password: " -msgstr "Ponovno upiÅ¡ite lozinku: " - -#: util/grub-mkpasswd-pbkdf2.c:160 -msgid "passwords don't match" -msgstr "lozinke se ne podudaraju" - -#: util/grub-mkpasswd-pbkdf2.c:169 -msgid "couldn't retrieve random data for salt" -msgstr "nemoguće primanje naizmjeniÄnih sol podataka" - -#: util/grub-mkpasswd-pbkdf2.c:184 -#, c-format -msgid "cryptographic error number %d" -msgstr "broj greÅ¡ke Å¡ifriranja %d" - -#: util/grub-mkpasswd-pbkdf2.c:203 -#, c-format -msgid "PBKDF2 hash of your password is %s\n" -msgstr "PBKDF2 jedinstvena vrijednost vaÅ¡e lozinke je %s\n" - -#: util/grub-mkrelpath.c:67 -msgid "No path is specified.\n" -msgstr "Nema odreÄ‘ene putanje.\n" - -#: util/grub-mkrelpath.c:78 -msgid "PATH" -msgstr "PUTANJA" - -#: util/grub-mkrelpath.c:79 -msgid "Transform a system filename into GRUB one." -msgstr "Pretvori naziv datoteke sustava u GRUB naziv." - -#: util/grub-mkrescue.c:100 -msgid "save ROM images in DIR [optional]" -msgstr "spremi ROM slike u DIR [neobavezno]" - -#. TRANSLATORS: xorriso is a program for creating ISOs and burning CDs. -#: util/grub-mkrescue.c:103 -msgid "use FILE as xorriso [optional]" -msgstr "koristi DATOTEKU kao xorriso [neobavezno]" - -#: util/grub-mkrescue.c:109 -msgid "use STRING as product name" -msgstr "koristi ZNAK kao naziv proizvoda" - -#: util/grub-mkrescue.c:111 -msgid "" -"enable sparc boot. Disables HFS+, APM, ARCS and boot as disk image for i386-" -"pc" -msgstr "" -"omogući sparc pokretanje. Onemogućuje HFS+, APM, ARCS i pokretanje kao slike " -"diska za i386-pc" - -#: util/grub-mkrescue.c:112 -msgid "" -"enable ARCS (big-endian mips machines, mostly SGI) boot. Disables HFS+, APM, " -"sparc64 and boot as disk image for i386-pc" -msgstr "" -"omogući ARCS (big-endian mips machines, većinu SGI) pokretanje. Onemogućuje " -"HFS+, APM, sparc64 i pokretanje kao slike diska za i386-pc" - -#. TRANSLATORS: it generates one single image which is bootable through any method. -#: util/grub-mkrescue.c:125 -msgid "Make GRUB CD-ROM, disk, pendrive and floppy bootable image." -msgstr "Napravi GRUB CD-ROM, disk, USB i disketnu sliku pokretanja." - -#: util/grub-mkrescue.c:130 -#, c-format -msgid "" -"Generates a bootable CD/USB/floppy image. Arguments other than options to " -"this program are passed to xorriso, and indicate source files, source " -"directories, or any of the mkisofs options listed by the output of `%s'." -msgstr "" -"Stvara CD/USB/disketnu sliku. Argumenti drugaÄiji od mogućnosti ovog " -"programa su proslijeÄ‘eni u xorriso, i oznaÄuju izvoriÅ¡ne datoteke, izvoriÅ¡ne " -"direktorije, ili bilo koju od mkisofs mogućnosti prikazanu u `%s' izlazu." - -#: util/grub-mkrescue.c:134 -msgid "Option -- switches to native xorriso command mode." -msgstr "Mogućnost -- zamjenjuje izvoran xorriso naÄin naredbenog redka." - -#: util/grub-mkrescue.c:135 -msgid "Mail xorriso support requests to ." -msgstr "PoÅ¡ta zahtijeva xorriso podrÅ¡ke ." - -#: util/grub-mkrescue.c:221 util/grub-mkstandalone.c:114 -msgid "[OPTION] SOURCE..." -msgstr "[MOGUĆNOST] IZVOR..." - -#: util/grub-mkrescue.c:257 util/grub-mkrescue.c:300 util/grub-mkrescue.c:588 -#, c-format -msgid "enabling %s support ..." -msgstr "omogućavanje %s podrÅ¡ke..." - -#: util/grub-mkrescue.c:486 -msgid "xorriso not found" -msgstr "xorriso nije pronaÄ‘en" - -#: util/grub-mkrescue.c:623 -msgid "" -"Your xorriso doesn't support `--grub2-boot-info'. Some features are " -"disabled. Please use xorriso 1.2.9 or later." -msgstr "" -"VaÅ¡ xorriso ne podržava `--grub2-boot-info'. Neke znaÄajke su onemogućene. " -"Koristite xorriso 1.2.9 ili noviji." - -#: util/grub-mkrescue.c:650 -msgid "" -"Your xorriso doesn't support `--grub2-boot-info'. Your core image is too " -"big. Boot as disk is disabled. Please use xorriso 1.2.9 or later." -msgstr "" -"VaÅ¡ xorriso ne podržava `--grub2-boot-info'. VaÅ¡a slika jezgre je prevelika. " -"Pokretanje diska onemogućeno. Koristite xorriso 1.2.9 ili noviji." - -#: util/grub-mkstandalone.c:115 -msgid "" -"Generate a standalone image (containing all modules) in the selected format" -msgstr "Stvara samostojeću sliku (sadrži sve module) u odabranom formatu" - -#: util/grub-mkstandalone.c:115 -msgid "Graft point syntax (E.g. /boot/grub/grub.cfg=./grub.cfg) is accepted" -msgstr "" -"Sintaksa toÄke grafa (npr. /boot/grub/grub.cfg=./grub.cfg) je prihvaćena" - -#: util/grub-mount.c:552 -msgid "IMAGE1 [IMAGE2 ...] MOUNTPOINT" -msgstr "SLIKA1 [SLIKA2 ...] TOÄŒKA MONTIRANJA" - -#: util/grub-mount.c:575 -msgid "need an image and mountpoint" -msgstr "potrebna je slika i toÄka montiranja" - -#: util/grub-probe.c:731 -msgid "given argument is a system device, not a path" -msgstr "dani argument je ureÄ‘aj sustava, nije putanja" - -#: util/grub-probe.c:736 -msgid "separate items in output using ASCII NUL characters" -msgstr "odvoji stavke u izlazu pomoću ASCII NUL znakova" - -#: util/grub-probe.c:754 -#, c-format -msgid "[default=%s]" -msgstr "[zadano=%s]" - -#: util/grub-probe.c:756 -msgid "print TARGET" -msgstr "ispiÅ¡i ODREDIÅ TE" - -#: util/grub-probe.c:757 -msgid "available targets:" -msgstr "dostupna odrediÅ¡ta:" - -#: util/grub-probe.c:839 -msgid "[OPTION]... [PATH|DEVICE]" -msgstr "[MOGUĆNOST]... [PUTANJA|UREÄAJ]" - -#: util/grub-probe.c:840 -msgid "" -"Probe device information for a given path (or device, if the -d option is " -"given)." -msgstr "" -"Informacije sondiranja ureÄ‘aja za zadanu putanju (ili ureÄ‘aja, ako je -d " -"mogućnost zadana)." - -#: util/grub-render-label.c:60 -msgid "read text from FILE." -msgstr "Äitaj tekst iz DATOTEKE." - -#: util/grub-render-label.c:62 -msgid "use COLOR for text" -msgstr "koristi OBOJANI tekst" - -#: util/grub-render-label.c:64 -msgid "use COLOR for background" -msgstr "koristi OBOJANU pozadinu" - -#. TRANSLATORS: The result is always stored to file and -#. never shown directly, so don't use "show" as synonym for render. Use "create" if -#. "render" doesn't translate directly. -#: util/grub-render-label.c:69 -msgid "set the label to render" -msgstr "postavi oznaku za prikaz" - -#: util/grub-render-label.c:73 -msgid "use FILE as font (PF2)." -msgstr "koristi DATOTEKU kao slovo (PF2)." - -#. TRANSLATORS: This file takes a text and creates a graphical representation of it, -#. putting the result into .disk_label file. The result is always stored to file and -#. never shown directly, so don't use "show" as synonym for render. Use "create" if -#. "render" doesn't translate directly. -#: util/grub-render-label.c:136 -msgid "Render Apple .disk_label." -msgstr "Prikaži Apple .disk_label." - -#: util/grub-render-label.c:158 util/grub-syslinux2cfg.c:169 -msgid "Missing arguments\n" -msgstr "Nedostajući argumenti\n" - -#: util/grub-script-check.c:87 -msgid "[PATH]" -msgstr "[PUTANJA]" - -#: util/grub-script-check.c:88 -msgid "Checks GRUB script configuration file for syntax errors." -msgstr "Provjerava datoteku skripta podeÅ¡avanja GRUBA za greÅ¡ke sintaksa." - -#: util/grub-script-check.c:207 -#, c-format -msgid "Syntax error at line %u\n" -msgstr "GreÅ¡ka sintakse u redku %u\n" - -#: util/grub-script-check.c:212 -#, c-format -msgid "Script `%s' contains no commands and will do nothing\n" -msgstr "Skripta `%s' ne sadrži naredbe i ne izvrÅ¡ava niÅ¡ta\n" - -#: util/grub-setup.c:79 -#, c-format -msgid "use FILE as the boot image [default=%s]" -msgstr "koristi DATOTEKU kao sliku pokretanja [zadano=%s]" - -#: util/grub-setup.c:81 -#, c-format -msgid "use FILE as the core image [default=%s]" -msgstr "koristi DATOTEKU kao sliku jezgre [zadano=%s]" - -#: util/grub-setup.c:210 -msgid "No device is specified.\n" -msgstr "Nema odreÄ‘enog ureÄ‘aja.\n" - -#: util/grub-setup.c:224 -msgid "" -"Set up images to boot from DEVICE.\n" -"\n" -"You should not normally run this program directly. Use grub-install instead." -msgstr "" -"Postavite slike za pokretanje s UREÄAJA.\n" -"\n" -"UobiÄajeno ne biste trebali pokretati ovaj program izravno. U zamjenu " -"koristite grub-install." - -#: util/grub-setup.c:228 -msgid "DEVICE must be an OS device (e.g. /dev/sda)." -msgstr "UREÄAJ mora biti OS ureÄ‘aj (npr. /dev/sda)." - -#: util/grub-setup.c:297 -#, c-format -msgid "Invalid device `%s'.\n" -msgstr "Neispravan ureÄ‘aj `%s'.\n" - -#: util/grub-syslinux2cfg.c:64 -msgid "root directory as it will be seen on runtime [default=/]." -msgstr "" -"korijenski direktorij kako će biti viÄ‘en za vrijeme pokretanja [zadano=/]." - -#: util/grub-syslinux2cfg.c:69 -msgid "" -"current directory of syslinux as it will be seen on runtime [default is " -"parent directory of input file]." -msgstr "" -"trenutni direktorij syslinuxa kako će biti viÄ‘en u vrijeme pokretanja " -"[zadan je sadržajni direktorij ulazne datoteke]." - -#: util/grub-syslinux2cfg.c:74 -msgid "write output to FILE [default=stdout]." -msgstr "zapiÅ¡i izlaz u DATOTEKU [zadano=stdout]." - -#: util/grub-syslinux2cfg.c:148 -msgid "Transform syslinux config into GRUB one." -msgstr "Pretvori syslinux podeÅ¡avanje u GRUB podeÅ¡avanje." - -#: util/mkimage.c:688 util/mkimage.c:717 util/mkimage.c:734 -msgid "cannot compress the kernel image" -msgstr "nemoguće sažimanje slike kernela" - -#: util/mkimage.c:766 util/mkimage.c:1077 -#, c-format -msgid "unknown compression %d" -msgstr "nepoznato sažimanje %d" - -#: util/mkimage.c:1088 -msgid "Decompressor is too big" -msgstr "Raspakiravanje je preveliko" - -#: util/mkimage.c:1133 -#, c-format -msgid "core image is too big (0x%x > 0x%x)" -msgstr "datoteka jezgre je prevelika (0x%x > 0x%x)" - -#: util/mkimage.c:1140 -#, c-format -msgid "kernel image is too big (0x%x > 0x%x)" -msgstr "slika kernela je prevelika (0x%x > 0x%x)" - -#: util/mkimage.c:1220 util/mkimage.c:1501 -#, c-format -msgid "diskboot.img size must be %u bytes" -msgstr "diskboot.img veliÄina mora biti %u bajta" - -#: util/mkimage.c:1571 -msgid "" -"fwstart.img doesn't match the known good version. proceed at your own risk" -msgstr "" -"fwstart.img se ne podudara s poznatom valjanom inaÄicom. Nastavljate na " -"vlastit rizik" - -#: util/mkimage.c:1575 util/mkimage.c:1601 -msgid "firmware image is too big" -msgstr "slika firmvera je prevelika" - -#: util/resolve.c:93 -#, c-format -msgid "invalid line format: %s" -msgstr "neispravan format redka: %s" - -#: util/setup.c:167 -msgid "the first sector of the core file is not sector-aligned" -msgstr "prvi sektor jezgre datoteke nije poravnan sa sektorom" - -#: util/setup.c:177 -msgid "non-sector-aligned data is found in the core file" -msgstr "nesektorski poravnat podatak je pronaÄ‘en u datoteci jezgre" - -#: util/setup.c:199 -msgid "the sectors of the core file are too fragmented" -msgstr "sektori jezgre datoteke su preusitnjeni" - -#: util/setup.c:280 -#, c-format -msgid "the size of `%s' is not %u" -msgstr "veliÄina `%s' nije %u" - -#: util/setup.c:290 -#, c-format -msgid "the size of `%s' is too small" -msgstr "veliÄina `%s' je premala" - -#: util/setup.c:428 -msgid "" -"Attempting to install GRUB to a disk with multiple partition labels or both " -"partition label and filesystem. This is not supported yet." -msgstr "" -"PokuÅ¡aj instalacije GRUBA na disk s viÅ¡estrukim nazivom particija ili oboje " -"naziva particija i datoteÄnih sustava. To joÅ¡ nije podržano." - -#: util/setup.c:441 -#, c-format -msgid "unable to identify a filesystem in %s; safety check can't be performed" -msgstr "" -"neuspjela identifikacija datoteÄnog sustava u %s; sigurnosna provjera se ne " -"može izvesti" - -#. TRANSLATORS: Filesystem may reserve the space just GRUB isn't sure about it. -#: util/setup.c:445 -#, c-format -msgid "" -"%s appears to contain a %s filesystem which isn't known to reserve space for " -"DOS-style boot. Installing GRUB there could result in FILESYSTEM " -"DESTRUCTION if valuable data is overwritten by grub-setup (--skip-fs-probe " -"disables this check, use at your own risk)" -msgstr "" -"ÄŒini se kako %s sadrži %s datoteÄni sustav koji nije poznat da rezervira " -"prostor za DOS izgled pokretanja sustava. Instalacija GRUBA tamo može " -"rezultirati UNIÅ TENJEM DATOTEÄŒNOG SUSTAVA ako su vrijedni podaci prebrisani " -"s grub-setup (--skip-fs-probe onemogućuje ovu provjeru, koristite ju na " -"vlastitu odgovornost)" - -#. TRANSLATORS: Partition map may reserve the space just GRUB isn't sure about it. -#: util/setup.c:458 -#, c-format -msgid "" -"%s appears to contain a %s partition map which isn't known to reserve space " -"for DOS-style boot. Installing GRUB there could result in FILESYSTEM " -"DESTRUCTION if valuable data is overwritten by grub-setup (--skip-fs-probe " -"disables this check, use at your own risk)" -msgstr "" -"ÄŒini se kako %s sadrži %s mapu particije koja nije poznata da rezervira " -"prostor za DOS izgled pokretanja sustava. Instalacija GRUBA tamo može " -"rezultirati UNIÅ TENJEM DATOTEÄŒNOG SUSTAVA ako su vrijedni podaci prebrisani " -"s grub-setup (--skip-fs-probe onemogućuje ovu provjeru, koristite ju na " -"vlastitu odgovornost)" - -#: util/setup.c:465 -#, c-format -msgid "" -"%s appears to contain a %s partition map and LDM which isn't known to be a " -"safe combination. Installing GRUB there could result in FILESYSTEM " -"DESTRUCTION if valuable data is overwritten by grub-setup (--skip-fs-probe " -"disables this check, use at your own risk)" -msgstr "" -"ÄŒini se kako %s sadrži %s mapu particije i LDM koji nije poznat da je " -"sigurna kombinacija. Instalacija GRUBA tamo može rezultirati UNIÅ TENJEM " -"DATOTEÄŒNOG SUSTAVA ako su vrijedni podaci prebrisani s grub-setup (--skip-fs-" -"probe onemogućuje ovu provjeru, koristite ju na vlastitu odgovornost)" - -#: util/setup.c:478 -msgid "" -"Attempting to install GRUB to a partitionless disk or to a partition. This " -"is a BAD idea." -msgstr "" -"PokuÅ¡aj instalacije GRUBA na particijski disk ili particiju. To nije dobra " -"ideja." - -#: util/setup.c:483 -msgid "" -"Attempting to install GRUB to a disk with multiple partition labels. This " -"is not supported yet." -msgstr "" -"PokuÅ¡aj instalacije GRUBA na disk s viÅ¡e particijskih naziva. To joÅ¡ nije " -"podržano." - -#: util/setup.c:489 -#, c-format -msgid "Partition style `%s' doesn't support embedding" -msgstr "Stil particije `%s' ne podržava ugradnju" - -#: util/setup.c:496 -#, c-format -msgid "File system `%s' doesn't support embedding" -msgstr "DatoteÄni sustav `%s' ne podržava ugradnju" - -#: util/setup.c:537 -msgid "Your embedding area is unusually small. core.img won't fit in it." -msgstr "VaÅ¡e podruÄje ugradnje je neobiÄno malo. core.img neće stati u njega." - -#: util/setup.c:559 util/setup.c:725 util/setup.c:844 -msgid "no terminator in the core image" -msgstr "nema zakljuÄnika u jezgri" - -#: util/setup.c:622 -msgid "core.img version mismatch" -msgstr "core.img nepodudaranje inaÄice" - -#: util/setup.c:675 -msgid "" -"embedding is not possible, but this is required for RAID and LVM install" -msgstr "ugradnja nije moguća, ali je potrebna za RAID i LVM instalaciju" - -#: util/setup.c:682 -#, c-format -msgid "can't determine filesystem on %s" -msgstr "nemoguće otkrivanje datoteÄnog sustava na %s" - -#: util/setup.c:685 -#, c-format -msgid "filesystem `%s' doesn't support blocklists" -msgstr "datoteÄni sustav `%s' ne podržava popis blokiranih" - -#. TRANSLATORS: cross-disk refers to /boot being on one disk -#. but MBR on another. -#: util/setup.c:694 -msgid "embedding is not possible, but this is required for cross-disk install" -msgstr "ugradnja nije moguća, ali je potrebna za unakrsnu disk instalaciju" - -#: util/setup.c:700 -msgid "" -"Embedding is not possible. GRUB can only be installed in this setup by " -"using blocklists. However, blocklists are UNRELIABLE and their use is " -"discouraged." -msgstr "" -"Ugradnja nije moguća, GRUB može jedino biti instaliran u ove postavke " -"koristeći popise blokiranih. Ipak, popisi blokiranih su NEPOUZDANI i njihovo " -"koriÅ¡tenje je obeshrabrujuće." - -#. TRANSLATORS: Here GRUB refuses to continue with blocklist install. -#: util/setup.c:705 -msgid "will not proceed with blocklists" -msgstr "neće nastavit s popisima blokiranih" - -#: util/setup.c:817 util/setup.c:837 -msgid "blocklists are invalid" -msgstr "popisi blokiranih su neispravni" - -#: util/setup.c:847 -msgid "blocklists are incomplete" -msgstr "popisi blokiranih su nepotpuni" - -#~ msgid "%.*s: ARGP_HELP_FMT parameter must be positive" -#~ msgstr "%.*s: ARGP_HELP_FMT parametar mora biti pozitivan" - -#~ msgid "%s: option '--%s' doesn't allow an argument\n" -#~ msgstr "%s: mogućnost `--%s' ne dopuÅ¡ta argument\n" - -#~ msgid "%s: unrecognized option '--%s'\n" -#~ msgstr "%s: neprepoznata mogućnost '--%s'\n" - -#~ msgid "%s: option '-W %s' doesn't allow an argument\n" -#~ msgstr "%s: mogućnost '-W %s' ne dopuÅ¡ta argument\n" - -#~ msgid "%s: option '-W %s' requires an argument\n" -#~ msgstr "%s: mogućnost '-W %s' zahtijeva argument\n" - -#~ msgid "Usage: %s -o OUTPUT CKBMAP_ARGUMENTS...\\n" -#~ msgstr "Upotreba: %s -o IZLAZ CKBMAP_ARGUMENTI...\\n" - -#~ msgid "Make GRUB keyboard layout file." -#~ msgstr "Napravi datoteku rasporeda tipkovnice GRUBA." - -#~ msgid "print this message and exit" -#~ msgstr "ispiÅ¡i ovu poruku i izaÄ‘i" - -#~ msgid "print the version information and exit" -#~ msgstr "ispiÅ¡i informaciju inaÄice i izaÄ‘i" - -#~ msgid "%s generates a keyboard layout for GRUB using ckbcomp\\n" -#~ msgstr "%s stvara raspored tipkovnice za GRUB pomoću ckbcomp\\n" - -#~ msgid "Report bugs to ." -#~ msgstr "Prijavite greÅ¡ke na ." - -#~ msgid "%s: option requires an argument -- `%s'\\n" -#~ msgstr "%s: mogućnost zahtijeva argument -- `%s'\\n" - -#~ msgid "Usage: %s [OPTION]\\n" -#~ msgstr "Upotreba: %s [MOGUĆNOST]\\n" - -#~ msgid "Generate a grub config file" -#~ msgstr "Stvori grub datoteku podeÅ¡avanja" - -#~ msgid "output generated config to FILE [default=stdout]" -#~ msgstr "spremi stvoreno podeÅ¡avanje u DATOTEKU [zadano=stdout]" - -#~ msgid "Unrecognized option `%s'\\n" -#~ msgstr "Neprepoznata mogućnost `%s'\\n" - -#~ msgid "%s: You must run this as root\\n" -#~ msgstr "%s: Morate biti pokrenuti kao korijenski korisnik\\n" - -#~ msgid "%s: Not found.\\n" -#~ msgstr "%s: Nije pronaÄ‘eno.\\n" - -#~ msgid "Generating grub configuration file ..." -#~ msgstr "Stvaranje grub datoteke podeÅ¡avanja ..." - -#~ msgid "" -#~ "Syntax errors are detected in generated GRUB config file.\n" -#~ "Ensure that there are no errors in /etc/default/grub\n" -#~ "and /etc/grub.d/* files or please file a bug report with\n" -#~ "%s file attached." -#~ msgstr "" -#~ "GreÅ¡ke sintakse su otkrivene u stvorenoj GRUB datoteci podeÅ¡avanja.\n" -#~ "Pobrinite se da ne postoje greÅ¡ke u /etc/default/grub\n" -#~ "i /etc/grub.d/* datotekama ili poÅ¡aljite izvješće greÅ¡ke s\n" -#~ "%s priloženoj datoteci." - -#~ msgid "done" -#~ msgstr "ZavrÅ¡eno" - -#~ msgid "Warning:" -#~ msgstr "Upozorenje:" - -#~ msgid "Usage: %s [OPTION] MENU_ENTRY\\n" -#~ msgstr "Upotreba: %s [MOGUĆNOST] NAVOD_IZBORNIKA\\n" - -#~ msgid "Set the default boot menu entry for GRUB, for the next boot only." -#~ msgstr "" -#~ "Postavi zadanu stavku pokretanja za GRUB, samo za sljedeće pokretanje." - -#~ msgid "" -#~ "expect GRUB images under the directory DIR/%s instead of the %s directory" -#~ msgstr "oÄekujte GRUB slike u direktoriju DIR/%s umjesto u %s direktoriju" - -#~ msgid "" -#~ "MENU_ENTRY is a number, a menu item title or a menu item identifier. " -#~ "Please note that menu items in\n" -#~ "submenus or sub-submenus require specifying the submenu components and " -#~ "then the\n" -#~ "menu item component. The titles should be separated using the greater-" -#~ "than\n" -#~ "character (>) with no extra spaces. Depending on your shell some " -#~ "characters including > may need escaping. More information about this is " -#~ "available\n" -#~ "in the GRUB Manual in the section about the 'default' command. " -#~ msgstr "" -#~ "STAVKA_IZBORNIKA je broj, naslov stavke izbornika ili identifikator " -#~ "stavke izbornika. Zapamtite da stavke izbornika u\n" -#~ "podizbornicima ili pod-podizbornicima zahtijevaju odreÄ‘ivanje komponenti " -#~ "podizbornika a zatim\n" -#~ "komponentu stavke izbornika. Naslovi trebaju biti odvojeni upotrebom " -#~ "znaka \n" -#~ "većim-od (>) bez dodatnih razmaka. Ovisno o vaÅ¡oj ljusci neki znakovi " -#~ "ukljuÄujući > možda trebaju esc. ViÅ¡e informacija o ovome je dostupno\n" -#~ "u GRUB PriruÄniku u odjeljku o 'zadanim' naredbama. " - -#~ msgid "More than one menu entry?" -#~ msgstr "ViÅ¡e od jedne stavke izbornika?" - -#~ msgid "Menu entry not specified." -#~ msgstr "Stavka izbornika nije navedena." - -#~ msgid "Set the default boot menu entry for GRUB." -#~ msgstr "Postavi zadanu stavku izbornika pokretanja za GRUB." - -#~ msgid "This requires setting GRUB_DEFAULT=saved in %s/default/grub.\\n" -#~ msgstr "" -#~ "Ovo zahtijeva postavku GRUB_DEFAULT=spremljenju u %s/default/grub.\\n" - -#~ msgid "MENU_ENTRY is a number, a menu item title or a menu item identifier." -#~ msgstr "" -#~ "STAVKA_IZBORNIKA je broj, naslov stavke izbornika ili identifikator " -#~ "stavke izbornika." - -#~ msgid "" -#~ "Requested serial terminal but GRUB_SERIAL_COMMAND is unspecified. Default " -#~ "parameters will be used." -#~ msgstr "" -#~ "Zahtjevan je serijski terminal ali GRUB_SERIAL_COMMAND nije odreÄ‘ena. " -#~ "Zadani parametar će se koristiti." - -#~ msgid "Found theme: %s\\n" -#~ msgstr "PronaÄ‘ena tema: %s\\n" - -#~ msgid "Found background: %s\\n" -#~ msgstr "PronaÄ‘ena pozadina: %s\\n" - -#~ msgid "Unsupported image format" -#~ msgstr "Nepodržan format slike" - -#~ msgid "" -#~ "Setting GRUB_TIMEOUT to a non-zero value when GRUB_HIDDEN_TIMEOUT is set " -#~ "is no longer supported." -#~ msgstr "" -#~ "Postavljanje GRUB_TIMEOUT u vrijednost bez nule kada je " -#~ "GRUB_HIDDEN_TIMEOUT postavljen nije viÅ¡e podržan." - -#~ msgid "Found GNU Mach: %s" -#~ msgstr "PronaÄ‘en GNU Mach: %s" - -#~ msgid "Found Hurd module: %s" -#~ msgstr "PronaÄ‘en Hurd modul: %s" - -#~ msgid "Some Hurd stuff found, but not enough to boot." -#~ msgstr "Neke Hurd stvari su pronaÄ‘ene, ali nedovoljne za pokretanje." - -#~ msgid "%s, with Hurd %s (recovery mode)" -#~ msgstr "%s, s Hurdom %s (oporavak sustava)" - -#~ msgid "%s, with Hurd %s" -#~ msgstr "%s, s Hurdom %s" - -#~ msgid "" -#~ "Please don't use old title `%s' for GRUB_DEFAULT, use `%s' (for versions " -#~ "before 2.00) or `%s' (for 2.00 or later)" -#~ msgstr "" -#~ "Ne koristite stari naslov `%s' za GRUB_DEFAULT, koristite `%s' (za " -#~ "inaÄice prije 2.00) ili `%s' (za 2.00 ili novije)" - -#~ msgid "Loading GNU Mach ..." -#~ msgstr "UÄitavanje GNU Macha ..." - -#~ msgid "Loading the Hurd ..." -#~ msgstr "UÄitavanje Hurda..." - -#~ msgid "Advanced options for %s" -#~ msgstr "Napredne mogućnosti za %s" - -#~ msgid "Loading kernel of Illumos ..." -#~ msgstr "UÄitavanje kernela Illumosa ..." - -#~ msgid "%s, with kFreeBSD %s (recovery mode)" -#~ msgstr "%s, s kFreeBSD %s (oporavak sustava)" - -#~ msgid "%s, with kFreeBSD %s" -#~ msgstr "%s, s kFreeBSD %s" - -#~ msgid "Loading kernel of FreeBSD %s ..." -#~ msgstr "UÄitavanje kernela FreeBSD %s ..." - -#~ msgid "Found kernel of FreeBSD: %s\\n" -#~ msgstr "PronaÄ‘en kernel FreeBSD: %s\\n" - -#~ msgid "Found kernel module directory: %s\\n" -#~ msgstr "PronaÄ‘en direktorij kernel modula: %s\\n" - -#~ msgid "%s, with Linux %s (recovery mode)" -#~ msgstr "%s, s Linuxom %s (oporavak sustava)" - -#~ msgid "%s, with Linux %s" -#~ msgstr "%s, s Linuxom %s" - -#~ msgid "Loading Linux %s ..." -#~ msgstr "UÄitavanje Linux %s ..." - -#~ msgid "Loading initial ramdisk ..." -#~ msgstr "UÄitavanje poÄetnog ramdiska ..." - -#~ msgid "Found linux image: %s\\n" -#~ msgstr "PronaÄ‘ena linux slika: %s\\n" - -#~ msgid "Found initrd image: %s\\n" -#~ msgstr "PronaÄ‘ena initrd slika: %s\\n" - -#~ msgid "%s, with kernel %s (via %s, recovery mode)" -#~ msgstr "%s, s kernelom %s (pomoću %s, oporavak sustava)" - -#~ msgid "%s, with kernel %s (via %s)" -#~ msgstr "%s, s kernelom %s (pomoću %s)" - -#~ msgid "Found NetBSD kernel: %s\\n" -#~ msgstr "PronaÄ‘en NetBSD kernel: %s\\n" - -#~ msgid "Windows Vista/7 (loader)" -#~ msgstr "Windows Vista/7 (uÄitaÄ pokretanja sustava)" - -#~ msgid "Windows NT/2000/XP (loader)" -#~ msgstr "Windows NT/2000/XP (uÄitaÄ pokretanja sustava)" - -#~ msgid "Found %s on %s (%s)\\n" -#~ msgstr "PronaÄ‘en %s na %s (%s)\\n" - -#~ msgid "(32-bit)" -#~ msgstr "(32-bitni)" - -#~ msgid "(64-bit)" -#~ msgstr "(64-bitni)" - -#~ msgid "(on %s)" -#~ msgstr "(na %s)" - -#~ msgid "%s, with Xen %s and Linux %s (recovery mode)" -#~ msgstr "%s, s Xenom %s i Linuxom %s (oporavak sustava)" - -#~ msgid "%s, with Xen %s and Linux %s" -#~ msgstr "%s, s Xenom %s i Linuxom %s" - -#~ msgid "%s, with Xen hypervisor" -#~ msgstr "%s, s Xen hipervizor" - -#~ msgid "Loading Xen %s ..." -#~ msgstr "UÄitavanje Xen %s ..." - -#~ msgid "Xen hypervisor, version %s" -#~ msgstr "Xen hipervizor, inaÄica %s" - -#~ msgid "Advanced options for %s (with Xen hypervisor)" -#~ msgstr "Napredne mogućnosti za %s (s Xen hipervizorom)" - -#~ msgid "Found %s on %s\\n" -#~ msgstr "PronaÄ‘en %s na %s\\n" - -#~ msgid "%s is not yet supported by grub-mkconfig.\\n" -#~ msgstr "%s joÅ¡ nije podržan u grub-mkconfig.\\n" diff --git a/thirdparty/grub-2.04/po/hu.gmo b/thirdparty/grub-2.04/po/hu.gmo deleted file mode 100644 index eb20533b9956a5f9c9d51ef825a04ec9e88af184..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 125545 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 diff --git a/thirdparty/grub-2.04/po/hu.po b/thirdparty/grub-2.04/po/hu.po deleted file mode 100644 index 40892515e..000000000 --- a/thirdparty/grub-2.04/po/hu.po +++ /dev/null @@ -1,7106 +0,0 @@ -# Hungarian translation for grub. -# Copyright (C) 2010, 2011, 2014 Free Software Foundation, Inc. -# This file is distributed under the same license as the grub package. -# -# Gabor Kelemen , 2010, 2011, 2017. -# Balázs Úr , 2014. -msgid "" -msgstr "" -"Project-Id-Version: grub 2.02-pre3\n" -"Report-Msgid-Bugs-To: bug-grub@gnu.org\n" -"POT-Creation-Date: 2019-07-04 16:09+0200\n" -"PO-Revision-Date: 2017-02-05 15:31+0100\n" -"Last-Translator: Gabor Kelemen \n" -"Language-Team: Hungarian \n" -"Language: hu\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Bugs: Report translation errors to the Language-Team address.\n" -"X-Generator: Lokalize 1.5\n" -"Plural-Forms: nplurals=2; plural=(n != 1);\n" - -#: grub-core/bus/usb/serial/ftdi.c:145 grub-core/bus/usb/serial/pl2303.c:158 -#: grub-core/term/ieee1275/escc.c:169 grub-core/term/ns8250.c:202 -msgid "unsupported serial port speed" -msgstr "nem támogatott soros port sebesség" - -#: grub-core/bus/usb/serial/ftdi.c:151 grub-core/bus/usb/serial/pl2303.c:164 -#: grub-core/term/efi/serial.c:116 grub-core/term/ieee1275/escc.c:175 -#: grub-core/term/ns8250.c:208 grub-core/term/serial.c:227 -#: grub-core/term/serial.c:243 -msgid "unsupported serial port parity" -msgstr "nem támogatott soros port paritás" - -#: grub-core/bus/usb/serial/ftdi.c:157 grub-core/bus/usb/serial/pl2303.c:170 -#: grub-core/term/efi/serial.c:122 grub-core/term/ieee1275/escc.c:181 -#: grub-core/term/ns8250.c:213 grub-core/term/serial.c:267 -msgid "unsupported serial port stop bits number" -msgstr "nem támogatott soros port stop bitszám" - -#: grub-core/bus/usb/serial/ftdi.c:161 grub-core/bus/usb/serial/pl2303.c:174 -#: grub-core/term/efi/serial.c:126 grub-core/term/ieee1275/escc.c:185 -#: grub-core/term/ns8250.c:217 -msgid "unsupported serial port word length" -msgstr "nem támogatott soros port szóhossz" - -#: grub-core/commands/acpi.c:42 -msgid "Don't load host tables specified by comma-separated list." -msgstr "" -"Ne töltse be a vesszÅ‘kkel elválasztott listán megadott gazdatáblázatokat." - -#: grub-core/commands/acpi.c:45 -msgid "Load only tables specified by comma-separated list." -msgstr "Csak a vesszÅ‘kkel elválasztott listán megadott táblázatok betöltése." - -#: grub-core/commands/acpi.c:46 -msgid "Export version 1 tables to the OS." -msgstr "Az 1-es verziójú táblázatok exportálása az operációs rendszernek." - -#: grub-core/commands/acpi.c:47 -msgid "Export version 2 and version 3 tables to the OS." -msgstr "" -"A 2-es és 3-as verziójú táblázatok exportálása az operációs rendszernek." - -#: grub-core/commands/acpi.c:48 -msgid "Set OEMID of RSDP, XSDT and RSDT." -msgstr "Az RSDP, XSDT és RSDT OEMID-jának beállítása." - -#: grub-core/commands/acpi.c:50 -msgid "Set OEMTABLE ID of RSDP, XSDT and RSDT." -msgstr "Az RSDP, XSDT és RSDT OEMTABLE ID-jának beállítása." - -#: grub-core/commands/acpi.c:52 -msgid "Set OEMTABLE revision of RSDP, XSDT and RSDT." -msgstr "Az RSDP, XSDT és RSDT OEMTABLE revíziójának beállítása." - -#: grub-core/commands/acpi.c:54 -msgid "Set creator field of RSDP, XSDT and RSDT." -msgstr "Az RSDP, XSDT és RSDT létrehozó mezÅ‘jének beállítása." - -#: grub-core/commands/acpi.c:56 -msgid "Set creator revision of RSDP, XSDT and RSDT." -msgstr "Az RSDP, XSDT és RSDT létrehozó revíziójának beállítása." - -#. TRANSLATORS: "hangs" here is a noun, not a verb. -#: grub-core/commands/acpi.c:58 -msgid "" -"Don't update EBDA. May fix failures or hangs on some BIOSes but makes it " -"ineffective with OS not receiving RSDP from GRUB." -msgstr "" -"Ne frissítse az EBDA-t. Egyes BIOS-ok esetén hibákat vagy fagyásokat " -"javíthat, de hatástalan, ha az OS nem fogadja az RSDP-t a GRUB-ból." - -#: grub-core/commands/acpi.c:650 grub-core/commands/acpi.c:667 -#: grub-core/commands/i386/pc/play.c:105 grub-core/commands/keylayouts.c:230 -#: grub-core/commands/keylayouts.c:245 grub-core/commands/keylayouts.c:263 -#: grub-core/commands/verifiers.c:156 grub-core/efiemu/loadcore.c:350 -#: grub-core/kern/elf.c:117 grub-core/kern/elfXX.c:29 -#: grub-core/kern/elfXX.c:156 grub-core/loader/arm/linux.c:319 -#: grub-core/loader/arm64/linux.c:330 grub-core/loader/arm64/xen_boot.c:356 -#: grub-core/loader/efi/chainloader.c:276 -#: grub-core/loader/efi/chainloader.c:297 -#: grub-core/loader/efi/chainloader.c:329 grub-core/loader/efi/fdt.c:138 -#: grub-core/loader/i386/bsd.c:1276 grub-core/loader/i386/bsd.c:2116 -#: grub-core/loader/i386/bsdXX.c:20 grub-core/loader/i386/bsdXX.c:36 -#: grub-core/loader/i386/bsdXX.c:63 grub-core/loader/i386/bsdXX.c:357 -#: grub-core/loader/i386/bsdXX.c:376 grub-core/loader/i386/bsdXX.c:519 -#: grub-core/loader/i386/bsdXX.c:535 grub-core/loader/i386/bsdXX.c:615 -#: grub-core/loader/i386/bsdXX.c:638 -#: grub-core/loader/i386/coreboot/chainloader.c:112 -#: grub-core/loader/i386/coreboot/chainloader.c:148 -#: grub-core/loader/i386/coreboot/chainloader.c:170 -#: grub-core/loader/i386/linux.c:667 grub-core/loader/i386/linux.c:788 -#: grub-core/loader/i386/linux.c:1005 grub-core/loader/i386/multiboot_mbi.c:171 -#: grub-core/loader/i386/pc/chainloader.c:202 -#: grub-core/loader/i386/pc/linux.c:149 grub-core/loader/i386/pc/linux.c:320 -#: grub-core/loader/i386/pc/linux.c:362 grub-core/loader/i386/pc/plan9.c:457 -#: grub-core/loader/i386/pc/plan9.c:550 grub-core/loader/i386/pc/plan9.c:566 -#: grub-core/loader/i386/xen.c:934 grub-core/loader/i386/xen_file.c:72 -#: grub-core/loader/i386/xen_fileXX.c:43 grub-core/loader/i386/xen_fileXX.c:186 -#: grub-core/loader/i386/xen_fileXX.c:339 grub-core/loader/ia64/efi/linux.c:423 -#: grub-core/loader/ia64/efi/linux.c:471 grub-core/loader/linux.c:286 -#: grub-core/loader/macho.c:84 grub-core/loader/macho.c:109 -#: grub-core/loader/machoXX.c:33 grub-core/loader/machoXX.c:46 -#: grub-core/loader/machoXX.c:76 grub-core/loader/machoXX.c:116 -#: grub-core/loader/machoXX.c:131 grub-core/loader/machoXX.c:147 -#: grub-core/loader/machoXX.c:196 grub-core/loader/machoXX.c:317 -#: grub-core/loader/multiboot.c:434 grub-core/loader/multiboot_elfxx.c:171 -#: grub-core/loader/multiboot_elfxx.c:234 -#: grub-core/loader/multiboot_elfxx.c:278 grub-core/loader/multiboot_mbi2.c:129 -#: grub-core/loader/xnu.c:737 grub-core/loader/xnu.c:795 -#: grub-core/loader/xnu.c:816 grub-core/loader/xnu.c:871 -#: grub-core/loader/xnu.c:914 grub-core/loader/xnu.c:952 -#: grub-core/loader/xnu_resume.c:68 grub-core/loader/xnu_resume.c:153 -#: grub-core/loader/xnu_resume.c:165 util/grub-mkimagexx.c:2288 -#, c-format -msgid "premature end of file %s" -msgstr "túl korai fájlvége: %s" - -#: grub-core/commands/acpi.c:779 -msgid "" -"[-1|-2] [--exclude=TABLE1,TABLE2|--load-only=TABLE1,TABLE2] FILE1 [FILE2] " -"[...]" -msgstr "" -"[-1|-2] [--exclude=TÃBLÃZAT1,TÃBLÃZAT2|--load-only=TÃBLÃZAT1,TÃBLÃZAT2] " -"FÃJL1 [FÃJL2] […]" - -#: grub-core/commands/acpi.c:782 -msgid "Load host ACPI tables and tables specified by arguments." -msgstr "Gazda ACPI-táblázatok és a paraméterben megadott táblázatok betöltése." - -#: grub-core/commands/acpihalt.c:368 grub-core/kern/err.c:110 -#, c-format -msgid "error: %s.\n" -msgstr "hiba: %s.\n" - -#: grub-core/commands/acpihalt.c:368 grub-core/kern/emu/misc.c:95 -#: grub-core/kern/emu/misc.c:105 grub-core/kern/emu/misc.c:134 -#: grub-core/kern/emu/mm.c:34 grub-core/kern/emu/mm.c:62 -#: grub-core/kern/mm.c:374 grub-core/lib/relocator.c:1282 -#: grub-core/lib/relocator.c:1439 grub-core/lib/relocator.c:1538 -#: grub-core/loader/arm/linux.c:259 grub-core/loader/arm64/linux.c:265 -#: grub-core/loader/arm64/linux.c:321 grub-core/loader/arm64/linux.c:340 -#: grub-core/loader/arm64/xen_boot.c:344 grub-core/loader/arm64/xen_boot.c:367 -#: grub-core/loader/efi/chainloader.c:289 grub-core/osdep/unix/dl.c:48 -#: grub-core/osdep/windows/dl.c:46 grub-core/script/lexer.c:156 -#: grub-core/script/lexer.c:182 -msgid "out of memory" -msgstr "nincs elég memória" - -#: grub-core/commands/acpihalt.c:374 grub-core/disk/cryptodisk.c:587 -#: grub-core/disk/cryptodisk.c:632 grub-core/kern/emu/hostdisk.c:307 -#: grub-core/kern/emu/hostfs.c:149 grub-core/kern/emu/misc.c:200 -#: grub-core/osdep/linux/ofpath.c:195 grub-core/osdep/linux/ofpath.c:521 -#: grub-core/osdep/linux/ofpath.c:534 util/glue-efi.c:80 util/glue-efi.c:94 -#: util/grub-editenv.c:155 util/grub-fstest.c:577 -#: util/grub-install-common.c:943 util/grub-mkrescue.c:634 -#: util/grub-mkrescue.c:888 util/grub-mount.c:506 util/grub-render-label.c:176 -#: util/misc.c:95 util/setup.c:814 util/setup.c:833 -#, c-format -msgid "cannot read `%s': %s" -msgstr "„%s†nem olvasható: %s" - -#. TRANSLATORS: It's computer shutdown using ACPI, not disabling ACPI. -#: grub-core/commands/acpihalt.c:452 -msgid "ACPI shutdown failed" -msgstr "ACPI leállítás nem sikerült" - -#: grub-core/commands/arc/lsdev.c:51 -msgid "List devices." -msgstr "Eszközök felsorolása." - -#: grub-core/commands/blocklist.c:122 grub-core/commands/cat.c:57 -#: grub-core/commands/configfile.c:35 grub-core/commands/efi/loadbios.c:168 -#: grub-core/commands/file.c:159 grub-core/commands/hexdump.c:47 -#: grub-core/commands/legacycfg.c:209 grub-core/commands/legacycfg.c:315 -#: grub-core/commands/minicmd.c:44 grub-core/commands/syslinuxcfg.c:146 -#: grub-core/commands/testload.c:58 grub-core/commands/testspeed.c:52 -#: grub-core/disk/loopback.c:93 grub-core/efiemu/main.c:293 -#: grub-core/font/font_cmd.c:32 grub-core/kern/emu/hostdisk.c:519 -#: grub-core/loader/arm/linux.c:364 grub-core/loader/arm/linux.c:409 -#: grub-core/loader/arm/linux.c:472 grub-core/loader/arm64/linux.c:243 -#: grub-core/loader/arm64/linux.c:297 grub-core/loader/arm64/xen_boot.c:398 -#: grub-core/loader/arm64/xen_boot.c:411 grub-core/loader/arm64/xen_boot.c:462 -#: grub-core/loader/efi/chainloader.c:216 grub-core/loader/i386/bsd.c:1462 -#: grub-core/loader/i386/bsd.c:1807 grub-core/loader/i386/bsd.c:2085 -#: grub-core/loader/i386/coreboot/chainloader.c:438 -#: grub-core/loader/i386/linux.c:656 grub-core/loader/i386/linux.c:1041 -#: grub-core/loader/i386/pc/chainloader.c:290 -#: grub-core/loader/i386/pc/freedos.c:105 grub-core/loader/i386/pc/linux.c:138 -#: grub-core/loader/i386/pc/linux.c:400 grub-core/loader/i386/pc/ntldr.c:85 -#: grub-core/loader/i386/pc/plan9.c:409 -#: grub-core/loader/i386/pc/pxechainloader.c:94 -#: grub-core/loader/i386/pc/truecrypt.c:96 grub-core/loader/i386/xen.c:641 -#: grub-core/loader/i386/xen.c:768 grub-core/loader/i386/xen.c:844 -#: grub-core/loader/i386/xen.c:854 grub-core/loader/i386/xnu.c:488 -#: grub-core/loader/ia64/efi/linux.c:459 grub-core/loader/ia64/efi/linux.c:539 -#: grub-core/loader/mips/linux.c:238 grub-core/loader/mips/linux.c:429 -#: grub-core/loader/multiboot.c:322 grub-core/loader/multiboot.c:374 -#: grub-core/loader/multiboot.c:384 -#: grub-core/loader/powerpc/ieee1275/linux.c:269 -#: grub-core/loader/powerpc/ieee1275/linux.c:341 -#: grub-core/loader/sparc64/ieee1275/linux.c:305 -#: grub-core/loader/sparc64/ieee1275/linux.c:381 grub-core/loader/xnu.c:351 -#: grub-core/loader/xnu.c:460 grub-core/loader/xnu.c:778 -#: grub-core/loader/xnu.c:892 grub-core/loader/xnu.c:1277 -#: grub-core/loader/xnu.c:1427 grub-core/loader/xnu.c:1453 -#: grub-core/video/readers/jpeg.c:812 grub-core/video/readers/png.c:1123 -msgid "filename expected" -msgstr "fájlnévnek kellett volna következnie" - -#. TRANSLATORS: "embed" is a verb (command description). " -#: grub-core/commands/blocklist.c:154 grub-core/commands/cat.c:163 -#: grub-core/commands/configfile.c:65 grub-core/commands/configfile.c:68 -#: grub-core/commands/configfile.c:74 grub-core/commands/configfile.c:80 -#: grub-core/commands/configfile.c:86 grub-core/commands/hashsum.c:34 -#: grub-core/commands/legacycfg.c:834 grub-core/commands/legacycfg.c:841 -#: grub-core/commands/legacycfg.c:846 grub-core/commands/legacycfg.c:851 -#: grub-core/commands/macbless.c:222 grub-core/commands/minicmd.c:198 -#: grub-core/commands/syslinuxcfg.c:186 grub-core/commands/syslinuxcfg.c:194 -#: grub-core/commands/syslinuxcfg.c:200 grub-core/commands/syslinuxcfg.c:206 -#: grub-core/commands/testload.c:163 grub-core/efiemu/main.c:312 -#: grub-core/kern/emu/main.c:100 grub-core/kern/emu/main.c:103 -#: grub-core/loader/i386/bsd.c:2137 grub-core/loader/i386/bsd.c:2140 -#: grub-core/loader/i386/bsd.c:2143 -#: grub-core/loader/i386/coreboot/chainloader.c:505 -#: grub-core/loader/ia64/efi/linux.c:594 include/grub/util/install.h:32 -#: include/grub/util/install.h:64 util/grub-glue-efi.c:52 -#: util/grub-glue-efi.c:54 util/grub-glue-efi.c:56 util/grub-install.c:254 -#: util/grub-install.c:301 util/grub-mkfont.c:936 util/grub-mkimage.c:68 -#: util/grub-mkimage.c:74 util/grub-mkimage.c:76 util/grub-mkimage.c:78 -#: util/grub-mkimage.c:81 util/grub-mklayout.c:52 util/grub-mklayout.c:54 -#: util/grub-mkrescue.c:97 util/grub-mkrescue.c:101 util/grub-mkrescue.c:104 -#: util/grub-mkrescue.c:105 util/grub-mkrescue.c:106 -#: util/grub-mkstandalone.c:47 util/grub-mkstandalone.c:49 -#: util/grub-probe.c:732 util/grub-render-label.c:59 -#: util/grub-render-label.c:70 util/grub-render-label.c:72 util/grub-setup.c:78 -#: util/grub-setup.c:80 util/grub-setup.c:84 util/grub-syslinux2cfg.c:74 -#: util/grub-syslinux2cfg.c:147 -msgid "FILE" -msgstr "FÃJL" - -#: grub-core/commands/blocklist.c:154 -msgid "Print a block list." -msgstr "Blokklista kiírása." - -#: grub-core/commands/boot.c:147 grub-core/commands/legacycfg.c:533 -#: grub-core/commands/legacycfg.c:574 grub-core/loader/arm64/linux.c:250 -#: grub-core/loader/i386/bsd.c:1799 grub-core/loader/i386/bsd.c:1900 -#: grub-core/loader/i386/bsd.c:2007 grub-core/loader/i386/bsd.c:2040 -#: grub-core/loader/i386/bsd.c:2089 grub-core/loader/i386/linux.c:1047 -#: grub-core/loader/i386/pc/linux.c:406 grub-core/loader/i386/xen.c:775 -#: grub-core/loader/i386/xen.c:859 grub-core/loader/ia64/efi/linux.c:545 -#: grub-core/loader/mips/linux.c:432 grub-core/loader/multiboot.c:388 -#: grub-core/loader/powerpc/ieee1275/linux.c:347 -#: grub-core/loader/sparc64/ieee1275/linux.c:387 grub-core/loader/xnu.c:572 -#: grub-core/loader/xnu.c:665 grub-core/loader/xnu.c:781 -#: grub-core/loader/xnu.c:895 grub-core/loader/xnu.c:1091 -#: grub-core/loader/xnu.c:1258 grub-core/loader/xnu.c:1289 -#: grub-core/loader/xnu.c:1430 -msgid "you need to load the kernel first" -msgstr "elÅ‘ször a kernelt kell betöltenie" - -#: grub-core/commands/boot.c:189 -msgid "Boot an operating system." -msgstr "Operációs rendszer elindítása." - -#: grub-core/commands/boottime.c:36 -#: grub-core/commands/i386/coreboot/cb_timestamps.c:108 -msgid "No boot time statistics is available\n" -msgstr "Nem érhetÅ‘ el rendszerindítás idejű statisztika\n" - -#: grub-core/commands/boottime.c:59 -msgid "Show boot time statistics." -msgstr "Rendszerindítás idejű statisztika megjelenítése." - -#: grub-core/commands/cacheinfo.c:40 -#, c-format -msgid "Disk cache statistics: hits = %lu (%lu.%02lu%%), misses = %lu\n" -msgstr "" -"Lemezgyorsító statisztika: találatok = %lu (%lu.%02lu%%), mulasztások = %lu\n" - -#: grub-core/commands/cacheinfo.c:45 -msgid "No disk cache statistics available\n" -msgstr "Nem érhetÅ‘ el lemezgyorsító statisztika\n" - -#: grub-core/commands/cacheinfo.c:56 -msgid "Get disk cache info." -msgstr "Lemezgyorsító információk lekérése." - -#: grub-core/commands/cat.c:33 -msgid "Accept DOS-style CR/NL line endings." -msgstr "DOS-stílusú CR/NL sorvégek elfogadása." - -#: grub-core/commands/cat.c:163 grub-core/commands/minicmd.c:198 -msgid "Show the contents of a file." -msgstr "Fájl tartalmának megjelenítése." - -#: grub-core/commands/cmp.c:43 grub-core/commands/i386/pc/drivemap.c:239 -#: grub-core/commands/i386/wrmsr.c:60 grub-core/commands/iorw.c:85 -#: grub-core/commands/memrw.c:84 grub-core/commands/password.c:75 -#: grub-core/commands/password_pbkdf2.c:94 grub-core/commands/pgp.c:826 -#: grub-core/commands/regexp.c:113 grub-core/mmap/mmap.c:517 -#: grub-core/net/dns.c:639 -msgid "two arguments expected" -msgstr "két argumentumot kell megadni" - -#: grub-core/commands/cmp.c:45 -#, c-format -msgid "Compare file `%s' with `%s':\n" -msgstr "A(z) „%s†fájl összehasonlítása ezzel: „%sâ€:\n" - -#: grub-core/commands/cmp.c:54 -#, c-format -msgid "Files differ in size: %llu [%s], %llu [%s]\n" -msgstr "A fájlok mérete eltér: %llu [%s], %llu [%s]\n" - -#: grub-core/commands/cmp.c:81 -#, c-format -msgid "Files differ at the offset %llu: 0x%x [%s], 0x%x [%s]\n" -msgstr "A fájlok eltérÅ‘k a(z) %llu eltolásnál: 0x%x [%s], 0x%x [%s]\n" - -#. TRANSLATORS: it's always exactly 2 files. -#: grub-core/commands/cmp.c:93 -msgid "The files are identical.\n" -msgstr "A fájlok teljesen egyformák.\n" - -#: grub-core/commands/cmp.c:113 -msgid "FILE1 FILE2" -msgstr "FÃJL1 FÃJL2" - -#: grub-core/commands/cmp.c:113 -msgid "Compare two files." -msgstr "Két fájl összehasonlítása." - -#: grub-core/commands/configfile.c:65 -msgid "Load another config file." -msgstr "Másik beállítófájl betöltése." - -#: grub-core/commands/configfile.c:69 grub-core/commands/configfile.c:87 -msgid "Load another config file without changing context." -msgstr "Másik beállítófájl betöltése a környezet módosítása nélkül." - -#: grub-core/commands/configfile.c:75 -msgid "" -"Load another config file without changing context but take only menu entries." -msgstr "" -"Másik beállítófájl betöltése a környezet módosítása nélkül, de csak a " -"menübejegyzések átvételével." - -#: grub-core/commands/configfile.c:81 -msgid "Load another config file but take only menu entries." -msgstr "Másik beállítófájl betöltése, de csak a menübejegyzések átvételével." - -#: grub-core/commands/date.c:141 -msgid "[[year-]month-day] [hour:minute[:second]]" -msgstr "[[év-]hónap-nap] [óra:perc[:másodperc]]" - -#: grub-core/commands/date.c:142 -msgid "Display/set current datetime." -msgstr "Aktuális dátum és idÅ‘ megjelenítése/beállítása." - -#: grub-core/commands/echo.c:30 -msgid "Do not output the trailing newline." -msgstr "Ne írja ki a záró új sort." - -#: grub-core/commands/echo.c:31 -msgid "Enable interpretation of backslash escapes." -msgstr "Visszaper fedések értelmezésének engedélyezése." - -#: grub-core/commands/echo.c:134 -msgid "[-e|-n] STRING" -msgstr "[-e|-n] SZÖVEG" - -#: grub-core/commands/echo.c:134 -msgid "Display a line of text." -msgstr "Egy sornyi szöveg megjelenítése." - -#: grub-core/commands/efi/efifwsetup.c:82 -msgid "Reboot into firmware setup menu." -msgstr "Újraindítás a firmware beállító menübe." - -#: grub-core/commands/efi/fixvideo.c:107 -msgid "Fix video problem." -msgstr "Videoprobléma javítása." - -#: grub-core/commands/efi/loadbios.c:52 -msgid "ROM image is present." -msgstr "ROM kép meg van adva." - -#: grub-core/commands/efi/loadbios.c:70 -msgid "Can't enable ROM area." -msgstr "Nem sikerült engedélyezni a ROM területet." - -#: grub-core/commands/efi/loadbios.c:209 -msgid "" -"Create BIOS-like structures for backward compatibility with existing OS." -msgstr "" -"BIOS-szerű szerkezetek létrehozása a meglévÅ‘ operációs rendszerekkel való " -"visszafelé kompatibilitáshoz." - -#: grub-core/commands/efi/loadbios.c:214 -msgid "BIOS_DUMP [INT10_DUMP]" -msgstr "BIOS_DUMP [INT10_DUMP]" - -#: grub-core/commands/efi/loadbios.c:215 -msgid "Load BIOS dump." -msgstr "BIOS-kiíratás betöltése." - -#: grub-core/commands/efi/shim_lock.c:76 -#, c-format -msgid "module cannot be loaded in UEFI secure boot mode: %s" -msgstr "" - -#: grub-core/commands/efi/shim_lock.c:98 -#, c-format -msgid "cannot boot due to dangerous module in memory: %s" -msgstr "" - -#: grub-core/commands/efi/shim_lock.c:116 -#, fuzzy -msgid "bad shim signature" -msgstr "hibás aláírás" - -#: grub-core/commands/efi/tpm.c:149 grub-core/commands/efi/tpm.c:189 -#: grub-core/commands/efi/tpm.c:256 grub-core/commands/efi/tpm.c:306 -#, fuzzy -msgid "Command failed" -msgstr "az alloc-mem sikertelen" - -#: grub-core/commands/efi/tpm.c:151 grub-core/commands/efi/tpm.c:191 -#: grub-core/commands/efi/tpm.c:258 grub-core/commands/efi/tpm.c:308 -#, fuzzy -msgid "Invalid parameter" -msgstr "érvénytelen %s paraméter" - -#: grub-core/commands/efi/tpm.c:154 grub-core/commands/efi/tpm.c:194 -#: grub-core/commands/efi/tpm.c:261 grub-core/commands/efi/tpm.c:311 -msgid "Output buffer too small" -msgstr "" - -#: grub-core/commands/efi/tpm.c:156 grub-core/commands/efi/tpm.c:196 -#: grub-core/commands/efi/tpm.c:263 grub-core/commands/efi/tpm.c:313 -#, fuzzy -msgid "TPM unavailable" -msgstr "Útvonal: nem érhetÅ‘ el" - -#: grub-core/commands/efi/tpm.c:158 grub-core/commands/efi/tpm.c:198 -#: grub-core/commands/efi/tpm.c:265 grub-core/commands/efi/tpm.c:315 -#, fuzzy -msgid "Unknown TPM error" -msgstr "Ismeretlen rendszerhiba" - -#: grub-core/commands/efi/tpm.c:240 grub-core/commands/efi/tpm.c:288 -msgid "cannot allocate TPM event buffer" -msgstr "" - -#: grub-core/commands/eval.c:63 -msgid "STRING ..." -msgstr "SZÖVEG …" - -#: grub-core/commands/eval.c:64 -msgid "Evaluate arguments as GRUB commands" -msgstr "Argumentumok kiértékelése GRUB parancsokként" - -#: grub-core/commands/file.c:41 -msgid "Check if FILE can be booted as i386 PAE Xen unprivileged guest kernel" -msgstr "" -"EllenÅ‘rzés, hogy a FÃJL indítható-e i386 PAE Xen nem kiváltságos " -"vendégkernelként" - -#: grub-core/commands/file.c:44 -msgid "Check if FILE can be booted as x86_64 Xen unprivileged guest kernel" -msgstr "" -"EllenÅ‘rzés, hogy a FÃJL indítható-e x86_64 Xen nem kiváltságos " -"vendégkernelként" - -#: grub-core/commands/file.c:46 -msgid "Check if FILE can be used as Xen x86 privileged guest kernel" -msgstr "" -"EllenÅ‘rzés, hogy a FÃJL használható-e Xen x86 kiváltságos vendégkernelként" - -#: grub-core/commands/file.c:48 -msgid "Check if FILE can be used as x86 multiboot kernel" -msgstr "EllenÅ‘rzés, hogy a FÃJL használható-e x86 multiboot kernelként" - -#: grub-core/commands/file.c:50 -msgid "Check if FILE can be used as x86 multiboot2 kernel" -msgstr "EllenÅ‘rzés, hogy a FÃJL használható-e x86 multiboot2 kernelként" - -#: grub-core/commands/file.c:52 -msgid "Check if FILE is ARM Linux" -msgstr "EllenÅ‘rzés, hogy a FÃJL ARM Linux" - -#: grub-core/commands/file.c:54 -msgid "Check if FILE is ARM64 Linux" -msgstr "EllenÅ‘rzés, hogy a FÃJL ARM64 Linux" - -#: grub-core/commands/file.c:56 -msgid "Check if FILE is IA64 Linux" -msgstr "EllenÅ‘rzés, hogy a FÃJL IA64 Linux" - -#: grub-core/commands/file.c:58 -msgid "Check if FILE is MIPS Linux" -msgstr "EllenÅ‘rzés, hogy a FÃJL MIPS Linux" - -#: grub-core/commands/file.c:60 -msgid "Check if FILE is MIPSEL Linux" -msgstr "EllenÅ‘rzés, hogy a FÃJL MIPSEL Linux" - -#: grub-core/commands/file.c:62 -msgid "Check if FILE is SPARC64 Linux" -msgstr "EllenÅ‘rzés, hogy a FÃJL SPARC64 Linux" - -#: grub-core/commands/file.c:64 -msgid "Check if FILE is POWERPC Linux" -msgstr "EllenÅ‘rzés, hogy a FÃJL POWERPC Linux" - -#: grub-core/commands/file.c:66 -msgid "Check if FILE is x86 Linux" -msgstr "EllenÅ‘rzés, hogy a FÃJL x86 Linux" - -#: grub-core/commands/file.c:68 -msgid "Check if FILE is x86 Linux supporting 32-bit protocol" -msgstr "EllenÅ‘rzés, hogy a FÃJL x86 Linux 32-bites protokoll támogatással" - -#: grub-core/commands/file.c:70 -msgid "Check if FILE is x86 kFreeBSD" -msgstr "EllenÅ‘rzés, hogy a FÃJL kFreeBSD" - -#: grub-core/commands/file.c:72 -msgid "Check if FILE is i386 kFreeBSD" -msgstr "EllenÅ‘rzés, hogy a FÃJL i386 kFreeBSD" - -#: grub-core/commands/file.c:74 -msgid "Check if FILE is x86_64 kFreeBSD" -msgstr "EllenÅ‘rzés, hogy a FÃJL x86_64 kFreeBSD" - -#: grub-core/commands/file.c:77 -msgid "Check if FILE is x86 kNetBSD" -msgstr "EllenÅ‘rzés, hogy a FÃJL x86 kNetBSD" - -#: grub-core/commands/file.c:79 -msgid "Check if FILE is i386 kNetBSD" -msgstr "EllenÅ‘rzés, hogy a FÃJL i386 kNetBSD" - -#: grub-core/commands/file.c:81 -msgid "Check if FILE is x86_64 kNetBSD" -msgstr "EllenÅ‘rzés, hogy a FÃJL x86_64 kNetBSD" - -#: grub-core/commands/file.c:84 -msgid "Check if FILE is i386 EFI file" -msgstr "EllenÅ‘rzés, hogy a FÃJL EFI-fájl" - -#: grub-core/commands/file.c:86 -msgid "Check if FILE is x86_64 EFI file" -msgstr "EllenÅ‘rzés, hogy a FÃJL x86_64 EFI-fájl" - -#: grub-core/commands/file.c:88 -msgid "Check if FILE is IA64 EFI file" -msgstr "EllenÅ‘rzés, hogy a FÃJL IA64 EFI-fájl" - -#: grub-core/commands/file.c:90 -msgid "Check if FILE is ARM64 EFI file" -msgstr "EllenÅ‘rzés, hogy a FÃJL ARM64 EFI-fájl" - -#: grub-core/commands/file.c:92 -msgid "Check if FILE is ARM EFI file" -msgstr "EllenÅ‘rzés, hogy a FÃJL ARM EFI-fájl" - -#: grub-core/commands/file.c:94 -#, fuzzy -msgid "Check if FILE is RISC-V 32bit EFI file" -msgstr "EllenÅ‘rzés, hogy a FÃJL ARM EFI-fájl" - -#: grub-core/commands/file.c:96 -#, fuzzy -msgid "Check if FILE is RISC-V 64bit EFI file" -msgstr "EllenÅ‘rzés, hogy a FÃJL IA64 EFI-fájl" - -#: grub-core/commands/file.c:98 -msgid "Check if FILE is hiberfil.sys in hibernated state" -msgstr "EllenÅ‘rzés, hogy a FÃJL hibernált állapotban lévÅ‘ hiberfil.sys" - -#: grub-core/commands/file.c:100 -msgid "Check if FILE is x86_64 XNU (Mac OS X kernel)" -msgstr "EllenÅ‘rzés, hogy a FÃJL x86_64 XNU (Mac OS X kernel)" - -#: grub-core/commands/file.c:102 -msgid "Check if FILE is i386 XNU (Mac OS X kernel)" -msgstr "EllenÅ‘rzés, hogy a FÃJL i386 XNU (Mac OS X kernel)" - -#: grub-core/commands/file.c:104 -msgid "Check if FILE is XNU (Mac OS X kernel) hibernated image" -msgstr "EllenÅ‘rzés, hogy a FÃJL XNU (Mac OS X kernel) hibernált lemezkép" - -#: grub-core/commands/file.c:106 -msgid "Check if FILE is BIOS bootsector" -msgstr "EllenÅ‘rzés, hogy a FÃJL BIOS bootsector" - -#. TRANSLATORS: it's a standalone boolean value, -#. opposite of "true". -#: grub-core/commands/file.c:675 grub-core/commands/i386/cmostest.c:63 -#: grub-core/commands/i386/cpuid.c:71 grub-core/commands/keystatus.c:83 -#: grub-core/commands/keystatus.c:87 grub-core/commands/keystatus.c:96 -#: grub-core/commands/test.c:436 grub-core/commands/true.c:39 -#: grub-core/script/execute.c:247 grub-core/script/execute.c:1039 -msgid "false" -msgstr "hamis" - -#: grub-core/commands/file.c:684 -msgid "OPTIONS FILE" -msgstr "KAPCSOLÓK FÃJL" - -#: grub-core/commands/file.c:685 -msgid "Check if FILE is of specified type." -msgstr "EllenÅ‘rzés, hogy a FÃJL egy megadott típusú." - -#. TRANSLATORS: It means that the specified partition e.g. -#. hd0,msdos1=/dev/sda1 doesn't exist. -#: grub-core/commands/gptsync.c:140 grub-core/kern/disk.c:258 -msgid "no such partition" -msgstr "nincs ilyen partíció" - -#: grub-core/commands/gptsync.c:240 -#, c-format -msgid "New MBR is written to `%s'\n" -msgstr "Az új MBR kiírva ide: „%sâ€\n" - -#: grub-core/commands/gptsync.c:252 -msgid "DEVICE [PARTITION[+/-[TYPE]]] ..." -msgstr "ESZKÖZ [PARTÃCIÓ[+/-[TÃPUS]]] …" - -#. TRANSLATORS: MBR type is one-byte partition -#. type id. -#: grub-core/commands/gptsync.c:255 -msgid "" -"Fill hybrid MBR of GPT drive DEVICE. Specified partitions will be a part of " -"hybrid MBR. Up to 3 partitions are allowed. TYPE is an MBR type. + means " -"that partition is active. Only one partition can be active." -msgstr "" -"A GPT meghajtó ESZKÖZÉNEK feltöltése hibrid MBR-el. A megadott partíciók " -"részei lesznek a hibrid MBR-nek. Maximum 3 partíció engedélyezett. A TÃPUS " -"egy MBR típus. A + jelzi, hogy az adott partíció aktív. Egyszerre csak egy " -"partíció lehet aktív." - -#: grub-core/commands/halt.c:40 -msgid "" -"Halts the computer. This command does not work on all firmware " -"implementations." -msgstr "" -"Leállítja a számítógépet. Ez a parancs nem működik minden firmware-" -"megvalósításon." - -#: grub-core/commands/hashsum.c:32 -msgid "Specify hash to use." -msgstr "Használandó hash megadása." - -#: grub-core/commands/hashsum.c:32 -msgid "HASH" -msgstr "HASH" - -#: grub-core/commands/hashsum.c:33 -msgid "Check hashes of files with hash list FILE." -msgstr "A fájlok hash-einek ellenÅ‘rzése a hash-lista FÃJLLAL." - -#: grub-core/commands/hashsum.c:35 -msgid "Base directory for hash list." -msgstr "A hash-lista alapkönyvtára." - -#. TRANSLATORS: platform here isn't identifier. It can be translated. -#: grub-core/commands/hashsum.c:35 grub-core/commands/ls.c:150 -#: grub-core/commands/macbless.c:226 grub-core/commands/syslinuxcfg.c:51 -#: grub-core/commands/syslinuxcfg.c:54 grub-core/kern/emu/main.c:106 -#: include/grub/util/install.h:50 include/grub/util/install.h:53 -#: include/grub/util/install.h:56 include/grub/util/install.h:59 -#: util/grub-install.c:250 util/grub-install.c:252 util/grub-install.c:297 -#: util/grub-install.c:299 util/grub-mkimage.c:64 util/grub-mkimage.c:67 -#: util/grub-mknetdir.c:46 util/grub-mknetdir.c:48 util/grub-mkrescue.c:99 -#: util/grub-setup.c:82 util/grub-syslinux2cfg.c:63 util/grub-syslinux2cfg.c:65 -#: util/grub-syslinux2cfg.c:67 util/grub-syslinux2cfg.c:71 -msgid "DIR" -msgstr "KVT" - -#: grub-core/commands/hashsum.c:37 -msgid "Don't stop after first error." -msgstr "Ne álljon meg az elsÅ‘ hiba után." - -#: grub-core/commands/hashsum.c:38 -msgid "Uncompress file before checksumming." -msgstr "Fájl kibontása az ellenÅ‘rzőösszeg számolása elÅ‘tt." - -#: grub-core/commands/hashsum.c:163 -#, c-format -msgid "%s: READ ERROR\n" -msgstr "%s: OLVASÃSI HIBA\n" - -#: grub-core/commands/hashsum.c:177 -#, c-format -msgid "%s: HASH MISMATCH\n" -msgstr "%s: HASH ELTÉRÉS\n" - -#: grub-core/commands/hashsum.c:188 -#, c-format -msgid "%s: OK\n" -msgstr "%s: OK\n" - -#: grub-core/commands/hashsum.c:282 -msgid "-h HASH [-c FILE [-p PREFIX]] [FILE1 [FILE2 ...]]" -msgstr "-h HASH [-c FÃJL [-p ELÅTAG]] [FÃJL1 [FÃJL2 …]]" - -#. TRANSLATORS: "hash checksum" is just to -#. be a bit more precise, you can treat it as -#. just "hash". -#: grub-core/commands/hashsum.c:287 grub-core/commands/hashsum.c:292 -#: grub-core/commands/hashsum.c:297 grub-core/commands/hashsum.c:302 -#: grub-core/commands/hashsum.c:307 grub-core/commands/hashsum.c:313 -msgid "Compute or check hash checksum." -msgstr "Hash ellenÅ‘rzőösszeg kiszámolása vagy ellenÅ‘rzése." - -#: grub-core/commands/hashsum.c:290 grub-core/commands/hashsum.c:295 -#: grub-core/commands/hashsum.c:300 grub-core/commands/hashsum.c:305 -#: grub-core/commands/hashsum.c:311 -msgid "[-c FILE [-p PREFIX]] [FILE1 [FILE2 ...]]" -msgstr "[-c FÃJL [-p ELÅTAG]] [FÃJL1 [FÃJL2 …]]" - -#: grub-core/commands/hdparm.c:33 -msgid "" -"Set Advanced Power Management\n" -"(1=low, ..., 254=high, 255=off)." -msgstr "" -"Speciális energiakezelés (APM) beállítása\n" -"(1=alacsony, …, 254=magas, 255=ki)." - -#: grub-core/commands/hdparm.c:36 -msgid "Display power mode." -msgstr "Energia mód megjelenítése." - -#: grub-core/commands/hdparm.c:37 -msgid "Freeze ATA security settings until reset." -msgstr "Az ATA biztonsági beállítások fagyasztása az újraindításig." - -#: grub-core/commands/hdparm.c:39 -msgid "Display SMART health status." -msgstr "A SMART egészségi állapot megjelenítése." - -#: grub-core/commands/hdparm.c:40 -msgid "" -"Set Automatic Acoustic Management\n" -"(0=off, 128=quiet, ..., 254=fast)." -msgstr "" -"Automatikus zajkezelés (AAM) beállítása\n" -"(0=ki, 128=csendes, …, 254=gyors)." - -#: grub-core/commands/hdparm.c:43 -msgid "" -"Set standby timeout\n" -"(0=off, 1=5s, 2=10s, ..., 240=20m, 241=30m, ...)." -msgstr "" -"Készenléti idÅ‘korlát beállítása\n" -"(0=ki, 1=5mp, 2=10mp, …, 240=20p, 241=30p, …)." - -#: grub-core/commands/hdparm.c:46 -msgid "Set drive to standby mode." -msgstr "Meghajtó készenléti módba állítása." - -#: grub-core/commands/hdparm.c:47 -msgid "Set drive to sleep mode." -msgstr "Meghajtó alvó módba állítása." - -#: grub-core/commands/hdparm.c:48 -msgid "Print drive identity and settings." -msgstr "Meghajtó azonosítójának és beállításainak kiírása." - -#: grub-core/commands/hdparm.c:50 -msgid "Show raw contents of ATA IDENTIFY sector." -msgstr "Az ATA IDENTIFY szektor nyers tartalmának megjelenítése." - -#: grub-core/commands/hdparm.c:52 -msgid "Disable/enable SMART (0/1)." -msgstr "SMART letiltása/engedélyezése (0/1)." - -#: grub-core/commands/hdparm.c:53 -msgid "Do not print messages." -msgstr "Ne írjon ki üzeneteket." - -#: grub-core/commands/hdparm.c:286 grub-core/commands/i386/rdmsr.c:68 -#: grub-core/commands/iorw.c:47 grub-core/commands/legacycfg.c:760 -#: grub-core/commands/legacycfg.c:812 grub-core/commands/macbless.c:190 -#: grub-core/commands/memrw.c:47 grub-core/commands/pgp.c:738 -#: grub-core/commands/pgp.c:792 grub-core/commands/search.c:304 -#: grub-core/commands/search_wrap.c:179 grub-core/commands/setpci.c:243 -#: grub-core/commands/sleep.c:71 grub-core/fs/zfs/zfsinfo.c:279 -#: grub-core/fs/zfs/zfsinfo.c:358 grub-core/gettext/gettext.c:492 -#: grub-core/kern/corecmd.c:65 grub-core/kern/corecmd.c:79 -#: grub-core/mmap/mmap.c:430 grub-core/net/dns.c:713 grub-core/net/dns.c:745 -#: grub-core/net/net.c:694 grub-core/net/net.c:1052 -#: grub-core/normal/context.c:194 grub-core/script/execute.c:131 -#: grub-core/term/gfxterm_background.c:136 -msgid "one argument expected" -msgstr "egy argumentumot kell megadni" - -#: grub-core/commands/hdparm.c:440 -msgid "[OPTIONS] DISK" -msgstr "[KAPCSOLÓK] LEMEZ" - -#: grub-core/commands/hdparm.c:441 -msgid "Get/set ATA disk parameters." -msgstr "ATA lemezparaméterek lekérése/beállítása." - -#: grub-core/commands/help.c:132 grub-core/lib/arg.c:109 -#: grub-core/lib/gnulib/argp-help.c:1616 -msgid "Usage:" -msgstr "Használat:" - -#: grub-core/commands/help.c:146 -msgid "[PATTERN ...]" -msgstr "[MINTA …]" - -#: grub-core/commands/help.c:147 -msgid "Show a help message." -msgstr "Súgóüzenet megjelenítése." - -#: grub-core/commands/hexdump.c:31 -msgid "Skip offset bytes from the beginning of file." -msgstr "Eltolásbájtok kihagyása a fájl kezdetétÅ‘l." - -#: grub-core/commands/hexdump.c:33 -msgid "Read only LENGTH bytes." -msgstr "Csak HOSSZ bájt beolvasása." - -#: grub-core/commands/hexdump.c:125 -msgid "[OPTIONS] FILE_OR_DEVICE" -msgstr "[KAPCSOLÓK] FÃJL_VAGY_ESZKÖZ" - -#: grub-core/commands/hexdump.c:126 -msgid "Show raw contents of a file or memory." -msgstr "Egy fájl vagy a memória nyers tartalmának megjelenítése." - -#: grub-core/commands/i386/cmosdump.c:58 -msgid "Show raw dump of the CMOS contents." -msgstr "A CMOS tartalom nyers kiírásának megjelenítése." - -#: grub-core/commands/i386/cmostest.c:108 -#: grub-core/commands/i386/cmostest.c:111 -#: grub-core/commands/i386/cmostest.c:114 -msgid "BYTE:BIT" -msgstr "BÃJT:BIT" - -#: grub-core/commands/i386/cmostest.c:109 -msgid "Test bit at BYTE:BIT in CMOS." -msgstr "Bit tesztelése a CMOS BÃJT:BIT helyén." - -#: grub-core/commands/i386/cmostest.c:112 -msgid "Clear bit at BYTE:BIT in CMOS." -msgstr "Bit törlése a CMOS BÃJT:BIT helyén." - -#. TRANSLATORS: A bit may be either set (1) or clear (0). -#: grub-core/commands/i386/cmostest.c:116 -msgid "Set bit at BYTE:BIT in CMOS." -msgstr "Bit beállítása a CMOS BÃJT:BIT helyén." - -#: grub-core/commands/i386/coreboot/cb_timestamps.c:120 -msgid "Show coreboot boot time statistics." -msgstr "A magindítás rendszerindítás idejű statisztikájának megjelenítése." - -#: grub-core/commands/i386/coreboot/cbls.c:137 -msgid "List coreboot tables." -msgstr "Magindítási táblázatok listázása." - -#. TRANSLATORS: "(default)" at the end means that this option is used if -#. no argument is specified. -#: grub-core/commands/i386/cpuid.c:36 -msgid "Check if CPU supports 64-bit (long) mode (default)." -msgstr "" -"EllenÅ‘rzés, hogy a CPU támogatja-e a 64-bites (hosszú) módot " -"(alapértelmezett)." - -#: grub-core/commands/i386/cpuid.c:37 -msgid "Check if CPU supports Physical Address Extension." -msgstr "EllenÅ‘rzés, hogy a CPU támogatja-e a fizikai címkiterjesztést (PAE)." - -#: grub-core/commands/i386/cpuid.c:119 -msgid "Check for CPU features." -msgstr "CPU szolgáltatásainak ellenÅ‘rzése." - -#. TRANSLATORS: In this file "mapping" refers to a change GRUB makes so if -#. your language doesn't have an equivalent of "mapping" you can -#. use the word like "rerouting". -#. -#: grub-core/commands/i386/pc/drivemap.c:43 -msgid "Show the current mappings." -msgstr "Az aktuális társítások megjelenítése." - -#: grub-core/commands/i386/pc/drivemap.c:44 -msgid "Reset all mappings to the default values." -msgstr "Minden társítás visszaállítása az alapértelmezett értékekre." - -#: grub-core/commands/i386/pc/drivemap.c:45 -msgid "Perform both direct and reverse mappings." -msgstr "Közvetlen és fordított társítások végrehajtása egyaránt." - -#: grub-core/commands/i386/pc/drivemap.c:184 -msgid "No drives have been remapped" -msgstr "Nem lettek meghajtók újratársítva" - -#. TRANSLATORS: This is the header of mapping list. -#. On the left is how OS will see the disks and -#. on the right current GRUB vision. -#: grub-core/commands/i386/pc/drivemap.c:191 -msgid "OS disk #num ------> GRUB/BIOS device" -msgstr "OS lemez #szám ------> GRUB/BIOS eszköz" - -#: grub-core/commands/i386/pc/drivemap.c:413 -msgid "-l | -r | [-s] grubdev osdisk." -msgstr "-l | -r | [-s] grubeszköz oslemez." - -#: grub-core/commands/i386/pc/drivemap.c:414 -msgid "Manage the BIOS drive mappings." -msgstr "A BIOS meghajtótársítások kezelése." - -#: grub-core/commands/i386/pc/halt.c:31 -msgid "Do not use APM to halt the computer." -msgstr "Ne használja az APM-et a számítógép leállítására." - -#: grub-core/commands/i386/pc/halt.c:119 -msgid "Halt the system, if possible using APM." -msgstr "A rendszer leállítása, ha lehet, akkor APM használatával." - -#: grub-core/commands/i386/pc/lsapm.c:75 -msgid "no APM found" -msgstr "nem található APM" - -#: grub-core/commands/i386/pc/lsapm.c:77 -#, c-format -msgid "" -"Version %u.%u\n" -"32-bit CS = 0x%x, len = 0x%x, offset = 0x%x\n" -"16-bit CS = 0x%x, len = 0x%x\n" -"DS = 0x%x, len = 0x%x\n" -msgstr "" -"%u.%u verzió\n" -"32-bit CS = 0x%x, hossz = 0x%x, eltolás = 0x%x\n" -"16-bit CS = 0x%x, hossz = 0x%x\n" -"DS = 0x%x, hossz = 0x%x\n" - -#: grub-core/commands/i386/pc/lsapm.c:86 -msgid "16-bit protected interface supported\n" -msgstr "a 16-bites védett felület támogatott\n" - -#: grub-core/commands/i386/pc/lsapm.c:87 -msgid "16-bit protected interface unsupported\n" -msgstr "a 16-bites védett felület nem támogatott\n" - -#: grub-core/commands/i386/pc/lsapm.c:89 -msgid "32-bit protected interface supported\n" -msgstr "a 32-bites védett felület támogatott\n" - -#: grub-core/commands/i386/pc/lsapm.c:90 -msgid "32-bit protected interface unsupported\n" -msgstr "a 32-bites védett felület nem támogatott\n" - -#: grub-core/commands/i386/pc/lsapm.c:92 -msgid "CPU Idle slows down processor\n" -msgstr "a CPU üresjárat lelassítja a processzort\n" - -#: grub-core/commands/i386/pc/lsapm.c:93 -msgid "CPU Idle doesn't slow down processor\n" -msgstr "a CPU üresjárat nem lassítja le a processzort\n" - -#: grub-core/commands/i386/pc/lsapm.c:95 -msgid "APM disabled\n" -msgstr "APM letiltva\n" - -#: grub-core/commands/i386/pc/lsapm.c:95 -msgid "APM enabled\n" -msgstr "APM engedélyezve\n" - -#: grub-core/commands/i386/pc/lsapm.c:97 -msgid "APM disengaged\n" -msgstr "APM szabad\n" - -#: grub-core/commands/i386/pc/lsapm.c:97 -msgid "APM engaged\n" -msgstr "APM elfoglalt\n" - -#: grub-core/commands/i386/pc/lsapm.c:107 -msgid "Show APM information." -msgstr "APM-információk megjelenítése." - -#. TRANSLATORS: It's musical notes, not the notes -#. you take. Play command expects arguments which can -#. be either a filename or tempo+notes. -#. This error happens if none is specified. -#: grub-core/commands/i386/pc/play.c:88 -msgid "filename or tempo and notes expected" -msgstr "fájlnévnek vagy ütemnek és hangjegynek kellett volna következnie" - -#: grub-core/commands/i386/pc/play.c:113 grub-core/commands/i386/pc/play.c:144 -#, c-format -msgid "Invalid tempo in %s" -msgstr "Érvénytelen ütem itt: %s" - -#: grub-core/commands/i386/pc/play.c:151 grub-core/commands/macbless.c:172 -#: grub-core/fs/archelp.c:260 grub-core/fs/bfs.c:621 grub-core/fs/bfs.c:704 -#: grub-core/fs/btrfs.c:1726 grub-core/fs/btrfs.c:1755 -#: grub-core/fs/btrfs.c:1799 grub-core/fs/btrfs.c:1882 -#: grub-core/fs/btrfs.c:1906 grub-core/fs/fshelp.c:257 grub-core/fs/jfs.c:696 -#: grub-core/fs/minix.c:426 grub-core/fs/ufs.c:544 grub-core/fs/zfs/zfs.c:2083 -#: grub-core/fs/zfs/zfs.c:2095 grub-core/fs/zfs/zfs.c:2301 -#: grub-core/net/http.c:120 -#, c-format -msgid "file `%s' not found" -msgstr "a(z) „%s†fájl nem található" - -#: grub-core/commands/i386/pc/play.c:162 grub-core/commands/i386/pc/play.c:171 -#: grub-core/kern/misc.c:419 grub-core/script/execute.c:138 -#: grub-core/script/execute.c:244 -msgid "unrecognized number" -msgstr "azonosítatlan szám" - -#: grub-core/commands/i386/pc/play.c:190 -msgid "FILE | TEMPO [PITCH1 DURATION1] [PITCH2 DURATION2] ... " -msgstr "FÃJL | ÜTEM [MAGASSÃG1 HOSSZ1] [MAGASSÃG2 HOSSZ2] … " - -#: grub-core/commands/i386/pc/play.c:191 -msgid "Play a tune." -msgstr "Dallam lejátszása." - -#: grub-core/commands/i386/pc/sendkey.c:39 -msgid "set numlock mode" -msgstr "numlock mód beállítása" - -#: grub-core/commands/i386/pc/sendkey.c:40 -msgid "set capslock mode" -msgstr "capslock mód beállítása" - -#: grub-core/commands/i386/pc/sendkey.c:41 -msgid "set scrolllock mode" -msgstr "scrolllock mód beállítása" - -#: grub-core/commands/i386/pc/sendkey.c:42 -msgid "set insert mode" -msgstr "beszúró mód beállítása" - -#: grub-core/commands/i386/pc/sendkey.c:43 -msgid "set pause mode" -msgstr "szünet mód beállítása" - -#: grub-core/commands/i386/pc/sendkey.c:44 -msgid "press left shift" -msgstr "nyomja meg a bal shift billentyűt" - -#: grub-core/commands/i386/pc/sendkey.c:45 -msgid "press right shift" -msgstr "nyomja meg a jobb shift billentyűt" - -#: grub-core/commands/i386/pc/sendkey.c:46 -msgid "press SysRq" -msgstr "nyomja meg a SysRq billentyűt" - -#: grub-core/commands/i386/pc/sendkey.c:47 -msgid "press NumLock key" -msgstr "nyomja meg a NumLock billentyűt" - -#: grub-core/commands/i386/pc/sendkey.c:48 -msgid "press CapsLock key" -msgstr "nyomja meg a CapsLock billentyűt" - -#: grub-core/commands/i386/pc/sendkey.c:49 -msgid "press ScrollLock key" -msgstr "nyomja meg a ScrollLock billentyűt" - -#: grub-core/commands/i386/pc/sendkey.c:50 -msgid "press Insert key" -msgstr "nyomja meg az Insert billentyűt" - -#: grub-core/commands/i386/pc/sendkey.c:51 -msgid "press left alt" -msgstr "nyomja meg a bal alt billentyűt" - -#: grub-core/commands/i386/pc/sendkey.c:52 -msgid "press right alt" -msgstr "nyomja meg a jobb alt billentyűt" - -#: grub-core/commands/i386/pc/sendkey.c:53 -msgid "press left ctrl" -msgstr "nyomja meg a bal ctrl billentyűt" - -#: grub-core/commands/i386/pc/sendkey.c:54 -msgid "press right ctrl" -msgstr "nyomja meg a jobb ctrl billentyűt" - -#: grub-core/commands/i386/pc/sendkey.c:55 -msgid "don't update LED state" -msgstr "ne frissítse a LED állapotot" - -#: grub-core/commands/i386/pc/sendkey.c:372 -msgid "[KEYSTROKE1] [KEYSTROKE2] ..." -msgstr "[GOMBNYOMÃS1] [GOMBNYOMÃS2] …" - -#. TRANSLATORS: It can emulate multiple -#. keypresses. -#: grub-core/commands/i386/pc/sendkey.c:375 -msgid "Emulate a keystroke sequence" -msgstr "Egy gombnyomás-sorozat emulálása" - -#: grub-core/commands/i386/rdmsr.c:37 grub-core/commands/iorw.c:34 -#: grub-core/commands/memrw.c:33 grub-core/commands/setpci.c:73 -msgid "Save read value into variable VARNAME." -msgstr "Beolvasott érték mentése a VÃLTOZÓNÉV változóba." - -#: grub-core/commands/i386/rdmsr.c:38 grub-core/commands/iorw.c:35 -#: grub-core/commands/memrw.c:34 grub-core/commands/probe.c:40 -#: grub-core/commands/search_wrap.c:40 grub-core/commands/setpci.c:74 -#: grub-core/commands/tr.c:32 -msgid "VARNAME" -msgstr "VÃLTOZÓNÉV" - -#: grub-core/commands/i386/rdmsr.c:55 grub-core/commands/i386/rdmsr.c:60 -#: grub-core/commands/i386/rdmsr.c:65 grub-core/commands/i386/wrmsr.c:47 -#: grub-core/commands/i386/wrmsr.c:52 grub-core/commands/i386/wrmsr.c:57 -#, fuzzy -msgid "unsupported instruction" -msgstr "nem támogatott gzip formátum" - -#: grub-core/commands/i386/rdmsr.c:77 grub-core/commands/i386/wrmsr.c:69 -#: grub-core/commands/i386/wrmsr.c:77 grub-core/net/dns.c:727 -msgid "invalid argument" -msgstr "érvénytelen argumentum" - -#: grub-core/commands/i386/rdmsr.c:94 grub-core/commands/memrw.c:125 -#: grub-core/commands/memrw.c:129 grub-core/commands/memrw.c:133 -msgid "ADDR" -msgstr "CÃM" - -#: grub-core/commands/i386/rdmsr.c:95 -msgid "Read a CPU model specific register." -msgstr "" - -#: grub-core/commands/i386/wrmsr.c:86 -#, fuzzy -msgid "ADDR VALUE" -msgstr "CÃM ÉRTÉK [MASZK]" - -#: grub-core/commands/i386/wrmsr.c:87 -msgid "Write a value to a CPU model specific register." -msgstr "" - -#: grub-core/commands/ieee1275/suspend.c:34 -msgid "Run `go' to resume GRUB." -msgstr "A „go†futtatása a GRUB folytatásához." - -#: grub-core/commands/ieee1275/suspend.c:45 -msgid "Return to IEEE1275 prompt." -msgstr "Visszatérés az IEEE1275 prompthoz." - -#: grub-core/commands/iorw.c:123 grub-core/commands/iorw.c:127 -#: grub-core/commands/iorw.c:131 grub-core/gdb/gdb.c:79 -msgid "PORT" -msgstr "PORT" - -#: grub-core/commands/iorw.c:123 -msgid "Read 8-bit value from PORT." -msgstr "8-bites érték olvasása a PORTRÓL." - -#: grub-core/commands/iorw.c:127 -msgid "Read 16-bit value from PORT." -msgstr "16-bites érték olvasása a PORTRÓL." - -#: grub-core/commands/iorw.c:131 -msgid "Read 32-bit value from PORT." -msgstr "32-bites érték olvasása a PORTRÓL." - -#: grub-core/commands/iorw.c:135 grub-core/commands/iorw.c:139 -msgid "PORT VALUE [MASK]" -msgstr "PORT ÉRTÉK [MASZK]" - -#: grub-core/commands/iorw.c:136 -msgid "Write 8-bit VALUE to PORT." -msgstr "8-bites ÉRTÉK írása a PORTRA." - -#: grub-core/commands/iorw.c:140 -msgid "Write 16-bit VALUE to PORT." -msgstr "16-bites ÉRTÉK írása a PORTRA." - -#: grub-core/commands/iorw.c:143 grub-core/commands/memrw.c:137 -#: grub-core/commands/memrw.c:141 grub-core/commands/memrw.c:145 -msgid "ADDR VALUE [MASK]" -msgstr "CÃM ÉRTÉK [MASZK]" - -#: grub-core/commands/iorw.c:144 -msgid "Write 32-bit VALUE to PORT." -msgstr "32-bites ÉRTÉK írása a PORTRA." - -#: grub-core/commands/keylayouts.c:215 grub-core/commands/loadenv.c:61 -#: grub-core/commands/nativedisk.c:189 grub-core/efiemu/main.c:235 -#: grub-core/font/font.c:428 grub-core/gfxmenu/gfxmenu.c:63 -#: grub-core/kern/device.c:42 grub-core/kern/dl.c:740 -#, c-format -msgid "variable `%s' isn't set" -msgstr "a(z) „%s†változó nincs beállítva" - -#: grub-core/commands/keylayouts.c:301 -msgid "Load a keyboard layout." -msgstr "Egy billentyűzetkiosztás betöltése." - -#. TRANSLATORS: "Check" in a sense that if this key is pressed then -#. "true" is returned, otherwise "false". -#: grub-core/commands/keystatus.c:32 -msgid "Check Shift key." -msgstr "Shift billentyű ellenÅ‘rzése." - -#: grub-core/commands/keystatus.c:33 -msgid "Check Control key." -msgstr "Control billentyű ellenÅ‘rzése." - -#: grub-core/commands/keystatus.c:34 -msgid "Check Alt key." -msgstr "Alt billentyű ellenÅ‘rzése." - -#. TRANSLATORS: there are 3 modifiers. -#: grub-core/commands/keystatus.c:106 -msgid "Check key modifier status." -msgstr "Billentyűmódosító állapotának ellenÅ‘rzése." - -#: grub-core/commands/legacycfg.c:512 grub-core/commands/legacycfg.c:526 -#: grub-core/commands/legacycfg.c:546 grub-core/commands/legacycfg.c:559 -#: grub-core/commands/time.c:43 grub-core/script/function.c:109 -#: util/grub-file.c:100 util/grub-fstest.c:57 util/grub-mount.c:69 -#, c-format -msgid "can't find command `%s'" -msgstr "nem található a parancs: „%sâ€" - -#: grub-core/commands/legacycfg.c:813 grub-core/normal/auth.c:225 -#: util/grub-mkpasswd-pbkdf2.c:139 -msgid "Enter password: " -msgstr "Adja meg a jelszót: " - -#. TRANSLATORS: "legacy config" means -#. "config as used by grub-legacy". -#: grub-core/commands/legacycfg.c:837 -msgid "Parse legacy config in same context" -msgstr "Örökölt beállítások feldolgozása ugyanabban a környezetben" - -#: grub-core/commands/legacycfg.c:842 -msgid "Parse legacy config in new context" -msgstr "Örökölt beállítások feldolgozása új környezetben" - -#: grub-core/commands/legacycfg.c:847 -msgid "Parse legacy config in same context taking only menu entries" -msgstr "" -"Örökölt beállítások feldolgozása ugyanabban a környezetben csak a " -"menübejegyzések átvételével" - -#: grub-core/commands/legacycfg.c:852 -msgid "Parse legacy config in new context taking only menu entries" -msgstr "" -"Örökölt beállítások feldolgozása új környezetben csak a menübejegyzések " -"átvételével" - -#: grub-core/commands/legacycfg.c:856 -msgid "[--no-mem-option] [--type=TYPE] FILE [ARG ...]" -msgstr "[--no-mem-option] [--type=TÃPUS] FÃJL [ARG …]" - -#: grub-core/commands/legacycfg.c:857 -msgid "Simulate grub-legacy `kernel' command" -msgstr "Örökölt grub „kernel†parancs szimulálása" - -#: grub-core/commands/legacycfg.c:861 grub-core/commands/legacycfg.c:865 -msgid "FILE [ARG ...]" -msgstr "FÃJL [ARG …]" - -#: grub-core/commands/legacycfg.c:862 -msgid "Simulate grub-legacy `initrd' command" -msgstr "Örökölt grub „initrd†parancs szimulálása" - -#: grub-core/commands/legacycfg.c:866 -msgid "Simulate grub-legacy `modulenounzip' command" -msgstr "Örökölt grub „modulenounzip†parancs szimulálása" - -#: grub-core/commands/legacycfg.c:870 grub-core/commands/legacycfg.c:875 -msgid "[--md5] PASSWD [FILE]" -msgstr "[--md5] JELSZÓ [FÃJL]" - -#: grub-core/commands/legacycfg.c:871 -msgid "Simulate grub-legacy `password' command" -msgstr "Örökölt grub „password†parancs szimulálása" - -#: grub-core/commands/legacycfg.c:876 -msgid "Simulate grub-legacy `password' command in menu entry mode" -msgstr "Örökölt grub „password†parancs szimulálása menübejegyzés módban" - -#. TRANSLATORS: This option is used to override default filename -#. for loading and storing environment. -#: grub-core/commands/loadenv.c:37 -msgid "Specify filename." -msgstr "Fájlnév megadása." - -#: grub-core/commands/loadenv.c:39 -msgid "Skip signature-checking of the environment file." -msgstr "A környezetfájl aláírás-ellenÅ‘rzésének kihagyása." - -#: grub-core/commands/loadenv.c:451 -msgid "[-f FILE] [-s|--skip-sig] [variable_name_to_whitelist] [...]" -msgstr "[-f FÃJL] [-s|--skip-sig] [változónév_a_fehérlistához] […]" - -#: grub-core/commands/loadenv.c:452 -msgid "Load variables from environment block file." -msgstr "Változók betöltése a környezeti blokkfájlból." - -#: grub-core/commands/loadenv.c:455 -msgid "[-f FILE]" -msgstr "[-f FÃJL]" - -#: grub-core/commands/loadenv.c:456 -msgid "List variables from environment block file." -msgstr "Változók felsorolása a környezeti blokkfájlból." - -#: grub-core/commands/loadenv.c:460 -msgid "[-f FILE] variable_name [...]" -msgstr "[-f FÃJL] változónév […]" - -#: grub-core/commands/loadenv.c:461 -msgid "Save variables to environment block file." -msgstr "Változók mentése a környezeti blokkfájlba." - -#: grub-core/commands/ls.c:40 -msgid "Show a long list with more detailed information." -msgstr "Hosszú lista megjelenítése részletesebb információkkal." - -#: grub-core/commands/ls.c:41 -msgid "Print sizes in a human readable format." -msgstr "Méretek kiírása emberek által olvasható formátumban." - -#: grub-core/commands/ls.c:42 -msgid "List all files." -msgstr "Minden fájl felsorolása." - -#: grub-core/commands/ls.c:73 -msgid "Network protocols:" -msgstr "Hálózati protokollok:" - -#: grub-core/commands/ls.c:295 -msgid "[-l|-h|-a] [FILE ...]" -msgstr "[-l|-h|-a] [FÃJL …]" - -#: grub-core/commands/ls.c:296 -msgid "List devices and files." -msgstr "Eszközök és fájlok felsorolása." - -#: grub-core/commands/lsacpi.c:255 -msgid "Show version 1 tables only." -msgstr "Csak az 1-es verziójú táblázatok megjelenítése." - -#: grub-core/commands/lsacpi.c:256 -msgid "Show version 2 and version 3 tables only." -msgstr "Csak a 2-es és 3-as verziójú táblázatok megjelenítése." - -#: grub-core/commands/lsacpi.c:306 -msgid "Show ACPI information." -msgstr "ACPI információ megjelenítése." - -#: grub-core/commands/lsmmap.c:31 -msgid "available RAM" -msgstr "elérhetÅ‘ RAM" - -#: grub-core/commands/lsmmap.c:32 -msgid "reserved RAM" -msgstr "foglalt RAM" - -#. TRANSLATORS: this refers to memory where ACPI tables are stored -#. and which can be used by OS once it loads ACPI tables. -#: grub-core/commands/lsmmap.c:35 -msgid "ACPI reclaimable RAM" -msgstr "ACPI visszanyerhetÅ‘ RAM" - -#. TRANSLATORS: this refers to memory which ACPI-compliant OS -#. is required to save accross hibernations. -#: grub-core/commands/lsmmap.c:38 -msgid "ACPI non-volatile storage RAM" -msgstr "ACPI nem illékony tároló RAM" - -#: grub-core/commands/lsmmap.c:39 -msgid "faulty RAM (BadRAM)" -msgstr "hibás RAM (BadRAM)" - -#: grub-core/commands/lsmmap.c:40 -msgid "persistent RAM" -msgstr "állandó RAM" - -#: grub-core/commands/lsmmap.c:41 -msgid "persistent RAM (legacy)" -msgstr "állandó RAM (örökölt)" - -#: grub-core/commands/lsmmap.c:42 -msgid "RAM holding coreboot tables" -msgstr "magindítási táblázatokat tartó RAM" - -#: grub-core/commands/lsmmap.c:43 -msgid "RAM holding firmware code" -msgstr "firmware kódot tartó RAM" - -#: grub-core/commands/lsmmap.c:52 -#, c-format -msgid "base_addr = 0x%llx, length = 0x%llx, %s\n" -msgstr "alap_cím = 0x%llx, hossz = 0x%llx, %s\n" - -#: grub-core/commands/lsmmap.c:55 -#, c-format -msgid "base_addr = 0x%llx, length = 0x%llx, type = 0x%x\n" -msgstr "alap_cím = 0x%llx, hossz = 0x%llx, típus = 0x%x\n" - -#: grub-core/commands/lsmmap.c:79 -msgid "List memory map provided by firmware." -msgstr "A firmware által biztosított memóriatérkép kiírása." - -#: grub-core/commands/lspci.c:232 -msgid "List PCI devices." -msgstr "PCI eszközök felsorolása." - -#: grub-core/commands/macbless.c:224 -msgid "Bless FILE of HFS or HFS+ partition for intel macs." -msgstr "Intel mac-ek HFS vagy HFS+ partíciójának bless FÃJLJA." - -#: grub-core/commands/macbless.c:228 -msgid "Bless DIR of HFS or HFS+ partition for PPC macs." -msgstr "PPC mac-ek HFS vagy HFS+ partíciójának bless KÖNYVTÃRA." - -#: grub-core/commands/memrw.c:125 -msgid "Read 8-bit value from ADDR." -msgstr "8-bites érték olvasása a CÃMRÅL." - -#: grub-core/commands/memrw.c:129 -msgid "Read 16-bit value from ADDR." -msgstr "16-bites érték olvasása a CÃMRÅL." - -#: grub-core/commands/memrw.c:133 -msgid "Read 32-bit value from ADDR." -msgstr "32-bites érték olvasása a CÃMRÅL." - -#: grub-core/commands/memrw.c:138 -msgid "Write 8-bit VALUE to ADDR." -msgstr "8-bites ÉRTÉK írása a CÃMRE." - -#: grub-core/commands/memrw.c:142 -msgid "Write 16-bit VALUE to ADDR." -msgstr "16-bites ÉRTÉK írása a CÃMRE." - -#: grub-core/commands/memrw.c:146 -msgid "Write 32-bit VALUE to ADDR." -msgstr "32-bites ÉRTÉK írása a CÃMRE." - -#: grub-core/commands/menuentry.c:31 -msgid "Menu entry type." -msgstr "Menübejegyzés típusa." - -#: grub-core/commands/menuentry.c:31 grub-core/commands/menuentry.c:38 -#: grub-core/commands/menuentry.c:39 grub-core/gettext/gettext.c:520 -#: util/grub-fstest.c:520 util/grub-install.c:291 util/grub-install.c:304 -#: util/grub-mknetdir.c:51 util/grub-mkrescue.c:109 util/grub-mkrescue.c:110 -#: util/grub-mount.c:453 util/grub-render-label.c:65 -msgid "STRING" -msgstr "SZÖVEG" - -#: grub-core/commands/menuentry.c:33 -msgid "List of users allowed to boot this entry." -msgstr "Felhasználók listája, akiknek engedélyezett ezen bejegyzés indítása." - -#: grub-core/commands/menuentry.c:33 -msgid "USERNAME[,USERNAME]" -msgstr "FELHASZNÃLÓNÉV[,FELHASZNÃLÓNÉV]" - -#: grub-core/commands/menuentry.c:36 -msgid "Keyboard key to quickly boot this entry." -msgstr "Billentyűzetgomb ezen bejegyzés gyors indításához." - -#: grub-core/commands/menuentry.c:36 -msgid "KEYBOARD_KEY" -msgstr "BILLENTYŰZETGOMB" - -#: grub-core/commands/menuentry.c:38 -msgid "Use STRING as menu entry body." -msgstr "SZÖVEG használata menübejegyzés törzsként." - -#: grub-core/commands/menuentry.c:39 -msgid "Menu entry identifier." -msgstr "Menübejegyzés azonosító." - -#. TRANSLATORS: menu entry can either be bootable by anyone or only by -#. handful of users. By default when security is active only superusers can -#. boot a given menu entry. With --unrestricted (this option) -#. anyone can boot it. -#: grub-core/commands/menuentry.c:44 -msgid "This entry can be booted by any user." -msgstr "Ezt a bejegyzést bármely felhasználó indíthatja." - -#: grub-core/commands/menuentry.c:323 grub-core/commands/menuentry.c:328 -#: grub-core/tests/test_blockarg.c:46 -msgid "BLOCK" -msgstr "BLOKK" - -#: grub-core/commands/menuentry.c:323 -msgid "Define a menu entry." -msgstr "Egy menübejegyzés meghatározása." - -#: grub-core/commands/menuentry.c:328 -msgid "Define a submenu." -msgstr "Egy almenü meghatározása." - -#. TRANSLATORS: this is module list header. Name -#. is module name, Ref Count is a reference counter -#. (how many modules or open descriptors use it). -#. Dependencies are the other modules it uses. -#. -#: grub-core/commands/minicmd.c:162 -msgid "Name\tRef Count\tDependencies\n" -msgstr "Név\tHivatkozások száma\tFüggÅ‘ségek\n" - -#: grub-core/commands/minicmd.c:201 -msgid "Show this message." -msgstr "Ezen üzenet megjelenítése." - -#: grub-core/commands/minicmd.c:204 -msgid "ADDR [SIZE]" -msgstr "CÃM [MÉRET]" - -#: grub-core/commands/minicmd.c:204 -msgid "Show memory contents." -msgstr "Memóriatartalmak megjelenítése." - -#: grub-core/commands/minicmd.c:207 grub-core/kern/corecmd.c:188 -#: util/grub-install.c:275 -msgid "MODULE" -msgstr "MODUL" - -#: grub-core/commands/minicmd.c:207 -msgid "Remove a module." -msgstr "Egy modul eltávolítása." - -#: grub-core/commands/minicmd.c:210 -msgid "Show loaded modules." -msgstr "Betöltött modulok megjelenítése." - -#: grub-core/commands/minicmd.c:213 -msgid "Exit from GRUB." -msgstr "Kilépés a GRUB-ból." - -#: grub-core/commands/mips/loongson/lsspd.c:42 -msgid "No CS5536 found" -msgstr "CS5536 nem található" - -#: grub-core/commands/mips/loongson/lsspd.c:45 -#, c-format -msgid "CS5536 at %d:%d.%d\n" -msgstr "CS5536 itt: %d:%d.%d\n" - -#. TRANSLATORS: System management bus is often used to access components like -#. RAM (info only, not data) or batteries. I/O space is where in memory -#. its ports are. -#: grub-core/commands/mips/loongson/lsspd.c:55 -#, c-format -msgid "System management bus controller I/O space is at 0x%x\n" -msgstr "RendszerkezelÅ‘ buszvezérlÅ‘ I/O tér van itt: 0x%x\n" - -#. TRANSLATORS: it's shown in a report in a way -#. like number 1: ... number 2: ... -#. -#: grub-core/commands/mips/loongson/lsspd.c:66 -#, c-format -msgid "RAM slot number %d\n" -msgstr "RAM foglalat szám: %d\n" - -#: grub-core/commands/mips/loongson/lsspd.c:73 -#, c-format -msgid "Written SPD bytes: %d B.\n" -msgstr "Kiírt SPD bájtok: %d B.\n" - -#: grub-core/commands/mips/loongson/lsspd.c:74 -#, c-format -msgid "Total flash size: %d B.\n" -msgstr "Teljes flash méret: %d B.\n" - -#: grub-core/commands/mips/loongson/lsspd.c:79 -msgid "Memory type: DDR2." -msgstr "Memóriatípus: DDR2." - -#: grub-core/commands/mips/loongson/lsspd.c:83 -#, c-format -msgid "Part no: %s.\n" -msgstr "Rész szám: %s.\n" - -#: grub-core/commands/mips/loongson/lsspd.c:86 -msgid "Memory type: Unknown." -msgstr "Memóriatípus: Ismeretlen." - -#: grub-core/commands/mips/loongson/lsspd.c:97 -msgid "Print Memory information." -msgstr "Memória-információk kiírása." - -#: grub-core/commands/nativedisk.c:118 grub-core/commands/probe.c:118 -#: grub-core/commands/probe.c:124 util/grub-probe.c:450 -#, c-format -msgid "%s does not support UUIDs" -msgstr "%s nem támogatja az UUID-kat" - -#: grub-core/commands/nativedisk.c:325 -msgid "[MODULE1 MODULE2 ...]" -msgstr "[MODUL1 MODUL2 …]" - -#: grub-core/commands/nativedisk.c:326 -msgid "" -"Switch to native disk drivers. If no modules are specified default set (pata," -"ahci,usbms,ohci,uhci,ehci) is used" -msgstr "" -"Ãtváltás natív lemezmeghajtókra. Ha nincs modul megadva, az alapértelmezett " -"beállítás (pata,ahci,usbms,ohci,uhci,ehci) lesz használva" - -#: grub-core/commands/parttool.c:40 -msgid "" -"Perform COMMANDS on partition.\n" -"Use `parttool PARTITION help' for the list of available commands." -msgstr "" -"PARANCS végrehajtása a partíción.\n" -"Használja a „parttool PARTÃCIÓ help†parancsot az elérhetÅ‘ parancsok " -"listájához." - -#: grub-core/commands/parttool.c:123 -msgid "=VAL" -msgstr "=VAL" - -#: grub-core/commands/parttool.c:136 -#, c-format -msgid "Sorry, no parttool is available for %s\n" -msgstr "Elnézést, nincs elérhetÅ‘ parttool ehhez: %s\n" - -#: grub-core/commands/parttool.c:288 grub-core/lib/arg.c:285 -#: grub-core/lib/arg.c:351 -#, c-format -msgid "unknown argument `%s'" -msgstr "ismeretlen argumentum: „%sâ€" - -#: grub-core/commands/parttool.c:344 -msgid "PARTITION COMMANDS" -msgstr "PARTÃCIÓ PARANCSOK" - -#: grub-core/commands/password.c:85 -msgid "USER PASSWORD" -msgstr "FELHASZNÃLÓ JELSZÓ" - -#: grub-core/commands/password.c:86 -msgid "Set user password (plaintext). Unrecommended and insecure." -msgstr "" -"A felhasználó jelszavának (egyszerű szöveg) beállítása. Nem ajánlott és nem " -"biztonságos." - -#. TRANSLATORS: it means that the string which -#. was supposed to be a password hash doesn't -#. have a correct format, not to password -#. mismatch. -#: grub-core/commands/password_pbkdf2.c:98 -#: grub-core/commands/password_pbkdf2.c:115 -#: grub-core/commands/password_pbkdf2.c:123 -#: grub-core/commands/password_pbkdf2.c:150 -#: grub-core/commands/password_pbkdf2.c:179 -msgid "invalid PBKDF2 password" -msgstr "érvénytelen PBKDF2 jelszó" - -#: grub-core/commands/password_pbkdf2.c:202 -msgid "USER PBKDF2_PASSWORD" -msgstr "FELHASZNÃLÓ PBKDF2_JELSZÓ" - -#: grub-core/commands/password_pbkdf2.c:203 -msgid "Set user password (PBKDF2). " -msgstr "A felhasználó jelszavának beállítása (PBKDF2). " - -#: grub-core/commands/pcidump.c:39 grub-core/commands/setpci.c:69 -msgid "Select device by vendor and device IDs." -msgstr "Eszköz kiválasztása gyártó és eszközazonosítók alapján." - -#: grub-core/commands/pcidump.c:40 grub-core/commands/setpci.c:70 -msgid "[vendor]:[device]" -msgstr "[gyártó]:[eszköz]" - -#: grub-core/commands/pcidump.c:41 grub-core/commands/setpci.c:71 -msgid "Select device by its position on the bus." -msgstr "Eszköz kiválasztása a buszon lévÅ‘ pozíciója alapján." - -#: grub-core/commands/pcidump.c:42 grub-core/commands/setpci.c:72 -msgid "[bus]:[slot][.func]" -msgstr "[busz]:[tárolóhely][.func]" - -#: grub-core/commands/pcidump.c:109 grub-core/commands/pcidump.c:138 -#: grub-core/commands/setpci.c:183 grub-core/commands/setpci.c:214 -#: grub-core/fs/zfs/zfs.c:3794 grub-core/kern/emu/hostdisk.c:458 -#: grub-core/kern/emu/hostdisk.c:473 grub-core/kern/file.c:44 -#, c-format -msgid "missing `%c' symbol" -msgstr "hiányzó „%c†szimbólum" - -#: grub-core/commands/pcidump.c:168 -msgid "[-s POSITION] [-d DEVICE]" -msgstr "[-s POZÃCIÓ] [-d ESZKÖZ]" - -#: grub-core/commands/pcidump.c:169 -msgid "Show raw dump of the PCI configuration space." -msgstr "A PCI beállítási tér nyers kiírásának megjelenítése." - -#: grub-core/commands/pgp.c:45 -msgid "Skip signature-checking of the public key file." -msgstr "A nyilvános kulcsfájl aláírás-ellenÅ‘rzésének kihagyása." - -#. TRANSLATORS: it's about GNUPG signatures. -#: grub-core/commands/pgp.c:71 grub-core/commands/pgp.c:81 -#: grub-core/commands/pgp.c:86 grub-core/commands/pgp.c:96 -#: grub-core/commands/pgp.c:103 grub-core/commands/pgp.c:107 -#: grub-core/commands/pgp.c:114 grub-core/commands/pgp.c:119 -#: grub-core/commands/pgp.c:124 grub-core/commands/pgp.c:128 -#: grub-core/commands/pgp.c:268 grub-core/commands/pgp.c:276 -#: grub-core/commands/pgp.c:281 grub-core/commands/pgp.c:289 -#: grub-core/commands/pgp.c:320 grub-core/commands/pgp.c:327 -#: grub-core/commands/pgp.c:332 grub-core/commands/pgp.c:342 -#: grub-core/commands/pgp.c:468 grub-core/commands/pgp.c:471 -#: grub-core/commands/pgp.c:474 grub-core/commands/pgp.c:477 -#: grub-core/commands/pgp.c:484 grub-core/commands/pgp.c:490 -#: grub-core/commands/pgp.c:665 -msgid "bad signature" -msgstr "hibás aláírás" - -#. TRANSLATORS: %08x is 32-bit key id. -#: grub-core/commands/pgp.c:636 grub-core/commands/pgp.c:812 -#, c-format -msgid "public key %08x not found" -msgstr "a(z) %08x nyilvános kulcs nem található" - -#: grub-core/commands/pgp.c:651 grub-core/disk/diskfilter.c:772 -#: grub-core/disk/diskfilter.c:782 grub-core/fs/ntfs.c:404 -#: grub-core/fs/zfs/zfs.c:1933 grub-core/normal/menu.c:428 -#, c-format -msgid "module `%s' isn't loaded" -msgstr "a(z) „%s†modul nincs betöltve" - -#: grub-core/commands/pgp.c:994 -msgid "[-s|--skip-sig] FILE SIGNATURE_FILE [PUBKEY_FILE]" -msgstr "[-s|--skip-sig] FÃJL ALÃÃRÃS_FÃJL [NYILVÃNOS_KULCS_FÃJL]" - -#: grub-core/commands/pgp.c:995 -msgid "Verify detached signature." -msgstr "Leválasztott aláírás ellenÅ‘rzése." - -#: grub-core/commands/pgp.c:998 -msgid "[-s|--skip-sig] PUBKEY_FILE" -msgstr "[-s|--skip-sig] NYILVÃNOS_KULCS_FÃJL" - -#: grub-core/commands/pgp.c:999 -msgid "Add PUBKEY_FILE to trusted keys." -msgstr "A NYILVÃNOS_KULCS_FÃJL hozzáadása a megbízható kulcsokhoz." - -#: grub-core/commands/pgp.c:1003 -msgid "Show the list of trusted keys." -msgstr "A megbízható kulcsok listájának megjelenítése." - -#: grub-core/commands/pgp.c:1005 -msgid "PUBKEY_ID" -msgstr "NYILVÃNOS_KULCS_AZONOSÃTÓ" - -#: grub-core/commands/pgp.c:1006 -msgid "Remove PUBKEY_ID from trusted keys." -msgstr "A NYILVÃNOS_KULCS_AZONOSÃTÓ eltávolítása a megbízható kulcsok közül." - -#: grub-core/commands/probe.c:40 grub-core/commands/tr.c:32 -msgid "Set a variable to return value." -msgstr "Változó beállítása a visszatérési értékre." - -#. TRANSLATORS: It's a driver that is currently in use to access -#. the diven disk. -#: grub-core/commands/probe.c:43 -msgid "Determine driver." -msgstr "Meghajtó meghatározása." - -#: grub-core/commands/probe.c:44 -msgid "Determine partition map type." -msgstr "Partíciótérkép típusának meghatározása." - -#: grub-core/commands/probe.c:45 -msgid "Determine filesystem type." -msgstr "Fájlrendszer típusának meghatározása." - -#: grub-core/commands/probe.c:46 -msgid "Determine filesystem UUID." -msgstr "Fájlrendszer UUID meghatározása." - -#: grub-core/commands/probe.c:47 -msgid "Determine filesystem label." -msgstr "Fájlrendszer címkéjének meghatározása." - -#: grub-core/commands/probe.c:139 grub-core/commands/probe.c:146 -#: util/grub-probe.c:462 -#, c-format -msgid "filesystem `%s' does not support labels" -msgstr "a(z) „%s†fájlrendszer nem támogatja a címkéket" - -#: grub-core/commands/probe.c:165 grub-core/fs/zfs/zfsinfo.c:430 -#: grub-core/loader/i386/bsd.c:169 util/grub-setup.c:223 -msgid "DEVICE" -msgstr "ESZKÖZ" - -#: grub-core/commands/probe.c:166 -msgid "Retrieve device info." -msgstr "Eszközinformációk lekérése." - -#: grub-core/commands/read.c:85 -msgid "[ENVVAR]" -msgstr "[KÖRNYVÃLT]" - -#: grub-core/commands/read.c:86 -msgid "Set variable with user input." -msgstr "Változó beállítása felhasználói bemenettel." - -#: grub-core/commands/reboot.c:40 -msgid "Reboot the computer." -msgstr "A számítógép újraindítása." - -#. TRANSLATORS: in regexp you can mark some -#. groups with parentheses. These groups are -#. then numbered and you can save some of -#. them in variables. In other programs -#. those components aree often referenced with -#. back slash, e.g. \1. Compare -#. sed -e 's,\([a-z][a-z]*\),lowercase=\1,g' -#. The whole matching component is saved in VARNAME, not its number. -#. -#: grub-core/commands/regexp.c:44 -msgid "Store matched component NUMBER in VARNAME." -msgstr "Az egyezÅ‘ komponens SZÃM tárolása a VÃLTOZÓNÉVBEN." - -#: grub-core/commands/regexp.c:45 -msgid "[NUMBER:]VARNAME" -msgstr "[SZÃM:]VÃLTOZÓNÉV" - -#. TRANSLATORS: This are two arguments. So it's -#. two separate units to translate and pay -#. attention not to reverse them. -#: grub-core/commands/regexp.c:157 -msgid "REGEXP STRING" -msgstr "REGKIF SZÖVEG" - -#: grub-core/commands/regexp.c:158 -msgid "Test if REGEXP matches STRING." -msgstr "Annak tesztelése, hogy a REGKIF illeszkedik-e a SZÖVEGRE." - -#: grub-core/commands/search.c:324 -msgid "NAME [VARIABLE] [HINTS]" -msgstr "NÉV [VÃLTOZÓ] [TIPPEK]" - -#: grub-core/commands/search_file.c:4 -msgid "" -"Search devices by file. If VARIABLE is specified, the first device found is " -"set to a variable." -msgstr "" -"Eszközök keresése fájl alapján. Ha a VÃLTOZÓ meg van adva, akkor az elsÅ‘ként " -"megtalált eszköz bekerül a változóba." - -#: grub-core/commands/search_label.c:4 -msgid "" -"Search devices by label. If VARIABLE is specified, the first device found is " -"set to a variable." -msgstr "" -"Eszközök keresése címke alapján. Ha a VÃLTOZÓ meg van adva, akkor az " -"elsÅ‘ként megtalált eszköz bekerül a változóba." - -#: grub-core/commands/search_uuid.c:4 -msgid "" -"Search devices by UUID. If VARIABLE is specified, the first device found is " -"set to a variable." -msgstr "" -"Eszközök keresése UUID alapján. Ha a VÃLTOZÓ meg van adva, akkor az elsÅ‘ként " -"megtalált eszköz bekerül a változóba." - -#: grub-core/commands/search_wrap.c:34 -msgid "Search devices by a file." -msgstr "Eszközök keresése fájl alapján." - -#: grub-core/commands/search_wrap.c:35 -msgid "Search devices by a filesystem label." -msgstr "Eszközök keresése fájlrendszercímke alapján." - -#: grub-core/commands/search_wrap.c:37 -msgid "Search devices by a filesystem UUID." -msgstr "Eszközök keresése fájlrendszer-UUID alapján." - -#: grub-core/commands/search_wrap.c:40 -msgid "Set a variable to the first device found." -msgstr "Változó beállítása az elsÅ‘ megtalált eszközhöz." - -#: grub-core/commands/search_wrap.c:42 -msgid "Do not probe any floppy drive." -msgstr "Ne vizsgálja meg a hajlékonylemez-meghajtókat." - -#: grub-core/commands/search_wrap.c:44 -msgid "" -"First try the device HINT. If HINT ends in comma, also try subpartitions" -msgstr "" -"ElsÅ‘nek próbálja a TIPP eszközt. Ha a TIPP vesszÅ‘re végzÅ‘dik, próbálja az " -"alpartíciókat is." - -#: grub-core/commands/search_wrap.c:45 grub-core/commands/search_wrap.c:49 -#: grub-core/commands/search_wrap.c:53 grub-core/commands/search_wrap.c:57 -#: grub-core/commands/search_wrap.c:61 grub-core/commands/search_wrap.c:65 -msgid "HINT" -msgstr "TIPP" - -#: grub-core/commands/search_wrap.c:47 -msgid "" -"First try the device HINT if currently running on IEEE1275. If HINT ends in " -"comma, also try subpartitions" -msgstr "" -"ElsÅ‘nek próbálja a TIPP eszközt, ha jelenleg IEEE1275-ön fut. Ha a TIPP " -"vesszÅ‘re végzÅ‘dik, próbálja az alpartíciókat is." - -#: grub-core/commands/search_wrap.c:51 -msgid "" -"First try the device HINT if currently running on BIOS. If HINT ends in " -"comma, also try subpartitions" -msgstr "" -"ElsÅ‘nek próbálja a TIPP eszközt, ha jelenleg BIOS-on fut. Ha a TIPP vesszÅ‘re " -"végzÅ‘dik, próbálja az alpartíciókat is." - -#: grub-core/commands/search_wrap.c:55 -msgid "" -"First try the device HINT if direct hardware access is supported. If HINT " -"ends in comma, also try subpartitions" -msgstr "" -"ElsÅ‘nek próbálja a TIPP eszközt, ha a közvetlen hardverhozzáférés támogatva " -"van. Ha a TIPP vesszÅ‘re végzÅ‘dik, próbálja az alpartíciókat is." - -#: grub-core/commands/search_wrap.c:59 -msgid "" -"First try the device HINT if currently running on EFI. If HINT ends in " -"comma, also try subpartitions" -msgstr "" -"ElsÅ‘nek próbálja a TIPP eszközt, ha jelenleg EFI-n fut. Ha a TIPP vesszÅ‘re " -"végzÅ‘dik, próbálja az alpartíciókat is." - -#: grub-core/commands/search_wrap.c:63 -msgid "" -"First try the device HINT if currently running on ARC. If HINT ends in " -"comma, also try subpartitions" -msgstr "" -"ElsÅ‘nek próbálja a TIPP eszközt, ha jelenleg ARC-n fut. Ha a TIPP vesszÅ‘re " -"végzÅ‘dik, próbálja az alpartíciókat is." - -#: grub-core/commands/search_wrap.c:207 -msgid "[-f|-l|-u|-s|-n] [--hint HINT [--hint HINT] ...] NAME" -msgstr "[-f|-l|-u|-s|-n] [--hint TIPP [--hint TIPP] …] NÉV" - -#: grub-core/commands/search_wrap.c:209 -msgid "" -"Search devices by file, filesystem label or filesystem UUID. If --set is " -"specified, the first device found is set to a variable. If no variable name " -"is specified, `root' is used." -msgstr "" -"Eszközök keresése fájl, fájlrendszercímke vagy fájlrendszer-UUID alapján. Ha " -"a --set meg van adva, akkor az elsÅ‘ként megtalált eszköz bekerül egy " -"változóba. Ha nincs megadva változónév, akkor a „root†lesz használva." - -#: grub-core/commands/setpci.c:132 -#, c-format -msgid "Register %x of %x:%02x.%x is %x\n" -msgstr "%x regisztere ennek: %x:%02x.%x = %x\n" - -#: grub-core/commands/setpci.c:333 -msgid "[-s POSITION] [-d DEVICE] [-v VAR] REGISTER[=VALUE[:MASK]]" -msgstr "[-s POZÃCIÓ] [-d ESZKÖZ] [-v VÃLTOZÓ] REGISZTER[=ÉRTÉK[:MASZK]]" - -#: grub-core/commands/setpci.c:335 -msgid "Manipulate PCI devices." -msgstr "PCI-eszközök kezelése." - -#: grub-core/commands/sleep.c:32 -msgid "Verbose countdown." -msgstr "Részletes visszaszámlálás." - -#: grub-core/commands/sleep.c:33 -msgid "Allow to interrupt with ESC." -msgstr "Megszakítás engedélyezése az ESC használatával." - -#: grub-core/commands/sleep.c:109 -msgid "NUMBER_OF_SECONDS" -msgstr "MÃSODPERCEK_SZÃMA" - -#: grub-core/commands/sleep.c:110 -msgid "Wait for a specified number of seconds." -msgstr "Várakozás a megadott másodpercig." - -#: grub-core/commands/syslinuxcfg.c:50 util/grub-syslinux2cfg.c:66 -msgid "root directory of the syslinux disk [default=/]." -msgstr "a syslinux lemez gyökér könyvtára [alapértelmezett=/]." - -#: grub-core/commands/syslinuxcfg.c:53 util/grub-syslinux2cfg.c:72 -msgid "" -"current directory of syslinux [default is parent directory of input file]." -msgstr "" -"a syslinux aktuális könyvtára [alapértelmezetten a bemeneti fájl " -"szülÅ‘könyvtára]." - -#: grub-core/commands/syslinuxcfg.c:55 util/grub-syslinux2cfg.c:75 -msgid "assume input is an isolinux configuration file." -msgstr "a feltételezett bemenet egy isolinux konfigurációs fájl." - -#: grub-core/commands/syslinuxcfg.c:56 util/grub-syslinux2cfg.c:76 -msgid "assume input is a pxelinux configuration file." -msgstr "a feltételezett bemenet egy pxelinux konfigurációs fájl." - -#: grub-core/commands/syslinuxcfg.c:57 util/grub-syslinux2cfg.c:77 -msgid "assume input is a syslinux configuration file." -msgstr "a feltételezett bemenet egy syslinux konfigurációs fájl." - -#. TRANSLATORS: "syslinux config" means -#. "config as used by syslinux". -#: grub-core/commands/syslinuxcfg.c:189 -msgid "Execute syslinux config in same context" -msgstr "A syslinux beállítás végrehajtása ugyanabban a környezetben" - -#: grub-core/commands/syslinuxcfg.c:195 -msgid "Execute syslinux config in new context" -msgstr "A syslinux beállítás végrehajtása új környezetben" - -#: grub-core/commands/syslinuxcfg.c:201 -msgid "Execute syslinux config in same context taking only menu entries" -msgstr "" -"A syslinux beállítás végrehajtása ugyanabban a környezetben csak a " -"menübejegyzések átvételével" - -#: grub-core/commands/syslinuxcfg.c:207 -msgid "Execute syslinux config in new context taking only menu entries" -msgstr "" -"A syslinux beállítás végrehajtása új környezetben csak a menübejegyzések " -"átvételével" - -#: grub-core/commands/terminal.c:90 -msgid "no terminal specified" -msgstr "nincs megadva terminál" - -#: grub-core/commands/terminal.c:112 grub-core/commands/terminal.c:139 -#, c-format -msgid "terminal `%s' isn't found" -msgstr "a(z) „%s†terminál nem található" - -#: grub-core/commands/terminal.c:244 -msgid "Active input terminals:" -msgstr "Aktív beviteli terminálok:" - -#: grub-core/commands/terminal.c:245 -msgid "Available input terminals:" -msgstr "ElérhetÅ‘ beviteli terminálok:" - -#: grub-core/commands/terminal.c:261 -msgid "Active output terminals:" -msgstr "Aktív kimeneti terminálok:" - -#: grub-core/commands/terminal.c:262 -msgid "Available output terminals:" -msgstr "ElérhetÅ‘ kimeneti terminálok:" - -#: grub-core/commands/terminal.c:271 grub-core/commands/terminal.c:276 -msgid "[--append|--remove] [TERMINAL1] [TERMINAL2] ..." -msgstr "[--append|--remove] [TERMINÃL1] [TERMINÃL2] …" - -#: grub-core/commands/terminal.c:273 -msgid "List or select an input terminal." -msgstr "Bemeneti terminál felsorolása vagy kiválasztása." - -#: grub-core/commands/terminal.c:278 -msgid "List or select an output terminal." -msgstr "Kimeneti terminál felsorolása vagy kiválasztása." - -#: grub-core/commands/test.c:444 -msgid "EXPRESSION ]" -msgstr "KIFEJEZÉS ]" - -#: grub-core/commands/test.c:444 grub-core/commands/test.c:447 -msgid "Evaluate an expression." -msgstr "Egy kifejezés kiértékelése." - -#: grub-core/commands/test.c:447 -msgid "EXPRESSION" -msgstr "KIFEJEZÉS" - -#: grub-core/commands/testload.c:164 -msgid "Load the same file in multiple ways." -msgstr "Ugyanazon fájl betöltése több módon." - -#: grub-core/commands/testspeed.c:35 -msgid "Specify size for each read operation" -msgstr "Méret meghatározása minden olvasási műveletnél" - -#: grub-core/commands/testspeed.c:58 -msgid "invalid block size" -msgstr "érvénytelen blokkméret" - -#: grub-core/commands/testspeed.c:80 -#, c-format -msgid "File size: %s\n" -msgstr "Fájlméret: %s\n" - -#: grub-core/commands/testspeed.c:83 -#, c-format -msgid "Elapsed time: %d.%03d s \n" -msgstr "Eltelt idÅ‘: %d.%03d mp \n" - -#: grub-core/commands/testspeed.c:92 -#, c-format -msgid "Speed: %s \n" -msgstr "Sebesség: %s \n" - -#: grub-core/commands/testspeed.c:107 -msgid "[-s SIZE] FILENAME" -msgstr "[-s MÉRET] FÃJLNÉV" - -#: grub-core/commands/testspeed.c:108 -msgid "Test file read speed." -msgstr "Fájl olvasási sebességének tesztelése." - -#: grub-core/commands/time.c:38 grub-core/script/execute.c:974 -msgid "no command is specified" -msgstr "nincs megadva parancs" - -#: grub-core/commands/time.c:50 -#, c-format -msgid "Elapsed time: %d.%03d seconds \n" -msgstr "Eltelt idÅ‘: %d.%03d másodperc \n" - -#: grub-core/commands/time.c:61 -msgid "COMMAND [ARGS]" -msgstr "PARANCS [ARGUMENTUMOK]" - -#: grub-core/commands/time.c:62 -msgid "Measure time used by COMMAND" -msgstr "IdÅ‘ mérése a PARANCS használatával" - -#: grub-core/commands/tr.c:33 -msgid "Translate to upper case." -msgstr "Fordítás nagybetűsre." - -#: grub-core/commands/tr.c:34 -msgid "Translate to lower case." -msgstr "Fordítás kisbetűsre." - -#: grub-core/commands/tr.c:119 -msgid "[OPTIONS] [SET1] [SET2] [STRING]" -msgstr "[KAPCSOLÓK] [HALMAZ1] [HALMAZ2] [SZÖVEG]" - -#: grub-core/commands/tr.c:120 -msgid "Translate SET1 characters to SET2 in STRING." -msgstr "A HALMAZ1 karakterek fordítása HALMAZ2-re a SZÖVEGBEN." - -#. TRANSLATORS: it's a command description. -#: grub-core/commands/true.c:50 -msgid "Do nothing, successfully." -msgstr "Nem csinál semmit, sikeresen." - -#. TRANSLATORS: it's a command description. -#: grub-core/commands/true.c:54 -msgid "Do nothing, unsuccessfully." -msgstr "Nem csinál semmit, sikertelenül." - -#: grub-core/commands/usbtest.c:221 -msgid "Test USB support." -msgstr "USB-támogatás tesztelése." - -#: grub-core/commands/verifiers.c:120 -#, c-format -msgid "verification requested but nobody cares: %s" -msgstr "" - -#: grub-core/commands/verifiers.c:140 -#, fuzzy -msgid "big file signature isn't implemented yet" -msgstr "0x%x áthelyezése még nincs megvalósítva" - -#: grub-core/commands/videoinfo.c:61 -msgid "Text-only " -msgstr "Csak szöveg " - -#. TRANSLATORS: "Direct color" is a mode when the color components -#. are written dirrectly into memory. -#: grub-core/commands/videoinfo.c:66 -#, c-format -msgid "Direct color, mask: %d/%d/%d/%d pos: %d/%d/%d/%d" -msgstr "Közvetlen szín, maszk: %d/%d/%d/%d pozíció: %d/%d/%d/%d" - -#. TRANSLATORS: In "paletted color" mode you write the index of the color -#. in the palette. Synonyms include "packed pixel". -#: grub-core/commands/videoinfo.c:78 -msgid "Paletted " -msgstr "Palettázott " - -#: grub-core/commands/videoinfo.c:80 -msgid "YUV " -msgstr "YUV " - -#. TRANSLATORS: "Planar" is the video memory where you have to write -#. in several different banks "plans" to control the different color -#. components of the same pixel. -#: grub-core/commands/videoinfo.c:85 -msgid "Planar " -msgstr "Sík " - -#: grub-core/commands/videoinfo.c:87 -msgid "Hercules " -msgstr "Hercules " - -#: grub-core/commands/videoinfo.c:89 -msgid "CGA " -msgstr "CGA " - -#. TRANSLATORS: Non-chain 4 is a 256-color planar -#. (unchained) video memory mode. -#: grub-core/commands/videoinfo.c:93 -msgid "Non-chain 4 " -msgstr "Non-chain 4 " - -#: grub-core/commands/videoinfo.c:95 -msgid "Monochrome " -msgstr "Fekete-fehér " - -#: grub-core/commands/videoinfo.c:97 -msgid "Unknown video mode " -msgstr "Ismeretlen videomód " - -#: grub-core/commands/videoinfo.c:111 -msgid " EDID checksum invalid" -msgstr " EDID ellenÅ‘rzőösszeg érvénytelen" - -#: grub-core/commands/videoinfo.c:116 -#, c-format -msgid " EDID version: %u.%u\n" -msgstr " EDID verzió: %u.%u\n" - -#: grub-core/commands/videoinfo.c:120 -#, c-format -msgid " Preferred mode: %ux%u\n" -msgstr " ElsÅ‘dleges mód: %ux%u\n" - -#: grub-core/commands/videoinfo.c:123 -msgid " No preferred mode available\n" -msgstr " Nem érhetÅ‘ el elsÅ‘dleges mód\n" - -#: grub-core/commands/videoinfo.c:146 grub-core/video/video.c:490 -#: grub-core/video/video.c:498 grub-core/video/video.c:509 -#: grub-core/video/video.c:520 grub-core/video/video.c:528 -#, c-format -msgid "invalid video mode specification `%s'" -msgstr "érvénytelen videomód meghatározás: „%sâ€" - -#: grub-core/commands/videoinfo.c:168 -msgid "List of supported video modes:" -msgstr "A támogatott videomódok listája:" - -#: grub-core/commands/videoinfo.c:169 -msgid "Legend: mask/position=red/green/blue/reserved" -msgstr "Jelmagyarázat: maszk/pozíció=vörös/zöld/kék/foglalt" - -#: grub-core/commands/videoinfo.c:176 -#, c-format -msgid "Adapter `%s':\n" -msgstr "Adapter „%sâ€:\n" - -#: grub-core/commands/videoinfo.c:180 -msgid " No info available" -msgstr " Nincs elérhetÅ‘ információ" - -#: grub-core/commands/videoinfo.c:198 -msgid " Failed to initialize video adapter" -msgstr " A videoadapter elÅ‘készítése meghiúsult" - -#. TRANSLATORS: "x" has to be entered in, -#. like an identifier, so please don't -#. use better Unicode codepoints. -#: grub-core/commands/videoinfo.c:239 grub-core/commands/videoinfo.c:248 -msgid "[WxH[xD]]" -msgstr "[SzxM[xD]]" - -#: grub-core/commands/videoinfo.c:240 grub-core/commands/videoinfo.c:249 -msgid "" -"List available video modes. If resolution is given show only modes matching " -"it." -msgstr "" -"ElérhetÅ‘ videomódok felsorolása. Ha meg van adva felbontás, akkor csak az " -"arra illeszkedÅ‘ módok felsorolása." - -#. TRANSLATORS: "x" has to be entered in, -#. like an identifier, so please don't -#. use better Unicode codepoints. -#: grub-core/commands/videotest.c:225 -msgid "[WxH]" -msgstr "[SzxM]" - -#. TRANSLATORS: Here, on the other hand, it's -#. nicer to use unicode cross instead of x. -#: grub-core/commands/videotest.c:228 -msgid "Test video subsystem in mode WxH." -msgstr "Videoalrendszer tesztelése SzxM módban." - -#: grub-core/commands/videotest.c:231 -msgid "Test video subsystem." -msgstr "Videoalrendszer tesztelése." - -#: grub-core/commands/xen/lsxen.c:80 grub-core/commands/xen/lsxen.c:82 -msgid "[DIR]" -msgstr "[KVT]" - -#: grub-core/commands/xen/lsxen.c:81 grub-core/commands/xen/lsxen.c:83 -msgid "List Xen storage." -msgstr "Xen tároló felsorolása." - -#. TRANSLATORS: GRUBUUID stands for "filesystem -#. UUID as used in GRUB". -#: grub-core/commands/xnu_uuid.c:110 -msgid "[-l] GRUBUUID [VARNAME]" -msgstr "[-l] GRUBUUID [VÃLTOZÓNÉV]" - -#: grub-core/commands/xnu_uuid.c:111 -msgid "" -"Transform 64-bit UUID to format suitable for XNU. If -l is given keep it " -"lowercase as done by blkid." -msgstr "" -"64 bites UUID átalakítása XNU-hoz megfelelÅ‘ formátumba. Ha a -l meg van " -"adva, tartsa kisbetűsen, ahogy a blkid elkészítette." - -#: grub-core/disk/arc/arcdisk.c:248 grub-core/disk/efi/efidisk.c:603 -#: grub-core/disk/i386/pc/biosdisk.c:498 grub-core/disk/i386/pc/biosdisk.c:543 -#: grub-core/disk/ieee1275/nand.c:198 grub-core/disk/ieee1275/obdisk.c:527 -#: grub-core/disk/ieee1275/ofdisk.c:586 -#, c-format -msgid "failure reading sector 0x%llx from `%s'" -msgstr "a 0x%llx szektor olvasási hiba innen: „%sâ€" - -#: grub-core/disk/arc/arcdisk.c:284 grub-core/disk/efi/efidisk.c:626 -#: grub-core/disk/i386/pc/biosdisk.c:548 grub-core/disk/ieee1275/ofdisk.c:606 -#, c-format -msgid "failure writing sector 0x%llx to `%s'" -msgstr "a 0x%llx szektor írási hiba ide: „%sâ€" - -#: grub-core/disk/cryptodisk.c:40 -msgid "Mount by UUID." -msgstr "Csatolás UUID alapján." - -#. TRANSLATORS: It's still restricted to cryptodisks only. -#: grub-core/disk/cryptodisk.c:42 -msgid "Mount all." -msgstr "Összes csatolása." - -#: grub-core/disk/cryptodisk.c:43 -msgid "Mount all volumes with `boot' flag set." -msgstr "Az összes kötet csatolása beállított „boot†jelzÅ‘vel." - -#. TRANSLATORS: The first %s is the file being looked at, the second %s is -#. the error message. -#: grub-core/disk/cryptodisk.c:526 grub-core/kern/emu/hostdisk.c:152 -#: grub-core/kern/emu/hostdisk.c:262 grub-core/kern/emu/hostdisk.c:434 -#: grub-core/kern/emu/misc.c:168 grub-core/kern/emu/misc.c:174 -#: grub-core/kern/emu/misc.c:196 grub-core/osdep/bsd/getroot.c:92 -#: grub-core/osdep/bsd/getroot.c:168 grub-core/osdep/hurd/getroot.c:68 -#: grub-core/osdep/linux/blocklist.c:65 grub-core/osdep/linux/getroot.c:150 -#: grub-core/osdep/linux/hostdisk.c:194 grub-core/osdep/linux/hostdisk.c:421 -#: grub-core/osdep/linux/ofpath.c:417 grub-core/osdep/linux/ofpath.c:422 -#: grub-core/osdep/linux/ofpath.c:517 grub-core/osdep/linux/ofpath.c:530 -#: grub-core/osdep/sun/getroot.c:110 grub-core/osdep/windows/blocklist.c:98 -#: grub-core/tests/video_checksum.c:279 util/editenv.c:46 util/glue-efi.c:115 -#: util/glue-efi.c:120 util/glue-efi.c:130 util/grub-editenv.c:138 -#: util/grub-editenv.c:192 util/grub-file.c:83 util/grub-fstest.c:128 -#: util/grub-fstest.c:568 util/grub-install-common.c:92 -#: util/grub-install-common.c:94 util/grub-install-common.c:101 -#: util/grub-install-common.c:529 util/grub-menulst2cfg.c:53 -#: util/grub-menulst2cfg.c:68 util/grub-mkimage.c:292 util/grub-mklayout.c:504 -#: util/grub-mklayout.c:516 util/grub-mknetdir.c:133 util/grub-mknetdir.c:151 -#: util/grub-mkrescue.c:627 util/grub-mkrescue.c:631 util/grub-mkrescue.c:879 -#: util/grub-mkrescue.c:883 util/grub-mkstandalone.c:253 util/grub-mount.c:498 -#: util/grub-render-label.c:169 util/grub-script-check.c:175 -#: util/grub-syslinux2cfg.c:181 util/grub-syslinux2cfg.c:191 -#: util/grub-syslinux2cfg.c:212 util/grub-syslinux2cfg.c:228 util/misc.c:91 -#: util/render-label.c:76 util/render-label.c:163 util/render-label.c:174 -#: util/resolve.c:246 util/setup.c:783 -#, c-format -msgid "cannot open `%s': %s" -msgstr "„%s†nem nyitható meg: %s" - -#: grub-core/disk/cryptodisk.c:583 grub-core/disk/cryptodisk.c:628 -#: grub-core/kern/emu/hostdisk.c:270 grub-core/kern/emu/hostfs.c:142 -#: grub-core/osdep/linux/hostdisk.c:456 util/grub-editenv.c:143 -#: util/grub-editenv.c:149 util/grub-fstest.c:320 util/misc.c:111 -#, c-format -msgid "cannot seek `%s': %s" -msgstr "„%s†nem pozicionálható: %s" - -#: grub-core/disk/cryptodisk.c:1144 -msgid "SOURCE|-u UUID|-a|-b" -msgstr "FORRÃS|-u UUID|-a|-b" - -#: grub-core/disk/cryptodisk.c:1145 -msgid "Mount a crypto device." -msgstr "Egy titkosított eszköz csatolása." - -#. TRANSLATORS: This message kicks in during the detection of -#. which modules needs to be included in core image. This happens -#. in the case of degraded RAID and means that autodetection may -#. fail to include some of modules. It's an installation time -#. message, not runtime message. -#: grub-core/disk/diskfilter.c:343 grub-core/disk/diskfilter.c:376 -#, c-format -msgid "" -"Couldn't find physical volume `%s'. Some modules may be missing from core " -"image." -msgstr "" -"Nem található a(z) „%s†fizikai kötet. Néhány modul hiányozhat a mag " -"lemezképbÅ‘l." - -#: grub-core/disk/diskfilter.c:480 -#, c-format -msgid "physical volume %s not found" -msgstr "a(z) %s fizikai kötet nem található" - -#: grub-core/disk/efi/efidisk.c:600 grub-core/disk/efi/efidisk.c:623 -#, c-format -msgid "no media in `%s'" -msgstr "nincs adathordozó itt: „%sâ€" - -#: grub-core/disk/geli.c:75 -msgid "Couldn't load sha256" -msgstr "Az sha256 betöltése nem sikerült" - -#: grub-core/disk/geli.c:85 -msgid "Couldn't load sha512" -msgstr "Az sha512 betöltése nem sikerült" - -#: grub-core/disk/geli.c:216 grub-core/disk/geli.c:220 -msgid "couldn't read ELI metadata" -msgstr "az ELI metaadatok olvasása nem sikerült" - -#: grub-core/disk/geli.c:231 -msgid "wrong ELI magic or version" -msgstr "hibás ELI varázslat vagy verzió" - -#: grub-core/disk/geli.c:435 grub-core/disk/luks.c:329 -msgid "Attempting to decrypt master key..." -msgstr "Kísérlet a mesterkulcs visszafejtésére…" - -#: grub-core/disk/geli.c:441 grub-core/disk/luks.c:347 -#, c-format -msgid "Enter passphrase for %s%s%s (%s): " -msgstr "Adja meg a jelszót ehhez: %s%s%s (%s): " - -#. TRANSLATORS: It's a cryptographic key slot: one element of an array -#. where each element is either empty or holds a key. -#: grub-core/disk/geli.c:530 grub-core/disk/luks.c:451 -#, c-format -msgid "Slot %d opened\n" -msgstr "A(z) %d. tárolóhely nyitva\n" - -#: grub-core/disk/i386/pc/biosdisk.c:470 grub-core/disk/i386/pc/biosdisk.c:524 -#: grub-core/disk/i386/pc/biosdisk.c:534 grub-core/kern/disk_common.c:47 -#, c-format -msgid "attempt to read or write outside of disk `%s'" -msgstr "kísérlet a(z) „%s†lemezen kívüli olvasására vagy írásra" - -#: grub-core/disk/i386/pc/biosdisk.c:491 grub-core/disk/i386/pc/biosdisk.c:611 -#: grub-core/disk/scsi.c:726 -msgid "cannot write to CD-ROM" -msgstr "nem lehet írni a CD-ROM-ra" - -#: grub-core/disk/i386/pc/biosdisk.c:662 -msgid "" -"Native disk drivers are in use. Refusing to use firmware disk interface." -msgstr "" -"Natív lemezmeghajtók vannak használatban. A firmware lemezcsatoló " -"használatának visszautasítása." - -#. TRANSLATORS: it's a partition for embedding, -#. not a partition embed into something. GRUB -#. install tools put core.img into a place -#. usable for bootloaders (called generically -#. "embedding zone") and this operation is -#. called "embedding". -#: grub-core/disk/ldm.c:1015 -msgid "your LDM Embedding Partition is too small; embedding won't be possible" -msgstr "" -"az LDM beágyazott partíciója túl kicsi, a beágyazás nem lesz lehetséges" - -#. TRANSLATORS: it's a partition for embedding, -#. not a partition embed into something. -#: grub-core/disk/ldm.c:1033 -msgid "this LDM has no Embedding Partition; embedding won't be possible" -msgstr "" -"ez az LDM nem rendelkezik beágyazott partícióval, a beágyazás nem lesz " -"lehetséges" - -#. TRANSLATORS: The disk is simply removed from the list of available ones, -#. not wiped, avoid to scare user. -#: grub-core/disk/loopback.c:45 -msgid "Delete the specified loopback drive." -msgstr "A megadott visszacsatolási meghajtó törlése." - -#: grub-core/disk/loopback.c:237 -msgid "[-d] DEVICENAME FILE." -msgstr "[-d] ESZKÖZNÉV FÃJL." - -#. TRANSLATORS: The file itself is not destroyed -#. or transformed into drive. -#: grub-core/disk/loopback.c:240 -msgid "Make a virtual drive from a file." -msgstr "Virtuális meghajtó készítése egy fájlból." - -#: grub-core/efiemu/i386/loadcore32.c:111 -#: grub-core/efiemu/i386/loadcore64.c:125 grub-core/kern/arm/dl.c:256 -#: grub-core/kern/arm64/dl.c:187 grub-core/kern/i386/dl.c:75 -#: grub-core/kern/ia64/dl.c:140 grub-core/kern/mips/dl.c:258 -#: grub-core/kern/powerpc/dl.c:163 grub-core/kern/riscv/dl.c:334 -#: grub-core/kern/sparc64/dl.c:180 grub-core/kern/x86_64/dl.c:110 -#: util/grub-mkimagexx.c:756 util/grub-mkimagexx.c:881 -#: util/grub-mkimagexx.c:945 util/grub-mkimagexx.c:1026 -#: util/grub-mkimagexx.c:1120 util/grub-mkimagexx.c:1222 -#: util/grub-mkimagexx.c:1413 util/grub-mkimagexx.c:1628 -#: util/grub-mkimagexx.c:1665 util/grub-mkimagexx.c:1697 -#: util/grub-mkimagexx.c:1767 util/grub-mkimagexx.c:1797 -#, c-format -msgid "relocation 0x%x is not implemented yet" -msgstr "0x%x áthelyezése még nincs megvalósítva" - -#: grub-core/efiemu/loadcore.c:200 grub-core/efiemu/loadcore.c:237 -#: grub-core/loader/i386/bsdXX.c:317 util/grub-mkimagexx.c:2360 -msgid "no symbol table" -msgstr "nincs szimbólumtáblázat" - -#: grub-core/efiemu/loadcore.c:346 grub-core/kern/dl.c:609 -#: grub-core/loader/ia64/efi/linux.c:345 grub-core/loader/mips/linux.c:248 -#: grub-core/loader/multiboot_elfxx.c:76 -#: grub-core/loader/powerpc/ieee1275/linux.c:280 -#: grub-core/loader/sparc64/ieee1275/linux.c:320 -msgid "this ELF file is not of the right type" -msgstr "ez az ELF fájl nem a megfelelÅ‘ típusú" - -#: grub-core/efiemu/main.c:313 -msgid "Load and initialize EFI emulator." -msgstr "EFI-emulátor betöltése és elÅ‘készítése." - -#: grub-core/efiemu/main.c:317 -msgid "Finalize loading of EFI emulator." -msgstr "EFI-emulátor betöltésének befejezése." - -#: grub-core/efiemu/main.c:320 -msgid "Unload EFI emulator." -msgstr "EFI-emulátor eltávolítása a memóriából." - -#: grub-core/efiemu/symbols.c:92 grub-core/kern/dl.c:376 -#, c-format -msgid "symbol `%s' not found" -msgstr "a(z) „%s†szimbólum nem található" - -#: grub-core/font/font_cmd.c:52 -msgid "Loaded fonts:" -msgstr "Betöltött betűkészletek:" - -#: grub-core/font/font_cmd.c:74 -msgid "FILE..." -msgstr "FÃJL…" - -#: grub-core/font/font_cmd.c:75 -msgid "Specify one or more font files to load." -msgstr "Adjon meg legalább egy betöltendÅ‘ betűkészletfájlt." - -#: grub-core/font/font_cmd.c:78 -msgid "List the loaded fonts." -msgstr "Betöltött betűkészletek felsorolása." - -#: grub-core/fs/archelp.c:216 grub-core/fs/archelp.c:278 -#: grub-core/fs/btrfs.c:1815 grub-core/fs/fshelp.c:227 grub-core/fs/jfs.c:736 -#: grub-core/fs/minix.c:369 grub-core/fs/ufs.c:454 -msgid "too deep nesting of symlinks" -msgstr "a szimbolikus linkek egymásba ágyazása túl mély" - -#: grub-core/fs/bfs.c:228 grub-core/fs/fshelp.c:368 grub-core/fs/minix.c:270 -#: grub-core/kern/file.c:156 -msgid "attempt to read past the end of file" -msgstr "kísérlet a fájl végének olvasására" - -#: grub-core/fs/btrfs.c:1698 grub-core/fs/btrfs.c:1957 -#: grub-core/fs/fshelp.c:189 grub-core/fs/fshelp.c:309 grub-core/fs/jfs.c:431 -#: grub-core/fs/minix.c:414 grub-core/fs/minix.c:562 -#: grub-core/fs/reiserfs.c:732 grub-core/fs/ufs.c:531 grub-core/fs/ufs.c:671 -#: grub-core/fs/zfs/zfs.c:2831 grub-core/fs/zfs/zfs.c:4247 -msgid "not a directory" -msgstr "nem könyvtár" - -#: grub-core/fs/btrfs.c:2063 grub-core/fs/fshelp.c:307 grub-core/fs/jfs.c:835 -#: grub-core/fs/zfs/zfs.c:3801 -msgid "not a regular file" -msgstr "nem szabályos fájl" - -#: grub-core/fs/btrfs.c:2157 grub-core/fs/zfs/zfs.c:4333 -#: grub-core/partmap/msdos.c:400 -msgid "your core.img is unusually large. It won't fit in the embedding area" -msgstr "a core.img szokatlanul nagy. Nem fog beférni a beágyazási területere" - -#: grub-core/fs/fshelp.c:281 grub-core/fs/minix.c:630 grub-core/fs/ufs.c:661 -#: grub-core/fs/ufs.c:757 grub-core/kern/fs.c:168 grub-core/kern/fs.c:180 -#, c-format -msgid "invalid file name `%s'" -msgstr "érvénytelen fájlnév: „%sâ€" - -#: grub-core/fs/zfs/zfs.c:453 -msgid "checksum verification failed" -msgstr "az ellenÅ‘rzőösszeg ellenÅ‘rzés meghiúsult" - -#: grub-core/fs/zfs/zfs.c:1465 -msgid "couldn't find a necessary member device of multi-device filesystem" -msgstr "nem található a többeszközös fájlrendszer egy szükséges tageszköze" - -#: grub-core/fs/zfs/zfscrypt.c:292 -msgid "no decryption key available" -msgstr "nem érhetÅ‘ el visszafejtÅ‘ kulcs" - -#: grub-core/fs/zfs/zfscrypt.c:304 -msgid "MAC verification failed" -msgstr "a MAC ellenÅ‘rzés meghiúsult" - -#: grub-core/fs/zfs/zfscrypt.c:413 -msgid "Assume input is raw." -msgstr "A feltételezett bemenet nyers." - -#: grub-core/fs/zfs/zfscrypt.c:414 -msgid "Assume input is hex." -msgstr "A feltételezett bemenet hex." - -#: grub-core/fs/zfs/zfscrypt.c:415 -msgid "Assume input is passphrase." -msgstr "A feltételezett bemenet jelszó." - -#: grub-core/fs/zfs/zfscrypt.c:437 util/grub-fstest.c:553 util/grub-mount.c:483 -msgid "Enter ZFS password: " -msgstr "Adja meg a ZFS jelszót: " - -#: grub-core/fs/zfs/zfscrypt.c:476 -msgid "[-h|-p|-r] [FILE]" -msgstr "[-h|-p|-r] [FÃJL]" - -#: grub-core/fs/zfs/zfscrypt.c:477 -msgid "Import ZFS wrapping key stored in FILE." -msgstr "A FÃJLBAN tárolt ZFS csomagolókulcs importálása." - -#: grub-core/fs/zfs/zfsinfo.c:51 -msgid "Virtual device is removed" -msgstr "A virtuális eszköz eltávolítva" - -#: grub-core/fs/zfs/zfsinfo.c:57 -msgid "Virtual device is faulted" -msgstr "A virtuális eszköz hibázott" - -#: grub-core/fs/zfs/zfsinfo.c:63 -msgid "Virtual device is offline" -msgstr "A virtuális eszköz offline" - -#. TRANSLATORS: degraded doesn't mean broken but that some of -#. component are missing but virtual device as whole is still usable. -#: grub-core/fs/zfs/zfsinfo.c:70 -msgid "Virtual device is degraded" -msgstr "A virtuális eszköz lefokozva" - -#: grub-core/fs/zfs/zfsinfo.c:73 -msgid "Virtual device is online" -msgstr "A virtuális eszköz online" - -#: grub-core/fs/zfs/zfsinfo.c:89 -msgid "Incorrect virtual device: no type available" -msgstr "Helytelen virtuális eszköz: típus nem érhetÅ‘ el" - -#. TRANSLATORS: The virtual devices form a tree (in graph-theoretical -#. sense). The nodes like mirror or raidz have children: member devices. -#. The "real" devices which actually store data are called "leafs" -#. (again borrowed from graph theory) and can be either disks -#. (or partitions) or files. -#: grub-core/fs/zfs/zfsinfo.c:105 -msgid "Leaf virtual device (file or disk)" -msgstr "Levél virtuális eszköz (fájl vagy lemez)" - -#: grub-core/fs/zfs/zfsinfo.c:113 -msgid "Bootpath: unavailable\n" -msgstr "Rendszerindító útvonal: nem érhetÅ‘ el\n" - -#: grub-core/fs/zfs/zfsinfo.c:115 -#, c-format -msgid "Bootpath: %s\n" -msgstr "Rendszerindító útvonal: %s\n" - -#: grub-core/fs/zfs/zfsinfo.c:120 -msgid "Path: unavailable" -msgstr "Útvonal: nem érhetÅ‘ el" - -#: grub-core/fs/zfs/zfsinfo.c:122 -#, c-format -msgid "Path: %s\n" -msgstr "Útvonal: %s\n" - -#: grub-core/fs/zfs/zfsinfo.c:127 -msgid "Devid: unavailable" -msgstr "Eszköz-azonosító: nem érhetÅ‘ el" - -#: grub-core/fs/zfs/zfsinfo.c:129 -#, c-format -msgid "Devid: %s\n" -msgstr "Eszköz-azonosító: %s\n" - -#: grub-core/fs/zfs/zfsinfo.c:148 -msgid "This VDEV is a mirror" -msgstr "Ez a VDEV egy tükör" - -#: grub-core/fs/zfs/zfsinfo.c:153 -#, c-format -msgid "This VDEV is a RAIDZ%llu\n" -msgstr "Ez a VDEV egy RAIDZ%llu\n" - -#: grub-core/fs/zfs/zfsinfo.c:158 -msgid "Incorrect VDEV" -msgstr "Helytelen VDEV" - -#: grub-core/fs/zfs/zfsinfo.c:161 -#, c-format -msgid "VDEV with %d children\n" -msgstr "VDEV %d gyermekkel\n" - -#. TRANSLATORS: it's the element carying the number %d, not -#. total element number. And the number itself is fine, -#. only the element isn't. -#. -#: grub-core/fs/zfs/zfsinfo.c:177 -#, c-format -msgid "VDEV element number %d isn't correct\n" -msgstr "A VDEV elemszám (%d) nem helyes\n" - -#. TRANSLATORS: it's the element carying the number %d, not -#. total element number. This is used in enumeration -#. "Element number 1", "Element number 2", ... -#: grub-core/fs/zfs/zfsinfo.c:184 -#, c-format -msgid "VDEV element number %d:\n" -msgstr "%d VDEV elemszám:\n" - -#: grub-core/fs/zfs/zfsinfo.c:193 -#, c-format -msgid "Unknown virtual device type: %s\n" -msgstr "Ismeretlen virtuális eszköztípus: %s\n" - -#. TRANSLATORS: Here we speak about ZFS pools it's semi-marketing, -#. semi-technical term by Sun/Oracle and should be translated in sync with -#. other ZFS-related software and documentation. -#: grub-core/fs/zfs/zfsinfo.c:254 -msgid "Pool state: active" -msgstr "Tárolóállapot: aktív" - -#: grub-core/fs/zfs/zfsinfo.c:255 -msgid "Pool state: exported" -msgstr "Tárolóállapot: exportálva" - -#: grub-core/fs/zfs/zfsinfo.c:256 -msgid "Pool state: destroyed" -msgstr "Tárolóállapot: megsemmisítve" - -#: grub-core/fs/zfs/zfsinfo.c:257 -msgid "Pool state: reserved for hot spare" -msgstr "Tárolóállapot: lefoglalva a meleg tartalékhoz" - -#: grub-core/fs/zfs/zfsinfo.c:258 -msgid "Pool state: level 2 ARC device" -msgstr "Tárolóállapot: 2. szintű ARC eszköz" - -#: grub-core/fs/zfs/zfsinfo.c:259 -msgid "Pool state: uninitialized" -msgstr "Tárolóállapot: elÅ‘készítetlen" - -#: grub-core/fs/zfs/zfsinfo.c:260 -msgid "Pool state: unavailable" -msgstr "Tárolóállapot: nem érhetÅ‘ el" - -#: grub-core/fs/zfs/zfsinfo.c:261 -msgid "Pool state: potentially active" -msgstr "Tárolóállapot: potenciálisan aktív" - -#: grub-core/fs/zfs/zfsinfo.c:306 -msgid "Pool name: unavailable" -msgstr "Tárolónév: nem érhetÅ‘ el" - -#: grub-core/fs/zfs/zfsinfo.c:308 -#, c-format -msgid "Pool name: %s\n" -msgstr "Tárolónév: %s\n" - -#: grub-core/fs/zfs/zfsinfo.c:313 -msgid "Pool GUID: unavailable" -msgstr "Tároló GUID: nem érhetÅ‘ el" - -#: grub-core/fs/zfs/zfsinfo.c:315 -#, c-format -msgid "Pool GUID: %016llx\n" -msgstr "Tároló GUID: %016llx\n" - -#: grub-core/fs/zfs/zfsinfo.c:320 -msgid "Unable to retrieve pool state" -msgstr "Nem lehet lekérni a tárolóállapotot" - -#: grub-core/fs/zfs/zfsinfo.c:322 -msgid "Unrecognized pool state" -msgstr "Azonosítatlan tárolóállapot" - -#. TRANSLATORS: There are undetermined number of virtual devices -#. in a device tree, not just one. -#. -#: grub-core/fs/zfs/zfsinfo.c:332 -msgid "No virtual device tree available" -msgstr "Nem érhetÅ‘ el virtuális eszköz fa" - -#: grub-core/fs/zfs/zfsinfo.c:431 -msgid "Print ZFS info about DEVICE." -msgstr "ZFS információk kiírása az ESZKÖZRÅL." - -#: grub-core/fs/zfs/zfsinfo.c:433 -msgid "FILESYSTEM [VARIABLE]" -msgstr "FÃJLRENDSZER [VÃLTOZÓ]" - -#: grub-core/fs/zfs/zfsinfo.c:434 -msgid "Print ZFS-BOOTFSOBJ or store it into VARIABLE" -msgstr "A ZFS-BOOTFSOBJ kiírása vagy tárolás a VÃLTOZÓBAN" - -#. TRANSLATORS: at this position GRUB waits for the user to do an action -#. in remote debugger, namely to tell it to establish connection. -#: grub-core/gdb/gdb.c:48 -msgid "Now connect the remote debugger, please." -msgstr "Most csatlakoztassa a távoli hibakeresÅ‘t." - -#. TRANSLATORS: GDB stub is a small part of -#. GDB functionality running on local host -#. which allows remote debugger to -#. connect to it. -#: grub-core/gdb/gdb.c:84 -msgid "Start GDB stub on given port" -msgstr "GDB csonk indítása a megadott porton" - -#. TRANSLATORS: this refers to triggering -#. a breakpoint so that the user will land -#. into GDB. -#: grub-core/gdb/gdb.c:89 -msgid "Break into GDB" -msgstr "Töréspont a GDB-be" - -#: grub-core/gdb/gdb.c:91 -msgid "Stop GDB stub" -msgstr "GDB csonk leállítása" - -#: grub-core/gettext/gettext.c:85 -msgid "premature end of file" -msgstr "túl korai fájlvég" - -#. TRANSLATORS: It refers to passing the string through gettext. -#. So it's "translate" in the same meaning as in what you're -#. doing now. -#. -#: grub-core/gettext/gettext.c:525 -msgid "Translates the string with the current settings." -msgstr "Lefordítja a karakterláncot a jelenlegi beállításokkal." - -#: grub-core/gfxmenu/gui_label.c:186 grub-core/normal/menu_text.c:184 -msgid "" -"Press enter to boot the selected OS, `e' to edit the commands before booting " -"or `c' for a command-line. ESC to return previous menu." -msgstr "" -"Nyomja meg az Enter billentyűt a kijelölt rendszer indításához, az „e†" -"billentyűt a parancsok szerkesztéséhez indítás elÅ‘tt, vagy a „c†billentyűt " -"a parancssor eléréséhez. Az ESC visszaviszi az elÅ‘zÅ‘ menübe." - -#: grub-core/gfxmenu/gui_label.c:190 grub-core/normal/menu_text.c:192 -msgid "" -"Press enter to boot the selected OS, `e' to edit the commands before booting " -"or `c' for a command-line." -msgstr "" -"Nyomja meg az Enter billentyűt a kijelölt rendszer indításához, az „e†" -"billentyűt a parancsok szerkesztéséhez indítás elÅ‘tt, vagy a „c†billentyűt " -"a parancssor eléréséhez." - -#: grub-core/gfxmenu/gui_label.c:194 -msgid "enter: boot, `e': options, `c': cmd-line" -msgstr "enter: indítás, „eâ€: beállítások, „câ€: parancssor" - -#: grub-core/gfxmenu/gui_progress_bar.c:339 grub-core/normal/menu_text.c:446 -#, c-format -msgid "The highlighted entry will be executed automatically in %ds." -msgstr "A kijelölt bejegyzés automatikusan elindul %d másodperc múlva." - -#. TRANSLATORS: 's' stands for seconds. -#. It's a standalone timeout notification. -#. Please use the short form in your language. -#: grub-core/gfxmenu/gui_progress_bar.c:344 -#, c-format -msgid "%ds remaining." -msgstr "%dmp van hátra." - -#. TRANSLATORS: 's' stands for seconds. -#. It's a standalone timeout notification. -#. Please use the shortest form available in you language. -#: grub-core/gfxmenu/gui_progress_bar.c:349 grub-core/normal/menu_text.c:444 -#: grub-core/normal/menu_text.c:462 -#, c-format -msgid "%ds" -msgstr "%dmp" - -#: grub-core/gfxmenu/view.c:103 -msgid "GRUB Boot Menu" -msgstr "GRUB rendszerindítási menü" - -#: grub-core/hello/hello.c:36 -msgid "Hello World" -msgstr "Helló, világ" - -#: grub-core/hello/hello.c:45 -msgid "Say `Hello World'." -msgstr "A világ üdvözlése." - -#: grub-core/io/gzio.c:409 grub-core/kern/file.c:210 -msgid "attempt to seek outside of the file" -msgstr "kísérlet a fájlon kívüli pozicionálásra" - -#. TRANSLATORS: It's about given file having some strange format, not -#. complete lack of gzip support. -#: grub-core/io/gzio.c:1228 grub-core/io/gzio.c:1237 grub-core/io/gzio.c:1244 -msgid "unsupported gzip format" -msgstr "nem támogatott gzip formátum" - -#: grub-core/io/lzopio.c:511 -msgid "lzop file corrupted" -msgstr "az lzop fájl sérült" - -#: grub-core/io/xzio.c:278 -msgid "xz file corrupted or unsupported block options" -msgstr "az xz fájl sérült vagy nem támogatott blokk kapcsolók" - -#: grub-core/kern/arm/dl.c:277 grub-core/kern/arm64/dl.c:44 -#: grub-core/kern/i386/dl.c:36 grub-core/kern/ia64/dl.c:41 -#: grub-core/kern/mips/dl.c:48 grub-core/kern/powerpc/dl.c:36 -#: grub-core/kern/riscv/dl.c:47 grub-core/kern/sparc64/dl.c:36 -#: grub-core/kern/x86_64/dl.c:36 grub-core/loader/i386/bsd.c:1445 -#: grub-core/loader/i386/bsdXX.c:49 grub-core/loader/ia64/efi/linux.c:341 -#: grub-core/loader/mips/linux.c:298 grub-core/loader/multiboot.c:232 -#: grub-core/loader/multiboot_elfxx.c:73 -#: grub-core/loader/powerpc/ieee1275/linux.c:294 -#: grub-core/loader/sparc64/ieee1275/linux.c:331 -msgid "invalid arch-dependent ELF magic" -msgstr "érvénytelen architektúra-függÅ‘ ELF varázslat" - -#: grub-core/kern/corecmd.c:178 -msgid "[ENVVAR=VALUE]" -msgstr "[KÖRNYVÃLT=ÉRTÉK]" - -#: grub-core/kern/corecmd.c:179 -msgid "Set an environment variable." -msgstr "Egy környezeti változó beállítása." - -#: grub-core/kern/corecmd.c:183 -msgid "ENVVAR" -msgstr "KÖRNYVÃLT" - -#: grub-core/kern/corecmd.c:184 -msgid "Remove an environment variable." -msgstr "Egy környezeti változó eltávolítása." - -#: grub-core/kern/corecmd.c:186 -msgid "[ARG]" -msgstr "[ARG]" - -#: grub-core/kern/corecmd.c:186 -msgid "List devices or files." -msgstr "Eszközök vagy fájlok felsorolása." - -#: grub-core/kern/corecmd.c:188 -msgid "Insert a module." -msgstr "Modul behelyezése." - -#: grub-core/kern/disk.c:236 grub-core/net/net.c:1390 -#, c-format -msgid "disk `%s' not found" -msgstr "a(z) „%s†lemez nem található" - -#: grub-core/kern/disk_common.c:27 -msgid "attempt to read or write outside of partition" -msgstr "kísérlet a partíción kívüli olvasására vagy írásra" - -#: grub-core/kern/dl.c:212 grub-core/kern/elf.c:61 grub-core/kern/elf.c:79 -#: grub-core/loader/i386/bsdXX.c:46 grub-core/loader/ia64/efi/linux.c:335 -#: grub-core/loader/multiboot_elfxx.c:69 -msgid "invalid arch-independent ELF magic" -msgstr "érvénytelen architektúra-független ELF varázslat" - -#. TRANSLATORS: it refers to the lack of free slots. -#: grub-core/kern/emu/hostdisk.c:208 grub-core/kern/emu/hostdisk.c:466 -msgid "device count exceeds limit" -msgstr "az eszközszám túllépi a korlátot" - -#: grub-core/kern/emu/hostdisk.c:342 util/editenv.c:54 util/grub-editenv.c:197 -#: util/grub-fstest.c:191 util/grub-mkfont.c:796 util/misc.c:114 -#: util/misc.c:129 util/setup.c:788 -#, c-format -msgid "cannot write to `%s': %s" -msgstr "„%s†nem írható: %s" - -#. TRANSLATORS: Only one entry is ignored. However the suggestion -#. is to correct/delete the whole file. -#. device.map is a file indicating which -#. devices are available at boot time. Fedora populated it with -#. entries like (hd0,1) /dev/sda1 which would mean that every -#. partition is a separate disk for BIOS. Such entries were -#. inactive in GRUB due to its bug which is now gone. Without -#. this additional check these entries would be harmful now. -#. -#: grub-core/kern/emu/hostdisk.c:503 -#, c-format -msgid "" -"the device.map entry `%s' is invalid. Ignoring it. Please correct or delete " -"your device.map" -msgstr "" -"a(z) „%s†device.map bejegyzés érvénytelen. MellÅ‘zés. Javítsa vagy törölje a " -"device.map bejegyzést." - -#. TRANSLATORS: device.map is a filename. Not to be translated. -#. device.map specifies disk correspondance overrides. Previously -#. one could create any kind of device name with this. Due to -#. some problems we decided to limit it to just a handful -#. possibilities. -#: grub-core/kern/emu/hostdisk.c:555 -#, c-format -msgid "" -"the drive name `%s' in device.map is incorrect. Using %s instead. Please use " -"the form [hfc]d[0-9]* (E.g. `hd0' or `cd')" -msgstr "" -"a(z) „%s†eszköznév a device.map bejegyzésben érvénytelen. %s érték " -"használata helyette. Használja a [hfc]d[0-9]* formát (például „hd0†vagy " -"„cdâ€)." - -#: grub-core/kern/emu/hostfs.c:76 grub-core/kern/emu/hostfs.c:109 -#, c-format -msgid "can't open `%s': %s" -msgstr "„%s†nem nyitható meg: %s" - -#: grub-core/kern/emu/main.c:99 util/grub-fstest.c:516 util/grub-mount.c:452 -msgid "DEVICE_NAME" -msgstr "ESZKÖZNÉV" - -#: grub-core/kern/emu/main.c:99 grub-core/loader/i386/bsd.c:136 -#: grub-core/loader/i386/bsd.c:169 util/grub-fstest.c:516 util/grub-mount.c:452 -msgid "Set root device." -msgstr "Gyökéreszköz beállítása." - -#. TRANSLATORS: There are many devices in device map. -#: grub-core/kern/emu/main.c:102 util/grub-probe.c:733 util/grub-setup.c:85 -#, c-format -msgid "use FILE as the device map [default=%s]" -msgstr "a FÃJL használata eszköztérképként [alapértelmezés=%s]" - -#. TRANSLATORS: There are many devices in device map. -#: grub-core/kern/emu/main.c:105 -msgid "use FILE as memdisk" -msgstr "a FÃJL használata memórialemezként" - -#: grub-core/kern/emu/main.c:107 util/grub-setup.c:83 -#, c-format -msgid "use GRUB files in the directory DIR [default=%s]" -msgstr "a KVT könyvtárban lévÅ‘ GRUB fájlok használata [alapértelmezés=%s]" - -#: grub-core/kern/emu/main.c:108 include/grub/util/install.h:67 -#: util/grub-editenv.c:58 util/grub-fstest.c:525 util/grub-glue-efi.c:58 -#: util/grub-macbless.c:104 util/grub-mkfont.c:962 util/grub-mkimage.c:84 -#: util/grub-mklayout.c:56 util/grub-mount.c:458 util/grub-probe.c:735 -#: util/grub-render-label.c:74 util/grub-script-check.c:52 util/grub-setup.c:90 -#: util/grub-syslinux2cfg.c:78 -msgid "print verbose messages." -msgstr "részletes üzenetek kiírása." - -#: grub-core/kern/emu/main.c:109 grub-core/lib/gnulib/argp-parse.c:85 -msgid "SECS" -msgstr "MP" - -#: grub-core/kern/emu/main.c:109 -msgid "wait until a debugger will attach" -msgstr "várakozás, amíg a hibakeresÅ‘ csatolni fog" - -#: grub-core/kern/emu/main.c:171 util/grub-macbless.c:143 -#: util/grub-mkrelpath.c:61 util/grub-probe.c:874 util/grub-script-check.c:75 -#: util/grub-setup.c:203 -#, c-format -msgid "Unknown extra argument `%s'." -msgstr "Ismeretlen extra argumentum: „%sâ€." - -#: grub-core/kern/emu/main.c:185 -msgid "GRUB emulator." -msgstr "GRUB emulátor." - -#: grub-core/kern/emu/main.c:213 util/grub-editenv.c:262 -#: util/grub-glue-efi.c:110 util/grub-macbless.c:173 util/grub-mkfont.c:1177 -#: util/grub-mkimage.c:266 util/grub-mklayout.c:494 -#: util/grub-mkpasswd-pbkdf2.c:132 util/grub-mkrelpath.c:96 -#: util/grub-probe.c:863 util/grub-render-label.c:152 -#: util/grub-script-check.c:160 util/grub-setup.c:262 -#: util/grub-syslinux2cfg.c:163 -msgid "Error in parsing command line arguments\n" -msgstr "Hiba a parancssori argumentumok feldolgozásakor\n" - -#. TRANSLATORS: In this case GRUB tells user what he has to do. -#: grub-core/kern/emu/main.c:248 -#, c-format -msgid "Run `gdb %s %d', and set ARGS.HOLD to zero.\n" -msgstr "A „gdb %s %d†futtatása, és az ARGS.HOLD beállítása nullára.\n" - -#: grub-core/kern/emu/misc.c:48 -#, c-format -msgid "%s: warning:" -msgstr "%s: figyelmeztetés:" - -#: grub-core/kern/emu/misc.c:64 -#, c-format -msgid "%s: info:" -msgstr "%s: info:" - -#: grub-core/kern/emu/misc.c:79 util/grub-fstest.c:567 util/grub-fstest.c:576 -#: util/grub-mount.c:497 util/grub-mount.c:505 -#, c-format -msgid "%s: error:" -msgstr "%s: hiba:" - -#: grub-core/kern/emu/misc.c:176 -#, c-format -msgid "file `%s' is too big" -msgstr "a(z) „%s†fájl túl nagy" - -#: grub-core/kern/fs.c:120 -msgid "unknown filesystem" -msgstr "ismeretlen fájlrendszer" - -#: grub-core/kern/mips/arc/init.c:273 grub-core/kern/mips/loongson/init.c:301 -msgid "Shutdown failed" -msgstr "Leállítás meghiúsult" - -#: grub-core/kern/mips/arc/init.c:285 -msgid "Exit failed" -msgstr "Kilépés meghiúsult" - -#: grub-core/kern/misc.c:351 grub-core/kern/misc.c:408 include/grub/misc.h:269 -#: include/grub/misc.h:278 -msgid "overflow is detected" -msgstr "túlcsordulás észlelhetÅ‘" - -#: grub-core/kern/partition.c:51 grub-core/partmap/bsdlabel.c:108 -#, c-format -msgid "Discarding improperly nested partition (%s,%s,%s%d)" -msgstr "A helytelenül egymásba ágyazott partíciók eldobása (%s,%s,%s%d)" - -#: grub-core/kern/rescue_parser.c:73 util/grub-editenv.c:292 -#, c-format -msgid "Unknown command `%s'.\n" -msgstr "Ismeretlen parancs: „%sâ€.\n" - -#: grub-core/lib/arg.c:31 -msgid "Display this help and exit." -msgstr "Ezen súgó megjelenítése és kilépés." - -#: grub-core/lib/arg.c:33 -msgid "Display the usage of this command and exit." -msgstr "A parancs használatának megjelenítése és kilépés." - -#: grub-core/lib/arg.c:362 -#, c-format -msgid "missing mandatory option for `%s'" -msgstr "hiányzó kötelezÅ‘ kapcsoló ehhez: „%sâ€" - -#: grub-core/lib/arg.c:384 -#, c-format -msgid "the argument `%s' requires an integer" -msgstr "a(z) „%s†argumentum egy egész számot igényel" - -#: grub-core/lib/arg.c:407 -#, c-format -msgid "" -"a value was assigned to the argument `%s' while it doesn't require an " -"argument" -msgstr "" -"egy érték hozzá lett rendelve a(z) „%s†argumentumhoz, miközben az nem " -"igényel argumentumot" - -#: grub-core/lib/backtrace.c:64 -msgid "Print backtrace." -msgstr "Visszakövetés kiírása." - -#: grub-core/lib/gnulib/argp-help.c:149 -#, c-format -msgid "ARGP_HELP_FMT: %s value is less than or equal to %s" -msgstr "ARGP_HELP_FMT: %s értéke nem nagyobb mint %s" - -#: grub-core/lib/gnulib/argp-help.c:225 -#, c-format -msgid "%.*s: ARGP_HELP_FMT parameter requires a value" -msgstr "%.*s: Az ARGP_HELP_FMT paraméter értéket igényel" - -#: grub-core/lib/gnulib/argp-help.c:235 -#, c-format -msgid "%.*s: Unknown ARGP_HELP_FMT parameter" -msgstr "%.*s: Ismeretlen ARGP_HELP_FMT paraméter" - -#: grub-core/lib/gnulib/argp-help.c:248 -#, c-format -msgid "Garbage in ARGP_HELP_FMT: %s" -msgstr "Szemét az ARGP_HELP_FMT-ben: %s" - -#: grub-core/lib/gnulib/argp-help.c:1229 -msgid "" -"Mandatory or optional arguments to long options are also mandatory or " -"optional for any corresponding short options." -msgstr "" -"A hosszú kapcsolók kötelezÅ‘ vagy opcionális argumentumai szintén kötelezÅ‘k " -"vagy opcionálisak bármely megfelelÅ‘ rövid kapcsolónál." - -#: grub-core/lib/gnulib/argp-help.c:1620 -msgid " or: " -msgstr " vagy: " - -#: grub-core/lib/gnulib/argp-help.c:1632 -msgid " [OPTION...]" -msgstr " [KAPCSOLÓ…]" - -#: grub-core/lib/gnulib/argp-help.c:1659 -#, c-format -msgid "Try '%s --help' or '%s --usage' for more information.\n" -msgstr "" -"További információkért próbálja a(z) „%s --help†vagy „%s --usage†" -"parancsot.\n" - -#: grub-core/lib/gnulib/argp-help.c:1687 -#, c-format -msgid "Report bugs to %s.\n" -msgstr "A hibák itt jelenthetÅ‘k: %s.\n" - -#: grub-core/lib/gnulib/argp-help.c:1888 grub-core/lib/gnulib/error.c:195 -msgid "Unknown system error" -msgstr "Ismeretlen rendszerhiba" - -#: grub-core/lib/gnulib/argp-parse.c:81 -msgid "give this help list" -msgstr "ezen súgólista megjelenítése" - -#: grub-core/lib/gnulib/argp-parse.c:82 -msgid "give a short usage message" -msgstr "rövid használati utasítás megjelenítése" - -#: grub-core/lib/gnulib/argp-parse.c:83 util/grub-mkfont.c:946 -msgid "NAME" -msgstr "NÉV" - -#: grub-core/lib/gnulib/argp-parse.c:84 -msgid "set the program name" -msgstr "a program nevének beállítása" - -#: grub-core/lib/gnulib/argp-parse.c:86 -msgid "hang for SECS seconds (default 3600)" -msgstr "szünet MP másodpercre (alapértelmezetten 3600)" - -#: grub-core/lib/gnulib/argp-parse.c:143 -msgid "print program version" -msgstr "a programverzió kiírása" - -#: grub-core/lib/gnulib/argp-parse.c:160 -msgid "(PROGRAM ERROR) No version known!?" -msgstr "(PROGRAMHIBA) A verzió nem ismert!" - -#: grub-core/lib/gnulib/argp-parse.c:613 -#, c-format -msgid "%s: Too many arguments\n" -msgstr "%s: Túl sok argumentum\n" - -#: grub-core/lib/gnulib/argp-parse.c:759 -msgid "(PROGRAM ERROR) Option should have been recognized!?" -msgstr "(PROGRAMHIBA) A kapcsolót ismerni kellene?" - -#: grub-core/lib/gnulib/getopt.c:278 -#, fuzzy, c-format -msgid "%s: option '%s%s' is ambiguous\n" -msgstr "%s: a „-W %s†kapcsoló nem egyértelmű\n" - -#: grub-core/lib/gnulib/getopt.c:284 -#, fuzzy, c-format -msgid "%s: option '%s%s' is ambiguous; possibilities:" -msgstr "%s: a(z) „%s†kapcsoló nem egyértelmű, lehetÅ‘ségek:" - -#: grub-core/lib/gnulib/getopt.c:319 -#, fuzzy, c-format -msgid "%s: unrecognized option '%s%s'\n" -msgstr "%s: ismeretlen „%c%s†kapcsoló\n" - -#: grub-core/lib/gnulib/getopt.c:345 -#, fuzzy, c-format -msgid "%s: option '%s%s' doesn't allow an argument\n" -msgstr "%s: a(z) „%c%s†kapcsoló nem enged meg argumentumot\n" - -#: grub-core/lib/gnulib/getopt.c:360 -#, fuzzy, c-format -msgid "%s: option '%s%s' requires an argument\n" -msgstr "%s: a(z) „--%s†kapcsolóhoz egy argumentum szükséges\n" - -#: grub-core/lib/gnulib/getopt.c:621 -#, c-format -msgid "%s: invalid option -- '%c'\n" -msgstr "%s: érvénytelen kapcsoló -- „%câ€\n" - -#: grub-core/lib/gnulib/getopt.c:636 grub-core/lib/gnulib/getopt.c:682 -#, c-format -msgid "%s: option requires an argument -- '%c'\n" -msgstr "%s: a kapcsoló egy argumentumot igényel -- „%câ€\n" - -#: grub-core/lib/gnulib/openat-die.c:38 -#, fuzzy, c-format -msgid "unable to record current working directory" -msgstr "nem lehet visszaállítani az eredeti könyvtárat" - -#: grub-core/lib/gnulib/openat-die.c:57 -#, c-format -msgid "failed to return to initial working directory" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:135 grub-core/osdep/aros/hostdisk.c:523 -msgid "Success" -msgstr "Sikerült" - -#: grub-core/lib/gnulib/regcomp.c:138 -msgid "No match" -msgstr "Nincs találat" - -#: grub-core/lib/gnulib/regcomp.c:141 -msgid "Invalid regular expression" -msgstr "Érvénytelen reguláris kifejezés" - -#: grub-core/lib/gnulib/regcomp.c:144 -msgid "Invalid collation character" -msgstr "Érvénytelen egyeztetÅ‘ karakter" - -#: grub-core/lib/gnulib/regcomp.c:147 -msgid "Invalid character class name" -msgstr "Érvénytelen karakterosztálynév" - -#: grub-core/lib/gnulib/regcomp.c:150 -msgid "Trailing backslash" -msgstr "Záró visszaper" - -#: grub-core/lib/gnulib/regcomp.c:153 -msgid "Invalid back reference" -msgstr "Érvénytelen visszahivatkozás" - -#: grub-core/lib/gnulib/regcomp.c:156 -#, fuzzy -msgid "Unmatched [, [^, [:, [., or [=" -msgstr "Pár nélküli [ vagy [^" - -#: grub-core/lib/gnulib/regcomp.c:159 -msgid "Unmatched ( or \\(" -msgstr "Pár nélküli ( vagy \\(" - -#: grub-core/lib/gnulib/regcomp.c:162 -msgid "Unmatched \\{" -msgstr "Pár nélküli \\{" - -#: grub-core/lib/gnulib/regcomp.c:165 -msgid "Invalid content of \\{\\}" -msgstr "A \\{\\} tartalma érvénytelen" - -#: grub-core/lib/gnulib/regcomp.c:168 -msgid "Invalid range end" -msgstr "Érvénytelen tartományvég" - -#: grub-core/lib/gnulib/regcomp.c:171 -msgid "Memory exhausted" -msgstr "Elfogyott a memória" - -#: grub-core/lib/gnulib/regcomp.c:174 -msgid "Invalid preceding regular expression" -msgstr "Érvénytelen megelÅ‘zÅ‘ reguláris kifejezés" - -#: grub-core/lib/gnulib/regcomp.c:177 -msgid "Premature end of regular expression" -msgstr "A reguláris kifejezés túl korán véget ért" - -#: grub-core/lib/gnulib/regcomp.c:180 -msgid "Regular expression too big" -msgstr "A reguláris kifejezés túl nagy" - -#: grub-core/lib/gnulib/regcomp.c:183 -msgid "Unmatched ) or \\)" -msgstr "Pár nélküli ) vagy \\)" - -#: grub-core/lib/gnulib/regcomp.c:531 -msgid "unknown regexp error" -msgstr "ismeretlen reguláris kifejezés hiba" - -#: grub-core/lib/gnulib/regcomp.c:676 -msgid "No previous regular expression" -msgstr "Nincs elÅ‘zÅ‘ reguláris kifejezés" - -#: grub-core/lib/i386/halt.c:77 -msgid "GRUB doesn't know how to halt this machine yet!" -msgstr "A GRUB még nem tudja, hogy hogyan kell ezt a gépet leállítani!" - -#: grub-core/lib/legacy_parse.c:75 -msgid "Default server is ${net_default_server}" -msgstr "Az alapértelmezett kiszolgáló: ${net_default_server}" - -#: grub-core/lib/legacy_parse.c:844 grub-core/video/colors.c:296 -#: grub-core/video/colors.c:305 grub-core/video/colors.c:311 -#: grub-core/video/colors.c:327 util/render-label.c:84 util/render-label.c:98 -#, c-format -msgid "invalid color specification `%s'" -msgstr "érvénytelen színspecifikáció: „%sâ€" - -#: grub-core/lib/mips/arc/reboot.c:32 grub-core/lib/mips/loongson/reboot.c:61 -msgid "Reboot failed" -msgstr "Újraindítás meghiúsult" - -#: grub-core/lib/random.c:113 -msgid "[LENGTH]" -msgstr "[HOSSZ]" - -#: grub-core/lib/random.c:114 -msgid "Hexdump random data." -msgstr "Véletlenszerű adatok hexdumpja." - -#: grub-core/loader/arm/linux.c:242 -msgid "device tree must be supplied (see `devicetree' command)" -msgstr "az eszközfát meg kell adni (lásd „devicetree†parancs)" - -#: grub-core/loader/arm/linux.c:334 -msgid "invalid zImage" -msgstr "érvénytelen zImage" - -#: grub-core/loader/arm/linux.c:450 grub-core/loader/efi/fdt.c:144 -msgid "invalid device tree" -msgstr "érvénytelen eszközfa" - -#: grub-core/loader/arm/linux.c:493 grub-core/loader/arm64/linux.c:383 -#: grub-core/loader/i386/linux.c:1125 grub-core/loader/i386/pc/linux.c:479 -#: grub-core/loader/i386/xen.c:962 grub-core/loader/i386/xen.c:964 -#: grub-core/loader/ia64/efi/linux.c:591 grub-core/loader/mips/linux.c:501 -#: grub-core/loader/powerpc/ieee1275/linux.c:383 -#: grub-core/loader/riscv/linux.c:50 -#: grub-core/loader/sparc64/ieee1275/linux.c:511 -msgid "Load Linux." -msgstr "Linux betöltése." - -#: grub-core/loader/arm/linux.c:495 grub-core/loader/arm64/linux.c:385 -#: grub-core/loader/i386/linux.c:1127 grub-core/loader/i386/pc/linux.c:482 -#: grub-core/loader/i386/xen.c:966 grub-core/loader/ia64/efi/linux.c:594 -#: grub-core/loader/mips/linux.c:503 -#: grub-core/loader/powerpc/ieee1275/linux.c:385 -#: grub-core/loader/riscv/linux.c:52 -#: grub-core/loader/sparc64/ieee1275/linux.c:513 -msgid "Load initrd." -msgstr "Initrd betöltése." - -#. TRANSLATORS: DTB stands for device tree blob. -#: grub-core/loader/arm/linux.c:498 grub-core/loader/efi/fdt.c:169 -msgid "Load DTB file." -msgstr "DTB fájl betöltése." - -#: grub-core/loader/arm64/linux.c:59 -msgid "" -"plain image kernel not supported - rebuild with CONFIG_(U)EFI_STUB enabled" -msgstr "" -"egyszerű lemezkép kernel nem támogatott - fordítsa újra engedélyezett " -"CONFIG_(U)EFI_STUB használatával" - -#: grub-core/loader/arm64/xen_boot.c:156 -msgid "failed to get FDT" -msgstr "az FDT elérése sikertelen" - -#: grub-core/loader/arm64/xen_boot.c:418 -msgid "you need to load the Xen Hypervisor first" -msgstr "elÅ‘ször a Xen hipervizort kell betöltenie" - -#: grub-core/loader/arm64/xen_boot.c:516 -msgid "Load a xen hypervisor." -msgstr "Töltsön be egy Xen hipervizort" - -#: grub-core/loader/arm64/xen_boot.c:519 -msgid "Load a xen module." -msgstr "Xen modul betöltése." - -#: grub-core/loader/efi/appleloader.c:231 -msgid "[OPTS]" -msgstr "[KAPCSOLÓK]" - -#. TRANSLATORS: This command is used on EFI to -#. switch to BIOS mode and boot the OS requiring -#. BIOS. -#: grub-core/loader/efi/appleloader.c:235 -msgid "Boot BIOS-based system." -msgstr "BIOS-alapú rendszer indítása." - -#: grub-core/loader/efi/chainloader.c:421 -#: grub-core/loader/i386/pc/chainloader.c:303 -msgid "Load another boot loader." -msgstr "Másik rendszerbetöltÅ‘ betöltése." - -#: grub-core/loader/i386/bsd.c:103 -msgid "Display output on all consoles." -msgstr "Kimenet megjelenítése minden konzolon." - -#: grub-core/loader/i386/bsd.c:104 grub-core/loader/i386/bsd.c:138 -#: grub-core/loader/i386/bsd.c:171 -msgid "Use serial console." -msgstr "Soros konzol használata." - -#: grub-core/loader/i386/bsd.c:105 grub-core/loader/i386/bsd.c:131 -#: grub-core/loader/i386/bsd.c:159 -msgid "Ask for file name to reboot from." -msgstr "Fájlnév bekérése, amelybÅ‘l újra kell indulni." - -#: grub-core/loader/i386/bsd.c:106 -msgid "Use CD-ROM as root." -msgstr "CD-ROM használata gyökérként." - -#: grub-core/loader/i386/bsd.c:107 -msgid "Invoke user configuration routing." -msgstr "Felhasználói beállításirányítás hívása." - -#: grub-core/loader/i386/bsd.c:108 grub-core/loader/i386/bsd.c:135 -#: grub-core/loader/i386/bsd.c:162 -msgid "Enter in KDB on boot." -msgstr "Indításkor belépés a KDB-be." - -#: grub-core/loader/i386/bsd.c:109 -msgid "Use GDB remote debugger instead of DDB." -msgstr "GDB távoli hibakeresÅ‘ használata DDB helyett." - -#: grub-core/loader/i386/bsd.c:110 -msgid "Disable all boot output." -msgstr "Minden indítási kimenet letiltása." - -#: grub-core/loader/i386/bsd.c:112 -msgid "Wait for keypress after every line of output." -msgstr "Várakozás billentyűnyomásra minden kimeneti sor után." - -#: grub-core/loader/i386/bsd.c:114 -msgid "Use compiled-in root device." -msgstr "Befordított gyökéreszköz használata." - -#: grub-core/loader/i386/bsd.c:115 grub-core/loader/i386/bsd.c:134 -#: grub-core/loader/i386/bsd.c:165 -msgid "Boot into single mode." -msgstr "Indítás egy felhasználós módban." - -#: grub-core/loader/i386/bsd.c:116 grub-core/loader/i386/bsd.c:166 -msgid "Boot with verbose messages." -msgstr "Indítás részletes üzenetekkel." - -#: grub-core/loader/i386/bsd.c:132 grub-core/loader/i386/bsd.c:160 -msgid "Don't reboot, just halt." -msgstr "Ne induljon újra, csak álljon le." - -#: grub-core/loader/i386/bsd.c:133 grub-core/loader/i386/bsd.c:161 -msgid "Change configured devices." -msgstr "Beállított eszközök módosítása." - -#. TRANSLATORS: "com" is static and not to be translated. It refers to -#. serial ports e.g. com1. -#. -#: grub-core/loader/i386/bsd.c:142 -msgid "comUNIT[,SPEED]" -msgstr "comEGYSÉG[,SEBESSÉG]" - -#: grub-core/loader/i386/bsd.c:157 -msgid "Disable SMP." -msgstr "SMP letiltása." - -#: grub-core/loader/i386/bsd.c:158 -msgid "Disable ACPI." -msgstr "ACPI letiltása." - -#: grub-core/loader/i386/bsd.c:164 -msgid "Don't display boot diagnostic messages." -msgstr "Ne jelenítsen meg rendszerindítási diagnosztikai üzeneteket." - -#: grub-core/loader/i386/bsd.c:167 -msgid "Boot with debug messages." -msgstr "Indítás hibakeresési üzenetekkel." - -#: grub-core/loader/i386/bsd.c:168 -msgid "Suppress normal output (warnings remain)." -msgstr "Normál kimenet elnyomása (a figyelmeztetések maradnak)." - -#. TRANSLATORS: "com" is static and not to be translated. It refers to -#. serial ports e.g. com1. -#. -#: grub-core/loader/i386/bsd.c:175 -msgid "[ADDR|comUNIT][,SPEED]" -msgstr "[CÃM|comEGYSÉG][,SEBESSÉG]" - -#: grub-core/loader/i386/bsd.c:489 grub-core/loader/i386/bsd.c:555 -msgid "name" -msgstr "név" - -#: grub-core/loader/i386/bsd.c:489 grub-core/loader/i386/bsd.c:555 -msgid "type" -msgstr "típus" - -#: grub-core/loader/i386/bsd.c:489 grub-core/loader/i386/bsd.c:555 -msgid "addr" -msgstr "cím" - -#: grub-core/loader/i386/bsd.c:490 grub-core/loader/i386/bsd.c:556 -msgid "size" -msgstr "méret" - -#: grub-core/loader/i386/bsd.c:1147 grub-core/loader/i386/linux.c:466 -#: grub-core/loader/i386/xnu.c:1030 -msgid "Booting in blind mode" -msgstr "Indítás vak módban" - -#: grub-core/loader/i386/bsd.c:2137 -msgid "Load kernel of FreeBSD." -msgstr "FreeBSD kernel betöltése." - -#: grub-core/loader/i386/bsd.c:2140 -msgid "Load kernel of OpenBSD." -msgstr "OpenBSD kernel betöltése." - -#: grub-core/loader/i386/bsd.c:2143 -msgid "Load kernel of NetBSD." -msgstr "NetBSD kernel betöltése." - -#: grub-core/loader/i386/bsd.c:2147 -msgid "Load FreeBSD env." -msgstr "FreeBSD környezet betöltése." - -#: grub-core/loader/i386/bsd.c:2150 -msgid "Load FreeBSD kernel module." -msgstr "FreeBSD kernelmodul betöltése." - -#: grub-core/loader/i386/bsd.c:2153 -msgid "Load NetBSD kernel module." -msgstr "NetBSD kernelmodul betöltése." - -#: grub-core/loader/i386/bsd.c:2156 -msgid "Load NetBSD kernel module (ELF)." -msgstr "NetBSD kernelmodul (ELF) betöltése." - -#: grub-core/loader/i386/bsd.c:2159 -msgid "Load FreeBSD kernel module (ELF)." -msgstr "FreeBSD kernelmodul betöltése (ELF)." - -#. TRANSLATORS: ramdisk isn't identifier, -#. it can be translated. -#: grub-core/loader/i386/bsd.c:2165 -msgid "Load kOpenBSD ramdisk." -msgstr "kOpenBSD memórialemez betöltése." - -#. TRANSLATORS: "payload" is a term used -#. by coreboot and must be translated in -#. sync with coreboot. If unsure, -#. let it untranslated. -#: grub-core/loader/i386/coreboot/chainloader.c:510 -msgid "Load another coreboot payload" -msgstr "Másik magindítási tartalom betöltése." - -#: grub-core/loader/i386/linux.c:876 -msgid "Legacy `ask' parameter no longer supported." -msgstr "Az örökölt „ask†paraméter többé nem támogatott." - -#: grub-core/loader/i386/linux.c:892 grub-core/loader/i386/linux.c:902 -#: grub-core/loader/i386/linux.c:932 -#, c-format -msgid "%s is deprecated. Use set gfxpayload=%s before linux command instead.\n" -msgstr "" -"%s elavult. Használja helyette a gfxpayload=%s beállítást a linux parancs " -"elÅ‘tt.\n" - -#. TRANSLATORS: "x" has to be entered in, like an identifier, -#. so please don't use better Unicode codepoints. -#: grub-core/loader/i386/linux.c:915 -#, c-format -msgid "" -"%s is deprecated. VGA mode %d isn't recognized. Use set " -"gfxpayload=WIDTHxHEIGHT[xDEPTH] before linux command instead.\n" -msgstr "" -"%s elavult. A(z) %d VGA mód nem azonosítható. Használja helyette a " -"gfxpayload=SZÉLESSÉGxMAGASSÃG[xMÉLYSÉG] beállítást a linux parancs elÅ‘tt.\n" - -#: grub-core/loader/i386/pc/chainloader.c:302 -msgid "[--force|--bpb] FILE" -msgstr "[--force|--bpb] FÃJL" - -#: grub-core/loader/i386/pc/freedos.c:148 util/setup.c:293 -#, c-format -msgid "the size of `%s' is too large" -msgstr "„%s†mérete túl nagy" - -#: grub-core/loader/i386/pc/freedos.c:183 -msgid "Load FreeDOS kernel.sys." -msgstr "FreeDOS kernel.sys betöltése." - -#: grub-core/loader/i386/pc/ntldr.c:155 -msgid "Load NTLDR or BootMGR." -msgstr "NTLDR vagy BootMGR betöltése." - -#. TRANSLATORS: it's about guessing which GRUB disk -#. is which Plan9 disk. If your language has no -#. word "mapping" you can use another word which -#. means that the GRUBDEVICE and PLAN9DEVICE are -#. actually the same device, just named differently -#. in OS and GRUB. -#: grub-core/loader/i386/pc/plan9.c:59 -msgid "Override guessed mapping of Plan9 devices." -msgstr "A Plan9 eszközök kitalált leképezésének felülbírálása." - -#: grub-core/loader/i386/pc/plan9.c:60 -msgid "GRUBDEVICE=PLAN9DEVICE" -msgstr "GRUBESZKÖZ=PLAN9ESZKÖZ" - -#: grub-core/loader/i386/pc/plan9.c:599 -msgid "KERNEL ARGS" -msgstr "KERNEL ARGS" - -#: grub-core/loader/i386/pc/plan9.c:599 -msgid "Load Plan9 kernel." -msgstr "Plan9 kernel betöltése." - -#: grub-core/loader/i386/pc/pxechainloader.c:161 -msgid "Load a PXE image." -msgstr "Egy PXE lemezkép betöltése." - -#: grub-core/loader/i386/pc/truecrypt.c:226 -msgid "Load Truecrypt ISO." -msgstr "Truecrypt ISO betöltése." - -#: grub-core/loader/i386/xen.c:781 grub-core/loader/i386/xen.c:865 -msgid "initrd already loaded" -msgstr "az initrd már be van töltve" - -#: grub-core/loader/i386/xen.c:968 -msgid "Load module." -msgstr "Modul betöltése." - -#: grub-core/loader/i386/xnu.c:1003 -msgid "Press any key to launch xnu" -msgstr "Nyomjon meg egy billentyűt az xnu indításához" - -#. TRANSLATORS: `device-properties' -#. is a variable name, -#. not a program. -#: grub-core/loader/i386/xnu.c:1159 -msgid "Load `device-properties' dump." -msgstr "„device-properties†kiíratás betöltése." - -#: grub-core/loader/ia64/efi/linux.c:124 -msgid "Could not locate FPSWA driver" -msgstr "Nem található az FPSWA meghajtó" - -#: grub-core/loader/ia64/efi/linux.c:132 -msgid "FPSWA protocol wasn't able to find the interface" -msgstr "Az FPSWA protokoll nem volt képes megtalálni a csatolót" - -#: grub-core/loader/ia64/efi/linux.c:580 -msgid "No FPSWA found" -msgstr "Nem található FPSWA" - -#: grub-core/loader/ia64/efi/linux.c:582 -#, c-format -msgid "FPSWA revision: %x\n" -msgstr "FPSWA kiadás: %x\n" - -#: grub-core/loader/ia64/efi/linux.c:591 -msgid "FILE [ARGS...]" -msgstr "FÃJL [ARGOK…]" - -#: grub-core/loader/ia64/efi/linux.c:597 -msgid "Display FPSWA version." -msgstr "FPSWA verzió megjelenítése." - -#: grub-core/loader/multiboot.c:248 -msgid "WARNING: no console will be available to OS" -msgstr "FIGYELEM: nem lesz elérhetÅ‘ konzol az OS-hez" - -#: grub-core/loader/multiboot.c:450 -msgid "Load a multiboot 2 kernel." -msgstr "Multiboot 2 kernel betöltése." - -#: grub-core/loader/multiboot.c:453 -msgid "Load a multiboot 2 module." -msgstr "Multiboot 2 modul betöltése." - -#: grub-core/loader/multiboot.c:456 -msgid "Load a multiboot kernel." -msgstr "Multiboot kernel betöltése." - -#: grub-core/loader/multiboot.c:459 -msgid "Load a multiboot module." -msgstr "Multiboot modul betöltése." - -#: grub-core/loader/riscv/linux.c:30 grub-core/loader/riscv/linux.c:40 -#, fuzzy -msgid "Linux not supported yet" -msgstr "az interpret nem támogatott" - -#: grub-core/loader/xnu.c:1416 grub-core/term/gfxterm_background.c:45 -msgid "Background image mode." -msgstr "Háttérkép mód." - -#. TRANSLATORS: This refers to background image mode (stretched or -#. in left-top corner). Note that GRUB will accept only original -#. keywords stretch and normal, not the translated ones. -#. So please put both in translation -#. e.g. stretch(=%STRETCH%)|normal(=%NORMAL%). -#. The percents mark the translated version. Since many people -#. may not know the word stretch or normal I recommend -#. putting the translation either here or in "Background image mode." -#. string. -#: grub-core/loader/xnu.c:1416 grub-core/term/gfxterm_background.c:55 -msgid "stretch|normal" -msgstr "stretch|normal" - -#: grub-core/loader/xnu.c:1482 -msgid "Load XNU image." -msgstr "XNU rendszerkép betöltése." - -#: grub-core/loader/xnu.c:1484 -msgid "Load 64-bit XNU image." -msgstr "64-bites XNU rendszerkép betöltése." - -#: grub-core/loader/xnu.c:1486 -msgid "Load XNU extension package." -msgstr "XNU kiterjesztéscsomag betöltése." - -#: grub-core/loader/xnu.c:1488 -msgid "Load XNU extension." -msgstr "XNU kiterjesztés betöltése." - -#. TRANSLATORS: OSBundleRequired is a -#. variable name in xnu extensions -#. manifests. It behaves mostly like -#. GNU/Linux runlevels. -#. -#: grub-core/loader/xnu.c:1495 -msgid "DIRECTORY [OSBundleRequired]" -msgstr "KÖNYVTÃR [OSCsomagSzükséges]" - -#. TRANSLATORS: There are many extensions -#. in extension directory. -#: grub-core/loader/xnu.c:1498 -msgid "Load XNU extension directory." -msgstr "XNU kiterjesztéskönyvtár betöltése." - -#. TRANSLATORS: ramdisk here isn't identifier. It can be translated. -#: grub-core/loader/xnu.c:1501 -msgid "Load XNU ramdisk. It will be available in OS as md0." -msgstr "XNU memórialemez betöltése. ElérhetÅ‘ lesz az OS-ben md0-ként." - -#: grub-core/loader/xnu.c:1505 -msgid "Load a splash image for XNU." -msgstr "Indítókép betöltése az XNU-hoz." - -#: grub-core/loader/xnu.c:1510 -msgid "Load an image of hibernated XNU." -msgstr "Egy hibernált XNU rendszerképének betöltése." - -#: grub-core/mmap/mmap.c:538 -msgid "ADDR1,MASK1[,ADDR2,MASK2[,...]]" -msgstr "CÃM1,MASZK1[,CÃM2,MASZK2[,…]]" - -#: grub-core/mmap/mmap.c:539 -msgid "Declare memory regions as faulty (badram)." -msgstr "Memóriaterületek hibássá nyilvánítása (badram)." - -#: grub-core/mmap/mmap.c:541 -msgid "FROM[K|M|G] TO[K|M|G]" -msgstr "ETTÅL[K|M|G] EDDIG[K|M|G]" - -#: grub-core/mmap/mmap.c:542 -msgid "Remove any memory regions in specified range." -msgstr "Memóriaterületek eltávolítása a megadott tartományból." - -#: grub-core/net/bootp.c:653 -msgid "four arguments expected" -msgstr "négy argumentumot kell megadni" - -#: grub-core/net/bootp.c:661 grub-core/net/net.c:1155 -#, c-format -msgid "unrecognised network interface `%s'" -msgstr "azonosítatlan hálózati csatoló: „%sâ€" - -#: grub-core/net/bootp.c:664 -msgid "no DHCP info found" -msgstr "nem található DHCP információ" - -#: grub-core/net/bootp.c:674 -msgid "no DHCP options found" -msgstr "nem találhatók DHCP kapcsolók" - -#: grub-core/net/bootp.c:682 -#, fuzzy -msgid "invalid DHCP option code" -msgstr "nem találhatók DHCP kapcsolók" - -#: grub-core/net/bootp.c:686 -#, fuzzy, c-format -msgid "no DHCP option %u found" -msgstr "nem található %d DHCP kapcsoló" - -#: grub-core/net/bootp.c:743 -#, c-format -msgid "unrecognised DHCP option format specification `%s'" -msgstr "azonosítatlan DHCP kapcsolóformátum specifikáció: „%sâ€" - -#: grub-core/net/bootp.c:767 -msgid "no network card found" -msgstr "nem található hálózati kártya" - -#: grub-core/net/bootp.c:859 grub-core/net/net.c:389 -#, c-format -msgid "couldn't autoconfigure %s" -msgstr "%s automatikus beállítása nem sikerült" - -#: grub-core/net/bootp.c:873 grub-core/net/bootp.c:876 -msgid "[CARD]" -msgstr "[KÃRTYA]" - -#: grub-core/net/bootp.c:874 -msgid "perform a bootp autoconfiguration" -msgstr "egy bootp automatikus beállítás végrehajtása" - -#: grub-core/net/bootp.c:877 -#, fuzzy -msgid "perform a DHCP autoconfiguration" -msgstr "egy bootp automatikus beállítás végrehajtása" - -#: grub-core/net/bootp.c:879 -msgid "VAR INTERFACE NUMBER DESCRIPTION" -msgstr "VÃLTOZÓ CSATOLÓ SZÃM LEÃRÃS" - -#: grub-core/net/bootp.c:880 -msgid "" -"retrieve DHCP option and save it into VAR. If VAR is - then print the value." -msgstr "" -"DHCP kapcsoló lekérése és elmentése a VÃLTOZÓBA. Ha a VÃLTOZÓ -, akkor " -"kiírja az értéket." - -#: grub-core/net/dns.c:459 -msgid "no DNS servers configured" -msgstr "nincsenek beállított DNS kiszolgálók" - -#: grub-core/net/dns.c:522 -msgid "domain name component is too long" -msgstr "a tartománynév komponens túl hosszú" - -#: grub-core/net/dns.c:618 grub-core/net/dns.c:666 -msgid "no DNS record found" -msgstr "nem található DNS rekord" - -#: grub-core/net/dns.c:626 -msgid "no DNS reply received" -msgstr "nem érkezett DNS válasz" - -#: grub-core/net/dns.c:682 -msgid "only ipv4" -msgstr "csak ipv4" - -#: grub-core/net/dns.c:686 -msgid "only ipv6" -msgstr "csak ipv6" - -#: grub-core/net/dns.c:690 -msgid "prefer ipv4" -msgstr "ipv4 elÅ‘nyben részesítése" - -#: grub-core/net/dns.c:694 -msgid "prefer ipv6" -msgstr "ipv6 elÅ‘nyben részesítése" - -#: grub-core/net/dns.c:759 -msgid "ADDRESS DNSSERVER" -msgstr "CÃM DNSKISZOLGÃLÓ" - -#: grub-core/net/dns.c:760 -msgid "Perform a DNS lookup" -msgstr "Egy DNS keresés végrehajtása" - -#: grub-core/net/dns.c:762 grub-core/net/dns.c:765 -msgid "DNSSERVER" -msgstr "DNSKISZOLGÃLÓ" - -#: grub-core/net/dns.c:763 -msgid "Add a DNS server" -msgstr "Egy DNS kiszolgáló hozzáadása" - -#: grub-core/net/dns.c:766 -msgid "Remove a DNS server" -msgstr "Egy DNS kiszolgáló eltávolítása" - -#: grub-core/net/dns.c:768 -msgid "List DNS servers" -msgstr "DNS kiszolgálók felsorolása" - -#: grub-core/net/drivers/efi/efinet.c:49 grub-core/net/drivers/efi/efinet.c:65 -#: grub-core/net/drivers/efi/efinet.c:77 grub-core/net/drivers/emu/emunet.c:62 -#: grub-core/net/drivers/i386/pc/pxe.c:273 -#: grub-core/net/drivers/ieee1275/ofnet.c:75 -#: grub-core/net/drivers/uboot/ubootnet.c:62 -msgid "couldn't send network packet" -msgstr "nem sikerült elküldeni a hálózati csomagot" - -#: grub-core/net/drivers/ieee1275/ofnet.c:326 -#: grub-core/net/drivers/ieee1275/ofnet.c:359 -msgid "interpret is not supported" -msgstr "az interpret nem támogatott" - -#: grub-core/net/drivers/ieee1275/ofnet.c:336 -msgid "alloc-mem failed" -msgstr "az alloc-mem sikertelen" - -#: grub-core/net/drivers/ieee1275/ofnet.c:370 -msgid "free-mem failed" -msgstr "a free-mem sikertelen" - -#: grub-core/net/http.c:105 -msgid "unsupported HTTP response" -msgstr "nem támogatott HTTP válasz" - -#. TRANSLATORS: GRUB HTTP code is pretty young. So even perfectly -#. valid answers like 403 will trigger this very generic message. -#: grub-core/net/http.c:126 -#, c-format -msgid "unsupported HTTP error %d: %s" -msgstr "nem támogatott %d HTTP hiba: %s" - -#: grub-core/net/http.c:429 grub-core/net/tftp.c:420 -#, c-format -msgid "time out opening `%s'" -msgstr "„%s†megnyitása túllépte az idÅ‘korlátot" - -#: grub-core/net/net.c:179 -msgid "timeout: could not resolve hardware address" -msgstr "idÅ‘túllépés: nem sikerült feloldani a hardvercímet" - -#: grub-core/net/net.c:548 -#, c-format -msgid "unresolvable address %s" -msgstr "feloldhatatlan cím: %s" - -#: grub-core/net/net.c:594 -#, c-format -msgid "unrecognised network address `%s'" -msgstr "azonosítatlan hálózati cím: „%sâ€" - -#: grub-core/net/net.c:661 -msgid "destination unreachable" -msgstr "a cél elérhetetlen" - -#. TRANSLATORS: route loop is a condition when e.g. -#. to contact server A you need to go through B -#. and to contact B you need to go through A. -#: grub-core/net/net.c:684 -msgid "route loop detected" -msgstr "úthurok észlelhetÅ‘" - -#: grub-core/net/net.c:700 -msgid "address not found" -msgstr "a cím nem található" - -#: grub-core/net/net.c:704 -msgid "you can't delete this address" -msgstr "nem törölheti ezt a címet" - -#: grub-core/net/net.c:776 grub-core/net/net.c:792 -#, c-format -msgid "Unsupported hw address type %d\n" -msgstr "Nem támogatott hardvercím típus: %d\n" - -#: grub-core/net/net.c:813 -#, c-format -msgid "Unsupported address type %d\n" -msgstr "Nem támogatott címtípus: %d\n" - -#: grub-core/net/net.c:1017 grub-core/net/net.c:1131 -msgid "three arguments expected" -msgstr "három argumentumot kell megadni" - -#: grub-core/net/net.c:1023 -msgid "card not found" -msgstr "nem található kártya" - -#. TRANSLATORS: it refers to the network address. -#: grub-core/net/net.c:1167 -msgid "temporary" -msgstr "átmeneti" - -#: grub-core/net/net.c:1190 -#, c-format -msgid "Unknown address type %d\n" -msgstr "Ismeretlen címtípus: %d\n" - -#: grub-core/net/net.c:1298 -msgid "no server is specified" -msgstr "nincs kiszolgáló megadva" - -#: grub-core/net/net.c:1637 -#, c-format -msgid "timeout reading `%s'" -msgstr "„%s†olvasása túllépte az idÅ‘korlátot" - -#. TRANSLATORS: HWADDRESS stands for -#. "hardware address". -#: grub-core/net/net.c:1762 -msgid "SHORTNAME CARD ADDRESS [HWADDRESS]" -msgstr "RÖVIDNÉV KÃRTYA CÃM [HARDVERCÃM]" - -#: grub-core/net/net.c:1763 -msgid "Add a network address." -msgstr "Egy hálózati cím hozzáadása." - -#: grub-core/net/net.c:1766 -msgid "[CARD [HWADDRESS]]" -msgstr "[KÃRTYA [HARDVERCÃM]]" - -#: grub-core/net/net.c:1767 -msgid "Perform an IPV6 autoconfiguration" -msgstr "Egy IPv6 automatikus beállítás végrehajtása" - -#: grub-core/net/net.c:1770 grub-core/net/net.c:1777 -msgid "SHORTNAME" -msgstr "RÖVIDNÉV" - -#: grub-core/net/net.c:1771 -msgid "Delete a network address." -msgstr "Egy hálózati cím törlése." - -#. TRANSLATORS: "gw" is a keyword. -#: grub-core/net/net.c:1774 -msgid "SHORTNAME NET [INTERFACE| gw GATEWAY]" -msgstr "RÖVIDNÉV NET [CSATOLÓ| gw ÃTJÃRÓ]" - -#: grub-core/net/net.c:1775 -msgid "Add a network route." -msgstr "Egy hálózati út hozzáadása." - -#: grub-core/net/net.c:1778 -msgid "Delete a network route." -msgstr "Egy hálózati út törlése." - -#: grub-core/net/net.c:1780 -msgid "list network routes" -msgstr "hálózati utak felsorolása" - -#: grub-core/net/net.c:1782 -msgid "list network cards" -msgstr "hálózati kártyák felsorolása" - -#: grub-core/net/net.c:1784 -msgid "list network addresses" -msgstr "hálózati címek felsorolása" - -#: grub-core/net/tcp.c:681 -msgid "connection refused" -msgstr "kapcsolat visszautasítva" - -#: grub-core/net/tcp.c:684 -msgid "connection timeout" -msgstr "kapcsolati idÅ‘túllépés" - -#: grub-core/normal/auth.c:220 -msgid "Enter username: " -msgstr "Adja meg a felhasználónevet: " - -#: grub-core/normal/auth.c:269 -msgid "[USERLIST]" -msgstr "[FELHASZNÃLÓLISTA]" - -#: grub-core/normal/auth.c:270 -msgid "Check whether user is in USERLIST." -msgstr "EllenÅ‘rzés, hogy a felhasználó rajta van-e a FELHASZNÃLÓLISTÃN." - -#: grub-core/normal/cmdline.c:174 grub-core/normal/menu_entry.c:1068 -msgid "Possible commands are:" -msgstr "A lehetséges parancsok:" - -#: grub-core/normal/cmdline.c:177 grub-core/normal/menu_entry.c:1072 -msgid "Possible devices are:" -msgstr "A lehetséges eszközök:" - -#: grub-core/normal/cmdline.c:180 grub-core/normal/menu_entry.c:1076 -msgid "Possible files are:" -msgstr "A lehetséges fájlok:" - -#: grub-core/normal/cmdline.c:183 grub-core/normal/menu_entry.c:1080 -msgid "Possible partitions are:" -msgstr "A lehetséges partíciók:" - -#: grub-core/normal/cmdline.c:186 grub-core/normal/menu_entry.c:1084 -msgid "Possible arguments are:" -msgstr "A lehetséges argumentumok:" - -#. TRANSLATORS: this message is used if none of above matches. -#. This shouldn't happen but please use the general term for -#. "thing" or "object". -#: grub-core/normal/cmdline.c:192 grub-core/normal/menu_entry.c:1088 -msgid "Possible things are:" -msgstr "A lehetséges dolgok:" - -#: grub-core/normal/color.c:81 -#, c-format -msgid "Warning: syntax error (missing slash) in `%s'\n" -msgstr "Figyelmeztetés: szintaktikai hiba (hiányzó perjel) itt: „%sâ€\n" - -#: grub-core/normal/color.c:90 -#, c-format -msgid "Warning: invalid foreground color `%s'\n" -msgstr "Figyelmeztetés: érvénytelen elÅ‘térszín: „%sâ€\n" - -#: grub-core/normal/color.c:96 -#, c-format -msgid "Warning: invalid background color `%s'\n" -msgstr "Figyelmeztetés: érvénytelen háttérszín: „%sâ€\n" - -#: grub-core/normal/context.c:206 -msgid "ENVVAR [ENVVAR] ..." -msgstr "KÖRNYVÃLT [KÖRNYVÃLT] …" - -#: grub-core/normal/context.c:207 -msgid "Export variables." -msgstr "Változók exportálása." - -#: grub-core/normal/datetime.c:25 -msgid "Sunday" -msgstr "Vasárnap" - -#: grub-core/normal/datetime.c:26 -msgid "Monday" -msgstr "HétfÅ‘" - -#: grub-core/normal/datetime.c:27 -msgid "Tuesday" -msgstr "Kedd" - -#: grub-core/normal/datetime.c:28 -msgid "Wednesday" -msgstr "Szerda" - -#: grub-core/normal/datetime.c:29 -msgid "Thursday" -msgstr "Csütörtök" - -#: grub-core/normal/datetime.c:30 -msgid "Friday" -msgstr "Péntek" - -#: grub-core/normal/datetime.c:31 -msgid "Saturday" -msgstr "Szombat" - -#: grub-core/normal/dyncmd.c:187 -msgid "module isn't loaded" -msgstr "a modul nincs betöltve" - -#: grub-core/normal/main.c:211 -#, c-format -msgid "GNU GRUB version %s" -msgstr "GNU GRUB %s verzió" - -#: grub-core/normal/main.c:360 -msgid "ESC at any time exits." -msgstr "Az ESC mindig kilép." - -#: grub-core/normal/main.c:363 -#, c-format -msgid "" -"Minimal BASH-like line editing is supported. For the first word, TAB lists " -"possible command completions. Anywhere else TAB lists possible device or " -"file completions. %s" -msgstr "" -"Minimális BASH-szerű szerkesztés támogatott. Az elsÅ‘ szóhoz a TAB felsorolja " -"a lehetséges parancskiegészítéseket. Bárhol máshol a TAB felsorolja a " -"lehetséges eszköz- vagy fájlkiegészítéseket. %s" - -#. TRANSLATORS: it's command line prompt. -#: grub-core/normal/main.c:395 -msgid ">" -msgstr ">" - -#. TRANSLATORS: it's command line prompt. -#: grub-core/normal/main.c:398 -msgid "grub>" -msgstr "grub>" - -#: grub-core/normal/main.c:518 -msgid "Clear the screen." -msgstr "A képernyÅ‘ törlése." - -#: grub-core/normal/main.c:527 -msgid "Enter normal mode." -msgstr "Belépés a normál módba." - -#: grub-core/normal/main.c:529 -msgid "Exit from normal mode." -msgstr "Kilépés a normál módból." - -#: grub-core/normal/menu.c:66 grub-core/normal/menu_entry.c:1449 -msgid "Press any key to continue..." -msgstr "Nyomjon meg egy billentyűt a folytatáshoz…" - -#: grub-core/normal/menu.c:815 -#, c-format -msgid "Booting `%s'" -msgstr "„%s†indítása" - -#: grub-core/normal/menu.c:827 -#, c-format -msgid "Falling back to `%s'" -msgstr "Visszaváltás erre: „%sâ€" - -#: grub-core/normal/menu.c:843 -msgid "Failed to boot both default and fallback entries.\n" -msgstr "Az alapértelmezett és a tartalék bejegyzések indítása is sikertelen.\n" - -#: grub-core/normal/menu_entry.c:1171 -msgid "Booting a command list" -msgstr "Parancslista indítása" - -#: grub-core/normal/menu_text.c:160 -msgid "" -"Minimum Emacs-like screen editing is supported. TAB lists completions. Press " -"Ctrl-x or F10 to boot, Ctrl-c or F2 for a command-line or ESC to discard " -"edits and return to the GRUB menu." -msgstr "" -"Minimális Emacs-szerű képernyÅ‘szerkesztés támogatott. A TAB felsorolja a " -"kiegészítési lehetÅ‘ségeket. Nyomja meg a Ctrl-x kombinációt vagy az F10-et " -"az indításhoz, a Ctrl-c kombinációt vagy az F2-t a parancssorhoz, vagy az " -"ESC-t a szerkesztések eldobásához és visszatéréshez a GRUB menübe." - -#: grub-core/normal/menu_text.c:170 -#, c-format -msgid "Use the %C and %C keys to select which entry is highlighted." -msgstr "A kiemelt elem kijelöléséhez használja a(z) %C és %C billentyűket." - -#. TRANSLATORS: that's the list of binary unit prefixes. -#: grub-core/normal/misc.c:38 -msgid "B" -msgstr "B" - -#: grub-core/normal/misc.c:38 -msgid "KiB" -msgstr "KiB" - -#: grub-core/normal/misc.c:38 -msgid "MiB" -msgstr "MiB" - -#: grub-core/normal/misc.c:38 -msgid "GiB" -msgstr "GiB" - -#: grub-core/normal/misc.c:38 -msgid "TiB" -msgstr "TiB" - -#: grub-core/normal/misc.c:38 -msgid "PiB" -msgstr "PiB" - -#. TRANSLATORS: that's the list of binary unit prefixes. -#: grub-core/normal/misc.c:40 -msgid "K" -msgstr "K" - -#: grub-core/normal/misc.c:40 -msgid "M" -msgstr "M" - -#: grub-core/normal/misc.c:40 -msgid "G" -msgstr "G" - -#: grub-core/normal/misc.c:40 -msgid "T" -msgstr "T" - -#: grub-core/normal/misc.c:40 -msgid "P" -msgstr "P" - -#. TRANSLATORS: that's the list of binary unit prefixes. -#: grub-core/normal/misc.c:42 -msgid "B/s" -msgstr "B/s" - -#: grub-core/normal/misc.c:42 -msgid "KiB/s" -msgstr "KiB/s" - -#: grub-core/normal/misc.c:42 -msgid "MiB/s" -msgstr "MiB/s" - -#: grub-core/normal/misc.c:42 -msgid "GiB/s" -msgstr "GiB/s" - -#: grub-core/normal/misc.c:42 -msgid "TiB/s" -msgstr "TiB/s" - -#: grub-core/normal/misc.c:42 -msgid "PiB/s" -msgstr "PiB/s" - -#: grub-core/normal/misc.c:96 -#, c-format -msgid "Partition %s:" -msgstr "%s partíció:" - -#: grub-core/normal/misc.c:101 -#, c-format -msgid "Device %s:" -msgstr "%s eszköz:" - -#: grub-core/normal/misc.c:107 -msgid "Filesystem cannot be accessed" -msgstr "A fájlrendszer nem hozzáférhetÅ‘" - -#: grub-core/normal/misc.c:121 -#, c-format -msgid "Filesystem type %s" -msgstr "Fájlrendszer típusa: %s" - -#: grub-core/normal/misc.c:131 -#, c-format -msgid "- Label `%s'" -msgstr "- Címke: „%sâ€" - -#. TRANSLATORS: Arguments are year, month, day, hour, minute, -#. second, day of the week (translated). -#: grub-core/normal/misc.c:148 -#, c-format -msgid "- Last modification time %d-%02d-%02d %02d:%02d:%02d %s" -msgstr "- Utolsó módosítás ideje: %d-%02d-%02d %02d.%02d.%02d %s" - -#: grub-core/normal/misc.c:171 -msgid "No known filesystem detected" -msgstr "Nem található ismert fájlrendszer" - -#: grub-core/normal/misc.c:174 -#, c-format -msgid " - Partition start at %llu%sKiB" -msgstr " - Partíció kezdete: %llu%sKiB" - -#: grub-core/normal/misc.c:178 -#, c-format -msgid " - Sector size %uB" -msgstr " - Szektorméret: %uB" - -#: grub-core/normal/misc.c:180 -msgid " - Total size unknown" -msgstr " - Teljes méret ismeretlen" - -#: grub-core/normal/misc.c:182 -#, c-format -msgid " - Total size %llu%sKiB" -msgstr " - Teljes méret: %llu%sKiB" - -#. TRANSLATORS: Replace dot with appropriate decimal separator for -#. your language. -#: grub-core/normal/misc.c:186 -msgid ".5" -msgstr ",5" - -#. TRANSLATORS: This has to fit on one line. It's ok to include few -#. words but don't write poems. -#: grub-core/normal/term.c:82 -msgid "--MORE--" -msgstr "--TOVÃBB--" - -#: grub-core/osdep/aros/config.c:92 grub-core/osdep/unix/config.c:137 -#: grub-core/osdep/windows/config.c:55 -#, c-format -msgid "cannot open configuration file `%s': %s" -msgstr "nem nyitható meg a(z) „%s†konfigurációs fájl: %s" - -#: grub-core/osdep/basic/compress.c:8 grub-core/osdep/basic/compress.c:14 -#: grub-core/osdep/basic/compress.c:20 -msgid "no compression is available for your platform" -msgstr "nem érhetÅ‘ el tömörítés a platformhoz" - -#: grub-core/osdep/basic/no_platform.c:30 -#: grub-core/osdep/windows/platform.c:418 -msgid "no IEEE1275 routines are available for your platform" -msgstr "nem érhetÅ‘k el IEEE1275 rutinok a platformhoz" - -#: grub-core/osdep/basic/no_platform.c:38 -msgid "no EFI routines are available for your platform" -msgstr "nem érhetÅ‘k el EFI rutinok a platformhoz" - -#: grub-core/osdep/basic/no_platform.c:45 -#: grub-core/osdep/windows/platform.c:425 -msgid "no SGI routines are available for your platform" -msgstr "nem érhetÅ‘k el SGI rutinok a platformhoz" - -#. TRANSLATORS: The OS itself may very well have a random -#. number generator but GRUB doesn't know how to access it. -#: grub-core/osdep/basic/random.c:42 -msgid "no random number generator is available for your OS" -msgstr "nem érhetÅ‘ el véletlen szám generátor az operációs rendszerhez" - -#: grub-core/osdep/devmapper/getroot.c:81 -msgid "Failed to create `device-mapper' tree" -msgstr "A „device-mapper†fa előállítása sikertelen" - -#: grub-core/osdep/devmapper/getroot.c:197 -#: grub-core/osdep/freebsd/getroot.c:202 -#, c-format -msgid "can't mount encrypted volume `%s': %s" -msgstr "nem lehet csatolni a titkosított „%s†kötetet: %s" - -#. TRANSLATORS: geom is the name of (k)FreeBSD device framework. -#. Usually left untranslated. -#. -#: grub-core/osdep/freebsd/getroot.c:82 grub-core/osdep/freebsd/getroot.c:164 -#: grub-core/osdep/freebsd/getroot.c:258 grub-core/osdep/freebsd/getroot.c:316 -msgid "couldn't open geom" -msgstr "a geom megnyitása nem sikerült" - -#: grub-core/osdep/freebsd/getroot.c:182 grub-core/osdep/freebsd/getroot.c:277 -msgid "couldn't find geli consumer" -msgstr "nem található geli fogyasztó" - -#: grub-core/osdep/freebsd/getroot.c:282 -msgid "couldn't retrieve geli UUID" -msgstr "a geli UUID lekérése nem sikerült" - -#. TRANSLATORS: geom is the name of (k)FreeBSD device framework. -#. Usually left untranslated. "part" is the identifier of one of its -#. classes. -#: grub-core/osdep/freebsd/getroot.c:325 -msgid "couldn't find geom `part' class" -msgstr "nem található geom „part†osztály" - -#: grub-core/osdep/freebsd/hostdisk.c:72 grub-core/osdep/linux/hostdisk.c:93 -msgid "unaligned device size" -msgstr "igazítatlan eszközméret" - -#: grub-core/osdep/generic/blocklist.c:56 -#, c-format -msgid "attempting to read the core image `%s' from GRUB" -msgstr "kísérlet a(z) „%s†magkép beolvasására a GRUB-ból" - -#: grub-core/osdep/generic/blocklist.c:57 -#, c-format -msgid "attempting to read the core image `%s' from GRUB again" -msgstr "kísérlet a(z) „%s†magkép beolvasására a GRUB-ból újra" - -#: grub-core/osdep/generic/blocklist.c:115 -#, c-format -msgid "cannot read `%s' correctly" -msgstr "„%s†nem olvasható be megfelelÅ‘en" - -#: grub-core/osdep/generic/blocklist.c:126 -msgid "failed to read the sectors of the core image" -msgstr "a magkép szektorainak beolvasása meghiúsult" - -#. TRANSLATORS: On GNU/Hurd, a "translator" is similar to a filesystem -#. mount, but handled by a userland daemon, whose invocation command line -#. is being fetched here. First %s is the file being looked at (for which -#. we are fetching the "translator" command line), second %s is the error -#. message. -#. -#: grub-core/osdep/hurd/getroot.c:79 -#, c-format -msgid "cannot get translator command line for path `%s': %s" -msgstr "nem lehet a fordító parancssort megszerezni a(z) „%s†útvonalhoz: %s" - -#: grub-core/osdep/hurd/getroot.c:82 -#, c-format -msgid "translator command line is empty for path `%s'" -msgstr "a fordító parancssor üres a(z) „%s†útvonalnál" - -#. TRANSLATORS: we expect to get something like -#. /hurd/foobar --option1 --option2=baz /dev/something -#. -#: grub-core/osdep/hurd/getroot.c:98 -#, c-format -msgid "" -"translator `%s' for path `%s' has several non-option words, at least `%s' " -"and `%s'" -msgstr "" -"a(z) „%s†fordítónak a(z) „%s†útvonalnál számos nem kapcsoló szavai vannak, " -"legalább „%s†és „%sâ€" - -#. TRANSLATORS: we expect to get something like -#. /hurd/foobar --option1 --option2=baz /dev/something -#. -#: grub-core/osdep/hurd/getroot.c:109 -#, c-format -msgid "" -"translator `%s' for path `%s' is given only options, cannot find device part" -msgstr "" -"a(z) „%s†fordító a(z) „%s†útvonalnál csak kapcsolókat adott meg, nem " -"található az eszközrész" - -#: grub-core/osdep/hurd/hostdisk.c:73 -#, c-format -msgid "Storage information for `%s' does not include type" -msgstr "A(z) „%s†tároló-információi nem tartalmaznak típust" - -#: grub-core/osdep/hurd/hostdisk.c:75 -#, c-format -msgid "`%s' is not a local disk" -msgstr "„%s†nem helyi lemez" - -#: grub-core/osdep/hurd/hostdisk.c:78 -#, c-format -msgid "" -"Storage information for `%s' indicates neither a plain partition nor a plain " -"disk" -msgstr "" -"A(z) „%s†tároló-információi nem jeleznek sem egyszerű partíciót, sem " -"egyszerű lemezt" - -#: grub-core/osdep/linux/blocklist.c:81 grub-core/osdep/linux/blocklist.c:96 -#: grub-core/osdep/linux/blocklist.c:122 -#, c-format -msgid "can't retrieve blocklists: %s" -msgstr "nem lehet lekérni a blokklistákat: %s" - -#: grub-core/osdep/linux/blocklist.c:84 -msgid "blocksize is not divisible by 512" -msgstr "a blokkméret nem osztható 512-vel" - -#: grub-core/osdep/linux/blocklist.c:86 -msgid "invalid zero blocksize" -msgstr "érvénytelen nulla blokkméret" - -#: grub-core/osdep/linux/blocklist.c:90 util/setup.c:744 -msgid "can't retrieve blocklists" -msgstr "nem lehet lekérni a blokklistákat" - -#: grub-core/osdep/linux/getroot.c:154 -#, c-format -msgid "ioctl RAID_VERSION error: %s" -msgstr "ioctl RAID_VERSION hiba: %s" - -#: grub-core/osdep/linux/getroot.c:160 grub-core/osdep/linux/getroot.c:164 -#, c-format -msgid "unsupported RAID version: %d.%d" -msgstr "nem támogatott RAID verzió: %d.%d" - -#: grub-core/osdep/linux/getroot.c:169 -#, c-format -msgid "ioctl GET_ARRAY_INFO error: %s" -msgstr "ioctl GET_ARRAY_INFO hiba: %s" - -#: grub-core/osdep/linux/getroot.c:178 -#, c-format -msgid "ioctl GET_DISK_INFO error: %s" -msgstr "ioctl GET_DISK_INFO hiba: %s" - -#: grub-core/osdep/linux/getroot.c:608 grub-core/osdep/linux/getroot.c:678 -#: grub-core/osdep/linux/hostdisk.c:126 grub-core/osdep/unix/getroot.c:253 -#: grub-core/osdep/unix/getroot.c:642 grub-core/osdep/unix/platform.c:92 -#: grub-core/osdep/unix/platform.c:100 -#, c-format -msgid "Unable to open stream from %s: %s" -msgstr "Nem lehet megnyitni a folyamot innen: %s: %s" - -#: grub-core/osdep/linux/getroot.c:1033 -#, c-format -msgid "unknown kind of RAID device `%s'" -msgstr "a RAID eszköz fajtája ismeretlen: „%sâ€" - -#: grub-core/osdep/linux/ofpath.c:181 -#, c-format -msgid "`obppath' not found in parent dirs of `%s', no IEEE1275 name discovery" -msgstr "" -"az „obppath†nem található a(z) „%s†szülÅ‘ könyvtáraiban, nincs IEEE1275 név " -"felderítés" - -#: grub-core/osdep/linux/ofpath.c:222 grub-core/osdep/unix/getroot.c:505 -#: grub-core/osdep/unix/getroot.c:529 grub-core/osdep/unix/relpath.c:49 -#: util/grub-install.c:984 util/grub-install.c:1331 util/grub-probe.c:323 -#, c-format -msgid "failed to get canonical path of `%s'" -msgstr "„%s†egyszerűsített útvonalának lekérése sikertelen" - -#: grub-core/osdep/linux/ofpath.c:740 -#, c-format -msgid "unknown device type %s" -msgstr "ismeretlen eszköztípus: %s" - -#: grub-core/osdep/linux/ofpath.c:758 util/ieee1275/grub-ofpathname.c:39 -#, c-format -msgid "Usage: %s DEVICE\n" -msgstr "Használat: %s ESZKÖZ\n" - -#: grub-core/osdep/unix/exec.c:86 grub-core/osdep/unix/exec.c:172 -#: grub-core/osdep/unix/exec.c:217 -#, c-format -msgid "Unable to fork: %s" -msgstr "Nem lehet elágazni: %s" - -#: grub-core/osdep/unix/exec.c:166 grub-core/osdep/unix/exec.c:211 -#, c-format -msgid "Unable to create pipe: %s" -msgstr "Nem lehet csövet létrehozni: %s" - -#: grub-core/osdep/unix/getroot.c:370 -#, fuzzy -msgid "cannot save the original directory" -msgstr "nem lehet visszaállítani az eredeti könyvtárat" - -#: grub-core/osdep/unix/getroot.c:423 grub-core/osdep/unix/getroot.c:480 -#: grub-core/osdep/unix/getroot.c:489 -msgid "cannot restore the original directory" -msgstr "nem lehet visszaállítani az eredeti könyvtárat" - -#. TRANSLATORS: "stat" comes from the name of POSIX function. -#: grub-core/osdep/unix/getroot.c:551 grub-core/osdep/unix/hostdisk.c:61 -#: grub-core/osdep/unix/relpath.c:73 grub-core/osdep/unix/relpath.c:97 -#: util/getroot.c:160 util/getroot.c:162 util/grub-install.c:774 -#: util/grub-macbless.c:70 -#, c-format -msgid "cannot stat `%s': %s" -msgstr "nem lehet elérni: „%sâ€: %s" - -#: grub-core/osdep/unix/hostdisk.c:293 -#, c-format -msgid "cannot make temporary file: %s" -msgstr "nem hozható létre átmeneti fájl: %s" - -#: grub-core/osdep/unix/hostdisk.c:311 -#, c-format -msgid "cannot make temporary directory: %s" -msgstr "nem hozható létre átmeneti könyvtár: %s" - -#: grub-core/osdep/unix/platform.c:77 -#, c-format -msgid "" -"couldn't find IEEE1275 device path for %s.\n" -"You will have to set `boot-device' variable manually" -msgstr "" -"nem található az IEEE1275 eszköz útvonala ehhez: %s.\n" -"Kézzel kell majd beállítania a „boot-device†változót." - -#. TRANSLATORS: This message is shown when required executable `%s' -#. isn't found. -#: grub-core/osdep/unix/platform.c:149 grub-core/osdep/unix/platform.c:189 -#, c-format -msgid "%s: not found" -msgstr "%s: nem található" - -#: grub-core/osdep/unix/platform.c:225 -#, c-format -msgid "" -"`nvsetenv' failed. \n" -"You will have to set `boot-device' variable manually. At the IEEE1275 " -"prompt, type:\n" -" %s\n" -msgstr "" -"az „nvsetenv†meghiúsult.\n" -"Kézzel kell majd beállítania a „boot-device†változót. Az IEEE1275 " -"parancssorba gépelje be:\n" -" %s\n" - -#: grub-core/osdep/unix/platform.c:240 -msgid "You will have to set `SystemPartition' and `OSLoader' manually." -msgstr "" -"Kézzel kell majd beállítania a „SystemPartition†és az „OSLoader†értékét." - -#. TRANSLATORS: canonical pathname is the -#. complete one e.g. /etc/fstab. It has -#. to contain `/' normally, if it doesn't -#. we're in trouble and throw this error. -#: grub-core/osdep/unix/relpath.c:90 -msgid "no `/' in canonical filename" -msgstr "nincs „/†az egyszerűsített fájlnévben" - -#: grub-core/osdep/windows/hostdisk.c:151 -msgid "cygwin_conv_path() failed" -msgstr "cygwin_conv_path() sikertelen" - -#: grub-core/osdep/windows/hostdisk.c:501 util/grub-install.c:570 -msgid "couldn't retrieve random data" -msgstr "nem sikerült lekérni a véletlen adatokat" - -#: grub-core/osdep/windows/platform.c:97 -msgid "Insufficient privileges to access firmware, assuming BIOS" -msgstr "" -"Nincs megfelelÅ‘ jogosultság a firmware hozzáféréséhez, BIOS feltételezve" - -#: grub-core/osdep/windows/platform.c:225 -msgid "no EFI routines are available when running in BIOS mode" -msgstr "nem érhetÅ‘k el EFI rutinok a BIOS módban való futtatáskor" - -#: grub-core/osdep/windows/platform.c:240 -msgid "unexpected EFI error" -msgstr "váratlan EFI hiba" - -#: grub-core/osdep/windows/platform.c:315 -msgid "Couldn't find a free BootNNNN slot" -msgstr "Nem található szabad BootNNNN tárolóhely" - -#: grub-core/partmap/gpt.c:191 -msgid "" -"this GPT partition label contains no BIOS Boot Partition; embedding won't be " -"possible" -msgstr "" -"ez a GPT partíciós címke nem tartalmaz BIOS indítási partíciót, a beágyazás " -"nem lesz lehetséges" - -#: grub-core/partmap/gpt.c:196 -msgid "your BIOS Boot Partition is too small; embedding won't be possible" -msgstr "a BIOS indítási partíciója túl kicsi, a beágyazás nem lesz lehetséges" - -#. TRANSLATORS: MBR gap and boot track is the same thing and is the space -#. between MBR and first partitition. If your language translates well only -#. "boot track", you can just use it everywhere. Next two messages are about -#. RAID controllers/software bugs which GRUB has to live with. Please spread -#. the message that these are bugs in other software and not merely -#. suboptimal behaviour. -#: grub-core/partmap/msdos.c:51 -#, c-format -msgid "" -"Sector %llu is already in use by raid controller `%s'; avoiding it. Please " -"ask the manufacturer not to store data in MBR gap" -msgstr "" -"A(z) %llu szektort a(z) „%s†raid-vezérlÅ‘ már használja, elkerülés. Kérje " -"meg a gyártót, hogy ne tároljon adatokat az MBR résben." - -#: grub-core/partmap/msdos.c:54 -#, c-format -msgid "" -"Sector %llu is already in use by the program `%s'; avoiding it. This " -"software may cause boot or other problems in future. Please ask its authors " -"not to store data in the boot track" -msgstr "" -"A(z) %llu szektort a(z) „%s†program már használja, elkerülés. Ez a szoftver " -"indítási vagy egyéb problémákat okozhat a jövÅ‘ben. Kérje meg a szerzÅ‘it, " -"hogy ne tároljanak adatokat az indítási sávban." - -#: grub-core/partmap/msdos.c:384 -msgid "" -"other software is using the embedding area, and there is not enough room for " -"core.img. Such software is often trying to store data in a way that avoids " -"detection. We recommend you investigate" -msgstr "" -"más szoftverek használják a beágyazási területet, és nincs elég hely a core." -"img számára. Az ilyen szoftverek gyakran oly módon próbálnak adatokat " -"tárolni, amely elkerüli a felismerést. Azt javasoljuk, hogy nyomozza ki." - -#: grub-core/partmap/msdos.c:395 -msgid "" -"this msdos-style partition label has no post-MBR gap; embedding won't be " -"possible" -msgstr "" -"ennek az msdos-stílusú partíciós címkének nincs utó-MBR rése, a beágyazás " -"nem lesz lehetséges" - -#: grub-core/partmap/msdos.c:404 -msgid "your embedding area is unusually small. core.img won't fit in it." -msgstr "a beágyazási területe szokatlanul kicsi. A core.img nem fog beleférni." - -#: grub-core/parttool/msdospart.c:39 -msgid "Make partition active" -msgstr "Partíció aktívvá tétele" - -#: grub-core/parttool/msdospart.c:51 -msgid "not a primary partition" -msgstr "nem elsÅ‘dleges partíció" - -#: grub-core/parttool/msdospart.c:69 -#, c-format -msgid "Partition %d is active now. \n" -msgstr "A(z) %d. partíció most már aktív.\n" - -#: grub-core/parttool/msdospart.c:74 -#, c-format -msgid "Cleared active flag on %d. \n" -msgstr "Aktív jelzÅ‘ törölve ezen: %d.\n" - -#: grub-core/parttool/msdospart.c:87 -msgid "Change partition type" -msgstr "Partíciótípus módosítása" - -#: grub-core/parttool/msdospart.c:88 -msgid "Set `hidden' flag in partition type" -msgstr "A „hidden†jelzÅ‘ beállítása a partíciótípusban" - -#: grub-core/parttool/msdospart.c:130 -#, c-format -msgid "the partition type 0x%x isn't valid" -msgstr "a 0x%x partíciótípus nem érvényes" - -#. TRANSLATORS: In this case we're actually writing to the disk and actively -#. modifying partition type rather than just defining it. -#: grub-core/parttool/msdospart.c:137 -#, c-format -msgid "Setting partition type to 0x%x\n" -msgstr "Partíciótípus beállítása 0x%x értékre\n" - -#. TRANSLATORS: 0 is a quantifier. "break" (similar to bash) -#. can be used e.g. to break 3 loops at once. -#. But asking it to break 0 loops makes no sense. -#: grub-core/script/execute.c:143 -msgid "can't break 0 loops" -msgstr "nem lehet megszakítani 0 ciklust" - -#. TRANSLATORS: It's about not being -#. inside a function. "return" can be used only -#. in a function and this error occurs if it's used -#. anywhere else. -#: grub-core/script/execute.c:227 -msgid "not in function body" -msgstr "nincs a függvénytörzsben" - -#: grub-core/script/execute.c:371 -#, c-format -msgid "invalid variable name `%s'" -msgstr "érvénytelen változónév: „%sâ€" - -#: grub-core/script/execute.c:953 -msgid "cannot allocate command buffer" -msgstr "" - -#: grub-core/script/lexer.c:144 util/grub-fstest.c:330 -msgid "unexpected end of file" -msgstr "nem várt fájlvége" - -#: grub-core/script/main.c:55 grub-core/script/main.c:57 -#: grub-core/script/main.c:59 grub-core/script/main.c:67 -msgid "[NUM]" -msgstr "[SZÃM]" - -#: grub-core/script/main.c:55 -msgid "Exit from loops" -msgstr "Kilépés ciklusokból" - -#: grub-core/script/main.c:57 -msgid "Continue loops" -msgstr "Ciklusok folytatása" - -#. TRANSLATORS: Positional arguments are -#. arguments $0, $1, $2, ... -#: grub-core/script/main.c:62 -msgid "Shift positional parameters." -msgstr "Helyzeti paraméterek eltolása." - -#: grub-core/script/main.c:64 -msgid "[VALUE]..." -msgstr "[ÉRTÉK]…" - -#: grub-core/script/main.c:65 -msgid "Set positional parameters." -msgstr "Helyzeti paraméterek beállítása." - -#. TRANSLATORS: It's a command description -#. and "Return" is a verb, not a noun. The -#. command in question is "return" and -#. has exactly the same semanics as bash -#. equivalent. -#: grub-core/script/main.c:73 -msgid "Return from a function." -msgstr "Visszatérés egy függvénybÅ‘l." - -#: grub-core/term/gfxterm_background.c:176 -msgid "[-m (stretch|normal)] FILE" -msgstr "[-m (stretch|normal)] FÃJL" - -#: grub-core/term/gfxterm_background.c:177 -msgid "Load background image for active terminal." -msgstr "Háttérkép betöltése az aktív terminálhoz." - -#: grub-core/term/gfxterm_background.c:182 util/grub-install.c:302 -#: util/grub-install.c:303 util/grub-mkrescue.c:107 util/grub-mkrescue.c:108 -#: util/grub-render-label.c:61 util/grub-render-label.c:63 -msgid "COLOR" -msgstr "SZÃN" - -#: grub-core/term/gfxterm_background.c:183 -msgid "Set background color for active terminal." -msgstr "Háttérszín beállítása az aktív terminálhoz." - -#: grub-core/term/i386/coreboot/cbmemc.c:139 -msgid "Show CBMEM console content." -msgstr "CBMEM konzoltartalom megjelenítése." - -#: grub-core/term/serial.c:57 -msgid "Set the serial unit." -msgstr "A soros egység beállítása." - -#: grub-core/term/serial.c:58 -msgid "Set the serial port address." -msgstr "A soros port címének beállítása." - -#: grub-core/term/serial.c:59 -msgid "Set the serial port speed." -msgstr "A soros port sebességének beállítása." - -#: grub-core/term/serial.c:60 -msgid "Set the serial port word length." -msgstr "A soros port szóhosszának beállítása." - -#: grub-core/term/serial.c:61 -msgid "Set the serial port parity." -msgstr "A soros port paritásának beállítása." - -#: grub-core/term/serial.c:62 -msgid "Set the serial port stop bits." -msgstr "A soros port stop bitjeinek beállítása." - -#: grub-core/term/serial.c:63 -msgid "Set the base frequency." -msgstr "Az alapfrekvencia beállítása." - -#: grub-core/term/serial.c:64 -msgid "Enable/disable RTS/CTS." -msgstr "RTS/CTS engedélyezése/letiltása." - -#: grub-core/term/serial.c:218 -#, c-format -msgid "serial port `%s' isn't found" -msgstr "a(z) „%s†soros port nem található" - -#: grub-core/term/serial.c:254 -msgid "unsupported serial port flow control" -msgstr "nem támogatott soros port folyamvezérlés" - -#: grub-core/term/serial.c:429 -msgid "[OPTIONS...]" -msgstr "[KAPCSOLÓK…]" - -#: grub-core/term/serial.c:430 -msgid "Configure serial port." -msgstr "Soros port beállítása." - -#: grub-core/term/terminfo.c:184 -#, c-format -msgid "unknown terminfo type `%s'" -msgstr "ismeretlen terminfo típus: „%sâ€" - -#: grub-core/term/terminfo.c:668 -msgid "ASCII" -msgstr "ASCII" - -#: grub-core/term/terminfo.c:671 -msgid "UTF-8" -msgstr "UTF-8" - -#. TRANSLATORS: visually ordered UTF-8 is a non-compliant encoding -#. based on UTF-8 with right-to-left languages written in reverse. -#. Used on some terminals. Normal UTF-8 is refered as -#. "logically-ordered UTF-8" by opposition. -#: grub-core/term/terminfo.c:677 -msgid "visually-ordered UTF-8" -msgstr "vizuális sorrendű UTF-8" - -#: grub-core/term/terminfo.c:680 -msgid "Unknown encoding" -msgstr "Ismeretlen kódolás" - -#: grub-core/term/terminfo.c:684 -msgid "Current terminfo types:" -msgstr "Jelenlegi terminfo típusok:" - -#: grub-core/term/terminfo.c:699 -msgid "Terminal is ASCII-only [default]." -msgstr "A terminál csak ASCII [alapértelmezett]." - -#: grub-core/term/terminfo.c:700 -msgid "Terminal is logical-ordered UTF-8." -msgstr "A terminál logikai sorrendű UTF-8." - -#: grub-core/term/terminfo.c:701 -msgid "Terminal is visually-ordered UTF-8." -msgstr "A terminál vizuális sorrendű UTF-8." - -#: grub-core/term/terminfo.c:703 -msgid "Terminal has specified geometry." -msgstr "A terminálnak adott geometriája van." - -#. TRANSLATORS: "x" has to be entered in, like an identifier, so please don't -#. use better Unicode codepoints. -#: grub-core/term/terminfo.c:706 -msgid "WIDTHxHEIGHT." -msgstr "SZÉLESSÉGxMAGASSÃG." - -#: grub-core/term/terminfo.c:746 -msgid "incorrect terminal dimensions specification" -msgstr "hibás terminál dimenzió specifikáció" - -#: grub-core/term/terminfo.c:776 -#, c-format -msgid "terminal %s isn't found or it's not handled by terminfo" -msgstr "a(z) %s terminál nem található vagy nem kezeli a terminfo" - -#: grub-core/term/terminfo.c:785 -msgid "[[-a|-u|-v] [-g WxH] TERM [TYPE]]" -msgstr "[[-a|-u|-v] [-g SzxM] TERM [TÃPUS]]" - -#: grub-core/term/terminfo.c:786 -msgid "Set terminfo type of TERM to TYPE.\n" -msgstr "A TERM terminfo típusának beállítása a TÃPUSRA.\n" - -#. TRANSLATORS: this is the BLOCK-argument, not -#. environment block. -#: grub-core/tests/test_blockarg.c:49 -msgid "Print and execute block argument." -msgstr "Blokkargumentum kiírása és végrehajtása." - -#. TRANSLATORS: We're speaking about bitmap images like -#. JPEG or PNG. -#: grub-core/video/bitmap.c:209 -#, c-format -msgid "bitmap file `%s' is of unsupported format" -msgstr "a(z) %s bitmap fájl nem támogatott formátumú" - -#: grub-core/video/i386/pc/vbe.c:1191 -#, c-format -msgid " VBE info: version: %d.%d OEM software rev: %d.%d\n" -msgstr " VBE info: verzió: %d.%d OEM szoftver rev: %d.%d\n" - -#: grub-core/video/i386/pc/vbe.c:1198 -#, c-format -msgid " total memory: %d KiB\n" -msgstr " összes memória: %d KiB\n" - -#: grub-core/video/video.c:596 grub-core/video/video.c:762 -msgid "no suitable video mode found" -msgstr "nem található megfelelÅ‘ videomód" - -#: include/grub/crypto.h:403 -msgid "access denied" -msgstr "hozzáférés megtagadva" - -#: include/grub/util/install.h:30 include/grub/util/install.h:35 -msgid "MODULES" -msgstr "MODULOK" - -#: include/grub/util/install.h:31 -msgid "pre-load specified modules MODULES" -msgstr "a megadott MODULOK modulok elÅ‘töltése" - -#: include/grub/util/install.h:33 -msgid "embed a specific DTB" -msgstr "" - -#: include/grub/util/install.h:36 -msgid "install only MODULES and their dependencies [default=all]" -msgstr "" -"csak a MODULOK és azok függÅ‘ségeinek telepítése [alapértelmezett=összes]" - -#: include/grub/util/install.h:37 -msgid "THEMES" -msgstr "TÉMÃK" - -#: include/grub/util/install.h:38 -#, c-format -msgid "install THEMES [default=%s]" -msgstr "TÉMÃK telepítése [alapértelmezett=%s]" - -#: include/grub/util/install.h:39 -msgid "FONTS" -msgstr "BETŰK" - -#: include/grub/util/install.h:40 -#, c-format -msgid "install FONTS [default=%s]" -msgstr "BETŰK telepítése [alapértelmezett=%s]" - -#: include/grub/util/install.h:41 -msgid "LOCALES" -msgstr "TERÜLETI_BEÃLLÃTÃSOK" - -#: include/grub/util/install.h:42 -msgid "install only LOCALES [default=all]" -msgstr "csak a TERÜLETI_BEÃLLÃTÃSOK telepítése [alapértelmezett=összes]" - -#: include/grub/util/install.h:45 -msgid "compress GRUB files [optional]" -msgstr "GRUB fájlok tömörítése [opcionális]" - -#: include/grub/util/install.h:48 util/grub-mkimage.c:83 -msgid "choose the compression to use for core image" -msgstr "a magképhez használt tömörítés kiválasztása" - -#. TRANSLATORS: platform here isn't identifier. It can be translated. -#: include/grub/util/install.h:51 include/grub/util/install.h:54 -#: util/grub-mkimage.c:66 -#, c-format -msgid "use images and modules under DIR [default=%s/]" -msgstr "" -"a KVT könyvtárban lévÅ‘ lemezképek és modulok használata [alapértelmezett=%s/" -"]" - -#: include/grub/util/install.h:57 -#, c-format -msgid "use translations under DIR [default=%s]" -msgstr "a KVT könyvtárban lévÅ‘ fordítások használata [alapértelmezett=%s]" - -#: include/grub/util/install.h:60 -#, c-format -msgid "use themes under DIR [default=%s]" -msgstr "a KVT könyvtárban lévÅ‘ témák használata [alapértelmezett=%s]" - -#: include/grub/util/install.h:65 util/grub-mkimage.c:78 -msgid "embed FILE as public key for signature checking" -msgstr "beágyazott FÃJL mint nyilvános kulcs az aláírás-ellenÅ‘rzéshez" - -#: util/editenv.c:59 util/grub-editenv.c:201 util/grub-install-common.c:535 -#: util/grub-mkimage.c:315 util/setup.c:791 -#, fuzzy, c-format -msgid "cannot sync `%s': %s" -msgstr "„%s†nem pozicionálható: %s" - -#: util/editenv.c:64 -#, c-format -msgid "cannot rename the file %s to %s" -msgstr "nem lehet átnevezni a(z) %s fájlt erre: %s" - -#: util/getroot.c:402 -#, c-format -msgid "disk does not exist, so falling back to partition device %s" -msgstr "a lemez nem létezik, így visszatérés a(z) %s partícióeszközre" - -#: util/grub-editenv.c:45 util/grub-fstest.c:506 -msgid "Commands:" -msgstr "Parancsok:" - -#: util/grub-editenv.c:47 -msgid "Create a blank environment block file." -msgstr "Üres környezetblokk-fájl létrehozása." - -#: util/grub-editenv.c:49 -msgid "List the current variables." -msgstr "A jelenlegi változók felsorolása." - -#. TRANSLATORS: "set" is a keyword. It's a summary of "set" subcommand. -#: util/grub-editenv.c:51 -msgid "set [NAME=VALUE ...]" -msgstr "set [NÉV=ÉRTÉK …]" - -#: util/grub-editenv.c:52 -msgid "Set variables." -msgstr "Változók beállítása." - -#. TRANSLATORS: "unset" is a keyword. It's a summary of "unset" subcommand. -#: util/grub-editenv.c:54 -msgid "unset [NAME ...]" -msgstr "unset [NÉV …]" - -#: util/grub-editenv.c:55 -msgid "Delete variables." -msgstr "Változók törlése." - -#: util/grub-editenv.c:57 -msgid "Options:" -msgstr "Kapcsolók:" - -#: util/grub-editenv.c:84 -msgid "You need to specify at least one command.\n" -msgstr "Legalább egy parancsot meg kell adnia.\n" - -#: util/grub-editenv.c:113 -msgid "FILENAME COMMAND" -msgstr "FÃJLNÉV PARANCS" - -#: util/grub-editenv.c:114 -msgid "Tool to edit environment block." -msgstr "Környezetblokk szerkesztésére szolgáló eszköz." - -#: util/grub-editenv.c:116 -#, c-format -msgid "" -"If FILENAME is `-', the default value %s is used.\n" -"\n" -"There is no `delete' command; if you want to delete the whole environment\n" -"block, use `rm %s'." -msgstr "" -"Ha a FÃJLNÉV „-â€, akkor az alapértelmezett %s érték lesz használva.\n" -"\n" -"Nincs „delete†parancs, ha az egész környezetblokkot törölni szeretné, " -"használja az „rm %s†parancsot." - -#: util/grub-editenv.c:162 -msgid "invalid environment block" -msgstr "érvénytelen környezetblokk" - -#: util/grub-editenv.c:217 -#, c-format -msgid "invalid parameter %s" -msgstr "érvénytelen %s paraméter" - -#: util/grub-editenv.c:222 -msgid "environment block too small" -msgstr "a környezetblokk túl kicsi" - -#: util/grub-fstest.c:107 -#, c-format -msgid "disk read fails at offset %lld, length %lld" -msgstr "a lemezolvasás meghiúsul a(z) %lld eltolásnál, %lld hosszan" - -#: util/grub-fstest.c:138 -#, c-format -msgid "invalid skip value %lld" -msgstr "érvénytelen ugrási érték: %lld" - -#: util/grub-fstest.c:160 util/grub-fstest.c:246 -#, c-format -msgid "read error at offset %llu: %s" -msgstr "olvasási hiba a(z) %llu eltolásnál: %s" - -#: util/grub-fstest.c:210 -#, c-format -msgid "cannot open OS file `%s': %s" -msgstr "a(z) „%s†OS fájl nem nyitható meg: %s" - -#: util/grub-fstest.c:225 util/misc.c:126 -#, c-format -msgid "cannot write to the stdout: %s" -msgstr "nem lehet írni a szabványos kimenetre: %s" - -#: util/grub-fstest.c:259 -#, c-format -msgid "compare fail at offset %llu" -msgstr "összehasonlítási hiba a(z) %llu eltolásnál" - -#: util/grub-fstest.c:280 util/grub-fstest.c:314 -#, c-format -msgid "OS file %s open error: %s" -msgstr "a(z) %s OS fájl megnyitási hiba: %s" - -#: util/grub-fstest.c:402 util/grub-mount.c:392 -#, c-format -msgid "`loopback' command fails: %s" -msgstr "a „loopback†parancs meghiúsult: %s" - -#: util/grub-fstest.c:413 util/grub-mount.c:402 -#, c-format -msgid "`cryptomount' command fails: %s" -msgstr "a „cryptomount†parancs meghiúsult: %s" - -#: util/grub-fstest.c:474 util/grub-fstest.c:478 -msgid "couldn't retrieve UUID" -msgstr "az UUID lekérése nem sikerült" - -#: util/grub-fstest.c:507 -msgid "ls PATH" -msgstr "ls ÚTVONAL" - -#: util/grub-fstest.c:507 -msgid "List files in PATH." -msgstr "Fájlok felsorolása az ÚTVONALON." - -#: util/grub-fstest.c:508 -msgid "cp FILE LOCAL" -msgstr "cp FÃJL HELYI" - -#: util/grub-fstest.c:508 -msgid "Copy FILE to local file LOCAL." -msgstr "A FÃJL átmásolása a HELYI helyi fájlba." - -#: util/grub-fstest.c:509 -msgid "cat FILE" -msgstr "cat FÃJL" - -#: util/grub-fstest.c:509 -msgid "Copy FILE to standard output." -msgstr "A FÃJL átmásolása a szabványos kimenetre." - -#: util/grub-fstest.c:510 -msgid "cmp FILE LOCAL" -msgstr "cmp FÃJL HELYI" - -#: util/grub-fstest.c:510 -msgid "Compare FILE with local file LOCAL." -msgstr "A FÃJL összehasonlítása a HELYI helyi fájllal." - -#: util/grub-fstest.c:511 -msgid "hex FILE" -msgstr "hex FÃJL" - -#: util/grub-fstest.c:511 -msgid "Show contents of FILE in hex." -msgstr "A FÃJL tartalmának megjelenítése hexadecimálisan." - -#: util/grub-fstest.c:512 -msgid "crc FILE" -msgstr "crc FÃJL" - -#: util/grub-fstest.c:512 -msgid "Get crc32 checksum of FILE." -msgstr "A FÃJL crc32 ellenÅ‘rzÅ‘-összegének lekérése." - -#: util/grub-fstest.c:513 -msgid "blocklist FILE" -msgstr "blocklist FÃJL" - -#: util/grub-fstest.c:513 -msgid "Display blocklist of FILE." -msgstr "A FÃJL blokklistájának megjelenítése." - -#: util/grub-fstest.c:514 -msgid "xnu_uuid DEVICE" -msgstr "xnu_uuid ESZKÖZ" - -#: util/grub-fstest.c:514 -msgid "Compute XNU UUID of the device." -msgstr "Az eszköz XNU UUID-jának kiszámítása." - -#. TRANSLATORS: bitmaps are images like e.g. in JPEG. -#: util/grub-fstest.c:517 util/grub-fstest.c:518 util/grub-fstest.c:519 -#: util/grub-mkfont.c:938 util/grub-mkfont.c:951 util/grub-mkfont.c:952 -#: util/grub-mkpasswd-pbkdf2.c:46 util/grub-mkpasswd-pbkdf2.c:47 -#: util/grub-mkpasswd-pbkdf2.c:48 -msgid "NUM" -msgstr "SZÃM" - -#: util/grub-fstest.c:517 -msgid "Skip N bytes from output file." -msgstr "N bájt átugrása a kimeneti fájlból." - -#: util/grub-fstest.c:518 -msgid "Handle N bytes in output file." -msgstr "N bájt kezelése a kimeneti fájlban." - -#: util/grub-fstest.c:519 -msgid "Specify the number of input files." -msgstr "A bemeneti fájlok számának megadása." - -#: util/grub-fstest.c:520 util/grub-mount.c:453 -msgid "Set debug environment variable." -msgstr "Hibakeresési környezeti változó beállítása." - -#: util/grub-fstest.c:521 util/grub-mount.c:454 -msgid "Mount crypto devices." -msgstr "Titkosított eszközök csatolása." - -#. TRANSLATORS: "prompt" is a keyword. -#: util/grub-fstest.c:524 util/grub-mount.c:457 -msgid "FILE|prompt" -msgstr "FÃJL|prompt" - -#: util/grub-fstest.c:524 util/grub-mount.c:457 -msgid "Load zfs crypto key." -msgstr "Zfs titkosító kulcs betöltése." - -#: util/grub-fstest.c:526 -msgid "Uncompress data." -msgstr "Adatok kibontása." - -#: util/grub-fstest.c:605 -msgid "Invalid disk count.\n" -msgstr "Érvénytelen lemezszám.\n" - -#. TRANSLATORS: disk count is optional but if it's there it must -#. be before disk list. So please don't imply disk count as mandatory. -#. -#: util/grub-fstest.c:613 -msgid "Disk count must precede disks list.\n" -msgstr "A lemezszámnak meg kell elÅ‘znie a lemezek listáját.\n" - -#: util/grub-fstest.c:633 -msgid "No command is specified.\n" -msgstr "Nincs megadva parancs.\n" - -#: util/grub-fstest.c:638 -msgid "Not enough parameters to command.\n" -msgstr "Nincs elég paraméter a parancshoz.\n" - -#: util/grub-fstest.c:711 -#, c-format -msgid "Invalid command %s.\n" -msgstr "Érvénytelen parancs: %s.\n" - -#: util/grub-fstest.c:724 -msgid "IMAGE_PATH COMMANDS" -msgstr "KÉP_ÚTVONAL PARANCSOK" - -#: util/grub-fstest.c:725 util/grub-mount.c:553 -msgid "Debug tool for filesystem driver." -msgstr "Hibakeresési eszköz a fájlrendszer-illesztÅ‘programhoz." - -#: util/grub-glue-efi.c:53 -msgid "set input filename for 32-bit part." -msgstr "bemeneti fájlnév beállítása 32-bites részhez." - -#: util/grub-glue-efi.c:55 -msgid "set input filename for 64-bit part." -msgstr "bemeneti fájlnév beállítása 64-bites részhez." - -#: util/grub-glue-efi.c:57 util/grub-mklayout.c:55 util/grub-render-label.c:71 -msgid "set output filename. Default is STDOUT" -msgstr "kimeneti fájlnév beállítása. Az alapértelmezett az STDOUT" - -#: util/grub-glue-efi.c:94 util/grub-mklayout.c:476 -#: util/grub-mkpasswd-pbkdf2.c:86 util/grub-render-label.c:131 -msgid "[OPTIONS]" -msgstr "[KAPCSOLÓK]" - -#: util/grub-glue-efi.c:95 -msgid "Glue 32-bit and 64-bit binary into Apple universal one." -msgstr "" -"32-bites és 64-bites binárisok ragasztása egyetlen univerzális Apple-be." - -#: util/grub-glue-efi.c:116 -msgid "Missing input file\n" -msgstr "Hiányzó bemeneti fájl\n" - -#: util/grub-install-common.c:127 util/grub-install-common.c:151 -#, c-format -msgid "cannot copy `%s' to `%s': %s" -msgstr "a(z) „%s†nem másolható ide: „%sâ€: %s" - -#: util/grub-install-common.c:147 -#, c-format -msgid "can't compress `%s' to `%s'" -msgstr "a(z) „%s†nem tömöríthetÅ‘ ide: „%sâ€" - -#: util/grub-install-common.c:196 util/grub-install-common.c:552 -#: util/grub-install-common.c:579 util/grub-install-common.c:621 -#, c-format -msgid "cannot open directory `%s': %s" -msgstr "a(z) „%s†könyvtár nem nyitható meg: %s" - -#: util/grub-install-common.c:212 -#, c-format -msgid "cannot delete `%s': %s" -msgstr "a(z) „%s†nem törölhetÅ‘: %s" - -#: util/grub-install-common.c:324 util/grub-mkimage.c:209 -msgid "grub-mkimage is compiled without XZ support" -msgstr "a grub-mkimage XZ támogatás nélkül lett lefordítva" - -#: util/grub-install-common.c:332 util/grub-mkimage.c:217 -#, c-format -msgid "Unknown compression format %s" -msgstr "Ismeretlen tömörítési formátum: %s" - -#: util/grub-install-common.c:400 -#, c-format -msgid "Unrecognized compression `%s'" -msgstr "Azonosítatlan tömörítés: „%sâ€" - -#: util/grub-install-common.c:509 -#, c-format -msgid "unknown target format %s" -msgstr "ismeretlen célformátum: %s" - -#: util/grub-install-common.c:700 -#, c-format -msgid "cannot find locale `%s'" -msgstr "nem található a területi beállítás: „%sâ€" - -#: util/grub-install-common.c:939 -#, c-format -msgid "%s doesn't exist. Please specify --target or --directory" -msgstr "%s nem létezik. Adja meg a --target vagy --directory kapcsolókat." - -#: util/grub-install-common.c:948 util/grub-install-common.c:951 -#, c-format -msgid "invalid modinfo file `%s'" -msgstr "érvénytelen modinfo fájl: „%sâ€" - -#: util/grub-install-common.c:966 -#, c-format -msgid "Unknown platform `%s-%s'" -msgstr "Ismeretlen platform: „%s-%sâ€" - -#: util/grub-install.c:238 -msgid "More than one install device?" -msgstr "Több mint egy telepítési eszköz?" - -#: util/grub-install.c:251 -#, c-format -msgid "" -"install GRUB images under the directory DIR/%s instead of the %s directory" -msgstr "" -"a GRUB lemezképek telepítése a KVT/%s könyvtárba a(z) %s könyvtár helyett" - -#: util/grub-install.c:256 util/grub-probe.c:734 -msgid "TARGET" -msgstr "CÉL" - -#. TRANSLATORS: "TARGET" as in "target platform". -#: util/grub-install.c:258 -#, c-format -msgid "install GRUB for TARGET platform [default=%s]; available targets: %s" -msgstr "" -"a GRUB telepítése a CÉL platformhoz [alapértelmezett=%s]; elérhetÅ‘ célok: %s" - -#. TRANSLATORS: "may break" doesn't just mean that option wouldn't have any -#. effect but that it will make the resulting install unbootable from HDD. -#. TRANSLATORS: The potential breakage isn't limited to floppies but it's -#. likely to make the install unbootable from HDD. -#: util/grub-install.c:267 util/grub-setup.c:94 -msgid "" -"make the drive also bootable as floppy (default for fdX devices). May break " -"on some BIOSes." -msgstr "" -"a meghajtó indíthatóvá tétele floppyként (fdX eszközök esetén " -"alapértelmezett). Egyes BIOS-okkal lehet, hogy nem működik." - -#: util/grub-install.c:270 -msgid "delete device map if it already exists" -msgstr "eszköztérkép törlése, ha az már létezik" - -#: util/grub-install.c:272 util/grub-setup.c:87 -msgid "install even if problems are detected" -msgstr "telepítés akkor is, ha problémák észlelhetÅ‘k" - -#: util/grub-install.c:274 -msgid "use identifier file even if UUID is available" -msgstr "azonosítófájl használata akkor is, ha UUID érhetÅ‘ el" - -#: util/grub-install.c:276 -msgid "" -"disk module to use (biosdisk or native). This option is only available on " -"BIOS target." -msgstr "" -"a használandó lemezmodul (biosdisk vagy natív). Ez a lehetÅ‘ség csak BIOS " -"célnál érhetÅ‘ el." - -#: util/grub-install.c:279 -msgid "" -"don't update the `boot-device'/`Boot*' NVRAM variables. This option is only " -"available on EFI and IEEE1275 targets." -msgstr "" -"ne frissítse a „boot-deviceâ€/„Boot*†NVRAM változókat. Ez a lehetÅ‘ség csak " -"EFI és IEEE1275 céloknál érhetÅ‘ el." - -#: util/grub-install.c:282 util/grub-setup.c:89 -msgid "do not probe for filesystems in DEVICE" -msgstr "ne vizsgálja a fájlrendszereket az ESZKÖZÖN" - -#: util/grub-install.c:284 -msgid "do not install bootsector" -msgstr "ne telepítsen indítószektort" - -#: util/grub-install.c:286 util/grub-setup.c:96 -msgid "" -"Do not apply any reed-solomon codes when embedding core.img. This option is " -"only available on x86 BIOS targets." -msgstr "" -"Ne alkalmazzon semmilyen reed-solomon kódot a core.img beágyazásakor. Ez a " -"lehetÅ‘ség csak x86 BIOS céloknál érhetÅ‘ el." - -#: util/grub-install.c:293 -msgid "" -"the installation device is removable. This option is only available on EFI." -msgstr "" -"a telepítési eszköz eltávolítható. Ez a lehetÅ‘ség csak EFI esetén érhetÅ‘ el." - -#: util/grub-install.c:295 -msgid "ID" -msgstr "AZONOSÃTÓ" - -#: util/grub-install.c:296 -msgid "the ID of bootloader. This option is only available on EFI and Macs." -msgstr "" -"a rendszerbetöltÅ‘ AZONOSÃTÓJA. Ez a lehetÅ‘ség csak EFI és Mac-ek esetén " -"érhetÅ‘ el." - -#: util/grub-install.c:298 -msgid "use DIR as the EFI System Partition root." -msgstr "KVT használata az EFI rendszerpartíció gyökereként." - -#: util/grub-install.c:300 -msgid "use DIR for PPC MAC install." -msgstr "KVT használat PPC MAC telepítésnél." - -#: util/grub-install.c:301 util/grub-mkrescue.c:106 -msgid "use FILE as font for label" -msgstr "FÃJL használata a címke betűkészleteként" - -#: util/grub-install.c:302 util/grub-mkrescue.c:107 -msgid "use COLOR for label" -msgstr "SZÃN használata a címkénél" - -#: util/grub-install.c:303 util/grub-mkrescue.c:108 -msgid "use COLOR for label background" -msgstr "SZÃN használata a címke hátterénél" - -#: util/grub-install.c:304 util/grub-mkrescue.c:110 -msgid "use STRING as product version" -msgstr "SZÖVEG használata termékverzióként" - -#: util/grub-install.c:361 -msgid "[OPTION] [INSTALL_DEVICE]" -msgstr "[KAPCSOLÓ] [TELEPÃTÉSI_ESZKÖZ]" - -#: util/grub-install.c:362 -msgid "Install GRUB on your drive." -msgstr "GRUB telepítése a meghajtójára." - -#: util/grub-install.c:363 -#, c-format -msgid "" -"INSTALL_DEVICE must be system device filename.\n" -"%s copies GRUB images into %s. On some platforms, it may also install GRUB " -"into the boot sector." -msgstr "" -"A TELEPÃTÉSI_ESZKÖZNEK rendszereszköz fájlnévnek kell lennie.\n" -"A(z) %s átmásolja a GRUB lemezképeket ebbe: %s. Néhány platformon a indítási " -"szektorba is telepítheti a GRUB-ot." - -#: util/grub-install.c:672 -#, c-format -msgid "the drive %s is defined multiple times in the device map %s" -msgstr "a(z) %s meghajtó többször van megadva a(z) %s eszköztérképen" - -#: util/grub-install.c:878 -msgid "Unable to determine your platform. Use --target." -msgstr "Nem lehet meghatározni a platformot. Használja a --target kapcsolót." - -#: util/grub-install.c:891 -#, c-format -msgid "Installing for %s platform.\n" -msgstr "Telepítés a(z) %s platformhoz.\n" - -#: util/grub-install.c:939 -msgid "install device isn't specified" -msgstr "a telepítési eszköz nincs megadva" - -#: util/grub-install.c:1057 -msgid "cannot find EFI directory" -msgstr "nem található az EFI könyvtár" - -#: util/grub-install.c:1060 util/grub-install.c:1209 util/grub-install.c:1254 -#: util/grub-macbless.c:76 util/grub-probe.c:329 util/setup.c:316 -#, c-format -msgid "cannot find a device for %s (is /dev mounted?)" -msgstr "nem található eszköz ehhez: %s (a /dev csatolva van?)" - -#: util/grub-install.c:1069 util/grub-install.c:1217 util/grub-install.c:1270 -#: util/grub-install.c:1365 util/grub-macbless.c:80 util/grub-probe.c:372 -#, c-format -msgid "cannot find a GRUB drive for %s. Check your device.map" -msgstr "" -"nem található GRUB meghajtó ehhez: %s. EllenÅ‘rizze a device.map bejegyzéseit." - -#: util/grub-install.c:1087 -#, c-format -msgid "%s doesn't look like an EFI partition" -msgstr "a(z) %s nem EFI partíciónak néz ki." - -#: util/grub-install.c:1129 util/grub-install.c:1614 -msgid "You've found a bug" -msgstr "Egy hibát talált" - -#: util/grub-install.c:1231 -#, c-format -msgid "filesystem on %s is neither HFS nor HFS+" -msgstr "a(z) %s fájlrendszere sem HFS, sem HFS+" - -#: util/grub-install.c:1299 -#, c-format -msgid "" -"attempt to install to encrypted disk without cryptodisk enabled. Set `%s' in " -"file `%s'" -msgstr "" -"kísérlet a titkosított lemezre telepíteni cryptodisk engedélyezés nélkül. " -"Ãllítsa be „%s†értékét a(z) „%s†fájlban" - -#: util/grub-install.c:1410 util/grub-install.c:1772 util/grub-install.c:1872 -#, c-format -msgid "Can't create file: %s" -msgstr "Nem lehet létrehozni a fájlt: %s" - -#: util/grub-install.c:1491 -msgid "no hints available for your platform. Expect reduced performance" -msgstr "nem érhetÅ‘ el tipp a platformhoz. Csökkentett teljesítmény várható." - -#. TRANSLATORS: This is a prefix in the log to indicate that usually -#. a command would be executed but due to an option was skipped. -#: util/grub-install.c:1702 -msgid "NOT RUNNING: " -msgstr "NEM FUT: " - -#: util/grub-install.c:1806 -msgid "the chosen partition is not a PReP partition" -msgstr "a választott partíció nem egy PReP partíció" - -#: util/grub-install.c:1811 -msgid "failed to copy Grub to the PReP partition" -msgstr "a GRUB átmásolása nem sikerült a PReP partícióra" - -#: util/grub-install.c:1816 -#, c-format -msgid "" -"the PReP partition is not empty. If you are sure you want to use it, run dd " -"to clear it: `%s'" -msgstr "" -"a PReP partíció nem üres. Ha biztos benne, hogy azt szeretné használni, " -"futtassa a dd parancsot a törléséhez: „%sâ€" - -#: util/grub-install.c:1888 util/grub-install.c:1932 -#, c-format -msgid "efibootmgr failed to register the boot entry: %s" -msgstr "" - -#: util/grub-install.c:1916 -msgid "EFI bootloader id isn't specified." -msgstr "az EFI rendszerbetöltÅ‘-azonosító nincs megadva." - -#: util/grub-install.c:1950 -msgid "WARNING: no platform-specific install was performed" -msgstr "FIGYELMEZTETÉS: nem lett platform-specifikus telepítés végrehajtva" - -#: util/grub-install.c:1957 -msgid "Installation finished. No error reported." -msgstr "A telepítés befejezÅ‘dött. Nem jelentettek hibát." - -#: util/grub-macbless.c:101 -msgid "bless for x86-based macs" -msgstr "bless az x86-alapú mac-ekhez" - -#: util/grub-macbless.c:103 -msgid "bless for ppc-based macs" -msgstr "bless a ppc-alapú mac-ekhez" - -#: util/grub-macbless.c:136 util/grub-probe.c:823 -msgid "No path or device is specified.\n" -msgstr "Nincs megadva útvonal vagy eszköz.\n" - -#: util/grub-macbless.c:157 -msgid "--ppc PATH|--x86 FILE" -msgstr "--ppc ÚTVONAL|--x86 FÃJL" - -#: util/grub-macbless.c:158 -msgid "Mac-style bless on HFS or HFS+" -msgstr "Mac-stílusú bless ezen: HFS vagy HFS+" - -#: util/grub-menulst2cfg.c:44 -#, c-format -msgid "Usage: %s [INFILE [OUTFILE]]\n" -msgstr "Használat: %s [BEFÃJL [KIFÃJL]]\n" - -#: util/grub-mkfont.c:157 -#, c-format -msgid "Freetype Error %d loading glyph 0x%x for U+0x%x%s" -msgstr "Freetype hiba (%d) a 0x%x glyph betöltésekor ehhez: U+0x%x%s" - -#. TRANSLATORS: These qualifiers are used for cursive typography, -#. mainly Arabic. Note that the terms refer to the visual position -#. and not logical order and if used in left-to-right script then -#. leftmost is initial but with right-to-left script like Arabic -#. rightmost is the initial. -#: util/grub-mkfont.c:165 -msgid " (medial)" -msgstr " (középsÅ‘)" - -#: util/grub-mkfont.c:166 -msgid " (leftmost)" -msgstr " (bal szélsÅ‘)" - -#: util/grub-mkfont.c:167 -msgid " (rightmost)" -msgstr " (jobb szélsÅ‘)" - -#: util/grub-mkfont.c:481 -#, c-format -msgid "Out of range substitution (%d, %d)\n" -msgstr "Tartományon kívüli helyettesítés (%d, %d)\n" - -#. TRANSLATORS: "lookup" is taken directly from font specifications -#. which are formulated as "Under condition X replace LOOKUP with -#. SUBSTITUITION". " -#: util/grub-mkfont.c:506 -#, c-format -msgid "Out of range lookup: %d\n" -msgstr "Tartományon kívüli keresés: %d\n" - -#: util/grub-mkfont.c:514 -#, c-format -msgid "Unsupported substitution type: %d\n" -msgstr "Nem támogatott helyettesítési típus: %d\n" - -#: util/grub-mkfont.c:550 -#, c-format -msgid "Unsupported substitution specification: %d\n" -msgstr "Nem támogatott helyettesítési specifikáció: %d\n" - -#: util/grub-mkfont.c:582 -#, c-format -msgid "Unsupported coverage specification: %d\n" -msgstr "Nem támogatott kiterjedés specifikáció: %d\n" - -#: util/grub-mkfont.c:622 -#, c-format -msgid "WARNING: unsupported font feature parameters: %x\n" -msgstr "FIGYELEM: nem támogatott betűkészlet szolgáltatás paraméterek: %x\n" - -#: util/grub-mkfont.c:936 util/grub-mkrescue.c:98 util/grub-mkstandalone.c:48 -msgid "save output in FILE [required]" -msgstr "kimenet mentése FÃJLBA [szükséges]" - -#. TRANSLATORS: some font files may have multiple faces (fonts). -#. This option is used to chose among them, the first face being '0'. -#. Rarely used. -#: util/grub-mkfont.c:942 -msgid "select face index" -msgstr "betűkép index kiválasztása" - -#: util/grub-mkfont.c:943 -msgid "FROM-TO[,FROM-TO]" -msgstr "TÓL-IG[,TÓL-IG]" - -#. TRANSLATORS: It refers to the range of characters in font. -#: util/grub-mkfont.c:945 -msgid "set font range" -msgstr "betűtartomány beállítása" - -#. TRANSLATORS: "family name" for font is just a generic name without suffix -#. like "Bold". -#: util/grub-mkfont.c:949 -msgid "set font family name" -msgstr "betűcsaládnév beállítása" - -#: util/grub-mkfont.c:950 -msgid "SIZE" -msgstr "MÉRET" - -#: util/grub-mkfont.c:950 -msgid "set font size" -msgstr "betűméret beállítása" - -#: util/grub-mkfont.c:951 -msgid "set font descent" -msgstr "betűleszállítás beállítása" - -#: util/grub-mkfont.c:952 -msgid "set font ascent" -msgstr "betűemelkedés beállítása" - -#: util/grub-mkfont.c:953 -msgid "convert to bold font" -msgstr "átalakítás félkövér betűre" - -#: util/grub-mkfont.c:954 -msgid "force autohint" -msgstr "automatikus javaslat erÅ‘ltetése" - -#: util/grub-mkfont.c:955 -msgid "disable hinting" -msgstr "javaslatok tiltása" - -#. TRANSLATORS: some fonts contain bitmap rendering for -#. some sizes. This option forces rerendering even if -#. pre-rendered bitmap is available. -#. -#: util/grub-mkfont.c:961 -msgid "ignore bitmap strikes when loading" -msgstr "bitmap strikes mellÅ‘zése betöltéskor" - -#. TRANSLATORS: It refers to the range of characters in font. -#: util/grub-mkfont.c:1059 util/grub-mkfont.c:1075 -msgid "invalid font range" -msgstr "érvénytelen betűtartomány" - -#: util/grub-mkfont.c:1151 -msgid "[OPTIONS] FONT_FILES" -msgstr "[KAPCSOLÓK] BETŰ_FÃJLOK" - -#: util/grub-mkfont.c:1152 -msgid "Convert common font file formats into PF2" -msgstr "A gyakori betűfájl formátumok átalakítása PF2 formátumra" - -#: util/grub-mkfont.c:1182 util/grub-mkrescue.c:483 -#: util/grub-mkstandalone.c:306 -msgid "output file must be specified" -msgstr "a kimeneti fájlt meg kell adni" - -#: util/grub-mkfont.c:1185 -msgid "FT_Init_FreeType fails" -msgstr "FT_Init_FreeType meghiúsult" - -#: util/grub-mkfont.c:1199 -#, c-format -msgid "can't open file %s, index %d: error %d" -msgstr "nem lehet megnyitni a(z) %s fájlt, %d indexet: hiba %d" - -#: util/grub-mkfont.c:1229 -#, c-format -msgid "can't set %dx%d font size: Freetype error %d: %s" -msgstr "nem lehet beállítani a(z) %dx%d betűméretet: Freetype hiba %d: %s" - -#: util/grub-mkimage.c:67 -msgid "set prefix directory" -msgstr "elÅ‘tagkönyvtár beállítása" - -#. TRANSLATORS: "memdisk" here isn't an identifier, it can be translated. -#. "embed" is a verb (command description). " -#: util/grub-mkimage.c:71 -msgid "" -"embed FILE as a memdisk image\n" -"Implies `-p (memdisk)/boot/grub' and overrides any prefix supplied " -"previously, but the prefix itself can be overridden by later options" -msgstr "" -"beágyazott FÃJL mint memórialemez-kép\n" -"Magába foglalja a „-p (memdisk)/boot/grub†parancsot és felülbírál minden " -"korábban megadott elÅ‘tagot, de maga az elÅ‘tag felülbírálható a késÅ‘bbi " -"kapcsolókkal" - -#: util/grub-mkimage.c:74 -#, fuzzy -msgid "embed FILE as a device tree (DTB)\n" -msgstr "beágyazott FÃJL mint egy korai beállítás" - -#: util/grub-mkimage.c:76 -msgid "embed FILE as an early config" -msgstr "beágyazott FÃJL mint egy korai beállítás" - -#. TRANSLATORS: NOTE is a name of segment. -#: util/grub-mkimage.c:80 -msgid "add NOTE segment for CHRP IEEE1275" -msgstr "JEGYZET rész hozzáadása ennél: CHRP IEEE1275" - -#: util/grub-mkimage.c:81 -msgid "output a generated image to FILE [default=stdout]" -msgstr "" -"egy előállított kép létrehozása a FÃJLBA [alapértelmezett=szabványos kimenet]" - -#: util/grub-mkimage.c:82 -msgid "FORMAT" -msgstr "FORMÃTUM" - -#: util/grub-mkimage.c:100 util/grub-mkstandalone.c:62 -msgid "generate an image in FORMAT" -msgstr "egy kép előállítása FORMÃTUMBAN" - -#: util/grub-mkimage.c:101 util/grub-mkstandalone.c:63 -msgid "available formats:" -msgstr "elérhetÅ‘ formátumok:" - -#: util/grub-mkimage.c:152 util/grub-mkstandalone.c:96 -#, c-format -msgid "unknown target format %s\n" -msgstr "ismeretlen célformátum: %s\n" - -#: util/grub-mkimage.c:242 -msgid "[OPTION]... [MODULES]" -msgstr "[KAPCSOLÓ]… [MODULOK]" - -#: util/grub-mkimage.c:243 -msgid "Make a bootable image of GRUB." -msgstr "Egy indítható GRUB lemezkép készítése." - -#: util/grub-mkimage.c:273 util/grub-mkstandalone.c:309 -msgid "Target format not specified (use the -O option)." -msgstr "A célformátum nincs megadva (használja a -O kapcsolót)." - -#: util/grub-mkimage.c:282 -msgid "Prefix not specified (use the -p option)." -msgstr "Az elÅ‘tag nincs megadva (használja a -p kapcsolót)." - -#: util/grub-mkimage.c:318 util/setup.c:793 -#, fuzzy, c-format -msgid "cannot close `%s': %s" -msgstr "„%s†nem nyitható meg: %s" - -#: util/grub-mkimagexx.c:2191 -#, c-format -msgid "" -"`%s' is miscompiled: its start address is 0x%llx instead of 0x%llx: ld.gold " -"bug?" -msgstr "" -"A(z) „%s†tévesen van összeállítva: a kezdÅ‘címe 0x%llx a 0x%llx helyett: ld." -"gold hiba?" - -#: util/grub-mklayout.c:53 -msgid "set input filename. Default is STDIN" -msgstr "bemeneti fájlnév beállítása. Az alapértelmezett: STDIN" - -#. TRANSLATORS: scan identifier is keyboard key symbolic name. -#: util/grub-mklayout.c:307 -#, c-format -msgid "Unknown keyboard scan identifier %s\n" -msgstr "Ismeretlen billentyűzet vizsgáló azonosító: %s\n" - -#. TRANSLATORS: scan code is keyboard key numeric identifier. -#: util/grub-mklayout.c:390 util/grub-mklayout.c:418 -#, c-format -msgid "Unknown keyboard scan code 0x%02x\n" -msgstr "Ismeretlen billentyűzet vizsgálókód: 0x%02x\n" - -#. TRANSLATORS: this error is triggered when input doesn't contain any -#. key descriptions. -#: util/grub-mklayout.c:438 -msgid "ERROR: no valid keyboard layout found. Check the input.\n" -msgstr "" -"HIBA: nem található érvényes billentyűzet-kiosztás. EllenÅ‘rizze a " -"bemenetet.\n" - -#. TRANSLATORS: "one" is a shortcut for "keyboard layout". -#: util/grub-mklayout.c:478 -msgid "Generate GRUB keyboard layout from Linux console one." -msgstr "GRUB billentyűzet-kiosztás előállítása a Linux konzolról." - -#: util/grub-mknetdir.c:47 -msgid "root directory of TFTP server" -msgstr "a TFTP kiszolgáló gyökérkönyvtára" - -#: util/grub-mknetdir.c:49 -msgid "relative subdirectory on network server" -msgstr "relatív alkönyvtár a hálózati kiszolgálón" - -#: util/grub-mknetdir.c:88 -msgid "" -"Prepares GRUB network boot images at net_directory/subdir assuming " -"net_directory being TFTP root." -msgstr "" -"ElÅ‘készíti a hálózati GRUB rendszerindító lemezképet a hálózati_könyvtár/" -"alkönyvtár helyen, feltételezve, hogy a hálózati_könyvtár a TFTP gyökere." - -#: util/grub-mknetdir.c:146 -#, c-format -msgid "unsupported platform %s" -msgstr "nem támogatott platform: %s" - -#. TRANSLATORS: First %s is replaced by platform name. Second one by filename. -#: util/grub-mknetdir.c:165 -#, c-format -msgid "" -"Netboot directory for %s created. Configure your DHCP server to point to %s\n" -msgstr "" -"Hálózati indító könyvtár létrehozva ehhez: %s. Ãllítsa be a DHCP " -"kiszolgálót, hogy ide mutasson: %s\n" - -#: util/grub-mkpasswd-pbkdf2.c:46 -msgid "Number of PBKDF2 iterations" -msgstr "A PBKDF2 iterációk száma" - -#: util/grub-mkpasswd-pbkdf2.c:47 -msgid "Length of generated hash" -msgstr "Az előállított hash hossza" - -#: util/grub-mkpasswd-pbkdf2.c:48 -msgid "Length of salt" -msgstr "A só hossza" - -#: util/grub-mkpasswd-pbkdf2.c:87 -msgid "Generate PBKDF2 password hash." -msgstr "PBKDF2 jelszó hash előállítása." - -#: util/grub-mkpasswd-pbkdf2.c:144 util/grub-mkpasswd-pbkdf2.c:151 -msgid "failure to read password" -msgstr "nem sikerült a jelszó olvasása" - -#: util/grub-mkpasswd-pbkdf2.c:146 -msgid "Reenter password: " -msgstr "Jelszó újra megadása: " - -#: util/grub-mkpasswd-pbkdf2.c:160 -msgid "passwords don't match" -msgstr "a jelszavak nem egyeznek" - -#: util/grub-mkpasswd-pbkdf2.c:169 -msgid "couldn't retrieve random data for salt" -msgstr "nem sikerült véletlen adatokat lekérni a sóhoz" - -#: util/grub-mkpasswd-pbkdf2.c:184 -#, c-format -msgid "cryptographic error number %d" -msgstr "kriptográfiai hibaszám %d" - -#: util/grub-mkpasswd-pbkdf2.c:203 -#, c-format -msgid "PBKDF2 hash of your password is %s\n" -msgstr "a jelszavának PBKDF2 hash kódja: %s\n" - -#: util/grub-mkrelpath.c:67 -msgid "No path is specified.\n" -msgstr "Nincs útvonal megadva.\n" - -#: util/grub-mkrelpath.c:78 -msgid "PATH" -msgstr "ÚTVONAL" - -#: util/grub-mkrelpath.c:79 -msgid "Transform a system filename into GRUB one." -msgstr "Egy rendszer fájlnév átalakítása GRUB fájlnévre." - -#: util/grub-mkrescue.c:100 -msgid "save ROM images in DIR [optional]" -msgstr "ROM lemezképek mentése a KÖNYVTÃRBA [opcionális]" - -#. TRANSLATORS: xorriso is a program for creating ISOs and burning CDs. -#: util/grub-mkrescue.c:103 -msgid "use FILE as xorriso [optional]" -msgstr "FÃJL használata mint xorriso [opcionális]" - -#: util/grub-mkrescue.c:109 -msgid "use STRING as product name" -msgstr "SZÖVEG használata terméknévként" - -#: util/grub-mkrescue.c:111 -msgid "" -"enable sparc boot. Disables HFS+, APM, ARCS and boot as disk image for i386-" -"pc" -msgstr "" -"sparc rendszerindítás engedélyezése. Letiltja a HFS+, APM, ARCS és a " -"lemezképként való rendszerindítást az i386-pc esetén" - -#: util/grub-mkrescue.c:112 -msgid "" -"enable ARCS (big-endian mips machines, mostly SGI) boot. Disables HFS+, APM, " -"sparc64 and boot as disk image for i386-pc" -msgstr "" -"ARCS (big-endian mips gépek, fÅ‘leg SGI) rendszerindítás engedélyezése. " -"Letiltja a HFS+, APM, sparc64 és a lemezképként való rendszerindítást az " -"i386-pc esetén" - -#. TRANSLATORS: it generates one single image which is bootable through any method. -#: util/grub-mkrescue.c:125 -msgid "Make GRUB CD-ROM, disk, pendrive and floppy bootable image." -msgstr "GRUB CD-ROM, lemez, pendrive és floppy indítható lemezkép készítése." - -#: util/grub-mkrescue.c:130 -#, c-format -msgid "" -"Generates a bootable CD/USB/floppy image. Arguments other than options to " -"this program are passed to xorriso, and indicate source files, source " -"directories, or any of the mkisofs options listed by the output of `%s'." -msgstr "" -"Egy indítható CD/USB/floppy lemezképet állít elÅ‘. A program kapcsolóitól " -"eltérÅ‘ argumentumok át lesznek adva a xorriso programnak, és forrásfájlok, " -"forráskönyvtárak vagy a(z) „%s†kimenete által listázott mkisofs kapcsolók " -"bármelyikének jelzése." - -#: util/grub-mkrescue.c:134 -msgid "Option -- switches to native xorriso command mode." -msgstr "A -- kapcsoló átvált a natív xorriso parancsmódra." - -#: util/grub-mkrescue.c:135 -msgid "Mail xorriso support requests to ." -msgstr "" -"A xorriso támogatási kéréseket erre a címre küldje: ." - -#: util/grub-mkrescue.c:221 util/grub-mkstandalone.c:114 -msgid "[OPTION] SOURCE..." -msgstr "[KAPCSOLÓ] FORRÃS…" - -#: util/grub-mkrescue.c:257 util/grub-mkrescue.c:300 util/grub-mkrescue.c:588 -#, c-format -msgid "enabling %s support ..." -msgstr "%s támogatás engedélyezése…" - -#: util/grub-mkrescue.c:486 -#, fuzzy -msgid "xorriso not found" -msgstr "%s: nem található" - -#: util/grub-mkrescue.c:623 -msgid "" -"Your xorriso doesn't support `--grub2-boot-info'. Some features are " -"disabled. Please use xorriso 1.2.9 or later." -msgstr "" -"A xorriso nem támogatja a „--grub2-boot-info†kapcsolót. Néhány funkció le " -"van tiltva. Használja a xorriso 1.2.9 vagy késÅ‘bbi verzióját." - -#: util/grub-mkrescue.c:650 -msgid "" -"Your xorriso doesn't support `--grub2-boot-info'. Your core image is too " -"big. Boot as disk is disabled. Please use xorriso 1.2.9 or later." -msgstr "" -"A xorriso nem támogatja a „--grub2-boot-info†kapcsolót. A mag lemezképe túl " -"nagy. A lemezként való indítás le van tiltva. Használja a xorriso 1.2.9 vagy " -"késÅ‘bbi verzióját." - -#: util/grub-mkstandalone.c:115 -msgid "" -"Generate a standalone image (containing all modules) in the selected format" -msgstr "" -"Egy egyedülálló (minden modult tartalmazó) lemezkép előállítása a kijelölt " -"formátumban" - -#: util/grub-mkstandalone.c:115 -msgid "Graft point syntax (E.g. /boot/grub/grub.cfg=./grub.cfg) is accepted" -msgstr "" -"Graft pont szintaxis (például /boot/grub/grub.cfg=./grub.cfg) elfogadott" - -#: util/grub-mount.c:552 -msgid "IMAGE1 [IMAGE2 ...] MOUNTPOINT" -msgstr "KÉPFÃJL1 [KÉPFÃJL2 …] CSATOLÃSI_PONT" - -#: util/grub-mount.c:575 -msgid "need an image and mountpoint" -msgstr "egy képfájl és egy csatolási pont szükséges" - -#: util/grub-probe.c:731 -msgid "given argument is a system device, not a path" -msgstr "a megadott argumentum egy rendszereszköz, nem egy útvonal" - -#: util/grub-probe.c:736 -msgid "separate items in output using ASCII NUL characters" -msgstr "az elemek elválasztása a kimenetben ASCII NULL karakterekkel" - -#: util/grub-probe.c:754 -#, c-format -msgid "[default=%s]" -msgstr "[alapértelmezett=%s]" - -#: util/grub-probe.c:756 -msgid "print TARGET" -msgstr "CÉL kiírása" - -#: util/grub-probe.c:757 -msgid "available targets:" -msgstr "elérhetÅ‘ célok:" - -#: util/grub-probe.c:839 -msgid "[OPTION]... [PATH|DEVICE]" -msgstr "[KAPCSOLÓ]… [ÚTVONAL|ESZKÖZ]" - -#: util/grub-probe.c:840 -msgid "" -"Probe device information for a given path (or device, if the -d option is " -"given)." -msgstr "" -"Eszköz-információk megvizsgálása egy adott útvonalhoz (vagy eszközhöz, ha a -" -"d kapcsoló meg van adva)." - -#: util/grub-render-label.c:60 -msgid "read text from FILE." -msgstr "szöveg olvasása FÃJLBÓL." - -#: util/grub-render-label.c:62 -msgid "use COLOR for text" -msgstr "SZÃN használata a szöveghez" - -#: util/grub-render-label.c:64 -msgid "use COLOR for background" -msgstr "SZÃN használata a háttérhez" - -#. TRANSLATORS: The result is always stored to file and -#. never shown directly, so don't use "show" as synonym for render. Use "create" if -#. "render" doesn't translate directly. -#: util/grub-render-label.c:69 -msgid "set the label to render" -msgstr "címke beállítása a létrehozáshoz" - -#: util/grub-render-label.c:73 -msgid "use FILE as font (PF2)." -msgstr "FÃJL használata betűkészletként (PF2)." - -#. TRANSLATORS: This file takes a text and creates a graphical representation of it, -#. putting the result into .disk_label file. The result is always stored to file and -#. never shown directly, so don't use "show" as synonym for render. Use "create" if -#. "render" doesn't translate directly. -#: util/grub-render-label.c:136 -msgid "Render Apple .disk_label." -msgstr "Apple .disk_label létrehozása." - -#: util/grub-render-label.c:158 util/grub-syslinux2cfg.c:169 -msgid "Missing arguments\n" -msgstr "Hiányzó argumentumok\n" - -#: util/grub-script-check.c:87 -msgid "[PATH]" -msgstr "[ÚTVONAL]" - -#: util/grub-script-check.c:88 -msgid "Checks GRUB script configuration file for syntax errors." -msgstr "EllenÅ‘rzi a GRUB parancsfájl beállítófájljának szintaktikai hibáit." - -#: util/grub-script-check.c:207 -#, c-format -msgid "Syntax error at line %u\n" -msgstr "Szintaktikai hiba a(z) %u. sorban\n" - -#: util/grub-script-check.c:212 -#, c-format -msgid "Script `%s' contains no commands and will do nothing\n" -msgstr "" -"A(z) „%s†parancsfájl nem tartalmaz parancsokat és semmit sem fog csinálni\n" - -#: util/grub-setup.c:79 -#, c-format -msgid "use FILE as the boot image [default=%s]" -msgstr "FÃJL használata rendszerindító képként [alapértelmezett=%s]" - -#: util/grub-setup.c:81 -#, c-format -msgid "use FILE as the core image [default=%s]" -msgstr "FÃJL használata magképként [alapértelmezett=%s]" - -#: util/grub-setup.c:210 -msgid "No device is specified.\n" -msgstr "Nincs megadva eszköz.\n" - -#: util/grub-setup.c:224 -msgid "" -"Set up images to boot from DEVICE.\n" -"\n" -"You should not normally run this program directly. Use grub-install instead." -msgstr "" -"Képfájlok beállítása az ESZKÖZRÅL történÅ‘ rendszerindításhoz.\n" -"\n" -"Ezt a programot általában nem kell közvetlenül futtatnia. Használja a grub-" -"install parancsot helyette." - -#: util/grub-setup.c:228 -msgid "DEVICE must be an OS device (e.g. /dev/sda)." -msgstr "Az ESZKÖZNEK OS eszköznek kell lennie (például /dev/sda)." - -#: util/grub-setup.c:297 -#, c-format -msgid "Invalid device `%s'.\n" -msgstr "Érvénytelen eszköz: „%sâ€.\n" - -#: util/grub-syslinux2cfg.c:64 -msgid "root directory as it will be seen on runtime [default=/]." -msgstr "gyökérkönyvtár, ahogy futási idÅ‘ben látható lesz [alapértelmezett=/]." - -#: util/grub-syslinux2cfg.c:69 -msgid "" -"current directory of syslinux as it will be seen on runtime [default is " -"parent directory of input file]." -msgstr "" -"a syslinux aktuális könyvtára, ahogy futási idÅ‘ben látható lesz " -"[alapértelmezetten a bemeneti fájl szülÅ‘könyvtára]." - -#: util/grub-syslinux2cfg.c:74 -msgid "write output to FILE [default=stdout]." -msgstr "kimenet írása FÃJLBA [alapértelmezett=szabványos kimenet]." - -#: util/grub-syslinux2cfg.c:148 -msgid "Transform syslinux config into GRUB one." -msgstr "A syslinux beállítás átalakítása GRUB beállításra." - -#: util/mkimage.c:688 util/mkimage.c:717 util/mkimage.c:734 -msgid "cannot compress the kernel image" -msgstr "a rendszermagkép nem tömöríthetÅ‘" - -#: util/mkimage.c:766 util/mkimage.c:1077 -#, c-format -msgid "unknown compression %d" -msgstr "ismeretlen tömörítés: %d" - -#: util/mkimage.c:1088 -msgid "Decompressor is too big" -msgstr "A kibontó túl nagy" - -#: util/mkimage.c:1133 -#, c-format -msgid "core image is too big (0x%x > 0x%x)" -msgstr "a magkép túl nagy (0x%x > 0x%x)" - -#: util/mkimage.c:1140 -#, c-format -msgid "kernel image is too big (0x%x > 0x%x)" -msgstr "a rendszermagkép túl nagy (0x%x > 0x%x)" - -#: util/mkimage.c:1220 util/mkimage.c:1501 -#, c-format -msgid "diskboot.img size must be %u bytes" -msgstr "a diskboot.img mérete %u bájt kell legyen" - -#: util/mkimage.c:1571 -msgid "" -"fwstart.img doesn't match the known good version. proceed at your own risk" -msgstr "" -"Az fwstart.img nem egyezik az ismert jó verzióval. Folytatás csak saját " -"felelÅ‘sségre." - -#: util/mkimage.c:1575 util/mkimage.c:1601 -msgid "firmware image is too big" -msgstr "a firmware lemezkép túl nagy" - -#: util/resolve.c:93 -#, c-format -msgid "invalid line format: %s" -msgstr "érvénytelen sorformátum: %s" - -#: util/setup.c:167 -msgid "the first sector of the core file is not sector-aligned" -msgstr "a magfájl elsÅ‘ szektora nincs szektorokhoz igazítva" - -#: util/setup.c:177 -msgid "non-sector-aligned data is found in the core file" -msgstr "a magfájlban nem szektorokhoz igazított adatok találhatók" - -#: util/setup.c:199 -msgid "the sectors of the core file are too fragmented" -msgstr "a magfájl szektorai túlzottan töredezettek" - -#: util/setup.c:280 -#, c-format -msgid "the size of `%s' is not %u" -msgstr "a(z) „%s†mérete nem %u" - -#: util/setup.c:290 -#, c-format -msgid "the size of `%s' is too small" -msgstr "a(z) „%s†mérete túl kicsi" - -#: util/setup.c:428 -msgid "" -"Attempting to install GRUB to a disk with multiple partition labels or both " -"partition label and filesystem. This is not supported yet." -msgstr "" -"Kísérlet a GRUB telepítésére több partíciócímkével vagy partíciócímkével és " -"fájlrendszerrel egyaránt rendelkezÅ‘ lemezre. Ez még nem támogatott." - -#: util/setup.c:441 -#, c-format -msgid "unable to identify a filesystem in %s; safety check can't be performed" -msgstr "" -"nem azonosítható a fájlrendszer ezen: %s, a biztonsági ellenÅ‘rzés nem " -"hajtható végre" - -#. TRANSLATORS: Filesystem may reserve the space just GRUB isn't sure about it. -#: util/setup.c:445 -#, c-format -msgid "" -"%s appears to contain a %s filesystem which isn't known to reserve space for " -"DOS-style boot. Installing GRUB there could result in FILESYSTEM " -"DESTRUCTION if valuable data is overwritten by grub-setup (--skip-fs-probe " -"disables this check, use at your own risk)" -msgstr "" -"%s úgy tűnik, hogy %s fájlrendszert tartalmaz, amely nem tart fenn helyet a " -"DOS-stílusú rendszerindításnak. A GRUB oda telepítése a FÃJLRENDSZER " -"MEGSEMMISÜLÉSÉT okozhatja, ha a grub-setup értékes adatokat ír felül (a --" -"skip-fs-probe kihagyja ezt az ellenÅ‘rzést, saját felelÅ‘sségre használja)." - -#. TRANSLATORS: Partition map may reserve the space just GRUB isn't sure about it. -#: util/setup.c:458 -#, c-format -msgid "" -"%s appears to contain a %s partition map which isn't known to reserve space " -"for DOS-style boot. Installing GRUB there could result in FILESYSTEM " -"DESTRUCTION if valuable data is overwritten by grub-setup (--skip-fs-probe " -"disables this check, use at your own risk)" -msgstr "" -"%s úgy tűnik, hogy %s partíció-térképet tartalmaz, amely nem tart fenn " -"helyet a DOS-stílusú rendszerindításnak. A GRUB oda telepítése a " -"FÃJLRENDSZER MEGSEMMISÜLÉSÉT okozhatja, ha a grub-setup értékes adatokat ír " -"felül (a --skip-fs-probe kihagyja ezt az ellenÅ‘rzést, saját felelÅ‘sségre " -"használja)." - -#: util/setup.c:465 -#, c-format -msgid "" -"%s appears to contain a %s partition map and LDM which isn't known to be a " -"safe combination. Installing GRUB there could result in FILESYSTEM " -"DESTRUCTION if valuable data is overwritten by grub-setup (--skip-fs-probe " -"disables this check, use at your own risk)" -msgstr "" -"%s úgy tűnik, hogy %s partíció-térképet és LDM-et tartalmaz, amely nem " -"biztonságos kombinációként ismert. A GRUB oda telepítése a FÃJLRENDSZER " -"MEGSEMMISÜLÉSÉT okozhatja, ha a grub-setup értékes adatokat ír felül (a --" -"skip-fs-probe kihagyja ezt az ellenÅ‘rzést, saját felelÅ‘sségre használja)." - -#: util/setup.c:478 -msgid "" -"Attempting to install GRUB to a partitionless disk or to a partition. This " -"is a BAD idea." -msgstr "" -"Kísérlet a GRUB telepítésére partíciók nélküli lemezre vagy partícióra. Ez " -"egy ROSSZ ötlet." - -#: util/setup.c:483 -msgid "" -"Attempting to install GRUB to a disk with multiple partition labels. This " -"is not supported yet." -msgstr "" -"Kísérlet a GRUB telepítésére több partíciócímkével rendelkezÅ‘ lemezre. Ez " -"még nem támogatott." - -#: util/setup.c:489 -#, c-format -msgid "Partition style `%s' doesn't support embedding" -msgstr "A(z) „%s†partícióstílus nem támogatja a beágyazást" - -#: util/setup.c:496 -#, c-format -msgid "File system `%s' doesn't support embedding" -msgstr "A(z) „%s†fájlrendszer nem támogatja a beágyazást" - -#: util/setup.c:537 -msgid "Your embedding area is unusually small. core.img won't fit in it." -msgstr "A beágyazási területe szokatlanul kicsi. A core.img nem fog beleférni." - -#: util/setup.c:559 util/setup.c:725 util/setup.c:844 -msgid "no terminator in the core image" -msgstr "nincs befejezÅ‘ a magképben" - -#: util/setup.c:622 -msgid "core.img version mismatch" -msgstr "a core.img verzió nem megfelelÅ‘" - -#: util/setup.c:675 -msgid "" -"embedding is not possible, but this is required for RAID and LVM install" -msgstr "" -"a beágyazás nem lehetséges, noha ez szükséges a RAID és LVM telepítéshez" - -#: util/setup.c:682 -#, c-format -msgid "can't determine filesystem on %s" -msgstr "nem lehet meghatározni a fájlrendszert ezen: %s" - -#: util/setup.c:685 -#, c-format -msgid "filesystem `%s' doesn't support blocklists" -msgstr "a(z) „%s†fájlrendszer nem támogatja a blokklistákat" - -#. TRANSLATORS: cross-disk refers to /boot being on one disk -#. but MBR on another. -#: util/setup.c:694 -msgid "embedding is not possible, but this is required for cross-disk install" -msgstr "" -"a beágyazás nem lehetséges, noha ez szükséges a lemezek közti telepítéshez" - -#: util/setup.c:700 -msgid "" -"Embedding is not possible. GRUB can only be installed in this setup by " -"using blocklists. However, blocklists are UNRELIABLE and their use is " -"discouraged." -msgstr "" -"Beágyazás nem lehetséges. A GRUB ezen telepítés során kizárólag blokklisták " -"segítségével települhet, viszont a blokklisták NEM MEGBÃZHATÓAK és " -"használatuk nem javallott." - -#. TRANSLATORS: Here GRUB refuses to continue with blocklist install. -#: util/setup.c:705 -msgid "will not proceed with blocklists" -msgstr "nem folytatom a blokklistákkal" - -#: util/setup.c:817 util/setup.c:837 -msgid "blocklists are invalid" -msgstr "a blokklisták érvénytelenek" - -#: util/setup.c:847 -msgid "blocklists are incomplete" -msgstr "a blokklisták nem teljesek" - -#~ msgid "%.*s: ARGP_HELP_FMT parameter must be positive" -#~ msgstr "%.*s: Az ARGP_HELP_FMT paraméternek pozitívnak kell lennie" - -#~ msgid "%s: option '--%s' doesn't allow an argument\n" -#~ msgstr "%s: a(z) „--%s†kapcsoló nem enged meg argumentumot\n" - -#~ msgid "%s: unrecognized option '--%s'\n" -#~ msgstr "%s: ismeretlen „--%s†kapcsoló\n" - -#~ msgid "%s: option '-W %s' doesn't allow an argument\n" -#~ msgstr "%s: a „-W %s†kapcsoló nem enged meg argumentumot\n" - -#~ msgid "%s: option '-W %s' requires an argument\n" -#~ msgstr "%s: a „-W %s†kapcsolóhoz egy argumentum szükséges\n" - -#~ msgid "Usage: %s -o OUTPUT CKBMAP_ARGUMENTS...\\n" -#~ msgstr "Használat: %s -o KIMENET CKBMAP_ARGUMENTUMOK…\\n" - -#~ msgid "Make GRUB keyboard layout file." -#~ msgstr "GRUB billentyűzet-kiosztás fájl készítése." - -#~ msgid "print this message and exit" -#~ msgstr "ezen üzenet kiírása és kilépés" - -#~ msgid "print the version information and exit" -#~ msgstr "a verzióinformációk kiírása és kilépés" - -#~ msgid "%s generates a keyboard layout for GRUB using ckbcomp\\n" -#~ msgstr "" -#~ "A(z) %s előállít egy billentyűzet-kiosztást a GRUB-hoz a ckbcomp " -#~ "használatával\\n" - -#~ msgid "Report bugs to ." -#~ msgstr "A hibákat ide jelentse: ." - -#~ msgid "%s: option requires an argument -- `%s'\\n" -#~ msgstr "%s: a kapcsoló egy argumentumot igényel -- „%sâ€\\n" - -#~ msgid "Usage: %s [OPTION]\\n" -#~ msgstr "Használat: %s [KAPCSOLÓ]\\n" - -#~ msgid "Generate a grub config file" -#~ msgstr "Egy GRUB beállítófájl előállítása" - -#~ msgid "output generated config to FILE [default=stdout]" -#~ msgstr "" -#~ "az előállított beállítás kiírása FÃJLBA [alapértelmezett=szabványos " -#~ "kimenet]" - -#~ msgid "Unrecognized option `%s'\\n" -#~ msgstr "Ismeretlen „%s†kapcsoló\\n" - -#~ msgid "%s: You must run this as root\\n" -#~ msgstr "%s: Ezt rendszergazdaként kell futtatnia\\n" - -#~ msgid "%s: Not found.\\n" -#~ msgstr "%s: nem található.\\n" - -#~ msgid "Generating grub configuration file ..." -#~ msgstr "GRUB beállítófájl előállítása…" - -#~ msgid "" -#~ "Syntax errors are detected in generated GRUB config file.\n" -#~ "Ensure that there are no errors in /etc/default/grub\n" -#~ "and /etc/grub.d/* files or please file a bug report with\n" -#~ "%s file attached." -#~ msgstr "" -#~ "Szintaktikai hibák találhatók az előállított GRUB beállítófájlban.\n" -#~ "GyÅ‘zÅ‘djön meg arról, hogy nincsenek hibák a /etc/default/grub\n" -#~ "és a /etc/grub.d/* fájlokban, vagy küldjön egy hibajelentést a(z)\n" -#~ "%s fájllal mellékelve." - -#~ msgid "done" -#~ msgstr "kész" - -#~ msgid "Warning:" -#~ msgstr "Figyelem:" - -#~ msgid "Usage: %s [OPTION] MENU_ENTRY\\n" -#~ msgstr "Használat: %s [KAPCSOLÓ] MENÜBEJEGYZÉS\\n" - -#~ msgid "Set the default boot menu entry for GRUB, for the next boot only." -#~ msgstr "" -#~ "A GRUB alapértelmezett rendszerindítási menübejegyzésének beállítása, " -#~ "kizárólag a következÅ‘ rendszerindításhoz." - -#~ msgid "" -#~ "expect GRUB images under the directory DIR/%s instead of the %s directory" -#~ msgstr "" -#~ "a GRUB lemezképek elvárása a KVT/%s könyvtárban a(z) %s könyvtár helyett" - -#~ msgid "" -#~ "MENU_ENTRY is a number, a menu item title or a menu item identifier. " -#~ "Please note that menu items in\n" -#~ "submenus or sub-submenus require specifying the submenu components and " -#~ "then the\n" -#~ "menu item component. The titles should be separated using the greater-" -#~ "than\n" -#~ "character (>) with no extra spaces. Depending on your shell some " -#~ "characters including > may need escaping. More information about this is " -#~ "available\n" -#~ "in the GRUB Manual in the section about the 'default' command. " -#~ msgstr "" -#~ "A MENÜBEJEGYZÉS egy szám, egy menüelem címe vagy egy menüelem " -#~ "azonosítója. Ne feledje, hogy az almenükben vagy al-almenükben lévÅ‘ " -#~ "menüelemek az almenü komponens, majd a menüelem komponens megadását " -#~ "igénylik. A címeket a nagyobb mint (>) karakter használatával kell " -#~ "elválasztani extra szóközök nélkül. A parancsértelmezÅ‘jétÅ‘l függÅ‘en " -#~ "néhány karaktert - beleértve a > karaktert is - esetleg el kell fedni. " -#~ "További információk érhetÅ‘k el errÅ‘l a GRUB kézikönyvében az " -#~ "„alapértelmezett†parancsról szóló fejezetben. " - -#~ msgid "More than one menu entry?" -#~ msgstr "Egynél több menübejegyzés?" - -#~ msgid "Menu entry not specified." -#~ msgstr "A menübejegyzés nincs megadva." - -#~ msgid "Set the default boot menu entry for GRUB." -#~ msgstr "" -#~ "A GRUB alapértelmezett rendszerindítási menübejegyzésének beállítása." - -#~ msgid "This requires setting GRUB_DEFAULT=saved in %s/default/grub.\\n" -#~ msgstr "" -#~ "Ez a GRUB_DEFAULT=saved beállítást igényli a(z) %s/default/grub fájlban." -#~ "\\n" - -#~ msgid "MENU_ENTRY is a number, a menu item title or a menu item identifier." -#~ msgstr "" -#~ "A MENÜBEJEGYZÉS egy szám, egy menüelem címe vagy egy menüelem azonosítója." - -#~ msgid "" -#~ "Requested serial terminal but GRUB_SERIAL_COMMAND is unspecified. Default " -#~ "parameters will be used." -#~ msgstr "" -#~ "Egy soros terminál lett kérve, de a GRUB_SERIAL_COMMAND nincs megadva. Az " -#~ "alapértelmezett paraméterek lesznek használva." - -#~ msgid "Found theme: %s\\n" -#~ msgstr "Megtalált téma: %s\\n" - -#~ msgid "Found background: %s\\n" -#~ msgstr "Megtalált háttér: %s\\n" - -#~ msgid "Unsupported image format" -#~ msgstr "Nem támogatott képformátum" - -#~ msgid "" -#~ "Setting GRUB_TIMEOUT to a non-zero value when GRUB_HIDDEN_TIMEOUT is set " -#~ "is no longer supported." -#~ msgstr "" -#~ "A GRUB_TIMEOUT beállítása egy nem nulla értékre, ha a beállított " -#~ "GRUB_HIDDEN_TIMEOUT többé nem támogatott." - -#~ msgid "Found GNU Mach: %s" -#~ msgstr "Megtalált GNU Mach: %s" - -#~ msgid "Found Hurd module: %s" -#~ msgstr "Megtalált Hurd modul: %s" - -#~ msgid "Some Hurd stuff found, but not enough to boot." -#~ msgstr "Néhány Hurd dolog található, de nem elegendÅ‘ a rendszerindításhoz." - -#~ msgid "%s, with Hurd %s (recovery mode)" -#~ msgstr "%s, Hurd %s verzióval (helyreállítási mód)" - -#~ msgid "%s, with Hurd %s" -#~ msgstr "%s, Hurd %s verzióval" - -#~ msgid "" -#~ "Please don't use old title `%s' for GRUB_DEFAULT, use `%s' (for versions " -#~ "before 2.00) or `%s' (for 2.00 or later)" -#~ msgstr "" -#~ "Ne használja a régi „%s†címet a GRUB_DEFAULT értékénél, használja " -#~ "ezeket: „%s†(a 2.00 elÅ‘tti verzióknál) vagy „%s†(2.00 vagy késÅ‘bbi " -#~ "verzióknál)" - -#~ msgid "Loading GNU Mach ..." -#~ msgstr "GNU Mach betöltése…" - -#~ msgid "Loading the Hurd ..." -#~ msgstr "A Hurd betöltése…" - -#~ msgid "Advanced options for %s" -#~ msgstr "Speciális beállítások ehhez: %s" - -#~ msgid "Loading kernel of Illumos ..." -#~ msgstr "Az Illumos kernelének betöltése…" - -#~ msgid "%s, with kFreeBSD %s (recovery mode)" -#~ msgstr "%s, kFreeBSD %s verzióval (helyreállítási mód)" - -#~ msgid "%s, with kFreeBSD %s" -#~ msgstr "%s, kFreeBSD %s verzióval" - -#~ msgid "Loading kernel of FreeBSD %s ..." -#~ msgstr "A FreeBSD %s kernelének betöltése…" - -#~ msgid "Found kernel of FreeBSD: %s\\n" -#~ msgstr "Megtalált FreeBSD kernel: %s\\n" - -#~ msgid "Found kernel module directory: %s\\n" -#~ msgstr "Megtalált kernelmodul könyvtár: %s\\n" - -#~ msgid "%s, with Linux %s (recovery mode)" -#~ msgstr "%s, Linux %s verzióval (helyreállítási mód)" - -#~ msgid "%s, with Linux %s" -#~ msgstr "%s, Linux %s verzióval" - -#~ msgid "Loading Linux %s ..." -#~ msgstr "Linux %s betöltése…" - -#~ msgid "Loading initial ramdisk ..." -#~ msgstr "Kiinduló ramdisk betöltése…" - -#~ msgid "Found linux image: %s\\n" -#~ msgstr "Megtalált linux lemezkép: %s\\n" - -#~ msgid "Found initrd image: %s\\n" -#~ msgstr "Megtalált initrd lemezkép: %s\\n" - -#~ msgid "%s, with kernel %s (via %s, recovery mode)" -#~ msgstr "%s, %s kernellel (%s közvetítésével, helyreállítási mód)" - -#~ msgid "%s, with kernel %s (via %s)" -#~ msgstr "%s, %s kernellel (%s közvetítésével)" - -#~ msgid "Found NetBSD kernel: %s\\n" -#~ msgstr "Megtalált NetBSD kernel: %s\\n" - -#~ msgid "Windows Vista/7 (loader)" -#~ msgstr "Windows Vista/7 (betöltÅ‘)" - -#~ msgid "Windows NT/2000/XP (loader)" -#~ msgstr "Windows NT/2000/XP (betöltÅ‘)" - -#~ msgid "Found %s on %s (%s)\\n" -#~ msgstr "Megtalált %s ezen: %s (%s)\\n" - -#~ msgid "(32-bit)" -#~ msgstr "(32-bit)" - -#~ msgid "(64-bit)" -#~ msgstr "(64-bit)" - -#~ msgid "(on %s)" -#~ msgstr "(ezen: %s)" - -#~ msgid "%s, with Xen %s and Linux %s (recovery mode)" -#~ msgstr "%s, Xen %s és Linux %s verzióval (helyreállítási mód)" - -#~ msgid "%s, with Xen %s and Linux %s" -#~ msgstr "%s, Xen %s és Linux %s verzióval" - -#~ msgid "%s, with Xen hypervisor" -#~ msgstr "%s, Xen hypervisorral" - -#~ msgid "Loading Xen %s ..." -#~ msgstr "Xen %s betöltése…" - -#~ msgid "Xen hypervisor, version %s" -#~ msgstr "Xen hypervisor, %s verzió" - -#~ msgid "Advanced options for %s (with Xen hypervisor)" -#~ msgstr "Speciális beállítások ehhez: %s (Xen hypervisorral)" - -#~ msgid "Found %s on %s\\n" -#~ msgstr "Megtalált %s ezen: %s\\n" - -#~ msgid "%s is not yet supported by grub-mkconfig.\\n" -#~ msgstr "A(z) %s rendszert még nem támogatja a grub-mkconfig.\\n" - -#~ msgid "Unsupported substitution flag: 0x%x\n" -#~ msgstr "Nem támogatott helyettesítési jelzÅ‘: 0x%x\n" - -#~ msgid "Unknown gsub font feature 0x%x (%s)\n" -#~ msgstr "Ismeretlen gsub betűkészlet szolgáltatás 0x%x (%s)\n" - -#~ msgid "Expose v1 tables." -#~ msgstr "v1 táblák megjelenítése." - -#~ msgid "Fake BIOS." -#~ msgstr "BIOS hamisítása." - -#~ msgid "Check hash list file." -#~ msgstr "Hashlista-fájl ellenÅ‘rzése" - -#~ msgid "DIRECTORY" -#~ msgstr "MAPPA" - -#~ msgid "Unload PXE environment." -#~ msgstr "PXE környezet eltávolítása." - -#~ msgid "Read word from PORT." -#~ msgstr "Szó olvasása a PORTRÓL." - -#~ msgid "Read dword from PORT." -#~ msgstr "Dupla szó olvasása a PORTRÓL" - -#~ msgid "Write word VALUE to PORT." -#~ msgstr "Szó ÉRTÉK írása a PORTRA." - -#~ msgid "Write dword VALUE to PORT." -#~ msgstr "Dupla szó ÉRTÉK írása a PORTRA." - -#~ msgid "[--shift] [--ctrl] [--alt]" -#~ msgstr "[--shift] [--ctrl] [--alt]" - -#~ msgid "[-1|-2]" -#~ msgstr "[-1|-2]" - -#~ msgid "Read word from ADDR." -#~ msgstr "Szó olvasása a CÃMRÅL." - -#~ msgid "Read dword from ADDR." -#~ msgstr "Duplaszó olvasása a CÃMRÅL." - -#~ msgid "Write word VALUE to ADDR." -#~ msgstr "A szó ÉRTÉK kiírása a CÃMRE." - -#~ msgid "Write dword VALUE to ADDR." -#~ msgstr "A duplaszó ÉRTÉK kiírása a CÃMRE." - -#~ msgid "Menu entry definition as a string." -#~ msgstr "Menübejegyzés-definíció karakterláncként." - -#~ msgid "[DEVICE]" -#~ msgstr "[ESZKÖZ]" - -#~ msgid "Variable names to update with matches." -#~ msgstr "Ezen változónevek aktualizálása a találatokkal." - -#~ msgid "Load XNU hibernate image." -#~ msgstr "XNU hibernálási rendszerkép betöltése." - -#~ msgid "Authenticate users" -#~ msgstr "Felhasználók hitelesítése" - -#~ msgid "[n]" -#~ msgstr "[n]" - -#~ msgid "UTF-8 visual" -#~ msgstr "UTF-8 vizuális" - -#~ msgid "If FILENAME is '-', the default value %s is used." -#~ msgstr "Ha a FÃJLNÉV „-â€, akkor az alap %s érték kerül felhasználásra." - -#~ msgid "write error" -#~ msgstr "írási hiba" - -#~ msgid "open error" -#~ msgstr "megnyitási hiba" - -#~ msgid "seek error" -#~ msgstr "pozicionálási hiba" - -#~ msgid "Hex dump FILE." -#~ msgstr "A FÃJL hexa kiíratása." - -#~ msgid "Must use absolute path.\n" -#~ msgstr "Abszolút elérési utat kell használni.\n" - -#~ msgid "the core image is too small" -#~ msgstr "a magkép túl kicsi" - -#~ msgid "prefix is too long" -#~ msgstr "az elÅ‘tag túl hosszú" - -#~ msgid "" -#~ "Usage: %s [OPTION]... [MODULES]\n" -#~ "\n" -#~ "Make a bootable image of GRUB.\n" -#~ "\n" -#~ " -d, --directory=DIR use images and modules under DIR [default=%s/" -#~ "@platform@]\n" -#~ " -p, --prefix=DIR set grub_prefix directory [default=%s]\n" -#~ " -m, --memdisk=FILE embed FILE as a memdisk image\n" -#~ " -c, --config=FILE embed FILE as boot config\n" -#~ " -n, --note add NOTE segment for CHRP Open Firmware\n" -#~ " -o, --output=FILE output a generated image to FILE " -#~ "[default=stdout]\n" -#~ " -O, --format=FORMAT generate an image in format\n" -#~ " available formats: %s\n" -#~ " -C, --compression=(xz|none|auto) choose the compression to use\n" -#~ " -h, --help display this message and exit\n" -#~ " -V, --version print version information and exit\n" -#~ " -v, --verbose print verbose messages\n" -#~ "\n" -#~ "Report bugs to <%s>.\n" -#~ msgstr "" -#~ "Használat: %s [KAPCSOLÓ]… [MODULOK]\n" -#~ "\n" -#~ "Indítható memóriakép készítése a GRUB-ból.\n" -#~ "\n" -#~ " -d, --directory=KÖNYVTÃR a KÖNYVTÃR alatti memóriaképek és modulok\n" -#~ " használata [alapértelmezett=%s]\n" -#~ " -p, --prefix=KÖNYVTÃR a grub_prefix könyvtár beállítása " -#~ "[alapértelmezett=%s]\n" -#~ " -m, --memdisk=FÃJL a FÃJL beágyazása memórialemez-képként\n" -#~ " -f, --font=FÃJL a FÃJL beágyazása rendszerindítási " -#~ "betűkészletként\n" -#~ " -c, --config=FÃJL a FÃJL beágyazása rendszerindítási " -#~ "konfigurációként\n" -#~ " -o, --output=FÃJL az előállított memóriaképfájl kiírása a FÃJLBA\n" -#~ " [alapértelmezett=stdout]\n" -#~ " -O, --format=FORMÃTUM memóriaképfájl előállítása a FORMÃTUMBA\n" -#~ " elérhetÅ‘ formátumok: %s\n" -#~ " -C, --compression=(xz|none|auto) használandó tömörítés\n" -#~ " -h, --help ezen üzenet kiírása és kilépés\n" -#~ " -V, --version verzióinformációk kiírása és kilépés\n" -#~ " -v, --verbose részletes üzenetek kiírása\n" -#~ "\n" -#~ "A hibákat itt jelentheti: <%s>.\n" - -#~ msgid "cannot open %s" -#~ msgstr "%s nem nyitható meg" - -#~ msgid "" -#~ "embedding is not possible, but this is required when the root device is " -#~ "on a RAID array or LVM volume" -#~ msgstr "" -#~ "A beágyazás nem lehetséges, noha ez szükséges, ha a gyökéreszköz RAID " -#~ "tömbön vagy LVM köteten van." - -#~ msgid "failed to read the first sector of the core image" -#~ msgstr "a magkép elsÅ‘ szektorának beolvasása meghiúsult" - -#~ msgid "DEV" -#~ msgstr "ESZK" - -#~ msgid "Use DEV as the root device [default=guessed]" -#~ msgstr "Az ESZK használata gyökéreszközként [alap=felismert]" - -#~ msgid "cannot guess the root device. Specify the option `--root-device'" -#~ msgstr "" -#~ "A gyökéreszköz nem határozható meg. Adja meg a „--root-device†kapcsolót." diff --git a/thirdparty/grub-2.04/po/id.gmo b/thirdparty/grub-2.04/po/id.gmo deleted file mode 100644 index 234e6ebb4060f84bdf192a66c6f10d1aaa658df8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 28233 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%0Aax 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 E54iXBGXMYp diff --git a/thirdparty/grub-2.04/po/id.po b/thirdparty/grub-2.04/po/id.po deleted file mode 100644 index 5a9321005..000000000 --- a/thirdparty/grub-2.04/po/id.po +++ /dev/null @@ -1,7475 +0,0 @@ -# Pesan Bahasa Indonesia untuk grub. -# Copyright (C) 2009, 2010 Free Software Foundation, Inc. -# This file is distributed under the same license as the grub package. -# Arif E. Nugroho , 2009, 2010, 2011, 2012, 2013, 2014. -# -msgid "" -msgstr "" -"Project-Id-Version: grub 2.02-pre2\n" -"Report-Msgid-Bugs-To: bug-grub@gnu.org\n" -"POT-Creation-Date: 2019-07-04 16:09+0200\n" -"PO-Revision-Date: 2014-08-04 16:30+0700\n" -"Last-Translator: Arif E. Nugroho \n" -"Language-Team: Indonesian \n" -"Language: id\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=ISO-8859-1\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Bugs: Report translation errors to the Language-Team address.\n" - -#: grub-core/bus/usb/serial/ftdi.c:145 grub-core/bus/usb/serial/pl2303.c:158 -#: grub-core/term/ieee1275/escc.c:169 grub-core/term/ns8250.c:202 -#, fuzzy -msgid "unsupported serial port speed" -msgstr "Set kecepatan port serial." - -#: grub-core/bus/usb/serial/ftdi.c:151 grub-core/bus/usb/serial/pl2303.c:164 -#: grub-core/term/efi/serial.c:116 grub-core/term/ieee1275/escc.c:175 -#: grub-core/term/ns8250.c:208 grub-core/term/serial.c:227 -#: grub-core/term/serial.c:243 -#, fuzzy -msgid "unsupported serial port parity" -msgstr "Set pariti dari port serial." - -#: grub-core/bus/usb/serial/ftdi.c:157 grub-core/bus/usb/serial/pl2303.c:170 -#: grub-core/term/efi/serial.c:122 grub-core/term/ieee1275/escc.c:181 -#: grub-core/term/ns8250.c:213 grub-core/term/serial.c:267 -#, fuzzy -msgid "unsupported serial port stop bits number" -msgstr "Set stop bit dari port serial." - -#: grub-core/bus/usb/serial/ftdi.c:161 grub-core/bus/usb/serial/pl2303.c:174 -#: grub-core/term/efi/serial.c:126 grub-core/term/ieee1275/escc.c:185 -#: grub-core/term/ns8250.c:217 -#, fuzzy -msgid "unsupported serial port word length" -msgstr "Set panjang kata port serial." - -#: grub-core/commands/acpi.c:42 -msgid "Don't load host tables specified by comma-separated list." -msgstr "" -"Jangan muat tabel komputer yang dispesifikasikan oleh daftar yang dipisahkan " -"dengan koma." - -#: grub-core/commands/acpi.c:45 -msgid "Load only tables specified by comma-separated list." -msgstr "" -"Hanya muat tabel yang dispesifikasikan oleh daftar yang dipisahkan dengan " -"koma." - -#: grub-core/commands/acpi.c:46 -msgid "Export version 1 tables to the OS." -msgstr "Export version 1 tables to the OS." - -#: grub-core/commands/acpi.c:47 -#, fuzzy -msgid "Export version 2 and version 3 tables to the OS." -msgstr "Tampilkan tabel v2 dan v3." - -#: grub-core/commands/acpi.c:48 -msgid "Set OEMID of RSDP, XSDT and RSDT." -msgstr "Set OEMID dari RSDP, XSDT dan RSDT." - -#: grub-core/commands/acpi.c:50 -msgid "Set OEMTABLE ID of RSDP, XSDT and RSDT." -msgstr "Set OEMTABLE ID dari RSDP, XSDT dan RSDT." - -#: grub-core/commands/acpi.c:52 -msgid "Set OEMTABLE revision of RSDP, XSDT and RSDT." -msgstr "Set revisi OEMTABLE dari RSDP, XSDT dan RSDT." - -#: grub-core/commands/acpi.c:54 -msgid "Set creator field of RSDP, XSDT and RSDT." -msgstr "Set bagian pembuat dari RSDP, XSDT dan RSDT." - -#: grub-core/commands/acpi.c:56 -msgid "Set creator revision of RSDP, XSDT and RSDT." -msgstr "Set revisi pembuat dari RSDP, XSDT dan RSDT." - -#. TRANSLATORS: "hangs" here is a noun, not a verb. -#: grub-core/commands/acpi.c:58 -#, fuzzy -msgid "" -"Don't update EBDA. May fix failures or hangs on some BIOSes but makes it " -"ineffective with OS not receiving RSDP from GRUB." -msgstr "" -"Jangan perbarui EBDA. Mungkin memperbaiki kegagalan atau berhenti di " -"beberapa BIOS tetapi membuat itu tidak efektif dengan OS mendapatkan RSDP " -"dari GRUB." - -#: grub-core/commands/acpi.c:650 grub-core/commands/acpi.c:667 -#: grub-core/commands/i386/pc/play.c:105 grub-core/commands/keylayouts.c:230 -#: grub-core/commands/keylayouts.c:245 grub-core/commands/keylayouts.c:263 -#: grub-core/commands/verifiers.c:156 grub-core/efiemu/loadcore.c:350 -#: grub-core/kern/elf.c:117 grub-core/kern/elfXX.c:29 -#: grub-core/kern/elfXX.c:156 grub-core/loader/arm/linux.c:319 -#: grub-core/loader/arm64/linux.c:330 grub-core/loader/arm64/xen_boot.c:356 -#: grub-core/loader/efi/chainloader.c:276 -#: grub-core/loader/efi/chainloader.c:297 -#: grub-core/loader/efi/chainloader.c:329 grub-core/loader/efi/fdt.c:138 -#: grub-core/loader/i386/bsd.c:1276 grub-core/loader/i386/bsd.c:2116 -#: grub-core/loader/i386/bsdXX.c:20 grub-core/loader/i386/bsdXX.c:36 -#: grub-core/loader/i386/bsdXX.c:63 grub-core/loader/i386/bsdXX.c:357 -#: grub-core/loader/i386/bsdXX.c:376 grub-core/loader/i386/bsdXX.c:519 -#: grub-core/loader/i386/bsdXX.c:535 grub-core/loader/i386/bsdXX.c:615 -#: grub-core/loader/i386/bsdXX.c:638 -#: grub-core/loader/i386/coreboot/chainloader.c:112 -#: grub-core/loader/i386/coreboot/chainloader.c:148 -#: grub-core/loader/i386/coreboot/chainloader.c:170 -#: grub-core/loader/i386/linux.c:667 grub-core/loader/i386/linux.c:788 -#: grub-core/loader/i386/linux.c:1005 grub-core/loader/i386/multiboot_mbi.c:171 -#: grub-core/loader/i386/pc/chainloader.c:202 -#: grub-core/loader/i386/pc/linux.c:149 grub-core/loader/i386/pc/linux.c:320 -#: grub-core/loader/i386/pc/linux.c:362 grub-core/loader/i386/pc/plan9.c:457 -#: grub-core/loader/i386/pc/plan9.c:550 grub-core/loader/i386/pc/plan9.c:566 -#: grub-core/loader/i386/xen.c:934 grub-core/loader/i386/xen_file.c:72 -#: grub-core/loader/i386/xen_fileXX.c:43 grub-core/loader/i386/xen_fileXX.c:186 -#: grub-core/loader/i386/xen_fileXX.c:339 grub-core/loader/ia64/efi/linux.c:423 -#: grub-core/loader/ia64/efi/linux.c:471 grub-core/loader/linux.c:286 -#: grub-core/loader/macho.c:84 grub-core/loader/macho.c:109 -#: grub-core/loader/machoXX.c:33 grub-core/loader/machoXX.c:46 -#: grub-core/loader/machoXX.c:76 grub-core/loader/machoXX.c:116 -#: grub-core/loader/machoXX.c:131 grub-core/loader/machoXX.c:147 -#: grub-core/loader/machoXX.c:196 grub-core/loader/machoXX.c:317 -#: grub-core/loader/multiboot.c:434 grub-core/loader/multiboot_elfxx.c:171 -#: grub-core/loader/multiboot_elfxx.c:234 -#: grub-core/loader/multiboot_elfxx.c:278 grub-core/loader/multiboot_mbi2.c:129 -#: grub-core/loader/xnu.c:737 grub-core/loader/xnu.c:795 -#: grub-core/loader/xnu.c:816 grub-core/loader/xnu.c:871 -#: grub-core/loader/xnu.c:914 grub-core/loader/xnu.c:952 -#: grub-core/loader/xnu_resume.c:68 grub-core/loader/xnu_resume.c:153 -#: grub-core/loader/xnu_resume.c:165 util/grub-mkimagexx.c:2288 -#, fuzzy, c-format -msgid "premature end of file %s" -msgstr "tidak dapat membuka berkas log: %s" - -#: grub-core/commands/acpi.c:779 -#, fuzzy -msgid "" -"[-1|-2] [--exclude=TABLE1,TABLE2|--load-only=TABLE1,TABLE2] FILE1 [FILE2] " -"[...]" -msgstr "" -"[-1|-2] [--exclude=TABEL1,TABEL2|--load-only=tabel1,tabel2] BERKAS1 " -"[BERKAS2] [...]" - -#: grub-core/commands/acpi.c:782 -msgid "Load host ACPI tables and tables specified by arguments." -msgstr "Muat tabel ACPI komputer dan tabel yang dispesifikasikan oleh argumen." - -#: grub-core/commands/acpihalt.c:368 grub-core/kern/err.c:110 -#, c-format -msgid "error: %s.\n" -msgstr "error: %s.\n" - -#: grub-core/commands/acpihalt.c:368 grub-core/kern/emu/misc.c:95 -#: grub-core/kern/emu/misc.c:105 grub-core/kern/emu/misc.c:134 -#: grub-core/kern/emu/mm.c:34 grub-core/kern/emu/mm.c:62 -#: grub-core/kern/mm.c:374 grub-core/lib/relocator.c:1282 -#: grub-core/lib/relocator.c:1439 grub-core/lib/relocator.c:1538 -#: grub-core/loader/arm/linux.c:259 grub-core/loader/arm64/linux.c:265 -#: grub-core/loader/arm64/linux.c:321 grub-core/loader/arm64/linux.c:340 -#: grub-core/loader/arm64/xen_boot.c:344 grub-core/loader/arm64/xen_boot.c:367 -#: grub-core/loader/efi/chainloader.c:289 grub-core/osdep/unix/dl.c:48 -#: grub-core/osdep/windows/dl.c:46 grub-core/script/lexer.c:156 -#: grub-core/script/lexer.c:182 -#, fuzzy -msgid "out of memory" -msgstr "Tampilkan memori." - -#: grub-core/commands/acpihalt.c:374 grub-core/disk/cryptodisk.c:587 -#: grub-core/disk/cryptodisk.c:632 grub-core/kern/emu/hostdisk.c:307 -#: grub-core/kern/emu/hostfs.c:149 grub-core/kern/emu/misc.c:200 -#: grub-core/osdep/linux/ofpath.c:195 grub-core/osdep/linux/ofpath.c:521 -#: grub-core/osdep/linux/ofpath.c:534 util/glue-efi.c:80 util/glue-efi.c:94 -#: util/grub-editenv.c:155 util/grub-fstest.c:577 -#: util/grub-install-common.c:943 util/grub-mkrescue.c:634 -#: util/grub-mkrescue.c:888 util/grub-mount.c:506 util/grub-render-label.c:176 -#: util/misc.c:95 util/setup.c:814 util/setup.c:833 -#, fuzzy, c-format -msgid "cannot read `%s': %s" -msgstr "tidak dapat membaca `%s' secara benar" - -#. TRANSLATORS: It's computer shutdown using ACPI, not disabling ACPI. -#: grub-core/commands/acpihalt.c:452 -msgid "ACPI shutdown failed" -msgstr "ACPI shutdown failed" - -#: grub-core/commands/arc/lsdev.c:51 -#, fuzzy -msgid "List devices." -msgstr "Tampilkan perangkat PCI." - -#: grub-core/commands/blocklist.c:122 grub-core/commands/cat.c:57 -#: grub-core/commands/configfile.c:35 grub-core/commands/efi/loadbios.c:168 -#: grub-core/commands/file.c:159 grub-core/commands/hexdump.c:47 -#: grub-core/commands/legacycfg.c:209 grub-core/commands/legacycfg.c:315 -#: grub-core/commands/minicmd.c:44 grub-core/commands/syslinuxcfg.c:146 -#: grub-core/commands/testload.c:58 grub-core/commands/testspeed.c:52 -#: grub-core/disk/loopback.c:93 grub-core/efiemu/main.c:293 -#: grub-core/font/font_cmd.c:32 grub-core/kern/emu/hostdisk.c:519 -#: grub-core/loader/arm/linux.c:364 grub-core/loader/arm/linux.c:409 -#: grub-core/loader/arm/linux.c:472 grub-core/loader/arm64/linux.c:243 -#: grub-core/loader/arm64/linux.c:297 grub-core/loader/arm64/xen_boot.c:398 -#: grub-core/loader/arm64/xen_boot.c:411 grub-core/loader/arm64/xen_boot.c:462 -#: grub-core/loader/efi/chainloader.c:216 grub-core/loader/i386/bsd.c:1462 -#: grub-core/loader/i386/bsd.c:1807 grub-core/loader/i386/bsd.c:2085 -#: grub-core/loader/i386/coreboot/chainloader.c:438 -#: grub-core/loader/i386/linux.c:656 grub-core/loader/i386/linux.c:1041 -#: grub-core/loader/i386/pc/chainloader.c:290 -#: grub-core/loader/i386/pc/freedos.c:105 grub-core/loader/i386/pc/linux.c:138 -#: grub-core/loader/i386/pc/linux.c:400 grub-core/loader/i386/pc/ntldr.c:85 -#: grub-core/loader/i386/pc/plan9.c:409 -#: grub-core/loader/i386/pc/pxechainloader.c:94 -#: grub-core/loader/i386/pc/truecrypt.c:96 grub-core/loader/i386/xen.c:641 -#: grub-core/loader/i386/xen.c:768 grub-core/loader/i386/xen.c:844 -#: grub-core/loader/i386/xen.c:854 grub-core/loader/i386/xnu.c:488 -#: grub-core/loader/ia64/efi/linux.c:459 grub-core/loader/ia64/efi/linux.c:539 -#: grub-core/loader/mips/linux.c:238 grub-core/loader/mips/linux.c:429 -#: grub-core/loader/multiboot.c:322 grub-core/loader/multiboot.c:374 -#: grub-core/loader/multiboot.c:384 -#: grub-core/loader/powerpc/ieee1275/linux.c:269 -#: grub-core/loader/powerpc/ieee1275/linux.c:341 -#: grub-core/loader/sparc64/ieee1275/linux.c:305 -#: grub-core/loader/sparc64/ieee1275/linux.c:381 grub-core/loader/xnu.c:351 -#: grub-core/loader/xnu.c:460 grub-core/loader/xnu.c:778 -#: grub-core/loader/xnu.c:892 grub-core/loader/xnu.c:1277 -#: grub-core/loader/xnu.c:1427 grub-core/loader/xnu.c:1453 -#: grub-core/video/readers/jpeg.c:812 grub-core/video/readers/png.c:1123 -#, fuzzy -msgid "filename expected" -msgstr "Abaikan nama berkas (ditinggalkan)" - -#. TRANSLATORS: "embed" is a verb (command description). " -#: grub-core/commands/blocklist.c:154 grub-core/commands/cat.c:163 -#: grub-core/commands/configfile.c:65 grub-core/commands/configfile.c:68 -#: grub-core/commands/configfile.c:74 grub-core/commands/configfile.c:80 -#: grub-core/commands/configfile.c:86 grub-core/commands/hashsum.c:34 -#: grub-core/commands/legacycfg.c:834 grub-core/commands/legacycfg.c:841 -#: grub-core/commands/legacycfg.c:846 grub-core/commands/legacycfg.c:851 -#: grub-core/commands/macbless.c:222 grub-core/commands/minicmd.c:198 -#: grub-core/commands/syslinuxcfg.c:186 grub-core/commands/syslinuxcfg.c:194 -#: grub-core/commands/syslinuxcfg.c:200 grub-core/commands/syslinuxcfg.c:206 -#: grub-core/commands/testload.c:163 grub-core/efiemu/main.c:312 -#: grub-core/kern/emu/main.c:100 grub-core/kern/emu/main.c:103 -#: grub-core/loader/i386/bsd.c:2137 grub-core/loader/i386/bsd.c:2140 -#: grub-core/loader/i386/bsd.c:2143 -#: grub-core/loader/i386/coreboot/chainloader.c:505 -#: grub-core/loader/ia64/efi/linux.c:594 include/grub/util/install.h:32 -#: include/grub/util/install.h:64 util/grub-glue-efi.c:52 -#: util/grub-glue-efi.c:54 util/grub-glue-efi.c:56 util/grub-install.c:254 -#: util/grub-install.c:301 util/grub-mkfont.c:936 util/grub-mkimage.c:68 -#: util/grub-mkimage.c:74 util/grub-mkimage.c:76 util/grub-mkimage.c:78 -#: util/grub-mkimage.c:81 util/grub-mklayout.c:52 util/grub-mklayout.c:54 -#: util/grub-mkrescue.c:97 util/grub-mkrescue.c:101 util/grub-mkrescue.c:104 -#: util/grub-mkrescue.c:105 util/grub-mkrescue.c:106 -#: util/grub-mkstandalone.c:47 util/grub-mkstandalone.c:49 -#: util/grub-probe.c:732 util/grub-render-label.c:59 -#: util/grub-render-label.c:70 util/grub-render-label.c:72 util/grub-setup.c:78 -#: util/grub-setup.c:80 util/grub-setup.c:84 util/grub-syslinux2cfg.c:74 -#: util/grub-syslinux2cfg.c:147 -msgid "FILE" -msgstr "BERKAS" - -#: grub-core/commands/blocklist.c:154 -msgid "Print a block list." -msgstr "Tampilkan daftar blok." - -#: grub-core/commands/boot.c:147 grub-core/commands/legacycfg.c:533 -#: grub-core/commands/legacycfg.c:574 grub-core/loader/arm64/linux.c:250 -#: grub-core/loader/i386/bsd.c:1799 grub-core/loader/i386/bsd.c:1900 -#: grub-core/loader/i386/bsd.c:2007 grub-core/loader/i386/bsd.c:2040 -#: grub-core/loader/i386/bsd.c:2089 grub-core/loader/i386/linux.c:1047 -#: grub-core/loader/i386/pc/linux.c:406 grub-core/loader/i386/xen.c:775 -#: grub-core/loader/i386/xen.c:859 grub-core/loader/ia64/efi/linux.c:545 -#: grub-core/loader/mips/linux.c:432 grub-core/loader/multiboot.c:388 -#: grub-core/loader/powerpc/ieee1275/linux.c:347 -#: grub-core/loader/sparc64/ieee1275/linux.c:387 grub-core/loader/xnu.c:572 -#: grub-core/loader/xnu.c:665 grub-core/loader/xnu.c:781 -#: grub-core/loader/xnu.c:895 grub-core/loader/xnu.c:1091 -#: grub-core/loader/xnu.c:1258 grub-core/loader/xnu.c:1289 -#: grub-core/loader/xnu.c:1430 -msgid "you need to load the kernel first" -msgstr "you need to load the kernel first" - -#: grub-core/commands/boot.c:189 -msgid "Boot an operating system." -msgstr "Boot sistem operasi." - -#: grub-core/commands/boottime.c:36 -#: grub-core/commands/i386/coreboot/cb_timestamps.c:108 -msgid "No boot time statistics is available\n" -msgstr "No boot time statistics is available\n" - -#: grub-core/commands/boottime.c:59 -msgid "Show boot time statistics." -msgstr "Show boot time statistics." - -#: grub-core/commands/cacheinfo.c:40 -#, c-format -msgid "Disk cache statistics: hits = %lu (%lu.%02lu%%), misses = %lu\n" -msgstr "Disck cache statistics: hits = %lu (%lu.%02lu%%), misses = %lu\n" - -#: grub-core/commands/cacheinfo.c:45 -msgid "No disk cache statistics available\n" -msgstr "No disk cache statistics available\n" - -#: grub-core/commands/cacheinfo.c:56 -#, fuzzy -msgid "Get disk cache info." -msgstr "Dapatkan informasi perangkat." - -#: grub-core/commands/cat.c:33 -msgid "Accept DOS-style CR/NL line endings." -msgstr "Accept DOS-style CR/NL line endings." - -#: grub-core/commands/cat.c:163 grub-core/commands/minicmd.c:198 -msgid "Show the contents of a file." -msgstr "Tampilkan isi dari berkas." - -#: grub-core/commands/cmp.c:43 grub-core/commands/i386/pc/drivemap.c:239 -#: grub-core/commands/i386/wrmsr.c:60 grub-core/commands/iorw.c:85 -#: grub-core/commands/memrw.c:84 grub-core/commands/password.c:75 -#: grub-core/commands/password_pbkdf2.c:94 grub-core/commands/pgp.c:826 -#: grub-core/commands/regexp.c:113 grub-core/mmap/mmap.c:517 -#: grub-core/net/dns.c:639 -msgid "two arguments expected" -msgstr "two arguments expected" - -#: grub-core/commands/cmp.c:45 -#, c-format -msgid "Compare file `%s' with `%s':\n" -msgstr "Compare file `%s' with `%s':\n" - -#: grub-core/commands/cmp.c:54 -#, c-format -msgid "Files differ in size: %llu [%s], %llu [%s]\n" -msgstr "Files differ in size: %llu [%s], %llu [%s]\n" - -#: grub-core/commands/cmp.c:81 -#, c-format -msgid "Files differ at the offset %llu: 0x%x [%s], 0x%x [%s]\n" -msgstr "Files differ at the offset %llu: 0x%x [%s], 0x%x [%s]\n" - -#. TRANSLATORS: it's always exactly 2 files. -#: grub-core/commands/cmp.c:93 -msgid "The files are identical.\n" -msgstr "The files are identical.\n" - -#: grub-core/commands/cmp.c:113 -msgid "FILE1 FILE2" -msgstr "BERKAS1 BERKAS2" - -#: grub-core/commands/cmp.c:113 -msgid "Compare two files." -msgstr "Bandingkan dua berkas." - -#: grub-core/commands/configfile.c:65 -msgid "Load another config file." -msgstr "Muat berkas konfigurasi lain." - -#: grub-core/commands/configfile.c:69 grub-core/commands/configfile.c:87 -msgid "Load another config file without changing context." -msgstr "Muat berkas konfigurasi lain tanpa mengubah konteks." - -#: grub-core/commands/configfile.c:75 -#, fuzzy -msgid "" -"Load another config file without changing context but take only menu entries." -msgstr "Muat berkas konfigurasi lain tanpa mengubah konteks." - -#: grub-core/commands/configfile.c:81 -#, fuzzy -msgid "Load another config file but take only menu entries." -msgstr "Muat berkas konfigurasi lain tanpa mengubah konteks." - -#: grub-core/commands/date.c:141 -msgid "[[year-]month-day] [hour:minute[:second]]" -msgstr "[[tahun-]bulan-hari] [jam:menit[:detik]]" - -#: grub-core/commands/date.c:142 -#, fuzzy -msgid "Display/set current datetime." -msgstr "Perintah untuk menampilkan/menset tanggal dan waktu saat ini." - -#: grub-core/commands/echo.c:30 -msgid "Do not output the trailing newline." -msgstr "Jangan keluarkan akhiran baris baru." - -#: grub-core/commands/echo.c:31 -msgid "Enable interpretation of backslash escapes." -msgstr "Aktifkan interpretasi 'escape backslash'." - -#: grub-core/commands/echo.c:134 -msgid "[-e|-n] STRING" -msgstr "[-e|-n] KATA-KATA" - -#: grub-core/commands/echo.c:134 -msgid "Display a line of text." -msgstr "Tampilkan baris dari teks." - -#: grub-core/commands/efi/efifwsetup.c:82 -msgid "Reboot into firmware setup menu." -msgstr "Reboot into firmware setup menu." - -#: grub-core/commands/efi/fixvideo.c:107 -msgid "Fix video problem." -msgstr "Perbaiki masalah video." - -#: grub-core/commands/efi/loadbios.c:52 -msgid "ROM image is present." -msgstr "ROM image is present." - -#: grub-core/commands/efi/loadbios.c:70 -msgid "Can't enable ROM area." -msgstr "Can't enable ROM area." - -#: grub-core/commands/efi/loadbios.c:209 -msgid "" -"Create BIOS-like structures for backward compatibility with existing OS." -msgstr "" -"Create BIOS-like structures for backward compatibility with existing OS." - -#: grub-core/commands/efi/loadbios.c:214 -msgid "BIOS_DUMP [INT10_DUMP]" -msgstr "BIOS_DUMP [INT10_DUMP]" - -#: grub-core/commands/efi/loadbios.c:215 -msgid "Load BIOS dump." -msgstr "Muat BIOS 'dump'." - -#: grub-core/commands/efi/shim_lock.c:76 -#, c-format -msgid "module cannot be loaded in UEFI secure boot mode: %s" -msgstr "" - -#: grub-core/commands/efi/shim_lock.c:98 -#, c-format -msgid "cannot boot due to dangerous module in memory: %s" -msgstr "" - -#: grub-core/commands/efi/shim_lock.c:116 -msgid "bad shim signature" -msgstr "" - -#: grub-core/commands/efi/tpm.c:149 grub-core/commands/efi/tpm.c:189 -#: grub-core/commands/efi/tpm.c:256 grub-core/commands/efi/tpm.c:306 -msgid "Command failed" -msgstr "" - -#: grub-core/commands/efi/tpm.c:151 grub-core/commands/efi/tpm.c:191 -#: grub-core/commands/efi/tpm.c:258 grub-core/commands/efi/tpm.c:308 -#, fuzzy -msgid "Invalid parameter" -msgstr "perangkat root `%s' tidak valid" - -#: grub-core/commands/efi/tpm.c:154 grub-core/commands/efi/tpm.c:194 -#: grub-core/commands/efi/tpm.c:261 grub-core/commands/efi/tpm.c:311 -msgid "Output buffer too small" -msgstr "" - -#: grub-core/commands/efi/tpm.c:156 grub-core/commands/efi/tpm.c:196 -#: grub-core/commands/efi/tpm.c:263 grub-core/commands/efi/tpm.c:313 -msgid "TPM unavailable" -msgstr "" - -#: grub-core/commands/efi/tpm.c:158 grub-core/commands/efi/tpm.c:198 -#: grub-core/commands/efi/tpm.c:265 grub-core/commands/efi/tpm.c:315 -#, fuzzy -msgid "Unknown TPM error" -msgstr "Sistem berkas tidak diketahui" - -#: grub-core/commands/efi/tpm.c:240 grub-core/commands/efi/tpm.c:288 -msgid "cannot allocate TPM event buffer" -msgstr "" - -#: grub-core/commands/eval.c:63 -#, fuzzy -msgid "STRING ..." -msgstr "[POLA ...]" - -#: grub-core/commands/eval.c:64 -msgid "Evaluate arguments as GRUB commands" -msgstr "Evaluate arguments as GRUB commands" - -#: grub-core/commands/file.c:41 -msgid "Check if FILE can be booted as i386 PAE Xen unprivileged guest kernel" -msgstr "Check if FILE can be booted as i386 PAE Xen unprivileged guest kernel" - -#: grub-core/commands/file.c:44 -msgid "Check if FILE can be booted as x86_64 Xen unprivileged guest kernel" -msgstr "Check if FILE can be booted as x86_64 Xen unprivileged guest kernel" - -#: grub-core/commands/file.c:46 -msgid "Check if FILE can be used as Xen x86 privileged guest kernel" -msgstr "Check if FILE can be used as Xen x86 privileged guest kernel" - -#: grub-core/commands/file.c:48 -#, fuzzy -msgid "Check if FILE can be used as x86 multiboot kernel" -msgstr "Muat sebuah kernel multiboot." - -#: grub-core/commands/file.c:50 -#, fuzzy -msgid "Check if FILE can be used as x86 multiboot2 kernel" -msgstr "Muat sebuah kernel multiboot 2." - -#: grub-core/commands/file.c:52 -msgid "Check if FILE is ARM Linux" -msgstr "Check if FILE is ARM Linux" - -#: grub-core/commands/file.c:54 -msgid "Check if FILE is ARM64 Linux" -msgstr "Check if FILE is ARM64 Linux" - -#: grub-core/commands/file.c:56 -msgid "Check if FILE is IA64 Linux" -msgstr "Check if FILE is IA64 Linux" - -#: grub-core/commands/file.c:58 -msgid "Check if FILE is MIPS Linux" -msgstr "Check if FILE is MIPS Linux" - -#: grub-core/commands/file.c:60 -msgid "Check if FILE is MIPSEL Linux" -msgstr "Check if FILE is MIPSEL Linux" - -#: grub-core/commands/file.c:62 -msgid "Check if FILE is SPARC64 Linux" -msgstr "Check if FILE is SPARC64 Linux" - -#: grub-core/commands/file.c:64 -msgid "Check if FILE is POWERPC Linux" -msgstr "Check if FILE is POWERPC Linux" - -#: grub-core/commands/file.c:66 -msgid "Check if FILE is x86 Linux" -msgstr "Check if FILE is x86 Linux" - -#: grub-core/commands/file.c:68 -msgid "Check if FILE is x86 Linux supporting 32-bit protocol" -msgstr "Check if FILE is x86 Linux supporting 32-bit protocol" - -#: grub-core/commands/file.c:70 -msgid "Check if FILE is x86 kFreeBSD" -msgstr "Check if FILE is x86 kFreeBSD" - -#: grub-core/commands/file.c:72 -msgid "Check if FILE is i386 kFreeBSD" -msgstr "Check if FILE is i386 kFreeBSD" - -#: grub-core/commands/file.c:74 -msgid "Check if FILE is x86_64 kFreeBSD" -msgstr "Check if FILE is x86_64 kFreeBSD" - -#: grub-core/commands/file.c:77 -msgid "Check if FILE is x86 kNetBSD" -msgstr "Check if FILE is x86 kNetBSD" - -#: grub-core/commands/file.c:79 -msgid "Check if FILE is i386 kNetBSD" -msgstr "Check if FILE is i386 kNetBSD" - -#: grub-core/commands/file.c:81 -msgid "Check if FILE is x86_64 kNetBSD" -msgstr "Check if FILE is x86_64 kNetBSD" - -#: grub-core/commands/file.c:84 -msgid "Check if FILE is i386 EFI file" -msgstr "Check if FILE is i386 EFI file" - -#: grub-core/commands/file.c:86 -msgid "Check if FILE is x86_64 EFI file" -msgstr "Check if FILE is x86_64 EFI file" - -#: grub-core/commands/file.c:88 -msgid "Check if FILE is IA64 EFI file" -msgstr "Check if FILE is IA64 EFI file" - -#: grub-core/commands/file.c:90 -msgid "Check if FILE is ARM64 EFI file" -msgstr "Check if FILE is ARM64 EFI file" - -#: grub-core/commands/file.c:92 -msgid "Check if FILE is ARM EFI file" -msgstr "Check if FILE is ARM EFI file" - -#: grub-core/commands/file.c:94 -#, fuzzy -msgid "Check if FILE is RISC-V 32bit EFI file" -msgstr "Check if FILE is ARM EFI file" - -#: grub-core/commands/file.c:96 -#, fuzzy -msgid "Check if FILE is RISC-V 64bit EFI file" -msgstr "Check if FILE is IA64 EFI file" - -#: grub-core/commands/file.c:98 -msgid "Check if FILE is hiberfil.sys in hibernated state" -msgstr "Check if FILE is hiberfil.sys in hibernated state" - -#: grub-core/commands/file.c:100 -msgid "Check if FILE is x86_64 XNU (Mac OS X kernel)" -msgstr "Check if FILE is x86_64 XNU (Mac OS X kernel)" - -#: grub-core/commands/file.c:102 -msgid "Check if FILE is i386 XNU (Mac OS X kernel)" -msgstr "Check if FILE is i386 XNU (Mac OS X kernel)" - -#: grub-core/commands/file.c:104 -msgid "Check if FILE is XNU (Mac OS X kernel) hibernated image" -msgstr "Check if FILE is XNU (Mac OS X kernel) hibernated image" - -#: grub-core/commands/file.c:106 -msgid "Check if FILE is BIOS bootsector" -msgstr "Check if FILE is BIOS bootsector" - -#. TRANSLATORS: it's a standalone boolean value, -#. opposite of "true". -#: grub-core/commands/file.c:675 grub-core/commands/i386/cmostest.c:63 -#: grub-core/commands/i386/cpuid.c:71 grub-core/commands/keystatus.c:83 -#: grub-core/commands/keystatus.c:87 grub-core/commands/keystatus.c:96 -#: grub-core/commands/test.c:436 grub-core/commands/true.c:39 -#: grub-core/script/execute.c:247 grub-core/script/execute.c:1039 -msgid "false" -msgstr "false" - -#: grub-core/commands/file.c:684 -#, fuzzy -msgid "OPTIONS FILE" -msgstr "[PILIHAN] DISK" - -#: grub-core/commands/file.c:685 -msgid "Check if FILE is of specified type." -msgstr "Check if FILE is of specified type." - -#. TRANSLATORS: It means that the specified partition e.g. -#. hd0,msdos1=/dev/sda1 doesn't exist. -#: grub-core/commands/gptsync.c:140 grub-core/kern/disk.c:258 -#, fuzzy -msgid "no such partition" -msgstr "tidak ditemukan gaya partisi DOS" - -#: grub-core/commands/gptsync.c:240 -#, c-format -msgid "New MBR is written to `%s'\n" -msgstr "New MBR is written to `%s'\n" - -#: grub-core/commands/gptsync.c:252 -msgid "DEVICE [PARTITION[+/-[TYPE]]] ..." -msgstr "PERANGKAT [PARTISI[+/-[TIPE]]] ..." - -#. TRANSLATORS: MBR type is one-byte partition -#. type id. -#: grub-core/commands/gptsync.c:255 -#, fuzzy -msgid "" -"Fill hybrid MBR of GPT drive DEVICE. Specified partitions will be a part of " -"hybrid MBR. Up to 3 partitions are allowed. TYPE is an MBR type. + means " -"that partition is active. Only one partition can be active." -msgstr "" -"Isi hybrid MBR dari GPT drive PERANGKAT. partisi yang dispesifikasikan akan " -"menjadi bagian dari hybrid mbr. sampai 3 partisi diperbolehkan. TYPE dalah " -"sebuah tipe MBR. + berarti partisi itu aktif. Hanya satu partisi yang boleh " -"aktif." - -#: grub-core/commands/halt.c:40 -msgid "" -"Halts the computer. This command does not work on all firmware " -"implementations." -msgstr "" -"Hentikan komputer. Perintah ini mungkin tidak bekerja di semua implementasi " -"'firmware'." - -#: grub-core/commands/hashsum.c:32 -msgid "Specify hash to use." -msgstr "Specify hash to use." - -#: grub-core/commands/hashsum.c:32 -msgid "HASH" -msgstr "HASH" - -#: grub-core/commands/hashsum.c:33 -msgid "Check hashes of files with hash list FILE." -msgstr "Check hashes of files with hash list FILE." - -#: grub-core/commands/hashsum.c:35 -msgid "Base directory for hash list." -msgstr "Base directory for hash list." - -#. TRANSLATORS: platform here isn't identifier. It can be translated. -#: grub-core/commands/hashsum.c:35 grub-core/commands/ls.c:150 -#: grub-core/commands/macbless.c:226 grub-core/commands/syslinuxcfg.c:51 -#: grub-core/commands/syslinuxcfg.c:54 grub-core/kern/emu/main.c:106 -#: include/grub/util/install.h:50 include/grub/util/install.h:53 -#: include/grub/util/install.h:56 include/grub/util/install.h:59 -#: util/grub-install.c:250 util/grub-install.c:252 util/grub-install.c:297 -#: util/grub-install.c:299 util/grub-mkimage.c:64 util/grub-mkimage.c:67 -#: util/grub-mknetdir.c:46 util/grub-mknetdir.c:48 util/grub-mkrescue.c:99 -#: util/grub-setup.c:82 util/grub-syslinux2cfg.c:63 util/grub-syslinux2cfg.c:65 -#: util/grub-syslinux2cfg.c:67 util/grub-syslinux2cfg.c:71 -msgid "DIR" -msgstr "DIR" - -#: grub-core/commands/hashsum.c:37 -msgid "Don't stop after first error." -msgstr "Don't stop after first error." - -#: grub-core/commands/hashsum.c:38 -msgid "Uncompress file before checksumming." -msgstr "Uncompress file before checksumming." - -#: grub-core/commands/hashsum.c:163 -#, c-format -msgid "%s: READ ERROR\n" -msgstr "%s: READ ERROR\n" - -#: grub-core/commands/hashsum.c:177 -#, c-format -msgid "%s: HASH MISMATCH\n" -msgstr "%s: HASH MISMATCH\n" - -#: grub-core/commands/hashsum.c:188 -#, c-format -msgid "%s: OK\n" -msgstr "%s: OK\n" - -#: grub-core/commands/hashsum.c:282 -msgid "-h HASH [-c FILE [-p PREFIX]] [FILE1 [FILE2 ...]]" -msgstr "-h HASH [-c FILE [-p PREFIX]] [FILE1 [FILE2 ...]]" - -#. TRANSLATORS: "hash checksum" is just to -#. be a bit more precise, you can treat it as -#. just "hash". -#: grub-core/commands/hashsum.c:287 grub-core/commands/hashsum.c:292 -#: grub-core/commands/hashsum.c:297 grub-core/commands/hashsum.c:302 -#: grub-core/commands/hashsum.c:307 grub-core/commands/hashsum.c:313 -msgid "Compute or check hash checksum." -msgstr "Compute or check hash checksum." - -#: grub-core/commands/hashsum.c:290 grub-core/commands/hashsum.c:295 -#: grub-core/commands/hashsum.c:300 grub-core/commands/hashsum.c:305 -#: grub-core/commands/hashsum.c:311 -msgid "[-c FILE [-p PREFIX]] [FILE1 [FILE2 ...]]" -msgstr "[-c FILE [-p PREFIX]] [FILE1 [FILE2 ...]]" - -#: grub-core/commands/hdparm.c:33 -msgid "" -"Set Advanced Power Management\n" -"(1=low, ..., 254=high, 255=off)." -msgstr "" -"Set Advanced Power Management\n" -"(1=rendah, ..., 254=tinggi, 255=tidak nyala)." - -#: grub-core/commands/hdparm.c:36 -#, fuzzy -msgid "Display power mode." -msgstr "Periksa mode power." - -#: grub-core/commands/hdparm.c:37 -msgid "Freeze ATA security settings until reset." -msgstr "Hentikan konfigurasi keamanan ATA sampai reset." - -#: grub-core/commands/hdparm.c:39 -#, fuzzy -msgid "Display SMART health status." -msgstr "Periksa keadaan kesehatan SMART." - -#: grub-core/commands/hdparm.c:40 -msgid "" -"Set Automatic Acoustic Management\n" -"(0=off, 128=quiet, ..., 254=fast)." -msgstr "" -"Set Automatic Acoustic Management\n" -"(0=tidak nyala, 128=pelan, ..., 254=cepat)." - -#: grub-core/commands/hdparm.c:43 -msgid "" -"Set standby timeout\n" -"(0=off, 1=5s, 2=10s, ..., 240=20m, 241=30m, ...)." -msgstr "" -"Set waktu habis standby\n" -"(0=tidak nyala, 1=5s, 2=10s, ..., 240=20m, 241=30m, ...)." - -#: grub-core/commands/hdparm.c:46 -msgid "Set drive to standby mode." -msgstr "Set drive ke mode standby." - -#: grub-core/commands/hdparm.c:47 -msgid "Set drive to sleep mode." -msgstr "Set drive ke mode tidur." - -#: grub-core/commands/hdparm.c:48 -msgid "Print drive identity and settings." -msgstr "Tampilkan konfigurasi dan identitas drive." - -#: grub-core/commands/hdparm.c:50 -#, fuzzy -msgid "Show raw contents of ATA IDENTIFY sector." -msgstr "Tampilkan isi dari sektor IDENTIFIKASI ATA." - -#: grub-core/commands/hdparm.c:52 -msgid "Disable/enable SMART (0/1)." -msgstr "Nonaktifkan/aktifkan SMART (0/1)." - -#: grub-core/commands/hdparm.c:53 -msgid "Do not print messages." -msgstr "Jangan tampilkan pesan." - -#: grub-core/commands/hdparm.c:286 grub-core/commands/i386/rdmsr.c:68 -#: grub-core/commands/iorw.c:47 grub-core/commands/legacycfg.c:760 -#: grub-core/commands/legacycfg.c:812 grub-core/commands/macbless.c:190 -#: grub-core/commands/memrw.c:47 grub-core/commands/pgp.c:738 -#: grub-core/commands/pgp.c:792 grub-core/commands/search.c:304 -#: grub-core/commands/search_wrap.c:179 grub-core/commands/setpci.c:243 -#: grub-core/commands/sleep.c:71 grub-core/fs/zfs/zfsinfo.c:279 -#: grub-core/fs/zfs/zfsinfo.c:358 grub-core/gettext/gettext.c:492 -#: grub-core/kern/corecmd.c:65 grub-core/kern/corecmd.c:79 -#: grub-core/mmap/mmap.c:430 grub-core/net/dns.c:713 grub-core/net/dns.c:745 -#: grub-core/net/net.c:694 grub-core/net/net.c:1052 -#: grub-core/normal/context.c:194 grub-core/script/execute.c:131 -#: grub-core/term/gfxterm_background.c:136 -msgid "one argument expected" -msgstr "one argument expected" - -#: grub-core/commands/hdparm.c:440 -msgid "[OPTIONS] DISK" -msgstr "[PILIHAN] DISK" - -#: grub-core/commands/hdparm.c:441 -msgid "Get/set ATA disk parameters." -msgstr "Get/set parameter disk ATA." - -#: grub-core/commands/help.c:132 grub-core/lib/arg.c:109 -#: grub-core/lib/gnulib/argp-help.c:1616 -msgid "Usage:" -msgstr "Penggunaan:" - -#: grub-core/commands/help.c:146 -msgid "[PATTERN ...]" -msgstr "[POLA ...]" - -#: grub-core/commands/help.c:147 -msgid "Show a help message." -msgstr "Tampilkan pesan bantuan." - -#: grub-core/commands/hexdump.c:31 -msgid "Skip offset bytes from the beginning of file." -msgstr "Lewati byte ofset dari awal berkas." - -#: grub-core/commands/hexdump.c:33 -msgid "Read only LENGTH bytes." -msgstr "Baca saja PANJANG bytes." - -#: grub-core/commands/hexdump.c:125 -msgid "[OPTIONS] FILE_OR_DEVICE" -msgstr "[PILIHAN] BERKAS_ATAU_PERANGKAT" - -#: grub-core/commands/hexdump.c:126 -#, fuzzy -msgid "Show raw contents of a file or memory." -msgstr "Tampilkan isi dari sebuah berkas atau memori." - -#: grub-core/commands/i386/cmosdump.c:58 -msgid "Show raw dump of the CMOS contents." -msgstr "Show raw dump of the CMOS contents." - -#: grub-core/commands/i386/cmostest.c:108 -#: grub-core/commands/i386/cmostest.c:111 -#: grub-core/commands/i386/cmostest.c:114 -msgid "BYTE:BIT" -msgstr "BYTE:BIT" - -#: grub-core/commands/i386/cmostest.c:109 -msgid "Test bit at BYTE:BIT in CMOS." -msgstr "Test bit at BYTE:BIT in CMOS." - -#: grub-core/commands/i386/cmostest.c:112 -msgid "Clear bit at BYTE:BIT in CMOS." -msgstr "Clear bit at BYTE:BIT in CMOS." - -#. TRANSLATORS: A bit may be either set (1) or clear (0). -#: grub-core/commands/i386/cmostest.c:116 -msgid "Set bit at BYTE:BIT in CMOS." -msgstr "Set bit at BYTE:BIT in CMOS." - -#: grub-core/commands/i386/coreboot/cb_timestamps.c:120 -msgid "Show coreboot boot time statistics." -msgstr "Show coreboot boot time statistics." - -#: grub-core/commands/i386/coreboot/cbls.c:137 -#, fuzzy -msgid "List coreboot tables." -msgstr "Tampilkan atau pilih pengendali." - -#. TRANSLATORS: "(default)" at the end means that this option is used if -#. no argument is specified. -#: grub-core/commands/i386/cpuid.c:36 -#, fuzzy -msgid "Check if CPU supports 64-bit (long) mode (default)." -msgstr "Periksa untuk tanda mode panjang (baku)." - -#: grub-core/commands/i386/cpuid.c:37 -msgid "Check if CPU supports Physical Address Extension." -msgstr "Check if CPU supports Physical Address Extension." - -#: grub-core/commands/i386/cpuid.c:119 -msgid "Check for CPU features." -msgstr "Periksa kapabilitas CPU." - -#. TRANSLATORS: In this file "mapping" refers to a change GRUB makes so if -#. your language doesn't have an equivalent of "mapping" you can -#. use the word like "rerouting". -#. -#: grub-core/commands/i386/pc/drivemap.c:43 -msgid "Show the current mappings." -msgstr "Tampilkan pemetaan saat ini." - -#: grub-core/commands/i386/pc/drivemap.c:44 -msgid "Reset all mappings to the default values." -msgstr "Reset seluruh pemetaan ke nilai baku." - -#: grub-core/commands/i386/pc/drivemap.c:45 -msgid "Perform both direct and reverse mappings." -msgstr "Lakukan baik pemetaan secara langsung dan terbalik." - -#: grub-core/commands/i386/pc/drivemap.c:184 -msgid "No drives have been remapped" -msgstr "No drives have been remapped" - -#. TRANSLATORS: This is the header of mapping list. -#. On the left is how OS will see the disks and -#. on the right current GRUB vision. -#: grub-core/commands/i386/pc/drivemap.c:191 -msgid "OS disk #num ------> GRUB/BIOS device" -msgstr "OS disk #num ------> GRUB/BIOS device" - -#: grub-core/commands/i386/pc/drivemap.c:413 -msgid "-l | -r | [-s] grubdev osdisk." -msgstr "-l | -r | [-s] grubdev osdisk." - -#: grub-core/commands/i386/pc/drivemap.c:414 -msgid "Manage the BIOS drive mappings." -msgstr "Pelihara pemetaan drive BIOS." - -#: grub-core/commands/i386/pc/halt.c:31 -msgid "Do not use APM to halt the computer." -msgstr "Jangan gunakan APM untuk menghentikan komputer." - -#: grub-core/commands/i386/pc/halt.c:119 -msgid "Halt the system, if possible using APM." -msgstr "Hentikan sistem, jika memungkinkan gunakan APM." - -#: grub-core/commands/i386/pc/lsapm.c:75 -msgid "no APM found" -msgstr "no APM found" - -#: grub-core/commands/i386/pc/lsapm.c:77 -#, c-format -msgid "" -"Version %u.%u\n" -"32-bit CS = 0x%x, len = 0x%x, offset = 0x%x\n" -"16-bit CS = 0x%x, len = 0x%x\n" -"DS = 0x%x, len = 0x%x\n" -msgstr "" -"Version %u.%u\n" -"32-bit CS = 0x%x, len = 0x%x, offset = 0x%x\n" -"16-bit CS = 0x%x, len = 0x%x\n" -"DS = 0x%x, len = 0x%x\n" - -#: grub-core/commands/i386/pc/lsapm.c:86 -msgid "16-bit protected interface supported\n" -msgstr "16-bit protected interface supported\n" - -#: grub-core/commands/i386/pc/lsapm.c:87 -msgid "16-bit protected interface unsupported\n" -msgstr "16-bit protected interface unsupported\n" - -#: grub-core/commands/i386/pc/lsapm.c:89 -msgid "32-bit protected interface supported\n" -msgstr "32-bit protected interface supported\n" - -#: grub-core/commands/i386/pc/lsapm.c:90 -msgid "32-bit protected interface unsupported\n" -msgstr "32-bit protected interface unsupported\n" - -#: grub-core/commands/i386/pc/lsapm.c:92 -msgid "CPU Idle slows down processor\n" -msgstr "CPU Idle slows down processor\n" - -#: grub-core/commands/i386/pc/lsapm.c:93 -msgid "CPU Idle doesn't slow down processor\n" -msgstr "CPU Idle doesn't slow down processor\n" - -#: grub-core/commands/i386/pc/lsapm.c:95 -msgid "APM disabled\n" -msgstr "APM disabled\n" - -#: grub-core/commands/i386/pc/lsapm.c:95 -msgid "APM enabled\n" -msgstr "APM enabled\n" - -#: grub-core/commands/i386/pc/lsapm.c:97 -msgid "APM disengaged\n" -msgstr "APM disengaged\n" - -#: grub-core/commands/i386/pc/lsapm.c:97 -msgid "APM engaged\n" -msgstr "APM engaged\n" - -#: grub-core/commands/i386/pc/lsapm.c:107 -msgid "Show APM information." -msgstr "Show APM information." - -#. TRANSLATORS: It's musical notes, not the notes -#. you take. Play command expects arguments which can -#. be either a filename or tempo+notes. -#. This error happens if none is specified. -#: grub-core/commands/i386/pc/play.c:88 -msgid "filename or tempo and notes expected" -msgstr "filename or tempo and notes expected" - -#: grub-core/commands/i386/pc/play.c:113 grub-core/commands/i386/pc/play.c:144 -#, fuzzy, c-format -msgid "Invalid tempo in %s" -msgstr "Node tidak valid -%s\n" - -#: grub-core/commands/i386/pc/play.c:151 grub-core/commands/macbless.c:172 -#: grub-core/fs/archelp.c:260 grub-core/fs/bfs.c:621 grub-core/fs/bfs.c:704 -#: grub-core/fs/btrfs.c:1726 grub-core/fs/btrfs.c:1755 -#: grub-core/fs/btrfs.c:1799 grub-core/fs/btrfs.c:1882 -#: grub-core/fs/btrfs.c:1906 grub-core/fs/fshelp.c:257 grub-core/fs/jfs.c:696 -#: grub-core/fs/minix.c:426 grub-core/fs/ufs.c:544 grub-core/fs/zfs/zfs.c:2083 -#: grub-core/fs/zfs/zfs.c:2095 grub-core/fs/zfs/zfs.c:2301 -#: grub-core/net/http.c:120 -#, c-format -msgid "file `%s' not found" -msgstr "berkas `%s' tidak ditemukan" - -#: grub-core/commands/i386/pc/play.c:162 grub-core/commands/i386/pc/play.c:171 -#: grub-core/kern/misc.c:419 grub-core/script/execute.c:138 -#: grub-core/script/execute.c:244 -msgid "unrecognized number" -msgstr "angka tidak diketahui" - -#: grub-core/commands/i386/pc/play.c:190 -msgid "FILE | TEMPO [PITCH1 DURATION1] [PITCH2 DURATION2] ... " -msgstr "BERKAS | JEDA [PITCH1 DURASI1] [PITCH2 DURASI2] ..." - -#: grub-core/commands/i386/pc/play.c:191 -msgid "Play a tune." -msgstr "Mainkan sebuah nada." - -#: grub-core/commands/i386/pc/sendkey.c:39 -msgid "set numlock mode" -msgstr "tentukan mode numlock" - -#: grub-core/commands/i386/pc/sendkey.c:40 -msgid "set capslock mode" -msgstr "tentukan mode capslock" - -#: grub-core/commands/i386/pc/sendkey.c:41 -msgid "set scrolllock mode" -msgstr "tentukan mode scrolllock" - -#: grub-core/commands/i386/pc/sendkey.c:42 -msgid "set insert mode" -msgstr "tentukan mode insert" - -#: grub-core/commands/i386/pc/sendkey.c:43 -msgid "set pause mode" -msgstr "tentukan mode pause" - -#: grub-core/commands/i386/pc/sendkey.c:44 -msgid "press left shift" -msgstr "tekan shift kiri" - -#: grub-core/commands/i386/pc/sendkey.c:45 -msgid "press right shift" -msgstr "tekan shift kanan" - -#: grub-core/commands/i386/pc/sendkey.c:46 -msgid "press SysRq" -msgstr "tekan SysRq" - -#: grub-core/commands/i386/pc/sendkey.c:47 -msgid "press NumLock key" -msgstr "tekan tombol NumLock" - -#: grub-core/commands/i386/pc/sendkey.c:48 -msgid "press CapsLock key" -msgstr "tekan tombol CapsLock" - -#: grub-core/commands/i386/pc/sendkey.c:49 -msgid "press ScrollLock key" -msgstr "tekan tombol ScrollLock" - -#: grub-core/commands/i386/pc/sendkey.c:50 -msgid "press Insert key" -msgstr "tekan tombol Insert" - -#: grub-core/commands/i386/pc/sendkey.c:51 -msgid "press left alt" -msgstr "tekan alt kiri" - -#: grub-core/commands/i386/pc/sendkey.c:52 -msgid "press right alt" -msgstr "tekan alt kanan" - -#: grub-core/commands/i386/pc/sendkey.c:53 -msgid "press left ctrl" -msgstr "tekan ctrl kiri" - -#: grub-core/commands/i386/pc/sendkey.c:54 -msgid "press right ctrl" -msgstr "tekan ctrl kanan" - -#: grub-core/commands/i386/pc/sendkey.c:55 -msgid "don't update LED state" -msgstr "jangan ubah status LED" - -#: grub-core/commands/i386/pc/sendkey.c:372 -msgid "[KEYSTROKE1] [KEYSTROKE2] ..." -msgstr "[TOMBOL1 TERTEKAN] [TOMBOL2 TERTEKAN] ..." - -#. TRANSLATORS: It can emulate multiple -#. keypresses. -#: grub-core/commands/i386/pc/sendkey.c:375 -msgid "Emulate a keystroke sequence" -msgstr "Emulasi urutan tertekan tombol" - -#: grub-core/commands/i386/rdmsr.c:37 grub-core/commands/iorw.c:34 -#: grub-core/commands/memrw.c:33 grub-core/commands/setpci.c:73 -msgid "Save read value into variable VARNAME." -msgstr "Simpan nilai terbaca kedalam variabel NAMAVAR." - -#: grub-core/commands/i386/rdmsr.c:38 grub-core/commands/iorw.c:35 -#: grub-core/commands/memrw.c:34 grub-core/commands/probe.c:40 -#: grub-core/commands/search_wrap.c:40 grub-core/commands/setpci.c:74 -#: grub-core/commands/tr.c:32 -msgid "VARNAME" -msgstr "VARNAME" - -#: grub-core/commands/i386/rdmsr.c:55 grub-core/commands/i386/rdmsr.c:60 -#: grub-core/commands/i386/rdmsr.c:65 grub-core/commands/i386/wrmsr.c:47 -#: grub-core/commands/i386/wrmsr.c:52 grub-core/commands/i386/wrmsr.c:57 -#, fuzzy -msgid "unsupported instruction" -msgstr "Set kecepatan port serial." - -#: grub-core/commands/i386/rdmsr.c:77 grub-core/commands/i386/wrmsr.c:69 -#: grub-core/commands/i386/wrmsr.c:77 grub-core/net/dns.c:727 -msgid "invalid argument" -msgstr "" - -#: grub-core/commands/i386/rdmsr.c:94 grub-core/commands/memrw.c:125 -#: grub-core/commands/memrw.c:129 grub-core/commands/memrw.c:133 -msgid "ADDR" -msgstr "ALAMAT" - -#: grub-core/commands/i386/rdmsr.c:95 -msgid "Read a CPU model specific register." -msgstr "" - -#: grub-core/commands/i386/wrmsr.c:86 -#, fuzzy -msgid "ADDR VALUE" -msgstr "ALAMAT NILAI [TOPENG]" - -#: grub-core/commands/i386/wrmsr.c:87 -msgid "Write a value to a CPU model specific register." -msgstr "" - -#: grub-core/commands/ieee1275/suspend.c:34 -msgid "Run `go' to resume GRUB." -msgstr "Jalankan `go' untuk melanjutkan GRUB." - -#: grub-core/commands/ieee1275/suspend.c:45 -#, fuzzy -msgid "Return to IEEE1275 prompt." -msgstr "Kembalikan ke prompt Open Firmware." - -#: grub-core/commands/iorw.c:123 grub-core/commands/iorw.c:127 -#: grub-core/commands/iorw.c:131 grub-core/gdb/gdb.c:79 -msgid "PORT" -msgstr "PORT" - -#: grub-core/commands/iorw.c:123 -msgid "Read 8-bit value from PORT." -msgstr "Baca 8-bit nilai dari PORT." - -#: grub-core/commands/iorw.c:127 -msgid "Read 16-bit value from PORT." -msgstr "Baca 16-bit nilai dari PORT." - -#: grub-core/commands/iorw.c:131 -msgid "Read 32-bit value from PORT." -msgstr "Baca 32-bit nilai dari PORT." - -#: grub-core/commands/iorw.c:135 grub-core/commands/iorw.c:139 -msgid "PORT VALUE [MASK]" -msgstr "ALAMAT NILAI [TOPENG]" - -#: grub-core/commands/iorw.c:136 -msgid "Write 8-bit VALUE to PORT." -msgstr "Tulis 8-bit NILAI ke PORT." - -#: grub-core/commands/iorw.c:140 -msgid "Write 16-bit VALUE to PORT." -msgstr "Tulis 16-bit NILAI ke PORT." - -#: grub-core/commands/iorw.c:143 grub-core/commands/memrw.c:137 -#: grub-core/commands/memrw.c:141 grub-core/commands/memrw.c:145 -msgid "ADDR VALUE [MASK]" -msgstr "ALAMAT NILAI [TOPENG]" - -#: grub-core/commands/iorw.c:144 -msgid "Write 32-bit VALUE to PORT." -msgstr "Tulis 32-bit NILAI ke PORT." - -#: grub-core/commands/keylayouts.c:215 grub-core/commands/loadenv.c:61 -#: grub-core/commands/nativedisk.c:189 grub-core/efiemu/main.c:235 -#: grub-core/font/font.c:428 grub-core/gfxmenu/gfxmenu.c:63 -#: grub-core/kern/device.c:42 grub-core/kern/dl.c:740 -#, c-format -msgid "variable `%s' isn't set" -msgstr "variabel `%s' tidak diset" - -#: grub-core/commands/keylayouts.c:301 -msgid "Load a keyboard layout." -msgstr "Muat sebuah layout keyboard" - -#. TRANSLATORS: "Check" in a sense that if this key is pressed then -#. "true" is returned, otherwise "false". -#: grub-core/commands/keystatus.c:32 -msgid "Check Shift key." -msgstr "Periksa tombol Shift." - -#: grub-core/commands/keystatus.c:33 -msgid "Check Control key." -msgstr "Periksa tombol Control." - -#: grub-core/commands/keystatus.c:34 -msgid "Check Alt key." -msgstr "Periksa tombol Alt." - -#. TRANSLATORS: there are 3 modifiers. -#: grub-core/commands/keystatus.c:106 -msgid "Check key modifier status." -msgstr "Periksa keadaan tombol pemodifikasi." - -#: grub-core/commands/legacycfg.c:512 grub-core/commands/legacycfg.c:526 -#: grub-core/commands/legacycfg.c:546 grub-core/commands/legacycfg.c:559 -#: grub-core/commands/time.c:43 grub-core/script/function.c:109 -#: util/grub-file.c:100 util/grub-fstest.c:57 util/grub-mount.c:69 -#, c-format -msgid "can't find command `%s'" -msgstr "tidak dapat menemukan perintah `%s'" - -#: grub-core/commands/legacycfg.c:813 grub-core/normal/auth.c:225 -#: util/grub-mkpasswd-pbkdf2.c:139 -msgid "Enter password: " -msgstr "Masukan kata sandi : " - -#. TRANSLATORS: "legacy config" means -#. "config as used by grub-legacy". -#: grub-core/commands/legacycfg.c:837 -msgid "Parse legacy config in same context" -msgstr "Masukkan konfigurasi standar dalam konteks yang sama" - -#: grub-core/commands/legacycfg.c:842 -msgid "Parse legacy config in new context" -msgstr "Masukkan konfigurasi standar dalam konteks yang baru" - -#: grub-core/commands/legacycfg.c:847 -msgid "Parse legacy config in same context taking only menu entries" -msgstr "" -"Masukkan konfigurasi standar dalam konteks yang sama yang hanya mengambil " -"masukan menu" - -#: grub-core/commands/legacycfg.c:852 -msgid "Parse legacy config in new context taking only menu entries" -msgstr "" -"Masukkan konfigurasi standar dalam konteks yang baru yang hanya mengambil " -"masukan menu" - -#: grub-core/commands/legacycfg.c:856 -msgid "[--no-mem-option] [--type=TYPE] FILE [ARG ...]" -msgstr "[--no-mem-option] [--type=TYPE] FILE [ARG ...]" - -#: grub-core/commands/legacycfg.c:857 -msgid "Simulate grub-legacy `kernel' command" -msgstr "" - -#: grub-core/commands/legacycfg.c:861 grub-core/commands/legacycfg.c:865 -msgid "FILE [ARG ...]" -msgstr "" - -#: grub-core/commands/legacycfg.c:862 -msgid "Simulate grub-legacy `initrd' command" -msgstr "" - -#: grub-core/commands/legacycfg.c:866 -msgid "Simulate grub-legacy `modulenounzip' command" -msgstr "" - -#: grub-core/commands/legacycfg.c:870 grub-core/commands/legacycfg.c:875 -msgid "[--md5] PASSWD [FILE]" -msgstr "" - -#: grub-core/commands/legacycfg.c:871 -msgid "Simulate grub-legacy `password' command" -msgstr "" - -#: grub-core/commands/legacycfg.c:876 -msgid "Simulate grub-legacy `password' command in menu entry mode" -msgstr "" - -#. TRANSLATORS: This option is used to override default filename -#. for loading and storing environment. -#: grub-core/commands/loadenv.c:37 -msgid "Specify filename." -msgstr "Spesifikasikan nama berkas." - -#: grub-core/commands/loadenv.c:39 -msgid "Skip signature-checking of the environment file." -msgstr "" - -#: grub-core/commands/loadenv.c:451 -#, fuzzy -msgid "[-f FILE] [-s|--skip-sig] [variable_name_to_whitelist] [...]" -msgstr "[-f BERKAS] nama_variabel [...]" - -#: grub-core/commands/loadenv.c:452 -msgid "Load variables from environment block file." -msgstr "Muat variabel dari berkas blok lingkungan." - -#: grub-core/commands/loadenv.c:455 -msgid "[-f FILE]" -msgstr "[-f BERKAS]" - -#: grub-core/commands/loadenv.c:456 -msgid "List variables from environment block file." -msgstr "Tampilkan variabel dari berkas blok lingkungan." - -#: grub-core/commands/loadenv.c:460 -msgid "[-f FILE] variable_name [...]" -msgstr "[-f BERKAS] nama_variabel [...]" - -#: grub-core/commands/loadenv.c:461 -msgid "Save variables to environment block file." -msgstr "Simpan variabel ke berkas blok lingkungan." - -#: grub-core/commands/ls.c:40 -msgid "Show a long list with more detailed information." -msgstr "Tampilkan sebuah daftar panjang dengan informasi yang lengkap." - -#: grub-core/commands/ls.c:41 -msgid "Print sizes in a human readable format." -msgstr "Tampilkan ukuran dalam format yang mudah dibaca." - -#: grub-core/commands/ls.c:42 -msgid "List all files." -msgstr "Tampilkan seluruh berkas." - -#: grub-core/commands/ls.c:73 -msgid "Network protocols:" -msgstr "" - -#: grub-core/commands/ls.c:295 -#, fuzzy -msgid "[-l|-h|-a] [FILE ...]" -msgstr "[-l|-h|-a] [BERKAS]" - -#: grub-core/commands/ls.c:296 -msgid "List devices and files." -msgstr "Tampilkan perangkat dan berkas." - -#: grub-core/commands/lsacpi.c:255 -msgid "Show version 1 tables only." -msgstr "" - -#: grub-core/commands/lsacpi.c:256 -msgid "Show version 2 and version 3 tables only." -msgstr "" - -#: grub-core/commands/lsacpi.c:306 -msgid "Show ACPI information." -msgstr "" - -#: grub-core/commands/lsmmap.c:31 -msgid "available RAM" -msgstr "" - -#: grub-core/commands/lsmmap.c:32 -msgid "reserved RAM" -msgstr "" - -#. TRANSLATORS: this refers to memory where ACPI tables are stored -#. and which can be used by OS once it loads ACPI tables. -#: grub-core/commands/lsmmap.c:35 -msgid "ACPI reclaimable RAM" -msgstr "" - -#. TRANSLATORS: this refers to memory which ACPI-compliant OS -#. is required to save accross hibernations. -#: grub-core/commands/lsmmap.c:38 -msgid "ACPI non-volatile storage RAM" -msgstr "" - -#: grub-core/commands/lsmmap.c:39 -msgid "faulty RAM (BadRAM)" -msgstr "" - -#: grub-core/commands/lsmmap.c:40 -msgid "persistent RAM" -msgstr "" - -#: grub-core/commands/lsmmap.c:41 -msgid "persistent RAM (legacy)" -msgstr "" - -#: grub-core/commands/lsmmap.c:42 -msgid "RAM holding coreboot tables" -msgstr "" - -#: grub-core/commands/lsmmap.c:43 -msgid "RAM holding firmware code" -msgstr "" - -#: grub-core/commands/lsmmap.c:52 -#, c-format -msgid "base_addr = 0x%llx, length = 0x%llx, %s\n" -msgstr "" - -#: grub-core/commands/lsmmap.c:55 -#, c-format -msgid "base_addr = 0x%llx, length = 0x%llx, type = 0x%x\n" -msgstr "" - -#: grub-core/commands/lsmmap.c:79 -msgid "List memory map provided by firmware." -msgstr "Tampilkan peta memori yang disediakan oleh firmware." - -#: grub-core/commands/lspci.c:232 -msgid "List PCI devices." -msgstr "Tampilkan perangkat PCI." - -#: grub-core/commands/macbless.c:224 -msgid "Bless FILE of HFS or HFS+ partition for intel macs." -msgstr "" - -#: grub-core/commands/macbless.c:228 -msgid "Bless DIR of HFS or HFS+ partition for PPC macs." -msgstr "" - -#: grub-core/commands/memrw.c:125 -#, fuzzy -msgid "Read 8-bit value from ADDR." -msgstr "Baca byte dari ALAMAT." - -#: grub-core/commands/memrw.c:129 -#, fuzzy -msgid "Read 16-bit value from ADDR." -msgstr "Baca byte dari ALAMAT." - -#: grub-core/commands/memrw.c:133 -#, fuzzy -msgid "Read 32-bit value from ADDR." -msgstr "Baca byte dari ALAMAT." - -#: grub-core/commands/memrw.c:138 -#, fuzzy -msgid "Write 8-bit VALUE to ADDR." -msgstr "Tulis NILAI byte ke ALAMAT." - -#: grub-core/commands/memrw.c:142 -#, fuzzy -msgid "Write 16-bit VALUE to ADDR." -msgstr "Tulis NILAI byte ke ALAMAT." - -#: grub-core/commands/memrw.c:146 -#, fuzzy -msgid "Write 32-bit VALUE to ADDR." -msgstr "Tulis NILAI byte ke ALAMAT." - -#: grub-core/commands/menuentry.c:31 -msgid "Menu entry type." -msgstr "" - -#: grub-core/commands/menuentry.c:31 grub-core/commands/menuentry.c:38 -#: grub-core/commands/menuentry.c:39 grub-core/gettext/gettext.c:520 -#: util/grub-fstest.c:520 util/grub-install.c:291 util/grub-install.c:304 -#: util/grub-mknetdir.c:51 util/grub-mkrescue.c:109 util/grub-mkrescue.c:110 -#: util/grub-mount.c:453 util/grub-render-label.c:65 -#, fuzzy -msgid "STRING" -msgstr "[-e|-n] KATA-KATA" - -#: grub-core/commands/menuentry.c:33 -msgid "List of users allowed to boot this entry." -msgstr "" - -#: grub-core/commands/menuentry.c:33 -msgid "USERNAME[,USERNAME]" -msgstr "" - -#: grub-core/commands/menuentry.c:36 -msgid "Keyboard key to quickly boot this entry." -msgstr "" - -#: grub-core/commands/menuentry.c:36 -msgid "KEYBOARD_KEY" -msgstr "" - -#: grub-core/commands/menuentry.c:38 -msgid "Use STRING as menu entry body." -msgstr "" - -#: grub-core/commands/menuentry.c:39 -msgid "Menu entry identifier." -msgstr "" - -#. TRANSLATORS: menu entry can either be bootable by anyone or only by -#. handful of users. By default when security is active only superusers can -#. boot a given menu entry. With --unrestricted (this option) -#. anyone can boot it. -#: grub-core/commands/menuentry.c:44 -msgid "This entry can be booted by any user." -msgstr "" - -#: grub-core/commands/menuentry.c:323 grub-core/commands/menuentry.c:328 -#: grub-core/tests/test_blockarg.c:46 -msgid "BLOCK" -msgstr "" - -#: grub-core/commands/menuentry.c:323 -msgid "Define a menu entry." -msgstr "" - -#: grub-core/commands/menuentry.c:328 -msgid "Define a submenu." -msgstr "" - -#. TRANSLATORS: this is module list header. Name -#. is module name, Ref Count is a reference counter -#. (how many modules or open descriptors use it). -#. Dependencies are the other modules it uses. -#. -#: grub-core/commands/minicmd.c:162 -msgid "Name\tRef Count\tDependencies\n" -msgstr "" - -#: grub-core/commands/minicmd.c:201 -msgid "Show this message." -msgstr "Tampilkan pesan ini." - -#: grub-core/commands/minicmd.c:204 -msgid "ADDR [SIZE]" -msgstr "" - -#: grub-core/commands/minicmd.c:204 -#, fuzzy -msgid "Show memory contents." -msgstr "Tampilkan isi dari berkas." - -#: grub-core/commands/minicmd.c:207 grub-core/kern/corecmd.c:188 -#: util/grub-install.c:275 -msgid "MODULE" -msgstr "MODUL" - -#: grub-core/commands/minicmd.c:207 -msgid "Remove a module." -msgstr "Hapus sebuah modul." - -#: grub-core/commands/minicmd.c:210 -msgid "Show loaded modules." -msgstr "Tampilkan modul termuat." - -#: grub-core/commands/minicmd.c:213 -msgid "Exit from GRUB." -msgstr "Keluar dari GRUB." - -#: grub-core/commands/mips/loongson/lsspd.c:42 -msgid "No CS5536 found" -msgstr "" - -#: grub-core/commands/mips/loongson/lsspd.c:45 -#, c-format -msgid "CS5536 at %d:%d.%d\n" -msgstr "" - -#. TRANSLATORS: System management bus is often used to access components like -#. RAM (info only, not data) or batteries. I/O space is where in memory -#. its ports are. -#: grub-core/commands/mips/loongson/lsspd.c:55 -#, c-format -msgid "System management bus controller I/O space is at 0x%x\n" -msgstr "" - -#. TRANSLATORS: it's shown in a report in a way -#. like number 1: ... number 2: ... -#. -#: grub-core/commands/mips/loongson/lsspd.c:66 -#, c-format -msgid "RAM slot number %d\n" -msgstr "" - -#: grub-core/commands/mips/loongson/lsspd.c:73 -#, c-format -msgid "Written SPD bytes: %d B.\n" -msgstr "" - -#: grub-core/commands/mips/loongson/lsspd.c:74 -#, fuzzy, c-format -msgid "Total flash size: %d B.\n" -msgstr "Total besar tabel terjemahan: %d\n" - -#: grub-core/commands/mips/loongson/lsspd.c:79 -msgid "Memory type: DDR2." -msgstr "" - -#: grub-core/commands/mips/loongson/lsspd.c:83 -#, fuzzy, c-format -msgid "Part no: %s.\n" -msgstr "Partisi %s:" - -#: grub-core/commands/mips/loongson/lsspd.c:86 -msgid "Memory type: Unknown." -msgstr "" - -#: grub-core/commands/mips/loongson/lsspd.c:97 -#, fuzzy -msgid "Print Memory information." -msgstr "Tampilkan informasi versi dan keluar" - -#: grub-core/commands/nativedisk.c:118 grub-core/commands/probe.c:118 -#: grub-core/commands/probe.c:124 util/grub-probe.c:450 -#, c-format -msgid "%s does not support UUIDs" -msgstr "" - -#: grub-core/commands/nativedisk.c:325 -msgid "[MODULE1 MODULE2 ...]" -msgstr "" - -#: grub-core/commands/nativedisk.c:326 -msgid "" -"Switch to native disk drivers. If no modules are specified default set (pata," -"ahci,usbms,ohci,uhci,ehci) is used" -msgstr "" - -#: grub-core/commands/parttool.c:40 -msgid "" -"Perform COMMANDS on partition.\n" -"Use `parttool PARTITION help' for the list of available commands." -msgstr "" - -#: grub-core/commands/parttool.c:123 -msgid "=VAL" -msgstr "" - -#: grub-core/commands/parttool.c:136 -#, c-format -msgid "Sorry, no parttool is available for %s\n" -msgstr "" - -#: grub-core/commands/parttool.c:288 grub-core/lib/arg.c:285 -#: grub-core/lib/arg.c:351 -#, fuzzy, c-format -msgid "unknown argument `%s'" -msgstr "Argumen ekstra `%s' tidak diketahui.\n" - -#: grub-core/commands/parttool.c:344 -msgid "PARTITION COMMANDS" -msgstr "PERINTAH PARTISI" - -#: grub-core/commands/password.c:85 -msgid "USER PASSWORD" -msgstr "KATA SANDI PENGGUNA" - -#: grub-core/commands/password.c:86 -msgid "Set user password (plaintext). Unrecommended and insecure." -msgstr "" -"Set kata sandi pengguna (teks-terbuka). Tidak direkomendasikan dan tidak " -"aman." - -#. TRANSLATORS: it means that the string which -#. was supposed to be a password hash doesn't -#. have a correct format, not to password -#. mismatch. -#: grub-core/commands/password_pbkdf2.c:98 -#: grub-core/commands/password_pbkdf2.c:115 -#: grub-core/commands/password_pbkdf2.c:123 -#: grub-core/commands/password_pbkdf2.c:150 -#: grub-core/commands/password_pbkdf2.c:179 -msgid "invalid PBKDF2 password" -msgstr "" - -#: grub-core/commands/password_pbkdf2.c:202 -#, fuzzy -msgid "USER PBKDF2_PASSWORD" -msgstr "KATA SANDI PENGGUNA" - -#: grub-core/commands/password_pbkdf2.c:203 -msgid "Set user password (PBKDF2). " -msgstr "" - -#: grub-core/commands/pcidump.c:39 grub-core/commands/setpci.c:69 -msgid "Select device by vendor and device IDs." -msgstr "" - -#: grub-core/commands/pcidump.c:40 grub-core/commands/setpci.c:70 -msgid "[vendor]:[device]" -msgstr "" - -#: grub-core/commands/pcidump.c:41 grub-core/commands/setpci.c:71 -msgid "Select device by its position on the bus." -msgstr "" - -#: grub-core/commands/pcidump.c:42 grub-core/commands/setpci.c:72 -msgid "[bus]:[slot][.func]" -msgstr "" - -#: grub-core/commands/pcidump.c:109 grub-core/commands/pcidump.c:138 -#: grub-core/commands/setpci.c:183 grub-core/commands/setpci.c:214 -#: grub-core/fs/zfs/zfs.c:3794 grub-core/kern/emu/hostdisk.c:458 -#: grub-core/kern/emu/hostdisk.c:473 grub-core/kern/file.c:44 -#, c-format -msgid "missing `%c' symbol" -msgstr "" - -#: grub-core/commands/pcidump.c:168 -msgid "[-s POSITION] [-d DEVICE]" -msgstr "" - -#: grub-core/commands/pcidump.c:169 -msgid "Show raw dump of the PCI configuration space." -msgstr "" - -#: grub-core/commands/pgp.c:45 -msgid "Skip signature-checking of the public key file." -msgstr "" - -#. TRANSLATORS: it's about GNUPG signatures. -#: grub-core/commands/pgp.c:71 grub-core/commands/pgp.c:81 -#: grub-core/commands/pgp.c:86 grub-core/commands/pgp.c:96 -#: grub-core/commands/pgp.c:103 grub-core/commands/pgp.c:107 -#: grub-core/commands/pgp.c:114 grub-core/commands/pgp.c:119 -#: grub-core/commands/pgp.c:124 grub-core/commands/pgp.c:128 -#: grub-core/commands/pgp.c:268 grub-core/commands/pgp.c:276 -#: grub-core/commands/pgp.c:281 grub-core/commands/pgp.c:289 -#: grub-core/commands/pgp.c:320 grub-core/commands/pgp.c:327 -#: grub-core/commands/pgp.c:332 grub-core/commands/pgp.c:342 -#: grub-core/commands/pgp.c:468 grub-core/commands/pgp.c:471 -#: grub-core/commands/pgp.c:474 grub-core/commands/pgp.c:477 -#: grub-core/commands/pgp.c:484 grub-core/commands/pgp.c:490 -#: grub-core/commands/pgp.c:665 -msgid "bad signature" -msgstr "" - -#. TRANSLATORS: %08x is 32-bit key id. -#: grub-core/commands/pgp.c:636 grub-core/commands/pgp.c:812 -#, c-format -msgid "public key %08x not found" -msgstr "" - -#: grub-core/commands/pgp.c:651 grub-core/disk/diskfilter.c:772 -#: grub-core/disk/diskfilter.c:782 grub-core/fs/ntfs.c:404 -#: grub-core/fs/zfs/zfs.c:1933 grub-core/normal/menu.c:428 -#, c-format -msgid "module `%s' isn't loaded" -msgstr "" - -#: grub-core/commands/pgp.c:994 -msgid "[-s|--skip-sig] FILE SIGNATURE_FILE [PUBKEY_FILE]" -msgstr "" - -#: grub-core/commands/pgp.c:995 -msgid "Verify detached signature." -msgstr "" - -#: grub-core/commands/pgp.c:998 -msgid "[-s|--skip-sig] PUBKEY_FILE" -msgstr "" - -#: grub-core/commands/pgp.c:999 -msgid "Add PUBKEY_FILE to trusted keys." -msgstr "" - -#: grub-core/commands/pgp.c:1003 -msgid "Show the list of trusted keys." -msgstr "" - -#: grub-core/commands/pgp.c:1005 -msgid "PUBKEY_ID" -msgstr "" - -#: grub-core/commands/pgp.c:1006 -msgid "Remove PUBKEY_ID from trusted keys." -msgstr "" - -#: grub-core/commands/probe.c:40 grub-core/commands/tr.c:32 -msgid "Set a variable to return value." -msgstr "Set sebuah variabel ke nilai kembali." - -#. TRANSLATORS: It's a driver that is currently in use to access -#. the diven disk. -#: grub-core/commands/probe.c:43 -msgid "Determine driver." -msgstr "Tentukan driver." - -#: grub-core/commands/probe.c:44 -msgid "Determine partition map type." -msgstr "Tentukan tipe peta partisi." - -#: grub-core/commands/probe.c:45 -msgid "Determine filesystem type." -msgstr "Tentukan tipe sistem berkas." - -#: grub-core/commands/probe.c:46 -msgid "Determine filesystem UUID." -msgstr "Tentukan UUID sistem berkas." - -#: grub-core/commands/probe.c:47 -msgid "Determine filesystem label." -msgstr "Tentukan nama sistem berkas." - -#: grub-core/commands/probe.c:139 grub-core/commands/probe.c:146 -#: util/grub-probe.c:462 -#, c-format -msgid "filesystem `%s' does not support labels" -msgstr "" - -#: grub-core/commands/probe.c:165 grub-core/fs/zfs/zfsinfo.c:430 -#: grub-core/loader/i386/bsd.c:169 util/grub-setup.c:223 -msgid "DEVICE" -msgstr "PERANGKAT" - -#: grub-core/commands/probe.c:166 -msgid "Retrieve device info." -msgstr "Dapatkan informasi perangkat." - -#: grub-core/commands/read.c:85 -msgid "[ENVVAR]" -msgstr "[ENVVAR]" - -#: grub-core/commands/read.c:86 -msgid "Set variable with user input." -msgstr "Set variabel dengan masukan pengguna." - -#: grub-core/commands/reboot.c:40 -msgid "Reboot the computer." -msgstr "Reboot komputer." - -#. TRANSLATORS: in regexp you can mark some -#. groups with parentheses. These groups are -#. then numbered and you can save some of -#. them in variables. In other programs -#. those components aree often referenced with -#. back slash, e.g. \1. Compare -#. sed -e 's,\([a-z][a-z]*\),lowercase=\1,g' -#. The whole matching component is saved in VARNAME, not its number. -#. -#: grub-core/commands/regexp.c:44 -msgid "Store matched component NUMBER in VARNAME." -msgstr "" - -#: grub-core/commands/regexp.c:45 -msgid "[NUMBER:]VARNAME" -msgstr "" - -#. TRANSLATORS: This are two arguments. So it's -#. two separate units to translate and pay -#. attention not to reverse them. -#: grub-core/commands/regexp.c:157 -msgid "REGEXP STRING" -msgstr "" - -#: grub-core/commands/regexp.c:158 -msgid "Test if REGEXP matches STRING." -msgstr "" - -#: grub-core/commands/search.c:324 -#, fuzzy -msgid "NAME [VARIABLE] [HINTS]" -msgstr "NAMA [VARIABEL]" - -#: grub-core/commands/search_file.c:4 -msgid "" -"Search devices by file. If VARIABLE is specified, the first device found is " -"set to a variable." -msgstr "" -"Cari perangkat dengan berkas. Jika VARIABEL dispesifikasikan, perangkat " -"pertama yang ditemukan diset ke variabel." - -#: grub-core/commands/search_label.c:4 -msgid "" -"Search devices by label. If VARIABLE is specified, the first device found is " -"set to a variable." -msgstr "" -"Cari perangkat berdasarkan nama. Jika VARIABEL dispesifikasikan, perangkat " -"pertama yang ditemukan diset ke variabel." - -#: grub-core/commands/search_uuid.c:4 -msgid "" -"Search devices by UUID. If VARIABLE is specified, the first device found is " -"set to a variable." -msgstr "" -"Cari perangkat dengan UUID. Jika VARIABEL dispesifikasikan, perangkat " -"pertama yang ditemukan diset ke sebuah variabel." - -#: grub-core/commands/search_wrap.c:34 -#, fuzzy -msgid "Search devices by a file." -msgstr "Buat perangkat dari berkas." - -#: grub-core/commands/search_wrap.c:35 -#, fuzzy -msgid "Search devices by a filesystem label." -msgstr "Tentukan nama sistem berkas." - -#: grub-core/commands/search_wrap.c:37 -#, fuzzy -msgid "Search devices by a filesystem UUID." -msgstr "Tentukan UUID sistem berkas." - -#: grub-core/commands/search_wrap.c:40 -#, fuzzy -msgid "Set a variable to the first device found." -msgstr "Set sebuah variabel ke nilai kembali." - -#: grub-core/commands/search_wrap.c:42 -msgid "Do not probe any floppy drive." -msgstr "" - -#: grub-core/commands/search_wrap.c:44 -msgid "" -"First try the device HINT. If HINT ends in comma, also try subpartitions" -msgstr "" - -#: grub-core/commands/search_wrap.c:45 grub-core/commands/search_wrap.c:49 -#: grub-core/commands/search_wrap.c:53 grub-core/commands/search_wrap.c:57 -#: grub-core/commands/search_wrap.c:61 grub-core/commands/search_wrap.c:65 -msgid "HINT" -msgstr "" - -#: grub-core/commands/search_wrap.c:47 -msgid "" -"First try the device HINT if currently running on IEEE1275. If HINT ends in " -"comma, also try subpartitions" -msgstr "" - -#: grub-core/commands/search_wrap.c:51 -msgid "" -"First try the device HINT if currently running on BIOS. If HINT ends in " -"comma, also try subpartitions" -msgstr "" - -#: grub-core/commands/search_wrap.c:55 -msgid "" -"First try the device HINT if direct hardware access is supported. If HINT " -"ends in comma, also try subpartitions" -msgstr "" - -#: grub-core/commands/search_wrap.c:59 -msgid "" -"First try the device HINT if currently running on EFI. If HINT ends in " -"comma, also try subpartitions" -msgstr "" - -#: grub-core/commands/search_wrap.c:63 -msgid "" -"First try the device HINT if currently running on ARC. If HINT ends in " -"comma, also try subpartitions" -msgstr "" - -#: grub-core/commands/search_wrap.c:207 -msgid "[-f|-l|-u|-s|-n] [--hint HINT [--hint HINT] ...] NAME" -msgstr "" - -#: grub-core/commands/search_wrap.c:209 -#, fuzzy -msgid "" -"Search devices by file, filesystem label or filesystem UUID. If --set is " -"specified, the first device found is set to a variable. If no variable name " -"is specified, `root' is used." -msgstr "" -"Cari perangkat berdasarkan nama. Jika VARIABEL dispesifikasikan, perangkat " -"pertama yang ditemukan diset ke variabel." - -#: grub-core/commands/setpci.c:132 -#, c-format -msgid "Register %x of %x:%02x.%x is %x\n" -msgstr "" - -#: grub-core/commands/setpci.c:333 -msgid "[-s POSITION] [-d DEVICE] [-v VAR] REGISTER[=VALUE[:MASK]]" -msgstr "" - -#: grub-core/commands/setpci.c:335 -#, fuzzy -msgid "Manipulate PCI devices." -msgstr "Tampilkan perangkat PCI." - -#: grub-core/commands/sleep.c:32 -msgid "Verbose countdown." -msgstr "Hitung mundur secara detail." - -#: grub-core/commands/sleep.c:33 -#, fuzzy -msgid "Allow to interrupt with ESC." -msgstr "Dapat diinterupsi dengan ESC." - -#: grub-core/commands/sleep.c:109 -msgid "NUMBER_OF_SECONDS" -msgstr "JUMLAH_DARI_DETIK" - -#: grub-core/commands/sleep.c:110 -msgid "Wait for a specified number of seconds." -msgstr "Tunggu selama jumlah dari detik yang dispesifikasikan." - -#: grub-core/commands/syslinuxcfg.c:50 util/grub-syslinux2cfg.c:66 -msgid "root directory of the syslinux disk [default=/]." -msgstr "" - -#: grub-core/commands/syslinuxcfg.c:53 util/grub-syslinux2cfg.c:72 -msgid "" -"current directory of syslinux [default is parent directory of input file]." -msgstr "" - -#: grub-core/commands/syslinuxcfg.c:55 util/grub-syslinux2cfg.c:75 -msgid "assume input is an isolinux configuration file." -msgstr "" - -#: grub-core/commands/syslinuxcfg.c:56 util/grub-syslinux2cfg.c:76 -msgid "assume input is a pxelinux configuration file." -msgstr "" - -#: grub-core/commands/syslinuxcfg.c:57 util/grub-syslinux2cfg.c:77 -msgid "assume input is a syslinux configuration file." -msgstr "" - -#. TRANSLATORS: "syslinux config" means -#. "config as used by syslinux". -#: grub-core/commands/syslinuxcfg.c:189 -msgid "Execute syslinux config in same context" -msgstr "" - -#: grub-core/commands/syslinuxcfg.c:195 -msgid "Execute syslinux config in new context" -msgstr "" - -#: grub-core/commands/syslinuxcfg.c:201 -msgid "Execute syslinux config in same context taking only menu entries" -msgstr "" - -#: grub-core/commands/syslinuxcfg.c:207 -msgid "Execute syslinux config in new context taking only menu entries" -msgstr "" - -#: grub-core/commands/terminal.c:90 -#, fuzzy -msgid "no terminal specified" -msgstr "Perangkat tidak dispesifikasikan.\n" - -#: grub-core/commands/terminal.c:112 grub-core/commands/terminal.c:139 -#, c-format -msgid "terminal `%s' isn't found" -msgstr "" - -#: grub-core/commands/terminal.c:244 -msgid "Active input terminals:" -msgstr "" - -#: grub-core/commands/terminal.c:245 -msgid "Available input terminals:" -msgstr "" - -#: grub-core/commands/terminal.c:261 -msgid "Active output terminals:" -msgstr "" - -#: grub-core/commands/terminal.c:262 -msgid "Available output terminals:" -msgstr "" - -#: grub-core/commands/terminal.c:271 grub-core/commands/terminal.c:276 -msgid "[--append|--remove] [TERMINAL1] [TERMINAL2] ..." -msgstr "" - -#: grub-core/commands/terminal.c:273 -#, fuzzy -msgid "List or select an input terminal." -msgstr "Tampilkan atau pilih pengendali." - -#: grub-core/commands/terminal.c:278 -#, fuzzy -msgid "List or select an output terminal." -msgstr "Tampilkan atau pilih pengendali." - -#: grub-core/commands/test.c:444 -msgid "EXPRESSION ]" -msgstr "EKSPRESI ]" - -#: grub-core/commands/test.c:444 grub-core/commands/test.c:447 -msgid "Evaluate an expression." -msgstr "Evaluasi sebuah ekspresi." - -#: grub-core/commands/test.c:447 -msgid "EXPRESSION" -msgstr "EKSPRESI" - -#: grub-core/commands/testload.c:164 -msgid "Load the same file in multiple ways." -msgstr "" - -#: grub-core/commands/testspeed.c:35 -msgid "Specify size for each read operation" -msgstr "" - -#: grub-core/commands/testspeed.c:58 -msgid "invalid block size" -msgstr "" - -#: grub-core/commands/testspeed.c:80 -#, c-format -msgid "File size: %s\n" -msgstr "" - -#: grub-core/commands/testspeed.c:83 -#, c-format -msgid "Elapsed time: %d.%03d s \n" -msgstr "" - -#: grub-core/commands/testspeed.c:92 -#, c-format -msgid "Speed: %s \n" -msgstr "" - -#: grub-core/commands/testspeed.c:107 -msgid "[-s SIZE] FILENAME" -msgstr "" - -#: grub-core/commands/testspeed.c:108 -msgid "Test file read speed." -msgstr "" - -#: grub-core/commands/time.c:38 grub-core/script/execute.c:974 -#, fuzzy -msgid "no command is specified" -msgstr "Perangkat tidak dispesifikasikan.\n" - -#: grub-core/commands/time.c:50 -#, c-format -msgid "Elapsed time: %d.%03d seconds \n" -msgstr "" - -#: grub-core/commands/time.c:61 -msgid "COMMAND [ARGS]" -msgstr "" - -#: grub-core/commands/time.c:62 -msgid "Measure time used by COMMAND" -msgstr "" - -#: grub-core/commands/tr.c:33 -msgid "Translate to upper case." -msgstr "" - -#: grub-core/commands/tr.c:34 -msgid "Translate to lower case." -msgstr "" - -#: grub-core/commands/tr.c:119 -msgid "[OPTIONS] [SET1] [SET2] [STRING]" -msgstr "" - -#: grub-core/commands/tr.c:120 -msgid "Translate SET1 characters to SET2 in STRING." -msgstr "" - -#. TRANSLATORS: it's a command description. -#: grub-core/commands/true.c:50 -msgid "Do nothing, successfully." -msgstr "Tidak melakukan apapun, sukses." - -#. TRANSLATORS: it's a command description. -#: grub-core/commands/true.c:54 -msgid "Do nothing, unsuccessfully." -msgstr "Tidak melakukan apapun, tidak sukses." - -#: grub-core/commands/usbtest.c:221 -msgid "Test USB support." -msgstr "Coba dukungan USB." - -#: grub-core/commands/verifiers.c:120 -#, c-format -msgid "verification requested but nobody cares: %s" -msgstr "" - -#: grub-core/commands/verifiers.c:140 -msgid "big file signature isn't implemented yet" -msgstr "" - -#: grub-core/commands/videoinfo.c:61 -msgid "Text-only " -msgstr "" - -#. TRANSLATORS: "Direct color" is a mode when the color components -#. are written dirrectly into memory. -#: grub-core/commands/videoinfo.c:66 -#, c-format -msgid "Direct color, mask: %d/%d/%d/%d pos: %d/%d/%d/%d" -msgstr "" - -#. TRANSLATORS: In "paletted color" mode you write the index of the color -#. in the palette. Synonyms include "packed pixel". -#: grub-core/commands/videoinfo.c:78 -msgid "Paletted " -msgstr "" - -#: grub-core/commands/videoinfo.c:80 -msgid "YUV " -msgstr "" - -#. TRANSLATORS: "Planar" is the video memory where you have to write -#. in several different banks "plans" to control the different color -#. components of the same pixel. -#: grub-core/commands/videoinfo.c:85 -msgid "Planar " -msgstr "" - -#: grub-core/commands/videoinfo.c:87 -msgid "Hercules " -msgstr "" - -#: grub-core/commands/videoinfo.c:89 -msgid "CGA " -msgstr "" - -#. TRANSLATORS: Non-chain 4 is a 256-color planar -#. (unchained) video memory mode. -#: grub-core/commands/videoinfo.c:93 -msgid "Non-chain 4 " -msgstr "" - -#: grub-core/commands/videoinfo.c:95 -msgid "Monochrome " -msgstr "" - -#: grub-core/commands/videoinfo.c:97 -msgid "Unknown video mode " -msgstr "" - -#: grub-core/commands/videoinfo.c:111 -msgid " EDID checksum invalid" -msgstr "" - -#: grub-core/commands/videoinfo.c:116 -#, c-format -msgid " EDID version: %u.%u\n" -msgstr "" - -#: grub-core/commands/videoinfo.c:120 -#, c-format -msgid " Preferred mode: %ux%u\n" -msgstr "" - -#: grub-core/commands/videoinfo.c:123 -msgid " No preferred mode available\n" -msgstr "" - -#: grub-core/commands/videoinfo.c:146 grub-core/video/video.c:490 -#: grub-core/video/video.c:498 grub-core/video/video.c:509 -#: grub-core/video/video.c:520 grub-core/video/video.c:528 -#, fuzzy, c-format -msgid "invalid video mode specification `%s'" -msgstr "perangkat root `%s' tidak valid" - -#: grub-core/commands/videoinfo.c:168 -msgid "List of supported video modes:" -msgstr "" - -#: grub-core/commands/videoinfo.c:169 -msgid "Legend: mask/position=red/green/blue/reserved" -msgstr "" - -#: grub-core/commands/videoinfo.c:176 -#, c-format -msgid "Adapter `%s':\n" -msgstr "" - -#: grub-core/commands/videoinfo.c:180 -msgid " No info available" -msgstr "" - -#: grub-core/commands/videoinfo.c:198 -msgid " Failed to initialize video adapter" -msgstr "" - -#. TRANSLATORS: "x" has to be entered in, -#. like an identifier, so please don't -#. use better Unicode codepoints. -#: grub-core/commands/videoinfo.c:239 grub-core/commands/videoinfo.c:248 -msgid "[WxH[xD]]" -msgstr "" - -#: grub-core/commands/videoinfo.c:240 grub-core/commands/videoinfo.c:249 -msgid "" -"List available video modes. If resolution is given show only modes matching " -"it." -msgstr "" - -#. TRANSLATORS: "x" has to be entered in, -#. like an identifier, so please don't -#. use better Unicode codepoints. -#: grub-core/commands/videotest.c:225 -msgid "[WxH]" -msgstr "" - -#. TRANSLATORS: Here, on the other hand, it's -#. nicer to use unicode cross instead of x. -#: grub-core/commands/videotest.c:228 -#, fuzzy -msgid "Test video subsystem in mode WxH." -msgstr "Coba subsistem video." - -#: grub-core/commands/videotest.c:231 -msgid "Test video subsystem." -msgstr "Coba subsistem video." - -#: grub-core/commands/xen/lsxen.c:80 grub-core/commands/xen/lsxen.c:82 -msgid "[DIR]" -msgstr "" - -#: grub-core/commands/xen/lsxen.c:81 grub-core/commands/xen/lsxen.c:83 -msgid "List Xen storage." -msgstr "" - -#. TRANSLATORS: GRUBUUID stands for "filesystem -#. UUID as used in GRUB". -#: grub-core/commands/xnu_uuid.c:110 -#, fuzzy -msgid "[-l] GRUBUUID [VARNAME]" -msgstr "GRUBUUID [NAMAVAR]" - -#: grub-core/commands/xnu_uuid.c:111 -#, fuzzy -msgid "" -"Transform 64-bit UUID to format suitable for XNU. If -l is given keep it " -"lowercase as done by blkid." -msgstr "Transformasikan 64-bit UUID ke format yang sesuai untuk XNU." - -#: grub-core/disk/arc/arcdisk.c:248 grub-core/disk/efi/efidisk.c:603 -#: grub-core/disk/i386/pc/biosdisk.c:498 grub-core/disk/i386/pc/biosdisk.c:543 -#: grub-core/disk/ieee1275/nand.c:198 grub-core/disk/ieee1275/obdisk.c:527 -#: grub-core/disk/ieee1275/ofdisk.c:586 -#, c-format -msgid "failure reading sector 0x%llx from `%s'" -msgstr "" - -#: grub-core/disk/arc/arcdisk.c:284 grub-core/disk/efi/efidisk.c:626 -#: grub-core/disk/i386/pc/biosdisk.c:548 grub-core/disk/ieee1275/ofdisk.c:606 -#, c-format -msgid "failure writing sector 0x%llx to `%s'" -msgstr "" - -#: grub-core/disk/cryptodisk.c:40 -msgid "Mount by UUID." -msgstr "" - -#. TRANSLATORS: It's still restricted to cryptodisks only. -#: grub-core/disk/cryptodisk.c:42 -msgid "Mount all." -msgstr "" - -#: grub-core/disk/cryptodisk.c:43 -msgid "Mount all volumes with `boot' flag set." -msgstr "" - -#. TRANSLATORS: The first %s is the file being looked at, the second %s is -#. the error message. -#: grub-core/disk/cryptodisk.c:526 grub-core/kern/emu/hostdisk.c:152 -#: grub-core/kern/emu/hostdisk.c:262 grub-core/kern/emu/hostdisk.c:434 -#: grub-core/kern/emu/misc.c:168 grub-core/kern/emu/misc.c:174 -#: grub-core/kern/emu/misc.c:196 grub-core/osdep/bsd/getroot.c:92 -#: grub-core/osdep/bsd/getroot.c:168 grub-core/osdep/hurd/getroot.c:68 -#: grub-core/osdep/linux/blocklist.c:65 grub-core/osdep/linux/getroot.c:150 -#: grub-core/osdep/linux/hostdisk.c:194 grub-core/osdep/linux/hostdisk.c:421 -#: grub-core/osdep/linux/ofpath.c:417 grub-core/osdep/linux/ofpath.c:422 -#: grub-core/osdep/linux/ofpath.c:517 grub-core/osdep/linux/ofpath.c:530 -#: grub-core/osdep/sun/getroot.c:110 grub-core/osdep/windows/blocklist.c:98 -#: grub-core/tests/video_checksum.c:279 util/editenv.c:46 util/glue-efi.c:115 -#: util/glue-efi.c:120 util/glue-efi.c:130 util/grub-editenv.c:138 -#: util/grub-editenv.c:192 util/grub-file.c:83 util/grub-fstest.c:128 -#: util/grub-fstest.c:568 util/grub-install-common.c:92 -#: util/grub-install-common.c:94 util/grub-install-common.c:101 -#: util/grub-install-common.c:529 util/grub-menulst2cfg.c:53 -#: util/grub-menulst2cfg.c:68 util/grub-mkimage.c:292 util/grub-mklayout.c:504 -#: util/grub-mklayout.c:516 util/grub-mknetdir.c:133 util/grub-mknetdir.c:151 -#: util/grub-mkrescue.c:627 util/grub-mkrescue.c:631 util/grub-mkrescue.c:879 -#: util/grub-mkrescue.c:883 util/grub-mkstandalone.c:253 util/grub-mount.c:498 -#: util/grub-render-label.c:169 util/grub-script-check.c:175 -#: util/grub-syslinux2cfg.c:181 util/grub-syslinux2cfg.c:191 -#: util/grub-syslinux2cfg.c:212 util/grub-syslinux2cfg.c:228 util/misc.c:91 -#: util/render-label.c:76 util/render-label.c:163 util/render-label.c:174 -#: util/resolve.c:246 util/setup.c:783 -#, fuzzy, c-format -msgid "cannot open `%s': %s" -msgstr "tidak dapat membuka `%s'" - -#: grub-core/disk/cryptodisk.c:583 grub-core/disk/cryptodisk.c:628 -#: grub-core/kern/emu/hostdisk.c:270 grub-core/kern/emu/hostfs.c:142 -#: grub-core/osdep/linux/hostdisk.c:456 util/grub-editenv.c:143 -#: util/grub-editenv.c:149 util/grub-fstest.c:320 util/misc.c:111 -#, fuzzy, c-format -msgid "cannot seek `%s': %s" -msgstr "tidak dapat membuka `%s'" - -#: grub-core/disk/cryptodisk.c:1144 -msgid "SOURCE|-u UUID|-a|-b" -msgstr "" - -#: grub-core/disk/cryptodisk.c:1145 -#, fuzzy -msgid "Mount a crypto device." -msgstr "Set perangkat root." - -#. TRANSLATORS: This message kicks in during the detection of -#. which modules needs to be included in core image. This happens -#. in the case of degraded RAID and means that autodetection may -#. fail to include some of modules. It's an installation time -#. message, not runtime message. -#: grub-core/disk/diskfilter.c:343 grub-core/disk/diskfilter.c:376 -#, c-format -msgid "" -"Couldn't find physical volume `%s'. Some modules may be missing from core " -"image." -msgstr "" - -#: grub-core/disk/diskfilter.c:480 -#, c-format -msgid "physical volume %s not found" -msgstr "" - -#: grub-core/disk/efi/efidisk.c:600 grub-core/disk/efi/efidisk.c:623 -#, c-format -msgid "no media in `%s'" -msgstr "" - -#: grub-core/disk/geli.c:75 -msgid "Couldn't load sha256" -msgstr "" - -#: grub-core/disk/geli.c:85 -msgid "Couldn't load sha512" -msgstr "" - -#: grub-core/disk/geli.c:216 grub-core/disk/geli.c:220 -msgid "couldn't read ELI metadata" -msgstr "" - -#: grub-core/disk/geli.c:231 -msgid "wrong ELI magic or version" -msgstr "" - -#: grub-core/disk/geli.c:435 grub-core/disk/luks.c:329 -msgid "Attempting to decrypt master key..." -msgstr "" - -#: grub-core/disk/geli.c:441 grub-core/disk/luks.c:347 -#, fuzzy, c-format -msgid "Enter passphrase for %s%s%s (%s): " -msgstr "Menggunakan %s untuk %s%s%s (%s)\n" - -#. TRANSLATORS: It's a cryptographic key slot: one element of an array -#. where each element is either empty or holds a key. -#: grub-core/disk/geli.c:530 grub-core/disk/luks.c:451 -#, c-format -msgid "Slot %d opened\n" -msgstr "" - -#: grub-core/disk/i386/pc/biosdisk.c:470 grub-core/disk/i386/pc/biosdisk.c:524 -#: grub-core/disk/i386/pc/biosdisk.c:534 grub-core/kern/disk_common.c:47 -#, fuzzy, c-format -msgid "attempt to read or write outside of disk `%s'" -msgstr "mencoba untuk membaca image core `%s' dari GRUB" - -#: grub-core/disk/i386/pc/biosdisk.c:491 grub-core/disk/i386/pc/biosdisk.c:611 -#: grub-core/disk/scsi.c:726 -msgid "cannot write to CD-ROM" -msgstr "" - -#: grub-core/disk/i386/pc/biosdisk.c:662 -msgid "" -"Native disk drivers are in use. Refusing to use firmware disk interface." -msgstr "" - -#. TRANSLATORS: it's a partition for embedding, -#. not a partition embed into something. GRUB -#. install tools put core.img into a place -#. usable for bootloaders (called generically -#. "embedding zone") and this operation is -#. called "embedding". -#: grub-core/disk/ldm.c:1015 -#, fuzzy -msgid "your LDM Embedding Partition is too small; embedding won't be possible" -msgstr "" -"Label partisi gaya msdos ini tidak memiliki post-MBR gap; penempatan tidak " -"memungkinkan!" - -#. TRANSLATORS: it's a partition for embedding, -#. not a partition embed into something. -#: grub-core/disk/ldm.c:1033 -#, fuzzy -msgid "this LDM has no Embedding Partition; embedding won't be possible" -msgstr "" -"Label partisi GPT ini tidak memiliki partisi boot BIOS; penempatan tidak " -"memungkinkan!" - -#. TRANSLATORS: The disk is simply removed from the list of available ones, -#. not wiped, avoid to scare user. -#: grub-core/disk/loopback.c:45 -#, fuzzy -msgid "Delete the specified loopback drive." -msgstr "Hapus masukan perangkat loopback." - -#: grub-core/disk/loopback.c:237 -#, fuzzy -msgid "[-d] DEVICENAME FILE." -msgstr "[-d|-p] NAMAPERANGKAT BERKAS." - -#. TRANSLATORS: The file itself is not destroyed -#. or transformed into drive. -#: grub-core/disk/loopback.c:240 -#, fuzzy -msgid "Make a virtual drive from a file." -msgstr "Buat perangkat dari berkas." - -#: grub-core/efiemu/i386/loadcore32.c:111 -#: grub-core/efiemu/i386/loadcore64.c:125 grub-core/kern/arm/dl.c:256 -#: grub-core/kern/arm64/dl.c:187 grub-core/kern/i386/dl.c:75 -#: grub-core/kern/ia64/dl.c:140 grub-core/kern/mips/dl.c:258 -#: grub-core/kern/powerpc/dl.c:163 grub-core/kern/riscv/dl.c:334 -#: grub-core/kern/sparc64/dl.c:180 grub-core/kern/x86_64/dl.c:110 -#: util/grub-mkimagexx.c:756 util/grub-mkimagexx.c:881 -#: util/grub-mkimagexx.c:945 util/grub-mkimagexx.c:1026 -#: util/grub-mkimagexx.c:1120 util/grub-mkimagexx.c:1222 -#: util/grub-mkimagexx.c:1413 util/grub-mkimagexx.c:1628 -#: util/grub-mkimagexx.c:1665 util/grub-mkimagexx.c:1697 -#: util/grub-mkimagexx.c:1767 util/grub-mkimagexx.c:1797 -#, c-format -msgid "relocation 0x%x is not implemented yet" -msgstr "" - -#: grub-core/efiemu/loadcore.c:200 grub-core/efiemu/loadcore.c:237 -#: grub-core/loader/i386/bsdXX.c:317 util/grub-mkimagexx.c:2360 -msgid "no symbol table" -msgstr "" - -#: grub-core/efiemu/loadcore.c:346 grub-core/kern/dl.c:609 -#: grub-core/loader/ia64/efi/linux.c:345 grub-core/loader/mips/linux.c:248 -#: grub-core/loader/multiboot_elfxx.c:76 -#: grub-core/loader/powerpc/ieee1275/linux.c:280 -#: grub-core/loader/sparc64/ieee1275/linux.c:320 -msgid "this ELF file is not of the right type" -msgstr "" - -#: grub-core/efiemu/main.c:313 -msgid "Load and initialize EFI emulator." -msgstr "" - -#: grub-core/efiemu/main.c:317 -msgid "Finalize loading of EFI emulator." -msgstr "" - -#: grub-core/efiemu/main.c:320 -#, fuzzy -msgid "Unload EFI emulator." -msgstr "Bongkar-muat lingkungan PXE." - -#: grub-core/efiemu/symbols.c:92 grub-core/kern/dl.c:376 -#, c-format -msgid "symbol `%s' not found" -msgstr "" - -#: grub-core/font/font_cmd.c:52 -msgid "Loaded fonts:" -msgstr "" - -#: grub-core/font/font_cmd.c:74 -#, fuzzy -msgid "FILE..." -msgstr "BERKAS" - -#: grub-core/font/font_cmd.c:75 -msgid "Specify one or more font files to load." -msgstr "" - -#: grub-core/font/font_cmd.c:78 -msgid "List the loaded fonts." -msgstr "" - -#: grub-core/fs/archelp.c:216 grub-core/fs/archelp.c:278 -#: grub-core/fs/btrfs.c:1815 grub-core/fs/fshelp.c:227 grub-core/fs/jfs.c:736 -#: grub-core/fs/minix.c:369 grub-core/fs/ufs.c:454 -msgid "too deep nesting of symlinks" -msgstr "" - -#: grub-core/fs/bfs.c:228 grub-core/fs/fshelp.c:368 grub-core/fs/minix.c:270 -#: grub-core/kern/file.c:156 -msgid "attempt to read past the end of file" -msgstr "" - -#: grub-core/fs/btrfs.c:1698 grub-core/fs/btrfs.c:1957 -#: grub-core/fs/fshelp.c:189 grub-core/fs/fshelp.c:309 grub-core/fs/jfs.c:431 -#: grub-core/fs/minix.c:414 grub-core/fs/minix.c:562 -#: grub-core/fs/reiserfs.c:732 grub-core/fs/ufs.c:531 grub-core/fs/ufs.c:671 -#: grub-core/fs/zfs/zfs.c:2831 grub-core/fs/zfs/zfs.c:4247 -#, fuzzy -msgid "not a directory" -msgstr "Total bytes direktori: %d\n" - -#: grub-core/fs/btrfs.c:2063 grub-core/fs/fshelp.c:307 grub-core/fs/jfs.c:835 -#: grub-core/fs/zfs/zfs.c:3801 -msgid "not a regular file" -msgstr "" - -#: grub-core/fs/btrfs.c:2157 grub-core/fs/zfs/zfs.c:4333 -#: grub-core/partmap/msdos.c:400 -#, fuzzy -msgid "your core.img is unusually large. It won't fit in the embedding area" -msgstr "" -"Besar core.img anda sangat besar. Ini tidak akan masuk dalam area penempatan." - -#: grub-core/fs/fshelp.c:281 grub-core/fs/minix.c:630 grub-core/fs/ufs.c:661 -#: grub-core/fs/ufs.c:757 grub-core/kern/fs.c:168 grub-core/kern/fs.c:180 -#, fuzzy, c-format -msgid "invalid file name `%s'" -msgstr "perangkat root `%s' tidak valid" - -#: grub-core/fs/zfs/zfs.c:453 -msgid "checksum verification failed" -msgstr "" - -#: grub-core/fs/zfs/zfs.c:1465 -msgid "couldn't find a necessary member device of multi-device filesystem" -msgstr "" - -#: grub-core/fs/zfs/zfscrypt.c:292 -msgid "no decryption key available" -msgstr "" - -#: grub-core/fs/zfs/zfscrypt.c:304 -#, fuzzy -msgid "MAC verification failed" -msgstr "Paksa tanggal modifikasi" - -#: grub-core/fs/zfs/zfscrypt.c:413 -msgid "Assume input is raw." -msgstr "" - -#: grub-core/fs/zfs/zfscrypt.c:414 -msgid "Assume input is hex." -msgstr "" - -#: grub-core/fs/zfs/zfscrypt.c:415 -msgid "Assume input is passphrase." -msgstr "" - -#: grub-core/fs/zfs/zfscrypt.c:437 util/grub-fstest.c:553 util/grub-mount.c:483 -#, fuzzy -msgid "Enter ZFS password: " -msgstr "Masukan kata sandi : " - -#: grub-core/fs/zfs/zfscrypt.c:476 -#, fuzzy -msgid "[-h|-p|-r] [FILE]" -msgstr "[-l|-h|-a] [BERKAS]" - -#: grub-core/fs/zfs/zfscrypt.c:477 -msgid "Import ZFS wrapping key stored in FILE." -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:51 -msgid "Virtual device is removed" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:57 -msgid "Virtual device is faulted" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:63 -msgid "Virtual device is offline" -msgstr "" - -#. TRANSLATORS: degraded doesn't mean broken but that some of -#. component are missing but virtual device as whole is still usable. -#: grub-core/fs/zfs/zfsinfo.c:70 -msgid "Virtual device is degraded" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:73 -msgid "Virtual device is online" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:89 -msgid "Incorrect virtual device: no type available" -msgstr "" - -#. TRANSLATORS: The virtual devices form a tree (in graph-theoretical -#. sense). The nodes like mirror or raidz have children: member devices. -#. The "real" devices which actually store data are called "leafs" -#. (again borrowed from graph theory) and can be either disks -#. (or partitions) or files. -#: grub-core/fs/zfs/zfsinfo.c:105 -msgid "Leaf virtual device (file or disk)" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:113 -msgid "Bootpath: unavailable\n" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:115 -#, c-format -msgid "Bootpath: %s\n" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:120 -msgid "Path: unavailable" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:122 -#, c-format -msgid "Path: %s\n" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:127 -msgid "Devid: unavailable" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:129 -#, fuzzy, c-format -msgid "Devid: %s\n" -msgstr "Perankat %s:" - -#: grub-core/fs/zfs/zfsinfo.c:148 -msgid "This VDEV is a mirror" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:153 -#, c-format -msgid "This VDEV is a RAIDZ%llu\n" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:158 -msgid "Incorrect VDEV" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:161 -#, c-format -msgid "VDEV with %d children\n" -msgstr "" - -#. TRANSLATORS: it's the element carying the number %d, not -#. total element number. And the number itself is fine, -#. only the element isn't. -#. -#: grub-core/fs/zfs/zfsinfo.c:177 -#, c-format -msgid "VDEV element number %d isn't correct\n" -msgstr "" - -#. TRANSLATORS: it's the element carying the number %d, not -#. total element number. This is used in enumeration -#. "Element number 1", "Element number 2", ... -#: grub-core/fs/zfs/zfsinfo.c:184 -#, c-format -msgid "VDEV element number %d:\n" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:193 -#, c-format -msgid "Unknown virtual device type: %s\n" -msgstr "" - -#. TRANSLATORS: Here we speak about ZFS pools it's semi-marketing, -#. semi-technical term by Sun/Oracle and should be translated in sync with -#. other ZFS-related software and documentation. -#: grub-core/fs/zfs/zfsinfo.c:254 -msgid "Pool state: active" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:255 -msgid "Pool state: exported" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:256 -msgid "Pool state: destroyed" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:257 -msgid "Pool state: reserved for hot spare" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:258 -msgid "Pool state: level 2 ARC device" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:259 -msgid "Pool state: uninitialized" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:260 -msgid "Pool state: unavailable" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:261 -msgid "Pool state: potentially active" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:306 -msgid "Pool name: unavailable" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:308 -#, c-format -msgid "Pool name: %s\n" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:313 -msgid "Pool GUID: unavailable" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:315 -#, c-format -msgid "Pool GUID: %016llx\n" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:320 -msgid "Unable to retrieve pool state" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:322 -msgid "Unrecognized pool state" -msgstr "" - -#. TRANSLATORS: There are undetermined number of virtual devices -#. in a device tree, not just one. -#. -#: grub-core/fs/zfs/zfsinfo.c:332 -msgid "No virtual device tree available" -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:431 -msgid "Print ZFS info about DEVICE." -msgstr "" - -#: grub-core/fs/zfs/zfsinfo.c:433 -#, fuzzy -msgid "FILESYSTEM [VARIABLE]" -msgstr "NAMA [VARIABEL]" - -#: grub-core/fs/zfs/zfsinfo.c:434 -msgid "Print ZFS-BOOTFSOBJ or store it into VARIABLE" -msgstr "" - -#. TRANSLATORS: at this position GRUB waits for the user to do an action -#. in remote debugger, namely to tell it to establish connection. -#: grub-core/gdb/gdb.c:48 -msgid "Now connect the remote debugger, please." -msgstr "" - -#. TRANSLATORS: GDB stub is a small part of -#. GDB functionality running on local host -#. which allows remote debugger to -#. connect to it. -#: grub-core/gdb/gdb.c:84 -msgid "Start GDB stub on given port" -msgstr "" - -#. TRANSLATORS: this refers to triggering -#. a breakpoint so that the user will land -#. into GDB. -#: grub-core/gdb/gdb.c:89 -msgid "Break into GDB" -msgstr "" - -#: grub-core/gdb/gdb.c:91 -msgid "Stop GDB stub" -msgstr "" - -#: grub-core/gettext/gettext.c:85 -msgid "premature end of file" -msgstr "" - -#. TRANSLATORS: It refers to passing the string through gettext. -#. So it's "translate" in the same meaning as in what you're -#. doing now. -#. -#: grub-core/gettext/gettext.c:525 -msgid "Translates the string with the current settings." -msgstr "" - -#: grub-core/gfxmenu/gui_label.c:186 grub-core/normal/menu_text.c:184 -#, fuzzy -msgid "" -"Press enter to boot the selected OS, `e' to edit the commands before booting " -"or `c' for a command-line. ESC to return previous menu." -msgstr "" -"Tekan enter untuk mem-boot OS yang dipilih, 'e' untuk mengubah perintah " -"sebelum booting atau 'c' untuk sebuah baris perintah. ESC kembali ke menu " -"sebelumnya.\n" - -#: grub-core/gfxmenu/gui_label.c:190 grub-core/normal/menu_text.c:192 -#, fuzzy -msgid "" -"Press enter to boot the selected OS, `e' to edit the commands before booting " -"or `c' for a command-line." -msgstr "" -"Tekan enter untuk mem-boot OS yang dipilih, 'e' untuk mengubah perintah " -"sebelum booting atau 'c' untuk sebuah baris perintah.\n" - -#: grub-core/gfxmenu/gui_label.c:194 -msgid "enter: boot, `e': options, `c': cmd-line" -msgstr "" - -#: grub-core/gfxmenu/gui_progress_bar.c:339 grub-core/normal/menu_text.c:446 -#, c-format -msgid "The highlighted entry will be executed automatically in %ds." -msgstr "Masukan yang disoroti akan diboot secara otomatis dalam %ds." - -#. TRANSLATORS: 's' stands for seconds. -#. It's a standalone timeout notification. -#. Please use the short form in your language. -#: grub-core/gfxmenu/gui_progress_bar.c:344 -#, c-format -msgid "%ds remaining." -msgstr "" - -#. TRANSLATORS: 's' stands for seconds. -#. It's a standalone timeout notification. -#. Please use the shortest form available in you language. -#: grub-core/gfxmenu/gui_progress_bar.c:349 grub-core/normal/menu_text.c:444 -#: grub-core/normal/menu_text.c:462 -#, c-format -msgid "%ds" -msgstr "" - -#: grub-core/gfxmenu/view.c:103 -msgid "GRUB Boot Menu" -msgstr "" - -#: grub-core/hello/hello.c:36 -#, fuzzy -msgid "Hello World" -msgstr "Katakan \"Hi Dunia\"." - -#: grub-core/hello/hello.c:45 -#, fuzzy -msgid "Say `Hello World'." -msgstr "Katakan \"Hi Dunia\"." - -#: grub-core/io/gzio.c:409 grub-core/kern/file.c:210 -msgid "attempt to seek outside of the file" -msgstr "" - -#. TRANSLATORS: It's about given file having some strange format, not -#. complete lack of gzip support. -#: grub-core/io/gzio.c:1228 grub-core/io/gzio.c:1237 grub-core/io/gzio.c:1244 -msgid "unsupported gzip format" -msgstr "" - -#: grub-core/io/lzopio.c:511 -msgid "lzop file corrupted" -msgstr "" - -#: grub-core/io/xzio.c:278 -msgid "xz file corrupted or unsupported block options" -msgstr "" - -#: grub-core/kern/arm/dl.c:277 grub-core/kern/arm64/dl.c:44 -#: grub-core/kern/i386/dl.c:36 grub-core/kern/ia64/dl.c:41 -#: grub-core/kern/mips/dl.c:48 grub-core/kern/powerpc/dl.c:36 -#: grub-core/kern/riscv/dl.c:47 grub-core/kern/sparc64/dl.c:36 -#: grub-core/kern/x86_64/dl.c:36 grub-core/loader/i386/bsd.c:1445 -#: grub-core/loader/i386/bsdXX.c:49 grub-core/loader/ia64/efi/linux.c:341 -#: grub-core/loader/mips/linux.c:298 grub-core/loader/multiboot.c:232 -#: grub-core/loader/multiboot_elfxx.c:73 -#: grub-core/loader/powerpc/ieee1275/linux.c:294 -#: grub-core/loader/sparc64/ieee1275/linux.c:331 -msgid "invalid arch-dependent ELF magic" -msgstr "" - -#: grub-core/kern/corecmd.c:178 -#, fuzzy -msgid "[ENVVAR=VALUE]" -msgstr "[ENVVAR]" - -#: grub-core/kern/corecmd.c:179 -#, fuzzy -msgid "Set an environment variable." -msgstr "Simpan variabel ke berkas blok lingkungan." - -#: grub-core/kern/corecmd.c:183 -#, fuzzy -msgid "ENVVAR" -msgstr "[ENVVAR]" - -#: grub-core/kern/corecmd.c:184 -msgid "Remove an environment variable." -msgstr "" - -#: grub-core/kern/corecmd.c:186 -msgid "[ARG]" -msgstr "" - -#: grub-core/kern/corecmd.c:186 -#, fuzzy -msgid "List devices or files." -msgstr "Tampilkan perangkat dan berkas." - -#: grub-core/kern/corecmd.c:188 -#, fuzzy -msgid "Insert a module." -msgstr "Hapus sebuah modul." - -#: grub-core/kern/disk.c:236 grub-core/net/net.c:1390 -#, c-format -msgid "disk `%s' not found" -msgstr "" - -#: grub-core/kern/disk_common.c:27 -msgid "attempt to read or write outside of partition" -msgstr "" - -#: grub-core/kern/dl.c:212 grub-core/kern/elf.c:61 grub-core/kern/elf.c:79 -#: grub-core/loader/i386/bsdXX.c:46 grub-core/loader/ia64/efi/linux.c:335 -#: grub-core/loader/multiboot_elfxx.c:69 -msgid "invalid arch-independent ELF magic" -msgstr "" - -#. TRANSLATORS: it refers to the lack of free slots. -#: grub-core/kern/emu/hostdisk.c:208 grub-core/kern/emu/hostdisk.c:466 -msgid "device count exceeds limit" -msgstr "" - -#: grub-core/kern/emu/hostdisk.c:342 util/editenv.c:54 util/grub-editenv.c:197 -#: util/grub-fstest.c:191 util/grub-mkfont.c:796 util/misc.c:114 -#: util/misc.c:129 util/setup.c:788 -#, fuzzy, c-format -msgid "cannot write to `%s': %s" -msgstr "tidak dapat membuka `%s'" - -#. TRANSLATORS: Only one entry is ignored. However the suggestion -#. is to correct/delete the whole file. -#. device.map is a file indicating which -#. devices are available at boot time. Fedora populated it with -#. entries like (hd0,1) /dev/sda1 which would mean that every -#. partition is a separate disk for BIOS. Such entries were -#. inactive in GRUB due to its bug which is now gone. Without -#. this additional check these entries would be harmful now. -#. -#: grub-core/kern/emu/hostdisk.c:503 -#, c-format -msgid "" -"the device.map entry `%s' is invalid. Ignoring it. Please correct or delete " -"your device.map" -msgstr "" - -#. TRANSLATORS: device.map is a filename. Not to be translated. -#. device.map specifies disk correspondance overrides. Previously -#. one could create any kind of device name with this. Due to -#. some problems we decided to limit it to just a handful -#. possibilities. -#: grub-core/kern/emu/hostdisk.c:555 -#, c-format -msgid "" -"the drive name `%s' in device.map is incorrect. Using %s instead. Please use " -"the form [hfc]d[0-9]* (E.g. `hd0' or `cd')" -msgstr "" - -#: grub-core/kern/emu/hostfs.c:76 grub-core/kern/emu/hostfs.c:109 -#, fuzzy, c-format -msgid "can't open `%s': %s" -msgstr "tidak dapat membuka `%s'" - -#: grub-core/kern/emu/main.c:99 util/grub-fstest.c:516 util/grub-mount.c:452 -#, fuzzy -msgid "DEVICE_NAME" -msgstr "PERANGKAT" - -#: grub-core/kern/emu/main.c:99 grub-core/loader/i386/bsd.c:136 -#: grub-core/loader/i386/bsd.c:169 util/grub-fstest.c:516 util/grub-mount.c:452 -msgid "Set root device." -msgstr "Set perangkat root." - -#. TRANSLATORS: There are many devices in device map. -#: grub-core/kern/emu/main.c:102 util/grub-probe.c:733 util/grub-setup.c:85 -#, c-format -msgid "use FILE as the device map [default=%s]" -msgstr "" - -#. TRANSLATORS: There are many devices in device map. -#: grub-core/kern/emu/main.c:105 -msgid "use FILE as memdisk" -msgstr "" - -#: grub-core/kern/emu/main.c:107 util/grub-setup.c:83 -#, c-format -msgid "use GRUB files in the directory DIR [default=%s]" -msgstr "" - -#: grub-core/kern/emu/main.c:108 include/grub/util/install.h:67 -#: util/grub-editenv.c:58 util/grub-fstest.c:525 util/grub-glue-efi.c:58 -#: util/grub-macbless.c:104 util/grub-mkfont.c:962 util/grub-mkimage.c:84 -#: util/grub-mklayout.c:56 util/grub-mount.c:458 util/grub-probe.c:735 -#: util/grub-render-label.c:74 util/grub-script-check.c:52 util/grub-setup.c:90 -#: util/grub-syslinux2cfg.c:78 -#, fuzzy -msgid "print verbose messages." -msgstr "Boot dengan pesan detail." - -#: grub-core/kern/emu/main.c:109 grub-core/lib/gnulib/argp-parse.c:85 -msgid "SECS" -msgstr "" - -#: grub-core/kern/emu/main.c:109 -msgid "wait until a debugger will attach" -msgstr "" - -#: grub-core/kern/emu/main.c:171 util/grub-macbless.c:143 -#: util/grub-mkrelpath.c:61 util/grub-probe.c:874 util/grub-script-check.c:75 -#: util/grub-setup.c:203 -#, fuzzy, c-format -msgid "Unknown extra argument `%s'." -msgstr "Argumen ekstra `%s' tidak diketahui.\n" - -#: grub-core/kern/emu/main.c:185 -msgid "GRUB emulator." -msgstr "GRUB emulator." - -#: grub-core/kern/emu/main.c:213 util/grub-editenv.c:262 -#: util/grub-glue-efi.c:110 util/grub-macbless.c:173 util/grub-mkfont.c:1177 -#: util/grub-mkimage.c:266 util/grub-mklayout.c:494 -#: util/grub-mkpasswd-pbkdf2.c:132 util/grub-mkrelpath.c:96 -#: util/grub-probe.c:863 util/grub-render-label.c:152 -#: util/grub-script-check.c:160 util/grub-setup.c:262 -#: util/grub-syslinux2cfg.c:163 -msgid "Error in parsing command line arguments\n" -msgstr "" - -#. TRANSLATORS: In this case GRUB tells user what he has to do. -#: grub-core/kern/emu/main.c:248 -#, c-format -msgid "Run `gdb %s %d', and set ARGS.HOLD to zero.\n" -msgstr "" - -#: grub-core/kern/emu/misc.c:48 -#, c-format -msgid "%s: warning:" -msgstr "" - -#: grub-core/kern/emu/misc.c:64 -#, c-format -msgid "%s: info:" -msgstr "" - -#: grub-core/kern/emu/misc.c:79 util/grub-fstest.c:567 util/grub-fstest.c:576 -#: util/grub-mount.c:497 util/grub-mount.c:505 -#, c-format -msgid "%s: error:" -msgstr "" - -#: grub-core/kern/emu/misc.c:176 -#, fuzzy, c-format -msgid "file `%s' is too big" -msgstr "ukuran dari `%s' terlalu besar" - -#: grub-core/kern/fs.c:120 -#, fuzzy -msgid "unknown filesystem" -msgstr "Sistem berkas tidak diketahui" - -#: grub-core/kern/mips/arc/init.c:273 grub-core/kern/mips/loongson/init.c:301 -msgid "Shutdown failed" -msgstr "" - -#: grub-core/kern/mips/arc/init.c:285 -msgid "Exit failed" -msgstr "" - -#: grub-core/kern/misc.c:351 grub-core/kern/misc.c:408 include/grub/misc.h:269 -#: include/grub/misc.h:278 -msgid "overflow is detected" -msgstr "" - -#: grub-core/kern/partition.c:51 grub-core/partmap/bsdlabel.c:108 -#, c-format -msgid "Discarding improperly nested partition (%s,%s,%s%d)" -msgstr "" - -#: grub-core/kern/rescue_parser.c:73 util/grub-editenv.c:292 -#, fuzzy, c-format -msgid "Unknown command `%s'.\n" -msgstr "Argumen ekstra `%s' tidak diketahui.\n" - -#: grub-core/lib/arg.c:31 -msgid "Display this help and exit." -msgstr "Tampilkan bantuan ini dan keluar." - -#: grub-core/lib/arg.c:33 -msgid "Display the usage of this command and exit." -msgstr "Tampilkan penggunaan dari perintah ini dan keluar." - -#: grub-core/lib/arg.c:362 -#, c-format -msgid "missing mandatory option for `%s'" -msgstr "" - -#: grub-core/lib/arg.c:384 -#, c-format -msgid "the argument `%s' requires an integer" -msgstr "" - -#: grub-core/lib/arg.c:407 -#, c-format -msgid "" -"a value was assigned to the argument `%s' while it doesn't require an " -"argument" -msgstr "" - -#: grub-core/lib/backtrace.c:64 -#, fuzzy -msgid "Print backtrace." -msgstr "Tampilkan daftar blok." - -#: grub-core/lib/gnulib/argp-help.c:149 -#, c-format -msgid "ARGP_HELP_FMT: %s value is less than or equal to %s" -msgstr "" - -#: grub-core/lib/gnulib/argp-help.c:225 -#, c-format -msgid "%.*s: ARGP_HELP_FMT parameter requires a value" -msgstr "" - -#: grub-core/lib/gnulib/argp-help.c:235 -#, c-format -msgid "%.*s: Unknown ARGP_HELP_FMT parameter" -msgstr "" - -#: grub-core/lib/gnulib/argp-help.c:248 -#, c-format -msgid "Garbage in ARGP_HELP_FMT: %s" -msgstr "" - -#: grub-core/lib/gnulib/argp-help.c:1229 -msgid "" -"Mandatory or optional arguments to long options are also mandatory or " -"optional for any corresponding short options." -msgstr "" - -#: grub-core/lib/gnulib/argp-help.c:1620 -msgid " or: " -msgstr "" - -#: grub-core/lib/gnulib/argp-help.c:1632 -#, fuzzy -msgid " [OPTION...]" -msgstr "[POLA ...]" - -#: grub-core/lib/gnulib/argp-help.c:1659 -#, fuzzy, c-format -msgid "Try '%s --help' or '%s --usage' for more information.\n" -msgstr "Coba `%s --help' untuk informasi lebih lanjut.\n" - -#: grub-core/lib/gnulib/argp-help.c:1687 -#, c-format -msgid "Report bugs to %s.\n" -msgstr "" - -#: grub-core/lib/gnulib/argp-help.c:1888 grub-core/lib/gnulib/error.c:195 -#, fuzzy -msgid "Unknown system error" -msgstr "Sistem berkas tidak diketahui" - -#: grub-core/lib/gnulib/argp-parse.c:81 -#, fuzzy -msgid "give this help list" -msgstr "Tampilkan bantuan ini dan keluar." - -#: grub-core/lib/gnulib/argp-parse.c:82 -msgid "give a short usage message" -msgstr "" - -#: grub-core/lib/gnulib/argp-parse.c:83 util/grub-mkfont.c:946 -msgid "NAME" -msgstr "" - -#: grub-core/lib/gnulib/argp-parse.c:84 -msgid "set the program name" -msgstr "" - -#: grub-core/lib/gnulib/argp-parse.c:86 -msgid "hang for SECS seconds (default 3600)" -msgstr "" - -#: grub-core/lib/gnulib/argp-parse.c:143 -msgid "print program version" -msgstr "" - -#: grub-core/lib/gnulib/argp-parse.c:160 -msgid "(PROGRAM ERROR) No version known!?" -msgstr "" - -#: grub-core/lib/gnulib/argp-parse.c:613 -#, c-format -msgid "%s: Too many arguments\n" -msgstr "" - -#: grub-core/lib/gnulib/argp-parse.c:759 -msgid "(PROGRAM ERROR) Option should have been recognized!?" -msgstr "" - -#: grub-core/lib/gnulib/getopt.c:278 -#, c-format -msgid "%s: option '%s%s' is ambiguous\n" -msgstr "" - -#: grub-core/lib/gnulib/getopt.c:284 -#, c-format -msgid "%s: option '%s%s' is ambiguous; possibilities:" -msgstr "" - -#: grub-core/lib/gnulib/getopt.c:319 -#, c-format -msgid "%s: unrecognized option '%s%s'\n" -msgstr "" - -#: grub-core/lib/gnulib/getopt.c:345 -#, c-format -msgid "%s: option '%s%s' doesn't allow an argument\n" -msgstr "" - -#: grub-core/lib/gnulib/getopt.c:360 -#, c-format -msgid "%s: option '%s%s' requires an argument\n" -msgstr "" - -#: grub-core/lib/gnulib/getopt.c:621 -#, c-format -msgid "%s: invalid option -- '%c'\n" -msgstr "" - -#: grub-core/lib/gnulib/getopt.c:636 grub-core/lib/gnulib/getopt.c:682 -#, c-format -msgid "%s: option requires an argument -- '%c'\n" -msgstr "" - -#: grub-core/lib/gnulib/openat-die.c:38 -#, fuzzy, c-format -msgid "unable to record current working directory" -msgstr "Tidak dapat menghapus direktori yang tidak kosong\n" - -#: grub-core/lib/gnulib/openat-die.c:57 -#, c-format -msgid "failed to return to initial working directory" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:135 grub-core/osdep/aros/hostdisk.c:523 -msgid "Success" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:138 -msgid "No match" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:141 -#, fuzzy -msgid "Invalid regular expression" -msgstr "Evaluasi sebuah ekspresi." - -#: grub-core/lib/gnulib/regcomp.c:144 -msgid "Invalid collation character" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:147 -msgid "Invalid character class name" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:150 -msgid "Trailing backslash" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:153 -msgid "Invalid back reference" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:156 -msgid "Unmatched [, [^, [:, [., or [=" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:159 -msgid "Unmatched ( or \\(" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:162 -msgid "Unmatched \\{" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:165 -msgid "Invalid content of \\{\\}" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:168 -#, fuzzy -msgid "Invalid range end" -msgstr "Node tidak valid -%s\n" - -#: grub-core/lib/gnulib/regcomp.c:171 -msgid "Memory exhausted" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:174 -msgid "Invalid preceding regular expression" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:177 -msgid "Premature end of regular expression" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:180 -msgid "Regular expression too big" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:183 -msgid "Unmatched ) or \\)" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:531 -msgid "unknown regexp error" -msgstr "" - -#: grub-core/lib/gnulib/regcomp.c:676 -msgid "No previous regular expression" -msgstr "" - -#: grub-core/lib/i386/halt.c:77 -msgid "GRUB doesn't know how to halt this machine yet!" -msgstr "" - -#: grub-core/lib/legacy_parse.c:75 -msgid "Default server is ${net_default_server}" -msgstr "" - -#: grub-core/lib/legacy_parse.c:844 grub-core/video/colors.c:296 -#: grub-core/video/colors.c:305 grub-core/video/colors.c:311 -#: grub-core/video/colors.c:327 util/render-label.c:84 util/render-label.c:98 -#, fuzzy, c-format -msgid "invalid color specification `%s'" -msgstr "perangkat root `%s' tidak valid" - -#: grub-core/lib/mips/arc/reboot.c:32 grub-core/lib/mips/loongson/reboot.c:61 -msgid "Reboot failed" -msgstr "" - -#: grub-core/lib/random.c:113 -msgid "[LENGTH]" -msgstr "" - -#: grub-core/lib/random.c:114 -msgid "Hexdump random data." -msgstr "" - -#: grub-core/loader/arm/linux.c:242 -msgid "device tree must be supplied (see `devicetree' command)" -msgstr "" - -#: grub-core/loader/arm/linux.c:334 -msgid "invalid zImage" -msgstr "" - -#: grub-core/loader/arm/linux.c:450 grub-core/loader/efi/fdt.c:144 -#, fuzzy -msgid "invalid device tree" -msgstr "Perangkat `%s' tidak valid.\n" - -#: grub-core/loader/arm/linux.c:493 grub-core/loader/arm64/linux.c:383 -#: grub-core/loader/i386/linux.c:1125 grub-core/loader/i386/pc/linux.c:479 -#: grub-core/loader/i386/xen.c:962 grub-core/loader/i386/xen.c:964 -#: grub-core/loader/ia64/efi/linux.c:591 grub-core/loader/mips/linux.c:501 -#: grub-core/loader/powerpc/ieee1275/linux.c:383 -#: grub-core/loader/riscv/linux.c:50 -#: grub-core/loader/sparc64/ieee1275/linux.c:511 -msgid "Load Linux." -msgstr "Muat Linux." - -#: grub-core/loader/arm/linux.c:495 grub-core/loader/arm64/linux.c:385 -#: grub-core/loader/i386/linux.c:1127 grub-core/loader/i386/pc/linux.c:482 -#: grub-core/loader/i386/xen.c:966 grub-core/loader/ia64/efi/linux.c:594 -#: grub-core/loader/mips/linux.c:503 -#: grub-core/loader/powerpc/ieee1275/linux.c:385 -#: grub-core/loader/riscv/linux.c:52 -#: grub-core/loader/sparc64/ieee1275/linux.c:513 -msgid "Load initrd." -msgstr "Muat initrd." - -#. TRANSLATORS: DTB stands for device tree blob. -#: grub-core/loader/arm/linux.c:498 grub-core/loader/efi/fdt.c:169 -#, fuzzy -msgid "Load DTB file." -msgstr "Muat image XNU." - -#: grub-core/loader/arm64/linux.c:59 -msgid "" -"plain image kernel not supported - rebuild with CONFIG_(U)EFI_STUB enabled" -msgstr "" - -#: grub-core/loader/arm64/xen_boot.c:156 -msgid "failed to get FDT" -msgstr "" - -#: grub-core/loader/arm64/xen_boot.c:418 -#, fuzzy -msgid "you need to load the Xen Hypervisor first" -msgstr "you need to load the kernel first" - -#: grub-core/loader/arm64/xen_boot.c:516 -#, fuzzy -msgid "Load a xen hypervisor." -msgstr "%s, dengan Linux %s" - -#: grub-core/loader/arm64/xen_boot.c:519 -#, fuzzy -msgid "Load a xen module." -msgstr "Hapus sebuah modul." - -#: grub-core/loader/efi/appleloader.c:231 -#, fuzzy -msgid "[OPTS]" -msgstr "[PILIHAN] DISK" - -#. TRANSLATORS: This command is used on EFI to -#. switch to BIOS mode and boot the OS requiring -#. BIOS. -#: grub-core/loader/efi/appleloader.c:235 -#, fuzzy -msgid "Boot BIOS-based system." -msgstr "Boot sistem sesungguhnya." - -#: grub-core/loader/efi/chainloader.c:421 -#: grub-core/loader/i386/pc/chainloader.c:303 -msgid "Load another boot loader." -msgstr "Muat 'boot loader' lain." - -#: grub-core/loader/i386/bsd.c:103 -msgid "Display output on all consoles." -msgstr "Tampilkan keluaran di semua konsol." - -#: grub-core/loader/i386/bsd.c:104 grub-core/loader/i386/bsd.c:138 -#: grub-core/loader/i386/bsd.c:171 -msgid "Use serial console." -msgstr "Gunakan konsol serial." - -#: grub-core/loader/i386/bsd.c:105 grub-core/loader/i386/bsd.c:131 -#: grub-core/loader/i386/bsd.c:159 -msgid "Ask for file name to reboot from." -msgstr "Tanya untuk nama berkas untuk direboot dari." - -#: grub-core/loader/i386/bsd.c:106 -#, fuzzy -msgid "Use CD-ROM as root." -msgstr "Gunakan CDROM sebagai root." - -#: grub-core/loader/i386/bsd.c:107 -msgid "Invoke user configuration routing." -msgstr "Panggil konfigurasi routing pengguna." - -#: grub-core/loader/i386/bsd.c:108 grub-core/loader/i386/bsd.c:135 -#: grub-core/loader/i386/bsd.c:162 -msgid "Enter in KDB on boot." -msgstr "Masuk dalam KDB pada waktu boot." - -#: grub-core/loader/i386/bsd.c:109 -msgid "Use GDB remote debugger instead of DDB." -msgstr "Gunakan GDB remote debugger daripada DDB." - -#: grub-core/loader/i386/bsd.c:110 -msgid "Disable all boot output." -msgstr "Tampilkan seluruh keluaran boot." - -#: grub-core/loader/i386/bsd.c:112 -msgid "Wait for keypress after every line of output." -msgstr "Tunggu untuk penekanan tombol setelah setiap baris dari keluaran." - -#: grub-core/loader/i386/bsd.c:114 -#, fuzzy -msgid "Use compiled-in root device." -msgstr "Gunakan compiled-in rootdev." - -#: grub-core/loader/i386/bsd.c:115 grub-core/loader/i386/bsd.c:134 -#: grub-core/loader/i386/bsd.c:165 -msgid "Boot into single mode." -msgstr "Boot kedalam mode tunggal." - -#: grub-core/loader/i386/bsd.c:116 grub-core/loader/i386/bsd.c:166 -msgid "Boot with verbose messages." -msgstr "Boot dengan pesan detail." - -#: grub-core/loader/i386/bsd.c:132 grub-core/loader/i386/bsd.c:160 -msgid "Don't reboot, just halt." -msgstr "Jangan reboot, hanya hentikan." - -#: grub-core/loader/i386/bsd.c:133 grub-core/loader/i386/bsd.c:161 -msgid "Change configured devices." -msgstr "Ubah konfigurasi perangkat." - -#. TRANSLATORS: "com" is static and not to be translated. It refers to -#. serial ports e.g. com1. -#. -#: grub-core/loader/i386/bsd.c:142 -msgid "comUNIT[,SPEED]" -msgstr "" - -#: grub-core/loader/i386/bsd.c:157 -msgid "Disable SMP." -msgstr "Non-aktifkan SMP." - -#: grub-core/loader/i386/bsd.c:158 -msgid "Disable ACPI." -msgstr "No-aktifkan ACPI." - -#: grub-core/loader/i386/bsd.c:164 -msgid "Don't display boot diagnostic messages." -msgstr "Jangan tampilkan pesan diagnosa boot." - -#: grub-core/loader/i386/bsd.c:167 -msgid "Boot with debug messages." -msgstr "Boot dengan pesan debug." - -#: grub-core/loader/i386/bsd.c:168 -#, fuzzy -msgid "Suppress normal output (warnings remain)." -msgstr "Tekan keluaran normal (peringatan tetap)." - -#. TRANSLATORS: "com" is static and not to be translated. It refers to -#. serial ports e.g. com1. -#. -#: grub-core/loader/i386/bsd.c:175 -msgid "[ADDR|comUNIT][,SPEED]" -msgstr "" - -#: grub-core/loader/i386/bsd.c:489 grub-core/loader/i386/bsd.c:555 -msgid "name" -msgstr "" - -#: grub-core/loader/i386/bsd.c:489 grub-core/loader/i386/bsd.c:555 -msgid "type" -msgstr "" - -#: grub-core/loader/i386/bsd.c:489 grub-core/loader/i386/bsd.c:555 -msgid "addr" -msgstr "" - -#: grub-core/loader/i386/bsd.c:490 grub-core/loader/i386/bsd.c:556 -msgid "size" -msgstr "" - -#: grub-core/loader/i386/bsd.c:1147 grub-core/loader/i386/linux.c:466 -#: grub-core/loader/i386/xnu.c:1030 -#, fuzzy -msgid "Booting in blind mode" -msgstr "Boot kedalam mode tunggal." - -#: grub-core/loader/i386/bsd.c:2137 -msgid "Load kernel of FreeBSD." -msgstr "Muat kernel dari FreeBSD." - -#: grub-core/loader/i386/bsd.c:2140 -msgid "Load kernel of OpenBSD." -msgstr "Muat kernal dari OpenBSD." - -#: grub-core/loader/i386/bsd.c:2143 -msgid "Load kernel of NetBSD." -msgstr "Muat kernel dari NetBSD." - -#: grub-core/loader/i386/bsd.c:2147 -msgid "Load FreeBSD env." -msgstr "Muat lingkungan FreeBSD." - -#: grub-core/loader/i386/bsd.c:2150 -msgid "Load FreeBSD kernel module." -msgstr "Muat modul kernel FreeBSD." - -#: grub-core/loader/i386/bsd.c:2153 -#, fuzzy -msgid "Load NetBSD kernel module." -msgstr "Muat modul kernel FreeBSD." - -#: grub-core/loader/i386/bsd.c:2156 -#, fuzzy -msgid "Load NetBSD kernel module (ELF)." -msgstr "Muat modul kernel (ELF) FreeBSD." - -#: grub-core/loader/i386/bsd.c:2159 -msgid "Load FreeBSD kernel module (ELF)." -msgstr "Muat modul kernel (ELF) FreeBSD." - -#. TRANSLATORS: ramdisk isn't identifier, -#. it can be translated. -#: grub-core/loader/i386/bsd.c:2165 -#, fuzzy -msgid "Load kOpenBSD ramdisk." -msgstr "Muat kernal dari OpenBSD." - -#. TRANSLATORS: "payload" is a term used -#. by coreboot and must be translated in -#. sync with coreboot. If unsure, -#. let it untranslated. -#: grub-core/loader/i386/coreboot/chainloader.c:510 -#, fuzzy -msgid "Load another coreboot payload" -msgstr "Muat 'boot loader' lain." - -#: grub-core/loader/i386/linux.c:876 -#, fuzzy -msgid "Legacy `ask' parameter no longer supported." -msgstr "pilihan -i tidak lagi didukung.\n" - -#: grub-core/loader/i386/linux.c:892 grub-core/loader/i386/linux.c:902 -#: grub-core/loader/i386/linux.c:932 -#, c-format -msgid "%s is deprecated. Use set gfxpayload=%s before linux command instead.\n" -msgstr "" - -#. TRANSLATORS: "x" has to be entered in, like an identifier, -#. so please don't use better Unicode codepoints. -#: grub-core/loader/i386/linux.c:915 -#, c-format -msgid "" -"%s is deprecated. VGA mode %d isn't recognized. Use set " -"gfxpayload=WIDTHxHEIGHT[xDEPTH] before linux command instead.\n" -msgstr "" - -#: grub-core/loader/i386/pc/chainloader.c:302 -msgid "[--force|--bpb] FILE" -msgstr "" - -#: grub-core/loader/i386/pc/freedos.c:148 util/setup.c:293 -#, c-format -msgid "the size of `%s' is too large" -msgstr "ukuran dari `%s' terlalu besar" - -#: grub-core/loader/i386/pc/freedos.c:183 -#, fuzzy -msgid "Load FreeDOS kernel.sys." -msgstr "Muat modul kernel FreeBSD." - -#: grub-core/loader/i386/pc/ntldr.c:155 -msgid "Load NTLDR or BootMGR." -msgstr "" - -#. TRANSLATORS: it's about guessing which GRUB disk -#. is which Plan9 disk. If your language has no -#. word "mapping" you can use another word which -#. means that the GRUBDEVICE and PLAN9DEVICE are -#. actually the same device, just named differently -#. in OS and GRUB. -#: grub-core/loader/i386/pc/plan9.c:59 -msgid "Override guessed mapping of Plan9 devices." -msgstr "" - -#: grub-core/loader/i386/pc/plan9.c:60 -msgid "GRUBDEVICE=PLAN9DEVICE" -msgstr "" - -#: grub-core/loader/i386/pc/plan9.c:599 -msgid "KERNEL ARGS" -msgstr "" - -#: grub-core/loader/i386/pc/plan9.c:599 -#, fuzzy -msgid "Load Plan9 kernel." -msgstr "Muat sebuah kernel multiboot." - -#: grub-core/loader/i386/pc/pxechainloader.c:161 -#, fuzzy -msgid "Load a PXE image." -msgstr "Muat image XNU." - -#: grub-core/loader/i386/pc/truecrypt.c:226 -msgid "Load Truecrypt ISO." -msgstr "" - -#: grub-core/loader/i386/xen.c:781 grub-core/loader/i386/xen.c:865 -msgid "initrd already loaded" -msgstr "" - -#: grub-core/loader/i386/xen.c:968 -#, fuzzy -msgid "Load module." -msgstr "Hapus sebuah modul." - -#: grub-core/loader/i386/xnu.c:1003 -#, fuzzy -msgid "Press any key to launch xnu" -msgstr "Tekan tombol apapun untuk melanjutkan..." - -#. TRANSLATORS: `device-properties' -#. is a variable name, -#. not a program. -#: grub-core/loader/i386/xnu.c:1159 -#, fuzzy -msgid "Load `device-properties' dump." -msgstr "Muat properti-perangkat dump." - -#: grub-core/loader/ia64/efi/linux.c:124 -msgid "Could not locate FPSWA driver" -msgstr "" - -#: grub-core/loader/ia64/efi/linux.c:132 -msgid "FPSWA protocol wasn't able to find the interface" -msgstr "" - -#: grub-core/loader/ia64/efi/linux.c:580 -msgid "No FPSWA found" -msgstr "" - -#: grub-core/loader/ia64/efi/linux.c:582 -#, c-format -msgid "FPSWA revision: %x\n" -msgstr "" - -#: grub-core/loader/ia64/efi/linux.c:591 -msgid "FILE [ARGS...]" -msgstr "" - -#: grub-core/loader/ia64/efi/linux.c:597 -msgid "Display FPSWA version." -msgstr "" - -#: grub-core/loader/multiboot.c:248 -msgid "WARNING: no console will be available to OS" -msgstr "" - -#: grub-core/loader/multiboot.c:450 -msgid "Load a multiboot 2 kernel." -msgstr "Muat sebuah kernel multiboot 2." - -#: grub-core/loader/multiboot.c:453 -#, fuzzy -msgid "Load a multiboot 2 module." -msgstr "Muat sebuah modul multiboot." - -#: grub-core/loader/multiboot.c:456 -msgid "Load a multiboot kernel." -msgstr "Muat sebuah kernel multiboot." - -#: grub-core/loader/multiboot.c:459 -msgid "Load a multiboot module." -msgstr "Muat sebuah modul multiboot." - -#: grub-core/loader/riscv/linux.c:30 grub-core/loader/riscv/linux.c:40 -msgid "Linux not supported yet" -msgstr "" - -#: grub-core/loader/xnu.c:1416 grub-core/term/gfxterm_background.c:45 -msgid "Background image mode." -msgstr "" - -#. TRANSLATORS: This refers to background image mode (stretched or -#. in left-top corner). Note that GRUB will accept only original -#. keywords stretch and normal, not the translated ones. -#. So please put both in translation -#. e.g. stretch(=%STRETCH%)|normal(=%NORMAL%). -#. The percents mark the translated version. Since many people -#. may not know the word stretch or normal I recommend -#. putting the translation either here or in "Background image mode." -#. string. -#: grub-core/loader/xnu.c:1416 grub-core/term/gfxterm_background.c:55 -msgid "stretch|normal" -msgstr "" - -#: grub-core/loader/xnu.c:1482 -msgid "Load XNU image." -msgstr "Muat image XNU." - -#: grub-core/loader/xnu.c:1484 -msgid "Load 64-bit XNU image." -msgstr "Muat image 64-bit XNU." - -#: grub-core/loader/xnu.c:1486 -msgid "Load XNU extension package." -msgstr "Muat paket ekstensi XNU." - -#: grub-core/loader/xnu.c:1488 -msgid "Load XNU extension." -msgstr "Muat ekstensi XNU." - -#. TRANSLATORS: OSBundleRequired is a -#. variable name in xnu extensions -#. manifests. It behaves mostly like -#. GNU/Linux runlevels. -#. -#: grub-core/loader/xnu.c:1495 -msgid "DIRECTORY [OSBundleRequired]" -msgstr "DIREKTORI [OSBundleRequired]" - -#. TRANSLATORS: There are many extensions -#. in extension directory. -#: grub-core/loader/xnu.c:1498 -msgid "Load XNU extension directory." -msgstr "Muat ekstensi direktori XNU." - -#. TRANSLATORS: ramdisk here isn't identifier. It can be translated. -#: grub-core/loader/xnu.c:1501 -#, fuzzy -msgid "Load XNU ramdisk. It will be available in OS as md0." -msgstr "Muat XNU ramdisk. Ini akan kelihatan seperti md0." - -#: grub-core/loader/xnu.c:1505 -msgid "Load a splash image for XNU." -msgstr "Muat sebuah gambar singkat untuk XNU." - -#: grub-core/loader/xnu.c:1510 -#, fuzzy -msgid "Load an image of hibernated XNU." -msgstr "Muat sebuah gambar singkat untuk XNU." - -#: grub-core/mmap/mmap.c:538 -msgid "ADDR1,MASK1[,ADDR2,MASK2[,...]]" -msgstr "" - -#: grub-core/mmap/mmap.c:539 -msgid "Declare memory regions as faulty (badram)." -msgstr "" - -#: grub-core/mmap/mmap.c:541 -msgid "FROM[K|M|G] TO[K|M|G]" -msgstr "" - -#: grub-core/mmap/mmap.c:542 -msgid "Remove any memory regions in specified range." -msgstr "" - -#: grub-core/net/bootp.c:653 -msgid "four arguments expected" -msgstr "" - -#: grub-core/net/bootp.c:661 grub-core/net/net.c:1155 -#, c-format -msgid "unrecognised network interface `%s'" -msgstr "" - -#: grub-core/net/bootp.c:664 -msgid "no DHCP info found" -msgstr "" - -#: grub-core/net/bootp.c:674 -#, fuzzy -msgid "no DHCP options found" -msgstr "tidak ditemukan gaya partisi DOS" - -#: grub-core/net/bootp.c:682 -#, fuzzy -msgid "invalid DHCP option code" -msgstr "tidak ditemukan gaya partisi DOS" - -#: grub-core/net/bootp.c:686 -#, fuzzy, c-format -msgid "no DHCP option %u found" -msgstr "tidak ditemukan gaya partisi DOS" - -#: grub-core/net/bootp.c:743 -#, c-format -msgid "unrecognised DHCP option format specification `%s'" -msgstr "" - -#: grub-core/net/bootp.c:767 -msgid "no network card found" -msgstr "" - -#: grub-core/net/bootp.c:859 grub-core/net/net.c:389 -#, c-format -msgid "couldn't autoconfigure %s" -msgstr "" - -#: grub-core/net/bootp.c:873 grub-core/net/bootp.c:876 -msgid "[CARD]" -msgstr "" - -#: grub-core/net/bootp.c:874 -msgid "perform a bootp autoconfiguration" -msgstr "" - -#: grub-core/net/bootp.c:877 -msgid "perform a DHCP autoconfiguration" -msgstr "" - -#: grub-core/net/bootp.c:879 -msgid "VAR INTERFACE NUMBER DESCRIPTION" -msgstr "" - -#: grub-core/net/bootp.c:880 -msgid "" -"retrieve DHCP option and save it into VAR. If VAR is - then print the value." -msgstr "" - -#: grub-core/net/dns.c:459 -msgid "no DNS servers configured" -msgstr "" - -#: grub-core/net/dns.c:522 -msgid "domain name component is too long" -msgstr "" - -#: grub-core/net/dns.c:618 grub-core/net/dns.c:666 -msgid "no DNS record found" -msgstr "" - -#: grub-core/net/dns.c:626 -msgid "no DNS reply received" -msgstr "" - -#: grub-core/net/dns.c:682 -msgid "only ipv4" -msgstr "" - -#: grub-core/net/dns.c:686 -msgid "only ipv6" -msgstr "" - -#: grub-core/net/dns.c:690 -msgid "prefer ipv4" -msgstr "" - -#: grub-core/net/dns.c:694 -msgid "prefer ipv6" -msgstr "" - -#: grub-core/net/dns.c:759 -msgid "ADDRESS DNSSERVER" -msgstr "" - -#: grub-core/net/dns.c:760 -msgid "Perform a DNS lookup" -msgstr "" - -#: grub-core/net/dns.c:762 grub-core/net/dns.c:765 -msgid "DNSSERVER" -msgstr "" - -#: grub-core/net/dns.c:763 -msgid "Add a DNS server" -msgstr "" - -#: grub-core/net/dns.c:766 -msgid "Remove a DNS server" -msgstr "" - -#: grub-core/net/dns.c:768 -#, fuzzy -msgid "List DNS servers" -msgstr "Tampilkan perangkat PCI." - -#: grub-core/net/drivers/efi/efinet.c:49 grub-core/net/drivers/efi/efinet.c:65 -#: grub-core/net/drivers/efi/efinet.c:77 grub-core/net/drivers/emu/emunet.c:62 -#: grub-core/net/drivers/i386/pc/pxe.c:273 -#: grub-core/net/drivers/ieee1275/ofnet.c:75 -#: grub-core/net/drivers/uboot/ubootnet.c:62 -#, fuzzy -msgid "couldn't send network packet" -msgstr "tidak dapat membuka image core" - -#: grub-core/net/drivers/ieee1275/ofnet.c:326 -#: grub-core/net/drivers/ieee1275/ofnet.c:359 -#, fuzzy -msgid "interpret is not supported" -msgstr "16-bit protected interface supported\n" - -#: grub-core/net/drivers/ieee1275/ofnet.c:336 -msgid "alloc-mem failed" -msgstr "" - -#: grub-core/net/drivers/ieee1275/ofnet.c:370 -msgid "free-mem failed" -msgstr "" - -#: grub-core/net/http.c:105 -msgid "unsupported HTTP response" -msgstr "" - -#. TRANSLATORS: GRUB HTTP code is pretty young. So even perfectly -#. valid answers like 403 will trigger this very generic message. -#: grub-core/net/http.c:126 -#, c-format -msgid "unsupported HTTP error %d: %s" -msgstr "" - -#: grub-core/net/http.c:429 grub-core/net/tftp.c:420 -#, fuzzy, c-format -msgid "time out opening `%s'" -msgstr "tidak dapat membuka `%s'" - -#: grub-core/net/net.c:179 -msgid "timeout: could not resolve hardware address" -msgstr "" - -#: grub-core/net/net.c:548 -#, c-format -msgid "unresolvable address %s" -msgstr "" - -#: grub-core/net/net.c:594 -#, c-format -msgid "unrecognised network address `%s'" -msgstr "" - -#: grub-core/net/net.c:661 -msgid "destination unreachable" -msgstr "" - -#. TRANSLATORS: route loop is a condition when e.g. -#. to contact server A you need to go through B -#. and to contact B you need to go through A. -#: grub-core/net/net.c:684 -msgid "route loop detected" -msgstr "" - -#: grub-core/net/net.c:700 -msgid "address not found" -msgstr "" - -#: grub-core/net/net.c:704 -msgid "you can't delete this address" -msgstr "" - -#: grub-core/net/net.c:776 grub-core/net/net.c:792 -#, c-format -msgid "Unsupported hw address type %d\n" -msgstr "" - -#: grub-core/net/net.c:813 -#, c-format -msgid "Unsupported address type %d\n" -msgstr "" - -#: grub-core/net/net.c:1017 grub-core/net/net.c:1131 -msgid "three arguments expected" -msgstr "" - -#: grub-core/net/net.c:1023 -msgid "card not found" -msgstr "" - -#. TRANSLATORS: it refers to the network address. -#: grub-core/net/net.c:1167 -msgid "temporary" -msgstr "" - -#: grub-core/net/net.c:1190 -#, fuzzy, c-format -msgid "Unknown address type %d\n" -msgstr "Sistem berkas tidak diketahui" - -#: grub-core/net/net.c:1298 -#, fuzzy -msgid "no server is specified" -msgstr "Perangkat tidak dispesifikasikan.\n" - -#: grub-core/net/net.c:1637 -#, c-format -msgid "timeout reading `%s'" -msgstr "" - -#. TRANSLATORS: HWADDRESS stands for -#. "hardware address". -#: grub-core/net/net.c:1762 -msgid "SHORTNAME CARD ADDRESS [HWADDRESS]" -msgstr "" - -#: grub-core/net/net.c:1763 -msgid "Add a network address." -msgstr "" - -#: grub-core/net/net.c:1766 -msgid "[CARD [HWADDRESS]]" -msgstr "" - -#: grub-core/net/net.c:1767 -msgid "Perform an IPV6 autoconfiguration" -msgstr "" - -#: grub-core/net/net.c:1770 grub-core/net/net.c:1777 -msgid "SHORTNAME" -msgstr "" - -#: grub-core/net/net.c:1771 -#, fuzzy -msgid "Delete a network address." -msgstr "Set alamat port serial." - -#. TRANSLATORS: "gw" is a keyword. -#: grub-core/net/net.c:1774 -msgid "SHORTNAME NET [INTERFACE| gw GATEWAY]" -msgstr "" - -#: grub-core/net/net.c:1775 -msgid "Add a network route." -msgstr "" - -#: grub-core/net/net.c:1778 -msgid "Delete a network route." -msgstr "" - -#: grub-core/net/net.c:1780 -msgid "list network routes" -msgstr "" - -#: grub-core/net/net.c:1782 -msgid "list network cards" -msgstr "" - -#: grub-core/net/net.c:1784 -msgid "list network addresses" -msgstr "" - -#: grub-core/net/tcp.c:681 -msgid "connection refused" -msgstr "" - -#: grub-core/net/tcp.c:684 -msgid "connection timeout" -msgstr "" - -#: grub-core/normal/auth.c:220 -msgid "Enter username: " -msgstr "Masukan nama pengguna: " - -#: grub-core/normal/auth.c:269 -msgid "[USERLIST]" -msgstr "" - -#: grub-core/normal/auth.c:270 -msgid "Check whether user is in USERLIST." -msgstr "" - -#: grub-core/normal/cmdline.c:174 grub-core/normal/menu_entry.c:1068 -msgid "Possible commands are:" -msgstr "Perintah yang memungkinkan adalah:" - -#: grub-core/normal/cmdline.c:177 grub-core/normal/menu_entry.c:1072 -msgid "Possible devices are:" -msgstr "Perangkat yang memungkinkan adalah:" - -#: grub-core/normal/cmdline.c:180 grub-core/normal/menu_entry.c:1076 -msgid "Possible files are:" -msgstr "Berkas yang memungkinkan adalah:" - -#: grub-core/normal/cmdline.c:183 grub-core/normal/menu_entry.c:1080 -msgid "Possible partitions are:" -msgstr "Partisi yang memungkinkan adalah:" - -#: grub-core/normal/cmdline.c:186 grub-core/normal/menu_entry.c:1084 -msgid "Possible arguments are:" -msgstr "Argumen yang memungkinkan adalah:" - -#. TRANSLATORS: this message is used if none of above matches. -#. This shouldn't happen but please use the general term for -#. "thing" or "object". -#: grub-core/normal/cmdline.c:192 grub-core/normal/menu_entry.c:1088 -msgid "Possible things are:" -msgstr "Hal yang memungkinkan adalah:" - -#: grub-core/normal/color.c:81 -#, c-format -msgid "Warning: syntax error (missing slash) in `%s'\n" -msgstr "Peringatan: kesalahan dalam sintaks (hilang slash) dalam `%s'\n" - -#: grub-core/normal/color.c:90 -#, c-format -msgid "Warning: invalid foreground color `%s'\n" -msgstr "Peringatan: warna depan tidak valid `%s'\n" - -#: grub-core/normal/color.c:96 -#, c-format -msgid "Warning: invalid background color `%s'\n" -msgstr "Peringatan: nama belakang tidak valid `%s'\n" - -#: grub-core/normal/context.c:206 -msgid "ENVVAR [ENVVAR] ..." -msgstr "" - -#: grub-core/normal/context.c:207 -#, fuzzy -msgid "Export variables." -msgstr "Tampilkan tabel v1." - -#: grub-core/normal/datetime.c:25 -msgid "Sunday" -msgstr "" - -#: grub-core/normal/datetime.c:26 -msgid "Monday" -msgstr "" - -#: grub-core/normal/datetime.c:27 -msgid "Tuesday" -msgstr "" - -#: grub-core/normal/datetime.c:28 -msgid "Wednesday" -msgstr "" - -#: grub-core/normal/datetime.c:29 -msgid "Thursday" -msgstr "" - -#: grub-core/normal/datetime.c:30 -msgid "Friday" -msgstr "" - -#: grub-core/normal/datetime.c:31 -msgid "Saturday" -msgstr "" - -#: grub-core/normal/dyncmd.c:187 -#, fuzzy -msgid "module isn't loaded" -msgstr "tidak termuat" - -#: grub-core/normal/main.c:211 -#, c-format -msgid "GNU GRUB version %s" -msgstr "GNU GRUB versi %s" - -#: grub-core/normal/main.c:360 -msgid "ESC at any time exits." -msgstr "ESC di waktu apapun keluar." - -#: grub-core/normal/main.c:363 -#, c-format -msgid "" -"Minimal BASH-like line editing is supported. For the first word, TAB lists " -"possible command completions. Anywhere else TAB lists possible device or " -"file completions. %s" -msgstr "" -"Penyuntingan minimal bergaya BASH didukung. Untuk kata pertama, TAB " -"menampilkan pelengkapan perintah yang memungkin. Dimanapun TAB menampilkan " -"perangkat yang memungkinkan atau pelengkapan berkas. %s" - -#. TRANSLATORS: it's command line prompt. -#: grub-core/normal/main.c:395 -msgid ">" -msgstr "" - -#. TRANSLATORS: it's command line prompt. -#: grub-core/normal/main.c:398 -msgid "grub>" -msgstr "" - -#: grub-core/normal/main.c:518 -msgid "Clear the screen." -msgstr "Bersihkan layar." - -#: grub-core/normal/main.c:527 -msgid "Enter normal mode." -msgstr "" - -#: grub-core/normal/main.c:529 -msgid "Exit from normal mode." -msgstr "" - -#: grub-core/normal/menu.c:66 grub-core/normal/menu_entry.c:1449 -msgid "Press any key to continue..." -msgstr "Tekan tombol apapun untuk melanjutkan..." - -#: grub-core/normal/menu.c:815 -#, fuzzy, c-format -msgid "Booting `%s'" -msgstr "Mem-boot '%s'" - -#: grub-core/normal/menu.c:827 -#, fuzzy, c-format -msgid "Falling back to `%s'" -msgstr "Kembali ke '%s'" - -#: grub-core/normal/menu.c:843 -#, fuzzy -msgid "Failed to boot both default and fallback entries.\n" -msgstr "Gagal untuk mem-boot masukan baku.\n" - -#: grub-core/normal/menu_entry.c:1171 -msgid "Booting a command list" -msgstr "Mem-boot dari sebuah daftar perintah" - -#: grub-core/normal/menu_text.c:160 -#, fuzzy -msgid "" -"Minimum Emacs-like screen editing is supported. TAB lists completions. Press " -"Ctrl-x or F10 to boot, Ctrl-c or F2 for a command-line or ESC to discard " -"edits and return to the GRUB menu." -msgstr "" -"Penyuntingan layar minimum bergaya Emacs didukung. TAB menampilkan " -"pelengkapan. Tekan Ctrl-x untuk boot, Ctrl-c untuk baris perintah atau ESC " -"untuk kembali ke menu." - -#: grub-core/normal/menu_text.c:170 -#, fuzzy, c-format -msgid "Use the %C and %C keys to select which entry is highlighted." -msgstr "" -"Gunakan tombol-tombol %C dan %C untuk memiliki masukan mana yang disoroti.\n" - -#. TRANSLATORS: that's the list of binary unit prefixes. -#: grub-core/normal/misc.c:38 -msgid "B" -msgstr "" - -#: grub-core/normal/misc.c:38 -msgid "KiB" -msgstr "" - -#: grub-core/normal/misc.c:38 -msgid "MiB" -msgstr "" - -#: grub-core/normal/misc.c:38 -msgid "GiB" -msgstr "" - -#: grub-core/normal/misc.c:38 -msgid "TiB" -msgstr "" - -#: grub-core/normal/misc.c:38 -#, fuzzy -msgid "PiB" -msgstr "PUB" - -#. TRANSLATORS: that's the list of binary unit prefixes. -#: grub-core/normal/misc.c:40 -msgid "K" -msgstr "" - -#: grub-core/normal/misc.c:40 -msgid "M" -msgstr "" - -#: grub-core/normal/misc.c:40 -msgid "G" -msgstr "" - -#: grub-core/normal/misc.c:40 -msgid "T" -msgstr "" - -#: grub-core/normal/misc.c:40 -msgid "P" -msgstr "" - -#. TRANSLATORS: that's the list of binary unit prefixes. -#: grub-core/normal/misc.c:42 -msgid "B/s" -msgstr "" - -#: grub-core/normal/misc.c:42 -msgid "KiB/s" -msgstr "" - -#: grub-core/normal/misc.c:42 -msgid "MiB/s" -msgstr "" - -#: grub-core/normal/misc.c:42 -msgid "GiB/s" -msgstr "" - -#: grub-core/normal/misc.c:42 -msgid "TiB/s" -msgstr "" - -#: grub-core/normal/misc.c:42 -msgid "PiB/s" -msgstr "" - -#: grub-core/normal/misc.c:96 -#, c-format -msgid "Partition %s:" -msgstr "Partisi %s:" - -#: grub-core/normal/misc.c:101 -#, c-format -msgid "Device %s:" -msgstr "Perankat %s:" - -#: grub-core/normal/misc.c:107 -msgid "Filesystem cannot be accessed" -msgstr "Sistem berkas tidak dapat diakses" - -#: grub-core/normal/misc.c:121 -#, c-format -msgid "Filesystem type %s" -msgstr "Tipe sistem berkas %s" - -#: grub-core/normal/misc.c:131 -#, fuzzy, c-format -msgid "- Label `%s'" -msgstr "- Label \"%s\"" - -#. TRANSLATORS: Arguments are year, month, day, hour, minute, -#. second, day of the week (translated). -#: grub-core/normal/misc.c:148 -#, c-format -msgid "- Last modification time %d-%02d-%02d %02d:%02d:%02d %s" -msgstr "- Waktu modifikasi terakhir %d-%02d-%02d %02d:%02d:%02d %s" - -#: grub-core/normal/misc.c:171 -#, fuzzy -msgid "No known filesystem detected" -msgstr "Sistem berkas tidak diketahui" - -#: grub-core/normal/misc.c:174 -#, c-format -msgid " - Partition start at %llu%sKiB" -msgstr "" - -#: grub-core/normal/misc.c:178 -#, c-format -msgid " - Sector size %uB" -msgstr "" - -#: grub-core/normal/misc.c:180 -msgid " - Total size unknown" -msgstr "" - -#: grub-core/normal/misc.c:182 -#, c-format -msgid " - Total size %llu%sKiB" -msgstr "" - -#. TRANSLATORS: Replace dot with appropriate decimal separator for -#. your language. -#: grub-core/normal/misc.c:186 -msgid ".5" -msgstr "" - -#. TRANSLATORS: This has to fit on one line. It's ok to include few -#. words but don't write poems. -#: grub-core/normal/term.c:82 -msgid "--MORE--" -msgstr "" - -#: grub-core/osdep/aros/config.c:92 grub-core/osdep/unix/config.c:137 -#: grub-core/osdep/windows/config.c:55 -#, fuzzy, c-format -msgid "cannot open configuration file `%s': %s" -msgstr "tidak dapat membuka berkas log: %s" - -#: grub-core/osdep/basic/compress.c:8 grub-core/osdep/basic/compress.c:14 -#: grub-core/osdep/basic/compress.c:20 -msgid "no compression is available for your platform" -msgstr "" - -#: grub-core/osdep/basic/no_platform.c:30 -#: grub-core/osdep/windows/platform.c:418 -msgid "no IEEE1275 routines are available for your platform" -msgstr "" - -#: grub-core/osdep/basic/no_platform.c:38 -msgid "no EFI routines are available for your platform" -msgstr "" - -#: grub-core/osdep/basic/no_platform.c:45 -#: grub-core/osdep/windows/platform.c:425 -msgid "no SGI routines are available for your platform" -msgstr "" - -#. TRANSLATORS: The OS itself may very well have a random -#. number generator but GRUB doesn't know how to access it. -#: grub-core/osdep/basic/random.c:42 -msgid "no random number generator is available for your OS" -msgstr "" - -#: grub-core/osdep/devmapper/getroot.c:81 -msgid "Failed to create `device-mapper' tree" -msgstr "" - -#: grub-core/osdep/devmapper/getroot.c:197 -#: grub-core/osdep/freebsd/getroot.c:202 -#, c-format -msgid "can't mount encrypted volume `%s': %s" -msgstr "" - -#. TRANSLATORS: geom is the name of (k)FreeBSD device framework. -#. Usually left untranslated. -#. -#: grub-core/osdep/freebsd/getroot.c:82 grub-core/osdep/freebsd/getroot.c:164 -#: grub-core/osdep/freebsd/getroot.c:258 grub-core/osdep/freebsd/getroot.c:316 -#, fuzzy -msgid "couldn't open geom" -msgstr "tidak dapat membuka image core" - -#: grub-core/osdep/freebsd/getroot.c:182 grub-core/osdep/freebsd/getroot.c:277 -#, fuzzy -msgid "couldn't find geli consumer" -msgstr "tidak dapat membuka image core" - -#: grub-core/osdep/freebsd/getroot.c:282 -msgid "couldn't retrieve geli UUID" -msgstr "" - -#. TRANSLATORS: geom is the name of (k)FreeBSD device framework. -#. Usually left untranslated. "part" is the identifier of one of its -#. classes. -#: grub-core/osdep/freebsd/getroot.c:325 -msgid "couldn't find geom `part' class" -msgstr "" - -#: grub-core/osdep/freebsd/hostdisk.c:72 grub-core/osdep/linux/hostdisk.c:93 -#, fuzzy -msgid "unaligned device size" -msgstr "Perangkat `%s' tidak valid.\n" - -#: grub-core/osdep/generic/blocklist.c:56 -#, c-format -msgid "attempting to read the core image `%s' from GRUB" -msgstr "mencoba untuk membaca image core `%s' dari GRUB" - -#: grub-core/osdep/generic/blocklist.c:57 -#, c-format -msgid "attempting to read the core image `%s' from GRUB again" -msgstr "mencoba untuk membaca image core `%s' dari GRUB lagi" - -#: grub-core/osdep/generic/blocklist.c:115 -#, c-format -msgid "cannot read `%s' correctly" -msgstr "tidak dapat membaca `%s' secara benar" - -#: grub-core/osdep/generic/blocklist.c:126 -#, fuzzy -msgid "failed to read the sectors of the core image" -msgstr "gagal untuk membaca sektor selanjutnya dari image core" - -#. TRANSLATORS: On GNU/Hurd, a "translator" is similar to a filesystem -#. mount, but handled by a userland daemon, whose invocation command line -#. is being fetched here. First %s is the file being looked at (for which -#. we are fetching the "translator" command line), second %s is the error -#. message. -#. -#: grub-core/osdep/hurd/getroot.c:79 -#, c-format -msgid "cannot get translator command line for path `%s': %s" -msgstr "" - -#: grub-core/osdep/hurd/getroot.c:82 -#, c-format -msgid "translator command line is empty for path `%s'" -msgstr "" - -#. TRANSLATORS: we expect to get something like -#. /hurd/foobar --option1 --option2=baz /dev/something -#. -#: grub-core/osdep/hurd/getroot.c:98 -#, c-format -msgid "" -"translator `%s' for path `%s' has several non-option words, at least `%s' " -"and `%s'" -msgstr "" - -#. TRANSLATORS: we expect to get something like -#. /hurd/foobar --option1 --option2=baz /dev/something -#. -#: grub-core/osdep/hurd/getroot.c:109 -#, c-format -msgid "" -"translator `%s' for path `%s' is given only options, cannot find device part" -msgstr "" - -#: grub-core/osdep/hurd/hostdisk.c:73 -#, c-format -msgid "Storage information for `%s' does not include type" -msgstr "" - -#: grub-core/osdep/hurd/hostdisk.c:75 -#, c-format -msgid "`%s' is not a local disk" -msgstr "" - -#: grub-core/osdep/hurd/hostdisk.c:78 -#, c-format -msgid "" -"Storage information for `%s' indicates neither a plain partition nor a plain " -"disk" -msgstr "" - -#: grub-core/osdep/linux/blocklist.c:81 grub-core/osdep/linux/blocklist.c:96 -#: grub-core/osdep/linux/blocklist.c:122 -#, c-format -msgid "can't retrieve blocklists: %s" -msgstr "" - -#: grub-core/osdep/linux/blocklist.c:84 -msgid "blocksize is not divisible by 512" -msgstr "" - -#: grub-core/osdep/linux/blocklist.c:86 -#, fuzzy -msgid "invalid zero blocksize" -msgstr "Tampilkan variabel dari berkas blok lingkungan." - -#: grub-core/osdep/linux/blocklist.c:90 util/setup.c:744 -msgid "can't retrieve blocklists" -msgstr "" - -#: grub-core/osdep/linux/getroot.c:154 -#, c-format -msgid "ioctl RAID_VERSION error: %s" -msgstr "" - -#: grub-core/osdep/linux/getroot.c:160 grub-core/osdep/linux/getroot.c:164 -#, c-format -msgid "unsupported RAID version: %d.%d" -msgstr "" - -#: grub-core/osdep/linux/getroot.c:169 -#, c-format -msgid "ioctl GET_ARRAY_INFO error: %s" -msgstr "" - -#: grub-core/osdep/linux/getroot.c:178 -#, c-format -msgid "ioctl GET_DISK_INFO error: %s" -msgstr "" - -#: grub-core/osdep/linux/getroot.c:608 grub-core/osdep/linux/getroot.c:678 -#: grub-core/osdep/linux/hostdisk.c:126 grub-core/osdep/unix/getroot.c:253 -#: grub-core/osdep/unix/getroot.c:642 grub-core/osdep/unix/platform.c:92 -#: grub-core/osdep/unix/platform.c:100 -#, fuzzy, c-format -msgid "Unable to open stream from %s: %s" -msgstr "Tidak dapat membuka direktori %s\n" - -#: grub-core/osdep/linux/getroot.c:1033 -#, fuzzy, c-format -msgid "unknown kind of RAID device `%s'" -msgstr "perangkat root `%s' tidak valid" - -#: grub-core/osdep/linux/ofpath.c:181 -#, c-format -msgid "`obppath' not found in parent dirs of `%s', no IEEE1275 name discovery" -msgstr "" - -#: grub-core/osdep/linux/ofpath.c:222 grub-core/osdep/unix/getroot.c:505 -#: grub-core/osdep/unix/getroot.c:529 grub-core/osdep/unix/relpath.c:49 -#: util/grub-install.c:984 util/grub-install.c:1331 util/grub-probe.c:323 -#, c-format -msgid "failed to get canonical path of `%s'" -msgstr "" - -#: grub-core/osdep/linux/ofpath.c:740 -#, fuzzy, c-format -msgid "unknown device type %s" -msgstr "Argumen ekstra `%s' tidak diketahui.\n" - -#: grub-core/osdep/linux/ofpath.c:758 util/ieee1275/grub-ofpathname.c:39 -#, c-format -msgid "Usage: %s DEVICE\n" -msgstr "" - -#: grub-core/osdep/unix/exec.c:86 grub-core/osdep/unix/exec.c:172 -#: grub-core/osdep/unix/exec.c:217 -#, fuzzy, c-format -msgid "Unable to fork: %s" -msgstr "Tidak dapat membuka %s" - -#: grub-core/osdep/unix/exec.c:166 grub-core/osdep/unix/exec.c:211 -#, fuzzy, c-format -msgid "Unable to create pipe: %s" -msgstr "Tidak dapat membuka %s" - -#: grub-core/osdep/unix/getroot.c:370 -#, fuzzy -msgid "cannot save the original directory" -msgstr "tidak dapat mengkompress image kernel" - -#: grub-core/osdep/unix/getroot.c:423 grub-core/osdep/unix/getroot.c:480 -#: grub-core/osdep/unix/getroot.c:489 -#, fuzzy -msgid "cannot restore the original directory" -msgstr "tidak dapat mengkompress image kernel" - -#. TRANSLATORS: "stat" comes from the name of POSIX function. -#: grub-core/osdep/unix/getroot.c:551 grub-core/osdep/unix/hostdisk.c:61 -#: grub-core/osdep/unix/relpath.c:73 grub-core/osdep/unix/relpath.c:97 -#: util/getroot.c:160 util/getroot.c:162 util/grub-install.c:774 -#: util/grub-macbless.c:70 -#, fuzzy, c-format -msgid "cannot stat `%s': %s" -msgstr "tidak dapat membuka `%s'" - -#: grub-core/osdep/unix/hostdisk.c:293 -#, fuzzy, c-format -msgid "cannot make temporary file: %s" -msgstr "tidak dapat membuka berkas log: %s" - -#: grub-core/osdep/unix/hostdisk.c:311 -#, fuzzy, c-format -msgid "cannot make temporary directory: %s" -msgstr "Tidak dapat mengurutkan direktori %s\n" - -#: grub-core/osdep/unix/platform.c:77 -#, c-format -msgid "" -"couldn't find IEEE1275 device path for %s.\n" -"You will have to set `boot-device' variable manually" -msgstr "" - -#. TRANSLATORS: This message is shown when required executable `%s' -#. isn't found. -#: grub-core/osdep/unix/platform.c:149 grub-core/osdep/unix/platform.c:189 -#, c-format -msgid "%s: not found" -msgstr "" - -#: grub-core/osdep/unix/platform.c:225 -#, c-format -msgid "" -"`nvsetenv' failed. \n" -"You will have to set `boot-device' variable manually. At the IEEE1275 " -"prompt, type:\n" -" %s\n" -msgstr "" - -#: grub-core/osdep/unix/platform.c:240 -msgid "You will have to set `SystemPartition' and `OSLoader' manually." -msgstr "" - -#. TRANSLATORS: canonical pathname is the -#. complete one e.g. /etc/fstab. It has -#. to contain `/' normally, if it doesn't -#. we're in trouble and throw this error. -#: grub-core/osdep/unix/relpath.c:90 -msgid "no `/' in canonical filename" -msgstr "" - -#: grub-core/osdep/windows/hostdisk.c:151 -msgid "cygwin_conv_path() failed" -msgstr "" - -#: grub-core/osdep/windows/hostdisk.c:501 util/grub-install.c:570 -msgid "couldn't retrieve random data" -msgstr "" - -#: grub-core/osdep/windows/platform.c:97 -msgid "Insufficient privileges to access firmware, assuming BIOS" -msgstr "" - -#: grub-core/osdep/windows/platform.c:225 -msgid "no EFI routines are available when running in BIOS mode" -msgstr "" - -#: grub-core/osdep/windows/platform.c:240 -msgid "unexpected EFI error" -msgstr "" - -#: grub-core/osdep/windows/platform.c:315 -msgid "Couldn't find a free BootNNNN slot" -msgstr "" - -#: grub-core/partmap/gpt.c:191 -#, fuzzy -msgid "" -"this GPT partition label contains no BIOS Boot Partition; embedding won't be " -"possible" -msgstr "" -"Label partisi GPT ini tidak memiliki partisi boot BIOS; penempatan tidak " -"memungkinkan!" - -#: grub-core/partmap/gpt.c:196 -#, fuzzy -msgid "your BIOS Boot Partition is too small; embedding won't be possible" -msgstr "" -"Label partisi GPT ini tidak memiliki partisi boot BIOS; penempatan tidak " -"memungkinkan!" - -#. TRANSLATORS: MBR gap and boot track is the same thing and is the space -#. between MBR and first partitition. If your language translates well only -#. "boot track", you can just use it everywhere. Next two messages are about -#. RAID controllers/software bugs which GRUB has to live with. Please spread -#. the message that these are bugs in other software and not merely -#. suboptimal behaviour. -#: grub-core/partmap/msdos.c:51 -#, c-format -msgid "" -"Sector %llu is already in use by raid controller `%s'; avoiding it. Please " -"ask the manufacturer not to store data in MBR gap" -msgstr "" - -#: grub-core/partmap/msdos.c:54 -#, c-format -msgid "" -"Sector %llu is already in use by the program `%s'; avoiding it. This " -"software may cause boot or other problems in future. Please ask its authors " -"not to store data in the boot track" -msgstr "" - -#: grub-core/partmap/msdos.c:384 -msgid "" -"other software is using the embedding area, and there is not enough room for " -"core.img. Such software is often trying to store data in a way that avoids " -"detection. We recommend you investigate" -msgstr "" - -#: grub-core/partmap/msdos.c:395 -#, fuzzy -msgid "" -"this msdos-style partition label has no post-MBR gap; embedding won't be " -"possible" -msgstr "" -"Label partisi gaya msdos ini tidak memiliki post-MBR gap; penempatan tidak " -"memungkinkan!" - -#: grub-core/partmap/msdos.c:404 -#, fuzzy -msgid "your embedding area is unusually small. core.img won't fit in it." -msgstr "Penempatan anda sangat kecil. core.img tidak akan masuk disana." - -#: grub-core/parttool/msdospart.c:39 -#, fuzzy -msgid "Make partition active" -msgstr "Partisi yang memungkinkan adalah:" - -#: grub-core/parttool/msdospart.c:51 -msgid "not a primary partition" -msgstr "" - -#: grub-core/parttool/msdospart.c:69 -#, c-format -msgid "Partition %d is active now. \n" -msgstr "" - -#: grub-core/parttool/msdospart.c:74 -#, c-format -msgid "Cleared active flag on %d. \n" -msgstr "" - -#: grub-core/parttool/msdospart.c:87 -#, fuzzy -msgid "Change partition type" -msgstr "Tentukan tipe peta partisi." - -#: grub-core/parttool/msdospart.c:88 -#, fuzzy -msgid "Set `hidden' flag in partition type" -msgstr "Tentukan tipe peta partisi." - -#: grub-core/parttool/msdospart.c:130 -#, c-format -msgid "the partition type 0x%x isn't valid" -msgstr "" - -#. TRANSLATORS: In this case we're actually writing to the disk and actively -#. modifying partition type rather than just defining it. -#: grub-core/parttool/msdospart.c:137 -#, fuzzy, c-format -msgid "Setting partition type to 0x%x\n" -msgstr "Tentukan tipe peta partisi." - -#. TRANSLATORS: 0 is a quantifier. "break" (similar to bash) -#. can be used e.g. to break 3 loops at once. -#. But asking it to break 0 loops makes no sense. -#: grub-core/script/execute.c:143 -msgid "can't break 0 loops" -msgstr "" - -#. TRANSLATORS: It's about not being -#. inside a function. "return" can be used only -#. in a function and this error occurs if it's used -#. anywhere else. -#: grub-core/script/execute.c:227 -msgid "not in function body" -msgstr "" - -#: grub-core/script/execute.c:371 -#, fuzzy, c-format -msgid "invalid variable name `%s'" -msgstr "perangkat root `%s' tidak valid" - -#: grub-core/script/execute.c:953 -msgid "cannot allocate command buffer" -msgstr "" - -#: grub-core/script/lexer.c:144 util/grub-fstest.c:330 -msgid "unexpected end of file" -msgstr "" - -#: grub-core/script/main.c:55 grub-core/script/main.c:57 -#: grub-core/script/main.c:59 grub-core/script/main.c:67 -msgid "[NUM]" -msgstr "" - -#: grub-core/script/main.c:55 -#, fuzzy -msgid "Exit from loops" -msgstr "Keluar dari GRUB." - -#: grub-core/script/main.c:57 -msgid "Continue loops" -msgstr "" - -#. TRANSLATORS: Positional arguments are -#. arguments $0, $1, $2, ... -#: grub-core/script/main.c:62 -msgid "Shift positional parameters." -msgstr "" - -#: grub-core/script/main.c:64 -msgid "[VALUE]..." -msgstr "" - -#: grub-core/script/main.c:65 -#, fuzzy -msgid "Set positional parameters." -msgstr "Get/set parameter disk ATA." - -#. TRANSLATORS: It's a command description -#. and "Return" is a verb, not a noun. The -#. command in question is "return" and -#. has exactly the same semanics as bash -#. equivalent. -#: grub-core/script/main.c:73 -msgid "Return from a function." -msgstr "" - -#: grub-core/term/gfxterm_background.c:176 -msgid "[-m (stretch|normal)] FILE" -msgstr "" - -#: grub-core/term/gfxterm_background.c:177 -msgid "Load background image for active terminal." -msgstr "" - -#: grub-core/term/gfxterm_background.c:182 util/grub-install.c:302 -#: util/grub-install.c:303 util/grub-mkrescue.c:107 util/grub-mkrescue.c:108 -#: util/grub-render-label.c:61 util/grub-render-label.c:63 -msgid "COLOR" -msgstr "" - -#: grub-core/term/gfxterm_background.c:183 -msgid "Set background color for active terminal." -msgstr "" - -#: grub-core/term/i386/coreboot/cbmemc.c:139 -msgid "Show CBMEM console content." -msgstr "" - -#: grub-core/term/serial.c:57 -msgid "Set the serial unit." -msgstr "Set satuan serial." - -#: grub-core/term/serial.c:58 -msgid "Set the serial port address." -msgstr "Set alamat port serial." - -#: grub-core/term/serial.c:59 -msgid "Set the serial port speed." -msgstr "Set kecepatan port serial." - -#: grub-core/term/serial.c:60 -msgid "Set the serial port word length." -msgstr "Set panjang kata port serial." - -#: grub-core/term/serial.c:61 -msgid "Set the serial port parity." -msgstr "Set pariti dari port serial." - -#: grub-core/term/serial.c:62 -msgid "Set the serial port stop bits." -msgstr "Set stop bit dari port serial." - -#: grub-core/term/serial.c:63 -#, fuzzy -msgid "Set the base frequency." -msgstr "Set satuan serial." - -#: grub-core/term/serial.c:64 -msgid "Enable/disable RTS/CTS." -msgstr "" - -#: grub-core/term/serial.c:218 -#, c-format -msgid "serial port `%s' isn't found" -msgstr "" - -#: grub-core/term/serial.c:254 -msgid "unsupported serial port flow control" -msgstr "" - -#: grub-core/term/serial.c:429 -#, fuzzy -msgid "[OPTIONS...]" -msgstr "[PILIHAN] DISK" - -#: grub-core/term/serial.c:430 -msgid "Configure serial port." -msgstr "" - -#: grub-core/term/terminfo.c:184 -#, fuzzy, c-format -msgid "unknown terminfo type `%s'" -msgstr "Argumen ekstra `%s' tidak diketahui.\n" - -#: grub-core/term/terminfo.c:668 -msgid "ASCII" -msgstr "" - -#: grub-core/term/terminfo.c:671 -msgid "UTF-8" -msgstr "" - -#. TRANSLATORS: visually ordered UTF-8 is a non-compliant encoding -#. based on UTF-8 with right-to-left languages written in reverse. -#. Used on some terminals. Normal UTF-8 is refered as -#. "logically-ordered UTF-8" by opposition. -#: grub-core/term/terminfo.c:677 -msgid "visually-ordered UTF-8" -msgstr "" - -#: grub-core/term/terminfo.c:680 -msgid "Unknown encoding" -msgstr "" - -#: grub-core/term/terminfo.c:684 -msgid "Current terminfo types:" -msgstr "" - -#: grub-core/term/terminfo.c:699 -msgid "Terminal is ASCII-only [default]." -msgstr "" - -#: grub-core/term/terminfo.c:700 -msgid "Terminal is logical-ordered UTF-8." -msgstr "" - -#: grub-core/term/terminfo.c:701 -msgid "Terminal is visually-ordered UTF-8." -msgstr "" - -#: grub-core/term/terminfo.c:703 -msgid "Terminal has specified geometry." -msgstr "" - -#. TRANSLATORS: "x" has to be entered in, like an identifier, so please don't -#. use better Unicode codepoints. -#: grub-core/term/terminfo.c:706 -msgid "WIDTHxHEIGHT." -msgstr "" - -#: grub-core/term/terminfo.c:746 -msgid "incorrect terminal dimensions specification" -msgstr "" - -#: grub-core/term/terminfo.c:776 -#, c-format -msgid "terminal %s isn't found or it's not handled by terminfo" -msgstr "" - -#: grub-core/term/terminfo.c:785 -msgid "[[-a|-u|-v] [-g WxH] TERM [TYPE]]" -msgstr "" - -#: grub-core/term/terminfo.c:786 -msgid "Set terminfo type of TERM to TYPE.\n" -msgstr "" - -#. TRANSLATORS: this is the BLOCK-argument, not -#. environment block. -#: grub-core/tests/test_blockarg.c:49 -#, fuzzy -msgid "Print and execute block argument." -msgstr "Tampilkan daftar blok." - -#. TRANSLATORS: We're speaking about bitmap images like -#. JPEG or PNG. -#: grub-core/video/bitmap.c:209 -#, c-format -msgid "bitmap file `%s' is of unsupported format" -msgstr "" - -#: grub-core/video/i386/pc/vbe.c:1191 -#, c-format -msgid " VBE info: version: %d.%d OEM software rev: %d.%d\n" -msgstr "" - -#: grub-core/video/i386/pc/vbe.c:1198 -#, c-format -msgid " total memory: %d KiB\n" -msgstr "" - -#: grub-core/video/video.c:596 grub-core/video/video.c:762 -msgid "no suitable video mode found" -msgstr "" - -#: include/grub/crypto.h:403 -msgid "access denied" -msgstr "" - -#: include/grub/util/install.h:30 include/grub/util/install.h:35 -#, fuzzy -msgid "MODULES" -msgstr "MODUL" - -#: include/grub/util/install.h:31 -msgid "pre-load specified modules MODULES" -msgstr "" - -#: include/grub/util/install.h:33 -msgid "embed a specific DTB" -msgstr "" - -#: include/grub/util/install.h:36 -msgid "install only MODULES and their dependencies [default=all]" -msgstr "" - -#: include/grub/util/install.h:37 -msgid "THEMES" -msgstr "" - -#: include/grub/util/install.h:38 -#, c-format -msgid "install THEMES [default=%s]" -msgstr "" - -#: include/grub/util/install.h:39 -msgid "FONTS" -msgstr "" - -#: include/grub/util/install.h:40 -#, c-format -msgid "install FONTS [default=%s]" -msgstr "" - -#: include/grub/util/install.h:41 -msgid "LOCALES" -msgstr "" - -#: include/grub/util/install.h:42 -msgid "install only LOCALES [default=all]" -msgstr "" - -#: include/grub/util/install.h:45 -msgid "compress GRUB files [optional]" -msgstr "" - -#: include/grub/util/install.h:48 util/grub-mkimage.c:83 -#, fuzzy -msgid "choose the compression to use for core image" -msgstr "tidak dapat mengkompress image kernel" - -#. TRANSLATORS: platform here isn't identifier. It can be translated. -#: include/grub/util/install.h:51 include/grub/util/install.h:54 -#: util/grub-mkimage.c:66 -#, c-format -msgid "use images and modules under DIR [default=%s/]" -msgstr "" - -#: include/grub/util/install.h:57 -#, c-format -msgid "use translations under DIR [default=%s]" -msgstr "" - -#: include/grub/util/install.h:60 -#, c-format -msgid "use themes under DIR [default=%s]" -msgstr "" - -#: include/grub/util/install.h:65 util/grub-mkimage.c:78 -msgid "embed FILE as public key for signature checking" -msgstr "" - -#: util/editenv.c:59 util/grub-editenv.c:201 util/grub-install-common.c:535 -#: util/grub-mkimage.c:315 util/setup.c:791 -#, fuzzy, c-format -msgid "cannot sync `%s': %s" -msgstr "tidak dapat membuka `%s'" - -#: util/editenv.c:64 -#, fuzzy, c-format -msgid "cannot rename the file %s to %s" -msgstr "tidak dapat membaca %llu bytes dari %s" - -#: util/getroot.c:402 -#, c-format -msgid "disk does not exist, so falling back to partition device %s" -msgstr "" - -#: util/grub-editenv.c:45 util/grub-fstest.c:506 -msgid "Commands:" -msgstr "" - -#: util/grub-editenv.c:47 -#, fuzzy -msgid "Create a blank environment block file." -msgstr "Simpan variabel ke berkas blok lingkungan." - -#: util/grub-editenv.c:49 -#, fuzzy -msgid "List the current variables." -msgstr "Tampilkan pemetaan saat ini." - -#. TRANSLATORS: "set" is a keyword. It's a summary of "set" subcommand. -#: util/grub-editenv.c:51 -msgid "set [NAME=VALUE ...]" -msgstr "" - -#: util/grub-editenv.c:52 -#, fuzzy -msgid "Set variables." -msgstr "Set variabel dengan masukan pengguna." - -#. TRANSLATORS: "unset" is a keyword. It's a summary of "unset" subcommand. -#: util/grub-editenv.c:54 -msgid "unset [NAME ...]" -msgstr "" - -#: util/grub-editenv.c:55 -msgid "Delete variables." -msgstr "" - -#: util/grub-editenv.c:57 -#, fuzzy -msgid "Options:" -msgstr "Pilihan:\n" - -#: util/grub-editenv.c:84 -msgid "You need to specify at least one command.\n" -msgstr "" - -#: util/grub-editenv.c:113 -msgid "FILENAME COMMAND" -msgstr "" - -#: util/grub-editenv.c:114 -#, fuzzy -msgid "Tool to edit environment block." -msgstr "Simpan variabel ke berkas blok lingkungan." - -#: util/grub-editenv.c:116 -#, c-format -msgid "" -"If FILENAME is `-', the default value %s is used.\n" -"\n" -"There is no `delete' command; if you want to delete the whole environment\n" -"block, use `rm %s'." -msgstr "" - -#: util/grub-editenv.c:162 -#, fuzzy -msgid "invalid environment block" -msgstr "Tampilkan variabel dari berkas blok lingkungan." - -#: util/grub-editenv.c:217 -#, fuzzy, c-format -msgid "invalid parameter %s" -msgstr "perangkat root `%s' tidak valid" - -#: util/grub-editenv.c:222 -msgid "environment block too small" -msgstr "" - -#: util/grub-fstest.c:107 -#, c-format -msgid "disk read fails at offset %lld, length %lld" -msgstr "" - -#: util/grub-fstest.c:138 -#, c-format -msgid "invalid skip value %lld" -msgstr "" - -#: util/grub-fstest.c:160 util/grub-fstest.c:246 -#, c-format -msgid "read error at offset %llu: %s" -msgstr "" - -#: util/grub-fstest.c:210 -#, fuzzy, c-format -msgid "cannot open OS file `%s': %s" -msgstr "tidak dapat membuka `%s'" - -#: util/grub-fstest.c:225 util/misc.c:126 -#, fuzzy, c-format -msgid "cannot write to the stdout: %s" -msgstr "tidak dapat membaca %llu bytes dari %s" - -#: util/grub-fstest.c:259 -#, c-format -msgid "compare fail at offset %llu" -msgstr "" - -#: util/grub-fstest.c:280 util/grub-fstest.c:314 -#, c-format -msgid "OS file %s open error: %s" -msgstr "" - -#: util/grub-fstest.c:402 util/grub-mount.c:392 -#, c-format -msgid "`loopback' command fails: %s" -msgstr "" - -#: util/grub-fstest.c:413 util/grub-mount.c:402 -#, c-format -msgid "`cryptomount' command fails: %s" -msgstr "" - -#: util/grub-fstest.c:474 util/grub-fstest.c:478 -msgid "couldn't retrieve UUID" -msgstr "" - -#: util/grub-fstest.c:507 -msgid "ls PATH" -msgstr "" - -#: util/grub-fstest.c:507 -#, fuzzy -msgid "List files in PATH." -msgstr "Tampilkan seluruh berkas." - -#: util/grub-fstest.c:508 -msgid "cp FILE LOCAL" -msgstr "" - -#: util/grub-fstest.c:508 -msgid "Copy FILE to local file LOCAL." -msgstr "" - -#: util/grub-fstest.c:509 -#, fuzzy -msgid "cat FILE" -msgstr "BERKAS" - -#: util/grub-fstest.c:509 -msgid "Copy FILE to standard output." -msgstr "" - -#: util/grub-fstest.c:510 -msgid "cmp FILE LOCAL" -msgstr "" - -#: util/grub-fstest.c:510 -#, fuzzy -msgid "Compare FILE with local file LOCAL." -msgstr "Bandingkan dua berkas." - -#: util/grub-fstest.c:511 -#, fuzzy -msgid "hex FILE" -msgstr "BERKAS" - -#: util/grub-fstest.c:511 -#, fuzzy -msgid "Show contents of FILE in hex." -msgstr "Tampilkan isi dari berkas." - -#: util/grub-fstest.c:512 -#, fuzzy -msgid "crc FILE" -msgstr "BERKAS" - -#: util/grub-fstest.c:512 -#, fuzzy -msgid "Get crc32 checksum of FILE." -msgstr "Hitung 'checksum' crc32 dari berkas." - -#: util/grub-fstest.c:513 -msgid "blocklist FILE" -msgstr "" - -#: util/grub-fstest.c:513 -#, fuzzy -msgid "Display blocklist of FILE." -msgstr "Tampilkan baris dari teks." - -#: util/grub-fstest.c:514 -msgid "xnu_uuid DEVICE" -msgstr "" - -#: util/grub-fstest.c:514 -msgid "Compute XNU UUID of the device." -msgstr "" - -#. TRANSLATORS: bitmaps are images like e.g. in JPEG. -#: util/grub-fstest.c:517 util/grub-fstest.c:518 util/grub-fstest.c:519 -#: util/grub-mkfont.c:938 util/grub-mkfont.c:951 util/grub-mkfont.c:952 -#: util/grub-mkpasswd-pbkdf2.c:46 util/grub-mkpasswd-pbkdf2.c:47 -#: util/grub-mkpasswd-pbkdf2.c:48 -msgid "NUM" -msgstr "" - -#: util/grub-fstest.c:517 -#, fuzzy -msgid "Skip N bytes from output file." -msgstr "Lewati byte ofset dari awal berkas." - -#: util/grub-fstest.c:518 -msgid "Handle N bytes in output file." -msgstr "" - -#: util/grub-fstest.c:519 -msgid "Specify the number of input files." -msgstr "" - -#: util/grub-fstest.c:520 util/grub-mount.c:453 -msgid "Set debug environment variable." -msgstr "" - -#: util/grub-fstest.c:521 util/grub-mount.c:454 -#, fuzzy -msgid "Mount crypto devices." -msgstr "Set perangkat root." - -#. TRANSLATORS: "prompt" is a keyword. -#: util/grub-fstest.c:524 util/grub-mount.c:457 -msgid "FILE|prompt" -msgstr "" - -#: util/grub-fstest.c:524 util/grub-mount.c:457 -msgid "Load zfs crypto key." -msgstr "" - -#: util/grub-fstest.c:526 -msgid "Uncompress data." -msgstr "" - -#: util/grub-fstest.c:605 -#, fuzzy -msgid "Invalid disk count.\n" -msgstr "Perangkat `%s' tidak valid.\n" - -#. TRANSLATORS: disk count is optional but if it's there it must -#. be before disk list. So please don't imply disk count as mandatory. -#. -#: util/grub-fstest.c:613 -msgid "Disk count must precede disks list.\n" -msgstr "" - -#: util/grub-fstest.c:633 -#, fuzzy -msgid "No command is specified.\n" -msgstr "Perangkat tidak dispesifikasikan.\n" - -#: util/grub-fstest.c:638 -msgid "Not enough parameters to command.\n" -msgstr "" - -#: util/grub-fstest.c:711 -#, fuzzy, c-format -msgid "Invalid command %s.\n" -msgstr "Node tidak valid -%s\n" - -#: util/grub-fstest.c:724 -#, fuzzy -msgid "IMAGE_PATH COMMANDS" -msgstr "PERINTAH PARTISI" - -#: util/grub-fstest.c:725 util/grub-mount.c:553 -#, fuzzy -msgid "Debug tool for filesystem driver." -msgstr "Tentukan tipe sistem berkas." - -#: util/grub-glue-efi.c:53 -msgid "set input filename for 32-bit part." -msgstr "" - -#: util/grub-glue-efi.c:55 -msgid "set input filename for 64-bit part." -msgstr "" - -#: util/grub-glue-efi.c:57 util/grub-mklayout.c:55 util/grub-render-label.c:71 -#, fuzzy -msgid "set output filename. Default is STDOUT" -msgstr "Set nama berkas keluaran" - -#: util/grub-glue-efi.c:94 util/grub-mklayout.c:476 -#: util/grub-mkpasswd-pbkdf2.c:86 util/grub-render-label.c:131 -#, fuzzy -msgid "[OPTIONS]" -msgstr "[PILIHAN] DISK" - -#: util/grub-glue-efi.c:95 -msgid "Glue 32-bit and 64-bit binary into Apple universal one." -msgstr "" - -#: util/grub-glue-efi.c:116 -msgid "Missing input file\n" -msgstr "" - -#: util/grub-install-common.c:127 util/grub-install-common.c:151 -#, fuzzy, c-format -msgid "cannot copy `%s' to `%s': %s" -msgstr "tidak dapat membuka `%s'" - -#: util/grub-install-common.c:147 -#, fuzzy, c-format -msgid "can't compress `%s' to `%s'" -msgstr "tidak dapat membuka `%s'" - -#: util/grub-install-common.c:196 util/grub-install-common.c:552 -#: util/grub-install-common.c:579 util/grub-install-common.c:621 -#, fuzzy, c-format -msgid "cannot open directory `%s': %s" -msgstr "tidak dapat membuka `%s'" - -#: util/grub-install-common.c:212 -#, fuzzy, c-format -msgid "cannot delete `%s': %s" -msgstr "tidak dapat membuka `%s'" - -#: util/grub-install-common.c:324 util/grub-mkimage.c:209 -msgid "grub-mkimage is compiled without XZ support" -msgstr "" - -#: util/grub-install-common.c:332 util/grub-mkimage.c:217 -#, c-format -msgid "Unknown compression format %s" -msgstr "" - -#: util/grub-install-common.c:400 -#, c-format -msgid "Unrecognized compression `%s'" -msgstr "" - -#: util/grub-install-common.c:509 -#, fuzzy, c-format -msgid "unknown target format %s" -msgstr "Argumen ekstra `%s' tidak diketahui.\n" - -#: util/grub-install-common.c:700 -#, fuzzy, c-format -msgid "cannot find locale `%s'" -msgstr "tidak dapat membuka `%s'" - -#: util/grub-install-common.c:939 -#, c-format -msgid "%s doesn't exist. Please specify --target or --directory" -msgstr "" - -#: util/grub-install-common.c:948 util/grub-install-common.c:951 -#, fuzzy, c-format -msgid "invalid modinfo file `%s'" -msgstr "perangkat root `%s' tidak valid" - -#: util/grub-install-common.c:966 -#, fuzzy, c-format -msgid "Unknown platform `%s-%s'" -msgstr "Argumen ekstra `%s' tidak diketahui.\n" - -#: util/grub-install.c:238 -msgid "More than one install device?" -msgstr "" - -#: util/grub-install.c:251 -#, c-format -msgid "" -"install GRUB images under the directory DIR/%s instead of the %s directory" -msgstr "" - -#: util/grub-install.c:256 util/grub-probe.c:734 -msgid "TARGET" -msgstr "" - -#. TRANSLATORS: "TARGET" as in "target platform". -#: util/grub-install.c:258 -#, c-format -msgid "install GRUB for TARGET platform [default=%s]; available targets: %s" -msgstr "" - -#. TRANSLATORS: "may break" doesn't just mean that option wouldn't have any -#. effect but that it will make the resulting install unbootable from HDD. -#. TRANSLATORS: The potential breakage isn't limited to floppies but it's -#. likely to make the install unbootable from HDD. -#: util/grub-install.c:267 util/grub-setup.c:94 -msgid "" -"make the drive also bootable as floppy (default for fdX devices). May break " -"on some BIOSes." -msgstr "" - -#: util/grub-install.c:270 -msgid "delete device map if it already exists" -msgstr "" - -#: util/grub-install.c:272 util/grub-setup.c:87 -msgid "install even if problems are detected" -msgstr "" - -#: util/grub-install.c:274 -msgid "use identifier file even if UUID is available" -msgstr "" - -#: util/grub-install.c:276 -msgid "" -"disk module to use (biosdisk or native). This option is only available on " -"BIOS target." -msgstr "" - -#: util/grub-install.c:279 -msgid "" -"don't update the `boot-device'/`Boot*' NVRAM variables. This option is only " -"available on EFI and IEEE1275 targets." -msgstr "" - -#: util/grub-install.c:282 util/grub-setup.c:89 -msgid "do not probe for filesystems in DEVICE" -msgstr "" - -#: util/grub-install.c:284 -msgid "do not install bootsector" -msgstr "" - -#: util/grub-install.c:286 util/grub-setup.c:96 -msgid "" -"Do not apply any reed-solomon codes when embedding core.img. This option is " -"only available on x86 BIOS targets." -msgstr "" - -#: util/grub-install.c:293 -msgid "" -"the installation device is removable. This option is only available on EFI." -msgstr "" - -#: util/grub-install.c:295 -msgid "ID" -msgstr "ID" - -#: util/grub-install.c:296 -msgid "the ID of bootloader. This option is only available on EFI and Macs." -msgstr "" - -#: util/grub-install.c:298 -msgid "use DIR as the EFI System Partition root." -msgstr "" - -#: util/grub-install.c:300 -msgid "use DIR for PPC MAC install." -msgstr "" - -#: util/grub-install.c:301 util/grub-mkrescue.c:106 -msgid "use FILE as font for label" -msgstr "" - -#: util/grub-install.c:302 util/grub-mkrescue.c:107 -msgid "use COLOR for label" -msgstr "" - -#: util/grub-install.c:303 util/grub-mkrescue.c:108 -msgid "use COLOR for label background" -msgstr "" - -#: util/grub-install.c:304 util/grub-mkrescue.c:110 -msgid "use STRING as product version" -msgstr "" - -#: util/grub-install.c:361 -#, fuzzy -msgid "[OPTION] [INSTALL_DEVICE]" -msgstr "[PILIHAN] BERKAS_ATAU_PERANGKAT" - -#: util/grub-install.c:362 -msgid "Install GRUB on your drive." -msgstr "" - -#: util/grub-install.c:363 -#, c-format -msgid "" -"INSTALL_DEVICE must be system device filename.\n" -"%s copies GRUB images into %s. On some platforms, it may also install GRUB " -"into the boot sector." -msgstr "" - -#: util/grub-install.c:672 -#, c-format -msgid "the drive %s is defined multiple times in the device map %s" -msgstr "" - -#: util/grub-install.c:878 -msgid "Unable to determine your platform. Use --target." -msgstr "" - -#: util/grub-install.c:891 -#, c-format -msgid "Installing for %s platform.\n" -msgstr "" - -#: util/grub-install.c:939 -#, fuzzy -msgid "install device isn't specified" -msgstr "Perangkat tidak dispesifikasikan.\n" - -#: util/grub-install.c:1057 -msgid "cannot find EFI directory" -msgstr "" - -#: util/grub-install.c:1060 util/grub-install.c:1209 util/grub-install.c:1254 -#: util/grub-macbless.c:76 util/grub-probe.c:329 util/setup.c:316 -#, c-format -msgid "cannot find a device for %s (is /dev mounted?)" -msgstr "" - -#: util/grub-install.c:1069 util/grub-install.c:1217 util/grub-install.c:1270 -#: util/grub-install.c:1365 util/grub-macbless.c:80 util/grub-probe.c:372 -#, c-format -msgid "cannot find a GRUB drive for %s. Check your device.map" -msgstr "" - -#: util/grub-install.c:1087 -#, c-format -msgid "%s doesn't look like an EFI partition" -msgstr "" - -#: util/grub-install.c:1129 util/grub-install.c:1614 -msgid "You've found a bug" -msgstr "" - -#: util/grub-install.c:1231 -#, c-format -msgid "filesystem on %s is neither HFS nor HFS+" -msgstr "" - -#: util/grub-install.c:1299 -#, c-format -msgid "" -"attempt to install to encrypted disk without cryptodisk enabled. Set `%s' in " -"file `%s'" -msgstr "" - -#: util/grub-install.c:1410 util/grub-install.c:1772 util/grub-install.c:1872 -#, fuzzy, c-format -msgid "Can't create file: %s" -msgstr "tidak dapat membuka berkas log: %s" - -#: util/grub-install.c:1491 -msgid "no hints available for your platform. Expect reduced performance" -msgstr "" - -#. TRANSLATORS: This is a prefix in the log to indicate that usually -#. a command would be executed but due to an option was skipped. -#: util/grub-install.c:1702 -msgid "NOT RUNNING: " -msgstr "" - -#: util/grub-install.c:1806 -#, fuzzy -msgid "the chosen partition is not a PReP partition" -msgstr "partisi dos adalah %d, partisi bsd adalah %d" - -#: util/grub-install.c:1811 -msgid "failed to copy Grub to the PReP partition" -msgstr "" - -#: util/grub-install.c:1816 -#, c-format -msgid "" -"the PReP partition is not empty. If you are sure you want to use it, run dd " -"to clear it: `%s'" -msgstr "" - -#: util/grub-install.c:1888 util/grub-install.c:1932 -#, c-format -msgid "efibootmgr failed to register the boot entry: %s" -msgstr "" - -#: util/grub-install.c:1916 -#, fuzzy -msgid "EFI bootloader id isn't specified." -msgstr "Perangkat tidak dispesifikasikan.\n" - -#: util/grub-install.c:1950 -msgid "WARNING: no platform-specific install was performed" -msgstr "" - -#: util/grub-install.c:1957 -msgid "Installation finished. No error reported." -msgstr "" - -#: util/grub-macbless.c:101 -msgid "bless for x86-based macs" -msgstr "" - -#: util/grub-macbless.c:103 -msgid "bless for ppc-based macs" -msgstr "" - -#: util/grub-macbless.c:136 util/grub-probe.c:823 -#, fuzzy -msgid "No path or device is specified.\n" -msgstr "Perangkat tidak dispesifikasikan.\n" - -#: util/grub-macbless.c:157 -msgid "--ppc PATH|--x86 FILE" -msgstr "" - -#: util/grub-macbless.c:158 -msgid "Mac-style bless on HFS or HFS+" -msgstr "" - -#: util/grub-menulst2cfg.c:44 -#, c-format -msgid "Usage: %s [INFILE [OUTFILE]]\n" -msgstr "" - -#: util/grub-mkfont.c:157 -#, c-format -msgid "Freetype Error %d loading glyph 0x%x for U+0x%x%s" -msgstr "" - -#. TRANSLATORS: These qualifiers are used for cursive typography, -#. mainly Arabic. Note that the terms refer to the visual position -#. and not logical order and if used in left-to-right script then -#. leftmost is initial but with right-to-left script like Arabic -#. rightmost is the initial. -#: util/grub-mkfont.c:165 -msgid " (medial)" -msgstr "" - -#: util/grub-mkfont.c:166 -msgid " (leftmost)" -msgstr "" - -#: util/grub-mkfont.c:167 -msgid " (rightmost)" -msgstr "" - -#: util/grub-mkfont.c:481 -#, c-format -msgid "Out of range substitution (%d, %d)\n" -msgstr "" - -#. TRANSLATORS: "lookup" is taken directly from font specifications -#. which are formulated as "Under condition X replace LOOKUP with -#. SUBSTITUITION". " -#: util/grub-mkfont.c:506 -#, c-format -msgid "Out of range lookup: %d\n" -msgstr "" - -#: util/grub-mkfont.c:514 -#, c-format -msgid "Unsupported substitution type: %d\n" -msgstr "" - -#: util/grub-mkfont.c:550 -#, c-format -msgid "Unsupported substitution specification: %d\n" -msgstr "" - -#: util/grub-mkfont.c:582 -#, c-format -msgid "Unsupported coverage specification: %d\n" -msgstr "" - -#: util/grub-mkfont.c:622 -#, c-format -msgid "WARNING: unsupported font feature parameters: %x\n" -msgstr "" - -#: util/grub-mkfont.c:936 util/grub-mkrescue.c:98 util/grub-mkstandalone.c:48 -msgid "save output in FILE [required]" -msgstr "" - -#. TRANSLATORS: some font files may have multiple faces (fonts). -#. This option is used to chose among them, the first face being '0'. -#. Rarely used. -#: util/grub-mkfont.c:942 -msgid "select face index" -msgstr "" - -#: util/grub-mkfont.c:943 -msgid "FROM-TO[,FROM-TO]" -msgstr "" - -#. TRANSLATORS: It refers to the range of characters in font. -#: util/grub-mkfont.c:945 -msgid "set font range" -msgstr "" - -#. TRANSLATORS: "family name" for font is just a generic name without suffix -#. like "Bold". -#: util/grub-mkfont.c:949 -#, fuzzy -msgid "set font family name" -msgstr "Set nama berkas keluaran" - -#: util/grub-mkfont.c:950 -msgid "SIZE" -msgstr "" - -#: util/grub-mkfont.c:950 -#, fuzzy -msgid "set font size" -msgstr "Set Volume set ukuran" - -#: util/grub-mkfont.c:951 -#, fuzzy -msgid "set font descent" -msgstr "Set perangkat root." - -#: util/grub-mkfont.c:952 -msgid "set font ascent" -msgstr "" - -#: util/grub-mkfont.c:953 -msgid "convert to bold font" -msgstr "" - -#: util/grub-mkfont.c:954 -msgid "force autohint" -msgstr "" - -#: util/grub-mkfont.c:955 -msgid "disable hinting" -msgstr "" - -#. TRANSLATORS: some fonts contain bitmap rendering for -#. some sizes. This option forces rerendering even if -#. pre-rendered bitmap is available. -#. -#: util/grub-mkfont.c:961 -msgid "ignore bitmap strikes when loading" -msgstr "" - -#. TRANSLATORS: It refers to the range of characters in font. -#: util/grub-mkfont.c:1059 util/grub-mkfont.c:1075 -msgid "invalid font range" -msgstr "" - -#: util/grub-mkfont.c:1151 -#, fuzzy -msgid "[OPTIONS] FONT_FILES" -msgstr "[PILIHAN] DISK" - -#: util/grub-mkfont.c:1152 -msgid "Convert common font file formats into PF2" -msgstr "" - -#: util/grub-mkfont.c:1182 util/grub-mkrescue.c:483 -#: util/grub-mkstandalone.c:306 -#, fuzzy -msgid "output file must be specified" -msgstr "Perangkat tidak dispesifikasikan.\n" - -#: util/grub-mkfont.c:1185 -msgid "FT_Init_FreeType fails" -msgstr "" - -#: util/grub-mkfont.c:1199 -#, fuzzy, c-format -msgid "can't open file %s, index %d: error %d" -msgstr "tidak dapat membuka berkas log: %s" - -#: util/grub-mkfont.c:1229 -#, c-format -msgid "can't set %dx%d font size: Freetype error %d: %s" -msgstr "" - -#: util/grub-mkimage.c:67 -#, fuzzy -msgid "set prefix directory" -msgstr "Total bytes direktori: %d\n" - -#. TRANSLATORS: "memdisk" here isn't an identifier, it can be translated. -#. "embed" is a verb (command description). " -#: util/grub-mkimage.c:71 -msgid "" -"embed FILE as a memdisk image\n" -"Implies `-p (memdisk)/boot/grub' and overrides any prefix supplied " -"previously, but the prefix itself can be overridden by later options" -msgstr "" - -#: util/grub-mkimage.c:74 -msgid "embed FILE as a device tree (DTB)\n" -msgstr "" - -#: util/grub-mkimage.c:76 -msgid "embed FILE as an early config" -msgstr "" - -#. TRANSLATORS: NOTE is a name of segment. -#: util/grub-mkimage.c:80 -msgid "add NOTE segment for CHRP IEEE1275" -msgstr "" - -#: util/grub-mkimage.c:81 -msgid "output a generated image to FILE [default=stdout]" -msgstr "" - -#: util/grub-mkimage.c:82 -msgid "FORMAT" -msgstr "" - -#: util/grub-mkimage.c:100 util/grub-mkstandalone.c:62 -msgid "generate an image in FORMAT" -msgstr "" - -#: util/grub-mkimage.c:101 util/grub-mkstandalone.c:63 -msgid "available formats:" -msgstr "" - -#: util/grub-mkimage.c:152 util/grub-mkstandalone.c:96 -#, fuzzy, c-format -msgid "unknown target format %s\n" -msgstr "Argumen ekstra `%s' tidak diketahui.\n" - -#: util/grub-mkimage.c:242 -#, fuzzy -msgid "[OPTION]... [MODULES]" -msgstr "[PILIHAN] DISK" - -#: util/grub-mkimage.c:243 -msgid "Make a bootable image of GRUB." -msgstr "" - -#: util/grub-mkimage.c:273 util/grub-mkstandalone.c:309 -msgid "Target format not specified (use the -O option)." -msgstr "" - -#: util/grub-mkimage.c:282 -msgid "Prefix not specified (use the -p option)." -msgstr "" - -#: util/grub-mkimage.c:318 util/setup.c:793 -#, fuzzy, c-format -msgid "cannot close `%s': %s" -msgstr "tidak dapat membuka `%s'" - -#: util/grub-mkimagexx.c:2191 -#, c-format -msgid "" -"`%s' is miscompiled: its start address is 0x%llx instead of 0x%llx: ld.gold " -"bug?" -msgstr "" - -#: util/grub-mklayout.c:53 -msgid "set input filename. Default is STDIN" -msgstr "" - -#. TRANSLATORS: scan identifier is keyboard key symbolic name. -#: util/grub-mklayout.c:307 -#, c-format -msgid "Unknown keyboard scan identifier %s\n" -msgstr "" - -#. TRANSLATORS: scan code is keyboard key numeric identifier. -#: util/grub-mklayout.c:390 util/grub-mklayout.c:418 -#, c-format -msgid "Unknown keyboard scan code 0x%02x\n" -msgstr "" - -#. TRANSLATORS: this error is triggered when input doesn't contain any -#. key descriptions. -#: util/grub-mklayout.c:438 -msgid "ERROR: no valid keyboard layout found. Check the input.\n" -msgstr "" - -#. TRANSLATORS: "one" is a shortcut for "keyboard layout". -#: util/grub-mklayout.c:478 -msgid "Generate GRUB keyboard layout from Linux console one." -msgstr "" - -#: util/grub-mknetdir.c:47 -msgid "root directory of TFTP server" -msgstr "" - -#: util/grub-mknetdir.c:49 -msgid "relative subdirectory on network server" -msgstr "" - -#: util/grub-mknetdir.c:88 -msgid "" -"Prepares GRUB network boot images at net_directory/subdir assuming " -"net_directory being TFTP root." -msgstr "" - -#: util/grub-mknetdir.c:146 -#, fuzzy, c-format -msgid "unsupported platform %s" -msgstr "Set kecepatan port serial." - -#. TRANSLATORS: First %s is replaced by platform name. Second one by filename. -#: util/grub-mknetdir.c:165 -#, c-format -msgid "" -"Netboot directory for %s created. Configure your DHCP server to point to %s\n" -msgstr "" - -#: util/grub-mkpasswd-pbkdf2.c:46 -msgid "Number of PBKDF2 iterations" -msgstr "" - -#: util/grub-mkpasswd-pbkdf2.c:47 -msgid "Length of generated hash" -msgstr "" - -#: util/grub-mkpasswd-pbkdf2.c:48 -msgid "Length of salt" -msgstr "" - -#: util/grub-mkpasswd-pbkdf2.c:87 -msgid "Generate PBKDF2 password hash." -msgstr "" - -#: util/grub-mkpasswd-pbkdf2.c:144 util/grub-mkpasswd-pbkdf2.c:151 -msgid "failure to read password" -msgstr "" - -#: util/grub-mkpasswd-pbkdf2.c:146 -#, fuzzy -msgid "Reenter password: " -msgstr "Masukan kata sandi : " - -#: util/grub-mkpasswd-pbkdf2.c:160 -msgid "passwords don't match" -msgstr "" - -#: util/grub-mkpasswd-pbkdf2.c:169 -msgid "couldn't retrieve random data for salt" -msgstr "" - -#: util/grub-mkpasswd-pbkdf2.c:184 -#, c-format -msgid "cryptographic error number %d" -msgstr "" - -#: util/grub-mkpasswd-pbkdf2.c:203 -#, c-format -msgid "PBKDF2 hash of your password is %s\n" -msgstr "" - -#: util/grub-mkrelpath.c:67 -#, fuzzy -msgid "No path is specified.\n" -msgstr "Perangkat tidak dispesifikasikan.\n" - -#: util/grub-mkrelpath.c:78 -msgid "PATH" -msgstr "" - -#: util/grub-mkrelpath.c:79 -msgid "Transform a system filename into GRUB one." -msgstr "" - -#: util/grub-mkrescue.c:100 -msgid "save ROM images in DIR [optional]" -msgstr "" - -#. TRANSLATORS: xorriso is a program for creating ISOs and burning CDs. -#: util/grub-mkrescue.c:103 -msgid "use FILE as xorriso [optional]" -msgstr "" - -#: util/grub-mkrescue.c:109 -msgid "use STRING as product name" -msgstr "" - -#: util/grub-mkrescue.c:111 -msgid "" -"enable sparc boot. Disables HFS+, APM, ARCS and boot as disk image for i386-" -"pc" -msgstr "" - -#: util/grub-mkrescue.c:112 -msgid "" -"enable ARCS (big-endian mips machines, mostly SGI) boot. Disables HFS+, APM, " -"sparc64 and boot as disk image for i386-pc" -msgstr "" - -#. TRANSLATORS: it generates one single image which is bootable through any method. -#: util/grub-mkrescue.c:125 -msgid "Make GRUB CD-ROM, disk, pendrive and floppy bootable image." -msgstr "" - -#: util/grub-mkrescue.c:130 -#, c-format -msgid "" -"Generates a bootable CD/USB/floppy image. Arguments other than options to " -"this program are passed to xorriso, and indicate source files, source " -"directories, or any of the mkisofs options listed by the output of `%s'." -msgstr "" - -#: util/grub-mkrescue.c:134 -msgid "Option -- switches to native xorriso command mode." -msgstr "" - -#: util/grub-mkrescue.c:135 -msgid "Mail xorriso support requests to ." -msgstr "" - -#: util/grub-mkrescue.c:221 util/grub-mkstandalone.c:114 -#, fuzzy -msgid "[OPTION] SOURCE..." -msgstr "[PILIHAN] DISK" - -#: util/grub-mkrescue.c:257 util/grub-mkrescue.c:300 util/grub-mkrescue.c:588 -#, c-format -msgid "enabling %s support ..." -msgstr "" - -#: util/grub-mkrescue.c:486 -#, fuzzy -msgid "xorriso not found" -msgstr "berkas `%s' tidak ditemukan" - -#: util/grub-mkrescue.c:623 -msgid "" -"Your xorriso doesn't support `--grub2-boot-info'. Some features are " -"disabled. Please use xorriso 1.2.9 or later." -msgstr "" - -#: util/grub-mkrescue.c:650 -msgid "" -"Your xorriso doesn't support `--grub2-boot-info'. Your core image is too " -"big. Boot as disk is disabled. Please use xorriso 1.2.9 or later." -msgstr "" - -#: util/grub-mkstandalone.c:115 -msgid "" -"Generate a standalone image (containing all modules) in the selected format" -msgstr "" - -#: util/grub-mkstandalone.c:115 -msgid "Graft point syntax (E.g. /boot/grub/grub.cfg=./grub.cfg) is accepted" -msgstr "" - -#: util/grub-mount.c:552 -msgid "IMAGE1 [IMAGE2 ...] MOUNTPOINT" -msgstr "" - -#: util/grub-mount.c:575 -msgid "need an image and mountpoint" -msgstr "" - -#: util/grub-probe.c:731 -msgid "given argument is a system device, not a path" -msgstr "" - -#: util/grub-probe.c:736 -msgid "separate items in output using ASCII NUL characters" -msgstr "" - -#: util/grub-probe.c:754 -#, c-format -msgid "[default=%s]" -msgstr "" - -#: util/grub-probe.c:756 -msgid "print TARGET" -msgstr "" - -#: util/grub-probe.c:757 -msgid "available targets:" -msgstr "" - -#: util/grub-probe.c:839 -#, fuzzy -msgid "[OPTION]... [PATH|DEVICE]" -msgstr "[PILIHAN] BERKAS_ATAU_PERANGKAT" - -#: util/grub-probe.c:840 -msgid "" -"Probe device information for a given path (or device, if the -d option is " -"given)." -msgstr "" - -#: util/grub-render-label.c:60 -#, fuzzy -msgid "read text from FILE." -msgstr "Baca byte dari ALAMAT." - -#: util/grub-render-label.c:62 -msgid "use COLOR for text" -msgstr "" - -#: util/grub-render-label.c:64 -msgid "use COLOR for background" -msgstr "" - -#. TRANSLATORS: The result is always stored to file and -#. never shown directly, so don't use "show" as synonym for render. Use "create" if -#. "render" doesn't translate directly. -#: util/grub-render-label.c:69 -msgid "set the label to render" -msgstr "" - -#: util/grub-render-label.c:73 -msgid "use FILE as font (PF2)." -msgstr "" - -#. TRANSLATORS: This file takes a text and creates a graphical representation of it, -#. putting the result into .disk_label file. The result is always stored to file and -#. never shown directly, so don't use "show" as synonym for render. Use "create" if -#. "render" doesn't translate directly. -#: util/grub-render-label.c:136 -msgid "Render Apple .disk_label." -msgstr "" - -#: util/grub-render-label.c:158 util/grub-syslinux2cfg.c:169 -#, fuzzy -msgid "Missing arguments\n" -msgstr "Argumen yang memungkinkan adalah:" - -#: util/grub-script-check.c:87 -msgid "[PATH]" -msgstr "" - -#: util/grub-script-check.c:88 -msgid "Checks GRUB script configuration file for syntax errors." -msgstr "" - -#: util/grub-script-check.c:207 -#, c-format -msgid "Syntax error at line %u\n" -msgstr "" - -#: util/grub-script-check.c:212 -#, c-format -msgid "Script `%s' contains no commands and will do nothing\n" -msgstr "" - -#: util/grub-setup.c:79 -#, c-format -msgid "use FILE as the boot image [default=%s]" -msgstr "" - -#: util/grub-setup.c:81 -#, c-format -msgid "use FILE as the core image [default=%s]" -msgstr "" - -#: util/grub-setup.c:210 -msgid "No device is specified.\n" -msgstr "Perangkat tidak dispesifikasikan.\n" - -#: util/grub-setup.c:224 -msgid "" -"Set up images to boot from DEVICE.\n" -"\n" -"You should not normally run this program directly. Use grub-install instead." -msgstr "" - -#: util/grub-setup.c:228 -msgid "DEVICE must be an OS device (e.g. /dev/sda)." -msgstr "" - -#: util/grub-setup.c:297 -#, c-format -msgid "Invalid device `%s'.\n" -msgstr "Perangkat `%s' tidak valid.\n" - -#: util/grub-syslinux2cfg.c:64 -msgid "root directory as it will be seen on runtime [default=/]." -msgstr "" - -#: util/grub-syslinux2cfg.c:69 -msgid "" -"current directory of syslinux as it will be seen on runtime [default is " -"parent directory of input file]." -msgstr "" - -#: util/grub-syslinux2cfg.c:74 -msgid "write output to FILE [default=stdout]." -msgstr "" - -#: util/grub-syslinux2cfg.c:148 -msgid "Transform syslinux config into GRUB one." -msgstr "" - -#: util/mkimage.c:688 util/mkimage.c:717 util/mkimage.c:734 -msgid "cannot compress the kernel image" -msgstr "tidak dapat mengkompress image kernel" - -#: util/mkimage.c:766 util/mkimage.c:1077 -#, fuzzy, c-format -msgid "unknown compression %d" -msgstr "Sistem berkas tidak diketahui" - -#: util/mkimage.c:1088 -#, fuzzy -msgid "Decompressor is too big" -msgstr "image core terlalu besar" - -#: util/mkimage.c:1133 -#, fuzzy, c-format -msgid "core image is too big (0x%x > 0x%x)" -msgstr "Image core terlalu besar (%p >%p)" - -#: util/mkimage.c:1140 -#, fuzzy, c-format -msgid "kernel image is too big (0x%x > 0x%x)" -msgstr "Image core terlalu besar (%p >%p)" - -#: util/mkimage.c:1220 util/mkimage.c:1501 -#, c-format -msgid "diskboot.img size must be %u bytes" -msgstr "besar diskboot.img seharusnya %u bytes" - -#: util/mkimage.c:1571 -msgid "" -"fwstart.img doesn't match the known good version. proceed at your own risk" -msgstr "" - -#: util/mkimage.c:1575 util/mkimage.c:1601 -#, fuzzy -msgid "firmware image is too big" -msgstr "image core terlalu besar" - -#: util/resolve.c:93 -#, fuzzy, c-format -msgid "invalid line format: %s" -msgstr "Node tidak valid -%s\n" - -#: util/setup.c:167 -msgid "the first sector of the core file is not sector-aligned" -msgstr "sektor pertama dari berkas core tidak selaras secara sektor" - -#: util/setup.c:177 -msgid "non-sector-aligned data is found in the core file" -msgstr "sektor-tidak-selaras data ditemukan dalam berkas core" - -#: util/setup.c:199 -msgid "the sectors of the core file are too fragmented" -msgstr "sektor dari berkas core terlalu terpotong potong" - -#: util/setup.c:280 -#, c-format -msgid "the size of `%s' is not %u" -msgstr "ukuran dari `%s' bukan %u" - -#: util/setup.c:290 -#, c-format -msgid "the size of `%s' is too small" -msgstr "ukuran dari `%s' terlalu kecil" - -#: util/setup.c:428 -#, fuzzy -msgid "" -"Attempting to install GRUB to a disk with multiple partition labels or both " -"partition label and filesystem. This is not supported yet." -msgstr "" -"Mencoba memasang GRUB ke sebuah disk yang tidak berpartisi. Ini mungkin " -"bukan ide baik." - -#: util/setup.c:441 -#, c-format -msgid "unable to identify a filesystem in %s; safety check can't be performed" -msgstr "" -"tidak dapat mengidentifikasikan sebuah sistem berkas dalam %s; pemeriksaan " -"keamanan tidak dapat dilakukan" - -#. TRANSLATORS: Filesystem may reserve the space just GRUB isn't sure about it. -#: util/setup.c:445 -#, c-format -msgid "" -"%s appears to contain a %s filesystem which isn't known to reserve space for " -"DOS-style boot. Installing GRUB there could result in FILESYSTEM " -"DESTRUCTION if valuable data is overwritten by grub-setup (--skip-fs-probe " -"disables this check, use at your own risk)" -msgstr "" -"%s sepertinya berisi sebuah sistem berkas %s yang tidak diketahui untuk " -"mereserve ruang untuk boot gaya-DOS. Memasang GRUB disana dapat berakibat " -"KERUSAKAN SISTEM BERKAS jika data berharga dipaksa tulis oleh grub-setup (--" -"skip-fs-probe menonaktifkan pemeriksaan ini, gunakan sesuai resiko anda)" - -#. TRANSLATORS: Partition map may reserve the space just GRUB isn't sure about it. -#: util/setup.c:458 -#, fuzzy, c-format -msgid "" -"%s appears to contain a %s partition map which isn't known to reserve space " -"for DOS-style boot. Installing GRUB there could result in FILESYSTEM " -"DESTRUCTION if valuable data is overwritten by grub-setup (--skip-fs-probe " -"disables this check, use at your own risk)" -msgstr "" -"%s sepertinya berisi sebuah sistem berkas %s yang tidak diketahui untuk " -"mereserve ruang untuk boot gaya-DOS. Memasang GRUB disana dapat berakibat " -"KERUSAKAN SISTEM BERKAS jika data berharga dipaksa tulis oleh grub-setup (--" -"skip-fs-probe menonaktifkan pemeriksaan ini, gunakan sesuai resiko anda)" - -#: util/setup.c:465 -#, fuzzy, c-format -msgid "" -"%s appears to contain a %s partition map and LDM which isn't known to be a " -"safe combination. Installing GRUB there could result in FILESYSTEM " -"DESTRUCTION if valuable data is overwritten by grub-setup (--skip-fs-probe " -"disables this check, use at your own risk)" -msgstr "" -"%s sepertinya berisi sebuah sistem berkas %s yang tidak diketahui untuk " -"mereserve ruang untuk boot gaya-DOS. Memasang GRUB disana dapat berakibat " -"KERUSAKAN SISTEM BERKAS jika data berharga dipaksa tulis oleh grub-setup (--" -"skip-fs-probe menonaktifkan pemeriksaan ini, gunakan sesuai resiko anda)" - -#: util/setup.c:478 -#, fuzzy -msgid "" -"Attempting to install GRUB to a partitionless disk or to a partition. This " -"is a BAD idea." -msgstr "" -"Mencoba memasang GRUB ke sebuah disk yang tidak berpartisi. Ini mungkin " -"bukan ide baik." - -#: util/setup.c:483 -#, fuzzy -msgid "" -"Attempting to install GRUB to a disk with multiple partition labels. This " -"is not supported yet." -msgstr "" -"Mencoba memasang GRUB ke sebuah disk yang tidak berpartisi. Ini mungkin " -"bukan ide baik." - -#: util/setup.c:489 -#, c-format -msgid "Partition style `%s' doesn't support embedding" -msgstr "" - -#: util/setup.c:496 -#, c-format -msgid "File system `%s' doesn't support embedding" -msgstr "" - -#: util/setup.c:537 -msgid "Your embedding area is unusually small. core.img won't fit in it." -msgstr "Penempatan anda sangat kecil. core.img tidak akan masuk disana." - -#: util/setup.c:559 util/setup.c:725 util/setup.c:844 -msgid "no terminator in the core image" -msgstr "tidak ada pengakhir dalam image core" - -#: util/setup.c:622 -msgid "core.img version mismatch" -msgstr "" - -#: util/setup.c:675 -#, fuzzy -msgid "" -"embedding is not possible, but this is required for RAID and LVM install" -msgstr "" -"penempatan tidak memungkinkan, tetapi ini dibutuhkan ketika perangkat root " -"berada di sebuah array RAID atau volume LVM." - -#: util/setup.c:682 -#, fuzzy, c-format -msgid "can't determine filesystem on %s" -msgstr "Tentukan tipe sistem berkas." - -#: util/setup.c:685 -#, c-format -msgid "filesystem `%s' doesn't support blocklists" -msgstr "" - -#. TRANSLATORS: cross-disk refers to /boot being on one disk -#. but MBR on another. -#: util/setup.c:694 -#, fuzzy -msgid "embedding is not possible, but this is required for cross-disk install" -msgstr "" -"penempatan tidak memungkinkan, tetapi ini dibutuhkan ketika perangkat root " -"berada di sebuah array RAID atau volume LVM." - -#: util/setup.c:700 -#, fuzzy -msgid "" -"Embedding is not possible. GRUB can only be installed in this setup by " -"using blocklists. However, blocklists are UNRELIABLE and their use is " -"discouraged." -msgstr "" -"Penempatan tidak memungkinkan. GRUB hanya dapat dipasang di konfigurasi ini " -"dengan menggunakan blocklists. Akan tetapi, blocklists TIDAK DAPAT DIJAGAKAN " -"dan penggunaan ini tidak disarankan." - -#. TRANSLATORS: Here GRUB refuses to continue with blocklist install. -#: util/setup.c:705 -msgid "will not proceed with blocklists" -msgstr "" - -#: util/setup.c:817 util/setup.c:837 -msgid "blocklists are invalid" -msgstr "" - -#: util/setup.c:847 -msgid "blocklists are incomplete" -msgstr "" - -#, fuzzy -#~| msgid "Display this help and exit." -#~ msgid "print this message and exit" -#~ msgstr "Tampilkan bantuan ini dan keluar." - -#, fuzzy -#~| msgid "Print version information and exit" -#~ msgid "print the version information and exit" -#~ msgstr "Tampilkan informasi versi dan keluar" - -#, fuzzy -#~| msgid "Load another config file." -#~ msgid "Generate a grub config file" -#~ msgstr "Muat berkas konfigurasi lain." - -#, fuzzy -#~| msgid "Warning: getrlimit" -#~ msgid "Warning:" -#~ msgstr "Peringatan: getrlimit" - -#, fuzzy -#~| msgid "%s, with Linux %s (recovery mode)" -#~ msgid "%s, with Hurd %s (recovery mode)" -#~ msgstr "%s, dengan Linux %s (mode penyembuhan)" - -#, fuzzy -#~| msgid "%s, with Linux %s" -#~ msgid "%s, with Hurd %s" -#~ msgstr "%s, dengan Linux %s" - -#, fuzzy -#~| msgid "Loading Linux %s ..." -#~ msgid "Loading GNU Mach ..." -#~ msgstr "Memuat Linux %s ..." - -#, fuzzy -#~| msgid "Loading initial ramdisk ..." -#~ msgid "Loading the Hurd ..." -#~ msgstr "Memuat inisial ramdisk ..." - -#, fuzzy -#~| msgid "Loading kernel of FreeBSD %s ..." -#~ msgid "Loading kernel of Illumos ..." -#~ msgstr "Memuat kernel dari FreeBSD %s ..." - -#, fuzzy -#~| msgid "%s, with Linux %s (recovery mode)" -#~ msgid "%s, with kFreeBSD %s (recovery mode)" -#~ msgstr "%s, dengan Linux %s (mode penyembuhan)" - -#~ msgid "%s, with kFreeBSD %s" -#~ msgstr "%s, dengan kFreeBSD %s" - -#~ msgid "Loading kernel of FreeBSD %s ..." -#~ msgstr "Memuat kernel dari FreeBSD %s ..." - -#, fuzzy -#~| msgid "Load kernel of FreeBSD." -#~ msgid "Found kernel of FreeBSD: %s\\n" -#~ msgstr "Muat kernel dari FreeBSD." - -#~ msgid "%s, with Linux %s (recovery mode)" -#~ msgstr "%s, dengan Linux %s (mode penyembuhan)" - -#~ msgid "%s, with Linux %s" -#~ msgstr "%s, dengan Linux %s" - -#~ msgid "Loading Linux %s ..." -#~ msgstr "Memuat Linux %s ..." - -#~ msgid "Loading initial ramdisk ..." -#~ msgstr "Memuat inisial ramdisk ..." - -#, fuzzy -#~| msgid "%s, with Linux %s (recovery mode)" -#~ msgid "%s, with kernel %s (via %s, recovery mode)" -#~ msgstr "%s, dengan Linux %s (mode penyembuhan)" - -#, fuzzy -#~| msgid "%s, with kFreeBSD %s" -#~ msgid "%s, with kernel %s (via %s)" -#~ msgstr "%s, dengan kFreeBSD %s" - -#, fuzzy -#~| msgid "Using %s for %s%s%s (%s)\n" -#~ msgid "Found %s on %s (%s)\\n" -#~ msgstr "Menggunakan %s untuk %s%s%s (%s)\n" - -#, fuzzy -#~| msgid "%s, with Linux %s (recovery mode)" -#~ msgid "%s, with Xen %s and Linux %s (recovery mode)" -#~ msgstr "%s, dengan Linux %s (mode penyembuhan)" - -#, fuzzy -#~| msgid "%s, with Linux %s" -#~ msgid "%s, with Xen %s and Linux %s" -#~ msgstr "%s, dengan Linux %s" - -#, fuzzy -#~| msgid "Loading Linux %s ..." -#~ msgid "Loading Xen %s ..." -#~ msgstr "Memuat Linux %s ..." - -#~ msgid "Fake BIOS." -#~ msgstr "Palsukan BIOS." - -#~ msgid "[class [handler]]" -#~ msgstr "[kelas [pengendali]]" - -#~ msgid "List compatible VESA BIOS extension video modes." -#~ msgstr "Tampilkan ekstensi mode video yang kompatibel dengan VESA BIOS." - -#~ msgid "Test VESA BIOS Extension 2.0+ support." -#~ msgstr "Coba dukungan ekstensi VESA BIOS 2.0+." - -#~ msgid "[--shift] [--ctrl] [--alt]" -#~ msgstr "[--shift] [--ctrl] [--alt]" - -#~ msgid "Read word from ADDR." -#~ msgstr "Baca word dari ALAMAT." - -#~ msgid "Read dword from ADDR." -#~ msgstr "Baca dword dari ALAMAT." - -#~ msgid "Write word VALUE to ADDR." -#~ msgstr "Tulis NILAI word ke ALAMAT." - -#~ msgid "Write dword VALUE to ADDR." -#~ msgstr "Tulis NILAI dword ke ALAMAT." - -#~ msgid "[DEVICE]" -#~ msgstr "[PERANGKAT]" - -#~ msgid "Set the root device." -#~ msgstr "Set perangkat root." - -#~ msgid "Simulate a hard drive with partitions." -#~ msgstr "Simulasikan sebuah hard drive dengan partisi." - -#~ msgid "Load XNU hibernate image." -#~ msgstr "Muat berkas hibernate XNU." - -#~ msgid "Partition table" -#~ msgstr "Tabel partisi" - -#~ msgid "the core image is too small" -#~ msgstr "image core terlalu kecil" - -#~ msgid "prefix is too long" -#~ msgstr "awalan terlalu panjang" - -#~ msgid "" -#~ "Usage: %s [OPTION]... [MODULES]\n" -#~ "\n" -#~ "Make a bootable image of GRUB.\n" -#~ "\n" -#~ " -d, --directory=DIR use images and modules under DIR [default=%s]\n" -#~ " -p, --prefix=DIR set grub_prefix directory [default=%s]\n" -#~ " -m, --memdisk=FILE embed FILE as a memdisk image\n" -#~ " -f, --font=FILE embed FILE as a boot font\n" -#~ " -c, --config=FILE embed FILE as boot config\n" -#~ " -o, --output=FILE output a generated image to FILE " -#~ "[default=stdout]\n" -#~ " -O, --format=FORMAT generate an image in format [default=" -#~ msgstr "" -#~ "Penggunaan: %s [PILIHAN]... [MODUL]\n" -#~ "\n" -#~ "Buat sebuah image GRUB yang dapat diboot.\n" -#~ "\n" -#~ " -d, --directory=DIR gunakan image dan modul dibawah DIR [baku=%s]\n" -#~ " -p, --prefix=DIR set direktori grub_prefix [baku=%s]\n" -#~ " -m, --memdisk=BERKAS tempatkan BERKAS sebagai sebuah image memdisk\n" -#~ " -f, --font=BERKAS tempatkan BERKAS sebagai font boot\n" -#~ " -c, --config=BERKAS tempatkan BERKAS sebagai konfigurasi boot\n" -#~ " -o, --output=BERKAS keluarkan sebuah image yang dihasilkan ke " -#~ "BERKAS [baku=stdout]\n" -#~ " -O, --format=FORMAT hasilkan sebuah image dalam format [baku=" - -#~ msgid "cannot open %s" -#~ msgstr "tidak dapat membuka %s" - -#~ msgid "" -#~ "Attempting to install GRUB to a partition instead of the MBR. This is a " -#~ "BAD idea." -#~ msgstr "" -#~ "Mencoba memasang GRUB ke sebuah partisi daripada MBR. Ini mungkin bukan " -#~ "ide baik." - -#~ msgid "No DOS-style partitions found" -#~ msgstr "Tidak ditemukan gaya partisi DOS" - -#~ msgid "if you really want blocklists, use --force" -#~ msgstr "jika anda benar benar menginginkan blocklists, gunakan --force." - -#~ msgid "failed to read the first sector of the core image" -#~ msgstr "gagal untuk membaca sektor pertama dari core image" - -#~ msgid "" -#~ "Usage: %s [OPTION]... DEVICE\n" -#~ "\n" -#~ "Set up images to boot from DEVICE.\n" -#~ "DEVICE must be a GRUB device (e.g. `(hd0,1)').\n" -#~ "\n" -#~ " -b, --boot-image=FILE use FILE as the boot image [default=%s]\n" -#~ " -c, --core-image=FILE use FILE as the core image [default=%s]\n" -#~ " -d, --directory=DIR use GRUB files in the directory DIR [default=" -#~ "%s]\n" -#~ " -m, --device-map=FILE use FILE as the device map [default=%s]\n" -#~ " -r, --root-device=DEV use DEV as the root device [default=guessed]\n" -#~ " -f, --force install even if problems are detected\n" -#~ " -s, --skip-fs-probe do not probe for filesystems in DEVICE\n" -#~ " -h, --help display this message and exit\n" -#~ " -V, --version print version information and exit\n" -#~ " -v, --verbose print verbose messages\n" -#~ "\n" -#~ "Report bugs to <%s>.\n" -#~ msgstr "" -#~ "Penggunaan: %s [PILIHAN]... PERANGKAT\n" -#~ "\n" -#~ "Konfigurasi image untuk boot dari PERANGKAT.\n" -#~ "PERANGKAT harus berupa sebuah perangkat GRUB (e.g. ``(hd0,1)'').\n" -#~ "\n" -#~ " -b, --boot-image=BERKAS gunakan BERKAS sebagai image boot [baku=%s]\n" -#~ " -c, --core-image=BERKAS gunakan BERKAS sebagai image core [baku=%s]\n" -#~ " -d, --directory=DIR gunakan berkas GRUB dalam direktori DIR [baku=" -#~ "%s]\n" -#~ " -m, --device-map=BERKAS gunakan BERKAS sebagai peta perangkat [baku=" -#~ "%s]\n" -#~ " -r, --root-device=DEV gunakan DEV sebagai perangkat root " -#~ "[baku=ditebak]\n" -#~ " -f, --force pasang walaupun masalah terdeteksi\n" -#~ " -s, --skip-fs-probe jangan periksa untuk sistem berkas dalam " -#~ "PERANGKAT\n" -#~ " -h, --help tampilkan pesan bantuan ini dan keluar\n" -#~ " -V, --version tampilkan informasi versi dan keluar\n" -#~ " -v, --verbose tampilkan informasi secara detail\n" -#~ "\n" -#~ "Laporkan bugs ke <%s>.\n" - -#~ msgid "cannot guess the root device. Specify the option `--root-device'" -#~ msgstr "" -#~ "tidak dapat menebak perangkat root. Spesifikasikan pilihan ``--root-" -#~ "device''." - -#~ msgid "A boot catalog exists and appears corrupted.\n" -#~ msgstr "Sebuah katalog boot ada dan mungkin terkorupsi.\n" - -#~ msgid "Please check the following file: %s.\n" -#~ msgstr "Mohon periksa berkas berikut: %s.\n" - -#~ msgid "This file must be removed before a bootable CD can be done.\n" -#~ msgstr "" -#~ "Berkas ini mungkin telah terhapus sebelum sebuah CD bootable dapat " -#~ "dilakukan.\n" - -#~ msgid "Error creating boot catalog (%s)" -#~ msgstr "Error membuat katalog boot (%s)" - -#~ msgid "Error writing to boot catalog (%s)" -#~ msgstr "Error menulis katalog boot (%s)" - -#~ msgid "Boot catalog cannot be found!\n" -#~ msgstr "Katalog boot tidak dapat ditemukan!\n" - -#~ msgid "Boot image cannot be found!\n" -#~ msgstr "Image boot tidak dapat ditemukan!\n" - -#~ msgid "" -#~ "\n" -#~ "Size of boot image is %d sectors" -#~ msgstr "" -#~ "\n" -#~ "Ukuran dari boot image adalah %d sektor" - -#~ msgid "No emulation\n" -#~ msgstr "Tidak ada emulasi\n" - -#~ msgid "Emulating a 1.44 meg floppy\n" -#~ msgstr "Mengemulasikan sebuah 1.44 meg floppy\n" - -#~ msgid "Emulating a 2.88 meg floppy\n" -#~ msgstr "Mengemulasikan sebuah 2.88 meg floppy\n" - -#~ msgid "Emulating a 1.2 meg floppy\n" -#~ msgstr "Mengemulasikan sebuah 1.2 meg floppy\n" - -#~ msgid "" -#~ "\n" -#~ "Error - boot image is not the an allowable size.\n" -#~ msgstr "" -#~ "\n" -#~ "Error - image boot tidak berukuran yang diperbolehkan.\n" - -#~ msgid "Error opening boot catalog for update" -#~ msgstr "Error membuka katalog boot untuk diperbarui" - -#~ msgid "Error writing to boot catalog" -#~ msgstr "Error menulis ke katalog boot" - -#~ msgid "Error opening boot image file '%s' for update" -#~ msgstr "Error membuka berkas boot image '%s' untuk diperbarui" - -#~ msgid "Odd alignment at non-end-of-file in boot image '%s'" -#~ msgstr "Penyesuaian janggal di akhir-dari-berkas dalam image boot '%s'" - -#~ msgid "Boot image file '%s' changed unexpectedly" -#~ msgstr "Berkas image boot '%s' berubah secara tidak terduga" - -#~ msgid "Error writing to boot image (%s)" -#~ msgstr "Error menulis ke boot image (%s)" - -#~ msgid "Unable to generate sane path tables - too many directories (%d)\n" -#~ msgstr "" -#~ "Tidak dapat menghasilkan tabel jalur yang masuk akal - terlalu banyak " -#~ "direktori (%d)\n" - -#~ msgid "Entry %d not in path tables\n" -#~ msgstr "Masukan %d tidak dalam tabel jalur\n" - -#~ msgid "Fatal goof - directory has amnesia\n" -#~ msgstr "Fatal goof - direktori memiliki amnesia\n" - -#~ msgid "Joliet path table lengths do not match %d %d\n" -#~ msgstr "Panjang tabel jalur joliet tidak cocok %d %d\n" - -#~ msgid "Unable to locate relocated directory\n" -#~ msgstr "Tidak dapat menempatkan direktori yang ditempatkan\n" - -#~ msgid "Fatal goof - unable to find directory location\n" -#~ msgstr "Fatal goof - tidak dapat menemukan lokasi direktori\n" - -#~ msgid "Unexpected joliet directory length %d %d %s\n" -#~ msgstr "Panjang direktori joliet tidak terduga %d %d %s\n" - -#~ msgid "Process all files (don't skip backup files)" -#~ msgstr "Proses seluruh berkas (jangan lewatkan berkas cadangan)" - -#~ msgid "Set Application ID" -#~ msgstr "Set ID Aplikasi" - -#~ msgid "Set Bibliographic filename" -#~ msgstr "Set nama berkas bibliographic" - -#~ msgid "Set Copyright filename" -#~ msgstr "Set nama berkas Hak Cipta" - -#~ msgid "Set embedded boot image name" -#~ msgstr "Set nama image embedded boot" - -#~ msgid "Patch a protective DOS-style label in the image" -#~ msgstr "Patch sebuah label proteksi bergaya DOS dalam image" - -#~ msgid "Set El Torito boot image name" -#~ msgstr "Set nama El Torito boot image" - -#~ msgid "Set El Torito boot catalog name" -#~ msgstr "Set nama katalog boot El Torito" - -#~ msgid "Patch Boot Info Table in El Torito boot image" -#~ msgstr "Patch Tabel Informasi boot dalam image boot El Torito" - -#~ msgid "Dummy option for backward compatibility" -#~ msgstr "Pilihan dummy untuk kompabilitas kebelakang" - -#~ msgid "Enable floppy drive emulation for El Torito" -#~ msgstr "Aktifkan emulasi drive floppy untuk El Torito" - -#~ msgid "PARAMS" -#~ msgstr "PARAMETER" - -#~ msgid "Magic parameters from cdrecord" -#~ msgstr "Majik parameter dari cdrecord" - -#~ msgid "Omit trailing periods from filenames" -#~ msgstr "Abaikan sisa titik dari nama berkas" - -#~ msgid "Disable deep directory relocation" -#~ msgstr "Non aktifkan relokasi dalam direktori" - -#~ msgid "Follow symbolic links" -#~ msgstr "Ikuti link simbolik" - -#~ msgid "Print option help" -#~ msgstr "Tampilkan pilihan bantuan" - -#~ msgid "GLOBFILE" -#~ msgstr "GLOBFILE" - -#~ msgid "Hide ISO9660/RR file" -#~ msgstr "Sembunyikan berkas ISO9660/RR" - -#~ msgid "Hide Joliet file" -#~ msgstr "Sembunyikan berkas Joliet" - -#~ msgid "ADD_FILES" -#~ msgstr "ADD_FILES" - -#~ msgid "No longer supported" -#~ msgstr "Tidak lagi didukung" - -#~ msgid "Generate Joliet directory information" -#~ msgstr "Hasilkan informasi direktori Joliet" - -#~ msgid "Allow full 32 character filenames for iso9660 names" -#~ msgstr "Ijinkan panjang nama berkas 32 karakter untuk nama iso9660" - -#~ msgid "Allow iso9660 filenames to start with '.'" -#~ msgstr "Ijinkan nama berkas iso9660 dimulai dengan '.'" - -#~ msgid "LOG_FILE" -#~ msgstr "LOG_FILE" - -#~ msgid "Re-direct messages to LOG_FILE" -#~ msgstr "Alihkan pesan ke LOG_FILE" - -#~ msgid "Exclude file name" -#~ msgstr "Nama berkas yang diabaikan" - -#~ msgid "Set path to previous session to merge" -#~ msgstr "Set jalur untuk sesi sebelumnya untuk digabungkan" - -#~ msgid "Omit version number from iso9660 filename" -#~ msgstr "Abaikan nomor versi dari nama berkas iso9660" - -#~ msgid "Inhibit splitting symlink components" -#~ msgstr "Halangi pembagian komponen simlink" - -#~ msgid "Inhibit splitting symlink fields" -#~ msgstr "Halangi pembagian daerah simlink" - -#~ msgid "PREP" -#~ msgstr "PREP" - -#~ msgid "Set Volume preparer" -#~ msgstr "Set penyiap Volume" - -#~ msgid "Print estimated filesystem size and exit" -#~ msgstr "Tampilkan perkiraan besar sistem berkas dan keluar" - -#~ msgid "Set Volume publisher" -#~ msgstr "Set Volume penerbit" - -#~ msgid "Run quietly" -#~ msgstr "Jalankan dengan diam" - -#~ msgid "Generate rationalized Rock Ridge directory information" -#~ msgstr "Hasilkan informasi direktori Rock Ridge secara rasional" - -#~ msgid "Generate Rock Ridge directory information" -#~ msgstr "Hasilkan informasi direktori Rock Ridge" - -#~ msgid "Split output into files of approx. 1GB size" -#~ msgstr "Bagi keluaran kedalam berkas kira kira sebesar 1GB" - -#~ msgid "Set System ID" -#~ msgstr "Set ID Sistem" - -#~ msgid "" -#~ "Generate translation tables for systems that don't understand long " -#~ "filenames" -#~ msgstr "" -#~ "Hasilkan tabel terjemahan untuk sistem yang tidak mengerti nama berkas " -#~ "panjang" - -#~ msgid "Verbose" -#~ msgstr "Detail" - -#~ msgid "Set Volume ID" -#~ msgstr "Set ID Volume" - -#~ msgid "Set Volume set ID" -#~ msgstr "Set Volume ID set" - -#~ msgid "Set Volume set sequence number" -#~ msgstr "Set Volume set nomor urutan" - -#~ msgid "Override creation date" -#~ msgstr "Paksa tanggal pembuatan" - -#~ msgid "Override expiration date" -#~ msgstr "Paksa tanggal ekpirasi" - -#~ msgid "Override effective date" -#~ msgstr "Paksa tanggal efektif" - -#~ msgid "Using \"%s\"\n" -#~ msgstr "Menggunakan \"%s\"\n" - -#~ msgid "%s:%d: name required\n" -#~ msgstr "%s:%d: nama dibutuhkan\n" - -#~ msgid "%s:%d: equals sign required\n" -#~ msgstr "%s:%d: tanda sama dibutuhkan\n" - -#~ msgid "%s:%d: field name \"%s\" unknown\n" -#~ msgstr "%s:%d: nama daerah \"%s\" tidak diketahui\n" - -#~ msgid "Usage: %s [options] file...\n" -#~ msgstr "Penggunaan: %s [pilihan] berkas...\n" - -#~ msgid "Required boot image pathname missing" -#~ msgstr "Nama jalur boot image yang dibutuhkan hilang" - -#~ msgid "Required boot catalog pathname missing\n" -#~ msgstr "Nama jalur katalog boot yang dibutuhkan hilang\n" - -#~ msgid "Ignoring -no-emul-boot (no-emulation is the default behaviour)\n" -#~ msgstr "Mengabaikan -no-emul-boot (no-emulation adalah perilaku baku)\n" - -#~ msgid "Abstract filename string too long\n" -#~ msgstr "String nama berkas abstrak terlalu panjang\n" - -#~ msgid "Application-id string too long\n" -#~ msgstr "String ID-Aplikasi terlalu panjang\n" - -#~ msgid "Bibliographic filename string too long\n" -#~ msgstr "String nama berkas bibliographic terlalu panjang\n" - -#~ msgid "Copyright filename string too long\n" -#~ msgstr "String nama berkas Hak Cipta terlalu panjang\n" - -#~ msgid "Preparer string too long\n" -#~ msgstr "String penyiap terlalu panjang\n" - -#~ msgid "Publisher string too long\n" -#~ msgstr "String penerbit terlalu panjang\n" - -#~ msgid "System ID string too long\n" -#~ msgstr "String ID sistem terlalu panjang\n" - -#~ msgid "Volume ID string too long\n" -#~ msgstr "String ID volume terlalu penjang\n" - -#~ msgid "Volume set ID string too long\n" -#~ msgstr "String ID set volume terlalu panjang\n" - -#~ msgid "Volume set sequence number too big\n" -#~ msgstr "Set urutan nomor volume terlalu besar\n" - -#~ msgid "date string must be 16 characters.\n" -#~ msgstr "string tanggal harus berupa 16 karakter.\n" - -#~ msgid "Warning: setrlimit" -#~ msgstr "Peringatan: setrlimit" - -#~ msgid "Multisession usage bug: Must specify -C if -M is used.\n" -#~ msgstr "" -#~ "Bug penggunaan multi sesi: Harus menspesifikasikan -C jika -M digunakan.\n" - -#~ msgid "" -#~ "Warning: -C specified without -M: old session data will not be merged.\n" -#~ msgstr "" -#~ "Peringatan: -C dispesifikasikan tanpa -M: data sesi lama tidak akan " -#~ "digabungkan.\n" - -#~ msgid "re-directing all messages to %s\n" -#~ msgstr "menredireksikan seluruh pesan ke %s\n" - -#~ msgid "can't open logfile: %s\n" -#~ msgstr "tidak dapat membuka berkas log: %s\n" - -#~ msgid "Unable to open previous session image %s\n" -#~ msgstr "Tidak dapat membuka sesi image sebelumnya %s\n" - -#~ msgid "Joliet tree sort failed.\n" -#~ msgstr "Pengurutan pohon joliet gagal.\n" - -#~ msgid "Unable to open /dev/null\n" -#~ msgstr "Tidak dapat membuka /dev/null\n" - -#~ msgid "Unable to open disc image file\n" -#~ msgstr "Tidak dapat membuka berkas image disk\n" - -#~ msgid "Max brk space used %x\n" -#~ msgstr "Ruang maksimal brk yang digunakan %x\n" - -#~ msgid "%llu extents written (%llu MiB)\n" -#~ msgstr "%llu ekstensi ditulis (%llu MiB)\n" - -#~ msgid "Seek error on old image\n" -#~ msgstr "Error pencarian dalam image lama\n" - -#~ msgid "**Bad RR version attribute" -#~ msgstr "**Atribut versi RR buruk" - -#~ msgid "" -#~ "Warning: Neither Rock Ridge (-R) nor TRANS.TBL (-T) name translations " -#~ "were found on previous session. ISO (8.3) file names have been used " -#~ "instead.\n" -#~ msgstr "" -#~ "Peringatan: Bukan Rock Ridge (-R) ataupun TRANS.TBL (-T) nama terjemahan " -#~ "ditemukan dalam sesi sebelumnya. ISO (8.3) nama berkas yang telah " -#~ "digunakan.\n" - -#~ msgid "Read error on old image %s\n" -#~ msgstr "Error membaca dalam image lama %s\n" - -#~ msgid "Special parameters for cdwrite not specified with -C\n" -#~ msgstr "Parameter spesial untuk cdwrite tidak dispesifikasikan dengan -C\n" - -#~ msgid "Malformed cdwrite parameters\n" -#~ msgstr "Parameter cdwrite salah format\n" - -#~ msgid "symbolic link ``%s'' to long for one SL System Use Field, splitting" -#~ msgstr "" -#~ "link simbolik ``%s'' terlalu panjang untuk satu SL Sistem Menggunakan " -#~ "Field, dipisahkan" - -#~ msgid "Unable to insert transparent compressed file - name conflict\n" -#~ msgstr "" -#~ "Tidak dapat memasukan berkas terkompress secara transparan - konflik " -#~ "nama\n" - -#~ msgid "Extension record too long\n" -#~ msgstr "Rekaman ekstensi terlalu panjang\n" - -#~ msgid "Fatal goof\n" -#~ msgstr "Fatal goof\n" - -#~ msgid "Unable to generate unique name for file %s\n" -#~ msgstr "Tidak dapat menghasilkan nama unik untuk berkas %s\n" - -#~ msgid "Fatal error - RR overflow for file %s\n" -#~ msgstr "Fatal error -RR overflow untuk berkas %s\n" - -#~ msgid "Translation table size mismatch %d %d\n" -#~ msgstr "Besar tabel terjemahan tidak cocok %d %d\n" - -#~ msgid "Unable to locate directory parent\n" -#~ msgstr "Tidak dapat menempatkan direktori atasnya\n" - -#~ msgid "Scanning %s\n" -#~ msgstr "Memindai %s\n" - -#~ msgid "Ignoring file %s\n" -#~ msgstr "Mengabaikan berkas %s\n" - -#~ msgid "Overflow of stat buffer\n" -#~ msgstr "Overflow dari penyangga statistik\n" - -#~ msgid "Excluded by match: %s\n" -#~ msgstr "Diabaikan oleh kecocokan: %s\n" - -#~ msgid "Excluded: %s\n" -#~ msgstr "Diabaikan: %s\n" - -#~ msgid "Non-existant or inaccessible: %s\n" -#~ msgstr "Tidak ada atau tidak dapat diakses: %s\n" - -#~ msgid "Unable to stat file %s - ignoring and continuing.\n" -#~ msgstr "" -#~ "Tidak dapat memperoleh statistik berkas %s - mengabaikan dan " -#~ "melanjutkan.\n" - -#~ msgid "Symlink %s ignored - continuing.\n" -#~ msgstr "Link simbolik %s diabaikan - melanjutkan.\n" - -#~ msgid "Already cached directory seen (%s)\n" -#~ msgstr "Direktori yang telah dicache terlihat (%s)\n" - -#~ msgid "File %s is not readable (%s) - ignoring\n" -#~ msgstr "Berkas %s tidak dapat dibaca (%s) - mengabaikan\n" - -#~ msgid "Directory loop - fatal goof (%s %lx %lu).\n" -#~ msgstr "Loop direktori - fatal goof (%s %lx %lu).\n" - -#~ msgid "Unknown file type %s - ignoring and continuing.\n" -#~ msgstr "Tipe berkas %s tidak diketahui - mengabaikan dan melanjutkan.\n" - -#~ msgid "Hidden from ISO9660 tree: %s\n" -#~ msgstr "Tersembunyi dari pohon ISO9660: %s\n" - -#~ msgid "Hidden from Joliet tree: %s\n" -#~ msgstr "Tersembunyi dari pohon joliet: %s\n" - -#~ msgid "Directories too deep %s\n" -#~ msgstr "Direktori terlalu dalam %s\n" - -#~ msgid "Unable to locate child directory in parent list\n" -#~ msgstr "Tidak dapat menemukan direktori anak dalam daftar orang-tua\n" - -#~ msgid "call to search_tree_file with an absolute path, stripping\n" -#~ msgstr "" -#~ "memanggil ke search_tree_file dengan sebuah jalur absolut, dipotong\n" - -#~ msgid "initial path separator. Hope this was intended...\n" -#~ msgstr "jalur pemisah awal. Semoga ini yang diinginkan...\n" - -#~ msgid "Cannot open '%s'" -#~ msgstr "Tidak dapat membuka '%s'" - -#~ msgid "cannot fwrite %llu*%llu\n" -#~ msgstr "tidak dapat fwrite %llu*%llu\n" - -#~ msgid "cannot open %s\n" -#~ msgstr "tidak dapat membuka %s\n" - -#~ msgid "%6.2f%% done, estimate finish %s" -#~ msgstr "%6.2f%% selesai, kira kira selesai %s" - -#~ msgid "Cache hit for %s%s%s\n" -#~ msgstr "Cache kena untuk %s%s%s\n" - -#~ msgid "Unexpected directory length %d %d %s\n" -#~ msgstr "Panjang direktori tidak terduga %d %d %s\n" - -#~ msgid "Continuation entry record length mismatch (%d %d).\n" -#~ msgstr "Panjang masukan rekaman lanjutan tidak cocok (%d %d).\n" - -#~ msgid "Path table lengths do not match %d %d\n" -#~ msgstr "Panjang jalur tabel tidak cocok %d %d\n" - -#~ msgid "Total extents scheduled to be written = %llu\n" -#~ msgstr "Total ekstensi telah terjadwal untuk ditulis = %llu\n" - -#~ msgid "Total extents actually written = %llu\n" -#~ msgstr "Total ekstensi yang sebenarnya tertulis = %llu\n" - -#~ msgid "" -#~ "Number of extents written different than what was predicted. Please " -#~ "fix.\n" -#~ msgstr "" -#~ "Jumlah dari ekstensi yang ditulis berbeda dari apa yang direncanakan. " -#~ "Mohon betulkan.\n" - -#~ msgid "Predicted = %d, written = %llu\n" -#~ msgstr "Diperkirakan = %d, tertulis = %llu\n" - -#~ msgid "Total rockridge attributes bytes: %d\n" -#~ msgstr "Total atribut rockridge bytes: %d\n" - -#~ msgid "Path table size(bytes): %d\n" -#~ msgstr "Ukuran tabel jalur(bytes): %d\n" - -#~ msgid "ESC to return previous menu." -#~ msgstr "ESC kembali ke menu sebelumnya." - -#~ msgid "the size of memory disk is 0x%x" -#~ msgstr "besar dari disk memori 0x%0x" - -#~ msgid "the size of config file is 0x%x" -#~ msgstr "besar dari berkas konfig adalah 0x%x" - -#~ msgid "the total module size is 0x%x" -#~ msgstr "total besar modul adalah 0x%x" - -#~ msgid "the core size is 0x%x" -#~ msgstr "besar core adalah 0x%x" - -#~ msgid "the first sector is <%llu,%u,%u>" -#~ msgstr "sektor pertama adalah <%llu,%u,%u>" - -#~ msgid "saving <%llu,%u,%u> with the segment 0x%x" -#~ msgstr "menyimpan <%llu,%u,%u> dengan bagian 0x%x" - -#~ msgid "the core image will be embedded at sector 0x%llx" -#~ msgstr "core image akan di ditempatkan di sektor 0x%llx" - -#~ msgid "" -#~ "succeeded in opening the core image but the size is different (%d != %d)" -#~ msgstr "sukses dalam membuka image core tetapi ukurannya berbeda (%d != %d)" - -#~ msgid "succeeded in opening the core image but cannot read %d bytes" -#~ msgstr "sukses dalam membuka image core tetapi tidak dapat membaca %d bytes" - -#~ msgid "succeeded in opening the core image but the data is different" -#~ msgstr "sukses dalam membuka image core tetapi data berbeda" - -#~ msgid "error message = %s" -#~ msgstr "pesan error = %s" - -#~ msgid "opening the core image `%s'" -#~ msgstr "membuka image core `%s'" - -#~ msgid "guessing the root device failed, because of `%s'" -#~ msgstr "pendeteksian perangkat root gagal, karena `%s'" diff --git a/thirdparty/grub-2.04/po/insert-header.sin b/thirdparty/grub-2.04/po/insert-header.sin deleted file mode 100644 index b26de01f6..000000000 --- a/thirdparty/grub-2.04/po/insert-header.sin +++ /dev/null @@ -1,23 +0,0 @@ -# Sed script that inserts the file called HEADER before the header entry. -# -# At each occurrence of a line starting with "msgid ", we execute the following -# commands. At the first occurrence, insert the file. At the following -# occurrences, do nothing. The distinction between the first and the following -# occurrences is achieved by looking at the hold space. -/^msgid /{ -x -# Test if the hold space is empty. -s/m/m/ -ta -# Yes it was empty. First occurrence. Read the file. -r HEADER -# Output the file's contents by reading the next line. But don't lose the -# current line while doing this. -g -N -bb -:a -# The hold space was nonempty. Following occurrences. Do nothing. -x -:b -} diff --git a/thirdparty/grub-2.04/po/it.gmo b/thirdparty/grub-2.04/po/it.gmo deleted file mode 100644 index efc3ebdac53cbd9b2eb71ac377cc91d835e10cc8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 122744 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

a)Owao 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 V%yt(x;+e*t*y;yv!$wVQ{{NgTTH*iz diff --git a/thirdparty/grub-2.04/po/de.po b/thirdparty/grub-2.04/po/de.po deleted file mode 100644 index 3a52bb9fa..000000000 --- a/thirdparty/grub-2.04/po/de.po +++ /dev/null @@ -1,6657 +0,0 @@ -# German translation for grub. -# Copyright (C) 2009 Free Software Foundation, Inc. -# This file is distributed under the same license as the grub package. -# -# Mario Blättermann , 2010-2013, 2017, 2019. -msgid "" -msgstr "" -"Project-Id-Version: grub-2.04-pre1\n" -"Report-Msgid-Bugs-To: bug-grub@gnu.org\n" -"POT-Creation-Date: 2019-07-04 16:09+0200\n" -"PO-Revision-Date: 2019-04-09 19:23+0200\n" -"Last-Translator: Mario Blättermann \n" -"Language-Team: German \n" -"Language: de\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Bugs: Report translation errors to the Language-Team address.\n" -"Plural-Forms: nplurals=2; plural=(n != 1);\n" -"X-Generator: Lokalize 18.12.3\n" - -#: grub-core/bus/usb/serial/ftdi.c:145 grub-core/bus/usb/serial/pl2303.c:158 -#: grub-core/term/ieee1275/escc.c:169 grub-core/term/ns8250.c:202 -msgid "unsupported serial port speed" -msgstr "Geschwindigkeit des seriellen Ports wird nicht unterstützt" - -#: grub-core/bus/usb/serial/ftdi.c:151 grub-core/bus/usb/serial/pl2303.c:164 -#: grub-core/term/efi/serial.c:116 grub-core/term/ieee1275/escc.c:175 -#: grub-core/term/ns8250.c:208 grub-core/term/serial.c:227 -#: grub-core/term/serial.c:243 -msgid "unsupported serial port parity" -msgstr "Parität des seriellen Ports wird nicht unterstützt" - -#: grub-core/bus/usb/serial/ftdi.c:157 grub-core/bus/usb/serial/pl2303.c:170 -#: grub-core/term/efi/serial.c:122 grub-core/term/ieee1275/escc.c:181 -#: grub-core/term/ns8250.c:213 grub-core/term/serial.c:267 -msgid "unsupported serial port stop bits number" -msgstr "Anzahl der Stop-Bits des seriellen Ports wird nicht unterstützt" - -#: grub-core/bus/usb/serial/ftdi.c:161 grub-core/bus/usb/serial/pl2303.c:174 -#: grub-core/term/efi/serial.c:126 grub-core/term/ieee1275/escc.c:185 -#: grub-core/term/ns8250.c:217 -msgid "unsupported serial port word length" -msgstr "Wortlänge des seriellen Ports wird nicht unterstützt" - -#: grub-core/commands/acpi.c:42 -msgid "Don't load host tables specified by comma-separated list." -msgstr "Keine Host-Tabellen spezifiziert durch kommagetrennte Liste laden." - -#: grub-core/commands/acpi.c:45 -msgid "Load only tables specified by comma-separated list." -msgstr "Nur Tabellen spezifiziert durch kommagetrennte Liste laden." - -#: grub-core/commands/acpi.c:46 -msgid "Export version 1 tables to the OS." -msgstr "Version-1-Tabellen zum Betriebssystem exportieren." - -#: grub-core/commands/acpi.c:47 -msgid "Export version 2 and version 3 tables to the OS." -msgstr "Version-2- und Version-3-Tabellen zum Betriebssystem exportieren." - -#: grub-core/commands/acpi.c:48 -msgid "Set OEMID of RSDP, XSDT and RSDT." -msgstr "OEMID von RSDP, XSDT und RSDT festlegen." - -#: grub-core/commands/acpi.c:50 -msgid "Set OEMTABLE ID of RSDP, XSDT and RSDT." -msgstr "OEMTABLE-ID von RSDP, XSDT and RSDT festlegen." - -#: grub-core/commands/acpi.c:52 -msgid "Set OEMTABLE revision of RSDP, XSDT and RSDT." -msgstr "OEMTABLE-Revision von RSDP, XSDT und RSDT festlegen." - -#: grub-core/commands/acpi.c:54 -msgid "Set creator field of RSDP, XSDT and RSDT." -msgstr "Ersteller-Feld von RSDP, XSDT und RSDT festlegen." - -#: grub-core/commands/acpi.c:56 -msgid "Set creator revision of RSDP, XSDT and RSDT." -msgstr "Ersteller-Revision von RSDP, XSDT und RSDT festlegen." - -#. TRANSLATORS: "hangs" here is a noun, not a verb. -#: grub-core/commands/acpi.c:58 -msgid "" -"Don't update EBDA. May fix failures or hangs on some BIOSes but makes it " -"ineffective with OS not receiving RSDP from GRUB." -msgstr "" -"EBDA nicht aktualisieren. Könnte Fehler oder Hänger in manchen BIOS-" -"Versionen beseitigen, ist aber nicht effektiv bei Betriebssystemen, die kein " -"RSDP von GRUB empfangen. " - -#: grub-core/commands/acpi.c:650 grub-core/commands/acpi.c:667 -#: grub-core/commands/i386/pc/play.c:105 grub-core/commands/keylayouts.c:230 -#: grub-core/commands/keylayouts.c:245 grub-core/commands/keylayouts.c:263 -#: grub-core/commands/verifiers.c:156 grub-core/efiemu/loadcore.c:350 -#: grub-core/kern/elf.c:117 grub-core/kern/elfXX.c:29 -#: grub-core/kern/elfXX.c:156 grub-core/loader/arm/linux.c:319 -#: grub-core/loader/arm64/linux.c:330 grub-core/loader/arm64/xen_boot.c:356 -#: grub-core/loader/efi/chainloader.c:276 -#: grub-core/loader/efi/chainloader.c:297 -#: grub-core/loader/efi/chainloader.c:329 grub-core/loader/efi/fdt.c:138 -#: grub-core/loader/i386/bsd.c:1276 grub-core/loader/i386/bsd.c:2116 -#: grub-core/loader/i386/bsdXX.c:20 grub-core/loader/i386/bsdXX.c:36 -#: grub-core/loader/i386/bsdXX.c:63 grub-core/loader/i386/bsdXX.c:357 -#: grub-core/loader/i386/bsdXX.c:376 grub-core/loader/i386/bsdXX.c:519 -#: grub-core/loader/i386/bsdXX.c:535 grub-core/loader/i386/bsdXX.c:615 -#: grub-core/loader/i386/bsdXX.c:638 -#: grub-core/loader/i386/coreboot/chainloader.c:112 -#: grub-core/loader/i386/coreboot/chainloader.c:148 -#: grub-core/loader/i386/coreboot/chainloader.c:170 -#: grub-core/loader/i386/linux.c:667 grub-core/loader/i386/linux.c:788 -#: grub-core/loader/i386/linux.c:1005 grub-core/loader/i386/multiboot_mbi.c:171 -#: grub-core/loader/i386/pc/chainloader.c:202 -#: grub-core/loader/i386/pc/linux.c:149 grub-core/loader/i386/pc/linux.c:320 -#: grub-core/loader/i386/pc/linux.c:362 grub-core/loader/i386/pc/plan9.c:457 -#: grub-core/loader/i386/pc/plan9.c:550 grub-core/loader/i386/pc/plan9.c:566 -#: grub-core/loader/i386/xen.c:934 grub-core/loader/i386/xen_file.c:72 -#: grub-core/loader/i386/xen_fileXX.c:43 grub-core/loader/i386/xen_fileXX.c:186 -#: grub-core/loader/i386/xen_fileXX.c:339 grub-core/loader/ia64/efi/linux.c:423 -#: grub-core/loader/ia64/efi/linux.c:471 grub-core/loader/linux.c:286 -#: grub-core/loader/macho.c:84 grub-core/loader/macho.c:109 -#: grub-core/loader/machoXX.c:33 grub-core/loader/machoXX.c:46 -#: grub-core/loader/machoXX.c:76 grub-core/loader/machoXX.c:116 -#: grub-core/loader/machoXX.c:131 grub-core/loader/machoXX.c:147 -#: grub-core/loader/machoXX.c:196 grub-core/loader/machoXX.c:317 -#: grub-core/loader/multiboot.c:434 grub-core/loader/multiboot_elfxx.c:171 -#: grub-core/loader/multiboot_elfxx.c:234 -#: grub-core/loader/multiboot_elfxx.c:278 grub-core/loader/multiboot_mbi2.c:129 -#: grub-core/loader/xnu.c:737 grub-core/loader/xnu.c:795 -#: grub-core/loader/xnu.c:816 grub-core/loader/xnu.c:871 -#: grub-core/loader/xnu.c:914 grub-core/loader/xnu.c:952 -#: grub-core/loader/xnu_resume.c:68 grub-core/loader/xnu_resume.c:153 -#: grub-core/loader/xnu_resume.c:165 util/grub-mkimagexx.c:2288 -#, c-format -msgid "premature end of file %s" -msgstr "Unerwartetes Ende der Datei %s" - -#: grub-core/commands/acpi.c:779 -msgid "" -"[-1|-2] [--exclude=TABLE1,TABLE2|--load-only=TABLE1,TABLE2] FILE1 [FILE2] " -"[...]" -msgstr "" -"[-1|-2] [--exclude=TABELLE1,TABELLE2|--load-only=TABELLE1,TABELLE2] DATEI1 " -"[DATEI2] [...]" - -#: grub-core/commands/acpi.c:782 -msgid "Load host ACPI tables and tables specified by arguments." -msgstr "Host-ACPI-Tabellen und durch Argumente angegebene Tabellen laden." - -#: grub-core/commands/acpihalt.c:368 grub-core/kern/err.c:110 -#, c-format -msgid "error: %s.\n" -msgstr "Fehler: %s.\n" - -#: grub-core/commands/acpihalt.c:368 grub-core/kern/emu/misc.c:95 -#: grub-core/kern/emu/misc.c:105 grub-core/kern/emu/misc.c:134 -#: grub-core/kern/emu/mm.c:34 grub-core/kern/emu/mm.c:62 -#: grub-core/kern/mm.c:374 grub-core/lib/relocator.c:1282 -#: grub-core/lib/relocator.c:1439 grub-core/lib/relocator.c:1538 -#: grub-core/loader/arm/linux.c:259 grub-core/loader/arm64/linux.c:265 -#: grub-core/loader/arm64/linux.c:321 grub-core/loader/arm64/linux.c:340 -#: grub-core/loader/arm64/xen_boot.c:344 grub-core/loader/arm64/xen_boot.c:367 -#: grub-core/loader/efi/chainloader.c:289 grub-core/osdep/unix/dl.c:48 -#: grub-core/osdep/windows/dl.c:46 grub-core/script/lexer.c:156 -#: grub-core/script/lexer.c:182 -msgid "out of memory" -msgstr "Hauptspeicher erschöpft" - -#: grub-core/commands/acpihalt.c:374 grub-core/disk/cryptodisk.c:587 -#: grub-core/disk/cryptodisk.c:632 grub-core/kern/emu/hostdisk.c:307 -#: grub-core/kern/emu/hostfs.c:149 grub-core/kern/emu/misc.c:200 -#: grub-core/osdep/linux/ofpath.c:195 grub-core/osdep/linux/ofpath.c:521 -#: grub-core/osdep/linux/ofpath.c:534 util/glue-efi.c:80 util/glue-efi.c:94 -#: util/grub-editenv.c:155 util/grub-fstest.c:577 -#: util/grub-install-common.c:943 util/grub-mkrescue.c:634 -#: util/grub-mkrescue.c:888 util/grub-mount.c:506 util/grub-render-label.c:176 -#: util/misc.c:95 util/setup.c:814 util/setup.c:833 -#, c-format -msgid "cannot read `%s': %s" -msgstr "»%s« ist nicht lesbar: %s" - -#. TRANSLATORS: It's computer shutdown using ACPI, not disabling ACPI. -#: grub-core/commands/acpihalt.c:452 -msgid "ACPI shutdown failed" -msgstr "ACPI-Herunterfahren ist gescheitert" - -#: grub-core/commands/arc/lsdev.c:51 -msgid "List devices." -msgstr "Geräte auflisten." - -#: grub-core/commands/blocklist.c:122 grub-core/commands/cat.c:57 -#: grub-core/commands/configfile.c:35 grub-core/commands/efi/loadbios.c:168 -#: grub-core/commands/file.c:159 grub-core/commands/hexdump.c:47 -#: grub-core/commands/legacycfg.c:209 grub-core/commands/legacycfg.c:315 -#: grub-core/commands/minicmd.c:44 grub-core/commands/syslinuxcfg.c:146 -#: grub-core/commands/testload.c:58 grub-core/commands/testspeed.c:52 -#: grub-core/disk/loopback.c:93 grub-core/efiemu/main.c:293 -#: grub-core/font/font_cmd.c:32 grub-core/kern/emu/hostdisk.c:519 -#: grub-core/loader/arm/linux.c:364 grub-core/loader/arm/linux.c:409 -#: grub-core/loader/arm/linux.c:472 grub-core/loader/arm64/linux.c:243 -#: grub-core/loader/arm64/linux.c:297 grub-core/loader/arm64/xen_boot.c:398 -#: grub-core/loader/arm64/xen_boot.c:411 grub-core/loader/arm64/xen_boot.c:462 -#: grub-core/loader/efi/chainloader.c:216 grub-core/loader/i386/bsd.c:1462 -#: grub-core/loader/i386/bsd.c:1807 grub-core/loader/i386/bsd.c:2085 -#: grub-core/loader/i386/coreboot/chainloader.c:438 -#: grub-core/loader/i386/linux.c:656 grub-core/loader/i386/linux.c:1041 -#: grub-core/loader/i386/pc/chainloader.c:290 -#: grub-core/loader/i386/pc/freedos.c:105 grub-core/loader/i386/pc/linux.c:138 -#: grub-core/loader/i386/pc/linux.c:400 grub-core/loader/i386/pc/ntldr.c:85 -#: grub-core/loader/i386/pc/plan9.c:409 -#: grub-core/loader/i386/pc/pxechainloader.c:94 -#: grub-core/loader/i386/pc/truecrypt.c:96 grub-core/loader/i386/xen.c:641 -#: grub-core/loader/i386/xen.c:768 grub-core/loader/i386/xen.c:844 -#: grub-core/loader/i386/xen.c:854 grub-core/loader/i386/xnu.c:488 -#: grub-core/loader/ia64/efi/linux.c:459 grub-core/loader/ia64/efi/linux.c:539 -#: grub-core/loader/mips/linux.c:238 grub-core/loader/mips/linux.c:429 -#: grub-core/loader/multiboot.c:322 grub-core/loader/multiboot.c:374 -#: grub-core/loader/multiboot.c:384 -#: grub-core/loader/powerpc/ieee1275/linux.c:269 -#: grub-core/loader/powerpc/ieee1275/linux.c:341 -#: grub-core/loader/sparc64/ieee1275/linux.c:305 -#: grub-core/loader/sparc64/ieee1275/linux.c:381 grub-core/loader/xnu.c:351 -#: grub-core/loader/xnu.c:460 grub-core/loader/xnu.c:778 -#: grub-core/loader/xnu.c:892 grub-core/loader/xnu.c:1277 -#: grub-core/loader/xnu.c:1427 grub-core/loader/xnu.c:1453 -#: grub-core/video/readers/jpeg.c:812 grub-core/video/readers/png.c:1123 -msgid "filename expected" -msgstr "Dateiname wurde erwartet" - -#. TRANSLATORS: "embed" is a verb (command description). " -#: grub-core/commands/blocklist.c:154 grub-core/commands/cat.c:163 -#: grub-core/commands/configfile.c:65 grub-core/commands/configfile.c:68 -#: grub-core/commands/configfile.c:74 grub-core/commands/configfile.c:80 -#: grub-core/commands/configfile.c:86 grub-core/commands/hashsum.c:34 -#: grub-core/commands/legacycfg.c:834 grub-core/commands/legacycfg.c:841 -#: grub-core/commands/legacycfg.c:846 grub-core/commands/legacycfg.c:851 -#: grub-core/commands/macbless.c:222 grub-core/commands/minicmd.c:198 -#: grub-core/commands/syslinuxcfg.c:186 grub-core/commands/syslinuxcfg.c:194 -#: grub-core/commands/syslinuxcfg.c:200 grub-core/commands/syslinuxcfg.c:206 -#: grub-core/commands/testload.c:163 grub-core/efiemu/main.c:312 -#: grub-core/kern/emu/main.c:100 grub-core/kern/emu/main.c:103 -#: grub-core/loader/i386/bsd.c:2137 grub-core/loader/i386/bsd.c:2140 -#: grub-core/loader/i386/bsd.c:2143 -#: grub-core/loader/i386/coreboot/chainloader.c:505 -#: grub-core/loader/ia64/efi/linux.c:594 include/grub/util/install.h:32 -#: include/grub/util/install.h:64 util/grub-glue-efi.c:52 -#: util/grub-glue-efi.c:54 util/grub-glue-efi.c:56 util/grub-install.c:254 -#: util/grub-install.c:301 util/grub-mkfont.c:936 util/grub-mkimage.c:68 -#: util/grub-mkimage.c:74 util/grub-mkimage.c:76 util/grub-mkimage.c:78 -#: util/grub-mkimage.c:81 util/grub-mklayout.c:52 util/grub-mklayout.c:54 -#: util/grub-mkrescue.c:97 util/grub-mkrescue.c:101 util/grub-mkrescue.c:104 -#: util/grub-mkrescue.c:105 util/grub-mkrescue.c:106 -#: util/grub-mkstandalone.c:47 util/grub-mkstandalone.c:49 -#: util/grub-probe.c:732 util/grub-render-label.c:59 -#: util/grub-render-label.c:70 util/grub-render-label.c:72 util/grub-setup.c:78 -#: util/grub-setup.c:80 util/grub-setup.c:84 util/grub-syslinux2cfg.c:74 -#: util/grub-syslinux2cfg.c:147 -msgid "FILE" -msgstr "DATEI" - -#: grub-core/commands/blocklist.c:154 -msgid "Print a block list." -msgstr "Eine Blockliste ausgeben." - -#: grub-core/commands/boot.c:147 grub-core/commands/legacycfg.c:533 -#: grub-core/commands/legacycfg.c:574 grub-core/loader/arm64/linux.c:250 -#: grub-core/loader/i386/bsd.c:1799 grub-core/loader/i386/bsd.c:1900 -#: grub-core/loader/i386/bsd.c:2007 grub-core/loader/i386/bsd.c:2040 -#: grub-core/loader/i386/bsd.c:2089 grub-core/loader/i386/linux.c:1047 -#: grub-core/loader/i386/pc/linux.c:406 grub-core/loader/i386/xen.c:775 -#: grub-core/loader/i386/xen.c:859 grub-core/loader/ia64/efi/linux.c:545 -#: grub-core/loader/mips/linux.c:432 grub-core/loader/multiboot.c:388 -#: grub-core/loader/powerpc/ieee1275/linux.c:347 -#: grub-core/loader/sparc64/ieee1275/linux.c:387 grub-core/loader/xnu.c:572 -#: grub-core/loader/xnu.c:665 grub-core/loader/xnu.c:781 -#: grub-core/loader/xnu.c:895 grub-core/loader/xnu.c:1091 -#: grub-core/loader/xnu.c:1258 grub-core/loader/xnu.c:1289 -#: grub-core/loader/xnu.c:1430 -msgid "you need to load the kernel first" -msgstr "Sie müssen zuerst den Kernel laden" - -#: grub-core/commands/boot.c:189 -msgid "Boot an operating system." -msgstr "Ein Betriebssystem starten." - -#: grub-core/commands/boottime.c:36 -#: grub-core/commands/i386/coreboot/cb_timestamps.c:108 -msgid "No boot time statistics is available\n" -msgstr "Keine Statistiken für Boot-Zeiten verfügbar\n" - -#: grub-core/commands/boottime.c:59 -msgid "Show boot time statistics." -msgstr "Statistiken für Boot-Zeiten erstellen." - -#: grub-core/commands/cacheinfo.c:40 -#, c-format -msgid "Disk cache statistics: hits = %lu (%lu.%02lu%%), misses = %lu\n" -msgstr "" -"Statistiken des Plattenzwischenspeichers: Hits = %lu (%lu.%02lu%%), Misses = " -"%lu\n" - -#: grub-core/commands/cacheinfo.c:45 -msgid "No disk cache statistics available\n" -msgstr "Keine Statistiken zum Paket-Zwischenspeicher verfügbar\n" - -#: grub-core/commands/cacheinfo.c:56 -msgid "Get disk cache info." -msgstr "Informationen zum Platten-Zwischenspeicher holen." - -#: grub-core/commands/cat.c:33 -msgid "Accept DOS-style CR/NL line endings." -msgstr "CR/NL-Zeilenenden im DOS-Stil akzeptieren." - -#: grub-core/commands/cat.c:163 grub-core/commands/minicmd.c:198 -msgid "Show the contents of a file." -msgstr "Inhalt einer Datei anzeigen." - -#: grub-core/commands/cmp.c:43 grub-core/commands/i386/pc/drivemap.c:239 -#: grub-core/commands/i386/wrmsr.c:60 grub-core/commands/iorw.c:85 -#: grub-core/commands/memrw.c:84 grub-core/commands/password.c:75 -#: grub-core/commands/password_pbkdf2.c:94 grub-core/commands/pgp.c:826 -#: grub-core/commands/regexp.c:113 grub-core/mmap/mmap.c:517 -#: grub-core/net/dns.c:639 -msgid "two arguments expected" -msgstr "Zwei Argumente wurden erwartet" - -#: grub-core/commands/cmp.c:45 -#, c-format -msgid "Compare file `%s' with `%s':\n" -msgstr "Datei »%s« mit »%s« vergleichen:\n" - -#: grub-core/commands/cmp.c:54 -#, c-format -msgid "Files differ in size: %llu [%s], %llu [%s]\n" -msgstr "Dateigrößen sind unterschiedlich: %llu [%s], %llu [%s]\n" - -#: grub-core/commands/cmp.c:81 -#, c-format -msgid "Files differ at the offset %llu: 0x%x [%s], 0x%x [%s]\n" -msgstr "Dateien unterscheiden sich an Position %llu: 0x%x [%s], 0x%x [%s]\n" - -#. TRANSLATORS: it's always exactly 2 files. -#: grub-core/commands/cmp.c:93 -msgid "The files are identical.\n" -msgstr "Die Dateien sind identisch.\n" - -#: grub-core/commands/cmp.c:113 -msgid "FILE1 FILE2" -msgstr "DATEI1 DATEI2" - -#: grub-core/commands/cmp.c:113 -msgid "Compare two files." -msgstr "Zwei Dateien vergleichen." - -#: grub-core/commands/configfile.c:65 -msgid "Load another config file." -msgstr "Eine andere Konfigurationsdatei laden." - -#: grub-core/commands/configfile.c:69 grub-core/commands/configfile.c:87 -msgid "Load another config file without changing context." -msgstr "Eine andere Konfigurationsdatei laden, ohne den Kontext zu ändern." - -#: grub-core/commands/configfile.c:75 -msgid "" -"Load another config file without changing context but take only menu entries." -msgstr "" -"Eine andere Konfigurationsdatei laden, ohne den Kontext zu ändern. Es werden " -"nur Menüeinträge geladen." - -#: grub-core/commands/configfile.c:81 -msgid "Load another config file but take only menu entries." -msgstr "Eine andere Konfigurationsdatei laden, aber nur deren Menüeinträge." - -#: grub-core/commands/date.c:141 -msgid "[[year-]month-day] [hour:minute[:second]]" -msgstr "[[Jahr-]Monat-Tag] [Stunde:Minute[:Sekunde]]" - -#: grub-core/commands/date.c:142 -msgid "Display/set current datetime." -msgstr "Anzeigen/Festlegen des/der aktuellen Datums/Zeit." - -#: grub-core/commands/echo.c:30 -msgid "Do not output the trailing newline." -msgstr "Angehängte Zeilenumbrüche nicht ausgeben." - -#: grub-core/commands/echo.c:31 -msgid "Enable interpretation of backslash escapes." -msgstr "Auswertung der Backslash-Maskierungen ermöglichen." - -#: grub-core/commands/echo.c:134 -msgid "[-e|-n] STRING" -msgstr "[-e|-n] ZEICHENKETTE" - -#: grub-core/commands/echo.c:134 -msgid "Display a line of text." -msgstr "Eine Textzeile anzeigen." - -#: grub-core/commands/efi/efifwsetup.c:82 -msgid "Reboot into firmware setup menu." -msgstr "In das Firmware-Konfigurationsmenü neu starten." - -#: grub-core/commands/efi/fixvideo.c:107 -msgid "Fix video problem." -msgstr "Ein Videoproblem beheben." - -#: grub-core/commands/efi/loadbios.c:52 -msgid "ROM image is present." -msgstr "ROM-Abbild ist vorhanden." - -#: grub-core/commands/efi/loadbios.c:70 -msgid "Can't enable ROM area." -msgstr "ROM-Bereich kann nicht aktiviert werden." - -#: grub-core/commands/efi/loadbios.c:209 -msgid "" -"Create BIOS-like structures for backward compatibility with existing OS." -msgstr "" -"BIOS-Strukturen für Abwärtskompatibilität mit dem vorhandenen Betriebssystem " -"erstellen." - -#: grub-core/commands/efi/loadbios.c:214 -msgid "BIOS_DUMP [INT10_DUMP]" -msgstr "BIOS_SICHERUNG [INT10_SICHERUNG]" - -#: grub-core/commands/efi/loadbios.c:215 -msgid "Load BIOS dump." -msgstr "BIOS-Sicherung laden." - -#: grub-core/commands/efi/shim_lock.c:76 -#, c-format -msgid "module cannot be loaded in UEFI secure boot mode: %s" -msgstr "Modul kann im sicheren UEFI-Bootmodus nicht geladen werden: %s" - -#: grub-core/commands/efi/shim_lock.c:98 -#, c-format -msgid "cannot boot due to dangerous module in memory: %s" -msgstr "" -"Wegen eines gefährlichen Moduls im Speicher kann nicht gebootet werden: %s" - -#: grub-core/commands/efi/shim_lock.c:116 -msgid "bad shim signature" -msgstr "Falsche Shim-Signatur" - -#: grub-core/commands/efi/tpm.c:149 grub-core/commands/efi/tpm.c:189 -#: grub-core/commands/efi/tpm.c:256 grub-core/commands/efi/tpm.c:306 -msgid "Command failed" -msgstr "Befehlsausführung fehlgeschlagen" - -#: grub-core/commands/efi/tpm.c:151 grub-core/commands/efi/tpm.c:191 -#: grub-core/commands/efi/tpm.c:258 grub-core/commands/efi/tpm.c:308 -msgid "Invalid parameter" -msgstr "Ungültiger Parameter" - -#: grub-core/commands/efi/tpm.c:154 grub-core/commands/efi/tpm.c:194 -#: grub-core/commands/efi/tpm.c:261 grub-core/commands/efi/tpm.c:311 -msgid "Output buffer too small" -msgstr "Ausgabepuffer ist zu klein" - -#: grub-core/commands/efi/tpm.c:156 grub-core/commands/efi/tpm.c:196 -#: grub-core/commands/efi/tpm.c:263 grub-core/commands/efi/tpm.c:313 -msgid "TPM unavailable" -msgstr "TPM ist nicht verfügbar" - -#: grub-core/commands/efi/tpm.c:158 grub-core/commands/efi/tpm.c:198 -#: grub-core/commands/efi/tpm.c:265 grub-core/commands/efi/tpm.c:315 -msgid "Unknown TPM error" -msgstr "Unbekannter TPM-Fehler" - -#: grub-core/commands/efi/tpm.c:240 grub-core/commands/efi/tpm.c:288 -msgid "cannot allocate TPM event buffer" -msgstr "TPM-Ereignispuffer kann nicht belegt werden" - -#: grub-core/commands/eval.c:63 -msgid "STRING ..." -msgstr "ZEICHENKETTE ..." - -#: grub-core/commands/eval.c:64 -msgid "Evaluate arguments as GRUB commands" -msgstr "Argumente als GRUB-Befehle auffassen" - -#: grub-core/commands/file.c:41 -msgid "Check if FILE can be booted as i386 PAE Xen unprivileged guest kernel" -msgstr "" -"Überprüfen, ob DATEI als unprivilegierter i386-PAE-Xen-Gast-Kernel gebootet " -"werden kann" - -#: grub-core/commands/file.c:44 -msgid "Check if FILE can be booted as x86_64 Xen unprivileged guest kernel" -msgstr "" -"Überprüfen, ob DATEI als unprivilegierter x86_64-Xen-Gast-Kernel gebootet " -"werden kann" - -#: grub-core/commands/file.c:46 -msgid "Check if FILE can be used as Xen x86 privileged guest kernel" -msgstr "" -"Überprüfen, ob DATEI als unprivilegierter x86-Xen-Gast-Kernel gebootet " -"werden kann" - -#: grub-core/commands/file.c:48 -msgid "Check if FILE can be used as x86 multiboot kernel" -msgstr "Überprüfen, ob DATEI als x86-Multiboot-Kernel gebootet werden kann" - -#: grub-core/commands/file.c:50 -msgid "Check if FILE can be used as x86 multiboot2 kernel" -msgstr "Überprüfen, ob DATEI als x86-Multiboot2-Kernel gebootet werden kann" - -#: grub-core/commands/file.c:52 -msgid "Check if FILE is ARM Linux" -msgstr "Überpüfen, ob DATEI ARM-Linux ist" - -#: grub-core/commands/file.c:54 -msgid "Check if FILE is ARM64 Linux" -msgstr "Überpüfen, ob DATEI ARM64-Linux ist" - -#: grub-core/commands/file.c:56 -msgid "Check if FILE is IA64 Linux" -msgstr "Überpüfen, ob DATEI IA64-Linux ist" - -#: grub-core/commands/file.c:58 -msgid "Check if FILE is MIPS Linux" -msgstr "Überpüfen, ob DATEI MIPS-Linux ist" - -#: grub-core/commands/file.c:60 -msgid "Check if FILE is MIPSEL Linux" -msgstr "Überpüfen, ob DATEI MIPSEL-Linux ist" - -#: grub-core/commands/file.c:62 -msgid "Check if FILE is SPARC64 Linux" -msgstr "Überpüfen, ob DATEI SPARC64-Linux ist" - -#: grub-core/commands/file.c:64 -msgid "Check if FILE is POWERPC Linux" -msgstr "Überpüfen, ob DATEI POWERPC-Linux ist" - -#: grub-core/commands/file.c:66 -msgid "Check if FILE is x86 Linux" -msgstr "Überpüfen, ob DATEI x86-Linux ist" - -#: grub-core/commands/file.c:68 -msgid "Check if FILE is x86 Linux supporting 32-bit protocol" -msgstr "Überpüfen, ob DATEI x86-Linux mit 32-Bit-Protokollunterstützung ist" - -#: grub-core/commands/file.c:70 -msgid "Check if FILE is x86 kFreeBSD" -msgstr "Überpüfen, ob DATEI x86-kFreeBSD ist" - -#: grub-core/commands/file.c:72 -msgid "Check if FILE is i386 kFreeBSD" -msgstr "Überpüfen, ob DATEI i386-kFreeBSD ist" - -#: grub-core/commands/file.c:74 -msgid "Check if FILE is x86_64 kFreeBSD" -msgstr "Überpüfen, ob DATEI x86_64-kFreeBSD ist" - -#: grub-core/commands/file.c:77 -msgid "Check if FILE is x86 kNetBSD" -msgstr "Überpüfen, ob DATEI x86-kNetBSD ist" - -#: grub-core/commands/file.c:79 -msgid "Check if FILE is i386 kNetBSD" -msgstr "Überpüfen, ob DATEI i386-kNetBSD ist" - -#: grub-core/commands/file.c:81 -msgid "Check if FILE is x86_64 kNetBSD" -msgstr "Überpüfen, ob DATEI x86_64-kNetBSD ist" - -#: grub-core/commands/file.c:84 -msgid "Check if FILE is i386 EFI file" -msgstr "Überpüfen, ob DATEI eine i386-EFI-Datei ist" - -#: grub-core/commands/file.c:86 -msgid "Check if FILE is x86_64 EFI file" -msgstr "Überpüfen, ob DATEI eine i386-EFI-Datei ist" - -#: grub-core/commands/file.c:88 -msgid "Check if FILE is IA64 EFI file" -msgstr "Überpüfen, ob DATEI eine IA64-EFI-Datei ist" - -#: grub-core/commands/file.c:90 -msgid "Check if FILE is ARM64 EFI file" -msgstr "Überpüfen, ob DATEI eine ARM64-EFI-Datei ist" - -#: grub-core/commands/file.c:92 -msgid "Check if FILE is ARM EFI file" -msgstr "Überpüfen, ob DATEI eine ARM-EFI-Datei ist" - -#: grub-core/commands/file.c:94 -msgid "Check if FILE is RISC-V 32bit EFI file" -msgstr "Überprüfen, ob DATEI eine 32-Bit-RISC-V-EFI-Datei ist" - -#: grub-core/commands/file.c:96 -msgid "Check if FILE is RISC-V 64bit EFI file" -msgstr "Überprüfen, ob DATEI eine 64-Bit-RISC-V-EFI-Datei ist" - -#: grub-core/commands/file.c:98 -msgid "Check if FILE is hiberfil.sys in hibernated state" -msgstr "Überpüfen, ob DATEI hiberfil.sys im Ruhezustand ist (hibernated)" - -#: grub-core/commands/file.c:100 -msgid "Check if FILE is x86_64 XNU (Mac OS X kernel)" -msgstr "Überpüfen, ob DATEI x86_64-XNU ist (Mac-OSX-Kernel)" - -#: grub-core/commands/file.c:102 -msgid "Check if FILE is i386 XNU (Mac OS X kernel)" -msgstr "Überpüfen, ob DATEI XNU ist (Mac-OSX-Kernel)" - -#: grub-core/commands/file.c:104 -msgid "Check if FILE is XNU (Mac OS X kernel) hibernated image" -msgstr "Überpüfen, ob DATEI ein XNU-Ruhezustand-Abbild ist (Mac-OSX-Kernel)" - -#: grub-core/commands/file.c:106 -msgid "Check if FILE is BIOS bootsector" -msgstr "Überpüfen, ob DATEI ein BIOS-Bootsektor ist" - -#. TRANSLATORS: it's a standalone boolean value, -#. opposite of "true". -#: grub-core/commands/file.c:675 grub-core/commands/i386/cmostest.c:63 -#: grub-core/commands/i386/cpuid.c:71 grub-core/commands/keystatus.c:83 -#: grub-core/commands/keystatus.c:87 grub-core/commands/keystatus.c:96 -#: grub-core/commands/test.c:436 grub-core/commands/true.c:39 -#: grub-core/script/execute.c:247 grub-core/script/execute.c:1039 -msgid "false" -msgstr "Falsch" - -#: grub-core/commands/file.c:684 -msgid "OPTIONS FILE" -msgstr "OPTIONEN DATEI" - -#: grub-core/commands/file.c:685 -msgid "Check if FILE is of specified type." -msgstr "Überprüfen, ob DATEI den angegebenen Typ hat." - -#. TRANSLATORS: It means that the specified partition e.g. -#. hd0,msdos1=/dev/sda1 doesn't exist. -#: grub-core/commands/gptsync.c:140 grub-core/kern/disk.c:258 -msgid "no such partition" -msgstr "Keine solche Partition" - -#: grub-core/commands/gptsync.c:240 -#, c-format -msgid "New MBR is written to `%s'\n" -msgstr "Neuer MBR wurde nach »%s« geschrieben\n" - -#: grub-core/commands/gptsync.c:252 -msgid "DEVICE [PARTITION[+/-[TYPE]]] ..." -msgstr "GERÄT [PARTITION[+/-[TYP]]] ..." - -#. TRANSLATORS: MBR type is one-byte partition -#. type id. -#: grub-core/commands/gptsync.c:255 -msgid "" -"Fill hybrid MBR of GPT drive DEVICE. Specified partitions will be a part of " -"hybrid MBR. Up to 3 partitions are allowed. TYPE is an MBR type. + means " -"that partition is active. Only one partition can be active." -msgstr "" -"Hybrid-MBR des GPT-Gerätes GERÄT füllen. Angegebene Partitionen werden Teil " -"des Hybrid-MBR. Bis zu 3 Partitionen sind zulässig. TYP ist ein MBR-Typ. + " -"bedeutet, dass die Partition aktiv ist. Nur eine Partition kann aktiv sein." - -#: grub-core/commands/halt.c:40 -msgid "" -"Halts the computer. This command does not work on all firmware " -"implementations." -msgstr "" -"Diesen Rechner anhalten. Dieser Befehl funktioniert nicht in allen Firmware-" -"Implementationen." - -#: grub-core/commands/hashsum.c:32 -msgid "Specify hash to use." -msgstr "Zu verwendenden Hash angeben." - -#: grub-core/commands/hashsum.c:32 -msgid "HASH" -msgstr "HASH" - -#: grub-core/commands/hashsum.c:33 -msgid "Check hashes of files with hash list FILE." -msgstr "Prüfsummen der Dateien mit Liste in DATEI vergleichen." - -#: grub-core/commands/hashsum.c:35 -msgid "Base directory for hash list." -msgstr "Basisverzeichnis für Hash-Liste." - -#. TRANSLATORS: platform here isn't identifier. It can be translated. -#: grub-core/commands/hashsum.c:35 grub-core/commands/ls.c:150 -#: grub-core/commands/macbless.c:226 grub-core/commands/syslinuxcfg.c:51 -#: grub-core/commands/syslinuxcfg.c:54 grub-core/kern/emu/main.c:106 -#: include/grub/util/install.h:50 include/grub/util/install.h:53 -#: include/grub/util/install.h:56 include/grub/util/install.h:59 -#: util/grub-install.c:250 util/grub-install.c:252 util/grub-install.c:297 -#: util/grub-install.c:299 util/grub-mkimage.c:64 util/grub-mkimage.c:67 -#: util/grub-mknetdir.c:46 util/grub-mknetdir.c:48 util/grub-mkrescue.c:99 -#: util/grub-setup.c:82 util/grub-syslinux2cfg.c:63 util/grub-syslinux2cfg.c:65 -#: util/grub-syslinux2cfg.c:67 util/grub-syslinux2cfg.c:71 -msgid "DIR" -msgstr "VERZ" - -#: grub-core/commands/hashsum.c:37 -msgid "Don't stop after first error." -msgstr "Nach dem ersten Fehler nicht stoppen." - -#: grub-core/commands/hashsum.c:38 -msgid "Uncompress file before checksumming." -msgstr "Datei entpacken, bevor Prüfsumme ermittelt wird." - -#: grub-core/commands/hashsum.c:163 -#, c-format -msgid "%s: READ ERROR\n" -msgstr "%s: LESEFEHLER\n" - -#: grub-core/commands/hashsum.c:177 -#, c-format -msgid "%s: HASH MISMATCH\n" -msgstr "%s: HASH-FEHLER\n" - -#: grub-core/commands/hashsum.c:188 -#, c-format -msgid "%s: OK\n" -msgstr "%s: OK\n" - -#: grub-core/commands/hashsum.c:282 -msgid "-h HASH [-c FILE [-p PREFIX]] [FILE1 [FILE2 ...]]" -msgstr "-h HASH [-c DATEI [-p PRÄFIX]] [DATEI1 [DATEI2 ...]]" - -#. TRANSLATORS: "hash checksum" is just to -#. be a bit more precise, you can treat it as -#. just "hash". -#: grub-core/commands/hashsum.c:287 grub-core/commands/hashsum.c:292 -#: grub-core/commands/hashsum.c:297 grub-core/commands/hashsum.c:302 -#: grub-core/commands/hashsum.c:307 grub-core/commands/hashsum.c:313 -msgid "Compute or check hash checksum." -msgstr "Hash-Prüfsumme berechnen oder prüfen." - -#: grub-core/commands/hashsum.c:290 grub-core/commands/hashsum.c:295 -#: grub-core/commands/hashsum.c:300 grub-core/commands/hashsum.c:305 -#: grub-core/commands/hashsum.c:311 -msgid "[-c FILE [-p PREFIX]] [FILE1 [FILE2 ...]]" -msgstr "[-c DATEI [-p PRÄFIX]] [DATEI1 [DATEI2 ...]]" - -#: grub-core/commands/hdparm.c:33 -msgid "" -"Set Advanced Power Management\n" -"(1=low, ..., 254=high, 255=off)." -msgstr "" -"Erweiterte Energieverwaltung setzen\n" -"(1=niedrig, ..., 254=hoch, 255=aus)." - -#: grub-core/commands/hdparm.c:36 -msgid "Display power mode." -msgstr "Energiemodus anzeigen." - -#: grub-core/commands/hdparm.c:37 -msgid "Freeze ATA security settings until reset." -msgstr "ATA-Sicherheitseinstellungen bis zum Zurücksetzen einfrieren." - -#: grub-core/commands/hdparm.c:39 -msgid "Display SMART health status." -msgstr "Laufwerksstatus mit SMART anzeigen." - -#: grub-core/commands/hdparm.c:40 -msgid "" -"Set Automatic Acoustic Management\n" -"(0=off, 128=quiet, ..., 254=fast)." -msgstr "" -"Automatische Klangverwaltung festlegen\n" -"(0=aus, 128=leise, ..., 254=schnell)." - -#: grub-core/commands/hdparm.c:43 -msgid "" -"Set standby timeout\n" -"(0=off, 1=5s, 2=10s, ..., 240=20m, 241=30m, ...)." -msgstr "" -"Wartezeit bis Standby festlegen\n" -"(0=off, 1=5s, 2=10s, ..., 240=20m, 241=30m, ...)." - -#: grub-core/commands/hdparm.c:46 -msgid "Set drive to standby mode." -msgstr "Laufwerk in den Standby-Modus versetzen." - -#: grub-core/commands/hdparm.c:47 -msgid "Set drive to sleep mode." -msgstr "Laufwerk in den Schlafmodus versetzen." - -#: grub-core/commands/hdparm.c:48 -msgid "Print drive identity and settings." -msgstr "Identität und Einstellungen des Laufwerks ausgeben." - -#: grub-core/commands/hdparm.c:50 -msgid "Show raw contents of ATA IDENTIFY sector." -msgstr "Roh-Inhalt des ATA IDENTIFY-Sektors anzeigen." - -#: grub-core/commands/hdparm.c:52 -msgid "Disable/enable SMART (0/1)." -msgstr "SMART aktivieren/deaktivieren (0/1)." - -#: grub-core/commands/hdparm.c:53 -msgid "Do not print messages." -msgstr "Keine Meldungen ausgeben." - -#: grub-core/commands/hdparm.c:286 grub-core/commands/i386/rdmsr.c:68 -#: grub-core/commands/iorw.c:47 grub-core/commands/legacycfg.c:760 -#: grub-core/commands/legacycfg.c:812 grub-core/commands/macbless.c:190 -#: grub-core/commands/memrw.c:47 grub-core/commands/pgp.c:738 -#: grub-core/commands/pgp.c:792 grub-core/commands/search.c:304 -#: grub-core/commands/search_wrap.c:179 grub-core/commands/setpci.c:243 -#: grub-core/commands/sleep.c:71 grub-core/fs/zfs/zfsinfo.c:279 -#: grub-core/fs/zfs/zfsinfo.c:358 grub-core/gettext/gettext.c:492 -#: grub-core/kern/corecmd.c:65 grub-core/kern/corecmd.c:79 -#: grub-core/mmap/mmap.c:430 grub-core/net/dns.c:713 grub-core/net/dns.c:745 -#: grub-core/net/net.c:694 grub-core/net/net.c:1052 -#: grub-core/normal/context.c:194 grub-core/script/execute.c:131 -#: grub-core/term/gfxterm_background.c:136 -msgid "one argument expected" -msgstr "Ein Argument wurde erwartet" - -#: grub-core/commands/hdparm.c:440 -msgid "[OPTIONS] DISK" -msgstr "[OPTIONEN] DATENTRÄGER" - -#: grub-core/commands/hdparm.c:441 -msgid "Get/set ATA disk parameters." -msgstr "ATA-Datenträgerparameter ermitteln/festlegen." - -#: grub-core/commands/help.c:132 grub-core/lib/arg.c:109 -#: grub-core/lib/gnulib/argp-help.c:1616 -msgid "Usage:" -msgstr "Aufruf:" - -#: grub-core/commands/help.c:146 -msgid "[PATTERN ...]" -msgstr "[MUSTER ...]" - -#: grub-core/commands/help.c:147 -msgid "Show a help message." -msgstr "Eine Hilfemeldung anzeigen." - -#: grub-core/commands/hexdump.c:31 -msgid "Skip offset bytes from the beginning of file." -msgstr "Offset-Bytes am Beginn der Datei überspringen." - -#: grub-core/commands/hexdump.c:33 -msgid "Read only LENGTH bytes." -msgstr "Nur Bytes der Länge LENGTH lesen." - -#: grub-core/commands/hexdump.c:125 -msgid "[OPTIONS] FILE_OR_DEVICE" -msgstr "[OPTIONEN] DATEI_ODER_GERÄT" - -#: grub-core/commands/hexdump.c:126 -msgid "Show raw contents of a file or memory." -msgstr "Roh-Inhalt einer Datei oder des Speichers anzeigen." - -#: grub-core/commands/i386/cmosdump.c:58 -msgid "Show raw dump of the CMOS contents." -msgstr "Roh-Inhalt des CMOS anzeigen." - -#: grub-core/commands/i386/cmostest.c:108 -#: grub-core/commands/i386/cmostest.c:111 -#: grub-core/commands/i386/cmostest.c:114 -msgid "BYTE:BIT" -msgstr "BYTE:BIT" - -#: grub-core/commands/i386/cmostest.c:109 -msgid "Test bit at BYTE:BIT in CMOS." -msgstr "Bit bei BYTE:BIT im CMOS testen." - -#: grub-core/commands/i386/cmostest.c:112 -msgid "Clear bit at BYTE:BIT in CMOS." -msgstr "Bit bei BYTE:BIT im CMOS leeren." - -#. TRANSLATORS: A bit may be either set (1) or clear (0). -#: grub-core/commands/i386/cmostest.c:116 -msgid "Set bit at BYTE:BIT in CMOS." -msgstr "Bit bei BYTE:BIT im CMOS setzen." - -#: grub-core/commands/i386/coreboot/cb_timestamps.c:120 -msgid "Show coreboot boot time statistics." -msgstr "Bootzeit-Statistiken für Coreboot anzeigen." - -#: grub-core/commands/i386/coreboot/cbls.c:137 -msgid "List coreboot tables." -msgstr "Coreboot-Tabellen auflisten." - -#. TRANSLATORS: "(default)" at the end means that this option is used if -#. no argument is specified. -#: grub-core/commands/i386/cpuid.c:36 -msgid "Check if CPU supports 64-bit (long) mode (default)." -msgstr "" -"Überprüfen, ob der Prozessor den 64-Bit-(Lang-)Modus unterstützt (Vorgabe)." - -#: grub-core/commands/i386/cpuid.c:37 -msgid "Check if CPU supports Physical Address Extension." -msgstr "" -"Überprüfen, ob der Prozessor die physikalische Adresserweiterung unterstützt." - -#: grub-core/commands/i386/cpuid.c:119 -msgid "Check for CPU features." -msgstr "Fähigkeiten der CPU überprüfen." - -#. TRANSLATORS: In this file "mapping" refers to a change GRUB makes so if -#. your language doesn't have an equivalent of "mapping" you can -#. use the word like "rerouting". -#. -#: grub-core/commands/i386/pc/drivemap.c:43 -msgid "Show the current mappings." -msgstr "Alle aktuellen Zuordnungen anzeigen." - -#: grub-core/commands/i386/pc/drivemap.c:44 -msgid "Reset all mappings to the default values." -msgstr "Alle Zuordnungen auf Standardwerte zurücksetzen." - -#: grub-core/commands/i386/pc/drivemap.c:45 -msgid "Perform both direct and reverse mappings." -msgstr "Sowohl direkte als auch umgekehrte Zuordnungen ausführen." - -#: grub-core/commands/i386/pc/drivemap.c:184 -msgid "No drives have been remapped" -msgstr "Es wurden keine Laufwerke neu zugeordnet" - -#. TRANSLATORS: This is the header of mapping list. -#. On the left is how OS will see the disks and -#. on the right current GRUB vision. -#: grub-core/commands/i386/pc/drivemap.c:191 -msgid "OS disk #num ------> GRUB/BIOS device" -msgstr "OS Laufwerk #Num ------> GRUB/BIOS-Gerät" - -#: grub-core/commands/i386/pc/drivemap.c:413 -msgid "-l | -r | [-s] grubdev osdisk." -msgstr "-l | -r | [-s] grubdev osdisk." - -#: grub-core/commands/i386/pc/drivemap.c:414 -msgid "Manage the BIOS drive mappings." -msgstr "BIOS-Laufwerkszuordnungen verwalten." - -#: grub-core/commands/i386/pc/halt.c:31 -msgid "Do not use APM to halt the computer." -msgstr "Zum Abschalten des Rechners kein APM verwenden." - -#: grub-core/commands/i386/pc/halt.c:119 -msgid "Halt the system, if possible using APM." -msgstr "Das System anhalten, wenn möglich, mit APM." - -#: grub-core/commands/i386/pc/lsapm.c:75 -msgid "no APM found" -msgstr "Kein APM gefunden" - -#: grub-core/commands/i386/pc/lsapm.c:77 -#, c-format -msgid "" -"Version %u.%u\n" -"32-bit CS = 0x%x, len = 0x%x, offset = 0x%x\n" -"16-bit CS = 0x%x, len = 0x%x\n" -"DS = 0x%x, len = 0x%x\n" -msgstr "" -"Version %u.%u\n" -"32-bit CS = 0x%x, len = 0x%x, offset = 0x%x\n" -"16-bit CS = 0x%x, len = 0x%x\n" -"DS = 0x%x, len = 0x%x\n" - -#: grub-core/commands/i386/pc/lsapm.c:86 -msgid "16-bit protected interface supported\n" -msgstr "Geschütze 16-bit-Schnittstelle unterstützt\n" - -#: grub-core/commands/i386/pc/lsapm.c:87 -msgid "16-bit protected interface unsupported\n" -msgstr "Geschütze 16-bit-Schnittstelle nicht unterstützt\n" - -#: grub-core/commands/i386/pc/lsapm.c:89 -msgid "32-bit protected interface supported\n" -msgstr "Geschütze 32-bit-Schnittstelle unterstützt\n" - -#: grub-core/commands/i386/pc/lsapm.c:90 -msgid "32-bit protected interface unsupported\n" -msgstr "Geschütze 32-bit-Schnittstelle nicht unterstützt\n" - -#: grub-core/commands/i386/pc/lsapm.c:92 -msgid "CPU Idle slows down processor\n" -msgstr "CPU-Leerlauf verlangsamt den Prozessor\n" - -#: grub-core/commands/i386/pc/lsapm.c:93 -msgid "CPU Idle doesn't slow down processor\n" -msgstr "CPU-Leerlauf verlangsamt den Prozessor nicht\n" - -#: grub-core/commands/i386/pc/lsapm.c:95 -msgid "APM disabled\n" -msgstr "APM deaktiviert\n" - -#: grub-core/commands/i386/pc/lsapm.c:95 -msgid "APM enabled\n" -msgstr "APM aktiviert\n" - -#: grub-core/commands/i386/pc/lsapm.c:97 -msgid "APM disengaged\n" -msgstr "APM deaktiviert\n" - -#: grub-core/commands/i386/pc/lsapm.c:97 -msgid "APM engaged\n" -msgstr "APM aktiviert\n" - -#: grub-core/commands/i386/pc/lsapm.c:107 -msgid "Show APM information." -msgstr "APM-Informationen anzeigen." - -#. TRANSLATORS: It's musical notes, not the notes -#. you take. Play command expects arguments which can -#. be either a filename or tempo+notes. -#. This error happens if none is specified. -#: grub-core/commands/i386/pc/play.c:88 -msgid "filename or tempo and notes expected" -msgstr "Dateiname oder Tempo und Noten erwartet" - -#: grub-core/commands/i386/pc/play.c:113 grub-core/commands/i386/pc/play.c:144 -#, c-format -msgid "Invalid tempo in %s" -msgstr "Ungültiges Tempo in %s" - -#: grub-core/commands/i386/pc/play.c:151 grub-core/commands/macbless.c:172 -#: grub-core/fs/archelp.c:260 grub-core/fs/bfs.c:621 grub-core/fs/bfs.c:704 -#: grub-core/fs/btrfs.c:1726 grub-core/fs/btrfs.c:1755 -#: grub-core/fs/btrfs.c:1799 grub-core/fs/btrfs.c:1882 -#: grub-core/fs/btrfs.c:1906 grub-core/fs/fshelp.c:257 grub-core/fs/jfs.c:696 -#: grub-core/fs/minix.c:426 grub-core/fs/ufs.c:544 grub-core/fs/zfs/zfs.c:2083 -#: grub-core/fs/zfs/zfs.c:2095 grub-core/fs/zfs/zfs.c:2301 -#: grub-core/net/http.c:120 -#, c-format -msgid "file `%s' not found" -msgstr "Datei »%s« nicht gefunden" - -#: grub-core/commands/i386/pc/play.c:162 grub-core/commands/i386/pc/play.c:171 -#: grub-core/kern/misc.c:419 grub-core/script/execute.c:138 -#: grub-core/script/execute.c:244 -msgid "unrecognized number" -msgstr "Zahl nicht erkannt" - -#: grub-core/commands/i386/pc/play.c:190 -msgid "FILE | TEMPO [PITCH1 DURATION1] [PITCH2 DURATION2] ... " -msgstr "DATEI | TEMPO [TONHÖHE1 DAUER1] [TONHÖHE2 DAUER2] ... " - -#: grub-core/commands/i386/pc/play.c:191 -msgid "Play a tune." -msgstr "Einen Klang abspielen." - -#: grub-core/commands/i386/pc/sendkey.c:39 -msgid "set numlock mode" -msgstr "Numlock-Modus festlegen" - -#: grub-core/commands/i386/pc/sendkey.c:40 -msgid "set capslock mode" -msgstr "Feststelltasten-Modus festlegen" - -#: grub-core/commands/i386/pc/sendkey.c:41 -msgid "set scrolllock mode" -msgstr "Scrolllock-Modus festlegen" - -#: grub-core/commands/i386/pc/sendkey.c:42 -msgid "set insert mode" -msgstr "Einfügen-Modus festlegen" - -#: grub-core/commands/i386/pc/sendkey.c:43 -msgid "set pause mode" -msgstr "Pause-Modus festlegen" - -#: grub-core/commands/i386/pc/sendkey.c:44 -msgid "press left shift" -msgstr "Linke Umschalttaste drücken" - -#: grub-core/commands/i386/pc/sendkey.c:45 -msgid "press right shift" -msgstr "Rechte Umschalttaste drücken" - -#: grub-core/commands/i386/pc/sendkey.c:46 -msgid "press SysRq" -msgstr "SysRq-Taste drücken" - -#: grub-core/commands/i386/pc/sendkey.c:47 -msgid "press NumLock key" -msgstr "NumLock-Taste drücken" - -#: grub-core/commands/i386/pc/sendkey.c:48 -msgid "press CapsLock key" -msgstr "CapsLock-Taste drücken" - -#: grub-core/commands/i386/pc/sendkey.c:49 -msgid "press ScrollLock key" -msgstr "ScrollLock-Taste drücken" - -#: grub-core/commands/i386/pc/sendkey.c:50 -msgid "press Insert key" -msgstr "Einfg-Taste drücken" - -#: grub-core/commands/i386/pc/sendkey.c:51 -msgid "press left alt" -msgstr "Linke Alt-Taste drücken" - -#: grub-core/commands/i386/pc/sendkey.c:52 -msgid "press right alt" -msgstr "Rechte Alt-Taste drücken" - -#: grub-core/commands/i386/pc/sendkey.c:53 -msgid "press left ctrl" -msgstr "Linke Strg-Taste drücken" - -#: grub-core/commands/i386/pc/sendkey.c:54 -msgid "press right ctrl" -msgstr "Rechte Strg-Taste drücken" - -#: grub-core/commands/i386/pc/sendkey.c:55 -msgid "don't update LED state" -msgstr "LED-Status nicht aktualisieren" - -#: grub-core/commands/i386/pc/sendkey.c:372 -msgid "[KEYSTROKE1] [KEYSTROKE2] ..." -msgstr "[KÜRZEL1] [KÜRZEL2] ..." - -#. TRANSLATORS: It can emulate multiple -#. keypresses. -#: grub-core/commands/i386/pc/sendkey.c:375 -msgid "Emulate a keystroke sequence" -msgstr "Eine Tastatursequenz emulieren" - -#: grub-core/commands/i386/rdmsr.c:37 grub-core/commands/iorw.c:34 -#: grub-core/commands/memrw.c:33 grub-core/commands/setpci.c:73 -msgid "Save read value into variable VARNAME." -msgstr "Gelesenen Wert in Variable VARNAME speichern." - -#: grub-core/commands/i386/rdmsr.c:38 grub-core/commands/iorw.c:35 -#: grub-core/commands/memrw.c:34 grub-core/commands/probe.c:40 -#: grub-core/commands/search_wrap.c:40 grub-core/commands/setpci.c:74 -#: grub-core/commands/tr.c:32 -msgid "VARNAME" -msgstr "VARNAME" - -#: grub-core/commands/i386/rdmsr.c:55 grub-core/commands/i386/rdmsr.c:60 -#: grub-core/commands/i386/rdmsr.c:65 grub-core/commands/i386/wrmsr.c:47 -#: grub-core/commands/i386/wrmsr.c:52 grub-core/commands/i386/wrmsr.c:57 -msgid "unsupported instruction" -msgstr "Nicht unterstützte Anweisung" - -#: grub-core/commands/i386/rdmsr.c:77 grub-core/commands/i386/wrmsr.c:69 -#: grub-core/commands/i386/wrmsr.c:77 grub-core/net/dns.c:727 -msgid "invalid argument" -msgstr "Ungültiger Parameter" - -#: grub-core/commands/i386/rdmsr.c:94 grub-core/commands/memrw.c:125 -#: grub-core/commands/memrw.c:129 grub-core/commands/memrw.c:133 -msgid "ADDR" -msgstr "ADDR" - -#: grub-core/commands/i386/rdmsr.c:95 -msgid "Read a CPU model specific register." -msgstr "Ein für das CPU-Modell spezifisches Register lesen." - -#: grub-core/commands/i386/wrmsr.c:86 -msgid "ADDR VALUE" -msgstr "ADR WERT" - -#: grub-core/commands/i386/wrmsr.c:87 -msgid "Write a value to a CPU model specific register." -msgstr "Einen Wert in das für das CPU-Modell spezifische Register schreiben." - -#: grub-core/commands/ieee1275/suspend.c:34 -msgid "Run `go' to resume GRUB." -msgstr "Geben Sie »go« ein, um GRUB fortzusetzen." - -#: grub-core/commands/ieee1275/suspend.c:45 -msgid "Return to IEEE1275 prompt." -msgstr "Zum IEEE1275-Prompt zurückkehren." - -#: grub-core/commands/iorw.c:123 grub-core/commands/iorw.c:127 -#: grub-core/commands/iorw.c:131 grub-core/gdb/gdb.c:79 -msgid "PORT" -msgstr "PORT" - -#: grub-core/commands/iorw.c:123 -msgid "Read 8-bit value from PORT." -msgstr "8-bit-Wert von PORT lesen." - -#: grub-core/commands/iorw.c:127 -msgid "Read 16-bit value from PORT." -msgstr "16-bit-Wert von PORT lesen." - -#: grub-core/commands/iorw.c:131 -msgid "Read 32-bit value from PORT." -msgstr "32-bit-Wert von PORT lesen." - -#: grub-core/commands/iorw.c:135 grub-core/commands/iorw.c:139 -msgid "PORT VALUE [MASK]" -msgstr "PORT WERT [MASKE]" - -#: grub-core/commands/iorw.c:136 -msgid "Write 8-bit VALUE to PORT." -msgstr "8-bit-Wert nach PORT schreiben." - -#: grub-core/commands/iorw.c:140 -msgid "Write 16-bit VALUE to PORT." -msgstr "16-bit-Wert nach PORT schreiben." - -#: grub-core/commands/iorw.c:143 grub-core/commands/memrw.c:137 -#: grub-core/commands/memrw.c:141 grub-core/commands/memrw.c:145 -msgid "ADDR VALUE [MASK]" -msgstr "ADR WERT [MASKE]" - -#: grub-core/commands/iorw.c:144 -msgid "Write 32-bit VALUE to PORT." -msgstr "32-bit-Wert nach PORT schreiben." - -#: grub-core/commands/keylayouts.c:215 grub-core/commands/loadenv.c:61 -#: grub-core/commands/nativedisk.c:189 grub-core/efiemu/main.c:235 -#: grub-core/font/font.c:428 grub-core/gfxmenu/gfxmenu.c:63 -#: grub-core/kern/device.c:42 grub-core/kern/dl.c:740 -#, c-format -msgid "variable `%s' isn't set" -msgstr "Variable »%s« ist nicht gesetzt" - -#: grub-core/commands/keylayouts.c:301 -msgid "Load a keyboard layout." -msgstr "Eine Tastaturbelegung laden." - -#. TRANSLATORS: "Check" in a sense that if this key is pressed then -#. "true" is returned, otherwise "false". -#: grub-core/commands/keystatus.c:32 -msgid "Check Shift key." -msgstr "Umschalttaste überprüfen." - -#: grub-core/commands/keystatus.c:33 -msgid "Check Control key." -msgstr "Strg-Taste überprüfen." - -#: grub-core/commands/keystatus.c:34 -msgid "Check Alt key." -msgstr "Alt-Taste überprüfen." - -#. TRANSLATORS: there are 3 modifiers. -#: grub-core/commands/keystatus.c:106 -msgid "Check key modifier status." -msgstr "Status der Umschalttasten überprüfen." - -#: grub-core/commands/legacycfg.c:512 grub-core/commands/legacycfg.c:526 -#: grub-core/commands/legacycfg.c:546 grub-core/commands/legacycfg.c:559 -#: grub-core/commands/time.c:43 grub-core/script/function.c:109 -#: util/grub-file.c:100 util/grub-fstest.c:57 util/grub-mount.c:69 -#, c-format -msgid "can't find command `%s'" -msgstr "Befehl »%s« konnte nicht gefunden werden" - -#: grub-core/commands/legacycfg.c:813 grub-core/normal/auth.c:225 -#: util/grub-mkpasswd-pbkdf2.c:139 -msgid "Enter password: " -msgstr "Passwort eingeben:" - -#. TRANSLATORS: "legacy config" means -#. "config as used by grub-legacy". -#: grub-core/commands/legacycfg.c:837 -msgid "Parse legacy config in same context" -msgstr "Alte Konfiguration im gleichen Kontext laden" - -#: grub-core/commands/legacycfg.c:842 -msgid "Parse legacy config in new context" -msgstr "Alte Konfiguration im neuen Kontext laden" - -#: grub-core/commands/legacycfg.c:847 -msgid "Parse legacy config in same context taking only menu entries" -msgstr "Alte Konfiguration im gleichen Kontext laden, nur Menüeinträge" - -#: grub-core/commands/legacycfg.c:852 -msgid "Parse legacy config in new context taking only menu entries" -msgstr "Alte Konfiguration im neuen Kontext laden, nur Menüeinträge" - -#: grub-core/commands/legacycfg.c:856 -msgid "[--no-mem-option] [--type=TYPE] FILE [ARG ...]" -msgstr "[--no-mem-option] [--type=TYP] DATEI [ARG ...]" - -#: grub-core/commands/legacycfg.c:857 -msgid "Simulate grub-legacy `kernel' command" -msgstr "»kernel«-Befehl wie in grub-legacy simulieren" - -#: grub-core/commands/legacycfg.c:861 grub-core/commands/legacycfg.c:865 -msgid "FILE [ARG ...]" -msgstr "DATEI [ARG ...]" - -#: grub-core/commands/legacycfg.c:862 -msgid "Simulate grub-legacy `initrd' command" -msgstr "»initrd«-Befehl wie in grub-legacy simulieren" - -#: grub-core/commands/legacycfg.c:866 -msgid "Simulate grub-legacy `modulenounzip' command" -msgstr "»modulenounzip«-Befehl wie in grub-legacy simulieren" - -#: grub-core/commands/legacycfg.c:870 grub-core/commands/legacycfg.c:875 -msgid "[--md5] PASSWD [FILE]" -msgstr "[--md5] PASSWORT [DATEI]" - -#: grub-core/commands/legacycfg.c:871 -msgid "Simulate grub-legacy `password' command" -msgstr "»password«-Befehl wie in grub-legacy simulieren" - -#: grub-core/commands/legacycfg.c:876 -msgid "Simulate grub-legacy `password' command in menu entry mode" -msgstr "»password«-Befehl von grub-legacy im Menüeintragsmodus simulieren" - -#. TRANSLATORS: This option is used to override default filename -#. for loading and storing environment. -#: grub-core/commands/loadenv.c:37 -msgid "Specify filename." -msgstr "Dateiname angeben." - -#: grub-core/commands/loadenv.c:39 -msgid "Skip signature-checking of the environment file." -msgstr "Die Signaturüberprüfung der Umgebungsdatei überspringen." - -#: grub-core/commands/loadenv.c:451 -msgid "[-f FILE] [-s|--skip-sig] [variable_name_to_whitelist] [...]" -msgstr "[-f DATEI] [-s|--skip-sig] [Zu_überspringender_Variablenname] [...]" - -#: grub-core/commands/loadenv.c:452 -msgid "Load variables from environment block file." -msgstr "Variablen aus Blockdatei der Umgebung laden." - -#: grub-core/commands/loadenv.c:455 -msgid "[-f FILE]" -msgstr "[-f DATEI]" - -#: grub-core/commands/loadenv.c:456 -msgid "List variables from environment block file." -msgstr "Variablen aus Blockdatei der Umgebung auflisten." - -#: grub-core/commands/loadenv.c:460 -msgid "[-f FILE] variable_name [...]" -msgstr "[-f DATEI] Variablenname [...]" - -#: grub-core/commands/loadenv.c:461 -msgid "Save variables to environment block file." -msgstr "Variablen in die Blockdatei speichern." - -#: grub-core/commands/ls.c:40 -msgid "Show a long list with more detailed information." -msgstr "Lange Liste mit ausführlicheren Informationen anzeigen." - -#: grub-core/commands/ls.c:41 -msgid "Print sizes in a human readable format." -msgstr "Größenwerte in menschenlesbarem Format ausgeben." - -#: grub-core/commands/ls.c:42 -msgid "List all files." -msgstr "Alle Dateien auflisten." - -#: grub-core/commands/ls.c:73 -msgid "Network protocols:" -msgstr "Netzwerkprotokolle:" - -#: grub-core/commands/ls.c:295 -msgid "[-l|-h|-a] [FILE ...]" -msgstr "[-l|-h|-a] [DATEI …]" - -#: grub-core/commands/ls.c:296 -msgid "List devices and files." -msgstr "Geräte und Dateien auflisten." - -#: grub-core/commands/lsacpi.c:255 -msgid "Show version 1 tables only." -msgstr "Nur Version-1-Tabellen darstellen." - -#: grub-core/commands/lsacpi.c:256 -msgid "Show version 2 and version 3 tables only." -msgstr "Nur Version-2- und Version-3-Tabellen anzeigen." - -#: grub-core/commands/lsacpi.c:306 -msgid "Show ACPI information." -msgstr "ACPI-Informationen anzeigen." - -#: grub-core/commands/lsmmap.c:31 -msgid "available RAM" -msgstr "verfügbarer RAM" - -#: grub-core/commands/lsmmap.c:32 -msgid "reserved RAM" -msgstr "reservierter RAM" - -#. TRANSLATORS: this refers to memory where ACPI tables are stored -#. and which can be used by OS once it loads ACPI tables. -#: grub-core/commands/lsmmap.c:35 -msgid "ACPI reclaimable RAM" -msgstr "Durch ACPI wiederverwendbarer Speicher" - -#. TRANSLATORS: this refers to memory which ACPI-compliant OS -#. is required to save accross hibernations. -#: grub-core/commands/lsmmap.c:38 -msgid "ACPI non-volatile storage RAM" -msgstr "Durch ACPI beanspruchter Speicherbereich (für Energiesparmodi)" - -#: grub-core/commands/lsmmap.c:39 -msgid "faulty RAM (BadRAM)" -msgstr "Fehlerhafter RAM (BadRAM)" - -#: grub-core/commands/lsmmap.c:40 -msgid "persistent RAM" -msgstr "Persistenter RAM" - -#: grub-core/commands/lsmmap.c:41 -msgid "persistent RAM (legacy)" -msgstr "Persistenter RAM (veraltet)" - -#: grub-core/commands/lsmmap.c:42 -msgid "RAM holding coreboot tables" -msgstr "RAM enthält Coreboot-Tabellen" - -#: grub-core/commands/lsmmap.c:43 -msgid "RAM holding firmware code" -msgstr "RAM enthält Firmware-Code" - -#: grub-core/commands/lsmmap.c:52 -#, c-format -msgid "base_addr = 0x%llx, length = 0x%llx, %s\n" -msgstr "base_addr = 0x%llx, Länge = 0x%llx, %s\n" - -#: grub-core/commands/lsmmap.c:55 -#, c-format -msgid "base_addr = 0x%llx, length = 0x%llx, type = 0x%x\n" -msgstr "base_addr = 0x%llx, Länge = 0x%llx, Typ = 0x%x\n" - -#: grub-core/commands/lsmmap.c:79 -msgid "List memory map provided by firmware." -msgstr "Von Firmware bereitgestellte Speicherzuordnung auflisten." - -#: grub-core/commands/lspci.c:232 -msgid "List PCI devices." -msgstr "PCI-Geräte auflisten." - -#: grub-core/commands/macbless.c:224 -msgid "Bless FILE of HFS or HFS+ partition for intel macs." -msgstr "" - -#: grub-core/commands/macbless.c:228 -msgid "Bless DIR of HFS or HFS+ partition for PPC macs." -msgstr "" - -#: grub-core/commands/memrw.c:125 -msgid "Read 8-bit value from ADDR." -msgstr "8-bit-Wert aus ADDR lesen." - -#: grub-core/commands/memrw.c:129 -msgid "Read 16-bit value from ADDR." -msgstr "16-bit-Wert aus ADDR lesen." - -#: grub-core/commands/memrw.c:133 -msgid "Read 32-bit value from ADDR." -msgstr "32-bit-Wert aus ADDR lesen." - -#: grub-core/commands/memrw.c:138 -msgid "Write 8-bit VALUE to ADDR." -msgstr "8-bit-Wert nach ADDR schreiben." - -#: grub-core/commands/memrw.c:142 -msgid "Write 16-bit VALUE to ADDR." -msgstr "16-bit-Wert nach ADDR schreiben." - -#: grub-core/commands/memrw.c:146 -msgid "Write 32-bit VALUE to ADDR." -msgstr "32-bit-Wert nach ADDR schreiben." - -#: grub-core/commands/menuentry.c:31 -msgid "Menu entry type." -msgstr "Typ des Menüeintrags." - -#: grub-core/commands/menuentry.c:31 grub-core/commands/menuentry.c:38 -#: grub-core/commands/menuentry.c:39 grub-core/gettext/gettext.c:520 -#: util/grub-fstest.c:520 util/grub-install.c:291 util/grub-install.c:304 -#: util/grub-mknetdir.c:51 util/grub-mkrescue.c:109 util/grub-mkrescue.c:110 -#: util/grub-mount.c:453 util/grub-render-label.c:65 -msgid "STRING" -msgstr "ZEICHENKETTE" - -#: grub-core/commands/menuentry.c:33 -msgid "List of users allowed to boot this entry." -msgstr "Liste der Benutzer, die diesen Eintrag booten dürfen." - -#: grub-core/commands/menuentry.c:33 -msgid "USERNAME[,USERNAME]" -msgstr "BENUTZERNAME[,BENUTZERNAME]" - -#: grub-core/commands/menuentry.c:36 -msgid "Keyboard key to quickly boot this entry." -msgstr "Tastenzuordnung für den Schnellstart dieses Eintrags." - -#: grub-core/commands/menuentry.c:36 -msgid "KEYBOARD_KEY" -msgstr "TASTE" - -#: grub-core/commands/menuentry.c:38 -msgid "Use STRING as menu entry body." -msgstr "ZEICHENKETTE als Inhalt des Menüeintrags verwenden." - -#: grub-core/commands/menuentry.c:39 -msgid "Menu entry identifier." -msgstr "Bezeichner des Menüeintrags." - -#. TRANSLATORS: menu entry can either be bootable by anyone or only by -#. handful of users. By default when security is active only superusers can -#. boot a given menu entry. With --unrestricted (this option) -#. anyone can boot it. -#: grub-core/commands/menuentry.c:44 -msgid "This entry can be booted by any user." -msgstr "Dieser Eintrag kann von jedem Benutzer gebootet werden." - -#: grub-core/commands/menuentry.c:323 grub-core/commands/menuentry.c:328 -#: grub-core/tests/test_blockarg.c:46 -msgid "BLOCK" -msgstr "BLOCK" - -#: grub-core/commands/menuentry.c:323 -msgid "Define a menu entry." -msgstr "Einen Menüeintrag definieren." - -#: grub-core/commands/menuentry.c:328 -msgid "Define a submenu." -msgstr "Ein Untermenü definieren." - -#. TRANSLATORS: this is module list header. Name -#. is module name, Ref Count is a reference counter -#. (how many modules or open descriptors use it). -#. Dependencies are the other modules it uses. -#. -#: grub-core/commands/minicmd.c:162 -msgid "Name\tRef Count\tDependencies\n" -msgstr "Name\tReferenzzähler\tAbhängigkeiten\n" - -#: grub-core/commands/minicmd.c:201 -msgid "Show this message." -msgstr "Diese Meldung anzeigen." - -#: grub-core/commands/minicmd.c:204 -msgid "ADDR [SIZE]" -msgstr "ADRESSE [GRÖßE]" - -#: grub-core/commands/minicmd.c:204 -msgid "Show memory contents." -msgstr "Inhalt des Speichers anzeigen." - -#: grub-core/commands/minicmd.c:207 grub-core/kern/corecmd.c:188 -#: util/grub-install.c:275 -msgid "MODULE" -msgstr "MODUL" - -#: grub-core/commands/minicmd.c:207 -msgid "Remove a module." -msgstr "Ein Modul entfernen." - -#: grub-core/commands/minicmd.c:210 -msgid "Show loaded modules." -msgstr "Geladene Module anzeigen." - -#: grub-core/commands/minicmd.c:213 -msgid "Exit from GRUB." -msgstr "GRUB beenden." - -#: grub-core/commands/mips/loongson/lsspd.c:42 -msgid "No CS5536 found" -msgstr "Kein CS5536 gefunden" - -#: grub-core/commands/mips/loongson/lsspd.c:45 -#, c-format -msgid "CS5536 at %d:%d.%d\n" -msgstr "CS5536 in %d:%d.%d\n" - -#. TRANSLATORS: System management bus is often used to access components like -#. RAM (info only, not data) or batteries. I/O space is where in memory -#. its ports are. -#: grub-core/commands/mips/loongson/lsspd.c:55 -#, c-format -msgid "System management bus controller I/O space is at 0x%x\n" -msgstr "" -"Ein-/Ausgabebereich des Systemverwaltungsbus-Controllers ist bei 0x%x\n" - -#. TRANSLATORS: it's shown in a report in a way -#. like number 1: ... number 2: ... -#. -#: grub-core/commands/mips/loongson/lsspd.c:66 -#, c-format -msgid "RAM slot number %d\n" -msgstr "RAM-Slotnummer %d\n" - -#: grub-core/commands/mips/loongson/lsspd.c:73 -#, c-format -msgid "Written SPD bytes: %d B.\n" -msgstr "Geschriebene SPD-Bytes: %d B.\n" - -#: grub-core/commands/mips/loongson/lsspd.c:74 -#, c-format -msgid "Total flash size: %d B.\n" -msgstr "Flash-Gesamtgröße: %d B.\n" - -#: grub-core/commands/mips/loongson/lsspd.c:79 -msgid "Memory type: DDR2." -msgstr "Speichertyp: DDR2." - -#: grub-core/commands/mips/loongson/lsspd.c:83 -#, c-format -msgid "Part no: %s.\n" -msgstr "Teil-Nummer: %s.\n" - -#: grub-core/commands/mips/loongson/lsspd.c:86 -msgid "Memory type: Unknown." -msgstr "Speichertyp: Unbekannt." - -#: grub-core/commands/mips/loongson/lsspd.c:97 -msgid "Print Memory information." -msgstr "Speicher-Informationen anzeigen." - -#: grub-core/commands/nativedisk.c:118 grub-core/commands/probe.c:118 -#: grub-core/commands/probe.c:124 util/grub-probe.c:450 -#, c-format -msgid "%s does not support UUIDs" -msgstr "%s unterstützt keine UUIDs" - -#: grub-core/commands/nativedisk.c:325 -msgid "[MODULE1 MODULE2 ...]" -msgstr "[MODUL1 MODUL2 …]" - -#: grub-core/commands/nativedisk.c:326 -msgid "" -"Switch to native disk drivers. If no modules are specified default set (pata," -"ahci,usbms,ohci,uhci,ehci) is used" -msgstr "" -"Zu nativen Festplattentreibern wechseln. Falls keine Module angegeben " -"werden, wird die Vorgabe verwendet (pata,ahci,usbms,ohci,uhci,ehci)." - -#: grub-core/commands/parttool.c:40 -msgid "" -"Perform COMMANDS on partition.\n" -"Use `parttool PARTITION help' for the list of available commands." -msgstr "" -"BEFEHLE auf Partition ausführen.\n" -"Rufen Sie »parttool PARTITION help« auf, um eine\n" -"Liste der verfügbaren Befehle zu erhalten." - -#: grub-core/commands/parttool.c:123 -msgid "=VAL" -msgstr "=WERT" - -#: grub-core/commands/parttool.c:136 -#, c-format -msgid "Sorry, no parttool is available for %s\n" -msgstr "Für %s ist leider kein Partitionierungswerkzeug verfügbar\n" - -#: grub-core/commands/parttool.c:288 grub-core/lib/arg.c:285 -#: grub-core/lib/arg.c:351 -#, c-format -msgid "unknown argument `%s'" -msgstr "Unbekanntes Argument »%s«" - -#: grub-core/commands/parttool.c:344 -msgid "PARTITION COMMANDS" -msgstr "PARTITION BEFEHLE" - -#: grub-core/commands/password.c:85 -msgid "USER PASSWORD" -msgstr "BENUTZERPASSWORT" - -#: grub-core/commands/password.c:86 -msgid "Set user password (plaintext). Unrecommended and insecure." -msgstr "Benutzerpasswort (Klartext) festlegen. Nicht empfohlen, da unsicher." - -#. TRANSLATORS: it means that the string which -#. was supposed to be a password hash doesn't -#. have a correct format, not to password -#. mismatch. -#: grub-core/commands/password_pbkdf2.c:98 -#: grub-core/commands/password_pbkdf2.c:115 -#: grub-core/commands/password_pbkdf2.c:123 -#: grub-core/commands/password_pbkdf2.c:150 -#: grub-core/commands/password_pbkdf2.c:179 -msgid "invalid PBKDF2 password" -msgstr "Ungültiges PBKDF2-Passwort" - -#: grub-core/commands/password_pbkdf2.c:202 -msgid "USER PBKDF2_PASSWORD" -msgstr "BENUTZER PBKDF2_PASSWORT" - -#: grub-core/commands/password_pbkdf2.c:203 -msgid "Set user password (PBKDF2). " -msgstr "Benutzerpasswort festlegen (PBKDF2). " - -#: grub-core/commands/pcidump.c:39 grub-core/commands/setpci.c:69 -msgid "Select device by vendor and device IDs." -msgstr "Gerät nach Anbieter und Gerätekennungen auswählen." - -#: grub-core/commands/pcidump.c:40 grub-core/commands/setpci.c:70 -msgid "[vendor]:[device]" -msgstr "[Anbieter]:[Gerät]" - -#: grub-core/commands/pcidump.c:41 grub-core/commands/setpci.c:71 -msgid "Select device by its position on the bus." -msgstr "Gerät nach dessen Position auf dem Bus auswählen." - -#: grub-core/commands/pcidump.c:42 grub-core/commands/setpci.c:72 -msgid "[bus]:[slot][.func]" -msgstr "[bus]:[slot][.func]" - -#: grub-core/commands/pcidump.c:109 grub-core/commands/pcidump.c:138 -#: grub-core/commands/setpci.c:183 grub-core/commands/setpci.c:214 -#: grub-core/fs/zfs/zfs.c:3794 grub-core/kern/emu/hostdisk.c:458 -#: grub-core/kern/emu/hostdisk.c:473 grub-core/kern/file.c:44 -#, c-format -msgid "missing `%c' symbol" -msgstr "Symbol »%c« fehlt" - -#: grub-core/commands/pcidump.c:168 -msgid "[-s POSITION] [-d DEVICE]" -msgstr "[-s POSITION] [-d GERÄT]" - -#: grub-core/commands/pcidump.c:169 -msgid "Show raw dump of the PCI configuration space." -msgstr "Roh-Ausgabe des PCI-Konfigurationsraums anzeigen." - -#: grub-core/commands/pgp.c:45 -msgid "Skip signature-checking of the public key file." -msgstr "Die Signaturüberprüfung der öffentlichen Schlüsseldatei überspringen." - -#. TRANSLATORS: it's about GNUPG signatures. -#: grub-core/commands/pgp.c:71 grub-core/commands/pgp.c:81 -#: grub-core/commands/pgp.c:86 grub-core/commands/pgp.c:96 -#: grub-core/commands/pgp.c:103 grub-core/commands/pgp.c:107 -#: grub-core/commands/pgp.c:114 grub-core/commands/pgp.c:119 -#: grub-core/commands/pgp.c:124 grub-core/commands/pgp.c:128 -#: grub-core/commands/pgp.c:268 grub-core/commands/pgp.c:276 -#: grub-core/commands/pgp.c:281 grub-core/commands/pgp.c:289 -#: grub-core/commands/pgp.c:320 grub-core/commands/pgp.c:327 -#: grub-core/commands/pgp.c:332 grub-core/commands/pgp.c:342 -#: grub-core/commands/pgp.c:468 grub-core/commands/pgp.c:471 -#: grub-core/commands/pgp.c:474 grub-core/commands/pgp.c:477 -#: grub-core/commands/pgp.c:484 grub-core/commands/pgp.c:490 -#: grub-core/commands/pgp.c:665 -msgid "bad signature" -msgstr "Falsche Signatur" - -#. TRANSLATORS: %08x is 32-bit key id. -#: grub-core/commands/pgp.c:636 grub-core/commands/pgp.c:812 -#, c-format -msgid "public key %08x not found" -msgstr "Öffentlicher Schlüssel %08x wurde nicht gefunden" - -#: grub-core/commands/pgp.c:651 grub-core/disk/diskfilter.c:772 -#: grub-core/disk/diskfilter.c:782 grub-core/fs/ntfs.c:404 -#: grub-core/fs/zfs/zfs.c:1933 grub-core/normal/menu.c:428 -#, c-format -msgid "module `%s' isn't loaded" -msgstr "Modul »%s« ist nicht geladen" - -#: grub-core/commands/pgp.c:994 -msgid "[-s|--skip-sig] FILE SIGNATURE_FILE [PUBKEY_FILE]" -msgstr "[-s|--skip-sig] DATEI SIGNATURDATEI [SCHLÜSSELDATEI]" - -#: grub-core/commands/pgp.c:995 -msgid "Verify detached signature." -msgstr "Angehängte Signatur überprüfen." - -#: grub-core/commands/pgp.c:998 -msgid "[-s|--skip-sig] PUBKEY_FILE" -msgstr "[-s|--skip-sig] SCHLÜSSEL_DATEI" - -#: grub-core/commands/pgp.c:999 -msgid "Add PUBKEY_FILE to trusted keys." -msgstr "SCHLÜSSEL_DATEI zu vertrauenswürdigen Schlüsseln hinzufügen." - -#: grub-core/commands/pgp.c:1003 -msgid "Show the list of trusted keys." -msgstr "Vertrauenswürdige Schlüssel auflisten." - -#: grub-core/commands/pgp.c:1005 -msgid "PUBKEY_ID" -msgstr "SCHLÜSSEL_ID" - -#: grub-core/commands/pgp.c:1006 -msgid "Remove PUBKEY_ID from trusted keys." -msgstr "SCHLÜSSEL_ID aus den vertrauenswürdigen Schlüsseln entfernen." - -#: grub-core/commands/probe.c:40 grub-core/commands/tr.c:32 -msgid "Set a variable to return value." -msgstr "Eine Variable auf den Rückgabewert setzen." - -#. TRANSLATORS: It's a driver that is currently in use to access -#. the diven disk. -#: grub-core/commands/probe.c:43 -msgid "Determine driver." -msgstr "Treiber ermitteln." - -#: grub-core/commands/probe.c:44 -msgid "Determine partition map type." -msgstr "Typ der Partitionszuordnung bestimmen." - -#: grub-core/commands/probe.c:45 -msgid "Determine filesystem type." -msgstr "Dateisystemtyp ermitteln." - -#: grub-core/commands/probe.c:46 -msgid "Determine filesystem UUID." -msgstr "Dateisystem-UUID ermitteln." - -#: grub-core/commands/probe.c:47 -msgid "Determine filesystem label." -msgstr "Dateisystembezeichnung ermitteln." - -#: grub-core/commands/probe.c:139 grub-core/commands/probe.c:146 -#: util/grub-probe.c:462 -#, c-format -msgid "filesystem `%s' does not support labels" -msgstr "Dateisystem »%s« unterstützt keine Labels" - -#: grub-core/commands/probe.c:165 grub-core/fs/zfs/zfsinfo.c:430 -#: grub-core/loader/i386/bsd.c:169 util/grub-setup.c:223 -msgid "DEVICE" -msgstr "GERÄT" - -#: grub-core/commands/probe.c:166 -msgid "Retrieve device info." -msgstr "Info zum Gerät holen." - -#: grub-core/commands/read.c:85 -msgid "[ENVVAR]" -msgstr "[ENVVAR]" - -#: grub-core/commands/read.c:86 -msgid "Set variable with user input." -msgstr "Variable durch Benutzereingabe setzen." - -#: grub-core/commands/reboot.c:40 -msgid "Reboot the computer." -msgstr "Den Rechner neu starten." - -#. TRANSLATORS: in regexp you can mark some -#. groups with parentheses. These groups are -#. then numbered and you can save some of -#. them in variables. In other programs -#. those components aree often referenced with -#. back slash, e.g. \1. Compare -#. sed -e 's,\([a-z][a-z]*\),lowercase=\1,g' -#. The whole matching component is saved in VARNAME, not its number. -#. -#: grub-core/commands/regexp.c:44 -msgid "Store matched component NUMBER in VARNAME." -msgstr "Entsprechende Komponenten-NUMMER in VARNAME speichern." - -#: grub-core/commands/regexp.c:45 -msgid "[NUMBER:]VARNAME" -msgstr "[ZAHL:]VARNAME" - -#. TRANSLATORS: This are two arguments. So it's -#. two separate units to translate and pay -#. attention not to reverse them. -#: grub-core/commands/regexp.c:157 -msgid "REGEXP STRING" -msgstr "REGEXP ZEICHENKETTE" - -#: grub-core/commands/regexp.c:158 -msgid "Test if REGEXP matches STRING." -msgstr "Prüfen, ob REGEXP auf ZEICHENKETTE passt." - -#: grub-core/commands/search.c:324 -msgid "NAME [VARIABLE] [HINTS]" -msgstr "NAME [VARIABLE] [HINTWEISE]" - -#: grub-core/commands/search_file.c:4 -msgid "" -"Search devices by file. If VARIABLE is specified, the first device found is " -"set to a variable." -msgstr "" -"Anhand von Dateien nach Geräten suchen. Falls VARIABLE angegeben wird, dann " -"wird das erste gefundene Gerät zum Setzen der Variable verwendet." - -#: grub-core/commands/search_label.c:4 -msgid "" -"Search devices by label. If VARIABLE is specified, the first device found is " -"set to a variable." -msgstr "" -"Anhand von Bezeichnungen nach Geräten suchen. Falls VARIABLE angegeben wird, " -"dann wird das erste gefundene Gerät zum Setzen der Variable verwendet." - -#: grub-core/commands/search_uuid.c:4 -msgid "" -"Search devices by UUID. If VARIABLE is specified, the first device found is " -"set to a variable." -msgstr "" -"Anhand von UUIDs nach Geräten suchen. Falls VARIABLE angegeben wird, dann " -"wird das erste gefundene Gerät zum Setzen der Variable verwendet." - -#: grub-core/commands/search_wrap.c:34 -msgid "Search devices by a file." -msgstr "Geräte nach Datei durchsuchen." - -#: grub-core/commands/search_wrap.c:35 -msgid "Search devices by a filesystem label." -msgstr "Geräte nach Dateisystembezeichnung durchsuchen." - -#: grub-core/commands/search_wrap.c:37 -msgid "Search devices by a filesystem UUID." -msgstr "Geräte nach Dateisystem-UUID durchsuchen." - -#: grub-core/commands/search_wrap.c:40 -msgid "Set a variable to the first device found." -msgstr "Eine Variable auf das erste gefundene Gerät setzen." - -#: grub-core/commands/search_wrap.c:42 -msgid "Do not probe any floppy drive." -msgstr "Kein Diskettenlaufwerk überprüfen." - -#: grub-core/commands/search_wrap.c:44 -msgid "" -"First try the device HINT. If HINT ends in comma, also try subpartitions" -msgstr "" -"Zuerst das Gerät HINWEIS versuchen. Falls HINWEIS mit Komma endet, auch " -"Unterpartitionen versuchen" - -#: grub-core/commands/search_wrap.c:45 grub-core/commands/search_wrap.c:49 -#: grub-core/commands/search_wrap.c:53 grub-core/commands/search_wrap.c:57 -#: grub-core/commands/search_wrap.c:61 grub-core/commands/search_wrap.c:65 -msgid "HINT" -msgstr "HINWEIS" - -#: grub-core/commands/search_wrap.c:47 -msgid "" -"First try the device HINT if currently running on IEEE1275. If HINT ends in " -"comma, also try subpartitions" -msgstr "" -"Zuerst das Gerät HINWEIS versuchen (bei IEEE1275). Falls HINWEIS mit Komma " -"endet, auch Unterpartitionen versuchen" - -#: grub-core/commands/search_wrap.c:51 -msgid "" -"First try the device HINT if currently running on BIOS. If HINT ends in " -"comma, also try subpartitions" -msgstr "" -"Zuerst das Gerät HINWEIS versuchen (für aktuell laufendes BIOS). Falls " -"HINWEIS mit Komma endet, auch Unterpartitionen versuchen" - -#: grub-core/commands/search_wrap.c:55 -msgid "" -"First try the device HINT if direct hardware access is supported. If HINT " -"ends in comma, also try subpartitions" -msgstr "" -"Zuerst das Gerät HINWEIS versuchen, falls direkter Hardwarezugriff " -"unterstützt wird. Falls HINWEIS mit Komma endet, auch Unterpartitionen " -"versuchen" - -#: grub-core/commands/search_wrap.c:59 -msgid "" -"First try the device HINT if currently running on EFI. If HINT ends in " -"comma, also try subpartitions" -msgstr "" -"Zuerst das Gerät HINWEIS versuchen (für aktuell laufendes EFI). Falls " -"HINWEIS mit Komma endet, auch Unterpartitionen versuchen" - -#: grub-core/commands/search_wrap.c:63 -msgid "" -"First try the device HINT if currently running on ARC. If HINT ends in " -"comma, also try subpartitions" -msgstr "" -"Zuerst das Gerät HINWEIS versuchen, falls aktuell laufende ARC. Falls " -"HINWEIS mit Komma endet, auch Unterpartitionen versuchen" - -#: grub-core/commands/search_wrap.c:207 -msgid "[-f|-l|-u|-s|-n] [--hint HINT [--hint HINT] ...] NAME" -msgstr "[-f|-l|-u|-s|-n] [--hint HINWEIS [--hint HINT] ...] NAME" - -#: grub-core/commands/search_wrap.c:209 -msgid "" -"Search devices by file, filesystem label or filesystem UUID. If --set is " -"specified, the first device found is set to a variable. If no variable name " -"is specified, `root' is used." -msgstr "" -"Anhand von Dateien, Dateisystembezeichnungen oder Dateisystem-UUIDs nach " -"Geräten suchen. Falls --set angegeben wird, dann wird das erste gefundene " -"Gerät zum Setzen der Variable verwendet. Falls keine Variable angegeben " -"wird, dann wird »root« verwendet" - -#: grub-core/commands/setpci.c:132 -#, c-format -msgid "Register %x of %x:%02x.%x is %x\n" -msgstr "Register %x von %x:%02x.%x ist %x\n" - -#: grub-core/commands/setpci.c:333 -msgid "[-s POSITION] [-d DEVICE] [-v VAR] REGISTER[=VALUE[:MASK]]" -msgstr "[-s POSITION] [-d GERÄT] [-v VAR] REGISTER[=WERT[:MASKE]]" - -#: grub-core/commands/setpci.c:335 -msgid "Manipulate PCI devices." -msgstr "PCI-Geräte bearbeiten." - -#: grub-core/commands/sleep.c:32 -msgid "Verbose countdown." -msgstr "Ausführlicher Countdown." - -#: grub-core/commands/sleep.c:33 -msgid "Allow to interrupt with ESC." -msgstr "Unterbrechung mit ESC erlauben." - -#: grub-core/commands/sleep.c:109 -msgid "NUMBER_OF_SECONDS" -msgstr "ANZAHL_DER_SEKUNDEN" - -#: grub-core/commands/sleep.c:110 -msgid "Wait for a specified number of seconds." -msgstr "Die angegebene Anzahl an Sekunden warten." - -#: grub-core/commands/syslinuxcfg.c:50 util/grub-syslinux2cfg.c:66 -msgid "root directory of the syslinux disk [default=/]." -msgstr "Wurzelverzeichnis der Syslinux-Disk [Vorgabe=/]." - -#: grub-core/commands/syslinuxcfg.c:53 util/grub-syslinux2cfg.c:72 -msgid "" -"current directory of syslinux [default is parent directory of input file]." -msgstr "" -"Aktuelles Verzeichnis für Syslinux [Vorgabe ist das übergeordnete " -"Verzeichnis der Eingabedatei]." - -#: grub-core/commands/syslinuxcfg.c:55 util/grub-syslinux2cfg.c:75 -msgid "assume input is an isolinux configuration file." -msgstr "Eingabe als Isolinux-Konfigurationsdatei auffassen." - -#: grub-core/commands/syslinuxcfg.c:56 util/grub-syslinux2cfg.c:76 -msgid "assume input is a pxelinux configuration file." -msgstr "Eingabe als Pxelinux-Konfigurationsdatei auffassen." - -#: grub-core/commands/syslinuxcfg.c:57 util/grub-syslinux2cfg.c:77 -msgid "assume input is a syslinux configuration file." -msgstr "Eingabe als Syslinux-Konfigurationsdatei auffassen." - -#. TRANSLATORS: "syslinux config" means -#. "config as used by syslinux". -#: grub-core/commands/syslinuxcfg.c:189 -msgid "Execute syslinux config in same context" -msgstr "Syslinux-Konfiguration im gleichen Kontext laden" - -#: grub-core/commands/syslinuxcfg.c:195 -msgid "Execute syslinux config in new context" -msgstr "Syslinux-Konfiguration im neuen Kontext laden" - -#: grub-core/commands/syslinuxcfg.c:201 -msgid "Execute syslinux config in same context taking only menu entries" -msgstr "Syslinux-Konfiguration im gleichen Kontext laden, nur Menüeinträge" - -#: grub-core/commands/syslinuxcfg.c:207 -msgid "Execute syslinux config in new context taking only menu entries" -msgstr "Syslinux-Konfiguration im neuen Kontext laden, nur Menüeinträge" - -#: grub-core/commands/terminal.c:90 -msgid "no terminal specified" -msgstr "Kein Terminal angegeben" - -#: grub-core/commands/terminal.c:112 grub-core/commands/terminal.c:139 -#, c-format -msgid "terminal `%s' isn't found" -msgstr "Terminal »%s« wurde nicht gefunden" - -#: grub-core/commands/terminal.c:244 -msgid "Active input terminals:" -msgstr "Aktive Eingabeterminals:" - -#: grub-core/commands/terminal.c:245 -msgid "Available input terminals:" -msgstr "Verfügbare Eingabeterminals:" - -#: grub-core/commands/terminal.c:261 -msgid "Active output terminals:" -msgstr "Aktive Ausgabeterminals:" - -#: grub-core/commands/terminal.c:262 -msgid "Available output terminals:" -msgstr "Verfügbare Ausgabeterminals:" - -#: grub-core/commands/terminal.c:271 grub-core/commands/terminal.c:276 -msgid "[--append|--remove] [TERMINAL1] [TERMINAL2] ..." -msgstr "[--append|--remove] [TERMINAL1] [TERMINAL2] ..." - -#: grub-core/commands/terminal.c:273 -msgid "List or select an input terminal." -msgstr "Eingabeterminal listen oder wählen." - -#: grub-core/commands/terminal.c:278 -msgid "List or select an output terminal." -msgstr "Ausgabeterminal listen oder wählen." - -#: grub-core/commands/test.c:444 -msgid "EXPRESSION ]" -msgstr "AUSDRUCK ]" - -#: grub-core/commands/test.c:444 grub-core/commands/test.c:447 -msgid "Evaluate an expression." -msgstr "Einen Ausdruck auswerten." - -#: grub-core/commands/test.c:447 -msgid "EXPRESSION" -msgstr "AUSDRUCK" - -#: grub-core/commands/testload.c:164 -msgid "Load the same file in multiple ways." -msgstr "Gleiche Datei mehrfach laden." - -#: grub-core/commands/testspeed.c:35 -msgid "Specify size for each read operation" -msgstr "Größe für jeden Lesevorgang angeben" - -#: grub-core/commands/testspeed.c:58 -msgid "invalid block size" -msgstr "Ungültige Blockgröße" - -#: grub-core/commands/testspeed.c:80 -#, c-format -msgid "File size: %s\n" -msgstr "Dateigröße: %s\n" - -#: grub-core/commands/testspeed.c:83 -#, c-format -msgid "Elapsed time: %d.%03d s \n" -msgstr "Verstrichene Zeit: %d.%03d s \n" - -#: grub-core/commands/testspeed.c:92 -#, c-format -msgid "Speed: %s \n" -msgstr "Geschwindigkeit: %s \n" - -#: grub-core/commands/testspeed.c:107 -msgid "[-s SIZE] FILENAME" -msgstr "[-s GRÖßE] DATEINAME" - -#: grub-core/commands/testspeed.c:108 -msgid "Test file read speed." -msgstr "Dateilesegeschwindigkeit testen." - -#: grub-core/commands/time.c:38 grub-core/script/execute.c:974 -msgid "no command is specified" -msgstr "Kein Befehl angegeben" - -#: grub-core/commands/time.c:50 -#, c-format -msgid "Elapsed time: %d.%03d seconds \n" -msgstr "Verstrichene Zeit: %d.%03d Sekunden \n" - -#: grub-core/commands/time.c:61 -msgid "COMMAND [ARGS]" -msgstr "BEFEHL [ARGUMENTE]" - -#: grub-core/commands/time.c:62 -msgid "Measure time used by COMMAND" -msgstr "Von BEFEHL benötigte Zeit messen" - -#: grub-core/commands/tr.c:33 -msgid "Translate to upper case." -msgstr "In Großschreibung umwandeln." - -#: grub-core/commands/tr.c:34 -msgid "Translate to lower case." -msgstr "In Kleinschreibung umwandeln." - -#: grub-core/commands/tr.c:119 -msgid "[OPTIONS] [SET1] [SET2] [STRING]" -msgstr "[OPTIONEN] [MENGE1] [MENGE2] [ZEICHENKETTE]" - -#: grub-core/commands/tr.c:120 -msgid "Translate SET1 characters to SET2 in STRING." -msgstr "Zeichen der MENGE1 in Zeichen der MENGE2 in ZEICHENKETTE übersetzen." - -#. TRANSLATORS: it's a command description. -#: grub-core/commands/true.c:50 -msgid "Do nothing, successfully." -msgstr "Nichts tun, erfolgreich." - -#. TRANSLATORS: it's a command description. -#: grub-core/commands/true.c:54 -msgid "Do nothing, unsuccessfully." -msgstr "Nichts tun, nicht erfolgreich." - -#: grub-core/commands/usbtest.c:221 -msgid "Test USB support." -msgstr "USB-Unterstützung überprüfen." - -#: grub-core/commands/verifiers.c:120 -#, c-format -msgid "verification requested but nobody cares: %s" -msgstr "Verifizierung ist erforderlich, aber niemand nimmt Notiz davon: %s" - -#: grub-core/commands/verifiers.c:140 -msgid "big file signature isn't implemented yet" -msgstr "Große Dateisignatur ist noch nicht implementiert" - -#: grub-core/commands/videoinfo.c:61 -msgid "Text-only " -msgstr "Nur Text" - -#. TRANSLATORS: "Direct color" is a mode when the color components -#. are written dirrectly into memory. -#: grub-core/commands/videoinfo.c:66 -#, c-format -msgid "Direct color, mask: %d/%d/%d/%d pos: %d/%d/%d/%d" -msgstr "Direkte Farbe, Maske: %d/%d/%d/%d Pos.: %d/%d/%d/%d" - -#. TRANSLATORS: In "paletted color" mode you write the index of the color -#. in the palette. Synonyms include "packed pixel". -#: grub-core/commands/videoinfo.c:78 -msgid "Paletted " -msgstr "Palettiert " - -#: grub-core/commands/videoinfo.c:80 -msgid "YUV " -msgstr "YUV " - -#. TRANSLATORS: "Planar" is the video memory where you have to write -#. in several different banks "plans" to control the different color -#. components of the same pixel. -#: grub-core/commands/videoinfo.c:85 -msgid "Planar " -msgstr "Planar " - -#: grub-core/commands/videoinfo.c:87 -msgid "Hercules " -msgstr "Hercules " - -#: grub-core/commands/videoinfo.c:89 -msgid "CGA " -msgstr "CGA " - -#. TRANSLATORS: Non-chain 4 is a 256-color planar -#. (unchained) video memory mode. -#: grub-core/commands/videoinfo.c:93 -msgid "Non-chain 4 " -msgstr "Non-chain 4 " - -#: grub-core/commands/videoinfo.c:95 -msgid "Monochrome " -msgstr "Schwarzweiß " - -#: grub-core/commands/videoinfo.c:97 -msgid "Unknown video mode " -msgstr "Unbekannter Videomodus" - -#: grub-core/commands/videoinfo.c:111 -msgid " EDID checksum invalid" -msgstr " EDID-Prüfsumme ist ungültig" - -#: grub-core/commands/videoinfo.c:116 -#, c-format -msgid " EDID version: %u.%u\n" -msgstr " EDID-Version: %u.%u\n" - -#: grub-core/commands/videoinfo.c:120 -#, c-format -msgid " Preferred mode: %ux%u\n" -msgstr " Bevorzugter Modus: %ux%u\n" - -#: grub-core/commands/videoinfo.c:123 -msgid " No preferred mode available\n" -msgstr " Kein bevorzugter Modus verfügbar\n" - -#: grub-core/commands/videoinfo.c:146 grub-core/video/video.c:490 -#: grub-core/video/video.c:498 grub-core/video/video.c:509 -#: grub-core/video/video.c:520 grub-core/video/video.c:528 -#, c-format -msgid "invalid video mode specification `%s'" -msgstr "Ungültige Angabe »%s« des Grafikmodus" - -#: grub-core/commands/videoinfo.c:168 -msgid "List of supported video modes:" -msgstr "Liste der unterstützten Videomodi:" - -#: grub-core/commands/videoinfo.c:169 -msgid "Legend: mask/position=red/green/blue/reserved" -msgstr "Legende: Maske/Position=Rot/Grün/Blau/Reserviert" - -#: grub-core/commands/videoinfo.c:176 -#, c-format -msgid "Adapter `%s':\n" -msgstr "Adapter »%s«:\n" - -#: grub-core/commands/videoinfo.c:180 -msgid " No info available" -msgstr " Keine Informationen verfügbar" - -#: grub-core/commands/videoinfo.c:198 -msgid " Failed to initialize video adapter" -msgstr " Grafikadapter konnte nicht initialisiert werden" - -#. TRANSLATORS: "x" has to be entered in, -#. like an identifier, so please don't -#. use better Unicode codepoints. -#: grub-core/commands/videoinfo.c:239 grub-core/commands/videoinfo.c:248 -msgid "[WxH[xD]]" -msgstr "[BxH[xT]]" - -#: grub-core/commands/videoinfo.c:240 grub-core/commands/videoinfo.c:249 -msgid "" -"List available video modes. If resolution is given show only modes matching " -"it." -msgstr "" -"Verfügbare Grafikmodi auflisten. Falls Auflösung angegeben ist, nur Modi " -"dieser Auflösung anzeigen." - -#. TRANSLATORS: "x" has to be entered in, -#. like an identifier, so please don't -#. use better Unicode codepoints. -#: grub-core/commands/videotest.c:225 -msgid "[WxH]" -msgstr "[BxH]" - -#. TRANSLATORS: Here, on the other hand, it's -#. nicer to use unicode cross instead of x. -#: grub-core/commands/videotest.c:228 -msgid "Test video subsystem in mode WxH." -msgstr "Das Video-Subsystem im Modus BxH überprüfen." - -#: grub-core/commands/videotest.c:231 -msgid "Test video subsystem." -msgstr "Das Video-Subsystem überprüfen." - -#: grub-core/commands/xen/lsxen.c:80 grub-core/commands/xen/lsxen.c:82 -msgid "[DIR]" -msgstr "[VERZ]" - -#: grub-core/commands/xen/lsxen.c:81 grub-core/commands/xen/lsxen.c:83 -msgid "List Xen storage." -msgstr "Xen-Speicherung auflisten." - -#. TRANSLATORS: GRUBUUID stands for "filesystem -#. UUID as used in GRUB". -#: grub-core/commands/xnu_uuid.c:110 -msgid "[-l] GRUBUUID [VARNAME]" -msgstr "[-l] GRUBUUID [VARNAME]" - -#: grub-core/commands/xnu_uuid.c:111 -msgid "" -"Transform 64-bit UUID to format suitable for XNU. If -l is given keep it " -"lowercase as done by blkid." -msgstr "" -"64-bit-UUID in ein von XNU verarbeitbares Format umwandeln. Falls -l " -"angegeben ist, bitte Kleinschreibung beibehalten (wie von blkid)" - -#: grub-core/disk/arc/arcdisk.c:248 grub-core/disk/efi/efidisk.c:603 -#: grub-core/disk/i386/pc/biosdisk.c:498 grub-core/disk/i386/pc/biosdisk.c:543 -#: grub-core/disk/ieee1275/nand.c:198 grub-core/disk/ieee1275/obdisk.c:527 -#: grub-core/disk/ieee1275/ofdisk.c:586 -#, c-format -msgid "failure reading sector 0x%llx from `%s'" -msgstr "Lesen des Sektors 0x%llx von »%s« ist fehlgeschlagen" - -#: grub-core/disk/arc/arcdisk.c:284 grub-core/disk/efi/efidisk.c:626 -#: grub-core/disk/i386/pc/biosdisk.c:548 grub-core/disk/ieee1275/ofdisk.c:606 -#, c-format -msgid "failure writing sector 0x%llx to `%s'" -msgstr "Schreiben des Sektors 0x%llx nach »%s« ist fehlgeschlagen" - -#: grub-core/disk/cryptodisk.c:40 -msgid "Mount by UUID." -msgstr "Nach UUID einhängen." - -#. TRANSLATORS: It's still restricted to cryptodisks only. -#: grub-core/disk/cryptodisk.c:42 -msgid "Mount all." -msgstr "Alles einhängen." - -#: grub-core/disk/cryptodisk.c:43 -msgid "Mount all volumes with `boot' flag set." -msgstr "Alle Datenträger einhängen, für die das »boot«-Flag gesetzt ist." - -#. TRANSLATORS: The first %s is the file being looked at, the second %s is -#. the error message. -#: grub-core/disk/cryptodisk.c:526 grub-core/kern/emu/hostdisk.c:152 -#: grub-core/kern/emu/hostdisk.c:262 grub-core/kern/emu/hostdisk.c:434 -#: grub-core/kern/emu/misc.c:168 grub-core/kern/emu/misc.c:174 -#: grub-core/kern/emu/misc.c:196 grub-core/osdep/bsd/getroot.c:92 -#: grub-core/osdep/bsd/getroot.c:168 grub-core/osdep/hurd/getroot.c:68 -#: grub-core/osdep/linux/blocklist.c:65 grub-core/osdep/linux/getroot.c:150 -#: grub-core/osdep/linux/hostdisk.c:194 grub-core/osdep/linux/hostdisk.c:421 -#: grub-core/osdep/linux/ofpath.c:417 grub-core/osdep/linux/ofpath.c:422 -#: grub-core/osdep/linux/ofpath.c:517 grub-core/osdep/linux/ofpath.c:530 -#: grub-core/osdep/sun/getroot.c:110 grub-core/osdep/windows/blocklist.c:98 -#: grub-core/tests/video_checksum.c:279 util/editenv.c:46 util/glue-efi.c:115 -#: util/glue-efi.c:120 util/glue-efi.c:130 util/grub-editenv.c:138 -#: util/grub-editenv.c:192 util/grub-file.c:83 util/grub-fstest.c:128 -#: util/grub-fstest.c:568 util/grub-install-common.c:92 -#: util/grub-install-common.c:94 util/grub-install-common.c:101 -#: util/grub-install-common.c:529 util/grub-menulst2cfg.c:53 -#: util/grub-menulst2cfg.c:68 util/grub-mkimage.c:292 util/grub-mklayout.c:504 -#: util/grub-mklayout.c:516 util/grub-mknetdir.c:133 util/grub-mknetdir.c:151 -#: util/grub-mkrescue.c:627 util/grub-mkrescue.c:631 util/grub-mkrescue.c:879 -#: util/grub-mkrescue.c:883 util/grub-mkstandalone.c:253 util/grub-mount.c:498 -#: util/grub-render-label.c:169 util/grub-script-check.c:175 -#: util/grub-syslinux2cfg.c:181 util/grub-syslinux2cfg.c:191 -#: util/grub-syslinux2cfg.c:212 util/grub-syslinux2cfg.c:228 util/misc.c:91 -#: util/render-label.c:76 util/render-label.c:163 util/render-label.c:174 -#: util/resolve.c:246 util/setup.c:783 -#, c-format -msgid "cannot open `%s': %s" -msgstr "»%s« kann nicht geöffnet werden: %s" - -#: grub-core/disk/cryptodisk.c:583 grub-core/disk/cryptodisk.c:628 -#: grub-core/kern/emu/hostdisk.c:270 grub-core/kern/emu/hostfs.c:142 -#: grub-core/osdep/linux/hostdisk.c:456 util/grub-editenv.c:143 -#: util/grub-editenv.c:149 util/grub-fstest.c:320 util/misc.c:111 -#, c-format -msgid "cannot seek `%s': %s" -msgstr "»%s« kann nicht durchsucht werden: %s" - -#: grub-core/disk/cryptodisk.c:1144 -msgid "SOURCE|-u UUID|-a|-b" -msgstr "QUELLE|-u UUID|-a|-b" - -#: grub-core/disk/cryptodisk.c:1145 -msgid "Mount a crypto device." -msgstr "Ein verschlüsseltes Gerät einhängen." - -#. TRANSLATORS: This message kicks in during the detection of -#. which modules needs to be included in core image. This happens -#. in the case of degraded RAID and means that autodetection may -#. fail to include some of modules. It's an installation time -#. message, not runtime message. -#: grub-core/disk/diskfilter.c:343 grub-core/disk/diskfilter.c:376 -#, c-format -msgid "" -"Couldn't find physical volume `%s'. Some modules may be missing from core " -"image." -msgstr "" -"Physischer Datenträger »%s« konnte nicht gefunden werden. Einige Module " -"könnten im Core-Abbild fehlen." - -#: grub-core/disk/diskfilter.c:480 -#, c-format -msgid "physical volume %s not found" -msgstr "Physischer Datenträger %s wurde nicht gefunden" - -#: grub-core/disk/efi/efidisk.c:600 grub-core/disk/efi/efidisk.c:623 -#, c-format -msgid "no media in `%s'" -msgstr "Kein Medium in »%s«" - -#: grub-core/disk/geli.c:75 -msgid "Couldn't load sha256" -msgstr "sha256 konnte nicht geladen werden" - -#: grub-core/disk/geli.c:85 -msgid "Couldn't load sha512" -msgstr "sha512 konnte nicht geladen werden" - -#: grub-core/disk/geli.c:216 grub-core/disk/geli.c:220 -msgid "couldn't read ELI metadata" -msgstr "ELI-Metadaten konnten nicht gelesen werden" - -#: grub-core/disk/geli.c:231 -msgid "wrong ELI magic or version" -msgstr "Falsches ELI-Magic oder -Version" - -#: grub-core/disk/geli.c:435 grub-core/disk/luks.c:329 -msgid "Attempting to decrypt master key..." -msgstr "Es wird versucht, den Master-Schlüssel zu entschlüsseln …" - -#: grub-core/disk/geli.c:441 grub-core/disk/luks.c:347 -#, c-format -msgid "Enter passphrase for %s%s%s (%s): " -msgstr "Kennwort für %s%s%s angeben (%s): " - -#. TRANSLATORS: It's a cryptographic key slot: one element of an array -#. where each element is either empty or holds a key. -#: grub-core/disk/geli.c:530 grub-core/disk/luks.c:451 -#, c-format -msgid "Slot %d opened\n" -msgstr "Slot %d geöffnet\n" - -#: grub-core/disk/i386/pc/biosdisk.c:470 grub-core/disk/i386/pc/biosdisk.c:524 -#: grub-core/disk/i386/pc/biosdisk.c:534 grub-core/kern/disk_common.c:47 -#, c-format -msgid "attempt to read or write outside of disk `%s'" -msgstr "Versuch, außerhalb der Platte »%s« zu lesen und zu schreiben" - -#: grub-core/disk/i386/pc/biosdisk.c:491 grub-core/disk/i386/pc/biosdisk.c:611 -#: grub-core/disk/scsi.c:726 -msgid "cannot write to CD-ROM" -msgstr "Auf CD-ROM kann nicht geschrieben werden" - -#: grub-core/disk/i386/pc/biosdisk.c:662 -msgid "" -"Native disk drivers are in use. Refusing to use firmware disk interface." -msgstr "" -"Native Festplattentreiber werden verwendet. Nutzung der Firmware-" -"Schnittstelle wird verweigert." - -#. TRANSLATORS: it's a partition for embedding, -#. not a partition embed into something. GRUB -#. install tools put core.img into a place -#. usable for bootloaders (called generically -#. "embedding zone") and this operation is -#. called "embedding". -#: grub-core/disk/ldm.c:1015 -msgid "your LDM Embedding Partition is too small; embedding won't be possible" -msgstr "" -"Die LDM-Einbettungspartition ist zu klein, Einbettung würde unmöglich sein" - -#. TRANSLATORS: it's a partition for embedding, -#. not a partition embed into something. -#: grub-core/disk/ldm.c:1033 -msgid "this LDM has no Embedding Partition; embedding won't be possible" -msgstr "" -"Dieses LDM hat keine Einbettungspartition, Einbettung würde unmöglich sein" - -#. TRANSLATORS: The disk is simply removed from the list of available ones, -#. not wiped, avoid to scare user. -#: grub-core/disk/loopback.c:45 -msgid "Delete the specified loopback drive." -msgstr "Das angegebene Loopback-Gerät löschen." - -#: grub-core/disk/loopback.c:237 -msgid "[-d] DEVICENAME FILE." -msgstr "[-d] GERÄTENAME DATEI." - -#. TRANSLATORS: The file itself is not destroyed -#. or transformed into drive. -#: grub-core/disk/loopback.c:240 -msgid "Make a virtual drive from a file." -msgstr "Ein virtuelles Gerät aus einer Datei erstellen." - -#: grub-core/efiemu/i386/loadcore32.c:111 -#: grub-core/efiemu/i386/loadcore64.c:125 grub-core/kern/arm/dl.c:256 -#: grub-core/kern/arm64/dl.c:187 grub-core/kern/i386/dl.c:75 -#: grub-core/kern/ia64/dl.c:140 grub-core/kern/mips/dl.c:258 -#: grub-core/kern/powerpc/dl.c:163 grub-core/kern/riscv/dl.c:334 -#: grub-core/kern/sparc64/dl.c:180 grub-core/kern/x86_64/dl.c:110 -#: util/grub-mkimagexx.c:756 util/grub-mkimagexx.c:881 -#: util/grub-mkimagexx.c:945 util/grub-mkimagexx.c:1026 -#: util/grub-mkimagexx.c:1120 util/grub-mkimagexx.c:1222 -#: util/grub-mkimagexx.c:1413 util/grub-mkimagexx.c:1628 -#: util/grub-mkimagexx.c:1665 util/grub-mkimagexx.c:1697 -#: util/grub-mkimagexx.c:1767 util/grub-mkimagexx.c:1797 -#, c-format -msgid "relocation 0x%x is not implemented yet" -msgstr "Neuzuweisung 0x%x ist noch nicht implementiert" - -#: grub-core/efiemu/loadcore.c:200 grub-core/efiemu/loadcore.c:237 -#: grub-core/loader/i386/bsdXX.c:317 util/grub-mkimagexx.c:2360 -msgid "no symbol table" -msgstr "Keine Symboltabelle" - -#: grub-core/efiemu/loadcore.c:346 grub-core/kern/dl.c:609 -#: grub-core/loader/ia64/efi/linux.c:345 grub-core/loader/mips/linux.c:248 -#: grub-core/loader/multiboot_elfxx.c:76 -#: grub-core/loader/powerpc/ieee1275/linux.c:280 -#: grub-core/loader/sparc64/ieee1275/linux.c:320 -msgid "this ELF file is not of the right type" -msgstr "Diese ELF-Datei ist vom falschen Typ" - -#: grub-core/efiemu/main.c:313 -msgid "Load and initialize EFI emulator." -msgstr "EFI-Emulator laden und initialisieren." - -#: grub-core/efiemu/main.c:317 -msgid "Finalize loading of EFI emulator." -msgstr "Laden des EFI-Emulators finalisieren." - -#: grub-core/efiemu/main.c:320 -msgid "Unload EFI emulator." -msgstr "EFI-Umgebung entladen." - -#: grub-core/efiemu/symbols.c:92 grub-core/kern/dl.c:376 -#, c-format -msgid "symbol `%s' not found" -msgstr "Symbol »%s« nicht gefunden" - -#: grub-core/font/font_cmd.c:52 -msgid "Loaded fonts:" -msgstr "Geladene Schriften" - -#: grub-core/font/font_cmd.c:74 -msgid "FILE..." -msgstr "DATEI…" - -#: grub-core/font/font_cmd.c:75 -msgid "Specify one or more font files to load." -msgstr "Eine oder mehrere zu ladende Schriftdateien angeben." - -#: grub-core/font/font_cmd.c:78 -msgid "List the loaded fonts." -msgstr "Die geladenen Schriften auflisten." - -#: grub-core/fs/archelp.c:216 grub-core/fs/archelp.c:278 -#: grub-core/fs/btrfs.c:1815 grub-core/fs/fshelp.c:227 grub-core/fs/jfs.c:736 -#: grub-core/fs/minix.c:369 grub-core/fs/ufs.c:454 -msgid "too deep nesting of symlinks" -msgstr "Zu tief verschachtelte symbolische Verknüpfungen" - -#: grub-core/fs/bfs.c:228 grub-core/fs/fshelp.c:368 grub-core/fs/minix.c:270 -#: grub-core/kern/file.c:156 -msgid "attempt to read past the end of file" -msgstr "Versuch, hinter dem Ende der Datei zu lesen" - -#: grub-core/fs/btrfs.c:1698 grub-core/fs/btrfs.c:1957 -#: grub-core/fs/fshelp.c:189 grub-core/fs/fshelp.c:309 grub-core/fs/jfs.c:431 -#: grub-core/fs/minix.c:414 grub-core/fs/minix.c:562 -#: grub-core/fs/reiserfs.c:732 grub-core/fs/ufs.c:531 grub-core/fs/ufs.c:671 -#: grub-core/fs/zfs/zfs.c:2831 grub-core/fs/zfs/zfs.c:4247 -msgid "not a directory" -msgstr "Ist kein Verzeichnis" - -#: grub-core/fs/btrfs.c:2063 grub-core/fs/fshelp.c:307 grub-core/fs/jfs.c:835 -#: grub-core/fs/zfs/zfs.c:3801 -msgid "not a regular file" -msgstr "Keine reguläre Datei" - -#: grub-core/fs/btrfs.c:2157 grub-core/fs/zfs/zfs.c:4333 -#: grub-core/partmap/msdos.c:400 -msgid "your core.img is unusually large. It won't fit in the embedding area" -msgstr "" -"Ihre Datei core.img ist ungewöhnlich groß. Sie würde nicht in den " -"Einbettungsbereich passen." - -#: grub-core/fs/fshelp.c:281 grub-core/fs/minix.c:630 grub-core/fs/ufs.c:661 -#: grub-core/fs/ufs.c:757 grub-core/kern/fs.c:168 grub-core/kern/fs.c:180 -#, c-format -msgid "invalid file name `%s'" -msgstr "Ungültiger Dateiname »%s«" - -#: grub-core/fs/zfs/zfs.c:453 -msgid "checksum verification failed" -msgstr "Prüfsummenvergleich ist gescheitert" - -#: grub-core/fs/zfs/zfs.c:1465 -msgid "couldn't find a necessary member device of multi-device filesystem" -msgstr "" -"Teilgerät eines über mehrere Geräte verteilten Dateisystems konnte nicht " -"gefunden werden" - -#: grub-core/fs/zfs/zfscrypt.c:292 -msgid "no decryption key available" -msgstr "Kein Schlüssel verfügbar" - -#: grub-core/fs/zfs/zfscrypt.c:304 -msgid "MAC verification failed" -msgstr "MAC-Überprüfung ist gescheitert" - -#: grub-core/fs/zfs/zfscrypt.c:413 -msgid "Assume input is raw." -msgstr "Eingabe wird als Raw angenommen." - -#: grub-core/fs/zfs/zfscrypt.c:414 -msgid "Assume input is hex." -msgstr "Eingabe wird als hexadezimal angenommen." - -#: grub-core/fs/zfs/zfscrypt.c:415 -msgid "Assume input is passphrase." -msgstr "Eingabe wird als Kennwort angenommen." - -#: grub-core/fs/zfs/zfscrypt.c:437 util/grub-fstest.c:553 util/grub-mount.c:483 -msgid "Enter ZFS password: " -msgstr "ZFS-Passwort eingeben:" - -#: grub-core/fs/zfs/zfscrypt.c:476 -msgid "[-h|-p|-r] [FILE]" -msgstr "[-h|-p|-r] [DATEI]" - -#: grub-core/fs/zfs/zfscrypt.c:477 -msgid "Import ZFS wrapping key stored in FILE." -msgstr "In DATEI gespeicherten ZFS-Wrapping-Schlüssel importieren" - -#: grub-core/fs/zfs/zfsinfo.c:51 -msgid "Virtual device is removed" -msgstr "Virtuelles Gerät wurde entfernt" - -#: grub-core/fs/zfs/zfsinfo.c:57 -msgid "Virtual device is faulted" -msgstr "Virtuelles Gerät ist gescheitert" - -#: grub-core/fs/zfs/zfsinfo.c:63 -msgid "Virtual device is offline" -msgstr "Virtuelles Gerät ist offline" - -#. TRANSLATORS: degraded doesn't mean broken but that some of -#. component are missing but virtual device as whole is still usable. -#: grub-core/fs/zfs/zfsinfo.c:70 -msgid "Virtual device is degraded" -msgstr "Virtuelles Gerät ist nicht verfügbar" - -#: grub-core/fs/zfs/zfsinfo.c:73 -msgid "Virtual device is online" -msgstr "Virtuelles Gerät ist online" - -#: grub-core/fs/zfs/zfsinfo.c:89 -msgid "Incorrect virtual device: no type available" -msgstr "Inkorrektes virtuelles Gerät: kein Typ verfügbar" - -#. TRANSLATORS: The virtual devices form a tree (in graph-theoretical -#. sense). The nodes like mirror or raidz have children: member devices. -#. The "real" devices which actually store data are called "leafs" -#. (again borrowed from graph theory) and can be either disks -#. (or partitions) or files. -#: grub-core/fs/zfs/zfsinfo.c:105 -msgid "Leaf virtual device (file or disk)" -msgstr "Virtuelles Gerät durchsuchen (Datei oder Laufwerk)" - -#: grub-core/fs/zfs/zfsinfo.c:113 -msgid "Bootpath: unavailable\n" -msgstr "Boot-Pfad: nicht verfügbar\n" - -#: grub-core/fs/zfs/zfsinfo.c:115 -#, c-format -msgid "Bootpath: %s\n" -msgstr "Boot-Pfad: %s\n" - -#: grub-core/fs/zfs/zfsinfo.c:120 -msgid "Path: unavailable" -msgstr "Pfad: nicht verfügbar" - -#: grub-core/fs/zfs/zfsinfo.c:122 -#, c-format -msgid "Path: %s\n" -msgstr "Pfad: %s\n" - -#: grub-core/fs/zfs/zfsinfo.c:127 -msgid "Devid: unavailable" -msgstr "Gerätekennung: nicht verfügbar" - -#: grub-core/fs/zfs/zfsinfo.c:129 -#, c-format -msgid "Devid: %s\n" -msgstr "Gerätekennung: %s\n" - -#: grub-core/fs/zfs/zfsinfo.c:148 -msgid "This VDEV is a mirror" -msgstr "Dieses VDEV ist ein Spiegel" - -#: grub-core/fs/zfs/zfsinfo.c:153 -#, c-format -msgid "This VDEV is a RAIDZ%llu\n" -msgstr "Dieses VDEV ist ein RAIDZ%llu\n" - -#: grub-core/fs/zfs/zfsinfo.c:158 -msgid "Incorrect VDEV" -msgstr "Ungültiges VDEV" - -#: grub-core/fs/zfs/zfsinfo.c:161 -#, c-format -msgid "VDEV with %d children\n" -msgstr "VDEV mit %d Kindelementen\n" - -#. TRANSLATORS: it's the element carying the number %d, not -#. total element number. And the number itself is fine, -#. only the element isn't. -#. -#: grub-core/fs/zfs/zfsinfo.c:177 -#, c-format -msgid "VDEV element number %d isn't correct\n" -msgstr "VDEV-Elementnummer %d ist nicht korrekt\n" - -#. TRANSLATORS: it's the element carying the number %d, not -#. total element number. This is used in enumeration -#. "Element number 1", "Element number 2", ... -#: grub-core/fs/zfs/zfsinfo.c:184 -#, c-format -msgid "VDEV element number %d:\n" -msgstr "VDEV-Elementnummer %d:\n" - -#: grub-core/fs/zfs/zfsinfo.c:193 -#, c-format -msgid "Unknown virtual device type: %s\n" -msgstr "Typ des virtuellen Gerätes ist unbekannt: %s\n" - -#. TRANSLATORS: Here we speak about ZFS pools it's semi-marketing, -#. semi-technical term by Sun/Oracle and should be translated in sync with -#. other ZFS-related software and documentation. -#: grub-core/fs/zfs/zfsinfo.c:254 -msgid "Pool state: active" -msgstr "Pool-Status: aktiv" - -#: grub-core/fs/zfs/zfsinfo.c:255 -msgid "Pool state: exported" -msgstr "Pool-Status: exportiert" - -#: grub-core/fs/zfs/zfsinfo.c:256 -msgid "Pool state: destroyed" -msgstr "Pool-Status: zerstört" - -#: grub-core/fs/zfs/zfsinfo.c:257 -msgid "Pool state: reserved for hot spare" -msgstr "Pool-Status: für Hotspare reserviert" - -#: grub-core/fs/zfs/zfsinfo.c:258 -msgid "Pool state: level 2 ARC device" -msgstr "Pool-Status: ARC-Gerät, Level 2" - -#: grub-core/fs/zfs/zfsinfo.c:259 -msgid "Pool state: uninitialized" -msgstr "Pool-Status: nicht initialisiert" - -#: grub-core/fs/zfs/zfsinfo.c:260 -msgid "Pool state: unavailable" -msgstr "Pool-Status: nicht verfügbar" - -#: grub-core/fs/zfs/zfsinfo.c:261 -msgid "Pool state: potentially active" -msgstr "Pool-Status: potenziell aktiv" - -#: grub-core/fs/zfs/zfsinfo.c:306 -msgid "Pool name: unavailable" -msgstr "Pool-Name: nicht verfügbar" - -#: grub-core/fs/zfs/zfsinfo.c:308 -#, c-format -msgid "Pool name: %s\n" -msgstr "Pool-Name: %s\n" - -#: grub-core/fs/zfs/zfsinfo.c:313 -msgid "Pool GUID: unavailable" -msgstr "Pool-GUID: nicht verfügbar" - -#: grub-core/fs/zfs/zfsinfo.c:315 -#, c-format -msgid "Pool GUID: %016llx\n" -msgstr "Pool-GUID: %016llx\n" - -#: grub-core/fs/zfs/zfsinfo.c:320 -msgid "Unable to retrieve pool state" -msgstr "Pool-Status konnte nicht ermittelt werden" - -#: grub-core/fs/zfs/zfsinfo.c:322 -msgid "Unrecognized pool state" -msgstr "Pool-Status nicht erkannt" - -#. TRANSLATORS: There are undetermined number of virtual devices -#. in a device tree, not just one. -#. -#: grub-core/fs/zfs/zfsinfo.c:332 -msgid "No virtual device tree available" -msgstr "Kein Baum virtueller Geräte verfügbar" - -#: grub-core/fs/zfs/zfsinfo.c:431 -msgid "Print ZFS info about DEVICE." -msgstr "ZFS-Info zu GERÄT ausgeben." - -#: grub-core/fs/zfs/zfsinfo.c:433 -msgid "FILESYSTEM [VARIABLE]" -msgstr "DATEISYSTEM [VARIABLE]" - -#: grub-core/fs/zfs/zfsinfo.c:434 -msgid "Print ZFS-BOOTFSOBJ or store it into VARIABLE" -msgstr "ZFS-BOOTFSOBJ ausgeben oder als VARIABLE setzen" - -#. TRANSLATORS: at this position GRUB waits for the user to do an action -#. in remote debugger, namely to tell it to establish connection. -#: grub-core/gdb/gdb.c:48 -msgid "Now connect the remote debugger, please." -msgstr "Bitte verbinden Sie nun einen entfernten Debugger." - -#. TRANSLATORS: GDB stub is a small part of -#. GDB functionality running on local host -#. which allows remote debugger to -#. connect to it. -#: grub-core/gdb/gdb.c:84 -msgid "Start GDB stub on given port" -msgstr "GDB-Stub auf dem angegebenen Port starten" - -#. TRANSLATORS: this refers to triggering -#. a breakpoint so that the user will land -#. into GDB. -#: grub-core/gdb/gdb.c:89 -msgid "Break into GDB" -msgstr "Haltepunkt für GDB auslösen" - -#: grub-core/gdb/gdb.c:91 -msgid "Stop GDB stub" -msgstr "GDB-Stub stoppen" - -#: grub-core/gettext/gettext.c:85 -msgid "premature end of file" -msgstr "Vorzeitiges Ende der Datei" - -#. TRANSLATORS: It refers to passing the string through gettext. -#. So it's "translate" in the same meaning as in what you're -#. doing now. -#. -#: grub-core/gettext/gettext.c:525 -msgid "Translates the string with the current settings." -msgstr "Übersetzt die Zeichenkette anhand den aktuellen Einstellungen." - -#: grub-core/gfxmenu/gui_label.c:186 grub-core/normal/menu_text.c:184 -msgid "" -"Press enter to boot the selected OS, `e' to edit the commands before booting " -"or `c' for a command-line. ESC to return previous menu." -msgstr "" -"»Enter« zum Booten des markierten Betriebssystems, »e« zum Bearbeiten der " -"Befehle vor dem Booten oder »c« für eine Befehlszeile. Mit »ESC« kehren Sie " -"zum vorherigen Menü zurück." - -#: grub-core/gfxmenu/gui_label.c:190 grub-core/normal/menu_text.c:192 -msgid "" -"Press enter to boot the selected OS, `e' to edit the commands before booting " -"or `c' for a command-line." -msgstr "" -"»Enter« zum Booten des markierten Betriebssystems, »e« zum Bearbeiten der " -"Befehle vor dem Booten oder »c« für eine Befehlszeile." - -#: grub-core/gfxmenu/gui_label.c:194 -msgid "enter: boot, `e': options, `c': cmd-line" -msgstr "Enter: Booten, »e«: Optionen, »c«: Befehlszeile" - -#: grub-core/gfxmenu/gui_progress_bar.c:339 grub-core/normal/menu_text.c:446 -#, c-format -msgid "The highlighted entry will be executed automatically in %ds." -msgstr "Der hervorgehobene Eintrag wird automatisch in %ds ausgeführt." - -#. TRANSLATORS: 's' stands for seconds. -#. It's a standalone timeout notification. -#. Please use the short form in your language. -#: grub-core/gfxmenu/gui_progress_bar.c:344 -#, c-format -msgid "%ds remaining." -msgstr "%ds verbleibend." - -#. TRANSLATORS: 's' stands for seconds. -#. It's a standalone timeout notification. -#. Please use the shortest form available in you language. -#: grub-core/gfxmenu/gui_progress_bar.c:349 grub-core/normal/menu_text.c:444 -#: grub-core/normal/menu_text.c:462 -#, c-format -msgid "%ds" -msgstr "%ds" - -#: grub-core/gfxmenu/view.c:103 -msgid "GRUB Boot Menu" -msgstr "GRUB-Bootmenü" - -#: grub-core/hello/hello.c:36 -msgid "Hello World" -msgstr "Hallo Welt" - -#: grub-core/hello/hello.c:45 -msgid "Say `Hello World'." -msgstr "»Hallo Welt« ausgeben." - -#: grub-core/io/gzio.c:409 grub-core/kern/file.c:210 -msgid "attempt to seek outside of the file" -msgstr "Versuch, außerhalb der Datei zu suchen" - -#. TRANSLATORS: It's about given file having some strange format, not -#. complete lack of gzip support. -#: grub-core/io/gzio.c:1228 grub-core/io/gzio.c:1237 grub-core/io/gzio.c:1244 -msgid "unsupported gzip format" -msgstr "Nicht unterstütztes gzip-Format" - -#: grub-core/io/lzopio.c:511 -msgid "lzop file corrupted" -msgstr "lzop-Datei ist beschädigt" - -#: grub-core/io/xzio.c:278 -msgid "xz file corrupted or unsupported block options" -msgstr "xz-Datei ist beschädigt oder Blockoptionen werden nicht unterstützt" - -#: grub-core/kern/arm/dl.c:277 grub-core/kern/arm64/dl.c:44 -#: grub-core/kern/i386/dl.c:36 grub-core/kern/ia64/dl.c:41 -#: grub-core/kern/mips/dl.c:48 grub-core/kern/powerpc/dl.c:36 -#: grub-core/kern/riscv/dl.c:47 grub-core/kern/sparc64/dl.c:36 -#: grub-core/kern/x86_64/dl.c:36 grub-core/loader/i386/bsd.c:1445 -#: grub-core/loader/i386/bsdXX.c:49 grub-core/loader/ia64/efi/linux.c:341 -#: grub-core/loader/mips/linux.c:298 grub-core/loader/multiboot.c:232 -#: grub-core/loader/multiboot_elfxx.c:73 -#: grub-core/loader/powerpc/ieee1275/linux.c:294 -#: grub-core/loader/sparc64/ieee1275/linux.c:331 -msgid "invalid arch-dependent ELF magic" -msgstr "Ungültiges ELF-Magic (architekturabhängig)" - -#: grub-core/kern/corecmd.c:178 -msgid "[ENVVAR=VALUE]" -msgstr "[UMGVAR=WERT]" - -#: grub-core/kern/corecmd.c:179 -msgid "Set an environment variable." -msgstr "Eine Umgebungsvariable festlegen." - -#: grub-core/kern/corecmd.c:183 -msgid "ENVVAR" -msgstr "UMGVAR" - -#: grub-core/kern/corecmd.c:184 -msgid "Remove an environment variable." -msgstr "Eine Umgebungsvariable löschen." - -#: grub-core/kern/corecmd.c:186 -msgid "[ARG]" -msgstr "[ARG]" - -#: grub-core/kern/corecmd.c:186 -msgid "List devices or files." -msgstr "Geräte oder Dateien auflisten." - -#: grub-core/kern/corecmd.c:188 -msgid "Insert a module." -msgstr "Ein Modul einfügen." - -#: grub-core/kern/disk.c:236 grub-core/net/net.c:1390 -#, c-format -msgid "disk `%s' not found" -msgstr "Laufwerk »%s« wurde nicht gefunden." - -#: grub-core/kern/disk_common.c:27 -msgid "attempt to read or write outside of partition" -msgstr "Versuch, außerhalb der Partition zu lesen oder zu schreiben" - -#: grub-core/kern/dl.c:212 grub-core/kern/elf.c:61 grub-core/kern/elf.c:79 -#: grub-core/loader/i386/bsdXX.c:46 grub-core/loader/ia64/efi/linux.c:335 -#: grub-core/loader/multiboot_elfxx.c:69 -msgid "invalid arch-independent ELF magic" -msgstr "Ungültiges ELF-Magic (architekturunabhängig)" - -#. TRANSLATORS: it refers to the lack of free slots. -#: grub-core/kern/emu/hostdisk.c:208 grub-core/kern/emu/hostdisk.c:466 -msgid "device count exceeds limit" -msgstr "Geräteanzahl übersteigt die Grenzen" - -#: grub-core/kern/emu/hostdisk.c:342 util/editenv.c:54 util/grub-editenv.c:197 -#: util/grub-fstest.c:191 util/grub-mkfont.c:796 util/misc.c:114 -#: util/misc.c:129 util/setup.c:788 -#, c-format -msgid "cannot write to `%s': %s" -msgstr "Auf »%s« kann nicht geschrieben werden: %s" - -#. TRANSLATORS: Only one entry is ignored. However the suggestion -#. is to correct/delete the whole file. -#. device.map is a file indicating which -#. devices are available at boot time. Fedora populated it with -#. entries like (hd0,1) /dev/sda1 which would mean that every -#. partition is a separate disk for BIOS. Such entries were -#. inactive in GRUB due to its bug which is now gone. Without -#. this additional check these entries would be harmful now. -#. -#: grub-core/kern/emu/hostdisk.c:503 -#, c-format -msgid "" -"the device.map entry `%s' is invalid. Ignoring it. Please correct or delete " -"your device.map" -msgstr "" -"Der device.map-Eintrag »%s« ist ungültig, wird ignoriert. Bitte korrigieren " -"oder löschen Sie Ihre device.map" - -#. TRANSLATORS: device.map is a filename. Not to be translated. -#. device.map specifies disk correspondance overrides. Previously -#. one could create any kind of device name with this. Due to -#. some problems we decided to limit it to just a handful -#. possibilities. -#: grub-core/kern/emu/hostdisk.c:555 -#, c-format -msgid "" -"the drive name `%s' in device.map is incorrect. Using %s instead. Please use " -"the form [hfc]d[0-9]* (E.g. `hd0' or `cd')" -msgstr "" -"Der Laufwerksname »%s« in device.map ist inkorrekt. %s wird stattdessen " -"verwendet. Bitte verwenden Sie die Form [hfc]d[0-9]* (z.B. »hd0« oder »cd«)" - -#: grub-core/kern/emu/hostfs.c:76 grub-core/kern/emu/hostfs.c:109 -#, c-format -msgid "can't open `%s': %s" -msgstr "»%s« kann nicht geöffnet werden: %s" - -#: grub-core/kern/emu/main.c:99 util/grub-fstest.c:516 util/grub-mount.c:452 -msgid "DEVICE_NAME" -msgstr "GERÄTENAME" - -#: grub-core/kern/emu/main.c:99 grub-core/loader/i386/bsd.c:136 -#: grub-core/loader/i386/bsd.c:169 util/grub-fstest.c:516 util/grub-mount.c:452 -msgid "Set root device." -msgstr "Root-Gerät festlegen." - -#. TRANSLATORS: There are many devices in device map. -#: grub-core/kern/emu/main.c:102 util/grub-probe.c:733 util/grub-setup.c:85 -#, c-format -msgid "use FILE as the device map [default=%s]" -msgstr "DATEI als Gerätezuordnung verwenden [Vorgabe=%s]" - -#. TRANSLATORS: There are many devices in device map. -#: grub-core/kern/emu/main.c:105 -msgid "use FILE as memdisk" -msgstr "DATEI als Memdisk-Abbild verwenden" - -#: grub-core/kern/emu/main.c:107 util/grub-setup.c:83 -#, c-format -msgid "use GRUB files in the directory DIR [default=%s]" -msgstr "GRUB-Dateien im Verzeichnis VERZ verwenden [Vorgabe=%s]" - -#: grub-core/kern/emu/main.c:108 include/grub/util/install.h:67 -#: util/grub-editenv.c:58 util/grub-fstest.c:525 util/grub-glue-efi.c:58 -#: util/grub-macbless.c:104 util/grub-mkfont.c:962 util/grub-mkimage.c:84 -#: util/grub-mklayout.c:56 util/grub-mount.c:458 util/grub-probe.c:735 -#: util/grub-render-label.c:74 util/grub-script-check.c:52 util/grub-setup.c:90 -#: util/grub-syslinux2cfg.c:78 -msgid "print verbose messages." -msgstr "Ausführliche Meldungen ausgeben." - -#: grub-core/kern/emu/main.c:109 grub-core/lib/gnulib/argp-parse.c:85 -msgid "SECS" -msgstr "SEK" - -#: grub-core/kern/emu/main.c:109 -msgid "wait until a debugger will attach" -msgstr "Warten, bis ein Debugger einklinkt" - -#: grub-core/kern/emu/main.c:171 util/grub-macbless.c:143 -#: util/grub-mkrelpath.c:61 util/grub-probe.c:874 util/grub-script-check.c:75 -#: util/grub-setup.c:203 -#, c-format -msgid "Unknown extra argument `%s'." -msgstr "Unbekanntes zusätzliches Argument »%s«." - -#: grub-core/kern/emu/main.c:185 -msgid "GRUB emulator." -msgstr "GRUB-Emulator." - -#: grub-core/kern/emu/main.c:213 util/grub-editenv.c:262 -#: util/grub-glue-efi.c:110 util/grub-macbless.c:173 util/grub-mkfont.c:1177 -#: util/grub-mkimage.c:266 util/grub-mklayout.c:494 -#: util/grub-mkpasswd-pbkdf2.c:132 util/grub-mkrelpath.c:96 -#: util/grub-probe.c:863 util/grub-render-label.c:152 -#: util/grub-script-check.c:160 util/grub-setup.c:262 -#: util/grub-syslinux2cfg.c:163 -msgid "Error in parsing command line arguments\n" -msgstr "Fehler beim Einlesen der Befehlszeilenargumente\n" - -#. TRANSLATORS: In this case GRUB tells user what he has to do. -#: grub-core/kern/emu/main.c:248 -#, c-format -msgid "Run `gdb %s %d', and set ARGS.HOLD to zero.\n" -msgstr "Rufen Sie »gdb %s %d« auf und setzen Sie ARGS.HOLD auf Null.\n" - -#: grub-core/kern/emu/misc.c:48 -#, c-format -msgid "%s: warning:" -msgstr "%s: Warnung:" - -#: grub-core/kern/emu/misc.c:64 -#, c-format -msgid "%s: info:" -msgstr "%s: Info:" - -#: grub-core/kern/emu/misc.c:79 util/grub-fstest.c:567 util/grub-fstest.c:576 -#: util/grub-mount.c:497 util/grub-mount.c:505 -#, c-format -msgid "%s: error:" -msgstr "%s: Fehler:" - -#: grub-core/kern/emu/misc.c:176 -#, c-format -msgid "file `%s' is too big" -msgstr "Datei »%s« ist zu groß" - -#: grub-core/kern/fs.c:120 -msgid "unknown filesystem" -msgstr "Unbekanntes Dateisystem" - -#: grub-core/kern/mips/arc/init.c:273 grub-core/kern/mips/loongson/init.c:301 -msgid "Shutdown failed" -msgstr "Herunterfahren ist gescheitert" - -#: grub-core/kern/mips/arc/init.c:285 -msgid "Exit failed" -msgstr "Beenden ist gescheitert" - -#: grub-core/kern/misc.c:351 grub-core/kern/misc.c:408 include/grub/misc.h:269 -#: include/grub/misc.h:278 -msgid "overflow is detected" -msgstr "Überlauf wurde erkannt" - -#: grub-core/kern/partition.c:51 grub-core/partmap/bsdlabel.c:108 -#, c-format -msgid "Discarding improperly nested partition (%s,%s,%s%d)" -msgstr "Unsauber eingebettete Partition wird verworfen (%s,%s,%s%d)" - -#: grub-core/kern/rescue_parser.c:73 util/grub-editenv.c:292 -#, c-format -msgid "Unknown command `%s'.\n" -msgstr "Unbekannter Befehl »%s«.\n" - -#: grub-core/lib/arg.c:31 -msgid "Display this help and exit." -msgstr "Diese Hilfe anzeigen und beenden." - -#: grub-core/lib/arg.c:33 -msgid "Display the usage of this command and exit." -msgstr "Benutzung dieses Befehls anzeigen und beenden." - -#: grub-core/lib/arg.c:362 -#, c-format -msgid "missing mandatory option for `%s'" -msgstr "Obligatorische Option für »%s« fehlt" - -#: grub-core/lib/arg.c:384 -#, c-format -msgid "the argument `%s' requires an integer" -msgstr "Das Argument »%s« benötigt eine Ganzzahl" - -#: grub-core/lib/arg.c:407 -#, c-format -msgid "" -"a value was assigned to the argument `%s' while it doesn't require an " -"argument" -msgstr "Ein Argument wurde »%s« zugeordnet, obwohl es kein Argument erwartet" - -#: grub-core/lib/backtrace.c:64 -msgid "Print backtrace." -msgstr "Backtrace ausgeben." - -#: grub-core/lib/gnulib/argp-help.c:149 -#, c-format -msgid "ARGP_HELP_FMT: %s value is less than or equal to %s" -msgstr "ARGP_HELP_FMT: Wert %s ist kleiner oder gleich %s" - -#: grub-core/lib/gnulib/argp-help.c:225 -#, c-format -msgid "%.*s: ARGP_HELP_FMT parameter requires a value" -msgstr "%.*s: Parameter für ARGP_HELP_FMT benötigt einen Wert" - -#: grub-core/lib/gnulib/argp-help.c:235 -#, c-format -msgid "%.*s: Unknown ARGP_HELP_FMT parameter" -msgstr "%.*s: Unbekannter Parameter für ARGP_HELP_FMT" - -#: grub-core/lib/gnulib/argp-help.c:248 -#, c-format -msgid "Garbage in ARGP_HELP_FMT: %s" -msgstr "Unsinn in ARGP_HELP_FMT: %s" - -#: grub-core/lib/gnulib/argp-help.c:1229 -msgid "" -"Mandatory or optional arguments to long options are also mandatory or " -"optional for any corresponding short options." -msgstr "" -"Erforderliche oder optionale Argumente für lange Optionen sind ebenso " -"erforderlich bzw. optional für die entsprechenden Kurzoptionen." - -#: grub-core/lib/gnulib/argp-help.c:1620 -msgid " or: " -msgstr " oder: " - -#: grub-core/lib/gnulib/argp-help.c:1632 -msgid " [OPTION...]" -msgstr " [OPTIONEN …]" - -#: grub-core/lib/gnulib/argp-help.c:1659 -#, c-format -msgid "Try '%s --help' or '%s --usage' for more information.\n" -msgstr "" -"Rufen Sie »%s --help« oder »%s --usage« auf, um weitere Informationen zu " -"erhalten.\n" - -#: grub-core/lib/gnulib/argp-help.c:1687 -#, c-format -msgid "Report bugs to %s.\n" -msgstr "Berichten Sie Fehler an %s.\n" - -#: grub-core/lib/gnulib/argp-help.c:1888 grub-core/lib/gnulib/error.c:195 -msgid "Unknown system error" -msgstr "Unbekannter Systemfehler" - -#: grub-core/lib/gnulib/argp-parse.c:81 -msgid "give this help list" -msgstr "Diese Hilfe anzeigen" - -#: grub-core/lib/gnulib/argp-parse.c:82 -msgid "give a short usage message" -msgstr "Eine kurze Hilfemeldung ausgeben" - -#: grub-core/lib/gnulib/argp-parse.c:83 util/grub-mkfont.c:946 -msgid "NAME" -msgstr "NAME" - -#: grub-core/lib/gnulib/argp-parse.c:84 -msgid "set the program name" -msgstr "Programmname festlegen" - -#: grub-core/lib/gnulib/argp-parse.c:86 -msgid "hang for SECS seconds (default 3600)" -msgstr "für SEK Sekunden hängenbleiben (Voreinst.: 3600)" - -#: grub-core/lib/gnulib/argp-parse.c:143 -msgid "print program version" -msgstr "Programmversion ausgeben" - -#: grub-core/lib/gnulib/argp-parse.c:160 -msgid "(PROGRAM ERROR) No version known!?" -msgstr "(PROGRAMMFEHLER) Keine Version bekannt!?" - -#: grub-core/lib/gnulib/argp-parse.c:613 -#, c-format -msgid "%s: Too many arguments\n" -msgstr "%s: Zu viele Argumente\n" - -#: grub-core/lib/gnulib/argp-parse.c:759 -msgid "(PROGRAM ERROR) Option should have been recognized!?" -msgstr "(PROGRAMMFEHLER) Option hätte erkannt werden müssen!?" - -#: grub-core/lib/gnulib/getopt.c:278 -#, c-format -msgid "%s: option '%s%s' is ambiguous\n" -msgstr "%s: Option »%s%s« ist nicht eindeutig\n" - -#: grub-core/lib/gnulib/getopt.c:284 -#, c-format -msgid "%s: option '%s%s' is ambiguous; possibilities:" -msgstr "%s: Option »%s%s« ist mehrdeutig; Möglichkeiten:" - -#: grub-core/lib/gnulib/getopt.c:319 -#, c-format -msgid "%s: unrecognized option '%s%s'\n" -msgstr "%s: Unbekannte Option »%s%s«\n" - -#: grub-core/lib/gnulib/getopt.c:345 -#, c-format -msgid "%s: option '%s%s' doesn't allow an argument\n" -msgstr "%s: Option »%s%s« erlaubt kein Argument\n" - -#: grub-core/lib/gnulib/getopt.c:360 -#, c-format -msgid "%s: option '%s%s' requires an argument\n" -msgstr "%s: Option »%s%s« erwartet ein Argument\n" - -#: grub-core/lib/gnulib/getopt.c:621 -#, c-format -msgid "%s: invalid option -- '%c'\n" -msgstr "%s: Ungültige Option -- »%c«\n" - -#: grub-core/lib/gnulib/getopt.c:636 grub-core/lib/gnulib/getopt.c:682 -#, c-format -msgid "%s: option requires an argument -- '%c'\n" -msgstr "%s: Option erfordert ein Argument -- »%c«\n" - -#: grub-core/lib/gnulib/openat-die.c:38 -#, c-format -msgid "unable to record current working directory" -msgstr "" - -#: grub-core/lib/gnulib/openat-die.c:57 -#, c-format -msgid "failed to return to initial working directory" -msgstr "Rückkehr zum initialen Arbeitsverzeichnis ist fehlgeschlagen" - -#: grub-core/lib/gnulib/regcomp.c:135 grub-core/osdep/aros/hostdisk.c:523 -msgid "Success" -msgstr "Erfolg" - -#: grub-core/lib/gnulib/regcomp.c:138 -msgid "No match" -msgstr "Keine Übereinstimmung" - -#: grub-core/lib/gnulib/regcomp.c:141 -msgid "Invalid regular expression" -msgstr "Ungültiger regulärer Ausdruck" - -#: grub-core/lib/gnulib/regcomp.c:144 -msgid "Invalid collation character" -msgstr "Ungültiges Sortierzeichen" - -#: grub-core/lib/gnulib/regcomp.c:147 -msgid "Invalid character class name" -msgstr "Ungültiger Zeichenklassenname" - -#: grub-core/lib/gnulib/regcomp.c:150 -msgid "Trailing backslash" -msgstr "Angehängter Backslash" - -#: grub-core/lib/gnulib/regcomp.c:153 -msgid "Invalid back reference" -msgstr "Ungültige Rückreferenz" - -#: grub-core/lib/gnulib/regcomp.c:156 -msgid "Unmatched [, [^, [:, [., or [=" -msgstr "Kein Gegenstück für [, [^, [:, [. oder [=" - -#: grub-core/lib/gnulib/regcomp.c:159 -msgid "Unmatched ( or \\(" -msgstr "Kein Gegenstück für ( oder \\(" - -#: grub-core/lib/gnulib/regcomp.c:162 -msgid "Unmatched \\{" -msgstr "Kein Gegenstück für \\{" - -#: grub-core/lib/gnulib/regcomp.c:165 -msgid "Invalid content of \\{\\}" -msgstr "Ungültiger Inhalt von \\{\\}" - -#: grub-core/lib/gnulib/regcomp.c:168 -msgid "Invalid range end" -msgstr "Ungültiges Bereichsende" - -#: grub-core/lib/gnulib/regcomp.c:171 -msgid "Memory exhausted" -msgstr "Speicher ausgeschöpft" - -#: grub-core/lib/gnulib/regcomp.c:174 -msgid "Invalid preceding regular expression" -msgstr "Ungültiger vorhergehender regulärer Ausdruck" - -#: grub-core/lib/gnulib/regcomp.c:177 -msgid "Premature end of regular expression" -msgstr "Vorzeitiges Ende des regulären Ausdrucks" - -#: grub-core/lib/gnulib/regcomp.c:180 -msgid "Regular expression too big" -msgstr "Regulärer Ausdruck ist zu groß" - -#: grub-core/lib/gnulib/regcomp.c:183 -msgid "Unmatched ) or \\)" -msgstr "Nicht übereinstimmende ) oder \\)" - -#: grub-core/lib/gnulib/regcomp.c:531 -msgid "unknown regexp error" -msgstr "Unbekannter regexp-Fehler" - -#: grub-core/lib/gnulib/regcomp.c:676 -msgid "No previous regular expression" -msgstr "Kein vorhergehender regulärer Ausdruck" - -#: grub-core/lib/i386/halt.c:77 -msgid "GRUB doesn't know how to halt this machine yet!" -msgstr "GRUB weiß nicht, wie man diese Maschine stoppen kann!" - -#: grub-core/lib/legacy_parse.c:75 -msgid "Default server is ${net_default_server}" -msgstr "Vorgegebener Server ist ${net_default_server}" - -#: grub-core/lib/legacy_parse.c:844 grub-core/video/colors.c:296 -#: grub-core/video/colors.c:305 grub-core/video/colors.c:311 -#: grub-core/video/colors.c:327 util/render-label.c:84 util/render-label.c:98 -#, c-format -msgid "invalid color specification `%s'" -msgstr "Ungültige Angabe der Farbe »%s«" - -#: grub-core/lib/mips/arc/reboot.c:32 grub-core/lib/mips/loongson/reboot.c:61 -msgid "Reboot failed" -msgstr "Neu starten ist gescheitert" - -#: grub-core/lib/random.c:113 -msgid "[LENGTH]" -msgstr "[LÄNGE]" - -#: grub-core/lib/random.c:114 -msgid "Hexdump random data." -msgstr "Hexdump-Zufallsdaten." - -#: grub-core/loader/arm/linux.c:242 -msgid "device tree must be supplied (see `devicetree' command)" -msgstr "Gerätebaum muss angegeben werden (siehe Befehl »devicetree«)" - -#: grub-core/loader/arm/linux.c:334 -msgid "invalid zImage" -msgstr "Ungültiges zImage" - -#: grub-core/loader/arm/linux.c:450 grub-core/loader/efi/fdt.c:144 -msgid "invalid device tree" -msgstr "Ungültiger Gerätebaum" - -#: grub-core/loader/arm/linux.c:493 grub-core/loader/arm64/linux.c:383 -#: grub-core/loader/i386/linux.c:1125 grub-core/loader/i386/pc/linux.c:479 -#: grub-core/loader/i386/xen.c:962 grub-core/loader/i386/xen.c:964 -#: grub-core/loader/ia64/efi/linux.c:591 grub-core/loader/mips/linux.c:501 -#: grub-core/loader/powerpc/ieee1275/linux.c:383 -#: grub-core/loader/riscv/linux.c:50 -#: grub-core/loader/sparc64/ieee1275/linux.c:511 -msgid "Load Linux." -msgstr "Linux laden." - -#: grub-core/loader/arm/linux.c:495 grub-core/loader/arm64/linux.c:385 -#: grub-core/loader/i386/linux.c:1127 grub-core/loader/i386/pc/linux.c:482 -#: grub-core/loader/i386/xen.c:966 grub-core/loader/ia64/efi/linux.c:594 -#: grub-core/loader/mips/linux.c:503 -#: grub-core/loader/powerpc/ieee1275/linux.c:385 -#: grub-core/loader/riscv/linux.c:52 -#: grub-core/loader/sparc64/ieee1275/linux.c:513 -msgid "Load initrd." -msgstr "initrd laden." - -#. TRANSLATORS: DTB stands for device tree blob. -#: grub-core/loader/arm/linux.c:498 grub-core/loader/efi/fdt.c:169 -msgid "Load DTB file." -msgstr "DTB-Datei laden." - -#: grub-core/loader/arm64/linux.c:59 -msgid "" -"plain image kernel not supported - rebuild with CONFIG_(U)EFI_STUB enabled" -msgstr "" -"Einfaches Kernel-Abbild wird nicht unterstützt – erstellen Sie es mit " -"aktiviertem CONFIG_(U)EFI_STUB neu" - -#: grub-core/loader/arm64/xen_boot.c:156 -msgid "failed to get FDT" -msgstr "Beziehen des FDT fehlgeschlagen" - -#: grub-core/loader/arm64/xen_boot.c:418 -msgid "you need to load the Xen Hypervisor first" -msgstr "Sie müssen zuerst den Xen-Hypervisor laden" - -#: grub-core/loader/arm64/xen_boot.c:516 -msgid "Load a xen hypervisor." -msgstr "Einen Xen-Hypervisor laden." - -#: grub-core/loader/arm64/xen_boot.c:519 -msgid "Load a xen module." -msgstr "Ein Xen-Modul laden." - -#: grub-core/loader/efi/appleloader.c:231 -msgid "[OPTS]" -msgstr "[OPTIONEN]" - -#. TRANSLATORS: This command is used on EFI to -#. switch to BIOS mode and boot the OS requiring -#. BIOS. -#: grub-core/loader/efi/appleloader.c:235 -msgid "Boot BIOS-based system." -msgstr "BIOS-basiertes System booten." - -#: grub-core/loader/efi/chainloader.c:421 -#: grub-core/loader/i386/pc/chainloader.c:303 -msgid "Load another boot loader." -msgstr "Einen anderen Bootloader laden." - -#: grub-core/loader/i386/bsd.c:103 -msgid "Display output on all consoles." -msgstr "Ausgabe auf allen Konsolen anzeigen." - -#: grub-core/loader/i386/bsd.c:104 grub-core/loader/i386/bsd.c:138 -#: grub-core/loader/i386/bsd.c:171 -msgid "Use serial console." -msgstr "Serielle Konsole verwenden." - -#: grub-core/loader/i386/bsd.c:105 grub-core/loader/i386/bsd.c:131 -#: grub-core/loader/i386/bsd.c:159 -msgid "Ask for file name to reboot from." -msgstr "Nach dem Dateinamen für den Neustart fragen." - -#: grub-core/loader/i386/bsd.c:106 -msgid "Use CD-ROM as root." -msgstr "CDROM als Root-Gerät verwenden." - -#: grub-core/loader/i386/bsd.c:107 -msgid "Invoke user configuration routing." -msgstr "Routing der Benutzerkonfiguration aufrufen." - -#: grub-core/loader/i386/bsd.c:108 grub-core/loader/i386/bsd.c:135 -#: grub-core/loader/i386/bsd.c:162 -msgid "Enter in KDB on boot." -msgstr "KDB beim Booten verwenden." - -#: grub-core/loader/i386/bsd.c:109 -msgid "Use GDB remote debugger instead of DDB." -msgstr "Entfernte GDB-Fehlerdiagnose anstatt DDB verwenden." - -#: grub-core/loader/i386/bsd.c:110 -msgid "Disable all boot output." -msgstr "Alle Boot-Ausgaben deaktivieren." - -#: grub-core/loader/i386/bsd.c:112 -msgid "Wait for keypress after every line of output." -msgstr "Nach jeder ausgegebenen Zeile auf Tastendruck warten." - -#: grub-core/loader/i386/bsd.c:114 -msgid "Use compiled-in root device." -msgstr "Einkompiliertes Root-Gerät verwenden." - -#: grub-core/loader/i386/bsd.c:115 grub-core/loader/i386/bsd.c:134 -#: grub-core/loader/i386/bsd.c:165 -msgid "Boot into single mode." -msgstr "In den Single-User-Modus booten." - -#: grub-core/loader/i386/bsd.c:116 grub-core/loader/i386/bsd.c:166 -msgid "Boot with verbose messages." -msgstr "Mit ausführlichen Meldungen booten." - -#: grub-core/loader/i386/bsd.c:132 grub-core/loader/i386/bsd.c:160 -msgid "Don't reboot, just halt." -msgstr "Nicht neu starten, nur herunterfahren." - -#: grub-core/loader/i386/bsd.c:133 grub-core/loader/i386/bsd.c:161 -msgid "Change configured devices." -msgstr "Konfigurierte Geräte bearbeiten." - -#. TRANSLATORS: "com" is static and not to be translated. It refers to -#. serial ports e.g. com1. -#. -#: grub-core/loader/i386/bsd.c:142 -msgid "comUNIT[,SPEED]" -msgstr "comUNIT[,GESCHW]" - -#: grub-core/loader/i386/bsd.c:157 -msgid "Disable SMP." -msgstr "SMP deaktivieren." - -#: grub-core/loader/i386/bsd.c:158 -msgid "Disable ACPI." -msgstr "ACPI deaktivieren." - -#: grub-core/loader/i386/bsd.c:164 -msgid "Don't display boot diagnostic messages." -msgstr "Keine Fehlerdiagnosemeldungen beim Booten anzeigen." - -#: grub-core/loader/i386/bsd.c:167 -msgid "Boot with debug messages." -msgstr "Mit Fehlerdiagnosemeldungen booten." - -#: grub-core/loader/i386/bsd.c:168 -msgid "Suppress normal output (warnings remain)." -msgstr "Normale Ausgaben unterdrücken (Warnungen verbleiben)" - -#. TRANSLATORS: "com" is static and not to be translated. It refers to -#. serial ports e.g. com1. -#. -#: grub-core/loader/i386/bsd.c:175 -msgid "[ADDR|comUNIT][,SPEED]" -msgstr "[ADR|comUNIT][,GESCHW]" - -#: grub-core/loader/i386/bsd.c:489 grub-core/loader/i386/bsd.c:555 -msgid "name" -msgstr "Name" - -#: grub-core/loader/i386/bsd.c:489 grub-core/loader/i386/bsd.c:555 -msgid "type" -msgstr "Typ" - -#: grub-core/loader/i386/bsd.c:489 grub-core/loader/i386/bsd.c:555 -msgid "addr" -msgstr "Adresse" - -#: grub-core/loader/i386/bsd.c:490 grub-core/loader/i386/bsd.c:556 -msgid "size" -msgstr "Größe" - -#: grub-core/loader/i386/bsd.c:1147 grub-core/loader/i386/linux.c:466 -#: grub-core/loader/i386/xnu.c:1030 -msgid "Booting in blind mode" -msgstr "Im Blindmodus booten" - -#: grub-core/loader/i386/bsd.c:2137 -msgid "Load kernel of FreeBSD." -msgstr "Kernel von FreeBSD laden." - -#: grub-core/loader/i386/bsd.c:2140 -msgid "Load kernel of OpenBSD." -msgstr "Kernel von OpenBSD laden." - -#: grub-core/loader/i386/bsd.c:2143 -msgid "Load kernel of NetBSD." -msgstr "Kernel von NetBSD laden." - -#: grub-core/loader/i386/bsd.c:2147 -msgid "Load FreeBSD env." -msgstr "FreeBSD-Umgebung laden." - -#: grub-core/loader/i386/bsd.c:2150 -msgid "Load FreeBSD kernel module." -msgstr "FreeBSD-Kernelmodul laden." - -#: grub-core/loader/i386/bsd.c:2153 -msgid "Load NetBSD kernel module." -msgstr "NetBSD-Kernelmodul laden." - -#: grub-core/loader/i386/bsd.c:2156 -msgid "Load NetBSD kernel module (ELF)." -msgstr "NetBSD-Kernelmodul laden (ELF)." - -#: grub-core/loader/i386/bsd.c:2159 -msgid "Load FreeBSD kernel module (ELF)." -msgstr "FreeBSD-Kernelmodul laden (ELF)." - -#. TRANSLATORS: ramdisk isn't identifier, -#. it can be translated. -#: grub-core/loader/i386/bsd.c:2165 -msgid "Load kOpenBSD ramdisk." -msgstr "Ramdisk von kOpenBSD laden." - -#. TRANSLATORS: "payload" is a term used -#. by coreboot and must be translated in -#. sync with coreboot. If unsure, -#. let it untranslated. -#: grub-core/loader/i386/coreboot/chainloader.c:510 -msgid "Load another coreboot payload" -msgstr "Weiteres Coreboot-Payload laden" - -#: grub-core/loader/i386/linux.c:876 -msgid "Legacy `ask' parameter no longer supported." -msgstr "Veralteter Parameter »%s« wird nicht mehr unterstützt." - -#: grub-core/loader/i386/linux.c:892 grub-core/loader/i386/linux.c:902 -#: grub-core/loader/i386/linux.c:932 -#, c-format -msgid "%s is deprecated. Use set gfxpayload=%s before linux command instead.\n" -msgstr "" -"%s ist veraltet. Verwenden Sie stattdessen gfxpayload=%s vor dem Linux-" -"Befehl.\n" - -#. TRANSLATORS: "x" has to be entered in, like an identifier, -#. so please don't use better Unicode codepoints. -#: grub-core/loader/i386/linux.c:915 -#, c-format -msgid "" -"%s is deprecated. VGA mode %d isn't recognized. Use set " -"gfxpayload=WIDTHxHEIGHT[xDEPTH] before linux command instead.\n" -msgstr "" -"%s ist veraltet. VGA-Modus %d wurde nicht erkannt. Verwenden Sie stattdessen " -"gfxpayload=BREITExHÖHE[xTIEFE] vor dem Linux-Befehl.\n" - -#: grub-core/loader/i386/pc/chainloader.c:302 -msgid "[--force|--bpb] FILE" -msgstr "[--force|--bpb] GERÄT" - -#: grub-core/loader/i386/pc/freedos.c:148 util/setup.c:293 -#, c-format -msgid "the size of `%s' is too large" -msgstr "»%s« ist zu groß" - -#: grub-core/loader/i386/pc/freedos.c:183 -msgid "Load FreeDOS kernel.sys." -msgstr "FreeDOS-kernel.sys laden." - -#: grub-core/loader/i386/pc/ntldr.c:155 -msgid "Load NTLDR or BootMGR." -msgstr "NTLDR oder BootMGR laden." - -#. TRANSLATORS: it's about guessing which GRUB disk -#. is which Plan9 disk. If your language has no -#. word "mapping" you can use another word which -#. means that the GRUBDEVICE and PLAN9DEVICE are -#. actually the same device, just named differently -#. in OS and GRUB. -#: grub-core/loader/i386/pc/plan9.c:59 -msgid "Override guessed mapping of Plan9 devices." -msgstr "Die geschätzte Zuordnung von Plan9-Geräten überschreiben." - -#: grub-core/loader/i386/pc/plan9.c:60 -msgid "GRUBDEVICE=PLAN9DEVICE" -msgstr "GRUB-GERÄT=PLAN9-GERÄT" - -#: grub-core/loader/i386/pc/plan9.c:599 -msgid "KERNEL ARGS" -msgstr "KERNEL ARGUMENTE" - -#: grub-core/loader/i386/pc/plan9.c:599 -msgid "Load Plan9 kernel." -msgstr "Plan9-Kernel laden." - -#: grub-core/loader/i386/pc/pxechainloader.c:161 -msgid "Load a PXE image." -msgstr "Ein PXE-Abbild laden." - -#: grub-core/loader/i386/pc/truecrypt.c:226 -msgid "Load Truecrypt ISO." -msgstr "Truecrypt-ISO laden." - -#: grub-core/loader/i386/xen.c:781 grub-core/loader/i386/xen.c:865 -msgid "initrd already loaded" -msgstr "initrd ist bereits geladen" - -#: grub-core/loader/i386/xen.c:968 -msgid "Load module." -msgstr "Modul laden." - -#: grub-core/loader/i386/xnu.c:1003 -msgid "Press any key to launch xnu" -msgstr "Drücken Sie eine beliebige Taste, um xnu zu starten" - -#. TRANSLATORS: `device-properties' -#. is a variable name, -#. not a program. -#: grub-core/loader/i386/xnu.c:1159 -msgid "Load `device-properties' dump." -msgstr "Inhalt von »device-properties« laden" - -#: grub-core/loader/ia64/efi/linux.c:124 -msgid "Could not locate FPSWA driver" -msgstr "FPSWA-Treiber konnte nicht gefunden werden" - -#: grub-core/loader/ia64/efi/linux.c:132 -msgid "FPSWA protocol wasn't able to find the interface" -msgstr "Das FPSWA-Protokoll war nicht imstande, die Schnittstelle zu finden" - -#: grub-core/loader/ia64/efi/linux.c:580 -msgid "No FPSWA found" -msgstr "Kein FPSWA gefunden" - -#: grub-core/loader/ia64/efi/linux.c:582 -#, c-format -msgid "FPSWA revision: %x\n" -msgstr "FPSWA-Revision: %x\n" - -#: grub-core/loader/ia64/efi/linux.c:591 -msgid "FILE [ARGS...]" -msgstr "DATEI [ARGUMENTE …]" - -#: grub-core/loader/ia64/efi/linux.c:597 -msgid "Display FPSWA version." -msgstr "FPSWA-Version anzeigen." - -#: grub-core/loader/multiboot.c:248 -msgid "WARNING: no console will be available to OS" -msgstr "WARNUNG: Im Betriebssystem wird keine Konsole verfügbar sein" - -#: grub-core/loader/multiboot.c:450 -msgid "Load a multiboot 2 kernel." -msgstr "Einen Multiboot2-Kernel laden." - -#: grub-core/loader/multiboot.c:453 -msgid "Load a multiboot 2 module." -msgstr "Ein Multiboot2-Modul laden." - -#: grub-core/loader/multiboot.c:456 -msgid "Load a multiboot kernel." -msgstr "Einen Multiboot-Kernel laden." - -#: grub-core/loader/multiboot.c:459 -msgid "Load a multiboot module." -msgstr "Ein Multiboot-Modul laden." - -#: grub-core/loader/riscv/linux.c:30 grub-core/loader/riscv/linux.c:40 -msgid "Linux not supported yet" -msgstr "Linux wird noch nicht unterstützt" - -#: grub-core/loader/xnu.c:1416 grub-core/term/gfxterm_background.c:45 -msgid "Background image mode." -msgstr "Modus des Hintergrundbildes." - -#. TRANSLATORS: This refers to background image mode (stretched or -#. in left-top corner). Note that GRUB will accept only original -#. keywords stretch and normal, not the translated ones. -#. So please put both in translation -#. e.g. stretch(=%STRETCH%)|normal(=%NORMAL%). -#. The percents mark the translated version. Since many people -#. may not know the word stretch or normal I recommend -#. putting the translation either here or in "Background image mode." -#. string. -#: grub-core/loader/xnu.c:1416 grub-core/term/gfxterm_background.c:55 -msgid "stretch|normal" -msgstr "stretch(=ZOOM)|normal(=NORMAL)" - -#: grub-core/loader/xnu.c:1482 -msgid "Load XNU image." -msgstr "XNU-Abbild laden." - -#: grub-core/loader/xnu.c:1484 -msgid "Load 64-bit XNU image." -msgstr "64-bit XNU-Abbild laden." - -#: grub-core/loader/xnu.c:1486 -msgid "Load XNU extension package." -msgstr "XNU-Erweiterungspaket laden." - -#: grub-core/loader/xnu.c:1488 -msgid "Load XNU extension." -msgstr "XNU-Erweiterung laden." - -#. TRANSLATORS: OSBundleRequired is a -#. variable name in xnu extensions -#. manifests. It behaves mostly like -#. GNU/Linux runlevels. -#. -#: grub-core/loader/xnu.c:1495 -msgid "DIRECTORY [OSBundleRequired]" -msgstr "VERZEICHNIS [OSBundleRequired]" - -#. TRANSLATORS: There are many extensions -#. in extension directory. -#: grub-core/loader/xnu.c:1498 -msgid "Load XNU extension directory." -msgstr "XNU-Erweiterungsverzeichnis laden." - -#. TRANSLATORS: ramdisk here isn't identifier. It can be translated. -#: grub-core/loader/xnu.c:1501 -msgid "Load XNU ramdisk. It will be available in OS as md0." -msgstr "XNU-Ramdisk laden. Wird im Betriebssystem als md0 angezeigt." - -#: grub-core/loader/xnu.c:1505 -msgid "Load a splash image for XNU." -msgstr "Begrüßungsbildschirm für XNU laden." - -#: grub-core/loader/xnu.c:1510 -msgid "Load an image of hibernated XNU." -msgstr "Ein gespeichertes XNU-Abbild laden." - -#: grub-core/mmap/mmap.c:538 -msgid "ADDR1,MASK1[,ADDR2,MASK2[,...]]" -msgstr "ADR1,MASKE1[,ADR2,MASKE2[,...]]" - -#: grub-core/mmap/mmap.c:539 -msgid "Declare memory regions as faulty (badram)." -msgstr "Speicherbereiche als »badram« deklarieren." - -#: grub-core/mmap/mmap.c:541 -msgid "FROM[K|M|G] TO[K|M|G]" -msgstr "VON[K|M|G] BIS[K|M|G]" - -#: grub-core/mmap/mmap.c:542 -msgid "Remove any memory regions in specified range." -msgstr "Alle Speichersegmente im angegebenen Bereich löschen." - -#: grub-core/net/bootp.c:653 -msgid "four arguments expected" -msgstr "Vier Argumente werden erwartet" - -#: grub-core/net/bootp.c:661 grub-core/net/net.c:1155 -#, c-format -msgid "unrecognised network interface `%s'" -msgstr "Netzwerk-Schnittstelle »%s« wurde nicht erkannt" - -#: grub-core/net/bootp.c:664 -msgid "no DHCP info found" -msgstr "Keine DHCP-Informationen gefunden" - -#: grub-core/net/bootp.c:674 -msgid "no DHCP options found" -msgstr "Keine DHCP-Optionen gefunden" - -#: grub-core/net/bootp.c:682 -msgid "invalid DHCP option code" -msgstr "Ungültiger DHCP-Optionscode" - -#: grub-core/net/bootp.c:686 -#, c-format -msgid "no DHCP option %u found" -msgstr "Keine DHCP-Option %u gefunden" - -#: grub-core/net/bootp.c:743 -#, c-format -msgid "unrecognised DHCP option format specification `%s'" -msgstr "Nicht erkannte Formatspezifikation für DHCP-Option »%s«" - -#: grub-core/net/bootp.c:767 -msgid "no network card found" -msgstr "Keine Netzwerkkarte gefunden" - -#: grub-core/net/bootp.c:859 grub-core/net/net.c:389 -#, c-format -msgid "couldn't autoconfigure %s" -msgstr "%s konnte nicht automatisch konfiguriert werden" - -#: grub-core/net/bootp.c:873 grub-core/net/bootp.c:876 -msgid "[CARD]" -msgstr "[KARTE]" - -#: grub-core/net/bootp.c:874 -msgid "perform a bootp autoconfiguration" -msgstr "Eine bootp-Autokonfiguration ausführen" - -#: grub-core/net/bootp.c:877 -msgid "perform a DHCP autoconfiguration" -msgstr "Eine DHCP-Autokonfiguration ausführen" - -#: grub-core/net/bootp.c:879 -msgid "VAR INTERFACE NUMBER DESCRIPTION" -msgstr "VARIABLE SCHNITTSTELLE ZAHL BESCHREIBUNG" - -#: grub-core/net/bootp.c:880 -msgid "" -"retrieve DHCP option and save it into VAR. If VAR is - then print the value." -msgstr "" -"DHCP-Option holen und in VARIABLE speichern. Falls VARIABLE »-« ist, den " -"Wert ausgeben." - -#: grub-core/net/dns.c:459 -msgid "no DNS servers configured" -msgstr "Es wurden keine DNS-Server konfiguriert" - -#: grub-core/net/dns.c:522 -msgid "domain name component is too long" -msgstr "Domainname-Komponente ist zu lang" - -#: grub-core/net/dns.c:618 grub-core/net/dns.c:666 -msgid "no DNS record found" -msgstr "Keine DNS-Angabe gefunden" - -#: grub-core/net/dns.c:626 -msgid "no DNS reply received" -msgstr "Kein DNS-Antwort empfangen" - -#: grub-core/net/dns.c:682 -msgid "only ipv4" -msgstr "nur ipv4" - -#: grub-core/net/dns.c:686 -msgid "only ipv6" -msgstr "nur ipv6" - -#: grub-core/net/dns.c:690 -msgid "prefer ipv4" -msgstr "ipv4 bevorzugen" - -#: grub-core/net/dns.c:694 -msgid "prefer ipv6" -msgstr "ipv6 bevorzugen" - -#: grub-core/net/dns.c:759 -msgid "ADDRESS DNSSERVER" -msgstr "ADDRESSE DNS_SERVER" - -#: grub-core/net/dns.c:760 -msgid "Perform a DNS lookup" -msgstr "Eine DNS-Suche ausführen" - -#: grub-core/net/dns.c:762 grub-core/net/dns.c:765 -msgid "DNSSERVER" -msgstr "DNSSERVER" - -#: grub-core/net/dns.c:763 -msgid "Add a DNS server" -msgstr "Einen DNS-Server hinzufügen" - -#: grub-core/net/dns.c:766 -msgid "Remove a DNS server" -msgstr "Einen DNS-Server entfernen" - -#: grub-core/net/dns.c:768 -msgid "List DNS servers" -msgstr "DNS-Server auflisten" - -#: grub-core/net/drivers/efi/efinet.c:49 grub-core/net/drivers/efi/efinet.c:65 -#: grub-core/net/drivers/efi/efinet.c:77 grub-core/net/drivers/emu/emunet.c:62 -#: grub-core/net/drivers/i386/pc/pxe.c:273 -#: grub-core/net/drivers/ieee1275/ofnet.c:75 -#: grub-core/net/drivers/uboot/ubootnet.c:62 -msgid "couldn't send network packet" -msgstr "Netzwerkpaket konnte nicht gesendet werden" - -#: grub-core/net/drivers/ieee1275/ofnet.c:326 -#: grub-core/net/drivers/ieee1275/ofnet.c:359 -msgid "interpret is not supported" -msgstr "Interpretierung wird nicht unterstützt" - -#: grub-core/net/drivers/ieee1275/ofnet.c:336 -msgid "alloc-mem failed" -msgstr "Speicherzuweisung (alloc-mem) ist gescheitert" - -#: grub-core/net/drivers/ieee1275/ofnet.c:370 -msgid "free-mem failed" -msgstr "free-mem ist gescheitert" - -#: grub-core/net/http.c:105 -msgid "unsupported HTTP response" -msgstr "Nicht unterstützte HTTP-Antwort" - -#. TRANSLATORS: GRUB HTTP code is pretty young. So even perfectly -#. valid answers like 403 will trigger this very generic message. -#: grub-core/net/http.c:126 -#, c-format -msgid "unsupported HTTP error %d: %s" -msgstr "Nicht unterstützter HTTP-Fehler %d: %s" - -#: grub-core/net/http.c:429 grub-core/net/tftp.c:420 -#, c-format -msgid "time out opening `%s'" -msgstr "Zeitüberschreitung beim Öffnen von »%s«" - -#: grub-core/net/net.c:179 -msgid "timeout: could not resolve hardware address" -msgstr "Zeitüberschreitung: Hardware-Adresse konnte nicht aufgelöst werden" - -#: grub-core/net/net.c:548 -#, c-format -msgid "unresolvable address %s" -msgstr "Nicht auflösbare Adresse %s" - -#: grub-core/net/net.c:594 -#, c-format -msgid "unrecognised network address `%s'" -msgstr "Nicht erkannte Netzwerkadresse »%s«" - -#: grub-core/net/net.c:661 -msgid "destination unreachable" -msgstr "Ziel ist nicht erreichbar" - -#. TRANSLATORS: route loop is a condition when e.g. -#. to contact server A you need to go through B -#. and to contact B you need to go through A. -#: grub-core/net/net.c:684 -msgid "route loop detected" -msgstr "Routenschleife entdeckt" - -#: grub-core/net/net.c:700 -msgid "address not found" -msgstr "Adresse nicht gefunden" - -#: grub-core/net/net.c:704 -msgid "you can't delete this address" -msgstr "Sie können diese Adresse nicht löschen" - -#: grub-core/net/net.c:776 grub-core/net/net.c:792 -#, c-format -msgid "Unsupported hw address type %d\n" -msgstr "Nicht unterstützter Hardware-Adresstyp %d\n" - -#: grub-core/net/net.c:813 -#, c-format -msgid "Unsupported address type %d\n" -msgstr "Nicht unterstützter Adresstyp %d\n" - -#: grub-core/net/net.c:1017 grub-core/net/net.c:1131 -msgid "three arguments expected" -msgstr "Drei Argumente erwartet" - -#: grub-core/net/net.c:1023 -msgid "card not found" -msgstr "Karte nicht gefunden" - -#. TRANSLATORS: it refers to the network address. -#: grub-core/net/net.c:1167 -msgid "temporary" -msgstr "temporär" - -#: grub-core/net/net.c:1190 -#, c-format -msgid "Unknown address type %d\n" -msgstr "Unbekannter Adresstyp %d\n" - -#: grub-core/net/net.c:1298 -msgid "no server is specified" -msgstr "Kein Server angegeben" - -#: grub-core/net/net.c:1637 -#, c-format -msgid "timeout reading `%s'" -msgstr "Zeitüberschreitung beim Lesen von »%s«" - -#. TRANSLATORS: HWADDRESS stands for -#. "hardware address". -#: grub-core/net/net.c:1762 -msgid "SHORTNAME CARD ADDRESS [HWADDRESS]" -msgstr "KURZNAME KARDE ADRESSE [HW-ADRESSE]" - -#: grub-core/net/net.c:1763 -msgid "Add a network address." -msgstr "Eine Netzwerkadresse hinzufügen." - -#: grub-core/net/net.c:1766 -msgid "[CARD [HWADDRESS]]" -msgstr "KARTE [HW-ADRESSE]" - -#: grub-core/net/net.c:1767 -msgid "Perform an IPV6 autoconfiguration" -msgstr "Eine IPV6-Autokonfiguration ausführen" - -#: grub-core/net/net.c:1770 grub-core/net/net.c:1777 -msgid "SHORTNAME" -msgstr "KURZNAME" - -#: grub-core/net/net.c:1771 -msgid "Delete a network address." -msgstr "Eine Netzwerkadresse löschen." - -#. TRANSLATORS: "gw" is a keyword. -#: grub-core/net/net.c:1774 -msgid "SHORTNAME NET [INTERFACE| gw GATEWAY]" -msgstr "KURZNAME NETZ [SCHNITTSTELLE| gw GATEWAY]" - -#: grub-core/net/net.c:1775 -msgid "Add a network route." -msgstr "Eine Netzwerkroute hinzufügen." - -#: grub-core/net/net.c:1778 -msgid "Delete a network route." -msgstr "Eine Netzwerkroute entfernen." - -#: grub-core/net/net.c:1780 -msgid "list network routes" -msgstr "Netzwerkrouten auflisten" - -#: grub-core/net/net.c:1782 -msgid "list network cards" -msgstr "Netzwerkkarten auflisten" - -#: grub-core/net/net.c:1784 -msgid "list network addresses" -msgstr "Netzwerkadressen auflisten" - -#: grub-core/net/tcp.c:681 -msgid "connection refused" -msgstr "Verbindung verweigert" - -#: grub-core/net/tcp.c:684 -msgid "connection timeout" -msgstr "Verbindungsabbruch wegen Zeitüberschreitung" - -#: grub-core/normal/auth.c:220 -msgid "Enter username: " -msgstr "Benutzername eingeben:" - -#: grub-core/normal/auth.c:269 -msgid "[USERLIST]" -msgstr "[BENUTZERLISTE]" - -#: grub-core/normal/auth.c:270 -msgid "Check whether user is in USERLIST." -msgstr "Überprüfen Sie, ob der Benutzer in der BENUTZERLISTE aufgeführt ist." - -#: grub-core/normal/cmdline.c:174 grub-core/normal/menu_entry.c:1068 -msgid "Possible commands are:" -msgstr "Mögliche Befehle sind:" - -#: grub-core/normal/cmdline.c:177 grub-core/normal/menu_entry.c:1072 -msgid "Possible devices are:" -msgstr "Mögliche Geräte sind:" - -#: grub-core/normal/cmdline.c:180 grub-core/normal/menu_entry.c:1076 -msgid "Possible files are:" -msgstr "Mögliche Dateien sind:" - -#: grub-core/normal/cmdline.c:183 grub-core/normal/menu_entry.c:1080 -msgid "Possible partitions are:" -msgstr "Mögliche Partitionen sind:" - -#: grub-core/normal/cmdline.c:186 grub-core/normal/menu_entry.c:1084 -msgid "Possible arguments are:" -msgstr "Mögliche Argumente sind:" - -#. TRANSLATORS: this message is used if none of above matches. -#. This shouldn't happen but please use the general term for -#. "thing" or "object". -#: grub-core/normal/cmdline.c:192 grub-core/normal/menu_entry.c:1088 -msgid "Possible things are:" -msgstr "Mögliche Dinge sind:" - -#: grub-core/normal/color.c:81 -#, c-format -msgid "Warning: syntax error (missing slash) in `%s'\n" -msgstr "Warnung: Syntaxfehler (fehlender /) in »%s«\n" - -#: grub-core/normal/color.c:90 -#, c-format -msgid "Warning: invalid foreground color `%s'\n" -msgstr "Warnung: ungültige Vordergrundfarbe »%s«\n" - -#: grub-core/normal/color.c:96 -#, c-format -msgid "Warning: invalid background color `%s'\n" -msgstr "Warnung: ungültige Hintergrundfarbe »%s«\n" - -#: grub-core/normal/context.c:206 -msgid "ENVVAR [ENVVAR] ..." -msgstr "UMGVAR [UMGVAR] ..." - -#: grub-core/normal/context.c:207 -msgid "Export variables." -msgstr "Variablen exportieren." - -#: grub-core/normal/datetime.c:25 -msgid "Sunday" -msgstr "Sonntag" - -#: grub-core/normal/datetime.c:26 -msgid "Monday" -msgstr "Montag" - -#: grub-core/normal/datetime.c:27 -msgid "Tuesday" -msgstr "Dienstag" - -#: grub-core/normal/datetime.c:28 -msgid "Wednesday" -msgstr "Mittwoch" - -#: grub-core/normal/datetime.c:29 -msgid "Thursday" -msgstr "Donnerstag" - -#: grub-core/normal/datetime.c:30 -msgid "Friday" -msgstr "Freitag" - -#: grub-core/normal/datetime.c:31 -msgid "Saturday" -msgstr "Samstag" - -#: grub-core/normal/dyncmd.c:187 -msgid "module isn't loaded" -msgstr "Modul ist nicht geladen" - -#: grub-core/normal/main.c:211 -#, c-format -msgid "GNU GRUB version %s" -msgstr "GNU GRUB Version %s" - -#: grub-core/normal/main.c:360 -msgid "ESC at any time exits." -msgstr "Beenden ist jederzeit mit ESC möglich." - -#: grub-core/normal/main.c:363 -#, c-format -msgid "" -"Minimal BASH-like line editing is supported. For the first word, TAB lists " -"possible command completions. Anywhere else TAB lists possible device or " -"file completions. %s" -msgstr "" -"Minimale BASH-ähnliche Zeilenbearbeitung wird unterstützt. Für das erste " -"Wort listet TAB die möglichen Befehlsvervollständigungen auf. Ansonsten " -"werden mit TAB die möglichen Geräte-oder Dateivervollständigungen angezeigt. " -"%s" - -#. TRANSLATORS: it's command line prompt. -#: grub-core/normal/main.c:395 -msgid ">" -msgstr ">" - -#. TRANSLATORS: it's command line prompt. -#: grub-core/normal/main.c:398 -msgid "grub>" -msgstr "grub>" - -#: grub-core/normal/main.c:518 -msgid "Clear the screen." -msgstr "Den Bildschirm leeren." - -#: grub-core/normal/main.c:527 -msgid "Enter normal mode." -msgstr "In Normalmodus wechseln." - -#: grub-core/normal/main.c:529 -msgid "Exit from normal mode." -msgstr "Normalmodus abbrechen." - -#: grub-core/normal/menu.c:66 grub-core/normal/menu_entry.c:1449 -msgid "Press any key to continue..." -msgstr "Beliebige Taste drücken, um fortzusetzen …" - -#: grub-core/normal/menu.c:815 -#, c-format -msgid "Booting `%s'" -msgstr "»%s« wird gebootet" - -#: grub-core/normal/menu.c:827 -#, c-format -msgid "Falling back to `%s'" -msgstr "Alternative »%s« wird verwendet" - -#: grub-core/normal/menu.c:843 -msgid "Failed to boot both default and fallback entries.\n" -msgstr "" -"Sowohl Vorgabe- als auch Alternativeinträge konnten nicht gebootet werden.\n" - -#: grub-core/normal/menu_entry.c:1171 -msgid "Booting a command list" -msgstr "Eine Befehlsliste booten" - -#: grub-core/normal/menu_text.c:160 -msgid "" -"Minimum Emacs-like screen editing is supported. TAB lists completions. Press " -"Ctrl-x or F10 to boot, Ctrl-c or F2 for a command-line or ESC to discard " -"edits and return to the GRUB menu." -msgstr "" -"Minimale Emacs-ähnliche Bildschirmbearbeitung wird unterstützt. TAB listet " -"Vervollständigungen auf. Drücken Sie Strg-X oder F10 zum Booten, Strg-C oder " -"F2 für eine Befehlszeile oder ESC, um abzubrechen und zum GRUB-Menü " -"zurückzukehren." - -#: grub-core/normal/menu_text.c:170 -#, c-format -msgid "Use the %C and %C keys to select which entry is highlighted." -msgstr "Verwenden Sie die Tasten %C und %C zum Markieren eines Eintrags." - -#. TRANSLATORS: that's the list of binary unit prefixes. -#: grub-core/normal/misc.c:38 -msgid "B" -msgstr "B" - -#: grub-core/normal/misc.c:38 -msgid "KiB" -msgstr "KiB" - -#: grub-core/normal/misc.c:38 -msgid "MiB" -msgstr "MiB" - -#: grub-core/normal/misc.c:38 -msgid "GiB" -msgstr "GiB" - -#: grub-core/normal/misc.c:38 -msgid "TiB" -msgstr "TiB" - -#: grub-core/normal/misc.c:38 -msgid "PiB" -msgstr "PiB" - -#. TRANSLATORS: that's the list of binary unit prefixes. -#: grub-core/normal/misc.c:40 -msgid "K" -msgstr "K" - -#: grub-core/normal/misc.c:40 -msgid "M" -msgstr "M" - -#: grub-core/normal/misc.c:40 -msgid "G" -msgstr "G" - -#: grub-core/normal/misc.c:40 -msgid "T" -msgstr "T" - -#: grub-core/normal/misc.c:40 -msgid "P" -msgstr "P" - -#. TRANSLATORS: that's the list of binary unit prefixes. -#: grub-core/normal/misc.c:42 -msgid "B/s" -msgstr "B/s" - -#: grub-core/normal/misc.c:42 -msgid "KiB/s" -msgstr "KiB/s" - -#: grub-core/normal/misc.c:42 -msgid "MiB/s" -msgstr "MiB/s" - -#: grub-core/normal/misc.c:42 -msgid "GiB/s" -msgstr "GiB/s" - -#: grub-core/normal/misc.c:42 -msgid "TiB/s" -msgstr "TiB/s" - -#: grub-core/normal/misc.c:42 -msgid "PiB/s" -msgstr "PiB/s" - -#: grub-core/normal/misc.c:96 -#, c-format -msgid "Partition %s:" -msgstr "Partition %s:" - -#: grub-core/normal/misc.c:101 -#, c-format -msgid "Device %s:" -msgstr "Gerät %s:" - -#: grub-core/normal/misc.c:107 -msgid "Filesystem cannot be accessed" -msgstr "Zugriff auf Dateisystem nicht möglich" - -#: grub-core/normal/misc.c:121 -#, c-format -msgid "Filesystem type %s" -msgstr "Dateisystemtyp %s" - -#: grub-core/normal/misc.c:131 -#, c-format -msgid "- Label `%s'" -msgstr "- Bezeichnung »%s«" - -#. TRANSLATORS: Arguments are year, month, day, hour, minute, -#. second, day of the week (translated). -#: grub-core/normal/misc.c:148 -#, c-format -msgid "- Last modification time %d-%02d-%02d %02d:%02d:%02d %s" -msgstr "- Letzte Änderungszeit %d-%02d-%02d %02d:%02d:%02d %s" - -#: grub-core/normal/misc.c:171 -msgid "No known filesystem detected" -msgstr "Kein bekanntes Dateisystem erkannt" - -#: grub-core/normal/misc.c:174 -#, c-format -msgid " - Partition start at %llu%sKiB" -msgstr " - Partitionsbeginn bei %llu%sKiB" - -#: grub-core/normal/misc.c:178 -#, c-format -msgid " - Sector size %uB" -msgstr " - Sektorgröße %uB" - -#: grub-core/normal/misc.c:180 -msgid " - Total size unknown" -msgstr " - Gesamtgröße unbekannt" - -#: grub-core/normal/misc.c:182 -#, c-format -msgid " - Total size %llu%sKiB" -msgstr " - Gesamtgröße %llu%sKiB" - -#. TRANSLATORS: Replace dot with appropriate decimal separator for -#. your language. -#: grub-core/normal/misc.c:186 -msgid ".5" -msgstr ".5" - -#. TRANSLATORS: This has to fit on one line. It's ok to include few -#. words but don't write poems. -#: grub-core/normal/term.c:82 -msgid "--MORE--" -msgstr "--MEHR--" - -#: grub-core/osdep/aros/config.c:92 grub-core/osdep/unix/config.c:137 -#: grub-core/osdep/windows/config.c:55 -#, c-format -msgid "cannot open configuration file `%s': %s" -msgstr "Konfigurationsdatei »%s« kann nicht geöffnet werden: %s" - -#: grub-core/osdep/basic/compress.c:8 grub-core/osdep/basic/compress.c:14 -#: grub-core/osdep/basic/compress.c:20 -msgid "no compression is available for your platform" -msgstr "Auf Ihrer Plattform ist keine Kompression verfügbar" - -#: grub-core/osdep/basic/no_platform.c:30 -#: grub-core/osdep/windows/platform.c:418 -msgid "no IEEE1275 routines are available for your platform" -msgstr "Für Ihre Plattform sind keine IEEE1275-Routinen verfügbar" - -#: grub-core/osdep/basic/no_platform.c:38 -msgid "no EFI routines are available for your platform" -msgstr "Für Ihre Plattform sind keine EFI-Routinen verfügbar" - -#: grub-core/osdep/basic/no_platform.c:45 -#: grub-core/osdep/windows/platform.c:425 -msgid "no SGI routines are available for your platform" -msgstr "Für Ihre Plattform sind keine SGI-Routinen verfügbar" - -#. TRANSLATORS: The OS itself may very well have a random -#. number generator but GRUB doesn't know how to access it. -#: grub-core/osdep/basic/random.c:42 -msgid "no random number generator is available for your OS" -msgstr "Für Ihr Betriebssystem ist kein Zufallszahlengenerator verfügbar" - -#: grub-core/osdep/devmapper/getroot.c:81 -msgid "Failed to create `device-mapper' tree" -msgstr "Baum für »device-mapper« konnte nicht erstellt werden" - -#: grub-core/osdep/devmapper/getroot.c:197 -#: grub-core/osdep/freebsd/getroot.c:202 -#, c-format -msgid "can't mount encrypted volume `%s': %s" -msgstr "Verschlüsselter Datenträger »%s« konnte nicht eingebunden werden: %s" - -#. TRANSLATORS: geom is the name of (k)FreeBSD device framework. -#. Usually left untranslated. -#. -#: grub-core/osdep/freebsd/getroot.c:82 grub-core/osdep/freebsd/getroot.c:164 -#: grub-core/osdep/freebsd/getroot.c:258 grub-core/osdep/freebsd/getroot.c:316 -msgid "couldn't open geom" -msgstr "»geom« konnte nicht geöffnet werden!" - -#: grub-core/osdep/freebsd/getroot.c:182 grub-core/osdep/freebsd/getroot.c:277 -msgid "couldn't find geli consumer" -msgstr "Geli-Nutzer konnte nicht gefunden werden" - -#: grub-core/osdep/freebsd/getroot.c:282 -msgid "couldn't retrieve geli UUID" -msgstr "Geli-UUID konnte nicht ermittelt werden" - -#. TRANSLATORS: geom is the name of (k)FreeBSD device framework. -#. Usually left untranslated. "part" is the identifier of one of its -#. classes. -#: grub-core/osdep/freebsd/getroot.c:325 -msgid "couldn't find geom `part' class" -msgstr "»part«-Teil von »geom« konnte nicht geöffnet werden" - -#: grub-core/osdep/freebsd/hostdisk.c:72 grub-core/osdep/linux/hostdisk.c:93 -msgid "unaligned device size" -msgstr "Gerätegröße ist unausgerichtet" - -#: grub-core/osdep/generic/blocklist.c:56 -#, c-format -msgid "attempting to read the core image `%s' from GRUB" -msgstr "Es wird versucht, das Core-Abbild »%s« aus GRUB zu lesen" - -#: grub-core/osdep/generic/blocklist.c:57 -#, c-format -msgid "attempting to read the core image `%s' from GRUB again" -msgstr "Es wird versucht, das Core-Abbild »%s« erneut aus GRUB zu lesen" - -#: grub-core/osdep/generic/blocklist.c:115 -#, c-format -msgid "cannot read `%s' correctly" -msgstr "»%s« kann nicht korrekt gelesen werden" - -#: grub-core/osdep/generic/blocklist.c:126 -msgid "failed to read the sectors of the core image" -msgstr "Lesen der Sektoren des Core-Abbildes ist gescheitert" - -#. TRANSLATORS: On GNU/Hurd, a "translator" is similar to a filesystem -#. mount, but handled by a userland daemon, whose invocation command line -#. is being fetched here. First %s is the file being looked at (for which -#. we are fetching the "translator" command line), second %s is the error -#. message. -#. -#: grub-core/osdep/hurd/getroot.c:79 -#, c-format -msgid "cannot get translator command line for path `%s': %s" -msgstr "" -"Übersetzer-Befehlszeilenpfad für Pfad »%s« konnte nicht ermittelt werden: %s" - -#: grub-core/osdep/hurd/getroot.c:82 -#, c-format -msgid "translator command line is empty for path `%s'" -msgstr "Übersetzer-Befehlszeilenpfad für Pfad »%s« ist leer" - -#. TRANSLATORS: we expect to get something like -#. /hurd/foobar --option1 --option2=baz /dev/something -#. -#: grub-core/osdep/hurd/getroot.c:98 -#, c-format -msgid "" -"translator `%s' for path `%s' has several non-option words, at least `%s' " -"and `%s'" -msgstr "" -"Übersetzer »%s« für Pfad »%s« hat verschiedene Wörter, die keine Optionen " -"sind, mindestens »%s« und »%s«" - -#. TRANSLATORS: we expect to get something like -#. /hurd/foobar --option1 --option2=baz /dev/something -#. -#: grub-core/osdep/hurd/getroot.c:109 -#, c-format -msgid "" -"translator `%s' for path `%s' is given only options, cannot find device part" -msgstr "" -"Übersetzer »%s« für Pfad »%s« wurde nur Optionen übergeben, device-Teil " -"konnte nicht gefunden werden" - -#: grub-core/osdep/hurd/hostdisk.c:73 -#, c-format -msgid "Storage information for `%s' does not include type" -msgstr "Speicherinfo für »%s« enthält keinen Typ" - -#: grub-core/osdep/hurd/hostdisk.c:75 -#, c-format -msgid "`%s' is not a local disk" -msgstr "»%s« ist keine lokale Festplatte" - -#: grub-core/osdep/hurd/hostdisk.c:78 -#, c-format -msgid "" -"Storage information for `%s' indicates neither a plain partition nor a plain " -"disk" -msgstr "" -"Speicherinformation für »%s« weist weder auf eine Partition noch einen " -"Datenträger hin" - -#: grub-core/osdep/linux/blocklist.c:81 grub-core/osdep/linux/blocklist.c:96 -#: grub-core/osdep/linux/blocklist.c:122 -#, c-format -msgid "can't retrieve blocklists: %s" -msgstr "Blocklisten konnten nicht ermittelt werden: %s" - -#: grub-core/osdep/linux/blocklist.c:84 -msgid "blocksize is not divisible by 512" -msgstr "Blockgröße ist nicht durch 512 teilbar" - -#: grub-core/osdep/linux/blocklist.c:86 -msgid "invalid zero blocksize" -msgstr "Ungültige Blockgröße Null" - -#: grub-core/osdep/linux/blocklist.c:90 util/setup.c:744 -msgid "can't retrieve blocklists" -msgstr "Blocklisten konnten nicht ermittelt werden" - -#: grub-core/osdep/linux/getroot.c:154 -#, c-format -msgid "ioctl RAID_VERSION error: %s" -msgstr "RAID_VERSION-Fehler (ioctl): %s" - -#: grub-core/osdep/linux/getroot.c:160 grub-core/osdep/linux/getroot.c:164 -#, c-format -msgid "unsupported RAID version: %d.%d" -msgstr "Nicht unterstützte RAID-Version: %d.%d" - -#: grub-core/osdep/linux/getroot.c:169 -#, c-format -msgid "ioctl GET_ARRAY_INFO error: %s" -msgstr "GET_ARRAY_INFO-Fehler (ioctl): %s" - -#: grub-core/osdep/linux/getroot.c:178 -#, c-format -msgid "ioctl GET_DISK_INFO error: %s" -msgstr "GET_DISK_INFO-Fehler (ioctl): %s" - -#: grub-core/osdep/linux/getroot.c:608 grub-core/osdep/linux/getroot.c:678 -#: grub-core/osdep/linux/hostdisk.c:126 grub-core/osdep/unix/getroot.c:253 -#: grub-core/osdep/unix/getroot.c:642 grub-core/osdep/unix/platform.c:92 -#: grub-core/osdep/unix/platform.c:100 -#, c-format -msgid "Unable to open stream from %s: %s" -msgstr "Datenstrom von %s konnte nicht geöffnet werden: %s" - -#: grub-core/osdep/linux/getroot.c:1033 -#, c-format -msgid "unknown kind of RAID device `%s'" -msgstr "Ungültiger Typ eines RAID-Geräts »%s«" - -#: grub-core/osdep/linux/ofpath.c:181 -#, c-format -msgid "`obppath' not found in parent dirs of `%s', no IEEE1275 name discovery" -msgstr "" -"»obppath« wurde in den übergeordneten Verzeichnissen von »%s« nicht " -"gefunden, keine IEEE1275-Namensermittlung" - -#: grub-core/osdep/linux/ofpath.c:222 grub-core/osdep/unix/getroot.c:505 -#: grub-core/osdep/unix/getroot.c:529 grub-core/osdep/unix/relpath.c:49 -#: util/grub-install.c:984 util/grub-install.c:1331 util/grub-probe.c:323 -#, c-format -msgid "failed to get canonical path of `%s'" -msgstr "Kanonischer Pfad von »%s« konnte nicht ermittelt werden" - -#: grub-core/osdep/linux/ofpath.c:740 -#, c-format -msgid "unknown device type %s" -msgstr "Unbekannter Gerätetyp %s" - -#: grub-core/osdep/linux/ofpath.c:758 util/ieee1275/grub-ofpathname.c:39 -#, c-format -msgid "Usage: %s DEVICE\n" -msgstr "Aufruf: %s GERÄT\n" - -#: grub-core/osdep/unix/exec.c:86 grub-core/osdep/unix/exec.c:172 -#: grub-core/osdep/unix/exec.c:217 -#, c-format -msgid "Unable to fork: %s" -msgstr "Fork konnte nicht angelegt werden: %s" - -#: grub-core/osdep/unix/exec.c:166 grub-core/osdep/unix/exec.c:211 -#, c-format -msgid "Unable to create pipe: %s" -msgstr "Weiterleitung konnte nicht angelegt werden: %s" - -#: grub-core/osdep/unix/getroot.c:370 -msgid "cannot save the original directory" -msgstr "Originalverzeichnis kann nicht gespeichert werden" - -#: grub-core/osdep/unix/getroot.c:423 grub-core/osdep/unix/getroot.c:480 -#: grub-core/osdep/unix/getroot.c:489 -msgid "cannot restore the original directory" -msgstr "Originalverzeichnis kann nicht wiederhergestellt werden" - -#. TRANSLATORS: "stat" comes from the name of POSIX function. -#: grub-core/osdep/unix/getroot.c:551 grub-core/osdep/unix/hostdisk.c:61 -#: grub-core/osdep/unix/relpath.c:73 grub-core/osdep/unix/relpath.c:97 -#: util/getroot.c:160 util/getroot.c:162 util/grub-install.c:774 -#: util/grub-macbless.c:70 -#, c-format -msgid "cannot stat `%s': %s" -msgstr "Aufruf von stat für »%s« nicht möglich: %s" - -#: grub-core/osdep/unix/hostdisk.c:293 -#, c-format -msgid "cannot make temporary file: %s" -msgstr "Temporäre Datei kann nicht angelegt werden: %s" - -#: grub-core/osdep/unix/hostdisk.c:311 -#, c-format -msgid "cannot make temporary directory: %s" -msgstr "Temporäres Verzeichnis konnte nicht erstellt werden: %s" - -#: grub-core/osdep/unix/platform.c:77 -#, c-format -msgid "" -"couldn't find IEEE1275 device path for %s.\n" -"You will have to set `boot-device' variable manually" -msgstr "" -"IEEE1275-Gerätepfad für %s konnte nicht gefunden werden.\n" -"Sie müssen die Variable »boot-device« manuell setzen." - -#. TRANSLATORS: This message is shown when required executable `%s' -#. isn't found. -#: grub-core/osdep/unix/platform.c:149 grub-core/osdep/unix/platform.c:189 -#, c-format -msgid "%s: not found" -msgstr "%s: Nicht gefunden" - -#: grub-core/osdep/unix/platform.c:225 -#, c-format -msgid "" -"`nvsetenv' failed. \n" -"You will have to set `boot-device' variable manually. At the IEEE1275 " -"prompt, type:\n" -" %s\n" -msgstr "" -"»nvsetenv« ist fehlgeschlagen. \n" -"Sie müssen die Variable »boot-device« manuell setzen. Geben Sie am IEEE1275-" -"Prompt Folgendes ein:\n" -" %s\n" - -#: grub-core/osdep/unix/platform.c:240 -msgid "You will have to set `SystemPartition' and `OSLoader' manually." -msgstr "»SystemPartition« und »OSLoader« müssen manuell eingerichtet werden." - -#. TRANSLATORS: canonical pathname is the -#. complete one e.g. /etc/fstab. It has -#. to contain `/' normally, if it doesn't -#. we're in trouble and throw this error. -#: grub-core/osdep/unix/relpath.c:90 -msgid "no `/' in canonical filename" -msgstr "Kanonischer Pfadname enthält keinen »/«" - -#: grub-core/osdep/windows/hostdisk.c:151 -msgid "cygwin_conv_path() failed" -msgstr "cygwin_conv_path() gescheitert" - -#: grub-core/osdep/windows/hostdisk.c:501 util/grub-install.c:570 -msgid "couldn't retrieve random data" -msgstr "Zufallsdaten konnten nicht geholt werden" - -#: grub-core/osdep/windows/platform.c:97 -msgid "Insufficient privileges to access firmware, assuming BIOS" -msgstr "Unzureichende Zugriffsrechte für Firmware, BIOS wird angenommen" - -#: grub-core/osdep/windows/platform.c:225 -msgid "no EFI routines are available when running in BIOS mode" -msgstr "Im BIOS-Modus sind keine EFI-Routinen verfügbar" - -#: grub-core/osdep/windows/platform.c:240 -msgid "unexpected EFI error" -msgstr "Unerwarteter EFI-Fehler" - -#: grub-core/osdep/windows/platform.c:315 -msgid "Couldn't find a free BootNNNN slot" -msgstr "Es konnte keine freier BootNNNN-Slot ist" - -#: grub-core/partmap/gpt.c:191 -msgid "" -"this GPT partition label contains no BIOS Boot Partition; embedding won't be " -"possible" -msgstr "" -"Diese GPT-Partitionsbezeichnung hat keine BIOS-Boot-Partition, Einbettung " -"würde unmöglich sein" - -#: grub-core/partmap/gpt.c:196 -msgid "your BIOS Boot Partition is too small; embedding won't be possible" -msgstr "Ihre BIOS-Boot-Partition ist zu klein, Einbettung würde unmöglich sein" - -#. TRANSLATORS: MBR gap and boot track is the same thing and is the space -#. between MBR and first partitition. If your language translates well only -#. "boot track", you can just use it everywhere. Next two messages are about -#. RAID controllers/software bugs which GRUB has to live with. Please spread -#. the message that these are bugs in other software and not merely -#. suboptimal behaviour. -#: grub-core/partmap/msdos.c:51 -#, c-format -msgid "" -"Sector %llu is already in use by raid controller `%s'; avoiding it. Please " -"ask the manufacturer not to store data in MBR gap" -msgstr "" -"Der Sektor %llu wird bereits vom Raid-Controller »%s« verwendet und wird " -"daher übergangen. Bitte fragen Sie den Hersteller, ob es möglich ist, keine " -"Daten in der MBR-Lücke zu speichern." - -#: grub-core/partmap/msdos.c:54 -#, c-format -msgid "" -"Sector %llu is already in use by the program `%s'; avoiding it. This " -"software may cause boot or other problems in future. Please ask its authors " -"not to store data in the boot track" -msgstr "" -"Der Sektor %llu wird bereits vom Programm »%s« verwendet und wird daher " -"übergangen. Diese Software kann in Zukunft Start- oder andere Probleme " -"hervorrufen. Bitte fragen Sie dessen Autoren, ob es möglich ist, keine Daten " -"im Boot-Bereich zu speichern." - -#: grub-core/partmap/msdos.c:384 -msgid "" -"other software is using the embedding area, and there is not enough room for " -"core.img. Such software is often trying to store data in a way that avoids " -"detection. We recommend you investigate" -msgstr "" -"Andere Software nutzt den Einbettungsbereich, wodurch nicht genug Platz für " -"core.img ist. Solche Software versucht häufig, Daten zu speichern, um sie " -"unauffindbar zu machen. Wir empfehlen Ihnen, dies zu untersuchen" - -#: grub-core/partmap/msdos.c:395 -msgid "" -"this msdos-style partition label has no post-MBR gap; embedding won't be " -"possible" -msgstr "" -"Die MSDOS-Partitionsbezeichnung hat keinen Freiraum nach dem MBR, Einbettung " -"würde unmöglich sein" - -#: grub-core/partmap/msdos.c:404 -msgid "your embedding area is unusually small. core.img won't fit in it." -msgstr "" -"Ihr Einbettungsbereich ist ungewöhnlich klein. core.img würde nicht " -"hineinpassen." - -#: grub-core/parttool/msdospart.c:39 -msgid "Make partition active" -msgstr "Partition als aktiv markieren" - -#: grub-core/parttool/msdospart.c:51 -msgid "not a primary partition" -msgstr "Keine primäre Partition" - -#: grub-core/parttool/msdospart.c:69 -#, c-format -msgid "Partition %d is active now. \n" -msgstr "Partition %d ist nun aktiv. \n" - -#: grub-core/parttool/msdospart.c:74 -#, c-format -msgid "Cleared active flag on %d. \n" -msgstr "»active«-Flag auf %d wurde gelöscht. \n" - -#: grub-core/parttool/msdospart.c:87 -msgid "Change partition type" -msgstr "Partitionstyp ändern" - -#: grub-core/parttool/msdospart.c:88 -msgid "Set `hidden' flag in partition type" -msgstr "»hidden«-Flag im Partitionstyp setzen" - -#: grub-core/parttool/msdospart.c:130 -#, c-format -msgid "the partition type 0x%x isn't valid" -msgstr "Der Partitionstyp 0x%x ist ungültig" - -#. TRANSLATORS: In this case we're actually writing to the disk and actively -#. modifying partition type rather than just defining it. -#: grub-core/parttool/msdospart.c:137 -#, c-format -msgid "Setting partition type to 0x%x\n" -msgstr "Partitionstyp wird auf 0x%x gesetzt\n" - -#. TRANSLATORS: 0 is a quantifier. "break" (similar to bash) -#. can be used e.g. to break 3 loops at once. -#. But asking it to break 0 loops makes no sense. -#: grub-core/script/execute.c:143 -msgid "can't break 0 loops" -msgstr "0 Schleifen können nicht unterbrochen werden" - -#. TRANSLATORS: It's about not being -#. inside a function. "return" can be used only -#. in a function and this error occurs if it's used -#. anywhere else. -#: grub-core/script/execute.c:227 -msgid "not in function body" -msgstr "außerhalb des Bereichs der Funktion" - -#: grub-core/script/execute.c:371 -#, c-format -msgid "invalid variable name `%s'" -msgstr "Ungültiger Variablenname »%s«" - -#: grub-core/script/execute.c:953 -msgid "cannot allocate command buffer" -msgstr "Befehlspuffer kann nicht belegt werden" - -#: grub-core/script/lexer.c:144 util/grub-fstest.c:330 -msgid "unexpected end of file" -msgstr "Unerwartetes Dateiende" - -#: grub-core/script/main.c:55 grub-core/script/main.c:57 -#: grub-core/script/main.c:59 grub-core/script/main.c:67 -msgid "[NUM]" -msgstr "[ZAHL]" - -#: grub-core/script/main.c:55 -msgid "Exit from loops" -msgstr "Schleifendurchlauf beenden" - -#: grub-core/script/main.c:57 -msgid "Continue loops" -msgstr "Schleifen fortsetzen" - -#. TRANSLATORS: Positional arguments are -#. arguments $0, $1, $2, ... -#: grub-core/script/main.c:62 -msgid "Shift positional parameters." -msgstr "Positionsparameter anpassen." - -#: grub-core/script/main.c:64 -msgid "[VALUE]..." -msgstr "[WERT]..." - -#: grub-core/script/main.c:65 -msgid "Set positional parameters." -msgstr "Positionsparameter festlegen." - -#. TRANSLATORS: It's a command description -#. and "Return" is a verb, not a noun. The -#. command in question is "return" and -#. has exactly the same semanics as bash -#. equivalent. -#: grub-core/script/main.c:73 -msgid "Return from a function." -msgstr "Aus einer Funktion zurückkehren." - -#: grub-core/term/gfxterm_background.c:176 -msgid "[-m (stretch|normal)] FILE" -msgstr "[-m (stretch|normal)] DATEI" - -#: grub-core/term/gfxterm_background.c:177 -msgid "Load background image for active terminal." -msgstr "Hintergrundbild für aktives Terminal laden." - -#: grub-core/term/gfxterm_background.c:182 util/grub-install.c:302 -#: util/grub-install.c:303 util/grub-mkrescue.c:107 util/grub-mkrescue.c:108 -#: util/grub-render-label.c:61 util/grub-render-label.c:63 -msgid "COLOR" -msgstr "FARBE" - -#: grub-core/term/gfxterm_background.c:183 -msgid "Set background color for active terminal." -msgstr "Hintergrundfarbe für aktives Terminal festlegen." - -#: grub-core/term/i386/coreboot/cbmemc.c:139 -msgid "Show CBMEM console content." -msgstr "Inhalt der CBMEM-Konsole anzeigen." - -#: grub-core/term/serial.c:57 -msgid "Set the serial unit." -msgstr "Einheit des seriellen Ports festlegen." - -#: grub-core/term/serial.c:58 -msgid "Set the serial port address." -msgstr "Adresse des seriellen Ports festlegen." - -#: grub-core/term/serial.c:59 -msgid "Set the serial port speed." -msgstr "Geschwindigkeit des seriellen Ports festlegen." - -#: grub-core/term/serial.c:60 -msgid "Set the serial port word length." -msgstr "Wortlänge des seriellen Ports festlegen." - -#: grub-core/term/serial.c:61 -msgid "Set the serial port parity." -msgstr "Parität des seriellen Ports festlegen." - -#: grub-core/term/serial.c:62 -msgid "Set the serial port stop bits." -msgstr "Stop-Bits des seriellen Ports festlegen." - -#: grub-core/term/serial.c:63 -msgid "Set the base frequency." -msgstr "Basisfrequenz festlegen." - -#: grub-core/term/serial.c:64 -msgid "Enable/disable RTS/CTS." -msgstr "RTS/CTS aktivieren/deaktivieren." - -#: grub-core/term/serial.c:218 -#, c-format -msgid "serial port `%s' isn't found" -msgstr "Serieller Port »%s« wurde nicht gefunden" - -#: grub-core/term/serial.c:254 -msgid "unsupported serial port flow control" -msgstr "Flusskontrolle des seriellen Ports wird nicht unterstützt" - -#: grub-core/term/serial.c:429 -msgid "[OPTIONS...]" -msgstr "[OPTIONEN…]" - -#: grub-core/term/serial.c:430 -msgid "Configure serial port." -msgstr "Serielle Schnittstelle konfigurieren." - -#: grub-core/term/terminfo.c:184 -#, c-format -msgid "unknown terminfo type `%s'" -msgstr "Unbekannter Terminfo-Typ »%s«" - -#: grub-core/term/terminfo.c:668 -msgid "ASCII" -msgstr "ASCII" - -#: grub-core/term/terminfo.c:671 -msgid "UTF-8" -msgstr "UTF-8" - -#. TRANSLATORS: visually ordered UTF-8 is a non-compliant encoding -#. based on UTF-8 with right-to-left languages written in reverse. -#. Used on some terminals. Normal UTF-8 is refered as -#. "logically-ordered UTF-8" by opposition. -#: grub-core/term/terminfo.c:677 -msgid "visually-ordered UTF-8" -msgstr "Visuelles UTF-8" - -#: grub-core/term/terminfo.c:680 -msgid "Unknown encoding" -msgstr "Unbekannte Kodierung" - -#: grub-core/term/terminfo.c:684 -msgid "Current terminfo types:" -msgstr "Aktuelle Terminfo-Typen:" - -#: grub-core/term/terminfo.c:699 -msgid "Terminal is ASCII-only [default]." -msgstr "Terminal ist nur ASCII [Vorgabe]." - -#: grub-core/term/terminfo.c:700 -msgid "Terminal is logical-ordered UTF-8." -msgstr "Terminal ist logisches UTF-8." - -#: grub-core/term/terminfo.c:701 -msgid "Terminal is visually-ordered UTF-8." -msgstr "Terminal ist visuelles UTF-8." - -#: grub-core/term/terminfo.c:703 -msgid "Terminal has specified geometry." -msgstr "Terminalgeometrie wurde festgelegt." - -#. TRANSLATORS: "x" has to be entered in, like an identifier, so please don't -#. use better Unicode codepoints. -#: grub-core/term/terminfo.c:706 -msgid "WIDTHxHEIGHT." -msgstr "BREITExHÖHE." - -#: grub-core/term/terminfo.c:746 -msgid "incorrect terminal dimensions specification" -msgstr "Ungültige Angabe der Terminalgeometrie" - -#: grub-core/term/terminfo.c:776 -#, c-format -msgid "terminal %s isn't found or it's not handled by terminfo" -msgstr "" -"Terminal %s wurde nicht gefunden oder wird von terminfo nicht berücksichtigt" - -#: grub-core/term/terminfo.c:785 -msgid "[[-a|-u|-v] [-g WxH] TERM [TYPE]]" -msgstr "[[-a|-u|-v] [-g BxH] TERM [TYP]]" - -#: grub-core/term/terminfo.c:786 -msgid "Set terminfo type of TERM to TYPE.\n" -msgstr "terminfo-Typ von TERM auf TYP setzen.\n" - -#. TRANSLATORS: this is the BLOCK-argument, not -#. environment block. -#: grub-core/tests/test_blockarg.c:49 -msgid "Print and execute block argument." -msgstr "Blockargument ausgeben und ausführen." - -#. TRANSLATORS: We're speaking about bitmap images like -#. JPEG or PNG. -#: grub-core/video/bitmap.c:209 -#, c-format -msgid "bitmap file `%s' is of unsupported format" -msgstr "Bitmap-Datei »%s« besitzt ein nicht unterstütztes Format" - -#: grub-core/video/i386/pc/vbe.c:1191 -#, c-format -msgid " VBE info: version: %d.%d OEM software rev: %d.%d\n" -msgstr " VBE-Info: Version: %d.%d OEM-Softwarerevision: %d.%d\n" - -#: grub-core/video/i386/pc/vbe.c:1198 -#, c-format -msgid " total memory: %d KiB\n" -msgstr " Gesamtspeicher: %d KiB\n" - -#: grub-core/video/video.c:596 grub-core/video/video.c:762 -msgid "no suitable video mode found" -msgstr "Kein passender Videomodus gefunden" - -#: include/grub/crypto.h:403 -msgid "access denied" -msgstr "Zugriff verweigert" - -#: include/grub/util/install.h:30 include/grub/util/install.h:35 -msgid "MODULES" -msgstr "MODULE" - -#: include/grub/util/install.h:31 -msgid "pre-load specified modules MODULES" -msgstr "In MODULE angegebene Module vorladen" - -#: include/grub/util/install.h:33 -msgid "embed a specific DTB" -msgstr "Eine spezifische DTB einbetten" - -#: include/grub/util/install.h:36 -msgid "install only MODULES and their dependencies [default=all]" -msgstr "Nur MODULE und deren Abhängigkeiten installieren [Vorgabe=alle]" - -#: include/grub/util/install.h:37 -msgid "THEMES" -msgstr "THEMEN" - -#: include/grub/util/install.h:38 -#, c-format -msgid "install THEMES [default=%s]" -msgstr "THEMEN installieren [Vorgabe=%s]" - -#: include/grub/util/install.h:39 -msgid "FONTS" -msgstr "SCHRIFTEN" - -#: include/grub/util/install.h:40 -#, c-format -msgid "install FONTS [default=%s]" -msgstr "SCHRIFTEN installieren [Vorgabe=%s]" - -#: include/grub/util/install.h:41 -msgid "LOCALES" -msgstr "SPRACHEN" - -#: include/grub/util/install.h:42 -msgid "install only LOCALES [default=all]" -msgstr "Nur SPRACHEN installieren [Vorgabe=alle]" - -#: include/grub/util/install.h:45 -msgid "compress GRUB files [optional]" -msgstr "GRUB-Dateien komprimieren [optional]" - -#: include/grub/util/install.h:48 util/grub-mkimage.c:83 -msgid "choose the compression to use for core image" -msgstr "Zu verwendende Kompression für Kernel-Abbild auswählen" - -#. TRANSLATORS: platform here isn't identifier. It can be translated. -#: include/grub/util/install.h:51 include/grub/util/install.h:54 -#: util/grub-mkimage.c:66 -#, c-format -msgid "use images and modules under DIR [default=%s/]" -msgstr "Abbilder und Module in VERZEICHNIS verwenden [Vorgabe=%s/]" - -#: include/grub/util/install.h:57 -#, c-format -msgid "use translations under DIR [default=%s]" -msgstr "Übersetzungen im Verzeichnis VERZ verwenden [Vorgabe=%s]" - -#: include/grub/util/install.h:60 -#, c-format -msgid "use themes under DIR [default=%s]" -msgstr "GRUB-Dateien im Verzeichnis VERZ verwenden [Vorgabe=%s]" - -#: include/grub/util/install.h:65 util/grub-mkimage.c:78 -msgid "embed FILE as public key for signature checking" -msgstr "DATEI als öffentlichen Schlüssel zur Signaturüberprüfung einbetten" - -#: util/editenv.c:59 util/grub-editenv.c:201 util/grub-install-common.c:535 -#: util/grub-mkimage.c:315 util/setup.c:791 -#, c-format -msgid "cannot sync `%s': %s" -msgstr "»%s« kann nicht synchronisiert werden: %s" - -#: util/editenv.c:64 -#, c-format -msgid "cannot rename the file %s to %s" -msgstr "Datei %s kann nicht in %s umbenannt werden" - -#: util/getroot.c:402 -#, c-format -msgid "disk does not exist, so falling back to partition device %s" -msgstr "" -"Platte existiert nicht, ersatzweise wird Partition des Geräts %s verwendet" - -#: util/grub-editenv.c:45 util/grub-fstest.c:506 -msgid "Commands:" -msgstr "Befehle:" - -#: util/grub-editenv.c:47 -msgid "Create a blank environment block file." -msgstr "Eine leere Umgebungs-Blockdatei erstellen." - -#: util/grub-editenv.c:49 -msgid "List the current variables." -msgstr "Aktuelle Variablen auflisten." - -#. TRANSLATORS: "set" is a keyword. It's a summary of "set" subcommand. -#: util/grub-editenv.c:51 -msgid "set [NAME=VALUE ...]" -msgstr "set [NAME=WERT ...]" - -#: util/grub-editenv.c:52 -msgid "Set variables." -msgstr "Variablen setzen." - -#. TRANSLATORS: "unset" is a keyword. It's a summary of "unset" subcommand. -#: util/grub-editenv.c:54 -msgid "unset [NAME ...]" -msgstr "unset [NAME ...]" - -#: util/grub-editenv.c:55 -msgid "Delete variables." -msgstr "Variablen löschen." - -#: util/grub-editenv.c:57 -msgid "Options:" -msgstr "Optionen:" - -#: util/grub-editenv.c:84 -msgid "You need to specify at least one command.\n" -msgstr "Sie müssen mindestens einen Befehl angeben.\n" - -#: util/grub-editenv.c:113 -msgid "FILENAME COMMAND" -msgstr "DATEINAME BEFEHL" - -#: util/grub-editenv.c:114 -msgid "Tool to edit environment block." -msgstr "Werkzeug zum Bearbeiten einer Umgebungs-Blockdatei." - -#: util/grub-editenv.c:116 -#, c-format -msgid "" -"If FILENAME is `-', the default value %s is used.\n" -"\n" -"There is no `delete' command; if you want to delete the whole environment\n" -"block, use `rm %s'." -msgstr "" -"Falls DATEINAME als »-« angegeben ist, wird er Vorgabewert %s verwendet.\n" -"\n" -"Es gibt keinen »delete«-Befehl. Falls Sie den gesamten Umgebungsblock " -"löschen wollen,\n" -"verwenden Sie »rm %s«." - -#: util/grub-editenv.c:162 -msgid "invalid environment block" -msgstr "Ungültiger Environment-Block" - -#: util/grub-editenv.c:217 -#, c-format -msgid "invalid parameter %s" -msgstr "Ungültiger Parameter %s" - -#: util/grub-editenv.c:222 -msgid "environment block too small" -msgstr "Environment-Block ist zu klein" - -#: util/grub-fstest.c:107 -#, c-format -msgid "disk read fails at offset %lld, length %lld" -msgstr "Lesen von Platte scheiterte bei %lld, Länge %lld" - -#: util/grub-fstest.c:138 -#, c-format -msgid "invalid skip value %lld" -msgstr "Ungültiger Sprungwert %lld" - -#: util/grub-fstest.c:160 util/grub-fstest.c:246 -#, c-format -msgid "read error at offset %llu: %s" -msgstr "Lesefehler bei %llu: %s" - -#: util/grub-fstest.c:210 -#, c-format -msgid "cannot open OS file `%s': %s" -msgstr "OS-Datei »%s« kann nicht geöffnet werden: %s" - -#: util/grub-fstest.c:225 util/misc.c:126 -#, c-format -msgid "cannot write to the stdout: %s" -msgstr "Schreiben in die Standardausgabe fehlgeschlagen: %s" - -#: util/grub-fstest.c:259 -#, c-format -msgid "compare fail at offset %llu" -msgstr "Vergleichsfehler bei %llu" - -#: util/grub-fstest.c:280 util/grub-fstest.c:314 -#, c-format -msgid "OS file %s open error: %s" -msgstr "Fehler beim Öffnen der OS-Datei %s: %s" - -#: util/grub-fstest.c:402 util/grub-mount.c:392 -#, c-format -msgid "`loopback' command fails: %s" -msgstr "»loopback«-Befehl ist fehlgeschlagen: %s" - -#: util/grub-fstest.c:413 util/grub-mount.c:402 -#, c-format -msgid "`cryptomount' command fails: %s" -msgstr "»cryptomount«-Befehl ist fehlgeschlagen: %s" - -#: util/grub-fstest.c:474 util/grub-fstest.c:478 -msgid "couldn't retrieve UUID" -msgstr "UUID konnte nicht ermittelt werden" - -#: util/grub-fstest.c:507 -msgid "ls PATH" -msgstr "ls PFAD" - -#: util/grub-fstest.c:507 -msgid "List files in PATH." -msgstr "Dateien in PFAD auflisten." - -#: util/grub-fstest.c:508 -msgid "cp FILE LOCAL" -msgstr "cp DATEI LOKAL" - -#: util/grub-fstest.c:508 -msgid "Copy FILE to local file LOCAL." -msgstr "DATEI in lokale Datei LOKAL kopieren." - -#: util/grub-fstest.c:509 -msgid "cat FILE" -msgstr "cat DATEI" - -#: util/grub-fstest.c:509 -msgid "Copy FILE to standard output." -msgstr "DATEI in die Standardausgabe kopieren." - -#: util/grub-fstest.c:510 -msgid "cmp FILE LOCAL" -msgstr "cmp DATEI LOKAL" - -#: util/grub-fstest.c:510 -msgid "Compare FILE with local file LOCAL." -msgstr "DATEI mit lokaler Datei LOKAL vergleichen." - -#: util/grub-fstest.c:511 -msgid "hex FILE" -msgstr "hex DATEI" - -#: util/grub-fstest.c:511 -msgid "Show contents of FILE in hex." -msgstr "Den Inhalt der DATEI hexadezimal anzeigen." - -#: util/grub-fstest.c:512 -msgid "crc FILE" -msgstr "crc DATEI" - -#: util/grub-fstest.c:512 -msgid "Get crc32 checksum of FILE." -msgstr "crc32-Prüfsumme von DATEI berechnen." - -#: util/grub-fstest.c:513 -msgid "blocklist FILE" -msgstr "blocklist DATEI" - -#: util/grub-fstest.c:513 -msgid "Display blocklist of FILE." -msgstr "Blockliste von DATEI anzeigen." - -#: util/grub-fstest.c:514 -msgid "xnu_uuid DEVICE" -msgstr "xnu_uuid GERÄT" - -#: util/grub-fstest.c:514 -msgid "Compute XNU UUID of the device." -msgstr "XNU-UUID des Geräts berechnen." - -#. TRANSLATORS: bitmaps are images like e.g. in JPEG. -#: util/grub-fstest.c:517 util/grub-fstest.c:518 util/grub-fstest.c:519 -#: util/grub-mkfont.c:938 util/grub-mkfont.c:951 util/grub-mkfont.c:952 -#: util/grub-mkpasswd-pbkdf2.c:46 util/grub-mkpasswd-pbkdf2.c:47 -#: util/grub-mkpasswd-pbkdf2.c:48 -msgid "NUM" -msgstr "ZAHL" - -#: util/grub-fstest.c:517 -msgid "Skip N bytes from output file." -msgstr "N Bytes der Ausgabedatei überspringen." - -#: util/grub-fstest.c:518 -msgid "Handle N bytes in output file." -msgstr "N Bytes in Ausgabedatei verarbeiten" - -#: util/grub-fstest.c:519 -msgid "Specify the number of input files." -msgstr "Die Anzahl der Eingabedateien angeben." - -#: util/grub-fstest.c:520 util/grub-mount.c:453 -msgid "Set debug environment variable." -msgstr "Debug-Umgebungsvariable setzen." - -#: util/grub-fstest.c:521 util/grub-mount.c:454 -msgid "Mount crypto devices." -msgstr "Verschlüsselte Geräte einhängen." - -#. TRANSLATORS: "prompt" is a keyword. -#: util/grub-fstest.c:524 util/grub-mount.c:457 -msgid "FILE|prompt" -msgstr "DATEI|prompt" - -#: util/grub-fstest.c:524 util/grub-mount.c:457 -msgid "Load zfs crypto key." -msgstr "ZFS-Schlüssel laden." - -#: util/grub-fstest.c:526 -msgid "Uncompress data." -msgstr "Daten entpacken." - -#: util/grub-fstest.c:605 -msgid "Invalid disk count.\n" -msgstr "Ungültige Plattenanzahl.\n" - -#. TRANSLATORS: disk count is optional but if it's there it must -#. be before disk list. So please don't imply disk count as mandatory. -#. -#: util/grub-fstest.c:613 -msgid "Disk count must precede disks list.\n" -msgstr "Plattenanzahl muss Plattenliste vorangestellt sein.\n" - -#: util/grub-fstest.c:633 -msgid "No command is specified.\n" -msgstr "Kein Befehl angegeben.\n" - -#: util/grub-fstest.c:638 -msgid "Not enough parameters to command.\n" -msgstr "Zu wenige Parameter für den Befehl.\n" - -#: util/grub-fstest.c:711 -#, c-format -msgid "Invalid command %s.\n" -msgstr "Ungültiger Befehl %s.\n" - -#: util/grub-fstest.c:724 -msgid "IMAGE_PATH COMMANDS" -msgstr "ABBILDPFAD BEFEHLE" - -#: util/grub-fstest.c:725 util/grub-mount.c:553 -msgid "Debug tool for filesystem driver." -msgstr "Diagnosewerkzeug für Dateisystemtreiber." - -#: util/grub-glue-efi.c:53 -msgid "set input filename for 32-bit part." -msgstr "Name der Eingabedatei für 32-bit festlegen." - -#: util/grub-glue-efi.c:55 -msgid "set input filename for 64-bit part." -msgstr "Name der Eingabedatei für 64-bit festlegen." - -#: util/grub-glue-efi.c:57 util/grub-mklayout.c:55 util/grub-render-label.c:71 -msgid "set output filename. Default is STDOUT" -msgstr "Name der Ausgabedatei festlegen. Vorgabe ist STDOUT" - -#: util/grub-glue-efi.c:94 util/grub-mklayout.c:476 -#: util/grub-mkpasswd-pbkdf2.c:86 util/grub-render-label.c:131 -msgid "[OPTIONS]" -msgstr "[OPTIONEN]" - -#: util/grub-glue-efi.c:95 -msgid "Glue 32-bit and 64-bit binary into Apple universal one." -msgstr "32-Bit- und 64-Bit-Binary zu Apple-Universal-Binary zusammenfügen." - -#: util/grub-glue-efi.c:116 -msgid "Missing input file\n" -msgstr "Eingabedatei fehlt\n" - -#: util/grub-install-common.c:127 util/grub-install-common.c:151 -#, c-format -msgid "cannot copy `%s' to `%s': %s" -msgstr "»%s« kann nicht nach »%s« kopiert werden: %s" - -#: util/grub-install-common.c:147 -#, c-format -msgid "can't compress `%s' to `%s'" -msgstr "Komprimieren von %s nach %s nicht möglich" - -#: util/grub-install-common.c:196 util/grub-install-common.c:552 -#: util/grub-install-common.c:579 util/grub-install-common.c:621 -#, c-format -msgid "cannot open directory `%s': %s" -msgstr "Verzeichnis »%s« kann nicht geöffnet werden: %s" - -#: util/grub-install-common.c:212 -#, c-format -msgid "cannot delete `%s': %s" -msgstr "»%s« kann nicht gelöscht werden: %s" - -#: util/grub-install-common.c:324 util/grub-mkimage.c:209 -msgid "grub-mkimage is compiled without XZ support" -msgstr "grub-mkimage wurde ohne XZ-unterstützung kompiliert" - -#: util/grub-install-common.c:332 util/grub-mkimage.c:217 -#, c-format -msgid "Unknown compression format %s" -msgstr "Unbekanntes Kompressionsformat %s" - -#: util/grub-install-common.c:400 -#, c-format -msgid "Unrecognized compression `%s'" -msgstr "Unbekannte Kompression »%s«" - -#: util/grub-install-common.c:509 -#, c-format -msgid "unknown target format %s" -msgstr "Unbekanntes Zielformat %s" - -#: util/grub-install-common.c:700 -#, c-format -msgid "cannot find locale `%s'" -msgstr "Sprache »%s« kann nicht gefunden werden" - -#: util/grub-install-common.c:939 -#, c-format -msgid "%s doesn't exist. Please specify --target or --directory" -msgstr "%s existiert nicht. Bitte geben Sie --target oder --directory an" - -#: util/grub-install-common.c:948 util/grub-install-common.c:951 -#, c-format -msgid "invalid modinfo file `%s'" -msgstr "Ungültige modinfo-Datei »%s«" - -#: util/grub-install-common.c:966 -#, c-format -msgid "Unknown platform `%s-%s'" -msgstr "Unbekannte Plattform »%s-%s«" - -#: util/grub-install.c:238 -msgid "More than one install device?" -msgstr "Mehr als ein Installationsgerät?" - -#: util/grub-install.c:251 -#, c-format -msgid "" -"install GRUB images under the directory DIR/%s instead of the %s directory" -msgstr "GRUB-Abbilder in VERZEICHNIS/%s anstelle von %s installieren" - -#: util/grub-install.c:256 util/grub-probe.c:734 -msgid "TARGET" -msgstr "ZIEL" - -#. TRANSLATORS: "TARGET" as in "target platform". -#: util/grub-install.c:258 -#, c-format -msgid "install GRUB for TARGET platform [default=%s]; available targets: %s" -msgstr "" -"GRUB für ZIEL-Plattform installieren [Vorgabe=%s]; verfügbare Ziele: %s" - -#. TRANSLATORS: "may break" doesn't just mean that option wouldn't have any -#. effect but that it will make the resulting install unbootable from HDD. -#. TRANSLATORS: The potential breakage isn't limited to floppies but it's -#. likely to make the install unbootable from HDD. -#: util/grub-install.c:267 util/grub-setup.c:94 -msgid "" -"make the drive also bootable as floppy (default for fdX devices). May break " -"on some BIOSes." -msgstr "" -"Das Laufwerk auch als Diskette bootfähig machen (Vorgabe für fdX-Geräte). " -"Kann mit einigen BIOS-Varianten scheitern." - -#: util/grub-install.c:270 -msgid "delete device map if it already exists" -msgstr "Gerätezuordnung löschen, falls bereits vorhanden" - -#: util/grub-install.c:272 util/grub-setup.c:87 -msgid "install even if problems are detected" -msgstr "Trotzdem installieren, auch wenn Probleme auftreten" - -#: util/grub-install.c:274 -msgid "use identifier file even if UUID is available" -msgstr "ID-Datei auch dann verwenden, wenn eine UUID verfügbar ist" - -#: util/grub-install.c:276 -msgid "" -"disk module to use (biosdisk or native). This option is only available on " -"BIOS target." -msgstr "" -"Zu verwendendes Platten-Modul (biosdisk oder native). Diese Option ist nur " -"für BIOS-Ziele verfügbar." - -#: util/grub-install.c:279 -msgid "" -"don't update the `boot-device'/`Boot*' NVRAM variables. This option is only " -"available on EFI and IEEE1275 targets." -msgstr "" -"Die NVRAM-Variable »boot-device«/»Boot*« nicht aktualisieren. Diese Option " -"ist nur für EFI- und IEEE1275-Ziele verfügbar." - -#: util/grub-install.c:282 util/grub-setup.c:89 -msgid "do not probe for filesystems in DEVICE" -msgstr "GERÄT nicht auf Dateisysteme überprüfen" - -#: util/grub-install.c:284 -msgid "do not install bootsector" -msgstr "Keinen Bootsektor installieren" - -#: util/grub-install.c:286 util/grub-setup.c:96 -msgid "" -"Do not apply any reed-solomon codes when embedding core.img. This option is " -"only available on x86 BIOS targets." -msgstr "" -"Keine Reed-Solomon-Codes beim Einbetten von core.img verwenden. Diese Option " -"ist nur für x86-BIOS-Ziele verfügbar." - -#: util/grub-install.c:293 -msgid "" -"the installation device is removable. This option is only available on EFI." -msgstr "" -"Das Installationsgerät ist ein Wechseldatenträger. Diese Option ist nur bei " -"EFI verfügbar." - -#: util/grub-install.c:295 -msgid "ID" -msgstr "KENNUNG" - -#: util/grub-install.c:296 -msgid "the ID of bootloader. This option is only available on EFI and Macs." -msgstr "" -"Die Kennung des Bootloaders. Diese Option ist nur auf EFI-Systemen und Macs " -"verfügbar." - -#: util/grub-install.c:298 -msgid "use DIR as the EFI System Partition root." -msgstr "VERZEICHNIS als Wurzel der EFI-Systempartition verwenden." - -#: util/grub-install.c:300 -msgid "use DIR for PPC MAC install." -msgstr "VERZ für PPC-MAC-Installation verwenden." - -#: util/grub-install.c:301 util/grub-mkrescue.c:106 -msgid "use FILE as font for label" -msgstr "DATEI als Schriftart für Beschriftung verwenden" - -#: util/grub-install.c:302 util/grub-mkrescue.c:107 -msgid "use COLOR for label" -msgstr "FARBE für Beschriftung verwenden." - -#: util/grub-install.c:303 util/grub-mkrescue.c:108 -msgid "use COLOR for label background" -msgstr "FARBE für Beschriftungshintergrund verwenden." - -#: util/grub-install.c:304 util/grub-mkrescue.c:110 -msgid "use STRING as product version" -msgstr "ZEICHENKETTE als Produktversion verwenden" - -#: util/grub-install.c:361 -msgid "[OPTION] [INSTALL_DEVICE]" -msgstr "[OPTION] [INSTALLATIONSGERÄT]" - -#: util/grub-install.c:362 -msgid "Install GRUB on your drive." -msgstr "GRUB auf Ihrem Laufwerk installieren." - -#: util/grub-install.c:363 -#, c-format -msgid "" -"INSTALL_DEVICE must be system device filename.\n" -"%s copies GRUB images into %s. On some platforms, it may also install GRUB " -"into the boot sector." -msgstr "" -"INSTALLATIONSGERÄT muss der Name des Geräts sein.\n" -"%s kopiert GRUB-Abbilder nach %s. Auf einigen Systemen\n" -"kann es auch GRUB in den Bootsektor installieren." - -#: util/grub-install.c:672 -#, c-format -msgid "the drive %s is defined multiple times in the device map %s" -msgstr "Das Laufwerk %s wurde in der Gerätetabelle mehrfach %s definiert" - -#: util/grub-install.c:878 -msgid "Unable to determine your platform. Use --target." -msgstr "Ihre Plattform konnte nicht erkannt werden. Verwenden Sie --target." - -#: util/grub-install.c:891 -#, c-format -msgid "Installing for %s platform.\n" -msgstr "%s wird für Ihre Plattform installiert.\n" - -#: util/grub-install.c:939 -msgid "install device isn't specified" -msgstr "Kein Installationsgerät angegeben" - -#: util/grub-install.c:1057 -msgid "cannot find EFI directory" -msgstr "EFI-Verzeichnis kann nicht gefunden werden" - -#: util/grub-install.c:1060 util/grub-install.c:1209 util/grub-install.c:1254 -#: util/grub-macbless.c:76 util/grub-probe.c:329 util/setup.c:316 -#, c-format -msgid "cannot find a device for %s (is /dev mounted?)" -msgstr "Gerät für %s konnte nicht gefunden werden (ist /dev eingehängt?)" - -#: util/grub-install.c:1069 util/grub-install.c:1217 util/grub-install.c:1270 -#: util/grub-install.c:1365 util/grub-macbless.c:80 util/grub-probe.c:372 -#, c-format -msgid "cannot find a GRUB drive for %s. Check your device.map" -msgstr "" -"Für %s konnte kein GRUB-Laufwerk gefunden werden. Überprüfen Sie Ihre device." -"map" - -#: util/grub-install.c:1087 -#, c-format -msgid "%s doesn't look like an EFI partition" -msgstr "%s scheint keine EFI-Partition zu sein" - -#: util/grub-install.c:1129 util/grub-install.c:1614 -msgid "You've found a bug" -msgstr "Einen entdeckten Fehler berichten" - -#: util/grub-install.c:1231 -#, c-format -msgid "filesystem on %s is neither HFS nor HFS+" -msgstr "Dateisystem auf %s ist weder HFS noch HFS+" - -#: util/grub-install.c:1299 -#, c-format -msgid "" -"attempt to install to encrypted disk without cryptodisk enabled. Set `%s' in " -"file `%s'" -msgstr "" -"Versuch, einen verschlüsselten Datenträger ohne aktiviertes Cryptodisk zu " -"installieren. Setzen Sie »%s« in Datei »%s«" - -#: util/grub-install.c:1410 util/grub-install.c:1772 util/grub-install.c:1872 -#, c-format -msgid "Can't create file: %s" -msgstr "Datei »%s« kann nicht angelegt werden." - -#: util/grub-install.c:1491 -msgid "no hints available for your platform. Expect reduced performance" -msgstr "" -"Keine Hinweise für Ihr Betriebssystem verfügbar. Verringerte Leistung ist zu " -"erwarten." - -#. TRANSLATORS: This is a prefix in the log to indicate that usually -#. a command would be executed but due to an option was skipped. -#: util/grub-install.c:1702 -msgid "NOT RUNNING: " -msgstr "NICHT GESTARTET:" - -#: util/grub-install.c:1806 -msgid "the chosen partition is not a PReP partition" -msgstr "Die gewählte Partition ist keine PReP-Partition" - -#: util/grub-install.c:1811 -msgid "failed to copy Grub to the PReP partition" -msgstr "GRUB konnte nicht in die PReP-Partition kopiert werden" - -#: util/grub-install.c:1816 -#, c-format -msgid "" -"the PReP partition is not empty. If you are sure you want to use it, run dd " -"to clear it: `%s'" -msgstr "" -"Die PReP-Partition ist nicht leer. Falls Sie sicher sind, dass Sie sie " -"verwenden wollen, führen Sie dd aus, um sie zu leeren: »%s«" - -#: util/grub-install.c:1888 util/grub-install.c:1932 -#, c-format -msgid "efibootmgr failed to register the boot entry: %s" -msgstr "efibootmgr schlug beim Registrieren des Boot-Eintrags fehl: %s" - -#: util/grub-install.c:1916 -msgid "EFI bootloader id isn't specified." -msgstr "Kennung des EFI-Bootloaders ist nicht angegeben." - -#: util/grub-install.c:1950 -msgid "WARNING: no platform-specific install was performed" -msgstr "WARNUNG: Es wurde keine plattformspezifische Installation durchgeführt" - -#: util/grub-install.c:1957 -msgid "Installation finished. No error reported." -msgstr "installation beendet. Keine Fehler aufgetreten." - -#: util/grub-macbless.c:101 -msgid "bless for x86-based macs" -msgstr "" - -#: util/grub-macbless.c:103 -msgid "bless for ppc-based macs" -msgstr "" - -#: util/grub-macbless.c:136 util/grub-probe.c:823 -msgid "No path or device is specified.\n" -msgstr "Kein Pfad oder Gerät wurde angegeben.\n" - -#: util/grub-macbless.c:157 -msgid "--ppc PATH|--x86 FILE" -msgstr "--ppc PFAD|--x86 DATEI" - -#: util/grub-macbless.c:158 -msgid "Mac-style bless on HFS or HFS+" -msgstr "" - -#: util/grub-menulst2cfg.c:44 -#, c-format -msgid "Usage: %s [INFILE [OUTFILE]]\n" -msgstr "Aufruf: %s [EINGABEDATEI [AUSGABEDATEI]]\n" - -#: util/grub-mkfont.c:157 -#, c-format -msgid "Freetype Error %d loading glyph 0x%x for U+0x%x%s" -msgstr "Freetype-Fehler %d beim Laden des Glyphs 0x%x für U+0x%x%s" - -#. TRANSLATORS: These qualifiers are used for cursive typography, -#. mainly Arabic. Note that the terms refer to the visual position -#. and not logical order and if used in left-to-right script then -#. leftmost is initial but with right-to-left script like Arabic -#. rightmost is the initial. -#: util/grub-mkfont.c:165 -msgid " (medial)" -msgstr " (mittig)" - -#: util/grub-mkfont.c:166 -msgid " (leftmost)" -msgstr " (ganz links)" - -#: util/grub-mkfont.c:167 -msgid " (rightmost)" -msgstr " (ganz rechts)" - -#: util/grub-mkfont.c:481 -#, c-format -msgid "Out of range substitution (%d, %d)\n" -msgstr "Ersetzung außerhalb des Bereichs (%d, %d)\n" - -#. TRANSLATORS: "lookup" is taken directly from font specifications -#. which are formulated as "Under condition X replace LOOKUP with -#. SUBSTITUITION". " -#: util/grub-mkfont.c:506 -#, c-format -msgid "Out of range lookup: %d\n" -msgstr "Suche außerhalb des Bereichs: %d\n" - -#: util/grub-mkfont.c:514 -#, c-format -msgid "Unsupported substitution type: %d\n" -msgstr "Nicht unterstützter Ersetzungstyp: %d\n" - -#: util/grub-mkfont.c:550 -#, c-format -msgid "Unsupported substitution specification: %d\n" -msgstr "Nicht unterstützte Ersetzungsangabe: %d\n" - -#: util/grub-mkfont.c:582 -#, c-format -msgid "Unsupported coverage specification: %d\n" -msgstr "Nicht unterstützte Coverage-Spezifikation: %d\n" - -#: util/grub-mkfont.c:622 -#, c-format -msgid "WARNING: unsupported font feature parameters: %x\n" -msgstr "WARNUNG: Nicht unterstützte Parameter für Schrifteigenschaften: %x\n" - -#: util/grub-mkfont.c:936 util/grub-mkrescue.c:98 util/grub-mkstandalone.c:48 -msgid "save output in FILE [required]" -msgstr "Ausgabe in DATEI speichern [erforderlich]" - -#. TRANSLATORS: some font files may have multiple faces (fonts). -#. This option is used to chose among them, the first face being '0'. -#. Rarely used. -#: util/grub-mkfont.c:942 -msgid "select face index" -msgstr "Schriftart-Index setzen" - -#: util/grub-mkfont.c:943 -msgid "FROM-TO[,FROM-TO]" -msgstr "VON-BIS[,VON-BIS]" - -#. TRANSLATORS: It refers to the range of characters in font. -#: util/grub-mkfont.c:945 -msgid "set font range" -msgstr "Schriftbereich festlegen" - -#. TRANSLATORS: "family name" for font is just a generic name without suffix -#. like "Bold". -#: util/grub-mkfont.c:949 -msgid "set font family name" -msgstr "Schriftfamilie festlegen" - -#: util/grub-mkfont.c:950 -msgid "SIZE" -msgstr "GRÖßE" - -#: util/grub-mkfont.c:950 -msgid "set font size" -msgstr "Schriftgröße festlegen" - -#: util/grub-mkfont.c:951 -msgid "set font descent" -msgstr "Schriftauffüllung unten einstellen" - -#: util/grub-mkfont.c:952 -msgid "set font ascent" -msgstr "Schriftauffüllung oben einstellen" - -#: util/grub-mkfont.c:953 -msgid "convert to bold font" -msgstr "In fette Schrift umwandeln" - -#: util/grub-mkfont.c:954 -msgid "force autohint" -msgstr "Automatisches Hinting erzwingen" - -#: util/grub-mkfont.c:955 -msgid "disable hinting" -msgstr "Hinting deaktivieren" - -#. TRANSLATORS: some fonts contain bitmap rendering for -#. some sizes. This option forces rerendering even if -#. pre-rendered bitmap is available. -#. -#: util/grub-mkfont.c:961 -msgid "ignore bitmap strikes when loading" -msgstr "Bitmap-Strikes beim Laden ignorieren" - -#. TRANSLATORS: It refers to the range of characters in font. -#: util/grub-mkfont.c:1059 util/grub-mkfont.c:1075 -msgid "invalid font range" -msgstr "Ungültiger Schriftbereich" - -#: util/grub-mkfont.c:1151 -msgid "[OPTIONS] FONT_FILES" -msgstr "[OPTIONEN] SCHRIFTDATEIEN" - -#: util/grub-mkfont.c:1152 -msgid "Convert common font file formats into PF2" -msgstr "Übliche Schriftdateiformate in PF2 umwandeln" - -#: util/grub-mkfont.c:1182 util/grub-mkrescue.c:483 -#: util/grub-mkstandalone.c:306 -msgid "output file must be specified" -msgstr "Ausgabedatei muss angegeben werden" - -#: util/grub-mkfont.c:1185 -msgid "FT_Init_FreeType fails" -msgstr "FT_Init_FreeType ist gescheitert" - -#: util/grub-mkfont.c:1199 -#, c-format -msgid "can't open file %s, index %d: error %d" -msgstr "%s kann nicht geöffnet werden, Index %d: Fehler %d" - -#: util/grub-mkfont.c:1229 -#, c-format -msgid "can't set %dx%d font size: Freetype error %d: %s" -msgstr "Schriftgröße %dx%d kann nicht gesetzt werden: Freetype-Fehler %d: %s" - -#: util/grub-mkimage.c:67 -msgid "set prefix directory" -msgstr "Präfix-Verzeichnis festlegen" - -#. TRANSLATORS: "memdisk" here isn't an identifier, it can be translated. -#. "embed" is a verb (command description). " -#: util/grub-mkimage.c:71 -msgid "" -"embed FILE as a memdisk image\n" -"Implies `-p (memdisk)/boot/grub' and overrides any prefix supplied " -"previously, but the prefix itself can be overridden by later options" -msgstr "" -"DATEI als Memdisk-Abbild einbetten\n" -"Impliziert »-p (memdisk)/boot/grub« und setzt jedes vorher angegebene Präfix " -"außer Kraft, aber das Präfix selbst kann durch später angegebene Optionen " -"wiederum außer Kraft gesetzt werden" - -#: util/grub-mkimage.c:74 -msgid "embed FILE as a device tree (DTB)\n" -msgstr "DATEI als Gerätebaum (DTB) einbetten\n" - -#: util/grub-mkimage.c:76 -msgid "embed FILE as an early config" -msgstr "DATEI als Anfangskonfiguration einbetten" - -#. TRANSLATORS: NOTE is a name of segment. -#: util/grub-mkimage.c:80 -msgid "add NOTE segment for CHRP IEEE1275" -msgstr "NOTE-Segment für CHRP IEEE1275 hinzufügen" - -#: util/grub-mkimage.c:81 -msgid "output a generated image to FILE [default=stdout]" -msgstr "Ein erzeugtes Abbild in DATEI ausgeben [Vorgabe=stdout]" - -#: util/grub-mkimage.c:82 -msgid "FORMAT" -msgstr "FORMAT" - -#: util/grub-mkimage.c:100 util/grub-mkstandalone.c:62 -msgid "generate an image in FORMAT" -msgstr "Ein Abbild im FORMAT erzeugen" - -#: util/grub-mkimage.c:101 util/grub-mkstandalone.c:63 -msgid "available formats:" -msgstr "Verfügbare Formate:" - -#: util/grub-mkimage.c:152 util/grub-mkstandalone.c:96 -#, c-format -msgid "unknown target format %s\n" -msgstr "Unbekanntes Zielformat %s\n" - -#: util/grub-mkimage.c:242 -msgid "[OPTION]... [MODULES]" -msgstr "[OPTION]… [MODULE]" - -#: util/grub-mkimage.c:243 -msgid "Make a bootable image of GRUB." -msgstr "Ein bootfähiges GRUB-Abbild erstellen" - -#: util/grub-mkimage.c:273 util/grub-mkstandalone.c:309 -msgid "Target format not specified (use the -O option)." -msgstr "Zielformat wurde nicht angegeben (verwenden Sie die Option -0)." - -#: util/grub-mkimage.c:282 -msgid "Prefix not specified (use the -p option)." -msgstr "Präfix wurde nicht angegeben (verwenden Sie die Option -p)" - -#: util/grub-mkimage.c:318 util/setup.c:793 -#, c-format -msgid "cannot close `%s': %s" -msgstr "»%s« kann nicht geschlossen werden: %s" - -#: util/grub-mkimagexx.c:2191 -#, c-format -msgid "" -"`%s' is miscompiled: its start address is 0x%llx instead of 0x%llx: ld.gold " -"bug?" -msgstr "" -"»%s« ist fehlerhaft kompiliert: Dessen Startadresse ist 0x%llx anstelle von " -"0x%llx: Fehler in ld.gold?" - -#: util/grub-mklayout.c:53 -msgid "set input filename. Default is STDIN" -msgstr "Name der Eingabedatei festlegen. Vorgabe ist STDIN" - -#. TRANSLATORS: scan identifier is keyboard key symbolic name. -#: util/grub-mklayout.c:307 -#, c-format -msgid "Unknown keyboard scan identifier %s\n" -msgstr "Ungültiger Bezeichner für Tastaturscan %s\n" - -#. TRANSLATORS: scan code is keyboard key numeric identifier. -#: util/grub-mklayout.c:390 util/grub-mklayout.c:418 -#, c-format -msgid "Unknown keyboard scan code 0x%02x\n" -msgstr "Ungültiger Code für Tastaturscan 0x%02x\n" - -#. TRANSLATORS: this error is triggered when input doesn't contain any -#. key descriptions. -#: util/grub-mklayout.c:438 -msgid "ERROR: no valid keyboard layout found. Check the input.\n" -msgstr "" -"FEHLER: Keine gültige Tastaturbelegung gefunden. Überprüfen Sie die " -"Eingabe.\n" - -#. TRANSLATORS: "one" is a shortcut for "keyboard layout". -#: util/grub-mklayout.c:478 -msgid "Generate GRUB keyboard layout from Linux console one." -msgstr "GRUB-Tastaturbelegung aus dem der Linux-Konsole erstellen." - -#: util/grub-mknetdir.c:47 -msgid "root directory of TFTP server" -msgstr "Wurzelverzeichnis auf dem TFTP-Server" - -#: util/grub-mknetdir.c:49 -msgid "relative subdirectory on network server" -msgstr "Relativer Pfad zum Unterverzeichnis auf dem Netzwerkserver" - -#: util/grub-mknetdir.c:88 -msgid "" -"Prepares GRUB network boot images at net_directory/subdir assuming " -"net_directory being TFTP root." -msgstr "" -"Bereitet GRUB-Netzwerk-Bootabbilder in net_directory/subdir vor, wobei " -"angenommen wird, dass net_directory das TFTP-Wurzelverzeichnis ist." - -#: util/grub-mknetdir.c:146 -#, c-format -msgid "unsupported platform %s" -msgstr "Nicht unterstützte Plattform %s" - -#. TRANSLATORS: First %s is replaced by platform name. Second one by filename. -#: util/grub-mknetdir.c:165 -#, c-format -msgid "" -"Netboot directory for %s created. Configure your DHCP server to point to %s\n" -msgstr "" -"Netboot-Verzeichnis für %s wurde erstellt. Richten Sie Ihren DHCP-Server so " -"ein, dass er auf %s verweist\n" - -#: util/grub-mkpasswd-pbkdf2.c:46 -msgid "Number of PBKDF2 iterations" -msgstr "Anzahl vor PBKDF2-Durchläufe" - -#: util/grub-mkpasswd-pbkdf2.c:47 -msgid "Length of generated hash" -msgstr "Länge der erzeugten Prüfsumme" - -#: util/grub-mkpasswd-pbkdf2.c:48 -msgid "Length of salt" -msgstr "Länge von Salt" - -#: util/grub-mkpasswd-pbkdf2.c:87 -msgid "Generate PBKDF2 password hash." -msgstr "PBKDF2-Passwort-Prüfsumme erzeugen. " - -#: util/grub-mkpasswd-pbkdf2.c:144 util/grub-mkpasswd-pbkdf2.c:151 -msgid "failure to read password" -msgstr "Passwort konnte nicht gelesen werden" - -#: util/grub-mkpasswd-pbkdf2.c:146 -msgid "Reenter password: " -msgstr "Passwort erneut eingeben:" - -#: util/grub-mkpasswd-pbkdf2.c:160 -msgid "passwords don't match" -msgstr "Die Passwörter stimmen nicht überein" - -#: util/grub-mkpasswd-pbkdf2.c:169 -msgid "couldn't retrieve random data for salt" -msgstr "Zufallsdaten für Salt konnten nicht geholt werden" - -#: util/grub-mkpasswd-pbkdf2.c:184 -#, c-format -msgid "cryptographic error number %d" -msgstr "Krytografiefehler Nummer %d" - -#: util/grub-mkpasswd-pbkdf2.c:203 -#, c-format -msgid "PBKDF2 hash of your password is %s\n" -msgstr "PBKDF2-Prüfsumme Ihres Passworts ist %s\n" - -#: util/grub-mkrelpath.c:67 -msgid "No path is specified.\n" -msgstr "Kein Pfad angegeben.\n" - -#: util/grub-mkrelpath.c:78 -msgid "PATH" -msgstr "PFAD" - -#: util/grub-mkrelpath.c:79 -msgid "Transform a system filename into GRUB one." -msgstr "Einen Systemdateinamen in einen für GRUB umwandeln." - -#: util/grub-mkrescue.c:100 -msgid "save ROM images in DIR [optional]" -msgstr "ROM-Abbilder in VERZEICHNIS speichern [optional]" - -#. TRANSLATORS: xorriso is a program for creating ISOs and burning CDs. -#: util/grub-mkrescue.c:103 -msgid "use FILE as xorriso [optional]" -msgstr "DATEI als xorriso benutzen [optional]" - -#: util/grub-mkrescue.c:109 -msgid "use STRING as product name" -msgstr "ZEICHENKETTE als Produktname verwenden" - -#: util/grub-mkrescue.c:111 -msgid "" -"enable sparc boot. Disables HFS+, APM, ARCS and boot as disk image for i386-" -"pc" -msgstr "" -"Sparc-Bootvorgang aktivieren. Die deaktiviert HFS+, APM, ARCS und Booten als " -"Festplattenabbild für i386-pc" - -#: util/grub-mkrescue.c:112 -msgid "" -"enable ARCS (big-endian mips machines, mostly SGI) boot. Disables HFS+, APM, " -"sparc64 and boot as disk image for i386-pc" -msgstr "" -"Aktiviert ARCS-Boot (MIPS-Rechner mit Big-Endian-Bytereihenfolge, meist " -"SGI). HFS+, APM, sparc64 und Booten als Disk-Abbild für i386-pc werden " -"deaktiviert" - -#. TRANSLATORS: it generates one single image which is bootable through any method. -#: util/grub-mkrescue.c:125 -msgid "Make GRUB CD-ROM, disk, pendrive and floppy bootable image." -msgstr "" -"Bootfähiges GRUB-Abbild für CD-ROM, Festplatte, USB-Stick und Diskette " -"erstellen." - -#: util/grub-mkrescue.c:130 -#, c-format -msgid "" -"Generates a bootable CD/USB/floppy image. Arguments other than options to " -"this program are passed to xorriso, and indicate source files, source " -"directories, or any of the mkisofs options listed by the output of `%s'." -msgstr "" -"Erzeugt ein bootfähiges CD/USB/Diskettenabbild. Argumente, die nicht zu den " -"Optionen dieses Programms gehören, werden an Xorriso übergeben und " -"indizieren Quelldateien, Quellverzeichnisse oder eine beliebige mkisofs-" -"Option, die von »%s« ausgegeben wird." - -#: util/grub-mkrescue.c:134 -msgid "Option -- switches to native xorriso command mode." -msgstr "Option -- wechselt in den nativen xorriso-Befehlsmodus." - -#: util/grub-mkrescue.c:135 -msgid "Mail xorriso support requests to ." -msgstr "Richten Sie Supportanfragen zu Xorriso an ." - -#: util/grub-mkrescue.c:221 util/grub-mkstandalone.c:114 -msgid "[OPTION] SOURCE..." -msgstr "[OPTION] QUELLE …" - -#: util/grub-mkrescue.c:257 util/grub-mkrescue.c:300 util/grub-mkrescue.c:588 -#, c-format -msgid "enabling %s support ..." -msgstr "Unterstützung für %s wird aktiviert …" - -#: util/grub-mkrescue.c:486 -msgid "xorriso not found" -msgstr "Xorriso wurde nicht gefunden" - -#: util/grub-mkrescue.c:623 -msgid "" -"Your xorriso doesn't support `--grub2-boot-info'. Some features are " -"disabled. Please use xorriso 1.2.9 or later." -msgstr "" -"Ihr Xorriso unterstützt »--grub2-boot-info« nicht. Einige Funktionen sind " -"deaktiviert. Bitte verwenden Sie Xorriso in Version 1.2.9 oder neuer." - -#: util/grub-mkrescue.c:650 -msgid "" -"Your xorriso doesn't support `--grub2-boot-info'. Your core image is too " -"big. Boot as disk is disabled. Please use xorriso 1.2.9 or later." -msgstr "" -"Ihr Xorriso unterstützt »--grub2-boot-info« nicht. Ihr Core-Abbild ist zu " -"groß. Booten als Festplatte ist deaktiviert. Bitte verwenden Sie Xorriso in " -"Version 1.2.9 oder neuer." - -#: util/grub-mkstandalone.c:115 -msgid "" -"Generate a standalone image (containing all modules) in the selected format" -msgstr "" -"Ein lauffähiges Abbild einschließlich aller Module im gewählten Format " -"erstellen" - -#: util/grub-mkstandalone.c:115 -msgid "Graft point syntax (E.g. /boot/grub/grub.cfg=./grub.cfg) is accepted" -msgstr "" -"Graftpoint-Syntax (z.B. /boot/grub/grub.cfg=./grub.cfg) wird akzeptiert" - -#: util/grub-mount.c:552 -msgid "IMAGE1 [IMAGE2 ...] MOUNTPOINT" -msgstr "ABBILD1 [ABBILD2 ...] EINHÄNGEPUNKT" - -#: util/grub-mount.c:575 -msgid "need an image and mountpoint" -msgstr "Abbild und Einhängepunkt werden benötigt" - -#: util/grub-probe.c:731 -msgid "given argument is a system device, not a path" -msgstr "Das angegebene Argument ist ein Systemgerät, kein Pfad" - -#: util/grub-probe.c:736 -msgid "separate items in output using ASCII NUL characters" -msgstr "Einträge in der Ausgabe durch ASCII-NUL-Zeichen trennen" - -#: util/grub-probe.c:754 -#, c-format -msgid "[default=%s]" -msgstr "[Vorgabe=%s]" - -#: util/grub-probe.c:756 -msgid "print TARGET" -msgstr "ZIEL ausgeben" - -#: util/grub-probe.c:757 -msgid "available targets:" -msgstr "Verfügbare Ziele:" - -#: util/grub-probe.c:839 -msgid "[OPTION]... [PATH|DEVICE]" -msgstr "[OPTIONEN]… [PFAD|GERÄT]" - -#: util/grub-probe.c:840 -msgid "" -"Probe device information for a given path (or device, if the -d option is " -"given)." -msgstr "" -"Geräteinformationen für einen angegebenen Pfad ermitteln (oder Gerät, falls " -"die Option -d angegeben ist)." - -#: util/grub-render-label.c:60 -msgid "read text from FILE." -msgstr "Text aus DATEI lesen." - -#: util/grub-render-label.c:62 -msgid "use COLOR for text" -msgstr "FARBE für Text verwenden" - -#: util/grub-render-label.c:64 -msgid "use COLOR for background" -msgstr "FARBE für Hintergrund verwenden" - -#. TRANSLATORS: The result is always stored to file and -#. never shown directly, so don't use "show" as synonym for render. Use "create" if -#. "render" doesn't translate directly. -#: util/grub-render-label.c:69 -msgid "set the label to render" -msgstr "Anzuzeigende Beschriftung festlegen" - -#: util/grub-render-label.c:73 -msgid "use FILE as font (PF2)." -msgstr "DATEI als Schrift verwenden (PF2)." - -#. TRANSLATORS: This file takes a text and creates a graphical representation of it, -#. putting the result into .disk_label file. The result is always stored to file and -#. never shown directly, so don't use "show" as synonym for render. Use "create" if -#. "render" doesn't translate directly. -#: util/grub-render-label.c:136 -msgid "Render Apple .disk_label." -msgstr "Apples .disk_label darstellen." - -#: util/grub-render-label.c:158 util/grub-syslinux2cfg.c:169 -msgid "Missing arguments\n" -msgstr "Argumente fehlen\n" - -#: util/grub-script-check.c:87 -msgid "[PATH]" -msgstr "[PFAD]" - -#: util/grub-script-check.c:88 -msgid "Checks GRUB script configuration file for syntax errors." -msgstr "Überprüft die GRUB-Skriptkonfiguration auf Syntaxfehler" - -#: util/grub-script-check.c:207 -#, c-format -msgid "Syntax error at line %u\n" -msgstr "Syntaxfehler in Zeile %u\n" - -#: util/grub-script-check.c:212 -#, c-format -msgid "Script `%s' contains no commands and will do nothing\n" -msgstr "Skript »%s« enthält nichts, es wird nichts ausgeführt\n" - -#: util/grub-setup.c:79 -#, c-format -msgid "use FILE as the boot image [default=%s]" -msgstr "DATEI als Boot-Abbild verwenden [Vorgabe=%s]" - -#: util/grub-setup.c:81 -#, c-format -msgid "use FILE as the core image [default=%s]" -msgstr "DATEI als Kern-Abbild verwenden [Vorgabe=%s]" - -#: util/grub-setup.c:210 -msgid "No device is specified.\n" -msgstr "Kein Gerät angegeben.\n" - -#: util/grub-setup.c:224 -msgid "" -"Set up images to boot from DEVICE.\n" -"\n" -"You should not normally run this program directly. Use grub-install instead." -msgstr "" -"Abbilder zum Booten von GERÄT einrichten.\n" -"\n" -"Sie sollten dieses Programm normalerweise nicht direkt ausführen.\n" -"Verwenden Sie stattdessen grub-install." - -#: util/grub-setup.c:228 -msgid "DEVICE must be an OS device (e.g. /dev/sda)." -msgstr "GERÄT muss ein OS-Gerät sein (z.B. /dev/sda)." - -#: util/grub-setup.c:297 -#, c-format -msgid "Invalid device `%s'.\n" -msgstr "Ungültiges Gerät »%s«.\n" - -#: util/grub-syslinux2cfg.c:64 -msgid "root directory as it will be seen on runtime [default=/]." -msgstr "Wurzelverzeichnis, wie es zur Laufzeit angezeigt wird [Vorgabe=/]." - -#: util/grub-syslinux2cfg.c:69 -msgid "" -"current directory of syslinux as it will be seen on runtime [default is " -"parent directory of input file]." -msgstr "" -"Aktuelles Syslinux-Verzeichnis, wie es zur Laufzeit angezeigt wird [Vorgabe " -"ist das übergeordnete Verzeichnis der Eingabedatei]." - -#: util/grub-syslinux2cfg.c:74 -msgid "write output to FILE [default=stdout]." -msgstr "Ausgabe in DATEI schreiben [Vorgabe=stdout]" - -#: util/grub-syslinux2cfg.c:148 -msgid "Transform syslinux config into GRUB one." -msgstr "Syslinux-Konfigurationsdatei in eine für GRUB umwandeln." - -#: util/mkimage.c:688 util/mkimage.c:717 util/mkimage.c:734 -msgid "cannot compress the kernel image" -msgstr "Kernel-Abbild kann nicht komprimiert werden" - -#: util/mkimage.c:766 util/mkimage.c:1077 -#, c-format -msgid "unknown compression %d" -msgstr "Unbekannte Kompression %d" - -#: util/mkimage.c:1088 -msgid "Decompressor is too big" -msgstr "Dekompressor ist zu groß" - -#: util/mkimage.c:1133 -#, c-format -msgid "core image is too big (0x%x > 0x%x)" -msgstr "Core-Abbild ist zu groß (0x%x > 0x%x)" - -#: util/mkimage.c:1140 -#, c-format -msgid "kernel image is too big (0x%x > 0x%x)" -msgstr "Kernel-Abbild ist zu groß (0x%x > 0x%x)" - -#: util/mkimage.c:1220 util/mkimage.c:1501 -#, c-format -msgid "diskboot.img size must be %u bytes" -msgstr "Die Größe von diskboot.img muss %u Bytes betragen" - -#: util/mkimage.c:1571 -msgid "" -"fwstart.img doesn't match the known good version. proceed at your own risk" -msgstr "" -"fwstart.img entspricht nicht der bekanntermaßen funktionierenden Version. " -"Verwenden Sie dies auf eigene Gefahr" - -#: util/mkimage.c:1575 util/mkimage.c:1601 -msgid "firmware image is too big" -msgstr "Firmware-Abbild ist zu groß" - -#: util/resolve.c:93 -#, c-format -msgid "invalid line format: %s" -msgstr "Ungültiges Zeilenformat: %s" - -#: util/setup.c:167 -msgid "the first sector of the core file is not sector-aligned" -msgstr "Der erste Sektor der Core-Datei ist nicht sektor-ausgerichtet" - -#: util/setup.c:177 -msgid "non-sector-aligned data is found in the core file" -msgstr "" -"Nicht an Sektoren ausgerichtete Daten wurden in der Core-Datei gefunden" - -#: util/setup.c:199 -msgid "the sectors of the core file are too fragmented" -msgstr "Die Sektoren der Core-Datei sind zu stark fragmentiert" - -#: util/setup.c:280 -#, c-format -msgid "the size of `%s' is not %u" -msgstr "Die Größe von »%s« ist nicht %u" - -#: util/setup.c:290 -#, c-format -msgid "the size of `%s' is too small" -msgstr "»%s« ist zu klein" - -#: util/setup.c:428 -msgid "" -"Attempting to install GRUB to a disk with multiple partition labels or both " -"partition label and filesystem. This is not supported yet." -msgstr "" -"Es wird versucht, GRUB auf einer Platte mit mehreren Partitionsbezeichnungen " -"oder sowohl Partitionsbezeichnungen als auch Dateisystemen zu installieren. " -"Dies wird derzeit noch nicht unterstützt." - -#: util/setup.c:441 -#, c-format -msgid "unable to identify a filesystem in %s; safety check can't be performed" -msgstr "" -"Es kann kein Dateisystem in %s erkannt werden. Sicherheitsüberprüfung kann " -"nicht ausgeführt werden" - -#. TRANSLATORS: Filesystem may reserve the space just GRUB isn't sure about it. -#: util/setup.c:445 -#, c-format -msgid "" -"%s appears to contain a %s filesystem which isn't known to reserve space for " -"DOS-style boot. Installing GRUB there could result in FILESYSTEM " -"DESTRUCTION if valuable data is overwritten by grub-setup (--skip-fs-probe " -"disables this check, use at your own risk)" -msgstr "" -"%s enthält ein %s-Dateisystem, welches bekanntermaßen keinen Platz für einen " -"DOS-Betriebssystemstart bereithält. Die Installation von GRUB könnte die " -"ZERSTÖRUNG DES DATEISYSTEMS nach sich ziehen, sofern Daten durch grub-setup " -"überschrieben werden. Die Option --skip-fs-probe deaktiviert diese " -"Überprüfung, verwenden Sie dies auf eigene Gefahr." - -#. TRANSLATORS: Partition map may reserve the space just GRUB isn't sure about it. -#: util/setup.c:458 -#, c-format -msgid "" -"%s appears to contain a %s partition map which isn't known to reserve space " -"for DOS-style boot. Installing GRUB there could result in FILESYSTEM " -"DESTRUCTION if valuable data is overwritten by grub-setup (--skip-fs-probe " -"disables this check, use at your own risk)" -msgstr "" -"%s scheint eine %s-Partitionstabelle zu enthalten, welche bekanntermaßen " -"keinen Platz für einen DOS-Betriebssystemstart bereithält. Die Installation " -"von GRUB könnte die ZERSTÖRUNG DES DATEISYSTEMS nach sich ziehen, sofern " -"Daten durch grub-setup überschrieben werden. Die Option --skip-fs-probe " -"deaktiviert diese Überprüfung, verwenden Sie dies auf eigene Gefahr." - -#: util/setup.c:465 -#, c-format -msgid "" -"%s appears to contain a %s partition map and LDM which isn't known to be a " -"safe combination. Installing GRUB there could result in FILESYSTEM " -"DESTRUCTION if valuable data is overwritten by grub-setup (--skip-fs-probe " -"disables this check, use at your own risk)" -msgstr "" -"%s scheint eine %s-Partitionstabelle und LDM zu enthalten, welches " -"bekanntermaßen keine sichere Kombination ist. Die Installation von GRUB " -"könnte die ZERSTÖRUNG DES DATEISYSTEMS nach sich ziehen, sofern Daten durch " -"grub-setup überschrieben werden. Die Option --skip-fs-probe deaktiviert " -"diese Überprüfung, verwenden Sie dies auf eigene Gefahr." - -#: util/setup.c:478 -msgid "" -"Attempting to install GRUB to a partitionless disk or to a partition. This " -"is a BAD idea." -msgstr "" -"Es wird versucht, GRUB auf einer nicht partitionierten Platte oder in eine " -"Partition zu installieren. Das ist eine SCHLECHTE Idee." - -#: util/setup.c:483 -msgid "" -"Attempting to install GRUB to a disk with multiple partition labels. This " -"is not supported yet." -msgstr "" -"Es wird versucht, GRUB auf einer Platte mit mehreren Partitionsbezeichnungen " -"zu installieren. Dies wird derzeit noch nicht unterstützt." - -#: util/setup.c:489 -#, c-format -msgid "Partition style `%s' doesn't support embedding" -msgstr "Partitionstyp »%s« unterstützt keine Einbettungen" - -#: util/setup.c:496 -#, c-format -msgid "File system `%s' doesn't support embedding" -msgstr "Dateisystem »%s« unterstützt keine Einbettungen" - -#: util/setup.c:537 -msgid "Your embedding area is unusually small. core.img won't fit in it." -msgstr "" -"Ihr Einbettungsbereich ist ungewöhnlich klein. core.img würde nicht " -"hineinpassen." - -#: util/setup.c:559 util/setup.c:725 util/setup.c:844 -msgid "no terminator in the core image" -msgstr "Kein Terminator im Core-Abbild" - -#: util/setup.c:622 -msgid "core.img version mismatch" -msgstr "Version von core.img passt nicht" - -#: util/setup.c:675 -msgid "" -"embedding is not possible, but this is required for RAID and LVM install" -msgstr "" -"Einbettung ist nicht möglich, jedoch für die Installation mit RAID und LVM " -"erforderlich" - -#: util/setup.c:682 -#, c-format -msgid "can't determine filesystem on %s" -msgstr "Dateisystemtyp auf %s konnte nicht ermittelt werden" - -#: util/setup.c:685 -#, c-format -msgid "filesystem `%s' doesn't support blocklists" -msgstr "Dateisystem »%s« unterstützt keine Blocklisten" - -#. TRANSLATORS: cross-disk refers to /boot being on one disk -#. but MBR on another. -#: util/setup.c:694 -msgid "embedding is not possible, but this is required for cross-disk install" -msgstr "" -"Einbettung ist nicht möglich, jedoch für die Installation auf mehreren " -"Laufwerken erforderlich" - -#: util/setup.c:700 -msgid "" -"Embedding is not possible. GRUB can only be installed in this setup by " -"using blocklists. However, blocklists are UNRELIABLE and their use is " -"discouraged." -msgstr "" -"Einbettung ist nicht möglich. GRUB kann in dieser Konfiguration nur mittels " -"Blocklisten installiert werden. Blocklisten sind allerdings UNZUVERLÄSSIG " -"und deren Verwendung wird daher nicht empfohlen." - -#. TRANSLATORS: Here GRUB refuses to continue with blocklist install. -#: util/setup.c:705 -msgid "will not proceed with blocklists" -msgstr "mit Blocklisten wird nicht fortgesetzt" - -#: util/setup.c:817 util/setup.c:837 -msgid "blocklists are invalid" -msgstr "Blocklisten sind ungültig" - -#: util/setup.c:847 -msgid "blocklists are incomplete" -msgstr "Blocklisten sind unvollständig" diff --git a/thirdparty/grub-2.04/po/de@hebrew.gmo b/thirdparty/grub-2.04/po/de@hebrew.gmo deleted file mode 100644 index bae41a663f4d315c9cb140057700aa30ba052d61..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 188625 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, 2010-2013, 2017, 2019. -msgid "" -msgstr "" -"Project-Id-Version: grub-2.04-pre1\n" -"Report-Msgid-Bugs-To: bug-grub@gnu.org\n" -"POT-Creation-Date: 2019-07-04 16:09+0200\n" -"PO-Revision-Date: 2019-04-09 19:23+0200\n" -"Last-Translator: Mario Blättermann \n" -"Language-Team: German \n" -"Language: de@hebrew\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"כּס-בּוּגש: רעפּוֹרת תר×נשל×תִיוֹנ עררוֹרש תוֹ תהע ל×נגוּ××’×¢-תע×מ ×דדרעשש.\n" -"Plural-Forms: nplurals=2; plural=(n != 1);\n" -"כּס-גענער×תוֹר: לוֹכּ×לִיזע 18.12.3\n" - -#: grub-core/bus/usb/serial/ftdi.c:145 grub-core/bus/usb/serial/pl2303.c:158 -#: grub-core/term/ieee1275/escc.c:169 grub-core/term/ns8250.c:202 -msgid "unsupported serial port speed" -msgstr "געשצהוִינדִיגכּעִית דעש שערִיעללענ פּוֹרתש וִירד נִיצהת וּנתערשתֻתזת" - -#: grub-core/bus/usb/serial/ftdi.c:151 grub-core/bus/usb/serial/pl2303.c:164 -#: grub-core/term/efi/serial.c:116 grub-core/term/ieee1275/escc.c:175 -#: grub-core/term/ns8250.c:208 grub-core/term/serial.c:227 -#: grub-core/term/serial.c:243 -msgid "unsupported serial port parity" -msgstr "פּ×רִיתֶת דעש שערִיעללענ פּוֹרתש וִירד נִיצהת וּנתערשתֻתזת" - -#: grub-core/bus/usb/serial/ftdi.c:157 grub-core/bus/usb/serial/pl2303.c:170 -#: grub-core/term/efi/serial.c:122 grub-core/term/ieee1275/escc.c:181 -#: grub-core/term/ns8250.c:213 grub-core/term/serial.c:267 -msgid "unsupported serial port stop bits number" -msgstr "×× ×–×הל דער שתוֹפּ-בִּיתש דעש שערִיעללענ פּוֹרתש וִירד נִיצהת וּנתערשתֻתזת" - -#: grub-core/bus/usb/serial/ftdi.c:161 grub-core/bus/usb/serial/pl2303.c:174 -#: grub-core/term/efi/serial.c:126 grub-core/term/ieee1275/escc.c:185 -#: grub-core/term/ns8250.c:217 -msgid "unsupported serial port word length" -msgstr "ווֹרתלֶנגע דעש שערִיעללענ פּוֹרתש וִירד נִיצהת וּנתערשתֻתזת" - -#: grub-core/commands/acpi.c:42 -msgid "Don't load host tables specified by comma-separated list." -msgstr "×›Ö¼×¢Ö´×™× ×¢ הוֹשת-ת×בּעללענ שפּעזִיפִֿיזִיערת דוּרצה כּוֹממ×געתרעננתע לִישתע ל×דענ." - -#: grub-core/commands/acpi.c:45 -msgid "Load only tables specified by comma-separated list." -msgstr "נוּר ת×בּעללענ שפּעזִיפִֿיזִיערת דוּרצה כּוֹממ×געתרעננתע לִישתע ל×דענ." - -#: grub-core/commands/acpi.c:46 -msgid "Export version 1 tables to the OS." -msgstr "בֿערשִיוֹנ-1-ת×בּעללענ זוּמ בּעתרִיעבּששיִשתעמ עכּספּוֹרתִיערענ." - -#: grub-core/commands/acpi.c:47 -msgid "Export version 2 and version 3 tables to the OS." -msgstr "בֿערשִיוֹנ-2- וּנד בֿערשִיוֹנ-3-ת×בּעללענ זוּמ בּעתרִיעבּששיִשתעמ עכּספּוֹרתִיערענ." - -#: grub-core/commands/acpi.c:48 -msgid "Set OEMID of RSDP, XSDT and RSDT." -msgstr "וֹעמִיד בֿוֹנ רשדפּ, כּסשדת וּנד רשדת פֿעשתלעגענ." - -#: grub-core/commands/acpi.c:50 -msgid "Set OEMTABLE ID of RSDP, XSDT and RSDT." -msgstr "וֹעמת×בּלע-ִיד בֿוֹנ רשדפּ, כּסשדת ×נד רשדת פֿעשתלעגענ." - -#: grub-core/commands/acpi.c:52 -msgid "Set OEMTABLE revision of RSDP, XSDT and RSDT." -msgstr "וֹעמת×בּלע-רעבִֿישִיוֹנ בֿוֹנ רשדפּ, כּסשדת וּנד רשדת פֿעשתלעגענ." - -#: grub-core/commands/acpi.c:54 -msgid "Set creator field of RSDP, XSDT and RSDT." -msgstr "ערשתעללער-פֿעלד בֿוֹנ רשדפּ, כּסשדת וּנד רשדת פֿעשתלעגענ." - -#: grub-core/commands/acpi.c:56 -msgid "Set creator revision of RSDP, XSDT and RSDT." -msgstr "ערשתעללער-רעבִֿישִיוֹנ בֿוֹנ רשדפּ, כּסשדת וּנד רשדת פֿעשתלעגענ." - -#. TRANSLATORS: "hangs" here is a noun, not a verb. -#: grub-core/commands/acpi.c:58 -msgid "" -"Don't update EBDA. May fix failures or hangs on some BIOSes but makes it " -"ineffective with OS not receiving RSDP from GRUB." -msgstr "" -"×¢×‘Ö¼×“× × Ö´×™×¦×”×ª ×כּתוּ×לִישִיערענ. כֵּננתע פֿעהלער וֹדער הֶנגער Ö´×™×  מ×נצהענ בִּיוֹש-בֿערשִיוֹנענ " -"בּעשעִיתִיגענ, ִישת ×בּער נִיצהת עפֿפֿעכּתִיבֿ בּעִי בּעתרִיעבּששיִשתעמענ, דִיע ×›Ö¼×¢Ö´×™×  רשדפּ בֿוֹנ " -"גרוּבּ עמפּפֿ×× ×’×¢× . " - -#: grub-core/commands/acpi.c:650 grub-core/commands/acpi.c:667 -#: grub-core/commands/i386/pc/play.c:105 grub-core/commands/keylayouts.c:230 -#: grub-core/commands/keylayouts.c:245 grub-core/commands/keylayouts.c:263 -#: grub-core/commands/verifiers.c:156 grub-core/efiemu/loadcore.c:350 -#: grub-core/kern/elf.c:117 grub-core/kern/elfXX.c:29 -#: grub-core/kern/elfXX.c:156 grub-core/loader/arm/linux.c:319 -#: grub-core/loader/arm64/linux.c:330 grub-core/loader/arm64/xen_boot.c:356 -#: grub-core/loader/efi/chainloader.c:276 -#: grub-core/loader/efi/chainloader.c:297 -#: grub-core/loader/efi/chainloader.c:329 grub-core/loader/efi/fdt.c:138 -#: grub-core/loader/i386/bsd.c:1276 grub-core/loader/i386/bsd.c:2116 -#: grub-core/loader/i386/bsdXX.c:20 grub-core/loader/i386/bsdXX.c:36 -#: grub-core/loader/i386/bsdXX.c:63 grub-core/loader/i386/bsdXX.c:357 -#: grub-core/loader/i386/bsdXX.c:376 grub-core/loader/i386/bsdXX.c:519 -#: grub-core/loader/i386/bsdXX.c:535 grub-core/loader/i386/bsdXX.c:615 -#: grub-core/loader/i386/bsdXX.c:638 -#: grub-core/loader/i386/coreboot/chainloader.c:112 -#: grub-core/loader/i386/coreboot/chainloader.c:148 -#: grub-core/loader/i386/coreboot/chainloader.c:170 -#: grub-core/loader/i386/linux.c:667 grub-core/loader/i386/linux.c:788 -#: grub-core/loader/i386/linux.c:1005 grub-core/loader/i386/multiboot_mbi.c:171 -#: grub-core/loader/i386/pc/chainloader.c:202 -#: grub-core/loader/i386/pc/linux.c:149 grub-core/loader/i386/pc/linux.c:320 -#: grub-core/loader/i386/pc/linux.c:362 grub-core/loader/i386/pc/plan9.c:457 -#: grub-core/loader/i386/pc/plan9.c:550 grub-core/loader/i386/pc/plan9.c:566 -#: grub-core/loader/i386/xen.c:934 grub-core/loader/i386/xen_file.c:72 -#: grub-core/loader/i386/xen_fileXX.c:43 grub-core/loader/i386/xen_fileXX.c:186 -#: grub-core/loader/i386/xen_fileXX.c:339 grub-core/loader/ia64/efi/linux.c:423 -#: grub-core/loader/ia64/efi/linux.c:471 grub-core/loader/linux.c:286 -#: grub-core/loader/macho.c:84 grub-core/loader/macho.c:109 -#: grub-core/loader/machoXX.c:33 grub-core/loader/machoXX.c:46 -#: grub-core/loader/machoXX.c:76 grub-core/loader/machoXX.c:116 -#: grub-core/loader/machoXX.c:131 grub-core/loader/machoXX.c:147 -#: grub-core/loader/machoXX.c:196 grub-core/loader/machoXX.c:317 -#: grub-core/loader/multiboot.c:434 grub-core/loader/multiboot_elfxx.c:171 -#: grub-core/loader/multiboot_elfxx.c:234 -#: grub-core/loader/multiboot_elfxx.c:278 grub-core/loader/multiboot_mbi2.c:129 -#: grub-core/loader/xnu.c:737 grub-core/loader/xnu.c:795 -#: grub-core/loader/xnu.c:816 grub-core/loader/xnu.c:871 -#: grub-core/loader/xnu.c:914 grub-core/loader/xnu.c:952 -#: grub-core/loader/xnu_resume.c:68 grub-core/loader/xnu_resume.c:153 -#: grub-core/loader/xnu_resume.c:165 util/grub-mkimagexx.c:2288 -#, c-format -msgid "premature end of file %s" -msgstr "וּנערו×רתעתעש ענדע דער ד×תעִי %s" - -#: grub-core/commands/acpi.c:779 -msgid "" -"[-1|-2] [--exclude=TABLE1,TABLE2|--load-only=TABLE1,TABLE2] FILE1 [FILE2] " -"[...]" -msgstr "" -"[-1|-2] [--עכּסצלוּדע=ת×בּעללע1,ת×בּעללע2|--לוֹ×ד-וֹנליִ=ת×בּעללע1,ת×בּעללע2] ד×תעִי1 " -"[ד×תעִי2] [...]" - -#: grub-core/commands/acpi.c:782 -msgid "Load host ACPI tables and tables specified by arguments." -msgstr "הוֹשת-×צפִּי-ת×בּעללענ וּנד דוּרצה ×רגוּמענתע ×נגעגעבּענע ת×בּעללענ ל×דענ." - -#: grub-core/commands/acpihalt.c:368 grub-core/kern/err.c:110 -#, c-format -msgid "error: %s.\n" -msgstr "פֿעהלער: %s.\n" - -#: grub-core/commands/acpihalt.c:368 grub-core/kern/emu/misc.c:95 -#: grub-core/kern/emu/misc.c:105 grub-core/kern/emu/misc.c:134 -#: grub-core/kern/emu/mm.c:34 grub-core/kern/emu/mm.c:62 -#: grub-core/kern/mm.c:374 grub-core/lib/relocator.c:1282 -#: grub-core/lib/relocator.c:1439 grub-core/lib/relocator.c:1538 -#: grub-core/loader/arm/linux.c:259 grub-core/loader/arm64/linux.c:265 -#: grub-core/loader/arm64/linux.c:321 grub-core/loader/arm64/linux.c:340 -#: grub-core/loader/arm64/xen_boot.c:344 grub-core/loader/arm64/xen_boot.c:367 -#: grub-core/loader/efi/chainloader.c:289 grub-core/osdep/unix/dl.c:48 -#: grub-core/osdep/windows/dl.c:46 grub-core/script/lexer.c:156 -#: grub-core/script/lexer.c:182 -msgid "out of memory" -msgstr "×”×וּפּתשפּעִיצהער ערשצהֵפּפֿת" - -#: grub-core/commands/acpihalt.c:374 grub-core/disk/cryptodisk.c:587 -#: grub-core/disk/cryptodisk.c:632 grub-core/kern/emu/hostdisk.c:307 -#: grub-core/kern/emu/hostfs.c:149 grub-core/kern/emu/misc.c:200 -#: grub-core/osdep/linux/ofpath.c:195 grub-core/osdep/linux/ofpath.c:521 -#: grub-core/osdep/linux/ofpath.c:534 util/glue-efi.c:80 util/glue-efi.c:94 -#: util/grub-editenv.c:155 util/grub-fstest.c:577 -#: util/grub-install-common.c:943 util/grub-mkrescue.c:634 -#: util/grub-mkrescue.c:888 util/grub-mount.c:506 util/grub-render-label.c:176 -#: util/misc.c:95 util/setup.c:814 util/setup.c:833 -#, c-format -msgid "cannot read `%s': %s" -msgstr "»%s« ִישת נִיצהת לעשבּ×ר: %s" - -#. TRANSLATORS: It's computer shutdown using ACPI, not disabling ACPI. -#: grub-core/commands/acpihalt.c:452 -msgid "ACPI shutdown failed" -msgstr "×צפִּי-הערוּנתערפֿ×הרענ ִישת געשצהעִיתערת" - -#: grub-core/commands/arc/lsdev.c:51 -msgid "List devices." -msgstr "גערֶתע ×וּפֿלִישתענ." - -#: grub-core/commands/blocklist.c:122 grub-core/commands/cat.c:57 -#: grub-core/commands/configfile.c:35 grub-core/commands/efi/loadbios.c:168 -#: grub-core/commands/file.c:159 grub-core/commands/hexdump.c:47 -#: grub-core/commands/legacycfg.c:209 grub-core/commands/legacycfg.c:315 -#: grub-core/commands/minicmd.c:44 grub-core/commands/syslinuxcfg.c:146 -#: grub-core/commands/testload.c:58 grub-core/commands/testspeed.c:52 -#: grub-core/disk/loopback.c:93 grub-core/efiemu/main.c:293 -#: grub-core/font/font_cmd.c:32 grub-core/kern/emu/hostdisk.c:519 -#: grub-core/loader/arm/linux.c:364 grub-core/loader/arm/linux.c:409 -#: grub-core/loader/arm/linux.c:472 grub-core/loader/arm64/linux.c:243 -#: grub-core/loader/arm64/linux.c:297 grub-core/loader/arm64/xen_boot.c:398 -#: grub-core/loader/arm64/xen_boot.c:411 grub-core/loader/arm64/xen_boot.c:462 -#: grub-core/loader/efi/chainloader.c:216 grub-core/loader/i386/bsd.c:1462 -#: grub-core/loader/i386/bsd.c:1807 grub-core/loader/i386/bsd.c:2085 -#: grub-core/loader/i386/coreboot/chainloader.c:438 -#: grub-core/loader/i386/linux.c:656 grub-core/loader/i386/linux.c:1041 -#: grub-core/loader/i386/pc/chainloader.c:290 -#: grub-core/loader/i386/pc/freedos.c:105 grub-core/loader/i386/pc/linux.c:138 -#: grub-core/loader/i386/pc/linux.c:400 grub-core/loader/i386/pc/ntldr.c:85 -#: grub-core/loader/i386/pc/plan9.c:409 -#: grub-core/loader/i386/pc/pxechainloader.c:94 -#: grub-core/loader/i386/pc/truecrypt.c:96 grub-core/loader/i386/xen.c:641 -#: grub-core/loader/i386/xen.c:768 grub-core/loader/i386/xen.c:844 -#: grub-core/loader/i386/xen.c:854 grub-core/loader/i386/xnu.c:488 -#: grub-core/loader/ia64/efi/linux.c:459 grub-core/loader/ia64/efi/linux.c:539 -#: grub-core/loader/mips/linux.c:238 grub-core/loader/mips/linux.c:429 -#: grub-core/loader/multiboot.c:322 grub-core/loader/multiboot.c:374 -#: grub-core/loader/multiboot.c:384 -#: grub-core/loader/powerpc/ieee1275/linux.c:269 -#: grub-core/loader/powerpc/ieee1275/linux.c:341 -#: grub-core/loader/sparc64/ieee1275/linux.c:305 -#: grub-core/loader/sparc64/ieee1275/linux.c:381 grub-core/loader/xnu.c:351 -#: grub-core/loader/xnu.c:460 grub-core/loader/xnu.c:778 -#: grub-core/loader/xnu.c:892 grub-core/loader/xnu.c:1277 -#: grub-core/loader/xnu.c:1427 grub-core/loader/xnu.c:1453 -#: grub-core/video/readers/jpeg.c:812 grub-core/video/readers/png.c:1123 -msgid "filename expected" -msgstr "ד×תעִינ×מע ווּרדע ערו×רתעת" - -#. TRANSLATORS: "embed" is a verb (command description). " -#: grub-core/commands/blocklist.c:154 grub-core/commands/cat.c:163 -#: grub-core/commands/configfile.c:65 grub-core/commands/configfile.c:68 -#: grub-core/commands/configfile.c:74 grub-core/commands/configfile.c:80 -#: grub-core/commands/configfile.c:86 grub-core/commands/hashsum.c:34 -#: grub-core/commands/legacycfg.c:834 grub-core/commands/legacycfg.c:841 -#: grub-core/commands/legacycfg.c:846 grub-core/commands/legacycfg.c:851 -#: grub-core/commands/macbless.c:222 grub-core/commands/minicmd.c:198 -#: grub-core/commands/syslinuxcfg.c:186 grub-core/commands/syslinuxcfg.c:194 -#: grub-core/commands/syslinuxcfg.c:200 grub-core/commands/syslinuxcfg.c:206 -#: grub-core/commands/testload.c:163 grub-core/efiemu/main.c:312 -#: grub-core/kern/emu/main.c:100 grub-core/kern/emu/main.c:103 -#: grub-core/loader/i386/bsd.c:2137 grub-core/loader/i386/bsd.c:2140 -#: grub-core/loader/i386/bsd.c:2143 -#: grub-core/loader/i386/coreboot/chainloader.c:505 -#: grub-core/loader/ia64/efi/linux.c:594 include/grub/util/install.h:32 -#: include/grub/util/install.h:64 util/grub-glue-efi.c:52 -#: util/grub-glue-efi.c:54 util/grub-glue-efi.c:56 util/grub-install.c:254 -#: util/grub-install.c:301 util/grub-mkfont.c:936 util/grub-mkimage.c:68 -#: util/grub-mkimage.c:74 util/grub-mkimage.c:76 util/grub-mkimage.c:78 -#: util/grub-mkimage.c:81 util/grub-mklayout.c:52 util/grub-mklayout.c:54 -#: util/grub-mkrescue.c:97 util/grub-mkrescue.c:101 util/grub-mkrescue.c:104 -#: util/grub-mkrescue.c:105 util/grub-mkrescue.c:106 -#: util/grub-mkstandalone.c:47 util/grub-mkstandalone.c:49 -#: util/grub-probe.c:732 util/grub-render-label.c:59 -#: util/grub-render-label.c:70 util/grub-render-label.c:72 util/grub-setup.c:78 -#: util/grub-setup.c:80 util/grub-setup.c:84 util/grub-syslinux2cfg.c:74 -#: util/grub-syslinux2cfg.c:147 -msgid "FILE" -msgstr "ד×תעִי" - -#: grub-core/commands/blocklist.c:154 -msgid "Print a block list." -msgstr "×¢Ö´×™× ×¢ בּלוֹצכּלִישתע ×וּשגעבּענ." - -#: grub-core/commands/boot.c:147 grub-core/commands/legacycfg.c:533 -#: grub-core/commands/legacycfg.c:574 grub-core/loader/arm64/linux.c:250 -#: grub-core/loader/i386/bsd.c:1799 grub-core/loader/i386/bsd.c:1900 -#: grub-core/loader/i386/bsd.c:2007 grub-core/loader/i386/bsd.c:2040 -#: grub-core/loader/i386/bsd.c:2089 grub-core/loader/i386/linux.c:1047 -#: grub-core/loader/i386/pc/linux.c:406 grub-core/loader/i386/xen.c:775 -#: grub-core/loader/i386/xen.c:859 grub-core/loader/ia64/efi/linux.c:545 -#: grub-core/loader/mips/linux.c:432 grub-core/loader/multiboot.c:388 -#: grub-core/loader/powerpc/ieee1275/linux.c:347 -#: grub-core/loader/sparc64/ieee1275/linux.c:387 grub-core/loader/xnu.c:572 -#: grub-core/loader/xnu.c:665 grub-core/loader/xnu.c:781 -#: grub-core/loader/xnu.c:895 grub-core/loader/xnu.c:1091 -#: grub-core/loader/xnu.c:1258 grub-core/loader/xnu.c:1289 -#: grub-core/loader/xnu.c:1430 -msgid "you need to load the kernel first" -msgstr "שִיע מֻששענ זוּערשת דענ כּערנעל ל×דענ" - -#: grub-core/commands/boot.c:189 -msgid "Boot an operating system." -msgstr "×¢Ö´×™×  בּעתרִיעבּששיִשתעמ שת×רתענ." - -#: grub-core/commands/boottime.c:36 -#: grub-core/commands/i386/coreboot/cb_timestamps.c:108 -msgid "No boot time statistics is available\n" -msgstr "×›Ö¼×¢Ö´×™× ×¢ שת×תִישתִיכּענ פֻֿר בּוֹוֹת-זעִיתענ בֿערפֻֿגבּ×ר\n" - -#: grub-core/commands/boottime.c:59 -msgid "Show boot time statistics." -msgstr "שת×תִישתִיכּענ פֻֿר בּוֹוֹת-זעִיתענ ערשתעללענ." - -#: grub-core/commands/cacheinfo.c:40 -#, c-format -msgid "Disk cache statistics: hits = %lu (%lu.%02lu%%), misses = %lu\n" -msgstr "" -"שת×תִישתִיכּענ דעש פּל×תתענזוִישצהענשפּעִיצהערש: הִיתש = %lu (%lu.%02lu%%), מִיששעש = " -"%lu\n" - -#: grub-core/commands/cacheinfo.c:45 -msgid "No disk cache statistics available\n" -msgstr "×›Ö¼×¢Ö´×™× ×¢ שת×תִישתִיכּענ זוּמ פּ×כּעת-זוִישצהענשפּעִיצהער בֿערפֻֿגבּ×ר\n" - -#: grub-core/commands/cacheinfo.c:56 -msgid "Get disk cache info." -msgstr "ִינפֿוֹרמ×תִיוֹנענ זוּמ פּל×תתענ-זוִישצהענשפּעִיצהער הוֹלענ." - -#: grub-core/commands/cat.c:33 -msgid "Accept DOS-style CR/NL line endings." -msgstr "צר/נל-זעִילענענדענ ִימ דוֹש-שתִיל ×כּזעפּתִיערענ." - -#: grub-core/commands/cat.c:163 grub-core/commands/minicmd.c:198 -msgid "Show the contents of a file." -msgstr "Ö´×™× ×”×לת עִינער ד×תעִי ×× ×–×¢Ö´×™×’×¢× ." - -#: grub-core/commands/cmp.c:43 grub-core/commands/i386/pc/drivemap.c:239 -#: grub-core/commands/i386/wrmsr.c:60 grub-core/commands/iorw.c:85 -#: grub-core/commands/memrw.c:84 grub-core/commands/password.c:75 -#: grub-core/commands/password_pbkdf2.c:94 grub-core/commands/pgp.c:826 -#: grub-core/commands/regexp.c:113 grub-core/mmap/mmap.c:517 -#: grub-core/net/dns.c:639 -msgid "two arguments expected" -msgstr "זועִי ×רגוּמענתע ווּרדענ ערו×רתעת" - -#: grub-core/commands/cmp.c:45 -#, c-format -msgid "Compare file `%s' with `%s':\n" -msgstr "ד×תעִי »%s« מִית »%s« בֿערגלעִיצהענ:\n" - -#: grub-core/commands/cmp.c:54 -#, c-format -msgid "Files differ in size: %llu [%s], %llu [%s]\n" -msgstr "ד×תעִיגרֵססענ שִינד וּנתערשצהִיעדלִיצה: %llu [%s], %llu [%s]\n" - -#: grub-core/commands/cmp.c:81 -#, c-format -msgid "Files differ at the offset %llu: 0x%x [%s], 0x%x [%s]\n" -msgstr "ד×תעִיענ וּנתערשצהעִידענ שִיצה ××  פּוֹשִיתִיוֹנ %llu: 0כּס%x [%s], 0כּס%x [%s]\n" - -#. TRANSLATORS: it's always exactly 2 files. -#: grub-core/commands/cmp.c:93 -msgid "The files are identical.\n" -msgstr "דִיע ד×תעִיענ שִינד ִידענתִישצה.\n" - -#: grub-core/commands/cmp.c:113 -msgid "FILE1 FILE2" -msgstr "ד×תעִי1 ד×תעִי2" - -#: grub-core/commands/cmp.c:113 -msgid "Compare two files." -msgstr "זועִי ד×תעִיענ בֿערגלעִיצהענ." - -#: grub-core/commands/configfile.c:65 -msgid "Load another config file." -msgstr "×¢Ö´×™× ×¢ ×נדערע כּוֹנפִֿיגוּר×תִיוֹנשד×תעִי ל×דענ." - -#: grub-core/commands/configfile.c:69 grub-core/commands/configfile.c:87 -msgid "Load another config file without changing context." -msgstr "×¢Ö´×™× ×¢ ×נדערע כּוֹנפִֿיגוּר×תִיוֹנשד×תעִי ל×דענ, וֹהנע דענ כּוֹנתעכּסת זוּ ֶנדערנ." - -#: grub-core/commands/configfile.c:75 -msgid "" -"Load another config file without changing context but take only menu entries." -msgstr "" -"×¢Ö´×™× ×¢ ×נדערע כּוֹנפִֿיגוּר×תִיוֹנשד×תעִי ל×דענ, וֹהנע דענ כּוֹנתעכּסת זוּ ֶנדערנ. עש וערדענ " -"נוּר מענֻעִינתרֶגע געל×דענ." - -#: grub-core/commands/configfile.c:81 -msgid "Load another config file but take only menu entries." -msgstr "×¢Ö´×™× ×¢ ×נדערע כּוֹנפִֿיגוּר×תִיוֹנשד×תעִי ל×דענ, ×בּער נוּר דערענ מענֻעִינתרֶגע." - -#: grub-core/commands/date.c:141 -msgid "[[year-]month-day] [hour:minute[:second]]" -msgstr "[[×™×הר-]מוֹנ×ת-ת××’] [שתוּנדע:מִינוּתע[:שעכּוּנדע]]" - -#: grub-core/commands/date.c:142 -msgid "Display/set current datetime." -msgstr "×× ×–×¢Ö´×™×’×¢× /פֿעשתלעגענ דעש/דער ×כּתוּעללענ ד×תוּמש/זעִית." - -#: grub-core/commands/echo.c:30 -msgid "Do not output the trailing newline." -msgstr "×נגעהֶנגתע זעִילענוּמבּרֻצהע נִיצהת ×וּשגעבּענ." - -#: grub-core/commands/echo.c:31 -msgid "Enable interpretation of backslash escapes." -msgstr "×וּשוערתוּנג דער בּ×צכּשל×שה-מ×שכִּיערוּנגענ ערמֵגלִיצהענ." - -#: grub-core/commands/echo.c:134 -msgid "[-e|-n] STRING" -msgstr "[-×¢|-× ] זעִיצהענכּעתתע" - -#: grub-core/commands/echo.c:134 -msgid "Display a line of text." -msgstr "×¢Ö´×™× ×¢ תעכּסתזעִילע ×× ×–×¢Ö´×™×’×¢× ." - -#: grub-core/commands/efi/efifwsetup.c:82 -msgid "Reboot into firmware setup menu." -msgstr "Ö´×™×  ד×ש פִֿירמו×רע-כּוֹנפִֿיגוּר×תִיוֹנשמענֻ נעוּ שת×רתענ." - -#: grub-core/commands/efi/fixvideo.c:107 -msgid "Fix video problem." -msgstr "×¢Ö´×™×  בִֿידעוֹפּרוֹבּלעמ בּעהעבּענ." - -#: grub-core/commands/efi/loadbios.c:52 -msgid "ROM image is present." -msgstr "רוֹמ-×בּבִּילד ִישת בֿוֹרה×נדענ." - -#: grub-core/commands/efi/loadbios.c:70 -msgid "Can't enable ROM area." -msgstr "רוֹמ-בּערעִיצה ×›Ö¼×× ×  נִיצהת ×כּתִיבִֿיערת וערדענ." - -#: grub-core/commands/efi/loadbios.c:209 -msgid "" -"Create BIOS-like structures for backward compatibility with existing OS." -msgstr "" -"בִּיוֹש-שתרוּכּתוּרענ פֻֿר ×בּוֶרתשכּוֹמפּ×תִיבִּילִיתֶת מִית דעמ בֿוֹרה×נדענענ בּעתרִיעבּששיִשתעמ " -"ערשתעללענ." - -#: grub-core/commands/efi/loadbios.c:214 -msgid "BIOS_DUMP [INT10_DUMP]" -msgstr "בִּיוֹש_שִיצהערוּנג [ִינת10_שִיצהערוּנג]" - -#: grub-core/commands/efi/loadbios.c:215 -msgid "Load BIOS dump." -msgstr "בִּיוֹש-שִיצהערוּנג ל×דענ." - -#: grub-core/commands/efi/shim_lock.c:76 -#, c-format -msgid "module cannot be loaded in UEFI secure boot mode: %s" -msgstr "מוֹדוּל ×›Ö¼×× ×  ִימ שִיצהערענ וּעפִֿי-בּוֹוֹתמוֹדוּש נִיצהת געל×דענ וערדענ: %s" - -#: grub-core/commands/efi/shim_lock.c:98 -#, c-format -msgid "cannot boot due to dangerous module in memory: %s" -msgstr "" -"ועגענ עִינעש געפֶֿהרלִיצהענ מוֹדוּלש ִימ שפּעִיצהער ×›Ö¼×× ×  נִיצהת געבּוֹוֹתעת וערדענ: %s" - -#: grub-core/commands/efi/shim_lock.c:116 -msgid "bad shim signature" -msgstr "פֿ×לשצהע שהִימ-שִיגנ×תוּר" - -#: grub-core/commands/efi/tpm.c:149 grub-core/commands/efi/tpm.c:189 -#: grub-core/commands/efi/tpm.c:256 grub-core/commands/efi/tpm.c:306 -msgid "Command failed" -msgstr "בּעפֿעהלש×וּשפֻֿהרוּנג פֿעהלגעשצהל××’×¢× " - -#: grub-core/commands/efi/tpm.c:151 grub-core/commands/efi/tpm.c:191 -#: grub-core/commands/efi/tpm.c:258 grub-core/commands/efi/tpm.c:308 -msgid "Invalid parameter" -msgstr "וּנגֻלתִיגער פּ×ר×מעתער" - -#: grub-core/commands/efi/tpm.c:154 grub-core/commands/efi/tpm.c:194 -#: grub-core/commands/efi/tpm.c:261 grub-core/commands/efi/tpm.c:311 -msgid "Output buffer too small" -msgstr "×וּשג×בּעפּוּפֿפֿער ִישת זוּ כּלעִינ" - -#: grub-core/commands/efi/tpm.c:156 grub-core/commands/efi/tpm.c:196 -#: grub-core/commands/efi/tpm.c:263 grub-core/commands/efi/tpm.c:313 -msgid "TPM unavailable" -msgstr "תפּמ ִישת נִיצהת בֿערפֻֿגבּ×ר" - -#: grub-core/commands/efi/tpm.c:158 grub-core/commands/efi/tpm.c:198 -#: grub-core/commands/efi/tpm.c:265 grub-core/commands/efi/tpm.c:315 -msgid "Unknown TPM error" -msgstr "וּנבּעכּ×ננתער תפּמ-פֿעהלער" - -#: grub-core/commands/efi/tpm.c:240 grub-core/commands/efi/tpm.c:288 -msgid "cannot allocate TPM event buffer" -msgstr "תפּמ-ערעִיגנִישפּוּפֿפֿער ×›Ö¼×× ×  נִיצהת בּעלעגת וערדענ" - -#: grub-core/commands/eval.c:63 -msgid "STRING ..." -msgstr "זעִיצהענכּעתתע ..." - -#: grub-core/commands/eval.c:64 -msgid "Evaluate arguments as GRUB commands" -msgstr "×רגוּמענתע ×לש גרוּבּ-בּעפֿעהלע ×וּפֿפֿ×ששענ" - -#: grub-core/commands/file.c:41 -msgid "Check if FILE can be booted as i386 PAE Xen unprivileged guest kernel" -msgstr "" -"ֻבּערפּרֻפֿענ, וֹבּ ד×תעִי ×לש וּנפּרִיבִֿילעגִיערתער Ö´×™386-פּ××¢-כּסענ-×’×שת-כּערנעל געבּוֹוֹתעת " -"וערדענ ×›Ö¼×× × " - -#: grub-core/commands/file.c:44 -msgid "Check if FILE can be booted as x86_64 Xen unprivileged guest kernel" -msgstr "" -"ֻבּערפּרֻפֿענ, וֹבּ ד×תעִי ×לש וּנפּרִיבִֿילעגִיערתער כּס86_64-כּסענ-×’×שת-כּערנעל געבּוֹוֹתעת " -"וערדענ ×›Ö¼×× × " - -#: grub-core/commands/file.c:46 -msgid "Check if FILE can be used as Xen x86 privileged guest kernel" -msgstr "" -"ֻבּערפּרֻפֿענ, וֹבּ ד×תעִי ×לש וּנפּרִיבִֿילעגִיערתער כּס86-כּסענ-×’×שת-כּערנעל געבּוֹוֹתעת " -"וערדענ ×›Ö¼×× × " - -#: grub-core/commands/file.c:48 -msgid "Check if FILE can be used as x86 multiboot kernel" -msgstr "ֻבּערפּרֻפֿענ, וֹבּ ד×תעִי ×לש כּס86-מוּלתִיבּוֹוֹת-כּערנעל געבּוֹוֹתעת וערדענ ×›Ö¼×× × " - -#: grub-core/commands/file.c:50 -msgid "Check if FILE can be used as x86 multiboot2 kernel" -msgstr "ֻבּערפּרֻפֿענ, וֹבּ ד×תעִי ×לש כּס86-מוּלתִיבּוֹוֹת2-כּערנעל געבּוֹוֹתעת וערדענ ×›Ö¼×× × " - -#: grub-core/commands/file.c:52 -msgid "Check if FILE is ARM Linux" -msgstr "ֻבּערפֻּפֿענ, וֹבּ ד×תעִי ×רמ-לִינוּכּס ִישת" - -#: grub-core/commands/file.c:54 -msgid "Check if FILE is ARM64 Linux" -msgstr "ֻבּערפֻּפֿענ, וֹבּ ד×תעִי ×רמ64-לִינוּכּס ִישת" - -#: grub-core/commands/file.c:56 -msgid "Check if FILE is IA64 Linux" -msgstr "ֻבּערפֻּפֿענ, וֹבּ ד×תעִי Ö´×™×64-לִינוּכּס ִישת" - -#: grub-core/commands/file.c:58 -msgid "Check if FILE is MIPS Linux" -msgstr "ֻבּערפֻּפֿענ, וֹבּ ד×תעִי מִיפּש-לִינוּכּס ִישת" - -#: grub-core/commands/file.c:60 -msgid "Check if FILE is MIPSEL Linux" -msgstr "ֻבּערפֻּפֿענ, וֹבּ ד×תעִי מִיפּשעל-לִינוּכּס ִישת" - -#: grub-core/commands/file.c:62 -msgid "Check if FILE is SPARC64 Linux" -msgstr "ֻבּערפֻּפֿענ, וֹבּ ד×תעִי שפּ×רצ64-לִינוּכּס ִישת" - -#: grub-core/commands/file.c:64 -msgid "Check if FILE is POWERPC Linux" -msgstr "ֻבּערפֻּפֿענ, וֹבּ ד×תעִי פּוֹוערפּצ-לִינוּכּס ִישת" - -#: grub-core/commands/file.c:66 -msgid "Check if FILE is x86 Linux" -msgstr "ֻבּערפֻּפֿענ, וֹבּ ד×תעִי כּס86-לִינוּכּס ִישת" - -#: grub-core/commands/file.c:68 -msgid "Check if FILE is x86 Linux supporting 32-bit protocol" -msgstr "ֻבּערפֻּפֿענ, וֹבּ ד×תעִי כּס86-לִינוּכּס מִית 32-בִּית-פּרוֹתוֹכּוֹללוּנתערשתֻתזוּנג ִישת" - -#: grub-core/commands/file.c:70 -msgid "Check if FILE is x86 kFreeBSD" -msgstr "ֻבּערפֻּפֿענ, וֹבּ ד×תעִי כּס86-כּפֿרעעבּשד ִישת" - -#: grub-core/commands/file.c:72 -msgid "Check if FILE is i386 kFreeBSD" -msgstr "ֻבּערפֻּפֿענ, וֹבּ ד×תעִי Ö´×™386-כּפֿרעעבּשד ִישת" - -#: grub-core/commands/file.c:74 -msgid "Check if FILE is x86_64 kFreeBSD" -msgstr "ֻבּערפֻּפֿענ, וֹבּ ד×תעִי כּס86_64-כּפֿרעעבּשד ִישת" - -#: grub-core/commands/file.c:77 -msgid "Check if FILE is x86 kNetBSD" -msgstr "ֻבּערפֻּפֿענ, וֹבּ ד×תעִי כּס86-כּנעתבּשד ִישת" - -#: grub-core/commands/file.c:79 -msgid "Check if FILE is i386 kNetBSD" -msgstr "ֻבּערפֻּפֿענ, וֹבּ ד×תעִי Ö´×™386-כּנעתבּשד ִישת" - -#: grub-core/commands/file.c:81 -msgid "Check if FILE is x86_64 kNetBSD" -msgstr "ֻבּערפֻּפֿענ, וֹבּ ד×תעִי כּס86_64-כּנעתבּשד ִישת" - -#: grub-core/commands/file.c:84 -msgid "Check if FILE is i386 EFI file" -msgstr "ֻבּערפֻּפֿענ, וֹבּ ד×תעִי ×¢Ö´×™× ×¢ Ö´×™386-עפִֿי-ד×תעִי ִישת" - -#: grub-core/commands/file.c:86 -msgid "Check if FILE is x86_64 EFI file" -msgstr "ֻבּערפֻּפֿענ, וֹבּ ד×תעִי ×¢Ö´×™× ×¢ Ö´×™386-עפִֿי-ד×תעִי ִישת" - -#: grub-core/commands/file.c:88 -msgid "Check if FILE is IA64 EFI file" -msgstr "ֻבּערפֻּפֿענ, וֹבּ ד×תעִי ×¢Ö´×™× ×¢ Ö´×™×64-עפִֿי-ד×תעִי ִישת" - -#: grub-core/commands/file.c:90 -msgid "Check if FILE is ARM64 EFI file" -msgstr "ֻבּערפֻּפֿענ, וֹבּ ד×תעִי ×¢Ö´×™× ×¢ ×רמ64-עפִֿי-ד×תעִי ִישת" - -#: grub-core/commands/file.c:92 -msgid "Check if FILE is ARM EFI file" -msgstr "ֻבּערפֻּפֿענ, וֹבּ ד×תעִי ×¢Ö´×™× ×¢ ×רמ-עפִֿי-ד×תעִי ִישת" - -#: grub-core/commands/file.c:94 -msgid "Check if FILE is RISC-V 32bit EFI file" -msgstr "ֻבּערפּרֻפֿענ, וֹבּ ד×תעִי ×¢Ö´×™× ×¢ 32-בִּית-רִישצ-בֿ-עפִֿי-ד×תעִי ִישת" - -#: grub-core/commands/file.c:96 -msgid "Check if FILE is RISC-V 64bit EFI file" -msgstr "ֻבּערפּרֻפֿענ, וֹבּ ד×תעִי ×¢Ö´×™× ×¢ 64-בִּית-רִישצ-בֿ-עפִֿי-ד×תעִי ִישת" - -#: grub-core/commands/file.c:98 -msgid "Check if FILE is hiberfil.sys in hibernated state" -msgstr "ֻבּערפֻּפֿענ, וֹבּ ד×תעִי הִיבּערפִֿיל.שיִש ִימ רוּהעזוּשת×נד ִישת (הִיבּערנ×תעד)" - -#: grub-core/commands/file.c:100 -msgid "Check if FILE is x86_64 XNU (Mac OS X kernel)" -msgstr "ֻבּערפֻּפֿענ, וֹבּ ד×תעִי כּס86_64-כּסנוּ ִישת (מ×צ-וֹשכּס-כּערנעל)" - -#: grub-core/commands/file.c:102 -msgid "Check if FILE is i386 XNU (Mac OS X kernel)" -msgstr "ֻבּערפֻּפֿענ, וֹבּ ד×תעִי כּסנוּ ִישת (מ×צ-וֹשכּס-כּערנעל)" - -#: grub-core/commands/file.c:104 -msgid "Check if FILE is XNU (Mac OS X kernel) hibernated image" -msgstr "ֻבּערפֻּפֿענ, וֹבּ ד×תעִי ×¢Ö´×™×  כּסנוּ-רוּהעזוּשת×נד-×בּבִּילד ִישת (מ×צ-וֹשכּס-כּערנעל)" - -#: grub-core/commands/file.c:106 -msgid "Check if FILE is BIOS bootsector" -msgstr "ֻבּערפֻּפֿענ, וֹבּ ד×תעִי ×¢Ö´×™×  בִּיוֹש-בּוֹוֹתשעכּתוֹר ִישת" - -#. TRANSLATORS: it's a standalone boolean value, -#. opposite of "true". -#: grub-core/commands/file.c:675 grub-core/commands/i386/cmostest.c:63 -#: grub-core/commands/i386/cpuid.c:71 grub-core/commands/keystatus.c:83 -#: grub-core/commands/keystatus.c:87 grub-core/commands/keystatus.c:96 -#: grub-core/commands/test.c:436 grub-core/commands/true.c:39 -#: grub-core/script/execute.c:247 grub-core/script/execute.c:1039 -msgid "false" -msgstr "פֿ×לשצה" - -#: grub-core/commands/file.c:684 -msgid "OPTIONS FILE" -msgstr "וֹפּתִיוֹנענ ד×תעִי" - -#: grub-core/commands/file.c:685 -msgid "Check if FILE is of specified type." -msgstr "ֻבּערפּרֻפֿענ, וֹבּ ד×תעִי דענ ×נגעגעבּענענ תיִפּ ×”×ת." - -#. TRANSLATORS: It means that the specified partition e.g. -#. hd0,msdos1=/dev/sda1 doesn't exist. -#: grub-core/commands/gptsync.c:140 grub-core/kern/disk.c:258 -msgid "no such partition" -msgstr "×›Ö¼×¢Ö´×™× ×¢ שוֹלצהע פּ×רתִיתִיוֹנ" - -#: grub-core/commands/gptsync.c:240 -#, c-format -msgid "New MBR is written to `%s'\n" -msgstr "נעוּער מבּר ווּרדע × ×צה »%s« געשצהרִיעבּענ\n" - -#: grub-core/commands/gptsync.c:252 -msgid "DEVICE [PARTITION[+/-[TYPE]]] ..." -msgstr "גערֶת [פּ×רתִיתִיוֹנ[+/-[תיִפּ]]] ..." - -#. TRANSLATORS: MBR type is one-byte partition -#. type id. -#: grub-core/commands/gptsync.c:255 -msgid "" -"Fill hybrid MBR of GPT drive DEVICE. Specified partitions will be a part of " -"hybrid MBR. Up to 3 partitions are allowed. TYPE is an MBR type. + means " -"that partition is active. Only one partition can be active." -msgstr "" -"היִבּרִיד-מבּר דעש גפּת-גערֶתעש גערֶת פֻֿללענ. ×נגעגעבּענע פּ×רתִיתִיוֹנענ וערדענ תעִיל דעש " -"היִבּרִיד-מבּר. בִּיש זוּ 3 פּ×רתִיתִיוֹנענ שִינד זוּלֶששִיג. תיִפּ ִישת ×¢Ö´×™×  מבּר-תיִפּ. + " -"בּעדעוּתעת, ד×שש דִיע פּ×רתִיתִיוֹנ ×כּתִיבֿ ִישת. נוּר ×¢Ö´×™× ×¢ פּ×רתִיתִיוֹנ ×›Ö¼×× ×  ×כּתִיבֿ שעִינ." - -#: grub-core/commands/halt.c:40 -msgid "" -"Halts the computer. This command does not work on all firmware " -"implementations." -msgstr "" -"דִיעשענ רעצהנער ×× ×”×לתענ. דִיעשער בּעפֿעהל פֿוּנכּתִיוֹנִיערת נִיצהת Ö´×™×  ×ללענ פִֿירמו×רע-Ö´" -"ימפּלעמענת×תִיוֹנענ." - -#: grub-core/commands/hashsum.c:32 -msgid "Specify hash to use." -msgstr "זוּ בֿערוענדענדענ ×”×שה ×נגעבּענ." - -#: grub-core/commands/hashsum.c:32 -msgid "HASH" -msgstr "×”×שה" - -#: grub-core/commands/hashsum.c:33 -msgid "Check hashes of files with hash list FILE." -msgstr "פּרֻפֿשוּממענ דער ד×תעִיענ מִית לִישתע Ö´×™×  ד×תעִי בֿערגלעִיצהענ." - -#: grub-core/commands/hashsum.c:35 -msgid "Base directory for hash list." -msgstr "בּ×שִישבֿערזעִיצהנִיש פֻֿר ×”×שה-לִישתע." - -#. TRANSLATORS: platform here isn't identifier. It can be translated. -#: grub-core/commands/hashsum.c:35 grub-core/commands/ls.c:150 -#: grub-core/commands/macbless.c:226 grub-core/commands/syslinuxcfg.c:51 -#: grub-core/commands/syslinuxcfg.c:54 grub-core/kern/emu/main.c:106 -#: include/grub/util/install.h:50 include/grub/util/install.h:53 -#: include/grub/util/install.h:56 include/grub/util/install.h:59 -#: util/grub-install.c:250 util/grub-install.c:252 util/grub-install.c:297 -#: util/grub-install.c:299 util/grub-mkimage.c:64 util/grub-mkimage.c:67 -#: util/grub-mknetdir.c:46 util/grub-mknetdir.c:48 util/grub-mkrescue.c:99 -#: util/grub-setup.c:82 util/grub-syslinux2cfg.c:63 util/grub-syslinux2cfg.c:65 -#: util/grub-syslinux2cfg.c:67 util/grub-syslinux2cfg.c:71 -msgid "DIR" -msgstr "בֿערז" - -#: grub-core/commands/hashsum.c:37 -msgid "Don't stop after first error." -msgstr "× ×צה דעמ ערשתענ פֿעהלער נִיצהת שתוֹפּפּענ." - -#: grub-core/commands/hashsum.c:38 -msgid "Uncompress file before checksumming." -msgstr "ד×תעִי ענתפּ×צכּענ, בּעבֿוֹר פּרֻפֿשוּממע ערמִיתתעלת וִירד." - -#: grub-core/commands/hashsum.c:163 -#, c-format -msgid "%s: READ ERROR\n" -msgstr "%s: לעשעפֿעהלער\n" - -#: grub-core/commands/hashsum.c:177 -#, c-format -msgid "%s: HASH MISMATCH\n" -msgstr "%s: ×”×שה-פֿעהלער\n" - -#: grub-core/commands/hashsum.c:188 -#, c-format -msgid "%s: OK\n" -msgstr "%s: וֹכּ\n" - -#: grub-core/commands/hashsum.c:282 -msgid "-h HASH [-c FILE [-p PREFIX]] [FILE1 [FILE2 ...]]" -msgstr "-×” ×”×שה [-צ ד×תעִי [-פּ פּרֶפִֿיכּס]] [ד×תעִי1 [ד×תעִי2 ...]]" - -#. TRANSLATORS: "hash checksum" is just to -#. be a bit more precise, you can treat it as -#. just "hash". -#: grub-core/commands/hashsum.c:287 grub-core/commands/hashsum.c:292 -#: grub-core/commands/hashsum.c:297 grub-core/commands/hashsum.c:302 -#: grub-core/commands/hashsum.c:307 grub-core/commands/hashsum.c:313 -msgid "Compute or check hash checksum." -msgstr "×”×שה-פּרֻפֿשוּממע בּערעצהנענ וֹדער פּרֻפֿענ." - -#: grub-core/commands/hashsum.c:290 grub-core/commands/hashsum.c:295 -#: grub-core/commands/hashsum.c:300 grub-core/commands/hashsum.c:305 -#: grub-core/commands/hashsum.c:311 -msgid "[-c FILE [-p PREFIX]] [FILE1 [FILE2 ...]]" -msgstr "[-צ ד×תעִי [-פּ פּרֶפִֿיכּס]] [ד×תעִי1 [ד×תעִי2 ...]]" - -#: grub-core/commands/hdparm.c:33 -msgid "" -"Set Advanced Power Management\n" -"(1=low, ..., 254=high, 255=off)." -msgstr "" -"ערועִיתערתע ענערגִיעבֿערו×לתוּנג שעתזענ\n" -"(1=נִיעדרִיג, ..., 254=הוֹצה, 255=×וּש)." - -#: grub-core/commands/hdparm.c:36 -msgid "Display power mode." -msgstr "ענערגִיעמוֹדוּש ×× ×–×¢Ö´×™×’×¢× ." - -#: grub-core/commands/hdparm.c:37 -msgid "Freeze ATA security settings until reset." -msgstr "×ת×-שִיצהערהעִיתשעִינשתעללוּנגענ בִּיש זוּמ זוּרֻצכּשעתזענ עִינפֿרִיערענ." - -#: grub-core/commands/hdparm.c:39 -msgid "Display SMART health status." -msgstr "ל×וּפֿוערכּששת×תוּש מִית שמ×רת ×× ×–×¢Ö´×™×’×¢× ." - -#: grub-core/commands/hdparm.c:40 -msgid "" -"Set Automatic Acoustic Management\n" -"(0=off, 128=quiet, ..., 254=fast)." -msgstr "" -"×וּתוֹמ×תִישצהע כּל×נגבֿערו×לתוּנג פֿעשתלעגענ\n" -"(0=×וּש, 128=לעִישע, ..., 254=שצהנעלל)." - -#: grub-core/commands/hdparm.c:43 -msgid "" -"Set standby timeout\n" -"(0=off, 1=5s, 2=10s, ..., 240=20m, 241=30m, ...)." -msgstr "" -"ו×רתעזעִית בִּיש שת×נדבּיִ פֿעשתלעגענ\n" -"(0=וֹפֿפֿ, 1=5ש, 2=10ש, ..., 240=20מ, 241=30מ, ...)." - -#: grub-core/commands/hdparm.c:46 -msgid "Set drive to standby mode." -msgstr "ל×וּפֿוערכּ Ö´×™×  דענ שת×נדבּיִ-מוֹדוּש בֿערשעתזענ." - -#: grub-core/commands/hdparm.c:47 -msgid "Set drive to sleep mode." -msgstr "ל×וּפֿוערכּ Ö´×™×  דענ שצהל×פֿמוֹדוּש בֿערשעתזענ." - -#: grub-core/commands/hdparm.c:48 -msgid "Print drive identity and settings." -msgstr "ִידענתִיתֶת וּנד עִינשתעללוּנגענ דעש ל×וּפֿוערכּש ×וּשגעבּענ." - -#: grub-core/commands/hdparm.c:50 -msgid "Show raw contents of ATA IDENTIFY sector." -msgstr "רוֹה-Ö´×™× ×”×לת דעש ××ª× Ö´×™×“×¢× ×ªÖ´×™×¤Ö¿×™Ö´-שעכּתוֹרש ×× ×–×¢Ö´×™×’×¢× ." - -#: grub-core/commands/hdparm.c:52 -msgid "Disable/enable SMART (0/1)." -msgstr "שמ×רת ×כּתִיבִֿיערענ/דע×כּתִיבִֿיערענ (0/1)." - -#: grub-core/commands/hdparm.c:53 -msgid "Do not print messages." -msgstr "×›Ö¼×¢Ö´×™× ×¢ מעלדוּנגענ ×וּשגעבּענ." - -#: grub-core/commands/hdparm.c:286 grub-core/commands/i386/rdmsr.c:68 -#: grub-core/commands/iorw.c:47 grub-core/commands/legacycfg.c:760 -#: grub-core/commands/legacycfg.c:812 grub-core/commands/macbless.c:190 -#: grub-core/commands/memrw.c:47 grub-core/commands/pgp.c:738 -#: grub-core/commands/pgp.c:792 grub-core/commands/search.c:304 -#: grub-core/commands/search_wrap.c:179 grub-core/commands/setpci.c:243 -#: grub-core/commands/sleep.c:71 grub-core/fs/zfs/zfsinfo.c:279 -#: grub-core/fs/zfs/zfsinfo.c:358 grub-core/gettext/gettext.c:492 -#: grub-core/kern/corecmd.c:65 grub-core/kern/corecmd.c:79 -#: grub-core/mmap/mmap.c:430 grub-core/net/dns.c:713 grub-core/net/dns.c:745 -#: grub-core/net/net.c:694 grub-core/net/net.c:1052 -#: grub-core/normal/context.c:194 grub-core/script/execute.c:131 -#: grub-core/term/gfxterm_background.c:136 -msgid "one argument expected" -msgstr "×¢Ö´×™×  ×רגוּמענת ווּרדע ערו×רתעת" - -#: grub-core/commands/hdparm.c:440 -msgid "[OPTIONS] DISK" -msgstr "[וֹפּתִיוֹנענ] ד×תענתרֶגער" - -#: grub-core/commands/hdparm.c:441 -msgid "Get/set ATA disk parameters." -msgstr "×ת×-ד×תענתרֶגערפּ×ר×מעתער ערמִיתתעלנ/פֿעשתלעגענ." - -#: grub-core/commands/help.c:132 grub-core/lib/arg.c:109 -#: grub-core/lib/gnulib/argp-help.c:1616 -msgid "Usage:" -msgstr "×וּפֿרוּפֿ:" - -#: grub-core/commands/help.c:146 -msgid "[PATTERN ...]" -msgstr "[מוּשתער ...]" - -#: grub-core/commands/help.c:147 -msgid "Show a help message." -msgstr "×¢Ö´×™× ×¢ הִילפֿעמעלדוּנג ×× ×–×¢Ö´×™×’×¢× ." - -#: grub-core/commands/hexdump.c:31 -msgid "Skip offset bytes from the beginning of file." -msgstr "וֹפֿפֿשעת-בּיִתעש ×מ בּעגִיננ דער ד×תעִי ֻבּערשפּרִינגענ." - -#: grub-core/commands/hexdump.c:33 -msgid "Read only LENGTH bytes." -msgstr "נוּר בּיִתעש דער לֶנגע לענגתה לעשענ." - -#: grub-core/commands/hexdump.c:125 -msgid "[OPTIONS] FILE_OR_DEVICE" -msgstr "[וֹפּתִיוֹנענ] ד×תעִי_וֹדער_גערֶת" - -#: grub-core/commands/hexdump.c:126 -msgid "Show raw contents of a file or memory." -msgstr "רוֹה-Ö´×™× ×”×לת עִינער ד×תעִי וֹדער דעש שפּעִיצהערש ×× ×–×¢Ö´×™×’×¢× ." - -#: grub-core/commands/i386/cmosdump.c:58 -msgid "Show raw dump of the CMOS contents." -msgstr "רוֹה-Ö´×™× ×”×לת דעש צמוֹש ×× ×–×¢Ö´×™×’×¢× ." - -#: grub-core/commands/i386/cmostest.c:108 -#: grub-core/commands/i386/cmostest.c:111 -#: grub-core/commands/i386/cmostest.c:114 -msgid "BYTE:BIT" -msgstr "בּיִתע:בִּית" - -#: grub-core/commands/i386/cmostest.c:109 -msgid "Test bit at BYTE:BIT in CMOS." -msgstr "בִּית בּעִי בּיִתע:בִּית ִימ צמוֹש תעשתענ." - -#: grub-core/commands/i386/cmostest.c:112 -msgid "Clear bit at BYTE:BIT in CMOS." -msgstr "בִּית בּעִי בּיִתע:בִּית ִימ צמוֹש לעערענ." - -#. TRANSLATORS: A bit may be either set (1) or clear (0). -#: grub-core/commands/i386/cmostest.c:116 -msgid "Set bit at BYTE:BIT in CMOS." -msgstr "בִּית בּעִי בּיִתע:בִּית ִימ צמוֹש שעתזענ." - -#: grub-core/commands/i386/coreboot/cb_timestamps.c:120 -msgid "Show coreboot boot time statistics." -msgstr "בּוֹוֹתזעִית-שת×תִישתִיכּענ פֻֿר צוֹרעבּוֹוֹת ×× ×–×¢Ö´×™×’×¢× ." - -#: grub-core/commands/i386/coreboot/cbls.c:137 -msgid "List coreboot tables." -msgstr "צוֹרעבּוֹוֹת-ת×בּעללענ ×וּפֿלִישתענ." - -#. TRANSLATORS: "(default)" at the end means that this option is used if -#. no argument is specified. -#: grub-core/commands/i386/cpuid.c:36 -msgid "Check if CPU supports 64-bit (long) mode (default)." -msgstr "" -"ֻבּערפּרֻפֿענ, וֹבּ דער פּרוֹזעששוֹר דענ 64-בִּית-(ל×× ×’-)מוֹדוּש וּנתערשתֻתזת (בֿוֹרג×בּע)." - -#: grub-core/commands/i386/cpuid.c:37 -msgid "Check if CPU supports Physical Address Extension." -msgstr "" -"ֻבּערפּרֻפֿענ, וֹבּ דער פּרוֹזעששוֹר דִיע פּהיִשִיכּ×לִישצהע ×דרעששערועִיתערוּנג וּנתערשתֻתזת." - -#: grub-core/commands/i386/cpuid.c:119 -msgid "Check for CPU features." -msgstr "פֶֿהִיגכּעִיתענ דער צפּוּ ֻבּערפּרֻפֿענ." - -#. TRANSLATORS: In this file "mapping" refers to a change GRUB makes so if -#. your language doesn't have an equivalent of "mapping" you can -#. use the word like "rerouting". -#. -#: grub-core/commands/i386/pc/drivemap.c:43 -msgid "Show the current mappings." -msgstr "×ללע ×כּתוּעללענ זוּוֹרדנוּנגענ ×× ×–×¢Ö´×™×’×¢× ." - -#: grub-core/commands/i386/pc/drivemap.c:44 -msgid "Reset all mappings to the default values." -msgstr "×ללע זוּוֹרדנוּנגענ ×וּפֿ שת×נד×רדוערתע זוּרֻצכּשעתזענ." - -#: grub-core/commands/i386/pc/drivemap.c:45 -msgid "Perform both direct and reverse mappings." -msgstr "שוֹווֹהל דִירעכּתע ×לש ×וּצה וּמגעכּעהרתע זוּוֹרדנוּנגענ ×וּשפֻֿהרענ." - -#: grub-core/commands/i386/pc/drivemap.c:184 -msgid "No drives have been remapped" -msgstr "עש ווּרדענ ×›Ö¼×¢Ö´×™× ×¢ ל×וּפֿוערכּע נעוּ זוּגעוֹרדנעת" - -#. TRANSLATORS: This is the header of mapping list. -#. On the left is how OS will see the disks and -#. on the right current GRUB vision. -#: grub-core/commands/i386/pc/drivemap.c:191 -msgid "OS disk #num ------> GRUB/BIOS device" -msgstr "וֹש ל×וּפֿוערכּ #נוּמ ------> גרוּבּ/בִּיוֹש-גערֶת" - -#: grub-core/commands/i386/pc/drivemap.c:413 -msgid "-l | -r | [-s] grubdev osdisk." -msgstr "-ל | -ר | [-ש] גרוּבּדעבֿ וֹשדִישכּ." - -#: grub-core/commands/i386/pc/drivemap.c:414 -msgid "Manage the BIOS drive mappings." -msgstr "בִּיוֹש-ל×וּפֿוערכּשזוּוֹרדנוּנגענ בֿערו×לתענ." - -#: grub-core/commands/i386/pc/halt.c:31 -msgid "Do not use APM to halt the computer." -msgstr "זוּמ ×בּשצה×לתענ דעש רעצהנערש ×›Ö¼×¢Ö´×™×  ×פּמ בֿערוענדענ." - -#: grub-core/commands/i386/pc/halt.c:119 -msgid "Halt the system, if possible using APM." -msgstr "ד×ש שיִשתעמ ×× ×”×לתענ, ועננ מֵגלִיצה, מִית ×פּמ." - -#: grub-core/commands/i386/pc/lsapm.c:75 -msgid "no APM found" -msgstr "×›Ö¼×¢Ö´×™×  ×פּמ געפֿוּנדענ" - -#: grub-core/commands/i386/pc/lsapm.c:77 -#, c-format -msgid "" -"Version %u.%u\n" -"32-bit CS = 0x%x, len = 0x%x, offset = 0x%x\n" -"16-bit CS = 0x%x, len = 0x%x\n" -"DS = 0x%x, len = 0x%x\n" -msgstr "" -"בֿערשִיוֹנ %u.%u\n" -"32-בִּית צש = 0כּס%x, לענ = 0כּס%x, וֹפֿפֿשעת = 0כּס%x\n" -"16-בִּית צש = 0כּס%x, לענ = 0כּס%x\n" -"דש = 0כּס%x, לענ = 0כּס%x\n" - -#: grub-core/commands/i386/pc/lsapm.c:86 -msgid "16-bit protected interface supported\n" -msgstr "געשצהֻתזע 16-בִּית-שצהנִיתתשתעללע וּנתערשתֻתזת\n" - -#: grub-core/commands/i386/pc/lsapm.c:87 -msgid "16-bit protected interface unsupported\n" -msgstr "געשצהֻתזע 16-בִּית-שצהנִיתתשתעללע נִיצהת וּנתערשתֻתזת\n" - -#: grub-core/commands/i386/pc/lsapm.c:89 -msgid "32-bit protected interface supported\n" -msgstr "געשצהֻתזע 32-בִּית-שצהנִיתתשתעללע וּנתערשתֻתזת\n" - -#: grub-core/commands/i386/pc/lsapm.c:90 -msgid "32-bit protected interface unsupported\n" -msgstr "געשצהֻתזע 32-בִּית-שצהנִיתתשתעללע נִיצהת וּנתערשתֻתזת\n" - -#: grub-core/commands/i386/pc/lsapm.c:92 -msgid "CPU Idle slows down processor\n" -msgstr "צפּוּ-לעערל×וּפֿ בֿערל×נגש×מת דענ פּרוֹזעששוֹר\n" - -#: grub-core/commands/i386/pc/lsapm.c:93 -msgid "CPU Idle doesn't slow down processor\n" -msgstr "צפּוּ-לעערל×וּפֿ בֿערל×נגש×מת דענ פּרוֹזעששוֹר נִיצהת\n" - -#: grub-core/commands/i386/pc/lsapm.c:95 -msgid "APM disabled\n" -msgstr "×פּמ דע×כּתִיבִֿיערת\n" - -#: grub-core/commands/i386/pc/lsapm.c:95 -msgid "APM enabled\n" -msgstr "×פּמ ×כּתִיבִֿיערת\n" - -#: grub-core/commands/i386/pc/lsapm.c:97 -msgid "APM disengaged\n" -msgstr "×פּמ דע×כּתִיבִֿיערת\n" - -#: grub-core/commands/i386/pc/lsapm.c:97 -msgid "APM engaged\n" -msgstr "×פּמ ×כּתִיבִֿיערת\n" - -#: grub-core/commands/i386/pc/lsapm.c:107 -msgid "Show APM information." -msgstr "×פּמ-ִינפֿוֹרמ×תִיוֹנענ ×× ×–×¢Ö´×™×’×¢× ." - -#. TRANSLATORS: It's musical notes, not the notes -#. you take. Play command expects arguments which can -#. be either a filename or tempo+notes. -#. This error happens if none is specified. -#: grub-core/commands/i386/pc/play.c:88 -msgid "filename or tempo and notes expected" -msgstr "ד×תעִינ×מע וֹדער תעמפּוֹ וּנד נוֹתענ ערו×רתעת" - -#: grub-core/commands/i386/pc/play.c:113 grub-core/commands/i386/pc/play.c:144 -#, c-format -msgid "Invalid tempo in %s" -msgstr "וּנגֻלתִיגעש תעמפּוֹ Ö´×™×  %s" - -#: grub-core/commands/i386/pc/play.c:151 grub-core/commands/macbless.c:172 -#: grub-core/fs/archelp.c:260 grub-core/fs/bfs.c:621 grub-core/fs/bfs.c:704 -#: grub-core/fs/btrfs.c:1726 grub-core/fs/btrfs.c:1755 -#: grub-core/fs/btrfs.c:1799 grub-core/fs/btrfs.c:1882 -#: grub-core/fs/btrfs.c:1906 grub-core/fs/fshelp.c:257 grub-core/fs/jfs.c:696 -#: grub-core/fs/minix.c:426 grub-core/fs/ufs.c:544 grub-core/fs/zfs/zfs.c:2083 -#: grub-core/fs/zfs/zfs.c:2095 grub-core/fs/zfs/zfs.c:2301 -#: grub-core/net/http.c:120 -#, c-format -msgid "file `%s' not found" -msgstr "ד×תעִי »%s« נִיצהת געפֿוּנדענ" - -#: grub-core/commands/i386/pc/play.c:162 grub-core/commands/i386/pc/play.c:171 -#: grub-core/kern/misc.c:419 grub-core/script/execute.c:138 -#: grub-core/script/execute.c:244 -msgid "unrecognized number" -msgstr "×–×הל נִיצהת ערכּ×ננת" - -#: grub-core/commands/i386/pc/play.c:190 -msgid "FILE | TEMPO [PITCH1 DURATION1] [PITCH2 DURATION2] ... " -msgstr "ד×תעִי | תעמפּוֹ [תוֹנהֵהע1 ד×וּער1] [תוֹנהֵהע2 ד×וּער2] ... " - -#: grub-core/commands/i386/pc/play.c:191 -msgid "Play a tune." -msgstr "×¢Ö´×™× ×¢×  כּל×× ×’ ×בּשפִּיעלענ." - -#: grub-core/commands/i386/pc/sendkey.c:39 -msgid "set numlock mode" -msgstr "נוּמלוֹצכּ-מוֹדוּש פֿעשתלעגענ" - -#: grub-core/commands/i386/pc/sendkey.c:40 -msgid "set capslock mode" -msgstr "פֿעשתשתעללת×שתענ-מוֹדוּש פֿעשתלעגענ" - -#: grub-core/commands/i386/pc/sendkey.c:41 -msgid "set scrolllock mode" -msgstr "שצרוֹלללוֹצכּ-מוֹדוּש פֿעשתלעגענ" - -#: grub-core/commands/i386/pc/sendkey.c:42 -msgid "set insert mode" -msgstr "עִינפֻֿגענ-מוֹדוּש פֿעשתלעגענ" - -#: grub-core/commands/i386/pc/sendkey.c:43 -msgid "set pause mode" -msgstr "פּ×וּשע-מוֹדוּש פֿעשתלעגענ" - -#: grub-core/commands/i386/pc/sendkey.c:44 -msgid "press left shift" -msgstr "לִינכּע וּמשצה×לתת×שתע דרֻצכּענ" - -#: grub-core/commands/i386/pc/sendkey.c:45 -msgid "press right shift" -msgstr "רעצהתע וּמשצה×לתת×שתע דרֻצכּענ" - -#: grub-core/commands/i386/pc/sendkey.c:46 -msgid "press SysRq" -msgstr "שיִשרק-ת×שתע דרֻצכּענ" - -#: grub-core/commands/i386/pc/sendkey.c:47 -msgid "press NumLock key" -msgstr "נוּמלוֹצכּ-ת×שתע דרֻצכּענ" - -#: grub-core/commands/i386/pc/sendkey.c:48 -msgid "press CapsLock key" -msgstr "צ×פּשלוֹצכּ-ת×שתע דרֻצכּענ" - -#: grub-core/commands/i386/pc/sendkey.c:49 -msgid "press ScrollLock key" -msgstr "שצרוֹלללוֹצכּ-ת×שתע דרֻצכּענ" - -#: grub-core/commands/i386/pc/sendkey.c:50 -msgid "press Insert key" -msgstr "עִינפֿג-ת×שתע דרֻצכּענ" - -#: grub-core/commands/i386/pc/sendkey.c:51 -msgid "press left alt" -msgstr "לִינכּע ×לת-ת×שתע דרֻצכּענ" - -#: grub-core/commands/i386/pc/sendkey.c:52 -msgid "press right alt" -msgstr "רעצהתע ×לת-ת×שתע דרֻצכּענ" - -#: grub-core/commands/i386/pc/sendkey.c:53 -msgid "press left ctrl" -msgstr "לִינכּע שתרג-ת×שתע דרֻצכּענ" - -#: grub-core/commands/i386/pc/sendkey.c:54 -msgid "press right ctrl" -msgstr "רעצהתע שתרג-ת×שתע דרֻצכּענ" - -#: grub-core/commands/i386/pc/sendkey.c:55 -msgid "don't update LED state" -msgstr "לעד-שת×תוּש נִיצהת ×כּתוּ×לִישִיערענ" - -#: grub-core/commands/i386/pc/sendkey.c:372 -msgid "[KEYSTROKE1] [KEYSTROKE2] ..." -msgstr "[כֻּרזעל1] [כֻּרזעל2] ..." - -#. TRANSLATORS: It can emulate multiple -#. keypresses. -#: grub-core/commands/i386/pc/sendkey.c:375 -msgid "Emulate a keystroke sequence" -msgstr "×¢Ö´×™× ×¢ ת×שת×תוּרשעקוּענז עמוּלִיערענ" - -#: grub-core/commands/i386/rdmsr.c:37 grub-core/commands/iorw.c:34 -#: grub-core/commands/memrw.c:33 grub-core/commands/setpci.c:73 -msgid "Save read value into variable VARNAME." -msgstr "געלעשענענ וערת Ö´×™×  בֿ×רִי×בּלע בֿ×רנ×מע שפּעִיצהערנ." - -#: grub-core/commands/i386/rdmsr.c:38 grub-core/commands/iorw.c:35 -#: grub-core/commands/memrw.c:34 grub-core/commands/probe.c:40 -#: grub-core/commands/search_wrap.c:40 grub-core/commands/setpci.c:74 -#: grub-core/commands/tr.c:32 -msgid "VARNAME" -msgstr "בֿ×רנ×מע" - -#: grub-core/commands/i386/rdmsr.c:55 grub-core/commands/i386/rdmsr.c:60 -#: grub-core/commands/i386/rdmsr.c:65 grub-core/commands/i386/wrmsr.c:47 -#: grub-core/commands/i386/wrmsr.c:52 grub-core/commands/i386/wrmsr.c:57 -msgid "unsupported instruction" -msgstr "נִיצהת וּנתערשתֻתזתע ×נועִישוּנג" - -#: grub-core/commands/i386/rdmsr.c:77 grub-core/commands/i386/wrmsr.c:69 -#: grub-core/commands/i386/wrmsr.c:77 grub-core/net/dns.c:727 -msgid "invalid argument" -msgstr "וּנגֻלתִיגער פּ×ר×מעתער" - -#: grub-core/commands/i386/rdmsr.c:94 grub-core/commands/memrw.c:125 -#: grub-core/commands/memrw.c:129 grub-core/commands/memrw.c:133 -msgid "ADDR" -msgstr "×דדר" - -#: grub-core/commands/i386/rdmsr.c:95 -msgid "Read a CPU model specific register." -msgstr "×¢Ö´×™×  פֻֿר ד×ש צפּוּ-מוֹדעלל שפּעזִיפִֿישצהעש רעגִישתער לעשענ." - -#: grub-core/commands/i386/wrmsr.c:86 -msgid "ADDR VALUE" -msgstr "×דר וערת" - -#: grub-core/commands/i386/wrmsr.c:87 -msgid "Write a value to a CPU model specific register." -msgstr "×¢Ö´×™× ×¢×  וערת Ö´×™×  ד×ש פֻֿר ד×ש צפּוּ-מוֹדעלל שפּעזִיפִֿישצהע רעגִישתער שצהרעִיבּענ." - -#: grub-core/commands/ieee1275/suspend.c:34 -msgid "Run `go' to resume GRUB." -msgstr "געבּענ שִיע »גוֹ« ×¢Ö´×™× , וּמ גרוּבּ פֿוֹרתזוּשעתזענ." - -#: grub-core/commands/ieee1275/suspend.c:45 -msgid "Return to IEEE1275 prompt." -msgstr "זוּמ Ö´×™×¢×¢×¢1275-פּרוֹמפּת זוּרֻצכּכּעהרענ." - -#: grub-core/commands/iorw.c:123 grub-core/commands/iorw.c:127 -#: grub-core/commands/iorw.c:131 grub-core/gdb/gdb.c:79 -msgid "PORT" -msgstr "פּוֹרת" - -#: grub-core/commands/iorw.c:123 -msgid "Read 8-bit value from PORT." -msgstr "8-בִּית-וערת בֿוֹנ פּוֹרת לעשענ." - -#: grub-core/commands/iorw.c:127 -msgid "Read 16-bit value from PORT." -msgstr "16-בִּית-וערת בֿוֹנ פּוֹרת לעשענ." - -#: grub-core/commands/iorw.c:131 -msgid "Read 32-bit value from PORT." -msgstr "32-בִּית-וערת בֿוֹנ פּוֹרת לעשענ." - -#: grub-core/commands/iorw.c:135 grub-core/commands/iorw.c:139 -msgid "PORT VALUE [MASK]" -msgstr "פּוֹרת וערת [מ×שכּע]" - -#: grub-core/commands/iorw.c:136 -msgid "Write 8-bit VALUE to PORT." -msgstr "8-בִּית-וערת × ×צה פּוֹרת שצהרעִיבּענ." - -#: grub-core/commands/iorw.c:140 -msgid "Write 16-bit VALUE to PORT." -msgstr "16-בִּית-וערת × ×צה פּוֹרת שצהרעִיבּענ." - -#: grub-core/commands/iorw.c:143 grub-core/commands/memrw.c:137 -#: grub-core/commands/memrw.c:141 grub-core/commands/memrw.c:145 -msgid "ADDR VALUE [MASK]" -msgstr "×דר וערת [מ×שכּע]" - -#: grub-core/commands/iorw.c:144 -msgid "Write 32-bit VALUE to PORT." -msgstr "32-בִּית-וערת × ×צה פּוֹרת שצהרעִיבּענ." - -#: grub-core/commands/keylayouts.c:215 grub-core/commands/loadenv.c:61 -#: grub-core/commands/nativedisk.c:189 grub-core/efiemu/main.c:235 -#: grub-core/font/font.c:428 grub-core/gfxmenu/gfxmenu.c:63 -#: grub-core/kern/device.c:42 grub-core/kern/dl.c:740 -#, c-format -msgid "variable `%s' isn't set" -msgstr "בֿ×רִי×בּלע »%s« ִישת נִיצהת געשעתזת" - -#: grub-core/commands/keylayouts.c:301 -msgid "Load a keyboard layout." -msgstr "×¢Ö´×™× ×¢ ת×שת×תוּרבּעלעגוּנג ל×דענ." - -#. TRANSLATORS: "Check" in a sense that if this key is pressed then -#. "true" is returned, otherwise "false". -#: grub-core/commands/keystatus.c:32 -msgid "Check Shift key." -msgstr "וּמשצה×לתת×שתע ֻבּערפּרֻפֿענ." - -#: grub-core/commands/keystatus.c:33 -msgid "Check Control key." -msgstr "שתרג-ת×שתע ֻבּערפּרֻפֿענ." - -#: grub-core/commands/keystatus.c:34 -msgid "Check Alt key." -msgstr "×לת-ת×שתע ֻבּערפּרֻפֿענ." - -#. TRANSLATORS: there are 3 modifiers. -#: grub-core/commands/keystatus.c:106 -msgid "Check key modifier status." -msgstr "שת×תוּש דער וּמשצה×לתת×שתענ ֻבּערפּרֻפֿענ." - -#: grub-core/commands/legacycfg.c:512 grub-core/commands/legacycfg.c:526 -#: grub-core/commands/legacycfg.c:546 grub-core/commands/legacycfg.c:559 -#: grub-core/commands/time.c:43 grub-core/script/function.c:109 -#: util/grub-file.c:100 util/grub-fstest.c:57 util/grub-mount.c:69 -#, c-format -msgid "can't find command `%s'" -msgstr "בּעפֿעהל »%s« כּוֹננתע נִיצהת געפֿוּנדענ וערדענ" - -#: grub-core/commands/legacycfg.c:813 grub-core/normal/auth.c:225 -#: util/grub-mkpasswd-pbkdf2.c:139 -msgid "Enter password: " -msgstr "פּ×ששווֹרת עִינגעבּענ:" - -#. TRANSLATORS: "legacy config" means -#. "config as used by grub-legacy". -#: grub-core/commands/legacycfg.c:837 -msgid "Parse legacy config in same context" -msgstr "×לתע כּוֹנפִֿיגוּר×תִיוֹנ ִימ גלעִיצהענ כּוֹנתעכּסת ל×דענ" - -#: grub-core/commands/legacycfg.c:842 -msgid "Parse legacy config in new context" -msgstr "×לתע כּוֹנפִֿיגוּר×תִיוֹנ ִימ נעוּענ כּוֹנתעכּסת ל×דענ" - -#: grub-core/commands/legacycfg.c:847 -msgid "Parse legacy config in same context taking only menu entries" -msgstr "×לתע כּוֹנפִֿיגוּר×תִיוֹנ ִימ גלעִיצהענ כּוֹנתעכּסת ל×דענ, נוּר מענֻעִינתרֶגע" - -#: grub-core/commands/legacycfg.c:852 -msgid "Parse legacy config in new context taking only menu entries" -msgstr "×לתע כּוֹנפִֿיגוּר×תִיוֹנ ִימ נעוּענ כּוֹנתעכּסת ל×דענ, נוּר מענֻעִינתרֶגע" - -#: grub-core/commands/legacycfg.c:856 -msgid "[--no-mem-option] [--type=TYPE] FILE [ARG ...]" -msgstr "[--נוֹ-מעמ-וֹפּתִיוֹנ] [--תיִפּע=תיִפּ] ד×תעִי [×רג ...]" - -#: grub-core/commands/legacycfg.c:857 -msgid "Simulate grub-legacy `kernel' command" -msgstr "»כּערנעל«-בּעפֿעהל וִיע Ö´×™×  גרוּבּ-לעג×ציִ שִימוּלִיערענ" - -#: grub-core/commands/legacycfg.c:861 grub-core/commands/legacycfg.c:865 -msgid "FILE [ARG ...]" -msgstr "ד×תעִי [×רג ...]" - -#: grub-core/commands/legacycfg.c:862 -msgid "Simulate grub-legacy `initrd' command" -msgstr "»ִינִיתרד«-בּעפֿעהל וִיע Ö´×™×  גרוּבּ-לעג×ציִ שִימוּלִיערענ" - -#: grub-core/commands/legacycfg.c:866 -msgid "Simulate grub-legacy `modulenounzip' command" -msgstr "»מוֹדוּלענוֹוּנזִיפּ«-בּעפֿעהל וִיע Ö´×™×  גרוּבּ-לעג×ציִ שִימוּלִיערענ" - -#: grub-core/commands/legacycfg.c:870 grub-core/commands/legacycfg.c:875 -msgid "[--md5] PASSWD [FILE]" -msgstr "[--מד5] פּ×ששווֹרת [ד×תעִי]" - -#: grub-core/commands/legacycfg.c:871 -msgid "Simulate grub-legacy `password' command" -msgstr "»פּ×ששווֹרד«-בּעפֿעהל וִיע Ö´×™×  גרוּבּ-לעג×ציִ שִימוּלִיערענ" - -#: grub-core/commands/legacycfg.c:876 -msgid "Simulate grub-legacy `password' command in menu entry mode" -msgstr "»פּ×ששווֹרד«-בּעפֿעהל בֿוֹנ גרוּבּ-לעג×ציִ ִימ מענֻעִינתר×גשמוֹדוּש שִימוּלִיערענ" - -#. TRANSLATORS: This option is used to override default filename -#. for loading and storing environment. -#: grub-core/commands/loadenv.c:37 -msgid "Specify filename." -msgstr "ד×תעִינ×מע ×נגעבּענ." - -#: grub-core/commands/loadenv.c:39 -msgid "Skip signature-checking of the environment file." -msgstr "דִיע שִיגנ×תוּרֻבּערפּרֻפֿוּנג דער וּמגעבּוּנגשד×תעִי ֻבּערשפּרִינגענ." - -#: grub-core/commands/loadenv.c:451 -msgid "[-f FILE] [-s|--skip-sig] [variable_name_to_whitelist] [...]" -msgstr "[-פֿ ד×תעִי] [-ש|--שכִּיפּ-שִיג] [זוּ_ֻבּערשפּרִינגענדער_בֿ×רִי×בּלעננ×מע] [...]" - -#: grub-core/commands/loadenv.c:452 -msgid "Load variables from environment block file." -msgstr "בֿ×רִי×בּלענ ×וּש בּלוֹצכּד×תעִי דער וּמגעבּוּנג ל×דענ." - -#: grub-core/commands/loadenv.c:455 -msgid "[-f FILE]" -msgstr "[-פֿ ד×תעִי]" - -#: grub-core/commands/loadenv.c:456 -msgid "List variables from environment block file." -msgstr "בֿ×רִי×בּלענ ×וּש בּלוֹצכּד×תעִי דער וּמגעבּוּנג ×וּפֿלִישתענ." - -#: grub-core/commands/loadenv.c:460 -msgid "[-f FILE] variable_name [...]" -msgstr "[-פֿ ד×תעִי] בֿ×רִי×בּלעננ×מע [...]" - -#: grub-core/commands/loadenv.c:461 -msgid "Save variables to environment block file." -msgstr "בֿ×רִי×בּלענ Ö´×™×  דִיע בּלוֹצכּד×תעִי שפּעִיצהערנ." - -#: grub-core/commands/ls.c:40 -msgid "Show a long list with more detailed information." -msgstr "ל×× ×’×¢ לִישתע מִית ×וּשפֻֿהרלִיצהערענ ִינפֿוֹרמ×תִיוֹנענ ×× ×–×¢Ö´×™×’×¢× ." - -#: grub-core/commands/ls.c:41 -msgid "Print sizes in a human readable format." -msgstr "גרֵססענוערתע Ö´×™×  מענשצהענלעשבּ×רעמ פֿוֹרמ×ת ×וּשגעבּענ." - -#: grub-core/commands/ls.c:42 -msgid "List all files." -msgstr "×ללע ד×תעִיענ ×וּפֿלִישתענ." - -#: grub-core/commands/ls.c:73 -msgid "Network protocols:" -msgstr "נעתזוערכּפּרוֹתוֹכּוֹללע:" - -#: grub-core/commands/ls.c:295 -msgid "[-l|-h|-a] [FILE ...]" -msgstr "[-ל|-×”|-×] [ד×תעִי …]" - -#: grub-core/commands/ls.c:296 -msgid "List devices and files." -msgstr "גערֶתע וּנד ד×תעִיענ ×וּפֿלִישתענ." - -#: grub-core/commands/lsacpi.c:255 -msgid "Show version 1 tables only." -msgstr "נוּר בֿערשִיוֹנ-1-ת×בּעללענ ד×רשתעללענ." - -#: grub-core/commands/lsacpi.c:256 -msgid "Show version 2 and version 3 tables only." -msgstr "נוּר בֿערשִיוֹנ-2- וּנד בֿערשִיוֹנ-3-ת×בּעללענ ×× ×–×¢Ö´×™×’×¢× ." - -#: grub-core/commands/lsacpi.c:306 -msgid "Show ACPI information." -msgstr "×צפִּי-ִינפֿוֹרמ×תִיוֹנענ ×× ×–×¢Ö´×™×’×¢× ." - -#: grub-core/commands/lsmmap.c:31 -msgid "available RAM" -msgstr "בֿערפֻֿגבּ×רער ר×מ" - -#: grub-core/commands/lsmmap.c:32 -msgid "reserved RAM" -msgstr "רעשערבִֿיערתער ר×מ" - -#. TRANSLATORS: this refers to memory where ACPI tables are stored -#. and which can be used by OS once it loads ACPI tables. -#: grub-core/commands/lsmmap.c:35 -msgid "ACPI reclaimable RAM" -msgstr "דוּרצה ×צפִּי וִיעדערבֿערוענדבּ×רער שפּעִיצהער" - -#. TRANSLATORS: this refers to memory which ACPI-compliant OS -#. is required to save accross hibernations. -#: grub-core/commands/lsmmap.c:38 -msgid "ACPI non-volatile storage RAM" -msgstr "דוּרצה ×צפִּי בּע×נשפּרוּצהתער שפּעִיצהערבּערעִיצה (פֻֿר ענערגִיעשפּ×רמוֹדִי)" - -#: grub-core/commands/lsmmap.c:39 -msgid "faulty RAM (BadRAM)" -msgstr "פֿעהלערה×פֿתער ר×מ (בּ×דר×מ)" - -#: grub-core/commands/lsmmap.c:40 -msgid "persistent RAM" -msgstr "פּערשִישתענתער ר×מ" - -#: grub-core/commands/lsmmap.c:41 -msgid "persistent RAM (legacy)" -msgstr "פּערשִישתענתער ר×מ (בֿער×לתעת)" - -#: grub-core/commands/lsmmap.c:42 -msgid "RAM holding coreboot tables" -msgstr "ר×מ ענתהֶלת צוֹרעבּוֹוֹת-ת×בּעללענ" - -#: grub-core/commands/lsmmap.c:43 -msgid "RAM holding firmware code" -msgstr "ר×מ ענתהֶלת פִֿירמו×רע-צוֹדע" - -#: grub-core/commands/lsmmap.c:52 -#, c-format -msgid "base_addr = 0x%llx, length = 0x%llx, %s\n" -msgstr "בּ×שע_×דדר = 0כּס%llx, לֶנגע = 0כּס%llx, %s\n" - -#: grub-core/commands/lsmmap.c:55 -#, c-format -msgid "base_addr = 0x%llx, length = 0x%llx, type = 0x%x\n" -msgstr "בּ×שע_×דדר = 0כּס%llx, לֶנגע = 0כּס%llx, תיִפּ = 0כּס%x\n" - -#: grub-core/commands/lsmmap.c:79 -msgid "List memory map provided by firmware." -msgstr "בֿוֹנ פִֿירמו×רע בּערעִיתגעשתעללתע שפּעִיצהערזוּוֹרדנוּנג ×וּפֿלִישתענ." - -#: grub-core/commands/lspci.c:232 -msgid "List PCI devices." -msgstr "פּצִי-גערֶתע ×וּפֿלִישתענ." - -#: grub-core/commands/macbless.c:224 -msgid "Bless FILE of HFS or HFS+ partition for intel macs." -msgstr "" - -#: grub-core/commands/macbless.c:228 -msgid "Bless DIR of HFS or HFS+ partition for PPC macs." -msgstr "" - -#: grub-core/commands/memrw.c:125 -msgid "Read 8-bit value from ADDR." -msgstr "8-בִּית-וערת ×וּש ×דדר לעשענ." - -#: grub-core/commands/memrw.c:129 -msgid "Read 16-bit value from ADDR." -msgstr "16-בִּית-וערת ×וּש ×דדר לעשענ." - -#: grub-core/commands/memrw.c:133 -msgid "Read 32-bit value from ADDR." -msgstr "32-בִּית-וערת ×וּש ×דדר לעשענ." - -#: grub-core/commands/memrw.c:138 -msgid "Write 8-bit VALUE to ADDR." -msgstr "8-בִּית-וערת × ×צה ×דדר שצהרעִיבּענ." - -#: grub-core/commands/memrw.c:142 -msgid "Write 16-bit VALUE to ADDR." -msgstr "16-בִּית-וערת × ×צה ×דדר שצהרעִיבּענ." - -#: grub-core/commands/memrw.c:146 -msgid "Write 32-bit VALUE to ADDR." -msgstr "32-בִּית-וערת × ×צה ×דדר שצהרעִיבּענ." - -#: grub-core/commands/menuentry.c:31 -msgid "Menu entry type." -msgstr "תיִפּ דעש מענֻעִינתר×גש." - -#: grub-core/commands/menuentry.c:31 grub-core/commands/menuentry.c:38 -#: grub-core/commands/menuentry.c:39 grub-core/gettext/gettext.c:520 -#: util/grub-fstest.c:520 util/grub-install.c:291 util/grub-install.c:304 -#: util/grub-mknetdir.c:51 util/grub-mkrescue.c:109 util/grub-mkrescue.c:110 -#: util/grub-mount.c:453 util/grub-render-label.c:65 -msgid "STRING" -msgstr "זעִיצהענכּעתתע" - -#: grub-core/commands/menuentry.c:33 -msgid "List of users allowed to boot this entry." -msgstr "לִישתע דער בּענוּתזער, דִיע דִיעשענ עִינתר××’ בּוֹוֹתענ דֻרפֿענ." - -#: grub-core/commands/menuentry.c:33 -msgid "USERNAME[,USERNAME]" -msgstr "בּענוּתזערנ×מע[,בּענוּתזערנ×מע]" - -#: grub-core/commands/menuentry.c:36 -msgid "Keyboard key to quickly boot this entry." -msgstr "ת×שתענזוּוֹרדנוּנג פֻֿר דענ שצהנעללשת×רת דִיעשעש עִינתר×גש." - -#: grub-core/commands/menuentry.c:36 -msgid "KEYBOARD_KEY" -msgstr "ת×שתע" - -#: grub-core/commands/menuentry.c:38 -msgid "Use STRING as menu entry body." -msgstr "זעִיצהענכּעתתע ×לש Ö´×™× ×”×לת דעש מענֻעִינתר×גש בֿערוענדענ." - -#: grub-core/commands/menuentry.c:39 -msgid "Menu entry identifier." -msgstr "בּעזעִיצהנער דעש מענֻעִינתר×גש." - -#. TRANSLATORS: menu entry can either be bootable by anyone or only by -#. handful of users. By default when security is active only superusers can -#. boot a given menu entry. With --unrestricted (this option) -#. anyone can boot it. -#: grub-core/commands/menuentry.c:44 -msgid "This entry can be booted by any user." -msgstr "דִיעשער עִינתר××’ ×›Ö¼×× ×  בֿוֹנ יעדעמ בּענוּתזער געבּוֹוֹתעת וערדענ." - -#: grub-core/commands/menuentry.c:323 grub-core/commands/menuentry.c:328 -#: grub-core/tests/test_blockarg.c:46 -msgid "BLOCK" -msgstr "בּלוֹצכּ" - -#: grub-core/commands/menuentry.c:323 -msgid "Define a menu entry." -msgstr "×¢Ö´×™× ×¢×  מענֻעִינתר××’ דעפִֿינִיערענ." - -#: grub-core/commands/menuentry.c:328 -msgid "Define a submenu." -msgstr "×¢Ö´×™×  וּנתערמענֻ דעפִֿינִיערענ." - -#. TRANSLATORS: this is module list header. Name -#. is module name, Ref Count is a reference counter -#. (how many modules or open descriptors use it). -#. Dependencies are the other modules it uses. -#. -#: grub-core/commands/minicmd.c:162 -msgid "Name\tRef Count\tDependencies\n" -msgstr "× ×מע\tרעפֿערענזזֶהלער\t×בּהֶנגִיגכּעִיתענ\n" - -#: grub-core/commands/minicmd.c:201 -msgid "Show this message." -msgstr "דִיעשע מעלדוּנג ×× ×–×¢Ö´×™×’×¢× ." - -#: grub-core/commands/minicmd.c:204 -msgid "ADDR [SIZE]" -msgstr "×דרעששע [גרֵססע]" - -#: grub-core/commands/minicmd.c:204 -msgid "Show memory contents." -msgstr "Ö´×™× ×”×לת דעש שפּעִיצהערש ×× ×–×¢Ö´×™×’×¢× ." - -#: grub-core/commands/minicmd.c:207 grub-core/kern/corecmd.c:188 -#: util/grub-install.c:275 -msgid "MODULE" -msgstr "מוֹדוּל" - -#: grub-core/commands/minicmd.c:207 -msgid "Remove a module." -msgstr "×¢Ö´×™×  מוֹדוּל ענתפֿערנענ." - -#: grub-core/commands/minicmd.c:210 -msgid "Show loaded modules." -msgstr "געל×דענע מוֹדוּלע ×× ×–×¢Ö´×™×’×¢× ." - -#: grub-core/commands/minicmd.c:213 -msgid "Exit from GRUB." -msgstr "גרוּבּ בּעענדענ." - -#: grub-core/commands/mips/loongson/lsspd.c:42 -msgid "No CS5536 found" -msgstr "×›Ö¼×¢Ö´×™×  צש5536 געפֿוּנדענ" - -#: grub-core/commands/mips/loongson/lsspd.c:45 -#, c-format -msgid "CS5536 at %d:%d.%d\n" -msgstr "צש5536 Ö´×™×  %d:%d.%d\n" - -#. TRANSLATORS: System management bus is often used to access components like -#. RAM (info only, not data) or batteries. I/O space is where in memory -#. its ports are. -#: grub-core/commands/mips/loongson/lsspd.c:55 -#, c-format -msgid "System management bus controller I/O space is at 0x%x\n" -msgstr "" -"×¢Ö´×™× -/×וּשג×בּעבּערעִיצה דעש שיִשתעמבֿערו×לתוּנגשבּוּש-צוֹנתרוֹללערש ִישת בּעִי 0כּס%x\n" - -#. TRANSLATORS: it's shown in a report in a way -#. like number 1: ... number 2: ... -#. -#: grub-core/commands/mips/loongson/lsspd.c:66 -#, c-format -msgid "RAM slot number %d\n" -msgstr "ר×מ-שלוֹתנוּממער %d\n" - -#: grub-core/commands/mips/loongson/lsspd.c:73 -#, c-format -msgid "Written SPD bytes: %d B.\n" -msgstr "געשצהרִיעבּענע שפּד-בּיִתעש: %d בּ.\n" - -#: grub-core/commands/mips/loongson/lsspd.c:74 -#, c-format -msgid "Total flash size: %d B.\n" -msgstr "פֿל×שה-געש×מתגרֵססע: %d בּ.\n" - -#: grub-core/commands/mips/loongson/lsspd.c:79 -msgid "Memory type: DDR2." -msgstr "שפּעִיצהערתיִפּ: דדר2." - -#: grub-core/commands/mips/loongson/lsspd.c:83 -#, c-format -msgid "Part no: %s.\n" -msgstr "תעִיל-נוּממער: %s.\n" - -#: grub-core/commands/mips/loongson/lsspd.c:86 -msgid "Memory type: Unknown." -msgstr "שפּעִיצהערתיִפּ: וּנבּעכּ×ננת." - -#: grub-core/commands/mips/loongson/lsspd.c:97 -msgid "Print Memory information." -msgstr "שפּעִיצהער-ִינפֿוֹרמ×תִיוֹנענ ×× ×–×¢Ö´×™×’×¢× ." - -#: grub-core/commands/nativedisk.c:118 grub-core/commands/probe.c:118 -#: grub-core/commands/probe.c:124 util/grub-probe.c:450 -#, c-format -msgid "%s does not support UUIDs" -msgstr "%s וּנתערשתֻתזת ×›Ö¼×¢Ö´×™× ×¢ וּוִּידש" - -#: grub-core/commands/nativedisk.c:325 -msgid "[MODULE1 MODULE2 ...]" -msgstr "[מוֹדוּל1 מוֹדוּל2 …]" - -#: grub-core/commands/nativedisk.c:326 -msgid "" -"Switch to native disk drivers. If no modules are specified default set (pata," -"ahci,usbms,ohci,uhci,ehci) is used" -msgstr "" -"זוּ × ×תִיבֿענ פֿעשתפּל×תתענתרעִיבּערנ ועצהשעלנ. פֿ×ללש ×›Ö¼×¢Ö´×™× ×¢ מוֹדוּלע ×נגעגעבּענ " -"וערדענ, וִירד דִיע בֿוֹרג×בּע בֿערוענדעת (פּ×ת×,×הצִי,וּשבּמש,וֹהצִי,וּהצִי,עהצִי)." - -#: grub-core/commands/parttool.c:40 -msgid "" -"Perform COMMANDS on partition.\n" -"Use `parttool PARTITION help' for the list of available commands." -msgstr "" -"בּעפֿעהלע ×וּפֿ פּ×רתִיתִיוֹנ ×וּשפֻֿהרענ.\n" -"רוּפֿענ שִיע »פּ×רתתוֹוֹל פּ×רתִיתִיוֹנ העלפּ« ×וּפֿ, וּמ ×¢Ö´×™× ×¢\n" -"לִישתע דער בֿערפֻֿגבּ×רענ בּעפֿעהלע זוּ ערה×לתענ." - -#: grub-core/commands/parttool.c:123 -msgid "=VAL" -msgstr "=וערת" - -#: grub-core/commands/parttool.c:136 -#, c-format -msgid "Sorry, no parttool is available for %s\n" -msgstr "פֻֿר %s ִישת לעִידער ×›Ö¼×¢Ö´×™×  פּ×רתִיתִיוֹנִיערוּנגשוערכּזעוּג בֿערפֻֿגבּ×ר\n" - -#: grub-core/commands/parttool.c:288 grub-core/lib/arg.c:285 -#: grub-core/lib/arg.c:351 -#, c-format -msgid "unknown argument `%s'" -msgstr "וּנבּעכּ×ננתעש ×רגוּמענת »%s«" - -#: grub-core/commands/parttool.c:344 -msgid "PARTITION COMMANDS" -msgstr "פּ×רתִיתִיוֹנ בּעפֿעהלע" - -#: grub-core/commands/password.c:85 -msgid "USER PASSWORD" -msgstr "בּענוּתזערפּ×ששווֹרת" - -#: grub-core/commands/password.c:86 -msgid "Set user password (plaintext). Unrecommended and insecure." -msgstr "בּענוּתזערפּ×ששווֹרת (כּל×רתעכּסת) פֿעשתלעגענ. נִיצהת עמפּפֿוֹהלענ, ×“× ×•Ö¼× ×©Ö´×™×¦×”×¢×¨." - -#. TRANSLATORS: it means that the string which -#. was supposed to be a password hash doesn't -#. have a correct format, not to password -#. mismatch. -#: grub-core/commands/password_pbkdf2.c:98 -#: grub-core/commands/password_pbkdf2.c:115 -#: grub-core/commands/password_pbkdf2.c:123 -#: grub-core/commands/password_pbkdf2.c:150 -#: grub-core/commands/password_pbkdf2.c:179 -msgid "invalid PBKDF2 password" -msgstr "וּנגֻלתִיגעש פּבּכּדפֿ2-פּ×ששווֹרת" - -#: grub-core/commands/password_pbkdf2.c:202 -msgid "USER PBKDF2_PASSWORD" -msgstr "בּענוּתזער פּבּכּדפֿ2_פּ×ששווֹרת" - -#: grub-core/commands/password_pbkdf2.c:203 -msgid "Set user password (PBKDF2). " -msgstr "בּענוּתזערפּ×ששווֹרת פֿעשתלעגענ (פּבּכּדפֿ2). " - -#: grub-core/commands/pcidump.c:39 grub-core/commands/setpci.c:69 -msgid "Select device by vendor and device IDs." -msgstr "גערֶת × ×צה ×נבִּיעתער וּנד גערֶתעכּעננוּנגענ ×וּשוֶהלענ." - -#: grub-core/commands/pcidump.c:40 grub-core/commands/setpci.c:70 -msgid "[vendor]:[device]" -msgstr "[×נבִּיעתער]:[גערֶת]" - -#: grub-core/commands/pcidump.c:41 grub-core/commands/setpci.c:71 -msgid "Select device by its position on the bus." -msgstr "גערֶת × ×צה דעששענ פּוֹשִיתִיוֹנ ×וּפֿ דעמ בּוּש ×וּשוֶהלענ." - -#: grub-core/commands/pcidump.c:42 grub-core/commands/setpci.c:72 -msgid "[bus]:[slot][.func]" -msgstr "[בּוּש]:[שלוֹת][.פֿוּנצ]" - -#: grub-core/commands/pcidump.c:109 grub-core/commands/pcidump.c:138 -#: grub-core/commands/setpci.c:183 grub-core/commands/setpci.c:214 -#: grub-core/fs/zfs/zfs.c:3794 grub-core/kern/emu/hostdisk.c:458 -#: grub-core/kern/emu/hostdisk.c:473 grub-core/kern/file.c:44 -#, c-format -msgid "missing `%c' symbol" -msgstr "שיִמבּוֹל »%c« פֿעהלת" - -#: grub-core/commands/pcidump.c:168 -msgid "[-s POSITION] [-d DEVICE]" -msgstr "[-ש פּוֹשִיתִיוֹנ] [-ד גערֶת]" - -#: grub-core/commands/pcidump.c:169 -msgid "Show raw dump of the PCI configuration space." -msgstr "רוֹה-×וּשג×בּע דעש פּצִי-כּוֹנפִֿיגוּר×תִיוֹנשר×וּמש ×× ×–×¢Ö´×™×’×¢× ." - -#: grub-core/commands/pgp.c:45 -msgid "Skip signature-checking of the public key file." -msgstr "דִיע שִיגנ×תוּרֻבּערפּרֻפֿוּנג דער ֵפֿפֿענתלִיצהענ שצהלֻששעלד×תעִי ֻבּערשפּרִינגענ." - -#. TRANSLATORS: it's about GNUPG signatures. -#: grub-core/commands/pgp.c:71 grub-core/commands/pgp.c:81 -#: grub-core/commands/pgp.c:86 grub-core/commands/pgp.c:96 -#: grub-core/commands/pgp.c:103 grub-core/commands/pgp.c:107 -#: grub-core/commands/pgp.c:114 grub-core/commands/pgp.c:119 -#: grub-core/commands/pgp.c:124 grub-core/commands/pgp.c:128 -#: grub-core/commands/pgp.c:268 grub-core/commands/pgp.c:276 -#: grub-core/commands/pgp.c:281 grub-core/commands/pgp.c:289 -#: grub-core/commands/pgp.c:320 grub-core/commands/pgp.c:327 -#: grub-core/commands/pgp.c:332 grub-core/commands/pgp.c:342 -#: grub-core/commands/pgp.c:468 grub-core/commands/pgp.c:471 -#: grub-core/commands/pgp.c:474 grub-core/commands/pgp.c:477 -#: grub-core/commands/pgp.c:484 grub-core/commands/pgp.c:490 -#: grub-core/commands/pgp.c:665 -msgid "bad signature" -msgstr "פֿ×לשצהע שִיגנ×תוּר" - -#. TRANSLATORS: %08x is 32-bit key id. -#: grub-core/commands/pgp.c:636 grub-core/commands/pgp.c:812 -#, c-format -msgid "public key %08x not found" -msgstr "ֵפֿפֿענתלִיצהער שצהלֻששעל %08x ווּרדע נִיצהת געפֿוּנדענ" - -#: grub-core/commands/pgp.c:651 grub-core/disk/diskfilter.c:772 -#: grub-core/disk/diskfilter.c:782 grub-core/fs/ntfs.c:404 -#: grub-core/fs/zfs/zfs.c:1933 grub-core/normal/menu.c:428 -#, c-format -msgid "module `%s' isn't loaded" -msgstr "מוֹדוּל »%s« ִישת נִיצהת געל×דענ" - -#: grub-core/commands/pgp.c:994 -msgid "[-s|--skip-sig] FILE SIGNATURE_FILE [PUBKEY_FILE]" -msgstr "[-ש|--שכִּיפּ-שִיג] ד×תעִי שִיגנ×תוּרד×תעִי [שצהלֻששעלד×תעִי]" - -#: grub-core/commands/pgp.c:995 -msgid "Verify detached signature." -msgstr "×נגעהֶנגתע שִיגנ×תוּר ֻבּערפּרֻפֿענ." - -#: grub-core/commands/pgp.c:998 -msgid "[-s|--skip-sig] PUBKEY_FILE" -msgstr "[-ש|--שכִּיפּ-שִיג] שצהלֻששעל_ד×תעִי" - -#: grub-core/commands/pgp.c:999 -msgid "Add PUBKEY_FILE to trusted keys." -msgstr "שצהלֻששעל_ד×תעִי זוּ בֿערתר×וּענשוֻרדִיגענ שצהלֻששעלנ הִינזוּפֻֿגענ." - -#: grub-core/commands/pgp.c:1003 -msgid "Show the list of trusted keys." -msgstr "בֿערתר×וּענשוֻרדִיגע שצהלֻששעל ×וּפֿלִישתענ." - -#: grub-core/commands/pgp.c:1005 -msgid "PUBKEY_ID" -msgstr "שצהלֻששעל_ִיד" - -#: grub-core/commands/pgp.c:1006 -msgid "Remove PUBKEY_ID from trusted keys." -msgstr "שצהלֻששעל_ִיד ×וּש דענ בֿערתר×וּענשוֻרדִיגענ שצהלֻששעלנ ענתפֿערנענ." - -#: grub-core/commands/probe.c:40 grub-core/commands/tr.c:32 -msgid "Set a variable to return value." -msgstr "×¢Ö´×™× ×¢ בֿ×רִי×בּלע ×וּפֿ דענ רֻצכּג×בּעוערת שעתזענ." - -#. TRANSLATORS: It's a driver that is currently in use to access -#. the diven disk. -#: grub-core/commands/probe.c:43 -msgid "Determine driver." -msgstr "תרעִיבּער ערמִיתתעלנ." - -#: grub-core/commands/probe.c:44 -msgid "Determine partition map type." -msgstr "תיִפּ דער פּ×רתִיתִיוֹנשזוּוֹרדנוּנג בּעשתִיממענ." - -#: grub-core/commands/probe.c:45 -msgid "Determine filesystem type." -msgstr "ד×תעִישיִשתעמתיִפּ ערמִיתתעלנ." - -#: grub-core/commands/probe.c:46 -msgid "Determine filesystem UUID." -msgstr "ד×תעִישיִשתעמ-וּוִּיד ערמִיתתעלנ." - -#: grub-core/commands/probe.c:47 -msgid "Determine filesystem label." -msgstr "ד×תעִישיִשתעמבּעזעִיצהנוּנג ערמִיתתעלנ." - -#: grub-core/commands/probe.c:139 grub-core/commands/probe.c:146 -#: util/grub-probe.c:462 -#, c-format -msgid "filesystem `%s' does not support labels" -msgstr "ד×תעִישיִשתעמ »%s« וּנתערשתֻתזת ×›Ö¼×¢Ö´×™× ×¢ ל×בּעלש" - -#: grub-core/commands/probe.c:165 grub-core/fs/zfs/zfsinfo.c:430 -#: grub-core/loader/i386/bsd.c:169 util/grub-setup.c:223 -msgid "DEVICE" -msgstr "גערֶת" - -#: grub-core/commands/probe.c:166 -msgid "Retrieve device info." -msgstr "ִינפֿוֹ זוּמ גערֶת הוֹלענ." - -#: grub-core/commands/read.c:85 -msgid "[ENVVAR]" -msgstr "[ענבֿבֿ×ר]" - -#: grub-core/commands/read.c:86 -msgid "Set variable with user input." -msgstr "בֿ×רִי×בּלע דוּרצה בּענוּתזערעִינג×בּע שעתזענ." - -#: grub-core/commands/reboot.c:40 -msgid "Reboot the computer." -msgstr "דענ רעצהנער נעוּ שת×רתענ." - -#. TRANSLATORS: in regexp you can mark some -#. groups with parentheses. These groups are -#. then numbered and you can save some of -#. them in variables. In other programs -#. those components aree often referenced with -#. back slash, e.g. \1. Compare -#. sed -e 's,\([a-z][a-z]*\),lowercase=\1,g' -#. The whole matching component is saved in VARNAME, not its number. -#. -#: grub-core/commands/regexp.c:44 -msgid "Store matched component NUMBER in VARNAME." -msgstr "ענתשפּרעצהענדע כּוֹמפּוֹנענתענ-נוּממער Ö´×™×  בֿ×רנ×מע שפּעִיצהערנ." - -#: grub-core/commands/regexp.c:45 -msgid "[NUMBER:]VARNAME" -msgstr "[×–×הל:]בֿ×רנ×מע" - -#. TRANSLATORS: This are two arguments. So it's -#. two separate units to translate and pay -#. attention not to reverse them. -#: grub-core/commands/regexp.c:157 -msgid "REGEXP STRING" -msgstr "רעגעכּספּ זעִיצהענכּעתתע" - -#: grub-core/commands/regexp.c:158 -msgid "Test if REGEXP matches STRING." -msgstr "פּרֻפֿענ, וֹבּ רעגעכּספּ ×וּפֿ זעִיצהענכּעתתע פּ×ששת." - -#: grub-core/commands/search.c:324 -msgid "NAME [VARIABLE] [HINTS]" -msgstr "× ×מע [בֿ×רִי×בּלע] [הִינתועִישע]" - -#: grub-core/commands/search_file.c:4 -msgid "" -"Search devices by file. If VARIABLE is specified, the first device found is " -"set to a variable." -msgstr "" -"×× ×”×נד בֿוֹנ ד×תעִיענ × ×צה גערֶתענ שוּצהענ. פֿ×ללש בֿ×רִי×בּלע ×נגעגעבּענ וִירד, ד×× ×  " -"וִירד ד×ש ערשתע געפֿוּנדענע גערֶת זוּמ שעתזענ דער בֿ×רִי×בּלע בֿערוענדעת." - -#: grub-core/commands/search_label.c:4 -msgid "" -"Search devices by label. If VARIABLE is specified, the first device found is " -"set to a variable." -msgstr "" -"×× ×”×נד בֿוֹנ בּעזעִיצהנוּנגענ × ×צה גערֶתענ שוּצהענ. פֿ×ללש בֿ×רִי×בּלע ×נגעגעבּענ וִירד, " -"ד×× ×  וִירד ד×ש ערשתע געפֿוּנדענע גערֶת זוּמ שעתזענ דער בֿ×רִי×בּלע בֿערוענדעת." - -#: grub-core/commands/search_uuid.c:4 -msgid "" -"Search devices by UUID. If VARIABLE is specified, the first device found is " -"set to a variable." -msgstr "" -"×× ×”×נד בֿוֹנ וּוִּידש × ×צה גערֶתענ שוּצהענ. פֿ×ללש בֿ×רִי×בּלע ×נגעגעבּענ וִירד, ד×× ×  " -"וִירד ד×ש ערשתע געפֿוּנדענע גערֶת זוּמ שעתזענ דער בֿ×רִי×בּלע בֿערוענדעת." - -#: grub-core/commands/search_wrap.c:34 -msgid "Search devices by a file." -msgstr "גערֶתע × ×צה ד×תעִי דוּרצהשוּצהענ." - -#: grub-core/commands/search_wrap.c:35 -msgid "Search devices by a filesystem label." -msgstr "גערֶתע × ×צה ד×תעִישיִשתעמבּעזעִיצהנוּנג דוּרצהשוּצהענ." - -#: grub-core/commands/search_wrap.c:37 -msgid "Search devices by a filesystem UUID." -msgstr "גערֶתע × ×צה ד×תעִישיִשתעמ-וּוִּיד דוּרצהשוּצהענ." - -#: grub-core/commands/search_wrap.c:40 -msgid "Set a variable to the first device found." -msgstr "×¢Ö´×™× ×¢ בֿ×רִי×בּלע ×וּפֿ ד×ש ערשתע געפֿוּנדענע גערֶת שעתזענ." - -#: grub-core/commands/search_wrap.c:42 -msgid "Do not probe any floppy drive." -msgstr "×›Ö¼×¢Ö´×™×  דִישכּעתתענל×וּפֿוערכּ ֻבּערפּרֻפֿענ." - -#: grub-core/commands/search_wrap.c:44 -msgid "" -"First try the device HINT. If HINT ends in comma, also try subpartitions" -msgstr "" -"זוּערשת ד×ש גערֶת הִינועִיש בֿערשוּצהענ. פֿ×ללש הִינועִיש מִית ×›Ö¼×•Ö¹×ž×ž× ×¢× ×“×¢×ª, ×וּצה " -"וּנתערפּ×רתִיתִיוֹנענ בֿערשוּצהענ" - -#: grub-core/commands/search_wrap.c:45 grub-core/commands/search_wrap.c:49 -#: grub-core/commands/search_wrap.c:53 grub-core/commands/search_wrap.c:57 -#: grub-core/commands/search_wrap.c:61 grub-core/commands/search_wrap.c:65 -msgid "HINT" -msgstr "הִינועִיש" - -#: grub-core/commands/search_wrap.c:47 -msgid "" -"First try the device HINT if currently running on IEEE1275. If HINT ends in " -"comma, also try subpartitions" -msgstr "" -"זוּערשת ד×ש גערֶת הִינועִיש בֿערשוּצהענ (בּעִי Ö´×™×¢×¢×¢1275). פֿ×ללש הִינועִיש מִית ×›Ö¼×•Ö¹×ž×ž× " -"ענדעת, ×וּצה וּנתערפּ×רתִיתִיוֹנענ בֿערשוּצהענ" - -#: grub-core/commands/search_wrap.c:51 -msgid "" -"First try the device HINT if currently running on BIOS. If HINT ends in " -"comma, also try subpartitions" -msgstr "" -"זוּערשת ד×ש גערֶת הִינועִיש בֿערשוּצהענ (פֻֿר ×כּתוּעלל ל×וּפֿענדעש בִּיוֹש). פֿ×ללש הִינועִיש " -"מִית ×›Ö¼×•Ö¹×ž×ž× ×¢× ×“×¢×ª, ×וּצה וּנתערפּ×רתִיתִיוֹנענ בֿערשוּצהענ" - -#: grub-core/commands/search_wrap.c:55 -msgid "" -"First try the device HINT if direct hardware access is supported. If HINT " -"ends in comma, also try subpartitions" -msgstr "" -"זוּערשת ד×ש גערֶת הִינועִיש בֿערשוּצהענ, פֿ×ללש דִירעכּתער ×”×רדו×רעזוּגרִיפֿפֿ וּנתערשתֻתזת " -"וִירד. פֿ×ללש הִינועִיש מִית ×›Ö¼×•Ö¹×ž×ž× ×¢× ×“×¢×ª, ×וּצה וּנתערפּ×רתִיתִיוֹנענ בֿערשוּצהענ" - -#: grub-core/commands/search_wrap.c:59 -msgid "" -"First try the device HINT if currently running on EFI. If HINT ends in " -"comma, also try subpartitions" -msgstr "" -"זוּערשת ד×ש גערֶת הִינועִיש בֿערשוּצהענ (פֻֿר ×כּתוּעלל ל×וּפֿענדעש עפִֿי). פֿ×ללש הִינועִיש " -"מִית ×›Ö¼×•Ö¹×ž×ž× ×¢× ×“×¢×ª, ×וּצה וּנתערפּ×רתִיתִיוֹנענ בֿערשוּצהענ" - -#: grub-core/commands/search_wrap.c:63 -msgid "" -"First try the device HINT if currently running on ARC. If HINT ends in " -"comma, also try subpartitions" -msgstr "" -"זוּערשת ד×ש גערֶת הִינועִיש בֿערשוּצהענ, פֿ×ללש ×כּתוּעלל ל×וּפֿענדע ×רצ. פֿ×ללש הִינועִיש " -"מִית ×›Ö¼×•Ö¹×ž×ž× ×¢× ×“×¢×ª, ×וּצה וּנתערפּ×רתִיתִיוֹנענ בֿערשוּצהענ" - -#: grub-core/commands/search_wrap.c:207 -msgid "[-f|-l|-u|-s|-n] [--hint HINT [--hint HINT] ...] NAME" -msgstr "[-פֿ|-ל|-וּ|-ש|-× ] [--הִינת הִינועִיש [--הִינת הִינת] ...] × ×מע" - -#: grub-core/commands/search_wrap.c:209 -msgid "" -"Search devices by file, filesystem label or filesystem UUID. If --set is " -"specified, the first device found is set to a variable. If no variable name " -"is specified, `root' is used." -msgstr "" -"×× ×”×נד בֿוֹנ ד×תעִיענ, ד×תעִישיִשתעמבּעזעִיצהנוּנגענ וֹדער ד×תעִישיִשתעמ-וּוִּידש × ×צה " -"גערֶתענ שוּצהענ. פֿ×ללש --שעת ×נגעגעבּענ וִירד, ד×× ×  וִירד ד×ש ערשתע געפֿוּנדענע " -"גערֶת זוּמ שעתזענ דער בֿ×רִי×בּלע בֿערוענדעת. פֿ×ללש ×›Ö¼×¢Ö´×™× ×¢ בֿ×רִי×בּלע ×נגעגעבּענ וִירד, " -"ד×× ×  וִירד »רוֹוֹת« בֿערוענדעת" - -#: grub-core/commands/setpci.c:132 -#, c-format -msgid "Register %x of %x:%02x.%x is %x\n" -msgstr "רעגִישתער %x בֿוֹנ %x:%02x.%x ִישת %x\n" - -#: grub-core/commands/setpci.c:333 -msgid "[-s POSITION] [-d DEVICE] [-v VAR] REGISTER[=VALUE[:MASK]]" -msgstr "[-ש פּוֹשִיתִיוֹנ] [-ד גערֶת] [-בֿ בֿ×ר] רעגִישתער[=וערת[:מ×שכּע]]" - -#: grub-core/commands/setpci.c:335 -msgid "Manipulate PCI devices." -msgstr "פּצִי-גערֶתע בּע×רבּעִיתענ." - -#: grub-core/commands/sleep.c:32 -msgid "Verbose countdown." -msgstr "×וּשפֻֿהרלִיצהער צוֹוּנתדוֹונ." - -#: grub-core/commands/sleep.c:33 -msgid "Allow to interrupt with ESC." -msgstr "וּנתערבּרעצהוּנג מִית עשצ ערל×וּבּענ." - -#: grub-core/commands/sleep.c:109 -msgid "NUMBER_OF_SECONDS" -msgstr "×× ×–×הל_דער_שעכּוּנדענ" - -#: grub-core/commands/sleep.c:110 -msgid "Wait for a specified number of seconds." -msgstr "דִיע ×נגעגעבּענע ×× ×–×הל ××  שעכּוּנדענ ו×רתענ." - -#: grub-core/commands/syslinuxcfg.c:50 util/grub-syslinux2cfg.c:66 -msgid "root directory of the syslinux disk [default=/]." -msgstr "ווּרזעלבֿערזעִיצהנִיש דער שיִשלִינוּכּס-דִישכּ [בֿוֹרג×בּע=/]." - -#: grub-core/commands/syslinuxcfg.c:53 util/grub-syslinux2cfg.c:72 -msgid "" -"current directory of syslinux [default is parent directory of input file]." -msgstr "" -"×כּתוּעללעש בֿערזעִיצהנִיש פֻֿר שיִשלִינוּכּס [בֿוֹרג×בּע ִישת ד×ש ֻבּערגעוֹרדנעתע בֿערזעִיצהנִיש " -"דער ×¢Ö´×™× ×’×בּעד×תעִי]." - -#: grub-core/commands/syslinuxcfg.c:55 util/grub-syslinux2cfg.c:75 -msgid "assume input is an isolinux configuration file." -msgstr "×¢Ö´×™× ×’×בּע ×לש ִישוֹלִינוּכּס-כּוֹנפִֿיגוּר×תִיוֹנשד×תעִי ×וּפֿפֿ×ששענ." - -#: grub-core/commands/syslinuxcfg.c:56 util/grub-syslinux2cfg.c:76 -msgid "assume input is a pxelinux configuration file." -msgstr "×¢Ö´×™× ×’×בּע ×לש פּכּסעלִינוּכּס-כּוֹנפִֿיגוּר×תִיוֹנשד×תעִי ×וּפֿפֿ×ששענ." - -#: grub-core/commands/syslinuxcfg.c:57 util/grub-syslinux2cfg.c:77 -msgid "assume input is a syslinux configuration file." -msgstr "×¢Ö´×™× ×’×בּע ×לש שיִשלִינוּכּס-כּוֹנפִֿיגוּר×תִיוֹנשד×תעִי ×וּפֿפֿ×ששענ." - -#. TRANSLATORS: "syslinux config" means -#. "config as used by syslinux". -#: grub-core/commands/syslinuxcfg.c:189 -msgid "Execute syslinux config in same context" -msgstr "שיִשלִינוּכּס-כּוֹנפִֿיגוּר×תִיוֹנ ִימ גלעִיצהענ כּוֹנתעכּסת ל×דענ" - -#: grub-core/commands/syslinuxcfg.c:195 -msgid "Execute syslinux config in new context" -msgstr "שיִשלִינוּכּס-כּוֹנפִֿיגוּר×תִיוֹנ ִימ נעוּענ כּוֹנתעכּסת ל×דענ" - -#: grub-core/commands/syslinuxcfg.c:201 -msgid "Execute syslinux config in same context taking only menu entries" -msgstr "שיִשלִינוּכּס-כּוֹנפִֿיגוּר×תִיוֹנ ִימ גלעִיצהענ כּוֹנתעכּסת ל×דענ, נוּר מענֻעִינתרֶגע" - -#: grub-core/commands/syslinuxcfg.c:207 -msgid "Execute syslinux config in new context taking only menu entries" -msgstr "שיִשלִינוּכּס-כּוֹנפִֿיגוּר×תִיוֹנ ִימ נעוּענ כּוֹנתעכּסת ל×דענ, נוּר מענֻעִינתרֶגע" - -#: grub-core/commands/terminal.c:90 -msgid "no terminal specified" -msgstr "×›Ö¼×¢Ö´×™×  תערמִינ×ל ×נגעגעבּענ" - -#: grub-core/commands/terminal.c:112 grub-core/commands/terminal.c:139 -#, c-format -msgid "terminal `%s' isn't found" -msgstr "תערמִינ×ל »%s« ווּרדע נִיצהת געפֿוּנדענ" - -#: grub-core/commands/terminal.c:244 -msgid "Active input terminals:" -msgstr "×כּתִיבֿע ×¢Ö´×™× ×’×בּעתערמִינ×לש:" - -#: grub-core/commands/terminal.c:245 -msgid "Available input terminals:" -msgstr "בֿערפֻֿגבּ×רע ×¢Ö´×™× ×’×בּעתערמִינ×לש:" - -#: grub-core/commands/terminal.c:261 -msgid "Active output terminals:" -msgstr "×כּתִיבֿע ×וּשג×בּעתערמִינ×לש:" - -#: grub-core/commands/terminal.c:262 -msgid "Available output terminals:" -msgstr "בֿערפֻֿגבּ×רע ×וּשג×בּעתערמִינ×לש:" - -#: grub-core/commands/terminal.c:271 grub-core/commands/terminal.c:276 -msgid "[--append|--remove] [TERMINAL1] [TERMINAL2] ..." -msgstr "[--×פּפּענד|--רעמוֹבֿע] [תערמִינ×ל1] [תערמִינ×ל2] ..." - -#: grub-core/commands/terminal.c:273 -msgid "List or select an input terminal." -msgstr "×¢Ö´×™× ×’×בּעתערמִינ×ל לִישתענ וֹדער וֶהלענ." - -#: grub-core/commands/terminal.c:278 -msgid "List or select an output terminal." -msgstr "×וּשג×בּעתערמִינ×ל לִישתענ וֹדער וֶהלענ." - -#: grub-core/commands/test.c:444 -msgid "EXPRESSION ]" -msgstr "×וּשדרוּצכּ ]" - -#: grub-core/commands/test.c:444 grub-core/commands/test.c:447 -msgid "Evaluate an expression." -msgstr "×¢Ö´×™× ×¢×  ×וּשדרוּצכּ ×וּשוערתענ." - -#: grub-core/commands/test.c:447 -msgid "EXPRESSION" -msgstr "×וּשדרוּצכּ" - -#: grub-core/commands/testload.c:164 -msgid "Load the same file in multiple ways." -msgstr "גלעִיצהע ד×תעִי מעהרפֿ×צה ל×דענ." - -#: grub-core/commands/testspeed.c:35 -msgid "Specify size for each read operation" -msgstr "גרֵססע פֻֿר יעדענ לעשעבֿוֹרג×× ×’ ×נגעבּענ" - -#: grub-core/commands/testspeed.c:58 -msgid "invalid block size" -msgstr "וּנגֻלתִיגע בּלוֹצכּגרֵססע" - -#: grub-core/commands/testspeed.c:80 -#, c-format -msgid "File size: %s\n" -msgstr "ד×תעִיגרֵססע: %s\n" - -#: grub-core/commands/testspeed.c:83 -#, c-format -msgid "Elapsed time: %d.%03d s \n" -msgstr "בֿערשתרִיצהענע זעִית: %d.%03d ש \n" - -#: grub-core/commands/testspeed.c:92 -#, c-format -msgid "Speed: %s \n" -msgstr "געשצהוִינדִיגכּעִית: %s \n" - -#: grub-core/commands/testspeed.c:107 -msgid "[-s SIZE] FILENAME" -msgstr "[-ש גרֵססע] ד×תעִינ×מע" - -#: grub-core/commands/testspeed.c:108 -msgid "Test file read speed." -msgstr "ד×תעִילעשעגעשצהוִינדִיגכּעִית תעשתענ." - -#: grub-core/commands/time.c:38 grub-core/script/execute.c:974 -msgid "no command is specified" -msgstr "×›Ö¼×¢Ö´×™×  בּעפֿעהל ×נגעגעבּענ" - -#: grub-core/commands/time.c:50 -#, c-format -msgid "Elapsed time: %d.%03d seconds \n" -msgstr "בֿערשתרִיצהענע זעִית: %d.%03d שעכּוּנדענ \n" - -#: grub-core/commands/time.c:61 -msgid "COMMAND [ARGS]" -msgstr "בּעפֿעהל [×רגוּמענתע]" - -#: grub-core/commands/time.c:62 -msgid "Measure time used by COMMAND" -msgstr "בֿוֹנ בּעפֿעהל בּענֵתִיגתע זעִית מעששענ" - -#: grub-core/commands/tr.c:33 -msgid "Translate to upper case." -msgstr "Ö´×™×  גרוֹססשצהרעִיבּוּנג וּמו×נדעלנ." - -#: grub-core/commands/tr.c:34 -msgid "Translate to lower case." -msgstr "Ö´×™×  כּלעִינשצהרעִיבּוּנג וּמו×נדעלנ." - -#: grub-core/commands/tr.c:119 -msgid "[OPTIONS] [SET1] [SET2] [STRING]" -msgstr "[וֹפּתִיוֹנענ] [מענגע1] [מענגע2] [זעִיצהענכּעתתע]" - -#: grub-core/commands/tr.c:120 -msgid "Translate SET1 characters to SET2 in STRING." -msgstr "זעִיצהענ דער מענגע1 Ö´×™×  זעִיצהענ דער מענגע2 Ö´×™×  זעִיצהענכּעתתע ֻבּערשעתזענ." - -#. TRANSLATORS: it's a command description. -#: grub-core/commands/true.c:50 -msgid "Do nothing, successfully." -msgstr "נִיצהתש תוּנ, ערפֿוֹלגרעִיצה." - -#. TRANSLATORS: it's a command description. -#: grub-core/commands/true.c:54 -msgid "Do nothing, unsuccessfully." -msgstr "נִיצהתש תוּנ, נִיצהת ערפֿוֹלגרעִיצה." - -#: grub-core/commands/usbtest.c:221 -msgid "Test USB support." -msgstr "וּשבּ-וּנתערשתֻתזוּנג ֻבּערפּרֻפֿענ." - -#: grub-core/commands/verifiers.c:120 -#, c-format -msgid "verification requested but nobody cares: %s" -msgstr "בֿערִיפִֿיזִיערוּנג ִישת ערפֿוֹרדערלִיצה, ×בּער נִיעמ×נד נִיממת נוֹתִיז ד×בֿוֹנ: %s" - -#: grub-core/commands/verifiers.c:140 -msgid "big file signature isn't implemented yet" -msgstr "גרוֹססע ד×תעִישִיגנ×תוּר ִישת נוֹצה נִיצהת ִימפּלעמענתִיערת" - -#: grub-core/commands/videoinfo.c:61 -msgid "Text-only " -msgstr "נוּר תעכּסת" - -#. TRANSLATORS: "Direct color" is a mode when the color components -#. are written dirrectly into memory. -#: grub-core/commands/videoinfo.c:66 -#, c-format -msgid "Direct color, mask: %d/%d/%d/%d pos: %d/%d/%d/%d" -msgstr "דִירעכּתע פֿ×רבּע, מ×שכּע: %d/%d/%d/%d פּוֹש.: %d/%d/%d/%d" - -#. TRANSLATORS: In "paletted color" mode you write the index of the color -#. in the palette. Synonyms include "packed pixel". -#: grub-core/commands/videoinfo.c:78 -msgid "Paletted " -msgstr "פּ×לעתתִיערת " - -#: grub-core/commands/videoinfo.c:80 -msgid "YUV " -msgstr "יִוּבֿ " - -#. TRANSLATORS: "Planar" is the video memory where you have to write -#. in several different banks "plans" to control the different color -#. components of the same pixel. -#: grub-core/commands/videoinfo.c:85 -msgid "Planar " -msgstr "פּל×× ×ר " - -#: grub-core/commands/videoinfo.c:87 -msgid "Hercules " -msgstr "הערצוּלעש " - -#: grub-core/commands/videoinfo.c:89 -msgid "CGA " -msgstr "×¦×’× " - -#. TRANSLATORS: Non-chain 4 is a 256-color planar -#. (unchained) video memory mode. -#: grub-core/commands/videoinfo.c:93 -msgid "Non-chain 4 " -msgstr "נוֹנ-צה×Ö´×™×  4 " - -#: grub-core/commands/videoinfo.c:95 -msgid "Monochrome " -msgstr "שצהו×רזועִיסס " - -#: grub-core/commands/videoinfo.c:97 -msgid "Unknown video mode " -msgstr "וּנבּעכּ×ננתער בִֿידעוֹמוֹדוּש" - -#: grub-core/commands/videoinfo.c:111 -msgid " EDID checksum invalid" -msgstr " עדִיד-פּרֻפֿשוּממע ִישת וּנגֻלתִיג" - -#: grub-core/commands/videoinfo.c:116 -#, c-format -msgid " EDID version: %u.%u\n" -msgstr " עדִיד-בֿערשִיוֹנ: %u.%u\n" - -#: grub-core/commands/videoinfo.c:120 -#, c-format -msgid " Preferred mode: %ux%u\n" -msgstr " בּעבֿוֹרזוּגתער מוֹדוּש: %uכּס%u\n" - -#: grub-core/commands/videoinfo.c:123 -msgid " No preferred mode available\n" -msgstr " ×›Ö¼×¢Ö´×™×  בּעבֿוֹרזוּגתער מוֹדוּש בֿערפֻֿגבּ×ר\n" - -#: grub-core/commands/videoinfo.c:146 grub-core/video/video.c:490 -#: grub-core/video/video.c:498 grub-core/video/video.c:509 -#: grub-core/video/video.c:520 grub-core/video/video.c:528 -#, c-format -msgid "invalid video mode specification `%s'" -msgstr "וּנגֻלתִיגע ×× ×’×בּע »%s« דעש גר×פִֿיכּמוֹדוּש" - -#: grub-core/commands/videoinfo.c:168 -msgid "List of supported video modes:" -msgstr "לִישתע דער וּנתערשתֻתזתענ בִֿידעוֹמוֹדִי:" - -#: grub-core/commands/videoinfo.c:169 -msgid "Legend: mask/position=red/green/blue/reserved" -msgstr "לעגענדע: מ×שכּע/פּוֹשִיתִיוֹנ=רוֹת/גרֻנ/בּל×וּ/רעשערבִֿיערת" - -#: grub-core/commands/videoinfo.c:176 -#, c-format -msgid "Adapter `%s':\n" -msgstr "×ד×פּתער »%s«:\n" - -#: grub-core/commands/videoinfo.c:180 -msgid " No info available" -msgstr " ×›Ö¼×¢Ö´×™× ×¢ ִינפֿוֹרמ×תִיוֹנענ בֿערפֻֿגבּ×ר" - -#: grub-core/commands/videoinfo.c:198 -msgid " Failed to initialize video adapter" -msgstr " גר×פִֿיכּ×ד×פּתער כּוֹננתע נִיצהת ִינִיתִי×לִישִיערת וערדענ" - -#. TRANSLATORS: "x" has to be entered in, -#. like an identifier, so please don't -#. use better Unicode codepoints. -#: grub-core/commands/videoinfo.c:239 grub-core/commands/videoinfo.c:248 -msgid "[WxH[xD]]" -msgstr "[בּכּסה[כּסת]]" - -#: grub-core/commands/videoinfo.c:240 grub-core/commands/videoinfo.c:249 -msgid "" -"List available video modes. If resolution is given show only modes matching " -"it." -msgstr "" -"בֿערפֻֿגבּ×רע גר×פִֿיכּמוֹדִי ×וּפֿלִישתענ. פֿ×ללש ×וּפֿלֵשוּנג ×נגעגעבּענ ִישת, נוּר מוֹדִי " -"דִיעשער ×וּפֿלֵשוּנג ×× ×–×¢Ö´×™×’×¢× ." - -#. TRANSLATORS: "x" has to be entered in, -#. like an identifier, so please don't -#. use better Unicode codepoints. -#: grub-core/commands/videotest.c:225 -msgid "[WxH]" -msgstr "[בּכּסה]" - -#. TRANSLATORS: Here, on the other hand, it's -#. nicer to use unicode cross instead of x. -#: grub-core/commands/videotest.c:228 -msgid "Test video subsystem in mode WxH." -msgstr "ד×ש בִֿידעוֹ-שוּבּשיִשתעמ ִימ מוֹדוּש בּכּסה ֻבּערפּרֻפֿענ." - -#: grub-core/commands/videotest.c:231 -msgid "Test video subsystem." -msgstr "ד×ש בִֿידעוֹ-שוּבּשיִשתעמ ֻבּערפּרֻפֿענ." - -#: grub-core/commands/xen/lsxen.c:80 grub-core/commands/xen/lsxen.c:82 -msgid "[DIR]" -msgstr "[בֿערז]" - -#: grub-core/commands/xen/lsxen.c:81 grub-core/commands/xen/lsxen.c:83 -msgid "List Xen storage." -msgstr "כּסענ-שפּעִיצהערוּנג ×וּפֿלִישתענ." - -#. TRANSLATORS: GRUBUUID stands for "filesystem -#. UUID as used in GRUB". -#: grub-core/commands/xnu_uuid.c:110 -msgid "[-l] GRUBUUID [VARNAME]" -msgstr "[-ל] גרוּבּוּוִּיד [בֿ×רנ×מע]" - -#: grub-core/commands/xnu_uuid.c:111 -msgid "" -"Transform 64-bit UUID to format suitable for XNU. If -l is given keep it " -"lowercase as done by blkid." -msgstr "" -"64-בִּית-וּוִּיד Ö´×™×  ×¢Ö´×™×  בֿוֹנ כּסנוּ בֿער×רבּעִיתבּ×רעש פֿוֹרמ×ת וּמו×נדעלנ. פֿ×ללש -ל " -"×נגעגעבּענ ִישת, בִּיתתע כּלעִינשצהרעִיבּוּנג בּעִיבּעה×לתענ (וִיע בֿוֹנ בּלכִּיד)" - -#: grub-core/disk/arc/arcdisk.c:248 grub-core/disk/efi/efidisk.c:603 -#: grub-core/disk/i386/pc/biosdisk.c:498 grub-core/disk/i386/pc/biosdisk.c:543 -#: grub-core/disk/ieee1275/nand.c:198 grub-core/disk/ieee1275/obdisk.c:527 -#: grub-core/disk/ieee1275/ofdisk.c:586 -#, c-format -msgid "failure reading sector 0x%llx from `%s'" -msgstr "לעשענ דעש שעכּתוֹרש 0כּס%llx בֿוֹנ »%s« ִישת פֿעהלגעשצהל××’×¢× " - -#: grub-core/disk/arc/arcdisk.c:284 grub-core/disk/efi/efidisk.c:626 -#: grub-core/disk/i386/pc/biosdisk.c:548 grub-core/disk/ieee1275/ofdisk.c:606 -#, c-format -msgid "failure writing sector 0x%llx to `%s'" -msgstr "שצהרעִיבּענ דעש שעכּתוֹרש 0כּס%llx × ×צה »%s« ִישת פֿעהלגעשצהל××’×¢× " - -#: grub-core/disk/cryptodisk.c:40 -msgid "Mount by UUID." -msgstr "× ×צה וּוִּיד ×¢Ö´×™× ×”Ö¶× ×’×¢× ." - -#. TRANSLATORS: It's still restricted to cryptodisks only. -#: grub-core/disk/cryptodisk.c:42 -msgid "Mount all." -msgstr "×ללעש ×¢Ö´×™× ×”Ö¶× ×’×¢× ." - -#: grub-core/disk/cryptodisk.c:43 -msgid "Mount all volumes with `boot' flag set." -msgstr "×ללע ד×תענתרֶגער ×¢Ö´×™× ×”Ö¶× ×’×¢× , פֻֿר דִיע ד×ש »בּוֹוֹת«-פֿל××’ געשעתזת ִישת." - -#. TRANSLATORS: The first %s is the file being looked at, the second %s is -#. the error message. -#: grub-core/disk/cryptodisk.c:526 grub-core/kern/emu/hostdisk.c:152 -#: grub-core/kern/emu/hostdisk.c:262 grub-core/kern/emu/hostdisk.c:434 -#: grub-core/kern/emu/misc.c:168 grub-core/kern/emu/misc.c:174 -#: grub-core/kern/emu/misc.c:196 grub-core/osdep/bsd/getroot.c:92 -#: grub-core/osdep/bsd/getroot.c:168 grub-core/osdep/hurd/getroot.c:68 -#: grub-core/osdep/linux/blocklist.c:65 grub-core/osdep/linux/getroot.c:150 -#: grub-core/osdep/linux/hostdisk.c:194 grub-core/osdep/linux/hostdisk.c:421 -#: grub-core/osdep/linux/ofpath.c:417 grub-core/osdep/linux/ofpath.c:422 -#: grub-core/osdep/linux/ofpath.c:517 grub-core/osdep/linux/ofpath.c:530 -#: grub-core/osdep/sun/getroot.c:110 grub-core/osdep/windows/blocklist.c:98 -#: grub-core/tests/video_checksum.c:279 util/editenv.c:46 util/glue-efi.c:115 -#: util/glue-efi.c:120 util/glue-efi.c:130 util/grub-editenv.c:138 -#: util/grub-editenv.c:192 util/grub-file.c:83 util/grub-fstest.c:128 -#: util/grub-fstest.c:568 util/grub-install-common.c:92 -#: util/grub-install-common.c:94 util/grub-install-common.c:101 -#: util/grub-install-common.c:529 util/grub-menulst2cfg.c:53 -#: util/grub-menulst2cfg.c:68 util/grub-mkimage.c:292 util/grub-mklayout.c:504 -#: util/grub-mklayout.c:516 util/grub-mknetdir.c:133 util/grub-mknetdir.c:151 -#: util/grub-mkrescue.c:627 util/grub-mkrescue.c:631 util/grub-mkrescue.c:879 -#: util/grub-mkrescue.c:883 util/grub-mkstandalone.c:253 util/grub-mount.c:498 -#: util/grub-render-label.c:169 util/grub-script-check.c:175 -#: util/grub-syslinux2cfg.c:181 util/grub-syslinux2cfg.c:191 -#: util/grub-syslinux2cfg.c:212 util/grub-syslinux2cfg.c:228 util/misc.c:91 -#: util/render-label.c:76 util/render-label.c:163 util/render-label.c:174 -#: util/resolve.c:246 util/setup.c:783 -#, c-format -msgid "cannot open `%s': %s" -msgstr "»%s« ×›Ö¼×× ×  נִיצהת געֵפֿפֿנעת וערדענ: %s" - -#: grub-core/disk/cryptodisk.c:583 grub-core/disk/cryptodisk.c:628 -#: grub-core/kern/emu/hostdisk.c:270 grub-core/kern/emu/hostfs.c:142 -#: grub-core/osdep/linux/hostdisk.c:456 util/grub-editenv.c:143 -#: util/grub-editenv.c:149 util/grub-fstest.c:320 util/misc.c:111 -#, c-format -msgid "cannot seek `%s': %s" -msgstr "»%s« ×›Ö¼×× ×  נִיצהת דוּרצהשוּצהת וערדענ: %s" - -#: grub-core/disk/cryptodisk.c:1144 -msgid "SOURCE|-u UUID|-a|-b" -msgstr "קוּעללע|-וּ וּוִּיד|-×|-בּ" - -#: grub-core/disk/cryptodisk.c:1145 -msgid "Mount a crypto device." -msgstr "×¢Ö´×™×  בֿערשצהלֻששעלתעש גערֶת ×¢Ö´×™× ×”Ö¶× ×’×¢× ." - -#. TRANSLATORS: This message kicks in during the detection of -#. which modules needs to be included in core image. This happens -#. in the case of degraded RAID and means that autodetection may -#. fail to include some of modules. It's an installation time -#. message, not runtime message. -#: grub-core/disk/diskfilter.c:343 grub-core/disk/diskfilter.c:376 -#, c-format -msgid "" -"Couldn't find physical volume `%s'. Some modules may be missing from core " -"image." -msgstr "" -"פּהיִשִישצהער ד×תענתרֶגער »%s« כּוֹננתע נִיצהת געפֿוּנדענ וערדענ. ×¢Ö´×™× Ö´×™×’×¢ מוֹדוּלע כֵּננתענ" -" ִימ צוֹרע-×בּבִּילד פֿעהלענ." - -#: grub-core/disk/diskfilter.c:480 -#, c-format -msgid "physical volume %s not found" -msgstr "פּהיִשִישצהער ד×תענתרֶגער %s ווּרדע נִיצהת געפֿוּנדענ" - -#: grub-core/disk/efi/efidisk.c:600 grub-core/disk/efi/efidisk.c:623 -#, c-format -msgid "no media in `%s'" -msgstr "×›Ö¼×¢Ö´×™×  מעדִיוּמ Ö´×™×  »%s«" - -#: grub-core/disk/geli.c:75 -msgid "Couldn't load sha256" -msgstr "שה×256 כּוֹננתע נִיצהת געל×דענ וערדענ" - -#: grub-core/disk/geli.c:85 -msgid "Couldn't load sha512" -msgstr "שה×512 כּוֹננתע נִיצהת געל×דענ וערדענ" - -#: grub-core/disk/geli.c:216 grub-core/disk/geli.c:220 -msgid "couldn't read ELI metadata" -msgstr "עלִי-מעת×ד×תענ כּוֹננתענ נִיצהת געלעשענ וערדענ" - -#: grub-core/disk/geli.c:231 -msgid "wrong ELI magic or version" -msgstr "פֿ×לשצהעש עלִי-מ×גִיצ וֹדער -בֿערשִיוֹנ" - -#: grub-core/disk/geli.c:435 grub-core/disk/luks.c:329 -msgid "Attempting to decrypt master key..." -msgstr "עש וִירד בֿערשוּצהת, דענ מ×שתער-שצהלֻששעל זוּ ענתשצהלֻששעלנ …" - -#: grub-core/disk/geli.c:441 grub-core/disk/luks.c:347 -#, c-format -msgid "Enter passphrase for %s%s%s (%s): " -msgstr "כּעננווֹרת פֻֿר %s%s%s ×נגעבּענ (%s): " - -#. TRANSLATORS: It's a cryptographic key slot: one element of an array -#. where each element is either empty or holds a key. -#: grub-core/disk/geli.c:530 grub-core/disk/luks.c:451 -#, c-format -msgid "Slot %d opened\n" -msgstr "שלוֹת %d געֵפֿפֿנעת\n" - -#: grub-core/disk/i386/pc/biosdisk.c:470 grub-core/disk/i386/pc/biosdisk.c:524 -#: grub-core/disk/i386/pc/biosdisk.c:534 grub-core/kern/disk_common.c:47 -#, c-format -msgid "attempt to read or write outside of disk `%s'" -msgstr "בֿערשוּצה, ×וּססערה×לבּ דער פּל×תתע »%s« זוּ לעשענ וּנד זוּ שצהרעִיבּענ" - -#: grub-core/disk/i386/pc/biosdisk.c:491 grub-core/disk/i386/pc/biosdisk.c:611 -#: grub-core/disk/scsi.c:726 -msgid "cannot write to CD-ROM" -msgstr "×וּפֿ צד-רוֹמ ×›Ö¼×× ×  נִיצהת געשצהרִיעבּענ וערדענ" - -#: grub-core/disk/i386/pc/biosdisk.c:662 -msgid "" -"Native disk drivers are in use. Refusing to use firmware disk interface." -msgstr "" -"× ×תִיבֿע פֿעשתפּל×תתענתרעִיבּער וערדענ בֿערוענדעת. נוּתזוּנג דער פִֿירמו×רע-" -"שצהנִיתתשתעללע וִירד בֿערועִיגערת." - -#. TRANSLATORS: it's a partition for embedding, -#. not a partition embed into something. GRUB -#. install tools put core.img into a place -#. usable for bootloaders (called generically -#. "embedding zone") and this operation is -#. called "embedding". -#: grub-core/disk/ldm.c:1015 -msgid "your LDM Embedding Partition is too small; embedding won't be possible" -msgstr "" -"דִיע לדמ-עִינבּעתתוּנגשפּ×רתִיתִיוֹנ ִישת זוּ כּלעִינ, עִינבּעתתוּנג וֻרדע וּנמֵגלִיצה שעִינ" - -#. TRANSLATORS: it's a partition for embedding, -#. not a partition embed into something. -#: grub-core/disk/ldm.c:1033 -msgid "this LDM has no Embedding Partition; embedding won't be possible" -msgstr "" -"דִיעשעש לדמ ×”×ת ×›Ö¼×¢Ö´×™× ×¢ עִינבּעתתוּנגשפּ×רתִיתִיוֹנ, עִינבּעתתוּנג וֻרדע וּנמֵגלִיצה שעִינ" - -#. TRANSLATORS: The disk is simply removed from the list of available ones, -#. not wiped, avoid to scare user. -#: grub-core/disk/loopback.c:45 -msgid "Delete the specified loopback drive." -msgstr "ד×ש ×נגעגעבּענע לוֹוֹפּבּ×צכּ-גערֶת לֵשצהענ." - -#: grub-core/disk/loopback.c:237 -msgid "[-d] DEVICENAME FILE." -msgstr "[-ד] גערֶתענ×מע ד×תעִי." - -#. TRANSLATORS: The file itself is not destroyed -#. or transformed into drive. -#: grub-core/disk/loopback.c:240 -msgid "Make a virtual drive from a file." -msgstr "×¢Ö´×™×  בִֿירתוּעללעש גערֶת ×וּש עִינער ד×תעִי ערשתעללענ." - -#: grub-core/efiemu/i386/loadcore32.c:111 -#: grub-core/efiemu/i386/loadcore64.c:125 grub-core/kern/arm/dl.c:256 -#: grub-core/kern/arm64/dl.c:187 grub-core/kern/i386/dl.c:75 -#: grub-core/kern/ia64/dl.c:140 grub-core/kern/mips/dl.c:258 -#: grub-core/kern/powerpc/dl.c:163 grub-core/kern/riscv/dl.c:334 -#: grub-core/kern/sparc64/dl.c:180 grub-core/kern/x86_64/dl.c:110 -#: util/grub-mkimagexx.c:756 util/grub-mkimagexx.c:881 -#: util/grub-mkimagexx.c:945 util/grub-mkimagexx.c:1026 -#: util/grub-mkimagexx.c:1120 util/grub-mkimagexx.c:1222 -#: util/grub-mkimagexx.c:1413 util/grub-mkimagexx.c:1628 -#: util/grub-mkimagexx.c:1665 util/grub-mkimagexx.c:1697 -#: util/grub-mkimagexx.c:1767 util/grub-mkimagexx.c:1797 -#, c-format -msgid "relocation 0x%x is not implemented yet" -msgstr "נעוּזוּועִישוּנג 0כּס%x ִישת נוֹצה נִיצהת ִימפּלעמענתִיערת" - -#: grub-core/efiemu/loadcore.c:200 grub-core/efiemu/loadcore.c:237 -#: grub-core/loader/i386/bsdXX.c:317 util/grub-mkimagexx.c:2360 -msgid "no symbol table" -msgstr "×›Ö¼×¢Ö´×™× ×¢ שיִמבּוֹלת×בּעללע" - -#: grub-core/efiemu/loadcore.c:346 grub-core/kern/dl.c:609 -#: grub-core/loader/ia64/efi/linux.c:345 grub-core/loader/mips/linux.c:248 -#: grub-core/loader/multiboot_elfxx.c:76 -#: grub-core/loader/powerpc/ieee1275/linux.c:280 -#: grub-core/loader/sparc64/ieee1275/linux.c:320 -msgid "this ELF file is not of the right type" -msgstr "דִיעשע עלפֿ-ד×תעִי ִישת בֿוֹמ פֿ×לשצהענ תיִפּ" - -#: grub-core/efiemu/main.c:313 -msgid "Load and initialize EFI emulator." -msgstr "עפִֿי-עמוּל×תוֹר ל×דענ וּנד ִינִיתִי×לִישִיערענ." - -#: grub-core/efiemu/main.c:317 -msgid "Finalize loading of EFI emulator." -msgstr "ל×דענ דעש עפִֿי-עמוּל×תוֹרש פִֿינ×לִישִיערענ." - -#: grub-core/efiemu/main.c:320 -msgid "Unload EFI emulator." -msgstr "עפִֿי-וּמגעבּוּנג ענתל×דענ." - -#: grub-core/efiemu/symbols.c:92 grub-core/kern/dl.c:376 -#, c-format -msgid "symbol `%s' not found" -msgstr "שיִמבּוֹל »%s« נִיצהת געפֿוּנדענ" - -#: grub-core/font/font_cmd.c:52 -msgid "Loaded fonts:" -msgstr "געל×דענע שצהרִיפֿתענ" - -#: grub-core/font/font_cmd.c:74 -msgid "FILE..." -msgstr "ד×תעִי…" - -#: grub-core/font/font_cmd.c:75 -msgid "Specify one or more font files to load." -msgstr "×¢Ö´×™× ×¢ וֹדער מעהרערע זוּ ל×דענדע שצהרִיפֿתד×תעִיענ ×נגעבּענ." - -#: grub-core/font/font_cmd.c:78 -msgid "List the loaded fonts." -msgstr "דִיע געל×דענענ שצהרִיפֿתענ ×וּפֿלִישתענ." - -#: grub-core/fs/archelp.c:216 grub-core/fs/archelp.c:278 -#: grub-core/fs/btrfs.c:1815 grub-core/fs/fshelp.c:227 grub-core/fs/jfs.c:736 -#: grub-core/fs/minix.c:369 grub-core/fs/ufs.c:454 -msgid "too deep nesting of symlinks" -msgstr "זוּ תִיעפֿ בֿערשצה×צהתעלתע שיִמבּוֹלִישצהע בֿערכּנֻפּפֿוּנגענ" - -#: grub-core/fs/bfs.c:228 grub-core/fs/fshelp.c:368 grub-core/fs/minix.c:270 -#: grub-core/kern/file.c:156 -msgid "attempt to read past the end of file" -msgstr "בֿערשוּצה, הִינתער דעמ ענדע דער ד×תעִי זוּ לעשענ" - -#: grub-core/fs/btrfs.c:1698 grub-core/fs/btrfs.c:1957 -#: grub-core/fs/fshelp.c:189 grub-core/fs/fshelp.c:309 grub-core/fs/jfs.c:431 -#: grub-core/fs/minix.c:414 grub-core/fs/minix.c:562 -#: grub-core/fs/reiserfs.c:732 grub-core/fs/ufs.c:531 grub-core/fs/ufs.c:671 -#: grub-core/fs/zfs/zfs.c:2831 grub-core/fs/zfs/zfs.c:4247 -msgid "not a directory" -msgstr "ִישת ×›Ö¼×¢Ö´×™×  בֿערזעִיצהנִיש" - -#: grub-core/fs/btrfs.c:2063 grub-core/fs/fshelp.c:307 grub-core/fs/jfs.c:835 -#: grub-core/fs/zfs/zfs.c:3801 -msgid "not a regular file" -msgstr "×›Ö¼×¢Ö´×™× ×¢ רעגוּלֶרע ד×תעִי" - -#: grub-core/fs/btrfs.c:2157 grub-core/fs/zfs/zfs.c:4333 -#: grub-core/partmap/msdos.c:400 -msgid "your core.img is unusually large. It won't fit in the embedding area" -msgstr "" -"ִיהרע ד×תעִי צוֹרע.ִימג ִישת וּנגעוֵהנלִיצה גרוֹסס. שִיע וֻרדע נִיצהת Ö´×™×  דענ " -"עִינבּעתתוּנגשבּערעִיצה פּ×ששענ." - -#: grub-core/fs/fshelp.c:281 grub-core/fs/minix.c:630 grub-core/fs/ufs.c:661 -#: grub-core/fs/ufs.c:757 grub-core/kern/fs.c:168 grub-core/kern/fs.c:180 -#, c-format -msgid "invalid file name `%s'" -msgstr "וּנגֻלתִיגער ד×תעִינ×מע »%s«" - -#: grub-core/fs/zfs/zfs.c:453 -msgid "checksum verification failed" -msgstr "פּרֻפֿשוּממענבֿערגלעִיצה ִישת געשצהעִיתערת" - -#: grub-core/fs/zfs/zfs.c:1465 -msgid "couldn't find a necessary member device of multi-device filesystem" -msgstr "" -"תעִילגערֶת עִינעש ֻבּער מעהרערע גערֶתע בֿערתעִילתענ ד×תעִישיִשתעמש כּוֹננתע נִיצהת " -"געפֿוּנדענ וערדענ" - -#: grub-core/fs/zfs/zfscrypt.c:292 -msgid "no decryption key available" -msgstr "×›Ö¼×¢Ö´×™×  שצהלֻששעל בֿערפֻֿגבּ×ר" - -#: grub-core/fs/zfs/zfscrypt.c:304 -msgid "MAC verification failed" -msgstr "מ×צ-ֻבּערפּרֻפֿוּנג ִישת געשצהעִיתערת" - -#: grub-core/fs/zfs/zfscrypt.c:413 -msgid "Assume input is raw." -msgstr "×¢Ö´×™× ×’×בּע וִירד ×לש ר×ו ×נגענוֹממענ." - -#: grub-core/fs/zfs/zfscrypt.c:414 -msgid "Assume input is hex." -msgstr "×¢Ö´×™× ×’×בּע וִירד ×לש העכּס×דעזִימ×ל ×נגענוֹממענ." - -#: grub-core/fs/zfs/zfscrypt.c:415 -msgid "Assume input is passphrase." -msgstr "×¢Ö´×™× ×’×בּע וִירד ×לש כּעננווֹרת ×נגענוֹממענ." - -#: grub-core/fs/zfs/zfscrypt.c:437 util/grub-fstest.c:553 util/grub-mount.c:483 -msgid "Enter ZFS password: " -msgstr "זפֿש-פּ×ששווֹרת עִינגעבּענ:" - -#: grub-core/fs/zfs/zfscrypt.c:476 -msgid "[-h|-p|-r] [FILE]" -msgstr "[-×”|-פּ|-ר] [ד×תעִי]" - -#: grub-core/fs/zfs/zfscrypt.c:477 -msgid "Import ZFS wrapping key stored in FILE." -msgstr "Ö´×™×  ד×תעִי געשפּעִיצהערתענ זפֿש-ור×פּפִּינג-שצהלֻששעל ִימפּוֹרתִיערענ" - -#: grub-core/fs/zfs/zfsinfo.c:51 -msgid "Virtual device is removed" -msgstr "בִֿירתוּעללעש גערֶת ווּרדע ענתפֿערנת" - -#: grub-core/fs/zfs/zfsinfo.c:57 -msgid "Virtual device is faulted" -msgstr "בִֿירתוּעללעש גערֶת ִישת געשצהעִיתערת" - -#: grub-core/fs/zfs/zfsinfo.c:63 -msgid "Virtual device is offline" -msgstr "בִֿירתוּעללעש גערֶת ִישת וֹפֿפֿלִינע" - -#. TRANSLATORS: degraded doesn't mean broken but that some of -#. component are missing but virtual device as whole is still usable. -#: grub-core/fs/zfs/zfsinfo.c:70 -msgid "Virtual device is degraded" -msgstr "בִֿירתוּעללעש גערֶת ִישת נִיצהת בֿערפֻֿגבּ×ר" - -#: grub-core/fs/zfs/zfsinfo.c:73 -msgid "Virtual device is online" -msgstr "בִֿירתוּעללעש גערֶת ִישת וֹנלִינע" - -#: grub-core/fs/zfs/zfsinfo.c:89 -msgid "Incorrect virtual device: no type available" -msgstr "ִינכּוֹררעכּתעש בִֿירתוּעללעש גערֶת: ×›Ö¼×¢Ö´×™×  תיִפּ בֿערפֻֿגבּ×ר" - -#. TRANSLATORS: The virtual devices form a tree (in graph-theoretical -#. sense). The nodes like mirror or raidz have children: member devices. -#. The "real" devices which actually store data are called "leafs" -#. (again borrowed from graph theory) and can be either disks -#. (or partitions) or files. -#: grub-core/fs/zfs/zfsinfo.c:105 -msgid "Leaf virtual device (file or disk)" -msgstr "בִֿירתוּעללעש גערֶת דוּרצהשוּצהענ (ד×תעִי וֹדער ל×וּפֿוערכּ)" - -#: grub-core/fs/zfs/zfsinfo.c:113 -msgid "Bootpath: unavailable\n" -msgstr "בּוֹוֹת-פּפֿ×ד: נִיצהת בֿערפֻֿגבּ×ר\n" - -#: grub-core/fs/zfs/zfsinfo.c:115 -#, c-format -msgid "Bootpath: %s\n" -msgstr "בּוֹוֹת-פּפֿ×ד: %s\n" - -#: grub-core/fs/zfs/zfsinfo.c:120 -msgid "Path: unavailable" -msgstr "פּפֿ×ד: נִיצהת בֿערפֻֿגבּ×ר" - -#: grub-core/fs/zfs/zfsinfo.c:122 -#, c-format -msgid "Path: %s\n" -msgstr "פּפֿ×ד: %s\n" - -#: grub-core/fs/zfs/zfsinfo.c:127 -msgid "Devid: unavailable" -msgstr "גערֶתעכּעננוּנג: נִיצהת בֿערפֻֿגבּ×ר" - -#: grub-core/fs/zfs/zfsinfo.c:129 -#, c-format -msgid "Devid: %s\n" -msgstr "גערֶתעכּעננוּנג: %s\n" - -#: grub-core/fs/zfs/zfsinfo.c:148 -msgid "This VDEV is a mirror" -msgstr "דִיעשעש בֿדעבֿ ִישת ×¢Ö´×™×  שפִּיעגעל" - -#: grub-core/fs/zfs/zfsinfo.c:153 -#, c-format -msgid "This VDEV is a RAIDZ%llu\n" -msgstr "דִיעשעש בֿדעבֿ ִישת ×¢Ö´×™×  ר×ִידז%llu\n" - -#: grub-core/fs/zfs/zfsinfo.c:158 -msgid "Incorrect VDEV" -msgstr "וּנגֻלתִיגעש בֿדעבֿ" - -#: grub-core/fs/zfs/zfsinfo.c:161 -#, c-format -msgid "VDEV with %d children\n" -msgstr "בֿדעבֿ מִית %d כִּינדעלעמענתענ\n" - -#. TRANSLATORS: it's the element carying the number %d, not -#. total element number. And the number itself is fine, -#. only the element isn't. -#. -#: grub-core/fs/zfs/zfsinfo.c:177 -#, c-format -msgid "VDEV element number %d isn't correct\n" -msgstr "בֿדעבֿ-עלעמענתנוּממער %d ִישת נִיצהת כּוֹררעכּת\n" - -#. TRANSLATORS: it's the element carying the number %d, not -#. total element number. This is used in enumeration -#. "Element number 1", "Element number 2", ... -#: grub-core/fs/zfs/zfsinfo.c:184 -#, c-format -msgid "VDEV element number %d:\n" -msgstr "בֿדעבֿ-עלעמענתנוּממער %d:\n" - -#: grub-core/fs/zfs/zfsinfo.c:193 -#, c-format -msgid "Unknown virtual device type: %s\n" -msgstr "תיִפּ דעש בִֿירתוּעללענ גערֶתעש ִישת וּנבּעכּ×ננת: %s\n" - -#. TRANSLATORS: Here we speak about ZFS pools it's semi-marketing, -#. semi-technical term by Sun/Oracle and should be translated in sync with -#. other ZFS-related software and documentation. -#: grub-core/fs/zfs/zfsinfo.c:254 -msgid "Pool state: active" -msgstr "פּוֹוֹל-שת×תוּש: ×כּתִיבֿ" - -#: grub-core/fs/zfs/zfsinfo.c:255 -msgid "Pool state: exported" -msgstr "פּוֹוֹל-שת×תוּש: עכּספּוֹרתִיערת" - -#: grub-core/fs/zfs/zfsinfo.c:256 -msgid "Pool state: destroyed" -msgstr "פּוֹוֹל-שת×תוּש: זערשתֵרת" - -#: grub-core/fs/zfs/zfsinfo.c:257 -msgid "Pool state: reserved for hot spare" -msgstr "פּוֹוֹל-שת×תוּש: פֻֿר הוֹתשפּ×רע רעשערבִֿיערת" - -#: grub-core/fs/zfs/zfsinfo.c:258 -msgid "Pool state: level 2 ARC device" -msgstr "פּוֹוֹל-שת×תוּש: ×רצ-גערֶת, לעבֿעל 2" - -#: grub-core/fs/zfs/zfsinfo.c:259 -msgid "Pool state: uninitialized" -msgstr "פּוֹוֹל-שת×תוּש: נִיצהת ִינִיתִי×לִישִיערת" - -#: grub-core/fs/zfs/zfsinfo.c:260 -msgid "Pool state: unavailable" -msgstr "פּוֹוֹל-שת×תוּש: נִיצהת בֿערפֻֿגבּ×ר" - -#: grub-core/fs/zfs/zfsinfo.c:261 -msgid "Pool state: potentially active" -msgstr "פּוֹוֹל-שת×תוּש: פּוֹתענזִיעלל ×כּתִיבֿ" - -#: grub-core/fs/zfs/zfsinfo.c:306 -msgid "Pool name: unavailable" -msgstr "פּוֹוֹל-× ×מע: נִיצהת בֿערפֻֿגבּ×ר" - -#: grub-core/fs/zfs/zfsinfo.c:308 -#, c-format -msgid "Pool name: %s\n" -msgstr "פּוֹוֹל-× ×מע: %s\n" - -#: grub-core/fs/zfs/zfsinfo.c:313 -msgid "Pool GUID: unavailable" -msgstr "פּוֹוֹל-גוִּיד: נִיצהת בֿערפֻֿגבּ×ר" - -#: grub-core/fs/zfs/zfsinfo.c:315 -#, c-format -msgid "Pool GUID: %016llx\n" -msgstr "פּוֹוֹל-גוִּיד: %016llx\n" - -#: grub-core/fs/zfs/zfsinfo.c:320 -msgid "Unable to retrieve pool state" -msgstr "פּוֹוֹל-שת×תוּש כּוֹננתע נִיצהת ערמִיתתעלת וערדענ" - -#: grub-core/fs/zfs/zfsinfo.c:322 -msgid "Unrecognized pool state" -msgstr "פּוֹוֹל-שת×תוּש נִיצהת ערכּ×ננת" - -#. TRANSLATORS: There are undetermined number of virtual devices -#. in a device tree, not just one. -#. -#: grub-core/fs/zfs/zfsinfo.c:332 -msgid "No virtual device tree available" -msgstr "×›Ö¼×¢Ö´×™×  בּ×וּמ בִֿירתוּעללער גערֶתע בֿערפֻֿגבּ×ר" - -#: grub-core/fs/zfs/zfsinfo.c:431 -msgid "Print ZFS info about DEVICE." -msgstr "זפֿש-ִינפֿוֹ זוּ גערֶת ×וּשגעבּענ." - -#: grub-core/fs/zfs/zfsinfo.c:433 -msgid "FILESYSTEM [VARIABLE]" -msgstr "ד×תעִישיִשתעמ [בֿ×רִי×בּלע]" - -#: grub-core/fs/zfs/zfsinfo.c:434 -msgid "Print ZFS-BOOTFSOBJ or store it into VARIABLE" -msgstr "זפֿש-בּוֹוֹתפֿשוֹבּי ×וּשגעבּענ וֹדער ×לש בֿ×רִי×בּלע שעתזענ" - -#. TRANSLATORS: at this position GRUB waits for the user to do an action -#. in remote debugger, namely to tell it to establish connection. -#: grub-core/gdb/gdb.c:48 -msgid "Now connect the remote debugger, please." -msgstr "בִּיתתע בֿערבִּינדענ שִיע נוּנ ×¢Ö´×™× ×¢×  ענתפֿערנתענ דעבּוּגגער." - -#. TRANSLATORS: GDB stub is a small part of -#. GDB functionality running on local host -#. which allows remote debugger to -#. connect to it. -#: grub-core/gdb/gdb.c:84 -msgid "Start GDB stub on given port" -msgstr "גדבּ-שתוּבּ ×וּפֿ דעמ ×נגעגעבּענענ פּוֹרת שת×רתענ" - -#. TRANSLATORS: this refers to triggering -#. a breakpoint so that the user will land -#. into GDB. -#: grub-core/gdb/gdb.c:89 -msgid "Break into GDB" -msgstr "×”×לתעפּוּנכּת פֻֿר גדבּ ×וּשלֵשענ" - -#: grub-core/gdb/gdb.c:91 -msgid "Stop GDB stub" -msgstr "גדבּ-שתוּבּ שתוֹפּפּענ" - -#: grub-core/gettext/gettext.c:85 -msgid "premature end of file" -msgstr "בֿוֹרזעִיתִיגעש ענדע דער ד×תעִי" - -#. TRANSLATORS: It refers to passing the string through gettext. -#. So it's "translate" in the same meaning as in what you're -#. doing now. -#. -#: grub-core/gettext/gettext.c:525 -msgid "Translates the string with the current settings." -msgstr "ֻבּערשעתזת דִיע זעִיצהענכּעתתע ×× ×”×נד דענ ×כּתוּעללענ עִינשתעללוּנגענ." - -#: grub-core/gfxmenu/gui_label.c:186 grub-core/normal/menu_text.c:184 -msgid "" -"Press enter to boot the selected OS, `e' to edit the commands before booting " -"or `c' for a command-line. ESC to return previous menu." -msgstr "" -"»ענתער« זוּמ בּוֹוֹתענ דעש מ×רכִּיערתענ בּעתרִיעבּששיִשתעמש, »ע« זוּמ בּע×רבּעִיתענ דער " -"בּעפֿעהלע בֿוֹר דעמ בּוֹוֹתענ וֹדער »צ« פֻֿר ×¢Ö´×™× ×¢ בּעפֿעהלשזעִילע. מִית »עשצ« כּעהרענ שִיע " -"זוּמ בֿוֹרהערִיגענ מענֻ זוּרֻצכּ." - -#: grub-core/gfxmenu/gui_label.c:190 grub-core/normal/menu_text.c:192 -msgid "" -"Press enter to boot the selected OS, `e' to edit the commands before booting " -"or `c' for a command-line." -msgstr "" -"»ענתער« זוּמ בּוֹוֹתענ דעש מ×רכִּיערתענ בּעתרִיעבּששיִשתעמש, »ע« זוּמ בּע×רבּעִיתענ דער " -"בּעפֿעהלע בֿוֹר דעמ בּוֹוֹתענ וֹדער »צ« פֻֿר ×¢Ö´×™× ×¢ בּעפֿעהלשזעִילע." - -#: grub-core/gfxmenu/gui_label.c:194 -msgid "enter: boot, `e': options, `c': cmd-line" -msgstr "ענתער: בּוֹוֹתענ, »ע«: וֹפּתִיוֹנענ, »צ«: בּעפֿעהלשזעִילע" - -#: grub-core/gfxmenu/gui_progress_bar.c:339 grub-core/normal/menu_text.c:446 -#, c-format -msgid "The highlighted entry will be executed automatically in %ds." -msgstr "דער הערבֿוֹרגעהוֹבּענע עִינתר××’ וִירד ×וּתוֹמ×תִישצה Ö´×™×  %dש ×וּשגעפֻֿהרת." - -#. TRANSLATORS: 's' stands for seconds. -#. It's a standalone timeout notification. -#. Please use the short form in your language. -#: grub-core/gfxmenu/gui_progress_bar.c:344 -#, c-format -msgid "%ds remaining." -msgstr "%dש בֿערבּלעִיבּענד." - -#. TRANSLATORS: 's' stands for seconds. -#. It's a standalone timeout notification. -#. Please use the shortest form available in you language. -#: grub-core/gfxmenu/gui_progress_bar.c:349 grub-core/normal/menu_text.c:444 -#: grub-core/normal/menu_text.c:462 -#, c-format -msgid "%ds" -msgstr "%dש" - -#: grub-core/gfxmenu/view.c:103 -msgid "GRUB Boot Menu" -msgstr "גרוּבּ-בּוֹוֹתמענֻ" - -#: grub-core/hello/hello.c:36 -msgid "Hello World" -msgstr "×”×ללוֹ ועלת" - -#: grub-core/hello/hello.c:45 -msgid "Say `Hello World'." -msgstr "»ה×ללוֹ ועלת« ×וּשגעבּענ." - -#: grub-core/io/gzio.c:409 grub-core/kern/file.c:210 -msgid "attempt to seek outside of the file" -msgstr "בֿערשוּצה, ×וּססערה×לבּ דער ד×תעִי זוּ שוּצהענ" - -#. TRANSLATORS: It's about given file having some strange format, not -#. complete lack of gzip support. -#: grub-core/io/gzio.c:1228 grub-core/io/gzio.c:1237 grub-core/io/gzio.c:1244 -msgid "unsupported gzip format" -msgstr "נִיצהת וּנתערשתֻתזתעש גזִיפּ-פֿוֹרמ×ת" - -#: grub-core/io/lzopio.c:511 -msgid "lzop file corrupted" -msgstr "לזוֹפּ-ד×תעִי ִישת בּעשצהֶדִיגת" - -#: grub-core/io/xzio.c:278 -msgid "xz file corrupted or unsupported block options" -msgstr "כּסז-ד×תעִי ִישת בּעשצהֶדִיגת וֹדער בּלוֹצכּוֹפּתִיוֹנענ וערדענ נִיצהת וּנתערשתֻתזת" - -#: grub-core/kern/arm/dl.c:277 grub-core/kern/arm64/dl.c:44 -#: grub-core/kern/i386/dl.c:36 grub-core/kern/ia64/dl.c:41 -#: grub-core/kern/mips/dl.c:48 grub-core/kern/powerpc/dl.c:36 -#: grub-core/kern/riscv/dl.c:47 grub-core/kern/sparc64/dl.c:36 -#: grub-core/kern/x86_64/dl.c:36 grub-core/loader/i386/bsd.c:1445 -#: grub-core/loader/i386/bsdXX.c:49 grub-core/loader/ia64/efi/linux.c:341 -#: grub-core/loader/mips/linux.c:298 grub-core/loader/multiboot.c:232 -#: grub-core/loader/multiboot_elfxx.c:73 -#: grub-core/loader/powerpc/ieee1275/linux.c:294 -#: grub-core/loader/sparc64/ieee1275/linux.c:331 -msgid "invalid arch-dependent ELF magic" -msgstr "וּנגֻלתִיגעש עלפֿ-מ×גִיצ (×רצהִיתעכּתוּר×בּהֶנגִיג)" - -#: grub-core/kern/corecmd.c:178 -msgid "[ENVVAR=VALUE]" -msgstr "[וּמגבֿ×ר=וערת]" - -#: grub-core/kern/corecmd.c:179 -msgid "Set an environment variable." -msgstr "×¢Ö´×™× ×¢ וּמגעבּוּנגשבֿ×רִי×בּלע פֿעשתלעגענ." - -#: grub-core/kern/corecmd.c:183 -msgid "ENVVAR" -msgstr "וּמגבֿ×ר" - -#: grub-core/kern/corecmd.c:184 -msgid "Remove an environment variable." -msgstr "×¢Ö´×™× ×¢ וּמגעבּוּנגשבֿ×רִי×בּלע לֵשצהענ." - -#: grub-core/kern/corecmd.c:186 -msgid "[ARG]" -msgstr "[×רג]" - -#: grub-core/kern/corecmd.c:186 -msgid "List devices or files." -msgstr "גערֶתע וֹדער ד×תעִיענ ×וּפֿלִישתענ." - -#: grub-core/kern/corecmd.c:188 -msgid "Insert a module." -msgstr "×¢Ö´×™×  מוֹדוּל עִינפֻֿגענ." - -#: grub-core/kern/disk.c:236 grub-core/net/net.c:1390 -#, c-format -msgid "disk `%s' not found" -msgstr "ל×וּפֿוערכּ »%s« ווּרדע נִיצהת געפֿוּנדענ." - -#: grub-core/kern/disk_common.c:27 -msgid "attempt to read or write outside of partition" -msgstr "בֿערשוּצה, ×וּססערה×לבּ דער פּ×רתִיתִיוֹנ זוּ לעשענ וֹדער זוּ שצהרעִיבּענ" - -#: grub-core/kern/dl.c:212 grub-core/kern/elf.c:61 grub-core/kern/elf.c:79 -#: grub-core/loader/i386/bsdXX.c:46 grub-core/loader/ia64/efi/linux.c:335 -#: grub-core/loader/multiboot_elfxx.c:69 -msgid "invalid arch-independent ELF magic" -msgstr "וּנגֻלתִיגעש עלפֿ-מ×גִיצ (×רצהִיתעכּתוּרוּנ×בּהֶנגִיג)" - -#. TRANSLATORS: it refers to the lack of free slots. -#: grub-core/kern/emu/hostdisk.c:208 grub-core/kern/emu/hostdisk.c:466 -msgid "device count exceeds limit" -msgstr "גערֶתע×× ×–×הל ֻבּערשתעִיגת דִיע גרענזענ" - -#: grub-core/kern/emu/hostdisk.c:342 util/editenv.c:54 util/grub-editenv.c:197 -#: util/grub-fstest.c:191 util/grub-mkfont.c:796 util/misc.c:114 -#: util/misc.c:129 util/setup.c:788 -#, c-format -msgid "cannot write to `%s': %s" -msgstr "×וּפֿ »%s« ×›Ö¼×× ×  נִיצהת געשצהרִיעבּענ וערדענ: %s" - -#. TRANSLATORS: Only one entry is ignored. However the suggestion -#. is to correct/delete the whole file. -#. device.map is a file indicating which -#. devices are available at boot time. Fedora populated it with -#. entries like (hd0,1) /dev/sda1 which would mean that every -#. partition is a separate disk for BIOS. Such entries were -#. inactive in GRUB due to its bug which is now gone. Without -#. this additional check these entries would be harmful now. -#. -#: grub-core/kern/emu/hostdisk.c:503 -#, c-format -msgid "" -"the device.map entry `%s' is invalid. Ignoring it. Please correct or delete " -"your device.map" -msgstr "" -"דער דעבִֿיצע.מ×פּ-עִינתר××’ »%s« ִישת וּנגֻלתִיג, וִירד ִיגנוֹרִיערת. בִּיתתע כּוֹררִיגִיערענ " -"וֹדער לֵשצהענ שִיע ִיהרע דעבִֿיצע.מ×פּ" - -#. TRANSLATORS: device.map is a filename. Not to be translated. -#. device.map specifies disk correspondance overrides. Previously -#. one could create any kind of device name with this. Due to -#. some problems we decided to limit it to just a handful -#. possibilities. -#: grub-core/kern/emu/hostdisk.c:555 -#, c-format -msgid "" -"the drive name `%s' in device.map is incorrect. Using %s instead. Please use " -"the form [hfc]d[0-9]* (E.g. `hd0' or `cd')" -msgstr "" -"דער ל×וּפֿוערכּשנ×מע »%s« Ö´×™×  דעבִֿיצע.מ×פּ ִישת ִינכּוֹררעכּת. %s וִירד שת×תתדעששענ " -"בֿערוענדעת. בִּיתתע בֿערוענדענ שִיע דִיע פֿוֹרמ [הפֿצ]ד[0-9]* (×–.בּ. »הד0« וֹדער »צד«)" - -#: grub-core/kern/emu/hostfs.c:76 grub-core/kern/emu/hostfs.c:109 -#, c-format -msgid "can't open `%s': %s" -msgstr "»%s« ×›Ö¼×× ×  נִיצהת געֵפֿפֿנעת וערדענ: %s" - -#: grub-core/kern/emu/main.c:99 util/grub-fstest.c:516 util/grub-mount.c:452 -msgid "DEVICE_NAME" -msgstr "גערֶתענ×מע" - -#: grub-core/kern/emu/main.c:99 grub-core/loader/i386/bsd.c:136 -#: grub-core/loader/i386/bsd.c:169 util/grub-fstest.c:516 util/grub-mount.c:452 -msgid "Set root device." -msgstr "רוֹוֹת-גערֶת פֿעשתלעגענ." - -#. TRANSLATORS: There are many devices in device map. -#: grub-core/kern/emu/main.c:102 util/grub-probe.c:733 util/grub-setup.c:85 -#, c-format -msgid "use FILE as the device map [default=%s]" -msgstr "ד×תעִי ×לש גערֶתעזוּוֹרדנוּנג בֿערוענדענ [בֿוֹרג×בּע=%s]" - -#. TRANSLATORS: There are many devices in device map. -#: grub-core/kern/emu/main.c:105 -msgid "use FILE as memdisk" -msgstr "ד×תעִי ×לש מעמדִישכּ-×בּבִּילד בֿערוענדענ" - -#: grub-core/kern/emu/main.c:107 util/grub-setup.c:83 -#, c-format -msgid "use GRUB files in the directory DIR [default=%s]" -msgstr "גרוּבּ-ד×תעִיענ ִימ בֿערזעִיצהנִיש בֿערז בֿערוענדענ [בֿוֹרג×בּע=%s]" - -#: grub-core/kern/emu/main.c:108 include/grub/util/install.h:67 -#: util/grub-editenv.c:58 util/grub-fstest.c:525 util/grub-glue-efi.c:58 -#: util/grub-macbless.c:104 util/grub-mkfont.c:962 util/grub-mkimage.c:84 -#: util/grub-mklayout.c:56 util/grub-mount.c:458 util/grub-probe.c:735 -#: util/grub-render-label.c:74 util/grub-script-check.c:52 util/grub-setup.c:90 -#: util/grub-syslinux2cfg.c:78 -msgid "print verbose messages." -msgstr "×וּשפֻֿהרלִיצהע מעלדוּנגענ ×וּשגעבּענ." - -#: grub-core/kern/emu/main.c:109 grub-core/lib/gnulib/argp-parse.c:85 -msgid "SECS" -msgstr "שעכּ" - -#: grub-core/kern/emu/main.c:109 -msgid "wait until a debugger will attach" -msgstr "ו×רתענ, בִּיש ×¢Ö´×™×  דעבּוּגגער עִינכּלִינכּת" - -#: grub-core/kern/emu/main.c:171 util/grub-macbless.c:143 -#: util/grub-mkrelpath.c:61 util/grub-probe.c:874 util/grub-script-check.c:75 -#: util/grub-setup.c:203 -#, c-format -msgid "Unknown extra argument `%s'." -msgstr "וּנבּעכּ×ננתעש זוּשֶתזלִיצהעש ×רגוּמענת »%s«." - -#: grub-core/kern/emu/main.c:185 -msgid "GRUB emulator." -msgstr "גרוּבּ-עמוּל×תוֹר." - -#: grub-core/kern/emu/main.c:213 util/grub-editenv.c:262 -#: util/grub-glue-efi.c:110 util/grub-macbless.c:173 util/grub-mkfont.c:1177 -#: util/grub-mkimage.c:266 util/grub-mklayout.c:494 -#: util/grub-mkpasswd-pbkdf2.c:132 util/grub-mkrelpath.c:96 -#: util/grub-probe.c:863 util/grub-render-label.c:152 -#: util/grub-script-check.c:160 util/grub-setup.c:262 -#: util/grub-syslinux2cfg.c:163 -msgid "Error in parsing command line arguments\n" -msgstr "פֿעהלער בּעִימ עִינלעשענ דער בּעפֿעהלשזעִילענ×רגוּמענתע\n" - -#. TRANSLATORS: In this case GRUB tells user what he has to do. -#: grub-core/kern/emu/main.c:248 -#, c-format -msgid "Run `gdb %s %d', and set ARGS.HOLD to zero.\n" -msgstr "רוּפֿענ שִיע »גדבּ %s %d« ×וּפֿ וּנד שעתזענ שִיע ×רגש.הוֹלד ×וּפֿ נוּלל.\n" - -#: grub-core/kern/emu/misc.c:48 -#, c-format -msgid "%s: warning:" -msgstr "%s: ו×רנוּנג:" - -#: grub-core/kern/emu/misc.c:64 -#, c-format -msgid "%s: info:" -msgstr "%s: ִינפֿוֹ:" - -#: grub-core/kern/emu/misc.c:79 util/grub-fstest.c:567 util/grub-fstest.c:576 -#: util/grub-mount.c:497 util/grub-mount.c:505 -#, c-format -msgid "%s: error:" -msgstr "%s: פֿעהלער:" - -#: grub-core/kern/emu/misc.c:176 -#, c-format -msgid "file `%s' is too big" -msgstr "ד×תעִי »%s« ִישת זוּ גרוֹסס" - -#: grub-core/kern/fs.c:120 -msgid "unknown filesystem" -msgstr "וּנבּעכּ×ננתעש ד×תעִישיִשתעמ" - -#: grub-core/kern/mips/arc/init.c:273 grub-core/kern/mips/loongson/init.c:301 -msgid "Shutdown failed" -msgstr "הערוּנתערפֿ×הרענ ִישת געשצהעִיתערת" - -#: grub-core/kern/mips/arc/init.c:285 -msgid "Exit failed" -msgstr "בּעענדענ ִישת געשצהעִיתערת" - -#: grub-core/kern/misc.c:351 grub-core/kern/misc.c:408 include/grub/misc.h:269 -#: include/grub/misc.h:278 -msgid "overflow is detected" -msgstr "ֻבּערל×וּפֿ ווּרדע ערכּ×ננת" - -#: grub-core/kern/partition.c:51 grub-core/partmap/bsdlabel.c:108 -#, c-format -msgid "Discarding improperly nested partition (%s,%s,%s%d)" -msgstr "וּנש×וּבּער עִינגעבּעתתעתע פּ×רתִיתִיוֹנ וִירד בֿערווֹרפֿענ (%s,%s,%s%d)" - -#: grub-core/kern/rescue_parser.c:73 util/grub-editenv.c:292 -#, c-format -msgid "Unknown command `%s'.\n" -msgstr "וּנבּעכּ×ננתער בּעפֿעהל »%s«.\n" - -#: grub-core/lib/arg.c:31 -msgid "Display this help and exit." -msgstr "דִיעשע הִילפֿע ×× ×–×¢Ö´×™×’×¢×  וּנד בּעענדענ." - -#: grub-core/lib/arg.c:33 -msgid "Display the usage of this command and exit." -msgstr "בּענוּתזוּנג דִיעשעש בּעפֿעהלש ×× ×–×¢Ö´×™×’×¢×  וּנד בּעענדענ." - -#: grub-core/lib/arg.c:362 -#, c-format -msgid "missing mandatory option for `%s'" -msgstr "וֹבּלִיג×תוֹרִישצהע וֹפּתִיוֹנ פֻֿר »%s« פֿעהלת" - -#: grub-core/lib/arg.c:384 -#, c-format -msgid "the argument `%s' requires an integer" -msgstr "ד×ש ×רגוּמענת »%s« בּענֵתִיגת ×¢Ö´×™× ×¢ ×’×× ×–×–×הל" - -#: grub-core/lib/arg.c:407 -#, c-format -msgid "" -"a value was assigned to the argument `%s' while it doesn't require an " -"argument" -msgstr "×¢Ö´×™×  ×רגוּמענת ווּרדע »%s« זוּגעוֹרדנעת, וֹבּווֹהל עש ×›Ö¼×¢Ö´×™×  ×רגוּמענת ערו×רתעת" - -#: grub-core/lib/backtrace.c:64 -msgid "Print backtrace." -msgstr "בּ×צכּתר×צע ×וּשגעבּענ." - -#: grub-core/lib/gnulib/argp-help.c:149 -#, c-format -msgid "ARGP_HELP_FMT: %s value is less than or equal to %s" -msgstr "×רגפּ_העלפּ_פֿמת: וערת %s ִישת כּלעִינער וֹדער גלעִיצה %s" - -#: grub-core/lib/gnulib/argp-help.c:225 -#, c-format -msgid "%.*s: ARGP_HELP_FMT parameter requires a value" -msgstr "%.*s: פּ×ר×מעתער פֻֿר ×רגפּ_העלפּ_פֿמת בּענֵתִיגת ×¢Ö´×™× ×¢×  וערת" - -#: grub-core/lib/gnulib/argp-help.c:235 -#, c-format -msgid "%.*s: Unknown ARGP_HELP_FMT parameter" -msgstr "%.*s: וּנבּעכּ×ננתער פּ×ר×מעתער פֻֿר ×רגפּ_העלפּ_פֿמת" - -#: grub-core/lib/gnulib/argp-help.c:248 -#, c-format -msgid "Garbage in ARGP_HELP_FMT: %s" -msgstr "וּנשִיננ Ö´×™×  ×רגפּ_העלפּ_פֿמת: %s" - -#: grub-core/lib/gnulib/argp-help.c:1229 -msgid "" -"Mandatory or optional arguments to long options are also mandatory or " -"optional for any corresponding short options." -msgstr "" -"ערפֿוֹרדערלִיצהע וֹדער וֹפּתִיוֹנ×לע ×רגוּמענתע פֻֿר ל×× ×’×¢ וֹפּתִיוֹנענ שִינד עבּענשוֹ " -"ערפֿוֹרדערלִיצה בּזו. וֹפּתִיוֹנ×ל פֻֿר דִיע ענתשפּרעצהענדענ כּוּרזוֹפּתִיוֹנענ." - -#: grub-core/lib/gnulib/argp-help.c:1620 -msgid " or: " -msgstr " וֹדער: " - -#: grub-core/lib/gnulib/argp-help.c:1632 -msgid " [OPTION...]" -msgstr " [וֹפּתִיוֹנענ …]" - -#: grub-core/lib/gnulib/argp-help.c:1659 -#, c-format -msgid "Try '%s --help' or '%s --usage' for more information.\n" -msgstr "" -"רוּפֿענ שִיע »%s --העלפּ« וֹדער »%s --וּש×גע« ×וּפֿ, וּמ ועִיתערע ִינפֿוֹרמ×תִיוֹנענ זוּ " -"ערה×לתענ.\n" - -#: grub-core/lib/gnulib/argp-help.c:1687 -#, c-format -msgid "Report bugs to %s.\n" -msgstr "בּערִיצהתענ שִיע פֿעהלער ××  %s.\n" - -#: grub-core/lib/gnulib/argp-help.c:1888 grub-core/lib/gnulib/error.c:195 -msgid "Unknown system error" -msgstr "וּנבּעכּ×ננתער שיִשתעמפֿעהלער" - -#: grub-core/lib/gnulib/argp-parse.c:81 -msgid "give this help list" -msgstr "דִיעשע הִילפֿע ×× ×–×¢Ö´×™×’×¢× " - -#: grub-core/lib/gnulib/argp-parse.c:82 -msgid "give a short usage message" -msgstr "×¢Ö´×™× ×¢ כּוּרזע הִילפֿעמעלדוּנג ×וּשגעבּענ" - -#: grub-core/lib/gnulib/argp-parse.c:83 util/grub-mkfont.c:946 -msgid "NAME" -msgstr "× ×מע" - -#: grub-core/lib/gnulib/argp-parse.c:84 -msgid "set the program name" -msgstr "פּרוֹגר×ממנ×מע פֿעשתלעגענ" - -#: grub-core/lib/gnulib/argp-parse.c:86 -msgid "hang for SECS seconds (default 3600)" -msgstr "פֻֿר שעכּ שעכּוּנדענ הֶנגענבּלעִיבּענ (בֿוֹרעִינשת.: 3600)" - -#: grub-core/lib/gnulib/argp-parse.c:143 -msgid "print program version" -msgstr "פּרוֹגר×ממבֿערשִיוֹנ ×וּשגעבּענ" - -#: grub-core/lib/gnulib/argp-parse.c:160 -msgid "(PROGRAM ERROR) No version known!?" -msgstr "(פּרוֹגר×ממפֿעהלער) ×›Ö¼×¢Ö´×™× ×¢ בֿערשִיוֹנ בּעכּ×ננת!?" - -#: grub-core/lib/gnulib/argp-parse.c:613 -#, c-format -msgid "%s: Too many arguments\n" -msgstr "%s: זוּ בִֿיעלע ×רגוּמענתע\n" - -#: grub-core/lib/gnulib/argp-parse.c:759 -msgid "(PROGRAM ERROR) Option should have been recognized!?" -msgstr "(פּרוֹגר×ממפֿעהלער) וֹפּתִיוֹנ הֶתתע ערכּ×ננת וערדענ מֻששענ!?" - -#: grub-core/lib/gnulib/getopt.c:278 -#, c-format -msgid "%s: option '%s%s' is ambiguous\n" -msgstr "%s: וֹפּתִיוֹנ »%s%s« ִישת נִיצהת עִינדעוּתִיג\n" - -#: grub-core/lib/gnulib/getopt.c:284 -#, c-format -msgid "%s: option '%s%s' is ambiguous; possibilities:" -msgstr "%s: וֹפּתִיוֹנ »%s%s« ִישת מעהרדעוּתִיג; מֵגלִיצהכּעִיתענ:" - -#: grub-core/lib/gnulib/getopt.c:319 -#, c-format -msgid "%s: unrecognized option '%s%s'\n" -msgstr "%s: וּנבּעכּ×ננתע וֹפּתִיוֹנ »%s%s«\n" - -#: grub-core/lib/gnulib/getopt.c:345 -#, c-format -msgid "%s: option '%s%s' doesn't allow an argument\n" -msgstr "%s: וֹפּתִיוֹנ »%s%s« ערל×וּבּת ×›Ö¼×¢Ö´×™×  ×רגוּמענת\n" - -#: grub-core/lib/gnulib/getopt.c:360 -#, c-format -msgid "%s: option '%s%s' requires an argument\n" -msgstr "%s: וֹפּתִיוֹנ »%s%s« ערו×רתעת ×¢Ö´×™×  ×רגוּמענת\n" - -#: grub-core/lib/gnulib/getopt.c:621 -#, c-format -msgid "%s: invalid option -- '%c'\n" -msgstr "%s: וּנגֻלתִיגע וֹפּתִיוֹנ -- »%c«\n" - -#: grub-core/lib/gnulib/getopt.c:636 grub-core/lib/gnulib/getopt.c:682 -#, c-format -msgid "%s: option requires an argument -- '%c'\n" -msgstr "%s: וֹפּתִיוֹנ ערפֿוֹרדערת ×¢Ö´×™×  ×רגוּמענת -- »%c«\n" - -#: grub-core/lib/gnulib/openat-die.c:38 -#, c-format -msgid "unable to record current working directory" -msgstr "" - -#: grub-core/lib/gnulib/openat-die.c:57 -#, c-format -msgid "failed to return to initial working directory" -msgstr "רֻצכּכּעהר זוּמ ִינִיתִי×לענ ×רבּעִיתשבֿערזעִיצהנִיש ִישת פֿעהלגעשצהל××’×¢× " - -#: grub-core/lib/gnulib/regcomp.c:135 grub-core/osdep/aros/hostdisk.c:523 -msgid "Success" -msgstr "ערפֿוֹלג" - -#: grub-core/lib/gnulib/regcomp.c:138 -msgid "No match" -msgstr "×›Ö¼×¢Ö´×™× ×¢ ֻבּערעִינשתִיממוּנג" - -#: grub-core/lib/gnulib/regcomp.c:141 -msgid "Invalid regular expression" -msgstr "וּנגֻלתִיגער רעגוּלֶרער ×וּשדרוּצכּ" - -#: grub-core/lib/gnulib/regcomp.c:144 -msgid "Invalid collation character" -msgstr "וּנגֻלתִיגעש שוֹרתִיערזעִיצהענ" - -#: grub-core/lib/gnulib/regcomp.c:147 -msgid "Invalid character class name" -msgstr "וּנגֻלתִיגער זעִיצהענכּל×ששעננ×מע" - -#: grub-core/lib/gnulib/regcomp.c:150 -msgid "Trailing backslash" -msgstr "×נגעהֶנגתער בּ×צכּשל×שה" - -#: grub-core/lib/gnulib/regcomp.c:153 -msgid "Invalid back reference" -msgstr "וּנגֻלתִיגע רֻצכּרעפֿערענז" - -#: grub-core/lib/gnulib/regcomp.c:156 -msgid "Unmatched [, [^, [:, [., or [=" -msgstr "×›Ö¼×¢Ö´×™×  געגענשתֻצכּ פֻֿר [, [^, [:, [. וֹדער [=" - -#: grub-core/lib/gnulib/regcomp.c:159 -msgid "Unmatched ( or \\(" -msgstr "×›Ö¼×¢Ö´×™×  געגענשתֻצכּ פֻֿר ( וֹדער \\(" - -#: grub-core/lib/gnulib/regcomp.c:162 -msgid "Unmatched \\{" -msgstr "×›Ö¼×¢Ö´×™×  געגענשתֻצכּ פֻֿר \\{" - -#: grub-core/lib/gnulib/regcomp.c:165 -msgid "Invalid content of \\{\\}" -msgstr "וּנגֻלתִיגער Ö´×™× ×”×לת בֿוֹנ \\{\\}" - -#: grub-core/lib/gnulib/regcomp.c:168 -msgid "Invalid range end" -msgstr "וּנגֻלתִיגעש בּערעִיצהשענדע" - -#: grub-core/lib/gnulib/regcomp.c:171 -msgid "Memory exhausted" -msgstr "שפּעִיצהער ×וּשגעשצהֵפּפֿת" - -#: grub-core/lib/gnulib/regcomp.c:174 -msgid "Invalid preceding regular expression" -msgstr "וּנגֻלתִיגער בֿוֹרהערגעהענדער רעגוּלֶרער ×וּשדרוּצכּ" - -#: grub-core/lib/gnulib/regcomp.c:177 -msgid "Premature end of regular expression" -msgstr "בֿוֹרזעִיתִיגעש ענדע דעש רעגוּלֶרענ ×וּשדרוּצכּש" - -#: grub-core/lib/gnulib/regcomp.c:180 -msgid "Regular expression too big" -msgstr "רעגוּלֶרער ×וּשדרוּצכּ ִישת זוּ גרוֹסס" - -#: grub-core/lib/gnulib/regcomp.c:183 -msgid "Unmatched ) or \\)" -msgstr "נִיצהת ֻבּערעִינשתִיממענדע ) וֹדער \\)" - -#: grub-core/lib/gnulib/regcomp.c:531 -msgid "unknown regexp error" -msgstr "וּנבּעכּ×ננתער רעגעכּספּ-פֿעהלער" - -#: grub-core/lib/gnulib/regcomp.c:676 -msgid "No previous regular expression" -msgstr "×›Ö¼×¢Ö´×™×  בֿוֹרהערגעהענדער רעגוּלֶרער ×וּשדרוּצכּ" - -#: grub-core/lib/i386/halt.c:77 -msgid "GRUB doesn't know how to halt this machine yet!" -msgstr "גרוּבּ ועִיסס נִיצהת, וִיע מ××  דִיעשע מ×שצהִינע שתוֹפּפּענ ×›Ö¼×× × !" - -#: grub-core/lib/legacy_parse.c:75 -msgid "Default server is ${net_default_server}" -msgstr "בֿוֹרגעגעבּענער שערבֿער ִישת ${נעת_דעפֿ×וּלת_שערבֿער}" - -#: grub-core/lib/legacy_parse.c:844 grub-core/video/colors.c:296 -#: grub-core/video/colors.c:305 grub-core/video/colors.c:311 -#: grub-core/video/colors.c:327 util/render-label.c:84 util/render-label.c:98 -#, c-format -msgid "invalid color specification `%s'" -msgstr "וּנגֻלתִיגע ×× ×’×בּע דער פֿ×רבּע »%s«" - -#: grub-core/lib/mips/arc/reboot.c:32 grub-core/lib/mips/loongson/reboot.c:61 -msgid "Reboot failed" -msgstr "נעוּ שת×רתענ ִישת געשצהעִיתערת" - -#: grub-core/lib/random.c:113 -msgid "[LENGTH]" -msgstr "[לֶנגע]" - -#: grub-core/lib/random.c:114 -msgid "Hexdump random data." -msgstr "העכּסדוּמפּ-זוּפֿ×ללשד×תענ." - -#: grub-core/loader/arm/linux.c:242 -msgid "device tree must be supplied (see `devicetree' command)" -msgstr "גערֶתעבּ×וּמ מוּשש ×נגעגעבּענ וערדענ (שִיעהע בּעפֿעהל »דעבִֿיצעתרעע«)" - -#: grub-core/loader/arm/linux.c:334 -msgid "invalid zImage" -msgstr "וּנגֻלתִיגעש זִימ××’×¢" - -#: grub-core/loader/arm/linux.c:450 grub-core/loader/efi/fdt.c:144 -msgid "invalid device tree" -msgstr "וּנגֻלתִיגער גערֶתעבּ×וּמ" - -#: grub-core/loader/arm/linux.c:493 grub-core/loader/arm64/linux.c:383 -#: grub-core/loader/i386/linux.c:1125 grub-core/loader/i386/pc/linux.c:479 -#: grub-core/loader/i386/xen.c:962 grub-core/loader/i386/xen.c:964 -#: grub-core/loader/ia64/efi/linux.c:591 grub-core/loader/mips/linux.c:501 -#: grub-core/loader/powerpc/ieee1275/linux.c:383 -#: grub-core/loader/riscv/linux.c:50 -#: grub-core/loader/sparc64/ieee1275/linux.c:511 -msgid "Load Linux." -msgstr "לִינוּכּס ל×דענ." - -#: grub-core/loader/arm/linux.c:495 grub-core/loader/arm64/linux.c:385 -#: grub-core/loader/i386/linux.c:1127 grub-core/loader/i386/pc/linux.c:482 -#: grub-core/loader/i386/xen.c:966 grub-core/loader/ia64/efi/linux.c:594 -#: grub-core/loader/mips/linux.c:503 -#: grub-core/loader/powerpc/ieee1275/linux.c:385 -#: grub-core/loader/riscv/linux.c:52 -#: grub-core/loader/sparc64/ieee1275/linux.c:513 -msgid "Load initrd." -msgstr "ִינִיתרד ל×דענ." - -#. TRANSLATORS: DTB stands for device tree blob. -#: grub-core/loader/arm/linux.c:498 grub-core/loader/efi/fdt.c:169 -msgid "Load DTB file." -msgstr "דתבּ-ד×תעִי ל×דענ." - -#: grub-core/loader/arm64/linux.c:59 -msgid "" -"plain image kernel not supported - rebuild with CONFIG_(U)EFI_STUB enabled" -msgstr "" -"עִינפֿ×צהעש כּערנעל-×בּבִּילד וִירד נִיצהת וּנתערשתֻתזת – ערשתעללענ שִיע עש מִית " -"×כּתִיבִֿיערתעמ צוֹנפִֿיג_(וּ)עפִֿי_שתוּבּ נעוּ" - -#: grub-core/loader/arm64/xen_boot.c:156 -msgid "failed to get FDT" -msgstr "בּעזִיעהענ דעש פֿדת פֿעהלגעשצהל××’×¢× " - -#: grub-core/loader/arm64/xen_boot.c:418 -msgid "you need to load the Xen Hypervisor first" -msgstr "שִיע מֻששענ זוּערשת דענ כּסענ-היִפּערבִֿישוֹר ל×דענ" - -#: grub-core/loader/arm64/xen_boot.c:516 -msgid "Load a xen hypervisor." -msgstr "×¢Ö´×™× ×¢×  כּסענ-היִפּערבִֿישוֹר ל×דענ." - -#: grub-core/loader/arm64/xen_boot.c:519 -msgid "Load a xen module." -msgstr "×¢Ö´×™×  כּסענ-מוֹדוּל ל×דענ." - -#: grub-core/loader/efi/appleloader.c:231 -msgid "[OPTS]" -msgstr "[וֹפּתִיוֹנענ]" - -#. TRANSLATORS: This command is used on EFI to -#. switch to BIOS mode and boot the OS requiring -#. BIOS. -#: grub-core/loader/efi/appleloader.c:235 -msgid "Boot BIOS-based system." -msgstr "בִּיוֹש-בּ×שִיערתעש שיִשתעמ בּוֹוֹתענ." - -#: grub-core/loader/efi/chainloader.c:421 -#: grub-core/loader/i386/pc/chainloader.c:303 -msgid "Load another boot loader." -msgstr "×¢Ö´×™× ×¢×  ×נדערענ בּוֹוֹתלוֹ×דער ל×דענ." - -#: grub-core/loader/i386/bsd.c:103 -msgid "Display output on all consoles." -msgstr "×וּשג×בּע ×וּפֿ ×ללענ כּוֹנשוֹלענ ×× ×–×¢Ö´×™×’×¢× ." - -#: grub-core/loader/i386/bsd.c:104 grub-core/loader/i386/bsd.c:138 -#: grub-core/loader/i386/bsd.c:171 -msgid "Use serial console." -msgstr "שערִיעללע כּוֹנשוֹלע בֿערוענדענ." - -#: grub-core/loader/i386/bsd.c:105 grub-core/loader/i386/bsd.c:131 -#: grub-core/loader/i386/bsd.c:159 -msgid "Ask for file name to reboot from." -msgstr "× ×צה דעמ ד×תעִינ×מענ פֻֿר דענ נעוּשת×רת פֿר××’×¢× ." - -#: grub-core/loader/i386/bsd.c:106 -msgid "Use CD-ROM as root." -msgstr "צדרוֹמ ×לש רוֹוֹת-גערֶת בֿערוענדענ." - -#: grub-core/loader/i386/bsd.c:107 -msgid "Invoke user configuration routing." -msgstr "רוֹוּתִינג דער בּענוּתזערכּוֹנפִֿיגוּר×תִיוֹנ ×וּפֿרוּפֿענ." - -#: grub-core/loader/i386/bsd.c:108 grub-core/loader/i386/bsd.c:135 -#: grub-core/loader/i386/bsd.c:162 -msgid "Enter in KDB on boot." -msgstr "כּדבּ בּעִימ בּוֹוֹתענ בֿערוענדענ." - -#: grub-core/loader/i386/bsd.c:109 -msgid "Use GDB remote debugger instead of DDB." -msgstr "ענתפֿערנתע גדבּ-פֿעהלערדִי×גנוֹשע ×נשת×תת דדבּ בֿערוענדענ." - -#: grub-core/loader/i386/bsd.c:110 -msgid "Disable all boot output." -msgstr "×ללע בּוֹוֹת-×וּשג×בּענ דע×כּתִיבִֿיערענ." - -#: grub-core/loader/i386/bsd.c:112 -msgid "Wait for keypress after every line of output." -msgstr "× ×צה יעדער ×וּשגעגעבּענענ זעִילע ×וּפֿ ת×שתענדרוּצכּ ו×רתענ." - -#: grub-core/loader/i386/bsd.c:114 -msgid "Use compiled-in root device." -msgstr "עִינכּוֹמפִּילִיערתעש רוֹוֹת-גערֶת בֿערוענדענ." - -#: grub-core/loader/i386/bsd.c:115 grub-core/loader/i386/bsd.c:134 -#: grub-core/loader/i386/bsd.c:165 -msgid "Boot into single mode." -msgstr "Ö´×™×  דענ שִינגלע-וּשער-מוֹדוּש בּוֹוֹתענ." - -#: grub-core/loader/i386/bsd.c:116 grub-core/loader/i386/bsd.c:166 -msgid "Boot with verbose messages." -msgstr "מִית ×וּשפֻֿהרלִיצהענ מעלדוּנגענ בּוֹוֹתענ." - -#: grub-core/loader/i386/bsd.c:132 grub-core/loader/i386/bsd.c:160 -msgid "Don't reboot, just halt." -msgstr "נִיצהת נעוּ שת×רתענ, נוּר הערוּנתערפֿ×הרענ." - -#: grub-core/loader/i386/bsd.c:133 grub-core/loader/i386/bsd.c:161 -msgid "Change configured devices." -msgstr "כּוֹנפִֿיגוּרִיערתע גערֶתע בּע×רבּעִיתענ." - -#. TRANSLATORS: "com" is static and not to be translated. It refers to -#. serial ports e.g. com1. -#. -#: grub-core/loader/i386/bsd.c:142 -msgid "comUNIT[,SPEED]" -msgstr "צוֹמוּנִית[,געשצהו]" - -#: grub-core/loader/i386/bsd.c:157 -msgid "Disable SMP." -msgstr "שמפּ דע×כּתִיבִֿיערענ." - -#: grub-core/loader/i386/bsd.c:158 -msgid "Disable ACPI." -msgstr "×צפִּי דע×כּתִיבִֿיערענ." - -#: grub-core/loader/i386/bsd.c:164 -msgid "Don't display boot diagnostic messages." -msgstr "×›Ö¼×¢Ö´×™× ×¢ פֿעהלערדִי×גנוֹשעמעלדוּנגענ בּעִימ בּוֹוֹתענ ×× ×–×¢Ö´×™×’×¢× ." - -#: grub-core/loader/i386/bsd.c:167 -msgid "Boot with debug messages." -msgstr "מִית פֿעהלערדִי×גנוֹשעמעלדוּנגענ בּוֹוֹתענ." - -#: grub-core/loader/i386/bsd.c:168 -msgid "Suppress normal output (warnings remain)." -msgstr "נוֹרמ×לע ×וּשג×בּענ וּנתערדרֻצכּענ (ו×רנוּנגענ בֿערבּלעִיבּענ)" - -#. TRANSLATORS: "com" is static and not to be translated. It refers to -#. serial ports e.g. com1. -#. -#: grub-core/loader/i386/bsd.c:175 -msgid "[ADDR|comUNIT][,SPEED]" -msgstr "[×דר|צוֹמוּנִית][,געשצהו]" - -#: grub-core/loader/i386/bsd.c:489 grub-core/loader/i386/bsd.c:555 -msgid "name" -msgstr "× ×מע" - -#: grub-core/loader/i386/bsd.c:489 grub-core/loader/i386/bsd.c:555 -msgid "type" -msgstr "תיִפּ" - -#: grub-core/loader/i386/bsd.c:489 grub-core/loader/i386/bsd.c:555 -msgid "addr" -msgstr "×דרעששע" - -#: grub-core/loader/i386/bsd.c:490 grub-core/loader/i386/bsd.c:556 -msgid "size" -msgstr "גרֵססע" - -#: grub-core/loader/i386/bsd.c:1147 grub-core/loader/i386/linux.c:466 -#: grub-core/loader/i386/xnu.c:1030 -msgid "Booting in blind mode" -msgstr "ִימ בּלִינדמוֹדוּש בּוֹוֹתענ" - -#: grub-core/loader/i386/bsd.c:2137 -msgid "Load kernel of FreeBSD." -msgstr "כּערנעל בֿוֹנ פֿרעעבּשד ל×דענ." - -#: grub-core/loader/i386/bsd.c:2140 -msgid "Load kernel of OpenBSD." -msgstr "כּערנעל בֿוֹנ וֹפּענבּשד ל×דענ." - -#: grub-core/loader/i386/bsd.c:2143 -msgid "Load kernel of NetBSD." -msgstr "כּערנעל בֿוֹנ נעתבּשד ל×דענ." - -#: grub-core/loader/i386/bsd.c:2147 -msgid "Load FreeBSD env." -msgstr "פֿרעעבּשד-וּמגעבּוּנג ל×דענ." - -#: grub-core/loader/i386/bsd.c:2150 -msgid "Load FreeBSD kernel module." -msgstr "פֿרעעבּשד-כּערנעלמוֹדוּל ל×דענ." - -#: grub-core/loader/i386/bsd.c:2153 -msgid "Load NetBSD kernel module." -msgstr "נעתבּשד-כּערנעלמוֹדוּל ל×דענ." - -#: grub-core/loader/i386/bsd.c:2156 -msgid "Load NetBSD kernel module (ELF)." -msgstr "נעתבּשד-כּערנעלמוֹדוּל ל×דענ (עלפֿ)." - -#: grub-core/loader/i386/bsd.c:2159 -msgid "Load FreeBSD kernel module (ELF)." -msgstr "פֿרעעבּשד-כּערנעלמוֹדוּל ל×דענ (עלפֿ)." - -#. TRANSLATORS: ramdisk isn't identifier, -#. it can be translated. -#: grub-core/loader/i386/bsd.c:2165 -msgid "Load kOpenBSD ramdisk." -msgstr "ר×מדִישכּ בֿוֹנ כּוֹפּענבּשד ל×דענ." - -#. TRANSLATORS: "payload" is a term used -#. by coreboot and must be translated in -#. sync with coreboot. If unsure, -#. let it untranslated. -#: grub-core/loader/i386/coreboot/chainloader.c:510 -msgid "Load another coreboot payload" -msgstr "ועִיתערעש צוֹרעבּוֹוֹת-פּ×יִלוֹ×ד ל×דענ" - -#: grub-core/loader/i386/linux.c:876 -msgid "Legacy `ask' parameter no longer supported." -msgstr "בֿער×לתעתער פּ×ר×מעתער »%s« וִירד נִיצהת מעהר וּנתערשתֻתזת." - -#: grub-core/loader/i386/linux.c:892 grub-core/loader/i386/linux.c:902 -#: grub-core/loader/i386/linux.c:932 -#, c-format -msgid "%s is deprecated. Use set gfxpayload=%s before linux command instead.\n" -msgstr "" -"%s ִישת בֿער×לתעת. בֿערוענדענ שִיע שת×תתדעששענ גפֿכּספּ×יִלוֹ×ד=%s בֿוֹר דעמ לִינוּכּס-" -"בּעפֿעהל.\n" - -#. TRANSLATORS: "x" has to be entered in, like an identifier, -#. so please don't use better Unicode codepoints. -#: grub-core/loader/i386/linux.c:915 -#, c-format -msgid "" -"%s is deprecated. VGA mode %d isn't recognized. Use set " -"gfxpayload=WIDTHxHEIGHT[xDEPTH] before linux command instead.\n" -msgstr "" -"%s ִישת בֿער×לתעת. בֿג×-מוֹדוּש %d ווּרדע נִיצהת ערכּ×ננת. בֿערוענדענ שִיע שת×תתדעששענ " -"גפֿכּספּ×יִלוֹ×ד=בּרעִיתעכּסהֵהע[כּסתִיעפֿע] בֿוֹר דעמ לִינוּכּס-בּעפֿעהל.\n" - -#: grub-core/loader/i386/pc/chainloader.c:302 -msgid "[--force|--bpb] FILE" -msgstr "[--פֿוֹרצע|--בּפּבּ] גערֶת" - -#: grub-core/loader/i386/pc/freedos.c:148 util/setup.c:293 -#, c-format -msgid "the size of `%s' is too large" -msgstr "»%s« ִישת זוּ גרוֹסס" - -#: grub-core/loader/i386/pc/freedos.c:183 -msgid "Load FreeDOS kernel.sys." -msgstr "פֿרעעדוֹש-כּערנעל.שיִש ל×דענ." - -#: grub-core/loader/i386/pc/ntldr.c:155 -msgid "Load NTLDR or BootMGR." -msgstr "נתלדר וֹדער בּוֹוֹתמגר ל×דענ." - -#. TRANSLATORS: it's about guessing which GRUB disk -#. is which Plan9 disk. If your language has no -#. word "mapping" you can use another word which -#. means that the GRUBDEVICE and PLAN9DEVICE are -#. actually the same device, just named differently -#. in OS and GRUB. -#: grub-core/loader/i386/pc/plan9.c:59 -msgid "Override guessed mapping of Plan9 devices." -msgstr "דִיע געשצהֶתזתע זוּוֹרדנוּנג בֿוֹנ פּל×× 9-גערֶתענ ֻבּערשצהרעִיבּענ." - -#: grub-core/loader/i386/pc/plan9.c:60 -msgid "GRUBDEVICE=PLAN9DEVICE" -msgstr "גרוּבּ-גערֶת=פּל×× 9-גערֶת" - -#: grub-core/loader/i386/pc/plan9.c:599 -msgid "KERNEL ARGS" -msgstr "כּערנעל ×רגוּמענתע" - -#: grub-core/loader/i386/pc/plan9.c:599 -msgid "Load Plan9 kernel." -msgstr "פּל×× 9-כּערנעל ל×דענ." - -#: grub-core/loader/i386/pc/pxechainloader.c:161 -msgid "Load a PXE image." -msgstr "×¢Ö´×™×  פּכּסע-×בּבִּילד ל×דענ." - -#: grub-core/loader/i386/pc/truecrypt.c:226 -msgid "Load Truecrypt ISO." -msgstr "תרוּעצריִפּת-ִישוֹ ל×דענ." - -#: grub-core/loader/i386/xen.c:781 grub-core/loader/i386/xen.c:865 -msgid "initrd already loaded" -msgstr "ִינִיתרד ִישת בּערעִיתש געל×דענ" - -#: grub-core/loader/i386/xen.c:968 -msgid "Load module." -msgstr "מוֹדוּל ל×דענ." - -#: grub-core/loader/i386/xnu.c:1003 -msgid "Press any key to launch xnu" -msgstr "דרֻצכּענ שִיע ×¢Ö´×™× ×¢ בּעלִיעבִּיגע ת×שתע, וּמ כּסנוּ זוּ שת×רתענ" - -#. TRANSLATORS: `device-properties' -#. is a variable name, -#. not a program. -#: grub-core/loader/i386/xnu.c:1159 -msgid "Load `device-properties' dump." -msgstr "Ö´×™× ×”×לת בֿוֹנ »דעבִֿיצע-פּרוֹפּערתִיעש« ל×דענ" - -#: grub-core/loader/ia64/efi/linux.c:124 -msgid "Could not locate FPSWA driver" -msgstr "פֿפּשו×-תרעִיבּער כּוֹננתע נִיצהת געפֿוּנדענ וערדענ" - -#: grub-core/loader/ia64/efi/linux.c:132 -msgid "FPSWA protocol wasn't able to find the interface" -msgstr "ד×ש פֿפּשו×-פּרוֹתוֹכּוֹלל ו×ר נִיצהת ִימשת×נדע, דִיע שצהנִיתתשתעללע זוּ פִֿינדענ" - -#: grub-core/loader/ia64/efi/linux.c:580 -msgid "No FPSWA found" -msgstr "×›Ö¼×¢Ö´×™×  ×¤Ö¿×¤Ö¼×©×•× ×’×¢×¤Ö¿×•Ö¼× ×“×¢× " - -#: grub-core/loader/ia64/efi/linux.c:582 -#, c-format -msgid "FPSWA revision: %x\n" -msgstr "פֿפּשו×-רעבִֿישִיוֹנ: %x\n" - -#: grub-core/loader/ia64/efi/linux.c:591 -msgid "FILE [ARGS...]" -msgstr "ד×תעִי [×רגוּמענתע …]" - -#: grub-core/loader/ia64/efi/linux.c:597 -msgid "Display FPSWA version." -msgstr "פֿפּשו×-בֿערשִיוֹנ ×× ×–×¢Ö´×™×’×¢× ." - -#: grub-core/loader/multiboot.c:248 -msgid "WARNING: no console will be available to OS" -msgstr "ו×רנוּנג: ִימ בּעתרִיעבּששיִשתעמ וִירד ×›Ö¼×¢Ö´×™× ×¢ כּוֹנשוֹלע בֿערפֻֿגבּ×ר שעִינ" - -#: grub-core/loader/multiboot.c:450 -msgid "Load a multiboot 2 kernel." -msgstr "×¢Ö´×™× ×¢×  מוּלתִיבּוֹוֹת2-כּערנעל ל×דענ." - -#: grub-core/loader/multiboot.c:453 -msgid "Load a multiboot 2 module." -msgstr "×¢Ö´×™×  מוּלתִיבּוֹוֹת2-מוֹדוּל ל×דענ." - -#: grub-core/loader/multiboot.c:456 -msgid "Load a multiboot kernel." -msgstr "×¢Ö´×™× ×¢×  מוּלתִיבּוֹוֹת-כּערנעל ל×דענ." - -#: grub-core/loader/multiboot.c:459 -msgid "Load a multiboot module." -msgstr "×¢Ö´×™×  מוּלתִיבּוֹוֹת-מוֹדוּל ל×דענ." - -#: grub-core/loader/riscv/linux.c:30 grub-core/loader/riscv/linux.c:40 -msgid "Linux not supported yet" -msgstr "לִינוּכּס וִירד נוֹצה נִיצהת וּנתערשתֻתזת" - -#: grub-core/loader/xnu.c:1416 grub-core/term/gfxterm_background.c:45 -msgid "Background image mode." -msgstr "מוֹדוּש דעש הִינתערגרוּנדבִּילדעש." - -#. TRANSLATORS: This refers to background image mode (stretched or -#. in left-top corner). Note that GRUB will accept only original -#. keywords stretch and normal, not the translated ones. -#. So please put both in translation -#. e.g. stretch(=%STRETCH%)|normal(=%NORMAL%). -#. The percents mark the translated version. Since many people -#. may not know the word stretch or normal I recommend -#. putting the translation either here or in "Background image mode." -#. string. -#: grub-core/loader/xnu.c:1416 grub-core/term/gfxterm_background.c:55 -msgid "stretch|normal" -msgstr "שתרעתצה(=זוֹוֹמ)|נוֹרמ×ל(=נוֹרמ×ל)" - -#: grub-core/loader/xnu.c:1482 -msgid "Load XNU image." -msgstr "כּסנוּ-×בּבִּילד ל×דענ." - -#: grub-core/loader/xnu.c:1484 -msgid "Load 64-bit XNU image." -msgstr "64-בִּית כּסנוּ-×בּבִּילד ל×דענ." - -#: grub-core/loader/xnu.c:1486 -msgid "Load XNU extension package." -msgstr "כּסנוּ-ערועִיתערוּנגשפּ×כּעת ל×דענ." - -#: grub-core/loader/xnu.c:1488 -msgid "Load XNU extension." -msgstr "כּסנוּ-ערועִיתערוּנג ל×דענ." - -#. TRANSLATORS: OSBundleRequired is a -#. variable name in xnu extensions -#. manifests. It behaves mostly like -#. GNU/Linux runlevels. -#. -#: grub-core/loader/xnu.c:1495 -msgid "DIRECTORY [OSBundleRequired]" -msgstr "בֿערזעִיצהנִיש [וֹשבּוּנדלערעקוִּירעד]" - -#. TRANSLATORS: There are many extensions -#. in extension directory. -#: grub-core/loader/xnu.c:1498 -msgid "Load XNU extension directory." -msgstr "כּסנוּ-ערועִיתערוּנגשבֿערזעִיצהנִיש ל×דענ." - -#. TRANSLATORS: ramdisk here isn't identifier. It can be translated. -#: grub-core/loader/xnu.c:1501 -msgid "Load XNU ramdisk. It will be available in OS as md0." -msgstr "כּסנוּ-ר×מדִישכּ ל×דענ. וִירד ִימ בּעתרִיעבּששיִשתעמ ×לש מד0 ×נגעזעִיגת." - -#: grub-core/loader/xnu.c:1505 -msgid "Load a splash image for XNU." -msgstr "בּעגרֻססוּנגשבִּילדשצהִירמ פֻֿר כּסנוּ ל×דענ." - -#: grub-core/loader/xnu.c:1510 -msgid "Load an image of hibernated XNU." -msgstr "×¢Ö´×™×  געשפּעִיצהערתעש כּסנוּ-×בּבִּילד ל×דענ." - -#: grub-core/mmap/mmap.c:538 -msgid "ADDR1,MASK1[,ADDR2,MASK2[,...]]" -msgstr "×דר1,מ×שכּע1[,×דר2,מ×שכּע2[,...]]" - -#: grub-core/mmap/mmap.c:539 -msgid "Declare memory regions as faulty (badram)." -msgstr "שפּעִיצהערבּערעִיצהע ×לש »בּ×דר×מ« דעכּל×רִיערענ." - -#: grub-core/mmap/mmap.c:541 -msgid "FROM[K|M|G] TO[K|M|G]" -msgstr "בֿוֹנ[×›Ö¼|מ|×’] בִּיש[×›Ö¼|מ|×’]" - -#: grub-core/mmap/mmap.c:542 -msgid "Remove any memory regions in specified range." -msgstr "×ללע שפּעִיצהערשעגמענתע ִימ ×נגעגעבּענענ בּערעִיצה לֵשצהענ." - -#: grub-core/net/bootp.c:653 -msgid "four arguments expected" -msgstr "בִֿיער ×רגוּמענתע וערדענ ערו×רתעת" - -#: grub-core/net/bootp.c:661 grub-core/net/net.c:1155 -#, c-format -msgid "unrecognised network interface `%s'" -msgstr "נעתזוערכּ-שצהנִיתתשתעללע »%s« ווּרדע נִיצהת ערכּ×ננת" - -#: grub-core/net/bootp.c:664 -msgid "no DHCP info found" -msgstr "×›Ö¼×¢Ö´×™× ×¢ דהצפּ-ִינפֿוֹרמ×תִיוֹנענ געפֿוּנדענ" - -#: grub-core/net/bootp.c:674 -msgid "no DHCP options found" -msgstr "×›Ö¼×¢Ö´×™× ×¢ דהצפּ-וֹפּתִיוֹנענ געפֿוּנדענ" - -#: grub-core/net/bootp.c:682 -msgid "invalid DHCP option code" -msgstr "וּנגֻלתִיגער דהצפּ-וֹפּתִיוֹנשצוֹדע" - -#: grub-core/net/bootp.c:686 -#, c-format -msgid "no DHCP option %u found" -msgstr "×›Ö¼×¢Ö´×™× ×¢ דהצפּ-וֹפּתִיוֹנ %u געפֿוּנדענ" - -#: grub-core/net/bootp.c:743 -#, c-format -msgid "unrecognised DHCP option format specification `%s'" -msgstr "נִיצהת ערכּ×ננתע פֿוֹרמ×תשפּעזִיפִֿיכּ×תִיוֹנ פֻֿר דהצפּ-וֹפּתִיוֹנ »%s«" - -#: grub-core/net/bootp.c:767 -msgid "no network card found" -msgstr "×›Ö¼×¢Ö´×™× ×¢ נעתזוערכּכּ×רתע געפֿוּנדענ" - -#: grub-core/net/bootp.c:859 grub-core/net/net.c:389 -#, c-format -msgid "couldn't autoconfigure %s" -msgstr "%s כּוֹננתע נִיצהת ×וּתוֹמ×תִישצה כּוֹנפִֿיגוּרִיערת וערדענ" - -#: grub-core/net/bootp.c:873 grub-core/net/bootp.c:876 -msgid "[CARD]" -msgstr "[×›Ö¼×רתע]" - -#: grub-core/net/bootp.c:874 -msgid "perform a bootp autoconfiguration" -msgstr "×¢Ö´×™× ×¢ בּוֹוֹתפּ-×וּתוֹכּוֹנפִֿיגוּר×תִיוֹנ ×וּשפֻֿהרענ" - -#: grub-core/net/bootp.c:877 -msgid "perform a DHCP autoconfiguration" -msgstr "×¢Ö´×™× ×¢ דהצפּ-×וּתוֹכּוֹנפִֿיגוּר×תִיוֹנ ×וּשפֻֿהרענ" - -#: grub-core/net/bootp.c:879 -msgid "VAR INTERFACE NUMBER DESCRIPTION" -msgstr "בֿ×רִי×בּלע שצהנִיתתשתעללע ×–×הל בּעשצהרעִיבּוּנג" - -#: grub-core/net/bootp.c:880 -msgid "" -"retrieve DHCP option and save it into VAR. If VAR is - then print the value." -msgstr "" -"דהצפּ-וֹפּתִיוֹנ הוֹלענ וּנד Ö´×™×  בֿ×רִי×בּלע שפּעִיצהערנ. פֿ×ללש בֿ×רִי×בּלע »-« ִישת, דענ " -"וערת ×וּשגעבּענ." - -#: grub-core/net/dns.c:459 -msgid "no DNS servers configured" -msgstr "עש ווּרדענ ×›Ö¼×¢Ö´×™× ×¢ דנש-שערבֿער כּוֹנפִֿיגוּרִיערת" - -#: grub-core/net/dns.c:522 -msgid "domain name component is too long" -msgstr "דוֹמ×Ö´×™× × ×מע-כּוֹמפּוֹנענתע ִישת זוּ ל×× ×’" - -#: grub-core/net/dns.c:618 grub-core/net/dns.c:666 -msgid "no DNS record found" -msgstr "×›Ö¼×¢Ö´×™× ×¢ דנש-×× ×’×בּע געפֿוּנדענ" - -#: grub-core/net/dns.c:626 -msgid "no DNS reply received" -msgstr "×›Ö¼×¢Ö´×™×  דנש-×נתווֹרת עמפּפֿ×× ×’×¢× " - -#: grub-core/net/dns.c:682 -msgid "only ipv4" -msgstr "נוּר ִיפּבֿ4" - -#: grub-core/net/dns.c:686 -msgid "only ipv6" -msgstr "נוּר ִיפּבֿ6" - -#: grub-core/net/dns.c:690 -msgid "prefer ipv4" -msgstr "ִיפּבֿ4 בּעבֿוֹרזוּגענ" - -#: grub-core/net/dns.c:694 -msgid "prefer ipv6" -msgstr "ִיפּבֿ6 בּעבֿוֹרזוּגענ" - -#: grub-core/net/dns.c:759 -msgid "ADDRESS DNSSERVER" -msgstr "×דדרעששע דנש_שערבֿער" - -#: grub-core/net/dns.c:760 -msgid "Perform a DNS lookup" -msgstr "×¢Ö´×™× ×¢ דנש-שוּצהע ×וּשפֻֿהרענ" - -#: grub-core/net/dns.c:762 grub-core/net/dns.c:765 -msgid "DNSSERVER" -msgstr "דנששערבֿער" - -#: grub-core/net/dns.c:763 -msgid "Add a DNS server" -msgstr "×¢Ö´×™× ×¢×  דנש-שערבֿער הִינזוּפֻֿגענ" - -#: grub-core/net/dns.c:766 -msgid "Remove a DNS server" -msgstr "×¢Ö´×™× ×¢×  דנש-שערבֿער ענתפֿערנענ" - -#: grub-core/net/dns.c:768 -msgid "List DNS servers" -msgstr "דנש-שערבֿער ×וּפֿלִישתענ" - -#: grub-core/net/drivers/efi/efinet.c:49 grub-core/net/drivers/efi/efinet.c:65 -#: grub-core/net/drivers/efi/efinet.c:77 grub-core/net/drivers/emu/emunet.c:62 -#: grub-core/net/drivers/i386/pc/pxe.c:273 -#: grub-core/net/drivers/ieee1275/ofnet.c:75 -#: grub-core/net/drivers/uboot/ubootnet.c:62 -msgid "couldn't send network packet" -msgstr "נעתזוערכּפּ×כּעת כּוֹננתע נִיצהת געשענדעת וערדענ" - -#: grub-core/net/drivers/ieee1275/ofnet.c:326 -#: grub-core/net/drivers/ieee1275/ofnet.c:359 -msgid "interpret is not supported" -msgstr "ִינתערפּרעתִיערוּנג וִירד נִיצהת וּנתערשתֻתזת" - -#: grub-core/net/drivers/ieee1275/ofnet.c:336 -msgid "alloc-mem failed" -msgstr "שפּעִיצהערזוּועִישוּנג (×ללוֹצ-מעמ) ִישת געשצהעִיתערת" - -#: grub-core/net/drivers/ieee1275/ofnet.c:370 -msgid "free-mem failed" -msgstr "פֿרעע-מעמ ִישת געשצהעִיתערת" - -#: grub-core/net/http.c:105 -msgid "unsupported HTTP response" -msgstr "נִיצהת וּנתערשתֻתזתע התתפּ-×נתווֹרת" - -#. TRANSLATORS: GRUB HTTP code is pretty young. So even perfectly -#. valid answers like 403 will trigger this very generic message. -#: grub-core/net/http.c:126 -#, c-format -msgid "unsupported HTTP error %d: %s" -msgstr "נִיצהת וּנתערשתֻתזתער התתפּ-פֿעהלער %d: %s" - -#: grub-core/net/http.c:429 grub-core/net/tftp.c:420 -#, c-format -msgid "time out opening `%s'" -msgstr "זעִיתֻבּערשצהרעִיתוּנג בּעִימ ֵפֿפֿנענ בֿוֹנ »%s«" - -#: grub-core/net/net.c:179 -msgid "timeout: could not resolve hardware address" -msgstr "זעִיתֻבּערשצהרעִיתוּנג: ×”×רדו×רע-×דרעששע כּוֹננתע נִיצהת ×וּפֿגעלֵשת וערדענ" - -#: grub-core/net/net.c:548 -#, c-format -msgid "unresolvable address %s" -msgstr "נִיצהת ×וּפֿלֵשבּ×רע ×דרעששע %s" - -#: grub-core/net/net.c:594 -#, c-format -msgid "unrecognised network address `%s'" -msgstr "נִיצהת ערכּ×ננתע נעתזוערכּ×דרעששע »%s«" - -#: grub-core/net/net.c:661 -msgid "destination unreachable" -msgstr "זִיעל ִישת נִיצהת עררעִיצהבּ×ר" - -#. TRANSLATORS: route loop is a condition when e.g. -#. to contact server A you need to go through B -#. and to contact B you need to go through A. -#: grub-core/net/net.c:684 -msgid "route loop detected" -msgstr "רוֹוּתענשצהלעִיפֿע ענתדעצכּת" - -#: grub-core/net/net.c:700 -msgid "address not found" -msgstr "×דרעששע נִיצהת געפֿוּנדענ" - -#: grub-core/net/net.c:704 -msgid "you can't delete this address" -msgstr "שִיע ×›Ö¼Öµ× × ×¢×  דִיעשע ×דרעששע נִיצהת לֵשצהענ" - -#: grub-core/net/net.c:776 grub-core/net/net.c:792 -#, c-format -msgid "Unsupported hw address type %d\n" -msgstr "נִיצהת וּנתערשתֻתזתער ×”×רדו×רע-×דרעששתיִפּ %d\n" - -#: grub-core/net/net.c:813 -#, c-format -msgid "Unsupported address type %d\n" -msgstr "נִיצהת וּנתערשתֻתזתער ×דרעששתיִפּ %d\n" - -#: grub-core/net/net.c:1017 grub-core/net/net.c:1131 -msgid "three arguments expected" -msgstr "דרעִי ×רגוּמענתע ערו×רתעת" - -#: grub-core/net/net.c:1023 -msgid "card not found" -msgstr "×›Ö¼×רתע נִיצהת געפֿוּנדענ" - -#. TRANSLATORS: it refers to the network address. -#: grub-core/net/net.c:1167 -msgid "temporary" -msgstr "תעמפּוֹרֶר" - -#: grub-core/net/net.c:1190 -#, c-format -msgid "Unknown address type %d\n" -msgstr "וּנבּעכּ×ננתער ×דרעששתיִפּ %d\n" - -#: grub-core/net/net.c:1298 -msgid "no server is specified" -msgstr "×›Ö¼×¢Ö´×™×  שערבֿער ×נגעגעבּענ" - -#: grub-core/net/net.c:1637 -#, c-format -msgid "timeout reading `%s'" -msgstr "זעִיתֻבּערשצהרעִיתוּנג בּעִימ לעשענ בֿוֹנ »%s«" - -#. TRANSLATORS: HWADDRESS stands for -#. "hardware address". -#: grub-core/net/net.c:1762 -msgid "SHORTNAME CARD ADDRESS [HWADDRESS]" -msgstr "כּוּרזנ×מע ×›Ö¼×רדע ×דרעששע [הו-×דרעששע]" - -#: grub-core/net/net.c:1763 -msgid "Add a network address." -msgstr "×¢Ö´×™× ×¢ נעתזוערכּ×דרעששע הִינזוּפֻֿגענ." - -#: grub-core/net/net.c:1766 -msgid "[CARD [HWADDRESS]]" -msgstr "×›Ö¼×רתע [הו-×דרעששע]" - -#: grub-core/net/net.c:1767 -msgid "Perform an IPV6 autoconfiguration" -msgstr "×¢Ö´×™× ×¢ ִיפּבֿ6-×וּתוֹכּוֹנפִֿיגוּר×תִיוֹנ ×וּשפֻֿהרענ" - -#: grub-core/net/net.c:1770 grub-core/net/net.c:1777 -msgid "SHORTNAME" -msgstr "כּוּרזנ×מע" - -#: grub-core/net/net.c:1771 -msgid "Delete a network address." -msgstr "×¢Ö´×™× ×¢ נעתזוערכּ×דרעששע לֵשצהענ." - -#. TRANSLATORS: "gw" is a keyword. -#: grub-core/net/net.c:1774 -msgid "SHORTNAME NET [INTERFACE| gw GATEWAY]" -msgstr "כּוּרזנ×מע נעתז [שצהנִיתתשתעללע| גו ×’×תעו××™Ö´]" - -#: grub-core/net/net.c:1775 -msgid "Add a network route." -msgstr "×¢Ö´×™× ×¢ נעתזוערכּרוֹוּתע הִינזוּפֻֿגענ." - -#: grub-core/net/net.c:1778 -msgid "Delete a network route." -msgstr "×¢Ö´×™× ×¢ נעתזוערכּרוֹוּתע ענתפֿערנענ." - -#: grub-core/net/net.c:1780 -msgid "list network routes" -msgstr "נעתזוערכּרוֹוּתענ ×וּפֿלִישתענ" - -#: grub-core/net/net.c:1782 -msgid "list network cards" -msgstr "נעתזוערכּכּ×רתענ ×וּפֿלִישתענ" - -#: grub-core/net/net.c:1784 -msgid "list network addresses" -msgstr "נעתזוערכּ×דרעששענ ×וּפֿלִישתענ" - -#: grub-core/net/tcp.c:681 -msgid "connection refused" -msgstr "בֿערבִּינדוּנג בֿערועִיגערת" - -#: grub-core/net/tcp.c:684 -msgid "connection timeout" -msgstr "בֿערבִּינדוּנגש×בּבּרוּצה ועגענ זעִיתֻבּערשצהרעִיתוּנג" - -#: grub-core/normal/auth.c:220 -msgid "Enter username: " -msgstr "בּענוּתזערנ×מע עִינגעבּענ:" - -#: grub-core/normal/auth.c:269 -msgid "[USERLIST]" -msgstr "[בּענוּתזערלִישתע]" - -#: grub-core/normal/auth.c:270 -msgid "Check whether user is in USERLIST." -msgstr "ֻבּערפּרֻפֿענ שִיע, וֹבּ דער בּענוּתזער Ö´×™×  דער בּענוּתזערלִישתע ×וּפֿגעפֻֿהרת ִישת." - -#: grub-core/normal/cmdline.c:174 grub-core/normal/menu_entry.c:1068 -msgid "Possible commands are:" -msgstr "מֵגלִיצהע בּעפֿעהלע שִינד:" - -#: grub-core/normal/cmdline.c:177 grub-core/normal/menu_entry.c:1072 -msgid "Possible devices are:" -msgstr "מֵגלִיצהע גערֶתע שִינד:" - -#: grub-core/normal/cmdline.c:180 grub-core/normal/menu_entry.c:1076 -msgid "Possible files are:" -msgstr "מֵגלִיצהע ד×תעִיענ שִינד:" - -#: grub-core/normal/cmdline.c:183 grub-core/normal/menu_entry.c:1080 -msgid "Possible partitions are:" -msgstr "מֵגלִיצהע פּ×רתִיתִיוֹנענ שִינד:" - -#: grub-core/normal/cmdline.c:186 grub-core/normal/menu_entry.c:1084 -msgid "Possible arguments are:" -msgstr "מֵגלִיצהע ×רגוּמענתע שִינד:" - -#. TRANSLATORS: this message is used if none of above matches. -#. This shouldn't happen but please use the general term for -#. "thing" or "object". -#: grub-core/normal/cmdline.c:192 grub-core/normal/menu_entry.c:1088 -msgid "Possible things are:" -msgstr "מֵגלִיצהע דִינגע שִינד:" - -#: grub-core/normal/color.c:81 -#, c-format -msgid "Warning: syntax error (missing slash) in `%s'\n" -msgstr "ו×רנוּנג: שיִנת×כּספֿעהלער (פֿעהלענדער /) Ö´×™×  »%s«\n" - -#: grub-core/normal/color.c:90 -#, c-format -msgid "Warning: invalid foreground color `%s'\n" -msgstr "ו×רנוּנג: וּנגֻלתִיגע בֿוֹרדערגרוּנדפֿ×רבּע »%s«\n" - -#: grub-core/normal/color.c:96 -#, c-format -msgid "Warning: invalid background color `%s'\n" -msgstr "ו×רנוּנג: וּנגֻלתִיגע הִינתערגרוּנדפֿ×רבּע »%s«\n" - -#: grub-core/normal/context.c:206 -msgid "ENVVAR [ENVVAR] ..." -msgstr "וּמגבֿ×ר [וּמגבֿ×ר] ..." - -#: grub-core/normal/context.c:207 -msgid "Export variables." -msgstr "בֿ×רִי×בּלענ עכּספּוֹרתִיערענ." - -#: grub-core/normal/datetime.c:25 -msgid "Sunday" -msgstr "שוֹננת××’" - -#: grub-core/normal/datetime.c:26 -msgid "Monday" -msgstr "מוֹנת××’" - -#: grub-core/normal/datetime.c:27 -msgid "Tuesday" -msgstr "דִיענשת××’" - -#: grub-core/normal/datetime.c:28 -msgid "Wednesday" -msgstr "מִיתתווֹצה" - -#: grub-core/normal/datetime.c:29 -msgid "Thursday" -msgstr "דוֹננערשת××’" - -#: grub-core/normal/datetime.c:30 -msgid "Friday" -msgstr "פֿרעִית××’" - -#: grub-core/normal/datetime.c:31 -msgid "Saturday" -msgstr "ש×משת××’" - -#: grub-core/normal/dyncmd.c:187 -msgid "module isn't loaded" -msgstr "מוֹדוּל ִישת נִיצהת געל×דענ" - -#: grub-core/normal/main.c:211 -#, c-format -msgid "GNU GRUB version %s" -msgstr "גנוּ גרוּבּ בֿערשִיוֹנ %s" - -#: grub-core/normal/main.c:360 -msgid "ESC at any time exits." -msgstr "בּעענדענ ִישת יעדערזעִית מִית עשצ מֵגלִיצה." - -#: grub-core/normal/main.c:363 -#, c-format -msgid "" -"Minimal BASH-like line editing is supported. For the first word, TAB lists " -"possible command completions. Anywhere else TAB lists possible device or " -"file completions. %s" -msgstr "" -"מִינִימ×לע בּ×שה-ֶהנלִיצהע זעִילענבּע×רבּעִיתוּנג וִירד וּנתערשתֻתזת. פֻֿר ד×ש ערשתע ווֹרת " -"לִישתעת ת×בּ דִיע מֵגלִיצהענ בּעפֿעהלשבֿערבֿוֹללשתֶנדִיגוּנגענ ×וּפֿ. ×נשוֹנשתענ וערדענ מִית " -"ת×בּ דִיע מֵגלִיצהענ גערֶתע-וֹדער ד×תעִיבֿערבֿוֹללשתֶנדִיגוּנגענ ×נגעזעִיגת. %s" - -#. TRANSLATORS: it's command line prompt. -#: grub-core/normal/main.c:395 -msgid ">" -msgstr ">" - -#. TRANSLATORS: it's command line prompt. -#: grub-core/normal/main.c:398 -msgid "grub>" -msgstr "גרוּבּ>" - -#: grub-core/normal/main.c:518 -msgid "Clear the screen." -msgstr "דענ בִּילדשצהִירמ לעערענ." - -#: grub-core/normal/main.c:527 -msgid "Enter normal mode." -msgstr "Ö´×™×  נוֹרמ×למוֹדוּש ועצהשעלנ." - -#: grub-core/normal/main.c:529 -msgid "Exit from normal mode." -msgstr "נוֹרמ×למוֹדוּש ×בּבּרעצהענ." - -#: grub-core/normal/menu.c:66 grub-core/normal/menu_entry.c:1449 -msgid "Press any key to continue..." -msgstr "בּעלִיעבִּיגע ת×שתע דרֻצכּענ, וּמ פֿוֹרתזוּשעתזענ …" - -#: grub-core/normal/menu.c:815 -#, c-format -msgid "Booting `%s'" -msgstr "»%s« וִירד געבּוֹוֹתעת" - -#: grub-core/normal/menu.c:827 -#, c-format -msgid "Falling back to `%s'" -msgstr "×לתערנ×תִיבֿע »%s« וִירד בֿערוענדעת" - -#: grub-core/normal/menu.c:843 -msgid "Failed to boot both default and fallback entries.\n" -msgstr "" -"שוֹווֹהל בֿוֹרג×בּע- ×לש ×וּצה ×לתערנ×תִיבֿעִינתרֶגע כּוֹננתענ נִיצהת געבּוֹוֹתעת וערדענ.\n" - -#: grub-core/normal/menu_entry.c:1171 -msgid "Booting a command list" -msgstr "×¢Ö´×™× ×¢ בּעפֿעהלשלִישתע בּוֹוֹתענ" - -#: grub-core/normal/menu_text.c:160 -msgid "" -"Minimum Emacs-like screen editing is supported. TAB lists completions. Press " -"Ctrl-x or F10 to boot, Ctrl-c or F2 for a command-line or ESC to discard " -"edits and return to the GRUB menu." -msgstr "" -"מִינִימ×לע עמ×צש-ֶהנלִיצהע בִּילדשצהִירמבּע×רבּעִיתוּנג וִירד וּנתערשתֻתזת. ת×בּ לִישתעת " -"בֿערבֿוֹללשתֶנדִיגוּנגענ ×וּפֿ. דרֻצכּענ שִיע שתרג-כּס וֹדער פֿ10 זוּמ בּוֹוֹתענ, שתרג-צ וֹדער " -"פֿ2 פֻֿר ×¢Ö´×™× ×¢ בּעפֿעהלשזעִילע וֹדער עשצ, וּמ ×בּזוּבּרעצהענ וּנד זוּמ גרוּבּ-מענֻ " -"זוּרֻצכּזוּכּעהרענ." - -#: grub-core/normal/menu_text.c:170 -#, c-format -msgid "Use the %C and %C keys to select which entry is highlighted." -msgstr "בֿערוענדענ שִיע דִיע ת×שתענ %C וּנד %C זוּמ מ×רכִּיערענ עִינעש עִינתר×גש." - -#. TRANSLATORS: that's the list of binary unit prefixes. -#: grub-core/normal/misc.c:38 -msgid "B" -msgstr "בּ" - -#: grub-core/normal/misc.c:38 -msgid "KiB" -msgstr "כִּיבּ" - -#: grub-core/normal/misc.c:38 -msgid "MiB" -msgstr "מִיבּ" - -#: grub-core/normal/misc.c:38 -msgid "GiB" -msgstr "גִיבּ" - -#: grub-core/normal/misc.c:38 -msgid "TiB" -msgstr "תִיבּ" - -#: grub-core/normal/misc.c:38 -msgid "PiB" -msgstr "פִּיבּ" - -#. TRANSLATORS: that's the list of binary unit prefixes. -#: grub-core/normal/misc.c:40 -msgid "K" -msgstr "×›Ö¼" - -#: grub-core/normal/misc.c:40 -msgid "M" -msgstr "מ" - -#: grub-core/normal/misc.c:40 -msgid "G" -msgstr "×’" - -#: grub-core/normal/misc.c:40 -msgid "T" -msgstr "ת" - -#: grub-core/normal/misc.c:40 -msgid "P" -msgstr "פּ" - -#. TRANSLATORS: that's the list of binary unit prefixes. -#: grub-core/normal/misc.c:42 -msgid "B/s" -msgstr "בּ/ש" - -#: grub-core/normal/misc.c:42 -msgid "KiB/s" -msgstr "כִּיבּ/ש" - -#: grub-core/normal/misc.c:42 -msgid "MiB/s" -msgstr "מִיבּ/ש" - -#: grub-core/normal/misc.c:42 -msgid "GiB/s" -msgstr "גִיבּ/ש" - -#: grub-core/normal/misc.c:42 -msgid "TiB/s" -msgstr "תִיבּ/ש" - -#: grub-core/normal/misc.c:42 -msgid "PiB/s" -msgstr "פִּיבּ/ש" - -#: grub-core/normal/misc.c:96 -#, c-format -msgid "Partition %s:" -msgstr "פּ×רתִיתִיוֹנ %s:" - -#: grub-core/normal/misc.c:101 -#, c-format -msgid "Device %s:" -msgstr "גערֶת %s:" - -#: grub-core/normal/misc.c:107 -msgid "Filesystem cannot be accessed" -msgstr "זוּגרִיפֿפֿ ×וּפֿ ד×תעִישיִשתעמ נִיצהת מֵגלִיצה" - -#: grub-core/normal/misc.c:121 -#, c-format -msgid "Filesystem type %s" -msgstr "ד×תעִישיִשתעמתיִפּ %s" - -#: grub-core/normal/misc.c:131 -#, c-format -msgid "- Label `%s'" -msgstr "- בּעזעִיצהנוּנג »%s«" - -#. TRANSLATORS: Arguments are year, month, day, hour, minute, -#. second, day of the week (translated). -#: grub-core/normal/misc.c:148 -#, c-format -msgid "- Last modification time %d-%02d-%02d %02d:%02d:%02d %s" -msgstr "- לעתזתע ֶנדערוּנגשזעִית %d-%02d-%02d %02d:%02d:%02d %s" - -#: grub-core/normal/misc.c:171 -msgid "No known filesystem detected" -msgstr "×›Ö¼×¢Ö´×™×  בּעכּ×ננתעש ד×תעִישיִשתעמ ערכּ×ננת" - -#: grub-core/normal/misc.c:174 -#, c-format -msgid " - Partition start at %llu%sKiB" -msgstr " - פּ×רתִיתִיוֹנשבּעגִיננ בּעִי %llu%sכִּיבּ" - -#: grub-core/normal/misc.c:178 -#, c-format -msgid " - Sector size %uB" -msgstr " - שעכּתוֹרגרֵססע %uבּ" - -#: grub-core/normal/misc.c:180 -msgid " - Total size unknown" -msgstr " - געש×מתגרֵססע וּנבּעכּ×ננת" - -#: grub-core/normal/misc.c:182 -#, c-format -msgid " - Total size %llu%sKiB" -msgstr " - געש×מתגרֵססע %llu%sכִּיבּ" - -#. TRANSLATORS: Replace dot with appropriate decimal separator for -#. your language. -#: grub-core/normal/misc.c:186 -msgid ".5" -msgstr ".5" - -#. TRANSLATORS: This has to fit on one line. It's ok to include few -#. words but don't write poems. -#: grub-core/normal/term.c:82 -msgid "--MORE--" -msgstr "--מעהר--" - -#: grub-core/osdep/aros/config.c:92 grub-core/osdep/unix/config.c:137 -#: grub-core/osdep/windows/config.c:55 -#, c-format -msgid "cannot open configuration file `%s': %s" -msgstr "כּוֹנפִֿיגוּר×תִיוֹנשד×תעִי »%s« ×›Ö¼×× ×  נִיצהת געֵפֿפֿנעת וערדענ: %s" - -#: grub-core/osdep/basic/compress.c:8 grub-core/osdep/basic/compress.c:14 -#: grub-core/osdep/basic/compress.c:20 -msgid "no compression is available for your platform" -msgstr "×וּפֿ ִיהרער פּל×תתפֿוֹרמ ִישת ×›Ö¼×¢Ö´×™× ×¢ כּוֹמפּרעששִיוֹנ בֿערפֻֿגבּ×ר" - -#: grub-core/osdep/basic/no_platform.c:30 -#: grub-core/osdep/windows/platform.c:418 -msgid "no IEEE1275 routines are available for your platform" -msgstr "פֻֿר ִיהרע פּל×תתפֿוֹרמ שִינד ×›Ö¼×¢Ö´×™× ×¢ Ö´×™×¢×¢×¢1275-רוֹוּתִינענ בֿערפֻֿגבּ×ר" - -#: grub-core/osdep/basic/no_platform.c:38 -msgid "no EFI routines are available for your platform" -msgstr "פֻֿר ִיהרע פּל×תתפֿוֹרמ שִינד ×›Ö¼×¢Ö´×™× ×¢ עפִֿי-רוֹוּתִינענ בֿערפֻֿגבּ×ר" - -#: grub-core/osdep/basic/no_platform.c:45 -#: grub-core/osdep/windows/platform.c:425 -msgid "no SGI routines are available for your platform" -msgstr "פֻֿר ִיהרע פּל×תתפֿוֹרמ שִינד ×›Ö¼×¢Ö´×™× ×¢ שגִי-רוֹוּתִינענ בֿערפֻֿגבּ×ר" - -#. TRANSLATORS: The OS itself may very well have a random -#. number generator but GRUB doesn't know how to access it. -#: grub-core/osdep/basic/random.c:42 -msgid "no random number generator is available for your OS" -msgstr "פֻֿר ִיהר בּעתרִיעבּששיִשתעמ ִישת ×›Ö¼×¢Ö´×™×  זוּפֿ×ללשז×הלענגענער×תוֹר בֿערפֻֿגבּ×ר" - -#: grub-core/osdep/devmapper/getroot.c:81 -msgid "Failed to create `device-mapper' tree" -msgstr "בּ×וּמ פֻֿר »דעבִֿיצע-מ×פּפּער« כּוֹננתע נִיצהת ערשתעללת וערדענ" - -#: grub-core/osdep/devmapper/getroot.c:197 -#: grub-core/osdep/freebsd/getroot.c:202 -#, c-format -msgid "can't mount encrypted volume `%s': %s" -msgstr "בֿערשצהלֻששעלתער ד×תענתרֶגער »%s« כּוֹננתע נִיצהת עִינגעבּוּנדענ וערדענ: %s" - -#. TRANSLATORS: geom is the name of (k)FreeBSD device framework. -#. Usually left untranslated. -#. -#: grub-core/osdep/freebsd/getroot.c:82 grub-core/osdep/freebsd/getroot.c:164 -#: grub-core/osdep/freebsd/getroot.c:258 grub-core/osdep/freebsd/getroot.c:316 -msgid "couldn't open geom" -msgstr "»געוֹמ« כּוֹננתע נִיצהת געֵפֿפֿנעת וערדענ!" - -#: grub-core/osdep/freebsd/getroot.c:182 grub-core/osdep/freebsd/getroot.c:277 -msgid "couldn't find geli consumer" -msgstr "געלִי-נוּתזער כּוֹננתע נִיצהת געפֿוּנדענ וערדענ" - -#: grub-core/osdep/freebsd/getroot.c:282 -msgid "couldn't retrieve geli UUID" -msgstr "געלִי-וּוִּיד כּוֹננתע נִיצהת ערמִיתתעלת וערדענ" - -#. TRANSLATORS: geom is the name of (k)FreeBSD device framework. -#. Usually left untranslated. "part" is the identifier of one of its -#. classes. -#: grub-core/osdep/freebsd/getroot.c:325 -msgid "couldn't find geom `part' class" -msgstr "»פּ×רת«-תעִיל בֿוֹנ »געוֹמ« כּוֹננתע נִיצהת געֵפֿפֿנעת וערדענ" - -#: grub-core/osdep/freebsd/hostdisk.c:72 grub-core/osdep/linux/hostdisk.c:93 -msgid "unaligned device size" -msgstr "גערֶתעגרֵססע ִישת וּנ×וּשגערִיצהתעת" - -#: grub-core/osdep/generic/blocklist.c:56 -#, c-format -msgid "attempting to read the core image `%s' from GRUB" -msgstr "עש וִירד בֿערשוּצהת, ד×ש צוֹרע-×בּבִּילד »%s« ×וּש גרוּבּ זוּ לעשענ" - -#: grub-core/osdep/generic/blocklist.c:57 -#, c-format -msgid "attempting to read the core image `%s' from GRUB again" -msgstr "עש וִירד בֿערשוּצהת, ד×ש צוֹרע-×בּבִּילד »%s« ערנעוּת ×וּש גרוּבּ זוּ לעשענ" - -#: grub-core/osdep/generic/blocklist.c:115 -#, c-format -msgid "cannot read `%s' correctly" -msgstr "»%s« ×›Ö¼×× ×  נִיצהת כּוֹררעכּת געלעשענ וערדענ" - -#: grub-core/osdep/generic/blocklist.c:126 -msgid "failed to read the sectors of the core image" -msgstr "לעשענ דער שעכּתוֹרענ דעש צוֹרע-×בּבִּילדעש ִישת געשצהעִיתערת" - -#. TRANSLATORS: On GNU/Hurd, a "translator" is similar to a filesystem -#. mount, but handled by a userland daemon, whose invocation command line -#. is being fetched here. First %s is the file being looked at (for which -#. we are fetching the "translator" command line), second %s is the error -#. message. -#. -#: grub-core/osdep/hurd/getroot.c:79 -#, c-format -msgid "cannot get translator command line for path `%s': %s" -msgstr "" -"ֻבּערשעתזער-בּעפֿעהלשזעִילענפּפֿ×ד פֻֿר פּפֿ×ד »%s« כּוֹננתע נִיצהת ערמִיתתעלת וערדענ: %s" - -#: grub-core/osdep/hurd/getroot.c:82 -#, c-format -msgid "translator command line is empty for path `%s'" -msgstr "ֻבּערשעתזער-בּעפֿעהלשזעִילענפּפֿ×ד פֻֿר פּפֿ×ד »%s« ִישת לעער" - -#. TRANSLATORS: we expect to get something like -#. /hurd/foobar --option1 --option2=baz /dev/something -#. -#: grub-core/osdep/hurd/getroot.c:98 -#, c-format -msgid "" -"translator `%s' for path `%s' has several non-option words, at least `%s' " -"and `%s'" -msgstr "" -"ֻבּערשעתזער »%s« פֻֿר פּפֿ×ד »%s« ×”×ת בֿערשצהִיעדענע וֵרתער, דִיע ×›Ö¼×¢Ö´×™× ×¢ וֹפּתִיוֹנענ שִינד, " -"מִינדעשתענש »%s« וּנד »%s«" - -#. TRANSLATORS: we expect to get something like -#. /hurd/foobar --option1 --option2=baz /dev/something -#. -#: grub-core/osdep/hurd/getroot.c:109 -#, c-format -msgid "" -"translator `%s' for path `%s' is given only options, cannot find device part" -msgstr "" -"ֻבּערשעתזער »%s« פֻֿר פּפֿ×ד »%s« ווּרדע נוּר וֹפּתִיוֹנענ ֻבּערגעבּענ, דעבִֿיצע-תעִיל כּוֹננתע " -"נִיצהת געפֿוּנדענ וערדענ" - -#: grub-core/osdep/hurd/hostdisk.c:73 -#, c-format -msgid "Storage information for `%s' does not include type" -msgstr "שפּעִיצהערִינפֿוֹ פֻֿר »%s« ענתהֶלת ×›Ö¼×¢Ö´×™× ×¢×  תיִפּ" - -#: grub-core/osdep/hurd/hostdisk.c:75 -#, c-format -msgid "`%s' is not a local disk" -msgstr "»%s« ִישת ×›Ö¼×¢Ö´×™× ×¢ לוֹכּ×לע פֿעשתפּל×תתע" - -#: grub-core/osdep/hurd/hostdisk.c:78 -#, c-format -msgid "" -"Storage information for `%s' indicates neither a plain partition nor a plain " -"disk" -msgstr "" -"שפּעִיצהערִינפֿוֹרמ×תִיוֹנ פֻֿר »%s« ועִישת ועדער ×וּפֿ ×¢Ö´×™× ×¢ פּ×רתִיתִיוֹנ נוֹצה ×¢Ö´×™× ×¢×  " -"ד×תענתרֶגער ×”Ö´×™× " - -#: grub-core/osdep/linux/blocklist.c:81 grub-core/osdep/linux/blocklist.c:96 -#: grub-core/osdep/linux/blocklist.c:122 -#, c-format -msgid "can't retrieve blocklists: %s" -msgstr "בּלוֹצכּלִישתענ כּוֹננתענ נִיצהת ערמִיתתעלת וערדענ: %s" - -#: grub-core/osdep/linux/blocklist.c:84 -msgid "blocksize is not divisible by 512" -msgstr "בּלוֹצכּגרֵססע ִישת נִיצהת דוּרצה 512 תעִילבּ×ר" - -#: grub-core/osdep/linux/blocklist.c:86 -msgid "invalid zero blocksize" -msgstr "וּנגֻלתִיגע בּלוֹצכּגרֵססע נוּלל" - -#: grub-core/osdep/linux/blocklist.c:90 util/setup.c:744 -msgid "can't retrieve blocklists" -msgstr "בּלוֹצכּלִישתענ כּוֹננתענ נִיצהת ערמִיתתעלת וערדענ" - -#: grub-core/osdep/linux/getroot.c:154 -#, c-format -msgid "ioctl RAID_VERSION error: %s" -msgstr "ר×ִיד_בֿערשִיוֹנ-פֿעהלער (ִיוֹצתל): %s" - -#: grub-core/osdep/linux/getroot.c:160 grub-core/osdep/linux/getroot.c:164 -#, c-format -msgid "unsupported RAID version: %d.%d" -msgstr "נִיצהת וּנתערשתֻתזתע ר×ִיד-בֿערשִיוֹנ: %d.%d" - -#: grub-core/osdep/linux/getroot.c:169 -#, c-format -msgid "ioctl GET_ARRAY_INFO error: %s" -msgstr "געת_×רר××™Ö´_ִינפֿוֹ-פֿעהלער (ִיוֹצתל): %s" - -#: grub-core/osdep/linux/getroot.c:178 -#, c-format -msgid "ioctl GET_DISK_INFO error: %s" -msgstr "געת_דִישכּ_ִינפֿוֹ-פֿעהלער (ִיוֹצתל): %s" - -#: grub-core/osdep/linux/getroot.c:608 grub-core/osdep/linux/getroot.c:678 -#: grub-core/osdep/linux/hostdisk.c:126 grub-core/osdep/unix/getroot.c:253 -#: grub-core/osdep/unix/getroot.c:642 grub-core/osdep/unix/platform.c:92 -#: grub-core/osdep/unix/platform.c:100 -#, c-format -msgid "Unable to open stream from %s: %s" -msgstr "ד×תענשתרוֹמ בֿוֹנ %s כּוֹננתע נִיצהת געֵפֿפֿנעת וערדענ: %s" - -#: grub-core/osdep/linux/getroot.c:1033 -#, c-format -msgid "unknown kind of RAID device `%s'" -msgstr "וּנגֻלתִיגער תיִפּ עִינעש ר×ִיד-גערֶתש »%s«" - -#: grub-core/osdep/linux/ofpath.c:181 -#, c-format -msgid "`obppath' not found in parent dirs of `%s', no IEEE1275 name discovery" -msgstr "" -"»וֹבּפּפּ×תה« ווּרדע Ö´×™×  דענ ֻבּערגעוֹרדנעתענ בֿערזעִיצהנִיששענ בֿוֹנ »%s« נִיצהת געפֿוּנדענ, " -"×›Ö¼×¢Ö´×™× ×¢ Ö´×™×¢×¢×¢1275-× ×מענשערמִיתתלוּנג" - -#: grub-core/osdep/linux/ofpath.c:222 grub-core/osdep/unix/getroot.c:505 -#: grub-core/osdep/unix/getroot.c:529 grub-core/osdep/unix/relpath.c:49 -#: util/grub-install.c:984 util/grub-install.c:1331 util/grub-probe.c:323 -#, c-format -msgid "failed to get canonical path of `%s'" -msgstr "×›Ö¼×נוֹנִישצהער פּפֿ×ד בֿוֹנ »%s« כּוֹננתע נִיצהת ערמִיתתעלת וערדענ" - -#: grub-core/osdep/linux/ofpath.c:740 -#, c-format -msgid "unknown device type %s" -msgstr "וּנבּעכּ×ננתער גערֶתעתיִפּ %s" - -#: grub-core/osdep/linux/ofpath.c:758 util/ieee1275/grub-ofpathname.c:39 -#, c-format -msgid "Usage: %s DEVICE\n" -msgstr "×וּפֿרוּפֿ: %s גערֶת\n" - -#: grub-core/osdep/unix/exec.c:86 grub-core/osdep/unix/exec.c:172 -#: grub-core/osdep/unix/exec.c:217 -#, c-format -msgid "Unable to fork: %s" -msgstr "פֿוֹרכּ כּוֹננתע נִיצהת ×נגעלעגת וערדענ: %s" - -#: grub-core/osdep/unix/exec.c:166 grub-core/osdep/unix/exec.c:211 -#, c-format -msgid "Unable to create pipe: %s" -msgstr "ועִיתערלעִיתוּנג כּוֹננתע נִיצהת ×נגעלעגת וערדענ: %s" - -#: grub-core/osdep/unix/getroot.c:370 -msgid "cannot save the original directory" -msgstr "וֹרִיגִינ×לבֿערזעִיצהנִיש ×›Ö¼×× ×  נִיצהת געשפּעִיצהערת וערדענ" - -#: grub-core/osdep/unix/getroot.c:423 grub-core/osdep/unix/getroot.c:480 -#: grub-core/osdep/unix/getroot.c:489 -msgid "cannot restore the original directory" -msgstr "וֹרִיגִינ×לבֿערזעִיצהנִיש ×›Ö¼×× ×  נִיצהת וִיעדערהערגעשתעללת וערדענ" - -#. TRANSLATORS: "stat" comes from the name of POSIX function. -#: grub-core/osdep/unix/getroot.c:551 grub-core/osdep/unix/hostdisk.c:61 -#: grub-core/osdep/unix/relpath.c:73 grub-core/osdep/unix/relpath.c:97 -#: util/getroot.c:160 util/getroot.c:162 util/grub-install.c:774 -#: util/grub-macbless.c:70 -#, c-format -msgid "cannot stat `%s': %s" -msgstr "×וּפֿרוּפֿ בֿוֹנ שת×ת פֻֿר »%s« נִיצהת מֵגלִיצה: %s" - -#: grub-core/osdep/unix/hostdisk.c:293 -#, c-format -msgid "cannot make temporary file: %s" -msgstr "תעמפּוֹרֶרע ד×תעִי ×›Ö¼×× ×  נִיצהת ×נגעלעגת וערדענ: %s" - -#: grub-core/osdep/unix/hostdisk.c:311 -#, c-format -msgid "cannot make temporary directory: %s" -msgstr "תעמפּוֹרֶרעש בֿערזעִיצהנִיש כּוֹננתע נִיצהת ערשתעללת וערדענ: %s" - -#: grub-core/osdep/unix/platform.c:77 -#, c-format -msgid "" -"couldn't find IEEE1275 device path for %s.\n" -"You will have to set `boot-device' variable manually" -msgstr "" -"Ö´×™×¢×¢×¢1275-גערֶתעפּפֿ×ד פֻֿר %s כּוֹננתע נִיצהת געפֿוּנדענ וערדענ.\n" -"שִיע מֻששענ דִיע בֿ×רִי×בּלע »בּוֹוֹת-דעבִֿיצע« מ×נוּעלל שעתזענ." - -#. TRANSLATORS: This message is shown when required executable `%s' -#. isn't found. -#: grub-core/osdep/unix/platform.c:149 grub-core/osdep/unix/platform.c:189 -#, c-format -msgid "%s: not found" -msgstr "%s: נִיצהת געפֿוּנדענ" - -#: grub-core/osdep/unix/platform.c:225 -#, c-format -msgid "" -"`nvsetenv' failed. \n" -"You will have to set `boot-device' variable manually. At the IEEE1275 " -"prompt, type:\n" -" %s\n" -msgstr "" -"»נבֿשעתענבֿ« ִישת פֿעהלגעשצהל××’×¢× . \n" -"שִיע מֻששענ דִיע בֿ×רִי×בּלע »בּוֹוֹת-דעבִֿיצע« מ×נוּעלל שעתזענ. געבּענ שִיע ×מ Ö´×™×¢×¢×¢1275-" -"פּרוֹמפּת פֿוֹלגענדעש ×¢Ö´×™× :\n" -" %s\n" - -#: grub-core/osdep/unix/platform.c:240 -msgid "You will have to set `SystemPartition' and `OSLoader' manually." -msgstr "»שיִשתעמפּ×רתִיתִיוֹנ« וּנד »וֹשלוֹ×דער« מֻששענ מ×נוּעלל עִינגערִיצהתעת וערדענ." - -#. TRANSLATORS: canonical pathname is the -#. complete one e.g. /etc/fstab. It has -#. to contain `/' normally, if it doesn't -#. we're in trouble and throw this error. -#: grub-core/osdep/unix/relpath.c:90 -msgid "no `/' in canonical filename" -msgstr "×›Ö¼×נוֹנִישצהער פּפֿ×דנ×מע ענתהֶלת ×›Ö¼×¢Ö´×™× ×¢×  »/«" - -#: grub-core/osdep/windows/hostdisk.c:151 -msgid "cygwin_conv_path() failed" -msgstr "ציִגוִינ_צוֹנבֿ_פּ×תה() געשצהעִיתערת" - -#: grub-core/osdep/windows/hostdisk.c:501 util/grub-install.c:570 -msgid "couldn't retrieve random data" -msgstr "זוּפֿ×ללשד×תענ כּוֹננתענ נִיצהת געהוֹלת וערדענ" - -#: grub-core/osdep/windows/platform.c:97 -msgid "Insufficient privileges to access firmware, assuming BIOS" -msgstr "וּנזוּרעִיצהענדע זוּגרִיפֿפֿשרעצהתע פֻֿר פִֿירמו×רע, בִּיוֹש וִירד ×נגענוֹממענ" - -#: grub-core/osdep/windows/platform.c:225 -msgid "no EFI routines are available when running in BIOS mode" -msgstr "ִימ בִּיוֹש-מוֹדוּש שִינד ×›Ö¼×¢Ö´×™× ×¢ עפִֿי-רוֹוּתִינענ בֿערפֻֿגבּ×ר" - -#: grub-core/osdep/windows/platform.c:240 -msgid "unexpected EFI error" -msgstr "וּנערו×רתעתער עפִֿי-פֿעהלער" - -#: grub-core/osdep/windows/platform.c:315 -msgid "Couldn't find a free BootNNNN slot" -msgstr "עש כּוֹננתע ×›Ö¼×¢Ö´×™× ×¢ פֿרעִיער בּוֹוֹתננננ-שלוֹת ִישת" - -#: grub-core/partmap/gpt.c:191 -msgid "" -"this GPT partition label contains no BIOS Boot Partition; embedding won't be " -"possible" -msgstr "" -"דִיעשע גפּת-פּ×רתִיתִיוֹנשבּעזעִיצהנוּנג ×”×ת ×›Ö¼×¢Ö´×™× ×¢ בִּיוֹש-בּוֹוֹת-פּ×רתִיתִיוֹנ, עִינבּעתתוּנג " -"וֻרדע וּנמֵגלִיצה שעִינ" - -#: grub-core/partmap/gpt.c:196 -msgid "your BIOS Boot Partition is too small; embedding won't be possible" -msgstr "ִיהרע בִּיוֹש-בּוֹוֹת-פּ×רתִיתִיוֹנ ִישת זוּ כּלעִינ, עִינבּעתתוּנג וֻרדע וּנמֵגלִיצה שעִינ" - -#. TRANSLATORS: MBR gap and boot track is the same thing and is the space -#. between MBR and first partitition. If your language translates well only -#. "boot track", you can just use it everywhere. Next two messages are about -#. RAID controllers/software bugs which GRUB has to live with. Please spread -#. the message that these are bugs in other software and not merely -#. suboptimal behaviour. -#: grub-core/partmap/msdos.c:51 -#, c-format -msgid "" -"Sector %llu is already in use by raid controller `%s'; avoiding it. Please " -"ask the manufacturer not to store data in MBR gap" -msgstr "" -"דער שעכּתוֹר %llu וִירד בּערעִיתש בֿוֹמ ר×ִיד-צוֹנתרוֹללער »%s« בֿערוענדעת וּנד וִירד " -"ד×הער ֻבּערג×× ×’×¢× . בִּיתתע פֿר××’×¢×  שִיע דענ הערשתעללער, וֹבּ עש מֵגלִיצה ִישת, ×›Ö¼×¢Ö´×™× ×¢ " -"ד×תענ Ö´×™×  דער מבּר-לֻצכּע זוּ שפּעִיצהערנ." - -#: grub-core/partmap/msdos.c:54 -#, c-format -msgid "" -"Sector %llu is already in use by the program `%s'; avoiding it. This " -"software may cause boot or other problems in future. Please ask its authors " -"not to store data in the boot track" -msgstr "" -"דער שעכּתוֹר %llu וִירד בּערעִיתש בֿוֹמ פּרוֹגר×ממ »%s« בֿערוענדעת וּנד וִירד ד×הער Ö»" -"בּערג×× ×’×¢× . דִיעשע שוֹפֿתו×רע ×›Ö¼×× ×  Ö´×™×  זוּכּוּנפֿת שת×רת- וֹדער ×נדערע פּרוֹבּלעמע " -"הערבֿוֹררוּפֿענ. בִּיתתע פֿר××’×¢×  שִיע דעששענ ×וּתוֹרענ, וֹבּ עש מֵגלִיצה ִישת, ×›Ö¼×¢Ö´×™× ×¢ ד×תענ Ö´" -"ימ בּוֹוֹת-בּערעִיצה זוּ שפּעִיצהערנ." - -#: grub-core/partmap/msdos.c:384 -msgid "" -"other software is using the embedding area, and there is not enough room for " -"core.img. Such software is often trying to store data in a way that avoids " -"detection. We recommend you investigate" -msgstr "" -"×נדערע שוֹפֿתו×רע נוּתזת דענ עִינבּעתתוּנגשבּערעִיצה, ווֹדוּרצה נִיצהת גענוּג פּל×תז פֻֿר " -"צוֹרע.ִימג ִישת. שוֹלצהע שוֹפֿתו×רע בֿערשוּצהת הֶוּפִֿיג, ד×תענ זוּ שפּעִיצהערנ, וּמ שִיע " -"וּנ×וּפֿפִֿינדבּ×ר זוּ מ×צהענ. וִיר עמפּפֿעהלענ Ö´×™×”× ×¢× , דִיעש זוּ וּנתערשוּצהענ" - -#: grub-core/partmap/msdos.c:395 -msgid "" -"this msdos-style partition label has no post-MBR gap; embedding won't be " -"possible" -msgstr "" -"דִיע משדוֹש-פּ×רתִיתִיוֹנשבּעזעִיצהנוּנג ×”×ת ×›Ö¼×¢Ö´×™× ×¢×  פֿרעִיר×וּמ × ×צה דעמ מבּר, עִינבּעתתוּנג " -"וֻרדע וּנמֵגלִיצה שעִינ" - -#: grub-core/partmap/msdos.c:404 -msgid "your embedding area is unusually small. core.img won't fit in it." -msgstr "" -"ִיהר עִינבּעתתוּנגשבּערעִיצה ִישת וּנגעוֵהנלִיצה כּלעִינ. צוֹרע.ִימג וֻרדע נִיצהת " -"הִינעִינפּ×ששענ." - -#: grub-core/parttool/msdospart.c:39 -msgid "Make partition active" -msgstr "פּ×רתִיתִיוֹנ ×לש ×כּתִיבֿ מ×רכִּיערענ" - -#: grub-core/parttool/msdospart.c:51 -msgid "not a primary partition" -msgstr "×›Ö¼×¢Ö´×™× ×¢ פּרִימֶרע פּ×רתִיתִיוֹנ" - -#: grub-core/parttool/msdospart.c:69 -#, c-format -msgid "Partition %d is active now. \n" -msgstr "פּ×רתִיתִיוֹנ %d ִישת נוּנ ×כּתִיבֿ. \n" - -#: grub-core/parttool/msdospart.c:74 -#, c-format -msgid "Cleared active flag on %d. \n" -msgstr "»×צתִיבֿע«-פֿל××’ ×וּפֿ %d ווּרדע געלֵשצהת. \n" - -#: grub-core/parttool/msdospart.c:87 -msgid "Change partition type" -msgstr "פּ×רתִיתִיוֹנשתיִפּ ֶנדערנ" - -#: grub-core/parttool/msdospart.c:88 -msgid "Set `hidden' flag in partition type" -msgstr "»הִידדענ«-פֿל××’ ִימ פּ×רתִיתִיוֹנשתיִפּ שעתזענ" - -#: grub-core/parttool/msdospart.c:130 -#, c-format -msgid "the partition type 0x%x isn't valid" -msgstr "דער פּ×רתִיתִיוֹנשתיִפּ 0כּס%x ִישת וּנגֻלתִיג" - -#. TRANSLATORS: In this case we're actually writing to the disk and actively -#. modifying partition type rather than just defining it. -#: grub-core/parttool/msdospart.c:137 -#, c-format -msgid "Setting partition type to 0x%x\n" -msgstr "פּ×רתִיתִיוֹנשתיִפּ וִירד ×וּפֿ 0כּס%x געשעתזת\n" - -#. TRANSLATORS: 0 is a quantifier. "break" (similar to bash) -#. can be used e.g. to break 3 loops at once. -#. But asking it to break 0 loops makes no sense. -#: grub-core/script/execute.c:143 -msgid "can't break 0 loops" -msgstr "0 שצהלעִיפֿענ ×›Ö¼Öµ× × ×¢×  נִיצהת וּנתערבּרוֹצהענ וערדענ" - -#. TRANSLATORS: It's about not being -#. inside a function. "return" can be used only -#. in a function and this error occurs if it's used -#. anywhere else. -#: grub-core/script/execute.c:227 -msgid "not in function body" -msgstr "×וּססערה×לבּ דעש בּערעִיצהש דער פֿוּנכּתִיוֹנ" - -#: grub-core/script/execute.c:371 -#, c-format -msgid "invalid variable name `%s'" -msgstr "וּנגֻלתִיגער בֿ×רִי×בּלעננ×מע »%s«" - -#: grub-core/script/execute.c:953 -msgid "cannot allocate command buffer" -msgstr "בּעפֿעהלשפּוּפֿפֿער ×›Ö¼×× ×  נִיצהת בּעלעגת וערדענ" - -#: grub-core/script/lexer.c:144 util/grub-fstest.c:330 -msgid "unexpected end of file" -msgstr "וּנערו×רתעתעש ד×תעִיענדע" - -#: grub-core/script/main.c:55 grub-core/script/main.c:57 -#: grub-core/script/main.c:59 grub-core/script/main.c:67 -msgid "[NUM]" -msgstr "[×–×הל]" - -#: grub-core/script/main.c:55 -msgid "Exit from loops" -msgstr "שצהלעִיפֿענדוּרצהל×וּפֿ בּעענדענ" - -#: grub-core/script/main.c:57 -msgid "Continue loops" -msgstr "שצהלעִיפֿענ פֿוֹרתשעתזענ" - -#. TRANSLATORS: Positional arguments are -#. arguments $0, $1, $2, ... -#: grub-core/script/main.c:62 -msgid "Shift positional parameters." -msgstr "פּוֹשִיתִיוֹנשפּ×ר×מעתער ×נפּ×ששענ." - -#: grub-core/script/main.c:64 -msgid "[VALUE]..." -msgstr "[וערת]..." - -#: grub-core/script/main.c:65 -msgid "Set positional parameters." -msgstr "פּוֹשִיתִיוֹנשפּ×ר×מעתער פֿעשתלעגענ." - -#. TRANSLATORS: It's a command description -#. and "Return" is a verb, not a noun. The -#. command in question is "return" and -#. has exactly the same semanics as bash -#. equivalent. -#: grub-core/script/main.c:73 -msgid "Return from a function." -msgstr "×וּש עִינער פֿוּנכּתִיוֹנ זוּרֻצכּכּעהרענ." - -#: grub-core/term/gfxterm_background.c:176 -msgid "[-m (stretch|normal)] FILE" -msgstr "[-מ (שתרעתצה|נוֹרמ×ל)] ד×תעִי" - -#: grub-core/term/gfxterm_background.c:177 -msgid "Load background image for active terminal." -msgstr "הִינתערגרוּנדבִּילד פֻֿר ×כּתִיבֿעש תערמִינ×ל ל×דענ." - -#: grub-core/term/gfxterm_background.c:182 util/grub-install.c:302 -#: util/grub-install.c:303 util/grub-mkrescue.c:107 util/grub-mkrescue.c:108 -#: util/grub-render-label.c:61 util/grub-render-label.c:63 -msgid "COLOR" -msgstr "פֿ×רבּע" - -#: grub-core/term/gfxterm_background.c:183 -msgid "Set background color for active terminal." -msgstr "הִינתערגרוּנדפֿ×רבּע פֻֿר ×כּתִיבֿעש תערמִינ×ל פֿעשתלעגענ." - -#: grub-core/term/i386/coreboot/cbmemc.c:139 -msgid "Show CBMEM console content." -msgstr "Ö´×™× ×”×לת דער צבּמעמ-כּוֹנשוֹלע ×× ×–×¢Ö´×™×’×¢× ." - -#: grub-core/term/serial.c:57 -msgid "Set the serial unit." -msgstr "עִינהעִית דעש שערִיעללענ פּוֹרתש פֿעשתלעגענ." - -#: grub-core/term/serial.c:58 -msgid "Set the serial port address." -msgstr "×דרעששע דעש שערִיעללענ פּוֹרתש פֿעשתלעגענ." - -#: grub-core/term/serial.c:59 -msgid "Set the serial port speed." -msgstr "געשצהוִינדִיגכּעִית דעש שערִיעללענ פּוֹרתש פֿעשתלעגענ." - -#: grub-core/term/serial.c:60 -msgid "Set the serial port word length." -msgstr "ווֹרתלֶנגע דעש שערִיעללענ פּוֹרתש פֿעשתלעגענ." - -#: grub-core/term/serial.c:61 -msgid "Set the serial port parity." -msgstr "פּ×רִיתֶת דעש שערִיעללענ פּוֹרתש פֿעשתלעגענ." - -#: grub-core/term/serial.c:62 -msgid "Set the serial port stop bits." -msgstr "שתוֹפּ-בִּיתש דעש שערִיעללענ פּוֹרתש פֿעשתלעגענ." - -#: grub-core/term/serial.c:63 -msgid "Set the base frequency." -msgstr "בּ×שִישפֿרעקוּענז פֿעשתלעגענ." - -#: grub-core/term/serial.c:64 -msgid "Enable/disable RTS/CTS." -msgstr "רתש/צתש ×כּתִיבִֿיערענ/דע×כּתִיבִֿיערענ." - -#: grub-core/term/serial.c:218 -#, c-format -msgid "serial port `%s' isn't found" -msgstr "שערִיעללער פּוֹרת »%s« ווּרדע נִיצהת געפֿוּנדענ" - -#: grub-core/term/serial.c:254 -msgid "unsupported serial port flow control" -msgstr "פֿלוּששכּוֹנתרוֹללע דעש שערִיעללענ פּוֹרתש וִירד נִיצהת וּנתערשתֻתזת" - -#: grub-core/term/serial.c:429 -msgid "[OPTIONS...]" -msgstr "[וֹפּתִיוֹנענ…]" - -#: grub-core/term/serial.c:430 -msgid "Configure serial port." -msgstr "שערִיעללע שצהנִיתתשתעללע כּוֹנפִֿיגוּרִיערענ." - -#: grub-core/term/terminfo.c:184 -#, c-format -msgid "unknown terminfo type `%s'" -msgstr "וּנבּעכּ×ננתער תערמִינפֿוֹ-תיִפּ »%s«" - -#: grub-core/term/terminfo.c:668 -msgid "ASCII" -msgstr "×שצִיִי" - -#: grub-core/term/terminfo.c:671 -msgid "UTF-8" -msgstr "וּתפֿ-8" - -#. TRANSLATORS: visually ordered UTF-8 is a non-compliant encoding -#. based on UTF-8 with right-to-left languages written in reverse. -#. Used on some terminals. Normal UTF-8 is refered as -#. "logically-ordered UTF-8" by opposition. -#: grub-core/term/terminfo.c:677 -msgid "visually-ordered UTF-8" -msgstr "בִֿישוּעללעש וּתפֿ-8" - -#: grub-core/term/terminfo.c:680 -msgid "Unknown encoding" -msgstr "וּנבּעכּ×ננתע כּוֹדִיערוּנג" - -#: grub-core/term/terminfo.c:684 -msgid "Current terminfo types:" -msgstr "×כּתוּעללע תערמִינפֿוֹ-תיִפּענ:" - -#: grub-core/term/terminfo.c:699 -msgid "Terminal is ASCII-only [default]." -msgstr "תערמִינ×ל ִישת נוּר ×שצִיִי [בֿוֹרג×בּע]." - -#: grub-core/term/terminfo.c:700 -msgid "Terminal is logical-ordered UTF-8." -msgstr "תערמִינ×ל ִישת לוֹגִישצהעש וּתפֿ-8." - -#: grub-core/term/terminfo.c:701 -msgid "Terminal is visually-ordered UTF-8." -msgstr "תערמִינ×ל ִישת בִֿישוּעללעש וּתפֿ-8." - -#: grub-core/term/terminfo.c:703 -msgid "Terminal has specified geometry." -msgstr "תערמִינ×לגעוֹמעתרִיע ווּרדע פֿעשתגעלעגת." - -#. TRANSLATORS: "x" has to be entered in, like an identifier, so please don't -#. use better Unicode codepoints. -#: grub-core/term/terminfo.c:706 -msgid "WIDTHxHEIGHT." -msgstr "בּרעִיתעכּסהֵהע." - -#: grub-core/term/terminfo.c:746 -msgid "incorrect terminal dimensions specification" -msgstr "וּנגֻלתִיגע ×× ×’×בּע דער תערמִינ×לגעוֹמעתרִיע" - -#: grub-core/term/terminfo.c:776 -#, c-format -msgid "terminal %s isn't found or it's not handled by terminfo" -msgstr "" -"תערמִינ×ל %s ווּרדע נִיצהת געפֿוּנדענ וֹדער וִירד בֿוֹנ תערמִינפֿוֹ נִיצהת בּערֻצכּשִיצהתִיגת" - -#: grub-core/term/terminfo.c:785 -msgid "[[-a|-u|-v] [-g WxH] TERM [TYPE]]" -msgstr "[[-×|-וּ|-בֿ] [-×’ בּכּסה] תערמ [תיִפּ]]" - -#: grub-core/term/terminfo.c:786 -msgid "Set terminfo type of TERM to TYPE.\n" -msgstr "תערמִינפֿוֹ-תיִפּ בֿוֹנ תערמ ×וּפֿ תיִפּ שעתזענ.\n" - -#. TRANSLATORS: this is the BLOCK-argument, not -#. environment block. -#: grub-core/tests/test_blockarg.c:49 -msgid "Print and execute block argument." -msgstr "בּלוֹצכּ×רגוּמענת ×וּשגעבּענ וּנד ×וּשפֻֿהרענ." - -#. TRANSLATORS: We're speaking about bitmap images like -#. JPEG or PNG. -#: grub-core/video/bitmap.c:209 -#, c-format -msgid "bitmap file `%s' is of unsupported format" -msgstr "בִּיתמ×פּ-ד×תעִי »%s« בּעשִיתזת ×¢Ö´×™×  נִיצהת וּנתערשתֻתזתעש פֿוֹרמ×ת" - -#: grub-core/video/i386/pc/vbe.c:1191 -#, c-format -msgid " VBE info: version: %d.%d OEM software rev: %d.%d\n" -msgstr " בֿבּע-ִינפֿוֹ: בֿערשִיוֹנ: %d.%d וֹעמ-שוֹפֿתו×רערעבִֿישִיוֹנ: %d.%d\n" - -#: grub-core/video/i386/pc/vbe.c:1198 -#, c-format -msgid " total memory: %d KiB\n" -msgstr " געש×מתשפּעִיצהער: %d כִּיבּ\n" - -#: grub-core/video/video.c:596 grub-core/video/video.c:762 -msgid "no suitable video mode found" -msgstr "×›Ö¼×¢Ö´×™×  פּ×ששענדער בִֿידעוֹמוֹדוּש געפֿוּנדענ" - -#: include/grub/crypto.h:403 -msgid "access denied" -msgstr "זוּגרִיפֿפֿ בֿערועִיגערת" - -#: include/grub/util/install.h:30 include/grub/util/install.h:35 -msgid "MODULES" -msgstr "מוֹדוּלע" - -#: include/grub/util/install.h:31 -msgid "pre-load specified modules MODULES" -msgstr "Ö´×™×  מוֹדוּלע ×נגעגעבּענע מוֹדוּלע בֿוֹרל×דענ" - -#: include/grub/util/install.h:33 -msgid "embed a specific DTB" -msgstr "×¢Ö´×™× ×¢ שפּעזִיפִֿישצהע דתבּ עִינבּעתתענ" - -#: include/grub/util/install.h:36 -msgid "install only MODULES and their dependencies [default=all]" -msgstr "נוּר מוֹדוּלע וּנד דערענ ×בּהֶנגִיגכּעִיתענ ִינשת×ללִיערענ [בֿוֹרג×בּע=×ללע]" - -#: include/grub/util/install.h:37 -msgid "THEMES" -msgstr "תהעמענ" - -#: include/grub/util/install.h:38 -#, c-format -msgid "install THEMES [default=%s]" -msgstr "תהעמענ ִינשת×ללִיערענ [בֿוֹרג×בּע=%s]" - -#: include/grub/util/install.h:39 -msgid "FONTS" -msgstr "שצהרִיפֿתענ" - -#: include/grub/util/install.h:40 -#, c-format -msgid "install FONTS [default=%s]" -msgstr "שצהרִיפֿתענ ִינשת×ללִיערענ [בֿוֹרג×בּע=%s]" - -#: include/grub/util/install.h:41 -msgid "LOCALES" -msgstr "שפּר×צהענ" - -#: include/grub/util/install.h:42 -msgid "install only LOCALES [default=all]" -msgstr "נוּר שפּר×צהענ ִינשת×ללִיערענ [בֿוֹרג×בּע=×ללע]" - -#: include/grub/util/install.h:45 -msgid "compress GRUB files [optional]" -msgstr "גרוּבּ-ד×תעִיענ כּוֹמפּרִימִיערענ [וֹפּתִיוֹנ×ל]" - -#: include/grub/util/install.h:48 util/grub-mkimage.c:83 -msgid "choose the compression to use for core image" -msgstr "זוּ בֿערוענדענדע כּוֹמפּרעששִיוֹנ פֻֿר כּערנעל-×בּבִּילד ×וּשוֶהלענ" - -#. TRANSLATORS: platform here isn't identifier. It can be translated. -#: include/grub/util/install.h:51 include/grub/util/install.h:54 -#: util/grub-mkimage.c:66 -#, c-format -msgid "use images and modules under DIR [default=%s/]" -msgstr "×בּבִּילדער וּנד מוֹדוּלע Ö´×™×  בֿערזעִיצהנִיש בֿערוענדענ [בֿוֹרג×בּע=%s/<פּל×תפֿוֹרמ>]" - -#: include/grub/util/install.h:57 -#, c-format -msgid "use translations under DIR [default=%s]" -msgstr "ֻבּערשעתזוּנגענ ִימ בֿערזעִיצהנִיש בֿערז בֿערוענדענ [בֿוֹרג×בּע=%s]" - -#: include/grub/util/install.h:60 -#, c-format -msgid "use themes under DIR [default=%s]" -msgstr "גרוּבּ-ד×תעִיענ ִימ בֿערזעִיצהנִיש בֿערז בֿערוענדענ [בֿוֹרג×בּע=%s]" - -#: include/grub/util/install.h:65 util/grub-mkimage.c:78 -msgid "embed FILE as public key for signature checking" -msgstr "ד×תעִי ×לש ֵפֿפֿענתלִיצהענ שצהלֻששעל זוּר שִיגנ×תוּרֻבּערפּרֻפֿוּנג עִינבּעתתענ" - -#: util/editenv.c:59 util/grub-editenv.c:201 util/grub-install-common.c:535 -#: util/grub-mkimage.c:315 util/setup.c:791 -#, c-format -msgid "cannot sync `%s': %s" -msgstr "»%s« ×›Ö¼×× ×  נִיצהת שיִנצהרוֹנִישִיערת וערדענ: %s" - -#: util/editenv.c:64 -#, c-format -msgid "cannot rename the file %s to %s" -msgstr "ד×תעִי %s ×›Ö¼×× ×  נִיצהת Ö´×™×  %s וּמבּענ×ננת וערדענ" - -#: util/getroot.c:402 -#, c-format -msgid "disk does not exist, so falling back to partition device %s" -msgstr "" -"פּל×תתע עכּסִישתִיערת נִיצהת, ערש×תזועִישע וִירד פּ×רתִיתִיוֹנ דעש גערֶתש %s בֿערוענדעת" - -#: util/grub-editenv.c:45 util/grub-fstest.c:506 -msgid "Commands:" -msgstr "בּעפֿעהלע:" - -#: util/grub-editenv.c:47 -msgid "Create a blank environment block file." -msgstr "×¢Ö´×™× ×¢ לעערע וּמגעבּוּנגש-בּלוֹצכּד×תעִי ערשתעללענ." - -#: util/grub-editenv.c:49 -msgid "List the current variables." -msgstr "×כּתוּעללע בֿ×רִי×בּלענ ×וּפֿלִישתענ." - -#. TRANSLATORS: "set" is a keyword. It's a summary of "set" subcommand. -#: util/grub-editenv.c:51 -msgid "set [NAME=VALUE ...]" -msgstr "שעת [× ×מע=וערת ...]" - -#: util/grub-editenv.c:52 -msgid "Set variables." -msgstr "בֿ×רִי×בּלענ שעתזענ." - -#. TRANSLATORS: "unset" is a keyword. It's a summary of "unset" subcommand. -#: util/grub-editenv.c:54 -msgid "unset [NAME ...]" -msgstr "וּנשעת [× ×מע ...]" - -#: util/grub-editenv.c:55 -msgid "Delete variables." -msgstr "בֿ×רִי×בּלענ לֵשצהענ." - -#: util/grub-editenv.c:57 -msgid "Options:" -msgstr "וֹפּתִיוֹנענ:" - -#: util/grub-editenv.c:84 -msgid "You need to specify at least one command.\n" -msgstr "שִיע מֻששענ מִינדעשתענש ×¢Ö´×™× ×¢×  בּעפֿעהל ×נגעבּענ.\n" - -#: util/grub-editenv.c:113 -msgid "FILENAME COMMAND" -msgstr "ד×תעִינ×מע בּעפֿעהל" - -#: util/grub-editenv.c:114 -msgid "Tool to edit environment block." -msgstr "וערכּזעוּג זוּמ בּע×רבּעִיתענ עִינער וּמגעבּוּנגש-בּלוֹצכּד×תעִי." - -#: util/grub-editenv.c:116 -#, c-format -msgid "" -"If FILENAME is `-', the default value %s is used.\n" -"\n" -"There is no `delete' command; if you want to delete the whole environment\n" -"block, use `rm %s'." -msgstr "" -"פֿ×ללש ד×תעִינ×מע ×לש »-« ×נגעגעבּענ ִישת, וִירד ער בֿוֹרג×בּעוערת %s בֿערוענדעת.\n" -"\n" -"עש גִיבּת ×›Ö¼×¢Ö´×™× ×¢×  »דעלעתע«-בּעפֿעהל. פֿ×ללש שִיע דענ געש×מתענ וּמגעבּוּנגשבּלוֹצכּ לֵשצהענ " -"ווֹללענ,\n" -"בֿערוענדענ שִיע »רמ %s«." - -#: util/grub-editenv.c:162 -msgid "invalid environment block" -msgstr "וּנגֻלתִיגער ענבִֿירוֹנמענת-בּלוֹצכּ" - -#: util/grub-editenv.c:217 -#, c-format -msgid "invalid parameter %s" -msgstr "וּנגֻלתִיגער פּ×ר×מעתער %s" - -#: util/grub-editenv.c:222 -msgid "environment block too small" -msgstr "ענבִֿירוֹנמענת-בּלוֹצכּ ִישת זוּ כּלעִינ" - -#: util/grub-fstest.c:107 -#, c-format -msgid "disk read fails at offset %lld, length %lld" -msgstr "לעשענ בֿוֹנ פּל×תתע שצהעִיתערתע בּעִי %lld, לֶנגע %lld" - -#: util/grub-fstest.c:138 -#, c-format -msgid "invalid skip value %lld" -msgstr "וּנגֻלתִיגער שפּרוּנגוערת %lld" - -#: util/grub-fstest.c:160 util/grub-fstest.c:246 -#, c-format -msgid "read error at offset %llu: %s" -msgstr "לעשעפֿעהלער בּעִי %llu: %s" - -#: util/grub-fstest.c:210 -#, c-format -msgid "cannot open OS file `%s': %s" -msgstr "וֹש-ד×תעִי »%s« ×›Ö¼×× ×  נִיצהת געֵפֿפֿנעת וערדענ: %s" - -#: util/grub-fstest.c:225 util/misc.c:126 -#, c-format -msgid "cannot write to the stdout: %s" -msgstr "שצהרעִיבּענ Ö´×™×  דִיע שת×נד×רד×וּשג×בּע פֿעהלגעשצהל××’×¢× : %s" - -#: util/grub-fstest.c:259 -#, c-format -msgid "compare fail at offset %llu" -msgstr "בֿערגלעִיצהשפֿעהלער בּעִי %llu" - -#: util/grub-fstest.c:280 util/grub-fstest.c:314 -#, c-format -msgid "OS file %s open error: %s" -msgstr "פֿעהלער בּעִימ ֵפֿפֿנענ דער וֹש-ד×תעִי %s: %s" - -#: util/grub-fstest.c:402 util/grub-mount.c:392 -#, c-format -msgid "`loopback' command fails: %s" -msgstr "»לוֹוֹפּבּ×צכּ«-בּעפֿעהל ִישת פֿעהלגעשצהל××’×¢× : %s" - -#: util/grub-fstest.c:413 util/grub-mount.c:402 -#, c-format -msgid "`cryptomount' command fails: %s" -msgstr "»צריִפּתוֹמוֹוּנת«-בּעפֿעהל ִישת פֿעהלגעשצהל××’×¢× : %s" - -#: util/grub-fstest.c:474 util/grub-fstest.c:478 -msgid "couldn't retrieve UUID" -msgstr "וּוִּיד כּוֹננתע נִיצהת ערמִיתתעלת וערדענ" - -#: util/grub-fstest.c:507 -msgid "ls PATH" -msgstr "לש פּפֿ×ד" - -#: util/grub-fstest.c:507 -msgid "List files in PATH." -msgstr "ד×תעִיענ Ö´×™×  פּפֿ×ד ×וּפֿלִישתענ." - -#: util/grub-fstest.c:508 -msgid "cp FILE LOCAL" -msgstr "צפּ ד×תעִי לוֹכּ×ל" - -#: util/grub-fstest.c:508 -msgid "Copy FILE to local file LOCAL." -msgstr "ד×תעִי Ö´×™×  לוֹכּ×לע ד×תעִי לוֹכּ×ל כּוֹפִּיערענ." - -#: util/grub-fstest.c:509 -msgid "cat FILE" -msgstr "צ×ת ד×תעִי" - -#: util/grub-fstest.c:509 -msgid "Copy FILE to standard output." -msgstr "ד×תעִי Ö´×™×  דִיע שת×נד×רד×וּשג×בּע כּוֹפִּיערענ." - -#: util/grub-fstest.c:510 -msgid "cmp FILE LOCAL" -msgstr "צמפּ ד×תעִי לוֹכּ×ל" - -#: util/grub-fstest.c:510 -msgid "Compare FILE with local file LOCAL." -msgstr "ד×תעִי מִית לוֹכּ×לער ד×תעִי לוֹכּ×ל בֿערגלעִיצהענ." - -#: util/grub-fstest.c:511 -msgid "hex FILE" -msgstr "העכּס ד×תעִי" - -#: util/grub-fstest.c:511 -msgid "Show contents of FILE in hex." -msgstr "דענ Ö´×™× ×”×לת דער ד×תעִי העכּס×דעזִימ×ל ×× ×–×¢Ö´×™×’×¢× ." - -#: util/grub-fstest.c:512 -msgid "crc FILE" -msgstr "צרצ ד×תעִי" - -#: util/grub-fstest.c:512 -msgid "Get crc32 checksum of FILE." -msgstr "צרצ32-פּרֻפֿשוּממע בֿוֹנ ד×תעִי בּערעצהנענ." - -#: util/grub-fstest.c:513 -msgid "blocklist FILE" -msgstr "בּלוֹצכּלִישת ד×תעִי" - -#: util/grub-fstest.c:513 -msgid "Display blocklist of FILE." -msgstr "בּלוֹצכּלִישתע בֿוֹנ ד×תעִי ×× ×–×¢Ö´×™×’×¢× ." - -#: util/grub-fstest.c:514 -msgid "xnu_uuid DEVICE" -msgstr "כּסנוּ_וּוִּיד גערֶת" - -#: util/grub-fstest.c:514 -msgid "Compute XNU UUID of the device." -msgstr "כּסנוּ-וּוִּיד דעש גערֶתש בּערעצהנענ." - -#. TRANSLATORS: bitmaps are images like e.g. in JPEG. -#: util/grub-fstest.c:517 util/grub-fstest.c:518 util/grub-fstest.c:519 -#: util/grub-mkfont.c:938 util/grub-mkfont.c:951 util/grub-mkfont.c:952 -#: util/grub-mkpasswd-pbkdf2.c:46 util/grub-mkpasswd-pbkdf2.c:47 -#: util/grub-mkpasswd-pbkdf2.c:48 -msgid "NUM" -msgstr "×–×הל" - -#: util/grub-fstest.c:517 -msgid "Skip N bytes from output file." -msgstr "×  בּיִתעש דער ×וּשג×בּעד×תעִי ֻבּערשפּרִינגענ." - -#: util/grub-fstest.c:518 -msgid "Handle N bytes in output file." -msgstr "×  בּיִתעש Ö´×™×  ×וּשג×בּעד×תעִי בֿער×רבּעִיתענ" - -#: util/grub-fstest.c:519 -msgid "Specify the number of input files." -msgstr "דִיע ×× ×–×הל דער ×¢Ö´×™× ×’×בּעד×תעִיענ ×נגעבּענ." - -#: util/grub-fstest.c:520 util/grub-mount.c:453 -msgid "Set debug environment variable." -msgstr "דעבּוּג-וּמגעבּוּנגשבֿ×רִי×בּלע שעתזענ." - -#: util/grub-fstest.c:521 util/grub-mount.c:454 -msgid "Mount crypto devices." -msgstr "בֿערשצהלֻששעלתע גערֶתע ×¢Ö´×™× ×”Ö¶× ×’×¢× ." - -#. TRANSLATORS: "prompt" is a keyword. -#: util/grub-fstest.c:524 util/grub-mount.c:457 -msgid "FILE|prompt" -msgstr "ד×תעִי|פּרוֹמפּת" - -#: util/grub-fstest.c:524 util/grub-mount.c:457 -msgid "Load zfs crypto key." -msgstr "זפֿש-שצהלֻששעל ל×דענ." - -#: util/grub-fstest.c:526 -msgid "Uncompress data." -msgstr "ד×תענ ענתפּ×צכּענ." - -#: util/grub-fstest.c:605 -msgid "Invalid disk count.\n" -msgstr "וּנגֻלתִיגע פּל×תתענ×× ×–×הל.\n" - -#. TRANSLATORS: disk count is optional but if it's there it must -#. be before disk list. So please don't imply disk count as mandatory. -#. -#: util/grub-fstest.c:613 -msgid "Disk count must precede disks list.\n" -msgstr "פּל×תתענ×× ×–×הל מוּשש פּל×תתענלִישתע בֿוֹר×נגעשתעללת שעִינ.\n" - -#: util/grub-fstest.c:633 -msgid "No command is specified.\n" -msgstr "×›Ö¼×¢Ö´×™×  בּעפֿעהל ×נגעגעבּענ.\n" - -#: util/grub-fstest.c:638 -msgid "Not enough parameters to command.\n" -msgstr "זוּ וענִיגע פּ×ר×מעתער פֻֿר דענ בּעפֿעהל.\n" - -#: util/grub-fstest.c:711 -#, c-format -msgid "Invalid command %s.\n" -msgstr "וּנגֻלתִיגער בּעפֿעהל %s.\n" - -#: util/grub-fstest.c:724 -msgid "IMAGE_PATH COMMANDS" -msgstr "×בּבִּילדפּפֿ×ד בּעפֿעהלע" - -#: util/grub-fstest.c:725 util/grub-mount.c:553 -msgid "Debug tool for filesystem driver." -msgstr "דִי×גנוֹשעוערכּזעוּג פֻֿר ד×תעִישיִשתעמתרעִיבּער." - -#: util/grub-glue-efi.c:53 -msgid "set input filename for 32-bit part." -msgstr "× ×מע דער ×¢Ö´×™× ×’×בּעד×תעִי פֻֿר 32-בִּית פֿעשתלעגענ." - -#: util/grub-glue-efi.c:55 -msgid "set input filename for 64-bit part." -msgstr "× ×מע דער ×¢Ö´×™× ×’×בּעד×תעִי פֻֿר 64-בִּית פֿעשתלעגענ." - -#: util/grub-glue-efi.c:57 util/grub-mklayout.c:55 util/grub-render-label.c:71 -msgid "set output filename. Default is STDOUT" -msgstr "× ×מע דער ×וּשג×בּעד×תעִי פֿעשתלעגענ. בֿוֹרג×בּע ִישת שתדוֹוּת" - -#: util/grub-glue-efi.c:94 util/grub-mklayout.c:476 -#: util/grub-mkpasswd-pbkdf2.c:86 util/grub-render-label.c:131 -msgid "[OPTIONS]" -msgstr "[וֹפּתִיוֹנענ]" - -#: util/grub-glue-efi.c:95 -msgid "Glue 32-bit and 64-bit binary into Apple universal one." -msgstr "32-בִּית- וּנד 64-בִּית-בִּינ×ריִ זוּ ×פּפּלע-וּנִיבֿערש×ל-בִּינ×ריִ זוּש×ממענפֻֿגענ." - -#: util/grub-glue-efi.c:116 -msgid "Missing input file\n" -msgstr "×¢Ö´×™× ×’×בּעד×תעִי פֿעהלת\n" - -#: util/grub-install-common.c:127 util/grub-install-common.c:151 -#, c-format -msgid "cannot copy `%s' to `%s': %s" -msgstr "»%s« ×›Ö¼×× ×  נִיצהת × ×צה »%s« כּוֹפִּיערת וערדענ: %s" - -#: util/grub-install-common.c:147 -#, c-format -msgid "can't compress `%s' to `%s'" -msgstr "כּוֹמפּרִימִיערענ בֿוֹנ %s × ×צה %s נִיצהת מֵגלִיצה" - -#: util/grub-install-common.c:196 util/grub-install-common.c:552 -#: util/grub-install-common.c:579 util/grub-install-common.c:621 -#, c-format -msgid "cannot open directory `%s': %s" -msgstr "בֿערזעִיצהנִיש »%s« ×›Ö¼×× ×  נִיצהת געֵפֿפֿנעת וערדענ: %s" - -#: util/grub-install-common.c:212 -#, c-format -msgid "cannot delete `%s': %s" -msgstr "»%s« ×›Ö¼×× ×  נִיצהת געלֵשצהת וערדענ: %s" - -#: util/grub-install-common.c:324 util/grub-mkimage.c:209 -msgid "grub-mkimage is compiled without XZ support" -msgstr "גרוּבּ-מכִּימ××’×¢ ווּרדע וֹהנע כּסז-וּנתערשתֻתזוּנג כּוֹמפִּילִיערת" - -#: util/grub-install-common.c:332 util/grub-mkimage.c:217 -#, c-format -msgid "Unknown compression format %s" -msgstr "וּנבּעכּ×ננתעש כּוֹמפּרעששִיוֹנשפֿוֹרמ×ת %s" - -#: util/grub-install-common.c:400 -#, c-format -msgid "Unrecognized compression `%s'" -msgstr "וּנבּעכּ×ננתע כּוֹמפּרעששִיוֹנ »%s«" - -#: util/grub-install-common.c:509 -#, c-format -msgid "unknown target format %s" -msgstr "וּנבּעכּ×ננתעש זִיעלפֿוֹרמ×ת %s" - -#: util/grub-install-common.c:700 -#, c-format -msgid "cannot find locale `%s'" -msgstr "שפּר×צהע »%s« ×›Ö¼×× ×  נִיצהת געפֿוּנדענ וערדענ" - -#: util/grub-install-common.c:939 -#, c-format -msgid "%s doesn't exist. Please specify --target or --directory" -msgstr "%s עכּסִישתִיערת נִיצהת. בִּיתתע געבּענ שִיע --ת×רגעת וֹדער --דִירעצתוֹריִ ×× " - -#: util/grub-install-common.c:948 util/grub-install-common.c:951 -#, c-format -msgid "invalid modinfo file `%s'" -msgstr "וּנגֻלתִיגע מוֹדִינפֿוֹ-ד×תעִי »%s«" - -#: util/grub-install-common.c:966 -#, c-format -msgid "Unknown platform `%s-%s'" -msgstr "וּנבּעכּ×ננתע פּל×תתפֿוֹרמ »%s-%s«" - -#: util/grub-install.c:238 -msgid "More than one install device?" -msgstr "מעהר ×לש ×¢Ö´×™×  ִינשת×לל×תִיוֹנשגערֶת?" - -#: util/grub-install.c:251 -#, c-format -msgid "" -"install GRUB images under the directory DIR/%s instead of the %s directory" -msgstr "גרוּבּ-×בּבִּילדער Ö´×™×  בֿערזעִיצהנִיש/%s ×נשתעללע בֿוֹנ %s ִינשת×ללִיערענ" - -#: util/grub-install.c:256 util/grub-probe.c:734 -msgid "TARGET" -msgstr "זִיעל" - -#. TRANSLATORS: "TARGET" as in "target platform". -#: util/grub-install.c:258 -#, c-format -msgid "install GRUB for TARGET platform [default=%s]; available targets: %s" -msgstr "גרוּבּ פֻֿר זִיעל-פּל×תתפֿוֹרמ ִינשת×ללִיערענ [בֿוֹרג×בּע=%s]; בֿערפֻֿגבּ×רע זִיעלע: %s" - -#. TRANSLATORS: "may break" doesn't just mean that option wouldn't have any -#. effect but that it will make the resulting install unbootable from HDD. -#. TRANSLATORS: The potential breakage isn't limited to floppies but it's -#. likely to make the install unbootable from HDD. -#: util/grub-install.c:267 util/grub-setup.c:94 -msgid "" -"make the drive also bootable as floppy (default for fdX devices). May break " -"on some BIOSes." -msgstr "" -"ד×ש ל×וּפֿוערכּ ×וּצה ×לש דִישכּעתתע בּוֹוֹתפֶֿהִיג מ×צהענ (בֿוֹרג×בּע פֻֿר פֿדכּס-גערֶתע). ×›Ö¼×× ×  " -"מִית ×¢Ö´×™× Ö´×™×’×¢×  בִּיוֹש-בֿ×רִי×נתענ שצהעִיתערנ." - -#: util/grub-install.c:270 -msgid "delete device map if it already exists" -msgstr "גערֶתעזוּוֹרדנוּנג לֵשצהענ, פֿ×ללש בּערעִיתש בֿוֹרה×נדענ" - -#: util/grub-install.c:272 util/grub-setup.c:87 -msgid "install even if problems are detected" -msgstr "תרוֹתזדעמ ִינשת×ללִיערענ, ×וּצה ועננ פּרוֹבּלעמע ×וּפֿתרעתענ" - -#: util/grub-install.c:274 -msgid "use identifier file even if UUID is available" -msgstr "ִיד-ד×תעִי ×וּצה ד×× ×  בֿערוענדענ, ועננ ×¢Ö´×™× ×¢ וּוִּיד בֿערפֻֿגבּ×ר ִישת" - -#: util/grub-install.c:276 -msgid "" -"disk module to use (biosdisk or native). This option is only available on " -"BIOS target." -msgstr "" -"זוּ בֿערוענדענדעש פּל×תתענ-מוֹדוּל (בִּיוֹשדִישכּ וֹדער × ×תִיבֿע). דִיעשע וֹפּתִיוֹנ ִישת נוּר " -"פֻֿר בִּיוֹש-זִיעלע בֿערפֻֿגבּ×ר." - -#: util/grub-install.c:279 -msgid "" -"don't update the `boot-device'/`Boot*' NVRAM variables. This option is only " -"available on EFI and IEEE1275 targets." -msgstr "" -"דִיע נבֿר×מ-בֿ×רִי×בּלע »בּוֹוֹת-דעבִֿיצע«/»בּוֹוֹת*« נִיצהת ×כּתוּ×לִישִיערענ. דִיעשע וֹפּתִיוֹנ Ö´" -"ישת נוּר פֻֿר עפִֿי- וּנד Ö´×™×¢×¢×¢1275-זִיעלע בֿערפֻֿגבּ×ר." - -#: util/grub-install.c:282 util/grub-setup.c:89 -msgid "do not probe for filesystems in DEVICE" -msgstr "גערֶת נִיצהת ×וּפֿ ד×תעִישיִשתעמע ֻבּערפּרֻפֿענ" - -#: util/grub-install.c:284 -msgid "do not install bootsector" -msgstr "×›Ö¼×¢Ö´×™× ×¢×  בּוֹוֹתשעכּתוֹר ִינשת×ללִיערענ" - -#: util/grub-install.c:286 util/grub-setup.c:96 -msgid "" -"Do not apply any reed-solomon codes when embedding core.img. This option is " -"only available on x86 BIOS targets." -msgstr "" -"×›Ö¼×¢Ö´×™× ×¢ רעעד-שוֹלוֹמוֹנ-צוֹדעש בּעִימ עִינבּעתתענ בֿוֹנ צוֹרע.ִימג בֿערוענדענ. דִיעשע וֹפּתִיוֹנ Ö´" -"ישת נוּר פֻֿר כּס86-בִּיוֹש-זִיעלע בֿערפֻֿגבּ×ר." - -#: util/grub-install.c:293 -msgid "" -"the installation device is removable. This option is only available on EFI." -msgstr "" -"ד×ש ִינשת×לל×תִיוֹנשגערֶת ִישת ×¢Ö´×™×  ועצהשעלד×תענתרֶגער. דִיעשע וֹפּתִיוֹנ ִישת נוּר בּעִי " -"עפִֿי בֿערפֻֿגבּ×ר." - -#: util/grub-install.c:295 -msgid "ID" -msgstr "כּעננוּנג" - -#: util/grub-install.c:296 -msgid "the ID of bootloader. This option is only available on EFI and Macs." -msgstr "" -"דִיע כּעננוּנג דעש בּוֹוֹתלוֹ×דערש. דִיעשע וֹפּתִיוֹנ ִישת נוּר ×וּפֿ עפִֿי-שיִשתעמענ וּנד מ×צש " -"בֿערפֻֿגבּ×ר." - -#: util/grub-install.c:298 -msgid "use DIR as the EFI System Partition root." -msgstr "בֿערזעִיצהנִיש ×לש ווּרזעל דער עפִֿי-שיִשתעמפּ×רתִיתִיוֹנ בֿערוענדענ." - -#: util/grub-install.c:300 -msgid "use DIR for PPC MAC install." -msgstr "בֿערז פֻֿר פּפּצ-מ×צ-ִינשת×לל×תִיוֹנ בֿערוענדענ." - -#: util/grub-install.c:301 util/grub-mkrescue.c:106 -msgid "use FILE as font for label" -msgstr "ד×תעִי ×לש שצהרִיפֿת×רת פֻֿר בּעשצהרִיפֿתוּנג בֿערוענדענ" - -#: util/grub-install.c:302 util/grub-mkrescue.c:107 -msgid "use COLOR for label" -msgstr "פֿ×רבּע פֻֿר בּעשצהרִיפֿתוּנג בֿערוענדענ." - -#: util/grub-install.c:303 util/grub-mkrescue.c:108 -msgid "use COLOR for label background" -msgstr "פֿ×רבּע פֻֿר בּעשצהרִיפֿתוּנגשהִינתערגרוּנד בֿערוענדענ." - -#: util/grub-install.c:304 util/grub-mkrescue.c:110 -msgid "use STRING as product version" -msgstr "זעִיצהענכּעתתע ×לש פּרוֹדוּכּתבֿערשִיוֹנ בֿערוענדענ" - -#: util/grub-install.c:361 -msgid "[OPTION] [INSTALL_DEVICE]" -msgstr "[וֹפּתִיוֹנ] [ִינשת×לל×תִיוֹנשגערֶת]" - -#: util/grub-install.c:362 -msgid "Install GRUB on your drive." -msgstr "גרוּבּ ×וּפֿ ִיהרעמ ל×וּפֿוערכּ ִינשת×ללִיערענ." - -#: util/grub-install.c:363 -#, c-format -msgid "" -"INSTALL_DEVICE must be system device filename.\n" -"%s copies GRUB images into %s. On some platforms, it may also install GRUB " -"into the boot sector." -msgstr "" -"ִינשת×לל×תִיוֹנשגערֶת מוּשש דער × ×מע דעש גערֶתש שעִינ.\n" -"%s כּוֹפִּיערת גרוּבּ-×בּבִּילדער × ×צה %s. ×וּפֿ ×¢Ö´×™× Ö´×™×’×¢×  שיִשתעמענ\n" -"×›Ö¼×× ×  עש ×וּצה גרוּבּ Ö´×™×  דענ בּוֹוֹתשעכּתוֹר ִינשת×ללִיערענ." - -#: util/grub-install.c:672 -#, c-format -msgid "the drive %s is defined multiple times in the device map %s" -msgstr "ד×ש ל×וּפֿוערכּ %s ווּרדע Ö´×™×  דער גערֶתעת×בּעללע מעהרפֿ×צה %s דעפִֿינִיערת" - -#: util/grub-install.c:878 -msgid "Unable to determine your platform. Use --target." -msgstr "ִיהרע פּל×תתפֿוֹרמ כּוֹננתע נִיצהת ערכּ×ננת וערדענ. בֿערוענדענ שִיע --ת×רגעת." - -#: util/grub-install.c:891 -#, c-format -msgid "Installing for %s platform.\n" -msgstr "%s וִירד פֻֿר ִיהרע פּל×תתפֿוֹרמ ִינשת×ללִיערת.\n" - -#: util/grub-install.c:939 -msgid "install device isn't specified" -msgstr "×›Ö¼×¢Ö´×™×  ִינשת×לל×תִיוֹנשגערֶת ×נגעגעבּענ" - -#: util/grub-install.c:1057 -msgid "cannot find EFI directory" -msgstr "עפִֿי-בֿערזעִיצהנִיש ×›Ö¼×× ×  נִיצהת געפֿוּנדענ וערדענ" - -#: util/grub-install.c:1060 util/grub-install.c:1209 util/grub-install.c:1254 -#: util/grub-macbless.c:76 util/grub-probe.c:329 util/setup.c:316 -#, c-format -msgid "cannot find a device for %s (is /dev mounted?)" -msgstr "גערֶת פֻֿר %s כּוֹננתע נִיצהת געפֿוּנדענ וערדענ (ִישת /דעבֿ עִינגעהֶנגת?)" - -#: util/grub-install.c:1069 util/grub-install.c:1217 util/grub-install.c:1270 -#: util/grub-install.c:1365 util/grub-macbless.c:80 util/grub-probe.c:372 -#, c-format -msgid "cannot find a GRUB drive for %s. Check your device.map" -msgstr "" -"פֻֿר %s כּוֹננתע ×›Ö¼×¢Ö´×™×  גרוּבּ-ל×וּפֿוערכּ געפֿוּנדענ וערדענ. ֻבּערפּרֻפֿענ שִיע ִיהרע דעבִֿיצע.מ×פּ" - -#: util/grub-install.c:1087 -#, c-format -msgid "%s doesn't look like an EFI partition" -msgstr "%s שצהעִינת ×›Ö¼×¢Ö´×™× ×¢ עפִֿי-פּ×רתִיתִיוֹנ זוּ שעִינ" - -#: util/grub-install.c:1129 util/grub-install.c:1614 -msgid "You've found a bug" -msgstr "×¢Ö´×™× ×¢×  ענתדעצכּתענ פֿעהלער בּערִיצהתענ" - -#: util/grub-install.c:1231 -#, c-format -msgid "filesystem on %s is neither HFS nor HFS+" -msgstr "ד×תעִישיִשתעמ ×וּפֿ %s ִישת ועדער הפֿש נוֹצה הפֿש+" - -#: util/grub-install.c:1299 -#, c-format -msgid "" -"attempt to install to encrypted disk without cryptodisk enabled. Set `%s' in " -"file `%s'" -msgstr "" -"בֿערשוּצה, ×¢Ö´×™× ×¢×  בֿערשצהלֻששעלתענ ד×תענתרֶגער וֹהנע ×כּתִיבִֿיערתעש צריִפּתוֹדִישכּ זוּ Ö´" -"ינשת×ללִיערענ. שעתזענ שִיע »%s« Ö´×™×  ד×תעִי »%s«" - -#: util/grub-install.c:1410 util/grub-install.c:1772 util/grub-install.c:1872 -#, c-format -msgid "Can't create file: %s" -msgstr "ד×תעִי »%s« ×›Ö¼×× ×  נִיצהת ×נגעלעגת וערדענ." - -#: util/grub-install.c:1491 -msgid "no hints available for your platform. Expect reduced performance" -msgstr "" -"×›Ö¼×¢Ö´×™× ×¢ הִינועִישע פֻֿר ִיהר בּעתרִיעבּששיִשתעמ בֿערפֻֿגבּ×ר. בֿעררִינגערתע לעִישתוּנג ִישת זוּ " -"ערו×רתענ." - -#. TRANSLATORS: This is a prefix in the log to indicate that usually -#. a command would be executed but due to an option was skipped. -#: util/grub-install.c:1702 -msgid "NOT RUNNING: " -msgstr "נִיצהת געשת×רתעת:" - -#: util/grub-install.c:1806 -msgid "the chosen partition is not a PReP partition" -msgstr "דִיע געוֶהלתע פּ×רתִיתִיוֹנ ִישת ×›Ö¼×¢Ö´×™× ×¢ פּרעפּ-פּ×רתִיתִיוֹנ" - -#: util/grub-install.c:1811 -msgid "failed to copy Grub to the PReP partition" -msgstr "גרוּבּ כּוֹננתע נִיצהת Ö´×™×  דִיע פּרעפּ-פּ×רתִיתִיוֹנ כּוֹפִּיערת וערדענ" - -#: util/grub-install.c:1816 -#, c-format -msgid "" -"the PReP partition is not empty. If you are sure you want to use it, run dd " -"to clear it: `%s'" -msgstr "" -"דִיע פּרעפּ-פּ×רתִיתִיוֹנ ִישת נִיצהת לעער. פֿ×ללש שִיע שִיצהער שִינד, ד×שש שִיע שִיע " -"בֿערוענדענ ווֹללענ, פֻֿהרענ שִיע דד ×וּש, וּמ שִיע זוּ לעערענ: »%s«" - -#: util/grub-install.c:1888 util/grub-install.c:1932 -#, c-format -msgid "efibootmgr failed to register the boot entry: %s" -msgstr "עפִֿיבּוֹוֹתמגר שצהלוּג בּעִימ רעגִישתרִיערענ דעש בּוֹוֹת-עִינתר×גש פֿעהל: %s" - -#: util/grub-install.c:1916 -msgid "EFI bootloader id isn't specified." -msgstr "כּעננוּנג דעש עפִֿי-בּוֹוֹתלוֹ×דערש ִישת נִיצהת ×נגעגעבּענ." - -#: util/grub-install.c:1950 -msgid "WARNING: no platform-specific install was performed" -msgstr "ו×רנוּנג: עש ווּרדע ×›Ö¼×¢Ö´×™× ×¢ פּל×תתפֿוֹרמשפּעזִיפִֿישצהע ִינשת×לל×תִיוֹנ דוּרצהגעפֻֿהרת" - -#: util/grub-install.c:1957 -msgid "Installation finished. No error reported." -msgstr "ִינשת×לל×תִיוֹנ בּעענדעת. ×›Ö¼×¢Ö´×™× ×¢ פֿעהלער ×וּפֿגעתרעתענ." - -#: util/grub-macbless.c:101 -msgid "bless for x86-based macs" -msgstr "" - -#: util/grub-macbless.c:103 -msgid "bless for ppc-based macs" -msgstr "" - -#: util/grub-macbless.c:136 util/grub-probe.c:823 -msgid "No path or device is specified.\n" -msgstr "×›Ö¼×¢Ö´×™×  פּפֿ×ד וֹדער גערֶת ווּרדע ×נגעגעבּענ.\n" - -#: util/grub-macbless.c:157 -msgid "--ppc PATH|--x86 FILE" -msgstr "--פּפּצ פּפֿ×ד|--כּס86 ד×תעִי" - -#: util/grub-macbless.c:158 -msgid "Mac-style bless on HFS or HFS+" -msgstr "" - -#: util/grub-menulst2cfg.c:44 -#, c-format -msgid "Usage: %s [INFILE [OUTFILE]]\n" -msgstr "×וּפֿרוּפֿ: %s [×¢Ö´×™× ×’×בּעד×תעִי [×וּשג×בּעד×תעִי]]\n" - -#: util/grub-mkfont.c:157 -#, c-format -msgid "Freetype Error %d loading glyph 0x%x for U+0x%x%s" -msgstr "פֿרעעתיִפּע-פֿעהלער %d בּעִימ ל×דענ דעש גליִפּהש 0כּס%x פֻֿר וּ+0כּס%x%s" - -#. TRANSLATORS: These qualifiers are used for cursive typography, -#. mainly Arabic. Note that the terms refer to the visual position -#. and not logical order and if used in left-to-right script then -#. leftmost is initial but with right-to-left script like Arabic -#. rightmost is the initial. -#: util/grub-mkfont.c:165 -msgid " (medial)" -msgstr " (מִיתתִיג)" - -#: util/grub-mkfont.c:166 -msgid " (leftmost)" -msgstr " (×’×× ×– לִינכּש)" - -#: util/grub-mkfont.c:167 -msgid " (rightmost)" -msgstr " (×’×× ×– רעצהתש)" - -#: util/grub-mkfont.c:481 -#, c-format -msgid "Out of range substitution (%d, %d)\n" -msgstr "ערשעתזוּנג ×וּססערה×לבּ דעש בּערעִיצהש (%d, %d)\n" - -#. TRANSLATORS: "lookup" is taken directly from font specifications -#. which are formulated as "Under condition X replace LOOKUP with -#. SUBSTITUITION". " -#: util/grub-mkfont.c:506 -#, c-format -msgid "Out of range lookup: %d\n" -msgstr "שוּצהע ×וּססערה×לבּ דעש בּערעִיצהש: %d\n" - -#: util/grub-mkfont.c:514 -#, c-format -msgid "Unsupported substitution type: %d\n" -msgstr "נִיצהת וּנתערשתֻתזתער ערשעתזוּנגשתיִפּ: %d\n" - -#: util/grub-mkfont.c:550 -#, c-format -msgid "Unsupported substitution specification: %d\n" -msgstr "נִיצהת וּנתערשתֻתזתע ערשעתזוּנגש×× ×’×בּע: %d\n" - -#: util/grub-mkfont.c:582 -#, c-format -msgid "Unsupported coverage specification: %d\n" -msgstr "נִיצהת וּנתערשתֻתזתע צוֹבֿער××’×¢-שפּעזִיפִֿיכּ×תִיוֹנ: %d\n" - -#: util/grub-mkfont.c:622 -#, c-format -msgid "WARNING: unsupported font feature parameters: %x\n" -msgstr "ו×רנוּנג: נִיצהת וּנתערשתֻתזתע פּ×ר×מעתער פֻֿר שצהרִיפֿתעִיגענשצה×פֿתענ: %x\n" - -#: util/grub-mkfont.c:936 util/grub-mkrescue.c:98 util/grub-mkstandalone.c:48 -msgid "save output in FILE [required]" -msgstr "×וּשג×בּע Ö´×™×  ד×תעִי שפּעִיצהערנ [ערפֿוֹרדערלִיצה]" - -#. TRANSLATORS: some font files may have multiple faces (fonts). -#. This option is used to chose among them, the first face being '0'. -#. Rarely used. -#: util/grub-mkfont.c:942 -msgid "select face index" -msgstr "שצהרִיפֿת×רת-ִינדעכּס שעתזענ" - -#: util/grub-mkfont.c:943 -msgid "FROM-TO[,FROM-TO]" -msgstr "בֿוֹנ-בִּיש[,בֿוֹנ-בִּיש]" - -#. TRANSLATORS: It refers to the range of characters in font. -#: util/grub-mkfont.c:945 -msgid "set font range" -msgstr "שצהרִיפֿתבּערעִיצה פֿעשתלעגענ" - -#. TRANSLATORS: "family name" for font is just a generic name without suffix -#. like "Bold". -#: util/grub-mkfont.c:949 -msgid "set font family name" -msgstr "שצהרִיפֿתפֿ×מִילִיע פֿעשתלעגענ" - -#: util/grub-mkfont.c:950 -msgid "SIZE" -msgstr "גרֵססע" - -#: util/grub-mkfont.c:950 -msgid "set font size" -msgstr "שצהרִיפֿתגרֵססע פֿעשתלעגענ" - -#: util/grub-mkfont.c:951 -msgid "set font descent" -msgstr "שצהרִיפֿת×וּפֿפֻֿללוּנג וּנתענ עִינשתעללענ" - -#: util/grub-mkfont.c:952 -msgid "set font ascent" -msgstr "שצהרִיפֿת×וּפֿפֻֿללוּנג וֹבּענ עִינשתעללענ" - -#: util/grub-mkfont.c:953 -msgid "convert to bold font" -msgstr "Ö´×™×  פֿעתתע שצהרִיפֿת וּמו×נדעלנ" - -#: util/grub-mkfont.c:954 -msgid "force autohint" -msgstr "×וּתוֹמ×תִישצהעש הִינתִינג ערזוִינגענ" - -#: util/grub-mkfont.c:955 -msgid "disable hinting" -msgstr "הִינתִינג דע×כּתִיבִֿיערענ" - -#. TRANSLATORS: some fonts contain bitmap rendering for -#. some sizes. This option forces rerendering even if -#. pre-rendered bitmap is available. -#. -#: util/grub-mkfont.c:961 -msgid "ignore bitmap strikes when loading" -msgstr "בִּיתמ×פּ-שתרִיכּעש בּעִימ ל×דענ ִיגנוֹרִיערענ" - -#. TRANSLATORS: It refers to the range of characters in font. -#: util/grub-mkfont.c:1059 util/grub-mkfont.c:1075 -msgid "invalid font range" -msgstr "וּנגֻלתִיגער שצהרִיפֿתבּערעִיצה" - -#: util/grub-mkfont.c:1151 -msgid "[OPTIONS] FONT_FILES" -msgstr "[וֹפּתִיוֹנענ] שצהרִיפֿתד×תעִיענ" - -#: util/grub-mkfont.c:1152 -msgid "Convert common font file formats into PF2" -msgstr "ֻבּלִיצהע שצהרִיפֿתד×תעִיפֿוֹרמ×תע Ö´×™×  פּפֿ2 וּמו×נדעלנ" - -#: util/grub-mkfont.c:1182 util/grub-mkrescue.c:483 -#: util/grub-mkstandalone.c:306 -msgid "output file must be specified" -msgstr "×וּשג×בּעד×תעִי מוּשש ×נגעגעבּענ וערדענ" - -#: util/grub-mkfont.c:1185 -msgid "FT_Init_FreeType fails" -msgstr "פֿת_ִינִית_פֿרעעתיִפּע ִישת געשצהעִיתערת" - -#: util/grub-mkfont.c:1199 -#, c-format -msgid "can't open file %s, index %d: error %d" -msgstr "%s ×›Ö¼×× ×  נִיצהת געֵפֿפֿנעת וערדענ, ִינדעכּס %d: פֿעהלער %d" - -#: util/grub-mkfont.c:1229 -#, c-format -msgid "can't set %dx%d font size: Freetype error %d: %s" -msgstr "שצהרִיפֿתגרֵססע %dכּס%d ×›Ö¼×× ×  נִיצהת געשעתזת וערדענ: פֿרעעתיִפּע-פֿעהלער %d: %s" - -#: util/grub-mkimage.c:67 -msgid "set prefix directory" -msgstr "פּרֶפִֿיכּס-בֿערזעִיצהנִיש פֿעשתלעגענ" - -#. TRANSLATORS: "memdisk" here isn't an identifier, it can be translated. -#. "embed" is a verb (command description). " -#: util/grub-mkimage.c:71 -msgid "" -"embed FILE as a memdisk image\n" -"Implies `-p (memdisk)/boot/grub' and overrides any prefix supplied " -"previously, but the prefix itself can be overridden by later options" -msgstr "" -"ד×תעִי ×לש מעמדִישכּ-×בּבִּילד עִינבּעתתענ\n" -"ִימפּלִיזִיערת »-פּ (מעמדִישכּ)/בּוֹוֹת/גרוּבּ« וּנד שעתזת יעדעש בֿוֹרהער ×נגעגעבּענע פּרֶפִֿיכּס " -"×וּססער כּר×פֿת, ×בּער ד×ש פּרֶפִֿיכּס שעלבּשת ×›Ö¼×× ×  דוּרצה שפֶּתער ×נגעגעבּענע וֹפּתִיוֹנענ " -"וִיעדערוּמ ×וּססער כּר×פֿת געשעתזת וערדענ" - -#: util/grub-mkimage.c:74 -msgid "embed FILE as a device tree (DTB)\n" -msgstr "ד×תעִי ×לש גערֶתעבּ×וּמ (דתבּ) עִינבּעתתענ\n" - -#: util/grub-mkimage.c:76 -msgid "embed FILE as an early config" -msgstr "ד×תעִי ×לש ×נפֿ×נגשכּוֹנפִֿיגוּר×תִיוֹנ עִינבּעתתענ" - -#. TRANSLATORS: NOTE is a name of segment. -#: util/grub-mkimage.c:80 -msgid "add NOTE segment for CHRP IEEE1275" -msgstr "נוֹתע-שעגמענת פֻֿר צהרפּ Ö´×™×¢×¢×¢1275 הִינזוּפֻֿגענ" - -#: util/grub-mkimage.c:81 -msgid "output a generated image to FILE [default=stdout]" -msgstr "×¢Ö´×™×  ערזעוּגתעש ×בּבִּילד Ö´×™×  ד×תעִי ×וּשגעבּענ [בֿוֹרג×בּע=שתדוֹוּת]" - -#: util/grub-mkimage.c:82 -msgid "FORMAT" -msgstr "פֿוֹרמ×ת" - -#: util/grub-mkimage.c:100 util/grub-mkstandalone.c:62 -msgid "generate an image in FORMAT" -msgstr "×¢Ö´×™×  ×בּבִּילד ִימ פֿוֹרמ×ת ערזעוּגענ" - -#: util/grub-mkimage.c:101 util/grub-mkstandalone.c:63 -msgid "available formats:" -msgstr "בֿערפֻֿגבּ×רע פֿוֹרמ×תע:" - -#: util/grub-mkimage.c:152 util/grub-mkstandalone.c:96 -#, c-format -msgid "unknown target format %s\n" -msgstr "וּנבּעכּ×ננתעש זִיעלפֿוֹרמ×ת %s\n" - -#: util/grub-mkimage.c:242 -msgid "[OPTION]... [MODULES]" -msgstr "[וֹפּתִיוֹנ]… [מוֹדוּלע]" - -#: util/grub-mkimage.c:243 -msgid "Make a bootable image of GRUB." -msgstr "×¢Ö´×™×  בּוֹוֹתפֶֿהִיגעש גרוּבּ-×בּבִּילד ערשתעללענ" - -#: util/grub-mkimage.c:273 util/grub-mkstandalone.c:309 -msgid "Target format not specified (use the -O option)." -msgstr "זִיעלפֿוֹרמ×ת ווּרדע נִיצהת ×נגעגעבּענ (בֿערוענדענ שִיע דִיע וֹפּתִיוֹנ -0)." - -#: util/grub-mkimage.c:282 -msgid "Prefix not specified (use the -p option)." -msgstr "פּרֶפִֿיכּס ווּרדע נִיצהת ×נגעגעבּענ (בֿערוענדענ שִיע דִיע וֹפּתִיוֹנ -פּ)" - -#: util/grub-mkimage.c:318 util/setup.c:793 -#, c-format -msgid "cannot close `%s': %s" -msgstr "»%s« ×›Ö¼×× ×  נִיצהת געשצהלוֹששענ וערדענ: %s" - -#: util/grub-mkimagexx.c:2191 -#, c-format -msgid "" -"`%s' is miscompiled: its start address is 0x%llx instead of 0x%llx: ld.gold " -"bug?" -msgstr "" -"»%s« ִישת פֿעהלערה×פֿת כּוֹמפִּילִיערת: דעששענ שת×רת×דרעששע ִישת 0כּס%llx ×נשתעללע בֿוֹנ " -"0כּס%llx: פֿעהלער Ö´×™×  לד.גוֹלד?" - -#: util/grub-mklayout.c:53 -msgid "set input filename. Default is STDIN" -msgstr "× ×מע דער ×¢Ö´×™× ×’×בּעד×תעִי פֿעשתלעגענ. בֿוֹרג×בּע ִישת שתדִינ" - -#. TRANSLATORS: scan identifier is keyboard key symbolic name. -#: util/grub-mklayout.c:307 -#, c-format -msgid "Unknown keyboard scan identifier %s\n" -msgstr "וּנגֻלתִיגער בּעזעִיצהנער פֻֿר ת×שת×תוּרשצ××  %s\n" - -#. TRANSLATORS: scan code is keyboard key numeric identifier. -#: util/grub-mklayout.c:390 util/grub-mklayout.c:418 -#, c-format -msgid "Unknown keyboard scan code 0x%02x\n" -msgstr "וּנגֻלתִיגער צוֹדע פֻֿר ת×שת×תוּרשצ××  0כּס%02x\n" - -#. TRANSLATORS: this error is triggered when input doesn't contain any -#. key descriptions. -#: util/grub-mklayout.c:438 -msgid "ERROR: no valid keyboard layout found. Check the input.\n" -msgstr "" -"פֿעהלער: ×›Ö¼×¢Ö´×™× ×¢ גֻלתִיגע ת×שת×תוּרבּעלעגוּנג געפֿוּנדענ. ֻבּערפּרֻפֿענ שִיע דִיע ×¢Ö´×™× ×’×בּע.\n" - -#. TRANSLATORS: "one" is a shortcut for "keyboard layout". -#: util/grub-mklayout.c:478 -msgid "Generate GRUB keyboard layout from Linux console one." -msgstr "גרוּבּ-ת×שת×תוּרבּעלעגוּנג ×וּש דעמ דער לִינוּכּס-כּוֹנשוֹלע ערשתעללענ." - -#: util/grub-mknetdir.c:47 -msgid "root directory of TFTP server" -msgstr "ווּרזעלבֿערזעִיצהנִיש ×וּפֿ דעמ תפֿתפּ-שערבֿער" - -#: util/grub-mknetdir.c:49 -msgid "relative subdirectory on network server" -msgstr "רעל×תִיבֿער פּפֿ×ד זוּמ וּנתערבֿערזעִיצהנִיש ×וּפֿ דעמ נעתזוערכּשערבֿער" - -#: util/grub-mknetdir.c:88 -msgid "" -"Prepares GRUB network boot images at net_directory/subdir assuming " -"net_directory being TFTP root." -msgstr "" -"בּערעִיתעת גרוּבּ-נעתזוערכּ-בּוֹוֹת×בּבִּילדער Ö´×™×  נעת_דִירעצתוֹריִ/שוּבּדִיר בֿוֹר, ווֹבּעִי " -"×נגענוֹממענ וִירד, ד×שש נעת_דִירעצתוֹריִ ד×ש תפֿתפּ-ווּרזעלבֿערזעִיצהנִיש ִישת." - -#: util/grub-mknetdir.c:146 -#, c-format -msgid "unsupported platform %s" -msgstr "נִיצהת וּנתערשתֻתזתע פּל×תתפֿוֹרמ %s" - -#. TRANSLATORS: First %s is replaced by platform name. Second one by filename. -#: util/grub-mknetdir.c:165 -#, c-format -msgid "" -"Netboot directory for %s created. Configure your DHCP server to point to %s\n" -msgstr "" -"נעתבּוֹוֹת-בֿערזעִיצהנִיש פֻֿר %s ווּרדע ערשתעללת. רִיצהתענ שִיע ִיהרענ דהצפּ-שערבֿער שוֹ " -"×¢Ö´×™× , ד×שש ער ×וּפֿ %s בֿערועִישת\n" - -#: util/grub-mkpasswd-pbkdf2.c:46 -msgid "Number of PBKDF2 iterations" -msgstr "×× ×–×הל בֿוֹר פּבּכּדפֿ2-דוּרצהלֶוּפֿע" - -#: util/grub-mkpasswd-pbkdf2.c:47 -msgid "Length of generated hash" -msgstr "לֶנגע דער ערזעוּגתענ פּרֻפֿשוּממע" - -#: util/grub-mkpasswd-pbkdf2.c:48 -msgid "Length of salt" -msgstr "לֶנגע בֿוֹנ ש×לת" - -#: util/grub-mkpasswd-pbkdf2.c:87 -msgid "Generate PBKDF2 password hash." -msgstr "פּבּכּדפֿ2-פּ×ששווֹרת-פּרֻפֿשוּממע ערזעוּגענ. " - -#: util/grub-mkpasswd-pbkdf2.c:144 util/grub-mkpasswd-pbkdf2.c:151 -msgid "failure to read password" -msgstr "פּ×ששווֹרת כּוֹננתע נִיצהת געלעשענ וערדענ" - -#: util/grub-mkpasswd-pbkdf2.c:146 -msgid "Reenter password: " -msgstr "פּ×ששווֹרת ערנעוּת עִינגעבּענ:" - -#: util/grub-mkpasswd-pbkdf2.c:160 -msgid "passwords don't match" -msgstr "דִיע פּ×ששוֵרתער שתִיממענ נִיצהת ֻבּערעִינ" - -#: util/grub-mkpasswd-pbkdf2.c:169 -msgid "couldn't retrieve random data for salt" -msgstr "זוּפֿ×ללשד×תענ פֻֿר ש×לת כּוֹננתענ נִיצהת געהוֹלת וערדענ" - -#: util/grub-mkpasswd-pbkdf2.c:184 -#, c-format -msgid "cryptographic error number %d" -msgstr "כּריִתוֹגר×פִֿיעפֿעהלער נוּממער %d" - -#: util/grub-mkpasswd-pbkdf2.c:203 -#, c-format -msgid "PBKDF2 hash of your password is %s\n" -msgstr "פּבּכּדפֿ2-פּרֻפֿשוּממע ִיהרעש פּ×ששווֹרתש ִישת %s\n" - -#: util/grub-mkrelpath.c:67 -msgid "No path is specified.\n" -msgstr "×›Ö¼×¢Ö´×™×  פּפֿ×ד ×נגעגעבּענ.\n" - -#: util/grub-mkrelpath.c:78 -msgid "PATH" -msgstr "פּפֿ×ד" - -#: util/grub-mkrelpath.c:79 -msgid "Transform a system filename into GRUB one." -msgstr "×¢Ö´×™× ×¢×  שיִשתעמד×תעִינ×מענ Ö´×™×  ×¢Ö´×™× ×¢×  פֻֿר גרוּבּ וּמו×נדעלנ." - -#: util/grub-mkrescue.c:100 -msgid "save ROM images in DIR [optional]" -msgstr "רוֹמ-×בּבִּילדער Ö´×™×  בֿערזעִיצהנִיש שפּעִיצהערנ [וֹפּתִיוֹנ×ל]" - -#. TRANSLATORS: xorriso is a program for creating ISOs and burning CDs. -#: util/grub-mkrescue.c:103 -msgid "use FILE as xorriso [optional]" -msgstr "ד×תעִי ×לש כּסוֹררִישוֹ בּענוּתזענ [וֹפּתִיוֹנ×ל]" - -#: util/grub-mkrescue.c:109 -msgid "use STRING as product name" -msgstr "זעִיצהענכּעתתע ×לש פּרוֹדוּכּתנ×מע בֿערוענדענ" - -#: util/grub-mkrescue.c:111 -msgid "" -"enable sparc boot. Disables HFS+, APM, ARCS and boot as disk image for i386-" -"pc" -msgstr "" -"שפּ×רצ-בּוֹוֹתבֿוֹרג×× ×’ ×כּתִיבִֿיערענ. דִיע דע×כּתִיבִֿיערת הפֿש+, ×פּמ, ×רצש וּנד בּוֹוֹתענ ×לש " -"פֿעשתפּל×תתענ×בּבִּילד פֻֿר Ö´×™386-פּצ" - -#: util/grub-mkrescue.c:112 -msgid "" -"enable ARCS (big-endian mips machines, mostly SGI) boot. Disables HFS+, APM, " -"sparc64 and boot as disk image for i386-pc" -msgstr "" -"×כּתִיבִֿיערת ×רצש-בּוֹוֹת (מִיפּש-רעצהנער מִית בִּיג-ענדִי×× -בּיִתערעִיהענפֿוֹלגע, מעִישת " -"שגִי). הפֿש+, ×פּמ, שפּ×רצ64 וּנד בּוֹוֹתענ ×לש דִישכּ-×בּבִּילד פֻֿר Ö´×™386-פּצ וערדענ " -"דע×כּתִיבִֿיערת" - -#. TRANSLATORS: it generates one single image which is bootable through any method. -#: util/grub-mkrescue.c:125 -msgid "Make GRUB CD-ROM, disk, pendrive and floppy bootable image." -msgstr "" -"בּוֹוֹתפֶֿהִיגעש גרוּבּ-×בּבִּילד פֻֿר צד-רוֹמ, פֿעשתפּל×תתע, וּשבּ-שתִיצכּ וּנד דִישכּעתתע " -"ערשתעללענ." - -#: util/grub-mkrescue.c:130 -#, c-format -msgid "" -"Generates a bootable CD/USB/floppy image. Arguments other than options to " -"this program are passed to xorriso, and indicate source files, source " -"directories, or any of the mkisofs options listed by the output of `%s'." -msgstr "" -"ערזעוּגת ×¢Ö´×™×  בּוֹוֹתפֶֿהִיגעש צד/וּשבּ/דִישכּעתתענ×בּבִּילד. ×רגוּמענתע, דִיע נִיצהת זוּ דענ " -"וֹפּתִיוֹנענ דִיעשעש פּרוֹגר×ממש געהֵרענ, וערדענ ××  כּסוֹררִישוֹ ֻבּערגעבּענ וּנד ִינדִיזִיערענ " -"קוּעללד×תעִיענ, קוּעללבֿערזעִיצהנִיששע וֹדער ×¢Ö´×™× ×¢ בּעלִיעבִּיגע מכִּישוֹפֿש-וֹפּתִיוֹנ, דִיע בֿוֹנ " -"»%s« ×וּשגעגעבּענ וִירד." - -#: util/grub-mkrescue.c:134 -msgid "Option -- switches to native xorriso command mode." -msgstr "וֹפּתִיוֹנ -- ועצהשעלת Ö´×™×  דענ × ×תִיבֿענ כּסוֹררִישוֹ-בּעפֿעהלשמוֹדוּש." - -#: util/grub-mkrescue.c:135 -msgid "Mail xorriso support requests to ." -msgstr "רִיצהתענ שִיע שוּפּפּוֹרת×נפֿר××’×¢×  זוּ כּסוֹררִישוֹ ××  <בּוּג-כּסוֹררִישוֹ@גנוּ.וֹרג>." - -#: util/grub-mkrescue.c:221 util/grub-mkstandalone.c:114 -msgid "[OPTION] SOURCE..." -msgstr "[וֹפּתִיוֹנ] קוּעללע …" - -#: util/grub-mkrescue.c:257 util/grub-mkrescue.c:300 util/grub-mkrescue.c:588 -#, c-format -msgid "enabling %s support ..." -msgstr "וּנתערשתֻתזוּנג פֻֿר %s וִירד ×כּתִיבִֿיערת …" - -#: util/grub-mkrescue.c:486 -msgid "xorriso not found" -msgstr "כּסוֹררִישוֹ ווּרדע נִיצהת געפֿוּנדענ" - -#: util/grub-mkrescue.c:623 -msgid "" -"Your xorriso doesn't support `--grub2-boot-info'. Some features are " -"disabled. Please use xorriso 1.2.9 or later." -msgstr "" -"ִיהר כּסוֹררִישוֹ וּנתערשתֻתזת »--גרוּבּ2-בּוֹוֹת-ִינפֿוֹ« נִיצהת. ×¢Ö´×™× Ö´×™×’×¢ פֿוּנכּתִיוֹנענ שִינד " -"דע×כּתִיבִֿיערת. בִּיתתע בֿערוענדענ שִיע כּסוֹררִישוֹ Ö´×™×  בֿערשִיוֹנ 1.2.9 וֹדער נעוּער." - -#: util/grub-mkrescue.c:650 -msgid "" -"Your xorriso doesn't support `--grub2-boot-info'. Your core image is too " -"big. Boot as disk is disabled. Please use xorriso 1.2.9 or later." -msgstr "" -"ִיהר כּסוֹררִישוֹ וּנתערשתֻתזת »--גרוּבּ2-בּוֹוֹת-ִינפֿוֹ« נִיצהת. ִיהר צוֹרע-×בּבִּילד ִישת זוּ " -"גרוֹסס. בּוֹוֹתענ ×לש פֿעשתפּל×תתע ִישת דע×כּתִיבִֿיערת. בִּיתתע בֿערוענדענ שִיע כּסוֹררִישוֹ Ö´" -"×™×  בֿערשִיוֹנ 1.2.9 וֹדער נעוּער." - -#: util/grub-mkstandalone.c:115 -msgid "" -"Generate a standalone image (containing all modules) in the selected format" -msgstr "" -"×¢Ö´×™×  ל×וּפֿפֶֿהִיגעש ×בּבִּילד עִינשצהלִיעססלִיצה ×ללער מוֹדוּלע ִימ געוֶהלתענ פֿוֹרמ×ת " -"ערשתעללענ" - -#: util/grub-mkstandalone.c:115 -msgid "Graft point syntax (E.g. /boot/grub/grub.cfg=./grub.cfg) is accepted" -msgstr "" -"גר×פֿתפּוִֹינת-שיִנת×כּס (×–.בּ. /בּוֹוֹת/גרוּבּ/גרוּבּ.צפֿג=./גרוּבּ.צפֿג) וִירד ×כּזעפּתִיערת" - -#: util/grub-mount.c:552 -msgid "IMAGE1 [IMAGE2 ...] MOUNTPOINT" -msgstr "×בּבִּילד1 [×בּבִּילד2 ...] עִינהֶנגעפּוּנכּת" - -#: util/grub-mount.c:575 -msgid "need an image and mountpoint" -msgstr "×בּבִּילד וּנד עִינהֶנגעפּוּנכּת וערדענ בּענֵתִיגת" - -#: util/grub-probe.c:731 -msgid "given argument is a system device, not a path" -msgstr "ד×ש ×נגעגעבּענע ×רגוּמענת ִישת ×¢Ö´×™×  שיִשתעמגערֶת, ×›Ö¼×¢Ö´×™×  פּפֿ×ד" - -#: util/grub-probe.c:736 -msgid "separate items in output using ASCII NUL characters" -msgstr "עִינתרֶגע Ö´×™×  דער ×וּשג×בּע דוּרצה ×שצִיִי-נוּל-זעִיצהענ תרעננענ" - -#: util/grub-probe.c:754 -#, c-format -msgid "[default=%s]" -msgstr "[בֿוֹרג×בּע=%s]" - -#: util/grub-probe.c:756 -msgid "print TARGET" -msgstr "זִיעל ×וּשגעבּענ" - -#: util/grub-probe.c:757 -msgid "available targets:" -msgstr "בֿערפֻֿגבּ×רע זִיעלע:" - -#: util/grub-probe.c:839 -msgid "[OPTION]... [PATH|DEVICE]" -msgstr "[וֹפּתִיוֹנענ]… [פּפֿ×ד|גערֶת]" - -#: util/grub-probe.c:840 -msgid "" -"Probe device information for a given path (or device, if the -d option is " -"given)." -msgstr "" -"גערֶתעִינפֿוֹרמ×תִיוֹנענ פֻֿר ×¢Ö´×™× ×¢×  ×נגעגעבּענענ פּפֿ×ד ערמִיתתעלנ (וֹדער גערֶת, פֿ×ללש דִיע " -"וֹפּתִיוֹנ -ד ×נגעגעבּענ ִישת)." - -#: util/grub-render-label.c:60 -msgid "read text from FILE." -msgstr "תעכּסת ×וּש ד×תעִי לעשענ." - -#: util/grub-render-label.c:62 -msgid "use COLOR for text" -msgstr "פֿ×רבּע פֻֿר תעכּסת בֿערוענדענ" - -#: util/grub-render-label.c:64 -msgid "use COLOR for background" -msgstr "פֿ×רבּע פֻֿר הִינתערגרוּנד בֿערוענדענ" - -#. TRANSLATORS: The result is always stored to file and -#. never shown directly, so don't use "show" as synonym for render. Use "create" if -#. "render" doesn't translate directly. -#: util/grub-render-label.c:69 -msgid "set the label to render" -msgstr "×נזוּזעִיגענדע בּעשצהרִיפֿתוּנג פֿעשתלעגענ" - -#: util/grub-render-label.c:73 -msgid "use FILE as font (PF2)." -msgstr "ד×תעִי ×לש שצהרִיפֿת בֿערוענדענ (פּפֿ2)." - -#. TRANSLATORS: This file takes a text and creates a graphical representation of it, -#. putting the result into .disk_label file. The result is always stored to file and -#. never shown directly, so don't use "show" as synonym for render. Use "create" if -#. "render" doesn't translate directly. -#: util/grub-render-label.c:136 -msgid "Render Apple .disk_label." -msgstr "×פּפּלעש .דִישכּ_ל×בּעל ד×רשתעללענ." - -#: util/grub-render-label.c:158 util/grub-syslinux2cfg.c:169 -msgid "Missing arguments\n" -msgstr "×רגוּמענתע פֿעהלענ\n" - -#: util/grub-script-check.c:87 -msgid "[PATH]" -msgstr "[פּפֿ×ד]" - -#: util/grub-script-check.c:88 -msgid "Checks GRUB script configuration file for syntax errors." -msgstr "ֻבּערפּרֻפֿת דִיע גרוּבּ-שכּרִיפּתכּוֹנפִֿיגוּר×תִיוֹנ ×וּפֿ שיִנת×כּספֿעהלער" - -#: util/grub-script-check.c:207 -#, c-format -msgid "Syntax error at line %u\n" -msgstr "שיִנת×כּספֿעהלער Ö´×™×  זעִילע %u\n" - -#: util/grub-script-check.c:212 -#, c-format -msgid "Script `%s' contains no commands and will do nothing\n" -msgstr "שכּרִיפּת »%s« ענתהֶלת נִיצהתש, עש וִירד נִיצהתש ×וּשגעפֻֿהרת\n" - -#: util/grub-setup.c:79 -#, c-format -msgid "use FILE as the boot image [default=%s]" -msgstr "ד×תעִי ×לש בּוֹוֹת-×בּבִּילד בֿערוענדענ [בֿוֹרג×בּע=%s]" - -#: util/grub-setup.c:81 -#, c-format -msgid "use FILE as the core image [default=%s]" -msgstr "ד×תעִי ×לש כּערנ-×בּבִּילד בֿערוענדענ [בֿוֹרג×בּע=%s]" - -#: util/grub-setup.c:210 -msgid "No device is specified.\n" -msgstr "×›Ö¼×¢Ö´×™×  גערֶת ×נגעגעבּענ.\n" - -#: util/grub-setup.c:224 -msgid "" -"Set up images to boot from DEVICE.\n" -"\n" -"You should not normally run this program directly. Use grub-install instead." -msgstr "" -"×בּבִּילדער זוּמ בּוֹוֹתענ בֿוֹנ גערֶת עִינרִיצהתענ.\n" -"\n" -"שִיע שוֹללתענ דִיעשעש פּרוֹגר×ממ נוֹרמ×לערועִישע נִיצהת דִירעכּת ×וּשפֻֿהרענ.\n" -"בֿערוענדענ שִיע שת×תתדעששענ גרוּבּ-ִינשת×לל." - -#: util/grub-setup.c:228 -msgid "DEVICE must be an OS device (e.g. /dev/sda)." -msgstr "גערֶת מוּשש ×¢Ö´×™×  וֹש-גערֶת שעִינ (×–.בּ. /דעבֿ/שד×)." - -#: util/grub-setup.c:297 -#, c-format -msgid "Invalid device `%s'.\n" -msgstr "וּנגֻלתִיגעש גערֶת »%s«.\n" - -#: util/grub-syslinux2cfg.c:64 -msgid "root directory as it will be seen on runtime [default=/]." -msgstr "ווּרזעלבֿערזעִיצהנִיש, וִיע עש זוּר ל×וּפֿזעִית ×נגעזעִיגת וִירד [בֿוֹרג×בּע=/]." - -#: util/grub-syslinux2cfg.c:69 -msgid "" -"current directory of syslinux as it will be seen on runtime [default is " -"parent directory of input file]." -msgstr "" -"×כּתוּעללעש שיִשלִינוּכּס-בֿערזעִיצהנִיש, וִיע עש זוּר ל×וּפֿזעִית ×נגעזעִיגת וִירד [בֿוֹרג×בּע Ö´" -"ישת ד×ש ֻבּערגעוֹרדנעתע בֿערזעִיצהנִיש דער ×¢Ö´×™× ×’×בּעד×תעִי]." - -#: util/grub-syslinux2cfg.c:74 -msgid "write output to FILE [default=stdout]." -msgstr "×וּשג×בּע Ö´×™×  ד×תעִי שצהרעִיבּענ [בֿוֹרג×בּע=שתדוֹוּת]" - -#: util/grub-syslinux2cfg.c:148 -msgid "Transform syslinux config into GRUB one." -msgstr "שיִשלִינוּכּס-כּוֹנפִֿיגוּר×תִיוֹנשד×תעִי Ö´×™×  ×¢Ö´×™× ×¢ פֻֿר גרוּבּ וּמו×נדעלנ." - -#: util/mkimage.c:688 util/mkimage.c:717 util/mkimage.c:734 -msgid "cannot compress the kernel image" -msgstr "כּערנעל-×בּבִּילד ×›Ö¼×× ×  נִיצהת כּוֹמפּרִימִיערת וערדענ" - -#: util/mkimage.c:766 util/mkimage.c:1077 -#, c-format -msgid "unknown compression %d" -msgstr "וּנבּעכּ×ננתע כּוֹמפּרעששִיוֹנ %d" - -#: util/mkimage.c:1088 -msgid "Decompressor is too big" -msgstr "דעכּוֹמפּרעששוֹר ִישת זוּ גרוֹסס" - -#: util/mkimage.c:1133 -#, c-format -msgid "core image is too big (0x%x > 0x%x)" -msgstr "צוֹרע-×בּבִּילד ִישת זוּ גרוֹסס (0כּס%x > 0כּס%x)" - -#: util/mkimage.c:1140 -#, c-format -msgid "kernel image is too big (0x%x > 0x%x)" -msgstr "כּערנעל-×בּבִּילד ִישת זוּ גרוֹסס (0כּס%x > 0כּס%x)" - -#: util/mkimage.c:1220 util/mkimage.c:1501 -#, c-format -msgid "diskboot.img size must be %u bytes" -msgstr "דִיע גרֵססע בֿוֹנ דִישכּבּוֹוֹת.ִימג מוּשש %u בּיִתעש בּעתר××’×¢× " - -#: util/mkimage.c:1571 -msgid "" -"fwstart.img doesn't match the known good version. proceed at your own risk" -msgstr "" -"פֿושת×רת.ִימג ענתשפּרִיצהת נִיצהת דער בּעכּ×ננתערמ×ססענ פֿוּנכּתִיוֹנִיערענדענ בֿערשִיוֹנ. " -"בֿערוענדענ שִיע דִיעש ×וּפֿ ×¢Ö´×™×’×¢× ×¢ געפֿ×הר" - -#: util/mkimage.c:1575 util/mkimage.c:1601 -msgid "firmware image is too big" -msgstr "פִֿירמו×רע-×בּבִּילד ִישת זוּ גרוֹסס" - -#: util/resolve.c:93 -#, c-format -msgid "invalid line format: %s" -msgstr "וּנגֻלתִיגעש זעִילענפֿוֹרמ×ת: %s" - -#: util/setup.c:167 -msgid "the first sector of the core file is not sector-aligned" -msgstr "דער ערשתע שעכּתוֹר דער צוֹרע-ד×תעִי ִישת נִיצהת שעכּתוֹר-×וּשגערִיצהתעת" - -#: util/setup.c:177 -msgid "non-sector-aligned data is found in the core file" -msgstr "" -"נִיצהת ××  שעכּתוֹרענ ×וּשגערִיצהתעתע ד×תענ ווּרדענ Ö´×™×  דער צוֹרע-ד×תעִי געפֿוּנדענ" - -#: util/setup.c:199 -msgid "the sectors of the core file are too fragmented" -msgstr "דִיע שעכּתוֹרענ דער צוֹרע-ד×תעִי שִינד זוּ שת×רכּ פֿר×גמענתִיערת" - -#: util/setup.c:280 -#, c-format -msgid "the size of `%s' is not %u" -msgstr "דִיע גרֵססע בֿוֹנ »%s« ִישת נִיצהת %u" - -#: util/setup.c:290 -#, c-format -msgid "the size of `%s' is too small" -msgstr "»%s« ִישת זוּ כּלעִינ" - -#: util/setup.c:428 -msgid "" -"Attempting to install GRUB to a disk with multiple partition labels or both " -"partition label and filesystem. This is not supported yet." -msgstr "" -"עש וִירד בֿערשוּצהת, גרוּבּ ×וּפֿ עִינער פּל×תתע מִית מעהרערענ פּ×רתִיתִיוֹנשבּעזעִיצהנוּנגענ " -"וֹדער שוֹווֹהל פּ×רתִיתִיוֹנשבּעזעִיצהנוּנגענ ×לש ×וּצה ד×תעִישיִשתעמענ זוּ ִינשת×ללִיערענ. " -"דִיעש וִירד דערזעִית נוֹצה נִיצהת וּנתערשתֻתזת." - -#: util/setup.c:441 -#, c-format -msgid "unable to identify a filesystem in %s; safety check can't be performed" -msgstr "" -"עש ×›Ö¼×× ×  ×›Ö¼×¢Ö´×™×  ד×תעִישיִשתעמ Ö´×™×  %s ערכּ×ננת וערדענ. שִיצהערהעִיתשֻבּערפּרֻפֿוּנג ×›Ö¼×× ×  " -"נִיצהת ×וּשגעפֻֿהרת וערדענ" - -#. TRANSLATORS: Filesystem may reserve the space just GRUB isn't sure about it. -#: util/setup.c:445 -#, c-format -msgid "" -"%s appears to contain a %s filesystem which isn't known to reserve space for " -"DOS-style boot. Installing GRUB there could result in FILESYSTEM " -"DESTRUCTION if valuable data is overwritten by grub-setup (--skip-fs-probe " -"disables this check, use at your own risk)" -msgstr "" -"%s ענתהֶלת ×¢Ö´×™×  %s-ד×תעִישיִשתעמ, ועלצהעש בּעכּ×ננתערמ×ססענ ×›Ö¼×¢Ö´×™× ×¢×  פּל×תז פֻֿר ×¢Ö´×™× ×¢×  " -"דוֹש-בּעתרִיעבּששיִשתעמשת×רת בּערעִיתהֶלת. דִיע ִינשת×לל×תִיוֹנ בֿוֹנ גרוּבּ כֵּננתע דִיע " -"זערשתֵרוּנג דעש ד×תעִישיִשתעמש × ×צה שִיצה ×–Ö´×™×¢×”×¢× , שוֹפֿערנ ד×תענ דוּרצה גרוּבּ-שעתוּפּ Ö»" -"בּערשצהרִיעבּענ וערדענ. דִיע וֹפּתִיוֹנ --שכִּיפּ-פֿש-פּרוֹבּע דע×כּתִיבִֿיערת דִיעשע ֻבּערפּרֻפֿוּנג, " -"בֿערוענדענ שִיע דִיעש ×וּפֿ ×¢Ö´×™×’×¢× ×¢ געפֿ×הר." - -#. TRANSLATORS: Partition map may reserve the space just GRUB isn't sure about it. -#: util/setup.c:458 -#, c-format -msgid "" -"%s appears to contain a %s partition map which isn't known to reserve space " -"for DOS-style boot. Installing GRUB there could result in FILESYSTEM " -"DESTRUCTION if valuable data is overwritten by grub-setup (--skip-fs-probe " -"disables this check, use at your own risk)" -msgstr "" -"%s שצהעִינת ×¢Ö´×™× ×¢ %s-פּ×רתִיתִיוֹנשת×בּעללע זוּ ענתה×לתענ, ועלצהע בּעכּ×ננתערמ×ססענ " -"×›Ö¼×¢Ö´×™× ×¢×  פּל×תז פֻֿר ×¢Ö´×™× ×¢×  דוֹש-בּעתרִיעבּששיִשתעמשת×רת בּערעִיתהֶלת. דִיע ִינשת×לל×תִיוֹנ " -"בֿוֹנ גרוּבּ כֵּננתע דִיע זערשתֵרוּנג דעש ד×תעִישיִשתעמש × ×צה שִיצה ×–Ö´×™×¢×”×¢× , שוֹפֿערנ ד×תענ " -"דוּרצה גרוּבּ-שעתוּפּ ֻבּערשצהרִיעבּענ וערדענ. דִיע וֹפּתִיוֹנ --שכִּיפּ-פֿש-פּרוֹבּע דע×כּתִיבִֿיערת " -"דִיעשע ֻבּערפּרֻפֿוּנג, בֿערוענדענ שִיע דִיעש ×וּפֿ ×¢Ö´×™×’×¢× ×¢ געפֿ×הר." - -#: util/setup.c:465 -#, c-format -msgid "" -"%s appears to contain a %s partition map and LDM which isn't known to be a " -"safe combination. Installing GRUB there could result in FILESYSTEM " -"DESTRUCTION if valuable data is overwritten by grub-setup (--skip-fs-probe " -"disables this check, use at your own risk)" -msgstr "" -"%s שצהעִינת ×¢Ö´×™× ×¢ %s-פּ×רתִיתִיוֹנשת×בּעללע וּנד לדמ זוּ ענתה×לתענ, ועלצהעש " -"בּעכּ×ננתערמ×ססענ ×›Ö¼×¢Ö´×™× ×¢ שִיצהערע כּוֹמבִּינ×תִיוֹנ ִישת. דִיע ִינשת×לל×תִיוֹנ בֿוֹנ גרוּבּ " -"כֵּננתע דִיע זערשתֵרוּנג דעש ד×תעִישיִשתעמש × ×צה שִיצה ×–Ö´×™×¢×”×¢× , שוֹפֿערנ ד×תענ דוּרצה " -"גרוּבּ-שעתוּפּ ֻבּערשצהרִיעבּענ וערדענ. דִיע וֹפּתִיוֹנ --שכִּיפּ-פֿש-פּרוֹבּע דע×כּתִיבִֿיערת דִיעשע Ö»" -"בּערפּרֻפֿוּנג, בֿערוענדענ שִיע דִיעש ×וּפֿ ×¢Ö´×™×’×¢× ×¢ געפֿ×הר." - -#: util/setup.c:478 -msgid "" -"Attempting to install GRUB to a partitionless disk or to a partition. This " -"is a BAD idea." -msgstr "" -"עש וִירד בֿערשוּצהת, גרוּבּ ×וּפֿ עִינער נִיצהת פּ×רתִיתִיוֹנִיערתענ פּל×תתע וֹדער Ö´×™×  ×¢Ö´×™× ×¢ " -"פּ×רתִיתִיוֹנ זוּ ִינשת×ללִיערענ. ד×ש ִישת ×¢Ö´×™× ×¢ שצהלעצהתע ִידעע." - -#: util/setup.c:483 -msgid "" -"Attempting to install GRUB to a disk with multiple partition labels. This " -"is not supported yet." -msgstr "" -"עש וִירד בֿערשוּצהת, גרוּבּ ×וּפֿ עִינער פּל×תתע מִית מעהרערענ פּ×רתִיתִיוֹנשבּעזעִיצהנוּנגענ " -"זוּ ִינשת×ללִיערענ. דִיעש וִירד דערזעִית נוֹצה נִיצהת וּנתערשתֻתזת." - -#: util/setup.c:489 -#, c-format -msgid "Partition style `%s' doesn't support embedding" -msgstr "פּ×רתִיתִיוֹנשתיִפּ »%s« וּנתערשתֻתזת ×›Ö¼×¢Ö´×™× ×¢ עִינבּעתתוּנגענ" - -#: util/setup.c:496 -#, c-format -msgid "File system `%s' doesn't support embedding" -msgstr "ד×תעִישיִשתעמ »%s« וּנתערשתֻתזת ×›Ö¼×¢Ö´×™× ×¢ עִינבּעתתוּנגענ" - -#: util/setup.c:537 -msgid "Your embedding area is unusually small. core.img won't fit in it." -msgstr "" -"ִיהר עִינבּעתתוּנגשבּערעִיצה ִישת וּנגעוֵהנלִיצה כּלעִינ. צוֹרע.ִימג וֻרדע נִיצהת " -"הִינעִינפּ×ששענ." - -#: util/setup.c:559 util/setup.c:725 util/setup.c:844 -msgid "no terminator in the core image" -msgstr "×›Ö¼×¢Ö´×™×  תערמִינ×תוֹר ִימ צוֹרע-×בּבִּילד" - -#: util/setup.c:622 -msgid "core.img version mismatch" -msgstr "בֿערשִיוֹנ בֿוֹנ צוֹרע.ִימג פּ×ששת נִיצהת" - -#: util/setup.c:675 -msgid "" -"embedding is not possible, but this is required for RAID and LVM install" -msgstr "" -"עִינבּעתתוּנג ִישת נִיצהת מֵגלִיצה, יעדוֹצה פֻֿר דִיע ִינשת×לל×תִיוֹנ מִית ר×ִיד וּנד לבֿמ " -"ערפֿוֹרדערלִיצה" - -#: util/setup.c:682 -#, c-format -msgid "can't determine filesystem on %s" -msgstr "ד×תעִישיִשתעמתיִפּ ×וּפֿ %s כּוֹננתע נִיצהת ערמִיתתעלת וערדענ" - -#: util/setup.c:685 -#, c-format -msgid "filesystem `%s' doesn't support blocklists" -msgstr "ד×תעִישיִשתעמ »%s« וּנתערשתֻתזת ×›Ö¼×¢Ö´×™× ×¢ בּלוֹצכּלִישתענ" - -#. TRANSLATORS: cross-disk refers to /boot being on one disk -#. but MBR on another. -#: util/setup.c:694 -msgid "embedding is not possible, but this is required for cross-disk install" -msgstr "" -"עִינבּעתתוּנג ִישת נִיצהת מֵגלִיצה, יעדוֹצה פֻֿר דִיע ִינשת×לל×תִיוֹנ ×וּפֿ מעהרערענ " -"ל×וּפֿוערכּענ ערפֿוֹרדערלִיצה" - -#: util/setup.c:700 -msgid "" -"Embedding is not possible. GRUB can only be installed in this setup by " -"using blocklists. However, blocklists are UNRELIABLE and their use is " -"discouraged." -msgstr "" -"עִינבּעתתוּנג ִישת נִיצהת מֵגלִיצה. גרוּבּ ×›Ö¼×× ×  Ö´×™×  דִיעשער כּוֹנפִֿיגוּר×תִיוֹנ נוּר מִיתתעלש " -"בּלוֹצכּלִישתענ ִינשת×ללִיערת וערדענ. בּלוֹצכּלִישתענ שִינד ×ללערדִינגש וּנזוּבֿערלֶששִיג וּנד " -"דערענ בֿערוענדוּנג וִירד ד×הער נִיצהת עמפּפֿוֹהלענ." - -#. TRANSLATORS: Here GRUB refuses to continue with blocklist install. -#: util/setup.c:705 -msgid "will not proceed with blocklists" -msgstr "מִית בּלוֹצכּלִישתענ וִירד נִיצהת פֿוֹרתגעשעתזת" - -#: util/setup.c:817 util/setup.c:837 -msgid "blocklists are invalid" -msgstr "בּלוֹצכּלִישתענ שִינד וּנגֻלתִיג" - -#: util/setup.c:847 -msgid "blocklists are incomplete" -msgstr "בּלוֹצכּלִישתענ שִינד וּנבֿוֹללשתֶנדִיג" diff --git a/thirdparty/grub-2.04/po/de_CH.gmo b/thirdparty/grub-2.04/po/de_CH.gmo deleted file mode 100644 index 68235486eb04ead2bcd2c9480df61e56f29d7bd8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 125396 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%0DOHky2lq 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